aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorno-author <no-author@gcc.gnu.org>2004-04-19 02:00:25 +0000
committerno-author <no-author@gcc.gnu.org>2004-04-19 02:00:25 +0000
commit057b809adb82257a0791eebe9441b1358a4b3228 (patch)
tree738f4c41644096b56d9fe9f526d235698d47f842
parent018cb260572ebefb0964e391dea8466fd17d7c3d (diff)
This commit was manufactured by cvs2svn to create taggcc_3_4_0_release
'gcc_3_4_0_release'. git-svn-id: https://gcc.gnu.org/svn/gcc/tags/gcc_3_4_0_release@80844 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--ChangeLog61
-rw-r--r--MAINTAINERS14
-rw-r--r--boehm-gc/ChangeLog15
-rwxr-xr-xboehm-gc/config.guess393
-rwxr-xr-xboehm-gc/config.sub293
-rw-r--r--boehm-gc/configure.in2
-rw-r--r--boehm-gc/include/private/gcconfig.h1
-rwxr-xr-xboehm-gc/install-sh34
-rw-r--r--boehm-gc/libtool.m43398
-rwxr-xr-xboehm-gc/mkinstalldirs81
-rwxr-xr-xconfig.guess36
-rwxr-xr-xconfig.sub22
-rw-r--r--config/ChangeLog4
-rwxr-xr-xconfigure71
-rw-r--r--configure.in7
-rw-r--r--contrib/ChangeLog4
-rw-r--r--contrib/reghunt/ChangeLog4
-rw-r--r--contrib/regression/ChangeLog4
-rw-r--r--fastjar/ChangeLog12
-rw-r--r--fastjar/Makefile.am24
-rw-r--r--fastjar/Makefile.in55
-rwxr-xr-xfastjar/configure45
-rw-r--r--fastjar/configure.ac20
-rw-r--r--gcc/ChangeLog3180
-rw-r--r--gcc/Makefile.in211
-rw-r--r--gcc/README.Portability2
-rw-r--r--gcc/aclocal.m47
-rw-r--r--gcc/ada/5fsystem.ads8
-rw-r--r--gcc/ada/5gtaprop.adb17
-rw-r--r--gcc/ada/5gtasinf.adb8
-rw-r--r--gcc/ada/5rosinte.adb6
-rw-r--r--gcc/ada/5rosinte.ads8
-rw-r--r--gcc/ada/5rtpopsp.adb212
-rw-r--r--gcc/ada/ChangeLog56
-rw-r--r--gcc/ada/Make-lang.in148
-rw-r--r--gcc/ada/Makefile.in2
-rw-r--r--gcc/ada/gnat_ug.texi16
-rw-r--r--gcc/ada/gnat_ug_unx.texi4
-rw-r--r--gcc/ada/gnat_ug_vms.texi4
-rw-r--r--gcc/ada/gnat_ug_vxw.texi4
-rw-r--r--gcc/ada/gnat_ug_wnt.texi4
-rw-r--r--gcc/ada/init.c32
-rw-r--r--gcc/ada/misc.c2
-rw-r--r--gcc/ada/osint.adb35
-rw-r--r--gcc/ada/sem_prag.adb4
-rw-r--r--gcc/alias.c151
-rw-r--r--gcc/alloc-pool.c135
-rw-r--r--gcc/alloc-pool.h5
-rw-r--r--gcc/basic-block.h8
-rw-r--r--gcc/builtin-types.def2
-rw-r--r--gcc/builtins.c32
-rw-r--r--gcc/builtins.def13
-rw-r--r--gcc/c-common.c61
-rw-r--r--gcc/c-common.h22
-rw-r--r--gcc/c-cppbuiltin.c12
-rw-r--r--gcc/c-decl.c254
-rw-r--r--gcc/c-lex.c25
-rw-r--r--gcc/c-objc-common.c2
-rw-r--r--gcc/c-opts.c86
-rw-r--r--gcc/c-parse.in33
-rw-r--r--gcc/c-pch.c33
-rw-r--r--gcc/c-ppoutput.c18
-rw-r--r--gcc/c-pragma.c2
-rw-r--r--gcc/c-pragma.h3
-rw-r--r--gcc/c-pretty-print.c2
-rw-r--r--gcc/c-semantics.c6
-rw-r--r--gcc/c-tree.h2
-rw-r--r--gcc/c-typeck.c69
-rw-r--r--gcc/c.opt8
-rw-r--r--gcc/calls.c80
-rw-r--r--gcc/cfg.c2
-rw-r--r--gcc/cfganal.c15
-rw-r--r--gcc/cfgcleanup.c97
-rw-r--r--gcc/cfgloop.h4
-rw-r--r--gcc/cfgloopanal.c73
-rw-r--r--gcc/cfgrtl.c36
-rw-r--r--gcc/cgraph.c5
-rw-r--r--gcc/cgraph.h2
-rw-r--r--gcc/cgraphunit.c165
-rw-r--r--gcc/collect2.c25
-rw-r--r--gcc/combine.c106
-rw-r--r--gcc/common.opt3
-rw-r--r--gcc/config.gcc83
-rw-r--r--gcc/config.in6
-rw-r--r--gcc/config/alpha/alpha.c96
-rw-r--r--gcc/config/alpha/alpha.h41
-rw-r--r--gcc/config/alpha/alpha.md368
-rw-r--r--gcc/config/alpha/freebsd.h11
-rw-r--r--gcc/config/alpha/osf5.h9
-rw-r--r--gcc/config/alpha/unicosmk.h2
-rw-r--r--gcc/config/alpha/vms.h4
-rw-r--r--gcc/config/arc/arc.c9
-rw-r--r--gcc/config/arc/arc.h2
-rw-r--r--gcc/config/arm/arm.c198
-rw-r--r--gcc/config/arm/arm.h21
-rw-r--r--gcc/config/arm/coff.h2
-rw-r--r--gcc/config/arm/elf.h2
-rw-r--r--gcc/config/arm/freebsd.h17
-rw-r--r--gcc/config/arm/ieee754-df.S4
-rw-r--r--gcc/config/arm/linux-elf.h2
-rw-r--r--gcc/config/arm/netbsd.h2
-rw-r--r--gcc/config/arm/pe.h2
-rw-r--r--gcc/config/arm/semi.h2
-rw-r--r--gcc/config/arm/semiaof.h2
-rw-r--r--gcc/config/arm/unknown-elf.h2
-rw-r--r--gcc/config/arm/wince-pe.h2
-rw-r--r--gcc/config/avr/avr-protos.h2
-rw-r--r--gcc/config/avr/avr.c9
-rw-r--r--gcc/config/avr/avr.h8
-rw-r--r--gcc/config/c4x/c4x.c2
-rw-r--r--gcc/config/c4x/c4x.h2
-rw-r--r--gcc/config/c4x/c4x.md88
-rw-r--r--gcc/config/cris/cris.c33
-rw-r--r--gcc/config/cris/cris.h41
-rw-r--r--gcc/config/cris/cris.md73
-rw-r--r--gcc/config/cris/mulsi3.asm7
-rw-r--r--gcc/config/d30v/d30v.h4
-rw-r--r--gcc/config/darwin.h2
-rw-r--r--gcc/config/dsp16xx/dsp16xx.h3
-rw-r--r--gcc/config/fp-bit.c92
-rw-r--r--gcc/config/fr30/fr30.h3
-rw-r--r--gcc/config/freebsd-spec.h6
-rw-r--r--gcc/config/frv/frv-protos.h2
-rw-r--r--gcc/config/frv/frv.c3
-rw-r--r--gcc/config/frv/frv.h5
-rw-r--r--gcc/config/frv/frv.md2
-rw-r--r--gcc/config/frv/frvbegin.c2
-rw-r--r--gcc/config/frv/frvend.c2
-rw-r--r--gcc/config/h8300/coff.h2
-rw-r--r--gcc/config/h8300/elf.h2
-rw-r--r--gcc/config/h8300/h8300-protos.h2
-rw-r--r--gcc/config/h8300/h8300.c5
-rw-r--r--gcc/config/h8300/h8300.h4
-rw-r--r--gcc/config/h8300/h8300.md2
-rw-r--r--gcc/config/h8300/lib1funcs.asm2
-rw-r--r--gcc/config/h8300/t-rtems7
-rw-r--r--gcc/config/i370/i370.h3
-rw-r--r--gcc/config/i386/cygming.h2
-rw-r--r--gcc/config/i386/djgpp.h2
-rw-r--r--gcc/config/i386/emmintrin.h2
-rw-r--r--gcc/config/i386/freebsd.h6
-rw-r--r--gcc/config/i386/freebsd64.h5
-rw-r--r--gcc/config/i386/gthr-win32.c2
-rw-r--r--gcc/config/i386/i386-interix.h3
-rw-r--r--gcc/config/i386/i386-protos.h3
-rw-r--r--gcc/config/i386/i386.c456
-rw-r--r--gcc/config/i386/i386.h29
-rw-r--r--gcc/config/i386/i386.md480
-rw-r--r--gcc/config/i386/openbsd.h2
-rw-r--r--gcc/config/i386/pmmintrin.h4
-rw-r--r--gcc/config/i386/scodbx.h84
-rw-r--r--gcc/config/i386/t-cygwin2
-rw-r--r--gcc/config/i386/winnt.c5
-rw-r--r--gcc/config/i386/xm-dgux.h4
-rw-r--r--gcc/config/i386/xm-djgpp.h6
-rw-r--r--gcc/config/i386/xm-mingw32.h2
-rw-r--r--gcc/config/i386/xm-sun.h21
-rw-r--r--gcc/config/i386/xm-sysv3.h3
-rw-r--r--gcc/config/i386/xmmintrin.h2
-rw-r--r--gcc/config/i860/i860.h2
-rw-r--r--gcc/config/i960/i960.h2
-rw-r--r--gcc/config/ia64/freebsd.h6
-rw-r--r--gcc/config/ia64/hpux.h14
-rw-r--r--gcc/config/ia64/ia64-protos.h2
-rw-r--r--gcc/config/ia64/ia64.c410
-rw-r--r--gcc/config/ia64/ia64.h7
-rw-r--r--gcc/config/ia64/ia64.md70
-rw-r--r--gcc/config/ia64/linux.h6
-rw-r--r--gcc/config/ip2k/ip2k.c2
-rw-r--r--gcc/config/ip2k/ip2k.h2
-rw-r--r--gcc/config/iq2000/iq2000-protos.h2
-rw-r--r--gcc/config/iq2000/iq2000.c4
-rw-r--r--gcc/config/iq2000/iq2000.h2
-rw-r--r--gcc/config/iq2000/iq2000.md2
-rw-r--r--gcc/config/m32r/m32r-protos.h2
-rw-r--r--gcc/config/m32r/m32r.c2
-rw-r--r--gcc/config/m32r/m32r.h19
-rw-r--r--gcc/config/m32r/m32r.md3
-rw-r--r--gcc/config/m68hc11/m68hc11.c145
-rw-r--r--gcc/config/m68hc11/m68hc11.h2
-rw-r--r--gcc/config/m68hc11/m68hc11.md1022
-rw-r--r--gcc/config/m68k/m68k.c12
-rw-r--r--gcc/config/m68k/m68k.h31
-rw-r--r--gcc/config/m68k/m68k.md3
-rw-r--r--gcc/config/m68k/netbsd-elf.h2
-rw-r--r--gcc/config/m68k/t-slibgcc-elf-ver3
-rw-r--r--gcc/config/mcore/mcore-elf.h3
-rw-r--r--gcc/config/mcore/mcore.c3
-rw-r--r--gcc/config/mcore/mcore.h4
-rw-r--r--gcc/config/mcore/mcore.md2
-rw-r--r--gcc/config/mips/elf.h2
-rw-r--r--gcc/config/mips/elf64.h2
-rw-r--r--gcc/config/mips/iris5.h70
-rw-r--r--gcc/config/mips/iris5gas.h22
-rw-r--r--gcc/config/mips/iris5gld.h42
-rw-r--r--gcc/config/mips/iris6-o32-as.h18
-rw-r--r--gcc/config/mips/iris6-o32-gas.h19
-rw-r--r--gcc/config/mips/iris6-o32.h26
-rw-r--r--gcc/config/mips/iris6.h62
-rw-r--r--gcc/config/mips/iris6gas.h2
-rw-r--r--gcc/config/mips/iris6gld.h6
-rw-r--r--gcc/config/mips/irix-crti.asm (renamed from gcc/config/mips/irix6-crti.asm)0
-rw-r--r--gcc/config/mips/irix-crtn.asm (renamed from gcc/config/mips/irix6-crtn.asm)0
-rw-r--r--gcc/config/mips/linux.h3
-rw-r--r--gcc/config/mips/mips-protos.h9
-rw-r--r--gcc/config/mips/mips.c701
-rw-r--r--gcc/config/mips/mips.h101
-rw-r--r--gcc/config/mips/mips.md31
-rw-r--r--gcc/config/mips/netbsd.h2
-rw-r--r--gcc/config/mips/openbsd.h2
-rw-r--r--gcc/config/mips/t-iris5-as4
-rw-r--r--gcc/config/mips/t-iris6gld9
-rw-r--r--gcc/config/mips/t-irix-gld9
-rw-r--r--gcc/config/mips/windiss.h2
-rw-r--r--gcc/config/mmix/mmix.h2
-rw-r--r--gcc/config/mn10300/mn10300.c2
-rw-r--r--gcc/config/mn10300/mn10300.h4
-rw-r--r--gcc/config/ns32k/ns32k.h2
-rw-r--r--gcc/config/pa/pa-protos.h4
-rw-r--r--gcc/config/pa/pa.c225
-rw-r--r--gcc/config/pa/pa.h70
-rw-r--r--gcc/config/pa/pa.md223
-rw-r--r--gcc/config/pa/pa64-hpux.h14
-rw-r--r--gcc/config/pa/t-slibgcc-elf-ver3
-rw-r--r--gcc/config/pdp11/pdp11.c2
-rw-r--r--gcc/config/pdp11/pdp11.h2
-rw-r--r--gcc/config/rs6000/aix.h16
-rw-r--r--gcc/config/rs6000/altivec.h7
-rw-r--r--gcc/config/rs6000/altivec.md16
-rw-r--r--gcc/config/rs6000/darwin-ldouble.c4
-rw-r--r--gcc/config/rs6000/darwin.h21
-rw-r--r--gcc/config/rs6000/eabispe.h4
-rw-r--r--gcc/config/rs6000/libgcc-ppc64.ver7
-rw-r--r--gcc/config/rs6000/linux.h3
-rw-r--r--gcc/config/rs6000/linux64.h67
-rw-r--r--gcc/config/rs6000/ppc64-fp.c53
-rw-r--r--gcc/config/rs6000/rs6000-protos.h5
-rw-r--r--gcc/config/rs6000/rs6000.c245
-rw-r--r--gcc/config/rs6000/rs6000.h33
-rw-r--r--gcc/config/rs6000/rs6000.md162
-rw-r--r--gcc/config/rs6000/spe.md31
-rw-r--r--gcc/config/rs6000/sysv4.h33
-rw-r--r--gcc/config/rs6000/t-linux6424
-rw-r--r--gcc/config/rs6000/t-rtems86
-rw-r--r--gcc/config/rs6000/xcoff.h2
-rw-r--r--gcc/config/rtems.h16
-rw-r--r--gcc/config/s390/s390-protos.h4
-rw-r--r--gcc/config/s390/s390.c27
-rw-r--r--gcc/config/s390/s390.h9
-rw-r--r--gcc/config/s390/s390.md333
-rw-r--r--gcc/config/sh/netbsd-elf.h2
-rw-r--r--gcc/config/sh/sh.c9
-rw-r--r--gcc/config/sh/sh.h8
-rw-r--r--gcc/config/sh/t-linux8
-rw-r--r--gcc/config/sh/vxworks.h2
-rw-r--r--gcc/config/sparc/freebsd.h6
-rw-r--r--gcc/config/sparc/linux.h5
-rw-r--r--gcc/config/sparc/linux64.h5
-rw-r--r--gcc/config/sparc/sol2-bi.h29
-rw-r--r--gcc/config/sparc/sol2.h43
-rw-r--r--gcc/config/sparc/sparc.c239
-rw-r--r--gcc/config/sparc/sparc.h100
-rw-r--r--gcc/config/sparc/sparc.md33
-rw-r--r--gcc/config/stormy16/stormy16.h5
-rw-r--r--gcc/config/t-slibgcc-elf-ver5
-rw-r--r--gcc/config/v850/v850.h2
-rw-r--r--gcc/config/vax/vax.h2
-rw-r--r--gcc/config/xtensa/xtensa-protos.h7
-rw-r--r--gcc/config/xtensa/xtensa.c395
-rw-r--r--gcc/config/xtensa/xtensa.h33
-rw-r--r--gcc/config/xtensa/xtensa.md40
-rwxr-xr-xgcc/configure266
-rw-r--r--gcc/configure.ac152
-rw-r--r--gcc/coverage.c64
-rw-r--r--gcc/cp/ChangeLog807
-rw-r--r--gcc/cp/Make-lang.in35
-rw-r--r--gcc/cp/call.c322
-rw-r--r--gcc/cp/class.c168
-rw-r--r--gcc/cp/cp-tree.h55
-rw-r--r--gcc/cp/cvt.c5
-rw-r--r--gcc/cp/decl.c222
-rw-r--r--gcc/cp/decl.h4
-rw-r--r--gcc/cp/decl2.c50
-rw-r--r--gcc/cp/error.c13
-rw-r--r--gcc/cp/except.c99
-rw-r--r--gcc/cp/expr.c2
-rw-r--r--gcc/cp/friend.c7
-rw-r--r--gcc/cp/init.c201
-rw-r--r--gcc/cp/lex.c7
-rw-r--r--gcc/cp/mangle.c20
-rw-r--r--gcc/cp/method.c10
-rw-r--r--gcc/cp/name-lookup.c160
-rw-r--r--gcc/cp/name-lookup.h5
-rw-r--r--gcc/cp/optimize.c7
-rw-r--r--gcc/cp/parser.c614
-rw-r--r--gcc/cp/pt.c333
-rw-r--r--gcc/cp/rtti.c10
-rw-r--r--gcc/cp/search.c17
-rw-r--r--gcc/cp/semantics.c128
-rw-r--r--gcc/cp/tree.c100
-rw-r--r--gcc/cp/typeck.c101
-rw-r--r--gcc/cp/typeck2.c6
-rw-r--r--gcc/cppcharset.c69
-rw-r--r--gcc/cppexp.c3
-rw-r--r--gcc/cppfiles.c13
-rw-r--r--gcc/cpphash.h18
-rw-r--r--gcc/cppinit.c53
-rw-r--r--gcc/cpplex.c7
-rw-r--r--gcc/cpplib.c5
-rw-r--r--gcc/cpplib.h30
-rw-r--r--gcc/cppmacro.c4
-rw-r--r--gcc/cpptrad.c2
-rw-r--r--gcc/cse.c387
-rw-r--r--gcc/cselib.c98
-rw-r--r--gcc/cselib.h2
-rw-r--r--gcc/defaults.h2
-rw-r--r--gcc/df.c3
-rw-r--r--gcc/diagnostic.h4
-rw-r--r--gcc/doc/c-tree.texi83
-rw-r--r--gcc/doc/compat.texi6
-rw-r--r--gcc/doc/contrib.texi39
-rw-r--r--gcc/doc/cpp.texi412
-rw-r--r--gcc/doc/cppenv.texi4
-rw-r--r--gcc/doc/cppopts.texi28
-rw-r--r--gcc/doc/extend.texi886
-rw-r--r--gcc/doc/frontends.texi95
-rw-r--r--gcc/doc/gcc.texi2
-rw-r--r--gcc/doc/gcov.texi34
-rw-r--r--gcc/doc/gty.texi12
-rw-r--r--gcc/doc/include/gcc-common.texi2
-rw-r--r--gcc/doc/install.texi707
-rw-r--r--gcc/doc/interface.texi10
-rw-r--r--gcc/doc/invoke.texi562
-rw-r--r--gcc/doc/libgcc.texi8
-rw-r--r--gcc/doc/makefile.texi28
-rw-r--r--gcc/doc/md.texi108
-rw-r--r--gcc/doc/objc.texi34
-rw-r--r--gcc/doc/rtl.texi54
-rw-r--r--gcc/doc/sourcebuild.texi67
-rw-r--r--gcc/doc/standards.texi8
-rw-r--r--gcc/doc/tm.texi213
-rw-r--r--gcc/doc/trouble.texi90
-rw-r--r--gcc/doloop.c7
-rw-r--r--gcc/dominance.c2
-rw-r--r--gcc/dwarf2out.c318
-rw-r--r--gcc/emit-rtl.c231
-rw-r--r--gcc/et-forest.c2
-rw-r--r--gcc/except.c53
-rw-r--r--gcc/except.h1
-rw-r--r--gcc/explow.c14
-rw-r--r--gcc/expmed.c2
-rw-r--r--gcc/expr.c143
-rw-r--r--gcc/expr.h7
-rw-r--r--gcc/f/ChangeLog73
-rw-r--r--gcc/f/Make-lang.in107
-rw-r--r--gcc/f/g77.texi31
-rw-r--r--gcc/f/g77spec.c14
-rw-r--r--gcc/f/invoke.texi8
-rw-r--r--gcc/f/lex.c16
-rw-r--r--gcc/f/parse.c6
-rw-r--r--gcc/f/root.texi2
-rw-r--r--gcc/f/sta.c4
-rw-r--r--gcc/final.c83
-rw-r--r--gcc/fix-header.c5
-rw-r--r--gcc/fixinc/fixincl.x709
-rw-r--r--gcc/fixinc/inclhack.def368
-rw-r--r--gcc/fixinc/tests/base/libgen.h16
-rw-r--r--gcc/fixinc/tests/base/locale.h20
-rw-r--r--gcc/fixinc/tests/base/math.h22
-rw-r--r--gcc/fixinc/tests/base/pthread.h3
-rw-r--r--gcc/fixinc/tests/base/rpc/xdr.h10
-rw-r--r--gcc/fixinc/tests/base/standards.h14
-rw-r--r--gcc/fixinc/tests/base/stdio.h12
-rw-r--r--gcc/fixinc/tests/base/stdlib.h14
-rw-r--r--gcc/fixinc/tests/base/strings.h15
-rw-r--r--gcc/fixinc/tests/base/sys/stat.h4
-rw-r--r--gcc/fixinc/tests/base/sys/time.h27
-rw-r--r--gcc/fixinc/tests/base/testing.h17
-rw-r--r--gcc/fixinc/tests/base/unistd.h10
-rw-r--r--gcc/flags.h21
-rw-r--r--gcc/flow.c41
-rw-r--r--gcc/fold-const.c912
-rw-r--r--gcc/function.c85
-rw-r--r--gcc/function.h9
-rw-r--r--gcc/gcc.c27
-rw-r--r--gcc/gcov-io.c48
-rw-r--r--gcc/gcov-io.h5
-rw-r--r--gcc/gcov.c11
-rw-r--r--gcc/gcse.c28
-rw-r--r--gcc/genattrtab.c2
-rw-r--r--gcc/genautomata.c2
-rw-r--r--gcc/genconditions.c2
-rw-r--r--gcc/genextract.c6
-rw-r--r--gcc/genflags.c2
-rw-r--r--gcc/gengtype-lex.l2
-rw-r--r--gcc/gengtype.c2
-rw-r--r--gcc/genopinit.c2
-rw-r--r--gcc/genrecog.c32
-rw-r--r--gcc/gensupport.c2
-rw-r--r--gcc/ggc-simple.c29
-rw-r--r--gcc/ggc-zone.c3
-rw-r--r--gcc/graph.c3
-rw-r--r--gcc/haifa-sched.c2
-rw-r--r--gcc/hooks.c9
-rw-r--r--gcc/hooks.h3
-rw-r--r--gcc/integrate.c2
-rw-r--r--gcc/java/ChangeLog89
-rw-r--r--gcc/java/Make-lang.in90
-rw-r--r--gcc/java/class.c5
-rw-r--r--gcc/java/expr.c4
-rw-r--r--gcc/java/gcj.texi14
-rw-r--r--gcc/java/jcf-parse.c5
-rw-r--r--gcc/java/parse.y17
-rw-r--r--gcc/java/typeck.c5
-rw-r--r--gcc/langhooks-def.h2
-rw-r--r--gcc/langhooks.c2
-rw-r--r--gcc/langhooks.h2
-rw-r--r--gcc/libgcov.c1
-rw-r--r--gcc/local-alloc.c2
-rw-r--r--gcc/loop-init.c102
-rw-r--r--gcc/loop-unroll.c223
-rw-r--r--gcc/loop.c27
-rw-r--r--gcc/loop.h3
-rw-r--r--gcc/mips-tfile.c4
-rw-r--r--gcc/objc/Make-lang.in6
-rw-r--r--gcc/objc/objc-act.c13
-rw-r--r--gcc/optabs.c12
-rw-r--r--gcc/optabs.h2
-rw-r--r--gcc/opts.c10
-rw-r--r--gcc/output.h4
-rw-r--r--gcc/params.def17
-rw-r--r--gcc/po/ChangeLog71
-rw-r--r--gcc/po/EXCLUDES42
-rw-r--r--gcc/po/be.po16391
-rw-r--r--gcc/po/ca.po20826
-rw-r--r--gcc/po/da.po18925
-rw-r--r--gcc/po/de.po18754
-rw-r--r--gcc/po/el.po16824
-rw-r--r--gcc/po/es.po18968
-rw-r--r--gcc/po/fr.po20138
-rw-r--r--gcc/po/gcc.pot8914
-rw-r--r--gcc/po/ja.po18175
-rw-r--r--gcc/po/nl.po17434
-rw-r--r--gcc/po/sv.po17615
-rw-r--r--gcc/po/tr.po19455
-rw-r--r--gcc/postreload.c11
-rw-r--r--gcc/ra.h2
-rw-r--r--gcc/real.c16
-rw-r--r--gcc/recog.c2
-rw-r--r--gcc/reg-stack.c2
-rw-r--r--gcc/regmove.c2
-rw-r--r--gcc/reload.c35
-rw-r--r--gcc/reload1.c4
-rw-r--r--gcc/reorg.c2
-rw-r--r--gcc/rtl.h8
-rw-r--r--gcc/rtlanal.c19
-rw-r--r--gcc/sched-deps.c2
-rw-r--r--gcc/sched-ebb.c2
-rw-r--r--gcc/sdbout.c2
-rw-r--r--gcc/simplify-rtx.c2
-rw-r--r--gcc/stmt.c17
-rw-r--r--gcc/system.h19
-rw-r--r--gcc/target-def.h15
-rw-r--r--gcc/target.h60
-rw-r--r--gcc/targhooks.c10
-rw-r--r--gcc/targhooks.h5
-rw-r--r--gcc/testsuite/ChangeLog955
-rw-r--r--gcc/testsuite/g++.dg/abi/mangle21.C13
-rw-r--r--gcc/testsuite/g++.dg/abi/structret1.C31
-rw-r--r--gcc/testsuite/g++.dg/bprob/bprob.exp2
-rw-r--r--gcc/testsuite/g++.dg/conversion/op2.C16
-rw-r--r--gcc/testsuite/g++.dg/debug/crash1.C17
-rw-r--r--gcc/testsuite/g++.dg/eh/cond2.C19
-rw-r--r--gcc/testsuite/g++.dg/eh/forced1.C3
-rw-r--r--gcc/testsuite/g++.dg/eh/forced2.C3
-rw-r--r--gcc/testsuite/g++.dg/eh/forced3.C3
-rw-r--r--gcc/testsuite/g++.dg/eh/forced4.C3
-rw-r--r--gcc/testsuite/g++.dg/eh/ia64-1.C9
-rw-r--r--gcc/testsuite/g++.dg/eh/simd-1.C2
-rw-r--r--gcc/testsuite/g++.dg/eh/simd-2.C9
-rw-r--r--gcc/testsuite/g++.dg/eh/spec7.C35
-rw-r--r--gcc/testsuite/g++.dg/expr/anew1.C16
-rw-r--r--gcc/testsuite/g++.dg/expr/anew2.C16
-rw-r--r--gcc/testsuite/g++.dg/expr/anew3.C16
-rw-r--r--gcc/testsuite/g++.dg/expr/anew4.C16
-rw-r--r--gcc/testsuite/g++.dg/expr/cond4.C16
-rw-r--r--gcc/testsuite/g++.dg/expr/cond5.C3
-rw-r--r--gcc/testsuite/g++.dg/expr/cond6.C24
-rw-r--r--gcc/testsuite/g++.dg/expr/constcast1.C9
-rw-r--r--gcc/testsuite/g++.dg/expr/dtor2.C6
-rw-r--r--gcc/testsuite/g++.dg/expr/dtor3.C10
-rw-r--r--gcc/testsuite/g++.dg/expr/for1.C14
-rw-r--r--gcc/testsuite/g++.dg/expr/ptrmem2.C12
-rw-r--r--gcc/testsuite/g++.dg/expr/ptrmem3.C9
-rw-r--r--gcc/testsuite/g++.dg/ext/anon-struct4.C3
-rw-r--r--gcc/testsuite/g++.dg/ext/attrib10.C1
-rw-r--r--gcc/testsuite/g++.dg/ext/attrib12.C16
-rw-r--r--gcc/testsuite/g++.dg/ext/attrib13.C4
-rw-r--r--gcc/testsuite/g++.dg/ext/case-range1.C23
-rw-r--r--gcc/testsuite/g++.dg/ext/case-range2.C27
-rw-r--r--gcc/testsuite/g++.dg/ext/case-range3.C23
-rw-r--r--gcc/testsuite/g++.dg/ext/packed5.C16
-rw-r--r--gcc/testsuite/g++.dg/ext/typeof7.C6
-rw-r--r--gcc/testsuite/g++.dg/ext/typeof8.C12
-rw-r--r--gcc/testsuite/g++.dg/ext/typeof9.C17
-rw-r--r--gcc/testsuite/g++.dg/ext/vector1.C5
-rw-r--r--gcc/testsuite/g++.dg/inherit/ptrmem1.C21
-rw-r--r--gcc/testsuite/g++.dg/inherit/thunk2.C19
-rw-r--r--gcc/testsuite/g++.dg/init/array13.C9
-rw-r--r--gcc/testsuite/g++.dg/init/ctor3.C6
-rw-r--r--gcc/testsuite/g++.dg/init/goto1.C23
-rw-r--r--gcc/testsuite/g++.dg/init/init-ref4.C7
-rw-r--r--gcc/testsuite/g++.dg/init/placement3.C30
-rw-r--r--gcc/testsuite/g++.dg/init/ref11.C13
-rw-r--r--gcc/testsuite/g++.dg/init/static2.C25
-rw-r--r--gcc/testsuite/g++.dg/init/union1.C5
-rw-r--r--gcc/testsuite/g++.dg/lookup/anon4.C9
-rw-r--r--gcc/testsuite/g++.dg/lookup/crash2.C20
-rw-r--r--gcc/testsuite/g++.dg/lookup/enum1.C5
-rw-r--r--gcc/testsuite/g++.dg/lookup/koenig3.C13
-rw-r--r--gcc/testsuite/g++.dg/lookup/main1.C3
-rw-r--r--gcc/testsuite/g++.dg/lookup/member1.C11
-rw-r--r--gcc/testsuite/g++.dg/lookup/struct2.C7
-rw-r--r--gcc/testsuite/g++.dg/lookup/using11.C9
-rw-r--r--gcc/testsuite/g++.dg/opt/eh1.C21
-rw-r--r--gcc/testsuite/g++.dg/opt/fold1.C17
-rw-r--r--gcc/testsuite/g++.dg/opt/fold2.C19
-rw-r--r--gcc/testsuite/g++.dg/opt/inline4.C2
-rw-r--r--gcc/testsuite/g++.dg/opt/inline6.C2
-rw-r--r--gcc/testsuite/g++.dg/opt/template1.C2
-rw-r--r--gcc/testsuite/g++.dg/other/crash-2.C13
-rw-r--r--gcc/testsuite/g++.dg/other/crash-3.C31
-rw-r--r--gcc/testsuite/g++.dg/other/error1.C2
-rw-r--r--gcc/testsuite/g++.dg/other/error8.C26
-rw-r--r--gcc/testsuite/g++.dg/other/nontype-1.C7
-rw-r--r--gcc/testsuite/g++.dg/other/profile1.C51
-rw-r--r--gcc/testsuite/g++.dg/other/switch1.C20
-rw-r--r--gcc/testsuite/g++.dg/overload/ref1.C21
-rw-r--r--gcc/testsuite/g++.dg/overload/using1.C11
-rw-r--r--gcc/testsuite/g++.dg/parse/angle-bracket2.C6
-rw-r--r--gcc/testsuite/g++.dg/parse/attr-ctor1.C1
-rw-r--r--gcc/testsuite/g++.dg/parse/builtin2.C5
-rw-r--r--gcc/testsuite/g++.dg/parse/cast2.C13
-rw-r--r--gcc/testsuite/g++.dg/parse/comma1.C13
-rw-r--r--gcc/testsuite/g++.dg/parse/constructor2.C11
-rw-r--r--gcc/testsuite/g++.dg/parse/crash14.C20
-rw-r--r--gcc/testsuite/g++.dg/parse/defarg7.C5
-rw-r--r--gcc/testsuite/g++.dg/parse/error11.C53
-rw-r--r--gcc/testsuite/g++.dg/parse/error12.C12
-rw-r--r--gcc/testsuite/g++.dg/parse/error13.C13
-rw-r--r--gcc/testsuite/g++.dg/parse/error14.C22
-rw-r--r--gcc/testsuite/g++.dg/parse/new2.C9
-rw-r--r--gcc/testsuite/g++.dg/parse/non-dependent3.C17
-rw-r--r--gcc/testsuite/g++.dg/parse/template13.C10
-rw-r--r--gcc/testsuite/g++.dg/parse/template14.C17
-rw-r--r--gcc/testsuite/g++.dg/parse/template15.C26
-rw-r--r--gcc/testsuite/g++.dg/pch/wchar-1.C1
-rw-r--r--gcc/testsuite/g++.dg/pch/wchar-1.Hs2
-rw-r--r--gcc/testsuite/g++.dg/template/array4.C11
-rw-r--r--gcc/testsuite/g++.dg/template/call2.C14
-rw-r--r--gcc/testsuite/g++.dg/template/cond3.C15
-rw-r--r--gcc/testsuite/g++.dg/template/cond4.C20
-rw-r--r--gcc/testsuite/g++.dg/template/crash17.C19
-rw-r--r--gcc/testsuite/g++.dg/template/ctor3.C19
-rw-r--r--gcc/testsuite/g++.dg/template/defarg4.C14
-rw-r--r--gcc/testsuite/g++.dg/template/friend26.C15
-rw-r--r--gcc/testsuite/g++.dg/template/koenig4.C12
-rw-r--r--gcc/testsuite/g++.dg/template/lookup4.C6
-rw-r--r--gcc/testsuite/g++.dg/template/lookup5.C17
-rw-r--r--gcc/testsuite/g++.dg/template/lookup6.C11
-rw-r--r--gcc/testsuite/g++.dg/template/lookup7.C9
-rw-r--r--gcc/testsuite/g++.dg/template/member4.C20
-rw-r--r--gcc/testsuite/g++.dg/template/non-type-template-argument-1.C4
-rw-r--r--gcc/testsuite/g++.dg/template/nontype4.C14
-rw-r--r--gcc/testsuite/g++.dg/template/nontype5.C14
-rw-r--r--gcc/testsuite/g++.dg/template/nontype6.C19
-rw-r--r--gcc/testsuite/g++.dg/template/operator2.C8
-rw-r--r--gcc/testsuite/g++.dg/template/partial3.C14
-rw-r--r--gcc/testsuite/g++.dg/template/qualified-id1.C4
-rw-r--r--gcc/testsuite/g++.dg/template/sfinae1.C21
-rw-r--r--gcc/testsuite/g++.dg/template/sizeof6.C13
-rw-r--r--gcc/testsuite/g++.dg/template/sizeof7.C15
-rw-r--r--gcc/testsuite/g++.dg/template/spec11.C20
-rw-r--r--gcc/testsuite/g++.dg/template/spec12.C18
-rw-r--r--gcc/testsuite/g++.dg/template/spec13.C16
-rw-r--r--gcc/testsuite/g++.dg/template/static6.C14
-rw-r--r--gcc/testsuite/g++.dg/template/ttp7.C16
-rw-r--r--gcc/testsuite/g++.dg/template/ttp8.C16
-rw-r--r--gcc/testsuite/g++.dg/template/typename6.C11
-rw-r--r--gcc/testsuite/g++.dg/warn/Wunused-5.C13
-rw-r--r--gcc/testsuite/g++.dg/warn/Wunused-6.C11
-rw-r--r--gcc/testsuite/g++.dg/warn/Wunused-7.C12
-rw-r--r--gcc/testsuite/g++.dg/warn/conv2.C3
-rw-r--r--gcc/testsuite/g++.dg/warn/incomplete1.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.brendan/crash15.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.ext/arrnew2.C10
-rw-r--r--gcc/testsuite/g++.old-deja/g++.ext/attrib5.C4
-rw-r--r--gcc/testsuite/g++.old-deja/g++.law/profile1.C4
-rw-r--r--gcc/testsuite/g++.old-deja/g++.law/visibility28.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.martin/new1.C16
-rw-r--r--gcc/testsuite/g++.old-deja/g++.mike/net36.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.ns/koenig5.C8
-rw-r--r--gcc/testsuite/g++.old-deja/g++.oliva/ChangeLog4
-rw-r--r--gcc/testsuite/g++.old-deja/g++.pt/static3.C3
-rw-r--r--gcc/testsuite/g++.old-deja/g++.robertl/eb125.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.robertl/eb42.C19
-rw-r--r--gcc/testsuite/g++.old-deja/g++.robertl/eb58.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.robertl/eb63.C2
-rw-r--r--gcc/testsuite/g++.old-deja/old-deja.exp11
-rw-r--r--gcc/testsuite/g77.dg/bprob/bprob.exp2
-rw-r--r--gcc/testsuite/g77.f-torture/execute/12884.f32
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20040121-1.c41
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20040130-1.c24
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20040209-1.c9
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20040214-1.c7
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20040214-2.c57
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/20040304-1.c45
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/complex-1.c12
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/fix-trunc-mem-1.c12
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/libcall-1.c14
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr13889.c7
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20020720-1.x13
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20040208-1.c10
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20040208-2.c11
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20040208-2.x1
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20040218-1.c37
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20040302-1.c24
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20040307-1.c25
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20040308-1.c21
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20040313-1.c17
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20040331-1.c12
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20040401-1.c74
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/990208-1.x14
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/string-opt-15.c2
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/va-arg-25.x28
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/wchar_t-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/20000724-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20001013-1.c6
-rw-r--r--gcc/testsuite/gcc.dg/20001101-1.c6
-rw-r--r--gcc/testsuite/gcc.dg/20001102-1.c6
-rw-r--r--gcc/testsuite/gcc.dg/20021014-1.c10
-rw-r--r--gcc/testsuite/gcc.dg/20030121-1.c8
-rw-r--r--gcc/testsuite/gcc.dg/20030123-1.c4
-rw-r--r--gcc/testsuite/gcc.dg/20040123-1.c12
-rw-r--r--gcc/testsuite/gcc.dg/20040127-1.c24
-rw-r--r--gcc/testsuite/gcc.dg/20040127-2.c32
-rw-r--r--gcc/testsuite/gcc.dg/20040217-1.c19
-rw-r--r--gcc/testsuite/gcc.dg/20040302-1.c18
-rw-r--r--gcc/testsuite/gcc.dg/20040305-1.c50
-rw-r--r--gcc/testsuite/gcc.dg/20040306-1.c22
-rw-r--r--gcc/testsuite/gcc.dg/20040311-2.c36
-rw-r--r--gcc/testsuite/gcc.dg/20040322-1.c4
-rw-r--r--gcc/testsuite/gcc.dg/20040331-1.c14
-rw-r--r--gcc/testsuite/gcc.dg/991214-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/Wshadow-2.c8
-rw-r--r--gcc/testsuite/gcc.dg/always_inline.c12
-rw-r--r--gcc/testsuite/gcc.dg/always_inline2.c8
-rw-r--r--gcc/testsuite/gcc.dg/always_inline3.c8
-rw-r--r--gcc/testsuite/gcc.dg/arm-mmx-1.c26
-rw-r--r--gcc/testsuite/gcc.dg/builtins-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/builtins-30.c27
-rw-r--r--gcc/testsuite/gcc.dg/builtins-35.c6
-rw-r--r--gcc/testsuite/gcc.dg/builtins-config.h6
-rw-r--r--gcc/testsuite/gcc.dg/c90-dupqual-1.c12
-rw-r--r--gcc/testsuite/gcc.dg/c90-init-1.c8
-rw-r--r--gcc/testsuite/gcc.dg/c99-dupqual-1.c12
-rw-r--r--gcc/testsuite/gcc.dg/cast-function-1.c26
-rw-r--r--gcc/testsuite/gcc.dg/cleanup-5.c2
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-5a_main.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-5_main.c)4
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-5a_x.c43
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-5a_y.c26
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-5b_main.c14
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-5b_x.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-5_x.c)18
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-5b_y.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-5_y.c)8
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-6a_main.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-6_main.c)4
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-6a_x.c43
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-6a_y.c26
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-6b_main.c14
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-6b_x.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-6_x.c)18
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-6b_y.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-6_y.c)8
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-7a_main.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-7_main.c)4
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-7a_x.c43
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-7a_y.c26
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-7b_main.c14
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-7b_x.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-7_x.c)18
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-7b_y.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-7_y.c)8
-rw-r--r--gcc/testsuite/gcc.dg/const-elim-1.c11
-rw-r--r--gcc/testsuite/gcc.dg/cpp/assert4.c17
-rw-r--r--gcc/testsuite/gcc.dg/cpp/c90-if-comma-1.c11
-rw-r--r--gcc/testsuite/gcc.dg/cpp/c99-if-comma-1.c11
-rw-r--r--gcc/testsuite/gcc.dg/darwin-longlong.c38
-rw-r--r--gcc/testsuite/gcc.dg/debug/20020327-1.c8
-rw-r--r--gcc/testsuite/gcc.dg/debug/debug-7.c16
-rw-r--r--gcc/testsuite/gcc.dg/debug/dwarf2/c99-typedef1.c9
-rw-r--r--gcc/testsuite/gcc.dg/decl-4.c10
-rw-r--r--gcc/testsuite/gcc.dg/decl-5.c20
-rw-r--r--gcc/testsuite/gcc.dg/decl-6.c15
-rw-r--r--gcc/testsuite/gcc.dg/funcorder.c6
-rw-r--r--gcc/testsuite/gcc.dg/fwritable-strings-1.c18
-rw-r--r--gcc/testsuite/gcc.dg/gnu89-dupqual-1.c12
-rw-r--r--gcc/testsuite/gcc.dg/gnu89-init-3.c18
-rw-r--r--gcc/testsuite/gcc.dg/i386-asm-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-asm-2.c61
-rw-r--r--gcc/testsuite/gcc.dg/i386-cpuid.h21
-rw-r--r--gcc/testsuite/gcc.dg/i386-mmx-4.c245
-rw-r--r--gcc/testsuite/gcc.dg/i386-regparm.c9
-rw-r--r--gcc/testsuite/gcc.dg/i386-sse-6.c205
-rw-r--r--gcc/testsuite/gcc.dg/i386-sse-7.c139
-rw-r--r--gcc/testsuite/gcc.dg/i386-sse-8.c13
-rw-r--r--gcc/testsuite/gcc.dg/inline-5.c13
-rw-r--r--gcc/testsuite/gcc.dg/local1.c7
-rw-r--r--gcc/testsuite/gcc.dg/nest.c5
-rw-r--r--gcc/testsuite/gcc.dg/noncompile/20020213-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/ppc64-abi-2.c405
-rw-r--r--gcc/testsuite/gcc.dg/ppc64-abi-3.c28
-rw-r--r--gcc/testsuite/gcc.dg/pr14092-1.c20
-rw-r--r--gcc/testsuite/gcc.dg/pr14289-1.c12
-rw-r--r--gcc/testsuite/gcc.dg/pr14289-2.c12
-rw-r--r--gcc/testsuite/gcc.dg/pr14289-3.c12
-rw-r--r--gcc/testsuite/gcc.dg/sparc-ret.c9
-rw-r--r--gcc/testsuite/gcc.dg/struct-by-value-2.c15
-rw-r--r--gcc/testsuite/gcc.dg/titype-1.c34
-rw-r--r--gcc/testsuite/gcc.dg/tls/alias-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/torture/mips-clobber-at.c4
-rw-r--r--gcc/testsuite/gcc.dg/torture/mips-sdata-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/ultrasp2.c5
-rw-r--r--gcc/testsuite/gcc.dg/ultrasp4.c5
-rw-r--r--gcc/testsuite/gcc.dg/ultrasp8.c2
-rw-r--r--gcc/testsuite/gcc.dg/va-arg-1.c6
-rw-r--r--gcc/testsuite/gcc.dg/visibility-8.c16
-rw-r--r--gcc/testsuite/gcc.misc-tests/bprob.exp2
-rw-r--r--gcc/testsuite/lib/file-format.exp3
-rw-r--r--gcc/testsuite/lib/gcc-dg.exp13
-rw-r--r--gcc/testsuite/lib/prune.exp11
-rw-r--r--gcc/testsuite/lib/scanasm.exp9
-rw-r--r--gcc/testsuite/lib/target-supports.exp55
-rw-r--r--gcc/testsuite/objc.dg/call-super-2.m43
-rw-r--r--gcc/testsuite/objc.dg/desig-init-1.m2
-rw-r--r--gcc/testsuite/objc.dg/encode-2.m15
-rw-r--r--gcc/testsuite/objc.dg/encode-3.m10
-rw-r--r--gcc/testsuite/objc.dg/encode-4.m2
-rw-r--r--gcc/testsuite/objc.dg/proto-qual-1.m10
-rw-r--r--gcc/testsuite/objc.dg/stret-1.m62
-rw-r--r--gcc/testsuite/objc.dg/stret-2.m46
-rw-r--r--gcc/testsuite/treelang/ChangeLog4
-rw-r--r--gcc/toplev.c82
-rw-r--r--gcc/toplev.h3
-rw-r--r--gcc/tree-inline.c33
-rw-r--r--gcc/tree-optimize.c30
-rw-r--r--gcc/tree.c35
-rw-r--r--gcc/tree.def2
-rw-r--r--gcc/tree.h28
-rw-r--r--gcc/treelang/ChangeLog18
-rw-r--r--gcc/treelang/Make-lang.in30
-rw-r--r--gcc/treelang/treelang.texi7
-rw-r--r--gcc/unwind-dw2-fde.h2
-rw-r--r--gcc/unwind-pe.h2
-rw-r--r--gcc/unwind.h2
-rw-r--r--gcc/varasm.c38
-rw-r--r--gcc/varray.c113
-rw-r--r--gcc/varray.h4
-rw-r--r--gcc/version.c2
-rw-r--r--include/ChangeLog4
-rw-r--r--intl/ChangeLog13
-rw-r--r--intl/gettextP.h5
-rw-r--r--intl/plural.c41
-rw-r--r--intl/plural.y5
-rw-r--r--libf2c/ChangeLog18
-rw-r--r--libf2c/Makefile.in2
-rw-r--r--libf2c/aclocal.m47
-rwxr-xr-xlibf2c/configure89
-rw-r--r--libf2c/libI77/rsne.c7
-rw-r--r--libffi/ChangeLog65
-rw-r--r--libffi/README10
-rw-r--r--libffi/src/powerpc/ffi.c129
-rw-r--r--libffi/src/powerpc/linux64.S1
-rw-r--r--libffi/src/powerpc/linux64_closure.S68
-rw-r--r--libffi/src/sparc/ffi.c164
-rw-r--r--libffi/src/sparc/v8.S47
-rw-r--r--libffi/src/sparc/v9.S64
-rw-r--r--libffi/src/types.c4
-rw-r--r--libffi/testsuite/libffi.call/cls_align_longdouble.c2
-rw-r--r--libffi/testsuite/libffi.call/cls_uint.c4
-rw-r--r--libffi/testsuite/libffi.call/float.c17
-rw-r--r--libffi/testsuite/libffi.call/float2.c18
-rw-r--r--libffi/testsuite/libffi.call/pyobjc-tc.c2
-rw-r--r--libffi/testsuite/libffi.call/struct3.c2
-rw-r--r--libiberty/ChangeLog52
-rw-r--r--libiberty/cp-demangle.c355
-rw-r--r--libiberty/cp-demangle.h12
-rw-r--r--libiberty/testsuite/demangle-expected26
-rw-r--r--libjava/ChangeLog162
-rw-r--r--libjava/Makefile.am20
-rw-r--r--libjava/Makefile.in21
-rwxr-xr-xlibjava/configure13
-rw-r--r--libjava/configure.host10
-rw-r--r--libjava/configure.in12
-rw-r--r--libjava/gnu/java/net/PlainSocketImpl.java27
-rw-r--r--libjava/gnu/java/net/protocol/http/Connection.java19
-rw-r--r--libjava/gnu/java/nio/DatagramChannelImpl.java57
-rw-r--r--libjava/gnu/java/nio/NIOServerSocket.java3
-rw-r--r--libjava/gnu/java/nio/ServerSocketChannelImpl.java6
-rw-r--r--libjava/gnu/java/nio/SocketChannelImpl.java61
-rw-r--r--libjava/include/powerpc-signal.h59
-rw-r--r--libjava/include/x86_64-signal.h17
-rw-r--r--libjava/java/lang/natPosixProcess.cc6
-rw-r--r--libjava/java/lang/reflect/natMethod.cc11
-rw-r--r--libjava/java/net/DatagramSocket.java7
-rw-r--r--libjava/java/net/ServerSocket.java9
-rw-r--r--libjava/java/net/Socket.java7
-rw-r--r--libjava/java/nio/ByteBuffer.java10
-rw-r--r--libjava/java/nio/ByteBufferHelper.java136
-rw-r--r--libjava/java/nio/ByteBufferImpl.java91
-rw-r--r--libjava/java/nio/CharViewBufferImpl.java94
-rw-r--r--libjava/java/nio/DirectByteBufferImpl.java124
-rw-r--r--libjava/java/nio/DoubleViewBufferImpl.java80
-rw-r--r--libjava/java/nio/FloatViewBufferImpl.java83
-rw-r--r--libjava/java/nio/IntViewBufferImpl.java83
-rw-r--r--libjava/java/nio/LongViewBufferImpl.java83
-rw-r--r--libjava/java/nio/MappedByteBufferImpl.java133
-rw-r--r--libjava/java/nio/ShortViewBufferImpl.java83
-rw-r--r--libjava/java/nio/channels/spi/AbstractInterruptibleChannel.java2
-rw-r--r--libjava/java/nio/channels/spi/AbstractSelectableChannel.java7
-rw-r--r--libjava/java/nio/natDirectByteBufferImpl.cc9
-rw-r--r--libjava/libltdl/ChangeLog9
-rwxr-xr-xlibjava/libltdl/config.guess39
-rwxr-xr-xlibjava/libltdl/config.sub47
-rw-r--r--libjava/libtool-version2
-rw-r--r--libjava/testsuite/ChangeLog4
-rw-r--r--libjava/verify.cc5
-rw-r--r--libobjc/ChangeLog13
-rw-r--r--libobjc/Makefile.in2
-rw-r--r--libobjc/encoding.c11
-rw-r--r--libstdc++-v3/.cvsignore1
-rw-r--r--libstdc++-v3/ChangeLog10760
-rw-r--r--libstdc++-v3/ChangeLog-20038619
-rw-r--r--libstdc++-v3/Makefile.in9
-rw-r--r--libstdc++-v3/acconfig.h3
-rw-r--r--libstdc++-v3/acinclude.m4143
-rw-r--r--libstdc++-v3/aclocal.m4143
-rw-r--r--libstdc++-v3/config.h.in9
-rw-r--r--libstdc++-v3/config/allocator/bitmap_allocator_base.h37
-rw-r--r--libstdc++-v3/config/allocator/malloc_allocator_base.h37
-rw-r--r--libstdc++-v3/config/allocator/mt_allocator_base.h37
-rw-r--r--libstdc++-v3/config/allocator/new_allocator_base.h37
-rw-r--r--libstdc++-v3/config/cpu/alpha/atomicity.h41
-rw-r--r--libstdc++-v3/config/cpu/cris/atomic_word.h36
-rw-r--r--libstdc++-v3/config/cpu/cris/atomicity.h49
-rw-r--r--libstdc++-v3/config/cpu/generic/atomic_word.h35
-rw-r--r--libstdc++-v3/config/cpu/generic/atomicity.h69
-rw-r--r--libstdc++-v3/config/cpu/hppa/atomicity.h167
-rw-r--r--libstdc++-v3/config/cpu/i386/atomicity.h90
-rw-r--r--libstdc++-v3/config/cpu/i486/atomicity.h45
-rw-r--r--libstdc++-v3/config/cpu/ia64/atomicity.h31
-rw-r--r--libstdc++-v3/config/cpu/m68k/atomicity.h186
-rw-r--r--libstdc++-v3/config/cpu/mips/atomicity.h96
-rw-r--r--libstdc++-v3/config/cpu/powerpc/atomicity.h82
-rw-r--r--libstdc++-v3/config/cpu/s390/atomicity.h54
-rw-r--r--libstdc++-v3/config/cpu/sparc/atomic_word.h39
-rw-r--r--libstdc++-v3/config/cpu/sparc/atomicity.h188
-rw-r--r--libstdc++-v3/config/io/basic_file_stdio.cc207
-rw-r--r--libstdc++-v3/config/io/basic_file_stdio.h8
-rw-r--r--libstdc++-v3/config/linker-map.gnu32
-rw-r--r--libstdc++-v3/config/locale/generic/c_locale.cc4
-rw-r--r--libstdc++-v3/config/locale/generic/c_locale.h10
-rw-r--r--libstdc++-v3/config/locale/generic/monetary_members.cc46
-rw-r--r--libstdc++-v3/config/locale/generic/numeric_members.cc6
-rw-r--r--libstdc++-v3/config/locale/gnu/c++locale_internal.h6
-rw-r--r--libstdc++-v3/config/locale/gnu/c_locale.cc4
-rw-r--r--libstdc++-v3/config/locale/gnu/c_locale.h10
-rw-r--r--libstdc++-v3/config/locale/gnu/monetary_members.cc96
-rw-r--r--libstdc++-v3/config/locale/gnu/numeric_members.cc6
-rw-r--r--libstdc++-v3/config/locale/ieee_1003.1-2001/codecvt_specializations.h46
-rw-r--r--libstdc++-v3/config/os/aix/atomicity.h42
-rw-r--r--libstdc++-v3/config/os/hpux/os_defines.h8
-rw-r--r--libstdc++-v3/config/os/irix/atomic_word.h35
-rw-r--r--libstdc++-v3/config/os/irix/atomicity.h42
-rw-r--r--libstdc++-v3/config/os/irix/irix6.5/os_defines.h3
-rw-r--r--libstdc++-v3/config/os/tpf/ctype_base.h55
-rw-r--r--libstdc++-v3/config/os/tpf/ctype_inline.h69
-rw-r--r--libstdc++-v3/config/os/tpf/ctype_noninline.h103
-rw-r--r--libstdc++-v3/config/os/tpf/os_defines.h45
-rwxr-xr-xlibstdc++-v3/configure2156
-rw-r--r--libstdc++-v3/configure.ac9
-rw-r--r--libstdc++-v3/configure.host38
-rw-r--r--libstdc++-v3/crossconfig.m435
-rw-r--r--libstdc++-v3/docs/html/17_intro/C++STYLE2
-rw-r--r--libstdc++-v3/docs/html/18_support/howto.html90
-rw-r--r--libstdc++-v3/docs/html/19_diagnostics/howto.html70
-rw-r--r--libstdc++-v3/docs/html/20_util/allocator.html472
-rw-r--r--libstdc++-v3/docs/html/20_util/howto.html4
-rw-r--r--libstdc++-v3/docs/html/configopts.html17
-rw-r--r--libstdc++-v3/docs/html/documentation.html9
-rw-r--r--libstdc++-v3/docs/html/ext/ballocator_doc.txt374
-rw-r--r--libstdc++-v3/docs/html/ext/howto.html269
-rw-r--r--libstdc++-v3/docs/html/ext/mt_allocator.html420
-rw-r--r--libstdc++-v3/docs/html/faq/index.html40
-rw-r--r--libstdc++-v3/docs/html/faq/index.txt400
-rw-r--r--libstdc++-v3/docs/html/test.html11
-rw-r--r--libstdc++-v3/include/Makefile.am18
-rw-r--r--libstdc++-v3/include/Makefile.in25
-rw-r--r--libstdc++-v3/include/backward/alloc.h5
-rw-r--r--libstdc++-v3/include/backward/bvector.h4
-rw-r--r--libstdc++-v3/include/bits/allocator.h139
-rw-r--r--libstdc++-v3/include/bits/atomicity.h46
-rw-r--r--libstdc++-v3/include/bits/basic_ios.h106
-rw-r--r--libstdc++-v3/include/bits/basic_ios.tcc40
-rw-r--r--libstdc++-v3/include/bits/basic_string.h392
-rw-r--r--libstdc++-v3/include/bits/basic_string.tcc668
-rw-r--r--libstdc++-v3/include/bits/boost_concept_check.h32
-rw-r--r--libstdc++-v3/include/bits/c++config27
-rw-r--r--libstdc++-v3/include/bits/char_traits.h96
-rw-r--r--libstdc++-v3/include/bits/codecvt.h294
-rw-r--r--libstdc++-v3/include/bits/concurrence.h29
-rw-r--r--libstdc++-v3/include/bits/cpp_type_traits.h23
-rw-r--r--libstdc++-v3/include/bits/deque.tcc765
-rw-r--r--libstdc++-v3/include/bits/fstream.tcc153
-rw-r--r--libstdc++-v3/include/bits/functexcept.h8
-rw-r--r--libstdc++-v3/include/bits/gslice.h119
-rw-r--r--libstdc++-v3/include/bits/gslice_array.h76
-rw-r--r--libstdc++-v3/include/bits/indirect_array.h162
-rw-r--r--libstdc++-v3/include/bits/ios_base.h289
-rw-r--r--libstdc++-v3/include/bits/istream.tcc266
-rw-r--r--libstdc++-v3/include/bits/list.tcc164
-rw-r--r--libstdc++-v3/include/bits/locale_classes.h146
-rw-r--r--libstdc++-v3/include/bits/locale_facets.h1098
-rw-r--r--libstdc++-v3/include/bits/locale_facets.tcc1567
-rw-r--r--libstdc++-v3/include/bits/localefwd.h74
-rw-r--r--libstdc++-v3/include/bits/mask_array.h88
-rw-r--r--libstdc++-v3/include/bits/ostream.tcc116
-rw-r--r--libstdc++-v3/include/bits/postypes.h142
-rw-r--r--libstdc++-v3/include/bits/slice_array.h95
-rw-r--r--libstdc++-v3/include/bits/sstream.tcc24
-rw-r--r--libstdc++-v3/include/bits/stl_algo.h2638
-rw-r--r--libstdc++-v3/include/bits/stl_algobase.h145
-rw-r--r--libstdc++-v3/include/bits/stl_bvector.h1143
-rw-r--r--libstdc++-v3/include/bits/stl_construct.h15
-rw-r--r--libstdc++-v3/include/bits/stl_deque.h2328
-rw-r--r--libstdc++-v3/include/bits/stl_function.h1478
-rw-r--r--libstdc++-v3/include/bits/stl_heap.h204
-rw-r--r--libstdc++-v3/include/bits/stl_iterator.h384
-rw-r--r--libstdc++-v3/include/bits/stl_iterator_base_funcs.h46
-rw-r--r--libstdc++-v3/include/bits/stl_iterator_base_types.h17
-rw-r--r--libstdc++-v3/include/bits/stl_list.h376
-rw-r--r--libstdc++-v3/include/bits/stl_map.h1034
-rw-r--r--libstdc++-v3/include/bits/stl_multimap.h981
-rw-r--r--libstdc++-v3/include/bits/stl_multiset.h710
-rw-r--r--libstdc++-v3/include/bits/stl_numeric.h115
-rw-r--r--libstdc++-v3/include/bits/stl_pair.h157
-rw-r--r--libstdc++-v3/include/bits/stl_queue.h168
-rw-r--r--libstdc++-v3/include/bits/stl_raw_storage_iter.h25
-rw-r--r--libstdc++-v3/include/bits/stl_relops.h104
-rw-r--r--libstdc++-v3/include/bits/stl_set.h678
-rw-r--r--libstdc++-v3/include/bits/stl_stack.h92
-rw-r--r--libstdc++-v3/include/bits/stl_tempbuf.h180
-rw-r--r--libstdc++-v3/include/bits/stl_threads.h18
-rw-r--r--libstdc++-v3/include/bits/stl_tree.h886
-rw-r--r--libstdc++-v3/include/bits/stl_uninitialized.h125
-rw-r--r--libstdc++-v3/include/bits/stl_vector.h309
-rw-r--r--libstdc++-v3/include/bits/stream_iterator.h150
-rw-r--r--libstdc++-v3/include/bits/streambuf.tcc18
-rw-r--r--libstdc++-v3/include/bits/streambuf_iterator.h125
-rw-r--r--libstdc++-v3/include/bits/stringfwd.h6
-rw-r--r--libstdc++-v3/include/bits/type_traits.h502
-rw-r--r--libstdc++-v3/include/bits/valarray_after.h58
-rw-r--r--libstdc++-v3/include/bits/valarray_array.h66
-rw-r--r--libstdc++-v3/include/bits/valarray_array.tcc117
-rw-r--r--libstdc++-v3/include/bits/valarray_before.h74
-rw-r--r--libstdc++-v3/include/bits/vector.tcc238
-rw-r--r--libstdc++-v3/include/c_std/cmath.tcc4
-rw-r--r--libstdc++-v3/include/debug/bitset9
-rw-r--r--libstdc++-v3/include/debug/deque8
-rw-r--r--libstdc++-v3/include/debug/formatter.h4
-rw-r--r--libstdc++-v3/include/debug/list8
-rw-r--r--libstdc++-v3/include/debug/map.h6
-rw-r--r--libstdc++-v3/include/debug/multimap.h6
-rw-r--r--libstdc++-v3/include/debug/multiset.h6
-rw-r--r--libstdc++-v3/include/debug/safe_iterator.h5
-rw-r--r--libstdc++-v3/include/debug/set.h6
-rw-r--r--libstdc++-v3/include/debug/vector6
-rw-r--r--libstdc++-v3/include/ext/bitmap_allocator.h823
-rw-r--r--libstdc++-v3/include/ext/debug_allocator.h36
-rw-r--r--libstdc++-v3/include/ext/demangle.h (renamed from libstdc++-v3/include/bits/demangle.h)359
-rw-r--r--libstdc++-v3/include/ext/hashtable.h6
-rw-r--r--libstdc++-v3/include/ext/malloc_allocator.h17
-rw-r--r--libstdc++-v3/include/ext/mt_allocator.h1170
-rw-r--r--libstdc++-v3/include/ext/new_allocator.h16
-rw-r--r--libstdc++-v3/include/ext/pool_allocator.h35
-rw-r--r--libstdc++-v3/include/ext/ropeimpl.h11
-rw-r--r--libstdc++-v3/include/std/std_bitset.h19
-rw-r--r--libstdc++-v3/include/std/std_complex.h84
-rw-r--r--libstdc++-v3/include/std/std_istream.h6
-rw-r--r--libstdc++-v3/include/std/std_memory.h86
-rw-r--r--libstdc++-v3/include/std/std_ostream.h6
-rw-r--r--libstdc++-v3/include/std/std_valarray.h314
-rw-r--r--libstdc++-v3/libmath/Makefile.in9
-rw-r--r--libstdc++-v3/libmath/mathconf.h5
-rw-r--r--libstdc++-v3/libmath/nan.c36
-rw-r--r--libstdc++-v3/libsupc++/Makefile.am32
-rw-r--r--libstdc++-v3/libsupc++/Makefile.in61
-rw-r--r--libstdc++-v3/libsupc++/eh_catch.cc8
-rw-r--r--libstdc++-v3/libsupc++/eh_personality.cc4
-rw-r--r--libstdc++-v3/libsupc++/vterminate.cc46
-rw-r--r--libstdc++-v3/linkage.m434
-rw-r--r--libstdc++-v3/po/Makefile.am6
-rw-r--r--libstdc++-v3/po/Makefile.in15
-rwxr-xr-xlibstdc++-v3/scripts/check_performance40
-rwxr-xr-xlibstdc++-v3/scripts/testsuite_flags.in2
-rw-r--r--libstdc++-v3/src/Makefile.am18
-rw-r--r--libstdc++-v3/src/Makefile.in40
-rw-r--r--libstdc++-v3/src/allocator-inst.cc7
-rw-r--r--libstdc++-v3/src/allocator.cc48
-rw-r--r--libstdc++-v3/src/debug.cc252
-rw-r--r--libstdc++-v3/src/debug_list.cc34
-rw-r--r--libstdc++-v3/src/demangle.cc167
-rw-r--r--libstdc++-v3/src/globals_io.cc7
-rw-r--r--libstdc++-v3/src/globals_locale.cc14
-rw-r--r--libstdc++-v3/src/ios.cc20
-rw-r--r--libstdc++-v3/src/ios_init.cc16
-rw-r--r--libstdc++-v3/src/list.cc6
-rw-r--r--libstdc++-v3/src/locale-inst.cc29
-rw-r--r--libstdc++-v3/src/locale.cc10
-rw-r--r--libstdc++-v3/src/locale_facets.cc4
-rw-r--r--libstdc++-v3/src/locale_init.cc105
-rw-r--r--libstdc++-v3/src/localename.cc2
-rw-r--r--libstdc++-v3/src/misc-inst.cc20
-rw-r--r--libstdc++-v3/src/string-inst.cc13
-rw-r--r--libstdc++-v3/testsuite/18_support/14026.cc34
-rw-r--r--libstdc++-v3/testsuite/18_support/numeric_limits.cc4
-rw-r--r--libstdc++-v3/testsuite/20_util/allocator/1.cc34
-rw-r--r--libstdc++-v3/testsuite/20_util/allocator/10378.cc7
-rw-r--r--libstdc++-v3/testsuite/20_util/allocator/14176.cc42
-rw-r--r--libstdc++-v3/testsuite/20_util/allocator/8230.cc59
-rw-r--r--libstdc++-v3/testsuite/20_util/auto_ptr/assign_neg.cc6
-rw-r--r--libstdc++-v3/testsuite/20_util/binders.cc6
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/compare/char/1.cc3
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/compare/wchar_t/1.cc3
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/cons/char/6.cc56
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/cons/wchar_t/6.cc56
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/4.cc50
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/4.cc50
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/replace/char/6.cc55
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/replace/wchar_t/6.cc55
-rw-r--r--libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/2.cc5
-rw-r--r--libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc5
-rw-r--r--libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc5
-rw-r--r--libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/2.cc5
-rw-r--r--libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc5
-rw-r--r--libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc5
-rw-r--r--libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/2.cc5
-rw-r--r--libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc5
-rw-r--r--libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc5
-rw-r--r--libstdc++-v3/testsuite/22_locale/ctype/is/char/2.cc8
-rw-r--r--libstdc++-v3/testsuite/22_locale/ctype/is/wchar_t/2.cc7
-rw-r--r--libstdc++-v3/testsuite/22_locale/ctype/widen/char/1.cc2
-rw-r--r--libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread.cc67
-rw-r--r--libstdc++-v3/testsuite/22_locale/locale/global_locale_objects/14071.cc49
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/1.cc23
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/12.cc70
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/13.cc67
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/14.cc62
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/15.cc68
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/16.cc75
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/17.cc71
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/18.cc69
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/19.cc125
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/2.cc29
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/3.cc16
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/4.cc20
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/6.cc8
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/7.cc13
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/8.cc4
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/char/9.cc4
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/1.cc23
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/12.cc70
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/13.cc67
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/14.cc62
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/15.cc69
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/16.cc75
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/17.cc71
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/18.cc69
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/19.cc125
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/2.cc29
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/3.cc16
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/4.cc20
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/6.cc8
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/7.cc13
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/8.cc4
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/9.cc4
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_put/put/char/1.cc8
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_put/put/char/2.cc15
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_put/put/char/3.cc13
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_put/put/char/9780-3.cc43
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/1.cc8
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/2.cc15
-rw-r--r--libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/3.cc13
-rw-r--r--libstdc++-v3/testsuite/22_locale/num_get/get/char/14.cc59
-rw-r--r--libstdc++-v3/testsuite/22_locale/num_get/get/char/15.cc75
-rw-r--r--libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/14.cc59
-rw-r--r--libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/15.cc75
-rw-r--r--libstdc++-v3/testsuite/22_locale/num_put/put/char/4.cc14
-rw-r--r--libstdc++-v3/testsuite/22_locale/num_put/put/char/9780-2.cc42
-rw-r--r--libstdc++-v3/testsuite/22_locale/num_put/put/wchar_t/4.cc17
-rw-r--r--libstdc++-v3/testsuite/22_locale/numpunct/members/pod/2.cc2
-rw-r--r--libstdc++-v3/testsuite/22_locale/time_put/put/char/9780-1.cc131
-rw-r--r--libstdc++-v3/testsuite/23_containers/bitset/invalidation/1.cc4
-rw-r--r--libstdc++-v3/testsuite/23_containers/bitset/operations/13838.cc47
-rw-r--r--libstdc++-v3/testsuite/23_containers/deque/cons/1.cc7
-rw-r--r--libstdc++-v3/testsuite/23_containers/deque/cons/2.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/deque/cons/clear_allocator.cc88
-rw-r--r--libstdc++-v3/testsuite/23_containers/deque/invalidation/1.cc10
-rw-r--r--libstdc++-v3/testsuite/23_containers/deque/invalidation/2.cc10
-rw-r--r--libstdc++-v3/testsuite/23_containers/deque/invalidation/3.cc11
-rw-r--r--libstdc++-v3/testsuite/23_containers/deque/invalidation/4.cc8
-rw-r--r--libstdc++-v3/testsuite/23_containers/deque/modifiers/swap.cc68
-rw-r--r--libstdc++-v3/testsuite/23_containers/deque/operators/1.cc8
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/1.cc3
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/capacity/1.cc7
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/cons/1.cc8
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/cons/2.cc10
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/cons/3.cc7
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/cons/4.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/cons/5.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/cons/6.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/cons/7.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/cons/8.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/cons/9.cc7
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/cons/clear_allocator.cc88
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/invalidation/1.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/invalidation/2.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/invalidation/3.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/invalidation/4.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/modifiers/1.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/modifiers/2.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/modifiers/3.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/modifiers/swap.cc67
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/operators/1.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/operators/2.cc8
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/operators/3.cc8
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/operators/4.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/map/insert/1.cc8
-rw-r--r--libstdc++-v3/testsuite/23_containers/map/invalidation/1.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/map/invalidation/2.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/map/modifiers/swap.cc67
-rw-r--r--libstdc++-v3/testsuite/23_containers/map/operators/1.cc7
-rw-r--r--libstdc++-v3/testsuite/23_containers/map/operators/1_neg.cc4
-rw-r--r--libstdc++-v3/testsuite/23_containers/multimap/invalidation/1.cc7
-rw-r--r--libstdc++-v3/testsuite/23_containers/multimap/invalidation/2.cc7
-rw-r--r--libstdc++-v3/testsuite/23_containers/multimap/modifiers/swap.cc67
-rw-r--r--libstdc++-v3/testsuite/23_containers/multiset/insert/1.cc34
-rw-r--r--libstdc++-v3/testsuite/23_containers/multiset/invalidation/1.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/multiset/invalidation/2.cc12
-rw-r--r--libstdc++-v3/testsuite/23_containers/multiset/modifiers/swap.cc67
-rw-r--r--libstdc++-v3/testsuite/23_containers/priority_queue/members/7161.cc7
-rw-r--r--libstdc++-v3/testsuite/23_containers/queue/members/7157.cc8
-rw-r--r--libstdc++-v3/testsuite/23_containers/set/invalidation/1.cc9
-rw-r--r--libstdc++-v3/testsuite/23_containers/set/invalidation/2.cc13
-rw-r--r--libstdc++-v3/testsuite/23_containers/set/modifiers/swap.cc67
-rw-r--r--libstdc++-v3/testsuite/23_containers/set/operators/1_neg.cc5
-rw-r--r--libstdc++-v3/testsuite/23_containers/stack/members/7158.cc8
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/bool/6886.cc7
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/bool/clear_allocator.cc88
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/capacity/1.cc7
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/capacity/8230.cc7
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/cons/1.cc8
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/cons/2.cc10
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/cons/3.cc8
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/cons/6513.cc8
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/cons/clear_allocator.cc88
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/element_access/1.cc8
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/invalidation/1.cc11
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/invalidation/2.cc11
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/invalidation/3.cc11
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/invalidation/4.cc11
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/modifiers/1.cc8
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/modifiers/2.cc7
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/modifiers/swap.cc67
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/resize/1.cc9
-rw-r--r--libstdc++-v3/testsuite/24_iterators/back_insert_iterator.cc7
-rw-r--r--libstdc++-v3/testsuite/24_iterators/front_insert_iterator.cc7
-rw-r--r--libstdc++-v3/testsuite/24_iterators/insert_iterator.cc7
-rw-r--r--libstdc++-v3/testsuite/24_iterators/iterator.cc8
-rw-r--r--libstdc++-v3/testsuite/24_iterators/rel_ops.cc7
-rw-r--r--libstdc++-v3/testsuite/25_algorithms/equal.cc6
-rw-r--r--libstdc++-v3/testsuite/25_algorithms/min_max.cc2
-rw-r--r--libstdc++-v3/testsuite/25_algorithms/rotate.cc7
-rw-r--r--libstdc++-v3/testsuite/25_algorithms/unique/1.cc7
-rw-r--r--libstdc++-v3/testsuite/25_algorithms/unique/2.cc7
-rw-r--r--libstdc++-v3/testsuite/26_numerics/cmath/overloads.cc (renamed from libstdc++-v3/testsuite/26_numerics/cmath/overloads.C)0
-rw-r--r--libstdc++-v3/testsuite/26_numerics/complex/13450.cc75
-rw-r--r--libstdc++-v3/testsuite/26_numerics/complex/pow.cc (renamed from libstdc++-v3/testsuite/26_numerics/complex/pow.C)4
-rw-r--r--libstdc++-v3/testsuite/26_numerics/complex_value.cc4
-rw-r--r--libstdc++-v3/testsuite/26_numerics/valarray_subset_assignment.cc88
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/9964.cc4
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/9507.cc7
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/char/13858.cc70
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc17
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc71
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc18
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc14
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc7
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc2
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_filebuf/sync/char/9182-1.cc16
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/char/10097.cc3
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_ios/imbue/14072.cc220
-rw-r--r--libstdc++-v3/testsuite/27_io/fpos/14252.cc62
-rw-r--r--libstdc++-v3/testsuite/27_io/fpos/14320-1.cc61
-rw-r--r--libstdc++-v3/testsuite/27_io/fpos/14320-2.cc42
-rw-r--r--libstdc++-v3/testsuite/27_io/fpos/14320-3.cc43
-rw-r--r--libstdc++-v3/testsuite/27_io/fpos/14320-4.cc52
-rw-r--r--libstdc++-v3/testsuite/27_io/fpos/14320-5.cc45
-rw-r--r--libstdc++-v3/testsuite/27_io/fpos/mbstate_t/4_neg.cc4
-rw-r--r--libstdc++-v3/testsuite/27_io/ios_base/cons/assign_neg.cc4
-rw-r--r--libstdc++-v3/testsuite/27_io/ios_base/cons/copy_neg.cc4
-rw-r--r--libstdc++-v3/testsuite/27_io/ios_base/storage/1.cc4
-rw-r--r--libstdc++-v3/testsuite/27_io/ios_base/storage/11584.cc63
-rw-r--r--libstdc++-v3/testsuite/27_io/ios_base/storage/2.cc4
-rw-r--r--libstdc++-v3/testsuite/27_io/ios_base/storage/3.cc4
-rw-r--r--libstdc++-v3/testsuite/27_io/manipulators/standard/char/2.cc4
-rw-r--r--libstdc++-v3/testsuite/27_io/objects/char/5.cc3
-rw-r--r--libstdc++-v3/testsuite/27_io/objects/char/7.cc3
-rw-r--r--libstdc++-v3/testsuite/27_io/objects/char/9661-1.cc3
-rw-r--r--libstdc++-v3/testsuite/27_io/objects/wchar_t/5.cc3
-rw-r--r--libstdc++-v3/testsuite/Makefile.am13
-rw-r--r--libstdc++-v3/testsuite/Makefile.in22
-rw-r--r--libstdc++-v3/testsuite/backward/11460.cc4
-rw-r--r--libstdc++-v3/testsuite/config/default.exp18
-rw-r--r--libstdc++-v3/testsuite/demangle/abi_examples/01.cc2
-rw-r--r--libstdc++-v3/testsuite/demangle/abi_examples/02.cc2
-rw-r--r--libstdc++-v3/testsuite/demangle/regression/cw-11.cc3
-rw-r--r--libstdc++-v3/testsuite/demangle/regression/cw-16.cc4
-rw-r--r--libstdc++-v3/testsuite/ext/14648.cc40
-rw-r--r--libstdc++-v3/testsuite/ext/concept_checks.cc9
-rw-r--r--libstdc++-v3/testsuite/ext/enc_filebuf/char/13189.cc11
-rw-r--r--libstdc++-v3/testsuite/ext/enc_filebuf/char/13598.cc47
-rw-r--r--libstdc++-v3/testsuite/ext/enc_filebuf/wchar_t/13189.cc11
-rw-r--r--libstdc++-v3/testsuite/ext/hash_map.cc7
-rw-r--r--libstdc++-v3/testsuite/ext/hash_set.cc8
-rw-r--r--libstdc++-v3/testsuite/ext/rope.cc10
-rw-r--r--libstdc++-v3/testsuite/ext/stdio_filebuf/char/10063-2.cc1
-rw-r--r--libstdc++-v3/testsuite/ext/stdio_filebuf/char/10063-3.cc61
-rw-r--r--libstdc++-v3/testsuite/lib/dg-options.exp29
-rw-r--r--libstdc++-v3/testsuite/lib/libstdc++.exp107
-rw-r--r--libstdc++-v3/testsuite/lib/prune.exp6
-rw-r--r--libstdc++-v3/testsuite/libstdc++-dg/normal.exp33
-rw-r--r--libstdc++-v3/testsuite/performance/20_util/allocator/insert.cc285
-rw-r--r--libstdc++-v3/testsuite/performance/20_util/allocator/insert_insert.cc (renamed from libstdc++-v3/testsuite/performance/allocator.cc)149
-rw-r--r--libstdc++-v3/testsuite/performance/20_util/allocator/list_sort_search.cc125
-rw-r--r--libstdc++-v3/testsuite/performance/20_util/allocator/map_mt_find.cc148
-rw-r--r--libstdc++-v3/testsuite/performance/20_util/allocator/map_thread.cc (renamed from libstdc++-v3/testsuite/performance/allocator_thread.cc)99
-rw-r--r--libstdc++-v3/testsuite/performance/20_util/allocator/producer_consumer.cc333
-rw-r--r--libstdc++-v3/testsuite/performance/21_strings/string_append.cc (renamed from libstdc++-v3/testsuite/performance/string_append.cc)4
-rw-r--r--libstdc++-v3/testsuite/performance/21_strings/string_cons_input_iterator.cc58
-rw-r--r--libstdc++-v3/testsuite/performance/22_locale/is_wchar_t.cc (renamed from libstdc++-v3/testsuite/performance/is_wchar_t.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/22_locale/narrow_widen_char.cc (renamed from libstdc++-v3/testsuite/performance/narrow_widen_char.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/22_locale/narrow_widen_wchar_t.cc (renamed from libstdc++-v3/testsuite/performance/narrow_widen_wchar_t.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/22_locale/wchar_t_in.cc (renamed from libstdc++-v3/testsuite/performance/wchar_t_in.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/22_locale/wchar_t_length.cc (renamed from libstdc++-v3/testsuite/performance/wchar_t_length.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/22_locale/wchar_t_out.cc (renamed from libstdc++-v3/testsuite/performance/wchar_t_out.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/23_containers/container_benchmark.cc (renamed from libstdc++-v3/testsuite/performance/container_benchmark.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/23_containers/list_create_fill_sort.cc (renamed from libstdc++-v3/testsuite/performance/list_create_fill_sort.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/23_containers/map_create_fill.cc (renamed from libstdc++-v3/testsuite/performance/map_create_fill.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/26_numerics/complex_norm.cc (renamed from libstdc++-v3/testsuite/performance/complex_norm.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/27_io/cout_insert_int.cc (renamed from libstdc++-v3/testsuite/performance/cout_insert_int.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/27_io/filebuf_copy.cc (renamed from libstdc++-v3/testsuite/performance/filebuf_copy.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/27_io/filebuf_sputc.cc (renamed from libstdc++-v3/testsuite/performance/filebuf_sputc.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/27_io/fmtflags_manipulators.cc69
-rw-r--r--libstdc++-v3/testsuite/performance/27_io/fstream_seek_write.cc (renamed from libstdc++-v3/testsuite/performance/fstream_seek_write.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/27_io/ifstream_extract_float.cc (renamed from libstdc++-v3/testsuite/performance/ifstream_extract_float.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/27_io/ifstream_extract_int.cc (renamed from libstdc++-v3/testsuite/performance/ifstream_extract_int.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/27_io/ifstream_getline.cc (renamed from libstdc++-v3/testsuite/performance/ifstream_getline.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/27_io/ofstream_insert_float.cc (renamed from libstdc++-v3/testsuite/performance/ofstream_insert_float.cc)0
-rw-r--r--libstdc++-v3/testsuite/performance/27_io/ofstream_insert_int.cc (renamed from libstdc++-v3/testsuite/performance/ofstream_insert_int.cc)0
-rw-r--r--libstdc++-v3/testsuite/testsuite_character.h4
-rw-r--r--libstdc++-v3/testsuite/testsuite_hooks.cc5
-rw-r--r--libstdc++-v3/testsuite/testsuite_hooks.h4
-rw-r--r--libstdc++-v3/testsuite/testsuite_performance.h10
-rw-r--r--libstdc++-v3/testsuite/thread/pthread1.cc7
-rw-r--r--libstdc++-v3/testsuite/thread/pthread4.cc8
-rw-r--r--libstdc++-v3/testsuite/thread/pthread5.cc8
-rw-r--r--libstdc++-v3/testsuite/thread/pthread6.cc5
-rw-r--r--libstdc++-v3/testsuite/thread/pthread7-rope.cc14
-rwxr-xr-xltconfig2
-rw-r--r--ltmain.sh22
-rw-r--r--maintainer-scripts/ChangeLog18
-rwxr-xr-xmaintainer-scripts/gcc_release12
-rwxr-xr-xmkinstalldirs69
-rw-r--r--zlib/ChangeLog4
1288 files changed, 188955 insertions, 124507 deletions
diff --git a/ChangeLog b/ChangeLog
index c9bd867367b..8ea7a891b3d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,64 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-03-05 David Edelsohn <edelsohn@gnu.org>
+
+ * ltconfig: Disable building static libraries if building shared
+ libraries on AIX 5L.
+
+2004-03-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * configure.in (mips64*-*-linux*): Override mips*-*-linux* case
+ and disable libgcj.
+ * configure: Regenerated.
+
+2004-02-25 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ PR bootstrap/11932
+ * mkinstalldirs: Update to version 2004-02-15.20
+
+2004-02-25 Kelley Cook <kcook@gcc.gnu.org>
+
+ * MAINTAINERS: Add myself to write-after-approval.
+
+2004-02-22 Matthias Klose <doko@debian.org>
+
+ * config.guess: Update from version 2003-10-16 to 2004-02-16.
+ * config.sub: Update from version 2003-11-03 to 2004-02-16.
+
+2004-02-20 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * MAINTAINERS: Add Nicola Pero and myself as libobjc
+ maintainers.
+
+2004-02-14 Jerry Quinn <jlquinn@optonline.net>
+
+ * MAINTAINERS: Added myself to write-after-approval.
+
+2004-02-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * MAINTAINERS: Alphabetize.
+
+2004-02-04 Geoffrey Keating <geoffk@apple.com>
+
+ Partial merge from upstream:
+ * ltmain.in: When setting IFS to '~', be careful about user
+ arguments that contain '~'.
+
+2004-02-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.in: Don't pass --with-stabs on IRIX 5 either.
+ * configure: Regenerate.
+
+2004-01-19 Paolo Carlini <pcarlini@suse.de>
+
+ * MAINTAINERS: Update my email address.
+
+2004-01-17 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ * MAINTAINERS: Remove entries without email address.
+
2004-01-15 Daniel Jacobowitz <drow@mvista.com>
* MAINTAINERS: Add myself to write-after-approval.
diff --git a/MAINTAINERS b/MAINTAINERS
index 6a6eb4350c7..b7ded195d9f 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -118,6 +118,8 @@ mercury Fergus Henderson fjh@cs.mu.oz.au
objective-c Stan Shebs shebs@apple.com
objective-c Ovidiu Predescu ovidiu@cup.hp.com
objective-c Ziemowit Laski zlaski@apple.com
+libobjc Nicola Pero n.pero@mi.flashnet.it
+libobjc Andrew Pinski pinskia@physics.uc.edu
alias analysis John Carr jfc@mit.edu
loop unrolling Jim Wilson wilson@specifixinc.com
loop discovery Michael Hayes m.hayes@elec.canterbury.ac.nz
@@ -129,7 +131,7 @@ caller-save.c Jeff Law law@redhat.com
callgraph Jan Hubicka jh@suse.cz
debugging code Jim Wilson wilson@specifixinc.com
dwarf debugging code Jason Merrill jason@redhat.com
-c++ runtime libs Paolo Carlini pcarlini@unitus.it
+c++ runtime libs Paolo Carlini pcarlini@suse.de
c++ runtime libs Gabriel Dos Reis gdr@integrable-solutions.net
c++ runtime libs Ulrich Drepper drepper@redhat.com
c++ runtime libs Phil Edwards pme@gcc.gnu.org
@@ -193,6 +195,7 @@ Kevin Buettner kevinb@redhat.com
Andrew Cagney cagney@redhat.com
Chandra Chavva cchavva@redhat.com
William Cohen wcohen@redhat.com
+R. Kelley Cook kcook@gcc.gnu.org
Christian Cornelssen ccorn@cs.tu-berlin.de
David Daney ddaney@avtrex.com
Chris Demetriou cgd@broadcom.com
@@ -248,13 +251,12 @@ Turly O'Connor turly@apple.com
Jeffrey D. Oldham oldham@codesourcery.com
Rainer Orth ro@TechFak.Uni-Bielefeld.DE
Devang Patel dpatel@apple.com
-Nicola Pero n.pero@mi.flashnet.it
Graeme Peterson gp@qnx.com
Alexandre Petit-Bianco apbianco@redhat.com
-Andrew Pinski pinskia@physics.uc.edu
Nicolas Pitre nico@cam.org
Sebastian Pop s.pop@laposte.net
Clinton Popetz cpopetz@cpopetz.com
+Jerry Quinn jlquinn@optonline.net
Rolf Rasmussen rolfwr@gcc.gnu.org
Volker Reichelt reichelt@igpm.rwth-aachen.de
Tom Rix trix@redhat.com
@@ -272,8 +274,8 @@ Richard Stallman rms@gnu.org
Graham Stott graham.stott@btinternet.com
Mike Stump mrs@apple.com
Jeff Sturm jsturm@gcc.gnu.org
-Michael Tiemann tiemann@redhat.com
Kresten Krab Thorup krab@gcc.gnu.org
+Michael Tiemann tiemann@redhat.com
Jonathan Wakely redi@gcc.gnu.org
Krister Walfridsson cato@df.lth.se
John Wehle john@feith.com
@@ -287,7 +289,3 @@ Bug database only accounts
James Dennett jdennett@acm.org
Christian Ehrhardt ehrhardt@mathematik.uni-ulm.de
Dara Hazeghi dhazeghi@yahoo.com
-
-Peter Bienstman(?)
-Benjamin Chelf(?)
-Mark Galassi(?)
diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog
index b590a1ff725..3f414d8c1de 100644
--- a/boehm-gc/ChangeLog
+++ b/boehm-gc/ChangeLog
@@ -1,3 +1,18 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-02-22 Matthias Klose <doko@debian.org>
+
+ * config.guess: Update from version 2002-01-10 to 2004-02-16.
+ * config.sub: Update from version 2002-01-02 to 2004-02-16.
+
+2004-01-20 Andrew Haley <aph@redhat.com>
+
+ * include/private/gcconfig.h (USE_MMAP): Define for all Linux.
+
+ * configure.in: Comment change.
+
2004-01-16 Andrew Haley <aph@redhat.com>
* configure.in (NO_EXECUTE_PERMISSION): Remove global declaration;
diff --git a/boehm-gc/config.guess b/boehm-gc/config.guess
index aa6ea3f6766..00ccf89e18b 100755
--- a/boehm-gc/config.guess
+++ b/boehm-gc/config.guess
@@ -1,9 +1,9 @@
#! /bin/sh
# Attempt to guess a canonical system name.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002 Free Software Foundation, Inc.
+# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
-timestamp='2002-01-10'
+timestamp='2004-02-16'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -88,30 +88,42 @@ if test $# != 0; then
exit 1
fi
+trap 'exit 1' 1 2 15
-dummy=dummy-$$
-trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15
+# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
+# compiler to aid in system detection is discouraged as it requires
+# temporary files to be created and, as you can see below, it is a
+# headache to deal with in a portable fashion.
-# CC_FOR_BUILD -- compiler used by this script.
# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
# use `HOST_CC' if defined, but it is deprecated.
-set_cc_for_build='case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,) echo "int dummy(){}" > $dummy.c ;
- for c in cc gcc c89 ; do
- ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ;
- if test $? = 0 ; then
+# Portable tmp directory creation inspired by the Autoconf team.
+
+set_cc_for_build='
+trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
+: ${TMPDIR=/tmp} ;
+ { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
+dummy=$tmp/dummy ;
+tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
+case $CC_FOR_BUILD,$HOST_CC,$CC in
+ ,,) echo "int x;" > $dummy.c ;
+ for c in cc gcc c89 c99 ; do
+ if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
CC_FOR_BUILD="$c"; break ;
fi ;
done ;
- rm -f $dummy.c $dummy.o $dummy.rel ;
if test x"$CC_FOR_BUILD" = x ; then
CC_FOR_BUILD=no_compiler_found ;
fi
;;
,,*) CC_FOR_BUILD=$CC ;;
,*,*) CC_FOR_BUILD=$HOST_CC ;;
-esac'
+esac ;'
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi@noc.rutgers.edu 1994-08-24)
@@ -138,9 +150,11 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
#
# Note: NetBSD doesn't particularly care about the vendor
# portion of the name. We always set it to "unknown".
- UNAME_MACHINE_ARCH=`(uname -p) 2>/dev/null` || \
- UNAME_MACHINE_ARCH=unknown
+ sysctl="sysctl -n hw.machine_arch"
+ UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
+ /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
case "${UNAME_MACHINE_ARCH}" in
+ armeb) machine=armeb-unknown ;;
arm*) machine=arm-unknown ;;
sh3el) machine=shl-unknown ;;
sh3eb) machine=sh-unknown ;;
@@ -166,18 +180,35 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
;;
esac
# The OS release
- release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+ # Debian GNU/NetBSD machines have a different userland, and
+ # thus, need a distinct triplet. However, they do not need
+ # kernel version information, so it can be replaced with a
+ # suitable tag, in the style of linux-gnu.
+ case "${UNAME_VERSION}" in
+ Debian*)
+ release='-gnu'
+ ;;
+ *)
+ release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+ ;;
+ esac
# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
# contains redundant information, the shorter form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
echo "${machine}-${os}${release}"
exit 0 ;;
+ amd64:OpenBSD:*:*)
+ echo x86_64-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
amiga:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
arc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
+ cats:OpenBSD:*:*)
+ echo arm-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
hp300:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
@@ -196,6 +227,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
mvmeppc:OpenBSD:*:*)
echo powerpc-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
+ pegasos:OpenBSD:*:*)
+ echo powerpc-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
pmax:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
@@ -211,69 +245,65 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
*:OpenBSD:*:*)
echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
+ *:ekkoBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+ exit 0 ;;
+ macppc:MirBSD:*:*)
+ echo powerppc-unknown-mirbsd${UNAME_RELEASE}
+ exit 0 ;;
+ *:MirBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+ exit 0 ;;
alpha:OSF1:*:*)
if test $UNAME_RELEASE = "V4.0"; then
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
fi
+ # According to Compaq, /usr/sbin/psrinfo has been available on
+ # OSF/1 and Tru64 systems produced since 1995. I hope that
+ # covers most systems running today. This code pipes the CPU
+ # types through head -n 1, so we only detect the type of CPU 0.
+ ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
+ case "$ALPHA_CPU_TYPE" in
+ "EV4 (21064)")
+ UNAME_MACHINE="alpha" ;;
+ "EV4.5 (21064)")
+ UNAME_MACHINE="alpha" ;;
+ "LCA4 (21066/21068)")
+ UNAME_MACHINE="alpha" ;;
+ "EV5 (21164)")
+ UNAME_MACHINE="alphaev5" ;;
+ "EV5.6 (21164A)")
+ UNAME_MACHINE="alphaev56" ;;
+ "EV5.6 (21164PC)")
+ UNAME_MACHINE="alphapca56" ;;
+ "EV5.7 (21164PC)")
+ UNAME_MACHINE="alphapca57" ;;
+ "EV6 (21264)")
+ UNAME_MACHINE="alphaev6" ;;
+ "EV6.7 (21264A)")
+ UNAME_MACHINE="alphaev67" ;;
+ "EV6.8CB (21264C)")
+ UNAME_MACHINE="alphaev68" ;;
+ "EV6.8AL (21264B)")
+ UNAME_MACHINE="alphaev68" ;;
+ "EV6.8CX (21264D)")
+ UNAME_MACHINE="alphaev68" ;;
+ "EV6.9A (21264/EV69A)")
+ UNAME_MACHINE="alphaev69" ;;
+ "EV7 (21364)")
+ UNAME_MACHINE="alphaev7" ;;
+ "EV7.9 (21364A)")
+ UNAME_MACHINE="alphaev79" ;;
+ esac
# A Vn.n version is a released version.
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
- cat <<EOF >$dummy.s
- .data
-\$Lformat:
- .byte 37,100,45,37,120,10,0 # "%d-%x\n"
-
- .text
- .globl main
- .align 4
- .ent main
-main:
- .frame \$30,16,\$26,0
- ldgp \$29,0(\$27)
- .prologue 1
- .long 0x47e03d80 # implver \$0
- lda \$2,-1
- .long 0x47e20c21 # amask \$2,\$1
- lda \$16,\$Lformat
- mov \$0,\$17
- not \$1,\$18
- jsr \$26,printf
- ldgp \$29,0(\$26)
- mov 0,\$16
- jsr \$26,exit
- .end main
-EOF
- eval $set_cc_for_build
- $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
- if test "$?" = 0 ; then
- case `./$dummy` in
- 0-0)
- UNAME_MACHINE="alpha"
- ;;
- 1-0)
- UNAME_MACHINE="alphaev5"
- ;;
- 1-1)
- UNAME_MACHINE="alphaev56"
- ;;
- 1-101)
- UNAME_MACHINE="alphapca56"
- ;;
- 2-303)
- UNAME_MACHINE="alphaev6"
- ;;
- 2-307)
- UNAME_MACHINE="alphaev67"
- ;;
- 2-1307)
- UNAME_MACHINE="alphaev68"
- ;;
- esac
- fi
- rm -f $dummy.s $dummy
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
exit 0 ;;
+ Alpha*:OpenVMS:*:*)
+ echo alpha-hp-vms
+ exit 0 ;;
Alpha\ *:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# Should we change UNAME_MACHINE based on the output of uname instead
@@ -295,6 +325,9 @@ EOF
*:OS/390:*:*)
echo i370-ibm-openedition
exit 0 ;;
+ *:OS400:*:*)
+ echo powerpc-ibm-os400
+ exit 0 ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix${UNAME_RELEASE}
exit 0;;
@@ -312,6 +345,13 @@ EOF
NILE*:*:*:dcosx)
echo pyramid-pyramid-svr4
exit 0 ;;
+ DRS?6000:unix:4.0:6*)
+ echo sparc-icl-nx6
+ exit 0 ;;
+ DRS?6000:UNIX_SV:4.2*:7*)
+ case `/usr/bin/uname -p` in
+ sparc) echo sparc-icl-nx7 && exit 0 ;;
+ esac ;;
sun4H:SunOS:5.*:*)
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
@@ -340,7 +380,7 @@ EOF
echo m68k-sun-sunos${UNAME_RELEASE}
exit 0 ;;
sun*:*:4.2BSD:*)
- UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
+ UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
case "`/bin/arch`" in
sun3)
@@ -380,6 +420,9 @@ EOF
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
echo m68k-unknown-mint${UNAME_RELEASE}
exit 0 ;;
+ m68k:machten:*:*)
+ echo m68k-apple-machten${UNAME_RELEASE}
+ exit 0 ;;
powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE}
exit 0 ;;
@@ -418,15 +461,20 @@ EOF
exit (-1);
}
EOF
- $CC_FOR_BUILD $dummy.c -o $dummy \
- && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
- && rm -f $dummy.c $dummy && exit 0
- rm -f $dummy.c $dummy
+ $CC_FOR_BUILD -o $dummy $dummy.c \
+ && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
+ && exit 0
echo mips-mips-riscos${UNAME_RELEASE}
exit 0 ;;
Motorola:PowerMAX_OS:*:*)
echo powerpc-motorola-powermax
exit 0 ;;
+ Motorola:*:4.3:PL8-*)
+ echo powerpc-harris-powermax
+ exit 0 ;;
+ Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
+ echo powerpc-harris-powermax
+ exit 0 ;;
Night_Hawk:Power_UNIX:*:*)
echo powerpc-harris-powerunix
exit 0 ;;
@@ -499,8 +547,7 @@ EOF
exit(0);
}
EOF
- $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
- rm -f $dummy.c $dummy
+ $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
echo rs6000-ibm-aix3.2.5
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
echo rs6000-ibm-aix3.2.4
@@ -509,7 +556,7 @@ EOF
fi
exit 0 ;;
*:AIX:*:[45])
- IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
+ IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
IBM_ARCH=rs6000
else
@@ -598,11 +645,21 @@ EOF
exit (0);
}
EOF
- (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null) && HP_ARCH=`./$dummy`
- if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
- rm -f $dummy.c $dummy
+ (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
+ test -z "$HP_ARCH" && HP_ARCH=hppa
fi ;;
esac
+ if [ ${HP_ARCH} = "hppa2.0w" ]
+ then
+ # avoid double evaluation of $set_cc_for_build
+ test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
+ if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
+ then
+ HP_ARCH="hppa2.0w"
+ else
+ HP_ARCH="hppa64"
+ fi
+ fi
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
exit 0 ;;
ia64:HP-UX:*:*)
@@ -636,8 +693,7 @@ EOF
exit (0);
}
EOF
- $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
- rm -f $dummy.c $dummy
+ $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
echo unknown-hitachi-hiuxwe2
exit 0 ;;
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
@@ -683,9 +739,6 @@ EOF
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
echo c4-convex-bsd
exit 0 ;;
- CRAY*X-MP:*:*:*)
- echo xmp-cray-unicos
- exit 0 ;;
CRAY*Y-MP:*:*:*)
echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
@@ -698,24 +751,26 @@ EOF
CRAY*TS:*:*:*)
echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
- CRAY*T3D:*:*:*)
- echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
CRAY*T3E:*:*:*)
echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY*SV1:*:*:*)
echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
- CRAY-2:*:*:*)
- echo cray2-cray-unicos
- exit 0 ;;
+ *:UNICOS/mp:*:*)
+ echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ exit 0 ;;
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit 0 ;;
+ 5000:UNIX_System_V:4.*:*)
+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+ FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ exit 0 ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
exit 0 ;;
@@ -726,7 +781,21 @@ EOF
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
exit 0 ;;
*:FreeBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+ # Determine whether the default compiler uses glibc.
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #include <features.h>
+ #if __GLIBC__ >= 2
+ LIBC=gnu
+ #else
+ LIBC=
+ #endif
+EOF
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+ # GNU/KFreeBSD systems have a "k" prefix to indicate we are using
+ # FreeBSD's kernel, but not the complete OS.
+ case ${LIBC} in gnu) kernel_only='k' ;; esac
+ echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
exit 0 ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
@@ -737,14 +806,17 @@ EOF
i*:PW*:*)
echo ${UNAME_MACHINE}-pc-pw32
exit 0 ;;
- x86:Interix*:3*)
- echo i386-pc-interix3
+ x86:Interix*:[34]*)
+ echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
+ exit 0 ;;
+ [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
+ echo i${UNAME_MACHINE}-pc-mks
exit 0 ;;
i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
# UNAME_MACHINE based on the output of uname instead of i386?
- echo i386-pc-interix
+ echo i586-pc-interix
exit 0 ;;
i*:UWIN*:*)
echo ${UNAME_MACHINE}-pc-uwin
@@ -756,16 +828,24 @@ EOF
echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
*:GNU:*:*)
+ # the GNU system
echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
exit 0 ;;
+ *:GNU/*:*:*)
+ # other systems with GNU libc and userland
+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+ exit 0 ;;
i*86:Minix:*:*)
echo ${UNAME_MACHINE}-pc-minix
exit 0 ;;
arm*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
+ cris:Linux:*:*)
+ echo cris-axis-linux-gnu
+ exit 0 ;;
ia64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
m68*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
@@ -776,19 +856,37 @@ EOF
#undef CPU
#undef mips
#undef mipsel
- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=mipsel
+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+ CPU=mipsel
#else
- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
CPU=mips
#else
CPU=
#endif
- #endif
+ #endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
- rm -f $dummy.c
- test x"${CPU}" != x && echo "${CPU}-pc-linux-gnu" && exit 0
+ test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
+ ;;
+ mips64:Linux:*:*)
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #undef CPU
+ #undef mips64
+ #undef mips64el
+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+ CPU=mips64el
+ #else
+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+ CPU=mips64
+ #else
+ CPU=
+ #endif
+ #endif
+EOF
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+ test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
;;
ppc:Linux:*:*)
echo powerpc-unknown-linux-gnu
@@ -824,6 +922,9 @@ EOF
s390:Linux:*:* | s390x:Linux:*:*)
echo ${UNAME_MACHINE}-ibm-linux
exit 0 ;;
+ sh64*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit 0 ;;
sh*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
@@ -837,7 +938,8 @@ EOF
# The BFD linker knows what the default object file format is, so
# first see if it will tell us. cd to the root directory to prevent
# problems with other programs or directories called `ld' in the path.
- ld_supported_targets=`cd /; ld --help 2>&1 \
+ # Set LC_ALL=C to ensure ld outputs messages in English.
+ ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
| sed -ne '/supported targets:/!d
s/[ ][ ]*/ /g
s/.*supported targets: *//
@@ -849,7 +951,7 @@ EOF
;;
a.out-i386-linux)
echo "${UNAME_MACHINE}-pc-linux-gnuaout"
- exit 0 ;;
+ exit 0 ;;
coff-i386)
echo "${UNAME_MACHINE}-pc-linux-gnucoff"
exit 0 ;;
@@ -874,11 +976,17 @@ EOF
LIBC=gnulibc1
# endif
#else
+ #ifdef __INTEL_COMPILER
+ LIBC=gnu
+ #else
LIBC=gnuaout
#endif
+ #endif
+ #ifdef __dietlibc__
+ LIBC=dietlibc
+ #endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
- rm -f $dummy.c
test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
;;
@@ -896,6 +1004,26 @@ EOF
# Use sysv4.2uw... so that sysv4* matches it.
echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
exit 0 ;;
+ i*86:OS/2:*:*)
+ # If we were able to find `uname', then EMX Unix compatibility
+ # is probably installed.
+ echo ${UNAME_MACHINE}-pc-os2-emx
+ exit 0 ;;
+ i*86:XTS-300:*:STOP)
+ echo ${UNAME_MACHINE}-unknown-stop
+ exit 0 ;;
+ i*86:atheos:*:*)
+ echo ${UNAME_MACHINE}-unknown-atheos
+ exit 0 ;;
+ i*86:syllable:*:*)
+ echo ${UNAME_MACHINE}-pc-syllable
+ exit 0 ;;
+ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+ echo i386-unknown-lynxos${UNAME_RELEASE}
+ exit 0 ;;
+ i*86:*DOS:*:*)
+ echo ${UNAME_MACHINE}-pc-msdosdjgpp
+ exit 0 ;;
i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
@@ -917,22 +1045,19 @@ EOF
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
elif /bin/uname -X 2>/dev/null >/dev/null ; then
- UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
- (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
- (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
+ UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
+ (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
+ (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
&& UNAME_MACHINE=i586
- (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
+ (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
&& UNAME_MACHINE=i686
- (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
+ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
&& UNAME_MACHINE=i686
echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
else
echo ${UNAME_MACHINE}-pc-sysv32
fi
exit 0 ;;
- i*86:*DOS:*:*)
- echo ${UNAME_MACHINE}-pc-msdosdjgpp
- exit 0 ;;
pc:*:*:*)
# Left here for compatibility:
# uname -m prints for DJGPP always 'pc', but it prints nothing about
@@ -956,9 +1081,15 @@ EOF
# "miniframe"
echo m68010-convergent-sysv
exit 0 ;;
+ mc68k:UNIX:SYSTEM5:3.51m)
+ echo m68k-convergent-sysv
+ exit 0 ;;
+ M680?0:D-NIX:5.3:*)
+ echo m68k-diab-dnix
+ exit 0 ;;
M68*:*:R3V[567]*:*)
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
- 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0)
+ 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
@@ -975,9 +1106,6 @@ EOF
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
exit 0 ;;
- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
- echo i386-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
TSUNAMI:LynxOS:2.*:*)
echo sparc-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
@@ -1049,6 +1177,9 @@ EOF
SX-5:SUPER-UX:*:*)
echo sx5-nec-superux${UNAME_RELEASE}
exit 0 ;;
+ SX-6:SUPER-UX:*:*)
+ echo sx6-nec-superux${UNAME_RELEASE}
+ exit 0 ;;
Power*:Rhapsody:*:*)
echo powerpc-apple-rhapsody${UNAME_RELEASE}
exit 0 ;;
@@ -1056,18 +1187,24 @@ EOF
echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
exit 0 ;;
*:Darwin:*:*)
- echo `uname -p`-apple-darwin${UNAME_RELEASE}
+ case `uname -p` in
+ *86) UNAME_PROCESSOR=i686 ;;
+ powerpc) UNAME_PROCESSOR=powerpc ;;
+ esac
+ echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
exit 0 ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
- if test "${UNAME_MACHINE}" = "x86pc"; then
+ UNAME_PROCESSOR=`uname -p`
+ if test "$UNAME_PROCESSOR" = "x86"; then
+ UNAME_PROCESSOR=i386
UNAME_MACHINE=pc
fi
- echo `uname -p`-${UNAME_MACHINE}-nto-qnx
+ echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
exit 0 ;;
*:QNX:*:4*)
echo i386-pc-qnx
exit 0 ;;
- NSR-[GKLNPTVW]:NONSTOP_KERNEL:*:*)
+ NSR-?:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE}
exit 0 ;;
*:NonStop-UX:*:*)
@@ -1090,11 +1227,6 @@ EOF
fi
echo ${UNAME_MACHINE}-unknown-plan9
exit 0 ;;
- i*86:OS/2:*:*)
- # If we were able to find `uname', then EMX Unix compatibility
- # is probably installed.
- echo ${UNAME_MACHINE}-pc-os2-emx
- exit 0 ;;
*:TOPS-10:*:*)
echo pdp10-unknown-tops10
exit 0 ;;
@@ -1113,11 +1245,11 @@ EOF
*:ITS:*:*)
echo pdp10-unknown-its
exit 0 ;;
- i*86:XTS-300:*:STOP)
- echo ${UNAME_MACHINE}-unknown-stop
+ SEI:*:*:SEIUX)
+ echo mips-sei-seiux${UNAME_RELEASE}
exit 0 ;;
- i*86:atheos:*:*)
- echo ${UNAME_MACHINE}-unknown-atheos
+ *:DragonFly:*:*)
+ echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
exit 0 ;;
esac
@@ -1239,8 +1371,7 @@ main ()
}
EOF
-$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0
-rm -f $dummy.c $dummy
+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
# Apollos put the system type in the environment.
diff --git a/boehm-gc/config.sub b/boehm-gc/config.sub
index 16573348b81..d2e3557ac40 100755
--- a/boehm-gc/config.sub
+++ b/boehm-gc/config.sub
@@ -1,9 +1,9 @@
#! /bin/sh
# Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002 Free Software Foundation, Inc.
+# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
-timestamp='2002-01-02'
+timestamp='2004-02-16'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@@ -118,7 +118,8 @@ esac
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
- nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-*)
+ nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
+ kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
@@ -228,28 +229,42 @@ case $basic_machine in
| a29k \
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
+ | am33_2.0 \
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
| c4x | clipper \
- | d10v | d30v | dsp16xx \
- | fr30 \
+ | d10v | d30v | dlx | dsp16xx \
+ | fr30 | frv \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| i370 | i860 | i960 | ia64 \
+ | ip2k | iq2000 \
| m32r | m68000 | m68k | m88k | mcore \
- | mips16 | mips64 | mips64el | mips64orion | mips64orionel \
- | mips64vr4100 | mips64vr4100el | mips64vr4300 \
- | mips64vr4300el | mips64vr5000 | mips64vr5000el \
- | mipsbe | mipseb | mipsel | mipsle | mipstx39 | mipstx39el \
- | mipsisa32 \
+ | mips | mipsbe | mipseb | mipsel | mipsle \
+ | mips16 \
+ | mips64 | mips64el \
+ | mips64vr | mips64vrel \
+ | mips64orion | mips64orionel \
+ | mips64vr4100 | mips64vr4100el \
+ | mips64vr4300 | mips64vr4300el \
+ | mips64vr5000 | mips64vr5000el \
+ | mipsisa32 | mipsisa32el \
+ | mipsisa32r2 | mipsisa32r2el \
+ | mipsisa64 | mipsisa64el \
+ | mipsisa64r2 | mipsisa64r2el \
+ | mipsisa64sb1 | mipsisa64sb1el \
+ | mipsisa64sr71k | mipsisa64sr71kel \
+ | mipstx39 | mipstx39el \
| mn10200 | mn10300 \
+ | msp430 \
| ns16k | ns32k \
- | openrisc \
+ | openrisc | or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
| pyramid \
- | sh | sh[34] | sh[34]eb | shbe | shle \
- | sparc | sparc64 | sparclet | sparclite | sparcv9 | sparcv9b \
+ | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
+ | sh64 | sh64le \
+ | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
| strongarm \
- | tahoe | thumb | tic80 | tron \
+ | tahoe | thumb | tic4x | tic80 | tron \
| v850 | v850e \
| we32k \
| x86 | xscale | xstormy16 | xtensa \
@@ -281,37 +296,53 @@ case $basic_machine in
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
- | arm-* | armbe-* | armle-* | armv*-* \
+ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| avr-* \
| bs2000-* \
- | c[123]* | c30-* | [cjt]90-* | c54x-* \
- | clipper-* | cray2-* | cydra-* \
- | d10v-* | d30v-* \
+ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
+ | clipper-* | cydra-* \
+ | d10v-* | d30v-* | dlx-* \
| elxsi-* \
- | f30[01]-* | f700-* | fr30-* | fx80-* \
+ | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
| h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| i*86-* | i860-* | i960-* | ia64-* \
+ | ip2k-* | iq2000-* \
| m32r-* \
- | m68000-* | m680[01234]0-* | m68360-* | m683?2-* | m68k-* \
+ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
| m88110-* | m88k-* | mcore-* \
- | mips-* | mips16-* | mips64-* | mips64el-* | mips64orion-* \
- | mips64orionel-* | mips64vr4100-* | mips64vr4100el-* \
- | mips64vr4300-* | mips64vr4300el-* | mipsbe-* | mipseb-* \
- | mipsle-* | mipsel-* | mipstx39-* | mipstx39el-* \
- | none-* | np1-* | ns16k-* | ns32k-* \
+ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
+ | mips16-* \
+ | mips64-* | mips64el-* \
+ | mips64vr-* | mips64vrel-* \
+ | mips64orion-* | mips64orionel-* \
+ | mips64vr4100-* | mips64vr4100el-* \
+ | mips64vr4300-* | mips64vr4300el-* \
+ | mips64vr5000-* | mips64vr5000el-* \
+ | mipsisa32-* | mipsisa32el-* \
+ | mipsisa32r2-* | mipsisa32r2el-* \
+ | mipsisa64-* | mipsisa64el-* \
+ | mipsisa64r2-* | mipsisa64r2el-* \
+ | mipsisa64sb1-* | mipsisa64sb1el-* \
+ | mipsisa64sr71k-* | mipsisa64sr71kel-* \
+ | mipstx39-* | mipstx39el-* \
+ | msp430-* \
+ | none-* | np1-* | nv1-* | ns16k-* | ns32k-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
| pyramid-* \
| romp-* | rs6000-* \
- | sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* \
- | sparc-* | sparc64-* | sparc86x-* | sparclite-* \
- | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* \
- | t3e-* | tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \
+ | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
+ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
+ | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
+ | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
+ | tahoe-* | thumb-* \
+ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
+ | tron-* \
| v850-* | v850e-* | vax-* \
| we32k-* \
- | x86-* | x86_64-* | xmp-* | xps100-* | xscale-* | xstormy16-* \
+ | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
| xtensa-* \
| ymp-* \
| z8k-*)
@@ -332,6 +363,9 @@ case $basic_machine in
basic_machine=a29k-amd
os=-udi
;;
+ abacus)
+ basic_machine=abacus-unknown
+ ;;
adobe68k)
basic_machine=m68010-adobe
os=-scout
@@ -346,6 +380,12 @@ case $basic_machine in
basic_machine=a29k-none
os=-bsd
;;
+ amd64)
+ basic_machine=x86_64-pc
+ ;;
+ amd64-*)
+ basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
amdahl)
basic_machine=580-amdahl
os=-sysv
@@ -377,6 +417,10 @@ case $basic_machine in
basic_machine=ns32k-sequent
os=-dynix
;;
+ c90)
+ basic_machine=c90-cray
+ os=-unicos
+ ;;
convex-c1)
basic_machine=c1-convex
os=-bsd
@@ -397,17 +441,13 @@ case $basic_machine in
basic_machine=c38-convex
os=-bsd
;;
- cray | ymp)
- basic_machine=ymp-cray
- os=-unicos
- ;;
- cray2)
- basic_machine=cray2-cray
+ cray | j90)
+ basic_machine=j90-cray
os=-unicos
;;
- [cjt]90)
- basic_machine=${basic_machine}-cray
- os=-unicos
+ cr16c)
+ basic_machine=cr16c-unknown
+ os=-elf
;;
crds | unos)
basic_machine=m68k-crds
@@ -609,14 +649,6 @@ case $basic_machine in
basic_machine=m68k-atari
os=-mint
;;
- mipsel*-linux*)
- basic_machine=mipsel-unknown
- os=-linux-gnu
- ;;
- mips*-linux*)
- basic_machine=mips-unknown
- os=-linux-gnu
- ;;
mips3*-*)
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
;;
@@ -707,6 +739,10 @@ case $basic_machine in
np1)
basic_machine=np1-gould
;;
+ nv1)
+ basic_machine=nv1-cray
+ os=-unicosmp
+ ;;
nsr-tandem)
basic_machine=nsr-tandem
;;
@@ -714,6 +750,14 @@ case $basic_machine in
basic_machine=hppa1.1-oki
os=-proelf
;;
+ or32 | or32-*)
+ basic_machine=or32-unknown
+ os=-coff
+ ;;
+ os400)
+ basic_machine=powerpc-ibm
+ os=-os400
+ ;;
OSE68000 | ose68000)
basic_machine=m68000-ericsson
os=-ose
@@ -736,49 +780,55 @@ case $basic_machine in
pbb)
basic_machine=m68k-tti
;;
- pc532 | pc532-*)
+ pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
pentium | p5 | k5 | k6 | nexgen | viac3)
basic_machine=i586-pc
;;
- pentiumpro | p6 | 6x86 | athlon)
+ pentiumpro | p6 | 6x86 | athlon | athlon_*)
basic_machine=i686-pc
;;
- pentiumii | pentium2)
+ pentiumii | pentium2 | pentiumiii | pentium3)
basic_machine=i686-pc
;;
+ pentium4)
+ basic_machine=i786-pc
+ ;;
pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentiumpro-* | p6-* | 6x86-* | athlon-*)
basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
- pentiumii-* | pentium2-*)
+ pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
+ pentium4-*)
+ basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
pn)
basic_machine=pn-gould
;;
power) basic_machine=power-ibm
;;
ppc) basic_machine=powerpc-unknown
- ;;
+ ;;
ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppcle | powerpclittle | ppc-le | powerpc-little)
basic_machine=powerpcle-unknown
- ;;
+ ;;
ppcle-* | powerpclittle-*)
basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64) basic_machine=powerpc64-unknown
- ;;
+ ;;
ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64le | powerpc64little | ppc64-le | powerpc64-little)
basic_machine=powerpc64le-unknown
- ;;
+ ;;
ppc64le-* | powerpc64little-*)
basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
@@ -809,6 +859,16 @@ case $basic_machine in
basic_machine=a29k-amd
os=-udi
;;
+ sb1)
+ basic_machine=mipsisa64sb1-unknown
+ ;;
+ sb1el)
+ basic_machine=mipsisa64sb1el-unknown
+ ;;
+ sei)
+ basic_machine=mips-sei
+ os=-seiux
+ ;;
sequent)
basic_machine=i386-sequent
;;
@@ -816,6 +876,9 @@ case $basic_machine in
basic_machine=sh-hitachi
os=-hms
;;
+ sh64)
+ basic_machine=sh64-unknown
+ ;;
sparclite-wrs | simso-wrs)
basic_machine=sparclite-wrs
os=-vxworks
@@ -883,13 +946,25 @@ case $basic_machine in
os=-dynix
;;
t3e)
- basic_machine=t3e-cray
+ basic_machine=alphaev5-cray
+ os=-unicos
+ ;;
+ t90)
+ basic_machine=t90-cray
os=-unicos
;;
tic54x | c54x*)
basic_machine=tic54x-unknown
os=-coff
;;
+ tic55x | c55x*)
+ basic_machine=tic55x-unknown
+ os=-coff
+ ;;
+ tic6x | c6x*)
+ basic_machine=tic6x-unknown
+ os=-coff
+ ;;
tx39)
basic_machine=mipstx39-unknown
;;
@@ -903,6 +978,10 @@ case $basic_machine in
tower | tower-32)
basic_machine=m68k-ncr
;;
+ tpf)
+ basic_machine=s390x-ibm
+ os=-tpf
+ ;;
udi29k)
basic_machine=a29k-amd
os=-udi
@@ -924,8 +1003,8 @@ case $basic_machine in
os=-vms
;;
vpp*|vx|vx-*)
- basic_machine=f301-fujitsu
- ;;
+ basic_machine=f301-fujitsu
+ ;;
vxworks960)
basic_machine=i960-wrs
os=-vxworks
@@ -946,17 +1025,13 @@ case $basic_machine in
basic_machine=hppa1.1-winbond
os=-proelf
;;
- windows32)
- basic_machine=i386-pc
- os=-windows32-msvcrt
+ xps | xps100)
+ basic_machine=xps100-honeywell
;;
- xmp)
- basic_machine=xmp-cray
+ ymp)
+ basic_machine=ymp-cray
os=-unicos
;;
- xps | xps100)
- basic_machine=xps100-honeywell
- ;;
z8k-*-coff)
basic_machine=z8k-unknown
os=-sim
@@ -977,13 +1052,6 @@ case $basic_machine in
op60c)
basic_machine=hppa1.1-oki
;;
- mips)
- if [ x$os = x-linux-gnu ]; then
- basic_machine=mips-unknown
- else
- basic_machine=mips-mips
- fi
- ;;
romp)
basic_machine=romp-ibm
;;
@@ -1003,13 +1071,16 @@ case $basic_machine in
we32k)
basic_machine=we32k-att
;;
- sh3 | sh4 | sh3eb | sh4eb)
+ sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
basic_machine=sh-unknown
;;
+ sh64)
+ basic_machine=sh64-unknown
+ ;;
sparc | sparcv9 | sparcv9b)
basic_machine=sparc-sun
;;
- cydra)
+ cydra)
basic_machine=cydra-cydrome
;;
orion)
@@ -1024,10 +1095,6 @@ case $basic_machine in
pmac | pmac-mpw)
basic_machine=powerpc-apple
;;
- c4x*)
- basic_machine=c4x-none
- os=-coff
- ;;
*-unknown)
# Make sure to match an already-canonicalized machine name.
;;
@@ -1083,17 +1150,20 @@ case $os in
| -aos* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
- | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
+ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
+ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
- | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
+ | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
+ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
- | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* | -morphos*)
+ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
+ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@@ -1105,8 +1175,10 @@ case $os in
;;
esac
;;
+ -nto-qnx*)
+ ;;
-nto*)
- os=-nto-qnx
+ os=`echo $os | sed -e 's|nto|nto-qnx|'`
;;
-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
| -windows* | -osx | -abug | -netware* | -os9* | -beos* \
@@ -1115,6 +1187,9 @@ case $os in
-mac*)
os=`echo $os | sed -e 's|mac|macos|'`
;;
+ -linux-dietlibc)
+ os=-linux-dietlibc
+ ;;
-linux*)
os=`echo $os | sed -e 's|linux|linux-gnu|'`
;;
@@ -1127,6 +1202,9 @@ case $os in
-opened*)
os=-openedition
;;
+ -os400*)
+ os=-os400
+ ;;
-wince*)
os=-wince
;;
@@ -1148,14 +1226,20 @@ case $os in
-atheos*)
os=-atheos
;;
+ -syllable*)
+ os=-syllable
+ ;;
-386bsd)
os=-bsd
;;
-ctix* | -uts*)
os=-sysv
;;
+ -nova*)
+ os=-rtmk-nova
+ ;;
-ns2 )
- os=-nextstep2
+ os=-nextstep2
;;
-nsk*)
os=-nsk
@@ -1167,6 +1251,9 @@ case $os in
-sinix*)
os=-sysv4
;;
+ -tpf*)
+ os=-tpf
+ ;;
-triton*)
os=-sysv3
;;
@@ -1194,8 +1281,14 @@ case $os in
-xenix)
os=-xenix
;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- os=-mint
+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+ os=-mint
+ ;;
+ -aros*)
+ os=-aros
+ ;;
+ -kaos*)
+ os=-kaos
;;
-none)
;;
@@ -1228,11 +1321,14 @@ case $basic_machine in
arm*-semi)
os=-aout
;;
+ c4x-* | tic4x-*)
+ os=-coff
+ ;;
# This must come before the *-dec entry.
pdp10-*)
os=-tops20
;;
- pdp11-*)
+ pdp11-*)
os=-none
;;
*-dec | vax-*)
@@ -1259,6 +1355,9 @@ case $basic_machine in
mips*-*)
os=-elf
;;
+ or32-*)
+ os=-coff
+ ;;
*-tti) # must be before sparc entry or we get the wrong os.
os=-sysv3
;;
@@ -1322,19 +1421,19 @@ case $basic_machine in
*-next)
os=-nextstep3
;;
- *-gould)
+ *-gould)
os=-sysv
;;
- *-highlevel)
+ *-highlevel)
os=-bsd
;;
*-encore)
os=-bsd
;;
- *-sgi)
+ *-sgi)
os=-irix
;;
- *-siemens)
+ *-siemens)
os=-sysv4
;;
*-masscomp)
@@ -1403,10 +1502,16 @@ case $basic_machine in
-mvs* | -opened*)
vendor=ibm
;;
+ -os400*)
+ vendor=ibm
+ ;;
-ptx*)
vendor=sequent
;;
- -vxsim* | -vxworks*)
+ -tpf*)
+ vendor=ibm
+ ;;
+ -vxsim* | -vxworks* | -windiss*)
vendor=wrs
;;
-aux*)
diff --git a/boehm-gc/configure.in b/boehm-gc/configure.in
index ba5ccb9678d..f109c9003ed 100644
--- a/boehm-gc/configure.in
+++ b/boehm-gc/configure.in
@@ -248,7 +248,7 @@ esac
#
# We don't set NO_EXECUTE_PERMISSION by default because gcj (and
# anything else that creates trampolines in gc-allocated memory)
-# always needs exec permission. The exception to this is IA-64 and
+# always needs exec permission. The exceptions to this are IA-64 and
# some variations of Power PC, where trampolines don't contain
# executable code.
#
diff --git a/boehm-gc/include/private/gcconfig.h b/boehm-gc/include/private/gcconfig.h
index 65e71479892..3da267d8bdc 100644
--- a/boehm-gc/include/private/gcconfig.h
+++ b/boehm-gc/include/private/gcconfig.h
@@ -616,6 +616,7 @@
# ifdef LINUX
# define OS_TYPE "LINUX"
# define STACKBOTTOM ((ptr_t)0xf0000000)
+# define USE_MMAP
# define USE_GENERIC_PUSH_REGS
/* We never got around to the assembly version. */
/* # define MPROTECT_VDB - Reported to not work 9/17/01 */
diff --git a/boehm-gc/install-sh b/boehm-gc/install-sh
index 398a88e1421..e9de23842dc 100755
--- a/boehm-gc/install-sh
+++ b/boehm-gc/install-sh
@@ -109,7 +109,7 @@ then
echo "install: no input file specified"
exit 1
else
- :
+ true
fi
if [ x"$dir_arg" != x ]; then
@@ -120,7 +120,7 @@ if [ x"$dir_arg" != x ]; then
instcmd=:
chmodcmd=""
else
- instcmd=$mkdirprog
+ instcmd=mkdir
fi
else
@@ -130,7 +130,7 @@ else
if [ -f $src -o -d $src ]
then
- :
+ true
else
echo "install: $src does not exist"
exit 1
@@ -141,7 +141,7 @@ else
echo "install: no destination specified"
exit 1
else
- :
+ true
fi
# If destination is a directory, append the input filename; if your system
@@ -151,7 +151,7 @@ else
then
dst="$dst"/`basename $src`
else
- :
+ true
fi
fi
@@ -163,8 +163,8 @@ dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
# Skip lots of stat calls in the usual case.
if [ ! -d "$dstdir" ]; then
-defaultIFS='
- '
+defaultIFS='
+'
IFS="${IFS-${defaultIFS}}"
oIFS="${IFS}"
@@ -183,7 +183,7 @@ while [ $# -ne 0 ] ; do
then
$mkdirprog "${pathcomp}"
else
- :
+ true
fi
pathcomp="${pathcomp}/"
@@ -194,10 +194,10 @@ if [ x"$dir_arg" != x ]
then
$doit $instcmd $dst &&
- if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else : ; fi &&
- if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else : ; fi &&
- if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else : ; fi &&
- if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else : ; fi
+ if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi &&
+ if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi &&
+ if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi &&
+ if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi
else
# If we're going to rename the final executable, determine the name now.
@@ -216,7 +216,7 @@ else
then
dstfile=`basename $dst`
else
- :
+ true
fi
# Make a temp file name in the proper directory.
@@ -235,10 +235,10 @@ else
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $instcmd $src $dsttmp" command.
- if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else :;fi &&
- if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else :;fi &&
- if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else :;fi &&
- if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else :;fi &&
+ if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi &&
+ if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi &&
+ if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi &&
+ if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi &&
# Now rename the file to the real destination.
diff --git a/boehm-gc/libtool.m4 b/boehm-gc/libtool.m4
index 066bf6a5ce6..c857149a9d6 100644
--- a/boehm-gc/libtool.m4
+++ b/boehm-gc/libtool.m4
@@ -1,6 +1,5 @@
-# libtool.m4 - Configure libtool for the host system. -*-Shell-script-*-
-## Copyright 1996, 1997, 1998, 1999, 2000, 2001
-## Free Software Foundation, Inc.
+## libtool.m4 - Configure libtool for the target system. -*-Shell-script-*-
+## Copyright (C) 1996-1999 Free Software Foundation, Inc.
## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
##
## This program is free software; you can redistribute it and/or modify
@@ -22,68 +21,85 @@
## configuration script generated by Autoconf, you may include it under
## the same distribution terms that you use for the rest of that program.
-# serial 46 AC_PROG_LIBTOOL
-
-AC_DEFUN([AC_PROG_LIBTOOL],
+# serial 40 AC_PROG_LIBTOOL
+AC_DEFUN(AC_PROG_LIBTOOL,
[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
+# Save cache, so that ltconfig can load it
+AC_CACHE_SAVE
+
+# Actually configure libtool. ac_aux_dir is where install-sh is found.
+CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
+LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
+LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
+DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
+${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
+$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \
+|| AC_MSG_ERROR([libtool configure failed])
+
+# Reload cache, that may have been modified by ltconfig
+AC_CACHE_LOAD
+
# This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
+LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
# Always use our own libtool.
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
AC_SUBST(LIBTOOL)dnl
-# Prevent multiple expansion
-define([AC_PROG_LIBTOOL], [])
+# Redirect the config.log output again, so that the ltconfig log is not
+# clobbered by the next message.
+exec 5>>./config.log
])
-AC_DEFUN([AC_LIBTOOL_SETUP],
+AC_DEFUN(AC_LIBTOOL_SETUP,
[AC_PREREQ(2.13)dnl
AC_REQUIRE([AC_ENABLE_SHARED])dnl
AC_REQUIRE([AC_ENABLE_STATIC])dnl
AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+AC_REQUIRE([AC_PROG_RANLIB])dnl
AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_PROG_LD])dnl
-AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
AC_REQUIRE([AC_PROG_NM])dnl
AC_REQUIRE([AC_PROG_LN_S])dnl
-AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
-AC_REQUIRE([AC_OBJEXT])dnl
-AC_REQUIRE([AC_EXEEXT])dnl
dnl
-_LT_AC_PROG_ECHO_BACKSLASH
-# Only perform the check for file, if the check method requires it
-case $deplibs_check_method in
-file_magic*)
- if test "$file_magic_cmd" = '$MAGIC_CMD'; then
- AC_PATH_MAGIC
- fi
- ;;
+case "$target" in
+NONE) lt_target="$host" ;;
+*) lt_target="$target" ;;
esac
-AC_CHECK_TOOL(RANLIB, ranlib, :)
-AC_CHECK_TOOL(STRIP, strip, :)
-
-ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
+# Check for any special flags to pass to ltconfig.
+#
+# the following will cause an existing older ltconfig to fail, so
+# we ignore this at the expense of the cache file... Checking this
+# will just take longer ... bummer!
+#libtool_flags="--cache-file=$cache_file"
+#
+test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
+test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
+test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
+test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
+test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
+ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
+[libtool_flags="$libtool_flags --enable-dlopen"])
ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
-enable_win32_dll=yes, enable_win32_dll=no)
-
+[libtool_flags="$libtool_flags --enable-win32-dll"])
AC_ARG_ENABLE(libtool-lock,
[ --disable-libtool-lock avoid locking (might break parallel builds)])
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
+test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
# Some flags need to be propagated to the compiler or linker for good
# libtool support.
-case $host in
+case "$lt_target" in
*-*-irix6*)
# Find out which ABI we are using.
echo '[#]line __oline__ "configure"' > conftest.$ac_ext
if AC_TRY_EVAL(ac_compile); then
- case `/usr/bin/file conftest.$ac_objext` in
+ case "`/usr/bin/file conftest.o`" in
*32-bit*)
LD="${LD-ld} -32"
;;
@@ -103,10 +119,7 @@ case $host in
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
- [AC_LANG_SAVE
- AC_LANG_C
- AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
- AC_LANG_RESTORE])
+ [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])])
if test x"$lt_cv_cc_needs_belf" != x"yes"; then
# this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
CFLAGS="$SAVE_CFLAGS"
@@ -114,2889 +127,33 @@ case $host in
;;
ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
-[*-*-cygwin* | *-*-mingw* | *-*-pw32*)
+[*-*-cygwin* | *-*-mingw*)
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
AC_CHECK_TOOL(AS, as, false)
AC_CHECK_TOOL(OBJDUMP, objdump, false)
-
- # recent cygwin and mingw systems supply a stub DllMain which the user
- # can override, but on older systems we have to supply one
- AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain,
- [AC_TRY_LINK([],
- [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
- DllMain (0, 0, 0);],
- [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])])
-
- case $host/$CC in
- *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*)
- # old mingw systems require "-dll" to link a DLL, while more recent ones
- # require "-mdll"
- SAVE_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -mdll"
- AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch,
- [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])])
- CFLAGS="$SAVE_CFLAGS" ;;
- *-*-cygwin* | *-*-pw32*)
- # cygwin systems need to pass --dll to the linker, and not link
- # crt.o which will require a WinMain@16 definition.
- lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;;
- esac
;;
- ])
-esac
-
-_LT_AC_LTCONFIG_HACK
-
])
-
-# AC_LIBTOOL_HEADER_ASSERT
-# ------------------------
-AC_DEFUN([AC_LIBTOOL_HEADER_ASSERT],
-[AC_CACHE_CHECK([whether $CC supports assert without backlinking],
- [lt_cv_func_assert_works],
- [case $host in
- *-*-solaris*)
- if test "$GCC" = yes && test "$with_gnu_ld" != yes; then
- case `$CC --version 2>/dev/null` in
- [[12]].*) lt_cv_func_assert_works=no ;;
- *) lt_cv_func_assert_works=yes ;;
- esac
- fi
- ;;
- esac])
-
-if test "x$lt_cv_func_assert_works" = xyes; then
- AC_CHECK_HEADERS(assert.h)
-fi
-])# AC_LIBTOOL_HEADER_ASSERT
-
-# _LT_AC_CHECK_DLFCN
-# --------------------
-AC_DEFUN([_LT_AC_CHECK_DLFCN],
-[AC_CHECK_HEADERS(dlfcn.h)
-])# _LT_AC_CHECK_DLFCN
-
-# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
-# ---------------------------------
-AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE],
-[AC_REQUIRE([AC_CANONICAL_HOST])
-AC_REQUIRE([AC_PROG_NM])
-AC_REQUIRE([AC_OBJEXT])
-# Check for command to grab the raw symbol name followed by C symbol from nm.
-AC_MSG_CHECKING([command to parse $NM output])
-AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [dnl
-
-# These are sane defaults that work on at least a few old systems.
-# [They come from Ultrix. What could be older than Ultrix?!! ;)]
-
-# Character class describing NM global symbol codes.
-symcode='[[BCDEGRST]]'
-
-# Regexp to match symbols that can be accessed directly from C.
-sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
-
-# Transform the above into a raw symbol and a C symbol.
-symxfrm='\1 \2\3 \3'
-
-# Transform an extracted symbol line into a proper C declaration
-lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
-
-# Transform an extracted symbol line into symbol name and symbol address
-lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
-
-# Define system-specific variables.
-case $host_os in
-aix*)
- symcode='[[BCDT]]'
- ;;
-cygwin* | mingw* | pw32*)
- symcode='[[ABCDGISTW]]'
- ;;
-hpux*) # Its linker distinguishes data from code symbols
- lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
- lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
- ;;
-irix*)
- symcode='[[BCDEGRST]]'
- ;;
-solaris* | sysv5*)
- symcode='[[BDT]]'
- ;;
-sysv4)
- symcode='[[DFNSTU]]'
- ;;
-esac
-
-# Handle CRLF in mingw tool chain
-opt_cr=
-case $host_os in
-mingw*)
- opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
- ;;
-esac
-
-# If we're using GNU nm, then use its standard symbol codes.
-if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
- symcode='[[ABCDGISTW]]'
-fi
-
-# Try without a prefix undercore, then with it.
-for ac_symprfx in "" "_"; do
-
- # Write the raw and C identifiers.
-lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
-
- # Check to see that the pipe works correctly.
- pipe_works=no
- rm -f conftest*
- cat > conftest.$ac_ext <<EOF
-#ifdef __cplusplus
-extern "C" {
-#endif
-char nm_test_var;
-void nm_test_func(){}
-#ifdef __cplusplus
-}
-#endif
-int main(){nm_test_var='a';nm_test_func();return(0);}
-EOF
-
- if AC_TRY_EVAL(ac_compile); then
- # Now try to grab the symbols.
- nlist=conftest.nm
- if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
- # Try sorting and uniquifying the output.
- if sort "$nlist" | uniq > "$nlist"T; then
- mv -f "$nlist"T "$nlist"
- else
- rm -f "$nlist"T
- fi
-
- # Make sure that we snagged all the symbols we need.
- if egrep ' nm_test_var$' "$nlist" >/dev/null; then
- if egrep ' nm_test_func$' "$nlist" >/dev/null; then
- cat <<EOF > conftest.$ac_ext
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-EOF
- # Now generate the symbol file.
- eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext'
-
- cat <<EOF >> conftest.$ac_ext
-#if defined (__STDC__) && __STDC__
-# define lt_ptr void *
-#else
-# define lt_ptr char *
-# define const
-#endif
-
-/* The mapping between symbol names and symbols. */
-const struct {
- const char *name;
- lt_ptr address;
-}
-lt_preloaded_symbols[[]] =
-{
-EOF
- sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext
- cat <<\EOF >> conftest.$ac_ext
- {0, (lt_ptr) 0}
-};
-
-#ifdef __cplusplus
-}
-#endif
-EOF
- # Now try linking the two files.
- mv conftest.$ac_objext conftstm.$ac_objext
- save_LIBS="$LIBS"
- save_CFLAGS="$CFLAGS"
- LIBS="conftstm.$ac_objext"
- CFLAGS="$CFLAGS$no_builtin_flag"
- if AC_TRY_EVAL(ac_link) && test -s conftest; then
- pipe_works=yes
- fi
- LIBS="$save_LIBS"
- CFLAGS="$save_CFLAGS"
- else
- echo "cannot find nm_test_func in $nlist" >&AC_FD_CC
- fi
- else
- echo "cannot find nm_test_var in $nlist" >&AC_FD_CC
- fi
- else
- echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AC_FD_CC
- fi
- else
- echo "$progname: failed program was:" >&AC_FD_CC
- cat conftest.$ac_ext >&5
- fi
- rm -f conftest* conftst*
-
- # Do not use the global_symbol_pipe unless it works.
- if test "$pipe_works" = yes; then
- break
- else
- lt_cv_sys_global_symbol_pipe=
- fi
-done
-])
-global_symbol_pipe="$lt_cv_sys_global_symbol_pipe"
-if test -z "$lt_cv_sys_global_symbol_pipe"; then
- global_symbol_to_cdecl=
- global_symbol_to_c_name_address=
-else
- global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl"
- global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address"
-fi
-if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address";
-then
- AC_MSG_RESULT(failed)
-else
- AC_MSG_RESULT(ok)
-fi
-]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
-
-# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
-# ---------------------------------
-AC_DEFUN([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR],
-[# Find the correct PATH separator. Usually this is `:', but
-# DJGPP uses `;' like DOS.
-if test "X${PATH_SEPARATOR+set}" != Xset; then
- UNAME=${UNAME-`uname 2>/dev/null`}
- case X$UNAME in
- *-DOS) lt_cv_sys_path_separator=';' ;;
- *) lt_cv_sys_path_separator=':' ;;
- esac
- PATH_SEPARATOR=$lt_cv_sys_path_separator
-fi
-])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
-
-# _LT_AC_PROG_ECHO_BACKSLASH
-# --------------------------
-# Add some code to the start of the generated configure script which
-# will find an echo command which doesn't interpret backslashes.
-AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
-[ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
- [AC_DIVERT_PUSH(NOTICE)])
-_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
-
-# Check that we are running under the correct shell.
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-case X$ECHO in
-X*--fallback-echo)
- # Remove one level of quotation (which was required for Make).
- ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
- ;;
-esac
-
-echo=${ECHO-echo}
-if test "X[$]1" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
- shift
-elif test "X[$]1" = X--fallback-echo; then
- # Avoid inline document here, it may be left over
- :
-elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
- # Yippee, $echo works!
- :
-else
- # Restart under the correct shell.
- exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
-fi
-
-if test "X[$]1" = X--fallback-echo; then
- # used as fallback echo
- shift
- cat <<EOF
-$*
-EOF
- exit 0
-fi
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
-
-if test -z "$ECHO"; then
-if test "X${echo_test_string+set}" != Xset; then
-# find a string as large as possible, as long as the shell can cope with it
- for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
- # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
- if (echo_test_string="`eval $cmd`") 2>/dev/null &&
- echo_test_string="`eval $cmd`" &&
- (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
- then
- break
- fi
- done
-fi
-
-if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- :
-else
- # The Solaris, AIX, and Digital Unix default echo programs unquote
- # backslashes. This makes it impossible to quote backslashes using
- # echo "$something" | sed 's/\\/\\\\/g'
- #
- # So, first we look for a working echo in the user's PATH.
-
- IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for dir in $PATH /usr/ucb; do
- if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
- test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- echo="$dir/echo"
- break
- fi
- done
- IFS="$save_ifs"
-
- if test "X$echo" = Xecho; then
- # We didn't find a better echo, so look for alternatives.
- if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- # This shell has a builtin print -r that does the trick.
- echo='print -r'
- elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
- test "X$CONFIG_SHELL" != X/bin/ksh; then
- # If we have ksh, try running configure again with it.
- ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
- export ORIGINAL_CONFIG_SHELL
- CONFIG_SHELL=/bin/ksh
- export CONFIG_SHELL
- exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
- else
- # Try using printf.
- echo='printf %s\n'
- if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- # Cool, printf works
- :
- elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
- test "X$echo_testing_string" = 'X\t' &&
- echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
- export CONFIG_SHELL
- SHELL="$CONFIG_SHELL"
- export SHELL
- echo="$CONFIG_SHELL [$]0 --fallback-echo"
- elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
- test "X$echo_testing_string" = 'X\t' &&
- echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- echo="$CONFIG_SHELL [$]0 --fallback-echo"
- else
- # maybe with a smaller string...
- prev=:
-
- for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
- if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
- then
- break
- fi
- prev="$cmd"
- done
-
- if test "$prev" != 'sed 50q "[$]0"'; then
- echo_test_string=`eval $prev`
- export echo_test_string
- exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
- else
- # Oops. We lost completely, so just stick with echo.
- echo=echo
- fi
- fi
- fi
- fi
-fi
-fi
-
-# Copy echo and quote the copy suitably for passing to libtool from
-# the Makefile, instead of quoting the original, which is used later.
-ECHO=$echo
-if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
- ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
-fi
-
-AC_SUBST(ECHO)
-AC_DIVERT_POP
-])# _LT_AC_PROG_ECHO_BACKSLASH
-
-# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
-# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
-# ------------------------------------------------------------------
-AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
-[if test "$cross_compiling" = yes; then :
- [$4]
-else
- AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<EOF
-[#line __oline__ "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LT_DLGLOBAL RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-# define LT_DLGLOBAL DL_GLOBAL
-# else
-# define LT_DLGLOBAL 0
-# endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
- find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-# ifdef RTLD_LAZY
-# define LT_DLLAZY_OR_NOW RTLD_LAZY
-# else
-# ifdef DL_LAZY
-# define LT_DLLAZY_OR_NOW DL_LAZY
-# else
-# ifdef RTLD_NOW
-# define LT_DLLAZY_OR_NOW RTLD_NOW
-# else
-# ifdef DL_NOW
-# define LT_DLLAZY_OR_NOW DL_NOW
-# else
-# define LT_DLLAZY_OR_NOW 0
-# endif
-# endif
-# endif
-# endif
-#endif
-
-#ifdef __cplusplus
-extern "C" void exit (int);
-#endif
-
-void fnord() { int i=42;}
-int main ()
-{
- void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
- int status = $lt_dlunknown;
-
- if (self)
- {
- if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
- else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
- /* dlclose (self); */
- }
-
- exit (status);
-}]
-EOF
- if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) 2>/dev/null
- lt_status=$?
- case x$lt_status in
- x$lt_dlno_uscore) $1 ;;
- x$lt_dlneed_uscore) $2 ;;
- x$lt_unknown|x*) $3 ;;
- esac
- else :
- # compilation failed
- $3
- fi
-fi
-rm -fr conftest*
-])# _LT_AC_TRY_DLOPEN_SELF
-
-# AC_LIBTOOL_DLOPEN_SELF
-# -------------------
-AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
-[if test "x$enable_dlopen" != xyes; then
- enable_dlopen=unknown
- enable_dlopen_self=unknown
- enable_dlopen_self_static=unknown
-else
- lt_cv_dlopen=no
- lt_cv_dlopen_libs=
-
- case $host_os in
- beos*)
- lt_cv_dlopen="load_add_on"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
- ;;
-
- cygwin* | mingw* | pw32*)
- lt_cv_dlopen="LoadLibrary"
- lt_cv_dlopen_libs=
- ;;
-
- *)
- AC_CHECK_FUNC([shl_load],
- [lt_cv_dlopen="shl_load"],
- [AC_CHECK_LIB([dld], [shl_load],
- [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
- [AC_CHECK_FUNC([dlopen],
- [lt_cv_dlopen="dlopen"],
- [AC_CHECK_LIB([dl], [dlopen],
- [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
- [AC_CHECK_LIB([svld], [dlopen],
- [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
- [AC_CHECK_LIB([dld], [dld_link],
- [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
- ])
- ])
- ])
- ])
- ])
- ;;
- esac
-
- if test "x$lt_cv_dlopen" != xno; then
- enable_dlopen=yes
- else
- enable_dlopen=no
- fi
-
- case $lt_cv_dlopen in
- dlopen)
- save_CPPFLAGS="$CPPFLAGS"
- AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
- test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-
- save_LDFLAGS="$LDFLAGS"
- eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-
- save_LIBS="$LIBS"
- LIBS="$lt_cv_dlopen_libs $LIBS"
-
- AC_CACHE_CHECK([whether a program can dlopen itself],
- lt_cv_dlopen_self, [dnl
- _LT_AC_TRY_DLOPEN_SELF(
- lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
- lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
- ])
-
- if test "x$lt_cv_dlopen_self" = xyes; then
- LDFLAGS="$LDFLAGS $link_static_flag"
- AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
- lt_cv_dlopen_self_static, [dnl
- _LT_AC_TRY_DLOPEN_SELF(
- lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
- lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
- ])
- fi
-
- CPPFLAGS="$save_CPPFLAGS"
- LDFLAGS="$save_LDFLAGS"
- LIBS="$save_LIBS"
- ;;
- esac
-
- case $lt_cv_dlopen_self in
- yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
- *) enable_dlopen_self=unknown ;;
- esac
-
- case $lt_cv_dlopen_self_static in
- yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
- *) enable_dlopen_self_static=unknown ;;
- esac
-fi
-])# AC_LIBTOOL_DLOPEN_SELF
-
-AC_DEFUN([_LT_AC_LTCONFIG_HACK],
-[AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl
-# Sed substitution that helps us do robust quoting. It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed='sed -e s/^X//'
-sed_quote_subst='s/\([[\\"\\`$\\\\]]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\([[\\"\\`\\\\]]\)/\\\1/g'
-
-# Sed substitution to delay expansion of an escaped shell variable in a
-# double_quote_subst'ed string.
-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-
-# Constants:
-rm="rm -f"
-
-# Global variables:
-default_ofile=libtool
-can_build_shared=yes
-
-# All known linkers require a `.a' archive for static linking (except M$VC,
-# which needs '.lib').
-libext=a
-ltmain="$ac_aux_dir/ltmain.sh"
-ofile="$default_ofile"
-with_gnu_ld="$lt_cv_prog_gnu_ld"
-need_locks="$enable_libtool_lock"
-
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
-
-# Set sane defaults for various variables
-test -z "$AR" && AR=ar
-test -z "$AR_FLAGS" && AR_FLAGS=cru
-test -z "$AS" && AS=as
-test -z "$CC" && CC=cc
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-test -z "$LD" && LD=ld
-test -z "$LN_S" && LN_S="ln -s"
-test -z "$MAGIC_CMD" && MAGIC_CMD=file
-test -z "$NM" && NM=nm
-test -z "$OBJDUMP" && OBJDUMP=objdump
-test -z "$RANLIB" && RANLIB=:
-test -z "$STRIP" && STRIP=:
-test -z "$ac_objext" && ac_objext=o
-
-if test x"$host" != x"$build"; then
- ac_tool_prefix=${host_alias}-
-else
- ac_tool_prefix=
-fi
-
-# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
-case $host_os in
-linux-gnu*) ;;
-linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
esac
-
-case $host_os in
-aix3*)
- # AIX sometimes has problems with the GCC collect2 program. For some
- # reason, if we set the COLLECT_NAMES environment variable, the problems
- # vanish in a puff of smoke.
- if test "X${COLLECT_NAMES+set}" != Xset; then
- COLLECT_NAMES=
- export COLLECT_NAMES
- fi
- ;;
-esac
-
-# Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
-old_postinstall_cmds='chmod 644 $oldlib'
-old_postuninstall_cmds=
-
-if test -n "$RANLIB"; then
- case $host_os in
- openbsd*)
- old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
- ;;
- *)
- old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
- ;;
- esac
- old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-fi
-
-# Allow CC to be a program name with arguments.
-set dummy $CC
-compiler="[$]2"
-
-## FIXME: this should be a separate macro
-##
-AC_MSG_CHECKING([for objdir])
-rm -f .libs 2>/dev/null
-mkdir .libs 2>/dev/null
-if test -d .libs; then
- objdir=.libs
-else
- # MS-DOS does not allow filenames that begin with a dot.
- objdir=_libs
-fi
-rmdir .libs 2>/dev/null
-AC_MSG_RESULT($objdir)
-##
-## END FIXME
-
-
-## FIXME: this should be a separate macro
-##
-AC_ARG_WITH(pic,
-[ --with-pic try to use only PIC/non-PIC objects [default=use both]],
-pic_mode="$withval", pic_mode=default)
-test -z "$pic_mode" && pic_mode=default
-
-# We assume here that the value for lt_cv_prog_cc_pic will not be cached
-# in isolation, and that seeing it set (from the cache) indicates that
-# the associated values are set (in the cache) correctly too.
-AC_MSG_CHECKING([for $compiler option to produce PIC])
-AC_CACHE_VAL(lt_cv_prog_cc_pic,
-[ lt_cv_prog_cc_pic=
- lt_cv_prog_cc_shlib=
- lt_cv_prog_cc_wl=
- lt_cv_prog_cc_static=
- lt_cv_prog_cc_no_builtin=
- lt_cv_prog_cc_can_build_shared=$can_build_shared
-
- if test "$GCC" = yes; then
- lt_cv_prog_cc_wl='-Wl,'
- lt_cv_prog_cc_static='-static'
-
- case $host_os in
- aix*)
- # Below there is a dirty hack to force normal static linking with -ldl
- # The problem is because libdl dynamically linked with both libc and
- # libC (AIX C++ library), which obviously doesn't included in libraries
- # list by gcc. This cause undefined symbols with -static flags.
- # This hack allows C programs to be linked with "-static -ldl", but
- # not sure about C++ programs.
- lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC"
- ;;
- amigaos*)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the `-m68020' flag to GCC prevents building anything better,
- # like `-m68040'.
- lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
- ;;
- beos* | irix5* | irix6* | osf3* | osf4* | osf5*)
- # PIC is the default for these OSes.
- ;;
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- lt_cv_prog_cc_pic='-fno-common'
- ;;
- cygwin* | mingw* | pw32* | os2*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- lt_cv_prog_cc_pic='-DDLL_EXPORT'
- ;;
- sysv4*MP*)
- if test -d /usr/nec; then
- lt_cv_prog_cc_pic=-Kconform_pic
- fi
- ;;
- *)
- lt_cv_prog_cc_pic='-fPIC'
- ;;
- esac
- else
- # PORTME Check for PIC flags for the system compiler.
- case $host_os in
- aix3* | aix4* | aix5*)
- lt_cv_prog_cc_wl='-Wl,'
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- lt_cv_prog_cc_static='-Bstatic'
- else
- lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp'
- fi
- ;;
-
- hpux9* | hpux10* | hpux11*)
- # Is there a better lt_cv_prog_cc_static that works with the bundled CC?
- lt_cv_prog_cc_wl='-Wl,'
- lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive"
- lt_cv_prog_cc_pic='+Z'
- ;;
-
- irix5* | irix6*)
- lt_cv_prog_cc_wl='-Wl,'
- lt_cv_prog_cc_static='-non_shared'
- # PIC (with -KPIC) is the default.
- ;;
-
- cygwin* | mingw* | pw32* | os2*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- lt_cv_prog_cc_pic='-DDLL_EXPORT'
- ;;
-
- newsos6)
- lt_cv_prog_cc_pic='-KPIC'
- lt_cv_prog_cc_static='-Bstatic'
- ;;
-
- osf3* | osf4* | osf5*)
- # All OSF/1 code is PIC.
- lt_cv_prog_cc_wl='-Wl,'
- lt_cv_prog_cc_static='-non_shared'
- ;;
-
- sco3.2v5*)
- lt_cv_prog_cc_pic='-Kpic'
- lt_cv_prog_cc_static='-dn'
- lt_cv_prog_cc_shlib='-belf'
- ;;
-
- solaris*)
- lt_cv_prog_cc_pic='-KPIC'
- lt_cv_prog_cc_static='-Bstatic'
- lt_cv_prog_cc_wl='-Wl,'
- ;;
-
- sunos4*)
- lt_cv_prog_cc_pic='-PIC'
- lt_cv_prog_cc_static='-Bstatic'
- lt_cv_prog_cc_wl='-Qoption ld '
- ;;
-
- sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
- lt_cv_prog_cc_pic='-KPIC'
- lt_cv_prog_cc_static='-Bstatic'
- if test "x$host_vendor" = xsni; then
- lt_cv_prog_cc_wl='-LD'
- else
- lt_cv_prog_cc_wl='-Wl,'
- fi
- ;;
-
- uts4*)
- lt_cv_prog_cc_pic='-pic'
- lt_cv_prog_cc_static='-Bstatic'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec ;then
- lt_cv_prog_cc_pic='-Kconform_pic'
- lt_cv_prog_cc_static='-Bstatic'
- fi
- ;;
-
- *)
- lt_cv_prog_cc_can_build_shared=no
- ;;
- esac
- fi
-])
-if test -z "$lt_cv_prog_cc_pic"; then
- AC_MSG_RESULT([none])
-else
- AC_MSG_RESULT([$lt_cv_prog_cc_pic])
-
- # Check to make sure the pic_flag actually works.
- AC_MSG_CHECKING([if $compiler PIC flag $lt_cv_prog_cc_pic works])
- AC_CACHE_VAL(lt_cv_prog_cc_pic_works, [dnl
- save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC"
- AC_TRY_COMPILE([], [], [dnl
- case $host_os in
- hpux9* | hpux10* | hpux11*)
- # On HP-UX, both CC and GCC only warn that PIC is supported... then
- # they create non-PIC objects. So, if there were any warnings, we
- # assume that PIC is not supported.
- if test -s conftest.err; then
- lt_cv_prog_cc_pic_works=no
- else
- lt_cv_prog_cc_pic_works=yes
- fi
- ;;
- *)
- lt_cv_prog_cc_pic_works=yes
- ;;
- esac
- ], [dnl
- lt_cv_prog_cc_pic_works=no
- ])
- CFLAGS="$save_CFLAGS"
- ])
-
- if test "X$lt_cv_prog_cc_pic_works" = Xno; then
- lt_cv_prog_cc_pic=
- lt_cv_prog_cc_can_build_shared=no
- else
- lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic"
- fi
-
- AC_MSG_RESULT([$lt_cv_prog_cc_pic_works])
-fi
-##
-## END FIXME
-
-# Check for any special shared library compilation flags.
-if test -n "$lt_cv_prog_cc_shlib"; then
- AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries])
- if echo "$old_CC $old_CFLAGS " | egrep -e "[[ ]]$lt_cv_prog_cc_shlib[[ ]]" >/dev/null; then :
- else
- AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure])
- lt_cv_prog_cc_can_build_shared=no
- fi
-fi
-
-## FIXME: this should be a separate macro
-##
-AC_MSG_CHECKING([if $compiler static flag $lt_cv_prog_cc_static works])
-AC_CACHE_VAL([lt_cv_prog_cc_static_works], [dnl
- lt_cv_prog_cc_static_works=no
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static"
- AC_TRY_LINK([], [], [lt_cv_prog_cc_static_works=yes])
- LDFLAGS="$save_LDFLAGS"
])
-# Belt *and* braces to stop my trousers falling down:
-test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static=
-AC_MSG_RESULT([$lt_cv_prog_cc_static_works])
-
-pic_flag="$lt_cv_prog_cc_pic"
-special_shlib_compile_flags="$lt_cv_prog_cc_shlib"
-wl="$lt_cv_prog_cc_wl"
-link_static_flag="$lt_cv_prog_cc_static"
-no_builtin_flag="$lt_cv_prog_cc_no_builtin"
-can_build_shared="$lt_cv_prog_cc_can_build_shared"
-##
-## END FIXME
-
-
-## FIXME: this should be a separate macro
-##
-# Check to see if options -o and -c are simultaneously supported by compiler
-AC_MSG_CHECKING([if $compiler supports -c -o file.$ac_objext])
-AC_CACHE_VAL([lt_cv_compiler_c_o], [
-$rm -r conftest 2>/dev/null
-mkdir conftest
-cd conftest
-echo "int some_variable = 0;" > conftest.$ac_ext
-mkdir out
-# According to Tom Tromey, Ian Lance Taylor reported there are C compilers
-# that will create temporary files in the current directory regardless of
-# the output directory. Thus, making CWD read-only will cause this test
-# to fail, enabling locking or at least warning the user not to do parallel
-# builds.
-chmod -w .
-save_CFLAGS="$CFLAGS"
-CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
-compiler_c_o=no
-if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s out/conftest.err; then
- lt_cv_compiler_c_o=no
- else
- lt_cv_compiler_c_o=yes
- fi
-else
- # Append any errors to the config.log.
- cat out/conftest.err 1>&AC_FD_CC
- lt_cv_compiler_c_o=no
-fi
-CFLAGS="$save_CFLAGS"
-chmod u+w .
-$rm conftest* out/*
-rmdir out
-cd ..
-rmdir conftest
-$rm -r conftest 2>/dev/null
-])
-compiler_c_o=$lt_cv_compiler_c_o
-AC_MSG_RESULT([$compiler_c_o])
-
-if test x"$compiler_c_o" = x"yes"; then
- # Check to see if we can write to a .lo
- AC_MSG_CHECKING([if $compiler supports -c -o file.lo])
- AC_CACHE_VAL([lt_cv_compiler_o_lo], [
- lt_cv_compiler_o_lo=no
- save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -c -o conftest.lo"
- save_objext="$ac_objext"
- ac_objext=lo
- AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- lt_cv_compiler_o_lo=no
- else
- lt_cv_compiler_o_lo=yes
- fi
- ])
- ac_objext="$save_objext"
- CFLAGS="$save_CFLAGS"
- ])
- compiler_o_lo=$lt_cv_compiler_o_lo
- AC_MSG_RESULT([$compiler_o_lo])
-else
- compiler_o_lo=no
-fi
-##
-## END FIXME
-
-## FIXME: this should be a separate macro
-##
-# Check to see if we can do hard links to lock some files if needed
-hard_links="nottested"
-if test "$compiler_c_o" = no && test "$need_locks" != no; then
- # do not overwrite the value of need_locks provided by the user
- AC_MSG_CHECKING([if we can lock with hard links])
- hard_links=yes
- $rm conftest*
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- touch conftest.a
- ln conftest.a conftest.b 2>&5 || hard_links=no
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- AC_MSG_RESULT([$hard_links])
- if test "$hard_links" = no; then
- AC_MSG_WARN([\`$CC' does not support \`-c -o', so \`make -j' may be unsafe])
- need_locks=warn
- fi
-else
- need_locks=no
-fi
-##
-## END FIXME
-
-## FIXME: this should be a separate macro
-##
-if test "$GCC" = yes; then
- # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
- AC_MSG_CHECKING([if $compiler supports -fno-rtti -fno-exceptions])
- echo "int some_variable = 0;" > conftest.$ac_ext
- save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext"
- compiler_rtti_exceptions=no
- AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- compiler_rtti_exceptions=no
- else
- compiler_rtti_exceptions=yes
- fi
- ])
- CFLAGS="$save_CFLAGS"
- AC_MSG_RESULT([$compiler_rtti_exceptions])
-
- if test "$compiler_rtti_exceptions" = "yes"; then
- no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
- else
- no_builtin_flag=' -fno-builtin'
- fi
-fi
-##
-## END FIXME
-
-## FIXME: this should be a separate macro
-##
-# See if the linker supports building shared libraries.
-AC_MSG_CHECKING([whether the linker ($LD) supports shared libraries])
-
-allow_undefined_flag=
-no_undefined_flag=
-need_lib_prefix=unknown
-need_version=unknown
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-archive_cmds=
-archive_expsym_cmds=
-old_archive_from_new_cmds=
-old_archive_from_expsyms_cmds=
-export_dynamic_flag_spec=
-whole_archive_flag_spec=
-thread_safe_flag_spec=
-hardcode_into_libs=no
-hardcode_libdir_flag_spec=
-hardcode_libdir_separator=
-hardcode_direct=no
-hardcode_minus_L=no
-hardcode_shlibpath_var=unsupported
-runpath_var=
-link_all_deplibs=unknown
-always_export_symbols=no
-export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
-# include_expsyms should be a list of space-separated symbols to be *always*
-# included in the symbol list
-include_expsyms=
-# exclude_expsyms can be an egrep regular expression of symbols to exclude
-# it will be wrapped by ` (' and `)$', so one must not match beginning or
-# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-# as well as any symbol that contains `d'.
-exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
-# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
-# platforms (ab)use it in PIC code, but their linkers get confused if
-# the symbol is explicitly referenced. Since portable code cannot
-# rely on this symbol name, it's probably fine to never include it in
-# preloaded symbol tables.
-extract_expsyms_cmds=
-
-case $host_os in
-cygwin* | mingw* | pw32*)
- # FIXME: the MSVC++ port hasn't been tested in a loooong time
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- if test "$GCC" != yes; then
- with_gnu_ld=no
- fi
- ;;
-openbsd*)
- with_gnu_ld=no
- ;;
-esac
-
-ld_shlibs=yes
-if test "$with_gnu_ld" = yes; then
- # If archive_cmds runs LD, not CC, wlarc should be empty
- wlarc='${wl}'
-
- # See if GNU ld supports shared libraries.
- case $host_os in
- aix3* | aix4* | aix5*)
- # On AIX, the GNU linker is very broken
- # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available.
- ld_shlibs=no
- cat <<EOF 1>&2
-
-*** Warning: the GNU linker, at least up to release 2.9.1, is reported
-*** to be unable to reliably create shared libraries on AIX.
-*** Therefore, libtool is disabling shared libraries support. If you
-*** really care for shared libraries, you may want to modify your PATH
-*** so that a non-GNU linker is found, and then restart.
-
-EOF
- ;;
-
- amigaos*)
- archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
-
- # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
- # that the semantics of dynamic libraries on AmigaOS, at least up
- # to version 4, is to share data among multiple programs linked
- # with the same dynamic library. Since this doesn't match the
- # behavior of shared libraries on other platforms, we can use
- # them.
- ld_shlibs=no
- ;;
-
- beos*)
- if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
- allow_undefined_flag=unsupported
- # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
-
- cygwin* | mingw* | pw32*)
- # hardcode_libdir_flag_spec is actually meaningless, as there is
- # no search path for DLLs.
- hardcode_libdir_flag_spec='-L$libdir'
- allow_undefined_flag=unsupported
- always_export_symbols=yes
-
- extract_expsyms_cmds='test -f $output_objdir/impgen.c || \
- sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~
- test -f $output_objdir/impgen.exe || (cd $output_objdir && \
- if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \
- else $CC -o impgen impgen.c ; fi)~
- $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def'
-
- old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib'
-
- # cygwin and mingw dlls have different entry points and sets of symbols
- # to exclude.
- # FIXME: what about values for MSVC?
- dll_entry=__cygwin_dll_entry@12
- dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~
- case $host_os in
- mingw*)
- # mingw values
- dll_entry=_DllMainCRTStartup@12
- dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~
- ;;
- esac
-
- # mingw and cygwin differ, and it's simplest to just exclude the union
- # of the two symbol sets.
- dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12
-
- # recent cygwin and mingw systems supply a stub DllMain which the user
- # can override, but on older systems we have to supply one (in ltdll.c)
- if test "x$lt_cv_need_dllmain" = "xyes"; then
- ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext "
- ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~
- test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~'
- else
- ltdll_obj=
- ltdll_cmds=
- fi
-
- # Extract the symbol export list from an `--export-all' def file,
- # then regenerate the def file from the symbol export list, so that
- # the compiled dll only exports the symbol export list.
- # Be careful not to strip the DATA tag left be newer dlltools.
- export_symbols_cmds="$ltdll_cmds"'
- $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
- sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols'
-
- # If the export-symbols file already is a .def file (1st line
- # is EXPORTS), use it as is.
- # If DATA tags from a recent dlltool are present, honour them!
- archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then
- cp $export_symbols $output_objdir/$soname-def;
- else
- echo EXPORTS > $output_objdir/$soname-def;
- _lt_hint=1;
- cat $export_symbols | while read symbol; do
- set dummy \$symbol;
- case \[$]# in
- 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
- *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
- esac;
- _lt_hint=`expr 1 + \$_lt_hint`;
- done;
- fi~
- '"$ltdll_cmds"'
- $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
- $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~
- $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
- $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~
- $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags'
- ;;
-
- netbsd*)
- if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
- archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
- wlarc=
- else
- archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- fi
- ;;
-
- solaris* | sysv5*)
- if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
- ld_shlibs=no
- cat <<EOF 1>&2
-
-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-*** create shared libraries on Solaris systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.9.1 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-EOF
- elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
-
- sunos4*)
- archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- wlarc=
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- *)
- if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
- esac
-
- if test "$ld_shlibs" = yes; then
- runpath_var=LD_RUN_PATH
- hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
- export_dynamic_flag_spec='${wl}--export-dynamic'
- case $host_os in
- cygwin* | mingw* | pw32*)
- # dlltool doesn't understand --whole-archive et. al.
- whole_archive_flag_spec=
- ;;
- *)
- # ancient GNU ld didn't support --whole-archive et. al.
- if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
- whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- else
- whole_archive_flag_spec=
- fi
- ;;
- esac
- fi
-else
- # PORTME fill in a description of your system's linker (not GNU ld)
- case $host_os in
- aix3*)
- allow_undefined_flag=unsupported
- always_export_symbols=yes
- archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
- # Note: this linker hardcodes the directories in LIBPATH if there
- # are no directories specified by -L.
- hardcode_minus_L=yes
- if test "$GCC" = yes && test -z "$link_static_flag"; then
- # Neither direct hardcoding nor static linking is supported with a
- # broken collect2.
- hardcode_direct=unsupported
- fi
- ;;
-
- aix4* | aix5*)
- if test "$host_cpu" = ia64; then
- # On IA64, the linker does run time linking by default, so we don't
- # have to do anything special.
- aix_use_runtimelinking=no
- exp_sym_flag='-Bexport'
- no_entry_flag=""
- else
- aix_use_runtimelinking=no
-
- # Test if we are trying to use run time linking or normal
- # AIX style linking. If -brtl is somewhere in LDFLAGS, we
- # need to do runtime linking.
- case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
- for ld_flag in $LDFLAGS; do
- if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
- aix_use_runtimelinking=yes
- break
- fi
- done
- esac
-
- exp_sym_flag='-bexport'
- no_entry_flag='-bnoentry'
- fi
-
- # When large executables or shared objects are built, AIX ld can
- # have problems creating the table of contents. If linking a library
- # or program results in "error TOC overflow" add -mminimal-toc to
- # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
- # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
- hardcode_direct=yes
- archive_cmds=''
- hardcode_libdir_separator=':'
- if test "$GCC" = yes; then
- case $host_os in aix4.[[012]]|aix4.[[012]].*)
- collect2name=`${CC} -print-prog-name=collect2`
- if test -f "$collect2name" && \
- strings "$collect2name" | grep resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- hardcode_direct=yes
- else
- # We have old collect2
- hardcode_direct=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- hardcode_minus_L=yes
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_libdir_separator=
- fi
- esac
-
- shared_flag='-shared'
- else
- # not using gcc
- if test "$host_cpu" = ia64; then
- shared_flag='${wl}-G'
- else
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag='${wl}-G'
- else
- shared_flag='${wl}-bM:SRE'
- fi
- fi
- fi
-
- # It seems that -bexpall can do strange things, so it is better to
- # generate a list of symbols to export.
- always_export_symbols=yes
- if test "$aix_use_runtimelinking" = yes; then
- # Warning - without using the other runtime loading flags (-brtl),
- # -berok will link without error, but may produce a broken library.
- allow_undefined_flag='-berok'
- hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
- archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
- else
- if test "$host_cpu" = ia64; then
- hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
- allow_undefined_flag="-z nodefs"
- archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
- else
- hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
- # Warning - without using the other run time loading flags,
- # -berok will link without error, but may produce a broken library.
- allow_undefined_flag='${wl}-berok'
- # This is a bit strange, but is similar to how AIX traditionally builds
- # it's shared libraries.
- archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname'
- fi
- fi
- ;;
-
- amigaos*)
- archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- # see comment about different semantics on the GNU ld section
- ld_shlibs=no
- ;;
-
- cygwin* | mingw* | pw32*)
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- # hardcode_libdir_flag_spec is actually meaningless, as there is
- # no search path for DLLs.
- hardcode_libdir_flag_spec=' '
- allow_undefined_flag=unsupported
- # Tell ltmain to make .lib files, not .a files.
- libext=lib
- # FIXME: Setting linknames here is a bad hack.
- archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
- # The linker will automatically build a .lib file if we build a DLL.
- old_archive_from_new_cmds='true'
- # FIXME: Should let the user specify the lib program.
- old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs'
- fix_srcfile_path='`cygpath -w "$srcfile"`'
- ;;
-
- darwin* | rhapsody*)
- case "$host_os" in
- rhapsody* | darwin1.[[012]])
- allow_undefined_flag='-undefined suppress'
- ;;
- *) # Darwin 1.3 on
- allow_undefined_flag='-flat_namespace -undefined suppress'
- ;;
- esac
- # FIXME: Relying on posixy $() will cause problems for
- # cross-compilation, but unfortunately the echo tests do not
- # yet detect zsh echo's removal of \ escapes.
- archive_cmds='$nonopt $(test "x$module" = xyes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags -install_name $rpath/$soname $verstring'
- # We need to add '_' to the symbols in $export_symbols first
- #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- whole_archive_flag_spec='-all_load $convenience'
- ;;
-
- freebsd1*)
- ld_shlibs=no
- ;;
-
- # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
- # support. Future versions do this automatically, but an explicit c++rt0.o
- # does not break anything, and helps significantly (at the cost of a little
- # extra space).
- freebsd2.2*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- # Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=yes
- hardcode_minus_L=yes
- hardcode_shlibpath_var=no
- ;;
-
- # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
- freebsd*)
- archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- hpux9* | hpux10* | hpux11*)
- case $host_os in
- hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;;
- *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;;
- esac
- hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator=:
- hardcode_direct=yes
- hardcode_minus_L=yes # Not in the search PATH, but as the default
- # location of the library.
- export_dynamic_flag_spec='${wl}-E'
- ;;
-
- irix5* | irix6*)
- if test "$GCC" = yes; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- else
- archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
- fi
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- link_all_deplibs=yes
- ;;
-
- netbsd*)
- if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
- else
- archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
- fi
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- newsos6)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=yes
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- hardcode_shlibpath_var=no
- ;;
-
- openbsd*)
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
- export_dynamic_flag_spec='${wl}-E'
- else
- case "$host_os" in
- openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='-R$libdir'
- ;;
- *)
- archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
- ;;
- esac
- fi
- ;;
-
- os2*)
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- allow_undefined_flag=unsupported
- archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
- old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
- ;;
-
- osf3*)
- if test "$GCC" = yes; then
- allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- else
- allow_undefined_flag=' -expect_unresolved \*'
- archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
- fi
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- ;;
-
- osf4* | osf5*) # as osf3* with the addition of -msym flag
- if test "$GCC" = yes; then
- allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- else
- allow_undefined_flag=' -expect_unresolved \*'
- archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
- archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
- $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
-
- #Both c and cxx compiler support -rpath directly
- hardcode_libdir_flag_spec='-rpath $libdir'
- fi
- hardcode_libdir_separator=:
- ;;
-
- sco3.2v5*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_shlibpath_var=no
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- export_dynamic_flag_spec='${wl}-Bexport'
- ;;
-
- solaris*)
- # gcc --version < 3.0 without binutils cannot create self contained
- # shared libraries reliably, requiring libgcc.a to resolve some of
- # the object symbols generated in some cases. Libraries that use
- # assert need libgcc.a to resolve __eprintf, for example. Linking
- # a copy of libgcc.a into every shared library to guarantee resolving
- # such symbols causes other problems: According to Tim Van Holder
- # <tim.van.holder@pandora.be>, C++ libraries end up with a separate
- # (to the application) exception stack for one thing.
- no_undefined_flag=' -z defs'
- if test "$GCC" = yes; then
- case `$CC --version 2>/dev/null` in
- [[12]].*)
- cat <<EOF 1>&2
-
-*** Warning: Releases of GCC earlier than version 3.0 cannot reliably
-*** create self contained shared libraries on Solaris systems, without
-*** introducing a dependency on libgcc.a. Therefore, libtool is disabling
-*** -no-undefined support, which will at least allow you to build shared
-*** libraries. However, you may find that when you link such libraries
-*** into an application without using GCC, you have to manually add
-*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to
-*** upgrade to a newer version of GCC. Another option is to rebuild your
-*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer.
-
-EOF
- no_undefined_flag=
- ;;
- esac
- fi
- # $CC -shared without GNU ld will not create a library from C++
- # object files and a static libstdc++, better avoid it by now
- archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
- archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
- $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_shlibpath_var=no
- case $host_os in
- solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
- *) # Supported since Solaris 2.6 (maybe 2.5.1?)
- whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
- esac
- link_all_deplibs=yes
- ;;
-
- sunos4*)
- if test "x$host_vendor" = xsequent; then
- # Use $CC to link under sequent, because it throws in some extra .o
- # files that make .init and .fini sections work.
- archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
- fi
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_direct=yes
- hardcode_minus_L=yes
- hardcode_shlibpath_var=no
- ;;
-
- sysv4)
- if test "x$host_vendor" = xsno; then
- archive_cmds='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=yes # is this really true???
- else
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=no #Motorola manual says yes, but my tests say they lie
- fi
- runpath_var='LD_RUN_PATH'
- hardcode_shlibpath_var=no
- ;;
-
- sysv4.3*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_shlibpath_var=no
- export_dynamic_flag_spec='-Bexport'
- ;;
-
- sysv5*)
- no_undefined_flag=' -z text'
- # $CC -shared without GNU ld will not create a library from C++
- # object files and a static libstdc++, better avoid it by now
- archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
- archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
- $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
- hardcode_libdir_flag_spec=
- hardcode_shlibpath_var=no
- runpath_var='LD_RUN_PATH'
- ;;
-
- uts4*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_shlibpath_var=no
- ;;
-
- dgux*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_shlibpath_var=no
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_shlibpath_var=no
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- ld_shlibs=yes
- fi
- ;;
-
- sysv4.2uw2*)
- archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=yes
- hardcode_minus_L=no
- hardcode_shlibpath_var=no
- hardcode_runpath_var=yes
- runpath_var=LD_RUN_PATH
- ;;
-
- sysv5uw7* | unixware7*)
- no_undefined_flag='${wl}-z ${wl}text'
- if test "$GCC" = yes; then
- archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- fi
- runpath_var='LD_RUN_PATH'
- hardcode_shlibpath_var=no
- ;;
-
- *)
- ld_shlibs=no
- ;;
- esac
-fi
-AC_MSG_RESULT([$ld_shlibs])
-test "$ld_shlibs" = no && can_build_shared=no
-##
-## END FIXME
-
-## FIXME: this should be a separate macro
-##
-# Check hardcoding attributes.
-AC_MSG_CHECKING([how to hardcode library paths into programs])
-hardcode_action=
-if test -n "$hardcode_libdir_flag_spec" || \
- test -n "$runpath_var"; then
-
- # We can hardcode non-existant directories.
- if test "$hardcode_direct" != no &&
- # If the only mechanism to avoid hardcoding is shlibpath_var, we
- # have to relink, otherwise we might link with an installed library
- # when we should be linking with a yet-to-be-installed one
- ## test "$hardcode_shlibpath_var" != no &&
- test "$hardcode_minus_L" != no; then
- # Linking always hardcodes the temporary library directory.
- hardcode_action=relink
- else
- # We can link without hardcoding, and we can hardcode nonexisting dirs.
- hardcode_action=immediate
- fi
-else
- # We cannot hardcode anything, or else we can only hardcode existing
- # directories.
- hardcode_action=unsupported
-fi
-AC_MSG_RESULT([$hardcode_action])
-##
-## END FIXME
-
-## FIXME: this should be a separate macro
-##
-striplib=
-old_striplib=
-AC_MSG_CHECKING([whether stripping libraries is possible])
-if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
- test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
- test -z "$striplib" && striplib="$STRIP --strip-unneeded"
- AC_MSG_RESULT([yes])
-else
- AC_MSG_RESULT([no])
-fi
-##
-## END FIXME
-
-reload_cmds='$LD$reload_flag -o $output$reload_objs'
-test -z "$deplibs_check_method" && deplibs_check_method=unknown
-
-## FIXME: this should be a separate macro
-##
-# PORTME Fill in your ld.so characteristics
-AC_MSG_CHECKING([dynamic linker characteristics])
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-
-case $host_os in
-aix3*)
- version_type=linux
- library_names_spec='${libname}${release}.so$versuffix $libname.a'
- shlibpath_var=LIBPATH
-
- # AIX has no versioning support, so we append a major version to the name.
- soname_spec='${libname}${release}.so$major'
- ;;
-
-aix4* | aix5*)
- version_type=linux
- if test "$host_cpu" = ia64; then
- # AIX 5 supports IA64
- library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
- shlibpath_var=LD_LIBRARY_PATH
- else
- # With GCC up to 2.95.x, collect2 would create an import file
- # for dependence libraries. The import file would start with
- # the line `#! .'. This would cause the generated library to
- # depend on `.', always an invalid library. This was fixed in
- # development snapshots of GCC prior to 3.0.
- case $host_os in
- aix4 | aix4.[[01]] | aix4.[[01]].*)
- if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
- echo ' yes '
- echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
- :
- else
- can_build_shared=no
- fi
- ;;
- esac
- # AIX (on Power*) has no versioning support, so currently we can
- # not hardcode correct soname into executable. Probably we can
- # add versioning support to collect2, so additional links can
- # be useful in future.
- if test "$aix_use_runtimelinking" = yes; then
- # If using run time linking (on AIX 4.2 or later) use lib<name>.so
- # instead of lib<name>.a to let people know that these are not
- # typical AIX shared libraries.
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- else
- # We preserve .a as extension for shared libraries through AIX4.2
- # and later when we are not doing run time linking.
- library_names_spec='${libname}${release}.a $libname.a'
- soname_spec='${libname}${release}.so$major'
- fi
- shlibpath_var=LIBPATH
- fi
- ;;
-
-amigaos*)
- library_names_spec='$libname.ixlibrary $libname.a'
- # Create ${libname}_ixlibrary.a entries in /sys/libs.
- finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
- ;;
-
-beos*)
- library_names_spec='${libname}.so'
- dynamic_linker="$host_os ld.so"
- shlibpath_var=LIBRARY_PATH
- ;;
-
-bsdi4*)
- version_type=linux
- need_version=no
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- soname_spec='${libname}${release}.so$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
- sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
- export_dynamic_flag_spec=-rdynamic
- # the default ld.so.conf also contains /usr/contrib/lib and
- # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
- # libtool to hard-code these into programs
- ;;
-
-cygwin* | mingw* | pw32*)
- version_type=windows
- need_version=no
- need_lib_prefix=no
- case $GCC,$host_os in
- yes,cygwin*)
- library_names_spec='$libname.dll.a'
- soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
- postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~
- dldir=$destdir/`dirname \$dlpath`~
- test -d \$dldir || mkdir -p \$dldir~
- $install_prog .libs/$dlname \$dldir/$dlname'
- postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~
- dlpath=$dir/\$dldll~
- $rm \$dlpath'
- ;;
- yes,mingw*)
- library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
- sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
- ;;
- yes,pw32*)
- library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
- ;;
- *)
- library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib'
- ;;
- esac
- dynamic_linker='Win32 ld.exe'
- # FIXME: first we should search . and the directory the executable is in
- shlibpath_var=PATH
- ;;
-
-darwin* | rhapsody*)
- dynamic_linker="$host_os dyld"
- version_type=darwin
- need_lib_prefix=no
- need_version=no
- # FIXME: Relying on posixy $() will cause problems for
- # cross-compilation, but unfortunately the echo tests do not
- # yet detect zsh echo's removal of \ escapes.
- library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)'
- soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)'
- shlibpath_overrides_runpath=yes
- shlibpath_var=DYLD_LIBRARY_PATH
- ;;
-
-freebsd1*)
- dynamic_linker=no
- ;;
-
-freebsd*)
- objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
- version_type=freebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
- need_version=no
- need_lib_prefix=no
- ;;
- freebsd-*)
- library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
- need_version=yes
- ;;
- esac
- shlibpath_var=LD_LIBRARY_PATH
- case $host_os in
- freebsd2*)
- shlibpath_overrides_runpath=yes
- ;;
- *)
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
- esac
- ;;
-
-gnu*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
- soname_spec='${libname}${release}.so$major'
- shlibpath_var=LD_LIBRARY_PATH
- hardcode_into_libs=yes
- ;;
-
-hpux9* | hpux10* | hpux11*)
- # Give a soname corresponding to the major version so that dld.sl refuses to
- # link against other versions.
- dynamic_linker="$host_os dld.sl"
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- shlibpath_var=SHLIB_PATH
- shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
- library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
- soname_spec='${libname}${release}.sl$major'
- # HP-UX runs *really* slowly unless shared libraries are mode 555.
- postinstall_cmds='chmod 555 $lib'
- ;;
-
-irix5* | irix6*)
- version_type=irix
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}.so$major'
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
- case $host_os in
- irix5*)
- libsuff= shlibsuff=
- ;;
- *)
- case $LD in # libtool.m4 will add one of these switches to LD
- *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
- *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
- *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
- *) libsuff= shlibsuff= libmagic=never-match;;
- esac
- ;;
- esac
- shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
- sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
- ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
- dynamic_linker=no
- ;;
-
-# This must be Linux ELF.
-linux-gnu*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- soname_spec='${libname}${release}.so$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- # This implies no fast_install, which is unacceptable.
- # Some rework will be needed to allow for fast_install
- # before this can be enabled.
- hardcode_into_libs=yes
-
- # We used to test for /lib/ld.so.1 and disable shared libraries on
- # powerpc, because MkLinux only supported shared libraries with the
- # GNU dynamic linker. Since this was broken with cross compilers,
- # most powerpc-linux boxes support dynamic linking these days and
- # people can always --disable-shared, the test was removed, and we
- # assume the GNU/Linux dynamic linker is in use.
- dynamic_linker='GNU/Linux ld.so'
- ;;
-
-netbsd*)
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
- library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- dynamic_linker='NetBSD (a.out) ld.so'
- else
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
- soname_spec='${libname}${release}.so$major'
- dynamic_linker='NetBSD ld.elf_so'
- fi
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
-
-newsos6)
- version_type=linux
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- ;;
-
-openbsd*)
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- case "$host_os" in
- openbsd2.[[89]] | openbsd2.[[89]].*)
- shlibpath_overrides_runpath=no
- ;;
- *)
- shlibpath_overrides_runpath=yes
- ;;
- esac
- else
- shlibpath_overrides_runpath=yes
- fi
- library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-os2*)
- libname_spec='$name'
- need_lib_prefix=no
- library_names_spec='$libname.dll $libname.a'
- dynamic_linker='OS/2 ld.exe'
- shlibpath_var=LIBPATH
- ;;
-
-osf3* | osf4* | osf5*)
- version_type=osf
- need_version=no
- soname_spec='${libname}${release}.so'
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
- sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
- ;;
-
-sco3.2v5*)
- version_type=osf
- soname_spec='${libname}${release}.so$major'
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-solaris*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- soname_spec='${libname}${release}.so$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- # ldd complains unless libraries are executable
- postinstall_cmds='chmod +x $lib'
- ;;
-
-sunos4*)
- version_type=sunos
- library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
- finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- if test "$with_gnu_ld" = yes; then
- need_lib_prefix=no
- fi
- need_version=yes
- ;;
-
-sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
- version_type=linux
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- soname_spec='${libname}${release}.so$major'
- shlibpath_var=LD_LIBRARY_PATH
- case $host_vendor in
- sni)
- shlibpath_overrides_runpath=no
- ;;
- motorola)
- need_lib_prefix=no
- need_version=no
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
- ;;
- esac
- ;;
-
-uts4*)
- version_type=linux
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- soname_spec='${libname}${release}.so$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-dgux*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- soname_spec='${libname}${release}.so$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-sysv4*MP*)
- if test -d /usr/nec ;then
- version_type=linux
- library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
- soname_spec='$libname.so.$major'
- shlibpath_var=LD_LIBRARY_PATH
- fi
- ;;
-
-*)
- dynamic_linker=no
- ;;
-esac
-AC_MSG_RESULT([$dynamic_linker])
-test "$dynamic_linker" = no && can_build_shared=no
-##
-## END FIXME
-
-## FIXME: this should be a separate macro
-##
-# Report the final consequences.
-AC_MSG_CHECKING([if libtool supports shared libraries])
-AC_MSG_RESULT([$can_build_shared])
-##
-## END FIXME
-
-## FIXME: this should be a separate macro
-##
-AC_MSG_CHECKING([whether to build shared libraries])
-test "$can_build_shared" = "no" && enable_shared=no
-
-# On AIX, shared libraries and static libraries use the same namespace, and
-# are all built from PIC.
-case "$host_os" in
-aix3*)
- test "$enable_shared" = yes && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
-
-aix4*)
- if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
- test "$enable_shared" = yes && enable_static=no
- fi
- ;;
-esac
-AC_MSG_RESULT([$enable_shared])
-##
-## END FIXME
-
-## FIXME: this should be a separate macro
-##
-AC_MSG_CHECKING([whether to build static libraries])
-# Make sure either enable_shared or enable_static is yes.
-test "$enable_shared" = yes || enable_static=yes
-AC_MSG_RESULT([$enable_static])
-##
-## END FIXME
-
-if test "$hardcode_action" = relink; then
- # Fast installation is not supported
- enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
- test "$enable_shared" = no; then
- # Fast installation is not necessary
- enable_fast_install=needless
-fi
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
- variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-AC_LIBTOOL_DLOPEN_SELF
-
-## FIXME: this should be a separate macro
-##
-if test "$enable_shared" = yes && test "$GCC" = yes; then
- case $archive_cmds in
- *'~'*)
- # FIXME: we may have to deal with multi-command sequences.
- ;;
- '$CC '*)
- # Test whether the compiler implicitly links with -lc since on some
- # systems, -lgcc has to come before -lc. If gcc already passes -lc
- # to ld, don't add -lc before -lgcc.
- AC_MSG_CHECKING([whether -lc should be explicitly linked in])
- AC_CACHE_VAL([lt_cv_archive_cmds_need_lc],
- [$rm conftest*
- echo 'static int dummy;' > conftest.$ac_ext
-
- if AC_TRY_EVAL(ac_compile); then
- soname=conftest
- lib=conftest
- libobjs=conftest.$ac_objext
- deplibs=
- wl=$lt_cv_prog_cc_wl
- compiler_flags=-v
- linker_flags=-v
- verstring=
- output_objdir=.
- libname=conftest
- save_allow_undefined_flag=$allow_undefined_flag
- allow_undefined_flag=
- if AC_TRY_EVAL(archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1)
- then
- lt_cv_archive_cmds_need_lc=no
- else
- lt_cv_archive_cmds_need_lc=yes
- fi
- allow_undefined_flag=$save_allow_undefined_flag
- else
- cat conftest.err 1>&5
- fi])
- AC_MSG_RESULT([$lt_cv_archive_cmds_need_lc])
- ;;
- esac
-fi
-need_lc=${lt_cv_archive_cmds_need_lc-yes}
-##
-## END FIXME
-
-## FIXME: this should be a separate macro
-##
-# The second clause should only fire when bootstrapping the
-# libtool distribution, otherwise you forgot to ship ltmain.sh
-# with your package, and you will get complaints that there are
-# no rules to generate ltmain.sh.
-if test -f "$ltmain"; then
- :
-else
- # If there is no Makefile yet, we rely on a make rule to execute
- # `config.status --recheck' to rerun these tests and create the
- # libtool script then.
- test -f Makefile && make "$ltmain"
-fi
-
-if test -f "$ltmain"; then
- trap "$rm \"${ofile}T\"; exit 1" 1 2 15
- $rm -f "${ofile}T"
-
- echo creating $ofile
-
- # Now quote all the things that may contain metacharacters while being
- # careful not to overquote the AC_SUBSTed values. We take copies of the
- # variables and quote the copies for generation of the libtool script.
- for var in echo old_CC old_CFLAGS \
- AR AR_FLAGS CC LD LN_S NM SHELL \
- reload_flag reload_cmds wl \
- pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
- thread_safe_flag_spec whole_archive_flag_spec libname_spec \
- library_names_spec soname_spec \
- RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
- old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \
- postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \
- old_striplib striplib file_magic_cmd export_symbols_cmds \
- deplibs_check_method allow_undefined_flag no_undefined_flag \
- finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
- global_symbol_to_c_name_address \
- hardcode_libdir_flag_spec hardcode_libdir_separator \
- sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
- compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
-
- case $var in
- reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
- old_postinstall_cmds | old_postuninstall_cmds | \
- export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
- extract_expsyms_cmds | old_archive_from_expsyms_cmds | \
- postinstall_cmds | postuninstall_cmds | \
- finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
- # Double-quote double-evaled strings.
- eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
- ;;
- *)
- eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
- ;;
- esac
- done
-
- cat <<__EOF__ > "${ofile}T"
-#! $SHELL
-
-# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
-# NOTE: Changes made to this file will be lost: look at ltmain.sh.
-#
-# Copyright (C) 1996-2000 Free Software Foundation, Inc.
-# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# Sed that helps us avoid accidentally triggering echo(1) options like -n.
-Xsed="sed -e s/^X//"
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
-
-# ### BEGIN LIBTOOL CONFIG
-
-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-
-# Shell to use when invoking shell scripts.
-SHELL=$lt_SHELL
-
-# Whether or not to build shared libraries.
-build_libtool_libs=$enable_shared
-
-# Whether or not to build static libraries.
-build_old_libs=$enable_static
-
-# Whether or not to add -lc for building shared libraries.
-build_libtool_need_lc=$need_lc
-
-# Whether or not to optimize for fast installation.
-fast_install=$enable_fast_install
-
-# The host system.
-host_alias=$host_alias
-host=$host
-
-# An echo program that does not interpret backslashes.
-echo=$lt_echo
-
-# The archiver.
-AR=$lt_AR
-AR_FLAGS=$lt_AR_FLAGS
-
-# The default C compiler.
-CC=$lt_CC
-
-# Is the compiler the GNU C compiler?
-with_gcc=$GCC
-
-# The linker used to build libraries.
-LD=$lt_LD
-
-# Whether we need hard or soft links.
-LN_S=$lt_LN_S
-
-# A BSD-compatible nm program.
-NM=$lt_NM
-
-# A symbol stripping program
-STRIP=$STRIP
-
-# Used to examine libraries when file_magic_cmd begins "file"
-MAGIC_CMD=$MAGIC_CMD
-
-# Used on cygwin: DLL creation program.
-DLLTOOL="$DLLTOOL"
-
-# Used on cygwin: object dumper.
-OBJDUMP="$OBJDUMP"
-
-# Used on cygwin: assembler.
-AS="$AS"
-
-# The name of the directory that contains temporary libtool files.
-objdir=$objdir
-
-# How to create reloadable object files.
-reload_flag=$lt_reload_flag
-reload_cmds=$lt_reload_cmds
-
-# How to pass a linker flag through the compiler.
-wl=$lt_wl
-
-# Object file suffix (normally "o").
-objext="$ac_objext"
-
-# Old archive suffix (normally "a").
-libext="$libext"
-
-# Executable file suffix (normally "").
-exeext="$exeext"
-
-# Additional compiler flags for building library objects.
-pic_flag=$lt_pic_flag
-pic_mode=$pic_mode
-
-# Does compiler simultaneously support -c and -o options?
-compiler_c_o=$lt_compiler_c_o
-
-# Can we write directly to a .lo ?
-compiler_o_lo=$lt_compiler_o_lo
-
-# Must we lock files when doing compilation ?
-need_locks=$lt_need_locks
-
-# Do we need the lib prefix for modules?
-need_lib_prefix=$need_lib_prefix
-
-# Do we need a version for libraries?
-need_version=$need_version
-
-# Whether dlopen is supported.
-dlopen_support=$enable_dlopen
-
-# Whether dlopen of programs is supported.
-dlopen_self=$enable_dlopen_self
-
-# Whether dlopen of statically linked programs is supported.
-dlopen_self_static=$enable_dlopen_self_static
-
-# Compiler flag to prevent dynamic linking.
-link_static_flag=$lt_link_static_flag
-
-# Compiler flag to turn off builtin functions.
-no_builtin_flag=$lt_no_builtin_flag
-
-# Compiler flag to allow reflexive dlopens.
-export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
-
-# Compiler flag to generate shared objects directly from archives.
-whole_archive_flag_spec=$lt_whole_archive_flag_spec
-
-# Compiler flag to generate thread-safe objects.
-thread_safe_flag_spec=$lt_thread_safe_flag_spec
-
-# Library versioning type.
-version_type=$version_type
-
-# Format of library name prefix.
-libname_spec=$lt_libname_spec
-
-# List of archive names. First name is the real one, the rest are links.
-# The last name is the one that the linker finds with -lNAME.
-library_names_spec=$lt_library_names_spec
-
-# The coded name of the library, if different from the real name.
-soname_spec=$lt_soname_spec
-
-# Commands used to build and install an old-style archive.
-RANLIB=$lt_RANLIB
-old_archive_cmds=$lt_old_archive_cmds
-old_postinstall_cmds=$lt_old_postinstall_cmds
-old_postuninstall_cmds=$lt_old_postuninstall_cmds
-
-# Create an old-style archive from a shared archive.
-old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
-
-# Create a temporary old-style archive to link instead of a shared archive.
-old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
-
-# Commands used to build and install a shared archive.
-archive_cmds=$lt_archive_cmds
-archive_expsym_cmds=$lt_archive_expsym_cmds
-postinstall_cmds=$lt_postinstall_cmds
-postuninstall_cmds=$lt_postuninstall_cmds
-
-# Commands to strip libraries.
-old_striplib=$lt_old_striplib
-striplib=$lt_striplib
-
-# Method to check whether dependent libraries are shared objects.
-deplibs_check_method=$lt_deplibs_check_method
-
-# Command to use when deplibs_check_method == file_magic.
-file_magic_cmd=$lt_file_magic_cmd
-
-# Flag that allows shared libraries with undefined symbols to be built.
-allow_undefined_flag=$lt_allow_undefined_flag
-
-# Flag that forces no undefined symbols.
-no_undefined_flag=$lt_no_undefined_flag
-
-# Commands used to finish a libtool library installation in a directory.
-finish_cmds=$lt_finish_cmds
-
-# Same as above, but a single script fragment to be evaled but not shown.
-finish_eval=$lt_finish_eval
-
-# Take the output of nm and produce a listing of raw symbols and C names.
-global_symbol_pipe=$lt_global_symbol_pipe
-
-# Transform the output of nm in a proper C declaration
-global_symbol_to_cdecl=$lt_global_symbol_to_cdecl
-
-# Transform the output of nm in a C name address pair
-global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address
-
-# This is the shared library runtime path variable.
-runpath_var=$runpath_var
-
-# This is the shared library path variable.
-shlibpath_var=$shlibpath_var
-
-# Is shlibpath searched before the hard-coded library search path?
-shlibpath_overrides_runpath=$shlibpath_overrides_runpath
-
-# How to hardcode a shared library path into an executable.
-hardcode_action=$hardcode_action
-
-# Whether we should hardcode library paths into libraries.
-hardcode_into_libs=$hardcode_into_libs
-
-# Flag to hardcode \$libdir into a binary during linking.
-# This must work even if \$libdir does not exist.
-hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
-
-# Whether we need a single -rpath flag with a separated argument.
-hardcode_libdir_separator=$lt_hardcode_libdir_separator
-
-# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
-# resulting binary.
-hardcode_direct=$hardcode_direct
-
-# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
-# resulting binary.
-hardcode_minus_L=$hardcode_minus_L
-
-# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
-# the resulting binary.
-hardcode_shlibpath_var=$hardcode_shlibpath_var
-
-# Variables whose values should be saved in libtool wrapper scripts and
-# restored at relink time.
-variables_saved_for_relink="$variables_saved_for_relink"
-
-# Whether libtool must link a program against all its dependency libraries.
-link_all_deplibs=$link_all_deplibs
-
-# Compile-time system search path for libraries
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
-
-# Run-time system search path for libraries
-sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
-
-# Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path="$fix_srcfile_path"
-
-# Set to yes if exported symbols are required.
-always_export_symbols=$always_export_symbols
-
-# The commands to list exported symbols.
-export_symbols_cmds=$lt_export_symbols_cmds
-
-# The commands to extract the exported symbol list from a shared archive.
-extract_expsyms_cmds=$lt_extract_expsyms_cmds
-
-# Symbols that should not be listed in the preloaded symbols.
-exclude_expsyms=$lt_exclude_expsyms
-
-# Symbols that must always be exported.
-include_expsyms=$lt_include_expsyms
-
-# ### END LIBTOOL CONFIG
-
-__EOF__
-
- case $host_os in
- aix3*)
- cat <<\EOF >> "${ofile}T"
-
-# AIX sometimes has problems with the GCC collect2 program. For some
-# reason, if we set the COLLECT_NAMES environment variable, the problems
-# vanish in a puff of smoke.
-if test "X${COLLECT_NAMES+set}" != Xset; then
- COLLECT_NAMES=
- export COLLECT_NAMES
-fi
-EOF
- ;;
- esac
-
- case $host_os in
- cygwin* | mingw* | pw32* | os2*)
- cat <<'EOF' >> "${ofile}T"
- # This is a source program that is used to create dlls on Windows
- # Don't remove nor modify the starting and closing comments
-# /* ltdll.c starts here */
-# #define WIN32_LEAN_AND_MEAN
-# #include <windows.h>
-# #undef WIN32_LEAN_AND_MEAN
-# #include <stdio.h>
-#
-# #ifndef __CYGWIN__
-# # ifdef __CYGWIN32__
-# # define __CYGWIN__ __CYGWIN32__
-# # endif
-# #endif
-#
-# #ifdef __cplusplus
-# extern "C" {
-# #endif
-# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
-# #ifdef __cplusplus
-# }
-# #endif
-#
-# #ifdef __CYGWIN__
-# #include <cygwin/cygwin_dll.h>
-# DECLARE_CYGWIN_DLL( DllMain );
-# #endif
-# HINSTANCE __hDllInstance_base;
-#
-# BOOL APIENTRY
-# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
-# {
-# __hDllInstance_base = hInst;
-# return TRUE;
-# }
-# /* ltdll.c ends here */
- # This is a source program that is used to create import libraries
- # on Windows for dlls which lack them. Don't remove nor modify the
- # starting and closing comments
-# /* impgen.c starts here */
-# /* Copyright (C) 1999-2000 Free Software Foundation, Inc.
-#
-# This file is part of GNU libtool.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-# */
-#
-# #include <stdio.h> /* for printf() */
-# #include <unistd.h> /* for open(), lseek(), read() */
-# #include <fcntl.h> /* for O_RDONLY, O_BINARY */
-# #include <string.h> /* for strdup() */
-#
-# /* O_BINARY isn't required (or even defined sometimes) under Unix */
-# #ifndef O_BINARY
-# #define O_BINARY 0
-# #endif
-#
-# static unsigned int
-# pe_get16 (fd, offset)
-# int fd;
-# int offset;
-# {
-# unsigned char b[2];
-# lseek (fd, offset, SEEK_SET);
-# read (fd, b, 2);
-# return b[0] + (b[1]<<8);
-# }
-#
-# static unsigned int
-# pe_get32 (fd, offset)
-# int fd;
-# int offset;
-# {
-# unsigned char b[4];
-# lseek (fd, offset, SEEK_SET);
-# read (fd, b, 4);
-# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
-# }
-#
-# static unsigned int
-# pe_as32 (ptr)
-# void *ptr;
-# {
-# unsigned char *b = ptr;
-# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
-# }
-#
-# int
-# main (argc, argv)
-# int argc;
-# char *argv[];
-# {
-# int dll;
-# unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
-# unsigned long export_rva, export_size, nsections, secptr, expptr;
-# unsigned long name_rvas, nexp;
-# unsigned char *expdata, *erva;
-# char *filename, *dll_name;
-#
-# filename = argv[1];
-#
-# dll = open(filename, O_RDONLY|O_BINARY);
-# if (dll < 1)
-# return 1;
-#
-# dll_name = filename;
-#
-# for (i=0; filename[i]; i++)
-# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':')
-# dll_name = filename + i +1;
-#
-# pe_header_offset = pe_get32 (dll, 0x3c);
-# opthdr_ofs = pe_header_offset + 4 + 20;
-# num_entries = pe_get32 (dll, opthdr_ofs + 92);
-#
-# if (num_entries < 1) /* no exports */
-# return 1;
-#
-# export_rva = pe_get32 (dll, opthdr_ofs + 96);
-# export_size = pe_get32 (dll, opthdr_ofs + 100);
-# nsections = pe_get16 (dll, pe_header_offset + 4 +2);
-# secptr = (pe_header_offset + 4 + 20 +
-# pe_get16 (dll, pe_header_offset + 4 + 16));
-#
-# expptr = 0;
-# for (i = 0; i < nsections; i++)
-# {
-# char sname[8];
-# unsigned long secptr1 = secptr + 40 * i;
-# unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
-# unsigned long vsize = pe_get32 (dll, secptr1 + 16);
-# unsigned long fptr = pe_get32 (dll, secptr1 + 20);
-# lseek(dll, secptr1, SEEK_SET);
-# read(dll, sname, 8);
-# if (vaddr <= export_rva && vaddr+vsize > export_rva)
-# {
-# expptr = fptr + (export_rva - vaddr);
-# if (export_rva + export_size > vaddr + vsize)
-# export_size = vsize - (export_rva - vaddr);
-# break;
-# }
-# }
-#
-# expdata = (unsigned char*)malloc(export_size);
-# lseek (dll, expptr, SEEK_SET);
-# read (dll, expdata, export_size);
-# erva = expdata - export_rva;
-#
-# nexp = pe_as32 (expdata+24);
-# name_rvas = pe_as32 (expdata+32);
-#
-# printf ("EXPORTS\n");
-# for (i = 0; i<nexp; i++)
-# {
-# unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
-# printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
-# }
-#
-# return 0;
-# }
-# /* impgen.c ends here */
-
-EOF
- ;;
- esac
-
- # We use sed instead of cat because bash on DJGPP gets confused if
- # if finds mixed CR/LF and LF-only lines. Since sed operates in
- # text mode, it properly converts lines to CR/LF. This bash problem
- # is reportedly fixed, but why not run on old versions too?
- sed '$q' "$ltmain" >> "${ofile}T" || (rm -f "${ofile}T"; exit 1)
-
- mv -f "${ofile}T" "$ofile" || \
- (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T")
- chmod +x "$ofile"
-fi
-##
-## END FIXME
-
-])# _LT_AC_LTCONFIG_HACK
-
# AC_LIBTOOL_DLOPEN - enable checks for dlopen support
-AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
+AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
-AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
+AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
# AC_ENABLE_SHARED - implement the --enable-shared flag
# Usage: AC_ENABLE_SHARED[(DEFAULT)]
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
# `yes'.
-AC_DEFUN([AC_ENABLE_SHARED],
-[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
+AC_DEFUN(AC_ENABLE_SHARED, [dnl
+define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
AC_ARG_ENABLE(shared,
changequote(<<, >>)dnl
<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
changequote([, ])dnl
[p=${PACKAGE-default}
-case $enableval in
+case "$enableval" in
yes) enable_shared=yes ;;
no) enable_shared=no ;;
*)
@@ -3015,22 +172,21 @@ enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
])
# AC_DISABLE_SHARED - set the default shared flag to --disable-shared
-AC_DEFUN([AC_DISABLE_SHARED],
-[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_ENABLE_SHARED(no)])
# AC_ENABLE_STATIC - implement the --enable-static flag
# Usage: AC_ENABLE_STATIC[(DEFAULT)]
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
# `yes'.
-AC_DEFUN([AC_ENABLE_STATIC],
-[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
+AC_DEFUN(AC_ENABLE_STATIC, [dnl
+define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
AC_ARG_ENABLE(static,
changequote(<<, >>)dnl
<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
changequote([, ])dnl
[p=${PACKAGE-default}
-case $enableval in
+case "$enableval" in
yes) enable_static=yes ;;
no) enable_static=no ;;
*)
@@ -3049,8 +205,7 @@ enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
])
# AC_DISABLE_STATIC - set the default static flag to --disable-static
-AC_DEFUN([AC_DISABLE_STATIC],
-[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_ENABLE_STATIC(no)])
@@ -3058,14 +213,14 @@ AC_ENABLE_STATIC(no)])
# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
# `yes'.
-AC_DEFUN([AC_ENABLE_FAST_INSTALL],
-[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
+AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl
+define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
AC_ARG_ENABLE(fast-install,
changequote(<<, >>)dnl
<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
changequote([, ])dnl
[p=${PACKAGE-default}
-case $enableval in
+case "$enableval" in
yes) enable_fast_install=yes ;;
no) enable_fast_install=no ;;
*)
@@ -3083,120 +238,29 @@ esac],
enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
])
-# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install
-AC_DEFUN([AC_DISABLE_FAST_INSTALL],
-[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+# AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install
+AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_ENABLE_FAST_INSTALL(no)])
-# AC_LIBTOOL_PICMODE - implement the --with-pic flag
-# Usage: AC_LIBTOOL_PICMODE[(MODE)]
-# Where MODE is either `yes' or `no'. If omitted, it defaults to
-# `both'.
-AC_DEFUN([AC_LIBTOOL_PICMODE],
-[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-pic_mode=ifelse($#,1,$1,default)])
-
-
-# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library
-AC_DEFUN([AC_PATH_TOOL_PREFIX],
-[AC_MSG_CHECKING([for $1])
-AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
-[case $MAGIC_CMD in
- /*)
- lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
- ;;
- ?:/*)
- lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
- ;;
- *)
- ac_save_MAGIC_CMD="$MAGIC_CMD"
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-dnl $ac_dummy forces splitting on constant user-supplied paths.
-dnl POSIX.2 word splitting is done only on the output of word expansions,
-dnl not every word. This closes a longstanding sh security hole.
- ac_dummy="ifelse([$2], , $PATH, [$2])"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$1; then
- lt_cv_path_MAGIC_CMD="$ac_dir/$1"
- if test -n "$file_magic_test_file"; then
- case $deplibs_check_method in
- "file_magic "*)
- file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
- MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
- if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
- egrep "$file_magic_regex" > /dev/null; then
- :
- else
- cat <<EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such. This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem. Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool@gnu.org
-
-EOF
- fi ;;
- esac
- fi
- break
- fi
- done
- IFS="$ac_save_ifs"
- MAGIC_CMD="$ac_save_MAGIC_CMD"
- ;;
-esac])
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
- AC_MSG_RESULT($MAGIC_CMD)
-else
- AC_MSG_RESULT(no)
-fi
-])
-
-
-# AC_PATH_MAGIC - find a file program which can recognise a shared library
-AC_DEFUN([AC_PATH_MAGIC],
-[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl
-AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH)
-if test -z "$lt_cv_path_MAGIC_CMD"; then
- if test -n "$ac_tool_prefix"; then
- AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH)
- else
- MAGIC_CMD=:
- fi
-fi
-])
-
-
# AC_PROG_LD - find the path to the GNU or non-GNU linker
-AC_DEFUN([AC_PROG_LD],
+AC_DEFUN(AC_PROG_LD,
[AC_ARG_WITH(gnu-ld,
[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
ac_prog=ld
-if test "$GCC" = yes; then
+if test "$ac_cv_prog_gcc" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
AC_MSG_CHECKING([for ld used by GCC])
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
+ ac_prog=`($CC -print-prog-name=ld) 2>&5`
+ case "$ac_prog" in
# Accept absolute paths.
- [[\\/]]* | [[A-Za-z]]:[[\\/]]*)
- re_direlt='/[[^/]][[^/]]*/\.\./'
+changequote(,)dnl
+ [\\/]* | [A-Za-z]:[\\/]*)
+ re_direlt='/[^/][^/]*/\.\./'
+changequote([,])dnl
# Canonicalize the path of ld
ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
@@ -3218,17 +282,17 @@ elif test "$with_gnu_ld" = yes; then
else
AC_MSG_CHECKING([for non-GNU ld])
fi
-AC_CACHE_VAL(lt_cv_path_LD,
+AC_CACHE_VAL(ac_cv_path_LD,
[if test -z "$LD"; then
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
for ac_dir in $PATH; do
test -z "$ac_dir" && ac_dir=.
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- lt_cv_path_LD="$ac_dir/$ac_prog"
+ ac_cv_path_LD="$ac_dir/$ac_prog"
# Check to see if the program is GNU ld. I'd rather use --version,
# but apparently some GNU ld's only accept -v.
# Break only if it was the GNU/non-GNU ld that we prefer.
- if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
+ if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
test "$with_gnu_ld" != no && break
else
test "$with_gnu_ld" != yes && break
@@ -3237,9 +301,9 @@ AC_CACHE_VAL(lt_cv_path_LD,
done
IFS="$ac_save_ifs"
else
- lt_cv_path_LD="$LD" # Let the user override the test with a path.
+ ac_cv_path_LD="$LD" # Let the user override the test with a path.
fi])
-LD="$lt_cv_path_LD"
+LD="$ac_cv_path_LD"
if test -n "$LD"; then
AC_MSG_RESULT($LD)
else
@@ -3249,252 +313,56 @@ test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
AC_PROG_LD_GNU
])
-# AC_PROG_LD_GNU -
-AC_DEFUN([AC_PROG_LD_GNU],
-[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
+AC_DEFUN(AC_PROG_LD_GNU,
+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
- lt_cv_prog_gnu_ld=yes
+ ac_cv_prog_gnu_ld=yes
else
- lt_cv_prog_gnu_ld=no
+ ac_cv_prog_gnu_ld=no
fi])
-with_gnu_ld=$lt_cv_prog_gnu_ld
])
-# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker
-# -- PORTME Some linkers may need a different reload flag.
-AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
-[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag,
-[lt_cv_ld_reload_flag='-r'])
-reload_flag=$lt_cv_ld_reload_flag
-test -n "$reload_flag" && reload_flag=" $reload_flag"
-])
-
-# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
-# -- PORTME fill in with the dynamic library characteristics
-AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
-[AC_CACHE_CHECK([how to recognise dependant libraries],
-lt_cv_deplibs_check_method,
-[lt_cv_file_magic_cmd='$MAGIC_CMD'
-lt_cv_file_magic_test_file=
-lt_cv_deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given egrep regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
-
-case $host_os in
-aix4* | aix5*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-beos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-bsdi4*)
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
- lt_cv_file_magic_cmd='/usr/bin/file -L'
- lt_cv_file_magic_test_file=/shlib/libc.so
- ;;
-
-cygwin* | mingw* | pw32*)
- lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- ;;
-
-darwin* | rhapsody*)
- lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
- lt_cv_file_magic_cmd='/usr/bin/file -L'
- case "$host_os" in
- rhapsody* | darwin1.[[012]])
- lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1`
- ;;
- *) # Darwin 1.3 on
- lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
- ;;
- esac
- ;;
-
-freebsd*)
- if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
- case $host_cpu in
- i*86 )
- # Not sure whether the presence of OpenBSD here was a mistake.
- # Let's accept both of them until this is cleared up.
- lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library'
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
- ;;
- esac
- else
- lt_cv_deplibs_check_method=pass_all
- fi
- ;;
-
-gnu*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-hpux10.20*|hpux11*)
- lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=/usr/lib/libc.sl
- ;;
-
-irix5* | irix6*)
- case $host_os in
- irix5*)
- # this will be overridden with pass_all, but let us keep it just in case
- lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
- ;;
- *)
- case $LD in
- *-32|*"-32 ") libmagic=32-bit;;
- *-n32|*"-n32 ") libmagic=N32;;
- *-64|*"-64 ") libmagic=64-bit;;
- *) libmagic=never-match;;
- esac
- # this will be overridden with pass_all, but let us keep it just in case
- lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1"
- ;;
- esac
- lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-# This must be Linux ELF.
-linux-gnu*)
- case $host_cpu in
- alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* )
- lt_cv_deplibs_check_method=pass_all ;;
- *)
- # glibc up to 2.1.1 does not perform some relocations on ARM
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;;
- esac
- lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
- ;;
-
-netbsd*)
- if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
- lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$'
- else
- lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$'
- fi
- ;;
-
-newos6*)
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=/usr/lib/libnls.so
- ;;
-
-openbsd*)
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
- if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object'
- else
- lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
- fi
- ;;
-
-osf3* | osf4* | osf5*)
- # this will be overridden with pass_all, but let us keep it just in case
- lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
- lt_cv_file_magic_test_file=/shlib/libc.so
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sco3.2v5*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-solaris*)
- lt_cv_deplibs_check_method=pass_all
- lt_cv_file_magic_test_file=/lib/libc.so
- ;;
-
-sysv5uw[[78]]* | sysv4*uw2*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
- case $host_vendor in
- motorola)
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
- ;;
- ncr)
- lt_cv_deplibs_check_method=pass_all
- ;;
- sequent)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
- ;;
- sni)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
- lt_cv_file_magic_test_file=/lib/libc.so
- ;;
- esac
- ;;
-esac
-])
-file_magic_cmd=$lt_cv_file_magic_cmd
-deplibs_check_method=$lt_cv_deplibs_check_method
-])
-
-
# AC_PROG_NM - find the path to a BSD-compatible name lister
-AC_DEFUN([AC_PROG_NM],
-[AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
-AC_MSG_CHECKING([for BSD-compatible nm])
-AC_CACHE_VAL(lt_cv_path_NM,
+AC_DEFUN(AC_PROG_NM,
+[AC_MSG_CHECKING([for BSD-compatible nm])
+AC_CACHE_VAL(ac_cv_path_NM,
[if test -n "$NM"; then
# Let the user override the test.
- lt_cv_path_NM="$NM"
+ ac_cv_path_NM="$NM"
else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
test -z "$ac_dir" && ac_dir=.
- tmp_nm=$ac_dir/${ac_tool_prefix}nm
- if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
+ if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
# Check to see if the nm accepts a BSD-compat flag.
# Adding the `sed 1q' prevents false positives on HP-UX, which says:
# nm: unknown option "B" ignored
- # Tru64's nm complains that /dev/null is an invalid object file
- if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
- lt_cv_path_NM="$tmp_nm -B"
+ if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
+ ac_cv_path_NM="$ac_dir/nm -B"
break
- elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
- lt_cv_path_NM="$tmp_nm -p"
+ elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
+ ac_cv_path_NM="$ac_dir/nm -p"
break
else
- lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
+ ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
continue # so that we can try to find one that supports BSD flags
fi
fi
done
IFS="$ac_save_ifs"
- test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
+ test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
fi])
-NM="$lt_cv_path_NM"
+NM="$ac_cv_path_NM"
AC_MSG_RESULT([$NM])
])
# AC_CHECK_LIBM - check for math library
-AC_DEFUN([AC_CHECK_LIBM],
+AC_DEFUN(AC_CHECK_LIBM,
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
LIBM=
-case $host in
-*-*-beos* | *-*-cygwin* | *-*-pw32*)
+case "$lt_target" in
+*-*-beos* | *-*-cygwin*)
# These system don't have libm
;;
*-ncr-sysv4.3*)
@@ -3508,39 +376,33 @@ esac
])
# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
-# the libltdl convenience library and INCLTDL to the include flags for
-# the libltdl header and adds --enable-ltdl-convenience to the
-# configure arguments. Note that LIBLTDL and INCLTDL are not
-# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not
-# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed
-# with '${top_builddir}/' and INCLTDL will be prefixed with
-# '${top_srcdir}/' (note the single quotes!). If your package is not
-# flat and you're not using automake, define top_builddir and
-# top_srcdir appropriately in the Makefiles.
-AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
-[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
- case $enable_ltdl_convenience in
+# the libltdl convenience library, adds --enable-ltdl-convenience to
+# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
+# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
+# to be `${top_builddir}/libltdl'. Make sure you start DIR with
+# '${top_builddir}/' (note the single quotes!) if your package is not
+# flat, and, if you're not using automake, define top_builddir as
+# appropriate in the Makefiles.
+AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+ case "$enable_ltdl_convenience" in
no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
"") enable_ltdl_convenience=yes
ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
esac
- LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
- INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
+ LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la
+ INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
])
# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
-# the libltdl installable library and INCLTDL to the include flags for
-# the libltdl header and adds --enable-ltdl-install to the configure
-# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is
-# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed
-# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will
-# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed
-# with '${top_srcdir}/' (note the single quotes!). If your package is
-# not flat and you're not using automake, define top_builddir and
-# top_srcdir appropriately in the Makefiles.
+# the libltdl installable library, and adds --enable-ltdl-install to
+# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
+# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
+# to be `${top_builddir}/libltdl'. Make sure you start DIR with
+# '${top_builddir}/' (note the single quotes!) if your package is not
+# flat, and, if you're not using automake, define top_builddir as
+# appropriate in the Makefiles.
# In the future, this macro may have to be called after AC_PROG_LIBTOOL.
-AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
-[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_CHECK_LIB(ltdl, main,
[test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
[if test x"$enable_ltdl_install" = xno; then
@@ -3551,8 +413,8 @@ AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
])
if test x"$enable_ltdl_install" = x"yes"; then
ac_configure_args="$ac_configure_args --enable-ltdl-install"
- LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
- INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
+ LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la
+ INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
else
ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
LIBLTDL="-lltdl"
@@ -3560,14 +422,14 @@ AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
fi
])
-# old names
-AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL])
-AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
-AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
-AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
-AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
-AC_DEFUN([AM_PROG_LD], [AC_PROG_LD])
-AC_DEFUN([AM_PROG_NM], [AC_PROG_NM])
-
-# This is just to silence aclocal about the macro not being used
-ifelse([AC_DISABLE_FAST_INSTALL])
+dnl old names
+AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
+AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
+AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
+AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
+AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
+AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
+AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
+
+dnl This is just to silence aclocal about the macro not being used
+ifelse([AC_DISABLE_FAST_INSTALL])dnl
diff --git a/boehm-gc/mkinstalldirs b/boehm-gc/mkinstalldirs
index f9c37afd1b8..cc8783edce3 100755
--- a/boehm-gc/mkinstalldirs
+++ b/boehm-gc/mkinstalldirs
@@ -2,90 +2,29 @@
# mkinstalldirs --- make directory hierarchy
# Author: Noah Friedman <friedman@prep.ai.mit.edu>
# Created: 1993-05-16
+# Last modified: 1994-03-25
# Public domain
-# $Id: mkinstalldirs,v 1.13 1999/01/05 03:18:55 bje Exp $
-
errstatus=0
-dirmode=""
-
-usage="\
-Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
-
-# process command line arguments
-while test $# -gt 0 ; do
- case "${1}" in
- -h | --help | --h* ) # -h for help
- echo "${usage}" 1>&2; exit 0 ;;
- -m ) # -m PERM arg
- shift
- test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
- dirmode="${1}"
- shift ;;
- -- ) shift; break ;; # stop option processing
- -* ) echo "${usage}" 1>&2; exit 1 ;; # unknown option
- * ) break ;; # first non-opt arg
- esac
-done
-
-for file
-do
- if test -d "$file"; then
- shift
- else
- break
- fi
-done
-
-case $# in
-0) exit 0 ;;
-esac
-case $dirmode in
-'')
- if mkdir -p -- . 2>/dev/null; then
- echo "mkdir -p -- $*"
- exec mkdir -p -- "$@"
- fi ;;
-*)
- if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
- echo "mkdir -m $dirmode -p -- $*"
- exec mkdir -m "$dirmode" -p -- "$@"
- fi ;;
-esac
-
-for file
-do
+for file in ${1+"$@"} ; do
set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
shift
pathcomp=
- for d
- do
+ for d in ${1+"$@"} ; do
pathcomp="$pathcomp$d"
case "$pathcomp" in
-* ) pathcomp=./$pathcomp ;;
esac
if test ! -d "$pathcomp"; then
- echo "mkdir $pathcomp"
-
- mkdir "$pathcomp" || lasterr=$?
-
- if test ! -d "$pathcomp"; then
- errstatus=$lasterr
- else
- if test ! -z "$dirmode"; then
- echo "chmod $dirmode $pathcomp"
-
- lasterr=""
- chmod "$dirmode" "$pathcomp" || lasterr=$?
+ echo "mkdir $pathcomp" 1>&2
+ mkdir "$pathcomp" > /dev/null 2>&1 || lasterr=$?
+ fi
- if test ! -z "$lasterr"; then
- errstatus=$lasterr
- fi
- fi
- fi
+ if test ! -d "$pathcomp"; then
+ errstatus=$lasterr
fi
pathcomp="$pathcomp/"
@@ -94,8 +33,4 @@ done
exit $errstatus
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 3
-# End:
# mkinstalldirs ends here
diff --git a/config.guess b/config.guess
index afcb19c1d7e..00ccf89e18b 100755
--- a/config.guess
+++ b/config.guess
@@ -3,7 +3,7 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
-timestamp='2003-10-16'
+timestamp='2004-02-16'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -197,12 +197,18 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
echo "${machine}-${os}${release}"
exit 0 ;;
+ amd64:OpenBSD:*:*)
+ echo x86_64-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
amiga:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
arc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
+ cats:OpenBSD:*:*)
+ echo arm-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
hp300:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
@@ -221,6 +227,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
mvmeppc:OpenBSD:*:*)
echo powerpc-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
+ pegasos:OpenBSD:*:*)
+ echo powerpc-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
pmax:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
@@ -236,6 +245,15 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
*:OpenBSD:*:*)
echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
+ *:ekkoBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+ exit 0 ;;
+ macppc:MirBSD:*:*)
+ echo powerppc-unknown-mirbsd${UNAME_RELEASE}
+ exit 0 ;;
+ *:MirBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+ exit 0 ;;
alpha:OSF1:*:*)
if test $UNAME_RELEASE = "V4.0"; then
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
@@ -402,6 +420,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
echo m68k-unknown-mint${UNAME_RELEASE}
exit 0 ;;
+ m68k:machten:*:*)
+ echo m68k-apple-machten${UNAME_RELEASE}
+ exit 0 ;;
powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE}
exit 0 ;;
@@ -745,6 +766,11 @@ EOF
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit 0 ;;
+ 5000:UNIX_System_V:4.*:*)
+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+ FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ exit 0 ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
exit 0 ;;
@@ -989,6 +1015,9 @@ EOF
i*86:atheos:*:*)
echo ${UNAME_MACHINE}-unknown-atheos
exit 0 ;;
+ i*86:syllable:*:*)
+ echo ${UNAME_MACHINE}-pc-syllable
+ exit 0 ;;
i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
echo i386-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
@@ -1175,7 +1204,7 @@ EOF
*:QNX:*:4*)
echo i386-pc-qnx
exit 0 ;;
- NSR-[DGKLNPTVWY]:NONSTOP_KERNEL:*:*)
+ NSR-?:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE}
exit 0 ;;
*:NonStop-UX:*:*)
@@ -1219,6 +1248,9 @@ EOF
SEI:*:*:SEIUX)
echo mips-sei-seiux${UNAME_RELEASE}
exit 0 ;;
+ *:DragonFly:*:*)
+ echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+ exit 0 ;;
esac
#echo '(No uname command or uname output not recognized.)' 1>&2
diff --git a/config.sub b/config.sub
index e1e455b776e..d2e3557ac40 100755
--- a/config.sub
+++ b/config.sub
@@ -3,7 +3,7 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
-timestamp='2003-11-03'
+timestamp='2004-02-16'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@@ -363,6 +363,9 @@ case $basic_machine in
basic_machine=a29k-amd
os=-udi
;;
+ abacus)
+ basic_machine=abacus-unknown
+ ;;
adobe68k)
basic_machine=m68010-adobe
os=-scout
@@ -380,6 +383,9 @@ case $basic_machine in
amd64)
basic_machine=x86_64-pc
;;
+ amd64-*)
+ basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
amdahl)
basic_machine=580-amdahl
os=-sysv
@@ -439,6 +445,10 @@ case $basic_machine in
basic_machine=j90-cray
os=-unicos
;;
+ cr16c)
+ basic_machine=cr16c-unknown
+ os=-elf
+ ;;
crds | unos)
basic_machine=m68k-crds
;;
@@ -1140,8 +1150,9 @@ case $os in
| -aos* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -netbsd* | -openbsd* | -kfreebsd* | -freebsd* | -riscix* \
- | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
+ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
+ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* \
@@ -1152,7 +1163,7 @@ case $os in
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei*)
+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@@ -1215,6 +1226,9 @@ case $os in
-atheos*)
os=-atheos
;;
+ -syllable*)
+ os=-syllable
+ ;;
-386bsd)
os=-bsd
;;
diff --git a/config/ChangeLog b/config/ChangeLog
index 92eb9020c7e..79bb92a4ab1 100644
--- a/config/ChangeLog
+++ b/config/ChangeLog
@@ -1,3 +1,7 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
2003-10-14 Nathanael Nerode <neroden@gcc.gnu.org>
* gettext.m4: Properly quote arguments to AC_DEFUN.
diff --git a/configure b/configure
index 88d3753ed65..7b24d4cd9d2 100755
--- a/configure
+++ b/configure
@@ -1414,6 +1414,9 @@ case "${target}" in
mipstx39-*-*)
noconfigdirs="$noconfigdirs gprof ${libgcj}" # same as generic mips
;;
+ mips64*-*-linux*)
+ noconfigdirs="$noconfigdirs target-newlib ${libgcj}"
+ ;;
mips*-*-linux*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
@@ -2011,7 +2014,7 @@ fi
# Default to using --with-stabs for certain targets.
if test x${with_stabs} = x ; then
case "${target}" in
- mips*-*-irix6*)
+ mips*-*-irix[56]*)
;;
mips*-*-* | alpha*-*-osf*)
with_stabs=yes;
@@ -2837,7 +2840,7 @@ test -n "$target_alias" && ncn_target_tool_prefix=$target_alias-
# Extract the first word of "${ncn_tool_prefix}ar", so it can be a program name with args.
set dummy ${ncn_tool_prefix}ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2841: checking for $ac_word" >&5
+echo "configure:2844: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2870,7 +2873,7 @@ if test -z "$ac_cv_prog_AR" ; then
# Extract the first word of "ar", so it can be a program name with args.
set dummy ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2874: checking for $ac_word" >&5
+echo "configure:2877: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2909,7 +2912,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}as", so it can be a program name with args.
set dummy ${ncn_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2913: checking for $ac_word" >&5
+echo "configure:2916: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2942,7 +2945,7 @@ if test -z "$ac_cv_prog_AS" ; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2946: checking for $ac_word" >&5
+echo "configure:2949: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2981,7 +2984,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ncn_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2985: checking for $ac_word" >&5
+echo "configure:2988: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3014,7 +3017,7 @@ if test -z "$ac_cv_prog_DLLTOOL" ; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3018: checking for $ac_word" >&5
+echo "configure:3021: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3053,7 +3056,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}ld", so it can be a program name with args.
set dummy ${ncn_tool_prefix}ld; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3057: checking for $ac_word" >&5
+echo "configure:3060: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3086,7 +3089,7 @@ if test -z "$ac_cv_prog_LD" ; then
# Extract the first word of "ld", so it can be a program name with args.
set dummy ld; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3090: checking for $ac_word" >&5
+echo "configure:3093: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3125,7 +3128,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}nm", so it can be a program name with args.
set dummy ${ncn_tool_prefix}nm; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3129: checking for $ac_word" >&5
+echo "configure:3132: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3158,7 +3161,7 @@ if test -z "$ac_cv_prog_NM" ; then
# Extract the first word of "nm", so it can be a program name with args.
set dummy nm; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3162: checking for $ac_word" >&5
+echo "configure:3165: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3197,7 +3200,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ncn_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3201: checking for $ac_word" >&5
+echo "configure:3204: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3230,7 +3233,7 @@ if test -z "$ac_cv_prog_RANLIB" ; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3234: checking for $ac_word" >&5
+echo "configure:3237: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3269,7 +3272,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}windres", so it can be a program name with args.
set dummy ${ncn_tool_prefix}windres; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3273: checking for $ac_word" >&5
+echo "configure:3276: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_WINDRES'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3302,7 +3305,7 @@ if test -z "$ac_cv_prog_WINDRES" ; then
# Extract the first word of "windres", so it can be a program name with args.
set dummy windres; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3306: checking for $ac_word" >&5
+echo "configure:3309: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_WINDRES'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3341,7 +3344,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}objcopy", so it can be a program name with args.
set dummy ${ncn_tool_prefix}objcopy; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3345: checking for $ac_word" >&5
+echo "configure:3348: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJCOPY'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3374,7 +3377,7 @@ if test -z "$ac_cv_prog_OBJCOPY" ; then
# Extract the first word of "objcopy", so it can be a program name with args.
set dummy objcopy; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3378: checking for $ac_word" >&5
+echo "configure:3381: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_OBJCOPY'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3413,7 +3416,7 @@ fi
# Extract the first word of "${ncn_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ncn_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3417: checking for $ac_word" >&5
+echo "configure:3420: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3446,7 +3449,7 @@ if test -z "$ac_cv_prog_OBJDUMP" ; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3450: checking for $ac_word" >&5
+echo "configure:3453: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3495,7 +3498,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}ar", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3499: checking for $ac_word" >&5
+echo "configure:3502: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AR_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3528,7 +3531,7 @@ if test -z "$ac_cv_prog_AR_FOR_TARGET" ; then
# Extract the first word of "ar", so it can be a program name with args.
set dummy ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3532: checking for $ac_word" >&5
+echo "configure:3535: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_AR_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3567,7 +3570,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}as", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3571: checking for $ac_word" >&5
+echo "configure:3574: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3600,7 +3603,7 @@ if test -z "$ac_cv_prog_AS_FOR_TARGET" ; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3604: checking for $ac_word" >&5
+echo "configure:3607: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_AS_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3639,7 +3642,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3643: checking for $ac_word" >&5
+echo "configure:3646: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3672,7 +3675,7 @@ if test -z "$ac_cv_prog_DLLTOOL_FOR_TARGET" ; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3676: checking for $ac_word" >&5
+echo "configure:3679: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3711,7 +3714,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}ld", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}ld; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3715: checking for $ac_word" >&5
+echo "configure:3718: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LD_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3744,7 +3747,7 @@ if test -z "$ac_cv_prog_LD_FOR_TARGET" ; then
# Extract the first word of "ld", so it can be a program name with args.
set dummy ld; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3748: checking for $ac_word" >&5
+echo "configure:3751: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_LD_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3783,7 +3786,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}nm", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}nm; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3787: checking for $ac_word" >&5
+echo "configure:3790: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_NM_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3816,7 +3819,7 @@ if test -z "$ac_cv_prog_NM_FOR_TARGET" ; then
# Extract the first word of "nm", so it can be a program name with args.
set dummy nm; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3820: checking for $ac_word" >&5
+echo "configure:3823: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_NM_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3855,7 +3858,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3859: checking for $ac_word" >&5
+echo "configure:3862: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3888,7 +3891,7 @@ if test -z "$ac_cv_prog_RANLIB_FOR_TARGET" ; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3892: checking for $ac_word" >&5
+echo "configure:3895: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_RANLIB_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3927,7 +3930,7 @@ fi
# Extract the first word of "${ncn_target_tool_prefix}windres", so it can be a program name with args.
set dummy ${ncn_target_tool_prefix}windres; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3931: checking for $ac_word" >&5
+echo "configure:3934: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_WINDRES_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3960,7 +3963,7 @@ if test -z "$ac_cv_prog_WINDRES_FOR_TARGET" ; then
# Extract the first word of "windres", so it can be a program name with args.
set dummy windres; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3964: checking for $ac_word" >&5
+echo "configure:3967: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_WINDRES_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4027,7 +4030,7 @@ RANLIB_FOR_TARGET=${RANLIB_FOR_TARGET}${extra_ranlibflags_for_target}
NM_FOR_TARGET=${NM_FOR_TARGET}${extra_nmflags_for_target}
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:4031: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:4034: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
diff --git a/configure.in b/configure.in
index b286f1aa7ef..32673a8a111 100644
--- a/configure.in
+++ b/configure.in
@@ -1,5 +1,5 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-# 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+# 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -653,6 +653,9 @@ case "${target}" in
mipstx39-*-*)
noconfigdirs="$noconfigdirs gprof ${libgcj}" # same as generic mips
;;
+ mips64*-*-linux*)
+ noconfigdirs="$noconfigdirs target-newlib ${libgcj}"
+ ;;
mips*-*-linux*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
@@ -1250,7 +1253,7 @@ fi
# Default to using --with-stabs for certain targets.
if test x${with_stabs} = x ; then
case "${target}" in
- mips*-*-irix6*)
+ mips*-*-irix[[56]]*)
;;
mips*-*-* | alpha*-*-osf*)
with_stabs=yes;
diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index 53b9cbe3b91..3736210405e 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,7 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
2004-01-09 Kelley Cook <kcook@gcc.gnu.org>
* gcc_update (files_and_dependencies): Update fastjar/configure.in
diff --git a/contrib/reghunt/ChangeLog b/contrib/reghunt/ChangeLog
index 33ba2c7a540..f5eefc11801 100644
--- a/contrib/reghunt/ChangeLog
+++ b/contrib/reghunt/ChangeLog
@@ -1,3 +1,7 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
2003-06-24 Janis Johnson <janis187@us.ibm.com>
* reg_search: Replace existing uses of DATE with MADE_DATE and
diff --git a/contrib/regression/ChangeLog b/contrib/regression/ChangeLog
index 09c920aa8e2..c43a4725c6b 100644
--- a/contrib/regression/ChangeLog
+++ b/contrib/regression/ChangeLog
@@ -1,3 +1,7 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
2003-09-18 Andreas Tobler <a.tobler@schweiz.ch>
* btest-gcc.sh: Add make check-target-libffi.
diff --git a/fastjar/ChangeLog b/fastjar/ChangeLog
index c813f366cd3..e6c22763fe9 100644
--- a/fastjar/ChangeLog
+++ b/fastjar/ChangeLog
@@ -1,3 +1,15 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-04-12 Kelley Cook <kcook@gcc.gnu.org>
+
+ PR bootstrap/14905
+ * configure.ac: Parse --enable-generated-files-in-srcdir.
+ * Makefile.am: Copy man and info files to srcdir if requested.
+ * configure: Regenerate.
+ * Makefile.in Regenerate.
+
2004-01-09 Kelley Cook <kcook@gcc.gnu.org>
* configure.in: Rename file to ...
diff --git a/fastjar/Makefile.am b/fastjar/Makefile.am
index 3d4ea36c232..6c442e22868 100644
--- a/fastjar/Makefile.am
+++ b/fastjar/Makefile.am
@@ -82,3 +82,27 @@ jar.pod: $(srcdir)/fastjar.texi
grepjar.pod: $(srcdir)/fastjar.texi
-$(TEXI2POD) -D grepjar $< > $@
+
+# GCC LOCAL CHANGE
+# The following commands allow us to release tarballs with the man pages
+# and info documentation prebuilt. This feature is enabled via
+# --enable-generated-files-in-srcdir in the configure script.
+
+if GENINSRC
+STAMP_GENINSRC = stamp-geninsrc
+else
+STAMP_GENINSRC =
+endif
+
+all-local: $(STAMP_GENINSRC)
+
+stamp-geninsrc: jar.1 grepjar.1 fastjar.info
+ -cp -p $(top_builddir)/jar.1 $(srcdir)/jar.1
+ -cp -p $(top_builddir)/grepjar.1 $(srcdir)/grepjar.1
+ -cp -p $(top_builddir)/fastjar.info $(srcdir)/fastjar.info
+ touch $@
+
+CLEANFILES = stamp-geninsrc
+MAINTAINERCLEANFILES = $(srcdir)/jar.1 \
+ $(srcdir)/grepjar.1 \
+ $(srcdir)/fastjar.info
diff --git a/fastjar/Makefile.in b/fastjar/Makefile.in
index 2e295a25c71..2260777ed82 100644
--- a/fastjar/Makefile.in
+++ b/fastjar/Makefile.in
@@ -60,6 +60,8 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
+GENINSRC_FALSE = @GENINSRC_FALSE@
+GENINSRC_TRUE = @GENINSRC_TRUE@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
@@ -189,6 +191,20 @@ EXTRA_DIST = $(man_MANS)
TEXI2POD = perl $(srcdir)/../contrib/texi2pod.pl
POD2MAN = pod2man --center="GNU" --release="gcc-@gcc_version@"
+@GENINSRC_FALSE@STAMP_GENINSRC =
+
+
+# GCC LOCAL CHANGE
+# The following commands allow us to release tarballs with the man pages
+# and info documentation prebuilt. This feature is enabled via
+# --enable-generated-files-in-srcdir in the configure script.
+@GENINSRC_TRUE@STAMP_GENINSRC = stamp-geninsrc
+
+CLEANFILES = stamp-geninsrc
+MAINTAINERCLEANFILES = $(srcdir)/jar.1 \
+ $(srcdir)/grepjar.1 \
+ $(srcdir)/fastjar.info
+
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
@@ -601,7 +617,7 @@ distcleancheck: distclean
exit 1; } >&2
check-am: all-am
check: check-am
-all-am: Makefile $(INFO_DEPS) $(PROGRAMS) $(MANS) config.h
+all-am: Makefile $(INFO_DEPS) $(PROGRAMS) $(MANS) config.h all-local
installdirs:
$(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(infodir) $(DESTDIR)$(man1dir)
@@ -622,6 +638,7 @@ install-strip:
mostlyclean-generic:
clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES)
@@ -629,6 +646,7 @@ distclean-generic:
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
clean: clean-am
clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
@@ -707,19 +725,20 @@ uninstall-am: uninstall-binPROGRAMS uninstall-info-am uninstall-man
uninstall-man: uninstall-man1
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic ctags dist dist-all dist-gzip dist-info distcheck \
- distclean distclean-compile distclean-generic distclean-hdr \
- distclean-tags distcleancheck distdir distuninstallcheck dvi \
- dvi-am info info-am install install-am install-binPROGRAMS \
- install-data install-data-am install-exec install-exec-am \
- install-info install-info-am install-man install-man1 \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-aminfo \
- maintainer-clean-generic mostlyclean mostlyclean-aminfo \
- mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
- tags uninstall uninstall-am uninstall-binPROGRAMS \
- uninstall-info-am uninstall-man uninstall-man1
+.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
+ clean-binPROGRAMS clean-generic ctags dist dist-all dist-gzip \
+ dist-info distcheck distclean distclean-compile \
+ distclean-generic distclean-hdr distclean-tags distcleancheck \
+ distdir distuninstallcheck dvi dvi-am info info-am install \
+ install-am install-binPROGRAMS install-data install-data-am \
+ install-exec install-exec-am install-info install-info-am \
+ install-man install-man1 install-strip installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-aminfo maintainer-clean-generic mostlyclean \
+ mostlyclean-aminfo mostlyclean-compile mostlyclean-generic pdf \
+ pdf-am ps ps-am tags uninstall uninstall-am \
+ uninstall-binPROGRAMS uninstall-info-am uninstall-man \
+ uninstall-man1
%.1: %.pod
@@ -734,6 +753,14 @@ jar.pod: $(srcdir)/fastjar.texi
grepjar.pod: $(srcdir)/fastjar.texi
-$(TEXI2POD) -D grepjar $< > $@
+
+all-local: $(STAMP_GENINSRC)
+
+stamp-geninsrc: jar.1 grepjar.1 fastjar.info
+ -cp -p $(top_builddir)/jar.1 $(srcdir)/jar.1
+ -cp -p $(top_builddir)/grepjar.1 $(srcdir)/grepjar.1
+ -cp -p $(top_builddir)/fastjar.info $(srcdir)/fastjar.info
+ touch $@
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/fastjar/configure b/fastjar/configure
index b4417364cb0..8c597c3a558 100755
--- a/fastjar/configure
+++ b/fastjar/configure
@@ -308,7 +308,7 @@ ac_includes_default="\
# include <unistd.h>
#endif"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE am__leading_dot CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE RM CP CHMOD MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT fastjar_warn_cflags CPP EGREP ZLIBS ZDEPS ZINCS gcc_version LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE am__leading_dot CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE RM CP CHMOD MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT fastjar_warn_cflags CPP EGREP ZLIBS ZDEPS ZINCS GENINSRC_TRUE GENINSRC_FALSE gcc_version LIBOBJS LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -848,6 +848,10 @@ Optional Features:
--enable-dependency-tracking Do not reject slow dependency extractors
--enable-maintainer-mode enable make rules and dependencies not useful
(and sometimes confusing) to the casual installer
+ --enable-generated-files-in-srcdir
+ put copies of generated files in source dir
+ intended for creating source tarballs for users
+ without texinfo, perl, bison or flex.
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
@@ -4702,6 +4706,36 @@ fi
+# GCC LOCAL CHANGE
+# We would like to our source tree to be readonly. However when releases or
+# pre-releases are generated, the man pages need to be included as they are
+# converted from the texi files via perl which we don't require end users to
+# have installed.
+# Therefore we have --enable-generated-files-in-srcdir to do just that.
+
+echo "$as_me:$LINENO: checking whether to place generated files in the source directory" >&5
+echo $ECHO_N "checking whether to place generated files in the source directory... $ECHO_C" >&6
+ # Check whether --enable-generated-files-in-srcdir or --disable-generated-files-in-srcdir was given.
+if test "${enable_generated_files_in_srcdir+set}" = set; then
+ enableval="$enable_generated_files_in_srcdir"
+ generated_files_in_srcdir=$enableval
+else
+ generated_files_in_srcdir=no
+fi;
+
+echo "$as_me:$LINENO: result: $generated_files_in_srcdir" >&5
+echo "${ECHO_T}$generated_files_in_srcdir" >&6
+
+
+if test x$generated_files_in_srcdir = xyes; then
+ GENINSRC_TRUE=
+ GENINSRC_FALSE='#'
+else
+ GENINSRC_TRUE='#'
+ GENINSRC_FALSE=
+fi
+
+
# Get the version trigger filename from the toplevel
if test "${with_gcc_version_trigger+set}" = set; then
gcc_version_trigger=$with_gcc_version_trigger
@@ -4825,6 +4859,13 @@ echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined.
Usually this means the macro was only invoked conditionally." >&2;}
{ (exit 1); exit 1; }; }
fi
+if test -z "${GENINSRC_TRUE}" && test -z "${GENINSRC_FALSE}"; then
+ { { echo "$as_me:$LINENO: error: conditional \"GENINSRC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"GENINSRC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+fi
: ${CONFIG_STATUS=./config.status}
ac_clean_files_save=$ac_clean_files
@@ -5404,6 +5445,8 @@ s,@EGREP@,$EGREP,;t t
s,@ZLIBS@,$ZLIBS,;t t
s,@ZDEPS@,$ZDEPS,;t t
s,@ZINCS@,$ZINCS,;t t
+s,@GENINSRC_TRUE@,$GENINSRC_TRUE,;t t
+s,@GENINSRC_FALSE@,$GENINSRC_FALSE,;t t
s,@gcc_version@,$gcc_version,;t t
s,@LIBOBJS@,$LIBOBJS,;t t
s,@LTLIBOBJS@,$LTLIBOBJS,;t t
diff --git a/fastjar/configure.ac b/fastjar/configure.ac
index 93630345eec..112c098ecc0 100644
--- a/fastjar/configure.ac
+++ b/fastjar/configure.ac
@@ -67,6 +67,26 @@ AC_SUBST(ZLIBS)
AC_SUBST(ZDEPS)
AC_SUBST(ZINCS)
+# GCC LOCAL CHANGE
+# We would like to our source tree to be readonly. However when releases or
+# pre-releases are generated, the man pages need to be included as they are
+# converted from the texi files via perl which we don't require end users to
+# have installed.
+# Therefore we have --enable-generated-files-in-srcdir to do just that.
+
+AC_MSG_CHECKING([whether to place generated files in the source directory])
+ dnl generated-files-in-srcdir is disabled by default
+ AC_ARG_ENABLE(generated-files-in-srcdir,
+[ --enable-generated-files-in-srcdir
+ put copies of generated files in source dir
+ intended for creating source tarballs for users
+ without texinfo, perl, bison or flex.],
+ generated_files_in_srcdir=$enableval,
+ generated_files_in_srcdir=no)
+
+AC_MSG_RESULT($generated_files_in_srcdir)
+AM_CONDITIONAL(GENINSRC, test x$generated_files_in_srcdir = xyes)
+
# Get the version trigger filename from the toplevel
if test "${with_gcc_version_trigger+set}" = set; then
gcc_version_trigger=$with_gcc_version_trigger
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 522fb913f5a..0b58134625f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,3171 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-04-18 Alan Modra <amodra@bigpond.net.au>
+
+ PR bootstrap/14992
+ * configure.ac: Define HAVE_LD_AS_NEEDED only for linux.
+ * configure: Regenerate.
+ * gcc.c (init_gcc_specs): Revert earlier change.
+
+2004-04-18 Mark Mitchell <mark@codesourcery.com>
+
+ PR other/14918
+ * doc/invoke.texi (-fprofile-generate): Document requirement to
+ use -fprofile-generate when linking.
+
+ PR bootstrap/14992
+ * gcc.c (init_gcc_specs): Only honor HAVE_LD_AS_NEEDED on
+ GNU/Linux.
+
+ * doc/extend.texi (Strong Using): Warn users against using this
+ feature.
+
+2004-04-17 Richard Sandiford <rsandifo@redhat.com>
+
+ * configure.ac (gcc_cv_ld_as_needed): Use AC_CACHE_CHECK.
+ * configure: Regenerate.
+
+2004-04-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config.gcc (i[34567]86-*-solaris2*): Default to DWARF-2
+ debugging on Solaris 7 and up.
+
+2004-04-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * doc/install.texi (Specific, mips-sgi-irix5): Reflect working
+ IRIX 5 port.
+ Remove -save-temps workaround, handled automatically.
+ Require GNU binutils 2.15 for debugging.
+ Remove SGI make warnings since GNU make is now required.
+ (Specific, mips-sgi-irix6): Some markup fixes.
+ Describe MIPSpro C problems and workarounds.
+ Mention working O32 ABI support.
+ Recommend GNU as 2.15 for O32 with debugging.
+ Remove description of fixed structure pass/return bug.
+
+2004-04-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * aclocal.m4 (gcc_AC_PROG_GNAT): Check if ${CC} produces object
+ file for Ada compilation.
+ Fix gcc_cv_cc_supports_ada spelling.
+ * configure: Regenerate.
+
+2004-04-14 Zack Weinberg <zack@codesourcery.com>
+
+ PR 14936
+ Backport from mainline:
+ 2004-03-12 Matt Austern <austern@apple.com>
+
+ * varasm.c (make_decl_one_only): Don't use DECL_COMMON if
+ we're compiling for a SUPPORTS_ONE_ONLY target.
+
+2004-04-09 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Look only at
+ mode argument.
+ * config/ia64/ia64.c (ia64_hpux_file_end): Check
+ TREE_SYMBOL_REFERENCED on DECL_ASSEMBLER_NAME, not DECL_NAME.
+
+2004-04-08 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/invoke.texi (Precompiled Headers): Warn about known
+ problems.
+
+2004-04-08 Joel Sherrill <joel@oarcorp.com>
+
+ PR ada/14538
+ * ada/5rosinte.adb: Remove fake mprotect() body.
+ * ada/5rosinte.ads: Add SA_SIGINFO. Make pthread_key_t a type
+ which can be set since Finalize_TCB in 7staprop.adb does not
+ go through the Set_Specific interface.
+ * ada/5rtpopsp.adb: Rewrite to use new interface.
+ * ada/init.c: Reorder so the simple single OS conditional __rtems__
+ is tested before more complex ones which mix UNIX and embedded
+ systems in the conditional.
+
+
+2004-04-08 Joel Sherrill <joel@oarcorp.com>
+
+ PR ada/14665
+ * ada/osint.adb (Find_Program_Name): Rework to properly handle
+ filenames which end in .exe or have versioning suffixes like VMS.
+
+2004-04-08 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * fixinc/inclhack.def (rpc_xdr_lvalue_cast_a,
+ rpc_xdr_lvalue_cast_b): New fixes.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/rpc/xdr.h: Add new tests.
+
+2004-04-06 Mark Mitchell <mark@codesourcery.com>
+
+ * config/darwin.h (LINK_COMMAND_SPEC): Change c++filt3 to c++filt.
+
+2004-04-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * doc/install.texi: Update HP-UX 11 installation procedure.
+
+2004-04-05 Jakub Jelinek <jakuB@redhat.com>
+ John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR optimization/13424 (hppa), bootstrap/14462, c/14828
+ * pa.md: Use replace_equiv_address to retain the attributes of the
+ memory operands used in the split and peephole2 patterns for optimizing
+ the pre-reload movstrsi, movstrdi, clrstrsi and clrstrdi patterns.
+
+2004-04-05 Alexandre Oliva <aoliva@redhat.com>
+
+ * cppinit.c (cpp_read_main_file): Return file name obtained by
+ read_original_filename. Missed in 2004-02-04's check in to 3.4
+ branch by Per Bothner.
+
+2004-04-05 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sol2-bi.h (PREFERRED_DEBUGGING_TYPE): Set
+ to DWARF2_DEBUG unconditionally.
+ (ASM_DEBUG_SPEC): Set the default to --gdwarf2 unconditionally.
+
+2004-04-04 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14804
+ * varasm.c (initializer_constant_valid_p): Allow NOP_EXPRs to
+ RECORD_TYPEs.
+
+2004-04-02 Jakub Jelinek <jakub@redhat.com>
+ Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/13424, optimization/12419
+ * explow.c (maybe_set_unchanging): Revert 2003-04-07 patch.
+ Set RTX_UNCHANGING_P even for read-only DECL_EXTERNAL decls.
+ * expr.c (store_constructor): When clearing aggregate because
+ of an incomplete or mostly zero constructor, do the clearing
+ without /u flag and then emit a blockage.
+
+2004-04-01 Alan Modra <amodra@bigpond.net.au>
+ Jakub Jelinek <jakub@redhat.com>
+
+ * gcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with
+ -lgcc --as-needed -lgcc_s --no-as-needed by default.
+ * configure.ac (HAVE_LD_AS_NEEDED): Check for ld --as-needed.
+ * configure: Rebuilt.
+ * config.in: Rebuilt.
+ * Makefile.in (stage1-start): Copy also libgcc_s*$(SHLIB_EXT).
+ (stage2-start, stage3-start, stage4-start): Likewise.
+ (stageprofile-start, stagefeedback-start): Likewise.
+
+2004-04-01 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0.
+ * config/sparc/linux.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
+ * config/sparc/linux64.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
+ * config/sparc/sol2.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
+ (SOLARIS_CONVERSION_LIBFUNCS): Rename to SUN_CONVERSION_LIBFUNCS.
+ * config/sparc/sparc.c (sparc_init_libfuncs): Initialize optabs
+ with _Q_qtoll, _Q_qtoull and _Q_lltoq if DITF_CONVERSION_LIBFUNCS.
+ * config.gcc (sparc-*-linux*): Revert 2004-03-23 change.
+ * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Likewise.
+ * config/sparc/t-linux: Removed.
+
+2004-04-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/14755
+ * fold-const.c (fold) <EQ_EXPR>: Properly compute newconst in
+ "bitfld++ == const" to "++bitfld == const + incr" transformations.
+
+2004-03-30 Aldy Hernandez <aldyh@redhat.com>
+
+ PR 14219
+ * c-typeck.c (build_binary_op): Do not allow comparisons of
+ vectors.
+
+2004-03-26 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR target/14206
+ * doc/install.texi (Specific): Document that exec-shield-randomize
+ interferes with precompiled headers.
+
+2004-03-26 Richard Henderson <rth@redhat.com>
+
+ PR 11527
+ * c-typeck.c (pop_init_level): Emit pending init elements earlier
+ rather than later.
+
+2004-03-25 Jakub Jelinek <jakub@redhat.com>
+
+ * config.gcc (sparc-*-linux*): Add sparc/t-linux to tmake_file.
+ * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Set.
+ * config/sparc/t-linux: New file.
+
+2004-03-25 Jan Hubicka <jh@suse.cz>
+
+ PR debug/13974
+ * cfgrtl.c (try_redirect_by_replacing_jump,
+ force_nonfallthru_and_redirect, commit_one_edge_insertion,
+ cfg_layout_merge_blocks): Do not attach any line number information
+ to newly inserted instructions.
+ * emit-rtl.c (emit_insn*_before, emit_insn*_after): Rename to
+ emit_insn_*_noloc.
+ (emit_*insn_before, emit_insn*_after): New.
+ (emit_*insn_before_setloc, emit_*insn_after_setloc): Do not overwrite
+ existing locators.
+ * rtl.h (emit_*insn_before_noloc, emit_*insn_after_noloc): Declare.
+ (emit_*insn_before_sameloc, emit_*insn_after_sameloc): Kill.
+
+2004-03-24 Steven Bosscher <stevenb@suse.de>
+
+ PR pch/14137
+ * c-pch.c (struct c_pch_validity): New flags_info field.
+ (FLAG_UNIT_AT_A_TIME_SET): New definition.
+ (pch_init): Write out the flags_info field to the PCH. Set the
+ FLAG_UNIT_AT_A_TIME_SET bit of the field if flag_unit_at_a_time
+ is set.
+ (c_common_valid_pch): Make sure the flag settings used for compiling
+ the PCH are the same as those used in the current compilation.
+
+2004-03-24 Alexandre Oliva <aoliva@redhat.com>
+
+ PR preprocessor/14438
+ * cpplib.c (do_pragma): Remove line_change call after pragma
+ handler.
+
+2004-03-23 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * doc/extend.texi (ARM Built-in Functions): Replace with correct
+ declarations.
+
+2004-03-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR optimization/14669
+ * fold-const.c (fold): Only unwiden integer comparisons for equality
+ and inequality operators, or when the signedness doesn't change.
+
+2004-03-23 Jason Merrill <jason@redhat.com>
+
+ PR c++/14587
+ * config/i386/winnt.c (associated_type): Look for attributes on
+ the TYPE_MAIN_VARIANT of *this.
+
+2004-03-21 Mark Mitchell <mark@codesourcery.com>
+
+ PR c/13129
+ * c-decl.c (warn_if_shadowing): Don't warn about a new declaration
+ of a file-scope entity.
+
+2004-03-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/14069
+ * c-decl.c (finish_struct): Change type of incorrect flexible array
+ field into error_mark_node.
+
+2004-03-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+ PR target/14260
+ * config/rtems.h: Add STD_LIB_SPEC and LIB_SPEC.
+
+2004-03-22 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR middle-end/14470
+ * expr.c (mark_queue): New function.
+ (emit_insns_enqueued_after_mark): New function replacing
+ emit_queue. Clear the body of emitted queued insns.
+ (emit_queue): Call emit_insns_enqueued_after_mark.
+ (store_expr): Mark the increment queue on entry. Emit
+ only the incrementations queued when expanding the source.
+
+2004-03-22 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * gcov-io.h: Update copyright year.
+
+2004-03-22 Danny Smith <dannysmith@users.sourceforge.net>
+
+ PR target/14291
+ * gcov-io.h (gcov_truncate): Define ftruncate as _chsize for
+ __MINGW32__.
+
+2004-03-21 Roger Sayle <roger@eyesopen.com>
+
+ PR target/13889
+ * cse.c (fold_rtx): Avoid substituting constants into unary
+ conversion operations.
+
+2004-03-21 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * frontends.texi: Add missing line.
+
+2004-03-21 Zack Weinberg <zack@codesourcery.com>
+ Chris Devers <cdevers@pobox.com>
+ Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/frontends.texi: Rewrite.
+ * doc/gcc.texi: Update last modification date.
+
+2004-03-20 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR c/12373
+ * c-typeck.c (tagged_types_tu_compatible_p): Don't use
+ DECL_ORIGINAL_TYPE if there isn't one.
+
+2004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR other/14630
+ * doc/install.texi: Add info directory category and entry.
+
+2004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/14635
+ * builtins.def (nan, nanf, nanl, nans, nansf, nansl): Change to
+ DEF_GCC_BUILTIN.
+
+2004-03-18 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.c (pointer_int_sum): Do not complain about using
+ pointers to pointers-to-members.
+
+ * c-decl.c (grokdeclarator): Do not complain about redeclaring
+ visible "static" identifiers "extern" in a local scope.
+ * dwarf2out.c (loc_descriptor_from_tree): Handle pre- and
+ post-increments/decrements.
+
+2004-03-17 Jakub Jelinek <jakub@redhat.com>
+
+ * config/rs6000/t-linux64 (bispecs): Don't add -mlong-double-128 for
+ 32-bit builds when defaulting to 32-bit.
+
+2004-03-17 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/14599
+ * config/mips/mips.md (UNSPEC_GP): New constant.
+ * config/mips/mips.c (CONST_GP_P): Expect the CONST to contain
+ an UNSPEC instead of (reg $gp).
+ (mips16_gp_pseudo_reg): Change accordingly.
+ (print_operand): Print $gp directly when handling CONST_GP_P.
+
+2004-03-16 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14481
+ * fold-const.c (fold): Set TREE_NO_UNUSED_WARNING on implicitly
+ generated COMPOUND_EXPRs.
+
+2004-03-16 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ PR bootstrap/12974
+ * Makefile.in: Pass $(INCLUDES) down to libgcc.mk explicitly.
+
+2004-03-16 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/14535
+ * except.c (collect_one_action_chain): Create action record for
+ cleanup outer of exception spec.
+
+2004-03-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+ PR target/14577
+ * config.gcc: Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff.
+
+2004-03-15 Richard Henderson <rth@redhat.com>
+
+ PR target/14547
+ * target.h (struct gcc_target): Move calls substructure before
+ booleans. Add split_complex_arg.
+ * function.c (assign_parms, split_complex_args): Use it.
+ * calls.c (expand_call): Likewise.
+ (split_complex_values): Likewise. Check for splittable types
+ before allocating memory.
+ (split_complex_types): Likewise.
+ * system.h (SPLIT_COMPLEX_ARGS): Poison.
+ * expr.h (SPLIT_COMPLEX_ARGS): Remove.
+ * target-def.h (TARGET_SPLIT_COMPLEX_ARG): New.
+ * config/alpha/alpha.c (alpha_split_complex_arg): New.
+ (TARGET_SPLIT_COMPLEX_ARG): New.
+ * config/alpha/alpha.h (SPLIT_COMPLEX_ARGS): Remove.
+ * config/rs6000/rs6000.c (TARGET_SPLIT_COMPLEX_ARG): New.
+ (rs6000_override_options): Zap it for non-AIX.
+ (rs6000_function_value): Use targetm.calls.split_complex_arg.
+ * config/rs6000/rs6000.h (SPLIT_COMPLEX_ARGS): Remove.
+ * config/xtensa/xtensa.c (TARGET_SPLIT_COMPLEX_ARG): New.
+ * config/xtensa/xtensa.h (SPLIT_COMPLEX_ARGS): Remove.
+ * doc/tm.texi (TARGET_SPLIT_COMPLEX_ARG): Modify from old
+ SPLIT_COMPLEX_ARGS entry.
+
+2004-03-15 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * config/sparc/sparc.h: Rework comments about the code model
+ in 64-bit environment and the mode 'Pmode'.
+ * doc/invoke.texi (SPARC options): Rework description of the
+ different code models supported in 64-bit environment.
+
+2004-03-14 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/contrib.texi, doc/extend.texi, doc/gcov.texi,
+ doc/install.texi, doc/invoke.texi, doc/makefile.texi,
+ doc/sourcebuild.texi, doc/tm.texi, doc/trouble.texi: Capitalize
+ "gcc", "g++" and "g77" or mark up with appropriate markup. Adjust
+ wording and grammar.
+
+2004-03-13 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/14114
+ * c-decl.c (merge_decls): Do not copy the C_DECL_INVISIBLE flag
+ from the new decl to the old decl.
+ (pushdecl): Use lookup_name to search for a previous decl with the
+ same identifier.
+
+2004-03-13 Dara Hazeghi <dhazeghi@yahoo.com>
+
+ * doc/install.texi: Note status of -fnew-ra.
+
+2004-03-13 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR middle-end/14470
+ * expr.c (store_expr): Call emit_queue before generating the move
+ from the temporary to the original target. Protect the temporary
+ from emit_queue.
+
+2004-03-13 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/14533
+ * config/s390/s390.c (legitimize_pic_address): Don't abort on UNSPEC
+ other than UNSPEC_GOTOFF.
+
+2004-03-13 Dean Ferreyra <dferreyra@igc.org>
+
+ PR target/14047
+ * config/avr/avr.c (avr_progmem_p): Add "attributes" parameter.
+ (avr_insert_attributes): Pass "attributes" to avr_progmem_p.
+ * config/avr/avr-protos.h (avr_progmem_p): Change prototype.
+
+2004-03-12 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/install.texi (*-ibm-aix*): Document assembler and achiver
+ fixes required by libstdc++ and update installation instructions
+ for libstdc++.a. Document use of Bash to speed up configuration.
+
+2004-03-12 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/tm.texi (registers) <Values in Registers>: Add
+ entry for REGMODE_NATURAL_SIZE.
+
+2004-03-11 Richard Henderson <rth@redhat.com>
+
+ PR target/14539
+ * config/alpha/alpha.h (STACK_BOUNDARY): Set to 128.
+
+2004-03-12 Alan Modra <amodra@bigpond.net.au>
+
+ * real.c (encode_ibm_extended): Do round low word.
+
+2004-03-11 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/14477
+ * except.c (remove_unreachable_regions): Look thru CALL_PLACEHOLDER.
+
+2004-03-11 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/14496
+ * config/mips/mips.h (UNITS_PER_FPVALUE): Fix value for
+ TARGET_SINGLE_FLOAT.
+
+2004-03-11 Kelley Cook <kcook@gcc.gnu.org>
+
+ PR other/14536
+ * configure: Regenerated with autoconf 2.57.
+ * config.in: Regenerated with autoheader 2.57.
+
+2004-03-11 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Don't
+ bump retaddr here.
+
+2004-03-11 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/t-linux64 (LIB2FUNCS_EXTRA): Add darwin-ldouble.c.
+ (SHLIB_MAPFILES): Add libgcc-ppc64.ver.
+ (SHLIB_MKMAP_OPTS): Delete.
+ (TARGET_LIBGCC2_CFLAGS): Add -specs.
+ (bispecs): Add rule.
+ * config/rs6000/libgcc-ppc64.ver: New file.
+ * config/rs6000/ppc64-fp.c (__fixtfdi, __floatditf): New functions.
+ (__floatdidf, __floatdisf): Optimize multiply.
+ (__fixunstfdi): New function.
+ * config/rs6000/rs6000.c (rs6000_complex_function_value): Allow for
+ real and imag parts larger than one register.
+ (function_arg): Correct type of reg used when fp arg split partially
+ to stack.
+ * config/rs6000/darwin-ldouble.c: Protect with #if !_SOFT_FLOAT
+ and __MACH__ or __powerpc64__.
+
+2004-03-10 Richard Henderson <rth@redhat.com>
+
+ PR c/14517
+ * c-decl.c (grokdeclarator): Don't warn for duplicate qualifiers
+ except for pedantic c90 mode.
+
+2004-03-10 Andrew Haley <aph@redhat.com>
+
+ PR optimization/14381
+ * function.c (expand_function_end): Emit a blockage insn before
+ the epilogue when -fnon-call-exceptions is used.
+
+2004-03-10 Joel Sherrill <joel@oarcorp.com>
+
+ PR target/14480
+ * config.gcc (powerpc*-*-rtems*): Use rs6000/t-rtems.
+
+2004-03-10 Roman Zippel <zippel@linux-m68k.org>
+
+ PR bootstrap/12371
+ * config/m68k/m68k.h (FIXED_REGISTERS): Add arg pointer.
+ (CALL_USED_REGISTERS): Likewise.
+ (REG_CLASS_CONTENTS): Likewise.
+ (REG_ALLOC_ORDER): New.
+ (REGNO_REG_CLASS): Use regno_reg_class.
+ * config/m68k/m68k.c: Add regno_reg_class array.
+
+2004-03-10 Alan Modra <amodra@bigpond.net.au>
+ Hartmut Penner <hpenner@de.ibm.com>
+
+ * config/rs6000/rs6000.c (invalid_gpr_mem): New function.
+ (base_reg_operand): New function.
+ (legitimate_offset_address_p): Don't test modes in an attempt to
+ distinguish gpr vs fpr mem loads/stores. Don't prohibit offsets
+ invalid for 64-bit gpr loads/stores here.
+ (secondary_reload_class): Add "inp" parameter. Generate a reload
+ for 64-bit gpr loads/stores.
+ * config/rs6000/rs6000.h (SECONDARY_RELOAD_CLASS): Delete.
+ (SECONDARY_INPUT_RELOAD_CLASS, SECONDARY_OUTPUT_RELOAD_CLASS): Define.
+ (PREDICATE_CODES): Add invalid_gpr_mem and base_reg_operand.
+ (DISPARAGE_RELOAD_CLASS): Define.
+ * config/rs6000/rs6000-protos.h (secondary_reload_class): Update.
+ * config/rs6000/rs6000.md (movdf_hardfloat64): Correct attrs.
+ Add m->b alternative and split.
+ (movdi_internal64): Replace r->m and m->r with r->Y and Y->r.
+ Add m->b alternative and split.
+ * reload.c (find_reloads): Invoke DISPARAGE_RELOAD_CLASS.
+
+2004-03-10 Hans-Peter Nilsson <hp@axis.com>
+
+ PR other/14474
+ * doc/md.texi (Pattern Ordering, Dependent Patterns)
+ (Jump Patterns, Looping Patterns): Wrap in separate "@ifset
+ INTERNALS".
+
+2004-03-09 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/hpux.h (MULTILIB_DEFAULTS): Define.
+ (LIBGCC_SPEC): Update to match.
+
+2004-03-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+ * config/h8300/t-rtems (h8300-*-rtems*): New.
+ * config.gcc: Use config/h8300/t-rtems.
+
+2004-03-09 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/14289
+ * c-typeck.c (c_mark_addressable): A register variable should
+ be considered global if its not automatic, i.e. TREE_PUBLIC,
+ TREE_STATIC or DECL_EXTERNAL.
+ * function.c (put_var_into_stack): Call abort when placing a
+ hard register into the stack, if x_parm_reg_stack_loc is NULL.
+
+2004-03-08 David Edelsohn <edelsohn@gnu.org>
+
+ * collect2.c (main): Only export initfunc and finifunc if
+ LD_INIT_SWITCH not defined.
+ (scan_prog_file): Only export constructors and destructors if
+ LD_INIT_SWITCH not defined. Only export symbols not found in
+ shared objects.
+
+2004-03-09 Alan Modra <amodra@bigpond.net.au>
+
+ * doc/tm.texi (INIT_CUMULATIVE_ARGS): Update doco.
+ * calls.c (expand_call): Pass n_named_args to INIT_CUMULATIVE_ARGS.
+ (emit_library_call_value_1): Likewise pass nargs.
+ * expr.c (block_move_libcall_safe_for_call_parm): Pass 3 here.
+ * function.c (assign_parms): Pass -1 to INIT_CUMULATIVE_ARGS.
+ * config/rs6000/rs6000.c (init_cumulative_args): Use n_named_args
+ parameter instead of scanning TYPE_ARGS_TYPES to count args.
+ * config/rs6000/rs6000-protos.h (init_cumulative_args): Update
+ prototype.
+ * config/rs6000/rs6000.h (INIT_CUMULATIVE_ARGS): Pass extra arg.
+ (INIT_CUMULATIVE_INCOMING_ARGS): Set extra arg to 1000.
+ (INIT_CUMULATIVE_LIBCALL_ARGS): Set extra arg to 0.
+ * config/sh/sh.c (sh_output_mi_thunk): Pass 1 as n_named_args to
+ INIT_CUMULATIVE_ARGS.
+ * config/alpha/alpha.h (INIT_CUMULATIVE_ARGS): Update.
+ * config/alpha/unicosmk.h, config/alpha/vms.h, config/arc/arc.h,
+ config/arm/arm.h, config/avr/avr.h, config/c4x/c4x.h,
+ config/cris/cris.h, config/d30v/d30v.h, config/dsp16xx/dsp16xx.h,
+ config/fr30/fr30.h, config/frv/frv.h, config/h8300/h8300.h,
+ config/i370/i370.h, config/i386/i386.h, config/i860/i860.h,
+ config/i960/i960.h, config/ia64/ia64.h, config/ip2k/ip2k.h,
+ config/iq2000/iq2000.c, config/iq2000/iq2000.h, config/m32r/m32r.h,
+ config/m68hc11/m68hc11.h, config/m68k/m68k.h, config/mcore/mcore.h,
+ config/mips/mips.h, config/mmix/mmix.h, config/mn10300/mn10300.h,
+ config/ns32k/ns32k.h, config/pa/pa.h, config/pdp11/pdp11.h,
+ config/s390/s390.h, config/sh/sh.h, config/sparc/sparc.h,
+ config/stormy16/stormy16.h, config/v850/v850.h, config/vax/vax.h,
+ config/xtensa/xtensa.h: Likewise.
+
+2004-03-09 Alan Modra <amodra@bigpond.net.au>
+
+ PR debug/11983
+ * dwarf2out.c (enum dw_val_class): Rename dw_val_class_float to
+ dw_val_class_vec. Replace use throughout file.
+ (dw_float_const): Delete.
+ (dw_vec_const): New.
+ (dw_val_struct_union): Rename val_float to val_vec. Replace use
+ throughout file.
+ (add_AT_vec): Rename from add_AT_float. Add elt_size param.
+ (same_dw_val_p): Adjust vec comparison. Use memcmp.
+ (size_of_die): Adjust dw_val_class_vec sizing.
+ (output_die): Output dw_val_class_vec.
+ (insert_int, extract_int, insert_float): New functions.
+ (add_const_value_attribute): Use insert_float for CONST_DOUBLE.
+ Handle CONST_VECTOR.
+ (add_location_or_const_value_attribute): Handle CONST_VECTOR.
+
+2004-03-08 Joel Sherrill <joel@oarcorp.com>
+
+ PR target/14480
+ * config/rs6000/t-rtems: Add missing file on branch.
+
+2004-03-08 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold) <EQ_EXPR>: Rewrite optimization to transform
+ "foo++ == const" into "++foo == const+incr".
+
+2004-03-08 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*extendqidi2_short_displ"): Add CC clobber.
+ ("*extendqisi2_short_displ"): Likewise.
+
+2004-03-08 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * expr.c (highest_pow2_factor_for_type): Rename into
+ highest_pow2_factor_for_target. Use DECL_ALIGN instead of
+ TYPE_ALIGN when the target is a COMPONENT_REF.
+ (expand_assignment): Ajust call to highest_pow2_factor_for_type.
+
+2004-03-08 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c: Formatting fix.
+ (legitimate_offset_address_p): Correct offset range check.
+
+ * config/rs6000/rs6000.c (rs6000_override_options): Don't override
+ -msoft-float by -mcpu. Consolidate similar code for MASK_MULTIPLE
+ and MASK_STRING.
+
+2004-03-07 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md (ashrdi3): Do not call ashrdi3_no_power
+ for little endian.
+ ("ashrdi3_no_power"): Disable for little endian.
+ (ashrdi3): Same.
+
+2004-03-07 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_parse_abi_options): SPE and
+ AltiVec abi cannot co-exist.
+
+ * config/rs6000/eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Same.
+
+2004-03-07 Hans-Peter Nilsson <hp@axis.com>
+
+ PR target/14471
+ * configure.ac (Target-specific assembler checks) <cris-*-*>: New
+ case, checking for -no-mul-bug-abort option.
+ * configure, config.in: Regenerate.
+ * doc/invoke.texi (CRIS Options): Document -mmul-bug-workaround
+ and -mno-mul-bug-workaround.
+ * config/cris/cris.md ("smulsi3_highpart", "umulsi3_highpart")
+ ("mulsidi3", "umulsidi3"): Prefix output template with "%!".
+ ("umulhisi3", "umulqihi3", "mulsi3", "mulqihi3", "mulhisi3"):
+ Ditto. Make attribute "slottable" dependent on TARGET_MUL_BUG.
+ * config/cris/mulsi3.asm (__Mul) [__CRIS_arch_version >= 10]: Make
+ sure mulu.d is not last on cache-line.
+ * config/cris/cris.h (ASM_SPEC): Translate -mno-mul-bug-workaround
+ into -no-mul-bug-abort depending on HAVE_AS_MUL_BUG_ABORT_OPTION.
+ (TARGET_MASK_MUL_BUG, TARGET_MUL_BUG): New macros.
+ (TARGET_SWITCHES): New options -mmul-bug-workaround and
+ -mno-mul-bug-workaround.
+ (TARGET_DEFAULT): Include TARGET_MASK_MUL_BUG.
+ (PRINT_OPERAND_PUNCT_VALID_P): Include '!'.
+ * config/cris/cris.c (cris_operand_extend_operator): Clarify
+ relation to MULT in head comment.
+ (cris_op_str): Abort for MULT.
+ (cris_print_operand) <case '!'>: New case.
+
+2004-03-07 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md ("*lshrsi3_const"): Disable for 68HC12.
+ ("*lshrsi3"): Also accept an immediate for 68HC12.
+ ("*ashrsi3_const"): Likewise.
+ ("*ashrsi3"): Likewise.
+ ("*ashlsi3_const"): Likewise.
+ ("*ashlsi3"): Likewise.
+ ("cmphi_1_hc12"): Compare two hard register by pushing them and
+ comparing with a pop; don't use a split for that.
+ ("cmphi split"): Disable compare split for 68HC12.
+
+ * config/m68hc11/m68hc11.c (m68hc11_notice_update_cc): Invalidate
+ the status operands if they have side effects.
+
+2004-03-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_in_small_data_p): Return false if
+ TARGET_ABICALLS.
+
+2004-03-06 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Use 2,-sp to push
+ the stack register.
+ (expand_prologue): Don't make an interrupt or a trap handler a far
+ symbol.
+ (m68hc11_initial_elimination_offset): Likewise.
+
+2004-03-06 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_in_small_data_p): False for functions.
+
+2004-03-06 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.h (MASK_LONG_DOUBLE_128): New.
+ (TARGET_LONG_DOUBLE_128): New.
+ (TARGET_SWITCHES): Add long-double-{128,64}.
+ (TARGET_HAS_XFLOATING_LIBS): Default to TARGET_LONG_DOUBLE_128.
+ (LONG_DOUBLE_TYPE_SIZE): Honor TARGET_LONG_DOUBLE_128.
+ (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New.
+ (WIDEST_HARDWARE_FP_SIZE): New.
+ (TARGET_CPU_CPP_BUILTINS): Define __LONG_DOUBLE_128__.
+ * config/alpha/alpha.c (override_options): Clear MASK_LONG_DOUBLE_128
+ if TARGET_VAX_FLOAT.
+ * config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): Remove.
+ (TARGET_DEFAULT): Set MASK_LONG_DOUBLE_128.
+
+2004-03-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("load_multiple", "*load_multiple_di",
+ "*load_multiple_si"): Allow only if reload_completed.
+ ("store_multiple", "*store_multiple_di", "*store_multiple_si"):
+ Likewise.
+
+2004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/14465
+ PR c/14114
+ * c-decl (pushdecl): Revert previous change.
+
+2004-03-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.md (icacheflush): Reorder operands to make match_scratch operand
+ last.
+ * pa.h (INITIALIZE_TRAMPOLINE): Remove unnecessary scratch argument
+ from calls to gen_icacheflush.
+
+2004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/14343
+ * config/i386/i386.md (movv2di_internal): Conditionalize on
+ TARGET_SSE, not TARGET_SSE2.
+
+2004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/14114
+ * c-decl (pushdecl): Do not record a previous, not-in-scope,
+ external decl for restoration.
+
+2004-03-05 Waldek Hebisch <hebisch@math.uni.wroc.pl>
+
+ PR middle-end/14203
+ * function.c (uninitialized_vars_warning): Use DECL_RTL_SET_P
+ instead of testing whether DECL_RTL is not NULL.
+
+2004-03-05 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * rtl.h (mem_expr_equal_p): Function prototype added.
+ * cfgcleanup.c (merge_memattrs): New function.
+ (flow_find_cross_jump): Call merge_memattrs for matching insns.
+ * emit-rtl.c (mem_expr_equal_p): New function.
+
+2004-03-05 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (function_arg): Handle 16-byte aligned args.
+ (xtensa_va_start): Initialize __va_stk to ($arg_ptr - 32). Adjust
+ __va_ndx by 2 words when referencing an argument on the stack.
+ (xtensa_va_arg): Handle 16-byte aligned args. Adjust __va_ndx by 2
+ words when an arg on the stack is first seen.
+
+2004-03-05 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR driver/13577
+ * gcc.c (cc1_options): Robustify -auxbase-strip from multiple -o
+ options.
+
+2004-03-04 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (xtensa_return_in_msb): New function.
+ (TARGET_RETURN_IN_MSB): Define to xtensa_return_in_msb.
+
+2004-03-04 Alan Modra <amodra@bigpond.net.au>
+
+ * real.c (encode_ibm_extended): Don't bother rounding low double.
+ * c-cppbuiltin.c (builtin_define_float_constants): Tweak MAX
+ when fmt->pnan < fmt->p.
+
+2004-03-04 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/14406
+ * config/rs6000/rs6000.md (abstf2, abstf2+1): Delete define_insn.
+ (abstf2, abstf2_internal): New define_expand.
+
+2004-03-04 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/14235
+ * expr.c (convert_move): Copy the source to a new pseudo
+ when converting from a sub-word source to a larger-than-word
+ register which conflicts with the source.
+
+2004-03-03 Zack Weinberg <zack@codesourcery.com>
+
+ PR 13728
+ * c-decl.c (diagnose_mismatched_decls): Issue an error for two
+ parameters with the same name, unless one is a forward decl.
+ Do not issue a redundant-redeclaration warning for forward
+ decls of parameters.
+
+2004-03-03 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_override_options): Disable -fweb
+ because it breaks the 32-bit shift patterns that rely on a match_dup.
+ (print_operand): Don't print a * before the base address.
+
+2003-03-03 Richard Henderson <rth@redhat.com>
+
+ PR opt/13862
+ * cselib.c (cselib_record_sets): Don't record multiple sets in
+ asm insns.
+
+2004-03-03 Nicolas Pitre <nico@cam.org>
+
+ * config/arm/ieee754-df.S (muldf3, divdf3): Fix denormalization of
+ small negative values.
+
+2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (___fixunssfsi): Change the
+ threshold to 0x4f.
+
+ Revert:
+ 2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
+ * config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300
+ as well.
+ * config/h8300/lib1funcs.asm (___fixunssfsi): Remove.
+ * config/h8300/t-h8300 (LIB1ASMFUNCS): Remove _fixunssfsi_asm.
+
+2004-03-02 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/11767
+ * coverage.c (coverage_counter_ref): Set MEM_NOTRAP_P.
+ * optabs.c (prepare_cmp_insn): Force trapping memories to registers
+ before the compare, if flag_non_call_exceptions.
+
+2004-03-02 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/14327
+ * stmt.c (expand_computed_goto): Do do_pending_stack_adjust before
+ emitting the label, not after.
+
+2004-03-02 David O'Brien <obrien@FreeBSD.org>
+
+ * config/freebsd-spec.h (FBSD_DYNAMIC_LINKER): Add.
+ * config/alpha/freebsd.h (SUBTARGET_EXTRA_SPECS): Define
+ %(fbsd_dynamic_linker),
+ (LINK_SPEC): Use %(fbsd_dynamic_linker), and sync style with
+ config/i386/freebsd.h
+ * config/arm/freebsd.h: Ditto.
+ * config/i386/freebsd.h: Ditto.
+ * config/i386/freebsd64.h: Ditto.
+ * config/ia64/freebsd.h: Ditto.
+ * config/rs6000/sysv4.h: Ditto.
+ * config/sparc/freebsd.h: Ditto.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_addr_mode): New variable.
+ (m68hc11_mov_addr_mode): Likewise.
+ (m68hc11_override_options): Initialize them based on target.
+ (register_indirect_p): Allow a MEM for indirect addressing modes and
+ use flags to control what is allowed.
+ (m68hc11_small_indexed_indirect_p): Use m68hc11_mov_addr_mode for
+ supported addressing modes.
+ (m68hc11_register_indirect_p): Use m68hc11_addr_mode.
+ (go_if_legitimate_address_internal): Likewise.
+ (m68hc11_indirect_p): Likewise and check the mode.
+ (print_operand): Allow a (MEM (MEM)) and generate indirect addressing.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md (move peephole2): New peepholes to optimize
+ sequences of moves.
+ (add peepholes): New peepholes to optimize sequences adding small
+ constants.
+ (bset peepholes): New peepholes to transform an OR in a bset form
+ (bclr peepholes): Likewise for bclr form.
+ (cmp peepholes): New peepholes to avoid register copies when comparing.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md ("*pushdi_internal"): New insn and split
+ to separate push from moves.
+ ("*pushdf_internal"): Likewise.
+ ("*pushsf_internal"): Likewise.
+ ("*pushsi_internal"): Likewise.
+ ("movdi_internal"): Use define_insn_and_split; non push operand.
+ ("movdf_internal"): Likewise.
+ ("movsf_internal"): Likewise.
+ ("movsi_internal"): Likewise.
+ ("*movhi_68hc12", "*addhi3_68hc12"): Fix and tune constraints
+ ("*addhi3", "*subhi3", "*andhi3_mem", "*iorhi3_mem"): Likewise.
+ ("*ashlsi3_const1", "*lshrsi3_const1"): Likewise.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md ("tstqi_z_used"): Use define_insn_and_split.
+ ("cmphi_z_used", "cmpqi_z_used"): Likewise.
+ ("movstrictsi", "movstricthi", "movstrictqi"): Likewise.
+ ("anddi3", "andsi3", "iordi3", "iorsi3"): Likewise.
+ ("xordi3", "xorsi3", "*logicalsi3_zexthi"): Likewise.
+ ("*logicalsi3_zextqi", "*logicalhi3_zexthi_ashift8"): Likewise.
+ ("logicalhi3_zexthi", "*logicalsi3_silshr16"): Likewise.
+ ("*logicalsi3_silshl16", "*logicalsi3_silshl16_zext"): Likewise.
+ ("*ashldi3_const32", "*ashldi3_const1", "addsi_silshr16"): Likewise.
+ ("addsi_andshr16", "*ashlsi3_const16_zexthi"): Likewise.
+ ("*lshrdi3_const32", "*lshrdi_const1"): Likewise.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md (SOFT_TMP_REGNUM): Define.
+ (SOFT_XY_REGNUM): Define.
+ (cmp split): Use the above instead of hard coded numbers.
+ (8-bit op split): No need to check the mode; allow Q_REG.
+ (ashift split): Adjust the first operand if it uses the SP and we
+ are pushing the shifted value.
+ (plus shift split): Fix when a source is in register D+X.
+ ("doloop_end"): Pass dummy arguments to gen_rtx_NE.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Fix when
+ comparing with Z register.
+
+2004-03-02 Loren James Rittle <ljrittle@acm.org>
+
+ * gcc/doc/install.texi (*-*-freebsd*): Update target information.
+
+2004-03-01 Mark Mitchell <mark@codesourcery.com>
+
+ PR bootstrap/14356
+ * gcc.c (process_command): Remove const-qualification from argv.
+ (main): Likewise.
+
+2004-03-01 Mircea Namolaru <namolaru@il.ibm.com>
+
+ * cfgloop.h (get_var_set_from_bct, is_bct_cond): Declaration of
+ new functions.
+ * cfgloopanal.c: Include loop.h.
+ (get_var_set_from_bct): New function.
+ (is_bct_cond): New function.
+ (blocks_single_set_registers): Handle branch and count jumps.
+ (count_loop_iterations): Likewise.
+ (simple_increment): Likewise
+ * doloop.c (doloop_condition_get): Export.
+ * loop-init.c (fixup_loop_exit_succesor): New function.
+ (loop_optimizer_finalize): Handle loops ending with branch and
+ count jumps.
+ * loop-unroll.c: Include toplev.h
+ (discard_increment): New function.
+ (expand_bct): New function.
+ (peel_loop_completely): Handle the removal of branch and count jumps.
+ (unroll_loop_constant_iterations): Likewise.
+ (unroll_loop_runtime_iterations): Likewise
+ * loop.h (doloop_condition_get): Declare.
+
+2004-02-29 Mark Mitchell <mark@codesourcery.com>
+
+ PR debug/14328
+ * dwarf2out.c (gen_enumeration_type_die): Output all enumeration
+ constants as signed values.
+
+2004-02-29 Mark Mitchell <mark@codesourcery.com>
+
+ PR middle-end/13448
+ * c-tree.h (readonly_warning): Rename to ...
+ (readonly_error): ... this.
+ * c-typeck.c (build_unary_op): Adjust accordingly.
+ (readonly_warning): Rename to ...
+ (readonly_error): ... this and issue errors, not warnings.
+ (build_modify_expr): Call readonly_error, not readonly_warning.
+ (c_expand_asm_operands): Likewise.
+ * tree-inline.c (optimize_inline_calls): Do not inline functions
+ after errors have occurred.
+
+2004-02-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/cppopts.texi: Fix a typo.
+
+2004-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa64-hpux.h (LIB_SPEC): Fix linking under HP-UX 11.00 with -p and -pg.
+
+2004-02-27 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR optimization/7871
+ * flow.c (mark_set_1): Don't add LOG_LINKS for global registers
+ from or to call insns.
+
+2004-02-27 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/7871
+ * flow.c (propagate_one_insn): Interpret calls as setting global
+ registers, not merely clobbering them.
+
+2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300
+ as well.
+ * config/h8300/lib1funcs.asm (___fixunssfsi): Remove.
+ * config/h8300/t-h8300 (LIB1ASMFUNCS): Remove _fixunssfsi_asm.
+
+2004-02-27 Daniel Jacobowitz <drow@mvista.com>
+
+ * config/arm/arm.c (arm_legitimate_address_p): Don't check the mode
+ size for minipool references.
+
+2004-02-27 Eric Botcazou <ebotcazou@act-europe.fr>
+ Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold): Revert 2004-02-25 change. Use the original
+ operands to build a tree with swapped operands.
+ * expr.c (expand_expr_real) <MAX_EXPR>: Consistently use the
+ 'unsignedp' predicate to specify the signedness.
+
+2004-02-26 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md: Add fixuns_truncsfsi2 and
+ fix_truncsfsi2.
+
+ * config/rs6000/spe.md: Delete spe_efsctuiz.
+ Add spe_fixuns_truncsfsi2.
+ Add spe_fix_truncsfsi2.
+
+2004-02-26 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define __xtensa__.
+
+2004-02-25 James E Wilson <wilson@specifixinc.com>
+
+ * gcc-simple.c (rtl_zone, tree_zone, garbage_zone, ggc_alloc_typed,
+ ggc_alloc_zone): New.
+ (ggc_pch_count_object, gcc_pch_alloc_object, ggc_pch_write_object):
+ Add bool is_string parameter.
+
+2004-02-26 Alan Modra <amodra@bigpond.net.au>
+
+ * gcse.c (delete_null_pointer_checks_1): Set stop_insn to end, not
+ beginning of block. Do not delete CC setter unless HAVE_cc0.
+
+2004-02-25 Kelley Cook <kcook@gcc.gnu.org>
+
+ * doc/contrib.texi: Add an entry for myself.
+
+2004-02-25 Kelley Cook <kcook@gcc.gnu.org>
+
+ * config.gcc: Add comment describing extra_gcc_objs.
+ i[34567]86-*-cygwin*): Replace host_extra_gcc_objs with extra_gcc_objs.
+ * configure.ac (extra_gcc_objs): New substitution variable.
+ (host_extra_gcc_objs): Don't substitute.
+ * configure: Regenerate.
+ * Makefile.in: Use extra_gcc_objs.
+
+2004-02-25 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * fold-const.c (fold): Treat MAX_EXPR and MIN_EXPR like
+ comparisons with regard to signedness.
+
+2004-02-25 Jakub Jelinek <jakub@redhat.com>
+
+ * gcov-io.c (gcov_open) [GCOV_LOCKED]: Use open + fdopen instead of
+ fopen.
+ * libgcov.c: Include sys/stat.h.
+ * config/rs6000/linux.h (TARGET_HAS_F_SETLKW): Define.
+ * config/rs6000/linux64.h (TARGET_HAS_F_SETLKW): Define.
+ * config/sparc/linux.h (TARGET_HAS_F_SETLKW): Define.
+ * config/sparc/linux64.h (TARGET_HAS_F_SETLKW): Define.
+
+2004-02-25 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_legitimate_index_p): For QImode the range of an offset
+ is -4095...+4095 inclusive.
+
+2004-02-25 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/install.texi (sparc-sun-solaris2* specific notes): Document
+ the bootstrap failure with Sun CC 5.4 and 5.5.
+
+2004-02-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cse.c (cse_change_cc_mode_insns): Stop at any instruction
+ which modifies NEWREG.
+ (cse_condition_code_reg): Update the mode of CC_REG in
+ CC_SRC_INSN on our own.
+
+2004-02-24 Michael Matz <matz@suse.de>
+
+ * config/i386/i386.c (ix86_comp_type_attributes): Check for
+ regparm attributes.
+
+2004-02-24 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.md (spe_fix_truncsfsi2): Delete.
+ (spe_fixuns_truncsfsi2): Delete.
+
+ * config/rs6000/rs6000.md (fix_truncsfsi2): Delete.
+ (fixuns_truncsfsi2): Delete.
+
+2004-02-24 Josef Zlomek <zlomekj@suse.cz>
+
+ PR/14240
+ * rtlanal.c (replace_label): Fix replacing labels in constant pool.
+
+2004-02-24 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Update.
+ (init_cumulative_args): Likewise.
+ (a7_overlap_mentioned_p): Delete prototype.
+ * config/xtensa/xtensa.c (struct machine_function): Replace
+ incoming_a7_copied field with need_a7_copy and vararg_a7 flags.
+ Add set_frame_ptr_insn field.
+ (xtensa_emit_move_sequence): Update call to xtensa_copy_incoming_a7.
+ (xtensa_copy_incoming_a7): Rewrite to check need_a7_copy flag and check
+ if the operand is an argument in a7. If so, copy a7 to a new pseudo
+ at the function entry and replace the operand with the pseudo.
+ (init_cumulative_args): Remove unused arguments. Add new "incoming"
+ argument and record this flag in CUMULATIVE_ARGS.
+ (function_arg): Remove result_mode and special-case code to handle
+ arguments in a7. Instead, set need_a7_copy flag when there is an
+ incoming argument in a7.
+ (xtensa_expand_prologue): Remove code to search for set_frame_ptr insn
+ and use the value recorded in cfun->machine->set_frame_ptr_insn.
+ (xtensa_builtin_saveregs): Check for negative gp_left value. Set
+ need_a7_copy and vararg_a7 flags. Use move_block_from_reg instead of
+ special-case code.
+ (a7_overlap_mentioned_p): Delete.
+ * config/xtensa/xtensa.h (CUMULATIVE_ARGS): Add "incoming" flag.
+ (INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS): Remove useless
+ arguments to init_cumulative_args and pass "incoming" flag instead.
+ (BLOCK_REG_PADDING): Delete.
+ * config/xtensa/xtensa.md (movdi, movsf, movdf): Remove unnecessary
+ checks for reload_in_progress and reload_completed. Update calls to
+ xtensa_copy_incoming_a7.
+ (ashlsi3): Rename existing insn to ashlsi3_internal. Add expander
+ to call xtensa_copy_incoming_a7.
+
+2004-02-24 Richard Earnshaw <rearnsha@arm.com>
+
+ * invoke.texi (ARM Options): Mark -mapcs-26 and -mno-alignment-traps
+ as deprecated. Remove already deprecated synonyms.
+ * arm.c (arm_override_options): Generate an inform message if the
+ user tries to invoke the compiler in apcs-26 mode.
+ * arm.h (TARGET_SWITCHES): Remove help comments from deprecated
+ switches. Delete deprecated synonyms for -malignment-traps.
+ (TARGET_DEFAULT): Default to alignment traps.
+ * arm/coff.h (TARGET_DEFAULT): Default to alignment traps.
+ * arm/elf.h arm/netbsd.h arm/pe.h arm/semi.h arm/semiaof.h: Likewise.
+ * arm/unknown-elf.h arm/wince-pe.h: Likewise.
+
+2004-02-23 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386.h: Deprecate -mpni/-mno-pni.
+
+2004-02-23 Kelley Cook <kcook@gcc.gnu.org>
+
+ * config/i386/i386.c: Rename pni to sse3.
+ * config/i386/i386.h: Likewise.
+ * config/i386/i386.md: Likewise.
+ * config/i386/pmmintrin.h: Likewise.
+ * doc/extend.texi: Likewise.
+ * doc/invoke.texi: Likewise.
+
+2004-02-23 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/linux.h (OS_MISSING_POWERPC64): Define.
+ * config/rs6000/linux64.h (OS_MISSING_POWERPC64): Define.
+
+2004-02-23 Eric Botcazou <ebotcazou@libertysurf.fr>
+ Falk Hueffner <falk@debian.org>
+
+ PR c/14188
+ * builtins.c (expand_builtin_va_arg): Emit an informative message
+ if a trap is generated.
+ * c-typeck.c (build_function_call): Likewise.
+
+2004-02-22 Christopher Faylor <cgf@redhat.com>
+
+ * config.gcc (i[34567]86-*-pe|i[34567]86-*-cygwin*): *Really* specify
+ extra host object file when targetting cygwin rather than generic
+ object files.
+
+2004-02-22 Matthias Klose <doko@debian.org>
+
+ Taken from mainline:
+
+ 2004-02-12 Geoffrey Keating <geoffk@apple.com>
+
+ * Makefile.in (install-man): Use $(CPP_INSTALL_NAME) and
+ $(GCOV_INSTALL_NAME) to install manpages. Remove generic rule
+ for installing .1 manpages. Add rules for installing cpp
+ and gcov manpages under their installed names.
+
+2004-02-22 Hans-Peter Nilsson <hp@axis.com>
+
+ PR target/14209
+ * config/cris/cris.md ("*andsi_movu", "*andhi_movu"): Tweak
+ constraints to not match postincrement. Adjust the predicate to
+ exclude a volatile memory reference.
+ ("*andsi_clear"): Tweak constraints to not match postincrement.
+ Adjust the predicate to exclude a volatile memory reference.
+ ("*andhi_clear"): Ditto. Rename from "*andhi_clear_signed".
+ ("*andhi_clear_unsigned"): Remove, non-matching pattern.
+
+2004-02-21 Christopher Faylor <cgf@redhat.com>
+
+ * config.gcc (i[34567]86-*-pe|i[34567]86-*-cygwin*): Specify extra host
+ object file when targetting cygwin.
+ * config/i386/t-cygwin (EXTRA_GCC_OBJS): Remove definition since it is
+ overridden by top-level Makefile.
+
+2004-02-21 Alan Modra <amodra@bigpond.net.au>
+
+ * combine.c (can_combine_p): Don't ignore SETs marked with
+ REG_EH_REGION notes.
+
+2004-02-21 Jan Hubicka <jh@suse.cz>
+
+ * params.def (max-peeled-insns, max-completely-peeled-insns,
+ max-once-peeled-insns): Set to 400.
+
+2004-02-20 Falk Hueffner <falk@debian.org>
+
+ PR target/14201
+ * config/alpha/alpha.md (*fix_truncsfsi_ieee): Fix typoed operand
+ numbers.
+
+2004-02-20 Mohan Embar <gnustuff@thisiscool.com>
+ Tom Tromey <tromey@redhat.com>
+
+ * doc/install.texi: Moved --disable-libgcj and
+ --with-system-zlib documentation to new section for
+ Java-specific options.
+ Added explicit Cross-Compiler-Specific Options subheading.
+ Added section for Java-specific options.
+
+2004-02-20 James E Wilson <wilson@specifixinc.com>
+
+ * toplev.c (dump_file_index, dump_file): Put ce3 before rnreg.
+
+2004-02-20 Josef Zlomek <zlomekj@suse.cz>
+
+ * tree-inline.c (copy_body_r): Do not replace ret_label.
+
+2004-02-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * gcc.c (process_command): Allow translation of the copyright
+ symbol but not the rest of the copyright message.
+ * gcov.c (print_version): Likewise. Allow translation of the
+ message about warranty.
+
+2004-02-19 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.md (spe_fixunssfsi2): Rename to
+ spe_fixuns_truncsfsi2.
+
+ * config/rs6000/rs6000.md (fixunssfsi2): Rename to
+ fixuns_truncsfsi2.
+
+2004-02-19 Richard Sandiford <rsandifo@redhat.com>
+ Maciej W. Rozycki <macro@ds2.pg.gda.pl>
+
+ * config/mips/mips.c (mips_address_insns): Treat BLKmode specially.
+ * config/mips/mips.md: Expand comment above unaligned loads and stores.
+
+2004-02-20 Alan Modra <amodra@bigpond.net.au>
+
+ * function.c (assign_parms): Correct leakage of mainline code
+ in last commit. Also leakage from INIT_CUMULATIVE_ARGS patch.
+
+2004-02-19 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/ia64.c (ia64_function_arg): In big-endian mode,
+ when passing single SFmode quantities in general registers,
+ put them in the high half.
+ (struct extern_func_list, extern_func_head): Mark with GTY(()).
+ (ia64_hpux_add_extern_decl): Save the decl, not the name string.
+ Allocate memory with ggc_alloc. No need to copy anything.
+ (ia64_hpux_file_end): Update to match.
+
+2004-02-19 David Daney <ddaney@avtrex.com>
+
+ PR preprocessor/14198
+ * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Add
+ builtin_assert ("machine=mips")
+
+2004-02-19 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*subdf3_cc", "*subdf3_cconly", "*subsf3_cc",
+ "*subsf3_cconly"): Subtraction is not commutative.
+
+2004-02-19 Alan Modra <amodra@bigpond.net.au>
+
+ * function.c (assign_parms): When building decl_rtl for
+ SPLIT_COMPLEX_ARGS, ensure inner modes of concat match outer.
+
+2004-02-19 Olivier Hainque <hainque@act-europe.fr>
+
+ * expr.c (is_aligning_offset): Check if we are aligning the
+ expressions's address over BIGGEST_ALIGNMENT in bytes, not
+ in bits.
+
+2004-02-19 Jan Hubicka <jh@suse.cz>
+
+ * genextract.c (main): Do not output the memset when not checking.
+
+2004-02-18 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (override_options): Don't imply 3DNow! for -m64
+ by default.
+
+2004-02-18 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("divmoddisi3"): Fix incorrect mode.
+
+2004-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.h (PIC_OFFSET_TABLE_REGNUM): Define to INVALID_REGNUM when not
+ generating PIC code.
+
+2004-02-18 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_mainpool_start): Delete the main pool
+ placeholder insn when chunkifying the pool.
+
+2004-02-18 Per Bothner <per@bothner.com>
+
+ * cpphash.h (struct cpp_buffer): Restore return_at_eof field. This
+ partly reverts my 2003-10-01 change, because we're back to logically
+ including <command line> inside the main line.
+ * cpplex.c (_cpp_get_fresh_line): Check return_at_eof field.
+ * cppmacro.c (cpp_scan_nooutput): Set return_at_eof of current buffer.
+ Fixes PR preprocessor/14103.
+
+2004-02-18 Richard Earnshaw <rearnsha@arm.com>
+
+ PR target/13866
+ * arm.c (load_multiple_operation): Don't insist that the source reg
+ of a post-increment component is the same as the destination.
+ (store_multiple_operation): Likewise.
+
+2004-02-18 Paul Brook <paul@codesourcery.com>
+
+ * rtlanal.c (rtx_varies_p): Return 0 for NULL_RTX
+
+2004-02-18 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/11326
+ * config/ia64/ia64.c (ia64_struct_value_rtx): Cope with NULL
+ fntype.
+
+2004-02-18 Paul Brook <paul@codesourcery.com>
+
+ PR debug/12934
+ * dwarf2out.c (loc_descriptor_from_tree): Handle
+ EXPR_WITH_FILE_LOCATION.
+
+2004-02-17 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/11326
+ * c-common.c (flag_abi_version): Remove.
+ * c-common.h (flag_abi_version): Likewise.
+ * c-opts.c (c_common_handle_option): Remove OPT_fabi_version case.
+ * c.opt (fabi-version): Remove.
+ * calls.c (expand_call): Always pass a function type to
+ struct_value_rtx. Use convert_memory_address.
+ * common.opt (fabi-version): Add it.
+ * flags.h (flag_abi_version): Likewise.
+ (abi_version_at_least): New macro.
+ * opts.c (common_handle_option): Add OPT_fabi_version.
+ * toplev.c (flag_abi_version): Define it.
+ * config/ia64/ia64.h (STRUCT_VALUE_REGNUM): Remove.
+ * config/ia64/ia64.c (TARGET_STRUCT_VALUE_RTX): Define it.
+ (ia64_struct_retval_addr_is_first_parm_p):
+ New function.
+ (ia64_output_mi_thunk): Use it.
+ (ia64_struct_value_rtx): New function.
+
+2004-02-18 Alan Modra <amodra@bigpond.net.au>
+
+ PR optimization/14119
+ * combine.c (try_combine): When attemting to fix unrecognized insns,
+ don't delete SETs marked with REG_EH_REGION notes.
+
+2004-02-17 Jan Hubicka <jh@suse.cz>
+
+ PR bootstrap/14180
+ * cselib.c (remove_useless_values): Do not access released
+ memory.
+
+2004-02-17 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * combine.c (simplify_if_then_else): Do not replace
+ (if_then_else (ne reg 0) (0) (const_int)) by (reg) if the
+ modes differ.
+
+2004-02-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/t-iris6gld: Renamed to ...
+ * config/mips/t-irix-gld: ... this.
+ * config.gcc (mips-sgi-irix6*): Reflect this
+ (mips-sgi-irix5*): Use it with GNU ld.
+
+ * config/mips/irix6-crti.asm, config/mips/irix6-crtn.asm: Renamed
+ to ...
+ * config/mips/irix-crti.asm, config/mips/irix-crtn.asm: ... this.
+ * config/mips/t-irix-gld: Reflect this.
+ * config/mips/iris6gld.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
+
+ * config/mips/iris5gld.h: New file.
+ * config.gcc (mips-sgi-irix5*): Use it with GNU ld.
+ Only use collect2 without gas.
+
+ * config/mips/iris6.h (IRIX6_STARTFILE_SPEC, IRIX6_ENDFILE_SPEC):
+ Renamed to IRIX_STARTFILE_SPEC, IRIX_ENDFILE_SPEC.
+ (STARTFILE_SPEC, ENDFILE_SPEC, SUBTARGET_EXTRA_SPECS): Reflect this.
+ * config/mips/iris6gld.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
+
+ * config/mips/iris6.h (SUBTARGET_EXTRA_SPECS): Moved ...
+ * config/mips/iris5.h: ... here.
+
+ * config/mips/iris5.h (STARTFILE_SPEC, ENDFILE_SPEC): Renamed to
+ IRIX_STARTFILE_SPEC, IRIX_ENDFILE_SPEC.
+ (STARTFILE_SPEC, ENDFILE_SPEC): Define.
+
+ * config/mips/iris5gas.h (STARTFILE_SPEC, ENDFILE_SPEC): Simplify
+ using irix_startfile_spec, irix_endfile_spec.
+ * patches.summary (http):
+
+2004-02-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c++/14178
+ * doc/invoke.texi (fabi-version): The default is 2 now.
+
+2004-02-17 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * doc/install.texi: Update description of --gxx-include-dir to
+ give correct default value. (merged from mainline)
+
+2004-02-16 Matthias Klose <doko@debian.org>
+
+ * config/t-slibgcc-elf-ver: Define SHLIB_NAME and SHLIB_SONAME
+ in terms of SHLIB_SOVERSION.
+ * config/m68k/t-slibgcc-elf-ver: New file.
+ * config/pa/t-slibgcc-elf-ver: New file.
+ * config.gcc (m68k-linux, parisc-linux): Use them when not
+ sjlj exceptions are not configured.
+
+2004-02-16 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (get_pc_symbol_name): Mark with GTY(()).
+
+2004-02-16 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/sourcebuild.texi: Mention backends.html.
+
+2004-02-15 Roger Sayle <roger@eyesopen.com>
+
+ Backport from mainline:
+
+ 2004-02-07 Roger Sayle <roger@eyesopen.com>
+ PR middle-end/13696
+ * fold-const.c (fold_convert): New function to provide type
+ conversion to the middle-end without using convert.
+ (negate_expr, associate_trees, size_diffop, omit_one_operand,
+ operand_equal_for_comparison_p, pedantic_omit_one_operand,
+ invert_truthvalue, optimize_bit_field_compare, range_binop,
+ decode_field_reference, make_range, build_range_check, unextend,
+ fold_truthop, extract_muldiv_1, fold_mathfn_compare,
+ fold_binary_op_with_conditional_arg, fold_inf_compare,
+ fold_single_bit_test, fold, multiple_of_p): Replace all calls to
+ convert with calls to fold_convert.
+
+ 2004-02-09 Roger Sayle <roger@eyesopen.com>
+ * fold-const.c (fold) <NOP_EXPR>: Use the original type conversion
+ tree code rather than call fold_convert, which doesn't specify a
+ default floating point to integer conversion.
+
+ 2004-02-10 Paolo Bonzini <bonzini@gnu.org>
+ PR c/14092
+ * fold-const.c (fold) <NEGATE_EXPR>: Convert result of
+ negate_expr back to the original type.
+
+2004-02-15 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
+
+ Backport from mainline:
+
+ 2004-02-05 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
+ * config/sh/t-linux (SHLIB_INSTALL): Prepend $$(DESTDIR)
+ to $$(slibdir) in the installation commands.
+
+2004-02-15 Roger Sayle <roger@eyesopen.com>
+
+ Backport from mainline:
+
+ 2004-01-20 Roger Sayle <roger@eyesopen.com>
+ * fold-const.c (fold_convert): Rename to fold_convert_const.
+ (fold_convert_const): Change arguments to take a tree_code,
+ a type and the operand/expression to be converted. Return
+ NULL_TREE if no simplification is possible.
+ (fold): Adjust call to fold_convert to match new fold_convert_const.
+ Avoid modifying the tree passed to fold in-place.
+
+2004-02-15 Jan Hubicka <jh@suse.cz>
+
+ * cselib.c (value_pool): New.
+ (new_cselib_val): Use pool.
+ (cselib_init): Initialize value_pool
+ (cselib_finish): Free pool.
+
+ * cselib.c: Include alloc-pool.h
+ (empty_vals, empty_elt_lists, empty_elt_loc_lists): Kill.
+ (elt_loc_list_pool, elt_list_pool, cselib_val_pool): Declare.
+ (new_elt_list, new_elt_loc_list, unchain_one_elt_list,
+ unchain_one_elt_loc_list_pool, unchain_one_value,
+ new_cselib_val): Simplify using allocpool.
+ (cselib_init): Initialize allocpools.
+ (cselib_finish): Finish allocpools.
+
+2004-02-14 Richard Sandiford <rsandifo@redhat.com>
+
+ Backport from mainline:
+
+ 2002-04-08 Richard Sandiford <rsandifo@redhat.com>
+ * real.c (encode_ibm_extended): Normalize the input value before
+ converting it to a double. Handle the case where a normal value
+ rounds to infinity.
+
+2004-02-14 Olivier Hainque <hainque@act-europe.fr>
+
+ * loop.c (check_dbra_loop): Use gen_int_mode instead of GEN_INT
+ for start_value when it is directly moved into reg, and factorize
+ the retrieval of GET_MODE (reg).
+
+2004-02-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.ac: Search for as, ld below libexec/gcc.
+ * configure: Regenerate.
+
+2004-02-13 Jan Hubicka <jh@suse.cz>
+
+ * combine.c (recog_for_combine): Avoid allocating unnecesary RTX.
+
+ * genrecog.c (find_operand): add extra argument stop.
+ (validate_pattern): Verify that mach_dup is duplicating operand
+ defined lexically earlier.
+
+2004-02-13 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR other/10584
+ * c-opts.c (c_common_post_options): Disable function inlining when
+ using -finstrument-functions.
+ * doc/invoke.texi (Code Gen Options): Document this restriction.
+
+2004-02-12 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.md (casesi_internal, casesi_internal_di):
+ Use ".set macro" to avoid warnings about multi-instruction
+ macros, since they're intentional.
+
+2004-02-13 Jan Hubicka <jh@suse.cz>
+
+ * alias.c (find_base_term, get_addr): Do not dereference NULL
+ pointer when all VALUE's locations has been invalidated.
+ (rtx_equal_for_memref_p): Simplify checking of VALUEs.
+
+ * cselib.c (discard_useless_values): Clear out value pointer pointing
+ to datastructure to be recycled.
+
+ * gcse.c (bypass_block): Prevent edges to be unified when we are
+ about to emit compenstation code.
+
+ * gcse.c (bypass_block): Fix a typo in the previous check-in
+ to the file.
+
+ * alloc-pool.c (align_four): Kill.
+ (create_alloc_pool): Align size to eight.
+ (free_alloc_pool, free_pool): Invalidate deallocated data.
+
+2004-02-12 Richard Sandiford <rsandifo@redhat.com>
+
+ PR bootstrap/13617
+ * config/mips/mips-protos.h (mips_output_aligned_decl_common): Declare.
+ (mips_declare_object): Make variadic.
+ * config/mips/mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use
+ mips_output_aligned_decl_common.
+ * config/mips/mips.c (mips_output_aligned_decl_common): New function.
+ (mips_declare_object): Make variadic.
+
+2004-02-12 Jan Hubicka <jh@suse.cz>
+
+ * tree-optimize.c (tree_rest_of_compilation): Do not release DECL_ARGUMENTS
+
+2004-02-12 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR inline-asm/6162
+ * reload.c (find_reloads): Only support one pair of commutative
+ operands.
+
+2004-02-12 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR target/1532
+ Backport from mainline:
+
+ 2004-02-11 Richard Henderson <rth@redhat.com>
+
+ * flow.c (insn_dead_p): A clobber of a dead hard register is a
+ dead insn after reload.
+
+ 2004-01-24 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * cse.c (cse_cc_succs): Change the mode of the source expression
+ as soon as decide we need a new mode. Don't permit changing modes
+ if we found a match in a successor block.
+ (cse_condition_code_reg): Save original mode of source expression
+ so that we know whether we have to change the mode in other
+ insns.
+
+ 2004-01-24 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * cse.c: (cse_cc_succs) Fix comparison warning.
+
+ 2004-01-23 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * cse.c (cse_change_cc_mode): New static function.
+ (cse_change_cc_mode_insns, cse_cc_succs): Likewise.
+ (cse_condition_code_reg): New function.
+ * rtl.h (cse_condition_code_reg): Declare.
+ * toplev.c (rest_of_handle_cse2): Call cse_condition_code_reg.
+ * target.h (struct gcc_target): Add fixed_condition_code_regs and
+ cc_modes_compatible.
+ * target-def.h (TARGET_FIXED_CONDITION_CODE_REGS): Define.
+ (TARGET_CC_MODES_COMPATIBLE): Define.
+ (TARGET_INITIALIZER): Add new initializers.
+ * targhooks.c (default_cc_modes_compatible): New function.
+ * targhooks.c (default_cc_modes_compatible): Declare.
+ * hooks.c (hook_bool_intp_intp_false): New function.
+ * hooks.h (hook_bool_intp_intp_false): Declare.
+ * config/i386/i386.c (TARGET_FIXED_CONDITION_CODE_REGS): Define.
+ (TARGET_CC_MODES_COMPATIBLE): Define.
+ (ix86_fixed_condition_code_regs): New static function.
+ (ix86_cc_modes_compatible): Likewise.
+ * doc/tm.texi (Condition Code): Document new hooks.
+
+2004-02-12 Hartmut Penner <hpenner@de.ibm.com>
+
+ * config/rs6000/altivec.md (*movv4si_internal): At least one
+ operand must be register_operand.
+ (*movv8hi_internal1): Likewise.
+ (*movv16qi_internal1): Likewise.
+ (*movv4sf_internal1): Likewise.
+
+2004-02-12 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/14113
+ Backport from mainline:
+
+ 2004-02-03 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.md (call followed by jump define_peephole's):
+ Delete.
+
+2004-02-12 Hartmut Penner <hpenner@de.ibm.com>
+
+ * gcc/config/rs6000/rs6000.c (rs6000_override_options)
+ Set AltiVec ABI and vrsave as default for ppc64 linux.
+ (init_cumulative_args): Post error, if try to return
+ value in AltiVec register without enable AltiVec.
+ (function_arg_advance): Ditto for passing arguments.
+
+2004-02-11 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/456
+ * cppexp.c (num_binary_op): Don't allow comma operators in #if
+ constant expressions at all outside C99 mode if pedantic.
+
+2004-02-10 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.md ("*movv2si_internal"): Check for register
+ operand.
+ (movv4hi_internal): Same.
+ (movv2sf_internal): Same.
+ (movv1di_internal): Same.
+
+2004-02-11 Richard Sandiford <rsandifo@redhat.com>
+
+ * emit-rtl.c (mark_label_nuses): Check that a LABEL_REF refers to
+ a label before updating its usage count.
+
+2004-02-10 Danny Smith <dannysmith@users.sourceforge.net>
+
+ PR c/14088
+ real.c (real_from_string): Look for 'X' as well as 'x' in
+ hexfloat strings.
+
+2004-02-10 Per Bothner <per@bothner.com>
+
+ * c-opts.c (c_common_post_options): Don't emit working directory
+ in cpp output if -P was specified.
+
+2004-02-10 Jakub Jelinek <jakub@redhat.com>
+
+ PR optimization/13424
+ Backport from mainline:
+
+ 2004-01-29 Jakub Jelinek <jakub@redhat.com>
+ * emit-rtl.c (change_address): Use XEXP (memref, 0) instead
+ of addr when creating MEM copy.
+
+ 2004-01-28 Jakub Jelinek <jakub@redhat.com>
+ * expr.c (store_constructor): Revert 2003-12-03 change.
+
+ * emit-rtl.c (change_address): Check also if MEM_ATTRS is set as
+ expected before returning early. Avoid sharing RTL if they
+ need to be changed.
+
+ * config/i386/i386.c (ix86_expand_movstr): Rework rep_mov and strmov
+ handling so that memory attributes are preserved. Don't call
+ ix86_set_move_mem_attrs.
+ (ix86_set_move_mem_attrs_1, ix86_set_move_mem_attrs): Removed.
+ (ix86_expand_clrstr): Rename src argument to
+ dst. Rework rep_stos and strset handling so that memory attributes
+ are preserved.
+ (ix86_expand_strlen): Pass src argument to
+ ix86_expand_strlensi_unroll_1. Rework strlenqi_1 handling so that
+ memory attributes are preserved.
+ (ix86_expand_strlensi_unroll_1): Add src argument. Use
+ change_address instead of gen_rtx_MEM.
+ * config/i386/i386.md (strmov, strmov_singleop, rep_mov): New
+ expanders.
+ (strmovdi_rex64, strmovsi, strmovsi_rex64, strmovhi, strmovhi_rex64,
+ strmovqi, strmovqi_rex64): Remove.
+ (rep_mov*, strmov*): Prefix insn names with *.
+ (strset, strset_singleop, rep_stos): New expanders.
+ (strsetdi_rex64, strsetsi, strsetsi_rex64, strsethi, strsethi_rex64,
+ strsetqi, strsetqi_rex64): Remove.
+ (rep_stos*, strset*): Prefix insn names with *.
+ (rep_stosqi_rex64): Likewise. Fix mode of dirflag reg from DImode
+ to SImode.
+ (cmpstrsi): Rework cmpstrqi_1 handling so that memory attributes
+ are preserved.
+ (cmpstrqi_nz_1, cmpstrqi_nz_rex_1, cmpstrqi_1, cmpstrqi_rex_1):
+ Prefix insn names with *.
+ (cmpstrqi_nz_1, cmpstrqi_1): New expanders.
+ (strlenqi_1, strlenqi_rex_1): Prefix insn names with *.
+ (strlenqi_1): New expander.
+ * config/i386/i386.h (ix86_set_move_mem_attrs): Remove prototype.
+
+ 2004-01-24 Jan Hubicka <jh@suse.cz>
+ * emit-rtl.c (change_address, adjust_address_1, offset_address,
+ widen_memory_access): Return early when there is nothing to change.
+
+2004-02-10 David Edelsohn <edelsohn@gnu.org>
+
+ * configure.ac (gcc_cv_as_powerpc_mfcrf): Correct test for mfcr.
+ * configure: Regenerate.
+
+2004-02-10 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * cfganal.c (flow_call_edges_add): Never split a libcall block.
+
+2004-02-10 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (TARGET_GPWORD): Return false for TARGET_NEWABI
+ && TARGET_IRIX.
+
+2004-02-09 Geoffrey Keating <geoffk@apple.com>
+
+ PR 12028
+ * config/rs6000/rs6000.c (ccr_bit): Don't let consistency check
+ failure stop compilation, just print helpful message.
+
+2004-02-09 Fariborz Jahanian <fjahanian@apple.com>
+
+ * expr.c (emit_group_load): split constant
+ correctly into register components of PARALLEL insn.
+
+2004-02-09 DJ Delorie <dj@redhat.com>
+
+ * config/i386/xm-djgpp.h (GCC_DRIVER_HOST_INITIALIZATION): No
+ longer modify standard_exec_prefix, standard_bindir_prefix, or
+ standard_startfile_prefix.
+
+2004-02-09 James E Wilson <wilson@specifixinc.com>
+
+ PR c++/11295
+ * c-common.c (c_expand_expr, case STMT_EXPR): Change expand_expr call
+ to expand_expr_real call, and pass in alt_rtl as last argument.
+
+ PR libstdc++/5625
+ * builtin-types.def (BT_WORD, BT_FN_WORD_PTR): New.
+ * builtins.c (expand_builtin): Handle BUILT_IN_EXTEND_POINTER.
+ * builtins.def (BUILT_IN_EXTEND_POINTER): New.
+ * except.c (expand_builtin_extend_pointer): New.
+ * except.h (expand_builtin_extend_pointer): Declare.
+
+2004-02-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/iris5.h (BSS_SECTION_ASM_OP): Define.
+ * config/mips/iris6.h (BSS_SECTION_ASM_OP): Undef.
+
+ * config/mips/iris6.h (TARGET_ASM_NAMED_SECTION): Moved ...
+ * config/mips/iris5.h: ... here.
+ * config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Remove.
+
+ * config/mips/iris6.h (EXTRA_SECTION_FUNCTIONS): Move ...
+ * config/mips/iris5.h: ... here.
+
+2004-02-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.ac: Remove default executable files before AC_PROG_CC.
+ * configure: Regenerate.
+
+2004-02-09 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR target/13721
+ * config/h8300/h8300.c (byte_reg): Call abort() if asked to
+ print a operand other than a register.
+
+2004-02-09 Nick Clifton <nickc@redhat.com>
+
+ * Import these patches from mainline sources:
+
+ 2004-01-21 Inaoka Kazuhiro <inaoka.kazuhiro@renesas.com>
+
+ * config/m32r/m32r.h (CPP_SPEC): Define.
+
+ 2004-01-20 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * config/m32r/m32r.h (TARGET_M32R2). Test for TARGET_M32R2_MASK
+ not TARGET_M32RX_MASK.
+
+2004-02-09 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * cpplib.h (cpp_get_line_maps): Un-constify the structure
+ pointed to by the pointer returned by the function.
+ * cpplib.c (cpp_get_line_maps): Likewise.
+
+2004-02-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-objc-common.c (c_cannot_inline_tree_fn): Fix a typo in a
+ warning.
+
+2004-02-08 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * README.Portability: Change "ISO C89" to "ISO C90".
+ * c-parse.in (primary, initelt): Likewise.
+
+2004-02-07 Zack Weinberg <zack@codesourcery.com>
+
+ Bug 13856
+ * c-decl.c (diagnose_mismatched_decls): Only give special
+ treatment when olddecl is DECL_BUILT_IN, if C_DECL_INVISIBLE
+ is also true.
+ (merge_decls): Don't clear DECL_BUILT_IN_CLASS and
+ DECL_FUNCTION_CODE when defining a built-in function.
+ Don't update DECL_ESTIMATED_INSNS.
+ * dwarf2out.c (dwarf2out_decl): Don't ignore built-in
+ FUNCTION_DECLs.
+ * tree.h: Delete DECL_ESTIMATED_INSNS.
+ * tree-inline.c (struct inline_data): Delete inlined_insns field.
+ (expand_call_inline, optimize_inline_calls): Don't update
+ DECL_ESTIMATED_INSNS nor inlined_insns.
+ * cgraphunit.c (cgraph_analyze_function): Don't update
+ DECL_ESTIMATED_INSNS.
+
+2004-02-07 Zack Weinberg <zack@codesourcery.com>
+
+ * c-common.c (shadow_warning): Delete.
+ * c-common.h (free_parser_stacks, shadow_warning, sw_kind): Delete.
+ * c-decl.c (warn_if_shadowing): Issue shadow warnings directly.
+ * c-opts.c (c_common_parse_file): Don't call free_parser_stacks.
+ * c-parse.in (free_parser_stacks): Delete.
+
+2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-opts.c, c-ppoutput.c, cppfiles.c, cpphash.h, cppinit.c,
+ cpplib.h, diagnostic.h, fix-header.c, config/fp-bit.c,
+ config/mips/iris5.h, doc/makefile.texi: Update copyright.
+
+2004-02-06 James E Wilson <wilson@specifixinc.com>
+
+ * config/ia64/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Only define for
+ glibc 2.3 or better.
+
+2004-02-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * loop.c (force_movables): Transitively increase the priorities of
+ all insns forces by an insn, not just the first one.
+
+2004-02-06 Falk Hueffner <falk@debian.org>
+
+ PR target/12898
+ * config/alpha/alpha.c (alpha_emit_set_const_1): If
+ no_new_pseudos, use gen_rtx_SET directly for SImode constants
+ which need multiple instructions to emit.
+
+2004-02-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ * doc/invoke.texi: Remove the pni option from -mfpmath=.
+
+2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
+
+ * doc/install.texi: Update automake and autoconf version
+ requirements. Note where to find gcj automake version.
+
+2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (generate-manpages): Move dependencies to ...
+ (man): here.
+ * doc/makefile.texi: Document new targets.
+ * doc/sourcebuild.texi (Make-lang.in): Document new langhooks.
+
+2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
+
+ PR/13485
+ Makefile.in (srcextra): Add a level of indirection to ...
+ (gcc.srcextra): ... here.
+ (po-generated): Delete.
+ (po/$(PACKAGE).pot: Use srcextra instead of po-generated. Depend on
+ options.c.
+ (start.encap): Remove superfluous lang.srcextra dependency.
+ objc/Make-lang.in (po-generated): Delete.
+
+2004-02-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/iris5gas.h (PREFERRED_DEBUGGING_TYPE): Define.
+
+2004-02-05 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.md ("*tmqidi_ext"): New insn.
+ ("*extendqidi2_short_displ", "*extendsiqi2_short_displ"): Old
+ pre-reload splitters are transformed to post-reload
+ define_insn_and_split patterns.
+ ("*tmqisi_ext"): Renamed old "*tmqi_ext".
+
+2004-02-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ PR middle-end/13750
+ Revert:
+ 2004-01-15 Geoffrey Keating <geoffk@apple.com>
+ PR pch/13361
+ * c-typeck.c (constructor_asmspec): Delete.
+ (struct initializer_stack): Delete field 'asmspec'.
+ (start_init): Delete saving of asmspec.
+ (finish_init): Don't update constructor_asmspec.
+ * dwarf2out.c (rtl_for_decl_location): Duplicate string from tree.
+ * stmt.c (expand_asm): Duplicate strings from tree.
+ (expand_asm_operands): Likewise.
+ * tree.c (tree_size): Update computation of size of STRING_CST.
+ (make_node): Don't make STRING_CST nodes.
+ (build_string): Allocate string with tree node.
+ * tree.def (STRING_CST): Update comment.
+ * tree.h (TREE_STRING_POINTER): Adjust for change to STRING_CST.
+ (tree_string): Place contents of string in tree node.
+ * config/sh/sh.c (sh_handle_sp_switch_attribute): Duplicate string
+ from tree.
+
+2004-02-05 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * diagnostic.h (DEFINE_DIAGNOSTIC_KIND): Change parameter M to
+ msgid.
+
+2004-02-05 Paul Brook <paul@codesourcery.com>
+
+ Backport from mainline.
+
+ 2003-11-22 Phil Edwards <phil@codesourcery.com>
+
+ PR target/12476
+ * config/arm/arm.c (arm_output_mi_thunk): In Thumb mode, use
+ 'bx' instead of 'b' to avoid branch range restrictions. Output
+ the thunk immediately before the thunked-to function.
+ * config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Do not emit
+ .thumb_func if a thunk is being generated. Emit .code 16 along
+ with .thumb_func if a thunk is not being generated.
+
+ 2003-11-05 Mark Mitchell <mark@codesourcery.com>
+
+ * calls.c (initialize_argument_information): Add CALL_FROM_THUNK_P
+ parameter. Use it instead of current_function_is_thunk.
+ * function.h (struct function): Update documentation for is_thunk.
+ * tree.h (CALL_FROM_THUNK_P): New macro.
+ * config/alpha/alpha.c (alpha_sa_mask): Do not check
+ no_new_pseudos when testing current_function_is_thunk.
+ * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Likeiwse.
+
+2004-02-05 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * sourcebuild.texi (Test Idioms): Update testcase naming
+ conventions.
+
+2004-02-04 Per Bothner <per@bothner.com>
+
+ Partially revert/redo 2003-10-01 change; fix -fworking-directory.
+ * c-ppoutput.c (pp_dir_change): New function.
+ * c-common.h (pp_dir_change): New declaration.
+ * cpplib.h (struct cpp_options): Remove working_directory field.
+ * cppinit.c (cpp_find_main_file, cpp_push_main_file): Merge back to
+ (cpp_read_main_file): as before 10-01. Call _cpp_stack_file.
+ Don't handle -fworking_directory here, but in c_common_post_options.
+ (read_original_directory): Don't back up when done.
+ Don't clear no-longer used working_directory flag.
+ * cpplib.h: Update declarations to match.
+ * c-lex.c (cb_dir_change): Move to c-opts.c.
+ (init_c_lex): Don't set dir_change callback here, since we want
+ to set it even if flag_preprocess_only.
+ * c-opts.c (cb_dir_change): Function moved from c-lex.c.
+ (c_common_post_options): Set dir_change callback.
+ Call pp_dir_change if approporiate.
+ (finish_options): Don't call cpp_find_main_file here. Hence remove
+ unneeded parameter and result. Do LC_RENAME for <built-in>.
+ (c_common_post_options): Call cpp_read_main_file here instead.
+ (c_common_init): Update accordingly.
+ (push_command_line_include): Don't cpp_push_main_file.
+ Do LC_RENAME rather than LC_LEASE to get back to main file.
+ Compared to pre-10-01 version, inline cpp_rename_to_main_file.
+ (c_common_parse_file): Call cpp_read_main_file for subsequent main
+ files, but call finish_options for all files.
+ * c-opts.c (sanitize_cpp_opts): Don't set cpp_opts->working_directory.
+ * fix-header.c (read_scan_file): Call cpp_read_main_file instead of
+ cpp_find_main_file + cpp_push_main_file.
+ * c-lex.c (fe_file_change): Don't set main_input_filename here.
+ * opts.c (handle_options): Only set main_input_filename first time.
+
+2004-02-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * Makefile.in: Move target, host overrides after per-language
+ fragments.
+
+ * config/mips/t-iris5-as (FORCE_DEBUG_ADAFLAGS): Clear.
+ (GNATLIBCFLAGS): Remove -g.
+
+2004-02-04 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (function_arg_pass_by_reference): Return 1
+ for all modes whose size is greater than 8 bytes if ARCH32.
+ (sparc_va_arg): Handle all modes whose size is greater than 8 bytes
+ by reference if ARCH32.
+
+2004-02-04 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*la_64" + peepholes, "reload_indi"): Move
+ to before adddi3 insn patterns.
+ ("*la_31" + peepholes, "*la_31_and", "*la_31_and_cc", "force_la_31",
+ "reload_insi"): Move to before addsi3 insn patterns.
+
+2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/interface.texi, doc/tm.texi, doc/trouble.texi: Don't
+ mention deprecated target macros.
+
+2004-02-03 Wolfgang Bangerth <bangerth@dealii.org>
+
+ * doc/invoke.texi (x86 options): Fix spelling/wording.
+
+2004-02-03 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/iris5.h (ASM_OUTPUT_ASCII): Use mips_output_ascii to
+ put the original string in a comment.
+ * config/mips/mips-protos.h (mips_output_ascii): Add prefix argument.
+ * config/mips/mips.c (mips_output_ascii): Likewise.
+ * config/mips/mips.h (ASM_OUTPUT_ASCII): Adjust accordingly.
+
+2004-02-03 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13975
+ * tree.h (enum tree_index): Add TI_PUBLIC, TI_PROTECTED, and
+ TI_PRIVATE.
+ (access_public_node): Redefine.
+ (access_protected_node): Likewise.
+ (access_private_node): Likewise.
+ * tree.c (build_common_tree_nodes): Create access_public_node,
+ access_protected_node, and access_private_node.
+
+2004-02-03 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/13914
+ * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Use ap
+ for retaddr_column.
+
+2004-02-03 Kelley Cook <kcook@gcc.gnu.org>
+
+ * opts.c (OPT_fwritable_strings): Deprecate -fwritable-strings.
+
+2004-02-03 Steven Bosscher <s.bosscher@student.tudelft.nl>
+
+ * toplev.c: Fix broken checkin of 2003-12-30, again.
+
+2004-02-02 Eric Christopher <echristo@redhat.com>
+ Zack Weinberg <zack@codesourcery.com>
+
+ * c-opts.c (c_common_handle_option): Add -finput-charset.
+ * c.opt: Ditto.
+ * cppcharset.c (_cpp_convert_input): New function.
+ (_cpp_default_encoding): Ditto.
+ * cpphash.h: Add prototypes for above.
+ * cppfiles.c (read_file_guts): Use _cpp_convert_input.
+ * cppinit.c (cpp_create_reader): Use _cpp_default_encoding
+ for narrow execution and input character sets.
+ * doc/cppopts.texi: Document -finput-charset.
+
+2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/invoke.texi (SPARC options): Further improve.
+
+2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (function_arg_slotno): Align TImode
+ arguments on a 16-byte boundary in the parameter array if ARCH64.
+ Split handling of TFmode.
+
+2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/invoke.texi (SPARC options): Document that -mflat is deprecated.
+
+2004-02-01 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sol2-bi.h: Handle TARGET_CPU_ultrasparc3.
+ (CPP_CPU_SPEC): Handle -mcpu=ultrasparc3.
+ (ASM_CPU_SPEC): Likewise
+ * config/sparc/sol2.h: Handle TARGET_CPU_ultrasparc3.
+ (ASM_CPU_SPEC): Remove -mcpu=v8plus. Handle -mcpu=ultrasparc3.
+
+2004-02-01 Jan Hubicka <jh@suse.cz>
+
+ PR c++/12850
+ * cgraph.c (cgraph_remove_node): Clear out saved/insns/arguments and
+ initial pointers.
+ * cgraphunit.c (cgraph_finalize_function): Clear out DECL_SAVED_INSNS
+ for functions that will be only inlined.
+ (cgraph_mark_function_to_output): Likewise.
+ (cgraph_expand_function): Sanity check that DECL_DEFER_OUTPUT is clear;
+ do not clear function body.
+ * tree-optimize.c (clear_decl_rtl): Use decl_function_context.
+ (tree_rest_of_compilation): Reorganize the logic releasing function
+ body to use callgraph datastructure.
+
+2004-02-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (adddi3_internal_2): Remove superfluous %s.
+
+2004-01-31 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/invoke.texi (SPARC options): Restructure and update.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/invoke.texi: Follow spelling conventions.
+ * doc/tm.texi: Likewise.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/install.texi: Fix typos.
+ * doc/invoke.texi: Likewise.
+
+2004-01-31 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_decompose_address): Do not treat virtual
+ registers as pointers.
+ * config/s390/s390.md ("*la_31" second peephole2): Fix incorrect mode.
+
+2004-01-31 Jan Hubicka <jh@suse.cz>
+
+ Revert the following patch until after AIX linker bug is fixed:
+ PR c++/12850
+ * cgraph.c (cgraph_remove_node): Clear out saved/insns/arguments and
+ initial pointers.
+ * cgraphunit.c (cgraph_finalize_function): Clear out DECL_SAVED_INSNS
+ for functions that will be only inlined.
+ (cgraph_mark_function_to_output): Likewise.
+ (cgraph_expand_function): Sanity check that DECL_DEFER_OUTPUT is clear;
+ do not clear function body.
+ * tree-optimize.c (clear_decl_rtl): Use decl_function_context.
+ (tree_rest_of_compilation): Reorganize the logic releasing function
+ body to use callgraph datastructure.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ alloc-pool.c, alloc-pool.h, c-lex.c, c-pragma.h,
+ tree-optimize.c, config/alpha/alpha.c, config/alpha/alpha.h,
+ config/alpha/alpha.md, config/alpha/vms.h, config/arm/arm.h,
+ config/arm/linux-elf.h, config/avr/avr.c, config/c4x/c4x.c,
+ config/c4x/c4x.md, config/d30v/d30v.h,
+ config/frv/frv-protos.h, config/frv/frv.c, config/frv/frv.h,
+ config/frv/frv.md, config/frv/frvbegin.c, config/frv/frvend.c,
+ config/i386/cygming.h, config/i386/djgpp.h,
+ config/i386/emmintrin.h, config/i386/gthr-win32.c,
+ config/i386/i386-interix.h, config/i386/i386-protos.h,
+ config/i386/i386.c, config/i386/i386.h, config/i386/openbsd.h,
+ config/i386/winnt.c, config/i386/xm-mingw32.h,
+ config/i386/xmmintrin.h, config/ia64/ia64-protos.h,
+ config/ia64/ia64.c, config/ia64/ia64.md, config/ip2k/ip2k.c,
+ config/iq2000/iq2000-protos.h, config/iq2000/iq2000.c,
+ config/iq2000/iq2000.md, config/m32r/m32r-protos.h,
+ config/m32r/m32r.c, config/m32r/m32r.md, config/m68k/m68k.md,
+ config/m68k/netbsd-elf.h, config/mcore/mcore-elf.h,
+ config/mcore/mcore.c, config/mcore/mcore.h,
+ config/mcore/mcore.md, config/mips/elf.h, config/mips/elf64.h,
+ config/mips/iris5gas.h, config/mips/iris6.h,
+ config/mips/iris6gas.h, config/mips/linux.h,
+ config/mips/mips.md, config/mips/netbsd.h,
+ config/mips/openbsd.h, config/mips/windiss.h,
+ config/mn10300/mn10300.c, config/mn10300/mn10300.h,
+ config/pdp11/pdp11.c, config/rs6000/aix.h,
+ config/rs6000/altivec.h, config/rs6000/darwin.h,
+ config/rs6000/xcoff.h, config/s390/s390-protos.h,
+ config/s390/s390.c, config/s390/s390.h, config/s390/s390.md,
+ config/sh/netbsd-elf.h, config/sh/sh.h, config/sh/vxworks.h,
+ config/sparc/sol2.h, config/stormy16/stormy16.h: Update
+ copyright.
+
+2004-01-30 Dara Hazeghi <dhazeghi@yahoo.com>
+
+ PR bootstrap/9249
+ * doc/install.texi: document --enable-__cxa_atexit option.
+ * configure.ac: Disable __cxa_atexit if not supported.
+ * configure: Regenerate.
+
+2004-01-30 Herman A.J. ten Brugge <hermantenbrugge@home.nl>
+
+ PR target/12978
+ * c4x.md: (movstrqi*) Use match_scratch instead of match_dup.
+ Remove movstrqi_small because it conflicts with movstrqi_large.
+
+2004-01-30 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (abs_docdir, abs_srcdir): Define.
+ (doc/%.dvi, doc/gccinstall.dvi): Use $(abs_docdir).
+
+2004-01-30 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR optimization/12147
+ * reload1.c (reload_reg_free_p): RELOAD_OTHER conflicts with
+ RELOAD_FOR_OPADDR_ADDR.
+ (reload_reg_reaches_end_p): RELOAD_FOR_OTHER_ADDRESS register
+ might be reused as RELOAD_FOR_OPADDR_ADDR register.
+
+2004-01-30 Jan Hubicka <jh@suse.cz>
+
+ * reload.c (get_secondary_mem): Fix updating of
+ secondary_memlocs_elim_used.
+
+2004-01-30 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * toplev.c: Include alloc-pool.h.
+ * Makefile.in (toplev.c): Update dependencies.
+
+2004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.h: Update copyright.
+
+2004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/12818
+ * varasm.c (const_hash_1) <STRING_CST>: Use the
+ address to compute the hash value if flag_writable_strings.
+ (compare_constant) <STRING_CST>: Compare the addresses
+ if flag_writable_strings.
+ (build_constant_desc): Do not copy the expression for a
+ STRING_CST if flag_writable_strings.
+
+2004-01-30 Jan Hubicka <jh@suse.cz>
+
+ PR c++/12850
+ * cgraph.c (cgraph_remove_node): Clear out saved/insns/arguments and
+ initial pointers.
+ * cgraphunit.c (cgraph_finalize_function): Clear out DECL_SAVED_INSNS
+ for functions that will be only inlined.
+ (cgraph_mark_function_to_output): Likewise.
+ (cgraph_expand_function): Sanity check that DECL_DEFER_OUTPUT is clear;
+ do not clear function body.
+ * tree-optimize.c (clear_decl_rtl): Use decl_function_context.
+ (tree_rest_of_compilation): Reorganize the logic releasing function
+ body to use callgraph datastructure.
+
+ * reload.c (secondary_memlocs_elim_used): New static variable.
+ (get_secondary_mem): Update it.
+ (find_reloads): Use it.
+
+ * alias.c (reg_base_value): Turn into varray.
+ (reg_base_value_size): Kill.
+ (old_reg_base_value): New deletable varray.
+ (alias_invariant_size): New variable.
+ (REG_BASE_VALUE): Update to use varray.
+ (find_base_value): Likewise.
+ (record_set): Likewise.
+ (record_base_value): Likewise.
+ (memrefs_conflict_p): Likewise.
+ (record_set): Likewise
+ (record_base_value): Likewise.
+ (memrefs_conflict_p): Use alias_invariant_size.
+ (init_alias_analysis): Use varray; set alias_invariant_size;
+ rescale other arrays to be sized by maxreg.
+ (end_alias_analysis): Save reg_base_value; clear alias_invariant_size.
+
+ * basic-block.h (PROP_POSTRELOAD): New macro.
+ (CLEANUP_LOG_LINKS): New.
+ * cfgcleanup.c (cleanup_cfg): Only PROP_LOG_LINKS when asked to.
+ * toplev.c (rest_of_handle_life): Preserve LOG_LINKS trought cleanup_cfg.
+
+ * alloc-pool.c: Include hashtab.h
+ (alloc_pool_descriptor): New structure
+ (alloc_pool_hash): New global variable.
+ (hash_descriptor, eq_descriptor, alloc_pool_descriptor): New.
+ (create_alloc_pool): Update statistics.
+ (free_alloc_pool): Likewise.
+ (pool_alloc): Likewise.
+ (output_info): New structure
+ (print_statistics, dump_alloc_pool_statistics): New function.
+ * alloc-pool.h (alloc_pool_def): Turn name to be constant.
+ (dump_alloc_pool_statistics): Declare.
+ * toplev.c (finalize): Dump statistics.
+
+ * varray.c: Include hashtab.h
+ (varray_descriptor): New structure.
+ (hash_descriptor, eq_descriptor, varray_descriptor,
+ print_statistics): New static functions
+ (varray_init, varray_grow): Update statistics
+ (dump_varray_statistics): New function.
+ * varray.h (dump_varray_statistics): Declare.
+ * toplev.c (finalize): Call it.
+
+2004-01-30 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * configure.ac (gcc_cv_as_dwarf2_debug_line): Enable test for
+ s390*-*-* targets by specifying a 'nop' insn.
+ * configure: Regenerate.
+
+2004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/11475
+ * config/sparc/sparc.md (movhi_lo_sum): Tighten predicates.
+
+2004-01-29 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/inclhack.def(math_exception): bypass only for glibc.
+ (matherr_decl): rename & relocate as exception_structure.
+ This fix must precede the math_exception fix.
+ * fixinc/fixincl.x: regen
+
+2004-01-29 Richard Henderson <rth@redhat.com>
+
+ * c-parse.in (extension): Use itype.
+ (SAVE_EXT_FLAGS): Don't allocate a tree.
+ (RESTORE_EXT_FLAGS): Don't read a tree.
+
+2004-01-29 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ * c-lex.c (c_lex): Rename to...
+ (c_lex_with_flags): Add new parameter to get CPP flags.
+ (c_lex): Thunk to c_lex_with_flags while keeping the old interface.
+ * c-pragma.h (c_lex_with_flags): Declare.
+
+2004-01-29 Roger Sayle <roger@eyesopen.com>
+
+ PR java/13824
+ * tree.c (unsafe_for_reeval): Handle EXIT_BLOCK_EXPR nodes specially
+ as their EXIT_BLOCK_LABELED_BLOCK operands can lead to unbounded
+ recursion.
+
+2004-01-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.md: Change predicate of a peephole2 pattern from reg_or_0_operand
+ to register_operand.
+
+2004-01-28 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/ia64.md (fetchadd_acq_si, fetchadd_acq_di)
+ (cmpxchg_acq_si, cmpxchg_acq_di): Exchange match_dup and
+ match_operand expressions so that all match_dups appear
+ lexically after their corresponding match_operands.
+
+2004-01-28 Zack Weinberg <zack@codesourcery.com>
+ Jim Wilson <wilson@specifixinc.com>
+
+ * config/ia64/ia64.c (ia64_split_tmode, ia64_split_tmode_move):
+ Rewrite to use POST_INC/POST_DEC/POST_MODIFY instead of a
+ scratch pointer.
+ (ia64_secondary_reload_class): Delete case GR_REGS.
+ * config/ia64/ia64.md (movti, *movti_internal, movtf, *movtf_internal):
+ Do not allocate a scratch register.
+ (reload_inti, reload_outti, reload_intf, reload_outtf): Delete.
+
+2004-01-27 Zack Weinberg <zack@codesourcery.com>
+
+ * ia64.c (ia64_function_arg): When placing HFAs in integer
+ registers, do not special case the mode used for complex
+ types. Do not advance int_regs until the current register
+ is full.
+
+2004-01-28 Jan Hubicka <jh@suse.cz>
+
+ * function.c (allocate_struct_function): Do not initialize expr, emit
+ and varasm.
+ (prepare_function_start): Do it here.
+ * c-parse.in (maybe_type_qual): Do not produce line number notes.
+
+2004-01-28 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/fp-bit.c (pack_d): When using paired doubles to implement
+ a long double, round the high part separately.
+ (unpack_d): Fix the case in which the high part is a power of two
+ and the low part is a nonzero value of the opposite sign.
+
+2004-01-27 Roger Sayle <roger@eyesopen.com>
+
+ * config/pa/pa.c (emit_move_sequence): Check that operand1 is a
+ CONST_INT before using INTVAL.
+
+2004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.h (TARGET_DEFAULT): Default to !TARGET_BACKCHAIN.
+ * config/s390/s390.c (s390_return_addr_rtx): Fail for all but current
+ frame if !TARGET_BACKCHAIN.
+ * config/s390/s390.md ("allocate_stack"): Use pattern only if
+ TARGET_BACKCHAIN.
+ * doc/invoke.texi (-mbackchain/-mno-backchain): Document new default.
+
+2004-01-27 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/7297
+ * except.c (init_eh): Use a 5-word __jbuf for __builtin_setjmp().
+
+2004-01-27 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (xtensa_copy_incoming_a7): Remove SUBREG
+ on CQImode and CHImode incoming arguments in register a7.
+ (function_arg): Wrap BLKmode argument in register a7 in a PARALLEL.
+ * config/xtensa/xtensa.h (BLOCK_REG_PADDING): Define.
+ * config/xtensa/xtensa.md (movdi, movdf): Only call force_reg or
+ xtensa_copy_incoming_a7 before reload.
+
+2004-01-27 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * config/arm/arm.c (output_return_instruction): Only restore IP
+ into SP if frame_pointer_needed.
+
+2004-01-27 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (function_arg_pass_by_reference): Return 1
+ for SCmode and DCmode if ARCH32.
+ (sparc_va_arg): Handle SCmode and DCmode by reference if ARCH32.
+ * config/sparc/sparc.h (RETURN_IN_MEMORY): Return 0 for TCmode
+ if ARCH32.
+ (BASE_RETURN_VALUE_REG): Return 32 for all FP modes except TFmode
+ if ARCH32.
+ (BASE_OUTGOING_VALUE_REG): Likewise.
+
+2004-01-27 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/10904
+ PR target/13058
+ * config/sparc/sparc.h (CANNOT_CHANGE_MODE_CLASS): New.
+ Forbid mode changes from SImode for lower FP regs if ARCH64.
+
+2004-01-27 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (ix86_constant_alignment): Decrease alignment
+ of long string literals from 32 bytes to sizeof (void *) when !-Os
+ and to 1 with -Os.
+
+2004-01-27 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ PR optimization/13567
+ * cse.c (cse_basic_block): Call cse_insn with a non-null
+ libcall_insn for the last SET insn of a no-confilict block.
+
+2004-01-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h (CHAR_BITFIELD): Delete.
+ (BOOL_BITFIELD): New.
+ * c-decl.c (c_scope): Use BOOL_BITFIELD.
+ * gengtype-lex.l: Recognize BOOL_BITFIELD instead of CHAR_BITFIELD.
+
+2004-01-26 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * doc/tm.texi: Insert some weasel words when LOAD_EXTEND_OP
+ may or may not return non-NIL.
+ * postreload.c (reload_cse_simplify_operands): In LOAD_EXTEND_OP code,
+ check CANNOT_CHANGE_MODE_CLASS
+
+2004-01-26 Jeff Law <law@redhat.com>
+
+ * doc/contrib.texi: Minor cleanup for Paolo Carlini's entry. Add
+ acute accents for Petur Runolfsson's entry.
+
+
+2004-01-26 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ Backport from mainline:
+
+ 2004-01-23 Eric Botcazou <ebotcazou@act-europe.fr>
+ Olivier Hainque <hainque@act-europe.fr>
+
+ * fold-const.c (fold_binary_op_with_conditional_arg): Only
+ build a COMPOUND_EXPR if 'arg' is really a SAVE_EXPR.
+
+2004-01-26 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/13666
+ * config/sparc/sparc.c (function_arg_union_value): New function.
+ (function_arg): Use it to deal with unions.
+ (function_value): Likewise. Define 'regbase' only for ARCH64.
+ Replace a conditional statement by a simpler one.
+
+2004-01-26 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips16_optimize_gp): Delete.
+ (mips_reorg): Don't call it.
+
+2004-01-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_offset_within_object_p): New function.
+ (mips_symbolic_constant_p): Use it in the SYMBOL_SMALL_DATA and
+ SYMBOL_CONSTANT_POOL cases. Also use it for SYMBOL_GENERAL if the
+ ABI has 64-bit pointers and the object file only allows 32-bit symbols.
+
+2004-01-25 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ PR bootstrap/13853
+ * cfgcleanup.c (try_optimize_cfg): Explicitly test against 0.
+
+2004-01-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (mips_reg_mode_ok_for_base_p): Delete.
+ (mips_regno_mode_ok_for_base_p): Declare.
+ * config/mips/mips.h (ARG_POINTER_REGNUM): Renumber to 77.
+ (FRAME_POINTER_REGNUM): Renumber to 78.
+ (FIRST_PSEUDO_REGISTER): Update comment accordingly.
+ (BASE_REG_P, GP_REG_OR_PSEUDO_STRICT_P): Delete.
+ (GP_REG_OR_PSEUDO_NONSTRICT_P): Delete.
+ (REGNO_MODE_OK_FOR_BASE_P): Use mips_regno_mode_ok_for_base_p.
+ (REG_MODE_OK_FOR_BASE_P): Likewise.
+ * config/mips/mips.c (mips_reg_names, mips_sw_reg_names): Change
+ entry for 77 to "$arg" and entry for 78 to "$frame".
+ (mips_regno_to_class): Map 77 and 78 to ALL_REGS.
+ (mips_reg_mode_ok_for_base_p): Remove.
+ (mips_regno_mode_ok_for_base_p): New function, derived from old
+ BASE_REG_P macro. Don't enforce the mips16 stack pointer
+ restrictions unless we're being strict.
+ (mips_valid_base_register_p): Use mips_regno_mode_ok_for_base_p.
+
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/frontends.texi: Update copyright.
+ * doc/gcov.texi: Likewise.
+ * doc/gty.texi: Likewise.
+ * doc/sourcebuild.texi: Likewise.
+
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/coff.h: Update copyright.
+ * config/h8300/elf.h: Likewise.
+ * config/h8300/h8300-protos.h: Likewise.
+ * config/h8300/h8300.c: Likewise.
+ * config/h8300/h8300.h: Likewise.
+ * config/h8300/h8300.md: Likewise.
+
+2004-01-24 Hartmut Penner <hpenner@de.ibm.com>
+
+ PR target/13674
+ * config/rs6000/rs6000.md (movdf_hardfloat64): Do not disparage
+ loading into GPR.
+
+2004-01-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR optimization/12440
+ * loop.c: Include ggc.h.
+ (loop_optimize): Run garbage collector between optimization of loops.
+ * Makefile.in (loop.o): Add GGC_H dependency.
+
+2004-01-24 Jakub Jelinek <jakub@redhat.com>
+
+ * simplify-rtx.c (simplify_relational_operation): Don't
+ simplify address == constant into address + -constant == 0.
+
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * gcc.c (process_command): Don't internationalize the
+ Copyright message.
+ * mips-tfile.c (main): Likewise.
+
+2004-01-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * recog.c: Fix a typo in copyright.
+
+2004-01-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * alias.c, basic-block.h, c-common.c, c-common.h,
+ c-cppbuiltin.c, c-pragma.c, c-pretty-print.c, c-semantics.c,
+ calls.c, cfg.c, cfgcleanup.c, cfgrtl.c, cgraph.h, collect2.c,
+ combine.c, cppcharset.c, cpptrad.c, cse.c, cselib.c, cselib.h,
+ defaults.h, df.c, dominance.c, et-forest.c, expmed.c, expr.c,
+ expr.h, fold-const.c, function.h, gcc.c, gcse.c, genattrtab.c,
+ genautomata.c, genconditions.c, genflags.c, gengtype.c,
+ genopinit.c, genrecog.c, gensupport.c, ggc-zone.c, graph.c,
+ haifa-sched.c, integrate.c, langhooks-def.h, langhooks.c,
+ langhooks.h, local-alloc.c, optabs.c, optabs.h, postreload.c,
+ ra.h, recog.c, reg-stack.c, regmove.c, reload.c, reorg.c,
+ rtlanal.c, sched-deps.c, sched-ebb.c, sdbout.c, system.h,
+ target.h, targhooks.c, toplev.h, tree-inline.c,
+ unwind-dw2-fde.h, unwind-pe.h, unwind.h, varray.c, varray.h:
+ Update copyright.
+
+2004-01-23 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (xtensa_va_arg): Handle complex values as
+ separate real and imaginary parts.
+ * config/xtensa/xtensa.h (SPLIT_COMPLEX_ARGS): Define.
+
+2004-01-23 Richard Henderson <rth@redhat.com>
+
+ PR opt/12941
+ * combine.c (SHIFT_COUNT_TRUNCATED): Provide default value.
+ (simplify_comparison): Don't simplify (eq (zero_extract c 1 r) 0)
+ if SHIFT_COUNT_TRUNCATED is set.
+
+2004-01-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (alpha___extern_prefix): Renamed to ...
+ (alpha___extern_prefix_sys_stat): ... this.
+ Apply to <sys/mount.h>, too.
+ Tweak to match more variations.
+ * fixinc/tests/base/sys/stat.h: Adapt for new hackname.
+
+ * fixinc/inclhack.def (alpha___extern_prefix,
+ alpha___extern_prefix_standards): New hacks to obey
+ __PRAGMA_EXTERN_PREFIX.
+ * fixinc/tests/base/testing.h [ALPHA___EXTERN_PREFIX_CHECK]: New
+ test.
+ * fixinc/tests/base/standards.h: Likewise.
+
+ * fixincl/inclhack.def (alpha_pthread): Tweak to match more
+ variations.
+ New testcase.
+ * fixinc/tests/base/pthread.h: Handle it.
+
+ * fixinc/fixincl.x: Regenerate.
+
+2004-01-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (bad_lval): Renamed to ...
+ (alpha_bad_lval): ... this.
+ Removed file list.
+ Restrict to alpha*-dec-osf*.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/libgen.h: Remove, moving test ...
+ * fixinc/tests/base/testing.h: ... here, reflecting new name.
+
+2004-01-23 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * doc/invoke.texi (Optimize Options): Note that --param arguments
+ are subject to change without notice.
+
+2004-01-23 Zack Weinberg <zack@codesourcery.com>
+
+ PR c/13814
+ * c-decl.c (diagnose_mismatched_decls): Also discard a
+ built-in if we encounter an old-style definition with the
+ same name.
+
+2004-01-23 Jakub Jelinek <jakub@redhat.com>
+
+ * config.gcc (powerpc*-*): Clear $with_cpu or $with_tune if it was
+ set to default{32,64}.
+
+2004-01-21 Jakub Jelinek <jakub@redhat.com>
+
+ * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR)
+ [!__powerpc64__]: Corrected to handle kernels with changed ucontext.
+
+2003-11-30 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_emit_restore_regs_using_mov): Deal with large offsets.
+
+2004-01-23 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (scan_record_type): New function.
+ (function_arg_slotno): Use it to determine which kinds of
+ registers the record can be passed in.
+
+2004-01-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.ac (enable_werror): Fixed typo.
+ * configure: Regenerate.
+
+2004-01-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config.gcc (mips-sgi-irix6*o32): Removed.
+ * config/mips/iris6-o32-as.h: Likewise.
+ * config/mips/iris6-o32-gas.h: Likewise.
+ * config/mips/iris6-o32.h: Likewise.
+
+2004-01-22 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (function_arg): Generalize logic so that it
+ handles complex and vector modes.
+
+2004-01-22 Daniel Jacobowitz <drow@mvista.com>
+
+ * c-semantics.c (genrtl_while_stmt, genrtl_do_stmt_1)
+ (genrtl_for_stmt): Remove emit_nop calls.
+
+2004-01-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR target/13713
+ PR target/13324
+ * pa.md (movstrsi_prereload, movstrsi_postreload, movstrdi_prereload,
+ movstrdi_postreload, clrstrsi_prereload, clrstrsi_postreload,
+ clrstrdi_prereload, clrstrdi_postreload): Fix constraints.
+
+2004-01-22 Daniel Jacobowitz <drow@mvista.com>
+
+ * config/arm/arm.c: Include "debug.h".
+ (thumb_pushpop): Take two new arguments. Add some commentary.
+ Output frame information when pushing.
+ (thumb_exit, thumb_unexpanded_epilogue): Update calls to
+ thumb_pushpop.
+ (thumb_output_function_prologue): Likewise. Accumulate a CFA
+ offset, and pass it to thumb_pushpop. Output CFI information.
+ (thumb_expand_prologue): Add some frame-related markers and notes.
+
+2004-01-22 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_frame_info): Allow large frame sizes
+ for TARGET_64BIT.
+ (s390_arg_frame_offset): Change return type to HOST_WIDE_INT.
+ * config/s390/s390-protos.h (s390_arg_frame_offset): Likewise.
+
+2004-01-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/tm.texi (CASE_VECTOR_PC_RELATIVE): Mention that the
+ macro need not be defined if jump-tables should contain
+ relative addresses only when -fPIC or -fPIC is in effect.
+
+2004-01-22 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (function_arg_slotno): Use
+ FLOAT_TYPE_P to detect FP fields in structures.
+ (function_arg_record_value_1): Likewise.
+ (function_arg_record_value_2): Likewise.
+
+2004-01-22 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/13559
+ * config/sparc/sparc.c (function_arg_record_value_3): Revert
+ to 'word_mode' once the first slot has been filled.
+
+2004-01-22 Olivier Hainque <hainque@act-europe.fr>
+
+ * config/sparc/sparc.c (function_arg_record_value_1): Fix
+ computation of the number of integer registers required.
+
+2004-01-22 Hartmut Penner <hpenner@de.ibm.com>
+
+ * gcc/config/rs6000/rs6000.c (function_arg) Handle
+ vector register special in function without prototype.
+ (function_arg_advance): Vector parameters get always
+ GPRs allocated for the linux64 target.
+
+2004-01-21 Andrew Pinski <apinski@apple.com>
+
+ PR target/13785
+ * config/rs6000/rs6000.md (call_value): Force operand
+ 1 not operand 0 into a register.
+
+2004-01-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa-protos.h: Update copyright.
+ * pa.h: Likewise.
+ * pa.md: Likewise.
+
+ * fixinc/inclhack.def (hpux10_stdio_declarations, ultrix_const3,
+ ultrix_locale, ultrix_stdlib, ultrix_strings, ultrix_sys_time,
+ ultrix_unistd): New hacks.
+ * fixinc/tests/base/stdio.h (HPUX10_STDIO_DECLARATIONS_CHECK,
+ ULTRIX_CONST2_CHECK): Add checks.
+ * fixinc/tests/base/stdlib.h (ULTRIX_STDLIB_CHECK): Likewise.
+ * fixinc/tests/base/strings.h (ULTRIX_STRINGS2_CHECK): Likewise.
+ * fixinc/tests/base/unistd.h (ULTRIX_UNISTD_CHECK): Likewise.
+ * fixinc/tests/base/sys/time.h (ULTRIX_SYS_TIME_CHECK): Likewise.
+ * fixinc/tests/base/locale.h: New file.
+ * fixincl.x: Rebuilt.
+
+2004-01-21 Andreas Jaeger <aj@suse.de>
+ Michael Matz <matz@suse.de>
+
+ * doc/extend.texi (Extended Asm): Clarify memory clobber.
+
+2004-01-21 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (merge_decls): Kill different_binding_level and
+ different_tu arguments; simplify throughout.
+ (duplicate_decls): Likewise.
+ (pushdecl, merge_translation_unit_decls): Update calls to
+ duplicate_decls.
+
+2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
+
+ PR bootstrap/12730
+ * configure.ac: Delete definition and subsitution of docdir.
+ Add info, man, srcman and srcinfo to target hooks. Create doc/
+ directory.
+ * configure: Regenerate.
+ * Makefile.in: Don't substitute docdir and delete all references
+ throughout.
+ (MAKEINFOFLAGS): Define.
+ (stmp-docobjdir): Delete.
+ (INFOFILES, MANFILES): Define.
+ (info): Call lang.info, srcinfo and lang.srcinfo.
+ (generated-manpages): Call lang.man, srcman and lang.srcman.
+ (srcinfo, srcman): New rules to copy back files to source directory.
+ (doc/%.info, doc/%.dvi, doc/%.1, doc/%.7): New implict rule.
+ (install-man): Revamp rule.
+ (clean): Update dvi directory.
+ (distclean): Delete TAGS from front end directorys.
+ (maintainer-clean): Delete all document files in source directory.
+
+ objc/Make-lang.in (objc.man, objc.info): Dummy entries.
+ (objc.srcman, objc.srcinfo): Likewise.
+
+2004-01-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (pretty-print.o): Depend on $(CONFIG_H) and
+ $(SYSTEM_H).
+ (print-rtl1.o): Depend on $(SYSTEM_H).
+
+2004-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa-protos.h (compute_frame_size): Use HOST_WIDE_INT for frame sizes.
+ * pa.c (store_reg, store_reg_modify, load_reg, set_reg_plus_d):
+ Likewise. Handle frames larger than 0x7fffffff on 64-bit ports.
+ (emit_move_sequence): Check scratch_reg first in various if statements.
+ Extend source simplification to handle all 64-bit CONST_INTs.
+ (pa_output_function_prologue): Use HOST_WIDE_INT_PRINT_DEC for printing
+ frame size.
+ (hppa_expand_prologue, hppa_expand_epilogue): Use HOST_WIDE_INT for
+ frame offset calculations.
+ * pa.h (NEW_HP_ASSEMBLER): Add comment.
+ (MAX_LEGIT_64BIT_CONST_INT, MIN_LEGIT_64BIT_CONST_INT,
+ LEGITIMATE_64BIT_CONST_INT_P): Define.
+ (LEGITIMATE_CONSTANT_P): Use LEGITIMATE_64BIT_CONST_INT_P. Treat
+ any CONST_INT as legitimate during and after reload.
+ (VAL_32_BITS_P, INT_32_BITS): Define.
+ (LEGITIMIZE_RELOAD_ADDRESS): Handle large frame offsets.
+
+2004-01-21 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/sysv4.h (DWARF2_FRAME_REG_OUT): Define.
+ * dwarf2out.c (output_cfi): Map regs using DWARF2_FRAME_REG_OUT.
+ * doc/tm.texi (DWARF_FRAME_REGNUM, DWARF2_FRAME_REG_OUT): Document.
+
+2004-01-20 Geoffrey Keating <geoffk@apple.com>
+
+ * alias.c (new_alias_set): Mark last_alias_set for PCH.
+ (get_varargs_alias_set): Rename 'set' to 'varargs_set' and mark it
+ for PCH.
+ (get_frame_alias_set): Likewise, except rename it to 'frame_set'.
+ * config/rs6000/rs6000.c (rs6000_sr_alias_set): Mark for PCH.
+ (get_TOC_alias_set): Mark 'set' for PCH.
+
+2004-01-20 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_load_call_address): Make the call insn
+ use $gp if it could be calling a lazy binding stub.
+
+2004-01-20 Denis Chertykov <denisc@overta.ru>
+
+ PR bootstrap/13735
+ * config/avr/avr.h (BASE_REG_CLASS): Don't permit to use X
+ register as pointer after reload.
+
+2004-01-20 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/13557
+ * config/sparc/sparc.c (function_arg): Reorder the cases.
+
+2004-01-19 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (target_noncanonical, program_transform_name): Use
+ immediate define instead of deferred.
+ (GCC_INSTALL_NAME, GCC_TARGET_INSTALL_NAME, CPP_INSTALL_NAME,
+ PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME, GCOV_INSTALL_NAME,
+ GCCBUG_INSTALL_NAME): Define via a immediate $(shell) instead of
+ deferred backquote.
+
+2004-01-19 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (aligned_memory_operand): Check MEM_ALIGN,
+ don't check memory mode.
+ (unaligned_memory_operand): Likewise.
+ (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Don't
+ abort for op0 not MEM.
+
+ * config/alpha/alpha.c (alpha_expand_mov_nobwx): If the destination
+ is not a reg, copy to a scratch first.
+ (aligned_loadqi, aligned_loadhi, unaligned_loadqi, unaligned_loadhi,
+ unaligned_loadqi_le, unaligned_loadqi_be, unaligned_loadhi_le,
+ unaligned_loadhi_be): Expect op0 in DImode; don't SUBREG.
+ (reload_inqi, reload_inhi): Fix mode of op0.
+ (reload_inqi_help, reload_inhi_help, reload_outqi_help,
+ reload_outhi_help): Likewise. Use define_insn_and_split.
+
+ * config/alpha/alpha.md (call peepholes): Check for REG_NORETURN
+ as well as $29 dead.
+
+2004-01-19 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sol2.h (ASM_DECLARE_OBJECT_NAME): New. Emit
+ "tls_object" for thread-local objects.
+ * config/sparc/sparc.c (sparc_elf_asm_named_section): Emit
+ "#tls" for thread-local sections.
+ * configure.ac (thread-local checks): Specify --fatal-warnings in
+ every binutils-specific checks. For sparc*-*-*, test whether the
+ OS is Solaris and the tools are native and act accordingly.
+ * configure: Rebuild.
+
+2004-01-19 Jeff Law <law@redhat.com>
+
+ * contrib.texi: Update Paolo Carlini's entry. New entries for
+ Jerry Quinn and Petur Runolfsson.
+
+2004-01-19 Richard Henderson <rth@redhat.com>
+
+ * alpha.h (HARD_REGNO_MODE_OK): Disallow SImode in FP regs.
+ * alpha.md (UNSPEC_NT_LDA): Remove.
+ (UNSPEC_CVTLQ, cvtlq): New.
+ (extendsidi2_1): Rename from extendsidi2_nofix; remove f/f.
+ (extendsidi2_fix): Remove.
+ (extendsidi2 splitter): Use cvtlq.
+ (extendsidi2 fp peepholes): Remove.
+ (cvtql): Use SFmode instead of SImode.
+ (fix_trunc?fsi): Update to match.
+ (floatsisf2_ieee, floatsisf2, floatsidf2_ieee, floatsidf2): New.
+ (movsi): Rename from movsi_nofix, remove f alternatives.
+ (movsi_nt_vms): Similarly.
+ (movsi_fix, movsi_nt_vms_fix): Remove.
+ (nt_lda): Remove.
+ * alpha.c (alpha_expand_prologue): Use adddi3, not nt_lda.
+
+2004-01-19 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_remove_node): Fix removal from linked list.
+ * cgraphunit.c (cgraph_finalize_compilation_unit): Clear next_needed
+ list.
+ (cgraph_remove_unreachable_nodes): New function
+ (cgraph_decide_inlining_of_small_function): Fix pasto.
+ (cgraph_decide_inlining_incrementally): Fix pasto.
+ (cgrpah_decide_inlining): Likewise; remove unreachable nodes.
+
+2004-01-18 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin_expect_jump): Fix thinko of reusing
+ live "next" variable, which can lead to an infinite loop.
+
+2004-01-18 Daniel Jacobowitz <drow@mvista.com>
+
+ * final.c (final_scan_insn): Make non-static again.
+ * output.h (final_scan_insn): Re-add prototype.
+ * config/arc/arc.c (arc_output_function_epilogue): Add NULL
+ to final_scan_insn call.
+ * config/cris/cris.c (cris_target_asm_function_epilogue): Likewise.
+ * config/mips/mips.c (mips_output_conditional_branch): Likewise.
+ * config/pa/pa.c (output_lbranch, output_call): Likewise.
+ * config/sh/sh.c (print_slot): Likewise.
+ * config/sparc/sparc.c (sparc_nonflat_function_epilogue): Likewise.
+ (output_sibcall, sparc_flat_function_epilogue): Likewise.
+
+2004-01-18 Jan Hubicka <jh@suse.cz>
+
+ * basic-block.h (try_redirect_by_replacing_jump): Declare.
+ * cfgcleanup.c (try_optimize_cfg): Use it.
+ * cfgrtl.c (try_redirect_by_replacing_jump): Export.
+ (rtl_redirect_edge_and_branch, cfg_layout_redirect_edge_and_branch):
+ Kill hack.
+ (cfg_layout_merge_blocks): Use try_redirect_by_replacing_jump.
+
+2004-01-18 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/altivec.h: Wrap C++ functions in extern "C++"
+ block.
+
+ * config/rs6000/rs6000.c (rs6000_special_round_type_align):
+ Check for NULL in the chain and remove repeated code.
+
+2004-01-18 Jan Hubicka <jh@suse.cz>
+
+ * coverage.c (checksum_string): Rename to ...
+ (coverage_checksum_string): ... this one, Use crc32_string; recognize
+ names containing random number and zero the number out in order to get
+ match.
+
+2004-01-18 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_got_alias_set): Mark for PCH.
+
+2004-01-18 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/c-tree.texi, doc/cpp.texi, doc/extend.texi,
+ doc/frontends.texi, doc/gcov.texi, doc/gty.texi, doc/install.texi,
+ doc/invoke.texi, doc/libgcc.texi, doc/md.texi, doc/rtl.texi,
+ doc/sourcebuild.texi, doc/standards.texi, doc/tm.texi,
+ doc/trouble.texi: Remove trailing whitespace.
+
+2004-01-18 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/7618
+ * config/mips/mips.c: Include cfglayout.h.
+ (TARGET_ASM_OUTPUT_MI_THUNK, TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define.
+ (mips_unspec_offset_high): Add temporary register argument.
+ (mips_load_call_address): New function, split out from...
+ (mips_expand_call): ...here.
+ (mips_output_cplocal): New function.
+ (mips_output_function_prologue, mips_output_function_epilogue): Use it.
+ (mips_emit_loadgp): New function, split out from...
+ (mips_expand_prologue): ...here.
+ (mips_output_mi_thunk): New function.
+
+2004-01-17 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin_expect_jump): Fix mistake in my
+ last patch. Use XEXP (x, 0) to get a LABEL_REF's CODE_LABEL.
+
+2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/rs6000.c (rs6000_special_round_type_align):
+ Return type is unsigned int not int.
+ * config/rs6000/rs6000-protos.h (rs6000_special_round_type_align):
+ Likewise.
+
+2004-01-18 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/contrib.texi, doc/cppenv.texi, doc/extend.texi,
+ doc/install.texi, doc/invoke.texi, doc/tm.texi: Consistently use
+ "GNU/Linux" and "Microsoft Windows" terminology.
+
+2004-01-18 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/c-tree.texi, doc/compat.texi, doc/cpp.texi,
+ doc/cppopts.texi, doc/extend.texi, doc/install.texi,
+ doc/interface.texi, doc/invoke.texi, doc/libgcc.texi, doc/md.texi,
+ doc/objc.texi, doc/rtl.texi, doc/tm.texi, doc/trouble.texi: Use
+ @smallexample instead of @example.
+
+2004-01-17 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/objc-act.c (build_objc_method_call): Use target
+ hooks instead of macros to determine if ..._stret
+ dispatchers should be used (NeXT runtime only).
+
+2004-01-17 Daniel Jacobowitz <drow@mvista.com>
+
+ * rtl.h (emit_insn_before_sameloc, emit_jump_insn_before_sameloc)
+ (emit_call_insn_before_sameloc, emit_insn_after_sameloc)
+ (emit_jump_insn_after_sameloc, emit_call_insn_after_sameloc): New
+ macros.
+ * reload1.c (emit_reload_insns): Use them.
+ * emit-rtl.c (emit_insn_before_sameloc, emit_insn_after_sameloc)
+ (emit_jump_insn_after_sameloc, emit_call_insn_after_sameloc): Check
+ for NULL PATTERN.
+
+2004-01-17 Daniel Jacobowitz <drow@mvista.com>
+
+ * final.c (SEEN_BB, SEEN_NOTE, SEEN_EMITTED): Define.
+ (final_scan_insn): Update to take an additional SEEN argument. Emit
+ a line note after the prologue. Make static.
+ (line_note_exists): Remove.
+ (final): Don't initialize line_note_exists. Update call to
+ final_scan_insn.
+ * output.h (final_scan_insn): Remove prologue.
+ * function.c (set_insn_locators): Update comment.
+ (thread_prologue_and_epilogue_insns): Add a comment.
+
+2004-01-17 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/invoke.texi, doc/standards.texi: Point to 3.4 version of
+ c99status.html.
+
+2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/10781
+ * config/rs6000/rs6000-protos.h (rs6000_special_round_type_align):
+ Prototype.
+ * config/rs6000/rs6000.c (rs6000_special_round_type_align):
+ New function.
+ * config/rs6000/linux64.h (ROUND_TYPE_ALIGN): Use it.
+ * config/rs6000/aix.h (ROUND_TYPE_ALIGN): Likewise.
+ * config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Likewise.
+
+2004-01-17 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_handle_reorder_blocks): Fix pasto in previous
+ commit.
+
+ * toplev.c (HAVE_conditional_execution): Provide default.
+ (rest_of_handle_reorder_blocks): For conditional_execution target
+ update liveness once after all transformations
+ (rest_of_compilation): Do crossjumping before ce3.
+
+2004-01-17 J. Brobecker <brobecker@gnat.com>
+
+ * dwarf2out.c (is_subrange_type): Renamed from is_ada_subrange_type().
+ Remove checks for is_ada() and TREE_UNSIGNED.
+ (subrange_type_die): Emit a byte_size attribute if the subrange
+ type size is different from the base type size.
+ (modified_type_die): Replace call to is_ada_subrange_type() by
+ call to is_subrange_type().
+
+2004-01-16 Mark Mitchell <mark@codesourcery.com>
+
+ * configure.ac: Do not do internal checking or -Werror by default.
+ * configure: Regenerated.
+
+ * doc/include/gcc-common.texi (DEVELOPMENT): @clear it.
+ * version.c (version_string): Mark as prerelease.
+
+2004-01-16 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/sh/sh.c: Include ggc.h.
+
+2004-01-17 Jan Hubicka <jh@suse.cz>
+
+ * c-common.c (c_estimate_num_insns_1): Handle builtin_constant_p and
+ builtin_expect specially.
+ * params.def (PARAM_MAX_INLINE_INSNS_AUTO): Set to 100.
+ (PARAM_LARGE_FUNCTION_INSNS): Set to 3000.
+ * invoke.texi (max-inline-insns-single): Set to 100.
+ (large-function-insns): Set to 3000.
+
2004-01-16 Jan Hubicka <jh@suse.cz>
* i386.md (load_tp_di): Fix pasto.
@@ -39,11 +3207,11 @@
2004-01-16 Jan Hubicka <jh@suse.cz>
- PR opt/11350
- * cfgcleanup.c (try_optimize_cfg): Suppress tablejump removal
+ PR opt/11350
+ * cfgcleanup.c (try_optimize_cfg): Suppress tablejump removal
after reload.
- * cfgrtl.c (rtl_can_merge_blocks, cfglayout_can_merge_blocks,
- rtl_try_redirect_by_replacing_branch): Likewise.
+ * cfgrtl.c (rtl_can_merge_blocks, cfglayout_can_merge_blocks,
+ rtl_try_redirect_by_replacing_branch): Likewise.
2004-01-15 Geoffrey Keating <geoffk@apple.com>
@@ -1127,6 +4295,10 @@
* toplev.c (output_file_directive): Don't use
ASM_OUTPUT_MAIN_SOURCE_FILENAME.
+2004-01-05 Steven Bosscher <s.bosscher@student.tudelft.nl>
+
+ * toplev.c: Fix broken checkin of 2003-12-30.
+
2004-01-05 Daniel Berlin <dberlin@dberlin.org>
* ggc-zone.c: Remove everything in #ifdef USING_MALLOC_PAGE_GROUPS
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index b099e71fbd3..845fc671283 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -2,7 +2,7 @@
# Run 'configure' to generate Makefile from Makefile.in
# Copyright (C) 1987, 1988, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
-# 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+# 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
#This file is part of GCC.
@@ -60,10 +60,10 @@ MAKEOVERRIDES =
build=@build@
host=@host@
target=@target@
-target_noncanonical=@target_noncanonical@
+target_noncanonical:=@target_noncanonical@
# Sed command to transform gcc to installed name.
-program_transform_name = @program_transform_name@
+program_transform_name := @program_transform_name@
# -----------------------------
# Directories used during build
@@ -71,8 +71,11 @@ program_transform_name = @program_transform_name@
# Directory where sources are, from where we are.
srcdir = @srcdir@
-docobjdir = @docobjdir@
-docdir = $(srcdir)/doc
+docdir = @srcdir@/doc
+
+# Directory where sources are, absolute.
+abs_srcdir = @abs_srcdir@
+abs_docdir = @abs_srcdir@/doc
# Top build directory, relative to here.
top_builddir = ..
@@ -235,7 +238,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL@
MAKEINFO = @MAKEINFO@
-MAKEINFOFLAGS =
+MAKEINFOFLAGS = --no-split
TEXI2DVI = texi2dvi
TEXI2POD = perl $(srcdir)/../contrib/texi2pod.pl
POD2MAN = pod2man --center="GNU" --release="gcc-$(version)"
@@ -525,7 +528,7 @@ EXTRA_OBJS = @extra_objs@
# List of extra object files that should be compiled and linked with
# the gcc driver.
-EXTRA_GCC_OBJS =@host_extra_gcc_objs@
+EXTRA_GCC_OBJS =@extra_gcc_objs@
# List of additional header files to install.
EXTRA_HEADERS =@extra_headers_list@
@@ -594,13 +597,13 @@ BUILD_LDFLAGS=$(LDFLAGS)
BUILD_CPPFLAGS=$(ALL_CPPFLAGS)
# Actual name to use when installing a native compiler.
-GCC_INSTALL_NAME = `echo gcc|sed '$(program_transform_name)'`
-GCC_TARGET_INSTALL_NAME = $(target_noncanonical)-`echo gcc|sed '$(program_transform_name)'`
-CPP_INSTALL_NAME = `echo cpp|sed '$(program_transform_name)'`
-PROTOIZE_INSTALL_NAME = `echo protoize|sed '$(program_transform_name)'`
-UNPROTOIZE_INSTALL_NAME = `echo unprotoize|sed '$(program_transform_name)'`
-GCOV_INSTALL_NAME = `echo gcov|sed '$(program_transform_name)'`
-GCCBUG_INSTALL_NAME = `echo gccbug|sed '$(program_transform_name)'`
+GCC_INSTALL_NAME := $(shell echo gcc|sed '$(program_transform_name)')
+GCC_TARGET_INSTALL_NAME := $(target_noncanonical)-$(shell echo gcc|sed '$(program_transform_name)')
+CPP_INSTALL_NAME := $(shell echo cpp|sed '$(program_transform_name)')
+PROTOIZE_INSTALL_NAME := $(shell echo protoize|sed '$(program_transform_name)')
+UNPROTOIZE_INSTALL_NAME := $(shell echo unprotoize|sed '$(program_transform_name)')
+GCOV_INSTALL_NAME := $(shell echo gcov|sed '$(program_transform_name)')
+GCCBUG_INSTALL_NAME := $(shell echo gccbug|sed '$(program_transform_name)')
# Setup the testing framework, if you have one
EXPECT = `if [ -f $${rootme}/../expect/expect ] ; then \
@@ -681,16 +684,6 @@ PRETTY_PRINT_H = pretty-print.h input.h $(OBSTACK_H)
DIAGNOSTIC_H = diagnostic.h diagnostic.def $(PRETTY_PRINT_H)
C_PRETTY_PRINT_H = $(PRETTY_PRINT_H) $(C_COMMON_H) $(TREE_H)
-# target overrides
-ifneq ($(tmake_file),)
-include $(tmake_file)
-endif
-
-# host overrides
-ifneq ($(xmake_file),)
-include $(xmake_file)
-endif
-
#
# Now figure out from those variables how to compile and link.
@@ -950,6 +943,19 @@ ifneq ($(LANG_MAKEFRAGS),)
include $(LANG_MAKEFRAGS)
endif
+# target and host overrides must follow the per-language makefile fragments
+# so they can override or augment language-specific variables
+
+# target overrides
+ifneq ($(tmake_file),)
+include $(tmake_file)
+endif
+
+# host overrides
+ifneq ($(xmake_file),)
+include $(xmake_file)
+endif
+
#
# -----------------------------
@@ -1054,7 +1060,7 @@ all.cross: native gcc-cross cpp$(exeext) specs \
$(LIBGCC) $(EXTRA_PARTS) lang.all.cross doc
# This is what must be made before installing GCC and converting libraries.
start.encap: native xgcc$(exeext) cpp$(exeext) specs \
- xlimits.h lang.start.encap @GENINSRC@ srcextra lang.srcextra
+ xlimits.h lang.start.encap @GENINSRC@ srcextra
# These can't be made until after GCC can run.
rest.encap: $(STMP_FIXPROTO) $(LIBGCC) $(EXTRA_PARTS) lang.rest.encap
# This is what is made with the host's compiler
@@ -1174,6 +1180,7 @@ libgcc.a: $(LIBGCC_DEPS)
$(MAKE) \
CFLAGS="$(CFLAGS) $(WARN_CFLAGS)" \
CONFIG_H="$(TCONFIG_H)" TM_H="$(TM_H)" \
+ INCLUDES="$(INCLUDES)" \
MAKEOVERRIDES= \
-f libgcc.mk all
@@ -1270,7 +1277,9 @@ c-parse.o : c-parse.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
$(GGC_H) intl.h $(C_TREE_H) input.h flags.h toplev.h output.h $(CPPLIB_H) \
varray.h gt-c-parse.h
-srcextra: c-parse.y c-parse.c gengtype-lex.c gengtype-yacc.c gengtype-yacc.h
+srcextra: gcc.srcextra lang.srcextra
+
+gcc.srcextra: c-parse.y c-parse.c gengtype-lex.c gengtype-yacc.c gengtype-yacc.h
-cp -p $^ $(srcdir)
c-parse.c: c-parse.y
@@ -1521,7 +1530,7 @@ toplev.o : toplev.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) $(RTL_
graph.h $(LOOP_H) except.h $(REGS_H) $(TIMEVAR_H) value-prof.h \
$(PARAMS_H) $(TM_P_H) reload.h dwarf2asm.h $(TARGET_H) \
langhooks.h insn-flags.h cfglayout.h real.h cfgloop.h \
- hosthooks.h $(LANGHOOKS_DEF_H) cgraph.h $(COVERAGE_H)
+ hosthooks.h $(LANGHOOKS_DEF_H) cgraph.h $(COVERAGE_H) alloc-pool.h
$(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
-DTARGET_NAME=\"$(target_noncanonical)\" \
-c $(srcdir)/toplev.c $(OUTPUT_OPTION)
@@ -1668,7 +1677,7 @@ value-prof.o : value-prof.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H)
loop.o : loop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) flags.h $(LOOP_H) \
insn-config.h $(REGS_H) hard-reg-set.h $(RECOG_H) $(EXPR_H) \
real.h $(PREDICT_H) $(BASIC_BLOCK_H) function.h cfgloop.h \
- toplev.h varray.h except.h cselib.h $(OPTABS_H) $(TM_P_H)
+ toplev.h varray.h except.h cselib.h $(OPTABS_H) $(TM_P_H) $(GGC_H)
doloop.o : doloop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) flags.h \
$(LOOP_H) $(EXPR_H) hard-reg-set.h $(BASIC_BLOCK_H) $(TM_P_H) toplev.h \
cfgloop.h
@@ -1676,7 +1685,7 @@ unroll.o : unroll.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) insn-co
function.h $(INTEGRATE_H) $(REGS_H) $(RECOG_H) flags.h $(EXPR_H) $(LOOP_H) toplev.h \
hard-reg-set.h varray.h $(BASIC_BLOCK_H) $(TM_P_H) $(PREDICT_H) $(PARAMS_H) \
cfgloop.h
-alloc-pool.o : alloc-pool.c $(CONFIG_H) $(SYSTEM_H) alloc-pool.h
+alloc-pool.o : alloc-pool.c $(CONFIG_H) $(SYSTEM_H) alloc-pool.h $(HASHTAB_H)
flow.o : flow.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(TREE_H) \
flags.h insn-config.h $(BASIC_BLOCK_H) $(REGS_H) hard-reg-set.h output.h toplev.h \
$(RECOG_H) function.h except.h $(EXPR_H) $(GGC_H) $(TM_P_H)
@@ -1824,7 +1833,7 @@ ifcvt.o : ifcvt.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
cfgloop.h
params.o : params.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(PARAMS_H) toplev.h
hooks.o: hooks.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(HOOKS_H)
-pretty-print.o: pretty-print.c $(PRETTY_PRINT_H)
+pretty-print.o: $(CONFIG_H) $(SYSTEM_H) pretty-print.c $(PRETTY_PRINT_H)
$(out_object_file): $(out_file) $(CONFIG_H) coretypes.h $(TM_H) $(TREE_H) $(GGC_H) \
$(RTL_H) $(REGS_H) hard-reg-set.h real.h insn-config.h conditions.h \
@@ -2262,8 +2271,8 @@ $(BUILD_PREFIX_1)rtl.o: $(srcdir)/rtl.c $(BCONFIG_H) coretypes.h $(GTM_H) $(SYST
sed -e 's/config[.]h/bconfig.h/' $(srcdir)/rtl.c > $(BUILD_PREFIX)rtl.c
$(CC_FOR_BUILD) -c $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(INCLUDES) $(BUILD_PREFIX)rtl.c $(OUTPUT_OPTION)
-print-rtl1.o: $(srcdir)/print-rtl.c $(BCONFIG_H) coretypes.h $(GTM_H) \
- $(RTL_H) $(TREE_H) hard-reg-set.h $(BASIC_BLOCK_H) $(TM_P_H)
+print-rtl1.o: $(srcdir)/print-rtl.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h \
+ $(GTM_H) $(RTL_H) $(TREE_H) hard-reg-set.h $(BASIC_BLOCK_H) $(TM_P_H)
rm -f print-rtl1.c
sed -e 's/config[.]h/bconfig.h/' $(srcdir)/print-rtl.c > print-rtl1.c
$(CC_FOR_BUILD) -c $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(INCLUDES) print-rtl1.c $(OUTPUT_OPTION)
@@ -2303,10 +2312,6 @@ intl.o: intl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) intl.h Makefile
-DLOCALEDIR=\"$(localedir)\" \
-c $(srcdir)/intl.c $(OUTPUT_OPTION)
-# Make-lang.in should add dependencies of po-generated on any generated
-# files which need to be scanned by gettext (usually Yacc-generated parsers).
-po-generated: c-parse.c options.c
-
#
# Remake cpp and protoize.
@@ -2609,13 +2614,15 @@ stmp-fixproto: fixhdr.ready fixproto stmp-int-hdrs
#
# Remake the info files.
-stmp-docobjdir:
- -test -d $(docobjdir) || mkdir $(docobjdir)
- $(STAMP) stmp-docobjdir
-
doc: $(BUILD_INFO) $(GENERATED_MANPAGES) gccbug
-info:: $(docobjdir)/cpp.info $(docobjdir)/gcc.info $(docobjdir)/gccint.info \
- $(docobjdir)/gccinstall.info $(docobjdir)/cppinternals.info
+
+INFOFILES = doc/cpp.info doc/gcc.info doc/gccint.info \
+ doc/gccinstall.info doc/cppinternals.info
+
+info: $(INFOFILES) lang.info @GENINSRC@ srcinfo lang.srcinfo
+
+srcinfo: $(INFOFILES)
+ -cp -p $^ $(srcdir)/doc
TEXI_CPP_FILES = cpp.texi fdl.texi cppenv.texi cppopts.texi
@@ -2639,51 +2646,55 @@ TEXI_CPPINT_FILES = cppinternals.texi
# patterns. To use them, put each of the specific target with with their
# specific dependencies but no build commands.
-$(docobjdir)/cpp.info: $(TEXI_CPP_FILES)
-$(docobjdir)/gcc.info: $(TEXI_GCC_FILES)
-$(docobjdir)/gccint.info: $(TEXI_GCCINT_FILES)
-$(docobjdir)/cppinternals.info: $(TEXI_CPPINT_FILES)
+doc/cpp.info: $(TEXI_CPP_FILES)
+doc/gcc.info: $(TEXI_GCC_FILES)
+doc/gccint.info: $(TEXI_GCCINT_FILES)
+doc/cppinternals.info: $(TEXI_CPPINT_FILES)
-$(docobjdir)/%.info: %.texi stmp-docobjdir
+doc/%.info: %.texi
if [ x$(BUILD_INFO) = xinfo ]; then \
$(MAKEINFO) $(MAKEINFOFLAGS) -I $(docdir) \
-I $(docdir)/include -o $@ $<; \
fi
# Duplicate entry to handle renaming of gccinstall.info
-$(docobjdir)/gccinstall.info: $(TEXI_GCCINSTALL_FILES) stmp-docobjdir
+doc/gccinstall.info: $(TEXI_GCCINSTALL_FILES)
if [ x$(BUILD_INFO) = xinfo ]; then \
$(MAKEINFO) $(MAKEINFOFLAGS) -I $(docdir) \
-I $(docdir)/include -o $@ $<; \
fi
-$(docobjdir)/cpp.dvi: $(TEXI_CPP_FILES)
-$(docobjdir)/gcc.dvi: $(TEXI_GCC_FILES)
-$(docobjdir)/gccint.dvi: $(TEXI_GCCINT_FILES)
-$(docobjdir)/cppinternals.dvi: $(TEXI_CPPINT_FILES)
+doc/cpp.dvi: $(TEXI_CPP_FILES)
+doc/gcc.dvi: $(TEXI_GCC_FILES)
+doc/gccint.dvi: $(TEXI_GCCINT_FILES)
+doc/cppinternals.dvi: $(TEXI_CPPINT_FILES)
-dvi:: $(docobjdir)/gcc.dvi $(docobjdir)/gccint.dvi \
- $(docobjdir)/gccinstall.dvi $(docobjdir)/cpp.dvi \
- $(docobjdir)/cppinternals.dvi
+dvi:: doc/gcc.dvi doc/gccint.dvi doc/gccinstall.dvi doc/cpp.dvi \
+ doc/cppinternals.dvi
-$(docobjdir)/%.dvi: %.texi stmp-docobjdir
- $(TEXI2DVI) -I $(docdir) -I $(docdir)/include -o $@ $<
+doc/%.dvi: %.texi
+ $(TEXI2DVI) -I $(abs_docdir) -I $(abs_docdir)/include -o $@ $<
# Duplicate entry to handle renaming of gccinstall.dvi
-$(docobjdir)/gccinstall.dvi: $(TEXI_GCCINSTALL_FILES) stmp-docobjdir
- $(TEXI2DVI) -I $(docdir) -I $(docdir)/include -o $@ $<
+doc/gccinstall.dvi: $(TEXI_GCCINSTALL_FILES)
+ $(TEXI2DVI) -I $(abs_docdir) -I $(abs_docdir)/include -o $@ $<
+
+MANFILES = doc/gcov.1 doc/cpp.1 doc/gcc.1 doc/gfdl.7 doc/gpl.7 doc/fsf-funding.7
-generated-manpages:: $(docobjdir)/gcov.1 $(docobjdir)/cpp.1 \
- $(docobjdir)/gcc.1 $(docobjdir)/gfdl.7 $(docobjdir)/gpl.7 \
- $(docobjdir)/fsf-funding.7
+generated-manpages: man
-$(docobjdir)/%.1: %.pod stmp-docobjdir
+man: $(MANFILES) lang.man @GENINSRC@ srcman lang.srcman
+
+srcman: $(MANFILES)
+ -cp -p $^ $(srcdir)/doc
+
+doc/%.1: %.pod
$(STAMP) $@
-($(POD2MAN) --section=1 $< > $(@).T$$$$ && \
mv -f $(@).T$$$$ $@) || \
(rm -f $(@).T$$$$ && exit 1)
-$(docobjdir)/%.7: %.pod stmp-docobjdir
+doc/%.7: %.pod
$(STAMP) $@
-($(POD2MAN) --section=7 $< > $(@).T$$$$ && \
mv -f $(@).T$$$$ $@) || \
@@ -2771,8 +2782,7 @@ clean: mostlyclean lang.clean
-rm -f config.h tconfig.h bconfig.h tm_p.h tm.h
-rm -f cs-*
-rm -rf libgcc
- -rm -f *.dvi
- -rm -f */*.dvi
+ -rm -f doc/*.dvi
# Delete the include directory.
-rm -rf include
# Delete files used by the "multilib" facility (including libgcc subdirs).
@@ -2822,10 +2832,7 @@ maintainer-clean:
-rm -f $(srcdir)/c-parse.y $(srcdir)/c-parse.c
-rm -f cpp.??s cpp.*aux
-rm -f gcc.??s gcc.*aux
- -rm -f $(docobjdir)/cpp.info* $(docobjdir)/gcc.info* $(docobjdir)/gccint.info*
- -rm -f $(docobjdir)/cppinternals.info*
- -rm -f $(docobjdir)/gcov.1 $(docobjdir)/cpp.1 $(docobjdir)/gcc.1
- -rm -f $(docobjdir)/fsf-funding.7 $(docobjdir)/gfdl.7 $(docobjdir)/gpl.7
+ -rm -f $(docdir)/*.info $(docdir)/*.1 $(docdir)/*.7 $(docdir)/*.dvi
#
# Entry points `install' and `uninstall'.
# Also use `install-collect2' to install collect2 when the config files don't.
@@ -2935,7 +2942,7 @@ install-info:: doc installdirs \
$(DESTDIR)$(infodir)/gccinstall.info \
$(DESTDIR)$(infodir)/gccint.info
-$(DESTDIR)$(infodir)/%.info: $(docobjdir)/%.info installdirs
+$(DESTDIR)$(infodir)/%.info: doc/%.info installdirs
rm -f $@
if [ -f $< ]; then \
for f in $(<)*; do \
@@ -2953,25 +2960,33 @@ $(DESTDIR)$(infodir)/%.info: $(docobjdir)/%.info installdirs
else true; fi;
# Install the man pages.
-install-man: installdirs $(GENERATED_MANPAGES) lang.install-man
- -rm -f $(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext)
- -$(INSTALL_DATA) $(docobjdir)/gcc.1 $(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext)
- -chmod a-x $(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext)
- -rm -f $(DESTDIR)$(man1dir)/cpp$(man1ext)
- -$(INSTALL_DATA) $(docobjdir)/cpp.1 $(DESTDIR)$(man1dir)/cpp$(man1ext)
- -chmod a-x $(DESTDIR)$(man1dir)/cpp$(man1ext)
- -rm -f $(DESTDIR)$(man1dir)/gcov$(man1ext)
- -$(INSTALL_DATA) $(docobjdir)/gcov.1 $(DESTDIR)$(man1dir)/gcov$(man1ext)
- -chmod a-x $(DESTDIR)$(man1dir)/gcov$(man1ext)
- -rm -f $(DESTDIR)$(man7dir)/fsf-funding$(man7ext)
- -$(INSTALL_DATA) $(docobjdir)/fsf-funding.7 $(DESTDIR)$(man7dir)/fsf-funding$(man7ext)
- -chmod a-x $(DESTDIR)$(man7dir)/fsf-funding$(man7ext)
- -rm -f $(DESTDIR)$(man7dir)/gfdl$(man7ext)
- -$(INSTALL_DATA) $(docobjdir)/gfdl.7 $(DESTDIR)$(man7dir)/gfdl$(man7ext)
- -chmod a-x $(DESTDIR)$(man7dir)/gfdl$(man7ext)
- -rm -f $(DESTDIR)$(man7dir)/gpl$(man7ext)
- -$(INSTALL_DATA) $(docobjdir)/gpl.7 $(DESTDIR)$(man7dir)/gpl$(man7ext)
- -chmod a-x $(DESTDIR)$(man7dir)/gpl$(man7ext)
+install-man: installdirs lang.install-man \
+ $(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext) \
+ $(DESTDIR)$(man1dir)/$(CPP_INSTALL_NAME)$(man1ext) \
+ $(DESTDIR)$(man1dir)/$(GCOV_INSTALL_NAME)$(man1ext) \
+ $(DESTDIR)$(man7dir)/fsf-funding$(man7ext) \
+ $(DESTDIR)$(man7dir)/gfdl$(man7ext) \
+ $(DESTDIR)$(man7dir)/gpl$(man7ext)
+
+$(DESTDIR)$(man7dir)/%$(man7ext): doc/%.7
+ -rm -f $@
+ -$(INSTALL_DATA) $< $@
+ -chmod a-x $@
+
+$(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext): doc/gcc.1
+ -rm -f $@
+ -$(INSTALL_DATA) $< $@
+ -chmod a-x $@
+
+$(DESTDIR)$(man1dir)/$(CPP_INSTALL_NAME)$(man1ext): doc/cpp.1
+ -rm -f $@
+ -$(INSTALL_DATA) $< $@
+ -chmod a-x $@
+
+$(DESTDIR)$(man1dir)/$(GCOV_INSTALL_NAME)$(man1ext): doc/gcov.1
+ -rm -f $@
+ -$(INSTALL_DATA) $< $@
+ -chmod a-x $@
# Install the library.
install-libgcc: libgcc.mk libgcc.a libgcov.a installdirs
@@ -3591,6 +3606,7 @@ stage1-start:
-if [ -f ld$(exeext) ] ; then (cd stage1 && $(LN_S) ../ld$(exeext) .) ; else true ; fi
-if [ -f collect-ld$(exeext) ] ; then (cd stage1 && $(LN_S) ../collect-ld$(exeext) .) ; else true ; fi
-rm -f stage1/libgcc.a stage1/libgcc_eh.a stage1/libgcov.a
+ -rm -f stage1/libgcc_s*$(SHLIB_EXT)
-cp libgcc.a stage1
-$(RANLIB_FOR_TARGET) stage1/libgcc.a
-cp libgcov.a stage1
@@ -3598,6 +3614,7 @@ stage1-start:
-if [ -f libgcc_eh.a ] ; then cp libgcc_eh.a stage1; \
$(RANLIB_FOR_TARGET) stage1/libgcc_eh.a; \
fi
+ -cp libgcc_s*$(SHLIB_EXT) stage1
-for f in .. $(EXTRA_MULTILIB_PARTS); do if [ x$${f} != x.. ]; then \
cp stage1/$${f} . ; \
else true; \
@@ -3624,6 +3641,7 @@ stage2-start:
-if [ -f ld$(exeext) ] ; then (cd stage2 && $(LN_S) ../ld$(exeext) .) ; else true ; fi
-if [ -f collect-ld$(exeext) ] ; then (cd stage2 && $(LN_S) ../collect-ld$(exeext) .) ; else true ; fi
-rm -f stage2/libgcc.a stage2/libgcov.a stage2/libgcc_eh.a
+ -rm -f stage2/libgcc_s*$(SHLIB_EXT)
-cp libgcc.a stage2
-$(RANLIB_FOR_TARGET) stage2/libgcc.a
-cp libgcov.a stage2
@@ -3631,6 +3649,7 @@ stage2-start:
-if [ -f libgcc_eh.a ] ; then cp libgcc_eh.a stage2; \
$(RANLIB_FOR_TARGET) stage2/libgcc_eh.a; \
fi
+ -cp libgcc_s*$(SHLIB_EXT) stage2
-for f in .. $(EXTRA_MULTILIB_PARTS); do if [ x$${f} != x.. ]; then \
cp stage2/$${f} . ; \
else true; \
@@ -3653,6 +3672,7 @@ stage3-start:
-if [ -f ld$(exeext) ] ; then (cd stage3 && $(LN_S) ../ld$(exeext) .) ; else true ; fi
-if [ -f collect-ld$(exeext) ] ; then (cd stage3 && $(LN_S) ../collect-ld$(exeext) .) ; else true ; fi
-rm -f stage3/libgcc.a stage3/libgcov.a stage3/libgcc_eh.a
+ -rm -f stage3/libgcc_s*$(SHLIB_EXT)
-cp libgcc.a stage3
-$(RANLIB_FOR_TARGET) stage3/libgcc.a
-cp libgcov.a stage3
@@ -3660,6 +3680,7 @@ stage3-start:
-if [ -f libgcc_eh.a ] ; then cp libgcc_eh.a stage3; \
$(RANLIB_FOR_TARGET) stage3/libgcc_eh.a; \
fi
+ -cp libgcc_s*$(SHLIB_EXT) stage3
-for f in .. $(EXTRA_MULTILIB_PARTS); do if [ x$${f} != x.. ]; then \
cp stage3/$${f} . ; \
else true; \
@@ -3682,6 +3703,7 @@ stage4-start:
-if [ -f ld$(exeext) ] ; then (cd stage4 && $(LN_S) ../ld$(exeext) .) ; else true ; fi
-if [ -f collect-ld$(exeext) ] ; then (cd stage4 && $(LN_S) ../collect-ld$(exeext) .) ; else true ; fi
-rm -f stage4/libgcc.a stage4/libgcov.a stage4/libgcc_eh.a
+ -rm -f stage4/libgcc_s*$(SHLIB_EXT)
-cp libgcc.a stage4
-$(RANLIB_FOR_TARGET) stage4/libgcc.a
-cp libgcov.a stage4
@@ -3689,6 +3711,7 @@ stage4-start:
-if [ -f libgcc_eh.a ] ; then cp libgcc_eh.a stage4; \
$(RANLIB_FOR_TARGET) stage4/libgcc_eh.a; \
fi
+ -cp libgcc_s*$(SHLIB_EXT) stage4
-for f in .. $(EXTRA_MULTILIB_PARTS); do if [ x$${f} != x.. ]; then \
cp stage4/$${f} . ; \
else true; \
@@ -3709,6 +3732,7 @@ stageprofile-start:
-if [ -f ld$(exeext) ] ; then (cd stageprofile && $(LN_S) ../ld$(exeext) .) ; else true ; fi
-if [ -f collect-ld$(exeext) ] ; then (cd stageprofile && $(LN_S) ../collect-ld$(exeext) .) ; else true ; fi
-rm -f stageprofile/libgcc.a stageprofile/libgcov.a stageprofile/libgcc_eh.a
+ -rm -f stageprofile/libgcc_s*$(SHLIB_EXT)
-cp libgcc.a stageprofile
-$(RANLIB_FOR_TARGET) stageprofile/libgcc.a
-cp libgcov.a stageprofile
@@ -3716,6 +3740,7 @@ stageprofile-start:
-if [ -f libgcc_eh.a ] ; then cp libgcc_eh.a stageprofile; \
$(RANLIB_FOR_TARGET) stageprofile/libgcc_eh.a; \
fi
+ -cp libgcc_s*$(SHLIB_EXT) stageprofile
-for f in .. $(EXTRA_MULTILIB_PARTS); do if [ x$${f} != x.. ]; then \
cp stageprofile/$${f} . ; \
else true; \
@@ -3736,6 +3761,7 @@ stagefeedback-start:
-if [ -f ld$(exeext) ] ; then (cd stagefeedback && $(LN_S) ../ld$(exeext) .) ; else true ; fi
-if [ -f collect-ld$(exeext) ] ; then (cd stagefeedback && $(LN_S) ../collect-ld$(exeext) .) ; else true ; fi
-rm -f stagefeedback/libgcc.a stagefeedback/libgcov.a stagefeedback/libgcc_eh.a
+ -rm -f stagefeedback/libgcc_s*$(SHLIB_EXT)
-rm -f *.da
-for dir in fixinc po testsuite $(SUBDIRS); \
do \
@@ -3748,6 +3774,7 @@ stagefeedback-start:
-if [ -f libgcc_eh.a ] ; then cp libgcc_eh.a stagefeedback; \
$(RANLIB_FOR_TARGET) stagefeedback/libgcc_eh.a; \
fi
+ -cp libgcc_s*$(SHLIB_EXT) stagefeedback
-for f in .. $(EXTRA_MULTILIB_PARTS); do if [ x$${f} != x.. ]; then \
cp stagefeedback/$${f} . ; \
else true; \
@@ -3842,8 +3869,8 @@ install-po:
# fairly modern (POSIX-compliant) awk.
# The .pot file is left in the build directory.
$(PACKAGE).pot: po/$(PACKAGE).pot
-po/$(PACKAGE).pot: force
+po/$(PACKAGE).pot: force options.c
-test -d po || mkdir po
- $(MAKE) po-generated
+ $(MAKE) srcextra
AWK=$(AWK) $(SHELL) $(srcdir)/po/exgettext \
$(XGETTEXT) $(PACKAGE) $(srcdir)
diff --git a/gcc/README.Portability b/gcc/README.Portability
index 2724f2a53fd..32a33e27bec 100644
--- a/gcc/README.Portability
+++ b/gcc/README.Portability
@@ -10,7 +10,7 @@ This knowledge until know has been sparsely spread around, so I
thought I'd collect it in one useful place. Please add and correct
any problems as you come across them.
-I'm going to start from a base of the ISO C89 standard, since that is
+I'm going to start from a base of the ISO C90 standard, since that is
probably what most people code to naturally. Obviously using
constructs introduced after that is not a good idea.
diff --git a/gcc/aclocal.m4 b/gcc/aclocal.m4
index 054a2bb3ec7..939fb640e45 100644
--- a/gcc/aclocal.m4
+++ b/gcc/aclocal.m4
@@ -316,14 +316,17 @@ gcc_cv_cc_supports_ada=no
# has not been installed. This is fixed in 2.95.4, 3.0.2, and 3.1.
# Therefore we must check for the error message as well as an
# unsuccessful exit.
+# Other compilers, like HP Tru64 UNIX cc, exit successfully when
+# given a .adb file, but produce no object file. So we must check
+# if an object file was really produced to guard against this.
errors=`(${CC} -c conftest.adb) 2>&1 || echo failure`
-if test x"$errors" = x; then
+if test x"$errors" = x && test -f conftest.$ac_objext; then
gcc_cv_cc_supports_ada=yes
break
fi
rm -f conftest.*])
-if test x$GNATBIND != xno && test x$gcc_cv_supports_ada != xno; then
+if test x$GNATBIND != xno && test x$gcc_cv_cc_supports_ada != xno; then
have_gnat=yes
else
have_gnat=no
diff --git a/gcc/ada/5fsystem.ads b/gcc/ada/5fsystem.ads
index 05351d8e932..165a8780497 100644
--- a/gcc/ada/5fsystem.ads
+++ b/gcc/ada/5fsystem.ads
@@ -7,7 +7,7 @@
-- S p e c --
-- (SGI Irix, o32 ABI) --
-- --
--- Copyright (C) 1992-2003 Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2004 Free Software Foundation, Inc. --
-- --
-- This specification is derived from the Ada Reference Manual for use with --
-- GNAT. The copyright notice above, and the license provisions that follow --
@@ -124,7 +124,7 @@ private
Exit_Status_Supported : constant Boolean := True;
Fractional_Fixed_Ops : constant Boolean := False;
Frontend_Layout : constant Boolean := False;
- Functions_Return_By_DSP : constant Boolean := True;
+ Functions_Return_By_DSP : constant Boolean := False;
Machine_Overflows : constant Boolean := False;
Machine_Rounds : constant Boolean := True;
OpenVMS : constant Boolean := False;
@@ -138,9 +138,9 @@ private
Support_Long_Shifts : constant Boolean := True;
Suppress_Standard_Library : constant Boolean := False;
Use_Ada_Main_Program_Name : constant Boolean := False;
- ZCX_By_Default : constant Boolean := True;
+ ZCX_By_Default : constant Boolean := False;
GCC_ZCX_Support : constant Boolean := False;
- Front_End_ZCX_Support : constant Boolean := True;
+ Front_End_ZCX_Support : constant Boolean := False;
-- Obsolete entries, to be removed eventually (bootstrap issues!)
diff --git a/gcc/ada/5gtaprop.adb b/gcc/ada/5gtaprop.adb
index c9041ba1ba0..bb15b0ae47b 100644
--- a/gcc/ada/5gtaprop.adb
+++ b/gcc/ada/5gtaprop.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- Copyright (C) 1992-2003, Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2004, Free Software Foundation, Inc. --
-- --
-- GNARL is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -139,6 +139,9 @@ package body System.Task_Primitives.Operations is
-- ??? Check the comment above
procedure Stack_Guard (T : ST.Task_ID; On : Boolean) is
+ pragma Unreferenced (T);
+ pragma Unreferenced (On);
+
begin
null;
end Stack_Guard;
@@ -210,6 +213,8 @@ package body System.Task_Primitives.Operations is
end Initialize_Lock;
procedure Initialize_Lock (L : access RTS_Lock; Level : Lock_Level) is
+ pragma Unreferenced (Level);
+
Attributes : aliased pthread_mutexattr_t;
Result : Interfaces.C.int;
@@ -345,6 +350,8 @@ package body System.Task_Primitives.Operations is
(Self_ID : ST.Task_ID;
Reason : System.Tasking.Task_States)
is
+ pragma Unreferenced (Reason);
+
Result : Interfaces.C.int;
begin
@@ -373,6 +380,8 @@ package body System.Task_Primitives.Operations is
Timedout : out Boolean;
Yielded : out Boolean)
is
+ pragma Unreferenced (Reason);
+
Check_Time : constant Duration := Monotonic_Clock;
Abs_Time : Duration;
Request : aliased struct_timeval;
@@ -533,6 +542,8 @@ package body System.Task_Primitives.Operations is
(T : ST.Task_ID;
Reason : System.Tasking.Task_States)
is
+ pragma Unreferenced (Reason);
+
Result : Interfaces.C.int;
begin
Result := pthread_cond_signal (T.Common.LL.CV'Access);
@@ -805,6 +816,8 @@ package body System.Task_Primitives.Operations is
begin
Result := pthread_set_ada_tcb (pthread_self, System.Null_Address);
+
+ pragma Assert (Result = 0);
end Exit_Task;
----------------
@@ -840,6 +853,8 @@ package body System.Task_Primitives.Operations is
--------------------
function Check_No_Locks (Self_ID : ST.Task_ID) return Boolean is
+ pragma Unreferenced (Self_ID);
+
begin
return True;
end Check_No_Locks;
diff --git a/gcc/ada/5gtasinf.adb b/gcc/ada/5gtasinf.adb
index 48eec8118ba..a275c312774 100644
--- a/gcc/ada/5gtasinf.adb
+++ b/gcc/ada/5gtasinf.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- Copyright (C) 1992-2001 Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2004 Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -220,7 +220,7 @@ package body System.Task_Info is
NDPRI : Non_Degrading_Priority := NDP_NONE)
return sproc_t
is
- Attr : Sproc_Attributes :=
+ Attr : constant Sproc_Attributes :=
(Sproc_Resources, CPU, Resident, NDPRI);
begin
@@ -267,7 +267,7 @@ package body System.Task_Info is
NDPRI : Non_Degrading_Priority := NDP_NONE)
return Thread_Attributes
is
- Sproc : sproc_t := New_Sproc
+ Sproc : constant sproc_t := New_Sproc
(Sproc_Resources, CPU, Resident, NDPRI);
begin
@@ -316,7 +316,7 @@ package body System.Task_Info is
NDPRI : Non_Degrading_Priority := NDP_NONE)
return Task_Info_Type
is
- Sproc : sproc_t := New_Sproc
+ Sproc : constant sproc_t := New_Sproc
(Sproc_Resources, CPU, Resident, NDPRI);
begin
diff --git a/gcc/ada/5rosinte.adb b/gcc/ada/5rosinte.adb
index f4bfca54766..1bb1ae50a8b 100644
--- a/gcc/ada/5rosinte.adb
+++ b/gcc/ada/5rosinte.adb
@@ -118,10 +118,4 @@ package body System.OS_Interface is
return 0;
end Get_Page_Size;
- function mprotect
- (addr : Address; len : size_t; prot : int) return int is
- begin
- return 0;
- end mprotect;
-
end System.OS_Interface;
diff --git a/gcc/ada/5rosinte.ads b/gcc/ada/5rosinte.ads
index 710176c1222..d3b05492b99 100644
--- a/gcc/ada/5rosinte.ads
+++ b/gcc/ada/5rosinte.ads
@@ -139,6 +139,8 @@ package System.OS_Interface is
pragma Convention (C, struct_sigaction);
type struct_sigaction_ptr is access all struct_sigaction;
+ SA_SIGINFO : constant := 16#02#;
+
SIG_BLOCK : constant := 1;
SIG_UNBLOCK : constant := 2;
SIG_SETMASK : constant := 3;
@@ -229,7 +231,7 @@ package System.OS_Interface is
type pthread_attr_t is limited private;
type pthread_mutexattr_t is limited private;
type pthread_condattr_t is limited private;
- type pthread_key_t is private;
+ type pthread_key_t is new Interfaces.C.unsigned;
PTHREAD_CREATE_DETACHED : constant := 0;
@@ -261,7 +263,7 @@ package System.OS_Interface is
PROT_OFF : constant := 0;
function mprotect (addr : Address; len : size_t; prot : int) return int;
- -- Do nothing on RTEMS.
+ pragma Import (C, mprotect);
-----------------------------------------
-- Nonstandard Thread Initialization --
@@ -520,6 +522,4 @@ private
type pthread_cond_t is new rtems_id;
- type pthread_key_t is new rtems_id;
-
end System.OS_Interface;
diff --git a/gcc/ada/5rtpopsp.adb b/gcc/ada/5rtpopsp.adb
index cdc3c844e64..c75356fdaeb 100644
--- a/gcc/ada/5rtpopsp.adb
+++ b/gcc/ada/5rtpopsp.adb
@@ -7,7 +7,7 @@
-- --
-- B o d y --
-- --
--- $Revision: 1.7 $
+-- $Revision: 1.2 $
-- --
-- Copyright (C) 1991-2003, Florida State University --
-- --
@@ -35,183 +35,48 @@
-- --
------------------------------------------------------------------------------
--- This is a POSIX version of this package where foreign threads are
--- recognized.
--- Currently, DEC Unix, SCO UnixWare 7 and RTEMS use this version.
-
-with System.Soft_Links;
--- used to initialize TSD for a C thread, in function Self
+-- This is a RTEMS version of this package which uses a special
+-- variable for Ada self which is contexted switch implicitly by RTEMS.
+--
+-- This is the same as the POSIX version except that an RTEMS variable
+-- is used instead of a POSIX key.
separate (System.Task_Primitives.Operations)
package body Specific is
- ------------------
- -- Local Data --
- ------------------
-
- -- The followings are logically constants, but need to be initialized
- -- at run time.
-
-- The following gives the Ada run-time direct access to a variable
-- context switched by RTEMS at the lowest level.
RTEMS_Ada_Self : System.Address;
pragma Import (C, RTEMS_Ada_Self, "rtems_ada_self");
- -- The following are used to allow the Self function to
- -- automatically generate ATCB's for C threads that happen to call
- -- Ada procedure, which in turn happen to call the Ada runtime system.
-
- type Fake_ATCB;
- type Fake_ATCB_Ptr is access Fake_ATCB;
- type Fake_ATCB is record
- Stack_Base : Interfaces.C.unsigned := 0;
- -- A value of zero indicates the node is not in use.
- Next : Fake_ATCB_Ptr;
- Real_ATCB : aliased Ada_Task_Control_Block (0);
- end record;
-
- Fake_ATCB_List : Fake_ATCB_Ptr;
- -- A linear linked list.
- -- The list is protected by All_Tasks_L;
- -- Nodes are added to this list from the front.
- -- Once a node is added to this list, it is never removed.
-
- Fake_Task_Elaborated : aliased Boolean := True;
- -- Used to identified fake tasks (i.e., non-Ada Threads).
-
- Next_Fake_ATCB : Fake_ATCB_Ptr;
- -- Used to allocate one Fake_ATCB in advance. See comment in New_Fake_ATCB
-
- -----------------------
- -- Local Subprograms --
- -----------------------
-
- ---------------------------------
- -- Support for New_Fake_ATCB --
- ---------------------------------
-
- function New_Fake_ATCB return Task_ID;
- -- Allocate and Initialize a new ATCB. This code can safely be called from
- -- a foreign thread, as it doesn't access implicitely or explicitely
- -- "self" before having initialized the new ATCB.
-
- -------------------
- -- New_Fake_ATCB --
- -------------------
-
- function New_Fake_ATCB return Task_ID is
- Self_ID : Task_ID;
- P, Q : Fake_ATCB_Ptr;
- Succeeded : Boolean;
-
- begin
- -- This section is ticklish.
- -- We dare not call anything that might require an ATCB, until
- -- we have the new ATCB in place.
-
- Write_Lock (All_Tasks_L'Access);
- Q := null;
- P := Fake_ATCB_List;
-
- while P /= null loop
- if P.Stack_Base = 0 then
- Q := P;
- end if;
-
- P := P.Next;
- end loop;
-
- if Q = null then
-
- -- Create a new ATCB with zero entries.
-
- Self_ID := Next_Fake_ATCB.Real_ATCB'Access;
- Next_Fake_ATCB.Stack_Base := 1;
- Next_Fake_ATCB.Next := Fake_ATCB_List;
- Fake_ATCB_List := Next_Fake_ATCB;
- Next_Fake_ATCB := null;
-
- else
- -- Reuse an existing fake ATCB.
-
- Self_ID := Q.Real_ATCB'Access;
- Q.Stack_Base := 1;
- end if;
-
- -- Record this as the Task_ID for the current thread.
-
- Self_ID.Common.LL.Thread := pthread_self;
-
- RTEMS_Ada_Self := To_Address (Self_ID);
-
- -- Do the standard initializations
-
- System.Tasking.Initialize_ATCB
- (Self_ID, null, Null_Address, Null_Task, Fake_Task_Elaborated'Access,
- System.Priority'First, Task_Info.Unspecified_Task_Info, 0, Self_ID,
- Succeeded);
- pragma Assert (Succeeded);
-
- -- Finally, it is safe to use an allocator in this thread.
-
- if Next_Fake_ATCB = null then
- Next_Fake_ATCB := new Fake_ATCB;
- end if;
-
- Self_ID.Common.State := Runnable;
- Self_ID.Awake_Count := 1;
-
- -- Since this is not an ordinary Ada task, we will start out undeferred
-
- Self_ID.Deferral_Level := 0;
-
- System.Soft_Links.Create_TSD (Self_ID.Common.Compiler_Data);
-
- -- ????
- -- The following call is commented out to avoid dependence on
- -- the System.Tasking.Initialization package.
- -- It seems that if we want Ada.Task_Attributes to work correctly
- -- for C threads we will need to raise the visibility of this soft
- -- link to System.Soft_Links.
- -- We are putting that off until this new functionality is otherwise
- -- stable.
- -- System.Tasking.Initialization.Initialize_Attributes_Link.all (T);
-
- for J in Known_Tasks'Range loop
- if Known_Tasks (J) = null then
- Known_Tasks (J) := Self_ID;
- Self_ID.Known_Tasks_Index := J;
- exit;
- end if;
- end loop;
-
- -- Must not unlock until Next_ATCB is again allocated.
-
- Unlock (All_Tasks_L'Access);
- return Self_ID;
- end New_Fake_ATCB;
-
----------------
-- Initialize --
----------------
procedure Initialize (Environment_Task : Task_ID) is
+ pragma Warnings (Off, Environment_Task);
+ Result : Interfaces.C.int;
begin
RTEMS_Ada_Self := To_Address (Environment_Task);
+ end Initialize;
- -- Create a free ATCB for use on the Fake_ATCB_List.
+ -------------------
+ -- Is_Valid_Task --
+ -------------------
- Next_Fake_ATCB := new Fake_ATCB;
- end Initialize;
+ function Is_Valid_Task return Boolean is
+ begin
+ return RTEMS_Ada_Self /= System.Null_Address;
+ end Is_Valid_Task;
---------
-- Set --
---------
procedure Set (Self_Id : Task_ID) is
-
+ Result : Interfaces.C.int;
begin
RTEMS_Ada_Self := To_Address (Self_Id);
end Set;
@@ -220,33 +85,18 @@ package body Specific is
-- Self --
----------
- -- To make Ada tasks and C threads interoperate better, we have
- -- added some functionality to Self. Suppose a C main program
- -- (with threads) calls an Ada procedure and the Ada procedure
- -- calls the tasking runtime system. Eventually, a call will be
- -- made to self. Since the call is not coming from an Ada task,
- -- there will be no corresponding ATCB.
-
- -- (The entire Ada run-time system may not have been elaborated,
- -- either, but that is a different problem, that we will need to
- -- solve another way.)
-
- -- What we do in Self is to catch references that do not come
- -- from recognized Ada tasks, and create an ATCB for the calling
- -- thread.
+ -- To make Ada tasks and C threads interoperate better, we have added some
+ -- functionality to Self. Suppose a C main program (with threads) calls an
+ -- Ada procedure and the Ada procedure calls the tasking runtime system.
+ -- Eventually, a call will be made to self. Since the call is not coming
+ -- from an Ada task, there will be no corresponding ATCB.
- -- The new ATCB will be "detached" from the normal Ada task
- -- master hierarchy, much like the existing implicitly created
- -- signal-server tasks.
+ -- What we do in Self is to catch references that do not come from
+ -- recognized Ada tasks, and create an ATCB for the calling thread.
- -- We will also use such points to poll for disappearance of the
- -- threads associated with any implicit ATCBs that we created
- -- earlier, and take the opportunity to recover them.
-
- -- A nasty problem here is the limitations of the compilation
- -- order dependency, and in particular the GNARL/GNULLI layering.
- -- To initialize an ATCB we need to assume System.Tasking has
- -- been elaborated.
+ -- The new ATCB will be "detached" from the normal Ada task master
+ -- hierarchy, much like the existing implicitly created signal-server
+ -- tasks.
function Self return Task_ID is
Result : System.Address;
@@ -256,11 +106,11 @@ package body Specific is
-- If the key value is Null, then it is a non-Ada task.
- if Result = System.Null_Address then
- return New_Fake_ATCB;
+ if Result /= System.Null_Address then
+ return To_Task_Id (Result);
+ else
+ return Register_Foreign_Thread;
end if;
-
- return To_Task_ID (Result);
end Self;
end Specific;
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index d8abacbdb45..df04db84224 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,59 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR other/14630
+ * gnat_ug.texi: Add info directory category and entry.
+ * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
+ gnat_ug_wnt.texi: Regenerate.
+
+2004-03-19 Laurent GUERBY <laurent@guerby.net>
+
+ * sem_prag.adb (Suppress_Unsuppress_Echeck): use loop instead of
+ aggregate, allows bootstrap from 3.3 on powerpc-darwin.
+
+2004-03-09 Alan Modra <amodra@bigpond.net.au>
+
+ * misc.c (default_pass_by_ref): Update INIT_CUMULATIVE_ARGS call.
+
+2004-01-30 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Make-lang.in (doc/gnat_ug_unx.dvi): Use $(abs_docdir).
+ (doc/gnat_ug_vms.dvi, doc/gnat_ug_unx.dvi): Likewise.
+ (doc/gnat_ug_unx.dvi, doc/gnat-style.dvi): Likewise.
+
+2004-01-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * Makefile.in (mips-sgi-irix5): Remove -lathread from THREADSLIB.
+
+ * 5fsystem.ads (Functions_Return_By_DSP): Set to False.
+ (ZCX_By_Default): Likewise.
+ (Front_End_ZCX_Support): Likewise.
+
+ * 5gtaprop.adb (Stack_Guard): Mark T, On unreferenced.
+ (Initialize_Lock): Mark Level unreferenced.
+ (Sleep): Mark Reason unreferenced.
+ (Timed_Sleep): Likewise.
+ (Wakeup): Likewise.
+ (Exit_Task): Use Result.
+ (Check_No_Locks): Mark Self_ID unreferenced.
+
+ * 5gtasinf.adb (New_Sproc): Make Attr constant.
+ (Bound_Thread_Attributes): Make Sproc constant.
+ (New_Bound_Thread_Attributes): Likewise.
+
+2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Make-lang.in: Replace $(docdir) with doc.
+ (doc/gnat_ug_unx.info, doc/gnat_ug_vwx.info, doc/gnat_ug_vms.info
+ doc/gnat_ug_wnt.info, doc/gnat_rm.info, doc/gnat-style.info): Update
+ to use consistent MAKEINFO rule.
+ (ada.man, ada.srcman): Dummy entry.
+ (ADA_INFOFILES): Define.
+ (ada.info, ada.srcinfo): New rules.
+
2004-01-16 Andreas Jaeger <aj@suse.de>
* Makefile.in: Add $(DESTDIR).
diff --git a/gcc/ada/Make-lang.in b/gcc/ada/Make-lang.in
index 99d21149590..ea6c280d723 100644
--- a/gcc/ada/Make-lang.in
+++ b/gcc/ada/Make-lang.in
@@ -432,13 +432,14 @@ ada.all.cross:
ada.start.encap:
ada.rest.encap:
+ada.man:
ada.srcextra:
+ada.srcman:
ada.tags: force
cd $(srcdir)/ada; etags -o TAGS.sub *.c *.h *.ads *.adb; \
etags --include TAGS.sub --include ../TAGS.sub
-ada.generated-manpages:
# Generate documentation.
#
@@ -481,39 +482,61 @@ $(srcdir)/ada/gnat_ug_wnt.texi : ada/doctools/xgnatug$(build_exeext) \
ada/doctools/xgnatug wnt $(srcdir)/ada/gnat_ug.texi $(srcdir)/ada/ug_words $(srcdir)/ada/gnat_ug_wnt.texi
endif
-$(docobjdir)/gnat_ug_unx.info : $(srcdir)/ada/gnat_ug_unx.texi \
- $(srcdir)/doc/include/fdl.texi $(srcdir)/doc/include/gcc-common.texi \
- stmp-docobjdir
- $(MAKEINFO) -I $(docdir)/include -I $(srcdir)/ada -o $@ $<
-
-$(docobjdir)/gnat_ug_vms.info : $(srcdir)/ada/gnat_ug_vms.texi \
- $(srcdir)/doc/include/fdl.texi $(srcdir)/doc/include/gcc-common.texi \
- stmp-docobjdir
- $(MAKEINFO) -I $(docdir)/include -I $(srcdir)/ada -o $@ $<
-
-$(docobjdir)/gnat_ug_vxw.info : $(srcdir)/ada/gnat_ug_vxw.texi \
- $(srcdir)/doc/include/fdl.texi $(srcdir)/doc/include/gcc-common.texi \
- stmp-docobjdir
- $(MAKEINFO) -I $(docdir)/include -I $(srcdir)/ada -o $@ $<
-
-$(docobjdir)/gnat_ug_wnt.info : $(srcdir)/ada/gnat_ug_wnt.texi \
- $(srcdir)/doc/include/fdl.texi $(srcdir)/doc/include/gcc-common.texi \
- stmp-docobjdir
- $(MAKEINFO) -I $(docdir)/include -I $(srcdir)/ada -o $@ $<
-
-$(docobjdir)/gnat_rm.info : $(srcdir)/ada/gnat_rm.texi \
- $(srcdir)/doc/include/fdl.texi $(srcdir)/doc/include/gcc-common.texi \
- stmp-docobjdir
- $(MAKEINFO) -I $(docdir)/include -I $(srcdir)/ada -o $@ $<
-
-$(docobjdir)/gnat-style.info : $(srcdir)/ada/gnat-style.texi \
- $(srcdir)/doc/include/fdl.texi \
- stmp-docobjdir
- $(MAKEINFO) -I $(docdir)/include -I $(srcdir)/ada -o $@ $<
-
-info:: $(docobjdir)/gnat_ug_vms.info $(docobjdir)/gnat_ug_wnt.info \
- $(docobjdir)/gnat_ug_unx.info $(docobjdir)/gnat_ug_vxw.info \
- $(docobjdir)/gnat_rm.info $(docobjdir)/gnat-style.info
+doc/gnat_ug_unx.info: $(srcdir)/ada/gnat_ug_unx.texi \
+ $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi
+ if [ x$(BUILD_INFO) = xinfo ]; then \
+ rm -f $(@)*; \
+ $(MAKEINFO) $(MAKEINFOFLAGS) -I$(docdir)/include \
+ -I$(srcdir)/ada -o $@ $<; \
+ else true; fi
+
+doc/gnat_ug_vms.info: $(srcdir)/ada/gnat_ug_vms.texi \
+ $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi
+ if [ x$(BUILD_INFO) = xinfo ]; then \
+ rm -f $(@)*; \
+ $(MAKEINFO) $(MAKEINFOFLAGS) -I$(docdir)/include \
+ -I$(srcdir)/ada -o $@ $<; \
+ else true; fi
+
+doc/gnat_ug_vxw.info: $(srcdir)/ada/gnat_ug_vxw.texi \
+ $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi
+ if [ x$(BUILD_INFO) = xinfo ]; then \
+ rm -f $(@)*; \
+ $(MAKEINFO) $(MAKEINFOFLAGS) -I$(docdir)/include \
+ -I$(srcdir)/ada -o $@ $<; \
+ else true; fi
+
+doc/gnat_ug_wnt.info: $(srcdir)/ada/gnat_ug_wnt.texi \
+ $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi
+ if [ x$(BUILD_INFO) = xinfo ]; then \
+ rm -f $(@)*; \
+ $(MAKEINFO) $(MAKEINFOFLAGS) -I$(docdir)/include \
+ -I$(srcdir)/ada -o$@ $<; \
+ else true; fi
+
+doc/gnat_rm.info: ada/gnat_rm.texi $(docdir)/include/fdl.texi \
+ $(docdir)/include/gcc-common.texi
+ if [ x$(BUILD_INFO) = xinfo ]; then \
+ rm -f $(@)*; \
+ $(MAKEINFO) $(MAKEINFOFLAGS) -I$(docdir)/include \
+ -I$(srcdir)/ada -o $@ $<; \
+ else true; fi
+
+doc/gnat-style.info: ada/gnat-style.texi $(docdir)/include/fdl.texi
+ if [ x$(BUILD_INFO) = xinfo ]; then \
+ rm -f $(@)*; \
+ $(MAKEINFO) $(MAKEINFOFLAGS) -I$(docdir)/include \
+ -I$(srcdir)/ada -o $@ $<; \
+ else true; fi
+
+ADA_INFOFILES = doc/gnat_ug_vms.info doc/gnat_ug_wnt.info \
+ doc/gnat_ug_unx.info doc/gnat_ug_vxw.info \
+ doc/gnat_rm.info doc/gnat-style.info
+
+ada.info: $(ADA_INFOFILES)
+
+ada.srcinfo: $(ADA_INFOFILES)
+ -cp -p $^ $(srcdir)/doc
install-info:: $(DESTDIR)$(infodir)/gnat_ug_vms.info \
$(DESTDIR)$(infodir)/gnat_ug_wnt.info \
@@ -522,38 +545,31 @@ install-info:: $(DESTDIR)$(infodir)/gnat_ug_vms.info \
$(DESTDIR)$(infodir)/gnat_rm.info \
$(DESTDIR)$(infodir)/gnat-style.info
-dvi:: $(docobjdir)/gnat_ug_vms.dvi $(docobjdir)/gnat_ug_wnt.dvi \
- $(docobjdir)/gnat_ug_unx.dvi $(docobjdir)/gnat_ug_vxw.dvi \
- $(docobjdir)/gnat_rm.dvi $(docobjdir)/gnat-style.dvi
-
-$(docobjdir)/gnat_ug_unx.dvi: ada/gnat_ug_unx.texi \
- $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi \
- stmp-docobjdir
- $(TEXI2DVI) -c -I $(docdir)/include -o $@ $<
-
-$(docobjdir)/gnat_ug_vms.dvi: ada/gnat_ug_vms.texi \
- $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi \
- stmp-docobjdir
- $(TEXI2DVI) -c -I $(docdir)/include -o $@ $<
-
-$(docobjdir)/gnat_ug_vxw.dvi: ada/gnat_ug_vxw.texi \
- $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi \
- stmp-docobjdir
- $(TEXI2DVI) -c -I $(docdir)/include -o $@ $<
-
-$(docobjdir)/gnat_ug_wnt.dvi: ada/gnat_ug_wnt.texi \
- $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi \
- stmp-docobjdir
- $(TEXI2DVI) -c -I $(docdir)/include -o $@ $<
-
-$(docobjdir)/gnat_rm.dvi: ada/gnat_rm.texi \
- $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi \
- stmp-docobjdir
- $(TEXI2DVI) -c -I $(docdir)/include -o $@ $<
-
-$(docobjdir)/gnat-style.dvi: ada/gnat-style.texi $(docdir)/include/fdl.texi \
- stmp-docobjdir
- $(TEXI2DVI) -c -I $(docdir)/include -o $@ $<
+dvi:: doc/gnat_ug_vms.dvi doc/gnat_ug_wnt.dvi doc/gnat_ug_unx.dvi \
+ doc/gnat_ug_vxw.dvi doc/gnat_rm.dvi doc/gnat-style.dvi
+
+doc/gnat_ug_unx.dvi: $(srcdir)/ada/gnat_ug_unx.texi \
+ $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi
+ $(TEXI2DVI) -c -I $(abs_docdir)/include -o $@ $<
+
+doc/gnat_ug_vms.dvi: $(srcdir)/ada/gnat_ug_vms.texi \
+ $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi
+ $(TEXI2DVI) -c -I $(abs_docdir)/include -o $@ $<
+
+doc/gnat_ug_vxw.dvi: $(srcdir)/ada/gnat_ug_vxw.texi \
+ $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi
+ $(TEXI2DVI) -c -I $(abs_docdir)/include -o $@ $<
+
+doc/gnat_ug_wnt.dvi: $(srcdir)/ada/gnat_ug_wnt.texi \
+ $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi
+ $(TEXI2DVI) -c -I $(abs_docdir)/include -o $@ $<
+
+doc/gnat_rm.dvi: ada/gnat_rm.texi \
+ $(docdir)/include/fdl.texi $(docdir)/include/gcc-common.texi
+ $(TEXI2DVI) -c -I $(abs_docdir)/include -o $@ $<
+
+doc/gnat-style.dvi: ada/gnat-style.texi $(docdir)/include/fdl.texi
+ $(TEXI2DVI) -c -I $(abs_docdir)/include -o $@ $<
# Install hooks:
diff --git a/gcc/ada/Makefile.in b/gcc/ada/Makefile.in
index bfcc541a2ae..9d060b3b1e6 100644
--- a/gcc/ada/Makefile.in
+++ b/gcc/ada/Makefile.in
@@ -913,7 +913,7 @@ ifeq ($(strip $(filter-out mips sgi irix%,$(targ))),)
g-soccon.ads<3gsoccon.ads \
system.ads<5fsystem.ads
- THREADSLIB = -lathread
+ THREADSLIB =
endif
TOOLS_TARGET_PAIRS = mlib-tgt.adb<5gml-tgt.adb
diff --git a/gcc/ada/gnat_ug.texi b/gcc/ada/gnat_ug.texi
index 946da534211..4d705ea5096 100644
--- a/gcc/ada/gnat_ug.texi
+++ b/gcc/ada/gnat_ug.texi
@@ -55,21 +55,37 @@
@ifset vms
@setfilename gnat_ug_vms.info
@settitle GNAT User's Guide for OpenVMS Alpha
+@dircategory GNU Ada tools
+@direntry
+* GNAT User's Guide (gnat_ug_vms). GNAT User's Guide for OpenVMS Alpha.
+@end direntry
@end ifset
@ifset wnt
@setfilename gnat_ug_wnt.info
@settitle GNAT User's Guide for Windows NT
+@dircategory GNU Ada tools
+@direntry
+* GNAT User's Guide (gnat_ug_wnt). GNAT User's Guide for Windows NT.
+@end direntry
@end ifset
@ifset unx
@setfilename gnat_ug_unx.info
@settitle GNAT User's Guide for Unix Platforms
+@dircategory GNU Ada tools
+@direntry
+* GNAT User's Guide (gnat_ug_unx). GNAT User's Guide for Unix Platforms.
+@end direntry
@end ifset
@ifset vxworks
@setfilename gnat_ug_vxw.info
@settitle GNAT User's Guide for Cross Platforms
+@dircategory GNU Ada tools
+@direntry
+* GNAT User's Guide (gnat_ug_vxw). GNAT User's Guide for Cross Platforms.
+@end direntry
@end ifset
@include gcc-common.texi
diff --git a/gcc/ada/gnat_ug_unx.texi b/gcc/ada/gnat_ug_unx.texi
index 484f5a75b19..8904646fc09 100644
--- a/gcc/ada/gnat_ug_unx.texi
+++ b/gcc/ada/gnat_ug_unx.texi
@@ -56,6 +56,10 @@
@setfilename gnat_ug_unx.info
@settitle GNAT User's Guide for Unix Platforms
+@dircategory GNU Ada tools
+@direntry
+* GNAT User's Guide (gnat_ug_unx). GNAT User's Guide for Unix Platforms.
+@end direntry
@include gcc-common.texi
diff --git a/gcc/ada/gnat_ug_vms.texi b/gcc/ada/gnat_ug_vms.texi
index 89bc0e17b49..a9b5b971ee0 100644
--- a/gcc/ada/gnat_ug_vms.texi
+++ b/gcc/ada/gnat_ug_vms.texi
@@ -54,6 +54,10 @@
@setfilename gnat_ug_vms.info
@settitle GNAT User's Guide for OpenVMS Alpha
+@dircategory GNU Ada tools
+@direntry
+* GNAT User's Guide (gnat_ug_vms). GNAT User's Guide for OpenVMS Alpha.
+@end direntry
diff --git a/gcc/ada/gnat_ug_vxw.texi b/gcc/ada/gnat_ug_vxw.texi
index 8fb949d1c6e..e486234fc7b 100644
--- a/gcc/ada/gnat_ug_vxw.texi
+++ b/gcc/ada/gnat_ug_vxw.texi
@@ -57,6 +57,10 @@
@setfilename gnat_ug_vxw.info
@settitle GNAT User's Guide for Cross Platforms
+@dircategory GNU Ada tools
+@direntry
+* GNAT User's Guide (gnat_ug_vxw). GNAT User's Guide for Cross Platforms.
+@end direntry
@include gcc-common.texi
diff --git a/gcc/ada/gnat_ug_wnt.texi b/gcc/ada/gnat_ug_wnt.texi
index 1d799b2792f..d6a10750e9c 100644
--- a/gcc/ada/gnat_ug_wnt.texi
+++ b/gcc/ada/gnat_ug_wnt.texi
@@ -55,6 +55,10 @@
@setfilename gnat_ug_wnt.info
@settitle GNAT User's Guide for Windows NT
+@dircategory GNU Ada tools
+@direntry
+* GNAT User's Guide (gnat_ug_wnt). GNAT User's Guide for Windows NT.
+@end direntry
diff --git a/gcc/ada/init.c b/gcc/ada/init.c
index 734a482bdcc..6d0480da9e2 100644
--- a/gcc/ada/init.c
+++ b/gcc/ada/init.c
@@ -352,6 +352,22 @@ __gnat_initialize (void)
{
}
+/***************************************/
+/* __gnat_initialize (RTEMS version) */
+/***************************************/
+
+#elif defined(__rtems__)
+
+extern void __gnat_install_handler (void);
+
+/* For RTEMS, each bsp will provide a custom __gnat_install_handler (). */
+
+void
+__gnat_initialize (void)
+{
+ __gnat_install_handler ();
+}
+
/****************************************/
/* __gnat_initialize (Dec Unix Version) */
/****************************************/
@@ -1782,22 +1798,6 @@ __gnat_initialize (void)
__gnat_init_float ();
}
-/***************************************/
-/* __gnat_initialize (RTEMS version) */
-/***************************************/
-
-#elif defined(__rtems__)
-
-extern void __gnat_install_handler (void);
-
-/* For RTEMS, each bsp will provide a custom __gnat_install_handler (). */
-
-void
-__gnat_initialize (void)
-{
- __gnat_install_handler ();
-}
-
#else
/* For all other versions of GNAT, the initialize routine and handler
diff --git a/gcc/ada/misc.c b/gcc/ada/misc.c
index 7554a127e5e..7e544fb1fda 100644
--- a/gcc/ada/misc.c
+++ b/gcc/ada/misc.c
@@ -864,7 +864,7 @@ default_pass_by_ref (tree gnu_type)
{
CUMULATIVE_ARGS cum;
- INIT_CUMULATIVE_ARGS (cum, NULL_TREE, NULL_RTX, 0);
+ INIT_CUMULATIVE_ARGS (cum, NULL_TREE, NULL_RTX, 0, 2);
/* We pass aggregates by reference if they are sufficiently large. The
choice of constant here is somewhat arbitrary. We also pass by
diff --git a/gcc/ada/osint.adb b/gcc/ada/osint.adb
index ac2a5275d15..0414abf0a2a 100644
--- a/gcc/ada/osint.adb
+++ b/gcc/ada/osint.adb
@@ -1006,12 +1006,37 @@ package body Osint is
end if;
end loop;
- for J in reverse Cindex1 .. Cindex2 loop
- if Command_Name (J) = '.' then
- Cindex2 := J - 1;
- exit;
+ -- Command_Name(Cindex1 .. Cindex2) is now the equivalent of the
+ -- POSIX command "basename argv[0]"
+
+ -- Strip off any versioning information such as found on VMS.
+ -- This would take the form of TOOL.exe followed by a ";" or "."
+ -- and a sequence of one or more numbers.
+
+ if Command_Name (Cindex2) in '0' .. '9' then
+ for J in reverse Cindex1 .. Cindex2 loop
+
+ exit when Command_Name (J) not in '0' .. '9';
+
+ if Command_Name (J) = '.' or Command_Name (J) = ';' then
+ Cindex2 := J - 1;
+ exit;
+ end if;
+ end loop;
+ end if;
+
+ -- Strip off any executable extension (usually nothing or .exe)
+ -- but formally reported by autoconf in the variable EXEEXT
+
+ if Cindex2 - Cindex1 >= 4 then
+ if To_Lower (Command_Name (Cindex2 - 3)) = '.'
+ and then To_Lower (Command_Name (Cindex2 - 2)) = 'e'
+ and then To_Lower (Command_Name (Cindex2 - 1)) = 'x'
+ and then To_Lower (Command_Name (Cindex2)) = 'e'
+ then
+ Cindex2 := Cindex2 - 4;
end if;
- end loop;
+ end if;
Name_Len := Cindex2 - Cindex1 + 1;
Name_Buffer (1 .. Name_Len) := Command_Name (Cindex1 .. Cindex2);
diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb
index c9fec25348b..e64d180ba97 100644
--- a/gcc/ada/sem_prag.adb
+++ b/gcc/ada/sem_prag.adb
@@ -3298,7 +3298,9 @@ package body Sem_Prag is
-- suppress check for any check id value.
if C = All_Checks then
- Scope_Suppress := (others => Suppress_Case);
+ for J in Scope_Suppress'Range loop
+ Scope_Suppress (J) := Suppress_Case;
+ end loop;
else
Scope_Suppress (C) := Suppress_Case;
end if;
diff --git a/gcc/alias.c b/gcc/alias.c
index a56feae1170..50efa69eb9f 100644
--- a/gcc/alias.c
+++ b/gcc/alias.c
@@ -1,5 +1,5 @@
/* Alias analysis for GNU C
- Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Contributed by John Carr (jfc@mit.edu).
@@ -157,17 +157,21 @@ static void memory_modified_1 (rtx, rtx, void *);
current function performs nonlocal memory memory references for the
purposes of marking the function as a constant function. */
-static GTY((length ("reg_base_value_size"))) rtx *reg_base_value;
+static GTY(()) varray_type reg_base_value;
static rtx *new_reg_base_value;
-static unsigned int reg_base_value_size; /* size of reg_base_value array */
+
+/* We preserve the copy of old array around to avoid amount of garbage
+ produced. About 8% of garbage produced were attributed to this
+ array. */
+static GTY((deletable (""))) varray_type old_reg_base_value;
/* Static hunks of RTL used by the aliasing code; these are initialized
once per function to avoid unnecessary RTL allocations. */
static GTY (()) rtx static_reg_base_value[FIRST_PSEUDO_REGISTER];
#define REG_BASE_VALUE(X) \
- (REGNO (X) < reg_base_value_size \
- ? reg_base_value[REGNO (X)] : 0)
+ (reg_base_value && REGNO (X) < VARRAY_SIZE (reg_base_value) \
+ ? VARRAY_RTX (reg_base_value, REGNO (X)) : 0)
/* Vector of known invariant relationships between registers. Set in
loop unrolling. Indexed by register number, if nonzero the value
@@ -178,6 +182,7 @@ static GTY (()) rtx static_reg_base_value[FIRST_PSEUDO_REGISTER];
Because this array contains only pseudo registers it has no effect
after reload. */
static rtx *alias_invariant;
+unsigned int alias_invariant_size;
/* Vector indexed by N giving the initial (unchanging) value known for
pseudo-register N. This array is initialized in
@@ -592,11 +597,11 @@ get_alias_set (tree t)
/* Return a brand-new alias set. */
+static GTY(()) HOST_WIDE_INT last_alias_set;
+
HOST_WIDE_INT
new_alias_set (void)
{
- static HOST_WIDE_INT last_alias_set;
-
if (flag_strict_aliasing)
{
if (!alias_sets)
@@ -724,29 +729,29 @@ record_component_aliases (tree type)
/* Allocate an alias set for use in storing and reading from the varargs
spill area. */
+static GTY(()) HOST_WIDE_INT varargs_set = -1;
+
HOST_WIDE_INT
get_varargs_alias_set (void)
{
- static HOST_WIDE_INT set = -1;
-
- if (set == -1)
- set = new_alias_set ();
+ if (varargs_set == -1)
+ varargs_set = new_alias_set ();
- return set;
+ return varargs_set;
}
/* Likewise, but used for the fixed portions of the frame, e.g., register
save areas. */
+static GTY(()) HOST_WIDE_INT frame_set = -1;
+
HOST_WIDE_INT
get_frame_alias_set (void)
{
- static HOST_WIDE_INT set = -1;
-
- if (set == -1)
- set = new_alias_set ();
+ if (frame_set == -1)
+ frame_set = new_alias_set ();
- return set;
+ return frame_set;
}
/* Inside SRC, the source of a SET, find a base address. */
@@ -778,7 +783,7 @@ find_base_value (rtx src)
The test above is not sufficient because the scheduler may move
a copy out of an arg reg past the NOTE_INSN_FUNCTION_BEGIN. */
if ((regno >= FIRST_PSEUDO_REGISTER || fixed_regs[regno])
- && regno < reg_base_value_size)
+ && regno < VARRAY_SIZE (reg_base_value))
{
/* If we're inside init_alias_analysis, use new_reg_base_value
to reduce the number of relaxation iterations. */
@@ -786,8 +791,8 @@ find_base_value (rtx src)
&& REG_N_SETS (regno) == 1)
return new_reg_base_value[regno];
- if (reg_base_value[regno])
- return reg_base_value[regno];
+ if (VARRAY_RTX (reg_base_value, regno))
+ return VARRAY_RTX (reg_base_value, regno);
}
return 0;
@@ -931,7 +936,7 @@ record_set (rtx dest, rtx set, void *data ATTRIBUTE_UNUSED)
regno = REGNO (dest);
- if (regno >= reg_base_value_size)
+ if (regno >= VARRAY_SIZE (reg_base_value))
abort ();
/* If this spans multiple hard registers, then we must indicate that every
@@ -1030,21 +1035,20 @@ record_set (rtx dest, rtx set, void *data ATTRIBUTE_UNUSED)
void
record_base_value (unsigned int regno, rtx val, int invariant)
{
- if (regno >= reg_base_value_size)
- return;
-
- if (invariant && alias_invariant)
+ if (invariant && alias_invariant && regno < alias_invariant_size)
alias_invariant[regno] = val;
+ if (regno >= VARRAY_SIZE (reg_base_value))
+ VARRAY_GROW (reg_base_value, max_reg_num ());
+
if (GET_CODE (val) == REG)
{
- if (REGNO (val) < reg_base_value_size)
- reg_base_value[regno] = reg_base_value[REGNO (val)];
-
+ VARRAY_RTX (reg_base_value, regno)
+ = REG_BASE_VALUE (val);
return;
}
-
- reg_base_value[regno] = find_base_value (val);
+ VARRAY_RTX (reg_base_value, regno)
+ = find_base_value (val);
}
/* Clear alias info for a register. This is used if an RTL transformation
@@ -1135,9 +1139,6 @@ rtx_equal_for_memref_p (rtx x, rtx y)
/* Some RTL can be compared without a recursive examination. */
switch (code)
{
- case VALUE:
- return CSELIB_VAL_PTR (x) == CSELIB_VAL_PTR (y);
-
case REG:
return REGNO (x) == REGNO (y);
@@ -1147,6 +1148,7 @@ rtx_equal_for_memref_p (rtx x, rtx y)
case SYMBOL_REF:
return XSTR (x, 0) == XSTR (y, 0);
+ case VALUE:
case CONST_INT:
case CONST_DOUBLE:
/* There's no need to compare the contents of CONST_DOUBLEs or
@@ -1321,6 +1323,8 @@ find_base_term (rtx x)
case VALUE:
val = CSELIB_VAL_PTR (x);
+ if (!val)
+ return 0;
for (l = val->locs; l; l = l->next)
if ((x = find_base_term (l->loc)) != 0)
return x;
@@ -1498,14 +1502,17 @@ get_addr (rtx x)
if (GET_CODE (x) != VALUE)
return x;
v = CSELIB_VAL_PTR (x);
- for (l = v->locs; l; l = l->next)
- if (CONSTANT_P (l->loc))
- return l->loc;
- for (l = v->locs; l; l = l->next)
- if (GET_CODE (l->loc) != REG && GET_CODE (l->loc) != MEM)
- return l->loc;
- if (v->locs)
- return v->locs->loc;
+ if (v)
+ {
+ for (l = v->locs; l; l = l->next)
+ if (CONSTANT_P (l->loc))
+ return l->loc;
+ for (l = v->locs; l; l = l->next)
+ if (GET_CODE (l->loc) != REG && GET_CODE (l->loc) != MEM)
+ return l->loc;
+ if (v->locs)
+ return v->locs->loc;
+ }
return x;
}
@@ -1682,8 +1689,8 @@ memrefs_conflict_p (int xsize, rtx x, int ysize, rtx y, HOST_WIDE_INT c)
unsigned int r_x = REGNO (x), r_y = REGNO (y);
rtx i_x, i_y; /* invariant relationships of X and Y */
- i_x = r_x >= reg_base_value_size ? 0 : alias_invariant[r_x];
- i_y = r_y >= reg_base_value_size ? 0 : alias_invariant[r_y];
+ i_x = r_x >= alias_invariant_size ? 0 : alias_invariant[r_x];
+ i_y = r_y >= alias_invariant_size ? 0 : alias_invariant[r_y];
if (i_x == 0 && i_y == 0)
break;
@@ -2710,7 +2717,7 @@ memory_modified_in_insn_p (rtx mem, rtx insn)
void
init_alias_analysis (void)
{
- int maxreg = max_reg_num ();
+ unsigned int maxreg = max_reg_num ();
int changed, pass;
int i;
unsigned int ui;
@@ -2730,17 +2737,31 @@ init_alias_analysis (void)
/* Overallocate reg_base_value to allow some growth during loop
optimization. Loop unrolling can create a large number of
registers. */
- reg_base_value_size = maxreg * 2;
- reg_base_value = ggc_alloc_cleared (reg_base_value_size * sizeof (rtx));
+ if (old_reg_base_value)
+ {
+ reg_base_value = old_reg_base_value;
+ /* If varray gets large zeroing cost may get important. */
+ if (VARRAY_SIZE (reg_base_value) > 256
+ && VARRAY_SIZE (reg_base_value) > 4 * maxreg)
+ VARRAY_GROW (reg_base_value, maxreg);
+ VARRAY_CLEAR (reg_base_value);
+ if (VARRAY_SIZE (reg_base_value) < maxreg)
+ VARRAY_GROW (reg_base_value, maxreg);
+ }
+ else
+ {
+ VARRAY_RTX_INIT (reg_base_value, maxreg, "reg_base_value");
+ }
- new_reg_base_value = xmalloc (reg_base_value_size * sizeof (rtx));
- reg_seen = xmalloc (reg_base_value_size);
+ new_reg_base_value = xmalloc (maxreg * sizeof (rtx));
+ reg_seen = xmalloc (maxreg);
if (! reload_completed && flag_old_unroll_loops)
{
/* ??? Why are we realloc'ing if we're just going to zero it? */
alias_invariant = xrealloc (alias_invariant,
- reg_base_value_size * sizeof (rtx));
- memset (alias_invariant, 0, reg_base_value_size * sizeof (rtx));
+ maxreg * sizeof (rtx));
+ memset (alias_invariant, 0, maxreg * sizeof (rtx));
+ alias_invariant_size = maxreg;
}
/* The basic idea is that each pass through this loop will use the
@@ -2777,10 +2798,10 @@ init_alias_analysis (void)
copying_arguments = true;
/* Wipe the potential alias information clean for this pass. */
- memset (new_reg_base_value, 0, reg_base_value_size * sizeof (rtx));
+ memset (new_reg_base_value, 0, maxreg * sizeof (rtx));
/* Wipe the reg_seen array clean. */
- memset (reg_seen, 0, reg_base_value_size);
+ memset (reg_seen, 0, maxreg);
/* Mark all hard registers which may contain an address.
The stack, frame and argument pointers may contain an address.
@@ -2868,13 +2889,16 @@ init_alias_analysis (void)
}
/* Now propagate values from new_reg_base_value to reg_base_value. */
- for (ui = 0; ui < reg_base_value_size; ui++)
+ if (maxreg != (unsigned int) max_reg_num())
+ abort ();
+ for (ui = 0; ui < maxreg; ui++)
{
if (new_reg_base_value[ui]
- && new_reg_base_value[ui] != reg_base_value[ui]
- && ! rtx_equal_p (new_reg_base_value[ui], reg_base_value[ui]))
+ && new_reg_base_value[ui] != VARRAY_RTX (reg_base_value, ui)
+ && ! rtx_equal_p (new_reg_base_value[ui],
+ VARRAY_RTX (reg_base_value, ui)))
{
- reg_base_value[ui] = new_reg_base_value[ui];
+ VARRAY_RTX (reg_base_value, ui) = new_reg_base_value[ui];
changed = 1;
}
}
@@ -2882,7 +2906,7 @@ init_alias_analysis (void)
while (changed && ++pass < MAX_ALIAS_LOOP_PASSES);
/* Fill in the remaining entries. */
- for (i = FIRST_PSEUDO_REGISTER; i < maxreg; i++)
+ for (i = FIRST_PSEUDO_REGISTER; i < (int)maxreg; i++)
if (reg_known_value[i] == 0)
reg_known_value[i] = regno_reg_rtx[i];
@@ -2901,16 +2925,17 @@ init_alias_analysis (void)
{
changed = 0;
pass++;
- for (ui = 0; ui < reg_base_value_size; ui++)
+ for (ui = 0; ui < maxreg; ui++)
{
- rtx base = reg_base_value[ui];
+ rtx base = VARRAY_RTX (reg_base_value, ui);
if (base && GET_CODE (base) == REG)
{
unsigned int base_regno = REGNO (base);
if (base_regno == ui) /* register set from itself */
- reg_base_value[ui] = 0;
+ VARRAY_RTX (reg_base_value, ui) = 0;
else
- reg_base_value[ui] = reg_base_value[base_regno];
+ VARRAY_RTX (reg_base_value, ui)
+ = VARRAY_RTX (reg_base_value, base_regno);
changed = 1;
}
}
@@ -2928,17 +2953,17 @@ init_alias_analysis (void)
void
end_alias_analysis (void)
{
+ old_reg_base_value = reg_base_value;
free (reg_known_value + FIRST_PSEUDO_REGISTER);
reg_known_value = 0;
reg_known_value_size = 0;
free (reg_known_equiv_p + FIRST_PSEUDO_REGISTER);
reg_known_equiv_p = 0;
- reg_base_value = 0;
- reg_base_value_size = 0;
if (alias_invariant)
{
free (alias_invariant);
alias_invariant = 0;
+ alias_invariant_size = 0;
}
}
diff --git a/gcc/alloc-pool.c b/gcc/alloc-pool.c
index c21cfe4c707..9f1583df72b 100644
--- a/gcc/alloc-pool.c
+++ b/gcc/alloc-pool.c
@@ -1,5 +1,5 @@
/* Functions to support a pool of allocatable objects.
- Copyright (C) 1987, 1997, 1998, 1999, 2000, 2001, 2003
+ Copyright (C) 1987, 1997, 1998, 1999, 2000, 2001, 2003, 2004
Free Software Foundation, Inc.
Contributed by Daniel Berlin <dan@cgsoftware.com>
@@ -23,6 +23,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "config.h"
#include "system.h"
#include "alloc-pool.h"
+#include "hashtab.h"
/* Redefine abort to report an internal error w/o coredump, and
reporting the location of the error in the source file. This logic
@@ -34,7 +35,6 @@ extern void fancy_abort (const char *, int, const char *)
ATTRIBUTE_NORETURN;
#define abort() fancy_abort (__FILE__, __LINE__, __FUNCTION__)
-#define align_four(x) (((x+3) >> 2) << 2)
#define align_eight(x) (((x+7) >> 3) << 3)
/* The internal allocation object. */
@@ -73,6 +73,56 @@ typedef struct allocation_object_def
static ALLOC_POOL_ID_TYPE last_id;
#endif
+#ifdef GATHER_STATISTICS
+
+/* Store infromation about each particular alloc_pool. */
+struct alloc_pool_descriptor
+{
+ const char *name;
+ int allocated;
+ int created;
+ int peak;
+ int current;
+};
+
+/* Hashtable mapping alloc_pool names to descriptors. */
+static htab_t alloc_pool_hash;
+
+/* Hashtable helpers. */
+static hashval_t
+hash_descriptor (const void *p)
+{
+ const struct alloc_pool_descriptor *d = p;
+ return htab_hash_pointer (d->name);
+}
+static int
+eq_descriptor (const void *p1, const void *p2)
+{
+ const struct alloc_pool_descriptor *d = p1;
+ return d->name == p2;
+}
+
+/* For given name, return descriptor, create new if needed. */
+static struct alloc_pool_descriptor *
+alloc_pool_descriptor (const char *name)
+{
+ struct alloc_pool_descriptor **slot;
+
+ if (!alloc_pool_hash)
+ alloc_pool_hash = htab_create (10, hash_descriptor, eq_descriptor, NULL);
+
+ slot = (struct alloc_pool_descriptor **)
+ htab_find_slot_with_hash (alloc_pool_hash, name,
+ htab_hash_pointer (name),
+ 1);
+ if (*slot)
+ return *slot;
+ *slot = xcalloc (sizeof (**slot), 1);
+ (*slot)->name = name;
+ return *slot;
+}
+#endif
+
/* Create a pool of things of size SIZE, with NUM in each block we
allocate. */
@@ -81,6 +131,9 @@ create_alloc_pool (const char *name, size_t size, size_t num)
{
alloc_pool pool;
size_t pool_size, header_size;
+#ifdef GATHER_STATISTICS
+ struct alloc_pool_descriptor *desc;
+#endif
if (!name)
abort ();
@@ -90,7 +143,7 @@ create_alloc_pool (const char *name, size_t size, size_t num)
size = sizeof (alloc_pool_list);
/* Now align the size to a multiple of 4. */
- size = align_four (size);
+ size = align_eight (size);
#ifdef ENABLE_CHECKING
/* Add the aligned size of ID. */
@@ -108,7 +161,11 @@ create_alloc_pool (const char *name, size_t size, size_t num)
pool = xmalloc (pool_size);
/* Now init the various pieces of our pool structure. */
- pool->name = xstrdup (name);
+ pool->name = /*xstrdup (name)*/name;
+#ifdef GATHER_STATISTICS
+ desc = alloc_pool_descriptor (name);
+ desc->created++;
+#endif
pool->elt_size = size;
pool->elts_per_block = num;
@@ -140,6 +197,9 @@ void
free_alloc_pool (alloc_pool pool)
{
alloc_pool_list block, next_block;
+#ifdef GATHER_STATISTICS
+ struct alloc_pool_descriptor *desc = alloc_pool_descriptor (pool->name);
+#endif
#ifdef ENABLE_CHECKING
if (!pool)
@@ -151,9 +211,14 @@ free_alloc_pool (alloc_pool pool)
{
next_block = block->next;
free (block);
+#ifdef GATHER_STATISTICS
+ desc->current -= pool->block_size;
+#endif
}
- /* Lastly, free the pool and the name. */
- free (pool->name);
+ /* Lastly, free the pool. */
+#ifdef ENABLE_CHECKING
+ memset (pool, 0xaf, sizeof (*pool));
+#endif
free (pool);
}
@@ -163,6 +228,11 @@ pool_alloc (alloc_pool pool)
{
alloc_pool_list header;
char *block;
+#ifdef GATHER_STATISTICS
+ struct alloc_pool_descriptor *desc = alloc_pool_descriptor (pool->name);
+
+ desc->allocated+=pool->elt_size;
+#endif
#ifdef ENABLE_CHECKING
if (!pool)
@@ -179,6 +249,11 @@ pool_alloc (alloc_pool pool)
block = xmalloc (pool->block_size);
block_header = (alloc_pool_list) block;
block += align_eight (sizeof (struct alloc_pool_list_def));
+#ifdef GATHER_STATISTICS
+ desc->current += pool->block_size;
+ if (desc->peak < desc->current)
+ desc->peak = desc->current;
+#endif
/* Throw it on the block list. */
block_header->next = pool->block_list;
@@ -225,6 +300,8 @@ pool_free (alloc_pool pool, void *ptr)
if (!ptr)
abort ();
+ memset (ptr, 0xaf, pool->elt_size - offsetof (allocation_object, u.data));
+
/* Check whether the PTR was allocated from POOL. */
if (pool->id != ALLOCATION_OBJECT_PTR_FROM_USER_PTR (ptr)->id)
abort ();
@@ -242,3 +319,49 @@ pool_free (alloc_pool pool, void *ptr)
pool->free_list = header;
pool->elts_free++;
}
+/* Output per-alloc_pool statistics. */
+#ifdef GATHER_STATISTICS
+
+/* Used to accumulate statistics about alloc_pool sizes. */
+struct output_info
+{
+ int count;
+ int size;
+};
+
+/* Called via htab_traverse. Output alloc_pool descriptor pointed out by SLOT
+ and update statistics. */
+static int
+print_statistics (void **slot, void *b)
+{
+ struct alloc_pool_descriptor *d = (struct alloc_pool_descriptor *) *slot;
+ struct output_info *i = (struct output_info *) b;
+
+ if (d->allocated)
+ {
+ fprintf (stderr, "%-21s %6d %10d %10d %10d\n", d->name,
+ d->created, d->allocated, d->peak, d->current);
+ i->size += d->allocated;
+ i->count += d->created;
+ }
+ return 1;
+}
+#endif
+
+/* Output per-alloc_pool memory usage statistics. */
+void dump_alloc_pool_statistics (void)
+{
+#ifdef GATHER_STATISTICS
+ struct output_info info;
+
+ fprintf (stderr, "\nAlloc-pool Kind Pools Allocated Peak Leak\n");
+ fprintf (stderr, "-------------------------------------------------------------\n");
+ info.count = 0;
+ info.size = 0;
+ htab_traverse (alloc_pool_hash, print_statistics, &info);
+ fprintf (stderr, "-------------------------------------------------------------\n");
+ fprintf (stderr, "%-20s %7d %10d\n",
+ "Total", info.count, info.size);
+ fprintf (stderr, "-------------------------------------------------------------\n");
+#endif
+}
diff --git a/gcc/alloc-pool.h b/gcc/alloc-pool.h
index 48d017217a9..0eb2c9685b8 100644
--- a/gcc/alloc-pool.h
+++ b/gcc/alloc-pool.h
@@ -1,5 +1,5 @@
/* Functions to support a pool of allocatable objects
- Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003
+ Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004
Free Software Foundation, Inc.
Contributed by Daniel Berlin <dan@cgsoftware.com>
@@ -32,7 +32,7 @@ typedef struct alloc_pool_list_def
typedef struct alloc_pool_def
{
- char *name;
+ const char *name;
#ifdef ENABLE_CHECKING
ALLOC_POOL_ID_TYPE id;
#endif
@@ -51,4 +51,5 @@ extern alloc_pool create_alloc_pool (const char *, size_t, size_t);
extern void free_alloc_pool (alloc_pool);
extern void *pool_alloc (alloc_pool);
extern void pool_free (alloc_pool, void *);
+extern void dump_alloc_pool_statistics (void);
#endif
diff --git a/gcc/basic-block.h b/gcc/basic-block.h
index 2e8f5786348..10cc6351bd6 100644
--- a/gcc/basic-block.h
+++ b/gcc/basic-block.h
@@ -1,5 +1,5 @@
/* Define control and data flow tables, and regsets.
- Copyright (C) 1987, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1987, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -480,6 +480,10 @@ enum update_life_extent
| PROP_SCAN_DEAD_CODE | PROP_AUTOINC \
| PROP_ALLOW_CFG_CHANGES \
| PROP_SCAN_DEAD_STORES)
+#define PROP_POSTRELOAD (PROP_DEATH_NOTES \
+ | PROP_KILL_DEAD_CODE \
+ | PROP_SCAN_DEAD_CODE | PROP_AUTOINC \
+ | PROP_SCAN_DEAD_STORES)
#define CLEANUP_EXPENSIVE 1 /* Do relatively expensive optimizations
except for edge forwarding */
@@ -495,6 +499,7 @@ enum update_life_extent
#define CLEANUP_NO_INSN_DEL 128 /* Do not try to delete trivially dead
insns. */
#define CLEANUP_CFGLAYOUT 256 /* Do cleanup in cfglayout mode. */
+#define CLEANUP_LOG_LINKS 512 /* Update log links. */
extern void life_analysis (rtx, FILE *, int);
extern int update_life_info (sbitmap, enum update_life_extent, int);
extern int update_life_info_in_dirty_blocks (enum update_life_extent, int);
@@ -640,6 +645,7 @@ extern void iterate_fix_dominators (enum cdi_direction, basic_block *, int);
extern void verify_dominators (enum cdi_direction);
extern basic_block first_dom_son (enum cdi_direction, basic_block);
extern basic_block next_dom_son (enum cdi_direction, basic_block);
+extern bool try_redirect_by_replacing_jump (edge, basic_block, bool);
#include "cfghooks.h"
diff --git a/gcc/builtin-types.def b/gcc/builtin-types.def
index f33bacd4330..85b30b98caa 100644
--- a/gcc/builtin-types.def
+++ b/gcc/builtin-types.def
@@ -64,6 +64,7 @@ DEF_PRIMITIVE_TYPE (BT_INT, integer_type_node)
DEF_PRIMITIVE_TYPE (BT_UNSIGNED, unsigned_type_node)
DEF_PRIMITIVE_TYPE (BT_LONG, long_integer_type_node)
DEF_PRIMITIVE_TYPE (BT_LONGLONG, long_long_integer_type_node)
+DEF_PRIMITIVE_TYPE (BT_WORD, (*lang_hooks.types.type_for_mode) (word_mode, 0))
DEF_PRIMITIVE_TYPE (BT_FLOAT, float_type_node)
DEF_PRIMITIVE_TYPE (BT_INTMAX, intmax_type_node)
DEF_PRIMITIVE_TYPE (BT_DOUBLE, double_type_node)
@@ -142,6 +143,7 @@ DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_CONST_STRING, BT_DOUBLE, BT_CONST_STRING)
DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_CONST_STRING,
BT_LONGDOUBLE, BT_CONST_STRING)
DEF_FUNCTION_TYPE_1 (BT_FN_STRING_CONST_STRING, BT_STRING, BT_CONST_STRING)
+DEF_FUNCTION_TYPE_1 (BT_FN_WORD_PTR, BT_WORD, BT_PTR)
DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_INT, BT_VOID, BT_PTR, BT_INT)
DEF_FUNCTION_TYPE_2 (BT_FN_STRING_STRING_CONST_STRING,
diff --git a/gcc/builtins.c b/gcc/builtins.c
index 5669f00171d..dadb6cd41a0 100644
--- a/gcc/builtins.c
+++ b/gcc/builtins.c
@@ -4131,6 +4131,7 @@ expand_builtin_va_arg (tree valist, tree type)
/* We can, however, treat "undefined" any way we please.
Call abort to encourage the user to fix the program. */
+ inform ("if this code is reached, the program will abort");
expand_builtin_trap ();
/* This is dead code, but go ahead and finish so that the
@@ -4458,7 +4459,7 @@ expand_builtin_expect_jump (tree exp, rtx if_false_label, rtx if_true_label)
if (TREE_CODE (TREE_TYPE (arg1)) == INTEGER_TYPE
&& (integer_zerop (arg1) || integer_onep (arg1)))
{
- rtx insn, drop_through_label;
+ rtx insn, drop_through_label, temp;
/* Expand the jump insns. */
start_sequence ();
@@ -4492,16 +4493,16 @@ expand_builtin_expect_jump (tree exp, rtx if_false_label, rtx if_true_label)
/* First check if we recognize any of the labels. */
if (GET_CODE (then_dest) == LABEL_REF
- && XEXP (then_dest, 1) == if_true_label)
+ && XEXP (then_dest, 0) == if_true_label)
taken = 1;
else if (GET_CODE (then_dest) == LABEL_REF
- && XEXP (then_dest, 1) == if_false_label)
+ && XEXP (then_dest, 0) == if_false_label)
taken = 0;
else if (GET_CODE (else_dest) == LABEL_REF
- && XEXP (else_dest, 1) == if_false_label)
+ && XEXP (else_dest, 0) == if_false_label)
taken = 1;
else if (GET_CODE (else_dest) == LABEL_REF
- && XEXP (else_dest, 1) == if_true_label)
+ && XEXP (else_dest, 0) == if_true_label)
taken = 0;
/* Otherwise check where we drop through. */
else if (else_dest == pc_rtx)
@@ -4511,13 +4512,15 @@ expand_builtin_expect_jump (tree exp, rtx if_false_label, rtx if_true_label)
if (next && GET_CODE (next) == JUMP_INSN
&& any_uncondjump_p (next))
- next = XEXP (SET_SRC (pc_set (next)), 1);
+ temp = XEXP (SET_SRC (pc_set (next)), 0);
+ else
+ temp = next;
- /* NEXT is either a CODE_LABEL, NULL_RTX or something
+ /* TEMP is either a CODE_LABEL, NULL_RTX or something
else that can't possibly match either target label. */
- if (next == if_false_label)
+ if (temp == if_false_label)
taken = 1;
- else if (next == if_true_label)
+ else if (temp == if_true_label)
taken = 0;
}
else if (then_dest == pc_rtx)
@@ -4527,11 +4530,13 @@ expand_builtin_expect_jump (tree exp, rtx if_false_label, rtx if_true_label)
if (next && GET_CODE (next) == JUMP_INSN
&& any_uncondjump_p (next))
- next = XEXP (SET_SRC (pc_set (next)), 1);
+ temp = XEXP (SET_SRC (pc_set (next)), 0);
+ else
+ temp = next;
- if (next == if_false_label)
+ if (temp == if_false_label)
taken = 0;
- else if (next == if_true_label)
+ else if (temp == if_true_label)
taken = 1;
}
@@ -5431,6 +5436,9 @@ expand_builtin (tree exp, rtx target, rtx subtarget, enum machine_mode mode,
case BUILT_IN_EH_RETURN_DATA_REGNO:
return expand_builtin_eh_return_data_regno (arglist);
#endif
+ case BUILT_IN_EXTEND_POINTER:
+ return expand_builtin_extend_pointer (TREE_VALUE (arglist));
+
case BUILT_IN_VA_START:
case BUILT_IN_STDARG_START:
return expand_builtin_va_start (arglist);
diff --git a/gcc/builtins.def b/gcc/builtins.def
index fc6ddcaedfa..dbc61ce3775 100644
--- a/gcc/builtins.def
+++ b/gcc/builtins.def
@@ -278,12 +278,12 @@ DEF_C99_BUILTIN (BUILT_IN_LROUNDL, "lroundl", BT_FN_LONG_LONGDOUBLE, ATTR
DEF_LIB_BUILTIN (BUILT_IN_MODF, "modf", BT_FN_DOUBLE_DOUBLE_DOUBLEPTR, ATTR_MATHFN_FPROUNDING_STORE)
DEF_C99_C90RES_BUILTIN (BUILT_IN_MODFF, "modff", BT_FN_FLOAT_FLOAT_FLOATPTR, ATTR_MATHFN_FPROUNDING_STORE)
DEF_C99_C90RES_BUILTIN (BUILT_IN_MODFL, "modfl", BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLEPTR, ATTR_MATHFN_FPROUNDING_STORE)
-DEF_LIB_BUILTIN (BUILT_IN_NAN, "nan", BT_FN_DOUBLE_CONST_STRING, ATTR_CONST_NOTHROW_NONNULL_1)
-DEF_LIB_BUILTIN (BUILT_IN_NANF, "nanf", BT_FN_FLOAT_CONST_STRING, ATTR_CONST_NOTHROW_NONNULL_1)
-DEF_LIB_BUILTIN (BUILT_IN_NANL, "nanl", BT_FN_LONGDOUBLE_CONST_STRING, ATTR_CONST_NOTHROW_NONNULL_1)
-DEF_LIB_BUILTIN (BUILT_IN_NANS, "nans", BT_FN_DOUBLE_CONST_STRING, ATTR_CONST_NOTHROW_NONNULL_1)
-DEF_LIB_BUILTIN (BUILT_IN_NANSF, "nansf", BT_FN_FLOAT_CONST_STRING, ATTR_CONST_NOTHROW_NONNULL_1)
-DEF_LIB_BUILTIN (BUILT_IN_NANSL, "nansl", BT_FN_LONGDOUBLE_CONST_STRING, ATTR_CONST_NOTHROW_NONNULL_1)
+DEF_GCC_BUILTIN (BUILT_IN_NAN, "nan", BT_FN_DOUBLE_CONST_STRING, ATTR_CONST_NOTHROW_NONNULL_1)
+DEF_GCC_BUILTIN (BUILT_IN_NANF, "nanf", BT_FN_FLOAT_CONST_STRING, ATTR_CONST_NOTHROW_NONNULL_1)
+DEF_GCC_BUILTIN (BUILT_IN_NANL, "nanl", BT_FN_LONGDOUBLE_CONST_STRING, ATTR_CONST_NOTHROW_NONNULL_1)
+DEF_GCC_BUILTIN (BUILT_IN_NANS, "nans", BT_FN_DOUBLE_CONST_STRING, ATTR_CONST_NOTHROW_NONNULL_1)
+DEF_GCC_BUILTIN (BUILT_IN_NANSF, "nansf", BT_FN_FLOAT_CONST_STRING, ATTR_CONST_NOTHROW_NONNULL_1)
+DEF_GCC_BUILTIN (BUILT_IN_NANSL, "nansl", BT_FN_LONGDOUBLE_CONST_STRING, ATTR_CONST_NOTHROW_NONNULL_1)
DEF_C99_BUILTIN (BUILT_IN_NEARBYINT, "nearbyint", BT_FN_DOUBLE_DOUBLE, ATTR_CONST_NOTHROW_LIST)
DEF_C99_BUILTIN (BUILT_IN_NEARBYINTF, "nearbyintf", BT_FN_FLOAT_FLOAT, ATTR_CONST_NOTHROW_LIST)
DEF_C99_BUILTIN (BUILT_IN_NEARBYINTL, "nearbyintl", BT_FN_LONGDOUBLE_LONGDOUBLE, ATTR_CONST_NOTHROW_LIST)
@@ -512,6 +512,7 @@ DEF_GCC_BUILTIN (BUILT_IN_EH_RETURN, "eh_return", BT_FN_VOID_PTRMODE_PTR,
DEF_GCC_BUILTIN (BUILT_IN_EH_RETURN_DATA_REGNO, "eh_return_data_regno", BT_FN_INT_INT, ATTR_NULL)
DEF_LIB_BUILTIN (BUILT_IN_EXIT, "exit", BT_FN_VOID_INT, ATTR_NORETURN_NOTHROW_LIST)
DEF_GCC_BUILTIN (BUILT_IN_EXPECT, "expect", BT_FN_LONG_LONG_LONG, ATTR_NULL)
+DEF_GCC_BUILTIN (BUILT_IN_EXTEND_POINTER, "extend_pointer", BT_FN_WORD_PTR, ATTR_CONST_NOTHROW_LIST)
DEF_GCC_BUILTIN (BUILT_IN_EXTRACT_RETURN_ADDR, "extract_return_addr", BT_FN_PTR_PTR, ATTR_NULL)
DEF_GCC_BUILTIN (BUILT_IN_FRAME_ADDRESS, "frame_address", BT_FN_PTR_UNSIGNED, ATTR_NULL)
DEF_GCC_BUILTIN (BUILT_IN_FROB_RETURN_ADDR, "frob_return_addr", BT_FN_PTR_PTR, ATTR_NULL)
diff --git a/gcc/c-common.c b/gcc/c-common.c
index dcd540b1d85..eae2f5b315d 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -1,6 +1,6 @@
/* Subroutines shared by all languages that are variants of C.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -599,23 +599,6 @@ int flag_permissive;
int flag_enforce_eh_specs = 1;
-/* The version of the C++ ABI in use. The following values are
- allowed:
-
- 0: The version of the ABI believed most conformant with the
- C++ ABI specification. This ABI may change as bugs are
- discovered and fixed. Therefore, 0 will not necessarily
- indicate the same ABI in different versions of G++.
-
- 1: The version of the ABI first used in G++ 3.2.
-
- 2: The version of the ABI first used in G++ 3.4.
-
- Additional positive integers will be assigned as new versions of
- the ABI become the default version of the ABI. */
-
-int flag_abi_version = 2;
-
/* Nonzero means warn about things that will change when compiling
with an ABI-compliant compiler. */
@@ -2528,12 +2511,6 @@ pointer_int_sum (enum tree_code resultcode, tree ptrop, tree intop)
pedwarn ("pointer to member function used in arithmetic");
size_exp = integer_one_node;
}
- else if (TREE_CODE (TREE_TYPE (result_type)) == OFFSET_TYPE)
- {
- if (pedantic || warn_pointer_arith)
- pedwarn ("pointer to a member used in arithmetic");
- size_exp = integer_one_node;
- }
else
size_exp = size_in_bytes (TREE_TYPE (result_type));
@@ -4128,7 +4105,7 @@ c_expand_expr (tree exp, rtx target, enum machine_mode tmode,
expand_stmt (STMT_EXPR_STMT (exp));
expand_end_stmt_expr (rtl_expr);
- result = expand_expr (rtl_expr, target, tmode, modifier);
+ result = expand_expr_real (rtl_expr, target, tmode, modifier, alt_rtl);
if (preserve_result && GET_CODE (result) == MEM)
{
if (GET_MODE (result) != BLKmode)
@@ -4288,21 +4265,6 @@ c_init_attributes (void)
#undef DEF_ATTR_TREE_LIST
}
-/* Output a -Wshadow warning MSGCODE about NAME, and give the location
- of the previous declaration DECL. */
-void
-shadow_warning (enum sw_kind msgcode, const char *name, tree decl)
-{
- static const char *const msgs[] = {
- /* SW_PARAM */ N_("declaration of \"%s\" shadows a parameter"),
- /* SW_LOCAL */ N_("declaration of \"%s\" shadows a previous local"),
- /* SW_GLOBAL */ N_("declaration of \"%s\" shadows a global declaration")
- };
-
- warning (msgs[msgcode], name);
- warning ("%Jshadowed declaration is here", decl);
-}
-
/* Attribute handlers common to C front ends. */
/* Handle a "packed" attribute; arguments as in
@@ -5780,6 +5742,24 @@ c_estimate_num_insns_1 (tree *tp, int *walk_subtrees, void *data)
*count += ((size + MOVE_MAX_PIECES - 1) / MOVE_MAX_PIECES);
}
break;
+ case CALL_EXPR:
+ {
+ tree decl = get_callee_fndecl (x);
+
+ if (decl && DECL_BUILT_IN (decl))
+ switch (DECL_FUNCTION_CODE (decl))
+ {
+ case BUILT_IN_CONSTANT_P:
+ *walk_subtrees = 0;
+ return NULL_TREE;
+ case BUILT_IN_EXPECT:
+ return NULL_TREE;
+ default:
+ break;
+ }
+ *count += 10;
+ break;
+ }
/* Few special cases of expensive operations. This is usefull
to avoid inlining on functions having too many of these. */
case TRUNC_DIV_EXPR:
@@ -5791,7 +5771,6 @@ c_estimate_num_insns_1 (tree *tp, int *walk_subtrees, void *data)
case FLOOR_MOD_EXPR:
case ROUND_MOD_EXPR:
case RDIV_EXPR:
- case CALL_EXPR:
*count += 10;
break;
/* Various containers that will produce no code themselves. */
diff --git a/gcc/c-common.h b/gcc/c-common.h
index 2b33373126d..7849730f161 100644
--- a/gcc/c-common.h
+++ b/gcc/c-common.h
@@ -1,6 +1,6 @@
/* Definitions for c-common.c.
Copyright (C) 1987, 1993, 1994, 1995, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -330,8 +330,6 @@ extern void (*lang_expand_function_end) (void);
extern int (*lang_missing_noreturn_ok_p) (tree);
extern int yyparse (void);
-extern void free_parser_stacks (void);
-
extern stmt_tree current_stmt_tree (void);
extern tree *current_scope_stmt_stack (void);
extern void begin_stmt_tree (tree *);
@@ -347,8 +345,6 @@ extern tree c_begin_if_stmt (void);
extern tree c_begin_while_stmt (void);
extern void c_finish_while_stmt_cond (tree, tree);
-enum sw_kind { SW_PARAM = 0, SW_LOCAL, SW_GLOBAL };
-extern void shadow_warning (enum sw_kind, const char *, tree);
extern int field_decl_cmp (const void *, const void *);
extern void resort_sorted_fields (void *, void *, gt_pointer_operator,
void *);
@@ -764,21 +760,6 @@ extern int flag_permissive;
extern int flag_enforce_eh_specs;
-/* The version of the C++ ABI in use. The following values are
- allowed:
-
- 0: The version of the ABI believed most conformant with the
- C++ ABI specification. This ABI may change as bugs are
- discovered and fixed. Therefore, 0 will not necessarily
- indicate the same ABI in different versions of G++.
-
- 1: The version of the ABI first used in G++ 3.2.
-
- Additional positive integers will be assigned as new versions of
- the ABI become the default version of the ABI. */
-
-extern int flag_abi_version;
-
/* Nonzero means warn about things that will change when compiling
with an ABI-compliant compiler. */
@@ -1340,5 +1321,6 @@ extern void objc_mark_locals_volatile (void *);
extern void init_pp_output (FILE *);
extern void preprocess_file (cpp_reader *);
extern void pp_file_change (const struct line_map *);
+extern void pp_dir_change (cpp_reader *, const char *);
#endif /* ! GCC_C_COMMON_H */
diff --git a/gcc/c-cppbuiltin.c b/gcc/c-cppbuiltin.c
index e02960e8532..8573b8c5a46 100644
--- a/gcc/c-cppbuiltin.c
+++ b/gcc/c-cppbuiltin.c
@@ -1,5 +1,5 @@
/* Define builtin-in macros for the C family front ends.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -193,6 +193,16 @@ builtin_define_float_constants (const char *name_prefix, const char *fp_suffix,
if (i < n)
*p++ = "08ce"[n - i];
sprintf (p, "p%d", fmt->emax * fmt->log2_b);
+ if (fmt->pnan < fmt->p)
+ {
+ /* This is an IBM extended double format made up of two IEEE
+ doubles. The value of the long double is the sum of the
+ values of the two parts. The most significant part is
+ required to be the value of the long double rounded to the
+ nearest double. Rounding means we need a slightly smaller
+ value for LDBL_MAX. */
+ buf[4 + fmt->pnan / 4] = "7bde"[fmt->pnan % 4];
+ }
}
sprintf (name, "__%s_MAX__", name_prefix);
builtin_define_with_hex_fp_value (name, type, decimal_dig, buf, fp_suffix);
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index 77f6cfbb69f..086902c931e 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -230,21 +230,21 @@ struct c_scope GTY(())
/* True if we are currently filling this scope with parameter
declarations. */
- bool parm_flag : 1;
+ BOOL_BITFIELD parm_flag : 1;
/* True if we already complained about forward parameter decls
in this scope. This prevents double warnings on
foo (int a; int b; ...) */
- bool warned_forward_parm_decls : 1;
+ BOOL_BITFIELD warned_forward_parm_decls : 1;
/* True if this is the outermost block scope of a function body.
This scope contains the parameters, the local variables declared
in the outermost block, and all the labels (except those in
nested functions, or declared at block scope with __label__). */
- bool function_body : 1;
+ BOOL_BITFIELD function_body : 1;
/* True means make a BLOCK for this scope no matter what. */
- bool keep : 1;
+ BOOL_BITFIELD keep : 1;
};
/* The scope currently in effect. */
@@ -939,7 +939,8 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl,
unless OLDDECL is a builtin. OLDDECL will be discarded in any case. */
if (TREE_CODE (olddecl) != TREE_CODE (newdecl))
{
- if (TREE_CODE (olddecl) != FUNCTION_DECL || !DECL_BUILT_IN (olddecl))
+ if (TREE_CODE (olddecl) != FUNCTION_DECL
+ || !DECL_BUILT_IN (olddecl) || !C_DECL_INVISIBLE (olddecl))
{
error ("%J'%D' redeclared as different kind of symbol",
newdecl, newdecl);
@@ -956,7 +957,8 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl,
if (!comptypes (oldtype, newtype, COMPARE_STRICT))
{
- if (TREE_CODE (olddecl) == FUNCTION_DECL && DECL_BUILT_IN (olddecl))
+ if (TREE_CODE (olddecl) == FUNCTION_DECL
+ && DECL_BUILT_IN (olddecl) && C_DECL_INVISIBLE (olddecl))
{
/* Accept harmless mismatch in function types.
This is for the ffs and fprintf builtins. */
@@ -1029,11 +1031,16 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl,
extern-inline definition supersedes the extern-inline definition. */
else if (TREE_CODE (newdecl) == FUNCTION_DECL)
{
- if (DECL_BUILT_IN (olddecl) && !TREE_PUBLIC (newdecl))
+ /* If you declare a built-in function name as static, or
+ define the built-in with an old-style definition (so we
+ can't validate the argument list) the built-in definition is
+ overridden, but optionally warn this was a bad choice of name. */
+ if (DECL_BUILT_IN (olddecl)
+ && C_DECL_INVISIBLE (olddecl)
+ && (!TREE_PUBLIC (newdecl)
+ || (DECL_INITIAL (newdecl)
+ && !TYPE_ARG_TYPES (TREE_TYPE (newdecl)))))
{
- /* If you declare a built-in function name as static, the
- built-in definition is overridden,
- but optionally warn this was a bad choice of name. */
if (warn_shadow)
warning ("%Jshadowing built-in function '%D'", newdecl, newdecl);
/* Discard the old built-in function. */
@@ -1204,8 +1211,18 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl,
}
}
}
- else /* VAR_DECL */
+ else /* PARM_DECL, VAR_DECL */
{
+ /* Redeclaration of a PARM_DECL is invalid unless this is the
+ real position of a forward-declared parameter (GCC extension). */
+ if (TREE_CODE (newdecl) == PARM_DECL
+ && (!TREE_ASM_WRITTEN (olddecl) || TREE_ASM_WRITTEN (newdecl)))
+ {
+ error ("%Jredefinition of parameter '%D'", newdecl, newdecl);
+ locate_old_decl (olddecl, error);
+ return false;
+ }
+
/* These bits are only type qualifiers when applied to objects. */
if (TREE_THIS_VOLATILE (newdecl) != TREE_THIS_VOLATILE (olddecl))
{
@@ -1234,10 +1251,13 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl,
&& warn_redundant_decls
/* Don't warn about a function declaration followed by a
definition. */
- && !(TREE_CODE (newdecl) == FUNCTION_DECL
- && DECL_INITIAL (newdecl) && !DECL_INITIAL (olddecl))
- /* Don't warn about an extern followed by a definition. */
- && !(DECL_EXTERNAL (olddecl) && !DECL_EXTERNAL (newdecl)))
+ && !(TREE_CODE (newdecl) == FUNCTION_DECL
+ && DECL_INITIAL (newdecl) && !DECL_INITIAL (olddecl))
+ /* Don't warn about an extern followed by a definition. */
+ && !(DECL_EXTERNAL (olddecl) && !DECL_EXTERNAL (newdecl))
+ /* Don't warn about forward parameter decls. */
+ && !(TREE_CODE (newdecl) == PARM_DECL
+ && TREE_ASM_WRITTEN (olddecl) && !TREE_ASM_WRITTEN (newdecl)))
{
warning ("%Jredundant redeclaration of '%D'", newdecl, newdecl);
warned = true;
@@ -1252,23 +1272,15 @@ diagnose_mismatched_decls (tree newdecl, tree olddecl,
/* Subroutine of duplicate_decls. NEWDECL has been found to be
consistent with OLDDECL, but carries new information. Merge the
- new information into OLDDECL. If DIFFERENT_BINDING_LEVEL or
- DIFFERENT_TU is true, avoid completely merging the decls, as this
- will break assumptions elsewhere. This function issues no
+ new information into OLDDECL. This function issues no
diagnostics. */
static void
-merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype,
- bool different_binding_level, bool different_tu)
+merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype)
{
int new_is_definition = (TREE_CODE (newdecl) == FUNCTION_DECL
&& DECL_INITIAL (newdecl) != 0);
- /* When copying info to olddecl, we store into write_olddecl
- instead. This allows us to avoid modifying olddecl when
- different_binding_level is true. */
- tree write_olddecl = different_binding_level ? newdecl : olddecl;
-
/* For real parm decl following a forward decl, return 1 so old decl
will be reused. Only allow this to happen once. */
if (TREE_CODE (newdecl) == PARM_DECL
@@ -1282,25 +1294,9 @@ merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype,
= (*targetm.merge_decl_attributes) (olddecl, newdecl);
/* Merge the data types specified in the two decls. */
- if (TREE_CODE (newdecl) != FUNCTION_DECL || !DECL_BUILT_IN (olddecl))
- {
- if (different_binding_level)
- {
- if (TYPE_ARG_TYPES (oldtype) != 0
- && TYPE_ARG_TYPES (newtype) == 0)
- TREE_TYPE (newdecl) = common_type (newtype, oldtype);
- else
- TREE_TYPE (newdecl)
- = build_type_attribute_variant
- (newtype,
- merge_attributes (TYPE_ATTRIBUTES (newtype),
- TYPE_ATTRIBUTES (oldtype)));
- }
- else
- TREE_TYPE (newdecl)
- = TREE_TYPE (olddecl)
- = common_type (newtype, oldtype);
- }
+ TREE_TYPE (newdecl)
+ = TREE_TYPE (olddecl)
+ = common_type (newtype, oldtype);
/* Lay the type out, unless already done. */
if (oldtype != TREE_TYPE (newdecl))
@@ -1331,33 +1327,27 @@ merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype,
/* Merge the type qualifiers. */
if (TREE_READONLY (newdecl))
- TREE_READONLY (write_olddecl) = 1;
+ TREE_READONLY (olddecl) = 1;
if (TREE_THIS_VOLATILE (newdecl))
{
- TREE_THIS_VOLATILE (write_olddecl) = 1;
+ TREE_THIS_VOLATILE (olddecl) = 1;
if (TREE_CODE (newdecl) == VAR_DECL)
make_var_volatile (newdecl);
}
/* Keep source location of definition rather than declaration. */
- /* When called with different_binding_level set, keep the old
- information so that meaningful diagnostics can be given. */
- if (DECL_INITIAL (newdecl) == 0 && DECL_INITIAL (olddecl) != 0
- && ! different_binding_level)
+ if (DECL_INITIAL (newdecl) == 0 && DECL_INITIAL (olddecl) != 0)
DECL_SOURCE_LOCATION (newdecl) = DECL_SOURCE_LOCATION (olddecl);
/* Merge the unused-warning information. */
if (DECL_IN_SYSTEM_HEADER (olddecl))
DECL_IN_SYSTEM_HEADER (newdecl) = 1;
else if (DECL_IN_SYSTEM_HEADER (newdecl))
- DECL_IN_SYSTEM_HEADER (write_olddecl) = 1;
+ DECL_IN_SYSTEM_HEADER (olddecl) = 1;
/* Merge the initialization information. */
- /* When called with different_binding_level set, don't copy over
- DECL_INITIAL, so that we don't accidentally change function
- declarations into function definitions. */
- if (DECL_INITIAL (newdecl) == 0 && ! different_binding_level)
+ if (DECL_INITIAL (newdecl) == 0)
DECL_INITIAL (newdecl) = DECL_INITIAL (olddecl);
/* Merge the section attribute.
@@ -1397,8 +1387,6 @@ merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype,
TREE_PUBLIC (newdecl) &= TREE_PUBLIC (olddecl);
/* This is since we don't automatically
copy the attributes of NEWDECL into OLDDECL. */
- /* No need to worry about different_binding_level here because
- then TREE_PUBLIC (newdecl) was true. */
TREE_PUBLIC (olddecl) = TREE_PUBLIC (newdecl);
/* If this clears `static', clear it in the identifier too. */
if (! TREE_PUBLIC (olddecl))
@@ -1406,24 +1394,15 @@ merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype,
}
if (DECL_EXTERNAL (newdecl))
{
- if (! different_binding_level || different_tu)
- {
- /* Don't mess with these flags on local externs; they remain
- external even if there's a declaration at file scope which
- isn't. */
- TREE_STATIC (newdecl) = TREE_STATIC (olddecl);
- DECL_EXTERNAL (newdecl) = DECL_EXTERNAL (olddecl);
- }
+ TREE_STATIC (newdecl) = TREE_STATIC (olddecl);
+ DECL_EXTERNAL (newdecl) = DECL_EXTERNAL (olddecl);
+
/* An extern decl does not override previous storage class. */
TREE_PUBLIC (newdecl) = TREE_PUBLIC (olddecl);
if (! DECL_EXTERNAL (newdecl))
{
DECL_CONTEXT (newdecl) = DECL_CONTEXT (olddecl);
DECL_COMMON (newdecl) = DECL_COMMON (olddecl);
- /* If we have two non-EXTERNAL file-scope decls that are
- the same, only one of them should be written out. */
- if (different_tu)
- TREE_ASM_WRITTEN (newdecl) = 1;
}
}
else
@@ -1465,37 +1444,18 @@ merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype,
if (DECL_BUILT_IN (olddecl))
{
- /* Get rid of any built-in function if we have a function
- definition. */
- if (new_is_definition)
- {
- if (! different_binding_level)
- {
- TREE_TYPE (olddecl) = TREE_TYPE (newdecl);
- DECL_BUILT_IN_CLASS (olddecl) = NOT_BUILT_IN;
- }
- }
- else
- {
- /* If redeclaring a builtin function, and not a definition,
- it stays built in. */
- DECL_BUILT_IN_CLASS (newdecl) = DECL_BUILT_IN_CLASS (olddecl);
- DECL_FUNCTION_CODE (newdecl) = DECL_FUNCTION_CODE (olddecl);
- }
+ /* If redeclaring a builtin function, it stays built in. */
+ DECL_BUILT_IN_CLASS (newdecl) = DECL_BUILT_IN_CLASS (olddecl);
+ DECL_FUNCTION_CODE (newdecl) = DECL_FUNCTION_CODE (olddecl);
}
/* Also preserve various other info from the definition. */
if (! new_is_definition)
{
DECL_RESULT (newdecl) = DECL_RESULT (olddecl);
- /* When called with different_binding_level set, don't copy over
- DECL_INITIAL, so that we don't accidentally change function
- declarations into function definitions. */
- if (! different_binding_level)
- DECL_INITIAL (newdecl) = DECL_INITIAL (olddecl);
+ DECL_INITIAL (newdecl) = DECL_INITIAL (olddecl);
DECL_SAVED_INSNS (newdecl) = DECL_SAVED_INSNS (olddecl);
DECL_SAVED_TREE (newdecl) = DECL_SAVED_TREE (olddecl);
- DECL_ESTIMATED_INSNS (newdecl) = DECL_ESTIMATED_INSNS (olddecl);
DECL_ARGUMENTS (newdecl) = DECL_ARGUMENTS (olddecl);
/* Set DECL_INLINE on the declaration if we've got a body
@@ -1504,9 +1464,7 @@ merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype,
{
DECL_INLINE (newdecl) = 1;
DECL_ABSTRACT_ORIGIN (newdecl)
- = (different_binding_level
- ? DECL_ORIGIN (olddecl)
- : DECL_ABSTRACT_ORIGIN (olddecl));
+ = DECL_ABSTRACT_ORIGIN (olddecl);
}
}
else
@@ -1518,18 +1476,18 @@ merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype,
DECL_INLINE (newdecl) = 1;
}
}
- if (different_binding_level)
- return;
/* Copy most of the decl-specific fields of NEWDECL into OLDDECL.
- But preserve OLDDECL's DECL_UID. */
+ But preserve OLDDECL's DECL_UID and C_DECL_INVISIBLE. */
{
unsigned olddecl_uid = DECL_UID (olddecl);
+ unsigned olddecl_invisible = C_DECL_INVISIBLE (olddecl);
memcpy ((char *) olddecl + sizeof (struct tree_common),
(char *) newdecl + sizeof (struct tree_common),
sizeof (struct tree_decl) - sizeof (struct tree_common));
DECL_UID (olddecl) = olddecl_uid;
+ C_DECL_INVISIBLE (olddecl) = olddecl_invisible;
}
/* If OLDDECL had its DECL_RTL instantiated, re-invoke make_decl_rtl
@@ -1547,24 +1505,18 @@ merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype,
if appropriate.
If safely possible, alter OLDDECL to look like NEWDECL, and return
- true. Otherwise, return false.
-
- When DIFFERENT_BINDING_LEVEL is true, NEWDECL is an external
- declaration, and OLDDECL is in an outer scope and should thus not
- be changed. */
+ true. Otherwise, return false. */
static bool
-duplicate_decls (tree newdecl, tree olddecl,
- bool different_binding_level, bool different_tu)
+duplicate_decls (tree newdecl, tree olddecl)
{
tree newtype, oldtype;
if (!diagnose_mismatched_decls (newdecl, olddecl, &newtype, &oldtype))
return false;
- merge_decls (newdecl, olddecl, newtype, oldtype,
- different_binding_level, different_tu);
- return !different_binding_level;
+ merge_decls (newdecl, olddecl, newtype, oldtype);
+ return true;
}
@@ -1607,8 +1559,6 @@ record_external_decl (tree decl)
static void
warn_if_shadowing (tree x, tree old)
{
- const char *name;
-
/* Nothing to shadow? */
if (old == 0
/* Shadow warnings not wanted? */
@@ -1622,16 +1572,19 @@ warn_if_shadowing (tree x, tree old)
It would be nice to avoid warning in any function
declarator in a declaration, as opposed to a definition,
but there is no way to tell it's not a definition. */
- || (TREE_CODE (x) == PARM_DECL && current_scope->outer->parm_flag))
+ || (TREE_CODE (x) == PARM_DECL && current_scope->outer->parm_flag)
+ /* Shadow warnings only apply to local variables and parameters. */
+ || (TREE_CODE (x) != PARM_DECL && DECL_FILE_SCOPE_P (x)))
return;
- name = IDENTIFIER_POINTER (DECL_NAME (x));
if (TREE_CODE (old) == PARM_DECL)
- shadow_warning (SW_PARAM, name, old);
+ warning ("%Jdeclaration of '%D' shadows a parameter", x, x);
else if (DECL_FILE_SCOPE_P (old))
- shadow_warning (SW_GLOBAL, name, old);
+ warning ("%Jdeclaration of '%D' shadows a global declaration", x, x);
else
- shadow_warning (SW_LOCAL, name, old);
+ warning ("%Jdeclaration of '%D' shadows a previous local", x, x);
+
+ warning ("%Jshadowed declaration is here", old);
}
@@ -1745,7 +1698,7 @@ pushdecl (tree x)
IDENTIFIER_POINTER (name));
old = lookup_name_current_level (name);
- if (old && duplicate_decls (x, old, 0, false))
+ if (old && duplicate_decls (x, old))
{
/* For PARM_DECLs, old may be a forward declaration.
If so, we want to remove it from its old location
@@ -1773,8 +1726,7 @@ pushdecl (tree x)
tree ext = any_external_decl (name);
if (ext)
{
- if (duplicate_decls (x, ext, scope != global_scope,
- false))
+ if (duplicate_decls (x, ext))
x = copy_node (ext);
}
else
@@ -1789,13 +1741,15 @@ pushdecl (tree x)
scope ends. Take care not to do this if we are replacing an
older decl in the same scope (i.e. duplicate_decls returned
false, above). */
- if (scope != global_scope
- && IDENTIFIER_SYMBOL_VALUE (name)
- && IDENTIFIER_SYMBOL_VALUE (name) != old)
+ if (scope != global_scope)
{
- warn_if_shadowing (x, IDENTIFIER_SYMBOL_VALUE (name));
- scope->shadowed = tree_cons (name, IDENTIFIER_SYMBOL_VALUE (name),
- scope->shadowed);
+ tree inherited_decl = lookup_name (name);
+ if (inherited_decl && inherited_decl != old)
+ {
+ warn_if_shadowing (x, inherited_decl);
+ scope->shadowed = tree_cons (name, inherited_decl,
+ scope->shadowed);
+ }
}
/* Install the new declaration in the requested scope. */
@@ -3426,7 +3380,7 @@ grokdeclarator (tree declarator, tree declspecs,
{
if (i == RID_CONST || i == RID_VOLATILE || i == RID_RESTRICT)
{
- if (!flag_isoc99)
+ if (pedantic && !flag_isoc99)
pedwarn ("duplicate `%s'", IDENTIFIER_POINTER (id));
}
else
@@ -3683,12 +3637,15 @@ grokdeclarator (tree declarator, tree declspecs,
volatilep
= !! (specbits & 1 << (int) RID_VOLATILE) + TYPE_VOLATILE (element_type);
inlinep = !! (specbits & (1 << (int) RID_INLINE));
- if (constp > 1 && ! flag_isoc99)
- pedwarn ("duplicate `const'");
- if (restrictp > 1 && ! flag_isoc99)
- pedwarn ("duplicate `restrict'");
- if (volatilep > 1 && ! flag_isoc99)
- pedwarn ("duplicate `volatile'");
+ if (pedantic && !flag_isoc99)
+ {
+ if (constp > 1)
+ pedwarn ("duplicate `const'");
+ if (restrictp > 1)
+ pedwarn ("duplicate `restrict'");
+ if (volatilep > 1)
+ pedwarn ("duplicate `volatile'");
+ }
if (! flag_gen_aux_info && (TYPE_QUALS (type)))
type = TYPE_MAIN_VARIANT (type);
type_quals = ((constp ? TYPE_QUAL_CONST : 0)
@@ -4141,12 +4098,15 @@ grokdeclarator (tree declarator, tree declspecs,
if (erred)
error ("invalid type modifier within pointer declarator");
- if (constp > 1 && ! flag_isoc99)
- pedwarn ("duplicate `const'");
- if (volatilep > 1 && ! flag_isoc99)
- pedwarn ("duplicate `volatile'");
- if (restrictp > 1 && ! flag_isoc99)
- pedwarn ("duplicate `restrict'");
+ if (pedantic && !flag_isoc99)
+ {
+ if (constp > 1)
+ pedwarn ("duplicate `const'");
+ if (volatilep > 1)
+ pedwarn ("duplicate `volatile'");
+ if (restrictp > 1)
+ pedwarn ("duplicate `restrict'");
+ }
type_quals = ((constp ? TYPE_QUAL_CONST : 0)
| (restrictp ? TYPE_QUAL_RESTRICT : 0)
@@ -4458,7 +4418,7 @@ grokdeclarator (tree declarator, tree declspecs,
/* It is invalid to create an `extern' declaration for a
variable if there is a global declaration that is
- `static'. */
+ `static' and the global declaration is not visible. */
if (extern_ref && current_scope != global_scope)
{
tree global_decl;
@@ -4466,6 +4426,7 @@ grokdeclarator (tree declarator, tree declspecs,
global_decl = identifier_global_value (declarator);
if (global_decl
&& TREE_CODE (global_decl) == VAR_DECL
+ && lookup_name (declarator) != global_decl
&& !TREE_PUBLIC (global_decl))
error ("variable previously declared `static' redeclared "
"`extern'");
@@ -5050,11 +5011,20 @@ finish_struct (tree t, tree fieldlist, tree attributes)
&& TYPE_MAX_VALUE (TYPE_DOMAIN (TREE_TYPE (x))) == NULL_TREE)
{
if (TREE_CODE (t) == UNION_TYPE)
- error ("%Jflexible array member in union", x);
+ {
+ error ("%Jflexible array member in union", x);
+ TREE_TYPE (x) = error_mark_node;
+ }
else if (TREE_CHAIN (x) != NULL_TREE)
- error ("%Jflexible array member not at end of struct", x);
+ {
+ error ("%Jflexible array member not at end of struct", x);
+ TREE_TYPE (x) = error_mark_node;
+ }
else if (! saw_named_field)
- error ("%Jflexible array member in otherwise empty struct", x);
+ {
+ error ("%Jflexible array member in otherwise empty struct", x);
+ TREE_TYPE (x) = error_mark_node;
+ }
}
if (pedantic && TREE_CODE (t) == RECORD_TYPE
@@ -6606,7 +6576,7 @@ merge_translation_unit_decls (void)
/* Print any appropriate error messages, and partially merge
the decls. */
- (void) duplicate_decls (decl, global_decl, true, true);
+ (void) duplicate_decls (decl, global_decl);
}
htab_delete (link_hash_table);
diff --git a/gcc/c-lex.c b/gcc/c-lex.c
index 5546fc9ddd1..aba571fab9a 100644
--- a/gcc/c-lex.c
+++ b/gcc/c-lex.c
@@ -1,6 +1,6 @@
/* Mainly the interface between cpplib and the C front ends.
Copyright (C) 1987, 1988, 1989, 1992, 1994, 1995, 1996, 1997
- 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -69,7 +69,6 @@ static tree lex_charconst (const cpp_token *);
static void update_header_times (const char *);
static int dump_one_header (splay_tree_node, void *);
static void cb_line_change (cpp_reader *, const cpp_token *, int);
-static void cb_dir_change (cpp_reader *, const char *);
static void cb_ident (cpp_reader *, unsigned int, const cpp_string *);
static void cb_def_pragma (cpp_reader *, unsigned int);
static void cb_define (cpp_reader *, unsigned int, cpp_hashnode *);
@@ -96,7 +95,6 @@ init_c_lex (void)
cb = cpp_get_callbacks (parse_in);
cb->line_change = cb_line_change;
- cb->dir_change = cb_dir_change;
cb->ident = cb_ident;
cb->def_pragma = cb_def_pragma;
cb->valid_pch = c_common_valid_pch;
@@ -202,13 +200,6 @@ cb_line_change (cpp_reader *pfile ATTRIBUTE_UNUSED, const cpp_token *token,
input_line = SOURCE_LINE (map, token->line);
}
-static void
-cb_dir_change (cpp_reader *pfile ATTRIBUTE_UNUSED, const char *dir)
-{
- if (! set_src_pwd (dir))
- warning ("too late for # directive to set debug directory");
-}
-
void
fe_file_change (const struct line_map *new_map)
{
@@ -222,9 +213,7 @@ fe_file_change (const struct line_map *new_map)
{
/* Don't stack the main buffer on the input stack;
we already did in compile_file. */
- if (map == NULL)
- main_input_filename = new_map->to_file;
- else
+ if (map != NULL)
{
int included_at = SOURCE_LINE (new_map - 1, new_map->from_line - 1);
@@ -324,7 +313,7 @@ get_nonpadding_token (void)
}
int
-c_lex (tree *value)
+c_lex_with_flags (tree *value, unsigned char *cpp_flags)
{
const cpp_token *tok;
location_t atloc;
@@ -436,9 +425,17 @@ c_lex (tree *value)
c_common_no_more_pch ();
}
+ if (cpp_flags)
+ *cpp_flags = tok->flags;
return tok->type;
}
+int
+c_lex (tree *value)
+{
+ return c_lex_with_flags (value, NULL);
+}
+
/* Returns the narrowest C-visible unsigned type, starting with the
minimum specified by FLAGS, that can fit VALUE, or itk_none if
there isn't one. */
diff --git a/gcc/c-objc-common.c b/gcc/c-objc-common.c
index 5a57aa46065..fe0c0d5b933 100644
--- a/gcc/c-objc-common.c
+++ b/gcc/c-objc-common.c
@@ -80,7 +80,7 @@ c_cannot_inline_tree_fn (tree *fnp)
{
if (do_warning)
warning ("%Jfunction '%F' can never be inlined because it "
- "is supressed using -fno-inline", fn, fn);
+ "is suppressed using -fno-inline", fn, fn);
goto cannot_inline;
}
diff --git a/gcc/c-opts.c b/gcc/c-opts.c
index 59bce76607b..93637a2f2a8 100644
--- a/gcc/c-opts.c
+++ b/gcc/c-opts.c
@@ -1,5 +1,5 @@
/* C/ObjC/C++ command line option handling.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Neil Booth.
This file is part of GCC.
@@ -108,7 +108,8 @@ static void sanitize_cpp_opts (void);
static void add_prefixed_path (const char *, size_t);
static void push_command_line_include (void);
static void cb_file_change (cpp_reader *, const struct line_map *);
-static bool finish_options (const char *);
+static void cb_dir_change (cpp_reader *, const char *);
+static void finish_options (void);
#ifndef STDC_0_IN_SYSTEM_HEADERS
#define STDC_0_IN_SYSTEM_HEADERS 0
@@ -691,10 +692,6 @@ c_common_handle_option (size_t scode, const char *arg, int value)
warning ("switch \"%s\" is no longer supported", option->opt_text);
break;
- case OPT_fabi_version_:
- flag_abi_version = value;
- break;
-
case OPT_faccess_control:
flag_access_control = value;
break;
@@ -904,6 +901,10 @@ c_common_handle_option (size_t scode, const char *arg, int value)
cpp_opts->wide_charset = arg;
break;
+ case OPT_finput_charset_:
+ cpp_opts->input_charset = arg;
+ break;
+
case OPT_ftemplate_depth_:
max_tinst_depth = value;
break;
@@ -1049,8 +1050,10 @@ c_common_handle_option (size_t scode, const char *arg, int value)
/* Post-switch processing. */
bool
-c_common_post_options (const char **pfilename ATTRIBUTE_UNUSED)
+c_common_post_options (const char **pfilename)
{
+ struct cpp_callbacks *cb;
+
/* Canonicalize the input and output filenames. */
if (in_fnames == NULL)
{
@@ -1077,7 +1080,12 @@ c_common_post_options (const char **pfilename ATTRIBUTE_UNUSED)
/* Use tree inlining if possible. Function instrumentation is only
done in the RTL level, so we disable tree inlining. */
- if (! flag_instrument_function_entry_exit)
+ if (flag_instrument_function_entry_exit)
+ {
+ flag_no_inline = 1;
+ flag_really_no_inline = 1;
+ }
+ else
{
if (!flag_no_inline)
flag_no_inline = 1;
@@ -1138,7 +1146,9 @@ c_common_post_options (const char **pfilename ATTRIBUTE_UNUSED)
input_line = 0;
}
- cpp_get_callbacks (parse_in)->file_change = cb_file_change;
+ cb = cpp_get_callbacks (parse_in);
+ cb->file_change = cb_file_change;
+ cb->dir_change = cb_dir_change;
cpp_post_options (parse_in);
saved_lineno = input_line;
@@ -1148,6 +1158,15 @@ c_common_post_options (const char **pfilename ATTRIBUTE_UNUSED)
immediately. */
errorcount += cpp_errors (parse_in);
+ *pfilename = this_input_filename
+ = cpp_read_main_file (parse_in, in_fnames[0]);
+ if (this_input_filename == NULL)
+ return true;
+
+ if (flag_working_directory
+ && flag_preprocess_only && ! flag_no_line_commands)
+ pp_dir_change (parse_in, get_src_pwd ());
+
return flag_preprocess_only;
}
@@ -1172,8 +1191,8 @@ c_common_init (void)
if (flag_preprocess_only)
{
- if (finish_options (in_fnames[0]))
- preprocess_file (parse_in);
+ finish_options ();
+ preprocess_file (parse_in);
return false;
}
@@ -1207,10 +1226,12 @@ c_common_parse_file (int set_yydebug ATTRIBUTE_UNUSED)
/* Reset cpplib's macros and start a new file. */
cpp_undef_all (parse_in);
+ main_input_filename = this_input_filename
+ = cpp_read_main_file (parse_in, in_fnames[file_index]);
+ if (this_input_filename == NULL)
+ break;
}
-
- if (! finish_options(in_fnames[file_index]))
- break;
+ finish_options ();
if (file_index == 0)
pch_init();
c_parse_file ();
@@ -1218,7 +1239,6 @@ c_common_parse_file (int set_yydebug ATTRIBUTE_UNUSED)
file_index++;
} while (file_index < num_in_fnames);
- free_parser_stacks ();
finish_file ();
}
@@ -1351,8 +1371,6 @@ sanitize_cpp_opts (void)
actually output the current directory? */
if (flag_working_directory == -1)
flag_working_directory = (debug_info_level != DINFO_LEVEL_NONE);
- cpp_opts->working_directory
- = flag_preprocess_only && flag_working_directory;
}
/* Add include path with a prefix at the front of its name. */
@@ -1375,21 +1393,15 @@ add_prefixed_path (const char *suffix, size_t chain)
add_path (path, chain, 0);
}
-/* Handle -D, -U, -A, -imacros, and the first -include.
- TIF is the input file to which we will return after processing all
- the includes. Returns true on success. */
-static bool
-finish_options (const char *tif)
+/* Handle -D, -U, -A, -imacros, and the first -include. */
+static void
+finish_options (void)
{
- this_input_filename = tif;
- if (! cpp_find_main_file (parse_in, this_input_filename))
- return false;
-
if (!cpp_opts->preprocessed)
{
size_t i;
- cpp_change_file (parse_in, LC_ENTER, _("<built-in>"));
+ cpp_change_file (parse_in, LC_RENAME, _("<built-in>"));
cpp_init_builtins (parse_in, flag_hosted);
c_cpp_builtins (parse_in);
@@ -1439,7 +1451,6 @@ finish_options (const char *tif)
include_cursor = 0;
push_command_line_include ();
- return true;
}
/* Give CPP the next file given by -include, if any. */
@@ -1458,12 +1469,16 @@ push_command_line_include (void)
if (include_cursor == deferred_count)
{
include_cursor++;
- /* Restore the line map from <command line>. */
- if (! cpp_opts->preprocessed)
- cpp_change_file (parse_in, LC_LEAVE, NULL);
/* -Wunused-macros should only warn about macros defined hereafter. */
cpp_opts->warn_unused_macros = warn_unused_macros;
- cpp_push_main_file (parse_in);
+ /* Restore the line map from <command line>. */
+ if (! cpp_opts->preprocessed)
+ cpp_change_file (parse_in, LC_RENAME, main_input_filename);
+
+ /* Set this here so the client can change the option if it wishes,
+ and after stacking the main file so we don't trace the main file. */
+ cpp_get_line_maps (parse_in)->trace_includes
+ = cpp_opts->print_include_names;
}
}
@@ -1481,6 +1496,13 @@ cb_file_change (cpp_reader *pfile ATTRIBUTE_UNUSED,
push_command_line_include ();
}
+void
+cb_dir_change (cpp_reader *pfile ATTRIBUTE_UNUSED, const char *dir)
+{
+ if (! set_src_pwd (dir))
+ warning ("too late for # directive to set debug directory");
+}
+
/* Set the C 89 standard (with 1994 amendments if C94, without GNU
extensions if ISO). There is no concept of gnu94. */
static void
diff --git a/gcc/c-parse.in b/gcc/c-parse.in
index 4cdbfed8b0c..f4d4f417189 100644
--- a/gcc/c-parse.in
+++ b/gcc/c-parse.in
@@ -204,7 +204,7 @@ do { \
%type <ttype> init maybeasm
%type <ttype> asm_operands nonnull_asm_operands asm_operand asm_clobbers
%type <ttype> maybe_attribute attributes attribute attribute_list attrib
-%type <ttype> any_word extension
+%type <ttype> any_word
%type <ttype> compstmt compstmt_start compstmt_nostart compstmt_primary_start
%type <ttype> do_stmt_start poplevel stmt label
@@ -230,7 +230,7 @@ do { \
%type <ttype> parmlist_or_identifiers parmlist_or_identifiers_1
%type <ttype> identifiers_or_typenames
-%type <itype> setspecs setspecs_fp
+%type <itype> setspecs setspecs_fp extension
%type <location> save_location
@@ -295,15 +295,14 @@ static GTY(()) tree declspec_stack;
/* For __extension__, save/restore the warning flags which are
controlled by __extension__. */
-#define SAVE_EXT_FLAGS() \
- size_int (pedantic \
- | (warn_pointer_arith << 1) \
- | (warn_traditional << 2) \
- | (flag_iso << 3))
+#define SAVE_EXT_FLAGS() \
+ (pedantic \
+ | (warn_pointer_arith << 1) \
+ | (warn_traditional << 2) \
+ | (flag_iso << 3))
-#define RESTORE_EXT_FLAGS(tval) \
+#define RESTORE_EXT_FLAGS(val) \
do { \
- int val = tree_low_cst (tval, 0); \
pedantic = val & 1; \
warn_pointer_arith = (val >> 1) & 1; \
warn_traditional = (val >> 2) & 1; \
@@ -653,7 +652,7 @@ primary:
finish_init ();
if (pedantic && ! flag_isoc99)
- pedwarn ("ISO C89 forbids compound literals");
+ pedwarn ("ISO C90 forbids compound literals");
$$ = build_compound_literal (type, constructor);
}
| '(' expr ')'
@@ -1516,7 +1515,7 @@ initlist1:
initelt:
designator_list '=' initval
{ if (pedantic && ! flag_isoc99)
- pedwarn ("ISO C89 forbids specifying subobject to initialize"); }
+ pedwarn ("ISO C90 forbids specifying subobject to initialize"); }
| designator initval
{ if (pedantic)
pedwarn ("obsolete use of designated initializer without `='"); }
@@ -2504,10 +2503,9 @@ label: CASE expr_no_commas ':'
maybe_type_qual:
/* empty */
- { emit_line_note (input_location);
- $$ = NULL_TREE; }
+ { $$ = NULL_TREE; }
| TYPE_QUAL
- { emit_line_note (input_location); }
+ { }
;
xexpr:
@@ -3765,13 +3763,6 @@ yyprint (FILE *file, int yychar, YYSTYPE yyl)
/* This is not the ideal place to put these, but we have to get them out
of c-lex.c because cp/lex.c has its own versions. */
-/* Free malloced parser stacks if necessary. */
-
-void
-free_parser_stacks (void)
-{
-}
-
/* Parse the file. */
void
c_parse_file (void)
diff --git a/gcc/c-pch.c b/gcc/c-pch.c
index 157061f9177..8e4b6024359 100644
--- a/gcc/c-pch.c
+++ b/gcc/c-pch.c
@@ -44,7 +44,11 @@ Boston, MA 02111-1307, USA. */
the version number in get_ident().
There are a bunch of fields named *_length; those are lengths of data that
- follows this structure in the same order as the fields in the structure. */
+ follows this structure in the same order as the fields in the structure.
+
+ The flags_info field is used to verify that certain flags settings that
+ have to be the same during the compilation of the PCH and a compilation
+ using the PCH are indeed the same. */
struct c_pch_validity
{
@@ -52,10 +56,15 @@ struct c_pch_validity
unsigned char target_machine_length;
unsigned char version_length;
unsigned char debug_info_type;
+ unsigned int flags_info;
void (*pch_init) (void);
size_t target_data_length;
};
+/* If -funit-at-a-time is set, we require that it was also set during the
+ compilation of the PCH we may be using. */
+#define FLAG_UNIT_AT_A_TIME_SET 1 << 0
+
struct c_pch_header
{
unsigned long asm_size;
@@ -103,10 +112,14 @@ pch_init (void)
struct c_pch_validity v;
void *target_validity;
static const char partial_pch[IDENT_LENGTH] = "gpcWrite";
+ unsigned int current_flags_info = 0;
if (! pch_file)
return;
-
+
+ if (flag_unit_at_a_time)
+ current_flags_info |= FLAG_UNIT_AT_A_TIME_SET;
+
f = fopen (pch_file, "w+b");
if (f == NULL)
fatal_error ("can't create precompiled header %s: %m", pch_file);
@@ -120,6 +133,7 @@ pch_init (void)
v.target_machine_length = strlen (target_machine);
v.version_length = strlen (version_string);
v.debug_info_type = write_symbols;
+ v.flags_info = current_flags_info;
v.pch_init = &pch_init;
target_validity = targetm.get_pch_validity (&v.target_data_length);
@@ -212,9 +226,14 @@ c_common_valid_pch (cpp_reader *pfile, const char *name, int fd)
int strings_length;
const char *pch_ident;
struct c_pch_validity v;
+ unsigned int current_flags_info = 0;
+
+ if (flag_unit_at_a_time)
+ current_flags_info |= FLAG_UNIT_AT_A_TIME_SET;
/* Perform a quick test of whether this is a valid
- precompiled header for the current language. */
+ precompiled header for the current language
+ and with the current flag settings. */
sizeread = read (fd, ident, IDENT_LENGTH);
if (sizeread == -1)
@@ -287,6 +306,14 @@ c_common_valid_pch (cpp_reader *pfile, const char *name, int fd)
version_string);
return 2;
}
+ if (v.flags_info != current_flags_info)
+ {
+ if (cpp_get_options (pfile)->warn_invalid_pch)
+ cpp_error (pfile, CPP_DL_WARNING,
+ "%s: created using different flags",
+ name);
+ return 2;
+ }
/* The allowable debug info combinations are that either the PCH file
was built with the same as is being used now, or the PCH file was
diff --git a/gcc/c-ppoutput.c b/gcc/c-ppoutput.c
index 22e595f9541..e97c9bc8ff7 100644
--- a/gcc/c-ppoutput.c
+++ b/gcc/c-ppoutput.c
@@ -1,5 +1,5 @@
/* Preprocess only, using cpplib.
- Copyright (C) 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Written by Per Bothner, 1994-95.
@@ -334,6 +334,22 @@ cb_include (cpp_reader *pfile ATTRIBUTE_UNUSED, fileline line,
print.line++;
}
+/* Callback called when -fworking-director and -E to emit working
+ diretory in cpp output file. */
+
+void
+pp_dir_change (cpp_reader *pfile ATTRIBUTE_UNUSED, const char *dir)
+{
+ size_t to_file_len = strlen (dir);
+ unsigned char *to_file_quoted = alloca (to_file_len * 4 + 1);
+ unsigned char *p;
+
+ /* cpp_quote_string does not nul-terminate, so we have to do it ourselves. */
+ p = cpp_quote_string (to_file_quoted, (unsigned char *) dir, to_file_len);
+ *p = '\0';
+ fprintf (print.outf, "# 1 \"%s//\"\n", to_file_quoted);
+}
+
/* The file name, line number or system header flags have changed, as
described in MAP. From this point on, the old print.map might be
pointing to freed memory, and so must not be dereferenced. */
diff --git a/gcc/c-pragma.c b/gcc/c-pragma.c
index 00560459a47..c9e15056e78 100644
--- a/gcc/c-pragma.c
+++ b/gcc/c-pragma.c
@@ -1,5 +1,5 @@
/* Handle #pragma, system V.4 style. Supports #pragma weak and #pragma pack.
- Copyright (C) 1992, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1992, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/c-pragma.h b/gcc/c-pragma.h
index cea410b1580..a1469db1742 100644
--- a/gcc/c-pragma.h
+++ b/gcc/c-pragma.h
@@ -1,5 +1,5 @@
/* Pragma related interfaces.
- Copyright (C) 1995, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1995, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -55,5 +55,6 @@ extern tree maybe_apply_renaming_pragma (tree, tree);
extern void add_to_renaming_pragma_list (tree, tree);
extern int c_lex (tree *);
+extern int c_lex_with_flags (tree *, unsigned char *);
#endif /* GCC_C_PRAGMA_H */
diff --git a/gcc/c-pretty-print.c b/gcc/c-pretty-print.c
index 2083db1a6ed..bcbfd793ad3 100644
--- a/gcc/c-pretty-print.c
+++ b/gcc/c-pretty-print.c
@@ -1,5 +1,5 @@
/* Subroutines common to both C and C++ pretty-printers.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Gabriel Dos Reis <gdr@integrable-solutions.net>
This file is part of GCC.
diff --git a/gcc/c-semantics.c b/gcc/c-semantics.c
index f3c61b42c35..38c4021d6cf 100644
--- a/gcc/c-semantics.c
+++ b/gcc/c-semantics.c
@@ -1,7 +1,7 @@
/* This file contains the definitions and documentation for the common
tree codes used in the GNU C and C++ compilers (see c-common.def
for the standard codes).
- Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Written by Benjamin Chelf (chelf@codesourcery.com).
This file is part of GCC.
@@ -430,7 +430,6 @@ genrtl_while_stmt (tree t)
{
tree cond = WHILE_COND (t);
- emit_nop ();
emit_line_note (input_location);
expand_start_loop (1);
genrtl_do_pushlevel ();
@@ -467,7 +466,6 @@ genrtl_do_stmt_1 (tree cond, tree body)
}
else if (integer_nonzerop (cond))
{
- emit_nop ();
emit_line_note (input_location);
expand_start_loop (1);
@@ -478,7 +476,6 @@ genrtl_do_stmt_1 (tree cond, tree body)
}
else
{
- emit_nop ();
emit_line_note (input_location);
expand_start_loop_continue_elsewhere (1);
@@ -542,7 +539,6 @@ genrtl_for_stmt (tree t)
expand_stmt (FOR_INIT_STMT (t));
/* Expand the initialization. */
- emit_nop ();
emit_line_note (input_location);
if (FOR_EXPR (t))
expand_start_loop_continue_elsewhere (1);
diff --git a/gcc/c-tree.h b/gcc/c-tree.h
index 4849ab2dd55..0500f81a3d8 100644
--- a/gcc/c-tree.h
+++ b/gcc/c-tree.h
@@ -268,7 +268,7 @@ extern tree build_array_ref (tree, tree);
extern tree build_external_ref (tree, int);
extern tree parser_build_binary_op (enum tree_code, tree, tree);
extern int c_tree_expr_nonnegative_p (tree);
-extern void readonly_warning (tree, const char *);
+extern void readonly_error (tree, const char *);
extern tree build_conditional_expr (tree, tree, tree);
extern tree build_compound_expr (tree);
extern tree c_cast_expr (tree, tree);
diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c
index e8bec8f9b69..77b428c061c 100644
--- a/gcc/c-typeck.c
+++ b/gcc/c-typeck.c
@@ -674,10 +674,14 @@ tagged_types_tu_compatible_p (tree t1, tree t2, int flags)
is harder than it looks because this may be a typedef, so we have
to go look at the original type. It may even be a typedef of a
typedef... */
- while (TYPE_NAME (t1) && TREE_CODE (TYPE_NAME (t1)) == TYPE_DECL)
+ while (TYPE_NAME (t1)
+ && TREE_CODE (TYPE_NAME (t1)) == TYPE_DECL
+ && DECL_ORIGINAL_TYPE (TYPE_NAME (t1)))
t1 = DECL_ORIGINAL_TYPE (TYPE_NAME (t1));
- while (TYPE_NAME (t2) && TREE_CODE (TYPE_NAME (t2)) == TYPE_DECL)
+ while (TYPE_NAME (t2)
+ && TREE_CODE (TYPE_NAME (t2)) == TYPE_DECL
+ && DECL_ORIGINAL_TYPE (TYPE_NAME (t2)))
t2 = DECL_ORIGINAL_TYPE (TYPE_NAME (t2));
/* C90 didn't have the requirement that the two tags be the same. */
@@ -1710,6 +1714,10 @@ build_function_call (tree function, tree params)
executions of the program must execute the code. */
warning ("function called through a non-compatible type");
+ /* We can, however, treat "undefined" any way we please.
+ Call abort to encourage the user to fix the program. */
+ inform ("if this code is reached, the program will abort");
+
if (VOID_TYPE_P (return_type))
return trap;
else
@@ -2420,10 +2428,10 @@ build_unary_op (enum tree_code code, tree xarg, int flag)
/* Report a read-only lvalue. */
if (TREE_READONLY (arg))
- readonly_warning (arg,
- ((code == PREINCREMENT_EXPR
- || code == POSTINCREMENT_EXPR)
- ? "increment" : "decrement"));
+ readonly_error (arg,
+ ((code == PREINCREMENT_EXPR
+ || code == POSTINCREMENT_EXPR)
+ ? "increment" : "decrement"));
if (TREE_CODE (TREE_TYPE (arg)) == BOOLEAN_TYPE)
val = boolean_increment (code, arg);
@@ -2645,21 +2653,21 @@ pedantic_lvalue_warning (enum tree_code code)
/* Warn about storing in something that is `const'. */
void
-readonly_warning (tree arg, const char *msgid)
+readonly_error (tree arg, const char *msgid)
{
if (TREE_CODE (arg) == COMPONENT_REF)
{
if (TYPE_READONLY (TREE_TYPE (TREE_OPERAND (arg, 0))))
- readonly_warning (TREE_OPERAND (arg, 0), msgid);
+ readonly_error (TREE_OPERAND (arg, 0), msgid);
else
- pedwarn ("%s of read-only member `%s'", _(msgid),
- IDENTIFIER_POINTER (DECL_NAME (TREE_OPERAND (arg, 1))));
+ error ("%s of read-only member `%s'", _(msgid),
+ IDENTIFIER_POINTER (DECL_NAME (TREE_OPERAND (arg, 1))));
}
else if (TREE_CODE (arg) == VAR_DECL)
- pedwarn ("%s of read-only variable `%s'", _(msgid),
- IDENTIFIER_POINTER (DECL_NAME (arg)));
+ error ("%s of read-only variable `%s'", _(msgid),
+ IDENTIFIER_POINTER (DECL_NAME (arg)));
else
- pedwarn ("%s of read-only location", _(msgid));
+ error ("%s of read-only location", _(msgid));
}
/* Mark EXP saying that we need to be able to take the
@@ -2703,7 +2711,7 @@ c_mark_addressable (tree exp)
if (DECL_REGISTER (x) && !TREE_ADDRESSABLE (x)
&& DECL_NONLOCAL (x))
{
- if (TREE_PUBLIC (x))
+ if (TREE_PUBLIC (x) || TREE_STATIC (x) || DECL_EXTERNAL (x))
{
error ("global register variable `%s' used in nested function",
IDENTIFIER_POINTER (DECL_NAME (x)));
@@ -2714,7 +2722,7 @@ c_mark_addressable (tree exp)
}
else if (DECL_REGISTER (x) && !TREE_ADDRESSABLE (x))
{
- if (TREE_PUBLIC (x))
+ if (TREE_PUBLIC (x) || TREE_STATIC (x) || DECL_EXTERNAL (x))
{
error ("address of global register variable `%s' requested",
IDENTIFIER_POINTER (DECL_NAME (x)));
@@ -3309,7 +3317,7 @@ build_modify_expr (tree lhs, enum tree_code modifycode, tree rhs)
|| ((TREE_CODE (lhstype) == RECORD_TYPE
|| TREE_CODE (lhstype) == UNION_TYPE)
&& C_TYPE_FIELDS_READONLY (lhstype)))
- readonly_warning (lhs, "assignment");
+ readonly_error (lhs, "assignment");
/* If storing into a structure or union member,
it has probably been given type `int'.
@@ -4304,6 +4312,9 @@ static int require_constant_elements;
such as (struct foo) {...}. */
static tree constructor_decl;
+/* start_init saves the ASMSPEC arg here for really_start_incremental_init. */
+static const char *constructor_asmspec;
+
/* Nonzero if this is an initializer for a top-level decl. */
static int constructor_top_level;
@@ -4375,6 +4386,7 @@ struct initializer_stack
{
struct initializer_stack *next;
tree decl;
+ const char *asmspec;
struct constructor_stack *constructor_stack;
struct constructor_range_stack *constructor_range_stack;
tree elements;
@@ -4391,12 +4403,17 @@ struct initializer_stack *initializer_stack;
/* Prepare to parse and output the initializer for variable DECL. */
void
-start_init (tree decl, tree asmspec_tree ATTRIBUTE_UNUSED, int top_level)
+start_init (tree decl, tree asmspec_tree, int top_level)
{
const char *locus;
struct initializer_stack *p = xmalloc (sizeof (struct initializer_stack));
+ const char *asmspec = 0;
+
+ if (asmspec_tree)
+ asmspec = TREE_STRING_POINTER (asmspec_tree);
p->decl = constructor_decl;
+ p->asmspec = constructor_asmspec;
p->require_constant_value = require_constant_value;
p->require_constant_elements = require_constant_elements;
p->constructor_stack = constructor_stack;
@@ -4410,6 +4427,7 @@ start_init (tree decl, tree asmspec_tree ATTRIBUTE_UNUSED, int top_level)
initializer_stack = p;
constructor_decl = decl;
+ constructor_asmspec = asmspec;
constructor_designated = 0;
constructor_top_level = top_level;
@@ -4466,6 +4484,7 @@ finish_init (void)
free (spelling_base);
constructor_decl = p->decl;
+ constructor_asmspec = p->asmspec;
require_constant_value = p->require_constant_value;
require_constant_elements = p->require_constant_elements;
constructor_stack = p->constructor_stack;
@@ -4800,6 +4819,10 @@ pop_init_level (int implicit)
abort ();
}
+ /* Now output all pending elements. */
+ constructor_incremental = 1;
+ output_pending_init_elements (1);
+
p = constructor_stack;
/* Error for initializing a flexible array member, or a zero-length
@@ -4854,10 +4877,6 @@ pop_init_level (int implicit)
}
}
- /* Now output all pending elements. */
- constructor_incremental = 1;
- output_pending_init_elements (1);
-
/* Pad out the end of the structure. */
if (p->replacement_value)
/* If this closes a superfluous brace pair,
@@ -6322,7 +6341,7 @@ c_expand_asm_operands (tree string, tree outputs, tree inputs,
|| ((TREE_CODE (type) == RECORD_TYPE
|| TREE_CODE (type) == UNION_TYPE)
&& C_TYPE_FIELDS_READONLY (type)))
- readonly_warning (o[i], "modification by `asm'");
+ readonly_error (o[i], "modification by `asm'");
}
}
@@ -6824,11 +6843,9 @@ build_binary_op (enum tree_code code, tree orig_op0, tree orig_op1,
but don't convert the args to int! */
build_type = integer_type_node;
if ((code0 == INTEGER_TYPE || code0 == REAL_TYPE
- || code0 == COMPLEX_TYPE
- || code0 == VECTOR_TYPE)
+ || code0 == COMPLEX_TYPE)
&& (code1 == INTEGER_TYPE || code1 == REAL_TYPE
- || code1 == COMPLEX_TYPE
- || code1 == VECTOR_TYPE))
+ || code1 == COMPLEX_TYPE))
short_compare = 1;
else if (code0 == POINTER_TYPE && code1 == POINTER_TYPE)
{
diff --git a/gcc/c.opt b/gcc/c.opt
index 4f9859f6a7a..2a2ff85b738 100644
--- a/gcc/c.opt
+++ b/gcc/c.opt
@@ -411,9 +411,6 @@ d
C ObjC C++ ObjC++ Joined
; Documented in common.opt. FIXME - what about -dI, -dD, -dN and -dD?
-fabi-version=
-C++ ObjC++ Joined UInteger
-
faccess-control
C++ ObjC++
Enforce class member access control semantics
@@ -482,6 +479,11 @@ fexec-charset=
C ObjC C++ ObjC++ Joined RejectNegative
-fexec-charset=<cset> Convert all strings and character constants to character set <cset>
+finput-charset=
+C ObjC C++ ObjC++ Joined RejectNegative
+-finput-charset=<cset> Specify the default character set for source files.
+
+
fexternal-templates
C++ ObjC++
diff --git a/gcc/calls.c b/gcc/calls.c
index c16bdf10b95..75628095437 100644
--- a/gcc/calls.c
+++ b/gcc/calls.c
@@ -1,6 +1,6 @@
/* Convert function calls to rtl insns, for GNU C compiler.
Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -133,7 +133,8 @@ static int compute_argument_block_size (int, struct args_size *, int);
static void initialize_argument_information (int, struct arg_data *,
struct args_size *, int, tree,
tree, CUMULATIVE_ARGS *, int,
- rtx *, int *, int *, int *);
+ rtx *, int *, int *, int *,
+ bool);
static void compute_argument_addresses (struct arg_data *, rtx, int);
static rtx rtx_for_function_call (tree, tree);
static void load_register_parameters (struct arg_data *, int, rtx *, int,
@@ -1023,7 +1024,10 @@ store_unaligned_arguments_into_pseudos (struct arg_data *args, int num_actuals)
and may be modified by this routine.
OLD_PENDING_ADJ, MUST_PREALLOCATE and FLAGS are pointers to integer
- flags which may may be modified by this routine. */
+ flags which may may be modified by this routine.
+
+ CALL_FROM_THUNK_P is true if this call is the jump from a thunk to
+ the thunked-to function. */
static void
initialize_argument_information (int num_actuals ATTRIBUTE_UNUSED,
@@ -1034,7 +1038,8 @@ initialize_argument_information (int num_actuals ATTRIBUTE_UNUSED,
CUMULATIVE_ARGS *args_so_far,
int reg_parm_stack_space,
rtx *old_stack_level, int *old_pending_adj,
- int *must_preallocate, int *ecf_flags)
+ int *must_preallocate, int *ecf_flags,
+ bool call_from_thunk_p)
{
/* 1 if scanning parms front to back, -1 if scanning back to front. */
int inc;
@@ -1107,7 +1112,7 @@ initialize_argument_information (int num_actuals ATTRIBUTE_UNUSED,
{
/* If we're compiling a thunk, pass through invisible
references instead of making a copy. */
- if (current_function_is_thunk
+ if (call_from_thunk_p
#ifdef FUNCTION_ARG_CALLEE_COPIES
|| (FUNCTION_ARG_CALLEE_COPIES (*args_so_far, TYPE_MODE (type),
type, argpos < n_named_args)
@@ -2075,6 +2080,8 @@ expand_call (tree exp, rtx target, int ignore)
/* Declaration of the function being called,
or 0 if the function is computed (not known by name). */
tree fndecl = 0;
+ /* The type of the function being called. */
+ tree fntype;
rtx insn;
int try_tail_call = 1;
int try_tail_recursion = 1;
@@ -2183,6 +2190,7 @@ expand_call (tree exp, rtx target, int ignore)
fndecl = get_callee_fndecl (exp);
if (fndecl)
{
+ fntype = TREE_TYPE (fndecl);
if (!flag_no_inline
&& fndecl != current_function_decl
&& DECL_INLINE (fndecl)
@@ -2218,15 +2226,15 @@ expand_call (tree exp, rtx target, int ignore)
attributes set in the type. */
else
{
+ fntype = TREE_TYPE (TREE_TYPE (p));
if (ignore
- && lookup_attribute ("warn_unused_result",
- TYPE_ATTRIBUTES (TREE_TYPE (TREE_TYPE (p)))))
+ && lookup_attribute ("warn_unused_result", TYPE_ATTRIBUTES (fntype)))
warning ("ignoring return value of function "
"declared with attribute warn_unused_result");
- flags |= flags_from_decl_or_type (TREE_TYPE (TREE_TYPE (p)));
+ flags |= flags_from_decl_or_type (fntype);
}
- struct_value = targetm.calls.struct_value_rtx (fndecl ? TREE_TYPE (fndecl) : 0, 0);
+ struct_value = targetm.calls.struct_value_rtx (fntype, 0);
/* Warn if this value is an aggregate type,
regardless of which calling convention we are using for it. */
@@ -2352,7 +2360,7 @@ expand_call (tree exp, rtx target, int ignore)
/* Munge the tree to split complex arguments into their imaginary
and real parts. */
- if (SPLIT_COMPLEX_ARGS)
+ if (targetm.calls.split_complex_arg)
{
type_arg_types = split_complex_types (TYPE_ARG_TYPES (funtype));
actparms = split_complex_values (actparms);
@@ -2380,7 +2388,8 @@ expand_call (tree exp, rtx target, int ignore)
|| (ACCUMULATE_OUTGOING_ARGS
&& stack_arg_under_construction
&& structure_value_addr == virtual_outgoing_args_rtx)
- ? copy_addr_to_reg (structure_value_addr)
+ ? copy_addr_to_reg (convert_memory_address
+ (Pmode, structure_value_addr))
: structure_value_addr);
actparms
@@ -2395,14 +2404,6 @@ expand_call (tree exp, rtx target, int ignore)
for (p = actparms, num_actuals = 0; p; p = TREE_CHAIN (p))
num_actuals++;
- /* Start updating where the next arg would go.
-
- On some machines (such as the PA) indirect calls have a different
- calling convention than normal calls. The last argument in
- INIT_CUMULATIVE_ARGS tells the backend if this is an indirect call
- or not. */
- INIT_CUMULATIVE_ARGS (args_so_far, funtype, NULL_RTX, fndecl);
-
/* Compute number of named args.
Normally, don't include the last named arg if anonymous args follow.
We do include the last named arg if
@@ -2434,6 +2435,14 @@ expand_call (tree exp, rtx target, int ignore)
/* If we know nothing, treat all args as named. */
n_named_args = num_actuals;
+ /* Start updating where the next arg would go.
+
+ On some machines (such as the PA) indirect calls have a different
+ calling convention than normal calls. The last argument in
+ INIT_CUMULATIVE_ARGS tells the backend if this is an indirect call
+ or not. */
+ INIT_CUMULATIVE_ARGS (args_so_far, funtype, NULL_RTX, fndecl, n_named_args);
+
/* Make a vector to hold all the information about each arg. */
args = alloca (num_actuals * sizeof (struct arg_data));
memset (args, 0, num_actuals * sizeof (struct arg_data));
@@ -2444,7 +2453,8 @@ expand_call (tree exp, rtx target, int ignore)
n_named_args, actparms, fndecl,
&args_so_far, reg_parm_stack_space,
&old_stack_level, &old_pending_adj,
- &must_preallocate, &flags);
+ &must_preallocate, &flags,
+ CALL_FROM_THUNK_P (exp));
if (args_size.var)
{
@@ -3564,6 +3574,17 @@ split_complex_values (tree values)
{
tree p;
+ /* Before allocating memory, check for the common case of no complex. */
+ for (p = values; p; p = TREE_CHAIN (p))
+ {
+ tree type = TREE_TYPE (TREE_VALUE (p));
+ if (type && TREE_CODE (type) == COMPLEX_TYPE
+ && targetm.calls.split_complex_arg (type))
+ goto found;
+ }
+ return values;
+
+ found:
values = copy_list (values);
for (p = values; p; p = TREE_CHAIN (p))
@@ -3575,7 +3596,8 @@ split_complex_values (tree values)
if (!complex_type)
continue;
- if (TREE_CODE (complex_type) == COMPLEX_TYPE)
+ if (TREE_CODE (complex_type) == COMPLEX_TYPE
+ && targetm.calls.split_complex_arg (complex_type))
{
tree subtype;
tree real, imag, next;
@@ -3606,13 +3628,25 @@ split_complex_types (tree types)
{
tree p;
+ /* Before allocating memory, check for the common case of no complex. */
+ for (p = types; p; p = TREE_CHAIN (p))
+ {
+ tree type = TREE_VALUE (p);
+ if (TREE_CODE (type) == COMPLEX_TYPE
+ && targetm.calls.split_complex_arg (type))
+ goto found;
+ }
+ return types;
+
+ found:
types = copy_list (types);
for (p = types; p; p = TREE_CHAIN (p))
{
tree complex_type = TREE_VALUE (p);
- if (TREE_CODE (complex_type) == COMPLEX_TYPE)
+ if (TREE_CODE (complex_type) == COMPLEX_TYPE
+ && targetm.calls.split_complex_arg (complex_type))
{
tree next, imag;
@@ -3777,7 +3811,7 @@ emit_library_call_value_1 (int retval, rtx orgfun, rtx value,
#ifdef INIT_CUMULATIVE_LIBCALL_ARGS
INIT_CUMULATIVE_LIBCALL_ARGS (args_so_far, outmode, fun);
#else
- INIT_CUMULATIVE_ARGS (args_so_far, NULL_TREE, fun, 0);
+ INIT_CUMULATIVE_ARGS (args_so_far, NULL_TREE, fun, 0, nargs);
#endif
args_size.constant = 0;
diff --git a/gcc/cfg.c b/gcc/cfg.c
index 6ee671675bc..80425853666 100644
--- a/gcc/cfg.c
+++ b/gcc/cfg.c
@@ -1,6 +1,6 @@
/* Control flow graph manipulation code for GNU compiler.
Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/cfganal.c b/gcc/cfganal.c
index 91297e53daa..aa3965cac07 100644
--- a/gcc/cfganal.c
+++ b/gcc/cfganal.c
@@ -333,6 +333,7 @@ flow_call_edges_add (sbitmap blocks)
for (i = 0; i < last_bb; i++)
{
basic_block bb = BASIC_BLOCK (i);
+ rtx libcall_end = NULL_RTX;
rtx insn;
rtx prev_insn;
@@ -350,9 +351,13 @@ flow_call_edges_add (sbitmap blocks)
edge e;
rtx split_at_insn = insn;
+ /* Don't split libcalls. */
+ if (libcall_end)
+ split_at_insn = libcall_end;
+
/* Don't split the block between a call and an insn that should
remain in the same block as the call. */
- if (GET_CODE (insn) == CALL_INSN)
+ else if (GET_CODE (insn) == CALL_INSN)
while (split_at_insn != BB_END (bb)
&& keep_with_call_p (NEXT_INSN (split_at_insn)))
split_at_insn = NEXT_INSN (split_at_insn);
@@ -381,6 +386,14 @@ flow_call_edges_add (sbitmap blocks)
make_edge (bb, EXIT_BLOCK_PTR, EDGE_FAKE);
}
+ /* Watch out for REG_LIBCALL/REG_RETVAL notes so that we know
+ whether we are currently in a libcall or not. Remember that
+ we are scanning backwards! */
+ if (find_reg_note (insn, REG_RETVAL, NULL_RTX))
+ libcall_end = insn;
+ if (find_reg_note (insn, REG_LIBCALL, NULL_RTX))
+ libcall_end = NULL_RTX;
+
if (insn == BB_HEAD (bb))
break;
}
diff --git a/gcc/cfgcleanup.c b/gcc/cfgcleanup.c
index 3da1ea5ae59..06fb9131a0d 100644
--- a/gcc/cfgcleanup.c
+++ b/gcc/cfgcleanup.c
@@ -1,6 +1,6 @@
/* Control flow optimization code for GNU compiler.
Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -48,6 +48,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "params.h"
#include "tm_p.h"
#include "target.h"
+#include "expr.h"
/* cleanup_cfg maintains following flags for each basic block. */
@@ -84,6 +85,7 @@ static bool mark_effect (rtx, bitmap);
static void notice_new_block (basic_block);
static void update_forwarder_flag (basic_block);
static int mentions_nonequal_regs (rtx *, void *);
+static void merge_memattrs (rtx, rtx);
/* Set flags for newly created block. */
@@ -857,6 +859,88 @@ merge_blocks_move (edge e, basic_block b, basic_block c, int mode)
}
+/* Removes the memory attributes of MEM expression
+ if they are not equal. */
+
+void
+merge_memattrs (rtx x, rtx y)
+{
+ int i;
+ int j;
+ enum rtx_code code;
+ const char *fmt;
+
+ if (x == y)
+ return;
+ if (x == 0 || y == 0)
+ return;
+
+ code = GET_CODE (x);
+
+ if (code != GET_CODE (y))
+ return;
+
+ if (GET_MODE (x) != GET_MODE (y))
+ return;
+
+ if (code == MEM && MEM_ATTRS (x) != MEM_ATTRS (y))
+ {
+ if (! MEM_ATTRS (x))
+ MEM_ATTRS (y) = 0;
+ else if (! MEM_ATTRS (y))
+ MEM_ATTRS (x) = 0;
+ else
+ {
+ if (MEM_ALIAS_SET (x) != MEM_ALIAS_SET (y))
+ {
+ set_mem_alias_set (x, 0);
+ set_mem_alias_set (y, 0);
+ }
+
+ if (! mem_expr_equal_p (MEM_EXPR (x), MEM_EXPR (y)))
+ {
+ set_mem_expr (x, 0);
+ set_mem_expr (y, 0);
+ set_mem_offset (x, 0);
+ set_mem_offset (y, 0);
+ }
+ else if (MEM_OFFSET (x) != MEM_OFFSET (y))
+ {
+ set_mem_offset (x, 0);
+ set_mem_offset (y, 0);
+ }
+
+ set_mem_size (x, MAX (MEM_SIZE (x), MEM_SIZE (y)));
+ set_mem_size (y, MEM_SIZE (x));
+
+ set_mem_align (x, MIN (MEM_ALIGN (x), MEM_ALIGN (y)));
+ set_mem_align (y, MEM_ALIGN (x));
+ }
+ }
+
+ fmt = GET_RTX_FORMAT (code);
+ for (i = GET_RTX_LENGTH (code) - 1; i >= 0; i--)
+ {
+ switch (fmt[i])
+ {
+ case 'E':
+ /* Two vectors must have the same length. */
+ if (XVECLEN (x, i) != XVECLEN (y, i))
+ return;
+
+ for (j = 0; j < XVECLEN (x, i); j++)
+ merge_memattrs (XVECEXP (x, i, j), XVECEXP (y, i, j));
+
+ break;
+
+ case 'e':
+ merge_memattrs (XEXP (x, i), XEXP (y, i));
+ }
+ }
+ return;
+}
+
+
/* Return true if I1 and I2 are equivalent and thus can be crossjumped. */
static bool
@@ -1017,6 +1101,8 @@ flow_find_cross_jump (int mode ATTRIBUTE_UNUSED, basic_block bb1,
if (!insns_match_p (mode, i1, i2))
break;
+ merge_memattrs (i1, i2);
+
/* Don't begin a cross-jump with a NOTE insn. */
if (INSN_P (i1))
{
@@ -1785,13 +1871,13 @@ try_optimize_cfg (int mode)
/* If B has a single outgoing edge, but uses a
non-trivial jump instruction without side-effects, we
can either delete the jump entirely, or replace it
- with a simple unconditional jump. Use
- redirect_edge_and_branch to do the dirty work. */
+ with a simple unconditional jump. */
if (b->succ
&& ! b->succ->succ_next
&& b->succ->dest != EXIT_BLOCK_PTR
&& onlyjump_p (BB_END (b))
- && redirect_edge_and_branch (b->succ, b->succ->dest))
+ && try_redirect_by_replacing_jump (b->succ, b->succ->dest,
+ (mode & CLEANUP_CFGLAYOUT) != 0))
{
update_forwarder_flag (b);
changed_here = true;
@@ -1897,7 +1983,8 @@ cleanup_cfg (int mode)
PROP_DEATH_NOTES
| PROP_SCAN_DEAD_CODE
| PROP_KILL_DEAD_CODE
- | PROP_LOG_LINKS))
+ | ((mode & CLEANUP_LOG_LINKS)
+ ? PROP_LOG_LINKS : 0)))
break;
}
else if (!(mode & (CLEANUP_NO_INSN_DEL | CLEANUP_PRE_SIBCALL))
diff --git a/gcc/cfgloop.h b/gcc/cfgloop.h
index 4d8c67dd35d..33e906d6a6b 100644
--- a/gcc/cfgloop.h
+++ b/gcc/cfgloop.h
@@ -1,5 +1,5 @@
/* Natural loop functions
- Copyright (C) 1987, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1987, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -337,3 +337,5 @@ enum
};
extern void unroll_and_peel_loops (struct loops *, int);
+extern bool is_bct_cond (rtx);
+extern rtx get_var_set_from_bct (rtx);
diff --git a/gcc/cfgloopanal.c b/gcc/cfgloopanal.c
index fb5f8ae6c6b..e3c7f778c17 100644
--- a/gcc/cfgloopanal.c
+++ b/gcc/cfgloopanal.c
@@ -1,5 +1,5 @@
/* Natural loop analysis code for GNU compiler.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -28,6 +28,8 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "cfgloop.h"
#include "expr.h"
#include "output.h"
+/* Needed for doloop_condition_get(). */
+#include "loop.h"
struct unmark_altered_insn_data;
static void unmark_altered (rtx, rtx, regset);
@@ -161,6 +163,10 @@ blocks_single_set_registers (basic_block *bbs, int nbbs, rtx *regs)
insn = NEXT_INSN (insn))
{
rtx set = single_set (insn);
+
+ if (!set && is_bct_cond (insn))
+ set = get_var_set_from_bct(insn);
+
if (!set)
continue;
if (!REG_P (SET_DEST (set)))
@@ -312,6 +318,10 @@ simple_increment (struct loop *loop, rtx *simple_increment_regs,
/* mod_insn must be a simple increment/decrement. */
set = single_set (mod_insn);
+
+ if (!set && is_bct_cond (mod_insn))
+ set = get_var_set_from_bct(mod_insn);
+
if (!set)
abort ();
if (!rtx_equal_p (SET_DEST (set), desc->var))
@@ -834,9 +844,10 @@ count_loop_iterations (struct loop_desc *desc, rtx init, rtx lim)
return NULL_RTX;
/* Normalize difference so the value is always first examined
- and later incremented. */
- if (!desc->postincr)
- exp = simplify_gen_binary (MINUS, mode, exp, stride);
+ and later incremented. Do not do this for a loop ending with a branch
+ and count register. */
+ if (!is_bct_cond (BB_END (desc->out_edge->src)) && (!desc->postincr))
+ exp = simplify_gen_binary (MINUS, mode, exp, stride);
/* Determine delta caused by exit condition. */
switch (cond)
@@ -1412,3 +1423,57 @@ expected_loop_iterations (const struct loop *loop)
return (freq_latch + freq_in - 1) / freq_in;
}
}
+
+/* This function checks if an instruction is a branch and count instruction
+ no matter if the flag HAVE_doloop_end is enabled or not. An alternative
+ would be the modification of doloop_condition_get function itself. */
+bool
+is_bct_cond (rtx insn)
+{
+ if (GET_CODE (insn) != JUMP_INSN)
+ return false;
+
+#ifdef HAVE_doloop_end
+ if (!doloop_condition_get (PATTERN(insn)))
+ return false;
+#else
+ return false;
+#endif
+
+ return true;
+}
+
+/* Extract the increment of the count register from the branch and count
+ instruction. */
+rtx
+get_var_set_from_bct (rtx insn)
+{
+ rtx rhs, lhs, cond;
+ rtx pattern;
+ rtx set;
+ pattern = PATTERN (insn);
+
+ if (!is_bct_cond (insn))
+ abort ();
+
+ set = XVECEXP (pattern, 0, 1);
+
+ /* IA64 has the decrement conditional, i.e. done only when the loop does not
+ end. We match (set (x (if_then_else (ne x 0) (plus x -1) x))) here. */
+
+ lhs = XEXP (set, 0);
+ rhs = XEXP (set, 1);
+ if (GET_CODE (set) != IF_THEN_ELSE)
+ return set;
+
+ cond = XEXP (rhs, 0);
+ if (GET_CODE (cond) != NE
+ || !rtx_equal_p (XEXP (cond, 0), lhs)
+ || !rtx_equal_p (XEXP (cond, 1), const0_rtx))
+ return set;
+
+ rhs = XEXP (rhs, 1);
+
+ return gen_rtx_SET (GET_MODE (lhs), lhs, rhs);
+}
+
diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c
index c1b17455345..b2bf4349ebc 100644
--- a/gcc/cfgrtl.c
+++ b/gcc/cfgrtl.c
@@ -1,6 +1,6 @@
/* Control flow graph manipulation code for GNU compiler.
Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -687,7 +687,7 @@ block_label (basic_block block)
apply only if all edges now point to the same block. The parameters and
return values are equivalent to redirect_edge_and_branch. */
-static bool
+bool
try_redirect_by_replacing_jump (edge e, basic_block target, bool in_cfglayout)
{
basic_block src = e->src;
@@ -780,7 +780,7 @@ try_redirect_by_replacing_jump (edge e, basic_block target, bool in_cfglayout)
rtx target_label = block_label (target);
rtx barrier, label, table;
- emit_jump_insn_after (gen_jump (target_label), insn);
+ emit_jump_insn_after_noloc (gen_jump (target_label), insn);
JUMP_LABEL (BB_END (src)) = target_label;
LABEL_NUSES (target_label)++;
if (rtl_dump_file)
@@ -971,15 +971,13 @@ rtl_redirect_edge_and_branch (edge e, basic_block target)
if (e->flags & (EDGE_ABNORMAL_CALL | EDGE_EH))
return false;
+ if (e->dest == target)
+ return true;
+
if (try_redirect_by_replacing_jump (e, target, false))
return true;
- /* Do this fast path late, as we want above code to simplify for cases
- where called on single edge leaving basic block containing nontrivial
- jump insn. */
- else if (e->dest == target)
- return false;
- else if (!redirect_branch_edge (e, target))
+ if (!redirect_branch_edge (e, target))
return false;
return true;
@@ -1111,14 +1109,14 @@ force_nonfallthru_and_redirect (edge e, basic_block target)
if (target == EXIT_BLOCK_PTR)
{
if (HAVE_return)
- emit_jump_insn_after (gen_return (), BB_END (jump_block));
+ emit_jump_insn_after_noloc (gen_return (), BB_END (jump_block));
else
abort ();
}
else
{
rtx label = block_label (target);
- emit_jump_insn_after (gen_jump (label), BB_END (jump_block));
+ emit_jump_insn_after_noloc (gen_jump (label), BB_END (jump_block));
JUMP_LABEL (BB_END (jump_block)) = label;
LABEL_NUSES (label)++;
}
@@ -1590,11 +1588,11 @@ commit_one_edge_insertion (edge e, int watch_calls)
if (before)
{
- emit_insn_before (insns, before);
+ emit_insn_before_noloc (insns, before);
last = prev_nonnote_insn (before);
}
else
- last = emit_insn_after (insns, after);
+ last = emit_insn_after_noloc (insns, after);
if (returnjump_p (last))
{
@@ -2437,11 +2435,11 @@ cfg_layout_redirect_edge_and_branch (edge e, basic_block dest)
if (e->flags & (EDGE_ABNORMAL_CALL | EDGE_EH))
return false;
- if (e->src != ENTRY_BLOCK_PTR
- && try_redirect_by_replacing_jump (e, dest, true))
+ if (e->dest == dest)
return true;
- if (e->dest == dest)
+ if (e->src != ENTRY_BLOCK_PTR
+ && try_redirect_by_replacing_jump (e, dest, true))
return true;
if (e->src == ENTRY_BLOCK_PTR
@@ -2627,7 +2625,7 @@ cfg_layout_merge_blocks (basic_block a, basic_block b)
/* We should have fallthru edge in a, or we can do dummy redirection to get
it cleaned up. */
if (GET_CODE (BB_END (a)) == JUMP_INSN)
- redirect_edge_and_branch (a->succ, b);
+ try_redirect_by_replacing_jump (a->succ, b, true);
if (GET_CODE (BB_END (a)) == JUMP_INSN)
abort ();
@@ -2636,7 +2634,7 @@ cfg_layout_merge_blocks (basic_block a, basic_block b)
{
rtx first = BB_END (a), last;
- last = emit_insn_after (b->rbi->header, BB_END (a));
+ last = emit_insn_after_noloc (b->rbi->header, BB_END (a));
delete_insn_chain (NEXT_INSN (first), last);
b->rbi->header = NULL;
}
@@ -2646,7 +2644,7 @@ cfg_layout_merge_blocks (basic_block a, basic_block b)
{
rtx first = unlink_insn_chain (BB_HEAD (b), BB_END (b));
- emit_insn_after (first, BB_END (a));
+ emit_insn_after_noloc (first, BB_END (a));
/* Skip possible DELETED_LABEL insn. */
if (!NOTE_INSN_BASIC_BLOCK_P (first))
first = NEXT_INSN (first);
diff --git a/gcc/cgraph.c b/gcc/cgraph.c
index ec3bcca34e7..e9d0b243bc4 100644
--- a/gcc/cgraph.c
+++ b/gcc/cgraph.c
@@ -231,10 +231,13 @@ cgraph_remove_node (struct cgraph_node *node)
if (node->previous)
node->previous->next = node->next;
else
- cgraph_nodes = node;
+ cgraph_nodes = node->next;
if (node->next)
node->next->previous = node->previous;
DECL_SAVED_TREE (node->decl) = NULL;
+ DECL_SAVED_INSNS (node->decl) = NULL;
+ DECL_ARGUMENTS (node->decl) = NULL;
+ DECL_INITIAL (node->decl) = error_mark_node;
slot =
htab_find_slot_with_hash (cgraph_hash, DECL_ASSEMBLER_NAME (node->decl),
IDENTIFIER_HASH_VALUE (DECL_ASSEMBLER_NAME
diff --git a/gcc/cgraph.h b/gcc/cgraph.h
index ee4372ee91b..b845ef7b597 100644
--- a/gcc/cgraph.h
+++ b/gcc/cgraph.h
@@ -1,5 +1,5 @@
/* Callgraph handling code.
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
Contributed by Jan Hubicka
This file is part of GCC.
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index 27e4d8d8d7c..fdcac3e014d 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -228,6 +228,11 @@ cgraph_finalize_function (tree decl, bool nested)
/* If we've not yet emitted decl, tell the debug info about it. */
if (!TREE_ASM_WRITTEN (decl))
(*debug_hooks->deferred_inline_function) (decl);
+
+ /* We will never really output the function body, clear the SAVED_INSNS array
+ early then. */
+ if (DECL_EXTERNAL (decl))
+ DECL_SAVED_INSNS (decl) = NULL;
}
/* Walk tree and record all calls. Called via walk_tree. */
@@ -322,10 +327,9 @@ cgraph_analyze_function (struct cgraph_node *node)
cgraph_create_edges (decl, DECL_SAVED_TREE (decl));
node->local.inlinable = tree_inlinable_function_p (decl);
- if (!DECL_ESTIMATED_INSNS (decl))
- DECL_ESTIMATED_INSNS (decl)
+ if (!node->local.self_insns)
+ node->local.self_insns
= (*lang_hooks.tree_inlining.estimate_num_insns) (decl);
- node->local.self_insns = DECL_ESTIMATED_INSNS (decl);
if (node->local.inlinable)
node->local.disregard_inline_limits
= (*lang_hooks.tree_inlining.disregard_inline_limits) (decl);
@@ -436,6 +440,8 @@ cgraph_finalize_compilation_unit (void)
if (cgraph_dump_file)
fprintf (cgraph_dump_file, " %s", cgraph_node_name (node));
}
+ else
+ node->next_needed = NULL;
}
if (cgraph_dump_file)
{
@@ -474,6 +480,8 @@ cgraph_mark_functions_to_output (void)
&& !TREE_ASM_WRITTEN (decl) && !node->origin
&& !DECL_EXTERNAL (decl))
node->output = 1;
+ else
+ DECL_SAVED_INSNS (decl) = NULL;
}
}
@@ -523,9 +531,9 @@ cgraph_expand_function (struct cgraph_node *node)
/* Generate RTL for the body of DECL. Nested functions are expanded
via lang_expand_decl_stmt. */
(*lang_hooks.callgraph.expand_function) (decl);
+ if (DECL_DEFER_OUTPUT (decl))
+ abort ();
- if (!cgraph_function_possibly_inlined_p (decl))
- DECL_SAVED_TREE (decl) = NULL;
current_function_decl = NULL;
}
@@ -792,6 +800,105 @@ cgraph_inlined_callees (struct cgraph_node *node, struct cgraph_node **array)
return nfound;
}
+/* Perform reachability analysis and reclaim all unreachable nodes.
+ This function also remove unneeded bodies of extern inline functions
+ and thus needs to be done only after inlining decisions has been made. */
+static bool
+cgraph_remove_unreachable_nodes (void)
+{
+ struct cgraph_node *first = (void *) 1;
+ struct cgraph_node *node;
+ bool changed = false;
+ int insns = 0;
+
+ if (cgraph_dump_file)
+ fprintf (cgraph_dump_file, "\nReclaiming functions:");
+#ifdef ENABLE_CHECKING
+ for (node = cgraph_nodes; node; node = node->next)
+ if (node->aux)
+ abort ();
+#endif
+ for (node = cgraph_nodes; node; node = node->next)
+ if (node->needed && (!DECL_EXTERNAL (node->decl) || !node->analyzed))
+ {
+ node->aux = first;
+ first = node;
+ }
+ else if (node->aux)
+ abort ();
+
+ /* Perform reachability analysis. As a special case do not consider
+ extern inline functions not inlined as live because we won't output
+ them at all. */
+ while (first != (void *) 1)
+ {
+ struct cgraph_edge *e;
+ node = first;
+ first = first->aux;
+
+ for (e = node->callees; e; e = e->next_callee)
+ if (!e->callee->aux
+ && node->analyzed
+ && (!e->inline_failed || !e->callee->analyzed
+ || !DECL_EXTERNAL (e->callee->decl)))
+ {
+ e->callee->aux = first;
+ first = e->callee;
+ }
+ }
+
+ /* Remove unreachable nodes. Extern inline functions need special care;
+ Unreachable extern inline functions shall be removed.
+ Reachable extern inline functions we never inlined shall get their bodies
+ elliminated
+ Reachable extern inline functions we sometimes inlined will be turned into
+ unanalyzed nodes so they look like for true extern functions to the rest
+ of code. */
+ for (node = cgraph_nodes; node; node = node->next)
+ {
+ if (!node->aux)
+ {
+ int local_insns;
+ tree decl = node->decl;
+
+ if (DECL_SAVED_INSNS (decl))
+ local_insns = node->local.self_insns;
+ else
+ local_insns = 0;
+ if (cgraph_dump_file)
+ fprintf (cgraph_dump_file, " %s", cgraph_node_name (node));
+ if (!node->analyzed || !DECL_EXTERNAL (node->decl))
+ cgraph_remove_node (node);
+ else
+ {
+ struct cgraph_edge *e;
+
+ for (e = node->callers; e; e = e->next_caller)
+ if (e->caller->aux)
+ break;
+ if (e || node->needed)
+ {
+ DECL_SAVED_TREE (node->decl) = NULL_TREE;
+ while (node->callees)
+ cgraph_remove_edge (node, node->callees->callee);
+ node->analyzed = false;
+ }
+ else
+ cgraph_remove_node (node);
+ }
+ if (!DECL_SAVED_TREE (decl))
+ insns += local_insns;
+ changed = true;
+ }
+ }
+ for (node = cgraph_nodes; node; node = node->next)
+ node->aux = NULL;
+ if (cgraph_dump_file)
+ fprintf (cgraph_dump_file, "\nReclaimed %i insns", insns);
+ return changed;
+}
+
+
/* Estimate size of the function after inlining WHAT into TO. */
static int
@@ -1055,7 +1162,7 @@ cgraph_decide_inlining_of_small_functions (struct cgraph_node **inlined,
ninlined, &e->inline_failed))
{
for (i = 0; i < ninlined; i++)
- inlined[i]->output = 0, node->aux = 0;
+ inlined[i]->output = 0, inlined[i]->aux = 0;
if (cgraph_dump_file)
fprintf (cgraph_dump_file, " Not inlining into %s.\n",
cgraph_node_name (e->caller));
@@ -1071,17 +1178,16 @@ cgraph_decide_inlining_of_small_functions (struct cgraph_node **inlined,
the keys. */
for (i = 0; i < ninlined; i++)
{
- inlined[i]->output = 0, node->aux = 0;
+ inlined[i]->output = 0, inlined[i]->aux = 0;
if (heap_node[inlined[i]->uid])
fibheap_replace_key (heap, heap_node[inlined[i]->uid],
cgraph_estimate_growth (inlined[i]));
}
- if (cgraph_dump_file)
- fprintf (cgraph_dump_file,
- " Inlined into %s which now has %i insns.\n",
- cgraph_node_name (e->caller),
- e->caller->global.insns);
-
+ if (cgraph_dump_file)
+ fprintf (cgraph_dump_file,
+ " Inlined into %s which now has %i insns.\n",
+ cgraph_node_name (e->caller),
+ e->caller->global.insns);
}
/* Similarly all functions called by the function we just inlined
@@ -1101,7 +1207,8 @@ cgraph_decide_inlining_of_small_functions (struct cgraph_node **inlined,
fibheap_replace_key (heap, heap_node[e->callee->uid],
cgraph_estimate_growth (e->callee));
- inlined_callees[i]->output = 0, node->aux = 0;
+ inlined_callees[i]->output = 0;
+ inlined_callees[i]->aux = 0;
}
if (cgraph_dump_file)
fprintf (cgraph_dump_file,
@@ -1150,6 +1257,11 @@ cgraph_decide_inlining (void)
if (cgraph_dump_file)
fprintf (cgraph_dump_file, "\nInlining always_inline functions:\n");
+#ifdef ENABLE_CHECKING
+ for (node = cgraph_nodes; node; node = node->next)
+ if (node->aux || node->output)
+ abort ();
+#endif
/* In the first pass mark all always_inline edges. Do this with a priority
so none of our later choices will make this impossible. */
@@ -1185,7 +1297,7 @@ cgraph_decide_inlining (void)
cgraph_mark_inline (node, e->callee, inlined, ninlined,
inlined_callees, ninlined_callees);
for (y = 0; y < ninlined_callees; y++)
- inlined_callees[y]->output = 0, node->aux = 0;
+ inlined_callees[y]->output = 0, inlined_callees[y]->aux = 0;
if (cgraph_dump_file)
fprintf (cgraph_dump_file,
" Inlined into %s which now has %i insns.\n",
@@ -1197,12 +1309,22 @@ cgraph_decide_inlining (void)
" Inlined %i times for a net change of %+i insns.\n",
node->global.cloned_times, overall_insns - old_insns);
for (y = 0; y < ninlined; y++)
- inlined[y]->output = 0, node->aux = 0;
+ inlined[y]->output = 0, inlined[y]->aux = 0;
}
+#ifdef ENABLE_CHECKING
+ for (node = cgraph_nodes; node; node = node->next)
+ if (node->aux || node->output)
+ abort ();
+#endif
if (!flag_really_no_inline)
{
cgraph_decide_inlining_of_small_functions (inlined, inlined_callees);
+#ifdef ENABLE_CHECKING
+ for (node = cgraph_nodes; node; node = node->next)
+ if (node->aux || node->output)
+ abort ();
+#endif
if (cgraph_dump_file)
fprintf (cgraph_dump_file, "\nDeciding on functions called once:\n");
@@ -1251,7 +1373,7 @@ cgraph_decide_inlining (void)
ninlined, inlined_callees,
ninlined_callees);
for (y = 0; y < ninlined_callees; y++)
- inlined_callees[y]->output = 0, node->aux = 0;
+ inlined_callees[y]->output = 0, inlined_callees[y]->aux = 0;
if (cgraph_dump_file)
fprintf (cgraph_dump_file,
" Inlined into %s which now has %i insns"
@@ -1267,11 +1389,12 @@ cgraph_decide_inlining (void)
" Inline limit reached, not inlined.\n");
}
for (y = 0; y < ninlined; y++)
- inlined[y]->output = 0, node->aux = 0;
+ inlined[y]->output = 0, inlined[y]->aux = 0;
}
}
}
}
+ cgraph_remove_unreachable_nodes ();
if (cgraph_dump_file)
fprintf (cgraph_dump_file,
@@ -1317,7 +1440,7 @@ cgraph_decide_inlining_incrementally (struct cgraph_node *node)
cgraph_mark_inline (node, e->callee, inlined, ninlined,
inlined_callees, ninlined_callees);
for (y = 0; y < ninlined_callees; y++)
- inlined_callees[y]->output = 0, node->aux = 0;
+ inlined_callees[y]->output = 0, inlined_callees[y]->aux = 0;
}
if (!flag_really_no_inline)
@@ -1342,13 +1465,13 @@ cgraph_decide_inlining_incrementally (struct cgraph_node *node)
cgraph_mark_inline (node, e->callee, inlined, ninlined,
inlined_callees, ninlined_callees);
for (y = 0; y < ninlined_callees; y++)
- inlined_callees[y]->output = 0, node->aux = 0;
+ inlined_callees[y]->output = 0, inlined_callees[y]->aux = 0;
}
}
/* Clear the flags set by cgraph_inlined_into. */
for (y = 0; y < ninlined; y++)
- inlined[y]->output = 0, node->aux = 0;
+ inlined[y]->output = 0, inlined[y]->aux = 0;
free (inlined);
free (inlined_callees);
diff --git a/gcc/collect2.c b/gcc/collect2.c
index 11858687ee4..4fbe3a42003 100644
--- a/gcc/collect2.c
+++ b/gcc/collect2.c
@@ -1,7 +1,7 @@
/* Collect static initialization info into data structures that can be
traversed by C++ initialization and finalization routines.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Chris Smith (csmith@convex.com).
Heavily modified by Michael Meissner (meissner@cygnus.com),
Per Bothner (bothner@cygnus.com), and John Gilmore (gnu@cygnus.com).
@@ -1398,10 +1398,12 @@ main (int argc, char **argv)
if (! exports.first)
*ld2++ = concat ("-bE:", export_file, NULL);
+#ifndef LD_INIT_SWITCH
add_to_list (&exports, initname);
add_to_list (&exports, fininame);
add_to_list (&exports, "_GLOBAL__DI");
add_to_list (&exports, "_GLOBAL__DD");
+#endif
exportf = fopen (export_file, "w");
if (exportf == (FILE *) 0)
fatal_perror ("fopen %s", export_file);
@@ -2719,7 +2721,7 @@ scan_prog_file (const char *prog_name, enum pass which_pass)
case 1:
if (! is_shared)
add_to_list (&constructors, name);
-#ifdef COLLECT_EXPORT_LIST
+#if defined (COLLECT_EXPORT_LIST) && !defined (LD_INIT_SWITCH)
if (which_pass == PASS_OBJ)
add_to_list (&exports, name);
#endif
@@ -2728,7 +2730,7 @@ scan_prog_file (const char *prog_name, enum pass which_pass)
case 2:
if (! is_shared)
add_to_list (&destructors, name);
-#ifdef COLLECT_EXPORT_LIST
+#if defined (COLLECT_EXPORT_LIST) && !defined (LD_INIT_SWITCH)
if (which_pass == PASS_OBJ)
add_to_list (&exports, name);
#endif
@@ -2753,7 +2755,7 @@ scan_prog_file (const char *prog_name, enum pass which_pass)
case 5:
if (! is_shared)
add_to_list (&frame_tables, name);
-#ifdef COLLECT_EXPORT_LIST
+#if defined (COLLECT_EXPORT_LIST) && !defined (LD_INIT_SWITCH)
if (which_pass == PASS_OBJ)
add_to_list (&exports, name);
#endif
@@ -2761,13 +2763,14 @@ scan_prog_file (const char *prog_name, enum pass which_pass)
default: /* not a constructor or destructor */
#ifdef COLLECT_EXPORT_LIST
- /* If we are building a shared object on AIX we need
- to explicitly export all global symbols. */
- if (shared_obj)
- {
- if (which_pass == PASS_OBJ && (! export_flag))
- add_to_list (&exports, name);
- }
+ /* Explicitly export all global symbols when
+ building a shared object on AIX, but do not
+ re-export symbols from another shared object
+ and do not export symbols if the user
+ provides an explicit export list. */
+ if (shared_obj && !is_shared
+ && which_pass == PASS_OBJ && !export_flag)
+ add_to_list (&exports, name);
#endif
continue;
}
diff --git a/gcc/combine.c b/gcc/combine.c
index e54ef60f21b..1c839ef64bf 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -1,6 +1,6 @@
/* Optimize by combining instructions for GNU compiler.
Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -91,6 +91,10 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "toplev.h"
#include "target.h"
+#ifndef SHIFT_COUNT_TRUNCATED
+#define SHIFT_COUNT_TRUNCATED 0
+#endif
+
/* It is not safe to use ordinary gen_lowpart in combine.
Use gen_lowpart_for_combine instead. See comments there. */
#define gen_lowpart dont_use_gen_lowpart_you_dummy
@@ -958,6 +962,7 @@ can_combine_p (rtx insn, rtx i3, rtx pred ATTRIBUTE_UNUSED, rtx succ,
for (i = 0; i < XVECLEN (PATTERN (insn), 0); i++)
{
rtx elt = XVECEXP (PATTERN (insn), 0, i);
+ rtx note;
switch (GET_CODE (elt))
{
@@ -1008,6 +1013,8 @@ can_combine_p (rtx insn, rtx i3, rtx pred ATTRIBUTE_UNUSED, rtx succ,
/* Ignore SETs whose result isn't used but not those that
have side-effects. */
if (find_reg_note (insn, REG_UNUSED, SET_DEST (elt))
+ && (!(note = find_reg_note (insn, REG_EH_REGION, NULL_RTX))
+ || INTVAL (XEXP (note, 0)) <= 0)
&& ! side_effects_p (elt))
break;
@@ -2012,7 +2019,8 @@ try_combine (rtx i3, rtx i2, rtx i1, int *new_direct_jump_p)
insn_code_number = recog_for_combine (&newpat, i3, &new_i3_notes);
/* If the result isn't valid, see if it is a PARALLEL of two SETs where
- the second SET's destination is a register that is unused. In that case,
+ the second SET's destination is a register that is unused and isn't
+ marked as an instruction that might trap in an EH region. In that case,
we just need the first SET. This can occur when simplifying a divmod
insn. We *must* test for this case here because the code below that
splits two independent SETs doesn't handle this case correctly when it
@@ -2028,37 +2036,42 @@ try_combine (rtx i3, rtx i2, rtx i1, int *new_direct_jump_p)
{
rtx set0 = XVECEXP (newpat, 0, 0);
rtx set1 = XVECEXP (newpat, 0, 1);
-
+ rtx note;
+
if (((GET_CODE (SET_DEST (set1)) == REG
- && find_reg_note (i3, REG_UNUSED, SET_DEST (set1)))
- || (GET_CODE (SET_DEST (set1)) == SUBREG
- && find_reg_note (i3, REG_UNUSED, SUBREG_REG (SET_DEST (set1)))))
- && ! side_effects_p (SET_SRC (set1)))
- {
- newpat = set0;
- insn_code_number = recog_for_combine (&newpat, i3, &new_i3_notes);
- }
-
+ && find_reg_note (i3, REG_UNUSED, SET_DEST (set1)))
+ || (GET_CODE (SET_DEST (set1)) == SUBREG
+ && find_reg_note (i3, REG_UNUSED, SUBREG_REG (SET_DEST (set1)))))
+ && (!(note = find_reg_note (i3, REG_EH_REGION, NULL_RTX))
+ || INTVAL (XEXP (note, 0)) <= 0)
+ && ! side_effects_p (SET_SRC (set1)))
+ {
+ newpat = set0;
+ insn_code_number = recog_for_combine (&newpat, i3, &new_i3_notes);
+ }
+
else if (((GET_CODE (SET_DEST (set0)) == REG
- && find_reg_note (i3, REG_UNUSED, SET_DEST (set0)))
- || (GET_CODE (SET_DEST (set0)) == SUBREG
- && find_reg_note (i3, REG_UNUSED,
- SUBREG_REG (SET_DEST (set0)))))
- && ! side_effects_p (SET_SRC (set0)))
- {
- newpat = set1;
- insn_code_number = recog_for_combine (&newpat, i3, &new_i3_notes);
-
- if (insn_code_number >= 0)
- {
- /* If we will be able to accept this, we have made a
- change to the destination of I3. This requires us to
- do a few adjustments. */
-
- PATTERN (i3) = newpat;
- adjust_for_new_dest (i3);
- }
- }
+ && find_reg_note (i3, REG_UNUSED, SET_DEST (set0)))
+ || (GET_CODE (SET_DEST (set0)) == SUBREG
+ && find_reg_note (i3, REG_UNUSED,
+ SUBREG_REG (SET_DEST (set0)))))
+ && (!(note = find_reg_note (i3, REG_EH_REGION, NULL_RTX))
+ || INTVAL (XEXP (note, 0)) <= 0)
+ && ! side_effects_p (SET_SRC (set0)))
+ {
+ newpat = set1;
+ insn_code_number = recog_for_combine (&newpat, i3, &new_i3_notes);
+
+ if (insn_code_number >= 0)
+ {
+ /* If we will be able to accept this, we have made a
+ change to the destination of I3. This requires us to
+ do a few adjustments. */
+
+ PATTERN (i3) = newpat;
+ adjust_for_new_dest (i3);
+ }
+ }
}
/* If we were combining three insns and the result is a simple SET
@@ -4545,7 +4558,6 @@ combine_simplify_rtx (rtx x, enum machine_mode op0_mode, int last,
return simplify_shift_const (x, code, mode, XEXP (x, 0),
INTVAL (XEXP (x, 1)));
-#ifdef SHIFT_COUNT_TRUNCATED
else if (SHIFT_COUNT_TRUNCATED && GET_CODE (XEXP (x, 1)) != REG)
SUBST (XEXP (x, 1),
force_to_mode (XEXP (x, 1), GET_MODE (XEXP (x, 1)),
@@ -4553,8 +4565,6 @@ combine_simplify_rtx (rtx x, enum machine_mode op0_mode, int last,
<< exact_log2 (GET_MODE_BITSIZE (GET_MODE (x))))
- 1,
NULL_RTX, 0));
-#endif
-
break;
case VEC_SELECT:
@@ -4928,6 +4938,7 @@ simplify_if_then_else (rtx x)
/* (IF_THEN_ELSE (NE REG 0) (0) (8)) is REG for nonzero_bits (REG) == 8. */
if (true_code == NE && XEXP (cond, 1) == const0_rtx
&& false_rtx == const0_rtx && GET_CODE (true_rtx) == CONST_INT
+ && GET_MODE (XEXP (cond, 0)) == mode
&& (INTVAL (true_rtx) & GET_MODE_MASK (mode))
== nonzero_bits (XEXP (cond, 0), mode)
&& (i = exact_log2 (INTVAL (true_rtx) & GET_MODE_MASK (mode))) >= 0)
@@ -9124,10 +9135,8 @@ simplify_shift_const (rtx x, enum rtx_code code,
/* Make sure and truncate the "natural" shift on the way in. We don't
want to do this inside the loop as it makes it more difficult to
combine shifts. */
-#ifdef SHIFT_COUNT_TRUNCATED
if (SHIFT_COUNT_TRUNCATED)
orig_count &= GET_MODE_BITSIZE (mode) - 1;
-#endif
/* If we were given an invalid count, don't do anything except exactly
what was requested. */
@@ -9870,7 +9879,7 @@ recog_for_combine (rtx *pnewpat, rtx insn, rtx *pnotes)
int num_clobbers_to_add = 0;
int i;
rtx notes = 0;
- rtx dummy_insn;
+ rtx old_notes, old_pat;
/* If PAT is a PARALLEL, check to see if it contains the CLOBBER
we use to indicate that something didn't match. If we find such a
@@ -9881,13 +9890,12 @@ recog_for_combine (rtx *pnewpat, rtx insn, rtx *pnotes)
&& XEXP (XVECEXP (pat, 0, i), 0) == const0_rtx)
return -1;
- /* *pnewpat does not have to be actual PATTERN (insn), so make a dummy
- instruction for pattern recognition. */
- dummy_insn = shallow_copy_rtx (insn);
- PATTERN (dummy_insn) = pat;
- REG_NOTES (dummy_insn) = 0;
+ old_pat = PATTERN (insn);
+ old_notes = REG_NOTES (insn);
+ PATTERN (insn) = pat;
+ REG_NOTES (insn) = 0;
- insn_code_number = recog (pat, dummy_insn, &num_clobbers_to_add);
+ insn_code_number = recog (pat, insn, &num_clobbers_to_add);
/* If it isn't, there is the possibility that we previously had an insn
that clobbered some register as a side effect, but the combined
@@ -9912,9 +9920,11 @@ recog_for_combine (rtx *pnewpat, rtx insn, rtx *pnotes)
if (pos == 1)
pat = XVECEXP (pat, 0, 0);
- PATTERN (dummy_insn) = pat;
- insn_code_number = recog (pat, dummy_insn, &num_clobbers_to_add);
+ PATTERN (insn) = pat;
+ insn_code_number = recog (pat, insn, &num_clobbers_to_add);
}
+ PATTERN (insn) = old_pat;
+ REG_NOTES (insn) = old_notes;
/* Recognize all noop sets, these will be killed by followup pass. */
if (insn_code_number < 0 && GET_CODE (pat) == SET && set_noop_p (pat))
@@ -10523,8 +10533,10 @@ simplify_comparison (enum rtx_code code, rtx *pop0, rtx *pop1)
a constant that has only a single bit set and are comparing it
with zero, we can convert this into an equality comparison
between the position and the location of the single bit. */
-
- if (GET_CODE (XEXP (op0, 0)) == CONST_INT
+ /* Except we can't if SHIFT_COUNT_TRUNCATED is set, since we might
+ have already reduced the shift count modulo the word size. */
+ if (!SHIFT_COUNT_TRUNCATED
+ && GET_CODE (XEXP (op0, 0)) == CONST_INT
&& XEXP (op0, 1) == const1_rtx
&& equality_comparison_p && const_op == 0
&& (i = exact_log2 (INTVAL (XEXP (op0, 0)))) >= 0)
diff --git a/gcc/common.opt b/gcc/common.opt
index 302dfac6709..261c8d299bb 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -179,6 +179,9 @@ Common
fPIE
Common
+fabi-version=
+Common Joined UInteger
+
falign-functions
Common
Align the start of functions
diff --git a/gcc/config.gcc b/gcc/config.gcc
index fd75363eba2..ea884c6638a 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -1,5 +1,5 @@
# GCC target-specific configuration file.
-# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003
+# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
# Free Software Foundation, Inc.
#This file is part of GCC.
@@ -84,6 +84,9 @@
# the compiler proper (cc1, cc1obj, cc1plus)
# depending on target.
#
+# extra_gcc_objs List of extra objects that should be linked into
+# the compiler driver (gcc) depending on target.
+#
# extra_headers List of used header files from the directory
# config/${cpu_type}.
#
@@ -744,7 +747,7 @@ frv-*-elf)
use_fixproto=yes
;;
h8300-*-rtems*)
- tmake_file="h8300/t-h8300 t-rtems"
+ tmake_file="h8300/t-h8300 t-rtems h8300/t-rtems"
tm_file="h8300/h8300.h dbxcoff.h h8300/coff.h h8300/rtems.h rtems.h"
;;
h8300-*-elf*)
@@ -769,6 +772,11 @@ hppa*-*-linux* | parisc*-*-linux*)
tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h pa/pa-linux.h \
pa/pa32-regs.h pa/pa32-linux.h"
tmake_file="t-slibgcc-elf-ver t-linux pa/t-linux"
+ # if not configured with --enable-sjlj-exceptions, bump the
+ # libgcc version number
+ if test x$sjlj != x1; then
+ tmake_file="$tmake_file pa/t-slibgcc-elf-ver"
+ fi
;;
# port not yet contributed.
#hppa*-*-openbsd*)
@@ -1058,6 +1066,11 @@ i[34567]86-*-solaris2*)
else
tmake_file="$tmake_file t-slibgcc-sld"
fi
+ case ${target} in
+ *-*-solaris2.[789] | *-*-solaris2.1[0-9])
+ tm_file="$tm_file tm-dwarf2.h"
+ ;;
+ esac
extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
if test x${enable_threads} = x; then
enable_threads=$have_pthread_h
@@ -1136,10 +1149,11 @@ i[4567]86-wrs-vxworks)
i[34567]86-*-pe | i[34567]86-*-cygwin*)
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/cygwin.h"
xm_file=i386/xm-cygwin.h
- tmake_file="i386/t-cygming i386/t-cygwin"
+ tmake_file="i386/t-cygwin i386/t-cygming"
extra_objs=winnt.o
c_target_objs=cygwin2.o
cxx_target_objs=cygwin2.o
+ extra_gcc_objs=cygwin1.o
if test x$enable_threads = xyes; then
thread_file='posix'
fi
@@ -1424,6 +1438,11 @@ m68k-*-linux*) # Motorola m68k's running GNU/Linux
tm_file="m68k/m68k.h dbxelf.h elfos.h svr4.h linux.h m68k/linux.h"
tm_defines="MOTOROLA USE_GAS"
tmake_file="t-slibgcc-elf-ver t-linux"
+ # if not configured with --enable-sjlj-exceptions, bump the
+ # libgcc version number
+ if test x$sjlj != x1; then
+ tmake_file="$tmake_file m68k/t-slibgcc-elf-ver"
+ fi
;;
m68k-*-rtems*)
tmake_file="m68k/t-m68kbare m68k/t-crtstuff t-rtems m68k/t-rtems"
@@ -1441,34 +1460,6 @@ mcore-*-pe*)
tmake_file=mcore/t-mcore-pe
use_fixproto=yes
;;
-mips-sgi-irix6*o32) # SGI System V.4., IRIX 6, O32 ABI
- tm_file="${tm_file} mips/iris5.h"
- if test x$gas = xyes
- then
- tm_file="${tm_file} mips/sdb.h mips/iris5gas.h mips/iris6-o32-gas.h"
- if test x$stabs = xyes
- then
- tm_file="${tm_file} dbx.h mips/dbxmdebug.h"
- fi
- tmake_file=mips/t-iris5-gas
- else
- tm_file="${tm_file} mips/iris6-o32-as.h"
- tmake_file=mips/t-iris5-as
- fi
- tm_file="${tm_file} mips/iris6-o32.h"
- tmake_file="${tmake_file} mips/t-iris mips/t-iris5-6"
- target_cpu_default="MASK_ABICALLS"
- # mips-tfile doesn't work yet
- # See comment in mips/iris5.h file.
- if test x$gas = xno
- then
- use_collect2=yes
- fi
-# if test x$enable_threads = xyes; then
-# thread_file='irix'
-# fi
- use_fixproto=yes
- ;;
mips-sgi-irix6*) # SGI System V.4., IRIX 6
tm_file="${tm_file} mips/iris5.h mips/iris6.h"
tmake_file="mips/t-iris mips/t-iris5-6 mips/t-iris6"
@@ -1479,7 +1470,7 @@ mips-sgi-irix6*) # SGI System V.4., IRIX 6
if test "x$gnu_ld" = xyes
then
tm_file="${tm_file} mips/iris6gld.h"
- tmake_file="$tmake_file mips/t-iris6gld"
+ tmake_file="$tmake_file mips/t-irix-gld"
fi
target_cpu_default="MASK_ABICALLS|MASK_FLOAT64|MASK_64BIT"
tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_N32"
@@ -1519,11 +1510,19 @@ mips-sgi-irix5*) # SGI System V.4., IRIX 5
else
tmake_file=mips/t-iris5-as
fi
+ if test "x$gnu_ld" = xyes
+ then
+ tm_file="${tm_file} mips/iris5gld.h"
+ tmake_file="$tmake_file mips/t-irix-gld"
+ fi
tmake_file="${tmake_file} mips/t-iris mips/t-iris5-6"
target_cpu_default="MASK_ABICALLS"
# mips-tfile doesn't work yet
# See comment in mips/iris5.h file.
- use_collect2=yes
+ if test x$gas = xno
+ then
+ use_collect2=yes
+ fi
# if test x$enable_threads = xyes; then
# thread_file='irix'
# fi
@@ -1755,7 +1754,7 @@ powerpc-*-eabi*)
;;
powerpc-*-rtems*)
tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/rtems.h rtems.h"
- tmake_file="rs6000/t-fprules t-rtems rs6000/t-ppccomm"
+ tmake_file="rs6000/t-fprules rs6000/t-rtems t-rtems rs6000/t-ppccomm"
;;
powerpc-*-linux*altivec*)
tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxaltivec.h"
@@ -1908,14 +1907,14 @@ sh-*-elf* | sh[2346l]*-*-elf* | sh*-*-kaos*)
esac
use_fixproto=yes
;;
-sh-*-rtemself*)
- tmake_file="sh/t-sh sh/t-elf t-rtems"
- tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/embed-elf.h sh/rtemself.h rtems.h"
- ;;
-sh-*-rtems*)
+sh-*-rtemscoff*)
tmake_file="sh/t-sh t-rtems"
tm_file="${tm_file} dbxcoff.h sh/coff.h sh/rtems.h rtems.h"
;;
+sh-*-rtems*)
+ tmake_file="sh/t-sh sh/t-elf t-rtems"
+ tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/embed-elf.h sh/rtemself.h rtems.h"
+ ;;
sh-*-linux* | sh[2346lbe]*-*-linux*)
tmake_file="sh/t-sh sh/t-elf t-slibgcc-elf-ver t-linux"
case ${target} in
@@ -2555,7 +2554,11 @@ fi
for which in cpu tune; do
eval "val=\$with_$which"
case ${val} in
- "" | default32 | default64 | common \
+ default32 | default64)
+ with_which="with_$which"
+ eval $with_which=
+ ;;
+ "" | common \
| power | power2 | power3 | power4 \
| powerpc | powerpc64 \
| rios | rios1 | rios2 | rsc | rsc1 | rs64a \
diff --git a/gcc/config.in b/gcc/config.in
index e9ba6e1c46d..f791507cebe 100644
--- a/gcc/config.in
+++ b/gcc/config.in
@@ -106,6 +106,9 @@
/* Define if your assembler supports mfcr field. */
#undef HAVE_AS_MFCRF
+/* Define if your assembler supports the -no-mul-bug-abort option. */
+#undef HAVE_AS_NO_MUL_BUG_ABORT_OPTION
+
/* Define if your assembler supports offsetable %lo(). */
#undef HAVE_AS_OFFSETABLE_LO10
@@ -303,6 +306,9 @@
/* Define to 1 if you have the <ldfcn.h> header file. */
#undef HAVE_LDFCN_H
+/* Define if your linker supports --as-needed and --no-as-needed options. */
+#undef HAVE_LD_AS_NEEDED
+
/* Define if your linker supports --eh-frame-hdr option. */
#undef HAVE_LD_EH_FRAME_HDR
diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c
index e25ece23030..bf39eec28a9 100644
--- a/gcc/config/alpha/alpha.c
+++ b/gcc/config/alpha/alpha.c
@@ -1,6 +1,6 @@
/* Subroutines used for code generation on the DEC Alpha.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
This file is part of GCC.
@@ -390,6 +390,9 @@ override_options (void)
warning ("trap mode not supported for VAX floats");
alpha_fptm = ALPHA_FPTM_SU;
}
+ if (target_flags_explicit & MASK_LONG_DOUBLE_128)
+ warning ("128-bit long double not supported for VAX floats");
+ target_flags &= ~MASK_LONG_DOUBLE_128;
}
{
@@ -1219,9 +1222,10 @@ aligned_memory_operand (rtx op, enum machine_mode mode)
}
}
- if (GET_CODE (op) != MEM
- || GET_MODE (op) != mode)
+ if (GET_CODE (op) != MEM)
return 0;
+ if (MEM_ALIGN (op) >= 32)
+ return 1;
op = XEXP (op, 0);
/* LEGITIMIZE_RELOAD_ADDRESS creates (plus (plus reg const_hi) const_lo)
@@ -1261,8 +1265,9 @@ unaligned_memory_operand (rtx op, enum machine_mode mode)
}
}
- if (GET_CODE (op) != MEM
- || GET_MODE (op) != mode)
+ if (GET_CODE (op) != MEM)
+ return 0;
+ if (MEM_ALIGN (op) >= 32)
return 0;
op = XEXP (op, 0);
@@ -1590,6 +1595,10 @@ alpha_in_small_data_p (tree exp)
if (TREE_CODE (exp) == STRING_CST)
return false;
+ /* Functions are never in the small data area. Duh. */
+ if (TREE_CODE (exp) == FUNCTION_DECL)
+ return false;
+
if (TREE_CODE (exp) == VAR_DECL && DECL_SECTION_NAME (exp))
{
const char *section = TREE_STRING_POINTER (DECL_SECTION_NAME (exp));
@@ -2501,7 +2510,14 @@ alpha_emit_set_const_1 (rtx target, enum machine_mode mode,
}
else if (n >= 2 + (extra != 0))
{
- temp = copy_to_suggested_reg (GEN_INT (high << 16), subtarget, mode);
+ if (no_new_pseudos)
+ {
+ emit_insn (gen_rtx_SET (VOIDmode, target, GEN_INT (high << 16)));
+ temp = target;
+ }
+ else
+ temp = copy_to_suggested_reg (GEN_INT (high << 16),
+ subtarget, mode);
/* As of 2002-02-23, addsi3 is only available when not optimizing.
This means that if we go through expand_binop, we'll try to
@@ -2876,13 +2892,24 @@ alpha_expand_mov_nobwx (enum machine_mode mode, rtx *operands)
{
rtx aligned_mem, bitnum;
rtx scratch = gen_reg_rtx (SImode);
+ rtx subtarget;
+ bool copyout;
get_aligned_mem (operands[1], &aligned_mem, &bitnum);
+ subtarget = operands[0];
+ if (GET_CODE (subtarget) == REG)
+ subtarget = gen_lowpart (DImode, subtarget), copyout = false;
+ else
+ subtarget = gen_reg_rtx (DImode), copyout = true;
+
emit_insn ((mode == QImode
? gen_aligned_loadqi
: gen_aligned_loadhi)
- (operands[0], aligned_mem, bitnum, scratch));
+ (subtarget, aligned_mem, bitnum, scratch));
+
+ if (copyout)
+ emit_move_insn (operands[0], gen_lowpart (mode, subtarget));
}
}
else
@@ -2891,16 +2918,28 @@ alpha_expand_mov_nobwx (enum machine_mode mode, rtx *operands)
code depend on parameter evaluation order which will cause
bootstrap failures. */
- rtx temp1 = gen_reg_rtx (DImode);
- rtx temp2 = gen_reg_rtx (DImode);
- rtx seq = ((mode == QImode
- ? gen_unaligned_loadqi
- : gen_unaligned_loadhi)
- (operands[0], get_unaligned_address (operands[1], 0),
- temp1, temp2));
+ rtx temp1, temp2, seq, subtarget;
+ bool copyout;
+
+ temp1 = gen_reg_rtx (DImode);
+ temp2 = gen_reg_rtx (DImode);
+
+ subtarget = operands[0];
+ if (GET_CODE (subtarget) == REG)
+ subtarget = gen_lowpart (DImode, subtarget), copyout = false;
+ else
+ subtarget = gen_reg_rtx (DImode), copyout = true;
+ seq = ((mode == QImode
+ ? gen_unaligned_loadqi
+ : gen_unaligned_loadhi)
+ (subtarget, get_unaligned_address (operands[1], 0),
+ temp1, temp2));
alpha_set_memflags (seq, operands[1]);
emit_insn (seq);
+
+ if (copyout)
+ emit_move_insn (operands[0], gen_lowpart (mode, subtarget));
}
return true;
}
@@ -5863,7 +5902,7 @@ function_arg (CUMULATIVE_ARGS cum, enum machine_mode mode, tree type,
else
{
#ifdef ENABLE_CHECKING
- /* With SPLIT_COMPLEX_ARGS, we shouldn't see any raw complex
+ /* With alpha_split_complex_arg, we shouldn't see any raw complex
values here. */
if (COMPLEX_MODE_P (mode))
abort ();
@@ -6080,6 +6119,15 @@ function_value (tree valtype, tree func ATTRIBUTE_UNUSED,
return gen_rtx_REG (mode, regnum);
}
+/* TCmode complex values are passed by invisible reference. We
+ should not split these values. */
+
+static bool
+alpha_split_complex_arg (tree type)
+{
+ return TYPE_MODE (type) != TCmode;
+}
+
static tree
alpha_build_builtin_va_list (void)
{
@@ -6703,13 +6751,10 @@ alpha_sa_mask (unsigned long *imaskP, unsigned long *fmaskP)
unsigned long fmask = 0;
unsigned int i;
- /* Irritatingly, there are two kinds of thunks -- those created with
- TARGET_ASM_OUTPUT_MI_THUNK and those with DECL_THUNK_P that go
- through the regular part of the compiler. In the
- TARGET_ASM_OUTPUT_MI_THUNK case we don't have valid register life
- info, but assemble_start_function wants to output .frame and
- .mask directives. */
- if (current_function_is_thunk && !no_new_pseudos)
+ /* When outputting a thunk, we don't have valid register life info,
+ but assemble_start_function wants to output .frame and .mask
+ directives. */
+ if (current_function_is_thunk)
{
*imaskP = 0;
*fmaskP = 0;
@@ -7147,15 +7192,14 @@ alpha_expand_prologue (void)
and subtract it to sp.
Yes, that's correct -- we have to reload the whole constant
- into a temporary via ldah+lda then subtract from sp. To
- ensure we get ldah+lda, we use a special pattern. */
+ into a temporary via ldah+lda then subtract from sp. */
HOST_WIDE_INT lo, hi;
lo = ((frame_size & 0xffff) ^ 0x8000) - 0x8000;
hi = frame_size - lo;
emit_move_insn (ptr, GEN_INT (hi));
- emit_insn (gen_nt_lda (ptr, GEN_INT (lo)));
+ emit_insn (gen_adddi3 (ptr, ptr, GEN_INT (lo)));
seq = emit_insn (gen_subdi3 (stack_pointer_rtx, stack_pointer_rtx,
ptr));
}
@@ -10203,6 +10247,8 @@ alpha_init_libfuncs (void)
#define TARGET_STRICT_ARGUMENT_NAMING hook_bool_CUMULATIVE_ARGS_true
#undef TARGET_PRETEND_OUTGOING_VARARGS_NAMED
#define TARGET_PRETEND_OUTGOING_VARARGS_NAMED hook_bool_CUMULATIVE_ARGS_true
+#undef TARGET_SPLIT_COMPLEX_ARG
+#define TARGET_SPLIT_COMPLEX_ARG alpha_split_complex_arg
#undef TARGET_BUILD_BUILTIN_VA_LIST
#define TARGET_BUILD_BUILTIN_VA_LIST alpha_build_builtin_va_list
diff --git a/gcc/config/alpha/alpha.h b/gcc/config/alpha/alpha.h
index 0eeb9de2616..d59797c103f 100644
--- a/gcc/config/alpha/alpha.h
+++ b/gcc/config/alpha/alpha.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler, for DEC Alpha.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
This file is part of GCC.
@@ -67,6 +67,8 @@ Boston, MA 02111-1307, USA. */
builtin_define ("_IEEE_FP"); \
if (TARGET_IEEE_WITH_INEXACT) \
builtin_define ("_IEEE_FP_INEXACT"); \
+ if (TARGET_LONG_DOUBLE_128) \
+ builtin_define ("__LONG_DOUBLE_128__"); \
\
/* Macros dependent on the C dialect. */ \
SUBTARGET_LANGUAGE_CPP_BUILTINS(); \
@@ -229,6 +231,11 @@ extern int alpha_tls_size;
#define MASK_SMALL_TEXT (1 << 15)
#define TARGET_SMALL_TEXT (target_flags & MASK_SMALL_TEXT)
+/* This means use IEEE quad-format for long double. Assumes the
+ presence of the GEM support library routines. */
+#define MASK_LONG_DOUBLE_128 (1 << 16)
+#define TARGET_LONG_DOUBLE_128 (target_flags & MASK_LONG_DOUBLE_128)
+
/* This means that the processor is an EV5, EV56, or PCA56.
Unlike alpha_cpu this is not affected by -mtune= setting. */
#define MASK_CPU_EV5 (1 << 28)
@@ -261,7 +268,7 @@ extern int alpha_tls_size;
#define TARGET_CAN_FAULT_IN_PROLOGUE 0
#endif
#ifndef TARGET_HAS_XFLOATING_LIBS
-#define TARGET_HAS_XFLOATING_LIBS 0
+#define TARGET_HAS_XFLOATING_LIBS TARGET_LONG_DOUBLE_128
#endif
#ifndef TARGET_PROFILING_NEEDS_GP
#define TARGET_PROFILING_NEEDS_GP 0
@@ -322,6 +329,10 @@ extern int alpha_tls_size;
{"large-text", -MASK_SMALL_TEXT, ""}, \
{"tls-kernel", MASK_TLS_KERNEL, \
N_("Emit rdval instead of rduniq for thread pointer")}, \
+ {"long-double-128", MASK_LONG_DOUBLE_128, \
+ N_("Use 128-bit long double")}, \
+ {"long-double-64", -MASK_LONG_DOUBLE_128, \
+ N_("Use 64-bit long double")}, \
{"", TARGET_DEFAULT | TARGET_CPU_DEFAULT \
| TARGET_DEFAULT_EXPLICIT_RELOCS, ""} }
@@ -438,7 +449,18 @@ extern const char *alpha_tls_size_string; /* For -mtls-size= */
#define FLOAT_TYPE_SIZE 32
#define DOUBLE_TYPE_SIZE 64
-#define LONG_DOUBLE_TYPE_SIZE 64
+#define LONG_DOUBLE_TYPE_SIZE (TARGET_LONG_DOUBLE_128 ? 128 : 64)
+
+/* Define this to set long double type size to use in libgcc2.c, which can
+ not depend on target_flags. */
+#ifdef __LONG_DOUBLE_128__
+#define LIBGCC2_LONG_DOUBLE_TYPE_SIZE 128
+#else
+#define LIBGCC2_LONG_DOUBLE_TYPE_SIZE 64
+#endif
+
+/* Work around target_flags dependency in ada/targtyps.c. */
+#define WIDEST_HARDWARE_FP_SIZE 64
#define WCHAR_TYPE "unsigned int"
#define WCHAR_TYPE_SIZE 32
@@ -490,7 +512,7 @@ extern const char *alpha_tls_size_string; /* For -mtls-size= */
#define PARM_BOUNDARY 64
/* Boundary (in *bits*) on which stack pointer should be aligned. */
-#define STACK_BOUNDARY 64
+#define STACK_BOUNDARY 128
/* Allocation boundary (in *bits*) for the code of a function. */
#define FUNCTION_BOUNDARY 32
@@ -614,12 +636,11 @@ extern const char *alpha_tls_size_string; /* For -mtls-size= */
/* Value is 1 if hard register REGNO can hold a value of machine-mode MODE.
On Alpha, the integer registers can hold any mode. The floating-point
- registers can hold 32-bit and 64-bit integers as well, but not 16-bit
- or 8-bit values. */
+ registers can hold 64-bit integers as well, but not smaller values. */
#define HARD_REGNO_MODE_OK(REGNO, MODE) \
((REGNO) >= 32 && (REGNO) <= 62 \
- ? GET_MODE_UNIT_SIZE (MODE) == 8 || GET_MODE_UNIT_SIZE (MODE) == 4 \
+ ? (MODE) == SFmode || (MODE) == DFmode || (MODE) == DImode \
: 1)
/* Value is 1 if MODE is a supported vector mode. */
@@ -1003,7 +1024,8 @@ extern int alpha_memory_latency;
for a call to a function whose data type is FNTYPE.
For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) (CUM) = 0
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
+ (CUM) = 0
/* Define intermediate macro to compute the size (in registers) of an argument
for the Alpha. */
@@ -1817,6 +1839,3 @@ do { \
/* Generate calls to memcpy, etc., not bcopy, etc. */
#define TARGET_MEM_FUNCTIONS 1
-
-/* Pass complex arguments independently. */
-#define SPLIT_COMPLEX_ARGS 1
diff --git a/gcc/config/alpha/alpha.md b/gcc/config/alpha/alpha.md
index 6c25d67dff9..998e30055ae 100644
--- a/gcc/config/alpha/alpha.md
+++ b/gcc/config/alpha/alpha.md
@@ -1,6 +1,6 @@
;; Machine description for DEC Alpha for GNU C compiler
;; Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-;; 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+;; 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
;; Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
;;
;; This file is part of GCC.
@@ -30,7 +30,7 @@
(UNSPEC_INSXH 2)
(UNSPEC_MSKXH 3)
(UNSPEC_CVTQL 4)
- (UNSPEC_NT_LDA 5)
+ (UNSPEC_CVTLQ 5)
(UNSPEC_UMK_LAUM 6)
(UNSPEC_UMK_LALM 7)
(UNSPEC_UMK_LAL 8)
@@ -185,41 +185,36 @@
""
"")
-(define_insn "*extendsidi2_nofix"
- [(set (match_operand:DI 0 "register_operand" "=r,r,*f,?*f")
- (sign_extend:DI
- (match_operand:SI 1 "nonimmediate_operand" "r,m,*f,m")))]
- "! TARGET_FIX"
- "@
- addl $31,%1,%0
- ldl %0,%1
- cvtlq %1,%0
- lds %0,%1\;cvtlq %0,%0"
- [(set_attr "type" "iadd,ild,fadd,fld")
- (set_attr "length" "*,*,*,8")])
+(define_insn "*cvtlq"
+ [(set (match_operand:DI 0 "register_operand" "=f")
+ (unspec:DI [(match_operand:SF 1 "reg_or_0_operand" "fG")]
+ UNSPEC_CVTLQ))]
+ ""
+ "cvtlq %1,%0"
+ [(set_attr "type" "fadd")])
-(define_insn "*extendsidi2_fix"
- [(set (match_operand:DI 0 "register_operand" "=r,r,r,?*f,?*f")
+(define_insn "*extendsidi2_1"
+ [(set (match_operand:DI 0 "register_operand" "=r,r,!*f")
(sign_extend:DI
- (match_operand:SI 1 "nonimmediate_operand" "r,m,*f,*f,m")))]
- "TARGET_FIX"
+ (match_operand:SI 1 "nonimmediate_operand" "r,m,m")))]
+ ""
"@
addl $31,%1,%0
ldl %0,%1
- ftois %1,%0
- cvtlq %1,%0
lds %0,%1\;cvtlq %0,%0"
- [(set_attr "type" "iadd,ild,ftoi,fadd,fld")
- (set_attr "length" "*,*,*,*,8")])
+ [(set_attr "type" "iadd,ild,fld")
+ (set_attr "length" "*,*,8")])
-;; Due to issues with CLASS_CANNOT_CHANGE_SIZE, we cannot use a subreg here.
(define_split
[(set (match_operand:DI 0 "hard_fp_register_operand" "")
(sign_extend:DI (match_operand:SI 1 "memory_operand" "")))]
"reload_completed"
[(set (match_dup 2) (match_dup 1))
- (set (match_dup 0) (sign_extend:DI (match_dup 2)))]
- "operands[2] = gen_rtx_REG (SImode, REGNO (operands[0]));")
+ (set (match_dup 0) (unspec:DI [(match_dup 2)] UNSPEC_CVTLQ))]
+{
+ operands[1] = adjust_address (operands[1], SFmode, 0);
+ operands[2] = gen_rtx_REG (SFmode, REGNO (operands[0]));
+})
;; Optimize sign-extension of SImode loads. This shows up in the wake of
;; reload when converting fp->int.
@@ -235,28 +230,6 @@
(sign_extend:DI (match_dup 1)))]
"")
-(define_peephole2
- [(set (match_operand:SI 0 "hard_int_register_operand" "")
- (match_operand:SI 1 "hard_fp_register_operand" ""))
- (set (match_operand:DI 2 "hard_int_register_operand" "")
- (sign_extend:DI (match_dup 0)))]
- "TARGET_FIX
- && (true_regnum (operands[0]) == true_regnum (operands[2])
- || peep2_reg_dead_p (2, operands[0]))"
- [(set (match_dup 2)
- (sign_extend:DI (match_dup 1)))]
- "")
-
-(define_peephole2
- [(set (match_operand:DI 0 "hard_fp_register_operand" "")
- (sign_extend:DI (match_operand:SI 1 "hard_fp_register_operand" "")))
- (set (match_operand:DI 2 "hard_int_register_operand" "")
- (match_dup 0))]
- "TARGET_FIX && peep2_reg_dead_p (2, operands[0])"
- [(set (match_dup 2)
- (sign_extend:DI (match_dup 1)))]
- "")
-
;; Don't say we have addsi3 if optimizing. This generates better code. We
;; have the anonymous addsi3 pattern below in case combine wants to make it.
(define_expand "addsi3"
@@ -2334,8 +2307,8 @@
;; processing, it is cheaper to do the truncation in the int regs.
(define_insn "*cvtql"
- [(set (match_operand:SI 0 "register_operand" "=f")
- (unspec:SI [(match_operand:DI 1 "reg_or_0_operand" "fG")]
+ [(set (match_operand:SF 0 "register_operand" "=f")
+ (unspec:SF [(match_operand:DI 1 "reg_or_0_operand" "fG")]
UNSPEC_CVTQL))]
"TARGET_FP"
"cvtql%/ %R1,%0"
@@ -2349,14 +2322,16 @@
(match_operator:DI 4 "fix_operator"
[(match_operand:DF 1 "reg_or_0_operand" "fG")]) 0))
(clobber (match_scratch:DI 2 "=&f"))
- (clobber (match_scratch:SI 3 "=&f"))]
+ (clobber (match_scratch:SF 3 "=&f"))]
"TARGET_FP && alpha_fptm >= ALPHA_FPTM_SU"
"#"
"&& reload_completed"
[(set (match_dup 2) (match_op_dup 4 [(match_dup 1)]))
- (set (match_dup 3) (unspec:SI [(match_dup 2)] UNSPEC_CVTQL))
- (set (match_dup 0) (match_dup 3))]
- ""
+ (set (match_dup 3) (unspec:SF [(match_dup 2)] UNSPEC_CVTQL))
+ (set (match_dup 5) (match_dup 3))]
+{
+ operands[5] = adjust_address (operands[0], SFmode, 0);
+}
[(set_attr "type" "fadd")
(set_attr "trap" "yes")])
@@ -2370,10 +2345,12 @@
"#"
"&& reload_completed"
[(set (match_dup 2) (match_op_dup 3 [(match_dup 1)]))
- (set (match_dup 4) (unspec:SI [(match_dup 2)] UNSPEC_CVTQL))
- (set (match_dup 0) (match_dup 4))]
- ;; Due to REG_CANNOT_CHANGE_SIZE issues, we cannot simply use SUBREG.
- "operands[4] = gen_rtx_REG (SImode, REGNO (operands[2]));"
+ (set (match_dup 4) (unspec:SF [(match_dup 2)] UNSPEC_CVTQL))
+ (set (match_dup 5) (match_dup 4))]
+{
+ operands[4] = gen_rtx_REG (SFmode, REGNO (operands[2]));
+ operands[5] = adjust_address (operands[0], SFmode, 0);
+}
[(set_attr "type" "fadd")
(set_attr "trap" "yes")])
@@ -2420,14 +2397,16 @@
[(float_extend:DF
(match_operand:SF 1 "reg_or_0_operand" "fG"))]) 0))
(clobber (match_scratch:DI 2 "=&f"))
- (clobber (match_scratch:SI 3 "=&f"))]
+ (clobber (match_scratch:SF 3 "=&f"))]
"TARGET_FP && alpha_fptm >= ALPHA_FPTM_SU"
"#"
"&& reload_completed"
[(set (match_dup 2) (match_op_dup 4 [(float_extend:DF (match_dup 1))]))
- (set (match_dup 3) (unspec:SI [(match_dup 2)] UNSPEC_CVTQL))
- (set (match_dup 0) (match_dup 3))]
- ""
+ (set (match_dup 3) (unspec:SF [(match_dup 2)] UNSPEC_CVTQL))
+ (set (match_dup 5) (match_dup 3))]
+{
+ operands[5] = adjust_address (operands[0], SFmode, 0);
+}
[(set_attr "type" "fadd")
(set_attr "trap" "yes")])
@@ -2442,10 +2421,12 @@
"#"
"&& reload_completed"
[(set (match_dup 2) (match_op_dup 3 [(float_extend:DF (match_dup 1))]))
- (set (match_dup 4) (unspec:SI [(match_dup 2)] UNSPEC_CVTQL))
- (set (match_dup 0) (match_dup 4))]
- ;; Due to REG_CANNOT_CHANGE_SIZE issues, we cannot simply use SUBREG.
- "operands[4] = gen_rtx_REG (SImode, REGNO (operands[2]));"
+ (set (match_dup 4) (unspec:SF [(match_dup 2)] UNSPEC_CVTQL))
+ (set (match_dup 5) (match_dup 4))]
+{
+ operands[4] = gen_rtx_REG (SFmode, REGNO (operands[2]));
+ operands[5] = adjust_address (operands[0], SFmode, 0);
+}
[(set_attr "type" "fadd")
(set_attr "trap" "yes")])
@@ -2516,6 +2497,35 @@
(set_attr "round_suffix" "normal")
(set_attr "trap_suffix" "sui")])
+(define_insn_and_split "*floatsisf2_ieee"
+ [(set (match_operand:SF 0 "register_operand" "=&f")
+ (float:SF (match_operand:SI 1 "memory_operand" "m")))
+ (clobber (match_scratch:DI 2 "=&f"))
+ (clobber (match_scratch:SF 3 "=&f"))]
+ "TARGET_FP && alpha_fptm >= ALPHA_FPTM_SU"
+ "#"
+ "&& reload_completed"
+ [(set (match_dup 3) (match_dup 1))
+ (set (match_dup 2) (unspec:DI [(match_dup 3)] UNSPEC_CVTLQ))
+ (set (match_dup 0) (float:SF (match_dup 2)))]
+{
+ operands[1] = adjust_address (operands[1], SFmode, 0);
+})
+
+(define_insn_and_split "*floatsisf2"
+ [(set (match_operand:SF 0 "register_operand" "=f")
+ (float:SF (match_operand:SI 1 "memory_operand" "m")))]
+ "TARGET_FP"
+ "#"
+ "&& reload_completed"
+ [(set (match_dup 0) (match_dup 1))
+ (set (match_dup 2) (unspec:DI [(match_dup 0)] UNSPEC_CVTLQ))
+ (set (match_dup 0) (float:SF (match_dup 2)))]
+{
+ operands[1] = adjust_address (operands[1], SFmode, 0);
+ operands[2] = gen_rtx_REG (DImode, REGNO (operands[0]));
+})
+
(define_insn "*floatdidf_ieee"
[(set (match_operand:DF 0 "register_operand" "=&f")
(float:DF (match_operand:DI 1 "reg_no_subreg_operand" "f")))]
@@ -2536,6 +2546,36 @@
(set_attr "round_suffix" "normal")
(set_attr "trap_suffix" "sui")])
+(define_insn_and_split "*floatsidf2_ieee"
+ [(set (match_operand:DF 0 "register_operand" "=&f")
+ (float:DF (match_operand:SI 1 "memory_operand" "m")))
+ (clobber (match_scratch:DI 2 "=&f"))
+ (clobber (match_scratch:SF 3 "=&f"))]
+ "TARGET_FP && alpha_fptm >= ALPHA_FPTM_SU"
+ "#"
+ "&& reload_completed"
+ [(set (match_dup 3) (match_dup 1))
+ (set (match_dup 2) (unspec:DI [(match_dup 3)] UNSPEC_CVTLQ))
+ (set (match_dup 0) (float:DF (match_dup 2)))]
+{
+ operands[1] = adjust_address (operands[1], SFmode, 0);
+})
+
+(define_insn_and_split "*floatsidf2"
+ [(set (match_operand:DF 0 "register_operand" "=f")
+ (float:DF (match_operand:SI 1 "memory_operand" "m")))]
+ "TARGET_FP"
+ "#"
+ "&& reload_completed"
+ [(set (match_dup 3) (match_dup 1))
+ (set (match_dup 2) (unspec:DI [(match_dup 3)] UNSPEC_CVTLQ))
+ (set (match_dup 0) (float:DF (match_dup 2)))]
+{
+ operands[1] = adjust_address (operands[1], SFmode, 0);
+ operands[2] = gen_rtx_REG (DImode, REGNO (operands[0]));
+ operands[3] = gen_rtx_REG (SFmode, REGNO (operands[0]));
+})
+
(define_expand "floatditf2"
[(use (match_operand:TF 0 "register_operand" ""))
(use (match_operand:DI 1 "general_operand" ""))]
@@ -4678,7 +4718,8 @@
(clobber (reg:DI 26))])]
"TARGET_EXPLICIT_RELOCS && TARGET_ABI_OSF && reload_completed
&& ! samegp_function_operand (operands[0], Pmode)
- && peep2_regno_dead_p (1, 29)"
+ && (peep2_regno_dead_p (1, 29)
+ || find_reg_note (insn, REG_NORETURN, NULL_RTX))"
[(parallel [(call (mem:DI (match_dup 2))
(match_dup 1))
(set (reg:DI 26) (plus:DI (pc) (const_int 4)))
@@ -4708,7 +4749,8 @@
(clobber (reg:DI 26))])]
"TARGET_EXPLICIT_RELOCS && TARGET_ABI_OSF && reload_completed
&& ! samegp_function_operand (operands[0], Pmode)
- && ! peep2_regno_dead_p (1, 29)"
+ && ! (peep2_regno_dead_p (1, 29)
+ || find_reg_note (insn, REG_NORETURN, NULL_RTX))"
[(parallel [(call (mem:DI (match_dup 2))
(match_dup 1))
(set (reg:DI 26) (plus:DI (pc) (const_int 4)))
@@ -5166,27 +5208,10 @@
operands[1] = force_reg (TFmode, operands[1]);
})
-(define_insn "*movsi_nofix"
- [(set (match_operand:SI 0 "nonimmediate_operand" "=r,r,r,r,m,*f,*f,m")
- (match_operand:SI 1 "input_operand" "rJ,K,L,m,rJ,*fJ,m,*f"))]
- "(TARGET_ABI_OSF || TARGET_ABI_UNICOSMK) && ! TARGET_FIX
- && (register_operand (operands[0], SImode)
- || reg_or_0_operand (operands[1], SImode))"
- "@
- bis $31,%r1,%0
- lda %0,%1($31)
- ldah %0,%h1($31)
- ldl %0,%1
- stl %r1,%0
- cpys %R1,%R1,%0
- ld%, %0,%1
- st%, %R1,%0"
- [(set_attr "type" "ilog,iadd,iadd,ild,ist,fcpys,fld,fst")])
-
-(define_insn "*movsi_fix"
- [(set (match_operand:SI 0 "nonimmediate_operand" "=r,r,r,r,m,*f,*f,m,r,*f")
- (match_operand:SI 1 "input_operand" "rJ,K,L,m,rJ,*fJ,m,*f,*f,r"))]
- "TARGET_ABI_OSF && TARGET_FIX
+(define_insn "*movsi"
+ [(set (match_operand:SI 0 "nonimmediate_operand" "=r,r,r,r,m")
+ (match_operand:SI 1 "input_operand" "rJ,K,L,m,rJ"))]
+ "(TARGET_ABI_OSF || TARGET_ABI_UNICOSMK)
&& (register_operand (operands[0], SImode)
|| reg_or_0_operand (operands[1], SImode))"
"@
@@ -5194,38 +5219,13 @@
lda %0,%1($31)
ldah %0,%h1($31)
ldl %0,%1
- stl %r1,%0
- cpys %R1,%R1,%0
- ld%, %0,%1
- st%, %R1,%0
- ftois %1,%0
- itofs %1,%0"
- [(set_attr "type" "ilog,iadd,iadd,ild,ist,fcpys,fld,fst,ftoi,itof")])
-
-(define_insn "*movsi_nt_vms_nofix"
- [(set (match_operand:SI 0 "nonimmediate_operand" "=r,r,r,r,r,m,*f,*f,m")
- (match_operand:SI 1 "input_operand" "rJ,K,L,s,m,rJ,*fJ,m,*f"))]
- "(TARGET_ABI_WINDOWS_NT || TARGET_ABI_OPEN_VMS)
- && !TARGET_FIX
- && (register_operand (operands[0], SImode)
- || reg_or_0_operand (operands[1], SImode))"
- "@
- bis $31,%1,%0
- lda %0,%1
- ldah %0,%h1
- lda %0,%1
- ldl %0,%1
- stl %r1,%0
- cpys %R1,%R1,%0
- ld%, %0,%1
- st%, %R1,%0"
- [(set_attr "type" "ilog,iadd,iadd,ldsym,ild,ist,fcpys,fld,fst")])
+ stl %r1,%0"
+ [(set_attr "type" "ilog,iadd,iadd,ild,ist")])
-(define_insn "*movsi_nt_vms_fix"
- [(set (match_operand:SI 0 "nonimmediate_operand" "=r,r,r,r,r,m,*f,*f,m,r,*f")
- (match_operand:SI 1 "input_operand" "rJ,K,L,s,m,rJ,*fJ,m,*f,*f,r"))]
+(define_insn "*movsi_nt_vms"
+ [(set (match_operand:SI 0 "nonimmediate_operand" "=r,r,r,r,r,m")
+ (match_operand:SI 1 "input_operand" "rJ,K,L,s,m,rJ"))]
"(TARGET_ABI_WINDOWS_NT || TARGET_ABI_OPEN_VMS)
- && TARGET_FIX
&& (register_operand (operands[0], SImode)
|| reg_or_0_operand (operands[1], SImode))"
"@
@@ -5234,13 +5234,8 @@
ldah %0,%h1
lda %0,%1
ldl %0,%1
- stl %r1,%0
- cpys %R1,%R1,%0
- ld%, %0,%1
- st%, %R1,%0
- ftois %1,%0
- itofs %1,%0"
- [(set_attr "type" "ilog,iadd,iadd,ldsym,ild,ist,fcpys,fld,fst,ftoi,itof")])
+ stl %r1,%0"
+ [(set_attr "type" "ilog,iadd,iadd,ldsym,ild,ist")])
(define_insn "*movhi_nobwx"
[(set (match_operand:HI 0 "register_operand" "=r,r")
@@ -5715,7 +5710,7 @@
(define_expand "aligned_loadqi"
[(set (match_operand:SI 3 "register_operand" "")
(match_operand:SI 1 "memory_operand" ""))
- (set (subreg:DI (match_operand:QI 0 "register_operand" "") 0)
+ (set (match_operand:DI 0 "register_operand" "")
(zero_extract:DI (subreg:DI (match_dup 3) 0)
(const_int 8)
(match_operand:DI 2 "const_int_operand" "")))]
@@ -5726,7 +5721,7 @@
(define_expand "aligned_loadhi"
[(set (match_operand:SI 3 "register_operand" "")
(match_operand:SI 1 "memory_operand" ""))
- (set (subreg:DI (match_operand:HI 0 "register_operand" "") 0)
+ (set (match_operand:DI 0 "register_operand" "")
(zero_extract:DI (subreg:DI (match_dup 3) 0)
(const_int 16)
(match_operand:DI 2 "const_int_operand" "")))]
@@ -5742,7 +5737,7 @@
;; operand 3 can overlap the input and output registers.
(define_expand "unaligned_loadqi"
- [(use (match_operand:QI 0 "register_operand" ""))
+ [(use (match_operand:DI 0 "register_operand" ""))
(use (match_operand:DI 1 "address_operand" ""))
(use (match_operand:DI 2 "register_operand" ""))
(use (match_operand:DI 3 "register_operand" ""))]
@@ -5763,7 +5758,7 @@
(const_int -8))))
(set (match_operand:DI 3 "register_operand" "")
(match_dup 1))
- (set (subreg:DI (match_operand:QI 0 "register_operand" "") 0)
+ (set (match_operand:DI 0 "register_operand" "")
(zero_extract:DI (match_dup 2)
(const_int 8)
(ashift:DI (match_dup 3) (const_int 3))))]
@@ -5776,7 +5771,7 @@
(const_int -8))))
(set (match_operand:DI 3 "register_operand" "")
(match_dup 1))
- (set (subreg:DI (match_operand:QI 0 "register_operand" "") 0)
+ (set (match_operand:DI 0 "register_operand" "")
(zero_extract:DI (match_dup 2)
(const_int 8)
(minus:DI
@@ -5786,7 +5781,7 @@
"")
(define_expand "unaligned_loadhi"
- [(use (match_operand:QI 0 "register_operand" ""))
+ [(use (match_operand:DI 0 "register_operand" ""))
(use (match_operand:DI 1 "address_operand" ""))
(use (match_operand:DI 2 "register_operand" ""))
(use (match_operand:DI 3 "register_operand" ""))]
@@ -5807,7 +5802,7 @@
(const_int -8))))
(set (match_operand:DI 3 "register_operand" "")
(match_dup 1))
- (set (subreg:DI (match_operand:QI 0 "register_operand" "") 0)
+ (set (match_operand:DI 0 "register_operand" "")
(zero_extract:DI (match_dup 2)
(const_int 16)
(ashift:DI (match_dup 3) (const_int 3))))]
@@ -5820,7 +5815,7 @@
(const_int -8))))
(set (match_operand:DI 3 "register_operand" "")
(plus:DI (match_dup 1) (const_int 1)))
- (set (subreg:DI (match_operand:QI 0 "register_operand" "") 0)
+ (set (match_operand:DI 0 "register_operand" "")
(zero_extract:DI (match_dup 2)
(const_int 16)
(minus:DI
@@ -6015,9 +6010,6 @@
{
rtx scratch, seq;
- if (GET_CODE (operands[1]) != MEM)
- abort ();
-
if (aligned_memory_operand (operands[1], QImode))
{
seq = gen_reload_inqi_help (operands[0], operands[1],
@@ -6036,8 +6028,8 @@
scratch = gen_rtx_REG (DImode, REGNO (operands[2]));
addr = get_unaligned_address (operands[1], 0);
- seq = gen_unaligned_loadqi (operands[0], addr, scratch,
- gen_rtx_REG (DImode, REGNO (operands[0])));
+ operands[0] = gen_rtx_REG (DImode, REGNO (operands[0]));
+ seq = gen_unaligned_loadqi (operands[0], addr, scratch, operands[0]);
alpha_set_memflags (seq, operands[1]);
}
emit_insn (seq);
@@ -6052,9 +6044,6 @@
{
rtx scratch, seq;
- if (GET_CODE (operands[1]) != MEM)
- abort ();
-
if (aligned_memory_operand (operands[1], HImode))
{
seq = gen_reload_inhi_help (operands[0], operands[1],
@@ -6073,8 +6062,8 @@
scratch = gen_rtx_REG (DImode, REGNO (operands[2]));
addr = get_unaligned_address (operands[1], 0);
- seq = gen_unaligned_loadhi (operands[0], addr, scratch,
- gen_rtx_REG (DImode, REGNO (operands[0])));
+ operands[0] = gen_rtx_REG (DImode, REGNO (operands[0]));
+ seq = gen_unaligned_loadhi (operands[0], addr, scratch, operands[0]);
alpha_set_memflags (seq, operands[1]);
}
emit_insn (seq);
@@ -6087,9 +6076,6 @@
(match_operand:TI 2 "register_operand" "=&r")])]
"! TARGET_BWX"
{
- if (GET_CODE (operands[0]) != MEM)
- abort ();
-
if (aligned_memory_operand (operands[0], QImode))
{
emit_insn (gen_reload_outqi_help
@@ -6122,9 +6108,6 @@
(match_operand:TI 2 "register_operand" "=&r")])]
"! TARGET_BWX"
{
- if (GET_CODE (operands[0]) != MEM)
- abort ();
-
if (aligned_memory_operand (operands[0], HImode))
{
emit_insn (gen_reload_outhi_help
@@ -6155,71 +6138,47 @@
;; always get a proper address for a stack slot during reload_foo
;; expansion, so we must delay our address manipulations until after.
-(define_insn "reload_inqi_help"
+(define_insn_and_split "reload_inqi_help"
[(set (match_operand:QI 0 "register_operand" "=r")
(match_operand:QI 1 "memory_operand" "m"))
(clobber (match_operand:SI 2 "register_operand" "=r"))]
"! TARGET_BWX && (reload_in_progress || reload_completed)"
- "#")
-
-(define_insn "reload_inhi_help"
- [(set (match_operand:HI 0 "register_operand" "=r")
- (match_operand:HI 1 "memory_operand" "m"))
- (clobber (match_operand:SI 2 "register_operand" "=r"))]
- "! TARGET_BWX && (reload_in_progress || reload_completed)"
- "#")
-
-(define_insn "reload_outqi_help"
- [(set (match_operand:QI 0 "memory_operand" "=m")
- (match_operand:QI 1 "register_operand" "r"))
- (clobber (match_operand:SI 2 "register_operand" "=r"))
- (clobber (match_operand:SI 3 "register_operand" "=r"))]
- "! TARGET_BWX && (reload_in_progress || reload_completed)"
- "#")
-
-(define_insn "reload_outhi_help"
- [(set (match_operand:HI 0 "memory_operand" "=m")
- (match_operand:HI 1 "register_operand" "r"))
- (clobber (match_operand:SI 2 "register_operand" "=r"))
- (clobber (match_operand:SI 3 "register_operand" "=r"))]
- "! TARGET_BWX && (reload_in_progress || reload_completed)"
- "#")
-
-(define_split
- [(set (match_operand:QI 0 "register_operand" "")
- (match_operand:QI 1 "memory_operand" ""))
- (clobber (match_operand:SI 2 "register_operand" ""))]
+ "#"
"! TARGET_BWX && reload_completed"
[(const_int 0)]
{
rtx aligned_mem, bitnum;
get_aligned_mem (operands[1], &aligned_mem, &bitnum);
-
+ operands[0] = gen_lowpart (DImode, operands[0]);
emit_insn (gen_aligned_loadqi (operands[0], aligned_mem, bitnum,
operands[2]));
DONE;
})
-(define_split
- [(set (match_operand:HI 0 "register_operand" "")
- (match_operand:HI 1 "memory_operand" ""))
- (clobber (match_operand:SI 2 "register_operand" ""))]
+(define_insn_and_split "reload_inhi_help"
+ [(set (match_operand:HI 0 "register_operand" "=r")
+ (match_operand:HI 1 "memory_operand" "m"))
+ (clobber (match_operand:SI 2 "register_operand" "=r"))]
+ "! TARGET_BWX && (reload_in_progress || reload_completed)"
+ "#"
"! TARGET_BWX && reload_completed"
[(const_int 0)]
{
rtx aligned_mem, bitnum;
get_aligned_mem (operands[1], &aligned_mem, &bitnum);
-
+ operands[0] = gen_lowpart (DImode, operands[0]);
emit_insn (gen_aligned_loadhi (operands[0], aligned_mem, bitnum,
operands[2]));
DONE;
})
-(define_split
- [(set (match_operand:QI 0 "memory_operand" "")
- (match_operand:QI 1 "register_operand" ""))
- (clobber (match_operand:SI 2 "register_operand" ""))
- (clobber (match_operand:SI 3 "register_operand" ""))]
+(define_insn_and_split "reload_outqi_help"
+ [(set (match_operand:QI 0 "memory_operand" "=m")
+ (match_operand:QI 1 "register_operand" "r"))
+ (clobber (match_operand:SI 2 "register_operand" "=r"))
+ (clobber (match_operand:SI 3 "register_operand" "=r"))]
+ "! TARGET_BWX && (reload_in_progress || reload_completed)"
+ "#"
"! TARGET_BWX && reload_completed"
[(const_int 0)]
{
@@ -6230,11 +6189,13 @@
DONE;
})
-(define_split
- [(set (match_operand:HI 0 "memory_operand" "")
- (match_operand:HI 1 "register_operand" ""))
- (clobber (match_operand:SI 2 "register_operand" ""))
- (clobber (match_operand:SI 3 "register_operand" ""))]
+(define_insn_and_split "reload_outhi_help"
+ [(set (match_operand:HI 0 "memory_operand" "=m")
+ (match_operand:HI 1 "register_operand" "r"))
+ (clobber (match_operand:SI 2 "register_operand" "=r"))
+ (clobber (match_operand:SI 3 "register_operand" "=r"))]
+ "! TARGET_BWX && (reload_in_progress || reload_completed)"
+ "#"
"! TARGET_BWX && reload_completed"
[(const_int 0)]
{
@@ -6901,17 +6862,6 @@
DONE;
})
-;; In creating a large stack frame, NT _must_ use ldah+lda to load
-;; the frame size into a register. We use this pattern to ensure
-;; we get lda instead of addq.
-(define_insn "nt_lda"
- [(set (match_operand:DI 0 "register_operand" "=r")
- (unspec:DI [(match_dup 0)
- (match_operand:DI 1 "const_int_operand" "n")]
- UNSPEC_NT_LDA))]
- ""
- "lda %0,%1(%0)")
-
(define_expand "builtin_longjmp"
[(use (match_operand:DI 0 "register_operand" "r"))]
"TARGET_ABI_OSF"
@@ -7913,7 +7863,8 @@
(clobber (reg:DI 26))])]
"TARGET_EXPLICIT_RELOCS && TARGET_ABI_OSF && reload_completed
&& ! samegp_function_operand (operands[1], Pmode)
- && peep2_regno_dead_p (1, 29)"
+ && (peep2_regno_dead_p (1, 29)
+ || find_reg_note (insn, REG_NORETURN, NULL_RTX))"
[(parallel [(set (match_dup 0)
(call (mem:DI (match_dup 3))
(match_dup 2)))
@@ -7945,7 +7896,8 @@
(clobber (reg:DI 26))])]
"TARGET_EXPLICIT_RELOCS && TARGET_ABI_OSF && reload_completed
&& ! samegp_function_operand (operands[1], Pmode)
- && ! peep2_regno_dead_p (1, 29)"
+ && ! (peep2_regno_dead_p (1, 29)
+ || find_reg_note (insn, REG_NORETURN, NULL_RTX))"
[(parallel [(set (match_dup 0)
(call (mem:DI (match_dup 3))
(match_dup 2)))
diff --git a/gcc/config/alpha/freebsd.h b/gcc/config/alpha/freebsd.h
index 59b2dea9ce7..6bbd617d96d 100644
--- a/gcc/config/alpha/freebsd.h
+++ b/gcc/config/alpha/freebsd.h
@@ -20,12 +20,15 @@ the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
+#define SUBTARGET_EXTRA_SPECS \
+ { "fbsd_dynamic_linker", FBSD_DYNAMIC_LINKER }
+
/* Provide a FBSD_TARGET_CPU_CPP_BUILTINS and CPP_SPEC appropriate for
FreeBSD/alpha. Besides the dealing with
the GCC option `-posix', and PIC issues as on all FreeBSD platforms, we must
deal with the Alpha's FP issues. */
-#undef FBSD_TARGET_CPU_CPP_BUILTINS
+#undef FBSD_TARGET_CPU_CPP_BUILTINS
#define FBSD_TARGET_CPU_CPP_BUILTINS() \
do \
{ \
@@ -45,12 +48,12 @@ Boston, MA 02111-1307, USA. */
%{Wl,*:%*} \
%{assert*} %{R*} %{rpath*} %{defsym*} \
%{shared:-Bshareable %{h*} %{soname*}} \
- %{symbolic:-Bsymbolic} \
%{!shared: \
%{!static: \
%{rdynamic:-export-dynamic} \
- %{!dynamic-linker:-dynamic-linker /usr/libexec/ld-elf.so.1}} \
- %{static:-Bstatic}}"
+ %{!dynamic-linker:-dynamic-linker %(fbsd_dynamic_linker) }} \
+ %{static:-Bstatic}} \
+ %{symbolic:-Bsymbolic}"
/************************[ Target stuff ]***********************************/
diff --git a/gcc/config/alpha/osf5.h b/gcc/config/alpha/osf5.h
index 7bd92629035..e96ae7e2212 100644
--- a/gcc/config/alpha/osf5.h
+++ b/gcc/config/alpha/osf5.h
@@ -1,5 +1,5 @@
/* Definitions of target machine for GNU compiler, for DEC Alpha on Tru64 5.
- Copyright (C) 2000, 2001 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -19,11 +19,8 @@
Boston, MA 02111-1307, USA. */
/* Tru64 5.1 uses IEEE QUAD format. */
-/* ??? However, since there is no support for VAX H_floating, we must
- drop back to a 64-bit long double to avoid a crash looking for the
- format associated with TFmode. */
-#undef LONG_DOUBLE_TYPE_SIZE
-#define LONG_DOUBLE_TYPE_SIZE (TARGET_FLOAT_VAX ? 64 : 128)
+#undef TARGET_DEFAULT
+#define TARGET_DEFAULT MASK_FP | MASK_FPREGS | MASK_LONG_DOUBLE_128
/* In Tru64 UNIX V5.1, Compaq introduced a new assembler
(/usr/lib/cmplrs/cc/adu) which currently (versions between 3.04.29 and
diff --git a/gcc/config/alpha/unicosmk.h b/gcc/config/alpha/unicosmk.h
index 5f75bbb87af..9d966d6e27c 100644
--- a/gcc/config/alpha/unicosmk.h
+++ b/gcc/config/alpha/unicosmk.h
@@ -176,7 +176,7 @@ typedef struct {
function whose data type is FNTYPE. For a library call, FNTYPE is 0. */
#undef INIT_CUMULATIVE_ARGS
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
do { (CUM).num_args = 0; \
(CUM).num_arg_words = 0; \
(CUM).num_reg_words = 0; \
diff --git a/gcc/config/alpha/vms.h b/gcc/config/alpha/vms.h
index b47c7e38646..f7058f3ff39 100644
--- a/gcc/config/alpha/vms.h
+++ b/gcc/config/alpha/vms.h
@@ -1,5 +1,5 @@
/* Output variables, constants and external declarations, for GNU compiler.
- Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002
+ Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -172,7 +172,7 @@ typedef struct {int num_args; enum avms_arg_type atypes[6];} avms_arg_info;
For a library call, FNTYPE is 0. */
#undef INIT_CUMULATIVE_ARGS
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
(CUM).num_args = 0; \
(CUM).atypes[0] = (CUM).atypes[1] = (CUM).atypes[2] = I64; \
(CUM).atypes[3] = (CUM).atypes[4] = (CUM).atypes[5] = I64;
diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c
index 876bef56828..ad26913217e 100644
--- a/gcc/config/arc/arc.c
+++ b/gcc/config/arc/arc.c
@@ -1,5 +1,5 @@
/* Subroutines used for code generation on the Argonaut ARC cpu.
- Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -1303,7 +1303,7 @@ arc_output_function_epilogue (FILE *file, HOST_WIDE_INT size)
/* ??? If stack intactness is important, always emit now. */
if (MUST_SAVE_RETURN_ADDR && epilogue_delay != NULL_RTX)
{
- final_scan_insn (XEXP (epilogue_delay, 0), file, 1, -2, 1);
+ final_scan_insn (XEXP (epilogue_delay, 0), file, 1, -2, 1, NULL);
epilogue_delay = NULL_RTX;
}
@@ -1335,7 +1335,8 @@ arc_output_function_epilogue (FILE *file, HOST_WIDE_INT size)
{
if (epilogue_delay)
{
- final_scan_insn (XEXP (epilogue_delay, 0), file, 1, -2, 1);
+ final_scan_insn (XEXP (epilogue_delay, 0), file, 1, -2, 1,
+ NULL);
}
}
@@ -1360,7 +1361,7 @@ arc_output_function_epilogue (FILE *file, HOST_WIDE_INT size)
abort ();
if (restored < size)
abort ();
- final_scan_insn (XEXP (epilogue_delay, 0), file, 1, -2, 1);
+ final_scan_insn (XEXP (epilogue_delay, 0), file, 1, -2, 1, NULL);
}
else if (frame_pointer_needed && !fp_restored_p)
{
diff --git a/gcc/config/arc/arc.h b/gcc/config/arc/arc.h
index 5a5f168a83c..86d04afd36f 100644
--- a/gcc/config/arc/arc.h
+++ b/gcc/config/arc/arc.h
@@ -633,7 +633,7 @@ extern enum reg_class arc_regno_reg_class[FIRST_PSEUDO_REGISTER];
/* Initialize a variable CUM of type CUMULATIVE_ARGS
for a call to a function whose data type is FNTYPE.
For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM) = 0)
/* The number of registers used for parameter passing. Local to this file. */
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 6cf226e2c4c..2725357bdc1 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -50,6 +50,7 @@
#include "tm_p.h"
#include "target.h"
#include "target-def.h"
+#include "debug.h"
/* Forward definitions of types. */
typedef struct minipool_node Mnode;
@@ -85,7 +86,7 @@ static struct machine_function *arm_init_machine_status (void);
static int number_of_first_bit_set (int);
static void replace_symbols_in_block (tree, rtx, rtx);
static void thumb_exit (FILE *, int, rtx);
-static void thumb_pushpop (FILE *, int, int);
+static void thumb_pushpop (FILE *, int, int, int *, int);
static rtx is_jump_table (rtx);
static HOST_WIDE_INT get_jump_table_size (rtx);
static Mnode *move_minipool_fix_forward_ref (Mnode *, Mnode *, HOST_WIDE_INT);
@@ -689,6 +690,9 @@ arm_override_options (void)
target_flags &= ~ARM_FLAG_THUMB;
}
+ if (!TARGET_APCS_32)
+ inform ("future releases of GCC will not support -mapcs-26");
+
if (TARGET_APCS_FRAME && TARGET_THUMB)
{
/* warning ("ignoring -mapcs-frame because -mthumb was used"); */
@@ -2740,7 +2744,7 @@ arm_legitimate_address_p (enum machine_mode mode, rtx x, int strict_p)
/* After reload constants split into minipools will have addresses
from a LABEL_REF. */
- else if (GET_MODE_SIZE (mode) >= 4 && reload_completed
+ else if (reload_completed
&& (GET_CODE (x) == LABEL_REF
|| (GET_CODE (x) == CONST
&& GET_CODE (XEXP (x, 0)) == PLUS
@@ -2860,8 +2864,10 @@ arm_legitimate_index_p (enum machine_mode mode, rtx index, int strict_p)
load, but that has a restricted addressing range and we are unable
to tell here whether that is the case. To be safe we restrict all
loads to that range. */
- range = ((mode) == HImode || (mode) == QImode)
- ? (arm_arch4 ? 256 : 4095) : 4096;
+ if (arm_arch4)
+ range = (mode == HImode || mode == QImode) ? 256 : 4096;
+ else
+ range = (mode == HImode) ? 4095 : 4096;
return (code == CONST_INT
&& INTVAL (index) < range
@@ -4617,7 +4623,6 @@ load_multiple_operation (rtx op, enum machine_mode mode ATTRIBUTE_UNUSED)
/* Now check it more carefully. */
if (GET_CODE (SET_DEST (elt)) != REG
|| GET_CODE (XEXP (SET_SRC (elt), 0)) != REG
- || REGNO (XEXP (SET_SRC (elt), 0)) != REGNO (SET_DEST (elt))
|| GET_CODE (XEXP (SET_SRC (elt), 1)) != CONST_INT
|| INTVAL (XEXP (SET_SRC (elt), 1)) != (count - 1) * 4)
return 0;
@@ -4677,7 +4682,6 @@ store_multiple_operation (rtx op, enum machine_mode mode ATTRIBUTE_UNUSED)
/* Now check it more carefully. */
if (GET_CODE (SET_DEST (elt)) != REG
|| GET_CODE (XEXP (SET_SRC (elt), 0)) != REG
- || REGNO (XEXP (SET_SRC (elt), 0)) != REGNO (SET_DEST (elt))
|| GET_CODE (XEXP (SET_SRC (elt), 1)) != CONST_INT
|| INTVAL (XEXP (SET_SRC (elt), 1)) != (count - 1) * 4)
return 0;
@@ -8245,15 +8249,25 @@ output_return_instruction (rtx operand, int really_return, int reverse)
return_reg = reg_names[LR_REGNUM];
if ((live_regs_mask & (1 << IP_REGNUM)) == (1 << IP_REGNUM))
- /* There are two possible reasons for the IP register being saved.
- Either a stack frame was created, in which case IP contains the
- old stack pointer, or an ISR routine corrupted it. If this in an
- ISR routine then just restore IP, otherwise restore IP into SP. */
- if (! IS_INTERRUPT (func_type))
- {
- live_regs_mask &= ~ (1 << IP_REGNUM);
- live_regs_mask |= (1 << SP_REGNUM);
- }
+ {
+ /* There are three possible reasons for the IP register
+ being saved. 1) a stack frame was created, in which case
+ IP contains the old stack pointer, or 2) an ISR routine
+ corrupted it, or 3) it was saved to align the stack on
+ iWMMXt. In case 1, restore IP into SP, otherwise just
+ restore IP. */
+ if (frame_pointer_needed)
+ {
+ live_regs_mask &= ~ (1 << IP_REGNUM);
+ live_regs_mask |= (1 << SP_REGNUM);
+ }
+ else
+ {
+ if (! IS_INTERRUPT (func_type)
+ && ! TARGET_REALLY_IWMMXT)
+ abort ();
+ }
+ }
/* On some ARM architectures it is faster to use LDR rather than
LDM to load a single register. On other architectures, the
@@ -11562,7 +11576,8 @@ thumb_exit (FILE *f, int reg_containing_return_addr, rtx eh_ofs)
}
/* Pop as many registers as we can. */
- thumb_pushpop (f, regs_available_for_popping, FALSE);
+ thumb_pushpop (f, regs_available_for_popping, FALSE, NULL,
+ regs_available_for_popping);
/* Process the registers we popped. */
if (reg_containing_return_addr == -1)
@@ -11643,7 +11658,8 @@ thumb_exit (FILE *f, int reg_containing_return_addr, rtx eh_ofs)
int popped_into;
int move_to;
- thumb_pushpop (f, regs_available_for_popping, FALSE);
+ thumb_pushpop (f, regs_available_for_popping, FALSE, NULL,
+ regs_available_for_popping);
/* We have popped either FP or SP.
Move whichever one it is into the correct register. */
@@ -11663,7 +11679,8 @@ thumb_exit (FILE *f, int reg_containing_return_addr, rtx eh_ofs)
{
int popped_into;
- thumb_pushpop (f, regs_available_for_popping, FALSE);
+ thumb_pushpop (f, regs_available_for_popping, FALSE, NULL,
+ regs_available_for_popping);
popped_into = number_of_first_bit_set (regs_available_for_popping);
@@ -11693,12 +11710,20 @@ thumb_exit (FILE *f, int reg_containing_return_addr, rtx eh_ofs)
asm_fprintf (f, "\tbx\t%r\n", reg_containing_return_addr);
}
-/* Emit code to push or pop registers to or from the stack. */
+/* Emit code to push or pop registers to or from the stack. F is the
+ assembly file. MASK is the registers to push or pop. PUSH is
+ non-zero if we should push, and zero if we should pop. For debugging
+ output, if pushing, adjust CFA_OFFSET by the amount of space added
+ to the stack. REAL_REGS should have the same number of bits set as
+ MASK, and will be used instead (in the same order) to describe which
+ registers were saved - this is used to mark the save slots when we
+ push high registers after moving them to low registers. */
static void
-thumb_pushpop (FILE *f, int mask, int push)
+thumb_pushpop (FILE *f, int mask, int push, int *cfa_offset, int real_regs)
{
int regno;
int lo_mask = mask & 0xFF;
+ int pushed_words = 0;
if (lo_mask == 0 && !push && (mask & (1 << 15)))
{
@@ -11719,6 +11744,8 @@ thumb_pushpop (FILE *f, int mask, int push)
if ((lo_mask & ~1) != 0)
fprintf (f, ", ");
+
+ pushed_words++;
}
}
@@ -11729,6 +11756,8 @@ thumb_pushpop (FILE *f, int mask, int push)
fprintf (f, ", ");
asm_fprintf (f, "%r", LR_REGNUM);
+
+ pushed_words++;
}
else if (!push && (mask & (1 << PC_REGNUM)))
{
@@ -11753,6 +11782,23 @@ thumb_pushpop (FILE *f, int mask, int push)
}
fprintf (f, "}\n");
+
+ if (push && pushed_words && dwarf2out_do_frame ())
+ {
+ char *l = dwarf2out_cfi_label ();
+ int pushed_mask = real_regs;
+
+ *cfa_offset += pushed_words * 4;
+ dwarf2out_def_cfa (l, SP_REGNUM, *cfa_offset);
+
+ pushed_words = 0;
+ pushed_mask = real_regs;
+ for (regno = 0; regno <= 14; regno++, pushed_mask >>= 1)
+ {
+ if (pushed_mask & 1)
+ dwarf2out_reg_save (l, regno, 4 * pushed_words++ - *cfa_offset);
+ }
+ }
}
void
@@ -11951,7 +11997,7 @@ thumb_unexpanded_epilogue (void)
mask &= (2 << regno) - 1; /* A noop if regno == 8 */
/* Pop the values into the low register(s). */
- thumb_pushpop (asm_out_file, mask, 0);
+ thumb_pushpop (asm_out_file, mask, 0, NULL, mask);
/* Move the value(s) into the high registers. */
for (regno = 0; regno <= LAST_LO_REGNUM; regno++)
@@ -11993,7 +12039,8 @@ thumb_unexpanded_epilogue (void)
structure was created which includes an adjusted stack
pointer, so just pop everything. */
if (live_regs_mask)
- thumb_pushpop (asm_out_file, live_regs_mask, FALSE);
+ thumb_pushpop (asm_out_file, live_regs_mask, FALSE, NULL,
+ live_regs_mask);
if (eh_ofs)
thumb_exit (asm_out_file, 2, eh_ofs);
@@ -12013,11 +12060,13 @@ thumb_unexpanded_epilogue (void)
live_regs_mask &= ~(1 << PC_REGNUM);
if (live_regs_mask)
- thumb_pushpop (asm_out_file, live_regs_mask, FALSE);
+ thumb_pushpop (asm_out_file, live_regs_mask, FALSE, NULL,
+ live_regs_mask);
if (had_to_push_lr)
/* Get the return address into a temporary register. */
- thumb_pushpop (asm_out_file, 1 << LAST_ARG_REGNUM, 0);
+ thumb_pushpop (asm_out_file, 1 << LAST_ARG_REGNUM, 0, NULL,
+ 1 << LAST_ARG_REGNUM);
/* Remove the argument registers that were pushed onto the stack. */
asm_fprintf (asm_out_file, "\tadd\t%r, %r, #%d\n",
@@ -12163,6 +12212,8 @@ thumb_get_frame_size (void)
void
thumb_expand_prologue (void)
{
+ rtx insn, dwarf;
+
HOST_WIDE_INT amount = (thumb_get_frame_size ()
+ current_function_outgoing_args_size);
unsigned long func_type;
@@ -12180,15 +12231,21 @@ thumb_expand_prologue (void)
}
if (frame_pointer_needed)
- emit_insn (gen_movsi (hard_frame_pointer_rtx, stack_pointer_rtx));
+ {
+ insn = emit_insn (gen_movsi (hard_frame_pointer_rtx, stack_pointer_rtx));
+ RTX_FRAME_RELATED_P (insn) = 1;
+ }
if (amount)
{
amount = ROUND_UP_WORD (amount);
if (amount < 512)
- emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx,
- GEN_INT (- amount)));
+ {
+ insn = emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx,
+ GEN_INT (- amount)));
+ RTX_FRAME_RELATED_P (insn) = 1;
+ }
else
{
int regno;
@@ -12228,8 +12285,16 @@ thumb_expand_prologue (void)
/* Decrement the stack. */
emit_insn (gen_movsi (reg, GEN_INT (- amount)));
- emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx,
- reg));
+ insn = emit_insn (gen_addsi3 (stack_pointer_rtx,
+ stack_pointer_rtx, reg));
+ RTX_FRAME_RELATED_P (insn) = 1;
+ dwarf = gen_rtx_SET (SImode, stack_pointer_rtx,
+ plus_constant (stack_pointer_rtx,
+ GEN_INT (- amount)));
+ RTX_FRAME_RELATED_P (dwarf) = 1;
+ REG_NOTES (insn)
+ = gen_rtx_EXPR_LIST (REG_FRAME_RELATED_EXPR, dwarf,
+ REG_NOTES (insn));
/* Restore the low register's original value. */
emit_insn (gen_movsi (reg, spare));
@@ -12245,8 +12310,17 @@ thumb_expand_prologue (void)
reg = gen_rtx (REG, SImode, regno);
emit_insn (gen_movsi (reg, GEN_INT (- amount)));
- emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx,
- reg));
+
+ insn = emit_insn (gen_addsi3 (stack_pointer_rtx,
+ stack_pointer_rtx, reg));
+ RTX_FRAME_RELATED_P (insn) = 1;
+ dwarf = gen_rtx_SET (SImode, stack_pointer_rtx,
+ plus_constant (stack_pointer_rtx,
+ GEN_INT (- amount)));
+ RTX_FRAME_RELATED_P (dwarf) = 1;
+ REG_NOTES (insn)
+ = gen_rtx_EXPR_LIST (REG_FRAME_RELATED_EXPR, dwarf,
+ REG_NOTES (insn));
}
}
}
@@ -12307,6 +12381,7 @@ thumb_output_function_prologue (FILE *f, HOST_WIDE_INT size ATTRIBUTE_UNUSED)
{
int live_regs_mask = 0;
int high_regs_pushed = 0;
+ int cfa_offset = 0;
int regno;
if (IS_NAKED (arm_current_func_type ()))
@@ -12369,6 +12444,16 @@ thumb_output_function_prologue (FILE *f, HOST_WIDE_INT size ATTRIBUTE_UNUSED)
asm_fprintf (f, "\tsub\t%r, %r, #%d\n",
SP_REGNUM, SP_REGNUM,
current_function_pretend_args_size);
+
+ /* We don't need to record the stores for unwinding (would it
+ help the debugger any if we did?), but record the change in
+ the stack pointer. */
+ if (dwarf2out_do_frame ())
+ {
+ char *l = dwarf2out_cfi_label ();
+ cfa_offset = cfa_offset + current_function_pretend_args_size;
+ dwarf2out_def_cfa (l, SP_REGNUM, cfa_offset);
+ }
}
for (regno = 0; regno <= LAST_LO_REGNUM; regno++)
@@ -12424,9 +12509,16 @@ thumb_output_function_prologue (FILE *f, HOST_WIDE_INT size ATTRIBUTE_UNUSED)
asm_fprintf
(f, "\tsub\t%r, %r, #16\t%@ Create stack backtrace structure\n",
SP_REGNUM, SP_REGNUM);
-
+
+ if (dwarf2out_do_frame ())
+ {
+ char *l = dwarf2out_cfi_label ();
+ cfa_offset = cfa_offset + 16;
+ dwarf2out_def_cfa (l, SP_REGNUM, cfa_offset);
+ }
+
if (live_regs_mask)
- thumb_pushpop (f, live_regs_mask, 1);
+ thumb_pushpop (f, live_regs_mask, 1, &cfa_offset, live_regs_mask);
for (offset = 0, wr = 1 << 15; wr != 0; wr >>= 1)
if (wr & live_regs_mask)
@@ -12470,7 +12562,7 @@ thumb_output_function_prologue (FILE *f, HOST_WIDE_INT size ATTRIBUTE_UNUSED)
ARM_HARD_FRAME_POINTER_REGNUM, work_register);
}
else if (live_regs_mask)
- thumb_pushpop (f, live_regs_mask, 1);
+ thumb_pushpop (f, live_regs_mask, 1, &cfa_offset, live_regs_mask);
for (regno = 8; regno < 13; regno++)
if (THUMB_REG_PUSHED_P (regno))
@@ -12498,6 +12590,8 @@ thumb_output_function_prologue (FILE *f, HOST_WIDE_INT size ATTRIBUTE_UNUSED)
while (high_regs_pushed > 0)
{
+ int real_regs_mask = 0;
+
for (regno = LAST_LO_REGNUM; regno >= 0; regno--)
{
if (mask & (1 << regno))
@@ -12505,6 +12599,7 @@ thumb_output_function_prologue (FILE *f, HOST_WIDE_INT size ATTRIBUTE_UNUSED)
asm_fprintf (f, "\tmov\t%r, %r\n", regno, next_hi_reg);
high_regs_pushed--;
+ real_regs_mask |= (1 << next_hi_reg);
if (high_regs_pushed)
{
@@ -12520,8 +12615,8 @@ thumb_output_function_prologue (FILE *f, HOST_WIDE_INT size ATTRIBUTE_UNUSED)
}
}
}
-
- thumb_pushpop (f, mask, 1);
+
+ thumb_pushpop (f, mask, 1, &cfa_offset, real_regs_mask);
}
if (pushable_regs == 0
@@ -13156,6 +13251,8 @@ arm_output_mi_thunk (FILE *file, tree thunk ATTRIBUTE_UNUSED,
HOST_WIDE_INT vcall_offset ATTRIBUTE_UNUSED,
tree function)
{
+ static int thunk_label = 0;
+ char label[256];
int mi_delta = delta;
const char *const mi_op = mi_delta < 0 ? "sub" : "add";
int shift = 0;
@@ -13163,6 +13260,14 @@ arm_output_mi_thunk (FILE *file, tree thunk ATTRIBUTE_UNUSED,
? 1 : 0);
if (mi_delta < 0)
mi_delta = - mi_delta;
+ if (TARGET_THUMB)
+ {
+ int labelno = thunk_label++;
+ ASM_GENERATE_INTERNAL_LABEL (label, "LTHUMBFUNC", labelno);
+ fputs ("\tldr\tr12, ", file);
+ assemble_name (file, label);
+ fputc ('\n', file);
+ }
while (mi_delta != 0)
{
if ((mi_delta & (3 << shift)) == 0)
@@ -13176,11 +13281,22 @@ arm_output_mi_thunk (FILE *file, tree thunk ATTRIBUTE_UNUSED,
shift += 8;
}
}
- fputs ("\tb\t", file);
- assemble_name (file, XSTR (XEXP (DECL_RTL (function), 0), 0));
- if (NEED_PLT_RELOC)
- fputs ("(PLT)", file);
- fputc ('\n', file);
+ if (TARGET_THUMB)
+ {
+ fprintf (file, "\tbx\tr12\n");
+ ASM_OUTPUT_ALIGN (file, 2);
+ assemble_name (file, label);
+ fputs (":\n", file);
+ assemble_integer (XEXP (DECL_RTL (function), 0), 4, BITS_PER_WORD, 1);
+ }
+ else
+ {
+ fputs ("\tb\t", file);
+ assemble_name (file, XSTR (XEXP (DECL_RTL (function), 0), 0));
+ if (NEED_PLT_RELOC)
+ fputs ("(PLT)", file);
+ fputc ('\n', file);
+ }
}
int
diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h
index 40c26c9b39d..3a13d919243 100644
--- a/gcc/config/arm/arm.h
+++ b/gcc/config/arm/arm.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler, for ARM.
Copyright (C) 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)
and Martin Simmons (@harleqn.co.uk).
More major hacks by Richard Earnshaw (rearnsha@arm.com)
@@ -175,7 +175,8 @@ extern GTY(()) rtx aof_pic_label;
/* Set TARGET_DEFAULT to the default, but without soft-float. */
#ifdef TARGET_DEFAULT
#undef TARGET_DEFAULT
-#define TARGET_DEFAULT (ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME)
+#define TARGET_DEFAULT \
+ (ARM_FLAG_APCS_32 | ARM_FLAG_MMU_TRAPS | ARM_FLAG_APCS_FRAME)
#endif
#else
#if TARGET_CPU_DEFAULT == TARGET_CPU_iwmmxt
@@ -455,8 +456,7 @@ extern GTY(()) rtx aof_pic_label;
{"fpe", ARM_FLAG_FPE, "" }, \
{"apcs-32", ARM_FLAG_APCS_32, \
N_("Use the 32-bit version of the APCS") }, \
- {"apcs-26", -ARM_FLAG_APCS_32, \
- N_("Use the 26-bit version of the APCS") }, \
+ {"apcs-26", -ARM_FLAG_APCS_32, ""}, \
{"apcs-stack-check", ARM_FLAG_APCS_STACK, "" }, \
{"no-apcs-stack-check", -ARM_FLAG_APCS_STACK, "" }, \
{"apcs-float", ARM_FLAG_APCS_FLOAT, \
@@ -468,10 +468,6 @@ extern GTY(()) rtx aof_pic_label;
{"alignment-traps", ARM_FLAG_MMU_TRAPS, \
N_("The MMU will trap on unaligned accesses") }, \
{"no-alignment-traps", -ARM_FLAG_MMU_TRAPS, "" }, \
- {"short-load-bytes", ARM_FLAG_MMU_TRAPS, "" }, \
- {"no-short-load-bytes", -ARM_FLAG_MMU_TRAPS, "" }, \
- {"short-load-words", -ARM_FLAG_MMU_TRAPS, "" }, \
- {"no-short-load-words", ARM_FLAG_MMU_TRAPS, "" }, \
{"soft-float", ARM_FLAG_SOFT_FLOAT, \
N_("Use library calls to perform FP operations") }, \
{"hard-float", -ARM_FLAG_SOFT_FLOAT, \
@@ -650,7 +646,7 @@ extern int arm_tune_xscale;
extern int arm_is_6_or_7;
#ifndef TARGET_DEFAULT
-#define TARGET_DEFAULT (ARM_FLAG_APCS_FRAME)
+#define TARGET_DEFAULT (ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS)
#endif
/* The frame pointer register used in gcc has nothing to do with debugging;
@@ -1749,7 +1745,7 @@ typedef struct
for a call to a function whose data type is FNTYPE.
For a library call, FNTYPE is 0.
On the ARM, the offset starts at 0. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL, N_NAMED_ARGS) \
arm_init_cumulative_args (&(CUM), (FNTYPE), (LIBNAME), (FNDECL))
/* Update the data in CUM to advance over an argument
@@ -2475,10 +2471,11 @@ extern int making_const_table;
{ \
if (TARGET_THUMB) \
{ \
- if (is_called_in_ARM_mode (DECL)) \
+ if (is_called_in_ARM_mode (DECL) \
+ || current_function_is_thunk) \
fprintf (STREAM, "\t.code 32\n") ; \
else \
- fprintf (STREAM, "\t.thumb_func\n") ; \
+ fprintf (STREAM, "\t.code 16\n\t.thumb_func\n") ; \
} \
if (TARGET_POKE_FUNCTION_NAME) \
arm_poke_function_name (STREAM, (char *) NAME); \
diff --git a/gcc/config/arm/coff.h b/gcc/config/arm/coff.h
index 310c4fba8ec..d6a6651ba90 100644
--- a/gcc/config/arm/coff.h
+++ b/gcc/config/arm/coff.h
@@ -31,7 +31,7 @@
#define TARGET_VERSION fputs (" (ARM/coff)", stderr)
#undef TARGET_DEFAULT
-#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME)
+#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS)
#ifndef MULTILIB_DEFAULTS
#define MULTILIB_DEFAULTS \
diff --git a/gcc/config/arm/elf.h b/gcc/config/arm/elf.h
index 581f7267900..cb38264181d 100644
--- a/gcc/config/arm/elf.h
+++ b/gcc/config/arm/elf.h
@@ -106,7 +106,7 @@
#endif
#ifndef TARGET_DEFAULT
-#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME)
+#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS)
#endif
#ifndef MULTILIB_DEFAULTS
diff --git a/gcc/config/arm/freebsd.h b/gcc/config/arm/freebsd.h
index fd79f1f3c68..3aea2f86979 100644
--- a/gcc/config/arm/freebsd.h
+++ b/gcc/config/arm/freebsd.h
@@ -20,9 +20,26 @@
Boston, MA 02111-1307, USA. */
+#define SUBTARGET_EXTRA_SPECS \
+ { "fbsd_dynamic_linker", FBSD_DYNAMIC_LINKER }
+
#undef SUBTARGET_CPP_SPEC
#define SUBTARGET_CPP_SPEC FBSD_CPP_SPEC
+#undef LINK_SPEC
+#define LINK_SPEC " \
+ %{p:%nconsider using `-pg' instead of `-p' with gprof(1) } \
+ %{Wl,*:%*} \
+ %{v:-V} \
+ %{assert*} %{R*} %{rpath*} %{defsym*} \
+ %{shared:-Bshareable %{h*} %{soname*}} \
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+ %{!dynamic-linker:-dynamic-linker %(fbsd_dynamic_linker) }} \
+ %{static:-Bstatic}} \
+ %{symbolic:-Bsymbolic}"
+
/************************[ Target stuff ]***********************************/
diff --git a/gcc/config/arm/ieee754-df.S b/gcc/config/arm/ieee754-df.S
index 58e019a3fac..6a7aab85938 100644
--- a/gcc/config/arm/ieee754-df.S
+++ b/gcc/config/arm/ieee754-df.S
@@ -659,8 +659,8 @@ LSYM(Lml_r):
orr r3, r3, xh, lsl r5
mov xl, xh, lsr r4
bic xh, xh, #0x7fffffff
- adds xl, xl, r3, lsr #31
- adc xh, xh, #0
+ bic xl, xl, xh, lsr r4
+ add xl, xl, r3, lsr #31
orrs r6, r6, lr
teqeq r3, #0x80000000
biceq xl, xl, #1
diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h
index 8b94c9d647e..9f291c0b49f 100644
--- a/gcc/config/arm/linux-elf.h
+++ b/gcc/config/arm/linux-elf.h
@@ -1,5 +1,5 @@
/* Definitions for ARM running Linux-based GNU systems using ELF
- Copyright (C) 1993, 1994, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1993, 1994, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Contributed by Philip Blundell <philb@gnu.org>
diff --git a/gcc/config/arm/netbsd.h b/gcc/config/arm/netbsd.h
index c1db2df5e26..71763e61ea8 100644
--- a/gcc/config/arm/netbsd.h
+++ b/gcc/config/arm/netbsd.h
@@ -36,7 +36,7 @@
/* Default is to use APCS-32 mode. */
#undef TARGET_DEFAULT
-#define TARGET_DEFAULT (ARM_FLAG_APCS_32 | ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_FRAME)
+#define TARGET_DEFAULT (ARM_FLAG_APCS_32 | ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS)
/* Some defines for CPP.
arm32 is the NetBSD port name, so we always define arm32 and __arm32__. */
diff --git a/gcc/config/arm/pe.h b/gcc/config/arm/pe.h
index 7fba10b1d06..e83f97baae0 100644
--- a/gcc/config/arm/pe.h
+++ b/gcc/config/arm/pe.h
@@ -72,7 +72,7 @@
Possibly when chips that support APCS-26 are no longer made. */
#undef TARGET_DEFAULT
-#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | TARGET_FLAG_NOP_FUN)
+#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | TARGET_FLAG_NOP_FUN | ARM_FLAG_MMU_TRAPS)
#undef MULTILIB_DEFAULTS
#define MULTILIB_DEFAULTS \
diff --git a/gcc/config/arm/semi.h b/gcc/config/arm/semi.h
index 8847f8c2369..2ab06cbcc3f 100644
--- a/gcc/config/arm/semi.h
+++ b/gcc/config/arm/semi.h
@@ -38,7 +38,7 @@
#endif
#ifndef TARGET_DEFAULT
-#define TARGET_DEFAULT (ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME)
+#define TARGET_DEFAULT (ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS)
#endif
#ifndef SUBTARGET_EXTRA_SPECS
diff --git a/gcc/config/arm/semiaof.h b/gcc/config/arm/semiaof.h
index 41267f36420..19a6cf8ea50 100644
--- a/gcc/config/arm/semiaof.h
+++ b/gcc/config/arm/semiaof.h
@@ -33,7 +33,7 @@
#define TARGET_VERSION fputs (" (ARM/semi-hosted)", stderr);
-#define TARGET_DEFAULT ARM_FLAG_APCS_32
+#define TARGET_DEFAULT (ARM_FLAG_APCS_32 | ARM_FLAG_MMU_TRAPS)
/* The Norcroft C library defines size_t as "unsigned int". */
#define SIZE_TYPE "unsigned int"
diff --git a/gcc/config/arm/unknown-elf.h b/gcc/config/arm/unknown-elf.h
index 573803fce2d..1af799482b4 100644
--- a/gcc/config/arm/unknown-elf.h
+++ b/gcc/config/arm/unknown-elf.h
@@ -30,7 +30,7 @@
/* Default to using APCS-32 and software floating point. */
#ifndef TARGET_DEFAULT
-#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME)
+#define TARGET_DEFAULT (ARM_FLAG_SOFT_FLOAT | ARM_FLAG_APCS_32 | ARM_FLAG_APCS_FRAME | ARM_FLAG_MMU_TRAPS)
#endif
/* Now we define the strings used to build the spec file. */
diff --git a/gcc/config/arm/wince-pe.h b/gcc/config/arm/wince-pe.h
index feed1337c90..fb474853fdb 100644
--- a/gcc/config/arm/wince-pe.h
+++ b/gcc/config/arm/wince-pe.h
@@ -22,7 +22,7 @@
/* Override arm/pe.h's default apcs26 support. */
#undef TARGET_DEFAULT
-#define TARGET_DEFAULT (ARM_FLAG_APCS_32 | ARM_FLAG_SOFT_FLOAT | TARGET_FLAG_NOP_FUN)
+#define TARGET_DEFAULT (ARM_FLAG_APCS_32 | ARM_FLAG_SOFT_FLOAT | TARGET_FLAG_NOP_FUN | ARM_FLAG_MMU_TRAPS)
#undef MULTILIB_DEFAULTS
#define MULTILIB_DEFAULTS \
diff --git a/gcc/config/avr/avr-protos.h b/gcc/config/avr/avr-protos.h
index 19ee9e85b2d..d52d5bb5316 100644
--- a/gcc/config/avr/avr-protos.h
+++ b/gcc/config/avr/avr-protos.h
@@ -42,7 +42,7 @@ extern void gas_output_ascii (FILE *file, const char *str, size_t length);
#ifdef TREE_CODE
extern void asm_output_external (FILE *file, tree decl, char *name);
-extern int avr_progmem_p (tree decl);
+extern int avr_progmem_p (tree decl, tree attributes);
#ifdef RTX_CODE /* inside TREE_CODE */
extern rtx avr_function_value (tree type, tree func);
diff --git a/gcc/config/avr/avr.c b/gcc/config/avr/avr.c
index 198c56895d3..693690716f2 100644
--- a/gcc/config/avr/avr.c
+++ b/gcc/config/avr/avr.c
@@ -1,5 +1,6 @@
/* Subroutines for insn-output.c for ATMEL AVR micro controllers
- Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004
+ Free Software Foundation, Inc.
Contributed by Denis Chertykov (denisc@overta.ru)
This file is part of GCC.
@@ -4566,7 +4567,7 @@ avr_handle_fndecl_attribute (tree *node, tree name,
if found return 1, otherwise 0. */
int
-avr_progmem_p (tree decl)
+avr_progmem_p (tree decl, tree attributes)
{
tree a;
@@ -4574,7 +4575,7 @@ avr_progmem_p (tree decl)
return 0;
if (NULL_TREE
- != lookup_attribute ("progmem", DECL_ATTRIBUTES (decl)))
+ != lookup_attribute ("progmem", attributes))
return 1;
a=decl;
@@ -4598,7 +4599,7 @@ avr_insert_attributes (tree node, tree *attributes)
{
if (TREE_CODE (node) == VAR_DECL
&& (TREE_STATIC (node) || DECL_EXTERNAL (node))
- && avr_progmem_p (node))
+ && avr_progmem_p (node, *attributes))
{
static const char dsec[] = ".progmem.data";
*attributes = tree_cons (get_identifier ("section"),
diff --git a/gcc/config/avr/avr.h b/gcc/config/avr/avr.h
index c6ac5dcb674..4a2db2c2b42 100644
--- a/gcc/config/avr/avr.h
+++ b/gcc/config/avr/avr.h
@@ -1,6 +1,7 @@
/* Definitions of target machine for GNU compiler,
for ATMEL AVR at90s8515, ATmega103/103L, ATmega603/603L microcontrollers.
- Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
Contributed by Denis Chertykov (denisc@overta.ru)
This file is part of GCC.
@@ -560,7 +561,7 @@ enum reg_class {
choose a class which is "minimal", meaning that no smaller class
also contains the register. */
-#define BASE_REG_CLASS POINTER_REGS
+#define BASE_REG_CLASS (reload_completed ? BASE_POINTER_REGS : POINTER_REGS)
/* A macro whose definition is the name of the class to which a valid
base register must belong. A base register is one used in an
address which is the register value plus a displacement. */
@@ -1129,7 +1130,8 @@ typedef struct avr_args {
store anything in `CUMULATIVE_ARGS'; however, the data structure
must exist and should not be empty, so use `int'. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL) init_cumulative_args (&(CUM), FNTYPE, LIBNAME, FNDECL)
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL, N_NAMED_ARGS) \
+ init_cumulative_args (&(CUM), FNTYPE, LIBNAME, FNDECL)
/* A C statement (sans semicolon) for initializing the variable CUM
for the state at the beginning of the argument list. The variable
diff --git a/gcc/config/c4x/c4x.c b/gcc/config/c4x/c4x.c
index 28e13359f94..91cbe70fcd2 100644
--- a/gcc/config/c4x/c4x.c
+++ b/gcc/config/c4x/c4x.c
@@ -1,5 +1,5 @@
/* Subroutines for assembler code output on the TMS320C[34]x
- Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2003
+ Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004
Free Software Foundation, Inc.
Contributed by Michael Hayes (m.hayes@elec.canterbury.ac.nz)
diff --git a/gcc/config/c4x/c4x.h b/gcc/config/c4x/c4x.h
index 37d0c9b42dd..fd44e215a97 100644
--- a/gcc/config/c4x/c4x.h
+++ b/gcc/config/c4x/c4x.h
@@ -1113,7 +1113,7 @@ typedef struct c4x_args
}
CUMULATIVE_ARGS;
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
(c4x_init_cumulative_args (&CUM, FNTYPE, LIBNAME))
#define FUNCTION_ARG_ADVANCE(CUM, MODE, TYPE, NAMED) \
diff --git a/gcc/config/c4x/c4x.md b/gcc/config/c4x/c4x.md
index e4f240fea4f..eed7cf0db31 100644
--- a/gcc/config/c4x/c4x.md
+++ b/gcc/config/c4x/c4x.md
@@ -1,6 +1,6 @@
;; Machine description for the TMS320C[34]x for GCC
;; Copyright (C) 1994, 1995, 1996, 1997, 1998,
-;; 1999, 2000, 2002 Free Software Foundation, Inc.
+;; 1999, 2000, 2002, 2004 Free Software Foundation, Inc.
;; Contributed by Michael Hayes (m.hayes@elec.canterbury.ac.nz)
;; and Herman Ten Brugge (Haj.Ten.Brugge@net.HCC.nl)
@@ -5653,7 +5653,7 @@
"0"
"")
-(define_expand "movstrqi_small2"
+(define_expand "movstrqi_small"
[(parallel [(set (mem:BLK (match_operand:BLK 0 "src_operand" ""))
(mem:BLK (match_operand:BLK 1 "src_operand" "")))
(use (match_operand:QI 2 "immediate_operand" ""))
@@ -5713,71 +5713,51 @@
; operand 3 is the shared alignment
; operand 4 is a scratch register
-(define_insn "movstrqi_small"
- [(set (mem:BLK (match_operand:QI 0 "addr_reg_operand" "+a"))
- (mem:BLK (match_operand:QI 1 "addr_reg_operand" "+a")))
- (use (match_operand:QI 2 "immediate_operand" "i"))
- (use (match_operand:QI 3 "immediate_operand" ""))
- (clobber (match_operand:QI 4 "ext_low_reg_operand" "=&q"))
- (clobber (match_dup 0))
- (clobber (match_dup 1))]
- ""
- "*
- {
- int i;
- int len = INTVAL (operands[2]);
- int first = 1;
-
- for (i = 0; i < len; i++)
- {
- if (first)
- output_asm_insn (\"ldiu\\t*%1++,%4\", operands);
- else
- output_asm_insn (\"|| ldi\\t*%1++,%4\", operands);
- output_asm_insn (\"sti\\t%4,*%0++\", operands);
- first = 0;
- }
- return \"\";
- }
- "
- [(set_attr "type" "multi")])
-
(define_insn "movstrqi_large"
- [(set (mem:BLK (match_operand:QI 0 "addr_reg_operand" "+a"))
- (mem:BLK (match_operand:QI 1 "addr_reg_operand" "+a")))
+ [(set (mem:BLK (match_operand:QI 0 "addr_reg_operand" "a"))
+ (mem:BLK (match_operand:QI 1 "addr_reg_operand" "a")))
(use (match_operand:QI 2 "immediate_operand" "i"))
(use (match_operand:QI 3 "immediate_operand" ""))
(clobber (match_operand:QI 4 "ext_low_reg_operand" "=&q"))
- (clobber (match_dup 0))
- (clobber (match_dup 1))
+ (clobber (match_scratch:QI 5 "=0"))
+ (clobber (match_scratch:QI 6 "=1"))
(clobber (reg:QI 25))
(clobber (reg:QI 26))
(clobber (reg:QI 27))]
""
"*
{
+ int i;
int len = INTVAL (operands[2]);
output_asm_insn (\"ldiu\\t*%1++,%4\", operands);
- if (TARGET_RPTS_CYCLES (len))
+ if (len < 8)
{
- output_asm_insn (\"rpts\\t%2-2\", operands);
- output_asm_insn (\"sti\\t%4,*%0++\", operands);
- output_asm_insn (\"|| ldi\\t*%1++,%4\", operands);
- return \"sti\\t%4,*%0++\";
+ for (i = 1; i < len; i++)
+ {
+ output_asm_insn (\"sti\\t%4,*%0++\", operands);
+ output_asm_insn (\"|| ldi\\t*%1++,%4\", operands);
+ }
}
else
{
- output_asm_insn (\"ldiu\\t%2-2,rc\", operands);
- output_asm_insn (\"rptb\\t$+1\", operands);
- output_asm_insn (\"sti\\t%4,*%0++\", operands);
- output_asm_insn (\"|| ldi\\t*%1++,%4\", operands);
-
- return \"sti\\t%4,*%0++\";
+ if (TARGET_RPTS_CYCLES (len))
+ {
+ output_asm_insn (\"rpts\\t%2-2\", operands);
+ output_asm_insn (\"sti\\t%4,*%0++\", operands);
+ output_asm_insn (\"|| ldi\\t*%1++,%4\", operands);
+ }
+ else
+ {
+ output_asm_insn (\"ldiu\\t%2-2,rc\", operands);
+ output_asm_insn (\"rptb\\t$+1\", operands);
+ output_asm_insn (\"sti\\t%4,*%0++\", operands);
+ output_asm_insn (\"|| ldi\\t*%1++,%4\", operands);
+ }
}
- }
- "
- [(set_attr "type" "multi")])
+ return \"sti\\t%4,*%0++\";
+ }"
+ [(set_attr "type" "multi")])
; Operand 2 is the count, operand 3 is the alignment.
(define_expand "movstrqi"
@@ -5799,14 +5779,8 @@
operands[0] = copy_to_mode_reg (Pmode, XEXP (operands[0], 0));
operands[1] = copy_to_mode_reg (Pmode, XEXP (operands[1], 0));
tmp = gen_reg_rtx (QImode);
- if (INTVAL (operands[2]) < 8)
- emit_insn (gen_movstrqi_small2 (operands[0], operands[1], operands[2],
- operands[3], tmp));
- else
- {
- emit_insn (gen_movstrqi_large (operands[0], operands[1], operands[2],
- operands[3], tmp));
- }
+ emit_insn (gen_movstrqi_large (operands[0], operands[1], operands[2],
+ operands[3], tmp));
DONE;
}")
diff --git a/gcc/config/cris/cris.c b/gcc/config/cris/cris.c
index 79b194b2d95..229c5123601 100644
--- a/gcc/config/cris/cris.c
+++ b/gcc/config/cris/cris.c
@@ -1,5 +1,6 @@
/* Definitions for GCC. Part of the machine description for CRIS.
- Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
Contributed by Axis Communications. Written by Hans-Peter Nilsson.
This file is part of GCC.
@@ -317,7 +318,10 @@ cris_commutative_orth_op (rtx x, enum machine_mode mode)
|| code == IOR || code == AND || code == UMIN));
}
-/* Check if MODE is same as mode for X, and X is PLUS or MINUS or UMIN. */
+/* Check if MODE is same as mode for X, and X is PLUS or MINUS or UMIN.
+ By the name, you might think we should include MULT. We don't because
+ it doesn't accept the same addressing modes as the others (ony
+ registers) and there's also the problem of handling TARGET_MUL_BUG. */
int
cris_operand_extend_operator (rtx x, enum machine_mode mode)
@@ -484,7 +488,11 @@ cris_op_str (rtx x)
break;
case MULT:
- return "mul";
+ /* This function is for retrieving a part of an instruction name for
+ an operator, for immediate output. If that ever happens for
+ MULT, we need to apply TARGET_MUL_BUG in the caller. Make sure
+ we notice. */
+ abort ();
break;
case DIV:
@@ -1259,7 +1267,7 @@ cris_target_asm_function_epilogue (FILE *file, HOST_WIDE_INT size)
/* Output the delay-slot-insn the mandated way. */
final_scan_insn (XEXP (current_function_epilogue_delay_list, 0),
- file, 1, -2, 1);
+ file, 1, -2, 1, NULL);
}
else if (file)
{
@@ -1377,6 +1385,23 @@ cris_print_operand (FILE *file, rtx x, int code)
fputs ("\n\tnop", file);
return;
+ case '!':
+ /* Output directive for alignment padded with "nop" insns.
+ Optimizing for size, it's plain 4-byte alignment, otherwise we
+ align the section to a cache-line (32 bytes) and skip at max 2
+ bytes, i.e. we skip if it's the last insn on a cache-line. The
+ latter is faster by a small amount (for two test-programs 99.6%
+ and 99.9%) and larger by a small amount (ditto 100.1% and
+ 100.2%). This is supposed to be the simplest yet performance-
+ wise least intrusive way to make sure the immediately following
+ (supposed) muls/mulu insn isn't located at the end of a
+ cache-line. */
+ if (TARGET_MUL_BUG)
+ fputs (optimize_size
+ ? ".p2alignw 2,0x050f\n\t"
+ : ".p2alignw 5,0x050f,2\n\t", file);
+ return;
+
case 'H':
/* Print high (most significant) part of something. */
switch (GET_CODE (operand))
diff --git a/gcc/config/cris/cris.h b/gcc/config/cris/cris.h
index 69483fae1fd..5f777795f7b 100644
--- a/gcc/config/cris/cris.h
+++ b/gcc/config/cris/cris.h
@@ -170,9 +170,17 @@ extern const char *cris_elinux_stacksize_str;
%{!melinux:%{!maout|melf:%{!fno-vtable-gc:-fvtable-gc}}}}}". */
#define CC1PLUS_SPEC ""
+#ifdef HAVE_AS_MUL_BUG_ABORT_OPTION
+#define MAYBE_AS_NO_MUL_BUG_ABORT \
+ "%{mno-mul-bug-workaround:-no-mul-bug-abort} "
+#else
+#define MAYBE_AS_NO_MUL_BUG_ABORT
+#endif
+
/* Override previous definitions (linux.h). */
#undef ASM_SPEC
#define ASM_SPEC \
+ MAYBE_AS_NO_MUL_BUG_ABORT \
"%{v:-v}\
%(asm_subtarget)"
@@ -325,8 +333,34 @@ extern int target_flags;
#define TARGET_MASK_AVOID_GOTPLT 8192
#define TARGET_AVOID_GOTPLT (target_flags & TARGET_MASK_AVOID_GOTPLT)
+/* Whether or not to work around multiplication instruction hardware bug
+ when generating code for models where it may be present. From the
+ trouble report for Etrax 100 LX: "A multiply operation may cause
+ incorrect cache behaviour under some specific circumstances. The
+ problem can occur if the instruction following the multiply instruction
+ causes a cache miss, and multiply operand 1 (source operand) bits
+ [31:27] matches the logical mapping of the mode register address
+ (0xb0....), and bits [9:2] of operand 1 matches the TLB register
+ address (0x258-0x25f). There is such a mapping in kernel mode or when
+ the MMU is off. Normally there is no such mapping in user mode, and
+ the problem will therefore probably not occur in Linux user mode
+ programs."
+
+ We have no sure-fire way to know from within GCC that we're compiling a
+ user program. For example, -fpic/PIC is used in libgcc which is linked
+ into the kernel. However, the workaround option -mno-mul-bug can be
+ safely used per-package when compiling programs. The same goes for
+ general user-only libraries such as glibc, since there's no user-space
+ driver-like program that gets a mapping of I/O registers (all on the
+ same page, including the TLB registers). */
+#define TARGET_MASK_MUL_BUG 16384
+#define TARGET_MUL_BUG (target_flags & TARGET_MASK_MUL_BUG)
+
#define TARGET_SWITCHES \
{ \
+ {"mul-bug-workaround", TARGET_MASK_MUL_BUG, \
+ N_("Work around bug in multiplication instruction")}, \
+ {"no-mul-bug-workaround", -TARGET_MASK_MUL_BUG, ""}, \
/* No "no-etrax" as it does not really imply any model. \
On the other hand, "etrax" implies the common (and large) \
subset matching all models. */ \
@@ -404,7 +438,7 @@ extern int target_flags;
# define TARGET_DEFAULT \
(TARGET_MASK_SIDE_EFFECT_PREFIXES + TARGET_MASK_STACK_ALIGN \
+ TARGET_MASK_CONST_ALIGN + TARGET_MASK_DATA_ALIGN \
- + TARGET_MASK_PROLOGUE_EPILOGUE)
+ + TARGET_MASK_PROLOGUE_EPILOGUE + TARGET_MASK_MUL_BUG)
#endif
/* For the cris-*-elf subtarget. */
@@ -955,7 +989,7 @@ struct cum_args {int regs;};
/* The regs member is an integer, the number of arguments got into
registers so far. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL, N_NAMED_ARGS) \
((CUM).regs = 0)
#define FUNCTION_ARG_ADVANCE(CUM, MODE, TYPE, NAMED) \
@@ -1497,7 +1531,8 @@ call_ ## FUNC (void) \
cris_print_operand (FILE, X, CODE)
/* For delay-slot handling. */
-#define PRINT_OPERAND_PUNCT_VALID_P(CODE) (CODE == '#')
+#define PRINT_OPERAND_PUNCT_VALID_P(CODE) \
+ ((CODE) == '#' || (CODE) == '!')
#define PRINT_OPERAND_ADDRESS(FILE, ADDR) \
cris_print_operand_address (FILE, ADDR)
diff --git a/gcc/config/cris/cris.md b/gcc/config/cris/cris.md
index 8fb07039f04..7e96d22b65e 100644
--- a/gcc/config/cris/cris.md
+++ b/gcc/config/cris/cris.md
@@ -2468,8 +2468,11 @@
(zero_extend:SI (match_operand:HI 1 "register_operand" "0"))
(zero_extend:SI (match_operand:HI 2 "register_operand" "r"))))]
"TARGET_HAS_MUL_INSNS"
- "mulu.w %2,%0"
- [(set_attr "slottable" "yes")
+ "%!mulu.w %2,%0"
+ [(set (attr "slottable")
+ (if_then_else (ne (symbol_ref "TARGET_MUL_BUG") (const_int 0))
+ (const_string "no")
+ (const_string "yes")))
;; Just N unusable here, but let's be safe.
(set_attr "cc" "clobber")])
@@ -2479,8 +2482,11 @@
(zero_extend:HI (match_operand:QI 1 "register_operand" "0"))
(zero_extend:HI (match_operand:QI 2 "register_operand" "r"))))]
"TARGET_HAS_MUL_INSNS"
- "mulu.b %2,%0"
- [(set_attr "slottable" "yes")
+ "%!mulu.b %2,%0"
+ [(set (attr "slottable")
+ (if_then_else (ne (symbol_ref "TARGET_MUL_BUG") (const_int 0))
+ (const_string "no")
+ (const_string "yes")))
;; Not exactly sure, but let's be safe.
(set_attr "cc" "clobber")])
@@ -2495,8 +2501,11 @@
(mult:SI (match_operand:SI 1 "register_operand" "0")
(match_operand:SI 2 "register_operand" "r")))]
"TARGET_HAS_MUL_INSNS"
- "muls.d %2,%0"
- [(set_attr "slottable" "yes")
+ "%!muls.d %2,%0"
+ [(set (attr "slottable")
+ (if_then_else (ne (symbol_ref "TARGET_MUL_BUG") (const_int 0))
+ (const_string "no")
+ (const_string "yes")))
;; Just N unusable here, but let's be safe.
(set_attr "cc" "clobber")])
@@ -2510,8 +2519,11 @@
(sign_extend:HI (match_operand:QI 1 "register_operand" "0"))
(sign_extend:HI (match_operand:QI 2 "register_operand" "r"))))]
"TARGET_HAS_MUL_INSNS"
- "muls.b %2,%0"
- [(set_attr "slottable" "yes")
+ "%!muls.b %2,%0"
+ [(set (attr "slottable")
+ (if_then_else (ne (symbol_ref "TARGET_MUL_BUG") (const_int 0))
+ (const_string "no")
+ (const_string "yes")))
(set_attr "cc" "clobber")])
(define_insn "mulhisi3"
@@ -2520,8 +2532,11 @@
(sign_extend:SI (match_operand:HI 1 "register_operand" "0"))
(sign_extend:SI (match_operand:HI 2 "register_operand" "r"))))]
"TARGET_HAS_MUL_INSNS"
- "muls.w %2,%0"
- [(set_attr "slottable" "yes")
+ "%!muls.w %2,%0"
+ [(set (attr "slottable")
+ (if_then_else (ne (symbol_ref "TARGET_MUL_BUG") (const_int 0))
+ (const_string "no")
+ (const_string "yes")))
;; Just N unusable here, but let's be safe.
(set_attr "cc" "clobber")])
@@ -2537,7 +2552,7 @@
(sign_extend:DI (match_operand:SI 1 "register_operand" "0"))
(sign_extend:DI (match_operand:SI 2 "register_operand" "r"))))]
"TARGET_HAS_MUL_INSNS"
- "muls.d %2,%M0\;move $mof,%H0")
+ "%!muls.d %2,%M0\;move $mof,%H0")
(define_insn "umulsidi3"
[(set (match_operand:DI 0 "register_operand" "=r")
@@ -2545,7 +2560,7 @@
(zero_extend:DI (match_operand:SI 1 "register_operand" "0"))
(zero_extend:DI (match_operand:SI 2 "register_operand" "r"))))]
"TARGET_HAS_MUL_INSNS"
- "mulu.d %2,%M0\;move $mof,%H0")
+ "%!mulu.d %2,%M0\;move $mof,%H0")
;; This pattern would probably not be needed if we add "mof" in its own
;; register class (and open a can of worms about /not/ pairing it with a
@@ -2564,7 +2579,7 @@
(const_int 32))))
(clobber (match_scratch:SI 3 "=X,1,1"))]
"TARGET_HAS_MUL_INSNS"
- "muls.d %2,%1\;move $mof,%0"
+ "%!muls.d %2,%1\;move $mof,%0"
[(set_attr "cc" "clobber")])
(define_insn "umulsi3_highpart"
@@ -2577,7 +2592,7 @@
(const_int 32))))
(clobber (match_scratch:SI 3 "=X,1,1"))]
"TARGET_HAS_MUL_INSNS"
- "mulu.d %2,%1\;move $mof,%0"
+ "%!mulu.d %2,%1\;move $mof,%0"
[(set_attr "cc" "clobber")])
;; Divide and modulus instructions. CRIS only has a step instruction.
@@ -2682,17 +2697,19 @@
(define_insn "*andsi_movu"
[(set (match_operand:SI 0 "register_operand" "=r,r,r")
- (and:SI (match_operand:SI 1 "nonimmediate_operand" "%r,Q>,m")
+ (and:SI (match_operand:SI 1 "nonimmediate_operand" "%r,Q,To")
(match_operand:SI 2 "const_int_operand" "n,n,n")))]
- "INTVAL (operands[2]) == 255 || INTVAL (operands[2]) == 65535"
+ "(INTVAL (operands[2]) == 255 || INTVAL (operands[2]) == 65535)
+ && (GET_CODE (operands[1]) != MEM || ! MEM_VOLATILE_P (operands[1]))"
"movu.%z2 %1,%0"
[(set_attr "slottable" "yes,yes,no")])
(define_insn "*andsi_clear"
- [(set (match_operand:SI 0 "nonimmediate_operand" "=r,r,Q>,Q>,m,m")
+ [(set (match_operand:SI 0 "nonimmediate_operand" "=r,r,Q,Q,To,To")
(and:SI (match_operand:SI 1 "nonimmediate_operand" "%0,0,0,0,0,0")
(match_operand:SI 2 "const_int_operand" "P,n,P,n,P,n")))]
- "INTVAL (operands[2]) == -65536 || INTVAL (operands[2]) == -256"
+ "(INTVAL (operands[2]) == -65536 || INTVAL (operands[2]) == -256)
+ && (GET_CODE (operands[0]) != MEM || ! MEM_VOLATILE_P (operands[0]))"
"@
cLear.b %0
cLear.w %0
@@ -2770,27 +2787,17 @@
(define_insn "*andhi_movu"
[(set (match_operand:HI 0 "register_operand" "=r,r,r")
- (and:HI (match_operand:HI 1 "nonimmediate_operand" "r,Q>,m")
+ (and:HI (match_operand:HI 1 "nonimmediate_operand" "r,Q,To")
(const_int 255)))]
- ""
+ "GET_CODE (operands[1]) != MEM || ! MEM_VOLATILE_P (operands[1])"
"mOvu.b %1,%0"
[(set_attr "slottable" "yes,yes,no")])
-(define_insn "*andhi_clear_signed"
- [(set (match_operand:HI 0 "nonimmediate_operand" "=r,Q>,m")
+(define_insn "*andhi_clear"
+ [(set (match_operand:HI 0 "nonimmediate_operand" "=r,Q,To")
(and:HI (match_operand:HI 1 "nonimmediate_operand" "0,0,0")
(const_int -256)))]
- ""
- "cLear.b %0"
- [(set_attr "slottable" "yes,yes,no")
- (set_attr "cc" "none")])
-
-;; FIXME: Either this or the pattern above should be redundant.
-(define_insn "*andhi_clear_unsigned"
- [(set (match_operand:HI 0 "nonimmediate_operand" "=r,Q>,m")
- (and:HI (match_operand:HI 1 "nonimmediate_operand" "0,0,0")
- (const_int 65280)))]
- ""
+ "GET_CODE (operands[0]) != MEM || ! MEM_VOLATILE_P (operands[0])"
"cLear.b %0"
[(set_attr "slottable" "yes,yes,no")
(set_attr "cc" "none")])
diff --git a/gcc/config/cris/mulsi3.asm b/gcc/config/cris/mulsi3.asm
index 3c482e7f2a9..69d9dedd966 100644
--- a/gcc/config/cris/mulsi3.asm
+++ b/gcc/config/cris/mulsi3.asm
@@ -82,8 +82,13 @@
.type ___Mul,@function
___Mul:
#if defined (__CRIS_arch_version) && __CRIS_arch_version >= 10
- ret
+;; Can't have the mulu.d last on a cache-line (in the delay-slot of the
+;; "ret"), due to hardware bug. See documentation for -mmul-bug-workaround.
+;; Not worthwhile to conditionalize here.
+ .p2alignw 2,0x050f
mulu.d $r11,$r10
+ ret
+ nop
#else
move.d $r10,$r12
move.d $r11,$r9
diff --git a/gcc/config/d30v/d30v.h b/gcc/config/d30v/d30v.h
index 7e95d3a7fa9..62d0e2af097 100644
--- a/gcc/config/d30v/d30v.h
+++ b/gcc/config/d30v/d30v.h
@@ -1,5 +1,5 @@
/* Definitions of target machine for Mitsubishi D30V.
- Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Contributed by Cygnus Solutions.
@@ -1216,7 +1216,7 @@ typedef struct d30v_stack {
being processed. Thus, each time this macro is called, either LIBNAME or
FNTYPE is nonzero, but never both of them at once. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL, N_NAMED_ARGS) \
d30v_init_cumulative_args (&CUM, FNTYPE, LIBNAME, FNDECL, FALSE)
/* Like `INIT_CUMULATIVE_ARGS' but overrides it for the purposes of finding the
diff --git a/gcc/config/darwin.h b/gcc/config/darwin.h
index 3470f7b8ca1..045091aff5e 100644
--- a/gcc/config/darwin.h
+++ b/gcc/config/darwin.h
@@ -195,7 +195,7 @@ Boston, MA 02111-1307, USA. */
%{L*} %(link_libgcc) %o %{fprofile-arcs|fprofile-generate:-lgcov} \
%{!nostdlib:%{!nodefaultlibs:%G %L}} \
%{!A:%{!nostdlib:%{!nostartfiles:%E}}} %{T*} %{F*} \
- %{!--help:%{!no-c++filt|c++filt:| c++filt3 }} }}}}}}}}"
+ %{!--help:%{!no-c++filt|c++filt:| c++filt }} }}}}}}}}"
/* Please keep the random linker options in alphabetical order (modulo
'Z' and 'no' prefixes). Options that can only go to one of libtool
diff --git a/gcc/config/dsp16xx/dsp16xx.h b/gcc/config/dsp16xx/dsp16xx.h
index cea995ca104..472ba1f0d9b 100644
--- a/gcc/config/dsp16xx/dsp16xx.h
+++ b/gcc/config/dsp16xx/dsp16xx.h
@@ -1196,7 +1196,8 @@ extern struct dsp16xx_frame_info current_frame_info;
/* Initialize a variable CUM of type CUMULATIVE_ARGS
for a call to a function whose data type is FNTYPE.
For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) ((CUM) = 0)
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
+ ((CUM) = 0)
/* Update the data in CUM to advance over an argument
of mode MODE and data type TYPE.
diff --git a/gcc/config/fp-bit.c b/gcc/config/fp-bit.c
index 51c67430535..e7556c4f849 100644
--- a/gcc/config/fp-bit.c
+++ b/gcc/config/fp-bit.c
@@ -1,6 +1,6 @@
/* This is a software floating point library which can be used
for targets without hardware floating point.
- Copyright (C) 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003
+ Copyright (C) 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is free software; you can redistribute it and/or modify it
@@ -330,58 +330,76 @@ pack_d ( fp_number_type * src)
#else
# if defined TFLOAT && defined HALFFRACBITS
{
- halffractype high, low;
-
- high = (fraction >> (FRACBITS - HALFFRACBITS));
- high &= (((fractype)1) << HALFFRACBITS) - 1;
- high |= ((fractype) (exp & ((1 << EXPBITS) - 1))) << HALFFRACBITS;
- high |= ((fractype) (sign & 1)) << (HALFFRACBITS | EXPBITS);
-
- low = (halffractype)fraction &
- ((((halffractype)1) << (FRACBITS - HALFFRACBITS)) - 1);
+ halffractype high, low, unity;
+ int lowsign, lowexp;
+
+ unity = (halffractype) 1 << HALFFRACBITS;
+
+ /* Set HIGH to the high double's significand, masking out the implicit 1.
+ Set LOW to the low double's full significand. */
+ high = (fraction >> (FRACBITS - HALFFRACBITS)) & (unity - 1);
+ low = fraction & (unity * 2 - 1);
+
+ /* Get the initial sign and exponent of the low double. */
+ lowexp = exp - HALFFRACBITS - 1;
+ lowsign = sign;
+
+ /* HIGH should be rounded like a normal double, making |LOW| <=
+ 0.5 ULP of HIGH. Assume round-to-nearest. */
+ if (exp < EXPMAX)
+ if (low > unity || (low == unity && (high & 1) == 1))
+ {
+ /* Round HIGH up and adjust LOW to match. */
+ high++;
+ if (high == unity)
+ {
+ /* May make it infinite, but that's OK. */
+ high = 0;
+ exp++;
+ }
+ low = unity * 2 - low;
+ lowsign ^= 1;
+ }
+
+ high |= (halffractype) exp << HALFFRACBITS;
+ high |= (halffractype) sign << (HALFFRACBITS + EXPBITS);
if (exp == EXPMAX || exp == 0 || low == 0)
low = 0;
else
{
- exp -= HALFFRACBITS + 1;
-
- while (exp > 0
- && low < ((halffractype)1 << HALFFRACBITS))
+ while (lowexp > 0 && low < unity)
{
low <<= 1;
- exp--;
+ lowexp--;
}
- if (exp <= 0)
+ if (lowexp <= 0)
{
halffractype roundmsb, round;
+ int shift;
- exp = -exp + 1;
-
- roundmsb = (1 << (exp - 1));
+ shift = 1 - lowexp;
+ roundmsb = (1 << (shift - 1));
round = low & ((roundmsb << 1) - 1);
- low >>= exp;
- exp = 0;
+ low >>= shift;
+ lowexp = 0;
- if (round > roundmsb || (round == roundmsb && (low & 1)))
+ if (round > roundmsb || (round == roundmsb && (low & 1) == 1))
{
low++;
- if (low >= ((halffractype)1 << HALFFRACBITS))
- /* We don't shift left, since it has just become the
- smallest normal number, whose implicit 1 bit is
- now indicated by the nonzero exponent. */
- exp++;
+ if (low == unity)
+ /* LOW rounds up to the smallest normal number. */
+ lowexp++;
}
}
- low &= ((halffractype)1 << HALFFRACBITS) - 1;
- low |= ((fractype) (exp & ((1 << EXPBITS) - 1))) << HALFFRACBITS;
- low |= ((fractype) (sign & 1)) << (HALFFRACBITS | EXPBITS);
+ low &= unity - 1;
+ low |= (halffractype) lowexp << HALFFRACBITS;
+ low |= (halffractype) lowsign << (HALFFRACBITS + EXPBITS);
}
-
- dst.value_raw = (((fractype) high) << HALFSHIFT) | low;
+ dst.value_raw = ((fractype) high << HALFSHIFT) | low;
}
# else
dst.value_raw = fraction & ((((fractype)1) << FRACBITS) - (fractype)1);
@@ -475,8 +493,16 @@ unpack_d (FLO_union_type * src, fp_number_type * dst)
xlow >>= -shift;
if (sign == lowsign)
fraction += xlow;
- else
+ else if (fraction >= xlow)
fraction -= xlow;
+ else
+ {
+ /* The high part is a power of two but the full number is lower.
+ This code will leave the implicit 1 in FRACTION, but we'd
+ have added that below anyway. */
+ fraction = (((fractype) 1 << FRACBITS) - xlow) << 1;
+ exp--;
+ }
}
}
# else
diff --git a/gcc/config/fr30/fr30.h b/gcc/config/fr30/fr30.h
index 845b4f1e111..804065062d5 100644
--- a/gcc/config/fr30/fr30.h
+++ b/gcc/config/fr30/fr30.h
@@ -764,7 +764,8 @@ enum reg_class
the function, as a string. LIBNAME is 0 when an ordinary C function call is
being processed. Thus, each time this macro is called, either LIBNAME or
FNTYPE is nonzero, but never both of them at once. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT) (CUM) = 0
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
+ (CUM) = 0
/* A C statement (sans semicolon) to update the summarizer variable CUM to
advance past an argument in the argument list. The values MODE, TYPE and
diff --git a/gcc/config/freebsd-spec.h b/gcc/config/freebsd-spec.h
index feb08e2333e..e4459ba6aa6 100644
--- a/gcc/config/freebsd-spec.h
+++ b/gcc/config/freebsd-spec.h
@@ -147,3 +147,9 @@ is built with the --enable-threads configure-time option.} \
}"
#endif
#endif
+
+#if FBSD_MAJOR < 6
+#define FBSD_DYNAMIC_LINKER "/usr/libexec/ld-elf.so.1"
+#else
+#define FBSD_DYNAMIC_LINKER "/libexec/ld-elf.so.1"
+#endif
diff --git a/gcc/config/frv/frv-protos.h b/gcc/config/frv/frv-protos.h
index d664bb070f6..90292b17d6e 100644
--- a/gcc/config/frv/frv-protos.h
+++ b/gcc/config/frv/frv-protos.h
@@ -1,5 +1,5 @@
/* Frv prototypes.
- Copyright (C) 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2001, 2003, 2004 Free Software Foundation, Inc.
Contributed by Red Hat, Inc.
This file is part of GCC.
diff --git a/gcc/config/frv/frv.c b/gcc/config/frv/frv.c
index ae0c6bd80c6..1a750427fac 100644
--- a/gcc/config/frv/frv.c
+++ b/gcc/config/frv/frv.c
@@ -1,4 +1,5 @@
-/* Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004
+ Free Software Foundation, Inc.
Contributed by Red Hat, Inc.
This file is part of GCC.
diff --git a/gcc/config/frv/frv.h b/gcc/config/frv/frv.h
index 9f85d57637d..0b8740428e2 100644
--- a/gcc/config/frv/frv.h
+++ b/gcc/config/frv/frv.h
@@ -1,5 +1,6 @@
/* Target macros for the FRV port of GCC.
- Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
Contributed by Red Hat Inc.
This file is part of GCC.
@@ -1945,7 +1946,7 @@ struct machine_function GTY(())
being processed. Thus, each time this macro is called, either LIBNAME or
FNTYPE is nonzero, but never both of them at once. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL, N_NAMED_ARGS) \
frv_init_cumulative_args (&CUM, FNTYPE, LIBNAME, FNDECL, FALSE)
/* Like `INIT_CUMULATIVE_ARGS' but overrides it for the purposes of finding the
diff --git a/gcc/config/frv/frv.md b/gcc/config/frv/frv.md
index 95a7590a32c..aef10bc9d43 100644
--- a/gcc/config/frv/frv.md
+++ b/gcc/config/frv/frv.md
@@ -1,5 +1,5 @@
;; Frv Machine Description
-;; Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
+;; Copyright (C) 1999, 2000, 2001, 2004 Free Software Foundation, Inc.
;; Contributed by Red Hat, Inc.
;; This file is part of GCC.
diff --git a/gcc/config/frv/frvbegin.c b/gcc/config/frv/frvbegin.c
index 0e241047eaf..d021b3540a5 100644
--- a/gcc/config/frv/frvbegin.c
+++ b/gcc/config/frv/frvbegin.c
@@ -1,5 +1,5 @@
/* Frv initialization file linked before all user modules
- Copyright (C) 1999, 2000, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc.
Contributed by Red Hat, Inc.
This file is part of GCC.
diff --git a/gcc/config/frv/frvend.c b/gcc/config/frv/frvend.c
index c12c151433b..6709cdba078 100644
--- a/gcc/config/frv/frvend.c
+++ b/gcc/config/frv/frvend.c
@@ -1,5 +1,5 @@
/* Frv initialization file linked after all user modules
- Copyright (C) 1999, 2000, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc.
Contributed by Red Hat, Inc.
This file is part of GCC.
diff --git a/gcc/config/h8300/coff.h b/gcc/config/h8300/coff.h
index 72a74083fd4..7d173193ad1 100644
--- a/gcc/config/h8300/coff.h
+++ b/gcc/config/h8300/coff.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler.
Renesas H8/300 version generating coff
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
Contributed by Steve Chamberlain (sac@cygnus.com),
Jim Wilson (wilson@cygnus.com), and Doug Evans (dje@cygnus.com).
diff --git a/gcc/config/h8300/elf.h b/gcc/config/h8300/elf.h
index 47c70b58f47..ecd0603814c 100644
--- a/gcc/config/h8300/elf.h
+++ b/gcc/config/h8300/elf.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler.
Renesas H8/300 version generating elf
- Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Steve Chamberlain (sac@cygnus.com),
Jim Wilson (wilson@cygnus.com), and Doug Evans (dje@cygnus.com).
diff --git a/gcc/config/h8300/h8300-protos.h b/gcc/config/h8300/h8300-protos.h
index 8d8ae097b23..7607b9b8256 100644
--- a/gcc/config/h8300/h8300-protos.h
+++ b/gcc/config/h8300/h8300-protos.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler.
Renesas H8/300 version
- Copyright (C) 2000, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Steve Chamberlain (sac@cygnus.com),
Jim Wilson (wilson@cygnus.com), and Doug Evans (dje@cygnus.com).
diff --git a/gcc/config/h8300/h8300.c b/gcc/config/h8300/h8300.c
index 2a4bb2962da..4db04ec859d 100644
--- a/gcc/config/h8300/h8300.c
+++ b/gcc/config/h8300/h8300.c
@@ -1,6 +1,6 @@
/* Subroutines for insn-output.c for Renesas H8/300.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Steve Chamberlain (sac@cygnus.com),
Jim Wilson (wilson@cygnus.com), and Doug Evans (dje@cygnus.com).
@@ -338,6 +338,9 @@ byte_reg (rtx x, int b)
"r4l", "r4h", "r5l", "r5h", "r6l", "r6h", "r7l", "r7h"
};
+ if (!REG_P (x))
+ abort ();
+
return names_small[REGNO (x) * 2 + b];
}
diff --git a/gcc/config/h8300/h8300.h b/gcc/config/h8300/h8300.h
index 0b2b74b42cb..9d33e5e9d4a 100644
--- a/gcc/config/h8300/h8300.h
+++ b/gcc/config/h8300/h8300.h
@@ -1,7 +1,7 @@
/* Definitions of target machine for GNU compiler.
Renesas H8/300 (generic)
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Steve Chamberlain (sac@cygnus.com),
Jim Wilson (wilson@cygnus.com), and Doug Evans (dje@cygnus.com).
@@ -661,7 +661,7 @@ struct cum_arg
On the H8/300, the offset starts at 0. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM).nbytes = 0, (CUM).libcall = LIBNAME)
/* Update the data in CUM to advance over an argument
diff --git a/gcc/config/h8300/h8300.md b/gcc/config/h8300/h8300.md
index 301f464fc82..12b55dcbb09 100644
--- a/gcc/config/h8300/h8300.md
+++ b/gcc/config/h8300/h8300.md
@@ -1,6 +1,6 @@
;; GCC machine description for Renesas H8/300
;; Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-;; 2001, 2002, 2003 Free Software Foundation, Inc.
+;; 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
;; Contributed by Steve Chamberlain (sac@cygnus.com),
;; Jim Wilson (wilson@cygnus.com), and Doug Evans (dje@cygnus.com).
diff --git a/gcc/config/h8300/lib1funcs.asm b/gcc/config/h8300/lib1funcs.asm
index 93656275efe..22379901aff 100644
--- a/gcc/config/h8300/lib1funcs.asm
+++ b/gcc/config/h8300/lib1funcs.asm
@@ -816,7 +816,7 @@ L_skip2:
behavior is undefined anyways. */
.global ___fixunssfsi
___fixunssfsi:
- cmp.b #0x47,r0h
+ cmp.b #0x4f,r0h
bge Large_num
jmp @___fixsfsi
Large_num:
diff --git a/gcc/config/h8300/t-rtems b/gcc/config/h8300/t-rtems
new file mode 100644
index 00000000000..104ee2366f1
--- /dev/null
+++ b/gcc/config/h8300/t-rtems
@@ -0,0 +1,7 @@
+# Custom multilibs for RTEMS
+
+# -mn is not applicable to RTEMS (-mn implies 16bit void*)
+
+MULTILIB_OPTIONS = mh/ms mint32
+MULTILIB_DIRNAMES = h8300h h8300s int32
+MULTILIB_EXCEPTIONS = mint32
diff --git a/gcc/config/i370/i370.h b/gcc/config/i370/i370.h
index 8109ddedc2e..5d7037f4902 100644
--- a/gcc/config/i370/i370.h
+++ b/gcc/config/i370/i370.h
@@ -527,7 +527,8 @@ enum reg_class
a function whose data type is FNTYPE.
For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT) ((CUM) = 0)
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
+ ((CUM) = 0)
/* Update the data in CUM to advance over an argument of mode MODE and
data type TYPE. (TYPE is null for libcalls where that information
diff --git a/gcc/config/i386/cygming.h b/gcc/config/i386/cygming.h
index 11d14fef0da..4652802102c 100644
--- a/gcc/config/i386/cygming.h
+++ b/gcc/config/i386/cygming.h
@@ -1,6 +1,6 @@
/* Operating system specific defines to be used when targeting GCC for
hosting on Windows32, using a Unix style C library and tools.
- Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/i386/djgpp.h b/gcc/config/i386/djgpp.h
index b0c87dbbc56..cee9480d69c 100644
--- a/gcc/config/i386/djgpp.h
+++ b/gcc/config/i386/djgpp.h
@@ -1,5 +1,5 @@
/* Configuration for an i386 running MS-DOS with DJGPP.
- Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002
+ Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004
Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/i386/emmintrin.h b/gcc/config/i386/emmintrin.h
index a7dbc6785cb..abe450a8f33 100644
--- a/gcc/config/i386/emmintrin.h
+++ b/gcc/config/i386/emmintrin.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/i386/freebsd.h b/gcc/config/i386/freebsd.h
index 7396a47ce42..9e538e916a2 100644
--- a/gcc/config/i386/freebsd.h
+++ b/gcc/config/i386/freebsd.h
@@ -57,6 +57,10 @@ Boston, MA 02111-1307, USA. */
#undef WCHAR_TYPE_SIZE
#define WCHAR_TYPE_SIZE (TARGET_64BIT ? 32 : BITS_PER_WORD)
+
+#undef SUBTARGET_EXTRA_SPECS /* i386.h bogusly defines it. */
+#define SUBTARGET_EXTRA_SPECS \
+ { "fbsd_dynamic_linker", FBSD_DYNAMIC_LINKER }
/* Provide a STARTFILE_SPEC appropriate for FreeBSD. Here we add
the magical crtbegin.o file (see crtstuff.c) which provides part
@@ -105,7 +109,7 @@ Boston, MA 02111-1307, USA. */
%{!shared: \
%{!static: \
%{rdynamic:-export-dynamic} \
- %{!dynamic-linker:-dynamic-linker /usr/libexec/ld-elf.so.1}} \
+ %{!dynamic-linker:-dynamic-linker %(fbsd_dynamic_linker) }} \
%{static:-Bstatic}} \
%{symbolic:-Bsymbolic}"
diff --git a/gcc/config/i386/freebsd64.h b/gcc/config/i386/freebsd64.h
index 62d21ccc1a1..19e9bc25adb 100644
--- a/gcc/config/i386/freebsd64.h
+++ b/gcc/config/i386/freebsd64.h
@@ -23,6 +23,9 @@ Boston, MA 02111-1307, USA. */
#undef TARGET_VERSION
#define TARGET_VERSION fprintf (stderr, " (FreeBSD/x86-64 ELF)");
+#define SUBTARGET_EXTRA_SPECS \
+ { "fbsd_dynamic_linker", FBSD_DYNAMIC_LINKER }
+
/* Provide a LINK_SPEC appropriate for the FreeBSD/x86-64 ELF target.
This is a copy of LINK_SPEC from <i386/freebsd.h> tweaked for
the x86-64 target. */
@@ -37,6 +40,6 @@ Boston, MA 02111-1307, USA. */
%{!shared: \
%{!static: \
%{rdynamic:-export-dynamic} \
- %{!dynamic-linker:-dynamic-linker /usr/libexec/ld-elf.so.1}} \
+ %{!dynamic-linker:-dynamic-linker %(fbsd_dynamic_linker) }} \
%{static:-Bstatic}} \
%{symbolic:-Bsymbolic}"
diff --git a/gcc/config/i386/gthr-win32.c b/gcc/config/i386/gthr-win32.c
index fde4aa20936..4e2b282251d 100644
--- a/gcc/config/i386/gthr-win32.c
+++ b/gcc/config/i386/gthr-win32.c
@@ -1,7 +1,7 @@
/* Implementation of W32-specific threads compatibility routines for
libgcc2. */
-/* Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1999, 2000, 2002, 2004 Free Software Foundation, Inc.
Contributed by Mumit Khan <khan@xraylith.wisc.edu>.
Modified and moved to separate file by Danny Smith
<dannysmith@users.sourceforge.net>.
diff --git a/gcc/config/i386/i386-interix.h b/gcc/config/i386/i386-interix.h
index fa0eec2421f..2a99ce549a7 100644
--- a/gcc/config/i386/i386-interix.h
+++ b/gcc/config/i386/i386-interix.h
@@ -1,5 +1,6 @@
/* Target definitions for GCC for Intel 80386 running Interix
- Parts Copyright (C) 1991, 1999, 2000, 2002, 2003 Free Software Foundation, Inc.
+ Parts Copyright (C) 1991, 1999, 2000, 2002, 2003, 2004
+ Free Software Foundation, Inc.
Parts:
by Douglas B. Rupp (drupp@cs.washington.edu).
diff --git a/gcc/config/i386/i386-protos.h b/gcc/config/i386/i386-protos.h
index cc04a680d60..cc1bb813afe 100644
--- a/gcc/config/i386/i386-protos.h
+++ b/gcc/config/i386/i386-protos.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GCC for IA-32.
Copyright (C) 1988, 1992, 1994, 1995, 1996, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -178,7 +178,6 @@ extern int ix86_secondary_memory_needed (enum reg_class, enum reg_class,
enum machine_mode, int);
extern enum reg_class ix86_preferred_reload_class (rtx, enum reg_class);
extern int ix86_memory_move_cost (enum machine_mode, enum reg_class, int);
-extern void ix86_set_move_mem_attrs (rtx, rtx, rtx, rtx, rtx);
extern void emit_i387_cw_initialization (rtx, rtx);
extern bool ix86_fp_jump_nontrivial_p (enum rtx_code);
extern void x86_order_regs_for_local_alloc (void);
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index b7c7008e683..15bfee88511 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -1,6 +1,6 @@
/* Subroutines used for code generation on IA-32.
Copyright (C) 1988, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
- 2002, 2003 Free Software Foundation, Inc.
+ 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -793,6 +793,9 @@ static rtx maybe_get_pool_constant (rtx);
static rtx ix86_expand_int_compare (enum rtx_code, rtx, rtx);
static enum rtx_code ix86_prepare_fp_compare_args (enum rtx_code, rtx *,
rtx *);
+static bool ix86_fixed_condition_code_regs (unsigned int *, unsigned int *);
+static enum machine_mode ix86_cc_modes_compatible (enum machine_mode,
+ enum machine_mode);
static rtx get_thread_pointer (int);
static rtx legitimize_tls_address (rtx, enum tls_model, int);
static void get_pc_thunk_name (char [32], unsigned int);
@@ -808,14 +811,13 @@ static int ix86_split_to_parts (rtx, rtx *, enum machine_mode);
static int ix86_nsaved_regs (void);
static void ix86_emit_save_regs (void);
static void ix86_emit_save_regs_using_mov (rtx, HOST_WIDE_INT);
-static void ix86_emit_restore_regs_using_mov (rtx, int, int);
+static void ix86_emit_restore_regs_using_mov (rtx, HOST_WIDE_INT, int);
static void ix86_output_function_epilogue (FILE *, HOST_WIDE_INT);
-static void ix86_set_move_mem_attrs_1 (rtx, rtx, rtx, rtx, rtx);
static void ix86_sched_reorder_ppro (rtx *, rtx *);
static HOST_WIDE_INT ix86_GOT_alias_set (void);
static void ix86_adjust_counter (rtx, HOST_WIDE_INT);
static rtx ix86_expand_aligntest (rtx, int);
-static void ix86_expand_strlensi_unroll_1 (rtx, rtx);
+static void ix86_expand_strlensi_unroll_1 (rtx, rtx, rtx);
static int ix86_issue_rate (void);
static int ix86_adjust_cost (rtx, rtx, rtx, int);
static void ix86_sched_init (FILE *, int, int);
@@ -1010,6 +1012,11 @@ static void init_ext_80387_constants (void);
#undef TARGET_ADDRESS_COST
#define TARGET_ADDRESS_COST ix86_address_cost
+#undef TARGET_FIXED_CONDITION_CODE_REGS
+#define TARGET_FIXED_CONDITION_CODE_REGS ix86_fixed_condition_code_regs
+#undef TARGET_CC_MODES_COMPATIBLE
+#define TARGET_CC_MODES_COMPATIBLE ix86_cc_modes_compatible
+
#undef TARGET_MACHINE_DEPENDENT_REORG
#define TARGET_MACHINE_DEPENDENT_REORG ix86_reorg
@@ -1109,6 +1116,8 @@ override_options (void)
| PTA_3DNOW_A | PTA_SSE},
{"athlon-mp", PROCESSOR_ATHLON, PTA_MMX | PTA_PREFETCH_SSE | PTA_3DNOW
| PTA_3DNOW_A | PTA_SSE},
+ {"x86-64", PROCESSOR_K8, PTA_MMX | PTA_PREFETCH_SSE | PTA_64BIT
+ | PTA_SSE | PTA_SSE2 },
{"k8", PROCESSOR_K8, PTA_MMX | PTA_PREFETCH_SSE | PTA_3DNOW | PTA_64BIT
| PTA_3DNOW_A | PTA_SSE | PTA_SSE2},
{"opteron", PROCESSOR_K8, PTA_MMX | PTA_PREFETCH_SSE | PTA_3DNOW | PTA_64BIT
@@ -1151,7 +1160,7 @@ override_options (void)
if (!ix86_tune_string)
ix86_tune_string = cpu_names [TARGET_CPU_DEFAULT];
if (!ix86_arch_string)
- ix86_arch_string = TARGET_64BIT ? "k8" : "i386";
+ ix86_arch_string = TARGET_64BIT ? "x86-64" : "i386";
if (ix86_cmodel_string != 0)
{
@@ -1372,8 +1381,8 @@ override_options (void)
if (x86_arch_always_fancy_math_387 & (1 << ix86_arch))
target_flags &= ~MASK_NO_FANCY_MATH_387;
- /* Turn on SSE2 builtins for -mpni. */
- if (TARGET_PNI)
+ /* Turn on SSE2 builtins for -msse3. */
+ if (TARGET_SSE3)
target_flags |= MASK_SSE2;
/* Turn on SSE builtins for -msse2. */
@@ -1667,6 +1676,9 @@ ix86_comp_type_attributes (tree type1, tree type2)
if (!lookup_attribute (rtdstr, TYPE_ATTRIBUTES (type1))
!= !lookup_attribute (rtdstr, TYPE_ATTRIBUTES (type2)))
return 0;
+ if (ix86_function_regparm (type1, NULL)
+ != ix86_function_regparm (type2, NULL))
+ return 0;
return 1;
}
@@ -5278,16 +5290,29 @@ ix86_expand_prologue (void)
/* Emit code to restore saved registers using MOV insns. First register
is restored from POINTER + OFFSET. */
static void
-ix86_emit_restore_regs_using_mov (rtx pointer, int offset, int maybe_eh_return)
+ix86_emit_restore_regs_using_mov (rtx pointer, HOST_WIDE_INT offset,
+ int maybe_eh_return)
{
int regno;
+ rtx base_address = gen_rtx_MEM (Pmode, pointer);
for (regno = 0; regno < FIRST_PSEUDO_REGISTER; regno++)
if (ix86_save_reg (regno, maybe_eh_return))
{
+ /* Ensure that adjust_address won't be forced to produce pointer
+ out of range allowed by x86-64 instruction set. */
+ if (TARGET_64BIT && offset != trunc_int_for_mode (offset, SImode))
+ {
+ rtx r11;
+
+ r11 = gen_rtx_REG (DImode, FIRST_REX_INT_REG + 3 /* R11 */);
+ emit_move_insn (r11, GEN_INT (offset));
+ emit_insn (gen_adddi3 (r11, r11, pointer));
+ base_address = gen_rtx_MEM (Pmode, r11);
+ offset = 0;
+ }
emit_move_insn (gen_rtx_REG (Pmode, regno),
- adjust_address (gen_rtx_MEM (Pmode, pointer),
- Pmode, offset));
+ adjust_address (base_address, Pmode, offset));
offset += UNITS_PER_WORD;
}
}
@@ -8710,6 +8735,64 @@ ix86_cc_mode (enum rtx_code code, rtx op0, rtx op1)
}
}
+/* Return the fixed registers used for condition codes. */
+
+static bool
+ix86_fixed_condition_code_regs (unsigned int *p1, unsigned int *p2)
+{
+ *p1 = FLAGS_REG;
+ *p2 = FPSR_REG;
+ return true;
+}
+
+/* If two condition code modes are compatible, return a condition code
+ mode which is compatible with both. Otherwise, return
+ VOIDmode. */
+
+static enum machine_mode
+ix86_cc_modes_compatible (enum machine_mode m1, enum machine_mode m2)
+{
+ if (m1 == m2)
+ return m1;
+
+ if (GET_MODE_CLASS (m1) != MODE_CC || GET_MODE_CLASS (m2) != MODE_CC)
+ return VOIDmode;
+
+ if ((m1 == CCGCmode && m2 == CCGOCmode)
+ || (m1 == CCGOCmode && m2 == CCGCmode))
+ return CCGCmode;
+
+ switch (m1)
+ {
+ default:
+ abort ();
+
+ case CCmode:
+ case CCGCmode:
+ case CCGOCmode:
+ case CCNOmode:
+ case CCZmode:
+ switch (m2)
+ {
+ default:
+ return VOIDmode;
+
+ case CCmode:
+ case CCGCmode:
+ case CCGOCmode:
+ case CCNOmode:
+ case CCZmode:
+ return CCmode;
+ }
+
+ case CCFPmode:
+ case CCFPUmode:
+ /* These are only compatible with themselves, which we already
+ checked above. */
+ return VOIDmode;
+ }
+}
+
/* Return true if we should use an FCOMI instruction for this fp comparison. */
int
@@ -10935,11 +11018,10 @@ ix86_zero_extend_to_Pmode (rtx exp)
int
ix86_expand_movstr (rtx dst, rtx src, rtx count_exp, rtx align_exp)
{
- rtx srcreg, destreg, countreg;
+ rtx srcreg, destreg, countreg, srcexp, destexp;
enum machine_mode counter_mode;
HOST_WIDE_INT align = 0;
unsigned HOST_WIDE_INT count = 0;
- rtx insns;
if (GET_CODE (align_exp) == CONST_INT)
align = INTVAL (align_exp);
@@ -10968,28 +11050,27 @@ ix86_expand_movstr (rtx dst, rtx src, rtx count_exp, rtx align_exp)
else
counter_mode = DImode;
- start_sequence ();
-
if (counter_mode != SImode && counter_mode != DImode)
abort ();
destreg = copy_to_mode_reg (Pmode, XEXP (dst, 0));
+ if (destreg != XEXP (dst, 0))
+ dst = replace_equiv_address_nv (dst, destreg);
srcreg = copy_to_mode_reg (Pmode, XEXP (src, 0));
-
- emit_insn (gen_cld ());
+ if (srcreg != XEXP (src, 0))
+ src = replace_equiv_address_nv (src, srcreg);
/* When optimizing for size emit simple rep ; movsb instruction for
counts not divisible by 4. */
if ((!optimize || optimize_size) && (count == 0 || (count & 0x03)))
{
+ emit_insn (gen_cld ());
countreg = ix86_zero_extend_to_Pmode (count_exp);
- if (TARGET_64BIT)
- emit_insn (gen_rep_movqi_rex64 (destreg, srcreg, countreg,
- destreg, srcreg, countreg));
- else
- emit_insn (gen_rep_movqi (destreg, srcreg, countreg,
- destreg, srcreg, countreg));
+ destexp = gen_rtx_PLUS (Pmode, destreg, countreg);
+ srcexp = gen_rtx_PLUS (Pmode, srcreg, countreg);
+ emit_insn (gen_rep_mov (destreg, dst, srcreg, src, countreg,
+ destexp, srcexp));
}
/* For constant aligned (or small unaligned) copies use rep movsl
@@ -11001,32 +11082,53 @@ ix86_expand_movstr (rtx dst, rtx src, rtx count_exp, rtx align_exp)
|| (!TARGET_PENTIUMPRO && !TARGET_64BIT && align >= 4)
|| optimize_size || count < (unsigned int) 64))
{
+ unsigned HOST_WIDE_INT offset = 0;
int size = TARGET_64BIT && !optimize_size ? 8 : 4;
+ rtx srcmem, dstmem;
+
+ emit_insn (gen_cld ());
if (count & ~(size - 1))
{
countreg = copy_to_mode_reg (counter_mode,
GEN_INT ((count >> (size == 4 ? 2 : 3))
& (TARGET_64BIT ? -1 : 0x3fffffff)));
countreg = ix86_zero_extend_to_Pmode (countreg);
- if (size == 4)
- {
- if (TARGET_64BIT)
- emit_insn (gen_rep_movsi_rex64 (destreg, srcreg, countreg,
- destreg, srcreg, countreg));
- else
- emit_insn (gen_rep_movsi (destreg, srcreg, countreg,
- destreg, srcreg, countreg));
- }
- else
- emit_insn (gen_rep_movdi_rex64 (destreg, srcreg, countreg,
- destreg, srcreg, countreg));
+
+ destexp = gen_rtx_ASHIFT (Pmode, countreg,
+ GEN_INT (size == 4 ? 2 : 3));
+ srcexp = gen_rtx_PLUS (Pmode, destexp, srcreg);
+ destexp = gen_rtx_PLUS (Pmode, destexp, destreg);
+
+ emit_insn (gen_rep_mov (destreg, dst, srcreg, src,
+ countreg, destexp, srcexp));
+ offset = count & ~(size - 1);
}
if (size == 8 && (count & 0x04))
- emit_insn (gen_strmovsi (destreg, srcreg));
+ {
+ srcmem = adjust_automodify_address_nv (src, SImode, srcreg,
+ offset);
+ dstmem = adjust_automodify_address_nv (dst, SImode, destreg,
+ offset);
+ emit_insn (gen_strmov (destreg, dstmem, srcreg, srcmem));
+ offset += 4;
+ }
if (count & 0x02)
- emit_insn (gen_strmovhi (destreg, srcreg));
+ {
+ srcmem = adjust_automodify_address_nv (src, HImode, srcreg,
+ offset);
+ dstmem = adjust_automodify_address_nv (dst, HImode, destreg,
+ offset);
+ emit_insn (gen_strmov (destreg, dstmem, srcreg, srcmem));
+ offset += 2;
+ }
if (count & 0x01)
- emit_insn (gen_strmovqi (destreg, srcreg));
+ {
+ srcmem = adjust_automodify_address_nv (src, QImode, srcreg,
+ offset);
+ dstmem = adjust_automodify_address_nv (dst, QImode, destreg,
+ offset);
+ emit_insn (gen_strmov (destreg, dstmem, srcreg, srcmem));
+ }
}
/* The generic code based on the glibc implementation:
- align destination to 4 bytes (8 byte alignment is used for PentiumPro
@@ -11037,9 +11139,13 @@ ix86_expand_movstr (rtx dst, rtx src, rtx count_exp, rtx align_exp)
{
rtx countreg2;
rtx label = NULL;
+ rtx srcmem, dstmem;
int desired_alignment = (TARGET_PENTIUMPRO
&& (count == 0 || count >= (unsigned int) 260)
? 8 : UNITS_PER_WORD);
+ /* Get rid of MEM_OFFSETs, they won't be accurate. */
+ dst = change_address (dst, BLKmode, destreg);
+ src = change_address (src, BLKmode, srcreg);
/* In case we don't know anything about the alignment, default to
library version, since it is usually equally fast and result in
@@ -11049,10 +11155,7 @@ ix86_expand_movstr (rtx dst, rtx src, rtx count_exp, rtx align_exp)
will not be important. */
if (!TARGET_INLINE_ALL_STRINGOPS
&& (align < UNITS_PER_WORD || !TARGET_REP_MOVL_OPTIMAL))
- {
- end_sequence ();
- return 0;
- }
+ return 0;
if (TARGET_SINGLE_STRINGOP)
emit_insn (gen_cld ());
@@ -11082,7 +11185,9 @@ ix86_expand_movstr (rtx dst, rtx src, rtx count_exp, rtx align_exp)
if (align <= 1)
{
rtx label = ix86_expand_aligntest (destreg, 1);
- emit_insn (gen_strmovqi (destreg, srcreg));
+ srcmem = change_address (src, QImode, srcreg);
+ dstmem = change_address (dst, QImode, destreg);
+ emit_insn (gen_strmov (destreg, dstmem, srcreg, srcmem));
ix86_adjust_counter (countreg, 1);
emit_label (label);
LABEL_NUSES (label) = 1;
@@ -11090,7 +11195,9 @@ ix86_expand_movstr (rtx dst, rtx src, rtx count_exp, rtx align_exp)
if (align <= 2)
{
rtx label = ix86_expand_aligntest (destreg, 2);
- emit_insn (gen_strmovhi (destreg, srcreg));
+ srcmem = change_address (src, HImode, srcreg);
+ dstmem = change_address (dst, HImode, destreg);
+ emit_insn (gen_strmov (destreg, dstmem, srcreg, srcmem));
ix86_adjust_counter (countreg, 2);
emit_label (label);
LABEL_NUSES (label) = 1;
@@ -11098,7 +11205,9 @@ ix86_expand_movstr (rtx dst, rtx src, rtx count_exp, rtx align_exp)
if (align <= 4 && desired_alignment > 4)
{
rtx label = ix86_expand_aligntest (destreg, 4);
- emit_insn (gen_strmovsi (destreg, srcreg));
+ srcmem = change_address (src, SImode, srcreg);
+ dstmem = change_address (dst, SImode, destreg);
+ emit_insn (gen_strmov (destreg, dstmem, srcreg, srcmem));
ix86_adjust_counter (countreg, 4);
emit_label (label);
LABEL_NUSES (label) = 1;
@@ -11116,15 +11225,17 @@ ix86_expand_movstr (rtx dst, rtx src, rtx count_exp, rtx align_exp)
{
emit_insn (gen_lshrdi3 (countreg2, ix86_zero_extend_to_Pmode (countreg),
GEN_INT (3)));
- emit_insn (gen_rep_movdi_rex64 (destreg, srcreg, countreg2,
- destreg, srcreg, countreg2));
+ destexp = gen_rtx_ASHIFT (Pmode, countreg2, GEN_INT (3));
}
else
{
- emit_insn (gen_lshrsi3 (countreg2, countreg, GEN_INT (2)));
- emit_insn (gen_rep_movsi (destreg, srcreg, countreg2,
- destreg, srcreg, countreg2));
+ emit_insn (gen_lshrsi3 (countreg2, countreg, const2_rtx));
+ destexp = gen_rtx_ASHIFT (Pmode, countreg2, const2_rtx);
}
+ srcexp = gen_rtx_PLUS (Pmode, destexp, srcreg);
+ destexp = gen_rtx_PLUS (Pmode, destexp, destreg);
+ emit_insn (gen_rep_mov (destreg, dst, srcreg, src,
+ countreg2, destexp, srcexp));
if (label)
{
@@ -11132,48 +11243,61 @@ ix86_expand_movstr (rtx dst, rtx src, rtx count_exp, rtx align_exp)
LABEL_NUSES (label) = 1;
}
if (TARGET_64BIT && align > 4 && count != 0 && (count & 4))
- emit_insn (gen_strmovsi (destreg, srcreg));
+ {
+ srcmem = change_address (src, SImode, srcreg);
+ dstmem = change_address (dst, SImode, destreg);
+ emit_insn (gen_strmov (destreg, dstmem, srcreg, srcmem));
+ }
if ((align <= 4 || count == 0) && TARGET_64BIT)
{
rtx label = ix86_expand_aligntest (countreg, 4);
- emit_insn (gen_strmovsi (destreg, srcreg));
+ srcmem = change_address (src, SImode, srcreg);
+ dstmem = change_address (dst, SImode, destreg);
+ emit_insn (gen_strmov (destreg, dstmem, srcreg, srcmem));
emit_label (label);
LABEL_NUSES (label) = 1;
}
if (align > 2 && count != 0 && (count & 2))
- emit_insn (gen_strmovhi (destreg, srcreg));
+ {
+ srcmem = change_address (src, HImode, srcreg);
+ dstmem = change_address (dst, HImode, destreg);
+ emit_insn (gen_strmov (destreg, dstmem, srcreg, srcmem));
+ }
if (align <= 2 || count == 0)
{
rtx label = ix86_expand_aligntest (countreg, 2);
- emit_insn (gen_strmovhi (destreg, srcreg));
+ srcmem = change_address (src, HImode, srcreg);
+ dstmem = change_address (dst, HImode, destreg);
+ emit_insn (gen_strmov (destreg, dstmem, srcreg, srcmem));
emit_label (label);
LABEL_NUSES (label) = 1;
}
if (align > 1 && count != 0 && (count & 1))
- emit_insn (gen_strmovqi (destreg, srcreg));
+ {
+ srcmem = change_address (src, QImode, srcreg);
+ dstmem = change_address (dst, QImode, destreg);
+ emit_insn (gen_strmov (destreg, dstmem, srcreg, srcmem));
+ }
if (align <= 1 || count == 0)
{
rtx label = ix86_expand_aligntest (countreg, 1);
- emit_insn (gen_strmovqi (destreg, srcreg));
+ srcmem = change_address (src, QImode, srcreg);
+ dstmem = change_address (dst, QImode, destreg);
+ emit_insn (gen_strmov (destreg, dstmem, srcreg, srcmem));
emit_label (label);
LABEL_NUSES (label) = 1;
}
}
- insns = get_insns ();
- end_sequence ();
-
- ix86_set_move_mem_attrs (insns, dst, src, destreg, srcreg);
- emit_insn (insns);
return 1;
}
/* Expand string clear operation (bzero). Use i386 string operations when
profitable. expand_movstr contains similar code. */
int
-ix86_expand_clrstr (rtx src, rtx count_exp, rtx align_exp)
+ix86_expand_clrstr (rtx dst, rtx count_exp, rtx align_exp)
{
- rtx destreg, zeroreg, countreg;
+ rtx destreg, zeroreg, countreg, destexp;
enum machine_mode counter_mode;
HOST_WIDE_INT align = 0;
unsigned HOST_WIDE_INT count = 0;
@@ -11204,7 +11328,9 @@ ix86_expand_clrstr (rtx src, rtx count_exp, rtx align_exp)
else
counter_mode = DImode;
- destreg = copy_to_mode_reg (Pmode, XEXP (src, 0));
+ destreg = copy_to_mode_reg (Pmode, XEXP (dst, 0));
+ if (destreg != XEXP (dst, 0))
+ dst = replace_equiv_address_nv (dst, destreg);
emit_insn (gen_cld ());
@@ -11215,12 +11341,8 @@ ix86_expand_clrstr (rtx src, rtx count_exp, rtx align_exp)
{
countreg = ix86_zero_extend_to_Pmode (count_exp);
zeroreg = copy_to_mode_reg (QImode, const0_rtx);
- if (TARGET_64BIT)
- emit_insn (gen_rep_stosqi_rex64 (destreg, countreg, zeroreg,
- destreg, countreg));
- else
- emit_insn (gen_rep_stosqi (destreg, countreg, zeroreg,
- destreg, countreg));
+ destexp = gen_rtx_PLUS (Pmode, destreg, countreg);
+ emit_insn (gen_rep_stos (destreg, countreg, dst, zeroreg, destexp));
}
else if (count != 0
&& (align >= 8
@@ -11228,6 +11350,8 @@ ix86_expand_clrstr (rtx src, rtx count_exp, rtx align_exp)
|| optimize_size || count < (unsigned int) 64))
{
int size = TARGET_64BIT && !optimize_size ? 8 : 4;
+ unsigned HOST_WIDE_INT offset = 0;
+
zeroreg = copy_to_mode_reg (size == 4 ? SImode : DImode, const0_rtx);
if (count & ~(size - 1))
{
@@ -11235,28 +11359,34 @@ ix86_expand_clrstr (rtx src, rtx count_exp, rtx align_exp)
GEN_INT ((count >> (size == 4 ? 2 : 3))
& (TARGET_64BIT ? -1 : 0x3fffffff)));
countreg = ix86_zero_extend_to_Pmode (countreg);
- if (size == 4)
- {
- if (TARGET_64BIT)
- emit_insn (gen_rep_stossi_rex64 (destreg, countreg, zeroreg,
- destreg, countreg));
- else
- emit_insn (gen_rep_stossi (destreg, countreg, zeroreg,
- destreg, countreg));
- }
- else
- emit_insn (gen_rep_stosdi_rex64 (destreg, countreg, zeroreg,
- destreg, countreg));
+ destexp = gen_rtx_ASHIFT (Pmode, countreg, GEN_INT (size == 4 ? 2 : 3));
+ destexp = gen_rtx_PLUS (Pmode, destexp, destreg);
+ emit_insn (gen_rep_stos (destreg, countreg, dst, zeroreg, destexp));
+ offset = count & ~(size - 1);
}
if (size == 8 && (count & 0x04))
- emit_insn (gen_strsetsi (destreg,
+ {
+ rtx mem = adjust_automodify_address_nv (dst, SImode, destreg,
+ offset);
+ emit_insn (gen_strset (destreg, mem,
gen_rtx_SUBREG (SImode, zeroreg, 0)));
+ offset += 4;
+ }
if (count & 0x02)
- emit_insn (gen_strsethi (destreg,
+ {
+ rtx mem = adjust_automodify_address_nv (dst, HImode, destreg,
+ offset);
+ emit_insn (gen_strset (destreg, mem,
gen_rtx_SUBREG (HImode, zeroreg, 0)));
+ offset += 2;
+ }
if (count & 0x01)
- emit_insn (gen_strsetqi (destreg,
+ {
+ rtx mem = adjust_automodify_address_nv (dst, QImode, destreg,
+ offset);
+ emit_insn (gen_strset (destreg, mem,
gen_rtx_SUBREG (QImode, zeroreg, 0)));
+ }
}
else
{
@@ -11283,6 +11413,8 @@ ix86_expand_clrstr (rtx src, rtx count_exp, rtx align_exp)
countreg2 = gen_reg_rtx (Pmode);
countreg = copy_to_mode_reg (counter_mode, count_exp);
zeroreg = copy_to_mode_reg (Pmode, const0_rtx);
+ /* Get rid of MEM_OFFSET, it won't be accurate. */
+ dst = change_address (dst, BLKmode, destreg);
if (count == 0 && align < desired_alignment)
{
@@ -11293,8 +11425,8 @@ ix86_expand_clrstr (rtx src, rtx count_exp, rtx align_exp)
if (align <= 1)
{
rtx label = ix86_expand_aligntest (destreg, 1);
- emit_insn (gen_strsetqi (destreg,
- gen_rtx_SUBREG (QImode, zeroreg, 0)));
+ emit_insn (gen_strset (destreg, dst,
+ gen_rtx_SUBREG (QImode, zeroreg, 0)));
ix86_adjust_counter (countreg, 1);
emit_label (label);
LABEL_NUSES (label) = 1;
@@ -11302,8 +11434,8 @@ ix86_expand_clrstr (rtx src, rtx count_exp, rtx align_exp)
if (align <= 2)
{
rtx label = ix86_expand_aligntest (destreg, 2);
- emit_insn (gen_strsethi (destreg,
- gen_rtx_SUBREG (HImode, zeroreg, 0)));
+ emit_insn (gen_strset (destreg, dst,
+ gen_rtx_SUBREG (HImode, zeroreg, 0)));
ix86_adjust_counter (countreg, 2);
emit_label (label);
LABEL_NUSES (label) = 1;
@@ -11311,9 +11443,10 @@ ix86_expand_clrstr (rtx src, rtx count_exp, rtx align_exp)
if (align <= 4 && desired_alignment > 4)
{
rtx label = ix86_expand_aligntest (destreg, 4);
- emit_insn (gen_strsetsi (destreg, (TARGET_64BIT
- ? gen_rtx_SUBREG (SImode, zeroreg, 0)
- : zeroreg)));
+ emit_insn (gen_strset (destreg, dst,
+ (TARGET_64BIT
+ ? gen_rtx_SUBREG (SImode, zeroreg, 0)
+ : zeroreg)));
ix86_adjust_counter (countreg, 4);
emit_label (label);
LABEL_NUSES (label) = 1;
@@ -11332,15 +11465,16 @@ ix86_expand_clrstr (rtx src, rtx count_exp, rtx align_exp)
{
emit_insn (gen_lshrdi3 (countreg2, ix86_zero_extend_to_Pmode (countreg),
GEN_INT (3)));
- emit_insn (gen_rep_stosdi_rex64 (destreg, countreg2, zeroreg,
- destreg, countreg2));
+ destexp = gen_rtx_ASHIFT (Pmode, countreg2, GEN_INT (3));
}
else
{
- emit_insn (gen_lshrsi3 (countreg2, countreg, GEN_INT (2)));
- emit_insn (gen_rep_stossi (destreg, countreg2, zeroreg,
- destreg, countreg2));
+ emit_insn (gen_lshrsi3 (countreg2, countreg, const2_rtx));
+ destexp = gen_rtx_ASHIFT (Pmode, countreg2, const2_rtx);
}
+ destexp = gen_rtx_PLUS (Pmode, destexp, destreg);
+ emit_insn (gen_rep_stos (destreg, countreg2, dst, zeroreg, destexp));
+
if (label)
{
emit_label (label);
@@ -11348,41 +11482,42 @@ ix86_expand_clrstr (rtx src, rtx count_exp, rtx align_exp)
}
if (TARGET_64BIT && align > 4 && count != 0 && (count & 4))
- emit_insn (gen_strsetsi (destreg,
- gen_rtx_SUBREG (SImode, zeroreg, 0)));
+ emit_insn (gen_strset (destreg, dst,
+ gen_rtx_SUBREG (SImode, zeroreg, 0)));
if (TARGET_64BIT && (align <= 4 || count == 0))
{
rtx label = ix86_expand_aligntest (countreg, 4);
- emit_insn (gen_strsetsi (destreg,
- gen_rtx_SUBREG (SImode, zeroreg, 0)));
+ emit_insn (gen_strset (destreg, dst,
+ gen_rtx_SUBREG (SImode, zeroreg, 0)));
emit_label (label);
LABEL_NUSES (label) = 1;
}
if (align > 2 && count != 0 && (count & 2))
- emit_insn (gen_strsethi (destreg,
- gen_rtx_SUBREG (HImode, zeroreg, 0)));
+ emit_insn (gen_strset (destreg, dst,
+ gen_rtx_SUBREG (HImode, zeroreg, 0)));
if (align <= 2 || count == 0)
{
rtx label = ix86_expand_aligntest (countreg, 2);
- emit_insn (gen_strsethi (destreg,
- gen_rtx_SUBREG (HImode, zeroreg, 0)));
+ emit_insn (gen_strset (destreg, dst,
+ gen_rtx_SUBREG (HImode, zeroreg, 0)));
emit_label (label);
LABEL_NUSES (label) = 1;
}
if (align > 1 && count != 0 && (count & 1))
- emit_insn (gen_strsetqi (destreg,
- gen_rtx_SUBREG (QImode, zeroreg, 0)));
+ emit_insn (gen_strset (destreg, dst,
+ gen_rtx_SUBREG (QImode, zeroreg, 0)));
if (align <= 1 || count == 0)
{
rtx label = ix86_expand_aligntest (countreg, 1);
- emit_insn (gen_strsetqi (destreg,
- gen_rtx_SUBREG (QImode, zeroreg, 0)));
+ emit_insn (gen_strset (destreg, dst,
+ gen_rtx_SUBREG (QImode, zeroreg, 0)));
emit_label (label);
LABEL_NUSES (label) = 1;
}
}
return 1;
}
+
/* Expand strlen. */
int
ix86_expand_strlen (rtx out, rtx src, rtx eoschar, rtx align)
@@ -11414,7 +11549,7 @@ ix86_expand_strlen (rtx out, rtx src, rtx eoschar, rtx align)
emit_move_insn (out, addr);
- ix86_expand_strlensi_unroll_1 (out, align);
+ ix86_expand_strlensi_unroll_1 (out, src, align);
/* strlensi_unroll_1 returns the address of the zero at the end of
the string, like memchr(), so compute the length by subtracting
@@ -11426,6 +11561,7 @@ ix86_expand_strlen (rtx out, rtx src, rtx eoschar, rtx align)
}
else
{
+ rtx unspec;
scratch2 = gen_reg_rtx (Pmode);
scratch3 = gen_reg_rtx (Pmode);
scratch4 = force_reg (Pmode, constm1_rtx);
@@ -11434,17 +11570,19 @@ ix86_expand_strlen (rtx out, rtx src, rtx eoschar, rtx align)
eoschar = force_reg (QImode, eoschar);
emit_insn (gen_cld ());
+ src = replace_equiv_address_nv (src, scratch3);
+
+ /* If .md starts supporting :P, this can be done in .md. */
+ unspec = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, src, eoschar, align,
+ scratch4), UNSPEC_SCAS);
+ emit_insn (gen_strlenqi_1 (scratch1, scratch3, unspec));
if (TARGET_64BIT)
{
- emit_insn (gen_strlenqi_rex_1 (scratch1, scratch3, eoschar,
- align, scratch4, scratch3));
emit_insn (gen_one_cmpldi2 (scratch2, scratch1));
emit_insn (gen_adddi3 (out, scratch2, constm1_rtx));
}
else
{
- emit_insn (gen_strlenqi_1 (scratch1, scratch3, eoschar,
- align, scratch4, scratch3));
emit_insn (gen_one_cmplsi2 (scratch2, scratch1));
emit_insn (gen_addsi3 (out, scratch2, constm1_rtx));
}
@@ -11464,7 +11602,7 @@ ix86_expand_strlen (rtx out, rtx src, rtx eoschar, rtx align)
some address computing at the end. These things are done in i386.md. */
static void
-ix86_expand_strlensi_unroll_1 (rtx out, rtx align_rtx)
+ix86_expand_strlensi_unroll_1 (rtx out, rtx src, rtx align_rtx)
{
int align;
rtx tmp;
@@ -11517,7 +11655,7 @@ ix86_expand_strlensi_unroll_1 (rtx out, rtx align_rtx)
Pmode, 1, align_4_label);
}
- mem = gen_rtx_MEM (QImode, out);
+ mem = change_address (src, QImode, out);
/* Now compare the bytes. */
@@ -11561,7 +11699,7 @@ ix86_expand_strlensi_unroll_1 (rtx out, rtx align_rtx)
speed up. */
emit_label (align_4_label);
- mem = gen_rtx_MEM (SImode, out);
+ mem = change_address (src, SImode, out);
emit_move_insn (scratch, mem);
if (TARGET_64BIT)
emit_insn (gen_adddi3 (out, out, GEN_INT (4)));
@@ -12426,50 +12564,6 @@ ia32_multipass_dfa_lookahead (void)
}
-/* Walk through INSNS and look for MEM references whose address is DSTREG or
- SRCREG and set the memory attribute to those of DSTREF and SRCREF, as
- appropriate. */
-
-void
-ix86_set_move_mem_attrs (rtx insns, rtx dstref, rtx srcref, rtx dstreg,
- rtx srcreg)
-{
- rtx insn;
-
- for (insn = insns; insn != 0 ; insn = NEXT_INSN (insn))
- if (INSN_P (insn))
- ix86_set_move_mem_attrs_1 (PATTERN (insn), dstref, srcref,
- dstreg, srcreg);
-}
-
-/* Subroutine of above to actually do the updating by recursively walking
- the rtx. */
-
-static void
-ix86_set_move_mem_attrs_1 (rtx x, rtx dstref, rtx srcref, rtx dstreg,
- rtx srcreg)
-{
- enum rtx_code code = GET_CODE (x);
- const char *format_ptr = GET_RTX_FORMAT (code);
- int i, j;
-
- if (code == MEM && XEXP (x, 0) == dstreg)
- MEM_COPY_ATTRIBUTES (x, dstref);
- else if (code == MEM && XEXP (x, 0) == srcreg)
- MEM_COPY_ATTRIBUTES (x, srcref);
-
- for (i = 0; i < GET_RTX_LENGTH (code); i++, format_ptr++)
- {
- if (*format_ptr == 'e')
- ix86_set_move_mem_attrs_1 (XEXP (x, i), dstref, srcref,
- dstreg, srcreg);
- else if (*format_ptr == 'E')
- for (j = XVECLEN (x, i) - 1; j >= 0; j--)
- ix86_set_move_mem_attrs_1 (XVECEXP (x, i, j), dstref, srcref,
- dstreg, srcreg);
- }
-}
-
/* Compute the alignment given to a constant that is being placed in memory.
EXP is the constant and ALIGN is the alignment that the object would
ordinarily have.
@@ -12486,9 +12580,9 @@ ix86_constant_alignment (tree exp, int align)
else if (ALIGN_MODE_128 (TYPE_MODE (TREE_TYPE (exp))) && align < 128)
return 128;
}
- else if (TREE_CODE (exp) == STRING_CST && TREE_STRING_LENGTH (exp) >= 31
- && align < 256)
- return 256;
+ else if (!optimize_size && TREE_CODE (exp) == STRING_CST
+ && TREE_STRING_LENGTH (exp) >= 31 && align < BITS_PER_WORD)
+ return BITS_PER_WORD;
return align;
}
@@ -12983,13 +13077,13 @@ static const struct builtin_description bdesc_2arg[] =
{ MASK_SSE2, CODE_FOR_cvtsd2ss, 0, IX86_BUILTIN_CVTSD2SS, 0, 0 },
{ MASK_SSE2, CODE_FOR_cvtss2sd, 0, IX86_BUILTIN_CVTSS2SD, 0, 0 },
- /* PNI MMX */
- { MASK_PNI, CODE_FOR_addsubv4sf3, "__builtin_ia32_addsubps", IX86_BUILTIN_ADDSUBPS, 0, 0 },
- { MASK_PNI, CODE_FOR_addsubv2df3, "__builtin_ia32_addsubpd", IX86_BUILTIN_ADDSUBPD, 0, 0 },
- { MASK_PNI, CODE_FOR_haddv4sf3, "__builtin_ia32_haddps", IX86_BUILTIN_HADDPS, 0, 0 },
- { MASK_PNI, CODE_FOR_haddv2df3, "__builtin_ia32_haddpd", IX86_BUILTIN_HADDPD, 0, 0 },
- { MASK_PNI, CODE_FOR_hsubv4sf3, "__builtin_ia32_hsubps", IX86_BUILTIN_HSUBPS, 0, 0 },
- { MASK_PNI, CODE_FOR_hsubv2df3, "__builtin_ia32_hsubpd", IX86_BUILTIN_HSUBPD, 0, 0 }
+ /* SSE3 MMX */
+ { MASK_SSE3, CODE_FOR_addsubv4sf3, "__builtin_ia32_addsubps", IX86_BUILTIN_ADDSUBPS, 0, 0 },
+ { MASK_SSE3, CODE_FOR_addsubv2df3, "__builtin_ia32_addsubpd", IX86_BUILTIN_ADDSUBPD, 0, 0 },
+ { MASK_SSE3, CODE_FOR_haddv4sf3, "__builtin_ia32_haddps", IX86_BUILTIN_HADDPS, 0, 0 },
+ { MASK_SSE3, CODE_FOR_haddv2df3, "__builtin_ia32_haddpd", IX86_BUILTIN_HADDPD, 0, 0 },
+ { MASK_SSE3, CODE_FOR_hsubv4sf3, "__builtin_ia32_hsubps", IX86_BUILTIN_HSUBPS, 0, 0 },
+ { MASK_SSE3, CODE_FOR_hsubv2df3, "__builtin_ia32_hsubpd", IX86_BUILTIN_HSUBPD, 0, 0 }
};
static const struct builtin_description bdesc_1arg[] =
@@ -13037,10 +13131,10 @@ static const struct builtin_description bdesc_1arg[] =
{ MASK_SSE2, CODE_FOR_sse2_movq, 0, IX86_BUILTIN_MOVQ, 0, 0 },
- /* PNI */
- { MASK_PNI, CODE_FOR_movshdup, 0, IX86_BUILTIN_MOVSHDUP, 0, 0 },
- { MASK_PNI, CODE_FOR_movsldup, 0, IX86_BUILTIN_MOVSLDUP, 0, 0 },
- { MASK_PNI, CODE_FOR_movddup, 0, IX86_BUILTIN_MOVDDUP, 0, 0 }
+ /* SSE3 */
+ { MASK_SSE3, CODE_FOR_movshdup, 0, IX86_BUILTIN_MOVSHDUP, 0, 0 },
+ { MASK_SSE3, CODE_FOR_movsldup, 0, IX86_BUILTIN_MOVSLDUP, 0, 0 },
+ { MASK_SSE3, CODE_FOR_movddup, 0, IX86_BUILTIN_MOVDDUP, 0, 0 }
};
void
@@ -13666,23 +13760,23 @@ ix86_init_mmx_sse_builtins (void)
def_builtin (MASK_SSE2, "__builtin_ia32_pmaddwd128", v4si_ftype_v8hi_v8hi, IX86_BUILTIN_PMADDWD128);
/* Prescott New Instructions. */
- def_builtin (MASK_PNI, "__builtin_ia32_monitor",
+ def_builtin (MASK_SSE3, "__builtin_ia32_monitor",
void_ftype_pcvoid_unsigned_unsigned,
IX86_BUILTIN_MONITOR);
- def_builtin (MASK_PNI, "__builtin_ia32_mwait",
+ def_builtin (MASK_SSE3, "__builtin_ia32_mwait",
void_ftype_unsigned_unsigned,
IX86_BUILTIN_MWAIT);
- def_builtin (MASK_PNI, "__builtin_ia32_movshdup",
+ def_builtin (MASK_SSE3, "__builtin_ia32_movshdup",
v4sf_ftype_v4sf,
IX86_BUILTIN_MOVSHDUP);
- def_builtin (MASK_PNI, "__builtin_ia32_movsldup",
+ def_builtin (MASK_SSE3, "__builtin_ia32_movsldup",
v4sf_ftype_v4sf,
IX86_BUILTIN_MOVSLDUP);
- def_builtin (MASK_PNI, "__builtin_ia32_lddqu",
+ def_builtin (MASK_SSE3, "__builtin_ia32_lddqu",
v16qi_ftype_pcchar, IX86_BUILTIN_LDDQU);
- def_builtin (MASK_PNI, "__builtin_ia32_loadddup",
+ def_builtin (MASK_SSE3, "__builtin_ia32_loadddup",
v2df_ftype_pcdouble, IX86_BUILTIN_LOADDDUP);
- def_builtin (MASK_PNI, "__builtin_ia32_movddup",
+ def_builtin (MASK_SSE3, "__builtin_ia32_movddup",
v2df_ftype_v2df, IX86_BUILTIN_MOVDDUP);
}
diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h
index 52b193bb022..f887dc5dafe 100644
--- a/gcc/config/i386/i386.h
+++ b/gcc/config/i386/i386.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GCC for IA-32.
Copyright (C) 1988, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -121,7 +121,7 @@ extern int target_flags;
#define MASK_MMX 0x00002000 /* Support MMX regs/builtins */
#define MASK_SSE 0x00004000 /* Support SSE regs/builtins */
#define MASK_SSE2 0x00008000 /* Support SSE2 regs/builtins */
-#define MASK_PNI 0x00010000 /* Support PNI regs/builtins */
+#define MASK_SSE3 0x00010000 /* Support SSE3 regs/builtins */
#define MASK_3DNOW 0x00020000 /* Support 3Dnow builtins */
#define MASK_3DNOW_A 0x00040000 /* Support Athlon 3Dnow builtins */
#define MASK_128BIT_LONG_DOUBLE 0x00080000 /* long double size is 128bit */
@@ -303,7 +303,7 @@ extern int x86_prefetch_sse;
#define TARGET_SSE ((target_flags & MASK_SSE) != 0)
#define TARGET_SSE2 ((target_flags & MASK_SSE2) != 0)
-#define TARGET_PNI ((target_flags & MASK_PNI) != 0)
+#define TARGET_SSE3 ((target_flags & MASK_SSE3) != 0)
#define TARGET_SSE_MATH ((ix86_fpmath & FPMATH_SSE) != 0)
#define TARGET_MIX_SSE_I387 ((ix86_fpmath & FPMATH_SSE) \
&& (ix86_fpmath & FPMATH_387))
@@ -333,6 +333,8 @@ extern int x86_prefetch_sse;
{ "486", 0, "" /*Deprecated.*/}, \
{ "pentium", 0, "" /*Deprecated.*/}, \
{ "pentiumpro", 0, "" /*Deprecated.*/}, \
+ { "pni", 0, "" /*Deprecated.*/}, \
+ { "no-pni", 0, "" /*Deprecated.*/}, \
{ "intel-syntax", 0, "" /*Deprecated.*/}, \
{ "no-intel-syntax", 0, "" /*Deprecated.*/}, \
{ "rtd", MASK_RTD, \
@@ -399,10 +401,10 @@ extern int x86_prefetch_sse;
N_("Support MMX, SSE and SSE2 built-in functions and code generation") }, \
{ "no-sse2", -MASK_SSE2, \
N_("Do not support MMX, SSE and SSE2 built-in functions and code generation") }, \
- { "pni", MASK_PNI, \
- N_("Support MMX, SSE, SSE2 and PNI built-in functions and code generation") },\
- { "no-pni", -MASK_PNI, \
- N_("Do not support MMX, SSE, SSE2 and PNI built-in functions and code generation") },\
+ { "sse3", MASK_SSE3, \
+ N_("Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation") },\
+ { "no-sse3", -MASK_SSE3, \
+ N_("Do not support MMX, SSE, SSE2 and SSE3 built-in functions and code generation") },\
{ "128bit-long-double", MASK_128BIT_LONG_DOUBLE, \
N_("sizeof(long double) is 16") }, \
{ "96bit-long-double", -MASK_128BIT_LONG_DOUBLE, \
@@ -528,6 +530,10 @@ extern int x86_prefetch_sse;
%{mcpu=*:-mtune=%* \
%n`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead.\n}} \
%<mcpu=* \
+%{mpni:-msse3 \
+%n`-mpni' is deprecated. Use `-msse3' instead.\n} \
+%{mno-pni:-mno-sse3 \
+%n`-mno-pni' is deprecated. Use `-mno-sse3' instead.\n} \
%{mintel-syntax:-masm=intel \
%n`-mintel-syntax' is deprecated. Use `-masm=intel' instead.\n} \
%{mno-intel-syntax:-masm=att \
@@ -616,8 +622,11 @@ extern int x86_prefetch_sse;
builtin_define ("__SSE__"); \
if (TARGET_SSE2) \
builtin_define ("__SSE2__"); \
- if (TARGET_PNI) \
- builtin_define ("__PNI__"); \
+ if (TARGET_SSE3) \
+ { \
+ builtin_define ("__SSE3__"); \
+ builtin_define ("__PNI__"); \
+ } \
if (TARGET_SSE_MATH && TARGET_SSE) \
builtin_define ("__SSE_MATH__"); \
if (TARGET_SSE_MATH && TARGET_SSE2) \
@@ -1756,7 +1765,7 @@ typedef struct ix86_args {
for a call to a function whose data type is FNTYPE.
For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL, N_NAMED_ARGS) \
init_cumulative_args (&(CUM), (FNTYPE), (LIBNAME), (FNDECL))
/* Update the data in CUM to advance over an argument
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 72dff86297d..c50584c064b 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -15353,170 +15353,45 @@
;; Most CPUs don't like single string operations
;; Handle this case here to simplify previous expander.
-(define_expand "strmovdi_rex64"
- [(set (match_dup 2)
- (mem:DI (match_operand:DI 1 "register_operand" "")))
- (set (mem:DI (match_operand:DI 0 "register_operand" ""))
- (match_dup 2))
- (parallel [(set (match_dup 0) (plus:DI (match_dup 0) (const_int 8)))
+(define_expand "strmov"
+ [(set (match_dup 4) (match_operand 3 "memory_operand" ""))
+ (set (match_operand 1 "memory_operand" "") (match_dup 4))
+ (parallel [(set (match_operand 0 "register_operand" "") (match_dup 5))
(clobber (reg:CC 17))])
- (parallel [(set (match_dup 1) (plus:DI (match_dup 1) (const_int 8)))
- (clobber (reg:CC 17))])]
- "TARGET_64BIT"
-{
- if (TARGET_SINGLE_STRINGOP || optimize_size)
- {
- emit_insn (gen_strmovdi_rex_1 (operands[0], operands[1], operands[0],
- operands[1]));
- DONE;
- }
- else
- operands[2] = gen_reg_rtx (DImode);
-})
-
-
-(define_expand "strmovsi"
- [(set (match_dup 2)
- (mem:SI (match_operand:SI 1 "register_operand" "")))
- (set (mem:SI (match_operand:SI 0 "register_operand" ""))
- (match_dup 2))
- (parallel [(set (match_dup 0) (plus:SI (match_dup 0) (const_int 4)))
- (clobber (reg:CC 17))])
- (parallel [(set (match_dup 1) (plus:SI (match_dup 1) (const_int 4)))
+ (parallel [(set (match_operand 2 "register_operand" "") (match_dup 6))
(clobber (reg:CC 17))])]
""
{
- if (TARGET_64BIT)
- {
- emit_insn (gen_strmovsi_rex64 (operands[0], operands[1]));
- DONE;
- }
- if (TARGET_SINGLE_STRINGOP || optimize_size)
- {
- emit_insn (gen_strmovsi_1 (operands[0], operands[1], operands[0],
- operands[1]));
- DONE;
- }
- else
- operands[2] = gen_reg_rtx (SImode);
-})
-
-(define_expand "strmovsi_rex64"
- [(set (match_dup 2)
- (mem:SI (match_operand:DI 1 "register_operand" "")))
- (set (mem:SI (match_operand:DI 0 "register_operand" ""))
- (match_dup 2))
- (parallel [(set (match_dup 0) (plus:DI (match_dup 0) (const_int 4)))
- (clobber (reg:CC 17))])
- (parallel [(set (match_dup 1) (plus:DI (match_dup 1) (const_int 4)))
- (clobber (reg:CC 17))])]
- "TARGET_64BIT"
-{
- if (TARGET_SINGLE_STRINGOP || optimize_size)
- {
- emit_insn (gen_strmovsi_rex_1 (operands[0], operands[1], operands[0],
- operands[1]));
- DONE;
- }
- else
- operands[2] = gen_reg_rtx (SImode);
-})
+ rtx adjust = GEN_INT (GET_MODE_SIZE (GET_MODE (operands[1])));
-(define_expand "strmovhi"
- [(set (match_dup 2)
- (mem:HI (match_operand:SI 1 "register_operand" "")))
- (set (mem:HI (match_operand:SI 0 "register_operand" ""))
- (match_dup 2))
- (parallel [(set (match_dup 0) (plus:SI (match_dup 0) (const_int 2)))
- (clobber (reg:CC 17))])
- (parallel [(set (match_dup 1) (plus:SI (match_dup 1) (const_int 2)))
- (clobber (reg:CC 17))])]
- ""
-{
- if (TARGET_64BIT)
- {
- emit_insn (gen_strmovhi_rex64 (operands[0], operands[1]));
- DONE;
- }
- if (TARGET_SINGLE_STRINGOP || optimize_size)
- {
- emit_insn (gen_strmovhi_1 (operands[0], operands[1], operands[0],
- operands[1]));
- DONE;
- }
- else
- operands[2] = gen_reg_rtx (HImode);
-})
+ /* If .md ever supports :P for Pmode, these can be directly
+ in the pattern above. */
+ operands[5] = gen_rtx_PLUS (Pmode, operands[0], adjust);
+ operands[6] = gen_rtx_PLUS (Pmode, operands[2], adjust);
-(define_expand "strmovhi_rex64"
- [(set (match_dup 2)
- (mem:HI (match_operand:DI 1 "register_operand" "")))
- (set (mem:HI (match_operand:DI 0 "register_operand" ""))
- (match_dup 2))
- (parallel [(set (match_dup 0) (plus:DI (match_dup 0) (const_int 2)))
- (clobber (reg:CC 17))])
- (parallel [(set (match_dup 1) (plus:DI (match_dup 1) (const_int 2)))
- (clobber (reg:CC 17))])]
- "TARGET_64BIT"
-{
if (TARGET_SINGLE_STRINGOP || optimize_size)
{
- emit_insn (gen_strmovhi_rex_1 (operands[0], operands[1], operands[0],
- operands[1]));
+ emit_insn (gen_strmov_singleop (operands[0], operands[1],
+ operands[2], operands[3],
+ operands[5], operands[6]));
DONE;
}
- else
- operands[2] = gen_reg_rtx (HImode);
-})
-(define_expand "strmovqi"
- [(set (match_dup 2)
- (mem:QI (match_operand:SI 1 "register_operand" "")))
- (set (mem:QI (match_operand:SI 0 "register_operand" ""))
- (match_dup 2))
- (parallel [(set (match_dup 0) (plus:SI (match_dup 0) (const_int 1)))
- (clobber (reg:CC 17))])
- (parallel [(set (match_dup 1) (plus:SI (match_dup 1) (const_int 1)))
- (clobber (reg:CC 17))])]
- ""
-{
- if (TARGET_64BIT)
- {
- emit_insn (gen_strmovqi_rex64 (operands[0], operands[1]));
- DONE;
- }
- if (TARGET_SINGLE_STRINGOP || optimize_size)
- {
- emit_insn (gen_strmovqi_1 (operands[0], operands[1], operands[0],
- operands[1]));
- DONE;
- }
- else
- operands[2] = gen_reg_rtx (QImode);
+ operands[4] = gen_reg_rtx (GET_MODE (operands[1]));
})
-(define_expand "strmovqi_rex64"
- [(set (match_dup 2)
- (mem:QI (match_operand:DI 1 "register_operand" "")))
- (set (mem:QI (match_operand:DI 0 "register_operand" ""))
- (match_dup 2))
- (parallel [(set (match_dup 0) (plus:DI (match_dup 0) (const_int 1)))
- (clobber (reg:CC 17))])
- (parallel [(set (match_dup 1) (plus:DI (match_dup 1) (const_int 1)))
- (clobber (reg:CC 17))])]
- "TARGET_64BIT"
-{
- if (TARGET_SINGLE_STRINGOP || optimize_size)
- {
- emit_insn (gen_strmovqi_rex_1 (operands[0], operands[1], operands[0],
- operands[1]));
- DONE;
- }
- else
- operands[2] = gen_reg_rtx (QImode);
-})
+(define_expand "strmov_singleop"
+ [(parallel [(set (match_operand 1 "memory_operand" "")
+ (match_operand 3 "memory_operand" ""))
+ (set (match_operand 0 "register_operand" "")
+ (match_operand 4 "" ""))
+ (set (match_operand 2 "register_operand" "")
+ (match_operand 5 "" ""))
+ (use (reg:SI 19))])]
+ "TARGET_SINGLE_STRINGOP || optimize_size"
+ "")
-(define_insn "strmovdi_rex_1"
+(define_insn "*strmovdi_rex_1"
[(set (mem:DI (match_operand:DI 2 "register_operand" "0"))
(mem:DI (match_operand:DI 3 "register_operand" "1")))
(set (match_operand:DI 0 "register_operand" "=D")
@@ -15532,7 +15407,7 @@
(set_attr "mode" "DI")
(set_attr "memory" "both")])
-(define_insn "strmovsi_1"
+(define_insn "*strmovsi_1"
[(set (mem:SI (match_operand:SI 2 "register_operand" "0"))
(mem:SI (match_operand:SI 3 "register_operand" "1")))
(set (match_operand:SI 0 "register_operand" "=D")
@@ -15548,7 +15423,7 @@
(set_attr "mode" "SI")
(set_attr "memory" "both")])
-(define_insn "strmovsi_rex_1"
+(define_insn "*strmovsi_rex_1"
[(set (mem:SI (match_operand:DI 2 "register_operand" "0"))
(mem:SI (match_operand:DI 3 "register_operand" "1")))
(set (match_operand:DI 0 "register_operand" "=D")
@@ -15564,7 +15439,7 @@
(set_attr "mode" "SI")
(set_attr "memory" "both")])
-(define_insn "strmovhi_1"
+(define_insn "*strmovhi_1"
[(set (mem:HI (match_operand:SI 2 "register_operand" "0"))
(mem:HI (match_operand:SI 3 "register_operand" "1")))
(set (match_operand:SI 0 "register_operand" "=D")
@@ -15580,7 +15455,7 @@
(set_attr "memory" "both")
(set_attr "mode" "HI")])
-(define_insn "strmovhi_rex_1"
+(define_insn "*strmovhi_rex_1"
[(set (mem:HI (match_operand:DI 2 "register_operand" "0"))
(mem:HI (match_operand:DI 3 "register_operand" "1")))
(set (match_operand:DI 0 "register_operand" "=D")
@@ -15596,7 +15471,7 @@
(set_attr "memory" "both")
(set_attr "mode" "HI")])
-(define_insn "strmovqi_1"
+(define_insn "*strmovqi_1"
[(set (mem:QI (match_operand:SI 2 "register_operand" "0"))
(mem:QI (match_operand:SI 3 "register_operand" "1")))
(set (match_operand:SI 0 "register_operand" "=D")
@@ -15612,7 +15487,7 @@
(set_attr "memory" "both")
(set_attr "mode" "QI")])
-(define_insn "strmovqi_rex_1"
+(define_insn "*strmovqi_rex_1"
[(set (mem:QI (match_operand:DI 2 "register_operand" "0"))
(mem:QI (match_operand:DI 3 "register_operand" "1")))
(set (match_operand:DI 0 "register_operand" "=D")
@@ -15628,7 +15503,20 @@
(set_attr "memory" "both")
(set_attr "mode" "QI")])
-(define_insn "rep_movdi_rex64"
+(define_expand "rep_mov"
+ [(parallel [(set (match_operand 4 "register_operand" "") (const_int 0))
+ (set (match_operand 0 "register_operand" "")
+ (match_operand 5 "" ""))
+ (set (match_operand 2 "register_operand" "")
+ (match_operand 6 "" ""))
+ (set (match_operand 1 "memory_operand" "")
+ (match_operand 3 "memory_operand" ""))
+ (use (match_dup 4))
+ (use (reg:SI 19))])]
+ ""
+ "")
+
+(define_insn "*rep_movdi_rex64"
[(set (match_operand:DI 2 "register_operand" "=c") (const_int 0))
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (ashift:DI (match_operand:DI 5 "register_operand" "2")
@@ -15648,7 +15536,7 @@
(set_attr "memory" "both")
(set_attr "mode" "DI")])
-(define_insn "rep_movsi"
+(define_insn "*rep_movsi"
[(set (match_operand:SI 2 "register_operand" "=c") (const_int 0))
(set (match_operand:SI 0 "register_operand" "=D")
(plus:SI (ashift:SI (match_operand:SI 5 "register_operand" "2")
@@ -15668,7 +15556,7 @@
(set_attr "memory" "both")
(set_attr "mode" "SI")])
-(define_insn "rep_movsi_rex64"
+(define_insn "*rep_movsi_rex64"
[(set (match_operand:DI 2 "register_operand" "=c") (const_int 0))
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (ashift:DI (match_operand:DI 5 "register_operand" "2")
@@ -15688,7 +15576,7 @@
(set_attr "memory" "both")
(set_attr "mode" "SI")])
-(define_insn "rep_movqi"
+(define_insn "*rep_movqi"
[(set (match_operand:SI 2 "register_operand" "=c") (const_int 0))
(set (match_operand:SI 0 "register_operand" "=D")
(plus:SI (match_operand:SI 3 "register_operand" "0")
@@ -15706,7 +15594,7 @@
(set_attr "memory" "both")
(set_attr "mode" "SI")])
-(define_insn "rep_movqi_rex64"
+(define_insn "*rep_movqi_rex64"
[(set (match_operand:DI 2 "register_operand" "=c") (const_int 0))
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (match_operand:DI 3 "register_operand" "0")
@@ -15751,120 +15639,40 @@
;; Most CPUs don't like single string operations
;; Handle this case here to simplify previous expander.
-(define_expand "strsetdi_rex64"
- [(set (mem:DI (match_operand:DI 0 "register_operand" ""))
- (match_operand:DI 1 "register_operand" ""))
- (parallel [(set (match_dup 0) (plus:DI (match_dup 0) (const_int 8)))
- (clobber (reg:CC 17))])]
- "TARGET_64BIT"
-{
- if (TARGET_SINGLE_STRINGOP || optimize_size)
- {
- emit_insn (gen_strsetdi_rex_1 (operands[0], operands[0], operands[1]));
- DONE;
- }
-})
-
-(define_expand "strsetsi"
- [(set (mem:SI (match_operand:SI 0 "register_operand" ""))
- (match_operand:SI 1 "register_operand" ""))
- (parallel [(set (match_dup 0) (plus:SI (match_dup 0) (const_int 4)))
+(define_expand "strset"
+ [(set (match_operand 1 "memory_operand" "")
+ (match_operand 2 "register_operand" ""))
+ (parallel [(set (match_operand 0 "register_operand" "")
+ (match_dup 3))
(clobber (reg:CC 17))])]
""
{
- if (TARGET_64BIT)
- {
- emit_insn (gen_strsetsi_rex64 (operands[0], operands[1]));
- DONE;
- }
- else if (TARGET_SINGLE_STRINGOP || optimize_size)
- {
- emit_insn (gen_strsetsi_1 (operands[0], operands[0], operands[1]));
- DONE;
- }
-})
+ if (GET_MODE (operands[1]) != GET_MODE (operands[2]))
+ operands[1] = adjust_address_nv (operands[1], GET_MODE (operands[2]), 0);
-(define_expand "strsetsi_rex64"
- [(set (mem:SI (match_operand:DI 0 "register_operand" ""))
- (match_operand:SI 1 "register_operand" ""))
- (parallel [(set (match_dup 0) (plus:DI (match_dup 0) (const_int 4)))
- (clobber (reg:CC 17))])]
- "TARGET_64BIT"
-{
+ /* If .md ever supports :P for Pmode, this can be directly
+ in the pattern above. */
+ operands[3] = gen_rtx_PLUS (Pmode, operands[0],
+ GEN_INT (GET_MODE_SIZE (GET_MODE
+ (operands[2]))));
if (TARGET_SINGLE_STRINGOP || optimize_size)
{
- emit_insn (gen_strsetsi_rex_1 (operands[0], operands[0], operands[1]));
+ emit_insn (gen_strset_singleop (operands[0], operands[1], operands[2],
+ operands[3]));
DONE;
}
})
-(define_expand "strsethi"
- [(set (mem:HI (match_operand:SI 0 "register_operand" ""))
- (match_operand:HI 1 "register_operand" ""))
- (parallel [(set (match_dup 0) (plus:SI (match_dup 0) (const_int 2)))
- (clobber (reg:CC 17))])]
- ""
-{
- if (TARGET_64BIT)
- {
- emit_insn (gen_strsethi_rex64 (operands[0], operands[1]));
- DONE;
- }
- else if (TARGET_SINGLE_STRINGOP || optimize_size)
- {
- emit_insn (gen_strsethi_1 (operands[0], operands[0], operands[1]));
- DONE;
- }
-})
-
-(define_expand "strsethi_rex64"
- [(set (mem:HI (match_operand:DI 0 "register_operand" ""))
- (match_operand:HI 1 "register_operand" ""))
- (parallel [(set (match_dup 0) (plus:DI (match_dup 0) (const_int 2)))
- (clobber (reg:CC 17))])]
- "TARGET_64BIT"
-{
- if (TARGET_SINGLE_STRINGOP || optimize_size)
- {
- emit_insn (gen_strsethi_rex_1 (operands[0], operands[0], operands[1]));
- DONE;
- }
-})
-
-(define_expand "strsetqi"
- [(set (mem:QI (match_operand:SI 0 "register_operand" ""))
- (match_operand:QI 1 "register_operand" ""))
- (parallel [(set (match_dup 0) (plus:SI (match_dup 0) (const_int 1)))
- (clobber (reg:CC 17))])]
- ""
-{
- if (TARGET_64BIT)
- {
- emit_insn (gen_strsetqi_rex64 (operands[0], operands[1]));
- DONE;
- }
- else if (TARGET_SINGLE_STRINGOP || optimize_size)
- {
- emit_insn (gen_strsetqi_1 (operands[0], operands[0], operands[1]));
- DONE;
- }
-})
-
-(define_expand "strsetqi_rex64"
- [(set (mem:QI (match_operand:DI 0 "register_operand" ""))
- (match_operand:QI 1 "register_operand" ""))
- (parallel [(set (match_dup 0) (plus:DI (match_dup 0) (const_int 1)))
- (clobber (reg:CC 17))])]
- "TARGET_64BIT"
-{
- if (TARGET_SINGLE_STRINGOP || optimize_size)
- {
- emit_insn (gen_strsetqi_rex_1 (operands[0], operands[0], operands[1]));
- DONE;
- }
-})
+(define_expand "strset_singleop"
+ [(parallel [(set (match_operand 1 "memory_operand" "")
+ (match_operand 2 "register_operand" ""))
+ (set (match_operand 0 "register_operand" "")
+ (match_operand 3 "" ""))
+ (use (reg:SI 19))])]
+ "TARGET_SINGLE_STRINGOP || optimize_size"
+ "")
-(define_insn "strsetdi_rex_1"
+(define_insn "*strsetdi_rex_1"
[(set (mem:SI (match_operand:DI 1 "register_operand" "0"))
(match_operand:SI 2 "register_operand" "a"))
(set (match_operand:DI 0 "register_operand" "=D")
@@ -15877,7 +15685,7 @@
(set_attr "memory" "store")
(set_attr "mode" "DI")])
-(define_insn "strsetsi_1"
+(define_insn "*strsetsi_1"
[(set (mem:SI (match_operand:SI 1 "register_operand" "0"))
(match_operand:SI 2 "register_operand" "a"))
(set (match_operand:SI 0 "register_operand" "=D")
@@ -15890,7 +15698,7 @@
(set_attr "memory" "store")
(set_attr "mode" "SI")])
-(define_insn "strsetsi_rex_1"
+(define_insn "*strsetsi_rex_1"
[(set (mem:SI (match_operand:DI 1 "register_operand" "0"))
(match_operand:SI 2 "register_operand" "a"))
(set (match_operand:DI 0 "register_operand" "=D")
@@ -15903,7 +15711,7 @@
(set_attr "memory" "store")
(set_attr "mode" "SI")])
-(define_insn "strsethi_1"
+(define_insn "*strsethi_1"
[(set (mem:HI (match_operand:SI 1 "register_operand" "0"))
(match_operand:HI 2 "register_operand" "a"))
(set (match_operand:SI 0 "register_operand" "=D")
@@ -15916,7 +15724,7 @@
(set_attr "memory" "store")
(set_attr "mode" "HI")])
-(define_insn "strsethi_rex_1"
+(define_insn "*strsethi_rex_1"
[(set (mem:HI (match_operand:DI 1 "register_operand" "0"))
(match_operand:HI 2 "register_operand" "a"))
(set (match_operand:DI 0 "register_operand" "=D")
@@ -15929,7 +15737,7 @@
(set_attr "memory" "store")
(set_attr "mode" "HI")])
-(define_insn "strsetqi_1"
+(define_insn "*strsetqi_1"
[(set (mem:QI (match_operand:SI 1 "register_operand" "0"))
(match_operand:QI 2 "register_operand" "a"))
(set (match_operand:SI 0 "register_operand" "=D")
@@ -15942,7 +15750,7 @@
(set_attr "memory" "store")
(set_attr "mode" "QI")])
-(define_insn "strsetqi_rex_1"
+(define_insn "*strsetqi_rex_1"
[(set (mem:QI (match_operand:DI 1 "register_operand" "0"))
(match_operand:QI 2 "register_operand" "a"))
(set (match_operand:DI 0 "register_operand" "=D")
@@ -15955,7 +15763,18 @@
(set_attr "memory" "store")
(set_attr "mode" "QI")])
-(define_insn "rep_stosdi_rex64"
+(define_expand "rep_stos"
+ [(parallel [(set (match_operand 1 "register_operand" "") (const_int 0))
+ (set (match_operand 0 "register_operand" "")
+ (match_operand 4 "" ""))
+ (set (match_operand 2 "memory_operand" "") (const_int 0))
+ (use (match_operand 3 "register_operand" ""))
+ (use (match_dup 1))
+ (use (reg:SI 19))])]
+ ""
+ "")
+
+(define_insn "*rep_stosdi_rex64"
[(set (match_operand:DI 1 "register_operand" "=c") (const_int 0))
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (ashift:DI (match_operand:DI 4 "register_operand" "1")
@@ -15973,7 +15792,7 @@
(set_attr "memory" "store")
(set_attr "mode" "DI")])
-(define_insn "rep_stossi"
+(define_insn "*rep_stossi"
[(set (match_operand:SI 1 "register_operand" "=c") (const_int 0))
(set (match_operand:SI 0 "register_operand" "=D")
(plus:SI (ashift:SI (match_operand:SI 4 "register_operand" "1")
@@ -15991,7 +15810,7 @@
(set_attr "memory" "store")
(set_attr "mode" "SI")])
-(define_insn "rep_stossi_rex64"
+(define_insn "*rep_stossi_rex64"
[(set (match_operand:DI 1 "register_operand" "=c") (const_int 0))
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (ashift:DI (match_operand:DI 4 "register_operand" "1")
@@ -16009,7 +15828,7 @@
(set_attr "memory" "store")
(set_attr "mode" "SI")])
-(define_insn "rep_stosqi"
+(define_insn "*rep_stosqi"
[(set (match_operand:SI 1 "register_operand" "=c") (const_int 0))
(set (match_operand:SI 0 "register_operand" "=D")
(plus:SI (match_operand:SI 3 "register_operand" "0")
@@ -16026,7 +15845,7 @@
(set_attr "memory" "store")
(set_attr "mode" "QI")])
-(define_insn "rep_stosqi_rex64"
+(define_insn "*rep_stosqi_rex64"
[(set (match_operand:DI 1 "register_operand" "=c") (const_int 0))
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (match_operand:DI 3 "register_operand" "0")
@@ -16035,7 +15854,7 @@
(const_int 0))
(use (match_operand:QI 2 "register_operand" "a"))
(use (match_dup 4))
- (use (reg:DI 19))]
+ (use (reg:SI 19))]
"TARGET_64BIT"
"{rep\;stosb|rep stosb}"
[(set_attr "type" "str")
@@ -16063,7 +15882,11 @@
addr1 = copy_to_mode_reg (Pmode, XEXP (operands[1], 0));
addr2 = copy_to_mode_reg (Pmode, XEXP (operands[2], 0));
-
+ if (addr1 != XEXP (operands[1], 0))
+ operands[1] = replace_equiv_address_nv (operands[1], addr1);
+ if (addr2 != XEXP (operands[2], 0))
+ operands[2] = replace_equiv_address_nv (operands[2], addr2);
+
count = operands[3];
countreg = ix86_zero_extend_to_Pmode (count);
@@ -16080,27 +15903,17 @@
emit_move_insn (operands[0], const0_rtx);
DONE;
}
- if (TARGET_64BIT)
- emit_insn (gen_cmpstrqi_nz_rex_1 (addr1, addr2, countreg, align,
- addr1, addr2, countreg));
- else
- emit_insn (gen_cmpstrqi_nz_1 (addr1, addr2, countreg, align,
- addr1, addr2, countreg));
+ emit_insn (gen_cmpstrqi_nz_1 (addr1, addr2, countreg, align,
+ operands[1], operands[2]));
}
else
{
if (TARGET_64BIT)
- {
- emit_insn (gen_cmpdi_1_rex64 (countreg, countreg));
- emit_insn (gen_cmpstrqi_rex_1 (addr1, addr2, countreg, align,
- addr1, addr2, countreg));
- }
+ emit_insn (gen_cmpdi_1_rex64 (countreg, countreg));
else
- {
- emit_insn (gen_cmpsi_1 (countreg, countreg));
- emit_insn (gen_cmpstrqi_1 (addr1, addr2, countreg, align,
- addr1, addr2, countreg));
- }
+ emit_insn (gen_cmpsi_1 (countreg, countreg));
+ emit_insn (gen_cmpstrqi_1 (addr1, addr2, countreg, align,
+ operands[1], operands[2]));
}
outlow = gen_lowpart (QImode, out);
@@ -16131,7 +15944,20 @@
;; memcmp recognizers. The `cmpsb' opcode does nothing if the count is
;; zero. Emit extra code to make sure that a zero-length compare is EQ.
-(define_insn "cmpstrqi_nz_1"
+(define_expand "cmpstrqi_nz_1"
+ [(parallel [(set (reg:CC 17)
+ (compare:CC (match_operand 4 "memory_operand" "")
+ (match_operand 5 "memory_operand" "")))
+ (use (match_operand 2 "register_operand" ""))
+ (use (match_operand:SI 3 "immediate_operand" ""))
+ (use (reg:SI 19))
+ (clobber (match_operand 0 "register_operand" ""))
+ (clobber (match_operand 1 "register_operand" ""))
+ (clobber (match_dup 2))])]
+ ""
+ "")
+
+(define_insn "*cmpstrqi_nz_1"
[(set (reg:CC 17)
(compare:CC (mem:BLK (match_operand:SI 4 "register_operand" "0"))
(mem:BLK (match_operand:SI 5 "register_operand" "1"))))
@@ -16147,7 +15973,7 @@
(set_attr "mode" "QI")
(set_attr "prefix_rep" "1")])
-(define_insn "cmpstrqi_nz_rex_1"
+(define_insn "*cmpstrqi_nz_rex_1"
[(set (reg:CC 17)
(compare:CC (mem:BLK (match_operand:DI 4 "register_operand" "0"))
(mem:BLK (match_operand:DI 5 "register_operand" "1"))))
@@ -16165,7 +15991,23 @@
;; The same, but the count is not known to not be zero.
-(define_insn "cmpstrqi_1"
+(define_expand "cmpstrqi_1"
+ [(parallel [(set (reg:CC 17)
+ (if_then_else:CC (ne (match_operand 2 "register_operand" "")
+ (const_int 0))
+ (compare:CC (match_operand 4 "memory_operand" "")
+ (match_operand 5 "memory_operand" ""))
+ (const_int 0)))
+ (use (match_operand:SI 3 "immediate_operand" ""))
+ (use (reg:CC 17))
+ (use (reg:SI 19))
+ (clobber (match_operand 0 "register_operand" ""))
+ (clobber (match_operand 1 "register_operand" ""))
+ (clobber (match_dup 2))])]
+ ""
+ "")
+
+(define_insn "*cmpstrqi_1"
[(set (reg:CC 17)
(if_then_else:CC (ne (match_operand:SI 6 "register_operand" "2")
(const_int 0))
@@ -16184,7 +16026,7 @@
(set_attr "mode" "QI")
(set_attr "prefix_rep" "1")])
-(define_insn "cmpstrqi_rex_1"
+(define_insn "*cmpstrqi_rex_1"
[(set (reg:CC 17)
(if_then_else:CC (ne (match_operand:DI 6 "register_operand" "2")
(const_int 0))
@@ -16229,7 +16071,15 @@
FAIL;
})
-(define_insn "strlenqi_1"
+(define_expand "strlenqi_1"
+ [(parallel [(set (match_operand 0 "register_operand" "") (match_operand 2 "" ""))
+ (use (reg:SI 19))
+ (clobber (match_operand 1 "register_operand" ""))
+ (clobber (reg:CC 17))])]
+ ""
+ "")
+
+(define_insn "*strlenqi_1"
[(set (match_operand:SI 0 "register_operand" "=&c")
(unspec:SI [(mem:BLK (match_operand:SI 5 "register_operand" "1"))
(match_operand:QI 2 "register_operand" "a")
@@ -16244,7 +16094,7 @@
(set_attr "mode" "QI")
(set_attr "prefix_rep" "1")])
-(define_insn "strlenqi_rex_1"
+(define_insn "*strlenqi_rex_1"
[(set (match_operand:DI 0 "register_operand" "=&c")
(unspec:DI [(mem:BLK (match_operand:DI 5 "register_operand" "1"))
(match_operand:QI 2 "register_operand" "a")
@@ -18631,7 +18481,7 @@
(define_insn "movv2di_internal"
[(set (match_operand:V2DI 0 "nonimmediate_operand" "=x,x,m")
(match_operand:V2DI 1 "vector_move_operand" "C,xm,x"))]
- "TARGET_SSE2"
+ "TARGET_SSE"
{
switch (which_alternative)
{
@@ -22993,13 +22843,13 @@
[(set_attr "type" "sse")
(set_attr "memory" "unknown")])
-;; PNI
+;; SSE3
(define_insn "mwait"
[(unspec_volatile [(match_operand:SI 0 "register_operand" "a")
(match_operand:SI 1 "register_operand" "c")]
UNSPECV_MWAIT)]
- "TARGET_PNI"
+ "TARGET_SSE3"
"mwait\t%0, %1"
[(set_attr "length" "3")])
@@ -23008,18 +22858,18 @@
(match_operand:SI 1 "register_operand" "c")
(match_operand:SI 2 "register_operand" "d")]
UNSPECV_MONITOR)]
- "TARGET_PNI"
+ "TARGET_SSE3"
"monitor\t%0, %1, %2"
[(set_attr "length" "3")])
-;; PNI arithmetic
+;; SSE3 arithmetic
(define_insn "addsubv4sf3"
[(set (match_operand:V4SF 0 "register_operand" "=x")
(unspec:V4SF [(match_operand:V4SF 1 "register_operand" "0")
(match_operand:V4SF 2 "nonimmediate_operand" "xm")]
UNSPEC_ADDSUB))]
- "TARGET_PNI"
+ "TARGET_SSE3"
"addsubps\t{%2, %0|%0, %2}"
[(set_attr "type" "sseadd")
(set_attr "mode" "V4SF")])
@@ -23029,7 +22879,7 @@
(unspec:V2DF [(match_operand:V2DF 1 "register_operand" "0")
(match_operand:V2DF 2 "nonimmediate_operand" "xm")]
UNSPEC_ADDSUB))]
- "TARGET_PNI"
+ "TARGET_SSE3"
"addsubpd\t{%2, %0|%0, %2}"
[(set_attr "type" "sseadd")
(set_attr "mode" "V2DF")])
@@ -23039,7 +22889,7 @@
(unspec:V4SF [(match_operand:V4SF 1 "register_operand" "0")
(match_operand:V4SF 2 "nonimmediate_operand" "xm")]
UNSPEC_HADD))]
- "TARGET_PNI"
+ "TARGET_SSE3"
"haddps\t{%2, %0|%0, %2}"
[(set_attr "type" "sseadd")
(set_attr "mode" "V4SF")])
@@ -23049,7 +22899,7 @@
(unspec:V2DF [(match_operand:V2DF 1 "register_operand" "0")
(match_operand:V2DF 2 "nonimmediate_operand" "xm")]
UNSPEC_HADD))]
- "TARGET_PNI"
+ "TARGET_SSE3"
"haddpd\t{%2, %0|%0, %2}"
[(set_attr "type" "sseadd")
(set_attr "mode" "V2DF")])
@@ -23059,7 +22909,7 @@
(unspec:V4SF [(match_operand:V4SF 1 "register_operand" "0")
(match_operand:V4SF 2 "nonimmediate_operand" "xm")]
UNSPEC_HSUB))]
- "TARGET_PNI"
+ "TARGET_SSE3"
"hsubps\t{%2, %0|%0, %2}"
[(set_attr "type" "sseadd")
(set_attr "mode" "V4SF")])
@@ -23069,7 +22919,7 @@
(unspec:V2DF [(match_operand:V2DF 1 "register_operand" "0")
(match_operand:V2DF 2 "nonimmediate_operand" "xm")]
UNSPEC_HSUB))]
- "TARGET_PNI"
+ "TARGET_SSE3"
"hsubpd\t{%2, %0|%0, %2}"
[(set_attr "type" "sseadd")
(set_attr "mode" "V2DF")])
@@ -23078,7 +22928,7 @@
[(set (match_operand:V4SF 0 "register_operand" "=x")
(unspec:V4SF
[(match_operand:V4SF 1 "nonimmediate_operand" "xm")] UNSPEC_MOVSHDUP))]
- "TARGET_PNI"
+ "TARGET_SSE3"
"movshdup\t{%1, %0|%0, %1}"
[(set_attr "type" "sse")
(set_attr "mode" "V4SF")])
@@ -23087,7 +22937,7 @@
[(set (match_operand:V4SF 0 "register_operand" "=x")
(unspec:V4SF
[(match_operand:V4SF 1 "nonimmediate_operand" "xm")] UNSPEC_MOVSLDUP))]
- "TARGET_PNI"
+ "TARGET_SSE3"
"movsldup\t{%1, %0|%0, %1}"
[(set_attr "type" "sse")
(set_attr "mode" "V4SF")])
@@ -23096,7 +22946,7 @@
[(set (match_operand:V16QI 0 "register_operand" "=x")
(unspec:V16QI [(match_operand:V16QI 1 "memory_operand" "m")]
UNSPEC_LDQQU))]
- "TARGET_PNI"
+ "TARGET_SSE3"
"lddqu\t{%1, %0|%0, %1}"
[(set_attr "type" "ssecvt")
(set_attr "mode" "TI")])
@@ -23104,7 +22954,7 @@
(define_insn "loadddup"
[(set (match_operand:V2DF 0 "register_operand" "=x")
(vec_duplicate:V2DF (match_operand:DF 1 "memory_operand" "m")))]
- "TARGET_PNI"
+ "TARGET_SSE3"
"movddup\t{%1, %0|%0, %1}"
[(set_attr "type" "ssecvt")
(set_attr "mode" "DF")])
@@ -23114,7 +22964,7 @@
(vec_duplicate:V2DF
(vec_select:DF (match_operand:V2DF 1 "register_operand" "x")
(parallel [(const_int 0)]))))]
- "TARGET_PNI"
+ "TARGET_SSE3"
"movddup\t{%1, %0|%0, %1}"
[(set_attr "type" "ssecvt")
(set_attr "mode" "DF")])
diff --git a/gcc/config/i386/openbsd.h b/gcc/config/i386/openbsd.h
index fdef0a8efe8..14de0188c80 100644
--- a/gcc/config/i386/openbsd.h
+++ b/gcc/config/i386/openbsd.h
@@ -1,5 +1,5 @@
/* Configuration for an OpenBSD i386 target.
- Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2002, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/i386/pmmintrin.h b/gcc/config/i386/pmmintrin.h
index 5b215e8e53c..3b18e2a11bd 100644
--- a/gcc/config/i386/pmmintrin.h
+++ b/gcc/config/i386/pmmintrin.h
@@ -30,7 +30,7 @@
#ifndef _PMMINTRIN_H_INCLUDED
#define _PMMINTRIN_H_INCLUDED
-#ifdef __PNI__
+#ifdef __SSE3__
#include <xmmintrin.h>
#include <emmintrin.h>
@@ -127,6 +127,6 @@ _mm_mwait (unsigned int __E, unsigned int __H)
#define _mm_mwait(E, H) __builtin_ia32_mwait ((E), (H))
#endif
-#endif /* __PNI__ */
+#endif /* __SSE3__ */
#endif /* _PMMINTRIN_H_INCLUDED */
diff --git a/gcc/config/i386/scodbx.h b/gcc/config/i386/scodbx.h
deleted file mode 100644
index 7da93053256..00000000000
--- a/gcc/config/i386/scodbx.h
+++ /dev/null
@@ -1,84 +0,0 @@
-/* Definitions for Intel 386 running SCO Unix System V,
- using dbx-in-coff encapsulation.
- Copyright (C) 1992, 1995, 1996, 1999 Free Software Foundation, Inc.
-
-This file is part of GNU CC.
-
-GNU CC is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU CC is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU CC; see the file COPYING. If not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA. */
-
-#include "i386/svr3dbx.h"
-
-/* Overridden defines for SCO systems from sco.h. */
-
-/* By default, target has a 80387, uses IEEE compatible arithmetic,
- and returns float values in the 387, ie,
- (TARGET_80387 | TARGET_FLOAT_RETURNS_IN_80387)
-
- SCO's software emulation of a 387 fails to handle the `fucomp'
- opcode. fucomp is only used when generating IEEE compliant code.
- So don't make TARGET_IEEE_FP default for SCO. */
-
-#undef TARGET_SUBTARGET_DEFAULT
-#define TARGET_SUBTARGET_DEFAULT (MASK_80387 | MASK_FLOAT_RETURNS)
-
-/* Use crt1.o as a startup file and crtn.o as a closing file. */
-
-#undef STARTFILE_SPEC
-#define STARTFILE_SPEC \
- "%{!r:%{!z:svr3.ifile%s}%{z:svr3z.ifile%s}}\
- %{pg:gcrt1.o%s}%{!pg:%{p:mcrt1.o%s}%{!p:crt1.o%s}}"
-
-/* Library spec, including SCO international language support. */
-
-#undef LIB_SPEC
-#define LIB_SPEC \
- "%{p:-L/usr/lib/libp}%{pg:-L/usr/lib/libp} %{scointl:libintl.a%s} -lc"
-
-/* Specify predefined symbols in preprocessor. */
-
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-Dunix -DM_UNIX -DM_I386 -DM_COFF -DM_WORDSWAP -Asystem=svr3"
-
-#undef CPP_SPEC
-#define CPP_SPEC "%(cpp_cpu) %{scointl:-DM_INTERNAT}"
-
-/* This spec is used for telling cpp whether char is signed or not. */
-
-#undef SIGNED_CHAR_SPEC
-#if DEFAULT_SIGNED_CHAR
-#define SIGNED_CHAR_SPEC \
- "%{funsigned-char:-D__CHAR_UNSIGNED__ -D_CHAR_UNSIGNED}"
-#else
-#define SIGNED_CHAR_SPEC \
- "%{!fsigned-char:-D__CHAR_UNSIGNED__ -D_CHAR_UNSIGNED}"
-#endif
-
-/* caller has to pop the extra argument passed to functions that return
- structures. */
-
-#undef RETURN_POPS_ARGS
-#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) \
- ((FUNDECL) && TREE_CODE (FUNDECL) == IDENTIFIER_NODE ? 0 \
- : (TARGET_RTD \
- && (TYPE_ARG_TYPES (FUNTYPE) == 0 \
- || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (FUNTYPE))) \
- == void_type_node))) ? (SIZE) \
- : 0)
-/* On other 386 systems, the last line looks like this:
- : (aggregate_value_p (TREE_TYPE (FUNTYPE))) ? GET_MODE_SIZE (Pmode) : 0) */
-
-/* Handle #pragma pack. */
-#define HANDLE_SYSV_PRAGMA
diff --git a/gcc/config/i386/t-cygwin b/gcc/config/i386/t-cygwin
index 1a1534d4df0..c6e77731b1a 100644
--- a/gcc/config/i386/t-cygwin
+++ b/gcc/config/i386/t-cygwin
@@ -1,5 +1,3 @@
-EXTRA_GCC_OBJS = cygwin1.o
-
# If we are building next to winsup, this will let us find the real
# limits.h when building libgcc2. Otherwise, winsup must be installed
# first.
diff --git a/gcc/config/i386/winnt.c b/gcc/config/i386/winnt.c
index 6d29c27e0da..f8621b4f8f0 100644
--- a/gcc/config/i386/winnt.c
+++ b/gcc/config/i386/winnt.c
@@ -1,6 +1,6 @@
/* Subroutines for insn-output.c for Windows NT.
Contributed by Douglas Rupp (drupp@cs.washington.edu)
- Copyright (C) 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -171,7 +171,8 @@ associated_type (tree decl)
dtor's are not affected by class status but virtual and
non-virtual thunks are. */
if (!DECL_ARTIFICIAL (decl) || DECL_COMDAT (decl))
- t = TREE_TYPE (TREE_VALUE (TYPE_ARG_TYPES (TREE_TYPE (decl))));
+ t = TYPE_MAIN_VARIANT
+ (TREE_TYPE (TREE_VALUE (TYPE_ARG_TYPES (TREE_TYPE (decl)))));
}
else if (DECL_CONTEXT (decl)
&& TREE_CODE_CLASS (TREE_CODE (DECL_CONTEXT (decl))) == 't')
diff --git a/gcc/config/i386/xm-dgux.h b/gcc/config/i386/xm-dgux.h
deleted file mode 100644
index 881c5c7be9d..00000000000
--- a/gcc/config/i386/xm-dgux.h
+++ /dev/null
@@ -1,4 +0,0 @@
-/* Configuration for GCC for Intel i386 running DG/ux */
-
-/* looks just like sysv4 for now */
-#include "xm-svr4.h"
diff --git a/gcc/config/i386/xm-djgpp.h b/gcc/config/i386/xm-djgpp.h
index a7e766f68df..9bb520da8ef 100644
--- a/gcc/config/i386/xm-djgpp.h
+++ b/gcc/config/i386/xm-djgpp.h
@@ -43,9 +43,6 @@ Boston, MA 02111-1307, USA. */
strcat (xref_file, xref_ext); \
} while (0)
-/* Change /dev/env/DJDIR/prefix/dir/ to canonical form so gcc_exec_prefix
- is set properly in 'gcc.c'. It also helps to cut down the number of times
- the value of the DJGPP environment variable 'DJDIR' is evaluated. */
#undef GCC_DRIVER_HOST_INITIALIZATION
#define GCC_DRIVER_HOST_INITIALIZATION \
do { \
@@ -69,9 +66,6 @@ Boston, MA 02111-1307, USA. */
fatal ("environment variable DJGPP points to corrupt file '%s'", \
djgpp); \
} \
- standard_exec_prefix = update_path (standard_exec_prefix, NULL); \
- standard_bindir_prefix = update_path (standard_bindir_prefix, NULL); \
- standard_startfile_prefix = update_path (standard_startfile_prefix, NULL); \
} while (0)
/* Canonicalize paths containing '/dev/env/'; used in prefix.c.
diff --git a/gcc/config/i386/xm-mingw32.h b/gcc/config/i386/xm-mingw32.h
index efd0ef9ecbe..888196697be 100644
--- a/gcc/config/i386/xm-mingw32.h
+++ b/gcc/config/i386/xm-mingw32.h
@@ -1,6 +1,6 @@
/* Configuration for GCC for hosting on Windows32.
using GNU tools and the Windows32 API Library.
- Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003 Free Software
+ Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003, 2004 Free Software
Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/i386/xm-sun.h b/gcc/config/i386/xm-sun.h
deleted file mode 100644
index 6c0f0a25630..00000000000
--- a/gcc/config/i386/xm-sun.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/* Configuration for GNU C-compiler for Intel 80386 running SunOS 4.0.
- Copyright (C) 1988, 1997 Free Software Foundation, Inc.
-
-This file is part of GNU CC.
-
-GNU CC is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU CC is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU CC; see the file COPYING. If not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA. */
-
-#define USG
diff --git a/gcc/config/i386/xm-sysv3.h b/gcc/config/i386/xm-sysv3.h
deleted file mode 100644
index 9a655443ff5..00000000000
--- a/gcc/config/i386/xm-sysv3.h
+++ /dev/null
@@ -1,3 +0,0 @@
-/* Configuration for GCC for Intel i386 running System V Release 3. */
-
-#include "xm-svr3.h"
diff --git a/gcc/config/i386/xmmintrin.h b/gcc/config/i386/xmmintrin.h
index dc54251eeab..1bc887830de 100644
--- a/gcc/config/i386/xmmintrin.h
+++ b/gcc/config/i386/xmmintrin.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/i860/i860.h b/gcc/config/i860/i860.h
index c600f0276ec..0dbcc9d0fbc 100644
--- a/gcc/config/i860/i860.h
+++ b/gcc/config/i860/i860.h
@@ -464,7 +464,7 @@ struct cumulative_args { int ints, floats; };
when the function gets a structure-value-address as an
invisible first argument. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM).ints = ((FNTYPE) != 0 && aggregate_value_p (TREE_TYPE ((FNTYPE)), 0) \
? 4 : 0), \
(CUM).floats = 0)
diff --git a/gcc/config/i960/i960.h b/gcc/config/i960/i960.h
index ad86dba003b..67c34e25031 100644
--- a/gcc/config/i960/i960.h
+++ b/gcc/config/i960/i960.h
@@ -853,7 +853,7 @@ struct cum_args { int ca_nregparms; int ca_nstackparms; };
On 80960, the offset always starts at 0; the first parm reg is g0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM).ca_nregparms = 0, (CUM).ca_nstackparms = 0)
/* Update the data in CUM to advance over an argument
diff --git a/gcc/config/ia64/freebsd.h b/gcc/config/ia64/freebsd.h
index d337d57d0d6..c375ae9d540 100644
--- a/gcc/config/ia64/freebsd.h
+++ b/gcc/config/ia64/freebsd.h
@@ -18,9 +18,11 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING. If not, write to
the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
+#define SUBTARGET_EXTRA_SPECS \
+ { "fbsd_dynamic_linker", FBSD_DYNAMIC_LINKER }
#define LINK_SPEC " \
- %{p:%nconsider using `-pg' instead of `-p' with gprof(1)} \
+ %{p:%nconsider using `-pg' instead of `-p' with gprof(1)} \
%{Wl,*:%*} \
%{assert*} %{R*} %{rpath*} %{defsym*} \
%{shared:-Bshareable %{h*} %{soname*}} \
@@ -28,7 +30,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
%{!shared: \
%{!static: \
%{rdynamic:-export-dynamic} \
- %{!dynamic-linker:-dynamic-linker /usr/libexec/ld-elf.so.1}} \
+ %{!dynamic-linker:-dynamic-linker %(fbsd_dynamic_linker) }} \
%{static:-Bstatic}}"
diff --git a/gcc/config/ia64/hpux.h b/gcc/config/ia64/hpux.h
index ecf17680318..05112d8919f 100644
--- a/gcc/config/ia64/hpux.h
+++ b/gcc/config/ia64/hpux.h
@@ -86,7 +86,7 @@ do { \
#ifndef CROSS_COMPILE
#undef LIBGCC_SPEC
#define LIBGCC_SPEC \
- "%{shared-libgcc:%{!mlp64:-lgcc_s_hpux32}%{mlp64:-lgcc_s_hpux64} -lgcc} \
+ "%{shared-libgcc:%{!mlp64:-lgcc_s}%{mlp64:-lgcc_s_hpux64} -lgcc} \
%{!shared-libgcc:-lgcc}"
#endif
@@ -95,6 +95,8 @@ do { \
{ "ilp32", MASK_ILP32, "Generate ILP32 code" }, \
{ "lp64", -MASK_ILP32, "Generate LP64 code" },
+#define MULTILIB_DEFAULTS { "milp32" }
+
/* A C expression whose value is zero if pointers that need to be extended
from being `POINTER_SIZE' bits wide to `Pmode' are sign-extended and
greater then zero if they are zero-extended and less then zero if the
@@ -108,13 +110,13 @@ do { \
#define TARGET_DEFAULT (MASK_DWARF2_ASM | MASK_BIG_ENDIAN | MASK_ILP32)
/* This needs to be set to force structure arguments with a single
- field to be treated as structures and not as the type of their
- field. Without this a structure with a single char will be
- returned just like a char variable and that is wrong on HP-UX
- IA64. */
+ integer field to be treated as structures and not as the type of
+ their field. Without this a structure with a single char will be
+ returned just like a char variable, instead of being returned at the
+ top of the register as specified for big-endian IA64. */
#define MEMBER_TYPE_FORCES_BLK(FIELD, MODE) \
- (TREE_CODE (TREE_TYPE (FIELD)) != REAL_TYPE || MODE == TFmode)
+ (!FLOAT_MODE_P (MODE) || (MODE) == TFmode)
/* ASM_OUTPUT_EXTERNAL_LIBCALL defaults to just a globalize_label call,
but that doesn't put out the @function type information which causes
diff --git a/gcc/config/ia64/ia64-protos.h b/gcc/config/ia64/ia64-protos.h
index c6920fabf4d..7825616491e 100644
--- a/gcc/config/ia64/ia64-protos.h
+++ b/gcc/config/ia64/ia64-protos.h
@@ -1,5 +1,5 @@
/* Definitions of target machine for GNU compiler for IA-64.
- Copyright (C) 1999, 2000, 2002, 2003
+ Copyright (C) 1999, 2000, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c
index a0af1b4b505..13a19a87449 100644
--- a/gcc/config/ia64/ia64.c
+++ b/gcc/config/ia64/ia64.c
@@ -1,5 +1,6 @@
/* Definitions of target machine for GNU compiler.
- Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
Contributed by James E. Wilson <wilson@cygnus.com> and
David Mosberger <davidm@hpl.hp.com>.
@@ -249,7 +250,7 @@ static void ia64_rwreloc_select_rtx_section (enum machine_mode, rtx,
static unsigned int ia64_rwreloc_section_type_flags (tree, const char *, int)
ATTRIBUTE_UNUSED;
-static void ia64_hpux_add_extern_decl (const char *name)
+static void ia64_hpux_add_extern_decl (tree decl)
ATTRIBUTE_UNUSED;
static void ia64_hpux_file_end (void)
ATTRIBUTE_UNUSED;
@@ -260,6 +261,7 @@ static void ia64_vms_init_libfuncs (void)
static tree ia64_handle_model_attribute (tree *, tree, tree, int, bool *);
static void ia64_encode_section_info (tree, rtx, int);
+static rtx ia64_struct_value_rtx (tree, int);
/* Table of valid machine attributes. */
@@ -366,6 +368,9 @@ static const struct attribute_spec ia64_attribute_table[] =
#undef TARGET_ENCODE_SECTION_INFO
#define TARGET_ENCODE_SECTION_INFO ia64_encode_section_info
+#undef TARGET_STRUCT_VALUE_RTX
+#define TARGET_STRUCT_VALUE_RTX ia64_struct_value_rtx
+
struct gcc_target targetm = TARGET_INITIALIZER;
/* Return 1 if OP is a valid operand for the MEM of a CALL insn. */
@@ -1362,62 +1367,37 @@ ia64_emit_cond_move (rtx op0, rtx op1, rtx cond)
}
/* Split a post-reload TImode or TFmode reference into two DImode
- components. */
+ components. This is made extra difficult by the fact that we do
+ not get any scratch registers to work with, because reload cannot
+ be prevented from giving us a scratch that overlaps the register
+ pair involved. So instead, when addressing memory, we tweak the
+ pointer register up and back down with POST_INCs. Or up and not
+ back down when we can get away with it.
+
+ REVERSED is true when the loads must be done in reversed order
+ (high word first) for correctness. DEAD is true when the pointer
+ dies with the second insn we generate and therefore the second
+ address must not carry a postmodify.
+
+ May return an insn which is to be emitted after the moves. */
static rtx
-ia64_split_tmode (rtx out[2], rtx in, rtx scratch)
+ia64_split_tmode (rtx out[2], rtx in, bool reversed, bool dead)
{
+ rtx fixup = 0;
+
switch (GET_CODE (in))
{
case REG:
- out[0] = gen_rtx_REG (DImode, REGNO (in));
- out[1] = gen_rtx_REG (DImode, REGNO (in) + 1);
- return NULL_RTX;
-
- case MEM:
- {
- rtx base = XEXP (in, 0);
-
- switch (GET_CODE (base))
- {
- case REG:
- out[0] = adjust_address (in, DImode, 0);
- break;
- case POST_MODIFY:
- base = XEXP (base, 0);
- out[0] = adjust_address (in, DImode, 0);
- break;
-
- /* Since we're changing the mode, we need to change to POST_MODIFY
- as well to preserve the size of the increment. Either that or
- do the update in two steps, but we've already got this scratch
- register handy so let's use it. */
- case POST_INC:
- base = XEXP (base, 0);
- out[0]
- = change_address (in, DImode,
- gen_rtx_POST_MODIFY
- (Pmode, base, plus_constant (base, 16)));
- break;
- case POST_DEC:
- base = XEXP (base, 0);
- out[0]
- = change_address (in, DImode,
- gen_rtx_POST_MODIFY
- (Pmode, base, plus_constant (base, -16)));
- break;
- default:
- abort ();
- }
-
- if (scratch == NULL_RTX)
- abort ();
- out[1] = change_address (in, DImode, scratch);
- return gen_adddi3 (scratch, base, GEN_INT (8));
- }
+ out[reversed] = gen_rtx_REG (DImode, REGNO (in));
+ out[!reversed] = gen_rtx_REG (DImode, REGNO (in) + 1);
+ break;
case CONST_INT:
case CONST_DOUBLE:
+ /* Cannot occur reversed. */
+ if (reversed) abort ();
+
if (GET_MODE (in) != TFmode)
split_double (in, &out[0], &out[1]);
else
@@ -1444,11 +1424,108 @@ ia64_split_tmode (rtx out[2], rtx in, rtx scratch)
out[0] = GEN_INT (p[0]);
out[1] = GEN_INT (p[1]);
}
- return NULL_RTX;
+ break;
+
+ case MEM:
+ {
+ rtx base = XEXP (in, 0);
+ rtx offset;
+
+ switch (GET_CODE (base))
+ {
+ case REG:
+ if (!reversed)
+ {
+ out[0] = adjust_automodify_address
+ (in, DImode, gen_rtx_POST_INC (Pmode, base), 0);
+ out[1] = adjust_automodify_address
+ (in, DImode, dead ? 0 : gen_rtx_POST_DEC (Pmode, base), 8);
+ }
+ else
+ {
+ /* Reversal requires a pre-increment, which can only
+ be done as a separate insn. */
+ emit_insn (gen_adddi3 (base, base, GEN_INT (8)));
+ out[0] = adjust_automodify_address
+ (in, DImode, gen_rtx_POST_DEC (Pmode, base), 8);
+ out[1] = adjust_address (in, DImode, 0);
+ }
+ break;
+
+ case POST_INC:
+ if (reversed || dead) abort ();
+ /* Just do the increment in two steps. */
+ out[0] = adjust_automodify_address (in, DImode, 0, 0);
+ out[1] = adjust_automodify_address (in, DImode, 0, 8);
+ break;
+
+ case POST_DEC:
+ if (reversed || dead) abort ();
+ /* Add 8, subtract 24. */
+ base = XEXP (base, 0);
+ out[0] = adjust_automodify_address
+ (in, DImode, gen_rtx_POST_INC (Pmode, base), 0);
+ out[1] = adjust_automodify_address
+ (in, DImode,
+ gen_rtx_POST_MODIFY (Pmode, base, plus_constant (base, -24)),
+ 8);
+ break;
+
+ case POST_MODIFY:
+ if (reversed || dead) abort ();
+ /* Extract and adjust the modification. This case is
+ trickier than the others, because we might have an
+ index register, or we might have a combined offset that
+ doesn't fit a signed 9-bit displacement field. We can
+ assume the incoming expression is already legitimate. */
+ offset = XEXP (base, 1);
+ base = XEXP (base, 0);
+
+ out[0] = adjust_automodify_address
+ (in, DImode, gen_rtx_POST_INC (Pmode, base), 0);
+
+ if (GET_CODE (XEXP (offset, 1)) == REG)
+ {
+ /* Can't adjust the postmodify to match. Emit the
+ original, then a separate addition insn. */
+ out[1] = adjust_automodify_address (in, DImode, 0, 8);
+ fixup = gen_adddi3 (base, base, GEN_INT (-8));
+ }
+ else if (GET_CODE (XEXP (offset, 1)) != CONST_INT)
+ abort ();
+ else if (INTVAL (XEXP (offset, 1)) < -256 + 8)
+ {
+ /* Again the postmodify cannot be made to match, but
+ in this case it's more efficient to get rid of the
+ postmodify entirely and fix up with an add insn. */
+ out[1] = adjust_automodify_address (in, DImode, base, 8);
+ fixup = gen_adddi3 (base, base,
+ GEN_INT (INTVAL (XEXP (offset, 1)) - 8));
+ }
+ else
+ {
+ /* Combined offset still fits in the displacement field.
+ (We cannot overflow it at the high end.) */
+ out[1] = adjust_automodify_address
+ (in, DImode,
+ gen_rtx_POST_MODIFY (Pmode, base,
+ gen_rtx_PLUS (Pmode, base,
+ GEN_INT (INTVAL (XEXP (offset, 1)) - 8))),
+ 8);
+ }
+ break;
+
+ default:
+ abort ();
+ }
+ break;
+ }
default:
abort ();
}
+
+ return fixup;
}
/* Split a TImode or TFmode move instruction after reload.
@@ -1456,39 +1533,60 @@ ia64_split_tmode (rtx out[2], rtx in, rtx scratch)
void
ia64_split_tmode_move (rtx operands[])
{
- rtx adj1, adj2, in[2], out[2], insn;
- int first;
-
- adj1 = ia64_split_tmode (in, operands[1], operands[2]);
- adj2 = ia64_split_tmode (out, operands[0], operands[2]);
-
- first = 0;
- if (reg_overlap_mentioned_p (out[0], in[1]))
- {
- if (reg_overlap_mentioned_p (out[1], in[0]))
- abort ();
- first = 1;
- }
-
- if (adj1 && adj2)
- abort ();
- if (adj1)
- emit_insn (adj1);
- if (adj2)
- emit_insn (adj2);
- insn = emit_insn (gen_rtx_SET (VOIDmode, out[first], in[first]));
- if (GET_CODE (out[first]) == MEM
- && GET_CODE (XEXP (out[first], 0)) == POST_MODIFY)
- REG_NOTES (insn) = gen_rtx_EXPR_LIST (REG_INC,
- XEXP (XEXP (out[first], 0), 0),
- REG_NOTES (insn));
- insn = emit_insn (gen_rtx_SET (VOIDmode, out[!first], in[!first]));
- if (GET_CODE (out[!first]) == MEM
- && GET_CODE (XEXP (out[!first], 0)) == POST_MODIFY)
- REG_NOTES (insn) = gen_rtx_EXPR_LIST (REG_INC,
- XEXP (XEXP (out[!first], 0), 0),
- REG_NOTES (insn));
-
+ rtx in[2], out[2], insn;
+ rtx fixup[2];
+ bool dead = false;
+ bool reversed = false;
+
+ /* It is possible for reload to decide to overwrite a pointer with
+ the value it points to. In that case we have to do the loads in
+ the appropriate order so that the pointer is not destroyed too
+ early. Also we must not generate a postmodify for that second
+ load, or rws_access_regno will abort. */
+ if (GET_CODE (operands[1]) == MEM
+ && reg_overlap_mentioned_p (operands[0], operands[1]))
+ {
+ rtx base = XEXP (operands[1], 0);
+ while (GET_CODE (base) != REG)
+ base = XEXP (base, 0);
+
+ if (REGNO (base) == REGNO (operands[0]))
+ reversed = true;
+ dead = true;
+ }
+ /* Another reason to do the moves in reversed order is if the first
+ element of the target register pair is also the second element of
+ the source register pair. */
+ if (GET_CODE (operands[0]) == REG && GET_CODE (operands[1]) == REG
+ && REGNO (operands[0]) == REGNO (operands[1]) + 1)
+ reversed = true;
+
+ fixup[0] = ia64_split_tmode (in, operands[1], reversed, dead);
+ fixup[1] = ia64_split_tmode (out, operands[0], reversed, dead);
+
+#define MAYBE_ADD_REG_INC_NOTE(INSN, EXP) \
+ if (GET_CODE (EXP) == MEM \
+ && (GET_CODE (XEXP (EXP, 0)) == POST_MODIFY \
+ || GET_CODE (XEXP (EXP, 0)) == POST_INC \
+ || GET_CODE (XEXP (EXP, 0)) == POST_DEC)) \
+ REG_NOTES (INSN) = gen_rtx_EXPR_LIST (REG_INC, \
+ XEXP (XEXP (EXP, 0), 0), \
+ REG_NOTES (INSN))
+
+ insn = emit_insn (gen_rtx_SET (VOIDmode, out[0], in[0]));
+ MAYBE_ADD_REG_INC_NOTE (insn, in[0]);
+ MAYBE_ADD_REG_INC_NOTE (insn, out[0]);
+
+ insn = emit_insn (gen_rtx_SET (VOIDmode, out[1], in[1]));
+ MAYBE_ADD_REG_INC_NOTE (insn, in[1]);
+ MAYBE_ADD_REG_INC_NOTE (insn, out[1]);
+
+ if (fixup[0])
+ emit_insn (fixup[0]);
+ if (fixup[1])
+ emit_insn (fixup[1]);
+
+#undef MAYBE_ADD_REG_INC_NOTE
}
/* ??? Fixing GR->FR XFmode moves during reload is hard. You need to go
@@ -3588,6 +3686,7 @@ ia64_function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode, tree type,
for (; offset < byte_size && int_regs < MAX_ARGUMENT_SLOTS; i++)
{
enum machine_mode gr_mode = DImode;
+ unsigned int gr_size;
/* If we have an odd 4 byte hunk because we ran out of FR regs,
then this goes in a GR reg left adjusted/little endian, right
@@ -3601,17 +3700,19 @@ ia64_function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode, tree type,
adjusted/little endian. */
else if (byte_size - offset == 4)
gr_mode = SImode;
- /* Complex floats need to have float mode. */
- if (GET_MODE_CLASS (mode) == MODE_COMPLEX_FLOAT)
- gr_mode = hfa_mode;
loc[i] = gen_rtx_EXPR_LIST (VOIDmode,
gen_rtx_REG (gr_mode, (basereg
+ int_regs)),
GEN_INT (offset));
- offset += GET_MODE_SIZE (gr_mode);
- int_regs += GET_MODE_SIZE (gr_mode) <= UNITS_PER_WORD
- ? 1 : GET_MODE_SIZE (gr_mode) / UNITS_PER_WORD;
+
+ gr_size = GET_MODE_SIZE (gr_mode);
+ offset += gr_size;
+ if (gr_size == UNITS_PER_WORD
+ || (gr_size < UNITS_PER_WORD && offset % UNITS_PER_WORD == 0))
+ int_regs++;
+ else if (gr_size > UNITS_PER_WORD)
+ int_regs += gr_size / UNITS_PER_WORD;
}
/* If we ended up using just one location, just return that one loc, but
@@ -3651,21 +3752,34 @@ ia64_function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode, tree type,
named, and in a GR register when unnamed. */
else if (cum->prototype)
{
- if (! named)
- return gen_rtx_REG (mode, basereg + cum->words + offset);
- else
+ if (named)
return gen_rtx_REG (mode, FR_ARG_FIRST + cum->fp_regs);
+ /* In big-endian mode, an anonymous SFmode value must be represented
+ as (parallel:SF [(expr_list (reg:DI n) (const_int 0))]) to force
+ the value into the high half of the general register. */
+ else if (BYTES_BIG_ENDIAN && mode == SFmode)
+ return gen_rtx_PARALLEL (mode,
+ gen_rtvec (1,
+ gen_rtx_EXPR_LIST (VOIDmode,
+ gen_rtx_REG (DImode, basereg + cum->words + offset),
+ const0_rtx)));
+ else
+ return gen_rtx_REG (mode, basereg + cum->words + offset);
}
/* If there is no prototype, then FP values go in both FR and GR
registers. */
else
{
+ /* See comment above. */
+ enum machine_mode inner_mode =
+ (BYTES_BIG_ENDIAN && mode == SFmode) ? DImode : mode;
+
rtx fp_reg = gen_rtx_EXPR_LIST (VOIDmode,
gen_rtx_REG (mode, (FR_ARG_FIRST
+ cum->fp_regs)),
const0_rtx);
rtx gr_reg = gen_rtx_EXPR_LIST (VOIDmode,
- gen_rtx_REG (mode,
+ gen_rtx_REG (inner_mode,
(basereg + cum->words
+ offset)),
const0_rtx);
@@ -4454,13 +4568,6 @@ ia64_secondary_reload_class (enum reg_class class,
return GR_REGS;
break;
- case GR_REGS:
- /* Since we have no offsettable memory addresses, we need a temporary
- to hold the address of the second word. */
- if (mode == TImode || mode == TFmode)
- return GR_REGS;
- break;
-
default:
break;
}
@@ -4499,7 +4606,7 @@ ia64_asm_output_external (FILE *file, tree decl, const char *name)
return;
if (TARGET_HPUX_LD)
- ia64_hpux_add_extern_decl (name);
+ ia64_hpux_add_extern_decl (decl);
else
{
/* assemble_name will set TREE_SYMBOL_REFERENCED, so we must save and
@@ -8514,20 +8621,20 @@ ia64_hpux_function_arg_padding (enum machine_mode mode, tree type)
We output the name if and only if TREE_SYMBOL_REFERENCED is set in
order to avoid putting out names that are never really used. */
-struct extern_func_list
+struct extern_func_list GTY(())
{
- struct extern_func_list *next; /* next external */
- char *name; /* name of the external */
-} *extern_func_head = 0;
+ struct extern_func_list *next;
+ tree decl;
+};
+
+static GTY(()) struct extern_func_list *extern_func_head;
static void
-ia64_hpux_add_extern_decl (const char *name)
+ia64_hpux_add_extern_decl (tree decl)
{
- struct extern_func_list *p;
+ struct extern_func_list *p = ggc_alloc (sizeof (struct extern_func_list));
- p = (struct extern_func_list *) xmalloc (sizeof (struct extern_func_list));
- p->name = xmalloc (strlen (name) + 1);
- strcpy(p->name, name);
+ p->decl = decl;
p->next = extern_func_head;
extern_func_head = p;
}
@@ -8537,29 +8644,29 @@ ia64_hpux_add_extern_decl (const char *name)
static void
ia64_hpux_file_end (void)
{
- while (extern_func_head)
+ struct extern_func_list *p;
+
+ for (p = extern_func_head; p; p = p->next)
{
- const char *real_name;
- tree decl;
+ tree decl = p->decl;
+ tree id = DECL_ASSEMBLER_NAME (decl);
- real_name = (* targetm.strip_name_encoding) (extern_func_head->name);
- decl = maybe_get_identifier (real_name);
+ if (!id)
+ abort ();
- if (!decl
- || (! TREE_ASM_WRITTEN (decl) && TREE_SYMBOL_REFERENCED (decl)))
+ if (!TREE_ASM_WRITTEN (decl) && TREE_SYMBOL_REFERENCED (id))
{
- if (decl)
- TREE_ASM_WRITTEN (decl) = 1;
- (*targetm.asm_out.globalize_label) (asm_out_file,
- extern_func_head->name);
+ const char *name = XSTR (XEXP (DECL_RTL (decl), 0), 0);
+
+ TREE_ASM_WRITTEN (decl) = 1;
+ (*targetm.asm_out.globalize_label) (asm_out_file, name);
fputs (TYPE_ASM_OP, asm_out_file);
- assemble_name (asm_out_file, extern_func_head->name);
- putc (',', asm_out_file);
- fprintf (asm_out_file, TYPE_OPERAND_FMT, "function");
- putc ('\n', asm_out_file);
+ assemble_name (asm_out_file, name);
+ fprintf (asm_out_file, "," TYPE_OPERAND_FMT "\n", "function");
}
- extern_func_head = extern_func_head->next;
}
+
+ extern_func_head = 0;
}
/* Rename all the TFmode libfuncs using the HPUX conventions. */
@@ -8663,6 +8770,27 @@ ia64_rwreloc_section_type_flags (tree decl, const char *name, int reloc)
return default_section_type_flags_1 (decl, name, reloc, true);
}
+/* Returns true if FNTYPE (a FUNCTION_TYPE or a METHOD_TYPE) returns a
+ structure type and that the address of that type should be passed
+ in out0, rather than in r8. */
+
+static bool
+ia64_struct_retval_addr_is_first_parm_p (tree fntype)
+{
+ tree ret_type = TREE_TYPE (fntype);
+
+ /* The Itanium C++ ABI requires that out0, rather than r8, be used
+ as the structure return address parameter, if the return value
+ type has a non-trivial copy constructor or destructor. It is not
+ clear if this same convention should be used for other
+ programming languages. Until G++ 3.4, we incorrectly used r8 for
+ these return values. */
+ return (abi_version_at_least (2)
+ && ret_type
+ && TYPE_MODE (ret_type) == BLKmode
+ && TREE_ADDRESSABLE (ret_type)
+ && strcmp (lang_hooks.name, "GNU C++") == 0);
+}
/* Output the assembler code for a thunk function. THUNK_DECL is the
declaration for the thunk function itself, FUNCTION is the decl for
@@ -8676,6 +8804,8 @@ ia64_output_mi_thunk (FILE *file, tree thunk ATTRIBUTE_UNUSED,
tree function)
{
rtx this, insn, funexp;
+ unsigned int this_parmno;
+ unsigned int this_regno;
reload_completed = 1;
epilogue_completed = 1;
@@ -8689,16 +8819,23 @@ ia64_output_mi_thunk (FILE *file, tree thunk ATTRIBUTE_UNUSED,
current_frame_info.n_input_regs = 1;
current_frame_info.need_regstk = (TARGET_REG_NAMES != 0);
- if (!TARGET_REG_NAMES)
- reg_names[IN_REG (0)] = ia64_reg_numbers[0];
-
/* Mark the end of the (empty) prologue. */
emit_note (NOTE_INSN_PROLOGUE_END);
- this = gen_rtx_REG (Pmode, IN_REG (0));
+ /* Figure out whether "this" will be the first parameter (the
+ typical case) or the second parameter (as happens when the
+ virtual function returns certain class objects). */
+ this_parmno
+ = (ia64_struct_retval_addr_is_first_parm_p (TREE_TYPE (thunk))
+ ? 1 : 0);
+ this_regno = IN_REG (this_parmno);
+ if (!TARGET_REG_NAMES)
+ reg_names[this_regno] = ia64_reg_numbers[this_parmno];
+
+ this = gen_rtx_REG (Pmode, this_regno);
if (TARGET_ILP32)
{
- rtx tmp = gen_rtx_REG (ptr_mode, IN_REG (0));
+ rtx tmp = gen_rtx_REG (ptr_mode, this_regno);
REG_POINTER (tmp) = 1;
if (delta && CONST_OK_FOR_I (delta))
{
@@ -8803,4 +8940,15 @@ ia64_output_mi_thunk (FILE *file, tree thunk ATTRIBUTE_UNUSED,
no_new_pseudos = 0;
}
+/* Worker function for TARGET_STRUCT_VALUE_RTX. */
+
+static rtx
+ia64_struct_value_rtx (tree fntype,
+ int incoming ATTRIBUTE_UNUSED)
+{
+ if (fntype && ia64_struct_retval_addr_is_first_parm_p (fntype))
+ return NULL_RTX;
+ return gen_rtx_REG (Pmode, GR_REG (8));
+}
+
#include "gt-ia64.h"
diff --git a/gcc/config/ia64/ia64.h b/gcc/config/ia64/ia64.h
index 84e864908c1..5857b952a5e 100644
--- a/gcc/config/ia64/ia64.h
+++ b/gcc/config/ia64/ia64.h
@@ -1350,7 +1350,7 @@ typedef struct ia64_args
/* A C statement (sans semicolon) for initializing the variable CUM for the
state at the beginning of the argument list. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
do { \
(CUM).words = 0; \
(CUM).int_regs = 0; \
@@ -1445,11 +1445,6 @@ do { \
#define DEFAULT_PCC_STRUCT_RETURN 0
-/* If the structure value address is passed in a register, then
- `STRUCT_VALUE_REGNUM' should be the number of that register. */
-
-#define STRUCT_VALUE_REGNUM GR_REG (8)
-
/* Caller-Saves Register Allocation */
diff --git a/gcc/config/ia64/ia64.md b/gcc/config/ia64/ia64.md
index 169569ac980..ed0fdeb30ca 100644
--- a/gcc/config/ia64/ia64.md
+++ b/gcc/config/ia64/ia64.md
@@ -1,5 +1,6 @@
;; IA-64 Machine description template
-;; Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+;; Free Software Foundation, Inc.
;; Contributed by James E. Wilson <wilson@cygnus.com> and
;; David Mosberger <davidm@hpl.hp.com>.
@@ -584,11 +585,12 @@
[(set_attr "itanium_class" "ialu")])
;; With no offsettable memory references, we've got to have a scratch
-;; around to play with the second word.
+;; around to play with the second word. However, in order to avoid a
+;; reload nightmare we lie, claim we don't need one, and fix it up
+;; in ia64_split_tmode_move.
(define_expand "movti"
- [(parallel [(set (match_operand:TI 0 "general_operand" "")
- (match_operand:TI 1 "general_operand" ""))
- (clobber (match_scratch:DI 2 ""))])]
+ [(set (match_operand:TI 0 "general_operand" "")
+ (match_operand:TI 1 "general_operand" ""))]
""
{
rtx op1 = ia64_expand_move (operands[0], operands[1]);
@@ -599,8 +601,7 @@
(define_insn_and_split "*movti_internal"
[(set (match_operand:TI 0 "nonimmediate_operand" "=r,r,m")
- (match_operand:TI 1 "general_operand" "ri,m,r"))
- (clobber (match_scratch:DI 2 "=X,&r,&r"))]
+ (match_operand:TI 1 "general_operand" "ri,m,r"))]
"ia64_move_ok (operands[0], operands[1])"
"#"
"reload_completed"
@@ -612,20 +613,6 @@
[(set_attr "itanium_class" "unknown")
(set_attr "predicable" "no")])
-(define_expand "reload_inti"
- [(parallel [(set (match_operand:TI 0 "register_operand" "=r")
- (match_operand:TI 1 "memory_operand" "m"))
- (clobber (match_operand:DI 2 "register_operand" "=&r"))])]
- ""
- "")
-
-(define_expand "reload_outti"
- [(parallel [(set (match_operand:TI 0 "memory_operand" "=m")
- (match_operand:TI 1 "register_operand" "r"))
- (clobber (match_operand:DI 2 "register_operand" "=&r"))])]
- ""
- "")
-
;; Floating Point Moves
;;
;; Note - Patterns for SF mode moves are compulsory, but
@@ -764,13 +751,10 @@
[(set_attr "itanium_class" "fmisc,fld,stf")])
;; Better code generation via insns that deal with TFmode register pairs
-;; directly.
-;; With no offsettable memory references, we've got to have a scratch
-;; around to play with the second word.
+;; directly. Same concerns apply as for TImode.
(define_expand "movtf"
- [(parallel [(set (match_operand:TF 0 "general_operand" "")
- (match_operand:TF 1 "general_operand" ""))
- (clobber (match_scratch:DI 2 ""))])]
+ [(set (match_operand:TF 0 "general_operand" "")
+ (match_operand:TF 1 "general_operand" ""))]
""
{
rtx op1 = ia64_expand_move (operands[0], operands[1]);
@@ -781,8 +765,7 @@
(define_insn_and_split "*movtf_internal"
[(set (match_operand:TF 0 "nonimmediate_operand" "=r,r,m")
- (match_operand:TF 1 "general_operand" "ri,m,r"))
- (clobber (match_scratch:DI 2 "=X,&r,&r"))]
+ (match_operand:TF 1 "general_operand" "ri,m,r"))]
"ia64_move_ok (operands[0], operands[1])"
"#"
"reload_completed"
@@ -794,19 +777,6 @@
[(set_attr "itanium_class" "unknown")
(set_attr "predicable" "no")])
-(define_expand "reload_intf"
- [(parallel [(set (match_operand:TF 0 "register_operand" "=r")
- (match_operand:TF 1 "memory_operand" "m"))
- (clobber (match_operand:DI 2 "register_operand" "=&r"))])]
- ""
- "")
-
-(define_expand "reload_outtf"
- [(parallel [(set (match_operand:TF 0 "memory_operand" "=m")
- (match_operand:TF 1 "register_operand" "r"))
- (clobber (match_operand:DI 2 "register_operand" "=&r"))])]
- ""
- "")
;; ::::::::::::::::::::
;; ::
@@ -5803,8 +5773,8 @@
(define_insn "fetchadd_acq_si"
[(set (match_operand:SI 0 "gr_register_operand" "=r")
- (match_dup 1))
- (set (match_operand:SI 1 "not_postinc_memory_operand" "+S")
+ (match_operand:SI 1 "not_postinc_memory_operand" "+S"))
+ (set (match_dup 1)
(unspec:SI [(match_dup 1)
(match_operand:SI 2 "fetchadd_operand" "n")]
UNSPEC_FETCHADD_ACQ))]
@@ -5814,8 +5784,8 @@
(define_insn "fetchadd_acq_di"
[(set (match_operand:DI 0 "gr_register_operand" "=r")
- (match_dup 1))
- (set (match_operand:DI 1 "not_postinc_memory_operand" "+S")
+ (match_operand:DI 1 "not_postinc_memory_operand" "+S"))
+ (set (match_dup 1)
(unspec:DI [(match_dup 1)
(match_operand:DI 2 "fetchadd_operand" "n")]
UNSPEC_FETCHADD_ACQ))]
@@ -5825,8 +5795,8 @@
(define_insn "cmpxchg_acq_si"
[(set (match_operand:SI 0 "gr_register_operand" "=r")
- (match_dup 1))
- (set (match_operand:SI 1 "not_postinc_memory_operand" "+S")
+ (match_operand:SI 1 "not_postinc_memory_operand" "+S"))
+ (set (match_dup 1)
(unspec:SI [(match_dup 1)
(match_operand:SI 2 "gr_register_operand" "r")
(match_operand:DI 3 "ar_ccv_reg_operand" "")]
@@ -5837,8 +5807,8 @@
(define_insn "cmpxchg_acq_di"
[(set (match_operand:DI 0 "gr_register_operand" "=r")
- (match_dup 1))
- (set (match_operand:DI 1 "not_postinc_memory_operand" "+S")
+ (match_operand:DI 1 "not_postinc_memory_operand" "+S"))
+ (set (match_dup 1)
(unspec:DI [(match_dup 1)
(match_operand:DI 2 "gr_register_operand" "r")
(match_operand:DI 3 "ar_ccv_reg_operand" "")]
diff --git a/gcc/config/ia64/linux.h b/gcc/config/ia64/linux.h
index fc7df808188..5c73b0c25ef 100644
--- a/gcc/config/ia64/linux.h
+++ b/gcc/config/ia64/linux.h
@@ -58,6 +58,11 @@ do { \
/* Do code reading to identify a signal frame, and set the frame
state data appropriately. See unwind-dw2.c for the structs. */
+/* This works only for glibc-2.3 and later, because sigcontext is different
+ in glibc-2.2.4. */
+
+#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)
+
#ifdef IN_LIBGCC2
#include <signal.h>
#include <sys/ucontext.h>
@@ -207,3 +212,4 @@ do { \
}
#endif /* IN_LIBGCC2 */
+#endif /* glibc-2.3 or better */
diff --git a/gcc/config/ip2k/ip2k.c b/gcc/config/ip2k/ip2k.c
index 6f32c43d07c..4122f0e1eeb 100644
--- a/gcc/config/ip2k/ip2k.c
+++ b/gcc/config/ip2k/ip2k.c
@@ -1,6 +1,6 @@
/* Subroutines used for code generation on Ubicom IP2022
Communications Controller.
- Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Red Hat, Inc and Ubicom, Inc.
This file is part of GCC.
diff --git a/gcc/config/ip2k/ip2k.h b/gcc/config/ip2k/ip2k.h
index 88b90b0c186..7e5cbf18682 100644
--- a/gcc/config/ip2k/ip2k.h
+++ b/gcc/config/ip2k/ip2k.h
@@ -441,7 +441,7 @@ enum reg_class {
#define CUMULATIVE_ARGS int
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM) = 0)
#define FUNCTION_ARG_ADVANCE(CUM, MODE, TYPE, NAMED)
diff --git a/gcc/config/iq2000/iq2000-protos.h b/gcc/config/iq2000/iq2000-protos.h
index 989bb657ccb..be1ded827da 100644
--- a/gcc/config/iq2000/iq2000-protos.h
+++ b/gcc/config/iq2000/iq2000-protos.h
@@ -1,5 +1,5 @@
/* Definitions of target machine for GNU compiler for iq2000.
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/iq2000/iq2000.c b/gcc/config/iq2000/iq2000.c
index 5015b86db24..9e6dd48b3c6 100644
--- a/gcc/config/iq2000/iq2000.c
+++ b/gcc/config/iq2000/iq2000.c
@@ -1,5 +1,5 @@
/* Subroutines used for code generation on Vitesse IQ2000 processors
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -2309,7 +2309,7 @@ iq2000_expand_prologue (void)
variable arguments.
This is only needed if store_args_on_stack is true. */
- INIT_CUMULATIVE_ARGS (args_so_far, fntype, NULL_RTX, 0);
+ INIT_CUMULATIVE_ARGS (args_so_far, fntype, NULL_RTX, 0, 0);
regno = GP_ARG_FIRST;
for (cur_arg = fnargs; cur_arg != 0; cur_arg = next_arg)
diff --git a/gcc/config/iq2000/iq2000.h b/gcc/config/iq2000/iq2000.h
index a54856a402b..bfe39c9504a 100644
--- a/gcc/config/iq2000/iq2000.h
+++ b/gcc/config/iq2000/iq2000.h
@@ -472,7 +472,7 @@ typedef struct iq2000_args
/* Initialize a variable CUM of type CUMULATIVE_ARGS
for a call to a function whose data type is FNTYPE.
For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
init_cumulative_args (& CUM, FNTYPE, LIBNAME) \
#define FUNCTION_ARG_ADVANCE(CUM, MODE, TYPE, NAMED) \
diff --git a/gcc/config/iq2000/iq2000.md b/gcc/config/iq2000/iq2000.md
index de84e66276a..e5a04b27e62 100644
--- a/gcc/config/iq2000/iq2000.md
+++ b/gcc/config/iq2000/iq2000.md
@@ -1,5 +1,5 @@
;; iq2000.md Machine Description for Vitesse IQ2000 processors
-;; Copyright (C) 2003 Free Software Foundation, Inc.
+;; Copyright (C) 2003, 2004 Free Software Foundation, Inc.
;; This file is part of GCC.
diff --git a/gcc/config/m32r/m32r-protos.h b/gcc/config/m32r/m32r-protos.h
index 01bbd6d5835..d2fbd51215d 100644
--- a/gcc/config/m32r/m32r-protos.h
+++ b/gcc/config/m32r/m32r-protos.h
@@ -1,5 +1,5 @@
/* Prototypes for m32r.c functions used in the md file & elsewhere.
- Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/m32r/m32r.c b/gcc/config/m32r/m32r.c
index ce9abebc2c8..a1d63fbdbf1 100644
--- a/gcc/config/m32r/m32r.c
+++ b/gcc/config/m32r/m32r.c
@@ -1,5 +1,5 @@
/* Subroutines used for code generation on the Renesas M32R cpu.
- Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/m32r/m32r.h b/gcc/config/m32r/m32r.h
index ae29628e9ac..459037c1530 100644
--- a/gcc/config/m32r/m32r.h
+++ b/gcc/config/m32r/m32r.h
@@ -184,6 +184,8 @@
{ "relax", RELAX_SPEC }, \
SUBTARGET_EXTRA_SPECS
+#define CPP_SPEC "%(cpp_cpu)"
+
#undef CC1_SPEC
#define CC1_SPEC "%{G*} %(cc1_cpu)"
@@ -241,7 +243,7 @@ extern int target_flags;
/* Support extended instruction set of m32r2. */
#define TARGET_M32R2_MASK (1 << 6)
-#define TARGET_M32R2 (target_flags & TARGET_M32RX_MASK)
+#define TARGET_M32R2 (target_flags & TARGET_M32R2_MASK)
#undef TARGET_M32R
#define TARGET_M32R (! TARGET_M32RX && ! TARGET_M32R2)
@@ -498,15 +500,6 @@ extern enum m32r_sdata m32r_sdata;
(MODE) = SImode; \
}
-/* Define this macro if the promotion described by `PROMOTE_MODE'
- should also be done for outgoing function arguments. */
-/*#define PROMOTE_FUNCTION_ARGS*/
-
-/* Likewise, if the function return value is promoted.
- If defined, FUNCTION_VALUE must perform the same promotions done by
- PROMOTE_MODE. */
-/*#define PROMOTE_FUNCTION_RETURN*/
-
/* Allocation boundary (in *bits*) for storing arguments in argument list. */
#define PARM_BOUNDARY 32
@@ -1039,7 +1032,7 @@ extern enum reg_class m32r_regno_reg_class[FIRST_PSEUDO_REGISTER];
SIZE is the number of bytes of arguments passed on the stack. */
#define RETURN_POPS_ARGS(DECL, FUNTYPE, SIZE) 0
-/* Nonzero if we do not know how to pass TYPE solely in registers. */
+/* Nonzero if we do not know how to pass TYPE solely in registers. */
#define MUST_PASS_IN_STACK(MODE, TYPE) \
((TYPE) != 0 \
&& (TREE_CODE (TYPE_SIZE (TYPE)) != INTEGER_CST \
@@ -1055,7 +1048,7 @@ extern enum reg_class m32r_regno_reg_class[FIRST_PSEUDO_REGISTER];
/* Initialize a variable CUM of type CUMULATIVE_ARGS
for a call to a function whose data type is FNTYPE.
For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM) = 0)
/* The number of registers used for parameter passing. Local to this file. */
@@ -1780,7 +1773,7 @@ extern char m32r_punct_chars[256];
/* Define as C expression which evaluates to nonzero if the tablejump
instruction expects the table to contain offsets from the address of the
table.
- Do not define this if the table should contain absolute addresses. */
+ Do not define this if the table should contain absolute addresses. */
/* It's not clear what PIC will look like or whether we want to use -fpic
for the embedded form currently being talked about. For now require -fpic
to get pc relative switch tables. */
diff --git a/gcc/config/m32r/m32r.md b/gcc/config/m32r/m32r.md
index ad1217e8981..b00390830a8 100644
--- a/gcc/config/m32r/m32r.md
+++ b/gcc/config/m32r/m32r.md
@@ -1,5 +1,6 @@
;; Machine description of the Renesas M32R cpu for GNU C compiler
-;; Copyright (C) 1996, 1997, 1998, 1999, 2001, 2003 Free Software Foundation, Inc.
+;; Copyright (C) 1996, 1997, 1998, 1999, 2001, 2003, 2004
+;; Free Software Foundation, Inc.
;; This file is part of GCC.
diff --git a/gcc/config/m68hc11/m68hc11.c b/gcc/config/m68hc11/m68hc11.c
index 9a8651dd440..f24bc78f038 100644
--- a/gcc/config/m68hc11/m68hc11.c
+++ b/gcc/config/m68hc11/m68hc11.c
@@ -1,5 +1,6 @@
/* Subroutines for code generation on Motorola 68HC11 and 68HC12.
- Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
Contributed by Stephane Carrez (stcarrez@nerim.fr)
This file is part of GCC.
@@ -137,6 +138,16 @@ unsigned char m68hc11_reg_valid_for_index[FIRST_PSEUDO_REGISTER];
This is 1 for 68HC11 and 0 for 68HC12. */
int m68hc11_sp_correction;
+#define ADDR_STRICT 0x01 /* Accept only registers in class A_REGS */
+#define ADDR_INCDEC 0x02 /* Post/Pre inc/dec */
+#define ADDR_INDEXED 0x04 /* D-reg index */
+#define ADDR_OFFSET 0x08
+#define ADDR_INDIRECT 0x10 /* Accept (mem (mem ...)) for [n,X] */
+#define ADDR_CONST 0x20 /* Accept const and symbol_ref */
+
+int m68hc11_addr_mode;
+int m68hc11_mov_addr_mode;
+
/* Comparison operands saved by the "tstxx" and "cmpxx" expand patterns. */
rtx m68hc11_compare_op0;
rtx m68hc11_compare_op1;
@@ -271,6 +282,11 @@ m68hc11_override_options (void)
flag_pic = 0;
}
+ /* Do not enable -fweb because it breaks the 32-bit shift patterns
+ by breaking the match_dup of those patterns. The shift patterns
+ will no longer be recognized after that. */
+ flag_web = 0;
+
/* Configure for a 68hc11 processor. */
if (TARGET_M6811)
{
@@ -291,6 +307,8 @@ m68hc11_override_options (void)
m68hc11_reg_valid_for_base[HARD_Z_REGNUM] = 1;
m68hc11_sp_correction = 1;
m68hc11_tmp_regs_class = D_REGS;
+ m68hc11_addr_mode = ADDR_OFFSET;
+ m68hc11_mov_addr_mode = 0;
if (m68hc11_soft_reg_count == 0 && !TARGET_M6812)
m68hc11_soft_reg_count = "4";
}
@@ -310,6 +328,10 @@ m68hc11_override_options (void)
m68hc11_reg_valid_for_index[HARD_D_REGNUM] = 1;
m68hc11_sp_correction = 0;
m68hc11_tmp_regs_class = TMP_REGS;
+ m68hc11_addr_mode = ADDR_INDIRECT | ADDR_OFFSET | ADDR_CONST
+ | (TARGET_AUTO_INC_DEC ? ADDR_INCDEC : 0);
+ m68hc11_mov_addr_mode = ADDR_OFFSET | ADDR_CONST
+ | (TARGET_AUTO_INC_DEC ? ADDR_INCDEC : 0);
target_flags &= ~MASK_M6811;
target_flags |= MASK_NO_DIRECT_MODE;
if (m68hc11_soft_reg_count == 0)
@@ -544,18 +566,25 @@ preferred_reload_class (rtx operand, enum reg_class class)
For 68hc11: n,r with n in [0..255] and r in A_REGS class
For 68hc12: n,r no constraint on the constant, r in A_REGS class. */
static int
-register_indirect_p (rtx operand, enum machine_mode mode, int strict)
+register_indirect_p (rtx operand, enum machine_mode mode, int addr_mode)
{
rtx base, offset;
switch (GET_CODE (operand))
{
+ case MEM:
+ if ((addr_mode & ADDR_INDIRECT) && GET_MODE_SIZE (mode) <= 2)
+ return register_indirect_p (XEXP (operand, 0), mode,
+ addr_mode & (ADDR_STRICT | ADDR_OFFSET));
+ return 0;
+
case POST_INC:
case PRE_INC:
case POST_DEC:
case PRE_DEC:
- if (TARGET_M6812 && TARGET_AUTO_INC_DEC)
- return register_indirect_p (XEXP (operand, 0), mode, strict);
+ if (addr_mode & ADDR_INCDEC)
+ return register_indirect_p (XEXP (operand, 0), mode,
+ addr_mode & ADDR_STRICT);
return 0;
case PLUS:
@@ -567,36 +596,57 @@ register_indirect_p (rtx operand, enum machine_mode mode, int strict)
if (GET_CODE (offset) == MEM)
return 0;
+ /* Indexed addressing mode with 2 registers. */
+ if (GET_CODE (base) == REG && GET_CODE (offset) == REG)
+ {
+ if (!(addr_mode & ADDR_INDEXED))
+ return 0;
+
+ addr_mode &= ADDR_STRICT;
+ if (REGNO_OK_FOR_BASE_P2 (REGNO (base), addr_mode)
+ && REGNO_OK_FOR_INDEX_P2 (REGNO (offset), addr_mode))
+ return 1;
+
+ if (REGNO_OK_FOR_BASE_P2 (REGNO (offset), addr_mode)
+ && REGNO_OK_FOR_INDEX_P2 (REGNO (base), addr_mode))
+ return 1;
+
+ return 0;
+ }
+
+ if (!(addr_mode & ADDR_OFFSET))
+ return 0;
+
if (GET_CODE (base) == REG)
{
- if (!VALID_CONSTANT_OFFSET_P (offset, mode))
+ if (!VALID_CONSTANT_OFFSET_P (offset, mode))
return 0;
- if (strict == 0)
+ if (!(addr_mode & ADDR_STRICT))
return 1;
- return REGNO_OK_FOR_BASE_P2 (REGNO (base), strict);
+ return REGNO_OK_FOR_BASE_P2 (REGNO (base), 1);
}
+
if (GET_CODE (offset) == REG)
{
if (!VALID_CONSTANT_OFFSET_P (base, mode))
return 0;
- if (strict == 0)
+ if (!(addr_mode & ADDR_STRICT))
return 1;
- return REGNO_OK_FOR_BASE_P2 (REGNO (offset), strict);
+ return REGNO_OK_FOR_BASE_P2 (REGNO (offset), 1);
}
return 0;
case REG:
- return REGNO_OK_FOR_BASE_P2 (REGNO (operand), strict);
+ return REGNO_OK_FOR_BASE_P2 (REGNO (operand), addr_mode & ADDR_STRICT);
case CONST_INT:
- if (TARGET_M6811)
- return 0;
-
- return VALID_CONSTANT_OFFSET_P (operand, mode);
+ if (addr_mode & ADDR_CONST)
+ return VALID_CONSTANT_OFFSET_P (operand, mode);
+ return 0;
default:
return 0;
@@ -609,6 +659,7 @@ int
m68hc11_small_indexed_indirect_p (rtx operand, enum machine_mode mode)
{
rtx base, offset;
+ int addr_mode;
if (GET_CODE (operand) == REG && reload_in_progress
&& REGNO (operand) >= FIRST_PSEUDO_REGISTER
@@ -628,7 +679,8 @@ m68hc11_small_indexed_indirect_p (rtx operand, enum machine_mode mode)
if (PUSH_POP_ADDRESS_P (operand))
return 1;
- if (!register_indirect_p (operand, mode, reload_completed))
+ addr_mode = m68hc11_mov_addr_mode | (reload_completed ? ADDR_STRICT : 0);
+ if (!register_indirect_p (operand, mode, addr_mode))
return 0;
if (TARGET_M6812 && GET_CODE (operand) == PLUS
@@ -669,18 +721,29 @@ m68hc11_small_indexed_indirect_p (rtx operand, enum machine_mode mode)
int
m68hc11_register_indirect_p (rtx operand, enum machine_mode mode)
{
+ int addr_mode;
+
+ if (GET_CODE (operand) == REG && reload_in_progress
+ && REGNO (operand) >= FIRST_PSEUDO_REGISTER
+ && reg_equiv_memory_loc[REGNO (operand)])
+ {
+ operand = reg_equiv_memory_loc[REGNO (operand)];
+ operand = eliminate_regs (operand, 0, NULL_RTX);
+ }
if (GET_CODE (operand) != MEM)
return 0;
operand = XEXP (operand, 0);
- return register_indirect_p (operand, mode,
- (reload_completed | reload_in_progress));
+ addr_mode = m68hc11_addr_mode | (reload_completed ? ADDR_STRICT : 0);
+ return register_indirect_p (operand, mode, addr_mode);
}
static int
go_if_legitimate_address_internal (rtx operand, enum machine_mode mode,
int strict)
{
+ int addr_mode;
+
if (CONSTANT_ADDRESS_P (operand) && TARGET_M6812)
{
/* Reject the global variables if they are too wide. This forces
@@ -690,7 +753,8 @@ go_if_legitimate_address_internal (rtx operand, enum machine_mode mode,
return 1;
}
- if (register_indirect_p (operand, mode, strict))
+ addr_mode = m68hc11_addr_mode | (strict ? ADDR_STRICT : 0);
+ if (register_indirect_p (operand, mode, addr_mode))
{
return 1;
}
@@ -977,18 +1041,20 @@ m68hc11_symbolic_p (rtx operand, enum machine_mode mode)
int
m68hc11_indirect_p (rtx operand, enum machine_mode mode)
{
- if (GET_CODE (operand) == MEM)
+ if (GET_CODE (operand) == MEM && GET_MODE (operand) == mode)
{
rtx op = XEXP (operand, 0);
+ int addr_mode;
if (symbolic_memory_operand (op, mode))
- return 0;
+ return TARGET_M6812;
if (reload_in_progress)
return 1;
operand = XEXP (operand, 0);
- return register_indirect_p (operand, mode, reload_completed);
+ addr_mode = m68hc11_addr_mode | (reload_completed ? ADDR_STRICT : 0);
+ return register_indirect_p (operand, mode, addr_mode);
}
return 0;
}
@@ -1335,15 +1401,19 @@ m68hc11_initial_elimination_offset (int from, int to)
/* For a trap handler, we must take into account the registers which
are pushed on the stack during the trap (except the PC). */
func_attr = TYPE_ATTRIBUTES (TREE_TYPE (current_function_decl));
+ current_function_interrupt = lookup_attribute ("interrupt",
+ func_attr) != NULL_TREE;
+ trap_handler = lookup_attribute ("trap", func_attr) != NULL_TREE;
if (lookup_attribute ("far", func_attr) != 0)
current_function_far = 1;
else if (lookup_attribute ("near", func_attr) != 0)
current_function_far = 0;
else
- current_function_far = TARGET_LONG_CALLS != 0;
+ current_function_far = (TARGET_LONG_CALLS != 0
+ && !current_function_interrupt
+ && !trap_handler);
- trap_handler = lookup_attribute ("trap", func_attr) != NULL_TREE;
if (trap_handler && from == ARG_POINTER_REGNUM)
size = 7;
@@ -1623,7 +1693,9 @@ expand_prologue (void)
else if (lookup_attribute ("near", func_attr) != NULL_TREE)
current_function_far = 0;
else
- current_function_far = TARGET_LONG_CALLS != 0;
+ current_function_far = (TARGET_LONG_CALLS != 0
+ && !current_function_interrupt
+ && !current_function_trap);
/* Get the scratch register to build the frame and push registers.
If the first argument is a 32-bit quantity, the D+X registers
@@ -2240,6 +2312,17 @@ print_operand (FILE *file, rtx op, int letter)
abort ();
break;
+ case MEM:
+ if (TARGET_M6812)
+ {
+ fprintf (file, "[");
+ print_operand_address (file, XEXP (base, 0));
+ fprintf (file, "]");
+ }
+ else
+ abort ();
+ break;
+
default:
output_address (base);
break;
@@ -3153,7 +3236,7 @@ m68hc11_gen_movhi (rtx insn, rtx *operands)
output_asm_insn ("psh%1", operands);
break;
case HARD_SP_REGNUM:
- output_asm_insn ("sts\t-2,sp", operands);
+ output_asm_insn ("sts\t2,-sp", operands);
break;
default:
abort ();
@@ -3994,6 +4077,12 @@ m68hc11_notice_update_cc (rtx exp, rtx insn ATTRIBUTE_UNUSED)
&& cc_status.value2
&& reg_overlap_mentioned_p (cc_status.value1, cc_status.value2))
cc_status.value2 = 0;
+
+ else if (cc_status.value1 && side_effects_p (cc_status.value1))
+ cc_status.value1 = 0;
+
+ else if (cc_status.value2 && side_effects_p (cc_status.value2))
+ cc_status.value2 = 0;
}
/* The current instruction does not affect the flags but changes
@@ -4161,8 +4250,10 @@ m68hc11_check_z_replacement (rtx insn, struct replace_info *info)
{
if ((GET_CODE (src) == REG && REGNO (src) == HARD_Z_REGNUM)
|| (GET_CODE (src) == COMPARE &&
- (rtx_equal_p (XEXP (src, 0), z_reg)
- || rtx_equal_p (XEXP (src, 1), z_reg))))
+ ((rtx_equal_p (XEXP (src, 0), z_reg)
+ && H_REG_P (XEXP (src, 1)))
+ || (rtx_equal_p (XEXP (src, 1), z_reg)
+ && H_REG_P (XEXP (src, 0))))))
{
if (insn == info->first)
{
diff --git a/gcc/config/m68hc11/m68hc11.h b/gcc/config/m68hc11/m68hc11.h
index ba0a2c7eef1..3c036a7c6e6 100644
--- a/gcc/config/m68hc11/m68hc11.h
+++ b/gcc/config/m68hc11/m68hc11.h
@@ -1082,7 +1082,7 @@ typedef struct m68hc11_args
/* Initialize a variable CUM of type CUMULATIVE_ARGS for a call to a
function whose data type is FNTYPE. For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
(m68hc11_init_cumulative_args (&CUM, FNTYPE, LIBNAME))
/* Update the data in CUM to advance over an argument of mode MODE and data
diff --git a/gcc/config/m68hc11/m68hc11.md b/gcc/config/m68hc11/m68hc11.md
index 2796a96371c..7d65ea6610e 100644
--- a/gcc/config/m68hc11/m68hc11.md
+++ b/gcc/config/m68hc11/m68hc11.md
@@ -1,5 +1,6 @@
;;- Machine description file for Motorola 68HC11 and 68HC12.
-;;- Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+;;- Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+;;- Free Software Foundation, Inc.
;;- Contributed by Stephane Carrez (stcarrez@nerim.fr)
;; This file is part of GCC.
@@ -143,7 +144,9 @@
(A_REGNUM 5) ; A (high part of D)
(B_REGNUM 6) ; B (low part of D)
(CC_REGNUM 7) ; Condition code register
- (SOFT_Z_REGNUM 11) ; Z soft register
+ (SOFT_TMP_REGNUM 10) ; TMP soft register
+ (SOFT_Z_REGNUM 11) ; Z soft register
+ (SOFT_XY_REGNUM 12) ; XY soft register
])
;;--------------------------------------------------------------------
@@ -247,19 +250,13 @@
;; avoid problems with the flow+cse register pass which are made
;; after Z register replacement.
;;
-(define_insn "tstqi_z_used"
+(define_insn_and_split "tstqi_z_used"
[(set (cc0)
(match_operand:QI 0 "tst_operand" "m"))
(use (match_operand:HI 1 "hard_reg_operand" "dxy"))
- (use (reg:HI 11))]
- ""
- "#")
-
-(define_split /* "tstqi_z_used" */
- [(set (cc0)
- (match_operand:QI 0 "tst_operand" ""))
- (use (match_operand:HI 1 "hard_reg_operand" ""))
(use (reg:HI SOFT_Z_REGNUM))]
+ ""
+ "#"
"z_replacement_completed == 2"
[(set (mem:HI (pre_dec:HI (reg:HI SP_REGNUM))) (match_dup 1))
(set (match_dup 1) (match_dup 2))
@@ -300,12 +297,24 @@
[(set (cc0)
(compare (match_operand:HI 0 "hard_reg_operand" "")
(match_operand:HI 1 "hard_reg_operand" "")))]
- "reload_completed"
+ "TARGET_M6811
+ && reload_completed && !(Z_REG_P (operands[0]) || Z_REG_P (operands[1]))"
[(set (match_dup 2) (match_dup 1))
(set (cc0)
(compare (match_dup 0) (match_dup 2)))]
"operands[2] = gen_rtx (REG, HImode, SOFT_TMP_REGNUM);")
+(define_split
+ [(set (cc0)
+ (compare (match_operand:HI 0 "hard_reg_operand" "")
+ (match_operand:HI 1 "hard_reg_operand" "")))]
+ "0 && TARGET_M6812
+ && reload_completed && !(Z_REG_P (operands[0]) || Z_REG_P (operands[1]))"
+ [(set (mem:HI (pre_dec:HI (reg:HI SP_REGNUM))) (match_dup 1))
+ (set (cc0)
+ (compare (match_dup 0) (mem:HI (post_inc:HI (reg:HI SP_REGNUM)))))]
+ "")
+
(define_expand "cmphi"
[(set (cc0)
(compare (match_operand:HI 0 "tst_operand" "")
@@ -325,7 +334,7 @@
[(set (cc0)
(compare (match_operand:HI 0 "tst_operand"
"d,?xy,xyd,?xy,d,m,!u,dxy,dxy")
- (match_operand:HI 1 "cmp_operand"
+ (match_operand:HI 1 "general_operand"
"i,i,!u,m,m,dxy,dxy,?*d*A,!*w")))]
"TARGET_M6812"
"*
@@ -335,8 +344,10 @@
cc_status.flags |= CC_REVERSED;
return \"cp%1\\t%0\";
}
+ else if (SP_REG_P (operands[1]))
+ return \"sts\\t2,-sp\n\\tcp%0\\t2,sp+\";
else if (H_REG_P (operands[1]))
- return \"#\";
+ return \"psh%1\n\\tcp%0\\t2,sp+\";
else
return \"cp%0\\t%1\";
}")
@@ -344,9 +355,9 @@
(define_insn "cmphi_1_hc11"
[(set (cc0)
(compare (match_operand:HI 0 "tst_operand"
- "dx,y,xyd,?xy,d,m,!u,dxy,dxy")
+ "dx,y,xyd,?xy,d,m,m,dxy,dxy,?u*z,dxy,*z")
(match_operand:HI 1 "cmp_operand"
- "i,i,!u,m,m,dxy,dxy,?*d*A,!*w")))]
+ "i,i,!u,m,m,?xy,d,?*d*A,?u,dxy,!*w,i")))]
"TARGET_M6811"
"*
{
@@ -361,21 +372,14 @@
return \"cp%0\\t%1\";
}")
-(define_insn "cmphi_z_used"
+(define_insn_and_split "cmphi_z_used"
[(set (cc0)
(compare (match_operand:HI 0 "tst_operand" "dxy,m")
- (match_operand:HI 1 "cmp_operand" "m,dxy")))
+ (match_operand:HI 1 "cmp_operand" "mi,dxy")))
(use (match_operand:HI 2 "hard_reg_operand" "dxy,dxy"))
(use (reg:HI SOFT_Z_REGNUM))]
""
- "#")
-
-(define_split /* "cmphi_z_used" */
- [(set (cc0)
- (compare (match_operand:HI 0 "tst_operand" "")
- (match_operand:HI 1 "cmp_operand" "")))
- (use (match_operand:HI 2 "hard_reg_operand" ""))
- (use (reg:HI SOFT_Z_REGNUM))]
+ "#"
"z_replacement_completed == 2"
[(set (mem:HI (pre_dec:HI (reg:HI SP_REGNUM))) (match_dup 2))
(set (match_dup 2) (match_dup 3))
@@ -452,21 +456,14 @@
operands[3] = gen_rtx (REG, HImode, SOFT_TMP_REGNUM);
operands[4] = gen_rtx (REG, QImode, SOFT_TMP_REGNUM);")
-(define_insn "bitcmpqi_z_used"
+(define_insn_and_split "bitcmpqi_z_used"
[(set (cc0)
(and:QI (match_operand:QI 0 "tst_operand" "d,m")
(match_operand:QI 1 "cmp_operand" "m,d")))
(use (match_operand:HI 2 "hard_reg_operand" "xy,xy"))
(use (reg:HI SOFT_Z_REGNUM))]
""
- "#")
-
-(define_split /* "bitcmpqi_z_used" */
- [(set (cc0)
- (and:QI (match_operand:QI 0 "tst_operand" "")
- (match_operand:QI 1 "cmp_operand" "")))
- (use (match_operand:HI 2 "hard_reg_operand" ""))
- (use (reg:HI SOFT_Z_REGNUM))]
+ "#"
"z_replacement_completed == 2"
[(set (mem:HI (pre_dec:HI (reg:HI SP_REGNUM))) (match_dup 2))
(set (match_dup 2) (match_dup 3))
@@ -542,21 +539,14 @@
return \"cmpb\\t%b0\";
}")
-(define_insn "cmpqi_z_used"
+(define_insn_and_split "cmpqi_z_used"
[(set (cc0)
(compare (match_operand:QI 0 "tst_operand" "dxy,m")
(match_operand:QI 1 "cmp_operand" "m,dxy")))
(use (match_operand:HI 2 "hard_reg_operand" "dxy,dxy"))
(use (reg:HI SOFT_Z_REGNUM))]
""
- "#")
-
-(define_split /* cmpqi_z_used */
- [(set (cc0)
- (compare (match_operand:QI 0 "tst_operand" "")
- (match_operand:QI 1 "cmp_operand" "")))
- (use (match_operand:HI 2 "hard_reg_operand" ""))
- (use (reg:HI SOFT_Z_REGNUM))]
+ "#"
"z_replacement_completed == 2"
[(set (mem:HI (pre_dec:HI (reg:HI SP_REGNUM))) (match_dup 2))
(set (match_dup 2) (match_dup 3))
@@ -573,41 +563,29 @@
;; (strict_low_part ...) information. This is correct for our machine
;; description but not for GCC optimization passes.
;;
-(define_insn "movstrictsi"
+(define_insn_and_split "movstrictsi"
[(set (strict_low_part (match_operand:SI 0 "non_push_operand" "+um,D,D"))
(match_operand:SI 1 "general_operand" "D,Dim,uD"))]
""
- "#")
-
-(define_split
- [(set (strict_low_part (match_operand:SI 0 "non_push_operand" ""))
- (match_operand:SI 1 "general_operand" ""))]
+ "#"
"z_replacement_completed == 2"
[(set (match_dup 0) (match_dup 1))]
"")
-(define_insn "movstricthi"
+(define_insn_and_split "movstricthi"
[(set (strict_low_part (match_operand:HI 0 "non_push_operand" "+um,dA,dA"))
(match_operand:HI 1 "general_operand" "dA,dAim,u"))]
""
- "#")
-
-(define_split
- [(set (strict_low_part (match_operand:HI 0 "non_push_operand" ""))
- (match_operand:HI 1 "general_operand" ""))]
+ "#"
"z_replacement_completed == 2"
[(set (match_dup 0) (match_dup 1))]
"")
-(define_insn "movstrictqi"
+(define_insn_and_split "movstrictqi"
[(set (strict_low_part (match_operand:QI 0 "non_push_operand" "+mu,!dA"))
(match_operand:QI 1 "general_operand" "d,imudA"))]
""
- "#")
-
-(define_split
- [(set (strict_low_part (match_operand:QI 0 "non_push_operand" ""))
- (match_operand:QI 1 "general_operand" ""))]
+ "#"
"z_replacement_completed == 2"
[(set (match_dup 0) (match_dup 1))]
"")
@@ -651,17 +629,26 @@
}
")
-(define_insn "movdi_internal"
- [(set (match_operand:DI 0 "nonimmediate_operand" "=ou,U,!u,U,m,m,!u")
+;; Separate push from normal moves to avoid reloading problems
+;; The 'clr' is not able to push on 68HC11 so we really need a scratch.
+;; We can also accept more scratch registers.
+(define_insn_and_split "*pushdi_internal"
+ [(set (match_operand:DI 0 "push_operand" "=<,<,<,<")
+ (match_operand:DI 1 "general_operand" "i,U,m,!u"))
+ (clobber (match_scratch:HI 2 "=&dA,&d,&d,&dA"))]
+ ""
+ "#"
+ "reload_completed"
+ [(const_int 0)]
+ "m68hc11_split_move (operands[0], operands[1], operands[2]);
+ DONE;")
+
+(define_insn_and_split "movdi_internal"
+ [(set (match_operand:DI 0 "non_push_operand" "=m!u,U,!u,U,m,m,!u")
(match_operand:DI 1 "general_operand" "K,iU,iU,!u,mi,!u,!mu"))
(clobber (match_scratch:HI 2 "=X,&d,&d,&d,&d,&d,&d"))]
""
- "#")
-
-(define_split
- [(set (match_operand:DI 0 "nonimmediate_operand" "")
- (match_operand:DI 1 "general_operand" ""))
- (clobber (match_scratch:HI 2 ""))]
+ "#"
"reload_completed"
[(const_int 0)]
"m68hc11_split_move (operands[0], operands[1], operands[2]);
@@ -687,17 +674,24 @@
}
")
-(define_insn "movdf_internal"
- [(set (match_operand:DF 0 "nonimmediate_operand" "=ou,U,!u,U,m,m,!u")
+;; See pushdi_internal
+(define_insn_and_split "*pushdf_internal"
+ [(set (match_operand:DF 0 "push_operand" "=<,<,<,<")
+ (match_operand:DF 1 "general_operand" "i,U,m,!u"))
+ (clobber (match_scratch:HI 2 "=&dA,&d,&d,&dA"))]
+ ""
+ "#"
+ "reload_completed"
+ [(const_int 0)]
+ "m68hc11_split_move (operands[0], operands[1], operands[2]);
+ DONE;")
+
+(define_insn_and_split "movdf_internal"
+ [(set (match_operand:DF 0 "non_push_operand" "=mu,U,!u,U,m,m,!u")
(match_operand:DF 1 "general_operand" "G,iU,iU,!u,mi,!u,!mu"))
(clobber (match_scratch:HI 2 "=X,&d,&d,&d,&d,&d,&d"))]
""
- "#")
-
-(define_split
- [(set (match_operand:DF 0 "nonimmediate_operand" "")
- (match_operand:DF 1 "general_operand" ""))
- (clobber (match_scratch:HI 2 ""))]
+ "#"
"reload_completed"
[(const_int 0)]
"m68hc11_split_move (operands[0], operands[1], operands[2]);
@@ -732,17 +726,23 @@
}
")
-(define_insn "movsi_internal"
- [(set (match_operand:SI 0 "nonimmediate_operand" "=ou,mu,?D,m,?D,?u,?u,!u,D")
- (match_operand:SI 1 "general_operand" "K,imu,im,?D,!u,?D,mi,!u,!D"))
- (clobber (match_scratch:HI 2 "=X,&d,X,X,X,X,&d,&d,X"))]
+(define_insn_and_split "*pushsi_internal"
+ [(set (match_operand:SI 0 "push_operand" "=<,<,<,<,<")
+ (match_operand:SI 1 "general_operand" "!D,i,U,m,!u"))
+ (clobber (match_scratch:HI 2 "=X,&dA,&d,&d,&dA"))]
""
- "#")
+ "#"
+ "reload_completed"
+ [(const_int 0)]
+ "m68hc11_split_move (operands[0], operands[1], operands[2]);
+ DONE;")
-(define_split
- [(set (match_operand:SI 0 "nonimmediate_operand" "")
- (match_operand:SI 1 "general_operand" ""))
- (clobber (match_scratch:HI 2 ""))]
+(define_insn_and_split "movsi_internal"
+ [(set (match_operand:SI 0 "nonimmediate_operand" "=mu,mu,?D,m,?D,?u,?u,!u,D")
+ (match_operand:SI 1 "general_operand" "K,imu,im,?D,!u,?D,mi,!u,!D"))
+ (clobber (match_scratch:HI 2 "=X,&d,X,X,X,X,&d,&d,X"))]
+ ""
+ "#"
"reload_completed"
[(const_int 0)]
"m68hc11_split_move (operands[0], operands[1], operands[2]);
@@ -768,17 +768,23 @@
}
")
-(define_insn "movsf_internal"
- [(set (match_operand:SF 0 "nonimmediate_operand" "=o!u,m,D,m,D,!u,!u,!u,D")
+(define_insn_and_split "*pushsf_internal"
+ [(set (match_operand:SF 0 "push_operand" "=<,<,<,<,<")
+ (match_operand:SF 1 "general_operand" "!D,i,U,m,!u"))
+ (clobber (match_scratch:HI 2 "=X,&dA,&d,&d,&dA"))]
+ ""
+ "#"
+ "reload_completed"
+ [(const_int 0)]
+ "m68hc11_split_move (operands[0], operands[1], operands[2]);
+ DONE;")
+
+(define_insn_and_split "movsf_internal"
+ [(set (match_operand:SF 0 "nonimmediate_operand" "=m!u,m,D,m,D,!u,!u,!u,D")
(match_operand:SF 1 "general_operand" "G,im,im,D,!u,D,mi,!u,!D"))
(clobber (match_scratch:HI 2 "=X,&d,X,X,X,X,&d,&d,X"))]
""
- "#")
-
-(define_split
- [(set (match_operand:SF 0 "nonimmediate_operand" "")
- (match_operand:SF 1 "general_operand" ""))
- (clobber (match_scratch:HI 2 ""))]
+ "#"
"reload_completed"
[(const_int 0)]
"m68hc11_split_move (operands[0], operands[1], operands[2]);
@@ -888,8 +894,8 @@
clr\\t%b0\\n\\tclr\\t%h0")
(define_insn "*movhi_68hc12"
- [(set (match_operand:HI 0 "nonimmediate_operand" "=U,dAw,U,U,m,!u")
- (match_operand:HI 1 "general_operand" "U,rim,dAwi,!u,dAw,riU"))]
+ [(set (match_operand:HI 0 "nonimmediate_operand" "=U,dAw,dAw,U,U,m,!u")
+ (match_operand:HI 1 "general_operand" "U,dAwim,!u,dAwi,!u,dAw,riU"))]
"TARGET_M6812"
"*
{
@@ -936,9 +942,9 @@
(define_split
[(set (match_operand:QI 0 "hard_addr_reg_operand" "")
(match_operand:QI 1 "general_operand" ""))]
- "z_replacement_completed == 2 && GET_MODE (operands[0]) == QImode
+ "z_replacement_completed == 2
&& !reg_mentioned_p (operands[0], operands[1])
- && !D_REG_P (operands[1])"
+ && !(D_REG_P (operands[1]) || Q_REG_P (operands[1]))"
[(parallel [(set (reg:HI D_REGNUM) (match_dup 2))
(set (match_dup 2) (reg:HI D_REGNUM))])
(set (reg:QI D_REGNUM) (match_dup 1))
@@ -952,9 +958,9 @@
(define_split
[(set (match_operand:QI 0 "nonimmediate_operand" "")
(match_operand:QI 1 "hard_addr_reg_operand" ""))]
- "z_replacement_completed == 2 && GET_MODE (operands[1]) == QImode
+ "z_replacement_completed == 2
&& !reg_mentioned_p (operands[1], operands[0])
- && !D_REG_P (operands[0])"
+ && !(D_REG_P (operands[0]) || Q_REG_P (operands[0]))"
[(parallel [(set (reg:HI D_REGNUM) (match_dup 2))
(set (match_dup 2) (reg:HI D_REGNUM))])
(set (match_dup 0) (reg:QI D_REGNUM))
@@ -1229,7 +1235,7 @@
[(set (match_operand:DI 0 "nonimmediate_operand" "=m,m,!u,!u")
(zero_extend:DI
(match_operand:SI 1 "nonimmediate_operand" "m,Du,m,Du")))
- (clobber (match_scratch:HI 2 "=d,d,d,d"))]
+ (clobber (match_scratch:HI 2 "=d,d,&d,d"))]
""
"#")
@@ -2090,8 +2096,8 @@
}")
(define_insn "*addhi3_68hc12"
- [(set (match_operand:HI 0 "register_operand" "=xyd,d,xy*z*w,xy*z*w,xy*z")
- (plus:HI (match_operand:HI 1 "register_operand" "%0,0,0,xy*zw,0")
+ [(set (match_operand:HI 0 "register_operand" "=d*A,d,xy*A*w,xy*A*w,xy*A")
+ (plus:HI (match_operand:HI 1 "register_operand" "%0,0,0,xy*Aw,0")
(match_operand:HI 2 "general_operand" "i,m*A*wu,id,id,!mu*A")))]
"TARGET_M6812"
"*
@@ -2279,9 +2285,9 @@
}")
(define_insn "*addhi3"
- [(set (match_operand:HI 0 "hard_reg_operand" "=A,dA,d,!A,d*A,!d*A")
- (plus:HI (match_operand:HI 1 "general_operand" "%0,0,0,0,0,0")
- (match_operand:HI 2 "general_operand" "N,I,i,I,mi*A*d,!u*d*w")))]
+ [(set (match_operand:HI 0 "hard_reg_operand" "=A,dA,d,!A,d*A,d,!d*A")
+ (plus:HI (match_operand:HI 1 "general_operand" "%0,0,0,0,0,0,0")
+ (match_operand:HI 2 "general_operand" "N,I,i,I,mi*A*d,*u,!u*d*w")))]
"TARGET_M6811"
"*
{
@@ -2707,9 +2713,9 @@
(define_insn "*subhi3"
- [(set (match_operand:HI 0 "register_operand" "=d,*A,d*A")
- (minus:HI (match_operand:HI 1 "register_operand" "0,0,0")
- (match_operand:HI 2 "general_operand" "im*A*d,im*d*A,!u")))]
+ [(set (match_operand:HI 0 "register_operand" "=d,*A,d,*A")
+ (minus:HI (match_operand:HI 1 "register_operand" "0,0,0,0")
+ (match_operand:HI 2 "general_operand" "im*A*d,im*d*A,u,!u")))]
""
"*
{
@@ -3054,21 +3060,29 @@
;;- and instructions.
;;--------------------------------------------------------------------
-(define_insn "anddi3"
+(define_insn_and_split "anddi3"
[(set (match_operand:DI 0 "reg_or_some_mem_operand" "=m,u")
(and:DI (match_operand:DI 1 "reg_or_some_mem_operand" "%imu,imu")
(match_operand:DI 2 "general_operand" "imu,imu")))
(clobber (match_scratch:HI 3 "=d,d"))]
""
- "#")
+ "#"
+ "reload_completed"
+ [(const_int 0)]
+ "m68hc11_split_logical (SImode, AND, operands);
+ DONE;")
-(define_insn "andsi3"
+(define_insn_and_split "andsi3"
[(set (match_operand:SI 0 "register_operand" "=D,!u")
(and:SI (match_operand:SI 1 "register_operand" "%0,0")
(match_operand:SI 2 "general_operand" "Dimu,imu")))
(clobber (match_scratch:HI 3 "=X,d"))]
""
- "#")
+ "#"
+ "reload_completed"
+ [(const_int 0)]
+ "m68hc11_split_logical (HImode, AND, operands);
+ DONE;")
(define_expand "andhi3"
[(set (match_operand:HI 0 "register_operand" "")
@@ -3078,10 +3092,10 @@
"")
(define_insn "*andhi3_mem"
- [(set (match_operand:HI 0 "memory_operand" "=Q,R")
+ [(set (match_operand:HI 0 "memory_operand" "=R,Q")
(and:HI (match_dup 0)
(match_operand:HI 1 "immediate_operand" "i,i")))
- (clobber (match_scratch:HI 2 "=xy,X"))]
+ (clobber (match_scratch:HI 2 "=X,xy"))]
"TARGET_RELAX && !TARGET_M6812"
"*
{
@@ -3101,7 +3115,7 @@
/* When destination is a global variable, generate a .relax instruction
and load the address in the clobber register. That load can be
eliminated by the linker if the address is in page0. */
- if (which_alternative == 0)
+ if (which_alternative == 1)
{
rtx ops[3];
@@ -3236,10 +3250,10 @@
"")
(define_insn "*andqi3_mem"
- [(set (match_operand:QI 0 "memory_operand" "=Q,R")
+ [(set (match_operand:QI 0 "memory_operand" "=R,Q")
(and:QI (match_dup 0)
(match_operand:QI 1 "const_int_operand" "i,i")))
- (clobber (match_scratch:HI 2 "=xy,X"))]
+ (clobber (match_scratch:HI 2 "=X,xy"))]
"TARGET_RELAX && !TARGET_M6812"
"*
{
@@ -3257,7 +3271,7 @@
/* When destination is a global variable, generate a .relax instruction
and load the address in the clobber register. That load can be
eliminated by the linker if the address is in page0. */
- if (which_alternative == 0)
+ if (which_alternative == 1)
{
rtx ops[3];
@@ -3330,21 +3344,29 @@
;;- Bit set or instructions.
;;--------------------------------------------------------------------
-(define_insn "iordi3"
+(define_insn_and_split "iordi3"
[(set (match_operand:DI 0 "reg_or_some_mem_operand" "=m,u")
(ior:DI (match_operand:DI 1 "reg_or_some_mem_operand" "%imu,imu")
(match_operand:DI 2 "general_operand" "imu,imu")))
(clobber (match_scratch:HI 3 "=d,d"))]
""
- "#")
+ "#"
+ "reload_completed"
+ [(const_int 0)]
+ "m68hc11_split_logical (SImode, IOR, operands);
+ DONE;")
-(define_insn "iorsi3"
+(define_insn_and_split "iorsi3"
[(set (match_operand:SI 0 "register_operand" "=D,!u")
(ior:SI (match_operand:SI 1 "register_operand" "%0,0")
(match_operand:SI 2 "general_operand" "Dimu,imu")))
(clobber (match_scratch:HI 3 "=X,d"))]
""
- "#")
+ "#"
+ "reload_completed"
+ [(const_int 0)]
+ "m68hc11_split_logical (HImode, IOR, operands);
+ DONE;")
(define_expand "iorhi3"
[(set (match_operand:HI 0 "register_operand" "")
@@ -3354,10 +3376,10 @@
"")
(define_insn "*iorhi3_mem"
- [(set (match_operand:HI 0 "memory_operand" "=Q,R")
+ [(set (match_operand:HI 0 "memory_operand" "=R,Q")
(ior:HI (match_dup 0)
(match_operand:HI 1 "const_int_operand" "")))
- (clobber (match_scratch:HI 2 "=xy,X"))]
+ (clobber (match_scratch:HI 2 "=X,xy"))]
"TARGET_RELAX && !TARGET_M6812"
"*
{
@@ -3369,7 +3391,7 @@
return \"\";
}
CC_STATUS_INIT;
- if (which_alternative == 0)
+ if (which_alternative == 1)
{
rtx ops[3];
@@ -3457,10 +3479,10 @@
"")
(define_insn "*iorqi3_mem"
- [(set (match_operand:QI 0 "memory_operand" "=Q,R")
+ [(set (match_operand:QI 0 "memory_operand" "=R,Q")
(ior:QI (match_dup 0)
(match_operand:QI 1 "const_int_operand" "")))
- (clobber (match_scratch:HI 2 "=xy,X"))]
+ (clobber (match_scratch:HI 2 "=X,xy"))]
"TARGET_RELAX && !TARGET_M6812"
"*
{
@@ -3471,7 +3493,7 @@
cc_status = cc_prev_status;
return \"\";
}
- if (which_alternative == 0)
+ if (which_alternative == 1)
{
rtx ops[3];
@@ -3541,21 +3563,29 @@
;;- xor instructions.
;;--------------------------------------------------------------------
-(define_insn "xordi3"
+(define_insn_and_split "xordi3"
[(set (match_operand:DI 0 "reg_or_some_mem_operand" "=m,u")
(xor:DI (match_operand:DI 1 "reg_or_some_mem_operand" "%imu,imu")
(match_operand:DI 2 "general_operand" "imu,imu")))
(clobber (match_scratch:HI 3 "=d,d"))]
""
- "#")
+ "#"
+ "reload_completed"
+ [(const_int 0)]
+ "m68hc11_split_logical (SImode, XOR, operands);
+ DONE;")
-(define_insn "xorsi3"
+(define_insn_and_split "xorsi3"
[(set (match_operand:SI 0 "register_operand" "=D,!u")
(xor:SI (match_operand:SI 1 "register_operand" "%0,0")
(match_operand:SI 2 "general_operand" "Dimu,imu")))
(clobber (match_scratch:HI 3 "=X,d"))]
""
- "#")
+ "#"
+ "reload_completed"
+ [(const_int 0)]
+ "m68hc11_split_logical (HImode, XOR, operands);
+ DONE;")
(define_insn "xorhi3"
[(set (match_operand:HI 0 "register_operand" "=d,d,!*A")
@@ -3641,30 +3671,47 @@
;;- Bit set or instructions.
;;--------------------------------------------------------------------
-(define_insn "*logicalsi3_zexthi"
+(define_insn_and_split "*logicalsi3_zexthi"
[(set (match_operand:SI 0 "register_operand" "=D")
(match_operator:SI 3 "m68hc11_logical_operator"
[(zero_extend:SI
(match_operand:HI 1 "general_operand" "imudA"))
(match_operand:SI 2 "general_operand" "Dimu")]))]
""
- "#")
+ "#"
+ "reload_completed"
+ [(set (reg:HI D_REGNUM) (match_dup 4))
+ (set (reg:HI D_REGNUM) (match_op_dup 3 [(reg:HI D_REGNUM) (match_dup 5)]))
+ (set (reg:HI X_REGNUM) (match_dup 6))]
+ "PUT_MODE (operands[3], HImode);
+ if (X_REG_P (operands[2]))
+ {
+ operands[5] = operands[1];
+ /* Make all the (set (REG:x) (REG:y)) a nop set. */
+ operands[4] = gen_rtx (REG, HImode, HARD_D_REGNUM);
+ operands[6] = gen_rtx (REG, HImode, HARD_X_REGNUM);
+ }
+ else
+ {
+ operands[4] = operands[1];
+ operands[5] = m68hc11_gen_lowpart (HImode, operands[2]);
+ operands[6] = m68hc11_gen_highpart (HImode, operands[2]);
+ }
+ /* For an AND, make sure the high 16-bit part is cleared. */
+ if (GET_CODE (operands[3]) == AND)
+ {
+ operands[6] = const0_rtx;
+ }
+ ")
-(define_insn "*logicalsi3_zextqi"
+(define_insn_and_split "*logicalsi3_zextqi"
[(set (match_operand:SI 0 "register_operand" "=D,D,D")
(match_operator:SI 3 "m68hc11_logical_operator"
[(zero_extend:SI
(match_operand:QI 1 "general_operand" "d,*A,imu"))
(match_operand:SI 2 "general_operand" "imu,imu,0")]))]
""
- "#")
-
-(define_split /* logicalsi3_zextqi */
- [(set (match_operand:SI 0 "register_operand" "")
- (match_operator:SI 3 "m68hc11_logical_operator"
- [(zero_extend:SI
- (match_operand:QI 1 "general_operand" ""))
- (match_operand:SI 2 "general_operand" "")]))]
+ "#"
"z_replacement_completed == 2"
[(set (reg:QI A_REGNUM) (match_dup 4))
(set (reg:QI D_REGNUM) (match_dup 7))
@@ -3695,63 +3742,47 @@
}
")
-(define_split /* logicalsi3_zexthi */
- [(set (match_operand:SI 0 "register_operand" "")
- (match_operator:SI 3 "m68hc11_logical_operator"
- [(zero_extend:SI
- (match_operand:HI 1 "general_operand" ""))
- (match_operand:SI 2 "general_operand" "")]))]
- "reload_completed"
- [(set (reg:HI D_REGNUM) (match_dup 4))
- (set (reg:HI D_REGNUM) (match_op_dup 3 [(reg:HI D_REGNUM) (match_dup 5)]))
- (set (reg:HI X_REGNUM) (match_dup 6))]
- "PUT_MODE (operands[3], HImode);
- if (X_REG_P (operands[2]))
- {
- operands[5] = operands[1];
- /* Make all the (set (REG:x) (REG:y)) a nop set. */
- operands[4] = gen_rtx (REG, HImode, HARD_D_REGNUM);
- operands[6] = gen_rtx (REG, HImode, HARD_X_REGNUM);
- }
- else
- {
- operands[4] = operands[1];
- operands[5] = m68hc11_gen_lowpart (HImode, operands[2]);
- operands[6] = m68hc11_gen_highpart (HImode, operands[2]);
- }
- /* For an AND, make sure the high 16-bit part is cleared. */
- if (GET_CODE (operands[3]) == AND)
- {
- operands[6] = const0_rtx;
- }
- ")
-
-(define_insn "*logicalhi3_zexthi_ashift8"
+(define_insn_and_split "*logicalhi3_zexthi_ashift8"
[(set (match_operand:HI 0 "register_operand" "=d")
(match_operator:HI 3 "m68hc11_logical_operator"
[(zero_extend:HI
- (match_operand:QI 1 "general_operand" "imud"))
+ (match_operand:QI 1 "general_operand" "imud*A"))
(ashift:HI
- (match_operand:HI 2 "general_operand" "dimu")
+ (match_operand:HI 2 "general_operand" "imud*A")
(const_int 8))]))]
""
- "#")
+ "#"
+ "z_replacement_completed == 2"
+ [(set (reg:QI A_REGNUM) (match_dup 4))
+ (set (reg:QI B_REGNUM) (match_dup 5))]
+ "
+ if (GET_CODE (operands[3]) == AND)
+ {
+ emit_insn (gen_movhi (operands[0], const0_rtx));
+ DONE;
+ }
+ else
+ {
+ operands[5] = operands[1];
+ if (D_REG_P (operands[2]))
+ {
+ operands[4] = gen_rtx (REG, QImode, HARD_B_REGNUM);
+ }
+ else
+ {
+ operands[4] = m68hc11_gen_lowpart (QImode, operands[2]);
+ }
+ }
+ ")
-(define_insn "*logicalhi3_zexthi"
+(define_insn_and_split "*logicalhi3_zexthi"
[(set (match_operand:HI 0 "register_operand" "=d,d")
(match_operator:HI 3 "m68hc11_logical_operator"
[(zero_extend:HI
(match_operand:QI 1 "general_operand" "imd*A,?u"))
(match_operand:HI 2 "general_operand" "dim,?dimu")]))]
""
- "#")
-
-(define_split /* logicalhi3_zexthi */
- [(set (match_operand:HI 0 "register_operand" "")
- (match_operator:HI 3 "m68hc11_logical_operator"
- [(zero_extend:HI
- (match_operand:QI 1 "general_operand" ""))
- (match_operand:HI 2 "general_operand" "")]))]
+ "#"
"z_replacement_completed == 2"
[(set (reg:QI B_REGNUM) (match_dup 6))
(set (reg:QI A_REGNUM) (match_dup 4))
@@ -3780,54 +3811,16 @@
}
")
-(define_split /* logicalhi3_zexthi_ashift8 */
- [(set (match_operand:HI 0 "register_operand" "")
- (match_operator:HI 3 "m68hc11_logical_operator"
- [(zero_extend:HI
- (match_operand:QI 1 "general_operand" ""))
- (ashift:HI
- (match_operand:HI 2 "general_operand" "")
- (const_int 8))]))]
- "z_replacement_completed == 2"
- [(set (reg:QI A_REGNUM) (match_dup 4))
- (set (reg:QI B_REGNUM) (match_dup 5))]
- "
- if (GET_CODE (operands[3]) == AND)
- {
- emit_insn (gen_movhi (operands[0], const0_rtx));
- DONE;
- }
- else
- {
- operands[5] = operands[1];
- if (D_REG_P (operands[2]))
- {
- operands[4] = gen_rtx (REG, QImode, HARD_B_REGNUM);
- }
- else
- {
- operands[4] = m68hc11_gen_lowpart (QImode, operands[2]);
- }
- }
- ")
-(define_insn "*logicalsi3_silshr16"
- [(set (match_operand:SI 0 "register_operand" "=D,D,D")
+(define_insn_and_split "*logicalsi3_silshr16"
+ [(set (match_operand:SI 0 "register_operand" "=D,D,D,?D")
(match_operator:SI 3 "m68hc11_logical_operator"
[(lshiftrt:SI
- (match_operand:SI 1 "general_operand" "uim,uim,?D")
+ (match_operand:SI 1 "general_operand" "uim,uim,0,0")
(const_int 16))
- (match_operand:SI 2 "general_operand" "uim,0,0")]))]
+ (match_operand:SI 2 "general_operand" "uim,0,uim,0")]))]
""
- "#")
-
-(define_split /* logicalsi3_silshr16 */
- [(set (match_operand:SI 0 "register_operand" "")
- (match_operator:SI 3 "m68hc11_logical_operator"
- [(lshiftrt:SI
- (match_operand:SI 1 "general_operand" "")
- (const_int 16))
- (match_operand:SI 2 "general_operand" "")]))]
+ "#"
"reload_completed"
[(set (reg:HI D_REGNUM) (match_dup 4))
(set (reg:HI D_REGNUM) (match_op_dup 3 [(reg:HI D_REGNUM) (match_dup 5)]))
@@ -3852,7 +3845,7 @@
}
")
-(define_insn "*logicalsi3_silshl16"
+(define_insn_and_split "*logicalsi3_silshl16"
[(set (match_operand:SI 0 "register_operand" "=D,D")
(match_operator:SI 3 "m68hc11_logical_operator"
[(ashift:SI
@@ -3860,15 +3853,7 @@
(const_int 16))
(match_operand:SI 2 "general_operand" "0,0")]))]
""
- "#")
-
-(define_split /* logicalsi3_silshl16 */
- [(set (match_operand:SI 0 "register_operand" "")
- (match_operator:SI 3 "m68hc11_logical_operator"
- [(ashift:SI
- (match_operand:SI 1 "general_operand" "")
- (const_int 16))
- (match_operand:SI 2 "general_operand" "")]))]
+ "#"
"z_replacement_completed == 2"
[(set (reg:HI X_REGNUM) (match_op_dup 3 [(reg:HI X_REGNUM) (match_dup 4)]))
(set (reg:HI D_REGNUM) (match_dup 5))]
@@ -3881,48 +3866,45 @@
operands[5] = gen_rtx (REG, HImode, HARD_D_REGNUM);
")
-
-;;--------------------------------------------------------------------
-;;- 64/32-bit Logical Operations. Patterns are defined so that GCC
-;; can optimize correctly. These insns are split by the `final'
-;; pass (# pattern). They are split to fall in the corresponding
-;; 16-bit logical patterns.
-;;--------------------------------------------------------------------
-
-;; Split 64-bit logical operations: anddi3, iordi3, xordi3
-(define_split
- [(set (match_operand:DI 0 "reg_or_some_mem_operand" "")
- (match_operator:DI 4 "m68hc11_logical_operator"
- [(match_operand:DI 1 "reg_or_some_mem_operand" "")
- (match_operand:DI 2 "general_operand" "")]))
- (clobber (match_scratch:HI 3 ""))]
+(define_insn_and_split "*logicalsi3_silshl16_zext"
+ [(set (match_operand:SI 0 "register_operand" "=D,D,D")
+ (match_operator:SI 3 "m68hc11_logical_operator"
+ [(ashift:SI
+ (zero_extend:SI
+ (match_operand:HI 1 "general_operand" "uim,udA,!dA"))
+ (const_int 16))
+ (zero_extend:SI (match_operand:HI 2 "general_operand" "uidA,um,!dA"))]))]
+ ""
+ "#"
+ ;; Must split before z register replacement
"reload_completed"
- [(const_int 0)]
- "m68hc11_split_logical (SImode, GET_CODE (operands[4]), operands);
- DONE;")
-
-;; Split 32-bit logical operations: andsi3, iorsi3, xorsi3
-(define_split
- [(set (match_operand:SI 0 "register_operand" "")
- (match_operator:SI 3 "m68hc11_logical_operator"
- [(match_operand:SI 1 "register_operand" "")
- (match_operand:SI 2 "general_operand" "")]))]
- "0 && reload_completed"
- [(const_int 0)]
- "m68hc11_split_logical (HImode, GET_CODE (operands[3]), operands);
- DONE;")
+ [(set (match_dup 4) (match_dup 5))
+ (set (match_dup 6) (match_dup 7))]
+ "
+ /* set (X_REGNUM) (d), set (D_REGNUM) (1) */
+ if (GET_CODE (operands[1]) == HARD_D_REGNUM
+ && GET_CODE (operands[3]) != AND)
+ {
+ /* This particular case is too early to be split before
+ Z register replacement because the cse-reg pass we do
+ does not recognize the 'swap_areg'. It is ok to handle
+ this case after. */
+ if (z_replacement_completed != 2)
+ {
+ FAIL;
+ }
+ emit_move_insn (gen_rtx (REG, HImode, HARD_X_REGNUM), operands[2]);
+ emit_insn (gen_swap_areg (gen_rtx (REG, HImode, HARD_D_REGNUM),
+ gen_rtx (REG, HImode, HARD_X_REGNUM)));
+ }
+ operands[4] = gen_rtx (REG, HImode, HARD_D_REGNUM);
+ operands[6] = gen_rtx (REG, HImode, HARD_X_REGNUM);
+ operands[5] = operands[2];
+ operands[7] = operands[1];
-;; Split 32-bit logical operations: andsi3, iorsi3, xorsi3
-(define_split
- [(set (match_operand:SI 0 "reg_or_some_mem_operand" "")
- (match_operator:SI 4 "m68hc11_logical_operator"
- [(match_operand:SI 1 "reg_or_some_mem_operand" "")
- (match_operand:SI 2 "general_operand" "")]))
- (clobber (match_scratch:HI 3 ""))]
- "reload_completed"
- [(const_int 0)]
- "m68hc11_split_logical (HImode, GET_CODE (operands[4]), operands);
- DONE;")
+ if (GET_CODE (operands[3]) == AND)
+ operands[5] = operands[7] = const0_rtx;
+ ")
;;--------------------------------------------------------------------
;; 16-bit Arithmetic and logical operations on X and Y:
@@ -4421,19 +4403,13 @@
}
}")
-(define_insn "*ashldi3_const32"
+(define_insn_and_split "*ashldi3_const32"
[(set (match_operand:DI 0 "nonimmediate_operand" "=<,m,u")
(ashift:DI (match_operand:DI 1 "general_operand" "umi,umi,umi")
(const_int 32)))
(clobber (match_scratch:HI 2 "=&A,d,d"))]
""
- "#")
-
-(define_split
- [(set (match_operand:DI 0 "nonimmediate_operand" "")
- (ashift:DI (match_operand:DI 1 "general_operand" "")
- (const_int 32)))
- (clobber (match_scratch:HI 2 ""))]
+ "#"
"reload_completed"
[(const_int 0)]
"/* Move the lowpart in the highpart first in case the shift
@@ -4442,6 +4418,13 @@
{
m68hc11_split_move (m68hc11_gen_lowpart (SImode, operands[0]),
const0_rtx, operands[2]);
+
+ /* Adjust first operand if it uses SP so that we take into
+ account the above push. Can occur only for 68HC12. */
+ if (reg_mentioned_p (gen_rtx (REG, HImode, HARD_SP_REGNUM),
+ operands[1]))
+ operands[1] = adjust_address (operands[1],
+ GET_MODE (operands[0]), 4);
}
m68hc11_split_move (m68hc11_gen_highpart (SImode, operands[0]),
m68hc11_gen_lowpart (SImode, operands[1]),
@@ -4453,19 +4436,13 @@
}
DONE;")
-(define_insn "*ashldi3_const1"
+(define_insn_and_split "*ashldi3_const1"
[(set (match_operand:DI 0 "non_push_operand" "=m,m,u")
(ashift:DI (match_operand:DI 1 "general_operand" "mi,u,umi")
(const_int 1)))
(clobber (match_scratch:HI 2 "=d,d,d"))]
""
- "#")
-
-(define_split
- [(set (match_operand:DI 0 "non_push_operand" "")
- (ashift:DI (match_operand:DI 1 "general_operand" "")
- (const_int 1)))
- (clobber (match_scratch:HI 2 ""))]
+ "#"
"z_replacement_completed == 2"
[(set (match_dup 2) (match_dup 3))
(set (match_dup 2) (ashift:HI (match_dup 2) (const_int 1)))
@@ -4505,10 +4482,10 @@
operands[8] = m68hc11_gen_lowpart (HImode, operands[8]);")
(define_insn "addsi_silshr16"
- [(set (match_operand:SI 0 "register_operand" "=D,D")
- (plus:SI (lshiftrt:SI (match_operand:SI 1 "general_operand" "!*uim,0")
+ [(set (match_operand:SI 0 "register_operand" "=D,D,!D")
+ (plus:SI (lshiftrt:SI (match_operand:SI 1 "general_operand" "!*uim,0,0")
(const_int 16))
- (match_operand:SI 2 "general_operand" "0,m!*u")))]
+ (match_operand:SI 2 "general_operand" "0,m!*u,0")))]
""
"#")
@@ -4530,14 +4507,24 @@
(const_int 16))
(match_operand:SI 2 "general_operand" "")))]
"z_replacement_completed == 2 && X_REG_P (operands[1])"
- [(set (reg:HI D_REGNUM) (reg:HI X_REGNUM))
+ [(set (reg:HI D_REGNUM) (match_dup 5))
(set (reg:HI X_REGNUM) (match_dup 3))
(set (reg:HI D_REGNUM) (plus:HI (reg:HI D_REGNUM) (match_dup 4)))
(set (reg:HI X_REGNUM) (plus:HI (plus:HI (reg:HI X_REGNUM)
(const_int 0))
(reg:HI CC_REGNUM)))]
"operands[3] = m68hc11_gen_highpart (HImode, operands[2]);
- operands[4] = m68hc11_gen_lowpart (HImode, operands[2]);")
+ if (X_REG_P (operands[2]))
+ {
+ operands[4] = gen_rtx (REG, HImode, HARD_X_REGNUM);
+ operands[5] = gen_rtx (REG, HImode, HARD_D_REGNUM);
+ }
+ else
+ {
+ operands[4] = m68hc11_gen_lowpart (HImode, operands[2]);
+ operands[5] = gen_rtx (REG, HImode, HARD_X_REGNUM);
+ }
+")
(define_insn "addsi_ashift16"
[(set (match_operand:SI 0 "register_operand" "=D")
@@ -4563,19 +4550,13 @@
operands[4] = m68hc11_gen_lowpart (HImode, operands[2]);
}")
-(define_insn "addsi_andshr16"
+(define_insn_and_split "addsi_andshr16"
[(set (match_operand:SI 0 "register_operand" "=D")
(plus:SI (and:SI (match_operand:SI 1 "general_operand" "%uim")
(const_int 65535))
(match_operand:SI 2 "general_operand" "0")))]
""
- "#")
-
-(define_split
- [(set (match_operand:SI 0 "register_operand" "")
- (plus:SI (and:SI (match_operand:SI 1 "general_operand" "")
- (const_int 65535))
- (match_operand:SI 2 "general_operand" "")))]
+ "#"
"z_replacement_completed == 2"
[(set (reg:HI D_REGNUM) (plus:HI (reg:HI D_REGNUM) (match_dup 3)))
(set (reg:HI X_REGNUM) (plus:HI (plus:HI (reg:HI X_REGNUM) (const_int 0)) (reg:HI CC_REGNUM)))]
@@ -4622,31 +4603,24 @@
""
"#")
-(define_insn "*ashlsi3_const16_zexthi"
+(define_insn_and_split "*ashlsi3_const16_zexthi"
[(set (match_operand:SI 0 "nonimmediate_operand" "=D")
(ashift:SI (zero_extend:HI
(match_operand:HI 1 "general_operand" "duim*A"))
(const_int 16)))
(clobber (match_scratch:HI 2 "=X"))]
""
- "#")
-
-(define_split /* "*ashlsi3_const16_zexthi"*/
- [(set (match_operand:SI 0 "nonimmediate_operand" "")
- (ashift:SI (zero_extend:HI
- (match_operand:HI 1 "general_operand" ""))
- (const_int 16)))
- (clobber (match_scratch:HI 2 "=X"))]
+ "#"
"reload_completed"
[(set (reg:HI X_REGNUM) (match_dup 1))
(set (reg:HI D_REGNUM) (const_int 0))]
"")
(define_insn "*ashlsi3_const1"
- [(set (match_operand:SI 0 "non_push_operand" "=D,D,m,!*u,?*um")
- (ashift:SI (match_operand:SI 1 "nonimmediate_operand" "0,*um,0,0,*um")
+ [(set (match_operand:SI 0 "non_push_operand" "=D,D,D,m,*u,*u")
+ (ashift:SI (match_operand:SI 1 "nonimmediate_operand" "0,m,*u,m,*u,m")
(const_int 1)))
- (clobber (match_scratch:HI 2 "=X,X,&d,&d,&d"))]
+ (clobber (match_scratch:HI 2 "=X,X,X,&d,&d,&d"))]
""
"*
{
@@ -4702,7 +4676,7 @@
(ashift:SI (match_dup 0)
(match_operand:HI 1 "const_int_operand" "")))
(clobber (match_scratch:HI 2 "=y"))]
- ""
+ "TARGET_M6811 /* See *ashlsi3 note. */"
"*
{
CC_STATUS_INIT;
@@ -4712,7 +4686,7 @@
(define_insn "*ashlsi3"
[(set (match_operand:SI 0 "register_operand" "+D,D")
(ashift:SI (match_dup 0)
- (match_operand:HI 1 "general_operand" "y,m")))
+ (match_operand:HI 1 "general_operand" "y,mi")))
(clobber (match_scratch:HI 2 "=1,X"))]
""
"*
@@ -4725,7 +4699,12 @@
is not enough register in class A_REGS.
Assuming that 'operands[1]' does not refer to the stack (which
- is true for 68hc11 only, we save temporary the value of Y. */
+ is true for 68hc11 only, we save temporary the value of Y.
+
+ For 68HC12 we must also accept a constant because Z register is
+ disabled when compiling with -fomit-frame-pointer. We can come up
+ with a reload problem and the *lshrsi3_const pattern was disabled
+ for that reason. */
if (!Y_REG_P (operands[2]))
{
rtx ops[1];
@@ -5112,7 +5091,7 @@
(ashiftrt:SI (match_dup 0)
(match_operand:HI 1 "const_int_operand" "")))
(clobber (match_scratch:HI 2 "=y"))]
- ""
+ "TARGET_M6811 /* See *ashrsi3 note. */"
"*
{
CC_STATUS_INIT;
@@ -5122,7 +5101,7 @@
(define_insn "*ashrsi3"
[(set (match_operand:SI 0 "register_operand" "+D,D")
(ashiftrt:SI (match_dup 0)
- (match_operand:HI 1 "general_operand" "y,m")))
+ (match_operand:HI 1 "general_operand" "y,mi")))
(clobber (match_scratch:HI 2 "=1,X"))]
""
"*
@@ -5134,7 +5113,12 @@
is not enough register in class A_REGS.
Assuming that 'operands[1]' does not refer to the stack (which
- is true for 68hc11 only, we save temporary the value of Y. */
+ is true for 68hc11 only, we save temporary the value of Y.
+
+ For 68HC12 we must also accept a constant because Z register is
+ disabled when compiling with -fomit-frame-pointer. We can come up
+ with a reload problem and the *lshrsi3_const pattern was disabled
+ for that reason. */
if (!Y_REG_P (operands[2]))
{
rtx ops[1];
@@ -5240,19 +5224,13 @@
}
}")
-(define_insn "*lshrdi3_const32"
+(define_insn_and_split "*lshrdi3_const32"
[(set (match_operand:DI 0 "nonimmediate_operand" "=<,m,u")
(lshiftrt:DI (match_operand:DI 1 "general_operand" "umi,umi,umi")
(const_int 32)))
(clobber (match_scratch:HI 2 "=&A,d,d"))]
""
- "#")
-
-(define_split
- [(set (match_operand:DI 0 "nonimmediate_operand" "")
- (lshiftrt:DI (match_operand:DI 1 "general_operand" "")
- (const_int 32)))
- (clobber (match_scratch:HI 2 "=&A,d"))]
+ "#"
"reload_completed"
[(const_int 0)]
"m68hc11_split_move (m68hc11_gen_lowpart (SImode, operands[0]),
@@ -5322,19 +5300,13 @@
operands[7] = m68hc11_gen_highpart (HImode, operands[6]);
operands[6] = m68hc11_gen_lowpart (HImode, operands[6]);")
-(define_insn "*lshrdi_const1"
+(define_insn_and_split "*lshrdi_const1"
[(set (match_operand:DI 0 "non_push_operand" "=m,u")
(lshiftrt:DI (match_operand:DI 1 "general_operand" "umi,umi")
(const_int 1)))
(clobber (match_scratch:HI 2 "=d,d"))]
""
- "#")
-
-(define_split
- [(set (match_operand:DI 0 "non_push_operand" "")
- (lshiftrt:DI (match_operand:DI 1 "general_operand" "")
- (const_int 1)))
- (clobber (match_scratch:HI 2 ""))]
+ "#"
"z_replacement_completed == 2"
[(set (match_dup 2) (match_dup 3))
(set (match_dup 2) (lshiftrt:HI (match_dup 2) (const_int 1)))
@@ -5407,10 +5379,10 @@
#")
(define_insn "*lshrsi3_const1"
- [(set (match_operand:SI 0 "non_push_operand" "=D,m,*u")
- (lshiftrt:SI (match_operand:SI 1 "nonimmediate_operand" "D*um,*um,*um")
+ [(set (match_operand:SI 0 "non_push_operand" "=D,D,D,m,*u,*u")
+ (lshiftrt:SI (match_operand:SI 1 "nonimmediate_operand" "0,m,*u,m,*u,m")
(const_int 1)))
- (clobber (match_scratch:HI 2 "=X,&d,&d"))]
+ (clobber (match_scratch:HI 2 "=X,X,X,&d,&d,&d"))]
""
"*
{
@@ -5461,7 +5433,7 @@
(lshiftrt:SI (match_dup 0)
(match_operand:HI 1 "const_int_operand" "")))
(clobber (match_scratch:HI 2 "=y"))]
- ""
+ "TARGET_M6811 /* See *lshrsi3 note. */"
"*
{
CC_STATUS_INIT;
@@ -5471,7 +5443,7 @@
(define_insn "*lshrsi3"
[(set (match_operand:SI 0 "register_operand" "+D,D")
(lshiftrt:SI (match_dup 0)
- (match_operand:HI 1 "general_operand" "y,m")))
+ (match_operand:HI 1 "general_operand" "y,mi")))
(clobber (match_scratch:HI 2 "=1,X"))]
""
"*
@@ -5483,7 +5455,12 @@
is not enough register in class A_REGS.
Assuming that 'operands[1]' does not refer to the stack (which
- is true for 68hc11 only, we save temporary the value of Y. */
+ is true for 68hc11 only, we save temporary the value of Y.
+
+ For 68HC12 we must also accept a constant because Z register is
+ disabled when compiling with -fomit-frame-pointer. We can come up
+ with a reload problem and the *lshrsi3_const pattern was disabled
+ for that reason. */
if (!Y_REG_P (operands[2]))
{
rtx ops[1];
@@ -5979,14 +5956,18 @@
if (GET_MODE (operands[0]) == HImode)
{
emit_jump_insn (gen_m68hc12_dbcc_dec_hi (operands[0],
- gen_rtx (NE, HImode),
+ gen_rtx (NE, HImode,
+ operands[0],
+ operands[1]),
operands[4]));
DONE;
}
if (GET_MODE (operands[0]) == QImode)
{
emit_jump_insn (gen_m68hc12_dbcc_dec_qi (operands[0],
- gen_rtx (NE, QImode),
+ gen_rtx (NE, QImode,
+ operands[0],
+ operands[1]),
operands[4]));
DONE;
}
@@ -6940,6 +6921,61 @@
gen_rtx (POST_INC, HImode,
gen_rtx_REG (HImode, HARD_SP_REGNUM)));")
+;; Replace: "pshx; tfr d,x; stx 0,sp" into "pshd; tfr d,x"
+(define_peephole2
+ [(set (mem:HI (pre_dec:HI (reg:HI SP_REGNUM)))
+ (match_operand:HI 0 "hard_reg_operand" ""))
+ (set (match_dup 0)
+ (match_operand:HI 1 "hard_reg_operand" ""))
+ (set (mem:HI (reg:HI SP_REGNUM))
+ (match_dup 0))]
+ "TARGET_M6812"
+ [(set (mem:HI (pre_dec:HI (reg:HI SP_REGNUM)))
+ (match_dup 1))
+ (set (match_dup 0) (match_dup 1))]
+ "")
+
+;;
+;; Change: "ldd 0,sp; pulx" into "puld"
+;; This sequence usually appears at end a functions.
+(define_peephole2
+ [(set (match_operand:HI 0 "hard_reg_operand" "")
+ (mem:HI (reg:HI SP_REGNUM)))
+ (use (match_dup 0))
+ (set (match_operand:HI 1 "hard_reg_operand" "")
+ (mem:HI (post_inc:HI (reg:HI SP_REGNUM))))]
+ "peep2_reg_dead_p (2, operands[1])"
+ [(set (match_dup 0) (mem:HI (post_inc:HI (reg:HI SP_REGNUM))))
+ (use (match_dup 0))]
+ "")
+
+;; Replace: "pshx; clr 0,sp; clr 1,sp" by "clr 1,-sp; clr 1,-sp"
+;; Appears to allocate local variables.
+(define_peephole2
+ [(set (mem:HI (pre_dec:HI (reg:HI SP_REGNUM)))
+ (match_operand:HI 0 "hard_reg_operand" ""))
+ (set (mem:QI (plus:HI (reg:HI SP_REGNUM) (const_int 1)))
+ (const_int 0))
+ (set (mem:QI (reg:HI SP_REGNUM))
+ (const_int 0))]
+ "TARGET_M6812"
+ [(set (mem:HI (pre_dec:HI (reg:HI SP_REGNUM)))
+ (const_int 0))]
+ "")
+
+;; Likewise for HI mode
+(define_peephole2
+ [(set (mem:HI (pre_dec:HI (reg:HI SP_REGNUM)))
+ (match_operand:HI 0 "hard_reg_operand" ""))
+ (set (mem:HI (reg:HI SP_REGNUM))
+ (const_int 0))]
+ "TARGET_M6812"
+ [(set (mem:HI (pre_dec:HI (reg:HI SP_REGNUM)))
+ (const_int 0))]
+ "")
+;;--------------------------------------------------------------------
+;;-
+;;--------------------------------------------------------------------
;;
;; Optimize memory<->memory moves when the value is also loaded in
;; a register.
@@ -7004,6 +7040,36 @@
"")
;;
+;; Replace: "ldx #N; xgdx; addd <var>; xgdx" by "ldab #N; ldx <var>; abx"
+;;
+(define_peephole2
+ [(set (match_operand:HI 0 "hard_reg_operand" "")
+ (match_operand:HI 1 "const_int_operand" ""))
+ (set (match_dup 0)
+ (plus:HI (match_dup 0)
+ (match_operand:HI 2 "general_operand" "")))
+ (match_scratch:QI 3 "d")]
+ "TARGET_M6811 && (INTVAL (operands[1]) >= 0 && INTVAL (operands[1]) <= 0x0ff)"
+ [(set (match_dup 3) (match_dup 4))
+ (set (match_dup 0) (match_dup 2))
+ (set (match_dup 0) (plus:HI (zero_extend:HI (match_dup 3)) (match_dup 0)))]
+ "operands[4] = m68hc11_gen_lowpart (QImode, operands[1]);")
+
+;;
+;; Replace: "ldx #N; xgdx; addd <var>; xgdx" by "ldab #N; ldx <var>; abx"
+;;
+(define_peephole2
+ [(set (match_operand:HI 0 "hard_reg_operand" "")
+ (match_operand:HI 1 "const_int_operand" ""))
+ (set (match_dup 0)
+ (plus:HI (match_dup 0)
+ (match_operand:HI 2 "general_operand" "")))]
+ "TARGET_M6812"
+ [(set (match_dup 0) (match_dup 2))
+ (set (match_dup 0) (plus:HI (match_dup 0) (match_dup 1)))]
+ "")
+
+;;
;; Optimize an address register increment and a compare to use
;; a PRE_INC or PRE_DEC addressing mode (disabled on the tst insn
;; before reload, but can be enabled after).
@@ -7095,6 +7161,31 @@
"")
;;
+;;
+;;
+(define_peephole2
+ [(parallel
+ [(set (match_operand:SI 0 "hard_reg_operand" "")
+ (ashift:SI (match_operand:SI 1 "general_operand" "")
+ (const_int 1)))
+ (clobber (match_scratch:HI 2 ""))])
+ (set (match_operand:HI 3 "nonimmediate_operand" "") (reg:HI D_REGNUM))
+ (set (match_operand:HI 4 "nonimmediate_operand" "") (reg:HI X_REGNUM))]
+ "!X_REG_P (operands[1])
+ && peep2_reg_dead_p (2, gen_rtx (REG, HImode, D_REGNUM))
+ && peep2_reg_dead_p (3, gen_rtx (REG, HImode, X_REGNUM))"
+ [(set (reg:HI D_REGNUM) (match_dup 5))
+ (set (reg:HI D_REGNUM) (ashift:HI (reg:HI D_REGNUM) (const_int 1)))
+ (set (match_dup 3) (reg:HI D_REGNUM))
+ (set (reg:HI D_REGNUM) (match_dup 6))
+ (parallel [(set (reg:HI D_REGNUM)
+ (rotate:HI (reg:HI D_REGNUM) (const_int 1)))
+ (clobber (reg:HI CC_REGNUM))])
+ (set (match_dup 4) (reg:HI D_REGNUM))]
+ "operands[5] = m68hc11_gen_lowpart (HImode, operands[1]);
+ operands[6] = m68hc11_gen_highpart (HImode, operands[1]);")
+
+;;
;; Replace a "ldd <mem>; psha; pshb" with a "ldx <mem>; pshx".
;;
(define_peephole2
@@ -7109,6 +7200,25 @@
"")
;;
+;; Remove one load when copying a value to/from memory and also
+;; to a register. Take care not cloberring a possible register used
+;; by operand 2.
+;; Replace: "ldd 0,y; std 2,y; ldx 0,y" into "ldx 0,y; stx 2,y"
+;;
+(define_peephole2
+ [(set (match_operand:HI 0 "hard_reg_operand" "")
+ (match_operand:HI 1 "general_operand" ""))
+ (set (match_operand:HI 2 "nonimmediate_operand" "") (match_dup 0))
+ (set (match_operand:HI 3 "hard_reg_operand" "") (match_dup 1))]
+ "peep2_reg_dead_p (2, operands[0])
+ && !side_effects_p (operands[1])
+ && !side_effects_p (operands[2])
+ && !reg_mentioned_p (operands[3], operands[2])"
+ [(set (match_dup 3) (match_dup 1))
+ (set (match_dup 2) (match_dup 3))]
+ "")
+
+;;
;; Replace a "ldd <mem>; addd #N; std <mem>" into a
;; "ldx <mem>; leax; stx <mem>" if we have a free X/Y register
;; and the constant is small.
@@ -7131,6 +7241,174 @@
"if (reg_mentioned_p (operands[4], operands[1])) FAIL;
if (reg_mentioned_p (operands[4], operands[3])) FAIL;")
+;;--------------------------------------------------------------------
+;;- Bset peephole2
+;;--------------------------------------------------------------------
+;; These peepholes try to replace some logical sequences by 'bset' and 'bclr'.
+;;
+;; Replace 'ldab <mem>; orab #N; stab <mem>' by 'bset <mem> #N'.
+;; Register D must be dead and there must be no register side effects for mem.
+;; The <mem> *can* be volatile this is why we must not use 'side_effects_p'.
+;; The good side effect is that it makes the sequence atomic.
+;;
+(define_peephole2
+ [(set (match_operand:QI 0 "hard_reg_operand" "")
+ (match_operand:QI 1 "nonimmediate_operand" ""))
+ (set (match_dup 0) (ior:QI (match_dup 0)
+ (match_operand:QI 2 "const_int_operand" "")))
+ (set (match_dup 1) (match_dup 0))]
+ "(TARGET_M6812 || m68hc11_indirect_p (operands[1], QImode))
+ && (GET_CODE (operands[1]) != MEM || !auto_inc_p (XEXP (operands[1], 0)))
+ && peep2_reg_dead_p (3, operands[0])"
+ [(set (match_dup 1) (ior:QI (match_dup 1) (match_dup 2)))]
+ "")
+
+(define_peephole2
+ [(set (match_operand:HI 0 "hard_reg_operand" "")
+ (match_operand:HI 1 "nonimmediate_operand" ""))
+ (set (match_dup 0) (ior:HI (match_dup 0)
+ (match_operand:HI 2 "const_int_operand" "")))
+ (set (match_dup 1) (match_dup 0))]
+ "(TARGET_M6812 || m68hc11_indirect_p (operands[1], HImode))
+ && (GET_CODE (operands[1]) != MEM || !auto_inc_p (XEXP (operands[1], 0)))
+ && peep2_reg_dead_p (3, operands[0])"
+ [(set (match_dup 1) (ior:HI (match_dup 1) (match_dup 2)))]
+ "")
+
+;;--------------------------------------------------------------------
+;;- Bclr peephole2
+;;--------------------------------------------------------------------
+;; Replace 'ldab <mem>; andab #N; stab <mem>' by 'bclr <mem> #N'.
+;; See Bset peephole2.
+;;
+(define_peephole2
+ [(set (match_operand:QI 0 "hard_reg_operand" "")
+ (match_operand:QI 1 "nonimmediate_operand" ""))
+ (set (match_dup 0) (and:QI (match_dup 0)
+ (match_operand:QI 2 "const_int_operand" "")))
+ (set (match_dup 1) (match_dup 0))]
+ "(TARGET_M6812 || m68hc11_indirect_p (operands[1], QImode))
+ && (GET_CODE (operands[1]) != MEM || !auto_inc_p (XEXP (operands[1], 0)))
+ && peep2_reg_dead_p (3, operands[0])"
+ [(set (match_dup 1) (and:QI (match_dup 1) (match_dup 2)))]
+ "")
+
+(define_peephole2
+ [(set (match_operand:HI 0 "hard_reg_operand" "")
+ (match_operand:HI 1 "nonimmediate_operand" ""))
+ (set (match_dup 0) (and:HI (match_dup 0)
+ (match_operand:HI 2 "const_int_operand" "")))
+ (set (match_dup 1) (match_dup 0))]
+ "(TARGET_M6812 || m68hc11_indirect_p (operands[1], HImode))
+ && (GET_CODE (operands[1]) != MEM || !auto_inc_p (XEXP (operands[1], 0)))
+ && peep2_reg_dead_p (3, operands[0])"
+ [(set (match_dup 1) (and:HI (match_dup 1) (match_dup 2)))]
+ "")
+
+
+;;--------------------------------------------------------------------
+;;- Compare peephole2
+;;--------------------------------------------------------------------
+(define_peephole2
+ [(set (match_operand:HI 0 "hard_reg_operand" "")
+ (match_operand:HI 1 "hard_reg_operand" ""))
+ (set (match_dup 1) (plus:HI (match_dup 1)
+ (match_operand:HI 2 "const_int_operand" "")))
+ (set (cc0) (match_dup 0))]
+ "peep2_reg_dead_p (3, operands[0]) && !Z_REG_P (operands[1])"
+ [(set (match_dup 1) (plus:HI (match_dup 1) (match_dup 2)))
+ (set (cc0) (compare (match_dup 1) (match_dup 2)))]
+ "")
+
+(define_peephole2
+ [(set (match_operand:HI 0 "hard_reg_operand" "")
+ (match_operand:HI 1 "hard_reg_operand" ""))
+ (set (match_operand:HI 2 "hard_reg_operand" "")
+ (plus:HI (match_dup 2)
+ (match_operand:HI 3 "const_int_operand" "")))
+ (set (match_operand:HI 4 "memory_operand" "") (match_dup 2))
+ (set (cc0) (match_operand:HI 5 "hard_reg_operand" ""))]
+ "peep2_reg_dead_p (4, operands[5]) && !Z_REG_P (operands[2])
+ && !reg_mentioned_p (operands[2], operands[4])
+
+ && ((rtx_equal_p (operands[5], operands[0])
+ && rtx_equal_p (operands[2], operands[1]))
+
+ || (rtx_equal_p (operands[5], operands[1])
+ && rtx_equal_p (operands[2], operands[0])))"
+ [(set (match_dup 2) (match_dup 1))
+ (set (match_dup 2) (plus:HI (match_dup 2) (match_dup 3)))
+ (set (match_dup 4) (match_dup 2))
+ (set (cc0) (compare (match_dup 2) (match_dup 3)))]
+ "")
+
+
+;;--------------------------------------------------------------------
+;;- Load peephole2
+;;--------------------------------------------------------------------
+;;
+;; Optimize initialization of 2 hard regs from the same memory location
+;; Since we can't copy easily X, Y and D to each other, load the 2 registers
+;; from the same memory location.
+;;
+(define_peephole2
+ [(set (match_operand:HI 0 "hard_reg_operand" "")
+ (match_operand:HI 1 "memory_operand" ""))
+ (set (match_operand:HI 2 "hard_reg_operand" "") (match_dup 0))]
+ "TARGET_M6811
+ && !side_effects_p (operands[1])
+ && !reg_mentioned_p (operands[0], operands[1])"
+ [(set (match_dup 0) (match_dup 1))
+ (set (match_dup 2) (match_dup 1))]
+ "")
+
+;; Replace "ldd #N; addd <op>" with "ldd <op>; addd #N".
+;;
+(define_peephole2
+ [(set (match_operand:HI 0 "nonimmediate_operand" "") (const_int 0))
+ (set (match_operand:HI 1 "nonimmediate_operand" "") (const_int 0))
+ (set (match_operand:HI 2 "nonimmediate_operand" "") (const_int 0))
+ (set (match_operand:HI 3 "nonimmediate_operand" "") (const_int 0))
+ (match_scratch:HI 4 "d")]
+ ""
+ [(set (match_dup 4) (const_int 0))
+ (set (match_dup 0) (match_dup 4))
+ (set (match_dup 1) (match_dup 4))
+ (set (match_dup 2) (match_dup 4))
+ (set (match_dup 3) (match_dup 4))]
+ "")
+
+;;
+;; Replace "ldd #N; addd <op>" with "ldd <op>; addd #N".
+;;
+(define_peephole2
+ [(set (match_operand:HI 0 "nonimmediate_operand" "") (const_int 0))
+ (set (match_operand:HI 1 "nonimmediate_operand" "") (const_int 0))
+ (set (match_operand:HI 2 "nonimmediate_operand" "") (const_int 0))
+ (match_scratch:HI 3 "d")]
+ ""
+ [(set (match_dup 3) (const_int 0))
+ (set (match_dup 0) (match_dup 3))
+ (set (match_dup 1) (match_dup 3))
+ (set (match_dup 2) (match_dup 3))]
+ "")
+
+;;
+;; Replace "ldd #N; addd <op>" with "ldd <op>; addd #N".
+;;
+(define_peephole2
+ [(set (match_operand:HI 0 "hard_reg_operand" "") (const_int 0))
+ (set (match_operand:HI 1 "push_operand" "") (match_dup 0))
+ (set (match_operand:HI 2 "push_operand" "") (match_dup 0))
+ (set (match_operand:HI 3 "push_operand" "") (match_dup 0))
+ (match_scratch:HI 4 "x")]
+ "TARGET_M6811 && D_REG_P (operands[0]) && peep2_reg_dead_p (4, operands[0])"
+ [(set (match_dup 4) (const_int 0))
+ (set (match_dup 1) (match_dup 4))
+ (set (match_dup 2) (match_dup 4))
+ (set (match_dup 3) (match_dup 4))]
+ "")
+
;;
;; This peephole catches the address computations generated by the reload
;; pass.
@@ -7400,3 +7678,41 @@
return \"sts\\t%t0\\n\\tld%0\\t%t0\";
}
")
+
+(define_peephole
+ [(set (match_operand:HI 0 "hard_reg_operand" "")
+ (match_operand:HI 1 "memory_operand" ""))
+ (set (match_operand:HI 2 "hard_reg_operand" "") (match_dup 0))]
+ "TARGET_M6811
+ && !side_effects_p (operands[1])
+ && !reg_mentioned_p (operands[0], operands[1])"
+ "*
+{
+ rtx ops[2];
+
+ ops[0] = operands[0];
+ ops[1] = operands[1];
+ m68hc11_gen_movhi (insn, ops);
+ ops[0] = operands[2];
+ m68hc11_gen_movhi (insn, ops);
+ return \"\";
+}")
+
+;; Peephole for Z register replacement.
+;; Avoid to use _.tmp register when comparing D and X if we can compare
+;; with soft register
+(define_peephole
+ [(set (match_operand:HI 0 "hard_reg_operand" "") (reg:HI SOFT_XY_REGNUM))
+ (set (reg:HI SOFT_TMP_REGNUM) (match_dup 0))
+ (set (cc0) (compare (match_operand:HI 2 "hard_reg_operand" "")
+ (reg:HI SOFT_TMP_REGNUM)))]
+ "X_REG_P (operands[0]) || Y_REG_P (operands[0])"
+ "*
+{
+ rtx ops[2];
+
+ ops[0] = operands[0];
+ ops[1] = operands[1];
+ m68hc11_gen_movhi (insn, ops);
+ return \"cp%2\\t%1\";
+}")
diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c
index 210c63ad639..c73b2d1d714 100644
--- a/gcc/config/m68k/m68k.c
+++ b/gcc/config/m68k/m68k.c
@@ -43,6 +43,18 @@ Boston, MA 02111-1307, USA. */
#include "debug.h"
#include "flags.h"
+enum reg_class regno_reg_class[] =
+{
+ DATA_REGS, DATA_REGS, DATA_REGS, DATA_REGS,
+ DATA_REGS, DATA_REGS, DATA_REGS, DATA_REGS,
+ ADDR_REGS, ADDR_REGS, ADDR_REGS, ADDR_REGS,
+ ADDR_REGS, ADDR_REGS, ADDR_REGS, ADDR_REGS,
+ FP_REGS, FP_REGS, FP_REGS, FP_REGS,
+ FP_REGS, FP_REGS, FP_REGS, FP_REGS,
+ ADDR_REGS
+};
+
+
/* The ASM_DOT macro allows easy string pasting to handle the differences
between MOTOROLA and MIT syntaxes in asm_fprintf(), which doesn't
support the %. option. */
diff --git a/gcc/config/m68k/m68k.h b/gcc/config/m68k/m68k.h
index 423895de32c..f095f1c3edb 100644
--- a/gcc/config/m68k/m68k.h
+++ b/gcc/config/m68k/m68k.h
@@ -487,7 +487,10 @@ extern int target_flags;
\
/* Floating point registers \
(if available). */ \
- 0, 0, 0, 0, 0, 0, 0, 0 }
+ 0, 0, 0, 0, 0, 0, 0, 0, \
+ \
+ /* Arg pointer. */ \
+ 1 }
/* 1 for registers not available across function calls.
These must include the FIXED_REGISTERS and also any
@@ -498,7 +501,18 @@ extern int target_flags;
#define CALL_USED_REGISTERS \
{1, 1, 0, 0, 0, 0, 0, 0, \
1, 1, 0, 0, 0, 0, 0, 1, \
- 1, 1, 0, 0, 0, 0, 0, 0 }
+ 1, 1, 0, 0, 0, 0, 0, 0, 1 }
+
+#define REG_ALLOC_ORDER \
+{ /* d0/d1/a0/a1 */ \
+ 0, 1, 8, 9, \
+ /* d2-d7 */ \
+ 2, 3, 4, 5, 6, 7, \
+ /* a2-a7/arg */ \
+ 10, 11, 12, 13, 14, 15, 24, \
+ /* fp0-fp7 */ \
+ 16, 17, 18, 19, 20, 21, 22, 23\
+}
/* Make sure everything's fine if we *don't* have a given processor.
@@ -637,12 +651,12 @@ enum reg_class {
{ \
{0x00000000}, /* NO_REGS */ \
{0x000000ff}, /* DATA_REGS */ \
- {0x0000ff00}, /* ADDR_REGS */ \
+ {0x0100ff00}, /* ADDR_REGS */ \
{0x00ff0000}, /* FP_REGS */ \
- {0x0000ffff}, /* GENERAL_REGS */ \
+ {0x0100ffff}, /* GENERAL_REGS */ \
{0x00ff00ff}, /* DATA_OR_FP_REGS */ \
- {0x00ffff00}, /* ADDR_OR_FP_REGS */ \
- {0x00ffffff}, /* ALL_REGS */ \
+ {0x01ffff00}, /* ADDR_OR_FP_REGS */ \
+ {0x01ffffff}, /* ALL_REGS */ \
}
/* The same information, inverted:
@@ -650,7 +664,8 @@ enum reg_class {
reg number REGNO. This could be a conditional expression
or could index an array. */
-#define REGNO_REG_CLASS(REGNO) (((REGNO)>>3)+1)
+extern enum reg_class regno_reg_class[];
+#define REGNO_REG_CLASS(REGNO) (regno_reg_class[(REGNO)])
/* The class value for index registers, and the one for base regs. */
@@ -901,7 +916,7 @@ enum reg_class {
On the m68k, the offset starts at 0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM) = 0)
/* Update the data in CUM to advance over an argument
diff --git a/gcc/config/m68k/m68k.md b/gcc/config/m68k/m68k.md
index f3550f3cb4d..2dd1c44a6f7 100644
--- a/gcc/config/m68k/m68k.md
+++ b/gcc/config/m68k/m68k.md
@@ -1,5 +1,6 @@
;;- Machine description for GNU compiler, Motorola 68000 Version
-;; Copyright (C) 1987, 1988, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002, 2003
+;; Copyright (C) 1987, 1988, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001,
+;; 2002, 2003, 2004
;; Free Software Foundation, Inc.
;; This file is part of GCC.
diff --git a/gcc/config/m68k/netbsd-elf.h b/gcc/config/m68k/netbsd-elf.h
index 6669e5a2a30..b15a713d3e0 100644
--- a/gcc/config/m68k/netbsd-elf.h
+++ b/gcc/config/m68k/netbsd-elf.h
@@ -1,7 +1,7 @@
/* Definitions of target machine for GNU compiler,
for m68k (including m68010) NetBSD platforms using the
ELF object format.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Wasabi Systems. Inc.
This file is derived from <m68k/m68kv4.h>, <m68k/m68kelf.h>,
diff --git a/gcc/config/m68k/t-slibgcc-elf-ver b/gcc/config/m68k/t-slibgcc-elf-ver
new file mode 100644
index 00000000000..6aac37cc08f
--- /dev/null
+++ b/gcc/config/m68k/t-slibgcc-elf-ver
@@ -0,0 +1,3 @@
+# Bump the version number of the shared libgcc library
+
+SHLIB_SOVERSION = 2
diff --git a/gcc/config/mcore/mcore-elf.h b/gcc/config/mcore/mcore-elf.h
index 2234e7d1957..11b80ebbab3 100644
--- a/gcc/config/mcore/mcore-elf.h
+++ b/gcc/config/mcore/mcore-elf.h
@@ -1,5 +1,6 @@
/* Definitions of MCore target.
- Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004
+ Free Software Foundation, Inc.
Contributed by Cygnus Solutions.
This file is part of GCC.
diff --git a/gcc/config/mcore/mcore.c b/gcc/config/mcore/mcore.c
index 53ceea3d554..6e9f4705024 100644
--- a/gcc/config/mcore/mcore.c
+++ b/gcc/config/mcore/mcore.c
@@ -1,5 +1,6 @@
/* Output routines for Motorola MCore processor
- Copyright (C) 1993, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1999, 2000, 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/mcore/mcore.h b/gcc/config/mcore/mcore.h
index b19104f9cf1..9abbb6eeed0 100644
--- a/gcc/config/mcore/mcore.h
+++ b/gcc/config/mcore/mcore.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler,
for Motorola M*CORE Processor.
- Copyright (C) 1993, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1993, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -710,7 +710,7 @@ extern const enum reg_class reg_class_from_letter[];
On MCore, the offset always starts at 0: the first parm reg is always
the same reg. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM) = 0)
/* Update the data in CUM to advance over an argument
diff --git a/gcc/config/mcore/mcore.md b/gcc/config/mcore/mcore.md
index e1e598b7ddd..e10be256946 100644
--- a/gcc/config/mcore/mcore.md
+++ b/gcc/config/mcore/mcore.md
@@ -1,5 +1,5 @@
;; Machine description the Motorola MCore
-;; Copyright (C) 1993, 1999, 2000 Free Software Foundation, Inc.
+;; Copyright (C) 1993, 1999, 2000, 2004 Free Software Foundation, Inc.
;; Contributed by Motorola.
;; This file is part of GCC.
diff --git a/gcc/config/mips/elf.h b/gcc/config/mips/elf.h
index febb8216bad..ff70b59cc20 100644
--- a/gcc/config/mips/elf.h
+++ b/gcc/config/mips/elf.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler. MIPS R3000 version with
GOFAST floating point library.
- Copyright (C) 1994, 1997, 1999, 2000, 2002, 2003
+ Copyright (C) 1994, 1997, 1999, 2000, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/mips/elf64.h b/gcc/config/mips/elf64.h
index 071f6fa061a..2b39287c893 100644
--- a/gcc/config/mips/elf64.h
+++ b/gcc/config/mips/elf64.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler. MIPS R4000 version with
GOFAST floating point library.
- Copyright (C) 1994, 1995, 1996, 1997, 1999, 2000, 2002
+ Copyright (C) 1994, 1995, 1996, 1997, 1999, 2000, 2002, 2004
Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/mips/iris5.h b/gcc/config/mips/iris5.h
index 41de65223f9..4f26dd7c59f 100644
--- a/gcc/config/mips/iris5.h
+++ b/gcc/config/mips/iris5.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler. IRIX version 5.
Copyright (C) 1993, 1995, 1996, 1998, 2000,
- 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -29,6 +29,10 @@ Boston, MA 02111-1307, USA. */
#define ABICALLS_ASM_OP "\t.option pic2"
+/* Dummy definition which allows EXTRA_SECTION_FUNCTIONS to be the same
+ for IRIX 5 and 6. */
+#define BSS_SECTION_ASM_OP "\t.data"
+
/* ??? This is correct, but not very useful, because there is no file that
uses this macro. */
/* ??? The best way to handle global constructors under ELF is to use .init
@@ -133,8 +137,7 @@ Boston, MA 02111-1307, USA. */
-_SYSTYPE_SVR4"
/* We now support shared libraries. */
-#undef STARTFILE_SPEC
-#define STARTFILE_SPEC "\
+#define IRIX_STARTFILE_SPEC "\
%{!static: \
%{!shared:%{pg:gcrt1.o%s}%{!pg:%{p:mcrt1.o%s libprof1.a%s}%{!p:crt1.o%s}}}} \
%{static: \
@@ -142,11 +145,16 @@ Boston, MA 02111-1307, USA. */
%{!pg:%{p:/usr/lib/nonshared/mcrt1.o%s libprof1.a%s} \
%{!p:/usr/lib/nonshared/crt1.o%s}}}"
+#undef STARTFILE_SPEC
+#define STARTFILE_SPEC "%(irix_startfile_spec)"
+
#undef LIB_SPEC
#define LIB_SPEC "%{!shared:%{p:-lprof1} %{pg:-lprof1} -lc}"
+#define IRIX_ENDFILE_SPEC "%{!shared:crtn.o%s}"
+
#undef ENDFILE_SPEC
-#define ENDFILE_SPEC "%{!shared:crtn.o%s}"
+#define ENDFILE_SPEC "%(irix_endfile_spec)"
/* We do not want to run mips-tfile! */
#undef ASM_FINAL_SPEC
@@ -192,14 +200,61 @@ Boston, MA 02111-1307, USA. */
#undef MIPS_DEFAULT_GVALUE
#define MIPS_DEFAULT_GVALUE 0
+/* Switch into a generic section. */
+#undef TARGET_ASM_NAMED_SECTION
+#define TARGET_ASM_NAMED_SECTION irix_asm_named_section
+
+/* Define functions to read the name and flags of the current section.
+ They are used by irix_asm_output_align. */
+
+#undef EXTRA_SECTION_FUNCTIONS
+#define EXTRA_SECTION_FUNCTIONS \
+const char * \
+current_section_name (void) \
+{ \
+ switch (in_section) \
+ { \
+ case no_section: return NULL; \
+ case in_text: return ".text"; \
+ case in_data: return ".data"; \
+ case in_bss: return ".bss"; \
+ case in_readonly_data: \
+ if (mips_abi != ABI_32 && mips_abi != ABI_O64) \
+ return ".rodata"; \
+ else \
+ return ".rdata"; \
+ case in_named: \
+ return in_named_name; \
+ } \
+ abort (); \
+} \
+ \
+unsigned int \
+current_section_flags (void) \
+{ \
+ switch (in_section) \
+ { \
+ case no_section: return 0; \
+ case in_text: return SECTION_CODE; \
+ case in_data: return SECTION_WRITE; \
+ case in_bss: return SECTION_WRITE | SECTION_BSS; \
+ case in_readonly_data: return 0; \
+ case in_named: return get_named_section_flags (in_named_name); \
+ } \
+ abort (); \
+}
+
/* Some assemblers have a bug that causes backslash escaped chars in .ascii
- to be misassembled, so we just completely avoid it. */
+ to be misassembled, so avoid it by using .byte instead. Write the original
+ string in a comment, partly to improve readability and partly for the sake
+ of scan-assembler-type tests. */
#undef ASM_OUTPUT_ASCII
#define ASM_OUTPUT_ASCII(FILE,PTR,LEN) \
do { \
const unsigned char *s_ = (const unsigned char *)(PTR); \
unsigned len_ = (LEN); \
unsigned i_; \
+ mips_output_ascii (FILE, (const char *) s_, len_, "\t# "); \
for (i_ = 0; i_ < len_; s_++, i_++) \
{ \
if ((i_ % 8) == 0) \
@@ -242,3 +297,8 @@ do { \
/* Handle #pragma weak and #pragma pack. */
#define HANDLE_SYSV_PRAGMA 1
+
+#undef SUBTARGET_EXTRA_SPECS
+#define SUBTARGET_EXTRA_SPECS \
+ { "irix_startfile_spec", IRIX_STARTFILE_SPEC }, \
+ { "irix_endfile_spec", IRIX_ENDFILE_SPEC },
diff --git a/gcc/config/mips/iris5gas.h b/gcc/config/mips/iris5gas.h
index 6abd98c3f18..49af06b5367 100644
--- a/gcc/config/mips/iris5gas.h
+++ b/gcc/config/mips/iris5gas.h
@@ -1,5 +1,5 @@
-/* Definitions of target machine for GNU compiler. Irix version 5 with gas.
- Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+/* Definitions of target machine for GNU compiler. IRIX version 5 with gas.
+ Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -19,6 +19,9 @@
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
+/* Reenable debugging. */
+#define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG
+
/* GNU as does handle DWARF2 directives. */
#undef DWARF2_UNWIND_INFO
#define DWARF2_UNWIND_INFO 1
@@ -40,17 +43,10 @@
/* Override iris5.h versions to include crtbegin.o and crtend.o. */
#undef STARTFILE_SPEC
-#define STARTFILE_SPEC "\
-%{!static: \
- %{!shared:%{pg:gcrt1.o%s}%{!pg:%{p:mcrt1.o%s libprof1.a%s}%{!p:crt1.o%s}}}} \
-%{static: \
- %{pg:gcrt1.o%s} \
- %{!pg:%{p:/usr/lib/nonshared/mcrt1.o%s libprof1.a%s} \
- %{!p:/usr/lib/nonshared/crt1.o%s}}} \
-crtbegin.o%s"
+#define STARTFILE_SPEC "%(irix_startfile_spec) crtbegin.o%s"
#undef ENDFILE_SPEC
-#define ENDFILE_SPEC "crtend.o%s %{!shared:crtn.o%s}"
+#define ENDFILE_SPEC "crtend.o%s %(irix_endfile_spec)"
/* Irix 5 does not have some strange restrictions that Irix 3 had. */
#undef SET_FILE_NUMBER
@@ -74,10 +70,6 @@ do { \
fprintf (asm_out_file, "\t.etype\t0x%x;", (a)); \
} while (0)
-/* Switch into a generic section. */
-#undef TARGET_ASM_NAMED_SECTION
-#define TARGET_ASM_NAMED_SECTION default_elf_asm_named_section
-
/* Add -g to mips.h default to avoid confusing gas with local symbols
generated from stabs info. */
#undef NM_FLAGS
diff --git a/gcc/config/mips/iris5gld.h b/gcc/config/mips/iris5gld.h
new file mode 100644
index 00000000000..2e93c11b58b
--- /dev/null
+++ b/gcc/config/mips/iris5gld.h
@@ -0,0 +1,42 @@
+/* Definitions of target machine for GNU compiler. IRIX 5 with GNU ld.
+ Copyright (C) 2004 Free Software Foundation, Inc.
+
+This file is part of GNU CC.
+
+GNU CC is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU CC is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU CC; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+#undef LINK_SPEC
+#define LINK_SPEC "\
+%{G*} %{EB} %{EL} %{mips1} %{mips2} %{mips3} \
+%{bestGnum} %{shared} %{non_shared} \
+%{call_shared} %{no_archive} %{exact_version} \
+%{static: -non_shared} \
+%{!static: \
+ %{!shared: %{!non_shared: %{!call_shared: -call_shared}}}} \
+%{rpath} -init __gcc_init -fini __gcc_fini \
+-melf32bsmip"
+
+#undef STARTFILE_SPEC
+#define STARTFILE_SPEC "%(irix_startfile_spec) irix-crti.o%s crtbegin.o%s"
+
+#undef ENDFILE_SPEC
+#define ENDFILE_SPEC "crtend.o%s irix-crtn.o%s %(irix_endfile_spec)"
+
+/* The GNU linker supports one-only sections. */
+#define MAKE_DECL_ONE_ONLY(DECL) (DECL_WEAK (DECL) = 1)
+
+#define INIT_SECTION_ASM_OP "\t.section\t.init,0x1,0x6,4,4"
+#define FINI_SECTION_ASM_OP "\t.section\t.fini,0x1,0x6,4,4"
diff --git a/gcc/config/mips/iris6-o32-as.h b/gcc/config/mips/iris6-o32-as.h
deleted file mode 100644
index 5cda89e13cf..00000000000
--- a/gcc/config/mips/iris6-o32-as.h
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Definitions of target machine for GNU compiler, for MIPS running IRIX 6
- (O32 ABI) using the SGI assembler. */
-
-/* Enforce use of O32 linker, irrespective of SGI_ABI environment variable
- and machine type (e.g., R8000 systems default to -64). Copied from
- iris5.h, only adding -32. The default options -call_shared -no_unresolved
- are only passed if not invoked with -r. */
-#undef LINK_SPEC
-#define LINK_SPEC "\
-%{G*} %{EB} %{EL} %{mips1} %{mips2} %{mips3} \
-%{bestGnum} %{shared} %{non_shared} \
-%{call_shared} %{no_archive} %{exact_version} \
-%{static: -non_shared} \
-%{!static: \
- %{!shared:%{!non_shared:%{!call_shared:%{!r: -call_shared -no_unresolved}}}}} \
-%{rpath} \
--_SYSTYPE_SVR4 \
--32"
diff --git a/gcc/config/mips/iris6-o32-gas.h b/gcc/config/mips/iris6-o32-gas.h
deleted file mode 100644
index fb540a922cf..00000000000
--- a/gcc/config/mips/iris6-o32-gas.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Definitions of target machine for GNU compiler, for MIPS running IRIX 6
- (O32 ABI) using the GNU assembler. */
-
-/* Enforce use of O32 linker, irrespective of SGI_ABI environment variable
- and machine type (e.g., R8000 systems default to -64). Copied from
- iris5gas.h, only adding -32. The default options -call_shared
- -no_unresolved are only passed if not invoked with -r. */
-#undef LINK_SPEC
-#define LINK_SPEC "\
-%{G*} %{EB} %{EL} %{mips1} %{mips2} %{mips3} \
-%{bestGnum} %{shared} %{non_shared} \
-%{call_shared} %{no_archive} %{exact_version} \
-%{static: -non_shared} \
-%{!static: \
- %{!shared:%{!non_shared:%{!call_shared:%{!r: -call_shared -no_unresolved}}}}} \
-%{rpath} -init __do_global_ctors -fini __do_global_dtors \
-%{shared:-hidden_symbol __do_global_ctors,__do_global_ctors_1,__do_global_dtors} \
--_SYSTYPE_SVR4 \
--32"
diff --git a/gcc/config/mips/iris6-o32.h b/gcc/config/mips/iris6-o32.h
deleted file mode 100644
index a525db163ae..00000000000
--- a/gcc/config/mips/iris6-o32.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Definitions of target machine for GNU compiler, for MIPS running IRIX 6
- (O32 ABI). */
-
-/* The O32 ABI on IRIX 6 defaults to the mips2 ISA. */
-#undef MIPS_CPU_STRING_DEFAULT
-#define MIPS_CPU_STRING_DEFAULT "mips2"
-
-/* Specify wchar_t and wint_t types. */
-#undef WCHAR_TYPE
-#define WCHAR_TYPE "long int"
-
-#undef WCHAR_TYPE_SIZE
-#define WCHAR_TYPE_SIZE 32
-
-#undef WINT_TYPE
-#define WINT_TYPE "long int"
-
-#undef WINT_TYPE_SIZE
-#define WINT_TYPE_SIZE 32
-
-/* Enforce use of O32 assembler, irrespective of SGI_ABI environment variable
- and machine type (e.g., R8000 systems default to -64). Gas doesn't need
- this, but doesn't hurt either. Need to pass -mips2 to gas which defaults
- to -mips1 if no ISA is specified. */
-#undef SUBTARGET_ASM_SPEC
-#define SUBTARGET_ASM_SPEC "-32 %{!mips*:-mips2}"
diff --git a/gcc/config/mips/iris6.h b/gcc/config/mips/iris6.h
index 53b88d84fc8..33d6b09825a 100644
--- a/gcc/config/mips/iris6.h
+++ b/gcc/config/mips/iris6.h
@@ -1,5 +1,5 @@
/* Definitions of target machine for GNU compiler. IRIX version 6.
- Copyright (C) 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003
+ Copyright (C) 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -288,6 +288,7 @@ Boston, MA 02111-1307, USA. */
and dtor lists this way, so we use -init and -fini to invoke the
do_global_* functions instead of running collect2. */
+#undef BSS_SECTION_ASM_OP
#define BSS_SECTION_ASM_OP_32 "\t.data"
#define BSS_SECTION_ASM_OP_64 "\t.section\t.bss"
#define BSS_SECTION_ASM_OP \
@@ -303,10 +304,6 @@ Boston, MA 02111-1307, USA. */
? READONLY_DATA_SECTION_ASM_OP_64 \
: READONLY_DATA_SECTION_ASM_OP_32)
-/* Switch into a generic section. */
-#undef TARGET_ASM_NAMED_SECTION
-#define TARGET_ASM_NAMED_SECTION irix_asm_named_section
-
/* The default definition in defaults.h cannot cope with the runtime-variable
definition of DWARF2_UNWIND_INFO above, so define here explicitly. */
#define EH_FRAME_SECTION_NAME ".eh_frame"
@@ -336,46 +333,6 @@ Boston, MA 02111-1307, USA. */
#endif /* _MIPS_SIM == _ABIO32 && !GAS */
-/* Define functions to read the name and flags of the current section.
- They are used by irix_asm_output_align. */
-
-#undef EXTRA_SECTION_FUNCTIONS
-#define EXTRA_SECTION_FUNCTIONS \
-const char * \
-current_section_name (void) \
-{ \
- switch (in_section) \
- { \
- case no_section: return NULL; \
- case in_text: return ".text"; \
- case in_data: return ".data"; \
- case in_bss: return ".bss"; \
- case in_readonly_data: \
- if (mips_abi != ABI_32 && mips_abi != ABI_O64) \
- return ".rodata"; \
- else \
- return ".rdata"; \
- case in_named: \
- return in_named_name; \
- } \
- abort (); \
-} \
- \
-unsigned int \
-current_section_flags (void) \
-{ \
- switch (in_section) \
- { \
- case no_section: return 0; \
- case in_text: return SECTION_CODE; \
- case in_data: return SECTION_WRITE; \
- case in_bss: return SECTION_WRITE | SECTION_BSS; \
- case in_readonly_data: return 0; \
- case in_named: return get_named_section_flags (in_named_name); \
- } \
- abort (); \
-}
-
/* SGI assembler needs all sorts of extra help to do alignment properly. */
#undef ASM_OUTPUT_ALIGN
#define ASM_OUTPUT_ALIGN irix_asm_output_align
@@ -437,7 +394,8 @@ while (0)
/* Profiling is supported via libprof1.a not -lc_p as in IRIX 3. */
/* ??? If no mabi=X option give, but a mipsX option is, then should depend
on the mipsX option. */
-#define IRIX6_STARTFILE_SPEC \
+#undef IRIX_STARTFILE_SPEC
+#define IRIX_STARTFILE_SPEC \
"%{!shared: \
%{mabi=32:%{pg:gcrt1.o%s} \
%{!pg:%{p:mcrt1.o%s libprof1.a%s}%{!p:crt1.o%s}}} \
@@ -464,7 +422,7 @@ while (0)
%{!p:/usr/lib32/mips3/crt1.o%s}}}}}"
#undef STARTFILE_SPEC
-#define STARTFILE_SPEC "%(irix6_startfile_spec) crtbegin.o%s"
+#define STARTFILE_SPEC "%(irix_startfile_spec) crtbegin.o%s"
#undef LIB_SPEC
#define LIB_SPEC \
@@ -483,7 +441,8 @@ while (0)
/* ??? If no mabi=X option give, but a mipsX option is, then should depend
on the mipsX option. */
-#define IRIX6_ENDFILE_SPEC \
+#undef IRIX_ENDFILE_SPEC
+#define IRIX_ENDFILE_SPEC \
"%{!shared: \
%{mabi=32:crtn.o%s}\
%{mabi=n32:%{mips4:/usr/lib32/mips4/crtn.o%s}\
@@ -494,7 +453,7 @@ while (0)
%{!mips4:/usr/lib32/mips3/crtn.o%s}}}"
#undef ENDFILE_SPEC
-#define ENDFILE_SPEC "crtend.o%s %(irix6_endfile_spec)"
+#define ENDFILE_SPEC "crtend.o%s %(irix_endfile_spec)"
/* ??? If no mabi=X option give, but a mipsX option is, then should depend
on the mipsX option. */
@@ -519,8 +478,3 @@ do { \
} while (0)
#define MIPS_TFMODE_FORMAT mips_extended_format
-
-#undef SUBTARGET_EXTRA_SPECS
-#define SUBTARGET_EXTRA_SPECS \
- { "irix6_startfile_spec", IRIX6_STARTFILE_SPEC }, \
- { "irix6_endfile_spec", IRIX6_ENDFILE_SPEC },
diff --git a/gcc/config/mips/iris6gas.h b/gcc/config/mips/iris6gas.h
index 532e9e43f16..01634faa414 100644
--- a/gcc/config/mips/iris6gas.h
+++ b/gcc/config/mips/iris6gas.h
@@ -1,5 +1,5 @@
/* Definitions for MIPS running IRIX 6 using GNU AS
- Copyright (C) 2003
+ Copyright (C) 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/mips/iris6gld.h b/gcc/config/mips/iris6gld.h
index 1e5ee2c9f96..c6e04e14cee 100644
--- a/gcc/config/mips/iris6gld.h
+++ b/gcc/config/mips/iris6gld.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler. Iris version 6 with
GNU ld.
- Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2002, 2004 Free Software Foundation, Inc.
Written by Mark Mitchell <mark@codesourcery.com>.
This file is part of GCC.
@@ -48,10 +48,10 @@ Boston, MA 02111-1307, USA. */
%{mabi=32: -melf32bsmip}%{mabi=n32: -melf32bmipn32}%{mabi=64: -melf64bmip}%{!mabi*: -melf32bmipn32}"
#undef STARTFILE_SPEC
-#define STARTFILE_SPEC "%(irix6_startfile_spec) irix6-crti.o%s crtbegin.o%s"
+#define STARTFILE_SPEC "%(irix_startfile_spec) irix-crti.o%s crtbegin.o%s"
#undef ENDFILE_SPEC
-#define ENDFILE_SPEC "crtend.o%s irix6-crtn.o%s %(irix6_endfile_spec)"
+#define ENDFILE_SPEC "crtend.o%s irix-crtn.o%s %(irix_endfile_spec)"
/* The GNU linker supports one-only sections. */
#define MAKE_DECL_ONE_ONLY(DECL) (DECL_WEAK (DECL) = 1)
diff --git a/gcc/config/mips/irix6-crti.asm b/gcc/config/mips/irix-crti.asm
index 5d8ede70390..5d8ede70390 100644
--- a/gcc/config/mips/irix6-crti.asm
+++ b/gcc/config/mips/irix-crti.asm
diff --git a/gcc/config/mips/irix6-crtn.asm b/gcc/config/mips/irix-crtn.asm
index 647e8e13e31..647e8e13e31 100644
--- a/gcc/config/mips/irix6-crtn.asm
+++ b/gcc/config/mips/irix-crtn.asm
diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h
index a087758b095..66f22e54bb8 100644
--- a/gcc/config/mips/linux.h
+++ b/gcc/config/mips/linux.h
@@ -1,5 +1,5 @@
/* Definitions for MIPS running Linux-based GNU systems with ELF format.
- Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -58,6 +58,7 @@ Boston, MA 02111-1307, USA. */
LINUX_TARGET_OS_CPP_BUILTINS(); \
builtin_define ("__PIC__"); \
builtin_define ("__pic__"); \
+ builtin_assert ("machine=mips"); \
/* The GNU C++ standard library requires this. */ \
if (c_dialect_cxx ()) \
builtin_define ("_GNU_SOURCE"); \
diff --git a/gcc/config/mips/mips-protos.h b/gcc/config/mips/mips-protos.h
index 6bf635c1e9c..0a430a08bd3 100644
--- a/gcc/config/mips/mips-protos.h
+++ b/gcc/config/mips/mips-protos.h
@@ -26,7 +26,7 @@ Boston, MA 02111-1307, USA. */
#ifndef GCC_MIPS_PROTOS_H
#define GCC_MIPS_PROTOS_H
-extern int mips_reg_mode_ok_for_base_p (rtx, enum machine_mode, int);
+extern int mips_regno_mode_ok_for_base_p (int, enum machine_mode, int);
extern int mips_address_insns (rtx, enum machine_mode);
extern int mips_const_insns (rtx);
extern int mips_fetch_insns (rtx);
@@ -103,11 +103,14 @@ extern void irix_output_external_libcall (rtx);
#endif
extern void mips_output_filename (FILE *, const char *);
extern void mips_output_lineno (FILE *, int);
-extern void mips_output_ascii (FILE *, const char *, size_t);
+extern void mips_output_ascii (FILE *, const char *, size_t, const char *);
extern void mips_output_aligned_bss (FILE *, tree, const char *,
unsigned HOST_WIDE_INT, int);
+extern void mips_output_aligned_decl_common (FILE *, tree, const char *,
+ unsigned HOST_WIDE_INT,
+ unsigned int);
extern void mips_declare_object (FILE *, const char *, const char *,
- const char *, int);
+ const char *, ...);
extern void mips_declare_object_name (FILE *, const char *, tree);
extern void mips_finish_declare_object (FILE *, tree, int, int);
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c
index 477f98964aa..1573ebfe073 100644
--- a/gcc/config/mips/mips.c
+++ b/gcc/config/mips/mips.c
@@ -53,6 +53,7 @@ Boston, MA 02111-1307, USA. */
#include "target-def.h"
#include "integrate.h"
#include "langhooks.h"
+#include "cfglayout.h"
/* Enumeration for all of the relational tests, so that we can build
arrays indexed by the test type, and not worry about the order
@@ -91,10 +92,12 @@ enum internal_test {
#define UNSPEC_ADDRESS_TYPE(X) \
((enum mips_symbol_type) (XINT (X, 1) - UNSPEC_ADDRESS_FIRST))
-/* True if X is (const $gp). This is used to initialize the mips16
- gp pseudo register. */
+/* True if X is (const (unspec [(const_int 0)] UNSPEC_GP)). This is used
+ to initialize the mips16 gp pseudo register. */
#define CONST_GP_P(X) \
- (GET_CODE (X) == CONST && XEXP (X, 0) == pic_offset_table_rtx)
+ (GET_CODE (X) == CONST \
+ && GET_CODE (XEXP (X, 0)) == UNSPEC \
+ && XINT (XEXP (X, 0), 1) == UNSPEC_GP)
/* The maximum distance between the top of the stack frame and the
value $sp has when we save & restore registers.
@@ -190,6 +193,7 @@ struct mips_integer_op;
static enum mips_symbol_type mips_classify_symbol (rtx);
static void mips_split_const (rtx, rtx *, HOST_WIDE_INT *);
+static bool mips_offset_within_object_p (rtx, HOST_WIDE_INT);
static bool mips_symbolic_constant_p (rtx, enum mips_symbol_type *);
static bool mips_valid_base_register_p (rtx, enum machine_mode, int);
static bool mips_symbolic_address_p (enum mips_symbol_type, enum machine_mode);
@@ -200,7 +204,7 @@ static bool mips16_unextended_reference_p (enum machine_mode mode, rtx, rtx);
static rtx mips_force_temporary (rtx, rtx);
static rtx mips_split_symbol (rtx, rtx);
static rtx mips_unspec_address (rtx, enum mips_symbol_type);
-static rtx mips_unspec_offset_high (rtx, rtx, enum mips_symbol_type);
+static rtx mips_unspec_offset_high (rtx, rtx, rtx, enum mips_symbol_type);
static rtx mips_load_got (rtx, rtx, enum mips_symbol_type);
static rtx mips_add_offset (rtx, HOST_WIDE_INT);
static unsigned int mips_build_shift (struct mips_integer_op *, HOST_WIDE_INT);
@@ -216,6 +220,7 @@ static int mips_address_cost (rtx);
static enum internal_test map_test_to_internal_test (enum rtx_code);
static void get_float_compare_codes (enum rtx_code, enum rtx_code *,
enum rtx_code *);
+static void mips_load_call_address (rtx, rtx, int);
static bool mips_function_ok_for_sibcall (tree, tree);
static void mips_block_move_straight (rtx, rtx, HOST_WIDE_INT);
static void mips_adjust_block_mem (rtx, HOST_WIDE_INT, rtx *, rtx *);
@@ -239,12 +244,16 @@ static bool mips_save_reg_p (unsigned int);
static void mips_save_restore_reg (enum machine_mode, int, HOST_WIDE_INT,
mips_save_restore_fn);
static void mips_for_each_saved_reg (HOST_WIDE_INT, mips_save_restore_fn);
+static void mips_output_cplocal (void);
+static void mips_emit_loadgp (void);
static void mips_output_function_prologue (FILE *, HOST_WIDE_INT);
static void mips_set_frame_expr (rtx);
static rtx mips_frame_set (rtx, rtx);
static void mips_save_reg (rtx, rtx);
static void mips_output_function_epilogue (FILE *, HOST_WIDE_INT);
static void mips_restore_reg (rtx, rtx);
+static void mips_output_mi_thunk (FILE *, tree, HOST_WIDE_INT,
+ HOST_WIDE_INT, tree);
static int symbolic_expression_p (rtx);
static void mips_select_rtx_section (enum machine_mode, rtx,
unsigned HOST_WIDE_INT);
@@ -260,7 +269,6 @@ static rtx mips_return_fpr_pair (enum machine_mode mode,
static rtx mips16_gp_pseudo_reg (void);
static void mips16_fp_args (FILE *, int, int);
static void build_mips16_function_stub (FILE *);
-static void mips16_optimize_gp (void);
static rtx add_constant (struct constant **, rtx, enum machine_mode);
static void dump_constants (struct constant *, rtx);
static rtx mips_find_symbol (rtx);
@@ -533,7 +541,7 @@ char mips_print_operand_punct[256];
int mips_dbx_regno[FIRST_PSEUDO_REGISTER];
/* An alias set for the GOT. */
-static int mips_got_alias_set;
+static GTY(()) int mips_got_alias_set;
/* A copy of the original flag_delayed_branch: see override_options. */
static int mips_flag_delayed_branch;
@@ -566,7 +574,7 @@ char mips_reg_names[][8] =
"$f16", "$f17", "$f18", "$f19", "$f20", "$f21", "$f22", "$f23",
"$f24", "$f25", "$f26", "$f27", "$f28", "$f29", "$f30", "$f31",
"hi", "lo", "", "$fcc0","$fcc1","$fcc2","$fcc3","$fcc4",
- "$fcc5","$fcc6","$fcc7","", "", "", "", "$fakec",
+ "$fcc5","$fcc6","$fcc7","", "", "$arg", "$frame", "$fakec",
"$c0r0", "$c0r1", "$c0r2", "$c0r3", "$c0r4", "$c0r5", "$c0r6", "$c0r7",
"$c0r8", "$c0r9", "$c0r10","$c0r11","$c0r12","$c0r13","$c0r14","$c0r15",
"$c0r16","$c0r17","$c0r18","$c0r19","$c0r20","$c0r21","$c0r22","$c0r23",
@@ -595,7 +603,7 @@ char mips_sw_reg_names[][8] =
"$f16", "$f17", "$f18", "$f19", "$f20", "$f21", "$f22", "$f23",
"$f24", "$f25", "$f26", "$f27", "$f28", "$f29", "$f30", "$f31",
"hi", "lo", "", "$fcc0","$fcc1","$fcc2","$fcc3","$fcc4",
- "$fcc5","$fcc6","$fcc7","$rap", "", "", "", "$fakec",
+ "$fcc5","$fcc6","$fcc7","$rap", "", "$arg", "$frame", "$fakec",
"$c0r0", "$c0r1", "$c0r2", "$c0r3", "$c0r4", "$c0r5", "$c0r6", "$c0r7",
"$c0r8", "$c0r9", "$c0r10","$c0r11","$c0r12","$c0r13","$c0r14","$c0r15",
"$c0r16","$c0r17","$c0r18","$c0r19","$c0r20","$c0r21","$c0r22","$c0r23",
@@ -632,7 +640,7 @@ const enum reg_class mips_regno_to_class[] =
HI_REG, LO_REG, NO_REGS, ST_REGS,
ST_REGS, ST_REGS, ST_REGS, ST_REGS,
ST_REGS, ST_REGS, ST_REGS, NO_REGS,
- NO_REGS, NO_REGS, NO_REGS, NO_REGS,
+ NO_REGS, ALL_REGS, ALL_REGS, NO_REGS,
COP0_REGS, COP0_REGS, COP0_REGS, COP0_REGS,
COP0_REGS, COP0_REGS, COP0_REGS, COP0_REGS,
COP0_REGS, COP0_REGS, COP0_REGS, COP0_REGS,
@@ -792,6 +800,11 @@ const struct mips_cpu_info mips_cpu_info_table[] = {
#undef TARGET_RETURN_IN_MSB
#define TARGET_RETURN_IN_MSB mips_return_in_msb
+#undef TARGET_ASM_OUTPUT_MI_THUNK
+#define TARGET_ASM_OUTPUT_MI_THUNK mips_output_mi_thunk
+#undef TARGET_ASM_CAN_OUTPUT_MI_THUNK
+#define TARGET_ASM_CAN_OUTPUT_MI_THUNK hook_bool_tree_hwi_hwi_tree_true
+
struct gcc_target targetm = TARGET_INITIALIZER;
/* Classify symbol X, which must be a SYMBOL_REF or a LABEL_REF. */
@@ -882,6 +895,29 @@ mips_split_const (rtx x, rtx *base, HOST_WIDE_INT *offset)
}
+/* Return true if SYMBOL is a SYMBOL_REF and OFFSET + SYMBOL points
+ to the same object as SYMBOL. */
+
+static bool
+mips_offset_within_object_p (rtx symbol, HOST_WIDE_INT offset)
+{
+ if (GET_CODE (symbol) != SYMBOL_REF)
+ return false;
+
+ if (CONSTANT_POOL_ADDRESS_P (symbol)
+ && offset >= 0
+ && offset < (int) GET_MODE_SIZE (get_pool_mode (symbol)))
+ return true;
+
+ if (SYMBOL_REF_DECL (symbol) != 0
+ && offset >= 0
+ && offset < int_size_in_bytes (TREE_TYPE (SYMBOL_REF_DECL (symbol))))
+ return true;
+
+ return false;
+}
+
+
/* Return true if X is a symbolic constant that can be calculated in
the same way as a bare symbol. If it is, store the type of the
symbol in *SYMBOL_TYPE. */
@@ -907,21 +943,22 @@ mips_symbolic_constant_p (rtx x, enum mips_symbol_type *symbol_type)
switch (*symbol_type)
{
case SYMBOL_GENERAL:
- /* %hi() and %lo() can handle anything. */
+ /* If the target has 64-bit pointers and the object file only
+ supports 32-bit symbols, the values of those symbols will be
+ sign-extended. In this case we can't allow an arbitrary offset
+ in case the 32-bit value X + OFFSET has a different sign from X. */
+ if (Pmode == DImode && !ABI_HAS_64BIT_SYMBOLS)
+ return mips_offset_within_object_p (x, offset);
+
+ /* In other cases the relocations can handle any offset. */
return true;
case SYMBOL_SMALL_DATA:
- /* Make sure that the offset refers to something within the
- -G limit. If the offset is allowed to grow too much,
- it could overflow the range of %gp_rel(). */
- return (offset > 0 && offset < mips_section_threshold);
-
case SYMBOL_CONSTANT_POOL:
- /* Similarly check the range of offsets for mips16 constant
- pool entries. */
- return (CONSTANT_POOL_ADDRESS_P (x)
- && offset > 0
- && offset < (int) GET_MODE_SIZE (get_pool_mode (x)));
+ /* Make sure that the offset refers to something within the
+ underlying object. This should guarantee that the final
+ PC- or GP-relative offset is within the 16-bit limit. */
+ return mips_offset_within_object_p (x, offset);
case SYMBOL_GOT_LOCAL:
case SYMBOL_GOTOFF_PAGE:
@@ -942,11 +979,40 @@ mips_symbolic_constant_p (rtx x, enum mips_symbol_type *symbol_type)
/* This function is used to implement REG_MODE_OK_FOR_BASE_P. */
int
-mips_reg_mode_ok_for_base_p (rtx reg, enum machine_mode mode, int strict)
+mips_regno_mode_ok_for_base_p (int regno, enum machine_mode mode, int strict)
{
- return (strict
- ? REGNO_MODE_OK_FOR_BASE_P (REGNO (reg), mode)
- : GP_REG_OR_PSEUDO_NONSTRICT_P (REGNO (reg), mode));
+ if (regno >= FIRST_PSEUDO_REGISTER)
+ {
+ if (!strict)
+ return true;
+ regno = reg_renumber[regno];
+ }
+
+ /* These fake registers will be eliminated to either the stack or
+ hard frame pointer, both of which are usually valid base registers.
+ Reload deals with the cases where the eliminated form isn't valid. */
+ if (regno == ARG_POINTER_REGNUM || regno == FRAME_POINTER_REGNUM)
+ return true;
+
+ /* In mips16 mode, the stack pointer can only address word and doubleword
+ values, nothing smaller. There are two problems here:
+
+ (a) Instantiating virtual registers can introduce new uses of the
+ stack pointer. If these virtual registers are valid addresses,
+ the stack pointer should be too.
+
+ (b) Most uses of the stack pointer are not made explicit until
+ FRAME_POINTER_REGNUM and ARG_POINTER_REGNUM have been eliminated.
+ We don't know until that stage whether we'll be eliminating to the
+ stack pointer (which needs the restriction) or the hard frame
+ pointer (which doesn't).
+
+ All in all, it seems more consitent to only enforce this restriction
+ during and after reload. */
+ if (TARGET_MIPS16 && regno == STACK_POINTER_REGNUM)
+ return !strict || GET_MODE_SIZE (mode) == 4 || GET_MODE_SIZE (mode) == 8;
+
+ return TARGET_MIPS16 ? M16_REG_P (regno) : GP_REG_P (regno);
}
@@ -960,7 +1026,7 @@ mips_valid_base_register_p (rtx x, enum machine_mode mode, int strict)
x = SUBREG_REG (x);
return (GET_CODE (x) == REG
- && mips_reg_mode_ok_for_base_p (x, mode, strict));
+ && mips_regno_mode_ok_for_base_p (REGNO (x), mode, strict));
}
@@ -1160,8 +1226,13 @@ mips_address_insns (rtx x, enum machine_mode mode)
struct mips_address_info addr;
int factor;
- /* Each word of a multi-word value will be accessed individually. */
- factor = (GET_MODE_SIZE (mode) + UNITS_PER_WORD - 1) / UNITS_PER_WORD;
+ if (mode == BLKmode)
+ /* BLKmode is used for single unaligned loads and stores. */
+ factor = 1;
+ else
+ /* Each word of a multi-word value will be accessed individually. */
+ factor = (GET_MODE_SIZE (mode) + UNITS_PER_WORD - 1) / UNITS_PER_WORD;
+
if (mips_classify_address (&addr, x, mode, false))
switch (addr.type)
{
@@ -1648,17 +1719,19 @@ mips_unspec_address (rtx address, enum mips_symbol_type symbol_type)
/* If mips_unspec_address (ADDR, SYMBOL_TYPE) is a 32-bit value, add the
high part to BASE and return the result. Just return BASE otherwise.
+ TEMP is available as a temporary register if needed.
The returned expression can be used as the first operand to a LO_SUM. */
static rtx
-mips_unspec_offset_high (rtx base, rtx addr, enum mips_symbol_type symbol_type)
+mips_unspec_offset_high (rtx temp, rtx base, rtx addr,
+ enum mips_symbol_type symbol_type)
{
if (mips_split_p[symbol_type])
{
addr = gen_rtx_HIGH (Pmode, mips_unspec_address (addr, symbol_type));
- base = force_reg (Pmode, expand_simple_binop (Pmode, PLUS, base, addr,
- NULL, 0, OPTAB_WIDEN));
+ addr = mips_force_temporary (temp, addr);
+ return mips_force_temporary (temp, gen_rtx_PLUS (Pmode, addr, base));
}
return base;
}
@@ -3192,6 +3265,35 @@ mips_gen_conditional_trap (rtx *operands)
operands[1]));
}
+/* Load function address ADDR into register DEST. SIBCALL_P is true
+ if the address is needed for a sibling call. */
+
+static void
+mips_load_call_address (rtx dest, rtx addr, int sibcall_p)
+{
+ /* If we're generating PIC, and this call is to a global function,
+ try to allow its address to be resolved lazily. This isn't
+ possible for NewABI sibcalls since the value of $gp on entry
+ to the stub would be our caller's gp, not ours. */
+ if (TARGET_EXPLICIT_RELOCS
+ && !(sibcall_p && TARGET_NEWABI)
+ && global_got_operand (addr, VOIDmode))
+ {
+ rtx high, lo_sum_symbol;
+
+ high = mips_unspec_offset_high (dest, pic_offset_table_rtx,
+ addr, SYMBOL_GOTOFF_CALL);
+ lo_sum_symbol = mips_unspec_address (addr, SYMBOL_GOTOFF_CALL);
+ if (Pmode == SImode)
+ emit_insn (gen_load_callsi (dest, high, lo_sum_symbol));
+ else
+ emit_insn (gen_load_calldi (dest, high, lo_sum_symbol));
+ }
+ else
+ emit_move_insn (dest, addr);
+}
+
+
/* Expand a call or call_value instruction. RESULT is where the
result will go (null for calls), ADDR is the address of the
function, ARGS_SIZE is the size of the arguments and AUX is
@@ -3202,55 +3304,46 @@ mips_gen_conditional_trap (rtx *operands)
void
mips_expand_call (rtx result, rtx addr, rtx args_size, rtx aux, int sibcall_p)
{
+ rtx orig_addr, pattern, insn;
+
+ orig_addr = addr;
if (!call_insn_operand (addr, VOIDmode))
{
- /* If we're generating PIC, and this call is to a global function,
- try to allow its address to be resolved lazily. This isn't
- possible for NewABI sibcalls since the value of $gp on entry
- to the stub would be our caller's gp, not ours. */
- if (TARGET_EXPLICIT_RELOCS
- && !(sibcall_p && TARGET_NEWABI)
- && global_got_operand (addr, VOIDmode))
- {
- rtx high, lo_sum_symbol;
-
- high = mips_unspec_offset_high (pic_offset_table_rtx,
- addr, SYMBOL_GOTOFF_CALL);
- lo_sum_symbol = mips_unspec_address (addr, SYMBOL_GOTOFF_CALL);
- addr = gen_reg_rtx (Pmode);
- if (Pmode == SImode)
- emit_insn (gen_load_callsi (addr, high, lo_sum_symbol));
- else
- emit_insn (gen_load_calldi (addr, high, lo_sum_symbol));
- }
- else
- addr = force_reg (Pmode, addr);
+ addr = gen_reg_rtx (Pmode);
+ mips_load_call_address (addr, orig_addr, sibcall_p);
}
if (TARGET_MIPS16
&& mips16_hard_float
&& build_mips16_call_stub (result, addr, args_size,
aux == 0 ? 0 : (int) GET_MODE (aux)))
- /* Nothing more to do */;
- else if (result == 0)
- emit_call_insn (sibcall_p
- ? gen_sibcall_internal (addr, args_size)
- : gen_call_internal (addr, args_size));
+ return;
+
+ if (result == 0)
+ pattern = (sibcall_p
+ ? gen_sibcall_internal (addr, args_size)
+ : gen_call_internal (addr, args_size));
else if (GET_CODE (result) == PARALLEL && XVECLEN (result, 0) == 2)
{
rtx reg1, reg2;
reg1 = XEXP (XVECEXP (result, 0, 0), 0);
reg2 = XEXP (XVECEXP (result, 0, 1), 0);
- emit_call_insn
+ pattern =
(sibcall_p
? gen_sibcall_value_multiple_internal (reg1, addr, args_size, reg2)
: gen_call_value_multiple_internal (reg1, addr, args_size, reg2));
}
else
- emit_call_insn (sibcall_p
- ? gen_sibcall_value_internal (result, addr, args_size)
- : gen_call_value_internal (result, addr, args_size));
+ pattern = (sibcall_p
+ ? gen_sibcall_value_internal (result, addr, args_size)
+ : gen_call_value_internal (result, addr, args_size));
+
+ insn = emit_call_insn (pattern);
+
+ /* Lazy-binding stubs require $gp to be valid on entry. */
+ if (global_got_operand (orig_addr, VOIDmode))
+ use_reg (&CALL_INSN_FUNCTION_USAGE (insn), pic_offset_table_rtx);
}
@@ -5510,7 +5603,7 @@ print_operand (FILE *file, rtx op, int letter)
fputs (code == EQ ? "t" : "f", file);
else if (CONST_GP_P (op))
- print_operand (file, XEXP (op, 0), letter);
+ fputs (reg_names[GLOBAL_POINTER_REGNUM], file);
else
output_addr_const (file, op);
@@ -5704,17 +5797,20 @@ mips_output_lineno (FILE *stream, int line)
}
}
-/* Output an ASCII string, in a space-saving way. */
+/* Output an ASCII string, in a space-saving way. PREFIX is the string
+ that should be written before the opening quote, such as "\t.ascii\t"
+ for real string data or "\t# " for a comment. */
void
-mips_output_ascii (FILE *stream, const char *string_param, size_t len)
+mips_output_ascii (FILE *stream, const char *string_param, size_t len,
+ const char *prefix)
{
size_t i;
int cur_pos = 17;
register const unsigned char *string =
(const unsigned char *)string_param;
- fprintf (stream, "\t.ascii\t\"");
+ fprintf (stream, "%s\"", prefix);
for (i = 0; i < len; i++)
{
register int c = string[i];
@@ -5774,7 +5870,7 @@ mips_output_ascii (FILE *stream, const char *string_param, size_t len)
if (cur_pos > 72 && i+1 < len)
{
cur_pos = 17;
- fprintf (stream, "\"\n\t.ascii\t\"");
+ fprintf (stream, "\"\n%s\"", prefix);
}
}
fprintf (stream, "\"\n");
@@ -5910,17 +6006,63 @@ mips_file_end (void)
}
}
+/* Implement ASM_OUTPUT_ALIGNED_DECL_COMMON. This is usually the same as
+ the elfos.h version, but we also need to handle -muninit-const-in-rodata
+ and the limitations of the SGI o32 assembler. */
+
+void
+mips_output_aligned_decl_common (FILE *stream, tree decl, const char *name,
+ unsigned HOST_WIDE_INT size,
+ unsigned int align)
+{
+ /* If the target wants uninitialized const declarations in
+ .rdata then don't put them in .comm. */
+ if (TARGET_EMBEDDED_DATA && TARGET_UNINIT_CONST_IN_RODATA
+ && TREE_CODE (decl) == VAR_DECL && TREE_READONLY (decl)
+ && (DECL_INITIAL (decl) == 0 || DECL_INITIAL (decl) == error_mark_node))
+ {
+ if (TREE_PUBLIC (decl) && DECL_NAME (decl))
+ targetm.asm_out.globalize_label (stream, name);
+
+ readonly_data_section ();
+ ASM_OUTPUT_ALIGN (stream, floor_log2 (align / BITS_PER_UNIT));
+ mips_declare_object (stream, name, "",
+ ":\n\t.space\t" HOST_WIDE_INT_PRINT_UNSIGNED "\n",
+ size);
+ }
+ else if (TARGET_SGI_O32_AS)
+ {
+ /* The SGI o32 assembler doesn't accept an alignment, so round up
+ the size instead. */
+ size += (align / BITS_PER_UNIT) - 1;
+ size -= size % (align / BITS_PER_UNIT);
+ mips_declare_object (stream, name, "\n\t.comm\t",
+ "," HOST_WIDE_INT_PRINT_UNSIGNED "\n", size);
+ }
+ else
+ mips_declare_object (stream, name, "\n\t.comm\t",
+ "," HOST_WIDE_INT_PRINT_UNSIGNED ",%u\n",
+ size, align / BITS_PER_UNIT);
+}
+
/* Emit either a label, .comm, or .lcomm directive. When using assembler
macros, mark the symbol as written so that mips_file_end won't emit an
- .extern for it. */
+ .extern for it. STREAM is the output file, NAME is the name of the
+ symbol, INIT_STRING is the string that should be written before the
+ symbol and FINAL_STRING is the string that shoulbe written after it.
+ FINAL_STRING is a printf() format that consumes the remaining arguments. */
void
mips_declare_object (FILE *stream, const char *name, const char *init_string,
- const char *final_string, int size)
+ const char *final_string, ...)
{
- fputs (init_string, stream); /* "", "\t.comm\t", or "\t.lcomm\t" */
+ va_list ap;
+
+ fputs (init_string, stream);
assemble_name (stream, name);
- fprintf (stream, final_string, size); /* ":\n", ",%u\n", ",%u\n" */
+ va_start (ap, final_string);
+ vfprintf (stream, final_string, ap);
+ va_end (ap);
if (!TARGET_EXPLICIT_RELOCS)
{
@@ -6466,6 +6608,38 @@ mips_for_each_saved_reg (HOST_WIDE_INT sp_offset, mips_save_restore_fn fn)
#undef BITSET_P
}
+/* If we're generating n32 or n64 abicalls, and the current function
+ does not use $28 as its global pointer, emit a cplocal directive.
+ Use pic_offset_table_rtx as the argument to the directive. */
+
+static void
+mips_output_cplocal (void)
+{
+ if (!TARGET_EXPLICIT_RELOCS
+ && cfun->machine->global_pointer > 0
+ && cfun->machine->global_pointer != GLOBAL_POINTER_REGNUM)
+ output_asm_insn (".cplocal %+", 0);
+}
+
+/* If we're generating n32 or n64 abicalls, emit instructions
+ to set up the global pointer. */
+
+static void
+mips_emit_loadgp (void)
+{
+ if (TARGET_ABICALLS && TARGET_NEWABI && cfun->machine->global_pointer > 0)
+ {
+ rtx addr, offset, incoming_address;
+
+ addr = XEXP (DECL_RTL (current_function_decl), 0);
+ offset = mips_unspec_address (addr, SYMBOL_GOTOFF_LOADGP);
+ incoming_address = gen_rtx_REG (Pmode, PIC_FUNCTION_ADDR_REGNUM);
+ emit_insn (gen_loadgp (offset, incoming_address));
+ if (!TARGET_EXPLICIT_RELOCS)
+ emit_insn (gen_loadgp_blockage ());
+ }
+}
+
/* Set up the stack and frame (if desired) for the function. */
static void
@@ -6554,6 +6728,11 @@ mips_output_function_prologue (FILE *file, HOST_WIDE_INT size ATTRIBUTE_UNUSED)
}
else if (cfun->machine->all_noreorder_p)
output_asm_insn ("%(%<", 0);
+
+ /* Tell the assembler which register we're using as the global
+ pointer. This is needed for thunks, since they can use either
+ explicit relocs or assembler macros. */
+ mips_output_cplocal ();
}
/* Make the last instruction frame related and note that it performs
@@ -6709,18 +6888,7 @@ mips_expand_prologue (void)
if (TARGET_ABICALLS && !TARGET_NEWABI && !current_function_is_leaf)
emit_insn (gen_cprestore (GEN_INT (current_function_outgoing_args_size)));
- /* If generating n32/n64 abicalls, emit the instructions to load $gp. */
- if (TARGET_ABICALLS && TARGET_NEWABI && cfun->machine->global_pointer > 0)
- {
- rtx addr, offset, incoming_address;
-
- addr = XEXP (DECL_RTL (current_function_decl), 0);
- offset = mips_unspec_address (addr, SYMBOL_GOTOFF_LOADGP);
- incoming_address = gen_rtx_REG (Pmode, PIC_FUNCTION_ADDR_REGNUM);
- emit_insn (gen_loadgp (offset, incoming_address));
- if (!TARGET_EXPLICIT_RELOCS)
- emit_insn (gen_loadgp_blockage ());
- }
+ mips_emit_loadgp ();
/* If we are profiling, make sure no instructions are scheduled before
the call to mcount. */
@@ -6741,6 +6909,10 @@ mips_output_function_epilogue (FILE *file ATTRIBUTE_UNUSED,
{
rtx string;
+ /* Reinstate the normal $gp. */
+ REGNO (pic_offset_table_rtx) = GLOBAL_POINTER_REGNUM;
+ mips_output_cplocal ();
+
if (cfun->machine->all_noreorder_p)
{
/* Avoid using %>%) since it adds excess whitespace. */
@@ -6781,9 +6953,6 @@ mips_output_function_epilogue (FILE *file ATTRIBUTE_UNUSED,
for (string = mips16_strings; string != 0; string = XEXP (string, 1))
SYMBOL_REF_FLAG (XEXP (string, 0)) = 0;
free_EXPR_LIST_list (&mips16_strings);
-
- /* Reinstate the normal $gp. */
- REGNO (pic_offset_table_rtx) = GLOBAL_POINTER_REGNUM;
}
/* Emit instructions to restore register REG from slot MEM. */
@@ -6954,6 +7123,132 @@ mips_can_use_return_insn (void)
return compute_frame_size (get_frame_size ()) == 0;
}
+/* Implement TARGET_ASM_OUTPUT_MI_THUNK. Generate rtl rather than asm text
+ in order to avoid duplicating too much logic from elsewhere. */
+
+static void
+mips_output_mi_thunk (FILE *file, tree thunk_fndecl ATTRIBUTE_UNUSED,
+ HOST_WIDE_INT delta, HOST_WIDE_INT vcall_offset,
+ tree function)
+{
+ rtx this, temp1, temp2, insn, fnaddr;
+
+ /* Pretend to be a post-reload pass while generating rtl. */
+ no_new_pseudos = 1;
+ reload_completed = 1;
+
+ /* Pick a global pointer for -mabicalls. Use $15 rather than $28
+ for TARGET_NEWABI since the latter is a call-saved register. */
+ if (TARGET_ABICALLS)
+ cfun->machine->global_pointer
+ = REGNO (pic_offset_table_rtx)
+ = TARGET_NEWABI ? 15 : GLOBAL_POINTER_REGNUM;
+
+ /* Set up the global pointer for n32 or n64 abicalls. */
+ mips_emit_loadgp ();
+
+ /* We need two temporary registers in some cases. */
+ temp1 = gen_rtx_REG (Pmode, 2);
+ temp2 = gen_rtx_REG (Pmode, 3);
+
+ /* Find out which register contains the "this" pointer. */
+ if (aggregate_value_p (TREE_TYPE (TREE_TYPE (function)), function))
+ this = gen_rtx_REG (Pmode, GP_ARG_FIRST + 1);
+ else
+ this = gen_rtx_REG (Pmode, GP_ARG_FIRST);
+
+ /* Add DELTA to THIS. */
+ if (delta != 0)
+ {
+ rtx offset = GEN_INT (delta);
+ if (!SMALL_OPERAND (delta))
+ {
+ emit_move_insn (temp1, offset);
+ offset = temp1;
+ }
+ emit_insn (gen_add3_insn (this, this, offset));
+ }
+
+ /* If needed, add *(*THIS + VCALL_OFFSET) to THIS. */
+ if (vcall_offset != 0)
+ {
+ rtx addr;
+
+ /* Set TEMP1 to *THIS. */
+ emit_move_insn (temp1, gen_rtx_MEM (Pmode, this));
+
+ /* Set ADDR to a legitimate address for *THIS + VCALL_OFFSET. */
+ if (SMALL_OPERAND (vcall_offset))
+ addr = gen_rtx_PLUS (Pmode, temp1, GEN_INT (vcall_offset));
+ else if (TARGET_MIPS16)
+ {
+ /* Load the full offset into a register so that we can use
+ an unextended instruction for the load itself. */
+ emit_move_insn (temp2, GEN_INT (vcall_offset));
+ emit_insn (gen_add3_insn (temp1, temp1, temp2));
+ addr = temp1;
+ }
+ else
+ {
+ /* Load the high part of the offset into a register and
+ leave the low part for the address. */
+ emit_move_insn (temp2, GEN_INT (CONST_HIGH_PART (vcall_offset)));
+ emit_insn (gen_add3_insn (temp1, temp1, temp2));
+ addr = gen_rtx_PLUS (Pmode, temp1,
+ GEN_INT (CONST_LOW_PART (vcall_offset)));
+ }
+
+ /* Load the offset and add it to THIS. */
+ emit_move_insn (temp1, gen_rtx_MEM (Pmode, addr));
+ emit_insn (gen_add3_insn (this, this, temp1));
+ }
+
+ /* Jump to the target function. Use a sibcall if direct jumps are
+ allowed, otherwise load the address into a register first. */
+ fnaddr = XEXP (DECL_RTL (function), 0);
+ if (TARGET_MIPS16 || TARGET_ABICALLS || TARGET_LONG_CALLS)
+ {
+ /* This is messy. gas treats "la $25,foo" as part of a call
+ sequence and may allow a global "foo" to be lazily bound.
+ The general move patterns therefore reject this combination.
+
+ In this context, lazy binding would actually be OK for o32 and o64,
+ but it's still wrong for n32 and n64; see mips_load_call_address.
+ We must therefore load the address via a temporary register if
+ mips_dangerous_for_la25_p.
+
+ If we jump to the temporary register rather than $25, the assembler
+ can use the move insn to fill the jump's delay slot. */
+ if (TARGET_ABICALLS && !mips_dangerous_for_la25_p (fnaddr))
+ temp1 = gen_rtx_REG (Pmode, PIC_FUNCTION_ADDR_REGNUM);
+ mips_load_call_address (temp1, fnaddr, true);
+
+ if (TARGET_ABICALLS && REGNO (temp1) != PIC_FUNCTION_ADDR_REGNUM)
+ emit_move_insn (gen_rtx_REG (Pmode, PIC_FUNCTION_ADDR_REGNUM), temp1);
+ emit_jump_insn (gen_indirect_jump (temp1));
+ }
+ else
+ {
+ insn = emit_call_insn (gen_sibcall_internal (fnaddr, const0_rtx));
+ SIBLING_CALL_P (insn) = 1;
+ }
+
+ /* Run just enough of rest_of_compilation. This sequence was
+ "borrowed" from alpha.c. */
+ insn = get_insns ();
+ insn_locators_initialize ();
+ split_all_insns_noflow ();
+ shorten_branches (insn);
+ final_start_function (insn, file, 1);
+ final (insn, file, 1, 0);
+ final_end_function ();
+
+ /* Clean up the vars set above. Note that final_end_function resets
+ the global pointer for us. */
+ reload_completed = 0;
+ no_new_pseudos = 0;
+}
+
/* Returns nonzero if X contains a SYMBOL_REF. */
static int
@@ -7051,6 +7346,11 @@ mips_in_small_data_p (tree decl)
if (TREE_CODE (decl) == STRING_CST || TREE_CODE (decl) == FUNCTION_DECL)
return false;
+ /* We don't yet generate small-data references for -mabicalls. See related
+ -G handling in override_options. */
+ if (TARGET_ABICALLS)
+ return false;
+
if (TREE_CODE (decl) == VAR_DECL && DECL_SECTION_NAME (decl) != 0)
{
const char *name;
@@ -7543,7 +7843,7 @@ mips16_gp_pseudo_reg (void)
{
if (cfun->machine->mips16_gp_pseudo_rtx == NULL_RTX)
{
- rtx const_gp;
+ rtx unspec;
rtx insn, scan;
cfun->machine->mips16_gp_pseudo_rtx = gen_reg_rtx (Pmode);
@@ -7551,10 +7851,10 @@ mips16_gp_pseudo_reg (void)
/* We want to initialize this to a value which gcc will believe
is constant. */
- const_gp = gen_rtx_CONST (Pmode, pic_offset_table_rtx);
start_sequence ();
+ unspec = gen_rtx_UNSPEC (VOIDmode, gen_rtvec (1, const0_rtx), UNSPEC_GP);
emit_move_insn (cfun->machine->mips16_gp_pseudo_rtx,
- const_gp);
+ gen_rtx_CONST (Pmode, unspec));
insn = get_insns ();
end_sequence ();
@@ -8042,223 +8342,6 @@ build_mips16_call_stub (rtx retval, rtx fn, rtx arg_size, int fp_code)
return 0;
}
-/* This function looks through the code for a function, and tries to
- optimize the usage of the $gp register. We arrange to copy $gp
- into a pseudo-register, and then let gcc's normal reload handling
- deal with the pseudo-register. Unfortunately, if reload choose to
- put the pseudo-register into a call-clobbered register, it will
- emit saves and restores for that register around any function
- calls. We don't need the saves, and it's faster to copy $gp than
- to do an actual restore. ??? This still means that we waste a
- stack slot.
-
- This is an optimization, and the code which gcc has actually
- generated is correct, so we do not need to catch all cases. */
-
-static void
-mips16_optimize_gp (void)
-{
- rtx gpcopy, slot, insn;
-
- /* Look through the instructions. Set GPCOPY to the register which
- holds a copy of $gp. Set SLOT to the stack slot where it is
- saved. If we find an instruction which sets GPCOPY to anything
- other than $gp or SLOT, then we can't use it. If we find an
- instruction which sets SLOT to anything other than GPCOPY, we
- can't use it. */
-
- gpcopy = NULL_RTX;
- slot = NULL_RTX;
- for (insn = get_insns (); insn != NULL_RTX; insn = next_active_insn (insn))
- {
- rtx set;
-
- if (! INSN_P (insn))
- continue;
-
- set = PATTERN (insn);
-
- /* We know that all references to memory will be inside a SET,
- because there is no other way to access memory on the mips16.
- We don't have to worry about a PARALLEL here, because the
- mips.md file will never generate them for memory references. */
- if (GET_CODE (set) != SET)
- continue;
-
- if (gpcopy == NULL_RTX
- && GET_CODE (SET_SRC (set)) == CONST
- && XEXP (SET_SRC (set), 0) == pic_offset_table_rtx
- && GET_CODE (SET_DEST (set)) == REG)
- gpcopy = SET_DEST (set);
- else if (slot == NULL_RTX
- && gpcopy != NULL_RTX
- && GET_CODE (SET_DEST (set)) == MEM
- && GET_CODE (SET_SRC (set)) == REG
- && REGNO (SET_SRC (set)) == REGNO (gpcopy))
- {
- rtx base, offset;
-
- offset = const0_rtx;
- base = eliminate_constant_term (XEXP (SET_DEST (set), 0), &offset);
- if (GET_CODE (base) == REG
- && (REGNO (base) == STACK_POINTER_REGNUM
- || REGNO (base) == FRAME_POINTER_REGNUM))
- slot = SET_DEST (set);
- }
- else if (gpcopy != NULL_RTX
- && (GET_CODE (SET_DEST (set)) == REG
- || GET_CODE (SET_DEST (set)) == SUBREG)
- && reg_overlap_mentioned_p (SET_DEST (set), gpcopy)
- && (GET_CODE (SET_DEST (set)) != REG
- || REGNO (SET_DEST (set)) != REGNO (gpcopy)
- || ((GET_CODE (SET_SRC (set)) != CONST
- || XEXP (SET_SRC (set), 0) != pic_offset_table_rtx)
- && ! rtx_equal_p (SET_SRC (set), slot))))
- break;
- else if (slot != NULL_RTX
- && GET_CODE (SET_DEST (set)) == MEM
- && rtx_equal_p (SET_DEST (set), slot)
- && (GET_CODE (SET_SRC (set)) != REG
- || REGNO (SET_SRC (set)) != REGNO (gpcopy)))
- break;
- }
-
- /* If we couldn't find a unique value for GPCOPY or SLOT, then try a
- different optimization. Any time we find a copy of $28 into a
- register, followed by an add of a symbol_ref to that register, we
- convert it to load the value from the constant table instead.
- The copy and add will take six bytes, just as the load and
- constant table entry will take six bytes. However, it is
- possible that the constant table entry will be shared.
-
- This could be a peephole optimization, but I don't know if the
- peephole code can call force_const_mem.
-
- Using the same register for the copy of $28 and the add of the
- symbol_ref is actually pretty likely, since the add instruction
- requires the destination and the first addend to be the same
- register. */
-
- if (insn != NULL_RTX || gpcopy == NULL_RTX || slot == NULL_RTX)
- {
-#if 0
- /* Used below in #if 0 area. */
- rtx next;
-#endif
- /* This optimization is only reasonable if the constant table
- entries are only 4 bytes. */
- if (Pmode != SImode)
- return;
-
-#if 0
- /* ??? FIXME. Rewrite for new UNSPEC_RELOC stuff. */
- for (insn = get_insns (); insn != NULL_RTX; insn = next)
- {
- rtx set1, set2;
-
- next = insn;
- do
- {
- next = NEXT_INSN (next);
- }
- while (next != NULL_RTX
- && (GET_CODE (next) == NOTE
- || (GET_CODE (next) == INSN
- && (GET_CODE (PATTERN (next)) == USE
- || GET_CODE (PATTERN (next)) == CLOBBER))));
-
- if (next == NULL_RTX)
- break;
-
- if (! INSN_P (insn))
- continue;
-
- if (! INSN_P (next))
- continue;
-
- set1 = PATTERN (insn);
- if (GET_CODE (set1) != SET)
- continue;
- set2 = PATTERN (next);
- if (GET_CODE (set2) != SET)
- continue;
-
- if (GET_CODE (SET_DEST (set1)) == REG
- && GET_CODE (SET_SRC (set1)) == CONST
- && XEXP (SET_SRC (set1), 0) == pic_offset_table_rtx
- && rtx_equal_p (SET_DEST (set1), SET_DEST (set2))
- && GET_CODE (SET_SRC (set2)) == PLUS
- && rtx_equal_p (SET_DEST (set1), XEXP (SET_SRC (set2), 0))
- && mips16_gp_offset_p (XEXP (SET_SRC (set2), 1))
- && GET_CODE (XEXP (XEXP (SET_SRC (set2), 1), 0)) == MINUS)
- {
- rtx sym;
-
- /* We've found a case we can change to load from the
- constant table. */
-
- sym = XEXP (XEXP (XEXP (SET_SRC (set2), 1), 0), 0);
- if (GET_CODE (sym) != SYMBOL_REF)
- abort ();
- emit_insn_after (gen_rtx (SET, VOIDmode, SET_DEST (set1),
- force_const_mem (Pmode, sym)),
- next);
-
- PUT_CODE (insn, NOTE);
- NOTE_LINE_NUMBER (insn) = NOTE_INSN_DELETED;
- NOTE_SOURCE_FILE (insn) = 0;
-
- PUT_CODE (next, NOTE);
- NOTE_LINE_NUMBER (next) = NOTE_INSN_DELETED;
- NOTE_SOURCE_FILE (next) = 0;
- }
- }
-#endif
-
- return;
- }
- /* We can safely remove all assignments to SLOT from GPCOPY, and
- replace all assignments from SLOT to GPCOPY with assignments from
- $28. */
-
- for (insn = get_insns (); insn != NULL_RTX; insn = next_active_insn (insn))
- {
- rtx set;
-
- if (! INSN_P (insn))
- continue;
-
- set = PATTERN (insn);
- if (GET_CODE (set) != SET)
- continue;
-
- if (GET_CODE (SET_DEST (set)) == MEM
- && rtx_equal_p (SET_DEST (set), slot)
- && GET_CODE (SET_SRC (set)) == REG
- && REGNO (SET_SRC (set)) == REGNO (gpcopy))
- {
- PUT_CODE (insn, NOTE);
- NOTE_LINE_NUMBER (insn) = NOTE_INSN_DELETED;
- NOTE_SOURCE_FILE (insn) = 0;
- }
- else if (GET_CODE (SET_DEST (set)) == REG
- && REGNO (SET_DEST (set)) == REGNO (gpcopy)
- && GET_CODE (SET_SRC (set)) == MEM
- && rtx_equal_p (SET_SRC (set), slot))
- {
- enum machine_mode mode;
- rtx src;
-
- mode = GET_MODE (SET_DEST (set));
- src = gen_rtx_CONST (mode, pic_offset_table_rtx);
- emit_insn_after (gen_rtx_SET (VOIDmode, SET_DEST (set), src), insn);
- PUT_CODE (insn, NOTE);
- NOTE_LINE_NUMBER (insn) = NOTE_INSN_DELETED;
- NOTE_SOURCE_FILE (insn) = 0;
- }
- }
-}
-
/* We keep a list of constants we which we have to add to internal
constant tables in the middle of large functions. */
@@ -8707,11 +8790,7 @@ static void
mips_reorg (void)
{
if (TARGET_MIPS16)
- {
- if (optimize)
- mips16_optimize_gp ();
- mips16_lay_out_constants ();
- }
+ mips16_lay_out_constants ();
else if (TARGET_EXPLICIT_RELOCS)
{
if (mips_flag_delayed_branch)
@@ -9108,7 +9187,7 @@ mips_output_conditional_branch (rtx insn, rtx *operands, int two_operands_p,
/* Output delay slot instruction. */
rtx insn = final_sequence;
final_scan_insn (XVECEXP (insn, 0, 1), asm_out_file,
- optimize, 0, 1);
+ optimize, 0, 1, NULL);
INSN_DELETED_P (XVECEXP (insn, 0, 1)) = 1;
}
else
@@ -9127,7 +9206,7 @@ mips_output_conditional_branch (rtx insn, rtx *operands, int two_operands_p,
/* Output delay slot instruction. */
rtx insn = final_sequence;
final_scan_insn (XVECEXP (insn, 0, 1), asm_out_file,
- optimize, 0, 1);
+ optimize, 0, 1, NULL);
INSN_DELETED_P (XVECEXP (insn, 0, 1)) = 1;
}
else
diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h
index 049933a6a86..598a7f826fc 100644
--- a/gcc/config/mips/mips.h
+++ b/gcc/config/mips/mips.h
@@ -290,9 +290,22 @@ extern const struct mips_cpu_info *mips_tune_info;
(!TARGET_MIPS16 && (!TARGET_ABICALLS || TARGET_EXPLICIT_RELOCS))
/* True if .gpword or .gpdword should be used for switch tables.
- Not all SGI assemblers support this. */
+ There are some problems with using these directives with the
+ native IRIX tools:
-#define TARGET_GPWORD (TARGET_ABICALLS && (!TARGET_NEWABI || TARGET_GAS))
+ - It has been reported that some versions of the native n32
+ assembler mishandle .gpword, complaining that symbols are
+ global when they are in fact local.
+
+ - The native assemblers don't understand .gpdword.
+
+ - Although GAS does understand .gpdword, the native linker
+ mishandles the relocations GAS generates (R_MIPS_GPREL32
+ followed by R_MIPS_64).
+
+ We therefore disable GP-relative switch tables for n32 and n64
+ on IRIX targets. */
+#define TARGET_GPWORD (TARGET_ABICALLS && !(TARGET_NEWABI && TARGET_IRIX))
/* Generate mips16 code */
#define TARGET_MIPS16 (target_flags & MASK_MIPS16)
@@ -1295,8 +1308,10 @@ extern const struct mips_cpu_info *mips_tune_info;
/* The largest size of value that can be held in floating-point
registers. */
-#define UNITS_PER_FPVALUE \
- (TARGET_SOFT_FLOAT ? 0 : (LONG_DOUBLE_TYPE_SIZE / BITS_PER_UNIT))
+#define UNITS_PER_FPVALUE \
+ (TARGET_SOFT_FLOAT ? 0 \
+ : TARGET_SINGLE_FLOAT ? UNITS_PER_FPREG \
+ : LONG_DOUBLE_TYPE_SIZE / BITS_PER_UNIT)
/* The number of bytes in a double. */
#define UNITS_PER_DOUBLE (TYPE_PRECISION (double_type_node) / BITS_PER_UNIT)
@@ -1474,8 +1489,11 @@ extern const struct mips_cpu_info *mips_tune_info;
- 8 condition code registers
- 2 accumulator registers (hi and lo)
- 32 registers each for coprocessors 0, 2 and 3
- - FAKE_CALL_REGNO (see the comment above load_callsi for details)
- - 5 dummy entries that were used at various times in the past. */
+ - 3 fake registers:
+ - ARG_POINTER_REGNUM
+ - FRAME_POINTER_REGNUM
+ - FAKE_CALL_REGNO (see the comment above load_callsi for details)
+ - 3 dummy entries that were used at various times in the past. */
#define FIRST_PSEUDO_REGISTER 176
@@ -1661,11 +1679,10 @@ extern char mips_hard_regno_mode_ok[][FIRST_PSEUDO_REGISTER];
/* Register to use for pushing function arguments. */
#define STACK_POINTER_REGNUM (GP_REG_FIRST + 29)
-/* Base register for access to local variables of the function. We
- pretend that the frame pointer is $1, and then eliminate it to
- HARD_FRAME_POINTER_REGNUM. We can get away with this because $1 is
- a fixed register, and will not be used for anything else. */
-#define FRAME_POINTER_REGNUM (GP_REG_FIRST + 1)
+/* These two registers don't really exist: they get eliminated to either
+ the stack or hard frame pointer. */
+#define ARG_POINTER_REGNUM 77
+#define FRAME_POINTER_REGNUM 78
/* $30 is not available on the mips16, so we use $17 as the frame
pointer. */
@@ -1678,9 +1695,6 @@ extern char mips_hard_regno_mode_ok[][FIRST_PSEUDO_REGISTER];
This is computed in `reload', in reload1.c. */
#define FRAME_POINTER_REQUIRED (current_function_calls_alloca)
-/* Base register for access to arguments of the function. */
-#define ARG_POINTER_REGNUM GP_REG_FIRST
-
/* Register in which static-chain is passed to a function. */
#define STATIC_CHAIN_REGNUM (GP_REG_FIRST + 2)
@@ -2300,7 +2314,7 @@ typedef struct mips_args {
for a call to a function whose data type is FNTYPE.
For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
init_cumulative_args (&CUM, FNTYPE, LIBNAME) \
/* Update the data in CUM to advance over an argument
@@ -2510,31 +2524,9 @@ typedef struct mips_args {
/* Addressing modes, and classification of registers for them. */
-/* These assume that REGNO is a hard or pseudo reg number.
- They give nonzero only if REGNO is a hard reg of the suitable class
- or a pseudo reg currently allocated to a suitable hard reg.
- These definitions are NOT overridden anywhere. */
-
-#define BASE_REG_P(regno, mode) \
- (TARGET_MIPS16 \
- ? (M16_REG_P (regno) \
- || (regno) == FRAME_POINTER_REGNUM \
- || (regno) == ARG_POINTER_REGNUM \
- || ((regno) == STACK_POINTER_REGNUM \
- && (GET_MODE_SIZE (mode) == 4 \
- || GET_MODE_SIZE (mode) == 8))) \
- : GP_REG_P (regno))
-
-#define GP_REG_OR_PSEUDO_STRICT_P(regno, mode) \
- BASE_REG_P((regno < FIRST_PSEUDO_REGISTER) ? (int) regno : reg_renumber[regno], \
- (mode))
-
-#define GP_REG_OR_PSEUDO_NONSTRICT_P(regno, mode) \
- (((regno) >= FIRST_PSEUDO_REGISTER) || (BASE_REG_P ((regno), (mode))))
-
-#define REGNO_OK_FOR_INDEX_P(regno) 0
-#define REGNO_MODE_OK_FOR_BASE_P(regno, mode) \
- GP_REG_OR_PSEUDO_STRICT_P ((regno), (mode))
+#define REGNO_OK_FOR_INDEX_P(REGNO) 0
+#define REGNO_MODE_OK_FOR_BASE_P(REGNO, MODE) \
+ mips_regno_mode_ok_for_base_p (REGNO, MODE, 1)
/* The macros REG_OK_FOR..._P assume that the arg is a REG rtx
and check its validity for a certain class.
@@ -2549,10 +2541,10 @@ typedef struct mips_args {
#ifndef REG_OK_STRICT
#define REG_MODE_OK_FOR_BASE_P(X, MODE) \
- mips_reg_mode_ok_for_base_p (X, MODE, 0)
+ mips_regno_mode_ok_for_base_p (REGNO (X), MODE, 0)
#else
#define REG_MODE_OK_FOR_BASE_P(X, MODE) \
- mips_reg_mode_ok_for_base_p (X, MODE, 1)
+ mips_regno_mode_ok_for_base_p (REGNO (X), MODE, 1)
#endif
#define REG_OK_FOR_INDEX_P(X) 0
@@ -3216,28 +3208,7 @@ while (0)
/* This says how to define a global common symbol. */
-#define ASM_OUTPUT_ALIGNED_DECL_COMMON(STREAM, DECL, NAME, SIZE, ALIGN) \
- do { \
- /* If the target wants uninitialized const declarations in \
- .rdata then don't put them in .comm */ \
- if (TARGET_EMBEDDED_DATA && TARGET_UNINIT_CONST_IN_RODATA \
- && TREE_CODE (DECL) == VAR_DECL && TREE_READONLY (DECL) \
- && (DECL_INITIAL (DECL) == 0 \
- || DECL_INITIAL (DECL) == error_mark_node)) \
- { \
- if (TREE_PUBLIC (DECL) && DECL_NAME (DECL)) \
- (*targetm.asm_out.globalize_label) (STREAM, NAME); \
- \
- readonly_data_section (); \
- ASM_OUTPUT_ALIGN (STREAM, floor_log2 (ALIGN / BITS_PER_UNIT)); \
- mips_declare_object (STREAM, NAME, "", ":\n\t.space\t%u\n", \
- (SIZE)); \
- } \
- else \
- mips_declare_object (STREAM, NAME, "\n\t.comm\t", ",%u\n", \
- (SIZE)); \
- } while (0)
-
+#define ASM_OUTPUT_ALIGNED_DECL_COMMON mips_output_aligned_decl_common
/* This says how to define a local common symbol (ie, not visible to
linker). */
@@ -3338,7 +3309,7 @@ do { \
/* This is how to output a string. */
#undef ASM_OUTPUT_ASCII
#define ASM_OUTPUT_ASCII(STREAM, STRING, LEN) \
- mips_output_ascii (STREAM, STRING, LEN)
+ mips_output_ascii (STREAM, STRING, LEN, "\t.ascii\t")
/* Output #ident as a in the read-only data section. */
#undef ASM_OUTPUT_IDENT
diff --git a/gcc/config/mips/mips.md b/gcc/config/mips/mips.md
index 2b39f3a05fd..f7e68d89e33 100644
--- a/gcc/config/mips/mips.md
+++ b/gcc/config/mips/mips.md
@@ -1,6 +1,6 @@
;; Mips.md Machine Description for MIPS based processors
;; Copyright (C) 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-;; 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+;; 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
;; Contributed by A. Lichnewsky, lich@inria.inria.fr
;; Changes by Michael Meissner, meissner@osf.org
;; 64 bit r4000 support by Ian Lance Taylor, ian@cygnus.com, and
@@ -55,6 +55,7 @@
(UNSPEC_SDR 25)
(UNSPEC_LOADGP 26)
(UNSPEC_LOAD_CALL 27)
+ (UNSPEC_GP 29)
(UNSPEC_ADDRESS_FIRST 100)
@@ -976,7 +977,7 @@
(define_insn "adddi3_internal_2"
[(set (match_operand:DI 0 "register_operand" "=d,d,d")
- (plus:DI (match_operand:DI 1 "register_operand" "%d,%d,%d")
+ (plus:DI (match_operand:DI 1 "register_operand" "%d,d,d")
(match_operand:DI 2 "small_int" "P,J,N")))
(clobber (match_operand:SI 3 "register_operand" "=d,d,d"))]
"!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16"
@@ -4058,6 +4059,10 @@ dsrl\t%3,%3,1\n\
;; refers to just the first or the last byte (depending on endianness).
;; We therefore use two memory operands to each instruction, one to
;; describe the rtl effect and one to use in the assembly output.
+;;
+;; Operands 0 and 1 are the rtl-level target and source respectively.
+;; This allows us to use the standard length calculations for the "load"
+;; and "store" type attributes.
(define_insn "mov_lwl"
[(set (match_operand:SI 0 "register_operand" "=d")
@@ -8123,8 +8128,15 @@ srl\t%M0,%M1,%2\n\
(clobber (match_operand:SI 2 "register_operand" "=d"))
(clobber (reg:SI 31))]
"TARGET_EMBEDDED_PIC"
- "%(bal\t%S1\;sll\t%2,%0,2\n%~%S1:\;addu\t%2,%2,$31%)\;\
-lw\t%2,%1-%S1(%2)\;addu\t%2,%2,$31\;%*j\t%2%/"
+ {
+ if (set_nomacro)
+ return "%(bal\\t%S1\;sll\\t%2,%0,2\\n%~%S1:\;addu\\t%2,%2,$31%)\;\\
+.set macro\;lw\\t%2,%1-%S1(%2)\;.set nomacro\;addu\\t%2,%2,$31\\n\\t%*j\\t%2%/";
+ return
+ "%(bal\\t%S1\;sll\\t%2,%0,2\\n%~%S1:\;addu\\t%2,%2,$31%)\;\\
+lw\\t%2,%1-%S1(%2)\;addu\\t%2,%2,$31\\n\\t%*j\\t%2%/"
+ ;
+ }
[(set_attr "type" "jump")
(set_attr "mode" "none")
(set_attr "length" "24")])
@@ -8140,8 +8152,15 @@ lw\t%2,%1-%S1(%2)\;addu\t%2,%2,$31\;%*j\t%2%/"
(clobber (match_operand:DI 2 "register_operand" "=d"))
(clobber (reg:DI 31))]
"TARGET_EMBEDDED_PIC"
- "%(bal\t%S1\;sll\t%2,%0,3\n%~%S1:\;daddu\t%2,%2,$31%)\;\
-ld\t%2,%1-%S1(%2)\;daddu\t%2,%2,$31\;%*j\t%2%/"
+ {
+ if (set_nomacro)
+ return "%(bal\\t%S1\;sll\\t%2,%0,3\\n%~%S1:\;daddu\\t%2,%2,$31%)\;\\
+.set macro\;ld\\t%2,%1-%S1(%2)\;.set nomacro\;daddu\\t%2,%2,$31\\n\\t%*j\\t%2%/";
+ return
+ "%(bal\\t%S1\;sll\\t%2,%0,3\\n%~%S1:\;daddu\\t%2,%2,$31%)\;\\
+ld\\t%2,%1-%S1(%2)\;daddu\\t%2,%2,$31\\n\\t%*j\\t%2%/"
+ ;
+ }
[(set_attr "type" "jump")
(set_attr "mode" "none")
(set_attr "length" "24")])
diff --git a/gcc/config/mips/netbsd.h b/gcc/config/mips/netbsd.h
index 24c88139937..9d75e8efbfc 100644
--- a/gcc/config/mips/netbsd.h
+++ b/gcc/config/mips/netbsd.h
@@ -1,5 +1,5 @@
/* Definitions of target machine for GNU compiler, for MIPS NetBSD systems.
- Copyright (C) 1993, 1995, 1996, 1997, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1993, 1995, 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/mips/openbsd.h b/gcc/config/mips/openbsd.h
index bea4981073f..7faeeb5ec8d 100644
--- a/gcc/config/mips/openbsd.h
+++ b/gcc/config/mips/openbsd.h
@@ -1,5 +1,5 @@
/* Configuration for a Mips ABI32 OpenBSD target.
- Copyright (C) 1999, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/mips/t-iris5-as b/gcc/config/mips/t-iris5-as
index a1e48956a56..4e111fa75a0 100644
--- a/gcc/config/mips/t-iris5-as
+++ b/gcc/config/mips/t-iris5-as
@@ -5,3 +5,7 @@ BOOT_CFLAGS = -O2 -save-temps
# omit -g1
LIBGCC2_DEBUG_CFLAGS =
+
+# omit -g
+FORCE_DEBUG_ADAFLAGS =
+GNATLIBCFLAGS = -O2
diff --git a/gcc/config/mips/t-iris6gld b/gcc/config/mips/t-iris6gld
deleted file mode 100644
index 2926be0cb44..00000000000
--- a/gcc/config/mips/t-iris6gld
+++ /dev/null
@@ -1,9 +0,0 @@
-$(T)irix6-crti.o: $(srcdir)/config/mips/irix6-crti.asm $(GCC_PASSES)
- $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \
- -c -o $@ -x assembler-with-cpp $<
-
-$(T)irix6-crtn.o: $(srcdir)/config/mips/irix6-crtn.asm $(GCC_PASSES)
- $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \
- -c -o $@ -x assembler-with-cpp $<
-
-EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o irix6-crti.o irix6-crtn.o
diff --git a/gcc/config/mips/t-irix-gld b/gcc/config/mips/t-irix-gld
new file mode 100644
index 00000000000..1e7ceafaff9
--- /dev/null
+++ b/gcc/config/mips/t-irix-gld
@@ -0,0 +1,9 @@
+$(T)irix-crti.o: $(srcdir)/config/mips/irix-crti.asm $(GCC_PASSES)
+ $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \
+ -c -o $@ -x assembler-with-cpp $<
+
+$(T)irix-crtn.o: $(srcdir)/config/mips/irix-crtn.asm $(GCC_PASSES)
+ $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \
+ -c -o $@ -x assembler-with-cpp $<
+
+EXTRA_MULTILIB_PARTS += irix-crti.o irix-crtn.o
diff --git a/gcc/config/mips/windiss.h b/gcc/config/mips/windiss.h
index 32b92b61a36..0f8ef7e1663 100644
--- a/gcc/config/mips/windiss.h
+++ b/gcc/config/mips/windiss.h
@@ -1,5 +1,5 @@
/* Support for GCC on MIPS using WindISS simulator.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by CodeSourcery, LLC.
This file is part of GCC.
diff --git a/gcc/config/mmix/mmix.h b/gcc/config/mmix/mmix.h
index 62a258eccf7..b1a18d4ab20 100644
--- a/gcc/config/mmix/mmix.h
+++ b/gcc/config/mmix/mmix.h
@@ -745,7 +745,7 @@ enum reg_class
typedef struct { int regs; int lib; } CUMULATIVE_ARGS;
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM).regs = 0, (CUM).lib = ((LIBNAME) != 0))
#define FUNCTION_ARG_ADVANCE(CUM, MODE, TYPE, NAMED) \
diff --git a/gcc/config/mn10300/mn10300.c b/gcc/config/mn10300/mn10300.c
index 74aab427d71..e50611668c7 100644
--- a/gcc/config/mn10300/mn10300.c
+++ b/gcc/config/mn10300/mn10300.c
@@ -1,5 +1,5 @@
/* Subroutines for insn-output.c for Matsushita MN10300 series
- Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Contributed by Jeff Law (law@cygnus.com).
diff --git a/gcc/config/mn10300/mn10300.h b/gcc/config/mn10300/mn10300.h
index 9aaf7ffc5ff..4a24ff927bc 100644
--- a/gcc/config/mn10300/mn10300.h
+++ b/gcc/config/mn10300/mn10300.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler.
Matsushita MN10300 series
- Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Contributed by Jeff Law (law@cygnus.com).
@@ -563,7 +563,7 @@ struct cum_arg {int nbytes; };
On the MN10300, the offset starts at 0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM).nbytes = 0)
/* Update the data in CUM to advance over an argument
diff --git a/gcc/config/ns32k/ns32k.h b/gcc/config/ns32k/ns32k.h
index 091b138a18c..bdafe1d2ecf 100644
--- a/gcc/config/ns32k/ns32k.h
+++ b/gcc/config/ns32k/ns32k.h
@@ -675,7 +675,7 @@ enum reg_class
On the ns32k, the offset starts at 0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM) = 0)
/* Update the data in CUM to advance over an argument
diff --git a/gcc/config/pa/pa-protos.h b/gcc/config/pa/pa-protos.h
index 9bf5e97e32c..848997e4d3e 100644
--- a/gcc/config/pa/pa-protos.h
+++ b/gcc/config/pa/pa-protos.h
@@ -1,5 +1,5 @@
/* Prototypes for pa.c functions used in the md file & elsewhere.
- Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -137,7 +137,7 @@ extern struct rtx_def *hppa_builtin_saveregs (void);
extern void override_options (void);
extern void output_ascii (FILE *, const char *, int);
-extern int compute_frame_size (int, int *);
+extern HOST_WIDE_INT compute_frame_size (HOST_WIDE_INT, int *);
extern int and_mask_p (unsigned HOST_WIDE_INT);
extern int cint_ok_for_move (HOST_WIDE_INT);
extern void hppa_expand_prologue (void);
diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c
index 1f8622d30f4..1c994d5b2d1 100644
--- a/gcc/config/pa/pa.c
+++ b/gcc/config/pa/pa.c
@@ -1,6 +1,6 @@
/* Subroutines for insn-output.c for HPPA.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
- 2002, 2003 Free Software Foundation, Inc.
+ 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Tim Moore (moore@cs.utah.edu), based on sparc.c
This file is part of GCC.
@@ -107,10 +107,10 @@ static int compute_movstr_length (rtx);
static int compute_clrstr_length (rtx);
static bool pa_assemble_integer (rtx, unsigned int, int);
static void remove_useless_addtr_insns (int);
-static void store_reg (int, int, int);
-static void store_reg_modify (int, int, int);
-static void load_reg (int, int, int);
-static void set_reg_plus_d (int, int, int, int);
+static void store_reg (int, HOST_WIDE_INT, int);
+static void store_reg_modify (int, int, HOST_WIDE_INT);
+static void load_reg (int, HOST_WIDE_INT, int);
+static void set_reg_plus_d (int, int, HOST_WIDE_INT, int);
static void pa_output_function_prologue (FILE *, HOST_WIDE_INT);
static void update_total_code_bytes (int);
static void pa_output_function_epilogue (FILE *, HOST_WIDE_INT);
@@ -1552,13 +1552,13 @@ emit_move_sequence (rtx *operands, enum machine_mode mode, rtx scratch_reg)
/* Handle secondary reloads for loads/stores of FP registers from
REG+D addresses where D does not fit in 5 bits, including
(subreg (mem (addr))) cases. */
- if (fp_reg_operand (operand0, mode)
+ if (scratch_reg
+ && fp_reg_operand (operand0, mode)
&& ((GET_CODE (operand1) == MEM
&& !memory_address_p (DFmode, XEXP (operand1, 0)))
|| ((GET_CODE (operand1) == SUBREG
&& GET_CODE (XEXP (operand1, 0)) == MEM
- && !memory_address_p (DFmode, XEXP (XEXP (operand1, 0), 0)))))
- && scratch_reg)
+ && !memory_address_p (DFmode, XEXP (XEXP (operand1, 0), 0))))))
{
if (GET_CODE (operand1) == SUBREG)
operand1 = XEXP (operand1, 0);
@@ -1585,14 +1585,14 @@ emit_move_sequence (rtx *operands, enum machine_mode mode, rtx scratch_reg)
gen_rtx_MEM (mode, scratch_reg)));
return 1;
}
- else if (fp_reg_operand (operand1, mode)
+ else if (scratch_reg
+ && fp_reg_operand (operand1, mode)
&& ((GET_CODE (operand0) == MEM
&& ! memory_address_p (DFmode, XEXP (operand0, 0)))
|| ((GET_CODE (operand0) == SUBREG)
&& GET_CODE (XEXP (operand0, 0)) == MEM
&& !memory_address_p (DFmode,
- XEXP (XEXP (operand0, 0), 0))))
- && scratch_reg)
+ XEXP (XEXP (operand0, 0), 0)))))
{
if (GET_CODE (operand0) == SUBREG)
operand0 = XEXP (operand0, 0);
@@ -1623,15 +1623,15 @@ emit_move_sequence (rtx *operands, enum machine_mode mode, rtx scratch_reg)
/* Handle secondary reloads for loads of FP registers from constant
expressions by forcing the constant into memory.
- use scratch_reg to hold the address of the memory location.
+ Use scratch_reg to hold the address of the memory location.
The proper fix is to change PREFERRED_RELOAD_CLASS to return
NO_REGS when presented with a const_int and a register class
containing only FP registers. Doing so unfortunately creates
more problems than it solves. Fix this for 2.5. */
- else if (fp_reg_operand (operand0, mode)
+ else if (scratch_reg
&& CONSTANT_P (operand1)
- && scratch_reg)
+ && fp_reg_operand (operand0, mode))
{
rtx xoperands[2];
@@ -1653,14 +1653,14 @@ emit_move_sequence (rtx *operands, enum machine_mode mode, rtx scratch_reg)
}
/* Handle secondary reloads for SAR. These occur when trying to load
the SAR from memory, FP register, or with a constant. */
- else if (GET_CODE (operand0) == REG
+ else if (scratch_reg
+ && GET_CODE (operand0) == REG
&& REGNO (operand0) < FIRST_PSEUDO_REGISTER
&& REGNO_REG_CLASS (REGNO (operand0)) == SHIFT_REGS
&& (GET_CODE (operand1) == MEM
|| GET_CODE (operand1) == CONST_INT
|| (GET_CODE (operand1) == REG
- && FP_REG_CLASS_P (REGNO_REG_CLASS (REGNO (operand1)))))
- && scratch_reg)
+ && FP_REG_CLASS_P (REGNO_REG_CLASS (REGNO (operand1))))))
{
/* D might not fit in 14 bits either; for such cases load D into
scratch reg. */
@@ -1971,16 +1971,22 @@ emit_move_sequence (rtx *operands, enum machine_mode mode, rtx scratch_reg)
return 1;
}
else if (GET_CODE (operand1) != CONST_INT
- || ! cint_ok_for_move (INTVAL (operand1)))
+ || !cint_ok_for_move (INTVAL (operand1)))
{
- rtx extend = NULL_RTX;
- rtx temp;
+ rtx insn, temp;
+ rtx op1 = operand1;
+ HOST_WIDE_INT value = 0;
+ HOST_WIDE_INT insv = 0;
+ int insert = 0;
- if (TARGET_64BIT && GET_CODE (operand1) == CONST_INT
+ if (GET_CODE (operand1) == CONST_INT)
+ value = INTVAL (operand1);
+
+ if (TARGET_64BIT
+ && GET_CODE (operand1) == CONST_INT
&& HOST_BITS_PER_WIDE_INT > 32
&& GET_MODE_BITSIZE (GET_MODE (operand0)) > 32)
{
- HOST_WIDE_INT val = INTVAL (operand1);
HOST_WIDE_INT nval;
/* Extract the low order 32 bits of the value and sign extend.
@@ -1988,19 +1994,21 @@ emit_move_sequence (rtx *operands, enum machine_mode mode, rtx scratch_reg)
can use the original value as-is. If the new value is
different, we use it and insert the most-significant 32-bits
of the original value into the final result. */
- nval = ((val & (((HOST_WIDE_INT) 2 << 31) - 1))
+ nval = ((value & (((HOST_WIDE_INT) 2 << 31) - 1))
^ ((HOST_WIDE_INT) 1 << 31)) - ((HOST_WIDE_INT) 1 << 31);
- if (val != nval)
+ if (value != nval)
{
#if HOST_BITS_PER_WIDE_INT > 32
- extend = GEN_INT (val >> 32);
+ insv = value >= 0 ? value >> 32 : ~(~value >> 32);
#endif
+ insert = 1;
+ value = nval;
operand1 = GEN_INT (nval);
}
}
if (reload_in_progress || reload_completed)
- temp = operand0;
+ temp = scratch_reg ? scratch_reg : operand0;
else
temp = gen_reg_rtx (mode);
@@ -2008,7 +2016,8 @@ emit_move_sequence (rtx *operands, enum machine_mode mode, rtx scratch_reg)
because PLUS uses an 11-bit immediate and the insn sequence
generated is not as efficient as the one using HIGH/LO_SUM. */
if (GET_CODE (operand1) == CONST_INT
- && GET_MODE_BITSIZE (mode) <= HOST_BITS_PER_WIDE_INT)
+ && GET_MODE_BITSIZE (mode) <= HOST_BITS_PER_WIDE_INT
+ && !insert)
{
/* Directly break constant into high and low parts. This
provides better optimization opportunities because various
@@ -2016,7 +2025,6 @@ emit_move_sequence (rtx *operands, enum machine_mode mode, rtx scratch_reg)
We use a 14-bit signed low part except when the addition
of 0x4000 to the high part might change the sign of the
high part. */
- HOST_WIDE_INT value = INTVAL (operand1);
HOST_WIDE_INT low = value & 0x3fff;
HOST_WIDE_INT high = value & ~ 0x3fff;
@@ -2040,11 +2048,60 @@ emit_move_sequence (rtx *operands, enum machine_mode mode, rtx scratch_reg)
operands[1] = gen_rtx_LO_SUM (mode, temp, operand1);
}
- emit_move_insn (operands[0], operands[1]);
+ insn = emit_move_insn (operands[0], operands[1]);
+
+ /* Now insert the most significant 32 bits of the value
+ into the register. When we don't have a second register
+ available, it could take up to nine instructions to load
+ a 64-bit integer constant. Prior to reload, we force
+ constants that would take more than three instructions
+ to load to the constant pool. During and after reload,
+ we have to handle all possible values. */
+ if (insert)
+ {
+ /* Use a HIGH/LO_SUM/INSV sequence if we have a second
+ register and the value to be inserted is outside the
+ range that can be loaded with three depdi instructions. */
+ if (temp != operand0 && (insv >= 16384 || insv < -16384))
+ {
+ operand1 = GEN_INT (insv);
+
+ emit_insn (gen_rtx_SET (VOIDmode, temp,
+ gen_rtx_HIGH (mode, operand1)));
+ emit_move_insn (temp, gen_rtx_LO_SUM (mode, temp, operand1));
+ emit_insn (gen_insv (operand0, GEN_INT (32),
+ const0_rtx, temp));
+ }
+ else
+ {
+ int len = 5, pos = 27;
+
+ /* Insert the bits using the depdi instruction. */
+ while (pos >= 0)
+ {
+ HOST_WIDE_INT v5 = ((insv & 31) ^ 16) - 16;
+ HOST_WIDE_INT sign = v5 < 0;
- if (extend != NULL_RTX)
- emit_insn (gen_insv (operands[0], GEN_INT (32), const0_rtx,
- extend));
+ /* Left extend the insertion. */
+ insv = (insv >= 0 ? insv >> len : ~(~insv >> len));
+ while (pos > 0 && (insv & 1) == sign)
+ {
+ insv = (insv >= 0 ? insv >> 1 : ~(~insv >> 1));
+ len += 1;
+ pos -= 1;
+ }
+
+ emit_insn (gen_insv (operand0, GEN_INT (len),
+ GEN_INT (pos), GEN_INT (v5)));
+
+ len = pos > 0 && pos < 5 ? pos : 5;
+ pos -= len;
+ }
+ }
+ }
+
+ REG_NOTES (insn)
+ = gen_rtx_EXPR_LIST (REG_EQUAL, op1, REG_NOTES (insn));
return 1;
}
@@ -3334,8 +3391,8 @@ remove_useless_addtr_insns (int check_notes)
/* Global variables set by output_function_prologue(). */
/* Size of frame. Need to know this to emit return insns from
leaf procedures. */
-static int actual_fsize;
-static int local_fsize, save_fregs;
+static HOST_WIDE_INT actual_fsize, local_fsize;
+static int save_fregs;
/* Emit RTL to store REG at the memory location specified by BASE+DISP.
Handle case where DISP > 8k by using the add_high_const patterns.
@@ -3344,7 +3401,7 @@ static int local_fsize, save_fregs;
in %r1. There is code in expand_hppa_{prologue,epilogue} that knows this.*/
static void
-store_reg (int reg, int disp, int base)
+store_reg (int reg, HOST_WIDE_INT disp, int base)
{
rtx insn, dest, src, basereg;
@@ -3355,11 +3412,33 @@ store_reg (int reg, int disp, int base)
dest = gen_rtx_MEM (word_mode, plus_constant (basereg, disp));
insn = emit_move_insn (dest, src);
}
+ else if (TARGET_64BIT && !VAL_32_BITS_P (disp))
+ {
+ rtx delta = GEN_INT (disp);
+ rtx tmpreg = gen_rtx_REG (Pmode, 1);
+
+ emit_move_insn (tmpreg, delta);
+ emit_move_insn (tmpreg, gen_rtx_PLUS (Pmode, tmpreg, basereg));
+ dest = gen_rtx_MEM (word_mode, tmpreg);
+ insn = emit_move_insn (dest, src);
+ if (DO_FRAME_NOTES)
+ {
+ REG_NOTES (insn)
+ = gen_rtx_EXPR_LIST (REG_FRAME_RELATED_EXPR,
+ gen_rtx_SET (VOIDmode,
+ gen_rtx_MEM (word_mode,
+ gen_rtx_PLUS (word_mode, basereg,
+ delta)),
+ src),
+ REG_NOTES (insn));
+ }
+ }
else
{
rtx delta = GEN_INT (disp);
rtx high = gen_rtx_PLUS (Pmode, basereg, gen_rtx_HIGH (Pmode, delta));
rtx tmpreg = gen_rtx_REG (Pmode, 1);
+
emit_move_insn (tmpreg, high);
dest = gen_rtx_MEM (word_mode, gen_rtx_LO_SUM (Pmode, tmpreg, delta));
insn = emit_move_insn (dest, src);
@@ -3384,11 +3463,11 @@ store_reg (int reg, int disp, int base)
add MOD to BASE. MOD must be <= 8k. */
static void
-store_reg_modify (int base, int reg, int mod)
+store_reg_modify (int base, int reg, HOST_WIDE_INT mod)
{
rtx insn, basereg, srcreg, delta;
- if (! VAL_14_BITS_P (mod))
+ if (!VAL_14_BITS_P (mod))
abort ();
basereg = gen_rtx_REG (Pmode, base);
@@ -3431,7 +3510,7 @@ store_reg_modify (int base, int reg, int mod)
There is code in expand_hppa_{prologue,epilogue} that knows about this. */
static void
-set_reg_plus_d (int reg, int base, int disp, int note)
+set_reg_plus_d (int reg, int base, HOST_WIDE_INT disp, int note)
{
rtx insn;
@@ -3440,25 +3519,35 @@ set_reg_plus_d (int reg, int base, int disp, int note)
insn = emit_move_insn (gen_rtx_REG (Pmode, reg),
plus_constant (gen_rtx_REG (Pmode, base), disp));
}
+ else if (TARGET_64BIT && !VAL_32_BITS_P (disp))
+ {
+ rtx basereg = gen_rtx_REG (Pmode, base);
+ rtx delta = GEN_INT (disp);
+ rtx tmpreg = gen_rtx_REG (Pmode, 1);
+
+ emit_move_insn (tmpreg, delta);
+ insn = emit_move_insn (gen_rtx_REG (Pmode, reg),
+ gen_rtx_PLUS (Pmode, tmpreg, basereg));
+ }
else
{
rtx basereg = gen_rtx_REG (Pmode, base);
rtx delta = GEN_INT (disp);
+ rtx tmpreg = gen_rtx_REG (Pmode, 1);
- emit_move_insn (gen_rtx_REG (Pmode, 1),
+ emit_move_insn (tmpreg,
gen_rtx_PLUS (Pmode, basereg,
gen_rtx_HIGH (Pmode, delta)));
insn = emit_move_insn (gen_rtx_REG (Pmode, reg),
- gen_rtx_LO_SUM (Pmode, gen_rtx_REG (Pmode, 1),
- delta));
+ gen_rtx_LO_SUM (Pmode, tmpreg, delta));
}
if (DO_FRAME_NOTES && note)
RTX_FRAME_RELATED_P (insn) = 1;
}
-int
-compute_frame_size (int size, int *fregs_live)
+HOST_WIDE_INT
+compute_frame_size (HOST_WIDE_INT size, int *fregs_live)
{
int freg_saved = 0;
int i, j;
@@ -3562,7 +3651,7 @@ pa_output_function_prologue (FILE *file, HOST_WIDE_INT size ATTRIBUTE_UNUSED)
/* hppa_expand_prologue does the dirty work now. We just need
to output the assembler directives which denote the start
of a function. */
- fprintf (file, "\t.CALLINFO FRAME=%d", actual_fsize);
+ fprintf (file, "\t.CALLINFO FRAME=" HOST_WIDE_INT_PRINT_DEC, actual_fsize);
if (regs_ever_live[2])
fputs (",CALLS,SAVE_RP", file);
else
@@ -3603,8 +3692,9 @@ void
hppa_expand_prologue (void)
{
int merge_sp_adjust_with_store = 0;
- int size = get_frame_size ();
- int i, offset;
+ HOST_WIDE_INT size = get_frame_size ();
+ HOST_WIDE_INT offset;
+ int i;
rtx insn, tmpreg;
gr_saved = 0;
@@ -3668,8 +3758,8 @@ hppa_expand_prologue (void)
So instead use stwm to store at *sp and post-increment the
stack pointer as an atomic operation. Then increment sp to
finish allocating the new frame. */
- int adjust1 = 8192 - 64;
- int adjust2 = actual_fsize - adjust1;
+ HOST_WIDE_INT adjust1 = 8192 - 64;
+ HOST_WIDE_INT adjust2 = actual_fsize - adjust1;
store_reg_modify (STACK_POINTER_REGNUM, 1, adjust1);
set_reg_plus_d (STACK_POINTER_REGNUM, STACK_POINTER_REGNUM,
@@ -3901,26 +3991,39 @@ hppa_expand_prologue (void)
Handle case where DISP > 8k by using the add_high_const patterns. */
static void
-load_reg (int reg, int disp, int base)
+load_reg (int reg, HOST_WIDE_INT disp, int base)
{
- rtx src, dest, basereg;
+ rtx dest = gen_rtx_REG (word_mode, reg);
+ rtx basereg = gen_rtx_REG (Pmode, base);
+ rtx src;
- dest = gen_rtx_REG (word_mode, reg);
- basereg = gen_rtx_REG (Pmode, base);
if (VAL_14_BITS_P (disp))
+ src = gen_rtx_MEM (word_mode, plus_constant (basereg, disp));
+ else if (TARGET_64BIT && !VAL_32_BITS_P (disp))
{
- src = gen_rtx_MEM (word_mode, plus_constant (basereg, disp));
- emit_move_insn (dest, src);
+ rtx delta = GEN_INT (disp);
+ rtx tmpreg = gen_rtx_REG (Pmode, 1);
+
+ emit_move_insn (tmpreg, delta);
+ if (TARGET_DISABLE_INDEXING)
+ {
+ emit_move_insn (tmpreg, gen_rtx_PLUS (Pmode, tmpreg, basereg));
+ src = gen_rtx_MEM (word_mode, tmpreg);
+ }
+ else
+ src = gen_rtx_MEM (word_mode, gen_rtx_PLUS (Pmode, tmpreg, basereg));
}
else
{
rtx delta = GEN_INT (disp);
rtx high = gen_rtx_PLUS (Pmode, basereg, gen_rtx_HIGH (Pmode, delta));
rtx tmpreg = gen_rtx_REG (Pmode, 1);
+
emit_move_insn (tmpreg, high);
src = gen_rtx_MEM (word_mode, gen_rtx_LO_SUM (Pmode, tmpreg, delta));
- emit_move_insn (dest, src);
}
+
+ emit_move_insn (dest, src);
}
/* Update the total code bytes output to the text section. */
@@ -4006,9 +4109,10 @@ void
hppa_expand_epilogue (void)
{
rtx tmpreg;
- int offset, i;
+ HOST_WIDE_INT offset;
+ HOST_WIDE_INT ret_off = 0;
+ int i;
int merge_sp_adjust_with_load = 0;
- int ret_off = 0;
/* We will use this often. */
tmpreg = gen_rtx_REG (word_mode, 1);
@@ -6125,7 +6229,7 @@ output_lbranch (rtx dest, rtx insn)
abort ();
final_scan_insn (NEXT_INSN (insn), asm_out_file,
- optimize, 0, 0);
+ optimize, 0, 0, NULL);
/* Now delete the delay insn. */
PUT_CODE (NEXT_INSN (insn), NOTE);
@@ -7129,7 +7233,7 @@ output_call (rtx insn, rtx call_dest, int sibcall)
&& !sibcall)
{
final_scan_insn (NEXT_INSN (insn), asm_out_file,
- optimize, 0, 0);
+ optimize, 0, 0, NULL);
/* Now delete the delay insn. */
PUT_CODE (NEXT_INSN (insn), NOTE);
@@ -7177,7 +7281,8 @@ output_call (rtx insn, rtx call_dest, int sibcall)
/* A non-jump insn in the delay slot. By definition we can
emit this insn before the call (and in fact before argument
relocating. */
- final_scan_insn (NEXT_INSN (insn), asm_out_file, optimize, 0, 0);
+ final_scan_insn (NEXT_INSN (insn), asm_out_file, optimize, 0, 0,
+ NULL);
/* Now delete the delay insn. */
PUT_CODE (NEXT_INSN (insn), NOTE);
diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h
index 312d58c4213..845210d18f4 100644
--- a/gcc/config/pa/pa.h
+++ b/gcc/config/pa/pa.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler, for the HP Spectrum.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com) of Cygnus Support
and Tim Moore (moore@defmacro.cs.utah.edu) of the Center for
Software Science at the University of Utah.
@@ -542,10 +542,11 @@ do { \
/* Register in which static-chain is passed to a function. */
#define STATIC_CHAIN_REGNUM 29
-/* Register which holds offset table for position-independent
+/* Register used to address the offset table for position-independent
data references. */
+#define PIC_OFFSET_TABLE_REGNUM \
+ (flag_pic ? (TARGET_64BIT ? 27 : 19) : INVALID_REGNUM)
-#define PIC_OFFSET_TABLE_REGNUM (TARGET_64BIT ? 27 : 19)
#define PIC_OFFSET_TABLE_REG_CALL_CLOBBERED 1
/* Function to return the rtx used to save the pic offset table register
@@ -646,7 +647,6 @@ extern struct rtx_def *hppa_pic_save_rtx (void);
to IN. If it can be done directly NO_REGS is returned.
Avoid doing any work for the common case calls. */
-
#define SECONDARY_RELOAD_CLASS(CLASS,MODE,IN) \
((CLASS == BASE_REG_CLASS && GET_CODE (IN) == REG \
&& REGNO (IN) < FIRST_PSEUDO_REGISTER) \
@@ -798,7 +798,7 @@ struct hppa_args {int words, nargs_prototype, incoming, indirect; };
for a call to a function whose data type is FNTYPE.
For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,FNDECL) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL, N_NAMED_ARGS) \
(CUM).words = 0, \
(CUM).incoming = 0, \
(CUM).indirect = (FNTYPE) && !(FNDECL), \
@@ -1109,7 +1109,6 @@ extern int may_call_alloca;
emit_insn (gen_dcacheflush (start_addr, end_addr, line_length)); \
emit_insn (gen_icacheflush (start_addr, end_addr, line_length, \
gen_reg_rtx (Pmode), \
- gen_reg_rtx (Pmode), \
gen_reg_rtx (Pmode))); \
} \
else \
@@ -1142,7 +1141,6 @@ extern int may_call_alloca;
emit_insn (gen_dcacheflush (start_addr, end_addr, line_length)); \
emit_insn (gen_icacheflush (start_addr, end_addr, line_length, \
gen_reg_rtx (Pmode), \
- gen_reg_rtx (Pmode), \
gen_reg_rtx (Pmode))); \
} \
}
@@ -1223,16 +1221,36 @@ extern int may_call_alloca;
|| GET_CODE (X) == HIGH) \
&& (reload_in_progress || reload_completed || ! symbolic_expression_p (X)))
-/* Include all constant integers and constant doubles, but not
- floating-point, except for floating-point zero.
-
- Reject LABEL_REFs if we're not using gas or the new HP assembler.
+/* A C expression that is nonzero if we are using the new HP assembler. */
- ?!? For now also reject CONST_DOUBLES in 64bit mode. This will need
- further work. */
#ifndef NEW_HP_ASSEMBLER
#define NEW_HP_ASSEMBLER 0
#endif
+
+/* The macros below define the immediate range for CONST_INTS on
+ the 64-bit port. Constants in this range can be loaded in three
+ instructions using a ldil/ldo/depdi sequence. Constants outside
+ this range are forced to the constant pool prior to reload. */
+
+#define MAX_LEGIT_64BIT_CONST_INT ((HOST_WIDE_INT) 32 << 31)
+#define MIN_LEGIT_64BIT_CONST_INT ((HOST_WIDE_INT) -32 << 31)
+#define LEGITIMATE_64BIT_CONST_INT_P(X) \
+ ((X) >= MIN_LEGIT_64BIT_CONST_INT && (X) < MAX_LEGIT_64BIT_CONST_INT)
+
+/* A C expression that is nonzero if X is a legitimate constant for an
+ immediate operand.
+
+ We include all constant integers and constant doubles, but not
+ floating-point, except for floating-point zero. We reject LABEL_REFs
+ if we're not using gas or the new HP assembler.
+
+ In 64-bit mode, we reject CONST_DOUBLES. We also reject CONST_INTS
+ that need more than three instructions to load prior to reload. This
+ limit is somewhat arbitrary. It takes three instructions to load a
+ CONST_INT from memory but two are memory accesses. It may be better
+ to increase the allowed range for CONST_INTS. We may also be able
+ to handle CONST_DOUBLES. */
+
#define LEGITIMATE_CONSTANT_P(X) \
((GET_MODE_CLASS (GET_MODE (X)) != MODE_FLOAT \
|| (X) == CONST0_RTX (GET_MODE (X))) \
@@ -1240,8 +1258,8 @@ extern int may_call_alloca;
&& !(TARGET_64BIT && GET_CODE (X) == CONST_DOUBLE) \
&& !(TARGET_64BIT && GET_CODE (X) == CONST_INT \
&& !(HOST_BITS_PER_WIDE_INT <= 32 \
- || (INTVAL (X) >= (HOST_WIDE_INT) -32 << 31 \
- && INTVAL (X) < (HOST_WIDE_INT) 32 << 31) \
+ || (reload_in_progress || reload_completed) \
+ || LEGITIMATE_64BIT_CONST_INT_P (INTVAL (X)) \
|| cint_ok_for_move (INTVAL (X)))) \
&& !function_label_operand (X, VOIDmode))
@@ -1425,6 +1443,15 @@ extern int may_call_alloca;
#define VAL_14_BITS_P(X) ((unsigned HOST_WIDE_INT)(X) + 0x2000 < 0x4000)
#define INT_14_BITS(X) VAL_14_BITS_P (INTVAL (X))
+#if HOST_BITS_PER_WIDE_INT > 32
+#define VAL_32_BITS_P(X) \
+ ((unsigned HOST_WIDE_INT)(X) + ((unsigned HOST_WIDE_INT) 1 << 31) \
+ < (unsigned HOST_WIDE_INT) 2 << 31)
+#else
+#define VAL_32_BITS_P(X) 1
+#endif
+#define INT_32_BITS(X) VAL_32_BITS_P (INTVAL (X))
+
/* These are the modes that we allow for scaled indexing. */
#define MODE_OK_FOR_SCALED_INDEXING_P(MODE) \
((TARGET_64BIT && (MODE) == DImode) \
@@ -1557,14 +1584,13 @@ extern int may_call_alloca;
There may be more opportunities to improve code with this hook. */
#define LEGITIMIZE_RELOAD_ADDRESS(AD, MODE, OPNUM, TYPE, IND, WIN) \
do { \
- int offset, newoffset, mask; \
+ long offset, newoffset, mask; \
rtx new, temp = NULL_RTX; \
\
mask = (GET_MODE_CLASS (MODE) == MODE_FLOAT \
? (TARGET_PA_20 && !TARGET_ELF32 ? 0x3fff : 0x1f) : 0x3fff); \
\
- if (optimize \
- && GET_CODE (AD) == PLUS) \
+ if (optimize && GET_CODE (AD) == PLUS) \
temp = simplify_binary_operation (PLUS, Pmode, \
XEXP (AD, 0), XEXP (AD, 1)); \
\
@@ -1583,16 +1609,14 @@ do { \
else \
newoffset = offset & ~mask; \
\
- if (newoffset != 0 \
- && VAL_14_BITS_P (newoffset)) \
+ if (newoffset != 0 && VAL_14_BITS_P (newoffset)) \
{ \
- \
temp = gen_rtx_PLUS (Pmode, XEXP (new, 0), \
GEN_INT (newoffset)); \
AD = gen_rtx_PLUS (Pmode, temp, GEN_INT (offset - newoffset));\
push_reload (XEXP (AD, 0), 0, &XEXP (AD, 0), 0, \
- BASE_REG_CLASS, Pmode, VOIDmode, 0, 0, \
- (OPNUM), (TYPE)); \
+ BASE_REG_CLASS, Pmode, VOIDmode, 0, 0, \
+ (OPNUM), (TYPE)); \
goto WIN; \
} \
} \
diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md
index dd2159cfe09..56a4c0bc581 100644
--- a/gcc/config/pa/pa.md
+++ b/gcc/config/pa/pa.md
@@ -1,6 +1,6 @@
;;- Machine description for HP PA-RISC architecture for GCC compiler
;; Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-;; 2002, 2003 Free Software Foundation, Inc.
+;; 2002, 2003, 2004 Free Software Foundation, Inc.
;; Contributed by the Center for Software Science at the University
;; of Utah.
@@ -2305,7 +2305,7 @@
(const_int 4))
(match_operand:SI 2 "register_operand" "")))
(set (mem:SI (match_dup 0))
- (match_operand:SI 3 "reg_or_0_operand" ""))]
+ (match_operand:SI 3 "register_operand" ""))]
"!TARGET_SOFT_FLOAT
&& REG_OK_FOR_BASE_P (operands[2])
&& FP_REGNO_P (REGNO (operands[3]))"
@@ -3194,7 +3194,7 @@
(define_insn "movstrsi_prereload"
[(set (mem:BLK (match_operand:SI 0 "register_operand" "r,r"))
(mem:BLK (match_operand:SI 1 "register_operand" "r,r")))
- (clobber (match_operand:SI 2 "register_operand" "=r,r")) ;loop cnt/tmp
+ (clobber (match_operand:SI 2 "register_operand" "=&r,&r")) ;loop cnt/tmp
(clobber (match_operand:SI 3 "register_operand" "=&r,&r")) ;item tmp1
(clobber (match_operand:SI 6 "register_operand" "=&r,&r")) ;item tmp2
(clobber (match_operand:SI 7 "register_operand" "=&r,&r")) ;item tmp3
@@ -3206,8 +3206,8 @@
[(set_attr "type" "multi,multi")])
(define_split
- [(parallel [(set (mem:BLK (match_operand:SI 0 "register_operand" ""))
- (mem:BLK (match_operand:SI 1 "register_operand" "")))
+ [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
+ (match_operand:BLK 1 "memory_operand" ""))
(clobber (match_operand:SI 2 "register_operand" ""))
(clobber (match_operand:SI 3 "register_operand" ""))
(clobber (match_operand:SI 6 "register_operand" ""))
@@ -3215,10 +3215,14 @@
(clobber (match_operand:SI 8 "register_operand" ""))
(use (match_operand:SI 4 "arith_operand" ""))
(use (match_operand:SI 5 "const_int_operand" ""))])]
- "!TARGET_64BIT && reload_completed && !flag_peephole2"
- [(set (match_dup 7) (match_dup 0))
- (set (match_dup 8) (match_dup 1))
- (parallel [(set (mem:BLK (match_dup 7)) (mem:BLK (match_dup 8)))
+ "!TARGET_64BIT && reload_completed && !flag_peephole2
+ && GET_CODE (operands[0]) == MEM
+ && register_operand (XEXP (operands[0], 0), SImode)
+ && GET_CODE (operands[1]) == MEM
+ && register_operand (XEXP (operands[1], 0), SImode)"
+ [(set (match_dup 7) (match_dup 9))
+ (set (match_dup 8) (match_dup 10))
+ (parallel [(set (match_dup 0) (match_dup 1))
(clobber (match_dup 2))
(clobber (match_dup 3))
(clobber (match_dup 6))
@@ -3227,11 +3231,17 @@
(use (match_dup 4))
(use (match_dup 5))
(const_int 0)])]
- "")
+ "
+{
+ operands[9] = XEXP (operands[0], 0);
+ operands[10] = XEXP (operands[1], 0);
+ operands[0] = replace_equiv_address (operands[0], operands[7]);
+ operands[1] = replace_equiv_address (operands[1], operands[8]);
+}")
(define_peephole2
- [(parallel [(set (mem:BLK (match_operand:SI 0 "register_operand" ""))
- (mem:BLK (match_operand:SI 1 "register_operand" "")))
+ [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
+ (match_operand:BLK 1 "memory_operand" ""))
(clobber (match_operand:SI 2 "register_operand" ""))
(clobber (match_operand:SI 3 "register_operand" ""))
(clobber (match_operand:SI 6 "register_operand" ""))
@@ -3239,8 +3249,12 @@
(clobber (match_operand:SI 8 "register_operand" ""))
(use (match_operand:SI 4 "arith_operand" ""))
(use (match_operand:SI 5 "const_int_operand" ""))])]
- "!TARGET_64BIT"
- [(parallel [(set (mem:BLK (match_dup 7)) (mem:BLK (match_dup 8)))
+ "!TARGET_64BIT
+ && GET_CODE (operands[0]) == MEM
+ && register_operand (XEXP (operands[0], 0), SImode)
+ && GET_CODE (operands[1]) == MEM
+ && register_operand (XEXP (operands[1], 0), SImode)"
+ [(parallel [(set (match_dup 0) (match_dup 1))
(clobber (match_dup 2))
(clobber (match_dup 3))
(clobber (match_dup 6))
@@ -3251,21 +3265,29 @@
(const_int 0)])]
"
{
- if (dead_or_set_p (curr_insn, operands[0]))
- operands[7] = operands[0];
+ rtx addr = XEXP (operands[0], 0);
+ if (dead_or_set_p (curr_insn, addr))
+ operands[7] = addr;
else
- emit_insn (gen_rtx_SET (VOIDmode, operands[7], operands[0]));
+ {
+ emit_insn (gen_rtx_SET (VOIDmode, operands[7], addr));
+ operands[0] = replace_equiv_address (operands[0], operands[7]);
+ }
- if (dead_or_set_p (curr_insn, operands[1]))
- operands[8] = operands[1];
+ addr = XEXP (operands[1], 0);
+ if (dead_or_set_p (curr_insn, addr))
+ operands[8] = addr;
else
- emit_insn (gen_rtx_SET (VOIDmode, operands[8], operands[1]));
+ {
+ emit_insn (gen_rtx_SET (VOIDmode, operands[8], addr));
+ operands[1] = replace_equiv_address (operands[1], operands[8]);
+ }
}")
(define_insn "movstrsi_postreload"
- [(set (mem:BLK (match_operand:SI 0 "register_operand" "r,r"))
- (mem:BLK (match_operand:SI 1 "register_operand" "r,r")))
- (clobber (match_operand:SI 2 "register_operand" "=r,r")) ;loop cnt/tmp
+ [(set (mem:BLK (match_operand:SI 0 "register_operand" "+r,r"))
+ (mem:BLK (match_operand:SI 1 "register_operand" "+r,r")))
+ (clobber (match_operand:SI 2 "register_operand" "=&r,&r")) ;loop cnt/tmp
(clobber (match_operand:SI 3 "register_operand" "=&r,&r")) ;item tmp1
(clobber (match_operand:SI 6 "register_operand" "=&r,&r")) ;item tmp2
(clobber (match_dup 0))
@@ -3360,7 +3382,7 @@
(define_insn "movstrdi_prereload"
[(set (mem:BLK (match_operand:DI 0 "register_operand" "r,r"))
(mem:BLK (match_operand:DI 1 "register_operand" "r,r")))
- (clobber (match_operand:DI 2 "register_operand" "=r,r")) ;loop cnt/tmp
+ (clobber (match_operand:DI 2 "register_operand" "=&r,&r")) ;loop cnt/tmp
(clobber (match_operand:DI 3 "register_operand" "=&r,&r")) ;item tmp1
(clobber (match_operand:DI 6 "register_operand" "=&r,&r")) ;item tmp2
(clobber (match_operand:DI 7 "register_operand" "=&r,&r")) ;item tmp3
@@ -3372,8 +3394,8 @@
[(set_attr "type" "multi,multi")])
(define_split
- [(parallel [(set (mem:BLK (match_operand:DI 0 "register_operand" ""))
- (mem:BLK (match_operand:DI 1 "register_operand" "")))
+ [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
+ (match_operand:BLK 1 "memory_operand" ""))
(clobber (match_operand:DI 2 "register_operand" ""))
(clobber (match_operand:DI 3 "register_operand" ""))
(clobber (match_operand:DI 6 "register_operand" ""))
@@ -3381,10 +3403,14 @@
(clobber (match_operand:DI 8 "register_operand" ""))
(use (match_operand:DI 4 "arith_operand" ""))
(use (match_operand:DI 5 "const_int_operand" ""))])]
- "TARGET_64BIT && reload_completed && !flag_peephole2"
- [(set (match_dup 7) (match_dup 0))
- (set (match_dup 8) (match_dup 1))
- (parallel [(set (mem:BLK (match_dup 7)) (mem:BLK (match_dup 8)))
+ "TARGET_64BIT && reload_completed && !flag_peephole2
+ && GET_CODE (operands[0]) == MEM
+ && register_operand (XEXP (operands[0], 0), DImode)
+ && GET_CODE (operands[1]) == MEM
+ && register_operand (XEXP (operands[1], 0), DImode)"
+ [(set (match_dup 7) (match_dup 9))
+ (set (match_dup 8) (match_dup 10))
+ (parallel [(set (match_dup 0) (match_dup 1))
(clobber (match_dup 2))
(clobber (match_dup 3))
(clobber (match_dup 6))
@@ -3393,11 +3419,17 @@
(use (match_dup 4))
(use (match_dup 5))
(const_int 0)])]
- "")
+ "
+{
+ operands[9] = XEXP (operands[0], 0);
+ operands[10] = XEXP (operands[1], 0);
+ operands[0] = replace_equiv_address (operands[0], operands[7]);
+ operands[1] = replace_equiv_address (operands[1], operands[8]);
+}")
(define_peephole2
- [(parallel [(set (mem:BLK (match_operand:DI 0 "register_operand" ""))
- (mem:BLK (match_operand:DI 1 "register_operand" "")))
+ [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
+ (match_operand:BLK 1 "memory_operand" ""))
(clobber (match_operand:DI 2 "register_operand" ""))
(clobber (match_operand:DI 3 "register_operand" ""))
(clobber (match_operand:DI 6 "register_operand" ""))
@@ -3405,8 +3437,12 @@
(clobber (match_operand:DI 8 "register_operand" ""))
(use (match_operand:DI 4 "arith_operand" ""))
(use (match_operand:DI 5 "const_int_operand" ""))])]
- "TARGET_64BIT"
- [(parallel [(set (mem:BLK (match_dup 7)) (mem:BLK (match_dup 8)))
+ "TARGET_64BIT
+ && GET_CODE (operands[0]) == MEM
+ && register_operand (XEXP (operands[0], 0), DImode)
+ && GET_CODE (operands[1]) == MEM
+ && register_operand (XEXP (operands[1], 0), DImode)"
+ [(parallel [(set (match_dup 0) (match_dup 1))
(clobber (match_dup 2))
(clobber (match_dup 3))
(clobber (match_dup 6))
@@ -3417,21 +3453,29 @@
(const_int 0)])]
"
{
- if (dead_or_set_p (curr_insn, operands[0]))
- operands[7] = operands[0];
+ rtx addr = XEXP (operands[0], 0);
+ if (dead_or_set_p (curr_insn, addr))
+ operands[7] = addr;
else
- emit_insn (gen_rtx_SET (VOIDmode, operands[7], operands[0]));
+ {
+ emit_insn (gen_rtx_SET (VOIDmode, operands[7], addr));
+ operands[0] = replace_equiv_address (operands[0], operands[7]);
+ }
- if (dead_or_set_p (curr_insn, operands[1]))
- operands[8] = operands[1];
+ addr = XEXP (operands[1], 0);
+ if (dead_or_set_p (curr_insn, addr))
+ operands[8] = addr;
else
- emit_insn (gen_rtx_SET (VOIDmode, operands[8], operands[1]));
+ {
+ emit_insn (gen_rtx_SET (VOIDmode, operands[8], addr));
+ operands[1] = replace_equiv_address (operands[1], operands[8]);
+ }
}")
(define_insn "movstrdi_postreload"
- [(set (mem:BLK (match_operand:DI 0 "register_operand" "r,r"))
- (mem:BLK (match_operand:DI 1 "register_operand" "r,r")))
- (clobber (match_operand:DI 2 "register_operand" "=r,r")) ;loop cnt/tmp
+ [(set (mem:BLK (match_operand:DI 0 "register_operand" "+r,r"))
+ (mem:BLK (match_operand:DI 1 "register_operand" "+r,r")))
+ (clobber (match_operand:DI 2 "register_operand" "=&r,&r")) ;loop cnt/tmp
(clobber (match_operand:DI 3 "register_operand" "=&r,&r")) ;item tmp1
(clobber (match_operand:DI 6 "register_operand" "=&r,&r")) ;item tmp2
(clobber (match_dup 0))
@@ -3482,7 +3526,7 @@
(define_insn "clrstrsi_prereload"
[(set (mem:BLK (match_operand:SI 0 "register_operand" "r,r"))
(const_int 0))
- (clobber (match_operand:SI 1 "register_operand" "=r,r")) ;loop cnt/tmp
+ (clobber (match_operand:SI 1 "register_operand" "=&r,&r")) ;loop cnt/tmp
(clobber (match_operand:SI 4 "register_operand" "=&r,&r")) ;tmp1
(use (match_operand:SI 2 "arith_operand" "J,1")) ;byte count
(use (match_operand:SI 3 "const_int_operand" "n,n"))] ;alignment
@@ -3491,31 +3535,39 @@
[(set_attr "type" "multi,multi")])
(define_split
- [(parallel [(set (mem:BLK (match_operand:SI 0 "register_operand" ""))
+ [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
(const_int 0))
(clobber (match_operand:SI 1 "register_operand" ""))
(clobber (match_operand:SI 4 "register_operand" ""))
(use (match_operand:SI 2 "arith_operand" ""))
(use (match_operand:SI 3 "const_int_operand" ""))])]
- "!TARGET_64BIT && reload_completed && !flag_peephole2"
- [(set (match_dup 4) (match_dup 0))
- (parallel [(set (mem:BLK (match_dup 4)) (const_int 0))
+ "!TARGET_64BIT && reload_completed && !flag_peephole2
+ && GET_CODE (operands[0]) == MEM
+ && register_operand (XEXP (operands[0], 0), SImode)"
+ [(set (match_dup 4) (match_dup 5))
+ (parallel [(set (match_dup 0) (const_int 0))
(clobber (match_dup 1))
(clobber (match_dup 4))
(use (match_dup 2))
(use (match_dup 3))
(const_int 0)])]
- "")
+ "
+{
+ operands[5] = XEXP (operands[0], 0);
+ operands[0] = replace_equiv_address (operands[0], operands[4]);
+}")
(define_peephole2
- [(parallel [(set (mem:BLK (match_operand:SI 0 "register_operand" ""))
+ [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
(const_int 0))
(clobber (match_operand:SI 1 "register_operand" ""))
(clobber (match_operand:SI 4 "register_operand" ""))
(use (match_operand:SI 2 "arith_operand" ""))
(use (match_operand:SI 3 "const_int_operand" ""))])]
- "!TARGET_64BIT"
- [(parallel [(set (mem:BLK (match_dup 4)) (const_int 0))
+ "!TARGET_64BIT
+ && GET_CODE (operands[0]) == MEM
+ && register_operand (XEXP (operands[0], 0), SImode)"
+ [(parallel [(set (match_dup 0) (const_int 0))
(clobber (match_dup 1))
(clobber (match_dup 4))
(use (match_dup 2))
@@ -3523,16 +3575,20 @@
(const_int 0)])]
"
{
- if (dead_or_set_p (curr_insn, operands[0]))
- operands[4] = operands[0];
+ rtx addr = XEXP (operands[0], 0);
+ if (dead_or_set_p (curr_insn, addr))
+ operands[4] = addr;
else
- emit_insn (gen_rtx_SET (VOIDmode, operands[4], operands[0]));
+ {
+ emit_insn (gen_rtx_SET (VOIDmode, operands[4], addr));
+ operands[0] = replace_equiv_address (operands[0], operands[4]);
+ }
}")
(define_insn "clrstrsi_postreload"
- [(set (mem:BLK (match_operand:SI 0 "register_operand" "r,r"))
+ [(set (mem:BLK (match_operand:SI 0 "register_operand" "+r,r"))
(const_int 0))
- (clobber (match_operand:SI 1 "register_operand" "=r,r")) ;loop cnt/tmp
+ (clobber (match_operand:SI 1 "register_operand" "=&r,&r")) ;loop cnt/tmp
(clobber (match_dup 0))
(use (match_operand:SI 2 "arith_operand" "J,1")) ;byte count
(use (match_operand:SI 3 "const_int_operand" "n,n")) ;alignment
@@ -3580,7 +3636,7 @@
(define_insn "clrstrdi_prereload"
[(set (mem:BLK (match_operand:DI 0 "register_operand" "r,r"))
(const_int 0))
- (clobber (match_operand:DI 1 "register_operand" "=r,r")) ;loop cnt/tmp
+ (clobber (match_operand:DI 1 "register_operand" "=&r,&r")) ;loop cnt/tmp
(clobber (match_operand:DI 4 "register_operand" "=&r,&r")) ;item tmp1
(use (match_operand:DI 2 "arith_operand" "J,1")) ;byte count
(use (match_operand:DI 3 "const_int_operand" "n,n"))] ;alignment
@@ -3589,31 +3645,39 @@
[(set_attr "type" "multi,multi")])
(define_split
- [(parallel [(set (mem:BLK (match_operand:DI 0 "register_operand" ""))
+ [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
(const_int 0))
(clobber (match_operand:DI 1 "register_operand" ""))
(clobber (match_operand:DI 4 "register_operand" ""))
(use (match_operand:DI 2 "arith_operand" ""))
(use (match_operand:DI 3 "const_int_operand" ""))])]
- "TARGET_64BIT && reload_completed && !flag_peephole2"
- [(set (match_dup 4) (match_dup 0))
- (parallel [(set (mem:BLK (match_dup 4)) (const_int 0))
+ "TARGET_64BIT && reload_completed && !flag_peephole2
+ && GET_CODE (operands[0]) == MEM
+ && register_operand (XEXP (operands[0], 0), DImode)"
+ [(set (match_dup 4) (match_dup 5))
+ (parallel [(set (match_dup 0) (const_int 0))
(clobber (match_dup 1))
(clobber (match_dup 4))
(use (match_dup 2))
(use (match_dup 3))
(const_int 0)])]
- "")
+ "
+{
+ operands[5] = XEXP (operands[0], 0);
+ operands[0] = replace_equiv_address (operands[0], operands[4]);
+}")
(define_peephole2
- [(parallel [(set (mem:BLK (match_operand:DI 0 "register_operand" ""))
+ [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
(const_int 0))
(clobber (match_operand:DI 1 "register_operand" ""))
(clobber (match_operand:DI 4 "register_operand" ""))
(use (match_operand:DI 2 "arith_operand" ""))
(use (match_operand:DI 3 "const_int_operand" ""))])]
- "TARGET_64BIT"
- [(parallel [(set (mem:BLK (match_dup 4)) (const_int 0))
+ "TARGET_64BIT
+ && GET_CODE (operands[0]) == MEM
+ && register_operand (XEXP (operands[0], 0), DImode)"
+ [(parallel [(set (match_dup 0) (const_int 0))
(clobber (match_dup 1))
(clobber (match_dup 4))
(use (match_dup 2))
@@ -3621,16 +3685,20 @@
(const_int 0)])]
"
{
- if (dead_or_set_p (curr_insn, operands[0]))
- operands[4] = operands[0];
+ rtx addr = XEXP (operands[0], 0);
+ if (dead_or_set_p (curr_insn, addr))
+ operands[4] = addr;
else
- emit_insn (gen_rtx_SET (VOIDmode, operands[4], operands[0]));
+ {
+ emit_insn (gen_rtx_SET (VOIDmode, operands[4], addr));
+ operands[0] = replace_equiv_address (operands[0], operands[4]);
+ }
}")
(define_insn "clrstrdi_postreload"
- [(set (mem:BLK (match_operand:DI 0 "register_operand" "r,r"))
+ [(set (mem:BLK (match_operand:DI 0 "register_operand" "+r,r"))
(const_int 0))
- (clobber (match_operand:DI 1 "register_operand" "=r,r")) ;loop cnt/tmp
+ (clobber (match_operand:DI 1 "register_operand" "=&r,&r")) ;loop cnt/tmp
(clobber (match_dup 0))
(use (match_operand:DI 2 "arith_operand" "J,1")) ;byte count
(use (match_operand:DI 3 "const_int_operand" "n,n")) ;alignment
@@ -8858,8 +8926,7 @@ add,l %2,%3,%3\;bv,n %%r0(%3)"
;; Operand 0 contains the start address.
;; Operand 1 contains the end address.
;; Operand 2 contains the line length to use.
-;; Operand 3 contains the start address (clobbered).
-;; Operands 4 and 5 (icacheflush) are clobbered scratch registers.
+;; Operands 3 and 4 (icacheflush) are clobbered scratch registers.
(define_insn "dcacheflush"
[(const_int 1)
(unspec_volatile [(mem:BLK (scratch))] 0)
@@ -8884,16 +8951,16 @@ add,l %2,%3,%3\;bv,n %%r0(%3)"
(use (match_operand 0 "pmode_register_operand" "r"))
(use (match_operand 1 "pmode_register_operand" "r"))
(use (match_operand 2 "pmode_register_operand" "r"))
- (clobber (match_scratch 3 "=&0"))
+ (clobber (match_operand 3 "pmode_register_operand" "=&r"))
(clobber (match_operand 4 "pmode_register_operand" "=&r"))
- (clobber (match_operand 5 "pmode_register_operand" "=&r"))]
+ (clobber (match_scratch 5 "=&0"))]
""
"*
{
if (TARGET_64BIT)
- return \"mfsp %%sr0,%5\;ldsid (%3),%4\;mtsp %4,%%sr0\;cmpb,*<<=,n %3,%1,.\;fic,m %2(%%sr0,%3)\;sync\;mtsp %5,%%sr0\;nop\;nop\;nop\;nop\;nop\;nop\";
+ return \"mfsp %%sr0,%4\;ldsid (%5),%3\;mtsp %3,%%sr0\;cmpb,*<<=,n %5,%1,.\;fic,m %2(%%sr0,%5)\;sync\;mtsp %4,%%sr0\;nop\;nop\;nop\;nop\;nop\;nop\";
else
- return \"mfsp %%sr0,%5\;ldsid (%3),%4\;mtsp %4,%%sr0\;cmpb,<<=,n %3,%1,.\;fic,m %2(%%sr0,%3)\;sync\;mtsp %5,%%sr0\;nop\;nop\;nop\;nop\;nop\;nop\";
+ return \"mfsp %%sr0,%4\;ldsid (%5),%3\;mtsp %3,%%sr0\;cmpb,<<=,n %5,%1,.\;fic,m %2(%%sr0,%5)\;sync\;mtsp %4,%%sr0\;nop\;nop\;nop\;nop\;nop\;nop\";
}"
[(set_attr "type" "multi")
(set_attr "length" "52")])
diff --git a/gcc/config/pa/pa64-hpux.h b/gcc/config/pa/pa64-hpux.h
index eed16720c1a..098f47f79e1 100644
--- a/gcc/config/pa/pa64-hpux.h
+++ b/gcc/config/pa/pa64-hpux.h
@@ -57,14 +57,20 @@ Boston, MA 02111-1307, USA. */
%{static:-a archive} %{shared:%{mgnu-ld:-shared}%{!mgnu-ld:-b}}"
#endif
-/* Like the default, except no -lg. */
+/* Profiling support is only provided in libc.a. However, libprof and
+ libgprof are only available in shared form on HP-UX 11.00. We use
+ the shared form if we are using the GNU linker or an archive form
+ isn't available. We also usually need to link with libdld and it's
+ only available in shared form. */
#undef LIB_SPEC
#define LIB_SPEC \
"%{!shared:\
%{!p:%{!pg: -lc %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\
- %{p:%{!pg:-lprof -lc\
- %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\
- %{pg:-lgprof -lc\
+ %{p:%{!pg:%{static:%{mgnu-ld:-a shared}%{!mgnu-ld:-a archive_shared}}\
+ -lprof %{static:-a archive} -lc\
+ %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\
+ %{pg:%{static:%{mgnu-ld:-a shared}%{!mgnu-ld:-a archive_shared}}\
+ -lgprof %{static:-a archive} -lc\
%{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\
/usr/lib/pa20_64/milli.a"
diff --git a/gcc/config/pa/t-slibgcc-elf-ver b/gcc/config/pa/t-slibgcc-elf-ver
new file mode 100644
index 00000000000..6aac37cc08f
--- /dev/null
+++ b/gcc/config/pa/t-slibgcc-elf-ver
@@ -0,0 +1,3 @@
+# Bump the version number of the shared libgcc library
+
+SHLIB_SOVERSION = 2
diff --git a/gcc/config/pdp11/pdp11.c b/gcc/config/pdp11/pdp11.c
index 049b541a4ac..3426d17f29e 100644
--- a/gcc/config/pdp11/pdp11.c
+++ b/gcc/config/pdp11/pdp11.c
@@ -1,5 +1,5 @@
/* Subroutines for gcc2 for pdp11.
- Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2001
+ Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2004
Free Software Foundation, Inc.
Contributed by Michael K. Gschwind (mike@vlsivie.tuwien.ac.at).
diff --git a/gcc/config/pdp11/pdp11.h b/gcc/config/pdp11/pdp11.h
index 6e84cc4b9f4..8ce5152513c 100644
--- a/gcc/config/pdp11/pdp11.h
+++ b/gcc/config/pdp11/pdp11.h
@@ -597,7 +597,7 @@ maybe ac0 ? - as option someday! */
when the function gets a structure-value-address as an
invisible first argument. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM) = 0)
/* Update the data in CUM to advance over an argument
diff --git a/gcc/config/rs6000/aix.h b/gcc/config/rs6000/aix.h
index 3318621a253..f189407b3f4 100644
--- a/gcc/config/rs6000/aix.h
+++ b/gcc/config/rs6000/aix.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler,
for IBM RS/6000 POWER running AIX.
- Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -139,14 +139,12 @@
/* AIX increases natural record alignment to doubleword if the first
field is an FP double while the FP fields remain word aligned. */
-#define ROUND_TYPE_ALIGN(STRUCT, COMPUTED, SPECIFIED) \
- ((TREE_CODE (STRUCT) == RECORD_TYPE \
- || TREE_CODE (STRUCT) == UNION_TYPE \
- || TREE_CODE (STRUCT) == QUAL_UNION_TYPE) \
- && TYPE_FIELDS (STRUCT) != 0 \
- && TARGET_ALIGN_NATURAL == 0 \
- && DECL_MODE (TYPE_FIELDS (STRUCT)) == DFmode \
- ? MAX (MAX ((COMPUTED), (SPECIFIED)), 64) \
+#define ROUND_TYPE_ALIGN(STRUCT, COMPUTED, SPECIFIED) \
+ ((TREE_CODE (STRUCT) == RECORD_TYPE \
+ || TREE_CODE (STRUCT) == UNION_TYPE \
+ || TREE_CODE (STRUCT) == QUAL_UNION_TYPE) \
+ && TARGET_ALIGN_NATURAL == 0 \
+ ? rs6000_special_round_type_align (STRUCT, COMPUTED, SPECIFIED) \
: MAX ((COMPUTED), (SPECIFIED)))
/* The AIX ABI isn't explicit on whether aggregates smaller than a
diff --git a/gcc/config/rs6000/altivec.h b/gcc/config/rs6000/altivec.h
index c98d6ea3743..1bd8f4549ca 100644
--- a/gcc/config/rs6000/altivec.h
+++ b/gcc/config/rs6000/altivec.h
@@ -1,5 +1,5 @@
/* PowerPC AltiVec include file.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Aldy Hernandez (aldyh@redhat.com).
This file is part of GCC.
@@ -118,6 +118,8 @@ extern int __altivec_link_error_invalid_argument ();
#ifdef __cplusplus
+extern "C++" {
+
/* Prototypes for builtins that take literals and must always be
inlined. */
inline vector float vec_ctf (vector unsigned int, const char) __attribute__ ((always_inline));
@@ -6117,6 +6119,8 @@ struct __vec_step_help<vector float>
#define vec_step(t) __vec_step_help<typeof(t)>::_S_elem
+}//extern "C++"
+
#else /* not C++ */
/* "... and so I think no man in a century will suffer as greatly as
@@ -8533,6 +8537,7 @@ __ch (__bin_args_eq (vector float, (a1), vector float, (a2)), \
#define vec_any_out(a1, a2) __builtin_altivec_vcmpbfp_p (__CR6_EQ_REV, (a1), (a2))
+
#endif /* __cplusplus */
#endif /* _ALTIVEC_H */
diff --git a/gcc/config/rs6000/altivec.md b/gcc/config/rs6000/altivec.md
index 73d0417771d..a18ccede7fe 100644
--- a/gcc/config/rs6000/altivec.md
+++ b/gcc/config/rs6000/altivec.md
@@ -93,7 +93,9 @@
(define_insn "*movv4si_internal"
[(set (match_operand:V4SI 0 "nonimmediate_operand" "=m,v,v,o,r,r,v")
(match_operand:V4SI 1 "input_operand" "v,m,v,r,o,r,W"))]
- "TARGET_ALTIVEC"
+ "TARGET_ALTIVEC
+ && (register_operand (operands[0], V4SImode)
+ || register_operand (operands[1], V4SImode))"
"*
{
switch (which_alternative)
@@ -139,7 +141,9 @@
(define_insn "*movv8hi_internal1"
[(set (match_operand:V8HI 0 "nonimmediate_operand" "=m,v,v,o,r,r,v")
(match_operand:V8HI 1 "input_operand" "v,m,v,r,o,r,W"))]
- "TARGET_ALTIVEC"
+ "TARGET_ALTIVEC
+ && (register_operand (operands[0], V8HImode)
+ || register_operand (operands[1], V8HImode))"
"*
{
switch (which_alternative)
@@ -185,7 +189,9 @@
(define_insn "*movv16qi_internal1"
[(set (match_operand:V16QI 0 "nonimmediate_operand" "=m,v,v,o,r,r,v")
(match_operand:V16QI 1 "input_operand" "v,m,v,r,o,r,W"))]
- "TARGET_ALTIVEC"
+ "TARGET_ALTIVEC
+ && (register_operand (operands[0], V16QImode)
+ || register_operand (operands[1], V16QImode))"
"*
{
switch (which_alternative)
@@ -231,7 +237,9 @@
(define_insn "*movv4sf_internal1"
[(set (match_operand:V4SF 0 "nonimmediate_operand" "=m,v,v,o,r,r,v")
(match_operand:V4SF 1 "input_operand" "v,m,v,r,o,r,W"))]
- "TARGET_ALTIVEC"
+ "TARGET_ALTIVEC
+ && (register_operand (operands[0], V4SFmode)
+ || register_operand (operands[1], V4SFmode))"
"*
{
switch (which_alternative)
diff --git a/gcc/config/rs6000/darwin-ldouble.c b/gcc/config/rs6000/darwin-ldouble.c
index 8936722bc86..3174ebbcc5b 100644
--- a/gcc/config/rs6000/darwin-ldouble.c
+++ b/gcc/config/rs6000/darwin-ldouble.c
@@ -48,6 +48,8 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
This code currently assumes big-endian. */
+#if !_SOFT_FLOAT && (defined (__MACH__) || defined (__powerpc64__))
+
#define fabs(x) __builtin_fabs(x)
#define unlikely(x) __builtin_expect ((x), 0)
@@ -199,3 +201,5 @@ _xlqdiv (double a, double b, double c, double d)
z.dval[1] = (t - u) + tau;
return z.ldval;
}
+
+#endif
diff --git a/gcc/config/rs6000/darwin.h b/gcc/config/rs6000/darwin.h
index c77279d2142..62ed74c00d8 100644
--- a/gcc/config/rs6000/darwin.h
+++ b/gcc/config/rs6000/darwin.h
@@ -1,5 +1,5 @@
/* Target definitions for PowerPC running Darwin (Mac OS X).
- Copyright (C) 1997, 2000, 2001, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1997, 2000, 2001, 2003, 2004 Free Software Foundation, Inc.
Contributed by Apple Computer Inc.
This file is part of GCC.
@@ -295,16 +295,14 @@ do { \
/* Darwin increases natural record alignment to doubleword if the first
field is an FP double while the FP fields remain word aligned. */
-#define ROUND_TYPE_ALIGN(STRUCT, COMPUTED, SPECIFIED) \
- ((TREE_CODE (STRUCT) == RECORD_TYPE \
- || TREE_CODE (STRUCT) == UNION_TYPE \
- || TREE_CODE (STRUCT) == QUAL_UNION_TYPE) \
- && TYPE_FIELDS (STRUCT) != 0 \
- && TARGET_ALIGN_NATURAL == 0 \
- && DECL_MODE (TYPE_FIELDS (STRUCT)) == DFmode \
- ? MAX (MAX ((COMPUTED), (SPECIFIED)), 64) \
- : (TARGET_ALTIVEC && TREE_CODE (STRUCT) == VECTOR_TYPE) \
- ? MAX (MAX ((COMPUTED), (SPECIFIED)), 128) \
+#define ROUND_TYPE_ALIGN(STRUCT, COMPUTED, SPECIFIED) \
+ ((TREE_CODE (STRUCT) == RECORD_TYPE \
+ || TREE_CODE (STRUCT) == UNION_TYPE \
+ || TREE_CODE (STRUCT) == QUAL_UNION_TYPE) \
+ && TARGET_ALIGN_NATURAL == 0 \
+ ? rs6000_special_round_type_align (STRUCT, COMPUTED, SPECIFIED) \
+ : (TARGET_ALTIVEC && TREE_CODE (STRUCT) == VECTOR_TYPE) \
+ ? MAX (MAX ((COMPUTED), (SPECIFIED)), 128) \
: MAX ((COMPUTED), (SPECIFIED)))
/* XXX: Darwin supports neither .quad, or .llong, but it also doesn't
@@ -322,3 +320,4 @@ do { \
#undef REGISTER_TARGET_PRAGMAS
#define REGISTER_TARGET_PRAGMAS DARWIN_REGISTER_TARGET_PRAGMAS
+
diff --git a/gcc/config/rs6000/eabispe.h b/gcc/config/rs6000/eabispe.h
index ed56aebc7f4..1551dc1305d 100644
--- a/gcc/config/rs6000/eabispe.h
+++ b/gcc/config/rs6000/eabispe.h
@@ -1,6 +1,6 @@
/* Core target definitions for GNU compiler
for PowerPC embedded targeted systems with SPE support.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Aldy Hernandez (aldyh@redhat.com).
This file is part of GCC.
@@ -30,7 +30,7 @@
#define SUBSUBTARGET_OVERRIDE_OPTIONS \
if (rs6000_select[1].string == NULL) \
rs6000_cpu = PROCESSOR_PPC8540; \
- if (rs6000_abi_string == NULL || strstr (rs6000_abi_string, "spe") == NULL) \
+ if (rs6000_abi_string == NULL) \
rs6000_spe_abi = 1; \
if (rs6000_float_gprs_string == NULL) \
rs6000_float_gprs = 1; \
diff --git a/gcc/config/rs6000/libgcc-ppc64.ver b/gcc/config/rs6000/libgcc-ppc64.ver
new file mode 100644
index 00000000000..116d5e73fa0
--- /dev/null
+++ b/gcc/config/rs6000/libgcc-ppc64.ver
@@ -0,0 +1,7 @@
+GCC_3.4 {
+ # long double support
+ _xlqadd
+ _xlqsub
+ _xlqmul
+ _xlqdiv
+}
diff --git a/gcc/config/rs6000/linux.h b/gcc/config/rs6000/linux.h
index 1ef484e629d..009ac6637bb 100644
--- a/gcc/config/rs6000/linux.h
+++ b/gcc/config/rs6000/linux.h
@@ -91,6 +91,8 @@
#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
+#define TARGET_HAS_F_SETLKW
+
/* Do code reading to identify a signal frame, and set the frame
state data appropriately. See unwind-dw2.c for the structs. */
@@ -174,3 +176,4 @@ enum { SIGNAL_FRAMESIZE = 64 };
goto SUCCESS; \
} while (0)
+#define OS_MISSING_POWERPC64 1
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
index d56c106b533..5c96d2053e5 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
@@ -224,19 +224,17 @@
: (COMPUTED))
/* PowerPC64 Linux increases natural record alignment to doubleword if
- the first field is an FP double. */
+ the first field is an FP double, only if in power alignment mode. */
#undef ROUND_TYPE_ALIGN
-#define ROUND_TYPE_ALIGN(STRUCT, COMPUTED, SPECIFIED) \
- ((TARGET_ALTIVEC && TREE_CODE (STRUCT) == VECTOR_TYPE) \
- ? MAX (MAX ((COMPUTED), (SPECIFIED)), 128) \
- : (TARGET_64BIT \
- && (TREE_CODE (STRUCT) == RECORD_TYPE \
- || TREE_CODE (STRUCT) == UNION_TYPE \
- || TREE_CODE (STRUCT) == QUAL_UNION_TYPE) \
- && TYPE_FIELDS (STRUCT) != 0 \
- && TARGET_ALIGN_NATURAL == 0 \
- && DECL_MODE (TYPE_FIELDS (STRUCT)) == DFmode) \
- ? MAX (MAX ((COMPUTED), (SPECIFIED)), 64) \
+#define ROUND_TYPE_ALIGN(STRUCT, COMPUTED, SPECIFIED) \
+ ((TARGET_ALTIVEC && TREE_CODE (STRUCT) == VECTOR_TYPE) \
+ ? MAX (MAX ((COMPUTED), (SPECIFIED)), 128) \
+ : (TARGET_64BIT \
+ && (TREE_CODE (STRUCT) == RECORD_TYPE \
+ || TREE_CODE (STRUCT) == UNION_TYPE \
+ || TREE_CODE (STRUCT) == QUAL_UNION_TYPE) \
+ && TARGET_ALIGN_NATURAL == 0) \
+ ? rs6000_special_round_type_align (STRUCT, COMPUTED, SPECIFIED) \
: MAX ((COMPUTED), (SPECIFIED)))
/* Indicate that jump tables go in the text section. */
@@ -544,6 +542,8 @@ while (0)
#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
+#define TARGET_HAS_F_SETLKW
+
#define LINK_GCC_C_SEQUENCE_SPEC \
"%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
@@ -552,13 +552,27 @@ while (0)
#ifdef IN_LIBGCC2
#include <signal.h>
+#ifdef __powerpc64__
#include <sys/ucontext.h>
-#ifdef __powerpc64__
enum { SIGNAL_FRAMESIZE = 128 };
+
#else
+
+/* During the 2.5 kernel series the kernel ucontext was changed, but
+ the new layout is compatible with the old one, so we just define
+ and use the old one here for simplicity and compatibility. */
+
+struct kernel_old_ucontext {
+ unsigned long uc_flags;
+ struct ucontext *uc_link;
+ stack_t uc_stack;
+ struct sigcontext_struct uc_mcontext;
+ sigset_t uc_sigmask;
+};
enum { SIGNAL_FRAMESIZE = 64 };
#endif
+
#endif
#ifdef __powerpc64__
@@ -630,16 +644,10 @@ enum { SIGNAL_FRAMESIZE = 64 };
(FS)->regs.reg[LINK_REGISTER_REGNUM].loc.offset \
= (long)&(sc_->regs->link) - new_cfa_; \
\
- /* The unwinder expects the IP to point to the following insn, \
- whereas the kernel returns the address of the actual \
- faulting insn. We store NIP+4 in an unused register slot to \
- get the same result for multiple evaluation of the same signal \
- frame. */ \
- sc_->regs->gpr[47] = sc_->regs->nip + 4; \
- (FS)->regs.reg[CR0_REGNO].how = REG_SAVED_OFFSET; \
- (FS)->regs.reg[CR0_REGNO].loc.offset \
- = (long)&(sc_->regs->gpr[47]) - new_cfa_; \
- (FS)->retaddr_column = CR0_REGNO; \
+ (FS)->regs.reg[ARG_POINTER_REGNUM].how = REG_SAVED_OFFSET; \
+ (FS)->regs.reg[ARG_POINTER_REGNUM].loc.offset \
+ = (long)&(sc_->regs->nip) - new_cfa_; \
+ (FS)->retaddr_column = ARG_POINTER_REGNUM; \
goto SUCCESS; \
} while (0)
@@ -676,7 +684,7 @@ enum { SIGNAL_FRAMESIZE = 64 };
struct siginfo *pinfo; \
void *puc; \
struct siginfo info; \
- struct ucontext uc; \
+ struct kernel_old_ucontext uc; \
} *rt_ = (CONTEXT)->cfa; \
sc_ = &rt_->uc.uc_mcontext; \
} \
@@ -700,17 +708,14 @@ enum { SIGNAL_FRAMESIZE = 64 };
(FS)->regs.reg[LINK_REGISTER_REGNUM].loc.offset \
= (long)&(sc_->regs->link) - new_cfa_; \
\
- /* The unwinder expects the IP to point to the following insn, \
- whereas the kernel returns the address of the actual \
- faulting insn. We store NIP+4 in an unused register slot to \
- get the same result for multiple evaluation of the same signal \
- frame. */ \
- sc_->regs->gpr[47] = sc_->regs->nip + 4; \
(FS)->regs.reg[CR0_REGNO].how = REG_SAVED_OFFSET; \
(FS)->regs.reg[CR0_REGNO].loc.offset \
- = (long)&(sc_->regs->gpr[47]) - new_cfa_; \
+ = (long)&(sc_->regs->nip) - new_cfa_; \
(FS)->retaddr_column = CR0_REGNO; \
goto SUCCESS; \
} while (0)
#endif
+
+
+#define OS_MISSING_POWERPC64 !TARGET_64BIT
diff --git a/gcc/config/rs6000/ppc64-fp.c b/gcc/config/rs6000/ppc64-fp.c
index 755827fb0b4..c736d9ad7c8 100644
--- a/gcc/config/rs6000/ppc64-fp.c
+++ b/gcc/config/rs6000/ppc64-fp.c
@@ -33,17 +33,28 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#if defined(__powerpc64__)
#include "config/fp-bit.h"
+extern DItype __fixtfdi (TFtype);
extern DItype __fixdfdi (DFtype);
extern DItype __fixsfdi (SFtype);
extern USItype __fixunsdfsi (DFtype);
extern USItype __fixunssfsi (SFtype);
+extern TFtype __floatditf (DItype);
extern DFtype __floatdidf (DItype);
extern SFtype __floatdisf (DItype);
+extern DItype __fixunstfdi (TFtype);
static DItype local_fixunssfdi (SFtype);
static DItype local_fixunsdfdi (DFtype);
DItype
+__fixtfdi (TFtype a)
+{
+ if (a < 0)
+ return - __fixunstfdi (-a);
+ return __fixunstfdi (a);
+}
+
+DItype
__fixdfdi (DFtype a)
{
if (a < 0)
@@ -77,14 +88,25 @@ __fixunssfsi (SFtype a)
return (SItype) a;
}
+TFtype
+__floatditf (DItype u)
+{
+ DFtype dh, dl;
+
+ dh = (SItype) (u >> (sizeof (SItype) * 8));
+ dh *= 2.0 * (((UDItype) 1) << ((sizeof (SItype) * 8) - 1));
+ dl = (USItype) (u & ((((UDItype) 1) << (sizeof (SItype) * 8)) - 1));
+
+ return (TFtype) dh + (TFtype) dl;
+}
+
DFtype
__floatdidf (DItype u)
{
DFtype d;
d = (SItype) (u >> (sizeof (SItype) * 8));
- d *= (((UDItype) 1) << ((sizeof (SItype) * 8) / 2));
- d *= (((UDItype) 1) << ((sizeof (SItype) * 8) / 2));
+ d *= 2.0 * (((UDItype) 1) << ((sizeof (SItype) * 8) - 1));
d += (USItype) (u & ((((UDItype) 1) << (sizeof (SItype) * 8)) - 1));
return d;
@@ -109,13 +131,36 @@ __floatdisf (DItype u)
}
}
f = (SItype) (u >> (sizeof (SItype) * 8));
- f *= (((UDItype) 1) << ((sizeof (SItype) * 8) / 2));
- f *= (((UDItype) 1) << ((sizeof (SItype) * 8) / 2));
+ f *= 2.0 * (((UDItype) 1) << ((sizeof (SItype) * 8) - 1));
f += (USItype) (u & ((((UDItype) 1) << (sizeof (SItype) * 8)) - 1));
return (SFtype) f;
}
+DItype
+__fixunstfdi (TFtype a)
+{
+ if (a < 0)
+ return 0;
+
+ /* Compute high word of result, as a flonum. */
+ const TFtype b = (a / (((UDItype) 1) << (sizeof (SItype) * 8)));
+ /* Convert that to fixed (but not to DItype!),
+ and shift it into the high word. */
+ UDItype v = (USItype) b;
+ v <<= (sizeof (SItype) * 8);
+ /* Remove high part from the TFtype, leaving the low part as flonum. */
+ a -= (TFtype) v;
+ /* Convert that to fixed (but not to DItype!) and add it in.
+ Sometimes A comes out negative. This is significant, since
+ A has more bits than a long int does. */
+ if (a < 0)
+ v -= (USItype) (-a);
+ else
+ v += (USItype) a;
+ return v;
+}
+
/* This version is needed to prevent recursion; fixunsdfdi in libgcc
calls fixdfdi, which in turn calls calls fixunsdfdi. */
diff --git a/gcc/config/rs6000/rs6000-protos.h b/gcc/config/rs6000/rs6000-protos.h
index abf39c6ed96..d20e9fabf5a 100644
--- a/gcc/config/rs6000/rs6000-protos.h
+++ b/gcc/config/rs6000/rs6000-protos.h
@@ -28,7 +28,7 @@
#ifdef RTX_CODE
#ifdef TREE_CODE
-extern void init_cumulative_args (CUMULATIVE_ARGS *, tree, rtx, int, int);
+extern void init_cumulative_args (CUMULATIVE_ARGS *, tree, rtx, int, int, int);
extern void rs6000_va_start (tree, rtx);
#endif /* TREE_CODE */
@@ -104,7 +104,7 @@ extern int registers_ok_for_quad_peep (rtx, rtx);
extern int addrs_ok_for_quad_peep (rtx, rtx);
extern bool gpr_or_gpr_p (rtx, rtx);
extern enum reg_class secondary_reload_class (enum reg_class,
- enum machine_mode, rtx);
+ enum machine_mode, rtx, int);
extern int ccr_bit (rtx, int);
extern int extract_MB (rtx);
extern int extract_ME (rtx);
@@ -144,6 +144,7 @@ extern rtx rs6000_machopic_legitimize_pic_address (rtx orig,
#endif /* RTX_CODE */
#ifdef TREE_CODE
+extern unsigned int rs6000_special_round_type_align (tree, int, int);
extern void function_arg_advance (CUMULATIVE_ARGS *, enum machine_mode,
tree, int);
extern int function_arg_boundary (enum machine_mode, tree);
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 9a399b16f06..28a987d1bff 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -230,7 +230,7 @@ int toc_initialized;
char toc_label_name[10];
/* Alias set for saves and restores from the rs6000 stack. */
-static int rs6000_sr_alias_set;
+static GTY(()) int rs6000_sr_alias_set;
/* Call distance, overridden by -mlongcall and #pragma longcall(1).
The only place that looks at this is rs6000_set_default_type_attributes;
@@ -395,7 +395,7 @@ static rtx rs6000_spe_function_arg (CUMULATIVE_ARGS *,
enum machine_mode, tree);
static rtx rs6000_mixed_function_arg (CUMULATIVE_ARGS *,
enum machine_mode, tree, int);
-static void rs6000_move_block_from_reg(int regno, rtx x, int nregs);
+static void rs6000_move_block_from_reg (int regno, rtx x, int nregs);
static void setup_incoming_varargs (CUMULATIVE_ARGS *,
enum machine_mode, tree,
int *, int);
@@ -610,6 +610,8 @@ static const char alt_reg_names[][8] =
#define TARGET_STRICT_ARGUMENT_NAMING hook_bool_CUMULATIVE_ARGS_true
#undef TARGET_PRETEND_OUTGOING_VARARGS_NAMED
#define TARGET_PRETEND_OUTGOING_VARARGS_NAMED hook_bool_CUMULATIVE_ARGS_true
+#undef TARGET_SPLIT_COMPLEX_ARG
+#define TARGET_SPLIT_COMPLEX_ARG hook_bool_tree_true
#undef TARGET_BUILD_BUILTIN_VA_LIST
#define TARGET_BUILD_BUILTIN_VA_LIST rs6000_build_builtin_va_list
@@ -704,11 +706,6 @@ rs6000_override_options (const char *default_cpu)
const size_t ptt_size = ARRAY_SIZE (processor_target_table);
- /* Save current -mmultiple/-mno-multiple status. */
- int multiple = TARGET_MULTIPLE;
- /* Save current -mstring/-mno-string status. */
- int string = TARGET_STRING;
-
/* Some OSs don't support saving the high part of 64-bit registers on
context switch. Other OSs don't support saving Altivec registers.
On those OSs, we don't touch the MASK_POWERPC64 or MASK_ALTIVEC
@@ -731,6 +728,10 @@ rs6000_override_options (const char *default_cpu)
set_masks &= ~MASK_ALTIVEC;
#endif
+ /* Don't override these by the processor default if given explicitly. */
+ set_masks &= ~(target_flags_explicit
+ & (MASK_MULTIPLE | MASK_STRING | MASK_SOFT_FLOAT));
+
/* Identify the processor type. */
rs6000_select[0].string = default_cpu;
rs6000_cpu = TARGET_POWERPC64 ? PROCESSOR_DEFAULT64 : PROCESSOR_DEFAULT;
@@ -766,17 +767,7 @@ rs6000_override_options (const char *default_cpu)
/* If we are optimizing big endian systems for space, use the load/store
multiple and string instructions. */
if (BYTES_BIG_ENDIAN && optimize_size)
- target_flags |= MASK_MULTIPLE | MASK_STRING;
-
- /* If -mmultiple or -mno-multiple was explicitly used, don't
- override with the processor default */
- if ((target_flags_explicit & MASK_MULTIPLE) != 0)
- target_flags = (target_flags & ~MASK_MULTIPLE) | multiple;
-
- /* If -mstring or -mno-string was explicitly used, don't override
- with the processor default. */
- if ((target_flags_explicit & MASK_STRING) != 0)
- target_flags = (target_flags & ~MASK_STRING) | string;
+ target_flags |= ~target_flags_explicit & (MASK_MULTIPLE | MASK_STRING);
/* Don't allow -mmultiple or -mstring on little endian systems
unless the cpu is a 750, because the hardware doesn't support the
@@ -840,6 +831,13 @@ rs6000_override_options (const char *default_cpu)
rs6000_long_double_type_size = size;
}
+ /* Set Altivec ABI as default for powerpc64 linux. */
+ if (TARGET_ELF && TARGET_64BIT)
+ {
+ rs6000_altivec_abi = 1;
+ rs6000_altivec_vrsave = 1;
+ }
+
/* Handle -mabi= options. */
rs6000_parse_abi_options ();
@@ -988,6 +986,11 @@ rs6000_override_options (const char *default_cpu)
/* Arrange to save and restore machine status around nested functions. */
init_machine_status = rs6000_init_machine_status;
+
+ /* We should always be splitting complex arguments, but we can't break
+ Linux and Darwin ABIs at the moment. For now, only AIX is fixed. */
+ if (DEFAULT_ABI != ABI_AIX)
+ targetm.calls.split_complex_arg = NULL;
}
/* Handle generic options of the form -mfoo=yes/no.
@@ -1015,12 +1018,16 @@ rs6000_parse_abi_options (void)
if (rs6000_abi_string == 0)
return;
else if (! strcmp (rs6000_abi_string, "altivec"))
- rs6000_altivec_abi = 1;
+ {
+ rs6000_altivec_abi = 1;
+ rs6000_spe_abi = 0;
+ }
else if (! strcmp (rs6000_abi_string, "no-altivec"))
rs6000_altivec_abi = 0;
else if (! strcmp (rs6000_abi_string, "spe"))
{
rs6000_spe_abi = 1;
+ rs6000_altivec_abi = 0;
if (!TARGET_SPE_ABI)
error ("not configured for ABI: '%s'", rs6000_abi_string);
}
@@ -2317,6 +2324,26 @@ input_operand (rtx op, enum machine_mode mode)
return 0;
}
+
+/* Darwin, AIX increases natural record alignment to doubleword if the first
+ field is an FP double while the FP fields remain word aligned. */
+
+unsigned int
+rs6000_special_round_type_align (tree type, int computed, int specified)
+{
+ tree field = TYPE_FIELDS (type);
+
+ /* Skip all the static variables only if ABI is greater than
+ 1 or equal to 0. */
+ while (field != NULL && TREE_CODE (field) == VAR_DECL)
+ field = TREE_CHAIN (field);
+
+ if (field == NULL || field == type || DECL_MODE (field) != DFmode)
+ return MAX (computed, specified);
+
+ return MAX (MAX (computed, specified), 64);
+}
+
/* Return 1 for an operand in small memory on V.4/eabi. */
int
@@ -2382,6 +2409,43 @@ word_offset_memref_operand (rtx op, enum machine_mode mode ATTRIBUTE_UNUSED)
return (off % 4) == 0;
}
+/* Return true if operand is a (MEM (PLUS (REG) (offset))) where offset
+ is not divisible by four. */
+
+int
+invalid_gpr_mem (rtx op, enum machine_mode mode ATTRIBUTE_UNUSED)
+{
+ rtx addr;
+ long off;
+
+ if (GET_CODE (op) != MEM)
+ return 0;
+
+ addr = XEXP (op, 0);
+ if (GET_CODE (addr) != PLUS
+ || GET_CODE (XEXP (addr, 0)) != REG
+ || GET_CODE (XEXP (addr, 1)) != CONST_INT)
+ return 0;
+
+ off = INTVAL (XEXP (addr, 1));
+ return (off & 3) != 0;
+}
+
+/* Return true if operand is a hard register that can be used as a base
+ register. */
+
+int
+base_reg_operand (rtx op, enum machine_mode mode ATTRIBUTE_UNUSED)
+{
+ unsigned int regno;
+
+ if (!REG_P (op))
+ return 0;
+
+ regno = REGNO (op);
+ return regno != 0 && regno <= 31;
+}
+
/* Return true if either operand is a general purpose register. */
bool
@@ -2506,18 +2570,16 @@ legitimate_offset_address_p (enum machine_mode mode, rtx x, int strict)
case DFmode:
case DImode:
- if (mode == DFmode || !TARGET_POWERPC64)
+ /* Both DFmode and DImode may end up in gprs. If gprs are 32-bit,
+ then we need to load/store at both offset and offset+4. */
+ if (!TARGET_POWERPC64)
extra = 4;
- else if (offset & 3)
- return false;
break;
case TFmode:
case TImode:
- if (mode == TFmode || !TARGET_POWERPC64)
+ if (!TARGET_POWERPC64)
extra = 12;
- else if (offset & 3)
- return false;
else
extra = 8;
break;
@@ -2526,7 +2588,8 @@ legitimate_offset_address_p (enum machine_mode mode, rtx x, int strict)
break;
}
- return (offset + extra >= offset) && (offset + extra + 0x8000 < 0x10000);
+ offset += 0x8000;
+ return (offset < 0x10000) && (offset + extra < 0x10000);
}
static bool
@@ -3776,7 +3839,8 @@ rs6000_return_in_memory (tree type, tree fntype ATTRIBUTE_UNUSED)
void
init_cumulative_args (CUMULATIVE_ARGS *cum, tree fntype,
- rtx libname ATTRIBUTE_UNUSED, int incoming, int libcall)
+ rtx libname ATTRIBUTE_UNUSED, int incoming,
+ int libcall, int n_named_args)
{
static CUMULATIVE_ARGS zero_cumulative;
@@ -3793,17 +3857,9 @@ init_cumulative_args (CUMULATIVE_ARGS *cum, tree fntype,
&& (TREE_VALUE (tree_last (TYPE_ARG_TYPES (fntype)))
!= void_type_node));
- if (incoming)
- cum->nargs_prototype = 1000; /* don't return a PARALLEL */
-
- else if (cum->prototype)
- cum->nargs_prototype = (list_length (TYPE_ARG_TYPES (fntype)) - 1
- + (TYPE_MODE (TREE_TYPE (fntype)) == BLKmode
- || rs6000_return_in_memory (TREE_TYPE (fntype),
- fntype)));
-
- else
- cum->nargs_prototype = 0;
+ cum->nargs_prototype = 0;
+ if (incoming || cum->prototype)
+ cum->nargs_prototype = n_named_args;
/* Check for a longcall attribute. */
if (fntype
@@ -3827,6 +3883,16 @@ init_cumulative_args (CUMULATIVE_ARGS *cum, tree fntype,
fprintf (stderr, " proto = %d, nargs = %d\n",
cum->prototype, cum->nargs_prototype);
}
+
+ if (fntype
+ && !TARGET_ALTIVEC
+ && TARGET_ALTIVEC_ABI
+ && ALTIVEC_VECTOR_MODE (TYPE_MODE (TREE_TYPE (fntype))))
+ {
+ error ("Cannot return value in vector register because"
+ " altivec instructions are disabled, use -maltivec"
+ " to enable them.");
+ }
}
/* If defined, a C expression which determines whether, and in which
@@ -3919,12 +3985,19 @@ function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode,
if (TARGET_ALTIVEC_ABI && ALTIVEC_VECTOR_MODE (mode))
{
if (USE_ALTIVEC_FOR_ARG_P (cum, mode, type, named))
- cum->vregno++;
-
- /* In variable-argument functions, vector arguments get GPRs allocated
- even if they are going to be passed in a vector register. */
- if (cum->stdarg && DEFAULT_ABI != ABI_V4)
- {
+ {
+ cum->vregno++;
+ if (!TARGET_ALTIVEC)
+ error ("Cannot pass argument in vector register because"
+ " altivec instructions are disabled, use -maltivec"
+ " to enable them.");
+ }
+ /* PowerPC64 Linux and AIX allocates GPRs for a vector argument
+ even if it is going to be passed in a vector register.
+ Darwin does the same for variable-argument functions. */
+ if ((DEFAULT_ABI == ABI_AIX && TARGET_64BIT)
+ || (cum->stdarg && DEFAULT_ABI != ABI_V4))
+ {
int align;
/* Vector parameters must be 16-byte aligned. This places
@@ -4228,7 +4301,32 @@ function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode,
}
if (USE_ALTIVEC_FOR_ARG_P (cum, mode, type, named))
- return gen_rtx_REG (mode, cum->vregno);
+ if (TARGET_64BIT && ! cum->prototype)
+ {
+ /* Vector parameters get passed in vector register
+ and also in GPRs or memory, in absence of prototype. */
+ int align_words;
+ rtx slot;
+ align_words = (cum->words + 1) & ~1;
+
+ if (align_words >= GP_ARG_NUM_REG)
+ {
+ slot = NULL_RTX;
+ }
+ else
+ {
+ slot = gen_rtx_REG (mode, GP_ARG_MIN_REG + align_words);
+ }
+ return gen_rtx_PARALLEL (mode,
+ gen_rtvec (2,
+ gen_rtx_EXPR_LIST (VOIDmode,
+ slot, const0_rtx),
+ gen_rtx_EXPR_LIST (VOIDmode,
+ gen_rtx_REG (mode, cum->vregno),
+ const0_rtx)));
+ }
+ else
+ return gen_rtx_REG (mode, cum->vregno);
else if (TARGET_ALTIVEC_ABI && ALTIVEC_VECTOR_MODE (mode))
{
if (named || abi == ABI_V4)
@@ -4337,7 +4435,7 @@ function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode,
/* If this is partially on the stack, then
we only include the portion actually
in registers here. */
- ? gen_rtx_REG (SImode,
+ ? gen_rtx_REG (Pmode,
GP_ARG_MIN_REG + align_words)
: gen_rtx_REG (mode,
GP_ARG_MIN_REG + align_words))),
@@ -8307,12 +8405,14 @@ addrs_ok_for_quad_peep (rtx addr1, rtx addr2)
/* Return the register class of a scratch register needed to copy IN into
or out of a register in CLASS in MODE. If it can be done directly,
- NO_REGS is returned. */
+ NO_REGS is returned. INP is nonzero if we are loading the reg, zero
+ for storing. */
enum reg_class
-secondary_reload_class (enum reg_class class,
- enum machine_mode mode ATTRIBUTE_UNUSED,
- rtx in)
+secondary_reload_class (enum reg_class class,
+ enum machine_mode mode,
+ rtx in,
+ int inp)
{
int regno;
@@ -8337,6 +8437,14 @@ secondary_reload_class (enum reg_class class,
return BASE_REGS;
}
+ /* A 64-bit gpr load or store using an offset that isn't a multiple of
+ four needs a secondary reload. */
+ if (TARGET_POWERPC64
+ && GET_MODE_UNIT_SIZE (mode) >= 8
+ && (!inp || class != BASE_REGS)
+ && invalid_gpr_mem (in, mode))
+ return BASE_REGS;
+
if (GET_CODE (in) == REG)
{
regno = REGNO (in);
@@ -8417,7 +8525,14 @@ ccr_bit (rtx op, int scc_p)
allowed. */
if (scc_p && code != EQ && code != GT && code != LT && code != UNORDERED
&& code != GTU && code != LTU)
- abort ();
+ {
+#if ! ENABLE_CHECKING
+ if (TARGET_E500)
+ inform ("your function will be miscompiled");
+ else
+#endif
+ abort ();
+ }
switch (code)
{
@@ -10913,11 +11028,7 @@ rs6000_ra_ever_killed (void)
rtx reg;
rtx insn;
- /* Irritatingly, there are two kinds of thunks -- those created with
- TARGET_ASM_OUTPUT_MI_THUNK and those with DECL_THUNK_P that go
- through the regular part of the compiler. This is a very hacky
- way to tell them apart. */
- if (current_function_is_thunk && !no_new_pseudos)
+ if (current_function_is_thunk)
return 0;
/* regs_ever_live has LR marked as used if any sibcalls are present,
@@ -11106,13 +11217,14 @@ rs6000_emit_eh_reg_restore (rtx source, rtx scratch)
emit_move_insn (gen_rtx_REG (Pmode, LINK_REGISTER_REGNUM), operands[0]);
}
+static GTY(()) int set = -1;
+
int
get_TOC_alias_set (void)
{
- static int set = -1;
- if (set == -1)
- set = new_alias_set ();
- return set;
+ if (set == -1)
+ set = new_alias_set ();
+ return set;
}
/* This returns nonzero if the current function uses the TOC. This is
@@ -15649,6 +15761,7 @@ rs6000_complex_function_value (enum machine_mode mode)
unsigned int regno;
rtx r1, r2;
enum machine_mode inner = GET_MODE_INNER (mode);
+ unsigned int inner_bytes = GET_MODE_SIZE (inner);
if (FLOAT_MODE_P (mode))
regno = FP_ARG_RETURN;
@@ -15657,15 +15770,17 @@ rs6000_complex_function_value (enum machine_mode mode)
regno = GP_ARG_RETURN;
/* 32-bit is OK since it'll go in r3/r4. */
- if (TARGET_32BIT
- && GET_MODE_BITSIZE (inner) >= 32)
+ if (TARGET_32BIT && inner_bytes >= 4)
return gen_rtx_REG (mode, regno);
}
+ if (inner_bytes >= 8)
+ return gen_rtx_REG (mode, regno);
+
r1 = gen_rtx_EXPR_LIST (inner, gen_rtx_REG (inner, regno),
const0_rtx);
r2 = gen_rtx_EXPR_LIST (inner, gen_rtx_REG (inner, regno + 1),
- GEN_INT (GET_MODE_UNIT_SIZE (inner)));
+ GEN_INT (inner_bytes));
return gen_rtx_PARALLEL (mode, gen_rtvec (2, r1, r2));
}
@@ -15710,7 +15825,7 @@ rs6000_function_value (tree valtype, tree func ATTRIBUTE_UNUSED)
regno = FP_ARG_RETURN;
else if (TREE_CODE (valtype) == COMPLEX_TYPE
&& TARGET_HARD_FLOAT
- && SPLIT_COMPLEX_ARGS)
+ && targetm.calls.split_complex_arg)
return rs6000_complex_function_value (mode);
else if (TREE_CODE (valtype) == VECTOR_TYPE && TARGET_ALTIVEC)
regno = ALTIVEC_ARG_RETURN;
@@ -15732,7 +15847,7 @@ rs6000_libcall_value (enum machine_mode mode)
regno = FP_ARG_RETURN;
else if (ALTIVEC_VECTOR_MODE (mode))
regno = ALTIVEC_ARG_RETURN;
- else if (COMPLEX_MODE_P (mode) && SPLIT_COMPLEX_ARGS)
+ else if (COMPLEX_MODE_P (mode) && targetm.calls.split_complex_arg)
return rs6000_complex_function_value (mode);
else
regno = GP_ARG_RETURN;
diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h
index d31863b91ad..ae6a5f3a097 100644
--- a/gcc/config/rs6000/rs6000.h
+++ b/gcc/config/rs6000/rs6000.h
@@ -1471,12 +1471,22 @@ enum reg_class
? GENERAL_REGS \
: (CLASS)))
+#define DISPARAGE_RELOAD_CLASS(X, CLASS) \
+ (GET_CODE (X) == REG \
+ && REGNO (X) < FIRST_PSEUDO_REGISTER \
+ && SECONDARY_MEMORY_NEEDED (GET_MODE_CLASS (GET_MODE (X)), \
+ CLASS, GET_MODE (X)) \
+ ? 6 : 0)
+
/* Return the register class of a scratch register needed to copy IN into
or out of a register in CLASS in MODE. If it can be done directly,
NO_REGS is returned. */
-#define SECONDARY_RELOAD_CLASS(CLASS,MODE,IN) \
- secondary_reload_class (CLASS, MODE, IN)
+#define SECONDARY_INPUT_RELOAD_CLASS(CLASS, MODE, IN) \
+ secondary_reload_class (CLASS, MODE, IN, 1)
+
+#define SECONDARY_OUTPUT_RELOAD_CLASS(CLASS, MODE, IN) \
+ secondary_reload_class (CLASS, MODE, IN, 0)
/* If we are copying between FP or AltiVec registers and anything
else, we need a memory location. */
@@ -1767,19 +1777,19 @@ typedef struct rs6000_args
for a call to a function whose data type is FNTYPE.
For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
- init_cumulative_args (&CUM, FNTYPE, LIBNAME, FALSE, FALSE)
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
+ init_cumulative_args (&CUM, FNTYPE, LIBNAME, FALSE, FALSE, N_NAMED_ARGS)
/* Similar, but when scanning the definition of a procedure. We always
set NARGS_PROTOTYPE large so we never return an EXPR_LIST. */
-#define INIT_CUMULATIVE_INCOMING_ARGS(CUM,FNTYPE,LIBNAME) \
- init_cumulative_args (&CUM, FNTYPE, LIBNAME, TRUE, FALSE)
+#define INIT_CUMULATIVE_INCOMING_ARGS(CUM, FNTYPE, LIBNAME) \
+ init_cumulative_args (&CUM, FNTYPE, LIBNAME, TRUE, FALSE, 1000)
/* Like INIT_CUMULATIVE_ARGS' but only used for outgoing libcalls. */
#define INIT_CUMULATIVE_LIBCALL_ARGS(CUM, MODE, LIBNAME) \
- init_cumulative_args (&CUM, NULL_TREE, LIBNAME, FALSE, TRUE)
+ init_cumulative_args (&CUM, NULL_TREE, LIBNAME, FALSE, TRUE, 0)
/* Update the data in CUM to advance over an argument
of mode MODE and data type TYPE.
@@ -1844,13 +1854,6 @@ typedef struct rs6000_args
#define FUNCTION_ARG_BOUNDARY(MODE, TYPE) \
function_arg_boundary (MODE, TYPE)
-/* Define to nonzero if complex arguments should be split into their
- corresponding components.
-
- This should be set for Linux and Darwin as well, but we can't break
- the ABIs at the moment. For now, only AIX gets fixed. */
-#define SPLIT_COMPLEX_ARGS (DEFAULT_ABI == ABI_AIX)
-
/* Implement `va_start' for varargs and stdarg. */
#define EXPAND_BUILTIN_VA_START(valist, nextarg) \
rs6000_va_start (valist, nextarg)
@@ -2666,6 +2669,8 @@ extern char rs6000_reg_names[][8]; /* register names (0 vs. %r0). */
{"lwa_operand", {SUBREG, MEM, REG}}, \
{"volatile_mem_operand", {MEM}}, \
{"offsettable_mem_operand", {MEM}}, \
+ {"invalid_gpr_mem", {MEM}}, \
+ {"base_reg_operand", {REG}}, \
{"mem_or_easy_const_operand", {SUBREG, MEM, CONST_DOUBLE}}, \
{"add_operand", {SUBREG, REG, CONST_INT}}, \
{"non_add_cint_operand", {CONST_INT}}, \
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index 28f5f257b20..802441a64f7 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -4961,9 +4961,9 @@
;; Conversions to and from floating-point.
-(define_expand "fixunssfsi2"
+(define_expand "fixuns_truncsfsi2"
[(set (match_operand:SI 0 "gpc_reg_operand" "")
- (unsigned_fix:SI (fix:SF (match_operand:SF 1 "gpc_reg_operand" ""))))]
+ (unsigned_fix:SI (match_operand:SF 1 "gpc_reg_operand" "")))]
"TARGET_HARD_FLOAT && !TARGET_FPRS"
"")
@@ -5634,7 +5634,7 @@
[(set (match_operand:DI 0 "gpc_reg_operand" "=&r,&r")
(ashiftrt:DI (match_operand:DI 1 "gpc_reg_operand" "r,r")
(match_operand:SI 2 "const_int_operand" "M,i")))]
- "TARGET_32BIT && !TARGET_POWERPC64 && !TARGET_POWER"
+ "TARGET_32BIT && !TARGET_POWERPC64 && !TARGET_POWER && WORDS_BIG_ENDIAN"
"@
{srai|srawi} %0,%1,31\;{srai|srawi} %L0,%1,%h2
{sri|srwi} %L0,%L1,%h2\;insrwi %L0,%1,%h2,0\;{srai|srawi} %0,%1,%h2"
@@ -6950,7 +6950,7 @@
[(set (match_operand:DI 0 "gpc_reg_operand" "")
(ashiftrt:DI (match_operand:DI 1 "gpc_reg_operand" "")
(match_operand:SI 2 "reg_or_cint_operand" "")))]
- ""
+ "WORDS_BIG_ENDIAN"
"
{
if (TARGET_POWERPC64)
@@ -6960,7 +6960,8 @@
emit_insn (gen_ashrdi3_power (operands[0], operands[1], operands[2]));
DONE;
}
- else if (TARGET_32BIT && GET_CODE (operands[2]) == CONST_INT)
+ else if (TARGET_32BIT && GET_CODE (operands[2]) == CONST_INT
+ && WORDS_BIG_ENDIAN)
{
emit_insn (gen_ashrdi3_no_power (operands[0], operands[1], operands[2]));
DONE;
@@ -8163,14 +8164,15 @@
; ld/std require word-aligned displacements -> 'Y' constraint.
; List Y->r and r->Y before r->r for reload.
(define_insn "*movdf_hardfloat64"
- [(set (match_operand:DF 0 "nonimmediate_operand" "=Y,??r,!r,f,f,m,!cl,!r,!r,!r,!r")
- (match_operand:DF 1 "input_operand" "r,Y,r,f,m,f,r,h,G,H,F"))]
+ [(set (match_operand:DF 0 "nonimmediate_operand" "=Y,r,b,!r,f,f,m,!cl,!r,!r,!r,!r")
+ (match_operand:DF 1 "input_operand" "r,Y,m,r,f,m,f,r,h,G,H,F"))]
"TARGET_POWERPC64 && TARGET_HARD_FLOAT && TARGET_FPRS
&& (gpc_reg_operand (operands[0], DFmode)
|| gpc_reg_operand (operands[1], DFmode))"
"@
std%U0%X0 %1,%0
ld%U1%X1 %0,%1
+ #
mr %0,%1
fmr %0,%1
lfd%U1%X1 %0,%1
@@ -8180,8 +8182,49 @@
#
#
#"
- [(set_attr "type" "*,load,store,fp,fpload,fpstore,mtjmpr,*,*,*,*")
- (set_attr "length" "4,4,4,4,4,4,4,4,8,12,16")])
+ [(set_attr "type" "store,load,load,*,fp,fpload,fpstore,mtjmpr,*,*,*,*")
+ (set_attr "length" "4,4,8,4,4,4,4,4,4,8,12,16")])
+
+(define_split
+ [(set (match_operand:DF 0 "base_reg_operand" "")
+ (match_operand:DF 1 "invalid_gpr_mem" ""))]
+ "TARGET_POWERPC64 && no_new_pseudos"
+ [(set (match_dup 2) (match_dup 3))
+ (set (match_dup 0) (match_dup 4))]
+ "
+{
+ operands[2] = gen_rtx_REG (Pmode, REGNO (operands[0]));
+ operands[3] = XEXP (operands[1], 0);
+ operands[4] = replace_equiv_address (operands[1], operands[2]);
+}")
+
+(define_expand "reload_outdf"
+ [(parallel [(match_operand:DF 0 "invalid_gpr_mem" "")
+ (match_operand:DF 1 "register_operand" "")
+ (match_operand:DI 2 "register_operand" "=&b")])]
+ "TARGET_POWERPC64"
+{
+ if (!TARGET_64BIT)
+ operands[2] = gen_rtx_REG (SImode, REGNO (operands[2]));
+ emit_move_insn (operands[2], XEXP (operands[0], 0));
+ operands[0] = replace_equiv_address (operands[0], operands[2]);
+ emit_move_insn (operands[0], operands[1]);
+ DONE;
+})
+
+(define_expand "reload_indf"
+ [(parallel [(match_operand:DF 0 "register_operand" "")
+ (match_operand:DF 1 "invalid_gpr_mem" "")
+ (match_operand:DI 2 "register_operand" "=&b")])]
+ "TARGET_POWERPC64"
+{
+ if (!TARGET_64BIT)
+ operands[2] = gen_rtx_REG (SImode, REGNO (operands[2]));
+ emit_move_insn (operands[2], XEXP (operands[1], 0));
+ operands[1] = replace_equiv_address (operands[1], operands[2]);
+ emit_move_insn (operands[0], operands[1]);
+ DONE;
+})
(define_insn "*movdf_softfloat64"
[(set (match_operand:DF 0 "nonimmediate_operand" "=r,Y,r,cl,r,r,r,r,*h")
@@ -8373,35 +8416,40 @@
[(set_attr "type" "fp")
(set_attr "length" "8")])
-(define_insn "abstf2"
+(define_expand "abstf2"
[(set (match_operand:TF 0 "gpc_reg_operand" "=f")
(abs:TF (match_operand:TF 1 "gpc_reg_operand" "f")))]
"(DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_DARWIN)
&& TARGET_HARD_FLOAT && TARGET_FPRS && TARGET_LONG_DOUBLE_128"
- "*
+ "
{
- if (REGNO (operands[0]) == REGNO (operands[1]) + 1)
- return \"fabs %L0,%L1\;fabs %0,%1\";
- else
- return \"fabs %0,%1\;fabs %L0,%L1\";
-}"
- [(set_attr "type" "fp")
- (set_attr "length" "8")])
+ rtx label = gen_label_rtx ();
+ emit_insn (gen_abstf2_internal (operands[0], operands[1], label));
+ emit_label (label);
+ DONE;
+}")
-(define_insn ""
+(define_expand "abstf2_internal"
[(set (match_operand:TF 0 "gpc_reg_operand" "=f")
- (neg:TF (abs:TF (match_operand:TF 1 "gpc_reg_operand" "f"))))]
+ (match_operand:TF 1 "gpc_reg_operand" "f"))
+ (set (match_dup 3) (match_dup 5))
+ (set (match_dup 5) (abs:DF (match_dup 5)))
+ (set (match_dup 4) (compare:CCFP (match_dup 3) (match_dup 5)))
+ (set (pc) (if_then_else (eq (match_dup 4) (const_int 0))
+ (label_ref (match_operand 2 "" ""))
+ (pc)))
+ (set (match_dup 6) (neg:DF (match_dup 6)))]
"(DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_DARWIN)
&& TARGET_HARD_FLOAT && TARGET_FPRS && TARGET_LONG_DOUBLE_128"
- "*
+ "
{
- if (REGNO (operands[0]) == REGNO (operands[1]) + 1)
- return \"fnabs %L0,%L1\;fnabs %0,%1\";
- else
- return \"fnabs %0,%1\;fnabs %L0,%L1\";
-}"
- [(set_attr "type" "fp")
- (set_attr "length" "8")])
+ const int hi_word = FLOAT_WORDS_BIG_ENDIAN ? 0 : GET_MODE_SIZE (DFmode);
+ const int lo_word = FLOAT_WORDS_BIG_ENDIAN ? GET_MODE_SIZE (DFmode) : 0;
+ operands[3] = gen_reg_rtx (DFmode);
+ operands[4] = gen_reg_rtx (CCFPmode);
+ operands[5] = simplify_gen_subreg (DFmode, operands[0], TFmode, hi_word);
+ operands[6] = simplify_gen_subreg (DFmode, operands[0], TFmode, lo_word);
+}")
;; Next come the multi-word integer load and store and the load and store
;; multiple insns.
@@ -8499,15 +8547,16 @@
}")
(define_insn "*movdi_internal64"
- [(set (match_operand:DI 0 "nonimmediate_operand" "=r,r,m,r,r,r,r,?f,f,m,r,*h,*h")
- (match_operand:DI 1 "input_operand" "r,m,r,I,L,nF,R,f,m,f,*h,r,0"))]
+ [(set (match_operand:DI 0 "nonimmediate_operand" "=Y,r,b,r,r,r,r,r,?f,f,m,r,*h,*h")
+ (match_operand:DI 1 "input_operand" "r,Y,m,r,I,L,nF,R,f,m,f,*h,r,0"))]
"TARGET_POWERPC64
&& (gpc_reg_operand (operands[0], DImode)
|| gpc_reg_operand (operands[1], DImode))"
"@
- mr %0,%1
- ld%U1%X1 %0,%1
std%U0%X0 %1,%0
+ ld%U1%X1 %0,%1
+ #
+ mr %0,%1
li %0,%1
lis %0,%v1
#
@@ -8518,8 +8567,51 @@
mf%1 %0
mt%0 %1
{cror 0,0,0|nop}"
- [(set_attr "type" "*,load,store,*,*,*,*,fp,fpload,fpstore,mfjmpr,mtjmpr,*")
- (set_attr "length" "4,4,4,4,4,20,4,4,4,4,4,4,4")])
+ [(set_attr "type" "store,load,load,*,*,*,*,*,fp,fpload,fpstore,mfjmpr,mtjmpr,*")
+ (set_attr "length" "4,4,8,4,4,4,20,4,4,4,4,4,4,4")])
+
+(define_split
+ [(set (match_operand:DI 0 "base_reg_operand" "")
+ (match_operand:DI 1 "invalid_gpr_mem" ""))]
+ "TARGET_POWERPC64 && no_new_pseudos"
+ [(set (match_dup 2) (match_dup 3))
+ (set (match_dup 0) (match_dup 4))]
+ "
+{
+ operands[2] = operands[0];
+ if (!TARGET_64BIT)
+ operands[2] = gen_rtx_REG (SImode, REGNO (operands[0]));
+ operands[3] = XEXP (operands[1], 0);
+ operands[4] = replace_equiv_address (operands[1], operands[2]);
+}")
+
+(define_expand "reload_outdi"
+ [(parallel [(match_operand:DI 0 "invalid_gpr_mem" "")
+ (match_operand:DI 1 "register_operand" "")
+ (match_operand:DI 2 "register_operand" "=&b")])]
+ "TARGET_POWERPC64"
+{
+ if (!TARGET_64BIT)
+ operands[2] = gen_rtx_REG (SImode, REGNO (operands[2]));
+ emit_move_insn (operands[2], XEXP (operands[0], 0));
+ operands[0] = replace_equiv_address (operands[0], operands[2]);
+ emit_move_insn (operands[0], operands[1]);
+ DONE;
+})
+
+(define_expand "reload_indi"
+ [(parallel [(match_operand:DI 0 "register_operand" "")
+ (match_operand:DI 1 "invalid_gpr_mem" "")
+ (match_operand:DI 2 "register_operand" "=&b")])]
+ "TARGET_POWERPC64"
+{
+ if (!TARGET_64BIT)
+ operands[2] = gen_rtx_REG (SImode, REGNO (operands[2]));
+ emit_move_insn (operands[2], XEXP (operands[1], 0));
+ operands[1] = replace_equiv_address (operands[1], operands[2]);
+ emit_move_insn (operands[0], operands[1]);
+ DONE;
+})
;; immediate value valid for a single instruction hiding in a const_double
(define_insn ""
@@ -10229,7 +10321,7 @@
if (DEFAULT_ABI == ABI_V4
|| DEFAULT_ABI == ABI_DARWIN)
- operands[0] = force_reg (Pmode, operands[0]);
+ operands[1] = force_reg (Pmode, operands[1]);
else if (DEFAULT_ABI == ABI_AIX)
{
diff --git a/gcc/config/rs6000/spe.md b/gcc/config/rs6000/spe.md
index becdaa42bb2..34faba7e0ce 100644
--- a/gcc/config/rs6000/spe.md
+++ b/gcc/config/rs6000/spe.md
@@ -76,25 +76,18 @@
"efsdiv %0,%1,%2"
[(set_attr "type" "vecfdiv")])
-(define_insn "spe_efsctuiz"
+(define_insn "spe_fixuns_truncsfsi2"
[(set (match_operand:SI 0 "gpc_reg_operand" "=r")
- (unspec:SI [(match_operand:SF 1 "gpc_reg_operand" "r")] 700))]
+ (unsigned_fix:SI (match_operand:SF 1 "gpc_reg_operand" "r")))]
"TARGET_HARD_FLOAT && !TARGET_FPRS"
"efsctuiz %0,%1"
[(set_attr "type" "fp")])
-(define_insn "spe_fixunssfsi2"
- [(set (match_operand:SI 0 "gpc_reg_operand" "=r")
- (unsigned_fix:SI (fix:SF (match_operand:SF 1 "gpc_reg_operand" "r"))))]
- "TARGET_HARD_FLOAT && !TARGET_FPRS"
- "efsctui %0,%1"
- [(set_attr "type" "fp")])
-
(define_insn "spe_fix_truncsfsi2"
[(set (match_operand:SI 0 "gpc_reg_operand" "=r")
(fix:SI (match_operand:SF 1 "gpc_reg_operand" "r")))]
"TARGET_HARD_FLOAT && !TARGET_FPRS"
- "efsctsi %0,%1"
+ "efsctsiz %0,%1"
[(set_attr "type" "fp")])
(define_insn "spe_floatunssisf2"
@@ -2165,7 +2158,9 @@
(define_insn "*movv2si_internal"
[(set (match_operand:V2SI 0 "nonimmediate_operand" "=m,r,r,r")
(match_operand:V2SI 1 "input_operand" "r,m,r,W"))]
- "TARGET_SPE"
+ "TARGET_SPE
+ && (gpc_reg_operand (operands[0], V2SImode)
+ || gpc_reg_operand (operands[1], V2SImode))"
"*
{
switch (which_alternative)
@@ -2197,7 +2192,9 @@
(define_insn "*movv1di_internal"
[(set (match_operand:V1DI 0 "nonimmediate_operand" "=m,r,r,r")
(match_operand:V1DI 1 "input_operand" "r,m,r,W"))]
- "TARGET_SPE"
+ "TARGET_SPE
+ && (gpc_reg_operand (operands[0], V1DImode)
+ || gpc_reg_operand (operands[1], V1DImode))"
"@
evstdd%X0 %1,%y0
evldd%X1 %0,%y1
@@ -2215,7 +2212,9 @@
(define_insn "*movv4hi_internal"
[(set (match_operand:V4HI 0 "nonimmediate_operand" "=m,r,r")
(match_operand:V4HI 1 "input_operand" "r,m,r"))]
- "TARGET_SPE"
+ "TARGET_SPE
+ && (gpc_reg_operand (operands[0], V4HImode)
+ || gpc_reg_operand (operands[1], V4HImode))"
"@
evstdd%X0 %1,%y0
evldd%X1 %0,%y1
@@ -2231,7 +2230,9 @@
(define_insn "*movv2sf_internal"
[(set (match_operand:V2SF 0 "nonimmediate_operand" "=m,r,r,r")
(match_operand:V2SF 1 "input_operand" "r,m,r,W"))]
- "TARGET_SPE"
+ "TARGET_SPE
+ && (gpc_reg_operand (operands[0], V2SFmode)
+ || gpc_reg_operand (operands[1], V2SFmode))"
"@
evstdd%X0 %1,%y0
evldd%X1 %0,%y1
@@ -2240,6 +2241,8 @@
[(set_attr "type" "vecload,vecstore,*,*")
(set_attr "length" "*,*,*,*")])
+;; End of vector move instructions.
+
(define_insn "spe_evmwhssfaa"
[(set (match_operand:V2SI 0 "gpc_reg_operand" "=r")
(unspec:V2SI [(match_operand:V2SI 1 "gpc_reg_operand" "r")
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index 20e7c9a24a4..1e0ac3707f6 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -744,6 +744,18 @@ extern int fixuplabelno;
#define DBX_REGISTER_NUMBER(REGNO) rs6000_dbx_register_number (REGNO)
+/* Map register numbers held in the call frame info that gcc has
+ collected using DWARF_FRAME_REGNUM to those that should be output in
+ .debug_frame and .eh_frame. We continue to use gcc hard reg numbers
+ for .eh_frame, but use the numbers mandated by the various ABIs for
+ .debug_frame. rs6000_emit_prologue has translated any combination of
+ CR2, CR3, CR4 saves to a save of CR2. The actual code emitted saves
+ the whole of CR, so we map CR2_REGNO to the DWARF reg for CR. */
+#define DWARF2_FRAME_REG_OUT(REGNO, FOR_EH) \
+ ((FOR_EH) ? (REGNO) \
+ : (REGNO) == CR2_REGNO ? 64 \
+ : DBX_REGISTER_NUMBER (REGNO))
+
#define TARGET_ENCODE_SECTION_INFO rs6000_elf_encode_section_info
#define TARGET_IN_SMALL_DATA_P rs6000_elf_in_small_data_p
#define TARGET_SECTION_TYPE_FLAGS rs6000_elf_section_type_flags
@@ -1080,16 +1092,16 @@ extern int fixuplabelno;
#define LINK_OS_FREEBSD_SPEC "\
%{p:%e`-p' not supported; use `-pg' and gprof(1)} \
- %{Wl,*:%*} \
- %{v:-V} \
- %{assert*} %{R*} %{rpath*} %{defsym*} \
- %{shared:-Bshareable %{h*} %{soname*}} \
- %{!shared: \
- %{!static: \
- %{rdynamic: -export-dynamic} \
- %{!dynamic-linker: -dynamic-linker /usr/libexec/ld-elf.so.1}} \
- %{static:-Bstatic}} \
- %{symbolic:-Bsymbolic}"
+ %{Wl,*:%*} \
+ %{v:-V} \
+ %{assert*} %{R*} %{rpath*} %{defsym*} \
+ %{shared:-Bshareable %{h*} %{soname*}} \
+ %{!shared: \
+ %{!static: \
+ %{rdynamic: -export-dynamic} \
+ %{!dynamic-linker:-dynamic-linker %(fbsd_dynamic_linker) }} \
+ %{static:-Bstatic}} \
+ %{symbolic:-Bsymbolic}"
/* GNU/Linux support. */
#define LIB_LINUX_SPEC "%{mnewlib: --start-group -llinux -lc --end-group } \
@@ -1302,6 +1314,7 @@ ncrtn.o%s"
{ "cpp_os_openbsd", CPP_OS_OPENBSD_SPEC }, \
{ "cpp_os_windiss", CPP_OS_WINDISS_SPEC }, \
{ "cpp_os_default", CPP_OS_DEFAULT_SPEC }, \
+ { "fbsd_dynamic_linker", FBSD_DYNAMIC_LINKER }, \
SUBSUBTARGET_EXTRA_SPECS
#define SUBSUBTARGET_EXTRA_SPECS
diff --git a/gcc/config/rs6000/t-linux64 b/gcc/config/rs6000/t-linux64
index b94975e0c1d..77ba93e9152 100644
--- a/gcc/config/rs6000/t-linux64
+++ b/gcc/config/rs6000/t-linux64
@@ -1,8 +1,12 @@
-# These functions are needed for soft-float on powerpc64-linux.
-LIB2FUNCS_EXTRA = tramp.S $(srcdir)/config/rs6000/ppc64-fp.c
-# Modify the shared lib version file
-SHLIB_MKMAP_OPTS = -v dotsyms=1
+#rs6000/t-linux64
+
+LIB2FUNCS_EXTRA = tramp.S $(srcdir)/config/rs6000/ppc64-fp.c \
+ $(srcdir)/config/rs6000/darwin-ldouble.c
+
+TARGET_LIBGCC2_CFLAGS = -mno-minimal-toc -fPIC -specs=bispecs
+
+SHLIB_MAPFILES += $(srcdir)/config/rs6000/libgcc-ppc64.ver
MULTILIB_OPTIONS = m64/m32 msoft-float
MULTILIB_DIRNAMES = 64 32 nof
@@ -12,8 +16,6 @@ MULTILIB_EXCLUSIONS = m64/!m32/msoft-float
MULTILIB_OSDIRNAMES = ../lib64 ../lib nof
MULTILIB_MATCHES = $(MULTILIB_MATCHES_FLOAT)
-TARGET_LIBGCC2_CFLAGS = -mno-minimal-toc -fPIC
-
# We want fine grained libraries, so use the new code to build the
# floating point emulation libraries.
# fp-bit is only to be used by 32-bit multilibs
@@ -30,3 +32,13 @@ fp-bit32.c: $(srcdir)/config/fp-bit.c
echo '#define FLOAT'; \
cat $(srcdir)/config/fp-bit.c; \
echo '#endif' ) > fp-bit32.c
+
+# Hack to use -mlong-double-128 just for compiling 64 bit libgcc
+mklibgcc: bispecs
+
+bispecs: specs
+ if [ x`$(GCC_FOR_TARGET) -print-multi-os-directory` = x../lib ]; then \
+ sed -e '/cc1_options/{ n; s/$$/ %{m64:-mlong-double-128}/; }' < specs > $@; \
+ else \
+ sed -e '/cc1_options/{ n; s/$$/ %{!m32:-mlong-double-128}/; }' < specs > $@; \
+ fi
diff --git a/gcc/config/rs6000/t-rtems b/gcc/config/rs6000/t-rtems
new file mode 100644
index 00000000000..364a22d2278
--- /dev/null
+++ b/gcc/config/rs6000/t-rtems
@@ -0,0 +1,86 @@
+# Multilibs for powerpc RTEMS targets.
+
+MULTILIB_OPTIONS = \
+mcpu=403/mcpu=505/mcpu=601/mcpu=602/mcpu=603/mcpu=603e/mcpu=604/mcpu=750/mcpu=821/mcpu=860 \
+Dmpc509/Dmpc8260 \
+D_OLD_EXCEPTIONS \
+msoft-float
+
+MULTILIB_DIRNAMES = \
+m403 m505 m601 m602 m603 m603e m604 m750 m821 m860 \
+mpc509 \
+mpc8260 \
+roe \
+nof
+
+MULTILIB_EXTRA_OPTS = mrelocatable-lib mno-eabi mstrict-align
+
+# MULTILIB_MATCHES = ${MULTILIB_MATCHES_FLOAT}
+MULTILIB_MATCHES = ${MULTILIB_MATCHES_ENDIAN} \
+ ${MULTILIB_MATCHES_SYSV} \
+ mcpu?505/Dmpc505=mcpu?505/Dmpc509
+
+#
+# RTEMS old/new-exceptions handling
+#
+# old-exception processing is depredicated, therefore
+#
+# * Cpu-variants supporting new exception processing are build
+# with new exception processing only
+# * Cpu-variants not having been ported to new exception processing are
+# build with old and new exception processing
+#
+
+# Cpu-variants supporting new exception processing only
+MULTILIB_NEW_EXCEPTIONS_ONLY = \
+*mcpu=604*/*D_OLD_EXCEPTIONS* \
+*mcpu=750*/*D_OLD_EXCEPTIONS* \
+*mcpu=821*/*D_OLD_EXCEPTIONS* \
+*Dmpc8260*/*D_OLD_EXCEPTIONS* \
+*mcpu=860*/*D_OLD_EXCEPTIONS*
+
+# Soft-float only, default implies msoft-float
+# NOTE: Must match with MULTILIB_MATCHES_FLOAT and MULTILIB_MATCHES
+MULTILIB_SOFTFLOAT_ONLY = \
+mcpu=403/*msoft-float* \
+mcpu=821/*msoft-float* \
+mcpu=860/*msoft-float*
+
+# Hard-float only, take out msoft-float
+MULTILIB_HARDFLOAT_ONLY = \
+mcpu=505/*msoft-float*
+
+MULTILIB_EXCEPTIONS =
+
+# Disallow -D_OLD_EXCEPTIONS without other options
+MULTILIB_EXCEPTIONS += D_OLD_EXCEPTIONS*
+
+# Disallow -Dppc and -Dmpc without other options
+MULTILIB_EXCEPTIONS += Dppc* Dmpc*
+
+MULTILIB_EXCEPTIONS += \
+${MULTILIB_NEW_EXCEPTIONS_ONLY} \
+${MULTILIB_SOFTFLOAT_ONLY} \
+${MULTILIB_HARDFLOAT_ONLY}
+
+# Special rules
+# Take out all variants we don't want
+MULTILIB_EXCEPTIONS += mcpu=403/Dmpc509*
+MULTILIB_EXCEPTIONS += mcpu=403/Dmpc8260*
+MULTILIB_EXCEPTIONS += mcpu=505/Dmpc509*
+MULTILIB_EXCEPTIONS += mcpu=505/Dmpc8260*
+MULTILIB_EXCEPTIONS += mcpu=601/Dmpc509*
+MULTILIB_EXCEPTIONS += mcpu=601/Dmpc8260*
+MULTILIB_EXCEPTIONS += mcpu=602/Dmpc509*
+MULTILIB_EXCEPTIONS += mcpu=602/Dmpc8260*
+MULTILIB_EXCEPTIONS += mcpu=603/Dmpc509*
+MULTILIB_EXCEPTIONS += mcpu=603/Dmpc8260*
+MULTILIB_EXCEPTIONS += mcpu=603e/Dmpc509*
+MULTILIB_EXCEPTIONS += mcpu=604/Dmpc509*
+MULTILIB_EXCEPTIONS += mcpu=604/Dmpc8260*
+MULTILIB_EXCEPTIONS += mcpu=750/Dmpc509*
+MULTILIB_EXCEPTIONS += mcpu=750/Dmpc8260*
+MULTILIB_EXCEPTIONS += mcpu=821/Dmpc509*
+MULTILIB_EXCEPTIONS += mcpu=821/Dmpc8260*
+MULTILIB_EXCEPTIONS += mcpu=860/Dmpc509*
+MULTILIB_EXCEPTIONS += mcpu=860/Dmpc8260*
diff --git a/gcc/config/rs6000/xcoff.h b/gcc/config/rs6000/xcoff.h
index 36c2aa88623..d4e056b4b74 100644
--- a/gcc/config/rs6000/xcoff.h
+++ b/gcc/config/rs6000/xcoff.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler,
for some generic XCOFF file format
- Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/config/rtems.h b/gcc/config/rtems.h
index 9a284c5a155..80636436124 100644
--- a/gcc/config/rtems.h
+++ b/gcc/config/rtems.h
@@ -1,5 +1,5 @@
/* Configuration common to all targets running RTEMS.
- Copyright (C) 2000, 2002 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2002, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -35,3 +35,17 @@ Boston, MA 02111-1307, USA. */
#undef ENDFILE_SPEC
#define ENDFILE_SPEC ""
+
+/*
+ * Some targets do not set up LIB_SPECS, override it, here.
+ */
+#define STD_LIB_SPEC \
+ "%{!shared:%{g*:-lg} %{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}}"
+
+#undef LIB_SPEC
+#define LIB_SPEC "%{!qrtems: " STD_LIB_SPEC "} " \
+"%{!nostdlib: %{qrtems: --start-group \
+ %{!qrtems_debug: -lrtemsbsp -lrtemscpu} \
+ %{qrtems_debug: -lrtemsbsp_g -lrtemscpu_g} \
+ -lc -lgcc --end-group %{!qnolinkcmds: -T linkcmds%s}}}"
+
diff --git a/gcc/config/s390/s390-protos.h b/gcc/config/s390/s390-protos.h
index c45ff4dcd0f..90815a87938 100644
--- a/gcc/config/s390/s390-protos.h
+++ b/gcc/config/s390/s390-protos.h
@@ -1,5 +1,5 @@
/* Definitions of target machine for GNU compiler, for IBM S/390.
- Copyright (C) 2000, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Hartmut Penner (hpenner@de.ibm.com)
This file is part of GCC.
@@ -23,7 +23,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
extern void optimization_options (int, int);
extern void override_options (void);
-extern int s390_arg_frame_offset (void);
+extern HOST_WIDE_INT s390_arg_frame_offset (void);
extern void s390_load_got (int);
extern void s390_emit_prologue (void);
extern void s390_emit_epilogue (void);
diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c
index b79a2675909..ced0bf9010a 100644
--- a/gcc/config/s390/s390.c
+++ b/gcc/config/s390/s390.c
@@ -1,5 +1,6 @@
/* Subroutines used for code generation on IBM S/390 and zSeries
- Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
Contributed by Hartmut Penner (hpenner@de.ibm.com) and
Ulrich Weigand (uweigand@de.ibm.com).
@@ -2072,8 +2073,6 @@ s390_decompose_address (register rtx addr, struct s390_address *out)
&& frame_pointer_needed
&& REGNO (base) == HARD_FRAME_POINTER_REGNUM)
|| REGNO (base) == ARG_POINTER_REGNUM
- || (REGNO (base) >= FIRST_VIRTUAL_REGISTER
- && REGNO (base) <= LAST_VIRTUAL_REGISTER)
|| (flag_pic
&& REGNO (base) == PIC_OFFSET_TABLE_REGNUM))
pointer = base_ptr = TRUE;
@@ -2099,8 +2098,6 @@ s390_decompose_address (register rtx addr, struct s390_address *out)
&& frame_pointer_needed
&& REGNO (indx) == HARD_FRAME_POINTER_REGNUM)
|| REGNO (indx) == ARG_POINTER_REGNUM
- || (REGNO (indx) >= FIRST_VIRTUAL_REGISTER
- && REGNO (indx) <= LAST_VIRTUAL_REGISTER)
|| (flag_pic
&& REGNO (indx) == PIC_OFFSET_TABLE_REGNUM))
pointer = indx_ptr = TRUE;
@@ -2546,7 +2543,7 @@ legitimize_pic_address (rtx orig, rtx reg)
addr = gen_rtx_PLUS (Pmode, addr, op1);
addr = gen_rtx_CONST (Pmode, addr);
addr = force_const_mem (Pmode, addr);
- emit_move_insn (temp, addr);
+ emit_move_insn (temp, addr);
new = gen_rtx_PLUS (Pmode, pic_offset_table_rtx, temp);
if (reg != 0)
@@ -2561,12 +2558,11 @@ legitimize_pic_address (rtx orig, rtx reg)
that was pulled out of the literal pool. Force it back in. */
else if (GET_CODE (op0) == UNSPEC
- && GET_CODE (op1) == CONST_INT)
+ && GET_CODE (op1) == CONST_INT
+ && XINT (op0, 1) == UNSPEC_GOTOFF)
{
if (XVECLEN (op0, 0) != 1)
abort ();
- if (XINT (op0, 1) != UNSPEC_GOTOFF)
- abort ();
new = force_const_mem (Pmode, orig);
}
@@ -4422,6 +4418,10 @@ s390_mainpool_start (void)
if (pool->size >= 4096)
{
+ /* We're going to chunkify the pool, so remove the main
+ pool placeholder insn. */
+ remove_insn (pool->pool_insn);
+
s390_free_pool (pool);
pool = NULL;
}
@@ -5259,6 +5259,11 @@ s390_return_addr_rtx (int count, rtx frame)
{
rtx addr;
+ /* Without backchain, we fail for all but the current frame. */
+
+ if (!TARGET_BACKCHAIN && count > 0)
+ return NULL_RTX;
+
/* For the current frame, we need to make sure the initial
value of RETURN_REGNUM is actually saved. */
@@ -5295,7 +5300,7 @@ s390_frame_info (void)
int i, j;
HOST_WIDE_INT fsize = get_frame_size ();
- if (fsize > 0x7fff0000)
+ if (!TARGET_64BIT && fsize > 0x7fff0000)
fatal_error ("Total size of local variables exceeds architecture limit.");
/* fprs 8 - 15 are caller saved for 64 Bit ABI. */
@@ -5368,7 +5373,7 @@ s390_frame_info (void)
/* Return offset between argument pointer and frame pointer
initially after prologue. */
-int
+HOST_WIDE_INT
s390_arg_frame_offset (void)
{
HOST_WIDE_INT fsize = get_frame_size ();
diff --git a/gcc/config/s390/s390.h b/gcc/config/s390/s390.h
index cbe02d657f8..d2416c8a0f8 100644
--- a/gcc/config/s390/s390.h
+++ b/gcc/config/s390/s390.h
@@ -1,5 +1,6 @@
/* Definitions of target machine for GNU compiler, for IBM S/390
- Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
Contributed by Hartmut Penner (hpenner@de.ibm.com) and
Ulrich Weigand (uweigand@de.ibm.com).
@@ -114,9 +115,9 @@ extern int target_flags;
#define TARGET_IEEE_FLOAT 1
#ifdef DEFAULT_TARGET_64BIT
-#define TARGET_DEFAULT 0x33
+#define TARGET_DEFAULT 0x31
#else
-#define TARGET_DEFAULT 0x3
+#define TARGET_DEFAULT 0x1
#endif
#define TARGET_SWITCHES \
@@ -684,7 +685,7 @@ typedef struct s390_arg_structure
}
CUMULATIVE_ARGS;
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, NN) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, NN, N_NAMED_ARGS) \
((CUM).gprs=0, (CUM).fprs=0)
#define FUNCTION_ARG_ADVANCE(CUM, MODE, TYPE, NAMED) \
diff --git a/gcc/config/s390/s390.md b/gcc/config/s390/s390.md
index 215848b9f1d..ebb8b572992 100644
--- a/gcc/config/s390/s390.md
+++ b/gcc/config/s390/s390.md
@@ -1,5 +1,6 @@
;;- Machine description for GNU compiler -- S/390 / zSeries version.
-;; Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+;; Free Software Foundation, Inc.
;; Contributed by Hartmut Penner (hpenner@de.ibm.com) and
;; Ulrich Weigand (uweigand@de.ibm.com).
@@ -432,13 +433,13 @@
}
[(set_attr "op_type" "RI")])
-(define_insn "*tmqi_ext"
+(define_insn "*tmqisi_ext"
[(set (reg 33)
(compare (zero_extract:SI (match_operand:QI 0 "memory_operand" "Q,S")
(match_operand:SI 1 "const_int_operand" "n,n")
(match_operand:SI 2 "const_int_operand" "n,n"))
(const_int 0)))]
- "s390_match_ccmode(insn, CCTmode)
+ "!TARGET_64BIT && s390_match_ccmode(insn, CCTmode)
&& INTVAL (operands[1]) >= 1 && INTVAL (operands[2]) >= 0
&& INTVAL (operands[1]) + INTVAL (operands[2]) <= 8"
{
@@ -450,6 +451,25 @@
}
[(set_attr "op_type" "SI,SIY")])
+(define_insn "*tmqidi_ext"
+ [(set (reg 33)
+ (compare (zero_extract:DI (match_operand:QI 0 "memory_operand" "Q,S")
+ (match_operand:SI 1 "const_int_operand" "n,n")
+ (match_operand:SI 2 "const_int_operand" "n,n"))
+ (const_int 0)))]
+ "TARGET_64BIT && s390_match_ccmode(insn, CCTmode)
+ && INTVAL (operands[1]) >= 1 && INTVAL (operands[2]) >= 0
+ && INTVAL (operands[1]) + INTVAL (operands[2]) <= 8"
+{
+ int block = (1 << INTVAL (operands[1])) - 1;
+ int shift = 8 - INTVAL (operands[1]) - INTVAL (operands[2]);
+
+ operands[2] = GEN_INT (block << shift);
+ return which_alternative == 0 ? "tm\t%0,%b2" : "tmy\t%0,%b2";
+}
+ [(set_attr "op_type" "SI,SIY")])
+
+
; Test-under-Mask instructions
(define_insn "*tmdi_mem"
@@ -1170,6 +1190,52 @@
[(set (match_dup 0) (match_dup 2))]
"operands[2] = get_pool_constant (operands[1]);")
+(define_insn "*la_64"
+ [(set (match_operand:DI 0 "register_operand" "=d,d")
+ (match_operand:QI 1 "address_operand" "U,W"))]
+ "TARGET_64BIT"
+ "@
+ la\t%0,%a1
+ lay\t%0,%a1"
+ [(set_attr "op_type" "RX,RXY")
+ (set_attr "type" "la")])
+
+(define_peephole2
+ [(parallel
+ [(set (match_operand:DI 0 "register_operand" "")
+ (match_operand:QI 1 "address_operand" ""))
+ (clobber (reg:CC 33))])]
+ "TARGET_64BIT
+ && strict_memory_address_p (VOIDmode, operands[1])
+ && preferred_la_operand_p (operands[1])"
+ [(set (match_dup 0) (match_dup 1))]
+ "")
+
+(define_peephole2
+ [(set (match_operand:DI 0 "register_operand" "")
+ (match_operand:DI 1 "register_operand" ""))
+ (parallel
+ [(set (match_dup 0)
+ (plus:DI (match_dup 0)
+ (match_operand:DI 2 "nonmemory_operand" "")))
+ (clobber (reg:CC 33))])]
+ "TARGET_64BIT
+ && !reg_overlap_mentioned_p (operands[0], operands[2])
+ && strict_memory_address_p (VOIDmode, gen_rtx_PLUS (DImode, operands[1], operands[2]))
+ && preferred_la_operand_p (gen_rtx_PLUS (DImode, operands[1], operands[2]))"
+ [(set (match_dup 0) (plus:DI (match_dup 1) (match_dup 2)))]
+ "")
+
+(define_expand "reload_indi"
+ [(parallel [(match_operand:DI 0 "register_operand" "=a")
+ (match_operand:DI 1 "s390_plus_operand" "")
+ (match_operand:DI 2 "register_operand" "=&a")])]
+ "TARGET_64BIT"
+{
+ s390_expand_plus_operand (operands[0], operands[1], operands[2]);
+ DONE;
+})
+
;
; movsi instruction pattern(s).
;
@@ -1266,6 +1332,88 @@
[(set (match_dup 0) (match_dup 2))]
"operands[2] = get_pool_constant (operands[1]);")
+(define_insn "*la_31"
+ [(set (match_operand:SI 0 "register_operand" "=d,d")
+ (match_operand:QI 1 "address_operand" "U,W"))]
+ "!TARGET_64BIT && legitimate_la_operand_p (operands[1])"
+ "@
+ la\t%0,%a1
+ lay\t%0,%a1"
+ [(set_attr "op_type" "RX,RXY")
+ (set_attr "type" "la")])
+
+(define_peephole2
+ [(parallel
+ [(set (match_operand:SI 0 "register_operand" "")
+ (match_operand:QI 1 "address_operand" ""))
+ (clobber (reg:CC 33))])]
+ "!TARGET_64BIT
+ && strict_memory_address_p (VOIDmode, operands[1])
+ && preferred_la_operand_p (operands[1])"
+ [(set (match_dup 0) (match_dup 1))]
+ "")
+
+(define_peephole2
+ [(set (match_operand:SI 0 "register_operand" "")
+ (match_operand:SI 1 "register_operand" ""))
+ (parallel
+ [(set (match_dup 0)
+ (plus:SI (match_dup 0)
+ (match_operand:SI 2 "nonmemory_operand" "")))
+ (clobber (reg:CC 33))])]
+ "!TARGET_64BIT
+ && !reg_overlap_mentioned_p (operands[0], operands[2])
+ && strict_memory_address_p (VOIDmode, gen_rtx_PLUS (SImode, operands[1], operands[2]))
+ && preferred_la_operand_p (gen_rtx_PLUS (SImode, operands[1], operands[2]))"
+ [(set (match_dup 0) (plus:SI (match_dup 1) (match_dup 2)))]
+ "")
+
+(define_insn "*la_31_and"
+ [(set (match_operand:SI 0 "register_operand" "=d,d")
+ (and:SI (match_operand:QI 1 "address_operand" "U,W")
+ (const_int 2147483647)))]
+ "!TARGET_64BIT"
+ "@
+ la\t%0,%a1
+ lay\t%0,%a1"
+ [(set_attr "op_type" "RX,RXY")
+ (set_attr "type" "la")])
+
+(define_insn_and_split "*la_31_and_cc"
+ [(set (match_operand:SI 0 "register_operand" "=d")
+ (and:SI (match_operand:QI 1 "address_operand" "p")
+ (const_int 2147483647)))
+ (clobber (reg:CC 33))]
+ "!TARGET_64BIT"
+ "#"
+ "&& reload_completed"
+ [(set (match_dup 0)
+ (and:SI (match_dup 1) (const_int 2147483647)))]
+ ""
+ [(set_attr "op_type" "RX")
+ (set_attr "type" "la")])
+
+(define_insn "force_la_31"
+ [(set (match_operand:SI 0 "register_operand" "=d,d")
+ (match_operand:QI 1 "address_operand" "U,W"))
+ (use (const_int 0))]
+ "!TARGET_64BIT"
+ "@
+ la\t%0,%a1
+ lay\t%0,%a1"
+ [(set_attr "op_type" "RX")
+ (set_attr "type" "la")])
+
+(define_expand "reload_insi"
+ [(parallel [(match_operand:SI 0 "register_operand" "=a")
+ (match_operand:SI 1 "s390_plus_operand" "")
+ (match_operand:SI 2 "register_operand" "=&a")])]
+ "!TARGET_64BIT"
+{
+ s390_expand_plus_operand (operands[0], operands[1], operands[2]);
+ DONE;
+})
+
;
; movhi instruction pattern(s).
;
@@ -1548,12 +1696,15 @@
;
; load_multiple pattern(s).
;
+; ??? Due to reload problems with replacing registers inside match_parallel
+; we currently support load_multiple/store_multiple only after reload.
+;
(define_expand "load_multiple"
[(match_par_dup 3 [(set (match_operand 0 "" "")
(match_operand 1 "" ""))
(use (match_operand 2 "" ""))])]
- ""
+ "reload_completed"
{
enum machine_mode mode;
int regno;
@@ -1615,7 +1766,7 @@
[(match_parallel 0 "load_multiple_operation"
[(set (match_operand:DI 1 "register_operand" "=r")
(match_operand:DI 2 "s_operand" "QS"))])]
- "word_mode == DImode"
+ "reload_completed && word_mode == DImode"
{
int words = XVECLEN (operands[0], 0);
operands[0] = gen_rtx_REG (DImode, REGNO (operands[1]) + words - 1);
@@ -1628,7 +1779,7 @@
[(match_parallel 0 "load_multiple_operation"
[(set (match_operand:SI 1 "register_operand" "=r,r")
(match_operand:SI 2 "s_operand" "Q,S"))])]
- ""
+ "reload_completed"
{
int words = XVECLEN (operands[0], 0);
operands[0] = gen_rtx_REG (SImode, REGNO (operands[1]) + words - 1);
@@ -1645,7 +1796,7 @@
[(match_par_dup 3 [(set (match_operand 0 "" "")
(match_operand 1 "" ""))
(use (match_operand 2 "" ""))])]
- ""
+ "reload_completed"
{
enum machine_mode mode;
int regno;
@@ -1709,7 +1860,7 @@
[(match_parallel 0 "store_multiple_operation"
[(set (match_operand:DI 1 "s_operand" "=QS")
(match_operand:DI 2 "register_operand" "r"))])]
- "word_mode == DImode"
+ "reload_completed && word_mode == DImode"
{
int words = XVECLEN (operands[0], 0);
operands[0] = gen_rtx_REG (DImode, REGNO (operands[2]) + words - 1);
@@ -1723,7 +1874,7 @@
[(match_parallel 0 "store_multiple_operation"
[(set (match_operand:SI 1 "s_operand" "=Q,S")
(match_operand:SI 2 "register_operand" "r,r"))])]
- ""
+ "reload_completed"
{
int words = XVECLEN (operands[0], 0);
operands[0] = gen_rtx_REG (SImode, REGNO (operands[2]) + words - 1);
@@ -2391,10 +2542,13 @@
"lgb\t%0,%1"
[(set_attr "op_type" "RXY")])
-(define_split
- [(set (match_operand:DI 0 "register_operand" "")
- (sign_extend:DI (match_operand:QI 1 "s_operand" "")))]
- "TARGET_64BIT && !TARGET_LONG_DISPLACEMENT && !reload_completed"
+(define_insn_and_split "*extendqidi2_short_displ"
+ [(set (match_operand:DI 0 "register_operand" "=d")
+ (sign_extend:DI (match_operand:QI 1 "s_operand" "Q")))
+ (clobber (reg:CC 33))]
+ "TARGET_64BIT && !TARGET_LONG_DISPLACEMENT"
+ "#"
+ "&& reload_completed"
[(parallel
[(set (match_dup 0) (unspec:DI [(match_dup 1)] UNSPEC_SETHIGH))
(clobber (reg:CC 33))])
@@ -2453,10 +2607,13 @@
"lb\t%0,%1"
[(set_attr "op_type" "RXY")])
-(define_split
- [(set (match_operand:SI 0 "register_operand" "")
- (sign_extend:SI (match_operand:QI 1 "s_operand" "")))]
- "!TARGET_LONG_DISPLACEMENT && !reload_completed"
+(define_insn_and_split "*extendsiqi2_short_displ"
+ [(set (match_operand:SI 0 "register_operand" "=d")
+ (sign_extend:SI (match_operand:QI 1 "s_operand" "Q")))
+ (clobber (reg:CC 33))]
+ "!TARGET_LONG_DISPLACEMENT"
+ "#"
+ "&& reload_completed"
[(parallel
[(set (match_dup 0) (unspec:SI [(match_dup 1)] UNSPEC_SETHIGH))
(clobber (reg:CC 33))])
@@ -3402,53 +3559,6 @@
""
"")
-(define_insn "*la_64"
- [(set (match_operand:DI 0 "register_operand" "=d,d")
- (match_operand:QI 1 "address_operand" "U,W"))]
- "TARGET_64BIT"
- "@
- la\t%0,%a1
- lay\t%0,%a1"
- [(set_attr "op_type" "RX,RXY")
- (set_attr "type" "la")])
-
-(define_peephole2
- [(parallel
- [(set (match_operand:DI 0 "register_operand" "")
- (match_operand:QI 1 "address_operand" ""))
- (clobber (reg:CC 33))])]
- "TARGET_64BIT
- && strict_memory_address_p (VOIDmode, operands[1])
- && preferred_la_operand_p (operands[1])"
- [(set (match_dup 0) (match_dup 1))]
- "")
-
-(define_peephole2
- [(set (match_operand:DI 0 "register_operand" "")
- (match_operand:DI 1 "register_operand" ""))
- (parallel
- [(set (match_dup 0)
- (plus:DI (match_dup 0)
- (match_operand:DI 2 "nonmemory_operand" "")))
- (clobber (reg:CC 33))])]
- "TARGET_64BIT
- && !reg_overlap_mentioned_p (operands[0], operands[2])
- && strict_memory_address_p (VOIDmode, gen_rtx_PLUS (DImode, operands[1], operands[2]))
- && preferred_la_operand_p (gen_rtx_PLUS (DImode, operands[1], operands[2]))"
- [(set (match_dup 0) (plus:DI (match_dup 1) (match_dup 2)))]
- "")
-
-(define_expand "reload_indi"
- [(parallel [(match_operand:DI 0 "register_operand" "=a")
- (match_operand:DI 1 "s390_plus_operand" "")
- (match_operand:DI 2 "register_operand" "=&a")])]
- "TARGET_64BIT"
-{
- s390_expand_plus_operand (operands[0], operands[1], operands[2]);
- DONE;
-})
-
-
;
; addsi3 instruction pattern(s).
;
@@ -3582,89 +3692,6 @@
ay\t%0,%2"
[(set_attr "op_type" "RR,RI,RX,RXY")])
-(define_insn "*la_31"
- [(set (match_operand:SI 0 "register_operand" "=d,d")
- (match_operand:QI 1 "address_operand" "U,W"))]
- "!TARGET_64BIT && legitimate_la_operand_p (operands[1])"
- "@
- la\t%0,%a1
- lay\t%0,%a1"
- [(set_attr "op_type" "RX,RXY")
- (set_attr "type" "la")])
-
-(define_peephole2
- [(parallel
- [(set (match_operand:SI 0 "register_operand" "")
- (match_operand:QI 1 "address_operand" ""))
- (clobber (reg:CC 33))])]
- "!TARGET_64BIT
- && strict_memory_address_p (VOIDmode, operands[1])
- && preferred_la_operand_p (operands[1])"
- [(set (match_dup 0) (match_dup 1))]
- "")
-
-(define_peephole2
- [(set (match_operand:SI 0 "register_operand" "")
- (match_operand:SI 1 "register_operand" ""))
- (parallel
- [(set (match_dup 0)
- (plus:SI (match_dup 0)
- (match_operand:SI 2 "nonmemory_operand" "")))
- (clobber (reg:CC 33))])]
- "!TARGET_64BIT
- && !reg_overlap_mentioned_p (operands[0], operands[2])
- && strict_memory_address_p (VOIDmode, gen_rtx_PLUS (SImode, operands[1], operands[2]))
- && preferred_la_operand_p (gen_rtx_PLUS (SImode, operands[1], operands[2]))"
- [(set (match_dup 0) (plus:DI (match_dup 1) (match_dup 2)))]
- "")
-
-(define_insn "*la_31_and"
- [(set (match_operand:SI 0 "register_operand" "=d,d")
- (and:SI (match_operand:QI 1 "address_operand" "U,W")
- (const_int 2147483647)))]
- "!TARGET_64BIT"
- "@
- la\t%0,%a1
- lay\t%0,%a1"
- [(set_attr "op_type" "RX,RXY")
- (set_attr "type" "la")])
-
-(define_insn_and_split "*la_31_and_cc"
- [(set (match_operand:SI 0 "register_operand" "=d")
- (and:SI (match_operand:QI 1 "address_operand" "p")
- (const_int 2147483647)))
- (clobber (reg:CC 33))]
- "!TARGET_64BIT"
- "#"
- "&& reload_completed"
- [(set (match_dup 0)
- (and:SI (match_dup 1) (const_int 2147483647)))]
- ""
- [(set_attr "op_type" "RX")
- (set_attr "type" "la")])
-
-(define_insn "force_la_31"
- [(set (match_operand:SI 0 "register_operand" "=d,d")
- (match_operand:QI 1 "address_operand" "U,W"))
- (use (const_int 0))]
- "!TARGET_64BIT"
- "@
- la\t%0,%a1
- lay\t%0,%a1"
- [(set_attr "op_type" "RX")
- (set_attr "type" "la")])
-
-(define_expand "reload_insi"
- [(parallel [(match_operand:SI 0 "register_operand" "=a")
- (match_operand:SI 1 "s390_plus_operand" "")
- (match_operand:SI 2 "register_operand" "=&a")])]
- "!TARGET_64BIT"
-{
- s390_expand_plus_operand (operands[0], operands[1], operands[2]);
- DONE;
-})
-
-
;
; adddf3 instruction pattern(s).
;
@@ -4086,7 +4113,7 @@
(define_insn "*subdf3_cc"
[(set (reg 33)
- (compare (minus:DF (match_operand:DF 1 "nonimmediate_operand" "%0,0")
+ (compare (minus:DF (match_operand:DF 1 "nonimmediate_operand" "0,0")
(match_operand:DF 2 "general_operand" "f,R"))
(match_operand:DF 3 "const0_operand" "")))
(set (match_operand:DF 0 "register_operand" "=f,f")
@@ -4100,7 +4127,7 @@
(define_insn "*subdf3_cconly"
[(set (reg 33)
- (compare (minus:DF (match_operand:DF 1 "nonimmediate_operand" "%0,0")
+ (compare (minus:DF (match_operand:DF 1 "nonimmediate_operand" "0,0")
(match_operand:DF 2 "general_operand" "f,R"))
(match_operand:DF 3 "const0_operand" "")))
(clobber (match_scratch:DF 0 "=f,f"))]
@@ -4150,7 +4177,7 @@
(define_insn "*subsf3_cc"
[(set (reg 33)
- (compare (minus:SF (match_operand:SF 1 "nonimmediate_operand" "%0,0")
+ (compare (minus:SF (match_operand:SF 1 "nonimmediate_operand" "0,0")
(match_operand:SF 2 "general_operand" "f,R"))
(match_operand:SF 3 "const0_operand" "")))
(set (match_operand:SF 0 "register_operand" "=f,f")
@@ -4164,7 +4191,7 @@
(define_insn "*subsf3_cconly"
[(set (reg 33)
- (compare (minus:SF (match_operand:SF 1 "nonimmediate_operand" "%0,0")
+ (compare (minus:SF (match_operand:SF 1 "nonimmediate_operand" "0,0")
(match_operand:SF 2 "general_operand" "f,R"))
(match_operand:SF 3 "const0_operand" "")))
(clobber (match_scratch:SF 0 "=f,f"))]
@@ -4697,7 +4724,7 @@
(ashift:DI
(zero_extend:DI
(truncate:SI
- (mod:DI (match_dup 1) (sign_extend:SI (match_dup 2)))))
+ (mod:DI (match_dup 1) (sign_extend:DI (match_dup 2)))))
(const_int 32))))]
"!TARGET_64BIT"
"@
@@ -7246,7 +7273,7 @@
(plus (reg 15) (match_operand 1 "general_operand" "")))
(set (match_operand 0 "general_operand" "")
(reg 15))]
- ""
+ "TARGET_BACKCHAIN"
{
rtx stack = gen_rtx (REG, Pmode, STACK_POINTER_REGNUM);
rtx chain = gen_rtx (MEM, Pmode, stack);
diff --git a/gcc/config/sh/netbsd-elf.h b/gcc/config/sh/netbsd-elf.h
index 7c52aa67ac3..bb8d0339837 100644
--- a/gcc/config/sh/netbsd-elf.h
+++ b/gcc/config/sh/netbsd-elf.h
@@ -1,5 +1,5 @@
/* Definitions for SH running NetBSD using ELF
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Wasabi Systems, Inc.
This file is part of GCC.
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 757f5aa1ee8..73e62c0c859 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -49,6 +49,7 @@ Boston, MA 02111-1307, USA. */
#include "ra.h"
#include "cfglayout.h"
#include "intl.h"
+#include "ggc.h"
int code_for_indirect_jump_scratch = CODE_FOR_indirect_jump_scratch;
@@ -1095,7 +1096,7 @@ output_movedouble (rtx insn ATTRIBUTE_UNUSED, rtx operands[],
static void
print_slot (rtx insn)
{
- final_scan_insn (XVECEXP (insn, 0, 1), asm_out_file, optimize, 0, 1);
+ final_scan_insn (XVECEXP (insn, 0, 1), asm_out_file, optimize, 0, 1, NULL);
INSN_DELETED_P (XVECEXP (insn, 0, 1)) = 1;
}
@@ -6774,8 +6775,8 @@ sh_handle_sp_switch_attribute (tree *node, tree name, tree args,
}
else
{
- char *s = ggc_strdup (TREE_STRING_POINTER (TREE_VALUE (args)));
- sp_switch = gen_rtx_SYMBOL_REF (VOIDmode, s);
+ sp_switch = gen_rtx_SYMBOL_REF (VOIDmode,
+ TREE_STRING_POINTER (TREE_VALUE (args)));
}
return NULL_TREE;
@@ -8956,7 +8957,7 @@ sh_output_mi_thunk (FILE *file, tree thunk_fndecl ATTRIBUTE_UNUSED,
SH that it's best to do this completely machine independently.
"this" is passed as first argument, unless a structure return pointer
comes first, in which case "this" comes second. */
- INIT_CUMULATIVE_ARGS (cum, funtype, NULL_RTX, 0);
+ INIT_CUMULATIVE_ARGS (cum, funtype, NULL_RTX, 0, 1);
#ifndef PCC_STATIC_STRUCT_RETURN
if (aggregate_value_p (TREE_TYPE (TREE_TYPE (function)), function))
structure_value_byref = 1;
diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h
index d035f67f36a..b364b5240c7 100644
--- a/gcc/config/sh/sh.h
+++ b/gcc/config/sh/sh.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler for Renesas / SuperH SH.
Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- 2003 Free Software Foundation, Inc.
+ 2003, 2004 Free Software Foundation, Inc.
Contributed by Steve Chamberlain (sac@cygnus.com).
Improved by Jim Wilson (wilson@cygnus.com).
@@ -1819,7 +1819,7 @@ struct sh_args {
For TARGET_HITACHI, the structure value pointer is passed in memory. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL, N_NAMED_ARGS) \
do { \
(CUM).arg_count[(int) SH_ARG_INT] = 0; \
(CUM).arg_count[(int) SH_ARG_FLOAT] = 0; \
@@ -1850,7 +1850,7 @@ struct sh_args {
#define INIT_CUMULATIVE_LIBCALL_ARGS(CUM, MODE, LIBNAME) \
do { \
- INIT_CUMULATIVE_ARGS ((CUM), NULL_TREE, (LIBNAME), 0); \
+ INIT_CUMULATIVE_ARGS ((CUM), NULL_TREE, (LIBNAME), 0, 0); \
(CUM).call_cookie \
= (CALL_COOKIE_RET_TRAMP \
(TARGET_SHCOMPACT && GET_MODE_SIZE (MODE) > 4 \
@@ -1859,7 +1859,7 @@ struct sh_args {
#define INIT_CUMULATIVE_INCOMING_ARGS(CUM, FNTYPE, LIBNAME) \
do { \
- INIT_CUMULATIVE_ARGS ((CUM), (FNTYPE), (LIBNAME), 0); \
+ INIT_CUMULATIVE_ARGS ((CUM), (FNTYPE), (LIBNAME), 0, 0); \
(CUM).outgoing = 0; \
} while (0)
diff --git a/gcc/config/sh/t-linux b/gcc/config/sh/t-linux
index c3c4f9e8a1b..be38d114d05 100644
--- a/gcc/config/sh/t-linux
+++ b/gcc/config/sh/t-linux
@@ -27,9 +27,9 @@ SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
echo "GROUP ( $(SHLIB_SONAME) libgcc.a )" \
) > $(SHLIB_SOLINK)
SHLIB_INSTALL = \
- $$(SHELL) $$(srcdir)/mkinstalldirs $$(slibdir)$(SHLIB_SLIBDIR_QUAL); \
+ $$(SHELL) $$(srcdir)/mkinstalldirs $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL); \
$(INSTALL_DATA) $(SHLIB_NAME) \
- $$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SONAME); \
- rm -f $$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK); \
+ $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SONAME); \
+ rm -f $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK); \
$(INSTALL_DATA) $(SHLIB_SOLINK) \
- $$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK)
+ $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK)
diff --git a/gcc/config/sh/vxworks.h b/gcc/config/sh/vxworks.h
index 4201028bb0d..11dd1e187aa 100644
--- a/gcc/config/sh/vxworks.h
+++ b/gcc/config/sh/vxworks.h
@@ -1,6 +1,6 @@
/* Definitions of target machine for GCC,
for SuperH with targeting the VXWorks run time environment.
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
Contributed by CodeSourcery, LLC.
This file is part of GCC.
diff --git a/gcc/config/sparc/freebsd.h b/gcc/config/sparc/freebsd.h
index f308263d36d..4f4d0e16d27 100644
--- a/gcc/config/sparc/freebsd.h
+++ b/gcc/config/sparc/freebsd.h
@@ -18,6 +18,10 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING. If not, write to
the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+#define SUBTARGET_EXTRA_SPECS \
+ { "fbsd_dynamic_linker", FBSD_DYNAMIC_LINKER }
+
/* FreeBSD needs the platform name (sparc64) defined.
Emacs needs to know if the arch is 64 or 32-bits. */
@@ -35,7 +39,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
%{!shared: \
%{!static: \
%{rdynamic:-export-dynamic} \
- %{!dynamic-linker:-dynamic-linker /usr/libexec/ld-elf.so.1}} \
+ %{!dynamic-linker:-dynamic-linker %(fbsd_dynamic_linker) }} \
%{static:-Bstatic}}"
diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h
index 8af7c5a0259..3ae8fcd500c 100644
--- a/gcc/config/sparc/linux.h
+++ b/gcc/config/sparc/linux.h
@@ -230,6 +230,9 @@ do { \
#define LIBGCC2_LONG_DOUBLE_TYPE_SIZE 64
#endif
+#undef DITF_CONVERSION_LIBFUNCS
+#define DITF_CONVERSION_LIBFUNCS 1
+
#if !defined(USE_GNULIBC_1) && defined(HAVE_LD_EH_FRAME_HDR)
#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
#endif
@@ -250,6 +253,8 @@ do { \
#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
+#define TARGET_HAS_F_SETLKW
+
#undef LINK_GCC_C_SEQUENCE_SPEC
#define LINK_GCC_C_SEQUENCE_SPEC \
"%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h
index 2969880edad..0204cbe3829 100644
--- a/gcc/config/sparc/linux64.h
+++ b/gcc/config/sparc/linux64.h
@@ -308,6 +308,9 @@ do { \
/* #define DWARF_OFFSET_SIZE PTR_SIZE */
+#undef DITF_CONVERSION_LIBFUNCS
+#define DITF_CONVERSION_LIBFUNCS 1
+
#if defined(HAVE_LD_EH_FRAME_HDR)
#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
#endif
@@ -328,6 +331,8 @@ do { \
#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
+#define TARGET_HAS_F_SETLKW
+
#undef LINK_GCC_C_SEQUENCE_SPEC
#define LINK_GCC_C_SEQUENCE_SPEC \
"%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
diff --git a/gcc/config/sparc/sol2-bi.h b/gcc/config/sparc/sol2-bi.h
index 0a763748d85..eab3a1abc5e 100644
--- a/gcc/config/sparc/sol2-bi.h
+++ b/gcc/config/sparc/sol2-bi.h
@@ -18,6 +18,7 @@
#undef ASM_CPU32_DEFAULT_SPEC
#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plus"
#endif
+
#if TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc
#undef CPP_CPU64_DEFAULT_SPEC
#define CPP_CPU64_DEFAULT_SPEC ""
@@ -27,6 +28,15 @@
#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "a"
#endif
+#if TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc3
+#undef CPP_CPU64_DEFAULT_SPEC
+#define CPP_CPU64_DEFAULT_SPEC ""
+#undef ASM_CPU32_DEFAULT_SPEC
+#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plusb"
+#undef ASM_CPU64_DEFAULT_SPEC
+#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "b"
+#endif
+
#if DEFAULT_ARCH32_P
#define DEF_ARCH32_SPEC(__str) "%{!m64:" __str "}"
#define DEF_ARCH64_SPEC(__str) "%{m64:" __str "}"
@@ -45,15 +55,16 @@
%{mcpu=sparclite|mcpu-f930|mcpu=f934:-D__sparclite__} \
%{mcpu=v8:" DEF_ARCH32_SPEC("-D__sparcv8") "} \
%{mcpu=supersparc:-D__supersparc__ " DEF_ARCH32_SPEC("-D__sparcv8") "} \
-%{mcpu=v9|mcpu=ultrasparc:" DEF_ARCH32_SPEC("-D__sparcv8") "} \
+%{mcpu=v9|mcpu=ultrasparc|mcpu=ultrasparc3:" DEF_ARCH32_SPEC("-D__sparcv8") "} \
%{!mcpu*:%{!mcypress:%{!msparclite:%{!mf930:%{!mf934:%{!mv8:%{!msupersparc:%(cpp_cpu_default)}}}}}}} \
"
#undef ASM_CPU_SPEC
#define ASM_CPU_SPEC "\
-%{mcpu=ultrasparc:" DEF_ARCH32_SPEC("-xarch=v8plusa") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "a") "} \
%{mcpu=v9:" DEF_ARCH32_SPEC("-xarch=v8plus") DEF_ARCH64_SPEC(AS_SPARC64_FLAG) "} \
-%{!mcpu=ultrasparc:%{!mcpu=v9:%{mcpu*:" DEF_ARCH32_SPEC("-xarch=v8") DEF_ARCH64_SPEC(AS_SPARC64_FLAG) "}}} \
+%{mcpu=ultrasparc:" DEF_ARCH32_SPEC("-xarch=v8plusa") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "a") "} \
+%{mcpu=ultrasparc3:" DEF_ARCH32_SPEC("-xarch=v8plusb") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "b") "} \
+%{!mcpu=ultrasparc3:%{!mcpu=ultrasparc:%{!mcpu=v9:%{mcpu*:" DEF_ARCH32_SPEC("-xarch=v8") DEF_ARCH64_SPEC(AS_SPARC64_FLAG) "}}}} \
%{!mcpu*:%(asm_cpu_default)} \
"
@@ -205,17 +216,9 @@
#define MULTILIB_DEFAULTS { "m64" }
#endif
-/* We use stabs-in-elf in 32-bit mode, because that is what the native
- toolchain uses. But gdb can't handle truncated 32-bit stabs so we
- use dwarf2 in 64-bit mode. */
#undef PREFERRED_DEBUGGING_TYPE
-#define PREFERRED_DEBUGGING_TYPE (TARGET_ARCH32 ? DBX_DEBUG : DWARF2_DEBUG)
+#define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG
-/* We can't use the above definition for the purposes of specs. */
#if defined(HAVE_AS_GDWARF2_DEBUG_FLAG) && defined(HAVE_AS_GSTABS_DEBUG_FLAG)
-# if DEFAULT_ARCH32_P
-# define ASM_DEBUG_SPEC "%{gdwarf-2*:--gdwarf2}%{!gdwarf-2*:%{g*:--gstabs}}"
-# else
-# define ASM_DEBUG_SPEC "%{gstabs*:--gstabs}%{!gstabs*:%{g*:--gdwarf2}}"
-# endif
+# define ASM_DEBUG_SPEC "%{gstabs*:--gstabs}%{!gstabs*:%{g*:--gdwarf2}}"
#endif
diff --git a/gcc/config/sparc/sol2.h b/gcc/config/sparc/sol2.h
index 53c364daade..cbf914e6b7a 100644
--- a/gcc/config/sparc/sol2.h
+++ b/gcc/config/sparc/sol2.h
@@ -1,5 +1,5 @@
/* Definitions of target machine for GCC, for SPARC running Solaris 2
- Copyright 1992, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
+ Copyright 1992, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2004
Free Software Foundation, Inc.
Contributed by Ron Guilmette (rfg@netcom.com).
Additional changes by David V. Henkel-Wallace (gumby@cygnus.com).
@@ -36,11 +36,16 @@ Boston, MA 02111-1307, USA. */
#define ASM_CPU_DEFAULT_SPEC "-xarch=v8plusa"
#endif
+#if TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc3
+#undef ASM_CPU_DEFAULT_SPEC
+#define ASM_CPU_DEFAULT_SPEC "-xarch=v8plusb"
+#endif
+
#undef ASM_CPU_SPEC
#define ASM_CPU_SPEC "\
-%{mcpu=v8plus:-xarch=v8plus} \
%{mcpu=v9:-xarch=v8plus} \
%{mcpu=ultrasparc:-xarch=v8plusa} \
+%{mcpu=ultrasparc3:-xarch=v8plusb} \
%{!mcpu*:%(asm_cpu_default)} \
"
@@ -81,6 +86,33 @@ Boston, MA 02111-1307, USA. */
#define ASM_GENERATE_INTERNAL_LABEL(LABEL,PREFIX,NUM) \
sprintf ((LABEL), "*.L%s%ld", (PREFIX), (long)(NUM))
+/* The native TLS-enabled assembler requires the directive #tls_object
+ to be put on objects in TLS sections (as of v7.1). This is not
+ required by the GNU assembler but supported on SPARC. */
+#undef ASM_DECLARE_OBJECT_NAME
+#define ASM_DECLARE_OBJECT_NAME(FILE, NAME, DECL) \
+ do \
+ { \
+ HOST_WIDE_INT size; \
+ \
+ if (DECL_THREAD_LOCAL (DECL)) \
+ ASM_OUTPUT_TYPE_DIRECTIVE (FILE, NAME, "tls_object"); \
+ else \
+ ASM_OUTPUT_TYPE_DIRECTIVE (FILE, NAME, "object"); \
+ \
+ size_directive_output = 0; \
+ if (!flag_inhibit_size_directive \
+ && (DECL) && DECL_SIZE (DECL)) \
+ { \
+ size_directive_output = 1; \
+ size = int_size_in_bytes (TREE_TYPE (DECL)); \
+ ASM_OUTPUT_SIZE_DIRECTIVE (FILE, NAME, size); \
+ } \
+ \
+ ASM_OUTPUT_LABEL (FILE, NAME); \
+ } \
+ while (0)
+
#undef ENDFILE_SPEC
@@ -118,8 +150,11 @@ Boston, MA 02111-1307, USA. */
#undef TARGET_BUGGY_QP_LIB
#define TARGET_BUGGY_QP_LIB 1
-#undef SOLARIS_CONVERSION_LIBFUNCS
-#define SOLARIS_CONVERSION_LIBFUNCS 1
+#undef SUN_CONVERSION_LIBFUNCS
+#define SUN_CONVERSION_LIBFUNCS 1
+
+#undef DITF_CONVERSION_LIBFUNCS
+#define DITF_CONVERSION_LIBFUNCS 1
#undef SUN_INTEGER_MULTIPLY_64
#define SUN_INTEGER_MULTIPLY_64 1
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
index a3fdcc6cdb2..5cfe73b5cde 100644
--- a/gcc/config/sparc/sparc.c
+++ b/gcc/config/sparc/sparc.c
@@ -1,6 +1,6 @@
/* Subroutines for insn-output.c for SPARC.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com)
64-bit SPARC-V9 support by Michael Tiemann, Jim Wilson, and Doug Evans,
at Cygnus Support.
@@ -137,6 +137,7 @@ static void sparc_init_modes (void);
static int save_regs (FILE *, int, int, const char *, int, int, HOST_WIDE_INT);
static int restore_regs (FILE *, int, int, const char *, int, int);
static void build_big_number (FILE *, HOST_WIDE_INT, const char *);
+static void scan_record_type (tree, int *, int *, int *);
static int function_arg_slotno (const CUMULATIVE_ARGS *, enum machine_mode,
tree, int, int, int *, int *);
@@ -3103,7 +3104,7 @@ static GTY(()) rtx global_offset_table;
/* The function we use to get at it. */
static GTY(()) rtx get_pc_symbol;
-static char get_pc_symbol_name[256];
+static GTY(()) char get_pc_symbol_name[256];
/* Ensure that we are not using patterns that are not OK with PIC. */
@@ -4539,7 +4540,7 @@ sparc_nonflat_function_epilogue (FILE *file,
? "\treturn\t%i7+12\n"
: "\treturn\t%i7+8\n", file);
final_scan_insn (XEXP (current_function_epilogue_delay_list, 0),
- file, 1, 0, 0);
+ file, 1, 0, 0, NULL);
}
else
{
@@ -4564,7 +4565,7 @@ sparc_nonflat_function_epilogue (FILE *file,
insn = emit_jump_insn (insn);
sparc_emitting_epilogue = true;
- final_scan_insn (insn, file, 1, 0, 1);
+ final_scan_insn (insn, file, 1, 0, 1, NULL);
sparc_emitting_epilogue = false;
}
}
@@ -4586,7 +4587,7 @@ sparc_nonflat_function_epilogue (FILE *file,
abort ();
fprintf (file, "\t%s\n", ret);
final_scan_insn (XEXP (current_function_epilogue_delay_list, 0),
- file, 1, 0, 1);
+ file, 1, 0, 1, NULL);
}
/* Output 'nop' instead of 'sub %sp,-0,%sp' when no frame, so as to
avoid generating confusing assembly language output. */
@@ -4629,7 +4630,7 @@ output_sibcall (rtx insn, rtx call_operand)
if (! delay)
abort ();
- final_scan_insn (delay, asm_out_file, 1, 0, 1);
+ final_scan_insn (delay, asm_out_file, 1, 0, 1, NULL);
PATTERN (delay) = gen_blockage ();
INSN_CODE (delay) = -1;
delay_slot = 0;
@@ -4659,7 +4660,7 @@ output_sibcall (rtx insn, rtx call_operand)
if (! delay)
abort ();
- final_scan_insn (delay, asm_out_file, 1, 0, 1);
+ final_scan_insn (delay, asm_out_file, 1, 0, 1, NULL);
PATTERN (delay) = gen_blockage ();
INSN_CODE (delay) = -1;
delay_slot = 0;
@@ -4816,8 +4817,39 @@ init_cumulative_args (struct sparc_args *cum, tree fntype,
cum->libcall_p = fntype == 0;
}
+/* Scan the record type TYPE and return the following predicates:
+ - INTREGS_P: the record contains at least one field or sub-field
+ that is eligible for promotion in integer registers.
+ - FP_REGS_P: the record contains at least one field or sub-field
+ that is eligible for promotion in floating-point registers.
+ - PACKED_P: the record contains at least one field that is packed.
+
+ Sub-fields are not taken into account for the PACKED_P predicate. */
+
+static void
+scan_record_type (tree type, int *intregs_p, int *fpregs_p, int *packed_p)
+{
+ tree field;
+
+ for (field = TYPE_FIELDS (type); field; field = TREE_CHAIN (field))
+ {
+ if (TREE_CODE (field) == FIELD_DECL)
+ {
+ if (TREE_CODE (TREE_TYPE (field)) == RECORD_TYPE)
+ scan_record_type (TREE_TYPE (field), intregs_p, fpregs_p, 0);
+ else if (FLOAT_TYPE_P (TREE_TYPE (field)) && TARGET_FPU)
+ *fpregs_p = 1;
+ else
+ *intregs_p = 1;
+
+ if (packed_p && DECL_PACKED (field))
+ *packed_p = 1;
+ }
+ }
+}
+
/* Compute the slot number to pass an argument in.
- Returns the slot number or -1 if passing on the stack.
+ Return the slot number or -1 if passing on the stack.
CUM is a variable of type CUMULATIVE_ARGS which gives info about
the preceding args and about the function being called.
@@ -4858,19 +4890,27 @@ function_arg_slotno (const struct sparc_args *cum, enum machine_mode mode,
See emit_call_1. */
return -1;
+ case TImode : case CTImode :
+ if (TARGET_ARCH64 && (slotno & 1) != 0)
+ slotno++, *ppadding = 1;
+ /* fallthrough */
+
case QImode : case CQImode :
case HImode : case CHImode :
case SImode : case CSImode :
case DImode : case CDImode :
- case TImode : case CTImode :
if (slotno >= SPARC_INT_ARG_MAX)
return -1;
regno = regbase + slotno;
break;
+ case TFmode : case TCmode :
+ if (TARGET_ARCH64 && (slotno & 1) != 0)
+ slotno++, *ppadding = 1;
+ /* fallthrough */
+
case SFmode : case SCmode :
case DFmode : case DCmode :
- case TFmode : case TCmode :
if (TARGET_ARCH32)
{
if (slotno >= SPARC_INT_ARG_MAX)
@@ -4879,9 +4919,6 @@ function_arg_slotno (const struct sparc_args *cum, enum machine_mode mode,
}
else
{
- if ((mode == TFmode || mode == TCmode)
- && (slotno & 1) != 0)
- slotno++, *ppadding = 1;
if (TARGET_FPU && named)
{
if (slotno >= SPARC_FP_ARG_MAX)
@@ -4916,27 +4953,14 @@ function_arg_slotno (const struct sparc_args *cum, enum machine_mode mode,
}
else
{
- tree field;
- int intregs_p = 0, fpregs_p = 0;
- /* The ABI obviously doesn't specify how packed
- structures are passed. These are defined to be passed
- in int regs if possible, otherwise memory. */
- int packed_p = 0;
+ int intregs_p = 0, fpregs_p = 0, packed_p = 0;
- /* First see what kinds of registers we need. */
- for (field = TYPE_FIELDS (type); field; field = TREE_CHAIN (field))
- {
- if (TREE_CODE (field) == FIELD_DECL)
- {
- if (TREE_CODE (TREE_TYPE (field)) == REAL_TYPE
- && TARGET_FPU)
- fpregs_p = 1;
- else
- intregs_p = 1;
- if (DECL_PACKED (field))
- packed_p = 1;
- }
- }
+ /* First see what kinds of registers we would need. */
+ scan_record_type (type, &intregs_p, &fpregs_p, &packed_p);
+
+ /* The ABI obviously doesn't specify how packed structures
+ are passed. These are defined to be passed in int regs
+ if possible, otherwise memory. */
if (packed_p || !named)
fpregs_p = 0, intregs_p = 1;
@@ -4972,7 +4996,7 @@ struct function_arg_record_value_parms
int named; /* whether the argument is named. */
int regbase; /* regno of the base register. */
int stack; /* 1 if part of the argument is on the stack. */
- int intoffset; /* offset of the pending integer field. */
+ int intoffset; /* offset of the first pending integer field. */
unsigned int nregs; /* number of words passed in registers. */
};
@@ -4983,6 +5007,7 @@ static void function_arg_record_value_2
static void function_arg_record_value_1
(tree, HOST_WIDE_INT, struct function_arg_record_value_parms *, bool);
static rtx function_arg_record_value (tree, enum machine_mode, int, int, int);
+static rtx function_arg_union_value (int, int);
/* A subroutine of function_arg_record_value. Traverse the structure
recursively and determine how many registers will be required. */
@@ -5029,20 +5054,20 @@ function_arg_record_value_1 (tree type, HOST_WIDE_INT startbitpos,
bitpos,
parms,
packed_p);
- else if ((TREE_CODE (TREE_TYPE (field)) == REAL_TYPE
- || (TREE_CODE (TREE_TYPE (field)) == COMPLEX_TYPE
- && (TREE_CODE (TREE_TYPE (TREE_TYPE (field)))
- == REAL_TYPE)))
- && TARGET_FPU
- && ! packed_p
- && parms->named)
+ else if (FLOAT_TYPE_P (TREE_TYPE (field))
+ && TARGET_FPU
+ && parms->named
+ && ! packed_p)
{
if (parms->intoffset != -1)
{
+ unsigned int startbit, endbit;
int intslots, this_slotno;
- intslots = (bitpos - parms->intoffset + BITS_PER_WORD - 1)
- / BITS_PER_WORD;
+ startbit = parms->intoffset & -BITS_PER_WORD;
+ endbit = (bitpos + BITS_PER_WORD - 1) & -BITS_PER_WORD;
+
+ intslots = (endbit - startbit) / BITS_PER_WORD;
this_slotno = parms->slotno + parms->intoffset
/ BITS_PER_WORD;
@@ -5121,6 +5146,7 @@ function_arg_record_value_3 (HOST_WIDE_INT bitpos,
this_slotno += 1;
intoffset = (intoffset | (UNITS_PER_WORD-1)) + 1;
+ mode = word_mode;
parms->nregs += 1;
intslots -= 1;
}
@@ -5166,13 +5192,10 @@ function_arg_record_value_2 (tree type, HOST_WIDE_INT startbitpos,
bitpos,
parms,
packed_p);
- else if ((TREE_CODE (TREE_TYPE (field)) == REAL_TYPE
- || (TREE_CODE (TREE_TYPE (field)) == COMPLEX_TYPE
- && (TREE_CODE (TREE_TYPE (TREE_TYPE (field)))
- == REAL_TYPE)))
- && TARGET_FPU
- && ! packed_p
- && parms->named)
+ else if (FLOAT_TYPE_P (TREE_TYPE (field))
+ && TARGET_FPU
+ && parms->named
+ && ! packed_p)
{
int this_slotno = parms->slotno + bitpos / BITS_PER_WORD;
int regno;
@@ -5248,6 +5271,7 @@ function_arg_record_value (tree type, enum machine_mode mode,
parms.intoffset = 0;
function_arg_record_value_1 (type, 0, &parms, false);
+ /* Take into account pending integer fields. */
if (parms.intoffset != -1)
{
unsigned int startbit, endbit;
@@ -5317,6 +5341,34 @@ function_arg_record_value (tree type, enum machine_mode mode,
return parms.ret;
}
+/* Used by function_arg and function_value to implement the conventions
+ of the 64-bit ABI for passing and returning unions.
+ Return an expression valid as a return value for the two macros
+ FUNCTION_ARG and FUNCTION_VALUE.
+
+ SIZE is the size in bytes of the union.
+ REGNO is the hard register the union will be passed in. */
+
+static rtx
+function_arg_union_value (int size, int regno)
+{
+ enum machine_mode mode;
+ rtx reg;
+
+ if (size <= UNITS_PER_WORD)
+ mode = word_mode;
+ else
+ mode = mode_for_size (size * BITS_PER_UNIT, MODE_INT, 0);
+
+ reg = gen_rtx_REG (mode, regno);
+
+ /* Unions are passed left-justified. */
+ return gen_rtx_PARALLEL (mode,
+ gen_rtvec (1, gen_rtx_EXPR_LIST (VOIDmode,
+ reg,
+ const0_rtx)));
+}
+
/* Handle the FUNCTION_ARG macro.
Determine where to put an argument to a function.
Value is zero to push the argument on the stack,
@@ -5353,13 +5405,32 @@ function_arg (const struct sparc_args *cum, enum machine_mode mode,
reg = gen_rtx_REG (mode, regno);
return reg;
}
+
+ if (type && TREE_CODE (type) == RECORD_TYPE)
+ {
+ /* Structures up to 16 bytes in size are passed in arg slots on the
+ stack and are promoted to registers where possible. */
+ if (int_size_in_bytes (type) > 16)
+ abort (); /* shouldn't get here */
+
+ return function_arg_record_value (type, mode, slotno, named, regbase);
+ }
+ else if (type && TREE_CODE (type) == UNION_TYPE)
+ {
+ HOST_WIDE_INT size = int_size_in_bytes (type);
+
+ if (size > 16)
+ abort (); /* shouldn't get here */
+
+ return function_arg_union_value (size, regno);
+ }
/* v9 fp args in reg slots beyond the int reg slots get passed in regs
but also have the slot allocated for them.
If no prototype is in scope fp values in register slots get passed
in two places, either fp regs and int regs or fp regs and memory. */
- if ((GET_MODE_CLASS (mode) == MODE_FLOAT
- || GET_MODE_CLASS (mode) == MODE_COMPLEX_FLOAT)
+ else if ((GET_MODE_CLASS (mode) == MODE_FLOAT
+ || GET_MODE_CLASS (mode) == MODE_COMPLEX_FLOAT)
&& SPARC_FP_REG_P (regno))
{
reg = gen_rtx_REG (mode, regno);
@@ -5423,27 +5494,6 @@ function_arg (const struct sparc_args *cum, enum machine_mode mode,
}
}
}
- else if (type && TREE_CODE (type) == RECORD_TYPE)
- {
- /* Structures up to 16 bytes in size are passed in arg slots on the
- stack and are promoted to registers where possible. */
-
- if (int_size_in_bytes (type) > 16)
- abort (); /* shouldn't get here */
-
- return function_arg_record_value (type, mode, slotno, named, regbase);
- }
- else if (type && TREE_CODE (type) == UNION_TYPE)
- {
- enum machine_mode mode;
- int bytes = int_size_in_bytes (type);
-
- if (bytes > 16)
- abort ();
-
- mode = mode_for_size (bytes * BITS_PER_UNIT, MODE_INT, 0);
- reg = gen_rtx_REG (mode, regno);
- }
else
{
/* Scalar or complex int. */
@@ -5546,7 +5596,8 @@ function_arg_pass_by_reference (const struct sparc_args *cum ATTRIBUTE_UNUSED,
if (TARGET_ARCH32)
{
return ((type && AGGREGATE_TYPE_P (type))
- || mode == TFmode || mode == TCmode);
+ || mode == SCmode
+ || GET_MODE_SIZE (mode) > 8);
}
else
{
@@ -5628,12 +5679,13 @@ rtx
function_value (tree type, enum machine_mode mode, int incoming_p)
{
int regno;
- int regbase = (incoming_p
- ? SPARC_OUTGOING_INT_ARG_FIRST
- : SPARC_INCOMING_INT_ARG_FIRST);
if (TARGET_ARCH64 && type)
{
+ int regbase = (incoming_p
+ ? SPARC_OUTGOING_INT_ARG_FIRST
+ : SPARC_INCOMING_INT_ARG_FIRST);
+
if (TREE_CODE (type) == RECORD_TYPE)
{
/* Structures up to 32 bytes in size are passed in registers,
@@ -5644,6 +5696,15 @@ function_value (tree type, enum machine_mode mode, int incoming_p)
return function_arg_record_value (type, mode, 0, 1, regbase);
}
+ else if (TREE_CODE (type) == UNION_TYPE)
+ {
+ HOST_WIDE_INT size = int_size_in_bytes (type);
+
+ if (size > 32)
+ abort (); /* shouldn't get here */
+
+ return function_arg_union_value (size, regbase);
+ }
else if (AGGREGATE_TYPE_P (type))
{
/* All other aggregate types are passed in an integer register
@@ -5655,13 +5716,10 @@ function_value (tree type, enum machine_mode mode, int incoming_p)
mode = mode_for_size (bytes * BITS_PER_UNIT, MODE_INT, 0);
}
+ else if (GET_MODE_CLASS (mode) == MODE_INT
+ && GET_MODE_SIZE (mode) < UNITS_PER_WORD)
+ mode = word_mode;
}
-
- if (TARGET_ARCH64
- && GET_MODE_CLASS (mode) == MODE_INT
- && GET_MODE_SIZE (mode) < UNITS_PER_WORD
- && type && ! AGGREGATE_TYPE_P (type))
- mode = DImode;
if (incoming_p)
regno = BASE_RETURN_VALUE_REG (mode);
@@ -5750,8 +5808,8 @@ sparc_va_arg (tree valist, tree type)
else
{
if (AGGREGATE_TYPE_P (type)
- || TYPE_MODE (type) == TFmode
- || TYPE_MODE (type) == TCmode)
+ || TYPE_MODE (type) == SCmode
+ || GET_MODE_SIZE (TYPE_MODE (type)) > 8)
{
indirect = 1;
size = rsize = UNITS_PER_WORD;
@@ -7916,7 +7974,7 @@ sparc_flat_function_epilogue (FILE *file, HOST_WIDE_INT size)
{
if (size)
abort ();
- final_scan_insn (XEXP (epilogue_delay, 0), file, 1, -2, 1);
+ final_scan_insn (XEXP (epilogue_delay, 0), file, 1, -2, 1, NULL);
}
else if (size > 4096)
@@ -8478,6 +8536,8 @@ sparc_elf_asm_named_section (const char *name, unsigned int flags)
fputs (",#alloc", asm_out_file);
if (flags & SECTION_WRITE)
fputs (",#write", asm_out_file);
+ if (flags & SECTION_TLS)
+ fputs (",#tls", asm_out_file);
if (flags & SECTION_CODE)
fputs (",#execinstr", asm_out_file);
@@ -8560,6 +8620,13 @@ sparc_init_libfuncs (void)
set_conv_libfunc (ufix_optab, SImode, TFmode, "_Q_qtou");
set_conv_libfunc (sfloat_optab, TFmode, SImode, "_Q_itoq");
+ if (DITF_CONVERSION_LIBFUNCS)
+ {
+ set_conv_libfunc (sfix_optab, DImode, TFmode, "_Q_qtoll");
+ set_conv_libfunc (ufix_optab, DImode, TFmode, "_Q_qtoull");
+ set_conv_libfunc (sfloat_optab, TFmode, DImode, "_Q_lltoq");
+ }
+
if (SUN_CONVERSION_LIBFUNCS)
{
set_conv_libfunc (sfix_optab, DImode, SFmode, "__ftoll");
diff --git a/gcc/config/sparc/sparc.h b/gcc/config/sparc/sparc.h
index 06fd5ee328a..65953f0a846 100644
--- a/gcc/config/sparc/sparc.h
+++ b/gcc/config/sparc/sparc.h
@@ -1,8 +1,8 @@
/* Definitions of target machine for GNU compiler, for Sun SPARC.
Copyright (C) 1987, 1988, 1989, 1992, 1994, 1995, 1996, 1997, 1998, 1999
- 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com).
- 64 bit SPARC V9 support by Michael Tiemann, Jim Wilson, and Doug Evans,
+ 64-bit SPARC-V9 support by Michael Tiemann, Jim Wilson, and Doug Evans,
at Cygnus Support.
This file is part of GCC.
@@ -69,35 +69,41 @@ Boston, MA 02111-1307, USA. */
#endif /* IN_LIBGCC2 */
#define TARGET_ARCH64 (! TARGET_ARCH32)
-/* Code model selection.
- -mcmodel is used to select the v9 code model.
- Different code models aren't supported for v7/8 code.
-
- TARGET_CM_32: 32 bit address space, top 32 bits = 0,
- pointers are 32 bits. Note that this isn't intended
- to imply a v7/8 abi.
-
- TARGET_CM_MEDLOW: 32 bit address space, top 32 bits = 0,
- avoid generating %uhi and %ulo terms,
- pointers are 64 bits.
-
- TARGET_CM_MEDMID: 64 bit address space.
- The executable must be in the low 16 TB of memory.
- This corresponds to the low 44 bits, and the %[hml]44
- relocs are used. The text segment has a maximum size
- of 31 bits.
-
- TARGET_CM_MEDANY: 64 bit address space.
- The text and data segments have a maximum size of 31
- bits and may be located anywhere. The maximum offset
- from any instruction to the label _GLOBAL_OFFSET_TABLE_
- is 31 bits.
-
- TARGET_CM_EMBMEDANY: 64 bit address space.
- The text and data segments have a maximum size of 31 bits
- and may be located anywhere. Register %g4 contains
- the start address of the data segment.
-*/
+/* Code model selection in 64-bit environment.
+
+ The machine mode used for addresses is 32-bit wide:
+
+ TARGET_CM_32: 32-bit address space.
+ It is the code model used when generating 32-bit code.
+
+ The machine mode used for addresses is 64-bit wide:
+
+ TARGET_CM_MEDLOW: 32-bit address space.
+ The executable must be in the low 32 bits of memory.
+ This avoids generating %uhi and %ulo terms. Programs
+ can be statically or dynamically linked.
+
+ TARGET_CM_MEDMID: 44-bit address space.
+ The executable must be in the low 44 bits of memory,
+ and the %[hml]44 terms are used. The text and data
+ segments have a maximum size of 2GB (31-bit span).
+ The maximum offset from any instruction to the label
+ _GLOBAL_OFFSET_TABLE_ is 2GB (31-bit span).
+
+ TARGET_CM_MEDANY: 64-bit address space.
+ The text and data segments have a maximum size of 2GB
+ (31-bit span) and may be located anywhere in memory.
+ The maximum offset from any instruction to the label
+ _GLOBAL_OFFSET_TABLE_ is 2GB (31-bit span).
+
+ TARGET_CM_EMBMEDANY: 64-bit address space.
+ The text and data segments have a maximum size of 2GB
+ (31-bit span) and may be located anywhere in memory.
+ The global register %g4 contains the start address of
+ the data segment. Programs are statically linked and
+ PIC is not supported.
+
+ Different code models are not supported in 32-bit environment. */
enum cmodel {
CM_32,
@@ -1157,8 +1163,7 @@ extern int sparc_mode_class[];
#define RETURN_IN_MEMORY(TYPE) \
(TARGET_ARCH32 \
? (TYPE_MODE (TYPE) == BLKmode \
- || TYPE_MODE (TYPE) == TFmode \
- || TYPE_MODE (TYPE) == TCmode) \
+ || TYPE_MODE (TYPE) == TFmode) \
: (TYPE_MODE (TYPE) == BLKmode \
&& (unsigned HOST_WIDE_INT) int_size_in_bytes (TYPE) > 32))
@@ -1264,6 +1269,20 @@ enum reg_class { NO_REGS, FPCC_REGS, I64_REGS, GENERAL_REGS, FP_REGS,
{-1, -1, -1, 0x20}, /* GENERAL_OR_EXTRA_FP_REGS */ \
{-1, -1, -1, 0x3f}} /* ALL_REGS */
+/* Defines invalid mode changes. Borrowed from pa64-regs.h.
+
+ SImode loads to floating-point registers are not zero-extended.
+ The definition for LOAD_EXTEND_OP specifies that integer loads
+ narrower than BITS_PER_WORD will be zero-extended. As a result,
+ we inhibit changes from SImode unless they are to a mode that is
+ identical in size. */
+
+#define CANNOT_CHANGE_MODE_CLASS(FROM, TO, CLASS) \
+ (TARGET_ARCH64 \
+ && (FROM) == SImode \
+ && GET_MODE_SIZE (FROM) != GET_MODE_SIZE (TO) \
+ ? reg_classes_intersect_p (CLASS, FP_REGS) : 0)
+
/* The same information, inverted:
Return the class number of the smallest class containing
reg number REGNO. This could be a conditional expression
@@ -1657,13 +1676,13 @@ extern char leaf_reg_remap[];
#define BASE_RETURN_VALUE_REG(MODE) \
(TARGET_ARCH64 \
? (TARGET_FPU && FLOAT_MODE_P (MODE) ? 32 : 8) \
- : (((MODE) == SFmode || (MODE) == DFmode) && TARGET_FPU ? 32 : 8))
+ : (TARGET_FPU && FLOAT_MODE_P (MODE) && (MODE) != TFmode ? 32 : 8))
#define BASE_OUTGOING_VALUE_REG(MODE) \
(TARGET_ARCH64 \
? (TARGET_FPU && FLOAT_MODE_P (MODE) ? 32 \
: TARGET_FLAT ? 8 : 24) \
- : (((MODE) == SFmode || (MODE) == DFmode) && TARGET_FPU ? 32 \
+ : (TARGET_FPU && FLOAT_MODE_P (MODE) && (MODE) != TFmode ? 32\
: (TARGET_FLAT ? 8 : 24)))
#define BASE_PASSING_ARG_REG(MODE) \
@@ -1766,7 +1785,7 @@ struct sparc_args {
for a call to a function whose data type is FNTYPE.
For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL, N_NAMED_ARGS) \
init_cumulative_args (& (CUM), (FNTYPE), (LIBNAME), (FNDECL));
/* Update the data in CUM to advance over an argument
@@ -2384,9 +2403,7 @@ do { \
is done just by pretending it is already truncated. */
#define TRULY_NOOP_TRUNCATION(OUTPREC, INPREC) 1
-/* Specify the machine mode that pointers have.
- After generation of rtl, the compiler makes no further distinction
- between pointers and any other objects of this machine mode. */
+/* Specify the machine mode used for addresses. */
#define Pmode (TARGET_ARCH64 ? DImode : SImode)
/* Generate calls to memcpy, memcmp and memset. */
@@ -2428,8 +2445,9 @@ do { \
/* Assume by default that we do not have the Solaris-specific conversion
routines nor 64-bit integer multiply and divide routines. */
-#define SUN_CONVERSION_LIBFUNCS 0
-#define SUN_INTEGER_MULTIPLY_64 0
+#define SUN_CONVERSION_LIBFUNCS 0
+#define DITF_CONVERSION_LIBFUNCS 0
+#define SUN_INTEGER_MULTIPLY_64 0
/* Compute extra cost of moving data between one register class
and another. */
diff --git a/gcc/config/sparc/sparc.md b/gcc/config/sparc/sparc.md
index 08434789c5a..14302804436 100644
--- a/gcc/config/sparc/sparc.md
+++ b/gcc/config/sparc/sparc.md
@@ -1,8 +1,8 @@
;; Machine description for SPARC chip for GCC
;; Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-;; 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+;; 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
;; Contributed by Michael Tiemann (tiemann@cygnus.com)
-;; 64 bit SPARC V9 support by Michael Tiemann, Jim Wilson, and Doug Evans,
+;; 64-bit SPARC-V9 support by Michael Tiemann, Jim Wilson, and Doug Evans,
;; at Cygnus Support.
;; This file is part of GCC.
@@ -1818,8 +1818,8 @@
;; We always work with constants here.
(define_insn "*movhi_lo_sum"
[(set (match_operand:HI 0 "register_operand" "=r")
- (ior:HI (match_operand:HI 1 "arith_operand" "%r")
- (match_operand:HI 2 "arith_operand" "I")))]
+ (ior:HI (match_operand:HI 1 "register_operand" "%r")
+ (match_operand:HI 2 "small_int" "I")))]
""
"or\t%1, %2, %0")
@@ -8267,31 +8267,6 @@
[(set_attr "type" "multi")
(set_attr "length" "2")])
-;; Now peepholes to do a call followed by a jump.
-
-(define_peephole
- [(parallel [(set (match_operand 0 "" "")
- (call (mem:SI (match_operand:SI 1 "call_operand_address" "ps"))
- (match_operand 2 "" "")))
- (clobber (reg:SI 15))])
- (set (pc) (label_ref (match_operand 3 "" "")))]
- "short_branch (INSN_UID (insn), INSN_UID (operands[3]))
- && (USING_SJLJ_EXCEPTIONS || ! can_throw_internal (ins1))
- && sparc_cpu != PROCESSOR_ULTRASPARC
- && sparc_cpu != PROCESSOR_ULTRASPARC3"
- "call\t%a1, %2\n\tadd\t%%o7, (%l3-.-4), %%o7")
-
-(define_peephole
- [(parallel [(call (mem:SI (match_operand:SI 0 "call_operand_address" "ps"))
- (match_operand 1 "" ""))
- (clobber (reg:SI 15))])
- (set (pc) (label_ref (match_operand 2 "" "")))]
- "short_branch (INSN_UID (insn), INSN_UID (operands[2]))
- && (USING_SJLJ_EXCEPTIONS || ! can_throw_internal (ins1))
- && sparc_cpu != PROCESSOR_ULTRASPARC
- && sparc_cpu != PROCESSOR_ULTRASPARC3"
- "call\t%a0, %1\n\tadd\t%%o7, (%l2-.-4), %%o7")
-
;; ??? UltraSPARC-III note: A memory operation loading into the floating point register
;; ??? file, if it hits the prefetch cache, has a chance to dual-issue with other memory
;; ??? operations. With DFA we might be able to model this, but it requires a lot of
diff --git a/gcc/config/stormy16/stormy16.h b/gcc/config/stormy16/stormy16.h
index a8c619e77a8..546af067602 100644
--- a/gcc/config/stormy16/stormy16.h
+++ b/gcc/config/stormy16/stormy16.h
@@ -1,5 +1,5 @@
/* Xstormy16 cpu description.
- Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Contributed by Red Hat, Inc.
@@ -435,7 +435,8 @@ enum reg_class
of arguments that have been passed in registers so far. */
#define CUMULATIVE_ARGS int
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT) (CUM) = 0
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
+ (CUM) = 0
#define FUNCTION_ARG_ADVANCE(CUM, MODE, TYPE, NAMED) \
((CUM) = xstormy16_function_arg_advance (CUM, MODE, TYPE, NAMED))
diff --git a/gcc/config/t-slibgcc-elf-ver b/gcc/config/t-slibgcc-elf-ver
index a176b10fa0a..a4f8ef07c84 100644
--- a/gcc/config/t-slibgcc-elf-ver
+++ b/gcc/config/t-slibgcc-elf-ver
@@ -3,8 +3,9 @@
SHLIB_EXT = .so
SHLIB_SOLINK = @shlib_base_name@.so
-SHLIB_SONAME = @shlib_so_name@.so.1
-SHLIB_NAME = @shlib_dir@@shlib_so_name@.so.1
+SHLIB_SOVERSION = 1
+SHLIB_SONAME = @shlib_so_name@.so.$(SHLIB_SOVERSION)
+SHLIB_NAME = @shlib_dir@@shlib_so_name@.so.$(SHLIB_SOVERSION)
SHLIB_MAP = @shlib_map_file@
SHLIB_OBJS = @shlib_objs@
SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@
diff --git a/gcc/config/v850/v850.h b/gcc/config/v850/v850.h
index ff8c274f598..337271ebd36 100644
--- a/gcc/config/v850/v850.h
+++ b/gcc/config/v850/v850.h
@@ -756,7 +756,7 @@ struct cum_arg { int nbytes; int anonymous_args; };
for a call to a function whose data type is FNTYPE.
For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM).nbytes = 0, (CUM).anonymous_args = 0)
/* Update the data in CUM to advance over an argument
diff --git a/gcc/config/vax/vax.h b/gcc/config/vax/vax.h
index 35d865d0f8a..db55baa0f42 100644
--- a/gcc/config/vax/vax.h
+++ b/gcc/config/vax/vax.h
@@ -441,7 +441,7 @@ enum reg_class { NO_REGS, ALL_REGS, LIM_REG_CLASSES };
On the VAX, the offset starts at 0. */
-#define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT) \
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
((CUM) = 0)
/* Update the data in CUM to advance over an argument
diff --git a/gcc/config/xtensa/xtensa-protos.h b/gcc/config/xtensa/xtensa-protos.h
index cf7f09075c9..f240355093f 100644
--- a/gcc/config/xtensa/xtensa-protos.h
+++ b/gcc/config/xtensa/xtensa-protos.h
@@ -1,5 +1,5 @@
/* Prototypes of target machine for GNU compiler for Xtensa.
- Copyright 2001,2002,2003 Free Software Foundation, Inc.
+ Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Bob Wilson (bwilson@tensilica.com) at Tensilica.
This file is part of GCC.
@@ -68,14 +68,14 @@ extern int xtensa_expand_scc (rtx *);
extern int xtensa_expand_block_move (rtx *);
extern void xtensa_split_operand_pair (rtx *, enum machine_mode);
extern int xtensa_emit_move_sequence (rtx *, enum machine_mode);
-extern bool xtensa_copy_incoming_a7 (rtx *, enum machine_mode);
+extern rtx xtensa_copy_incoming_a7 (rtx);
extern void xtensa_emit_block_move (rtx *, rtx *, int);
extern void xtensa_expand_nonlocal_goto (rtx *);
extern void xtensa_emit_loop_end (rtx, rtx *);
extern char *xtensa_emit_call (int, rtx *);
#ifdef TREE_CODE
-extern void init_cumulative_args (CUMULATIVE_ARGS *, tree, rtx);
+extern void init_cumulative_args (CUMULATIVE_ARGS *, int);
extern void xtensa_va_start (tree, rtx);
extern rtx xtensa_va_arg (tree, tree);
#endif /* TREE_CODE */
@@ -89,7 +89,6 @@ extern enum reg_class xtensa_preferred_reload_class (rtx, enum reg_class, int);
extern enum reg_class xtensa_secondary_reload_class (enum reg_class,
enum machine_mode, rtx,
int);
-extern int a7_overlap_mentioned_p (rtx);
#endif /* RTX_CODE */
#ifdef TREE_CODE
diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c
index e8926c9c1e3..1d58e70b906 100644
--- a/gcc/config/xtensa/xtensa.c
+++ b/gcc/config/xtensa/xtensa.c
@@ -1,5 +1,5 @@
/* Subroutines for insn-output.c for Tensilica's Xtensa architecture.
- Copyright 2001,2002,2003 Free Software Foundation, Inc.
+ Copyright 2001,2002,2003,2004 Free Software Foundation, Inc.
Contributed by Bob Wilson (bwilson@tensilica.com) at Tensilica.
This file is part of GCC.
@@ -91,7 +91,9 @@ const char *xtensa_st_opcodes[(int) MAX_MACHINE_MODE];
struct machine_function GTY(())
{
int accesses_prev_frame;
- bool incoming_a7_copied;
+ bool need_a7_copy;
+ bool vararg_a7;
+ rtx set_frame_ptr_insn;
};
/* Vector, indexed by hard register number, which contains 1 for a
@@ -198,6 +200,7 @@ static rtx gen_conditional_move (rtx);
static rtx fixup_subreg_mem (rtx);
static enum machine_mode xtensa_find_mode_for_size (unsigned);
static struct machine_function * xtensa_init_machine_status (void);
+static bool xtensa_return_in_msb (tree);
static void printx (FILE *, signed int);
static void xtensa_function_epilogue (FILE *, HOST_WIDE_INT);
static unsigned int xtensa_multibss_section_type_flags (tree, const char *,
@@ -237,6 +240,11 @@ static const int reg_nonleaf_alloc_order[FIRST_PSEUDO_REGISTER] =
#undef TARGET_BUILD_BUILTIN_VA_LIST
#define TARGET_BUILD_BUILTIN_VA_LIST xtensa_build_builtin_va_list
+#undef TARGET_RETURN_IN_MSB
+#define TARGET_RETURN_IN_MSB xtensa_return_in_msb
+#undef TARGET_SPLIT_COMPLEX_ARG
+#define TARGET_SPLIT_COMPLEX_ARG hook_bool_tree_true
+
struct gcc_target targetm = TARGET_INITIALIZER;
@@ -1256,14 +1264,11 @@ xtensa_emit_move_sequence (rtx *operands, enum machine_mode mode)
}
}
- if (!(reload_in_progress | reload_completed))
- {
- if (!xtensa_valid_move (mode, operands))
- operands[1] = force_reg (mode, operands[1]);
+ if (!(reload_in_progress | reload_completed)
+ && !xtensa_valid_move (mode, operands))
+ operands[1] = force_reg (mode, operands[1]);
- if (xtensa_copy_incoming_a7 (operands, mode))
- return 1;
- }
+ operands[1] = xtensa_copy_incoming_a7 (operands[1]);
/* During reload we don't want to emit (subreg:X (mem:Y)) since that
instruction won't be recognized after reload, so we remove the
@@ -1294,69 +1299,114 @@ fixup_subreg_mem (rtx x)
}
-/* Check if this move is copying an incoming argument in a7. If so,
- emit the move, followed by the special "set_frame_ptr"
- unspec_volatile insn, at the very beginning of the function. This
- is necessary because the register allocator will ignore conflicts
- with a7 and may assign some other pseudo to a7. If that pseudo was
- assigned prior to this move, it would clobber the incoming argument
- in a7. By copying the argument out of a7 as the very first thing,
- and then immediately following that with an unspec_volatile to keep
- the scheduler away, we should avoid any problems. */
+/* Check if an incoming argument in a7 is expected to be used soon and
+ if OPND is a register or register pair that includes a7. If so,
+ create a new pseudo and copy a7 into that pseudo at the very
+ beginning of the function, followed by the special "set_frame_ptr"
+ unspec_volatile insn. The return value is either the original
+ operand, if it is not a7, or the new pseudo containing a copy of
+ the incoming argument. This is necessary because the register
+ allocator will ignore conflicts with a7 and may either assign some
+ other pseudo to a7 or use a7 as the hard_frame_pointer, clobbering
+ the incoming argument in a7. By copying the argument out of a7 as
+ the very first thing, and then immediately following that with an
+ unspec_volatile to keep the scheduler away, we should avoid any
+ problems. Putting the set_frame_ptr insn at the beginning, with
+ only the a7 copy before it, also makes it easier for the prologue
+ expander to initialize the frame pointer after the a7 copy and to
+ fix up the a7 copy to use the stack pointer instead of the frame
+ pointer. */
-bool
-xtensa_copy_incoming_a7 (rtx *operands, enum machine_mode mode)
+rtx
+xtensa_copy_incoming_a7 (rtx opnd)
{
- if (a7_overlap_mentioned_p (operands[1])
- && !cfun->machine->incoming_a7_copied)
+ rtx entry_insns = 0;
+ rtx reg, tmp;
+ enum machine_mode mode;
+
+ if (!cfun->machine->need_a7_copy)
+ return opnd;
+
+ /* This function should never be called again once a7 has been copied. */
+ if (cfun->machine->set_frame_ptr_insn)
+ abort ();
+
+ mode = GET_MODE (opnd);
+
+ /* The operand using a7 may come in a later instruction, so just return
+ the original operand if it doesn't use a7. */
+ reg = opnd;
+ if (GET_CODE (reg) == SUBREG)
{
- rtx mov;
- switch (mode)
- {
- case DFmode:
- mov = gen_movdf_internal (operands[0], operands[1]);
- break;
- case SFmode:
- mov = gen_movsf_internal (operands[0], operands[1]);
- break;
- case DImode:
- mov = gen_movdi_internal (operands[0], operands[1]);
- break;
- case SImode:
- mov = gen_movsi_internal (operands[0], operands[1]);
- break;
- case HImode:
- mov = gen_movhi_internal (operands[0], operands[1]);
- break;
- case QImode:
- mov = gen_movqi_internal (operands[0], operands[1]);
- break;
- default:
- abort ();
- }
+ if (SUBREG_BYTE (reg) != 0)
+ abort ();
+ reg = SUBREG_REG (reg);
+ }
+ if (GET_CODE (reg) != REG
+ || REGNO (reg) > A7_REG
+ || REGNO (reg) + HARD_REGNO_NREGS (A7_REG, mode) <= A7_REG)
+ return opnd;
- /* Insert the instructions before any other argument copies.
- (The set_frame_ptr insn comes _after_ the move, so push it
- out first.) */
- push_topmost_sequence ();
- emit_insn_after (gen_set_frame_ptr (), get_insns ());
- emit_insn_after (mov, get_insns ());
- pop_topmost_sequence ();
+ /* 1-word args will always be in a7; 2-word args in a6/a7. */
+ if (REGNO (reg) + HARD_REGNO_NREGS (A7_REG, mode) - 1 != A7_REG)
+ abort ();
- /* Ideally the incoming argument in a7 would only be copied
- once, since propagating a7 into the body of a function
- will almost certainly lead to errors. However, there is
- at least one harmless case (in GCSE) where the original
- copy from a7 is changed to copy into a new pseudo. Thus,
- we use a flag to only do this special treatment for the
- first copy of a7. */
+ cfun->machine->need_a7_copy = false;
- cfun->machine->incoming_a7_copied = true;
+ /* Copy a7 to a new pseudo at the function entry. Use gen_raw_REG to
+ create the REG for a7 so that hard_frame_pointer_rtx is not used. */
- return 1;
+ push_to_sequence (entry_insns);
+ tmp = gen_reg_rtx (mode);
+
+ switch (mode)
+ {
+ case DFmode:
+ case DImode:
+ emit_insn (gen_movsi_internal (gen_rtx_SUBREG (SImode, tmp, 0),
+ gen_rtx_REG (SImode, A7_REG - 1)));
+ emit_insn (gen_movsi_internal (gen_rtx_SUBREG (SImode, tmp, 4),
+ gen_raw_REG (SImode, A7_REG)));
+ break;
+ case SFmode:
+ emit_insn (gen_movsf_internal (tmp, gen_raw_REG (mode, A7_REG)));
+ break;
+ case SImode:
+ emit_insn (gen_movsi_internal (tmp, gen_raw_REG (mode, A7_REG)));
+ break;
+ case HImode:
+ emit_insn (gen_movhi_internal (tmp, gen_raw_REG (mode, A7_REG)));
+ break;
+ case QImode:
+ emit_insn (gen_movqi_internal (tmp, gen_raw_REG (mode, A7_REG)));
+ break;
+ default:
+ abort ();
}
- return 0;
+ cfun->machine->set_frame_ptr_insn = emit_insn (gen_set_frame_ptr ());
+ entry_insns = get_insns ();
+ end_sequence ();
+
+ if (cfun->machine->vararg_a7)
+ {
+ /* This is called from within builtin_savereg, so we're already
+ inside a start_sequence that will be placed at the start of
+ the function. */
+ emit_insn (entry_insns);
+ }
+ else
+ {
+ /* Put entry_insns after the NOTE that starts the function. If
+ this is inside a start_sequence, make the outer-level insn
+ chain current, so the code is placed at the start of the
+ function. */
+ push_topmost_sequence ();
+ emit_insn_after (entry_insns, get_insns ());
+ pop_topmost_sequence ();
+ }
+
+ return tmp;
}
@@ -1692,11 +1742,10 @@ xtensa_dbx_register_number (int regno)
/* Initialize CUMULATIVE_ARGS for a function. */
void
-init_cumulative_args (CUMULATIVE_ARGS *cum,
- tree fntype ATTRIBUTE_UNUSED,
- rtx libname ATTRIBUTE_UNUSED)
+init_cumulative_args (CUMULATIVE_ARGS *cum, int incoming)
{
cum->arg_words = 0;
+ cum->incoming = incoming;
}
@@ -1733,7 +1782,6 @@ function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode, tree type,
int regbase, words, max;
int *arg_words;
int regno;
- enum machine_mode result_mode;
arg_words = &cum->arg_words;
regbase = (incoming_p ? GP_ARG_FIRST : GP_OUTGOING_ARG_FIRST);
@@ -1744,39 +1792,29 @@ function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode, tree type,
: int_size_in_bytes (type)) + UNITS_PER_WORD - 1) / UNITS_PER_WORD;
if (type && (TYPE_ALIGN (type) > BITS_PER_WORD))
- *arg_words += (*arg_words & 1);
+ {
+ int align = TYPE_ALIGN (type) / BITS_PER_WORD;
+ *arg_words = (*arg_words + align - 1) & -align;
+ }
if (*arg_words + words > max)
return (rtx)0;
regno = regbase + *arg_words;
- result_mode = (mode == BLKmode ? TYPE_MODE (type) : mode);
- /* We need to make sure that references to a7 are represented with
- rtx that is not equal to hard_frame_pointer_rtx. For BLKmode and
- modes bigger than 2 words (because we only have patterns for
- modes of 2 words or smaller), we can't control the expansion
- unless we explicitly list the individual registers in a PARALLEL. */
+ if (cum->incoming && regno <= A7_REG && regno + words > A7_REG)
+ cfun->machine->need_a7_copy = true;
- if ((mode == BLKmode || words > 2)
- && regno < A7_REG
- && regno + words > A7_REG)
- {
- rtx result;
- int n;
+ return gen_rtx_REG (mode, regno);
+}
- result = gen_rtx_PARALLEL (result_mode, rtvec_alloc (words));
- for (n = 0; n < words; n++)
- {
- XVECEXP (result, 0, n) =
- gen_rtx_EXPR_LIST (VOIDmode,
- gen_raw_REG (SImode, regno + n),
- GEN_INT (n * UNITS_PER_WORD));
- }
- return result;
- }
- return gen_raw_REG (result_mode, regno);
+static bool
+xtensa_return_in_msb (tree valtype)
+{
+ return (TARGET_BIG_ENDIAN
+ && AGGREGATE_TYPE_P (valtype)
+ && int_size_in_bytes (valtype) >= UNITS_PER_WORD);
}
@@ -2225,41 +2263,18 @@ xtensa_expand_prologue (void)
if (frame_pointer_needed)
{
- rtx first, insn, set_frame_ptr_insn = 0;
-
- push_topmost_sequence ();
- first = get_insns ();
- pop_topmost_sequence ();
-
- /* Search all instructions, looking for the insn that sets up the
- frame pointer. This search will fail if the function does not
- have an incoming argument in $a7, but in that case, we can just
- set up the frame pointer at the very beginning of the
- function. */
-
- for (insn = first; insn; insn = NEXT_INSN (insn))
+ if (cfun->machine->set_frame_ptr_insn)
{
- rtx pat;
+ rtx first, insn;
- if (!INSN_P (insn))
- continue;
+ push_topmost_sequence ();
+ first = get_insns ();
+ pop_topmost_sequence ();
- pat = PATTERN (insn);
- if (GET_CODE (pat) == SET
- && GET_CODE (SET_SRC (pat)) == UNSPEC_VOLATILE
- && (XINT (SET_SRC (pat), 1) == UNSPECV_SET_FP))
- {
- set_frame_ptr_insn = insn;
- break;
- }
- }
-
- if (set_frame_ptr_insn)
- {
/* For all instructions prior to set_frame_ptr_insn, replace
hard_frame_pointer references with stack_pointer. */
for (insn = first;
- insn != set_frame_ptr_insn;
+ insn != cfun->machine->set_frame_ptr_insn;
insn = NEXT_INSN (insn))
{
if (INSN_P (insn))
@@ -2310,17 +2325,20 @@ xtensa_return_addr (int count, rtx frame)
/* Create the va_list data type.
- This structure is set up by __builtin_saveregs. The __va_reg
- field points to a stack-allocated region holding the contents of the
- incoming argument registers. The __va_ndx field is an index initialized
- to the position of the first unnamed (variable) argument. This same index
- is also used to address the arguments passed in memory. Thus, the
- __va_stk field is initialized to point to the position of the first
- argument in memory offset to account for the arguments passed in
- registers. E.G., if there are 6 argument registers, and each register is
- 4 bytes, then __va_stk is set to $sp - (6 * 4); then __va_reg[N*4]
- references argument word N for 0 <= N < 6, and __va_stk[N*4] references
- argument word N for N >= 6. */
+
+ This structure is set up by __builtin_saveregs. The __va_reg field
+ points to a stack-allocated region holding the contents of the
+ incoming argument registers. The __va_ndx field is an index
+ initialized to the position of the first unnamed (variable)
+ argument. This same index is also used to address the arguments
+ passed in memory. Thus, the __va_stk field is initialized to point
+ to the position of the first argument in memory offset to account
+ for the arguments passed in registers and to account for the size
+ of the argument registers not being 16-byte aligned. E.G., there
+ are 6 argument registers of 4 bytes each, but we want the __va_ndx
+ for the first stack argument to have the maximal alignment of 16
+ bytes, so we offset the __va_stk address by 32 bytes so that
+ __va_stk[32] references the first argument on the stack. */
static tree
xtensa_build_builtin_va_list (void)
@@ -2361,9 +2379,8 @@ xtensa_builtin_saveregs (void)
rtx gp_regs, dest;
int arg_words = current_function_arg_words;
int gp_left = MAX_ARGS_IN_REGISTERS - arg_words;
- int i;
- if (gp_left == 0)
+ if (gp_left <= 0)
return const0_rtx;
/* Allocate the general-purpose register space. */
@@ -2375,16 +2392,9 @@ xtensa_builtin_saveregs (void)
dest = change_address (gp_regs, SImode,
plus_constant (XEXP (gp_regs, 0),
arg_words * UNITS_PER_WORD));
-
- /* Note: Don't use move_block_from_reg() here because the incoming
- argument in a7 cannot be represented by hard_frame_pointer_rtx.
- Instead, call gen_raw_REG() directly so that we get a distinct
- instance of (REG:SI 7). */
- for (i = 0; i < gp_left; i++)
- {
- emit_move_insn (operand_subword (dest, i, 1, BLKmode),
- gen_raw_REG (SImode, GP_ARG_FIRST + arg_words + i));
- }
+ cfun->machine->need_a7_copy = true;
+ cfun->machine->vararg_a7 = true;
+ move_block_from_reg (GP_ARG_FIRST + arg_words, dest, gp_left);
return XEXP (gp_regs, 0);
}
@@ -2419,15 +2429,18 @@ xtensa_va_start (tree valist, rtx nextarg ATTRIBUTE_UNUSED)
TREE_SIDE_EFFECTS (t) = 1;
expand_expr (t, const0_rtx, VOIDmode, EXPAND_NORMAL);
- /* Set the __va_stk member to $arg_ptr - (size of __va_reg area) */
+ /* Set the __va_stk member to ($arg_ptr - 32). */
u = make_tree (ptr_type_node, virtual_incoming_args_rtx);
- u = fold (build (PLUS_EXPR, ptr_type_node, u,
- build_int_2 (-MAX_ARGS_IN_REGISTERS * UNITS_PER_WORD, -1)));
+ u = fold (build (PLUS_EXPR, ptr_type_node, u, build_int_2 (-32, -1)));
t = build (MODIFY_EXPR, ptr_type_node, stk, u);
TREE_SIDE_EFFECTS (t) = 1;
expand_expr (t, const0_rtx, VOIDmode, EXPAND_NORMAL);
- /* Set the __va_ndx member. */
+ /* Set the __va_ndx member. If the first variable argument is on
+ the stack, adjust __va_ndx by 2 words to account for the extra
+ alignment offset for __va_stk. */
+ if (arg_words >= MAX_ARGS_IN_REGISTERS)
+ arg_words += 2;
u = build_int_2 (arg_words * UNITS_PER_WORD, 0);
t = build (MODIFY_EXPR, integer_type_node, ndx, u);
TREE_SIDE_EFFECTS (t) = 1;
@@ -2447,6 +2460,25 @@ xtensa_va_arg (tree valist, tree type)
rtx array, orig_ndx, r, addr, size, va_size;
rtx lab_false, lab_over, lab_false2;
+ /* Handle complex values as separate real and imaginary parts. */
+ if (TREE_CODE (type) == COMPLEX_TYPE)
+ {
+ rtx real_part, imag_part, concat_val, local_copy;
+
+ real_part = xtensa_va_arg (valist, TREE_TYPE (type));
+ imag_part = xtensa_va_arg (valist, TREE_TYPE (type));
+
+ /* Make a copy of the value in case the parts are not contiguous. */
+ real_part = gen_rtx_MEM (TYPE_MODE (TREE_TYPE (type)), real_part);
+ imag_part = gen_rtx_MEM (TYPE_MODE (TREE_TYPE (type)), imag_part);
+ concat_val = gen_rtx_CONCAT (TYPE_MODE (type), real_part, imag_part);
+
+ local_copy = assign_temp (type, 0, 1, 0);
+ emit_move_insn (local_copy, concat_val);
+
+ return XEXP (local_copy, 0);
+ }
+
f_stk = TYPE_FIELDS (va_list_type_node);
f_reg = TREE_CHAIN (f_stk);
f_ndx = TREE_CHAIN (f_reg);
@@ -2470,17 +2502,19 @@ xtensa_va_arg (tree valist, tree type)
emit_move_insn (va_size, r);
- /* First align __va_ndx to a double word boundary if necessary for this arg:
+ /* First align __va_ndx if necessary for this arg:
- if (__alignof__ (TYPE) > 4)
- (AP).__va_ndx = (((AP).__va_ndx + 7) & -8); */
+ if (__alignof__ (TYPE) > 4 )
+ (AP).__va_ndx = (((AP).__va_ndx + __alignof__ (TYPE) - 1)
+ & -__alignof__ (TYPE)); */
if (TYPE_ALIGN (type) > BITS_PER_WORD)
{
+ int align = TYPE_ALIGN (type) / BITS_PER_UNIT;
tmp = build (PLUS_EXPR, integer_type_node, ndx,
- build_int_2 ((2 * UNITS_PER_WORD) - 1, 0));
+ build_int_2 (align - 1, 0));
tmp = build (BIT_AND_EXPR, integer_type_node, tmp,
- build_int_2 (-2 * UNITS_PER_WORD, -1));
+ build_int_2 (-align, -1));
tmp = build (MODIFY_EXPR, integer_type_node, ndx, tmp);
TREE_SIDE_EFFECTS (tmp) = 1;
expand_expr (tmp, const0_rtx, VOIDmode, EXPAND_NORMAL);
@@ -2538,18 +2572,18 @@ xtensa_va_arg (tree valist, tree type)
else
{
- if (orig_ndx < __MAX_ARGS_IN_REGISTERS * 4)
- (AP).__va_ndx = __MAX_ARGS_IN_REGISTERS * 4 + __va_size (TYPE);
+ if (orig_ndx <= __MAX_ARGS_IN_REGISTERS * 4)
+ (AP).__va_ndx = 32 + __va_size (TYPE);
__array = (AP).__va_stk;
} */
lab_false2 = gen_label_rtx ();
emit_cmp_and_jump_insns (orig_ndx,
GEN_INT (MAX_ARGS_IN_REGISTERS * UNITS_PER_WORD),
- GE, const1_rtx, SImode, 0, lab_false2);
+ GT, const1_rtx, SImode, 0, lab_false2);
tmp = build (PLUS_EXPR, sizetype, make_tree (intSI_type_node, va_size),
- build_int_2 (MAX_ARGS_IN_REGISTERS * UNITS_PER_WORD, 0));
+ build_int_2 (32, 0));
tmp = build (MODIFY_EXPR, integer_type_node, ndx, tmp);
TREE_SIDE_EFFECTS (tmp) = 1;
expand_expr (tmp, const0_rtx, VOIDmode, EXPAND_NORMAL);
@@ -2691,55 +2725,6 @@ order_regs_for_local_alloc (void)
}
-/* A customized version of reg_overlap_mentioned_p that only looks for
- references to a7 (as opposed to hard_frame_pointer_rtx). */
-
-int
-a7_overlap_mentioned_p (rtx x)
-{
- int i, j;
- unsigned int x_regno;
- const char *fmt;
-
- if (GET_CODE (x) == REG)
- {
- x_regno = REGNO (x);
- return (x != hard_frame_pointer_rtx
- && x_regno < A7_REG + 1
- && x_regno + HARD_REGNO_NREGS (A7_REG, GET_MODE (x)) > A7_REG);
- }
-
- if (GET_CODE (x) == SUBREG
- && GET_CODE (SUBREG_REG (x)) == REG
- && REGNO (SUBREG_REG (x)) < FIRST_PSEUDO_REGISTER)
- {
- x_regno = subreg_regno (x);
- return (SUBREG_REG (x) != hard_frame_pointer_rtx
- && x_regno < A7_REG + 1
- && x_regno + HARD_REGNO_NREGS (A7_REG, GET_MODE (x)) > A7_REG);
- }
-
- /* X does not match, so try its subexpressions. */
- fmt = GET_RTX_FORMAT (GET_CODE (x));
- for (i = GET_RTX_LENGTH (GET_CODE (x)) - 1; i >= 0; i--)
- {
- if (fmt[i] == 'e')
- {
- if (a7_overlap_mentioned_p (XEXP (x, i)))
- return 1;
- }
- else if (fmt[i] == 'E')
- {
- for (j = XVECLEN (x, i) - 1; j >=0; j--)
- if (a7_overlap_mentioned_p (XVECEXP (x, i, j)))
- return 1;
- }
- }
-
- return 0;
-}
-
-
/* Some Xtensa targets support multiple bss sections. If the section
name ends with ".bss", add SECTION_BSS to the flags. */
diff --git a/gcc/config/xtensa/xtensa.h b/gcc/config/xtensa/xtensa.h
index a7f470ec0b5..293495d1117 100644
--- a/gcc/config/xtensa/xtensa.h
+++ b/gcc/config/xtensa/xtensa.h
@@ -1,5 +1,5 @@
/* Definitions of Tensilica's Xtensa target machine for GNU compiler.
- Copyright 2001,2002,2003 Free Software Foundation, Inc.
+ Copyright 2001,2002,2003,2004 Free Software Foundation, Inc.
Contributed by Bob Wilson (bwilson@tensilica.com) at Tensilica.
This file is part of GCC.
@@ -106,6 +106,7 @@ extern unsigned xtensa_current_frame_size;
do { \
builtin_assert ("cpu=xtensa"); \
builtin_assert ("machine=xtensa"); \
+ builtin_define ("__xtensa__"); \
builtin_define ("__XTENSA__"); \
builtin_define (TARGET_BIG_ENDIAN ? "__XTENSA_EB__" : "__XTENSA_EL__"); \
if (!TARGET_HARD_FLOAT) \
@@ -763,23 +764,21 @@ extern enum reg_class xtensa_char_to_class[256];
#define FUNCTION_ARG_REGNO_P(N) \
((N) >= GP_OUTGOING_ARG_FIRST && (N) <= GP_OUTGOING_ARG_LAST)
-/* Define a data type for recording info about an argument list
- during the scan of that argument list. This data type should
- hold all necessary information about the function itself
- and about the args processed so far, enough to enable macros
- such as FUNCTION_ARG to determine where the next arg should go. */
-typedef struct xtensa_args {
- int arg_words; /* # total words the arguments take */
+/* Record the number of argument words seen so far, along with a flag to
+ indicate whether these are incoming arguments. (FUNCTION_INCOMING_ARG
+ is used for both incoming and outgoing args, so a separate flag is
+ needed. */
+typedef struct xtensa_args
+{
+ int arg_words;
+ int incoming;
} CUMULATIVE_ARGS;
-/* Initialize a variable CUM of type CUMULATIVE_ARGS
- for a call to a function whose data type is FNTYPE.
- For a library call, FNTYPE is 0. */
-#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT) \
- init_cumulative_args (&CUM, FNTYPE, LIBNAME)
+#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
+ init_cumulative_args (&CUM, 0)
#define INIT_CUMULATIVE_INCOMING_ARGS(CUM, FNTYPE, LIBNAME) \
- init_cumulative_args (&CUM, FNTYPE, LIBNAME)
+ init_cumulative_args (&CUM, 1)
/* Update the data in CUM to advance over an argument
of mode MODE and data type TYPE.
@@ -806,7 +805,6 @@ typedef struct xtensa_args {
? PARM_BOUNDARY \
: GET_MODE_ALIGNMENT (MODE)))
-
/* Nonzero if we do not know how to pass TYPE solely in registers.
We cannot do so in the following cases:
@@ -1170,11 +1168,6 @@ typedef struct xtensa_args {
/* Prefer word-sized loads. */
#define SLOW_BYTE_ACCESS 1
-/* ??? Xtensa doesn't have any instructions that set integer values
- based on the results of comparisons, but the simplification code in
- the combiner also uses STORE_FLAG_VALUE. The default value (1) is
- fine for us, but (-1) might be better. */
-
/* Shift instructions ignore all but the low-order few bits. */
#define SHIFT_COUNT_TRUNCATED 1
diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md
index 01ec40d63a7..acc77675d5d 100644
--- a/gcc/config/xtensa/xtensa.md
+++ b/gcc/config/xtensa/xtensa.md
@@ -1,5 +1,5 @@
;; GCC machine description for Tensilica's Xtensa architecture.
-;; Copyright (C) 2001 Free Software Foundation, Inc.
+;; Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
;; Contributed by Bob Wilson (bwilson@tensilica.com) at Tensilica.
;; This file is part of GCC.
@@ -807,8 +807,7 @@
&& !register_operand (operands[1], DImode))
operands[1] = force_reg (DImode, operands[1]);
- if (xtensa_copy_incoming_a7 (operands, DImode))
- DONE;
+ operands[1] = xtensa_copy_incoming_a7 (operands[1]);
})
(define_insn_and_split "movdi_internal"
@@ -931,18 +930,15 @@
if (!TARGET_CONST16 && CONSTANT_P (operands[1]))
operands[1] = force_const_mem (SFmode, operands[1]);
- if (!(reload_in_progress | reload_completed))
- {
- if ((!register_operand (operands[0], SFmode)
- && !register_operand (operands[1], SFmode))
- || (FP_REG_P (xt_true_regnum (operands[0]))
- && (constantpool_mem_p (operands[1])
- || CONSTANT_P (operands[1]))))
- operands[1] = force_reg (SFmode, operands[1]);
-
- if (xtensa_copy_incoming_a7 (operands, SFmode))
- DONE;
- }
+ if ((!register_operand (operands[0], SFmode)
+ && !register_operand (operands[1], SFmode))
+ || (FP_REG_P (xt_true_regnum (operands[0]))
+ && !(reload_in_progress | reload_completed)
+ && (constantpool_mem_p (operands[1])
+ || CONSTANT_P (operands[1]))))
+ operands[1] = force_reg (SFmode, operands[1]);
+
+ operands[1] = xtensa_copy_incoming_a7 (operands[1]);
})
(define_insn "movsf_internal"
@@ -1016,8 +1012,7 @@
&& !register_operand (operands[1], DFmode))
operands[1] = force_reg (DFmode, operands[1]);
- if (xtensa_copy_incoming_a7 (operands, DFmode))
- DONE;
+ operands[1] = xtensa_copy_incoming_a7 (operands[1]);
})
(define_insn_and_split "movdf_internal"
@@ -1075,7 +1070,16 @@
;; Shift instructions.
-(define_insn "ashlsi3"
+(define_expand "ashlsi3"
+ [(set (match_operand:SI 0 "register_operand" "")
+ (ashift:SI (match_operand:SI 1 "register_operand" "")
+ (match_operand:SI 2 "arith_operand" "")))]
+ ""
+{
+ operands[1] = xtensa_copy_incoming_a7 (operands[1]);
+})
+
+(define_insn "ashlsi3_internal"
[(set (match_operand:SI 0 "register_operand" "=a,a")
(ashift:SI (match_operand:SI 1 "register_operand" "r,r")
(match_operand:SI 2 "arith_operand" "J,r")))]
diff --git a/gcc/configure b/gcc/configure
index 34bf28a917f..c21b3e79fef 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -308,7 +308,7 @@ ac_includes_default="\
# include <unistd.h>
#endif"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os build_subdir host_subdir target_subdir GENINSRC CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT NO_MINUS_C_MINUS_O OUTPUT_OPTION CPP GNATBIND ac_ct_GNATBIND strict1_warn warn_cflags WERROR nocommon_flag EGREP valgrind_path valgrind_path_defines valgrind_command coverage_flags enable_multilib enable_shared TARGET_SYSTEM_ROOT TARGET_SYSTEM_ROOT_DEFINE CROSS_SYSTEM_HEADER_DIR onestep SET_MAKE AWK LN LN_S RANLIB ac_ct_RANLIB INSTALL INSTALL_PROGRAM INSTALL_DATA make_compare_target have_mktemp_command MAKEINFO BUILD_INFO GENERATED_MANPAGES FLEX BISON stage1_cflags COLLECT2_LIBS GNAT_LIBEXC LDEXP_LIB TARGET_GETGROUPS_T LIBICONV LIBICONV_DEP manext objext extra_modes_file FORBUILD PACKAGE VERSION USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS CROSS ALL SYSTEM_HEADER_DIR inhibit_libc BUILD_PREFIX BUILD_PREFIX_1 CC_FOR_BUILD BUILD_CFLAGS STMP_FIXINC STMP_FIXPROTO libgcc_visibility gthread_flags GGC zlibdir zlibinc MAINT gcc_tooldir dollar slibdir objdir subdirs srcdir docobjdir all_boot_languages all_compilers all_gtfiles all_gtfiles_files_langs all_gtfiles_files_files all_lang_makefrags all_lang_makefiles all_languages all_stagestuff build_exeext build_install_headers_dir build_xm_file_list build_xm_include_list build_xm_defines check_languages cc_set_by_configure quoted_cc_set_by_configure cpp_install_dir xmake_file tmake_file extra_headers_list extra_objs extra_parts extra_passes extra_programs float_h_file gcc_config_arguments gcc_gxx_include_dir libstdcxx_incdir gcc_version gcc_version_full gcc_version_trigger host_exeext host_extra_gcc_objs host_xm_file_list host_xm_include_list host_xm_defines out_host_hook_obj install lang_opt_files lang_specs_files lang_tree_files local_prefix md_file objc_boehm_gc out_file out_object_file stage_prefix_set_by_configure quoted_stage_prefix_set_by_configure symbolic_link thread_file tm_file_list tm_include_list tm_defines tm_p_file_list tm_p_include_list xm_file_list xm_include_list xm_defines target_noncanonical c_target_objs cxx_target_objs target_cpu_default LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os build_subdir host_subdir target_subdir GENINSRC CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT NO_MINUS_C_MINUS_O OUTPUT_OPTION CPP GNATBIND ac_ct_GNATBIND strict1_warn warn_cflags WERROR nocommon_flag EGREP valgrind_path valgrind_path_defines valgrind_command coverage_flags enable_multilib enable_shared TARGET_SYSTEM_ROOT TARGET_SYSTEM_ROOT_DEFINE CROSS_SYSTEM_HEADER_DIR onestep SET_MAKE AWK LN LN_S RANLIB ac_ct_RANLIB INSTALL INSTALL_PROGRAM INSTALL_DATA make_compare_target have_mktemp_command MAKEINFO BUILD_INFO GENERATED_MANPAGES FLEX BISON stage1_cflags COLLECT2_LIBS GNAT_LIBEXC LDEXP_LIB TARGET_GETGROUPS_T LIBICONV LIBICONV_DEP manext objext extra_modes_file FORBUILD PACKAGE VERSION USE_NLS LIBINTL LIBINTL_DEP INCINTL XGETTEXT GMSGFMT POSUB CATALOGS CROSS ALL SYSTEM_HEADER_DIR inhibit_libc BUILD_PREFIX BUILD_PREFIX_1 CC_FOR_BUILD BUILD_CFLAGS STMP_FIXINC STMP_FIXPROTO libgcc_visibility gthread_flags GGC zlibdir zlibinc MAINT gcc_tooldir dollar slibdir objdir subdirs srcdir all_boot_languages all_compilers all_gtfiles all_gtfiles_files_langs all_gtfiles_files_files all_lang_makefrags all_lang_makefiles all_languages all_stagestuff build_exeext build_install_headers_dir build_xm_file_list build_xm_include_list build_xm_defines check_languages cc_set_by_configure quoted_cc_set_by_configure cpp_install_dir xmake_file tmake_file extra_gcc_objs extra_headers_list extra_objs extra_parts extra_passes extra_programs float_h_file gcc_config_arguments gcc_gxx_include_dir libstdcxx_incdir gcc_version gcc_version_full gcc_version_trigger host_exeext host_xm_file_list host_xm_include_list host_xm_defines out_host_hook_obj install lang_opt_files lang_specs_files lang_tree_files local_prefix md_file objc_boehm_gc out_file out_object_file stage_prefix_set_by_configure quoted_stage_prefix_set_by_configure symbolic_link thread_file tm_file_list tm_include_list tm_defines tm_p_file_list tm_p_include_list xm_file_list xm_include_list xm_defines target_noncanonical c_target_objs cxx_target_objs target_cpu_default LIBOBJS LTLIBOBJS'
ac_subst_files='language_hooks'
# Initialize some variables set by options.
@@ -858,7 +858,7 @@ Optional Features:
enable expensive run-time checks. With LIST,
enable only specific categories of checks.
Categories are: misc,tree,rtl,rtlflag,gc,gcac,fold;
- default is misc,tree,gc,rtlflag
+ default is no checking
--enable-coverage=LEVEL
enable compiler\'s code coverage collection.
Use to measure compiler performance and locate
@@ -1631,10 +1631,8 @@ echo "${ECHO_T}$generated_files_in_srcdir" >&6
if test "$generated_files_in_srcdir" = "yes"; then
GENINSRC=''
- docobjdir='$(srcdir)/doc'
else
GENINSRC='#'
- docobjdir='$(objdir)/doc'
fi
@@ -1741,6 +1739,15 @@ fi
# Find C compiler
# ---------------
+# If a non-executable a.out is present (e.g. created by GNU as above even if
+# invoked with -v only), the IRIX 6 native ld just overwrites the existing
+# file, even when creating an executable, so an execution test fails.
+# Remove possible default executable files to avoid this.
+#
+# FIXME: This really belongs into AC_PROG_CC and can be removed once
+# Autoconf includes it.
+rm -f a.out a.exe b.out
+
# Find the native compiler
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
@@ -3693,8 +3700,11 @@ gcc_cv_cc_supports_ada=no
# has not been installed. This is fixed in 2.95.4, 3.0.2, and 3.1.
# Therefore we must check for the error message as well as an
# unsuccessful exit.
+# Other compilers, like HP Tru64 UNIX cc, exit successfully when
+# given a .adb file, but produce no object file. So we must check
+# if an object file was really produced to guard against this.
errors=`(${CC} -c conftest.adb) 2>&1 || echo failure`
-if test x"$errors" = x; then
+if test x"$errors" = x && test -f conftest.$ac_objext; then
gcc_cv_cc_supports_ada=yes
break
fi
@@ -3703,7 +3713,7 @@ fi
echo "$as_me:$LINENO: result: $gcc_cv_cc_supports_ada" >&5
echo "${ECHO_T}$gcc_cv_cc_supports_ada" >&6
-if test x$GNATBIND != xno && test x$gcc_cv_supports_ada != xno; then
+if test x$GNATBIND != xno && test x$gcc_cv_cc_supports_ada != xno; then
have_gnat=yes
else
have_gnat=no
@@ -3736,7 +3746,7 @@ if test "${enable_werror+set}" = set; then
enableval="$enable_werror"
else
- enable_werror=yes
+ enable_werror=no
fi;
if test x$enable_werror = xyes ; then
WERROR=-Werror
@@ -3781,8 +3791,8 @@ echo "$as_me: error: unknown check category $check" >&2;}
esac
else
- # Enable some checks by default for development versions of GCC
-ac_checking=1; ac_tree_checking=1; ac_gc_checking=1; ac_rtlflag_checking=1;
+ # By default, disable all checks for release versions of GCC.
+ac_checking=; ac_tree_checking=; ac_gc_checking=; ac_rtlflag_checking=;
fi;
nocommon_flag=""
if test x$ac_checking != x ; then
@@ -4999,7 +5009,7 @@ if test "${gcc_cv_prog_makeinfo_modern+set}" = set; then
else
ac_prog_version=`$MAKEINFO --version 2>&1 |
sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'`
- echo "configure:5002: version of makeinfo is $ac_prog_version" >&5
+ echo "configure:5012: version of makeinfo is $ac_prog_version" >&5
case $ac_prog_version in
'') gcc_cv_prog_makeinfo_modern=no;;
4.[2-9]*)
@@ -8625,6 +8635,7 @@ target_gtfiles=
. ${srcdir}/config.gcc
extra_objs="${host_extra_objs} ${extra_objs}"
+extra_gcc_objs="${host_extra_gcc_objs} ${extra_gcc_objs}"
# Default the target-machine variables that were not explicitly set.
if test x"$tm_file" = x
@@ -8766,11 +8777,88 @@ fi
if test x$enable___cxa_atexit = xyes || \
test x$enable___cxa_atexit = x -a x$default_use_cxa_atexit = xyes; then
+ echo "$as_me:$LINENO: checking for __cxa_atexit" >&5
+echo $ECHO_N "checking for __cxa_atexit... $ECHO_C" >&6
+if test "${ac_cv_func___cxa_atexit+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char __cxa_atexit (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char __cxa_atexit ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub___cxa_atexit) || defined (__stub_____cxa_atexit)
+choke me
+#else
+char (*f) () = __cxa_atexit;
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+int
+main ()
+{
+return f != __cxa_atexit;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_func___cxa_atexit=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_func___cxa_atexit=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_func___cxa_atexit" >&5
+echo "${ECHO_T}$ac_cv_func___cxa_atexit" >&6
+if test $ac_cv_func___cxa_atexit = yes; then
cat >>confdefs.h <<\_ACEOF
#define DEFAULT_USE_CXA_ATEXIT 1
_ACEOF
+else
+ echo "__cxa_atexit can't be enabled on this target"
+fi
+
fi
# Look for a file containing extra machine modes.
@@ -9436,8 +9524,8 @@ if test "x$gcc_cv_as" = x; then
gcc_cv_as=`echo as | sed ${program_transform_name}`$host_exeext
fi
- test_dirs="$test_prefix/lib/gcc-lib/$target_noncanonical/$gcc_version \
- $test_prefix/lib/gcc-lib/$target_noncanonical \
+ test_dirs="$test_prefix/libexec/gcc/$target_noncanonical/$gcc_version \
+ $test_prefix/libexec/gcc/$target_noncanonical \
/usr/lib/gcc/$target_noncanonical/$gcc_version \
/usr/lib/gcc/$target_noncanonical \
$test_prefix/$target_noncanonical/bin/$target_noncanonical/$gcc_version \
@@ -9551,8 +9639,8 @@ if test "x$gcc_cv_ld" = x; then
gcc_cv_ld=`echo ld | sed ${program_transform_name}`$host_exeext
fi
- test_dirs="$test_prefix/lib/gcc-lib/$target_noncanonical/$gcc_version \
- $test_prefix/lib/gcc-lib/$target_noncanonical \
+ test_dirs="$test_prefix/libexec/gcc/$target_noncanonical/$gcc_version \
+ $test_prefix/libexec/gcc/$target_noncanonical \
/usr/lib/gcc/$target_noncanonical/$gcc_version \
/usr/lib/gcc/$target_noncanonical \
$test_prefix/$target_noncanonical/bin/$target_noncanonical/$gcc_version \
@@ -10138,6 +10226,7 @@ foo: .long 25
lda $4,foo($29) !tprel'
tls_first_major=2
tls_first_minor=13
+ tls_as_opt=--fatal-warnings
;;
i[34567]86-*-*)
conftest_s='
@@ -10157,6 +10246,7 @@ foo: .long 25
leal foo@NTPOFF(%ecx), %eax'
tls_first_major=2
tls_first_minor=14
+ tls_as_opt=--fatal-warnings
;;
x86_64-*-*)
conftest_s='
@@ -10171,6 +10261,7 @@ foo: .long 25
movq $foo@TPOFF, %rax'
tls_first_major=2
tls_first_minor=14
+ tls_as_opt=--fatal-warnings
;;
ia64-*-*)
conftest_s='
@@ -10188,6 +10279,7 @@ foo: data8 25
movl r24 = @tprel(foo#)'
tls_first_major=2
tls_first_minor=13
+ tls_as_opt=--fatal-warnings
;;
powerpc-*-*)
conftest_s='
@@ -10213,7 +10305,7 @@ x3: .space 4
addi 9,9,x2@tprel@l'
tls_first_major=2
tls_first_minor=14
- tls_as_opt=-a32
+ tls_as_opt="-a32 --fatal-warnings"
;;
powerpc64-*-*)
conftest_s='
@@ -10247,7 +10339,7 @@ x3: .space 8
nop'
tls_first_major=2
tls_first_minor=14
- tls_as_opt=-a64
+ tls_as_opt="-a64 --fatal-warnings"
;;
s390-*-*)
conftest_s='
@@ -10266,7 +10358,7 @@ foo: .long 25
bas %r14,0(%r1,%r13):tls_ldcall:foo'
tls_first_major=2
tls_first_minor=14
- tls_as_opt=-m31
+ tls_as_opt="-m31 --fatal-warnings"
;;
s390x-*-*)
conftest_s='
@@ -10284,7 +10376,7 @@ foo: .long 25
brasl %r14,__tls_get_offset@PLT:tls_ldcall:foo'
tls_first_major=2
tls_first_minor=14
- tls_as_opt="-m64 -Aesame"
+ tls_as_opt="-m64 -Aesame --fatal-warnings"
;;
sh-*-* | sh[34]-*-*)
conftest_s='
@@ -10298,9 +10390,44 @@ foo: .long 25
.long foo@TPOFF'
tls_first_major=2
tls_first_minor=13
+ tls_as_opt=--fatal-warnings
;;
sparc*-*-*)
- conftest_s='
+ case "$target" in
+ sparc*-sun-solaris2.*)
+ on_solaris=yes
+ ;;
+ *)
+ on_solaris=no
+ ;;
+ esac
+ if test x$on_solaris = xyes && test x$gas_flag = xno; then
+ conftest_s='
+ .section ".tdata",#alloc,#write,#tls
+foo: .long 25
+ .text
+ sethi %tgd_hi22(foo), %o0
+ add %o0, %tgd_lo10(foo), %o1
+ add %l7, %o1, %o0, %tgd_add(foo)
+ call __tls_get_addr, %tgd_call(foo)
+ sethi %tldm_hi22(foo), %l1
+ add %l1, %tldm_lo10(foo), %l2
+ add %l7, %l2, %o0, %tldm_add(foo)
+ call __tls_get_addr, %tldm_call(foo)
+ sethi %tldo_hix22(foo), %l3
+ xor %l3, %tldo_lox10(foo), %l4
+ add %o0, %l4, %l5, %tldo_add(foo)
+ sethi %tie_hi22(foo), %o3
+ add %o3, %tie_lo10(foo), %o3
+ ld [%l7 + %o3], %o2, %tie_ld(foo)
+ add %g7, %o2, %o4, %tie_add(foo)
+ sethi %tle_hix22(foo), %l1
+ xor %l1, %tle_lox10(foo), %o5
+ ld [%g7 + %o5], %o1'
+ tls_first_major=0
+ tls_first_minor=0
+ else
+ conftest_s='
.section ".tdata","awT",@progbits
foo: .long 25
.text
@@ -10324,7 +10451,8 @@ foo: .long 25
ld [%g7 + %o5], %o1'
tls_first_major=2
tls_first_minor=14
- tls_as_opt=-32
+ tls_as_opt="-32 --fatal-warnings"
+ fi
;;
esac
if test -z "$tls_first_major"; then
@@ -10342,7 +10470,7 @@ else
fi
elif test x$gcc_cv_as != x; then
echo "$conftest_s" > conftest.s
- if { ac_try='$gcc_cv_as $tls_as_opt --fatal-warnings -o conftest.o conftest.s >&5'
+ if { ac_try='$gcc_cv_as $tls_as_opt -o conftest.o conftest.s >&5'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
@@ -10423,6 +10551,45 @@ _ACEOF
fi
;;
+ cris-*-*)
+ echo "$as_me:$LINENO: checking assembler for -no-mul-bug-abort option" >&5
+echo $ECHO_N "checking assembler for -no-mul-bug-abort option... $ECHO_C" >&6
+if test "${gcc_cv_as_cris_no_mul_bug+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ gcc_cv_as_cris_no_mul_bug=no
+ if test $in_tree_gas = yes; then
+ if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 15 \) \* 1000 + 91`
+ then gcc_cv_as_cris_no_mul_bug=yes
+fi
+ elif test x$gcc_cv_as != x; then
+ echo '.text' > conftest.s
+ if { ac_try='$gcc_cv_as -no-mul-bug-abort -o conftest.o conftest.s >&5'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }
+ then
+ gcc_cv_as_cris_no_mul_bug=yes
+ else
+ echo "configure: failed program was" >&5
+ cat conftest.s >&5
+ fi
+ rm -f conftest.o conftest.s
+ fi
+fi
+echo "$as_me:$LINENO: result: $gcc_cv_as_cris_no_mul_bug" >&5
+echo "${ECHO_T}$gcc_cv_as_cris_no_mul_bug" >&6
+if test $gcc_cv_as_cris_no_mul_bug = yes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_AS_NO_MUL_BUG_ABORT_OPTION 1
+_ACEOF
+
+fi
+ ;;
+
sparc*-*-*)
echo "$as_me:$LINENO: checking assembler for .register" >&5
echo $ECHO_N "checking assembler for .register... $ECHO_C" >&6
@@ -10785,11 +10952,13 @@ fi
powerpc*-*-*)
case $target in
- *-*-aix) conftest_s=' .csect .textPR';;
- *) conftest_s=' .text';;
+ *-*-aix*) conftest_s=' .csect .text[PR]
+ mfcr 3,128';;
+ *-*-darwin*) conftest_s=' .text
+ mfcr r3,128';;
+ *) conftest_s=' .text
+ mfcr 3,128';;
esac
- conftest_s="$conftest_s
- mfcr 3,128"
echo "$as_me:$LINENO: checking assembler for mfcr field support" >&5
echo $ECHO_N "checking assembler for mfcr field support... $ECHO_C" >&6
@@ -10880,7 +11049,7 @@ case "$target" in
| xstormy16*-*-* | cris-*-* | xtensa-*-*)
insn="nop"
;;
- ia64*-*-*)
+ ia64*-*-* | s390*-*-*)
insn="nop 0"
;;
mmix-*-*)
@@ -11145,6 +11314,39 @@ fi
echo "$as_me:$LINENO: result: $gcc_cv_ld_pie" >&5
echo "${ECHO_T}$gcc_cv_ld_pie" >&6
+case "$target" in
+ *-*-linux*)
+ echo "$as_me:$LINENO: checking linker --as-needed support" >&5
+echo $ECHO_N "checking linker --as-needed support... $ECHO_C" >&6
+if test "${gcc_cv_ld_as_needed+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ gcc_cv_ld_as_needed=no
+ if test $in_tree_ld = yes ; then
+ if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 16 -o "$gcc_cv_gld_major_version" -gt 2 \
+ && test $in_tree_ld_is_elf = yes; then
+ gcc_cv_ld_as_needed=yes
+ fi
+ elif test x$gcc_cv_ld != x; then
+ # Check if linker supports --as-needed and --no-as-needed options
+ if $gcc_cv_ld --help 2>/dev/null | grep as-needed > /dev/null; then
+ gcc_cv_ld_as_needed=yes
+ fi
+ fi
+
+fi
+echo "$as_me:$LINENO: result: $gcc_cv_ld_as_needed" >&5
+echo "${ECHO_T}$gcc_cv_ld_as_needed" >&6
+ if test x"$gcc_cv_ld_as_needed" = xyes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_LD_AS_NEEDED 1
+_ACEOF
+
+ fi
+ ;;
+esac
+
if test x$with_sysroot = x && test x$host = x$target \
&& test "$prefix" != "/usr" && test "x$prefix" != "x$local_prefix" ; then
@@ -11449,7 +11651,7 @@ rm -f Make-hooks
touch Make-hooks
target_list="all.build all.cross start.encap rest.encap tags \
install-normal install-common install-man \
- uninstall srcextra \
+ uninstall info man srcextra srcman srcinfo \
mostlyclean clean distclean maintainer-clean \
stage1 stage2 stage3 stage4 stageprofile stagefeedback"
for t in $target_list
@@ -11611,6 +11813,13 @@ objdir=`${PWDCMD-pwd}`
+# If it doesn't already exist, create document directory
+echo "checking for the document directory." 1>&2
+if test -d doc ; then
+ true
+else
+ mkdir doc
+fi
# Echo link setup.
if test x${build} = x${host} ; then
@@ -12365,7 +12574,6 @@ s,@slibdir@,$slibdir,;t t
s,@objdir@,$objdir,;t t
s,@subdirs@,$subdirs,;t t
s,@srcdir@,$srcdir,;t t
-s,@docobjdir@,$docobjdir,;t t
s,@all_boot_languages@,$all_boot_languages,;t t
s,@all_compilers@,$all_compilers,;t t
s,@all_gtfiles@,$all_gtfiles,;t t
@@ -12386,6 +12594,7 @@ s,@quoted_cc_set_by_configure@,$quoted_cc_set_by_configure,;t t
s,@cpp_install_dir@,$cpp_install_dir,;t t
s,@xmake_file@,$xmake_file,;t t
s,@tmake_file@,$tmake_file,;t t
+s,@extra_gcc_objs@,$extra_gcc_objs,;t t
s,@extra_headers_list@,$extra_headers_list,;t t
s,@extra_objs@,$extra_objs,;t t
s,@extra_parts@,$extra_parts,;t t
@@ -12399,7 +12608,6 @@ s,@gcc_version@,$gcc_version,;t t
s,@gcc_version_full@,$gcc_version_full,;t t
s,@gcc_version_trigger@,$gcc_version_trigger,;t t
s,@host_exeext@,$host_exeext,;t t
-s,@host_extra_gcc_objs@,$host_extra_gcc_objs,;t t
s,@host_xm_file_list@,$host_xm_file_list,;t t
s,@host_xm_include_list@,$host_xm_include_list,;t t
s,@host_xm_defines@,$host_xm_defines,;t t
diff --git a/gcc/configure.ac b/gcc/configure.ac
index cf26ee29f74..4ace8fd10b2 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -171,10 +171,8 @@ AC_MSG_RESULT($generated_files_in_srcdir)
if test "$generated_files_in_srcdir" = "yes"; then
GENINSRC=''
- docobjdir='$(srcdir)/doc'
else
GENINSRC='#'
- docobjdir='$(objdir)/doc'
fi
AC_SUBST(GENINSRC)
@@ -251,6 +249,15 @@ fi
# Find C compiler
# ---------------
+# If a non-executable a.out is present (e.g. created by GNU as above even if
+# invoked with -v only), the IRIX 6 native ld just overwrites the existing
+# file, even when creating an executable, so an execution test fails.
+# Remove possible default executable files to avoid this.
+#
+# FIXME: This really belongs into AC_PROG_CC and can be removed once
+# Autoconf includes it.
+rm -f a.out a.exe b.out
+
# Find the native compiler
AC_PROG_CC
AC_PROG_CC_C_O
@@ -323,7 +330,7 @@ AC_SUBST(warn_cflags)
# Change the default to "no" on release branches.
AC_ARG_ENABLE(werror,
[ --enable-werror enable -Werror in bootstrap stage2 and later], [],
-[enable_werror=yes])
+[enable_werror=no])
if test x$enable_werror = xyes ; then
WERROR=-Werror
fi
@@ -335,7 +342,7 @@ AC_ARG_ENABLE(checking,
enable expensive run-time checks. With LIST,
enable only specific categories of checks.
Categories are: misc,tree,rtl,rtlflag,gc,gcac,fold;
- default is misc,tree,gc,rtlflag],
+ default is no checking],
[ac_checking=
ac_tree_checking=
ac_rtl_checking=
@@ -367,8 +374,8 @@ no) ;;
;;
esac
],
-# Enable some checks by default for development versions of GCC
-[ac_checking=1; ac_tree_checking=1; ac_gc_checking=1; ac_rtlflag_checking=1;])
+# By default, disable all checks for release versions of GCC.
+[ac_checking=; ac_tree_checking=; ac_gc_checking=; ac_rtlflag_checking=;])
nocommon_flag=""
if test x$ac_checking != x ; then
AC_DEFINE(ENABLE_CHECKING, 1,
@@ -1003,6 +1010,7 @@ target_gtfiles=
. ${srcdir}/config.gcc
extra_objs="${host_extra_objs} ${extra_objs}"
+extra_gcc_objs="${host_extra_gcc_objs} ${extra_gcc_objs}"
# Default the target-machine variables that were not explicitly set.
if test x"$tm_file" = x
@@ -1138,11 +1146,13 @@ fi
if test x$enable___cxa_atexit = xyes || \
test x$enable___cxa_atexit = x -a x$default_use_cxa_atexit = xyes; then
- AC_DEFINE(DEFAULT_USE_CXA_ATEXIT, 1,
- [Define if you want to use __cxa_atexit, rather than atexit, to
- register C++ destructors for local statics and global objects.
- This is essential for fully standards-compliant handling of
- destructors, but requires __cxa_atexit in libc.])
+ AC_CHECK_FUNC(__cxa_atexit,
+ [AC_DEFINE(DEFAULT_USE_CXA_ATEXIT, 1,
+ [Define if you want to use __cxa_atexit, rather than atexit, to
+ register C++ destructors for local statics and global objects.
+ This is essential for fully standards-compliant handling of
+ destructors, but requires __cxa_atexit in libc.])],
+ echo "__cxa_atexit can't be enabled on this target")
fi
# Look for a file containing extra machine modes.
@@ -1616,8 +1626,8 @@ if test "x$gcc_cv_as" = x; then
gcc_cv_as=`echo as | sed ${program_transform_name}`$host_exeext
fi
- test_dirs="$test_prefix/lib/gcc-lib/$target_noncanonical/$gcc_version \
- $test_prefix/lib/gcc-lib/$target_noncanonical \
+ test_dirs="$test_prefix/libexec/gcc/$target_noncanonical/$gcc_version \
+ $test_prefix/libexec/gcc/$target_noncanonical \
/usr/lib/gcc/$target_noncanonical/$gcc_version \
/usr/lib/gcc/$target_noncanonical \
$test_prefix/$target_noncanonical/bin/$target_noncanonical/$gcc_version \
@@ -1732,8 +1742,8 @@ if test "x$gcc_cv_ld" = x; then
gcc_cv_ld=`echo ld | sed ${program_transform_name}`$host_exeext
fi
- test_dirs="$test_prefix/lib/gcc-lib/$target_noncanonical/$gcc_version \
- $test_prefix/lib/gcc-lib/$target_noncanonical \
+ test_dirs="$test_prefix/libexec/gcc/$target_noncanonical/$gcc_version \
+ $test_prefix/libexec/gcc/$target_noncanonical \
/usr/lib/gcc/$target_noncanonical/$gcc_version \
/usr/lib/gcc/$target_noncanonical \
$test_prefix/$target_noncanonical/bin/$target_noncanonical/$gcc_version \
@@ -2060,6 +2070,7 @@ foo: .long 25
lda $4,foo($29) !tprel'
tls_first_major=2
tls_first_minor=13
+ tls_as_opt=--fatal-warnings
;;
i[34567]86-*-*)
conftest_s='
@@ -2079,6 +2090,7 @@ foo: .long 25
leal foo@NTPOFF(%ecx), %eax'
tls_first_major=2
tls_first_minor=14
+ tls_as_opt=--fatal-warnings
;;
x86_64-*-*)
conftest_s='
@@ -2093,6 +2105,7 @@ foo: .long 25
movq $foo@TPOFF, %rax'
tls_first_major=2
tls_first_minor=14
+ tls_as_opt=--fatal-warnings
;;
ia64-*-*)
conftest_s='
@@ -2110,6 +2123,7 @@ foo: data8 25
movl r24 = @tprel(foo#)'
tls_first_major=2
tls_first_minor=13
+ tls_as_opt=--fatal-warnings
;;
powerpc-*-*)
conftest_s='
@@ -2135,7 +2149,7 @@ x3: .space 4
addi 9,9,x2@tprel@l'
tls_first_major=2
tls_first_minor=14
- tls_as_opt=-a32
+ tls_as_opt="-a32 --fatal-warnings"
;;
powerpc64-*-*)
conftest_s='
@@ -2169,7 +2183,7 @@ x3: .space 8
nop'
tls_first_major=2
tls_first_minor=14
- tls_as_opt=-a64
+ tls_as_opt="-a64 --fatal-warnings"
;;
s390-*-*)
conftest_s='
@@ -2188,7 +2202,7 @@ foo: .long 25
bas %r14,0(%r1,%r13):tls_ldcall:foo'
tls_first_major=2
tls_first_minor=14
- tls_as_opt=-m31
+ tls_as_opt="-m31 --fatal-warnings"
;;
s390x-*-*)
conftest_s='
@@ -2206,7 +2220,7 @@ foo: .long 25
brasl %r14,__tls_get_offset@PLT:tls_ldcall:foo'
tls_first_major=2
tls_first_minor=14
- tls_as_opt="-m64 -Aesame"
+ tls_as_opt="-m64 -Aesame --fatal-warnings"
;;
sh-*-* | sh[34]-*-*)
conftest_s='
@@ -2220,9 +2234,44 @@ foo: .long 25
.long foo@TPOFF'
tls_first_major=2
tls_first_minor=13
+ tls_as_opt=--fatal-warnings
;;
sparc*-*-*)
- conftest_s='
+ case "$target" in
+ sparc*-sun-solaris2.*)
+ on_solaris=yes
+ ;;
+ *)
+ on_solaris=no
+ ;;
+ esac
+ if test x$on_solaris = xyes && test x$gas_flag = xno; then
+ conftest_s='
+ .section ".tdata",#alloc,#write,#tls
+foo: .long 25
+ .text
+ sethi %tgd_hi22(foo), %o0
+ add %o0, %tgd_lo10(foo), %o1
+ add %l7, %o1, %o0, %tgd_add(foo)
+ call __tls_get_addr, %tgd_call(foo)
+ sethi %tldm_hi22(foo), %l1
+ add %l1, %tldm_lo10(foo), %l2
+ add %l7, %l2, %o0, %tldm_add(foo)
+ call __tls_get_addr, %tldm_call(foo)
+ sethi %tldo_hix22(foo), %l3
+ xor %l3, %tldo_lox10(foo), %l4
+ add %o0, %l4, %l5, %tldo_add(foo)
+ sethi %tie_hi22(foo), %o3
+ add %o3, %tie_lo10(foo), %o3
+ ld [%l7 + %o3], %o2, %tie_ld(foo)
+ add %g7, %o2, %o4, %tie_add(foo)
+ sethi %tle_hix22(foo), %l1
+ xor %l1, %tle_lox10(foo), %o5
+ ld [%g7 + %o5], %o1'
+ tls_first_major=0
+ tls_first_minor=0
+ else
+ conftest_s='
.section ".tdata","awT",@progbits
foo: .long 25
.text
@@ -2246,7 +2295,8 @@ foo: .long 25
ld [%g7 + %o5], %o1'
tls_first_major=2
tls_first_minor=14
- tls_as_opt=-32
+ tls_as_opt="-32 --fatal-warnings"
+ fi
;;
changequote([,])dnl
esac
@@ -2254,8 +2304,7 @@ if test -z "$tls_first_major"; then
: # If we don't have a check, assume no support.
else
gcc_GAS_CHECK_FEATURE(thread-local storage support, gcc_cv_as_tls,
- [$tls_first_major,$tls_first_minor,0], [$tls_as_opt --fatal-warnings],
- [$conftest_s],,
+ [$tls_first_major,$tls_first_minor,0], [$tls_as_opt], [$conftest_s],,
[AC_DEFINE(HAVE_AS_TLS, 1,
[Define if your assembler supports thread-local storage.])])
fi
@@ -2284,6 +2333,14 @@ case "$target" in
[Define if your assembler supports explicit relocations.])])
;;
+ cris-*-*)
+ gcc_GAS_CHECK_FEATURE([-no-mul-bug-abort option],
+ gcc_cv_as_cris_no_mul_bug,[2,15,91],
+ [-no-mul-bug-abort], [.text],,
+ [AC_DEFINE(HAVE_AS_NO_MUL_BUG_ABORT_OPTION, 1,
+ [Define if your assembler supports the -no-mul-bug-abort option.])])
+ ;;
+
sparc*-*-*)
gcc_GAS_CHECK_FEATURE([.register], gcc_cv_as_sparc_register_op,,,
[.register %g2, #scratch],,
@@ -2399,11 +2456,13 @@ changequote([,])dnl
powerpc*-*-*)
case $target in
- *-*-aix) conftest_s=' .csect .text[PR]';;
- *) conftest_s=' .text';;
+ *-*-aix*) conftest_s=' .csect .text[[PR]]
+ mfcr 3,128';;
+ *-*-darwin*) conftest_s=' .text
+ mfcr r3,128';;
+ *) conftest_s=' .text
+ mfcr 3,128';;
esac
- conftest_s="$conftest_s
- mfcr 3,128"
gcc_GAS_CHECK_FEATURE([mfcr field support],
gcc_cv_as_powerpc_mfcrf, [2,14,0],,
@@ -2435,7 +2494,7 @@ case "$target" in
| xstormy16*-*-* | cris-*-* | xtensa-*-*)
insn="nop"
;;
- ia64*-*-*)
+ ia64*-*-* | s390*-*-*)
insn="nop 0"
;;
mmix-*-*)
@@ -2568,6 +2627,30 @@ if test x"$gcc_cv_ld_pie" = xyes; then
fi
AC_MSG_RESULT($gcc_cv_ld_pie)
+case "$target" in
+ *-*-linux*)
+ AC_CACHE_CHECK(linker --as-needed support,
+ gcc_cv_ld_as_needed,
+ [gcc_cv_ld_as_needed=no
+ if test $in_tree_ld = yes ; then
+ if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 16 -o "$gcc_cv_gld_major_version" -gt 2 \
+ && test $in_tree_ld_is_elf = yes; then
+ gcc_cv_ld_as_needed=yes
+ fi
+ elif test x$gcc_cv_ld != x; then
+ # Check if linker supports --as-needed and --no-as-needed options
+ if $gcc_cv_ld --help 2>/dev/null | grep as-needed > /dev/null; then
+ gcc_cv_ld_as_needed=yes
+ fi
+ fi
+ ])
+ if test x"$gcc_cv_ld_as_needed" = xyes; then
+ AC_DEFINE(HAVE_LD_AS_NEEDED, 1,
+ [Define if your linker supports --as-needed and --no-as-needed options.])
+ fi
+ ;;
+esac
+
if test x$with_sysroot = x && test x$host = x$target \
&& test "$prefix" != "/usr" && test "x$prefix" != "x$local_prefix" ; then
AC_DEFINE_UNQUOTED(PREFIX_INCLUDE_DIR, "$prefix/include",
@@ -2858,7 +2941,7 @@ rm -f Make-hooks
touch Make-hooks
target_list="all.build all.cross start.encap rest.encap tags \
install-normal install-common install-man \
- uninstall srcextra \
+ uninstall info man srcextra srcman srcinfo \
mostlyclean clean distclean maintainer-clean \
stage1 stage2 stage3 stage4 stageprofile stagefeedback"
for t in $target_list
@@ -2951,7 +3034,6 @@ AC_SUBST(objdir)
# Substitute configuration variables
AC_SUBST(subdirs)
AC_SUBST(srcdir)
-AC_SUBST(docobjdir)
AC_SUBST(all_boot_languages)
AC_SUBST(all_compilers)
AC_SUBST(all_gtfiles)
@@ -2972,6 +3054,7 @@ AC_SUBST(quoted_cc_set_by_configure)
AC_SUBST(cpp_install_dir)
AC_SUBST(xmake_file)
AC_SUBST(tmake_file)
+AC_SUBST(extra_gcc_objs)
AC_SUBST(extra_headers_list)
AC_SUBST(extra_objs)
AC_SUBST(extra_parts)
@@ -2985,7 +3068,6 @@ AC_SUBST(gcc_version)
AC_SUBST(gcc_version_full)
AC_SUBST(gcc_version_trigger)
AC_SUBST(host_exeext)
-AC_SUBST(host_extra_gcc_objs)
AC_SUBST(host_xm_file_list)
AC_SUBST(host_xm_include_list)
AC_SUBST(host_xm_defines)
@@ -3018,6 +3100,14 @@ AC_SUBST(target_cpu_default)
AC_SUBST_FILE(language_hooks)
+# If it doesn't already exist, create document directory
+echo "checking for the document directory." 1>&2
+if test -d doc ; then
+ true
+else
+ mkdir doc
+fi
+
# Echo link setup.
if test x${build} = x${host} ; then
if test x${host} = x${target} ; then
diff --git a/gcc/coverage.c b/gcc/coverage.c
index f14f0f666fe..395c1e4de55 100644
--- a/gcc/coverage.c
+++ b/gcc/coverage.c
@@ -109,7 +109,7 @@ static int htab_counts_entry_eq (const void *, const void *);
static void htab_counts_entry_del (void *);
static void read_counts_file (void);
static unsigned compute_checksum (void);
-static unsigned checksum_string (unsigned, const char *);
+static unsigned coverage_checksum_string (unsigned, const char *);
static tree build_fn_info_type (unsigned);
static tree build_fn_info_value (const struct function_list *, tree);
static tree build_ctr_info_type (void);
@@ -397,6 +397,7 @@ coverage_counter_ref (unsigned counter, unsigned no)
ref = plus_constant (ctr_labels[counter], gcov_size / BITS_PER_UNIT * no);
ref = gen_rtx_MEM (mode, ref);
set_mem_alias_set (ref, new_alias_set ());
+ MEM_NOTRAP_P (ref) = 1;
return ref;
}
@@ -405,23 +406,51 @@ coverage_counter_ref (unsigned counter, unsigned no)
checksum. */
static unsigned
-checksum_string (unsigned chksum, const char *string)
+coverage_checksum_string (unsigned chksum, const char *string)
{
- do
+ int i;
+ char *dup = NULL;
+
+ /* Look for everything that looks if it were produced by
+ get_file_function_name_long and zero out the second part
+ that may result from flag_random_seed. This is not critical
+ as the checksums are used only for sanity checking. */
+ for (i = 0; string[i]; i++)
{
- unsigned value = *string << 24;
- unsigned ix;
-
- for (ix = 8; ix--; value <<= 1)
- {
- unsigned feedback;
-
- feedback = (value ^ chksum) & 0x80000000 ? 0x04c11db7 : 0;
- chksum <<= 1;
- chksum ^= feedback;
- }
+ if (!strncmp (string + i, "_GLOBAL__", 9))
+ for (i = i + 9; string[i]; i++)
+ if (string[i]=='_')
+ {
+ int y;
+ unsigned seed;
+
+ for (y = 1; y < 9; y++)
+ if (!(string[i + y] >= '0' && string[i + y] <= '9')
+ && !(string[i + y] >= 'A' && string[i + y] <= 'F'))
+ break;
+ if (y != 9 || string[i + 9] != '_')
+ continue;
+ for (y = 10; y < 18; y++)
+ if (!(string[i + y] >= '0' && string[i + y] <= '9')
+ && !(string[i + y] >= 'A' && string[i + y] <= 'F'))
+ break;
+ if (y != 18)
+ continue;
+ if (!sscanf (string + i + 10, "%X", &seed))
+ abort ();
+ if (seed != crc32_string (0, flag_random_seed))
+ continue;
+ string = dup = xstrdup (string);
+ for (y = 10; y < 18; y++)
+ dup[i + y] = '0';
+ break;
+ }
+ break;
}
- while (*string++);
+
+ chksum = crc32_string (chksum, string);
+ if (dup)
+ free (dup);
return chksum;
}
@@ -433,8 +462,9 @@ compute_checksum (void)
{
unsigned chksum = DECL_SOURCE_LINE (current_function_decl);
- chksum = checksum_string (chksum, DECL_SOURCE_FILE (current_function_decl));
- chksum = checksum_string
+ chksum = coverage_checksum_string (chksum,
+ DECL_SOURCE_FILE (current_function_decl));
+ chksum = coverage_checksum_string
(chksum, IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (current_function_decl)));
return chksum;
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index fb2b43dd98a..3b965a7e99e 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,806 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-04-08 Danny Smith <dannysmith@users.sourceforge.net>
+
+ PR c++/14808
+ * method.c (make_alias_for_thunk): Just return function decl
+ for one_only functions if __CYGWIN__ or __MINGW32__
+ (use_thunk): Don't put function and thunk in same one_only
+ section if __CYGWIN__ or __MINGW32__.
+
+2004-04-08 Jakub Jelinek <jakub@redhat.com>
+
+ * decl2.c (mark_used): Don't segfault if cfun != NULL but
+ current_function_decl == NULL.
+
+2004-04-01 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14803
+ * typeck.c (get_delta_difference): Call fold before returning the
+ value.
+
+2004-04-01 Richard Henderson <rth@redhat.com>
+
+ PR c++/14804
+ * decl.c (cp_finish_decl): Preserve TREE_READONLY more often.
+ * typeck2.c (split_nonconstant_init): Clear TREE_READONLY.
+
+2004-04-01 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14810
+ * name-lookup.c (maybe_push_cleanup_level): Robustify.
+
+2004-03-30 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14724
+ * decl.c (start_decl_1): Do not decide whether or not to create a
+ new cleanup level until after the type has been completed.
+
+ PR c++/14763
+ * pt.c (tsubst_default_argument): Clear current_function_decl.
+
+2004-03-28 Jan Hubicka <jh@suse.cz>
+
+ PR C++/14639
+ * method.c (use_think): Do not mark thunk as referenced.
+
+2004-03-21 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14616
+ * decl.c (cp_finish_decl): Compute the size of arrays declared in
+ templates, if their type is non-dependent.
+
+2004-03-19 Mark Mitchell <mark@codesourcery.com>
+
+ * call.c (build_op_delete_call): Do not forget the placement
+ arguments when iterating through mutiple delete operators.
+
+ * cp-tree.h (svaed_scope): Remove last_parms.
+ (NEW_DELETE_OPNAME_P): New macro.
+ (last_function_parms): Remove.
+ (do_friend): Adjust prototype.
+ * decl.c (grokparms): Return the PARM_DECLs directly, rather than
+ using last_function_parms.
+ (grokfndecl): Take the PARM_DECLs as an argument, rather than
+ using last_function_parms.
+ (grokdeclarator): Adjust accordingly. Do not form METHOD_TYPEs
+ for class-specific operator new and operator delete.
+ (grok_op_properties): Do not look for allocation functions with
+ METHOD_TYPEs.
+ (start_function): Use DECL_ARGUMENTS instead of
+ last_function_parms.
+ * decl.h (last_function_parms): Do not declare.
+ * decl2.c (grokclassfn): Do not use last_function_parms.
+ * friend.c (do_friend): Remove parmdecls parameter.
+ * name-lookup.c (push_to_top_level): Do not save last_function_parms.
+ (pop_from_top_level): Do not restore it.
+ * pt.c (check_explicit_specialization): Do not adjust
+ last_function_parms.
+
+ * name-lookup.c (do_local_using_decl): Create a local binding for
+ types brought in via using declarations.
+
+ * name-lookup.c (lookup_arg_dependent): Handle block-scope
+ function declarations correctly.
+
+ * semantics.c (finish_id_expression): Correct handling of
+ conversion operators to dependent types.
+
+ * typeck.c (lookup_destructor): Allow the use of destructors from
+ base classes.
+
+2004-03-19 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14545
+ * parser.c (cp_parser_functional_cast): A cast to anything
+ but integral or enumaration type is not an integral constant
+ expression.
+ * pt.c (value_dependent_expression_p): Handle cast expressions
+ without operands (such as "int()").
+
+2004-03-18 Mark Mitchell <mark@codesourcery.com>
+
+ * semantics.c (finish_pseudo_destructor_expr): Allow differing
+ cv-qualification between the type named by the
+ pseudo-destructor-name and the object-type.
+
+ * search.c (accessible_base_p): Handle non-proper bases.
+
+ * name-lookup.c (do_nonmember_using_decl): If a using declaration
+ refers to a single overloaded function, set the type of the
+ function.
+ * tree.c (lvalue_type): Simplify.
+ * typeck.c (type_unknown_p): Do not assume all OVERLOADs have an
+ unknown type.
+ (build_unary_op): Handle OVERLOADs with known types.
+
+ * decl.c (duplicate_decls): Do not destroy DECL_ARGUMENTS for
+ function templates.
+
+ * parser.c (cp_parser_postfix_expression): Handle the use of
+ "typename" in non-dependent contexts. Convert appropriately when
+ when using a qualified name after "->" or ".".
+
+ * call.c (conditional_conversion): Honor the requirement that some
+ conversions refer to the original object.
+
+ * call.c (build_conditional_expr): Do not call force_rvalue for
+ operands of void_type when the conditional expression itself has
+ void type.
+ * name-lookup.c (pushdecl): Don't consider a declaration of a
+ function named "main" to be an overload of a type named "main".
+ * parser.c (cp_parser_template_name): Perform name lookup when the
+ template name is proceeded by "template" if the qualifying scope
+ is non-dependent.
+ * typeck.c (composite_pointer_type_r): Correctly handle
+ pointer-to-member types.
+ (build_const_cast): Likewise.
+
+2004-03-16 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14586
+ * cp-tree.h (build_new_op): Change prototype.
+ (build_x_binary_op): Likewise.
+ * call.c (build_new_op): Add overloaded_p parameter.
+ * decl2.c (grok_array_decl): Adjust call to build_new_op.
+ * parser.c (cp_parser_binary_expression): Note that uses of
+ overloaded operators prevents an expression from being considered
+ an integral constant.
+ * pt.c (tsubst_copy_and_build): Adjust calls to build_new_op and/or
+ build_x_binary_op.
+ * semantics.c (finish_call_expr): Likewise.
+ * typeck.c (rationalize_conditional_expr): Likewise.
+ (build_x_indirect_ref): Likewise.
+ (build_x_binary_op): Likewise.
+ (build_x_unary_op): Likewise.
+ (build_x_compound_expr): Likewise.
+ (build_modify_expr): Likewise.
+ * typeck2.c (build_x_arrow): Likewise.
+
+2004-03-13 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14550
+ * parser.c (cp_parser_non_integral_constant_expression): Encode
+ more of the idiom that surrounded calls to this function within
+ the function itself
+ (cp_parser_primary_expression): Adjust accordingly.
+ (cp_parser_postfix_expression): Likewise.
+ (cp_parser_unary_expression): Likewise.
+ (cp_parser_cast_expression): Likewise.
+ (cp_parser_assignment_expression): Likewise.
+ (cp_parser_expression): Likewise.
+ (cp_parser_new_expression): Note that new-expressions are not
+ allowed in integral constant expressions.
+ (cp_parser_delete_expression): Likewise.
+
+2004-03-11 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14476
+ * decl.c (xref_tag): Do not create dummy ENUMERAL_TYPEs.
+
+2004-03-10 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14510
+ * decl.c (xref_tag): Disregard non-type declarations when
+ looking up a tagged type.
+
+2004-03-10 Jason Merrill <jason@redhat.com>
+
+ PR c++/14452
+ * tree.c (stabilize_init): Return whether or not it worked.
+ * init.c (build_new_1): If not, use a sentry.
+ * cp-tree.h: Adjust prototype.
+
+2004-03-09 Nathan Sidwell <nathan@garibaldi.home>
+
+ PR c++/14397
+ * call.c (convert_like_real): Build a const qualified temporary,
+ when testing ctor access.
+
+2004-03-09 Mark Mitchell <mark@codesourcery.com>
+
+ * call.c (initialize_reference): Fix typo.
+
+2004-03-09 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14409
+ * pt.c (determine_specialization): For member templates, match also
+ constness.
+
+ PR c++/14448
+ * parser.c (cp_parser_initializer_clause): Fold initializer if it is
+ non-dependent.
+ * pt.c (tsubst_copy_and_build): Handle NOP_EXPRs.
+
+2004-03-09 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14230
+ * call.c (initialize_reference): Handle initializers that are
+ class-member access expressions applies to rvalues.
+
+ PR c++/14432
+ * name-lookup.c (supplement_binding): Ignore functions that are
+ marked DECL_ANTICIPATED.
+
+2004-03-08 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14401
+ * class.c (check_field_decls): Complain about non-static data
+ members of reference type in unions. Propagate
+ CLASSTYPE_REF_FIELDS_NEED_INIT and
+ CLASSTYPE_READONLY_FIELDS_NEED_INIT from the types of non-static
+ data members.
+ * init.c (perform_member_init): Complain about mbmers with const
+ type that are not explicitly initialized.
+
+2004-03-08 Jason Merrill <jason@redhat.com>
+
+ PR c++/13170
+ * decl.c (xref_tag): Remove attribute handling.
+ * cp-tree.h: Adjust prototype.
+ * decl.c, parser.c, rtti.c: Adjust callers.
+ * parser.c (cp_parser_class_head): Pass back attributes in the
+ class head.
+ (cp_parser_class_specifier): Adjust.
+
+2004-03-08 Matt Austern <austern@apple.com>
+
+ PR debug/14079
+ * name-lookup.c (add_decl_to_level): Add extern variables, as well
+ as static, to static_decls array.
+
+2004-03-01 Jason Merrill <jason@redhat.com>
+
+ PR c++/13944
+ * except.c (do_free_exception): Remove #if 0 wrapper.
+ (build_throw): Use it if we elide a copy into the
+ exception object.
+
+ * tree.c (stabilize_call): Fix thinko.
+
+ * init.c (build_new_1): Preevaluate initializer. Simplify EH code.
+ (build_init): Call a constructor rather than call build_aggr_init
+ for classes.
+ * except.c (stabilize_throw_expr): Remove.
+ (build_throw): Use stabilize_init instead of stabilize_throw_expr.
+ * tree.c (stabilize_call, stabilize_init): New fns.
+ * call.c (build_over_call): A constructor no longer returns the
+ address of the object.
+
+2004-03-01 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14324
+ * lex.c (retrofit_lang_decl): Treat entities with no linkage as
+ having C++ linkage for name-mangling purposes.
+
+ PR c++/14260
+ * parser.c (cp_parser_direct_declarator): Recognize constructor
+ declarators that use a template-id to name the class being
+ constructed.
+
+ PR c++/14337
+ * pt.c (tsubst_qualified_id): Handle dependent qualifying scopes.
+ (tsubst_expr): Do not call tsubst_copy, even when
+ processing_template_decl.
+
+2004-03-01 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14369
+ * pt.c (build_non_dependent_expr): Do not create a
+ NON_DEPENDENT_EXPR for a THROW_EXPR.
+
+ PR c++/14360
+ * parser.c (cp_parser_postfix_expression): Do not perform Koenig
+ lookup if ordinary name-lookup finds a non-function.
+ * pt.c (tsubst_copy_and_build): Likewise.
+
+ PR c++/14361
+ * parser.c (cp_parser_late_parsing_default_args): Check that there
+ are no extra tokens after the end of the default-argument
+ expression.
+
+ PR c++/14359
+ Backport 2004-02-12 Mark Mitchell <mark@codesourcery.com>
+ * decl.c (redeclaration_error_message): Correct handling of
+ templates.
+ * pt.c (tsubst_friend_declaration): Adjust code to determine
+ whether or not a friend template is a definition.
+ (tsubst_decl): Clear DECL_INITIAL for new FUNCTION_DECLs.
+
+2004-03-01 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ PR c++/14369
+ * error.c (dump_expr): Handle THROW_EXPR.
+
+2004-02-29 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14138
+ * name-lookup.h (push_scope): Change prototype.
+ * name-lookup.c (push_scope): Do not reenter the current class
+ scope.
+ * decl.c (grokfndecl): Check return code from push_scope before
+ calling pop_scope.
+ * decl2.c (check_classfn): Likewise.
+ * parser.c (cp_parser_conversion_function_id): Likewise.
+ (cp_parser_init_declarator): Likewise.
+ (cp_parser_direct_declarator): Likewise.
+ (cp_parser_class_specifier): Likewise.
+ (cp_parser_class_head): Likewise.
+ (cp_parser_lookup_name): Likewise.
+ (cp_parser_constructor_declarator_p): Likewise.
+ * pt.c (instantiate_class_template): Likewise.
+ (resolve_typename_type): Likewise.
+
+2004-02-27 Mark Mitchell <mark@codesourcery.com>
+
+ PR debug/12103
+ * class.c (update_vtable_entry_for_fn): Do not go through
+ covariance machinery if the type returned by an overrider is the
+ same as the original.
+
+2004-02-27 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14284
+ * pt.c (dependent_type_p_r): A template template parameter is a
+ dependent type.
+
+2004-02-26 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14278
+ * parser.c (cp_parser_parameter_declaration_list): Commit
+ to fewer tentative parses.
+
+2004-02-26 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14246
+ * mangle.c (write_template_arg_literal): Don't rely on identity for
+ boolean constants.
+
+2004-02-23 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14250
+ * cvt.c (build_expr_type_conversion): Type must be complete before
+ looking up for conversions.
+
+2004-02-20 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14199
+ * pt.c (tsubst_copy): Call mark_used for a PARM_DECL.
+
+ PR c++/14173
+ * semantics.c (begin_class_definition): Set TYPE_PACKED correctly
+ for all type variants.
+
+2004-02-19 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14186
+ * name-lookup.c (push_class_level_binding): Do not complain about
+ adding a binding for a member whose name is the same as the
+ enclosing class if the member is located in a base class of the
+ current class.
+
+2004-02-19 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14181
+ * parser.c (cp_parser_new_expression): Parse an ill-formed
+ direct-new-declarator after a parenthesized type-id to emit good
+ diagnostic.
+
+2004-02-17 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/11326
+ * cp-tree.h (abi_version_at_least): Remove.
+ * mangle.c: Include flags.h.
+
+2004-02-15 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13971
+ * call.c (build_conditional_expr): Handle conversions between
+ class types which result in differently cv-qualified type
+ variants.
+
+ PR c++/14086
+ * class.c (delete_duplicate_fields_1): Remove.
+ (delete_duplicate_fields): Likewise.
+ (finish_struct_anon): Remove check for members with the same name
+ as their enclosing class.
+ (check_field_decls): Do not call duplicate_fields.
+ * decl.c (grokdeclarator): Remove check for static data members
+ with the same name as their enclosing class.
+ * name-lookup.c (push_class_level_binding): Check for members with
+ the same name as their enclosing class.
+
+2004-02-15 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ PR c++/14085
+ * error.c (dump_decl): Handle TEMPLATE_TYPE_PARM.
+
+2004-02-14 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+
+ PR c++/13635
+ * pt.c (push_template_decl_real): Make sure DECL_TI_ARGS of DECL
+ has full set of arguments.
+
+2004-02-13 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14122
+ * cp-tree.h (delete_sanity): Change prototype.
+ * decl2.c (delete_sanity): Make doing_vec a bool, not an int.
+ Remove dead code. Adjust code to warn about deleting an array.
+ * typekc.c (decay_conversion): Use build_address and build_nop.
+
+ PR c++/14108
+ * search.c (accessible_p): Do not check access in thunks.
+
+2004-02-13 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/13927
+ * error.c (dump_decl) <ALIAS_DECL>: Dump as simple declarations.
+
+2004-02-13 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14083
+ * call.c (build_conditional_expr): Call force_rvalue on the
+ non-void operand in the case that one result is a throw-expression
+ and the other is not.
+
+2004-02-13 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR c++/9851
+ * parser.c (cp_parser_pseudo_destructor_name): Check for errors on
+ the type name and look ahead for ::~, and bail out early with a
+ better error message if the parse is going to fail.
+
+2004-02-10 Mark Mitchell <mark@codesourcery.com>
+
+ * typeck.c (lookup_destructor): Fix typo in error message.
+
+2004-02-07 Zack Weinberg <zack@codesourcery.com>
+
+ Bug 13856
+ * optimize.c (maybe_clone_body): Don't update DECL_ESTIMATED_INSNS.
+ * decl.c (duplicate_decls, start_function): Likewise.
+
+2004-02-07 Zack Weinberg <zack@codesourcery.com>
+
+ * name-lookup.c (pushdecl): Issue shadow warnings directly.
+ * parser.c (free_parser_stacks): Delete.
+
+2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * rtti.c, tree.c: Update copyright.
+
+2003-02-06 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14033
+ * decl.c (require_complete_types_for_parms): Do not insert
+ error_mark_node in the parameter list.
+
+2003-02-06 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14028
+ * parser.c (cp_parser_enclosed_template_argument_list): Emit straight
+ error when terminator can not be found.
+
+2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
+
+ Make-lang.in (po-generated): Delete.
+
+2004-02-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ PR middle-end/13750
+ Revert:
+ 2004-01-15 Geoffrey Keating <geoffk@apple.com>
+ PR pch/13361
+ * cp/lex.c (handle_pragma_interface): Duplicate string from tree.
+ (handle_pragma_implementation): Likewise.
+
+2004-02-05 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13714
+ * typeck.c (lookup_destructor): Tweak error message.
+
+2004-02-05 Paul Brook <paul@codesourcery.com>
+
+ Backport from mainline.
+
+ 2003-11-05 Mark Mitchell <mark@codesourcery.com>
+
+ * decl.c (cxx_push_function_context): Do not set
+ current_function_is_thunk.
+ * method.c (use_thunk): Set CALL_FROM_THUNK on the call to the
+ actual function.
+
+2004-02-04 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13932
+ * call.c (convert_like_real): Use "converting" rather than
+ "argument" as the descriptive keyword to
+ dubious_conversion_warnings.
+ * typeck.c (convert_for_assignment): Do not call
+ dubious_conversion_warnings.
+
+2004-02-04 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/13086
+ * init.c (build_delete): Emit a more informative error message in
+ case of an incomplete type, and on the correct source line.
+
+2004-02-04 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/9941
+ * rtti.c (tinfo_base_init): Use import_export_tinfo to decide the
+ linkage for the typeinfo name string.
+
+ PR c++/13969
+ * cp-tree.h (fold_non_dependent_expr): New function.
+ * parser.c (cp_parser_fold_non_dependent_expr): Remove.
+ (cp_parser_template_argument): Use fold_non_dependent_expr.
+ (cp_parser_direct_declarator): Likewise.
+ * pt.c (fold_non_dependent_expr): New function.
+ (convert_nontype_argument): Use it.
+ (tsubst_qualified_id): Simplify.
+ (tsubst_copy_and_build): Likewise.
+
+2003-02-04 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/13997
+ * pt.c (more_specialized_class): Increase processing_template_decl
+ while partial ordering.
+
+2004-02-03 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13950
+ * parser.c (cp_parser_class_name): Robustify.
+
+ PR c++/13970
+ * parser.c (cp_parser_cache_group): Do not consume the EOF token.
+
+2004-02-03 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13925
+ * decl.c (start_function): Do not call pushdecl for any
+ instantiation or specialization of a primary template.
+
+ PR c++/14002
+ * semantics.c (finish_id_expression): Do not return an
+ IDENTIFIER_NODE when lookup finds a PARM_DECL.
+
+ PR c++/13978
+ * pt.c (build_non_dependent_expr): Do not build
+ NON_DEPENDENT_EXPRs for FUNCTION_DECLs or TEMPLATE_DECLs.
+
+ PR c++/13968
+ * semantics.c (finish_id_expression): Do not return an
+ IDENTIFIER_NODE when lookup finds a VAR_DECL.
+
+ PR c++/13975
+ * parser.c (cp_parser_simple_declaration): When skipping to the
+ end of the statement swallow the terminating semicolon.
+
+2004-02-02 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ DR206
+ PR c++/13813
+ * decl.c (grokdeclarator): Check immediatly type completeness for
+ non-dependent types.
+
+2004-01-30 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13113
+ * init.c (build_offset_ref): Improve error recovery for invalid
+ uses of non-static member functions.
+
+ PR c++/13854
+ * cp-tree.h (cp_build_type_attribute_variant): New function.
+ * class.c (build_clone): Use cp_build_type_attribute_variant.
+ * decl.c (duplicate_decls): Likewise.
+ * pt.c (copy_default_args_to_explicit_spec): Likewise.
+ (tsubst_function_type): Likewise.
+ * tree.c (build_exception_variant): Check attributes before
+ concluding that two types are the same.
+ (cp_build_type-attribute_variant): New method.
+ * typeck.c (merge_types): Use cp_build_type_attribute_variant.
+
+ PR c++/13907
+ * call.c (convert_class_to_reference): Keep better track of
+ pedantically invalid user-defined conversions.
+
+2004-02-02 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/13957
+ * pt.c (tsubst_qualified_id): Improved error message when a type
+ is expected but not found.
+
+2004-01-30 Michael Matz <matz@suse.de>
+
+ * parser.c (cp_parser_labeled_statement): Accept case ranges.
+
+2004-01-28 Jan Hubicka <jh@suse.czi
+
+ * semantics.c (expand_body) Do emit_associated_thunks before
+ expansion.
+
+2004-01-30 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/13683
+ * call.c (convert_arg_to_ellipsis): Don't emit a warning if within
+ a sizeof expression.block
+
+2004-01-29 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ * parser.c (cp_parser_template_id): Parse tentatively `[:' after a
+ template name as it was `<::' (digraph typo).
+ (cp_parser_nth_token_starts_template_argument_list_p): New function.
+ (cp_parser_id_expression): Use it.
+ (cp_parser_nested_name_specifier_opt): Likewise.
+ (cp_parser_template_name): Likewise.
+ (cp_parser_class_name): Likewise.
+ (cp_lexer_get_preprocessor_token): Use c_lex_with_flags.
+
+2004-01-29 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13883
+ * mangle.c (write_encoding): Correct encoding of member template
+ constructors.
+
+2004-01-28 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13791
+ * typeck.c (merge_types): Do not merge attributes into
+ TYPENAME_TYPEs.
+
+2004-01-28 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13736
+ * parser.c (cp_parser_direct_declarator): Do not prevent
+ backtracking inside a parenthesized declarator.
+ (cp_parser_parameter_declaration): Fix typo in comment.
+
+2004-01-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cp-tree.h (language_function, lang_type_header): Use
+ BOOL_BITFIELD.
+ * name-lookup.h (cp_binding_level): Likewise.
+
+2004-01-26 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13663
+ * semantics.c (finish_for_expr): Check for unresolved overloaded
+ functions.
+
+2004-01-26 Mark Mitchell <mark@codesourcery.com>
+
+ * class.c (add_method): Just check processing_template_decl to
+ determine whether or not we are within a template.
+ * decl2.c (maybe_retrofit_in_chrg): Likewise.
+ * init.c (decl_constant_value): Check the type of the declaration,
+ not TREE_READONLY.
+ * name-lookup.c (maybe_push_to_top_level): Rename to ...
+ (push_to_top_level): ... this.
+ * name-lookup.h (maybe_push_to_top_level): Do not declare it.
+ * pt.c (push_template_decl_real): Reorder condition for speed.
+ (convert_template_argument): Use dependency-checking functions in
+ place of uses_template_parms.
+ (lookup_template_class): Avoid calling uses_template_parms more
+ than once.
+ (uses_template_parms): Reimplement, using dependency-checking
+ functions.
+ (instantiate_class_template): Use push_to_top_level, not
+ maybe_push_to_top_level.
+ (type_unification_real): Simplify.
+ (type_dependent_expression_p): Handle OFFSET_REFs and
+ TEMPLATE_DECLs.
+ (any_dependent_template_arguments_p): Handle multiple levels of
+ template argument.
+ * semantics.c (expand_or_defer_fn): Do not check
+ uses_template_parms for template instantiations.
+ * typeck.c (comptypes): Avoid calling cp_type_quals.
+
+2004-01-25 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13833
+ * call.c (build_over_call): Do not convert arguments when
+ processing a template.
+ * pt.c (build_non_dependent_expr): Do not build a
+ NON_DEPENDENT_EXPR for arithmetic constants.
+
+2004-01-25 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/13810
+ * parser.c (cp_parser_type_parameter): When cp_parser_id_expression
+ returns a TYPE_DECL. no further lookup is required.
+ * semantics.c (check_template_template_default_arg): A TYPE_DECL
+ is invalid. Rework to give better diagnostics.
+
+2004-01-25 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+
+ PR c++/13797
+ * pt.c (instantiate_class_template): Add an error_mark_node
+ check.
+ (tsubst_decl) <TEMPLATE_DECL case>: Likewise.
+
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * call.c: Update copyright.
+ * class.c: Likewise.
+ * decl2.c: Likewise.
+ * except.c: Likewise.
+ * expr.c: Likewise.
+ * init.c: Likewise.
+ * mangle.c: Likewise.
+ * optimize.c: Likewise.
+ * typeck.c: Likewise.
+ * typeck2.c: Likewise.
+
+2004-01-23 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c++/13701
+ * decl.c (finish_function): Move the call to
+ finish_fname_decls below the call to
+ finish_eh_spec_block.
+
+2004-01-21 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * parser.c (cp_parser_class_specifier): Prevent garbage collection.
+
+2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Make-lang.in: Replace $(docdir) with doc.
+ (c++.info, c++.srcinfo): Dummy entry.
+ (c++.man, c++.srcman): New rules.
+ (c++.install-man): Revamp rule.
+
+2004-01-19 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Make-lang.in (CXX_INSTALL_NAME, GXX_INSTALL_NAME,
+ CXX_TARGET_INSTALL_NAME, GXX_TARGET_INSTALL_NAME): Define via a
+ immediate $(shell) instead of deferred backquote.
+
+2004-01-19 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13651
+ * parser.c (cp_parser_postfix_expression): When encountering
+ incomplete type on left-hand side of "->" or ".", treat the entire
+ expression as erroneous.
+
+2004-01-19 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13592
+ * call.c (build_field_call): Remove.
+ (n_build_method_call): Likewise.
+ (build_method_call): Likewise.
+ (build_new_method_call): Do not call build_field_call.
+ * class.c (n_build_method_call): Remove.
+ (print_class_statistics): Do not print it.
+ * cp-tree.h (build_method_call): Remove declaration.
+ (finish_object_call_expr): Likewise.
+ (build_new_1): Do not use build_method_call.
+ * parser.c (cp_parser_postfix_expression): Use finish_call_expr
+ when the function appearing on the right-hand-side of "." or "->"
+ is not actually a function.
+ * pt.c (tsubst_copy_and_build): Likewise.
+ * semantics.c (finish_object_call_expr): Remove.
+
+2004-01-18 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13710
+ * pt.c (tsubst): Use finish_typeof.
+
+2004-01-18 Jason Merrill <jason@redhat.com>
+
+ PR c++/11725
+ * except.c (build_throw): In a template, set
+ current_function_returns_abnormally.
+
+2004-01-17 Fred Fish <fnf@intrinsity.com>
+
+ PR c++/11895
+ * decl.c (reshape_init): Handle VECTOR_TYPE like ARRAY_TYPE,
+ except don't call array_type_nelts() with a VECTOR_TYPE.
+
2004-01-16 Jan Hubicka <jh@suse.cz>
* mangle.c (write_mangled_name): Remove inline modifier.
@@ -62,7 +865,7 @@
2004-01-15 Giovanni Bajo <giovannibajo@gcc.gnu.org>
PR c++/8856
- * parser.c (cp_parser_template_name): Don't try to parse a
+ * parser.c (cp_parser_template_name): Don't try to parse a
conversion-function-id, as it cannot be a template-name.
(cp_parser_simple_type_specifier): Check for invalid template-ids
even after a built-in type.
@@ -173,7 +976,7 @@
DR 337
PR c++/9256
- * pt.c (tsubst): Substitution must fail if we are attempting to
+ * pt.c (tsubst): Substitution must fail if we are attempting to
create an array with element type that is an abstract class type.
* decl.c (cp_finish_decl): Strip pointers and array types recursively
before calling abstract_virtuals_error.
diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in
index 771496b59b2..9f7ebfb87cc 100644
--- a/gcc/cp/Make-lang.in
+++ b/gcc/cp/Make-lang.in
@@ -37,10 +37,10 @@
# - define the names for selecting the language in LANGUAGES.
# Actual names to use when installing a native compiler.
-CXX_INSTALL_NAME = `echo c++|sed '$(program_transform_name)'`
-GXX_INSTALL_NAME = `echo g++|sed '$(program_transform_name)'`
-CXX_TARGET_INSTALL_NAME = $(target_noncanonical)-`echo c++|sed '$(program_transform_name)'`
-GXX_TARGET_INSTALL_NAME = $(target_noncanonical)-`echo g++|sed '$(program_transform_name)'`
+CXX_INSTALL_NAME := $(shell echo c++|sed '$(program_transform_name)')
+GXX_INSTALL_NAME := $(shell echo g++|sed '$(program_transform_name)')
+CXX_TARGET_INSTALL_NAME := $(target_noncanonical)-$(shell echo c++|sed '$(program_transform_name)')
+GXX_TARGET_INSTALL_NAME := $(target_noncanonical)-$(shell echo g++|sed '$(program_transform_name)')
#
# Define the names for selecting c++ in LANGUAGES.
@@ -58,8 +58,6 @@ g++spec.o: $(srcdir)/cp/g++spec.c $(SYSTEM_H) coretypes.h $(TM_H) $(GCC_H) $(CON
$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(DRIVER_DEFINES) \
$(INCLUDES) $(srcdir)/cp/g++spec.c)
-po-generated:
-
# Create the compiler driver for g++.
GXX_OBJS = gcc.o g++spec.o intl.o prefix.o version.o
g++$(exeext): $(GXX_OBJS) $(EXTRA_GCC_OBJS) $(LIBDEPS)
@@ -108,6 +106,8 @@ c++.all.build: g++$(exeext)
c++.all.cross: g++-cross$(exeext)
c++.start.encap: g++$(exeext)
c++.rest.encap:
+c++.info:
+c++.srcinfo:
c++.srcextra:
c++.tags: force
@@ -115,7 +115,10 @@ c++.tags: force
--regex='/DEFTREECODE [(]\([A-Z_]+\)/\1/' cp-tree.def; \
etags --include TAGS.sub --include ../TAGS.sub
-generated-manpages:: $(docobjdir)/g++.1
+c++.man: doc/g++.1
+
+c++.srcman: doc/g++.1
+ -cp -p $^ $(srcdir)/doc
check-c++ : check-g++
lang_checks += check-g++
@@ -157,15 +160,15 @@ c++.install-common: installdirs
# We can't use links because not everyone supports them, and we can't use
# .so because Irix 6.5 doesn't support them. So just copy the manpage.
-$(docobjdir)/g++.1: $(docobjdir)/gcc.1
- cp $(docobjdir)/gcc.1 $(docobjdir)/g++.1
+doc/g++.1: doc/gcc.1
+ cp doc/gcc.1 doc/g++.1
-c++.install-man: installdirs $(docobjdir)/g++.1
- -if [ -f cc1plus$(exeext) ] ; then \
- rm -f $(DESTDIR)$(man1dir)/$(GXX_INSTALL_NAME)$(man1ext); \
- $(INSTALL_DATA) $(docobjdir)/g++.1 $(DESTDIR)$(man1dir)/$(GXX_INSTALL_NAME)$(man1ext); \
- chmod a-x $(DESTDIR)$(man1dir)/$(GXX_INSTALL_NAME)$(man1ext); \
- else true; fi
+c++.install-man: installdirs $(DESTDIR)$(man1dir)/$(GXX_INSTALL_NAME)$(man1ext)
+
+$(DESTDIR)$(man1dir)/$(GXX_INSTALL_NAME)$(man1ext): doc/g++.1
+ -rm -f $@
+ -$(INSTALL_DATA) $< $@
+ -chmod a-x $@
c++.uninstall:
-rm -rf $(DESTDIR)$(bindir)/$(CXX_INSTALL_NAME)$(exeext)
@@ -177,7 +180,7 @@ c++.uninstall:
# We just have to delete files specific to us.
c++.mostlyclean:
- -rm -f $(docobjdir)/g++.1
+ -rm -f doc/g++.1
-rm -f cp/*$(objext)
-rm -f cp/*$(coverageexts)
c++.clean:
diff --git a/gcc/cp/call.c b/gcc/cp/call.c
index 7864d088206..008c3355474 100644
--- a/gcc/cp/call.c
+++ b/gcc/cp/call.c
@@ -1,6 +1,6 @@
/* Functions related to invoking methods and overloaded functions.
Copyright (C) 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com) and
modified by Brendan Kehoe (brendan@cygnus.com).
@@ -40,7 +40,6 @@ Boston, MA 02111-1307, USA. */
#include "target.h"
#include "convert.h"
-static tree build_field_call (tree, tree, tree);
static struct z_candidate * tourney (struct z_candidate *);
static int equal_functions (tree, tree);
static int joust (struct z_candidate *, struct z_candidate *, bool);
@@ -128,42 +127,6 @@ build_vfield_ref (tree datum, tree type)
datum, TYPE_VFIELD (type));
}
-/* Build a call to a member of an object. I.e., one that overloads
- operator ()(), or is a pointer-to-function or pointer-to-method. */
-
-static tree
-build_field_call (tree instance_ptr, tree decl, tree parms)
-{
- tree instance;
-
- if (decl == error_mark_node || decl == NULL_TREE)
- return decl;
-
- if (TREE_CODE (decl) == FIELD_DECL || TREE_CODE (decl) == VAR_DECL)
- {
- /* If it's a field, try overloading operator (),
- or calling if the field is a pointer-to-function. */
- instance = build_indirect_ref (instance_ptr, NULL);
- instance = build_class_member_access_expr (instance, decl,
- /*access_path=*/NULL_TREE,
- /*preserve_reference=*/false);
-
- if (instance == error_mark_node)
- return error_mark_node;
-
- if (IS_AGGR_TYPE (TREE_TYPE (instance)))
- return build_new_op (CALL_EXPR, LOOKUP_NORMAL,
- instance, parms, NULL_TREE);
- else if (TREE_CODE (TREE_TYPE (instance)) == FUNCTION_TYPE
- || (TREE_CODE (TREE_TYPE (instance)) == POINTER_TYPE
- && (TREE_CODE (TREE_TYPE (TREE_TYPE (instance)))
- == FUNCTION_TYPE)))
- return build_function_call (instance, parms);
- }
-
- return NULL_TREE;
-}
-
/* Returns nonzero iff the destructor name specified in NAME
(a BIT_NOT_EXPR) matches BASETYPE. The operand of NAME can take many
forms... */
@@ -342,102 +305,6 @@ build_call (tree function, tree parms)
`operator()()' is defined for the type of that field, then we return
that result. */
-#ifdef GATHER_STATISTICS
-extern int n_build_method_call;
-#endif
-
-tree
-build_method_call (tree instance, tree name, tree parms,
- tree basetype_path, int flags)
-{
- tree fn;
- tree object_type;
- tree template_args = NULL_TREE;
- bool has_template_args = false;
-
-#ifdef GATHER_STATISTICS
- n_build_method_call++;
-#endif
-
- if (error_operand_p (instance)
- || name == error_mark_node
- || parms == error_mark_node)
- return error_mark_node;
-
- my_friendly_assert (!processing_template_decl, 20030707);
-
- if (TREE_CODE (TREE_TYPE (instance)) == REFERENCE_TYPE)
- instance = convert_from_reference (instance);
- object_type = TREE_TYPE (instance);
-
- if (TREE_CODE (name) == BIT_NOT_EXPR)
- {
- tree instance_ptr;
-
- if (parms)
- error ("destructors take no parameters");
-
- if (! check_dtor_name (object_type, name))
- error
- ("destructor name `~%T' does not match type `%T' of expression",
- TREE_OPERAND (name, 0), object_type);
-
- if (! TYPE_HAS_DESTRUCTOR (complete_type (object_type)))
- return convert_to_void (instance, /*implicit=*/NULL);
- instance = default_conversion (instance);
- instance_ptr = build_unary_op (ADDR_EXPR, instance, 0);
- return build_delete (build_pointer_type (object_type),
- instance_ptr, sfk_complete_destructor,
- LOOKUP_NORMAL|LOOKUP_DESTRUCTOR, 0);
- }
-
- if (!CLASS_TYPE_P (object_type))
- {
- if ((flags & LOOKUP_COMPLAIN)
- && TREE_TYPE (instance) != error_mark_node)
- error ("request for member `%D' in `%E', which is of non-aggregate type `%T'",
- name, instance, object_type);
- return error_mark_node;
- }
-
- if (TREE_CODE (name) == TEMPLATE_ID_EXPR)
- {
- template_args = TREE_OPERAND (name, 1);
- has_template_args = true;
- name = TREE_OPERAND (name, 0);
- }
- if (TREE_CODE (name) == OVERLOAD)
- name = DECL_NAME (get_first_fn (name));
- else if (DECL_P (name))
- name = DECL_NAME (name);
- if (has_template_args)
- fn = lookup_fnfields (object_type, name, /*protect=*/2);
- else
- fn = lookup_member (object_type, name, /*protect=*/2, /*want_type=*/false);
-
- if (fn && TREE_CODE (fn) == TREE_LIST)
- {
- error ("request for member `%D' is ambiguous", name);
- print_candidates (fn);
- return error_mark_node;
- }
-
- /* If the name could not be found, issue an error. */
- if (!fn)
- return unqualified_name_lookup_error (name);
-
- if (BASELINK_P (fn) && has_template_args)
- BASELINK_FUNCTIONS (fn)
- = build_nt (TEMPLATE_ID_EXPR,
- BASELINK_FUNCTIONS (fn),
- template_args);
- if (BASELINK_P (fn) && basetype_path)
- BASELINK_ACCESS_BINFO (fn) = basetype_path;
-
- return build_new_method_call (instance, fn, parms,
- /*conversion_path=*/NULL_TREE, flags);
-}
-
/* New overloading code. */
struct z_candidate GTY(()) {
@@ -961,15 +828,19 @@ convert_class_to_reference (tree t, tree s, tree expr)
LOOKUP_NORMAL);
if (cand)
- /* Build a standard conversion sequence indicating the
- binding from the reference type returned by the
- function to the desired REFERENCE_TYPE. */
- cand->second_conv
- = (direct_reference_binding
- (reference_type,
- build1 (IDENTITY_CONV,
- TREE_TYPE (TREE_TYPE (TREE_TYPE (cand->fn))),
- NULL_TREE)));
+ {
+ /* Build a standard conversion sequence indicating the
+ binding from the reference type returned by the
+ function to the desired REFERENCE_TYPE. */
+ cand->second_conv
+ = (direct_reference_binding
+ (reference_type,
+ build1 (IDENTITY_CONV,
+ TREE_TYPE (TREE_TYPE (TREE_TYPE (cand->fn))),
+ NULL_TREE)));
+ ICS_BAD_FLAG (cand->second_conv)
+ |= ICS_BAD_FLAG (TREE_VEC_ELT (cand->convs, 0));
+ }
}
conversions = TREE_CHAIN (conversions);
}
@@ -3030,10 +2901,7 @@ conditional_conversion (tree e1, tree e2)
same cv-qualification as, or a greater cv-qualification than, the
cv-qualification of T1. If the conversion is applied, E1 is
changed to an rvalue of type T2 that still refers to the original
- source class object (or the appropriate subobject thereof).
-
- FIXME we can't express an rvalue that refers to the original object;
- we have to create a new one. */
+ source class object (or the appropriate subobject thereof). */
if (CLASS_TYPE_P (t1) && CLASS_TYPE_P (t2)
&& ((good_base = DERIVED_FROM_P (t2, t1)) || DERIVED_FROM_P (t1, t2)))
{
@@ -3042,10 +2910,7 @@ conditional_conversion (tree e1, tree e2)
conv = build1 (IDENTITY_CONV, t1, e1);
if (!same_type_p (TYPE_MAIN_VARIANT (t1),
TYPE_MAIN_VARIANT (t2)))
- {
- conv = build_conv (BASE_CONV, t2, conv);
- NEED_TEMPORARY_P (conv) = 1;
- }
+ conv = build_conv (BASE_CONV, t2, conv);
else
conv = build_conv (RVALUE_CONV, t2, conv);
return conv;
@@ -3135,11 +3000,27 @@ build_conditional_expr (tree arg1, tree arg2, tree arg3)
type of the other and is an rvalue.
--Both the second and the third operands have type void; the
- result is of type void and is an rvalue. */
- if ((TREE_CODE (arg2) == THROW_EXPR)
- ^ (TREE_CODE (arg3) == THROW_EXPR))
- result_type = ((TREE_CODE (arg2) == THROW_EXPR)
- ? arg3_type : arg2_type);
+ result is of type void and is an rvalue.
+
+ We must avoid calling force_rvalue for expressions of type
+ "void" because it will complain that their value is being
+ used. */
+ if (TREE_CODE (arg2) == THROW_EXPR
+ && TREE_CODE (arg3) != THROW_EXPR)
+ {
+ if (!VOID_TYPE_P (arg3_type))
+ arg3 = force_rvalue (arg3);
+ arg3_type = TREE_TYPE (arg3);
+ result_type = arg3_type;
+ }
+ else if (TREE_CODE (arg2) != THROW_EXPR
+ && TREE_CODE (arg3) == THROW_EXPR)
+ {
+ if (!VOID_TYPE_P (arg2_type))
+ arg2 = force_rvalue (arg2);
+ arg2_type = TREE_TYPE (arg2);
+ result_type = arg2_type;
+ }
else if (VOID_TYPE_P (arg2_type) && VOID_TYPE_P (arg3_type))
result_type = void_type_node;
else
@@ -3184,23 +3065,37 @@ build_conditional_expr (tree arg1, tree arg2, tree arg3)
{
arg2 = convert_like (conv2, arg2);
arg2 = convert_from_reference (arg2);
- if (!same_type_p (TREE_TYPE (arg2), arg3_type)
- && CLASS_TYPE_P (arg3_type))
- /* The types need to match if we're converting to a class type.
- If not, we don't care about cv-qual mismatches, since
- non-class rvalues are not cv-qualified. */
- abort ();
arg2_type = TREE_TYPE (arg2);
}
else if (conv3 && !ICS_BAD_FLAG (conv3))
{
arg3 = convert_like (conv3, arg3);
arg3 = convert_from_reference (arg3);
- if (!same_type_p (TREE_TYPE (arg3), arg2_type)
- && CLASS_TYPE_P (arg2_type))
- abort ();
arg3_type = TREE_TYPE (arg3);
}
+
+ /* If, after the conversion, both operands have class type,
+ treat the cv-qualification of both operands as if it were the
+ union of the cv-qualification of the operands.
+
+ The standard is not clear about what to do in this
+ circumstance. For example, if the first operand has type
+ "const X" and the second operand has a user-defined
+ conversion to "volatile X", what is the type of the second
+ operand after this step? Making it be "const X" (matching
+ the first operand) seems wrong, as that discards the
+ qualification without actuall performing a copy. Leaving it
+ as "volatile X" seems wrong as that will result in the
+ conditional expression failing altogether, even though,
+ according to this step, the one operand could be converted to
+ the type of the other. */
+ if ((conv2 || conv3)
+ && CLASS_TYPE_P (arg2_type)
+ && TYPE_QUALS (arg2_type) != TYPE_QUALS (arg3_type))
+ arg2_type = arg3_type =
+ cp_build_qualified_type (arg2_type,
+ TYPE_QUALS (arg2_type)
+ | TYPE_QUALS (arg3_type));
}
/* [expr.cond]
@@ -3284,16 +3179,15 @@ build_conditional_expr (tree arg1, tree arg2, tree arg3)
We need to force the lvalue-to-rvalue conversion here for class types,
so we get TARGET_EXPRs; trying to deal with a COND_EXPR of class rvalues
that isn't wrapped with a TARGET_EXPR plays havoc with exception
- regions.
-
- We use ocp_convert rather than build_user_type_conversion because the
- latter returns NULL_TREE on failure, while the former gives an error. */
+ regions. */
arg2 = force_rvalue (arg2);
- arg2_type = TREE_TYPE (arg2);
+ if (!CLASS_TYPE_P (arg2_type))
+ arg2_type = TREE_TYPE (arg2);
arg3 = force_rvalue (arg3);
- arg3_type = TREE_TYPE (arg3);
+ if (!CLASS_TYPE_P (arg2_type))
+ arg3_type = TREE_TYPE (arg3);
if (arg2 == error_mark_node || arg3 == error_mark_node)
return error_mark_node;
@@ -3380,7 +3274,7 @@ build_conditional_expr (tree arg1, tree arg2, tree arg3)
/* Expand both sides into the same slot, hopefully the target of the
?: expression. We used to check for TARGET_EXPRs here, but now we
sometimes wrap them in NOP_EXPRs so the test would fail. */
- if (!lvalue_p && IS_AGGR_TYPE (TREE_TYPE (result)))
+ if (!lvalue_p && CLASS_TYPE_P (TREE_TYPE (result)))
result = get_target_expr (result);
/* If this expression is an rvalue, but might be mistaken for an
@@ -3477,7 +3371,8 @@ add_candidates (tree fns, tree args,
}
tree
-build_new_op (enum tree_code code, int flags, tree arg1, tree arg2, tree arg3)
+build_new_op (enum tree_code code, int flags, tree arg1, tree arg2, tree arg3,
+ bool *overloaded_p)
{
struct z_candidate *candidates = 0, *cand;
tree arglist, fnname;
@@ -3620,7 +3515,8 @@ build_new_op (enum tree_code code, int flags, tree arg1, tree arg2, tree arg3)
code = PREINCREMENT_EXPR;
else
code = PREDECREMENT_EXPR;
- return build_new_op (code, flags, arg1, NULL_TREE, NULL_TREE);
+ return build_new_op (code, flags, arg1, NULL_TREE, NULL_TREE,
+ overloaded_p);
/* The caller will deal with these. */
case ADDR_EXPR:
@@ -3652,6 +3548,9 @@ build_new_op (enum tree_code code, int flags, tree arg1, tree arg2, tree arg3)
if (TREE_CODE (cand->fn) == FUNCTION_DECL)
{
+ if (overloaded_p)
+ *overloaded_p = true;
+
if (warn_synth
&& fnname == ansi_assopname (NOP_EXPR)
&& DECL_ARTIFICIAL (cand->fn)
@@ -3871,15 +3770,15 @@ build_op_delete_call (enum tree_code code, tree addr, tree size,
/* On the first pass, check the rest of the arguments. */
if (pass == 0)
{
- while (argtypes && t)
+ tree a = argtypes;
+ while (a && t)
{
- if (!same_type_p (TREE_VALUE (argtypes),
- TREE_VALUE (t)))
+ if (!same_type_p (TREE_VALUE (a), TREE_VALUE (t)))
break;
- argtypes = TREE_CHAIN (argtypes);
+ a = TREE_CHAIN (a);
t = TREE_CHAIN (t);
}
- if (!argtypes && !t)
+ if (!a && !t)
break;
}
/* On the second pass, the second argument must be
@@ -4029,7 +3928,7 @@ convert_like_real (tree convs, tree expr, tree fn, int argnum, int inner,
if (issue_conversion_warnings)
expr = dubious_conversion_warnings
- (totype, expr, "argument", fn, argnum);
+ (totype, expr, "converting", fn, argnum);
switch (TREE_CODE (convs))
{
case USER_CONV:
@@ -4097,18 +3996,19 @@ convert_like_real (tree convs, tree expr, tree fn, int argnum, int inner,
case IDENTITY_CONV:
if (type_unknown_p (expr))
expr = instantiate_type (totype, expr, tf_error | tf_warning);
- /* Convert a non-array constant variable to its underlying value, unless we
- are about to bind it to a reference, in which case we need to
- leave it as an lvalue. */
+ /* Convert a non-array constant variable to its underlying
+ value, unless we are about to bind it to a reference, in
+ which case we need to leave it as an lvalue. */
if (inner >= 0
&& TREE_CODE (TREE_TYPE (expr)) != ARRAY_TYPE)
expr = decl_constant_value (expr);
if (CHECK_COPY_CONSTRUCTOR_P (convs))
/* Generate a temporary copy purely to generate the required
diagnostics. */
- build_temp (build_dummy_object (totype), totype,
- LOOKUP_NORMAL|LOOKUP_ONLYCONVERTING,
- &diagnostic_fn);
+ build_temp
+ (build_dummy_object
+ (build_qualified_type (totype, TYPE_QUAL_CONST)),
+ totype, LOOKUP_NORMAL|LOOKUP_ONLYCONVERTING, &diagnostic_fn);
return expr;
case AMBIG_CONV:
/* Call build_user_type_conversion again for the error. */
@@ -4260,14 +4160,18 @@ convert_arg_to_ellipsis (tree arg)
arg = require_complete_type (arg);
- if (arg != error_mark_node && ! pod_type_p (TREE_TYPE (arg)))
+ if (arg != error_mark_node
+ && !pod_type_p (TREE_TYPE (arg)))
{
/* Undefined behavior [expr.call] 5.2.2/7. We used to just warn
here and do a bitwise copy, but now cp_expr_size will abort if we
- try to do that. */
- warning ("cannot pass objects of non-POD type `%#T' through `...'; \
-call will abort at runtime",
- TREE_TYPE (arg));
+ try to do that.
+ If the call appears in the context of a sizeof expression,
+ there is no need to emit a warning, since the expression won't be
+ evaluated. We keep the builtin_trap just as a safety check. */
+ if (!skip_evaluation)
+ warning ("cannot pass objects of non-POD type `%#T' through `...'; "
+ "call will abort at runtime", TREE_TYPE (arg));
arg = call_builtin_trap (TREE_TYPE (arg));
}
@@ -4439,6 +4343,21 @@ build_over_call (struct z_candidate *cand, int flags)
int i = 0;
int is_method = 0;
+ /* In a template, there is no need to perform all of the work that
+ is normally done. We are only interested in the type of the call
+ expression, i.e., the return type of the function. Any semantic
+ errors will be deferred until the template is instantiated. */
+ if (processing_template_decl)
+ {
+ tree expr;
+ tree return_type;
+ return_type = TREE_TYPE (TREE_TYPE (fn));
+ expr = build (CALL_EXPR, return_type, fn, args);
+ if (!VOID_TYPE_P (return_type))
+ require_complete_type (return_type);
+ return convert_from_reference (expr);
+ }
+
/* Give any warnings we noticed during overload resolution. */
if (cand->warnings)
for (val = cand->warnings; val; val = TREE_CHAIN (val))
@@ -4639,16 +4558,11 @@ build_over_call (struct z_candidate *cand, int flags)
else if (TREE_CODE (arg) == TARGET_EXPR
|| TYPE_HAS_TRIVIAL_INIT_REF (DECL_CONTEXT (fn)))
{
- tree address;
tree to = stabilize_reference
(build_indirect_ref (TREE_VALUE (args), 0));
val = build (INIT_EXPR, DECL_CONTEXT (fn), to, arg);
- address = build_unary_op (ADDR_EXPR, val, 0);
- /* Avoid a warning about this expression, if the address is
- never used. */
- TREE_USED (address) = 1;
- return address;
+ return val;
}
}
else if (DECL_OVERLOADED_OPERATOR_P (fn) == NOP_EXPR
@@ -5058,9 +4972,6 @@ build_new_method_call (tree instance, tree fns, tree args,
if (!BASELINK_P (fns))
{
- call = build_field_call (instance_ptr, fns, args);
- if (call)
- goto finish;
error ("call to non-function `%D'", fns);
return error_mark_node;
}
@@ -5221,7 +5132,6 @@ build_new_method_call (tree instance, tree fns, tree args,
if (!is_dummy_object (instance_ptr) && TREE_SIDE_EFFECTS (instance))
call = build (COMPOUND_EXPR, TREE_TYPE (call), instance, call);
}
- finish:;
if (processing_template_decl && call != error_mark_node)
return build_min_non_dep
@@ -6273,6 +6183,16 @@ initialize_reference (tree type, tree expr, tree decl, tree *cleanup)
type = TREE_TYPE (expr);
var = make_temporary_var_for_ref_to_temp (decl, type);
layout_decl (var, 0);
+ /* If the rvalue is the result of a function call it will be
+ a TARGET_EXPR. If it is some other construct (such as a
+ member access expression where the underlying object is
+ itself the result of a function call), turn it into a
+ TARGET_EXPR here. It is important that EXPR be a
+ TARGET_EXPR below since otherwise the INIT_EXPR will
+ attempt to make a bitwise copy of EXPR to intialize
+ VAR. */
+ if (TREE_CODE (expr) != TARGET_EXPR)
+ expr = get_target_expr (expr);
/* Create the INIT_EXPR that will initialize the temporary
variable. */
init = build (INIT_EXPR, type, var, expr);
diff --git a/gcc/cp/class.c b/gcc/cp/class.c
index b376f99aa21..9b6243aa3d8 100644
--- a/gcc/cp/class.c
+++ b/gcc/cp/class.c
@@ -1,6 +1,6 @@
/* Functions related to building classes and their related objects.
Copyright (C) 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com)
This file is part of GCC.
@@ -114,8 +114,6 @@ static int build_primary_vtable (tree, tree);
static int build_secondary_vtable (tree);
static void finish_vtbls (tree);
static void modify_vtable_entry (tree, tree, tree, tree, tree *);
-static tree delete_duplicate_fields_1 (tree, tree);
-static void delete_duplicate_fields (tree);
static void finish_struct_bits (tree);
static int alter_access (tree, tree, tree);
static void handle_using_decl (tree, tree);
@@ -227,7 +225,6 @@ int n_vtable_searches = 0;
int n_vtable_elems = 0;
int n_convert_harshness = 0;
int n_compute_conversion_costs = 0;
-int n_build_method_call = 0;
int n_inner_fields_searched = 0;
#endif
@@ -867,7 +864,7 @@ add_method (tree type, tree method, int error_p)
}
}
- if (template_class_depth (type))
+ if (processing_template_decl)
/* TYPE is a template class. Don't issue any errors now; wait
until instantiation time to complain. */
;
@@ -958,106 +955,6 @@ add_method (tree type, tree method, int error_p)
/* Subroutines of finish_struct. */
-/* Look through the list of fields for this struct, deleting
- duplicates as we go. This must be recursive to handle
- anonymous unions.
-
- FIELD is the field which may not appear anywhere in FIELDS.
- FIELD_PTR, if non-null, is the starting point at which
- chained deletions may take place.
- The value returned is the first acceptable entry found
- in FIELDS.
-
- Note that anonymous fields which are not of UNION_TYPE are
- not duplicates, they are just anonymous fields. This happens
- when we have unnamed bitfields, for example. */
-
-static tree
-delete_duplicate_fields_1 (tree field, tree fields)
-{
- tree x;
- tree prev = 0;
- if (DECL_NAME (field) == 0)
- {
- if (! ANON_AGGR_TYPE_P (TREE_TYPE (field)))
- return fields;
-
- for (x = TYPE_FIELDS (TREE_TYPE (field)); x; x = TREE_CHAIN (x))
- fields = delete_duplicate_fields_1 (x, fields);
- return fields;
- }
- else
- {
- for (x = fields; x; prev = x, x = TREE_CHAIN (x))
- {
- if (DECL_NAME (x) == 0)
- {
- if (! ANON_AGGR_TYPE_P (TREE_TYPE (x)))
- continue;
- TYPE_FIELDS (TREE_TYPE (x))
- = delete_duplicate_fields_1 (field, TYPE_FIELDS (TREE_TYPE (x)));
- if (TYPE_FIELDS (TREE_TYPE (x)) == 0)
- {
- if (prev == 0)
- fields = TREE_CHAIN (fields);
- else
- TREE_CHAIN (prev) = TREE_CHAIN (x);
- }
- }
- else if (TREE_CODE (field) == USING_DECL)
- /* A using declaration is allowed to appear more than
- once. We'll prune these from the field list later, and
- handle_using_decl will complain about invalid multiple
- uses. */
- ;
- else if (DECL_NAME (field) == DECL_NAME (x))
- {
- if (TREE_CODE (field) == CONST_DECL
- && TREE_CODE (x) == CONST_DECL)
- cp_error_at ("duplicate enum value `%D'", x);
- else if (TREE_CODE (field) == CONST_DECL
- || TREE_CODE (x) == CONST_DECL)
- cp_error_at ("duplicate field `%D' (as enum and non-enum)",
- x);
- else if (DECL_DECLARES_TYPE_P (field)
- && DECL_DECLARES_TYPE_P (x))
- {
- if (same_type_p (TREE_TYPE (field), TREE_TYPE (x)))
- continue;
- cp_error_at ("duplicate nested type `%D'", x);
- }
- else if (DECL_DECLARES_TYPE_P (field)
- || DECL_DECLARES_TYPE_P (x))
- {
- /* Hide tag decls. */
- if ((TREE_CODE (field) == TYPE_DECL
- && DECL_ARTIFICIAL (field))
- || (TREE_CODE (x) == TYPE_DECL
- && DECL_ARTIFICIAL (x)))
- continue;
- cp_error_at ("duplicate field `%D' (as type and non-type)",
- x);
- }
- else
- cp_error_at ("duplicate member `%D'", x);
- if (prev == 0)
- fields = TREE_CHAIN (fields);
- else
- TREE_CHAIN (prev) = TREE_CHAIN (x);
- }
- }
- }
- return fields;
-}
-
-static void
-delete_duplicate_fields (tree fields)
-{
- tree x;
- for (x = fields; x && TREE_CHAIN (x); x = TREE_CHAIN (x))
- TREE_CHAIN (x) = delete_duplicate_fields_1 (x, TREE_CHAIN (x));
-}
-
/* Change the access of FDECL to ACCESS in T. Return 1 if change was
legit, otherwise return 0. */
@@ -2193,7 +2090,8 @@ update_vtable_entry_for_fn (tree t, tree binfo, tree fn, tree* virtuals,
TREE_VALUE (purpose_member
(BINFO_TYPE (virtual_offset),
CLASSTYPE_VBASECLASSES (TREE_TYPE (over_return))));
- else
+ else if (!same_type_p (TREE_TYPE (over_return),
+ TREE_TYPE (base_return)))
{
/* There was no existing virtual thunk (which takes
precedence). */
@@ -2581,10 +2479,6 @@ finish_struct_anon (tree t)
|| TYPE_ANONYMOUS_P (TREE_TYPE (elt))))
continue;
- if (constructor_name_p (DECL_NAME (elt), t))
- cp_pedwarn_at ("ISO C++ forbids member `%D' with same name as enclosing class",
- elt);
-
if (TREE_CODE (elt) != FIELD_DECL)
{
cp_pedwarn_at ("`%#D' invalid; an anonymous union can only have non-static data members",
@@ -2961,9 +2855,6 @@ check_field_decls (tree t, tree *access_decls,
int has_pointers;
int any_default_members;
- /* First, delete any duplicate fields. */
- delete_duplicate_fields (TYPE_FIELDS (t));
-
/* Assume there are no access declarations. */
*access_decls = NULL_TREE;
/* Assume this class has no pointer members. */
@@ -3032,9 +2923,30 @@ check_field_decls (tree t, tree *access_decls,
/* If we've gotten this far, it's a data member, possibly static,
or an enumerator. */
-
DECL_CONTEXT (x) = t;
+ /* When this goes into scope, it will be a non-local reference. */
+ DECL_NONLOCAL (x) = 1;
+
+ if (TREE_CODE (t) == UNION_TYPE)
+ {
+ /* [class.union]
+
+ If a union contains a static data member, or a member of
+ reference type, the program is ill-formed. */
+ if (TREE_CODE (x) == VAR_DECL)
+ {
+ cp_error_at ("`%D' may not be static because it is a member of a union", x);
+ continue;
+ }
+ if (TREE_CODE (type) == REFERENCE_TYPE)
+ {
+ cp_error_at ("`%D' may not have reference type `%T' because it is a member of a union",
+ x, type);
+ continue;
+ }
+ }
+
/* ``A local class cannot have static data members.'' ARM 9.4 */
if (current_function_decl && TREE_STATIC (x))
cp_error_at ("field `%D' in local class cannot be static", x);
@@ -3058,21 +2970,9 @@ check_field_decls (tree t, tree *access_decls,
if (type == error_mark_node)
continue;
- /* When this goes into scope, it will be a non-local reference. */
- DECL_NONLOCAL (x) = 1;
-
- if (TREE_CODE (x) == CONST_DECL)
+ if (TREE_CODE (x) == CONST_DECL || TREE_CODE (x) == VAR_DECL)
continue;
- if (TREE_CODE (x) == VAR_DECL)
- {
- if (TREE_CODE (t) == UNION_TYPE)
- /* Unions cannot have static members. */
- cp_error_at ("field `%D' declared static in union", x);
-
- continue;
- }
-
/* Now it can only be a FIELD_DECL. */
if (TREE_PRIVATE (x) || TREE_PROTECTED (x))
@@ -3103,6 +3003,14 @@ check_field_decls (tree t, tree *access_decls,
if (TYPE_PTR_P (type))
has_pointers = 1;
+ if (CLASS_TYPE_P (type))
+ {
+ if (CLASSTYPE_REF_FIELDS_NEED_INIT (type))
+ SET_CLASSTYPE_REF_FIELDS_NEED_INIT (t, 1);
+ if (CLASSTYPE_READONLY_FIELDS_NEED_INIT (type))
+ SET_CLASSTYPE_READONLY_FIELDS_NEED_INIT (t, 1);
+ }
+
if (DECL_MUTABLE_P (x) || TYPE_HAS_MUTABLE_P (type))
CLASSTYPE_HAS_MUTABLE (t) = 1;
@@ -3874,8 +3782,8 @@ build_clone (tree fn, tree name)
TREE_TYPE (clone) = build_exception_variant (TREE_TYPE (clone),
exceptions);
TREE_TYPE (clone)
- = build_type_attribute_variant (TREE_TYPE (clone),
- TYPE_ATTRIBUTES (TREE_TYPE (fn)));
+ = cp_build_type_attribute_variant (TREE_TYPE (clone),
+ TYPE_ATTRIBUTES (TREE_TYPE (fn)));
}
/* Copy the function parameters. But, DECL_ARGUMENTS on a TEMPLATE_DECL
@@ -6288,8 +6196,6 @@ print_class_statistics (void)
#ifdef GATHER_STATISTICS
fprintf (stderr, "convert_harshness = %d\n", n_convert_harshness);
fprintf (stderr, "compute_conversion_costs = %d\n", n_compute_conversion_costs);
- fprintf (stderr, "build_method_call = %d (inner = %d)\n",
- n_build_method_call, n_inner_fields_searched);
if (n_vtables)
{
fprintf (stderr, "vtables = %d; vtable searches = %d\n",
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index ac6ecdfed7c..78200709467 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -214,12 +214,6 @@ struct diagnostic_context;
#endif
-/* Returns TRUE if generated code should match ABI version N or
- greater is in use. */
-
-#define abi_version_at_least(N) \
- (flag_abi_version == 0 || flag_abi_version >= (N))
-
/* Language-dependent contents of an identifier. */
@@ -706,7 +700,6 @@ struct saved_scope GTY(())
tree x_previous_class_type;
tree x_previous_class_values;
tree x_saved_tree;
- tree last_parms;
HOST_WIDE_INT x_processing_template_decl;
int x_processing_specialization;
@@ -794,7 +787,7 @@ struct language_function GTY(())
int in_base_initializer;
/* True if this function can throw an exception. */
- bool can_throw : 1;
+ BOOL_BITFIELD can_throw : 1;
struct named_label_use_list *x_named_label_uses;
struct named_label_list *x_named_labels;
@@ -864,6 +857,14 @@ struct language_function GTY(())
#define current_function_return_value \
(cp_function_chain->x_return_value)
+/* True if NAME is the IDENTIFIER_NODE for an overloaded "operator
+ new" or "operator delete". */
+#define NEW_DELETE_OPNAME_P(NAME) \
+ ((NAME) == ansi_opname (NEW_EXPR) \
+ || (NAME) == ansi_opname (VEC_NEW_EXPR) \
+ || (NAME) == ansi_opname (DELETE_EXPR) \
+ || (NAME) == ansi_opname (VEC_DELETE_EXPR))
+
#define ansi_opname(CODE) \
(operator_name_info[(int) (CODE)].identifier)
#define ansi_assopname(CODE) \
@@ -1013,15 +1014,15 @@ enum languages { lang_c, lang_cplusplus, lang_java };
are put in this structure to save space. */
struct lang_type_header GTY(())
{
- CHAR_BITFIELD is_lang_type_class : 1;
-
- CHAR_BITFIELD has_type_conversion : 1;
- CHAR_BITFIELD has_init_ref : 1;
- CHAR_BITFIELD has_default_ctor : 1;
- CHAR_BITFIELD uses_multiple_inheritance : 1;
- CHAR_BITFIELD const_needs_init : 1;
- CHAR_BITFIELD ref_needs_init : 1;
- CHAR_BITFIELD has_const_assign_ref : 1;
+ BOOL_BITFIELD is_lang_type_class : 1;
+
+ BOOL_BITFIELD has_type_conversion : 1;
+ BOOL_BITFIELD has_init_ref : 1;
+ BOOL_BITFIELD has_default_ctor : 1;
+ BOOL_BITFIELD uses_multiple_inheritance : 1;
+ BOOL_BITFIELD const_needs_init : 1;
+ BOOL_BITFIELD ref_needs_init : 1;
+ BOOL_BITFIELD has_const_assign_ref : 1;
};
/* This structure provides additional information above and beyond
@@ -3299,7 +3300,7 @@ enum overload_flags { NO_SPECIAL = 0, DTOR_FLAG, OP_FLAG, TYPENAME_FLAG };
#define B_CLR(A,X) ((A)[(X)>>3] &= ~(1 << ((X)&7)))
#define B_TST(A,X) ((A)[(X)>>3] & (1 << ((X)&7)))
-/* These are uses as bits in flags passed to build_method_call
+/* These are uses as bits in flags passed to build_new_method_call
to control its error reporting behavior.
LOOKUP_PROTECT means flag access violations.
@@ -3512,7 +3513,6 @@ extern tree build_vfield_ref (tree, tree);
extern tree build_conditional_expr (tree, tree, tree);
extern tree build_addr_func (tree);
extern tree build_call (tree, tree);
-extern tree build_method_call (tree, tree, tree, tree, int);
extern bool null_ptr_cst_p (tree);
extern bool sufficient_parms_p (tree);
extern tree type_decays_to (tree);
@@ -3521,7 +3521,7 @@ extern tree build_new_function_call (tree, tree);
extern tree build_operator_new_call (tree, tree, tree *, tree *);
extern tree build_new_method_call (tree, tree, tree, tree, int);
extern tree build_special_member_call (tree, tree, tree, tree, int);
-extern tree build_new_op (enum tree_code, int, tree, tree, tree);
+extern tree build_new_op (enum tree_code, int, tree, tree, tree, bool *);
extern tree build_op_delete_call (enum tree_code, tree, tree, int, tree);
extern bool can_convert (tree, tree);
extern bool can_convert_arg (tree, tree, tree);
@@ -3665,7 +3665,7 @@ extern tree get_scope_of_declarator (tree);
extern void grok_special_member_properties (tree);
extern int grok_ctor_properties (tree, tree);
extern bool grok_op_properties (tree, int, bool);
-extern tree xref_tag (enum tag_types, tree, tree, bool, bool);
+extern tree xref_tag (enum tag_types, tree, bool, bool);
extern tree xref_tag_from_type (tree, tree, int);
extern void xref_basetypes (tree, tree);
extern tree start_enum (tree);
@@ -3712,7 +3712,6 @@ extern tree cxx_builtin_type_decls (void);
extern void warn_extern_redeclared_static (tree, tree);
extern bool have_extern_spec;
-extern GTY(()) tree last_function_parms;
/* in decl2.c */
extern bool check_java_method (tree);
@@ -3722,7 +3721,7 @@ extern void maybe_retrofit_in_chrg (tree);
extern void maybe_make_one_only (tree);
extern void grokclassfn (tree, tree, enum overload_flags, tree);
extern tree grok_array_decl (tree, tree);
-extern tree delete_sanity (tree, tree, int, int);
+extern tree delete_sanity (tree, tree, bool, int);
extern tree check_classfn (tree, tree, bool);
extern void check_member_template (tree);
extern tree grokfield (tree, tree, tree, tree, tree);
@@ -3793,7 +3792,7 @@ extern tree cplus_expand_constant (tree);
extern int is_friend (tree, tree);
extern void make_friend_class (tree, tree, bool);
extern void add_friend (tree, tree, bool);
-extern tree do_friend (tree, tree, tree, tree, tree, enum overload_flags, tree, int);
+extern tree do_friend (tree, tree, tree, tree, enum overload_flags, tree, int);
/* in init.c */
extern tree expand_member_init (tree);
@@ -3928,6 +3927,7 @@ extern tree template_for_substitution (tree);
extern tree build_non_dependent_expr (tree);
extern tree build_non_dependent_args (tree);
extern bool reregister_specialization (tree, tree, tree);
+extern tree fold_non_dependent_expr (tree);
/* in repo.c */
extern void repo_template_used (tree);
@@ -4062,7 +4062,6 @@ extern tree perform_koenig_lookup (tree, tree);
extern tree finish_call_expr (tree, tree, bool, bool);
extern tree finish_increment_expr (tree, enum tree_code);
extern tree finish_this_expr (void);
-extern tree finish_object_call_expr (tree, tree, tree);
extern tree finish_pseudo_destructor_expr (tree, tree, tree);
extern tree finish_unary_op_expr (enum tree_code, tree);
extern tree finish_compound_literal (tree, tree);
@@ -4106,6 +4105,8 @@ extern void simplify_aggr_init_expr (tree *);
extern void lang_check_failed (const char *, int,
const char *);
extern tree stabilize_expr (tree, tree *);
+extern void stabilize_call (tree, tree *);
+extern bool stabilize_init (tree, tree *);
extern tree cxx_unsave_expr_now (tree);
extern tree cxx_maybe_build_cleanup (tree);
extern void init_tree (void);
@@ -4156,6 +4157,7 @@ extern tree maybe_dummy_object (tree, tree *);
extern int is_dummy_object (tree);
extern const struct attribute_spec cxx_attribute_table[];
extern tree make_ptrmem_cst (tree, tree);
+extern tree cp_build_type_attribute_variant (tree, tree);
extern tree cp_build_qualified_type_real (tree, int, tsubst_flags_t);
#define cp_build_qualified_type(TYPE, QUALS) \
cp_build_qualified_type_real ((TYPE), (QUALS), tf_error | tf_warning)
@@ -4206,7 +4208,8 @@ extern tree build_indirect_ref (tree, const char *);
extern tree build_array_ref (tree, tree);
extern tree get_member_function_from_ptrfunc (tree *, tree);
extern tree convert_arguments (tree, tree, tree, int);
-extern tree build_x_binary_op (enum tree_code, tree, tree);
+extern tree build_x_binary_op (enum tree_code, tree, tree,
+ bool *);
extern tree build_x_unary_op (enum tree_code, tree);
extern tree unary_complex_lvalue (enum tree_code, tree);
extern tree build_x_conditional_expr (tree, tree, tree);
diff --git a/gcc/cp/cvt.c b/gcc/cp/cvt.c
index 4672830ed60..17eaa5d7808 100644
--- a/gcc/cp/cvt.c
+++ b/gcc/cp/cvt.c
@@ -1041,8 +1041,9 @@ build_expr_type_conversion (int desires, tree expr, bool complain)
/* The code for conversions from class type is currently only used for
delete expressions. Other expressions are handled by build_new_op. */
-
- if (! TYPE_HAS_CONVERSION (basetype))
+ if (!complete_type_or_else (basetype, expr))
+ return error_mark_node;
+ if (!TYPE_HAS_CONVERSION (basetype))
return NULL_TREE;
for (conv = lookup_conversions (basetype); conv; conv = TREE_CHAIN (conv))
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index b95cf1e6171..c7f0cb8702e 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -52,7 +52,7 @@ Boston, MA 02111-1307, USA. */
#include "debug.h"
#include "timevar.h"
-static tree grokparms (tree);
+static tree grokparms (tree, tree *);
static const char *redeclaration_error_message (tree, tree);
static int decl_jump_unsafe (tree);
@@ -61,7 +61,7 @@ static int ambi_op_p (enum tree_code);
static int unary_op_p (enum tree_code);
static void push_local_name (tree);
static tree grok_reference_init (tree, tree, tree, tree *);
-static tree grokfndecl (tree, tree, tree, tree, int,
+static tree grokfndecl (tree, tree, tree, tree, tree, int,
enum overload_flags, tree,
tree, int, int, int, int, int, int, tree);
static tree grokvardecl (tree, tree, RID_BIT_TYPE *, int, int, tree);
@@ -207,9 +207,6 @@ tree static_aggregates;
tree integer_two_node, integer_three_node;
-/* Similar, for last_function_parm_tags. */
-tree last_function_parms;
-
/* A list of all LABEL_DECLs in the function that have names. Here so
we can clear out their names' definitions at the end of the
function, and so we can check the validity of jumps to these labels. */
@@ -1266,7 +1263,7 @@ duplicate_decls (tree newdecl, tree olddecl)
tree attribs = (*targetm.merge_type_attributes)
(TREE_TYPE (olddecl), type);
- type = build_type_attribute_variant (type, attribs);
+ type = cp_build_type_attribute_variant (type, attribs);
TREE_TYPE (newdecl) = TREE_TYPE (olddecl) = type;
}
@@ -1594,6 +1591,9 @@ duplicate_decls (tree newdecl, tree olddecl)
DECL_SOURCE_LOCATION (olddecl)
= DECL_SOURCE_LOCATION (DECL_TEMPLATE_RESULT (olddecl))
= DECL_SOURCE_LOCATION (newdecl);
+ if (DECL_FUNCTION_TEMPLATE_P (newdecl))
+ DECL_ARGUMENTS (DECL_TEMPLATE_RESULT (olddecl))
+ = DECL_ARGUMENTS (DECL_TEMPLATE_RESULT (newdecl));
}
if (DECL_FUNCTION_TEMPLATE_P (newdecl))
@@ -1853,8 +1853,6 @@ duplicate_decls (tree newdecl, tree olddecl)
regardless of declaration matches. */
SET_DECL_RTL (newdecl, DECL_RTL (olddecl));
}
- else
- DECL_ESTIMATED_INSNS (newdecl) = DECL_ESTIMATED_INSNS (olddecl);
DECL_RESULT (newdecl) = DECL_RESULT (olddecl);
/* Don't clear out the arguments if we're redefining a function. */
@@ -2030,16 +2028,31 @@ redeclaration_error_message (tree newdecl, tree olddecl)
}
else if (TREE_CODE (newdecl) == TEMPLATE_DECL)
{
- if ((TREE_CODE (DECL_TEMPLATE_RESULT (newdecl)) == FUNCTION_DECL
- && (DECL_TEMPLATE_RESULT (newdecl)
- != DECL_TEMPLATE_RESULT (olddecl))
- && DECL_INITIAL (DECL_TEMPLATE_RESULT (newdecl))
- && DECL_INITIAL (DECL_TEMPLATE_RESULT (olddecl)))
- || (TREE_CODE (DECL_TEMPLATE_RESULT (newdecl)) == TYPE_DECL
- && COMPLETE_TYPE_P (TREE_TYPE (newdecl))
- && COMPLETE_TYPE_P (TREE_TYPE (olddecl))))
+ tree nt, ot;
+
+ if (TREE_CODE (DECL_TEMPLATE_RESULT (newdecl)) == TYPE_DECL)
+ {
+ if (COMPLETE_TYPE_P (TREE_TYPE (newdecl))
+ && COMPLETE_TYPE_P (TREE_TYPE (olddecl)))
+ return "redefinition of `%#D'";
+ return NULL;
+ }
+
+ if (TREE_CODE (DECL_TEMPLATE_RESULT (newdecl)) != FUNCTION_DECL
+ || (DECL_TEMPLATE_RESULT (newdecl)
+ == DECL_TEMPLATE_RESULT (olddecl)))
+ return NULL;
+
+ nt = DECL_TEMPLATE_RESULT (newdecl);
+ if (DECL_TEMPLATE_INFO (nt))
+ nt = DECL_TEMPLATE_RESULT (template_for_substitution (nt));
+ ot = DECL_TEMPLATE_RESULT (olddecl);
+ if (DECL_TEMPLATE_INFO (ot))
+ ot = DECL_TEMPLATE_RESULT (template_for_substitution (ot));
+ if (DECL_INITIAL (nt) && DECL_INITIAL (ot))
return "redefinition of `%#D'";
- return 0;
+
+ return NULL;
}
else if (toplevel_bindings_p () || DECL_NAMESPACE_SCOPE_P (newdecl))
{
@@ -3841,8 +3854,6 @@ start_decl_1 (tree decl)
if (type == error_mark_node)
return;
- maybe_push_cleanup_level (type);
-
if (initialized)
/* Is it valid for this decl to have an initializer at all?
If not, set INITIALIZED to zero, which will indirectly
@@ -3898,6 +3909,14 @@ start_decl_1 (tree decl)
if (! initialized)
DECL_INITIAL (decl) = NULL_TREE;
+
+ /* Create a new scope to hold this declaration if necessary.
+ Whether or not a new scope is necessary cannot be determined
+ until after the type has been completed; if the type is a
+ specialization of a class template it is not until after
+ instantiation has occurred that TYPE_HAS_NONTRIVIAL_DESTRUCTOR
+ will be set correctly. */
+ maybe_push_cleanup_level (type);
}
/* Handle initialization of references. DECL, TYPE, and INIT have the
@@ -4330,14 +4349,14 @@ reshape_init (tree type, tree *initp)
}
}
}
- else if (TREE_CODE (type) == ARRAY_TYPE)
+ else if ((TREE_CODE (type) == ARRAY_TYPE)|| (TREE_CODE (type) == VECTOR_TYPE))
{
tree index;
tree max_index;
/* If the bound of the array is known, take no more initializers
than are allowed. */
- max_index = (TYPE_DOMAIN (type)
+ max_index = ((TYPE_DOMAIN (type) && (TREE_CODE (type) == ARRAY_TYPE))
? array_type_nelts (type) : NULL_TREE);
/* Loop through the array elements, gathering initializers. */
for (index = size_zero_node;
@@ -4764,6 +4783,10 @@ cp_finish_decl (tree decl, tree init, tree asmspec_tree, int flags)
if (init && DECL_INITIAL (decl))
DECL_INITIAL (decl) = init;
+ if (TREE_CODE (decl) == VAR_DECL
+ && !DECL_PRETTY_FUNCTION_P (decl)
+ && !dependent_type_p (TREE_TYPE (decl)))
+ maybe_deduce_size_from_array_init (decl, init);
goto finish_end0;
}
@@ -4796,16 +4819,17 @@ cp_finish_decl (tree decl, tree init, tree asmspec_tree, int flags)
if (TREE_CODE (decl) != FUNCTION_DECL)
ttype = target_type (type);
- if (! DECL_EXTERNAL (decl) && TREE_READONLY (decl)
- && (TYPE_NEEDS_CONSTRUCTING (type)
- || TREE_CODE (type) == REFERENCE_TYPE))
+
+ /* Currently, GNU C++ puts constants in text space, making them
+ impossible to initialize. In the future, one would hope for
+ an operating system which understood the difference between
+ initialization and the running of a program. */
+ if (! DECL_EXTERNAL (decl) && TREE_READONLY (decl))
{
- /* Currently, GNU C++ puts constants in text space, making them
- impossible to initialize. In the future, one would hope for
- an operating system which understood the difference between
- initialization and the running of a program. */
was_readonly = 1;
- TREE_READONLY (decl) = 0;
+ if (TYPE_NEEDS_CONSTRUCTING (type)
+ || TREE_CODE (type) == REFERENCE_TYPE)
+ TREE_READONLY (decl) = 0;
}
if (TREE_CODE (decl) == VAR_DECL)
@@ -5469,6 +5493,7 @@ bad_specifiers (tree object,
TYPE is type this FUNCTION_DECL should have, either FUNCTION_TYPE
or METHOD_TYPE.
DECLARATOR is the function's name.
+ PARMS is a chain of PARM_DECLs for the function.
VIRTUALP is truthvalue of whether the function is virtual or not.
FLAGS are to be passed through to `grokclassfn'.
QUALS are qualifiers indicating whether the function is `const'
@@ -5484,6 +5509,7 @@ static tree
grokfndecl (tree ctype,
tree type,
tree declarator,
+ tree parms,
tree orig_declarator,
int virtualp,
enum overload_flags flags,
@@ -5506,6 +5532,7 @@ grokfndecl (tree ctype,
type = build_exception_variant (type, raises);
decl = build_lang_decl (FUNCTION_DECL, declarator, type);
+ DECL_ARGUMENTS (decl) = parms;
/* Propagate volatile out from type to decl. */
if (TYPE_VOLATILE (type))
TREE_THIS_VOLATILE (decl) = 1;
@@ -5731,18 +5758,16 @@ grokfndecl (tree ctype,
if (old_decl && DECL_STATIC_FUNCTION_P (old_decl)
&& TREE_CODE (TREE_TYPE (decl)) == METHOD_TYPE)
- {
- /* Remove the `this' parm added by grokclassfn.
- XXX Isn't this done in start_function, too? */
- revert_static_member_fn (decl);
- last_function_parms = TREE_CHAIN (last_function_parms);
- }
+ /* Remove the `this' parm added by grokclassfn.
+ XXX Isn't this done in start_function, too? */
+ revert_static_member_fn (decl);
if (old_decl && DECL_ARTIFICIAL (old_decl))
error ("definition of implicitly-declared `%D'", old_decl);
if (old_decl)
{
tree ok;
+ bool pop_p;
/* Since we've smashed OLD_DECL to its
DECL_TEMPLATE_RESULT, we must do the same to DECL. */
@@ -5751,9 +5776,10 @@ grokfndecl (tree ctype,
/* Attempt to merge the declarations. This can fail, in
the case of some invalid specialization declarations. */
- push_scope (ctype);
+ pop_p = push_scope (ctype);
ok = duplicate_decls (decl, old_decl);
- pop_scope (ctype);
+ if (pop_p)
+ pop_scope (ctype);
if (!ok)
{
error ("no `%#D' member function declared in class `%T'",
@@ -6376,6 +6402,7 @@ grokdeclarator (tree declarator,
tree in_namespace = NULL_TREE;
tree returned_attrs = NULL_TREE;
tree scope = NULL_TREE;
+ tree parms = NULL_TREE;
RIDBIT_RESET_ALL (specbits);
if (decl_context == FUNCDEF)
@@ -7448,7 +7475,7 @@ grokdeclarator (tree declarator,
declarator = TREE_OPERAND (declarator, 0);
- arg_types = grokparms (inner_parms);
+ arg_types = grokparms (inner_parms, &parms);
if (declarator && flags == DTOR_FLAG)
{
@@ -7462,7 +7489,7 @@ grokdeclarator (tree declarator,
{
error ("destructors may not have parameters");
arg_types = void_list_node;
- last_function_parms = NULL_TREE;
+ parms = NULL_TREE;
}
}
@@ -7629,7 +7656,11 @@ grokdeclarator (tree declarator,
}
else if (TREE_CODE (type) == FUNCTION_TYPE)
{
- if (current_class_type == NULL_TREE || friendp)
+ if (NEW_DELETE_OPNAME_P (sname))
+ /* Overloaded operator new and operator delete
+ are always static functions. */
+ ;
+ else if (current_class_type == NULL_TREE || friendp)
type
= build_method_type_directly (ctype,
TREE_TYPE (type),
@@ -7888,8 +7919,7 @@ grokdeclarator (tree declarator,
type = build_cplus_array_type (TREE_TYPE (type), NULL_TREE);
/* Detect where we're using a typedef of function type to declare a
- function. last_function_parms will not be set, so we must create
- it now. */
+ function. PARMS will not be set, so we must create it now. */
if (type == typedef_type && TREE_CODE (type) == FUNCTION_TYPE)
{
@@ -7904,7 +7934,7 @@ grokdeclarator (tree declarator,
decls = decl;
}
- last_function_parms = nreverse (decls);
+ parms = nreverse (decls);
}
/* If this is a type name (such as, in a cast or sizeof),
@@ -8098,10 +8128,7 @@ grokdeclarator (tree declarator,
return void_type_node;
}
- if (declarator == ansi_opname (NEW_EXPR)
- || declarator == ansi_opname (VEC_NEW_EXPR)
- || declarator == ansi_opname (DELETE_EXPR)
- || declarator == ansi_opname (VEC_DELETE_EXPR))
+ if (NEW_DELETE_OPNAME_P (declarator))
{
if (virtualp)
{
@@ -8124,6 +8151,7 @@ grokdeclarator (tree declarator,
decl = grokfndecl (ctype, type,
TREE_CODE (declarator) != TEMPLATE_ID_EXPR
? declarator : dname,
+ parms,
declarator,
virtualp, flags, quals, raises,
friendp ? -1 : 0, friendp, publicp, inlinep,
@@ -8170,6 +8198,7 @@ grokdeclarator (tree declarator,
decl = grokfndecl (ctype, type,
TREE_CODE (declarator) != TEMPLATE_ID_EXPR
? declarator : dname,
+ parms,
declarator,
virtualp, flags, quals, raises,
friendp ? -1 : 0, friendp, 1, 0, funcdef_flag,
@@ -8177,7 +8206,7 @@ grokdeclarator (tree declarator,
if (decl == NULL_TREE)
return NULL_TREE;
}
- else if (!staticp && ! processing_template_decl
+ else if (!staticp && !dependent_type_p (type)
&& !COMPLETE_TYPE_P (complete_type (type))
&& (TREE_CODE (type) != ARRAY_TYPE || initialized == 0))
{
@@ -8227,8 +8256,7 @@ grokdeclarator (tree declarator,
}
decl = do_friend (ctype, declarator, decl,
- last_function_parms, *attrlist,
- flags, quals, funcdef_flag);
+ *attrlist, flags, quals, funcdef_flag);
return decl;
}
else
@@ -8276,13 +8304,6 @@ grokdeclarator (tree declarator,
if (staticp)
{
- /* [class.mem] forbids static data members with the
- same name as the enclosing class. Non-static data
- members are checked in check_field_decls. */
- if (constructor_name_p (declarator, current_class_type))
- pedwarn ("ISO C++ forbids static data member `%D' with same name as enclosing class",
- declarator);
-
/* C++ allows static class members. All other work
for this is done by grokfield. */
decl = build_lang_decl (VAR_DECL, declarator, type);
@@ -8348,7 +8369,8 @@ grokdeclarator (tree declarator,
virtualp = 0;
}
}
- else if (TREE_CODE (type) == FUNCTION_TYPE && staticp < 2)
+ else if (TREE_CODE (type) == FUNCTION_TYPE && staticp < 2
+ && !NEW_DELETE_OPNAME_P (original_name))
type = build_method_type_directly (ctype,
TREE_TYPE (type),
TYPE_ARG_TYPES (type));
@@ -8358,7 +8380,7 @@ grokdeclarator (tree declarator,
|| RIDBIT_SETP (RID_EXTERN, specbits)
|| !RIDBIT_SETP (RID_STATIC, specbits));
- decl = grokfndecl (ctype, type, original_name, declarator,
+ decl = grokfndecl (ctype, type, original_name, parms, declarator,
virtualp, flags, quals, raises,
1, friendp,
publicp, inlinep, funcdef_flag,
@@ -8467,8 +8489,6 @@ require_complete_types_for_parms (tree parms)
layout_decl (parms, 0);
DECL_ARG_TYPE (parms) = type_passed_as (TREE_TYPE (parms));
}
- else
- TREE_TYPE (parms) = error_mark_node;
}
}
@@ -8598,10 +8618,10 @@ check_default_argument (tree decl, tree arg)
flag. If unset, we append void_list_node. A parmlist declared
as `(void)' is accepted as the empty parmlist.
- Also set last_function_parms to the chain of PARM_DECLs. */
+ *PARMS is set to the chain of PARM_DECLs created. */
static tree
-grokparms (tree first_parm)
+grokparms (tree first_parm, tree *parms)
{
tree result = NULL_TREE;
tree decls = NULL_TREE;
@@ -8707,7 +8727,7 @@ grokparms (tree first_parm)
result = nreverse (result);
if (!ellipsis)
result = chainon (result, void_list_node);
- last_function_parms = decls;
+ *parms = decls;
return result;
}
@@ -8961,21 +8981,9 @@ grok_op_properties (tree decl, int friendp, bool complain)
}
if (operator_code == NEW_EXPR || operator_code == VEC_NEW_EXPR)
- {
- /* When the compiler encounters the definition of A::operator new, it
- doesn't look at the class declaration to find out if it's static. */
- if (methodp)
- revert_static_member_fn (decl);
-
- TREE_TYPE (decl) = coerce_new_type (TREE_TYPE (decl));
- }
+ TREE_TYPE (decl) = coerce_new_type (TREE_TYPE (decl));
else if (operator_code == DELETE_EXPR || operator_code == VEC_DELETE_EXPR)
- {
- if (methodp)
- revert_static_member_fn (decl);
-
- TREE_TYPE (decl) = coerce_delete_type (TREE_TYPE (decl));
- }
+ TREE_TYPE (decl) = coerce_delete_type (TREE_TYPE (decl));
else
{
/* An operator function must either be a non-static member function
@@ -9309,8 +9317,7 @@ check_elaborated_type_specifier (enum tag_types tag_code,
Define the tag as a forward-reference if it is not defined.
If a declaration is given, process it here, and report an error if
- multiple declarations are not identical. ATTRIBUTE is the attribute
- appeared in this declaration.
+ multiple declarations are not identical.
GLOBALIZE is false when this is also a definition. Only look in
the current frame for the name (since C++ allows new names in any
@@ -9320,7 +9327,7 @@ check_elaborated_type_specifier (enum tag_types tag_code,
a set of template parameters. */
tree
-xref_tag (enum tag_types tag_code, tree name, tree attributes,
+xref_tag (enum tag_types tag_code, tree name,
bool globalize, bool template_header_p)
{
enum tree_code code;
@@ -9356,7 +9363,7 @@ xref_tag (enum tag_types tag_code, tree name, tree attributes,
}
else
{
- tree decl = lookup_name (name, 1);
+ tree decl = lookup_name (name, 2);
if (decl && DECL_CLASS_TEMPLATE_P (decl))
decl = DECL_TEMPLATE_RESULT (decl);
@@ -9443,25 +9450,7 @@ xref_tag (enum tag_types tag_code, tree name, tree attributes,
if (code == ENUMERAL_TYPE)
{
error ("use of enum `%#D' without previous declaration", name);
-
- t = make_node (ENUMERAL_TYPE);
-
- /* Give the type a default layout like unsigned int
- to avoid crashing if it does not get defined. */
- TYPE_MODE (t) = TYPE_MODE (unsigned_type_node);
- TYPE_ALIGN (t) = TYPE_ALIGN (unsigned_type_node);
- TYPE_USER_ALIGN (t) = 0;
- TREE_UNSIGNED (t) = 1;
- TYPE_PRECISION (t) = TYPE_PRECISION (unsigned_type_node);
- TYPE_MIN_VALUE (t) = TYPE_MIN_VALUE (unsigned_type_node);
- TYPE_MAX_VALUE (t) = TYPE_MAX_VALUE (unsigned_type_node);
-
- /* Enable us to recognize when a type is created in class context.
- To do nested classes correctly, this should probably be cleared
- out when we leave this classes scope. Currently this in only
- done in `start_enum'. */
-
- pushtag (name, t, globalize);
+ POP_TIMEVAR_AND_RETURN (TV_NAME_LOOKUP, error_mark_node);
}
else
{
@@ -9476,16 +9465,6 @@ xref_tag (enum tag_types tag_code, tree name, tree attributes,
redeclare_class_template (t, current_template_parms);
}
- /* Add attributes only when defining a class. */
- if (attributes)
- {
- /* The only place that xref_tag is called with non-null
- attributes is in cp_parser_class_head(), when defining a
- class. */
- my_friendly_assert (TYPE_ATTRIBUTES (t) == NULL_TREE, 20040113);
- TYPE_ATTRIBUTES (t) = attributes;
- }
-
POP_TIMEVAR_AND_RETURN (TV_NAME_LOOKUP, t);
}
@@ -9502,7 +9481,7 @@ xref_tag_from_type (tree old, tree id, int globalize)
if (id == NULL_TREE)
id = TYPE_IDENTIFIER (old);
- return xref_tag (tag_kind, id, /*attributes=*/NULL_TREE, globalize, false);
+ return xref_tag (tag_kind, id, globalize, false);
}
/* REF is a type (named NAME), for which we have just seen some
@@ -10115,8 +10094,6 @@ start_function (tree declspecs, tree declarator, tree attrs, int flags)
else
doing_friend = 1;
}
-
- last_function_parms = DECL_ARGUMENTS (decl1);
}
else
{
@@ -10167,7 +10144,6 @@ start_function (tree declspecs, tree declarator, tree attrs, int flags)
&& TREE_CODE (TREE_TYPE (decl1)) == METHOD_TYPE)
{
revert_static_member_fn (decl1);
- last_function_parms = TREE_CHAIN (last_function_parms);
ctype = NULL_TREE;
}
@@ -10220,7 +10196,7 @@ start_function (tree declspecs, tree declarator, tree attrs, int flags)
/* Save the parm names or decls from this function's declarator
where store_parm_decls will find them. */
- current_function_parms = last_function_parms;
+ current_function_parms = DECL_ARGUMENTS (decl1);
/* Make sure the parameter and return types are reasonable. When
you declare a function, these types can be incomplete, but they
@@ -10260,9 +10236,6 @@ start_function (tree declspecs, tree declarator, tree attrs, int flags)
/* Start the statement-tree, start the tree now. */
begin_stmt_tree (&DECL_SAVED_TREE (decl1));
- /* Don't double-count statements in templates. */
- DECL_ESTIMATED_INSNS (decl1) = 0;
-
/* Let the user know we're compiling this function. */
announce_function (decl1);
@@ -10272,8 +10245,9 @@ start_function (tree declspecs, tree declarator, tree attrs, int flags)
if (!processing_template_decl && !(flags & SF_PRE_PARSED))
{
/* A specialization is not used to guide overload resolution. */
- if (!DECL_TEMPLATE_SPECIALIZATION (decl1)
- && ! DECL_FUNCTION_MEMBER_P (decl1))
+ if (!DECL_FUNCTION_MEMBER_P (decl1)
+ && !(DECL_USE_TEMPLATE (decl1) &&
+ PRIMARY_TEMPLATE_P (DECL_TI_TEMPLATE (decl1))))
{
tree olddecl = pushdecl (decl1);
@@ -10736,8 +10710,6 @@ finish_function (int flags)
which then got a warning when stored in a ptr-to-function variable. */
my_friendly_assert (building_stmt_tree (), 20000911);
-
- finish_fname_decls ();
/* For a cloned function, we've already got all the code we need;
there's no need to add any extra bits. */
@@ -10762,6 +10734,8 @@ finish_function (int flags)
current_eh_spec_block);
}
+ finish_fname_decls ();
+
/* If we're saving up tree structure, tie off the function now. */
finish_stmt_tree (&DECL_SAVED_TREE (fndecl));
@@ -11196,8 +11170,6 @@ cxx_push_function_context (struct function * f)
{
tree fn = f->decl;
- current_function_is_thunk = DECL_THUNK_P (fn);
-
if (DECL_SAVED_FUNCTION_DATA (fn))
{
/* If we already parsed this function, and we're just expanding it
diff --git a/gcc/cp/decl.h b/gcc/cp/decl.h
index 2a7a7659e1b..46a1ec80688 100644
--- a/gcc/cp/decl.h
+++ b/gcc/cp/decl.h
@@ -33,10 +33,6 @@ enum decl_context
/* We need this in here to get the decl_context definition. */
extern tree grokdeclarator (tree, tree, enum decl_context, int, tree*);
-/* Parsing a function declarator leaves a list of parameter names
- or a chain or parameter decls here. */
-extern GTY(()) tree last_function_parms;
-
#ifdef DEBUG_CP_BINDING_LEVELS
/* Purely for debugging purposes. */
extern int debug_bindings_indentation;
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index ec7b77dc659..510667a4f56 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -1,6 +1,6 @@
/* Process declarations and variables for C++ compiler.
Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Hacked by Michael Tiemann (tiemann@cygnus.com)
This file is part of GCC.
@@ -229,7 +229,7 @@ maybe_retrofit_in_chrg (tree fn)
/* When processing templates we can't know, in general, whether or
not we're going to have virtual baseclasses. */
- if (uses_template_parms (fn))
+ if (processing_template_decl)
return;
/* We don't need an in-charge parameter for constructors that don't
@@ -336,11 +336,10 @@ grokclassfn (tree ctype, tree function, enum overload_flags flags, tree quals)
qual_type = cp_build_qualified_type (type, this_quals);
parm = build_artificial_parm (this_identifier, qual_type);
c_apply_type_quals_to_decl (this_quals, parm);
- TREE_CHAIN (parm) = last_function_parms;
- last_function_parms = parm;
+ TREE_CHAIN (parm) = DECL_ARGUMENTS (function);
+ DECL_ARGUMENTS (function) = parm;
}
- DECL_ARGUMENTS (function) = last_function_parms;
DECL_CONTEXT (function) = ctype;
if (flags == DTOR_FLAG)
@@ -380,7 +379,8 @@ grok_array_decl (tree array_expr, tree index_exp)
/* If they have an `operator[]', use that. */
if (IS_AGGR_TYPE (type) || IS_AGGR_TYPE (TREE_TYPE (index_exp)))
expr = build_new_op (ARRAY_REF, LOOKUP_NORMAL,
- array_expr, index_exp, NULL_TREE);
+ array_expr, index_exp, NULL_TREE,
+ /*overloaded_p=*/NULL);
else
{
tree p1, p2, i1, i2;
@@ -432,18 +432,14 @@ grok_array_decl (tree array_expr, tree index_exp)
/* Given the cast expression EXP, checking out its validity. Either return
an error_mark_node if there was an unavoidable error, return a cast to
void for trying to delete a pointer w/ the value 0, or return the
- call to delete. If DOING_VEC is 1, we handle things differently
- for doing an array delete. If DOING_VEC is 2, they gave us the
- array size as an argument to delete.
+ call to delete. If DOING_VEC is true, we handle things differently
+ for doing an array delete.
Implements ARM $5.3.4. This is called from the parser. */
tree
-delete_sanity (tree exp, tree size, int doing_vec, int use_global_delete)
+delete_sanity (tree exp, tree size, bool doing_vec, int use_global_delete)
{
tree t, type;
- /* For a regular vector delete (aka, no size argument) we will pass
- this down as a NULL_TREE into build_vec_delete. */
- tree maxindex = NULL_TREE;
if (exp == error_mark_node)
return exp;
@@ -457,6 +453,12 @@ delete_sanity (tree exp, tree size, int doing_vec, int use_global_delete)
}
exp = convert_from_reference (exp);
+
+ /* An array can't have been allocated by new, so complain. */
+ if (TREE_CODE (exp) == VAR_DECL
+ && TREE_CODE (TREE_TYPE (exp)) == ARRAY_TYPE)
+ warning ("deleting array `%#D'", exp);
+
t = build_expr_type_conversion (WANT_POINTER, exp, true);
if (t == NULL_TREE || t == error_mark_node)
@@ -466,12 +468,6 @@ delete_sanity (tree exp, tree size, int doing_vec, int use_global_delete)
return error_mark_node;
}
- if (doing_vec == 2)
- {
- maxindex = cp_build_binary_op (MINUS_EXPR, size, integer_one_node);
- pedwarn ("anachronistic use of array size in vector delete");
- }
-
type = TREE_TYPE (t);
/* As of Valley Forge, you can delete a pointer to const. */
@@ -490,18 +486,13 @@ delete_sanity (tree exp, tree size, int doing_vec, int use_global_delete)
doing_vec = 0;
}
- /* An array can't have been allocated by new, so complain. */
- if (TREE_CODE (t) == ADDR_EXPR
- && TREE_CODE (TREE_OPERAND (t, 0)) == VAR_DECL
- && TREE_CODE (TREE_TYPE (TREE_OPERAND (t, 0))) == ARRAY_TYPE)
- warning ("deleting array `%#D'", TREE_OPERAND (t, 0));
-
/* Deleting a pointer with the value zero is valid and has no effect. */
if (integer_zerop (t))
return build1 (NOP_EXPR, void_type_node, t);
if (doing_vec)
- return build_vec_delete (t, maxindex, sfk_deleting_destructor,
+ return build_vec_delete (t, /*maxindex=*/NULL_TREE,
+ sfk_deleting_destructor,
use_global_delete);
else
return build_delete (type, t, sfk_deleting_destructor,
@@ -661,9 +652,10 @@ check_classfn (tree ctype, tree function, bool template_header_p)
tree methods = CLASSTYPE_METHOD_VEC (ctype);
tree fndecls, fndecl = 0;
bool is_conv_op;
+ bool pop_p;
const char *format = NULL;
- push_scope (ctype);
+ pop_p = push_scope (ctype);
for (fndecls = TREE_VEC_ELT (methods, ix);
fndecls; fndecls = OVL_NEXT (fndecls))
{
@@ -699,7 +691,8 @@ check_classfn (tree ctype, tree function, bool template_header_p)
== DECL_TI_TEMPLATE (fndecl))))
break;
}
- pop_scope (ctype);
+ if (pop_p)
+ pop_scope (ctype);
if (fndecls)
return OVL_CURRENT (fndecls);
error ("prototype for `%#D' does not match any in class `%T'",
@@ -3026,6 +3019,7 @@ mark_used (tree decl)
generate its body to find that out. */
|| TREE_NOTHROW (decl)
|| !cfun
+ || !current_function_decl
/* If we already know the current function can't throw,
then we don't need to work hard to prove it. */
|| TREE_NOTHROW (current_function_decl)
diff --git a/gcc/cp/error.c b/gcc/cp/error.c
index bb6ff341572..988c539492c 100644
--- a/gcc/cp/error.c
+++ b/gcc/cp/error.c
@@ -791,6 +791,7 @@ dump_decl (tree t, int flags)
/* Else fall through. */
case FIELD_DECL:
case PARM_DECL:
+ case ALIAS_DECL:
dump_simple_decl (t, TREE_TYPE (t), flags);
break;
@@ -939,6 +940,13 @@ dump_decl (tree t, int flags)
dump_expr (t, flags);
break;
+ case TEMPLATE_TYPE_PARM:
+ if (flags & TFF_DECL_SPECIFIERS)
+ pp_cxx_declaration (cxx_pp, t);
+ else
+ pp_type_id (cxx_pp, t);
+ break;
+
default:
pp_unsupported_tree (cxx_pp, t);
/* Fallthrough to error. */
@@ -1311,6 +1319,11 @@ dump_expr (tree t, int flags)
pp_c_constant (pp_c_base (cxx_pp), t);
break;
+ case THROW_EXPR:
+ pp_identifier (cxx_pp, "throw");
+ dump_expr (TREE_OPERAND (t, 0), flags);
+ break;
+
case PTRMEM_CST:
pp_ampersand (cxx_pp);
dump_type (PTRMEM_CST_CLASS (t), flags);
diff --git a/gcc/cp/except.c b/gcc/cp/except.c
index 03a3274e90a..5abfdef8d7c 100644
--- a/gcc/cp/except.c
+++ b/gcc/cp/except.c
@@ -1,6 +1,6 @@
/* Handle exceptional things in C++.
Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Tiemann <tiemann@cygnus.com>
Rewritten by Mike Stump <mrs@cygnus.com>, based upon an
initial re-implementation courtesy Tad Hunt.
@@ -47,7 +47,6 @@ static tree do_end_catch (tree);
static bool decl_is_java_type (tree decl, int err);
static void initialize_handler_parm (tree, tree);
static tree do_allocate_exception (tree);
-static tree stabilize_throw_expr (tree, tree *);
static tree wrap_cleanups_r (tree *, int *, void *);
static int complete_ptr_ref_or_void_ptr_p (tree, tree);
static bool is_admissible_throw_operand (tree);
@@ -507,7 +506,6 @@ do_allocate_exception (tree type)
NULL_TREE));
}
-#if 0
/* Call __cxa_free_exception from a cleanup. This is never invoked
directly, but see the comment for stabilize_throw_expr. */
@@ -526,7 +524,6 @@ do_free_exception (tree ptr)
return build_function_call (fn, tree_cons (NULL_TREE, ptr, NULL_TREE));
}
-#endif
/* Wrap all cleanups for TARGET_EXPRs in MUST_NOT_THROW_EXPR.
Called from build_throw via walk_tree_without_duplicates. */
@@ -558,58 +555,6 @@ wrap_cleanups_r (tree *tp, int *walk_subtrees ATTRIBUTE_UNUSED,
return NULL_TREE;
}
-/* Like stabilize_expr, but specifically for a thrown expression. When
- throwing a temporary class object, we want to construct it directly into
- the thrown exception, so we look past the TARGET_EXPR and stabilize the
- arguments of the call instead.
-
- The case where EXP is a call to a function returning a class is a bit of
- a grey area in the standard; it's unclear whether or not it should be
- allowed to throw. I'm going to say no, as that allows us to optimize
- this case without worrying about deallocating the exception object if it
- does. The alternatives would be either not optimizing this case, or
- wrapping the initialization in a TRY_CATCH_EXPR to call do_free_exception
- rather than in a MUST_NOT_THROW_EXPR, for this case only. */
-
-static tree
-stabilize_throw_expr (tree exp, tree *initp)
-{
- tree init_expr;
-
- if (TREE_CODE (exp) == TARGET_EXPR
- && TREE_CODE (TARGET_EXPR_INITIAL (exp)) == AGGR_INIT_EXPR
- && flag_elide_constructors)
- {
- tree aggr_init = AGGR_INIT_EXPR_CHECK (TARGET_EXPR_INITIAL (exp));
- tree args = TREE_OPERAND (aggr_init, 1);
- tree newargs = NULL_TREE;
- tree *p = &newargs;
-
- init_expr = void_zero_node;
- for (; args; args = TREE_CHAIN (args))
- {
- tree arg = TREE_VALUE (args);
- tree arg_init_expr;
-
- arg = stabilize_expr (arg, &arg_init_expr);
-
- if (TREE_SIDE_EFFECTS (arg_init_expr))
- init_expr = build (COMPOUND_EXPR, void_type_node, init_expr,
- arg_init_expr);
- *p = tree_cons (NULL_TREE, arg, NULL_TREE);
- p = &TREE_CHAIN (*p);
- }
- TREE_OPERAND (aggr_init, 1) = newargs;
- }
- else
- {
- exp = stabilize_expr (exp, &init_expr);
- }
-
- *initp = init_expr;
- return exp;
-}
-
/* Build a throw expression. */
tree
@@ -621,7 +566,10 @@ build_throw (tree exp)
return exp;
if (processing_template_decl)
- return build_min (THROW_EXPR, void_type_node, exp);
+ {
+ current_function_returns_abnormally = 1;
+ return build_min (THROW_EXPR, void_type_node, exp);
+ }
if (exp == null_node)
warning ("throwing NULL, which has integral, not pointer type");
@@ -660,6 +608,7 @@ build_throw (tree exp)
tree object, ptr;
tree tmp;
tree temp_expr, allocate_expr;
+ bool elided;
fn = get_identifier ("__cxa_throw");
if (!get_global_value_if_present (fn, &fn))
@@ -700,11 +649,6 @@ build_throw (tree exp)
the call to __cxa_allocate_exception first (which doesn't
matter, since it can't throw). */
- /* Pre-evaluate the thrown expression first, since if we allocated
- the space first we would have to deal with cleaning it up if
- evaluating this expression throws. */
- exp = stabilize_throw_expr (exp, &temp_expr);
-
/* Allocate the space for the exception. */
allocate_expr = do_allocate_exception (TREE_TYPE (exp));
allocate_expr = get_target_expr (allocate_expr);
@@ -712,6 +656,8 @@ build_throw (tree exp)
object = build1 (NOP_EXPR, build_pointer_type (TREE_TYPE (exp)), ptr);
object = build_indirect_ref (object, NULL);
+ elided = (TREE_CODE (exp) == TARGET_EXPR);
+
/* And initialize the exception object. */
exp = build_init (object, exp, LOOKUP_ONLYCONVERTING);
if (exp == error_mark_node)
@@ -720,10 +666,35 @@ build_throw (tree exp)
return error_mark_node;
}
- exp = build1 (MUST_NOT_THROW_EXPR, void_type_node, exp);
+ /* Pre-evaluate the thrown expression first, since if we allocated
+ the space first we would have to deal with cleaning it up if
+ evaluating this expression throws.
+
+ The case where EXP the initializer is a call to a constructor or a
+ function returning a class is a bit of a grey area in the
+ standard; it's unclear whether or not it should be allowed to
+ throw. We used to say no, as that allowed us to optimize this
+ case without worrying about deallocating the exception object if
+ it does. But that conflicted with expectations (PR 13944) and the
+ EDG compiler; now we wrap the initialization in a TRY_CATCH_EXPR
+ to call do_free_exception rather than in a MUST_NOT_THROW_EXPR,
+ for this case only.
+
+ Note that we don't check the return value from stabilize_init
+ because it will only return false in cases where elided is true,
+ and therefore we don't need to work around the failure to
+ preevaluate. */
+ stabilize_init (exp, &temp_expr);
+
+ if (elided)
+ exp = build (TRY_CATCH_EXPR, void_type_node, exp,
+ do_free_exception (ptr));
+ else
+ exp = build1 (MUST_NOT_THROW_EXPR, void_type_node, exp);
+
/* Prepend the allocation. */
exp = build (COMPOUND_EXPR, TREE_TYPE (exp), allocate_expr, exp);
- if (temp_expr != void_zero_node)
+ if (temp_expr)
{
/* Prepend the calculation of the throw expression. Also, force
any cleanups from the expression to be evaluated here so that
diff --git a/gcc/cp/expr.c b/gcc/cp/expr.c
index 14453bf7534..00f8676e180 100644
--- a/gcc/cp/expr.c
+++ b/gcc/cp/expr.c
@@ -1,7 +1,7 @@
/* Convert language-specific tree expression to rtl instructions,
for GNU compiler.
Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/cp/friend.c b/gcc/cp/friend.c
index 46616b13608..297614c8381 100644
--- a/gcc/cp/friend.c
+++ b/gcc/cp/friend.c
@@ -314,17 +314,13 @@ make_friend_class (tree type, tree friend_type, bool complain)
DECL is the FUNCTION_DECL that the friend is.
- In case we are parsing a friend which is part of an inline
- definition, we will need to store PARM_DECL chain that comes
- with it into the DECL_ARGUMENTS slot of the FUNCTION_DECL.
-
FLAGS is just used for `grokclassfn'.
QUALS say what special qualifies should apply to the object
pointed to by `this'. */
tree
-do_friend (tree ctype, tree declarator, tree decl, tree parmdecls,
+do_friend (tree ctype, tree declarator, tree decl,
tree attrlist, enum overload_flags flags, tree quals,
int funcdef_flag)
{
@@ -424,7 +420,6 @@ do_friend (tree ctype, tree declarator, tree decl, tree parmdecls,
Note that because classes all wind up being top-level
in their scope, their friend wind up in top-level scope as well. */
- DECL_ARGUMENTS (decl) = parmdecls;
if (funcdef_flag)
SET_DECL_FRIEND_CONTEXT (decl, current_class_type);
diff --git a/gcc/cp/init.c b/gcc/cp/init.c
index e74a5980098..2459f56f206 100644
--- a/gcc/cp/init.c
+++ b/gcc/cp/init.c
@@ -1,6 +1,6 @@
/* Handle initialization things in C++.
Copyright (C) 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com)
This file is part of GCC.
@@ -371,6 +371,9 @@ perform_member_init (tree member, tree init)
/* member traversal: note it leaves init NULL */
else if (TREE_CODE (type) == REFERENCE_TYPE)
pedwarn ("uninitialized reference member `%D'", member);
+ else if (CP_TYPE_CONST_P (type))
+ pedwarn ("uninitialized member `%D' with `const' type `%T'",
+ member, type);
}
else if (TREE_CODE (init) == TREE_LIST)
/* There was an explicit member initialization. Do some work
@@ -1150,9 +1153,13 @@ build_init (tree decl, tree init, int flags)
{
tree expr;
- if (IS_AGGR_TYPE (TREE_TYPE (decl))
- || TREE_CODE (TREE_TYPE (decl)) == ARRAY_TYPE)
+ if (TREE_CODE (TREE_TYPE (decl)) == ARRAY_TYPE)
expr = build_aggr_init (decl, init, flags);
+ else if (CLASS_TYPE_P (TREE_TYPE (decl)))
+ expr = build_special_member_call (decl, complete_ctor_identifier,
+ build_tree_list (NULL_TREE, init),
+ TYPE_BINFO (TREE_TYPE (decl)),
+ LOOKUP_NORMAL|flags);
else
expr = build (INIT_EXPR, TREE_TYPE (decl), decl, init);
@@ -1251,8 +1258,8 @@ expand_default_init (tree binfo, tree true_exp, tree exp, tree init, int flags)
from TRUE_EXP. In constructors, we don't know anything about
the value being initialized.
- FLAGS is just passes to `build_method_call'. See that function for
- its description. */
+ FLAGS is just passed to `build_new_method_call'. See that function
+ for its description. */
static void
expand_aggr_init_1 (tree binfo, tree true_exp, tree exp, tree init, int flags)
@@ -1559,16 +1566,20 @@ build_offset_ref (tree type, tree name, bool address_p)
a class derived from that class (_class.base.init_). */
if (DECL_NONSTATIC_MEMBER_FUNCTION_P (member))
{
+ /* Build a representation of a the qualified name suitable
+ for use as the operand to "&" -- even though the "&" is
+ not actually present. */
+ member = build (OFFSET_REF, TREE_TYPE (member), decl, member);
/* In Microsoft mode, treat a non-static member function as if
it were a pointer-to-member. */
if (flag_ms_extensions)
{
- member = build (OFFSET_REF, TREE_TYPE (member), decl, member);
PTRMEM_OK_P (member) = 1;
return build_unary_op (ADDR_EXPR, member, 0);
}
- error ("invalid use of non-static member function `%D'", member);
- return error_mark_node;
+ error ("invalid use of non-static member function `%D'",
+ TREE_OPERAND (member, 1));
+ return member;
}
else if (TREE_CODE (member) == FIELD_DECL)
{
@@ -1610,8 +1621,12 @@ decl_constant_value (tree decl)
TREE_OPERAND (decl, 0), d1, d2);
}
- if (TREE_READONLY_DECL_P (decl)
- && ! TREE_THIS_VOLATILE (decl)
+ if (DECL_P (decl)
+ && (/* Enumeration constants are constant. */
+ TREE_CODE (decl) == CONST_DECL
+ /* And so are variables with a 'const' type -- unless they
+ are also 'volatile'. */
+ || CP_TYPE_CONST_NON_VOLATILE_P (TREE_TYPE (decl)))
&& DECL_INITIAL (decl)
&& DECL_INITIAL (decl) != error_mark_node
/* This is invalid if initial value is not constant.
@@ -1907,7 +1922,7 @@ static tree
build_new_1 (tree exp)
{
tree placement, init;
- tree true_type, size, rval, t;
+ tree true_type, size, rval;
/* The type of the new-expression. (This type is always a pointer
type.) */
tree pointer_type;
@@ -1948,6 +1963,7 @@ build_new_1 (tree exp)
address of the first array element. This node is a VAR_DECL, and
is therefore reusable. */
tree data_addr;
+ tree init_preeval_expr = NULL_TREE;
placement = TREE_OPERAND (exp, 0);
type = TREE_OPERAND (exp, 1);
@@ -2012,12 +2028,12 @@ build_new_1 (tree exp)
use_java_new = 1;
if (!get_global_value_if_present (get_identifier (alloc_name),
&alloc_decl))
- {
+ {
error ("call to Java constructor with `%s' undefined", alloc_name);
return error_mark_node;
}
else if (really_overloaded_fn (alloc_decl))
- {
+ {
error ("`%D' should never be overloaded", alloc_decl);
return error_mark_node;
}
@@ -2031,6 +2047,7 @@ build_new_1 (tree exp)
else
{
tree fnname;
+ tree fns;
fnname = ansi_opname (code);
@@ -2049,11 +2066,18 @@ build_new_1 (tree exp)
}
/* Create the argument list. */
args = tree_cons (NULL_TREE, size, placement);
- /* Call the function. */
- alloc_call = build_method_call (build_dummy_object (true_type),
- fnname, args,
- TYPE_BINFO (true_type),
- LOOKUP_NORMAL);
+ /* Do name-lookup to find the appropriate operator. */
+ fns = lookup_fnfields (true_type, fnname, /*protect=*/2);
+ if (TREE_CODE (fns) == TREE_LIST)
+ {
+ error ("request for member `%D' is ambiguous", fnname);
+ print_candidates (fns);
+ return error_mark_node;
+ }
+ alloc_call = build_new_method_call (build_dummy_object (true_type),
+ fns, args,
+ /*conversion_path=*/NULL_TREE,
+ LOOKUP_NORMAL);
}
else
{
@@ -2108,18 +2132,8 @@ build_new_1 (tree exp)
placement delete. */
if (placement_allocation_fn_p)
{
- tree inits = NULL_TREE;
- t = TREE_CHAIN (TREE_OPERAND (alloc_call, 1));
- for (; t; t = TREE_CHAIN (t))
- if (TREE_SIDE_EFFECTS (TREE_VALUE (t)))
- {
- tree init;
- TREE_VALUE (t) = stabilize_expr (TREE_VALUE (t), &init);
- if (inits)
- inits = build (COMPOUND_EXPR, void_type_node, inits, init);
- else
- inits = init;
- }
+ tree inits;
+ stabilize_call (alloc_call, &inits);
if (inits)
alloc_expr = build (COMPOUND_EXPR, TREE_TYPE (alloc_expr), inits,
alloc_expr);
@@ -2162,27 +2176,43 @@ build_new_1 (tree exp)
data_addr = alloc_node;
}
- /* Now initialize the allocated object. */
+ /* Now initialize the allocated object. Note that we preevaluate the
+ initialization expression, apart from the actual constructor call or
+ assignment--we do this because we want to delay the allocation as long
+ as possible in order to minimize the size of the exception region for
+ placement delete. */
if (is_initialized)
{
+ bool stable;
+
init_expr = build_indirect_ref (data_addr, NULL);
if (init == void_zero_node)
init = build_default_init (full_type, nelts);
- else if (init && pedantic && has_array)
+ else if (init && has_array)
pedwarn ("ISO C++ forbids initialization in array new");
if (has_array)
- init_expr
- = build_vec_init (init_expr,
- cp_build_binary_op (MINUS_EXPR, outer_nelts,
- integer_one_node),
- init, /*from_array=*/0);
+ {
+ init_expr
+ = build_vec_init (init_expr,
+ cp_build_binary_op (MINUS_EXPR, outer_nelts,
+ integer_one_node),
+ init, /*from_array=*/0);
+
+ /* An array initialization is stable because the initialization
+ of each element is a full-expression, so the temporaries don't
+ leak out. */
+ stable = true;
+ }
else if (TYPE_NEEDS_CONSTRUCTING (type))
- init_expr = build_special_member_call (init_expr,
- complete_ctor_identifier,
- init, TYPE_BINFO (true_type),
- LOOKUP_NORMAL);
+ {
+ init_expr = build_special_member_call (init_expr,
+ complete_ctor_identifier,
+ init, TYPE_BINFO (true_type),
+ LOOKUP_NORMAL);
+ stable = stabilize_init (init_expr, &init_preeval_expr);
+ }
else
{
/* We are processing something like `new int (10)', which
@@ -2190,15 +2220,13 @@ build_new_1 (tree exp)
if (TREE_CODE (init) == TREE_LIST)
init = build_x_compound_expr_from_list (init, "new initializer");
-
+
else if (TREE_CODE (init) == CONSTRUCTOR
&& TREE_TYPE (init) == NULL_TREE)
- {
- pedwarn ("ISO C++ forbids aggregate initializer to new");
- init = digest_init (type, init, 0);
- }
+ abort ();
init_expr = build_modify_expr (init_expr, INIT_EXPR, init);
+ stable = stabilize_init (init_expr, &init_preeval_expr);
}
if (init_expr == error_mark_node)
@@ -2228,31 +2256,24 @@ build_new_1 (tree exp)
(placement_allocation_fn_p
? alloc_call : NULL_TREE));
- /* Ack! First we allocate the memory. Then we set our sentry
- variable to true, and expand a cleanup that deletes the memory
- if sentry is true. Then we run the constructor, and finally
- clear the sentry.
-
- It would be nice to be able to handle this without the sentry
- variable, perhaps with a TRY_CATCH_EXPR, but this doesn't
- work. We allocate the space first, so if there are any
- temporaries with cleanups in the constructor args we need this
- EH region to extend until end of full-expression to preserve
- nesting.
-
- If the backend had some mechanism so that we could force the
- allocation to be expanded after all the other args to the
- constructor, that would fix the nesting problem and we could
- do away with this complexity. But that would complicate other
- things; in particular, it would make it difficult to bail out
- if the allocation function returns null. Er, no, it wouldn't;
- we just don't run the constructor. The standard says it's
- unspecified whether or not the args are evaluated.
-
- FIXME FIXME FIXME inline invisible refs as refs. That way we
- can preevaluate value parameters. */
-
- if (cleanup)
+ if (!cleanup)
+ /* We're done. */;
+ else if (stable)
+ /* This is much simpler if we were able to preevaluate all of
+ the arguments to the constructor call. */
+ init_expr = build (TRY_CATCH_EXPR, void_type_node,
+ init_expr, cleanup);
+ else
+ /* Ack! First we allocate the memory. Then we set our sentry
+ variable to true, and expand a cleanup that deletes the
+ memory if sentry is true. Then we run the constructor, and
+ finally clear the sentry.
+
+ We need to do this because we allocate the space first, so
+ if there are any temporaries with cleanups in the
+ constructor args and we weren't able to preevaluate them, we
+ need this EH region to extend until end of full-expression
+ to preserve nesting. */
{
tree end, sentry, begin;
@@ -2273,6 +2294,7 @@ build_new_1 (tree exp)
build (COMPOUND_EXPR, void_type_node, init_expr,
end));
}
+
}
}
else
@@ -2305,6 +2327,9 @@ build_new_1 (tree exp)
rval = build (COMPOUND_EXPR, TREE_TYPE (rval), alloc_expr, rval);
}
+ if (init_preeval_expr)
+ rval = build (COMPOUND_EXPR, TREE_TYPE (rval), init_preeval_expr, rval);
+
/* Convert to the final type. */
rval = build_nop (pointer_type, rval);
@@ -2840,23 +2865,35 @@ build_delete (tree type, tree addr, special_function_kind auto_delete,
if (TREE_CODE (type) == POINTER_TYPE)
{
+ bool complete_p = true;
+
type = TYPE_MAIN_VARIANT (TREE_TYPE (type));
if (TREE_CODE (type) == ARRAY_TYPE)
goto handle_array;
- if (VOID_TYPE_P (type)
- /* We don't want to warn about delete of void*, only other
- incomplete types. Deleting other incomplete types
- invokes undefined behavior, but it is not ill-formed, so
- compile to something that would even do The Right Thing
- (TM) should the type have a trivial dtor and no delete
- operator. */
- || !complete_type_or_diagnostic (type, addr, 1)
- || !IS_AGGR_TYPE (type))
+ /* We don't want to warn about delete of void*, only other
+ incomplete types. Deleting other incomplete types
+ invokes undefined behavior, but it is not ill-formed, so
+ compile to something that would even do The Right Thing
+ (TM) should the type have a trivial dtor and no delete
+ operator. */
+ if (!VOID_TYPE_P (type))
{
- /* Call the builtin operator delete. */
- return build_builtin_delete_call (addr);
+ complete_type (type);
+ if (!COMPLETE_TYPE_P (type))
+ {
+ warning ("possible problem detected in invocation of "
+ "delete operator:");
+ cxx_incomplete_type_diagnostic (addr, type, 1);
+ inform ("neither the destructor nor the class-specific "
+ "operator delete will be called, even if they are "
+ "declared when the class is defined.");
+ complete_p = false;
+ }
}
+ if (VOID_TYPE_P (type) || !complete_p || !IS_AGGR_TYPE (type))
+ /* Call the builtin operator delete. */
+ return build_builtin_delete_call (addr);
if (TREE_SIDE_EFFECTS (addr))
addr = save_expr (addr);
diff --git a/gcc/cp/lex.c b/gcc/cp/lex.c
index 4fb45280e2e..2239c76ca87 100644
--- a/gcc/cp/lex.c
+++ b/gcc/cp/lex.c
@@ -535,7 +535,7 @@ handle_pragma_interface (cpp_reader* dfile ATTRIBUTE_UNUSED )
else if (fname == 0)
main_filename = lbasename (input_filename);
else
- main_filename = ggc_strdup (TREE_STRING_POINTER (fname));
+ main_filename = TREE_STRING_POINTER (fname);
finfo = get_fileinfo (input_filename);
@@ -585,7 +585,7 @@ handle_pragma_implementation (cpp_reader* dfile ATTRIBUTE_UNUSED )
}
else
{
- main_filename = ggc_strdup (TREE_STRING_POINTER (fname));
+ main_filename = TREE_STRING_POINTER (fname);
if (cpp_included (parse_in, main_filename))
warning ("#pragma implementation for %s appears after file is included",
main_filename);
@@ -726,7 +726,8 @@ retrofit_lang_decl (tree t)
ld->u.f.u3sel = TREE_CODE (t) == FUNCTION_DECL ? 1 : 0;
DECL_LANG_SPECIFIC (t) = ld;
- if (current_lang_name == lang_name_cplusplus)
+ if (current_lang_name == lang_name_cplusplus
+ || decl_linkage (t) == lk_none)
SET_DECL_LANGUAGE (t, lang_cplusplus);
else if (current_lang_name == lang_name_c)
SET_DECL_LANGUAGE (t, lang_c);
diff --git a/gcc/cp/mangle.c b/gcc/cp/mangle.c
index a1810d3e72f..760d8b348dd 100644
--- a/gcc/cp/mangle.c
+++ b/gcc/cp/mangle.c
@@ -1,5 +1,5 @@
/* Name mangling for the 3.0 C++ ABI.
- Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Written by Alex Samuel <sameul@codesourcery.com>
This file is part of GCC.
@@ -58,6 +58,7 @@
#include "obstack.h"
#include "toplev.h"
#include "varray.h"
+#include "flags.h"
/* Debugging support. */
@@ -688,18 +689,25 @@ write_encoding (const tree decl)
if (TREE_CODE (decl) == FUNCTION_DECL)
{
tree fn_type;
+ tree d;
if (decl_is_template_id (decl, NULL))
- fn_type = get_mostly_instantiated_function_type (decl);
+ {
+ fn_type = get_mostly_instantiated_function_type (decl);
+ d = NULL_TREE;
+ }
else
- fn_type = TREE_TYPE (decl);
+ {
+ fn_type = TREE_TYPE (decl);
+ d = decl;
+ }
write_bare_function_type (fn_type,
(!DECL_CONSTRUCTOR_P (decl)
&& !DECL_DESTRUCTOR_P (decl)
&& !DECL_CONV_FN_P (decl)
&& decl_is_template_id (decl, NULL)),
- decl);
+ d);
}
}
@@ -2109,9 +2117,9 @@ write_template_arg_literal (const tree value)
{
if (same_type_p (type, boolean_type_node))
{
- if (value == boolean_false_node || integer_zerop (value))
+ if (integer_zerop (value))
write_unsigned_number (0);
- else if (value == boolean_true_node)
+ else if (integer_onep (value))
write_unsigned_number (1);
else
abort ();
diff --git a/gcc/cp/method.c b/gcc/cp/method.c
index 106585571f9..ab5b44f959e 100644
--- a/gcc/cp/method.c
+++ b/gcc/cp/method.c
@@ -286,6 +286,11 @@ make_alias_for_thunk (tree function)
tree alias;
char buf[256];
+#if defined (__CYGWIN__) || defined (__MINGW32__)
+ if (DECL_ONE_ONLY (function))
+ return function;
+#endif
+
ASM_GENERATE_INTERNAL_LABEL (buf, "LTHUNK", thunk_labelno);
thunk_labelno++;
alias = build_decl (FUNCTION_DECL, get_identifier (buf),
@@ -359,7 +364,6 @@ use_thunk (tree thunk_fndecl, bool emit_p)
this translation unit. */
TREE_ADDRESSABLE (function) = 1;
mark_used (function);
- mark_referenced (DECL_ASSEMBLER_NAME (function));
if (!emit_p)
return;
@@ -399,7 +403,8 @@ use_thunk (tree thunk_fndecl, bool emit_p)
push_to_top_level ();
-#ifdef ASM_OUTPUT_DEF
+#if defined (ASM_OUTPUT_DEF) \
+ && !(defined (__CYGWIN__) || defined (__MINGW32__))
if (targetm.have_named_sections)
{
resolve_unique_section (function, 0, flag_function_sections);
@@ -487,6 +492,7 @@ use_thunk (tree thunk_fndecl, bool emit_p)
t = tree_cons (NULL_TREE, a, t);
t = nreverse (t);
t = build_call (alias, t);
+ CALL_FROM_THUNK_P (t) = 1;
t = force_target_expr (TREE_TYPE (t), t);
if (!this_adjusting)
t = thunk_adjust (t, /*this_adjusting=*/0,
diff --git a/gcc/cp/name-lookup.c b/gcc/cp/name-lookup.c
index 4893e5ebda0..90070d93aa6 100644
--- a/gcc/cp/name-lookup.c
+++ b/gcc/cp/name-lookup.c
@@ -439,13 +439,20 @@ supplement_binding (cxx_binding *binding, tree decl)
if (TREE_CODE (decl) == TYPE_DECL && DECL_ARTIFICIAL (decl))
/* The new name is the type name. */
binding->type = decl;
- else if (!bval || bval == error_mark_node)
- /* VALUE is null when push_class_level_binding moves an inherited
- type-binding out of the way to make room for a new value binding.
- It is an error_mark_node when DECL's name has been used in a
- non-class scope prior declaration. In that case, we should have
- already issued a diagnostic; for graceful error recovery purpose,
- pretend this was the intended declaration for that name. */
+ else if (/* BVAL is null when push_class_level_binding moves an
+ inherited type-binding out of the way to make room for a
+ new value binding. */
+ !bval
+ /* BVAL is error_mark_node when DECL's name has been used
+ in a non-class scope prior declaration. In that case,
+ we should have already issued a diagnostic; for graceful
+ error recovery purpose, pretend this was the intended
+ declaration for that name. */
+ || bval == error_mark_node
+ /* If BVAL is a built-in that has not yet been declared,
+ pretend it is not there at all. */
+ || (TREE_CODE (bval) == FUNCTION_DECL
+ && DECL_ANTICIPATED (bval)))
binding->value = decl;
else if (TREE_CODE (bval) == TYPE_DECL && DECL_ARTIFICIAL (bval))
{
@@ -525,9 +532,13 @@ add_decl_to_level (tree decl, cxx_scope *b)
b->names = decl;
b->names_size++;
- /* If appropriate, add decl to separate list of statics. */
+ /* If appropriate, add decl to separate list of statics. We
+ include extern variables because they might turn out to be
+ static later. It's OK for this list to contain a few false
+ positives. */
if (b->kind == sk_namespace)
- if ((TREE_CODE (decl) == VAR_DECL && TREE_STATIC (decl))
+ if ((TREE_CODE (decl) == VAR_DECL
+ && (TREE_STATIC (decl) || DECL_EXTERNAL (decl)))
|| (TREE_CODE (decl) == FUNCTION_DECL
&& (!TREE_PUBLIC (decl) || DECL_DECLARED_INLINE_P (decl))))
VARRAY_PUSH_TREE (b->static_decls, decl);
@@ -701,7 +712,7 @@ pushdecl (tree x)
POP_TIMEVAR_AND_RETURN (TV_NAME_LOOKUP, t);
}
- else if (DECL_MAIN_P (x))
+ else if (DECL_MAIN_P (x) && TREE_CODE (t) == FUNCTION_DECL)
{
/* A redeclaration of main, but not a duplicate of the
previous one.
@@ -936,15 +947,16 @@ pushdecl (tree x)
/* ARM $8.3 */
if (b->kind == sk_function_parms)
{
- error ("declaration of `%#D' shadows a parameter",
- name);
+ error ("declaration of '%#D' shadows a parameter", x);
err = true;
}
}
if (warn_shadow && !err)
- shadow_warning (SW_PARAM,
- IDENTIFIER_POINTER (name), oldlocal);
+ {
+ warning ("declaration of '%#D' shadows a parameter", x);
+ warning ("%Jshadowed declaration is here", oldlocal);
+ }
}
/* Maybe warn if shadowing something else. */
@@ -957,17 +969,25 @@ pushdecl (tree x)
if (IDENTIFIER_CLASS_VALUE (name) != NULL_TREE
&& current_class_ptr
&& !TREE_STATIC (name))
- warning ("declaration of `%s' shadows a member of `this'",
- IDENTIFIER_POINTER (name));
+ {
+ /* Location of previous decl is not useful in this case. */
+ warning ("declaration of '%D' shadows a member of 'this'",
+ x);
+ }
else if (oldlocal != NULL_TREE
&& TREE_CODE (oldlocal) == VAR_DECL)
- shadow_warning (SW_LOCAL,
- IDENTIFIER_POINTER (name), oldlocal);
+ {
+ warning ("declaration of '%D' shadows a previous local", x);
+ warning ("%Jshadowed declaration is here", oldlocal);
+ }
else if (oldglobal != NULL_TREE
&& TREE_CODE (oldglobal) == VAR_DECL)
/* XXX shadow warnings in outer-more namespaces */
- shadow_warning (SW_GLOBAL,
- IDENTIFIER_POINTER (name), oldglobal);
+ {
+ warning ("declaration of '%D' shadows a global declaration",
+ x);
+ warning ("%Jshadowed declaration is here", oldglobal);
+ }
}
}
@@ -1411,7 +1431,8 @@ innermost_nonclass_level (void)
void
maybe_push_cleanup_level (tree type)
{
- if (TYPE_HAS_NONTRIVIAL_DESTRUCTOR (type)
+ if (type != error_mark_node
+ && TYPE_HAS_NONTRIVIAL_DESTRUCTOR (type)
&& current_binding_level->more_cleanups_ok == 0)
{
begin_scope (sk_cleanup, NULL);
@@ -2198,9 +2219,21 @@ do_nonmember_using_decl (tree scope, tree name, tree oldval, tree oldtype,
if (tmp1)
continue;
+ /* If we are adding to an existing OVERLOAD, then we no
+ longer know the type of the set of functions. */
+ if (*newval && TREE_CODE (*newval) == OVERLOAD)
+ TREE_TYPE (*newval) = unknown_type_node;
+ /* Add this new function to the set. */
*newval = build_overload (OVL_CURRENT (tmp), *newval);
+ /* If there is only one function, then we use its type. (A
+ using-declaration naming a single function can be used in
+ contexts where overload resolution cannot be
+ performed.) */
if (TREE_CODE (*newval) != OVERLOAD)
- *newval = ovl_cons (*newval, NULL_TREE);
+ {
+ *newval = ovl_cons (*newval, NULL_TREE);
+ TREE_TYPE (*newval) = TREE_TYPE (OVL_CURRENT (tmp));
+ }
OVL_USED (*newval) = 1;
}
}
@@ -2263,7 +2296,10 @@ do_local_using_decl (tree decl, tree scope, tree name)
push_local_binding (name, newval, PUSH_USING);
}
if (newtype)
- set_identifier_type_value (name, newtype);
+ {
+ push_local_binding (name, newtype, PUSH_USING);
+ set_identifier_type_value (name, newtype);
+ }
}
/* Return the type that should be used when TYPE's name is preceded
@@ -2479,15 +2515,30 @@ is_ancestor (tree root, tree child)
}
}
-/* Enter a class or namespace scope. */
+/* Enter the class or namespace scope indicated by T. Returns TRUE iff
+ pop_scope should be called later to exit this scope. */
-void
+bool
push_scope (tree t)
{
+ bool pop = true;
+
if (TREE_CODE (t) == NAMESPACE_DECL)
push_decl_namespace (t);
- else if CLASS_TYPE_P (t)
- push_nested_class (t);
+ else if (CLASS_TYPE_P (t))
+ {
+ if (!at_class_scope_p ()
+ || !same_type_p (current_class_type, t))
+ push_nested_class (t);
+ else
+ /* T is the same as the current scope. There is therefore no
+ need to re-enter the scope. Since we are not actually
+ pushing a new scope, our caller should not call
+ pop_scope. */
+ pop = false;
+ }
+
+ return pop;
}
/* Leave scope pushed by push_scope. */
@@ -2721,6 +2772,41 @@ push_class_level_binding (tree name, tree x)
if (TYPE_BEING_DEFINED (current_class_type))
check_template_shadow (x);
+ /* [class.mem]
+
+ If T is the name of a class, then each of the following shall
+ have a name different from T:
+
+ -- every static data member of class T;
+
+ -- every member of class T that is itself a type;
+
+ -- every enumerator of every member of class T that is an
+ enumerated type;
+
+ -- every member of every anonymous union that is a member of
+ class T.
+
+ (Non-static data members were also forbidden to have the same
+ name as T until TC1.) */
+ if ((TREE_CODE (x) == VAR_DECL
+ || TREE_CODE (x) == CONST_DECL
+ || (TREE_CODE (x) == TYPE_DECL
+ && !DECL_SELF_REFERENCE_P (x))
+ /* A data member of an anonymous union. */
+ || (TREE_CODE (x) == FIELD_DECL
+ && DECL_CONTEXT (x) != current_class_type))
+ && DECL_NAME (x) == constructor_name (current_class_type))
+ {
+ tree scope = context_for_name_lookup (x);
+ if (TYPE_P (scope) && same_type_p (scope, current_class_type))
+ {
+ error ("`%D' has the same name as the class in which it is declared",
+ x);
+ POP_TIMEVAR_AND_RETURN (TV_NAME_LOOKUP, false);
+ }
+ }
+
/* If this declaration shadows a declaration from an enclosing
class, then we will need to restore IDENTIFIER_CLASS_VALUE when
we leave this class. Record the shadowed declaration here. */
@@ -4380,11 +4466,15 @@ lookup_arg_dependent (tree name, tree fns, tree args)
we found were brought into the current namespace via a using
declaration, we have not really checked the namespace from which
they came. Therefore, we check all namespaces here -- unless the
- function we have is from the current namespace. */
+ function we have is from the current namespace. Even then, we
+ must check all namespaces if the function is a local
+ declaration; any other declarations present at namespace scope
+ should be visible during argument-dependent lookup. */
if (fns)
fn = OVL_CURRENT (fns);
if (fn && TREE_CODE (fn) == FUNCTION_DECL
- && CP_DECL_CONTEXT (fn) != current_decl_namespace ())
+ && (CP_DECL_CONTEXT (fn) != current_decl_namespace ()
+ || DECL_LOCAL_FUNCTION_P (fn)))
k.namespaces = NULL_TREE;
else
/* Setting NAMESPACES is purely an optimization; it prevents
@@ -4688,7 +4778,7 @@ store_bindings (tree names, cxx_saved_binding *old_bindings)
}
void
-maybe_push_to_top_level (int pseudo)
+push_to_top_level (void)
{
struct saved_scope *s;
struct cp_binding_level *b;
@@ -4723,7 +4813,7 @@ maybe_push_to_top_level (int pseudo)
inserted into namespace level, finish_file wouldn't find them
when doing pending instantiations. Therefore, don't stop at
namespace level, but continue until :: . */
- if (global_scope_p (b) || (pseudo && b->kind == sk_template_parms))
+ if (global_scope_p (b))
break;
old_bindings = store_bindings (b->names, old_bindings);
@@ -4741,7 +4831,6 @@ maybe_push_to_top_level (int pseudo)
s->bindings = b;
s->need_pop_function_context = need_pop;
s->function_decl = current_function_decl;
- s->last_parms = last_function_parms;
scope_chain = s;
current_function_decl = NULL_TREE;
@@ -4752,12 +4841,6 @@ maybe_push_to_top_level (int pseudo)
}
void
-push_to_top_level (void)
-{
- maybe_push_to_top_level (0);
-}
-
-void
pop_from_top_level (void)
{
struct saved_scope *s = scope_chain;
@@ -4785,7 +4868,6 @@ pop_from_top_level (void)
if (s->need_pop_function_context)
pop_function_context_from (NULL_TREE);
current_function_decl = s->function_decl;
- last_function_parms = s->last_parms;
timevar_pop (TV_NAME_LOOKUP);
}
diff --git a/gcc/cp/name-lookup.h b/gcc/cp/name-lookup.h
index d2fe5946a06..83775752053 100644
--- a/gcc/cp/name-lookup.h
+++ b/gcc/cp/name-lookup.h
@@ -215,7 +215,7 @@ struct cp_binding_level GTY(())
/* True if this scope is an SK_TEMPLATE_SPEC scope. This field is
only valid if KIND == SK_TEMPLATE_PARMS. */
- bool explicit_spec_p : 1;
+ BOOL_BITFIELD explicit_spec_p : 1;
/* true means make a BLOCK for this level regardless of all else. */
unsigned keep : 1;
@@ -264,11 +264,10 @@ extern void print_binding_stack (void);
extern void print_binding_level (cxx_scope *);
extern void push_to_top_level (void);
extern void pop_from_top_level (void);
-extern void maybe_push_to_top_level (int);
extern void pop_everything (void);
extern void keep_next_level (bool);
extern bool is_ancestor (tree, tree);
-extern void push_scope (tree);
+extern bool push_scope (tree);
extern void pop_scope (tree);
extern void push_namespace (tree);
diff --git a/gcc/cp/optimize.c b/gcc/cp/optimize.c
index 1ddffc9c76c..5ada1312e59 100644
--- a/gcc/cp/optimize.c
+++ b/gcc/cp/optimize.c
@@ -1,5 +1,6 @@
/* Perform optimizations on tree structure.
- Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004
+ Free Software Foundation, Inc.
Written by Mark Michell (mark@codesourcery.com).
This file is part of GCC.
@@ -231,10 +232,6 @@ maybe_clone_body (tree fn)
/* Clone the body. */
clone_body (clone, fn, decl_map);
- /* There are as many statements in the clone as in the
- original. */
- DECL_ESTIMATED_INSNS (clone) = DECL_ESTIMATED_INSNS (fn);
-
/* Clean up. */
splay_tree_delete (decl_map);
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
index 481864b1095..fede71b59af 100644
--- a/gcc/cp/parser.c
+++ b/gcc/cp/parser.c
@@ -72,6 +72,8 @@ typedef struct cp_token GTY (())
/* If this token is a keyword, this value indicates which keyword.
Otherwise, this value is RID_MAX. */
ENUM_BITFIELD (rid) keyword : 8;
+ /* Token flags. */
+ unsigned char flags;
/* The value associated with this token, if any. */
tree value;
/* The location at which this token was found. */
@@ -597,7 +599,7 @@ cp_lexer_get_preprocessor_token (cp_lexer *lexer ATTRIBUTE_UNUSED ,
while (!done)
{
/* Get a new token from the preprocessor. */
- token->type = c_lex (&token->value);
+ token->type = c_lex_with_flags (&token->value, &token->flags);
/* Issue messages about tokens we cannot process. */
switch (token->type)
{
@@ -1521,7 +1523,7 @@ static tree cp_parser_class_name
static tree cp_parser_class_specifier
(cp_parser *);
static tree cp_parser_class_head
- (cp_parser *, bool *);
+ (cp_parser *, bool *, tree *);
static enum tag_types cp_parser_class_key
(cp_parser *);
static void cp_parser_member_specification_opt
@@ -1667,8 +1669,6 @@ static tree cp_parser_sizeof_operand
(cp_parser *, enum rid);
static bool cp_parser_declares_only_class_p
(cp_parser *);
-static tree cp_parser_fold_non_dependent_expr
- (tree);
static bool cp_parser_friend_p
(tree);
static cp_token *cp_parser_require
@@ -1681,6 +1681,8 @@ static bool cp_parser_next_token_starts_class_definition_p
(cp_parser *);
static bool cp_parser_next_token_ends_template_argument_p
(cp_parser *);
+static bool cp_parser_nth_token_starts_template_argument_list_p
+ (cp_parser *, size_t);
static enum tag_types cp_parser_token_is_class_key
(cp_token *);
static void cp_parser_check_class_key
@@ -1717,8 +1719,8 @@ static void cp_parser_check_for_definition_in_return_type
(tree, int);
static void cp_parser_check_for_invalid_template_id
(cp_parser *, tree);
-static tree cp_parser_non_integral_constant_expression
- (const char *);
+static bool cp_parser_non_integral_constant_expression
+ (cp_parser *, const char *);
static bool cp_parser_diagnose_invalid_type_name
(cp_parser *);
static int cp_parser_skip_to_closing_parenthesis
@@ -1916,14 +1918,24 @@ cp_parser_check_for_invalid_template_id (cp_parser* parser,
}
}
-/* Issue an error message about the fact that THING appeared in a
- constant-expression. Returns ERROR_MARK_NODE. */
+/* If parsing an integral constant-expression, issue an error message
+ about the fact that THING appeared and return true. Otherwise,
+ return false, marking the current expression as non-constant. */
-static tree
-cp_parser_non_integral_constant_expression (const char *thing)
+static bool
+cp_parser_non_integral_constant_expression (cp_parser *parser,
+ const char *thing)
{
- error ("%s cannot appear in a constant-expression", thing);
- return error_mark_node;
+ if (parser->integral_constant_expression_p)
+ {
+ if (!parser->allow_non_integral_constant_expression_p)
+ {
+ error ("%s cannot appear in a constant-expression", thing);
+ return true;
+ }
+ parser->non_integral_constant_expression_p = true;
+ }
+ return false;
}
/* Check for a common situation where a type-name should be present,
@@ -2466,12 +2478,9 @@ cp_parser_primary_expression (cp_parser *parser,
return error_mark_node;
}
/* Pointers cannot appear in constant-expressions. */
- if (parser->integral_constant_expression_p)
- {
- if (!parser->allow_non_integral_constant_expression_p)
- return cp_parser_non_integral_constant_expression ("`this'");
- parser->non_integral_constant_expression_p = true;
- }
+ if (cp_parser_non_integral_constant_expression (parser,
+ "`this'"))
+ return error_mark_node;
return finish_this_expr ();
/* The `operator' keyword can be the beginning of an
@@ -2513,12 +2522,9 @@ cp_parser_primary_expression (cp_parser *parser,
cp_parser_require (parser, CPP_CLOSE_PAREN, "`)'");
/* Using `va_arg' in a constant-expression is not
allowed. */
- if (parser->integral_constant_expression_p)
- {
- if (!parser->allow_non_integral_constant_expression_p)
- return cp_parser_non_integral_constant_expression ("`va_arg'");
- parser->non_integral_constant_expression_p = true;
- }
+ if (cp_parser_non_integral_constant_expression (parser,
+ "`va_arg'"))
+ return error_mark_node;
return build_x_va_arg (expression, type);
}
@@ -2741,7 +2747,8 @@ cp_parser_id_expression (cp_parser *parser,
we can avoid the template-id case. This is an optimization
for this common case. */
if (token->type == CPP_NAME
- && cp_lexer_peek_nth_token (parser->lexer, 2)->type != CPP_LESS)
+ && !cp_parser_nth_token_starts_template_argument_list_p
+ (parser, 2))
return cp_parser_identifier (parser);
cp_parser_parse_tentatively (parser);
@@ -3113,7 +3120,9 @@ cp_parser_nested_name_specifier_opt (cp_parser *parser,
template-id), nor a `::', then we are not looking at a
nested-name-specifier. */
token = cp_lexer_peek_nth_token (parser->lexer, 2);
- if (token->type != CPP_LESS && token->type != CPP_SCOPE)
+ if (token->type != CPP_SCOPE
+ && !cp_parser_nth_token_starts_template_argument_list_p
+ (parser, 2))
break;
}
@@ -3439,14 +3448,12 @@ cp_parser_postfix_expression (cp_parser *parser, bool address_p)
&& !INTEGRAL_OR_ENUMERATION_TYPE_P (type)
/* A cast to pointer or reference type is allowed in the
implementation of "offsetof". */
- && !(parser->in_offsetof_p && POINTER_TYPE_P (type)))
- {
- if (!parser->allow_non_integral_constant_expression_p)
- return (cp_parser_non_integral_constant_expression
- ("a cast to a type other than an integral or "
- "enumeration type"));
- parser->non_integral_constant_expression_p = true;
- }
+ && !(parser->in_offsetof_p && POINTER_TYPE_P (type))
+ && (cp_parser_non_integral_constant_expression
+ (parser,
+ "a cast to a type other than an integral or "
+ "enumeration type")))
+ return error_mark_node;
switch (keyword)
{
@@ -3548,10 +3555,16 @@ cp_parser_postfix_expression (cp_parser *parser, bool address_p)
/* If that didn't work, try an identifier. */
if (!cp_parser_parse_definitely (parser))
id = cp_parser_identifier (parser);
+ /* If we look up a template-id in a non-dependent qualifying
+ scope, there's no need to create a dependent type. */
+ if (TREE_CODE (id) == TYPE_DECL
+ && !dependent_type_p (parser->scope))
+ type = TREE_TYPE (id);
/* Create a TYPENAME_TYPE to represent the type to which the
functional cast is being performed. */
- type = make_typename_type (parser->scope, id,
- /*complain=*/1);
+ else
+ type = make_typename_type (parser->scope, id,
+ /*complain=*/1);
postfix_expression = cp_parser_functional_cast (parser, type);
}
@@ -3692,13 +3705,9 @@ cp_parser_postfix_expression (cp_parser *parser, bool address_p)
idk = CP_ID_KIND_NONE;
/* Array references are not permitted in
constant-expressions. */
- if (parser->integral_constant_expression_p)
- {
- if (!parser->allow_non_integral_constant_expression_p)
- postfix_expression
- = cp_parser_non_integral_constant_expression ("an array reference");
- parser->non_integral_constant_expression_p = true;
- }
+ if (cp_parser_non_integral_constant_expression
+ (parser, "an array reference"))
+ postfix_expression = error_mark_node;
}
break;
@@ -3717,23 +3726,21 @@ cp_parser_postfix_expression (cp_parser *parser, bool address_p)
/* Function calls are not permitted in
constant-expressions. */
- if (parser->integral_constant_expression_p)
+ if (cp_parser_non_integral_constant_expression (parser,
+ "a function call"))
{
- if (!parser->allow_non_integral_constant_expression_p)
- {
- postfix_expression
- = cp_parser_non_integral_constant_expression ("a function call");
- break;
- }
- parser->non_integral_constant_expression_p = true;
+ postfix_expression = error_mark_node;
+ break;
}
koenig_p = false;
if (idk == CP_ID_KIND_UNQUALIFIED)
{
+ /* We do not perform argument-dependent lookup if
+ normal lookup finds a non-function, in accordance
+ with the expected resolution of DR 218. */
if (args
&& (is_overloaded_fn (postfix_expression)
- || DECL_P (postfix_expression)
|| TREE_CODE (postfix_expression) == IDENTIFIER_NODE))
{
koenig_p = true;
@@ -3761,12 +3768,18 @@ cp_parser_postfix_expression (cp_parser *parser, bool address_p)
= build_min_nt (CALL_EXPR, postfix_expression, args);
break;
}
-
- postfix_expression
- = (build_new_method_call
- (instance, fn, args, NULL_TREE,
- (idk == CP_ID_KIND_QUALIFIED
- ? LOOKUP_NONVIRTUAL : LOOKUP_NORMAL)));
+
+ if (BASELINK_P (fn))
+ postfix_expression
+ = (build_new_method_call
+ (instance, fn, args, NULL_TREE,
+ (idk == CP_ID_KIND_QUALIFIED
+ ? LOOKUP_NONVIRTUAL : LOOKUP_NORMAL)));
+ else
+ postfix_expression
+ = finish_call_expr (postfix_expression, args,
+ /*disallow_virtual=*/false,
+ /*koenig_p=*/false);
}
else if (TREE_CODE (postfix_expression) == OFFSET_REF
|| TREE_CODE (postfix_expression) == MEMBER_REF
@@ -3843,6 +3856,11 @@ cp_parser_postfix_expression (cp_parser *parser, bool address_p)
being dependent. */
if (!scope)
scope = error_mark_node;
+ /* If the SCOPE was erroneous, make the various
+ semantic analysis functions exit quickly -- and
+ without issuing additional error messages. */
+ if (scope == error_mark_node)
+ postfix_expression = error_mark_node;
}
/* Consume the `.' or `->' operator. */
@@ -3885,6 +3903,9 @@ cp_parser_postfix_expression (cp_parser *parser, bool address_p)
parser->qualifying_scope = NULL_TREE;
parser->object_scope = NULL_TREE;
}
+ if (scope && name && BASELINK_P (name))
+ adjust_result_of_qualified_name_lookup
+ (name, BINFO_TYPE (BASELINK_BINFO (name)), scope);
postfix_expression
= finish_class_member_access_expr (postfix_expression, name);
}
@@ -3907,18 +3928,14 @@ cp_parser_postfix_expression (cp_parser *parser, bool address_p)
operator. */
parser->context->object_type = NULL_TREE;
/* These operators may not appear in constant-expressions. */
- if (parser->integral_constant_expression_p
- /* The "->" operator is allowed in the implementation
+ if (/* The "->" operator is allowed in the implementation
of "offsetof". The "." operator may appear in the
name of the member. */
- && !parser->in_offsetof_p)
- {
- if (!parser->allow_non_integral_constant_expression_p)
- postfix_expression
- = (cp_parser_non_integral_constant_expression
- (token_type == CPP_DEREF ? "'->'" : "`.'"));
- parser->non_integral_constant_expression_p = true;
- }
+ !parser->in_offsetof_p
+ && (cp_parser_non_integral_constant_expression
+ (parser,
+ token_type == CPP_DEREF ? "'->'" : "`.'")))
+ postfix_expression = error_mark_node;
}
break;
@@ -3931,13 +3948,9 @@ cp_parser_postfix_expression (cp_parser *parser, bool address_p)
= finish_increment_expr (postfix_expression,
POSTINCREMENT_EXPR);
/* Increments may not appear in constant-expressions. */
- if (parser->integral_constant_expression_p)
- {
- if (!parser->allow_non_integral_constant_expression_p)
- postfix_expression
- = cp_parser_non_integral_constant_expression ("an increment");
- parser->non_integral_constant_expression_p = true;
- }
+ if (cp_parser_non_integral_constant_expression (parser,
+ "an increment"))
+ postfix_expression = error_mark_node;
idk = CP_ID_KIND_NONE;
break;
@@ -3950,13 +3963,9 @@ cp_parser_postfix_expression (cp_parser *parser, bool address_p)
= finish_increment_expr (postfix_expression,
POSTDECREMENT_EXPR);
/* Decrements may not appear in constant-expressions. */
- if (parser->integral_constant_expression_p)
- {
- if (!parser->allow_non_integral_constant_expression_p)
- postfix_expression
- = cp_parser_non_integral_constant_expression ("a decrement");
- parser->non_integral_constant_expression_p = true;
- }
+ if (cp_parser_non_integral_constant_expression (parser,
+ "a decrement"))
+ postfix_expression = error_mark_node;
idk = CP_ID_KIND_NONE;
break;
@@ -4097,7 +4106,7 @@ cp_parser_parenthesized_expression_list (cp_parser* parser,
If either of the first two productions is used, sets *SCOPE to the
TYPE specified before the final `::'. Otherwise, *SCOPE is set to
NULL_TREE. *TYPE is set to the TYPE_DECL for the final type-name,
- or ERROR_MARK_NODE if no type-name is present. */
+ or ERROR_MARK_NODE if the parse fails. */
static void
cp_parser_pseudo_destructor_name (cp_parser* parser,
@@ -4137,6 +4146,21 @@ cp_parser_pseudo_destructor_name (cp_parser* parser,
{
/* Look for the type-name. */
*scope = TREE_TYPE (cp_parser_type_name (parser));
+
+ /* If we didn't get an aggregate type, or we don't have ::~,
+ then something has gone wrong. Since the only caller of this
+ function is looking for something after `.' or `->' after a
+ scalar type, most likely the program is trying to get a
+ member of a non-aggregate type. */
+ if (*scope == error_mark_node
+ || cp_lexer_next_token_is_not (parser->lexer, CPP_SCOPE)
+ || cp_lexer_peek_nth_token (parser->lexer, 2)->type != CPP_COMPL)
+ {
+ cp_parser_error (parser, "request for member of non-aggregate type");
+ *type = error_mark_node;
+ return;
+ }
+
/* Look for the `::' token. */
cp_parser_require (parser, CPP_SCOPE, "`::'");
}
@@ -4340,12 +4364,10 @@ cp_parser_unary_expression (cp_parser *parser, bool address_p)
abort ();
}
- if (non_constant_p && parser->integral_constant_expression_p)
- {
- if (!parser->allow_non_integral_constant_expression_p)
- return cp_parser_non_integral_constant_expression (non_constant_p);
- parser->non_integral_constant_expression_p = true;
- }
+ if (non_constant_p
+ && cp_parser_non_integral_constant_expression (parser,
+ non_constant_p))
+ expression = error_mark_node;
return expression;
}
@@ -4426,6 +4448,15 @@ cp_parser_new_expression (cp_parser* parser)
type = cp_parser_type_id (parser);
/* Look for the closing `)'. */
cp_parser_require (parser, CPP_CLOSE_PAREN, "`)'");
+ /* There should not be a direct-new-declarator in this production,
+ but GCC used to allowed this, so we check and emit a sensible error
+ message for this case. */
+ if (cp_lexer_next_token_is (parser->lexer, CPP_OPEN_SQUARE))
+ {
+ error ("array bound forbidden after parenthesized type-id");
+ inform ("try removing the parentheses around the type-id");
+ cp_parser_direct_new_declarator (parser);
+ }
}
/* Otherwise, there must be a new-type-id. */
else
@@ -4437,6 +4468,11 @@ cp_parser_new_expression (cp_parser* parser)
else
initializer = NULL_TREE;
+ /* A new-expression may not appear in an integral constant
+ expression. */
+ if (cp_parser_non_integral_constant_expression (parser, "`new'"))
+ return error_mark_node;
+
/* Create a representation of the new-expression. */
return build_new (placement, type, initializer, global_scope_p);
}
@@ -4665,6 +4701,11 @@ cp_parser_delete_expression (cp_parser* parser)
/* Parse the cast-expression. */
expression = cp_parser_simple_cast_expression (parser);
+ /* A delete-expression may not appear in an integral constant
+ expression. */
+ if (cp_parser_non_integral_constant_expression (parser, "`delete'"))
+ return error_mark_node;
+
return delete_sanity (expression, NULL_TREE, array_p, global_scope_p);
}
@@ -4762,14 +4803,13 @@ cp_parser_cast_expression (cp_parser *parser, bool address_p)
can be used in constant-expressions. */
if (parser->integral_constant_expression_p
&& !dependent_type_p (type)
- && !INTEGRAL_OR_ENUMERATION_TYPE_P (type))
- {
- if (!parser->allow_non_integral_constant_expression_p)
- return (cp_parser_non_integral_constant_expression
- ("a casts to a type other than an integral or "
- "enumeration type"));
- parser->non_integral_constant_expression_p = true;
- }
+ && !INTEGRAL_OR_ENUMERATION_TYPE_P (type)
+ && (cp_parser_non_integral_constant_expression
+ (parser,
+ "a casts to a type other than an integral or "
+ "enumeration type")))
+ return error_mark_node;
+
/* Perform the cast. */
expr = build_c_cast (type, expr);
return expr;
@@ -5122,12 +5162,9 @@ cp_parser_assignment_expression (cp_parser* parser)
rhs = cp_parser_assignment_expression (parser);
/* An assignment may not appear in a
constant-expression. */
- if (parser->integral_constant_expression_p)
- {
- if (!parser->allow_non_integral_constant_expression_p)
- return cp_parser_non_integral_constant_expression ("an assignment");
- parser->non_integral_constant_expression_p = true;
- }
+ if (cp_parser_non_integral_constant_expression (parser,
+ "an assignment"))
+ return error_mark_node;
/* Build the assignment expression. */
expr = build_x_modify_expr (expr,
assignment_operator,
@@ -5265,13 +5302,9 @@ cp_parser_expression (cp_parser* parser)
/* Consume the `,'. */
cp_lexer_consume_token (parser->lexer);
/* A comma operator cannot appear in a constant-expression. */
- if (parser->integral_constant_expression_p)
- {
- if (!parser->allow_non_integral_constant_expression_p)
- expression
- = cp_parser_non_integral_constant_expression ("a comma operator");
- parser->non_integral_constant_expression_p = true;
- }
+ if (cp_parser_non_integral_constant_expression (parser,
+ "a comma operator"))
+ expression = error_mark_node;
}
return expression;
@@ -5454,7 +5487,12 @@ cp_parser_statement (cp_parser* parser, bool in_statement_expr_p)
labeled-statement:
identifier : statement
case constant-expression : statement
- default : statement
+ default : statement
+
+ GNU Extension:
+
+ labeled-statement:
+ case constant-expression ... constant-expression : statement
Returns the new CASE_LABEL, for a `case' or `default' label. For
an ordinary label, returns a LABEL_STMT. */
@@ -5478,7 +5516,8 @@ cp_parser_labeled_statement (cp_parser* parser, bool in_statement_expr_p)
{
case RID_CASE:
{
- tree expr;
+ tree expr, expr_hi;
+ cp_token *ellipsis;
/* Consume the `case' token. */
cp_lexer_consume_token (parser->lexer);
@@ -5486,10 +5525,26 @@ cp_parser_labeled_statement (cp_parser* parser, bool in_statement_expr_p)
expr = cp_parser_constant_expression (parser,
/*allow_non_constant_p=*/false,
NULL);
+
+ ellipsis = cp_lexer_peek_token (parser->lexer);
+ if (ellipsis->type == CPP_ELLIPSIS)
+ {
+ /* Consume the `...' token. */
+ cp_lexer_consume_token (parser->lexer);
+ expr_hi =
+ cp_parser_constant_expression (parser,
+ /*allow_non_constant_p=*/false,
+ NULL);
+ /* We don't need to emit warnings here, as the common code
+ will do this for us. */
+ }
+ else
+ expr_hi = NULL_TREE;
+
if (!parser->in_switch_statement_p)
error ("case label `%E' not within a switch statement", expr);
else
- statement = finish_case_label (expr, NULL_TREE);
+ statement = finish_case_label (expr, expr_hi);
}
break;
@@ -6466,6 +6521,9 @@ cp_parser_simple_declaration (cp_parser* parser,
cp_parser_error (parser, "expected `,' or `;'");
/* Skip tokens until we reach the end of the statement. */
cp_parser_skip_to_end_of_statement (parser);
+ /* If the next token is now a `;', consume it. */
+ if (cp_lexer_next_token_is (parser->lexer, CPP_SEMICOLON))
+ cp_lexer_consume_token (parser->lexer);
goto done;
}
/* After the first time around, a function-definition is not
@@ -6885,6 +6943,7 @@ cp_parser_conversion_function_id (cp_parser* parser)
tree saved_scope;
tree saved_qualifying_scope;
tree saved_object_scope;
+ bool pop_p = false;
/* Look for the `operator' token. */
if (!cp_parser_require_keyword (parser, RID_OPERATOR, "`operator'"))
@@ -6909,11 +6968,11 @@ cp_parser_conversion_function_id (cp_parser* parser)
In order to see that `I' is a type-name in the definition, we
must be in the scope of `S'. */
if (saved_scope)
- push_scope (saved_scope);
+ pop_p = push_scope (saved_scope);
/* Parse the conversion-type-id. */
type = cp_parser_conversion_type_id (parser);
/* Leave the scope of the class, if any. */
- if (saved_scope)
+ if (pop_p)
pop_scope (saved_scope);
/* Restore the saved scope. */
parser->scope = saved_scope;
@@ -7697,13 +7756,19 @@ cp_parser_type_parameter (cp_parser* parser)
/*check_dependency_p=*/true,
/*template_p=*/&is_template,
/*declarator_p=*/false);
- /* Look up the name. */
- default_argument
- = cp_parser_lookup_name (parser, default_argument,
- /*is_type=*/false,
- /*is_template=*/is_template,
- /*is_namespace=*/false,
- /*check_dependency=*/true);
+ if (TREE_CODE (default_argument) == TYPE_DECL)
+ /* If the id-expression was a template-id that refers to
+ a template-class, we already have the declaration here,
+ so no further lookup is needed. */
+ ;
+ else
+ /* Look up the name. */
+ default_argument
+ = cp_parser_lookup_name (parser, default_argument,
+ /*is_type=*/false,
+ /*is_template=*/is_template,
+ /*is_namespace=*/false,
+ /*check_dependency=*/true);
/* See if the default argument is valid. */
default_argument
= check_template_template_default_arg (default_argument);
@@ -7752,7 +7817,7 @@ cp_parser_template_id (cp_parser *parser,
tree template_id;
ptrdiff_t start_of_id;
tree access_check = NULL_TREE;
- cp_token *next_token;
+ cp_token *next_token, *next_token_2;
bool is_identifier;
/* If the next token corresponds to a template-id, there is no need
@@ -7777,7 +7842,8 @@ cp_parser_template_id (cp_parser *parser,
finding a template-id. */
if ((next_token->type != CPP_NAME && next_token->keyword != RID_OPERATOR)
|| (next_token->type == CPP_NAME
- && cp_lexer_peek_nth_token (parser->lexer, 2)->type != CPP_LESS))
+ && !cp_parser_nth_token_starts_template_argument_list_p
+ (parser, 2)))
{
cp_parser_error (parser, "expected template-id");
return error_mark_node;
@@ -7809,15 +7875,60 @@ cp_parser_template_id (cp_parser *parser,
return template;
}
- /* Look for the `<' that starts the template-argument-list. */
- if (!cp_parser_require (parser, CPP_LESS, "`<'"))
+ /* If we find the sequence `[:' after a template-name, it's probably
+ a digraph-typo for `< ::'. Substitute the tokens and check if we can
+ parse correctly the argument list. */
+ next_token = cp_lexer_peek_nth_token (parser->lexer, 1);
+ next_token_2 = cp_lexer_peek_nth_token (parser->lexer, 2);
+ if (next_token->type == CPP_OPEN_SQUARE
+ && next_token->flags & DIGRAPH
+ && next_token_2->type == CPP_COLON
+ && !(next_token_2->flags & PREV_WHITE))
{
- pop_deferring_access_checks ();
- return error_mark_node;
+ cp_parser_parse_tentatively (parser);
+ /* Change `:' into `::'. */
+ next_token_2->type = CPP_SCOPE;
+ /* Consume the first token (CPP_OPEN_SQUARE - which we pretend it is
+ CPP_LESS. */
+ cp_lexer_consume_token (parser->lexer);
+ /* Parse the arguments. */
+ arguments = cp_parser_enclosed_template_argument_list (parser);
+ if (!cp_parser_parse_definitely (parser))
+ {
+ /* If we couldn't parse an argument list, then we revert our changes
+ and return simply an error. Maybe this is not a template-id
+ after all. */
+ next_token_2->type = CPP_COLON;
+ cp_parser_error (parser, "expected `<'");
+ pop_deferring_access_checks ();
+ return error_mark_node;
+ }
+ /* Otherwise, emit an error about the invalid digraph, but continue
+ parsing because we got our argument list. */
+ pedwarn ("`<::' cannot begin a template-argument list");
+ inform ("`<:' is an alternate spelling for `['. Insert whitespace "
+ "between `<' and `::'");
+ if (!flag_permissive)
+ {
+ static bool hint;
+ if (!hint)
+ {
+ inform ("(if you use `-fpermissive' G++ will accept your code)");
+ hint = true;
+ }
+ }
+ }
+ else
+ {
+ /* Look for the `<' that starts the template-argument-list. */
+ if (!cp_parser_require (parser, CPP_LESS, "`<'"))
+ {
+ pop_deferring_access_checks ();
+ return error_mark_node;
+ }
+ /* Parse the arguments. */
+ arguments = cp_parser_enclosed_template_argument_list (parser);
}
-
- /* Parse the arguments. */
- arguments = cp_parser_enclosed_template_argument_list (parser);
/* Build a representation of the specialization. */
if (TREE_CODE (template) == IDENTIFIER_NODE)
@@ -7957,7 +8068,7 @@ cp_parser_template_name (cp_parser* parser,
-- but we do not if there is no `<'. */
if (processing_template_decl
- && cp_lexer_next_token_is (parser->lexer, CPP_LESS))
+ && cp_parser_nth_token_starts_template_argument_list_p (parser, 1))
{
/* In a declaration, in a dependent context, we pretend that the
"template" keyword was present in order to improve error
@@ -8016,7 +8127,15 @@ cp_parser_template_name (cp_parser* parser,
*is_identifier = true;
return identifier;
}
- if (template_keyword_p)
+
+ /* If the "template" keyword is present, then there is generally
+ no point in doing name-lookup, so we just return IDENTIFIER.
+ But, if the qualifying scope is non-dependent then we can
+ (and must) do name-lookup normally. */
+ if (template_keyword_p
+ && (!parser->scope
+ || (TYPE_P (parser->scope)
+ && dependent_type_p (parser->scope))))
return identifier;
}
@@ -8316,7 +8435,7 @@ cp_parser_template_argument (cp_parser* parser)
argument = cp_parser_constant_expression (parser,
/*allow_non_constant_p=*/false,
/*non_constant_p=*/NULL);
- argument = cp_parser_fold_non_dependent_expr (argument);
+ argument = fold_non_dependent_expr (argument);
if (!maybe_type_id)
return argument;
if (!cp_parser_next_token_ends_template_argument_p (parser))
@@ -9088,7 +9207,6 @@ cp_parser_elaborated_type_specifier (cp_parser* parser,
warning ("type attributes are honored only at type definition");
type = xref_tag (tag_type, identifier,
- /*attributes=*/NULL_TREE,
(is_friend
|| !is_declaration
|| cp_lexer_next_token_is_not (parser->lexer,
@@ -9729,6 +9847,7 @@ cp_parser_init_declarator (cp_parser* parser,
bool is_non_constant_init;
int ctor_dtor_or_conv_p;
bool friend_p;
+ bool pop_p = false;
/* Assume that this is not the declarator for a function
definition. */
@@ -9886,7 +10005,7 @@ cp_parser_init_declarator (cp_parser* parser,
/* Enter the SCOPE. That way unqualified names appearing in the
initializer will be looked up in SCOPE. */
if (scope)
- push_scope (scope);
+ pop_p = push_scope (scope);
/* Perform deferred access control checks, now that we know in which
SCOPE the declared entity resides. */
@@ -9936,7 +10055,7 @@ cp_parser_init_declarator (cp_parser* parser,
is important to do this before calling cp_finish_decl because it
makes decisions about whether to create DECL_STMTs or not based
on the current scope. */
- if (scope)
+ if (pop_p)
pop_scope (scope);
/* For an in-class declaration, use `grokfield' to create the
@@ -10156,7 +10275,8 @@ cp_parser_direct_declarator (cp_parser* parser,
bool saved_default_arg_ok_p = parser->default_arg_ok_p;
bool saved_in_declarator_p = parser->in_declarator_p;
bool first = true;
-
+ bool pop_p = false;
+
while (true)
{
/* Peek at the next token. */
@@ -10268,15 +10388,20 @@ cp_parser_direct_declarator (cp_parser* parser,
declarator. */
if (first)
{
+ bool saved_in_type_id_in_expr_p;
+
parser->default_arg_ok_p = saved_default_arg_ok_p;
parser->in_declarator_p = saved_in_declarator_p;
/* Consume the `('. */
cp_lexer_consume_token (parser->lexer);
/* Parse the nested declarator. */
+ saved_in_type_id_in_expr_p = parser->in_type_id_in_expr_p;
+ parser->in_type_id_in_expr_p = true;
declarator
= cp_parser_declarator (parser, dcl_kind, ctor_dtor_or_conv_p,
/*parenthesized_p=*/NULL);
+ parser->in_type_id_in_expr_p = saved_in_type_id_in_expr_p;
first = false;
/* Expect a `)'. */
if (!cp_parser_require (parser, CPP_CLOSE_PAREN, "`)'"))
@@ -10317,7 +10442,7 @@ cp_parser_direct_declarator (cp_parser* parser,
/*allow_non_constant=*/true,
&non_constant_p);
if (!non_constant_p)
- bounds = cp_parser_fold_non_dependent_expr (bounds);
+ bounds = fold_non_dependent_expr (bounds);
}
else
bounds = NULL_TREE;
@@ -10414,16 +10539,19 @@ cp_parser_direct_declarator (cp_parser* parser,
/* See if it names ctor, dtor or conv. */
if (TREE_CODE (unqualified_name) == BIT_NOT_EXPR
|| IDENTIFIER_TYPENAME_P (unqualified_name)
- || constructor_name_p (unqualified_name, class_type))
+ || constructor_name_p (unqualified_name, class_type)
+ || (TREE_CODE (unqualified_name) == TYPE_DECL
+ && same_type_p (TREE_TYPE (unqualified_name),
+ class_type)))
*ctor_dtor_or_conv_p = -1;
}
handle_declarator:;
scope = get_scope_of_declarator (declarator);
if (scope)
- /* Any names that appear after the declarator-id for a member
- are looked up in the containing scope. */
- push_scope (scope);
+ /* Any names that appear after the declarator-id for a
+ member are looked up in the containing scope. */
+ pop_p = push_scope (scope);
parser->in_declarator_p = true;
if ((ctor_dtor_or_conv_p && *ctor_dtor_or_conv_p)
|| (declarator
@@ -10448,7 +10576,7 @@ cp_parser_direct_declarator (cp_parser* parser,
cp_parser_error (parser, "expected declarator");
/* If we entered a scope, we must exit it now. */
- if (scope)
+ if (pop_p)
pop_scope (scope);
parser->default_arg_ok_p = saved_default_arg_ok_p;
@@ -10912,6 +11040,7 @@ cp_parser_parameter_declaration_list (cp_parser* parser)
cannot use this technique when inside a template argument
list. */
if (!parser->in_template_argument_list_p
+ && !parser->in_type_id_in_expr_p
&& cp_parser_parsing_tentatively (parser)
&& !cp_parser_committed_to_tentative_parse (parser)
/* However, a parameter-declaration of the form
@@ -11031,11 +11160,11 @@ cp_parser_parameter_declaration (cp_parser *parser,
if (!parser->in_template_argument_list_p
/* In an expression context, having seen:
- (int((char *)...
+ (int((char ...
we cannot be sure whether we are looking at a
- function-type (taking a "char*" as a parameter) or a cast
- of some object of type "char*" to "int". */
+ function-type (taking a "char" as a parameter) or a cast
+ of some object of type "char" to "int". */
&& !parser->in_type_id_in_expr_p
&& cp_parser_parsing_tentatively (parser)
&& !cp_parser_committed_to_tentative_parse (parser)
@@ -11309,10 +11438,14 @@ cp_parser_initializer_clause (cp_parser* parser, bool* non_constant_p)
/* If it is not a `{', then we are looking at an
assignment-expression. */
if (cp_lexer_next_token_is_not (parser->lexer, CPP_OPEN_BRACE))
- initializer
- = cp_parser_constant_expression (parser,
- /*allow_non_constant_p=*/true,
- non_constant_p);
+ {
+ initializer
+ = cp_parser_constant_expression (parser,
+ /*allow_non_constant_p=*/true,
+ non_constant_p);
+ if (!*non_constant_p)
+ initializer = fold_non_dependent_expr (initializer);
+ }
else
{
/* Consume the `{' token. */
@@ -11474,7 +11607,7 @@ cp_parser_class_name (cp_parser *parser,
/* Handle the common case (an identifier, but not a template-id)
efficiently. */
if (token->type == CPP_NAME
- && cp_lexer_peek_nth_token (parser->lexer, 2)->type != CPP_LESS)
+ && !cp_parser_nth_token_starts_template_argument_list_p (parser, 2))
{
tree identifier;
@@ -11522,8 +11655,11 @@ cp_parser_class_name (cp_parser *parser,
/* If this is a typename, create a TYPENAME_TYPE. */
if (typename_p && decl != error_mark_node)
- decl = TYPE_NAME (make_typename_type (scope, decl,
- /*complain=*/1));
+ {
+ decl = make_typename_type (scope, decl, /*complain=*/1);
+ if (decl != error_mark_node)
+ decl = TYPE_NAME (decl);
+ }
/* Check to see that it is really the name of a class. */
if (TREE_CODE (decl) == TEMPLATE_ID_EXPR
@@ -11563,16 +11699,18 @@ cp_parser_class_specifier (cp_parser* parser)
{
cp_token *token;
tree type;
- tree attributes = NULL_TREE;
+ tree attributes;
int has_trailing_semicolon;
bool nested_name_specifier_p;
unsigned saved_num_template_parameter_lists;
+ bool pop_p = false;
push_deferring_access_checks (dk_no_deferred);
/* Parse the class-head. */
type = cp_parser_class_head (parser,
- &nested_name_specifier_p);
+ &nested_name_specifier_p,
+ &attributes);
/* If the class-head was a semantic disaster, skip the entire body
of the class. */
if (!type)
@@ -11601,7 +11739,7 @@ cp_parser_class_specifier (cp_parser* parser)
/* Start the class. */
if (nested_name_specifier_p)
- push_scope (CP_DECL_CONTEXT (TYPE_MAIN_DECL (type)));
+ pop_p = push_scope (CP_DECL_CONTEXT (TYPE_MAIN_DECL (type)));
type = begin_class_definition (type);
if (type == error_mark_node)
/* If the type is erroneous, skip the entire body of the class. */
@@ -11615,18 +11753,15 @@ cp_parser_class_specifier (cp_parser* parser)
missing trailing `;'. */
token = cp_lexer_peek_token (parser->lexer);
has_trailing_semicolon = (token->type == CPP_SEMICOLON);
- /* Look for attributes to apply to this class. */
+ /* Look for trailing attributes to apply to this class. */
if (cp_parser_allow_gnu_extensions_p (parser))
- attributes = cp_parser_attributes_opt (parser);
- /* If we got any attributes in class_head, xref_tag will stick them in
- TREE_TYPE of the type. Grab them now. */
- if (type != error_mark_node)
{
- attributes = chainon (TYPE_ATTRIBUTES (type), attributes);
- TYPE_ATTRIBUTES (type) = NULL_TREE;
- type = finish_struct (type, attributes);
+ tree sub_attr = cp_parser_attributes_opt (parser);
+ attributes = chainon (attributes, sub_attr);
}
- if (nested_name_specifier_p)
+ if (type != error_mark_node)
+ type = finish_struct (type, attributes);
+ if (pop_p)
pop_scope (CP_DECL_CONTEXT (TYPE_MAIN_DECL (type)));
/* If this class is not itself within the scope of another class,
then we need to parse the bodies of all of the queued function
@@ -11688,8 +11823,12 @@ cp_parser_class_specifier (cp_parser* parser)
/* Figure out which function we need to process. */
fn = TREE_VALUE (queue_entry);
+ /* A hack to prevent garbage collection. */
+ function_depth++;
+
/* Parse the function. */
cp_parser_late_parsing_for_member (parser, fn);
+ function_depth--;
}
}
@@ -11728,7 +11867,8 @@ cp_parser_class_specifier (cp_parser* parser)
static tree
cp_parser_class_head (cp_parser* parser,
- bool* nested_name_specifier_p)
+ bool* nested_name_specifier_p,
+ tree *attributes_p)
{
cp_token *token;
tree nested_name_specifier;
@@ -11740,6 +11880,7 @@ cp_parser_class_head (cp_parser* parser,
bool qualified_p = false;
bool invalid_nested_name_p = false;
bool invalid_explicit_specialization_p = false;
+ bool pop_p = false;
unsigned num_templates;
/* Assume no nested-name-specifier will be present. */
@@ -11954,12 +12095,13 @@ cp_parser_class_head (cp_parser* parser,
/* If the class was unnamed, create a dummy name. */
if (!id)
id = make_anon_name ();
- type = xref_tag (class_key, id, attributes, /*globalize=*/false,
+ type = xref_tag (class_key, id, /*globalize=*/false,
parser->num_template_parameter_lists);
}
else
{
tree class_type;
+ bool pop_p = false;
/* Given:
@@ -11986,7 +12128,7 @@ cp_parser_class_head (cp_parser* parser,
class_type = current_class_type;
/* Enter the scope indicated by the nested-name-specifier. */
if (nested_name_specifier)
- push_scope (nested_name_specifier);
+ pop_p = push_scope (nested_name_specifier);
/* Get the canonical version of this type. */
type = TYPE_MAIN_DECL (TREE_TYPE (type));
if (PROCESSING_REAL_TEMPLATE_DECL_P ()
@@ -11996,7 +12138,8 @@ cp_parser_class_head (cp_parser* parser,
if (nested_name_specifier)
{
*nested_name_specifier_p = true;
- pop_scope (nested_name_specifier);
+ if (pop_p)
+ pop_scope (nested_name_specifier);
}
}
/* Indicate whether this class was declared as a `class' or as a
@@ -12013,7 +12156,7 @@ cp_parser_class_head (cp_parser* parser,
is valid. */
if (nested_name_specifier)
- push_scope (nested_name_specifier);
+ pop_p = push_scope (nested_name_specifier);
/* Now, look for the base-clause. */
token = cp_lexer_peek_token (parser->lexer);
if (token->type == CPP_COLON)
@@ -12027,7 +12170,7 @@ cp_parser_class_head (cp_parser* parser,
}
/* Leave the scope given by the nested-name-specifier. We will
enter the class scope itself while processing the members. */
- if (nested_name_specifier)
+ if (pop_p)
pop_scope (nested_name_specifier);
done:
@@ -12036,6 +12179,7 @@ cp_parser_class_head (cp_parser* parser,
end_specialization ();
--parser->num_template_parameter_lists;
}
+ *attributes_p = attributes;
return type;
}
@@ -12690,8 +12834,8 @@ cp_parser_base_specifier (cp_parser* parser)
break;
}
}
- /* It is not uncommon to see programs mechanically, errouneously, use
- the 'typename' keyword to denote (dependent) qualified types
+ /* It is not uncommon to see programs mechanically, errouneously, use
+ the 'typename' keyword to denote (dependent) qualified types
as base classes. */
if (cp_lexer_next_token_is_keyword (parser->lexer, RID_TYPENAME))
{
@@ -13452,20 +13596,22 @@ cp_parser_lookup_name (cp_parser *parser, tree name,
}
else
{
+ bool pop_p = false;
+
/* If PARSER->SCOPE is a dependent type, then it must be a
class type, and we must not be checking dependencies;
otherwise, we would have processed this lookup above. So
that PARSER->SCOPE is not considered a dependent base by
lookup_member, we must enter the scope here. */
if (dependent_p)
- push_scope (parser->scope);
+ pop_p = push_scope (parser->scope);
/* If the PARSER->SCOPE is a a template specialization, it
may be instantiated during name lookup. In that case,
errors may be issued. Even if we rollback the current
tentative parse, those errors are valid. */
decl = lookup_qualified_name (parser->scope, name, is_type,
/*complain=*/true);
- if (dependent_p)
+ if (pop_p)
pop_scope (parser->scope);
}
parser->qualifying_scope = parser->scope;
@@ -13751,12 +13897,26 @@ cp_parser_binary_expression (cp_parser* parser,
++map_node)
if (map_node->token_type == token->type)
{
+ /* Assume that an overloaded operator will not be used. */
+ bool overloaded_p = false;
+
/* Consume the operator token. */
cp_lexer_consume_token (parser->lexer);
/* Parse the right-hand side of the expression. */
rhs = (*fn) (parser);
/* Build the binary tree node. */
- lhs = build_x_binary_op (map_node->tree_type, lhs, rhs);
+ lhs = build_x_binary_op (map_node->tree_type, lhs, rhs,
+ &overloaded_p);
+ /* If the binary operator required the use of an
+ overloaded operator, then this expression cannot be an
+ integral constant-expression. An overloaded operator
+ can be used even if both operands are otherwise
+ permissible in an integral constant-expression if at
+ least one of the operands is of enumeration type. */
+ if (overloaded_p
+ && (cp_parser_non_integral_constant_expression
+ (parser, "calls to overloaded operators")))
+ lhs = error_mark_node;
break;
}
@@ -13897,6 +14057,7 @@ cp_parser_constructor_declarator_p (cp_parser *parser, bool friend_p)
&& !cp_parser_storage_class_specifier_opt (parser))
{
tree type;
+ bool pop_p = false;
unsigned saved_num_template_parameter_lists;
/* Names appearing in the type-specifier should be looked up
@@ -13916,7 +14077,7 @@ cp_parser_constructor_declarator_p (cp_parser *parser, bool friend_p)
return false;
}
}
- push_scope (type);
+ pop_p = push_scope (type);
}
/* Inside the constructor parameter list, surrounding
@@ -13937,7 +14098,7 @@ cp_parser_constructor_declarator_p (cp_parser *parser, bool friend_p)
= saved_num_template_parameter_lists;
/* Leave the scope of the class. */
- if (type)
+ if (pop_p)
pop_scope (type);
constructor_p = !cp_parser_error_occurred (parser);
@@ -14238,12 +14399,23 @@ static tree
cp_parser_functional_cast (cp_parser* parser, tree type)
{
tree expression_list;
+ tree cast;
- expression_list
+ expression_list
= cp_parser_parenthesized_expression_list (parser, false,
/*non_constant_p=*/NULL);
- return build_functional_cast (type, expression_list);
+ cast = build_functional_cast (type, expression_list);
+ /* [expr.const]/1: In an integral constant expression "only type
+ conversions to integral or enumeration type can be used". */
+ if (cast != error_mark_node && !type_dependent_expression_p (type)
+ && !INTEGRAL_OR_ENUMERATION_TYPE_P (TREE_TYPE (type)))
+ {
+ if (cp_parser_non_integral_constant_expression
+ (parser, "a call to a constructor"))
+ return error_mark_node;
+ }
+ return cast;
}
/* Save the tokens that make up the body of a member function defined
@@ -14359,8 +14531,8 @@ cp_parser_enclosed_template_argument_list (cp_parser* parser)
cp_lexer_consume_token (parser->lexer);
}
}
- else
- cp_parser_require (parser, CPP_GREATER, "`>'");
+ else if (!cp_parser_require (parser, CPP_GREATER, "`>'"))
+ error ("missing `>' to terminate the template argument list");
/* The `>' token might be a greater-than operator again now. */
parser->greater_than_is_operator_p
= saved_greater_than_is_operator_p;
@@ -14519,6 +14691,12 @@ cp_parser_late_parsing_default_args (cp_parser *parser, tree fn)
if (DECL_CLASS_SCOPE_P (fn))
pop_nested_class ();
+ /* If the token stream has not been completely used up, then
+ there was extra junk after the end of the default
+ argument. */
+ if (!cp_lexer_next_token_is (parser->lexer, CPP_EOF))
+ cp_parser_error (parser, "expected `,'");
+
/* Restore saved state. */
parser->lexer = saved_lexer;
parser->local_variables_forbidden_p = saved_local_variables_forbidden_p;
@@ -14627,37 +14805,6 @@ cp_parser_declares_only_class_p (cp_parser *parser)
|| cp_lexer_next_token_is (parser->lexer, CPP_COMMA));
}
-/* Simplify EXPR if it is a non-dependent expression. Returns the
- (possibly simplified) expression. */
-
-static tree
-cp_parser_fold_non_dependent_expr (tree expr)
-{
- /* If we're in a template, but EXPR isn't value dependent, simplify
- it. We're supposed to treat:
-
- template <typename T> void f(T[1 + 1]);
- template <typename T> void f(T[2]);
-
- as two declarations of the same function, for example. */
- if (processing_template_decl
- && !type_dependent_expression_p (expr)
- && !value_dependent_expression_p (expr))
- {
- HOST_WIDE_INT saved_processing_template_decl;
-
- saved_processing_template_decl = processing_template_decl;
- processing_template_decl = 0;
- expr = tsubst_copy_and_build (expr,
- /*args=*/NULL_TREE,
- tf_error,
- /*in_decl=*/NULL_TREE,
- /*function_p=*/false);
- processing_template_decl = saved_processing_template_decl;
- }
- return expr;
-}
-
/* DECL_SPECIFIERS is the representation of a decl-specifier-seq.
Returns TRUE iff `friend' appears among the DECL_SPECIFIERS. */
@@ -14821,6 +14968,31 @@ cp_parser_next_token_ends_template_argument_p (cp_parser *parser)
return (token->type == CPP_COMMA || token->type == CPP_GREATER
|| token->type == CPP_RSHIFT);
}
+
+/* Returns TRUE iff the n-th token is a ">", or the n-th is a "[" and the
+ (n+1)-th is a ":" (which is a possible digraph typo for "< ::"). */
+
+static bool
+cp_parser_nth_token_starts_template_argument_list_p (cp_parser * parser,
+ size_t n)
+{
+ cp_token *token;
+
+ token = cp_lexer_peek_nth_token (parser->lexer, n);
+ if (token->type == CPP_LESS)
+ return true;
+ /* Check for the sequence `<::' in the original code. It would be lexed as
+ `[:', where `[' is a digraph, and there is no whitespace before
+ `:'. */
+ if (token->type == CPP_OPEN_SQUARE && token->flags & DIGRAPH)
+ {
+ cp_token *token2;
+ token2 = cp_lexer_peek_nth_token (parser->lexer, n+1);
+ if (token2->type == CPP_COLON && !(token2->flags & PREV_WHITE))
+ return true;
+ }
+ return false;
+}
/* Returns the kind of tag indicated by TOKEN, if it is a class-key,
or none_type otherwise. */
@@ -14940,11 +15112,11 @@ cp_parser_cache_group (cp_parser *parser,
if ((end == CPP_CLOSE_PAREN || depth == 0)
&& cp_lexer_next_token_is (parser->lexer, CPP_SEMICOLON))
return;
- /* Consume the next token. */
- token = cp_lexer_consume_token (parser->lexer);
/* If we've reached the end of the file, stop. */
- if (token->type == CPP_EOF)
+ if (cp_lexer_next_token_is (parser->lexer, CPP_EOF))
return;
+ /* Consume the next token. */
+ token = cp_lexer_consume_token (parser->lexer);
/* Add this token to the tokens we are saving. */
cp_token_cache_push_token (cache, token);
/* See if it starts a new group. */
@@ -15101,14 +15273,6 @@ c_parse_file (void)
the_parser = NULL;
}
-/* Clean up after parsing the entire translation unit. */
-
-void
-free_parser_stacks (void)
-{
- /* Nothing to do. */
-}
-
/* This variable must be provided by every front end. */
int yydebug;
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index 97a7d7852f9..2e761469ec3 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -1035,7 +1035,7 @@ register_specialization (tree spec, tree tmpl, tree args)
the default argument expression is not substituted for in an
instantiation unless and until it is actually needed. */
return spec;
-
+
/* There should be as many levels of arguments as there are
levels of parameters. */
my_friendly_assert (TMPL_ARGS_DEPTH (args)
@@ -1249,6 +1249,7 @@ determine_specialization (tree template_id,
if (TREE_CODE (fn) == TEMPLATE_DECL)
{
tree decl_arg_types;
+ tree fn_arg_types;
/* DECL might be a specialization of FN. */
@@ -1265,8 +1266,16 @@ determine_specialization (tree template_id,
The specialization f<int> is invalid but is not caught
by get_bindings below. */
- if (list_length (TYPE_ARG_TYPES (TREE_TYPE (fn)))
- != list_length (decl_arg_types))
+ fn_arg_types = TYPE_ARG_TYPES (TREE_TYPE (fn));
+ if (list_length (fn_arg_types) != list_length (decl_arg_types))
+ continue;
+
+ /* For a non-static member function, we need to make sure that
+ the const qualification is the same. This can be done by
+ checking the 'this' in the argument list. */
+ if (DECL_NONSTATIC_MEMBER_FUNCTION_P (fn)
+ && !same_type_p (TREE_VALUE (fn_arg_types),
+ TREE_VALUE (decl_arg_types)))
continue;
/* See whether this function might be a specialization of this
@@ -1526,8 +1535,8 @@ copy_default_args_to_explicit_spec (tree decl)
else
new_type = build_function_type (TREE_TYPE (old_type),
new_spec_types);
- new_type = build_type_attribute_variant (new_type,
- TYPE_ATTRIBUTES (old_type));
+ new_type = cp_build_type_attribute_variant (new_type,
+ TYPE_ATTRIBUTES (old_type));
new_type = build_exception_variant (new_type,
TYPE_RAISES_EXCEPTIONS (old_type));
TREE_TYPE (decl) = new_type;
@@ -1901,15 +1910,10 @@ check_explicit_specialization (tree declarator,
/* If we thought that the DECL was a member function, but it
turns out to be specializing a static member function,
- make DECL a static member function as well. We also have
- to adjust last_function_parms to avoid confusing
- start_function later. */
+ make DECL a static member function as well. */
if (DECL_STATIC_FUNCTION_P (tmpl)
&& DECL_NONSTATIC_MEMBER_FUNCTION_P (decl))
- {
- revert_static_member_fn (decl);
- last_function_parms = TREE_CHAIN (last_function_parms);
- }
+ revert_static_member_fn (decl);
/* If this is a specialization of a member template of a
template class. In we want to return the TEMPLATE_DECL,
@@ -2909,10 +2913,10 @@ push_template_decl_real (tree decl, int is_friend)
else
tmpl = DECL_TI_TEMPLATE (decl);
- if (is_member_template (tmpl)
- && DECL_FUNCTION_TEMPLATE_P (tmpl)
+ if (DECL_FUNCTION_TEMPLATE_P (tmpl)
&& DECL_TEMPLATE_INFO (decl) && DECL_TI_ARGS (decl)
- && DECL_TEMPLATE_SPECIALIZATION (decl))
+ && DECL_TEMPLATE_SPECIALIZATION (decl)
+ && is_member_template (tmpl))
{
tree new_tmpl;
@@ -3001,6 +3005,13 @@ push_template_decl_real (tree decl, int is_friend)
}
}
+ /* The DECL_TI_ARGS of DECL contains full set of arguments refering
+ back to its most general template. If TMPL is a specialization,
+ ARGS may only have the innermost set of arguments. Add the missing
+ argument levels if necessary. */
+ if (DECL_TEMPLATE_INFO (tmpl))
+ args = add_outermost_template_args (DECL_TI_ARGS (tmpl), args);
+
info = tree_cons (tmpl, args, NULL_TREE);
if (DECL_IMPLICIT_TYPEDEF_P (decl))
@@ -3099,20 +3110,60 @@ redeclare_class_template (tree type, tree parms)
}
}
+/* Simplify EXPR if it is a non-dependent expression. Returns the
+ (possibly simplified) expression. */
+
+tree
+fold_non_dependent_expr (tree expr)
+{
+ /* If we're in a template, but EXPR isn't value dependent, simplify
+ it. We're supposed to treat:
+
+ template <typename T> void f(T[1 + 1]);
+ template <typename T> void f(T[2]);
+
+ as two declarations of the same function, for example. */
+ if (processing_template_decl
+ && !type_dependent_expression_p (expr)
+ && !value_dependent_expression_p (expr))
+ {
+ HOST_WIDE_INT saved_processing_template_decl;
+
+ saved_processing_template_decl = processing_template_decl;
+ processing_template_decl = 0;
+ expr = tsubst_copy_and_build (expr,
+ /*args=*/NULL_TREE,
+ tf_error,
+ /*in_decl=*/NULL_TREE,
+ /*function_p=*/false);
+ processing_template_decl = saved_processing_template_decl;
+ }
+ return expr;
+}
+
/* Attempt to convert the non-type template parameter EXPR to the
indicated TYPE. If the conversion is successful, return the
converted value. If the conversion is unsuccessful, return
NULL_TREE if we issued an error message, or error_mark_node if we
did not. We issue error messages for out-and-out bad template
parameters, but not simply because the conversion failed, since we
- might be just trying to do argument deduction. By the time this
- function is called, neither TYPE nor EXPR may make use of template
- parameters. */
+ might be just trying to do argument deduction. Both TYPE and EXPR
+ must be non-dependent. */
static tree
convert_nontype_argument (tree type, tree expr)
{
- tree expr_type = TREE_TYPE (expr);
+ tree expr_type;
+
+ /* If we are in a template, EXPR may be non-dependent, but still
+ have a syntactic, rather than semantic, form. For example, EXPR
+ might be a SCOPE_REF, rather than the VAR_DECL to which the
+ SCOPE_REF refers. Preserving the qualifying scope is necessary
+ so that access checking can be performed when the template is
+ instantiated -- but here we need the resolved form so that we can
+ convert the argument. */
+ expr = fold_non_dependent_expr (expr);
+ expr_type = TREE_TYPE (expr);
/* A template-argument for a non-type, non-template
template-parameter shall be one of:
@@ -3136,12 +3187,31 @@ convert_nontype_argument (tree type, tree expr)
--a pointer to member expressed as described in _expr.unary.op_. */
/* An integral constant-expression can include const variables or
- enumerators. Simplify things by folding them to their values,
+. enumerators. Simplify things by folding them to their values,
unless we're about to bind the declaration to a reference
parameter. */
- if (INTEGRAL_TYPE_P (expr_type)
- && TREE_CODE (type) != REFERENCE_TYPE)
- expr = decl_constant_value (expr);
+ if (INTEGRAL_TYPE_P (expr_type) && TREE_CODE (type) != REFERENCE_TYPE)
+ while (true)
+ {
+ tree const_expr = decl_constant_value (expr);
+ /* In a template, the initializer for a VAR_DECL may not be
+ marked as TREE_CONSTANT, in which case decl_constant_value
+ will not return the initializer. Handle that special case
+ here. */
+ if (expr == const_expr
+ && TREE_CODE (expr) == VAR_DECL
+ && DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P (expr)
+ && CP_TYPE_CONST_NON_VOLATILE_P (TREE_TYPE (expr))
+ /* DECL_INITIAL can be NULL if we are processing a
+ variable initialized to an expression involving itself.
+ We know it is initialized to a constant -- but not what
+ constant, yet. */
+ && DECL_INITIAL (expr))
+ const_expr = DECL_INITIAL (expr);
+ if (expr == const_expr)
+ break;
+ expr = fold_non_dependent_expr (const_expr);
+ }
if (is_overloaded_fn (expr))
/* OK for now. We'll check that it has external linkage later.
@@ -4275,11 +4345,7 @@ lookup_template_class (tree d1,
template,
complain, /*require_all_args=*/1);
- if (arglist == error_mark_node
- || (!uses_template_parms (INNERMOST_TEMPLATE_ARGS (arglist))
- && check_instantiated_args (template,
- INNERMOST_TEMPLATE_ARGS (arglist),
- complain)))
+ if (arglist == error_mark_node)
/* We were unable to bind the arguments. */
POP_TIMEVAR_AND_RETURN (TV_NAME_LOOKUP, error_mark_node);
@@ -4340,6 +4406,14 @@ lookup_template_class (tree d1,
well. */
is_partial_instantiation = uses_template_parms (arglist);
+ /* If the deduced arguments are invalid, then the binding
+ failed. */
+ if (!is_partial_instantiation
+ && check_instantiated_args (template,
+ INNERMOST_TEMPLATE_ARGS (arglist),
+ complain))
+ POP_TIMEVAR_AND_RETURN (TV_NAME_LOOKUP, error_mark_node);
+
if (!is_partial_instantiation
&& !PRIMARY_TEMPLATE_P (template)
&& TREE_CODE (CP_DECL_CONTEXT (template)) == NAMESPACE_DECL)
@@ -4717,7 +4791,34 @@ for_each_template_parm (tree t, tree_fn_t fn, void* data, htab_t visited)
int
uses_template_parms (tree t)
{
- return for_each_template_parm (t, 0, 0, NULL);
+ bool dependent_p;
+ int saved_processing_template_decl;
+
+ saved_processing_template_decl = processing_template_decl;
+ if (!saved_processing_template_decl)
+ processing_template_decl = 1;
+ if (TYPE_P (t))
+ dependent_p = dependent_type_p (t);
+ else if (TREE_CODE (t) == TREE_VEC)
+ dependent_p = any_dependent_template_arguments_p (t);
+ else if (TREE_CODE (t) == TREE_LIST)
+ dependent_p = (uses_template_parms (TREE_VALUE (t))
+ || uses_template_parms (TREE_CHAIN (t)));
+ else if (DECL_P (t)
+ || EXPR_P (t)
+ || TREE_CODE (t) == TEMPLATE_PARM_INDEX
+ || TREE_CODE (t) == OVERLOAD
+ || TREE_CODE (t) == BASELINK
+ || TREE_CODE_CLASS (TREE_CODE (t)) == 'c')
+ dependent_p = (type_dependent_expression_p (t)
+ || value_dependent_expression_p (t));
+ else if (t == error_mark_node)
+ dependent_p = false;
+ else
+ abort ();
+ processing_template_decl = saved_processing_template_decl;
+
+ return dependent_p;
}
/* Returns true if T depends on any template parameter with level LEVEL. */
@@ -4919,21 +5020,20 @@ tsubst_friend_function (tree decl, tree args)
duplicate decls since that function will free NEW_FRIEND if
possible. */
new_friend_template_info = DECL_TEMPLATE_INFO (new_friend);
+ new_friend_is_defn =
+ (DECL_INITIAL (DECL_TEMPLATE_RESULT
+ (template_for_substitution (new_friend)))
+ != NULL_TREE);
if (TREE_CODE (new_friend) == TEMPLATE_DECL)
{
/* This declaration is a `primary' template. */
DECL_PRIMARY_TEMPLATE (new_friend) = new_friend;
- new_friend_is_defn
- = DECL_INITIAL (DECL_TEMPLATE_RESULT (new_friend)) != NULL_TREE;
new_friend_result_template_info
= DECL_TEMPLATE_INFO (DECL_TEMPLATE_RESULT (new_friend));
}
else
- {
- new_friend_is_defn = DECL_INITIAL (new_friend) != NULL_TREE;
- new_friend_result_template_info = NULL_TREE;
- }
+ new_friend_result_template_info = NULL_TREE;
/* Inside pushdecl_namespace_level, we will push into the
current namespace. However, the friend function should go
@@ -5229,7 +5329,7 @@ instantiate_class_template (tree type)
it now. */
push_deferring_access_checks (dk_no_deferred);
- maybe_push_to_top_level (uses_template_parms (type));
+ push_to_top_level ();
if (t)
{
@@ -5309,12 +5409,13 @@ instantiate_class_template (tree type)
tree pbases = BINFO_BASETYPES (pbinfo);
tree paccesses = BINFO_BASEACCESSES (pbinfo);
tree context = TYPE_CONTEXT (type);
+ bool pop_p;
int i;
/* We must enter the scope containing the type, as that is where
the accessibility of types named in dependent bases are
looked up from. */
- push_scope (context ? context : global_namespace);
+ pop_p = push_scope (context ? context : global_namespace);
/* Substitute into each of the bases to determine the actual
basetypes. */
@@ -5343,7 +5444,8 @@ instantiate_class_template (tree type)
information. */
xref_basetypes (type, base_list);
- pop_scope (context ? context : global_namespace);
+ if (pop_p)
+ pop_scope (context ? context : global_namespace);
}
/* Now that our base classes are set up, enter the scope of the
@@ -5370,7 +5472,9 @@ instantiate_class_template (tree type)
tree newtag;
newtag = tsubst (tag, args, tf_error, NULL_TREE);
- my_friendly_assert (newtag != error_mark_node, 20010206);
+ if (newtag == error_mark_node)
+ continue;
+
if (TREE_CODE (newtag) != ENUMERAL_TYPE)
{
if (TYPE_LANG_SPECIFIC (tag) && CLASSTYPE_IS_TEMPLATE (tag))
@@ -5787,6 +5891,10 @@ tsubst_default_argument (tree fn, tree type, tree arg)
/* FN is already the desired FUNCTION_DECL. */
push_access_scope (fn);
+ /* The default argument expression should not be considered to be
+ within the scope of FN. Since push_access_scope sets
+ current_function_decl, we must explicitly clear it here. */
+ current_function_decl = NULL_TREE;
arg = tsubst_expr (arg, DECL_TI_ARGS (fn),
tf_error | tf_warning, NULL_TREE);
@@ -5902,6 +6010,9 @@ tsubst_decl (tree t, tree args, tree type, tsubst_flags_t complain)
if (TREE_CODE (decl) == TYPE_DECL)
{
tree new_type = tsubst (TREE_TYPE (t), args, complain, in_decl);
+ if (new_type == error_mark_node)
+ return error_mark_node;
+
TREE_TYPE (r) = new_type;
CLASSTYPE_TI_TEMPLATE (new_type) = r;
DECL_TEMPLATE_RESULT (r) = TYPE_MAIN_DECL (new_type);
@@ -6068,7 +6179,7 @@ tsubst_decl (tree t, tree args, tree type, tsubst_flags_t complain)
/* Clear out the mangled name and RTL for the instantiation. */
SET_DECL_ASSEMBLER_NAME (r, NULL_TREE);
SET_DECL_RTL (r, NULL_RTX);
-
+ DECL_INITIAL (r) = NULL_TREE;
DECL_CONTEXT (r) = ctx;
if (member && DECL_CONV_FN_P (r))
@@ -6440,7 +6551,7 @@ tsubst_function_type (tree t,
TREE_CHAIN (arg_types));
}
fntype = cp_build_qualified_type_real (fntype, TYPE_QUALS (t), complain);
- fntype = build_type_attribute_variant (fntype, TYPE_ATTRIBUTES (t));
+ fntype = cp_build_type_attribute_variant (fntype, TYPE_ATTRIBUTES (t));
return fntype;
}
@@ -7106,13 +7217,13 @@ tsubst (tree t, tree args, tsubst_flags_t complain, tree in_decl)
case TYPEOF_TYPE:
{
- tree e1 = tsubst_expr (TYPE_FIELDS (t), args, complain, in_decl);
- if (e1 == error_mark_node)
- return error_mark_node;
+ tree type;
- return cp_build_qualified_type_real (TREE_TYPE (e1),
+ type = finish_typeof (tsubst_expr (TYPE_FIELDS (t), args, complain,
+ in_decl));
+ return cp_build_qualified_type_real (type,
cp_type_quals (t)
- | cp_type_quals (TREE_TYPE (e1)),
+ | cp_type_quals (type),
complain);
}
@@ -7219,7 +7330,8 @@ tsubst_qualified_id (tree qualified_id, tree args,
else
expr = name;
- my_friendly_assert (!dependent_type_p (scope), 20030729);
+ if (dependent_type_p (scope))
+ return build_nt (SCOPE_REF, scope, expr);
if (!BASELINK_P (name) && !DECL_P (expr))
{
@@ -7228,8 +7340,11 @@ tsubst_qualified_id (tree qualified_id, tree args,
? DECL_TEMPLATE_RESULT (expr) : expr) == TYPE_DECL)
{
if (complain & tf_error)
- error ("`%E' names a type, but a non-type is expected",
- qualified_id);
+ {
+ error ("dependent-name `%E' is parsed as a non-type, but "
+ "instantiation yields a type", qualified_id);
+ inform ("say `typename %E' if a type is meant", qualified_id);
+ }
return error_mark_node;
}
}
@@ -7240,11 +7355,7 @@ tsubst_qualified_id (tree qualified_id, tree args,
/* Remember that there was a reference to this entity. */
if (DECL_P (expr))
- {
- mark_used (expr);
- if (!args && TREE_CODE (expr) == VAR_DECL)
- expr = DECL_INITIAL (expr);
- }
+ mark_used (expr);
if (is_template)
expr = lookup_template_function (expr, template_args);
@@ -7281,6 +7392,7 @@ tsubst_copy (tree t, tree args, tsubst_flags_t complain, tree in_decl)
case PARM_DECL:
r = retrieve_local_specialization (t);
my_friendly_assert (r != NULL, 20020903);
+ mark_used (r);
return r;
case CONST_DECL:
@@ -7632,9 +7744,6 @@ tsubst_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl)
if (t == NULL_TREE || t == error_mark_node)
return t;
- if (processing_template_decl)
- return tsubst_copy (t, args, complain, in_decl);
-
if (!STATEMENT_CODE_P (TREE_CODE (t)))
return tsubst_copy_and_build (t, args, complain, in_decl,
/*function_p=*/false);
@@ -8065,6 +8174,11 @@ tsubst_copy_and_build (tree t,
case INDIRECT_REF:
return build_x_indirect_ref (RECUR (TREE_OPERAND (t, 0)), "unary *");
+ case NOP_EXPR:
+ return build_nop
+ (tsubst (TREE_TYPE (t), args, complain, in_decl),
+ RECUR (TREE_OPERAND (t, 0)));
+
case CAST_EXPR:
return build_functional_cast
(tsubst (TREE_TYPE (t), args, complain, in_decl),
@@ -8153,7 +8267,8 @@ tsubst_copy_and_build (tree t,
return build_x_binary_op
(TREE_CODE (t),
RECUR (TREE_OPERAND (t, 0)),
- RECUR (TREE_OPERAND (t, 1)));
+ RECUR (TREE_OPERAND (t, 1)),
+ /*overloaded_p=*/NULL);
case SCOPE_REF:
return tsubst_qualified_id (t, args, complain, in_decl, /*done=*/true,
@@ -8257,10 +8372,12 @@ tsubst_copy_and_build (tree t,
}
call_args = RECUR (TREE_OPERAND (t, 1));
-
+
+ /* We do not perform argument-dependent lookup if normal
+ lookup finds a non-function, in accordance with the
+ expected resolution of DR 218. */
if (koenig_p
&& (is_overloaded_fn (function)
- || DECL_P (function)
|| TREE_CODE (function) == IDENTIFIER_NODE))
function = perform_koenig_lookup (function, call_args);
@@ -8279,11 +8396,18 @@ tsubst_copy_and_build (tree t,
if (TREE_CODE (function) == OFFSET_REF)
return build_offset_ref_call_from_tree (function, call_args);
if (TREE_CODE (function) == COMPONENT_REF)
- return (build_new_method_call
- (TREE_OPERAND (function, 0),
- TREE_OPERAND (function, 1),
- call_args, NULL_TREE,
- qualified_p ? LOOKUP_NONVIRTUAL : LOOKUP_NORMAL));
+ {
+ if (!BASELINK_P (TREE_OPERAND (function, 1)))
+ return finish_call_expr (function, call_args,
+ /*disallow_virtual=*/false,
+ /*koenig_p=*/false);
+ else
+ return (build_new_method_call
+ (TREE_OPERAND (function, 0),
+ TREE_OPERAND (function, 1),
+ call_args, NULL_TREE,
+ qualified_p ? LOOKUP_NONVIRTUAL : LOOKUP_NORMAL));
+ }
return finish_call_expr (function, call_args,
/*disallow_virtual=*/qualified_p,
koenig_p);
@@ -8439,11 +8563,6 @@ tsubst_copy_and_build (tree t,
case VAR_DECL:
if (args)
t = tsubst_copy (t, args, complain, in_decl);
- else
- /* If there are no ARGS, then we are evaluating a
- non-dependent expression. If the expression is
- non-dependent, the variable must be a constant. */
- t = DECL_INITIAL (t);
return convert_from_reference (t);
case VA_ARG_EXPR:
@@ -8940,17 +9059,14 @@ type_unification_real (tree tparms,
corresponds with a function parameter that contains only
non-deducible template parameters and explicitly specified
template parameters. */
- if (! uses_template_parms (parm))
+ if (!uses_template_parms (parm))
{
tree type;
if (!TYPE_P (arg))
type = TREE_TYPE (arg);
else
- {
- type = arg;
- arg = NULL_TREE;
- }
+ type = arg;
if (strict == DEDUCE_EXACT || strict == DEDUCE_ORDER)
{
@@ -10078,6 +10194,11 @@ more_specialized_class (tree pat1, tree pat2, tree full_args)
tree targs;
int winner = 0;
+ /* Just like what happens for functions, if we are ordering between
+ different class template specializations, we may encounter dependent
+ types in the arguments, and we need our dependency check functions
+ to behave correctly. */
+ ++processing_template_decl;
targs = get_class_bindings (TREE_VALUE (pat1), TREE_PURPOSE (pat1),
add_outermost_template_args (full_args, TREE_PURPOSE (pat2)));
if (targs)
@@ -10087,6 +10208,7 @@ more_specialized_class (tree pat1, tree pat2, tree full_args)
add_outermost_template_args (full_args, TREE_PURPOSE (pat1)));
if (targs)
++winner;
+ --processing_template_decl;
return winner;
}
@@ -11435,8 +11557,11 @@ dependent_type_p_r (tree type)
A type is dependent if it is:
- -- a template parameter. */
- if (TREE_CODE (type) == TEMPLATE_TYPE_PARM)
+ -- a template parameter. Template template parameters are
+ types for us (since TYPE_P holds true for them) so we
+ handle them here. */
+ if (TREE_CODE (type) == TEMPLATE_TYPE_PARM
+ || TREE_CODE (type) == TEMPLATE_TEMPLATE_PARM)
return true;
/* -- a qualified-id with a nested-name-specifier which contains a
class-name that names a dependent type or whose unqualified-id
@@ -11620,10 +11745,21 @@ value_dependent_expression_p (tree expression)
|| TREE_CODE (expression) == REINTERPRET_CAST_EXPR
|| TREE_CODE (expression) == CAST_EXPR)
{
- if (dependent_type_p (TREE_TYPE (expression)))
+ tree type = TREE_TYPE (expression);
+ if (dependent_type_p (type))
return true;
/* A functional cast has a list of operands. */
expression = TREE_OPERAND (expression, 0);
+ if (!expression)
+ {
+ /* If there are no operands, it must be an expression such
+ as "int()". This should not happen for aggregate types
+ because it would form non-constant expressions. */
+ my_friendly_assert (INTEGRAL_OR_ENUMERATION_TYPE_P (type),
+ 20040318);
+
+ return false;
+ }
if (TREE_CODE (expression) == TREE_LIST)
{
do
@@ -11755,11 +11891,16 @@ type_dependent_expression_p (tree expression)
(INNERMOST_TEMPLATE_ARGS (DECL_TI_ARGS (expression)))))
return true;
+ if (TREE_CODE (expression) == TEMPLATE_DECL
+ && !DECL_TEMPLATE_TEMPLATE_PARM_P (expression))
+ return false;
+
if (TREE_TYPE (expression) == unknown_type_node)
{
if (TREE_CODE (expression) == ADDR_EXPR)
return type_dependent_expression_p (TREE_OPERAND (expression, 0));
- if (TREE_CODE (expression) == COMPONENT_REF)
+ if (TREE_CODE (expression) == COMPONENT_REF
+ || TREE_CODE (expression) == OFFSET_REF)
{
if (type_dependent_expression_p (TREE_OPERAND (expression, 0)))
return true;
@@ -11835,13 +11976,18 @@ bool
any_dependent_template_arguments_p (tree args)
{
int i;
-
+ int j;
+
if (!args)
return false;
- for (i = 0; i < TREE_VEC_LENGTH (args); ++i)
- if (dependent_template_arg_p (TREE_VEC_ELT (args, i)))
- return true;
+ for (i = 0; i < TMPL_ARGS_DEPTH (args); ++i)
+ {
+ tree level = TMPL_ARGS_LEVEL (args, i + 1);
+ for (j = 0; j < TREE_VEC_LENGTH (level); ++j)
+ if (dependent_template_arg_p (TREE_VEC_ELT (level, j)))
+ return true;
+ }
return false;
}
@@ -11897,6 +12043,7 @@ resolve_typename_type (tree type, bool only_current_p)
tree name;
tree decl;
int quals;
+ bool pop_p;
my_friendly_assert (TREE_CODE (type) == TYPENAME_TYPE,
20010702);
@@ -11926,7 +12073,7 @@ resolve_typename_type (tree type, bool only_current_p)
/* Enter the SCOPE so that name lookup will be resolved as if we
were in the class definition. In particular, SCOPE will no
longer be considered a dependent type. */
- push_scope (scope);
+ pop_p = push_scope (scope);
/* Look up the declaration. */
decl = lookup_member (scope, name, /*protect=*/0, /*want_type=*/true);
/* Obtain the set of qualifiers applied to the TYPE. */
@@ -11956,7 +12103,8 @@ resolve_typename_type (tree type, bool only_current_p)
if (type != error_mark_node && quals)
type = cp_build_qualified_type (type, quals);
/* Leave the SCOPE. */
- pop_scope (scope);
+ if (pop_p)
+ pop_scope (scope);
return type;
}
@@ -11974,13 +12122,26 @@ build_non_dependent_expr (tree expr)
return expr;
/* Preserve OVERLOADs; the functions must be available to resolve
types. */
- if (TREE_CODE (expr) == OVERLOAD)
+ if (TREE_CODE (expr) == OVERLOAD
+ || TREE_CODE (expr) == FUNCTION_DECL
+ || TREE_CODE (expr) == TEMPLATE_DECL)
return expr;
/* Preserve string constants; conversions from string constants to
"char *" are allowed, even though normally a "const char *"
cannot be used to initialize a "char *". */
if (TREE_CODE (expr) == STRING_CST)
return expr;
+ /* Preserve arithmetic constants, as an optimization -- there is no
+ reason to create a new node. */
+ if (TREE_CODE (expr) == INTEGER_CST || TREE_CODE (expr) == REAL_CST)
+ return expr;
+ /* Preserve THROW_EXPRs -- all throw-expressions have type "void".
+ There is at least one place where we want to know that a
+ particular expression is a throw-expression: when checking a ?:
+ expression, there are special rules if the second or third
+ argument is a throw-expresion. */
+ if (TREE_CODE (expr) == THROW_EXPR)
+ return expr;
if (TREE_CODE (expr) == COND_EXPR)
return build (COND_EXPR,
diff --git a/gcc/cp/rtti.c b/gcc/cp/rtti.c
index a965383ad4e..e9c06160bbe 100644
--- a/gcc/cp/rtti.c
+++ b/gcc/cp/rtti.c
@@ -1,5 +1,5 @@
/* RunTime Type Identification
- Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Mostly written by Jason Merrill (jason@cygnus.com).
@@ -120,7 +120,7 @@ init_rtti_processing (void)
push_namespace (std_identifier);
type_info_type_node
= xref_tag (class_type, get_identifier ("type_info"),
- /*attributes=*/NULL_TREE, true, false);
+ true, false);
pop_namespace ();
const_type_info_type = build_qualified_type (type_info_type_node,
TYPE_QUAL_CONST);
@@ -635,7 +635,6 @@ build_dynamic_cast_1 (tree type, tree expr)
push_nested_namespace (ns);
tinfo_ptr = xref_tag (class_type,
get_identifier ("__class_type_info"),
- /*attributes=*/NULL_TREE,
true, false);
tinfo_ptr = build_pointer_type
@@ -760,7 +759,7 @@ tinfo_base_init (tree desc, tree target)
TREE_STATIC (name_decl) = 1;
DECL_EXTERNAL (name_decl) = 0;
TREE_PUBLIC (name_decl) = 1;
- comdat_linkage (name_decl);
+ import_export_tinfo (name_decl, target, typeinfo_in_lib_p (target));
/* External name of the string containing the type's name has a
special name. */
SET_DECL_ASSEMBLER_NAME (name_decl,
@@ -777,7 +776,7 @@ tinfo_base_init (tree desc, tree target)
push_nested_namespace (abi_node);
real_type = xref_tag (class_type, TINFO_REAL_NAME (desc),
- /*attributes=*/NULL_TREE, true, false);
+ true, false);
pop_nested_namespace (abi_node);
if (!COMPLETE_TYPE_P (real_type))
@@ -1373,7 +1372,6 @@ emit_support_tinfos (void)
push_nested_namespace (abi_node);
bltn_type = xref_tag (class_type,
get_identifier ("__fundamental_type_info"),
- /*attributes=*/NULL_TREE,
true, false);
pop_nested_namespace (abi_node);
if (!COMPLETE_TYPE_P (bltn_type))
diff --git a/gcc/cp/search.c b/gcc/cp/search.c
index 15927c69166..65ed660cee7 100644
--- a/gcc/cp/search.c
+++ b/gcc/cp/search.c
@@ -232,7 +232,7 @@ lookup_base_r (tree binfo, tree base, base_access access,
}
/* Returns true if type BASE is accessible in T. (BASE is known to be
- a base class of T.) */
+ a (possibly non-proper) base class of T.) */
bool
accessible_base_p (tree t, tree base)
@@ -242,7 +242,12 @@ accessible_base_p (tree t, tree base)
/* [class.access.base]
A base class is said to be accessible if an invented public
- member of the base class is accessible. */
+ member of the base class is accessible.
+
+ If BASE is a non-proper base, this condition is trivially
+ true. */
+ if (same_type_p (t, base))
+ return true;
/* Rather than inventing a public member, we use the implicit
public typedef created in the scope of every class. */
decl = TYPE_FIELDS (base);
@@ -905,6 +910,7 @@ accessible_p (tree type, tree decl)
{
tree binfo;
tree t;
+ tree scope;
access_kind access;
/* Nonzero if it's OK to access DECL if it has protected
@@ -916,6 +922,11 @@ accessible_p (tree type, tree decl)
if (!TYPE_P (context_for_name_lookup (decl)))
return 1;
+ /* There is no need to perform access checks inside a thunk. */
+ scope = current_scope ();
+ if (scope && DECL_THUNK_P (scope))
+ return 1;
+
/* In a template declaration, we cannot be sure whether the
particular specialization that is instantiated will be a friend
or not. Therefore, all access checks are deferred until
@@ -958,7 +969,7 @@ accessible_p (tree type, tree decl)
/* Now, loop through the classes of which we are a friend. */
if (!protected_ok)
- protected_ok = friend_accessible_p (current_scope (), decl, binfo);
+ protected_ok = friend_accessible_p (scope, decl, binfo);
/* Standardize the binfo that access_in_type will use. We don't
need to know what path was chosen from this point onwards. */
diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c
index 00f1a4f2fe9..966b004ddfa 100644
--- a/gcc/cp/semantics.c
+++ b/gcc/cp/semantics.c
@@ -678,6 +678,13 @@ finish_for_cond (tree cond, tree for_stmt)
void
finish_for_expr (tree expr, tree for_stmt)
{
+ /* If EXPR is an overloaded function, issue an error; there is no
+ context available to use to perform overload resolution. */
+ if (expr && type_unknown_p (expr))
+ {
+ cxx_incomplete_type_error (expr, TREE_TYPE (expr));
+ expr = error_mark_node;
+ }
FOR_EXPR (for_stmt) = expr;
}
@@ -1722,7 +1729,8 @@ finish_call_expr (tree fn, tree args, bool disallow_virtual, bool koenig_p)
else if (CLASS_TYPE_P (TREE_TYPE (fn)))
/* If the "function" is really an object of class type, it might
have an overloaded `operator ()'. */
- result = build_new_op (CALL_EXPR, LOOKUP_NORMAL, fn, args, NULL_TREE);
+ result = build_new_op (CALL_EXPR, LOOKUP_NORMAL, fn, args, NULL_TREE,
+ /*overloaded_p=*/NULL);
if (!result)
/* A call where the function is unknown. */
result = build_function_call (fn, args);
@@ -1774,42 +1782,6 @@ finish_this_expr (void)
return result;
}
-/* Finish a member function call using OBJECT and ARGS as arguments to
- FN. Returns an expression for the call. */
-
-tree
-finish_object_call_expr (tree fn, tree object, tree args)
-{
- if (DECL_DECLARES_TYPE_P (fn))
- {
- if (processing_template_decl)
- /* This can happen on code like:
-
- class X;
- template <class T> void f(T t) {
- t.X();
- }
-
- We just grab the underlying IDENTIFIER. */
- fn = DECL_NAME (fn);
- else
- {
- error ("calling type `%T' like a method", fn);
- return error_mark_node;
- }
- }
-
- if (processing_template_decl)
- return build_nt (CALL_EXPR,
- build_nt (COMPONENT_REF, object, fn),
- args);
-
- if (name_p (fn))
- return build_method_call (object, fn, args, NULL_TREE, LOOKUP_NORMAL);
- else
- return build_new_method_call (object, fn, args, NULL_TREE, LOOKUP_NORMAL);
-}
-
/* Finish a pseudo-destructor expression. If SCOPE is NULL, the
expression was of the form `OBJECT.~DESTRUCTOR' where DESTRUCTOR is
the TYPE for the type given. If SCOPE is non-NULL, the expression
@@ -1831,7 +1803,21 @@ finish_pseudo_destructor_expr (tree object, tree scope, tree destructor)
return error_mark_node;
}
- if (!same_type_p (TREE_TYPE (object), destructor))
+ /* [expr.pseudo] says both:
+
+ The type designated by the pseudo-destructor-name shall be
+ the same as the object type.
+
+ and:
+
+ The cv-unqualified versions of the object type and of the
+ type designated by the pseudo-destructor-name shall be the
+ same type.
+
+ We implement the more generous second sentence, since that is
+ what most other compilers do. */
+ if (!same_type_ignoring_top_level_qualifiers_p (TREE_TYPE (object),
+ destructor))
{
error ("`%E' is not of type `%T'", object, destructor);
return error_mark_node;
@@ -1978,10 +1964,24 @@ check_template_template_default_arg (tree argument)
{
if (TREE_CODE (argument) != TEMPLATE_DECL
&& TREE_CODE (argument) != TEMPLATE_TEMPLATE_PARM
- && TREE_CODE (argument) != TYPE_DECL
&& TREE_CODE (argument) != UNBOUND_CLASS_TEMPLATE)
{
- error ("invalid default template argument");
+ if (TREE_CODE (argument) == TYPE_DECL)
+ {
+ tree t = TREE_TYPE (argument);
+
+ /* Try to emit a slightly smarter error message if we detect
+ that the user is using a template instantiation. */
+ if (CLASSTYPE_TEMPLATE_INFO (t)
+ && CLASSTYPE_TEMPLATE_INSTANTIATION (t))
+ error ("invalid use of type `%T' as a default value for a "
+ "template template-parameter", t);
+ else
+ error ("invalid use of `%D' as a default value for a template "
+ "template-parameter", argument);
+ }
+ else
+ error ("invalid default argument for a template template parameter");
return error_mark_node;
}
@@ -2057,7 +2057,16 @@ begin_class_definition (tree t)
maybe_process_partial_specialization (t);
pushclass (t);
TYPE_BEING_DEFINED (t) = 1;
- TYPE_PACKED (t) = flag_pack_struct;
+ if (flag_pack_struct)
+ {
+ tree v;
+ TYPE_PACKED (t) = 1;
+ /* Even though the type is being defined for the first time
+ here, there might have been a forward declaration, so there
+ might be cv-qualified variants of T. */
+ for (v = TYPE_NEXT_VARIANT (t); v; v = TYPE_NEXT_VARIANT (v))
+ TYPE_PACKED (v) = 1;
+ }
/* Reset the interface data, at the earliest possible
moment, as it might have been set via a class foo;
before. */
@@ -2355,11 +2364,16 @@ finish_id_expression (tree id_expression,
if (decl == error_mark_node)
{
/* Name lookup failed. */
- if (scope && (!TYPE_P (scope) || !dependent_type_p (scope)))
+ if (scope
+ && (!TYPE_P (scope)
+ || (!dependent_type_p (scope)
+ && !(TREE_CODE (id_expression) == IDENTIFIER_NODE
+ && IDENTIFIER_TYPENAME_P (id_expression)
+ && dependent_type_p (TREE_TYPE (id_expression))))))
{
- /* Qualified name lookup failed, and the qualifying name
- was not a dependent type. That is always an
- error. */
+ /* If the qualifying type is non-dependent (and the name
+ does not name a conversion operator to a dependent
+ type), issue an error. */
qualified_name_lookup_error (scope, id_expression);
return error_mark_node;
}
@@ -2369,6 +2383,8 @@ finish_id_expression (tree id_expression,
*idk = CP_ID_KIND_UNQUALIFIED;
return id_expression;
}
+ else
+ decl = id_expression;
}
/* If DECL is a variable that would be out of scope under
ANSI/ISO rules, but in scope in the ARM, name lookup
@@ -2539,6 +2555,12 @@ finish_id_expression (tree id_expression,
if (integral_constant_expression_p)
*non_integral_constant_expression_p = true;
*idk = CP_ID_KIND_UNQUALIFIED_DEPENDENT;
+ /* If we found a variable, then name lookup during the
+ instantiation will always resolve to the same VAR_DECL
+ (or an instantiation thereof). */
+ if (TREE_CODE (decl) == VAR_DECL
+ || TREE_CODE (decl) == PARM_DECL)
+ return decl;
return id_expression;
}
@@ -2900,6 +2922,9 @@ expand_body (tree fn)
/* ??? When is this needed? */
saved_function = current_function_decl;
+ /* Emit any thunks that should be emitted at the same time as FN. */
+ emit_associated_thunks (fn);
+
timevar_push (TV_INTEGRATION);
optimize_function (fn);
timevar_pop (TV_INTEGRATION);
@@ -2910,9 +2935,6 @@ expand_body (tree fn)
extract_interface_info ();
- /* Emit any thunks that should be emitted at the same time as FN. */
- emit_associated_thunks (fn);
-
/* If this function is marked with the constructor attribute, add it
to the list of functions to be called along with constructors
from static duration objects. */
@@ -2952,14 +2974,8 @@ void
expand_or_defer_fn (tree fn)
{
/* When the parser calls us after finishing the body of a template
- function, we don't really want to expand the body. When we're
- processing an in-class definition of an inline function,
- PROCESSING_TEMPLATE_DECL will no longer be set here, so we have
- to look at the function itself. */
- if (processing_template_decl
- || (DECL_LANG_SPECIFIC (fn)
- && DECL_TEMPLATE_INFO (fn)
- && uses_template_parms (DECL_TI_ARGS (fn))))
+ function, we don't really want to expand the body. */
+ if (processing_template_decl)
{
/* Normally, collection only occurs in rest_of_compilation. So,
if we don't collect here, we never collect junk generated
diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c
index bedbbe96b44..fc19cfdda68 100644
--- a/gcc/cp/tree.c
+++ b/gcc/cp/tree.c
@@ -1,6 +1,6 @@
/* Language-dependent node constructors for parse phase of GNU compiler.
Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Hacked by Michael Tiemann (tiemann@cygnus.com)
This file is part of GCC.
@@ -985,7 +985,8 @@ build_exception_variant (tree type, tree raises)
for (; v; v = TYPE_NEXT_VARIANT (v))
if (TYPE_QUALS (v) == type_quals
- && comp_except_specs (raises, TYPE_RAISES_EXCEPTIONS (v), 1))
+ && comp_except_specs (raises, TYPE_RAISES_EXCEPTIONS (v), 1)
+ && (*targetm.comp_type_attributes) (type, v))
return v;
/* Need to build a new variant. */
@@ -1651,8 +1652,6 @@ tree
lvalue_type (tree arg)
{
tree type = TREE_TYPE (arg);
- if (TREE_CODE (arg) == OVERLOAD)
- type = unknown_type_node;
return type;
}
@@ -1956,6 +1955,23 @@ make_ptrmem_cst (tree type, tree member)
return ptrmem_cst;
}
+/* Build a variant of TYPE that has the indicated ATTRIBUTES. May
+ return an existing type of an appropriate type already exists. */
+
+tree
+cp_build_type_attribute_variant (tree type, tree attributes)
+{
+ tree new_type;
+
+ new_type = build_type_attribute_variant (type, attributes);
+ if (TREE_CODE (new_type) == FUNCTION_TYPE
+ && (TYPE_RAISES_EXCEPTIONS (new_type)
+ != TYPE_RAISES_EXCEPTIONS (type)))
+ new_type = build_exception_variant (new_type,
+ TYPE_RAISES_EXCEPTIONS (type));
+ return new_type;
+}
+
/* Apply FUNC to all language-specific sub-trees of TP in a pre-order
traversal. Called from walk_tree(). */
@@ -2411,7 +2427,7 @@ stabilize_expr (tree exp, tree* initp)
if (!TREE_SIDE_EFFECTS (exp))
{
- init_expr = void_zero_node;
+ init_expr = NULL_TREE;
}
else if (!real_lvalue_p (exp)
|| !TYPE_NEEDS_CONSTRUCTING (TREE_TYPE (exp)))
@@ -2430,6 +2446,80 @@ stabilize_expr (tree exp, tree* initp)
*initp = init_expr;
return exp;
}
+
+/* Like stabilize_expr, but for a call whose args we want to
+ pre-evaluate. */
+
+void
+stabilize_call (tree call, tree *initp)
+{
+ tree inits = NULL_TREE;
+ tree t;
+
+ if (call == error_mark_node)
+ return;
+
+ if (TREE_CODE (call) != CALL_EXPR
+ && TREE_CODE (call) != AGGR_INIT_EXPR)
+ abort ();
+
+ for (t = TREE_OPERAND (call, 1); t; t = TREE_CHAIN (t))
+ if (TREE_SIDE_EFFECTS (TREE_VALUE (t)))
+ {
+ tree init;
+ TREE_VALUE (t) = stabilize_expr (TREE_VALUE (t), &init);
+ if (!init)
+ /* Nothing. */;
+ else if (inits)
+ inits = build (COMPOUND_EXPR, void_type_node, inits, init);
+ else
+ inits = init;
+ }
+
+ *initp = inits;
+}
+
+/* Like stabilize_expr, but for an initialization. If we are initializing
+ an object of class type, we don't want to introduce an extra temporary,
+ so we look past the TARGET_EXPR and stabilize the arguments of the call
+ instead. */
+
+bool
+stabilize_init (tree init, tree *initp)
+{
+ tree t = init;
+
+ if (t == error_mark_node)
+ return true;
+
+ if (TREE_CODE (t) == INIT_EXPR
+ && TREE_CODE (TREE_OPERAND (t, 1)) != TARGET_EXPR)
+ TREE_OPERAND (t, 1) = stabilize_expr (TREE_OPERAND (t, 1), initp);
+ else
+ {
+ if (TREE_CODE (t) == INIT_EXPR)
+ t = TREE_OPERAND (t, 1);
+ if (TREE_CODE (t) == TARGET_EXPR)
+ t = TARGET_EXPR_INITIAL (t);
+ if (TREE_CODE (t) == CONSTRUCTOR
+ && CONSTRUCTOR_ELTS (t) == NULL_TREE)
+ {
+ /* Default-initialization. */
+ *initp = NULL_TREE;
+ return true;
+ }
+
+ /* If the initializer is a COND_EXPR, we can't preevaluate
+ anything. */
+ if (TREE_CODE (t) == COND_EXPR)
+ return false;
+
+ stabilize_call (t, initp);
+ }
+
+ return true;
+}
+
#if defined ENABLE_TREE_CHECKING && (GCC_VERSION >= 2007)
/* Complain that some language-specific thing hanging off a tree
diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c
index a238eb41c8c..098dad8f4e0 100644
--- a/gcc/cp/typeck.c
+++ b/gcc/cp/typeck.c
@@ -1,6 +1,6 @@
/* Build expressions with type checking for C++ compiler.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Hacked by Michael Tiemann (tiemann@cygnus.com)
This file is part of GCC.
@@ -163,8 +163,7 @@ complete_type_or_diagnostic (tree type, tree value, int diag_type)
int
type_unknown_p (tree exp)
{
- return (TREE_CODE (exp) == OVERLOAD
- || TREE_CODE (exp) == TREE_LIST
+ return (TREE_CODE (exp) == TREE_LIST
|| TREE_TYPE (exp) == unknown_type_node);
}
@@ -443,7 +442,6 @@ composite_pointer_type_r (tree t1, tree t2, const char* location)
result_type = cp_build_qualified_type (result_type,
(cp_type_quals (pointee1)
| cp_type_quals (pointee2)));
- result_type = build_pointer_type (result_type);
/* If the original types were pointers to members, so is the
result. */
if (TYPE_PTR_TO_MEMBER_P (t1))
@@ -456,6 +454,8 @@ composite_pointer_type_r (tree t1, tree t2, const char* location)
result_type = build_ptrmem_type (TYPE_PTRMEM_CLASS_TYPE (t1),
result_type);
}
+ else
+ result_type = build_pointer_type (result_type);
/* Merge the attributes. */
attributes = (*targetm.merge_type_attributes) (t1, t2);
@@ -666,9 +666,9 @@ merge_types (tree t1, tree t2)
/* Save space: see if the result is identical to one of the args. */
if (valtype == TREE_TYPE (t1) && ! p2)
- return build_type_attribute_variant (t1, attributes);
+ return cp_build_type_attribute_variant (t1, attributes);
if (valtype == TREE_TYPE (t2) && ! p1)
- return build_type_attribute_variant (t2, attributes);
+ return cp_build_type_attribute_variant (t2, attributes);
/* Simple way if one arg fails to specify argument types. */
if (p1 == NULL_TREE || TREE_VALUE (p1) == void_type_node)
@@ -676,7 +676,7 @@ merge_types (tree t1, tree t2)
rval = build_function_type (valtype, p2);
if ((raises = TYPE_RAISES_EXCEPTIONS (t2)))
rval = build_exception_variant (rval, raises);
- return build_type_attribute_variant (rval, attributes);
+ return cp_build_type_attribute_variant (rval, attributes);
}
raises = TYPE_RAISES_EXCEPTIONS (t1);
if (p2 == NULL_TREE || TREE_VALUE (p2) == void_type_node)
@@ -684,7 +684,7 @@ merge_types (tree t1, tree t2)
rval = build_function_type (valtype, p1);
if (raises)
rval = build_exception_variant (rval, raises);
- return build_type_attribute_variant (rval, attributes);
+ return cp_build_type_attribute_variant (rval, attributes);
}
rval = build_function_type (valtype, commonparms (p1, p2));
@@ -714,9 +714,15 @@ merge_types (tree t1, tree t2)
break;
}
+ case TYPENAME_TYPE:
+ /* There is no need to merge attributes into a TYPENAME_TYPE.
+ When the type is instantiated it will have whatever
+ attributes result from the instantiation. */
+ return t1;
+
default:;
}
- return build_type_attribute_variant (t1, attributes);
+ return cp_build_type_attribute_variant (t1, attributes);
}
/* Return the common type of two types.
@@ -963,8 +969,10 @@ comptypes (tree t1, tree t2, int strict)
if (TREE_CODE (t1) != TREE_CODE (t2))
return false;
- /* Qualifiers must match. */
- if (cp_type_quals (t1) != cp_type_quals (t2))
+ /* Qualifiers must match. For array types, we will check when we
+ recur on the array element types. */
+ if (TREE_CODE (t1) != ARRAY_TYPE
+ && TYPE_QUALS (t1) != TYPE_QUALS (t2))
return false;
if (TYPE_FOR_JAVA (t1) != TYPE_FOR_JAVA (t2))
return false;
@@ -973,7 +981,8 @@ comptypes (tree t1, tree t2, int strict)
definition. Note that we already checked for equality of the type
qualifiers (just above). */
- if (TYPE_MAIN_VARIANT (t1) == TYPE_MAIN_VARIANT (t2))
+ if (TREE_CODE (t1) != ARRAY_TYPE
+ && TYPE_MAIN_VARIANT (t1) == TYPE_MAIN_VARIANT (t2))
return true;
if (!(*targetm.comp_type_attributes) (t1, t2))
@@ -1362,14 +1371,9 @@ decay_conversion (tree exp)
if (TREE_CODE (exp) == VAR_DECL)
{
- /* ??? This is not really quite correct
- in that the type of the operand of ADDR_EXPR
- is not the target type of the type of the ADDR_EXPR itself.
- Question is, can this lossage be avoided? */
- adr = build1 (ADDR_EXPR, ptrtype, exp);
if (!cxx_mark_addressable (exp))
return error_mark_node;
- TREE_CONSTANT (adr) = staticp (exp);
+ adr = build_nop (ptrtype, build_address (exp));
TREE_SIDE_EFFECTS (adr) = 0; /* Default would be, same as EXP. */
return adr;
}
@@ -1489,7 +1493,8 @@ rationalize_conditional_expr (enum tree_code code, tree t)
build_conditional_expr (build_x_binary_op ((TREE_CODE (t) == MIN_EXPR
? LE_EXPR : GE_EXPR),
TREE_OPERAND (t, 0),
- TREE_OPERAND (t, 1)),
+ TREE_OPERAND (t, 1),
+ /*overloaded_p=*/NULL),
build_unary_op (code, TREE_OPERAND (t, 0), 0),
build_unary_op (code, TREE_OPERAND (t, 1), 0));
}
@@ -1783,6 +1788,7 @@ lookup_destructor (tree object, tree scope, tree dtor_name)
{
tree object_type = TREE_TYPE (object);
tree dtor_type = TREE_OPERAND (dtor_name, 0);
+ tree expr;
if (scope && !check_dtor_name (scope, dtor_name))
{
@@ -1790,17 +1796,20 @@ lookup_destructor (tree object, tree scope, tree dtor_name)
scope, dtor_type);
return error_mark_node;
}
- if (!same_type_p (dtor_type, TYPE_MAIN_VARIANT (object_type)))
+ if (!DERIVED_FROM_P (dtor_type, TYPE_MAIN_VARIANT (object_type)))
{
- error ("destructor name `%T' does not match type `%T' of expression",
- dtor_type, object_type);
+ error ("the type being destroyed is `%T', but the destructor refers to `%T'",
+ TYPE_MAIN_VARIANT (object_type), dtor_type);
return error_mark_node;
}
- if (!TYPE_HAS_DESTRUCTOR (object_type))
+ if (!TYPE_HAS_DESTRUCTOR (dtor_type))
return build (PSEUDO_DTOR_EXPR, void_type_node, object, scope,
dtor_type);
- return lookup_member (object_type, complete_dtor_identifier,
+ expr = lookup_member (dtor_type, complete_dtor_identifier,
/*protect=*/1, /*want_type=*/false);
+ expr = (adjust_result_of_qualified_name_lookup
+ (expr, dtor_type, object_type));
+ return expr;
}
/* This function is called by the parser to process a class member
@@ -2022,7 +2031,7 @@ build_x_indirect_ref (tree expr, const char *errorstring)
}
rval = build_new_op (INDIRECT_REF, LOOKUP_NORMAL, expr, NULL_TREE,
- NULL_TREE);
+ NULL_TREE, /*overloaded_p=*/NULL);
if (!rval)
rval = build_indirect_ref (expr, errorstring);
@@ -2650,7 +2659,8 @@ convert_arguments (tree typelist, tree values, tree fndecl, int flags)
conversions on the operands. CODE is the kind of expression to build. */
tree
-build_x_binary_op (enum tree_code code, tree arg1, tree arg2)
+build_x_binary_op (enum tree_code code, tree arg1, tree arg2,
+ bool *overloaded_p)
{
tree orig_arg1;
tree orig_arg2;
@@ -2671,7 +2681,8 @@ build_x_binary_op (enum tree_code code, tree arg1, tree arg2)
if (code == DOTSTAR_EXPR)
expr = build_m_component_ref (arg1, arg2);
else
- expr = build_new_op (code, LOOKUP_NORMAL, arg1, arg2, NULL_TREE);
+ expr = build_new_op (code, LOOKUP_NORMAL, arg1, arg2, NULL_TREE,
+ overloaded_p);
if (processing_template_decl && expr != error_mark_node)
return build_min_non_dep (code, expr, orig_arg1, orig_arg2);
@@ -3528,7 +3539,8 @@ build_x_unary_op (enum tree_code code, tree xarg)
|| (TREE_CODE (xarg) == OFFSET_REF)))
/* Don't look for a function. */;
else
- exp = build_new_op (code, LOOKUP_NORMAL, xarg, NULL_TREE, NULL_TREE);
+ exp = build_new_op (code, LOOKUP_NORMAL, xarg, NULL_TREE, NULL_TREE,
+ /*overloaded_p=*/NULL);
if (!exp && code == ADDR_EXPR)
{
/* A pointer to member-function can be formed only by saying
@@ -4014,7 +4026,11 @@ build_unary_op (enum tree_code code, tree xarg, int noconvert)
if (! lvalue_p (arg) && pedantic)
pedwarn ("ISO C++ forbids taking the address of a cast to a non-lvalue expression");
break;
-
+
+ case OVERLOAD:
+ arg = OVL_CURRENT (arg);
+ break;
+
default:
break;
}
@@ -4368,7 +4384,8 @@ build_x_compound_expr (tree op1, tree op2)
op2 = build_non_dependent_expr (op2);
}
- result = build_new_op (COMPOUND_EXPR, LOOKUP_NORMAL, op1, op2, NULL_TREE);
+ result = build_new_op (COMPOUND_EXPR, LOOKUP_NORMAL, op1, op2, NULL_TREE,
+ /*overloaded_p=*/NULL);
if (!result)
result = build_compound_expr (op1, op2);
@@ -4718,7 +4735,7 @@ build_const_cast (tree type, tree expr)
return t;
}
- if (!POINTER_TYPE_P (type))
+ if (!POINTER_TYPE_P (type) && !TYPE_PTRMEM_P (type))
error ("invalid use of const_cast with type `%T', which is not a pointer, reference, nor a pointer-to-data-member type", type);
else if (TREE_CODE (TREE_TYPE (type)) == FUNCTION_TYPE)
{
@@ -5012,7 +5029,9 @@ build_modify_expr (tree lhs, enum tree_code modifycode, tree rhs)
return cond;
/* Make sure the code to compute the rhs comes out
before the split. */
- return build (COMPOUND_EXPR, TREE_TYPE (lhs), preeval, cond);
+ if (preeval)
+ cond = build (COMPOUND_EXPR, TREE_TYPE (lhs), preeval, cond);
+ return cond;
}
default:
@@ -5062,7 +5081,8 @@ build_modify_expr (tree lhs, enum tree_code modifycode, tree rhs)
else
{
result = build_new_op (MODIFY_EXPR, LOOKUP_NORMAL,
- lhs, rhs, make_node (NOP_EXPR));
+ lhs, rhs, make_node (NOP_EXPR),
+ /*overloaded_p=*/NULL);
if (result == NULL_TREE)
return error_mark_node;
return result;
@@ -5274,7 +5294,8 @@ build_x_modify_expr (tree lhs, enum tree_code modifycode, tree rhs)
if (modifycode != NOP_EXPR)
{
tree rval = build_new_op (MODIFY_EXPR, LOOKUP_NORMAL, lhs, rhs,
- make_node (modifycode));
+ make_node (modifycode),
+ /*overloaded_p=*/NULL);
if (rval)
return rval;
}
@@ -5324,14 +5345,14 @@ get_delta_difference (tree from, tree to, int force)
BINFO_TYPE (virt_binfo));
goto error;
}
- return convert_to_integer (ptrdiff_type_node,
- size_diffop (size_zero_node,
- BINFO_OFFSET (binfo)));
+ return fold (convert_to_integer (ptrdiff_type_node,
+ size_diffop (size_zero_node,
+ BINFO_OFFSET (binfo))));
}
virt_binfo = binfo_from_vbase (binfo);
if (!virt_binfo)
- return convert_to_integer (ptrdiff_type_node, BINFO_OFFSET (binfo));
+ return fold (convert_to_integer (ptrdiff_type_node, BINFO_OFFSET (binfo)));
/* This is a reinterpret cast, we choose to do nothing. */
if (force)
@@ -5342,7 +5363,7 @@ get_delta_difference (tree from, tree to, int force)
BINFO_TYPE (virt_binfo));
error:
- return convert_to_integer(ptrdiff_type_node, integer_zero_node);
+ return fold (convert_to_integer(ptrdiff_type_node, integer_zero_node));
}
/* Return a constructor for the pointer-to-member-function TYPE using
@@ -5633,8 +5654,6 @@ convert_for_assignment (tree type, tree rhs,
if (TREE_CODE (rhs) == TREE_LIST && TREE_VALUE (rhs) == error_mark_node)
return error_mark_node;
- rhs = dubious_conversion_warnings (type, rhs, errtype, fndecl, parmnum);
-
/* The RHS of an assignment cannot have void type. */
if (coder == VOID_TYPE)
{
diff --git a/gcc/cp/typeck2.c b/gcc/cp/typeck2.c
index bad9b1e0ac2..300e8e64255 100644
--- a/gcc/cp/typeck2.c
+++ b/gcc/cp/typeck2.c
@@ -1,7 +1,7 @@
/* Report error messages, build initializers, and perform
some front-end optimizations for C++ compiler.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
Hacked by Michael Tiemann (tiemann@cygnus.com)
This file is part of GCC.
@@ -379,6 +379,7 @@ split_nonconstant_init (tree dest, tree init)
code = build1 (STMT_EXPR, void_type_node, code);
TREE_SIDE_EFFECTS (code) = 1;
DECL_INITIAL (dest) = init;
+ TREE_READONLY (dest) = 0;
}
else
code = build (INIT_EXPR, TREE_TYPE (dest), dest, init);
@@ -1090,7 +1091,8 @@ build_x_arrow (tree expr)
if (IS_AGGR_TYPE (type))
{
while ((expr = build_new_op (COMPONENT_REF, LOOKUP_NORMAL, expr,
- NULL_TREE, NULL_TREE)))
+ NULL_TREE, NULL_TREE,
+ /*overloaded_p=*/NULL)))
{
if (expr == error_mark_node)
return error_mark_node;
diff --git a/gcc/cppcharset.c b/gcc/cppcharset.c
index 1b2d0b2a091..a6a65ed7986 100644
--- a/gcc/cppcharset.c
+++ b/gcc/cppcharset.c
@@ -1,5 +1,5 @@
/* CPP Library - charsets
- Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Broken out of c-lex.c Apr 2003, adding valid C99 UCN ranges.
@@ -170,7 +170,7 @@ one_utf8_to_cppchar (const uchar **inbufp, size_t *inbytesleftp,
{
static const uchar masks[6] = { 0x7F, 0x1F, 0x0F, 0x07, 0x02, 0x01 };
static const uchar patns[6] = { 0x00, 0xC0, 0xE0, 0xF0, 0xF8, 0xFC };
-
+
cppchar_t c;
const uchar *inbuf = *inbufp;
size_t nbytes, i;
@@ -274,7 +274,7 @@ one_cppchar_to_utf8 (cppchar_t c, uchar **outbufp, size_t *outbytesleftp)
The return value is either 0 for success, or an errno value for
failure, which may be E2BIG (need more space), EILSEQ (ill-formed
input sequence), ir EINVAL (incomplete input sequence). */
-
+
static inline int
one_utf8_to_utf32 (iconv_t bigend, const uchar **inbufp, size_t *inbytesleftp,
uchar **outbufp, size_t *outbytesleftp)
@@ -489,7 +489,7 @@ conversion_loop (int (*const one_conversion)(iconv_t, const uchar **, size_t *,
outbuf = to->text + to->asize - outbytesleft;
}
}
-
+
/* These functions convert entire strings between character sets.
They all have the signature
@@ -619,7 +619,7 @@ init_iconv_desc (cpp_reader *pfile, const char *to, const char *from)
struct cset_converter ret;
char *pair;
size_t i;
-
+
if (!strcasecmp (to, from))
{
ret.func = convert_no_conversion;
@@ -1270,7 +1270,7 @@ narrow_str_to_charconst (cpp_reader *pfile, cpp_string str,
*unsignedp = unsigned_p;
return result;
}
-
+
/* Subroutine of cpp_interpret_charconst which performs the conversion
to a number, for wide strings. STR is the string structure returned
by cpp_interpret_string. PCHARS_SEEN and UNSIGNEDP are as for
@@ -1352,3 +1352,60 @@ cpp_interpret_charconst (cpp_reader *pfile, const cpp_token *token,
return result;
}
+
+uchar *
+_cpp_convert_input (cpp_reader *pfile, const char *input_charset,
+ uchar *input, size_t size, size_t len, off_t *st_size)
+{
+ struct cset_converter input_cset;
+ struct _cpp_strbuf to;
+
+ input_cset = init_iconv_desc (pfile, SOURCE_CHARSET, input_charset);
+ if (input_cset.func == convert_no_conversion)
+ {
+ to.text = input;
+ to.asize = size;
+ to.len = len;
+ }
+ else
+ {
+ to.asize = MAX (65536, len);
+ to.text = xmalloc (to.asize);
+ to.len = 0;
+
+ if (!APPLY_CONVERSION (input_cset, input, len, &to))
+ cpp_error (pfile, CPP_DL_ERROR,
+ "failure to convert %s to %s",
+ CPP_OPTION (pfile, input_charset), SOURCE_CHARSET);
+
+ free (input);
+ }
+
+ /* Clean up the mess. */
+ if (input_cset.func == convert_using_iconv)
+ iconv_close (input_cset.cd);
+
+ /* Resize buffer if we allocated substantially too much, or if we
+ haven't enough space for the \n-terminator. */
+ if (to.len + 4096 < to.asize || to.len >= to.asize)
+ to.text = xrealloc (to.text, to.len + 1);
+
+ to.text[to.len] = '\n';
+ *st_size = to.len;
+ return to.text;
+}
+
+const char *
+_cpp_default_encoding (void)
+{
+ const char *current_encoding = NULL;
+
+#if defined (HAVE_LOCALE_H) && defined (HAVE_LANGINFO_CODESET)
+ setlocale (LC_CTYPE, "");
+ current_encoding = nl_langinfo (CODESET);
+#endif
+ if (current_encoding == NULL || *current_encoding == '\0')
+ current_encoding = SOURCE_CHARSET;
+
+ return current_encoding;
+}
diff --git a/gcc/cppexp.c b/gcc/cppexp.c
index c6f1f1d39a5..5603f5bd58a 100644
--- a/gcc/cppexp.c
+++ b/gcc/cppexp.c
@@ -1347,7 +1347,8 @@ num_binary_op (cpp_reader *pfile, cpp_num lhs, cpp_num rhs, enum cpp_ttype op)
/* Comma. */
default: /* case CPP_COMMA: */
- if (CPP_PEDANTIC (pfile) && !pfile->state.skip_eval)
+ if (CPP_PEDANTIC (pfile) && (!CPP_OPTION (pfile, c99)
+ || !pfile->state.skip_eval))
cpp_error (pfile, CPP_DL_PEDWARN,
"comma operator in operand of #if");
lhs = rhs;
diff --git a/gcc/cppfiles.c b/gcc/cppfiles.c
index d844947218d..cf144a7ecdc 100644
--- a/gcc/cppfiles.c
+++ b/gcc/cppfiles.c
@@ -1,6 +1,6 @@
/* Part of CPP library. File handling.
Copyright (C) 1986, 1987, 1989, 1992, 1993, 1994, 1995, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Written by Per Bothner, 1994.
Based on CCCP program by Paul Rubin, June 1986
Adapted to ANSI C, Richard Stallman, Jan 1987
@@ -509,15 +509,8 @@ read_file_guts (cpp_reader *pfile, _cpp_file *file)
cpp_error (pfile, CPP_DL_WARNING,
"%s is shorter than expected", file->path);
- /* Shrink buffer if we allocated substantially too much. */
- if (total + 4096 < size)
- buf = xrealloc (buf, total + 1);
-
- /* The lexer requires that the buffer be \n-terminated. */
- buf[total] = '\n';
-
- file->buffer = buf;
- file->st.st_size = total;
+ file->buffer = _cpp_convert_input (pfile, CPP_OPTION (pfile, input_charset),
+ buf, size, total, &file->st.st_size);
file->buffer_valid = true;
return true;
diff --git a/gcc/cpphash.h b/gcc/cpphash.h
index 80cb04c5f52..3b0d901ed33 100644
--- a/gcc/cpphash.h
+++ b/gcc/cpphash.h
@@ -1,5 +1,5 @@
/* Part of CPP library.
- Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify it
@@ -270,7 +270,7 @@ struct cpp_buffer
const uchar *cur; /* Current location. */
const uchar *line_base; /* Start of current physical line. */
const uchar *next_line; /* Start of to-be-cleaned logical line. */
-
+
const uchar *buf; /* Entire character buffer. */
const uchar *rlimit; /* Writable byte at end of file. */
@@ -303,9 +303,10 @@ struct cpp_buffer
buffers. */
unsigned char from_stage3;
- /* Nonzero means that the directory to start searching for ""
- include files has been calculated and stored in "dir" below. */
- unsigned char search_cached;
+ /* At EOF, a buffer is automatically popped. If RETURN_AT_EOF is
+ true, a CPP_EOF token is then returned. Otherwise, the next
+ token from the enclosing buffer is returned. */
+ unsigned int return_at_eof : 1;
/* The directory of the this buffer's file. Its NAME member is not
allocated, so we don't need to worry about freeing it. */
@@ -573,8 +574,13 @@ extern size_t _cpp_replacement_text_len (const cpp_macro *);
extern cppchar_t _cpp_valid_ucn (cpp_reader *, const uchar **,
const uchar *, int);
extern void _cpp_destroy_iconv (cpp_reader *);
-extern bool _cpp_interpret_string_notranslate (cpp_reader *, const cpp_string *,
+extern bool _cpp_interpret_string_notranslate (cpp_reader *,
+ const cpp_string *,
cpp_string *);
+extern uchar *_cpp_convert_input (cpp_reader *, const char *, uchar *,
+ size_t, size_t, off_t *);
+extern const char *_cpp_default_encoding (void);
+
/* Utility routines and macros. */
#define DSC(str) (const uchar *)str, sizeof str - 1
diff --git a/gcc/cppinit.c b/gcc/cppinit.c
index 13326886778..0f7ede98b00 100644
--- a/gcc/cppinit.c
+++ b/gcc/cppinit.c
@@ -1,6 +1,6 @@
/* CPP Library.
Copyright (C) 1986, 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Per Bothner, 1994-95.
Based on CCCP program by Paul Rubin, June 1986
Adapted to ANSI C, Richard Stallman, Jan 1987
@@ -157,9 +157,10 @@ cpp_create_reader (enum c_lang lang, hash_table *table)
CPP_OPTION (pfile, unsigned_wchar) = 1;
CPP_OPTION (pfile, bytes_big_endian) = 1; /* does not matter */
- /* Default to no charset conversion. */
- CPP_OPTION (pfile, narrow_charset) = 0;
+ /* Default to locale/UTF-8. */
+ CPP_OPTION (pfile, narrow_charset) = _cpp_default_encoding ();
CPP_OPTION (pfile, wide_charset) = 0;
+ CPP_OPTION (pfile, input_charset) = _cpp_default_encoding ();
/* A fake empty "directory" used as the starting point for files
looked up without a search path. Name cannot be '/' because we
@@ -450,9 +451,10 @@ cpp_post_options (cpp_reader *pfile)
}
/* Setup for processing input from the file named FNAME, or stdin if
- it is the empty string. Returns true if the file was found. */
-bool
-cpp_find_main_file (cpp_reader *pfile, const char *fname)
+ it is the empty string. Return the original filename
+ on success (e.g. foo.i->foo.c), or NULL on failure. */
+const char *
+cpp_read_main_file (cpp_reader *pfile, const char *fname)
{
if (CPP_OPTION (pfile, deps.style) != DEPS_NONE)
{
@@ -468,37 +470,16 @@ cpp_find_main_file (cpp_reader *pfile, const char *fname)
if (_cpp_find_failed (pfile->main_file))
return false;
- if (CPP_OPTION (pfile, working_directory))
- {
- const char *dir = getpwd ();
- char *dir_with_slashes = alloca (strlen (dir) + 3);
-
- memcpy (dir_with_slashes, dir, strlen (dir));
- memcpy (dir_with_slashes + strlen (dir), "//", 3);
-
- if (pfile->cb.dir_change)
- pfile->cb.dir_change (pfile, dir);
- }
- return true;
-}
-
-/* This function reads the file, but does not start preprocessing.
- This will generate at least one file change callback, and possibly
- a line change callback. */
-void
-cpp_push_main_file (cpp_reader *pfile)
-{
_cpp_stack_file (pfile, pfile->main_file, false);
/* For foo.i, read the original filename foo.c now, for the benefit
of the front ends. */
if (CPP_OPTION (pfile, preprocessed))
- read_original_filename (pfile);
-
- /* Set this here so the client can change the option if it wishes,
- and after stacking the main file so we don't trace the main
- file. */
- pfile->line_maps.trace_includes = CPP_OPTION (pfile, print_include_names);
+ {
+ read_original_filename (pfile);
+ fname = pfile->map->to_file;
+ }
+ return fname;
}
/* For preprocessed files, if the first tokens are of the form # NUM.
@@ -577,18 +558,12 @@ read_original_directory (cpp_reader *pfile)
pfile->cb.dir_change (pfile, debugdir);
}
-
- /* We want to process the fake line changes as regular changes, to
- get them output. */
- _cpp_backup_tokens (pfile, 3);
-
- CPP_OPTION (pfile, working_directory) = false;
}
/* This is called at the end of preprocessing. It pops the last
buffer and writes dependency output, and returns the number of
errors.
-
+
Maybe it should also reset state, such that you could call
cpp_start_read with a new filename to restart processing. */
int
diff --git a/gcc/cpplex.c b/gcc/cpplex.c
index 783732fa444..5e92a2146b8 100644
--- a/gcc/cpplex.c
+++ b/gcc/cpplex.c
@@ -744,6 +744,8 @@ _cpp_lex_token (cpp_reader *pfile)
bool
_cpp_get_fresh_line (cpp_reader *pfile)
{
+ int return_at_eof;
+
/* We can't get a new line until we leave the current directive. */
if (pfile->state.in_directive)
return false;
@@ -776,9 +778,10 @@ _cpp_get_fresh_line (cpp_reader *pfile)
CPP_BUF_COLUMN (buffer, buffer->cur),
"no newline at end of file");
}
-
+
+ return_at_eof = buffer->return_at_eof;
_cpp_pop_buffer (pfile);
- if (pfile->buffer == NULL)
+ if (pfile->buffer == NULL || return_at_eof)
return false;
}
}
diff --git a/gcc/cpplib.c b/gcc/cpplib.c
index 2b213cb461a..60a86e3e398 100644
--- a/gcc/cpplib.c
+++ b/gcc/cpplib.c
@@ -1157,9 +1157,6 @@ do_pragma (cpp_reader *pfile)
if (pfile->cb.line_change)
(*pfile->cb.line_change) (pfile, pragma_token, false);
(*p->u.handler) (pfile);
- if (pfile->cb.line_change)
- (*pfile->cb.line_change) (pfile, pfile->cur_token, false);
-
}
else if (pfile->cb.def_pragma)
{
@@ -1904,7 +1901,7 @@ cpp_get_callbacks (cpp_reader *pfile)
}
/* The line map set. */
-const struct line_maps *
+struct line_maps *
cpp_get_line_maps (cpp_reader *pfile)
{
return &pfile->line_maps;
diff --git a/gcc/cpplib.h b/gcc/cpplib.h
index 5f189245eb5..3ea4b6b1856 100644
--- a/gcc/cpplib.h
+++ b/gcc/cpplib.h
@@ -1,5 +1,5 @@
/* Definitions for CPP library.
- Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Written by Per Bothner, 1994-95.
@@ -332,6 +332,9 @@ struct cpp_options
/* Holds the name of the target wide character set. */
const char *wide_charset;
+ /* Holds the name of the input character set. */
+ const char *input_charset;
+
/* True to warn about precompiled header files we couldn't use. */
bool warn_invalid_pch;
@@ -370,11 +373,6 @@ struct cpp_options
/* Nonzero means __STDC__ should have the value 0 in system headers. */
unsigned char stdc_0_in_system_headers;
-
- /* Nonzero means output a directory line marker right after the
- initial file name line marker, and before a duplicate initial
- line marker. */
- bool working_directory;
};
/* Call backs to cpplib client. */
@@ -417,7 +415,7 @@ struct cpp_dir
/* Mapping of file names for this directory for MS-DOS and related
platforms. A NULL-terminated array of (from, to) pairs. */
const char **name_map;
-
+
/* The C front end uses these to recognize duplicated
directories in the search path. */
ino_t ino;
@@ -481,7 +479,7 @@ struct cpp_hashnode GTY(())
{
struct ht_identifier ident;
unsigned int is_directive : 1;
- unsigned int directive_index : 7; /* If is_directive,
+ unsigned int directive_index : 7; /* If is_directive,
then index into directive table.
Otherwise, a NODE_OPERATOR. */
unsigned char rid_code; /* Rid code - for front ends. */
@@ -528,18 +526,16 @@ extern void cpp_set_include_chains (cpp_reader *, cpp_dir *, cpp_dir *, int);
through the pointer returned from cpp_get_callbacks, or set them
with cpp_set_callbacks. */
extern cpp_options *cpp_get_options (cpp_reader *);
-extern const struct line_maps *cpp_get_line_maps (cpp_reader *);
+extern struct line_maps *cpp_get_line_maps (cpp_reader *);
extern cpp_callbacks *cpp_get_callbacks (cpp_reader *);
extern void cpp_set_callbacks (cpp_reader *, cpp_callbacks *);
-/* This function finds the main file, but does not start reading it.
- Returns true iff the file was found. */
-extern bool cpp_find_main_file (cpp_reader *, const char *);
-
-/* This function reads the file, but does not start preprocessing.
- This will generate at least one file change callback, and possibly
- a line change callback. */
-extern void cpp_push_main_file (cpp_reader *);
+/* This function reads the file, but does not start preprocessing. It
+ returns the name of the original file; this is the same as the
+ input file, except for preprocessed input. This will generate at
+ least one file change callback, and possibly a line change callback
+ too. If there was an error opening the file, it returns NULL. */
+extern const char *cpp_read_main_file (cpp_reader *, const char *);
/* Set up built-ins like __FILE__. */
extern void cpp_init_builtins (cpp_reader *, int);
diff --git a/gcc/cppmacro.c b/gcc/cppmacro.c
index efae0f094e1..11ac09f12e1 100644
--- a/gcc/cppmacro.c
+++ b/gcc/cppmacro.c
@@ -1136,6 +1136,10 @@ cpp_sys_macro_p (cpp_reader *pfile)
void
cpp_scan_nooutput (cpp_reader *pfile)
{
+ /* Request a CPP_EOF token at the end of this file, rather than
+ transparently continuing with the including file. */
+ pfile->buffer->return_at_eof = true;
+
if (CPP_OPTION (pfile, traditional))
while (_cpp_read_logical_line_trad (pfile))
;
diff --git a/gcc/cpptrad.c b/gcc/cpptrad.c
index 3d23cab1fe4..6315b1074f5 100644
--- a/gcc/cpptrad.c
+++ b/gcc/cpptrad.c
@@ -1,5 +1,5 @@
/* CPP Library - traditional lexical analysis and macro expansion.
- Copyright (C) 2002 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2004 Free Software Foundation, Inc.
Contributed by Neil Booth, May 2002
This program is free software; you can redistribute it and/or modify it
diff --git a/gcc/cse.c b/gcc/cse.c
index bcfe68facf4..139acacbb6d 100644
--- a/gcc/cse.c
+++ b/gcc/cse.c
@@ -1,6 +1,6 @@
/* Common subexpression elimination for GNU compiler.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -658,6 +658,9 @@ static void flush_hash_table (void);
static bool insn_live_p (rtx, int *);
static bool set_live_p (rtx, rtx, int *);
static bool dead_libcall_p (rtx, int *);
+static int cse_change_cc_mode (rtx *, void *);
+static void cse_change_cc_mode_insns (rtx, rtx, rtx);
+static enum machine_mode cse_cc_succs (basic_block, rtx, rtx, bool);
/* Nonzero if X has the form (PLUS frame-pointer integer). We check for
virtual regs here because the simplify_*_operation routines are called
@@ -3751,6 +3754,23 @@ fold_rtx (rtx x, rtx insn)
|| (new_cost == old_cost && CONSTANT_P (XEXP (x, i))))
break;
+ /* It's not safe to substitute the operand of a conversion
+ operator with a constant, as the conversion's identity
+ depends upon the mode of it's operand. This optimization
+ is handled by the call to simplify_unary_operation. */
+ if (GET_RTX_CLASS (code) == '1'
+ && GET_MODE (replacements[j]) != mode_arg0
+ && (code == ZERO_EXTEND
+ || code == SIGN_EXTEND
+ || code == TRUNCATE
+ || code == FLOAT_TRUNCATE
+ || code == FLOAT_EXTEND
+ || code == FLOAT
+ || code == FIX
+ || code == UNSIGNED_FLOAT
+ || code == UNSIGNED_FIX))
+ continue;
+
if (validate_change (insn, &XEXP (x, i), replacements[j], 0))
break;
@@ -7108,6 +7128,7 @@ cse_basic_block (rtx from, rtx to, struct branch_path *next_branch,
int to_usage = 0;
rtx libcall_insn = NULL_RTX;
int num_insns = 0;
+ int no_conflict = 0;
/* This array is undefined before max_reg, so only allocate
the space actually needed and adjust the start. */
@@ -7187,11 +7208,26 @@ cse_basic_block (rtx from, rtx to, struct branch_path *next_branch,
if ((p = find_reg_note (insn, REG_LIBCALL, NULL_RTX)))
libcall_insn = XEXP (p, 0);
else if (find_reg_note (insn, REG_RETVAL, NULL_RTX))
- libcall_insn = 0;
+ {
+ /* Keep libcall_insn for the last SET insn of a no-conflict
+ block to prevent changing the destination. */
+ if (! no_conflict)
+ libcall_insn = 0;
+ else
+ no_conflict = -1;
+ }
+ else if (find_reg_note (insn, REG_NO_CONFLICT, NULL_RTX))
+ no_conflict = 1;
}
cse_insn (insn, libcall_insn);
+ if (no_conflict == -1)
+ {
+ libcall_insn = 0;
+ no_conflict = 0;
+ }
+
/* If we haven't already found an insn where we added a LABEL_REF,
check this one. */
if (GET_CODE (insn) == INSN && ! recorded_label_ref
@@ -7638,3 +7674,350 @@ delete_trivially_dead_insns (rtx insns, int nreg)
timevar_pop (TV_DELETE_TRIVIALLY_DEAD);
return ndead;
}
+
+/* This function is called via for_each_rtx. The argument, NEWREG, is
+ a condition code register with the desired mode. If we are looking
+ at the same register in a different mode, replace it with
+ NEWREG. */
+
+static int
+cse_change_cc_mode (rtx *loc, void *data)
+{
+ rtx newreg = (rtx) data;
+
+ if (*loc
+ && GET_CODE (*loc) == REG
+ && REGNO (*loc) == REGNO (newreg)
+ && GET_MODE (*loc) != GET_MODE (newreg))
+ {
+ *loc = newreg;
+ return -1;
+ }
+ return 0;
+}
+
+/* Change the mode of any reference to the register REGNO (NEWREG) to
+ GET_MODE (NEWREG), starting at START. Stop before END. Stop at
+ any instruction which modifies NEWREG. */
+
+static void
+cse_change_cc_mode_insns (rtx start, rtx end, rtx newreg)
+{
+ rtx insn;
+
+ for (insn = start; insn != end; insn = NEXT_INSN (insn))
+ {
+ if (! INSN_P (insn))
+ continue;
+
+ if (reg_set_p (newreg, insn))
+ return;
+
+ for_each_rtx (&PATTERN (insn), cse_change_cc_mode, newreg);
+ for_each_rtx (&REG_NOTES (insn), cse_change_cc_mode, newreg);
+ }
+}
+
+/* BB is a basic block which finishes with CC_REG as a condition code
+ register which is set to CC_SRC. Look through the successors of BB
+ to find blocks which have a single predecessor (i.e., this one),
+ and look through those blocks for an assignment to CC_REG which is
+ equivalent to CC_SRC. CAN_CHANGE_MODE indicates whether we are
+ permitted to change the mode of CC_SRC to a compatible mode. This
+ returns VOIDmode if no equivalent assignments were found.
+ Otherwise it returns the mode which CC_SRC should wind up with.
+
+ The main complexity in this function is handling the mode issues.
+ We may have more than one duplicate which we can eliminate, and we
+ try to find a mode which will work for multiple duplicates. */
+
+static enum machine_mode
+cse_cc_succs (basic_block bb, rtx cc_reg, rtx cc_src, bool can_change_mode)
+{
+ bool found_equiv;
+ enum machine_mode mode;
+ unsigned int insn_count;
+ edge e;
+ rtx insns[2];
+ enum machine_mode modes[2];
+ rtx last_insns[2];
+ unsigned int i;
+ rtx newreg;
+
+ /* We expect to have two successors. Look at both before picking
+ the final mode for the comparison. If we have more successors
+ (i.e., some sort of table jump, although that seems unlikely),
+ then we require all beyond the first two to use the same
+ mode. */
+
+ found_equiv = false;
+ mode = GET_MODE (cc_src);
+ insn_count = 0;
+ for (e = bb->succ; e; e = e->succ_next)
+ {
+ rtx insn;
+ rtx end;
+
+ if (e->flags & EDGE_COMPLEX)
+ continue;
+
+ if (! e->dest->pred
+ || e->dest->pred->pred_next
+ || e->dest == EXIT_BLOCK_PTR)
+ continue;
+
+ end = NEXT_INSN (BB_END (e->dest));
+ for (insn = BB_HEAD (e->dest); insn != end; insn = NEXT_INSN (insn))
+ {
+ rtx set;
+
+ if (! INSN_P (insn))
+ continue;
+
+ /* If CC_SRC is modified, we have to stop looking for
+ something which uses it. */
+ if (modified_in_p (cc_src, insn))
+ break;
+
+ /* Check whether INSN sets CC_REG to CC_SRC. */
+ set = single_set (insn);
+ if (set
+ && GET_CODE (SET_DEST (set)) == REG
+ && REGNO (SET_DEST (set)) == REGNO (cc_reg))
+ {
+ bool found;
+ enum machine_mode set_mode;
+ enum machine_mode comp_mode;
+
+ found = false;
+ set_mode = GET_MODE (SET_SRC (set));
+ comp_mode = set_mode;
+ if (rtx_equal_p (cc_src, SET_SRC (set)))
+ found = true;
+ else if (GET_CODE (cc_src) == COMPARE
+ && GET_CODE (SET_SRC (set)) == COMPARE
+ && mode != set_mode
+ && rtx_equal_p (XEXP (cc_src, 0),
+ XEXP (SET_SRC (set), 0))
+ && rtx_equal_p (XEXP (cc_src, 1),
+ XEXP (SET_SRC (set), 1)))
+
+ {
+ comp_mode = (*targetm.cc_modes_compatible) (mode, set_mode);
+ if (comp_mode != VOIDmode
+ && (can_change_mode || comp_mode == mode))
+ found = true;
+ }
+
+ if (found)
+ {
+ found_equiv = true;
+ if (insn_count < ARRAY_SIZE (insns))
+ {
+ insns[insn_count] = insn;
+ modes[insn_count] = set_mode;
+ last_insns[insn_count] = end;
+ ++insn_count;
+
+ if (mode != comp_mode)
+ {
+ if (! can_change_mode)
+ abort ();
+ mode = comp_mode;
+ PUT_MODE (cc_src, mode);
+ }
+ }
+ else
+ {
+ if (set_mode != mode)
+ {
+ /* We found a matching expression in the
+ wrong mode, but we don't have room to
+ store it in the array. Punt. This case
+ should be rare. */
+ break;
+ }
+ /* INSN sets CC_REG to a value equal to CC_SRC
+ with the right mode. We can simply delete
+ it. */
+ delete_insn (insn);
+ }
+
+ /* We found an instruction to delete. Keep looking,
+ in the hopes of finding a three-way jump. */
+ continue;
+ }
+
+ /* We found an instruction which sets the condition
+ code, so don't look any farther. */
+ break;
+ }
+
+ /* If INSN sets CC_REG in some other way, don't look any
+ farther. */
+ if (reg_set_p (cc_reg, insn))
+ break;
+ }
+
+ /* If we fell off the bottom of the block, we can keep looking
+ through successors. We pass CAN_CHANGE_MODE as false because
+ we aren't prepared to handle compatibility between the
+ further blocks and this block. */
+ if (insn == end)
+ {
+ enum machine_mode submode;
+
+ submode = cse_cc_succs (e->dest, cc_reg, cc_src, false);
+ if (submode != VOIDmode)
+ {
+ if (submode != mode)
+ abort ();
+ found_equiv = true;
+ can_change_mode = false;
+ }
+ }
+ }
+
+ if (! found_equiv)
+ return VOIDmode;
+
+ /* Now INSN_COUNT is the number of instructions we found which set
+ CC_REG to a value equivalent to CC_SRC. The instructions are in
+ INSNS. The modes used by those instructions are in MODES. */
+
+ newreg = NULL_RTX;
+ for (i = 0; i < insn_count; ++i)
+ {
+ if (modes[i] != mode)
+ {
+ /* We need to change the mode of CC_REG in INSNS[i] and
+ subsequent instructions. */
+ if (! newreg)
+ {
+ if (GET_MODE (cc_reg) == mode)
+ newreg = cc_reg;
+ else
+ newreg = gen_rtx_REG (mode, REGNO (cc_reg));
+ }
+ cse_change_cc_mode_insns (NEXT_INSN (insns[i]), last_insns[i],
+ newreg);
+ }
+
+ delete_insn (insns[i]);
+ }
+
+ return mode;
+}
+
+/* If we have a fixed condition code register (or two), walk through
+ the instructions and try to eliminate duplicate assignments. */
+
+void
+cse_condition_code_reg (void)
+{
+ unsigned int cc_regno_1;
+ unsigned int cc_regno_2;
+ rtx cc_reg_1;
+ rtx cc_reg_2;
+ basic_block bb;
+
+ if (! (*targetm.fixed_condition_code_regs) (&cc_regno_1, &cc_regno_2))
+ return;
+
+ cc_reg_1 = gen_rtx_REG (CCmode, cc_regno_1);
+ if (cc_regno_2 != INVALID_REGNUM)
+ cc_reg_2 = gen_rtx_REG (CCmode, cc_regno_2);
+ else
+ cc_reg_2 = NULL_RTX;
+
+ FOR_EACH_BB (bb)
+ {
+ rtx last_insn;
+ rtx cc_reg;
+ rtx insn;
+ rtx cc_src_insn;
+ rtx cc_src;
+ enum machine_mode mode;
+ enum machine_mode orig_mode;
+
+ /* Look for blocks which end with a conditional jump based on a
+ condition code register. Then look for the instruction which
+ sets the condition code register. Then look through the
+ successor blocks for instructions which set the condition
+ code register to the same value. There are other possible
+ uses of the condition code register, but these are by far the
+ most common and the ones which we are most likely to be able
+ to optimize. */
+
+ last_insn = BB_END (bb);
+ if (GET_CODE (last_insn) != JUMP_INSN)
+ continue;
+
+ if (reg_referenced_p (cc_reg_1, PATTERN (last_insn)))
+ cc_reg = cc_reg_1;
+ else if (cc_reg_2 && reg_referenced_p (cc_reg_2, PATTERN (last_insn)))
+ cc_reg = cc_reg_2;
+ else
+ continue;
+
+ cc_src_insn = NULL_RTX;
+ cc_src = NULL_RTX;
+ for (insn = PREV_INSN (last_insn);
+ insn && insn != PREV_INSN (BB_HEAD (bb));
+ insn = PREV_INSN (insn))
+ {
+ rtx set;
+
+ if (! INSN_P (insn))
+ continue;
+ set = single_set (insn);
+ if (set
+ && GET_CODE (SET_DEST (set)) == REG
+ && REGNO (SET_DEST (set)) == REGNO (cc_reg))
+ {
+ cc_src_insn = insn;
+ cc_src = SET_SRC (set);
+ break;
+ }
+ else if (reg_set_p (cc_reg, insn))
+ break;
+ }
+
+ if (! cc_src_insn)
+ continue;
+
+ if (modified_between_p (cc_src, cc_src_insn, NEXT_INSN (last_insn)))
+ continue;
+
+ /* Now CC_REG is a condition code register used for a
+ conditional jump at the end of the block, and CC_SRC, in
+ CC_SRC_INSN, is the value to which that condition code
+ register is set, and CC_SRC is still meaningful at the end of
+ the basic block. */
+
+ orig_mode = GET_MODE (cc_src);
+ mode = cse_cc_succs (bb, cc_reg, cc_src, true);
+ if (mode != VOIDmode)
+ {
+ if (mode != GET_MODE (cc_src))
+ abort ();
+ if (mode != orig_mode)
+ {
+ rtx newreg = gen_rtx_REG (mode, REGNO (cc_reg));
+
+ /* Change the mode of CC_REG in CC_SRC_INSN to
+ GET_MODE (NEWREG). */
+ for_each_rtx (&PATTERN (cc_src_insn), cse_change_cc_mode,
+ newreg);
+ for_each_rtx (&REG_NOTES (cc_src_insn), cse_change_cc_mode,
+ newreg);
+
+ /* Do the same in the following insns that use the
+ current value of CC_REG within BB. */
+ cse_change_cc_mode_insns (NEXT_INSN (cc_src_insn),
+ NEXT_INSN (last_insn),
+ newreg);
+ }
+ }
+ }
+}
diff --git a/gcc/cselib.c b/gcc/cselib.c
index c3a68726a2b..95b4cc7c639 100644
--- a/gcc/cselib.c
+++ b/gcc/cselib.c
@@ -1,6 +1,6 @@
/* Common subexpression elimination library for GNU compiler.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -40,6 +40,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "hashtab.h"
#include "cselib.h"
#include "params.h"
+#include "alloc-pool.h"
static int entry_and_rtx_equal_p (const void *, const void *);
static hashval_t get_value_hash (const void *);
@@ -117,11 +118,6 @@ static GTY((deletable (""))) varray_type used_regs_old;
memory for a non-const call instruction. */
static GTY(()) rtx callmem;
-/* Caches for unused structures. */
-static GTY((deletable (""))) cselib_val *empty_vals;
-static GTY((deletable (""))) struct elt_list *empty_elt_lists;
-static GTY((deletable (""))) struct elt_loc_list *empty_elt_loc_lists;
-
/* Set by discard_useless_locs if it deleted the last location of any
value. */
static int values_became_useless;
@@ -134,20 +130,17 @@ static cselib_val dummy_val;
May or may not contain the useless values - the list is compacted
each time memory is invalidated. */
static cselib_val *first_containing_mem = &dummy_val;
+static alloc_pool elt_loc_list_pool, elt_list_pool, cselib_val_pool, value_pool;
/* Allocate a struct elt_list and fill in its two elements with the
arguments. */
-static struct elt_list *
+static inline struct elt_list *
new_elt_list (struct elt_list *next, cselib_val *elt)
{
- struct elt_list *el = empty_elt_lists;
-
- if (el)
- empty_elt_lists = el->next;
- else
- el = ggc_alloc (sizeof (struct elt_list));
+ struct elt_list *el;
+ el = pool_alloc (elt_list_pool);
el->next = next;
el->elt = elt;
return el;
@@ -156,15 +149,11 @@ new_elt_list (struct elt_list *next, cselib_val *elt)
/* Allocate a struct elt_loc_list and fill in its two elements with the
arguments. */
-static struct elt_loc_list *
+static inline struct elt_loc_list *
new_elt_loc_list (struct elt_loc_list *next, rtx loc)
{
- struct elt_loc_list *el = empty_elt_loc_lists;
-
- if (el)
- empty_elt_loc_lists = el->next;
- else
- el = ggc_alloc (sizeof (struct elt_loc_list));
+ struct elt_loc_list *el;
+ el = pool_alloc (elt_loc_list_pool);
el->next = next;
el->loc = loc;
el->canon_loc = NULL;
@@ -176,14 +165,13 @@ new_elt_loc_list (struct elt_loc_list *next, rtx loc)
/* The elt_list at *PL is no longer needed. Unchain it and free its
storage. */
-static void
+static inline void
unchain_one_elt_list (struct elt_list **pl)
{
struct elt_list *l = *pl;
*pl = l->next;
- l->next = empty_elt_lists;
- empty_elt_lists = l;
+ pool_free (elt_list_pool, l);
}
/* Likewise for elt_loc_lists. */
@@ -194,8 +182,7 @@ unchain_one_elt_loc_list (struct elt_loc_list **pl)
struct elt_loc_list *l = *pl;
*pl = l->next;
- l->next = empty_elt_loc_lists;
- empty_elt_loc_lists = l;
+ pool_free (elt_loc_list_pool, l);
}
/* Likewise for cselib_vals. This also frees the addr_list associated with
@@ -207,8 +194,7 @@ unchain_one_value (cselib_val *v)
while (v->addr_list)
unchain_one_elt_list (&v->addr_list);
- v->u.next_free = empty_vals;
- empty_vals = v;
+ pool_free (cselib_val_pool, v);
}
/* Remove all entries from the hash table. Also used during
@@ -346,6 +332,7 @@ discard_useless_values (void **x, void *info ATTRIBUTE_UNUSED)
if (v->locs == 0)
{
+ CSELIB_VAL_PTR (v->u.val_rtx) = NULL;
htab_clear_slot (hash_table, x);
unchain_one_value (v);
n_useless_values--;
@@ -371,8 +358,6 @@ remove_useless_values (void)
while (values_became_useless);
/* Second pass: actually remove the values. */
- htab_traverse (hash_table, discard_useless_values, 0);
-
p = &first_containing_mem;
for (v = *p; v != &dummy_val; v = v->next_containing_mem)
if (v->locs)
@@ -382,6 +367,8 @@ remove_useless_values (void)
}
*p = &dummy_val;
+ htab_traverse (hash_table, discard_useless_values, 0);
+
if (n_useless_values != 0)
abort ();
}
@@ -697,21 +684,23 @@ hash_rtx (rtx x, enum machine_mode mode, int create)
/* Create a new value structure for VALUE and initialize it. The mode of the
value is MODE. */
-static cselib_val *
+static inline cselib_val *
new_cselib_val (unsigned int value, enum machine_mode mode)
{
- cselib_val *e = empty_vals;
-
- if (e)
- empty_vals = e->u.next_free;
- else
- e = ggc_alloc (sizeof (cselib_val));
+ cselib_val *e = pool_alloc (cselib_val_pool);
+#ifdef ENABLE_CHECKING
if (value == 0)
abort ();
+#endif
e->value = value;
- e->u.val_rtx = gen_rtx_VALUE (mode);
+ /* We use custom method to allocate this RTL construct because it accounts
+ about 8% of overall memory usage. */
+ e->u.val_rtx = pool_alloc (value_pool);
+ memset (e->u.val_rtx, 0, RTX_HDR_SIZE);
+ PUT_CODE (e->u.val_rtx, VALUE);
+ PUT_MODE (e->u.val_rtx, mode);
CSELIB_VAL_PTR (e->u.val_rtx) = e;
e->addr_list = 0;
e->locs = 0;
@@ -1303,6 +1292,29 @@ cselib_record_sets (rtx insn)
locations may go away. */
note_stores (body, cselib_invalidate_rtx, NULL);
+ /* If this is an asm, look for duplicate sets. This can happen when the
+ user uses the same value as an output multiple times. This is valid
+ if the outputs are not actually used thereafter. Treat this case as
+ if the value isn't actually set. We do this by smashing the destination
+ to pc_rtx, so that we won't record the value later. */
+ if (n_sets >= 2 && asm_noperands (body) >= 0)
+ {
+ for (i = 0; i < n_sets; i++)
+ {
+ rtx dest = sets[i].dest;
+ if (GET_CODE (dest) == REG || GET_CODE (dest) == MEM)
+ {
+ int j;
+ for (j = i + 1; j < n_sets; j++)
+ if (rtx_equal_p (dest, sets[j].dest))
+ {
+ sets[i].dest = pc_rtx;
+ sets[j].dest = pc_rtx;
+ }
+ }
+ }
+ }
+
/* Now enter the equivalences in our tables. */
for (i = 0; i < n_sets; i++)
{
@@ -1403,6 +1415,14 @@ cselib_update_varray_sizes (void)
void
cselib_init (void)
{
+ elt_list_pool = create_alloc_pool ("elt_list",
+ sizeof (struct elt_list), 10);
+ elt_loc_list_pool = create_alloc_pool ("elt_loc_list",
+ sizeof (struct elt_loc_list), 10);
+ cselib_val_pool = create_alloc_pool ("cselib_val_list",
+ sizeof (cselib_val), 10);
+ value_pool = create_alloc_pool ("value",
+ RTX_SIZE (VALUE), 10);
/* This is only created once. */
if (! callmem)
callmem = gen_rtx_MEM (BLKmode, const0_rtx);
@@ -1428,6 +1448,10 @@ cselib_init (void)
void
cselib_finish (void)
{
+ free_alloc_pool (elt_list_pool);
+ free_alloc_pool (elt_loc_list_pool);
+ free_alloc_pool (cselib_val_pool);
+ free_alloc_pool (value_pool);
clear_table ();
reg_values_old = reg_values;
reg_values = 0;
diff --git a/gcc/cselib.h b/gcc/cselib.h
index c751c42dbca..f86f6572419 100644
--- a/gcc/cselib.h
+++ b/gcc/cselib.h
@@ -1,6 +1,6 @@
/* Common subexpression elimination for GNU compiler.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2003 Free Software Foundation, Inc.
+ 1999, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/defaults.h b/gcc/defaults.h
index 23539485f51..fff782f21ba 100644
--- a/gcc/defaults.h
+++ b/gcc/defaults.h
@@ -1,5 +1,5 @@
/* Definitions of various defaults for tm.h macros.
- Copyright (C) 1992, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1992, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Contributed by Ron Guilmette (rfg@monkeys.com)
diff --git a/gcc/df.c b/gcc/df.c
index 63f6c7c8245..d91f95e37d0 100644
--- a/gcc/df.c
+++ b/gcc/df.c
@@ -1,5 +1,6 @@
/* Dataflow support routines.
- Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
Contributed by Michael P. Hayes (m.hayes@elec.canterbury.ac.nz,
mhayes@redhat.com)
diff --git a/gcc/diagnostic.h b/gcc/diagnostic.h
index cf331e0df5f..daf24279d5e 100644
--- a/gcc/diagnostic.h
+++ b/gcc/diagnostic.h
@@ -1,5 +1,5 @@
/* Various declarations for language-independent diagnostics subroutines.
- Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Gabriel Dos Reis <gdr@codesourcery.com>
This file is part of GCC.
@@ -27,7 +27,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
/* Constants used to discriminate diagnostics. */
typedef enum
{
-#define DEFINE_DIAGNOSTIC_KIND(K, M) K,
+#define DEFINE_DIAGNOSTIC_KIND(K, msgid) K,
#include "diagnostic.def"
#undef DEFINE_DIAGNOSTIC_KIND
DK_LAST_DIAGNOSTIC_KIND
diff --git a/gcc/doc/c-tree.texi b/gcc/doc/c-tree.texi
index 9151fec67f5..d1afe655c76 100644
--- a/gcc/doc/c-tree.texi
+++ b/gcc/doc/c-tree.texi
@@ -1,4 +1,4 @@
-@c Copyright (c) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+@c Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
@c Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -98,24 +98,24 @@ Many macros behave as predicates. Many, although not all, of these
predicates end in @samp{_P}. Do not rely on the result type of these
macros being of any particular type. You may, however, rely on the fact
that the type can be compared to @code{0}, so that statements like
-@example
+@smallexample
if (TEST_P (t) && !TEST_P (y))
x = 1;
-@end example
+@end smallexample
@noindent
and
-@example
+@smallexample
int i = (TEST_P (t) != 0);
-@end example
+@end smallexample
@noindent
are legal. Macros that return @code{int} values now may be changed to
return @code{tree} values, or other pointers in the future. Even those
that continue to return @code{int} may return multiple nonzero codes
where previously they returned only zero and one. Therefore, you should
not write code like
-@example
+@smallexample
if (TEST_P (t) == 1)
-@end example
+@end smallexample
@noindent
as this code is not guaranteed to work correctly in the future.
@@ -871,15 +871,15 @@ This predicate holds if the declaration was implicitly generated by the
compiler. For example, this predicate will hold of an implicitly
declared member function, or of the @code{TYPE_DECL} implicitly
generated for a class type. Recall that in C++ code like:
-@example
+@smallexample
struct S @{@};
-@end example
+@end smallexample
@noindent
is roughly equivalent to C code like:
-@example
+@smallexample
struct S @{@};
typedef struct S S;
-@end example
+@end smallexample
The implicitly generated @code{typedef} declaration is represented by a
@code{TYPE_DECL} for which @code{DECL_ARTIFICIAL} holds.
@@ -1024,14 +1024,14 @@ To determine the scope of a function, you can use the
@code{NAMESPACE_DECL}) of which the function is a member. For a virtual
function, this macro returns the class in which the function was
actually defined, not the base class in which the virtual declaration
-occurred.
+occurred.
If a friend function is defined in a class scope, the
@code{DECL_FRIEND_CONTEXT} macro can be used to determine the class in
which it was defined. For example, in
-@example
+@smallexample
class C @{ friend void f() @{@} @};
-@end example
+@end smallexample
@noindent
the @code{DECL_CONTEXT} for @code{f} will be the
@code{global_namespace}, but the @code{DECL_FRIEND_CONTEXT} will be the
@@ -1378,7 +1378,7 @@ the expression has been omitted. A substatement may in fact be a list
of statements, connected via their @code{TREE_CHAIN}s. So, you should
always process the statement tree by looping over substatements, like
this:
-@example
+@smallexample
void process_stmt (stmt)
tree stmt;
@{
@@ -1397,7 +1397,7 @@ void process_stmt (stmt)
stmt = TREE_CHAIN (stmt);
@}
@}
-@end example
+@end smallexample
In other words, while the @code{then} clause of an @code{if} statement
in C++ can be only one statement (although that one statement may be a
compound statement), the intermediate representation will sometimes use
@@ -1408,18 +1408,18 @@ several statements chained together.
Used to represent an inline assembly statement. For an inline assembly
statement like:
-@example
+@smallexample
asm ("mov x, y");
-@end example
+@end smallexample
The @code{ASM_STRING} macro will return a @code{STRING_CST} node for
@code{"mov x, y"}. If the original statement made use of the
extended-assembly syntax, then @code{ASM_OUTPUTS},
@code{ASM_INPUTS}, and @code{ASM_CLOBBERS} will be the outputs, inputs,
and clobbers for the statement, represented as @code{STRING_CST} nodes.
The extended-assembly syntax looks like:
-@example
+@smallexample
asm ("fsinx %1,%0" : "=f" (result) : "f" (angle));
-@end example
+@end smallexample
The first string is the @code{ASM_STRING}, containing the instruction
template. The next two strings are the output and inputs, respectively;
this statement has no clobbers. As this example indicates, ``plain''
@@ -1451,9 +1451,9 @@ the same type as the condition expression in the switch statement.
Otherwise, if both @code{CASE_LOW} and @code{CASE_HIGH} are defined, the
statement is a range of case labels. Such statements originate with the
extension that allows users to write things of the form:
-@example
+@smallexample
case 2 ... 5:
-@end example
+@end smallexample
The first value will be @code{CASE_LOW}, while the second will be
@code{CASE_HIGH}.
@@ -1549,7 +1549,7 @@ is the type of exception that will be caught by this handler; it is
equal (by pointer equality) to @code{NULL} if this handler is for all
types. @code{HANDLER_PARMS} is the @code{DECL_STMT} for the catch
parameter, and @code{HANDLER_BODY} is the @code{COMPOUND_STMT} for the
-block itself.
+block itself.
@item IF_STMT
@@ -1562,9 +1562,9 @@ evaluated, the statement should be executed. Then, the
@code{TREE_VALUE} should be used as the conditional expression itself.
This representation is used to handle C++ code like this:
-@example
+@smallexample
if (int i = 7) @dots{}
-@end example
+@end smallexample
where there is a new local variable (or variables) declared within the
condition.
@@ -1584,9 +1584,9 @@ the @code{LABEL_DECL} with @code{DECL_NAME}.
If the function uses the G++ ``named return value'' extension, meaning
that the function has been defined like:
-@example
+@smallexample
S f(int) return s @{@dots{}@}
-@end example
+@end smallexample
then there will be a @code{RETURN_INIT}. There is never a named
returned value for a constructor. The first argument to the
@code{RETURN_INIT} is the name of the object returned; the second
@@ -1601,9 +1601,9 @@ constructed in the place where the object will be returned.
Used to represent a @code{return} statement. The @code{RETURN_EXPR} is
the expression returned; it will be @code{NULL_TREE} if the statement
was just
-@example
+@smallexample
return;
-@end example
+@end smallexample
@item SCOPE_STMT
@@ -1803,9 +1803,9 @@ noted otherwise, the operands to an expression are accessed using the
@code{TREE_OPERAND} macro. For example, to access the first operand to
a binary plus expression @code{expr}, use:
-@example
+@smallexample
TREE_OPERAND (expr, 0)
-@end example
+@end smallexample
@noindent
As this example indicates, the operands are zero-indexed.
@@ -1819,10 +1819,11 @@ These nodes represent integer constants. Note that the type of these
constants is obtained with @code{TREE_TYPE}; they are not always of type
@code{int}. In particular, @code{char} constants are represented with
@code{INTEGER_CST} nodes. The value of the integer constant @code{e} is
-given by @example
+given by
+@smallexample
((TREE_INT_CST_HIGH (e) << HOST_BITS_PER_WIDE_INT)
+ TREE_INST_CST_LOW (e))
-@end example
+@end smallexample
@noindent
HOST_BITS_PER_WIDE_INT is at least thirty-two on all platforms. Both
@code{TREE_INT_CST_HIGH} and @code{TREE_INT_CST_LOW} return a
@@ -1893,11 +1894,11 @@ or @code{UNION_TYPE} within which the pointer points), and the
Note that the @code{DECL_CONTEXT} for the @code{PTRMEM_CST_MEMBER} is in
general different from the @code{PTRMEM_CST_CLASS}. For example,
given:
-@example
+@smallexample
struct B @{ int i; @};
struct D : public B @{@};
int D::*dp = &D::i;
-@end example
+@end smallexample
@noindent
The @code{PTRMEM_CST_CLASS} for @code{&D::i} is @code{D}, even though
the @code{DECL_CONTEXT} for the @code{PTRMEM_CST_MEMBER} is @code{B},
@@ -2181,9 +2182,9 @@ sites.
@item STMT_EXPR
These nodes are used to represent GCC's statement-expression extension.
The statement-expression extension allows code like this:
-@example
+@smallexample
int f() @{ return (@{ int j; j = 3; j + 7; @}); @}
-@end example
+@end smallexample
In other words, an sequence of statements may occur where a single
expression would normally appear. The @code{STMT_EXPR} node represents
such an expression. The @code{STMT_EXPR_STMT} gives the statement
@@ -2192,13 +2193,13 @@ value of the expression is the value of the last sub-statement in the
@code{COMPOUND_STMT}. More precisely, the value is the value computed
by the last @code{EXPR_STMT} in the outermost scope of the
@code{COMPOUND_STMT}. For example, in:
-@example
+@smallexample
(@{ 3; @})
-@end example
+@end smallexample
the value is @code{3} while in:
-@example
+@smallexample
(@{ if (x) @{ 3; @} @})
-@end example
+@end smallexample
(represented by a nested @code{COMPOUND_STMT}), there is no value. If
the @code{STMT_EXPR} does not yield a value, it's type will be
@code{void}.
diff --git a/gcc/doc/compat.texi b/gcc/doc/compat.texi
index 274368a20e3..5b02ebcac71 100644
--- a/gcc/doc/compat.texi
+++ b/gcc/doc/compat.texi
@@ -1,4 +1,4 @@
-@c Copyright (C) 2002 Free Software Foundation, Inc.
+@c Copyright (C) 2002, 2004 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -133,9 +133,9 @@ build was configured, but can be seen by using the G++ @option{-v} option.
With default configuration options for G++ 3.3 the compile line for a
different C++ compiler needs to include
-@example
+@smallexample
-I@var{gcc_install_directory}/include/c++/3.3
-@end example
+@end smallexample
Similarly, compiling code with G++ that must use a C++ library other
than the GNU C++ library requires specifying the location of the header
diff --git a/gcc/doc/contrib.texi b/gcc/doc/contrib.texi
index 80399ed784f..c07f2658706 100644
--- a/gcc/doc/contrib.texi
+++ b/gcc/doc/contrib.texi
@@ -1,5 +1,5 @@
@c Copyright (C) 1988,1989,1992,1993,1994,1995,1996,1997,1998,1999,2000,
-@c 2001,2002,2003 Free Software Foundation, Inc.
+@c 2001,2002,2003,2004 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -55,7 +55,7 @@ Scott Bambrough for help porting the Java compiler.
Wolfgang Bangerth for processing tons of bug reports.
@item
-Jon Beniston for his Windows port of Java.
+Jon Beniston for his Microsoft Windows port of Java.
@item
Daniel Berlin for better DWARF2 support, faster/better optimizations,
@@ -121,8 +121,8 @@ Stephan Buys for contributing Doxygen notes for libstdc++.
@item
Paolo Carlini for libstdc++ work: lots of efficiency improvements to
-the string class, hard detective work on the frustrating localization
-issues, and keeping up with the problem reports.
+the C++ strings, streambufs and formatted I/O, hard detective work on
+the frustrating localization issues, and keeping up with the problem reports.
@item
John Carr for his alias work, SPARC hacking, infrastructure improvements,
@@ -162,6 +162,10 @@ other random hacking.
Michael Cook for libstdc++ cleanup patches to reduce warnings.
@item
+R. Kelley Cook for making GCC buildable from a read-only directory as
+well as other miscellaneous build process and documentation clean-ups.
+
+@item
Ralf Corsepius for SH testing and minor bugfixing.
@item
@@ -193,7 +197,7 @@ DJ Delorie for the DJGPP port, build and libiberty maintenance, and
various bug fixes.
@item
-Gabriel Dos Reis for contributions to g++, contributions and
+Gabriel Dos Reis for contributions to G++, contributions and
maintenance of GCC diagnostics infrastructure, libstdc++-v3,
including valarray<>, complex<>, maintaining the numerics library
(including that pesky <limits> :-) and keeping up-to-date anything
@@ -315,7 +319,7 @@ fixes.
Dara Hazeghi for wading through myriads of target-specific bug reports.
@item
-Kate Hedstrom for staking the g77 folks with an initial testsuite.
+Kate Hedstrom for staking the G77 folks with an initial testsuite.
@item
Richard Henderson for his ongoing SPARC, alpha, ia32, and ia64 work, loop
@@ -397,7 +401,7 @@ Geoffrey Keating for his ongoing work to make the PPC work for GNU/Linux
and his automatic regression tester.
@item
-Brendan Kehoe for his ongoing work with g++ and for a lot of early work
+Brendan Kehoe for his ongoing work with G++ and for a lot of early work
in just about every part of libstdc++.
@item
@@ -417,7 +421,7 @@ head maintainer of GCC for several years.
@item
Mumit Khan for various contributions to the Cygwin and Mingw32 ports and
-maintaining binary releases for Windows hosts, and for massive libstdc++
+maintaining binary releases for Microsoft Windows hosts, and for massive libstdc++
porting work to Cygwin/Mingw32.
@item
@@ -433,7 +437,7 @@ Thomas Koenig for various bug fixes.
Bruce Korb for the new and improved fixincludes code.
@item
-Benjamin Kosnik for his g++ work and for leading the libstdc++-v3 effort.
+Benjamin Kosnik for his G++ work and for leading the libstdc++-v3 effort.
@item
Charles LaBrec contributed the support for the Integrated Solutions
@@ -515,7 +519,7 @@ for Java test code.
Bryce McKinlay for numerous GCJ and libgcj fixes and improvements.
@item
-Adam Megacz for his work on the Windows port of GCJ.
+Adam Megacz for his work on the Microsoft Windows port of GCJ.
@item
Michael Meissner for LRS framework, ia32, m32r, v850, m88k, MIPS,
@@ -523,7 +527,7 @@ powerpc, haifa, ECOFF debug support, and other assorted hacking.
@item
Jason Merrill for his direction via the steering committee and leading
-the g++ effort.
+the G++ effort.
@item
David Miller for his direction via the steering committee, lots of
@@ -653,6 +657,9 @@ Ovidiu Predescu for his work on the Objective-C front end and runtime
libraries.
@item
+Jerry Quinn for major performance improvements in C++ formatted I/O.
+
+@item
Ken Raeburn for various improvements to checker, MIPS ports and various
cleanups in the compiler.
@@ -689,6 +696,10 @@ Ken Rose for fixes to our delay slot filling code.
Paul Rubin wrote most of the preprocessor.
@item
+P@'etur Run@'olfsson for major performance improvements in C++ formatted I/O and
+large file support in C++ filebuf.
+
+@item
Chip Salzenberg for libstdc++ patches and improvements to locales, traits,
Makefiles, libio, libtool hackery, and ``long long'' support.
@@ -745,7 +756,7 @@ the LWG (thereby keeping us in line with updates from the ISO).
@item
Franz Sirl for his ongoing work with making the PPC port stable
-for linux.
+for GNU/Linux.
@item
Andrey Slepuhin for assorted AIX hacking.
@@ -767,7 +778,7 @@ testsuite entries.
Brad Spencer for contributions to the GLIBCPP_FORCE_NEW technique.
@item
-Richard Stallman, for writing the original gcc and launching the GNU project.
+Richard Stallman, for writing the original GCC and launching the GNU project.
@item
Jan Stein of the Chalmers Computer Society provided support for
@@ -786,7 +797,7 @@ Graham Stott for various infrastructure improvements.
John Stracke for his Java HTTP protocol fixes.
@item
-Mike Stump for his Elxsi port, g++ contributions over the years and more
+Mike Stump for his Elxsi port, G++ contributions over the years and more
recently his vxworks contributions
@item
diff --git a/gcc/doc/cpp.texi b/gcc/doc/cpp.texi
index 0ab1b3203ec..5d1cb9b3029 100644
--- a/gcc/doc/cpp.texi
+++ b/gcc/doc/cpp.texi
@@ -9,7 +9,7 @@
@copying
@c man begin COPYRIGHT
Copyright @copyright{} 1987, 1989, 1991, 1992, 1993, 1994, 1995, 1996,
-1997, 1998, 1999, 2000, 2001, 2002, 2003
+1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
@@ -258,7 +258,7 @@ At present, GNU CPP does not implement conversion from arbitrary file
encodings to the source character set. Use of any encoding other than
plain ASCII or UTF-8, except in comments, will cause errors. Use of
encodings that are not strict supersets of ASCII, such as Shift JIS,
-may cause errors even if non-ASCII characters appear only in comments.
+may cause errors even if non-ASCII characters appear only in comments.
We plan to fix this in the near future.
All preprocessing work (the subject of the rest of this manual) is
@@ -351,10 +351,10 @@ do not recognize these idioms.
The nine trigraphs and their replacements are
-@example
+@smallexample
Trigraph: ??( ??) ??< ??> ??= ??/ ??' ??! ??-
Replacement: [ ] @{ @} # \ ^ | ~
-@end example
+@end smallexample
@item
@cindex continued lines
@@ -385,23 +385,23 @@ There are two kinds of comments. @dfn{Block comments} begin with
@samp{/*} and continue until the next @samp{*/}. Block comments do not
nest:
-@example
+@smallexample
/* @r{this is} /* @r{one comment} */ @r{text outside comment}
-@end example
+@end smallexample
@dfn{Line comments} begin with @samp{//} and continue to the end of the
current line. Line comments do not nest either, but it does not matter,
because they would end in the same place anyway.
-@example
+@smallexample
// @r{this is} // @r{one comment}
@r{text outside comment}
-@end example
+@end smallexample
@end enumerate
It is safe to put line comments inside block comments, or vice versa.
-@example
+@smallexample
@group
/* @r{block comment}
// @r{contains line comment}
@@ -410,19 +410,19 @@ It is safe to put line comments inside block comments, or vice versa.
// @r{line comment} /* @r{contains block comment} */
@end group
-@end example
+@end smallexample
But beware of commenting out one end of a block comment with a line
comment.
-@example
+@smallexample
@group
// @r{l.c.} /* @r{block comment begins}
@r{oops! this isn't a comment anymore} */
@end group
-@end example
+@end smallexample
-Comments are not recognized within string literals.
+Comments are not recognized within string literals.
@t{@w{"/* blah */"}} is the string constant @samp{@w{/* blah */}}, not
an empty string.
@@ -437,7 +437,7 @@ next line with backslash-newline. You can even split @samp{/*},
@samp{*/}, and @samp{//} onto multiple lines with backslash-newline.
For example:
-@example
+@smallexample
@group
/\
*
@@ -447,7 +447,7 @@ ne FO\
O 10\
20
@end group
-@end example
+@end smallexample
@noindent
is equivalent to @code{@w{#define FOO 1020}}. All these tricks are
@@ -482,7 +482,7 @@ Once the input file is broken into tokens, the token boundaries never
change, except when the @samp{##} preprocessing operator is used to paste
tokens together. @xref{Concatenation}. For example,
-@example
+@smallexample
@group
#define foo() bar
foo()baz
@@ -490,7 +490,7 @@ foo()baz
@emph{not}
@expansion{} barbaz
@end group
-@end example
+@end smallexample
The compiler does not re-tokenize the preprocessor's output. Each
preprocessing token becomes one compiler token.
@@ -590,10 +590,10 @@ punctuation in obsolete systems. It has no negative side effects,
unlike trigraphs, but does not cover as much ground. The digraphs and
their corresponding normal punctuators are:
-@example
+@smallexample
Digraph: <% %> <: :> %: %:%:
Punctuator: @{ @} [ ] # ##
-@end example
+@end smallexample
@cindex other tokens
Any other single character is considered ``other.'' It is passed on to
@@ -613,10 +613,10 @@ silently ignored, just as any other character would be. In running
text, NUL is considered white space. For example, these two directives
have the same meaning.
-@example
+@smallexample
#define X^@@1
#define X 1
-@end example
+@end smallexample
@noindent
(where @samp{^@@} is ASCII NUL)@. Within string or character constants,
@@ -791,15 +791,15 @@ file, followed by the output that comes from the text after the
@samp{#include} directive. For example, if you have a header file
@file{header.h} as follows,
-@example
+@smallexample
char *test (void);
-@end example
+@end smallexample
@noindent
and a main program called @file{program.c} that uses the header file,
like this,
-@example
+@smallexample
int x;
#include "header.h"
@@ -808,13 +808,13 @@ main (void)
@{
puts (test ());
@}
-@end example
+@end smallexample
@noindent
the compiler will see the same token stream as it would if
@file{program.c} read
-@example
+@smallexample
int x;
char *test (void);
@@ -823,7 +823,7 @@ main (void)
@{
puts (test ());
@}
-@end example
+@end smallexample
Included files are not limited to declarations and macro definitions;
those are merely the typical uses. Any fragment of a C program can be
@@ -850,12 +850,12 @@ GCC looks in several different places for headers. On a normal Unix
system, if you do not instruct it otherwise, it will look for headers
requested with @code{@w{#include <@var{file}>}} in:
-@example
+@smallexample
/usr/local/include
@var{libdir}/gcc/@var{target}/@var{version}/include
/usr/@var{target}/include
/usr/include
-@end example
+@end smallexample
For C++ programs, it will also look in @file{/usr/include/g++-v3},
first. In the above, @var{target} is the canonical name of the system
@@ -926,7 +926,7 @@ it will certainly waste time.
The standard way to prevent this is to enclose the entire real contents
of the file in a conditional, like this:
-@example
+@smallexample
@group
/* File foo. */
#ifndef FILE_FOO_SEEN
@@ -936,7 +936,7 @@ of the file in a conditional, like this:
#endif /* !FILE_FOO_SEEN */
@end group
-@end example
+@end smallexample
This construct is commonly known as a @dfn{wrapper #ifndef}.
When the header is included again, the conditional will be false,
@@ -971,7 +971,7 @@ files to be included into your program. They might specify
configuration parameters to be used on different sorts of operating
systems, for instance. You could do this with a series of conditionals,
-@example
+@smallexample
#if SYSTEM_1
# include "system_1.h"
#elif SYSTEM_2
@@ -979,18 +979,18 @@ systems, for instance. You could do this with a series of conditionals,
#elif SYSTEM_3
@dots{}
#endif
-@end example
+@end smallexample
That rapidly becomes tedious. Instead, the preprocessor offers the
ability to use a macro for the header name. This is called a
@dfn{computed include}. Instead of writing a header name as the direct
argument of @samp{#include}, you simply put a macro name there instead:
-@example
+@smallexample
#define SYSTEM_H "system_1.h"
@dots{}
#include SYSTEM_H
-@end example
+@end smallexample
@noindent
@code{SYSTEM_H} will be expanded, and the preprocessor will look for
@@ -1015,10 +1015,10 @@ string constant are the file to be included. CPP does not re-examine the
string for embedded quotes, but neither does it process backslash
escapes in the string. Therefore
-@example
+@smallexample
#define HEADER "a\"b"
#include HEADER
-@end example
+@end smallexample
@noindent
looks for a file named @file{a\"b}. CPP searches for the file according
@@ -1063,9 +1063,9 @@ header is not protected from multiple inclusion (@pxref{Once-Only
Headers}), it will recurse infinitely and cause a fatal error.
You could include the old header with an absolute pathname:
-@example
+@smallexample
#include "/usr/include/old-header.h"
-@end example
+@end smallexample
@noindent
This works, but is not clean; should the system headers ever move, you
would have to edit the new headers to match.
@@ -1184,27 +1184,27 @@ followed by the name of the macro and then the token sequence it should
be an abbreviation for, which is variously referred to as the macro's
@dfn{body}, @dfn{expansion} or @dfn{replacement list}. For example,
-@example
+@smallexample
#define BUFFER_SIZE 1024
-@end example
+@end smallexample
@noindent
defines a macro named @code{BUFFER_SIZE} as an abbreviation for the
token @code{1024}. If somewhere after this @samp{#define} directive
there comes a C statement of the form
-@example
+@smallexample
foo = (char *) malloc (BUFFER_SIZE);
-@end example
+@end smallexample
@noindent
then the C preprocessor will recognize and @dfn{expand} the macro
@code{BUFFER_SIZE}. The C compiler will see the same tokens as it would
if you had written
-@example
+@smallexample
foo = (char *) malloc (1024);
-@end example
+@end smallexample
By convention, macro names are written in uppercase. Programs are
easier to read when it is possible to tell at a glance which names are
@@ -1215,13 +1215,13 @@ continue the definition onto multiple lines, if necessary, using
backslash-newline. When the macro is expanded, however, it will all
come out on one line. For example,
-@example
+@smallexample
#define NUMBERS 1, \
2, \
3
int x[] = @{ NUMBERS @};
@expansion{} int x[] = @{ 1, 2, 3 @};
-@end example
+@end smallexample
@noindent
The most common visible consequence of this is surprising line numbers
@@ -1236,25 +1236,25 @@ The C preprocessor scans your program sequentially. Macro definitions
take effect at the place you write them. Therefore, the following input
to the C preprocessor
-@example
+@smallexample
foo = X;
#define X 4
bar = X;
-@end example
+@end smallexample
@noindent
produces
-@example
+@smallexample
foo = X;
bar = 4;
-@end example
+@end smallexample
When the preprocessor expands a macro name, the macro's expansion
replaces the macro invocation, then the expansion is examined for more
macros to expand. For example,
-@example
+@smallexample
@group
#define TABLESIZE BUFSIZE
#define BUFSIZE 1024
@@ -1262,7 +1262,7 @@ TABLESIZE
@expansion{} BUFSIZE
@expansion{} 1024
@end group
-@end example
+@end smallexample
@noindent
@code{TABLESIZE} is expanded first to produce @code{BUFSIZE}, then that
@@ -1280,12 +1280,12 @@ at some point in the source file. @code{TABLESIZE}, defined as shown,
will always expand using the definition of @code{BUFSIZE} that is
currently in effect:
-@example
+@smallexample
#define BUFSIZE 1020
#define TABLESIZE BUFSIZE
#undef BUFSIZE
#define BUFSIZE 37
-@end example
+@end smallexample
@noindent
Now @code{TABLESIZE} expands (in two stages) to @code{37}.
@@ -1304,24 +1304,24 @@ are called @dfn{function-like macros}. To define a function-like macro,
you use the same @samp{#define} directive, but you put a pair of
parentheses immediately after the macro name. For example,
-@example
+@smallexample
#define lang_init() c_init()
lang_init()
@expansion{} c_init()
-@end example
+@end smallexample
A function-like macro is only expanded if its name appears with a pair
of parentheses after it. If you write just the name, it is left alone.
This can be useful when you have a function and a macro of the same
name, and you wish to use the function sometimes.
-@example
+@smallexample
extern void foo(void);
#define foo() /* optimized inline version */
@dots{}
foo();
funcptr = foo;
-@end example
+@end smallexample
Here the call to @code{foo()} will use the macro, but the function
pointer will get the address of the real function. If the macro were to
@@ -1332,11 +1332,11 @@ macro definition, that does not define a function-like macro, it defines
an object-like macro whose expansion happens to begin with a pair of
parentheses.
-@example
+@smallexample
#define lang_init () c_init()
lang_init()
@expansion{} () c_init()()
-@end example
+@end smallexample
The first two pairs of parentheses in this expansion come from the
macro. The third is the pair that was originally after the macro
@@ -1368,12 +1368,12 @@ macro body.)
As an example, here is a macro that computes the minimum of two numeric
values, as it is defined in many C programs, and some uses.
-@example
+@smallexample
#define min(X, Y) ((X) < (Y) ? (X) : (Y))
x = min(a, b); @expansion{} x = ((a) < (b) ? (a) : (b));
y = min(1, 2); @expansion{} y = ((1) < (2) ? (1) : (2));
z = min(a + 28, *p); @expansion{} z = ((a + 28) < (*p) ? (a + 28) : (*p));
-@end example
+@end smallexample
@noindent
(In this small example you can already see several of the dangers of
@@ -1386,9 +1386,9 @@ such parentheses does not end the argument. However, there is no
requirement for square brackets or braces to balance, and they do not
prevent a comma from separating arguments. Thus,
-@example
+@smallexample
macro (array[x = y, x + 1])
-@end example
+@end smallexample
@noindent
passes two arguments to @code{macro}: @code{array[x = y} and @code{x +
@@ -1406,20 +1406,20 @@ Prescan}, for detailed discussion.
For example, @code{min (min (a, b), c)} is first expanded to
-@example
+@smallexample
min (((a) < (b) ? (a) : (b)), (c))
-@end example
+@end smallexample
@noindent
and then to
-@example
+@smallexample
@group
((((a) < (b) ? (a) : (b))) < (c)
? (((a) < (b) ? (a) : (b)))
: (c))
@end group
-@end example
+@end smallexample
@noindent
(Line breaks shown here for clarity would not actually be generated.)
@@ -1431,7 +1431,7 @@ You cannot leave out arguments entirely; if a macro takes two arguments,
there must be exactly one comma at the top level of its argument list.
Here are some silly examples using @code{min}:
-@example
+@smallexample
min(, b) @expansion{} (( ) < (b) ? ( ) : (b))
min(a, ) @expansion{} ((a ) < ( ) ? (a ) : ( ))
min(,) @expansion{} (( ) < ( ) ? ( ) : ( ))
@@ -1439,7 +1439,7 @@ min((,),) @expansion{} (((,)) < ( ) ? ((,)) : ( ))
min() @error{} macro "min" requires 2 arguments, but only 1 given
min(,,) @error{} macro "min" passed 3 arguments, but takes just 2
-@end example
+@end smallexample
Whitespace is not a preprocessing token, so if a macro @code{foo} takes
one argument, @code{@w{foo ()}} and @code{@w{foo ( )}} both supply it an
@@ -1451,10 +1451,10 @@ empty argument was required.
Macro parameters appearing inside string literals are not replaced by
their corresponding actual arguments.
-@example
+@smallexample
#define foo(x) x, "x"
foo(bar) @expansion{} bar, "x"
-@end example
+@end smallexample
@node Stringification
@section Stringification
@@ -1478,7 +1478,7 @@ long string.
Here is an example of a macro definition that uses stringification:
-@example
+@smallexample
@group
#define WARN_IF(EXP) \
do @{ if (EXP) \
@@ -1488,7 +1488,7 @@ WARN_IF (x == 0);
@expansion{} do @{ if (x == 0)
fprintf (stderr, "Warning: " "x == 0" "\n"); @} while (0);
@end group
-@end example
+@end smallexample
@noindent
The argument for @code{EXP} is substituted once, as-is, into the
@@ -1521,7 +1521,7 @@ There is no way to convert a macro argument into a character constant.
If you want to stringify the result of expansion of a macro argument,
you have to use two levels of macros.
-@example
+@smallexample
#define xstr(s) str(s)
#define str(s) #s
#define foo 4
@@ -1531,7 +1531,7 @@ xstr (foo)
@expansion{} xstr (4)
@expansion{} str (4)
@expansion{} "4"
-@end example
+@end smallexample
@code{s} is stringified when it is used in @code{str}, so it is not
macro-expanded first. But @code{s} is an ordinary argument to
@@ -1588,7 +1588,7 @@ Consider a C program that interprets named commands. There probably
needs to be a table of commands, perhaps an array of structures declared
as follows:
-@example
+@smallexample
@group
struct command
@{
@@ -1605,7 +1605,7 @@ struct command commands[] =
@dots{}
@};
@end group
-@end example
+@end smallexample
It would be cleaner not to have to give each command name twice, once in
the string constant and once in the function name. A macro which takes the
@@ -1613,7 +1613,7 @@ name of a command as an argument can make this unnecessary. The string
constant can be created with stringification, and the function name by
concatenating the argument with @samp{_command}. Here is how it is done:
-@example
+@smallexample
#define COMMAND(NAME) @{ #NAME, NAME ## _command @}
struct command commands[] =
@@ -1622,7 +1622,7 @@ struct command commands[] =
COMMAND (help),
@dots{}
@};
-@end example
+@end smallexample
@node Variadic Macros
@section Variadic Macros
@@ -1634,9 +1634,9 @@ A macro can be declared to accept a variable number of arguments much as
a function can. The syntax for defining the macro is similar to that of
a function. Here is an example:
-@example
+@smallexample
#define eprintf(@dots{}) fprintf (stderr, __VA_ARGS__)
-@end example
+@end smallexample
This kind of macro is called @dfn{variadic}. When the macro is invoked,
all the tokens in its argument list after the last named argument (this
@@ -1645,10 +1645,10 @@ argument}. This sequence of tokens replaces the identifier
@code{@w{__VA_ARGS__}} in the macro body wherever it appears. Thus, we
have this expansion:
-@example
+@smallexample
eprintf ("%s:%d: ", input_file, lineno)
@expansion{} fprintf (stderr, "%s:%d: ", input_file, lineno)
-@end example
+@end smallexample
The variable argument is completely macro-expanded before it is inserted
into the macro expansion, just like an ordinary argument. You may use
@@ -1662,9 +1662,9 @@ this, as an extension. You may write an argument name immediately
before the @samp{@dots{}}; that name is used for the variable argument.
The @code{eprintf} macro above could be written
-@example
+@smallexample
#define eprintf(args@dots{}) fprintf (stderr, args)
-@end example
+@end smallexample
@noindent
using this extension. You cannot use @code{@w{__VA_ARGS__}} and this
@@ -1673,9 +1673,9 @@ extension in the same macro.
You can have named arguments as well as variable arguments in a variadic
macro. We could define @code{eprintf} like this, instead:
-@example
+@smallexample
#define eprintf(format, @dots{}) fprintf (stderr, format, __VA_ARGS__)
-@end example
+@end smallexample
@noindent
This formulation looks more descriptive, but unfortunately it is less
@@ -1685,26 +1685,26 @@ argument from the variable arguments. Furthermore, if you leave the
variable argument empty, you will get a syntax error, because
there will be an extra comma after the format string.
-@example
+@smallexample
eprintf("success!\n", );
@expansion{} fprintf(stderr, "success!\n", );
-@end example
+@end smallexample
GNU CPP has a pair of extensions which deal with this problem. First,
you are allowed to leave the variable argument out entirely:
-@example
+@smallexample
eprintf ("success!\n")
@expansion{} fprintf(stderr, "success!\n", );
-@end example
+@end smallexample
@noindent
Second, the @samp{##} token paste operator has a special meaning when
placed between a comma and a variable argument. If you write
-@example
+@smallexample
#define eprintf(format, @dots{}) fprintf (stderr, format, ##__VA_ARGS__)
-@end example
+@end smallexample
@noindent
and the variable argument is left out when the @code{eprintf} macro is
@@ -1712,10 +1712,10 @@ used, then the comma before the @samp{##} will be deleted. This does
@emph{not} happen if you pass an empty argument, nor does it happen if
the token preceding @samp{##} is anything other than a comma.
-@example
+@smallexample
eprintf ("success!\n")
@expansion{} fprintf(stderr, "success!\n");
-@end example
+@end smallexample
@noindent
The above explanation is ambiguous about the case where the only macro
@@ -1748,9 +1748,9 @@ previous versions of GCC, the token preceding the special @samp{##} must
be a comma, and there must be white space between that comma and
whatever comes immediately before it:
-@example
+@smallexample
#define eprintf(format, args@dots{}) fprintf (stderr, format , ##args)
-@end example
+@end smallexample
@noindent
@xref{Differences from previous versions}, for the gory details.
@@ -1803,12 +1803,12 @@ message to report an inconsistency detected by the program; the message
can state the source line at which the inconsistency was detected. For
example,
-@example
+@smallexample
fprintf (stderr, "Internal error: "
"negative string length "
"%d at %s, line %d.",
length, __FILE__, __LINE__);
-@end example
+@end smallexample
An @samp{#include} directive changes the expansions of @code{__FILE__}
and @code{__LINE__} to correspond to the included file. At the end of
@@ -1942,26 +1942,26 @@ minor version and patch level are reset. If you wish to use the
predefined macros directly in the conditional, you will need to write it
like this:
-@example
+@smallexample
/* @r{Test for GCC > 3.2.0} */
#if __GNUC__ > 3 || \
(__GNUC__ == 3 && (__GNUC_MINOR__ > 2 || \
(__GNUC_MINOR__ == 2 && \
__GNUC_PATCHLEVEL__ > 0))
-@end example
+@end smallexample
@noindent
Another approach is to use the predefined macros to
calculate a single number, then compare that against a threshold:
-@example
+@smallexample
#define GCC_VERSION (__GNUC__ * 10000 \
+ __GNUC_MINOR__ * 100 \
+ __GNUC_PATCHLEVEL__)
@dots{}
/* @r{Test for GCC > 3.2.0} */
#if GCC_VERSION > 30200
-@end example
+@end smallexample
@noindent
Many people find this form easier to understand.
@@ -2067,7 +2067,7 @@ this macro directly; instead, include the appropriate headers.
@itemx __INT_MAX__
@itemx __LONG_MAX__
@itemx __LONG_LONG_MAX__
-Defined to the maximum value of the @code{signed char}, @code{wchar_t},
+Defined to the maximum value of the @code{signed char}, @code{wchar_t},
@code{signed short},
@code{signed int}, @code{signed long}, and @code{signed long long} types
respectively. They exist to make the standard header given numerical limits
@@ -2176,12 +2176,12 @@ macro is function-like. It is an error if anything appears on the line
after the macro name. @samp{#undef} has no effect if the name is not a
macro.
-@example
+@smallexample
#define FOO 4
x = FOO; @expansion{} x = 4;
#undef FOO
x = FOO; @expansion{} x = FOO;
-@end example
+@end smallexample
Once a macro has been undefined, that identifier may be @dfn{redefined}
as a macro by a subsequent @samp{#define} directive. The new definition
@@ -2201,19 +2201,19 @@ count as whitespace.
@noindent
These definitions are effectively the same:
-@example
+@smallexample
#define FOUR (2 + 2)
#define FOUR (2 + 2)
#define FOUR (2 /* two */ + 2)
-@end example
+@end smallexample
@noindent
but these are not:
-@example
+@smallexample
#define FOUR (2 + 2)
#define FOUR ( 2+2 )
#define FOUR (2 * 2)
#define FOUR(score,and,seven,years,ago) (2 + 2)
-@end example
+@end smallexample
If a macro is redefined with a definition that is not effectively the
same as the old one, the preprocessor issues a warning and changes the
@@ -2294,25 +2294,25 @@ the input file, for more macro calls. It is possible to piece together
a macro call coming partially from the macro body and partially from the
arguments. For example,
-@example
+@smallexample
#define twice(x) (2*(x))
#define call_with_1(x) x(1)
call_with_1 (twice)
@expansion{} twice(1)
@expansion{} (2*(1))
-@end example
+@end smallexample
Macro definitions do not have to have balanced parentheses. By writing
an unbalanced open parenthesis in a macro body, it is possible to create
a macro call that begins inside the macro body but ends outside of it.
For example,
-@example
+@smallexample
#define strange(file) fprintf (file, "%s %d",
@dots{}
strange(stderr) p, 35)
@expansion{} fprintf (stderr, "%s %d", p, 35)
-@end example
+@end smallexample
The ability to piece together a macro call can be useful, but the use of
unbalanced open parentheses in a macro body is just confusing, and
@@ -2330,41 +2330,41 @@ way.
Suppose you define a macro as follows,
-@example
+@smallexample
#define ceil_div(x, y) (x + y - 1) / y
-@end example
+@end smallexample
@noindent
whose purpose is to divide, rounding up. (One use for this operation is
to compute how many @code{int} objects are needed to hold a certain
number of @code{char} objects.) Then suppose it is used as follows:
-@example
+@smallexample
a = ceil_div (b & c, sizeof (int));
@expansion{} a = (b & c + sizeof (int) - 1) / sizeof (int);
-@end example
+@end smallexample
@noindent
This does not do what is intended. The operator-precedence rules of
C make it equivalent to this:
-@example
+@smallexample
a = (b & (c + sizeof (int) - 1)) / sizeof (int);
-@end example
+@end smallexample
@noindent
What we want is this:
-@example
+@smallexample
a = ((b & c) + sizeof (int) - 1)) / sizeof (int);
-@end example
+@end smallexample
@noindent
Defining the macro as
-@example
+@smallexample
#define ceil_div(x, y) ((x) + (y) - 1) / (y)
-@end example
+@end smallexample
@noindent
provides the desired result.
@@ -2374,9 +2374,9 @@ ceil_div(1, 2)}. That has the appearance of a C expression that would
compute the size of the type of @code{ceil_div (1, 2)}, but in fact it
means something very different. Here is what it expands to:
-@example
+@smallexample
sizeof ((1) + (2) - 1) / (2)
-@end example
+@end smallexample
@noindent
This would take the size of an integer and divide it by two. The
@@ -2386,9 +2386,9 @@ was intended to be inside.
Parentheses around the entire macro definition prevent such problems.
Here, then, is the recommended way to define @code{ceil_div}:
-@example
+@smallexample
#define ceil_div(x, y) (((x) + (y) - 1) / (y))
-@end example
+@end smallexample
@node Swallowing the Semicolon
@subsection Swallowing the Semicolon
@@ -2399,13 +2399,13 @@ statement. Consider, for example, the following macro, that advances a
pointer (the argument @code{p} says where to find it) across whitespace
characters:
-@example
+@smallexample
#define SKIP_SPACES(p, limit) \
@{ char *lim = (limit); \
while (p < lim) @{ \
if (*p++ != ' ') @{ \
p--; break; @}@}@}
-@end example
+@end smallexample
@noindent
Here backslash-newline is used to split the macro definition, which must
@@ -2422,11 +2422,11 @@ like a function call, writing a semicolon afterward, as in
This can cause trouble before @code{else} statements, because the
semicolon is actually a null statement. Suppose you write
-@example
+@smallexample
if (*p != 0)
SKIP_SPACES (p, lim);
else @dots{}
-@end example
+@end smallexample
@noindent
The presence of two statements---the compound statement and a null
@@ -2436,20 +2436,20 @@ makes invalid C code.
The definition of the macro @code{SKIP_SPACES} can be altered to solve
this problem, using a @code{do @dots{} while} statement. Here is how:
-@example
+@smallexample
#define SKIP_SPACES(p, limit) \
do @{ char *lim = (limit); \
while (p < lim) @{ \
if (*p++ != ' ') @{ \
p--; break; @}@}@} \
while (0)
-@end example
+@end smallexample
Now @code{SKIP_SPACES (p, lim);} expands into
-@example
+@smallexample
do @{@dots{}@} while (0);
-@end example
+@end smallexample
@noindent
which is one statement. The loop executes exactly once; most compilers
@@ -2462,23 +2462,23 @@ generate no extra code for it.
@cindex unsafe macros
Many C programs define a macro @code{min}, for ``minimum'', like this:
-@example
+@smallexample
#define min(X, Y) ((X) < (Y) ? (X) : (Y))
-@end example
+@end smallexample
When you use this macro with an argument containing a side effect,
as shown here,
-@example
+@smallexample
next = min (x + y, foo (z));
-@end example
+@end smallexample
@noindent
it expands as follows:
-@example
+@smallexample
next = ((x + y) < (foo (z)) ? (x + y) : (foo (z)));
-@end example
+@end smallexample
@noindent
where @code{x + y} has been substituted for @code{X} and @code{foo (z)}
@@ -2496,12 +2496,12 @@ computes the value of @code{foo (z)} only once. The C language offers
no standard way to do this, but it can be done with GNU extensions as
follows:
-@example
+@smallexample
#define min(X, Y) \
(@{ typeof (X) x_ = (X); \
typeof (Y) y_ = (Y); \
(x_ < y_) ? x_ : y_; @})
-@end example
+@end smallexample
The @samp{(@{ @dots{} @})} notation produces a compound statement that
acts as an expression. Its value is the value of its last statement.
@@ -2515,7 +2515,7 @@ careful when @emph{using} the macro @code{min}. For example, you can
calculate the value of @code{foo (z)}, save it in a variable, and use
that variable in @code{min}:
-@example
+@smallexample
@group
#define min(X, Y) ((X) < (Y) ? (X) : (Y))
@dots{}
@@ -2524,7 +2524,7 @@ that variable in @code{min}:
next = min (x + y, tem);
@}
@end group
-@end example
+@end smallexample
@noindent
(where we assume that @code{foo} returns type @code{int}).
@@ -2540,9 +2540,9 @@ macro, it would produce an infinitely large expansion. To prevent this,
the self-reference is not considered a macro call. It is passed into
the preprocessor output unchanged. Let's consider an example:
-@example
+@smallexample
#define foo (4 + foo)
-@end example
+@end smallexample
@noindent
where @code{foo} is also a variable in your program.
@@ -2565,9 +2565,9 @@ of the variable @code{foo}, whereas in fact the value is four greater.
One common, useful use of self-reference is to create a macro which
expands to itself. If you write
-@example
+@smallexample
#define EPERM EPERM
-@end example
+@end smallexample
@noindent
then the macro @code{EPERM} expands to @code{EPERM}. Effectively, it is
@@ -2581,15 +2581,15 @@ If a macro @code{x} expands to use a macro @code{y}, and the expansion of
self-reference} of @code{x}. @code{x} is not expanded in this case
either. Thus, if we have
-@example
+@smallexample
#define x (4 + y)
#define y (2 * x)
-@end example
+@end smallexample
@noindent
then @code{x} and @code{y} expand as follows:
-@example
+@smallexample
@group
x @expansion{} (4 + y)
@expansion{} (4 + (2 * x))
@@ -2597,7 +2597,7 @@ x @expansion{} (4 + y)
y @expansion{} (2 * x)
@expansion{} (2 * (4 + y))
@end group
-@end example
+@end smallexample
@noindent
Each macro is expanded when it appears in the definition of the other
@@ -2658,12 +2658,12 @@ concatenate its expansion, you can do that by causing one macro to call
another macro that does the stringification or concatenation. For
instance, if you have
-@example
+@smallexample
#define AFTERX(x) X_ ## x
#define XAFTERX(x) AFTERX(x)
#define TABLESIZE 1024
#define BUFSIZE TABLESIZE
-@end example
+@end smallexample
then @code{AFTERX(BUFSIZE)} expands to @code{X_BUFSIZE}, and
@code{XAFTERX(BUFSIZE)} expands to @code{X_1024}. (Not to
@@ -2675,11 +2675,11 @@ Macros used in arguments, whose expansions contain unshielded commas.
This can cause a macro expanded on the second scan to be called with the
wrong number of arguments. Here is an example:
-@example
+@smallexample
#define foo a,b
#define bar(x) lose(x)
#define lose(x) (1 + (x))
-@end example
+@end smallexample
We would like @code{bar(foo)} to turn into @code{(1 + (foo))}, which
would then turn into @code{(1 + (a,b))}. Instead, @code{bar(foo)}
@@ -2688,11 +2688,11 @@ requires a single argument. In this case, the problem is easily solved
by the same parentheses that ought to be used to prevent misnesting of
arithmetic operations:
-@example
+@smallexample
#define foo (a,b)
@exdent or
#define bar(x) lose((x))
-@end example
+@end smallexample
The extra pair of parentheses prevents the comma in @code{foo}'s
definition from being interpreted as an argument separator.
@@ -2711,13 +2711,13 @@ different to the line containing the argument causing the problem.
Here is an example illustrating this:
-@example
+@smallexample
#define ignore_second_arg(a,b,c) a; c
ignore_second_arg (foo (),
ignored (),
syntax error);
-@end example
+@end smallexample
@noindent
The syntax error triggered by the tokens @code{syntax error} results in
@@ -2818,7 +2818,7 @@ directive}: @samp{#if}, @samp{#ifdef} or @samp{#ifndef}.
The simplest sort of conditional is
-@example
+@smallexample
@group
#ifdef @var{MACRO}
@@ -2826,7 +2826,7 @@ The simplest sort of conditional is
#endif /* @var{MACRO} */
@end group
-@end example
+@end smallexample
@cindex conditional group
This block is called a @dfn{conditional group}. @var{controlled text}
@@ -2899,7 +2899,7 @@ automated by a tool such as @command{autoconf}, or done by hand.
The @samp{#if} directive allows you to test the value of an arithmetic
expression, rather than the mere existence of one macro. Its syntax is
-@example
+@smallexample
@group
#if @var{expression}
@@ -2907,7 +2907,7 @@ expression, rather than the mere existence of one macro. Its syntax is
#endif /* @var{expression} */
@end group
-@end example
+@end smallexample
@var{expression} is a C expression of integer type, subject to stringent
restrictions. It may contain
@@ -2977,9 +2977,9 @@ defined MACRO}} is precisely equivalent to @code{@w{#ifdef MACRO}}.
@code{defined} is useful when you wish to test more than one macro for
existence at once. For example,
-@example
+@smallexample
#if defined (__vax__) || defined (__ns16000__)
-@end example
+@end smallexample
@noindent
would succeed if either of the names @code{__vax__} or
@@ -2987,9 +2987,9 @@ would succeed if either of the names @code{__vax__} or
Conditionals written like this:
-@example
+@smallexample
#if defined BUFSIZE && BUFSIZE >= 1024
-@end example
+@end smallexample
@noindent
can generally be simplified to just @code{@w{#if BUFSIZE >= 1024}},
@@ -3010,7 +3010,7 @@ The @samp{#else} directive can be added to a conditional to provide
alternative text to be used if the condition fails. This is what it
looks like:
-@example
+@smallexample
@group
#if @var{expression}
@var{text-if-true}
@@ -3018,7 +3018,7 @@ looks like:
@var{text-if-false}
#endif /* Not @var{expression} */
@end group
-@end example
+@end smallexample
@noindent
If @var{expression} is nonzero, the @var{text-if-true} is included and
@@ -3034,7 +3034,7 @@ You can use @samp{#else} with @samp{#ifdef} and @samp{#ifndef}, too.
One common case of nested conditionals is used to check for more than two
possible alternatives. For example, you might have
-@example
+@smallexample
#if X == 1
@dots{}
#else /* X != 1 */
@@ -3044,12 +3044,12 @@ possible alternatives. For example, you might have
@dots{}
#endif /* X != 2 */
#endif /* X != 1 */
-@end example
+@end smallexample
Another conditional directive, @samp{#elif}, allows this to be
abbreviated as follows:
-@example
+@smallexample
#if X == 1
@dots{}
#elif X == 2
@@ -3057,7 +3057,7 @@ abbreviated as follows:
#else /* X != 2 and X != 1*/
@dots{}
#endif /* X != 2 and X != 1*/
-@end example
+@end smallexample
@samp{#elif} stands for ``else if''. Like @samp{#else}, it goes in the
middle of a conditional group and subdivides it; it does not require a
@@ -3117,23 +3117,23 @@ combination of parameters which you know the program does not properly
support. For example, if you know that the program will not run
properly on a VAX, you might write
-@example
+@smallexample
@group
#ifdef __vax__
#error "Won't work on VAXen. See comments at get_last_object."
#endif
@end group
-@end example
+@end smallexample
If you have several configuration parameters that must be set up by
the installation in a consistent way, you can use conditionals to detect
an inconsistency and report it with @samp{#error}. For example,
-@example
+@smallexample
#if !defined(UNALIGNED_INT_ASM_OP) && defined(DWARF2_DEBUGGING_INFO)
#error "DWARF2_DEBUGGING_INFO requires UNALIGNED_INT_ASM_OP."
#endif
-@end example
+@end smallexample
@findex #warning
The directive @samp{#warning} is like @samp{#error}, but causes the
@@ -3267,18 +3267,18 @@ literal. It is destringized, by replacing all @samp{\\} with a single
processed as if it had appeared as the right hand side of a
@samp{#pragma} directive. For example,
-@example
+@smallexample
_Pragma ("GCC dependency \"parse.y\"")
-@end example
+@end smallexample
@noindent
has the same effect as @code{#pragma GCC dependency "parse.y"}. The
same effect could be achieved using macros, for example
-@example
+@smallexample
#define DO_PRAGMA(x) _Pragma (#x)
DO_PRAGMA (GCC dependency "parse.y")
-@end example
+@end smallexample
The standard is unclear on where a @code{_Pragma} operator can appear.
The preprocessor does not accept it within a preprocessing conditional
@@ -3300,10 +3300,10 @@ other file is searched for using the normal include search path.
Optional trailing text can be used to give more information in the
warning message.
-@example
+@smallexample
#pragma GCC dependency "parse.y"
#pragma GCC dependency "/usr/include/time.h" rerun fixincludes
-@end example
+@end smallexample
@item #pragma GCC poison
Sometimes, there is an identifier that you want to remove completely
@@ -3313,10 +3313,10 @@ enforce this, you can @dfn{poison} the identifier with this pragma.
poison. If any of those identifiers appears anywhere in the source
after the directive, it is a hard error. For example,
-@example
+@smallexample
#pragma GCC poison printf sprintf fprintf
sprintf(some_string, "hello");
-@end example
+@end smallexample
@noindent
will produce an error.
@@ -3328,11 +3328,11 @@ about system headers defining macros that use it.
For example,
-@example
+@smallexample
#define strrchr rindex
#pragma GCC poison rindex
strrchr(some_string, 'h');
-@end example
+@end smallexample
@noindent
will not produce an error.
@@ -3401,9 +3401,9 @@ necessary to prevent an accidental token paste.
Source file name and line number information is conveyed by lines
of the form
-@example
+@smallexample
# @var{linenum} @var{filename} @var{flags}
-@end example
+@end smallexample
@noindent
These are called @dfn{linemarkers}. They are inserted as needed into
@@ -3924,9 +3924,9 @@ all.
@cindex predicates
An assertion looks like this:
-@example
+@smallexample
#@var{predicate} (@var{answer})
-@end example
+@end smallexample
@noindent
@var{predicate} must be a single identifier. @var{answer} can be any
@@ -3942,26 +3942,26 @@ To test an assertion, you write it in an @samp{#if}. For example, this
conditional succeeds if either @code{vax} or @code{ns16000} has been
asserted as an answer for @code{machine}.
-@example
+@smallexample
#if #machine (vax) || #machine (ns16000)
-@end example
+@end smallexample
@noindent
You can test whether @emph{any} answer is asserted for a predicate by
omitting the answer in the conditional:
-@example
+@smallexample
#if #machine
-@end example
+@end smallexample
@findex #assert
Assertions are made with the @samp{#assert} directive. Its sole
argument is the assertion to make, without the leading @samp{#} that
identifies assertions in conditionals.
-@example
+@smallexample
#assert @var{predicate} (@var{answer})
-@end example
+@end smallexample
@noindent
You may make several assertions with the same predicate and different
@@ -3977,9 +3977,9 @@ answer which was specified on the @samp{#unassert} line; other answers
for that predicate remain true. You can cancel an entire predicate by
leaving out the answer:
-@example
+@smallexample
#unassert @var{predicate}
-@end example
+@end smallexample
@noindent
In either form, if no such assertion has been made, @samp{#unassert} has
@@ -4135,7 +4135,7 @@ cpp [@option{-D}@var{macro}[=@var{defn}]@dots{}] [@option{-U}@var{macro}]
[@option{-M}|@option{-MM}] [@option{-MG}] [@option{-MF} @var{filename}]
[@option{-MP}] [@option{-MQ} @var{target}@dots{}]
[@option{-MT} @var{target}@dots{}]
- [@option{-P}] [@option{-fno-working-directory}]
+ [@option{-P}] [@option{-fno-working-directory}]
[@option{-x} @var{language}] [@option{-std=}@var{standard}]
@var{infile} @var{outfile}
@@ -4188,7 +4188,7 @@ Note that you can also specify places to search using options such as
@option{-M} (@pxref{Invocation}). These take precedence over
environment variables, which in turn take precedence over the
configuration of GCC@.
-
+
@include cppenv.texi
@c man end
diff --git a/gcc/doc/cppenv.texi b/gcc/doc/cppenv.texi
index 7a913f15903..bb29cb2d140 100644
--- a/gcc/doc/cppenv.texi
+++ b/gcc/doc/cppenv.texi
@@ -1,4 +1,4 @@
-@c Copyright (c) 1999, 2000, 2001, 2002
+@c Copyright (c) 1999, 2000, 2001, 2002, 2004
@c Free Software Foundation, Inc.
@c This is part of the CPP and GCC manuals.
@c For copying conditions, see the file gcc.texi.
@@ -20,7 +20,7 @@
Each variable's value is a list of directories separated by a special
character, much like @env{PATH}, in which to look for header files.
The special character, @code{PATH_SEPARATOR}, is target-dependent and
-determined at GCC build time. For Windows-based targets it is a
+determined at GCC build time. For Microsoft Windows-based targets it is a
semicolon, and for almost all other targets it is a colon.
@env{CPATH} specifies a list of directories to be searched as if
diff --git a/gcc/doc/cppopts.texi b/gcc/doc/cppopts.texi
index 2e7f50e37a6..fb8f5c72122 100644
--- a/gcc/doc/cppopts.texi
+++ b/gcc/doc/cppopts.texi
@@ -1,4 +1,4 @@
-@c Copyright (c) 1999, 2000, 2001, 2002, 2003
+@c Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004
@c Free Software Foundation, Inc.
@c This is part of the CPP and GCC manuals.
@c For copying conditions, see the file gcc.texi.
@@ -255,11 +255,11 @@ files without updating the @file{Makefile} to match.
This is typical output:
-@example
+@smallexample
test.o: test.c test.h
test.h:
-@end example
+@end smallexample
@item -MT @var{target}
@opindex MT
@@ -275,9 +275,9 @@ argument to @option{-MT}, or use multiple @option{-MT} options.
For example, @option{@w{-MT '$(objpfx)foo.o'}} might give
-@example
+@smallexample
$(objpfx)foo.o: foo.c
-@end example
+@end smallexample
@item -MQ @var{target}
@opindex MQ
@@ -285,9 +285,9 @@ $(objpfx)foo.o: foo.c
Same as @option{-MT}, but it quotes any characters which are special to
Make. @option{@w{-MQ '$(objpfx)foo.o'}} gives
-@example
+@smallexample
$$(objpfx)foo.o: foo.c
-@end example
+@end smallexample
The default target is automatically quoted, as if it were given with
@option{-MQ}.
@@ -511,6 +511,16 @@ corresponds to the width of @code{wchar_t}. As with
by the system's @code{iconv} library routine; however, you will have
problems with encodings that do not fit exactly in @code{wchar_t}.
+@item -finput-charset=@var{charset}
+@opindex finput-charset
+Set the input character set, used for translation from the character
+set of the input file to the source character set used by GCC. If the
+locale does not specify, or GCC cannot get this information from the
+locale, the default is UTF-8. This can be overridden by either the locale
+or this command line option. Currently the command line option takes
+precedence if there's a conflict. @var{charset} can be any encoding
+supported by the system's @code{iconv} library routine.
+
@item -fworking-directory
@opindex fworking-directory
@opindex fno-working-directory
@@ -563,9 +573,9 @@ preprocessor, including predefined macros. This gives you a way of
finding out what is predefined in your version of the preprocessor.
Assuming you have no file @file{foo.h}, the command
-@example
+@smallexample
touch foo.h; cpp -dM foo.h
-@end example
+@end smallexample
@noindent
will show all the predefined macros.
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index e0361dff025..2a166994921 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -253,7 +253,7 @@ The @code{register} specifier affects code generation only in these ways:
@itemize @bullet
@item
-When used as part of the register variable extension, see
+When used as part of the register variable extension, see
@ref{Explicit Reg Vars}.
@item
@@ -494,12 +494,12 @@ Recall that a compound statement is a sequence of statements surrounded
by braces; in this construct, parentheses go around the braces. For
example:
-@example
+@smallexample
(@{ int y = foo (); int z;
if (y > 0) z = y;
else z = - y;
z; @})
-@end example
+@end smallexample
@noindent
is a valid (though slightly more complex than necessary) expression
@@ -516,9 +516,9 @@ that they evaluate each operand exactly once). For example, the
``maximum'' function is commonly defined as a macro in standard C as
follows:
-@example
+@smallexample
#define max(a,b) ((a) > (b) ? (a) : (b))
-@end example
+@end smallexample
@noindent
@cindex side effects, macro argument
@@ -527,10 +527,10 @@ results if the operand has side effects. In GNU C, if you know the
type of the operands (here let's assume @code{int}), you can define
the macro safely as follows:
-@example
+@smallexample
#define maxint(a,b) \
(@{int _a = (a), _b = (b); _a > _b ? _a : _b; @})
-@end example
+@end smallexample
Embedded statements are not allowed in constant expressions, such as
the value of an enumeration constant, the width of a bit-field, or
@@ -594,20 +594,20 @@ bug.)
GCC allows you to declare @dfn{local labels} in any nested block
scope. A local label is just like an ordinary label, but you can
only reference it (with a @code{goto} statement, or by taking its
-address) within the block in which it was declared.
+address) within the block in which it was declared.
A local label declaration looks like this:
-@example
+@smallexample
__label__ @var{label};
-@end example
+@end smallexample
@noindent
or
-@example
+@smallexample
__label__ @var{label1}, @var{label2}, /* @r{@dots{}} */;
-@end example
+@end smallexample
Local label declarations must come at the beginning of the block,
before any ordinary declarations or statements.
@@ -623,7 +623,7 @@ cannot be used: if the macro can be expanded several times in one
function, the label will be multiply defined in that function. A
local label avoids this problem. For example:
-@example
+@smallexample
#define SEARCH(value, array, target) \
do @{ \
__label__ found; \
@@ -638,11 +638,11 @@ do @{ \
(value) = -1; \
found:; \
@} while (0)
-@end example
+@end smallexample
This could also be written using a statement-expression:
-@example
+@smallexample
#define SEARCH(array, target) \
(@{ \
__label__ found; \
@@ -658,7 +658,7 @@ This could also be written using a statement-expression:
found: \
value; \
@})
-@end example
+@end smallexample
Local label declarations also make the labels they declare visible to
nested functions, if there are any. @xref{Nested Functions}, for details.
@@ -675,11 +675,11 @@ You can get the address of a label defined in the current function
value has type @code{void *}. This value is a constant and can be used
wherever a constant of that type is valid. For example:
-@example
+@smallexample
void *ptr;
/* @r{@dots{}} */
ptr = &&foo;
-@end example
+@end smallexample
To use these values, you need to be able to jump to one. This is done
with the computed goto statement@footnote{The analogous feature in
@@ -687,9 +687,9 @@ Fortran is called an assigned goto, but that name seems inappropriate in
C, where one can do more than simply store label addresses in label
variables.}, @code{goto *@var{exp};}. For example,
-@example
+@smallexample
goto *ptr;
-@end example
+@end smallexample
@noindent
Any expression of type @code{void *} is allowed.
@@ -697,15 +697,15 @@ Any expression of type @code{void *} is allowed.
One way of using these constants is in initializing a static array that
will serve as a jump table:
-@example
+@smallexample
static void *array[] = @{ &&foo, &&bar, &&hack @};
-@end example
+@end smallexample
Then you can select a label with indexing, like this:
-@example
+@smallexample
goto *array[i];
-@end example
+@end smallexample
@noindent
Note that this does not check whether the subscript is in bounds---array
@@ -727,11 +727,11 @@ never pass it as an argument.
An alternate way to write the above example is
-@example
+@smallexample
static const int array[] = @{ &&foo - &&foo, &&bar - &&foo,
&&hack - &&foo @};
goto *(&&foo + array[i]);
-@end example
+@end smallexample
@noindent
This is more friendly to code living in shared libraries, as it reduces
@@ -749,7 +749,7 @@ A @dfn{nested function} is a function defined inside another function.
name is local to the block where it is defined. For example, here we
define a nested function named @code{square}, and call it twice:
-@example
+@smallexample
@group
foo (double a, double b)
@{
@@ -758,14 +758,14 @@ foo (double a, double b)
return square (a) + square (b);
@}
@end group
-@end example
+@end smallexample
The nested function can access all the variables of the containing
function that are visible at the point of its definition. This is
called @dfn{lexical scoping}. For example, here we show a nested
function which uses an inherited variable named @code{offset}:
-@example
+@smallexample
@group
bar (int *array, int offset, int size)
@{
@@ -777,7 +777,7 @@ bar (int *array, int offset, int size)
/* @r{@dots{}} */ access (array, i) /* @r{@dots{}} */
@}
@end group
-@end example
+@end smallexample
Nested function definitions are permitted within functions in the places
where variable definitions are allowed; that is, in any block, before
@@ -786,7 +786,7 @@ the first statement in the block.
It is possible to call the nested function from outside the scope of its
name by storing its address or passing the address to another function:
-@example
+@smallexample
hack (int *array, int size)
@{
void store (int index, int value)
@@ -794,7 +794,7 @@ hack (int *array, int size)
intermediate (store, size);
@}
-@end example
+@end smallexample
Here, the function @code{intermediate} receives the address of
@code{store} as an argument. If @code{intermediate} calls @code{store},
@@ -822,7 +822,7 @@ function (@pxref{Local Labels}). Such a jump returns instantly to the
containing function, exiting the nested function which did the
@code{goto} and any intermediate functions as well. Here is an example:
-@example
+@smallexample
@group
bar (int *array, int offset, int size)
@{
@@ -846,14 +846,14 @@ bar (int *array, int offset, int size)
return -1;
@}
@end group
-@end example
+@end smallexample
A nested function always has internal linkage. Declaring one with
@code{extern} is erroneous. If you need to declare the nested function
before its definition, use @code{auto} (which is otherwise meaningless
for function declarations).
-@example
+@smallexample
bar (int *array, int offset, int size)
@{
__label__ failure;
@@ -867,7 +867,7 @@ bar (int *array, int offset, int size)
@}
/* @r{@dots{}} */
@}
-@end example
+@end smallexample
@node Constructing Calls
@section Constructing Function Calls
@@ -938,9 +938,9 @@ construct acts semantically like a type name defined with @code{typedef}.
There are two ways of writing the argument to @code{typeof}: with an
expression or with a type. Here is an example with an expression:
-@example
+@smallexample
typeof (x[0](1))
-@end example
+@end smallexample
@noindent
This assumes that @code{x} is an array of pointers to functions;
@@ -948,9 +948,9 @@ the type described is that of the values of the functions.
Here is an example with a typename as the argument:
-@example
+@smallexample
typeof (int *)
-@end example
+@end smallexample
@noindent
Here the type described is that of pointers to @code{int}.
@@ -968,12 +968,12 @@ statements-within-expressions feature. Here is how the two together can
be used to define a safe ``maximum'' macro that operates on any
arithmetic type and evaluates each of its arguments exactly once:
-@example
+@smallexample
#define max(a,b) \
(@{ typeof (a) _a = (a); \
typeof (b) _b = (b); \
_a > _b ? _a : _b; @})
-@end example
+@end smallexample
@cindex underscores in variables in macros
@cindex @samp{_} in variables in macros
@@ -995,45 +995,45 @@ Some more examples of the use of @code{typeof}:
@item
This declares @code{y} with the type of what @code{x} points to.
-@example
+@smallexample
typeof (*x) y;
-@end example
+@end smallexample
@item
This declares @code{y} as an array of such values.
-@example
+@smallexample
typeof (*x) y[4];
-@end example
+@end smallexample
@item
This declares @code{y} as an array of pointers to characters:
-@example
+@smallexample
typeof (typeof (char *)[4]) y;
-@end example
+@end smallexample
@noindent
It is equivalent to the following traditional C declaration:
-@example
+@smallexample
char *y[4];
-@end example
+@end smallexample
To see the meaning of the declaration using @code{typeof}, and why it
might be a useful way to write, let's rewrite it with these macros:
-@example
+@smallexample
#define pointer(T) typeof(T *)
#define array(T, N) typeof(T [N])
-@end example
+@end smallexample
@noindent
Now the declaration can be rewritten this way:
-@example
+@smallexample
array (pointer (char), 4) y;
-@end example
+@end smallexample
@noindent
Thus, @code{array (pointer (char), 4)} is the type of arrays of 4
@@ -1043,9 +1043,9 @@ pointers to @code{char}.
@emph{Compatibility Note:} In addition to @code{typeof}, GCC 2 supported
a more limited extension which permitted one to write
-@example
+@smallexample
typedef @var{T} = @var{expr};
-@end example
+@end smallexample
@noindent
with the effect of declaring @var{T} to have the type of the expression
@@ -1053,9 +1053,9 @@ with the effect of declaring @var{T} to have the type of the expression
3.0 and 3.2 will crash; 3.2.1 and later give an error). Code which
relies on it should be rewritten to use @code{typeof}:
-@example
+@smallexample
typedef typeof(@var{expr}) @var{T};
-@end example
+@end smallexample
@noindent
This will work with all versions of GCC@.
@@ -1085,27 +1085,27 @@ For example, a compound expression can be assigned, provided the last
expression in the sequence is an lvalue. These two expressions are
equivalent:
-@example
+@smallexample
(a, b) += 5
a, (b += 5)
-@end example
+@end smallexample
Similarly, the address of the compound expression can be taken. These two
expressions are equivalent:
-@example
+@smallexample
&(a, b)
a, &b
-@end example
+@end smallexample
A conditional expression is a valid lvalue if its type is not void and the
true and false branches are both valid lvalues. For example, these two
expressions are equivalent:
-@example
+@smallexample
(a ? b : c) = 5
(a ? b = 5 : (c = 5))
-@end example
+@end smallexample
A cast is a valid lvalue if its operand is an lvalue. This extension
is deprecated. A simple
@@ -1116,20 +1116,20 @@ converted back to the specified type to become the value of the
assignment. Thus, if @code{a} has type @code{char *}, the following two
expressions are equivalent:
-@example
+@smallexample
(int)a = 5
(int)(a = (char *)(int)5)
-@end example
+@end smallexample
An assignment-with-arithmetic operation such as @samp{+=} applied to a cast
performs the arithmetic using the type resulting from the cast, and then
continues as in the previous case. Therefore, these two expressions are
equivalent:
-@example
+@smallexample
(int)a += 5
(int)(a = (char *)(int) ((int)a + 5))
-@end example
+@end smallexample
You cannot take the address of an lvalue cast, because the use of its
address would not work out coherently. Suppose that @code{&(int)f} were
@@ -1137,9 +1137,9 @@ permitted, where @code{f} has type @code{float}. Then the following
statement would try to store an integer bit-pattern where a floating
point number belongs:
-@example
+@smallexample
*&(int)f = 1;
-@end example
+@end smallexample
This is quite different from what @code{(int)f = 1} would do---that
would convert 1 to floating point and store it. Rather than cause this
@@ -1162,9 +1162,9 @@ expression.
Therefore, the expression
-@example
+@smallexample
x ? : y
-@end example
+@end smallexample
@noindent
has the value of @code{x} if that is nonzero; otherwise, the value of
@@ -1172,9 +1172,9 @@ has the value of @code{x} if that is nonzero; otherwise, the value of
This example is perfectly equivalent to
-@example
+@smallexample
x ? x : y
-@end example
+@end smallexample
@cindex side effect in ?:
@cindex ?: side effect
@@ -1312,7 +1312,7 @@ Zero-length arrays are allowed in GNU C@. They are very useful as the
last element of a structure which is really a header for a variable-length
object:
-@example
+@smallexample
struct line @{
int length;
char contents[0];
@@ -1321,7 +1321,7 @@ struct line @{
struct line *thisline = (struct line *)
malloc (sizeof (struct line) + this_length);
thisline->length = this_length;
-@end example
+@end smallexample
In ISO C90, you would have to give @code{contents} a length of 1, which
means either you waste space or complicate the argument to @code{malloc}.
@@ -1365,7 +1365,7 @@ structure followed by an array of sufficient size to contain the data.
I.e.@: in the following, @code{f1} is constructed as if it were declared
like @code{f2}.
-@example
+@smallexample
struct f1 @{
int x; int y[];
@} f1 = @{ 1, @{ 2, 3, 4 @} @};
@@ -1373,7 +1373,7 @@ struct f1 @{
struct f2 @{
struct f1 f1; int data[3];
@} f2 = @{ @{ 1 @}, @{ 2, 3, 4 @} @};
-@end example
+@end smallexample
@noindent
The convenience of this extension is that @code{f1} has the desired
@@ -1389,7 +1389,7 @@ with initialization of deeply nested arrays, we simply disallow any
non-empty initialization except when the structure is the top-level
object. For example:
-@example
+@smallexample
struct foo @{ int x; int y[]; @};
struct bar @{ struct foo z; @};
@@ -1397,7 +1397,7 @@ struct foo a = @{ 1, @{ 2, 3, 4 @} @}; // @r{Valid.}
struct bar b = @{ @{ 1, @{ 2, 3, 4 @} @} @}; // @r{Invalid.}
struct bar c = @{ @{ 1, @{ @} @} @}; // @r{Valid.}
struct foo d[1] = @{ @{ 1 @{ 2, 3, 4 @} @} @}; // @r{Invalid.}
-@end example
+@end smallexample
@node Empty Structures
@section Structures With No Members
@@ -1406,10 +1406,10 @@ struct foo d[1] = @{ @{ 1 @{ 2, 3, 4 @} @} @}; // @r{Invalid.}
GCC permits a C structure to have no members:
-@example
+@smallexample
struct empty @{
@};
-@end example
+@end smallexample
The structure will have size zero. In C++, empty structures are part
of the language. G++ treats empty structures as if they had a single
@@ -1430,7 +1430,7 @@ a constant expression. The storage is allocated at the point of
declaration and deallocated when the brace-level is exited. For
example:
-@example
+@smallexample
FILE *
concat_fopen (char *s1, char *s2, char *mode)
@{
@@ -1439,7 +1439,7 @@ concat_fopen (char *s1, char *s2, char *mode)
strcat (str, s2);
return fopen (str, mode);
@}
-@end example
+@end smallexample
@cindex scope of a variable length array
@cindex variable-length array scope
@@ -1463,13 +1463,13 @@ will also deallocate anything more recently allocated with @code{alloca}.)
You can also use variable-length arrays as arguments to functions:
-@example
+@smallexample
struct entry
tester (int len, char data[len][len])
@{
/* @r{@dots{}} */
@}
-@end example
+@end smallexample
The length of an array is computed once when the storage is allocated
and is remembered for the scope of the array in case you access it with
@@ -1478,13 +1478,13 @@ and is remembered for the scope of the array in case you access it with
If you want to pass the array first and the length afterward, you can
use a forward declaration in the parameter list---another GNU extension.
-@example
+@smallexample
struct entry
tester (int len; char data[len][len], int len)
@{
/* @r{@dots{}} */
@}
-@end example
+@end smallexample
@cindex parameter forward declaration
The @samp{int len} before the semicolon is a @dfn{parameter forward
@@ -1524,9 +1524,9 @@ GCC has long supported variadic macros, and used a different syntax that
allowed you to give a name to the variable arguments just like any other
argument. Here is an example:
-@example
+@smallexample
#define debug(format, args...) fprintf (stderr, format, args)
-@end example
+@end smallexample
This is in all ways equivalent to the ISO C example above, but arguably
more readable and descriptive.
@@ -1539,9 +1539,9 @@ entirely; but you are allowed to pass an empty argument. For example,
this invocation is invalid in ISO C, because there is no comma after
the string:
-@example
+@smallexample
debug ("A message")
-@end example
+@end smallexample
GNU CPP permits you to completely omit the variable arguments in this
way. In the above examples, the compiler would complain, though since
@@ -1592,7 +1592,7 @@ subscripted in C89 mode, though otherwise they do not decay to
pointers outside C99 mode. For example,
this is valid in GNU C though not valid in C89:
-@example
+@smallexample
@group
struct foo @{int a[4];@};
@@ -1603,7 +1603,7 @@ bar (int index)
return f().a[index];
@}
@end group
-@end example
+@end smallexample
@node Pointer Arith
@section Arithmetic on @code{void}- and Function-Pointers
@@ -1632,13 +1632,13 @@ As in standard C++ and ISO C99, the elements of an aggregate initializer for an
automatic variable are not required to be constant expressions in GNU C@.
Here is an example of an initializer with run-time varying elements:
-@example
+@smallexample
foo (float f, float g)
@{
float beat_freqs[2] = @{ f-g, f+g @};
/* @r{@dots{}} */
@}
-@end example
+@end smallexample
@node Compound Literals
@section Compound Literals
@@ -1658,26 +1658,26 @@ compound literals in C89 mode and in C++.
Usually, the specified type is a structure. Assume that
@code{struct foo} and @code{structure} are declared as shown:
-@example
+@smallexample
struct foo @{int a; char b[2];@} structure;
-@end example
+@end smallexample
@noindent
Here is an example of constructing a @code{struct foo} with a compound literal:
-@example
+@smallexample
structure = ((struct foo) @{x + y, 'a', 0@});
-@end example
+@end smallexample
@noindent
This is equivalent to writing the following:
-@example
+@smallexample
@{
struct foo temp = @{x + y, 'a', 0@};
structure = temp;
@}
-@end example
+@end smallexample
You can also construct an array. If all the elements of the compound literal
are (made up of) simple constant expressions, suitable for use in
@@ -1685,9 +1685,9 @@ initializers of objects of static storage duration, then the compound
literal can be coerced to a pointer to its first element and used in
such an initializer, as shown here:
-@example
+@smallexample
char **foo = (char *[]) @{ "x", "y", "z" @};
-@end example
+@end smallexample
Compound literals for scalar types and union types are is
also allowed, but then the compound literal is equivalent
@@ -1702,19 +1702,19 @@ The initializer list of the compound literal must be constant.
If the object being initialized has array type of unknown size, the size is
determined by compound literal size.
-@example
+@smallexample
static struct foo x = (struct foo) @{1, 'a', 'b'@};
static int y[] = (int []) @{1, 2, 3@};
static int z[] = (int [3]) @{1@};
-@end example
+@end smallexample
@noindent
The above lines are equivalent to the following:
-@example
+@smallexample
static struct foo x = @{1, 'a', 'b'@};
static int y[] = @{1, 2, 3@};
static int z[] = @{1, 0, 0@};
-@end example
+@end smallexample
@node Designated Inits
@section Designated Initializers
@@ -1735,16 +1735,16 @@ implemented in GNU C++.
To specify an array index, write
@samp{[@var{index}] =} before the element value. For example,
-@example
+@smallexample
int a[6] = @{ [4] = 29, [2] = 15 @};
-@end example
+@end smallexample
@noindent
is equivalent to
-@example
+@smallexample
int a[6] = @{ 0, 0, 15, 0, 29, 0 @};
-@end example
+@end smallexample
@noindent
The index values must be constant expressions, even if the array being
@@ -1758,9 +1758,9 @@ To initialize a range of elements to the same value, write
@samp{[@var{first} ... @var{last}] = @var{value}}. This is a GNU
extension. For example,
-@example
+@smallexample
int widths[] = @{ [0 ... 9] = 1, [10 ... 99] = 2, [100] = 3 @};
-@end example
+@end smallexample
@noindent
If the value in it has side-effects, the side-effects will happen only once,
@@ -1774,30 +1774,30 @@ In a structure initializer, specify the name of a field to initialize
with @samp{.@var{fieldname} =} before the element value. For example,
given the following structure,
-@example
+@smallexample
struct point @{ int x, y; @};
-@end example
+@end smallexample
@noindent
the following initialization
-@example
+@smallexample
struct point p = @{ .y = yvalue, .x = xvalue @};
-@end example
+@end smallexample
@noindent
is equivalent to
-@example
+@smallexample
struct point p = @{ xvalue, yvalue @};
-@end example
+@end smallexample
Another syntax which has the same meaning, obsolete since GCC 2.5, is
@samp{@var{fieldname}:}, as shown here:
-@example
+@smallexample
struct point p = @{ y: yvalue, x: xvalue @};
-@end example
+@end smallexample
@cindex designators
The @samp{[@var{index}]} or @samp{.@var{fieldname}} is known as a
@@ -1805,11 +1805,11 @@ The @samp{[@var{index}]} or @samp{.@var{fieldname}} is known as a
syntax) when initializing a union, to specify which element of the union
should be used. For example,
-@example
+@smallexample
union foo @{ int i; double d; @};
union foo f = @{ .d = 4 @};
-@end example
+@end smallexample
@noindent
will convert 4 to a @code{double} to store it in the union using
@@ -1822,26 +1822,26 @@ initialization of successive elements. Each initializer element that
does not have a designator applies to the next consecutive element of the
array or structure. For example,
-@example
+@smallexample
int a[6] = @{ [1] = v1, v2, [4] = v4 @};
-@end example
+@end smallexample
@noindent
is equivalent to
-@example
+@smallexample
int a[6] = @{ 0, v1, v2, 0, v4, 0 @};
-@end example
+@end smallexample
Labeling the elements of an array initializer is especially useful
when the indices are characters or belong to an @code{enum} type.
For example:
-@example
+@smallexample
int whitespace[256]
= @{ [' '] = 1, ['\t'] = 1, ['\h'] = 1,
['\f'] = 1, ['\n'] = 1, ['\r'] = 1 @};
-@end example
+@end smallexample
@cindex designator lists
You can also write a series of @samp{.@var{fieldname}} and
@@ -1858,7 +1858,7 @@ struct point ptarray[10] = @{ [2].y = yv2, [2].x = xv2, [0].x = xv0 @};
If the same field is initialized multiple times, it will have value from
the last initialization. If any such overridden initialization has
side-effect, it is unspecified whether the side-effect happens or not.
-Currently, gcc will discard them and issue a warning.
+Currently, GCC will discard them and issue a warning.
@node Case Ranges
@section Case Ranges
@@ -1868,9 +1868,9 @@ Currently, gcc will discard them and issue a warning.
You can specify a range of consecutive values in a single @code{case} label,
like this:
-@example
+@smallexample
case @var{low} ... @var{high}:
-@end example
+@end smallexample
@noindent
This has the same effect as the proper number of individual @code{case}
@@ -1878,24 +1878,24 @@ labels, one for each integer value from @var{low} to @var{high}, inclusive.
This feature is especially useful for ranges of ASCII character codes:
-@example
+@smallexample
case 'A' ... 'Z':
-@end example
+@end smallexample
@strong{Be careful:} Write spaces around the @code{...}, for otherwise
it may be parsed wrong when you use it with integer values. For example,
write this:
-@example
+@smallexample
case 1 ... 5:
-@end example
+@end smallexample
@noindent
rather than this:
-@example
+@smallexample
case 1...5:
-@end example
+@end smallexample
@node Cast to Union
@section Cast to a Union Type
@@ -1911,11 +1911,11 @@ normal casts. (@xref{Compound Literals}.)
The types that may be cast to the union type are those of the members
of the union. Thus, given the following union and variables:
-@example
+@smallexample
union foo @{ int i; double d; @};
int x;
double y;
-@end example
+@end smallexample
@noindent
both @code{x} and @code{y} can be cast to type @code{union foo}.
@@ -1923,20 +1923,20 @@ both @code{x} and @code{y} can be cast to type @code{union foo}.
Using the cast as the right-hand side of an assignment to a variable of
union type is equivalent to storing in a member of the union:
-@example
+@smallexample
union foo u;
/* @r{@dots{}} */
u = (union foo) x @equiv{} u.i = x
u = (union foo) y @equiv{} u.d = y
-@end example
+@end smallexample
You can also use the union cast as a function argument:
-@example
+@smallexample
void hack (union foo);
/* @r{@dots{}} */
hack ((union foo) x);
-@end example
+@end smallexample
@node Mixed Declarations
@section Mixed Declarations and Code
@@ -1948,12 +1948,12 @@ ISO C99 and ISO C++ allow declarations and code to be freely mixed
within compound statements. As an extension, GCC also allows this in
C89 mode. For example, you could do:
-@example
+@smallexample
int i;
/* @r{@dots{}} */
i++;
int j = i + 2;
-@end example
+@end smallexample
Each identifier is visible from where it is declared until the end of
the enclosing block.
@@ -2394,7 +2394,7 @@ See the ELF gABI for complete details, but the short story is:
@table @dfn
@item default
-Default visibility is the normal case for ELF. This value is
+Default visibility is the normal case for ELF. This value is
available for the visibility attribute to override other options
that may change the assumed visibility of symbols.
@@ -2412,11 +2412,11 @@ by another module.
@item internal
Internal visibility is like hidden visibility, but with additional
processor specific semantics. Unless otherwise specified by the psABI,
-gcc defines internal visibility to mean that the function is @emph{never}
+GCC defines internal visibility to mean that the function is @emph{never}
called from another module. Note that hidden symbols, while they cannot
be referenced directly by other modules, can be referenced indirectly via
function pointers. By indicating that a symbol cannot be called from
-outside the module, gcc may for instance omit the load of a PIC register
+outside the module, GCC may for instance omit the load of a PIC register
since it is known that the calling function loaded the correct value.
@end table
@@ -2451,7 +2451,7 @@ pass arguments, unless it takes a variable number of arguments.
@cindex functions that pop the argument stack on the 386
On the Intel 386, the @code{fastcall} attribute causes the compiler to
pass the first two arguments in the registers ECX and EDX. Subsequent
-arguments are passed on the stack. The called function will pop the
+arguments are passed on the stack. The called function will pop the
arguments off the stack. If the number of arguments is variable all
arguments are pushed on the stack.
@@ -2636,9 +2636,9 @@ option.
@item dllimport
@cindex @code{__declspec(dllimport)}
-On Windows targets, the @code{dllimport} attribute causes the compiler
+On Microsoft Windows targets, the @code{dllimport} attribute causes the compiler
to reference a function or variable via a global pointer to a pointer
-that is set up by the Windows dll library. The pointer name is formed by
+that is set up by the Microsoft Windows dll library. The pointer name is formed by
combining @code{_imp__} and the function or variable name. The attribute
implies @code{extern} storage.
@@ -2647,7 +2647,7 @@ attribute is applied to a symbol @emph{definition}, an error is reported.
If a symbol previously declared @code{dllimport} is later defined, the
attribute is ignored in subsequent references, and a warning is emitted.
The attribute is also overridden by a subsequent declaration as
-@code{dllexport}.
+@code{dllexport}.
When applied to C++ classes, the attribute marks non-inlined
member functions and static data members as imports. However, the
@@ -2656,14 +2656,14 @@ using thunks.
On cygwin, mingw and arm-pe targets, @code{__declspec(dllimport)} is
recognized as a synonym for @code{__attribute__ ((dllimport))} for
-compatibility with other Windows compilers.
+compatibility with other Microsoft Windows compilers.
The use of the @code{dllimport} attribute on functions is not necessary,
but provides a small performance benefit by eliminating a thunk in the
dll. The use of the @code{dllimport} attribute on imported variables was
required on older versions of GNU ld, but can now be avoided by passing
the @option{--enable-auto-import} switch to ld. As with functions, using
-the attribute for a variable eliminates a thunk in the dll.
+the attribute for a variable eliminates a thunk in the dll.
One drawback to using this attribute is that a pointer to a function or
variable marked as dllimport cannot be used as a constant address. The
@@ -2672,7 +2672,7 @@ attribute can be disabled for functions by setting the
@item dllexport
@cindex @code{__declspec(dllexport)}
-On Windows targets the @code{dllexport} attribute causes the compiler to
+On Microsoft Windows targets the @code{dllexport} attribute causes the compiler to
provide a global pointer to a pointer in a dll, so that it can be
referenced with the @code{dllimport} attribute. The pointer name is
formed by combining @code{_imp__} and the function or variable name.
@@ -2689,7 +2689,7 @@ out-of-class.
On cygwin, mingw and arm-pe targets, @code{__declspec(dllexport)} is
recognized as a synonym for @code{__attribute__ ((dllexport))} for
-compatibility with other Windows compilers.
+compatibility with other Microsoft Windows compilers.
Alternative methods for including the symbol in the dll's export table
are to use a .def file with an @code{EXPORTS} section or, with GNU ld,
@@ -2974,7 +2974,7 @@ to the function type.
GNU C extends ISO C to allow a function prototype to override a later
old-style non-prototype definition. Consider the following example:
-@example
+@smallexample
/* @r{Use prototypes unless the compiler is old-fashioned.} */
#ifdef __STDC__
#define P(x) x
@@ -2992,7 +2992,7 @@ isroot (x) /* ??? lossage here ??? */
@{
return x == 0;
@}
-@end example
+@end smallexample
Suppose the type @code{uid_t} happens to be @code{short}. ISO C does
not allow this example, because subword arguments in old-style
@@ -3010,7 +3010,7 @@ by a later old-style definition if the former type is the same as the
latter type before promotion. Thus in GNU C the above example is
equivalent to the following:
-@example
+@smallexample
int isroot (uid_t);
int
@@ -3018,7 +3018,7 @@ isroot (uid_t x)
@{
return x == 0;
@}
-@end example
+@end smallexample
@noindent
GNU C++ does not support old-style function definitions, so this
@@ -3079,9 +3079,9 @@ any minimum alignment specified with GCC's @code{__attribute__}
extension (@pxref{Variable Attributes}). For example, after this
declaration:
-@example
+@smallexample
struct foo @{ int x; char y; @} foo1;
-@end example
+@end smallexample
@noindent
the value of @code{__alignof__ (foo1.y)} is 1, even though its actual
@@ -3196,7 +3196,7 @@ The @code{common} attribute requests GCC to place a variable in
``common'' storage. The @code{nocommon} attribute requests the
opposite -- to allocate space for it directly.
-These attributes override the default chosen by the
+These attributes override the default chosen by the
@option{-fno-common} and @option{-fcommon} flags respectively.
@item deprecated
@@ -3241,13 +3241,13 @@ and one bit for a field, unless you specify a larger value with the
Here is a structure in which the field @code{x} is packed, so that it
immediately follows @code{a}:
-@example
+@smallexample
struct foo
@{
char a;
int x[2] __attribute__ ((packed));
@};
-@end example
+@end smallexample
@item section ("@var{section-name}")
@cindex @code{section} variable attribute
@@ -3299,7 +3299,7 @@ section, consider using the facilities of the linker instead.
@item shared
@cindex @code{shared} variable attribute
-On Windows, in addition to putting variable definitions in a named
+On Microsoft Windows, in addition to putting variable definitions in a named
section, the section can also be shared among all running copies of an
executable or DLL@. For example, this small program defines shared data
by putting it in a named section @code{shared} and marking the section
@@ -3322,7 +3322,7 @@ You may only use the @code{shared} attribute along with @code{section}
attribute with a fully initialized global definition because of the way
linkers work. See @code{section} attribute for more information.
-The @code{shared} attribute is only available on Windows@.
+The @code{shared} attribute is only available on Microsoft Windows@.
@item tls_model ("@var{tls_model}")
@cindex @code{tls_model} attribute
@@ -3425,7 +3425,7 @@ data between functions compiled with GCC and the native Microsoft compiler
(either via function call or as data in a file), it may be necessary to access
either format.
-Currently @option{-m[no-]ms-bitfields} is provided for the Windows X86
+Currently @option{-m[no-]ms-bitfields} is provided for the Microsoft Windows X86
compilers to match the native Microsoft compiler.
@end table
@@ -3622,19 +3622,19 @@ This interface allows either @code{int *} or @code{union wait *}
arguments to be passed, using the @code{int *} calling convention.
The program can call @code{wait} with arguments of either type:
-@example
+@smallexample
int w1 () @{ int w; return wait (&w); @}
int w2 () @{ union wait w; return wait (&w); @}
-@end example
+@end smallexample
With this interface, @code{wait}'s implementation might look like this:
-@example
+@smallexample
pid_t wait (wait_status_ptr_t p)
@{
return waitpid (-1, p.__ip, 0);
@}
-@end example
+@end smallexample
@item unused
When attached to a type (including a @code{union} or a @code{struct}),
@@ -3721,7 +3721,7 @@ data between functions compiled with GCC and the native Microsoft compiler
(either via function call or as data in a file), it may be necessary to access
either format.
-Currently @option{-m[no-]ms-bitfields} is provided for the Windows X86
+Currently @option{-m[no-]ms-bitfields} is provided for the Microsoft Windows X86
compilers to match the native Microsoft compiler.
@end table
@@ -3754,13 +3754,13 @@ the ISO C99 standard requires.
To declare a function inline, use the @code{inline} keyword in its
declaration, like this:
-@example
+@smallexample
inline int
inc (int *a)
@{
(*a)++;
@}
-@end example
+@end smallexample
(If you are writing a header file to be included in ISO C programs, write
@code{__inline__} instead of @code{inline}. @xref{Alternate Keywords}.)
@@ -3835,10 +3835,10 @@ that will implement the C99 semantics, though it does not do so yet.)
GCC does not inline any functions when not optimizing unless you specify
the @samp{always_inline} attribute for the function, like this:
-@example
+@smallexample
/* Prototype. */
inline void foo (const char) __attribute__((always_inline));
-@end example
+@end smallexample
@node Extended Asm
@section Assembler Instructions with C Expression Operands
@@ -3858,9 +3858,9 @@ each operand.
For example, here is how to use the 68881's @code{fsinx} instruction:
-@example
+@smallexample
asm ("fsinx %1,%0" : "=f" (result) : "f" (angle));
-@end example
+@end smallexample
@noindent
Here @code{angle} is the C expression for the input operand while
@@ -3890,11 +3890,11 @@ assembler code using @code{%[@var{name}]} instead of a percentage sign
followed by the operand number. Using named operands the above example
could look like:
-@example
+@smallexample
asm ("fsinx %[angle],%[output]"
: [output] "=f" (result)
: [angle] "f" (angle));
-@end example
+@end smallexample
@noindent
Note that the symbolic operand names have no relation whatsoever to
@@ -3932,9 +3932,9 @@ different expressions. For example, here we write the (fictitious)
@samp{combine} instruction with @code{bar} as its read-only source
operand and @code{foo} as its read-write destination:
-@example
+@smallexample
asm ("combine %2,%0" : "=r" (foo) : "0" (foo), "g" (bar));
-@end example
+@end smallexample
@noindent
The constraint @samp{"0"} for operand 1 says that it must occupy the
@@ -3947,9 +3947,9 @@ of both operands is not enough to guarantee that they will be in the
same place in the generated assembler code. The following would not
work reliably:
-@example
+@smallexample
asm ("combine %2,%0" : "=r" (foo) : "r" (foo), "g" (bar));
-@end example
+@end smallexample
Various optimizations or reloading could cause operands 0 and 1 to be in
different registers; GCC knows no reason not to do so. For example, the
@@ -3962,23 +3962,23 @@ code, the result will not work, but GCC can't tell that.
As of GCC version 3.1, one may write @code{[@var{name}]} instead of
the operand number for a matching constraint. For example:
-@example
+@smallexample
asm ("cmoveq %1,%2,%[result]"
: [result] "=r"(result)
: "r" (test), "r"(new), "[result]"(old));
-@end example
+@end smallexample
Some instructions clobber specific hard registers. To describe this,
write a third colon after the input operands, followed by the names of
the clobbered hard registers (given as strings). Here is a realistic
example for the VAX:
-@example
+@smallexample
asm volatile ("movc3 %0,%1,%2"
: /* no outputs */
: "g" (from), "g" (to), "g" (count)
: "r0", "r1", "r2", "r3", "r4", "r5");
-@end example
+@end smallexample
You may not write a clobber description in a way that overlaps with an
input or output operand. For example, you may not have an operand
@@ -4006,13 +4006,35 @@ represents the condition codes as a specific hardware register;
condition code is handled differently, and specifying @samp{cc} has no
effect. But it is valid no matter what the machine.
-If your assembler instruction modifies memory in an unpredictable
+If your assembler instructions access memory in an unpredictable
fashion, add @samp{memory} to the list of clobbered registers. This
-will cause GCC to not keep memory values cached in registers across
-the assembler instruction. You will also want to add the
-@code{volatile} keyword if the memory affected is not listed in the
-inputs or outputs of the @code{asm}, as the @samp{memory} clobber does
-not count as a side-effect of the @code{asm}.
+will cause GCC to not keep memory values cached in registers across the
+assembler instruction and not optimize stores or loads to that memory.
+You will also want to add the @code{volatile} keyword if the memory
+affected is not listed in the inputs or outputs of the @code{asm}, as
+the @samp{memory} clobber does not count as a side-effect of the
+@code{asm}. If you know how large the accessed memory is, you can add
+it as input or output but if this is not known, you should add
+@samp{memory}. As an example, if you access ten bytes of a string, you
+can use a memory input like:
+
+@example
+@{"m"( (@{ struct @{ char x[10]; @} *p = (void *)ptr ; *p; @}) )@}.
+@end example
+
+Note that in the following example the memory input is necessary,
+otherwise GCC might optimize the store to @code{x} away:
+@example
+int foo ()
+@{
+ int x = 42;
+ int *y = &x;
+ int result;
+ asm ("magic stuff accessing an 'int' pointed to by '%1'"
+ "=&d" (r) : "a" (y), "m" (*y));
+ return result;
+@}
+@end example
You can put multiple assembler instructions together in a single
@code{asm} template, separated by the characters normally used in assembly
@@ -4027,12 +4049,12 @@ read and write the clobbered registers as many times as you like. Here
is an example of multiple instructions in a template; it assumes the
subroutine @code{_foo} accepts arguments in registers 9 and 10:
-@example
+@smallexample
asm ("movl %0,r9\n\tmovl %1,r10\n\tcall _foo"
: /* no outputs */
: "g" (from), "g" (to)
: "r9", "r10");
-@end example
+@end smallexample
Unless an output operand has the @samp{&} constraint modifier, GCC
may allocate it in the same register as an unrelated input operand, on
@@ -4045,11 +4067,11 @@ If you want to test the condition code produced by an assembler
instruction, you must include a branch and a label in the @code{asm}
construct, as follows:
-@example
+@smallexample
asm ("clr %0\n\tfrob %1\n\tbeq 0f\n\tmov #1,%0\n0:"
: "g" (result)
: "g" (input));
-@end example
+@end smallexample
@noindent
This assumes your assembler supports local labels, as the GNU assembler
@@ -4064,12 +4086,12 @@ optimize.
Usually the most convenient way to use these @code{asm} instructions is to
encapsulate them in macros that look like functions. For example,
-@example
+@smallexample
#define sin(x) \
(@{ double __value, __arg = (x); \
asm ("fsinx %1,%0": "=f" (__value): "f" (__arg)); \
__value; @})
-@end example
+@end smallexample
@noindent
Here the variable @code{__arg} is used to make sure that the instruction
@@ -4098,13 +4120,13 @@ You can prevent an @code{asm} instruction from being deleted, moved
significantly, or combined, by writing the keyword @code{volatile} after
the @code{asm}. For example:
-@example
+@smallexample
#define get_and_set_priority(new) \
(@{ int __old; \
asm volatile ("get_and_set_priority %0, %1" \
: "=g" (__old) : "g" (new)); \
__old; @})
-@end example
+@end smallexample
@noindent
If you write an @code{asm} instruction with no outputs, GCC will know
@@ -4118,10 +4140,10 @@ prove that control-flow will never reach the location of the
instruction.) In addition, GCC will not reschedule instructions
across a volatile @code{asm} instruction. For example:
-@example
+@smallexample
*(volatile int *)addr = foo;
asm volatile ("eieio" : : );
-@end example
+@end smallexample
@noindent
Assume @code{addr} contains the address of a memory mapped device
@@ -4209,9 +4231,9 @@ the reg-stack than any input that is not implicitly popped.
It is possible that if an input dies in an insn, reload might
use the input reg for an output reload. Consider this example:
-@example
+@smallexample
asm ("foo" : "=t" (a) : "f" (b));
-@end example
+@end smallexample
This asm says that input B is not popped by the asm, and that
the asm pushes a result onto the reg-stack, i.e., the stack is one
@@ -4224,9 +4246,9 @@ constraints must use the @code{&} earlyclobber.
The asm above would be written as
-@example
+@smallexample
asm ("foo" : "=&t" (a) : "f" (b));
-@end example
+@end smallexample
@item
Some operands need to be in particular places on the stack. All
@@ -4257,17 +4279,17 @@ unrelated to the inputs and outputs.
Here are a couple of reasonable asms to want to write. This asm
takes one input, which is internally popped, and produces two outputs.
-@example
+@smallexample
asm ("fsincos" : "=t" (cos), "=u" (sin) : "0" (inp));
-@end example
+@end smallexample
This asm takes two inputs, which are popped by the @code{fyl2xp1} opcode,
and replaces them with one output. The user must code the @code{st(1)}
clobber for reg-stack.c to know that @code{fyl2xp1} pops both inputs.
-@example
+@smallexample
asm ("fyl2xp1" : "=t" (result) : "0" (x), "u" (y) : "st(1)");
-@end example
+@end smallexample
@include md.texi
@@ -4281,9 +4303,9 @@ You can specify the name to be used in the assembler code for a C
function or variable by writing the @code{asm} (or @code{__asm__})
keyword after the declarator as follows:
-@example
+@smallexample
int foo asm ("myfoo") = 2;
-@end example
+@end smallexample
@noindent
This specifies that the name to be used for the variable @code{foo} in
@@ -4305,13 +4327,13 @@ You cannot use @code{asm} in this way in a function @emph{definition}; but
you can get the same effect by writing a declaration for the function
before its definition and putting @code{asm} there, like this:
-@example
+@smallexample
extern func () asm ("FUNC");
func (x, y)
int x, y;
/* @r{@dots{}} */
-@end example
+@end smallexample
It is up to you to make sure that the assembler names you choose do not
conflict with any other assembler symbols. Also, you must not use a
@@ -4364,9 +4386,9 @@ specified for that operand in the @code{asm}.)
You can define a global register variable in GNU C like this:
-@example
+@smallexample
register int *foo asm ("a5");
-@end example
+@end smallexample
@noindent
Here @code{a5} is the name of the register which should be used. Choose a
@@ -4463,9 +4485,9 @@ Of course, it will not do to use more than a few of those.
You can define a local register variable with a specified register
like this:
-@example
+@smallexample
register int *foo asm ("a5");
-@end example
+@end smallexample
@noindent
Here @code{a5} is the name of the register which should be used. Note
@@ -4522,11 +4544,11 @@ Other C compilers won't accept these alternative keywords; if you want to
compile with another compiler, you can define the alternate keywords as
macros to replace them with the customary keywords. It looks like this:
-@example
+@smallexample
#ifndef __GNUC__
#define __asm__ asm
#endif
-@end example
+@end smallexample
@findex __extension__
@opindex pedantic
@@ -4700,9 +4722,9 @@ this way.
The first step in using these extensions is to provide the necessary data
types. This should be done using an appropriate @code{typedef}:
-@example
+@smallexample
typedef int v4si __attribute__ ((mode(V4SI)));
-@end example
+@end smallexample
The base type @code{int} is effectively ignored by the compiler, the
actual properties of the new type @code{v4si} are defined by the
@@ -4727,13 +4749,13 @@ A floating point value, as wide as a DI mode integer, usually 64 bits.
@end table
Specifying a combination that is not valid for the current architecture
-will cause gcc to synthesize the instructions using a narrower mode.
+will cause GCC to synthesize the instructions using a narrower mode.
For example, if you specify a variable of type @code{V4SI} and your
-architecture does not allow for this specific SIMD type, gcc will
+architecture does not allow for this specific SIMD type, GCC will
produce code that uses 4 @code{SIs}.
The types defined in this manner can be used with a subset of normal C
-operations. Currently, gcc will allow using the following operators
+operations. Currently, GCC will allow using the following operators
on these types: @code{+, -, *, /, unary minus, ^, |, &, ~}@.
The operations behave like C++ @code{valarrays}. Addition is defined as
@@ -4742,13 +4764,13 @@ example, in the code below, each of the 4 elements in @var{a} will be
added to the corresponding 4 elements in @var{b} and the resulting
vector will be stored in @var{c}.
-@example
+@smallexample
typedef int v4si __attribute__ ((mode(V4SI)));
v4si a, b, c;
c = a + b;
-@end example
+@end smallexample
Subtraction, multiplication, division, and the logical operations
operate in a similar manner. Likewise, the result of using the unary
@@ -4771,14 +4793,14 @@ of built-in functions that can be used to operate on vectors. For
example, a function to add two vectors and multiply the result by a
third could look like this:
-@example
+@smallexample
v4si f (v4si a, v4si b, v4si c)
@{
v4si tmp = __builtin_addv4si (a, b);
return __builtin_mulv4si (tmp, c);
@}
-@end example
+@end smallexample
@node Other Builtins
@section Other built-in functions provided by GCC
@@ -5501,7 +5523,7 @@ do not implement, a description of the parsing is in order. The string
is parsed as by @code{strtol}; that is, the base is recognized by
leading @samp{0} or @samp{0x} prefixes. The number parsed is placed
in the significand such that the least significant bit of the number
-is at the least significant bit of the significand. The number is
+is at the least significant bit of the significand. The number is
truncated to fit the significand field provided. The significand is
forced to be a quiet NaN.
@@ -5518,7 +5540,7 @@ Similar to @code{__builtin_nan}, except the return type is @code{long double}.
@end deftypefn
@deftypefn {Built-in Function} double __builtin_nans (const char *str)
-Similar to @code{__builtin_nan}, except the significand is forced
+Similar to @code{__builtin_nan}, except the significand is forced
to be a signaling NaN. The @code{nans} function is proposed by
@uref{http://std.dkuug.dk/JTC1/SC22/WG14/www/docs/n965.htm,,WG14 N965}.
@end deftypefn
@@ -5629,7 +5651,7 @@ processors, depending on the command-line switches used.
The following built-in functions are always available. They
all generate the machine instruction that is part of the name.
-@example
+@smallexample
long __builtin_alpha_implver (void)
long __builtin_alpha_rpcc (void)
long __builtin_alpha_amask (long)
@@ -5658,14 +5680,14 @@ long __builtin_alpha_mskqh (long, long)
long __builtin_alpha_umulh (long, long)
long __builtin_alpha_zap (long, long)
long __builtin_alpha_zapnot (long, long)
-@end example
+@end smallexample
The following built-in functions are always with @option{-mmax}
or @option{-mcpu=@var{cpu}} where @var{cpu} is @code{pca56} or
later. They all generate the machine instruction that is part
of the name.
-@example
+@smallexample
long __builtin_alpha_pklb (long)
long __builtin_alpha_pkwb (long)
long __builtin_alpha_unpkbl (long)
@@ -5679,28 +5701,28 @@ long __builtin_alpha_maxsb8 (long, long)
long __builtin_alpha_maxuw4 (long, long)
long __builtin_alpha_maxsw4 (long, long)
long __builtin_alpha_perr (long, long)
-@end example
+@end smallexample
The following built-in functions are always with @option{-mcix}
or @option{-mcpu=@var{cpu}} where @var{cpu} is @code{ev67} or
later. They all generate the machine instruction that is part
of the name.
-@example
+@smallexample
long __builtin_alpha_cttz (long)
long __builtin_alpha_ctlz (long)
long __builtin_alpha_ctpop (long)
-@end example
+@end smallexample
The following builtins are available on systems that use the OSF/1
PALcode. Normally they invoke the @code{rduniq} and @code{wruniq}
PAL calls, but when invoked with @option{-mtls-kernel}, they invoke
@code{rdval} and @code{wrval}.
-@example
+@smallexample
void *__builtin_thread_pointer (void)
void __builtin_set_thread_pointer (void *)
-@end example
+@end smallexample
@node ARM Built-in Functions
@subsection ARM Built-in Functions
@@ -5708,157 +5730,146 @@ void __builtin_set_thread_pointer (void *)
These built-in functions are available for the ARM family of
processors, when the @option{-mcpu=iwmmxt} switch is used:
-@example
-typedef int __v2si __attribute__ ((__mode__ (__V2SI__)))
-
-v2si __builtin_arm_waddw (v2si, v2si)
-v2si __builtin_arm_waddw (v2si, v2si)
-v2si __builtin_arm_wsubw (v2si, v2si)
-v2si __builtin_arm_wsubw (v2si, v2si)
-v2si __builtin_arm_waddwss (v2si, v2si)
-v2si __builtin_arm_wsubwss (v2si, v2si)
-v2si __builtin_arm_wsubwss (v2si, v2si)
-v2si __builtin_arm_wsubwss (v2si, v2si)
-v2si __builtin_arm_wsubwss (v2si, v2si)
-v2si __builtin_arm_waddwus (v2si, v2si)
-v2si __builtin_arm_wsubwus (v2si, v2si)
-v2si __builtin_arm_wsubwus (v2si, v2si)
-v2si __builtin_arm_wmaxuw (v2si, v2si)
-v2si __builtin_arm_wmaxsw (v2si, v2si)
-v2si __builtin_arm_wavg2br (v2si, v2si)
-v2si __builtin_arm_wavg2hr (v2si, v2si)
-v2si __builtin_arm_wavg2b (v2si, v2si)
-v2si __builtin_arm_wavg2h (v2si, v2si)
-v2si __builtin_arm_waccb (v2si)
-v2si __builtin_arm_wacch (v2si)
-v2si __builtin_arm_waccw (v2si)
-v2si __builtin_arm_wmacs (v2si, v2si, v2si)
-v2si __builtin_arm_wmacsz (v2si, v2si, v2si)
-v2si __builtin_arm_wmacu (v2si, v2si, v2si)
-v2si __builtin_arm_wmacuz (v2si, v2si)
-v2si __builtin_arm_wsadb (v2si, v2si)
-v2si __builtin_arm_wsadbz (v2si, v2si)
-v2si __builtin_arm_wsadh (v2si, v2si)
-v2si __builtin_arm_wsadhz (v2si, v2si)
-v2si __builtin_arm_walign (v2si, v2si)
-v2si __builtin_arm_tmia (v2si, int, int)
-v2si __builtin_arm_tmiaph (v2si, int, int)
-v2si __builtin_arm_tmiabb (v2si, int, int)
-v2si __builtin_arm_tmiabt (v2si, int, int)
-v2si __builtin_arm_tmiatb (v2si, int, int)
-v2si __builtin_arm_tmiatt (v2si, int, int)
-int __builtin_arm_tmovmskb (v2si)
-int __builtin_arm_tmovmskh (v2si)
-int __builtin_arm_tmovmskw (v2si)
-v2si __builtin_arm_wmadds (v2si, v2si)
-v2si __builtin_arm_wmaddu (v2si, v2si)
-v2si __builtin_arm_wpackhss (v2si, v2si)
-v2si __builtin_arm_wpackwss (v2si, v2si)
-v2si __builtin_arm_wpackdss (v2si, v2si)
-v2si __builtin_arm_wpackhus (v2si, v2si)
-v2si __builtin_arm_wpackwus (v2si, v2si)
-v2si __builtin_arm_wpackdus (v2si, v2si)
-v2si __builtin_arm_waddb (v2si, v2si)
-v2si __builtin_arm_waddh (v2si, v2si)
+@smallexample
+typedef int v2si __attribute__ ((vector_size (8)));
+typedef short v4hi __attribute__ ((vector_size (8)));
+typedef char v8qi __attribute__ ((vector_size (8)));
+
+int __builtin_arm_getwcx (int)
+void __builtin_arm_setwcx (int, int)
+int __builtin_arm_textrmsb (v8qi, int)
+int __builtin_arm_textrmsh (v4hi, int)
+int __builtin_arm_textrmsw (v2si, int)
+int __builtin_arm_textrmub (v8qi, int)
+int __builtin_arm_textrmuh (v4hi, int)
+int __builtin_arm_textrmuw (v2si, int)
+v8qi __builtin_arm_tinsrb (v8qi, int)
+v4hi __builtin_arm_tinsrh (v4hi, int)
+v2si __builtin_arm_tinsrw (v2si, int)
+long long __builtin_arm_tmia (long long, int, int)
+long long __builtin_arm_tmiabb (long long, int, int)
+long long __builtin_arm_tmiabt (long long, int, int)
+long long __builtin_arm_tmiaph (long long, int, int)
+long long __builtin_arm_tmiatb (long long, int, int)
+long long __builtin_arm_tmiatt (long long, int, int)
+int __builtin_arm_tmovmskb (v8qi)
+int __builtin_arm_tmovmskh (v4hi)
+int __builtin_arm_tmovmskw (v2si)
+long long __builtin_arm_waccb (v8qi)
+long long __builtin_arm_wacch (v4hi)
+long long __builtin_arm_waccw (v2si)
+v8qi __builtin_arm_waddb (v8qi, v8qi)
+v8qi __builtin_arm_waddbss (v8qi, v8qi)
+v8qi __builtin_arm_waddbus (v8qi, v8qi)
+v4hi __builtin_arm_waddh (v4hi, v4hi)
+v4hi __builtin_arm_waddhss (v4hi, v4hi)
+v4hi __builtin_arm_waddhus (v4hi, v4hi)
v2si __builtin_arm_waddw (v2si, v2si)
-v2si __builtin_arm_waddbss (v2si, v2si)
-v2si __builtin_arm_waddhss (v2si, v2si)
v2si __builtin_arm_waddwss (v2si, v2si)
-v2si __builtin_arm_waddbus (v2si, v2si)
-v2si __builtin_arm_waddhus (v2si, v2si)
v2si __builtin_arm_waddwus (v2si, v2si)
-v2si __builtin_arm_wsubb (v2si, v2si)
-v2si __builtin_arm_wsubh (v2si, v2si)
-v2si __builtin_arm_wsubw (v2si, v2si)
-v2si __builtin_arm_wsubbss (v2si, v2si)
-v2si __builtin_arm_wsubhss (v2si, v2si)
-v2si __builtin_arm_wsubwss (v2si, v2si)
-v2si __builtin_arm_wsubbus (v2si, v2si)
-v2si __builtin_arm_wsubhus (v2si, v2si)
-v2si __builtin_arm_wsubwus (v2si, v2si)
-v2si __builtin_arm_wand (v2si, v2si)
-v2si __builtin_arm_wandn (v2si, v2si)
-v2si __builtin_arm_wor (v2si, v2si)
-v2si __builtin_arm_wxor (v2si, v2si)
-v2si __builtin_arm_wcmpeqb (v2si, v2si)
-v2si __builtin_arm_wcmpeqh (v2si, v2si)
+v8qi __builtin_arm_walign (v8qi, v8qi, int)
+long long __builtin_arm_wand(long long, long long)
+long long __builtin_arm_wandn (long long, long long)
+v8qi __builtin_arm_wavg2b (v8qi, v8qi)
+v8qi __builtin_arm_wavg2br (v8qi, v8qi)
+v4hi __builtin_arm_wavg2h (v4hi, v4hi)
+v4hi __builtin_arm_wavg2hr (v4hi, v4hi)
+v8qi __builtin_arm_wcmpeqb (v8qi, v8qi)
+v4hi __builtin_arm_wcmpeqh (v4hi, v4hi)
v2si __builtin_arm_wcmpeqw (v2si, v2si)
-v2si __builtin_arm_wcmpgtub (v2si, v2si)
-v2si __builtin_arm_wcmpgtuh (v2si, v2si)
-v2si __builtin_arm_wcmpgtuw (v2si, v2si)
-v2si __builtin_arm_wcmpgtsb (v2si, v2si)
-v2si __builtin_arm_wcmpgtsh (v2si, v2si)
+v8qi __builtin_arm_wcmpgtsb (v8qi, v8qi)
+v4hi __builtin_arm_wcmpgtsh (v4hi, v4hi)
v2si __builtin_arm_wcmpgtsw (v2si, v2si)
-int __builtin_arm_textrmsb (v2si, int)
-int __builtin_arm_textrmsh (v2si, int)
-int __builtin_arm_textrmsw (v2si, int)
-int __builtin_arm_textrmub (v2si, int)
-int __builtin_arm_textrmuh (v2si, int)
-int __builtin_arm_textrmuw (v2si, int)
-v2si __builtin_arm_tinsrb (v2si, int, int)
-v2si __builtin_arm_tinsrh (v2si, int, int)
-v2si __builtin_arm_tinsrw (v2si, int, int)
+v8qi __builtin_arm_wcmpgtub (v8qi, v8qi)
+v4hi __builtin_arm_wcmpgtuh (v4hi, v4hi)
+v2si __builtin_arm_wcmpgtuw (v2si, v2si)
+long long __builtin_arm_wmacs (long long, v4hi, v4hi)
+long long __builtin_arm_wmacsz (v4hi, v4hi)
+long long __builtin_arm_wmacu (long long, v4hi, v4hi)
+long long __builtin_arm_wmacuz (v4hi, v4hi)
+v4hi __builtin_arm_wmadds (v4hi, v4hi)
+v4hi __builtin_arm_wmaddu (v4hi, v4hi)
+v8qi __builtin_arm_wmaxsb (v8qi, v8qi)
+v4hi __builtin_arm_wmaxsh (v4hi, v4hi)
v2si __builtin_arm_wmaxsw (v2si, v2si)
-v2si __builtin_arm_wmaxsh (v2si, v2si)
-v2si __builtin_arm_wmaxsb (v2si, v2si)
+v8qi __builtin_arm_wmaxub (v8qi, v8qi)
+v4hi __builtin_arm_wmaxuh (v4hi, v4hi)
v2si __builtin_arm_wmaxuw (v2si, v2si)
-v2si __builtin_arm_wmaxuh (v2si, v2si)
-v2si __builtin_arm_wmaxub (v2si, v2si)
+v8qi __builtin_arm_wminsb (v8qi, v8qi)
+v4hi __builtin_arm_wminsh (v4hi, v4hi)
v2si __builtin_arm_wminsw (v2si, v2si)
-v2si __builtin_arm_wminsh (v2si, v2si)
-v2si __builtin_arm_wminsb (v2si, v2si)
+v8qi __builtin_arm_wminub (v8qi, v8qi)
+v4hi __builtin_arm_wminuh (v4hi, v4hi)
v2si __builtin_arm_wminuw (v2si, v2si)
-v2si __builtin_arm_wminuh (v2si, v2si)
-v2si __builtin_arm_wminub (v2si, v2si)
-v2si __builtin_arm_wmuluh (v2si, v2si)
-v2si __builtin_arm_wmulsh (v2si, v2si)
-v2si __builtin_arm_wmulul (v2si, v2si)
-v2si __builtin_arm_wshufh (v2si, int)
-v2si __builtin_arm_wsllh (v2si, v2si)
-v2si __builtin_arm_wsllw (v2si, v2si)
-v2si __builtin_arm_wslld (v2si, v2si)
-v2si __builtin_arm_wsrah (v2si, v2si)
-v2si __builtin_arm_wsraw (v2si, v2si)
-v2si __builtin_arm_wsrad (v2si, v2si)
-v2si __builtin_arm_wsrlh (v2si, v2si)
-v2si __builtin_arm_wsrlw (v2si, v2si)
-v2si __builtin_arm_wsrld (v2si, v2si)
-v2si __builtin_arm_wrorh (v2si, v2si)
-v2si __builtin_arm_wrorw (v2si, v2si)
-v2si __builtin_arm_wrord (v2si, v2si)
-v2si __builtin_arm_wsllhi (v2si, int)
+v4hi __builtin_arm_wmulsm (v4hi, v4hi)
+v4hi __builtin_arm_wmulul (v4hi, v4hi)
+v4hi __builtin_arm_wmulum (v4hi, v4hi)
+long long __builtin_arm_wor (long long, long long)
+v2si __builtin_arm_wpackdss (long long, long long)
+v2si __builtin_arm_wpackdus (long long, long long)
+v8qi __builtin_arm_wpackhss (v4hi, v4hi)
+v8qi __builtin_arm_wpackhus (v4hi, v4hi)
+v4hi __builtin_arm_wpackwss (v2si, v2si)
+v4hi __builtin_arm_wpackwus (v2si, v2si)
+long long __builtin_arm_wrord (long long, long long)
+long long __builtin_arm_wrordi (long long, int)
+v4hi __builtin_arm_wrorh (v4hi, long long)
+v4hi __builtin_arm_wrorhi (v4hi, int)
+v2si __builtin_arm_wrorw (v2si, long long)
+v2si __builtin_arm_wrorwi (v2si, int)
+v2si __builtin_arm_wsadb (v8qi, v8qi)
+v2si __builtin_arm_wsadbz (v8qi, v8qi)
+v2si __builtin_arm_wsadh (v4hi, v4hi)
+v2si __builtin_arm_wsadhz (v4hi, v4hi)
+v4hi __builtin_arm_wshufh (v4hi, int)
+long long __builtin_arm_wslld (long long, long long)
+long long __builtin_arm_wslldi (long long, int)
+v4hi __builtin_arm_wsllh (v4hi, long long)
+v4hi __builtin_arm_wsllhi (v4hi, int)
+v2si __builtin_arm_wsllw (v2si, long long)
v2si __builtin_arm_wsllwi (v2si, int)
-v2si __builtin_arm_wslldi (v2si, v2si)
-v2si __builtin_arm_wsrahi (v2si, int)
+long long __builtin_arm_wsrad (long long, long long)
+long long __builtin_arm_wsradi (long long, int)
+v4hi __builtin_arm_wsrah (v4hi, long long)
+v4hi __builtin_arm_wsrahi (v4hi, int)
+v2si __builtin_arm_wsraw (v2si, long long)
v2si __builtin_arm_wsrawi (v2si, int)
-v2si __builtin_arm_wsradi (v2si, v2si)
+long long __builtin_arm_wsrld (long long, long long)
+long long __builtin_arm_wsrldi (long long, int)
+v4hi __builtin_arm_wsrlh (v4hi, long long)
+v4hi __builtin_arm_wsrlhi (v4hi, int)
+v2si __builtin_arm_wsrlw (v2si, long long)
v2si __builtin_arm_wsrlwi (v2si, int)
-v2si __builtin_arm_wsrldi (v2si, int)
-v2si __builtin_arm_wrorhi (v2si, int)
-v2si __builtin_arm_wrorwi (v2si, int)
-v2si __builtin_arm_wrordi (v2si, int)
-v2si __builtin_arm_wunpckihb (v2si, v2si)
-v2si __builtin_arm_wunpckihh (v2si, v2si)
+v8qi __builtin_arm_wsubb (v8qi, v8qi)
+v8qi __builtin_arm_wsubbss (v8qi, v8qi)
+v8qi __builtin_arm_wsubbus (v8qi, v8qi)
+v4hi __builtin_arm_wsubh (v4hi, v4hi)
+v4hi __builtin_arm_wsubhss (v4hi, v4hi)
+v4hi __builtin_arm_wsubhus (v4hi, v4hi)
+v2si __builtin_arm_wsubw (v2si, v2si)
+v2si __builtin_arm_wsubwss (v2si, v2si)
+v2si __builtin_arm_wsubwus (v2si, v2si)
+v4hi __builtin_arm_wunpckehsb (v8qi)
+v2si __builtin_arm_wunpckehsh (v4hi)
+long long __builtin_arm_wunpckehsw (v2si)
+v4hi __builtin_arm_wunpckehub (v8qi)
+v2si __builtin_arm_wunpckehuh (v4hi)
+long long __builtin_arm_wunpckehuw (v2si)
+v4hi __builtin_arm_wunpckelsb (v8qi)
+v2si __builtin_arm_wunpckelsh (v4hi)
+long long __builtin_arm_wunpckelsw (v2si)
+v4hi __builtin_arm_wunpckelub (v8qi)
+v2si __builtin_arm_wunpckeluh (v4hi)
+long long __builtin_arm_wunpckeluw (v2si)
+v8qi __builtin_arm_wunpckihb (v8qi, v8qi)
+v4hi __builtin_arm_wunpckihh (v4hi, v4hi)
v2si __builtin_arm_wunpckihw (v2si, v2si)
-v2si __builtin_arm_wunpckilb (v2si, v2si)
-v2si __builtin_arm_wunpckilh (v2si, v2si)
+v8qi __builtin_arm_wunpckilb (v8qi, v8qi)
+v4hi __builtin_arm_wunpckilh (v4hi, v4hi)
v2si __builtin_arm_wunpckilw (v2si, v2si)
-v2si __builtin_arm_wunpckehsb (v2si)
-v2si __builtin_arm_wunpckehsh (v2si)
-v2si __builtin_arm_wunpckehsw (v2si)
-v2si __builtin_arm_wunpckehub (v2si)
-v2si __builtin_arm_wunpckehuh (v2si)
-v2si __builtin_arm_wunpckehuw (v2si)
-v2si __builtin_arm_wunpckelsb (v2si)
-v2si __builtin_arm_wunpckelsh (v2si)
-v2si __builtin_arm_wunpckelsw (v2si)
-v2si __builtin_arm_wunpckelub (v2si)
-v2si __builtin_arm_wunpckeluh (v2si)
-v2si __builtin_arm_wunpckeluw (v2si)
-v2si __builtin_arm_wsubwss (v2si, v2si)
-v2si __builtin_arm_wsraw (v2si, v2si)
-v2si __builtin_arm_wsrad (v2si, v2si)
-@end example
+long long __builtin_arm_wxor (long long, long long)
+long long __builtin_arm_wzero ()
+@end smallexample
@node X86 Built-in Functions
@subsection X86 Built-in Functions
@@ -5884,7 +5895,7 @@ entire vector register, interpreting it as a 128-bit integer, these use mode
The following built-in functions are made available by @option{-mmmx}.
All of them generate the machine instruction that is part of the name.
-@example
+@smallexample
v8qi __builtin_ia32_paddb (v8qi, v8qi)
v4hi __builtin_ia32_paddw (v4hi, v4hi)
v2si __builtin_ia32_paddd (v2si, v2si)
@@ -5920,14 +5931,14 @@ v2si __builtin_ia32_punpckldq (v2si, v2si)
v8qi __builtin_ia32_packsswb (v4hi, v4hi)
v4hi __builtin_ia32_packssdw (v2si, v2si)
v8qi __builtin_ia32_packuswb (v4hi, v4hi)
-@end example
+@end smallexample
The following built-in functions are made available either with
@option{-msse}, or with a combination of @option{-m3dnow} and
@option{-march=athlon}. All of them generate the machine
instruction that is part of the name.
-@example
+@smallexample
v4hi __builtin_ia32_pmulhuw (v4hi, v4hi)
v8qi __builtin_ia32_pavgb (v8qi, v8qi)
v4hi __builtin_ia32_pavgw (v4hi, v4hi)
@@ -5942,12 +5953,12 @@ int __builtin_ia32_pmovmskb (v8qi)
void __builtin_ia32_maskmovq (v8qi, v8qi, char *)
void __builtin_ia32_movntq (di *, di)
void __builtin_ia32_sfence (void)
-@end example
+@end smallexample
The following built-in functions are available when @option{-msse} is used.
All of them generate the machine instruction that is part of the name.
-@example
+@smallexample
int __builtin_ia32_comieq (v4sf, v4sf)
int __builtin_ia32_comineq (v4sf, v4sf)
int __builtin_ia32_comilt (v4sf, v4sf)
@@ -6016,7 +6027,7 @@ v4sf __builtin_ia32_sqrtss (v4sf)
v4sf __builtin_ia32_shufps (v4sf, v4sf, int)
void __builtin_ia32_movntps (float *, v4sf)
int __builtin_ia32_movmskps (v4sf)
-@end example
+@end smallexample
The following built-in functions are available when @option{-msse} is used.
@@ -6043,10 +6054,10 @@ Generates the @code{movhps} machine instruction as a store to memory.
Generates the @code{movlps} machine instruction as a store to memory.
@end table
-The following built-in functions are available when @option{-mpni} is used.
+The following built-in functions are available when @option{-msse3} is used.
All of them generate the machine instruction that is part of the name.
-@example
+@smallexample
v2df __builtin_ia32_addsubpd (v2df, v2df)
v2df __builtin_ia32_addsubps (v2df, v2df)
v2df __builtin_ia32_haddpd (v2df, v2df)
@@ -6059,9 +6070,9 @@ v2df __builtin_ia32_movddup (v2df)
v4sf __builtin_ia32_movshdup (v4sf)
v4sf __builtin_ia32_movsldup (v4sf)
void __builtin_ia32_mwait (unsigned int, unsigned int)
-@end example
+@end smallexample
-The following built-in functions are available when @option{-mpni} is used.
+The following built-in functions are available when @option{-msse3} is used.
@table @code
@item v2df __builtin_ia32_loadddup (double const *)
@@ -6071,7 +6082,7 @@ Generates the @code{movddup} machine instruction as a load from memory.
The following built-in functions are available when @option{-m3dnow} is used.
All of them generate the machine instruction that is part of the name.
-@example
+@smallexample
void __builtin_ia32_femms (void)
v8qi __builtin_ia32_pavgusb (v8qi, v8qi)
v2si __builtin_ia32_pf2id (v2sf)
@@ -6092,20 +6103,20 @@ v2sf __builtin_ia32_pfsub (v2sf, v2sf)
v2sf __builtin_ia32_pfsubr (v2sf, v2sf)
v2sf __builtin_ia32_pi2fd (v2si)
v4hi __builtin_ia32_pmulhrw (v4hi, v4hi)
-@end example
+@end smallexample
The following built-in functions are available when both @option{-m3dnow}
and @option{-march=athlon} are used. All of them generate the machine
instruction that is part of the name.
-@example
+@smallexample
v2si __builtin_ia32_pf2iw (v2sf)
v2sf __builtin_ia32_pfnacc (v2sf, v2sf)
v2sf __builtin_ia32_pfpnacc (v2sf, v2sf)
v2sf __builtin_ia32_pi2fw (v2si)
v2sf __builtin_ia32_pswapdsf (v2sf)
v2si __builtin_ia32_pswapdsi (v2si)
-@end example
+@end smallexample
@node PowerPC AltiVec Built-in Functions
@subsection PowerPC AltiVec Built-in Functions
@@ -7346,7 +7357,7 @@ For compatibility with other compilers, GCC allows you to define
a structure or union that contains, as fields, structures and unions
without names. For example:
-@example
+@smallexample
struct @{
int a;
union @{
@@ -7355,7 +7366,7 @@ struct @{
@};
int d;
@} foo;
-@end example
+@end smallexample
In this example, the user would be able to access members of the unnamed
union with code like @samp{foo.b}. Note that only unnamed structs and
@@ -7365,14 +7376,14 @@ unions are allowed, you may not have, for example, an unnamed
You must never create such structures that cause ambiguous field definitions.
For example, this structure:
-@example
+@smallexample
struct @{
int a;
struct @{
int a;
@};
@} foo;
-@end example
+@end smallexample
It is ambiguous which @code{a} is being referred to with @samp{foo.a}.
Such constructs are not supported and must be avoided. In the future,
@@ -7396,11 +7407,11 @@ is not available everywhere.
At the user level, the extension is visible with a new storage
class keyword: @code{__thread}. For example:
-@example
+@smallexample
__thread int i;
extern __thread struct state s;
static __thread char *p;
-@end example
+@end smallexample
The @code{__thread} specifier may be used alone, with the @code{extern}
or @code{static} specifiers, but with no other storage class specifier.
@@ -7694,9 +7705,9 @@ These operations are not primitive in ordinary C++, since you can
use a macro to return the minimum of two things in C++, as in the
following example.
-@example
+@smallexample
#define MIN(X,Y) ((X) < (Y) ? : (X) : (Y))
-@end example
+@end smallexample
@noindent
You might then use @w{@samp{int min = MIN (i, j);}} to set @var{min} to
@@ -7741,11 +7752,11 @@ within a sequence point.
In most expressions, it is intuitively obvious what is a read and what is
a write. For instance
-@example
+@smallexample
volatile int *dst = @var{somevalue};
volatile int *src = @var{someothervalue};
*dst = *src;
-@end example
+@end smallexample
@noindent
will cause a read of the volatile object pointed to by @var{src} and stores the
@@ -7756,10 +7767,10 @@ larger than @code{int}.
Less obvious expressions are where something which looks like an access
is used in a void context. An example would be,
-@example
+@smallexample
volatile int *src = @var{somevalue};
*src;
-@end example
+@end smallexample
With C, such expressions are rvalues, and as rvalues cause a read of
the object, GCC interprets this as a read of the volatile being pointed
@@ -7774,14 +7785,14 @@ pointer to volatile object of complete type in a void context as a read
of the object. When the object has incomplete type, G++ issues a
warning.
-@example
+@smallexample
struct S;
struct T @{int m;@};
volatile S *ptr1 = @var{somevalue};
volatile T *ptr2 = @var{somevalue};
*ptr1;
*ptr2;
-@end example
+@end smallexample
In this example, a warning is issued for @code{*ptr1}, and @code{*ptr2}
causes a read of the object pointed to. If you wish to force an error on
@@ -7802,7 +7813,7 @@ an rvalue.
@cindex restricted references
@cindex restricted this pointer
-As with gcc, g++ understands the C99 feature of restricted pointers,
+As with the C front end, G++ understands the C99 feature of restricted pointers,
specified with the @code{__restrict__}, or @code{__restrict} type
qualifier. Because you cannot compile C++ by specifying the @option{-std=c99}
language flag, @code{restrict} is not a keyword in C++.
@@ -7811,12 +7822,12 @@ In addition to allowing restricted pointers, you can specify restricted
references, which indicate that the reference is not aliased in the local
context.
-@example
+@smallexample
void fn (int *__restrict__ rptr, int &__restrict__ rref)
@{
/* @r{@dots{}} */
@}
-@end example
+@end smallexample
@noindent
In the body of @code{fn}, @var{rptr} points to an unaliased integer and
@@ -7825,12 +7836,12 @@ In the body of @code{fn}, @var{rptr} points to an unaliased integer and
You may also specify whether a member function's @var{this} pointer is
unaliased by using @code{__restrict__} as a member function qualifier.
-@example
+@smallexample
void T::fn () __restrict__
@{
/* @r{@dots{}} */
@}
-@end example
+@end smallexample
@noindent
Within the body of @code{T::fn}, @var{this} will have the effective
@@ -7905,7 +7916,7 @@ but there are other options as well.
@end table
When used with GNU ld version 2.8 or later on an ELF system such as
-Linux/GNU or Solaris 2, or on Microsoft Windows, duplicate copies of
+GNU/Linux or Solaris 2, or on Microsoft Windows, duplicate copies of
these constructs will be discarded at link time. This is known as
COMDAT support.
@@ -8082,11 +8093,11 @@ compiled separately.
@end table
When used with GNU ld version 2.8 or later on an ELF system such as
-Linux/GNU or Solaris 2, or on Microsoft Windows, g++ supports the
-Borland model. On other systems, g++ implements neither automatic
+GNU/Linux or Solaris 2, or on Microsoft Windows, G++ supports the
+Borland model. On other systems, G++ implements neither automatic
model.
-A future version of g++ will support a hybrid model whereby the compiler
+A future version of G++ will support a hybrid model whereby the compiler
will emit any instantiations for which the template definition is
included in the compile, and store template definitions and
instantiation context information into the object file for the rest.
@@ -8136,14 +8147,14 @@ that define the templates themselves; you can put all of the explicit
instantiations you need into one big file; or you can create small files
like
-@example
+@smallexample
#include "Foo.h"
#include "Foo.cc"
template class Foo<int>;
template ostream& operator <<
(ostream&, const Foo<int>&);
-@end example
+@end smallexample
for each of the instances you need, and create a template instantiation
library from those.
@@ -8157,7 +8168,7 @@ compile it without @option{-fno-implicit-templates} so you get all of the
instances required by your explicit instantiations (but not by any
other files) without having to specify them as well.
-g++ has extended the template instantiation syntax given in the ISO
+G++ has extended the template instantiation syntax given in the ISO
standard to allow forward declaration of explicit instantiations
(with @code{extern}), instantiation of the compiler support data for a
template class (i.e.@: the vtable) without instantiating any of its
@@ -8165,14 +8176,14 @@ members (with @code{inline}), and instantiation of only the static data
members of a template class, without the support data or member
functions (with (@code{static}):
-@example
+@smallexample
extern template int max (int, int);
inline template class Foo<int>;
static template class Foo<int>;
-@end example
+@end smallexample
@item
-Do nothing. Pretend g++ does implement automatic instantiation
+Do nothing. Pretend G++ does implement automatic instantiation
management. Code written for the Borland model will work fine, but
each translation unit will contain instances of each of the templates it
uses. In a large program, this can lead to an unacceptable amount of code
@@ -8205,21 +8216,21 @@ virtual function calls.
The syntax for this extension is
-@example
+@smallexample
extern A a;
extern int (A::*fp)();
typedef int (*fptr)(A *);
fptr p = (fptr)(a.*fp);
-@end example
+@end smallexample
For PMF constants (i.e.@: expressions of the form @samp{&Klasse::Member}),
no object is needed to obtain the address of the function. They can be
converted to function pointers directly:
-@example
+@smallexample
fptr p1 = (fptr)(&A::foo);
-@end example
+@end smallexample
@opindex Wno-pmf-conversions
You must specify @option{-Wno-pmf-conversions} to use this extension.
@@ -8270,6 +8281,11 @@ See also @xref{Strong Using}.
@node Strong Using
@section Strong Using
+@strong{Caution:} The semantics of this extension are not fully
+defined. Users should refrain from using this extension as its
+semantics may change subtly over time. It is possible that this
+extension wil be removed in future versions of G++.
+
A using-directive with @code{__attribute ((strong))} is stronger
than a normal using-directive in two ways:
@@ -8374,10 +8390,10 @@ that are now deprecated:
@table @code
@item -fexternal-templates
@itemx -falt-external-templates
-These are two of the many ways for g++ to implement template
+These are two of the many ways for G++ to implement template
instantiation. @xref{Template Instantiation}. The C++ standard clearly
defines how template definitions have to be organized across
-implementation units. g++ has an implicit instantiation mechanism that
+implementation units. G++ has an implicit instantiation mechanism that
should work just fine for standard-conforming code.
@item -fstrict-prototype
@@ -8389,20 +8405,20 @@ it is required for backwards compatibility @xref{Backwards Compatibility}.
@end table
The named return value extension has been deprecated, and is now
-removed from g++.
+removed from G++.
The use of initializer lists with new expressions has been deprecated,
-and is now removed from g++.
+and is now removed from G++.
Floating and complex non-type template parameters have been deprecated,
-and are now removed from g++.
+and are now removed from G++.
The implicit typename extension has been deprecated and is now
-removed from g++.
+removed from G++.
The use of default arguments in function pointers, function typedefs and
and other places where they are not permitted by the standard is
-deprecated and will be removed from a future version of g++.
+deprecated and will be removed from a future version of G++.
@node Backwards Compatibility
@section Backwards Compatibility
diff --git a/gcc/doc/frontends.texi b/gcc/doc/frontends.texi
index 1ee56856df3..0e4dfe5427a 100644
--- a/gcc/doc/frontends.texi
+++ b/gcc/doc/frontends.texi
@@ -1,70 +1,61 @@
@c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-@c 1999, 2000, 2001 Free Software Foundation, Inc.
+@c 1999, 2000, 2001, 2004 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@node G++ and GCC
-@chapter Compile C, C++, Objective-C, Ada, Fortran, Java, or treelang
+@chapter Programming Languages Supported by GCC
-@cindex Objective-C
+@cindex GCC
+@cindex GNU Compiler Collection
+@cindex GNU C Compiler
+@cindex Ada
@cindex Fortran
@cindex Java
-@cindex Ada
+@cindex Objective-C
@cindex treelang
-Several versions of the compiler (C, C++, Objective-C, Ada,
-Fortran, Java and treelang) are integrated; this is why we use the name
-``GNU Compiler Collection''. GCC can compile programs written in any of these
-languages. The Ada, Fortran, Java and treelang compilers are described in
-separate manuals.
-
-@cindex GCC
-``GCC'' is a common shorthand term for the GNU Compiler Collection. This is both
-the most general name for the compiler, and the name used when the
-emphasis is on compiling C programs (as the abbreviation formerly
-stood for ``GNU C Compiler'').
+GCC stands for ``GNU Compiler Collection''. GCC is an integrated
+distribution of compilers for several major programming languages. These
+languages currently include C, C++, Objective-C, Java, Fortran, and Ada.
+
+The abbreviation @dfn{GCC} has multiple meanings in common use. The
+current official meaning is ``GNU Compiler Collection'', which refers
+generically to the complete suite of tools. The name historically stood
+for ``GNU C Compiler'', and this usage is still common when the emphasis
+is on compiling C programs. Finally, the name is also used when speaking
+of the @dfn{language-independent} component of GCC: code shared among the
+compilers for all supported languages.
+
+The language-independent component of GCC includes the majority of the
+optimizers, as well as the ``back ends'' that generate machine code for
+various processors.
+
+@cindex COBOL
+@cindex Mercury
+@cindex Pascal
+The part of a compiler that is specific to a particular language is
+called the ``front end''. In addition to the front ends that are
+integrated components of GCC, there are several other front ends that
+are maintained separately. These support languages such as Pascal,
+Mercury, and COBOL. To use these, they must be built together with
+GCC proper.
@cindex C++
@cindex G++
-When referring to C++ compilation, it is usual to call the compiler
-``G++''. Since there is only one compiler, it is also accurate to call
-it ``GCC'' no matter what the language context; however, the term
-``G++'' is more useful when the emphasis is on compiling C++ programs.
-
@cindex Ada
@cindex GNAT
-Similarly, when we talk about Ada compilation, we usually call the
-compiler ``GNAT'', for the same reasons.
-
-We use the name ``GCC'' to refer to the compilation system as a
-whole, and more specifically to the language-independent part of the
-compiler. For example, we refer to the optimization options as
-affecting the behavior of ``GCC'' or sometimes just ``the compiler''.
-
-Front ends for other languages, such as Mercury and Pascal exist but
-have not yet been integrated into GCC@. These front ends, like that for C++,
-are built in subdirectories of GCC and link to it. The result is an
-integrated compiler that can compile programs written in C, C++,
-Objective-C, or any of the languages for which you have installed front
-ends.
-
-In this manual, we only discuss the options for the C, Objective-C, and
-C++ compilers and those of the GCC core. Consult the documentation
-of the other front ends for the options to use when compiling programs
-written in other languages.
+Most of the compilers for languages other than C have their own names.
+The C++ compiler is G++, the Ada compiler is GNAT, and so on. When we
+talk about compiling one of those languages, we might refer to that
+compiler by its own name, or as GCC@. Either is correct.
@cindex compiler compared to C++ preprocessor
@cindex intermediate C version, nonexistent
@cindex C intermediate output, nonexistent
-G++ is a @emph{compiler}, not merely a preprocessor. G++ builds object
-code directly from your C++ program source. There is no intermediate C
-version of the program. (By contrast, for example, some other
-implementations use a program that generates a C program from your C++
-source.) Avoiding an intermediate C representation of the program means
-that you get better object code, and better debugging information. The
-GNU debugger, GDB, works with this information in the object code to
-give you comprehensive C++ source-level editing capabilities
-(@pxref{C,,C and C++,gdb.info, Debugging with GDB}).
-
-@c FIXME! Someone who knows something about Objective-C ought to put in
-@c a paragraph or two about it here, and move the index entry down when
-@c there is more to point to than the general mention in the 1st par.
+Historically, compilers for many languages, including C++ and Fortran,
+have been implemented as ``preprocessors'' which emit another high
+level language such as C@. None of the compilers included in GCC are
+implemented this way; they all generate machine code directly. This
+sort of preprocessor should not be confused with the @dfn{C
+preprocessor}, which is an integral feature of the C, C++, and
+Objective-C languages.
diff --git a/gcc/doc/gcc.texi b/gcc/doc/gcc.texi
index a682ee33822..d56dd4f3144 100644
--- a/gcc/doc/gcc.texi
+++ b/gcc/doc/gcc.texi
@@ -97,7 +97,7 @@ Boston, MA 02111-1307 USA
@sp 2
@center Richard M. Stallman
@sp 3
-@center Last updated 2 January 2004
+@center Last updated 21 March 2004
@sp 1
@center for GCC @value{version-GCC}
diff --git a/gcc/doc/gcov.texi b/gcc/doc/gcov.texi
index 8f0a23cae5d..cd47f68fadc 100644
--- a/gcc/doc/gcov.texi
+++ b/gcc/doc/gcov.texi
@@ -1,5 +1,5 @@
@c Copyright (C) 1996, 1997, 1999, 2000, 2001,
-@c 2002, 2003 Free Software Foundation, Inc.
+@c 2002, 2003, 2004 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -211,12 +211,12 @@ Unconditional branches are normally not interesting.
@end table
-@command{gcov} should be run with the current directory the same as that
-when you invoked the compiler. Otherwise it will not be able to locate
-the source files. @command{gcov} produces files called
-@file{@var{mangledname}.gcov} in the current directory. These contain
-the coverage information of the source file they correspond to.
-One @file{.gcov} file is produced for each source file containing code,
+@command{gcov} should be run with the current directory the same as that
+when you invoked the compiler. Otherwise it will not be able to locate
+the source files. @command{gcov} produces files called
+@file{@var{mangledname}.gcov} in the current directory. These contain
+the coverage information of the source file they correspond to.
+One @file{.gcov} file is produced for each source file containing code,
which was compiled to produce the data files. The @var{mangledname} part
of the output file name is usually simply the source file name, but can
be something more complicated if the @samp{-l} or @samp{-p} options are
@@ -280,12 +280,12 @@ Here is a sample:
function main called 1 returned 1 blocks executed 75%
1: 4:@{
1: 5: int i, total;
- -: 6:
+ -: 6:
1: 7: total = 0;
- -: 8:
+ -: 8:
11: 9: for (i = 0; i < 10; i++)
10: 10: total += i;
- -: 11:
+ -: 11:
1: 12: if (total != 45)
#####: 13: printf ("Failure\n");
-: 14: else
@@ -310,14 +310,14 @@ function main called 1 returned 1 blocks executed 75%
1: 4:@{
1: 4-block 0
1: 5: int i, total;
- -: 6:
+ -: 6:
1: 7: total = 0;
- -: 8:
+ -: 8:
11: 9: for (i = 0; i < 10; i++)
11: 9-block 0
10: 10: total += i;
10: 10-block 0
- -: 11:
+ -: 11:
1: 12: if (total != 45)
1: 12-block 0
#####: 13: printf ("Failure\n");
@@ -339,7 +339,7 @@ the execution counts for individual blocks that end on that line. After each
block, the branch and call counts of the block will be shown, if the
@option{-b} option is given.
-Because of the way gcc instruments calls, a call count can be shown
+Because of the way GCC instruments calls, a call count can be shown
after a line with no individual blocks.
As you can see, line 13 contains a basic block that was not executed.
@@ -369,14 +369,14 @@ Here is a sample of a resulting @file{tmp.c.gcov} file:
function main called 1 returned 1 blocks executed 75%
1: 4:@{
1: 5: int i, total;
- -: 6:
+ -: 6:
1: 7: total = 0;
- -: 8:
+ -: 8:
11: 9: for (i = 0; i < 10; i++)
branch 0 taken 91% (fallthrough)
branch 1 taken 9%
10: 10: total += i;
- -: 11:
+ -: 11:
1: 12: if (total != 45)
branch 0 taken 0% (fallthrough)
branch 1 taken 100%
diff --git a/gcc/doc/gty.texi b/gcc/doc/gty.texi
index 56ce597f8dc..2dc5b86dce3 100644
--- a/gcc/doc/gty.texi
+++ b/gcc/doc/gty.texi
@@ -1,4 +1,4 @@
-@c Copyright (C) 2002, 2003
+@c Copyright (C) 2002, 2003, 2004
@c Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -48,7 +48,7 @@ These markers can be placed:
@item
In a structure definition, before the open brace;
@item
-In a global variable declaration, after the keyword @code{static} or
+In a global variable declaration, after the keyword @code{static} or
@code{extern}; and
@item
In a structure field definition, before the name of the field.
@@ -311,19 +311,19 @@ things you need to do:
@enumerate
@item
You need to add the file to the list of source files the type
-machinery scans. There are three cases:
+machinery scans. There are three cases:
@enumerate a
@item
For a back-end file, this is usually done
automatically; if not, you should add it to @code{target_gtfiles} in
-the appropriate port's entries in @file{config.gcc}.
+the appropriate port's entries in @file{config.gcc}.
@item
For files shared by all front ends, this is done by adding the
filename to the @code{GTFILES} variable in @file{Makefile.in}.
-@item
+@item
For any other file used by a front end, this is done by adding the
filename to the @code{gtfiles} variable defined in
@file{config-lang.in}. For C, the file is @file{c-config-lang.in}.
@@ -342,7 +342,7 @@ header file, this should be done automatically. For a front-end header
file, it needs to be included by the same file that includes
@file{gtype-@var{lang}.h}. For other header files, it needs to be
included in @file{gtype-desc.c}, which is a generated file, so add it to
-@code{ifiles} in @code{open_base_file} in @file{gengtype.c}.
+@code{ifiles} in @code{open_base_file} in @file{gengtype.c}.
For source files that aren't header files, the machinery will generate a
header file that should be included in the source file you just changed.
diff --git a/gcc/doc/include/gcc-common.texi b/gcc/doc/include/gcc-common.texi
index 2d934bda540..5c1a8d2f034 100644
--- a/gcc/doc/include/gcc-common.texi
+++ b/gcc/doc/include/gcc-common.texi
@@ -9,7 +9,7 @@
@c DEVELOPMENT is set to indicate an in-development version,
@c as compared to a release version. When making a release
@c branch, clear this.
-@set DEVELOPMENT
+@clear DEVELOPMENT
@c Common macros to support generating man pages:
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 305ce41eb61..c0479a0b13b 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -87,6 +87,10 @@ Free Documentation License}''.
@ifinfo
@insertcopying
@end ifinfo
+@dircategory Programming
+@direntry
+* gccinstall: (gccinstall). Installing the GNU Compiler Collection.
+@end direntry
@c Part 3 Titlepage and Copyright
@titlepage
@@ -152,7 +156,7 @@ We recommend you browse the entire generic installation instructions before
you proceed.
Lists of successful builds for released versions of GCC are
-available at @uref{http://gcc.gnu.org/buildstat.html}.
+available at @uref{http://gcc.gnu.org/buildstat.html}.
These lists are updated as new information becomes available.
The installation procedure itself is broken into five steps.
@@ -256,7 +260,7 @@ use @command{bash} to be sure. Then set @env{CONFIG_SHELL} in your
environment to your ``good'' shell prior to running
@command{configure}/@command{make}.
-@command{zsh} is not a fully compliant POSIX shell and will not
+@command{zsh} is not a fully compliant POSIX shell and will not
work when configuring GCC.
@item GNU binutils
@@ -293,15 +297,24 @@ systems' @command{tar} programs will also work, only try GNU
Necessary when modifying @file{configure.in}, @file{aclocal.m4}, etc.@:
to regenerate @file{configure} and @file{config.in} files. Most
directories require autoconf 2.13 (exactly), but @file{libiberty},
-@file{fastjar}, @file{libstdc++-v3}, and @file{gcc} require
-autoconf 2.57 (exactly).
+@file{fastjar}, @file{libstdc++-v3}, @file{libjava/libltdl}, and @file{gcc}
+require autoconf 2.57 (exactly).
-@item automake versions 1.4-p? and 1.7.?
+@item automake versions 1.4-gcj and 1.7.9
Necessary when modifying a @file{Makefile.am} file to regenerate its
-associated @file{Makefile.in}. Most directories require a 1.4 series
-automake; @file{libstdc++-v3} and @file{fastjar} requires a 1.7 series
-automake.
+associated @file{Makefile.in}.
+
+Much of GCC does not use automake, so directly edit the @file{Makefile.in}
+file. Specifically this applies to the @file{gcc}, @file{intl},
+@file{libf2c}, @file{libiberty}, @file{libobjc} directories as well as any
+of their subdirectories.
+
+The @file{libstdc++-v3}, @file{libjava/libltdl}, and @file{fastjar}
+directories require automake 1.7.9. However, the Java directories, which
+include @file{boehm-gc}, @file{libffi}, @file{libjava}, and @file{zlib},
+require a modified version of automake 1.4 downloadable from
+@uref{ftp://gcc.gnu.org/pub/java/automake-gcj-1.4.tar.gz}.
@item gettext version 0.12 (or later)
@@ -327,7 +340,7 @@ Necessary to regenerate @file{fixinc/fixincl.x} from
Necessary to run the @file{fixinc} @command{make check}.
-Necessary to regenerate the top level @file{Makefile.am} files from
+Necessary to regenerate the top level @file{Makefile.in} file from
@file{Makefile.tpl} and @file{Makefile.def}.
@item GNU Bison version 1.28 (or later)
@@ -513,11 +526,11 @@ affected by this requirement, see
To configure GCC:
-@example
+@smallexample
% mkdir @var{objdir}
% cd @var{objdir}
% @var{srcdir}/configure [@var{options}] [@var{target}]
-@end example
+@end smallexample
@heading Target specification
@@ -545,6 +558,10 @@ GCC@. A list of supported @var{options} follows; @samp{configure
--help} may list other options, but those not listed below may not
work and should not normally be used.
+Note that each @option{--enable} option has a corresponding
+@option{--disable} option and that each @option{--with} option has a
+corresponding @option{--without} option.
+
@table @code
@item --prefix=@var{dirname}
Specify the toplevel installation
@@ -600,7 +617,7 @@ manual.)
@item --with-gxx-include-dir=@var{dirname}
Specify
the installation directory for G++ header files. The default is
-@file{@var{prefix}/include/g++-v3}.
+@file{@var{prefix}/include/c++/@var{version}}.
@end table
@@ -871,7 +888,7 @@ On some systems, this is the default.
In general, the best (and, in many cases, the only known) threading
model available will be configured for use. Beware that on some
-systems, gcc has not been taught what threading models are generally
+systems, GCC has not been taught what threading models are generally
available for the system. In this case, @option{--enable-threads} is an
alias for @option{--enable-threads=single}.
@@ -939,6 +956,14 @@ option will adjust the ABI for AltiVec enhancements, as well as generate
AltiVec code when appropriate. This option is only available for
PowerPC systems.
+@item --enable-__cxa_atexit
+Define if you want to use __cxa_atexit, rather than atexit, to
+register C++ destructors for local statics and global objects.
+This is essential for fully standards-compliant handling of
+destructors, but requires __cxa_atexit in libc. This option is currently
+only available on systems with GNU libc. When enabled, this will cause
+@option{-fuse-cxa-exit} to be passed by default.
+
@item --enable-target-optspace
Specify that target
libraries should be optimized for code space instead of code speed.
@@ -980,7 +1005,7 @@ If you configure with @option{--enable-generated-files-in-srcdir} then those
generated files will go into the source directory. This is mainly intended
for generating release or prerelease tarballs of the GCC sources, since it
is not a requirement that the users of source releases to have flex, bison, or
-makeinfo.
+makeinfo.
@item --enable-version-specific-runtime-libs
Specify
@@ -999,9 +1024,9 @@ Specify that only a particular subset of compilers and
their runtime libraries should be built. For a list of valid values for
@var{langN} you can issue the following command in the
@file{gcc} directory of your GCC source tree:@*
-@example
+@smallexample
grep language= */config-lang.in
-@end example
+@end smallexample
Currently, you can use any of the following:
@code{ada}, @code{c}, @code{c++}, @code{f77}, @code{java}, @code{objc}.
Building the Ada compiler has special requirements, see below.@*
@@ -1010,18 +1035,6 @@ sub-tree will be configured. Re-defining @code{LANGUAGES} when calling
@samp{make bootstrap} @strong{does not} work anymore, as those
language sub-directories might not have been configured!
-@item --disable-libgcj
-Specify that the run-time libraries
-used by GCJ should not be built. This is useful in case you intend
-to use GCJ with some other run-time, or you're going to install it
-separately, or it just happens not to build on your particular
-machine. In general, if the Java front end is enabled, the GCJ
-libraries will be enabled too, unless they're known to not work on
-the target platform. If GCJ is enabled but @samp{libgcj} isn't built, you
-may need to port it; in this case, before modifying the top-level
-@file{configure.in} so that @samp{libgcj} is enabled by default on this platform,
-you may use @option{--enable-libgcj} to override the default.
-
@item --with-dwarf2
Specify that the compiler should
use DWARF 2 debugging information as the default.
@@ -1029,7 +1042,7 @@ use DWARF 2 debugging information as the default.
@item --enable-win32-registry
@itemx --enable-win32-registry=@var{key}
@itemx --disable-win32-registry
-The @option{--enable-win32-registry} option enables Windows-hosted GCC
+The @option{--enable-win32-registry} option enables Microsoft Windows-hosted GCC
to look up installations paths in the registry using the following key:
@smallexample
@@ -1091,7 +1104,7 @@ without optimization.
@item --enable-gather-detailed-mem-stats
When this option is specified more detailed information on memory
allocation is gathered. This information is printed when using
-@option{-fmem-report}.
+@option{-fmem-report}.
@item --enable-nls
@itemx --disable-nls
@@ -1115,10 +1128,6 @@ build procedure to use the host's @code{catgets} in this situation.
Search for libiconv header files in @file{@var{dir}/include} and
libiconv library files in @file{@var{dir}/lib}.
-@item --with-system-zlib
-Use installed zlib rather than that included with GCC@. This option
-only applies if the Java front end is being built.
-
@item --enable-obsolete
Enable configuration for an obsoleted system. If you attempt to
configure GCC for a system (build, host, or target) which has been
@@ -1130,7 +1139,8 @@ is removed entirely in the next major release, unless someone steps
forward to maintain the port.
@end table
-Some options which only apply to building cross compilers:
+@subheading Cross-Compiler-Specific Options
+The following options only apply to building cross compilers.
@table @code
@item --with-sysroot
@itemx --with-sysroot=@var{dir}
@@ -1159,7 +1169,7 @@ will be run on these files to make them compatible with GCC.
@item --without-headers
Tells GCC not use any target headers from a libc when building a cross
-compiler. When crossing to GNU/Linux, you need the headers so gcc
+compiler. When crossing to GNU/Linux, you need the headers so GCC
can build the exception handling for libgcc.
See @uref{http://www.objsw.com/CrossGCC/,,CrossGCC} for more information
on this option.
@@ -1178,9 +1188,141 @@ omitted from @file{libgcc.a} on the assumption that it will be provided by
@samp{newlib}.
@end table
-Note that each @option{--enable} option has a corresponding
-@option{--disable} option and that each @option{--with} option has a
-corresponding @option{--without} option.
+@subheading Java-Specific Options
+
+The following option applies to the build of the Java front end.
+
+@table @code
+@item --disable-libgcj
+Specify that the run-time libraries
+used by GCJ should not be built. This is useful in case you intend
+to use GCJ with some other run-time, or you're going to install it
+separately, or it just happens not to build on your particular
+machine. In general, if the Java front end is enabled, the GCJ
+libraries will be enabled too, unless they're known to not work on
+the target platform. If GCJ is enabled but @samp{libgcj} isn't built, you
+may need to port it; in this case, before modifying the top-level
+@file{configure.in} so that @samp{libgcj} is enabled by default on this platform,
+you may use @option{--enable-libgcj} to override the default.
+
+@end table
+
+The following options apply to building @samp{libgcj}.
+
+@subsubheading General Options
+
+@table @code
+@item --disable-getenv-properties
+Don't set system properties from @env{GCJ_PROPERTIES}.
+
+@item --enable-hash-synchronization
+Use a global hash table for monitor locks. Ordinarily,
+@samp{libgcj}'s @samp{configure} script automatically makes
+the correct choice for this option for your platform. Only use
+this if you know you need the library to be configured differently.
+
+@item --enable-interpreter
+Enable the Java interpreter. The interpreter is automatically
+enabled by default on all platforms that support it. This option
+is really only useful if you want to disable the interpreter
+(using @option{--disable-interpreter}).
+
+@item --disable-java-net
+Disable java.net. This disables the native part of java.net only,
+using non-functional stubs for native method implementations.
+
+@item --disable-jvmpi
+Disable JVMPI support.
+
+@item --with-ecos
+Enable runtime eCos target support.
+
+@item --without-libffi
+Don't use @samp{libffi}. This will disable the interpreter and JNI
+support as well, as these require @samp{libffi} to work.
+
+@item --enable-libgcj-debug
+Enable runtime debugging code.
+
+@item --enable-libgcj-multifile
+If specified, causes all @file{.java} source files to be
+compiled into @file{.class} files in one invocation of
+@samp{gcj}. This can speed up build time, but is more
+resource-intensive. If this option is unspecified or
+disabled, @samp{gcj} is invoked once for each @file{.java}
+file to compile into a @file{.class} file.
+
+@item --with-libiconv-prefix=DIR
+Search for libiconv in @file{DIR/include} and @file{DIR/lib}.
+
+@item --enable-sjlj-exceptions
+Force use of @code{builtin_setjmp} for exceptions. @samp{configure}
+ordinarily picks the correct value based on the platform. Only use
+this option if you are sure you need a different setting.
+
+@item --with-system-zlib
+Use installed @samp{zlib} rather than that included with GCC@.
+
+@item --with-win32-nlsapi=ansi, unicows or unicode
+Indicates how MinGW @samp{libgcj} translates between UNICODE
+characters and the Win32 API.
+@table @code
+@item ansi
+Use the single-byte @code{char} and the Win32 A functions natively,
+translating to and from UNICODE when using these functions. If
+unspecified, this is the default.
+
+@item unicows
+Use the @code{WCHAR} and Win32 W functions natively. Adds
+@code{-lunicows} to @file{libgcj.spec} to link with @samp{libunicows}.
+@file{unicows.dll} needs to be deployed on Microsoft Windows 9X machines
+running built executables. @file{libunicows.a}, an open-source
+import library around Microsoft's @code{unicows.dll}, is obtained from
+@uref{http://libunicows.sourceforge.net/}, which also gives details
+on getting @file{unicows.dll} from Microsoft.
+
+@item unicode
+Use the @code{WCHAR} and Win32 W functions natively. Does @emph{not}
+add @code{-lunicows} to @file{libgcj.spec}. The built executables will
+only run on Microsoft Windows NT and above.
+@end table
+@end table
+
+@subsubheading AWT-Specific Options
+
+@table @code
+@item --with-x
+Use the X Window System.
+
+@item --enable-java-awt=PEER(S)
+Specifies the AWT peer library or libraries to build alongside
+@samp{libgcj}. If this option is unspecified or disabled, AWT
+will be non-functional. Current valid values are @option{gtk} and
+@option{xlib}. Multiple libraries should be separated by a
+comma (i.e. @option{--enable-java-awt=gtk,xlib}).
+
+@item --enable-gtk-cairo
+Build the cairo Graphics2D implementation on GTK.
+
+@item --enable-java-gc=TYPE
+Choose garbage collector. Defaults to @option{boehm} if unspecified.
+
+@item --disable-gtktest
+Do not try to compile and run a test GTK+ program.
+
+@item --disable-glibtest
+Do not try to compile and run a test GLIB program.
+
+@item --with-libart-prefix=PFX
+Prefix where libart is installed (optional).
+
+@item --with-libart-exec-prefix=PFX
+Exec prefix where libart is installed (optional).
+
+@item --disable-libarttest
+Do not try to compile and run a test libart program.
+
+@end table
@html
<hr />
@@ -1205,7 +1347,7 @@ corresponding @option{--without} option.
Now that GCC is configured, you are ready to build the compiler and
runtime libraries.
-We @strong{highly} recommend that GCC be built using GNU make;
+We @strong{highly} recommend that GCC be built using GNU make;
other versions may work, then again they might not.
GNU make is required for compiling GNAT (the Ada compiler) and the Java
runtime library.
@@ -1294,10 +1436,10 @@ without debugging information as in the following example. This will save
roughly 40% of disk space both for the bootstrap and the final installation.
(Libraries will still contain debugging information.)
-@example
+@smallexample
make CFLAGS='-O' LIBCFLAGS='-g -O2' \
LIBCXXFLAGS='-g -O2 -fno-implicit-templates' bootstrap
-@end example
+@end smallexample
If you wish to use non-default GCC flags when compiling the stage2 and
stage3 compilers, set @code{BOOT_CFLAGS} on the command line when doing
@@ -1441,7 +1583,7 @@ library would be the same as the one built for the cross compiler.
For example, you can build a native Ada compiler by issuing the
following commands (assuming @command{make} is GNU make):
-@example
+@smallexample
cd @var{objdir}
@var{srcdir}/configure --enable-languages=c,ada
cd @var{objdir}
@@ -1449,7 +1591,7 @@ following commands (assuming @command{make} is GNU make):
cd gcc
make gnatlib_and_tools
cd ..
-@end example
+@end smallexample
Currently, when compiling the Ada front end, you cannot use the parallel
build feature described in the previous section.
@@ -1519,10 +1661,10 @@ installed are not in the @env{PATH}, you may need to set the following
environment variables appropriately, as in the following example (which
assumes that DejaGnu has been installed under @file{/usr/local}):
-@example
+@smallexample
TCL_LIBRARY = /usr/local/share/tcl8.0
DEJAGNULIBS = /usr/local/share/dejagnu
-@end example
+@end smallexample
(On systems such as Cygwin, these paths are required to be actual
paths, not mounts or links; presumably this is due to some lack of
@@ -1530,14 +1672,14 @@ portability in the DejaGnu code.)
Finally, you can run the testsuite (which may take a long time):
-@example
+@smallexample
cd @var{objdir}; make -k check
-@end example
+@end smallexample
This will test various components of GCC, such as compiler
front ends and runtime libraries. While running the testsuite, DejaGnu
might emit some harmless messages resembling
-@samp{WARNING: Couldn't find the global config file.} or
+@samp{WARNING: Couldn't find the global config file.} or
@samp{WARNING: Couldn't find tool init file} that can be ignored.
@section How can I run the test suite on selected tests?
@@ -1551,16 +1693,16 @@ just run @samp{make check} in a subdirectory of the object directory.
A more selective way to just run all @command{gcc} execute tests in the
testsuite is to use
-@example
+@smallexample
make check-gcc RUNTESTFLAGS="execute.exp @var{other-options}"
-@end example
+@end smallexample
Likewise, in order to run only the @command{g++} ``old-deja'' tests in
the testsuite with filenames matching @samp{9805*}, you would use
-@example
+@smallexample
make check-g++ RUNTESTFLAGS="old-deja.exp=9805* @var{other-options}"
-@end example
+@end smallexample
The @file{*.exp} files are located in the testsuite directories of the GCC
source, the most important ones being @file{compile.exp},
@@ -1576,9 +1718,9 @@ You can pass multiple options to the testsuite using the
@samp{RUNTESTFLAGS}, or directly to @command{runtest} if you prefer to
work outside the makefiles. For example,
-@example
+@smallexample
make check-g++ RUNTESTFLAGS="--target_board=unix/-O3/-fno-strength-reduce"
-@end example
+@end smallexample
will run the standard @command{g++} testsuites (``unix'' is the target name
for a standard native testsuite situation), passing
@@ -1588,15 +1730,15 @@ slashes separate options.
You can run the testsuites multiple times using combinations of options
with a syntax similar to the brace expansion of popular shells:
-@example
+@smallexample
@dots{}"--target_board=arm-sim@{-mhard-float,-msoft-float@}@{-O1,-O2,-O3,@}"
-@end example
+@end smallexample
(Note the empty option caused by the trailing comma in the final group.)
The following will run each testsuite eight times using the @samp{arm-sim}
target, as if you had specified all possible combinations yourself:
-@example
+@smallexample
--target_board=arm-sim/-mhard-float/-O1
--target_board=arm-sim/-mhard-float/-O2
--target_board=arm-sim/-mhard-float/-O3
@@ -1605,14 +1747,14 @@ target, as if you had specified all possible combinations yourself:
--target_board=arm-sim/-msoft-float/-O2
--target_board=arm-sim/-msoft-float/-O3
--target_board=arm-sim/-msoft-float
-@end example
+@end smallexample
They can be combined as many times as you wish, in arbitrary ways. This
list:
-@example
+@smallexample
@dots{}"--target_board=unix/-Wextra@{-O3,-fno-strength-reduce@}@{-fomit-frame-pointer,@}"
-@end example
+@end smallexample
will generate four combinations, all involving @samp{-Wextra}.
@@ -1623,15 +1765,15 @@ parallel by having the shell perform the combinations and @command{make}
do the parallel runs. Instead of using @samp{--target_board}, use a
special makefile target:
-@example
+@smallexample
make -j@var{N} check-@var{testsuite}//@var{test-target}/@var{option1}/@var{option2}/@dots{}
-@end example
+@end smallexample
For example,
-@example
+@smallexample
make -j3 check-gcc//sh-hms-sim/@{-m1,-m2,-m3,-m3e,-m4@}/@{,-nofpu@}
-@end example
+@end smallexample
will run three concurrent ``make-gcc'' testsuites, eventually testing all
ten combinations as described above. Note that this is currently only
@@ -1662,8 +1804,8 @@ the libjava testsuite at @file{libjava/testsuite/libjava.jacks/jacks}.
The result of running the testsuite are various @file{*.sum} and @file{*.log}
files in the testsuite subdirectories. The @file{*.log} files contain a
detailed log of the compiler invocations and the corresponding
-results, the @file{*.sum} files summarize the results. These summaries
-contain status codes for all tests:
+results, the @file{*.sum} files summarize the results. These summaries
+contain status codes for all tests:
@itemize @bullet
@item
@@ -1693,10 +1835,10 @@ problem in future releases.
If you want to report the results to the GCC project, use the
@file{contrib/test_summary} shell script. Start it in the @var{objdir} with
-@example
+@smallexample
@var{srcdir}/contrib/test_summary -p your_commentary.txt \
-m gcc-testresults@@gcc.gnu.org |sh
-@end example
+@end smallexample
This script uses the @command{Mail} program to send the results, so
make sure it is in your @env{PATH}. The file @file{your_commentary.txt} is
@@ -1725,9 +1867,9 @@ messages may be automatically processed.
@end ifnothtml
Now that GCC has been built (and optionally tested), you can install it with
-@example
+@smallexample
cd @var{objdir}; make install
-@end example
+@end smallexample
We strongly recommend to install into a target directory where there is
no previous version of GCC present.
@@ -1755,9 +1897,9 @@ binutils, including assembler and linker.
Installation into a temporary staging area or into a @command{chroot}
jail can be achieved with the command
-@example
+@smallexample
make DESTDIR=@var{path-to-rootdir} install
-@end example
+@end smallexample
@noindent where @var{path-to-rootdir} is the absolute path of
a directory relative to which all installation paths will be
@@ -1788,7 +1930,7 @@ Output from running @file{@var{srcdir}/config.guess}. Do not send us
that file itself, just the one-line output from running it.
@item
-The output of @samp{gcc -v} for your newly installed gcc.
+The output of @samp{gcc -v} for your newly installed @command{gcc}.
This tells us which version of GCC you built and the options you passed to
configure.
@@ -1915,7 +2057,7 @@ OpenServer/Unixware}.
@item
Sinix/Reliant Unix---@uref{ftp://ftp.fujitsu-siemens.com/pub/pd/gnu/gcc/,,Siemens}.
-
+
@item
Solaris 2 (SPARC, Intel)---@uref{http://www.sunfreeware.com/,,Sunfreeware}.
@@ -2158,15 +2300,15 @@ we need to use the old assembler, invoked via the barely documented
@option{-oldas} option. To bootstrap GCC, you either need to use the
Compaq C Compiler:
-@example
+@smallexample
% CC=cc @var{srcdir}/configure [@var{options}] [@var{target}]
-@end example
+@end smallexample
or you can use a copy of GCC 2.95.3 or higher built on Tru64 UNIX V4.0:
-@example
+@smallexample
% CC=gcc -Wa,-oldas @var{srcdir}/configure [@var{options}] [@var{target}]
-@end example
+@end smallexample
As of GNU binutils 2.11.2, neither GNU @command{as} nor GNU @command{ld}
are supported on Tru64 UNIX, so you must not configure GCC with
@@ -2231,10 +2373,10 @@ need to tell GCC where to find the assembler and the linker. The
simplest way to do so is by providing @option{--with-as} and
@option{--with-ld} to @file{configure}, e.g.@:
-@example
+@smallexample
configure --with-as=/opt/ctl/bin/cam --with-ld=/opt/ctl/bin/cld \
--enable-languages=c
-@end example
+@end smallexample
The comparison test during @samp{make bootstrap} fails on Unicos/Mk
because the assembler inserts timestamps into object files. You should
@@ -2306,9 +2448,9 @@ can also be obtained from:
We @emph{strongly} recommend using binutils 2.13 or newer.
The following error:
-@example
+@smallexample
Error: register required
-@end example
+@end smallexample
indicates that you should upgrade to a newer version of the binutils.
@@ -2403,12 +2545,15 @@ A port to the AT&T DSP1610 family of processors.
@end html
@heading @anchor{*-*-freebsd*}*-*-freebsd*
-The version of binutils installed in @file{/usr/bin} is known to work unless
-otherwise specified in any per-architecture notes. However, binutils
-2.12.1 or greater is known to improve overall testsuite results.
+The version of binutils installed in @file{/usr/bin} probably works with
+this release of GCC. However, on FreeBSD 4, bootstrapping against the
+latest FSF binutils is known to improve overall testsuite results; and,
+on FreeBSD/alpha, using binutils 2.14 or later is required to build libjava.
Support for FreeBSD 1 was discontinued in GCC 3.2.
+Support for FreeBSD 2 will be discontinued after GCC 3.4. The
+following was true for GCC 3.1 but the current status is unknown.
For FreeBSD 2 or any mutant a.out versions of FreeBSD 3: All
configuration support and files as shipped with GCC 2.95 are still in
place. FreeBSD 2.2.7 has been known to bootstrap completely; however,
@@ -2425,9 +2570,9 @@ of the configuration used in the stock FreeBSD configuration of GCC. In
particular, @option{--enable-threads} is now configured by default.
However, as a general user, do not attempt to replace the system
compiler with this release. Known to bootstrap and check with good
-results on FreeBSD 4.8-STABLE and 5-CURRENT@. In the past, known to
+results on FreeBSD 4.9-STABLE and 5-CURRENT@. In the past, known to
bootstrap and check with good results on FreeBSD 3.0, 3.4, 4.0, 4.2,
-4.3, 4.4, 4.5-STABLE@.
+4.3, 4.4, 4.5, 4.8-STABLE@.
In principle, @option{--enable-threads} is now compatible with
@option{--enable-libgcj} on FreeBSD@. However, it has only been built
@@ -2473,9 +2618,8 @@ use GAS and GDB and configure GCC with the
@option{--with-as=@dots{}} options.
If you wish to use the pa-risc 2.0 architecture support with a 32-bit
-runtime, you must use either the HP assembler, gas/binutils 2.11 or newer,
-or a recent
-@uref{ftp://sources.redhat.com/pub/binutils/snapshots,,snapshot of gas}.
+runtime, you must use either the HP assembler, or gas/binutils 2.11
+or newer.
There are two default scheduling models for instructions. These are
PROCESSOR_7100LC and PROCESSOR_8000. They are selected from the pa-risc
@@ -2526,62 +2670,108 @@ the failure from @samp{make bootstrap}.
@end html
@heading @anchor{hppa*-hp-hpux11}hppa*-hp-hpux11
-GCC 3.0 and up support HP-UX 11. On 64-bit capable systems, there
-are two distinct ports. The @samp{hppa2.0w-hp-hpux11*} port generates
-code for the 32-bit pa-risc runtime architecture. It uses the HP
-linker. The @samp{hppa64-hp-hpux11*} port generates 64-bit code for the
-pa-risc 2.0 architecture. The script config.guess now selects the port
-type based on the type compiler detected during configuration. You must
-set your @env{PATH} or define @env{CC} so that configure finds an appropriate
-compiler for the initial bootstrap. Different prefixes must be used if
-both ports are to be installed on the same system.
+GCC 3.0 and up support HP-UX 11. GCC 2.95.x is not supported and cannot
+be used to compile GCC 3.0 and up.
-It is best to explicitly configure the @samp{hppa64-hp-hpux11*} target
-with the @option{--with-ld=@dots{}} option. We support both the HP
-and GNU linkers for this target. The two linkers require different
-link commands. Thus, it's not possible to switch linkers during a
-GCC build. This has been been reported to occur in a unified build
-of binutils and GCC.
+Refer to @uref{binaries.html,,binaries} for information about obtaining
+precompiled GCC binaries for HP-UX. Precompiled binaries must be obtained
+to build the Ada language as it can't be bootstrapped using C. Ada is
+only available for the 32-bit PA-RISC runtime. The libffi and libjava
+haven't been ported to HP-UX and don't build.
-GCC 2.95.x is not supported under HP-UX 11 and cannot be used to
-compile GCC 3.0 and up. Refer to @uref{binaries.html,,binaries} for
-information about obtaining precompiled GCC binaries for HP-UX.
+It is possible to build GCC 3.3 starting with the bundled HP compiler,
+but the process requires several steps. GCC 3.3 can then be used to
+build later versions. The fastjar program contains ISO C code and
+can't be built with the HP bundled compiler. This problem can be
+avoided by not building the Java language. For example, use the
+@option{--enable-languages="c,c++,f77,objc"} option in your configure
+command.
-You must use GNU binutils 2.11 or above with the 32-bit port. Thread
-support is not currently implemented, so @option{--enable-threads} does
-not work. See:
+Starting with GCC 3.4 an ISO C compiler is required to bootstrap. The
+bundled compiler supports only traditional C; you will need either HP's
+unbundled compiler, or a binary distribution of GCC@.
-@itemize
-@item @uref{http://gcc.gnu.org/ml/gcc-prs/2002-01/msg00551.html}
-@item @uref{http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00663.html}
-@end itemize
+There are several possible approaches to building the distribution.
+Binutils can be built first using the HP tools. Then, the GCC
+distribution can be built. The second approach is to build GCC
+first using the HP tools, then build binutils, then rebuild GCC.
+There have been problems with various binary distributions, so it
+is best not to start from a binary distribution.
+
+On 64-bit capable systems, there are two distinct targets. Different
+installation prefixes must be used if both are to be installed on
+the same system. The @samp{hppa[1-2]*-hp-hpux11*} target generates code
+for the 32-bit PA-RISC runtime architecture and uses the HP linker.
+The @samp{hppa64-hp-hpux11*} target generates 64-bit code for the
+PA-RISC 2.0 architecture. The HP and GNU linkers are both supported
+for this target.
+
+The script config.guess now selects the target type based on the compiler
+detected during configuration. You must define @env{PATH} or @env{CC} so
+that configure finds an appropriate compiler for the initial bootstrap.
+When @env{CC} is used, the definition should contain the options that are
+needed whenever @env{CC} is used.
+
+Specifically, options that determine the runtime architecture must be
+in @env{CC} to correctly select the target for the build. It is also
+convenient to place many other compiler options in @env{CC}. For example,
+@env{CC="cc -Ac +DA2.0W -Wp,-H16376 -D_CLASSIC_TYPES -D_HPUX_SOURCE"}
+can be used to bootstrap the GCC 3.3 branch with the HP compiler in
+64-bit K&R/bundled mode. The @option{+DA2.0W} option will result in
+the automatic selection of the @samp{hppa64-hp-hpux11*} target. The
+macro definition table of cpp needs to be increased for a successful
+build with the HP compiler. _CLASSIC_TYPES and _HPUX_SOURCE need to
+be defined when building with the bundled compiler, or when using the
+@option{-Ac} option. These defines aren't necessary with @option{-Ae}.
-GCC 3.3 and later support weak symbols on the 32-bit port using SOM
-secondary definition symbols. This feature is not enabled for earlier
-versions of HP-UX since there have been bugs in the linker support for
-secondary symbols. The HP linker patches @code{PHSS_26559} and
-@code{PHSS_24304} for HP-UX 11.00 and 11.11, respectively, correct the
-problem of linker core dumps creating C++ libraries. Earlier patches
-may work but they have not been tested.
-
-GCC 3.3 nows uses the ELF DT_INIT_ARRAY and DT_FINI_ARRAY capability
-to run initializers and finalizers on the 64-bit port. The feature
-requires CVS binutils as of January 2, 2003, or a subsequent release
-to correct a problem arising from HP's non-standard use of the .init
-and .fini sections. The 32-bit port uses the linker @option{+init}
-and @option{+fini} options. As with the support for secondary symbols,
-there have been bugs in the order in which these options are executed
-by the HP linker. So, again a recent linker patch is recommended.
-
-The HP assembler has many limitations and is not recommended for either
-the 32 or 64-bit ports. For example, it does not support weak symbols
-or alias definitions. As a result, explicit template instantiations
-are required when using C++. This will make it difficult if not
-impossible to build many C++ applications. You also can't generate
-debugging information when using the HP assembler with GCC.
+It is best to explicitly configure the @samp{hppa64-hp-hpux11*} target
+with the @option{--with-ld=@dots{}} option. This overrides the standard
+search for ld. The two linkers supported on this target require different
+commands. The default linker is determined during configuration. As a
+result, it's not possible to switch linkers in the middle of a GCC build.
+This has been been reported to sometimes occur in unified builds of
+binutils and GCC.
+
+With GCC 3.0 through 3.2, you must use binutils 2.11 or above. As of
+GCC 3.3, binutils 2.14 or later is required.
+
+Although the HP assembler can be used for an initial build, it shouldn't
+be used with any languages other than C and perhaps Fortran due to its
+many limitations. For example, it does not support weak symbols or alias
+definitions. As a result, explicit template instantiations are required
+when using C++. This makes it difficult if not impossible to build many
+C++ applications. You can't generate debugging information when using
+the HP assembler. Finally, @samp{make bootstrap} fails in the final
+comparison of object modules due to the time stamps that it inserts into
+the modules. The bootstrap can be continued from this point with
+@samp{make all}.
+
+A recent linker patch must be installed for the correct operation of
+GCC 3.3 and later. @code{PHSS_26559} and @code{PHSS_24304} are the
+oldest linker patches that are known to work. They are for HP-UX
+11.00 and 11.11, respectively. @code{PHSS_24303}, the companion to
+@code{PHSS_24304}, might be usable but it hasn't been tested. These
+patches have been superseded. Consult the HP patch database to obtain
+the currently recommended linker patch for your system.
+
+The patches are necessary for the support of weak symbols on the
+32-bit port, and for the running of initializers and finalizers. Weak
+symbols are implemented using SOM secondary definition symbols. Prior
+to HP-UX 11, there are bugs in the linker support for secondary symbols.
+The patches correct a problem of linker core dumps creating shared
+libraries containing secondary symbols, as well as various other
+linking issues involving secondary symbols.
+
+GCC 3.3 uses the ELF DT_INIT_ARRAY and DT_FINI_ARRAY capabilities to
+run initializers and finalizers on the 64-bit port. The 32-bit port
+uses the linker @option{+init} and @option{+fini} options for the same
+purpose. The patches correct various problems with the +init/+fini
+options, including program core dumps. Binutils 2.14 corrects a
+problem on the 64-bit port resulting from HP's non-standard use of
+the .init and .fini sections for array initializers and finalizers.
There are a number of issues to consider in selecting which linker to
-use with the 64-bit port. The GNU 64-bit linker can only create dynamic
+use with the 64-bit port. The GNU 64-bit linker can only create dynamic
binaries. The @option{-static} option causes linking with archive
libraries but doesn't produce a truly static binary. Dynamic binaries
still require final binding by the dynamic loader to resolve a set of
@@ -2600,16 +2790,10 @@ with @option{-static}. It doesn't provide stubs for internal
calls to global functions in shared libraries, so these calls
can't be overloaded.
-There are several possible approaches to building the distribution.
-Binutils can be built first using the HP tools. Then, the GCC
-distribution can be built. The second approach is to build GCC
-first using the HP tools, then build binutils, then rebuild GCC.
-There have been problems with various binary distributions, so
-it is best not to start from a binary distribution.
-
-Starting with GCC 3.4 an ISO C compiler is required to bootstrap.
-The bundled compiler supports only traditional C; you will need
-either HP's unbundled compiler, or a binary distribution of GCC@.
+Thread support is not implemented in GCC 3.0 through 3.2, so the
+@option{--enable-threads} configure option does not work. In 3.3
+and later, POSIX threads are supported. The optional DCE thread
+library is not supported.
This port still is undergoing significant development.
@@ -2648,6 +2832,18 @@ If you receive Signal 11 errors when building on GNU/Linux, then it is
possible you have a hardware problem. Further information on this can be
found on @uref{http://www.bitwizard.nl/sig11/,,www.bitwizard.nl}.
+Some recent versions of GNU/Linux, such as Fedora Core 1, support
+exec-shield-randomize. Turning this on interferes with precompiled
+headers. If you need to use precompiled headers,
+exec-shield-randomize can be turned off for the entire system by
+editing @file{/etc/sysctl.conf} and adding a line:
+@smallexample
+kernel.exec-shield-randomize = 0
+@end smallexample
+You may then need to run @samp{sysctl -p}.
+
+This will be fixed in future releases of GCC.
+
@html
<hr />
@end html
@@ -2690,7 +2886,7 @@ A modern bintuils (as well as a plethora of other development related
GNU utilities) can be found in Support Level Supplement OSS658A, the
"GNU Development Tools" package. See the SCO web and ftp sites for details.
That package also contains the currently "officially supported" version of
-GCC, version 2.95.3. It is useful for bootstrapping this version.
+GCC, version 2.95.3. It is useful for bootstrapping this version.
@html
<hr />
@@ -2712,10 +2908,10 @@ from the right place) while making the tools not think we're actually
building a cross compiler. The easiest way to do this is with a configure
command like this:
-@example
+@smallexample
CC=/udk/usr/ccs/bin/cc @var{/your/path/to}/gcc/configure \
--host=i686-pc-udk --target=i686-pc-udk --program-prefix=udk-
-@end example
+@end smallexample
@emph{You should substitute @samp{i686} in the above command with the appropriate
processor for your host.}
@@ -2769,6 +2965,18 @@ Support for AIX version 3 and older was discontinued in GCC 3.4.
AIX Make frequently has problems with GCC makefiles. GNU Make 3.79.1 or
newer is recommended to build on this platform.
+To speed up the configuration phases of bootstrapping and installing GCC,
+one may use GNU Bash instead of AIX @command{/bin/sh}, e.g.,
+
+@smallexample
+ % CONFIG_SHELL=/opt/freeware/bin/bash
+ % export CONFIG_SHELL
+@end smallexample
+
+and then proceed as described in @uref{build.html,,the build instructions},
+where we strongly recommend using GNU make and specifying an absolute path
+to invoke @var{srcdir}/configure.
+
Errors involving @code{alloca} when building GCC generally are due
to an incorrect definition of @code{CC} in the Makefile or mixing files
compiled with the native C compiler and GCC@. During the stage1 phase of
@@ -2788,36 +2996,39 @@ Assembler and Linker do not support AIX 5L sufficiently to bootstrap GCC.
The native AIX tools do interoperate with GCC@.
Building @file{libstdc++.a} requires a fix for an AIX Assembler bug
-APAR IY26685 (AIX 4.3) or APAR IY25528 (AIX 5.1).
+APAR IY26685 (AIX 4.3) or APAR IY25528 (AIX 5.1). It also requires a
+fix for another AIX Assembler bug and a co-dependent AIX Archiver fix
+referenced as APAR IY53606 (AIX 5.2) or a APAR TBD (AIX 5.1)
-@samp{libstdc++} in GCC 3.2 increments the major version number of the
+@samp{libstdc++} in GCC 3.4 increments the major version number of the
shared object and GCC installation places the @file{libstdc++.a}
-shared library in a common location which will overwrite the GCC 3.1
-version of the shared library. Applications either need to be
-re-linked against the new shared library or the GCC 3.1 version of the
-@samp{libstdc++} shared object needs to be available to the AIX
-runtime loader. The GCC 3.1 @samp{libstdc++.so.4} shared object can
-be installed for runtime dynamic loading using the following steps to
-set the @samp{F_LOADONLY} flag in the shared object for @emph{each}
+shared library in a common location which will overwrite the and GCC
+3.3 version of the shared library. Applications either need to be
+re-linked against the new shared library or the GCC 3.1 and GCC 3.3
+versions of the @samp{libstdc++} shared object needs to be available
+to the AIX runtime loader. The GCC 3.1 @samp{libstdc++.so.4}, if
+present, and GCC 3.3 @samp{libstdc++.so.5} shared objects can be
+installed for runtime dynamic loading using the following steps to set
+the @samp{F_LOADONLY} flag in the shared object for @emph{each}
multilib @file{libstdc++.a} installed:
-Extract the shared object from each the GCC 3.1 @file{libstdc++.a}
-archive:
-@example
- % ar -x libstdc++.a libstdc++.so.4
-@end example
+Extract the shared objects from the currently installed
+@file{libstdc++.a} archive:
+@smallexample
+ % ar -x libstdc++.a libstdc++.so.4 libstdc++.so.5
+@end smallexample
Enable the @samp{F_LOADONLY} flag so that the shared object will be
available for runtime dynamic loading, but not linking:
-@example
- % strip -e libstdc++.so.4
-@end example
+@smallexample
+ % strip -e libstdc++.so.4 libstdc++.so.5
+@end smallexample
-Archive the runtime-only shared object in the GCC 3.2
+Archive the runtime-only shared object in the GCC 3.4
@file{libstdc++.a} archive:
-@example
- % ar -q libstdc++.a libstdc++.so.4
-@end example
+@smallexample
+ % ar -q libstdc++.a libstdc++.so.4 libstdc++.so.5
+@end smallexample
Linking executables and shared libraries may produce warnings of
duplicate symbols. The assembly files generated by GCC for AIX always
@@ -2950,16 +3161,16 @@ encounter this problem, upgrade your operating system or use BASH (the
GNU shell) to run @command{fixproto}. This bug will cause the fixproto
program to report an error of the form:
-@example
+@smallexample
./fixproto: sh internal 1K buffer overflow
-@end example
+@end smallexample
To fix this, you can also change the first line of the fixproto script
to look like:
-@example
+@smallexample
#!/bin/ksh
-@end example
+@end smallexample
@html
<hr />
@@ -2992,143 +3203,100 @@ if you use the GNU assembler and linker.
@end html
@heading @anchor{mips-sgi-irix5}mips-sgi-irix5
-This configuration has considerable problems, which will be fixed in a
-future release.
-
-In order to compile GCC on an SGI running IRIX 5, the ``compiler_dev.hdr''
-subsystem must be installed from the IDO CD-ROM supplied by Silicon
-Graphics. It is also available for download from
-@uref{http://www.sgi.com/developers/devtools/apis/ido.html,,http://www.sgi.com/developers/devtools/apis/ido.html}.
-
-@samp{make compare} may fail on version 5 of IRIX unless you add
-@option{-save-temps} to @code{CFLAGS}. On these systems, the name of the
-assembler input file is stored in the object file, and that makes
-comparison fail if it differs between the @code{stage1} and
-@code{stage2} compilations. The option @option{-save-temps} forces a
-fixed name to be used for the assembler input file, instead of a
-randomly chosen name in @file{/tmp}. Do not add @option{-save-temps}
-unless the comparisons fail without that option. If you do you
-@option{-save-temps}, you will have to manually delete the @samp{.i} and
-@samp{.s} files after each series of compilations.
+In order to compile GCC on an SGI running IRIX 5, the @samp{compiler_dev.hdr}
+subsystem must be installed from the IDO CD-ROM supplied by SGI@.
+It is also available for download from
+@uref{http://www.sgi.com/developers/devtools/apis/ido.html}.
If you use the MIPS C compiler to bootstrap, it may be necessary
to increase its table size for switch statements with the
@option{-Wf,-XNg1500} option. If you use the @option{-O2}
optimization option, you also need to use @option{-Olimit 3000}.
-To enable debugging under IRIX 5, you must use GNU @command{as} 2.11.2
-or later,
-and use the @option{--with-gnu-as} configure option when configuring GCC.
-GNU @command{as} is distributed as part of the binutils package.
-When using release 2.11.2, you need to apply a patch
-@uref{http://sources.redhat.com/ml/binutils/2001-07/msg00352.html,,http://sources.redhat.com/ml/binutils/2001-07/msg00352.html}
-which will be included in the next release of binutils.
-
-When building GCC, the build process loops rebuilding @command{cc1} over
-and over again. This happens on @samp{mips-sgi-irix5.2}, and possibly
-other platforms. It has been reported that this is a known bug in the
-@command{make} shipped with IRIX 5.2. We recommend you use GNU
-@command{make} instead of the vendor supplied @command{make} program;
-however, you may have success with @command{smake} on IRIX 5.2 if you do
-not have GNU @command{make} available.
+To enable debugging under IRIX 5, you must use GNU binutils 2.15 or
+later, and use the @option{--with-gnu-as} and @option{--with-gnu-ld}
+@command{configure} options when configuring GCC@. You need to use GNU
+@command{ar} and @command{nm}, also distributed with GNU binutils.
@html
<hr />
@end html
@heading @anchor{mips-sgi-irix6}mips-sgi-irix6
-If you are using IRIX @command{cc} as your bootstrap compiler, you must
+If you are using SGI's MIPSpro @command{cc} as your bootstrap compiler, you must
ensure that the N32 ABI is in use. To test this, compile a simple C
file with @command{cc} and then run @command{file} on the
resulting object file. The output should look like:
-@example
+@smallexample
test.o: ELF N32 MSB @dots{}
-@end example
+@end smallexample
If you see:
-@example
+@smallexample
test.o: ELF 32-bit MSB @dots{}
-@end example
+@end smallexample
or
-@example
+@smallexample
test.o: ELF 64-bit MSB @dots{}
-@end example
+@end smallexample
then your version of @command{cc} uses the O32 or N64 ABI by default. You
should set the environment variable @env{CC} to @samp{cc -n32}
-before configuring GCC@.
+before configuring GCC@. SGI's MIPSpro 7.2 assembler may misassemble
+parts of the compiler, causing bootstrap failures. MIPSpro 7.3 is
+known to work. MIPSpro C 7.4 may cause bootstrap failures, too, due
+to a bug when inlining @code{memcmp}. Either add @code{-U__INLINE_INTRINSICS}
+to the @env{CC} environment variable as a workaround or upgrade to
+MIPSpro C 7.4.1m.
If you want the resulting @command{gcc} to run on old 32-bit systems
-with the MIPS R4400 CPU, you need to ensure that only code for the mips3
+with the MIPS R4400 CPU, you need to ensure that only code for the @samp{mips3}
instruction set architecture (ISA) is generated. While GCC 3.x does
this correctly, both GCC 2.95 and SGI's MIPSpro @command{cc} may change
the ISA depending on the machine where GCC is built. Using one of them
-as the bootstrap compiler may result in mips4 code, which won't run at
-all on mips3-only systems. For the test program above, you should see:
+as the bootstrap compiler may result in @samp{mips4} code, which won't run at
+all on @samp{mips3}-only systems. For the test program above, you should see:
-@example
+@smallexample
test.o: ELF N32 MSB mips-3 @dots{}
-@end example
+@end smallexample
If you get:
-@example
+@smallexample
test.o: ELF N32 MSB mips-4 @dots{}
-@end example
+@end smallexample
instead, you should set the environment variable @env{CC} to @samp{cc
-n32 -mips3} or @samp{gcc -mips3} respectively before configuring GCC@.
-GCC on IRIX 6 is usually built to support both the N32 and N64 ABIs. If
-you build GCC on a system that doesn't have the N64 libraries installed,
+GCC on IRIX 6 is usually built to support the N32, O32 and N64 ABIs. If
+you build GCC on a system that doesn't have the N64 libraries installed
+or cannot run 64-bit binaries,
you need to configure with @option{--disable-multilib} so GCC doesn't
-try to use them. Look for @file{/usr/lib64/libc.so.1} to see if you
+try to use them. This will disable building the O32 libraries, too.
+Look for @file{/usr/lib64/libc.so.1} to see if you
have the 64-bit libraries installed.
-You must @emph{not} use GNU @command{as} (which isn't built anyway as of
-binutils 2.11.2) on IRIX 6 platforms; doing so will only cause problems.
-
-GCC does not currently support generating O32 ABI binaries in the
-@samp{mips-sgi-irix6} configurations. It is possible to create a GCC
-with O32 ABI only support by configuring it for the @samp{mips-sgi-irix5}
-target and using a patched GNU @command{as} 2.11.2 as documented in the
-@uref{#mips-sgi-irix5,,@samp{mips-sgi-irix5}} section above. Using the
-native assembler requires patches to GCC which will be included in a
-future release. It is
-expected that O32 ABI support will be available again in a future release.
+To enable debugging for the O32 ABI, you must use GNU @command{as} from
+GNU binutils 2.15 or later. You may also use GNU @command{ld}, but
+this is not required and currently causes some problems with Ada.
The @option{--enable-threads} option doesn't currently work, a patch is
in preparation for a future release. The @option{--enable-libgcj}
option is disabled by default: IRIX 6 uses a very low default limit
-(20480) for the command line length. Although libtool contains a
+(20480) for the command line length. Although @command{libtool} contains a
workaround for this problem, at least the N64 @samp{libgcj} is known not
to build despite this, running into an internal error of the native
@command{ld}. A sure fix is to increase this limit (@samp{ncargs}) to
its maximum of 262144 bytes. If you have root access, you can use the
@command{systune} command to do this.
-GCC does not correctly pass/return structures which are
-smaller than 16 bytes and which are not 8 bytes. The problem is very
-involved and difficult to fix. It affects a number of other targets also,
-but IRIX 6 is affected the most, because it is a 64-bit target, and 4 byte
-structures are common. The exact problem is that structures are being padded
-at the wrong end, e.g.@: a 4 byte structure is loaded into the lower 4 bytes
-of the register when it should be loaded into the upper 4 bytes of the
-register.
-
-GCC is consistent with itself, but not consistent with the SGI C compiler
-(and the SGI supplied runtime libraries), so the only failures that can
-happen are when there are library functions that take/return such
-structures. There are very few such library functions. Currently this
-is known to affect @code{inet_ntoa}, @code{inet_lnaof},
-@code{inet_netof}, @code{inet_makeaddr}, and @code{semctl}. Until the
-bug is fixed, GCC contains workarounds for the known affected functions.
-
-See @uref{http://freeware.sgi.com/,,http://freeware.sgi.com/} for more
+See @uref{http://freeware.sgi.com/} for more
information about using GCC on IRIX platforms.
@html
@@ -3222,19 +3390,19 @@ Embedded PowerPC system in little endian mode.
<hr />
@end html
@heading @anchor{s390-*-linux*}s390-*-linux*
-S/390 system running Linux for S/390@.
+S/390 system running GNU/Linux for S/390@.
@html
<hr />
@end html
@heading @anchor{s390x-*-linux*}s390x-*-linux*
-zSeries system (64-bit) running Linux for zSeries@.
+zSeries system (64-bit) running GNU/Linux for zSeries@.
@html
<hr />
@end html
@heading @anchor{s390x-ibm-tpf*}s390x-ibm-tpf*
-zSeries system (64-bit) running TPF. This platform is
+zSeries system (64-bit) running TPF. This platform is
supported as cross-compilation target only.
@html
@@ -3338,6 +3506,11 @@ that supports only 32-bit binaries, one must configure with
@option{--disable-multilib}, since we will not be able to build the
64-bit target libraries.
+GCC 3.4 triggers a code generation bug in versions 5.4 (Sun ONE Studio 7)
+and 5.5 (Sun ONE Studio 8) of the Sun compiler, which causes a bootstrap
+failure in form of a miscompilation of the stage1 compiler by the Sun
+compiler. This is Sun bug 4974440. This is fixed with patch 112760-07.
+
@html
<hr />
@end html
@@ -3407,9 +3580,9 @@ releases mishandled unaligned relocations on @code{sparc-*-*} targets.
The following compiler flags must be specified in the configure
step in order to bootstrap this target with the Sun compiler:
-@example
+@smallexample
% CC="cc -xildoff -xarch=v9" @var{srcdir}/configure [@var{options}] [@var{target}]
-@end example
+@end smallexample
@option{-xildoff} turns off the incremental linker, and @option{-xarch=v9}
specifies the SPARC-V9 architecture to the Sun linker and assembler.
@@ -3443,10 +3616,10 @@ is said to work. Smaller values may also work.
On System V, if you get an error like this,
-@example
+@smallexample
/usr/local/lib/bison.simple: In function `yyparse':
/usr/local/lib/bison.simple:625: virtual memory exhausted
-@end example
+@end smallexample
@noindent
that too indicates a problem with disk space, ulimit, or @code{MAXUMEM}.
@@ -3495,7 +3668,7 @@ to do so.
GCC's exception handling runtime requires a special ``configlette''
module, @file{contrib/gthr_supp_vxw_5x.c}. Follow the instructions in
that file to add the module to your kernel build. (Future versions of
-VxWorks will incorporate this module.)
+VxWorks will incorporate this module.)
@html
<hr />
diff --git a/gcc/doc/interface.texi b/gcc/doc/interface.texi
index d2210e93865..b55293d863c 100644
--- a/gcc/doc/interface.texi
+++ b/gcc/doc/interface.texi
@@ -1,5 +1,5 @@
@c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-@c 1999, 2000, 2001 Free Software Foundation, Inc.
+@c 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -28,8 +28,8 @@ long in the same registers used for @code{int} or @code{double} return
values. (GCC typically allocates variables of such types in
registers also.) Structures and unions of other sizes are returned by
storing them into an address passed by the caller (usually in a
-register). The machine-description macros @code{STRUCT_VALUE} and
-@code{STRUCT_INCOMING_VALUE} tell GCC where to pass this address.
+register). The target hook @code{TARGET_STRUCT_VALUE_RTX}
+tells GCC where to pass this address.
By contrast, PCC on most target machines returns structures and unions
of any size by copying the data into an area of static storage, and then
@@ -76,10 +76,10 @@ just take the address of the variable. If a variable's address is ever
taken, even if just to compute it and ignore it, then the variable cannot
go in a register:
-@example
+@smallexample
@{
int careful;
&careful;
@dots{}
@}
-@end example
+@end smallexample
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index f7182f081ea..a2d6208e0d2 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -356,15 +356,17 @@ in the following sections.
@gccoptlist{-mcpu=@var{cpu-type} @gol
-mtune=@var{cpu-type} @gol
-mcmodel=@var{code-model} @gol
--m32 -m64 @gol
--mapp-regs -mbroken-saverestore -mcypress @gol
--mfaster-structs -mflat @gol
--mfpu -mhard-float -mhard-quad-float @gol
--mimpure-text -mlittle-endian -mlive-g0 -mno-app-regs @gol
--mno-faster-structs -mno-flat -mno-fpu @gol
--mno-impure-text -mno-stack-bias -mno-unaligned-doubles @gol
--msoft-float -msoft-quad-float -msparclite -mstack-bias @gol
--msupersparc -munaligned-doubles -mv8}
+-m32 -m64 -mapp-regs -mno-app-regs @gol
+-mfaster-structs -mno-faster-structs @gol
+-mflat -mno-flat -mfpu -mno-fpu @gol
+-mhard-float -msoft-float @gol
+-mhard-quad-float -msoft-quad-float @gol
+-mimpure-text -mno-impure-text -mlittle-endian @gol
+-mstack-bias -mno-stack-bias @gol
+-munaligned-doubles -mno-unaligned-doubles @gol
+-mv8plus -mno-v8plus -mvis -mno-vis @gol
+-mcypress -mf930 -mf934 @gol
+-msparclite -msupersparc -mv8}
@emph{ARM Options}
@gccoptlist{-mapcs-frame -mno-apcs-frame @gol
@@ -488,7 +490,7 @@ in the following sections.
-mno-fp-ret-in-387 -msoft-float -msvr3-shlib @gol
-mno-wide-multiply -mrtd -malign-double @gol
-mpreferred-stack-boundary=@var{num} @gol
--mmmx -msse -msse2 -mpni -m3dnow @gol
+-mmmx -msse -msse2 -msse3 -m3dnow @gol
-mthreads -mno-align-stringops -minline-all-stringops @gol
-mpush-args -maccumulate-outgoing-args -m128bit-long-double @gol
-m96bit-long-double -mregparm=@var{num} -momit-leaf-frame-pointer @gol
@@ -621,7 +623,8 @@ in the following sections.
-metrax4 -metrax100 -mpdebug -mcc-init -mno-side-effects @gol
-mstack-align -mdata-align -mconst-align @gol
-m32-bit -m16-bit -m8-bit -mno-prologue-epilogue -mno-gotplt @gol
--melf -maout -melinux -mlinux -sim -sim2}
+-melf -maout -melinux -mlinux -sim -sim2 @gol
+-mmul-bug-workaround -mno-mul-bug-workaround}
@emph{PDP-11 Options}
@gccoptlist{-mfpu -msoft-float -mac0 -mno-ac0 -m40 -m45 -m10 @gol
@@ -807,7 +810,7 @@ Specify explicitly the @var{language} for the following input files
(rather than letting the compiler choose a default based on the file
name suffix). This option applies to all following input files until
the next @option{-x} option. Possible values for @var{language} are:
-@example
+@smallexample
c c-header cpp-output
c++ c++-header c++-cpp-output
objective-c objective-c-header objc-cpp-output
@@ -816,7 +819,7 @@ ada
f77 f77-cpp-input ratfor
java
treelang
-@end example
+@end smallexample
@item -x none
Turn off any specification of a language, so that subsequent files are
@@ -1029,7 +1032,7 @@ ISO C90 as modified in amendment 1.
@itemx iso9899:1999
@itemx iso9899:199x
ISO C99. Note that this standard is not yet fully supported; see
-@w{@uref{http://gcc.gnu.org/c99status.html}} for more information. The
+@w{@uref{http://gcc.gnu.org/gcc-3.4/c99status.html}} for more information. The
names @samp{c9x} and @samp{iso9899:199x} are deprecated.
@item gnu89
@@ -1247,9 +1250,9 @@ for C++ programs; but you can also use most of the GNU compiler options
regardless of what language your program is in. For example, you
might compile a file @code{firstClass.C} like this:
-@example
+@smallexample
g++ -g -frepo -O -c firstClass.C
-@end example
+@end smallexample
@noindent
In this example, only @option{-frepo} is an option meant
@@ -1269,7 +1272,7 @@ the version that conforms most closely to the C++ ABI specification.
Therefore, the ABI obtained using version 0 will change as ABI bugs
are fixed.
-The default is version 1.
+The default is version 2.
@item -fno-access-control
@opindex fno-access-control
@@ -1460,7 +1463,7 @@ inlined by default.
@opindex Wabi
Warn when G++ generates code that is probably not compatible with the
vendor-neutral C++ ABI. Although an effort has been made to warn about
-all such cases, there are probably some cases that are not warned about,
+all such cases, there are probably some cases that are not warned about,
even though G++ is generating incompatible code. There may also be
cases where warnings are emitted even though the code that is generated
will be compatible.
@@ -1484,7 +1487,7 @@ struct B : public A @{ int f2 : 1; @};
@noindent
In this case, G++ will place @code{B::f2} into the same byte
-as@code{A::f1}; other compilers will not. You can avoid this problem
+as@code{A::f1}; other compilers will not. You can avoid this problem
by explicitly padding @code{A} so that its size is a multiple of the
byte size on your platform; that will cause G++ and other compilers to
layout @code{B} identically.
@@ -1521,7 +1524,7 @@ union too small by the number of bits in an @code{int}.
@item
Empty classes can be placed at incorrect offsets. For example:
-
+
@smallexample
struct A @{@};
@@ -1614,7 +1617,7 @@ Item 23: Don't try to return a reference when you must return an object.
@end itemize
-Also warn about violations of the following style guidelines from
+Also warn about violations of the following style guidelines from
Scott Meyers' @cite{More Effective C++} book:
@itemize @bullet
@@ -1735,9 +1738,9 @@ for Objective-C programs, but you can also use most of the GNU compiler
options regardless of what language your program is in. For example,
you might compile a file @code{some_class.m} like this:
-@example
+@smallexample
gcc -g -fgnu-runtime -O -c some_class.m
-@end example
+@end smallexample
@noindent
In this example, @option{-fgnu-runtime} is an option meant only for
@@ -1772,17 +1775,17 @@ used.
@item -fno-nil-receivers
@opindex -fno-nil-receivers
-Assume that all Objective-C message dispatches (e.g.,
-@code{[receiver message:arg]}) in this translation unit ensure that the receiver
-is not @code{nil}. This allows for more efficient entry points in the runtime to be
-used. Currently, this option is only available in conjunction with
+Assume that all Objective-C message dispatches (e.g.,
+@code{[receiver message:arg]}) in this translation unit ensure that the receiver
+is not @code{nil}. This allows for more efficient entry points in the runtime to be
+used. Currently, this option is only available in conjunction with
the NeXT runtime on Mac OS X 10.3 and later.
@item -fobjc-exceptions
@opindex -fobjc-exceptions
-Enable syntactic support for structured exception handling in Objective-C,
-similar to what is offered by C++ and Java. Currently, this option is only
-available in conjunction with the NeXT runtime on Mac OS X 10.3 and later.
+Enable syntactic support for structured exception handling in Objective-C,
+similar to what is offered by C++ and Java. Currently, this option is only
+available in conjunction with the NeXT runtime on Mac OS X 10.3 and later.
@smallexample
@@try @{
@@ -1811,15 +1814,15 @@ available in conjunction with the NeXT runtime on Mac OS X 10.3 and later.
@end smallexample
The @code{@@throw} statement may appear anywhere in an Objective-C or
-Objective-C++ program; when used inside of a @code{@@catch} block, the
-@code{@@throw} may appear without an argument (as shown above), in which case
+Objective-C++ program; when used inside of a @code{@@catch} block, the
+@code{@@throw} may appear without an argument (as shown above), in which case
the object caught by the @code{@@catch} will be rethrown.
Note that only (pointers to) Objective-C objects may be thrown and
caught using this scheme. When an object is thrown, it will be caught
by the nearest @code{@@catch} clause capable of handling objects of that type,
-analogously to how @code{catch} blocks work in C++ and Java. A
-@code{@@catch(id @dots{})} clause (as shown above) may also be provided to catch
+analogously to how @code{catch} blocks work in C++ and Java. A
+@code{@@catch(id @dots{})} clause (as shown above) may also be provided to catch
any and all Objective-C exceptions not caught by previous @code{@@catch}
clauses (if any).
@@ -1833,7 +1836,7 @@ There are several caveats to using the new exception mechanism:
@itemize @bullet
@item
-Although currently designed to be binary compatible with @code{NS_HANDLER}-style
+Although currently designed to be binary compatible with @code{NS_HANDLER}-style
idioms provided by the @code{NSException} class, the new
exceptions can only be used on Mac OS X 10.3 (Panther) and later
systems, due to additional functionality needed in the (NeXT) Objective-C
@@ -1841,13 +1844,13 @@ runtime.
@item
As mentioned above, the new exceptions do not support handling
-types other than Objective-C objects. Furthermore, when used from
+types other than Objective-C objects. Furthermore, when used from
Objective-C++, the Objective-C exception model does not interoperate with C++
exceptions at this time. This means you cannot @code{@@throw} an exception
-from Objective-C and @code{catch} it in C++, or vice versa
+from Objective-C and @code{catch} it in C++, or vice versa
(i.e., @code{throw @dots{} @@catch}).
@end itemize
-
+
The @option{-fobjc-exceptions} switch also enables the use of synchronization
blocks for thread-safe execution:
@@ -1860,7 +1863,7 @@ blocks for thread-safe execution:
Upon entering the @code{@@synchronized} block, a thread of execution shall
first check whether a lock has been placed on the corresponding @code{guard}
object by another thread. If it has, the current thread shall wait until
-the other thread relinquishes its lock. Once @code{guard} becomes available,
+the other thread relinquishes its lock. Once @code{guard} becomes available,
the current thread will place its own lock on it, execute the code contained in
the @code{@@synchronized} block, and finally relinquish the lock (thereby
making @code{guard} available to other threads).
@@ -1875,10 +1878,10 @@ to be unlocked properly.
Emit a special marker instructing @command{ld(1)} not to statically link in
the resulting object file, and allow @command{dyld(1)} to load it in at
run time instead. This is used in conjunction with the Fix-and-Continue
-debugging mode, where the object file in question may be recompiled and
+debugging mode, where the object file in question may be recompiled and
dynamically reloaded in the course of program execution, without the need
to restart the program itself. Currently, Fix-and-Continue functionality
-is only available in conjunction with the NeXT runtime on Mac OS X 10.3
+is only available in conjunction with the NeXT runtime on Mac OS X 10.3
and later.
@item -fzero-link
@@ -1888,7 +1891,7 @@ to @code{objc_getClass("@dots{}")} (when the name of the class is known at
compile time) with static class references that get initialized at load time,
which improves run-time performance. Specifying the @option{-fzero-link} flag
suppresses this behavior and causes calls to @code{objc_getClass("@dots{}")}
-to be retained. This is useful in Zero-Link debugging mode, since it allows
+to be retained. This is useful in Zero-Link debugging mode, since it allows
for individual class implementations to be modified during program execution.
@item -gen-decls
@@ -1923,7 +1926,7 @@ being used.
@opindex Wundeclared-selector
Warn if a @code{@@selector(@dots{})} expression referring to an
undeclared selector is found. A selector is considered undeclared if no
-method with that name has been declared before the
+method with that name has been declared before the
@code{@@selector(@dots{})} expression, either explicitly in an
@code{@@interface} or @code{@@protocol} declaration, or implicitly in
an @code{@@implementation} section. This option always performs its
@@ -2158,7 +2161,7 @@ requiring a non-null value by the @code{nonnull} function attribute.
@option{-Wnonnull} is included in @option{-Wall} and @option{-Wformat}. It
can be disabled with the @option{-Wno-nonnull} option.
-@item -Winit-self @r{(C, C++, and Objective-C only)}
+@item -Winit-self @r{(C, C++, and Objective-C only)}
@opindex Winit-self
Warn about uninitialized variables which are initialized with themselves.
Note this option can only be used with the @option{-Wuninitialized} option,
@@ -2671,7 +2674,7 @@ constant suffixes. (Traditional C does support the @samp{L} suffix on integer
constants.) Note, these suffixes appear in macros defined in the system
headers of most modern systems, e.g.@: the @samp{_MIN}/@samp{_MAX} macros in @code{<limits.h>}.
Use of these macros in user code might normally lead to spurious
-warnings, however gcc's integrated preprocessor has enough context to
+warnings, however GCC's integrated preprocessor has enough context to
avoid warning in these cases.
@item
@@ -2720,7 +2723,7 @@ Use of ISO C style function definitions. This warning intentionally is
because these ISO C features will appear in your code when using
libiberty's traditional C compatibility macros, @code{PARAMS} and
@code{VPARAMS}. This warning is also bypassed for nested functions
-because that feature is already a gcc extension and thus not relevant to
+because that feature is already a GCC extension and thus not relevant to
traditional C compatibility.
@end itemize
@@ -2940,7 +2943,7 @@ code is to provide behavior which is selectable at compile-time.
@opindex Winline
Warn if a function can not be inlined and it was declared as inline.
Even with this option, the compiler will not warn about failures to
-inline functions declared in system headers.
+inline functions declared in system headers.
The compiler uses a variety of heuristics to determine whether or not
to inline a function. For example, the compiler takes into account
@@ -3513,19 +3516,19 @@ Same as @option{-print-file-name=libgcc.a}.
This is useful when you use @option{-nostdlib} or @option{-nodefaultlibs}
but you do want to link with @file{libgcc.a}. You can do
-@example
+@smallexample
gcc -nostdlib @var{files}@dots{} `gcc -print-libgcc-file-name`
-@end example
+@end smallexample
@item -print-search-dirs
@opindex print-search-dirs
Print the name of the configured installation directory and a list of
-program and library directories gcc will search---and don't do anything else.
+program and library directories @command{gcc} will search---and don't do anything else.
-This is useful when gcc prints the error message
+This is useful when @command{gcc} prints the error message
@samp{installation problem, cannot exec cpp0: No such file or directory}.
To resolve this you either need to put @file{cpp0} and the other compiler
-components where gcc expects to find them, or you can set the environment
+components where @command{gcc} expects to find them, or you can set the environment
variable @env{GCC_EXEC_PREFIX} to the directory where you installed them.
Don't forget the trailing '/'.
@xref{Environment Variables}.
@@ -3577,7 +3580,7 @@ Turning on optimization flags makes the compiler attempt to improve
the performance and/or code size at the expense of compilation time
and possibly the ability to debug the program.
-The compiler performs optimisation based on the knowledge it has of
+The compiler performs optimization based on the knowledge it has of
the program. Using the @option{-funit-at-a-time} flag will allow the
compiler to consider information gained from later functions in the
file when compiling a function. Compiling multiple files at once to a
@@ -3600,7 +3603,7 @@ With @option{-O}, the compiler tries to reduce code size and execution
time, without performing any optimizations that take a great deal of
compilation time.
-@option{-O} turns on the following optimization flags:
+@option{-O} turns on the following optimization flags:
@gccoptlist{-fdefer-pop @gol
-fmerge-constants @gol
-fthread-jumps @gol
@@ -3760,7 +3763,7 @@ Enabled at level @option{-O3}.
@item -finline-limit=@var{n}
@opindex finline-limit
-By default, gcc limits the size of functions that can be inlined. This flag
+By default, GCC limits the size of functions that can be inlined. This flag
allows the control of this limit for functions that are explicitly marked as
inline (i.e., marked with the inline keyword or defined within the class
definition in c++). @var{n} is the size of functions that can be inlined in
@@ -3774,7 +3777,7 @@ use inlining heavily such as those based on recursive templates with C++.
Inlining is actually controlled by a number of parameters, which may be
specified individually by using @option{--param @var{name}=@var{value}}.
-The @option{-finline-limit=@var{n}} option sets some of these parameters
+The @option{-finline-limit=@var{n}} option sets some of these parameters
as follows:
@table @gcctabopt
@@ -3835,8 +3838,8 @@ behavior.
@item -fnew-ra
@opindex fnew-ra
Use a graph coloring register allocator. Currently this option is meant
-for testing, so we are interested to hear about miscompilations with
-@option{-fnew-ra}.
+only for testing. Users should not specify this option, since it is not
+yet ready for production use.
@item -fno-branch-count-reg
@opindex fno-branch-count-reg
@@ -4085,9 +4088,9 @@ of stalled insns into the ready list, during the second scheduling pass.
@item -fsched-stalled-insns-dep=@var{n}
@opindex fsched-stalled-insns-dep
-Define how many insn groups (cycles) will be examined for a dependency
-on a stalled insn that is candidate for premature removal from the queue
-of stalled insns. Has an effect only during the second scheduling pass,
+Define how many insn groups (cycles) will be examined for a dependency
+on a stalled insn that is candidate for premature removal from the queue
+of stalled insns. Has an effect only during the second scheduling pass,
and only if @option{-fsched-stalled-insns} is used and its value is not zero.
@item -fsched2-use-superblocks
@@ -4096,7 +4099,7 @@ When scheduling after register allocation, do use superblock scheduling
algorithm. Superblock scheduling allows motion across basic block boundaries
resulting on faster schedules. This option is experimental, as not all machine
descriptions used by GCC model the CPU closely enough to avoid unreliable
-results from the algorithm.
+results from the algorithm.
This only makes sense when scheduling after register allocation, i.e.@: with
@option{-fschedule-insns2} or at @option{-O2} or higher.
@@ -4169,7 +4172,7 @@ other, a few use both.
@opindex fno-guess-branch-probability
Do not guess branch probabilities using a randomized model.
-Sometimes gcc will opt to use a randomized model to guess branch
+Sometimes GCC will opt to use a randomized model to guess branch
probabilities, when none are available from either profiling feedback
(@option{-fprofile-arcs}) or @samp{__builtin_expect}. This means that
different runs of the compiler on the same program may produce different
@@ -4217,7 +4220,7 @@ example, an @code{unsigned int} can alias an @code{int}, but not a
type.
Pay special attention to code like this:
-@example
+@smallexample
union a_union @{
int i;
double d;
@@ -4228,13 +4231,13 @@ int f() @{
t.d = 3.0;
return t.i;
@}
-@end example
+@end smallexample
The practice of reading from a different union member than the one most
recently written to (called ``type-punning'') is common. Even with
@option{-fstrict-aliasing}, type-punning is allowed, provided the memory
is accessed through the union type. So, the code above will work as
expected. However, this code might not:
-@example
+@smallexample
int f() @{
a_union t;
int* ip;
@@ -4242,7 +4245,7 @@ int f() @{
ip = &t.i;
return *ip;
@}
-@end example
+@end smallexample
Every language that wishes to perform language-specific alias analysis
should define a function that computes, given an @code{tree}
@@ -4349,10 +4352,13 @@ Disabled at levels @option{-O}, @option{-O2}, @option{-O3}, @option{-Os}.
@item -fprofile-generate
@opindex fprofile-generate
-Enable options usually used for instrumenting application to produce profile usefull
-for later recompilation profile feedback based optimization.
-The following options are enabled: @code{-fprofile-arcs}, @code{-fprofile-values}, @code{-fvpt}
+Enable options usually used for instrumenting application to produce
+profile useful for later recompilation with profile feedback based
+optimization. You must use @code{-fprofile-generate} both when
+compiling and when linking your program.
+
+The following options are enabled: @code{-fprofile-arcs}, @code{-fprofile-values}, @code{-fvpt}.
@item -fprofile-use
@opindex fprofile-use
@@ -4468,7 +4474,7 @@ The default is @option{-fno-rounding-math}.
This option is experimental and does not currently guarantee to
disable all GCC optimizations that are affected by rounding mode.
-Future versions of gcc may provide finer control of this setting
+Future versions of GCC may provide finer control of this setting
using C99's @code{FENV_ACCESS} pragma. This command line option
will be used to specify the default state for @code{FENV_ACCESS}.
@@ -4513,7 +4519,7 @@ file The information in this data file is very dependent on the
structure of the generated code, so you must use the same source code
and the same optimization options for both compilations.
-With @option{-fbranch-probabilities}, GCC puts a
+With @option{-fbranch-probabilities}, GCC puts a
@samp{REG_BR_PROB} note on each @samp{JUMP_INSN} and @samp{CALL_INSN}.
These can be used to improve optimization. Currently, they are only
used in one place: in @file{reorg.c}, instead of guessing which path a
@@ -4598,7 +4604,7 @@ the loop is entered. This is done using the old loop unroller whose loop
recognition is based on notes from frontend. This usually makes programs run more slowly.
@option{-fold-unroll-all-loops} implies the same options as
@option{-fold-unroll-loops}.
-
+
@item -funswitch-loops
@opindex funswitch-loops
Move branches with loop invariant conditions out of the loop, with duplicates
@@ -4659,6 +4665,10 @@ that contain more that a certain number of instructions. You can
control some of these constants on the command-line using the
@option{--param} option.
+The names of specific parameters, and the meaning of the values, are
+tied to the internals of the compiler, and are subject to change
+without notice in future releases.
+
In each case, the @var{value} is an integer. The allowable choices for
@var{name} are given in the following table:
@@ -4703,8 +4713,8 @@ needlessly consume memory and resources.
@item max-inline-insns-single
Several parameters control the tree inliner used in gcc.
-This number sets the maximum number of instructions (counted in gcc's
-internal representation) in a single function that the tree inliner
+This number sets the maximum number of instructions (counted in GCC's
+internal representation) in a single function that the tree inliner
will consider for inlining. This only affects functions declared
inline and methods implemented in a class declaration (C++).
The default value is 500.
@@ -4715,7 +4725,7 @@ a lot of functions that would otherwise not be considered for inlining
by the compiler will be investigated. To those functions, a different
(more restrictive) limit compared to functions declared inline can
be applied.
-The default value is 150.
+The default value is 100.
@item large-function-insns
The limit specifying really large functions. For functions greater than this
@@ -4723,10 +4733,10 @@ limit inlining is constrained by @option{--param large-function-growth}.
This parameter is useful primarily to avoid extreme compilation time caused by non-linear
algorithms used by the backend.
This parameter is ignored when @option{-funit-at-a-time} is not used.
-The default value is 30000.
+The default value is 3000.
@item large-function-growth
-Specifies maximal growth of large functtion caused by inlining in percents.
+Specifies maximal growth of large function caused by inlining in percents.
This parameter is ignored when @option{-funit-at-a-time} is not used.
The default value is 200.
@@ -4737,7 +4747,7 @@ The default value is 150.
@item max-inline-insns-rtl
For languages that use the RTL inliner (this happens at a later stage
-than tree inlining), you can set the maximum allowable size (counted
+than tree inlining), you can set the maximum allowable size (counted
in RTL instructions) for the RTL inliner with this parameter.
The default value is 600.
@@ -5644,12 +5654,12 @@ returns the pathname. If it does not exist, it returns the second argument.
This way, @code{if-exists-else} can be used to select one file or another,
based on the existence of the first. Here is a small example of its usage:
-@smallexample
+@smallexample
*startfile:
crt0%O%s %:if-exists(crti%O%s) \
%:if-exists-else(crtbeginT%O%s crtbegin%O%s)
@end smallexample
-@end table
+@end table
@item %@{@code{S}@}
Substitutes the @code{-S} switch, if that switch was given to GCC@.
@@ -5724,7 +5734,7 @@ jim.d -bar -boggle
If @code{S} was given to GCC, substitutes @code{X}; else if @code{T} was
given to GCC, substitutes @code{Y}; else substitutes @code{D}. There can
-be as many clauses as you need. This may be combined with @code{.},
+be as many clauses as you need. This may be combined with @code{.},
@code{!}, @code{|}, and @code{*} as needed.
@@ -6081,7 +6091,7 @@ when the compiler is configured for 68HC12-based systems.
@itemx -m68hcs12
@opindex m68S12
@opindex m68hcs12
-Generate output for a 68HCS12.
+Generate output for a 68HCS12.
@item -mauto-incdec
@opindex mauto-incdec
@@ -6142,7 +6152,7 @@ Output code for g-format floating point numbers instead of d-format.
@subsection SPARC Options
@cindex SPARC options
-These @samp{-m} switches are supported on the SPARC:
+These @samp{-m} options are supported on the SPARC:
@table @gcctabopt
@item -mno-app-regs
@@ -6193,7 +6203,7 @@ Generate output containing library calls for quad-word (long double)
floating point instructions. The functions called are those specified
in the SPARC ABI@. This is the default.
-As of this writing, there are no sparc implementations that have hardware
+As of this writing, there are no SPARC implementations that have hardware
support for the quad-word floating point instructions. They all invoke
a trap handler for one of these instructions, and then the trap handler
emulates the effect of the instruction. Because of the trap handler overhead,
@@ -6214,6 +6224,8 @@ The local registers and the input registers (0--5) are still treated as
With @option{-mno-flat} (the default), the compiler emits save/restore
instructions (except for leaf functions) and is the normal mode of operation.
+These options are deprecated and will be deleted in a future GCC release.
+
@item -mno-unaligned-doubles
@itemx -munaligned-doubles
@opindex mno-unaligned-doubles
@@ -6245,7 +6257,7 @@ the rules of the ABI@.
@option{-mimpure-text}, used in addition to @option{-shared}, tells
the compiler to not pass @option{-z text} to the linker when linking a
shared object. Using this option, you can link position-dependent
-code into a shared object.
+code into a shared object.
@option{-mimpure-text} suppresses the ``relocations remain against
allocatable but non-writable sections'' linker error message.
@@ -6261,35 +6273,18 @@ This option is only available on SunOS and Solaris.
@opindex mv8
@opindex msparclite
These two options select variations on the SPARC architecture.
-
-By default (unless specifically configured for the Fujitsu SPARClite),
-GCC generates code for the v7 variant of the SPARC architecture.
-
-@option{-mv8} will give you SPARC v8 code. The only difference from v7
-code is that the compiler emits the integer multiply and integer
-divide instructions which exist in SPARC v8 but not in SPARC v7.
-
-@option{-msparclite} will give you SPARClite code. This adds the integer
-multiply, integer divide step and scan (@code{ffs}) instructions which
-exist in SPARClite but not in SPARC v7.
-
These options are deprecated and will be deleted in a future GCC release.
They have been replaced with @option{-mcpu=xxx}.
@item -mcypress
@itemx -msupersparc
+@itemx -mf930
+@itemx -mf934
@opindex mcypress
@opindex msupersparc
-These two options select the processor for which the code is optimized.
-
-With @option{-mcypress} (the default), the compiler optimizes code for the
-Cypress CY7C602 chip, as used in the SPARCStation/SPARCServer 3xx series.
-This is also appropriate for the older SPARCStation 1, 2, IPX etc.
-
-With @option{-msupersparc} the compiler optimizes code for the SuperSPARC cpu, as
-used in the SPARCStation 10, 1000 and 2000 series. This flag also enables use
-of the full SPARC v8 instruction set.
-
+@opindex -mf930
+@opindex -mf934
+These four options select the processor for which the code is optimized.
These options are deprecated and will be deleted in a future GCC release.
They have been replaced with @option{-mcpu=xxx}.
@@ -6298,7 +6293,7 @@ They have been replaced with @option{-mcpu=xxx}.
Set the instruction set, register set, and instruction scheduling parameters
for machine type @var{cpu_type}. Supported values for @var{cpu_type} are
@samp{v7}, @samp{cypress}, @samp{v8}, @samp{supersparc}, @samp{sparclite},
-@samp{hypersparc}, @samp{sparclite86x}, @samp{f930}, @samp{f934},
+@samp{f930}, @samp{f934}, @samp{hypersparc}, @samp{sparclite86x},
@samp{sparclet}, @samp{tsc701}, @samp{v9}, @samp{ultrasparc}, and
@samp{ultrasparc3}.
@@ -6317,6 +6312,41 @@ implementations.
v9: ultrasparc, ultrasparc3
@end smallexample
+By default (unless configured otherwise), GCC generates code for the V7
+variant of the SPARC architecture. With @option{-mcpu=cypress}, the compiler
+additionally optimizes it for the Cypress CY7C602 chip, as used in the
+SPARCStation/SPARCServer 3xx series. This is also appropriate for the older
+SPARCStation 1, 2, IPX etc.
+
+With @option{-mcpu=v8}, GCC generates code for the V8 variant of the SPARC
+architecture. The only difference from V7 code is that the compiler emits
+the integer multiply and integer divide instructions which exist in SPARC-V8
+but not in SPARC-V7. With @option{-mcpu=supersparc}, the compiler additionally
+optimizes it for the SuperSPARC chip, as used in the SPARCStation 10, 1000 and
+2000 series.
+
+With @option{-mcpu=sparclite}, GCC generates code for the SPARClite variant of
+the SPARC architecture. This adds the integer multiply, integer divide step
+and scan (@code{ffs}) instructions which exist in SPARClite but not in SPARC-V7.
+With @option{-mcpu=f930}, the compiler additionally optimizes it for the
+Fujitsu MB86930 chip, which is the original SPARClite, with no FPU. With
+@option{-mcpu=f934}, the compiler additionally optimizes it for the Fujitsu
+MB86934 chip, which is the more recent SPARClite with FPU.
+
+With @option{-mcpu=sparclet}, GCC generates code for the SPARClet variant of
+the SPARC architecture. This adds the integer multiply, multiply/accumulate,
+integer divide step and scan (@code{ffs}) instructions which exist in SPARClet
+but not in SPARC-V7. With @option{-mcpu=tsc701}, the compiler additionally
+optimizes it for the TEMIC SPARClet chip.
+
+With @option{-mcpu=v9}, GCC generates code for the V9 variant of the SPARC
+architecture. This adds 64-bit integer and floating-point move instructions,
+3 additional floating-point condition code registers and conditional move
+instructions. With @option{-mcpu=ultrasparc}, the compiler additionally
+optimizes it for the Sun UltraSPARC I/II chips. With
+@option{-mcpu=ultrasparc3}, the compiler additionally optimizes it for the
+Sun UltraSPARC III chip.
+
@item -mtune=@var{cpu_type}
@opindex mtune
Set the instruction scheduling parameters for machine type
@@ -6330,36 +6360,25 @@ that select a particular cpu implementation. Those are @samp{cypress},
@samp{sparclite86x}, @samp{tsc701}, @samp{ultrasparc}, and
@samp{ultrasparc3}.
+@item -mv8plus
+@itemx -mno-v8plus
+@opindex -mv8plus
+@opindex -mno-v8plus
+With @option{-mv8plus}, GCC generates code for the SPARC-V8+ ABI. The
+difference from the V8 ABI is that the global and out registers are
+considered 64-bit wide. This is enabled by default on Solaris in 32-bit
+mode for all SPARC-V9 processors.
+
+@item -mvis
+@itemx -mno-vis
+@opindex -mvis
+@opindex -mno-vis
+With @option{-mvis}, GCC generates code that takes advantage of the UltraSPARC
+Visual Instruction Set extensions. The default is @option{-mno-vis}.
@end table
-These @samp{-m} switches are supported in addition to the above
-on the SPARCLET processor.
-
-@table @gcctabopt
-@item -mlittle-endian
-@opindex mlittle-endian
-Generate code for a processor running in little-endian mode.
-
-@item -mlive-g0
-@opindex mlive-g0
-Treat register @code{%g0} as a normal register.
-GCC will continue to clobber it as necessary but will not assume
-it always reads as 0.
-
-@item -mbroken-saverestore
-@opindex mbroken-saverestore
-Generate code that does not use non-trivial forms of the @code{save} and
-@code{restore} instructions. Early versions of the SPARCLET processor do
-not correctly handle @code{save} and @code{restore} instructions used with
-arguments. They correctly handle them used without arguments. A @code{save}
-instruction used without arguments increments the current window pointer
-but does not allocate a new stack frame. It is assumed that the window
-overflow trap handler will properly handle this case as will interrupt
-handlers.
-@end table
-
-These @samp{-m} switches are supported in addition to the above
-on SPARC V9 processors in 64-bit environments.
+These @samp{-m} options are supported in addition to the above
+on SPARC-V9 processors in 64-bit environments:
@table @gcctabopt
@item -mlittle-endian
@@ -6378,31 +6397,31 @@ to 64 bits.
@item -mcmodel=medlow
@opindex mcmodel=medlow
-Generate code for the Medium/Low code model: the program must be linked
-in the low 32 bits of the address space. Pointers are 64 bits.
-Programs can be statically or dynamically linked.
+Generate code for the Medium/Low code model: 64-bit addresses, programs
+must be linked in the low 32 bits of memory. Programs can be statically
+or dynamically linked.
@item -mcmodel=medmid
@opindex mcmodel=medmid
-Generate code for the Medium/Middle code model: the program must be linked
-in the low 44 bits of the address space, the text segment must be less than
-2G bytes, and data segment must be within 2G of the text segment.
-Pointers are 64 bits.
+Generate code for the Medium/Middle code model: 64-bit addresses, programs
+must be linked in the low 44 bits of memory, the text and data segments must
+be less than 2GB in size and the data segment must be located within 2GB of
+the text segment.
@item -mcmodel=medany
@opindex mcmodel=medany
-Generate code for the Medium/Anywhere code model: the program may be linked
-anywhere in the address space, the text segment must be less than
-2G bytes, and data segment must be within 2G of the text segment.
-Pointers are 64 bits.
+Generate code for the Medium/Anywhere code model: 64-bit addresses, programs
+may be linked anywhere in memory, the text and data segments must be less
+than 2GB in size and the data segment must be located within 2GB of the
+text segment.
@item -mcmodel=embmedany
@opindex mcmodel=embmedany
Generate code for the Medium/Anywhere code model for embedded systems:
-assume a 32-bit text and a 32-bit data segment, both starting anywhere
-(determined at link time). Register %g4 points to the base of the
-data segment. Pointers are still 64 bits.
-Programs are statically linked, PIC is not supported.
+64-bit addresses, the text and data segments must be less than 2GB in
+size, both starting anywhere in memory (determined at link time). The
+global register %g4 points to the base of the data segment. Programs
+are statically linked and PIC is not supported.
@item -mstack-bias
@itemx -mno-stack-bias
@@ -6410,7 +6429,7 @@ Programs are statically linked, PIC is not supported.
@opindex mno-stack-bias
With @option{-mstack-bias}, GCC assumes that the stack pointer, and
frame pointer if present, are offset by @minus{}2047 which must be added back
-when making stack frame references.
+when making stack frame references. This is the default in 64-bit mode.
Otherwise, assume no such offset is present.
@end table
@@ -6438,15 +6457,19 @@ This is a synonym for @option{-mapcs-frame}.
@opindex mapcs-26
Generate code for a processor running with a 26-bit program counter,
and conforming to the function calling standards for the APCS 26-bit
-option. This option replaces the @option{-m2} and @option{-m3} options
-of previous releases of the compiler.
+option.
+
+This option is deprecated. Future releases of the GCC will only support
+generating code that runs in apcs-32 mode.
@item -mapcs-32
@opindex mapcs-32
Generate code for a processor running with a 32-bit program counter,
and conforming to the function calling standards for the APCS 32-bit
-option. This option replaces the @option{-m6} option of previous releases
-of the compiler.
+option.
+
+This flag is deprecated. Future releases of GCC will make this flag
+unconditional.
@ignore
@c not currently implemented
@@ -6547,7 +6570,7 @@ synthesize the access as a series of byte accesses. The compiler can
still use word accesses to load half-word data if it knows that the
address is aligned to a word boundary.
-This option is ignored when compiling for ARM architecture 4 or later,
+This option has no effect when compiling for ARM architecture 4 or later,
since these processors have instructions to directly access half-word
objects in memory.
@@ -6562,21 +6585,11 @@ Note that you cannot use this option to access unaligned word objects,
since the processor will only fetch one 32-bit aligned object from
memory.
-The default setting for most targets is @option{-mno-alignment-traps}, since
-this produces better code when there are no half-word memory
-instructions available.
+The default setting is @option{-malignment-traps}, since this produces
+code that will also run on processors implementing ARM architecture
+version 6 or later.
-@item -mshort-load-bytes
-@itemx -mno-short-load-words
-@opindex mshort-load-bytes
-@opindex mno-short-load-words
-These are deprecated aliases for @option{-malignment-traps}.
-
-@item -mno-short-load-bytes
-@itemx -mshort-load-words
-@opindex mno-short-load-bytes
-@opindex mshort-load-words
-This are deprecated aliases for @option{-mno-alignment-traps}.
+This option is deprecated and will be removed in the next release of GCC.
@item -mcpu=@var{name}
@opindex mcpu
@@ -7178,7 +7191,7 @@ option are incompatible.
@itemx -malign-power
@opindex malign-natural
@opindex malign-power
-On AIX, Darwin, and 64-bit PowerPC Linux, the option
+On AIX, Darwin, and 64-bit PowerPC GNU/Linux, the option
@option{-malign-natural} overrides the ABI-defined alignment of larger
types, such as floating-point doubles, on their natural size-based boundary.
The option @option{-malign-power} instructs GCC to follow the ABI-specified
@@ -7310,10 +7323,10 @@ libraries.
@item -mprioritize-restricted-insns=@var{priority}
@opindex mprioritize-restricted-insns
-This option controls the priority that is assigned to
-dispatch-slot restricted instructions during the second scheduling
-pass. The argument @var{priority} takes the value @var{0/1/2} to assign
-@var{no/highest/second-highest} priority to dispatch slot restricted
+This option controls the priority that is assigned to
+dispatch-slot restricted instructions during the second scheduling
+pass. The argument @var{priority} takes the value @var{0/1/2} to assign
+@var{no/highest/second-highest} priority to dispatch slot restricted
instructions.
@item -msched-costly-dep=@var{dependence_type}
@@ -7321,12 +7334,12 @@ instructions.
This option controls which dependences are considered costly
by the target during instruction scheduling. The argument
@var{dependence_type} takes one of the following values:
-@var{no}: no dependence is costly,
-@var{all}: all dependences are costly,
+@var{no}: no dependence is costly,
+@var{all}: all dependences are costly,
@var{true_store_to_load}: a true dependence from store to load is costly,
@var{store_to_load}: any dependence from store to load is costly,
@var{number}: any dependence which latency >= @var{number} is costly.
-
+
@item -minsert-sched-nops=@var{scheme}
@opindex minsert-sched-nops
This option controls which nop insertion scheme will be used during
@@ -7338,7 +7351,7 @@ according to the scheduler's grouping.
@var{regroup_exact}: Insert nops to force costly dependent insns into
separate groups. Insert exactly as many nops as needed to force an insn
to a new group, according to the estimated processor grouping.
-@var{number}: Insert nops to force costly dependent insns into
+@var{number}: Insert nops to force costly dependent insns into
separate groups. Insert @var{number} nops to force an insn to a new group.
@item -mcall-sysv
@@ -7563,8 +7576,8 @@ These options are defined for all architectures running the Darwin operating
system. They are useful for compatibility with other Mac OS compilers.
@table @gcctabopt
-@item -all_load
-@opindex all_load
+@item -all_load
+@opindex all_load
Loads all members of static archive libraries.
See man ld(1) for more information.
@@ -7578,7 +7591,7 @@ to be fatal.
Causes the output file to be marked such that the dynamic linker will
bind all undefined references when the file is loaded or launched.
-@item -bundle
+@item -bundle
@opindex bundle
Produce a Mach-o bundle format file.
See man ld(1) for more information.
@@ -7591,63 +7604,63 @@ output file being linked. See man ld(1) for more information.
@item -allowable_client @var{client_name}
@itemx -arch_only
-@itemx -client_name
+@itemx -client_name
@itemx -compatibility_version
-@itemx -current_version
+@itemx -current_version
@itemx -dependency-file
-@itemx -dylib_file
+@itemx -dylib_file
@itemx -dylinker_install_name
@itemx -dynamic
-@itemx -dynamiclib
-@itemx -exported_symbols_list
+@itemx -dynamiclib
+@itemx -exported_symbols_list
@itemx -filelist
-@itemx -flat_namespace
+@itemx -flat_namespace
@itemx -force_cpusubtype_ALL
-@itemx -force_flat_namespace
+@itemx -force_flat_namespace
@itemx -headerpad_max_install_names
-@itemx -image_base
+@itemx -image_base
@itemx -init
@itemx -install_name
@itemx -keep_private_externs
@itemx -multi_module
-@itemx -multiply_defined
-@itemx -multiply_defined_unused
-@itemx -noall_load
+@itemx -multiply_defined
+@itemx -multiply_defined_unused
+@itemx -noall_load
@itemx -nofixprebinding
@itemx -nomultidefs
-@itemx -noprebind
+@itemx -noprebind
@itemx -noseglinkedit
-@itemx -pagezero_size
+@itemx -pagezero_size
@itemx -prebind
@itemx -prebind_all_twolevel_modules
@itemx -private_bundle
@itemx -read_only_relocs
-@itemx -sectalign
-@itemx -sectobjectsymbols
+@itemx -sectalign
+@itemx -sectobjectsymbols
@itemx -whyload
-@itemx -seg1addr
+@itemx -seg1addr
@itemx -sectcreate
@itemx -sectobjectsymbols
@itemx -sectorder
@itemx -seg_addr_table
@itemx -seg_addr_table_filename
@itemx -seglinkedit
-@itemx -segprot
+@itemx -segprot
@itemx -segs_read_only_addr
@itemx -segs_read_write_addr
-@itemx -single_module
+@itemx -single_module
@itemx -static
@itemx -sub_library
-@itemx -sub_umbrella
+@itemx -sub_umbrella
@itemx -twolevel_namespace
@itemx -umbrella
@itemx -undefined
@itemx -unexported_symbols_list
@itemx -weak_reference_mismatches
-@itemx -whatsloaded
+@itemx -whatsloaded
@opindex allowable_client
-@opindex arch_only
+@opindex arch_only
@opindex client_name
@opindex compatibility_version
@opindex current_version
@@ -7657,35 +7670,35 @@ output file being linked. See man ld(1) for more information.
@opindex dynamic
@opindex dynamiclib
@opindex exported_symbols_list
-@opindex filelist
-@opindex flat_namespace
+@opindex filelist
+@opindex flat_namespace
@opindex force_cpusubtype_ALL
@opindex force_flat_namespace
@opindex headerpad_max_install_names
@opindex image_base
-@opindex init
+@opindex init
@opindex install_name
@opindex keep_private_externs
-@opindex multi_module
+@opindex multi_module
@opindex multiply_defined
-@opindex multiply_defined_unused
-@opindex noall_load
+@opindex multiply_defined_unused
+@opindex noall_load
@opindex nofixprebinding
-@opindex nomultidefs
+@opindex nomultidefs
@opindex noprebind
-@opindex noseglinkedit
+@opindex noseglinkedit
@opindex pagezero_size
@opindex prebind
@opindex prebind_all_twolevel_modules
-@opindex private_bundle
+@opindex private_bundle
@opindex read_only_relocs
-@opindex sectalign
-@opindex sectobjectsymbols
-@opindex whyload
+@opindex sectalign
+@opindex sectobjectsymbols
+@opindex whyload
@opindex seg1addr
-@opindex sectcreate
-@opindex sectobjectsymbols
-@opindex sectorder
+@opindex sectcreate
+@opindex sectobjectsymbols
+@opindex sectorder
@opindex seg_addr_table
@opindex seg_addr_table_filename
@opindex seglinkedit
@@ -8070,7 +8083,7 @@ call any such function. If called, the function must take the same
arguments as the common @code{_flush_func()}, that is, the address of the
memory range for which the cache is being flushed, the size of the
memory range, and the number 3 (to flush both caches). The default
-depends on the target gcc was configured for, but commonly is either
+depends on the target GCC was configured for, but commonly is either
@samp{_flush_func} or @samp{__cpu_flush}.
@item -mbranch-likely
@@ -8176,7 +8189,7 @@ These synonyms are deprecated.
@item -mfpmath=@var{unit}
@opindex march
-generate floating point arithmetics for selected unit @var{unit}. the choices
+Generate floating point arithmetics for selected unit @var{unit}. The choices
for @var{unit} are:
@table @samp
@@ -8202,24 +8215,17 @@ For i387 you need to use @option{-march=@var{cpu-type}}, @option{-msse} or
@option{-msse2} switches to enable SSE extensions and make this option
effective. For x86-64 compiler, these extensions are enabled by default.
-The resulting code should be considerably faster in majority of cases and avoid
+The resulting code should be considerably faster in the majority of cases and avoid
the numerical instability problems of 387 code, but may break some existing
code that expects temporaries to be 80bit.
-This is the default choice for x86-64 compiler.
-
-@item pni
-Use all SSE extensions enabled by @option{-msse2} as well as the new
-SSE extensions in Prescott New Instructions. @option{-mpni} also
-enables 2 builtin functions, @code{__builtin_ia32_monitor} and
-@code{__builtin_ia32_mwait}, for new instructions @code{monitor} and
-@code{mwait}.
+This is the default choice for the x86-64 compiler.
@item sse,387
Attempt to utilize both instruction sets at once. This effectively double the
amount of available registers and on chips with separate execution units for
387 and SSE the execution resources too. Use this option with care, as it is
-still experimental, because gcc register allocator does not model separate
+still experimental, because the GCC register allocator does not model separate
functional units well resulting in instable performance.
@end table
@@ -8292,28 +8298,28 @@ without that switch.
@itemx -m128bit-long-double
@opindex m96bit-long-double
@opindex m128bit-long-double
-These switches control the size of @code{long double} type. The i386
-application binary interface specifies the size to be 96 bits,
+These switches control the size of @code{long double} type. The i386
+application binary interface specifies the size to be 96 bits,
so @option{-m96bit-long-double} is the default in 32 bit mode.
Modern architectures (Pentium and newer) would prefer @code{long double}
-to be aligned to an 8 or 16 byte boundary. In arrays or structures
-conforming to the ABI, this would not be possible. So specifying a
+to be aligned to an 8 or 16 byte boundary. In arrays or structures
+conforming to the ABI, this would not be possible. So specifying a
@option{-m128bit-long-double} will align @code{long double}
to a 16 byte boundary by padding the @code{long double} with an additional
-32 bit zero.
+32 bit zero.
In the x86-64 compiler, @option{-m128bit-long-double} is the default choice as
its ABI specifies that @code{long double} is to be aligned on 16 byte boundary.
-
+
Notice that neither of these options enable any extra precision over the x87
-standard of 80 bits for a @code{long double}.
+standard of 80 bits for a @code{long double}.
@strong{Warning:} if you override the default value for your target ABI, the
-structures and arrays containing @code{long double} will change their size as
-well as function calling convention for function taking @code{long double}
-will be modified. Hence they will not be binary compatible with arrays or
-structures in code compiled without that switch.
+structures and arrays containing @code{long double} variables will change
+their size as well as function calling convention for function taking
+@code{long double} will be modified. Hence they will not be binary
+compatible with arrays or structures in code compiled without that switch.
@item -msvr3-shlib
@@ -8396,8 +8402,8 @@ preferred alignment to @option{-mpreferred-stack-boundary=2}.
@itemx -mno-sse
@item -msse2
@itemx -mno-sse2
-@item -mpni
-@itemx -mno-pni
+@item -msse3
+@itemx -mno-sse3
@item -m3dnow
@itemx -mno-3dnow
@opindex mmmx
@@ -8407,7 +8413,8 @@ preferred alignment to @option{-mpreferred-stack-boundary=2}.
@opindex m3dnow
@opindex mno-3dnow
These switches enable or disable the use of built-in functions that allow
-direct access to the MMX, SSE and 3Dnow extensions of the instruction set.
+direct access to the MMX, SSE, SSE2, SSE3 and 3Dnow extensions of the
+instruction set.
@xref{X86 Built-in Functions}, for details of the functions enabled
and disabled by these switches.
@@ -8444,7 +8451,7 @@ on thread-safe exception handling must compile and link all code with the
@opindex mno-align-stringops
Do not align destination of inlined string operations. This switch reduces
code size and improves performance in case the destination is already aligned,
-but gcc don't know about it.
+but GCC doesn't know about it.
@item -minline-all-stringops
@opindex minline-all-stringops
@@ -8649,7 +8656,7 @@ building a shared library. It is the default when GCC is configured,
explicitly or implicitly, with the GNU linker. This option does not
have any affect on which ld is called, it only changes what parameters
are passed to that ld. The ld that is called is determined by the
-@option{--with-ld} configure option, gcc's program search path, and
+@option{--with-ld} configure option, GCC's program search path, and
finally by the user's @env{PATH}. The linker used by GCC can be printed
using @samp{which `gcc -print-prog-name=ld`}.
@@ -8661,7 +8668,7 @@ links. It is the default when GCC is configured, explicitly or
implicitly, with the HP linker. This option does not have any affect on
which ld is called, it only changes what parameters are passed to that
ld. The ld that is called is determined by the @option{--with-ld}
-configure option, gcc's program search path, and finally by the user's
+configure option, GCC's program search path, and finally by the user's
@env{PATH}. The linker used by GCC can be printed using @samp{which
`gcc -print-prog-name=ld`}.
@@ -9569,7 +9576,7 @@ the compiler. This setting is the default.
@item -mno-app-regs
@opindex mno-app-regs
This option will cause r2 and r5 to be treated as fixed registers.
-
+
@item -mv850e1
@opindex mv850e1
Specify that the target processor is the V850E1. The preprocessor
@@ -9919,7 +9926,7 @@ Generate code for a big endian target. This is the default for HP-UX@.
@item -mlittle-endian
@opindex mlittle-endian
Generate code for a little endian target. This is the default for AIX5
-and Linux.
+and GNU/Linux.
@item -mgnu-as
@itemx -mno-gnu-as
@@ -10088,8 +10095,9 @@ generates IEEE floating-point instructions. This is the default.
@opindex mno-backchain
Generate (or do not generate) code which maintains an explicit
backchain within the stack frame that points to the caller's frame.
-This is currently needed to allow debugging. The default is to
-generate the backchain.
+This may be needed to allow debugging using tools that do not understand
+DWARF-2 call frame information. The default is not to generate the
+backchain.
@item -msmall-exec
@itemx -mno-small-exec
@@ -10106,8 +10114,8 @@ which does not have this limitation.
@opindex m64
@opindex m31
When @option{-m31} is specified, generate code compliant to the
-Linux for S/390 ABI@. When @option{-m64} is specified, generate
-code compliant to the Linux for zSeries ABI@. This allows GCC in
+GNU/Linux for S/390 ABI@. When @option{-m64} is specified, generate
+code compliant to the GNU/Linux for zSeries ABI@. This allows GCC in
particular to generate 64-bit instructions. For the @samp{s390}
targets, the default is @option{-m31}, while the @samp{s390x}
targets default to @option{-m64}.
@@ -10116,14 +10124,14 @@ targets default to @option{-m64}.
@itemx -mesa
@opindex mzarch
@opindex mesa
-When @option{-mzarch} is specified, generate code using the
-instructions available on z/Architecture.
-When @option{-mesa} is specified, generate code using the
+When @option{-mzarch} is specified, generate code using the
+instructions available on z/Architecture.
+When @option{-mesa} is specified, generate code using the
instructions available on ESA/390. Note that @option{-mesa} is
not possible with @option{-m64}.
-When generating code compliant to the Linux for S/390 ABI,
+When generating code compliant to the GNU/Linux for S/390 ABI,
the default is @option{-mesa}. When generating code compliant
-to the Linux for zSeries ABI, the default is @option{-mzarch}.
+to the GNU/Linux for zSeries ABI, the default is @option{-mzarch}.
@item -mmvcle
@itemx -mno-mvcle
@@ -10206,6 +10214,13 @@ program should be set to @var{n} bytes.
The options @option{-metrax4} and @option{-metrax100} are synonyms for
@option{-march=v3} and @option{-march=v8} respectively.
+@item -mmul-bug-workaround
+@itemx -mno-mul-bug-workaround
+@opindex mmul-bug-workaround
+@opindex mno-mul-bug-workaround
+Work around a bug in the @code{muls} and @code{mulu} instructions for CPU
+models where it applies. This option is active by default.
+
@item -mpdebug
@opindex mpdebug
Enable CRIS-specific verbose debug-related information in the assembly
@@ -11094,26 +11109,18 @@ function and its call site. (On some platforms,
function, so the call site information may not be available to the
profiling functions otherwise.)
-@example
+@smallexample
void __cyg_profile_func_enter (void *this_fn,
void *call_site);
void __cyg_profile_func_exit (void *this_fn,
void *call_site);
-@end example
+@end smallexample
The first argument is the address of the start of the current function,
which may be looked up exactly in the symbol table.
-This instrumentation is also done for functions expanded inline in other
-functions. The profiling calls will indicate where, conceptually, the
-inline function is entered and exited. This means that addressable
-versions of such functions must be available. If all your uses of a
-function are expanded inline, this may mean an additional expansion of
-code size. If you use @samp{extern inline} in your C code, an
-addressable version of such functions must be provided. (This is
-normally the case anyways, but if you get lucky and the optimizer always
-expands the functions inline, you might have gotten away without
-providing static copies.)
+This currently disables function inlining. This restriction is
+expected to be removed in future releases.
A function may be given the attribute @code{no_instrument_function}, in
which case this instrumentation will not be done. This can be used, for
@@ -11353,6 +11360,13 @@ build the project. To make builds faster, GCC allows users to
`precompile' a header file; then, if builds can use the precompiled
header file they will be much faster.
+@strong{Caution:} There are a few known situations where GCC will
+crash when trying to use a precompiled header. If you have trouble
+with a precompiled header, you should remove the precompiled header
+and compile without it. In addition, please use GCC's on-line
+defect-tracking system to report any problems you encounter with
+precompiled headers. @xref{Bugs}.
+
To create a precompiled header file, simply compile it as you would any
other file, if necessary using the @option{-x} option to make the driver
treat it as a C or C++ header file. You will probably want to use a
@@ -11579,10 +11593,10 @@ appropriate options and the option @option{-aux-info}. Then run
the existing @samp{.X} file because it is newer than the source file.
For example:
-@example
+@smallexample
gcc -Dfoo=bar file1.c -aux-info file1.X
protoize *.c
-@end example
+@end smallexample
@noindent
You need to include the special files along with the rest in the
diff --git a/gcc/doc/libgcc.texi b/gcc/doc/libgcc.texi
index af6f7be3e59..41e214e1612 100644
--- a/gcc/doc/libgcc.texi
+++ b/gcc/doc/libgcc.texi
@@ -1,4 +1,4 @@
-@c Copyright (C) 2003 Free Software Foundation, Inc.
+@c Copyright (C) 2003, 2004 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@c Contributed by Aldy Hernandez <aldy@quesejoda.com>
@@ -40,7 +40,7 @@ and @code{@w{unsigned int}} correspond to @code{SImode}; @code{long} and
* Integer library routines::
* Soft float library routines::
* Exception handling routines::
-* Miscellaneous routines::
+* Miscellaneous routines::
@end menu
@node Integer library routines
@@ -443,7 +443,7 @@ is NaN, and @var{a} is strictly greater than @var{b}.
document me!
-@example
+@smallexample
_Unwind_DeleteException
_Unwind_Find_FDE
_Unwind_ForcedUnwind
@@ -472,7 +472,7 @@ document me!
__register_frame_info_table
__register_frame_info_table_bases
__register_frame_table
-@end example
+@end smallexample
@node Miscellaneous routines
@section Miscellaneous runtime library routines
diff --git a/gcc/doc/makefile.texi b/gcc/doc/makefile.texi
index 1995e5824a3..4e9121455d7 100644
--- a/gcc/doc/makefile.texi
+++ b/gcc/doc/makefile.texi
@@ -1,4 +1,4 @@
-@c Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+@c Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -13,9 +13,17 @@ This is the default target. Depending on what your build/host/target
configuration is, it coordinates all the things that need to be built.
@item doc
-Produce info-formatted documentation. Also, @samp{make dvi} is
-available for DVI-formatted documentation, and @samp{make
-generated-manpages} to generate man pages.
+Produce info-formatted documentation and man pages. Essentially it
+calls @samp{make man} and @samp{make info}.
+
+@item dvi
+Produce DVI-formatted documentation.
+
+@item man
+Generate man pages.
+
+@item info
+Generate info-formatted pages.
@item mostlyclean
Delete the files made while building the compiler.
@@ -31,6 +39,16 @@ Distclean plus any file that can be generated from other files. Note
that additional tools may be required beyond what is normally needed to
build gcc.
+@item srcextra
+Generates files in the source directory that do not exist in CVS but
+should go into a release tarball. One example is @file{gcc/c-parse.c}
+which is generated from the CVS source file @file{gcc/c-parse.in}.
+
+@item srcinfo
+@itemx srcman
+Copies the info-formatted and manpage documentation into the source
+directory usually for the purpose of generating a release tarball.
+
@item install
Installs gcc.
@@ -53,7 +71,7 @@ Note that running the testsuite may require additional tools be
installed, such as TCL or dejagnu.
@item bootstrap
-Builds gcc three times---once with the native compiler, once with the
+Builds GCC three times---once with the native compiler, once with the
native-built compiler it just built, and once with the compiler it built
the second time. In theory, the last two should produce the same
results, which @samp{make compare} can check. Each step of this process
diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi
index f4f799dd86a..f773039e1d2 100644
--- a/gcc/doc/md.texi
+++ b/gcc/doc/md.texi
@@ -1,5 +1,5 @@
@c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1996, 1998, 1999, 2000, 2001,
-@c 2002, 2003 Free Software Foundation, Inc.
+@c 2002, 2003, 2004 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -181,7 +181,7 @@ this pattern. @xref{Insn Attributes}.
Here is an actual example of an instruction pattern, for the 68000/68020.
-@example
+@smallexample
(define_insn "tstsi"
[(set (cc0)
(match_operand:SI 0 "general_operand" "rm"))]
@@ -192,12 +192,12 @@ Here is an actual example of an instruction pattern, for the 68000/68020.
return \"tstl %0\";
return \"cmpl #0,%0\";
@}")
-@end example
+@end smallexample
@noindent
This can also be written using braced strings:
-@example
+@smallexample
(define_insn "tstsi"
[(set (cc0)
(match_operand:SI 0 "general_operand" "rm"))]
@@ -207,7 +207,7 @@ This can also be written using braced strings:
return "tstl %0";
return "cmpl #0,%0";
@})
-@end example
+@end smallexample
This is an instruction that sets the condition codes based on the value of
a general operand. It has no condition, so any insn whose RTL description
@@ -1256,7 +1256,7 @@ instruction is defined:
@dots{})
@end smallexample
@end ifset
-GCC can only handle one commutative pair in an asm; if you use more,
+GCC can only handle one commutative pair in an asm; if you use more,
the compiler may fail.
@cindex @samp{#} in constraint
@@ -3429,7 +3429,7 @@ built. It is intended to handle non-trivial actions needed along
the abnormal return path.
The address of the exception handler to which the function should return
-is passed as operand to this pattern. It will normally need to copied by
+is passed as operand to this pattern. It will normally need to copied by
the pattern to some special register or memory location.
If the pattern needs to determine the location of the target call
frame in order to do so, it may use @code{EH_RETURN_STACKADJ_RTX},
@@ -3516,6 +3516,12 @@ the values of operands 1 and 2.
@end table
+@end ifset
+@c Each of the following nodes are wrapped in separate
+@c "@ifset INTERNALS" to work around memory limits for the default
+@c configuration in older tetex distributions. Known to not work:
+@c tetex-1.0.7, known to work: tetex-2.0.2.
+@ifset INTERNALS
@node Pattern Ordering
@section When the Order of Patterns Matters
@cindex Pattern Ordering
@@ -3539,6 +3545,8 @@ Instead of using this pattern ordering it would be possible to make the
pattern for convert-a-byte smart enough to deal properly with any
constant value.
+@end ifset
+@ifset INTERNALS
@node Dependent Patterns
@section Interdependence of Patterns
@cindex Dependent Patterns
@@ -3548,24 +3556,24 @@ Every machine description must have a named pattern for each of the
conditional branch names @samp{b@var{cond}}. The recognition template
must always have the form
-@example
+@smallexample
(set (pc)
(if_then_else (@var{cond} (cc0) (const_int 0))
(label_ref (match_operand 0 "" ""))
(pc)))
-@end example
+@end smallexample
@noindent
In addition, every machine description must have an anonymous pattern
for each of the possible reverse-conditional branches. Their templates
look like
-@example
+@smallexample
(set (pc)
(if_then_else (@var{cond} (cc0) (const_int 0))
(pc)
(label_ref (match_operand 0 "" ""))))
-@end example
+@end smallexample
@noindent
They are necessary because jump optimization can turn direct-conditional
@@ -3575,7 +3583,7 @@ It is often convenient to use the @code{match_operator} construct to
reduce the number of patterns that must be specified for branches. For
example,
-@example
+@smallexample
(define_insn ""
[(set (pc)
(if_then_else (match_operator 0 "comparison_operator"
@@ -3584,20 +3592,20 @@ example,
(label_ref (match_operand 1 "" ""))))]
"@var{condition}"
"@dots{}")
-@end example
+@end smallexample
In some cases machines support instructions identical except for the
machine mode of one or more operands. For example, there may be
``sign-extend halfword'' and ``sign-extend byte'' instructions whose
patterns are
-@example
+@smallexample
(set (match_operand:SI 0 @dots{})
(extend:SI (match_operand:HI 1 @dots{})))
(set (match_operand:SI 0 @dots{})
(extend:SI (match_operand:QI 1 @dots{})))
-@end example
+@end smallexample
@noindent
Constant integers do not specify a machine mode, so an instruction to
@@ -3619,6 +3627,8 @@ instructions. Instead, they should be generated from the same pattern
that supports register-register add insns by examining the operands and
generating the appropriate machine instruction.
+@end ifset
+@ifset INTERNALS
@node Jump Patterns
@section Defining Jump Instruction Patterns
@cindex jump instruction patterns
@@ -3732,6 +3742,8 @@ discussed above, we have the pattern
The @code{SELECT_CC_MODE} macro on the SPARC returns @code{CC_NOOVmode}
for comparisons whose argument is a @code{plus}.
+@end ifset
+@ifset INTERNALS
@node Looping Patterns
@section Defining Looping Instruction Patterns
@cindex looping instruction patterns
@@ -3837,6 +3849,8 @@ be derived from it), however, in many cases the loop induction variable
may become redundant and removed by the flow pass.
+@end ifset
+@ifset INTERNALS
@node Insn Canonicalizations
@section Canonicalization of Instructions
@cindex canonicalization of instructions
@@ -3871,7 +3885,7 @@ first operand.
@item
In combinations of @code{neg}, @code{mult}, @code{plus}, and
@code{minus}, the @code{neg} operations (if any) will be moved inside
-the operations as far as possible. For instance,
+the operations as far as possible. For instance,
@code{(neg (mult A B))} is canonicalized as @code{(mult (neg A) B)}, but
@code{(plus (mult (neg A) B) C)} is canonicalized as
@code{(minus A (mult B C))}.
@@ -3910,26 +3924,26 @@ A machine that has an instruction that performs a bitwise logical-and of one
operand with the bitwise negation of the other should specify the pattern
for that instruction as
-@example
+@smallexample
(define_insn ""
[(set (match_operand:@var{m} 0 @dots{})
(and:@var{m} (not:@var{m} (match_operand:@var{m} 1 @dots{}))
(match_operand:@var{m} 2 @dots{})))]
"@dots{}"
"@dots{}")
-@end example
+@end smallexample
@noindent
Similarly, a pattern for a ``NAND'' instruction should be written
-@example
+@smallexample
(define_insn ""
[(set (match_operand:@var{m} 0 @dots{})
(ior:@var{m} (not:@var{m} (match_operand:@var{m} 1 @dots{}))
(not:@var{m} (match_operand:@var{m} 2 @dots{}))))]
"@dots{}"
"@dots{}")
-@end example
+@end smallexample
In both cases, it is not necessary to include patterns for the many
logically equivalent RTL expressions.
@@ -3944,9 +3958,9 @@ and @code{(not:@var{m} (xor:@var{m} @var{x} @var{y}))}.
The sum of three items, one of which is a constant, will only appear in
the form
-@example
+@smallexample
(plus:@var{m} (plus:@var{m} @var{x} @var{y}) @var{constant})
-@end example
+@end smallexample
@item
On machines that do not use @code{cc0},
@@ -3962,6 +3976,8 @@ will be written using @code{zero_extract} rather than the equivalent
@end itemize
+@end ifset
+@ifset INTERNALS
@node Expander Definitions
@section Defining RTL Sequences for Code Generation
@cindex expander definitions
@@ -4179,6 +4195,8 @@ at the end, emit an insn to copy the result of the operation into
itself. Such an insn will generate no code, but it can avoid problems
in the compiler.
+@end ifset
+@ifset INTERNALS
@node Insn Splitting
@section Defining How to Split Instructions
@cindex insn splitting
@@ -4412,6 +4430,8 @@ functionality as two separate @code{define_insn} and @code{define_split}
patterns. It exists for compactness, and as a maintenance tool to prevent
having to ensure the two patterns' templates match.
+@end ifset
+@ifset INTERNALS
@node Including Patterns
@section Including Patterns in Machine Descriptions.
@cindex insn includes
@@ -4486,6 +4506,8 @@ one @option{-I} option, the directories are scanned in left-to-right
order; the standard default directory come after.
+@end ifset
+@ifset INTERNALS
@node Peephole Definitions
@section Machine-Specific Peephole Optimizers
@cindex peephole optimizer definitions
@@ -4516,6 +4538,8 @@ targets that do scheduling.
* define_peephole2:: RTL to RTL Peephole Optimizers
@end menu
+@end ifset
+@ifset INTERNALS
@node define_peephole
@subsection RTL to Text Peephole Optimizers
@findex define_peephole
@@ -4707,6 +4731,8 @@ then the way to mention this insn in a peephole is as follows:
@dots{})
@end smallexample
+@end ifset
+@ifset INTERNALS
@node define_peephole2
@subsection RTL to RTL Peephole Optimizers
@findex define_peephole2
@@ -4792,6 +4818,8 @@ If we had not added the @code{(match_dup 4)} in the middle of the input
sequence, it might have been the case that the register we chose at the
beginning of the sequence is killed by the first or second @code{set}.
+@end ifset
+@ifset INTERNALS
@node Insn Attributes
@section Instruction Attributes
@cindex insn attributes
@@ -4815,6 +4843,8 @@ to track the condition codes.
* Processor pipeline description:: Specifying information for insn scheduling.
@end menu
+@end ifset
+@ifset INTERNALS
@node Defining Attributes
@subsection Defining Attributes and their Values
@cindex defining attributes and their values
@@ -4879,6 +4909,8 @@ If the attribute takes numeric values, no @code{enum} type will be
defined and the function to obtain the attribute's value will return
@code{int}.
+@end ifset
+@ifset INTERNALS
@node Expressions
@subsection Attribute Expressions
@cindex attribute expressions
@@ -5088,6 +5120,8 @@ for numeric attributes, as @code{eq_attr} and @code{attr_flag}
produce more efficient code for non-numeric attributes.
@end table
+@end ifset
+@ifset INTERNALS
@node Tagging Insns
@subsection Assigning Attribute Values to Insns
@cindex tagging insns
@@ -5193,6 +5227,8 @@ string. Therefore, the value of the @code{length} attribute specified
in a @code{define_asm_attributes} should be the maximum possible length
of a single machine instruction.
+@end ifset
+@ifset INTERNALS
@node Attr Example
@subsection Example of Attribute Specifications
@cindex attribute specifications example
@@ -5248,6 +5284,8 @@ performed on quantities smaller than a machine word clobber the condition
code since they will set the condition code to a value corresponding to the
full-word result.
+@end ifset
+@ifset INTERNALS
@node Insn Lengths
@subsection Computing the Length of an Insn
@cindex insn lengths, computing
@@ -5332,6 +5370,8 @@ as follows:
(const_int 6)))])
@end smallexample
+@end ifset
+@ifset INTERNALS
@node Constant Attributes
@subsection Constant Attributes
@cindex constant attributes
@@ -5361,6 +5401,8 @@ the value of a constant attribute may use the @code{symbol_ref} form,
but may not use either the @code{match_operand} form or @code{eq_attr}
forms involving insn attributes.
+@end ifset
+@ifset INTERNALS
@node Delay Slots
@subsection Delay Slot Scheduling
@cindex delay slots, defining
@@ -5436,6 +5478,8 @@ branch is true, we might represent this as follows:
@end smallexample
@c the above is *still* too long. --mew 4feb93
+@end ifset
+@ifset INTERNALS
@node Processor pipeline description
@subsection Specifying processor pipeline description
@cindex processor pipeline description
@@ -5482,13 +5526,13 @@ processors.
The task of exploiting more processor parallelism is solved by an
instruction scheduler. For a better solution to this problem, the
instruction scheduler has to have an adequate description of the
-processor parallelism (or @dfn{pipeline description}). Currently GCC
+processor parallelism (or @dfn{pipeline description}). Currently GCC
provides two alternative ways to describe processor parallelism,
both described below. The first method is outlined in the next section;
it was once the only method provided by GCC, and thus is used in a number
of exiting ports. The second, and preferred method, specifies functional
unit reservations for groups of instructions with the aid of @dfn{regular
-expressions}. This is called the @dfn{automaton based description}.
+expressions}. This is called the @dfn{automaton based description}.
The GCC instruction scheduler uses a @dfn{pipeline hazard recognizer} to
figure out the possibility of the instruction issue by the processor
@@ -5521,6 +5565,8 @@ choose the best one.
* Comparison of the two descriptions:: Drawbacks of the old pipeline description
@end menu
+@end ifset
+@ifset INTERNALS
@node Old pipeline description
@subsubsection Specifying Function Units
@cindex old pipeline description
@@ -5643,6 +5689,8 @@ used during their execution and there is no way of representing that
conflict. We welcome any examples of how function unit conflicts work
in such processors and suggestions for their representation.
+@end ifset
+@ifset INTERNALS
@node Automaton pipeline description
@subsubsection Describing instruction pipeline characteristics
@cindex automaton based pipeline description
@@ -5657,7 +5705,7 @@ The following optional construction describes names of automata
generated and used for the pipeline hazards recognition. Sometimes
the generated finite state automaton used by the pipeline hazard
recognizer is large. If we use more than one automaton and bind functional
-units to the automata, the total size of the automata is usually
+units to the automata, the total size of the automata is usually
less than the size of the single automaton. If there is no one such
construction, only one finite state automaton is generated.
@@ -5771,7 +5819,7 @@ expression according to the following syntax:
allof = allof "+" repeat
| repeat
-
+
repeat = element "*" number
| element
@@ -6065,6 +6113,8 @@ construction
@end smallexample
+@end ifset
+@ifset INTERNALS
@node Comparison of the two descriptions
@subsubsection Drawbacks of the old pipeline description
@cindex old pipeline description
@@ -6078,7 +6128,7 @@ construction
The old instruction level parallelism description and the pipeline
hazards recognizer based on it have the following drawbacks in
comparison with the @acronym{DFA}-based ones:
-
+
@itemize @bullet
@item
Each functional unit is believed to be reserved at the instruction
@@ -6118,6 +6168,8 @@ In an automaton based pipeline hazard recognizer, speed is not dependent
on processor complexity.
@end itemize
+@end ifset
+@ifset INTERNALS
@node Conditional Execution
@section Conditional Execution
@cindex conditional execution
@@ -6198,6 +6250,8 @@ generates a new pattern
"(%3) add %2,%1,%0")
@end smallexample
+@end ifset
+@ifset INTERNALS
@node Constant Definitions
@section Constant Definitions
@cindex constant definitions
diff --git a/gcc/doc/objc.texi b/gcc/doc/objc.texi
index a0c40f7296e..481b51c09b8 100644
--- a/gcc/doc/objc.texi
+++ b/gcc/doc/objc.texi
@@ -1,5 +1,5 @@
@c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-@c 1999, 2000, 2001 Free Software Foundation, Inc.
+@c 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -41,7 +41,7 @@ Suppose for example you have a @code{FileStream} class that declares
@code{Stdin}, @code{Stdout} and @code{Stderr} as global variables, like
below:
-@example
+@smallexample
FileStream *Stdin = nil;
FileStream *Stdout = nil;
@@ -59,7 +59,7 @@ FileStream *Stderr = nil;
/* Other methods here */
@@end
-@end example
+@end smallexample
In this example, the initialization of @code{Stdin}, @code{Stdout} and
@code{Stderr} in @code{+initialize} occurs too late. The programmer can
@@ -73,7 +73,7 @@ just before entering @code{main}.
The correct solution of the above problem is to use the @code{+load}
method instead of @code{+initialize}:
-@example
+@smallexample
@@implementation FileStream
@@ -87,7 +87,7 @@ method instead of @code{+initialize}:
/* Other methods here */
@@end
-@end example
+@end smallexample
The @code{+load} is a method that is not overridden by categories. If a
class and a category of it both implement @code{+load}, both methods are
@@ -258,12 +258,12 @@ compiler on an i386 machine:
@item Objective-C type
@tab Compiler encoding
@item
-@example
+@smallexample
int a[10];
-@end example
+@end smallexample
@tab @code{[10i]}
@item
-@example
+@smallexample
struct @{
int i;
float f[3];
@@ -271,7 +271,7 @@ struct @{
int b:2;
char c;
@}
-@end example
+@end smallexample
@tab @code{@{?=i[3f]b128i3b131i2c@}}
@end multitable
@@ -343,7 +343,7 @@ Here is an example of how to use this feature. Suppose you want to
implement a class whose instances hold a weak pointer reference; the
following class does this:
-@example
+@smallexample
@@interface WeakPointer : Object
@{
@@ -375,7 +375,7 @@ following class does this:
@@end
-@end example
+@end smallexample
Weak pointers are supported through a new type character specifier
represented by the @samp{!} character. The
@@ -391,9 +391,9 @@ GNU Objective-C provides constant string objects that are generated
directly by the compiler. You declare a constant string object by
prefixing a C constant string with the character @samp{@@}:
-@example
+@smallexample
id myString = @@"this is a constant string object";
-@end example
+@end smallexample
The constant string objects are by default instances of the
@code{NXConstantString} class which is provided by the GNU Objective-C
@@ -406,7 +406,7 @@ a new command line options @option{-fconstant-string-class=@var{class-name}}.
The provided class should adhere to a strict structure, the same
as @code{NXConstantString}'s structure:
-@example
+@smallexample
@@interface MyConstantStringClass
@{
@@ -416,7 +416,7 @@ as @code{NXConstantString}'s structure:
@}
@@end
-@end example
+@end smallexample
@code{NXConstantString} inherits from @code{Object}; user class
libraries may choose to inherit the customized constant string class
@@ -455,9 +455,9 @@ forgotten, we are documenting it here.
The keyword @code{@@compatibility_alias} allows you to define a class name
as equivalent to another class name. For example:
-@example
+@smallexample
@@compatibility_alias WOApplication GSWApplication;
-@end example
+@end smallexample
tells the compiler that each time it encounters @code{WOApplication} as
a class name, it should replace it with @code{GSWApplication} (that is,
diff --git a/gcc/doc/rtl.texi b/gcc/doc/rtl.texi
index d3f50d0c233..6fcce634f81 100644
--- a/gcc/doc/rtl.texi
+++ b/gcc/doc/rtl.texi
@@ -1,4 +1,4 @@
-@c Copyright (C) 1988, 1989, 1992, 1994, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+@c Copyright (C) 1988, 1989, 1992, 1994, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
@c Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -308,16 +308,16 @@ Operands of expressions are accessed using the macros @code{XEXP},
two arguments: an expression-pointer (RTX) and an operand number
(counting from zero). Thus,
-@example
+@smallexample
XEXP (@var{x}, 2)
-@end example
+@end smallexample
@noindent
accesses operand 2 of expression @var{x}, as an expression.
-@example
+@smallexample
XINT (@var{x}, 2)
-@end example
+@end smallexample
@noindent
accesses the same operand as an integer. @code{XSTR}, used in the same
@@ -1850,9 +1850,9 @@ Represents the signed product of the values represented by @var{x} and
Some machines support a multiplication that generates a product wider
than the operands. Write the pattern for this as
-@example
+@smallexample
(mult:@var{m} (sign_extend:@var{m} @var{x}) (sign_extend:@var{m} @var{y}))
-@end example
+@end smallexample
where @var{m} is wider than the modes of @var{x} and @var{y}, which need
not be the same.
@@ -1874,9 +1874,9 @@ Some machines have division instructions in which the operands and
quotient widths are not all the same; you should represent
such instructions using @code{truncate} and @code{sign_extend} as in,
-@example
+@smallexample
(truncate:@var{m1} (div:@var{m2} @var{x} (sign_extend:@var{m2} @var{y})))
-@end example
+@end smallexample
@findex udiv
@cindex unsigned division
@@ -2232,9 +2232,9 @@ operation requires two operands of the same machine mode.
Therefore, the byte-sized operand is enclosed in a conversion
operation, as in
-@example
+@smallexample
(plus:SI (sign_extend:SI (reg:QI 34)) (reg:SI 80))
-@end example
+@end smallexample
The conversion operation is not a mere placeholder, because there
may be more than one way of converting from a given starting mode
@@ -2378,7 +2378,7 @@ rest of the register receives an undefined value. Likewise, if
the mode of the register, the rest of the register can be changed in
an undefined way.
-If @var{lval} is a @code{strict_low_part} or @code{zero_extract}
+If @var{lval} is a @code{strict_low_part} or @code{zero_extract}
of a @code{subreg}, then the part of the register specified by the
machine mode of the @code{subreg} is given the value @var{x} and
the rest of the register is not changed.
@@ -2462,7 +2462,7 @@ trouble to describe the values that are stored, but it is essential to
inform the compiler that the registers will be altered, lest it
attempt to keep data in them across the string instruction.
-If @var{x} is @code{(mem:BLK (const_int 0))} or
+If @var{x} is @code{(mem:BLK (const_int 0))} or
@code{(mem:BLK (scratch))}, it means that all memory
locations must be presumed clobbered. If @var{x} is a @code{parallel},
it has the same meaning as a @code{parallel} in a @code{set} expression.
@@ -2567,10 +2567,10 @@ side effect expressions---expressions of code @code{set}, @code{call},
side-effects are computed, and second all the actual side-effects are
performed. For example,
-@example
+@smallexample
(parallel [(set (reg:SI 1) (mem:SI (reg:SI 1)))
(set (mem:SI (reg:SI 1)) (reg:SI 1))])
-@end example
+@end smallexample
@noindent
says unambiguously that the values of hard register 1 and the memory
@@ -2583,13 +2583,13 @@ expect the result of one @code{set} to be available for the next one.
For example, people sometimes attempt to represent a jump-if-zero
instruction this way:
-@example
+@smallexample
(parallel [(set (cc0) (reg:SI 34))
(set (pc) (if_then_else
(eq (cc0) (const_int 0))
(label_ref @dots{})
(pc)))])
-@end example
+@end smallexample
@noindent
But this is incorrect, because it says that the jump condition depends
@@ -2716,9 +2716,9 @@ by is the length in bytes of the machine mode of the containing memory
reference of which this expression serves as the address. Here is an
example of its use:
-@example
+@smallexample
(mem:DF (pre_dec:SI (reg:SI 39)))
-@end example
+@end smallexample
@noindent
This says to decrement pseudo register 39 by the length of a @code{DFmode}
@@ -2878,16 +2878,16 @@ chain delimited by these insns, the @code{NEXT_INSN} and
@code{PREV_INSN} pointers must always correspond: if @var{insn} is not
the first insn,
-@example
+@smallexample
NEXT_INSN (PREV_INSN (@var{insn})) == @var{insn}
-@end example
+@end smallexample
@noindent
is always true and if @var{insn} is not the last insn,
-@example
+@smallexample
PREV_INSN (NEXT_INSN (@var{insn})) == @var{insn}
-@end example
+@end smallexample
@noindent
is always true.
@@ -3459,9 +3459,9 @@ RTL expression code, @code{call}.
@cindex @code{call} usage
A @code{call} expression has two operands, as follows:
-@example
+@smallexample
(call (mem:@var{fm} @var{addr}) @var{nbytes})
-@end example
+@end smallexample
@noindent
Here @var{nbytes} is an operand that represents the number of bytes of
@@ -3479,10 +3479,10 @@ For a subroutine that returns a value whose mode is not @code{BLKmode},
the value is returned in a hard register. If this register's number is
@var{r}, then the body of the call insn looks like this:
-@example
+@smallexample
(set (reg:@var{m} @var{r})
(call (mem:@var{fm} @var{addr}) @var{nbytes}))
-@end example
+@end smallexample
@noindent
This RTL expression makes it clear (to the optimizer passes) that the
diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi
index 5026de78745..75028aca655 100644
--- a/gcc/doc/sourcebuild.texi
+++ b/gcc/doc/sourcebuild.texi
@@ -1,4 +1,4 @@
-@c Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+@c Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -192,8 +192,8 @@ files, kept in the top level directory, are used. FIXME: when is the
the top level one) used?
@item The file @file{config.gcc} is used to handle configuration
-specific to the particular target machine. The file
-@file{config.build} is used to handle configuration specific to the
+specific to the particular target machine. The file
+@file{config.build} is used to handle configuration specific to the
particular build machine. The file @file{config.host} is used to handle
configuration specific to the particular host machine. (In general,
these should only be used for features that cannot reasonably be tested in
@@ -276,7 +276,7 @@ headers to work with GCC, some other headers may also be installed in
@file{config} to be installed on some systems.
GCC installs its own version of @code{<float.h>}, from @file{ginclude/float.h}.
-This is done to cope with command-line options that change the
+This is done to cope with command-line options that change the
representation of floating point numbers.
GCC also installs its own version of @code{<limits.h>}; this is generated
@@ -565,23 +565,21 @@ FIXME: exactly what goes in each of these targets?
Build an @command{etags} @file{TAGS} file in the language subdirectory
in the source tree.
@item info
-Build info documentation for the front end, in the source directory.
+Build info documentation for the front end, in the build directory.
This target is only called by @samp{make bootstrap} if a suitable
version of @command{makeinfo} is available, so does not need to check
-for this, and should fail if an error occurs. This hook is a
-double-colon hook.
+for this, and should fail if an error occurs.
@item dvi
Build DVI documentation for the front end, in the build directory.
This should be done using @code{$(TEXI2DVI)}, with appropriate
@option{-I} arguments pointing to directories of included files.
This hook is a double-colon hook.
-@item generated-manpages
+@item man
Build generated man pages for the front end from Texinfo manuals
-(@pxref{Man Page Generation}), in the source directory. This target
+(@pxref{Man Page Generation}), in the build directory. This target
is only called if the necessary tools are available, but should ignore
errors so as not to stop the build if errors occur; man pages are
optional and the tools involved may be installed in a broken way.
-This hook is a double-colon hook.
@item install-normal
FIXME: what is this target for?
@item install-common
@@ -595,6 +593,18 @@ that should be installed. This hook is a double-colon hook.
@item install-man
Install man pages for the front end. This target should ignore
errors.
+@item srcextra
+Copies its dependencies into the source directory. This generally should
+be used for generated files such as @file{gcc/c-parse.c} which are not
+present in CVS, but should be included in any release tarballs. This
+target will be executed during a bootstrap if
+@samp{--enable-generated-files-in-srcdir} was specified as a
+@file{configure} option.
+@item srcinfo
+@itemx srcman
+Copies its dependencies into the source directory. These targets will be
+executed during a bootstrap if @samp{--enable-generated-files-in-srcdir}
+was specified as a @file{configure} option.
@item uninstall
Uninstall files installed by installing the compiler. This is
currently documented not to be supported, so the hook need not do
@@ -758,6 +768,9 @@ following are also necessary:
An entry for the target architecture in @file{readings.html} on the
GCC web site, with any relevant links.
@item
+Details of the properties of the back end and target architecture in
+@file{backends.html} on the GCC web site.
+@item
A news item about the contribution of support for that target
architecture, in @file{index.html} on the GCC web site.
@item
@@ -788,13 +801,21 @@ here; FIXME: document the others.
@node Test Idioms
@subsection Idioms Used in Test Suite Code
-In the @file{gcc.c-torture} test suites, test cases are commonly named
-after the date on which they were added. This allows people to tell
-at a glance whether a test failure is because of a recently found bug
-that has not yet been fixed, or whether it may be a regression. In
-other test suites, more descriptive names are used. In general C test
-cases have a trailing @file{-@var{n}.c}, starting with @file{-1.c}, in
-case other test cases with similar names are added later.
+In general C testcases have a trailing @file{-@var{n}.c}, starting
+with @file{-1.c}, in case other testcases with similar names are added
+later. If the test is a test of some well-defined feature, it should
+have a name referring to that feature such as
+@file{@var{feature}-1.c}. If it does not test a well-defined feature
+but just happens to exercise a bug somewhere in the compiler, and a
+bug report has been filed for this bug in the GCC bug database,
+@file{pr@var{bug-number}-1.c} is the appropriate form of name.
+Otherwise (for miscellaneous bugs not filed in the GCC bug database),
+and previously more generally, test cases are named after the date on
+which they were added. This allows people to tell at a glance whether
+a test failure is because of a recently found bug that has not yet
+been fixed, or whether it may be a regression, but does not give any
+other information about the bug or where discussion of it may be
+found. Some other language testsuites follow similar conventions.
Test cases should use @code{abort ()} to indicate failure and
@code{exit (0)} for success; on some targets these may be redefined to
@@ -901,13 +922,13 @@ GCC contains the following C language test suites, in the
@table @file
@item gcc.dg
-This contains tests of particular features of the C compiler, using the
+This contains tests of particular features of the C compiler, using the
more modern @samp{dg} harness. Correctness tests for various compiler
features should go here if possible.
-Magic comments determine whether the file
-is preprocessed, compiled, linked or run. In these tests, error and warning
-message texts are compared against expected texts or regular expressions
+Magic comments determine whether the file
+is preprocessed, compiled, linked or run. In these tests, error and warning
+message texts are compared against expected texts or regular expressions
given in comments. These tests are run with the options @samp{-ansi -pedantic}
unless other options are given in the test. Except as noted below they
are not run with multiple optimization options.
@@ -936,7 +957,7 @@ FIXME: describe this.
This contains particular code fragments which have historically broken easily.
These tests are run with multiple optimization options, so tests for features
which only break at some optimization levels belong here. This also contains
-tests to check that certain optimizations occur. It might be worthwhile to
+tests to check that certain optimizations occur. It might be worthwhile to
separate the correctness tests cleanly from the code quality tests, but
it hasn't been done yet.
@@ -1109,7 +1130,7 @@ about a specific optimization:
@table @code
@item tool
-tool being tested, e.g., gcc
+tool being tested, e.g., @command{gcc}
@item profile_option
options used to generate profile data
diff --git a/gcc/doc/standards.texi b/gcc/doc/standards.texi
index 098c925f751..af33612dd17 100644
--- a/gcc/doc/standards.texi
+++ b/gcc/doc/standards.texi
@@ -1,4 +1,4 @@
-@c Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
+@c Copyright (C) 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -79,7 +79,7 @@ as @dfn{AMD1}; the amended standard is sometimes known as @dfn{C94} or
A new edition of the ISO C standard was published in 1999 as ISO/IEC
9899:1999, and is commonly known as @dfn{C99}. GCC has incomplete
support for this standard version; see
-@uref{http://gcc.gnu.org/c99status.html} for details. To select this
+@uref{http://gcc.gnu.org/gcc-3.4/c99status.html} for details. To select this
standard, use @option{-std=c99} or @option{-std=iso9899:1999}. (While in
development, drafts of this standard version were referred to as
@dfn{C9X}.)
@@ -145,10 +145,10 @@ GNU C library). @xref{Standard Libraries,,Standard Libraries}.
Most of the compiler support routines used by GCC are present in
@file{libgcc}, but there are a few exceptions. GCC requires the
freestanding environment provide @code{memcpy}, @code{memmove},
-@code{memset} and @code{memcmp}. Some older ports of GCC are
+@code{memset} and @code{memcmp}. Some older ports of GCC are
configured to use the BSD @code{bcopy}, @code{bzero} and @code{bcmp}
functions instead, but this is deprecated for new ports.
-Finally, if @code{__builtin_trap} is used, and the target does
+Finally, if @code{__builtin_trap} is used, and the target does
not implement the @code{trap} pattern, then GCC will emit a call
to @code{abort}.
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
index 7c8471ffad7..4e214c037dd 100644
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -1,5 +1,5 @@
@c Copyright (C) 1988,1989,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,
-@c 2002, 2003 Free Software Foundation, Inc.
+@c 2002, 2003, 2004 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -356,12 +356,12 @@ used.
The @file{config/rs6000/rs6000.h} target file defines:
-@example
+@smallexample
#define EXTRA_SPECS \
@{ "cpp_sysv_default", CPP_SYSV_DEFAULT @},
#define CPP_SYS_DEFAULT ""
-@end example
+@end smallexample
The @file{config/rs6000/sysv.h} target file defines:
@smallexample
@@ -561,7 +561,7 @@ operating system, code the component name as @samp{0}.
For example, here is the definition used for VAX/VMS:
-@example
+@smallexample
#define INCLUDE_DEFAULTS \
@{ \
@{ "GNU_GXX_INCLUDE:", "G++", 1, 1@}, \
@@ -570,7 +570,7 @@ For example, here is the definition used for VAX/VMS:
@{ ".", 0, 0, 0@}, \
@{ 0, 0, 0, 0@} \
@}
-@end example
+@end smallexample
@end defmac
Here is the order of prefixes tried for exec files:
@@ -1253,7 +1253,7 @@ If your aim is to make GCC use the same conventions for laying out
bit-fields as are used by another compiler, here is how to investigate
what the other compiler does. Compile and run this program:
-@example
+@smallexample
struct foo1
@{
char x;
@@ -1276,7 +1276,7 @@ main ()
sizeof (struct foo2));
exit (0);
@}
-@end example
+@end smallexample
If this prints 2 and 5, then the compiler's behavior is what you would
get from @code{PCC_BITFIELD_TYPE_MATTERS}.
@@ -1712,7 +1712,7 @@ int}.
The C++ compiler represents a pointer-to-member-function with a struct
that looks like:
-@example
+@smallexample
struct @{
union @{
void (*fn)();
@@ -1720,7 +1720,7 @@ that looks like:
@};
ptrdiff_t delta;
@};
-@end example
+@end smallexample
@noindent
The C++ compiler must use one bit to indicate whether the function that
@@ -2031,6 +2031,15 @@ definition of this macro is
@end smallexample
@end defmac
+@defmac REGMODE_NATURAL_SIZE (@var{mode})
+Define this macro if the natural size of registers that hold values
+of mode @var{mode} is not the word size. It is a C expression that
+should give the natural size in bytes for the specified mode. It is
+used by the register allocator to try to optimize its results. This
+happens for example on SPARC 64-bit where the natural size of
+floating-point registers is still 32-bit.
+@end defmac
+
@defmac HARD_REGNO_MODE_OK (@var{regno}, @var{mode})
A C expression that is nonzero if it is permissible to store a value
of mode @var{mode} in hard register number @var{regno} (or in several
@@ -2288,9 +2297,9 @@ in many of the tables described below.
@defmac N_REG_CLASSES
The number of distinct register classes, defined as follows:
-@example
+@smallexample
#define N_REG_CLASSES (int) LIM_REG_CLASSES
-@end example
+@end smallexample
@end defmac
@defmac REG_CLASS_NAMES
@@ -2409,9 +2418,9 @@ to use when it is necessary to copy value @var{x} into a register in class
another, smaller class. On many machines, the following definition is
safe:
-@example
+@smallexample
#define PREFERRED_RELOAD_CLASS(X,CLASS) CLASS
-@end example
+@end smallexample
Sometimes returning a more restrictive class makes better code. For
example, on the 68000, when @var{x} is an integer constant that is in range
@@ -2623,11 +2632,11 @@ does not store the low-order 32 bits, as would be the case for a normal
register. Therefore, @file{alpha.h} defines @code{CANNOT_CHANGE_MODE_CLASS}
as below:
-@example
+@smallexample
#define CANNOT_CHANGE_MODE_CLASS(FROM, TO, CLASS) \
(GET_MODE_SIZE (FROM) != GET_MODE_SIZE (TO) \
? reg_classes_intersect_p (FLOAT_REGS, (CLASS)) : 0)
-@end example
+@end smallexample
@end defmac
Three other special macros describe which operands fit which constraint
@@ -3289,6 +3298,26 @@ column number to use instead.
See the PowerPC's SPE target for an example.
@end defmac
+@defmac DWARF_FRAME_REGNUM (@var{regno})
+
+Define this macro if the target's representation for dwarf registers
+used in .eh_frame or .debug_frame is different from that used in other
+debug info sections. Given a GCC hard register number, this macro
+should return the .eh_frame register number. The default is
+@code{DBX_REGISTER_NUMBER (@var{regno})}.
+
+@end defmac
+
+@defmac DWARF2_FRAME_REG_OUT (@var{regno}, @var{for_eh})
+
+Define this macro to map register numbers held in the call frame info
+that GCC has collected using @code{DWARF_FRAME_REGNUM} to those that
+should be output in .debug_frame (@code{@var{for_eh}} is zero) and
+.eh_frame (@code{@var{for_eh}} is nonzero). The default is to
+return @code{@var{regno}}.
+
+@end defmac
+
@node Elimination
@subsection Eliminating Frame Pointer and Arg Pointer
@@ -3347,12 +3376,12 @@ replacing it with either the frame pointer or the argument pointer,
depending on whether or not the frame pointer has been eliminated.
In this case, you might specify:
-@example
+@smallexample
#define ELIMINABLE_REGS \
@{@{ARG_POINTER_REGNUM, STACK_POINTER_REGNUM@}, \
@{ARG_POINTER_REGNUM, FRAME_POINTER_REGNUM@}, \
@{FRAME_POINTER_REGNUM, STACK_POINTER_REGNUM@}@}
-@end example
+@end smallexample
Note that the elimination of the argument pointer with the stack pointer is
specified first since that is the preferred elimination.
@@ -3413,18 +3442,18 @@ stack when an instruction attempts to push @var{npushed} bytes.
On some machines, the definition
-@example
+@smallexample
#define PUSH_ROUNDING(BYTES) (BYTES)
-@end example
+@end smallexample
@noindent
will suffice. But on other machines, instructions that appear
to push one byte actually push two bytes in an attempt to maintain
alignment. Then the definition should be
-@example
+@smallexample
#define PUSH_ROUNDING(BYTES) (((BYTES) + 1) & ~1)
-@end example
+@end smallexample
@end defmac
@findex current_function_outgoing_args_size
@@ -3705,7 +3734,7 @@ arguments are passed on the stack, there is no need to store anything in
should not be empty, so use @code{int}.
@end defmac
-@defmac INIT_CUMULATIVE_ARGS (@var{cum}, @var{fntype}, @var{libname}, @var{fndecl})
+@defmac INIT_CUMULATIVE_ARGS (@var{cum}, @var{fntype}, @var{libname}, @var{fndecl}, @var{n_named_args})
A C statement (sans semicolon) for initializing the variable
@var{cum} for the state at the beginning of the argument list. The
variable has type @code{CUMULATIVE_ARGS}. The value of @var{fntype}
@@ -3714,7 +3743,10 @@ the args, or 0 if the args are to a compiler support library function.
For direct calls that are not libcalls, @var{fndecl} contain the
declaration node of the function. @var{fndecl} is also set when
@code{INIT_CUMULATIVE_ARGS} is used to find arguments for the function
-being compiled.
+being compiled. @var{n_named_args} is set to the number of named
+arguments, including a structure return address if it is passed as a
+parameter, when making a call. When processing incoming arguments,
+@var{n_named_args} is set to -1.
When processing a call to a compiler support library function,
@var{libname} identifies which one. It is a @code{symbol_ref} rtx which
@@ -3807,16 +3839,18 @@ used for this purpose since all function arguments are pushed on the
stack.
@end defmac
-@defmac SPLIT_COMPLEX_ARGS
+@deftypefn {Target Hook} bool TARGET_SPLIT_COMPLEX_ARG (tree @var{type})
+This hook should return true if parameter of type @var{type} are passed
+as two scalar parameters. By default, GCC will attempt to pack complex
+arguments into the target's word size. Some ABIs require complex arguments
+to be split and treated as their individual components. For example, on
+AIX64, complex floats should be passed in a pair of floating point
+registers, even though a complex float would fit in one 64-bit floating
+point register.
-Define this macro to a nonzero value if complex function arguments
-should be split into their corresponding components. By default, GCC
-will attempt to pack complex arguments into the target's word size.
-Some ABIs require complex arguments to be split and treated as their
-individual components. For example, on AIX64, complex floats should
-be passed in a pair of floating point registers, even though a complex
-float would fit in one 64-bit floating point register.
-@end defmac
+The default value of this hook is @code{NULL}, which is treated as always
+false.
+@end deftypefn
@node Scalar Return
@subsection How Scalar Function Values Are Returned
@@ -3853,7 +3887,7 @@ known.
@code{FUNCTION_VALUE} is not used for return vales with aggregate data
types, because these are returned in another way. See
-@code{STRUCT_VALUE_REGNUM} and related macros, below.
+@code{TARGET_STRUCT_VALUE_RTX} and related macros, below.
@end defmac
@defmac FUNCTION_OUTGOING_VALUE (@var{valtype}, @var{func})
@@ -3871,7 +3905,7 @@ If @code{FUNCTION_OUTGOING_VALUE} is not defined,
@code{FUNCTION_OUTGOING_VALUE} is not used for return vales with
aggregate data types, because these are returned in another way. See
-@code{STRUCT_VALUE_REGNUM} and related macros, below.
+@code{TARGET_STRUCT_VALUE_RTX} and related macros, below.
@end defmac
@defmac LIBCALL_VALUE (@var{mode})
@@ -3901,9 +3935,9 @@ second of a pair (for a value of type @code{double}, say) need not be
recognized by this macro. So for most machines, this definition
suffices:
-@example
+@smallexample
#define FUNCTION_VALUE_REGNO_P(N) ((N) == 0)
-@end example
+@end smallexample
If the machine has register windows, so that the caller and the called
function use different registers for the return value, this macro
@@ -4284,9 +4318,9 @@ A function like @code{TARGET_ASM_OUTPUT_MI_THUNK}, except that if
after adding @code{delta}. In particular, if @var{p} is the
adjusted pointer, the following adjustment should be made:
-@example
+@smallexample
p += (*((ptrdiff_t **)p))[vcall_offset/sizeof(ptrdiff_t)]
-@end example
+@end smallexample
@noindent
If this function is defined, it will always be used in place of
@@ -4653,7 +4687,7 @@ Here is an explanation of implicit calls to library routines.
@defmac DECLARE_LIBRARY_RENAMES
This macro, if defined, should expand to a piece of C code that will get
expanded when compiling functions for libgcc.a. It can be used to
-provide alternate names for gcc's internal library functions if there
+provide alternate names for GCC's internal library functions if there
are ABI-mandated names that the compiler should provide.
@end defmac
@@ -4907,9 +4941,9 @@ A C compound statement that attempts to replace @var{x} with a valid
memory address for an operand of mode @var{mode}. @var{win} will be a
C statement label elsewhere in the code; the macro definition may use
-@example
+@smallexample
GO_IF_LEGITIMATE_ADDRESS (@var{mode}, @var{x}, @var{win});
-@end example
+@end smallexample
@noindent
to avoid further processing if the address has become legitimate.
@@ -5157,6 +5191,34 @@ follows:
@end smallexample
@end defmac
+@deftypefn {Target Hook} bool TARGET_FIXED_CONDITION_CODE_REGS (unsigned int *, unsigned int *)
+On targets which do not use @code{(cc0)}, and which use a hard
+register rather than a pseudo-register to hold condition codes, the
+regular CSE passes are often not able to identify cases in which the
+hard register is set to a common value. Use this hook to enable a
+small pass which optimizes such cases. This hook should return true
+to enable this pass, and it should set the integers to which its
+arguments point to the hard register numbers used for condition codes.
+When there is only one such register, as is true on most systems, the
+integer pointed to by the second argument should be set to
+@code{INVALID_REGNUM}.
+
+The default version of this hook returns false.
+@end deftypefn
+
+@deftypefn {Target Hook} enum machine_mode TARGET_CC_MODES_COMPATIBLE (enum machine_mode, enum machine_mode)
+On targets which use multiple condition code modes in class
+@code{MODE_CC}, it is sometimes the case that a comparison can be
+validly done in more than one mode. On such a system, define this
+target hook to take two mode arguments and to return a mode in which
+both comparisons may be validly done. If there is no such mode,
+return @code{VOIDmode}.
+
+The default version of this hook checks whether the modes are the
+same. If they are, it returns that mode. If they are different, it
+returns @code{VOIDmode}.
+@end deftypefn
+
@node Costs
@section Describing Relative Costs of Operations
@cindex costs of instructions
@@ -5666,23 +5728,23 @@ insns with indexes greater than given index.
@deftypefn {Target Hook} bool IS_COSTLY_DEPENDENCE (rtx @var{insn1}, rtx @var{insn2}, rtx @var{dep_link}, int @var{dep_cost}, int @var{distance})
This hook is used to define which dependences are considered costly by
-the target, so costly that it is not advisable to schedule the insns that
+the target, so costly that it is not advisable to schedule the insns that
are involved in the dependence too close to one another. The parameters
-to this hook are as follows: The second parameter @var{insn2} is dependent
-upon the first parameter @var{insn1}. The dependence between @var{insn1}
-and @var{insn2} is represented by the third parameter @var{dep_link}. The
-fourth parameter @var{cost} is the cost of the dependence, and the fifth
-parameter @var{distance} is the distance in cycles between the two insns.
+to this hook are as follows: The second parameter @var{insn2} is dependent
+upon the first parameter @var{insn1}. The dependence between @var{insn1}
+and @var{insn2} is represented by the third parameter @var{dep_link}. The
+fourth parameter @var{cost} is the cost of the dependence, and the fifth
+parameter @var{distance} is the distance in cycles between the two insns.
The hook returns @code{true} if considering the distance between the two
insns the dependence between them is considered costly by the target,
and @code{false} otherwise.
Defining this hook can be useful in multiple-issue out-of-order machines,
-where (a) it's practically hopeless to predict the actual data/resource
+where (a) it's practically hopeless to predict the actual data/resource
delays, however: (b) there's a better chance to predict the actual grouping
-that will be formed, and (c) correctly emulating the grouping can be very
+that will be formed, and (c) correctly emulating the grouping can be very
important. In such targets one may want to allow issuing dependent insns
-closer to one another - i.e, closer than the dependence distance; however,
+closer to one another - i.e, closer than the dependence distance; however,
not in cases of "costly dependences", which this hooks allows to define.
@end deftypefn
@@ -6275,9 +6337,9 @@ the address of this pool entry. The definition of this macro is
responsible for outputting the label definition at the proper place.
Here is how to do this:
-@example
+@smallexample
@code{(*targetm.asm_out.internal_label)} (@var{file}, "LC", @var{labelno});
-@end example
+@end smallexample
When you output a pool entry specially, you should end with a
@code{goto} to the label @var{jumpto}. This will prevent the same pool
@@ -6936,9 +6998,9 @@ support a @dfn{.init} section which is executed at program startup,
parts of @file{crtstuff.c} are compiled into that section. The
program is linked by the @command{gcc} driver like this:
-@example
+@smallexample
ld -o @var{output_file} crti.o crtbegin.o @dots{} -lgcc crtend.o crtn.o
-@end example
+@end smallexample
The prologue of a function (@code{__init}) appears in the @code{.init}
section of @file{crti.o}; the epilogue appears in @file{crtn.o}. Likewise
@@ -7357,10 +7419,10 @@ definitions of these labels are output using
@code{(*targetm.asm_out.internal_label)}, and they must be printed in the same
way here. For example,
-@example
+@smallexample
fprintf (@var{stream}, "\t.word L%d-L%d\n",
@var{value}, @var{rel})
-@end example
+@end smallexample
You must provide this macro on machines where the addresses in a
dispatch table are relative to the table's own address. If defined, GCC
@@ -7379,9 +7441,9 @@ a label. @var{value} is the number of an internal label whose
definition is output using @code{(*targetm.asm_out.internal_label)}.
For example,
-@example
+@smallexample
fprintf (@var{stream}, "\t.word L%d\n", @var{value})
-@end example
+@end smallexample
@end defmac
@defmac ASM_OUTPUT_CASE_LABEL (@var{stream}, @var{prefix}, @var{num}, @var{table})
@@ -8305,7 +8367,7 @@ call @code{merge_attributes} to handle machine-independent merging.
@findex TARGET_DLLIMPORT_DECL_ATTRIBUTES
If the only target-specific handling you require is @samp{dllimport} for
-Windows targets, you should define the macro
+Microsoft Windows targets, you should define the macro
@code{TARGET_DLLIMPORT_DECL_ATTRIBUTES}. This links in a function
called @code{merge_dllimport_decl_attributes} which can then be defined
as the expansion of @code{TARGET_MERGE_DECL_ATTRIBUTES}. This is done
@@ -8338,7 +8400,7 @@ target specific attribute attached to it, it will not be inlined.
@cindex MIPS coprocessor-definition macros
The MIPS specification allows MIPS implementations to have as many as 4
-coprocessors, each with as many as 32 private registers. gcc supports
+coprocessors, each with as many as 32 private registers. GCC supports
accessing these registers and transferring values between the registers
and memory using asm-ized variables. For example:
@@ -8394,7 +8456,7 @@ and @code{TARGET_OPTIONS}. It is given data which came from
is no need for extensive validity checking). It returns @code{NULL} if
it is safe to load a PCH file with this data, or a suitable error message
if not. The error message will be presented to the user, so it should
-be localised.
+be localized.
@end deftypefn
@node Misc
@@ -8465,8 +8527,10 @@ flags can be updated.
@defmac CASE_VECTOR_PC_RELATIVE
Define this macro to be a C expression to indicate when jump-tables
-should contain relative addresses. If jump-tables never contain
-relative addresses, then you need not define this macro.
+should contain relative addresses. You need not define this macro if
+jump-tables never contain relative addresses, or jump-tables should
+contain relative addresses only when @option{-fPIC} or @option{-fPIC}
+is in effect.
@end defmac
@defmac CASE_DROPS_THROUGH
@@ -8498,20 +8562,31 @@ smaller than a word are always performed on the entire register.
Most RISC machines have this property and most CISC machines do not.
@end defmac
-@defmac LOAD_EXTEND_OP (@var{mode})
+@defmac LOAD_EXTEND_OP (@var{mem_mode})
Define this macro to be a C expression indicating when insns that read
-memory in @var{mode}, an integral mode narrower than a word, set the
-bits outside of @var{mode} to be either the sign-extension or the
+memory in @var{mem_mode}, an integral mode narrower than a word, set the
+bits outside of @var{mem_mode} to be either the sign-extension or the
zero-extension of the data read. Return @code{SIGN_EXTEND} for values
-of @var{mode} for which the
+of @var{mem_mode} for which the
insn sign-extends, @code{ZERO_EXTEND} for which it zero-extends, and
@code{NIL} for other modes.
-This macro is not called with @var{mode} non-integral or with a width
+This macro is not called with @var{mem_mode} non-integral or with a width
greater than or equal to @code{BITS_PER_WORD}, so you may return any
value in this case. Do not define this macro if it would always return
@code{NIL}. On machines where this macro is defined, you will normally
define it as the constant @code{SIGN_EXTEND} or @code{ZERO_EXTEND}.
+
+You may return a non-@code{NIL} value even if for some hard registers
+the sign extension is not performed, if for the @code{REGNO_REG_CLASS}
+of these hard registers @code{CANNOT_CHANGE_MODE_CLASS} returns nonzero
+when the @var{from} mode is @var{mem_mode} and the @var{to} mode is any
+integral mode larger than this but not larger than @code{word_mode}.
+
+You must return @code{NIL} if for some hard registers that allow this
+mode, @code{CANNOT_CHANGE_MODE_CLASS} says that they cannot change to
+@code{word_mode}, but that they can change to another integral mode that
+is larger then @var{mem_mode} but still smaller than @code{word_mode}.
@end defmac
@defmac SHORT_IMMEDIATES_SIGN_EXTEND
@@ -9100,7 +9175,7 @@ lists.
Define this macro to a C expression representing a variant of the
method call @var{mdecl}, if Java Native Interface (JNI) methods
must be invoked differently from other methods on your target.
-For example, on 32-bit Windows, JNI methods must be invoked using
+For example, on 32-bit Microsoft Windows, JNI methods must be invoked using
the @code{stdcall} calling convention and this macro is then
defined as this expression:
diff --git a/gcc/doc/trouble.texi b/gcc/doc/trouble.texi
index 02fe03b96f5..8e1e10eec2d 100644
--- a/gcc/doc/trouble.texi
+++ b/gcc/doc/trouble.texi
@@ -1,5 +1,5 @@
@c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-@c 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
+@c 1999, 2000, 2001, 2003, 2004 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -374,11 +374,11 @@ because of problems in DEC's versions of the X11 header files
@option{-I/usr/include/mit} to use the MIT versions of the header files,
or fixing the header files by adding this:
-@example
+@smallexample
#ifdef __STDC__
#define NeedFunctionPrototypes 0
#endif
-@end example
+@end smallexample
@item
On various 386 Unix systems derived from System V, including SCO, ISC,
@@ -393,17 +393,17 @@ is available as a separate package, and also in the file
If you have installed GNU malloc as a separate library package, use this
option when you relink GCC:
-@example
+@smallexample
MALLOC=/usr/local/lib/libgmalloc.a
-@end example
+@end smallexample
Alternatively, if you have compiled @file{gmalloc.c} from Emacs 19, copy
the object file to @file{gmalloc.o} and use this option when you relink
GCC:
-@example
+@smallexample
MALLOC=gmalloc.o
-@end example
+@end smallexample
@end itemize
@node Incompatibilities
@@ -454,9 +454,9 @@ Negating this value yields 2147483648 again.
GCC does not substitute macro arguments when they appear inside of
string constants. For example, the following macro in GCC
-@example
+@smallexample
#define foo(a) "a"
-@end example
+@end smallexample
@noindent
will produce output @code{"a"} regardless of what the argument @var{a} is.
@@ -469,7 +469,7 @@ variables guaranteed to remain valid are those declared
@code{volatile}. This is a consequence of automatic register
allocation. Consider this function:
-@example
+@smallexample
jmp_buf j;
foo ()
@@ -484,7 +484,7 @@ foo ()
/* @r{@code{longjmp (j)} may occur in @code{fun3}.} */
return a + fun3 ();
@}
-@end example
+@end smallexample
Here @code{a} may or may not be restored to its first value when the
@code{longjmp} occurs. If @code{a} is allocated in a register, then
@@ -500,13 +500,13 @@ Programs that use preprocessing directives in the middle of macro
arguments do not work with GCC@. For example, a program like this
will not work:
-@example
+@smallexample
@group
foobar (
#define luser
hack)
@end group
-@end example
+@end smallexample
ISO C does not permit such a construct.
@@ -530,10 +530,10 @@ rest of the file even if it happens within a block.
In traditional C, you can combine @code{long}, etc., with a typedef name,
as shown here:
-@example
+@smallexample
typedef int foo;
typedef long foo bar;
-@end example
+@end smallexample
In ISO C, this is not allowed: @code{long} and other type modifiers
require an explicit @code{int}.
@@ -546,10 +546,10 @@ PCC allows typedef names to be used as function parameters.
Traditional C allows the following erroneous pair of declarations to
appear together in a given scope:
-@example
+@smallexample
typedef int foo;
typedef foo foo;
-@end example
+@end smallexample
@item
GCC treats all characters of identifiers as significant. According to
@@ -574,11 +574,11 @@ comments enclosed in conditionals that are guaranteed to fail; if these
comments contain apostrophes, GCC will probably report an error. For
example, this code would produce an error:
-@example
+@smallexample
#if 0
You can't expect this to work.
#endif
-@end example
+@end smallexample
The best solution to such a problem is to put the text into an actual
C comment delimited by @samp{/*@dots{}*/}.
@@ -615,8 +615,8 @@ The method used by GCC is as follows: a structure or union which is
1, 2, 4 or 8 bytes long is returned like a scalar. A structure or union
with any other size is stored into an address supplied by the caller
(usually in a special, fixed register, but on some machines it is passed
-on the stack). The machine-description macros @code{STRUCT_VALUE} and
-@code{STRUCT_INCOMING_VALUE} tell GCC where to pass this address.
+on the stack). The target hook @code{TARGET_STRUCT_VALUE_RTX}
+tells GCC where to pass this address.
By contrast, PCC on most target machines returns structures and unions
of any size by copying the data into an area of static storage, and then
@@ -758,14 +758,14 @@ executable and your source code, when you use optimization.
Users often think it is a bug when GCC reports an error for code
like this:
-@example
+@smallexample
int foo (struct mumble *);
struct mumble @{ @dots{} @};
int foo (struct mumble *x)
@{ @dots{} @}
-@end example
+@end smallexample
This code really is erroneous, because the scope of @code{struct
mumble} in the prototype is limited to the argument list containing it.
@@ -866,14 +866,14 @@ give rise to questions of this sort.
When a class has static data members, it is not enough to @emph{declare}
the static member; you must also @emph{define} it. For example:
-@example
+@smallexample
class Foo
@{
@dots{}
void method();
static int bar;
@};
-@end example
+@end smallexample
This declaration only establishes that the class @code{Foo} has an
@code{int} named @code{Foo::bar}, and a member function named
@@ -882,9 +882,9 @@ This declaration only establishes that the class @code{Foo} has an
standard, you must supply an initializer in one (and only one) source
file, such as:
-@example
+@smallexample
int Foo::bar = 0;
-@end example
+@end smallexample
Other C++ compilers may not correctly implement the standard behavior.
As a result, when you switch to @command{g++} from one of these compilers,
@@ -908,7 +908,7 @@ template parameters. This shorter term will also be used in the rest of
this section.} Only names that are dependent are looked up at the point
of instantiation. For example, consider
-@example
+@smallexample
void foo(double);
struct A @{
@@ -923,7 +923,7 @@ of instantiation. For example, consider
static const int N;
@};
-@end example
+@end smallexample
Here, the names @code{foo} and @code{N} appear in a context that does
not depend on the type of @code{T}. The compiler will thus require that
@@ -947,7 +947,7 @@ since version 3.4.
Two-stage name lookup sometimes leads to situations with behavior
different from non-template codes. The most common is probably this:
-@example
+@smallexample
template <typename T> struct Base @{
int i;
@};
@@ -955,7 +955,7 @@ different from non-template codes. The most common is probably this:
template <typename T> struct Derived : public Base<T> @{
int get_i() @{ return i; @}
@};
-@end example
+@end smallexample
In @code{get_i()}, @code{i} is not used in a dependent context, so the
compiler will look for a name declared at the enclosing namespace scope
@@ -974,9 +974,9 @@ type @code{Derived<T>*}, so is obviously dependent), or using
into scope by a @code{using}-declaration.
Another, similar example involves calling member functions of a base
-class:
+class:
-@example
+@smallexample
template <typename T> struct Base @{
int f();
@};
@@ -984,7 +984,7 @@ class:
template <typename T> struct Derived : Base<T> @{
int g() @{ return f(); @};
@};
-@end example
+@end smallexample
Again, the call to @code{f()} is not dependent on template arguments
(there are no arguments that depend on the type @code{T}, and it is also
@@ -993,13 +993,13 @@ Thus a global declaration of such a function must be available, since
the one in the base class is not visible until instantiation time. The
compiler will consequently produce the following error message:
-@example
+@smallexample
x.cc: In member function `int Derived<T>::g()':
x.cc:6: error: there are no arguments to `f' that depend on a template
parameter, so a declaration of `f' must be available
x.cc:6: error: (if you use `-fpermissive', G++ will accept your code, but
allowing the use of an undeclared name is deprecated)
-@end example
+@end smallexample
To make the code valid either use @code{this->f()}, or
@code{Base<T>::f()}. Using the @code{-fpermissive} flag will also let
@@ -1035,7 +1035,7 @@ For example, a program may use a function @code{strfunc} that returns
@code{string} objects, and another function @code{charfunc} that
operates on pointers to @code{char}:
-@example
+@smallexample
string strfunc ();
void charfunc (const char *);
@@ -1048,7 +1048,7 @@ f ()
@dots{}
charfunc (p);
@}
-@end example
+@end smallexample
@noindent
In this situation, it may seem reasonable to save a pointer to the C
@@ -1067,10 +1067,10 @@ The safe way to write such code is to give the temporary a name, which
forces it to remain until the end of the scope of the name. For
example:
-@example
+@smallexample
string& tmp = strfunc ();
charfunc (tmp.c_str ());
-@end example
+@end smallexample
@node Copy Assignment
@subsection Implicit Copy-Assignment for Virtual Bases
@@ -1080,7 +1080,7 @@ belongs to each full object. Also, the constructors and destructors are
invoked only once, and called from the most-derived class. However, such
objects behave unspecified when being assigned. For example:
-@example
+@smallexample
struct Base@{
char *name;
Base(char *n) : name(strdup(n))@{@}
@@ -1108,7 +1108,7 @@ void func(Derived &d1, Derived &d2)
@{
d1 = d2;
@}
-@end example
+@end smallexample
The C++ standard specifies that @samp{Base::Base} is only called once
when constructing or copy-constructing a Derived object. It is
@@ -1116,7 +1116,7 @@ unspecified whether @samp{Base::operator=} is called more than once when
the implicit copy-assignment for Derived objects is invoked (as it is
inside @samp{func} in the example).
-g++ implements the ``intuitive'' algorithm for copy-assignment: assign all
+G++ implements the ``intuitive'' algorithm for copy-assignment: assign all
direct bases, then assign all members. In that algorithm, the virtual
base subobject can be encountered more than once. In the example, copying
proceeds in the following order: @samp{val}, @samp{name} (via
@@ -1404,12 +1404,12 @@ It is never safe to depend on the order of evaluation of side effects.
For example, a function call like this may very well behave differently
from one compiler to another:
-@example
+@smallexample
void func (int, int);
int i = 2;
func (i++, i++);
-@end example
+@end smallexample
There is no guarantee (in either the C or the C++ standard language
definitions) that the increments will be evaluated in any particular
diff --git a/gcc/doloop.c b/gcc/doloop.c
index 3ae628105c8..a82fb16a35c 100644
--- a/gcc/doloop.c
+++ b/gcc/doloop.c
@@ -1,5 +1,5 @@
/* Perform doloop optimizations
- Copyright (C) 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Contributed by Michael P. Hayes (m.hayes@elec.canterbury.ac.nz)
@@ -60,7 +60,6 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#ifdef HAVE_doloop_end
-static rtx doloop_condition_get (rtx);
static unsigned HOST_WIDE_INT doloop_iterations_max (const struct loop_info *,
enum machine_mode, int);
static int doloop_valid_p (const struct loop *, rtx);
@@ -71,7 +70,7 @@ static int doloop_modify_runtime (const struct loop *, rtx, rtx, rtx,
/* Return the loop termination condition for PATTERN or zero
if it is not a decrement and branch jump insn. */
-static rtx
+rtx
doloop_condition_get (rtx pattern)
{
rtx cmp;
@@ -475,7 +474,7 @@ doloop_modify (const struct loop *loop, rtx iterations, rtx iterations_max,
count = GEN_INT (INTVAL (count) - 1);
else
count = expand_simple_binop (GET_MODE (counter_reg), MINUS,
- count, GEN_INT (1),
+ count, const1_rtx,
0, 0, OPTAB_LIB_WIDEN);
}
diff --git a/gcc/dominance.c b/gcc/dominance.c
index 9d691a3d07c..d608391839d 100644
--- a/gcc/dominance.c
+++ b/gcc/dominance.c
@@ -1,5 +1,5 @@
/* Calculate (post)dominators in slightly super-linear time.
- Copyright (C) 2000, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Matz (matz@ifh.de).
This file is part of GCC.
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 77d5fd2bfb8..62412e03683 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -1790,11 +1790,19 @@ dw_cfi_oprnd2_desc (enum dwarf_call_frame_info cfi)
#if defined (DWARF2_DEBUGGING_INFO) || defined (DWARF2_UNWIND_INFO)
+/* Map register numbers held in the call frame info that gcc has
+ collected using DWARF_FRAME_REGNUM to those that should be output in
+ .debug_frame and .eh_frame. */
+#ifndef DWARF2_FRAME_REG_OUT
+#define DWARF2_FRAME_REG_OUT(REGNO, FOR_EH) (REGNO)
+#endif
+
/* Output a Call Frame Information opcode and its operand(s). */
static void
output_cfi (dw_cfi_ref cfi, dw_fde_ref fde, int for_eh)
{
+ unsigned long r;
if (cfi->dw_cfi_opc == DW_CFA_advance_loc)
dw2_asm_output_data (1, (cfi->dw_cfi_opc
| (cfi->dw_cfi_oprnd1.dw_cfi_offset & 0x3f)),
@@ -1802,17 +1810,17 @@ output_cfi (dw_cfi_ref cfi, dw_fde_ref fde, int for_eh)
cfi->dw_cfi_oprnd1.dw_cfi_offset);
else if (cfi->dw_cfi_opc == DW_CFA_offset)
{
- dw2_asm_output_data (1, (cfi->dw_cfi_opc
- | (cfi->dw_cfi_oprnd1.dw_cfi_reg_num & 0x3f)),
- "DW_CFA_offset, column 0x%lx",
- cfi->dw_cfi_oprnd1.dw_cfi_reg_num);
+ r = DWARF2_FRAME_REG_OUT (cfi->dw_cfi_oprnd1.dw_cfi_reg_num, for_eh);
+ dw2_asm_output_data (1, (cfi->dw_cfi_opc | (r & 0x3f)),
+ "DW_CFA_offset, column 0x%lx", r);
dw2_asm_output_data_uleb128 (cfi->dw_cfi_oprnd2.dw_cfi_offset, NULL);
}
else if (cfi->dw_cfi_opc == DW_CFA_restore)
- dw2_asm_output_data (1, (cfi->dw_cfi_opc
- | (cfi->dw_cfi_oprnd1.dw_cfi_reg_num & 0x3f)),
- "DW_CFA_restore, column 0x%lx",
- cfi->dw_cfi_oprnd1.dw_cfi_reg_num);
+ {
+ r = DWARF2_FRAME_REG_OUT (cfi->dw_cfi_oprnd1.dw_cfi_reg_num, for_eh);
+ dw2_asm_output_data (1, (cfi->dw_cfi_opc | (r & 0x3f)),
+ "DW_CFA_restore, column 0x%lx", r);
+ }
else
{
dw2_asm_output_data (1, cfi->dw_cfi_opc,
@@ -1857,15 +1865,15 @@ output_cfi (dw_cfi_ref cfi, dw_fde_ref fde, int for_eh)
case DW_CFA_offset_extended:
case DW_CFA_def_cfa:
- dw2_asm_output_data_uleb128 (cfi->dw_cfi_oprnd1.dw_cfi_reg_num,
- NULL);
+ r = DWARF2_FRAME_REG_OUT (cfi->dw_cfi_oprnd1.dw_cfi_reg_num, for_eh);
+ dw2_asm_output_data_uleb128 (r, NULL);
dw2_asm_output_data_uleb128 (cfi->dw_cfi_oprnd2.dw_cfi_offset, NULL);
break;
case DW_CFA_offset_extended_sf:
case DW_CFA_def_cfa_sf:
- dw2_asm_output_data_uleb128 (cfi->dw_cfi_oprnd1.dw_cfi_reg_num,
- NULL);
+ r = DWARF2_FRAME_REG_OUT (cfi->dw_cfi_oprnd1.dw_cfi_reg_num, for_eh);
+ dw2_asm_output_data_uleb128 (r, NULL);
dw2_asm_output_data_sleb128 (cfi->dw_cfi_oprnd2.dw_cfi_offset, NULL);
break;
@@ -1873,15 +1881,15 @@ output_cfi (dw_cfi_ref cfi, dw_fde_ref fde, int for_eh)
case DW_CFA_undefined:
case DW_CFA_same_value:
case DW_CFA_def_cfa_register:
- dw2_asm_output_data_uleb128 (cfi->dw_cfi_oprnd1.dw_cfi_reg_num,
- NULL);
+ r = DWARF2_FRAME_REG_OUT (cfi->dw_cfi_oprnd1.dw_cfi_reg_num, for_eh);
+ dw2_asm_output_data_uleb128 (r, NULL);
break;
case DW_CFA_register:
- dw2_asm_output_data_uleb128 (cfi->dw_cfi_oprnd1.dw_cfi_reg_num,
- NULL);
- dw2_asm_output_data_uleb128 (cfi->dw_cfi_oprnd2.dw_cfi_reg_num,
- NULL);
+ r = DWARF2_FRAME_REG_OUT (cfi->dw_cfi_oprnd1.dw_cfi_reg_num, for_eh);
+ dw2_asm_output_data_uleb128 (r, NULL);
+ r = DWARF2_FRAME_REG_OUT (cfi->dw_cfi_oprnd2.dw_cfi_reg_num, for_eh);
+ dw2_asm_output_data_uleb128 (r, NULL);
break;
case DW_CFA_def_cfa_offset:
@@ -1911,7 +1919,7 @@ output_cfi (dw_cfi_ref cfi, dw_fde_ref fde, int for_eh)
}
}
-/* Output the call frame information used to used to record information
+/* Output the call frame information used to record information
that relates to calculating the frame pointer, and records the
location of saved registers. */
@@ -2335,7 +2343,7 @@ enum dw_val_class
dw_val_class_const,
dw_val_class_unsigned_const,
dw_val_class_long_long,
- dw_val_class_float,
+ dw_val_class_vec,
dw_val_class_flag,
dw_val_class_die_ref,
dw_val_class_fde_ref,
@@ -2354,14 +2362,15 @@ typedef struct dw_long_long_struct GTY(())
}
dw_long_long_const;
-/* Describe a floating point constant value. */
+/* Describe a floating point constant value, or a vector constant value. */
-typedef struct dw_fp_struct GTY(())
+typedef struct dw_vec_struct GTY(())
{
- long * GTY((length ("%h.length"))) array;
+ unsigned char * GTY((length ("%h.length"))) array;
unsigned length;
+ unsigned elt_size;
}
-dw_float_const;
+dw_vec_const;
/* The dw_val_node describes an attribute's value, as it is
represented internally. */
@@ -2378,7 +2387,7 @@ typedef struct dw_val_struct GTY(())
HOST_WIDE_INT GTY ((default (""))) val_int;
unsigned HOST_WIDE_INT GTY ((tag ("dw_val_class_unsigned_const"))) val_unsigned;
dw_long_long_const GTY ((tag ("dw_val_class_long_long"))) val_long_long;
- dw_float_const GTY ((tag ("dw_val_class_float"))) val_float;
+ dw_vec_const GTY ((tag ("dw_val_class_vec"))) val_vec;
struct dw_val_die_union
{
dw_die_ref die;
@@ -3600,7 +3609,8 @@ static void add_AT_unsigned (dw_die_ref, enum dwarf_attribute, unsigned HOST_WID
static inline unsigned HOST_WIDE_INT AT_unsigned (dw_attr_ref);
static void add_AT_long_long (dw_die_ref, enum dwarf_attribute, unsigned long,
unsigned long);
-static void add_AT_float (dw_die_ref, enum dwarf_attribute, unsigned, long *);
+static inline void add_AT_vec (dw_die_ref, enum dwarf_attribute, unsigned int,
+ unsigned int, unsigned char *);
static hashval_t debug_str_do_hash (const void *);
static int debug_str_eq (const void *, const void *);
static void add_AT_string (dw_die_ref, enum dwarf_attribute, const char *);
@@ -3703,7 +3713,7 @@ static void output_file_names (void);
static dw_die_ref base_type_die (tree);
static tree root_type (tree);
static int is_base_type (tree);
-static bool is_ada_subrange_type (tree);
+static bool is_subrange_type (tree);
static dw_die_ref subrange_type_die (tree, dw_die_ref);
static dw_die_ref modified_type_die (tree, int, int, dw_die_ref);
static int type_is_enum (tree);
@@ -3728,6 +3738,9 @@ static void add_AT_location_description (dw_die_ref, enum dwarf_attribute,
dw_loc_descr_ref);
static void add_data_member_location_attribute (dw_die_ref, tree);
static void add_const_value_attribute (dw_die_ref, rtx);
+static void insert_int (HOST_WIDE_INT, unsigned, unsigned char *);
+static HOST_WIDE_INT extract_int (const unsigned char *, unsigned);
+static void insert_float (rtx, unsigned char *);
static rtx rtl_for_decl_location (tree);
static void add_location_or_const_value_attribute (dw_die_ref, tree);
static void tree_add_const_value_attribute (dw_die_ref, tree);
@@ -4559,16 +4572,17 @@ add_AT_long_long (dw_die_ref die, enum dwarf_attribute attr_kind,
/* Add a floating point attribute value to a DIE and return it. */
static inline void
-add_AT_float (dw_die_ref die, enum dwarf_attribute attr_kind,
- unsigned int length, long int *array)
+add_AT_vec (dw_die_ref die, enum dwarf_attribute attr_kind,
+ unsigned int length, unsigned int elt_size, unsigned char *array)
{
dw_attr_ref attr = ggc_alloc (sizeof (dw_attr_node));
attr->dw_attr_next = NULL;
attr->dw_attr = attr_kind;
- attr->dw_attr_val.val_class = dw_val_class_float;
- attr->dw_attr_val.v.val_float.length = length;
- attr->dw_attr_val.v.val_float.array = array;
+ attr->dw_attr_val.val_class = dw_val_class_vec;
+ attr->dw_attr_val.v.val_vec.length = length;
+ attr->dw_attr_val.v.val_vec.elt_size = elt_size;
+ attr->dw_attr_val.v.val_vec.array = array;
add_dwarf_attr (die, attr);
}
@@ -5271,8 +5285,8 @@ print_die (dw_die_ref die, FILE *outfile)
a->dw_attr_val.v.val_long_long.hi,
a->dw_attr_val.v.val_long_long.low);
break;
- case dw_val_class_float:
- fprintf (outfile, "floating-point constant");
+ case dw_val_class_vec:
+ fprintf (outfile, "floating-point or vector constant");
break;
case dw_val_class_flag:
fprintf (outfile, "%u", AT_flag (a));
@@ -5472,8 +5486,8 @@ attr_checksum (dw_attr_ref at, struct md5_ctx *ctx, int *mark)
case dw_val_class_long_long:
CHECKSUM (at->dw_attr_val.v.val_long_long);
break;
- case dw_val_class_float:
- CHECKSUM (at->dw_attr_val.v.val_float);
+ case dw_val_class_vec:
+ CHECKSUM (at->dw_attr_val.v.val_vec);
break;
case dw_val_class_flag:
CHECKSUM (at->dw_attr_val.v.val_flag);
@@ -5561,7 +5575,6 @@ same_dw_val_p (dw_val_node *v1, dw_val_node *v2, int *mark)
{
dw_loc_descr_ref loc1, loc2;
rtx r1, r2;
- unsigned i;
if (v1->val_class != v2->val_class)
return 0;
@@ -5575,12 +5588,13 @@ same_dw_val_p (dw_val_node *v1, dw_val_node *v2, int *mark)
case dw_val_class_long_long:
return v1->v.val_long_long.hi == v2->v.val_long_long.hi
&& v1->v.val_long_long.low == v2->v.val_long_long.low;
- case dw_val_class_float:
- if (v1->v.val_float.length != v2->v.val_float.length)
+ case dw_val_class_vec:
+ if (v1->v.val_vec.length != v2->v.val_vec.length
+ || v1->v.val_vec.elt_size != v2->v.val_vec.elt_size)
+ return 0;
+ if (memcmp (v1->v.val_vec.array, v2->v.val_vec.array,
+ v1->v.val_vec.length * v1->v.val_vec.elt_size))
return 0;
- for (i = 0; i < v1->v.val_float.length; i++)
- if (v1->v.val_float.array[i] != v2->v.val_float.array[i])
- return 0;
return 1;
case dw_val_class_flag:
return v1->v.val_flag == v2->v.val_flag;
@@ -6174,8 +6188,9 @@ size_of_die (dw_die_ref die)
case dw_val_class_long_long:
size += 1 + 2*HOST_BITS_PER_LONG/HOST_BITS_PER_CHAR; /* block */
break;
- case dw_val_class_float:
- size += 1 + a->dw_attr_val.v.val_float.length * 4; /* block */
+ case dw_val_class_vec:
+ size += 1 + (a->dw_attr_val.v.val_vec.length
+ * a->dw_attr_val.v.val_vec.elt_size); /* block */
break;
case dw_val_class_flag:
size += 1;
@@ -6369,7 +6384,7 @@ value_format (dw_attr_ref a)
}
case dw_val_class_long_long:
return DW_FORM_block1;
- case dw_val_class_float:
+ case dw_val_class_vec:
return DW_FORM_block1;
case dw_val_class_flag:
return DW_FORM_flag;
@@ -6638,16 +6653,24 @@ output_die (dw_die_ref die)
}
break;
- case dw_val_class_float:
+ case dw_val_class_vec:
{
+ unsigned int elt_size = a->dw_attr_val.v.val_vec.elt_size;
+ unsigned int len = a->dw_attr_val.v.val_vec.length;
unsigned int i;
+ unsigned char *p;
- dw2_asm_output_data (1, a->dw_attr_val.v.val_float.length * 4,
- "%s", name);
-
- for (i = 0; i < a->dw_attr_val.v.val_float.length; i++)
- dw2_asm_output_data (4, a->dw_attr_val.v.val_float.array[i],
- "fp constant word %u", i);
+ dw2_asm_output_data (1, len * elt_size, "%s", name);
+ if (elt_size > sizeof (HOST_WIDE_INT))
+ {
+ elt_size /= 2;
+ len *= 2;
+ }
+ for (i = 0, p = a->dw_attr_val.v.val_vec.array;
+ i < len;
+ i++, p += elt_size)
+ dw2_asm_output_data (elt_size, extract_int (p, elt_size),
+ "fp or vector constant word %u", i);
break;
}
@@ -7812,24 +7835,14 @@ simple_type_size_in_bits (tree type)
emitted as a subrange type. */
static inline bool
-is_ada_subrange_type (tree type)
-{
- /* We should use a subrange type in the following situations:
- - For Ada modular types: These types are stored as integer subtypes
- of an unsigned integer type;
- - For subtypes of an Ada enumeration type: These types are stored
- as integer subtypes of enumeral types.
-
- This subrange type is mostly for the benefit of debugger users.
- A nameless type would therefore not be very useful, so no need
- to generate a subrange type in these cases. */
+is_subrange_type (tree type)
+{
tree subtype = TREE_TYPE (type);
- if (is_ada ()
- && TREE_CODE (type) == INTEGER_TYPE
+ if (TREE_CODE (type) == INTEGER_TYPE
&& subtype != NULL_TREE)
{
- if (TREE_CODE (subtype) == INTEGER_TYPE && TREE_UNSIGNED (subtype))
+ if (TREE_CODE (subtype) == INTEGER_TYPE)
return true;
if (TREE_CODE (subtype) == ENUMERAL_TYPE)
return true;
@@ -7846,6 +7859,7 @@ subrange_type_die (tree type, dw_die_ref context_die)
dw_die_ref subtype_die;
dw_die_ref subrange_die;
tree name = TYPE_NAME (type);
+ const HOST_WIDE_INT size_in_bytes = int_size_in_bytes (type);
if (context_die == NULL)
context_die = comp_unit_die;
@@ -7864,6 +7878,13 @@ subrange_type_die (tree type, dw_die_ref context_die)
add_name_attribute (subrange_die, IDENTIFIER_POINTER (name));
}
+ if (int_size_in_bytes (TREE_TYPE (type)) != size_in_bytes)
+ {
+ /* The size of the subrange type and its base type do not match,
+ so we need to generate a size attribute for the subrange type. */
+ add_AT_unsigned (subrange_die, DW_AT_byte_size, size_in_bytes);
+ }
+
if (TYPE_MIN_VALUE (type) != NULL)
add_bound_info (subrange_die, DW_AT_lower_bound,
TYPE_MIN_VALUE (type));
@@ -7966,7 +7987,7 @@ modified_type_die (tree type, int is_const_type, int is_volatile_type,
#endif
item_type = TREE_TYPE (type);
}
- else if (is_ada_subrange_type (type))
+ else if (is_subrange_type (type))
mod_type_die = subrange_type_die (type, context_die);
else if (is_base_type (type))
mod_type_die = base_type_die (type);
@@ -8485,6 +8506,13 @@ loc_descriptor_from_tree (tree loc, int addressp)
case CALL_EXPR:
return 0;
+ case PREINCREMENT_EXPR:
+ case PREDECREMENT_EXPR:
+ case POSTINCREMENT_EXPR:
+ case POSTDECREMENT_EXPR:
+ /* There are no opcodes for these operations. */
+ return 0;
+
case ADDR_EXPR:
/* We can support this only if we can look through conversions and
find an INDIRECT_EXPR. */
@@ -8820,6 +8848,9 @@ loc_descriptor_from_tree (tree loc, int addressp)
}
break;
+ case EXPR_WITH_FILE_LOCATION:
+ return loc_descriptor_from_tree (EXPR_WFL_NODE (loc), addressp);
+
default:
/* Leave front-end specific codes as simply unknown. This comes
up, for instance, with the C STMT_EXPR. */
@@ -9129,6 +9160,56 @@ add_data_member_location_attribute (dw_die_ref die, tree decl)
add_AT_loc (die, DW_AT_data_member_location, loc_descr);
}
+/* Writes integer values to dw_vec_const array. */
+
+static void
+insert_int (HOST_WIDE_INT val, unsigned int size, unsigned char *dest)
+{
+ while (size != 0)
+ {
+ *dest++ = val & 0xff;
+ val >>= 8;
+ --size;
+ }
+}
+
+/* Reads integers from dw_vec_const array. Inverse of insert_int. */
+
+static HOST_WIDE_INT
+extract_int (const unsigned char *src, unsigned int size)
+{
+ HOST_WIDE_INT val = 0;
+
+ src += size;
+ while (size != 0)
+ {
+ val <<= 8;
+ val |= *--src & 0xff;
+ --size;
+ }
+ return val;
+}
+
+/* Writes floating point values to dw_vec_const array. */
+
+static void
+insert_float (rtx rtl, unsigned char *array)
+{
+ REAL_VALUE_TYPE rv;
+ long val[4];
+ int i;
+
+ REAL_VALUE_FROM_CONST_DOUBLE (rv, rtl);
+ real_to_target (val, &rv, GET_MODE (rtl));
+
+ /* real_to_target puts 32-bit pieces in each long. Pack them. */
+ for (i = 0; i < GET_MODE_SIZE (GET_MODE (rtl)) / 4; i++)
+ {
+ insert_int (val[i], 4, array);
+ array += 4;
+ }
+}
+
/* Attach a DW_AT_const_value attribute for a variable or a parameter which
does not have a "location" either in memory or in a register. These
things can arise in GNU C when a constant is passed as an actual parameter
@@ -9161,14 +9242,11 @@ add_const_value_attribute (dw_die_ref die, rtx rtl)
if (GET_MODE_CLASS (mode) == MODE_FLOAT)
{
- unsigned length = GET_MODE_SIZE (mode) / 4;
- long *array = ggc_alloc (sizeof (long) * length);
- REAL_VALUE_TYPE rv;
+ unsigned int length = GET_MODE_SIZE (mode);
+ unsigned char *array = ggc_alloc (length);
- REAL_VALUE_FROM_CONST_DOUBLE (rv, rtl);
- real_to_target (array, &rv, mode);
-
- add_AT_float (die, DW_AT_const_value, length, array);
+ insert_float (rtl, array);
+ add_AT_vec (die, DW_AT_const_value, length / 4, 4, array);
}
else
{
@@ -9182,6 +9260,68 @@ add_const_value_attribute (dw_die_ref die, rtx rtl)
}
break;
+ case CONST_VECTOR:
+ {
+ enum machine_mode mode = GET_MODE (rtl);
+ unsigned int elt_size = GET_MODE_UNIT_SIZE (mode);
+ unsigned int length = CONST_VECTOR_NUNITS (rtl);
+ unsigned char *array = ggc_alloc (length * elt_size);
+ unsigned int i;
+ unsigned char *p;
+
+ if (GET_MODE_CLASS (mode) == MODE_VECTOR_INT)
+ {
+ for (i = 0, p = array; i < length; i++, p += elt_size)
+ {
+ rtx elt = CONST_VECTOR_ELT (rtl, i);
+ HOST_WIDE_INT lo, hi;
+ if (GET_CODE (elt) == CONST_INT)
+ {
+ lo = INTVAL (elt);
+ hi = -(lo < 0);
+ }
+ else if (GET_CODE (elt) == CONST_DOUBLE)
+ {
+ lo = CONST_DOUBLE_LOW (elt);
+ hi = CONST_DOUBLE_HIGH (elt);
+ }
+ else
+ abort ();
+
+ if (elt_size <= sizeof (HOST_WIDE_INT))
+ insert_int (lo, elt_size, p);
+ else if (elt_size == 2 * sizeof (HOST_WIDE_INT))
+ {
+ unsigned char *p0 = p;
+ unsigned char *p1 = p + sizeof (HOST_WIDE_INT);
+
+ if (WORDS_BIG_ENDIAN)
+ {
+ p0 = p1;
+ p1 = p;
+ }
+ insert_int (lo, sizeof (HOST_WIDE_INT), p0);
+ insert_int (hi, sizeof (HOST_WIDE_INT), p1);
+ }
+ else
+ abort ();
+ }
+ }
+ else if (GET_MODE_CLASS (mode) == MODE_VECTOR_FLOAT)
+ {
+ for (i = 0, p = array; i < length; i++, p += elt_size)
+ {
+ rtx elt = CONST_VECTOR_ELT (rtl, i);
+ insert_float (elt, p);
+ }
+ }
+ else
+ abort ();
+
+ add_AT_vec (die, DW_AT_const_value, length, elt_size, array);
+ }
+ break;
+
case CONST_STRING:
add_AT_string (die, DW_AT_const_value, XSTR (rtl, 0));
break;
@@ -9398,8 +9538,7 @@ rtl_for_decl_location (tree decl)
TREE_STRING_LENGTH (init) - 1) == 0
&& ((size_t) TREE_STRING_LENGTH (init)
== strlen (TREE_STRING_POINTER (init)) + 1))
- rtl = gen_rtx_CONST_STRING (VOIDmode,
- ggc_strdup (TREE_STRING_POINTER (init)));
+ rtl = gen_rtx_CONST_STRING (VOIDmode, TREE_STRING_POINTER (init));
}
/* If the initializer is something that we know will expand into an
immediate RTL constant, expand it now. Expanding anything else
@@ -9462,6 +9601,7 @@ add_location_or_const_value_attribute (dw_die_ref die, tree decl)
case CONST_INT:
case CONST_DOUBLE:
+ case CONST_VECTOR:
case CONST_STRING:
case SYMBOL_REF:
case LABEL_REF:
@@ -10414,20 +10554,20 @@ gen_enumeration_type_die (tree type, dw_die_ref context_die)
link != NULL; link = TREE_CHAIN (link))
{
dw_die_ref enum_die = new_die (DW_TAG_enumerator, type_die, link);
+ tree value = TREE_VALUE (link);
add_name_attribute (enum_die,
IDENTIFIER_POINTER (TREE_PURPOSE (link)));
- if (host_integerp (TREE_VALUE (link),
- TREE_UNSIGNED (TREE_TYPE (TREE_VALUE (link)))))
- {
- if (tree_int_cst_sgn (TREE_VALUE (link)) < 0)
- add_AT_int (enum_die, DW_AT_const_value,
- tree_low_cst (TREE_VALUE (link), 0));
- else
- add_AT_unsigned (enum_die, DW_AT_const_value,
- tree_low_cst (TREE_VALUE (link), 1));
- }
+ if (host_integerp (value, TREE_UNSIGNED (TREE_TYPE (value))))
+ /* DWARF2 does not provide a way of indicating whether or
+ not enumeration constants are signed or unsigned. GDB
+ always assumes the values are signed, so we output all
+ values as if they were signed. That means that
+ enumeration constants with very large unsigned values
+ will appear to have negative values in the debugger. */
+ add_AT_int (enum_die, DW_AT_const_value,
+ tree_low_cst (value, tree_int_cst_sgn (value) > 0));
}
}
else
@@ -12148,12 +12288,6 @@ dwarf2out_decl (tree decl)
return;
case FUNCTION_DECL:
- /* Ignore this FUNCTION_DECL if it refers to a builtin declaration of a
- builtin function. Explicit programmer-supplied declarations of
- these same functions should NOT be ignored however. */
- if (DECL_EXTERNAL (decl) && DECL_BUILT_IN (decl))
- return;
-
/* What we would really like to do here is to filter out all mere
file-scope declarations of file-scope functions which are never
referenced later within this translation unit (and keep all of ones
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index ddc84ee8895..f6e44f9c27d 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -1520,6 +1520,40 @@ component_ref_for_mem_expr (tree ref)
TREE_OPERAND (ref, 1));
}
+/* Returns 1 if both MEM_EXPR can be considered equal
+ and 0 otherwise. */
+
+int
+mem_expr_equal_p (tree expr1, tree expr2)
+{
+ if (expr1 == expr2)
+ return 1;
+
+ if (! expr1 || ! expr2)
+ return 0;
+
+ if (TREE_CODE (expr1) != TREE_CODE (expr2))
+ return 0;
+
+ if (TREE_CODE (expr1) == COMPONENT_REF)
+ return
+ mem_expr_equal_p (TREE_OPERAND (expr1, 0),
+ TREE_OPERAND (expr2, 0))
+ && mem_expr_equal_p (TREE_OPERAND (expr1, 1), /* field decl */
+ TREE_OPERAND (expr2, 1));
+
+ if (TREE_CODE (expr1) == INDIRECT_REF)
+ return mem_expr_equal_p (TREE_OPERAND (expr1, 0),
+ TREE_OPERAND (expr2, 0));
+
+ /* Decls with different pointers can't be equal. */
+ if (DECL_P (expr1))
+ return 0;
+
+ abort(); /* ARRAY_REFs, ARRAY_RANGE_REFs and BIT_FIELD_REFs should already
+ have been resolved here. */
+}
+
/* Given REF, a MEM, and T, either the type of X or the expression
corresponding to REF, set the memory attributes. OBJECTP is nonzero
if we are making a new object of this type. BITPOS is nonzero if
@@ -1840,6 +1874,9 @@ change_address_1 (rtx memref, enum machine_mode mode, rtx addr, int validate)
mode = GET_MODE (memref);
if (addr == 0)
addr = XEXP (memref, 0);
+ if (mode == GET_MODE (memref) && addr == XEXP (memref, 0)
+ && (!validate || memory_address_p (mode, addr)))
+ return memref;
if (validate)
{
@@ -1866,15 +1903,29 @@ change_address_1 (rtx memref, enum machine_mode mode, rtx addr, int validate)
rtx
change_address (rtx memref, enum machine_mode mode, rtx addr)
{
- rtx new = change_address_1 (memref, mode, addr, 1);
+ rtx new = change_address_1 (memref, mode, addr, 1), size;
enum machine_mode mmode = GET_MODE (new);
+ unsigned int align;
+
+ size = mmode == BLKmode ? 0 : GEN_INT (GET_MODE_SIZE (mmode));
+ align = mmode == BLKmode ? BITS_PER_UNIT : GET_MODE_ALIGNMENT (mmode);
+
+ /* If there are no changes, just return the original memory reference. */
+ if (new == memref)
+ {
+ if (MEM_ATTRS (memref) == 0
+ || (MEM_EXPR (memref) == NULL
+ && MEM_OFFSET (memref) == NULL
+ && MEM_SIZE (memref) == size
+ && MEM_ALIGN (memref) == align))
+ return new;
+
+ new = gen_rtx_MEM (mmode, XEXP (memref, 0));
+ MEM_COPY_ATTRIBUTES (new, memref);
+ }
MEM_ATTRS (new)
- = get_mem_attrs (MEM_ALIAS_SET (memref), 0, 0,
- mmode == BLKmode ? 0 : GEN_INT (GET_MODE_SIZE (mmode)),
- (mmode == BLKmode ? BITS_PER_UNIT
- : GET_MODE_ALIGNMENT (mmode)),
- mmode);
+ = get_mem_attrs (MEM_ALIAS_SET (memref), 0, 0, size, align, mmode);
return new;
}
@@ -1895,6 +1946,11 @@ adjust_address_1 (rtx memref, enum machine_mode mode, HOST_WIDE_INT offset,
rtx size = 0;
unsigned int memalign = MEM_ALIGN (memref);
+ /* If there are no changes, just return the original memory reference. */
+ if (mode == GET_MODE (memref) && !offset
+ && (!validate || memory_address_p (mode, addr)))
+ return memref;
+
/* ??? Prefer to create garbage instead of creating shared rtl.
This may happen even if offset is nonzero -- consider
(plus (plus reg reg) const_int) -- so do this always. */
@@ -1985,6 +2041,10 @@ offset_address (rtx memref, rtx offset, unsigned HOST_WIDE_INT pow2)
update_temp_slot_address (XEXP (memref, 0), new);
new = change_address_1 (memref, VOIDmode, new, 1);
+ /* If there are no changes, just return the original memory reference. */
+ if (new == memref)
+ return new;
+
/* Update the alignment to reflect the offset. Reset the offset, which
we don't know. */
MEM_ATTRS (new)
@@ -2029,6 +2089,10 @@ widen_memory_access (rtx memref, enum machine_mode mode, HOST_WIDE_INT offset)
rtx memoffset = MEM_OFFSET (new);
unsigned int size = GET_MODE_SIZE (mode);
+ /* If there are no changes, just return the original memory reference. */
+ if (new == memref)
+ return new;
+
/* If we don't know what offset we were at within the expression, then
we can't know if we've overstepped the bounds. */
if (! memoffset)
@@ -3174,7 +3238,7 @@ mark_label_nuses (rtx x)
const char *fmt;
code = GET_CODE (x);
- if (code == LABEL_REF)
+ if (code == LABEL_REF && LABEL_P (XEXP (x, 0)))
LABEL_NUSES (XEXP (x, 0))++;
fmt = GET_RTX_FORMAT (code);
@@ -3950,7 +4014,7 @@ remove_unnecessary_notes (void)
/* Make X be output before the instruction BEFORE. */
rtx
-emit_insn_before (rtx x, rtx before)
+emit_insn_before_noloc (rtx x, rtx before)
{
rtx last = before;
rtx insn;
@@ -4000,7 +4064,7 @@ emit_insn_before (rtx x, rtx before)
and output it before the instruction BEFORE. */
rtx
-emit_jump_insn_before (rtx x, rtx before)
+emit_jump_insn_before_noloc (rtx x, rtx before)
{
rtx insn, last = NULL_RTX;
@@ -4046,7 +4110,7 @@ emit_jump_insn_before (rtx x, rtx before)
and output it before the instruction BEFORE. */
rtx
-emit_call_insn_before (rtx x, rtx before)
+emit_call_insn_before_noloc (rtx x, rtx before)
{
rtx last = NULL_RTX, insn;
@@ -4177,7 +4241,7 @@ emit_insn_after_1 (rtx first, rtx after)
/* Make X be output after the insn AFTER. */
rtx
-emit_insn_after (rtx x, rtx after)
+emit_insn_after_noloc (rtx x, rtx after)
{
rtx last = after;
@@ -4236,7 +4300,7 @@ emit_insn_after_with_line_notes (rtx x, rtx after, rtx from)
and output it after the insn AFTER. */
rtx
-emit_jump_insn_after (rtx x, rtx after)
+emit_jump_insn_after_noloc (rtx x, rtx after)
{
rtx last;
@@ -4275,7 +4339,7 @@ emit_jump_insn_after (rtx x, rtx after)
and output it after the instruction AFTER. */
rtx
-emit_call_insn_after (rtx x, rtx after)
+emit_call_insn_after_noloc (rtx x, rtx after)
{
rtx last;
@@ -4377,16 +4441,19 @@ emit_note_copy_after (rtx orig, rtx after)
return note;
}
-/* Like emit_insn_after, but set INSN_LOCATOR according to SCOPE. */
+/* Like emit_insn_after_noloc, but set INSN_LOCATOR according to SCOPE. */
rtx
emit_insn_after_setloc (rtx pattern, rtx after, int loc)
{
- rtx last = emit_insn_after (pattern, after);
+ rtx last = emit_insn_after_noloc (pattern, after);
+
+ if (pattern == NULL_RTX || !loc)
+ return last;
after = NEXT_INSN (after);
while (1)
{
- if (active_insn_p (after))
+ if (active_insn_p (after) && !INSN_LOCATOR (after))
INSN_LOCATOR (after) = loc;
if (after == last)
break;
@@ -4395,16 +4462,29 @@ emit_insn_after_setloc (rtx pattern, rtx after, int loc)
return last;
}
-/* Like emit_jump_insn_after, but set INSN_LOCATOR according to SCOPE. */
+/* Like emit_insn_after_noloc, but set INSN_LOCATOR according to AFTER. */
+rtx
+emit_insn_after (rtx pattern, rtx after)
+{
+ if (INSN_P (after))
+ return emit_insn_after_setloc (pattern, after, INSN_LOCATOR (after));
+ else
+ return emit_insn_after_noloc (pattern, after);
+}
+
+/* Like emit_jump_insn_after_noloc, but set INSN_LOCATOR according to SCOPE. */
rtx
emit_jump_insn_after_setloc (rtx pattern, rtx after, int loc)
{
- rtx last = emit_jump_insn_after (pattern, after);
+ rtx last = emit_jump_insn_after_noloc (pattern, after);
+
+ if (pattern == NULL_RTX || !loc)
+ return last;
after = NEXT_INSN (after);
while (1)
{
- if (active_insn_p (after))
+ if (active_insn_p (after) && !INSN_LOCATOR (after))
INSN_LOCATOR (after) = loc;
if (after == last)
break;
@@ -4413,16 +4493,29 @@ emit_jump_insn_after_setloc (rtx pattern, rtx after, int loc)
return last;
}
-/* Like emit_call_insn_after, but set INSN_LOCATOR according to SCOPE. */
+/* Like emit_jump_insn_after_noloc, but set INSN_LOCATOR according to AFTER. */
+rtx
+emit_jump_insn_after (rtx pattern, rtx after)
+{
+ if (INSN_P (after))
+ return emit_jump_insn_after_setloc (pattern, after, INSN_LOCATOR (after));
+ else
+ return emit_jump_insn_after_noloc (pattern, after);
+}
+
+/* Like emit_call_insn_after_noloc, but set INSN_LOCATOR according to SCOPE. */
rtx
emit_call_insn_after_setloc (rtx pattern, rtx after, int loc)
{
- rtx last = emit_call_insn_after (pattern, after);
+ rtx last = emit_call_insn_after_noloc (pattern, after);
+
+ if (pattern == NULL_RTX || !loc)
+ return last;
after = NEXT_INSN (after);
while (1)
{
- if (active_insn_p (after))
+ if (active_insn_p (after) && !INSN_LOCATOR (after))
INSN_LOCATOR (after) = loc;
if (after == last)
break;
@@ -4431,17 +4524,62 @@ emit_call_insn_after_setloc (rtx pattern, rtx after, int loc)
return last;
}
-/* Like emit_insn_before, but set INSN_LOCATOR according to SCOPE. */
+/* Like emit_call_insn_after_noloc, but set INSN_LOCATOR according to AFTER. */
+rtx
+emit_call_insn_after (rtx pattern, rtx after)
+{
+ if (INSN_P (after))
+ return emit_call_insn_after_setloc (pattern, after, INSN_LOCATOR (after));
+ else
+ return emit_call_insn_after_noloc (pattern, after);
+}
+
+/* Like emit_insn_before_noloc, but set INSN_LOCATOR according to SCOPE. */
rtx
emit_insn_before_setloc (rtx pattern, rtx before, int loc)
{
rtx first = PREV_INSN (before);
- rtx last = emit_insn_before (pattern, before);
+ rtx last = emit_insn_before_noloc (pattern, before);
+
+ if (pattern == NULL_RTX || !loc)
+ return last;
+
+ first = NEXT_INSN (first);
+ while (1)
+ {
+ if (active_insn_p (first) && !INSN_LOCATOR (first))
+ INSN_LOCATOR (first) = loc;
+ if (first == last)
+ break;
+ first = NEXT_INSN (first);
+ }
+ return last;
+}
+
+/* Like emit_insn_before_noloc, but set INSN_LOCATOR according to BEFORE. */
+rtx
+emit_insn_before (rtx pattern, rtx before)
+{
+ if (INSN_P (before))
+ return emit_insn_before_setloc (pattern, before, INSN_LOCATOR (before));
+ else
+ return emit_insn_before_noloc (pattern, before);
+}
+
+/* like emit_insn_before_noloc, but set insn_locator according to scope. */
+rtx
+emit_jump_insn_before_setloc (rtx pattern, rtx before, int loc)
+{
+ rtx first = PREV_INSN (before);
+ rtx last = emit_jump_insn_before_noloc (pattern, before);
+
+ if (pattern == NULL_RTX)
+ return last;
first = NEXT_INSN (first);
while (1)
{
- if (active_insn_p (first))
+ if (active_insn_p (first) && !INSN_LOCATOR (first))
INSN_LOCATOR (first) = loc;
if (first == last)
break;
@@ -4449,6 +4587,49 @@ emit_insn_before_setloc (rtx pattern, rtx before, int loc)
}
return last;
}
+
+/* Like emit_jump_insn_before_noloc, but set INSN_LOCATOR according to BEFORE. */
+rtx
+emit_jump_insn_before (rtx pattern, rtx before)
+{
+ if (INSN_P (before))
+ return emit_jump_insn_before_setloc (pattern, before, INSN_LOCATOR (before));
+ else
+ return emit_jump_insn_before_noloc (pattern, before);
+}
+
+/* like emit_insn_before_noloc, but set insn_locator according to scope. */
+rtx
+emit_call_insn_before_setloc (rtx pattern, rtx before, int loc)
+{
+ rtx first = PREV_INSN (before);
+ rtx last = emit_call_insn_before_noloc (pattern, before);
+
+ if (pattern == NULL_RTX)
+ return last;
+
+ first = NEXT_INSN (first);
+ while (1)
+ {
+ if (active_insn_p (first) && !INSN_LOCATOR (first))
+ INSN_LOCATOR (first) = loc;
+ if (first == last)
+ break;
+ first = NEXT_INSN (first);
+ }
+ return last;
+}
+
+/* like emit_call_insn_before_noloc,
+ but set insn_locator according to before. */
+rtx
+emit_call_insn_before (rtx pattern, rtx before)
+{
+ if (INSN_P (before))
+ return emit_call_insn_before_setloc (pattern, before, INSN_LOCATOR (before));
+ else
+ return emit_call_insn_before_noloc (pattern, before);
+}
/* Take X and emit it at the end of the doubly-linked
INSN list.
diff --git a/gcc/et-forest.c b/gcc/et-forest.c
index dfc05a34d0e..62cdd2107d3 100644
--- a/gcc/et-forest.c
+++ b/gcc/et-forest.c
@@ -1,6 +1,6 @@
/* ET-trees data structure implementation.
Contributed by Pavel Nejedly
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of the libiberty library.
Libiberty is free software; you can redistribute it and/or
diff --git a/gcc/except.c b/gcc/except.c
index b735cc1aef3..50fd11a2a9b 100644
--- a/gcc/except.c
+++ b/gcc/except.c
@@ -412,10 +412,8 @@ init_eh (void)
tmp = build_int_2 (FIRST_PSEUDO_REGISTER + 2 - 1, 0);
#endif
#else
- /* This is 2 for builtin_setjmp, plus whatever the target requires
- via STACK_SAVEAREA_MODE (SAVE_NONLOCAL). */
- tmp = build_int_2 ((GET_MODE_SIZE (STACK_SAVEAREA_MODE (SAVE_NONLOCAL))
- / GET_MODE_SIZE (Pmode)) + 2 - 1, 0);
+ /* builtin_setjmp takes a pointer to 5 words. */
+ tmp = build_int_2 (5 * BITS_PER_WORD / POINTER_SIZE - 1, 0);
#endif
tmp = build_index_type (tmp);
tmp = build_array_type (ptr_type_node, tmp);
@@ -1048,7 +1046,18 @@ remove_unreachable_regions (rtx insns)
}
for (insn = insns; insn; insn = NEXT_INSN (insn))
- reachable[uid_region_num[INSN_UID (insn)]] = true;
+ {
+ reachable[uid_region_num[INSN_UID (insn)]] = true;
+
+ if (GET_CODE (insn) == CALL_INSN
+ && GET_CODE (PATTERN (insn)) == CALL_PLACEHOLDER)
+ for (i = 0; i < 3; i++)
+ {
+ rtx sub = XEXP (PATTERN (insn), i);
+ for (; sub ; sub = NEXT_INSN (sub))
+ reachable[uid_region_num[INSN_UID (sub)]] = true;
+ }
+ }
for (i = cfun->eh->last_region_number; i > 0; --i)
{
@@ -3078,6 +3087,26 @@ expand_eh_return (void)
emit_label (around_label);
}
+
+/* Convert a ptr_mode address ADDR_TREE to a Pmode address controlled by
+ POINTERS_EXTEND_UNSIGNED and return it. */
+
+rtx
+expand_builtin_extend_pointer (tree addr_tree)
+{
+ rtx addr = expand_expr (addr_tree, NULL_RTX, ptr_mode, 0);
+ int extend;
+
+#ifdef POINTERS_EXTEND_UNSIGNED
+ extend = POINTERS_EXTEND_UNSIGNED;
+#else
+ /* The previous EH code did an unsigned extend by default, so we do this also
+ for consistency. */
+ extend = 1;
+#endif
+
+ return convert_modes (word_mode, ptr_mode, addr, extend);
+}
/* In the following functions, we represent entries in the action table
as 1-based indices. Special cases are:
@@ -3223,8 +3252,18 @@ collect_one_action_chain (htab_t ar_hash, struct eh_region *region)
/* An exception specification adds its filter to the
beginning of the chain. */
next = collect_one_action_chain (ar_hash, region->outer);
- return add_action_record (ar_hash, region->u.allowed.filter,
- next < 0 ? 0 : next);
+
+ /* If there is no next action, terminate the chain. */
+ if (next == -1)
+ next = 0;
+ /* If all outer actions are cleanups or must_not_throw,
+ we'll have no action record for it, since we had wanted
+ to encode these states in the call-site record directly.
+ Add a cleanup action to the chain to catch these. */
+ else if (next <= 0)
+ next = add_action_record (ar_hash, 0, 0);
+
+ return add_action_record (ar_hash, region->u.allowed.filter, next);
case ERT_MUST_NOT_THROW:
/* A must-not-throw region with no inner handlers or cleanups
diff --git a/gcc/except.h b/gcc/except.h
index 75bbd6f9c38..5093a65059a 100644
--- a/gcc/except.h
+++ b/gcc/except.h
@@ -117,6 +117,7 @@ extern rtx expand_builtin_frob_return_addr (tree);
extern rtx expand_builtin_dwarf_sp_column (void);
extern void expand_builtin_eh_return (tree, tree);
extern void expand_eh_return (void);
+extern rtx expand_builtin_extend_pointer (tree);
extern rtx get_exception_pointer (struct function *);
extern int duplicate_eh_regions (struct function *, struct inline_remap *);
diff --git a/gcc/explow.c b/gcc/explow.c
index 9e04bd896f9..c1de4c85d22 100644
--- a/gcc/explow.c
+++ b/gcc/explow.c
@@ -597,19 +597,11 @@ maybe_set_unchanging (rtx ref, tree t)
/* We can set RTX_UNCHANGING_P from TREE_READONLY for decls whose
initialization is only executed once, or whose initializer always
has the same value. Currently we simplify this to PARM_DECLs in the
- first case, and decls with TREE_CONSTANT initializers in the second.
-
- We cannot do this for non-static aggregates, because of the double
- writes that can be generated by store_constructor, depending on the
- contents of the initializer. Yes, this does eliminate a good fraction
- of the number of uses of RTX_UNCHANGING_P for a language like Ada.
- It also eliminates a good quantity of bugs. Let this be incentive to
- eliminate RTX_UNCHANGING_P entirely in favor of a more reliable
- solution, perhaps based on alias sets. */
+ first case, and decls with TREE_CONSTANT initializers in the second. */
if ((TREE_READONLY (t) && DECL_P (t)
- && (TREE_STATIC (t) || ! AGGREGATE_TYPE_P (TREE_TYPE (t)))
- && (TREE_CODE (t) == PARM_DECL
+ && (DECL_EXTERNAL (t)
+ || TREE_CODE (t) == PARM_DECL
|| (DECL_INITIAL (t) && TREE_CONSTANT (DECL_INITIAL (t)))))
|| TREE_CODE_CLASS (TREE_CODE (t)) == 'c')
RTX_UNCHANGING_P (ref) = 1;
diff --git a/gcc/expmed.c b/gcc/expmed.c
index 8ebfb487552..3d61a35f953 100644
--- a/gcc/expmed.c
+++ b/gcc/expmed.c
@@ -1,7 +1,7 @@
/* Medium-level subroutines: convert bit-field store and extract
and shifts, multiplies and divides to rtl instructions.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/expr.c b/gcc/expr.c
index b5af15893f1..b8025286a54 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -1,6 +1,6 @@
/* Convert tree expression to rtl instructions, for GNU compiler.
Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -161,7 +161,7 @@ static rtx store_field (rtx, HOST_WIDE_INT, HOST_WIDE_INT, enum machine_mode,
static rtx var_rtx (tree);
static unsigned HOST_WIDE_INT highest_pow2_factor (tree);
-static unsigned HOST_WIDE_INT highest_pow2_factor_for_type (tree, tree);
+static unsigned HOST_WIDE_INT highest_pow2_factor_for_target (tree, tree);
static int is_aligning_offset (tree, tree);
static rtx expand_increment (tree, int, int);
@@ -474,13 +474,30 @@ queued_subexp_p (rtx x)
}
}
-/* Perform all the pending incrementations. */
+/* Retrieve a mark on the queue. */
+
+static rtx
+mark_queue (void)
+{
+ return pending_chain;
+}
-void
-emit_queue (void)
+/* Perform all the pending incrementations that have been enqueued
+ after MARK was retrieved. If MARK is null, perform all the
+ pending incrementations. */
+
+static void
+emit_insns_enqueued_after_mark (rtx mark)
{
rtx p;
- while ((p = pending_chain))
+
+ /* The marked incrementation may have been emitted in the meantime
+ through a call to emit_queue. In this case, the mark is not valid
+ anymore so do nothing. */
+ if (mark && ! QUEUED_BODY (mark))
+ return;
+
+ while ((p = pending_chain) != mark)
{
rtx body = QUEUED_BODY (p);
@@ -507,9 +524,18 @@ emit_queue (void)
break;
}
+ QUEUED_BODY (p) = 0;
pending_chain = QUEUED_NEXT (p);
}
}
+
+/* Perform all the pending incrementations. */
+
+void
+emit_queue (void)
+{
+ emit_insns_enqueued_after_mark (NULL_RTX);
+}
/* Copy data from FROM to TO, where the machine modes are not the same.
Both modes may be integer, or both may be floating.
@@ -687,7 +713,11 @@ convert_move (rtx to, rtx from, int unsignedp)
!= CODE_FOR_nothing))
{
if (GET_CODE (to) == REG)
- emit_insn (gen_rtx_CLOBBER (VOIDmode, to));
+ {
+ if (reg_overlap_mentioned_p (to, from))
+ from = force_reg (from_mode, from);
+ emit_insn (gen_rtx_CLOBBER (VOIDmode, to));
+ }
convert_move (gen_lowpart (word_mode, to), from, unsignedp);
emit_unop_insn (code, to,
gen_lowpart (word_mode, to), equiv_code);
@@ -1395,7 +1425,7 @@ block_move_libcall_safe_for_call_parm (void)
tree fn, arg;
fn = emit_block_move_libcall_fn (false);
- INIT_CUMULATIVE_ARGS (args_so_far, TREE_TYPE (fn), NULL_RTX, 0);
+ INIT_CUMULATIVE_ARGS (args_so_far, TREE_TYPE (fn), NULL_RTX, 0, 3);
arg = TYPE_ARG_TYPES (TREE_TYPE (fn));
for ( ; arg != void_list_node ; arg = TREE_CHAIN (arg))
@@ -1924,6 +1954,9 @@ emit_group_load (rtx dst, rtx orig_src, tree type ATTRIBUTE_UNUSED, int ssize)
emit_move_insn (mem, src);
tmps[i] = adjust_address (mem, mode, (int) bytepos);
}
+ else if (CONSTANT_P (src) && GET_MODE (dst) != BLKmode
+ && XVECLEN (dst, 0) > 1)
+ tmps[i] = simplify_gen_subreg (mode, src, GET_MODE(dst), bytepos);
else if (CONSTANT_P (src)
|| (GET_CODE (src) == REG && GET_MODE (src) == mode))
tmps[i] = src;
@@ -3797,8 +3830,8 @@ expand_assignment (tree to, tree from, int want_value)
}
to_rtx = offset_address (to_rtx, offset_rtx,
- highest_pow2_factor_for_type (TREE_TYPE (to),
- offset));
+ highest_pow2_factor_for_target (to,
+ offset));
}
if (GET_CODE (to_rtx) == MEM)
@@ -4003,6 +4036,7 @@ store_expr (tree exp, rtx target, int want_value)
{
rtx temp;
rtx alt_rtl = NULL_RTX;
+ rtx mark = mark_queue ();
int dont_return_target = 0;
int dont_store_target = 0;
@@ -4214,7 +4248,11 @@ store_expr (tree exp, rtx target, int want_value)
temp, TREE_UNSIGNED (TREE_TYPE (exp)));
/* If value was not generated in the target, store it there.
- Convert the value to TARGET's type first if necessary.
+ Convert the value to TARGET's type first if necessary and emit the
+ pending incrementations that have been queued when expanding EXP.
+ Note that we cannot emit the whole queue blindly because this will
+ effectively disable the POST_INC optimization later.
+
If TEMP and TARGET compare equal according to rtx_equal_p, but
one or both of them are volatile memory refs, we have to distinguish
two cases:
@@ -4242,7 +4280,9 @@ store_expr (tree exp, rtx target, int want_value)
bit-initialized. */
&& expr_size (exp) != const0_rtx)
{
+ emit_insns_enqueued_after_mark (mark);
target = protect_from_queue (target, 1);
+ temp = protect_from_queue (temp, 0);
if (GET_MODE (temp) != GET_MODE (target)
&& GET_MODE (temp) != VOIDmode)
{
@@ -4543,14 +4583,27 @@ store_constructor (tree exp, rtx target, int cleared, HOST_WIDE_INT size)
{
rtx xtarget = target;
- if (readonly_fields_p (type))
+ if (RTX_UNCHANGING_P (target))
{
- xtarget = copy_rtx (xtarget);
- RTX_UNCHANGING_P (xtarget) = 1;
+ xtarget = copy_rtx (target);
+ RTX_UNCHANGING_P (xtarget) = 0;
}
clear_storage (xtarget, GEN_INT (size));
cleared = 1;
+ if (RTX_UNCHANGING_P (target) || readonly_fields_p (type))
+ {
+ /* ??? Emit a blockage to prevent the scheduler from swapping
+ the memory write issued above without the /u flag and
+ memory writes that will be issued later with it.
+ Note that the clearing above cannot be simply disabled
+ in the unsafe cases because the C front-end relies on
+ it to implement the semantics of constructors for
+ automatic objects. However, not all machine descriptions
+ define a blockage insn, so emit an ASM_INPUT to
+ act as one.  */
+ emit_insn (gen_rtx_ASM_INPUT (VOIDmode, ""));
+ }
}
if (! cleared)
@@ -4621,10 +4674,7 @@ store_constructor (tree exp, rtx target, int cleared, HOST_WIDE_INT size)
highest_pow2_factor (offset));
}
- /* If the constructor has been cleared, setting RTX_UNCHANGING_P
- on the MEM might lead to scheduling the clearing after the
- store. */
- if (TREE_READONLY (field) && !cleared)
+ if (TREE_READONLY (field))
{
if (GET_CODE (to_rtx) == MEM)
to_rtx = copy_rtx (to_rtx);
@@ -4785,9 +4835,28 @@ store_constructor (tree exp, rtx target, int cleared, HOST_WIDE_INT size)
if (! cleared)
{
if (REG_P (target))
- emit_move_insn (target, CONST0_RTX (GET_MODE (target)));
+ emit_move_insn (target, CONST0_RTX (GET_MODE (target)));
else
- clear_storage (target, GEN_INT (size));
+ {
+ rtx xtarget = target;
+
+ if (RTX_UNCHANGING_P (target))
+ {
+ xtarget = copy_rtx (target);
+ RTX_UNCHANGING_P (xtarget) = 0;
+ }
+
+ clear_storage (xtarget, GEN_INT (size));
+
+ if (RTX_UNCHANGING_P (target))
+ {
+ /* ??? Emit a blockage to prevent the scheduler from
+ swapping the memory write issued above without the
+ /u flag and memory writes that will be issued later
+ with it. */
+ emit_insn (gen_rtx_ASM_INPUT (VOIDmode, ""));
+ }
+ }
}
cleared = 1;
}
@@ -6031,17 +6100,22 @@ highest_pow2_factor (tree exp)
return 1;
}
-/* Similar, except that it is known that the expression must be a multiple
- of the alignment of TYPE. */
+/* Similar, except that the alignment requirements of TARGET are
+ taken into account. Assume it is at least as aligned as its
+ type, unless it is a COMPONENT_REF in which case the layout of
+ the structure gives the alignment. */
static unsigned HOST_WIDE_INT
-highest_pow2_factor_for_type (tree type, tree exp)
+highest_pow2_factor_for_target (tree target, tree exp)
{
- unsigned HOST_WIDE_INT type_align, factor;
+ unsigned HOST_WIDE_INT target_align, factor;
factor = highest_pow2_factor (exp);
- type_align = TYPE_ALIGN (type) / BITS_PER_UNIT;
- return MAX (factor, type_align);
+ if (TREE_CODE (target) == COMPONENT_REF)
+ target_align = DECL_ALIGN (TREE_OPERAND (target, 1)) / BITS_PER_UNIT;
+ else
+ target_align = TYPE_ALIGN (TREE_TYPE (target)) / BITS_PER_UNIT;
+ return MAX (factor, target_align);
}
/* Return an object on the placeholder list that matches EXP, a
@@ -8020,7 +8094,7 @@ expand_expr_real (tree exp, rtx target, enum machine_mode tmode,
/* First try to do it with a special MIN or MAX instruction.
If that does not win, use a conditional jump to select the proper
value. */
- this_optab = (TREE_UNSIGNED (type)
+ this_optab = (unsignedp
? (code == MIN_EXPR ? umin_optab : umax_optab)
: (code == MIN_EXPR ? smin_optab : smax_optab));
@@ -8054,18 +8128,16 @@ expand_expr_real (tree exp, rtx target, enum machine_mode tmode,
&& ! can_compare_p (GE, mode, ccp_jump))
{
if (code == MAX_EXPR)
- do_jump_by_parts_greater_rtx (mode, TREE_UNSIGNED (type),
- target, op1, NULL_RTX, op0);
+ do_jump_by_parts_greater_rtx (mode, unsignedp, target, op1,
+ NULL_RTX, op0);
else
- do_jump_by_parts_greater_rtx (mode, TREE_UNSIGNED (type),
- op1, target, NULL_RTX, op0);
+ do_jump_by_parts_greater_rtx (mode, unsignedp, op1, target,
+ NULL_RTX, op0);
}
else
{
- int unsignedp = TREE_UNSIGNED (TREE_TYPE (TREE_OPERAND (exp, 1)));
do_compare_rtx_and_jump (target, op1, code == MAX_EXPR ? GE : LE,
- unsignedp, mode, NULL_RTX, NULL_RTX,
- op0);
+ unsignedp, mode, NULL_RTX, NULL_RTX, op0);
}
emit_move_insn (target, op1);
emit_label (op0);
@@ -9074,7 +9146,8 @@ is_aligning_offset (tree offset, tree exp)
power of 2 and which is larger than BIGGEST_ALIGNMENT. */
if (TREE_CODE (offset) != BIT_AND_EXPR
|| !host_integerp (TREE_OPERAND (offset, 1), 1)
- || compare_tree_int (TREE_OPERAND (offset, 1), BIGGEST_ALIGNMENT) <= 0
+ || compare_tree_int (TREE_OPERAND (offset, 1),
+ BIGGEST_ALIGNMENT / BITS_PER_UNIT) <= 0
|| !exact_log2 (tree_low_cst (TREE_OPERAND (offset, 1), 1) + 1) < 0)
return 0;
diff --git a/gcc/expr.h b/gcc/expr.h
index 000011340e5..dd7ac9c6058 100644
--- a/gcc/expr.h
+++ b/gcc/expr.h
@@ -1,6 +1,6 @@
/* Definitions for code generation pass of GNU compiler.
Copyright (C) 1987, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -188,11 +188,6 @@ do { \
#define FUNCTION_ARG_BOUNDARY(MODE, TYPE) PARM_BOUNDARY
#endif
-/* Define to nonzero if complex arguments should be split into their
- corresponding components. */
-#ifndef SPLIT_COMPLEX_ARGS
-#define SPLIT_COMPLEX_ARGS 0
-#endif
tree split_complex_types (tree);
tree split_complex_values (tree);
diff --git a/gcc/f/ChangeLog b/gcc/f/ChangeLog
index f36ad626b9b..316d8031ade 100644
--- a/gcc/f/ChangeLog
+++ b/gcc/f/ChangeLog
@@ -1,3 +1,76 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-03-21 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * g77.texi: Update link to "G++ and GCC".
+
+2004-03-14 Gerald Pfeifer <gerald@pfeifer.com>
+
+ * g77.texi (Aligned Data): Remove obsolete paragraph including a
+ broken link.
+ (Floating-point Errors): Remove links to http://www.validgh.com/
+ which was "hijacked".
+ (Language): Fix link to Fortran books.
+ (Projects): Remove obsolete paragraph including a broken link to
+ ftp://alpha.gnu.org/gnu/g77/projects/.
+ (Trouble): Remove obsolete paragraph including a broken link to
+ ftp://alpha.gnu.org/g77.plan.
+
+ * invoke.texi (Overall Options): Remove broken reference to
+ rat7.uue (which was of dubious copyright status anyways).
+
+ * root.texi (www-burley): Fix URL.
+
+2004-03-06 Roger Sayle <roger@eyesopen.com>
+
+ * parse.c (ffe_parse_file): Handle the case that main_input_filename
+ is NULL.
+
+2004-02-24 Michael Matz <matz@suse.de>
+
+ * Make-lang.in (sta.o-warn): Delete.
+ * sta.c (ffesta_save_): Don't break aliasing rules.
+
+2004-02-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * Make-lang.in (g77spec.o): Depend on intl.h.
+ * g77spec.c: Include intl.h.
+ (lang_specific_driver): Allow translation of the copyright
+ symbol but not the rest of the copyright message. Allow
+ translation of the message about warranty.
+
+2004-02-15 Roger Sayle <roger@eyesopen.com>
+
+ PR fortran/14129
+ * lex.c (ffelex_cfelex_): Avoid calling xrealloc on a local stack
+ allocated array.
+
+2004-01-30 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Make-lang.in (doc/g77.dvi): Use $(abs_docdir).
+
+2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Make-lang.in: Replace $(docdir) with doc.
+ (TEXI_G77_FILES): Define.
+ (f77.rebuilt): Delete.
+ (f77.srcextra): Add dependencies on f/BUGS and f/NEWS.
+ (f77.srcman, f77.srcinfo, f77.man, f77.info): New rules.
+ (doc/g77.info, doc/g77.dvi): Depend on TEXI_G77_FILES. Always build in
+ doc directory. Use $(MAKEINFOFLAGS).
+ (info, dvi, generated_manpages): Update to look in doc directory.
+ (f/BUGS, f/NEWS): Generate in build directory.
+ (f77.mostlyclean): Delete BUGS and NEWS from build directory.
+ (f77.maintainer-clean): Adjust to delete from source directory.
+ (f77.install-man): Revamp rule.
+
+2004-01-19 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Make-lang.in (G77_INSTALL_NAME): Define via a immediate $(shell)
+ instead of deferred backquote.
+
2004-01-15 Kelley Cook <kcook@gcc.gnu.org>
* Make-lang.in (f77.srcextra): Dummy entry.
diff --git a/gcc/f/Make-lang.in b/gcc/f/Make-lang.in
index 8b8de1b08ce..47585b0e242 100644
--- a/gcc/f/Make-lang.in
+++ b/gcc/f/Make-lang.in
@@ -38,7 +38,7 @@
# $(srcdir) must be set to the gcc/ source directory (not gcc/f/).
#
# Actual name to use when installing a native compiler.
-G77_INSTALL_NAME = `echo g77|sed '$(program_transform_name)'`
+G77_INSTALL_NAME := $(shell echo g77|sed '$(program_transform_name)')
# Some versions of `touch' (such as the version on Solaris 2.8)
# do not correctly set the timestamp due to buggy versions of `utime'
@@ -58,12 +58,12 @@ F77 f77: f771$(exeext)
f77.install-normal \
f77.install-common f77.install-man \
f77.uninstall f77.mostlyclean f77.clean f77.distclean \
- f77.maintainer-clean f77.rebuilt \
+ f77.maintainer-clean \
f77.stage1 f77.stage2 f77.stage3 f77.stage4 \
f77.stageprofile f77.stagefeedback
g77spec.o: $(srcdir)/f/g77spec.c $(SYSTEM_H) coretypes.h $(TM_H) $(GCC_H) \
- $(CONFIG_H)
+ $(CONFIG_H) intl.h
(SHLIB_LINK='$(SHLIB_LINK)' \
SHLIB_MULTILIB='$(SHLIB_MULTILIB)'; \
$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(DRIVER_DEFINES) \
@@ -90,8 +90,6 @@ F77_OBJS = f/bad.o f/bit.o f/bld.o f/com.o f/data.o f/equiv.o f/expr.o \
# Use loose warnings for this front end.
f-warn = $(WERROR)
-# type-punning warning
-f/sta.o-warn = -Wno-error
f771$(exeext): $(F77_OBJS) $(BACKEND) $(LIBDEPS)
rm -f f771$(exeext)
@@ -141,42 +139,40 @@ f77.all.build: g77$(exeext)
f77.all.cross: g77-cross$(exeext)
f77.start.encap: g77$(exeext)
f77.rest.encap:
-f77.srcextra:
+
+f77.srcinfo: doc/g77.info
+ -cp -p $^ $(srcdir)/doc
+f77.srcman: doc/g77.1
+ -cp -p $^ $(srcdir)/doc
+f77.srcextra: f/BUGS f/NEWS
+ -cp -p $^ $(srcdir)/f
f77.tags: force
cd $(srcdir)/f; etags -o TAGS.sub *.c *.h; \
etags --include TAGS.sub --include ../TAGS.sub
-info:: $(docobjdir)/g77.info
-dvi:: $(docobjdir)/g77.dvi
-generated-manpages:: $(docobjdir)/g77.1
+f77.info: doc/g77.info
+dvi:: doc/g77.dvi
+f77.man: doc/g77.1
check-f77 : check-g77
lang_checks += check-g77
# g77 documentation.
-$(docobjdir)/g77.info: $(srcdir)/f/g77.texi $(srcdir)/f/bugs.texi \
- $(srcdir)/f/ffe.texi $(srcdir)/f/invoke.texi \
- $(srcdir)/f/news.texi $(srcdir)/f/intdoc.texi \
- $(srcdir)/f/root.texi $(docdir)/include/fdl.texi \
- $(docdir)/include/gpl.texi \
- $(docdir)/include/funding.texi \
- $(docdir)/include/gcc-common.texi \
- stmp-docobjdir
- if [ x$(BUILD_INFO) = xinfo ]; then \
+TEXI_G77_FILES = f/g77.texi f/bugs.texi f/ffe.texi f/invoke.texi \
+ f/news.texi f/root.texi $(docdir)/include/fdl.texi \
+ $(docdir)/include/gpl.texi $(docdir)/include/funding.texi \
+ $(docdir)/include/gcc-common.texi $(srcdir)/f/intdoc.texi
+
+doc/g77.info: $(TEXI_G77_FILES)
+ if test "x$(BUILD_INFO)" = xinfo; then \
rm -f $(@)*; \
- $(MAKEINFO) -I$(docdir)/include -I$(srcdir)/f -o $@ $<; \
+ $(MAKEINFO) $(MAKEINFOFLAGS) -I$(docdir)/include -I$(srcdir)/f \
+ -o$@ $<; \
else true; fi
-$(docobjdir)/g77.dvi: $(srcdir)/f/g77.texi $(srcdir)/f/bugs.texi \
- $(srcdir)/f/ffe.texi $(srcdir)/f/invoke.texi \
- $(srcdir)/f/news.texi $(srcdir)/f/intdoc.texi \
- $(srcdir)/f/root.texi $(docdir)/include/fdl.texi \
- $(docdir)/include/gpl.texi \
- $(docdir)/include/funding.texi \
- $(docdir)/include/gcc-common.texi \
- stmp-docobjdir
- $(TEXI2DVI) -I $(srcdir)/f -I $(docdir)/include -o $@ $<
+doc/g77.dvi: $(TEXI_G77_FILES)
+ $(TEXI2DVI) -I $(srcdir)/f -I $(abs_docdir)/include -I $(objdir)/f -o $@ $<
.INTERMEDIATE: g77.pod
g77.pod: f/invoke.texi
@@ -204,41 +200,43 @@ g77.pod: f/invoke.texi
# If the documentation files depended on executables in the build
# tree, there'd be no way to ship a source tree with the documentation
-# already generated such that `make' wouldn't attempt to rebuilt it.
+# already generated such that `make' wouldn't attempt to rebuild it.
# So, we punt and arrange for the documentation files to depend on the
# dependencies of the executables, not on the executables themselves.
# But then, we have to build the executables explicitly in their build
# rules.
-INTDOC_DEPS = $(srcdir)/f/intdoc.c $(srcdir)/f/intrin.h $(srcdir)/f/intrin.def
+INTDOC_DEPS = f/intdoc.c f/intrin.h f/intrin.def
-$(srcdir)/f/intdoc.texi: $(INTDOC_DEPS) $(srcdir)/f/intdoc.in
+$(srcdir)/f/intdoc.texi: $(INTDOC_DEPS) f/intdoc.in
$(MAKE) f/intdoc$(build_exeext)
f/intdoc$(build_exeext) > $(srcdir)/f/intdoc.texi
f/intdoc$(build_exeext): $(INTDOC_DEPS) f/intdoc.h0 bconfig.h \
$(SYSTEM_H) coretypes.h $(TM_H) $(BUILD_LIBDEPS)
- $(CC_FOR_BUILD) $(BUILD_CFLAGS) $(BUILD_LDFLAGS) $(INCLUDES) \
- $(srcdir)/f/intdoc.c $(BUILD_LIBS) -o f/intdoc$(build_exeext)
+ $(CC_FOR_BUILD) $(BUILD_CFLAGS) $(BUILD_LDFLAGS) $(INCLUDES) $< \
+ $(BUILD_LIBS) -o $@
f/intdoc.h0: f/intdoc.in f/ansify$(build_exeext)
- f/ansify$(build_exeext) $(srcdir)/f/intdoc.in \
- < $(srcdir)/f/intdoc.in > f/intdoc.h0
+ f/ansify$(build_exeext) $< < $< > $@
f/ansify$(build_exeext): f/ansify.c bconfig.h $(SYSTEM_H) coretypes.h $(TM_H)
- $(CC_FOR_BUILD) $(BUILD_CFLAGS) $(BUILD_LDFLAGS) $(INCLUDES) \
- $(srcdir)/f/ansify.c -o f/ansify$(build_exeext)
-
-$(srcdir)/f/BUGS: f/bugs0.texi f/bugs.texi f/root.texi
- cd $(srcdir)/f; $(MAKEINFO) -D BUGSONLY --no-header --no-split \
- --no-validate -I../doc/include -o BUGS bugs0.texi
+ $(CC_FOR_BUILD) $(BUILD_CFLAGS) $(BUILD_LDFLAGS) $(INCLUDES) $< \
+ -o $@
-$(srcdir)/f/NEWS: f/news0.texi f/news.texi f/root.texi
- cd $(srcdir)/f; $(MAKEINFO) -D NEWSONLY --no-header --no-split \
- --no-validate -I../doc/include -o NEWS news0.texi
+f/BUGS: f/bugs0.texi f/bugs.texi f/root.texi
+ if [ x$(BUILD_INFO) = xinfo ]; then \
+ rm -f $(@)*; \
+ $(MAKEINFO) $(MAKEINFOFLAGS) -D BUGSONLY --no-header --no-split \
+ --no-validate -I$(docdir)/include -I$(srcdir)/f -o $@ bugs0.texi; \
+ else true; fi
-f77.rebuilt: $(docobjdir)/g77.info $(srcdir)/f/BUGS \
- $(srcdir)/f/NEWS
+f/NEWS: f/news0.texi f/news.texi f/root.texi
+ if [ x$(BUILD_INFO) = xinfo ]; then \
+ rm -f $(@)*; \
+ $(MAKEINFO) $(MAKEINFOFLAGS) -D NEWSONLY --no-header --no-split \
+ --no-validate -I$(docdir)/include -I$(srcdir)/f -o $@ news0.texi; \
+ else true; fi
#
# Install hooks:
@@ -266,12 +264,12 @@ f77.install-common: installdirs
install-info:: $(DESTDIR)$(infodir)/g77.info
-f77.install-man: $(GENERATED_MANPAGES) installdirs
- -if [ -f f771$(exeext) ] ; then \
- rm -f $(DESTDIR)$(man1dir)/$(G77_INSTALL_NAME)$(man1ext); \
- $(INSTALL_DATA) $(docobjdir)/g77.1 $(DESTDIR)$(man1dir)/$(G77_INSTALL_NAME)$(man1ext); \
- chmod a-x $(DESTDIR)$(man1dir)/$(G77_INSTALL_NAME)$(man1ext); \
- else true; fi
+f77.install-man: installdirs $(DESTDIR)$(man1dir)/$(G77_INSTALL_NAME)$(man1ext)
+
+$(DESTDIR)$(man1dir)/$(G77_INSTALL_NAME)$(man1ext): doc/g77.1
+ -rm -f $@
+ -$(INSTALL_DATA) $< $@
+ -chmod a-x $@
f77.uninstall: installdirs
if $(SHELL) -c 'install-info --version | sed 1q | fgrep -s -v -i debian' >/dev/null 2>&1; then \
@@ -290,7 +288,7 @@ f77.mostlyclean:
-rm -f f/*$(objext)
-rm -f f/*$(coverageexts)
-rm -f f/fini$(build_exeext) f/stamp-str f/str-*.h f/str-*.j
- -rm -f f/intdoc$(build_exeext) f/ansify$(build_exeext) f/intdoc.h0
+ -rm -f f/BUGS f/NEWS
-rm -f g77.aux g77.cps g77.ky g77.toc g77.vr g77.fn g77.kys \
g77.pg g77.tp g77.vrs g77.cp g77.fns g77.log g77.pgs g77.tps
f77.clean:
@@ -298,7 +296,8 @@ f77.clean:
f77.distclean:
-rm -f f/Makefile
f77.maintainer-clean:
- -rm -f f/g77.info* f/g77.*aux f/TAGS f/TAGS.sub f/BUGS f/NEWS f/intdoc.texi
+ -rm -f $(srcdir)/f/BUGS $(srcdir)/f/TAGS $(srcdir)/f/TAGS.SUB
+ -rm -f $(srcdir)/f/NEWS $(srcdir)/f/intdoc.texi
#
# Stage hooks:
# The main makefile has already created stage?/f.
diff --git a/gcc/f/g77.texi b/gcc/f/g77.texi
index 8eda9a9f457..b0d7805280e 100644
--- a/gcc/f/g77.texi
+++ b/gcc/f/g77.texi
@@ -2,8 +2,8 @@
@c %**start of header
@setfilename g77.info
-@set last-update 2003-05-13
-@set copyrights-g77 1995,1996,1997,1998,1999,2000,2001,2002,2003
+@set last-update 2004-03-21
+@set copyrights-g77 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004
@include root.texi
@@ -799,8 +799,8 @@ files and accepts Fortran-specific command-line options, plus some
command-line options that are designed to cater to Fortran users
but apply to other languages as well.
-@xref{G++ and GCC,,Compile C; C++; Objective-C; Ada; Fortran;
-or Java,gcc,Using the GNU Compiler Collection (GCC)},
+@xref{G++ and GCC,,Programming Languages Supported by GCC,gcc,Using
+the GNU Compiler Collection (GCC)},
for information on the way different languages are handled
by the GCC compiler (@command{gcc}).
@@ -851,7 +851,7 @@ by GNU Fortran.
@cindex textbooks
(If you need a text on Fortran,
a few freely available electronic references have pointers from
-@uref{http://www.fortran.com/fortran/Books/}. There is a `cooperative
+@uref{http://www.fortran.com/F/books.html}. There is a `cooperative
net project', @cite{User Notes on Fortran Programming} at
@uref{ftp://vms.huji.ac.il/fortran/} and mirrors elsewhere; some of this
material might not apply specifically to @command{g77}.)
@@ -7995,13 +7995,6 @@ Progress is being made on making this work
@command{gcc}, and some of the relevant operating systems
(such as GNU/Linux).
-@cindex alignment testing
-@cindex testing alignment
-A package that tests the degree to which a Fortran compiler
-(such as @command{g77})
-aligns 64-bit floating-point variables and arrays
-is available at @uref{ftp://alpha.gnu.org/gnu/g77/align/}.
-
@node Prefer Automatic Uninitialized Variables
@subsection Prefer Automatic Uninitialized Variables
@@ -8083,10 +8076,6 @@ Some of these problems are due to bugs in other software, some are
missing features that are too much work to add, and some are places
where people's opinions differ as to what is best.
-To find out about major bugs discovered in the current release and
-possible workarounds for them, see
-@uref{ftp://alpha.gnu.org/g77.plan}.
-
(Note that some of this portion of the manual is lifted
directly from the @command{gcc} manual, with minor modifications
to tailor it to users of @command{g77}.
@@ -8622,9 +8611,7 @@ Goldberg, `What Every Computer Scientist Should Know About
Floating-Point Arithmetic', Computing Surveys, 23, March 1991, pp.@:
5-48.
An online version is available at
-@uref{http://docs.sun.com/},
-and there is a supplemented version, in PostScript form, at
-@uref{http://www.validgh.com/goldberg/paper.ps}.
+@uref{http://docs.sun.com/}.
Information related to the IEEE 754
floating-point standard by a leading light can be found at
@@ -8637,9 +8624,7 @@ and library code for GNU/Linux x86 systems.
The supplement to the PostScript-formatted Goldberg document,
referenced above, is available in HTML format.
-See `Differences Among IEEE 754 Implementations' by Doug Priest,
-available online at
-@uref{http://www.validgh.com/goldberg/addendum.html}.
+See `Differences Among IEEE 754 Implementations' by Doug Priest.
This document explores some of the issues surrounding computing
of extended (80-bit) results on processors such as the x86,
especially when those results are arbitrarily truncated
@@ -10772,8 +10757,6 @@ are passed via this mechanism.
If you want to contribute to @command{g77} by doing research,
design, specification, documentation, coding, or testing,
the following information should give you some ideas.
-More relevant information might be available from
-@uref{ftp://alpha.gnu.org/gnu/g77/projects/}.
@menu
* Efficiency:: Make @command{g77} itself compile code faster.
diff --git a/gcc/f/g77spec.c b/gcc/f/g77spec.c
index b5404994c2d..3dca7bc4483 100644
--- a/gcc/f/g77spec.c
+++ b/gcc/f/g77spec.c
@@ -1,5 +1,5 @@
/* Specific flags and argument handling of the Fortran front-end.
- Copyright (C) 1997, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1997, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -50,6 +50,7 @@ Boston, MA 02111-1307, USA. */
#include "coretypes.h"
#include "tm.h"
#include "gcc.h"
+#include "intl.h"
#ifndef MATH_LIBRARY
#define MATH_LIBRARY "-lm"
@@ -345,16 +346,17 @@ lang_specific_driver (int *in_argc, const char *const **in_argv,
break;
case OPTION_version:
- printf ("\
-GNU Fortran (GCC) %s\n\
-Copyright (C) 2002 Free Software Foundation, Inc.\n\
-\n\
+ printf ("GNU Fortran (GCC) %s\n", version_string);
+ printf ("Copyright %s 2004 Free Software Foundation, Inc.\n",
+ _("(C)"));
+ printf ("\n");
+ printf (_("\
GNU Fortran comes with NO WARRANTY, to the extent permitted by law.\n\
You may redistribute copies of GNU Fortran\n\
under the terms of the GNU General Public License.\n\
For more information about these matters, see the file named COPYING\n\
or type the command `info -f g77 Copying'.\n\
-", version_string);
+"));
exit (0);
break;
diff --git a/gcc/f/invoke.texi b/gcc/f/invoke.texi
index 3079d70d09c..fd1b80412a6 100644
--- a/gcc/f/invoke.texi
+++ b/gcc/f/invoke.texi
@@ -1,11 +1,11 @@
-@c Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002
+@c Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2004
@c Free Software Foundation, Inc.
@c This is part of the G77 manual.
@c For copying conditions, see the file g77.texi.
@ignore
@c man begin COPYRIGHT
-Copyright @copyright{} 1996, 1997, 1998, 1999, 2000, 2001, 2002
+Copyright @copyright{} 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2004
Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
@@ -300,9 +300,7 @@ preprocessor directive must be used instead.
Ratfor source code, which must be preprocessed by the @command{ratfor}
command, which is available separately (as it is not yet part of the GNU
Fortran distribution).
-One version in Fortran, adapted for use with @command{g77} is at
-@uref{ftp://members.aol.com/n8tm/rat7.uue} (of uncertain copyright
-status). Another, public domain version in C is at
+A public domain version in C is at
@uref{http://sepwww.stanford.edu/sep/prof/ratfor.shar.2}.
@end table
diff --git a/gcc/f/lex.c b/gcc/f/lex.c
index 3be91b68298..8475d2ff2c3 100644
--- a/gcc/f/lex.c
+++ b/gcc/f/lex.c
@@ -694,7 +694,13 @@ ffelex_cfelex_ (ffelexToken *xtoken, FILE *finput, int c)
register unsigned bytes_used = (p - q);
buffer_length *= 2;
- q = xrealloc (q, buffer_length);
+ if (q == &buff[0])
+ {
+ q = xmalloc (buffer_length);
+ memcpy (q, buff, bytes_used);
+ }
+ else
+ q = xrealloc (q, buffer_length);
p = &q[bytes_used];
r = &q[buffer_length];
}
@@ -754,7 +760,13 @@ ffelex_cfelex_ (ffelexToken *xtoken, FILE *finput, int c)
register unsigned bytes_used = (p - q);
buffer_length = bytes_used * 2;
- q = xrealloc (q, buffer_length);
+ if (q == &buff[0])
+ {
+ q = xmalloc (buffer_length);
+ memcpy (q, buff, bytes_used);
+ }
+ else
+ q = xrealloc (q, buffer_length);
p = &q[bytes_used];
r = &q[buffer_length];
}
diff --git a/gcc/f/parse.c b/gcc/f/parse.c
index e21dcce87b2..d822773f35b 100644
--- a/gcc/f/parse.c
+++ b/gcc/f/parse.c
@@ -31,6 +31,7 @@ extern FILE *finput;
void
ffe_parse_file (int set_yydebug ATTRIBUTE_UNUSED)
{
+ const char *fname;
ffewhereFile wf;
if (ffe_is_version ())
@@ -39,8 +40,9 @@ ffe_parse_file (int set_yydebug ATTRIBUTE_UNUSED)
if (!ffe_is_pedantic ())
ffe_set_is_pedantic (pedantic);
- wf = ffewhere_file_new (main_input_filename, strlen (main_input_filename));
- ffecom_file (main_input_filename);
+ fname = main_input_filename ? main_input_filename : "<stdin>";
+ wf = ffewhere_file_new (fname, strlen (fname));
+ ffecom_file (fname);
ffe_file (wf, finput);
ffecom_finish_compile ();
diff --git a/gcc/f/root.texi b/gcc/f/root.texi
index d8619cc376d..1956abca3c3 100644
--- a/gcc/f/root.texi
+++ b/gcc/f/root.texi
@@ -11,4 +11,4 @@
@set which-gcc GCC
@set email-burley craig@@jcb-sc.com
-@set www-burley http://world.std.com/%7Eburley
+@set www-burley http://world.std.com/%7Eburley/
diff --git a/gcc/f/sta.c b/gcc/f/sta.c
index 4b26d8cecd8..ee75fa88f60 100644
--- a/gcc/f/sta.c
+++ b/gcc/f/sta.c
@@ -335,7 +335,7 @@ ffesta_save_ (ffelexToken t)
{ /* No handler in this list, try exec list if
not tried yet. */
if (ffesta_current_possible_
- == (ffestaPossible_) &ffesta_possible_nonexecs_)
+ == (ffestaPossible_) &ffesta_possible_nonexecs_.first)
{
ffesta_current_possible_ = ffesta_possible_execs_.first;
ffesta_current_handler_ = ffesta_current_possible_->handler;
@@ -379,7 +379,7 @@ ffesta_save_ (ffelexToken t)
{
if (possible->handler == NULL)
{
- if (possible == (ffestaPossible_) &ffesta_possible_nonexecs_)
+ if (possible == (ffestaPossible_) &ffesta_possible_nonexecs_.first)
{
possible = first_exec = ffesta_possible_execs_.first;
continue;
diff --git a/gcc/final.c b/gcc/final.c
index fbbff317d5e..dd5b64ec53f 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -111,6 +111,11 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#define HAVE_READONLY_DATA_SECTION 0
#endif
+/* Bitflags used by final_scan_insn. */
+#define SEEN_BB 1
+#define SEEN_NOTE 2
+#define SEEN_EMITTED 4
+
/* Last insn processed by final_scan_insn. */
static rtx debug_insn;
rtx current_output_insn;
@@ -201,10 +206,6 @@ rtx final_sequence;
static int dialect_number;
#endif
-/* Indexed by line number, nonzero if there is a note for that line. */
-
-static char *line_note_exists;
-
#ifdef HAVE_conditional_execution
/* Nonnull if the insn currently being emitted was a COND_EXEC pattern. */
rtx current_insn_predicate;
@@ -1500,16 +1501,15 @@ void
final (rtx first, FILE *file, int optimize, int prescan)
{
rtx insn;
- int max_line = 0;
int max_uid = 0;
+ int seen = 0;
last_ignored_compare = 0;
- /* Make a map indicating which line numbers appear in this function.
- When producing SDB debugging info, delete troublesome line number
+#ifdef SDB_DEBUGGING_INFO
+ /* When producing SDB debugging info, delete troublesome line number
notes from inlined functions in other files as well as duplicate
line number notes. */
-#ifdef SDB_DEBUGGING_INFO
if (write_symbols == SDB_DEBUG)
{
rtx last = 0;
@@ -1518,34 +1518,22 @@ final (rtx first, FILE *file, int optimize, int prescan)
{
if ((RTX_INTEGRATED_P (insn)
&& strcmp (NOTE_SOURCE_FILE (insn), main_input_filename) != 0)
- || (last != 0
- && NOTE_LINE_NUMBER (insn) == NOTE_LINE_NUMBER (last)
- && NOTE_SOURCE_FILE (insn) == NOTE_SOURCE_FILE (last)))
+ || (last != 0
+ && NOTE_LINE_NUMBER (insn) == NOTE_LINE_NUMBER (last)
+ && NOTE_SOURCE_FILE (insn) == NOTE_SOURCE_FILE (last)))
{
delete_insn (insn); /* Use delete_note. */
continue;
}
last = insn;
- if (NOTE_LINE_NUMBER (insn) > max_line)
- max_line = NOTE_LINE_NUMBER (insn);
}
}
- else
#endif
- {
- for (insn = first; insn; insn = NEXT_INSN (insn))
- if (GET_CODE (insn) == NOTE && NOTE_LINE_NUMBER (insn) > max_line)
- max_line = NOTE_LINE_NUMBER (insn);
- }
-
- line_note_exists = xcalloc (max_line + 1, sizeof (char));
for (insn = first; insn; insn = NEXT_INSN (insn))
{
if (INSN_UID (insn) > max_uid) /* Find largest UID. */
max_uid = INSN_UID (insn);
- if (GET_CODE (insn) == NOTE && NOTE_LINE_NUMBER (insn) > 0)
- line_note_exists[NOTE_LINE_NUMBER (insn)] = 1;
#ifdef HAVE_cc0
/* If CC tracking across branches is enabled, record the insn which
jumps to each branch only reached from one place. */
@@ -1581,11 +1569,8 @@ final (rtx first, FILE *file, int optimize, int prescan)
insn_current_address = INSN_ADDRESSES (INSN_UID (insn));
#endif /* HAVE_ATTR_length */
- insn = final_scan_insn (insn, file, optimize, prescan, 0);
+ insn = final_scan_insn (insn, file, optimize, prescan, 0, &seen);
}
-
- free (line_note_exists);
- line_note_exists = NULL;
}
const char *
@@ -1644,11 +1629,18 @@ output_alternate_entry_point (FILE *file, rtx insn)
Value returned is the next insn to be scanned.
NOPEEPHOLES is the flag to disallow peephole processing (currently
- used for within delayed branch sequence output). */
+ used for within delayed branch sequence output).
+
+ SEEN is used to track the end of the prologue, for emitting
+ debug information. We force the emission of a line note after
+ both NOTE_INSN_PROLOGUE_END and NOTE_INSN_FUNCTION_BEG, or
+ at the beginning of the second basic block, whichever comes
+ first. */
rtx
final_scan_insn (rtx insn, FILE *file, int optimize ATTRIBUTE_UNUSED,
- int prescan, int nopeepholes ATTRIBUTE_UNUSED)
+ int prescan, int nopeepholes ATTRIBUTE_UNUSED,
+ int *seen)
{
#ifdef HAVE_cc0
rtx set;
@@ -1687,6 +1679,15 @@ final_scan_insn (rtx insn, FILE *file, int optimize ATTRIBUTE_UNUSED,
if (flag_debug_asm)
fprintf (asm_out_file, "\t%s basic block %d\n",
ASM_COMMENT_START, NOTE_BASIC_BLOCK (insn)->index);
+
+ if ((*seen & (SEEN_EMITTED | SEEN_BB)) == SEEN_BB)
+ {
+ *seen |= SEEN_EMITTED;
+ last_filename = NULL;
+ }
+ else
+ *seen |= SEEN_BB;
+
break;
case NOTE_INSN_EH_REGION_BEG:
@@ -1702,6 +1703,15 @@ final_scan_insn (rtx insn, FILE *file, int optimize ATTRIBUTE_UNUSED,
case NOTE_INSN_PROLOGUE_END:
(*targetm.asm_out.function_end_prologue) (file);
profile_after_prologue (file);
+
+ if ((*seen & (SEEN_EMITTED | SEEN_NOTE)) == SEEN_NOTE)
+ {
+ *seen |= SEEN_EMITTED;
+ last_filename = NULL;
+ }
+ else
+ *seen |= SEEN_NOTE;
+
break;
case NOTE_INSN_EPILOGUE_BEG:
@@ -1711,6 +1721,15 @@ final_scan_insn (rtx insn, FILE *file, int optimize ATTRIBUTE_UNUSED,
case NOTE_INSN_FUNCTION_BEG:
app_disable ();
(*debug_hooks->end_prologue) (last_linenum, last_filename);
+
+ if ((*seen & (SEEN_EMITTED | SEEN_NOTE)) == SEEN_NOTE)
+ {
+ *seen |= SEEN_EMITTED;
+ last_filename = NULL;
+ }
+ else
+ *seen |= SEEN_NOTE;
+
break;
case NOTE_INSN_BLOCK_BEG:
@@ -2084,7 +2103,7 @@ final_scan_insn (rtx insn, FILE *file, int optimize ATTRIBUTE_UNUSED,
thought unnecessary. If that happens, cancel this sequence
and cause that insn to be restored. */
- next = final_scan_insn (XVECEXP (body, 0, 0), file, 0, prescan, 1);
+ next = final_scan_insn (XVECEXP (body, 0, 0), file, 0, prescan, 1, seen);
if (next != XVECEXP (body, 0, 1))
{
final_sequence = 0;
@@ -2098,7 +2117,7 @@ final_scan_insn (rtx insn, FILE *file, int optimize ATTRIBUTE_UNUSED,
/* We loop in case any instruction in a delay slot gets
split. */
do
- insn = final_scan_insn (insn, file, 0, prescan, 1);
+ insn = final_scan_insn (insn, file, 0, prescan, 1, seen);
while (insn != next);
}
#ifdef DBR_OUTPUT_SEQEND
@@ -2302,7 +2321,7 @@ final_scan_insn (rtx insn, FILE *file, int optimize ATTRIBUTE_UNUSED,
for (note = NEXT_INSN (insn); note != next;
note = NEXT_INSN (note))
- final_scan_insn (note, file, optimize, prescan, nopeepholes);
+ final_scan_insn (note, file, optimize, prescan, nopeepholes, seen);
/* In case this is prescan, put the notes
in proper position for later rescan. */
diff --git a/gcc/fix-header.c b/gcc/fix-header.c
index ad23793a406..88390e3e537 100644
--- a/gcc/fix-header.c
+++ b/gcc/fix-header.c
@@ -1,6 +1,6 @@
/* fix-header.c - Make C header file suitable for C++.
Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
@@ -604,9 +604,8 @@ read_scan_file (char *in_fname, int argc, char **argv)
options->inhibit_errors = 1;
cpp_post_options (scan_in);
- if (!cpp_find_main_file (scan_in, in_fname))
+ if (!cpp_read_main_file (scan_in, in_fname))
exit (FATAL_EXIT_CODE);
- cpp_push_main_file (scan_in);
cpp_change_file (scan_in, LC_RENAME, "<built-in>");
cpp_init_builtins (scan_in, true);
diff --git a/gcc/fixinc/fixincl.x b/gcc/fixinc/fixincl.x
index 160960563ab..614bd5c860d 100644
--- a/gcc/fixinc/fixincl.x
+++ b/gcc/fixinc/fixincl.x
@@ -2,11 +2,11 @@
*
* DO NOT EDIT THIS FILE (fixincl.x)
*
- * It has been AutoGen-ed Thursday December 18, 2003 at 01:49:23 PM PST
+ * It has been AutoGen-ed Thursday April 8, 2004 at 09:06:18 AM UTC
* From the definitions inclhack.def
* and the template file fixincl
*/
-/* DO NOT CVS-MERGE THIS FILE, EITHER Thu Dec 18 13:49:23 PST 2003
+/* DO NOT CVS-MERGE THIS FILE, EITHER Thu Apr 8 09:06:18 UTC 2004
*
* You must regenerate it. Use the ./genfixes script.
*
@@ -15,7 +15,7 @@
* certain ANSI-incompatible system header files which are fixed to work
* correctly with ANSI C and placed in a directory that GNU C will search.
*
- * This file contains 163 fixup descriptions.
+ * This file contains 174 fixup descriptions.
*
* See README for more information.
*
@@ -727,20 +727,20 @@ tSCC zAlpha___Extern_PrefixName[] =
/*
* File name selection pattern
*/
-tSCC zAlpha___Extern_PrefixList[] =
- "|sys/stat.h|";
+#define zAlpha___Extern_PrefixList (char*)NULL
/*
* Machine/OS name selection pattern
*/
tSCC* apzAlpha___Extern_PrefixMachs[] = {
- "alpha*-dec-osf5*",
+ "alpha*-dec-osf*",
(const char*)NULL };
/*
* content selection pattern - do fix if pattern found
*/
tSCC zAlpha___Extern_PrefixSelect0[] =
- "#[ \t]*if[ \t]*defined\\(__DECC\\)";
+ "(.*)(defined\\(__DECC\\)|def[ \t]*__DECC)[ \t]*\n\
+(#[ \t]*pragma[ \t]*extern_prefix.*)";
#define ALPHA___EXTERN_PREFIX_TEST_CT 1
static tTestDesc aAlpha___Extern_PrefixTests[] = {
@@ -751,6 +751,81 @@ static tTestDesc aAlpha___Extern_PrefixTests[] = {
*/
static const char* apzAlpha___Extern_PrefixPatch[] = {
"format",
+ "%1 (defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX))\n\
+%3",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ * Description of Alpha___Extern_Prefix_Standards fix
+ */
+tSCC zAlpha___Extern_Prefix_StandardsName[] =
+ "alpha___extern_prefix_standards";
+
+/*
+ * File name selection pattern
+ */
+tSCC zAlpha___Extern_Prefix_StandardsList[] =
+ "|standards.h|";
+/*
+ * Machine/OS name selection pattern
+ */
+tSCC* apzAlpha___Extern_Prefix_StandardsMachs[] = {
+ "alpha*-dec-osf*",
+ (const char*)NULL };
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zAlpha___Extern_Prefix_StandardsSelect0[] =
+ ".*!defined\\(_LIBC_POLLUTION_H_\\) && !defined\\(__DECC\\)";
+
+#define ALPHA___EXTERN_PREFIX_STANDARDS_TEST_CT 1
+static tTestDesc aAlpha___Extern_Prefix_StandardsTests[] = {
+ { TT_EGREP, zAlpha___Extern_Prefix_StandardsSelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Alpha___Extern_Prefix_Standards
+ */
+static const char* apzAlpha___Extern_Prefix_StandardsPatch[] = {
+ "format",
+ "%0 && !defined(__PRAGMA_EXTERN_PREFIX)",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ * Description of Alpha___Extern_Prefix_Sys_Stat fix
+ */
+tSCC zAlpha___Extern_Prefix_Sys_StatName[] =
+ "alpha___extern_prefix_sys_stat";
+
+/*
+ * File name selection pattern
+ */
+tSCC zAlpha___Extern_Prefix_Sys_StatList[] =
+ "|sys/stat.h|sys/mount.h|";
+/*
+ * Machine/OS name selection pattern
+ */
+tSCC* apzAlpha___Extern_Prefix_Sys_StatMachs[] = {
+ "alpha*-dec-osf5*",
+ (const char*)NULL };
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zAlpha___Extern_Prefix_Sys_StatSelect0[] =
+ "#[ \t]*if[ \t]*defined\\(__DECC\\)";
+
+#define ALPHA___EXTERN_PREFIX_SYS_STAT_TEST_CT 1
+static tTestDesc aAlpha___Extern_Prefix_Sys_StatTests[] = {
+ { TT_EGREP, zAlpha___Extern_Prefix_Sys_StatSelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Alpha___Extern_Prefix_Sys_Stat
+ */
+static const char* apzAlpha___Extern_Prefix_Sys_StatPatch[] = {
+ "format",
"%0 || defined(__PRAGMA_EXTERN_PREFIX)",
(char*)NULL };
@@ -791,6 +866,41 @@ static const char* apzAlpha_AssertPatch[] = {
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
+ * Description of Alpha_Bad_Lval fix
+ */
+tSCC zAlpha_Bad_LvalName[] =
+ "alpha_bad_lval";
+
+/*
+ * File name selection pattern
+ */
+#define zAlpha_Bad_LvalList (char*)NULL
+/*
+ * Machine/OS name selection pattern
+ */
+tSCC* apzAlpha_Bad_LvalMachs[] = {
+ "alpha*-dec-osf*",
+ (const char*)NULL };
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zAlpha_Bad_LvalSelect0[] =
+ "^[ \t]*#[ \t]*pragma[ \t]+extern_prefix";
+
+#define ALPHA_BAD_LVAL_TEST_CT 1
+static tTestDesc aAlpha_Bad_LvalTests[] = {
+ { TT_EGREP, zAlpha_Bad_LvalSelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Alpha_Bad_Lval
+ */
+static const char* apzAlpha_Bad_LvalPatch[] = { "sed",
+ "-e", "s/^[ \t]*#[ \t]*define[ \t][ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*\\(_.*\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
* Description of Alpha_Getopt fix
*/
tSCC zAlpha_GetoptName[] =
@@ -882,7 +992,7 @@ tSCC* apzAlpha_PthreadMachs[] = {
* content selection pattern - do fix if pattern found
*/
tSCC zAlpha_PthreadSelect0[] =
- "(#[ \t]*if defined \\(_PTHREAD_ENV_DECC\\) || defined \\(_PTHREAD_ENV_EPCC\\))\n\
+ "((#[ \t]*if)([ \t]*defined[ \t]*\\(_PTHREAD_ENV_DECC\\)|def _PTHREAD_ENV_DECC)(.*))\n\
(#[ \t]*define _PTHREAD_USE_PTDNAM_)";
#define ALPHA_PTHREAD_TEST_CT 1
@@ -894,8 +1004,8 @@ static tTestDesc aAlpha_PthreadTests[] = {
*/
static const char* apzAlpha_PthreadPatch[] = {
"format",
- "%1 || defined (__PRAGMA_EXTERN_PREFIX)\n\
-%2",
+ "%2 defined (_PTHREAD_ENV_DECC)%4 || defined (__PRAGMA_EXTERN_PREFIX)\n\
+%5",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -1150,40 +1260,6 @@ static const char* apzAvoid_Wchar_T_TypePatch[] = {
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
- * Description of Bad_Lval fix
- */
-tSCC zBad_LvalName[] =
- "bad_lval";
-
-/*
- * File name selection pattern
- */
-tSCC zBad_LvalList[] =
- "|libgen.h|dirent.h|ftw.h|grp.h|ndbm.h|pthread.h|pwd.h|signal.h|standards.h|stdlib.h|string.h|stropts.h|time.h|unistd.h|";
-/*
- * Machine/OS name selection pattern
- */
-#define apzBad_LvalMachs (const char**)NULL
-
-/*
- * content selection pattern - do fix if pattern found
- */
-tSCC zBad_LvalSelect0[] =
- "^[ \t]*#[ \t]*pragma[ \t]+extern_prefix";
-
-#define BAD_LVAL_TEST_CT 1
-static tTestDesc aBad_LvalTests[] = {
- { TT_EGREP, zBad_LvalSelect0, (regex_t*)NULL }, };
-
-/*
- * Fix Command Arguments for Bad_Lval
- */
-static const char* apzBad_LvalPatch[] = { "sed",
- "-e", "s/^[ \t]*#[ \t]*define[ \t][ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*\\(_.*\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/",
- (char*)NULL };
-
-/* * * * * * * * * * * * * * * * * * * * * * * * * *
- *
* Description of Bad_Struct_Term fix
*/
tSCC zBad_Struct_TermName[] =
@@ -1676,6 +1752,48 @@ static const char* apzEcd_CursorPatch[] = {
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
+ * Description of Exception_Structure fix
+ */
+tSCC zException_StructureName[] =
+ "exception_structure";
+
+/*
+ * File name selection pattern
+ */
+tSCC zException_StructureList[] =
+ "|math.h|";
+/*
+ * Machine/OS name selection pattern
+ */
+#define apzException_StructureMachs (const char**)NULL
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zException_StructureSelect0[] =
+ "matherr";
+
+/*
+ * content bypass pattern - skip fix if pattern found
+ */
+tSCC zException_StructureBypass0[] =
+ "matherr.*(struct exception|__MATH_EXCEPTION)";
+
+#define EXCEPTION_STRUCTURE_TEST_CT 2
+static tTestDesc aException_StructureTests[] = {
+ { TT_NEGREP, zException_StructureBypass0, (regex_t*)NULL },
+ { TT_EGREP, zException_StructureSelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Exception_Structure
+ */
+static const char* apzException_StructurePatch[] = {
+ "wrap",
+ "struct exception;\n",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
* Description of Freebsd_Gcc3_Breakage fix
*/
tSCC zFreebsd_Gcc3_BreakageName[] =
@@ -2028,6 +2146,55 @@ static const char* apzHpux10_Ctype_Declarations2Patch[] = {
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
+ * Description of Hpux10_Stdio_Declarations fix
+ */
+tSCC zHpux10_Stdio_DeclarationsName[] =
+ "hpux10_stdio_declarations";
+
+/*
+ * File name selection pattern
+ */
+tSCC zHpux10_Stdio_DeclarationsList[] =
+ "|stdio.h|";
+/*
+ * Machine/OS name selection pattern
+ */
+#define apzHpux10_Stdio_DeclarationsMachs (const char**)NULL
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zHpux10_Stdio_DeclarationsSelect0[] =
+ "^#[ \t]*define _iob[ \t]*__iob";
+
+/*
+ * content bypass pattern - skip fix if pattern found
+ */
+tSCC zHpux10_Stdio_DeclarationsBypass0[] =
+ "^[ \t]*extern[ \t]*int[ \t]*vsnprintf[ \t]*\\(";
+
+#define HPUX10_STDIO_DECLARATIONS_TEST_CT 2
+static tTestDesc aHpux10_Stdio_DeclarationsTests[] = {
+ { TT_NEGREP, zHpux10_Stdio_DeclarationsBypass0, (regex_t*)NULL },
+ { TT_EGREP, zHpux10_Stdio_DeclarationsSelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Hpux10_Stdio_Declarations
+ */
+static const char* apzHpux10_Stdio_DeclarationsPatch[] = {
+ "format",
+ "%0\n\n\
+# if defined(__STDC__) || defined(__cplusplus)\n\
+ extern int snprintf(char *, size_t, const char *, ...);\n\
+ extern int vsnprintf(char *, size_t, const char *, __va_list);\n\
+# else /* not __STDC__) || __cplusplus */\n\
+ extern int snprintf();\n\
+ extern int vsnprintf();\n\
+# endif /* __STDC__) || __cplusplus */\n",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
* Description of Hpux11_Abs fix
*/
tSCC zHpux11_AbsName[] =
@@ -3219,7 +3386,7 @@ tSCC zMath_ExceptionSelect0[] =
* content bypass pattern - skip fix if pattern found
*/
tSCC zMath_ExceptionBypass0[] =
- "__cplusplus";
+ "We have a problem when using C\\+\\+";
#define MATH_EXCEPTION_TEST_CT 2
static tTestDesc aMath_ExceptionTests[] = {
@@ -3852,6 +4019,78 @@ static const char* apzRead_Ret_TypePatch[] = {
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
+ * Description of Rpc_Xdr_Lvalue_Cast_A fix
+ */
+tSCC zRpc_Xdr_Lvalue_Cast_AName[] =
+ "rpc_xdr_lvalue_cast_a";
+
+/*
+ * File name selection pattern
+ */
+tSCC zRpc_Xdr_Lvalue_Cast_AList[] =
+ "|rpc/xdr.h|";
+/*
+ * Machine/OS name selection pattern
+ */
+#define apzRpc_Xdr_Lvalue_Cast_AMachs (const char**)NULL
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zRpc_Xdr_Lvalue_Cast_ASelect0[] =
+ "#define[ \t]*IXDR_GET_LONG.*\\\\\n\
+.*__extension__.*";
+
+#define RPC_XDR_LVALUE_CAST_A_TEST_CT 1
+static tTestDesc aRpc_Xdr_Lvalue_Cast_ATests[] = {
+ { TT_EGREP, zRpc_Xdr_Lvalue_Cast_ASelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Rpc_Xdr_Lvalue_Cast_A
+ */
+static const char* apzRpc_Xdr_Lvalue_Cast_APatch[] = {
+ "format",
+ "#define IXDR_GET_LONG(buf) ((long)IXDR_GET_U_INT32(buf))",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ * Description of Rpc_Xdr_Lvalue_Cast_B fix
+ */
+tSCC zRpc_Xdr_Lvalue_Cast_BName[] =
+ "rpc_xdr_lvalue_cast_b";
+
+/*
+ * File name selection pattern
+ */
+tSCC zRpc_Xdr_Lvalue_Cast_BList[] =
+ "|rpc/xdr.h|";
+/*
+ * Machine/OS name selection pattern
+ */
+#define apzRpc_Xdr_Lvalue_Cast_BMachs (const char**)NULL
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zRpc_Xdr_Lvalue_Cast_BSelect0[] =
+ "#define[ \t]*IXDR_PUT_LONG.*\\\\\n\
+.*__extension__.*";
+
+#define RPC_XDR_LVALUE_CAST_B_TEST_CT 1
+static tTestDesc aRpc_Xdr_Lvalue_Cast_BTests[] = {
+ { TT_EGREP, zRpc_Xdr_Lvalue_Cast_BSelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Rpc_Xdr_Lvalue_Cast_B
+ */
+static const char* apzRpc_Xdr_Lvalue_Cast_BPatch[] = {
+ "format",
+ "#define IXDR_PUT_LONG(buf, v) ((long)IXDR_PUT_INT32(buf, (long)(v)))",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
* Description of Rs6000_Double fix
*/
tSCC zRs6000_DoubleName[] =
@@ -4907,48 +5146,6 @@ void\t(*signal(...))(...);\n\
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
- * Description of Sunos_Matherr_Decl fix
- */
-tSCC zSunos_Matherr_DeclName[] =
- "sunos_matherr_decl";
-
-/*
- * File name selection pattern
- */
-tSCC zSunos_Matherr_DeclList[] =
- "|math.h|";
-/*
- * Machine/OS name selection pattern
- */
-#define apzSunos_Matherr_DeclMachs (const char**)NULL
-
-/*
- * content selection pattern - do fix if pattern found
- */
-tSCC zSunos_Matherr_DeclSelect0[] =
- "matherr";
-
-/*
- * content bypass pattern - skip fix if pattern found
- */
-tSCC zSunos_Matherr_DeclBypass0[] =
- "matherr.*(struct exception|__MATH_EXCEPTION)";
-
-#define SUNOS_MATHERR_DECL_TEST_CT 2
-static tTestDesc aSunos_Matherr_DeclTests[] = {
- { TT_NEGREP, zSunos_Matherr_DeclBypass0, (regex_t*)NULL },
- { TT_EGREP, zSunos_Matherr_DeclSelect0, (regex_t*)NULL }, };
-
-/*
- * Fix Command Arguments for Sunos_Matherr_Decl
- */
-static const char* apzSunos_Matherr_DeclPatch[] = {
- "wrap",
- "struct exception;\n",
- (char*)NULL };
-
-/* * * * * * * * * * * * * * * * * * * * * * * * * *
- *
* Description of Sunos_Strlen fix
*/
tSCC zSunos_StrlenName[] =
@@ -5526,6 +5723,42 @@ static const char* apzUltrix_Const2Patch[] = {
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
+ * Description of Ultrix_Const3 fix
+ */
+tSCC zUltrix_Const3Name[] =
+ "ultrix_const3";
+
+/*
+ * File name selection pattern
+ */
+tSCC zUltrix_Const3List[] =
+ "|stdio.h|";
+/*
+ * Machine/OS name selection pattern
+ */
+#define apzUltrix_Const3Machs (const char**)NULL
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zUltrix_Const3Select0[] =
+ "fdopen\\( .*, char \\*";
+
+#define ULTRIX_CONST3_TEST_CT 1
+static tTestDesc aUltrix_Const3Tests[] = {
+ { TT_EGREP, zUltrix_Const3Select0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Ultrix_Const3
+ */
+static const char* apzUltrix_Const3Patch[] = {
+ "format",
+ "%1 const %3 *__",
+ "([ \t*](fdopen)\\(.*)[ \t]+(char|void) \\*__",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
* Description of Ultrix_Fix_Fixproto fix
*/
tSCC zUltrix_Fix_FixprotoName[] =
@@ -5598,6 +5831,40 @@ static const char* apzUltrix_IfdefPatch[] = {
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
+ * Description of Ultrix_Locale fix
+ */
+tSCC zUltrix_LocaleName[] =
+ "ultrix_locale";
+
+/*
+ * File name selection pattern
+ */
+tSCC zUltrix_LocaleList[] =
+ "|locale.h|";
+/*
+ * Machine/OS name selection pattern
+ */
+#define apzUltrix_LocaleMachs (const char**)NULL
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zUltrix_LocaleSelect0[] =
+ "@\\(#\\)locale\\.h.*6\\.1.*\\(ULTRIX\\)";
+
+#define ULTRIX_LOCALE_TEST_CT 1
+static tTestDesc aUltrix_LocaleTests[] = {
+ { TT_EGREP, zUltrix_LocaleSelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Ultrix_Locale
+ */
+static const char* apzUltrix_LocalePatch[] = {
+ "wrap",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
* Description of Ultrix_Math_Ifdef fix
*/
tSCC zUltrix_Math_IfdefName[] =
@@ -5776,6 +6043,47 @@ static const char* apzUltrix_StaticPatch[] = { "sed",
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
+ * Description of Ultrix_Stdlib fix
+ */
+tSCC zUltrix_StdlibName[] =
+ "ultrix_stdlib";
+
+/*
+ * File name selection pattern
+ */
+tSCC zUltrix_StdlibList[] =
+ "|stdlib.h|";
+/*
+ * Machine/OS name selection pattern
+ */
+#define apzUltrix_StdlibMachs (const char**)NULL
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zUltrix_StdlibSelect0[] =
+ "@\\(#\\)stdlib\\.h.*6\\.1.*\\(ULTRIX\\)";
+
+#define ULTRIX_STDLIB_TEST_CT 1
+static tTestDesc aUltrix_StdlibTests[] = {
+ { TT_EGREP, zUltrix_StdlibSelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Ultrix_Stdlib
+ */
+static const char* apzUltrix_StdlibPatch[] = { "sed",
+ "-e", "/^char.*getenv( const char .* );.*$/a\\\n\
+int\t\tsetenv( const char *__name, const char *__val, int __ovrwrt );\\\n\
+void\t\tunsetenv( const char *__name );\\\n\
+int\t\tputenv( char *__s );\n",
+ "-e", "/^char.*getenv();.*$/a\\\n\
+int\tsetenv();\\\n\
+void\tunsetenv();\\\n\
+int\tputenv();\n",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
* Description of Ultrix_Strings fix
*/
tSCC zUltrix_StringsName[] =
@@ -5810,6 +6118,139 @@ static const char* apzUltrix_StringsPatch[] = {
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
+ * Description of Ultrix_Strings2 fix
+ */
+tSCC zUltrix_Strings2Name[] =
+ "ultrix_strings2";
+
+/*
+ * File name selection pattern
+ */
+tSCC zUltrix_Strings2List[] =
+ "|strings.h|";
+/*
+ * Machine/OS name selection pattern
+ */
+#define apzUltrix_Strings2Machs (const char**)NULL
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zUltrix_Strings2Select0[] =
+ "@\\(#\\)strings\\.h.*6\\.1.*\\(ULTRIX\\)";
+
+#define ULTRIX_STRINGS2_TEST_CT 1
+static tTestDesc aUltrix_Strings2Tests[] = {
+ { TT_EGREP, zUltrix_Strings2Select0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Ultrix_Strings2
+ */
+static const char* apzUltrix_Strings2Patch[] = { "sed",
+ "-e", "/^.*strncmp( const .* );.*/a\\\n\
+\\\n\
+extern int\\\n\
+\tstrcasecmp( const char *__s1, const char *__s2),\\\n\
+\tstrncasecmp( const char *__s1, const char *__s2, size_t __n );\n",
+ "-e", "/^.*strncmp();.*/a\\\n\
+extern int\\\n\
+\tstrcasecmp(),\\\n\
+\tstrncasecmp();\n",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ * Description of Ultrix_Sys_Time fix
+ */
+tSCC zUltrix_Sys_TimeName[] =
+ "ultrix_sys_time";
+
+/*
+ * File name selection pattern
+ */
+tSCC zUltrix_Sys_TimeList[] =
+ "|sys/time.h|";
+/*
+ * Machine/OS name selection pattern
+ */
+#define apzUltrix_Sys_TimeMachs (const char**)NULL
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zUltrix_Sys_TimeSelect0[] =
+ "@\\(#\\)time\\.h.*6\\.1.*\\(ULTRIX\\)";
+
+#define ULTRIX_SYS_TIME_TEST_CT 1
+static tTestDesc aUltrix_Sys_TimeTests[] = {
+ { TT_EGREP, zUltrix_Sys_TimeSelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Ultrix_Sys_Time
+ */
+static const char* apzUltrix_Sys_TimePatch[] = { "sed",
+ "-e", "/^extern.*time_t.*time( time_t .* );.*$/a\\\n\
+\\\n\
+extern int adjtime(struct timeval *, struct timeval *);\\\n\
+extern int getitimer(int, struct itimerval *);\\\n\
+extern int setitimer(int, struct itimerval *, struct itimerval *);\\\n\
+extern int gettimeofday(struct timeval *, struct timezone *);\\\n\
+extern int settimeofday(struct timeval *, struct timezone *);\\\n\
+extern void profil(const void *, size_t, size_t, unsigned int);\\\n\
+extern int stime(const time_t *);\\\n\
+extern int utimes(const char *, const struct timeval[2]);\\\n\
+extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *);\n",
+ "-e", "/^extern.*double.*difftime();.*$/a\\\n\
+extern\tint adjtime();\\\n\
+extern\tint getitimer();\\\n\
+extern\tint setitimer();\\\n\
+extern\tint gettimeofday();\\\n\
+extern\tint settimeofday();\\\n\
+extern\tvoid profil();\\\n\
+extern\tint stime();\\\n\
+extern\tint utimes();\\\n\
+extern\tint select();\n",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ * Description of Ultrix_Unistd fix
+ */
+tSCC zUltrix_UnistdName[] =
+ "ultrix_unistd";
+
+/*
+ * File name selection pattern
+ */
+tSCC zUltrix_UnistdList[] =
+ "|unistd.h|";
+/*
+ * Machine/OS name selection pattern
+ */
+#define apzUltrix_UnistdMachs (const char**)NULL
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zUltrix_UnistdSelect0[] =
+ "@\\(#\\)unistd\\.h.*6\\.1.*\\(ULTRIX\\)";
+
+#define ULTRIX_UNISTD_TEST_CT 1
+static tTestDesc aUltrix_UnistdTests[] = {
+ { TT_EGREP, zUltrix_UnistdSelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Ultrix_Unistd
+ */
+static const char* apzUltrix_UnistdPatch[] = { "sed",
+ "-e", "/^[ \t]*getgroups(),.*$/a\\\n\
+\tgetpagesize(),\n",
+ "-e", "/^[ \t]*fork(),.*$/a\\\n\
+\tvfork(),\n",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
* Description of Undefine_Null fix
*/
tSCC zUndefine_NullName[] =
@@ -6453,9 +6894,9 @@ static const char* apzX11_SprintfPatch[] = {
*
* List of all fixes
*/
-#define REGEX_COUNT 183
+#define REGEX_COUNT 195
#define MACH_LIST_SIZE_LIMIT 261
-#define FIX_COUNT 163
+#define FIX_COUNT 174
/*
* Enumerate the fixes
@@ -6476,7 +6917,10 @@ typedef enum {
AIX_VOLATILE_FIXIDX,
ALPHA___ASSERT_FIXIDX,
ALPHA___EXTERN_PREFIX_FIXIDX,
+ ALPHA___EXTERN_PREFIX_STANDARDS_FIXIDX,
+ ALPHA___EXTERN_PREFIX_SYS_STAT_FIXIDX,
ALPHA_ASSERT_FIXIDX,
+ ALPHA_BAD_LVAL_FIXIDX,
ALPHA_GETOPT_FIXIDX,
ALPHA_PARENS_FIXIDX,
ALPHA_PTHREAD_FIXIDX,
@@ -6486,7 +6930,6 @@ typedef enum {
AVOID_BOOL_DEFINE_FIXIDX,
AVOID_BOOL_TYPE_FIXIDX,
AVOID_WCHAR_T_TYPE_FIXIDX,
- BAD_LVAL_FIXIDX,
BAD_STRUCT_TERM_FIXIDX,
BADQUOTE_FIXIDX,
BROKEN_ASSERT_STDIO_FIXIDX,
@@ -6500,6 +6943,7 @@ typedef enum {
DEC_INTERN_ASM_FIXIDX,
DJGPP_WCHAR_H_FIXIDX,
ECD_CURSOR_FIXIDX,
+ EXCEPTION_STRUCTURE_FIXIDX,
FREEBSD_GCC3_BREAKAGE_FIXIDX,
GNU_TYPES_FIXIDX,
HP_INLINE_FIXIDX,
@@ -6508,6 +6952,7 @@ typedef enum {
HPUX11_CPP_POW_INLINE_FIXIDX,
HPUX10_CTYPE_DECLARATIONS1_FIXIDX,
HPUX10_CTYPE_DECLARATIONS2_FIXIDX,
+ HPUX10_STDIO_DECLARATIONS_FIXIDX,
HPUX11_ABS_FIXIDX,
HPUX11_FABSF_FIXIDX,
HPUX11_SIZE_T_FIXIDX,
@@ -6556,6 +7001,8 @@ typedef enum {
OSF_NAMESPACE_C_FIXIDX,
PTHREAD_PAGE_SIZE_FIXIDX,
READ_RET_TYPE_FIXIDX,
+ RPC_XDR_LVALUE_CAST_A_FIXIDX,
+ RPC_XDR_LVALUE_CAST_B_FIXIDX,
RS6000_DOUBLE_FIXIDX,
RS6000_FCHMOD_FIXIDX,
RS6000_PARAM_FIXIDX,
@@ -6583,7 +7030,6 @@ typedef enum {
SUN_MALLOC_FIXIDX,
SUN_RUSERS_SEMI_FIXIDX,
SUN_SIGNAL_FIXIDX,
- SUNOS_MATHERR_DECL_FIXIDX,
SUNOS_STRLEN_FIXIDX,
SVR4__P_FIXIDX,
SVR4_DISABLE_OPT_FIXIDX,
@@ -6600,14 +7046,20 @@ typedef enum {
ULTRIX_ATOF_PARAM_FIXIDX,
ULTRIX_CONST_FIXIDX,
ULTRIX_CONST2_FIXIDX,
+ ULTRIX_CONST3_FIXIDX,
ULTRIX_FIX_FIXPROTO_FIXIDX,
ULTRIX_IFDEF_FIXIDX,
+ ULTRIX_LOCALE_FIXIDX,
ULTRIX_MATH_IFDEF_FIXIDX,
ULTRIX_NESTED_IOCTL_FIXIDX,
ULTRIX_NESTED_SVC_FIXIDX,
ULTRIX_STAT_FIXIDX,
ULTRIX_STATIC_FIXIDX,
+ ULTRIX_STDLIB_FIXIDX,
ULTRIX_STRINGS_FIXIDX,
+ ULTRIX_STRINGS2_FIXIDX,
+ ULTRIX_SYS_TIME_FIXIDX,
+ ULTRIX_UNISTD_FIXIDX,
UNDEFINE_NULL_FIXIDX,
UNICOSMK_RESTRICT_FIXIDX,
UW7_BYTEORDER_FIX_FIXIDX,
@@ -6702,11 +7154,26 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
ALPHA___EXTERN_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aAlpha___Extern_PrefixTests, apzAlpha___Extern_PrefixPatch, 0 },
+ { zAlpha___Extern_Prefix_StandardsName, zAlpha___Extern_Prefix_StandardsList,
+ apzAlpha___Extern_Prefix_StandardsMachs,
+ ALPHA___EXTERN_PREFIX_STANDARDS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+ aAlpha___Extern_Prefix_StandardsTests, apzAlpha___Extern_Prefix_StandardsPatch, 0 },
+
+ { zAlpha___Extern_Prefix_Sys_StatName, zAlpha___Extern_Prefix_Sys_StatList,
+ apzAlpha___Extern_Prefix_Sys_StatMachs,
+ ALPHA___EXTERN_PREFIX_SYS_STAT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+ aAlpha___Extern_Prefix_Sys_StatTests, apzAlpha___Extern_Prefix_Sys_StatPatch, 0 },
+
{ zAlpha_AssertName, zAlpha_AssertList,
apzAlpha_AssertMachs,
ALPHA_ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aAlpha_AssertTests, apzAlpha_AssertPatch, 0 },
+ { zAlpha_Bad_LvalName, zAlpha_Bad_LvalList,
+ apzAlpha_Bad_LvalMachs,
+ ALPHA_BAD_LVAL_TEST_CT, FD_MACH_ONLY,
+ aAlpha_Bad_LvalTests, apzAlpha_Bad_LvalPatch, 0 },
+
{ zAlpha_GetoptName, zAlpha_GetoptList,
apzAlpha_GetoptMachs,
ALPHA_GETOPT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
@@ -6752,11 +7219,6 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
AVOID_WCHAR_T_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aAvoid_Wchar_T_TypeTests, apzAvoid_Wchar_T_TypePatch, 0 },
- { zBad_LvalName, zBad_LvalList,
- apzBad_LvalMachs,
- BAD_LVAL_TEST_CT, FD_MACH_ONLY,
- aBad_LvalTests, apzBad_LvalPatch, 0 },
-
{ zBad_Struct_TermName, zBad_Struct_TermList,
apzBad_Struct_TermMachs,
BAD_STRUCT_TERM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
@@ -6822,6 +7284,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
ECD_CURSOR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aEcd_CursorTests, apzEcd_CursorPatch, 0 },
+ { zException_StructureName, zException_StructureList,
+ apzException_StructureMachs,
+ EXCEPTION_STRUCTURE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+ aException_StructureTests, apzException_StructurePatch, 0 },
+
{ zFreebsd_Gcc3_BreakageName, zFreebsd_Gcc3_BreakageList,
apzFreebsd_Gcc3_BreakageMachs,
FREEBSD_GCC3_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
@@ -6862,6 +7329,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
HPUX10_CTYPE_DECLARATIONS2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aHpux10_Ctype_Declarations2Tests, apzHpux10_Ctype_Declarations2Patch, 0 },
+ { zHpux10_Stdio_DeclarationsName, zHpux10_Stdio_DeclarationsList,
+ apzHpux10_Stdio_DeclarationsMachs,
+ HPUX10_STDIO_DECLARATIONS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+ aHpux10_Stdio_DeclarationsTests, apzHpux10_Stdio_DeclarationsPatch, 0 },
+
{ zHpux11_AbsName, zHpux11_AbsList,
apzHpux11_AbsMachs,
HPUX11_ABS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
@@ -7102,6 +7574,16 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
READ_RET_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aRead_Ret_TypeTests, apzRead_Ret_TypePatch, 0 },
+ { zRpc_Xdr_Lvalue_Cast_AName, zRpc_Xdr_Lvalue_Cast_AList,
+ apzRpc_Xdr_Lvalue_Cast_AMachs,
+ RPC_XDR_LVALUE_CAST_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+ aRpc_Xdr_Lvalue_Cast_ATests, apzRpc_Xdr_Lvalue_Cast_APatch, 0 },
+
+ { zRpc_Xdr_Lvalue_Cast_BName, zRpc_Xdr_Lvalue_Cast_BList,
+ apzRpc_Xdr_Lvalue_Cast_BMachs,
+ RPC_XDR_LVALUE_CAST_B_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+ aRpc_Xdr_Lvalue_Cast_BTests, apzRpc_Xdr_Lvalue_Cast_BPatch, 0 },
+
{ zRs6000_DoubleName, zRs6000_DoubleList,
apzRs6000_DoubleMachs,
RS6000_DOUBLE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
@@ -7237,11 +7719,6 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
SUN_SIGNAL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aSun_SignalTests, apzSun_SignalPatch, 0 },
- { zSunos_Matherr_DeclName, zSunos_Matherr_DeclList,
- apzSunos_Matherr_DeclMachs,
- SUNOS_MATHERR_DECL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
- aSunos_Matherr_DeclTests, apzSunos_Matherr_DeclPatch, 0 },
-
{ zSunos_StrlenName, zSunos_StrlenList,
apzSunos_StrlenMachs,
SUNOS_STRLEN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
@@ -7322,6 +7799,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
ULTRIX_CONST2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aUltrix_Const2Tests, apzUltrix_Const2Patch, 0 },
+ { zUltrix_Const3Name, zUltrix_Const3List,
+ apzUltrix_Const3Machs,
+ ULTRIX_CONST3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+ aUltrix_Const3Tests, apzUltrix_Const3Patch, 0 },
+
{ zUltrix_Fix_FixprotoName, zUltrix_Fix_FixprotoList,
apzUltrix_Fix_FixprotoMachs,
ULTRIX_FIX_FIXPROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
@@ -7332,6 +7814,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
ULTRIX_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aUltrix_IfdefTests, apzUltrix_IfdefPatch, 0 },
+ { zUltrix_LocaleName, zUltrix_LocaleList,
+ apzUltrix_LocaleMachs,
+ ULTRIX_LOCALE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+ aUltrix_LocaleTests, apzUltrix_LocalePatch, 0 },
+
{ zUltrix_Math_IfdefName, zUltrix_Math_IfdefList,
apzUltrix_Math_IfdefMachs,
ULTRIX_MATH_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
@@ -7357,11 +7844,31 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
ULTRIX_STATIC_TEST_CT, FD_MACH_ONLY,
aUltrix_StaticTests, apzUltrix_StaticPatch, 0 },
+ { zUltrix_StdlibName, zUltrix_StdlibList,
+ apzUltrix_StdlibMachs,
+ ULTRIX_STDLIB_TEST_CT, FD_MACH_ONLY,
+ aUltrix_StdlibTests, apzUltrix_StdlibPatch, 0 },
+
{ zUltrix_StringsName, zUltrix_StringsList,
apzUltrix_StringsMachs,
ULTRIX_STRINGS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aUltrix_StringsTests, apzUltrix_StringsPatch, 0 },
+ { zUltrix_Strings2Name, zUltrix_Strings2List,
+ apzUltrix_Strings2Machs,
+ ULTRIX_STRINGS2_TEST_CT, FD_MACH_ONLY,
+ aUltrix_Strings2Tests, apzUltrix_Strings2Patch, 0 },
+
+ { zUltrix_Sys_TimeName, zUltrix_Sys_TimeList,
+ apzUltrix_Sys_TimeMachs,
+ ULTRIX_SYS_TIME_TEST_CT, FD_MACH_ONLY,
+ aUltrix_Sys_TimeTests, apzUltrix_Sys_TimePatch, 0 },
+
+ { zUltrix_UnistdName, zUltrix_UnistdList,
+ apzUltrix_UnistdMachs,
+ ULTRIX_UNISTD_TEST_CT, FD_MACH_ONLY,
+ aUltrix_UnistdTests, apzUltrix_UnistdPatch, 0 },
+
{ zUndefine_NullName, zUndefine_NullList,
apzUndefine_NullMachs,
UNDEFINE_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
diff --git a/gcc/fixinc/inclhack.def b/gcc/fixinc/inclhack.def
index 95a5534d15f..086b8c0d420 100644
--- a/gcc/fixinc/inclhack.def
+++ b/gcc/fixinc/inclhack.def
@@ -523,11 +523,50 @@ fix = {
/*
- * Obey __PRAGMA_EXTERN_PREFIX for Tru64 UNIX V5 <sys/stat.h>.
+ * Obey __PRAGMA_EXTERN_PREFIX for Tru64 UNIX V4/5 headers.
*/
fix = {
hackname = alpha___extern_prefix;
+ select = "(.*)(defined\\(__DECC\\)|def[ \t]*__DECC)[ \t]*\n(#[ \t]*pragma[ \t]*extern_prefix.*)";
+
+ mach = "alpha*-dec-osf*";
+ c_fix = format;
+ c_fix_arg = "%1 (defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX))\n%3";
+
+ test_text = "#ifdef __DECC\n"
+ "#pragma extern_prefix \"_P\"\n"
+ "# if defined(__DECC)\n"
+ "# pragma extern_prefix \"_E\"\n"
+ "# if !defined(_LIBC_POLLUTION_H_) && defined(__DECC)\n"
+ "# pragma extern_prefix \"\"";
+};
+
+
+/*
+ * Obey __PRAGMA_EXTERN_PREFIX for Tru64 UNIX V4/5 <standards.h>.
+ */
+fix = {
+ hackname = alpha___extern_prefix_standards;
+ files = standards.h;
+ select = ".*!defined\\(_LIBC_POLLUTION_H_\\) && !defined\\(__DECC\\)";
+
+ mach = "alpha*-dec-osf*";
+ c_fix = format;
+ c_fix_arg = "%0 && !defined(__PRAGMA_EXTERN_PREFIX)";
+
+ test_text = "#if (_ISO_C_SOURCE>=19990L) && !defined(_LIBC_POLLUTION_H_) && !defined(__DECC)";
+};
+
+
+/*
+ * Obey __PRAGMA_EXTERN_PREFIX for Tru64 UNIX V5 <sys/mount.h> and
+ * <sys/stat.h>. The tests for __DECC are special in various ways, so
+ * alpha__extern_prefix cannot be used.
+ */
+fix = {
+ hackname = alpha___extern_prefix_sys_stat;
files = sys/stat.h;
+ files = sys/mount.h;
select = "#[ \t]*if[ \t]*defined\\(__DECC\\)";
mach = "alpha*-dec-osf5*";
@@ -553,6 +592,37 @@ fix = {
/*
+ * Fix #defines under Alpha OSF/1:
+ * The following files contain '#pragma extern_prefix "_FOO"' followed by
+ * a '#define something(x,y,z) _FOOsomething(x,y,z)'. The intent of these
+ * statements is to reduce namespace pollution. While these macros work
+ * properly in most cases, they don't allow you to take a pointer to the
+ * "something" being modified. To get around this limitation, change these
+ * statements to be of the form '#define something _FOOsomething'.
+ *
+ * sed ain't egrep, lesson 2463: sed can use self-referential
+ * regular expressions. In the substitute expression below,
+ * "\\1" and "\\2" refer to subexpressions found earlier in the
+ * same match. So, we continue to use sed. "extern_prefix" will
+ * be a rare match anyway...
+ */
+fix = {
+ hackname = alpha_bad_lval;
+
+ select = "^[ \t]*#[ \t]*pragma[ \t]+extern_prefix";
+ mach = "alpha*-dec-osf*";
+
+ sed =
+ "s/^[ \t]*#[ \t]*define[ \t][ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*"
+ "\\(_.*\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/";
+
+ test_text = '#pragma extern_prefix "_FOO"'"\n"
+ "#define something(x,y,z) _FOOsomething(x,y,z)\n"
+ "#define mumble _FOOmumble";
+};
+
+
+/*
* Fix getopt declarations in stdio.h and stdlib.h on Alpha OSF/1 and AIX.
*/
fix = {
@@ -585,15 +655,18 @@ fix = {
fix = {
hackname = alpha_pthread;
files = pthread.h;
- select = "(#[ \t]*if defined \\(_PTHREAD_ENV_DECC\\) || defined \\(_PTHREAD_ENV_EPCC\\))\n"
+ select = "((#[ \t]*if)([ \t]*defined[ \t]*\\(_PTHREAD_ENV_DECC\\)|def _PTHREAD_ENV_DECC)(.*))\n"
"(#[ \t]*define _PTHREAD_USE_PTDNAM_)";
mach = "alpha*-dec-osf*";
c_fix = format;
- c_fix_arg = "%1 || defined (__PRAGMA_EXTERN_PREFIX)\n%2";
+ c_fix_arg = "%2 defined (_PTHREAD_ENV_DECC)%4 || defined (__PRAGMA_EXTERN_PREFIX)\n%5";
test_text = "# if defined (_PTHREAD_ENV_DECC) || defined (_PTHREAD_ENV_EPCC)\n"
"# define _PTHREAD_USE_PTDNAM_\n"
+ "# endif\n"
+ "# ifdef _PTHREAD_ENV_DECC\n"
+ "# define _PTHREAD_USE_PTDNAM_\n"
"# endif";
};
@@ -715,51 +788,6 @@ fix = {
/*
- * Fix #defines under Alpha OSF/1:
- * The following files contain '#pragma extern_prefix "_FOO"' followed by
- * a '#define something(x,y,z) _FOOsomething(x,y,z)'. The intent of these
- * statements is to reduce namespace pollution. While these macros work
- * properly in most cases, they don't allow you to take a pointer to the
- * "something" being modified. To get around this limitation, change these
- * statements to be of the form '#define something _FOOsomething'.
- *
- * sed ain't egrep, lesson 2463: sed can use self-referential
- * regular expressions. In the substitute expression below,
- * "\\1" and "\\2" refer to subexpressions found earlier in the
- * same match. So, we continue to use sed. "extern_prefix" will
- * be a rare match anyway...
- */
-fix = {
- hackname = bad_lval;
-
- select = "^[ \t]*#[ \t]*pragma[ \t]+extern_prefix";
-
- files = libgen.h;
- files = dirent.h;
- files = ftw.h;
- files = grp.h;
- files = ndbm.h;
- files = pthread.h;
- files = pwd.h;
- files = signal.h;
- files = standards.h;
- files = stdlib.h;
- files = string.h;
- files = stropts.h;
- files = time.h;
- files = unistd.h;
-
- sed =
- "s/^[ \t]*#[ \t]*define[ \t][ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*"
- "\\(_.*\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/";
-
- test_text = '#pragma extern_prefix "_FOO"'"\n"
- "#define something(x,y,z) _FOOsomething(x,y,z)\n"
- "#define mumble _FOOmumble";
-};
-
-
-/*
* Fix `typedef struct term;' on hppa1.1-hp-hpux9.
*/
fix = {
@@ -1003,6 +1031,26 @@ fix = {
/*
+ * math.h on SunOS 4 puts the declaration of matherr before the definition
+ * of struct exception, so the prototype (added by fixproto) causes havoc.
+ * This must appear before the math_exception fix.
+ */
+fix = {
+ hackname = exception_structure;
+ files = math.h;
+
+ /* If matherr has a prototype already, the header needs no fix. */
+ bypass = 'matherr.*(struct exception|__MATH_EXCEPTION)';
+ select = matherr;
+
+ c_fix = wrap;
+ c_fix_arg = "struct exception;\n";
+
+ test_text = "extern int matherr();";
+};
+
+
+/*
* Between 8/24/1998 and 2/17/2001, FreeBSD system headers presume
* neither the existence of GCC 3 nor its exact feature set yet break
* (by design?) when __GNUC__ is set beyond 2.
@@ -1193,6 +1241,28 @@ fix = {
/*
+ * Fix hpux 10.X missing stdio declarations
+ */
+fix = {
+ hackname = hpux10_stdio_declarations;
+ files = stdio.h;
+ select = "^#[ \t]*define _iob[ \t]*__iob";
+ bypass = "^[ \t]*extern[ \t]*int[ \t]*vsnprintf[ \t]*\\(";
+ c_fix = format;
+ c_fix_arg = "%0\n\n"
+ "# if defined(__STDC__) || defined(__cplusplus)\n"
+ " extern int snprintf(char *, size_t, const char *, ...);\n"
+ " extern int vsnprintf(char *, size_t, const char *, __va_list);\n"
+ "# else /* not __STDC__) || __cplusplus */\n"
+ " extern int snprintf();\n"
+ " extern int vsnprintf();\n"
+ "# endif /* __STDC__) || __cplusplus */\n";
+
+ test_text = "# define _iob __iob\n";
+};
+
+
+/*
* Make sure hpux defines abs in header.
*/
fix = {
@@ -1803,11 +1873,10 @@ fix = {
/*
* Some math.h files define struct exception (it's in the System V
- * Interface Definition), which conflicts with
- * the class exception defined in the C++ file std/stdexcept.h. We
- * redefine it to __math_exception. This is not a great fix, but I
- * haven't been able to think of anything better.
- * Note that we have to put the #ifdef/#endif blocks at beginning
+ * Interface Definition), which conflicts with the class exception defined
+ * in the C++ file std/stdexcept.h. We redefine it to __math_exception.
+ * This is not a great fix, but I haven't been able to think of anything
+ * better. Note that we have to put the #ifdef/#endif blocks at beginning
* and end of file, because fixproto runs after us and may insert
* additional references to struct exception.
*/
@@ -1815,7 +1884,13 @@ fix = {
hackname = math_exception;
files = math.h;
select = "struct exception";
- bypass = '__cplusplus';
+ /*
+ * This should be bypassed on __cplusplus, but some supposedly C++ C++
+ * aware headers, such as Solaris 8 and 9, don't wrap their struct
+ * exception either. So currently we bypass only for glibc, based on a
+ * comment in the fixed glibc header. Ick.
+ */
+ bypass = 'We have a problem when using C\+\+';
c_fix = wrap;
c_fix_arg = "#ifdef __cplusplus\n"
@@ -2155,6 +2230,31 @@ fix = {
/*
+ * Fix casts as lvalues in glibc's <rpc/xdr.h>.
+ */
+fix = {
+ hackname = rpc_xdr_lvalue_cast_a;
+ files = rpc/xdr.h;
+ select = "#define[ \t]*IXDR_GET_LONG.*\\\\\n.*__extension__.*";
+ c_fix = format;
+ c_fix_arg = "#define IXDR_GET_LONG(buf) ((long)IXDR_GET_U_INT32(buf))";
+ test_text = "#define IXDR_GET_LONG(buf) \\\\\n"
+ "\t((long)ntohl((u_long)*__extension__((u_int32_t*)(buf))++))";
+};
+
+
+fix = {
+ hackname = rpc_xdr_lvalue_cast_b;
+ files = rpc/xdr.h;
+ select = "#define[ \t]*IXDR_PUT_LONG.*\\\\\n.*__extension__.*";
+ c_fix = format;
+ c_fix_arg = "#define IXDR_PUT_LONG(buf, v) ((long)IXDR_PUT_INT32(buf, (long)(v)))";
+ test_text = "#define IXDR_PUT_LONG(buf, v) \\\\\n"
+ "\t(*__extension__((u_int32_t*)(buf))++ = (long)htonl((u_long)(v)))";
+};
+
+
+/*
* function class(double x) conflicts with C++ keyword on rs/6000
*/
fix = {
@@ -2756,25 +2856,6 @@ fix = {
/*
- * math.h on SunOS 4 puts the declaration of matherr before the definition
- * of struct exception, so the prototype (added by fixproto) causes havoc.
- */
-fix = {
- hackname = sunos_matherr_decl;
- files = math.h;
-
- /* If matherr has a prototype already, the header needs no fix. */
- bypass = 'matherr.*(struct exception|__MATH_EXCEPTION)';
- select = matherr;
-
- c_fix = wrap;
- c_fix_arg = "struct exception;\n";
-
- test_text = "extern int matherr();";
-};
-
-
-/*
* Correct the return type for strlen in strings.h in SunOS 4.
*/
fix = {
@@ -3387,6 +3468,24 @@ fix = {
/*
+ * parameters not const on Ultrix V4.3.
+ */
+fix = {
+ hackname = ultrix_const3;
+ files = stdio.h;
+ select = 'fdopen\( .*, char \*';
+
+ c_fix = format;
+ c_fix_arg = "%1 const %3 *__";
+ c_fix_arg = "([ \t*](fdopen)\\(.*)"
+ "[ \t]+(char|void) \\*__";
+
+ test_text =
+ "extern FILE * fdopen( int __filedes, char *__type );\n";
+};
+
+
+/*
* Ultrix V4.[35] puts the declaration of uname before the definition
* of struct utsname, so the prototype (added by fixproto) causes havoc.
*/
@@ -3421,6 +3520,19 @@ fix = {
/*
+ * Add once-only latch to Ultrix V4.3 locale.h.
+ */
+fix = {
+ hackname = ultrix_locale;
+ files = locale.h;
+ select = "@\\(#\\)locale\\.h.*6\\.1.*\\(ULTRIX\\)";
+ c_fix = wrap;
+ test_text =
+ "@(#)locale.h 6.1 (ULTRIX)\n";
+};
+
+
+/*
* Strip "|| CC$gfloat" from Ultrix math headers.
*/
fix = {
@@ -3500,6 +3612,31 @@ fix = {
/*
+ * Add missing declarations to Ultrix V4.3 stdlib.h.
+ */
+fix = {
+ hackname = ultrix_stdlib;
+ files = stdlib.h;
+ select = "@\\(#\\)stdlib\\.h.*6\\.1.*\\(ULTRIX\\)";
+
+ sed = "/^char.*getenv( const char .* );.*$/a\\\n"
+ "int\t\tsetenv( const char *__name, const char *__val, int __ovrwrt );\\\n"
+ "void\t\tunsetenv( const char *__name );\\\n"
+ "int\t\tputenv( char *__s );\n";
+
+ sed = "/^char.*getenv();.*$/a\\\n"
+ "int\tsetenv();\\\n"
+ "void\tunsetenv();\\\n"
+ "int\tputenv();\n";
+
+ test_text =
+ "@(#)stdlib.h 6.1 (ULTRIX)\n"
+ "char * getenv( const char *__name );\n"
+ "char *getenv();\n";
+};
+
+
+/*
* Add once-only latch to Ultrix V4.3 strings.h.
*/
fix = {
@@ -3513,6 +3650,91 @@ fix = {
/*
+ * Add missing declarations to Ultrix V4.3 strings.h.
+ */
+fix = {
+ hackname = ultrix_strings2;
+ files = strings.h;
+ select = "@\\(#\\)strings\\.h.*6\\.1.*\\(ULTRIX\\)";
+
+ sed = "/^.*strncmp( const .* );.*/a\\\n"
+ "\\\n"
+ "extern int\\\n"
+ "\tstrcasecmp( const char *__s1, const char *__s2),\\\n"
+ "\tstrncasecmp( const char *__s1, const char *__s2, size_t __n );\n";
+
+ sed = "/^.*strncmp();.*/a\\\n"
+ "extern int\\\n"
+ "\tstrcasecmp(),\\\n"
+ "\tstrncasecmp();\n";
+
+ test_text =
+ "@(#)strings.h 6.1 (ULTRIX)\n"
+ "\tstrncmp( const char *__s1, const char *__s2, size_t __n );\n"
+ "\tstrncmp();\n";
+};
+
+
+/*
+ * Add missing declarations to Ultrix V4.3 sys/time.h.
+ */
+fix = {
+ hackname = ultrix_sys_time;
+ files = sys/time.h;
+ select = "@\\(#\\)time\\.h.*6\\.1.*\\(ULTRIX\\)";
+
+ sed = "/^extern.*time_t.*time( time_t .* );.*$/a\\\n"
+ "\\\n"
+ "extern int adjtime(struct timeval *, struct timeval *);\\\n"
+ "extern int getitimer(int, struct itimerval *);\\\n"
+ "extern int setitimer(int, struct itimerval *, struct itimerval *);\\\n"
+ "extern int gettimeofday(struct timeval *, struct timezone *);\\\n"
+ "extern int settimeofday(struct timeval *, struct timezone *);\\\n"
+ "extern void profil(const void *, size_t, size_t, unsigned int);\\\n"
+ "extern int stime(const time_t *);\\\n"
+ "extern int utimes(const char *, const struct timeval[2]);\\\n"
+ "extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *);\n";
+
+ sed = "/^extern.*double.*difftime();.*$/a\\\n"
+ "extern\tint adjtime();\\\n"
+ "extern\tint getitimer();\\\n"
+ "extern\tint setitimer();\\\n"
+ "extern\tint gettimeofday();\\\n"
+ "extern\tint settimeofday();\\\n"
+ "extern\tvoid profil();\\\n"
+ "extern\tint stime();\\\n"
+ "extern\tint utimes();\\\n"
+ "extern\tint select();\n";
+
+ test_text =
+ "@(#)time.h 6.1 (ULTRIX)\n"
+ "extern time_t time( time_t *__tloc );\n"
+ "extern double difftime();\n";
+};
+
+
+/*
+ * Add missing declarations to Ultrix V4.3 unistd.h.
+ */
+fix = {
+ hackname = ultrix_unistd;
+ files = unistd.h;
+ select = "@\\(#\\)unistd\\.h.*6\\.1.*\\(ULTRIX\\)";
+
+ sed = "/^[ \t]*getgroups(),.*$/a\\\n"
+ "\tgetpagesize(),\n";
+
+ sed = "/^[ \t]*fork(),.*$/a\\\n"
+ "\tvfork(),\n";
+
+ test_text =
+ "@(#)unistd.h 6.1 (ULTRIX)\n"
+ "\tgetgroups(),\n"
+ "\tfork(),\n";
+};
+
+
+/*
* Fix multiple defines for NULL. Sometimes, we stumble into \r\n
* terminated lines, so accommodate these. Test both ways.
* Don't bother to reproduce the \r\n termination, as GCC has to
diff --git a/gcc/fixinc/tests/base/libgen.h b/gcc/fixinc/tests/base/libgen.h
deleted file mode 100644
index 85328f45a10..00000000000
--- a/gcc/fixinc/tests/base/libgen.h
+++ /dev/null
@@ -1,16 +0,0 @@
-/* DO NOT EDIT THIS FILE.
-
- It has been auto-edited by fixincludes from:
-
- "fixinc/tests/inc/libgen.h"
-
- This had to be done to correct non-standard usages in the
- original, manufacturer supplied header file. */
-
-
-
-#if defined( BAD_LVAL_CHECK )
-#pragma extern_prefix "_FOO"
-#define something _FOOsomething
-#define mumble _FOOmumble
-#endif /* BAD_LVAL_CHECK */
diff --git a/gcc/fixinc/tests/base/locale.h b/gcc/fixinc/tests/base/locale.h
new file mode 100644
index 00000000000..3b079e544c9
--- /dev/null
+++ b/gcc/fixinc/tests/base/locale.h
@@ -0,0 +1,20 @@
+/* DO NOT EDIT THIS FILE.
+
+ It has been auto-edited by fixincludes from:
+
+ "fixinc/tests/inc/locale.h"
+
+ This had to be done to correct non-standard usages in the
+ original, manufacturer supplied header file. */
+
+#ifndef FIXINC_WRAP_LOCALE_H_ULTRIX_LOCALE
+#define FIXINC_WRAP_LOCALE_H_ULTRIX_LOCALE 1
+
+
+
+#if defined( ULTRIX_LOCALE_CHECK )
+@(#)locale.h 6.1 (ULTRIX)
+
+#endif /* ULTRIX_LOCALE_CHECK */
+
+#endif /* FIXINC_WRAP_LOCALE_H_ULTRIX_LOCALE */
diff --git a/gcc/fixinc/tests/base/math.h b/gcc/fixinc/tests/base/math.h
index 51fe6b57952..52fa3f39996 100644
--- a/gcc/fixinc/tests/base/math.h
+++ b/gcc/fixinc/tests/base/math.h
@@ -7,16 +7,16 @@
This had to be done to correct non-standard usages in the
original, manufacturer supplied header file. */
-#ifndef FIXINC_WRAP_MATH_H_SUNOS_MATHERR_DECL
-#define FIXINC_WRAP_MATH_H_SUNOS_MATHERR_DECL 1
-
-struct exception;
#ifndef FIXINC_WRAP_MATH_H_MATH_EXCEPTION
#define FIXINC_WRAP_MATH_H_MATH_EXCEPTION 1
#ifdef __cplusplus
#define exception __math_exception
#endif
+#ifndef FIXINC_WRAP_MATH_H_EXCEPTION_STRUCTURE
+#define FIXINC_WRAP_MATH_H_EXCEPTION_STRUCTURE 1
+
+struct exception;
#if defined( BROKEN_CABS_CHECK )
@@ -31,6 +31,11 @@ struct exception;
#endif /* BROKEN_CABS_CHECK */
+#if defined( EXCEPTION_STRUCTURE_CHECK )
+extern int matherr();
+#endif /* EXCEPTION_STRUCTURE_CHECK */
+
+
#if defined( HPUX11_CPP_POW_INLINE_CHECK )
#endif /* HPUX11_CPP_POW_INLINE_CHECK */
@@ -100,11 +105,6 @@ int foo;
#endif /* STRICT_ANSI_NOT_CTD_CHECK */
-#if defined( SUNOS_MATHERR_DECL_CHECK )
-extern int matherr();
-#endif /* SUNOS_MATHERR_DECL_CHECK */
-
-
#if defined( SVR4__P_CHECK )
#ifndef __P
#define __P(a) a
@@ -126,10 +126,10 @@ extern double atof(const char *__nptr);
#if defined( WINDISS_MATH2_CHECK )
#endif /* __GNUC__ */
#endif /* WINDISS_MATH2_CHECK */
+
+#endif /* FIXINC_WRAP_MATH_H_EXCEPTION_STRUCTURE */
#ifdef __cplusplus
#undef exception
#endif
#endif /* FIXINC_WRAP_MATH_H_MATH_EXCEPTION */
-
-#endif /* FIXINC_WRAP_MATH_H_SUNOS_MATHERR_DECL */
diff --git a/gcc/fixinc/tests/base/pthread.h b/gcc/fixinc/tests/base/pthread.h
index bd10f5a65ba..385c055ec83 100644
--- a/gcc/fixinc/tests/base/pthread.h
+++ b/gcc/fixinc/tests/base/pthread.h
@@ -19,6 +19,9 @@
# if defined (_PTHREAD_ENV_DECC) || defined (_PTHREAD_ENV_EPCC) || defined (__PRAGMA_EXTERN_PREFIX)
# define _PTHREAD_USE_PTDNAM_
# endif
+# if defined (_PTHREAD_ENV_DECC) || defined (__PRAGMA_EXTERN_PREFIX)
+# define _PTHREAD_USE_PTDNAM_
+# endif
#endif /* ALPHA_PTHREAD_CHECK */
diff --git a/gcc/fixinc/tests/base/rpc/xdr.h b/gcc/fixinc/tests/base/rpc/xdr.h
index 69fc4c1f5cf..7b9f9bae961 100644
--- a/gcc/fixinc/tests/base/rpc/xdr.h
+++ b/gcc/fixinc/tests/base/rpc/xdr.h
@@ -9,6 +9,16 @@
+#if defined( RPC_XDR_LVALUE_CAST_A_CHECK )
+#define IXDR_GET_LONG(buf) ((long)IXDR_GET_U_INT32(buf))
+#endif /* RPC_XDR_LVALUE_CAST_A_CHECK */
+
+
+#if defined( RPC_XDR_LVALUE_CAST_B_CHECK )
+#define IXDR_PUT_LONG(buf, v) ((long)IXDR_PUT_INT32(buf, (long)(v)))
+#endif /* RPC_XDR_LVALUE_CAST_B_CHECK */
+
+
#if defined( STRUCT_FILE_CHECK )
struct __file_s;
extern void xdrstdio_create( struct __file_s* );
diff --git a/gcc/fixinc/tests/base/standards.h b/gcc/fixinc/tests/base/standards.h
new file mode 100644
index 00000000000..fccf8063fa3
--- /dev/null
+++ b/gcc/fixinc/tests/base/standards.h
@@ -0,0 +1,14 @@
+/* DO NOT EDIT THIS FILE.
+
+ It has been auto-edited by fixincludes from:
+
+ "fixinc/tests/inc/standards.h"
+
+ This had to be done to correct non-standard usages in the
+ original, manufacturer supplied header file. */
+
+
+
+#if defined( ALPHA___EXTERN_PREFIX_STANDARDS_CHECK )
+#if (_ISO_C_SOURCE>=19990L) && !defined(_LIBC_POLLUTION_H_) && !defined(__DECC) && !defined(__PRAGMA_EXTERN_PREFIX)
+#endif /* ALPHA___EXTERN_PREFIX_STANDARDS_CHECK */
diff --git a/gcc/fixinc/tests/base/stdio.h b/gcc/fixinc/tests/base/stdio.h
index e4130e67e0c..ea2c001e163 100644
--- a/gcc/fixinc/tests/base/stdio.h
+++ b/gcc/fixinc/tests/base/stdio.h
@@ -26,6 +26,12 @@ int vfscanf(FILE *, const char *, __builtin_va_list) __asm__ (_BSD_STRING(__USER
#endif /* BSD_STDIO_ATTRS_CONFLICT_CHECK */
+#if defined( HPUX10_STDIO_DECLARATIONS_CHECK )
+# define _iob __iob
+
+#endif /* HPUX10_STDIO_DECLARATIONS_CHECK */
+
+
#if defined( HPUX11_SNPRINTF_CHECK )
extern int snprintf(char *, size_t, const char *, ...);
extern int snprintf(char *, _hpux_size_t, const char *, ...);
@@ -90,6 +96,12 @@ extern char *tempnam( const char *, const char *);
#endif /* ULTRIX_CONST2_CHECK */
+#if defined( ULTRIX_CONST3_CHECK )
+extern FILE * fdopen( int __filedes, const char *__type );
+
+#endif /* ULTRIX_CONST3_CHECK */
+
+
#if defined( UNICOSMK_RESTRICT_CHECK )
void f (char * __restrict__ x);
#endif /* UNICOSMK_RESTRICT_CHECK */
diff --git a/gcc/fixinc/tests/base/stdlib.h b/gcc/fixinc/tests/base/stdlib.h
index 7297a3ab282..0e1e59cb4f0 100644
--- a/gcc/fixinc/tests/base/stdlib.h
+++ b/gcc/fixinc/tests/base/stdlib.h
@@ -50,3 +50,17 @@ extern void * bsearch(void*,size_t,size_t);
int atexit( void (*__func)( void ) );
#endif /* ULTRIX_ATEXIT_PARAM_CHECK */
+
+
+#if defined( ULTRIX_STDLIB_CHECK )
+@(#)stdlib.h 6.1 (ULTRIX)
+char * getenv( const char *__name );
+int setenv( const char *__name, const char *__val, int __ovrwrt );
+void unsetenv( const char *__name );
+int putenv( char *__s );
+char *getenv();
+int setenv();
+void unsetenv();
+int putenv();
+
+#endif /* ULTRIX_STDLIB_CHECK */
diff --git a/gcc/fixinc/tests/base/strings.h b/gcc/fixinc/tests/base/strings.h
index 36ca0b4c0f1..f17d3f81197 100644
--- a/gcc/fixinc/tests/base/strings.h
+++ b/gcc/fixinc/tests/base/strings.h
@@ -22,4 +22,19 @@
#endif /* ULTRIX_STRINGS_CHECK */
+
+#if defined( ULTRIX_STRINGS2_CHECK )
+@(#)strings.h 6.1 (ULTRIX)
+ strncmp( const char *__s1, const char *__s2, size_t __n );
+
+extern int
+ strcasecmp( const char *__s1, const char *__s2),
+ strncasecmp( const char *__s1, const char *__s2, size_t __n );
+ strncmp();
+extern int
+ strcasecmp(),
+ strncasecmp();
+
+#endif /* ULTRIX_STRINGS2_CHECK */
+
#endif /* FIXINC_WRAP_STRINGS_H_ULTRIX_STRINGS */
diff --git a/gcc/fixinc/tests/base/sys/stat.h b/gcc/fixinc/tests/base/sys/stat.h
index 92577482dc5..c2b2fb6d564 100644
--- a/gcc/fixinc/tests/base/sys/stat.h
+++ b/gcc/fixinc/tests/base/sys/stat.h
@@ -9,9 +9,9 @@
-#if defined( ALPHA___EXTERN_PREFIX_CHECK )
+#if defined( ALPHA___EXTERN_PREFIX_SYS_STAT_CHECK )
# if defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX)
-#endif /* ALPHA___EXTERN_PREFIX_CHECK */
+#endif /* ALPHA___EXTERN_PREFIX_SYS_STAT_CHECK */
#if defined( RS6000_FCHMOD_CHECK )
diff --git a/gcc/fixinc/tests/base/sys/time.h b/gcc/fixinc/tests/base/sys/time.h
index 931f424e229..f009f7e11aa 100644
--- a/gcc/fixinc/tests/base/sys/time.h
+++ b/gcc/fixinc/tests/base/sys/time.h
@@ -12,3 +12,30 @@
#if defined( HPUX_SYSTIME_CHECK )
struct sigevent;
#endif /* HPUX_SYSTIME_CHECK */
+
+
+#if defined( ULTRIX_SYS_TIME_CHECK )
+@(#)time.h 6.1 (ULTRIX)
+extern time_t time( time_t *__tloc );
+
+extern int adjtime(struct timeval *, struct timeval *);
+extern int getitimer(int, struct itimerval *);
+extern int setitimer(int, struct itimerval *, struct itimerval *);
+extern int gettimeofday(struct timeval *, struct timezone *);
+extern int settimeofday(struct timeval *, struct timezone *);
+extern void profil(const void *, size_t, size_t, unsigned int);
+extern int stime(const time_t *);
+extern int utimes(const char *, const struct timeval[2]);
+extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *);
+extern double difftime();
+extern int adjtime();
+extern int getitimer();
+extern int setitimer();
+extern int gettimeofday();
+extern int settimeofday();
+extern void profil();
+extern int stime();
+extern int utimes();
+extern int select();
+
+#endif /* ULTRIX_SYS_TIME_CHECK */
diff --git a/gcc/fixinc/tests/base/testing.h b/gcc/fixinc/tests/base/testing.h
index 5e660f86dd8..0530cdf490f 100644
--- a/gcc/fixinc/tests/base/testing.h
+++ b/gcc/fixinc/tests/base/testing.h
@@ -9,6 +9,23 @@
+#if defined( ALPHA___EXTERN_PREFIX_CHECK )
+#if (defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX))
+#pragma extern_prefix "_P"
+# if (defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX))
+# pragma extern_prefix "_E"
+# if !defined(_LIBC_POLLUTION_H_) && (defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX))
+# pragma extern_prefix ""
+#endif /* ALPHA___EXTERN_PREFIX_CHECK */
+
+
+#if defined( ALPHA_BAD_LVAL_CHECK )
+#pragma extern_prefix "_FOO"
+#define something _FOOsomething
+#define mumble _FOOmumble
+#endif /* ALPHA_BAD_LVAL_CHECK */
+
+
#if defined( AVOID_WCHAR_T_TYPE_CHECK )
#ifndef __cplusplus
typedef unsigned short wchar_t ;
diff --git a/gcc/fixinc/tests/base/unistd.h b/gcc/fixinc/tests/base/unistd.h
index 5bfb9b96d17..98e8c34b8ca 100644
--- a/gcc/fixinc/tests/base/unistd.h
+++ b/gcc/fixinc/tests/base/unistd.h
@@ -21,3 +21,13 @@ extern pid_t getpgid(pid_t);
extern int getpagesize();
extern int getpgid();
#endif /* SOLARIS_UNISTD_CHECK */
+
+
+#if defined( ULTRIX_UNISTD_CHECK )
+@(#)unistd.h 6.1 (ULTRIX)
+ getgroups(),
+ getpagesize(),
+ fork(),
+ vfork(),
+
+#endif /* ULTRIX_UNISTD_CHECK */
diff --git a/gcc/flags.h b/gcc/flags.h
index f172ec34a8b..e947f2a66bb 100644
--- a/gcc/flags.h
+++ b/gcc/flags.h
@@ -724,6 +724,27 @@ extern int flag_remove_unreachable_functions;
extern const char *flag_random_seed;
+/* The version of the C++ ABI in use. The following values are
+ allowed:
+
+ 0: The version of the ABI believed most conformant with the
+ C++ ABI specification. This ABI may change as bugs are
+ discovered and fixed. Therefore, 0 will not necessarily
+ indicate the same ABI in different versions of G++.
+
+ 1: The version of the ABI first used in G++ 3.2.
+
+ Additional positive integers will be assigned as new versions of
+ the ABI become the default version of the ABI. */
+
+extern int flag_abi_version;
+
+/* Returns TRUE if generated code should match ABI version N or
+ greater is in use. */
+
+#define abi_version_at_least(N) \
+ (flag_abi_version == 0 || flag_abi_version >= (N))
+
/* True if the given mode has a NaN representation and the treatment of
NaN operands is important. Certain optimizations, such as folding
x * 0 into x, are not correct for NaN operands, and are normally
diff --git a/gcc/flow.c b/gcc/flow.c
index c146310cb0a..90bc5f871df 100644
--- a/gcc/flow.c
+++ b/gcc/flow.c
@@ -1,6 +1,6 @@
/* Data flow analysis for GNU compiler.
Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -1739,8 +1739,9 @@ propagate_one_insn (struct propagate_block_info *pbi, rtx insn)
current_function_return_rtx,
(rtx *) 0)))
{
+ enum rtx_code code = global_regs[i] ? SET : CLOBBER;
/* We do not want REG_UNUSED notes for these registers. */
- mark_set_1 (pbi, CLOBBER, regno_reg_rtx[i], cond, insn,
+ mark_set_1 (pbi, code, regno_reg_rtx[i], cond, insn,
pbi->flags & ~(PROP_DEATH_NOTES | PROP_REG_INFO));
}
}
@@ -2224,14 +2225,22 @@ insn_dead_p (struct propagate_block_info *pbi, rtx x, int call_ok,
}
/* A CLOBBER of a pseudo-register that is dead serves no purpose. That
- is not necessarily true for hard registers. */
- else if (code == CLOBBER && GET_CODE (XEXP (x, 0)) == REG
- && REGNO (XEXP (x, 0)) >= FIRST_PSEUDO_REGISTER
- && ! REGNO_REG_SET_P (pbi->reg_live, REGNO (XEXP (x, 0))))
- return 1;
-
- /* We do not check other CLOBBER or USE here. An insn consisting of just
- a CLOBBER or just a USE should not be deleted. */
+ is not necessarily true for hard registers until after reload. */
+ else if (code == CLOBBER)
+ {
+ if (GET_CODE (XEXP (x, 0)) == REG
+ && (REGNO (XEXP (x, 0)) >= FIRST_PSEUDO_REGISTER
+ || reload_completed)
+ && ! REGNO_REG_SET_P (pbi->reg_live, REGNO (XEXP (x, 0))))
+ return 1;
+ }
+
+ /* ??? A base USE is a historical relic. It ought not be needed anymore.
+ Instances where it is still used are either (1) temporary and the USE
+ escaped the pass, (2) cruft and the USE need not be emitted anymore,
+ or (3) hiding bugs elsewhere that are not properly representing data
+ flow. */
+
return 0;
}
@@ -2748,10 +2757,18 @@ mark_set_1 (struct propagate_block_info *pbi, enum rtx_code code, rtx reg, rtx c
in ASM_OPERANDs. If these registers get replaced,
we might wind up changing the semantics of the insn,
even if reload can make what appear to be valid
- assignments later. */
+ assignments later.
+
+ We don't build a LOG_LINK for global registers to
+ or from a function call. We don't want to let
+ combine think that it knows what is going on with
+ global registers. */
if (y && (BLOCK_NUM (y) == blocknum)
&& (regno_first >= FIRST_PSEUDO_REGISTER
- || asm_noperands (PATTERN (y)) < 0))
+ || (asm_noperands (PATTERN (y)) < 0
+ && ! ((GET_CODE (insn) == CALL_INSN
+ || GET_CODE (y) == CALL_INSN)
+ && global_regs[regno_first]))))
LOG_LINKS (y) = alloc_INSN_LIST (insn, LOG_LINKS (y));
}
}
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index b226215e9b0..e84359313fb 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -1,6 +1,6 @@
/* Fold a constant sub-tree into a single node for C-compiler
Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -69,6 +69,7 @@ static tree int_const_binop (enum tree_code, tree, tree, int);
static tree const_binop (enum tree_code, tree, tree, int);
static hashval_t size_htab_hash (const void *);
static int size_htab_eq (const void *, const void *);
+static tree fold_convert_const (enum tree_code, tree, tree);
static tree fold_convert (tree, tree);
static enum tree_code invert_tree_comparison (enum tree_code);
static enum tree_code swap_tree_comparison (enum tree_code);
@@ -961,7 +962,7 @@ negate_expr (tree t)
tem = build_real (type, REAL_VALUE_NEGATE (TREE_REAL_CST (t)));
/* Two's complement FP formats, such as c4x, may overflow. */
if (! TREE_OVERFLOW (tem) || ! flag_trapping_math)
- return convert (type, tem);
+ return fold_convert (type, tem);
break;
case COMPLEX_CST:
@@ -978,16 +979,16 @@ negate_expr (tree t)
break;
case NEGATE_EXPR:
- return convert (type, TREE_OPERAND (t, 0));
+ return fold_convert (type, TREE_OPERAND (t, 0));
case MINUS_EXPR:
/* - (A - B) -> B - A */
if ((! FLOAT_TYPE_P (type) || flag_unsafe_math_optimizations)
&& reorder_operands_p (TREE_OPERAND (t, 0), TREE_OPERAND (t, 1)))
- return convert (type,
- fold (build (MINUS_EXPR, TREE_TYPE (t),
- TREE_OPERAND (t, 1),
- TREE_OPERAND (t, 0))));
+ return fold_convert (type,
+ fold (build (MINUS_EXPR, TREE_TYPE (t),
+ TREE_OPERAND (t, 1),
+ TREE_OPERAND (t, 0))));
break;
case MULT_EXPR:
@@ -1001,16 +1002,16 @@ negate_expr (tree t)
{
tem = TREE_OPERAND (t, 1);
if (negate_expr_p (tem))
- return convert (type,
- fold (build (TREE_CODE (t), TREE_TYPE (t),
- TREE_OPERAND (t, 0),
- negate_expr (tem))));
+ return fold_convert (type,
+ fold (build (TREE_CODE (t), TREE_TYPE (t),
+ TREE_OPERAND (t, 0),
+ negate_expr (tem))));
tem = TREE_OPERAND (t, 0);
if (negate_expr_p (tem))
- return convert (type,
- fold (build (TREE_CODE (t), TREE_TYPE (t),
- negate_expr (tem),
- TREE_OPERAND (t, 1))));
+ return fold_convert (type,
+ fold (build (TREE_CODE (t), TREE_TYPE (t),
+ negate_expr (tem),
+ TREE_OPERAND (t, 1))));
}
break;
@@ -1020,7 +1021,7 @@ negate_expr (tree t)
{
tem = strip_float_extensions (t);
if (tem != t && negate_expr_p (tem))
- return convert (type, negate_expr (tem));
+ return fold_convert (type, negate_expr (tem));
}
break;
@@ -1042,7 +1043,8 @@ negate_expr (tree t)
break;
}
- return convert (type, fold (build1 (NEGATE_EXPR, TREE_TYPE (t), t)));
+ tem = fold (build1 (NEGATE_EXPR, TREE_TYPE (t), t));
+ return fold_convert (type, tem);
}
/* Split a tree IN into a constant, literal and variable parts that could be
@@ -1161,16 +1163,18 @@ associate_trees (tree t1, tree t2, enum tree_code code, tree type)
if (code == PLUS_EXPR)
{
if (TREE_CODE (t1) == NEGATE_EXPR)
- return build (MINUS_EXPR, type, convert (type, t2),
- convert (type, TREE_OPERAND (t1, 0)));
+ return build (MINUS_EXPR, type, fold_convert (type, t2),
+ fold_convert (type, TREE_OPERAND (t1, 0)));
else if (TREE_CODE (t2) == NEGATE_EXPR)
- return build (MINUS_EXPR, type, convert (type, t1),
- convert (type, TREE_OPERAND (t2, 0)));
+ return build (MINUS_EXPR, type, fold_convert (type, t1),
+ fold_convert (type, TREE_OPERAND (t2, 0)));
}
- return build (code, type, convert (type, t1), convert (type, t2));
+ return build (code, type, fold_convert (type, t1),
+ fold_convert (type, t2));
}
- return fold (build (code, type, convert (type, t1), convert (type, t2)));
+ return fold (build (code, type, fold_convert (type, t1),
+ fold_convert (type, t2)));
}
/* Combine two integer constants ARG1 and ARG2 under operation CODE
@@ -1640,31 +1644,36 @@ size_diffop (tree arg0, tree arg1)
type and subtract. The hardware will do the right thing with any
overflow in the subtraction. */
if (TREE_CODE (arg0) != INTEGER_CST || TREE_CODE (arg1) != INTEGER_CST)
- return size_binop (MINUS_EXPR, convert (ctype, arg0),
- convert (ctype, arg1));
+ return size_binop (MINUS_EXPR, fold_convert (ctype, arg0),
+ fold_convert (ctype, arg1));
/* If ARG0 is larger than ARG1, subtract and return the result in CTYPE.
Otherwise, subtract the other way, convert to CTYPE (we know that can't
overflow) and negate (which can't either). Special-case a result
of zero while we're here. */
if (tree_int_cst_equal (arg0, arg1))
- return convert (ctype, integer_zero_node);
+ return fold_convert (ctype, integer_zero_node);
else if (tree_int_cst_lt (arg1, arg0))
- return convert (ctype, size_binop (MINUS_EXPR, arg0, arg1));
+ return fold_convert (ctype, size_binop (MINUS_EXPR, arg0, arg1));
else
- return size_binop (MINUS_EXPR, convert (ctype, integer_zero_node),
- convert (ctype, size_binop (MINUS_EXPR, arg1, arg0)));
+ return size_binop (MINUS_EXPR, fold_convert (ctype, integer_zero_node),
+ fold_convert (ctype, size_binop (MINUS_EXPR,
+ arg1, arg0)));
}
-/* Given T, a tree representing type conversion of ARG1, a constant,
- return a constant tree representing the result of conversion. */
+/* Attempt to fold type conversion operation CODE of expression ARG1 to
+ type TYPE. If no simplification can be done return NULL_TREE. */
static tree
-fold_convert (tree t, tree arg1)
+fold_convert_const (enum tree_code code ATTRIBUTE_UNUSED, tree type,
+ tree arg1)
{
- tree type = TREE_TYPE (t);
int overflow = 0;
+ tree t;
+
+ if (TREE_TYPE (arg1) == type)
+ return arg1;
if (POINTER_TYPE_P (type) || INTEGRAL_TYPE_P (type))
{
@@ -1673,7 +1682,7 @@ fold_convert (tree t, tree arg1)
/* If we would build a constant wider than GCC supports,
leave the conversion unfolded. */
if (TYPE_PRECISION (type) > 2 * HOST_BITS_PER_WIDE_INT)
- return t;
+ return NULL_TREE;
/* If we are trying to make a sizetype for a small integer, use
size_int to pick up cached types to reduce duplicate nodes. */
@@ -1701,6 +1710,7 @@ fold_convert (tree t, tree arg1)
|| TREE_OVERFLOW (arg1));
TREE_CONSTANT_OVERFLOW (t)
= TREE_OVERFLOW (t) | TREE_CONSTANT_OVERFLOW (arg1);
+ return t;
}
else if (TREE_CODE (arg1) == REAL_CST)
{
@@ -1766,8 +1776,8 @@ fold_convert (tree t, tree arg1)
= TREE_OVERFLOW (arg1) | force_fit_type (t, overflow);
TREE_CONSTANT_OVERFLOW (t)
= TREE_OVERFLOW (t) | TREE_CONSTANT_OVERFLOW (arg1);
+ return t;
}
- TREE_TYPE (t) = type;
}
else if (TREE_CODE (type) == REAL_TYPE)
{
@@ -1795,8 +1805,116 @@ fold_convert (tree t, tree arg1)
return t;
}
}
- TREE_CONSTANT (t) = 1;
- return t;
+ return NULL_TREE;
+}
+
+/* Convert expression ARG to type TYPE. Used by the middle-end for
+ simple conversions in preference to calling the front-end's convert. */
+
+static tree
+fold_convert (tree type, tree arg)
+{
+ tree orig = TREE_TYPE (arg);
+ tree tem;
+
+ if (type == orig)
+ return arg;
+
+ if (TREE_CODE (arg) == ERROR_MARK
+ || TREE_CODE (type) == ERROR_MARK
+ || TREE_CODE (orig) == ERROR_MARK)
+ return error_mark_node;
+
+ if (TYPE_MAIN_VARIANT (type) == TYPE_MAIN_VARIANT (orig))
+ return fold (build1 (NOP_EXPR, type, arg));
+
+ if (INTEGRAL_TYPE_P (type) || POINTER_TYPE_P (type))
+ {
+ if (TREE_CODE (arg) == INTEGER_CST)
+ {
+ tem = fold_convert_const (NOP_EXPR, type, arg);
+ if (tem != NULL_TREE)
+ return tem;
+ }
+ if (INTEGRAL_TYPE_P (orig) || POINTER_TYPE_P (orig))
+ return fold (build1 (NOP_EXPR, type, arg));
+ if (TREE_CODE (orig) == COMPLEX_TYPE)
+ {
+ tem = fold (build1 (REALPART_EXPR, TREE_TYPE (orig), arg));
+ return fold_convert (type, tem);
+ }
+ if (TREE_CODE (orig) == VECTOR_TYPE
+ && GET_MODE_SIZE (TYPE_MODE (type))
+ == GET_MODE_SIZE (TYPE_MODE (orig)))
+ return fold (build1 (NOP_EXPR, type, arg));
+ }
+ else if (TREE_CODE (type) == REAL_TYPE)
+ {
+ if (TREE_CODE (arg) == INTEGER_CST)
+ {
+ tem = fold_convert_const (FLOAT_EXPR, type, arg);
+ if (tem != NULL_TREE)
+ return tem;
+ }
+ else if (TREE_CODE (arg) == REAL_CST)
+ {
+ tem = fold_convert_const (NOP_EXPR, type, arg);
+ if (tem != NULL_TREE)
+ return tem;
+ }
+
+ if (INTEGRAL_TYPE_P (orig) || POINTER_TYPE_P (orig))
+ return fold (build1 (FLOAT_EXPR, type, arg));
+ if (TREE_CODE (orig) == REAL_TYPE)
+ return fold (build1 (flag_float_store ? CONVERT_EXPR : NOP_EXPR,
+ type, arg));
+ if (TREE_CODE (orig) == COMPLEX_TYPE)
+ {
+ tem = fold (build1 (REALPART_EXPR, TREE_TYPE (orig), arg));
+ return fold_convert (type, tem);
+ }
+ }
+ else if (TREE_CODE (type) == COMPLEX_TYPE)
+ {
+ if (INTEGRAL_TYPE_P (orig)
+ || POINTER_TYPE_P (orig)
+ || TREE_CODE (orig) == REAL_TYPE)
+ return build (COMPLEX_EXPR, type,
+ fold_convert (TREE_TYPE (type), arg),
+ fold_convert (TREE_TYPE (type), integer_zero_node));
+ if (TREE_CODE (orig) == COMPLEX_TYPE)
+ {
+ tree rpart, ipart;
+
+ if (TREE_CODE (arg) == COMPLEX_EXPR)
+ {
+ rpart = fold_convert (TREE_TYPE (type), TREE_OPERAND (arg, 0));
+ ipart = fold_convert (TREE_TYPE (type), TREE_OPERAND (arg, 1));
+ return fold (build (COMPLEX_EXPR, type, rpart, ipart));
+ }
+
+ arg = save_expr (arg);
+ rpart = fold (build1 (REALPART_EXPR, TREE_TYPE (orig), arg));
+ ipart = fold (build1 (IMAGPART_EXPR, TREE_TYPE (orig), arg));
+ rpart = fold_convert (TREE_TYPE (type), rpart);
+ ipart = fold_convert (TREE_TYPE (type), ipart);
+ return fold (build (COMPLEX_EXPR, type, rpart, ipart));
+ }
+ }
+ else if (TREE_CODE (type) == VECTOR_TYPE)
+ {
+ if ((INTEGRAL_TYPE_P (orig) || POINTER_TYPE_P (orig))
+ && GET_MODE_SIZE (TYPE_MODE (type))
+ == GET_MODE_SIZE (TYPE_MODE (orig)))
+ return fold (build1 (NOP_EXPR, type, arg));
+ if (TREE_CODE (orig) == VECTOR_TYPE
+ && GET_MODE_SIZE (TYPE_MODE (type))
+ == GET_MODE_SIZE (TYPE_MODE (orig)))
+ return fold (build1 (NOP_EXPR, type, arg));
+ }
+ else if (VOID_TYPE_P (type))
+ return fold (build1 (CONVERT_EXPR, type, arg));
+ abort ();
}
/* Return an expr equal to X but certainly not valid as an lvalue. */
@@ -2232,10 +2350,10 @@ operand_equal_for_comparison_p (tree arg0, tree arg1, tree other)
/* Make sure shorter operand is extended the right way
to match the longer operand. */
- primarg1 = convert ((*lang_hooks.types.signed_or_unsigned_type)
- (unsignedp1, TREE_TYPE (primarg1)), primarg1);
+ primarg1 = fold_convert ((*lang_hooks.types.signed_or_unsigned_type)
+ (unsignedp1, TREE_TYPE (primarg1)), primarg1);
- if (operand_equal_p (arg0, convert (type, primarg1), 0))
+ if (operand_equal_p (arg0, fold_convert (type, primarg1), 0))
return 1;
}
@@ -2431,7 +2549,7 @@ eval_subst (tree arg, tree old0, tree new0, tree old1, tree new1)
tree
omit_one_operand (tree type, tree result, tree omitted)
{
- tree t = convert (type, result);
+ tree t = fold_convert (type, result);
if (TREE_SIDE_EFFECTS (omitted))
return build (COMPOUND_EXPR, type, omitted, t);
@@ -2444,7 +2562,7 @@ omit_one_operand (tree type, tree result, tree omitted)
static tree
pedantic_omit_one_operand (tree type, tree result, tree omitted)
{
- tree t = convert (type, result);
+ tree t = fold_convert (type, result);
if (TREE_SIDE_EFFECTS (omitted))
return build (COMPOUND_EXPR, type, omitted, t);
@@ -2484,7 +2602,7 @@ invert_truthvalue (tree arg)
switch (code)
{
case INTEGER_CST:
- return convert (type, build_int_2 (integer_zerop (arg), 0));
+ return fold_convert (type, build_int_2 (integer_zerop (arg), 0));
case TRUTH_AND_EXPR:
return build (TRUTH_OR_EXPR, type,
@@ -2549,7 +2667,8 @@ invert_truthvalue (tree arg)
case BIT_AND_EXPR:
if (!integer_onep (TREE_OPERAND (arg, 1)))
break;
- return build (EQ_EXPR, type, arg, convert (type, integer_zero_node));
+ return build (EQ_EXPR, type, arg,
+ fold_convert (type, integer_zero_node));
case SAVE_EXPR:
return build1 (TRUTH_NOT_EXPR, type, arg);
@@ -2723,7 +2842,7 @@ optimize_bit_field_compare (enum tree_code code, tree compare_type,
mask = build_int_2 (~0, ~0);
TREE_TYPE (mask) = unsigned_type;
force_fit_type (mask, 0);
- mask = convert (unsigned_type, mask);
+ mask = fold_convert (unsigned_type, mask);
mask = const_binop (LSHIFT_EXPR, mask, size_int (nbitsize - lbitsize), 0);
mask = const_binop (RSHIFT_EXPR, mask,
size_int (nbitsize - lbitsize - lbitpos), 0);
@@ -2753,27 +2872,27 @@ optimize_bit_field_compare (enum tree_code code, tree compare_type,
if (lunsignedp)
{
if (! integer_zerop (const_binop (RSHIFT_EXPR,
- convert (unsigned_type, rhs),
+ fold_convert (unsigned_type, rhs),
size_int (lbitsize), 0)))
{
warning ("comparison is always %d due to width of bit-field",
code == NE_EXPR);
- return convert (compare_type,
- (code == NE_EXPR
- ? integer_one_node : integer_zero_node));
+ return fold_convert (compare_type,
+ (code == NE_EXPR
+ ? integer_one_node : integer_zero_node));
}
}
else
{
- tree tem = const_binop (RSHIFT_EXPR, convert (signed_type, rhs),
+ tree tem = const_binop (RSHIFT_EXPR, fold_convert (signed_type, rhs),
size_int (lbitsize - 1), 0);
if (! integer_zerop (tem) && ! integer_all_onesp (tem))
{
warning ("comparison is always %d due to width of bit-field",
code == NE_EXPR);
- return convert (compare_type,
- (code == NE_EXPR
- ? integer_one_node : integer_zero_node));
+ return fold_convert (compare_type,
+ (code == NE_EXPR
+ ? integer_one_node : integer_zero_node));
}
}
@@ -2781,7 +2900,7 @@ optimize_bit_field_compare (enum tree_code code, tree compare_type,
if (lbitsize == 1 && ! integer_zerop (rhs))
{
code = code == EQ_EXPR ? NE_EXPR : EQ_EXPR;
- rhs = convert (type, integer_zero_node);
+ rhs = fold_convert (type, integer_zero_node);
}
/* Make a new bitfield reference, shift the constant over the
@@ -2796,7 +2915,7 @@ optimize_bit_field_compare (enum tree_code code, tree compare_type,
rhs = fold (const_binop (BIT_AND_EXPR,
const_binop (LSHIFT_EXPR,
- convert (unsigned_type, rhs),
+ fold_convert (unsigned_type, rhs),
size_int (lbitpos), 0),
mask, 0));
@@ -2890,7 +3009,7 @@ decode_field_reference (tree exp, HOST_WIDE_INT *pbitsize,
/* Merge it with the mask we found in the BIT_AND_EXPR, if any. */
if (and_mask != 0)
mask = fold (build (BIT_AND_EXPR, unsigned_type,
- convert (unsigned_type, and_mask), mask));
+ fold_convert (unsigned_type, and_mask), mask));
*pmask = mask;
*pand_mask = and_mask;
@@ -3056,7 +3175,7 @@ range_binop (enum tree_code code, tree type, tree arg0, int upper0_p,
if (arg0 != 0 && arg1 != 0)
{
tem = fold (build (code, type != 0 ? type : TREE_TYPE (arg0),
- arg0, convert (TREE_TYPE (arg0), arg1)));
+ arg0, fold_convert (TREE_TYPE (arg0), arg1)));
STRIP_NOPS (tem);
return TREE_CODE (tem) == INTEGER_CST ? tem : 0;
}
@@ -3096,7 +3215,7 @@ range_binop (enum tree_code code, tree type, tree arg0, int upper0_p,
abort ();
}
- return convert (type, result ? integer_one_node : integer_zero_node);
+ return fold_convert (type, result ? integer_one_node : integer_zero_node);
}
/* Given EXP, a logical expression, set the range it is testing into
@@ -3120,7 +3239,8 @@ make_range (tree exp, int *pin_p, tree *plow, tree *phigh)
the outer loop when we've changed something; otherwise we "break"
the switch, which will "break" the while. */
- in_p = 0, low = high = convert (TREE_TYPE (exp), integer_zero_node);
+ in_p = 0;
+ low = high = fold_convert (TREE_TYPE (exp), integer_zero_node);
while (1)
{
@@ -3197,7 +3317,7 @@ make_range (tree exp, int *pin_p, tree *plow, tree *phigh)
if (TREE_UNSIGNED (type) && (low == 0 || high == 0))
{
if (! merge_ranges (&n_in_p, &n_low, &n_high, in_p, low, high,
- 1, convert (type, integer_zero_node),
+ 1, fold_convert (type, integer_zero_node),
NULL_TREE))
break;
@@ -3211,7 +3331,7 @@ make_range (tree exp, int *pin_p, tree *plow, tree *phigh)
in_p = ! in_p;
high = range_binop (MINUS_EXPR, NULL_TREE, low, 0,
integer_one_node, 0);
- low = convert (type, integer_zero_node);
+ low = fold_convert (type, integer_zero_node);
}
}
continue;
@@ -3219,9 +3339,11 @@ make_range (tree exp, int *pin_p, tree *plow, tree *phigh)
case NEGATE_EXPR:
/* (-x) IN [a,b] -> x in [-b, -a] */
n_low = range_binop (MINUS_EXPR, type,
- convert (type, integer_zero_node), 0, high, 1);
+ fold_convert (type, integer_zero_node),
+ 0, high, 1);
n_high = range_binop (MINUS_EXPR, type,
- convert (type, integer_zero_node), 0, low, 0);
+ fold_convert (type, integer_zero_node),
+ 0, low, 0);
low = n_low, high = n_high;
exp = arg0;
continue;
@@ -3229,7 +3351,7 @@ make_range (tree exp, int *pin_p, tree *plow, tree *phigh)
case BIT_NOT_EXPR:
/* ~ X -> -X - 1 */
exp = build (MINUS_EXPR, type, negate_expr (arg0),
- convert (type, integer_one_node));
+ fold_convert (type, integer_one_node));
continue;
case PLUS_EXPR: case MINUS_EXPR:
@@ -3285,10 +3407,10 @@ make_range (tree exp, int *pin_p, tree *plow, tree *phigh)
n_low = low, n_high = high;
if (n_low != 0)
- n_low = convert (type, n_low);
+ n_low = fold_convert (type, n_low);
if (n_high != 0)
- n_high = convert (type, n_high);
+ n_high = fold_convert (type, n_high);
/* If we're converting from an unsigned to a signed type,
we will be doing the comparison as unsigned. The tests above
@@ -3311,8 +3433,10 @@ make_range (tree exp, int *pin_p, tree *plow, tree *phigh)
if (TYPE_PRECISION (type) == TYPE_PRECISION (TREE_TYPE (exp)))
high_positive = fold (build (RSHIFT_EXPR, type,
- convert (type, high_positive),
- convert (type, integer_one_node)));
+ fold_convert (type,
+ high_positive),
+ fold_convert (type,
+ integer_one_node)));
/* If the low bound is specified, "and" the range with the
range for which the original unsigned value will be
@@ -3320,8 +3444,8 @@ make_range (tree exp, int *pin_p, tree *plow, tree *phigh)
if (low != 0)
{
if (! merge_ranges (&n_in_p, &n_low, &n_high,
- 1, n_low, n_high,
- 1, convert (type, integer_zero_node),
+ 1, n_low, n_high, 1,
+ fold_convert (type, integer_zero_node),
high_positive))
break;
@@ -3332,8 +3456,8 @@ make_range (tree exp, int *pin_p, tree *plow, tree *phigh)
/* Otherwise, "or" the range with the range of the input
that will be interpreted as negative. */
if (! merge_ranges (&n_in_p, &n_low, &n_high,
- 0, n_low, n_high,
- 1, convert (type, integer_zero_node),
+ 0, n_low, n_high, 1,
+ fold_convert (type, integer_zero_node),
high_positive))
break;
@@ -3382,7 +3506,7 @@ build_range_check (tree type, tree exp, int in_p, tree low, tree high)
return invert_truthvalue (value);
if (low == 0 && high == 0)
- return convert (type, integer_one_node);
+ return fold_convert (type, integer_one_node);
if (low == 0)
return fold (build (LE_EXPR, type, exp, high));
@@ -3398,8 +3522,8 @@ build_range_check (tree type, tree exp, int in_p, tree low, tree high)
if (! TREE_UNSIGNED (etype))
{
etype = (*lang_hooks.types.unsigned_type) (etype);
- high = convert (etype, high);
- exp = convert (etype, exp);
+ high = fold_convert (etype, high);
+ exp = fold_convert (etype, exp);
}
return build_range_check (type, exp, 1, 0, high);
}
@@ -3428,10 +3552,10 @@ build_range_check (tree type, tree exp, int in_p, tree low, tree high)
if (TREE_UNSIGNED (etype))
{
etype = (*lang_hooks.types.signed_type) (etype);
- exp = convert (etype, exp);
+ exp = fold_convert (etype, exp);
}
return fold (build (GT_EXPR, type, exp,
- convert (etype, integer_zero_node)));
+ fold_convert (etype, integer_zero_node)));
}
}
@@ -3439,7 +3563,8 @@ build_range_check (tree type, tree exp, int in_p, tree low, tree high)
&& ! TREE_OVERFLOW (value))
return build_range_check (type,
fold (build (MINUS_EXPR, etype, exp, low)),
- 1, convert (etype, integer_zero_node), value);
+ 1, fold_convert (etype, integer_zero_node),
+ value);
return 0;
}
@@ -3679,17 +3804,18 @@ unextend (tree c, int p, int unsignedp, tree mask)
zero or one, and the conversion to a signed type can never overflow.
We could get an overflow if this conversion is done anywhere else. */
if (TREE_UNSIGNED (type))
- temp = convert ((*lang_hooks.types.signed_type) (type), temp);
+ temp = fold_convert ((*lang_hooks.types.signed_type) (type), temp);
temp = const_binop (LSHIFT_EXPR, temp, size_int (modesize - 1), 0);
temp = const_binop (RSHIFT_EXPR, temp, size_int (modesize - p - 1), 0);
if (mask != 0)
- temp = const_binop (BIT_AND_EXPR, temp, convert (TREE_TYPE (c), mask), 0);
+ temp = const_binop (BIT_AND_EXPR, temp,
+ fold_convert (TREE_TYPE (c), mask), 0);
/* If necessary, convert the type back to match the type of C. */
if (TREE_UNSIGNED (type))
- temp = convert (type, temp);
+ temp = fold_convert (type, temp);
- return convert (type, const_binop (BIT_XOR_EXPR, c, temp, 0));
+ return fold_convert (type, const_binop (BIT_XOR_EXPR, c, temp, 0));
}
/* Find ways of folding logical expressions of LHS and RHS:
@@ -3807,9 +3933,9 @@ fold_truthop (enum tree_code code, tree truth_type, tree lhs, tree rhs)
compcode = -1;
if (compcode == COMPCODE_TRUE)
- return convert (truth_type, integer_one_node);
+ return fold_convert (truth_type, integer_one_node);
else if (compcode == COMPCODE_FALSE)
- return convert (truth_type, integer_zero_node);
+ return fold_convert (truth_type, integer_zero_node);
else if (compcode != -1)
return build (compcode_to_comparison (compcode),
truth_type, ll_arg, lr_arg);
@@ -3949,14 +4075,14 @@ fold_truthop (enum tree_code code, tree truth_type, tree lhs, tree rhs)
xrl_bitpos = lnbitsize - xrl_bitpos - rl_bitsize;
}
- ll_mask = const_binop (LSHIFT_EXPR, convert (lntype, ll_mask),
+ ll_mask = const_binop (LSHIFT_EXPR, fold_convert (lntype, ll_mask),
size_int (xll_bitpos), 0);
- rl_mask = const_binop (LSHIFT_EXPR, convert (lntype, rl_mask),
+ rl_mask = const_binop (LSHIFT_EXPR, fold_convert (lntype, rl_mask),
size_int (xrl_bitpos), 0);
if (l_const)
{
- l_const = convert (lntype, l_const);
+ l_const = fold_convert (lntype, l_const);
l_const = unextend (l_const, ll_bitsize, ll_unsignedp, ll_and_mask);
l_const = const_binop (LSHIFT_EXPR, l_const, size_int (xll_bitpos), 0);
if (! integer_zerop (const_binop (BIT_AND_EXPR, l_const,
@@ -3966,14 +4092,14 @@ fold_truthop (enum tree_code code, tree truth_type, tree lhs, tree rhs)
{
warning ("comparison is always %d", wanted_code == NE_EXPR);
- return convert (truth_type,
- wanted_code == NE_EXPR
- ? integer_one_node : integer_zero_node);
+ return fold_convert (truth_type,
+ wanted_code == NE_EXPR
+ ? integer_one_node : integer_zero_node);
}
}
if (r_const)
{
- r_const = convert (lntype, r_const);
+ r_const = fold_convert (lntype, r_const);
r_const = unextend (r_const, rl_bitsize, rl_unsignedp, rl_and_mask);
r_const = const_binop (LSHIFT_EXPR, r_const, size_int (xrl_bitpos), 0);
if (! integer_zerop (const_binop (BIT_AND_EXPR, r_const,
@@ -3983,9 +4109,9 @@ fold_truthop (enum tree_code code, tree truth_type, tree lhs, tree rhs)
{
warning ("comparison is always %d", wanted_code == NE_EXPR);
- return convert (truth_type,
- wanted_code == NE_EXPR
- ? integer_one_node : integer_zero_node);
+ return fold_convert (truth_type,
+ wanted_code == NE_EXPR
+ ? integer_one_node : integer_zero_node);
}
}
@@ -4020,9 +4146,9 @@ fold_truthop (enum tree_code code, tree truth_type, tree lhs, tree rhs)
xrr_bitpos = rnbitsize - xrr_bitpos - rr_bitsize;
}
- lr_mask = const_binop (LSHIFT_EXPR, convert (rntype, lr_mask),
+ lr_mask = const_binop (LSHIFT_EXPR, fold_convert (rntype, lr_mask),
size_int (xlr_bitpos), 0);
- rr_mask = const_binop (LSHIFT_EXPR, convert (rntype, rr_mask),
+ rr_mask = const_binop (LSHIFT_EXPR, fold_convert (rntype, rr_mask),
size_int (xrr_bitpos), 0);
/* Make a mask that corresponds to both fields being compared.
@@ -4077,14 +4203,14 @@ fold_truthop (enum tree_code code, tree truth_type, tree lhs, tree rhs)
{
if (lnbitsize > rnbitsize)
{
- lhs = convert (rntype, lhs);
- ll_mask = convert (rntype, ll_mask);
+ lhs = fold_convert (rntype, lhs);
+ ll_mask = fold_convert (rntype, ll_mask);
type = rntype;
}
else if (lnbitsize < rnbitsize)
{
- rhs = convert (lntype, rhs);
- lr_mask = convert (lntype, lr_mask);
+ rhs = fold_convert (lntype, rhs);
+ lr_mask = fold_convert (lntype, lr_mask);
type = lntype;
}
}
@@ -4113,12 +4239,12 @@ fold_truthop (enum tree_code code, tree truth_type, tree lhs, tree rhs)
if (wanted_code == NE_EXPR)
{
warning ("`or' of unmatched not-equal tests is always 1");
- return convert (truth_type, integer_one_node);
+ return fold_convert (truth_type, integer_one_node);
}
else
{
warning ("`and' of mutually exclusive equal-tests is always 0");
- return convert (truth_type, integer_zero_node);
+ return fold_convert (truth_type, integer_zero_node);
}
}
@@ -4303,7 +4429,8 @@ extract_muldiv_1 (tree t, tree c, enum tree_code code, tree wide_type)
or (for divide and modulus) if it is a multiple of our constant. */
if (code == MULT_EXPR
|| integer_zerop (const_binop (TRUNC_MOD_EXPR, t, c, 0)))
- return const_binop (code, convert (ctype, t), convert (ctype, c), 0);
+ return const_binop (code, fold_convert (ctype, t),
+ fold_convert (ctype, c), 0);
break;
case CONVERT_EXPR: case NON_LVALUE_EXPR: case NOP_EXPR:
@@ -4333,7 +4460,7 @@ extract_muldiv_1 (tree t, tree c, enum tree_code code, tree wide_type)
/* Pass the constant down and see if we can make a simplification. If
we can, replace this expression with the inner simplification for
possible later conversion to our or some other type. */
- if ((t2 = convert (TREE_TYPE (op0), c)) != 0
+ if ((t2 = fold_convert (TREE_TYPE (op0), c)) != 0
&& TREE_CODE (t2) == INTEGER_CST
&& ! TREE_CONSTANT_OVERFLOW (t2)
&& (0 != (t1 = extract_muldiv (op0, t2, code,
@@ -4344,7 +4471,7 @@ extract_muldiv_1 (tree t, tree c, enum tree_code code, tree wide_type)
case NEGATE_EXPR: case ABS_EXPR:
if ((t1 = extract_muldiv (op0, c, code, wide_type)) != 0)
- return fold (build1 (tcode, ctype, convert (ctype, t1)));
+ return fold (build1 (tcode, ctype, fold_convert (ctype, t1)));
break;
case MIN_EXPR: case MAX_EXPR:
@@ -4360,8 +4487,8 @@ extract_muldiv_1 (tree t, tree c, enum tree_code code, tree wide_type)
if (tree_int_cst_sgn (c) < 0)
tcode = (tcode == MIN_EXPR ? MAX_EXPR : MIN_EXPR);
- return fold (build (tcode, ctype, convert (ctype, t1),
- convert (ctype, t2)));
+ return fold (build (tcode, ctype, fold_convert (ctype, t1),
+ fold_convert (ctype, t2)));
}
break;
@@ -4380,13 +4507,14 @@ extract_muldiv_1 (tree t, tree c, enum tree_code code, tree wide_type)
so check for it explicitly here. */
&& TYPE_PRECISION (TREE_TYPE (size_one_node)) > TREE_INT_CST_LOW (op1)
&& TREE_INT_CST_HIGH (op1) == 0
- && 0 != (t1 = convert (ctype,
- const_binop (LSHIFT_EXPR, size_one_node,
- op1, 0)))
+ && 0 != (t1 = fold_convert (ctype,
+ const_binop (LSHIFT_EXPR,
+ size_one_node,
+ op1, 0)))
&& ! TREE_OVERFLOW (t1))
return extract_muldiv (build (tcode == LSHIFT_EXPR
? MULT_EXPR : FLOOR_DIV_EXPR,
- ctype, convert (ctype, op0), t1),
+ ctype, fold_convert (ctype, op0), t1),
c, code, wide_type);
break;
@@ -4403,8 +4531,8 @@ extract_muldiv_1 (tree t, tree c, enum tree_code code, tree wide_type)
are divisible by c. */
|| (multiple_of_p (ctype, op0, c)
&& multiple_of_p (ctype, op1, c))))
- return fold (build (tcode, ctype, convert (ctype, t1),
- convert (ctype, t2)));
+ return fold (build (tcode, ctype, fold_convert (ctype, t1),
+ fold_convert (ctype, t2)));
/* If this was a subtraction, negate OP1 and set it to be an addition.
This simplifies the logic below. */
@@ -4433,8 +4561,8 @@ extract_muldiv_1 (tree t, tree c, enum tree_code code, tree wide_type)
if (code == MULT_EXPR
|| integer_zerop (const_binop (TRUNC_MOD_EXPR, op1, c, 0)))
{
- op1 = const_binop (code, convert (ctype, op1),
- convert (ctype, c), 0);
+ op1 = const_binop (code, fold_convert (ctype, op1),
+ fold_convert (ctype, c), 0);
/* We allow the constant to overflow with wrapping semantics. */
if (op1 == 0
|| (TREE_OVERFLOW (op1) && ! flag_wrapv))
@@ -4454,15 +4582,16 @@ extract_muldiv_1 (tree t, tree c, enum tree_code code, tree wide_type)
/* If we were able to eliminate our operation from the first side,
apply our operation to the second side and reform the PLUS. */
if (t1 != 0 && (TREE_CODE (t1) != code || code == MULT_EXPR))
- return fold (build (tcode, ctype, convert (ctype, t1), op1));
+ return fold (build (tcode, ctype, fold_convert (ctype, t1), op1));
/* The last case is if we are a multiply. In that case, we can
apply the distributive law to commute the multiply and addition
if the multiplication of the constants doesn't overflow. */
if (code == MULT_EXPR)
- return fold (build (tcode, ctype, fold (build (code, ctype,
- convert (ctype, op0),
- convert (ctype, c))),
+ return fold (build (tcode, ctype,
+ fold (build (code, ctype,
+ fold_convert (ctype, op0),
+ fold_convert (ctype, c))),
op1));
break;
@@ -4485,22 +4614,22 @@ extract_muldiv_1 (tree t, tree c, enum tree_code code, tree wide_type)
do something only if the second operand is a constant. */
if (same_p
&& (t1 = extract_muldiv (op0, c, code, wide_type)) != 0)
- return fold (build (tcode, ctype, convert (ctype, t1),
- convert (ctype, op1)));
+ return fold (build (tcode, ctype, fold_convert (ctype, t1),
+ fold_convert (ctype, op1)));
else if (tcode == MULT_EXPR && code == MULT_EXPR
&& (t1 = extract_muldiv (op1, c, code, wide_type)) != 0)
- return fold (build (tcode, ctype, convert (ctype, op0),
- convert (ctype, t1)));
+ return fold (build (tcode, ctype, fold_convert (ctype, op0),
+ fold_convert (ctype, t1)));
else if (TREE_CODE (op1) != INTEGER_CST)
return 0;
/* If these are the same operation types, we can associate them
assuming no overflow. */
if (tcode == code
- && 0 != (t1 = const_binop (MULT_EXPR, convert (ctype, op1),
- convert (ctype, c), 0))
+ && 0 != (t1 = const_binop (MULT_EXPR, fold_convert (ctype, op1),
+ fold_convert (ctype, c), 0))
&& ! TREE_OVERFLOW (t1))
- return fold (build (tcode, ctype, convert (ctype, op0), t1));
+ return fold (build (tcode, ctype, fold_convert (ctype, op0), t1));
/* If these operations "cancel" each other, we have the main
optimizations of this pass, which occur when either constant is a
@@ -4519,15 +4648,15 @@ extract_muldiv_1 (tree t, tree c, enum tree_code code, tree wide_type)
&& code != FLOOR_MOD_EXPR && code != ROUND_MOD_EXPR)))
{
if (integer_zerop (const_binop (TRUNC_MOD_EXPR, op1, c, 0)))
- return fold (build (tcode, ctype, convert (ctype, op0),
- convert (ctype,
- const_binop (TRUNC_DIV_EXPR,
- op1, c, 0))));
+ return fold (build (tcode, ctype, fold_convert (ctype, op0),
+ fold_convert (ctype,
+ const_binop (TRUNC_DIV_EXPR,
+ op1, c, 0))));
else if (integer_zerop (const_binop (TRUNC_MOD_EXPR, c, op1, 0)))
- return fold (build (code, ctype, convert (ctype, op0),
- convert (ctype,
- const_binop (TRUNC_DIV_EXPR,
- c, op1, 0))));
+ return fold (build (code, ctype, fold_convert (ctype, op0),
+ fold_convert (ctype,
+ const_binop (TRUNC_DIV_EXPR,
+ c, op1, 0))));
}
break;
@@ -4694,8 +4823,8 @@ fold_binary_op_with_conditional_arg (enum tree_code code, tree type,
{
tree testtype = TREE_TYPE (cond);
test = cond;
- true_value = convert (testtype, integer_one_node);
- false_value = convert (testtype, integer_zero_node);
+ true_value = fold_convert (testtype, integer_one_node);
+ false_value = fold_convert (testtype, integer_zero_node);
}
/* If ARG is complex we want to make sure we only evaluate it once. Though
@@ -4729,7 +4858,7 @@ fold_binary_op_with_conditional_arg (enum tree_code code, tree type,
{
arg = save_expr (arg);
lhs = rhs = 0;
- save = 1;
+ save = saved_expr_p (arg);
}
}
@@ -4740,12 +4869,18 @@ fold_binary_op_with_conditional_arg (enum tree_code code, tree type,
test = fold (build (COND_EXPR, type, test, lhs, rhs));
+ /* If ARG involves a SAVE_EXPR, we need to ensure it is evaluated
+ ahead of the COND_EXPR we made. Otherwise we would have it only
+ evaluated in one branch, with the other branch using the result
+ but missing the evaluation code. Beware that the save_expr call
+ above might not return a SAVE_EXPR, so testing the TREE_CODE
+ of ARG is not enough to decide here.  */
if (save)
return build (COMPOUND_EXPR, type,
- convert (void_type_node, arg),
+ fold_convert (void_type_node, arg),
strip_compound_expr (test, arg));
else
- return convert (type, test);
+ return fold_convert (type, test);
}
@@ -4817,14 +4952,14 @@ fold_mathfn_compare (enum built_in_function fcode, enum tree_code code,
/* sqrt(x) < y is always false, if y is negative. */
if (code == EQ_EXPR || code == LT_EXPR || code == LE_EXPR)
return omit_one_operand (type,
- convert (type, integer_zero_node),
+ fold_convert (type, integer_zero_node),
arg);
/* sqrt(x) > y is always true, if y is negative and we
don't care about NaNs, i.e. negative values of x. */
if (code == NE_EXPR || !HONOR_NANS (mode))
return omit_one_operand (type,
- convert (type, integer_one_node),
+ fold_convert (type, integer_one_node),
arg);
/* sqrt(x) > y is the same as x >= 0, if y is negative. */
@@ -4848,7 +4983,7 @@ fold_mathfn_compare (enum built_in_function fcode, enum tree_code code,
/* sqrt(x) > y is always false, when y is very large
and we don't care about infinities. */
return omit_one_operand (type,
- convert (type, integer_zero_node),
+ fold_convert (type, integer_zero_node),
arg);
}
@@ -4869,7 +5004,7 @@ fold_mathfn_compare (enum built_in_function fcode, enum tree_code code,
value and we don't care about NaNs or Infinities. */
if (! HONOR_NANS (mode) && ! HONOR_INFINITIES (mode))
return omit_one_operand (type,
- convert (type, integer_one_node),
+ fold_convert (type, integer_one_node),
arg);
/* sqrt(x) < y is x != +Inf when y is very large and we
@@ -4955,14 +5090,14 @@ fold_inf_compare (enum tree_code code, tree type, tree arg0, tree arg1)
if (HONOR_SNANS (mode))
return NULL_TREE;
return omit_one_operand (type,
- convert (type, integer_zero_node),
+ fold_convert (type, integer_zero_node),
arg0);
case LE_EXPR:
/* x <= +Inf is always true, if we don't case about NaNs. */
if (! HONOR_NANS (mode))
return omit_one_operand (type,
- convert (type, integer_one_node),
+ fold_convert (type, integer_one_node),
arg0);
/* x <= +Inf is the same as x == x, i.e. isfinite(x). */
@@ -5049,8 +5184,8 @@ fold_single_bit_test (enum tree_code code, tree arg0, tree arg1,
{
tree stype = (*lang_hooks.types.signed_type) (TREE_TYPE (arg00));
return fold (build (code == EQ_EXPR ? GE_EXPR : LT_EXPR, result_type,
- convert (stype, arg00),
- convert (stype, integer_zero_node)));
+ fold_convert (stype, arg00),
+ fold_convert (stype, integer_zero_node)));
}
/* At this point, we know that arg0 is not testing the sign bit. */
@@ -5086,7 +5221,7 @@ fold_single_bit_test (enum tree_code code, tree arg0, tree arg1,
signed_type = (*lang_hooks.types.type_for_mode) (operand_mode, 0);
unsigned_type = (*lang_hooks.types.type_for_mode) (operand_mode, 1);
intermediate_type = ops_unsigned ? unsigned_type : signed_type;
- inner = convert (intermediate_type, inner);
+ inner = fold_convert (intermediate_type, inner);
if (bitnum != 0)
inner = build (RSHIFT_EXPR, intermediate_type,
@@ -5101,7 +5236,7 @@ fold_single_bit_test (enum tree_code code, tree arg0, tree arg1,
inner, integer_one_node);
/* Make sure to return the proper type. */
- inner = convert (result_type, inner);
+ inner = fold_convert (result_type, inner);
return inner;
}
@@ -5277,7 +5412,8 @@ fold (tree expr)
|| code == MAX_EXPR || code == BIT_IOR_EXPR || code == BIT_XOR_EXPR
|| code == BIT_AND_EXPR)
&& tree_swap_operands_p (arg0, arg1, true))
- return fold (build (code, type, arg1, arg0));
+ return fold (build (code, type, TREE_OPERAND (t, 1),
+ TREE_OPERAND (t, 0)));
/* Now WINS is set as described above,
ARG0 is the first operand of EXPR,
@@ -5467,7 +5603,8 @@ fold (tree expr)
if (TYPE_MAIN_VARIANT (inside_type) == TYPE_MAIN_VARIANT (final_type)
&& ((inter_int && final_int) || (inter_float && final_float))
&& inter_prec >= final_prec)
- return convert (final_type, TREE_OPERAND (TREE_OPERAND (t, 0), 0));
+ return fold (build1 (code, final_type,
+ TREE_OPERAND (TREE_OPERAND (t, 0), 0)));
/* Likewise, if the intermediate and final types are either both
float or both integer, we don't need the middle conversion if
@@ -5482,14 +5619,16 @@ fold (tree expr)
&& ! (final_prec != GET_MODE_BITSIZE (TYPE_MODE (final_type))
&& TYPE_MODE (final_type) == TYPE_MODE (inter_type))
&& ! final_ptr)
- return convert (final_type, TREE_OPERAND (TREE_OPERAND (t, 0), 0));
+ return fold (build1 (code, final_type,
+ TREE_OPERAND (TREE_OPERAND (t, 0), 0)));
/* If we have a sign-extension of a zero-extended value, we can
replace that by a single zero-extension. */
if (inside_int && inter_int && final_int
&& inside_prec < inter_prec && inter_prec < final_prec
&& inside_unsignedp && !inter_unsignedp)
- return convert (final_type, TREE_OPERAND (TREE_OPERAND (t, 0), 0));
+ return fold (build1 (code, final_type,
+ TREE_OPERAND (TREE_OPERAND (t, 0), 0)));
/* Two conversions in a row are not needed unless:
- some conversion is floating-point (overstrict for now), or
@@ -5513,7 +5652,8 @@ fold (tree expr)
&& ! (final_prec != GET_MODE_BITSIZE (TYPE_MODE (final_type))
&& TYPE_MODE (final_type) == TYPE_MODE (inter_type))
&& ! final_ptr)
- return convert (final_type, TREE_OPERAND (TREE_OPERAND (t, 0), 0));
+ return fold (build1 (code, final_type,
+ TREE_OPERAND (TREE_OPERAND (t, 0), 0)));
}
if (TREE_CODE (TREE_OPERAND (t, 0)) == MODIFY_EXPR
@@ -5530,6 +5670,7 @@ fold (tree expr)
TREE_OPERAND (t, 0) = TREE_OPERAND (prev, 1);
/* First do the assignment, then return converted constant. */
t = build (COMPOUND_EXPR, TREE_TYPE (t), prev, fold (t));
+ TREE_NO_UNUSED_WARNING (t) = 1;
TREE_USED (t) = 1;
return t;
}
@@ -5566,28 +5707,19 @@ fold (tree expr)
== ZERO_EXTEND))
{
tree uns = (*lang_hooks.types.unsigned_type) (TREE_TYPE (and0));
- and0 = convert (uns, and0);
- and1 = convert (uns, and1);
+ and0 = fold_convert (uns, and0);
+ and1 = fold_convert (uns, and1);
}
#endif
}
if (change)
return fold (build (BIT_AND_EXPR, TREE_TYPE (t),
- convert (TREE_TYPE (t), and0),
- convert (TREE_TYPE (t), and1)));
+ fold_convert (TREE_TYPE (t), and0),
+ fold_convert (TREE_TYPE (t), and1)));
}
- if (!wins)
- {
- if (TREE_CONSTANT (t) != TREE_CONSTANT (arg0))
- {
- if (t == orig_t)
- t = copy_node (t);
- TREE_CONSTANT (t) = TREE_CONSTANT (arg0);
- }
- return t;
- }
- return fold_convert (t, arg0);
+ tem = fold_convert_const (code, TREE_TYPE (t), arg0);
+ return tem ? tem : t;
case VIEW_CONVERT_EXPR:
if (TREE_CODE (TREE_OPERAND (t, 0)) == VIEW_CONVERT_EXPR)
@@ -5616,7 +5748,7 @@ fold (tree expr)
case NEGATE_EXPR:
if (negate_expr_p (arg0))
- return negate_expr (arg0);
+ return fold_convert (type, negate_expr (arg0));
return t;
case ABS_EXPR:
@@ -5664,8 +5796,9 @@ fold (tree expr)
{
tree targ0 = strip_float_extensions (arg0);
if (targ0 != arg0)
- return convert (type, fold (build1 (ABS_EXPR, TREE_TYPE (targ0),
- targ0)));
+ return fold_convert (type, fold (build1 (ABS_EXPR,
+ TREE_TYPE (targ0),
+ targ0)));
}
else if (tree_expr_nonnegative_p (arg0))
return arg0;
@@ -5673,7 +5806,7 @@ fold (tree expr)
case CONJ_EXPR:
if (TREE_CODE (TREE_TYPE (arg0)) != COMPLEX_TYPE)
- return convert (type, arg0);
+ return fold_convert (type, arg0);
else if (TREE_CODE (arg0) == COMPLEX_EXPR)
return build (COMPLEX_EXPR, type,
TREE_OPERAND (arg0, 0),
@@ -5715,7 +5848,7 @@ fold (tree expr)
else if (! FLOAT_TYPE_P (type))
{
if (integer_zerop (arg1))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
/* If we are adding two BIT_AND_EXPR's, both of which are and'ing
with a constant, and the two constants have no bits in common,
@@ -5756,16 +5889,16 @@ fold (tree expr)
&& TREE_CODE (parg1) != MULT_EXPR)
return fold (build (PLUS_EXPR, type,
fold (build (PLUS_EXPR, type,
- convert (type, parg0),
- convert (type, marg))),
- convert (type, parg1)));
+ fold_convert (type, parg0),
+ fold_convert (type, marg))),
+ fold_convert (type, parg1)));
if (TREE_CODE (parg0) != MULT_EXPR
&& TREE_CODE (parg1) == MULT_EXPR)
return fold (build (PLUS_EXPR, type,
fold (build (PLUS_EXPR, type,
- convert (type, parg1),
- convert (type, marg))),
- convert (type, parg0)));
+ fold_convert (type, parg1),
+ fold_convert (type, marg))),
+ fold_convert (type, parg0)));
}
if (TREE_CODE (arg0) == MULT_EXPR && TREE_CODE (arg1) == MULT_EXPR)
@@ -5833,11 +5966,11 @@ fold (tree expr)
{
/* See if ARG1 is zero and X + ARG1 reduces to X. */
if (fold_real_zero_addition_p (TREE_TYPE (arg0), arg1, 0))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
/* Likewise if the operands are reversed. */
if (fold_real_zero_addition_p (TREE_TYPE (arg1), arg0, 0))
- return non_lvalue (convert (type, arg1));
+ return non_lvalue (fold_convert (type, arg1));
/* Convert x+x into x*2.0. */
if (operand_equal_p (arg0, arg1, 0)
@@ -6030,19 +6163,22 @@ fold (tree expr)
if (minus_lit0)
{
if (con0 == 0)
- return convert (type, associate_trees (var0, minus_lit0,
- MINUS_EXPR, type));
+ return fold_convert (type,
+ associate_trees (var0, minus_lit0,
+ MINUS_EXPR, type));
else
{
con0 = associate_trees (con0, minus_lit0,
MINUS_EXPR, type);
- return convert (type, associate_trees (var0, con0,
- PLUS_EXPR, type));
+ return fold_convert (type,
+ associate_trees (var0, con0,
+ PLUS_EXPR, type));
}
}
con0 = associate_trees (con0, lit0, code, type);
- return convert (type, associate_trees (var0, con0, code, type));
+ return fold_convert (type, associate_trees (var0, con0,
+ code, type));
}
}
@@ -6054,7 +6190,7 @@ fold (tree expr)
/* The return value should always have
the same type as the original expression. */
if (TREE_TYPE (t1) != TREE_TYPE (t))
- t1 = convert (TREE_TYPE (t), t1);
+ t1 = fold_convert (TREE_TYPE (t), t1);
return t1;
}
@@ -6076,9 +6212,9 @@ fold (tree expr)
if (! FLOAT_TYPE_P (type))
{
if (! wins && integer_zerop (arg0))
- return negate_expr (convert (type, arg1));
+ return negate_expr (fold_convert (type, arg1));
if (integer_zerop (arg1))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
/* (A * C) - (B * C) -> (A-B) * C. Since we are most concerned
about the case where C is a constant, just try one of the
@@ -6131,13 +6267,13 @@ fold (tree expr)
/* See if ARG1 is zero and X - ARG1 reduces to X. */
else if (fold_real_zero_addition_p (TREE_TYPE (arg0), arg1, 1))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
/* (ARG0 - ARG1) is the same as (-ARG1 + ARG0). So check whether
ARG0 is zero and X + ARG0 reduces to X, since that would mean
(-ARG1 + ARG0) reduces to -ARG1. */
else if (!wins && fold_real_zero_addition_p (TREE_TYPE (arg1), arg0, 0))
- return negate_expr (convert (type, arg1));
+ return negate_expr (fold_convert (type, arg1));
/* Fold &x - &x. This can happen from &x.foo - &x.
This is unsafe for certain floats even in non-IEEE formats.
@@ -6147,7 +6283,7 @@ fold (tree expr)
if ((! FLOAT_TYPE_P (type) || flag_unsafe_math_optimizations)
&& operand_equal_p (arg0, arg1, 0))
- return convert (type, integer_zero_node);
+ return fold_convert (type, integer_zero_node);
goto associate;
@@ -6167,7 +6303,7 @@ fold (tree expr)
if (integer_zerop (arg1))
return omit_one_operand (type, arg1, arg0);
if (integer_onep (arg1))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
/* (a * (1 << b)) is (a << b) */
if (TREE_CODE (arg1) == LSHIFT_EXPR
@@ -6181,9 +6317,9 @@ fold (tree expr)
if (TREE_CODE (arg1) == INTEGER_CST
&& 0 != (tem = extract_muldiv (TREE_OPERAND (t, 0),
- convert (type, arg1),
+ fold_convert (type, arg1),
code, NULL_TREE)))
- return convert (type, tem);
+ return fold_convert (type, tem);
}
else
@@ -6199,7 +6335,7 @@ fold (tree expr)
/* In IEEE floating point, x*1 is not equivalent to x for snans. */
if (!HONOR_SNANS (TYPE_MODE (TREE_TYPE (arg0)))
&& real_onep (arg1))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
/* Transform x * -1.0 into -x. */
if (!HONOR_SNANS (TYPE_MODE (TREE_TYPE (arg0)))
@@ -6420,7 +6556,7 @@ fold (tree expr)
if (integer_all_onesp (arg1))
return omit_one_operand (type, arg1, arg0);
if (integer_zerop (arg1))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
t1 = distribute_bit_expr (code, type, arg0, arg1);
if (t1 != NULL_TREE)
return t1;
@@ -6446,7 +6582,7 @@ fold (tree expr)
case BIT_XOR_EXPR:
if (integer_zerop (arg1))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
if (integer_all_onesp (arg1))
return fold (build1 (BIT_NOT_EXPR, type, arg0));
@@ -6472,7 +6608,7 @@ fold (tree expr)
case BIT_AND_EXPR:
if (integer_all_onesp (arg1))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
if (integer_zerop (arg1))
return omit_one_operand (type, arg1, arg0);
t1 = distribute_bit_expr (code, type, arg0, arg1);
@@ -6488,7 +6624,7 @@ fold (tree expr)
if (prec < BITS_PER_WORD && prec < HOST_BITS_PER_WIDE_INT
&& (~TREE_INT_CST_LOW (arg1)
& (((HOST_WIDE_INT) 1 << prec) - 1)) == 0)
- return build1 (NOP_EXPR, type, TREE_OPERAND (arg0, 0));
+ return fold_convert (type, TREE_OPERAND (arg0, 0));
}
/* Convert (and (not arg0) (not arg1)) to (not (or (arg0) (arg1))).
@@ -6529,12 +6665,12 @@ fold (tree expr)
/* In IEEE floating point, x/1 is not equivalent to x for snans. */
if (!HONOR_SNANS (TYPE_MODE (TREE_TYPE (arg0)))
&& real_onep (arg1))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
/* In IEEE floating point, x/-1 is not equivalent to -x for snans. */
if (!HONOR_SNANS (TYPE_MODE (TREE_TYPE (arg0)))
&& real_minus_onep (arg1))
- return non_lvalue (convert (type, negate_expr (arg0)));
+ return non_lvalue (fold_convert (type, negate_expr (arg0)));
/* If ARG1 is a constant, we can convert this to a multiply by the
reciprocal. This does not have the same rounding properties,
@@ -6716,7 +6852,7 @@ fold (tree expr)
case CEIL_DIV_EXPR:
case EXACT_DIV_EXPR:
if (integer_onep (arg1))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
if (integer_zerop (arg1))
return t;
@@ -6733,7 +6869,7 @@ fold (tree expr)
if (TREE_CODE (arg1) == INTEGER_CST
&& 0 != (tem = extract_muldiv (TREE_OPERAND (t, 0), arg1,
code, NULL_TREE)))
- return convert (type, tem);
+ return fold_convert (type, tem);
goto binary;
@@ -6749,7 +6885,7 @@ fold (tree expr)
if (TREE_CODE (arg1) == INTEGER_CST
&& 0 != (tem = extract_muldiv (TREE_OPERAND (t, 0), arg1,
code, NULL_TREE)))
- return convert (type, tem);
+ return fold_convert (type, tem);
goto binary;
@@ -6768,7 +6904,7 @@ fold (tree expr)
case LSHIFT_EXPR:
shift:
if (integer_zerop (arg1))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
if (integer_zerop (arg0))
return omit_one_operand (type, arg0, arg1);
@@ -6781,7 +6917,7 @@ fold (tree expr)
if (code == LROTATE_EXPR && TREE_CODE (arg1) == INTEGER_CST)
{
tree tem = build_int_2 (GET_MODE_BITSIZE (TYPE_MODE (type)), 0);
- tem = convert (TREE_TYPE (arg1), tem);
+ tem = fold_convert (TREE_TYPE (arg1), tem);
tem = const_binop (MINUS_EXPR, tem, arg1, 0);
return fold (build (RROTATE_EXPR, type, arg0, tem));
}
@@ -6845,7 +6981,7 @@ fold (tree expr)
return tem;
return t;
}
- return convert (type, tem);
+ return fold_convert (type, tem);
case TRUTH_ANDIF_EXPR:
/* Note that the operands of this must be ints
@@ -6853,15 +6989,15 @@ fold (tree expr)
("true" is a fixed value perhaps depending on the language.) */
/* If first arg is constant zero, return it. */
if (integer_zerop (arg0))
- return convert (type, arg0);
+ return fold_convert (type, arg0);
case TRUTH_AND_EXPR:
/* If either arg is constant true, drop it. */
if (TREE_CODE (arg0) == INTEGER_CST && ! integer_zerop (arg0))
- return non_lvalue (convert (type, arg1));
+ return non_lvalue (fold_convert (type, arg1));
if (TREE_CODE (arg1) == INTEGER_CST && ! integer_zerop (arg1)
/* Preserve sequence points. */
&& (code != TRUTH_ANDIF_EXPR || ! TREE_SIDE_EFFECTS (arg0)))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
/* If second arg is constant zero, result is zero, but first arg
must be evaluated. */
if (integer_zerop (arg1))
@@ -6941,15 +7077,15 @@ fold (tree expr)
("true" is a fixed value perhaps depending on the language.) */
/* If first arg is constant true, return it. */
if (TREE_CODE (arg0) == INTEGER_CST && ! integer_zerop (arg0))
- return convert (type, arg0);
+ return fold_convert (type, arg0);
case TRUTH_OR_EXPR:
/* If either arg is constant zero, drop it. */
if (TREE_CODE (arg0) == INTEGER_CST && integer_zerop (arg0))
- return non_lvalue (convert (type, arg1));
+ return non_lvalue (fold_convert (type, arg1));
if (TREE_CODE (arg1) == INTEGER_CST && integer_zerop (arg1)
/* Preserve sequence points. */
&& (code != TRUTH_ORIF_EXPR || ! TREE_SIDE_EFFECTS (arg0)))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
/* If second arg is constant true, result is true, but we must
evaluate first arg. */
if (TREE_CODE (arg1) == INTEGER_CST && ! integer_zerop (arg1))
@@ -6963,14 +7099,14 @@ fold (tree expr)
case TRUTH_XOR_EXPR:
/* If either arg is constant zero, drop it. */
if (integer_zerop (arg0))
- return non_lvalue (convert (type, arg1));
+ return non_lvalue (fold_convert (type, arg1));
if (integer_zerop (arg1))
- return non_lvalue (convert (type, arg0));
+ return non_lvalue (fold_convert (type, arg0));
/* If either arg is constant true, this is a logical inversion. */
if (integer_onep (arg0))
- return non_lvalue (convert (type, invert_truthvalue (arg1)));
+ return non_lvalue (fold_convert (type, invert_truthvalue (arg1)));
if (integer_onep (arg1))
- return non_lvalue (convert (type, invert_truthvalue (arg0)));
+ return non_lvalue (fold_convert (type, invert_truthvalue (arg0)));
return t;
case EQ_EXPR:
@@ -6994,8 +7130,8 @@ fold (tree expr)
/* Fold (double)float1 CMP (double)float2 into float1 CMP float2. */
if (TYPE_PRECISION (newtype) < TYPE_PRECISION (TREE_TYPE (arg0)))
- return fold (build (code, type, convert (newtype, targ0),
- convert (newtype, targ1)));
+ return fold (build (code, type, fold_convert (newtype, targ0),
+ fold_convert (newtype, targ1)));
/* (-a) CMP (-b) -> b CMP a */
if (TREE_CODE (arg0) == NEGATE_EXPR
@@ -7027,7 +7163,7 @@ fold (tree expr)
&& ! HONOR_SNANS (TYPE_MODE (TREE_TYPE (arg1))))
{
t = (code == NE_EXPR) ? integer_one_node : integer_zero_node;
- return omit_one_operand (type, convert (type, t), arg0);
+ return omit_one_operand (type, fold_convert (type, t), arg0);
}
/* Fold comparisons against infinity. */
@@ -7083,150 +7219,67 @@ fold (tree expr)
}
}
- /* Convert foo++ == CONST into ++foo == CONST + INCR.
- First, see if one arg is constant; find the constant arg
- and the other one. */
- {
- tree constop = 0, varop = NULL_TREE;
- int constopnum = -1;
+ /* Convert foo++ == CONST into ++foo == CONST + INCR. */
+ if (TREE_CONSTANT (arg1)
+ && (TREE_CODE (arg0) == POSTINCREMENT_EXPR
+ || TREE_CODE (arg0) == POSTDECREMENT_EXPR)
+ /* This optimization is invalid for ordered comparisons
+ if CONST+INCR overflows or if foo+incr might overflow.
+ This optimization is invalid for floating point due to rounding.
+ For pointer types we assume overflow doesn't happen. */
+ && (POINTER_TYPE_P (TREE_TYPE (arg0))
+ || (INTEGRAL_TYPE_P (TREE_TYPE (arg0))
+ && (code == EQ_EXPR || code == NE_EXPR))))
+ {
+ tree varop, newconst;
- if (TREE_CONSTANT (arg1))
- constopnum = 1, constop = arg1, varop = arg0;
- if (TREE_CONSTANT (arg0))
- constopnum = 0, constop = arg0, varop = arg1;
+ if (TREE_CODE (arg0) == POSTINCREMENT_EXPR)
+ {
+ newconst = fold (build (PLUS_EXPR, TREE_TYPE (arg0),
+ arg1, TREE_OPERAND (arg0, 1)));
+ varop = build (PREINCREMENT_EXPR, TREE_TYPE (arg0),
+ TREE_OPERAND (arg0, 0),
+ TREE_OPERAND (arg0, 1));
+ }
+ else
+ {
+ newconst = fold (build (MINUS_EXPR, TREE_TYPE (arg0),
+ arg1, TREE_OPERAND (arg0, 1)));
+ varop = build (PREDECREMENT_EXPR, TREE_TYPE (arg0),
+ TREE_OPERAND (arg0, 0),
+ TREE_OPERAND (arg0, 1));
+ }
- if (constop && TREE_CODE (varop) == POSTINCREMENT_EXPR)
- {
- /* This optimization is invalid for ordered comparisons
- if CONST+INCR overflows or if foo+incr might overflow.
- This optimization is invalid for floating point due to rounding.
- For pointer types we assume overflow doesn't happen. */
- if (POINTER_TYPE_P (TREE_TYPE (varop))
- || (! FLOAT_TYPE_P (TREE_TYPE (varop))
- && (code == EQ_EXPR || code == NE_EXPR)))
- {
- tree newconst
- = fold (build (PLUS_EXPR, TREE_TYPE (varop),
- constop, TREE_OPERAND (varop, 1)));
-
- /* Do not overwrite the current varop to be a preincrement,
- create a new node so that we won't confuse our caller who
- might create trees and throw them away, reusing the
- arguments that they passed to build. This shows up in
- the THEN or ELSE parts of ?: being postincrements. */
- varop = build (PREINCREMENT_EXPR, TREE_TYPE (varop),
- TREE_OPERAND (varop, 0),
- TREE_OPERAND (varop, 1));
-
- /* If VAROP is a reference to a bitfield, we must mask
- the constant by the width of the field. */
- if (TREE_CODE (TREE_OPERAND (varop, 0)) == COMPONENT_REF
- && DECL_BIT_FIELD(TREE_OPERAND
- (TREE_OPERAND (varop, 0), 1)))
- {
- int size
- = TREE_INT_CST_LOW (DECL_SIZE
- (TREE_OPERAND
- (TREE_OPERAND (varop, 0), 1)));
- tree mask, unsigned_type;
- unsigned int precision;
- tree folded_compare;
-
- /* First check whether the comparison would come out
- always the same. If we don't do that we would
- change the meaning with the masking. */
- if (constopnum == 0)
- folded_compare = fold (build (code, type, constop,
- TREE_OPERAND (varop, 0)));
- else
- folded_compare = fold (build (code, type,
- TREE_OPERAND (varop, 0),
- constop));
- if (integer_zerop (folded_compare)
- || integer_onep (folded_compare))
- return omit_one_operand (type, folded_compare, varop);
-
- unsigned_type = (*lang_hooks.types.type_for_size)(size, 1);
- precision = TYPE_PRECISION (unsigned_type);
- mask = build_int_2 (~0, ~0);
- TREE_TYPE (mask) = unsigned_type;
- force_fit_type (mask, 0);
- mask = const_binop (RSHIFT_EXPR, mask,
- size_int (precision - size), 0);
- newconst = fold (build (BIT_AND_EXPR,
- TREE_TYPE (varop), newconst,
- convert (TREE_TYPE (varop),
- mask)));
- }
- t = build (code, type,
- (constopnum == 0) ? newconst : varop,
- (constopnum == 1) ? newconst : varop);
- return t;
- }
- }
- else if (constop && TREE_CODE (varop) == POSTDECREMENT_EXPR)
- {
- if (POINTER_TYPE_P (TREE_TYPE (varop))
- || (! FLOAT_TYPE_P (TREE_TYPE (varop))
- && (code == EQ_EXPR || code == NE_EXPR)))
- {
- tree newconst
- = fold (build (MINUS_EXPR, TREE_TYPE (varop),
- constop, TREE_OPERAND (varop, 1)));
-
- /* Do not overwrite the current varop to be a predecrement,
- create a new node so that we won't confuse our caller who
- might create trees and throw them away, reusing the
- arguments that they passed to build. This shows up in
- the THEN or ELSE parts of ?: being postdecrements. */
- varop = build (PREDECREMENT_EXPR, TREE_TYPE (varop),
- TREE_OPERAND (varop, 0),
- TREE_OPERAND (varop, 1));
-
- if (TREE_CODE (TREE_OPERAND (varop, 0)) == COMPONENT_REF
- && DECL_BIT_FIELD(TREE_OPERAND
- (TREE_OPERAND (varop, 0), 1)))
- {
- int size
- = TREE_INT_CST_LOW (DECL_SIZE
- (TREE_OPERAND
- (TREE_OPERAND (varop, 0), 1)));
- tree mask, unsigned_type;
- unsigned int precision;
- tree folded_compare;
-
- if (constopnum == 0)
- folded_compare = fold (build (code, type, constop,
- TREE_OPERAND (varop, 0)));
- else
- folded_compare = fold (build (code, type,
- TREE_OPERAND (varop, 0),
- constop));
- if (integer_zerop (folded_compare)
- || integer_onep (folded_compare))
- return omit_one_operand (type, folded_compare, varop);
-
- unsigned_type = (*lang_hooks.types.type_for_size)(size, 1);
- precision = TYPE_PRECISION (unsigned_type);
- mask = build_int_2 (~0, ~0);
- TREE_TYPE (mask) = TREE_TYPE (varop);
- force_fit_type (mask, 0);
- mask = const_binop (RSHIFT_EXPR, mask,
- size_int (precision - size), 0);
- newconst = fold (build (BIT_AND_EXPR,
- TREE_TYPE (varop), newconst,
- convert (TREE_TYPE (varop),
- mask)));
- }
+ /* If VAROP is a reference to a bitfield, we must mask
+ the constant by the width of the field. */
+ if (TREE_CODE (TREE_OPERAND (varop, 0)) == COMPONENT_REF
+ && DECL_BIT_FIELD (TREE_OPERAND (TREE_OPERAND (varop, 0), 1)))
+ {
+ tree fielddecl = TREE_OPERAND (TREE_OPERAND (varop, 0), 1);
+ int size = TREE_INT_CST_LOW (DECL_SIZE (fielddecl));
+ tree folded_compare, shift;
+
+ /* First check whether the comparison would come out
+ always the same. If we don't do that we would
+ change the meaning with the masking. */
+ folded_compare = fold (build (code, type,
+ TREE_OPERAND (varop, 0),
+ arg1));
+ if (integer_zerop (folded_compare)
+ || integer_onep (folded_compare))
+ return omit_one_operand (type, folded_compare, varop);
+
+ shift = build_int_2 (TYPE_PRECISION (TREE_TYPE (varop)) - size,
+ 0);
+ newconst = fold (build (LSHIFT_EXPR, TREE_TYPE (varop),
+ newconst, shift));
+ newconst = fold (build (RSHIFT_EXPR, TREE_TYPE (varop),
+ newconst, shift));
+ }
- t = build (code, type,
- (constopnum == 0) ? newconst : varop,
- (constopnum == 1) ? newconst : varop);
- return t;
- }
- }
- }
+ return fold (build (code, type, varop, newconst));
+ }
/* Change X >= C to X > (C - 1) and X < C to X <= (C - 1) if C > 0.
This transformation affects the cases which are handled in later
@@ -7283,14 +7336,16 @@ fold (tree expr)
{
case GT_EXPR:
return omit_one_operand (type,
- convert (type, integer_zero_node),
+ fold_convert (type,
+ integer_zero_node),
arg0);
case GE_EXPR:
return fold (build (EQ_EXPR, type, arg0, arg1));
case LE_EXPR:
return omit_one_operand (type,
- convert (type, integer_one_node),
+ fold_convert (type,
+ integer_one_node),
arg0);
case LT_EXPR:
return fold (build (NE_EXPR, type, arg0, arg1));
@@ -7320,14 +7375,16 @@ fold (tree expr)
{
case LT_EXPR:
return omit_one_operand (type,
- convert (type, integer_zero_node),
+ fold_convert (type,
+ integer_zero_node),
arg0);
case LE_EXPR:
return fold (build (EQ_EXPR, type, arg0, arg1));
case GE_EXPR:
return omit_one_operand (type,
- convert (type, integer_one_node),
+ fold_convert (type,
+ integer_one_node),
arg0);
case GT_EXPR:
return fold (build (NE_EXPR, type, arg0, arg1));
@@ -7364,8 +7421,8 @@ fold (tree expr)
st1 = (*lang_hooks.types.signed_type) (TREE_TYPE (arg1));
return fold
(build (code == LE_EXPR ? GE_EXPR: LT_EXPR,
- type, convert (st0, arg0),
- convert (st1, integer_zero_node)));
+ type, fold_convert (st0, arg0),
+ fold_convert (st1, integer_zero_node)));
}
}
}
@@ -7407,11 +7464,15 @@ fold (tree expr)
else if (TREE_CODE (TREE_TYPE (arg0)) == INTEGER_TYPE
&& TREE_CODE (arg0) == NOP_EXPR
&& (tem = get_unwidened (arg0, NULL_TREE)) != arg0
+ && (code == EQ_EXPR || code == NE_EXPR
+ || TREE_UNSIGNED (TREE_TYPE (arg0))
+ == TREE_UNSIGNED (TREE_TYPE (tem)))
&& (t1 = get_unwidened (arg1, TREE_TYPE (tem))) != 0
&& (TREE_TYPE (t1) == TREE_TYPE (tem)
|| (TREE_CODE (t1) == INTEGER_CST
&& int_fits_type_p (t1, TREE_TYPE (tem)))))
- return fold (build (code, type, tem, convert (TREE_TYPE (tem), t1)));
+ return fold (build (code, type, tem,
+ fold_convert (TREE_TYPE (tem), t1)));
/* If this is comparing a constant with a MIN_EXPR or a MAX_EXPR of a
constant, we can simplify it. */
@@ -7454,8 +7515,8 @@ fold (tree expr)
TREE_TYPE (TREE_OPERAND (arg0, 0)),
TREE_OPERAND (arg0, 1),
TREE_OPERAND (TREE_OPERAND (arg0, 0), 1)),
- convert (TREE_TYPE (arg0),
- integer_one_node)),
+ fold_convert (TREE_TYPE (arg0),
+ integer_one_node)),
arg1));
else if (TREE_CODE (TREE_OPERAND (arg0, 1)) == LSHIFT_EXPR
&& integer_onep (TREE_OPERAND (TREE_OPERAND (arg0, 1), 0)))
@@ -7466,8 +7527,8 @@ fold (tree expr)
TREE_TYPE (TREE_OPERAND (arg0, 1)),
TREE_OPERAND (arg0, 0),
TREE_OPERAND (TREE_OPERAND (arg0, 1), 1)),
- convert (TREE_TYPE (arg0),
- integer_one_node)),
+ fold_convert (TREE_TYPE (arg0),
+ integer_one_node)),
arg1));
}
@@ -7485,10 +7546,12 @@ fold (tree expr)
{
tree newtype = (*lang_hooks.types.unsigned_type) (TREE_TYPE (arg0));
tree newmod = build (TREE_CODE (arg0), newtype,
- convert (newtype, TREE_OPERAND (arg0, 0)),
- convert (newtype, TREE_OPERAND (arg0, 1)));
+ fold_convert (newtype,
+ TREE_OPERAND (arg0, 0)),
+ fold_convert (newtype,
+ TREE_OPERAND (arg0, 1)));
- return build (code, type, newmod, convert (newtype, arg1));
+ return build (code, type, newmod, fold_convert (newtype, arg1));
}
/* If this is an NE comparison of zero with an AND of one, remove the
@@ -7496,7 +7559,7 @@ fold (tree expr)
if (code == NE_EXPR && integer_zerop (arg1)
&& TREE_CODE (arg0) == BIT_AND_EXPR
&& integer_onep (TREE_OPERAND (arg0, 1)))
- return convert (type, arg0);
+ return fold_convert (type, arg0);
/* If we have (A & C) == C where C is a power of 2, convert this into
(A & C) != 0. Similarly for NE_EXPR. */
@@ -7555,7 +7618,7 @@ fold (tree expr)
return build (code == LT_EXPR ? EQ_EXPR : NE_EXPR, type,
build (RSHIFT_EXPR, TREE_TYPE (arg0), arg0,
TREE_OPERAND (arg1, 1)),
- convert (TREE_TYPE (arg0), integer_zero_node));
+ fold_convert (TREE_TYPE (arg0), integer_zero_node));
else if ((code == LT_EXPR || code == GE_EXPR)
&& TREE_UNSIGNED (TREE_TYPE (arg0))
@@ -7565,10 +7628,11 @@ fold (tree expr)
&& integer_onep (TREE_OPERAND (TREE_OPERAND (arg1, 0), 0)))
return
build (code == LT_EXPR ? EQ_EXPR : NE_EXPR, type,
- convert (TREE_TYPE (arg0),
- build (RSHIFT_EXPR, TREE_TYPE (arg0), arg0,
- TREE_OPERAND (TREE_OPERAND (arg1, 0), 1))),
- convert (TREE_TYPE (arg0), integer_zero_node));
+ fold_convert (TREE_TYPE (arg0),
+ build (RSHIFT_EXPR, TREE_TYPE (arg0), arg0,
+ TREE_OPERAND (TREE_OPERAND (arg1, 0),
+ 1))),
+ fold_convert (TREE_TYPE (arg0), integer_zero_node));
/* Simplify comparison of something with itself. (For IEEE
floating-point, we can only do some of these simplifications.) */
@@ -7919,32 +7983,26 @@ fold (tree expr)
switch (comp_code)
{
case EQ_EXPR:
- return
- pedantic_non_lvalue
- (convert (type,
- negate_expr
- (convert (TREE_TYPE (TREE_OPERAND (t, 1)),
- arg1))));
+ tem = fold_convert (TREE_TYPE (TREE_OPERAND (t, 1)), arg1);
+ tem = fold_convert (type, negate_expr (tem));
+ return pedantic_non_lvalue (tem);
case NE_EXPR:
- return pedantic_non_lvalue (convert (type, arg1));
+ return pedantic_non_lvalue (fold_convert (type, arg1));
case GE_EXPR:
case GT_EXPR:
if (TREE_UNSIGNED (TREE_TYPE (arg1)))
- arg1 = convert ((*lang_hooks.types.signed_type)
- (TREE_TYPE (arg1)), arg1);
- return pedantic_non_lvalue
- (convert (type, fold (build1 (ABS_EXPR,
- TREE_TYPE (arg1), arg1))));
+ arg1 = fold_convert ((*lang_hooks.types.signed_type)
+ (TREE_TYPE (arg1)), arg1);
+ arg1 = fold (build1 (ABS_EXPR, TREE_TYPE (arg1), arg1));
+ return pedantic_non_lvalue (fold_convert (type, arg1));
case LE_EXPR:
case LT_EXPR:
if (TREE_UNSIGNED (TREE_TYPE (arg1)))
- arg1 = convert ((lang_hooks.types.signed_type)
- (TREE_TYPE (arg1)), arg1);
- return pedantic_non_lvalue
- (negate_expr (convert (type,
- fold (build1 (ABS_EXPR,
- TREE_TYPE (arg1),
- arg1)))));
+ arg1 = fold_convert ((lang_hooks.types.signed_type)
+ (TREE_TYPE (arg1)), arg1);
+ arg1 = fold (build1 (ABS_EXPR, TREE_TYPE (arg1), arg1));
+ arg1 = negate_expr (fold_convert (type, arg1));
+ return pedantic_non_lvalue (arg1);
default:
abort ();
}
@@ -7957,9 +8015,9 @@ fold (tree expr)
if (integer_zerop (TREE_OPERAND (arg0, 1)) && integer_zerop (arg2))
{
if (comp_code == NE_EXPR)
- return pedantic_non_lvalue (convert (type, arg1));
+ return pedantic_non_lvalue (fold_convert (type, arg1));
else if (comp_code == EQ_EXPR)
- return pedantic_non_lvalue (convert (type, integer_zero_node));
+ return pedantic_non_lvalue (fold_convert (type, integer_zero_node));
}
/* Try some transformations of A op B ? A : B.
@@ -8006,9 +8064,9 @@ fold (tree expr)
switch (comp_code)
{
case EQ_EXPR:
- return pedantic_non_lvalue (convert (type, arg2));
+ return pedantic_non_lvalue (fold_convert (type, arg2));
case NE_EXPR:
- return pedantic_non_lvalue (convert (type, arg1));
+ return pedantic_non_lvalue (fold_convert (type, arg1));
case LE_EXPR:
case LT_EXPR:
/* In C++ a ?: expression can be an lvalue, so put the
@@ -8016,22 +8074,22 @@ fold (tree expr)
so that we can convert this back to the
corresponding COND_EXPR. */
if (!HONOR_NANS (TYPE_MODE (TREE_TYPE (arg1))))
- return pedantic_non_lvalue
- (convert (type, fold (build (MIN_EXPR, comp_type,
- (comp_code == LE_EXPR
- ? comp_op0 : comp_op1),
- (comp_code == LE_EXPR
- ? comp_op1 : comp_op0)))));
+ return pedantic_non_lvalue (fold_convert
+ (type, fold (build (MIN_EXPR, comp_type,
+ (comp_code == LE_EXPR
+ ? comp_op0 : comp_op1),
+ (comp_code == LE_EXPR
+ ? comp_op1 : comp_op0)))));
break;
case GE_EXPR:
case GT_EXPR:
if (!HONOR_NANS (TYPE_MODE (TREE_TYPE (arg1))))
- return pedantic_non_lvalue
- (convert (type, fold (build (MAX_EXPR, comp_type,
- (comp_code == GE_EXPR
- ? comp_op0 : comp_op1),
- (comp_code == GE_EXPR
- ? comp_op1 : comp_op0)))));
+ return pedantic_non_lvalue (fold_convert
+ (type, fold (build (MAX_EXPR, comp_type,
+ (comp_code == GE_EXPR
+ ? comp_op0 : comp_op1),
+ (comp_code == GE_EXPR
+ ? comp_op1 : comp_op0)))));
break;
default:
abort ();
@@ -8051,7 +8109,7 @@ fold (tree expr)
{
case EQ_EXPR:
/* We can replace A with C1 in this case. */
- arg1 = convert (type, TREE_OPERAND (arg0, 1));
+ arg1 = fold_convert (type, TREE_OPERAND (arg0, 1));
return fold (build (code, type, TREE_OPERAND (t, 0), arg1,
TREE_OPERAND (t, 2)));
@@ -8131,8 +8189,8 @@ fold (tree expr)
if (integer_zerop (TREE_OPERAND (t, 1))
&& integer_onep (TREE_OPERAND (t, 2))
&& truth_value_p (TREE_CODE (arg0)))
- return pedantic_non_lvalue (convert (type,
- invert_truthvalue (arg0)));
+ return pedantic_non_lvalue (fold_convert (type,
+ invert_truthvalue (arg0)));
/* Look for expressions of the form A & 2 ? 2 : 0. The result of this
operation is simply A & 2. */
@@ -8144,7 +8202,8 @@ fold (tree expr)
&& TREE_CODE (TREE_OPERAND (arg0, 0)) == BIT_AND_EXPR
&& operand_equal_p (TREE_OPERAND (TREE_OPERAND (arg0, 0), 1),
arg1, 1))
- return pedantic_non_lvalue (convert (type, TREE_OPERAND (arg0, 0)));
+ return pedantic_non_lvalue (fold_convert (type,
+ TREE_OPERAND (arg0, 0)));
/* Convert A ? B : 0 into A && B if A and B are truth values. */
if (integer_zerop (TREE_OPERAND (t, 2))
@@ -8175,7 +8234,7 @@ fold (tree expr)
/* Don't let (0, 0) be null pointer constant. */
if (integer_zerop (arg1))
return build1 (NOP_EXPR, type, arg1);
- return convert (type, arg1);
+ return fold_convert (type, arg1);
case COMPLEX_EXPR:
if (wins)
@@ -8200,7 +8259,7 @@ fold (tree expr)
case IMAGPART_EXPR:
if (TREE_CODE (TREE_TYPE (arg0)) != COMPLEX_TYPE)
- return convert (type, integer_zero_node);
+ return fold_convert (type, integer_zero_node);
else if (TREE_CODE (arg0) == COMPLEX_EXPR)
return omit_one_operand (type, TREE_OPERAND (arg0, 1),
TREE_OPERAND (arg0, 0));
@@ -8562,9 +8621,10 @@ multiple_of_p (tree type, tree top, tree bottom)
if (TYPE_PRECISION (TREE_TYPE (size_one_node))
> TREE_INT_CST_LOW (op1)
&& TREE_INT_CST_HIGH (op1) == 0
- && 0 != (t1 = convert (type,
- const_binop (LSHIFT_EXPR, size_one_node,
- op1, 0)))
+ && 0 != (t1 = fold_convert (type,
+ const_binop (LSHIFT_EXPR,
+ size_one_node,
+ op1, 0)))
&& ! TREE_OVERFLOW (t1))
return multiple_of_p (type, t1, bottom);
}
diff --git a/gcc/function.c b/gcc/function.c
index 02f095a19b3..405e4ac8147 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -1,6 +1,6 @@
/* Expands front end tree to back end RTL for GCC.
Copyright (C) 1987, 1988, 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
- 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -1430,8 +1430,9 @@ put_var_into_stack (tree decl, int rescan)
static void
put_reg_into_stack (struct function *function, rtx reg, tree type,
- enum machine_mode promoted_mode, enum machine_mode decl_mode,
- int volatile_p, unsigned int original_regno, int used_p, htab_t ht)
+ enum machine_mode promoted_mode,
+ enum machine_mode decl_mode, int volatile_p,
+ unsigned int original_regno, int used_p, htab_t ht)
{
struct function *func = function ? function : cfun;
rtx new = 0;
@@ -1441,7 +1442,11 @@ put_reg_into_stack (struct function *function, rtx reg, tree type,
regno = REGNO (reg);
if (regno < func->x_max_parm_reg)
- new = func->x_parm_reg_stack_loc[regno];
+ {
+ if (!func->x_parm_reg_stack_loc)
+ abort ();
+ new = func->x_parm_reg_stack_loc[regno];
+ }
if (new == 0)
new = assign_stack_local_1 (decl_mode, GET_MODE_SIZE (decl_mode), 0, func);
@@ -4337,7 +4342,8 @@ assign_parms (tree fndecl)
max_parm_reg = LAST_VIRTUAL_REGISTER + 1;
parm_reg_stack_loc = ggc_alloc_cleared (max_parm_reg * sizeof (rtx));
- if (SPLIT_COMPLEX_ARGS)
+ /* If the target wants to split complex arguments into scalars, do so. */
+ if (targetm.calls.split_complex_arg)
fnargs = split_complex_args (fnargs);
#ifdef REG_PARM_STACK_SPACE
@@ -4351,7 +4357,7 @@ assign_parms (tree fndecl)
#ifdef INIT_CUMULATIVE_INCOMING_ARGS
INIT_CUMULATIVE_INCOMING_ARGS (args_so_far, fntype, NULL_RTX);
#else
- INIT_CUMULATIVE_ARGS (args_so_far, fntype, NULL_RTX, fndecl);
+ INIT_CUMULATIVE_ARGS (args_so_far, fntype, NULL_RTX, fndecl, -1);
#endif
/* We haven't yet found an argument that we must push and pretend the
@@ -5215,20 +5221,35 @@ assign_parms (tree fndecl)
}
}
- if (SPLIT_COMPLEX_ARGS && fnargs != orig_fnargs)
+ if (targetm.calls.split_complex_arg && fnargs != orig_fnargs)
{
for (parm = orig_fnargs; parm; parm = TREE_CHAIN (parm))
{
- if (TREE_CODE (TREE_TYPE (parm)) == COMPLEX_TYPE)
+ if (TREE_CODE (TREE_TYPE (parm)) == COMPLEX_TYPE
+ && targetm.calls.split_complex_arg (TREE_TYPE (parm)))
{
- SET_DECL_RTL (parm,
- gen_rtx_CONCAT (DECL_MODE (parm),
- DECL_RTL (fnargs),
- DECL_RTL (TREE_CHAIN (fnargs))));
- DECL_INCOMING_RTL (parm)
- = gen_rtx_CONCAT (DECL_MODE (parm),
- DECL_INCOMING_RTL (fnargs),
- DECL_INCOMING_RTL (TREE_CHAIN (fnargs)));
+ rtx tmp, real, imag;
+ enum machine_mode inner = GET_MODE_INNER (DECL_MODE (parm));
+
+ real = DECL_RTL (fnargs);
+ imag = DECL_RTL (TREE_CHAIN (fnargs));
+ if (inner != GET_MODE (real))
+ {
+ real = gen_lowpart_SUBREG (inner, real);
+ imag = gen_lowpart_SUBREG (inner, imag);
+ }
+ tmp = gen_rtx_CONCAT (DECL_MODE (parm), real, imag);
+ SET_DECL_RTL (parm, tmp);
+
+ real = DECL_INCOMING_RTL (fnargs);
+ imag = DECL_INCOMING_RTL (TREE_CHAIN (fnargs));
+ if (inner != GET_MODE (real))
+ {
+ real = gen_lowpart_SUBREG (inner, real);
+ imag = gen_lowpart_SUBREG (inner, imag);
+ }
+ tmp = gen_rtx_CONCAT (DECL_MODE (parm), real, imag);
+ DECL_INCOMING_RTL (parm) = tmp;
fnargs = TREE_CHAIN (fnargs);
}
else
@@ -5349,8 +5370,12 @@ split_complex_args (tree args)
/* Before allocating memory, check for the common case of no complex. */
for (p = args; p; p = TREE_CHAIN (p))
- if (TREE_CODE (TREE_TYPE (p)) == COMPLEX_TYPE)
- goto found;
+ {
+ tree type = TREE_TYPE (p);
+ if (TREE_CODE (type) == COMPLEX_TYPE
+ && targetm.calls.split_complex_arg (type))
+ goto found;
+ }
return args;
found:
@@ -5359,7 +5384,8 @@ split_complex_args (tree args)
for (p = args; p; p = TREE_CHAIN (p))
{
tree type = TREE_TYPE (p);
- if (TREE_CODE (type) == COMPLEX_TYPE)
+ if (TREE_CODE (type) == COMPLEX_TYPE
+ && targetm.calls.split_complex_arg (type))
{
tree decl;
tree subtype = TREE_TYPE (type);
@@ -5683,7 +5709,7 @@ uninitialized_vars_warning (tree block)
flow.c that the entire aggregate was initialized.
Unions are troublesome because members may be shorter. */
&& ! AGGREGATE_TYPE_P (TREE_TYPE (decl))
- && DECL_RTL (decl) != 0
+ && DECL_RTL_SET_P (decl)
&& GET_CODE (DECL_RTL (decl)) == REG
/* Global optimizations can make it difficult to determine if a
particular variable has been initialized. However, a VAR_DECL
@@ -5698,7 +5724,7 @@ uninitialized_vars_warning (tree block)
decl, decl);
if (extra_warnings
&& TREE_CODE (decl) == VAR_DECL
- && DECL_RTL (decl) != 0
+ && DECL_RTL_SET_P (decl)
&& GET_CODE (DECL_RTL (decl)) == REG
&& regno_clobbered_at_setjmp (REGNO (DECL_RTL (decl))))
warning ("%Jvariable '%D' might be clobbered by `longjmp' or `vfork'",
@@ -6394,9 +6420,6 @@ allocate_struct_function (tree fndecl)
init_stmt_for_function ();
init_eh_for_function ();
- init_emit ();
- init_expr ();
- init_varasm_status (cfun);
(*lang_hooks.function.init) (cfun);
if (init_machine_status)
@@ -6434,6 +6457,9 @@ prepare_function_start (tree fndecl)
cfun = DECL_SAVED_INSNS (fndecl);
else
allocate_struct_function (fndecl);
+ init_emit ();
+ init_varasm_status (cfun);
+ init_expr ();
cse_not_expected = ! optimize;
@@ -6996,6 +7022,14 @@ expand_function_end (void)
clear_pending_stack_adjust ();
do_pending_stack_adjust ();
+ /* ??? This is a kludge. We want to ensure that instructions that
+ may trap are not moved into the epilogue by scheduling, because
+ we don't always emit unwind information for the epilogue.
+ However, not all machine descriptions define a blockage insn, so
+ emit an ASM_INPUT to act as one. */
+ if (flag_non_call_exceptions)
+ emit_insn (gen_rtx_ASM_INPUT (VOIDmode, ""));
+
/* Mark the end of the function body.
If control reaches this insn, the function can drop through
without returning a value. */
@@ -7254,7 +7288,7 @@ record_insns (rtx insns, varray_type *vecp)
}
}
-/* Set the specified locator to the insn chain. */
+/* Set the locator of the insn chain starting at INSN to LOC. */
static void
set_insn_locators (rtx insn, int loc)
{
@@ -7895,6 +7929,7 @@ epilogue_done:
#endif
#ifdef HAVE_prologue
+ /* This is probably all useless now that we use locators. */
if (prologue_end)
{
rtx insn, prev;
diff --git a/gcc/function.h b/gcc/function.h
index 088fbbb5320..1e5c56fb845 100644
--- a/gcc/function.h
+++ b/gcc/function.h
@@ -1,6 +1,6 @@
/* Structure for saving state for a nested function.
Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -457,9 +457,10 @@ struct function GTY(())
/* Nonzero if the function being compiled issues a computed jump. */
unsigned int has_computed_jump : 1;
- /* Nonzero if the current function is a thunk (a lightweight function that
- just adjusts one of its arguments and forwards to another function), so
- we should try to cut corners where we can. */
+ /* Nonzero if the current function is a thunk, i.e., a lightweight
+ function implemented by the output_mi_thunk hook) that just
+ adjusts one of its arguments and forwards to another
+ function. */
unsigned int is_thunk : 1;
/* This bit is used by the exception handling logic. It is set if all
diff --git a/gcc/gcc.c b/gcc/gcc.c
index bc6d4c4235b..c9af5d92851 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1,6 +1,6 @@
/* Compiler driver program that can handle many languages.
Copyright (C) 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -340,7 +340,7 @@ static void display_help (void);
static void add_preprocessor_option (const char *, int);
static void add_assembler_option (const char *, int);
static void add_linker_option (const char *, int);
-static void process_command (int, const char *const *);
+static void process_command (int, const char **);
static int execute (void);
static void alloc_args (void);
static void clear_args (void);
@@ -766,7 +766,7 @@ static const char *cpp_debug_options = "%{d*}";
static const char *cc1_options =
"%{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}}\
%1 %{!Q:-quiet} -dumpbase %B %{d*} %{m*} %{a*}\
- -auxbase%{c|S:%{o*:-strip %*}%{!o*: %b}}%{!c:%{!S: %b}}\
+ %{c|S:%{o*:-auxbase-strip %*}%{!o*:-auxbase %b}}%{!c:%{!S:-auxbase %b}}\
%{g*} %{O*} %{W*&pedantic*} %{w} %{std*} %{ansi}\
%{v:-version} %{pg:-p} %{p} %{f*} %{undef}\
%{Qn:-fno-ident} %{--help:--help}\
@@ -1531,6 +1531,12 @@ init_gcc_specs (struct obstack *obstack, const char *shared_name,
buf = concat ("%{static|static-libgcc:", static_name, " ", eh_name,
"}%{!static:%{!static-libgcc:",
+#ifdef HAVE_LD_AS_NEEDED
+ "%{!shared-libgcc:", static_name,
+ " --as-needed ", shared_name, " --no-as-needed}"
+ "%{shared-libgcc:", shared_name, "%{!shared: ", static_name,
+ "}",
+#else
"%{!shared:%{!shared-libgcc:", static_name, " ",
eh_name, "}%{shared-libgcc:", shared_name, " ",
static_name, "}}%{shared:",
@@ -1540,6 +1546,7 @@ init_gcc_specs (struct obstack *obstack, const char *shared_name,
#else
shared_name,
#endif
+#endif
"}}}", NULL);
obstack_grow (obstack, buf, strlen (buf));
@@ -3074,7 +3081,7 @@ add_linker_option (const char *option, int len)
Store its length in `n_switches'. */
static void
-process_command (int argc, const char *const *argv)
+process_command (int argc, const char **argv)
{
int i;
const char *temp;
@@ -3312,10 +3319,10 @@ process_command (int argc, const char *const *argv)
}
/* Convert new-style -- options to old-style. */
- translate_options (&argc, &argv);
+ translate_options (&argc, (const char *const **) &argv);
/* Do language-specific adjustment/addition of flags. */
- lang_specific_driver (&argc, &argv, &added_libraries);
+ lang_specific_driver (&argc, (const char *const **) &argv, &added_libraries);
/* Scan argv twice. Here, the first time, just count how many switches
there will be in their vector, and how many input files in theirs.
@@ -3347,8 +3354,8 @@ process_command (int argc, const char *const *argv)
{
/* translate_options () has turned --version into -fversion. */
printf (_("%s (GCC) %s\n"), programname, version_string);
- fputs (_("Copyright (C) 2003 Free Software Foundation, Inc.\n"),
- stdout);
+ printf ("Copyright %s 2004 Free Software Foundation, Inc.\n",
+ _("(C)"));
fputs (_("This is free software; see the source for copying conditions. There is NO\n\
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"),
stdout);
@@ -5902,10 +5909,10 @@ fatal_error (int signum)
kill (getpid (), signum);
}
-extern int main (int, const char *const *);
+extern int main (int, const char **);
int
-main (int argc, const char *const *argv)
+main (int argc, const char **argv)
{
size_t i;
int value;
diff --git a/gcc/gcov-io.c b/gcc/gcov-io.c
index 99731f79939..0349fb821b2 100644
--- a/gcc/gcov-io.c
+++ b/gcc/gcov-io.c
@@ -65,6 +65,7 @@ gcov_open (const char *name, int mode)
#endif
#if GCOV_LOCKED
struct flock s_flock;
+ int fd;
s_flock.l_type = F_WRLCK;
s_flock.l_whence = SEEK_SET;
@@ -82,6 +83,44 @@ gcov_open (const char *name, int mode)
#if !IN_LIBGCOV
gcov_var.endian = 0;
#endif
+#if GCOV_LOCKED
+ if (mode > 0)
+ fd = open (name, O_RDWR);
+ else
+ fd = open (name, O_RDWR | O_CREAT, 0666);
+ if (fd < 0)
+ return 0;
+
+ while (fcntl (fd, F_SETLKW, &s_flock) && errno == EINTR)
+ continue;
+
+ gcov_var.file = fdopen (fd, "r+b");
+ if (!gcov_var.file)
+ {
+ close (fd);
+ return 0;
+ }
+
+ if (mode > 0)
+ gcov_var.mode = 1;
+ else if (mode == 0)
+ {
+ struct stat st;
+
+ if (fstat (fd, &st) < 0)
+ {
+ fclose (gcov_var.file);
+ gcov_var.file = 0;
+ return 0;
+ }
+ if (st.st_size != 0)
+ gcov_var.mode = 1;
+ else
+ gcov_var.mode = mode * 2 + 1;
+ }
+ else
+ gcov_var.mode = mode * 2 + 1;
+#else
if (mode >= 0)
gcov_var.file = fopen (name, "r+b");
if (gcov_var.file)
@@ -94,15 +133,10 @@ gcov_open (const char *name, int mode)
}
if (!gcov_var.file)
return 0;
-
- setbuf (gcov_var.file, (char *)0);
-
-#if GCOV_LOCKED
- while (fcntl (fileno (gcov_var.file), F_SETLKW, &s_flock)
- && errno == EINTR)
- continue;
#endif
+ setbuf (gcov_var.file, (char *)0);
+
return 1;
}
diff --git a/gcc/gcov-io.h b/gcc/gcov-io.h
index 0254632eb8a..e83c5163c90 100644
--- a/gcc/gcov-io.h
+++ b/gcc/gcov-io.h
@@ -1,6 +1,6 @@
/* File format for coverage information
Copyright (C) 1996, 1997, 1998, 2000, 2002,
- 2003 Free Software Foundation, Inc.
+ 2003, 2004 Free Software Foundation, Inc.
Contributed by Bob Manson <manson@cygnus.com>.
Completely remangled by Nathan Sidwell <nathan@codesourcery.com>.
@@ -584,6 +584,9 @@ gcov_rewrite (void)
fseek (gcov_var.file, 0L, SEEK_SET);
}
+#ifdef __MINGW32__
+#define ftruncate _chsize
+#endif
static inline void
gcov_truncate (void)
{
diff --git a/gcc/gcov.c b/gcc/gcov.c
index f95334a4319..172f9e85651 100644
--- a/gcc/gcov.c
+++ b/gcc/gcov.c
@@ -1,7 +1,7 @@
/* Gcov.c: prepend line execution counts and branch probabilities to a
source file.
Copyright (C) 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by James E. Wilson of Cygnus Support.
Mangled by Bob Manson of Cygnus Support.
Mangled further by Nathan Sidwell <nathan@codesourcery.com>
@@ -420,11 +420,12 @@ static void
print_version (void)
{
fnotice (stdout, "gcov (GCC) %s\n", version_string);
- fnotice (stdout, "Copyright (C) 2003 Free Software Foundation, Inc.\n");
+ fprintf (stdout, "Copyright %s 2004 Free Software Foundation, Inc.\n",
+ _("(C)"));
fnotice (stdout,
- "This is free software; see the source for copying conditions.\n"
- "There is NO warranty; not even for MERCHANTABILITY or \n"
- "FITNESS FOR A PARTICULAR PURPOSE.\n\n");
+ _("This is free software; see the source for copying conditions.\n"
+ "There is NO warranty; not even for MERCHANTABILITY or \n"
+ "FITNESS FOR A PARTICULAR PURPOSE.\n\n"));
exit (SUCCESS_EXIT_CODE);
}
diff --git a/gcc/gcse.c b/gcc/gcse.c
index 6053dffe833..c87673882d5 100644
--- a/gcc/gcse.c
+++ b/gcc/gcse.c
@@ -1,6 +1,6 @@
/* Global common subexpression elimination/Partial redundancy elimination
and global constant/copy propagation for GNU compiler.
- Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -4874,6 +4874,20 @@ bypass_block (basic_block bb, rtx setcc, rtx jump)
else
dest = NULL;
+ /* Avoid unification of the edge with other edges from original
+ branch. We would end up emitting the instruction on "both"
+ edges. */
+
+ if (dest && setcc && !CC0_P (SET_DEST (PATTERN (setcc))))
+ {
+ edge e2;
+ for (e2 = e->src->succ; e2; e2 = e2->succ_next)
+ if (e2->dest == dest)
+ break;
+ if (e2)
+ dest = NULL;
+ }
+
old_dest = e->dest;
if (dest != NULL
&& dest != old_dest
@@ -5285,7 +5299,7 @@ insert_insn_end_bb (struct expr *expr, basic_block bb, int pre)
}
#endif
/* FIXME: What if something in cc0/jump uses value set in new insn? */
- new_insn = emit_insn_before (pat, insn);
+ new_insn = emit_insn_before_noloc (pat, insn);
}
/* Likewise if the last insn is a call, as will happen in the presence
@@ -5324,10 +5338,10 @@ insert_insn_end_bb (struct expr *expr, basic_block bb, int pre)
|| NOTE_INSN_BASIC_BLOCK_P (insn))
insn = NEXT_INSN (insn);
- new_insn = emit_insn_before (pat, insn);
+ new_insn = emit_insn_before_noloc (pat, insn);
}
else
- new_insn = emit_insn_after (pat, insn);
+ new_insn = emit_insn_after_noloc (pat, insn);
while (1)
{
@@ -5952,7 +5966,7 @@ delete_null_pointer_checks_1 (unsigned int *block_reg, sbitmap *nonnull_avin,
/* Scan each insn in the basic block looking for memory references and
register sets. */
- stop_insn = NEXT_INSN (BB_HEAD (current_block));
+ stop_insn = NEXT_INSN (BB_END (current_block));
for (insn = BB_HEAD (current_block);
insn != stop_insn;
insn = NEXT_INSN (insn))
@@ -6054,8 +6068,10 @@ delete_null_pointer_checks_1 (unsigned int *block_reg, sbitmap *nonnull_avin,
something_changed = 1;
delete_insn (last_insn);
+#ifdef HAVE_cc0
if (compare_and_branch == 2)
delete_insn (earliest);
+#endif
purge_dead_edges (bb);
/* Don't check this block again. (Note that BB_END is
@@ -7649,7 +7665,7 @@ insert_insn_start_bb (rtx insn, basic_block bb)
before = NEXT_INSN (before);
}
- insn = emit_insn_after (insn, prev);
+ insn = emit_insn_after_noloc (insn, prev);
if (gcse_file)
{
diff --git a/gcc/genattrtab.c b/gcc/genattrtab.c
index 05f7d222e8b..56c62e38678 100644
--- a/gcc/genattrtab.c
+++ b/gcc/genattrtab.c
@@ -1,6 +1,6 @@
/* Generate code from machine description to compute values of attributes.
Copyright (C) 1991, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
This file is part of GCC.
diff --git a/gcc/genautomata.c b/gcc/genautomata.c
index 179564ad052..b68c63c60b5 100644
--- a/gcc/genautomata.c
+++ b/gcc/genautomata.c
@@ -1,5 +1,5 @@
/* Pipeline hazard description translator.
- Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Written by Vladimir Makarov <vmakarov@redhat.com>
diff --git a/gcc/genconditions.c b/gcc/genconditions.c
index 86e3544a7bf..692dc64add3 100644
--- a/gcc/genconditions.c
+++ b/gcc/genconditions.c
@@ -1,5 +1,5 @@
/* Process machine description and calculate constant conditions.
- Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/genextract.c b/gcc/genextract.c
index d3365736510..54be0ebeccc 100644
--- a/gcc/genextract.c
+++ b/gcc/genextract.c
@@ -387,8 +387,10 @@ from the machine description file `md'. */\n\n");
printf (" rtx **ro_loc = recog_data.operand_loc;\n");
printf (" rtx pat = PATTERN (insn);\n");
printf (" int i ATTRIBUTE_UNUSED;\n\n");
- printf (" memset (ro, 0, sizeof (*ro) * MAX_RECOG_OPERANDS);\n");
- printf (" memset (ro_loc, 0, sizeof (*ro_loc) * MAX_RECOG_OPERANDS);\n");
+#ifdef ENABLE_CHECKING
+ printf (" memset (ro, 0xab, sizeof (*ro) * MAX_RECOG_OPERANDS);\n");
+ printf (" memset (ro_loc, 0xab, sizeof (*ro_loc) * MAX_RECOG_OPERANDS);\n");
+#endif
printf (" switch (INSN_CODE (insn))\n");
printf (" {\n");
printf (" case -1:\n");
diff --git a/gcc/genflags.c b/gcc/genflags.c
index 66e6bd1df01..d3102739d88 100644
--- a/gcc/genflags.c
+++ b/gcc/genflags.c
@@ -2,7 +2,7 @@
- some flags HAVE_... saying which simple standard instructions are
available for this machine.
Copyright (C) 1987, 1991, 1995, 1998,
- 1999, 2000, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/gengtype-lex.l b/gcc/gengtype-lex.l
index 2f526599685..2d0462beba5 100644
--- a/gcc/gengtype-lex.l
+++ b/gcc/gengtype-lex.l
@@ -47,7 +47,7 @@ update_lineno (const char *l, size_t len)
ID [[:alpha:]_][[:alnum:]_]*
WS [[:space:]]+
-IWORD short|long|(un)?signed|char|int|HOST_WIDE_INT|bool|size_t|CHAR_BITFIELD
+IWORD short|long|(un)?signed|char|int|HOST_WIDE_INT|bool|size_t|BOOL_BITFIELD
ITYPE {IWORD}({WS}{IWORD})*
%x in_struct in_struct_comment in_comment in_yacc_escape
diff --git a/gcc/gengtype.c b/gcc/gengtype.c
index 6655d3cc37d..1e1b0959360 100644
--- a/gcc/gengtype.c
+++ b/gcc/gengtype.c
@@ -1,5 +1,5 @@
/* Process source files and output type information.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/genopinit.c b/gcc/genopinit.c
index 8f309f43836..5e1599ad80f 100644
--- a/gcc/genopinit.c
+++ b/gcc/genopinit.c
@@ -1,6 +1,6 @@
/* Generate code to initialize optabs from machine description.
Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/genrecog.c b/gcc/genrecog.c
index 467f96e0fc1..be7505b31ae 100644
--- a/gcc/genrecog.c
+++ b/gcc/genrecog.c
@@ -1,6 +1,6 @@
/* Generate code from machine description to recognize rtl as insns.
Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -231,7 +231,7 @@ static struct decision *new_decision
static struct decision_test *new_decision_test
(enum decision_type, struct decision_test ***);
static rtx find_operand
- (rtx, int);
+ (rtx, int, rtx);
static rtx find_matching_operand
(rtx, int);
static void validate_pattern
@@ -345,16 +345,19 @@ new_decision_test (enum decision_type type, struct decision_test ***pplace)
return test;
}
-/* Search for and return operand N. */
+/* Search for and return operand N, stop when reaching node STOP. */
static rtx
-find_operand (rtx pattern, int n)
+find_operand (rtx pattern, int n, rtx stop)
{
const char *fmt;
RTX_CODE code;
int i, j, len;
rtx r;
+ if (pattern == stop)
+ return stop;
+
code = GET_CODE (pattern);
if ((code == MATCH_SCRATCH
|| code == MATCH_INSN
@@ -371,7 +374,7 @@ find_operand (rtx pattern, int n)
switch (fmt[i])
{
case 'e': case 'u':
- if ((r = find_operand (XEXP (pattern, i), n)) != NULL_RTX)
+ if ((r = find_operand (XEXP (pattern, i), n, stop)) != NULL_RTX)
return r;
break;
@@ -382,7 +385,8 @@ find_operand (rtx pattern, int n)
case 'E':
for (j = 0; j < XVECLEN (pattern, i); j++)
- if ((r = find_operand (XVECEXP (pattern, i, j), n)) != NULL_RTX)
+ if ((r = find_operand (XVECEXP (pattern, i, j), n, stop))
+ != NULL_RTX)
return r;
break;
@@ -466,7 +470,17 @@ validate_pattern (rtx pattern, rtx insn, rtx set, int set_code)
{
case MATCH_SCRATCH:
return;
-
+ case MATCH_DUP:
+ case MATCH_OP_DUP:
+ case MATCH_PAR_DUP:
+ if (find_operand (insn, XINT (pattern, 0), pattern) == pattern)
+ {
+ message_with_line (pattern_lineno,
+ "operand %i duplicated before defined",
+ XINT (pattern, 0));
+ error_count++;
+ }
+ break;
case MATCH_INSN:
case MATCH_OPERAND:
case MATCH_OPERATOR:
@@ -638,12 +652,12 @@ validate_pattern (rtx pattern, rtx insn, rtx set, int set_code)
if (GET_CODE (dest) == MATCH_DUP
|| GET_CODE (dest) == MATCH_OP_DUP
|| GET_CODE (dest) == MATCH_PAR_DUP)
- dest = find_operand (insn, XINT (dest, 0));
+ dest = find_operand (insn, XINT (dest, 0), NULL);
if (GET_CODE (src) == MATCH_DUP
|| GET_CODE (src) == MATCH_OP_DUP
|| GET_CODE (src) == MATCH_PAR_DUP)
- src = find_operand (insn, XINT (src, 0));
+ src = find_operand (insn, XINT (src, 0), NULL);
dmode = GET_MODE (dest);
smode = GET_MODE (src);
diff --git a/gcc/gensupport.c b/gcc/gensupport.c
index 377b08d50a6..44e07eb06d5 100644
--- a/gcc/gensupport.c
+++ b/gcc/gensupport.c
@@ -1,5 +1,5 @@
/* Support routines for the various generation passes.
- Copyright (C) 2000, 2001, 2002, 2003
+ Copyright (C) 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/ggc-simple.c b/gcc/ggc-simple.c
index 2f75021f42d..4f8a4de9b43 100644
--- a/gcc/ggc-simple.c
+++ b/gcc/ggc-simple.c
@@ -124,6 +124,10 @@ extern void debug_ggc_balance (void);
#endif
static void tally_leaves (struct ggc_mem *, int, size_t *, size_t *);
+struct alloc_zone *rtl_zone = NULL;
+struct alloc_zone *tree_zone = NULL;
+struct alloc_zone *garbage_zone = NULL;
+
/* Insert V into the search tree. */
static inline void
@@ -159,6 +163,22 @@ tree_lookup (struct ggc_mem *v)
return 0;
}
+/* Typed allocation function. Does nothing special in this collector. */
+
+void *
+ggc_alloc_typed (enum gt_types_enum type ATTRIBUTE_UNUSED, size_t size)
+{
+ return ggc_alloc (size);
+}
+
+/* Zone allocation function. Does nothing special in this collector. */
+
+void *
+ggc_alloc_zone (size_t size, struct alloc_zone *zone ATTRIBUTE_UNUSED)
+{
+ return ggc_alloc (size);
+}
+
/* Alloc SIZE bytes of GC'able memory. If ZERO, clear the memory. */
void *
@@ -511,7 +531,8 @@ init_ggc_pch (void)
void
ggc_pch_count_object (struct ggc_pch_data *d ATTRIBUTE_UNUSED,
void *x ATTRIBUTE_UNUSED,
- size_t size ATTRIBUTE_UNUSED)
+ size_t size ATTRIBUTE_UNUSED,
+ bool is_string ATTRIBUTE_UNUSED)
{
}
@@ -531,7 +552,8 @@ ggc_pch_this_base (struct ggc_pch_data *d ATTRIBUTE_UNUSED,
char *
ggc_pch_alloc_object (struct ggc_pch_data *d ATTRIBUTE_UNUSED,
void *x ATTRIBUTE_UNUSED,
- size_t size ATTRIBUTE_UNUSED)
+ size_t size ATTRIBUTE_UNUSED,
+ bool is_string ATTRIBUTE_UNUSED)
{
return NULL;
}
@@ -546,7 +568,8 @@ void
ggc_pch_write_object (struct ggc_pch_data *d ATTRIBUTE_UNUSED,
FILE *f ATTRIBUTE_UNUSED, void *x ATTRIBUTE_UNUSED,
void *newx ATTRIBUTE_UNUSED,
- size_t size ATTRIBUTE_UNUSED)
+ size_t size ATTRIBUTE_UNUSED,
+ bool is_string ATTRIBUTE_UNUSED)
{
}
diff --git a/gcc/ggc-zone.c b/gcc/ggc-zone.c
index b9ad7334655..355414fcbbc 100644
--- a/gcc/ggc-zone.c
+++ b/gcc/ggc-zone.c
@@ -1,5 +1,6 @@
/* "Bag-of-pages" zone garbage collector for the GNU compiler.
- Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
Contributed by Richard Henderson (rth@redhat.com) and Daniel Berlin
(dberlin@dberlin.org)
diff --git a/gcc/graph.c b/gcc/graph.c
index 26c866d8291..e663f8e3fd6 100644
--- a/gcc/graph.c
+++ b/gcc/graph.c
@@ -1,5 +1,6 @@
/* Output routines for graphical representation.
- Copyright (C) 1998, 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004
+ Free Software Foundation, Inc.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
This file is part of GCC.
diff --git a/gcc/haifa-sched.c b/gcc/haifa-sched.c
index d55c1c77732..4750d960948 100644
--- a/gcc/haifa-sched.c
+++ b/gcc/haifa-sched.c
@@ -1,6 +1,6 @@
/* Instruction scheduling pass.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com) Enhanced by,
and currently maintained by, Jim Wilson (wilson@cygnus.com)
diff --git a/gcc/hooks.c b/gcc/hooks.c
index 939ed844168..a8cd665a45f 100644
--- a/gcc/hooks.c
+++ b/gcc/hooks.c
@@ -1,5 +1,5 @@
/* General-purpose hooks.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
@@ -177,6 +177,13 @@ hook_bool_rtx_false (rtx a ATTRIBUTE_UNUSED)
}
bool
+hook_bool_uintp_uintp_false (unsigned int *a ATTRIBUTE_UNUSED,
+ unsigned int *b ATTRIBUTE_UNUSED)
+{
+ return false;
+}
+
+bool
hook_bool_rtx_int_int_intp_false (rtx a ATTRIBUTE_UNUSED,
int b ATTRIBUTE_UNUSED,
int c ATTRIBUTE_UNUSED,
diff --git a/gcc/hooks.h b/gcc/hooks.h
index 77111155ba7..583b504bffe 100644
--- a/gcc/hooks.h
+++ b/gcc/hooks.h
@@ -1,5 +1,5 @@
/* General-purpose hooks.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
@@ -31,6 +31,7 @@ extern bool hook_bool_tree_hwi_hwi_tree_false (tree, HOST_WIDE_INT, HOST_WIDE_IN
extern bool hook_bool_tree_hwi_hwi_tree_true (tree, HOST_WIDE_INT, HOST_WIDE_INT,
tree);
extern bool hook_bool_rtx_false (rtx);
+extern bool hook_bool_uintp_uintp_false (unsigned int *, unsigned int *);
extern bool hook_bool_rtx_int_int_intp_false (rtx, int, int, int *);
extern bool hook_bool_constcharptr_size_t_false (const char *, size_t);
diff --git a/gcc/integrate.c b/gcc/integrate.c
index b5efc02b1a6..d45bbfce2a5 100644
--- a/gcc/integrate.c
+++ b/gcc/integrate.c
@@ -1,6 +1,6 @@
/* Procedure integration for GCC.
Copyright (C) 1988, 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com)
This file is part of GCC.
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 8cb93760ea5..e6dfab73b13 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,86 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-04-12 Michael Chastain <mec.gnu@mindspring.com>
+
+ PR bootstrap/14893:
+ * Make-lang.in (java.install-man): Install from either build
+ tree or source tree, whichever has the file first.
+
+2004-03-23 Tom Tromey <tromey@redhat.com>
+
+ * gcj.texi (Extensions): Document GCJ_PROPERTIES.
+
+2004-03-06 Roger Sayle <roger@eyesopen.com>
+
+ * jcf-parse.c (java_parse_file): Handle the case that input_filename
+ is NULL.
+
+2004-02-26 Andrew Haley <aph@redhat.com>
+
+ * parse.y (check_interface_throws_clauses): Check for
+ !METHOD_INVISIBLE (iface_method).
+ * class.c (layout_class_methods): Check for CLASS_INTERFACE as
+ well as CLASS_ABSTRACT.
+
+2004-02-22 Matthias Klose <doko@debian.org>
+
+ Taken from mainline:
+
+ 2004-02-13 Geoffrey Keating <geoffk@apple.com>
+
+ * Make-lang.in: Install man pages under the same names
+ (possibly transformed) as the program they document.
+
+ 2004-02-16 Geoffrey Keating <geoffk@apple.com>
+
+ * Make-lang.in (java.install-man): Add extra dependencies.
+
+2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * typeck.c: Update copyright.
+
+2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
+
+ Make-lang.in (po-generated): Delete.
+
+2004-01-30 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Make-lang.in (doc/gcj.dvi): Use $(abs_docdir).
+
+2004-01-28 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * expr.c (build_field_ref): Move variable
+ definition up.
+
+2004-01-28 Andrew Haley <aph@redhat.com>
+
+ * expr.c (build_field_ref): Widen field offset.
+
+2004-01-27 Andrew Haley <aph@redhat.com>
+
+ java/13273
+ * parse.y (check_interface_throws_clauses): Make sure class_decl
+ has been loaded.
+
+2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Make-lang.in: Replace $(docdir) with doc.
+ (java.info, java.srcinfo, java.man, java.srcman): New rules.
+ (java.install-man): Revamp rule.
+
+2004-01-19 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Make-lang.in (JAVA_INSTALL_NAME, JAVA_TARGET_INSTALL_NAME,
+ GCJH_TARGET_INSTALL_NAME): Define via a immediate $(shell)
+ instead of deferred backquote.
+
+2004-01-16 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * typeck.c (find_method_in_interfaces): Move variable
+ definition up.
+
2004-01-16 Andrew Haley <aph@redhat.com>
PR java/13273:
@@ -46,7 +129,7 @@
using indirect dis[atch.
(java_decl_ok_for_sibcall): Use output_class, not current_class.
(java_get_callee_fndecl): Use class local atable.
- * jcf-parse.c
+ * jcf-parse.c
(always_initialize_class_p): Decl moved to java-tree.h.
(HANDLE_CLASS_INFO): Set output_class.
(read_class): Likewise.
@@ -94,13 +177,13 @@
Make otable, atable, and ctable class local rather than global.
(emit_catch_table): Make otable, atable, and ctable class local
rather than global.
-
+
2003-12-25 Andrew Pinski <pinskia@physics.uc.edu>
* parse.y (catch_clause_parameter): Fix typo.
PR java/13404
- * parse.y: (catch_clause_parameter): Return early if $3, aka
+ * parse.y: (catch_clause_parameter): Return early if $3, aka
formal_parameter, is null.
2003-12-20 Kazu Hirata <kazu@cs.umass.edu>
diff --git a/gcc/java/Make-lang.in b/gcc/java/Make-lang.in
index 23912e8ad9d..2d59923afdd 100644
--- a/gcc/java/Make-lang.in
+++ b/gcc/java/Make-lang.in
@@ -1,6 +1,7 @@
# Top level -*- makefile -*- fragment for the GNU compiler for the Java(TM)
# language.
-# Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+# Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004
+# Free Software Foundation, Inc.
#This file is part of GCC.
@@ -41,9 +42,9 @@
# - define the names for selecting the language in LANGUAGES.
# Actual names to use when installing a native compiler.
-JAVA_INSTALL_NAME = `echo gcj|sed '$(program_transform_name)'`
-JAVA_TARGET_INSTALL_NAME = $(target_noncanonical)-`echo gcj|sed '$(program_transform_name)'`
-GCJH_TARGET_INSTALL_NAME = $(target_noncanonical)-`echo gcjh|sed '$(program_transform_name)'`
+JAVA_INSTALL_NAME := $(shell echo gcj|sed '$(program_transform_name)')
+JAVA_TARGET_INSTALL_NAME := $(target_noncanonical)-$(shell echo gcj|sed '$(program_transform_name)')
+GCJH_TARGET_INSTALL_NAME := $(target_noncanonical)-$(shell echo gcjh|sed '$(program_transform_name)')
GCJ = gcj
@@ -76,8 +77,6 @@ $(GCJ)-cross$(exeext): $(GCJ)$(exeext)
-rm -f $(GCJ)-cross$(exeext)
cp $(GCJ)$(exeext) $(GCJ)-cross$(exeext)
-po-generated: java/parse.c java/parse-scan.c
-
java.srcextra: java/parse.c java/parse-scan.c
-cp -p $^ $(srcdir)/java
@@ -161,12 +160,19 @@ java.tags: force
etags --include TAGS.sub --include ../TAGS.sub
-info:: $(docobjdir)/gcj.info
-dvi:: $(docobjdir)/gcj.dvi
-generated-manpages:: $(docobjdir)/gcj.1 $(docobjdir)/gcjh.1 \
- $(docobjdir)/jv-scan.1 $(docobjdir)/jcf-dump.1 \
- $(docobjdir)/gij.1 $(docobjdir)/jv-convert.1 \
- $(docobjdir)/rmic.1 $(docobjdir)/rmiregistry.1
+java.info: doc/gcj.info
+
+java.srcinfo: doc/gcj.info
+ -cp -p $^ $(srcdir)/doc
+
+dvi:: doc/gcj.dvi
+JAVA_MANFILES = doc/gcj.1 doc/gcjh.1 doc/jv-scan.1 doc/jcf-dump.1 doc/gij.1 \
+ doc/jv-convert.1 doc/rmic.1 doc/rmiregistry.1
+
+java.man: $(JAVA_MANFILES)
+
+java.srcman: $(JAVA_MANFILES)
+ -cp -p $^ $(srcdir)/doc
check-java :
@@ -355,17 +361,16 @@ java/java-tree-inline.o: tree-inline.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(srcdir)/tree-inline.c -o $@
# Documentation
-$(docobjdir)/gcj.info: java/gcj.texi $(docdir)/include/fdl.texi \
- $(docdir)/include/gpl.texi $(docdir)/include/gcc-common.texi stmp-docobjdir
+doc/gcj.info: java/gcj.texi $(docdir)/include/fdl.texi \
+ $(docdir)/include/gpl.texi $(docdir)/include/gcc-common.texi
if test "x$(BUILD_INFO)" = xinfo; then \
rm -f doc/gcj.info*; \
$(MAKEINFO) $(MAKEINFOFLAGS) -I $(docdir)/include -o $@ $<; \
else true; fi
-$(docobjdir)/gcj.dvi: java/gcj.texi $(docdir)/include/fdl.texi \
- $(docdir)/include/gpl.texi $(docdir)/include/gcc-common.texi \
- stmp-docobjdir
- $(TEXI2DVI) -I $(docdir)/include -o $@ $<
+doc/gcj.dvi: java/gcj.texi $(docdir)/include/fdl.texi \
+ $(docdir)/include/gpl.texi $(docdir)/include/gcc-common.texi
+ $(TEXI2DVI) -I $(abs_docdir)/include -o $@ $<
.INTERMEDIATE: gcj.pod gcjh.pod jv-scan.pod jcf-dump.pod gij.pod \
jv-convert.pod rmic.pod rmiregistry.pod
@@ -388,30 +393,25 @@ rmiregistry.pod: java/gcj.texi
-$(TEXI2POD) -D rmiregistry < $< > $@
# Install the man pages.
-java.install-man: installdirs $(GENERATED_JAVA_MANPAGES)
- -if [ -f $(GCJ)$(exeext) ]; then \
- rm -f $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext); \
- $(INSTALL_DATA) $(docobjdir)/gcj.1 $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext); \
- chmod a-x $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext); \
- fi
- -rm -f $(DESTDIR)$(man1dir)/gcjh$(man1ext)
- -$(INSTALL_DATA) $(docobjdir)/gcjh.1 $(DESTDIR)$(man1dir)/gcjh$(man1ext)
- -chmod a-x $(DESTDIR)$(man1dir)/gcjh$(man1ext)
- -rm -f $(DESTDIR)$(man1dir)/jv-scan$(man1ext)
- -$(INSTALL_DATA) $(docobjdir)/jv-scan.1 $(DESTDIR)$(man1dir)/jv-scan$(man1ext)
- -chmod a-x $(DESTDIR)$(man1dir)/jv-scan$(man1ext)
- -rm -f $(DESTDIR)$(man1dir)/jcf-dump$(man1ext)
- -$(INSTALL_DATA) $(docobjdir)/jcf-dump.1 $(DESTDIR)$(man1dir)/jcf-dump$(man1ext)
- -chmod a-x $(DESTDIR)$(man1dir)/jcf-dump$(man1ext)
- -rm -f $(DESTDIR)$(man1dir)/gij$(man1ext)
- -$(INSTALL_DATA) $(docobjdir)/gij.1 $(DESTDIR)$(man1dir)/gij$(man1ext)
- -chmod a-x $(DESTDIR)$(man1dir)/gij$(man1ext)
- -rm -f $(DESTDIR)$(man1dir)/jv-convert$(man1ext)
- -$(INSTALL_DATA) $(docobjdir)/jv-convert.1 $(DESTDIR)$(man1dir)/jv-convert$(man1ext)
- -chmod a-x $(DESTDIR)$(man1dir)/jv-convert$(man1ext)
- -rm -f $(DESTDIR)$(man1dir)/rmic$(man1ext)
- -$(INSTALL_DATA) $(docobjdir)/rmic.1 $(DESTDIR)$(man1dir)/rmic$(man1ext)
- -chmod a-x $(DESTDIR)$(man1dir)/rmic$(man1ext)
- -rm -f $(DESTDIR)$(man1dir)/rmiregistry$(man1ext)
- -$(INSTALL_DATA) $(docobjdir)/rmiregistry.1 $(DESTDIR)$(man1dir)/rmiregistry$(man1ext)
- -chmod a-x $(DESTDIR)$(man1dir)/rmiregistry$(man1ext)
+java.install-man: installdirs \
+ $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext) \
+ $(JAVA_TARGET_INDEPENDENT_BIN_TOOLS:%=doc/%.1) \
+ doc/gij.1 doc/jv-convert.1 doc/rmic.1 doc/rmiregistry.1
+ for tool in $(JAVA_TARGET_INDEPENDENT_BIN_TOOLS) \
+ gij jv-convert rmic rmiregistry ; do \
+ tool_transformed_name=`echo $$tool|sed '$(program_transform_name)'`; \
+ man_name=$(DESTDIR)$(man1dir)/$${tool_transformed_name}$(man1ext); \
+ rm -f $$man_name ; \
+ for source_name in doc/$${tool}.1 $(srcdir)/doc/$${tool}.1 ; do \
+ if test -f $$source_name; then \
+ $(INSTALL_DATA) $$source_name $$man_name; \
+ break; \
+ fi; \
+ done ; \
+ chmod a-x $$man_name ; \
+ done
+
+$(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext): doc/gcj.1
+ -rm -f $@
+ -$(INSTALL_DATA) $< $@
+ -chmod a-x $@
diff --git a/gcc/java/class.c b/gcc/java/class.c
index 58cf778ecba..fd4c7cb0954 100644
--- a/gcc/java/class.c
+++ b/gcc/java/class.c
@@ -2053,7 +2053,7 @@ void
layout_class_methods (tree this_class)
{
tree method_decl, dtable_count;
- tree super_class;
+ tree super_class, type_name;
if (TYPE_NVIRTUALS (this_class))
return;
@@ -2070,7 +2070,8 @@ layout_class_methods (tree this_class)
else
dtable_count = integer_zero_node;
- if (CLASS_ABSTRACT (TYPE_NAME (this_class)))
+ type_name = TYPE_NAME (this_class);
+ if (CLASS_ABSTRACT (type_name) || CLASS_INTERFACE (type_name))
{
/* An abstract class can have methods which are declared only in
an implemented interface. These are called "Miranda
diff --git a/gcc/java/expr.c b/gcc/java/expr.c
index 6b1c0325b0d..53aa45b272a 100644
--- a/gcc/java/expr.c
+++ b/gcc/java/expr.c
@@ -1523,7 +1523,9 @@ build_field_ref (tree self_value, tree self_class, tree name)
tree field_offset =
build (ARRAY_REF, integer_type_node, TYPE_OTABLE_DECL (output_class),
otable_index);
- tree address
+ tree address;
+ field_offset = fold (convert (sizetype, field_offset));
+ address
= fold (build (PLUS_EXPR,
build_pointer_type (TREE_TYPE (field_decl)),
self_value, field_offset));
diff --git a/gcc/java/gcj.texi b/gcc/java/gcj.texi
index 374bdf8bcc9..4c0904b96c9 100644
--- a/gcc/java/gcj.texi
+++ b/gcc/java/gcj.texi
@@ -548,7 +548,6 @@ classpath. This process can be controlled to some degree via the
@xref{libgcj Runtime Properties}.
@item
-
@code{libgcj} includes a special @samp{gcjlib} URL type. A URL of
this form is like a @code{jar} URL, and looks like
@samp{gcjlib:/path/to/shared/library.so!/path/to/resource}. An access
@@ -561,8 +560,21 @@ unloaded. This means some care must be exercised to make sure that
a @code{gcjlib} URL is not accessed by more than one class loader at once.
In a future release this limitation will be lifted, and such
libraries will be mapped privately.
+
+@item
+A program compiled by @command{gcj} will examine the
+@env{GCJ_PROPERTIES} environment variable and change its behavior in
+some ways. In particular @env{GCJ_PROPERTIES} holds a list of
+assignments to global properties, such as would be set with the
+@option{-D} option to @command{java}. For instance,
+@samp{java.compiler=gcj} is a valid (but currently meaningless)
+setting.
+@cindex GCJ_PROPERTIES
+@vindex GCJ_PROPERTIES
+
@end itemize
+
@node Invoking gcjh
@chapter Invoking gcjh
diff --git a/gcc/java/jcf-parse.c b/gcc/java/jcf-parse.c
index 309c28da153..e8fd413e01a 100644
--- a/gcc/java/jcf-parse.c
+++ b/gcc/java/jcf-parse.c
@@ -910,9 +910,9 @@ java_parse_file (int set_yydebug ATTRIBUTE_UNUSED)
finput = NULL;
}
else
- list = xstrdup (input_filename);
+ list = input_filename ? xstrdup (input_filename) : 0;
- do
+ while (list)
{
for (next = list; ; )
{
@@ -991,7 +991,6 @@ java_parse_file (int set_yydebug ATTRIBUTE_UNUSED)
}
list = next;
}
- while (next);
if (filename_count == 0)
warning ("no input file specified");
diff --git a/gcc/java/parse.y b/gcc/java/parse.y
index 20e6f9add99..c0a88a1dbec 100644
--- a/gcc/java/parse.y
+++ b/gcc/java/parse.y
@@ -6485,10 +6485,20 @@ check_interface_throws_clauses (tree check_class_decl, tree class_decl)
{
for (; class_decl != NULL_TREE; class_decl = CLASSTYPE_SUPER (class_decl))
{
- tree bases = TYPE_BINFO_BASETYPES (class_decl);
- int iface_len = TREE_VEC_LENGTH (bases) - 1;
+ tree bases;
+ int iface_len;
int i;
+ if (! CLASS_LOADED_P (class_decl))
+ {
+ if (CLASS_FROM_SOURCE_P (class_decl))
+ safe_layout_class (class_decl);
+ else
+ load_class (class_decl, 1);
+ }
+
+ bases = TYPE_BINFO_BASETYPES (class_decl);
+ iface_len = TREE_VEC_LENGTH (bases) - 1;
for (i = iface_len; i > 0; --i)
{
tree interface = BINFO_TYPE (TREE_VEC_ELT (bases, i));
@@ -6514,7 +6524,8 @@ check_interface_throws_clauses (tree check_class_decl, tree class_decl)
Also, multiple inheritance with conflicting throws
clauses is fine in the absence of a concrete
implementation. */
- if (method != NULL_TREE && !METHOD_ABSTRACT (method))
+ if (method != NULL_TREE && !METHOD_ABSTRACT (method)
+ && !METHOD_INVISIBLE (iface_method))
{
tree method_wfl = DECL_FUNCTION_WFL (method);
check_throws_clauses (method, method_wfl, iface_method);
diff --git a/gcc/java/typeck.c b/gcc/java/typeck.c
index dc8a8c56255..7537c6c4332 100644
--- a/gcc/java/typeck.c
+++ b/gcc/java/typeck.c
@@ -1,5 +1,5 @@
/* Handle types for the GNU compiler for the Java(TM) language.
- Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003
+ Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -797,6 +797,7 @@ find_method_in_interfaces (tree searched_class, int flags, tree method_name,
tree child =
TREE_VEC_ELT (TYPE_BINFO_BASETYPES (searched_class), i);
tree iclass = BINFO_TYPE (child);
+ tree method;
/* If the superinterface hasn't been loaded yet, do so now. */
if (CLASS_FROM_SOURCE_P (iclass))
@@ -806,7 +807,7 @@ find_method_in_interfaces (tree searched_class, int flags, tree method_name,
/* First, we look in ICLASS. If that doesn't work we'll
recursively look through all its superinterfaces. */
- tree method = shallow_find_method (iclass, flags, method_name,
+ method = shallow_find_method (iclass, flags, method_name,
signature, signature_builder);
if (method != NULL_TREE)
return method;
diff --git a/gcc/langhooks-def.h b/gcc/langhooks-def.h
index c9ba0420f1d..7caab7809be 100644
--- a/gcc/langhooks-def.h
+++ b/gcc/langhooks-def.h
@@ -1,5 +1,5 @@
/* Default macros to initialize the lang_hooks data structure.
- Copyright 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Alexandre Oliva <aoliva@redhat.com>
This file is part of GCC.
diff --git a/gcc/langhooks.c b/gcc/langhooks.c
index 5bce71057cc..a965193978d 100644
--- a/gcc/langhooks.c
+++ b/gcc/langhooks.c
@@ -1,5 +1,5 @@
/* Default language-specific hooks.
- Copyright 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Alexandre Oliva <aoliva@redhat.com>
This file is part of GCC.
diff --git a/gcc/langhooks.h b/gcc/langhooks.h
index fcc078ccf33..199b79f237a 100644
--- a/gcc/langhooks.h
+++ b/gcc/langhooks.h
@@ -1,5 +1,5 @@
/* The lang_hooks data structure.
- Copyright 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/libgcov.c b/gcc/libgcov.c
index ffc3d54752c..d5c97a2854d 100644
--- a/gcc/libgcov.c
+++ b/gcc/libgcov.c
@@ -79,6 +79,7 @@ void __gcov_merge_delta (gcov_type *counters __attribute__ ((unused)),
#if GCOV_LOCKED
#include <fcntl.h>
#include <errno.h>
+#include <sys/stat.h>
#endif
#ifdef L_gcov
diff --git a/gcc/local-alloc.c b/gcc/local-alloc.c
index 6524f6c7959..61ff7fbc6b2 100644
--- a/gcc/local-alloc.c
+++ b/gcc/local-alloc.c
@@ -1,6 +1,6 @@
/* Allocate registers within a basic block, for GNU compiler.
Copyright (C) 1987, 1988, 1991, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/loop-init.c b/gcc/loop-init.c
index 0b882d9e163..0b3949ae076 100644
--- a/gcc/loop-init.c
+++ b/gcc/loop-init.c
@@ -1,5 +1,5 @@
/* Loop optimizer initialization routines.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -28,6 +28,8 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "cfgloop.h"
#include "cfglayout.h"
+static void fixup_loop_exit_succesor (basic_block, basic_block);
+
/* Initialize loop optimizer. */
struct loops *
@@ -90,11 +92,52 @@ loop_optimizer_init (FILE *dumpfile)
return loops;
}
+/* The first basic block is moved after the second in the reorder chain. */
+static void
+fixup_loop_exit_succesor (basic_block exit_succ, basic_block latch)
+{
+ basic_block bb = exit_succ;
+ basic_block bb1 = latch;
+
+ if (!(bb && bb->rbi->next))
+ return;
+
+ if (!bb1)
+ return;
+
+
+ if (bb && bb->rbi->next)
+ {
+ basic_block c = ENTRY_BLOCK_PTR->next_bb;
+
+ while (c->rbi->next != bb)
+ c = c->rbi->next;
+
+ c->rbi->next = bb->rbi->next;
+ }
+
+ if(bb1->rbi->next == NULL)
+ {
+ bb1->rbi->next=bb;
+ bb->rbi->next=NULL;
+ }
+ else
+
+ {
+ basic_block tmp;
+
+ tmp = bb1->rbi->next;
+ bb1->rbi->next = bb;
+ bb->rbi->next = tmp;
+ }
+}
+
/* Finalize loop optimizer. */
void
loop_optimizer_finalize (struct loops *loops, FILE *dumpfile)
{
basic_block bb;
+ unsigned int i;
/* Finalize layout changes. */
/* Make chain. */
@@ -105,6 +148,63 @@ loop_optimizer_finalize (struct loops *loops, FILE *dumpfile)
/* Another dump. */
flow_loops_dump (loops, dumpfile, NULL, 1);
+ /* For loops ending with a branch and count instruction, move the basic
+ block found before the unrolling on the fallthru path of this branch,
+ after the unrolled code. This will allow branch simplification. */
+ for (i = 1; i < loops->num; i++)
+ {
+ struct loop *loop = loops->parray[i];
+ struct loop_desc *desc;
+ basic_block loop_real_latch, bb, bb_exit;
+ edge e;
+
+ if (loop == NULL)
+ continue;
+ if (!loop->simple)
+ continue;
+ if (!loop->has_desc)
+ continue;
+
+ if (loop->lpt_decision.decision != LPT_UNROLL_RUNTIME)
+ continue;
+
+ desc = &loop->desc;
+ if (desc == NULL)
+ continue;
+ if (loop->latch->pred == NULL)
+ continue;
+
+ loop_real_latch = loop->latch->pred->src;
+
+
+ if (desc->postincr)
+ continue;
+ if (!is_bct_cond (BB_END (loop_real_latch)))
+ continue;
+
+ for (e = loop_real_latch->succ; e ; e = e->succ_next)
+ if (e->flags & EDGE_FALLTHRU)
+ break;
+
+ if (e == NULL)
+ continue;
+
+ bb_exit = e->dest;
+
+ bb = NULL;
+
+ /* Leave the case of the bb_exit falling through to exit to
+ fixed_fallthru_exit_predecessor */
+ for (e = EXIT_BLOCK_PTR->pred; e; e = e->pred_next)
+ if (e->flags & EDGE_FALLTHRU)
+ bb = e->src;
+
+ if (bb_exit == bb)
+ continue;
+
+ fixup_loop_exit_succesor (bb_exit, loop->latch);
+ }
+
/* Clean up. */
flow_loops_free (loops);
free_dominance_info (CDI_DOMINATORS);
diff --git a/gcc/loop-unroll.c b/gcc/loop-unroll.c
index 6c796af577c..aae175720fe 100644
--- a/gcc/loop-unroll.c
+++ b/gcc/loop-unroll.c
@@ -1,5 +1,5 @@
/* Loop unrolling and peeling.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -30,6 +30,8 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "params.h"
#include "output.h"
#include "expr.h"
+/* We need to use the macro exact_log2. */
+#include "toplev.h"
/* This pass performs loop unrolling and peeling. We only perform these
optimizations on innermost loops (with single exception) because
@@ -79,6 +81,8 @@ static void peel_loop_completely (struct loops *, struct loop *);
static void unroll_loop_stupid (struct loops *, struct loop *);
static void unroll_loop_constant_iterations (struct loops *, struct loop *);
static void unroll_loop_runtime_iterations (struct loops *, struct loop *);
+static void expand_bct (edge, int);
+static bool discard_increment (struct loop *);
/* Unroll and/or peel (depending on FLAGS) LOOPS. */
void
@@ -399,6 +403,11 @@ peel_loop_completely (struct loops *loops, struct loop *loop)
unsigned n_remove_edges, i;
edge *remove_edges;
struct loop_desc *desc = &loop->desc;
+ bool discard_inc = false;
+ bool is_bct;
+
+ if ((is_bct = is_bct_cond (BB_END (loop->desc.out_edge->src))))
+ discard_inc = discard_increment (loop);
npeel = desc->niter;
@@ -421,12 +430,21 @@ peel_loop_completely (struct loops *loops, struct loop *loop)
free (wont_exit);
+ /* Expand the branch and count. */
+ if (is_bct)
+ for (i = 0; i < n_remove_edges; i++)
+ expand_bct (remove_edges[i], discard_inc);
+
/* Remove the exit edges. */
for (i = 0; i < n_remove_edges; i++)
remove_path (loops, remove_edges[i]);
free (remove_edges);
}
+ /* Expand the branch and count. */
+ if (is_bct)
+ expand_bct (desc->in_edge, discard_inc);
+
/* Now remove the unreachable part of the last iteration and cancel
the loop. */
remove_path (loops, desc->in_edge);
@@ -555,6 +573,8 @@ unroll_loop_constant_iterations (struct loops *loops, struct loop *loop)
edge *remove_edges;
unsigned max_unroll = loop->lpt_decision.times;
struct loop_desc *desc = &loop->desc;
+ bool discard_inc = false;
+ bool is_bct;
niter = desc->niter;
@@ -569,6 +589,31 @@ unroll_loop_constant_iterations (struct loops *loops, struct loop *loop)
remove_edges = xcalloc (max_unroll + exit_mod + 1, sizeof (edge));
n_remove_edges = 0;
+ /* For a loop ending with a branch and count for which the increment
+ of the count register will be discarded, adjust the initialization of
+ the count register. */
+ if ((is_bct = is_bct_cond (BB_END (desc->out_edge->src)))
+ && (discard_inc = discard_increment (loop)))
+ {
+ rtx ini_var;
+
+ rtx init_code;
+ int n_peel, new_bct_value;
+
+ /* Get expression for number of iterations. */
+ start_sequence ();
+
+ n_peel = (niter+1) % (max_unroll+1);
+ new_bct_value = (niter+1 - n_peel) / (max_unroll+1) ;
+ ini_var = GEN_INT (new_bct_value);
+
+ emit_move_insn (desc->var, ini_var);
+ init_code = get_insns ();
+ end_sequence ();
+
+ loop_split_edge_with (loop_preheader_edge (loop), init_code);
+ }
+
if (desc->postincr)
{
/* Counter is incremented after the exit test; leave exit test
@@ -632,6 +677,11 @@ unroll_loop_constant_iterations (struct loops *loops, struct loop *loop)
free (wont_exit);
+ /* Expand the branch and count. */
+ if (is_bct)
+ for (i = 0; i < n_remove_edges; i++)
+ expand_bct (remove_edges[i], discard_inc);
+
/* Remove the edges. */
for (i = 0; i < n_remove_edges; i++)
remove_path (loops, remove_edges[i]);
@@ -757,6 +807,8 @@ unroll_loop_runtime_iterations (struct loops *loops, struct loop *loop)
bool extra_zero_check, last_may_exit;
unsigned max_unroll = loop->lpt_decision.times;
struct loop_desc *desc = &loop->desc;
+ bool discard_inc = false;
+ bool is_bct;
/* Remember blocks whose dominators will have to be updated. */
dom_bbs = xcalloc (n_basic_blocks, sizeof (basic_block));
@@ -811,6 +863,35 @@ unroll_loop_runtime_iterations (struct loops *loops, struct loop *loop)
GEN_INT (max_unroll),
NULL_RTX, 0, OPTAB_LIB_WIDEN);
+ /* For a loop ending with a branch and count for which the increment
+ of the count register will be discarded, adjust the initialization of
+ the count register. */
+ if ((is_bct = is_bct_cond (BB_END (desc->out_edge->src)))
+ && (discard_inc = discard_increment (loop)))
+ {
+ rtx count, count2, count_unroll_mod;
+ int count_unroll;
+
+ /* start_sequence (); */
+
+ count = count_loop_iterations (desc, NULL, NULL);
+
+ count_unroll = loop->lpt_decision.times+1;
+
+
+
+ count_unroll_mod = GEN_INT (exact_log2 (count_unroll));
+ count = expand_simple_binop (GET_MODE (desc->var), LSHIFTRT,
+ count, count_unroll_mod,
+ 0, 0, OPTAB_LIB_WIDEN);
+
+ count2 = expand_simple_binop (GET_MODE (desc->var), PLUS,
+ count, GEN_INT (2),
+ 0, 0, OPTAB_LIB_WIDEN);
+
+ emit_move_insn (desc->var, count2);
+ }
+
init_code = get_insns ();
end_sequence ();
@@ -856,7 +937,24 @@ unroll_loop_runtime_iterations (struct loops *loops, struct loop *loop)
j = n_peel - i - (extra_zero_check ? 0 : 1);
p = REG_BR_PROB_BASE / (i + 2);
- preheader = loop_split_edge_with (loop_preheader_edge (loop), NULL_RTX);
+ /* If modulo is zero do not jumo to the header of the unrolled loops.
+ Jump instead to the last branch and count that precedes it. */
+ if (is_bct && discard_inc && (j == 0))
+ {
+ basic_block lastbb = loop_preheader_edge(loop)->src;
+ rtx split_after;
+
+ /* Skip dummy basic blocks generated during the unrolling. */
+ while (!is_bct_cond (BB_END (lastbb)))
+ lastbb = lastbb->pred->src;
+
+ split_after = PREV_INSN (BB_END (lastbb));
+
+ preheader = split_loop_bb (lastbb , split_after)->dest;
+ }
+ else
+ preheader = loop_split_edge_with (loop_preheader_edge (loop),
+ NULL_RTX);
label = block_label (preheader);
start_sequence ();
do_compare_rtx_and_jump (copy_rtx (niter), GEN_INT (j), EQ, 0,
@@ -925,6 +1023,11 @@ unroll_loop_runtime_iterations (struct loops *loops, struct loop *loop)
free (wont_exit);
+ /* Expand the branch and count. */
+ if (is_bct)
+ for (i = 0; i < n_remove_edges; i++)
+ expand_bct (remove_edges[i], discard_inc);
+
/* Remove the edges. */
for (i = 0; i < n_remove_edges; i++)
remove_path (loops, remove_edges[i]);
@@ -1162,3 +1265,119 @@ unroll_loop_stupid (struct loops *loops, struct loop *loop)
fprintf (rtl_dump_file, ";; Unrolled loop %d times, %i insns\n",
nunroll, num_loop_insns (loop));
}
+
+/* Expand a bct instruction in a branch and an increment.
+ If flag_inc is set, the induction variable does not need to be
+ incremented. */
+void expand_bct (edge e, int flag_inc)
+{
+ rtx bct_insn = BB_END (e->src);
+ rtx cmp;
+ rtx inc;
+ rtx seq;
+
+ rtx tgt;
+ rtx condition;
+ rtx label;
+ rtx reg;
+ rtx jump;
+ rtx pattern = PATTERN(bct_insn);
+
+ if (!(is_bct_cond(bct_insn)))
+ return;
+
+ inc = get_var_set_from_bct (bct_insn);
+ cmp = XVECEXP (pattern, 0, 0);
+ reg = SET_DEST (inc);
+
+ start_sequence ();
+ if (!flag_inc)
+ {
+ tgt = force_operand (XEXP (inc, 1), XEXP (inc, 0));
+ if (tgt != XEXP (inc, 0))
+ emit_move_insn (XEXP (inc, 0), tgt);
+ }
+
+ condition = XEXP (SET_SRC (cmp), 0);
+ label = XEXP (SET_SRC (cmp), 1);
+
+ do_compare_rtx_and_jump (copy_rtx (reg), XEXP (condition, 1),
+ GET_CODE (condition), 0,
+ GET_MODE (reg), NULL_RTX, NULL_RTX,
+ label);
+ jump = get_last_insn ();
+ JUMP_LABEL (jump) = label;
+ seq = get_insns ();
+ end_sequence ();
+ emit_insn_after (seq, bct_insn);
+
+ delete_insn (bct_insn);
+
+ return;
+}
+
+/* Check that the increment of the count register can be discarded. */
+bool
+discard_increment (struct loop *loop)
+{
+ struct loop_desc *desc = &loop->desc;
+ rtx inc, set_src, reg;
+ rtx bct_insn;
+ unsigned int i;
+ basic_block *body;
+
+ bct_insn = BB_END (desc->out_edge->src);
+ if (!is_bct_cond (bct_insn))
+ abort();
+
+ inc = get_var_set_from_bct (bct_insn);
+
+ /* Check that inc is of the form reg = reg - 1. */
+ reg = SET_DEST (inc);
+ set_src = SET_SRC (inc);
+
+ if (GET_CODE (set_src) != PLUS)
+ return false;
+
+ if (!rtx_equal_p (XEXP (set_src, 0), reg))
+ return false;
+
+ if (!CONSTANT_P (XEXP (set_src, 1)))
+ return false;
+
+ if (INTVAL (XEXP (set_src, 1)) != -1)
+ return false;
+
+ /* We need to check that the register has no other uses beside the branch and
+ count. */
+ body = get_loop_body (loop);
+ for(i=0; i < loop->num_nodes; i++)
+ {
+ if (reg_mentioned_p (desc->var, BB_HEAD (body[i])))
+ return false;
+
+ if (body[i] != desc->out_edge->src)
+ if (reg_mentioned_p (desc->var, BB_END (body[i])))
+ return false;
+
+ if (reg_used_between_p (desc->var, BB_HEAD (body[i]), BB_END (body[i])))
+ return false;
+ }
+
+ /* Check that the branch and count ends the latch. */
+ if (desc->out_edge->src != loop->latch)
+ {
+ rtx insn;
+
+ /* Latch is a dummy block generated by loop-init. */
+ if (BRANCH_EDGE(desc->out_edge->src)->dest != loop->latch)
+ return false;
+
+ for (insn = BB_HEAD (loop->latch); insn != NEXT_INSN (BB_END (loop->latch));
+ insn = NEXT_INSN (insn))
+ if (INSN_P (insn)) return false;
+ }
+
+ return true;
+}
+
diff --git a/gcc/loop.c b/gcc/loop.c
index 0892724b4af..b4e3e418dd6 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -65,6 +65,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "insn-flags.h"
#include "optabs.h"
#include "cfgloop.h"
+#include "ggc.h"
/* Not really meaningful values, but at least something. */
#ifndef SIMULTANEOUS_PREFETCHES
@@ -534,7 +535,10 @@ loop_optimize (rtx f, FILE *dumpfile, int flags)
struct loop *loop = &loops->array[i];
if (! loop->invalid && loop->end)
- scan_loop (loop, flags);
+ {
+ scan_loop (loop, flags);
+ ggc_collect ();
+ }
}
end_alias_analysis ();
@@ -1465,12 +1469,18 @@ force_movables (struct loop_movables *movables)
m = 0;
/* Increase the priority of the moving the first insn
- since it permits the second to be moved as well. */
+ since it permits the second to be moved as well.
+ Likewise for insns already forced by the first insn. */
if (m != 0)
{
+ struct movable *m2;
+
m->forces = m1;
- m1->lifetime += m->lifetime;
- m1->savings += m->savings;
+ for (m2 = m1; m2; m2 = m2->forces)
+ {
+ m2->lifetime += m->lifetime;
+ m2->savings += m->savings;
+ }
}
}
}
@@ -8005,6 +8015,7 @@ check_dbra_loop (struct loop *loop, int insn_count)
struct loop_ivs *ivs = LOOP_IVS (loop);
struct iv_class *bl;
rtx reg;
+ enum machine_mode mode;
rtx jump_label;
rtx final_value;
rtx start_value;
@@ -8425,6 +8436,7 @@ check_dbra_loop (struct loop *loop, int insn_count)
/* Save some info needed to produce the new insns. */
reg = bl->biv->dest_reg;
+ mode = GET_MODE (reg);
jump_label = condjump_label (PREV_INSN (loop_end));
new_add_val = GEN_INT (-INTVAL (bl->biv->add_val));
@@ -8436,12 +8448,12 @@ check_dbra_loop (struct loop *loop, int insn_count)
if (initial_value == const0_rtx
&& GET_CODE (comparison_value) == CONST_INT)
{
- start_value = GEN_INT (comparison_val - add_adjust);
+ start_value
+ = gen_int_mode (comparison_val - add_adjust, mode);
loop_insn_hoist (loop, gen_move_insn (reg, start_value));
}
else if (GET_CODE (initial_value) == CONST_INT)
{
- enum machine_mode mode = GET_MODE (reg);
rtx offset = GEN_INT (-INTVAL (initial_value) - add_adjust);
rtx add_insn = gen_add3_insn (reg, comparison_value, offset);
@@ -8457,7 +8469,6 @@ check_dbra_loop (struct loop *loop, int insn_count)
}
else if (! add_adjust)
{
- enum machine_mode mode = GET_MODE (reg);
rtx sub_insn = gen_sub3_insn (reg, comparison_value,
initial_value);
@@ -8515,7 +8526,7 @@ check_dbra_loop (struct loop *loop, int insn_count)
/* Add new compare/branch insn at end of loop. */
start_sequence ();
emit_cmp_and_jump_insns (reg, const0_rtx, cmp_code, NULL_RTX,
- GET_MODE (reg), 0,
+ mode, 0,
XEXP (jump_label, 0));
tem = get_insns ();
end_sequence ();
diff --git a/gcc/loop.h b/gcc/loop.h
index 2a7f3ec816e..f2f870ce276 100644
--- a/gcc/loop.h
+++ b/gcc/loop.h
@@ -1,5 +1,5 @@
/* Loop optimization definitions for GCC
- Copyright (C) 1991, 1995, 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1991, 1995, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GCC.
@@ -428,4 +428,5 @@ extern rtx loop_insn_sink (const struct loop *, rtx);
extern rtx loop_insn_hoist (const struct loop *, rtx);
/* Forward declarations for non-static functions declared in doloop.c. */
+extern rtx doloop_condition_get (rtx);
extern int doloop_optimize (const struct loop *);
diff --git a/gcc/mips-tfile.c b/gcc/mips-tfile.c
index 314ed53fab7..9b333063e34 100644
--- a/gcc/mips-tfile.c
+++ b/gcc/mips-tfile.c
@@ -3,7 +3,7 @@
in the form of comments (the mips assembler does not support
assembly access to debug information).
Copyright (C) 1991, 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2001,
- 2002, 2003 Free Software Foundation, Inc.
+ 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Meissner (meissner@cygnus.com).
This file is part of GCC.
@@ -4774,7 +4774,7 @@ main (int argc, char **argv)
if (version)
{
printf (_("mips-tfile (GCC) %s\n"), version_string);
- fputs (_("Copyright (C) 2003 Free Software Foundation, Inc.\n"), stdout);
+ fputs ("Copyright (C) 2004 Free Software Foundation, Inc.\n", stdout);
fputs (_("This is free software; see the source for copying conditions. There is NO\n\
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"),
stdout);
diff --git a/gcc/objc/Make-lang.in b/gcc/objc/Make-lang.in
index 70b9e4def22..5d88a44c50e 100644
--- a/gcc/objc/Make-lang.in
+++ b/gcc/objc/Make-lang.in
@@ -72,8 +72,6 @@ objc/objc-act.o : objc/objc-act.c \
objc/objc-act.h input.h function.h output.h debug.h langhooks.h \
$(LANGHOOKS_DEF_H) gt-objc-objc-act.h gtype-objc.h
-po-generated: objc/objc-parse.c
-
objc.srcextra: objc/objc-parse.c objc/objc-parse.y
-cp -p $^ $(srcdir)/objc
@@ -96,6 +94,10 @@ objc.all.build:
objc.all.cross:
objc.start.encap:
objc.rest.encap:
+objc.info:
+objc.man:
+objc.srcinfo:
+objc.srcman:
objc.tags: force
cd $(srcdir)/objc; etags -o TAGS.sub *.y *.c *.h; \
diff --git a/gcc/objc/objc-act.c b/gcc/objc/objc-act.c
index c552bada9de..c1352922c7e 100644
--- a/gcc/objc/objc-act.c
+++ b/gcc/objc/objc-act.c
@@ -5890,21 +5890,18 @@ build_objc_method_call (int super_flag, tree method_prototype,
if (flag_next_runtime)
{
-#ifdef STRUCT_VALUE
/* If we are returning a struct in memory, and the address
of that memory location is passed as a hidden first
argument, then change which messenger entry point this
expr will call. NB: Note that sender_cast remains
unchanged (it already has a struct return type). */
- if ((TREE_CODE (ret_type) == RECORD_TYPE
- || TREE_CODE (ret_type) == UNION_TYPE)
-#if defined (DEFAULT_PCC_STRUCT_RETURN) && DEFAULT_PCC_STRUCT_RETURN == 0
- && RETURN_IN_MEMORY (ret_type)
-#endif
- && STRUCT_VALUE == 0)
+ if (!targetm.calls.struct_value_rtx (0, 0)
+ && (TREE_CODE (ret_type) == RECORD_TYPE
+ || TREE_CODE (ret_type) == UNION_TYPE)
+ && targetm.calls.return_in_memory (ret_type, 0))
sender = (super_flag ? umsg_super_stret_decl :
flag_nil_receivers ? umsg_stret_decl : umsg_nonnil_stret_decl);
-#endif
+
method_params = tree_cons (NULL_TREE, lookup_object,
tree_cons (NULL_TREE, selector,
method_params));
diff --git a/gcc/optabs.c b/gcc/optabs.c
index 44d4b83ff8a..3d85a06fc38 100644
--- a/gcc/optabs.c
+++ b/gcc/optabs.c
@@ -1,6 +1,6 @@
/* Expand the basic unary and binary arithmetic operations, for GNU compiler.
Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -3651,6 +3651,16 @@ prepare_cmp_insn (rtx *px, rtx *py, enum rtx_code *pcomparison, rtx size,
return;
}
+ /* Don't allow operands to the compare to trap, as that can put the
+ compare and branch in different basic blocks. */
+ if (flag_non_call_exceptions)
+ {
+ if (may_trap_p (x))
+ x = force_reg (mode, x);
+ if (may_trap_p (y))
+ y = force_reg (mode, y);
+ }
+
*px = x;
*py = y;
if (can_compare_p (*pcomparison, mode, purpose))
diff --git a/gcc/optabs.h b/gcc/optabs.h
index a85ce3035cb..4f39e359b79 100644
--- a/gcc/optabs.h
+++ b/gcc/optabs.h
@@ -1,5 +1,5 @@
/* Definitions for code generation pass of GNU compiler.
- Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/opts.c b/gcc/opts.c
index e87accea947..ff50ad19739 100644
--- a/gcc/opts.c
+++ b/gcc/opts.c
@@ -448,7 +448,8 @@ handle_options (unsigned int argc, const char **argv, unsigned int lang_mask)
/* Interpret "-" or a non-switch as a file name. */
if (opt[0] != '-' || opt[1] == '\0')
{
- main_input_filename = opt;
+ if (main_input_filename == NULL)
+ main_input_filename = opt;
add_input_filename (opt);
n = 1;
continue;
@@ -832,6 +833,10 @@ common_handle_option (size_t scode, const char *arg,
flag_pie = value + value;
break;
+ case OPT_fabi_version_:
+ flag_abi_version = value;
+ break;
+
case OPT_falign_functions:
align_functions = !value;
break;
@@ -1445,6 +1450,9 @@ common_handle_option (size_t scode, const char *arg,
case OPT_fwritable_strings:
flag_writable_strings = value;
+ if (flag_writable_strings)
+ inform ("-fwritable-strings is deprecated; "
+ "see documentation for details");
break;
case OPT_fzero_initialized_in_bss:
diff --git a/gcc/output.h b/gcc/output.h
index 9fbc726a665..05a3743726f 100644
--- a/gcc/output.h
+++ b/gcc/output.h
@@ -1,7 +1,7 @@
/* Declarations for insn-output.c. These functions are defined in recog.c,
final.c, and varasm.c.
Copyright (C) 1987, 1991, 1994, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -71,7 +71,7 @@ extern void final (rtx, FILE *, int, int);
/* The final scan for one insn, INSN. Args are same as in `final', except
that INSN is the insn being scanned. Value returned is the next insn to
be scanned. */
-extern rtx final_scan_insn (rtx, FILE *, int, int, int);
+extern rtx final_scan_insn (rtx, FILE *, int, int, int, int *);
/* Replace a SUBREG with a REG or a MEM, based on the thing it is a
subreg of. */
diff --git a/gcc/params.def b/gcc/params.def
index 3f0d15b1854..dc826634af7 100644
--- a/gcc/params.def
+++ b/gcc/params.def
@@ -63,7 +63,7 @@ DEFPARAM (PARAM_MAX_INLINE_INSNS_SINGLE,
DEFPARAM (PARAM_MAX_INLINE_INSNS_AUTO,
"max-inline-insns-auto",
"The maximum number of instructions when automatically inlining",
- 150)
+ 100)
/* For languages that (still) use the RTL inliner, we can specify
limits for the RTL inliner separately.
@@ -110,7 +110,7 @@ DEFPARAM(PARAM_MAX_PENDING_LIST_LENGTH,
DEFPARAM(PARAM_LARGE_FUNCTION_INSNS,
"large-function-insns",
"The size of function body to be considered large",
- 10000)
+ 3000)
DEFPARAM(PARAM_LARGE_FUNCTION_GROWTH,
"large-function-growth",
"Maximal growth due to inlining of large function (in percent)",
@@ -133,7 +133,12 @@ DEFPARAM(PARAM_MAX_GCSE_PASSES,
1)
/* This parameter limits the number of insns in a loop that will be unrolled,
- and by how much the loop is unrolled. */
+ and by how much the loop is unrolled.
+
+ This limit should be at most half of the peeling limits: loop unroller
+ decides to not unroll loops that iterate fewer than 2*number of allowed
+ unrollings and thus we would have loops that are neither peeled or unrooled
+ otherwise. */
DEFPARAM(PARAM_MAX_UNROLLED_INSNS,
"max-unrolled-insns",
"The maximum number of instructions to consider to unroll in a loop",
@@ -153,7 +158,7 @@ DEFPARAM(PARAM_MAX_UNROLL_TIMES,
DEFPARAM(PARAM_MAX_PEELED_INSNS,
"max-peeled-insns",
"The maximum number of insns of a peeled loop",
- 120)
+ 400)
/* The maximum number of peelings of a single loop. */
DEFPARAM(PARAM_MAX_PEEL_TIMES,
"max-peel-times",
@@ -163,7 +168,7 @@ DEFPARAM(PARAM_MAX_PEEL_TIMES,
DEFPARAM(PARAM_MAX_COMPLETELY_PEELED_INSNS,
"max-completely-peeled-insns",
"The maximum number of insns of a completely peeled loop",
- 120)
+ 400)
/* The maximum number of peelings of a single loop that is peeled completely. */
DEFPARAM(PARAM_MAX_COMPLETELY_PEEL_TIMES,
"max-completely-peel-times",
@@ -173,7 +178,7 @@ DEFPARAM(PARAM_MAX_COMPLETELY_PEEL_TIMES,
DEFPARAM(PARAM_MAX_ONCE_PEELED_INSNS,
"max-once-peeled-insns",
"The maximum number of insns of a peeled loop that rolls only once",
- 200)
+ 400)
/* The maximum number of insns of an unswitched loop. */
DEFPARAM(PARAM_MAX_UNSWITCH_INSNS,
diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog
index eb49a0d5542..2471b01e4c0 100644
--- a/gcc/po/ChangeLog
+++ b/gcc/po/ChangeLog
@@ -1,3 +1,74 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-04-18 Mark Mitchell <mark@codesourcery.com>
+
+ * gcc.pot: Regenerated.
+
+2004-03-18 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * be.po, da.po, el.po, es.po, ja.po, nl.po, sv.po, tr.po: Update.
+
+2004-02-25 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * fr.po: Update.
+
+2004-02-19 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * fr.po: Update.
+
+2004-02-18 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * fr.po: Update.
+
+2004-02-17 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * fr.po: Update.
+
+2004-02-16 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * fr.po: Update.
+
+ * de.po: Update.
+
+2004-02-12 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * ca.po: New file.
+
+2004-02-10 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * de.po: Update.
+
+2004-02-09 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * de.po: Update.
+
+2004-02-06 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * gcc.pot: Regenerate.
+
+2004-02-01 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * de.po: Update.
+
+2004-01-25 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * EXCLUDES: Update.
+ * gcc.pot: Regenerate.
+
+2004-01-25 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * de.po: Update.
+
+2004-01-25 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * de.po: Update.
+
+2004-01-17 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * de.po: Update.
+
2003-12-31 Joseph S. Myers <jsm@polyomino.org.uk>
* de.po: Update.
diff --git a/gcc/po/EXCLUDES b/gcc/po/EXCLUDES
index 97153871fc4..e9c5db11015 100644
--- a/gcc/po/EXCLUDES
+++ b/gcc/po/EXCLUDES
@@ -1,29 +1,38 @@
# This file lists all the sources which should *not* be scanned for
# strings to translate. Only the first word on each line is used; the
-# rest is ignored. Only files with an extension of .c or .h are
+# rest is ignored. Only files with an extension of .c or .h or .def are
# examined to begin with.
# These files are part of libgcc, or target headers provided by gcc.
-config/rs6000/sol-c0.c
-config/float-c4x.h
-config/float-i128.h
-config/float-i32.h
-config/float-i386.h
-config/float-i64.h
-config/float-m68k.h
-config/float-sh.h
-config/float-sparc.h
-config/float-vax.h
+config/darwin-crt2.c
+config/fp-bit.c
+config/fp-bit.h
+config/vxlib.c
crtstuff.c
-frame.h
gbl-ctors.h
-libgcc1.c
-libgcc1-test.c
+gcov-io.h
+gcov-iov.c
+gthr-aix.h
+gthr-dce.h
+gthr-gnat.c
+gthr-gnat.h
+gthr-posix.c
+gthr-posix.h
+gthr-rtems.h
+gthr-single.h
+gthr-solaris.h
+gthr-vxworks.h
+gthr-win32.h
+gthr.h
libgcc2.c
libgcc2.h
+libgcov.c
limitx.h
limity.h
longlong.h
+unwind-c.c
+unwind-dw2-fde-darwin.c
+unwind-dw2-fde-glibc.c
unwind-dw2-fde.c
unwind-dw2-fde.h
unwind-dw2.c
@@ -34,19 +43,22 @@ unwind.h
# These programs are meant to be executed only by GCC maintainers or
# installers. Such files do not need to be translated, as these
# people typically need to be able to read English anyway.
-enquire.c
fix-header.c
gen-protos.c
genattr.c
genattrtab.c
+genautomata.c
gencheck.c
gencodes.c
+genconditions.c
genconfig.c
genconstants.c
genemit.c
genextract.c
genflags.c
gengenrtl.c
+gengtype.c
+genmodes.c
genopinit.c
genoutput.c
genpeep.c
diff --git a/gcc/po/be.po b/gcc/po/be.po
index 8580023f09c..f5d9043c092 100644
--- a/gcc/po/be.po
+++ b/gcc/po/be.po
@@ -5,7 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: gcc 3.1\n"
-"POT-Creation-Date: 2003-10-24 13:20+0200\n"
+"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
+"POT-Creation-Date: 2004-02-06 01:40+0000\n"
"PO-Revision-Date: 2002-05-17 15:54+0200\n"
"Last-Translator: Ales Nyakhaychyk <nyakhaychyk@i18n.linux.by>\n"
"Language-Team: Belarusian <i18n@tut.by>\n"
@@ -13,1062 +14,1120 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: attribs.c:185
+#: attribs.c:178
#, c-format
msgid "`%s' attribute directive ignored"
msgstr ""
-#: attribs.c:193
+#: attribs.c:186
#, c-format
msgid "wrong number of arguments specified for `%s' attribute"
msgstr "Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ¾Ð²Ð°Ñ ÐºÐ¾Ð»ÑŒÐºÐ°Ñьць аргументаў, зададзеных Ð´Ð»Ñ Ð°Ñ‚Ñ€Ñ‹Ð±ÑƒÑ‚Ð° `%s'"
-#: attribs.c:210
+#: attribs.c:203
#, c-format
msgid "`%s' attribute does not apply to types"
msgstr ""
-#: attribs.c:247
+#: attribs.c:249
#, c-format
msgid "`%s' attribute only applies to function types"
msgstr ""
-#: attribs.c:404 c-common.c:5275 c-common.c:5297 c-common.c:5319
-#: c-common.c:5350 c-common.c:5372 c-common.c:5397 c-common.c:5423
-#: c-common.c:5453 c-common.c:5491 c-common.c:5538 c-common.c:5568
-#: c-common.c:5598 c-common.c:5621 c-common.c:5878 c-common.c:5900
-#: c-common.c:5943 c-common.c:6020 c-common.c:6076 c-common.c:6103
-#: c-common.c:6186 c-common.c:6220 c-common.c:6574 config/arm/arm.c:2101
-#: config/arm/arm.c:2128 config/avr/avr.c:4774 config/h8300/h8300.c:3693
-#: config/h8300/h8300.c:3718 config/i386/i386.c:1403 config/i386/winnt.c:78
-#: config/ip2k/ip2k.c:3204
+#: attribs.c:416 c-common.c:4344 c-common.c:4363 c-common.c:4381
+#: c-common.c:4408 c-common.c:4427 c-common.c:4450 c-common.c:4473
+#: c-common.c:4499 c-common.c:4533 c-common.c:4577 c-common.c:4605
+#: c-common.c:4633 c-common.c:4652 c-common.c:4907 c-common.c:4929
+#: c-common.c:4964 c-common.c:5031 c-common.c:5077 c-common.c:5135
+#: c-common.c:5166 c-common.c:5512 c-common.c:5535 c-common.c:5574
+#: config/arm/arm.c:2278 config/arm/arm.c:2305 config/avr/avr.c:4539
+#: config/h8300/h8300.c:4281 config/h8300/h8300.c:4304 config/i386/i386.c:1599
+#: config/i386/i386.c:15299 config/i386/winnt.c:86 config/ia64/ia64.c:1053
+#: config/ip2k/ip2k.c:3151
#, c-format
msgid "`%s' attribute ignored"
msgstr "\"%s\" атрыбут ігнарыруецца"
-#: builtins.c:285
+#: builtins.c:318
msgid "offset outside bounds of constant string"
msgstr ""
-#: builtins.c:765
+#: builtins.c:786
#, fuzzy
msgid "second arg to `__builtin_prefetch' must be a constant"
msgstr "аргумент `__builtin_args_info' павінен быць канÑтантай"
-#: builtins.c:772
+#: builtins.c:793
msgid "invalid second arg to __builtin_prefetch; using zero"
msgstr ""
-#: builtins.c:779
+#: builtins.c:800
#, fuzzy
msgid "third arg to `__builtin_prefetch' must be a constant"
msgstr "аргумент `__builtin_args_info' павінен быць канÑтантай"
-#: builtins.c:786
+#: builtins.c:807
msgid "invalid third arg to __builtin_prefetch; using zero"
msgstr ""
-#. ??? We used to try and build up a call to the out of line function,
-#. guessing about what registers needed saving etc. This became much
-#. harder with __builtin_va_start, since we don't have a tree for a
-#. call to __builtin_saveregs to fall back on. There was exactly one
-#. port (i860) that used this code, and I'm unconvinced it could actually
-#. handle the general case. So we no longer try to handle anything
-#. weird and make the backend absorb the evil.
-#: builtins.c:2875
-msgid "__builtin_saveregs not supported by this target"
-msgstr "__buitin_saveregs не падтрымліваецца гÑтай мÑтай"
-
-#: builtins.c:2917
+#: builtins.c:3828
msgid "argument of `__builtin_args_info' must be constant"
msgstr "аргумент `__builtin_args_info' павінен быць канÑтантай"
-#: builtins.c:2923
+#: builtins.c:3834
msgid "argument of `__builtin_args_info' out of range"
msgstr "аргумент `__builtin_args_info' выйшаў за межы"
-#: builtins.c:2929
+#: builtins.c:3840
msgid "missing argument in `__builtin_args_info'"
msgstr "прапушчан аргумент у `__builtin_args_info'"
-#: builtins.c:2960
+#: builtins.c:3856
msgid "`va_start' used in function with fixed args"
msgstr ""
"`va_start' выкарыÑтоўвываецца Ñž функцыі з нÑзьменнай\n"
" колькаÑьцю аргументаў"
-#: builtins.c:2979
+#: builtins.c:3875
msgid "second parameter of `va_start' not last named argument"
msgstr ""
#. Evidently an out of date version of <stdarg.h>; can't validate
#. va_start's second argument, but can still work as intended.
-#: builtins.c:2984
+#: builtins.c:3880
msgid "`__builtin_next_arg' called without an argument"
msgstr "\"__buitin_next_arg\" выклікаецца без аргумента"
-#: builtins.c:3070
+#: builtins.c:3969
msgid "too many arguments to function `va_start'"
msgstr ""
-#: builtins.c:3172
+#: builtins.c:4091
msgid "first argument to `va_arg' not of type `va_list'"
msgstr ""
#. Unfortunately, this is merely undefined, rather than a constraint
#. violation, so we cannot make this an error. If this call is never
#. executed, the program is still strictly conforming.
-#: builtins.c:3204
+#: builtins.c:4123
#, c-format
msgid "`%s' is promoted to `%s' when passed through `...'"
msgstr ""
-#: builtins.c:3209
+#: builtins.c:4128
#, c-format
msgid "(so you should pass `%s' not `%s' to `va_arg')"
msgstr ""
-#: builtins.c:3340
+#: builtins.c:4240
msgid "invalid arg to `__builtin_frame_address'"
msgstr ""
-#: builtins.c:3342
+#: builtins.c:4242
msgid "invalid arg to `__builtin_return_address'"
msgstr ""
-#: builtins.c:3356
+#: builtins.c:4256
msgid "unsupported arg to `__builtin_frame_address'"
msgstr ""
-#: builtins.c:3358
+#: builtins.c:4258
msgid "unsupported arg to `__builtin_return_address'"
msgstr ""
-#: builtins.c:3530
+#: builtins.c:4418
msgid "second arg to `__builtin_expect' must be a constant"
msgstr ""
-#: builtins.c:4028
+#: builtins.c:5359
msgid "__builtin_longjmp second argument must be 1"
msgstr ""
-#. just do library call, if unknown builtin
-#: builtins.c:4092 c-common.c:4459
+#: builtins.c:5454
#, c-format
msgid "built-in function `%s' not currently supported"
msgstr ""
-#: builtins.c:4165
+#: builtins.c:5594
#, fuzzy
msgid "target format does not support infinity"
msgstr "ISO C не падтрымлівае комлекÑÐ½Ñ‹Ñ Ñ†ÑÐ»Ð°Ð»Ñ–ÐºÐ°Ð²Ñ‹Ñ Ñ‚Ñ‹Ð¿Ñ‹"
-#: c-common.c:1168
-#, c-format
-msgid "`%s' is not defined outside of function scope"
+#: c-common.c:934
+msgid "%Hsuggest explicit braces to avoid ambiguous `else'"
msgstr ""
-#: c-common.c:1189
+#: c-common.c:1158
+#, fuzzy
+msgid "%J'%D' is not defined outside of function scope"
+msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
+
+#: c-common.c:1178
#, c-format
msgid "string length `%d' is greater than the length `%d' ISO C%d compilers are required to support"
msgstr ""
-#: c-common.c:1247
-msgid "concatenation of string literals with __FUNCTION__ is deprecated"
-msgstr ""
-
-#: c-common.c:1343
+#: c-common.c:1218
msgid "overflow in constant expression"
msgstr ""
-#: c-common.c:1364
+#: c-common.c:1238
msgid "integer overflow in expression"
msgstr ""
-#: c-common.c:1373
+#: c-common.c:1247
msgid "floating point overflow in expression"
msgstr ""
-#: c-common.c:1379
+#: c-common.c:1253
msgid "vector overflow in expression"
msgstr ""
#. This detects cases like converting -129 or 256 to unsigned char.
-#: c-common.c:1402
+#: c-common.c:1275
msgid "large integer implicitly truncated to unsigned type"
msgstr ""
-#: c-common.c:1404
+#: c-common.c:1277
msgid "negative integer implicitly converted to unsigned type"
msgstr ""
-#: c-common.c:1452
+#: c-common.c:1323
msgid "overflow in implicit constant conversion"
msgstr ""
-#: c-common.c:1600
+#: c-common.c:1459
#, c-format
msgid "operation on `%s' may be undefined"
msgstr ""
-#: c-common.c:1891
+#: c-common.c:1743
msgid "expression statement has incomplete type"
msgstr ""
-#: c-common.c:1924
+#: c-common.c:1775
msgid "case label does not reduce to an integer constant"
msgstr ""
-#: c-common.c:2228
+#: c-common.c:2105
msgid "invalid truth-value expression"
msgstr ""
-#: c-common.c:2279
+#: c-common.c:2156
#, c-format
msgid "invalid operands to binary %s"
msgstr ""
-#: c-common.c:2513
+#: c-common.c:2390
msgid "comparison is always false due to limited range of data type"
msgstr ""
-#: c-common.c:2515
+#: c-common.c:2392
msgid "comparison is always true due to limited range of data type"
msgstr ""
-#: c-common.c:2585
+#: c-common.c:2462
msgid "comparison of unsigned expression >= 0 is always true"
msgstr ""
-#: c-common.c:2594
+#: c-common.c:2471
msgid "comparison of unsigned expression < 0 is always false"
msgstr ""
-#: c-common.c:2641
+#: c-common.c:2516
msgid "pointer of type `void *' used in arithmetic"
msgstr ""
-#: c-common.c:2647
+#: c-common.c:2522
msgid "pointer to a function used in arithmetic"
msgstr ""
-#: c-common.c:2653
+#: c-common.c:2528
msgid "pointer to member function used in arithmetic"
msgstr ""
-#: c-common.c:2659
+#: c-common.c:2534
msgid "pointer to a member used in arithmetic"
msgstr ""
-#: c-common.c:2746 f/com.c:14762
+#: c-common.c:2623 f/com.c:14734
msgid "struct type value used where scalar is required"
msgstr ""
-#: c-common.c:2750 f/com.c:14766
+#: c-common.c:2627 f/com.c:14738
msgid "union type value used where scalar is required"
msgstr ""
-#: c-common.c:2754 f/com.c:14770
+#: c-common.c:2631 f/com.c:14742
msgid "array type value used where scalar is required"
msgstr ""
-#: c-common.c:2874 f/com.c:14903
+#. Common Ada/Pascal programmer's mistake. We always warn
+#. about this since it is so bad.
+#: c-common.c:2668
+msgid "the address of `%D', will always evaluate as `true'"
+msgstr ""
+
+#: c-common.c:2762 f/com.c:14874
msgid "suggest parentheses around assignment used as truth value"
msgstr ""
-#: c-common.c:2918 c-common.c:2950
+#: c-common.c:2808 c-common.c:2848
msgid "invalid use of `restrict'"
msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: c-common.c:3064
+#: c-common.c:2958
#, fuzzy
msgid "invalid application of `sizeof' to a function type"
msgstr "ÐерÑчаіÑны выбар \"%s\""
-#: c-common.c:3074
+#: c-common.c:2968
#, fuzzy, c-format
msgid "invalid application of `%s' to a void type"
msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: c-common.c:3080
+#: c-common.c:2974
#, fuzzy, c-format
msgid "invalid application of `%s' to an incomplete type"
msgstr "\"%s\" мае незавершаны тып"
-#: c-common.c:3121
+#: c-common.c:3014
msgid "`__alignof' applied to a bit-field"
msgstr ""
-#: c-common.c:3618
+#: c-common.c:3506
#, fuzzy, c-format
msgid "cannot disable built-in function `%s'"
msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
-#: c-common.c:3787 c-typeck.c:1748
+#: c-common.c:3667 c-typeck.c:1941
#, c-format
msgid "too few arguments to function `%s'"
msgstr "нехапае аргументаў у функцыі \"%s\""
-#: c-common.c:3793 c-typeck.c:1601
+#: c-common.c:3673 c-typeck.c:1802
#, c-format
msgid "too many arguments to function `%s'"
msgstr "вельмі шмат аргумÑнтаў у функцыі `%s'"
-#: c-common.c:3812
+#: c-common.c:3692
#, fuzzy, c-format
msgid "non-floating-point argument to function `%s'"
msgstr "вельмі шмат аргумÑнтаў у функцыі `%s'"
-#: c-common.c:4081
+#: c-common.c:3919
msgid "pointers are not permitted as case values"
msgstr ""
-#: c-common.c:4087
-msgid "ISO C++ forbids range expressions in switch statements"
-msgstr ""
-
-#: c-common.c:4089
-msgid "ISO C forbids range expressions in switch statements"
+#: c-common.c:3923
+msgid "range expressions in switch statements are non-standard"
msgstr ""
-#: c-common.c:4119
+#: c-common.c:3952
msgid "empty range specified"
msgstr ""
-#: c-common.c:4170
+#: c-common.c:4003
msgid "duplicate (or overlapping) case value"
msgstr ""
-#: c-common.c:4172
-msgid "this is the first entry overlapping that value"
+#: c-common.c:4004
+msgid "%Jthis is the first entry overlapping that value"
msgstr ""
-#: c-common.c:4176
+#: c-common.c:4008
msgid "duplicate case value"
msgstr ""
-#: c-common.c:4177
-msgid "previously used here"
-msgstr ""
+#: c-common.c:4009
+#, fuzzy
+msgid "%Jpreviously used here"
+msgstr "папÑÑ€ÑднÑе вызначÑньне"
-#: c-common.c:4181
+#: c-common.c:4013
msgid "multiple default labels in one switch"
msgstr ""
-#: c-common.c:4182
-msgid "this is the first default label"
+#: c-common.c:4014
+msgid "%Jthis is the first default label"
msgstr ""
-#: c-common.c:4210
+#: c-common.c:4039
#, fuzzy
-msgid "ISO C++ forbids taking the address of a label"
+msgid "taking the address of a label is non-standard"
msgstr "ISO C не дазвалÑе пуÑÑ‚Ñ‹ ізыходны файл"
-#: c-common.c:4212
-#, fuzzy
-msgid "ISO C forbids taking the address of a label"
-msgstr "ISO C не дазвалÑе пуÑÑ‚Ñ‹ ізыходны файл"
+#: c-common.c:4085
+msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
+
+#: c-common.c:4090
+msgid "%Hignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
-#: c-common.c:5235
+#. SW_PARAM
+#: c-common.c:4297
#, c-format
-msgid "declaration of `%s' shadows %s"
+msgid "declaration of \"%s\" shadows a parameter"
msgstr ""
-#: c-common.c:5654
+#. SW_LOCAL
+#: c-common.c:4298
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a previous local"
+msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
+
+#. SW_GLOBAL
+#: c-common.c:4299
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a global declaration"
+msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
+
+#: c-common.c:4303
+#, fuzzy
+msgid "%Jshadowed declaration is here"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+
+#: c-common.c:4686
#, c-format
msgid "unknown machine mode `%s'"
msgstr "невÑдомы Ñ€Ñжым машыны \"%s\""
-#: c-common.c:5657
+#: c-common.c:4689
#, c-format
msgid "no data type for mode `%s'"
msgstr "нÑма тыпа дадзеных Ð´Ð»Ñ Ñ€Ñжыма \"%s\""
-#: c-common.c:5666 c-common.c:6316
+#: c-common.c:4693
+#, fuzzy, c-format
+msgid "invalid pointer mode `%s'"
+msgstr "ÐерÑчаіÑны выбар \"%s\""
+
+#: c-common.c:4700 c-common.c:5263
#, fuzzy, c-format
msgid "unable to emulate '%s'"
msgstr "немагу адчыніць файл \"%s\""
-#: c-common.c:5702
-msgid "section attribute cannot be specified for local variables"
-msgstr ""
+#: c-common.c:4744
+#, fuzzy
+msgid "%Jsection attribute cannot be specified for local variables"
+msgstr "атрыбуты Ñекцыі не падтрымліваюцца Ð´Ð»Ñ Ð³Ñтай мÑÑ‚Ñ‹"
-#: c-common.c:5713
-#, c-format
-msgid "section of `%s' conflicts with previous declaration"
+#: c-common.c:4755
+#, fuzzy
+msgid "%Jsection of '%D' conflicts with previous declaration"
msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
-#: c-common.c:5722
-#, c-format
-msgid "section attribute not allowed for `%s'"
-msgstr ""
+#: c-common.c:4764
+#, fuzzy
+msgid "%Jsection attribute not allowed for '%D'"
+msgstr "\"%s\" атрыбут ігнарыруецца"
-#: c-common.c:5729
-msgid "section attributes are not supported for this target"
+#: c-common.c:4770
+#, fuzzy
+msgid "%Jsection attributes are not supported for this target"
msgstr "атрыбуты Ñекцыі не падтрымліваюцца Ð´Ð»Ñ Ð³Ñтай мÑÑ‚Ñ‹"
-#: c-common.c:5771
+#: c-common.c:4808
msgid "requested alignment is not a constant"
msgstr ""
-#: c-common.c:5776
+#: c-common.c:4813
msgid "requested alignment is not a power of 2"
msgstr ""
-#: c-common.c:5781
+#: c-common.c:4818
msgid "requested alignment is too large"
msgstr ""
-#: c-common.c:5808
-#, c-format
-msgid "alignment may not be specified for `%s'"
+#: c-common.c:4844
+msgid "%Jalignment may not be specified for '%D'"
msgstr ""
-#: c-common.c:5853
-#, c-format
-msgid "`%s' defined both normally and as an alias"
+#: c-common.c:4882
+msgid "%J'%D' defined both normally and as an alias"
msgstr ""
-#: c-common.c:5863
+#: c-common.c:4892
msgid "alias arg not a string"
msgstr ""
-#: c-common.c:5910
+#: c-common.c:4935
msgid "visibility arg not a string"
msgstr ""
-#: c-common.c:5919
+#: c-common.c:4948
msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\""
msgstr ""
-#: c-common.c:5953
+#: c-common.c:4974
msgid "tls_model arg not a string"
msgstr ""
-#: c-common.c:5962
+#: c-common.c:4983
msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\""
msgstr ""
-#: c-common.c:5987 c-common.c:6043
-#, c-format
-msgid "`%s' attribute applies only to functions"
-msgstr ""
-
-#: c-common.c:5994 c-common.c:6050
-#, c-format
-msgid "can't set `%s' attribute after definition"
-msgstr ""
+#: c-common.c:5005 c-common.c:5051
+#, fuzzy
+msgid "%J'%E' attribute applies only to functions"
+msgstr "\"%s\" звычайна функцыÑ"
-#: c-common.c:6114
-msgid "cleanup arg not an identifier"
+#: c-common.c:5010 c-common.c:5056
+msgid "%Jcan't set '%E' attribute after definition"
msgstr ""
-#: c-common.c:6121
-#, fuzzy
-msgid "cleanup arg not a function"
-msgstr "`%D' - гÑта Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ,"
-
-#: c-common.c:6183
+#: c-common.c:5132
#, fuzzy, c-format
msgid "`%s' attribute ignored for `%s'"
msgstr "\"%s\" атрыбут ігнарыруецца"
-#: c-common.c:6248
+#: c-common.c:5195
#, c-format
msgid "invalid vector type for attribute `%s'"
msgstr ""
-#: c-common.c:6272 c-common.c:6304
+#: c-common.c:5219 c-common.c:5251
msgid "no vector mode with the size and type specified could be found"
msgstr ""
-#: c-common.c:6403
+#: c-common.c:5353
msgid "nonnull attribute without arguments on a non-prototype"
msgstr ""
-#: c-common.c:6418
+#: c-common.c:5368
#, c-format
msgid "nonnull argument has invalid operand number (arg %lu)"
msgstr ""
-#: c-common.c:6437
+#: c-common.c:5387
#, c-format
msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)"
msgstr ""
-#: c-common.c:6445
+#: c-common.c:5395
#, c-format
msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)"
msgstr ""
-#: c-common.c:6531
+#: c-common.c:5475
#, c-format
msgid "null argument where non-null required (arg %lu)"
msgstr ""
-#: c-convert.c:80 c-typeck.c:988 c-typeck.c:4059 cp/typeck.c:1615
-#: cp/typeck.c:5939
-msgid "void value not ignored as it ought to be"
+#: c-common.c:5546
+msgid "cleanup arg not an identifier"
msgstr ""
-#: c-convert.c:112 java/typeck.c:150
-msgid "conversion to non-scalar type requested"
-msgstr ""
+#: c-common.c:5553
+#, fuzzy
+msgid "cleanup arg not a function"
+msgstr "`%D' - гÑта Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ,"
-#: c-decl.c:340
+#: c-common.c:5914
#, c-format
-msgid "array `%s' assumed to have one element"
-msgstr ""
+msgid "%s at end of input"
+msgstr "%s на прыканцы ўводу"
-#: c-decl.c:526
+#: c-common.c:5920
#, c-format
-msgid "`struct %s' incomplete in scope ending here"
-msgstr ""
+msgid "%s before %s'%c'"
+msgstr "%s перад %s'%c'"
-#: c-decl.c:529
+#: c-common.c:5922
#, c-format
-msgid "`union %s' incomplete in scope ending here"
-msgstr ""
+msgid "%s before %s'\\x%x'"
+msgstr "%s перад %s'\\x%x'"
-#: c-decl.c:532
+#: c-common.c:5926
#, c-format
-msgid "`enum %s' incomplete in scope ending here"
+msgid "%s before string constant"
msgstr ""
-#: c-decl.c:646 c-decl.c:771 java/decl.c:1403
-#, c-format
-msgid "label `%s' used but not defined"
-msgstr "адмеціна `%s' выкарыÑтоўвываецца, але Ð½Ñ Ð²Ñ‹Ð·Ð½Ð°Ñ‡Ð°Ð½Ð°"
-
-#: c-decl.c:652 c-decl.c:778 java/decl.c:1409
+#: c-common.c:5928
#, c-format
-msgid "label `%s' defined but not used"
-msgstr "адмеціна `%s' вызначана, але Ð½Ñ Ð²Ñ‹ÐºÐ°Ñ€Ñ‹Ñтоўваецца"
-
-#: c-decl.c:893 cp/decl.c:3335
-#, c-format
-msgid "function `%s' redeclared as inline"
+msgid "%s before numeric constant"
msgstr ""
-#: c-decl.c:895 cp/decl.c:3337
-#, fuzzy, c-format
-msgid "previous declaration of function `%s' with attribute noinline"
-msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-
-#: c-decl.c:902 cp/decl.c:3344
+#: c-common.c:5930
#, c-format
-msgid "function `%s' redeclared with attribute noinline"
-msgstr ""
-
-#: c-decl.c:904 cp/decl.c:3346
-#, fuzzy, c-format
-msgid "previous declaration of function `%s' was inline"
-msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+msgid "%s before \"%s\""
+msgstr "%s перад \"%s\""
-#: c-decl.c:933 c-decl.c:979
+#: c-common.c:5932
#, c-format
-msgid "shadowing built-in function `%s'"
-msgstr ""
+msgid "%s before '%s' token"
+msgstr "%s перад знакам '%s'"
-#: c-decl.c:935
+#. Use `%s' to print the string in case there are any escape
+#. characters in the message.
+#: c-common.c:5934 c-typeck.c:2578 c-typeck.c:3970 c-typeck.c:3985
+#: c-typeck.c:4000 final.c:2776 final.c:2778 gcc.c:4574 rtl-error.c:109
+#: toplev.c:1340 config/cris/cris.c:545 cp/parser.c:1848 cp/typeck.c:4111
+#: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472
#, c-format
-msgid "shadowing library function `%s'"
+msgid "%s"
msgstr ""
-#: c-decl.c:941
-#, c-format
-msgid "library function `%s' declared as non-function"
+#: c-convert.c:82 c-typeck.c:1193 c-typeck.c:3410 cp/typeck.c:1337
+#: cp/typeck.c:5648 treelang/tree-convert.c:79
+msgid "void value not ignored as it ought to be"
msgstr ""
-#: c-decl.c:945 c-decl.c:948
-#, c-format
-msgid "built-in function `%s' declared as non-function"
+#: c-convert.c:114 java/typeck.c:148 treelang/tree-convert.c:105
+msgid "conversion to non-scalar type requested"
msgstr ""
-#: c-decl.c:952 objc/objc-act.c:2384 objc/objc-act.c:6154
-#, c-format
-msgid "`%s' redeclared as different kind of symbol"
+#: c-decl.c:371
+msgid "%Jarray '%D' assumed to have one element"
msgstr ""
-#: c-decl.c:953 c-decl.c:1144 c-decl.c:1158 c-decl.c:1165 c-decl.c:1310
-#: objc/objc-act.c:2386 objc/objc-act.c:6156 objc/objc-act.c:6211
-#, c-format
-msgid "previous declaration of `%s'"
-msgstr ""
+#: c-decl.c:580
+#, fuzzy
+msgid "%Jlabel `%D' used but not defined"
+msgstr "адмеціна `%D' выкарыÑтоўвываецца, але Ð½Ñ Ð²Ñ‹Ð·Ð½Ð°Ñ‡Ð°Ð½Ð°"
-#. If types don't match for a built-in, throw away the built-in.
-#: c-decl.c:1048
-#, c-format
-msgid "conflicting types for built-in function `%s'"
-msgstr ""
+#: c-decl.c:586
+#, fuzzy
+msgid "%Jlabel `%D' defined but not used"
+msgstr "адмеціна `%D' вызначана, але не выкарыÑтоўваецца"
-#: c-decl.c:1091 c-decl.c:1110
-#, c-format
-msgid "conflicting types for `%s'"
-msgstr ""
+#: c-decl.c:588
+#, fuzzy
+msgid "%Jlabel `%D' declared but not defined"
+msgstr "адмеціна `%D' выкарыÑтоўвываецца, але Ð½Ñ Ð²Ñ‹Ð·Ð½Ð°Ñ‡Ð°Ð½Ð°"
+
+#: c-decl.c:613
+#, fuzzy
+msgid "%Junused variable `%D'"
+msgstr "невыкарыÑÑ‚Ð¾ÑžÐ²Ð°ÐµÐ¼Ð°Ñ Ð¿ÐµÑ€Ð°Ð¼ÐµÐ½Ð½Ð°Ñ \"%s\""
-#: c-decl.c:1133
+#: c-decl.c:821
msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
msgstr ""
-#: c-decl.c:1139
+#: c-decl.c:828
msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
msgstr ""
-#: c-decl.c:1157
-#, fuzzy, c-format
-msgid "thread-local declaration of `%s' follows non thread-local declaration"
-msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
-
-#: c-decl.c:1164
-#, fuzzy, c-format
-msgid "non thread-local declaration of `%s' follows thread-local declaration"
-msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
-
-#: c-decl.c:1175 c-decl.c:1198
-#, c-format
-msgid "redefinition of `%s'"
+#: c-decl.c:864
+msgid "%Jprototype for '%D' declares more arguments than previous old-style definition"
msgstr ""
-#: c-decl.c:1178
-#, c-format
-msgid "redeclaration of `%s'"
+#: c-decl.c:870
+msgid "%Jprototype for '%D' declares fewer arguments than previous old-style definition"
msgstr ""
-#: c-decl.c:1181
-#, c-format
-msgid "conflicting declarations of `%s'"
+#: c-decl.c:879
+msgid "%Jprototype for '%D' declares arg %d with incompatible type"
msgstr ""
-#: c-decl.c:1225
-#, c-format
-msgid "prototype for `%s' follows"
+#. If we get here, no errors were found, but do issue a warning
+#. for this poor-style construct.
+#: c-decl.c:891
+msgid "%Jprototype for '%D' follows non-prototype definition"
msgstr ""
-#: c-decl.c:1226 c-decl.c:1234 c-decl.c:1245
-msgid "non-prototype definition here"
-msgstr ""
+#: c-decl.c:906
+#, fuzzy
+msgid "%Jprevious definition of '%D' was here"
+msgstr "папÑÑ€ÑднÑе вызначÑньне"
-#: c-decl.c:1233
-#, c-format
-msgid "prototype for `%s' follows and number of arguments doesn't match"
-msgstr ""
+#: c-decl.c:908
+#, fuzzy
+msgid "%Jprevious implicit declaration of '%D' was here"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: c-decl.c:1243
-#, c-format
-msgid "prototype for `%s' follows and argument %d doesn't match"
-msgstr ""
+#: c-decl.c:910
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was here"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: c-decl.c:1261
-#, c-format
-msgid "`%s' declared inline after being called"
+#: c-decl.c:944
+msgid "%J'%D' redeclared as different kind of symbol"
msgstr ""
-#: c-decl.c:1267
-#, c-format
-msgid "`%s' declared inline after its definition"
-msgstr ""
+#: c-decl.c:949
+#, fuzzy
+msgid "%Jbuilt-in function '%D' declared as non-function"
+msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: c-decl.c:1274
-#, c-format
-msgid "static declaration for `%s' follows non-static"
-msgstr ""
+#: c-decl.c:952 c-decl.c:1042
+#, fuzzy
+msgid "%Jshadowing built-in function '%D'"
+msgstr "у функцыі \"%s\":"
-#: c-decl.c:1282
-#, c-format
-msgid "non-static declaration for `%s' follows static"
-msgstr ""
+#. If types don't match for a built-in, throw away the
+#. built-in. No point in calling locate_old_decl here, it
+#. won't print anything.
+#: c-decl.c:972
+#, fuzzy
+msgid "%Jconflicting types for built-in function '%D'"
+msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-#: c-decl.c:1289
-#, c-format
-msgid "const declaration for `%s' follows non-const"
+#: c-decl.c:996 c-decl.c:1004
+msgid "%Jconflicting types for '%D'"
msgstr ""
-#: c-decl.c:1296
-#, c-format
-msgid "type qualifiers for `%s' conflict with previous decl"
+#. allow OLDDECL to continue in use
+#: c-decl.c:1019
+#, fuzzy
+msgid "%Jredefinition of typedef '%D'"
+msgstr "перанакіраванне stdout: %s"
+
+#: c-decl.c:1055 c-decl.c:1119
+#, fuzzy
+msgid "%Jredefinition of '%D'"
+msgstr "перанакіраванне stdout: %s"
+
+#: c-decl.c:1086 c-decl.c:1136
+msgid "%Jstatic declaration of '%D' follows non-static declaration"
msgstr ""
-#: c-decl.c:1309
-#, c-format
-msgid "redundant redeclaration of `%s' in same scope"
+#: c-decl.c:1094 c-decl.c:1133
+msgid "%Jnon-static declaration of '%D' follows static declaration"
msgstr ""
-#: c-decl.c:1619 java/decl.c:1102
-#, c-format
-msgid "declaration of `%s' shadows a parameter"
+#: c-decl.c:1106
+msgid "%Jthread-local declaration of '%D' follows non-thread-local declaration"
msgstr ""
-#: c-decl.c:1622 java/decl.c:1105
-#, c-format
-msgid "declaration of `%s' shadows a symbol from the parameter list"
+#: c-decl.c:1109
+msgid "%Jnon-thread-local declaration of '%D' follows thread-local declaration"
msgstr ""
-#: c-decl.c:1643 cp/decl.c:4479
+#: c-decl.c:1149
#, fuzzy
-msgid "a parameter"
-msgstr "невыкарыÑтаемы параметр \"%s\""
+msgid "%Jextern declaration of '%D' follows declaration with no linkage"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: c-decl.c:1645 cp/decl.c:4496
-msgid "a previous local"
+#: c-decl.c:1152
+msgid "%Jdeclaration of '%D' with no linkage follows extern declaration"
msgstr ""
-#. XXX shadow warnings in outer-more namespaces
-#: c-decl.c:1649 cp/decl.c:4500
+#: c-decl.c:1155
#, fuzzy
-msgid "a global declaration"
-msgstr "ÐерÑчаіÑнае абвÑшчÑнне"
+msgid "%Jredeclaration of '%D' with no linkage"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: c-decl.c:1693
-#, c-format
-msgid "nested extern declaration of `%s'"
+#: c-decl.c:1169
+msgid "%Jredeclaration of '%D' with different visibility (old visibility preserved)"
msgstr ""
-#: c-decl.c:1712 java/decl.c:1055
-#, c-format
-msgid "`%s' used prior to declaration"
-msgstr ""
+#: c-decl.c:1180
+#, fuzzy
+msgid "%Jinline declaration of '%D' follows declaration with attribute noinline"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: c-decl.c:1726 c-decl.c:1901
-#, c-format
-msgid "`%s' was declared implicitly `extern' and later `static'"
-msgstr ""
+#: c-decl.c:1187
+#, fuzzy
+msgid "%Jdeclaration of '%D' with attribute noinline follows inline declaration "
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: c-decl.c:1829 cp/decl.c:4336
-msgid "type mismatch with previous external decl"
+#: c-decl.c:1199
+msgid "%J'%D' declared inline after being called"
msgstr ""
-#: c-decl.c:1830
-#, c-format
-msgid "previous external decl of `%s'"
-msgstr ""
+#: c-decl.c:1205
+#, fuzzy
+msgid "%J'%D' declared inline after its definition"
+msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: c-decl.c:1843
-msgid "type mismatch with previous implicit declaration"
+#: c-decl.c:1217
+msgid "%Jvolatile declaration of '%D' follows non-volatile declaration"
msgstr ""
-#: c-decl.c:1845
-#, c-format
-msgid "previous implicit declaration of `%s'"
+#: c-decl.c:1220
+msgid "%Jnon-volatile declaration of '%D' follows volatile declaration"
msgstr ""
-#: c-decl.c:1880
-#, c-format
-msgid "`%s' was previously implicitly declared to return `int'"
+#: c-decl.c:1227
+msgid "%Jconst declaration of '%D' follows non-const declaration"
msgstr ""
-#: c-decl.c:1905
-#, c-format
-msgid "`%s' was declared `extern' and later `static'"
+#: c-decl.c:1230
+msgid "%Jnon-const declaration of '%D' follows const declaration"
msgstr ""
-#: c-decl.c:1929
+#: c-decl.c:1246
+#, fuzzy
+msgid "%Jredundant redeclaration of '%D'"
+msgstr "ÐерÑчаіÑнае абвÑшчÑнне"
+
+#: c-decl.c:1690
#, c-format
-msgid "extern declaration of `%s' doesn't match global one"
+msgid "nested extern declaration of `%s'"
msgstr ""
-#: c-decl.c:1971
+#: c-decl.c:1829 objc/objc-act.c:2534 objc/objc-act.c:6793
+#, fuzzy
+msgid "%Jprevious declaration of '%D'"
+msgstr "папÑÑ€ÑднÑе абвÑшчÑньне `%D'"
+
+#: c-decl.c:1870 c-decl.c:1872
#, c-format
-msgid "`%s' locally external but globally static"
+msgid "implicit declaration of function `%s'"
msgstr ""
-#: c-decl.c:2095
+#: c-decl.c:1888
#, c-format
-msgid "function `%s' was previously declared within a block"
+msgid "`%s' undeclared here (not in a function)"
msgstr ""
-#: c-decl.c:2115 c-decl.c:2117
+#: c-decl.c:1894
#, c-format
-msgid "implicit declaration of function `%s'"
-msgstr ""
+msgid "`%s' undeclared (first use in this function)"
+msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: c-decl.c:2196
+#: c-decl.c:1899
+msgid "(Each undeclared identifier is reported only once"
+msgstr "(Ðб кожным неабвешчаным ідÑнтыфікатары паведамлÑецца"
+
+#: c-decl.c:1900
+msgid "for each function it appears in.)"
+msgstr "адзін раз Ð´Ð»Ñ ÐºÐ¾Ð¶Ð½Ð°Ð¹ функцыі, дзе ён з'ÑўлÑецца.)"
+
+#: c-decl.c:1953
#, c-format
msgid "label %s referenced outside of any function"
msgstr ""
-#: c-decl.c:2253
+#: c-decl.c:2000
#, c-format
msgid "duplicate label declaration `%s'"
msgstr "паўторнае абвÑшчÑньне адмеціны `%s'"
-#: c-decl.c:2256
-msgid "this is a previous declaration"
+#: c-decl.c:2001
+#, fuzzy
+msgid "%Jthis is a previous declaration"
msgstr "гÑта папÑÑ€ÑднÑе абвÑшчÑньне"
-#: c-decl.c:2679
+#: c-decl.c:2036
+#, fuzzy
+msgid "%Hduplicate label `%D'"
+msgstr "паўтарÑнне \"%s\""
+
+#: c-decl.c:2038
+#, fuzzy
+msgid "%J`%D' previously defined here"
+msgstr "папÑÑ€ÑднÑе вызначÑньне"
+
+#: c-decl.c:2040
+#, fuzzy
+msgid "%J`%D' previously declared here"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+
+#: c-decl.c:2060
+msgid "%Htraditional C lacks a separate namespace for labels, identifier `%s' conflicts"
+msgstr ""
+
+#: c-decl.c:2131
+msgid "%H`%s' defined as wrong kind of tag"
+msgstr ""
+
+#: c-decl.c:2369
msgid "unnamed struct/union that defines no instances"
msgstr ""
-#: c-decl.c:2698
+#: c-decl.c:2388
msgid "useless keyword or type name in empty declaration"
msgstr ""
-#: c-decl.c:2705
+#: c-decl.c:2395
msgid "two types specified in one empty declaration"
msgstr ""
-#: c-decl.c:2710 c-parse.y:753 c-parse.y:755 parse.y:766 parse.y:1853
-#: objc-parse.y:799 objc-parse.y:801 objc-parse.y:3042
+#: c-decl.c:2400 c-parse.y:735 c-parse.y:737 objc/objc-parse.y:776
+#: objc/objc-parse.y:778 objc/objc-parse.y:3016
msgid "empty declaration"
msgstr "пуÑтое абвÑшчÑньне"
-#: c-decl.c:2740
+#: c-decl.c:2426
#, fuzzy
msgid "ISO C90 does not support `static' or type qualifiers in parameter array declarators"
msgstr "ISO C89 не падтрымлівае \"long long\""
-#: c-decl.c:2742
+#: c-decl.c:2428
#, fuzzy
msgid "ISO C90 does not support `[*]' array declarators"
msgstr "ISO C89 не падтрымлівае \"long long\""
-#: c-decl.c:2745
+#: c-decl.c:2431
msgid "GCC does not yet properly implement `[*]' array declarators"
msgstr ""
-#: c-decl.c:2764
+#: c-decl.c:2447
msgid "static or type qualifiers in abstract declarator"
msgstr ""
-#: c-decl.c:2838
-#, c-format
-msgid "`%s' is usually a function"
+#: c-decl.c:2517
+#, fuzzy
+msgid "%J'%D' is usually a function"
msgstr "`%s' - звычайна функцыÑ"
-#: c-decl.c:2847
+#: c-decl.c:2526
#, fuzzy, c-format
msgid "typedef `%s' is initialized (use __typeof__ instead)"
msgstr "параметр \"%s\" ініцыÑлізаваны"
-#: c-decl.c:2853
+#: c-decl.c:2532
#, c-format
msgid "function `%s' is initialized like a variable"
msgstr ""
#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
-#: c-decl.c:2860
+#: c-decl.c:2539
#, c-format
msgid "parameter `%s' is initialized"
msgstr "параметр \"%s\" ініцыÑлізаваны"
-#: c-decl.c:2880 c-typeck.c:4895
+#: c-decl.c:2559 c-typeck.c:4220
msgid "variable-sized object may not be initialized"
msgstr ""
-#: c-decl.c:2886
+#: c-decl.c:2565
#, c-format
msgid "variable `%s' has initializer but incomplete type"
msgstr ""
-#: c-decl.c:2892
+#: c-decl.c:2571
#, c-format
msgid "elements of array `%s' have incomplete type"
msgstr ""
-#: c-decl.c:2905
-#, c-format
-msgid "declaration of `%s' has `extern' and is initialized"
+#: c-decl.c:2640 c-decl.c:5426 cp/decl.c:3748 cp/decl.c:10156
+#, fuzzy
+msgid "%Jinline function '%D' given attribute noinline"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+
+#: c-decl.c:2716
+msgid "%Jinitializer fails to determine size of '%D'"
msgstr ""
-#: c-decl.c:2954 c-decl.c:5828 cp/decl.c:7760 cp/decl.c:14339
-#, c-format
-msgid "inline function `%s' given attribute noinline"
+#: c-decl.c:2721
+#, fuzzy
+msgid "%Jarray size missing in '%D'"
+msgstr "прапушчан памер маÑіва Ñž `%D'"
+
+#: c-decl.c:2737
+#, fuzzy
+msgid "%Jzero or negative size array '%D'"
+msgstr "нулÑвы памер маÑіва `%D'"
+
+#: c-decl.c:2765
+msgid "%Jstorage size of '%D' isn't known"
msgstr ""
-#: c-decl.c:3028
-#, c-format
-msgid "initializer fails to determine size of `%s'"
+#: c-decl.c:2775
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't constant"
+msgstr "тып параметра \"%s\" не аб'Ñўлены"
+
+#: c-decl.c:2858
+msgid "%Jignoring asm-specifier for non-static local variable '%D'"
msgstr ""
-#: c-decl.c:3033
+#: c-decl.c:2969
+msgid "ISO C forbids forward parameter declarations"
+msgstr ""
+
+#: c-decl.c:3151
+msgid "<anonymous>"
+msgstr ""
+
+#: c-decl.c:3160
#, c-format
-msgid "array size missing in `%s'"
+msgid "bit-field `%s' width not an integer constant"
msgstr ""
-#: c-decl.c:3049
+#: c-decl.c:3168
#, c-format
-msgid "zero or negative size array `%s'"
+msgid "negative width in bit-field `%s'"
msgstr ""
-#: c-decl.c:3077
+#: c-decl.c:3173
#, c-format
-msgid "storage size of `%s' isn't known"
+msgid "zero width for bit-field `%s'"
msgstr ""
-#: c-decl.c:3087
+#: c-decl.c:3183
#, c-format
-msgid "storage size of `%s' isn't constant"
+msgid "bit-field `%s' has invalid type"
+msgstr "бітавае поле \"%s\" мае нерÑчаіÑны тып"
+
+#: c-decl.c:3192
+#, c-format
+msgid "type of bit-field `%s' is a GCC extension"
msgstr ""
-#: c-decl.c:3147
+#: c-decl.c:3201
#, c-format
-msgid "ignoring asm-specifier for non-static local variable `%s'"
+msgid "width of `%s' exceeds its type"
msgstr ""
-#: c-decl.c:3247
+#: c-decl.c:3211
#, c-format
-msgid "ISO C forbids parameter `%s' shadowing typedef"
+msgid "`%s' is narrower than values of its type"
msgstr ""
-#: c-decl.c:3592 cp/decl.c:10880
+#: c-decl.c:3361 cp/decl.c:6778
msgid "`long long long' is too long for GCC"
msgstr "`long long long' - вельмі доўга Ð´Ð»Ñ GCC"
-#: c-decl.c:3597
+#: c-decl.c:3366
#, fuzzy
msgid "ISO C90 does not support `long long'"
msgstr "ISO C89 не падтрымлівае `long long'"
-#: c-decl.c:3606 c-decl.c:3609 cp/decl.c:10885
+#: c-decl.c:3375 c-decl.c:3378 cp/decl.c:6783
#, c-format
msgid "duplicate `%s'"
msgstr "паўтарÑньне `%s'"
-#: c-decl.c:3619 cp/decl.c:10892
+#: c-decl.c:3388 cp/decl.c:6789
msgid "`__thread' before `extern'"
msgstr ""
-#: c-decl.c:3621 cp/decl.c:10894
+#: c-decl.c:3390 cp/decl.c:6791
msgid "`__thread' before `static'"
msgstr ""
-#: c-decl.c:3629 cp/decl.c:10921
+#: c-decl.c:3398 cp/decl.c:6818
#, c-format
msgid "two or more data types in declaration of `%s'"
msgstr ""
-#: c-decl.c:3649 cp/decl.c:10926
+#: c-decl.c:3418 cp/decl.c:6823
#, c-format
msgid "`%s' fails to be a typedef or built in type"
msgstr ""
-#: c-decl.c:3688
+#: c-decl.c:3457
#, c-format
msgid "type defaults to `int' in declaration of `%s'"
msgstr ""
-#: c-decl.c:3717
+#: c-decl.c:3486
#, c-format
msgid "both long and short specified for `%s'"
msgstr ""
-#: c-decl.c:3721 cp/decl.c:11041
+#: c-decl.c:3490 cp/decl.c:6923
#, c-format
msgid "long or short specified with char for `%s'"
msgstr ""
-#: c-decl.c:3728 cp/decl.c:11045
+#: c-decl.c:3497 cp/decl.c:6927
#, c-format
msgid "long or short specified with floating type for `%s'"
msgstr ""
-#: c-decl.c:3731
+#: c-decl.c:3500
msgid "the only valid combination is `long double'"
msgstr ""
-#: c-decl.c:3737
+#: c-decl.c:3506
#, c-format
msgid "both signed and unsigned specified for `%s'"
msgstr ""
-#: c-decl.c:3739 cp/decl.c:11034
+#: c-decl.c:3508 cp/decl.c:6916
#, c-format
msgid "long, short, signed or unsigned invalid for `%s'"
msgstr "long, short, signed ці unsigned нерÑчаіÑны Ð´Ð»Ñ \"%s\""
-#: c-decl.c:3745 cp/decl.c:11054
+#: c-decl.c:3514 cp/decl.c:6936
#, c-format
msgid "long, short, signed or unsigned used invalidly for `%s'"
msgstr ""
-#: c-decl.c:3763 cp/decl.c:11075
+#: c-decl.c:3532 cp/decl.c:6957
#, c-format
msgid "complex invalid for `%s'"
msgstr "complex нерÑчаіÑны Ð´Ð»Ñ \"%s\""
-#: c-decl.c:3805
+#: c-decl.c:3574
#, fuzzy
msgid "ISO C90 does not support complex types"
msgstr "ISO C89 не падтрымлівае комлекÑÐ½Ñ‹Ñ Ñ‚Ñ‹Ð¿Ñ‹"
-#: c-decl.c:3817
+#: c-decl.c:3586
msgid "ISO C does not support plain `complex' meaning `double complex'"
msgstr "ISO C не падтрымлівае проÑÑ‚Ñ‹ \"complex\" у значÑнні \"double complex\""
-#: c-decl.c:3823 c-decl.c:3835
+#: c-decl.c:3592 c-decl.c:3604
msgid "ISO C does not support complex integer types"
msgstr "ISO C не падтрымлівае комлекÑÐ½Ñ‹Ñ Ñ†ÑÐ»Ð°Ð»Ñ–ÐºÐ°Ð²Ñ‹Ñ Ñ‚Ñ‹Ð¿Ñ‹"
-#: c-decl.c:3850 c-decl.c:4316 cp/decl.c:11688
+#: c-decl.c:3632 c-decl.c:4090 cp/decl.c:7549
msgid "duplicate `const'"
msgstr "паўтарÑнне \"const\""
-#: c-decl.c:3852 c-decl.c:4320 cp/decl.c:11692
+#: c-decl.c:3634 c-decl.c:4094 cp/decl.c:7553
msgid "duplicate `restrict'"
msgstr "паўтарÑнне \"restrict\""
-#: c-decl.c:3854 c-decl.c:4318 cp/decl.c:11690
+#: c-decl.c:3636 c-decl.c:4092 cp/decl.c:7551
msgid "duplicate `volatile'"
msgstr "паўтарÑнне \"volatile\""
-#: c-decl.c:3882 cp/decl.c:11238
+#: c-decl.c:3664 cp/decl.c:7120
#, c-format
msgid "multiple storage classes in declaration of `%s'"
msgstr ""
-#: c-decl.c:3892
+#: c-decl.c:3674
msgid "function definition declared `auto'"
msgstr ""
-#: c-decl.c:3894
+#: c-decl.c:3676
msgid "function definition declared `register'"
msgstr ""
-#: c-decl.c:3896
+#: c-decl.c:3678
msgid "function definition declared `typedef'"
msgstr ""
-#: c-decl.c:3898
+#: c-decl.c:3680
#, fuzzy
msgid "function definition declared `__thread'"
msgstr "Ð²Ñ–Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ñ‹Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ– не могуць быць ÑÑброўÑкімі"
-#: c-decl.c:3911
+#: c-decl.c:3693
#, c-format
msgid "storage class specified for structure field `%s'"
msgstr ""
-#: c-decl.c:3915 cp/decl.c:11285
+#: c-decl.c:3697 cp/decl.c:7165
#, c-format
msgid "storage class specified for parameter `%s'"
msgstr ""
-#: c-decl.c:3918 cp/decl.c:11287
+#: c-decl.c:3700 cp/decl.c:7167
msgid "storage class specified for typename"
msgstr ""
-#: c-decl.c:3930 cp/decl.c:11302
+#: c-decl.c:3712 cp/decl.c:7182
#, c-format
msgid "`%s' initialized and declared `extern'"
msgstr ""
-#: c-decl.c:3932 cp/decl.c:11305
+#: c-decl.c:3714 cp/decl.c:7185
#, c-format
msgid "`%s' has both `extern' and initializer"
msgstr ""
-#: c-decl.c:3937 cp/decl.c:11313
-#, c-format
-msgid "top-level declaration of `%s' specifies `auto'"
-msgstr ""
+#: c-decl.c:3719
+#, fuzzy, c-format
+msgid "file-scope declaration of `%s' specifies `auto'"
+msgstr "Ðе магу знайÑці дÑкларацыю інтÑрфейÑа Ð´Ð»Ñ \"%s\""
-#: c-decl.c:3942 cp/decl.c:11309
+#: c-decl.c:3724 cp/decl.c:7189
#, c-format
msgid "nested function `%s' declared `extern'"
msgstr ""
-#: c-decl.c:3948 cp/decl.c:11319
+#: c-decl.c:3730 cp/decl.c:7199
#, fuzzy, c-format
msgid "function-scope `%s' implicitly auto and declared `__thread'"
msgstr "Ð²Ñ–Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ñ‹Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ– не могуць быць ÑÑброўÑкімі"
@@ -1076,4205 +1135,4006 @@ msgstr "Ð²Ñ–Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ñ‹Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ– не могуць быць ÑÑбÑ
#. Only the innermost declarator (making a parameter be of
#. array type which is converted to pointer type)
#. may have static or type qualifiers.
-#: c-decl.c:3987 c-decl.c:4188
+#: c-decl.c:3769 c-decl.c:3962
msgid "static or type qualifiers in non-parameter array declarator"
msgstr ""
-#: c-decl.c:4031
+#: c-decl.c:3813
#, c-format
msgid "declaration of `%s' as array of voids"
msgstr ""
-#: c-decl.c:4037
+#: c-decl.c:3819
#, c-format
msgid "declaration of `%s' as array of functions"
msgstr ""
-#: c-decl.c:4042 c-decl.c:5332
+#: c-decl.c:3824
#, fuzzy
msgid "invalid use of structure with flexible array member"
msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: c-decl.c:4061
+#: c-decl.c:3843
#, c-format
msgid "size of array `%s' has non-integer type"
msgstr ""
-#: c-decl.c:4066
+#: c-decl.c:3848
#, c-format
msgid "ISO C forbids zero-size array `%s'"
msgstr ""
-#: c-decl.c:4073
+#: c-decl.c:3855
#, c-format
msgid "size of array `%s' is negative"
msgstr "памер маÑіва \"%s\" адмоўны"
-#: c-decl.c:4086
+#: c-decl.c:3868
#, c-format
msgid "ISO C90 forbids array `%s' whose size can't be evaluated"
msgstr ""
-#: c-decl.c:4089
+#: c-decl.c:3871
#, fuzzy, c-format
msgid "ISO C90 forbids variable-size array `%s'"
msgstr "ISO C не дазвалÑе дÑкларацыі метак (label)"
-#: c-decl.c:4119 c-decl.c:4342 cp/decl.c:11897
+#: c-decl.c:3901 c-decl.c:4116 cp/decl.c:7723
#, c-format
msgid "size of array `%s' is too large"
msgstr "памер маÑіва \"%s\" вельмі вÑлікі"
-#: c-decl.c:4145
+#: c-decl.c:3927
#, fuzzy
msgid "ISO C90 does not support flexible array members"
msgstr "ISO C89 не падтрымлівае комлекÑÐ½Ñ‹Ñ Ñ‚Ñ‹Ð¿Ñ‹"
-#: c-decl.c:4155
+#: c-decl.c:3937
msgid "array type has incomplete element type"
msgstr ""
-#: c-decl.c:4162 c-decl.c:4392
-msgid "ISO C forbids const or volatile function types"
-msgstr ""
-
-#: c-decl.c:4208 cp/decl.c:11445
+#: c-decl.c:3982 cp/decl.c:7320
#, c-format
msgid "`%s' declared as function returning a function"
msgstr ""
-#: c-decl.c:4213 cp/decl.c:11450
+#: c-decl.c:3987 cp/decl.c:7325
#, c-format
msgid "`%s' declared as function returning an array"
msgstr ""
-#: c-decl.c:4241
+#: c-decl.c:4015
msgid "ISO C forbids qualified void function return type"
msgstr ""
-#: c-decl.c:4245
+#: c-decl.c:4019
msgid "type qualifiers ignored on function return type"
msgstr ""
-#: c-decl.c:4274 c-decl.c:4357 c-decl.c:4481 c-decl.c:4573
+#: c-decl.c:4048 c-decl.c:4131 c-decl.c:4255 c-decl.c:4341
msgid "ISO C forbids qualified function types"
msgstr ""
-#: c-decl.c:4314 cp/decl.c:11684
+#: c-decl.c:4088 cp/decl.c:7545
msgid "invalid type modifier within pointer declarator"
msgstr ""
-#: c-decl.c:4412 cp/decl.c:12182
+#: c-decl.c:4166
+msgid "ISO C forbids const or volatile function types"
+msgstr ""
+
+#: c-decl.c:4186 cp/decl.c:8005
#, c-format
msgid "variable or field `%s' declared void"
msgstr ""
-#: c-decl.c:4445
+#: c-decl.c:4219
msgid "attributes in parameter array declarator ignored"
msgstr ""
-#: c-decl.c:4470
+#: c-decl.c:4244
msgid "invalid type modifier within array declarator"
msgstr ""
-#: c-decl.c:4515
+#: c-decl.c:4289
#, c-format
msgid "field `%s' declared as a function"
msgstr ""
-#: c-decl.c:4521
+#: c-decl.c:4295
#, c-format
msgid "field `%s' has incomplete type"
msgstr ""
-#: c-decl.c:4553 c-decl.c:4555 c-decl.c:4557 c-decl.c:4564
+#: c-decl.c:4321 c-decl.c:4323 c-decl.c:4325 c-decl.c:4332
#, c-format
msgid "invalid storage class for function `%s'"
msgstr ""
-#: c-decl.c:4579
+#: c-decl.c:4347
msgid "`noreturn' function returns non-void value"
msgstr ""
-#: c-decl.c:4594
+#: c-decl.c:4362
msgid "cannot inline function `main'"
msgstr ""
-#: c-decl.c:4649
-#, c-format
-msgid "variable `%s' declared `inline'"
+#: c-decl.c:4415
+msgid "variable previously declared `static' redeclared `extern'"
msgstr ""
+#: c-decl.c:4424
+#, fuzzy
+msgid "%Jvariable '%D' declared `inline'"
+msgstr "тып параметра \"%s\" не аб'Ñўлены"
+
#. A mere warning is sure to result in improper semantics
#. at runtime. Don't bother to allow this to compile.
-#: c-decl.c:4677 cp/decl.c:9951
+#: c-decl.c:4452 cp/decl.c:5877
#, fuzzy
msgid "thread-local storage not supported for this target"
msgstr "атрыбуты Ñекцыі не падтрымліваюцца Ð´Ð»Ñ Ð³Ñтай мÑÑ‚Ñ‹"
-#: c-decl.c:4732 c-decl.c:5880
+#: c-decl.c:4513 c-decl.c:5470
msgid "function declaration isn't a prototype"
msgstr ""
-#: c-decl.c:4738
+#: c-decl.c:4519
msgid "parameter names (without types) in function declaration"
msgstr ""
-#: c-decl.c:4770 c-decl.c:6250
+#: c-decl.c:4547
#, c-format
msgid "parameter `%s' has incomplete type"
msgstr ""
-#: c-decl.c:4773
+#: c-decl.c:4550
msgid "parameter has incomplete type"
msgstr ""
-#: c-decl.c:4794
-#, c-format
-msgid "parameter `%s' points to incomplete type"
-msgstr ""
-
-#: c-decl.c:4797
-msgid "parameter points to incomplete type"
+#: c-decl.c:4599
+msgid "\"void\" as only parameter may not be qualified"
msgstr ""
-#: c-decl.c:4862
-#, c-format
-msgid "parameter `%s' has just a forward declaration"
-msgstr ""
+#: c-decl.c:4620
+#, fuzzy
+msgid "\"void\" must be the only parameter"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: c-decl.c:4903
-msgid "`void' in parameter list must be the entire list"
+#: c-decl.c:4637
+msgid "%Jparameter \"%D\" has just a forward declaration"
msgstr ""
-#: c-decl.c:4934
+#. The first %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4665
#, c-format
-msgid "`struct %s' declared inside parameter list"
+msgid "\"%s %s\" declared inside parameter list"
msgstr ""
-#: c-decl.c:4937
+#. The %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4669
#, c-format
-msgid "`union %s' declared inside parameter list"
+msgid "anonymous %s declared inside parameter list"
msgstr ""
-#: c-decl.c:4940
-#, c-format
-msgid "`enum %s' declared inside parameter list"
-msgstr ""
-
-#: c-decl.c:4947
-msgid "anonymous struct declared inside parameter list"
-msgstr ""
-
-#: c-decl.c:4949
-msgid "anonymous union declared inside parameter list"
-msgstr ""
-
-#: c-decl.c:4951
-msgid "anonymous enum declared inside parameter list"
-msgstr ""
-
-#: c-decl.c:4955
+#: c-decl.c:4673
msgid "its scope is only this definition or declaration, which is probably not what you want"
msgstr ""
-#: c-decl.c:5032
+#: c-decl.c:4758
#, c-format
msgid "redefinition of `union %s'"
msgstr ""
-#: c-decl.c:5034
+#: c-decl.c:4760
#, fuzzy, c-format
msgid "redefinition of `struct %s'"
msgstr "перанакіраванне stdout: %s"
-#: c-decl.c:5105 cp/decl.c:7532
+#: c-decl.c:4828 cp/decl.c:3521
msgid "declaration does not declare anything"
msgstr ""
-#: c-decl.c:5169 c-decl.c:5172
+#: c-decl.c:4873 c-decl.c:4889
+#, fuzzy
+msgid "%Jduplicate member '%D'"
+msgstr "паўтарÑнне \"%s\""
+
+#: c-decl.c:4923 c-decl.c:4926
#, c-format
msgid "%s defined inside parms"
msgstr ""
-#: c-decl.c:5170 c-decl.c:5173 c-decl.c:5184
+#: c-decl.c:4924 c-decl.c:4927 c-decl.c:4938
msgid "union"
msgstr "аб'Ñднанне"
-#: c-decl.c:5170 c-decl.c:5173
+#: c-decl.c:4924 c-decl.c:4927
msgid "structure"
msgstr "Ñтруктура"
-#: c-decl.c:5183
+#: c-decl.c:4937
#, c-format
msgid "%s has no %s"
msgstr ""
-#: c-decl.c:5184
+#: c-decl.c:4938
msgid "struct"
msgstr "Ñтруктура"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "named members"
msgstr ""
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "members"
msgstr "члены"
-#: c-decl.c:5224
+#: c-decl.c:4978
#, c-format
msgid "nested redefinition of `%s'"
msgstr ""
-#: c-decl.c:5237
-#, c-format
-msgid "bit-field `%s' width not an integer constant"
-msgstr ""
-
-#: c-decl.c:5248
-#, c-format
-msgid "bit-field `%s' has invalid type"
-msgstr "бітавае поле \"%s\" мае нерÑчаіÑны тып"
-
-#: c-decl.c:5260
-#, c-format
-msgid "bit-field `%s' type invalid in ISO C"
-msgstr ""
-
-#: c-decl.c:5271
-#, c-format
-msgid "negative width in bit-field `%s'"
-msgstr ""
-
-#: c-decl.c:5273
-#, c-format
-msgid "width of `%s' exceeds its type"
-msgstr ""
-
-#: c-decl.c:5275
-#, c-format
-msgid "zero width for bit-field `%s'"
-msgstr ""
-
-#: c-decl.c:5289
-#, c-format
-msgid "`%s' is narrower than values of its type"
-msgstr ""
-
-#: c-decl.c:5323
-msgid "flexible array member in union"
+#: c-decl.c:4998
+msgid "%Jflexible array member in union"
msgstr ""
-#: c-decl.c:5325
-msgid "flexible array member not at end of struct"
+#: c-decl.c:5000
+msgid "%Jflexible array member not at end of struct"
msgstr ""
-#: c-decl.c:5327
-msgid "flexible array member in otherwise empty struct"
+#: c-decl.c:5002
+msgid "%Jflexible array member in otherwise empty struct"
msgstr ""
-#: c-decl.c:5357
-#, c-format
-msgid "duplicate member `%s'"
-msgstr ""
+#: c-decl.c:5007
+#, fuzzy
+msgid "%Jinvalid use of structure with flexible array member"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: c-decl.c:5448
+#: c-decl.c:5102
msgid "union cannot be made transparent"
msgstr ""
#. This enum is a named one that has been declared already.
-#: c-decl.c:5558
+#: c-decl.c:5171
#, c-format
msgid "redeclaration of `enum %s'"
msgstr ""
-#: c-decl.c:5592
+#: c-decl.c:5202
msgid "enum defined inside parms"
msgstr ""
-#: c-decl.c:5625
+#: c-decl.c:5235
msgid "enumeration values exceed range of largest integer"
msgstr ""
-#: c-decl.c:5734
+#: c-decl.c:5338
#, c-format
msgid "enumerator value for `%s' not integer constant"
msgstr ""
-#: c-decl.c:5747
+#: c-decl.c:5351
msgid "overflow in enumeration values"
msgstr ""
-#: c-decl.c:5752
+#: c-decl.c:5356
msgid "ISO C restricts enumerator values to range of `int'"
msgstr ""
-#: c-decl.c:5834
+#: c-decl.c:5432
msgid "return type is an incomplete type"
msgstr ""
-#: c-decl.c:5842
+#: c-decl.c:5440
msgid "return type defaults to `int'"
msgstr ""
-#: c-decl.c:5889
-#, c-format
-msgid "no previous prototype for `%s'"
+#: c-decl.c:5476
+#, fuzzy
+msgid "%Jno previous prototype for '%D'"
msgstr "нÑма папÑÑ€ÑднÑга прататыпа Ð´Ð»Ñ \"%s\""
-#: c-decl.c:5896
-#, c-format
-msgid "`%s' was used with no prototype before its definition"
-msgstr ""
+#: c-decl.c:5482
+#, fuzzy
+msgid "%J'%D' was used with no prototype before its definition"
+msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: c-decl.c:5902
-#, c-format
-msgid "no previous declaration for `%s'"
+#: c-decl.c:5489
+#, fuzzy
+msgid "%Jno previous declaration for '%D'"
msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: c-decl.c:5909
-#, c-format
-msgid "`%s' was used with no declaration before its definition"
-msgstr ""
+#: c-decl.c:5495
+#, fuzzy
+msgid "%J`%D' was used with no declaration before its definition"
+msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: c-decl.c:5933 c-decl.c:6486
-#, c-format
-msgid "return type of `%s' is not `int'"
+#: c-decl.c:5531 c-decl.c:6037
+#, fuzzy
+msgid "%Jreturn type of '%D' is not `int'"
msgstr "вÑртаемы тып \"%s\" не \"int\""
-#: c-decl.c:5949
-#, c-format
-msgid "first argument of `%s' should be `int'"
+#: c-decl.c:5546
+#, fuzzy
+msgid "%Jfirst argument of '%D' should be `int'"
msgstr "першым аргументам \"%s\" павінен быць \"int\""
-#: c-decl.c:5958
-#, c-format
-msgid "second argument of `%s' should be `char **'"
+#: c-decl.c:5555
+#, fuzzy
+msgid "%Jsecond argument of '%D' should be 'char **'"
msgstr "другім аргументам \"%s\" павінен быць \"char **\""
-#: c-decl.c:5967
-#, c-format
-msgid "third argument of `%s' should probably be `char **'"
-msgstr ""
+#: c-decl.c:5564
+#, fuzzy
+msgid "%Jthird argument of '%D' should probably be 'char **'"
+msgstr "другім аргументам \"%s\" павінен быць \"char **\""
-#: c-decl.c:5976
-#, c-format
-msgid "`%s' takes only zero or two arguments"
+#: c-decl.c:5574
+msgid "%J'%D' takes only zero or two arguments"
msgstr ""
-#: c-decl.c:5979
-#, c-format
-msgid "`%s' is normally a non-static function"
-msgstr ""
+#: c-decl.c:5577
+#, fuzzy
+msgid "%J'%D' is normally a non-static function"
+msgstr "`%s' - звычайна функцыÑ"
-#: c-decl.c:6077
-msgid "parm types given both in parmlist and separately"
+#: c-decl.c:5633
+msgid "%Jold-style parameter declarations in prototyped function definition"
msgstr ""
-#: c-decl.c:6098
-msgid "parameter name omitted"
-msgstr ""
+#: c-decl.c:5647
+#, fuzzy
+msgid "%Jparameter name omitted"
+msgstr "тып параметра \"%s\" не аб'Ñўлены"
-#: c-decl.c:6102 c-decl.c:6204
-#, c-format
-msgid "parameter `%s' declared void"
+#: c-decl.c:5722
+msgid "%Jparameter name missing from parameter list"
msgstr ""
-#: c-decl.c:6178
-msgid "parameter name missing from parameter list"
+#: c-decl.c:5732
+msgid "%J\"%D\" declared as a non-parameter"
msgstr ""
-#: c-decl.c:6197
-#, c-format
-msgid "multiple parameters named `%s'"
-msgstr ""
+#: c-decl.c:5737
+#, fuzzy
+msgid "%Jmultiple parameters named \"%D\""
+msgstr "невыкарыÑтаемы параметр \"%s\""
-#: c-decl.c:6219 c-decl.c:6221
-#, c-format
-msgid "type of `%s' defaults to `int'"
+#: c-decl.c:5745
+#, fuzzy
+msgid "%Jparameter \"%D\" declared void"
+msgstr "тып параметра \"%s\" не аб'Ñўлены"
+
+#: c-decl.c:5760 c-decl.c:5762
+msgid "%Jtype of \"%D\" defaults to \"int\""
msgstr ""
-#: c-decl.c:6257
-#, c-format
-msgid "declaration for parameter `%s' but no such parameter"
+#: c-decl.c:5776
+#, fuzzy
+msgid "%Jparameter \"%D\" has incomplete type"
+msgstr "\"%s\" мае незавершаны тып"
+
+#: c-decl.c:5782
+msgid "%Jdeclaration for parameter \"%D\" but no such parameter"
msgstr ""
-#: c-decl.c:6305
+#: c-decl.c:5834
msgid "number of arguments doesn't match prototype"
msgstr ""
-#: c-decl.c:6335
-#, c-format
-msgid "promoted argument `%s' doesn't match prototype"
+#: c-decl.c:5835 c-decl.c:5866 c-decl.c:5873
+#, fuzzy
+msgid "%Hprototype declaration"
+msgstr "пуÑтое абвÑшчÑньне"
+
+#: c-decl.c:5864
+msgid "promoted argument \"%D\" doesn't match prototype"
msgstr ""
-#: c-decl.c:6345
-#, c-format
-msgid "argument `%s' doesn't match prototype"
+#: c-decl.c:5872
+msgid "argument \"%D\" doesn't match prototype"
msgstr ""
-#: c-decl.c:6518 cp/decl.c:15049
+#: c-decl.c:6069 cp/decl.c:10876
msgid "no return statement in function returning non-void"
msgstr ""
-#: c-decl.c:6525
+#: c-decl.c:6076
msgid "this function may return with or without a value"
msgstr ""
-#: c-decl.c:6729
-#, c-format
-msgid "size of return value of `%s' is %u bytes"
-msgstr "памер вÑртаемага значÑÐ½Ð½Ñ \"%s\" %u байт"
-
-#: c-decl.c:6733
-#, c-format
-msgid "size of return value of `%s' is larger than %d bytes"
-msgstr "памер вÑртаемага значÑÐ½Ð½Ñ \"%s\" больш чым %d байт"
-
#. If we get here, declarations have been used in a for loop without
#. the C99 for loop scope. This doesn't make much sense, so don't
#. allow it.
-#: c-decl.c:6791
-msgid "`for' loop initial declaration used outside C99 mode"
-msgstr ""
-
-#: c-decl.c:6815
-#, c-format
-msgid "`struct %s' declared in `for' loop initial declaration"
+#: c-decl.c:6175
+msgid "'for' loop initial declaration used outside C99 mode"
msgstr ""
-#: c-decl.c:6818
+#: c-decl.c:6199
#, c-format
-msgid "`union %s' declared in `for' loop initial declaration"
+msgid "'struct %s' declared in 'for' loop initial declaration"
msgstr ""
-#: c-decl.c:6821
-#, c-format
-msgid "`enum %s' declared in `for' loop initial declaration"
-msgstr ""
+#: c-decl.c:6202
+#, fuzzy, c-format
+msgid "'union %s' declared in 'for' loop initial declaration"
+msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: c-decl.c:6829
+#: c-decl.c:6205
#, c-format
-msgid "declaration of non-variable `%s' in `for' loop initial declaration"
+msgid "'enum %s' declared in 'for' loop initial declaration"
msgstr ""
-#: c-decl.c:6831
-#, c-format
-msgid "declaration of static variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6213
+msgid "%Jdeclaration of non-variable '%D' in 'for' loop initial declaration"
msgstr ""
-#: c-decl.c:6833
-#, c-format
-msgid "declaration of `extern' variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6216
+msgid "%Jdeclaration of static variable '%D' in 'for' loop initial declaration"
msgstr ""
-#: c-format.c:109 c-format.c:191
-msgid "format string arg not a string type"
+#: c-decl.c:6219
+msgid "%Jdeclaration of 'extern' variable '%D' in 'for' loop initial declaration"
msgstr ""
-#: c-format.c:124
-msgid "args to be formatted is not '...'"
-msgstr ""
+#: c-decl.c:6532
+#, fuzzy
+msgid "%Jredefinition of global '%D'"
+msgstr "перанакіраванне stdout: %s"
-#: c-format.c:133
-msgid "strftime formats cannot format arguments"
-msgstr ""
+#: c-decl.c:6533
+#, fuzzy
+msgid "%J'%D' previously defined here"
+msgstr "папÑÑ€ÑднÑе вызначÑньне"
-#: c-format.c:168 c-format.c:270
+#: c-format.c:94 c-format.c:210
msgid "format string has invalid operand number"
msgstr ""
-#: c-format.c:202
+#: c-format.c:111
msgid "function does not return string type"
msgstr "Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ Ð½Ðµ вÑртае тып string"
-#: c-format.c:233
+#: c-format.c:140
+msgid "format string arg not a string type"
+msgstr ""
+
+#: c-format.c:190
msgid "unrecognized format specifier"
msgstr ""
-#: c-format.c:246
+#: c-format.c:203
#, c-format
msgid "`%s' is an unrecognized format function type"
msgstr ""
-#: c-format.c:280
+#: c-format.c:216
+msgid "'...' has invalid operand number"
+msgstr ""
+
+#: c-format.c:224
msgid "format string arg follows the args to be formatted"
msgstr ""
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "` ' flag"
msgstr ""
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "the ` ' printf flag"
msgstr ""
-#: c-format.c:602 c-format.c:673
+#: c-format.c:566 c-format.c:590 c-format.c:627 c-format.c:683
msgid "`+' flag"
msgstr ""
-#: c-format.c:602
+#: c-format.c:566 c-format.c:590 c-format.c:627
msgid "the `+' printf flag"
msgstr ""
-#: c-format.c:603 c-format.c:649
+#: c-format.c:567 c-format.c:591 c-format.c:628 c-format.c:659
msgid "`#' flag"
msgstr ""
-#: c-format.c:603
+#: c-format.c:567 c-format.c:591 c-format.c:628
msgid "the `#' printf flag"
msgstr ""
-#: c-format.c:604 c-format.c:647
+#: c-format.c:568 c-format.c:592 c-format.c:657
msgid "`0' flag"
msgstr "'0' флаг"
-#: c-format.c:604
+#: c-format.c:568 c-format.c:592
msgid "the `0' printf flag"
msgstr ""
-#: c-format.c:605 c-format.c:646 c-format.c:676
+#: c-format.c:569 c-format.c:593 c-format.c:656 c-format.c:686
msgid "`-' flag"
msgstr ""
-#: c-format.c:605
+#: c-format.c:569 c-format.c:593
msgid "the `-' printf flag"
msgstr ""
-#: c-format.c:606 c-format.c:630
+#: c-format.c:570 c-format.c:640
msgid "`'' flag"
msgstr ""
-#: c-format.c:606
+#: c-format.c:570
msgid "the `'' printf flag"
msgstr ""
-#: c-format.c:607 c-format.c:631
+#: c-format.c:571 c-format.c:641
msgid "`I' flag"
msgstr ""
-#: c-format.c:607
+#: c-format.c:571
msgid "the `I' printf flag"
msgstr ""
-#: c-format.c:608 c-format.c:628 c-format.c:650 c-format.c:677 c-format.c:1702
+#: c-format.c:572 c-format.c:594 c-format.c:638 c-format.c:660 c-format.c:687
+#: c-format.c:1802
msgid "field width"
msgstr ""
-#: c-format.c:608
+#: c-format.c:572 c-format.c:594
msgid "field width in printf format"
msgstr ""
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision"
msgstr ""
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision in printf format"
msgstr ""
-#: c-format.c:610 c-format.c:629 c-format.c:680
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630 c-format.c:639
+#: c-format.c:690
msgid "length modifier"
msgstr ""
-#: c-format.c:610
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630
msgid "length modifier in printf format"
msgstr ""
-#: c-format.c:626
+#: c-format.c:636
msgid "assignment suppression"
msgstr ""
-#: c-format.c:626
+#: c-format.c:636
msgid "the assignment suppression scanf feature"
msgstr ""
-#: c-format.c:627
+#: c-format.c:637
msgid "`a' flag"
msgstr ""
-#: c-format.c:627
+#: c-format.c:637
msgid "the `a' scanf flag"
msgstr ""
-#: c-format.c:628
+#: c-format.c:638
msgid "field width in scanf format"
msgstr ""
-#: c-format.c:629
+#: c-format.c:639
msgid "length modifier in scanf format"
msgstr ""
-#: c-format.c:630
+#: c-format.c:640
msgid "the `'' scanf flag"
msgstr ""
-#: c-format.c:631
+#: c-format.c:641
msgid "the `I' scanf flag"
msgstr ""
-#: c-format.c:645
+#: c-format.c:655
msgid "`_' flag"
msgstr ""
-#: c-format.c:645
+#: c-format.c:655
msgid "the `_' strftime flag"
msgstr ""
-#: c-format.c:646
+#: c-format.c:656
msgid "the `-' strftime flag"
msgstr ""
-#: c-format.c:647
+#: c-format.c:657
msgid "the `0' strftime flag"
msgstr ""
-#: c-format.c:648 c-format.c:672
+#: c-format.c:658 c-format.c:682
msgid "`^' flag"
msgstr ""
-#: c-format.c:648
+#: c-format.c:658
msgid "the `^' strftime flag"
msgstr ""
-#: c-format.c:649
+#: c-format.c:659
msgid "the `#' strftime flag"
msgstr ""
-#: c-format.c:650
+#: c-format.c:660
msgid "field width in strftime format"
msgstr ""
-#: c-format.c:651
+#: c-format.c:661
msgid "`E' modifier"
msgstr ""
-#: c-format.c:651
+#: c-format.c:661
msgid "the `E' strftime modifier"
msgstr ""
-#: c-format.c:652
+#: c-format.c:662
msgid "`O' modifier"
msgstr "'O' мадыфікатар"
-#: c-format.c:652
+#: c-format.c:662
msgid "the `O' strftime modifier"
msgstr ""
-#: c-format.c:653
+#: c-format.c:663
msgid "the `O' modifier"
msgstr ""
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character"
msgstr ""
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character in strfmon format"
msgstr ""
-#: c-format.c:672
+#: c-format.c:682
msgid "the `^' strfmon flag"
msgstr ""
-#: c-format.c:673
+#: c-format.c:683
msgid "the `+' strfmon flag"
msgstr ""
-#: c-format.c:674
+#: c-format.c:684
msgid "`(' flag"
msgstr ""
-#: c-format.c:674
+#: c-format.c:684
msgid "the `(' strfmon flag"
msgstr ""
-#: c-format.c:675
+#: c-format.c:685
msgid "`!' flag"
msgstr ""
-#: c-format.c:675
+#: c-format.c:685
msgid "the `!' strfmon flag"
msgstr ""
-#: c-format.c:676
+#: c-format.c:686
msgid "the `-' strfmon flag"
msgstr ""
-#: c-format.c:677
+#: c-format.c:687
msgid "field width in strfmon format"
msgstr ""
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision"
msgstr ""
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision in strfmon format"
msgstr ""
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision"
msgstr ""
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision in strfmon format"
msgstr ""
-#: c-format.c:680
+#: c-format.c:690
msgid "length modifier in strfmon format"
msgstr ""
-#: c-format.c:983
+#: c-format.c:1107
#, c-format
msgid "function might be possible candidate for `%s' format attribute"
msgstr ""
-#: c-format.c:1107 c-format.c:1128 c-format.c:2112
+#: c-format.c:1223 c-format.c:1244 c-format.c:2212
msgid "missing $ operand number in format"
msgstr ""
-#: c-format.c:1138
+#: c-format.c:1254
#, c-format
msgid "%s does not support %%n$ operand number formats"
msgstr ""
-#: c-format.c:1145
+#: c-format.c:1261
msgid "operand number out of range in format"
msgstr ""
-#: c-format.c:1168
+#: c-format.c:1284
#, c-format
msgid "format argument %d used more than once in %s format"
msgstr ""
-#: c-format.c:1218
+#: c-format.c:1331
#, c-format
msgid "format argument %d unused before used argument %d in $-style format"
msgstr ""
-#: c-format.c:1322
+#: c-format.c:1429
msgid "format not a string literal, format string not checked"
msgstr ""
-#: c-format.c:1336
+#: c-format.c:1443
msgid "format not a string literal and no format arguments"
msgstr ""
-#: c-format.c:1338
+#: c-format.c:1445
msgid "format not a string literal, argument types not checked"
msgstr ""
-#: c-format.c:1351
+#: c-format.c:1458
msgid "too many arguments for format"
msgstr ""
-#: c-format.c:1354
+#: c-format.c:1461
msgid "unused arguments in $-style format"
msgstr ""
-#: c-format.c:1357
+#: c-format.c:1464
#, c-format
msgid "zero-length %s format string"
msgstr ""
-#: c-format.c:1361
+#: c-format.c:1468
msgid "format is a wide character string"
msgstr ""
-#: c-format.c:1364
+#: c-format.c:1471
msgid "unterminated format string"
msgstr ""
-#: c-format.c:1581
+#: c-format.c:1681
msgid "embedded `\\0' in format"
msgstr ""
-#: c-format.c:1596
+#: c-format.c:1696
#, c-format
msgid "spurious trailing `%%' in format"
msgstr ""
-#: c-format.c:1635 c-format.c:1872
+#: c-format.c:1735 c-format.c:1972
#, c-format
msgid "repeated %s in format"
msgstr ""
-#: c-format.c:1648
+#: c-format.c:1748
msgid "missing fill character at end of strfmon format"
msgstr ""
-#: c-format.c:1687 c-format.c:1786 c-format.c:2066 c-format.c:2119
+#: c-format.c:1787 c-format.c:1886 c-format.c:2166 c-format.c:2219
msgid "too few arguments for format"
msgstr ""
-#: c-format.c:1728
+#: c-format.c:1828
#, c-format
msgid "zero width in %s format"
msgstr ""
-#: c-format.c:1747
+#: c-format.c:1847
#, c-format
msgid "empty left precision in %s format"
msgstr ""
-#: c-format.c:1801
+#: c-format.c:1901
msgid "field precision"
msgstr ""
-#: c-format.c:1816
+#: c-format.c:1916
#, c-format
msgid "empty precision in %s format"
msgstr ""
-#: c-format.c:1856
+#: c-format.c:1956
#, c-format
msgid "%s does not support the `%s' %s length modifier"
msgstr ""
-#: c-format.c:1906
+#: c-format.c:2006
msgid "conversion lacks type at end of format"
msgstr ""
-#: c-format.c:1917
+#: c-format.c:2017
#, c-format
msgid "unknown conversion type character `%c' in format"
msgstr ""
-#: c-format.c:1920
+#: c-format.c:2020
#, c-format
msgid "unknown conversion type character 0x%x in format"
msgstr ""
-#: c-format.c:1927
+#: c-format.c:2027
#, c-format
msgid "%s does not support the `%%%c' %s format"
msgstr ""
-#: c-format.c:1943
+#: c-format.c:2043
#, c-format
msgid "%s used with `%%%c' %s format"
msgstr ""
-#: c-format.c:1952
+#: c-format.c:2052
#, c-format
msgid "%s does not support %s"
msgstr "%s не падтрымлівае %s"
-#: c-format.c:1961
+#: c-format.c:2061
#, c-format
msgid "%s does not support %s with the `%%%c' %s format"
msgstr ""
-#: c-format.c:1994
+#: c-format.c:2094
#, c-format
msgid "%s ignored with %s and `%%%c' %s format"
msgstr ""
-#: c-format.c:1998
+#: c-format.c:2098
#, c-format
msgid "%s ignored with %s in %s format"
msgstr ""
-#: c-format.c:2004
+#: c-format.c:2104
#, c-format
msgid "use of %s and %s together with `%%%c' %s format"
msgstr ""
-#: c-format.c:2008
+#: c-format.c:2108
#, c-format
msgid "use of %s and %s together in %s format"
msgstr ""
-#: c-format.c:2027
+#: c-format.c:2127
#, c-format
msgid "`%%%c' yields only last 2 digits of year in some locales"
msgstr ""
-#: c-format.c:2030
+#: c-format.c:2130
#, c-format
msgid "`%%%c' yields only last 2 digits of year"
msgstr ""
#. The end of the format string was reached.
-#: c-format.c:2046
+#: c-format.c:2146
#, c-format
msgid "no closing `]' for `%%[' format"
msgstr ""
-#: c-format.c:2059
+#: c-format.c:2159
#, c-format
msgid "use of `%s' length modifier with `%c' type character"
msgstr ""
-#: c-format.c:2080
+#: c-format.c:2180
#, c-format
msgid "%s does not support the `%%%s%c' %s format"
msgstr ""
-#: c-format.c:2095
+#: c-format.c:2195
msgid "operand number specified with suppressed assignment"
msgstr ""
-#: c-format.c:2097
+#: c-format.c:2197
msgid "operand number specified for format taking no argument"
msgstr ""
-#: c-format.c:2211
+#: c-format.c:2309
#, c-format
msgid "writing through null pointer (arg %d)"
msgstr ""
-#: c-format.c:2220
+#: c-format.c:2318
#, c-format
msgid "reading through null pointer (arg %d)"
msgstr ""
-#: c-format.c:2240
+#: c-format.c:2338
#, c-format
msgid "writing into constant object (arg %d)"
msgstr ""
-#: c-format.c:2250
+#: c-format.c:2348
#, c-format
msgid "extra type qualifiers in format argument (arg %d)"
msgstr ""
-#: c-format.c:2257
+#: c-format.c:2355
#, c-format
msgid "format argument is not a pointer (arg %d)"
msgstr ""
-#: c-format.c:2259
+#: c-format.c:2357
#, c-format
msgid "format argument is not a pointer to a pointer (arg %d)"
msgstr ""
-#: c-format.c:2330
+#: c-format.c:2433
msgid "pointer"
msgstr ""
-#: c-format.c:2332
+#: c-format.c:2435
msgid "different type"
msgstr ""
-#: c-format.c:2353
+#: c-format.c:2456
#, c-format
msgid "%s is not type %s (arg %d)"
msgstr ""
-#: c-format.c:2356
+#: c-format.c:2459
#, c-format
msgid "%s format, %s arg (arg %d)"
msgstr ""
-#: c-lex.c:153
-#, fuzzy
-msgid "YYDEBUG not defined"
-msgstr "YYDEBUG не вызначан."
+#: c-format.c:2704
+msgid "args to be formatted is not '...'"
+msgstr ""
-#: c-lex.c:293
-msgid "badly nested C headers from preprocessor"
+#: c-format.c:2713
+msgid "strftime formats cannot format arguments"
msgstr ""
-#: c-lex.c:336
+#: c-incpath.c:68
#, c-format
-msgid "ignoring #pragma %s %s"
+msgid "ignoring duplicate directory \"%s\"\n"
msgstr ""
-#: c-lex.c:386
+#: c-incpath.c:71
#, c-format
-msgid "universal-character-name '\\U%08x' not valid in identifier"
+msgid " as it is a non-system directory that duplicates a system directory\n"
msgstr ""
-#: c-lex.c:632
+#: c-incpath.c:75
#, c-format
-msgid "universal-character-name '\\u%04x' not valid in identifier"
+msgid "ignoring nonexistent directory \"%s\"\n"
+msgstr ""
+
+#: c-incpath.c:273
+#, c-format
+msgid "#include \"...\" search starts here:\n"
+msgstr ""
+
+#: c-incpath.c:277
+#, c-format
+msgid "#include <...> search starts here:\n"
+msgstr ""
+
+#: c-incpath.c:282
+#, c-format
+msgid "End of search list.\n"
+msgstr ""
+
+#: c-lex.c:240
+msgid "badly nested C headers from preprocessor"
+msgstr ""
+
+#: c-lex.c:281
+#, c-format
+msgid "ignoring #pragma %s %s"
+msgstr ""
+
+#. ... or not.
+#: c-lex.c:385
+msgid "%Hstray '@' in program"
msgstr ""
-#: c-lex.c:695
+#: c-lex.c:393
+#, c-format
+msgid "missing terminating %c character"
+msgstr "прапушчан завÑршаючы Ñімвал %c"
+
+#: c-lex.c:395
#, c-format
msgid "stray '%c' in program"
msgstr ""
-#: c-lex.c:697
+#: c-lex.c:397
#, c-format
msgid "stray '\\%o' in program"
msgstr ""
-#: c-lex.c:854
+#: c-lex.c:535
msgid "this decimal constant is unsigned only in ISO C90"
msgstr ""
-#: c-lex.c:857
+#: c-lex.c:538
msgid "this decimal constant would be unsigned in ISO C90"
msgstr ""
-#: c-lex.c:873
+#: c-lex.c:554
#, c-format
msgid "integer constant is too large for \"%s\" type"
msgstr ""
-#: c-lex.c:941
+#: c-lex.c:620
#, c-format
msgid "floating constant exceeds range of \"%s\""
msgstr ""
-#: c-lex.c:977 cpplex.c:330 cpplex.c:668 cpplex.c:1942
-msgid "ignoring invalid multibyte character"
+#: c-lex.c:696
+msgid "traditional C rejects string constant concatenation"
msgstr ""
-#: c-opts.c:355
-#, fuzzy, c-format
-msgid "missing argument to \"-%s\""
-msgstr "аргумент Ð´Ð»Ñ \"%s\" прапушчан"
+#: c-objc-common.c:82
+msgid "%Jfunction '%F' can never be inlined because it is supressed using -fno-inline"
+msgstr ""
+
+#: c-objc-common.c:92
+msgid "%Jfunction '%F' can never be inlined because it might not be bound within this unit of translation"
+msgstr ""
-#: c-opts.c:359
+#: c-objc-common.c:100
+msgid "%Jfunction '%F' can never be inlined because it uses attributes conflicting with inlining"
+msgstr ""
+
+#: c-objc-common.c:115
+msgid "%Jfunction '%F' can never be inlined because it has pending sizes"
+msgstr ""
+
+#: c-objc-common.c:128
+msgid "%Jnested function '%F' can never be inlined because it has possibly saved pending sizes"
+msgstr ""
+
+#: c-opts.c:141
#, fuzzy, c-format
-msgid "no class name specified with \"-%s\""
+msgid "no class name specified with \"%s\""
msgstr "не зададзены ўваходзÑÑ‡Ñ‹Ñ Ñ„Ð°Ð¹Ð»Ñ‹"
-#: c-opts.c:366
+#: c-opts.c:145
#, fuzzy, c-format
-msgid "missing filename after \"-%s\""
-msgstr "прапушчан прабел паÑÐ»Ñ Ð½ÑƒÐ¼Ð°Ñ€Ð° \"%.*s\""
+msgid "assertion missing after \"%s\""
+msgstr "аргумент Ð´Ð»Ñ \"%s\" прапушчан"
-#: c-opts.c:371
+#: c-opts.c:150
#, fuzzy, c-format
-msgid "missing target after \"-%s\""
+msgid "macro name missing after \"%s\""
msgstr "аргумент Ð´Ð»Ñ \"%s\" прапушчан"
-#: c-opts.c:505
-#, c-format
-msgid "options array incorrectly sorted: %s is before %s"
-msgstr ""
+#: c-opts.c:157
+#, fuzzy, c-format
+msgid "missing path after \"%s\""
+msgstr "аргумент Ð´Ð»Ñ \"%s\" прапушчан"
-#: c-opts.c:550
-#, c-format
-msgid "too many filenames given. Type %s --help for usage"
-msgstr ""
+#: c-opts.c:166
+#, fuzzy, c-format
+msgid "missing filename after \"%s\""
+msgstr "прапушчан прабел паÑÐ»Ñ Ð½ÑƒÐ¼Ð°Ñ€Ð° \"%.*s\""
-#: c-opts.c:937
-msgid "-Wno-strict-prototypes is not supported in C++"
+#: c-opts.c:171
+#, fuzzy, c-format
+msgid "missing makefile target after \"%s\""
+msgstr "прапушчан прабел паÑÐ»Ñ Ð½ÑƒÐ¼Ð°Ñ€Ð° \"%.*s\""
+
+#: c-opts.c:291
+msgid "-I- specified twice"
msgstr ""
-#: c-opts.c:1017
+#: c-opts.c:692
#, fuzzy, c-format
msgid "switch \"%s\" is no longer supported"
msgstr "-pipe не падтрымліваецца."
-#: c-opts.c:1033
-#, c-format
-msgid "switch \"%s\" is deprecated, please see documentation for details"
+#: c-opts.c:816
+msgid "-fhandle-exceptions has been renamed -fexceptions (and is now on by default)"
msgstr ""
-#: c-opts.c:1153
-msgid "-fhandle-exceptions has been renamed to -fexceptions (and is now on by default)"
-msgstr ""
-
-#: c-opts.c:1273
+#: c-opts.c:982
#, fuzzy
msgid "output filename specified twice"
msgstr "не зададзены ўваходзÑÑ‡Ñ‹Ñ Ñ„Ð°Ð¹Ð»Ñ‹"
-#: c-opts.c:1387
+#: c-opts.c:1106
msgid "-Wformat-y2k ignored without -Wformat"
msgstr ""
-#: c-opts.c:1389
+#: c-opts.c:1108
msgid "-Wformat-extra-args ignored without -Wformat"
msgstr ""
-#: c-opts.c:1391
+#: c-opts.c:1110
msgid "-Wformat-zero-length ignored without -Wformat"
msgstr ""
-#: c-opts.c:1393
+#: c-opts.c:1112
msgid "-Wformat-nonliteral ignored without -Wformat"
msgstr ""
-#: c-opts.c:1395
+#: c-opts.c:1114
msgid "-Wformat-security ignored without -Wformat"
msgstr ""
-#: c-opts.c:1397
+#: c-opts.c:1116
msgid "-Wmissing-format-attribute ignored without -Wformat"
msgstr ""
-#: c-opts.c:1419
+#: c-opts.c:1130
#, fuzzy, c-format
-msgid "opening output file %s"
+msgid "opening output file %s: %m"
msgstr "немагчыма адчыніць файл уводу `%s'"
-#: c-opts.c:1474
+#: c-opts.c:1135
#, c-format
-msgid "opening dependency file %s"
+msgid "too many filenames given. Type %s --help for usage"
msgstr ""
-#: c-opts.c:1484
-#, fuzzy, c-format
-msgid "closing dependency file %s"
-msgstr "не магу знайÑці крыніцу %s\n"
-
-#: c-opts.c:1487
-#, fuzzy, c-format
-msgid "when writing output to %s"
-msgstr "памылка запіÑу Ñž %s"
-
-#: c-opts.c:1567
-msgid "to generate dependencies you must specify either -M or -MM"
-msgstr ""
+#: c-opts.c:1213
+#, fuzzy
+msgid "YYDEBUG not defined"
+msgstr "YYDEBUG не вызначан."
-#: c-opts.c:1715
+#: c-opts.c:1260
#, c-format
-msgid "\"-%c%s%s\" is valid for %s but not for %s"
-msgstr ""
-
-#. To keep the lines from getting too long for some compilers, limit
-#. to about 500 characters (6 lines) per chunk.
-#: c-opts.c:1726
-msgid ""
-"Switches:\n"
-" -include <file> Include the contents of <file> before other files\n"
-" -imacros <file> Accept definition of macros in <file>\n"
-" -iprefix <path> Specify <path> as a prefix for next two options\n"
-" -iwithprefix <dir> Add <dir> to the end of the system include path\n"
-" -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
-" -isystem <dir> Add <dir> to the start of the system include path\n"
-msgstr ""
-
-#: c-opts.c:1735
-msgid ""
-" -idirafter <dir> Add <dir> to the end of the system include path\n"
-" -I <dir> Add <dir> to the end of the main include path\n"
-" -I- Fine-grained include path control; see info docs\n"
-" -nostdinc Do not search system include directories\n"
-" (dirs specified with -isystem will still be used)\n"
-" -nostdinc++ Do not search system include directories for C++\n"
-" -o <file> Put output into <file>\n"
+msgid "opening dependency file %s: %m"
msgstr ""
-#: c-opts.c:1744
-msgid ""
-" -trigraphs Support ISO C trigraphs\n"
-" -std=<std name> Specify the conformance standard; one of:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Inhibit warning messages\n"
-" -W[no-]trigraphs Warn if trigraphs are encountered\n"
-" -W[no-]comment{s} Warn if one comment starts inside another\n"
-msgstr ""
-
-#: c-opts.c:1753
-msgid ""
-" -W[no-]traditional Warn about features not present in traditional C\n"
-" -W[no-]undef Warn if an undefined macro is used by #if\n"
-" -W[no-]import Warn about the use of the #import directive\n"
-msgstr ""
-
-#: c-opts.c:1758
-msgid ""
-" -W[no-]error Treat all warnings as errors\n"
-" -W[no-]system-headers Do not suppress warnings from system headers\n"
-" -W[no-]all Enable most preprocessor warnings\n"
+#: c-opts.c:1270
+#, c-format
+msgid "closing dependency file %s: %m"
msgstr ""
-#: c-opts.c:1763
-msgid ""
-" -M Generate make dependencies\n"
-" -MM As -M, but ignore system header files\n"
-" -MD Generate make dependencies and compile\n"
-" -MMD As -MD, but ignore system header files\n"
-" -MF <file> Write dependency output to the given file\n"
-" -MG Treat missing header file as generated files\n"
-msgstr ""
+#: c-opts.c:1273
+#, fuzzy, c-format
+msgid "when writing output to %s: %m"
+msgstr "памылка запіÑу Ñž %s"
-#: c-opts.c:1771
-msgid ""
-" -MP\t\t\t Generate phony targets for all headers\n"
-" -MQ <target> Add a MAKE-quoted target\n"
-" -MT <target> Add an unquoted target\n"
+#: c-opts.c:1343
+msgid "to generate dependencies you must specify either -M or -MM"
msgstr ""
-#: c-opts.c:1776
-msgid ""
-" -D<macro> Define a <macro> with string '1' as its value\n"
-" -D<macro>=<val> Define a <macro> with <val> as its value\n"
-" -A<question>=<answer> Assert the <answer> to <question>\n"
-" -A-<question>=<answer> Disable the <answer> to <question>\n"
-" -U<macro> Undefine <macro> \n"
-" -v Display the version number\n"
+#: c-opts.c:1403
+msgid "<built-in>"
msgstr ""
-#: c-opts.c:1784
-msgid ""
-" -H Print the name of header files as they are used\n"
-" -C Do not discard comments\n"
-" -dM Display a list of macro definitions active at end\n"
-" -dD Preserve macro definitions in output\n"
-" -dN As -dD except that only the names are preserved\n"
-" -dI Include #include directives in the output\n"
+#: c-opts.c:1418
+msgid "<command line>"
msgstr ""
-#: c-opts.c:1792
-msgid ""
-" -f[no-]preprocessed Treat the input file as already preprocessed\n"
-" -ftabstop=<number> Distance between tab stops for column reporting\n"
-" -P Do not generate #line directives\n"
-" -remap Remap file names when including files\n"
-" --help Display this information\n"
+#: c-opts.c:1502
+msgid "too late for # directive to set debug directory"
msgstr ""
#. Like YYERROR but do call yyerror.
-#: c-parse.y:55 parse.y:48 objc-parse.y:55
+#: c-parse.y:54 c-parse.c:5381 gengtype-yacc.c:1514 java/parse-scan.c:3063
+#: java/parse.c:6067 objc/objc-parse.y:54 objc/objc-parse.c:6644
msgid "syntax error"
msgstr "ÑінтакÑÑ–Ñ‡Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°"
-#: /usr/share/bison/bison.simple:179
+#: c-parse.c:2118 gengtype-yacc.c:545 java/parse-scan.c:1932 java/parse.c:2875
+#: objc/objc-parse.c:2717
#, fuzzy
msgid "syntax error: cannot back up"
msgstr "ÑінтакÑÑ–Ñ‡Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°"
-#: c-parse.y:325 objc-parse.y:346
+#: c-parse.y:320 objc/objc-parse.y:344
msgid "ISO C forbids an empty source file"
msgstr "ISO C не дазвалÑе пуÑÑ‚Ñ‹ ізыходны файл"
-#: c-parse.y:366 c-typeck.c:6916 objc-parse.y:388
+#: c-parse.y:349 c-typeck.c:6217 objc/objc-parse.y:374
msgid "argument of `asm' is not a constant string"
msgstr ""
-#: c-parse.y:374 objc-parse.y:396
+#: c-parse.y:357 objc/objc-parse.y:382
msgid "ISO C forbids data definition with no type or storage class"
msgstr ""
-#: c-parse.y:376 objc-parse.y:398
+#: c-parse.y:359 objc/objc-parse.y:384
msgid "data definition has no type or storage class"
msgstr ""
-#: c-parse.y:389 objc-parse.y:411
+#: c-parse.y:372 objc/objc-parse.y:397
msgid "ISO C does not allow extra `;' outside of a function"
msgstr ""
-#: c-parse.y:449 cppexp.c:1312
+#: c-parse.y:429 cppexp.c:1253
msgid "traditional C rejects the unary plus operator"
msgstr ""
-#: c-parse.y:496 objc-parse.y:518
+#: c-parse.y:476 objc/objc-parse.y:501
msgid "`sizeof' applied to a bit-field"
msgstr ""
-#: c-parse.y:583 objc-parse.y:605
+#: c-parse.y:563 objc/objc-parse.y:588
msgid "ISO C forbids omitting the middle term of a ?: expression"
msgstr ""
-#: c-parse.y:632 objc-parse.y:654
+#: c-parse.y:611 objc/objc-parse.y:636
msgid "ISO C89 forbids compound literals"
msgstr ""
-#: c-parse.y:646 objc-parse.y:668
+#: c-parse.y:625 objc/objc-parse.y:650
msgid "ISO C forbids braced-groups within expressions"
msgstr ""
-#: c-parse.y:677 objc-parse.y:699
+#: c-parse.y:653 objc/objc-parse.y:678
#, fuzzy
msgid "first argument to __builtin_choose_expr not a constant"
msgstr "аргумент `__builtin_args_info' павінен быць канÑтантай"
-#: c-parse.y:721 objc-parse.y:767
+#: c-parse.y:696 objc/objc-parse.y:737
msgid "traditional C rejects ISO C style function definitions"
msgstr ""
-#: c-parse.y:985 c-parse.y:991 c-parse.y:997 c-parse.y:1003 c-parse.y:1024
-#: c-parse.y:1030 c-parse.y:1036 c-parse.y:1042 c-parse.y:1075 c-parse.y:1081
-#: c-parse.y:1087 c-parse.y:1093 c-parse.y:1138 c-parse.y:1144 c-parse.y:1150
-#: c-parse.y:1156 parse.y:1933 parse.y:1940 parse.y:1975 objc-parse.y:1031
-#: objc-parse.y:1037 objc-parse.y:1043 objc-parse.y:1049 objc-parse.y:1070
-#: objc-parse.y:1076 objc-parse.y:1082 objc-parse.y:1088 objc-parse.y:1121
-#: objc-parse.y:1127 objc-parse.y:1133 objc-parse.y:1139 objc-parse.y:1184
-#: objc-parse.y:1190 objc-parse.y:1196 objc-parse.y:1202
+#: c-parse.y:699 c-parse.y:705 objc/objc-parse.y:740 objc/objc-parse.y:746
+#, fuzzy
+msgid "old-style parameter declaration"
+msgstr "пуÑтое абвÑшчÑнне"
+
+#: c-parse.y:967 c-parse.y:973 c-parse.y:979 c-parse.y:985 c-parse.y:1006
+#: c-parse.y:1012 c-parse.y:1018 c-parse.y:1024 c-parse.y:1057 c-parse.y:1063
+#: c-parse.y:1069 c-parse.y:1075 c-parse.y:1120 c-parse.y:1126 c-parse.y:1132
+#: c-parse.y:1138 objc/objc-parse.y:1008 objc/objc-parse.y:1014
+#: objc/objc-parse.y:1020 objc/objc-parse.y:1026 objc/objc-parse.y:1047
+#: objc/objc-parse.y:1053 objc/objc-parse.y:1059 objc/objc-parse.y:1065
+#: objc/objc-parse.y:1098 objc/objc-parse.y:1104 objc/objc-parse.y:1110
+#: objc/objc-parse.y:1116 objc/objc-parse.y:1161 objc/objc-parse.y:1167
+#: objc/objc-parse.y:1173 objc/objc-parse.y:1179
#, c-format
msgid "`%s' is not at beginning of declaration"
msgstr "\"%s\" - гÑта не пачатак дÑкларацыі"
-#: c-parse.y:1441 objc-parse.y:1496
+#: c-parse.y:1300 objc/objc-parse.y:1350
+msgid "`typeof' applied to a bit-field"
+msgstr ""
+
+#: c-parse.y:1427 objc/objc-parse.y:1477
msgid "ISO C forbids empty initializer braces"
msgstr ""
-#: c-parse.y:1455 objc-parse.y:1510
+#: c-parse.y:1441 objc/objc-parse.y:1491
msgid "ISO C89 forbids specifying subobject to initialize"
msgstr ""
-#: c-parse.y:1458 objc-parse.y:1513
+#: c-parse.y:1444 objc/objc-parse.y:1494
msgid "obsolete use of designated initializer without `='"
msgstr ""
-#: c-parse.y:1462 objc-parse.y:1517
+#: c-parse.y:1448 objc/objc-parse.y:1498
msgid "obsolete use of designated initializer with `:'"
msgstr ""
-#: c-parse.y:1489 objc-parse.y:1544
+#: c-parse.y:1475 objc/objc-parse.y:1525
msgid "ISO C forbids specifying range of elements to initialize"
msgstr ""
-#: c-parse.y:1497 c-parse.y:1528 objc-parse.y:1552 objc-parse.y:1583
+#: c-parse.y:1483 c-parse.y:1514 objc/objc-parse.y:1533 objc/objc-parse.y:1564
msgid "ISO C forbids nested functions"
msgstr ""
-#: c-parse.y:1703 objc-parse.y:1760
+#: c-parse.y:1691 objc/objc-parse.y:1743
msgid "ISO C forbids forward references to `enum' types"
msgstr ""
-#: c-parse.y:1715 parse.y:2411 objc-parse.y:1772
+#: c-parse.y:1703 cp/parser.c:9282 objc/objc-parse.y:1755
msgid "comma at end of enumerator list"
msgstr ""
-#: c-parse.y:1723 objc-parse.y:1780
+#: c-parse.y:1723 objc/objc-parse.y:1775
msgid "no semicolon at end of struct or union"
msgstr ""
-#: c-parse.y:1732 objc-parse.y:1789 objc-parse.y:2864
+#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846
msgid "extra semicolon in struct or union specified"
msgstr ""
-#: c-parse.y:1745 objc-parse.y:1816
+#: c-parse.y:1745 objc/objc-parse.y:1800
msgid "ISO C doesn't support unnamed structs/unions"
msgstr ""
-#: c-parse.y:1754 objc-parse.y:1825
+#: c-parse.y:1754 objc/objc-parse.y:1809
msgid "ISO C forbids member declarations with no members"
msgstr ""
-#: c-parse.y:1913 objc-parse.y:1984
-msgid "deprecated use of label at end of compound statement"
+#: c-parse.y:1915 objc/objc-parse.y:1970
+msgid "label at end of compound statement"
msgstr ""
-#: c-parse.y:1930 objc-parse.y:2001
-msgid "ISO C89 forbids mixed declarations and code"
-msgstr ""
+#: c-parse.y:1934 objc/objc-parse.y:1989
+#, fuzzy
+msgid "ISO C90 forbids mixed declarations and code"
+msgstr "ISO C не дазвалÑе дÑкларацыі метак (label)"
-#: c-parse.y:2005 objc-parse.y:2080
+#: c-parse.y:2012 objc/objc-parse.y:2069
msgid "ISO C forbids label declarations"
msgstr "ISO C не дазвалÑе дÑкларацыі метак (label)"
-#: c-parse.y:2055 parse.y:1638 objc-parse.y:2130
+#: c-parse.y:2062 objc/objc-parse.y:2119
msgid "braced-group within expression allowed only inside a function"
msgstr ""
-#: c-parse.y:2182 objc-parse.y:2257
+#: c-parse.y:2184 objc/objc-parse.y:2241
msgid "empty body in an else-statement"
msgstr "пуÑтое цела Ñž else-выражÑнні"
-#: c-parse.y:2303 objc-parse.y:2378
-msgid "ISO C forbids `goto *expr;'"
-msgstr "ISO C не падтрымлівае \"goto *expr;\""
+#: c-parse.y:2192 objc/objc-parse.y:2249
+#, fuzzy
+msgid "%Hempty body in an if-statement"
+msgstr "пуÑтое цела Ñž else-выражÑнні"
-#: c-parse.y:2403 objc-parse.y:2478
-msgid "ISO C forbids forward parameter declarations"
+#: c-parse.y:2272 cp/parser.c:6028 objc/objc-parse.y:2329
+msgid "break statement not within loop or switch"
+msgstr ""
+
+#: c-parse.y:2281 cp/parser.c:6039 objc/objc-parse.y:2338
+msgid "continue statement not within a loop"
msgstr ""
+#: c-parse.y:2323 objc/objc-parse.y:2380
+msgid "ISO C forbids `goto *expr;'"
+msgstr "ISO C не падтрымлівае \"goto *expr;\""
+
#. Gcc used to allow this as an extension. However, it does
#. not work for all targets, and thus has been disabled.
#. Also, since func (...) and func () are indistinguishable,
#. it caused problems with the code in expand_builtin which
#. tries to verify that BUILT_IN_NEXT_ARG is being used
#. correctly.
-#: c-parse.y:2429 objc-parse.y:2504
+#: c-parse.y:2440 objc/objc-parse.y:2548
msgid "ISO C requires a named argument before `...'"
msgstr ""
-#: c-parse.y:2526 objc-parse.y:2601
+#: c-parse.y:2538 objc/objc-parse.y:2646
msgid "`...' in old-style identifier list"
msgstr ""
-#: /usr/share/bison/bison.simple:795
-msgid "parse error; also virtual memory exhausted"
+#: c-parse.c:5377 gengtype-yacc.c:1510 java/parse-scan.c:3059
+#: java/parse.c:6063 objc/objc-parse.c:6640
+msgid "syntax error; also virtual memory exhausted"
msgstr ""
-#: /usr/share/bison/bison.simple:799 cp/spew.c:364
-msgid "parse error"
-msgstr "Ð³Ñ€Ð°Ð¼Ð°Ñ‚Ñ‹Ñ‡Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°"
-
-#: /usr/share/bison/bison.simple:924
+#: c-parse.c:5495 gengtype-yacc.c:1628 java/parse-scan.c:3177
+#: java/parse.c:6181 objc/objc-parse.c:6758
msgid "parser stack overflow"
msgstr ""
-#: c-parse.y:2838 cp/spew.c:1525 objc-parse.y:3537
+#: c-parse.y:2968 objc/objc-parse.y:3663
#, c-format
-msgid "%s at end of input"
-msgstr "%s на прыканцы ўводу"
+msgid "syntax error at '%s' token"
+msgstr ""
+
+#: c-pch.c:112
+#, fuzzy, c-format
+msgid "can't create precompiled header %s: %m"
+msgstr "немагчыма Ñтварыць дырÑкторыю \"%s\""
+
+#: c-pch.c:132
+#, fuzzy, c-format
+msgid "can't write to %s: %m"
+msgstr "не магу запіÑаць Ñž %s"
+
+#: c-pch.c:138
+#, fuzzy, c-format
+msgid "`%s' is not a valid output file"
+msgstr "\"%s\" мае незавершаны тып"
-#: c-parse.y:2844 cp/spew.c:1533 objc-parse.y:3543
+#: c-pch.c:167 c-pch.c:183 c-pch.c:195
+#, fuzzy, c-format
+msgid "can't write %s: %m"
+msgstr "немагчыма адчыніць %s"
+
+#: c-pch.c:173
+#, fuzzy, c-format
+msgid "can't seek in %s: %m"
+msgstr "немагчыма адчыніць %s"
+
+#: c-pch.c:181 c-pch.c:221 c-pch.c:249 c-pch.c:254 c-pch.c:324
+#, fuzzy, c-format
+msgid "can't read %s: %m"
+msgstr "не магу прачытаць з %s"
+
+#: c-pch.c:234
#, c-format
-msgid "%s before %s'%c'"
-msgstr "%s перад %s'%c'"
+msgid "%s: not compatible with this GCC version"
+msgstr ""
-#: c-parse.y:2846 cp/spew.c:1535 objc-parse.y:3545
+#. It's a PCH for the wrong language.
+#: c-pch.c:237
+#, fuzzy, c-format
+msgid "%s: not for %s"
+msgstr "%s не падтрымлівае %s"
+
+#. Not any kind of PCH.
+#: c-pch.c:241
#, c-format
-msgid "%s before %s'\\x%x'"
-msgstr "%s перад %s'\\x%x'"
+msgid "%s: not a PCH file"
+msgstr ""
-#: c-parse.y:2850 cp/spew.c:1542 objc-parse.y:3549
+#: c-pch.c:260
#, c-format
-msgid "%s before string constant"
+msgid "%s: created on host `%.*s', but used on host `%s'"
msgstr ""
-#: c-parse.y:2852 cp/spew.c:1544 objc-parse.y:3551
+#: c-pch.c:270
#, c-format
-msgid "%s before numeric constant"
+msgid "%s: created for target `%.*s', but used for target `%s'"
msgstr ""
-#: c-parse.y:2854 objc-parse.y:3553
+#: c-pch.c:283
#, c-format
-msgid "%s before \"%s\""
-msgstr "%s перад \"%s\""
+msgid "%s: created by version `%.*s', but this is version `%s'"
+msgstr ""
-#: c-parse.y:2856 objc-parse.y:3555
+#: c-pch.c:299
#, c-format
-msgid "%s before '%s' token"
-msgstr "%s перад знакам '%s'"
+msgid "%s: created with -g%s, but used with -g%s"
+msgstr ""
-#: c-parse.y:2921
-msgid "traditional C rejects string concatenation"
+#: c-pch.c:313
+#, c-format
+msgid "%s: had text segment at different address"
msgstr ""
-#: c-parse.y:3047 objc-parse.y:3779
+#: c-pch.c:330 cpperror.c:176 gcc.c:6547
#, c-format
-msgid "syntax error at '%s' token"
+msgid "%s: %s"
+msgstr ""
+
+#: c-pch.c:361
+msgid "calling fdopen"
+msgstr ""
+
+#: c-pch.c:369 c-pch.c:381
+msgid "reading"
msgstr ""
-#: c-pragma.c:107
+#: c-pragma.c:106
msgid "#pragma pack (pop) encountered without matching #pragma pack (push, <n>)"
msgstr ""
-#: c-pragma.c:125
+#: c-pragma.c:124
#, c-format
msgid "#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s, <n>)"
msgstr ""
-#: c-pragma.c:145
+#: c-pragma.c:144
#, fuzzy
msgid "#pragma pack(push[, id], <n>) is not supported on this target"
msgstr "атрыбуты Ñекцыі не падтрымліваюцца Ð´Ð»Ñ Ð³Ñтай мÑÑ‚Ñ‹"
-#: c-pragma.c:147
+#: c-pragma.c:146
#, fuzzy
msgid "#pragma pack(pop[, id], <n>) is not supported on this target"
msgstr "атрыбуты Ñекцыі не падтрымліваюцца Ð´Ð»Ñ Ð³Ñтай мÑÑ‚Ñ‹"
-#: c-pragma.c:167
+#: c-pragma.c:165
msgid "missing '(' after '#pragma pack' - ignored"
msgstr ""
-#: c-pragma.c:180 c-pragma.c:230
+#: c-pragma.c:178 c-pragma.c:228
msgid "malformed '#pragma pack' - ignored"
msgstr ""
-#: c-pragma.c:185
+#: c-pragma.c:183
msgid "malformed '#pragma pack(push[, id], <n>)' - ignored"
msgstr ""
-#: c-pragma.c:187
+#: c-pragma.c:185
msgid "malformed '#pragma pack(pop[, id])' - ignored"
msgstr ""
-#: c-pragma.c:196
+#: c-pragma.c:194
#, c-format
msgid "unknown action '%s' for '#pragma pack' - ignored"
msgstr ""
-#: c-pragma.c:233
+#: c-pragma.c:231
msgid "junk at end of '#pragma pack'"
msgstr ""
-#: c-pragma.c:247
+#: c-pragma.c:245
#, c-format
msgid "alignment must be a small power of two, not %d"
msgstr ""
-#: c-pragma.c:280
-#, c-format
-msgid "applying #pragma weak `%s' after first use results in unspecified behavior"
+#: c-pragma.c:278
+msgid "%Japplying #pragma weak '%D' after first use results in unspecified behavior"
msgstr ""
-#: c-pragma.c:328 c-pragma.c:333
+#: c-pragma.c:325 c-pragma.c:330
msgid "malformed #pragma weak, ignored"
msgstr ""
-#: c-pragma.c:337
+#: c-pragma.c:334
msgid "junk at end of #pragma weak"
msgstr ""
-#: c-pragma.c:372 c-pragma.c:377
+#: c-pragma.c:367 c-pragma.c:372
msgid "malformed #pragma redefine_extname, ignored"
msgstr ""
-#: c-pragma.c:382
+#: c-pragma.c:377
msgid "junk at end of #pragma redefine_extname"
msgstr ""
-#: c-pragma.c:389 c-pragma.c:470
+#: c-pragma.c:384 c-pragma.c:462
msgid "#pragma redefine_extname conflicts with declaration"
msgstr ""
-#: c-pragma.c:420
+#: c-pragma.c:413
msgid "malformed #pragma extern_prefix, ignored"
msgstr ""
-#: c-pragma.c:425
+#: c-pragma.c:418
msgid "junk at end of #pragma extern_prefix"
msgstr ""
-#: c-pragma.c:457
+#: c-pragma.c:449
#, fuzzy
msgid "asm declaration conflicts with previous rename"
msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
-#: c-semantics.c:565
-msgid "break statement not within loop or switch"
-msgstr ""
-
-#: c-semantics.c:583
-msgid "continue statement not within a loop"
-msgstr ""
-
-#: c-semantics.c:678
-msgid "destructor needed for `%#D'"
+#: c-semantics.c:697
+#, fuzzy
+msgid "destructor needed for `%D'"
msgstr "дÑÑтруктару неабходны \"%#D\""
-#: c-semantics.c:679
+#: c-semantics.c:698
msgid "where case label appears here"
msgstr ""
-#: c-semantics.c:682
+#: c-semantics.c:701
msgid "(enclose actions of previous case statements requiring destructors in their own scope.)"
msgstr ""
-#: c-semantics.c:725 c-typeck.c:6942 cp/semantics.c:897
+#: c-semantics.c:737 c-typeck.c:6239 cp/semantics.c:1070
#, c-format
msgid "%s qualifier ignored on asm"
msgstr ""
-#: c-typeck.c:123
+#: c-semantics.c:991
+msgid "will never be executed"
+msgstr ""
+
+#: c-typeck.c:120
#, c-format
msgid "`%s' has an incomplete type"
msgstr "\"%s\" мае незавершаны тып"
-#: c-typeck.c:145 cp/call.c:2865
+#: c-typeck.c:142 cp/call.c:2532
msgid "invalid use of void expression"
msgstr ""
-#: c-typeck.c:153
+#: c-typeck.c:150
msgid "invalid use of flexible array member"
msgstr ""
-#: c-typeck.c:159
+#: c-typeck.c:156
msgid "invalid use of array with unspecified bounds"
msgstr ""
-#: c-typeck.c:167
+#: c-typeck.c:164
#, c-format
msgid "invalid use of undefined type `%s %s'"
msgstr ""
#. If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL.
-#: c-typeck.c:171
+#: c-typeck.c:168
#, c-format
msgid "invalid use of incomplete typedef `%s'"
msgstr ""
-#: c-typeck.c:424 c-typeck.c:438
+#: c-typeck.c:415 c-typeck.c:430
msgid "function types not truly compatible in ISO C"
msgstr ""
-#: c-typeck.c:603
+#: c-typeck.c:611
msgid "types are not quite compatible"
msgstr ""
-#: c-typeck.c:757 c-typeck.c:2687
+#: c-typeck.c:820
+msgid "function return types not compatible due to `volatile'"
+msgstr ""
+
+#: c-typeck.c:966 c-typeck.c:2143
msgid "arithmetic on pointer to an incomplete type"
msgstr ""
-#: c-typeck.c:1136
+#: c-typeck.c:1339
#, c-format
msgid "%s has no member named `%s'"
msgstr ""
-#: c-typeck.c:1172
+#: c-typeck.c:1375
#, c-format
msgid "request for member `%s' in something not a structure or union"
msgstr ""
-#: c-typeck.c:1204
+#: c-typeck.c:1404
msgid "dereferencing pointer to incomplete type"
msgstr ""
-#: c-typeck.c:1208
+#: c-typeck.c:1408
msgid "dereferencing `void *' pointer"
msgstr ""
-#: c-typeck.c:1225 cp/typeck.c:2369
+#: c-typeck.c:1425 cp/typeck.c:2104
#, c-format
msgid "invalid type argument of `%s'"
msgstr ""
-#: c-typeck.c:1244 cp/typeck.c:2395
+#: c-typeck.c:1443 cp/typeck.c:2129
msgid "subscript missing in array reference"
msgstr ""
-#: c-typeck.c:1265 cp/typeck.c:2437
+#: c-typeck.c:1464 cp/typeck.c:2171
msgid "array subscript has type `char'"
msgstr ""
-#: c-typeck.c:1273 c-typeck.c:1362 cp/typeck.c:2444 cp/typeck.c:2523
+#: c-typeck.c:1472 c-typeck.c:1561 cp/typeck.c:2175 cp/typeck.c:2261
msgid "array subscript is not an integer"
msgstr ""
-#: c-typeck.c:1306
+#: c-typeck.c:1505
msgid "ISO C forbids subscripting `register' array"
msgstr ""
-#: c-typeck.c:1308
+#: c-typeck.c:1507
#, fuzzy
msgid "ISO C90 forbids subscripting non-lvalue array"
msgstr "ISO C не дазвалÑе дÑкларацыі метак (label)"
-#: c-typeck.c:1341
+#: c-typeck.c:1540
msgid "subscript has type `char'"
msgstr ""
-#: c-typeck.c:1357 cp/typeck.c:2518
+#: c-typeck.c:1556 cp/typeck.c:2256
msgid "subscripted value is neither array nor pointer"
msgstr ""
-#: c-typeck.c:1411
-#, c-format
-msgid "`%s' undeclared here (not in a function)"
-msgstr ""
-
-#: c-typeck.c:1418
-#, c-format
-msgid "`%s' undeclared (first use in this function)"
-msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-
-#: c-typeck.c:1423
-msgid "(Each undeclared identifier is reported only once"
-msgstr "(Ðб кожным неабвешчаным ідÑнтыфікатары паведамлÑецца"
-
-#: c-typeck.c:1424
-msgid "for each function it appears in.)"
-msgstr "адзін раз Ð´Ð»Ñ ÐºÐ¾Ð¶Ð½Ð°Ð¹ функцыі, дзе ён з'ÑўлÑецца.)"
-
-#: c-typeck.c:1441
+#: c-typeck.c:1586
#, c-format
msgid "local declaration of `%s' hides instance variable"
msgstr ""
-#: c-typeck.c:1518
+#: c-typeck.c:1679
msgid "called object is not a function"
msgstr ""
-#: c-typeck.c:1604 cp/typeck.c:2829
+#. This situation leads to run-time undefined behavior. We can't,
+#. therefore, simply error unless we can prove that all possible
+#. executions of the program must execute the code.
+#: c-typeck.c:1711
+msgid "function called through a non-compatible type"
+msgstr ""
+
+#: c-typeck.c:1805 cp/typeck.c:2544
msgid "too many arguments to function"
msgstr "вельмі шмат аргументаў у функцыі"
-#: c-typeck.c:1625
+#: c-typeck.c:1826
#, c-format
msgid "type of formal parameter %d is incomplete"
msgstr ""
-#: c-typeck.c:1638
+#: c-typeck.c:1839
#, c-format
msgid "%s as integer rather than floating due to prototype"
msgstr ""
-#: c-typeck.c:1641
+#: c-typeck.c:1842
#, c-format
msgid "%s as integer rather than complex due to prototype"
msgstr ""
-#: c-typeck.c:1644
+#: c-typeck.c:1845
#, c-format
msgid "%s as complex rather than floating due to prototype"
msgstr ""
-#: c-typeck.c:1647
+#: c-typeck.c:1848
#, c-format
msgid "%s as floating rather than integer due to prototype"
msgstr ""
-#: c-typeck.c:1650
+#: c-typeck.c:1851
#, c-format
msgid "%s as complex rather than integer due to prototype"
msgstr ""
-#: c-typeck.c:1653
+#: c-typeck.c:1854
#, c-format
msgid "%s as floating rather than complex due to prototype"
msgstr ""
-#: c-typeck.c:1663
+#: c-typeck.c:1864
#, c-format
msgid "%s as `float' rather than `double' due to prototype"
msgstr ""
-#: c-typeck.c:1681
+#: c-typeck.c:1882
#, c-format
msgid "%s with different width due to prototype"
msgstr ""
-#: c-typeck.c:1715
+#: c-typeck.c:1908
#, c-format
msgid "%s as unsigned due to prototype"
msgstr ""
-#: c-typeck.c:1717
+#: c-typeck.c:1910
#, c-format
msgid "%s as signed due to prototype"
msgstr ""
-#: c-typeck.c:1751 cp/typeck.c:2933
+#: c-typeck.c:1944 cp/typeck.c:2650
msgid "too few arguments to function"
msgstr "не хапае аргументаў у функцыі"
-#: c-typeck.c:1793
+#: c-typeck.c:1984
msgid "suggest parentheses around + or - inside shift"
msgstr ""
-#: c-typeck.c:1800
+#: c-typeck.c:1991
msgid "suggest parentheses around && within ||"
msgstr ""
-#: c-typeck.c:1809
+#: c-typeck.c:2000
msgid "suggest parentheses around arithmetic in operand of |"
msgstr ""
-#: c-typeck.c:1812
+#: c-typeck.c:2003
msgid "suggest parentheses around comparison in operand of |"
msgstr ""
-#: c-typeck.c:1821
+#: c-typeck.c:2012
msgid "suggest parentheses around arithmetic in operand of ^"
msgstr ""
-#: c-typeck.c:1824
+#: c-typeck.c:2015
msgid "suggest parentheses around comparison in operand of ^"
msgstr ""
-#: c-typeck.c:1831
+#: c-typeck.c:2022
msgid "suggest parentheses around + or - in operand of &"
msgstr ""
-#: c-typeck.c:1834
+#: c-typeck.c:2025
msgid "suggest parentheses around comparison in operand of &"
msgstr ""
-#: c-typeck.c:1841
+#: c-typeck.c:2032
msgid "comparisons like X<=Y<=Z do not have their mathematical meaning"
msgstr ""
-#: c-typeck.c:2001 c-typeck.c:2036
-msgid "division by zero"
-msgstr ""
-
-#: c-typeck.c:2081 cp/typeck.c:3194
-msgid "right shift count is negative"
-msgstr ""
-
-#: c-typeck.c:2088 cp/typeck.c:3200
-msgid "right shift count >= width of type"
-msgstr ""
-
-#: c-typeck.c:2109 cp/typeck.c:3219
-msgid "left shift count is negative"
-msgstr ""
-
-#: c-typeck.c:2112 cp/typeck.c:3221
-msgid "left shift count >= width of type"
-msgstr ""
-
-#: c-typeck.c:2133
-msgid "shift count is negative"
-msgstr ""
-
-#: c-typeck.c:2135
-msgid "shift count >= width of type"
-msgstr ""
-
-#: c-typeck.c:2152 cp/typeck.c:3256
-msgid "comparing floating point with == or != is unsafe"
-msgstr ""
-
-#: c-typeck.c:2178 c-typeck.c:2184
-msgid "ISO C forbids comparison of `void *' with function pointer"
-msgstr ""
-
-#: c-typeck.c:2187 c-typeck.c:2227 c-typeck.c:2255
-msgid "comparison of distinct pointer types lacks a cast"
-msgstr ""
-
-#: c-typeck.c:2201 c-typeck.c:2206 c-typeck.c:2275 c-typeck.c:2280
-msgid "comparison between pointer and integer"
-msgstr ""
-
-#: c-typeck.c:2222 c-typeck.c:2250
-msgid "ISO C forbids ordered comparisons of pointers to functions"
-msgstr ""
-
-#: c-typeck.c:2247
-msgid "comparison of complete and incomplete pointers"
-msgstr ""
-
-#: c-typeck.c:2263 c-typeck.c:2270
-msgid "ordered comparison of pointer with integer zero"
-msgstr ""
-
-#: c-typeck.c:2294 cp/typeck.c:3389
-msgid "unordered comparison on non-floating point argument"
-msgstr ""
-
-#: c-typeck.c:2505
-msgid "comparison between signed and unsigned"
-msgstr ""
-
-#: c-typeck.c:2551 cp/typeck.c:3633
-msgid "comparison of promoted ~unsigned with constant"
-msgstr ""
-
-#: c-typeck.c:2559 cp/typeck.c:3641
-msgid "comparison of promoted ~unsigned with unsigned"
-msgstr ""
-
-#: c-typeck.c:2639
+#: c-typeck.c:2095
msgid "pointer of type `void *' used in subtraction"
msgstr ""
-#: c-typeck.c:2641
+#: c-typeck.c:2097
msgid "pointer to a function used in subtraction"
msgstr ""
-#: c-typeck.c:2738
+#: c-typeck.c:2191
msgid "wrong type argument to unary plus"
msgstr ""
-#: c-typeck.c:2751
+#: c-typeck.c:2204
msgid "wrong type argument to unary minus"
msgstr ""
-#: c-typeck.c:2768
+#: c-typeck.c:2221
msgid "ISO C does not support `~' for complex conjugation"
msgstr ""
-#: c-typeck.c:2774
+#: c-typeck.c:2227
msgid "wrong type argument to bit-complement"
msgstr ""
-#: c-typeck.c:2783
+#: c-typeck.c:2235
msgid "wrong type argument to abs"
msgstr ""
-#: c-typeck.c:2795
+#: c-typeck.c:2247
msgid "wrong type argument to conjugation"
msgstr ""
-#: c-typeck.c:2809
+#: c-typeck.c:2261
msgid "wrong type argument to unary exclamation mark"
msgstr ""
-#: c-typeck.c:2852
+#: c-typeck.c:2304
msgid "ISO C does not support `++' and `--' on complex types"
msgstr "ISO C не падтрымлівае \"++\" Ñ– \"--\" Ð´Ð»Ñ Ñ‚Ñ‹Ð¿Ñƒ complex"
-#: c-typeck.c:2867 c-typeck.c:2899
+#: c-typeck.c:2319 c-typeck.c:2351
#, fuzzy
msgid "wrong type argument to increment"
msgstr "не хапае аргументаў у функцыі"
-#: c-typeck.c:2869 c-typeck.c:2901
+#: c-typeck.c:2321 c-typeck.c:2353
msgid "wrong type argument to decrement"
msgstr ""
-#: c-typeck.c:2890
+#: c-typeck.c:2342
msgid "increment of pointer to unknown structure"
msgstr ""
-#: c-typeck.c:2892
+#: c-typeck.c:2344
msgid "decrement of pointer to unknown structure"
msgstr ""
-#: c-typeck.c:3029
-msgid "ISO C forbids the address of a cast expression"
-msgstr ""
-
-#: c-typeck.c:3039
+#: c-typeck.c:2469
msgid "invalid lvalue in unary `&'"
msgstr ""
-#: c-typeck.c:3071
+#: c-typeck.c:2501
#, c-format
msgid "attempt to take address of bit-field structure member `%s'"
msgstr ""
-#: c-typeck.c:3180 c-typeck.c:4651 c-typeck.c:4667 c-typeck.c:4683
-#: final.c:3146 final.c:3148 gcc.c:4381 rtl-error.c:122 toplev.c:1694
-#: config/cris/cris.c:545 cp/spew.c:1538 cp/typeck.c:4367 java/expr.c:364
-#: java/verify.c:1467 java/verify.c:1468 java/verify.c:1483
-#, c-format
-msgid "%s"
-msgstr ""
-
-#: c-typeck.c:3241
-msgid "ISO C forbids use of conditional expressions as lvalues"
+#: c-typeck.c:2634
+msgid "use of conditional expressions as lvalues is deprecated"
msgstr ""
-#: c-typeck.c:3244
-msgid "ISO C forbids use of compound expressions as lvalues"
+#: c-typeck.c:2637
+msgid "use of compound expressions as lvalues is deprecated"
msgstr ""
-#: c-typeck.c:3247
-msgid "ISO C forbids use of cast expressions as lvalues"
+#: c-typeck.c:2640
+msgid "use of cast expressions as lvalues is deprecated"
msgstr ""
-#: c-typeck.c:3264
+#: c-typeck.c:2655
#, c-format
msgid "%s of read-only member `%s'"
msgstr ""
-#: c-typeck.c:3268
+#: c-typeck.c:2659
#, c-format
msgid "%s of read-only variable `%s'"
msgstr ""
-#: c-typeck.c:3271
+#: c-typeck.c:2662
#, c-format
msgid "%s of read-only location"
msgstr ""
-#: c-typeck.c:3290
+#: c-typeck.c:2680
#, fuzzy, c-format
msgid "cannot take address of bit-field `%s'"
msgstr "не магу атрымаць Ð°Ð´Ñ€Ð°Ñ Ð±Ñ–Ñ‚Ð°Ð²Ð°Ð³Ð° Ð¿Ð¾Ð»Ñ \"%s\""
-#: c-typeck.c:3318
+#: c-typeck.c:2708 treelang/treetree.c:946
#, c-format
msgid "global register variable `%s' used in nested function"
msgstr ""
-#: c-typeck.c:3322
+#: c-typeck.c:2712 treelang/treetree.c:950
#, c-format
msgid "register variable `%s' used in nested function"
msgstr ""
-#: c-typeck.c:3329
+#: c-typeck.c:2719 treelang/treetree.c:957
#, c-format
msgid "address of global register variable `%s' requested"
msgstr ""
-#: c-typeck.c:3341
+#: c-typeck.c:2731
msgid "cannot put object with volatile field into register"
msgstr ""
-#: c-typeck.c:3345
+#: c-typeck.c:2735 treelang/treetree.c:962
#, c-format
msgid "address of register variable `%s' requested"
msgstr ""
-#: c-typeck.c:3453
+#: c-typeck.c:2820
msgid "signed and unsigned type in conditional expression"
msgstr ""
-#: c-typeck.c:3460
+#: c-typeck.c:2827
msgid "ISO C forbids conditional expr with only one void side"
msgstr ""
-#: c-typeck.c:3476 c-typeck.c:3483
+#: c-typeck.c:2843 c-typeck.c:2850
msgid "ISO C forbids conditional expr between `void *' and function pointer"
msgstr ""
-#: c-typeck.c:3489
+#: c-typeck.c:2856
msgid "pointer type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:3496 c-typeck.c:3506
+#: c-typeck.c:2863 c-typeck.c:2873
msgid "pointer/integer type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:3520
+#: c-typeck.c:2887
msgid "type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:3591 cp/typeck.c:4623
+#: c-typeck.c:2947
msgid "left-hand operand of comma expression has no effect"
msgstr ""
-#: c-typeck.c:3635
+#: c-typeck.c:2978
msgid "cast specifies array type"
msgstr ""
-#: c-typeck.c:3641
+#: c-typeck.c:2984
msgid "cast specifies function type"
msgstr ""
-#: c-typeck.c:3651
+#: c-typeck.c:2994
msgid "ISO C forbids casting nonscalar to the same type"
msgstr ""
-#: c-typeck.c:3670
+#: c-typeck.c:3012
msgid "ISO C forbids casts to union type"
msgstr ""
-#: c-typeck.c:3685
+#: c-typeck.c:3020
msgid "cast to union type from type not present in union"
msgstr ""
-#: c-typeck.c:3736
+#: c-typeck.c:3071
msgid "cast adds new qualifiers to function type"
msgstr ""
#. There are qualifiers present in IN_OTYPE that are not
#. present in IN_TYPE.
-#: c-typeck.c:3741
+#: c-typeck.c:3076
msgid "cast discards qualifiers from pointer target type"
msgstr ""
-#: c-typeck.c:3756
+#: c-typeck.c:3091
msgid "cast increases required alignment of target type"
msgstr ""
-#: c-typeck.c:3762 cp/typeck.c:5144
+#: c-typeck.c:3097 cp/typeck.c:4889
msgid "cast from pointer to integer of different size"
msgstr ""
-#: c-typeck.c:3767
+#: c-typeck.c:3102
msgid "cast does not match function type"
msgstr ""
-#: c-typeck.c:3774 cp/typeck.c:5151
+#: c-typeck.c:3109 cp/typeck.c:4896
msgid "cast to pointer from integer of different size"
msgstr ""
-#: c-typeck.c:3786
+#: c-typeck.c:3121
msgid "type-punning to incomplete type might break strict-aliasing rules"
msgstr ""
-#: c-typeck.c:3790
+#: c-typeck.c:3125
msgid "dereferencing type-punned pointer will break strict-aliasing rules"
msgstr ""
+#: c-typeck.c:3136
+msgid "ISO C forbids conversion of function pointer to object pointer type"
+msgstr ""
+
+#: c-typeck.c:3145
+msgid "ISO C forbids conversion of object pointer to function pointer type"
+msgstr ""
+
#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
#. Reject anything strange now.
-#: c-typeck.c:3949
+#: c-typeck.c:3303
msgid "invalid lvalue in assignment"
msgstr ""
#. Convert new value to destination type.
-#: c-typeck.c:3958 c-typeck.c:3983 c-typeck.c:4000 cp/typeck.c:5266
-#: cp/typeck.c:5416
+#. Check this here to avoid odd errors when trying to convert
+#. a throw to the type of the COND_EXPR.
+#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
+#. Reject anything strange now.
+#: c-typeck.c:3312 c-typeck.c:3337 c-typeck.c:3354 cp/typeck.c:5008
+#: cp/typeck.c:5152
msgid "assignment"
msgstr ""
-#: c-typeck.c:4070
+#: c-typeck.c:3421
msgid "cannot pass rvalue to reference parameter"
msgstr ""
-#: c-typeck.c:4174 c-typeck.c:4241
+#: c-typeck.c:3530 c-typeck.c:3606
#, c-format
msgid "%s makes qualified function pointer from unqualified"
msgstr ""
-#: c-typeck.c:4178 c-typeck.c:4221
+#: c-typeck.c:3534 c-typeck.c:3586
#, c-format
msgid "%s discards qualifiers from pointer target type"
msgstr ""
-#: c-typeck.c:4184
+#: c-typeck.c:3540
msgid "ISO C prohibits argument conversion to union type"
msgstr ""
-#: c-typeck.c:4213
+#: c-typeck.c:3578
#, c-format
msgid "ISO C forbids %s between function pointer and `void *'"
msgstr ""
-#: c-typeck.c:4230
+#: c-typeck.c:3595
#, c-format
msgid "pointer targets in %s differ in signedness"
msgstr ""
-#: c-typeck.c:4246
+#: c-typeck.c:3611
#, c-format
msgid "%s from incompatible pointer type"
msgstr ""
-#: c-typeck.c:4252 c-typeck.c:4804 cp/typeck.c:1653
+#: c-typeck.c:3617 c-typeck.c:4124 cp/typeck.c:1366
msgid "invalid use of non-lvalue array"
msgstr ""
-#: c-typeck.c:4267
+#: c-typeck.c:3631
#, c-format
msgid "%s makes pointer from integer without a cast"
msgstr ""
-#: c-typeck.c:4275
+#: c-typeck.c:3638
#, c-format
msgid "%s makes integer from pointer without a cast"
msgstr ""
-#: c-typeck.c:4289 c-typeck.c:4292
+#: c-typeck.c:3652 c-typeck.c:3655
#, c-format
msgid "incompatible type for argument %d of `%s'"
msgstr ""
-#: c-typeck.c:4296
+#: c-typeck.c:3659
#, c-format
msgid "incompatible type for argument %d of indirect function call"
msgstr ""
-#: c-typeck.c:4300
+#: c-typeck.c:3663
#, c-format
msgid "incompatible types in %s"
msgstr ""
#. Function name is known; supply it.
-#: c-typeck.c:4358
+#: c-typeck.c:3719
#, fuzzy, c-format
msgid "passing arg of `%s'"
msgstr "аргумент Ð´Ð»Ñ \"%s\" прапушчан"
#. Function name unknown (call through ptr).
-#: c-typeck.c:4368
+#: c-typeck.c:3728
#, fuzzy
msgid "passing arg of pointer to function"
msgstr "вельмі шмат аргументаў у функцыі"
#. Function name is known; supply it.
-#: c-typeck.c:4376
+#: c-typeck.c:3736
#, c-format
msgid "passing arg %d of `%s'"
msgstr ""
#. Function name unknown (call through ptr); just give arg number.
-#: c-typeck.c:4386
+#: c-typeck.c:3745
#, c-format
msgid "passing arg %d of pointer to function"
msgstr ""
-#: c-typeck.c:4452
-msgid "initializer for static variable is not constant"
-msgstr ""
-
-#: c-typeck.c:4458
-msgid "initializer for static variable uses complicated arithmetic"
-msgstr ""
-
-#: c-typeck.c:4466
-msgid "aggregate initializer is not constant"
-msgstr ""
-
-#: c-typeck.c:4468
-msgid "aggregate initializer uses complicated arithmetic"
-msgstr ""
-
-#: c-typeck.c:4475
+#: c-typeck.c:3802
msgid "traditional C rejects automatic aggregate initialization"
msgstr ""
-#: c-typeck.c:4654 c-typeck.c:4670 c-typeck.c:4686
+#: c-typeck.c:3973 c-typeck.c:3988 c-typeck.c:4003
#, c-format
msgid "(near initialization for `%s')"
msgstr ""
-#: c-typeck.c:4737 cp/typeck2.c:488
+#: c-typeck.c:4052 cp/typeck2.c:559
msgid "char-array initialized from wide string"
msgstr ""
-#: c-typeck.c:4744 cp/typeck2.c:495
+#: c-typeck.c:4059 cp/typeck2.c:566
msgid "int-array initialized from non-wide string"
msgstr ""
-#: c-typeck.c:4762 cp/typeck2.c:511
+#: c-typeck.c:4077 cp/typeck2.c:581
msgid "initializer-string for array of chars is too long"
msgstr ""
-#: c-typeck.c:4822
+#: c-typeck.c:4147
msgid "array initialized from non-constant array expression"
msgstr ""
-#: c-typeck.c:4839 c-typeck.c:4841 c-typeck.c:4857 c-typeck.c:4878
-#: c-typeck.c:6281
+#: c-typeck.c:4164 c-typeck.c:4166 c-typeck.c:4182 c-typeck.c:4203
+#: c-typeck.c:5585
msgid "initializer element is not constant"
msgstr ""
-#: c-typeck.c:4873
+#: c-typeck.c:4198
msgid "initialization"
msgstr "ініцыÑлізацыÑ"
-#: c-typeck.c:4884 c-typeck.c:6286
+#: c-typeck.c:4209 c-typeck.c:5590
msgid "initializer element is not computable at load time"
msgstr ""
-#: c-typeck.c:4899 cp/typeck2.c:588
+#: c-typeck.c:4224 cp/typeck2.c:658
msgid "invalid initializer"
msgstr "нерÑчаіÑны ініцыÑлізатар"
-#: c-typeck.c:5393
+#: c-typeck.c:4509 cp/decl.c:4465
+msgid "opaque vector types cannot be initialized"
+msgstr ""
+
+#: c-typeck.c:4703
msgid "extra brace group at end of initializer"
msgstr ""
-#: c-typeck.c:5413
+#: c-typeck.c:4723
msgid "missing braces around initializer"
msgstr ""
-#: c-typeck.c:5473
+#: c-typeck.c:4783
msgid "braces around scalar initializer"
msgstr ""
-#: c-typeck.c:5521
+#: c-typeck.c:4830
msgid "initialization of flexible array member in a nested context"
msgstr ""
-#: c-typeck.c:5523
+#: c-typeck.c:4832
msgid "initialization of a flexible array member"
msgstr ""
-#: c-typeck.c:5554
+#: c-typeck.c:4863
msgid "missing initializer"
msgstr "прапушчан ініцыÑлізатар"
-#: c-typeck.c:5580
+#: c-typeck.c:4889
msgid "empty scalar initializer"
msgstr ""
-#: c-typeck.c:5585
+#: c-typeck.c:4894
msgid "extra elements in scalar initializer"
msgstr ""
-#: c-typeck.c:5671
+#: c-typeck.c:4979
msgid "initialization designators may not nest"
msgstr ""
-#: c-typeck.c:5692 c-typeck.c:5763
+#: c-typeck.c:5000 c-typeck.c:5068
msgid "array index in non-array initializer"
msgstr ""
-#: c-typeck.c:5697 c-typeck.c:5817
+#: c-typeck.c:5005 c-typeck.c:5121
msgid "field name not in record or union initializer"
msgstr ""
-#: c-typeck.c:5759 c-typeck.c:5761
+#: c-typeck.c:5064 c-typeck.c:5066
msgid "nonconstant array index in initializer"
msgstr ""
-#: c-typeck.c:5765 c-typeck.c:5768
+#: c-typeck.c:5070 c-typeck.c:5073
msgid "array index in initializer exceeds array bounds"
msgstr ""
-#: c-typeck.c:5779
+#: c-typeck.c:5084
msgid "empty index range in initializer"
msgstr ""
-#: c-typeck.c:5788
+#: c-typeck.c:5093
msgid "array index range in initializer exceeds array bounds"
msgstr ""
-#: c-typeck.c:5829
+#: c-typeck.c:5133
#, c-format
msgid "unknown field `%s' specified in initializer"
msgstr ""
-#: c-typeck.c:5866 c-typeck.c:5887 c-typeck.c:6348
+#: c-typeck.c:5169 c-typeck.c:5190 c-typeck.c:5652
msgid "initialized field with side-effects overwritten"
msgstr ""
-#: c-typeck.c:6558
+#: c-typeck.c:5860
msgid "excess elements in char array initializer"
msgstr ""
-#: c-typeck.c:6565 c-typeck.c:6611
+#: c-typeck.c:5867 c-typeck.c:5913
msgid "excess elements in struct initializer"
msgstr ""
-#: c-typeck.c:6626
+#: c-typeck.c:5928
msgid "non-static initialization of a flexible array member"
msgstr ""
-#: c-typeck.c:6693
+#: c-typeck.c:5995
msgid "excess elements in union initializer"
msgstr ""
-#: c-typeck.c:6714
+#: c-typeck.c:6016
msgid "traditional C rejects initialization of unions"
msgstr ""
-#: c-typeck.c:6777
+#: c-typeck.c:6079
msgid "excess elements in array initializer"
msgstr ""
-#: c-typeck.c:6806
+#: c-typeck.c:6108
msgid "excess elements in vector initializer"
msgstr ""
-#: c-typeck.c:6828
+#: c-typeck.c:6130
msgid "excess elements in scalar initializer"
msgstr ""
-#: c-typeck.c:6935
+#: c-typeck.c:6232
msgid "asm template is not a string constant"
msgstr ""
-#: c-typeck.c:6967
+#: c-typeck.c:6264
msgid "invalid lvalue in asm statement"
msgstr ""
-#: c-typeck.c:7042
+#: c-typeck.c:6336
msgid "modification by `asm'"
msgstr ""
-#: c-typeck.c:7061 cp/typeck.c:6237
+#: c-typeck.c:6354 cp/typeck.c:5926
msgid "function declared `noreturn' has a `return' statement"
msgstr ""
-#: c-typeck.c:7068
+#: c-typeck.c:6361
msgid "`return' with no value, in function returning non-void"
msgstr ""
-#: c-typeck.c:7074
+#: c-typeck.c:6367
msgid "`return' with a value, in function returning void"
msgstr ""
-#: c-typeck.c:7078
+#: c-typeck.c:6371
msgid "return"
msgstr "вÑртанне"
-#: c-typeck.c:7130
+#: c-typeck.c:6423
msgid "function returns address of local variable"
msgstr ""
-#: c-typeck.c:7186 cp/semantics.c:555
+#: c-typeck.c:6478 cp/semantics.c:749
msgid "switch quantity not an integer"
msgstr ""
-#: c-typeck.c:7196
+#: c-typeck.c:6488
msgid "`long' switch expression not converted to `int' in ISO C"
msgstr ""
-#: c-typeck.c:7231 cp/decl.c:5523
+#: c-typeck.c:6529 cp/parser.c:5538
msgid "case label not within a switch statement"
msgstr ""
-#: c-typeck.c:7233 cp/decl.c:5528
+#: c-typeck.c:6531
msgid "`default' label not within a switch statement"
msgstr ""
-#: calls.c:1934 tree-inline.c:1177
-#, c-format
-msgid "inlining failed in call to `%s'"
+#: c-typeck.c:6683 c-typeck.c:6717
+msgid "division by zero"
msgstr ""
-#: calls.c:1935 calls.c:2271 tree-inline.c:1178
+#: c-typeck.c:6762 cp/typeck.c:2928
+msgid "right shift count is negative"
+msgstr ""
+
+#: c-typeck.c:6769 cp/typeck.c:2934
+msgid "right shift count >= width of type"
+msgstr ""
+
+#: c-typeck.c:6790 cp/typeck.c:2953
+msgid "left shift count is negative"
+msgstr ""
+
+#: c-typeck.c:6793 cp/typeck.c:2955
+msgid "left shift count >= width of type"
+msgstr ""
+
+#: c-typeck.c:6814
+msgid "shift count is negative"
+msgstr ""
+
+#: c-typeck.c:6816
+msgid "shift count >= width of type"
+msgstr ""
+
+#: c-typeck.c:6833 cp/typeck.c:2990
+msgid "comparing floating point with == or != is unsafe"
+msgstr ""
+
+#: c-typeck.c:6859 c-typeck.c:6865
+msgid "ISO C forbids comparison of `void *' with function pointer"
+msgstr ""
+
+#: c-typeck.c:6868 c-typeck.c:6908 c-typeck.c:6936
+msgid "comparison of distinct pointer types lacks a cast"
+msgstr ""
+
+#: c-typeck.c:6882 c-typeck.c:6887 c-typeck.c:6956 c-typeck.c:6961
+msgid "comparison between pointer and integer"
+msgstr ""
+
+#: c-typeck.c:6903 c-typeck.c:6931
+msgid "ISO C forbids ordered comparisons of pointers to functions"
+msgstr ""
+
+#: c-typeck.c:6928
+msgid "comparison of complete and incomplete pointers"
+msgstr ""
+
+#: c-typeck.c:6944 c-typeck.c:6951
+msgid "ordered comparison of pointer with integer zero"
+msgstr ""
+
+#: c-typeck.c:6975 cp/typeck.c:3126
+msgid "unordered comparison on non-floating point argument"
+msgstr ""
+
+#: c-typeck.c:7185
+msgid "comparison between signed and unsigned"
+msgstr ""
+
+#: c-typeck.c:7231 cp/typeck.c:3373
+msgid "comparison of promoted ~unsigned with constant"
+msgstr ""
+
+#: c-typeck.c:7239 cp/typeck.c:3381
+msgid "comparison of promoted ~unsigned with unsigned"
+msgstr ""
+
+#: calls.c:1838
+msgid "%Jinlining failed in call to '%F'"
+msgstr ""
+
+#: calls.c:1839 calls.c:2208 tree-inline.c:1339 tree-inline.c:1346
msgid "called from here"
msgstr "выклікана адÑюль"
-#: calls.c:2270
-#, c-format
-msgid "can't inline call to `%s'"
+#: calls.c:2207
+msgid "%Jcan't inline call to '%F'"
msgstr ""
-#: calls.c:2300
+#: calls.c:2216
+msgid "ignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2229
+msgid "ignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2239
msgid "function call has aggregate value"
msgstr ""
-#: cfgloop.c:1107
+#: cfg.c:835
#, c-format
-msgid "Size of loop %d should be %d, not %d."
+msgid "bb %d on wrong place"
msgstr ""
-#: cfgloop.c:1126
+#: cfg.c:841
#, c-format
-msgid "Bb %d do not belong to loop %d."
+msgid "prev_bb of %d should be %d, not %d"
msgstr ""
-#: cfgloop.c:1144
+#: cfg.c:857
#, c-format
-msgid "Loop %d's header does not have exactly 2 entries."
+msgid "verify_flow_info: Wrong count of block %i %i"
msgstr ""
-#: cfgloop.c:1152
+#: cfg.c:863
#, c-format
-msgid "Loop %d's latch does not have exactly 1 successor."
+msgid "verify_flow_info: Wrong frequency of block %i %i"
msgstr ""
-#: cfgloop.c:1157
+#: cfg.c:871
#, c-format
-msgid "Loop %d's latch does not have header as successor."
+msgid "verify_flow_info: Duplicate edge %i->%i"
msgstr ""
-#: cfgloop.c:1162
+#: cfg.c:877
#, c-format
-msgid "Loop %d's latch does not belong directly to it."
+msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
msgstr ""
-#: cfgloop.c:1168
+#: cfg.c:883
#, c-format
-msgid "Loop %d's header does not belong directly to it."
+msgid "verify_flow_info: Wrong count of edge %i->%i %i"
msgstr ""
-#: cfgrtl.c:1774
+#: cfg.c:895
#, c-format
-msgid "bb %d on wrong place"
+msgid "verify_flow_info: Basic block %d succ edge is corrupted"
msgstr ""
-#: cfgrtl.c:1780
+#: cfg.c:909 cfgrtl.c:1971
#, c-format
-msgid "prev_bb of %d should be %d, not %d"
+msgid "Wrong amount of branch edges after unconditional jump %i"
msgstr ""
-#: cfgrtl.c:1800
+#: cfg.c:917
#, c-format
-msgid "end insn %d for block %d not found in the insn stream"
+msgid "basic block %d pred edge is corrupted"
msgstr ""
-#: cfgrtl.c:1814
+#: cfg.c:943
#, c-format
-msgid "insn %d is in multiple basic blocks (%d and %d)"
+msgid "basic block %i edge lists are corrupted"
+msgstr ""
+
+#: cfg.c:955
+msgid "verify_flow_info failed"
msgstr ""
-#: cfgrtl.c:1826
+#: cfgloop.c:1134
#, c-format
-msgid "head insn %d for block %d not found in the insn stream"
+msgid "Size of loop %d should be %d, not %d."
+msgstr ""
+
+#: cfgloop.c:1153
+#, c-format
+msgid "Bb %d do not belong to loop %d."
msgstr ""
-#: cfgrtl.c:1848
+#: cfgloop.c:1171
#, c-format
-msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
+msgid "Loop %d's header does not have exactly 2 entries."
msgstr ""
-#: cfgrtl.c:1855
+#: cfgloop.c:1179
#, c-format
-msgid "verify_flow_info: Wrong count of block %i %i"
+msgid "Loop %d's latch does not have exactly 1 successor."
msgstr ""
-#: cfgrtl.c:1861
+#: cfgloop.c:1184
#, c-format
-msgid "verify_flow_info: Wrong frequency of block %i %i"
+msgid "Loop %d's latch does not have header as successor."
msgstr ""
-#: cfgrtl.c:1869
+#: cfgloop.c:1189
#, c-format
-msgid "verify_flow_info: Duplicate edge %i->%i"
+msgid "Loop %d's latch does not belong directly to it."
msgstr ""
-#: cfgrtl.c:1875
+#: cfgloop.c:1195
#, c-format
-msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+msgid "Loop %d's header does not belong directly to it."
msgstr ""
-#: cfgrtl.c:1881
+#: cfgloop.c:1201
#, c-format
-msgid "verify_flow_info: Wrong count of edge %i->%i %i"
+msgid "Loop %d's latch is marked as part of irreducible region."
msgstr ""
-#: cfgrtl.c:1911
+#: cfgloop.c:1231
#, c-format
-msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgid "Basic block %d should be marked irreducible."
msgstr ""
-#: cfgrtl.c:1926
+#: cfgloop.c:1237
#, c-format
-msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgid "Basic block %d should not be marked irreducible."
msgstr ""
-#: cfgrtl.c:1928
-msgid "wrong insn in the fallthru edge"
+#: cfgloop.c:1245
+#, c-format
+msgid "Edge from %d to %d should be marked irreducible."
msgstr ""
-#: cfgrtl.c:1935
+#: cfgloop.c:1252
#, c-format
-msgid "verify_flow_info: Basic block %d succ edge is corrupted"
+msgid "Edge from %d to %d should not be marked irreducible."
msgstr ""
-#: cfgrtl.c:1951
+#: cfgrtl.c:1877
#, c-format
-msgid "Missing REG_EH_REGION note in the end of bb %i"
+msgid "end insn %d for block %d not found in the insn stream"
msgstr ""
-#: cfgrtl.c:1959
+#: cfgrtl.c:1891
#, c-format
-msgid "Too many outgoing branch edges from bb %i"
+msgid "insn %d is in multiple basic blocks (%d and %d)"
msgstr ""
-#: cfgrtl.c:1964
+#: cfgrtl.c:1903
#, c-format
-msgid "Fallthru edge after unconditional jump %i"
+msgid "head insn %d for block %d not found in the insn stream"
+msgstr ""
+
+#: cfgrtl.c:1925
+msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i"
msgstr ""
-#: cfgrtl.c:1969
+#: cfgrtl.c:1953
#, c-format
-msgid "Wrong amount of branch edges after unconditional jump %i"
+msgid "Missing REG_EH_REGION note in the end of bb %i"
msgstr ""
-#: cfgrtl.c:1975
+#: cfgrtl.c:1961
#, c-format
-msgid "Wrong amount of branch edges after conditional jump %i"
+msgid "Too many outgoing branch edges from bb %i"
msgstr ""
-#: cfgrtl.c:1980
+#: cfgrtl.c:1966
#, c-format
-msgid "Call edges for non-call insn in bb %i"
+msgid "Fallthru edge after unconditional jump %i"
msgstr ""
-#: cfgrtl.c:1989
+#: cfgrtl.c:1977
#, c-format
-msgid "Abnormal edges for no purpose in bb %i"
+msgid "Wrong amount of branch edges after conditional jump %i"
msgstr ""
-#: cfgrtl.c:2004
+#: cfgrtl.c:1982
#, c-format
-msgid "missing barrier after block %i"
+msgid "Call edges for non-call insn in bb %i"
msgstr ""
-#: cfgrtl.c:2014
+#: cfgrtl.c:1991
#, c-format
-msgid "basic block %d pred edge is corrupted"
+msgid "Abnormal edges for no purpose in bb %i"
msgstr ""
-#: cfgrtl.c:2031
+#: cfgrtl.c:2001
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is NULL"
msgstr ""
-#: cfgrtl.c:2035
+#: cfgrtl.c:2005
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is %i"
msgstr ""
-#: cfgrtl.c:2049 cfgrtl.c:2059
+#: cfgrtl.c:2019 cfgrtl.c:2029
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
msgstr ""
-#: cfgrtl.c:2072
+#: cfgrtl.c:2042
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
msgstr ""
-#: cfgrtl.c:2084
+#: cfgrtl.c:2052
#, c-format
msgid "in basic block %d:"
msgstr ""
-#: cfgrtl.c:2085
+#: cfgrtl.c:2053
msgid "flow control insn inside a basic block"
msgstr ""
-#: cfgrtl.c:2104
+#: cfgrtl.c:2099
#, c-format
-msgid "basic block %i edge lists are corrupted"
+msgid "missing barrier after block %i"
+msgstr ""
+
+#: cfgrtl.c:2112
+#, c-format
+msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgstr ""
+
+#: cfgrtl.c:2127
+#, c-format
+msgid "verify_flow_info: Incorrect fallthru %i->%i"
msgstr ""
-#: cfgrtl.c:2119
-msgid "basic blocks not numbered consecutively"
+#: cfgrtl.c:2129
+msgid "wrong insn in the fallthru edge"
msgstr ""
-#: cfgrtl.c:2144
+#: cfgrtl.c:2146
+msgid "basic blocks not laid down consecutively"
+msgstr ""
+
+#: cfgrtl.c:2171
msgid "insn outside basic block"
msgstr ""
-#: cfgrtl.c:2152
+#: cfgrtl.c:2179
msgid "return not followed by barrier"
msgstr ""
-#: cfgrtl.c:2157
+#: cfgrtl.c:2186
#, c-format
msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr ""
-#: cfgrtl.c:2161
-msgid "verify_flow_info failed"
+#: cgraph.c:161
+msgid "function body not available"
+msgstr ""
+
+#: cgraph.c:163 cgraphunit.c:341
+msgid "redefined extern inline functions are not considered for inlining"
+msgstr ""
+
+#: cgraph.c:166 cgraphunit.c:346
+#, fuzzy
+msgid "function not considered for inlining"
+msgstr "Ð²Ñ–Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ñ‹Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ– не могуць быць ÑÑброўÑкімі"
+
+#: cgraph.c:168 cgraphunit.c:344
+msgid "function not inlinable"
+msgstr ""
+
+#: cgraph.c:476
+msgid "%D renamed after being referenced in assembly"
+msgstr ""
+
+#: cgraphunit.c:1042
+msgid "--param large-function-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1055
+msgid "--param large-function-growth limit reached while inlining the caller"
msgstr ""
-#: collect2.c:425
+#: cgraphunit.c:1120
+msgid "--param max-inline-insns-single limit reached"
+msgstr ""
+
+#: cgraphunit.c:1144
+msgid "--param max-inline-insns-single limit reached after inlining into the callee"
+msgstr ""
+
+#: cgraphunit.c:1221
+msgid "--param inline-unit-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1293 cgraphunit.c:1437
+msgid "recursive inlining"
+msgstr ""
+
+#: collect2.c:406
msgid "internal error"
msgstr "ÑƒÐ½ÑƒÑ‚Ñ€Ð°Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°"
-#: collect2.c:934
+#: collect2.c:894
msgid "no arguments"
msgstr "нÑма аргументаў"
-#: collect2.c:1263 collect2.c:1411 collect2.c:1444
+#: collect2.c:1226 collect2.c:1374 collect2.c:1407
#, c-format
msgid "fopen %s"
msgstr ""
-#: collect2.c:1266 collect2.c:1416 collect2.c:1447
+#: collect2.c:1229 collect2.c:1379 collect2.c:1410
#, c-format
msgid "fclose %s"
msgstr ""
-#: collect2.c:1275
+#: collect2.c:1238
#, c-format
msgid "collect2 version %s"
msgstr ""
-#: collect2.c:1365
+#: collect2.c:1328
#, c-format
msgid "%d constructor(s) found\n"
msgstr "%d канÑтруктар(аў) знойдзен(а)\n"
-#: collect2.c:1366
+#: collect2.c:1329
#, c-format
msgid "%d destructor(s) found\n"
msgstr "%d дÑÑтруктар(аў) знойдзен(а)\n"
-#: collect2.c:1367
+#: collect2.c:1330
#, c-format
msgid "%d frame table(s) found\n"
msgstr ""
-#: collect2.c:1508
+#: collect2.c:1470
#, c-format
msgid "%s terminated with signal %d [%s]%s"
msgstr ""
-#: collect2.c:1527
+#: collect2.c:1488
#, c-format
msgid "%s returned %d exit status"
msgstr ""
-#: collect2.c:1555
+#: collect2.c:1513
#, c-format
msgid "[cannot find %s]"
msgstr "[нельга знайÑці %s]"
-#: collect2.c:1570
+#: collect2.c:1528
#, c-format
msgid "cannot find `%s'"
msgstr "нельга знайÑці \"%s\""
-#: collect2.c:1581 collect2.c:1584
+#: collect2.c:1539 collect2.c:1542
#, c-format
msgid "redirecting stdout: %s"
msgstr "перанакіраванне stdout: %s"
-#: collect2.c:1627
+#: collect2.c:1581
#, c-format
msgid "[Leaving %s]\n"
msgstr ""
-#: collect2.c:1870
+#: collect2.c:1801
#, c-format
msgid ""
"\n"
"write_c_file - output name is %s, prefix is %s\n"
msgstr ""
-#: collect2.c:2082
+#: collect2.c:2005
msgid "cannot find `nm'"
msgstr "нельга знайÑці \"nm\""
-#: collect2.c:2092 collect2.c:2533
+#: collect2.c:2015 collect2.c:2444
msgid "pipe"
msgstr "канвеер"
-#: collect2.c:2096 collect2.c:2537
+#: collect2.c:2019 collect2.c:2448
msgid "fdopen"
msgstr ""
-#: collect2.c:2122 collect2.c:2563
+#: collect2.c:2045 collect2.c:2474
#, c-format
msgid "dup2 %d 1"
msgstr ""
-#: collect2.c:2125 collect2.c:2128 collect2.c:2141 collect2.c:2566
-#: collect2.c:2569 collect2.c:2582
+#: collect2.c:2048 collect2.c:2051 collect2.c:2064 collect2.c:2477
+#: collect2.c:2480 collect2.c:2493
#, c-format
msgid "close %d"
msgstr ""
-#: collect2.c:2131 collect2.c:2572
+#: collect2.c:2054 collect2.c:2483
#, c-format
msgid "execv %s"
msgstr ""
-#: collect2.c:2185
+#: collect2.c:2108
#, c-format
msgid "init function found in object %s"
msgstr ""
-#: collect2.c:2193
+#: collect2.c:2116
#, c-format
msgid "fini function found in object %s"
msgstr ""
-#: collect2.c:2216 collect2.c:2621
+#: collect2.c:2139 collect2.c:2532
msgid "fclose"
msgstr ""
-#: collect2.c:2261
+#: collect2.c:2181
#, c-format
msgid "unable to open file '%s'"
msgstr "немагу адчыніць файл \"%s\""
-#: collect2.c:2263
+#: collect2.c:2183
#, c-format
msgid "unable to stat file '%s'"
msgstr ""
-#: collect2.c:2269
+#: collect2.c:2189
#, c-format
msgid "unable to mmap file '%s'"
msgstr ""
-#: collect2.c:2422
+#: collect2.c:2335
msgid "not found\n"
msgstr "не знойдзена\n"
-#: collect2.c:2424 collect2.c:2600
+#: collect2.c:2337 collect2.c:2511
#, c-format
msgid "dynamic dependency %s not found"
msgstr ""
-#: collect2.c:2444
+#: collect2.c:2356
#, c-format
msgid "bad magic number in file '%s'"
msgstr "дрÑÐ½Ð½Ð°Ñ Ð¼Ð°Ð³Ñ–Ñ‡Ð½Ð°Ñ Ð»Ñ–Ñ‡Ð±Ð° Ñž файле \"%s\""
-#: collect2.c:2466
+#: collect2.c:2378
msgid "dynamic dependencies.\n"
msgstr ""
-#: collect2.c:2524
+#: collect2.c:2435
msgid "cannot find `ldd'"
msgstr "не магу знайÑці \"ldd\""
-#: collect2.c:2585
+#: collect2.c:2496
msgid ""
"\n"
"ldd output with constructors/destructors.\n"
msgstr ""
-#: collect2.c:2612
+#: collect2.c:2523
#, c-format
msgid "unable to open dynamic dependency '%s'"
msgstr ""
-#: collect2.c:2726
+#: collect2.c:2683
#, c-format
msgid "%s: not a COFF file"
msgstr ""
-#: collect2.c:2845
+#: collect2.c:2802
#, c-format
msgid "%s: cannot open as COFF file"
msgstr ""
-#: collect2.c:2901
+#: collect2.c:2857
#, fuzzy, c-format
msgid "library lib%s not found"
msgstr "БібліÑÑ‚Ñка lib%s не знойдзена"
-#: collect2.c:3028
+#: combine.c:13027
#, c-format
-msgid "open %s"
-msgstr ""
-
-#: collect2.c:3051
-msgid "incompatibilities between object file & expected values"
+msgid ""
+";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
+"\n"
msgstr ""
-#: collect2.c:3124
+#: combine.c:13036
#, c-format
msgid ""
"\n"
-"Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
msgstr ""
-#: collect2.c:3133
-msgid "string section missing"
+#: convert.c:70
+msgid "cannot convert to a pointer type"
msgstr ""
-#: collect2.c:3136
-msgid "section pointer missing"
+#: convert.c:267
+msgid "pointer value used where a floating point value was expected"
msgstr ""
-#: collect2.c:3184
-msgid "no symbol table found"
+#: convert.c:271
+msgid "aggregate value used where a float was expected"
msgstr ""
-#: collect2.c:3197
-msgid "no cmd_strings found"
+#: convert.c:296
+msgid "conversion to incomplete type"
msgstr ""
-#: collect2.c:3209
-msgid ""
-"\n"
-"Updating header and load commands.\n"
-"\n"
+#: convert.c:600 convert.c:678
+msgid "can't convert between vector values of different size"
msgstr ""
-#: collect2.c:3216
-#, c-format
-msgid "load command map, %d cmds, new size %ld.\n"
+#: convert.c:606
+msgid "aggregate value used where an integer was expected"
msgstr ""
-#: collect2.c:3247
-msgid ""
-"writing load commands.\n"
-"\n"
+#: convert.c:657 f/com.c:1101
+msgid "pointer value used where a complex was expected"
msgstr ""
-#: collect2.c:3267
-#, c-format
-msgid "close %s"
+#: convert.c:661 f/com.c:1103
+msgid "aggregate value used where a complex was expected"
msgstr ""
-#: collect2.c:3341
-msgid "could not convert 0x%l.8x into a region"
+#: convert.c:684
+msgid "can't convert value to a vector"
msgstr ""
-#: collect2.c:3345
+#: coverage.c:164
+#, fuzzy, c-format
+msgid "`%s' is not a gcov data file"
+msgstr "\"%s\" звычайна функцыÑ"
+
+#: coverage.c:175
#, c-format
-msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
+msgid "`%s' is version `%.4s', expected version `%.4s'"
msgstr ""
-#: collect2.c:3472
-msgid "bad magic number"
-msgstr "дрÑнны \"магічны\" нумар"
-
-#: collect2.c:3473
-msgid "bad header version"
-msgstr "дрÑÐ½Ð½Ð°Ñ Ð²ÐµÑ€ÑÑ–Ñ Ð·Ð°Ð³Ð°Ð»Ð¾ÑžÐºÐ°"
-
-#: collect2.c:3474
-msgid "bad raw header version"
+#: coverage.c:255 coverage.c:263
+#, c-format
+msgid "coverage mismatch for function %u while reading execution counters."
msgstr ""
-#: collect2.c:3475
-msgid "raw header buffer too small"
+#: coverage.c:257 coverage.c:340
+#, c-format
+msgid "checksum is %x instead of %x"
msgstr ""
-#: collect2.c:3476
-msgid "old raw header file"
+#: coverage.c:265 coverage.c:348
+#, c-format
+msgid "number of counters is %d instead of %d"
msgstr ""
-#: collect2.c:3477
-msgid "unsupported version"
-msgstr "Ð½ÐµÐ¿Ð°Ð´Ñ‚Ñ€Ñ‹Ð¼Ð»Ñ–Ð²Ð°ÐµÐ¼Ð°Ñ Ð²ÐµÑ€ÑÑ–Ñ"
-
-#: collect2.c:3479
+#: coverage.c:271
#, c-format
-msgid "unknown {de,en}code_mach_o_hdr return value %d"
+msgid "cannot merge separate %s counters for function %u"
msgstr ""
-#: collect2.c:3499
+#: coverage.c:296
#, c-format
-msgid "fstat %s"
+msgid "`%s' has overflowed"
msgstr ""
-#: collect2.c:3536 collect2.c:3584
+#: coverage.c:296
#, c-format
-msgid "lseek %s 0"
+msgid "`%s' is corrupted"
msgstr ""
-#: collect2.c:3540
+#: coverage.c:319
#, c-format
-msgid "read %s"
+msgid "file %s not found, execution counts assumed to be zero"
msgstr ""
-#: collect2.c:3543
+#: coverage.c:329
+#, fuzzy, c-format
+msgid "no coverage for function '%s' found."
+msgstr "у функцыі \"%s\":"
+
+#: coverage.c:337 coverage.c:345
#, c-format
-msgid "read %ld bytes, expected %ld, from %s"
+msgid "coverage mismatch for function '%s' while reading counter '%s'."
msgstr ""
-#: collect2.c:3564
+#: coverage.c:492
+#, fuzzy, c-format
+msgid "cannot open %s"
+msgstr "немагчыма адчыніць %s"
+
+#: coverage.c:527
+#, fuzzy, c-format
+msgid "error writing `%s'"
+msgstr "памылка запіÑу Ñž %s"
+
+#. XXX should be DL_SORRY
+#: cppcharset.c:653
#, c-format
-msgid "msync %s"
+msgid "conversion from %s to %s not supported by iconv"
+msgstr ""
+
+#: cppcharset.c:656
+msgid "iconv_open"
msgstr ""
-#: collect2.c:3571
+#. XXX should be DL_SORRY
+#: cppcharset.c:664
#, c-format
-msgid "munmap %s"
+msgid "no iconv implementation, cannot convert from %s to %s"
msgstr ""
-#: collect2.c:3588
+#: cppcharset.c:808
+msgid "universal character names are only valid in C++ and C99"
+msgstr ""
+
+#: cppcharset.c:811
#, c-format
-msgid "write %s"
+msgid "the meaning of '\\%c' is different in traditional C"
msgstr ""
-#: collect2.c:3591
+#: cppcharset.c:837
#, c-format
-msgid "wrote %ld bytes, expected %ld, to %s"
+msgid "incomplete universal character name %.*s"
msgstr ""
-#: combine.c:13222
+#: cppcharset.c:849
+#, fuzzy, c-format
+msgid "%.*s is not a valid universal character"
+msgstr "\"%s\" - гÑта не пачатак дÑкларацыі"
+
+#: cppcharset.c:859
#, c-format
-msgid ""
-";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
-"\n"
+msgid "universal character %.*s is not valid in an identifier"
msgstr ""
-#: combine.c:13232
+#: cppcharset.c:863
#, c-format
-msgid ""
-"\n"
-";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
+msgid "universal character %.*s is not valid at the start of an identifier"
msgstr ""
-#: convert.c:69
-msgid "cannot convert to a pointer type"
+#: cppcharset.c:898
+msgid "converting UCN to source character set"
msgstr ""
-#: convert.c:102
-msgid "pointer value used where a floating point value was expected"
+#: cppcharset.c:902
+msgid "converting UCN to execution character set"
msgstr ""
-#: convert.c:106
-msgid "aggregate value used where a float was expected"
+#: cppcharset.c:967
+msgid "the meaning of '\\x' is different in traditional C"
msgstr ""
-#: convert.c:132
-msgid "conversion to incomplete type"
+#: cppcharset.c:984 f/lex.c:580
+msgid "\\x used with no following hex digits"
msgstr ""
-#: convert.c:414 convert.c:494
-msgid "can't convert between vector values of different size"
+#: cppcharset.c:991
+msgid "hex escape sequence out of range"
msgstr ""
-#: convert.c:420
-msgid "aggregate value used where an integer was expected"
+#: cppcharset.c:1030
+msgid "octal escape sequence out of range"
msgstr ""
-#: convert.c:472 f/com.c:1100
-msgid "pointer value used where a complex was expected"
+#: cppcharset.c:1098
+msgid "the meaning of '\\a' is different in traditional C"
msgstr ""
-#: convert.c:476 f/com.c:1102
-msgid "aggregate value used where a complex was expected"
+#: cppcharset.c:1105
+#, c-format
+msgid "non-ISO-standard escape sequence, '\\%c'"
msgstr ""
-#: convert.c:500
-msgid "can't convert value to a vector"
+#: cppcharset.c:1113
+#, c-format
+msgid "unknown escape sequence '\\%c'"
+msgstr "невÑÐ´Ð¾Ð¼Ð°Ñ ESC-паÑлÑдоўнаÑць '\\%c'"
+
+#: cppcharset.c:1116
+#, fuzzy, c-format
+msgid "unknown escape sequence: '\\%03o'"
+msgstr "невÑÐ´Ð¾Ð¼Ð°Ñ ESC-паÑлÑдоўнаÑць '\\%c'"
+
+#: cppcharset.c:1122
+msgid "converting escape sequence to execution character set"
+msgstr ""
+
+#: cppcharset.c:1181
+msgid "converting to execution character set"
+msgstr ""
+
+#: cppcharset.c:1244 cppcharset.c:1307
+#, fuzzy
+msgid "character constant too long for its type"
+msgstr "ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ð°Ñ ÐºÐ°Ð½Ñтанта вельмі доўгаÑ"
+
+#: cppcharset.c:1247
+msgid "multi-character character constant"
+msgstr "мнагаÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ð°Ñ ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ð°Ñ ÐºÐ°Ð½Ñтанта"
+
+#: cppcharset.c:1339
+msgid "empty character constant"
+msgstr "пуÑÑ‚Ð°Ñ ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ð°Ñ ÐºÐ°Ð½Ñтанта"
+
+#: cppcharset.c:1378
+#, c-format
+msgid "failure to convert %s to %s"
msgstr ""
-#: cpperror.c:113
+#: cpperror.c:110 diagnostic.def:5
msgid "warning: "
msgstr ""
-#: cpperror.c:115
+#: cpperror.c:112
msgid "internal error: "
msgstr ""
-#: cpperror.c:189
+#: cpperror.c:174
#, fuzzy
msgid "stdout"
msgstr "Ñтруктура"
-#: cpperror.c:191 gcc.c:6428
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#: cppexp.c:199
+#: cppexp.c:192
msgid "too many decimal points in number"
msgstr ""
-#: cppexp.c:219
+#: cppexp.c:212
#, fuzzy, c-format
msgid "invalid digit \"%c\" in octal constant"
msgstr "`%E' - нерÑчаіÑÐ½Ð°Ñ Ð½ÑÐ·ÑŒÐ¼ÐµÐ½Ð½Ð°Ñ Ñ‚Ñ‹Ð¿Ñƒ string"
-#: cppexp.c:225
+#: cppexp.c:218
msgid "use of C99 hexadecimal floating constant"
msgstr ""
-#: cppexp.c:234
+#: cppexp.c:227
msgid "exponent has no digits"
msgstr ""
-#: cppexp.c:241
+#: cppexp.c:234
msgid "hexadecimal floating constants require an exponent"
msgstr ""
-#: cppexp.c:247
+#: cppexp.c:240
#, fuzzy, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "`%E' - нерÑчаіÑÐ½Ð°Ñ Ð½ÑÐ·ÑŒÐ¼ÐµÐ½Ð½Ð°Ñ Ñ‚Ñ‹Ð¿Ñƒ string"
-#: cppexp.c:257 cppexp.c:282
+#: cppexp.c:250 cppexp.c:275
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr ""
-#: cppexp.c:268
+#: cppexp.c:261
#, fuzzy, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "`%E' - нерÑчаіÑÐ½Ð°Ñ Ð½ÑÐ·ÑŒÐ¼ÐµÐ½Ð½Ð°Ñ Ñ‚Ñ‹Ð¿Ñƒ string"
-#: cppexp.c:289
+#: cppexp.c:283
msgid "use of C99 long long integer constant"
msgstr ""
-#: cppexp.c:295
+#: cppexp.c:290
msgid "imaginary constants are a GCC extension"
msgstr ""
-#: cppexp.c:383
+#: cppexp.c:376
msgid "integer constant is too large for its type"
msgstr ""
-#: cppexp.c:395
+#: cppexp.c:388
msgid "integer constant is so large that it is unsigned"
msgstr ""
-#: cppexp.c:482
+#: cppexp.c:470
msgid "missing ')' after \"defined\""
msgstr ""
-#: cppexp.c:489
+#: cppexp.c:477
msgid "operator \"defined\" requires an identifier"
msgstr ""
-#: cppexp.c:497
+#: cppexp.c:485
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr ""
-#: cppexp.c:507
+#: cppexp.c:495
msgid "this use of \"defined\" may not be portable"
msgstr ""
-#: cppexp.c:545
+#: cppexp.c:531
msgid "floating constant in preprocessor expression"
msgstr ""
-#: cppexp.c:551
+#: cppexp.c:537
msgid "imaginary number in preprocessor expression"
msgstr ""
-#: cppexp.c:596
-#, c-format
-msgid "ISO C++ does not permit \"%s\" in #if"
-msgstr ""
-
-#: cppexp.c:604
+#: cppexp.c:582
#, c-format
msgid "\"%s\" is not defined"
msgstr ""
-#: cppexp.c:737 cppexp.c:772
+#: cppexp.c:714 cppexp.c:743
#, fuzzy, c-format
msgid "missing binary operator before token \"%s\""
msgstr "прапушчан прабел паÑÐ»Ñ Ð½ÑƒÐ¼Ð°Ñ€Ð° \"%.*s\""
-#: cppexp.c:756
-#, c-format
-msgid "invalid character '%c' in #if"
-msgstr ""
-
-#: cppexp.c:758
-#, c-format
-msgid "invalid character '\\%03o' in #if"
-msgstr ""
-
-#: cppexp.c:763
+#: cppexp.c:734
#, c-format
msgid "token \"%s\" is not valid in preprocessor expressions"
msgstr ""
-#: cppexp.c:782
+#: cppexp.c:753
msgid "void expression between '(' and ')'"
msgstr ""
-#: cppexp.c:785
+#: cppexp.c:756
msgid "#if with no expression"
msgstr ""
-#: cppexp.c:787
+#: cppexp.c:758
#, c-format
msgid "operator '%s' has no right operand"
msgstr ""
-#: cppexp.c:813
+#: cppexp.c:784
msgid " ':' without preceding '?'"
msgstr ""
-#: cppexp.c:840
+#: cppexp.c:811
msgid "unbalanced stack in #if"
msgstr ""
-#: cppexp.c:862
+#: cppexp.c:830
#, fuzzy, c-format
msgid "impossible operator '%u'"
msgstr "немагчымы апÑратар '%s'"
-#: cppexp.c:954
+#: cppexp.c:922
msgid "missing ')' in expression"
msgstr ""
-#: cppexp.c:975
+#: cppexp.c:943
msgid "'?' without following ':'"
msgstr ""
-#: cppexp.c:985
+#: cppexp.c:953
msgid "integer overflow in preprocessor expression"
msgstr ""
-#: cppexp.c:990
+#: cppexp.c:958
msgid "missing '(' in expression"
msgstr ""
-#: cppexp.c:1026
+#: cppexp.c:990
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr ""
-#: cppexp.c:1031
+#: cppexp.c:995
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr ""
-#: cppexp.c:1414
+#: cppexp.c:1352
msgid "comma operator in operand of #if"
msgstr ""
-#: cppexp.c:1551
+#: cppexp.c:1483
msgid "division by zero in #if"
msgstr ""
-#: cppfiles.c:411
-#, c-format
-msgid "%s is too large"
-msgstr "%s - вельмі вÑлікі"
+#: cppfiles.c:370
+msgid "NULL directory in find_file"
+msgstr ""
-#: cppfiles.c:447
-#, c-format
-msgid "%s is shorter than expected"
+#: cppfiles.c:397
+msgid "one or more PCH files were found, but they were invalid"
msgstr ""
-#: cppfiles.c:461
+#: cppfiles.c:400
+msgid "use -Winvalid-pch for more information"
+msgstr ""
+
+#: cppfiles.c:458
#, c-format
msgid "%s is a block device"
msgstr "%s - гÑта Ð±Ð»Ñ‘Ñ‡Ð½Ð°Ñ Ð¿Ñ€Ñ‹Ð»Ð°Ð´Ð°"
-#: cppfiles.c:594
+#: cppfiles.c:475
#, c-format
-msgid "no include path in which to find %s"
-msgstr ""
-
-#: cppfiles.c:668
-msgid "Multiple include guards may be useful for:\n"
-msgstr ""
-
-#: cppfiles.c:1014
-msgid "absolute file name in remap_filename"
-msgstr ""
+msgid "%s is too large"
+msgstr "%s - вельмі вÑлікі"
-#: cppinit.c:224
+#: cppfiles.c:510
#, c-format
-msgid "ignoring nonexistent directory \"%s\"\n"
+msgid "%s is shorter than expected"
msgstr ""
-#: cppinit.c:231
-#, c-format
-msgid "%s: Not a directory"
-msgstr "%s: не дырÑкторыÑ"
-
-#: cppinit.c:287
+#: cppfiles.c:696
#, c-format
-msgid "ignoring duplicate directory \"%s\"\n"
+msgid "no include path in which to search for %s"
msgstr ""
-#: cppinit.c:325
-msgid " as it is a non-system directory that duplicates a system directory\n"
+#: cppfiles.c:956
+msgid "Multiple include guards may be useful for:\n"
msgstr ""
-#: cppinit.c:891
+#: cppinit.c:387
msgid "cppchar_t must be an unsigned type"
msgstr ""
-#: cppinit.c:895
+#: cppinit.c:391
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr ""
-#: cppinit.c:901
+#: cppinit.c:398
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr ""
-#: cppinit.c:904
+#: cppinit.c:401
msgid "target char is less than 8 bits wide"
msgstr ""
-#: cppinit.c:908
+#: cppinit.c:405
msgid "target wchar_t is narrower than target char"
msgstr ""
-#: cppinit.c:912
+#: cppinit.c:409
msgid "target int is narrower than target char"
msgstr ""
-#: cppinit.c:916
+#: cppinit.c:414
msgid "CPP half-integer narrower than CPP character"
msgstr ""
-#: cppinit.c:920
+#: cppinit.c:418
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
msgstr ""
-#: cppinit.c:972
-msgid "#include \"...\" search starts here:\n"
-msgstr ""
-
-#: cppinit.c:976
-msgid "#include <...> search starts here:\n"
-msgstr ""
-
-#: cppinit.c:979
-msgid "End of search list.\n"
-msgstr ""
-
-#: cppinit.c:1057
-msgid "<built-in>"
-msgstr ""
-
-#: cppinit.c:1059
-msgid "<command line>"
-msgstr ""
-
-#. Irix6 "cc -n32" and OSF4 cc have problems with char foo[] = ("string");
-#. I.e. a const string initializer with parens around it. That is
-#. what N_("string") resolves to, so we make no_* be macros instead.
-#: cppinit.c:1164
-#, c-format
-msgid "assertion missing after %s"
-msgstr ""
-
-#: cppinit.c:1165
-#, c-format
-msgid "directory name missing after %s"
-msgstr ""
-
-#: cppinit.c:1166
-#, c-format
-msgid "file name missing after %s"
-msgstr ""
-
-#: cppinit.c:1167
-#, c-format
-msgid "macro name missing after %s"
-msgstr ""
-
-#: cppinit.c:1168
-#, c-format
-msgid "path name missing after %s"
-msgstr ""
-
-#: cppinit.c:1353
-msgid "-I- specified twice"
-msgstr ""
-
-#: cpplex.c:149
-#, c-format
-msgid "trigraph ??%c converted to %c"
-msgstr ""
-
-#: cpplex.c:157
-#, c-format
-msgid "trigraph ??%c ignored"
-msgstr ""
-
-#: cpplex.c:214
-msgid "backslash and newline separated by space"
-msgstr ""
-
-#: cpplex.c:221 cpptrad.c:158
-msgid "backslash-newline at end of file"
-msgstr ""
-
-#: cpplex.c:287 cpptrad.c:199
-msgid "\"/*\" within comment"
-msgstr ""
-
-#: cpplex.c:395
+#: cpplex.c:410
msgid "null character(s) ignored"
msgstr ""
-#: cpplex.c:402
-#, c-format
-msgid "%s in preprocessing directive"
+#: cpplex.c:445
+msgid "'$' in identifier or number"
msgstr ""
-#: cpplex.c:475
+#: cpplex.c:492
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr ""
-#: cpplex.c:483
+#: cpplex.c:500
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr ""
-#: cpplex.c:555
-msgid "'$' character(s) in identifier or number"
-msgstr ""
-
-#: cpplex.c:698
-#, c-format
-msgid "missing terminating %c character"
-msgstr "прапушчан завÑршаючы Ñімвал %c"
-
-#: cpplex.c:711
+#: cpplex.c:596
msgid "null character(s) preserved in literal"
msgstr ""
-#: cpplex.c:915 cpptrad.c:487
-msgid "no newline at end of file"
-msgstr ""
-
-#: cpplex.c:1092 cpptrad.c:213
+#: cpplex.c:916
msgid "unterminated comment"
msgstr "Ð½ÐµÐ·Ð°Ð²ÐµÑ€ÑˆÐ°Ð½Ñ‹Ñ ÐºÐ°Ð¼ÐµÐ½Ñ‚Ð°Ñ€Ñ‹Ñ–"
-#: cpplex.c:1103
+#: cpplex.c:927
msgid "C++ style comments are not allowed in ISO C90"
msgstr ""
-#: cpplex.c:1105
+#: cpplex.c:929
msgid "(this will be reported only once per input file)"
msgstr ""
-#: cpplex.c:1110
+#: cpplex.c:934
msgid "multi-line comment"
msgstr ""
-#: cpplex.c:1425
-#, fuzzy, c-format
-msgid "unknown string token %s\n"
-msgstr "невÑÐ´Ð¾Ð¼Ð°Ñ Ð½Ð°Ð·Ð²Ð° Ñ€ÑгіÑтра: %s\n"
-
-#: cpplex.c:1438
+#: cpplex.c:1198
#, fuzzy, c-format
msgid "unspellable token %s"
msgstr "немагу адчыніць файл \"%s\""
-#: cpplex.c:1695
-#, c-format
-msgid "the meaning of '\\%c' is different in traditional C"
-msgstr ""
-
-#: cpplex.c:1701
-msgid "incomplete universal-character-name"
-msgstr ""
-
-#: cpplex.c:1715
-#, c-format
-msgid "non-hex digit '%c' in universal-character-name"
-msgstr ""
-
-#: cpplex.c:1723
-msgid "universal-character-name on EBCDIC target"
-msgstr ""
-
-#: cpplex.c:1737
-msgid "universal-character-name out of range"
-msgstr ""
-
-#: cpplex.c:1791
-msgid "the meaning of '\\a' is different in traditional C"
-msgstr ""
-
-#: cpplex.c:1798
-#, c-format
-msgid "non-ISO-standard escape sequence, '\\%c'"
-msgstr ""
-
-#: cpplex.c:1809
-msgid "the meaning of '\\x' is different in traditional C"
-msgstr ""
-
-#: cpplex.c:1828 f/lex.c:585
-msgid "\\x used with no following hex digits"
-msgstr ""
-
-#: cpplex.c:1833
-msgid "hex escape sequence out of range"
-msgstr ""
-
-#: cpplex.c:1858
-msgid "octal escape sequence out of range"
-msgstr ""
-
-#: cpplex.c:1874
-#, c-format
-msgid "unknown escape sequence '\\%c'"
-msgstr "невÑÐ´Ð¾Ð¼Ð°Ñ ESC-паÑлÑдоўнаÑць '\\%c'"
-
-#: cpplex.c:1877
-#, fuzzy, c-format
-msgid "unknown escape sequence: '\\%03o'"
-msgstr "невÑÐ´Ð¾Ð¼Ð°Ñ ESC-паÑлÑдоўнаÑць '\\%c'"
-
-#: cpplex.c:1882
-msgid "escape sequence out of range for its type"
-msgstr ""
-
-#: cpplex.c:1973
-msgid "empty character constant"
-msgstr "пуÑÑ‚Ð°Ñ ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ð°Ñ ÐºÐ°Ð½Ñтанта"
-
-#: cpplex.c:1983
-#, fuzzy
-msgid "character constant too long for its type"
-msgstr "ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ð°Ñ ÐºÐ°Ð½Ñтанта вельмі доўгаÑ"
-
-#: cpplex.c:1986
-msgid "multi-character character constant"
-msgstr "мнагаÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ð°Ñ ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ð°Ñ ÐºÐ°Ð½Ñтанта"
-
-#: cpplib.c:225
+#: cpplib.c:218
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr ""
-#: cpplib.c:315
+#: cpplib.c:304
#, c-format
msgid "#%s is a GCC extension"
msgstr ""
-#: cpplib.c:327
+#: cpplib.c:316
msgid "suggest not using #elif in traditional C"
msgstr ""
-#: cpplib.c:330
+#: cpplib.c:319
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr ""
-#: cpplib.c:334
+#: cpplib.c:323
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr ""
-#: cpplib.c:358
+#: cpplib.c:345
msgid "embedding a directive within macro arguments is not portable"
msgstr ""
-#: cpplib.c:378
+#: cpplib.c:365
msgid "style of line directive is a GCC extension"
msgstr ""
-#: cpplib.c:428
+#: cpplib.c:415
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr ""
-#: cpplib.c:500
+#: cpplib.c:484
msgid "\"defined\" cannot be used as a macro name"
msgstr ""
-#: cpplib.c:506
+#: cpplib.c:490
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr ""
-#: cpplib.c:509
+#: cpplib.c:493
#, c-format
msgid "no macro name given in #%s directive"
msgstr ""
-#: cpplib.c:512
+#: cpplib.c:496
msgid "macro names must be identifiers"
msgstr ""
-#: cpplib.c:552
+#: cpplib.c:537
#, c-format
msgid "undefining \"%s\""
msgstr ""
-#: cpplib.c:598
+#: cpplib.c:609
msgid "missing terminating > character"
msgstr ""
-#: cpplib.c:637
+#: cpplib.c:662
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr ""
-#: cpplib.c:648
-#, c-format
-msgid "empty file name in #%s"
+#: cpplib.c:685
+msgid "#include nested too deeply"
msgstr ""
-#: cpplib.c:667
+#: cpplib.c:723
msgid "#include_next in primary source file"
msgstr ""
-#: cpplib.c:674
-msgid "#import is obsolete, use an #ifndef wrapper in the header file"
-msgstr ""
-
-#: cpplib.c:682
-msgid "#include nested too deeply"
-msgstr ""
-
-#: cpplib.c:739
+#: cpplib.c:749
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr ""
-#: cpplib.c:814
+#: cpplib.c:794
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr ""
-#: cpplib.c:820
+#: cpplib.c:800
msgid "line number out of range"
msgstr ""
-#: cpplib.c:831 cpplib.c:902
+#: cpplib.c:812 cpplib.c:885
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr ""
-#: cpplib.c:866
+#: cpplib.c:847
#, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr ""
-#: cpplib.c:973
+#: cpplib.c:947
#, fuzzy
msgid "invalid #ident directive"
msgstr "нерÑчаіÑны ініцыÑлізатар"
-#: cpplib.c:1061
+#: cpplib.c:1027
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr ""
-#: cpplib.c:1064
+#: cpplib.c:1030
#, fuzzy, c-format
msgid "#pragma %s %s is already registered"
msgstr "ÐšÐ»Ð°Ñ \"%s\" ужо Ñ–Ñнуе"
-#: cpplib.c:1067
+#: cpplib.c:1033
#, c-format
msgid "#pragma %s is already registered"
msgstr ""
-#: cpplib.c:1143
-msgid "#pragma once is obsolete"
-msgstr ""
-
-#: cpplib.c:1146
+#: cpplib.c:1178
msgid "#pragma once in main file"
msgstr ""
-#: cpplib.c:1170
+#: cpplib.c:1201
msgid "invalid #pragma GCC poison directive"
msgstr ""
-#: cpplib.c:1179
+#: cpplib.c:1210
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr ""
-#: cpplib.c:1201
+#: cpplib.c:1231
msgid "#pragma system_header ignored outside include file"
msgstr ""
-#: cpplib.c:1226
-#, c-format
-msgid "cannot find source %s"
+#: cpplib.c:1255
+#, fuzzy, c-format
+msgid "cannot find source file %s"
msgstr "не магу знайÑці крыніцу %s"
-#: cpplib.c:1230
+#: cpplib.c:1259
#, c-format
msgid "current file is older than %s"
msgstr ""
-#: cpplib.c:1346
+#: cpplib.c:1373
msgid "_Pragma takes a parenthesized string literal"
msgstr ""
-#: cpplib.c:1429
+#: cpplib.c:1451
msgid "#else without #if"
msgstr ""
-#: cpplib.c:1434
+#: cpplib.c:1456
msgid "#else after #else"
msgstr ""
-#: cpplib.c:1436 cpplib.c:1470
-msgid "the conditional began here"
-msgstr ""
-
-#: cpplib.c:1463
+#: cpplib.c:1484
msgid "#elif without #if"
msgstr ""
-#: cpplib.c:1468
+#: cpplib.c:1489
msgid "#elif after #else"
msgstr ""
-#: cpplib.c:1499
+#: cpplib.c:1519
msgid "#endif without #if"
msgstr ""
-#: cpplib.c:1582
+#: cpplib.c:1596
msgid "missing '(' after predicate"
msgstr ""
-#: cpplib.c:1597
+#: cpplib.c:1611
msgid "missing ')' to complete answer"
msgstr ""
-#: cpplib.c:1617
+#: cpplib.c:1631
msgid "predicate's answer is empty"
msgstr ""
-#: cpplib.c:1647
+#: cpplib.c:1658
msgid "assertion without predicate"
msgstr ""
-#: cpplib.c:1649
+#: cpplib.c:1660
msgid "predicate must be an identifier"
msgstr ""
-#: cpplib.c:1738
+#: cpplib.c:1744
#, c-format
msgid "\"%s\" re-asserted"
msgstr ""
-#: cpplib.c:1968
-#, c-format
-msgid "unterminated #%s"
-msgstr ""
-
-#: cppmacro.c:94
-#, c-format
-msgid "macro \"%s\" is not used"
-msgstr ""
-
-#: cppmacro.c:139 cppmacro.c:294
+#: cppmacro.c:125 cppmacro.c:280
#, c-format
msgid "invalid built-in macro \"%s\""
msgstr ""
-#: cppmacro.c:234
+#: cppmacro.c:221
#, fuzzy
msgid "could not determine date and time"
msgstr "Ðемагчыма адчыніць файл з дадзенымі %s.\n"
-#: cppmacro.c:407
+#: cppmacro.c:393
msgid "invalid string literal, ignoring final '\\'"
msgstr ""
-#: cppmacro.c:504
+#: cppmacro.c:476
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr ""
-#: cppmacro.c:546
+#: cppmacro.c:514
msgid "ISO C99 requires rest arguments to be used"
msgstr ""
-#: cppmacro.c:551
+#: cppmacro.c:519
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr ""
-#: cppmacro.c:556
+#: cppmacro.c:524
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr ""
-#: cppmacro.c:669 cpptrad.c:774
+#: cppmacro.c:635
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr ""
-#: cppmacro.c:776
+#: cppmacro.c:738
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr ""
-#: cppmacro.c:1314
+#: cppmacro.c:1241
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr ""
-#: cppmacro.c:1351
+#: cppmacro.c:1286
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr ""
-#: cppmacro.c:1359
+#: cppmacro.c:1294
msgid "macro parameters must be comma-separated"
msgstr ""
-#: cppmacro.c:1376
+#: cppmacro.c:1311
msgid "parameter name missing"
msgstr ""
-#: cppmacro.c:1391
+#: cppmacro.c:1326
msgid "anonymous variadic macros were introduced in C99"
msgstr ""
-#: cppmacro.c:1395
+#: cppmacro.c:1330
msgid "ISO C does not permit named variadic macros"
msgstr ""
-#: cppmacro.c:1404
+#: cppmacro.c:1339
msgid "missing ')' in macro parameter list"
msgstr ""
-#: cppmacro.c:1472
+#: cppmacro.c:1402
msgid "ISO C requires whitespace after the macro name"
msgstr ""
-#: cppmacro.c:1500
+#: cppmacro.c:1430
msgid "'#' is not followed by a macro parameter"
msgstr ""
-#: cppmacro.c:1519
+#: cppmacro.c:1449
msgid "'##' cannot appear at either end of a macro expansion"
msgstr ""
-#: cppmacro.c:1601
-#, c-format
-msgid "\"%s\" redefined"
-msgstr ""
-
-#: cppmacro.c:1606
-msgid "this is the location of the previous definition"
-msgstr ""
-
-#: cppmacro.c:1657
+#: cppmacro.c:1588
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr ""
-#: cppmacro.c:1682
+#: cppmacro.c:1611
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr ""
-#: cppspec.c:109
-#, c-format
-msgid "\"%s\" is not a valid option to the preprocessor"
+#: cpppch.c:84 cpppch.c:332 cpppch.c:356 cpppch.c:365
+msgid "while writing precompiled header"
msgstr ""
-#: cppspec.c:133
-msgid "too many input files"
-msgstr "вельмі шмат уваходзÑчых файлаў"
+#: cpppch.c:463
+#, fuzzy, c-format
+msgid "%s: not used because `%.*s' not defined"
+msgstr "адмеціна `%s' выкарыÑтоўвываецца, але Ð½Ñ Ð²Ñ‹Ð·Ð½Ð°Ñ‡Ð°Ð½Ð°"
-#: cpptrad.c:841
+#: cpppch.c:475
#, c-format
-msgid "detected recursion whilst expanding macro \"%s\""
+msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
msgstr ""
-#: cse.c:7195
+#: cpppch.c:516
#, c-format
-msgid ";; Processing block from %d to %d, %d sets.\n"
+msgid "%s: not used because `%s' is defined"
msgstr ""
-#: diagnostic.c:714
-msgid "((anonymous))"
+#: cpppch.c:529 cpppch.c:715
+msgid "while reading precompiled header"
msgstr ""
-#: diagnostic.c:928
+#: cppspec.c:106
#, c-format
-msgid "%s: warnings being treated as errors\n"
+msgid "\"%s\" is not a valid option to the preprocessor"
msgstr ""
-#: diagnostic.c:963
-#, c-format
-msgid "%s: %s: "
-msgstr "%s: %s: "
-
-#: diagnostic.c:1054
-#, c-format
-msgid "%s "
-msgstr ""
+#: cppspec.c:128
+msgid "too many input files"
+msgstr "вельмі шмат уваходзÑчых файлаў"
-#: diagnostic.c:1056
+#: cpptrad.c:744
#, c-format
-msgid " %s"
+msgid "detected recursion whilst expanding macro \"%s\""
msgstr ""
-#: diagnostic.c:1078
-msgid "At top level:"
+#: cpptrad.c:911
+msgid "syntax error in macro parameter list"
msgstr ""
-#: diagnostic.c:1083
-#, fuzzy, c-format
-msgid "In member function `%s':"
-msgstr "у функцыі \"%s\":"
-
-#: diagnostic.c:1087
+#: cse.c:7040
#, c-format
-msgid "In function `%s':"
-msgstr "у функцыі \"%s\":"
-
-#: diagnostic.c:1175
-msgid "compilation terminated.\n"
-msgstr "кампілÑÑ†Ñ‹Ñ Ð·Ð°Ð²ÐµÑ€ÑˆÐ°Ð½Ð°.\n"
+msgid ";; Processing block from %d to %d, %d sets.\n"
+msgstr ""
-#: diagnostic.c:1193
+#: diagnostic.c:209
#, c-format
msgid "%s:%d: confused by earlier errors, bailing out\n"
msgstr ""
-#: diagnostic.c:1208 diagnostic.c:1316
-#, c-format
-msgid ""
-"Please submit a full bug report,\n"
-"with preprocessed source if appropriate.\n"
-"See %s for instructions.\n"
-msgstr ""
+#: diagnostic.c:281
+msgid "compilation terminated.\n"
+msgstr "кампілÑÑ†Ñ‹Ñ Ð·Ð°Ð²ÐµÑ€ÑˆÐ°Ð½Ð°.\n"
-#: diagnostic.c:1314
+#: diagnostic.c:572
msgid "Internal compiler error: Error reporting routines re-entered.\n"
msgstr ""
-#: diagnostic.c:1376
+#: diagnostic.c:584
#, fuzzy, c-format
msgid "in %s, at %s:%d"
msgstr "Ñпынена Ñž %s, Ð»Ñ %s:%d"
-#: diagnostic.c:1397
-#, c-format
-msgid "In file included from %s:%d"
-msgstr "У файле уключаным з %s:%d"
-
-#: diagnostic.c:1400
-#, c-format
-msgid ""
-",\n"
-" from %s:%d"
-msgstr ""
-
-#: diagnostic.c:1401
-msgid ":\n"
-msgstr ":\n"
-
-#: diagnostic.c:1445 diagnostic.c:1462
-#, c-format
-msgid "`%s' is deprecated (declared at %s:%d)"
-msgstr ""
-
-#: diagnostic.c:1465
-#, c-format
-msgid "`%s' is deprecated"
-msgstr ""
-
-#: diagnostic.c:1468
-#, c-format
-msgid "type is deprecated (declared at %s:%d)"
-msgstr ""
-
-#: diagnostic.c:1471
-msgid "type is deprecated"
-msgstr ""
-
-#: dominance.c:728
+#: dominance.c:763
#, c-format
msgid "dominator of %d should be %d, not %d"
msgstr ""
-#: dwarf2out.c:3135
+#: dwarf2out.c:3228
#, c-format
msgid "DW_LOC_OP %s not implemented\n"
msgstr ""
-#: dwarfout.c:2066
-#, c-format
-msgid "internal regno botch: `%s' has regno = %d\n"
-msgstr ""
-
-#: dwarfout.c:6181
-msgid "support for the DWARF1 debugging format is deprecated"
-msgstr ""
-
-#: dwarfout.c:6278
-msgid "can't get current directory"
-msgstr "не магу атрымаць бÑгучую дырÑкторыю"
-
#: emit-rtl.c:1155
msgid "can't access real part of complex value in hard register"
msgstr ""
-#: emit-rtl.c:1177
+#: emit-rtl.c:1182
msgid "can't access imaginary part of complex value in hard register"
msgstr ""
-#: emit-rtl.c:3402
+#: emit-rtl.c:2263
+#, fuzzy
+msgid "Invalid rtl sharing found in the insn"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
+
+#: emit-rtl.c:2265
+msgid "Shared rtx"
+msgstr ""
+
+#: emit-rtl.c:3400
msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
msgstr ""
-#: errors.c:136
+#: errors.c:129
#, c-format
msgid "abort in %s, at %s:%d"
msgstr "Ñпынена Ñž %s, Ð»Ñ %s:%d"
-#: except.c:369
+#: except.c:357
msgid "exception handling disabled, use -fexceptions to enable"
msgstr ""
-#: except.c:2994
+#: except.c:2942
msgid "argument of `__builtin_eh_return_regno' must be constant"
msgstr ""
-#: except.c:3137
+#: except.c:3073
msgid "__builtin_eh_return not supported on this target"
msgstr ""
-#: explow.c:1408
+#: explow.c:1327
msgid "stack limits not supported on this target"
msgstr ""
-#: expr.c:3355
+#: expr.c:2965
msgid "function using short complex types cannot be inline"
msgstr ""
-#: expr.c:6272 expr.c:6281 expr.c:6290 expr.c:6295 expr.c:6604 expr.c:6620
-msgid "unsupported wide integer operation"
+#: expr.c:6311
+msgid "%Jprior parameter's size depends on '%D'"
msgstr ""
-#: expr.c:6669
-#, c-format
-msgid "prior parameter's size depends on `%s'"
-msgstr ""
-
-#: expr.c:7005
+#: expr.c:6678
msgid "returned value in block_exit_expr"
msgstr ""
#. We can't make a bitwise copy of this object, so fail.
-#: expr.c:9202
+#: expr.c:8823
#, fuzzy
msgid "cannot take the address of an unaligned member"
msgstr "не магу атрымаць Ð°Ð´Ñ€Ð°Ñ Ð±Ñ–Ñ‚Ð°Ð²Ð°Ð³Ð° Ð¿Ð¾Ð»Ñ \"%s\""
-#: final.c:1342
+#: final.c:1058
msgid "negative insn length"
msgstr ""
-#: final.c:2793
+#: final.c:2429
msgid "could not split insn"
msgstr ""
-#: final.c:3141
+#: final.c:2771
msgid "invalid `asm': "
msgstr ""
-#: final.c:3328
+#: final.c:2954
msgid "nested assembly dialect alternatives"
msgstr ""
-#: final.c:3345 final.c:3357
+#: final.c:2971 final.c:2983
msgid "unterminated assembly dialect alternative"
msgstr ""
-#: final.c:3401
+#: final.c:3027
#, c-format
msgid "operand number missing after %%-letter"
msgstr ""
-#: final.c:3404 final.c:3443
+#: final.c:3030 final.c:3069
msgid "operand number out of range"
msgstr ""
-#: final.c:3462
+#: final.c:3088
#, c-format
msgid "invalid %%-code"
msgstr "нерÑчаіÑны %%-код"
-#: final.c:3493
+#: final.c:3118
#, c-format
msgid "`%%l' operand isn't a label"
msgstr ""
#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
-#: final.c:3600 vmsdbgout.c:466 config/i386/i386.c:6314
-#: config/pdp11/pdp11.c:1573
+#. We can't handle floating point constants; PRINT_OPERAND must
+#. handle them.
+#. We can't handle floating point constants;
+#. PRINT_OPERAND must handle them.
+#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6739
+#: config/pdp11/pdp11.c:1646
msgid "floating constant misused"
msgstr ""
-#: final.c:3656 vmsdbgout.c:523 config/i386/i386.c:6392
-#: config/pdp11/pdp11.c:1620
+#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6817
+#: config/pdp11/pdp11.c:1693
msgid "invalid expression as operand"
msgstr ""
-#: flow.c:352
+#: flow.c:329
msgid "function might be possible candidate for attribute `noreturn'"
msgstr ""
-#: flow.c:357
+#: flow.c:334
msgid "`noreturn' function does return"
msgstr ""
-#: flow.c:378
+#: flow.c:355
msgid "control reaches end of non-void function"
msgstr ""
-#: flow.c:1642
+#: flow.c:1582
msgid "Attempt to delete prologue/epilogue insn:"
msgstr ""
-#: fold-const.c:2546 fold-const.c:2559
+#: fold-const.c:2759 fold-const.c:2772
#, c-format
msgid "comparison is always %d due to width of bit-field"
msgstr ""
-#: fold-const.c:3753 fold-const.c:3770
+#: fold-const.c:3967 fold-const.c:3984
#, c-format
msgid "comparison is always %d"
msgstr ""
-#: fold-const.c:3901
+#: fold-const.c:4115
msgid "`or' of unmatched not-equal tests is always 1"
msgstr ""
-#: fold-const.c:3906
+#: fold-const.c:4120
msgid "`and' of mutually exclusive equal-tests is always 0"
msgstr ""
-#: function.c:884 varasm.c:1503
-#, c-format
-msgid "size of variable `%s' is too large"
+#: fold-const.c:8340
+msgid "fold check: original tree changed by fold"
msgstr ""
-#: function.c:3772
+#: function.c:884 varasm.c:1408
+#, fuzzy
+msgid "%Jsize of variable '%D' is too large"
+msgstr "памер маÑіва \"%s\" вельмі вÑлікі"
+
+#: function.c:3737
#, fuzzy
msgid "impossible constraint in `asm'"
msgstr "немагчымы апÑратар '%s'"
-#: function.c:5527
-#, c-format
-msgid "`%s' might be used uninitialized in this function"
+#: function.c:5697
+msgid "%J'%D' might be used uninitialized in this function"
msgstr ""
-#: function.c:5534
-#, c-format
-msgid "variable `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5704
+msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'"
msgstr ""
-#: function.c:5553
-#, c-format
-msgid "argument `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5723
+msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'"
msgstr ""
-#: function.c:6420
+#: function.c:6497
msgid "function returns an aggregate"
msgstr ""
-#: function.c:6925
-#, c-format
-msgid "unused parameter `%s'"
+#: function.c:6980
+#, fuzzy
+msgid "%Junused parameter '%D'"
msgstr "невыкарыÑтаемы параметр \"%s\""
-#: gcc.c:1107
+#: gcc.c:1191
#, c-format
msgid "ambiguous abbreviation %s"
msgstr ""
-#: gcc.c:1134
+#: gcc.c:1218
#, c-format
msgid "incomplete `%s' option"
msgstr ""
-#: gcc.c:1145
+#: gcc.c:1229
#, fuzzy, c-format
msgid "missing argument to `%s' option"
msgstr "аргумент Ð´Ð»Ñ \"%s\" прапушчан"
-#: gcc.c:1158
+#: gcc.c:1242
#, fuzzy, c-format
msgid "extraneous argument to `%s' option"
msgstr "аргумент Ð´Ð»Ñ \"%s\" прапушчан"
-#: gcc.c:1486
+#: gcc.c:1563
msgid "Using built-in specs.\n"
msgstr ""
-#: gcc.c:1667
+#: gcc.c:1748
#, c-format
msgid ""
"Setting spec %s to '%s'\n"
"\n"
msgstr ""
-#: gcc.c:1774
+#: gcc.c:1850
#, c-format
msgid "Reading specs from %s\n"
msgstr ""
-#: gcc.c:1872 gcc.c:1891
+#: gcc.c:1946 gcc.c:1965
#, c-format
msgid "specs %%include syntax malformed after %ld characters"
msgstr ""
-#: gcc.c:1899
+#: gcc.c:1973
#, fuzzy, c-format
msgid "could not find specs file %s\n"
msgstr "не магу знайÑці крыніцу %s\n"
-#: gcc.c:1916 gcc.c:1924 gcc.c:1933 gcc.c:1942
+#: gcc.c:1990 gcc.c:1998 gcc.c:2007 gcc.c:2016
#, c-format
msgid "specs %%rename syntax malformed after %ld characters"
msgstr ""
-#: gcc.c:1951
+#: gcc.c:2025
#, c-format
msgid "specs %s spec was not found to be renamed"
msgstr ""
-#: gcc.c:1958
+#: gcc.c:2032
#, c-format
msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
msgstr ""
-#: gcc.c:1963
+#: gcc.c:2037
#, c-format
msgid "rename spec %s to %s\n"
msgstr ""
-#: gcc.c:1965
+#: gcc.c:2039
#, c-format
msgid ""
"spec is '%s'\n"
"\n"
msgstr ""
-#: gcc.c:1978
+#: gcc.c:2052
#, c-format
msgid "specs unknown %% command after %ld characters"
msgstr ""
-#: gcc.c:1989 gcc.c:2002
+#: gcc.c:2063 gcc.c:2076
#, c-format
msgid "specs file malformed after %ld characters"
msgstr ""
-#: gcc.c:2056
+#: gcc.c:2129
msgid "spec file has no spec for linking"
msgstr ""
-#: gcc.c:2554
+#: gcc.c:2634
msgid "-pipe not supported"
msgstr "-pipe не падтрымліваецца"
-#: gcc.c:2609
+#: gcc.c:2696
msgid ""
"\n"
"Go ahead? (y or n) "
msgstr ""
-#: gcc.c:2735
+#: gcc.c:2822
#, c-format
msgid ""
"Internal error: %s (program %s)\n"
@@ -5282,152 +5142,160 @@ msgid ""
"See %s for instructions."
msgstr ""
-#: gcc.c:2753
+#: gcc.c:2840
#, c-format
msgid "# %s %.2f %.2f\n"
msgstr "# %s %.2f %.2f\n"
-#: gcc.c:2883
+#: gcc.c:2973
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr "ВыкарыÑтанне: %s [выбары] файл...\n"
-#: gcc.c:2884
+#: gcc.c:2974
msgid "Options:\n"
msgstr "Выбары:\n"
-#: gcc.c:2886
+#: gcc.c:2976
msgid " -pass-exit-codes Exit with highest error code from a phase\n"
msgstr ""
-#: gcc.c:2887
+#: gcc.c:2977
msgid " --help Display this information\n"
msgstr " --help ÐдлюÑтраваць гÑту інфармацыю\n"
-#: gcc.c:2888
+#: gcc.c:2978
msgid " --target-help Display target specific command line options\n"
msgstr ""
-#: gcc.c:2890
+#: gcc.c:2980
msgid " (Use '-v --help' to display command line options of sub-processes)\n"
msgstr ""
-#: gcc.c:2891
+#: gcc.c:2981
msgid " -dumpspecs Display all of the built in spec strings\n"
msgstr ""
-#: gcc.c:2892
+#: gcc.c:2982
msgid " -dumpversion Display the version of the compiler\n"
msgstr " -dumpversion ÐдлюÑтраваць верÑÑ–ÑŽ кампілÑтара\n"
-#: gcc.c:2893
+#: gcc.c:2983
msgid " -dumpmachine Display the compiler's target processor\n"
msgstr ""
-#: gcc.c:2894
+#: gcc.c:2984
msgid " -print-search-dirs Display the directories in the compiler's search path\n"
msgstr ""
-#: gcc.c:2895
+#: gcc.c:2985
msgid " -print-libgcc-file-name Display the name of the compiler's companion library\n"
msgstr ""
-#: gcc.c:2896
+#: gcc.c:2986
msgid " -print-file-name=<lib> Display the full path to library <lib>\n"
msgstr ""
-#: gcc.c:2897
+#: gcc.c:2987
msgid " -print-prog-name=<prog> Display the full path to compiler component <prog>\n"
msgstr ""
-#: gcc.c:2898
+#: gcc.c:2988
msgid " -print-multi-directory Display the root directory for versions of libgcc\n"
msgstr ""
-#: gcc.c:2899
+#: gcc.c:2989
msgid ""
" -print-multi-lib Display the mapping between command line options and\n"
" multiple library search directories\n"
msgstr ""
-#: gcc.c:2902
+#: gcc.c:2992
msgid " -print-multi-os-directory Display the relative path to OS libraries\n"
msgstr ""
-#: gcc.c:2903
+#: gcc.c:2993
msgid " -Wa,<options> Pass comma-separated <options> on to the assembler\n"
msgstr ""
-#: gcc.c:2904
+#: gcc.c:2994
msgid " -Wp,<options> Pass comma-separated <options> on to the preprocessor\n"
msgstr ""
-#: gcc.c:2905
+#: gcc.c:2995
msgid " -Wl,<options> Pass comma-separated <options> on to the linker\n"
msgstr ""
-#: gcc.c:2906
+#: gcc.c:2996
+msgid " -Xassembler <arg> Pass <arg> on to the assembler\n"
+msgstr ""
+
+#: gcc.c:2997
+msgid " -Xpreprocessor <arg> Pass <arg> on to the preprocessor\n"
+msgstr ""
+
+#: gcc.c:2998
msgid " -Xlinker <arg> Pass <arg> on to the linker\n"
msgstr ""
-#: gcc.c:2907
+#: gcc.c:2999
msgid " -save-temps Do not delete intermediate files\n"
msgstr ""
-#: gcc.c:2908
+#: gcc.c:3000
msgid " -pipe Use pipes rather than intermediate files\n"
msgstr ""
-#: gcc.c:2909
+#: gcc.c:3001
msgid " -time Time the execution of each subprocess\n"
msgstr ""
-#: gcc.c:2910
+#: gcc.c:3002
#, fuzzy
msgid " -specs=<file> Override built-in specs with the contents of <file>\n"
msgstr " -o <файл> ПамÑÑціць вывад у <файл>\n"
-#: gcc.c:2911
+#: gcc.c:3003
msgid " -std=<standard> Assume that the input sources are for <standard>\n"
msgstr ""
-#: gcc.c:2912
+#: gcc.c:3004
msgid " -B <directory> Add <directory> to the compiler's search paths\n"
msgstr ""
-#: gcc.c:2913
+#: gcc.c:3005
msgid " -b <machine> Run gcc for target <machine>, if installed\n"
msgstr ""
-#: gcc.c:2914
+#: gcc.c:3006
msgid " -V <version> Run gcc version number <version>, if installed\n"
msgstr ""
-#: gcc.c:2915
+#: gcc.c:3007
msgid " -v Display the programs invoked by the compiler\n"
msgstr ""
-#: gcc.c:2916
+#: gcc.c:3008
msgid " -### Like -v but options quoted and commands not executed\n"
msgstr ""
-#: gcc.c:2917
+#: gcc.c:3009
msgid " -E Preprocess only; do not compile, assemble or link\n"
msgstr ""
-#: gcc.c:2918
+#: gcc.c:3010
msgid " -S Compile only; do not assemble or link\n"
msgstr ""
-#: gcc.c:2919
+#: gcc.c:3011
msgid " -c Compile and assemble, but do not link\n"
msgstr ""
-#: gcc.c:2920
+#: gcc.c:3012
msgid " -o <file> Place the output into <file>\n"
msgstr " -o <файл> ПамÑÑціць вывад у <файл>\n"
-#: gcc.c:2921
+#: gcc.c:3013
msgid ""
" -x <language> Specify the language of the following input files\n"
" Permissible languages include: c c++ assembler none\n"
@@ -5435,7 +5303,7 @@ msgid ""
" guessing the language based on the file's extension\n"
msgstr ""
-#: gcc.c:2928
+#: gcc.c:3020
#, c-format
msgid ""
"\n"
@@ -5444,92 +5312,93 @@ msgid ""
" other options on to these processes the -W<letter> options must be used.\n"
msgstr ""
-#: gcc.c:3063
+#: gcc.c:3141
#, c-format
msgid "`-%c' option must have argument"
msgstr ""
-#: gcc.c:3085
+#: gcc.c:3163
#, c-format
msgid "couldn't run `%s': %s"
msgstr ""
#. translate_options () has turned --version into -fversion.
-#: gcc.c:3262
+#: gcc.c:3349
#, c-format
msgid "%s (GCC) %s\n"
msgstr ""
-#: gcc.c:3263
-#, fuzzy
-msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
-msgstr "Copyright (C) 2001 Free Software Foundation, Inc.\n"
-
-#: gcc.c:3265 gcov.c:364
+#: gcc.c:3352
msgid ""
"This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
"\n"
msgstr ""
-#: gcc.c:3366
+#: gcc.c:3453
msgid "argument to `-Xlinker' is missing"
msgstr ""
-#: gcc.c:3374
+#: gcc.c:3461
+#, fuzzy
+msgid "argument to `-Xpreprocessor' is missing"
+msgstr "аргумент Ð´Ð»Ñ \"-%s\" прапушчан"
+
+#: gcc.c:3468
+#, fuzzy
+msgid "argument to `-Xassembler' is missing"
+msgstr "аргумент Ð´Ð»Ñ \"-x\" прапушчан"
+
+#: gcc.c:3475
#, fuzzy
msgid "argument to `-l' is missing"
msgstr "аргумент Ð´Ð»Ñ \"-x\" прапушчан"
-#: gcc.c:3391
+#: gcc.c:3491
msgid "argument to `-specs' is missing"
msgstr ""
-#: gcc.c:3406
+#: gcc.c:3505
msgid "argument to `-specs=' is missing"
msgstr ""
-#: gcc.c:3436
+#: gcc.c:3542
#, c-format
msgid "`-%c' must come at the start of the command line"
msgstr ""
-#: gcc.c:3445
+#: gcc.c:3551
msgid "argument to `-B' is missing"
msgstr ""
-#: gcc.c:3618
-msgid "cannot specify -o with -c or -S and multiple compilations"
-msgstr ""
-
-#: gcc.c:3791
+#: gcc.c:3728
msgid "warning: -pipe ignored because -save-temps specified"
msgstr ""
-#: gcc.c:3795
+#: gcc.c:3732
msgid "warning: -pipe ignored because -time specified"
msgstr ""
-#: gcc.c:3807
+#: gcc.c:3944
msgid "argument to `-x' is missing"
msgstr "аргумент Ð´Ð»Ñ \"-x\" прапушчан"
-#: gcc.c:3835
+#: gcc.c:3972
#, c-format
msgid "argument to `-%s' is missing"
msgstr "аргумент Ð´Ð»Ñ \"-%s\" прапушчан"
-#: gcc.c:3896
+#: gcc.c:4033
#, c-format
msgid "warning: `-x %s' after last input file has no effect"
msgstr ""
-#: gcc.c:4241
+#: gcc.c:4434
#, fuzzy
msgid "invalid specification! Bug in cc"
msgstr "ÐерÑчаіÑÐ½Ð°Ñ ÑпецыфікацыÑ! Памылка Ñž cc."
-#: gcc.c:4395
+#: gcc.c:4588
#, c-format
msgid "%s\n"
msgstr "%s\n"
@@ -5537,75 +5406,80 @@ msgstr "%s\n"
#. Catch the case where a spec string contains something like
#. '%{foo:%*}'. ie there is no * in the pattern on the left
#. hand side of the :.
-#: gcc.c:4955
+#: gcc.c:5092
#, c-format
msgid "spec failure: '%%*' has not been initialized by pattern match"
msgstr ""
-#: gcc.c:4964
+#: gcc.c:5101
#, c-format
msgid "warning: use of obsolete %%[ operator in specs"
msgstr ""
-#: gcc.c:4982
+#: gcc.c:5119
#, c-format
msgid "Processing spec %c%s%c, which is '%s'\n"
msgstr ""
-#: gcc.c:5107
+#: gcc.c:5182
#, fuzzy, c-format
msgid "spec failure: unrecognized spec option '%c'"
msgstr "нераÑпазнаны выбар \"-%s\""
-#: gcc.c:5188
+#: gcc.c:5261
#, fuzzy, c-format
msgid "unknown spec function `%s'"
msgstr "у функцыі \"%s\":"
-#: gcc.c:5207
+#: gcc.c:5280
#, fuzzy, c-format
msgid "error in args to spec function `%s'"
msgstr "вельмі шмат аргумÑнтаў у функцыі `%s'"
-#: gcc.c:5256
+#: gcc.c:5328
msgid "malformed spec function name"
msgstr ""
#. )
-#: gcc.c:5259
+#: gcc.c:5331
#, fuzzy
msgid "no arguments for spec function"
msgstr "не хапае аргументаў у функцыі"
-#: gcc.c:5278
+#: gcc.c:5350
msgid "malformed spec function arguments"
msgstr ""
-#: gcc.c:5386
-msgid "mismatched braces in specs"
+#: gcc.c:6076
+msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC."
msgstr ""
-#: gcc.c:6081
+#: gcc.c:6086
+msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC."
+msgstr ""
+
+#: gcc.c:6179
#, c-format
msgid "unrecognized option `-%s'"
msgstr "нераÑпазнаны выбар \"-%s\""
-#: gcc.c:6087
+#: gcc.c:6185
#, c-format
msgid "install: %s%s\n"
msgstr ""
-#: gcc.c:6088
+#: gcc.c:6186
#, c-format
msgid "programs: %s\n"
msgstr "праграмы: %s\n"
-#: gcc.c:6089
+#: gcc.c:6187
#, c-format
msgid "libraries: %s\n"
msgstr "бібліÑÑ‚Ñкі: %s\n"
-#: gcc.c:6146
+#: gcc.c:6244
+#, c-format
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
@@ -5613,111 +5487,123 @@ msgstr ""
"\n"
"ІнÑтрукцыі Ð´Ð»Ñ Ð¿Ð°Ð²ÐµÐ´Ð°Ð¼Ð»ÐµÐ½Ð½ÑÑž аб памылках глÑдзіце тут:\n"
-#: gcc.c:6162
+#: gcc.c:6260
#, c-format
msgid "Configured with: %s\n"
msgstr ""
-#: gcc.c:6176
+#: gcc.c:6274
#, c-format
msgid "Thread model: %s\n"
msgstr ""
-#: gcc.c:6187
+#: gcc.c:6285
#, c-format
msgid "gcc version %s\n"
msgstr "верÑÑ–Ñ gcc %s\n"
-#: gcc.c:6189
+#: gcc.c:6287
#, c-format
msgid "gcc driver version %s executing gcc version %s\n"
msgstr ""
-#: gcc.c:6197
+#: gcc.c:6295
#, fuzzy
msgid "no input files"
msgstr "нÑма ўваходзÑчых файлаў"
-#: gcc.c:6235
-#, c-format
-msgid "%s: %s compiler not installed on this system"
-msgstr "%s: %s кампілÑтар не ÑžÑталÑваны на гÑтай ÑÑ–ÑÑ‚Ñме"
-
-#: gcc.c:6310
+#: gcc.c:6317 gcc.c:6436
#, c-format
msgid "%s: linker input file unused because linking not done"
msgstr ""
-#: gcc.c:6353
+#: gcc.c:6320
+msgid "cannot specify -o with -c or -S and multiple languages"
+msgstr ""
+
+#: gcc.c:6355
+#, c-format
+msgid "%s: %s compiler not installed on this system"
+msgstr "%s: %s кампілÑтар не ÑžÑталÑваны на гÑтай ÑÑ–ÑÑ‚Ñме"
+
+#: gcc.c:6476
#, c-format
msgid "language %s not recognized"
msgstr "мова %s не раÑпазнана"
-#: gcc.c:6456
+#: gcc.c:6573
#, fuzzy
msgid "internal gcc abort"
msgstr "ÑƒÐ½ÑƒÑ‚Ñ€Ð°Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°"
-#: gcov.c:325
+#: gcov.c:384
msgid "Internal gcov abort.\n"
msgstr ""
-#: gcov.c:338
+#: gcov.c:397
msgid ""
"Usage: gcov [OPTION]... SOURCEFILE\n"
"\n"
msgstr ""
-#: gcov.c:339
+#: gcov.c:398
msgid ""
"Print code coverage information.\n"
"\n"
msgstr ""
-#: gcov.c:340
+#: gcov.c:399
#, fuzzy
msgid " -h, --help Print this help, then exit\n"
msgstr " --help ÐдлюÑтраваць гÑту інфармацыю\n"
-#: gcov.c:341
+#: gcov.c:400
#, fuzzy
msgid " -v, --version Print version number, then exit\n"
msgstr " -dumpversion ÐдлюÑтраваць верÑÑ–ÑŽ кампілÑтара\n"
-#: gcov.c:342
+#: gcov.c:401
+msgid " -a, --all-blocks Show information for every basic block\n"
+msgstr ""
+
+#: gcov.c:402
msgid " -b, --branch-probabilities Include branch probabilities in output\n"
msgstr ""
-#: gcov.c:343
+#: gcov.c:403
msgid ""
" -c, --branch-counts Given counts of branches taken\n"
" rather than percentages\n"
msgstr ""
-#: gcov.c:345
+#: gcov.c:405
#, fuzzy
msgid " -n, --no-output Do not create an output file\n"
msgstr " -o <файл> ПамÑÑціць вывад у <файл>\n"
-#: gcov.c:346
+#: gcov.c:406
msgid ""
" -l, --long-file-names Use long output file names for included\n"
" source files\n"
msgstr ""
-#: gcov.c:348
+#: gcov.c:408
msgid " -f, --function-summaries Output summaries for each function\n"
msgstr ""
-#: gcov.c:349
+#: gcov.c:409
msgid " -o, --object-directory DIR|FILE Search for object files in DIR or called FILE\n"
msgstr ""
-#: gcov.c:350
+#: gcov.c:410
msgid " -p, --preserve-paths Preserve all pathname components\n"
msgstr ""
-#: gcov.c:351
+#: gcov.c:411
+msgid " -u, --unconditional-branches Show unconditional branch counts too\n"
+msgstr ""
+
+#: gcov.c:412
#, fuzzy, c-format
msgid ""
"\n"
@@ -5727,401 +5613,287 @@ msgstr ""
"\n"
"ІнÑтрукцыі Ð´Ð»Ñ Ð¿Ð°Ð²ÐµÐ´Ð°Ð¼Ð»ÐµÐ½Ð½ÑÑž аб памылках глÑдзіце тут:\n"
-#: gcov.c:361
+#: gcov.c:422
#, c-format
msgid "gcov (GCC) %s\n"
msgstr ""
-#: gcov.c:362
-msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
+#: gcov.c:423
+#, fuzzy
+msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
msgstr "Copyright (C) 2001 Free Software Foundation, Inc.\n"
-#: gcov.c:500
-#, c-format
-msgid "Could not open basic block file %s.\n"
+#: gcov.c:425
+msgid ""
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or \n"
+"FITNESS FOR A PARTICULAR PURPOSE.\n"
+"\n"
msgstr ""
-#: gcov.c:507
-#, c-format
-msgid "Could not open program flow graph file %s.\n"
-msgstr ""
+#: gcov.c:515
+#, fuzzy, c-format
+msgid "%s:no functions found\n"
+msgstr "не знойдзена\n"
-#: gcov.c:524
-#, c-format
-msgid "Could not open data file %s.\n"
-msgstr "Ðемагчыма адчыніць файл з дадзенымі %s.\n"
+#: gcov.c:536 gcov.c:564
+#, fuzzy
+msgid "\n"
+msgstr ":\n"
-#: gcov.c:525
-msgid "Assuming that all execution counts are zero.\n"
-msgstr ""
+#: gcov.c:551
+#, fuzzy, c-format
+msgid "%s:creating `%s'\n"
+msgstr "%s: кампілюецца \"%s\"\n"
-#: gcov.c:534
-#, c-format
-msgid "No executable code associated with file %s.\n"
+#: gcov.c:555
+#, fuzzy, c-format
+msgid "%s:error writing output file `%s'\n"
msgstr ""
+"\n"
+"%s: памылка Ñ‡Ñ‹Ñ‚Ð°Ð½ÑŒÐ½Ñ Ñ„Ð°Ð¹Ð»Ð° ўводу `%s': %s\n"
-#: gcov.c:1186
-#, c-format
-msgid "%s of %d lines executed in %s %s\n"
-msgstr ""
+#: gcov.c:560
+#, fuzzy, c-format
+msgid "%s:could not open output file `%s'\n"
+msgstr "немагчыма адчыніць файл уводу `%s'"
-#: gcov.c:1191
-#, c-format
-msgid "No executable lines in %s %s\n"
-msgstr ""
+#: gcov.c:711
+#, fuzzy, c-format
+msgid "%s:cannot open graph file\n"
+msgstr "немагчыма адчыніць файл уводу `%s'"
-#: gcov.c:1198
+#: gcov.c:717
#, c-format
-msgid "%s of %d branches executed in %s %s\n"
+msgid "%s:not a gcov graph file\n"
msgstr ""
-#: gcov.c:1203
+#: gcov.c:730
#, c-format
-msgid "%s of %d branches taken at least once in %s %s\n"
+msgid "%s:version `%.4s', prefer `%.4s'\n"
msgstr ""
-#: gcov.c:1209
+#: gcov.c:782
#, c-format
-msgid "No branches in %s %s\n"
+msgid "%s:already seen blocks for `%s'\n"
msgstr ""
-#: gcov.c:1211
+#: gcov.c:903 gcov.c:1062
#, c-format
-msgid "%s of %d calls executed in %s %s\n"
+msgid "%s:corrupted\n"
msgstr ""
-#: gcov.c:1216
-#, c-format
-msgid "No calls in %s %s\n"
-msgstr ""
+#: gcov.c:976
+#, fuzzy, c-format
+msgid "%s:cannot open data file\n"
+msgstr "Ðемагчыма адчыніць файл з дадзенымі %s.\n"
-#: gcov.c:1351
-#, c-format
-msgid "didn't use all bb entries of graph, function %s\n"
-msgstr ""
+#: gcov.c:981
+#, fuzzy, c-format
+msgid "%s:not a gcov data file\n"
+msgstr "Ðемагчыма адчыніць файл з дадзенымі %s.\n"
-#: gcov.c:1353
+#: gcov.c:994
#, c-format
-msgid "block_num = %ld, num_blocks = %d\n"
+msgid "%s:version `%.4s', prefer version `%.4s'\n"
msgstr ""
-#: gcov.c:1367
+#: gcov.c:1000
#, c-format
-msgid "ERROR: unexpected line number %ld\n"
+msgid "%s:stamp mismatch with graph file\n"
msgstr ""
-#: gcov.c:1383
+#: gcov.c:1026
#, fuzzy, c-format
-msgid "ERROR: too many basic blocks in function %s\n"
-msgstr "вельмі шмат аргумÑнтаў у функцыі `%s'"
-
-#: gcov.c:1398
-#, c-format
-msgid "ERROR: out of range line number in function %s\n"
-msgstr ""
-
-#: gcov.c:1470
-#, c-format
-msgid "Could not open source file %s.\n"
-msgstr ""
+msgid "%s:unknown function `%u'\n"
+msgstr "у функцыі \"%s\":"
-#: gcov.c:1480
+#: gcov.c:1039
#, c-format
-msgid "Warning: source file %s is newer than %s\n"
+msgid "%s:profile mismatch for `%s'\n"
msgstr ""
-#: gcov.c:1510
+#: gcov.c:1062
#, c-format
-msgid "Unexpected EOF while reading source file %s.\n"
+msgid "%s:overflowed\n"
msgstr ""
-#: gcov.c:1532
+#: gcov.c:1085
#, c-format
-msgid "call %2d never executed\n"
+msgid "%s:`%s' lacks entry and/or exit blocks\n"
msgstr ""
-#: gcov.c:1535
+#: gcov.c:1090
#, c-format
-msgid "call %2d returns %s\n"
+msgid "%s:`%s' has arcs to entry block\n"
msgstr ""
-#: gcov.c:1543
+#: gcov.c:1098
#, c-format
-msgid "branch %2d never executed\n"
+msgid "%s:`%s' has arcs from exit block\n"
msgstr ""
-#: gcov.c:1546
+#: gcov.c:1306
#, c-format
-msgid "branch %2d taken %s\n"
+msgid "%s:graph is unsolvable for `%s'\n"
msgstr ""
-#: gcov.c:1610
-#, c-format
-msgid "Creating %s.\n"
-msgstr ""
-
-#: gcov.c:1613
+#: gcov.c:1386
#, fuzzy, c-format
-msgid "Error writing output file %s.\n"
-msgstr "памылка запіÑу Ñž %s"
-
-#: gcov.c:1618
-#, c-format
-msgid "Could not open output file %s.\n"
-msgstr ""
-
-#: gcse.c:763
-#, c-format
-msgid "GCSE disabled: %d > 1000 basic blocks and %d >= 20 edges/basic block"
-msgstr ""
+msgid "%s `%s'\n"
+msgstr "Ñк `%D'"
-#: gcse.c:775
+#: gcov.c:1389
#, c-format
-msgid "GCSE disabled: %d basic blocks and %d registers"
+msgid "Lines executed:%s of %d\n"
msgstr ""
-#: genautomata.c:1490
-#, c-format
-msgid "Name `%s' contains quotes"
+#: gcov.c:1393
+msgid "No executable lines"
msgstr ""
-#: genautomata.c:1621
+#: gcov.c:1399
#, c-format
-msgid "invalid string `%s' in define_cpu_unit"
+msgid "Branches executed:%s of %d\n"
msgstr ""
-#: genautomata.c:1650
+#: gcov.c:1403
#, c-format
-msgid "invalid string `%s' in define_query_cpu_unit"
+msgid "Taken at least once:%s of %d\n"
msgstr ""
-#: genautomata.c:1682 genautomata.c:1685
-#, c-format
-msgid "invalid string `%s' in define_bypass"
+#: gcov.c:1409
+msgid "No branches\n"
msgstr ""
-#: genautomata.c:1720
+#: gcov.c:1411
#, c-format
-msgid "invalid first string `%s' in exclusion_set"
+msgid "Calls executed:%s of %d\n"
msgstr ""
-#: genautomata.c:1724
-#, c-format
-msgid "invalid second string `%s' in exclusion_set"
+#: gcov.c:1415
+msgid "No calls\n"
msgstr ""
-#: genautomata.c:1760
-#, c-format
-msgid "invalid first string `%s' in presence_set"
-msgstr ""
+#: gcov.c:1556
+#, fuzzy, c-format
+msgid "%s:no lines for `%s'\n"
+msgstr "%s перад \"%s\""
-#: genautomata.c:1764
+#: gcov.c:1751
#, c-format
-msgid "invalid second string `%s' in presence_set"
+msgid "call %2d returned %s\n"
msgstr ""
-#: genautomata.c:1800
+#: gcov.c:1756
#, c-format
-msgid "invalid first string `%s' in absence_set"
+msgid "call %2d never executed\n"
msgstr ""
-#: genautomata.c:1804
+#: gcov.c:1761
#, c-format
-msgid "invalid second string `%s' in absence_set"
+msgid "branch %2d taken %s%s\n"
msgstr ""
-#: genautomata.c:1837
+#: gcov.c:1765
#, c-format
-msgid "invalid string `%s' in define_automaton"
+msgid "branch %2d never executed\n"
msgstr ""
-#: genautomata.c:1868
+#: gcov.c:1770
#, fuzzy, c-format
-msgid "invalid option `%s' in automata_option"
-msgstr "ÐерÑчаіÑны выбар \"%s\""
+msgid "unconditional %2d taken %s\n"
+msgstr "невÑÐ´Ð¾Ð¼Ð°Ñ Ð½Ð°Ð·Ð²Ð° Ñ€ÑгіÑтра: %s\n"
-#: genautomata.c:1890
+#: gcov.c:1773
#, c-format
-msgid "garbage after ) in reservation `%s'"
+msgid "unconditional %2d never executed\n"
msgstr ""
-#: genautomata.c:1921 genautomata.c:1954 genautomata.c:1981
+#: gcov.c:1805
#, fuzzy, c-format
-msgid "invalid `%s' in reservation `%s'"
-msgstr "ÐерÑчаіÑнае абвÑшчÑнне"
-
-#: genautomata.c:1932
-#, c-format
-msgid "repetition `%s' <= 1 in reservation `%s'"
-msgstr ""
-
-#: genautomata.c:2425
-#, c-format
-msgid "unit `%s' in exclusion is not declared"
-msgstr ""
-
-#: genautomata.c:2427
-#, c-format
-msgid "`%s' in exclusion is not unit"
-msgstr ""
-
-#: genautomata.c:2465
-#, c-format
-msgid "unit `%s' excludes itself"
-msgstr ""
+msgid "%s:cannot open source file\n"
+msgstr "не магу знайÑці крыніцу %s"
-#: genautomata.c:2473
+#: gcov.c:1815
#, c-format
-msgid "units `%s' and `%s' in exclusion set belong to different automata"
+msgid "%s:source file is newer than graph file `%s'\n"
msgstr ""
-#: genautomata.c:2603 genautomata.c:2609
-#, c-format
-msgid "unit `%s' excludes and requires presence of `%s'"
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:747
+msgid "GCSE disabled"
msgstr ""
-#: genautomata.c:2623 genautomata.c:2629
-#, c-format
-msgid "unit `%s' requires absence and presence of `%s'"
+#: gcse.c:6108
+msgid "NULL pointer checks disabled"
msgstr ""
-#: genautomata.c:2692 genautomata.c:2695
-#, fuzzy, c-format
-msgid "repeated declaration of automaton `%s'"
-msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-
-#: genautomata.c:2711
-#, c-format
-msgid "define_insn_reservation `%s' has negative latency time"
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:7994
+msgid "jump bypassing disabled"
msgstr ""
-#: genautomata.c:2717
+#: gcse.c:8055
#, c-format
-msgid "`%s' is already used as insn reservation name"
+msgid "%s: %d basic blocks and %d edges/basic block"
msgstr ""
-#: genautomata.c:2723
+#: gcse.c:8068
#, c-format
-msgid "define_bypass `%s - %s' has negative latency time"
+msgid "%s: %d basic blocks and %d registers"
msgstr ""
-#: genautomata.c:2737
+#: ggc-common.c:398 ggc-common.c:406 ggc-common.c:487 ggc-common.c:507
+#: ggc-page.c:2030 ggc-page.c:2062 ggc-page.c:2069 ggc-zone.c:1361
+#: ggc-zone.c:1367 ggc-zone.c:1372 ggc-zone.c:1379
#, fuzzy, c-format
-msgid "automaton `%s' is not declared"
-msgstr "Ð²Ñ–Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ñ‹Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ– не могуць быць ÑÑброўÑкімі"
-
-#: genautomata.c:2747
-#, c-format
-msgid "define_unit `%s' without automaton when one defined"
-msgstr ""
-
-#: genautomata.c:2753
-#, fuzzy, c-format
-msgid "`%s' is declared as cpu unit"
-msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-
-#: genautomata.c:2762
-#, fuzzy, c-format
-msgid "`%s' is declared as cpu reservation"
-msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-
-#: genautomata.c:2772
-#, fuzzy, c-format
-msgid "repeated declaration of unit `%s'"
-msgstr "пуÑтое абвÑшчÑнне"
-
-#: genautomata.c:2775
-#, fuzzy, c-format
-msgid "repeated declaration of reservation `%s'"
-msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
+msgid "can't write PCH file: %m"
+msgstr "не магу запіÑаць Ñž %s"
-#: genautomata.c:2790 genautomata.c:2793
+#: ggc-common.c:500
#, fuzzy, c-format
-msgid "there is no insn reservation `%s'"
-msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+msgid "can't get position in PCH file: %m"
+msgstr "немагчыма зачыніць уваходзÑчы файл %s"
-#: genautomata.c:2810 genautomata.c:2815
+#: ggc-common.c:510
#, fuzzy, c-format
-msgid "the same bypass `%s - %s' is already defined"
-msgstr "ÐšÐ»Ð°Ñ \"%s\" ужо Ñ–Ñнуе"
+msgid "can't write padding to PCH file: %m"
+msgstr "не магу запіÑаць Ñž %s"
-#: genautomata.c:2820
+#: ggc-common.c:563 ggc-common.c:571 ggc-common.c:578 ggc-common.c:581
+#: ggc-common.c:654 ggc-common.c:657 ggc-page.c:2157 ggc-zone.c:1389
#, fuzzy, c-format
-msgid "bypass `%s - %s' is already defined"
-msgstr "ÐšÐ»Ð°Ñ \"%s\" ужо Ñ–Ñнуе"
-
-#: genautomata.c:2925 genautomata.c:2927
-#, c-format
-msgid "automaton `%s' is not used"
-msgstr ""
+msgid "can't read PCH file: %m"
+msgstr "не магу прачытаць з %s"
-#: genautomata.c:2950
-#, c-format
-msgid "undeclared unit or reservation `%s'"
+#: ggc-common.c:681
+msgid "had to relocate PCH"
msgstr ""
-#: genautomata.c:3028 genautomata.c:3030
-#, fuzzy, c-format
-msgid "unit `%s' is not used"
-msgstr "адмеціна `%s' вызначана, але Ð½Ñ Ð²Ñ‹ÐºÐ°Ñ€Ñ‹Ñтоўваецца"
-
-#: genautomata.c:3035 genautomata.c:3037
-#, fuzzy, c-format
-msgid "reservation `%s' is not used"
-msgstr "вÑртаемы тып \"%s\" не \"int\""
-
-#: genautomata.c:3134
-#, fuzzy, c-format
-msgid "cycle in definition of reservation `%s'"
-msgstr "перанакіраванне stdout: %s"
-
-#: genautomata.c:5333
+#: ggc-page.c:1325
#, c-format
-msgid "Units `%s' and `%s' should be in the same automaton"
+msgid "open /dev/zero: %m"
msgstr ""
-#: genautomata.c:9441
+#: ggc-page.c:2047 ggc-page.c:2053
#, fuzzy
-msgid "-split has no argument."
-msgstr "нÑма аргументаў"
-
-#: genautomata.c:9442
-msgid "option `-split' has not been implemented yet\n"
-msgstr ""
-
-#: genautomata.c:9486 genautomata.c:9491
-#, c-format
-msgid "Automaton `%s': Insn `%s' will never be issued"
-msgstr ""
-
-#: genautomata.c:9498 genautomata.c:9501
-#, c-format
-msgid "Insn `%s' will never be issued"
-msgstr ""
+msgid "can't write PCH file"
+msgstr "не магу запіÑаць Ñž %s"
-#: genautomata.c:9649
-msgid "Errors in DFA description"
+#: ggc-simple.c:506
+msgid "Generating PCH files is not supported when using ggc-simple.c"
msgstr ""
-#: genautomata.c:9732
+#: global.c:356 global.c:369 global.c:383
#, fuzzy, c-format
-msgid "Error in writing DFA description file %s"
-msgstr "памылка запіÑу Ñž %s"
-
-#: genconditions.c:196
-#, fuzzy
-msgid "No input file name."
-msgstr "нÑма ўваходзÑчых файлаў"
-
-#: ggc-page.c:1265
-msgid "open /dev/zero"
-msgstr ""
+msgid "%s cannot be used in asm here"
+msgstr "\"%s\" звычайна функцыÑ"
-#: graph.c:420 profile.c:1204 profile.c:1211 toplev.c:1836 toplev.c:5168
-#: f/com.c:14210 java/jcf-parse.c:917 java/jcf-parse.c:1063 java/lex.c:1776
-#: objc/objc-act.c:449
-#, c-format
-msgid "can't open %s"
+#: graph.c:403 toplev.c:1481 toplev.c:4408 f/com.c:14202 java/jcf-parse.c:883
+#: java/jcf-parse.c:1030 java/lex.c:1828 objc/objc-act.c:503
+#, fuzzy, c-format
+msgid "can't open %s: %m"
msgstr "немагчыма адчыніць %s"
#: haifa-sched.c:196
@@ -6129,71 +5901,79 @@ msgstr "немагчыма адчыніць %s"
msgid "fix_sched_param: unknown param: %s"
msgstr ""
-#: integrate.c:174
+#: integrate.c:166
msgid "function cannot be inline"
msgstr ""
-#: integrate.c:178
+#: integrate.c:170
msgid "varargs function cannot be inline"
msgstr ""
-#: integrate.c:181
+#: integrate.c:173
msgid "function using alloca cannot be inline"
msgstr ""
-#: integrate.c:184
+#: integrate.c:176
+msgid "function using longjmp cannot be inline"
+msgstr ""
+
+#: integrate.c:179
msgid "function using setjmp cannot be inline"
msgstr ""
-#: integrate.c:187
+#: integrate.c:182
msgid "function uses __builtin_eh_return"
msgstr ""
-#: integrate.c:190
+#: integrate.c:185
msgid "function with nested functions cannot be inline"
msgstr ""
-#: integrate.c:194
+#: integrate.c:189
msgid "function with label addresses used in initializers cannot inline"
msgstr ""
-#: integrate.c:201 integrate.c:245
+#: integrate.c:196 integrate.c:240
msgid "function too large to be inline"
msgstr ""
-#: integrate.c:211
+#: integrate.c:206
msgid "no prototype, and parameter address used; cannot be inline"
msgstr ""
-#: integrate.c:218 integrate.c:263
+#: integrate.c:213 integrate.c:258
msgid "inline functions not supported for this return value type"
msgstr ""
-#: integrate.c:223
+#: integrate.c:218
msgid "function with varying-size return value cannot be inline"
msgstr ""
-#: integrate.c:230
+#: integrate.c:225
msgid "function with varying-size parameter cannot be inline"
msgstr ""
-#: integrate.c:233
+#: integrate.c:228
msgid "function with transparent unit parameter cannot be inline"
msgstr ""
-#: integrate.c:252
+#: integrate.c:247
msgid "function with computed jump cannot inline"
msgstr ""
-#: integrate.c:256
+#: integrate.c:251
msgid "function with nonlocal goto cannot be inline"
msgstr ""
-#: integrate.c:270
+#: integrate.c:265
msgid "function with target specific attribute(s) cannot be inlined"
msgstr ""
-#: line-map.c:198
+#: jump.c:1896
+msgid "%Hwill never be executed"
+msgstr ""
+
+#: line-map.c:202
#, c-format
msgid "In file included from %s:%u"
msgstr ""
@@ -6210,69 +5990,162 @@ msgstr ""
#. with all the "from"s lined up.
#. The trailing comma is at the beginning of this message,
#. and the trailing colon is not translated.
-#: line-map.c:216
+#: line-map.c:220
#, c-format
msgid ""
",\n"
" from %s:%u"
msgstr ""
+#. What to print when a switch has no documentation.
+#: opts.c:149
+msgid "This switch lacks documentation"
+msgstr ""
+
+#. Eventually this should become a hard error IMO.
+#: opts.c:318
+#, c-format
+msgid "command line option \"%s\" is valid for %s but not for %s"
+msgstr ""
+
+#: opts.c:406
+#, fuzzy, c-format
+msgid "missing argument to \"%s\""
+msgstr "аргумент Ð´Ð»Ñ \"%s\" прапушчан"
+
+#: opts.c:416
+#, fuzzy, c-format
+msgid "argument to \"%s\" should be a non-negative integer"
+msgstr "першым аргументам \"%s\" павінен быць \"int\""
+
+#: opts.c:463
+#, fuzzy, c-format
+msgid "unrecognized command line option \"%s\""
+msgstr "ÐераÑпазнаны выбар \"%s\""
+
+#: opts.c:646
+msgid "-Wuninitialized is not supported without -O"
+msgstr ""
+
+#: opts.c:1350
+#, fuzzy, c-format
+msgid "unrecognized register name \"%s\""
+msgstr "нераÑÐ¿Ð°Ð·Ð½Ð°Ð½Ð°Ñ Ð½Ð°Ð·Ð²Ð° ÑÑкцыі \"%s\""
+
+#: opts.c:1394
+#, fuzzy, c-format
+msgid "unknown tls-model \"%s\""
+msgstr "невÑдомы Ñ€Ñжым машыны \"%s\""
+
+#: opts.c:1450
+msgid "-fwritable-strings is deprecated; see documentation for details"
+msgstr ""
+
+#: opts.c:1534
+#, c-format
+msgid "%s: --param arguments should be of the form NAME=VALUE"
+msgstr ""
+
+#: opts.c:1539
+#, fuzzy, c-format
+msgid "invalid --param value `%s'"
+msgstr "нерÑчаіÑны парамÑÑ‚Ñ€ `%s'"
+
+#: opts.c:1635
+#, fuzzy
+msgid "target system does not support debug output"
+msgstr "ISO C не падтрымлівае комлекÑÐ½Ñ‹Ñ Ñ†ÑÐ»Ð°Ð»Ñ–ÐºÐ°Ð²Ñ‹Ñ Ñ‚Ñ‹Ð¿Ñ‹"
+
+#: opts.c:1642
+#, fuzzy, c-format
+msgid "debug format \"%s\" conflicts with prior selection"
+msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
+
+#: opts.c:1658
+#, fuzzy, c-format
+msgid "unrecognised debug output level \"%s\""
+msgstr "нераÑÐ¿Ð°Ð·Ð½Ð°Ð½Ð°Ñ Ð½Ð°Ð·Ð²Ð° ÑÑкцыі \"%s\""
+
+#: opts.c:1660
+#, c-format
+msgid "debug output level %s is too high"
+msgstr ""
+
+#: opts.c:1679
+msgid "The following options are language-independent:\n"
+msgstr ""
+
+#: opts.c:1686
+#, c-format
+msgid ""
+"The %s front end recognizes the following options:\n"
+"\n"
+msgstr ""
+
+#: opts.c:1700
+msgid "The --param option recognizes the following as parameters:\n"
+msgstr ""
+
#. If we didn't find this parameter, issue an error message.
-#: params.c:80
+#: params.c:76
#, c-format
msgid "invalid parameter `%s'"
msgstr "нерÑчаіÑны парамÑÑ‚Ñ€ `%s'"
-#: profile.c:397
-#, c-format
-msgid "Profile does not match flowgraph of function %s (out of date?)"
+#: profile.c:288
+msgid "corrupted profile info: run_max * runs < sum_max"
msgstr ""
-#: profile.c:400
-msgid ".da file corrupted"
+#: profile.c:294
+msgid "corrupted profile info: sum_all is smaller than sum_max"
msgstr ""
-#: profile.c:634
+#: profile.c:336
#, c-format
-msgid "corrupted profile info: prob for %d-%d thought to be %d"
+msgid "corrupted profile info: edge from %i to %i exceeds maximal count"
msgstr ""
-#: profile.c:1226
+#: profile.c:499
#, c-format
-msgid "file %s not found, execution counts assumed to be zero"
+msgid "corrupted profile info: number of iterations for basic block %d thought to be %i"
+msgstr ""
+
+#: profile.c:526
+#, c-format
+msgid "corrupted profile info: number of executions for edge %d-%d thought to be %i"
msgstr ""
-#: protoize.c:542
+#: protoize.c:534
#, c-format
msgid "%s: internal abort\n"
msgstr "%s: ÑƒÐ½ÑƒÑ‚Ñ€Ð°Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ° (датÑрміновае завÑршÑньне)\n"
-#: protoize.c:633
+#: protoize.c:592
#, c-format
msgid "%s: error writing file `%s': %s\n"
msgstr ""
-#: protoize.c:678
+#: protoize.c:636
#, c-format
msgid "%s: usage '%s [ -VqfnkN ] [ -i <istring> ] [ filename ... ]'\n"
msgstr ""
-#: protoize.c:681
+#: protoize.c:639
#, c-format
msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B <dirname> ] [ filename ... ]'\n"
msgstr ""
-#: protoize.c:788
+#: protoize.c:745
#, c-format
msgid "%s: warning: no read access for file `%s'\n"
msgstr ""
-#: protoize.c:796
+#: protoize.c:753
#, c-format
msgid "%s: warning: no write access for file `%s'\n"
msgstr ""
-#: protoize.c:804
+#: protoize.c:761
#, c-format
msgid "%s: warning: no write access for dir containing `%s'\n"
msgstr ""
@@ -6280,235 +6153,235 @@ msgstr ""
#. Catch cases like /.. where we try to backup to a
#. point above the absolute root of the logical file
#. system.
-#: protoize.c:1222
+#: protoize.c:1148
#, c-format
msgid "%s: invalid file name: %s\n"
msgstr ""
-#: protoize.c:1374
+#: protoize.c:1296
#, c-format
msgid "%s: %s: can't get status: %s\n"
msgstr ""
-#: protoize.c:1395
+#: protoize.c:1317
#, c-format
msgid ""
"\n"
"%s: fatal error: aux info file corrupted at line %d\n"
msgstr ""
-#: protoize.c:1731
+#: protoize.c:1646
#, c-format
msgid "%s:%d: declaration of function `%s' takes different forms\n"
msgstr ""
-#: protoize.c:1989
+#: protoize.c:1901
#, c-format
msgid "%s: compiling `%s'\n"
msgstr "%s: кампілюецца \"%s\"\n"
-#: protoize.c:2012
+#: protoize.c:1924
#, c-format
msgid "%s: wait: %s\n"
msgstr ""
-#: protoize.c:2017
+#: protoize.c:1929
#, c-format
msgid "%s: subprocess got fatal signal %d\n"
msgstr ""
-#: protoize.c:2025
+#: protoize.c:1937
#, c-format
msgid "%s: %s exited with status %d\n"
msgstr ""
-#: protoize.c:2077
+#: protoize.c:1986
#, c-format
msgid "%s: warning: missing SYSCALLS file `%s'\n"
msgstr ""
-#: protoize.c:2086 protoize.c:2115
+#: protoize.c:1995 protoize.c:2024
#, c-format
msgid "%s: can't read aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2131 protoize.c:2159
+#: protoize.c:2040 protoize.c:2068
#, c-format
msgid "%s: can't get status of aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2187
+#: protoize.c:2096
#, c-format
msgid "%s: can't open aux info file `%s' for reading: %s\n"
msgstr ""
-#: protoize.c:2205
+#: protoize.c:2114
#, c-format
msgid "%s: error reading aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2218
+#: protoize.c:2127
#, c-format
msgid "%s: error closing aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2234
+#: protoize.c:2143
#, c-format
msgid "%s: can't delete aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2316 protoize.c:4318
+#: protoize.c:2225 protoize.c:4195
#, c-format
msgid "%s: can't delete file `%s': %s\n"
msgstr "%s: немагчыма знішчыць файл \"%s\": %s\n"
-#: protoize.c:2395
+#: protoize.c:2303
#, c-format
msgid "%s: warning: can't rename file `%s' to `%s': %s\n"
msgstr ""
-#: protoize.c:2520
+#: protoize.c:2425
#, c-format
msgid "%s: conflicting extern definitions of '%s'\n"
msgstr ""
-#: protoize.c:2524
+#: protoize.c:2429
#, c-format
msgid "%s: declarations of '%s' will not be converted\n"
msgstr ""
-#: protoize.c:2526
+#: protoize.c:2431
#, c-format
msgid "%s: conflict list for '%s' follows:\n"
msgstr ""
-#: protoize.c:2559
+#: protoize.c:2464
#, c-format
msgid "%s: warning: using formals list from %s(%d) for function `%s'\n"
msgstr ""
-#: protoize.c:2599
+#: protoize.c:2504
#, c-format
msgid "%s: %d: `%s' used but missing from SYSCALLS\n"
msgstr ""
-#: protoize.c:2605
+#: protoize.c:2510
#, c-format
msgid "%s: %d: warning: no extern definition for `%s'\n"
msgstr "%s: %d: увага: нÑма знешнÑга (extern) абвÑшчÑÐ½Ð½Ñ Ð´Ð»Ñ \"%s\"\n"
-#: protoize.c:2636
+#: protoize.c:2540
#, c-format
msgid "%s: warning: no static definition for `%s' in file `%s'\n"
msgstr ""
-#: protoize.c:2642
+#: protoize.c:2546
#, c-format
msgid "%s: multiple static defs of `%s' in file `%s'\n"
msgstr ""
-#: protoize.c:2815 protoize.c:2818
+#: protoize.c:2716 protoize.c:2719
#, c-format
msgid "%s: %d: warning: source too confusing\n"
msgstr ""
-#: protoize.c:3024
+#: protoize.c:2915
#, c-format
msgid "%s: %d: warning: varargs function declaration not converted\n"
msgstr ""
-#: protoize.c:3039
+#: protoize.c:2930
#, c-format
msgid "%s: declaration of function `%s' not converted\n"
msgstr ""
-#: protoize.c:3162
+#: protoize.c:3053
#, c-format
msgid "%s: warning: too many parameter lists in declaration of `%s'\n"
msgstr ""
-#: protoize.c:3183
+#: protoize.c:3074
#, c-format
msgid ""
"\n"
"%s: warning: too few parameter lists in declaration of `%s'\n"
msgstr ""
-#: protoize.c:3281
+#: protoize.c:3170
#, c-format
msgid "%s: %d: warning: found `%s' but expected `%s'\n"
msgstr ""
-#: protoize.c:3459
+#: protoize.c:3345
#, c-format
msgid "%s: local declaration for function `%s' not inserted\n"
msgstr ""
-#: protoize.c:3486
+#: protoize.c:3372
#, c-format
msgid ""
"\n"
"%s: %d: warning: can't add declaration of `%s' into macro call\n"
msgstr ""
-#: protoize.c:3560
+#: protoize.c:3444
#, c-format
msgid "%s: global declarations for file `%s' not inserted\n"
msgstr ""
-#: protoize.c:3651 protoize.c:3681
+#: protoize.c:3533 protoize.c:3563
#, c-format
msgid "%s: definition of function `%s' not converted\n"
msgstr ""
-#: protoize.c:3670
+#: protoize.c:3552
#, c-format
msgid "%s: %d: warning: definition of %s not converted\n"
msgstr ""
-#: protoize.c:4000
+#: protoize.c:3878
#, c-format
msgid "%s: found definition of `%s' at %s(%d)\n"
msgstr ""
#. If we make it here, then we did not know about this
#. function definition.
-#: protoize.c:4016
+#: protoize.c:3894
#, c-format
msgid "%s: %d: warning: `%s' excluded by preprocessing\n"
msgstr ""
-#: protoize.c:4019
+#: protoize.c:3897
#, c-format
msgid "%s: function definition not converted\n"
msgstr ""
-#: protoize.c:4078
+#: protoize.c:3955
#, c-format
msgid "%s: `%s' not converted\n"
msgstr ""
-#: protoize.c:4086
+#: protoize.c:3963
#, c-format
msgid "%s: would convert file `%s'\n"
msgstr ""
-#: protoize.c:4089
+#: protoize.c:3966
#, c-format
msgid "%s: converting file `%s'\n"
msgstr ""
-#: protoize.c:4099
+#: protoize.c:3976
#, c-format
msgid "%s: can't get status for file `%s': %s\n"
msgstr ""
-#: protoize.c:4141
+#: protoize.c:4018
#, c-format
msgid "%s: can't open file `%s' for reading: %s\n"
msgstr "%s: немагчыма адчыніць файл `%s' Ð´Ð»Ñ Ñ‡Ñ‹Ñ‚Ð°Ð½ÑŒÐ½Ñ: %s\n"
-#: protoize.c:4156
+#: protoize.c:4033
#, c-format
msgid ""
"\n"
@@ -6517,37 +6390,37 @@ msgstr ""
"\n"
"%s: памылка Ñ‡Ñ‹Ñ‚Ð°Ð½ÑŒÐ½Ñ Ñ„Ð°Ð¹Ð»Ð° ўводу `%s': %s\n"
-#: protoize.c:4190
+#: protoize.c:4067
#, c-format
msgid "%s: can't create/open clean file `%s': %s\n"
msgstr ""
-#: protoize.c:4295
+#: protoize.c:4172
#, c-format
msgid "%s: warning: file `%s' already saved in `%s'\n"
msgstr "%s: увага: файл \"%s\" ужо запіÑан у \"%s\"\n"
-#: protoize.c:4303
+#: protoize.c:4180
#, c-format
msgid "%s: can't link file `%s' to `%s': %s\n"
msgstr ""
-#: protoize.c:4333
+#: protoize.c:4210
#, c-format
msgid "%s: can't create/open output file `%s': %s\n"
msgstr ""
-#: protoize.c:4366
+#: protoize.c:4243
#, c-format
msgid "%s: can't change mode of file `%s': %s\n"
msgstr "%s: немагчыма зьмÑніць Ñ€Ñжым файла `%s': %s\n"
-#: protoize.c:4541
+#: protoize.c:4416
#, c-format
msgid "%s: cannot get working directory: %s\n"
msgstr ""
-#: protoize.c:4639
+#: protoize.c:4514
#, c-format
msgid "%s: input file names must have .c suffixes: %s\n"
msgstr "%s: файл уводу павінен мець ÑÑƒÑ„Ñ–ÐºÑ .c: %s\n"
@@ -6556,1405 +6429,541 @@ msgstr "%s: файл уводу павінен мець ÑÑƒÑ„Ñ–ÐºÑ .c: %s\n"
msgid "Didn't find a coloring.\n"
msgstr ""
-#: reg-stack.c:673
+#: reg-stack.c:665
#, c-format
msgid "output constraint %d must specify a single register"
msgstr ""
-#: reg-stack.c:683
+#: reg-stack.c:675
#, c-format
msgid "output constraint %d cannot be specified together with \"%s\" clobber"
msgstr ""
-#: reg-stack.c:706
+#: reg-stack.c:698
msgid "output regs must be grouped at top of stack"
msgstr ""
-#: reg-stack.c:743
+#: reg-stack.c:735
msgid "implicitly popped regs must be grouped at top of stack"
msgstr ""
-#: reg-stack.c:762
+#: reg-stack.c:754
#, c-format
msgid "output operand %d must use `&' constraint"
msgstr ""
-#: regclass.c:756
+#: regclass.c:743
#, c-format
msgid "can't use '%s' as a %s register"
msgstr ""
-#: regclass.c:771 config/ia64/ia64.c:4304 config/ia64/ia64.c:4311
+#: regclass.c:758 config/ia64/ia64.c:4640 config/ia64/ia64.c:4647
#, c-format
msgid "unknown register name: %s"
msgstr "невÑÐ´Ð¾Ð¼Ð°Ñ Ð½Ð°Ð·Ð²Ð° Ñ€ÑгіÑтра: %s"
-#: regclass.c:782
+#: regclass.c:768
msgid "global register variable follows a function definition"
msgstr ""
-#: regclass.c:786
+#: regclass.c:772
msgid "register used for two global register variables"
msgstr ""
-#: regclass.c:791
+#: regclass.c:777
msgid "call-clobbered register used for global register variable"
msgstr ""
-#: regrename.c:1899
+#: regrename.c:1846
#, c-format
msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)"
msgstr ""
-#: regrename.c:1911
+#: regrename.c:1858
#, c-format
msgid "validate_value_data: Loop in regno chain (%u)"
msgstr ""
-#: regrename.c:1914
+#: regrename.c:1861
#, c-format
msgid "validate_value_data: [%u] Bad oldest_regno (%u)"
msgstr ""
-#: regrename.c:1926
+#: regrename.c:1873
#, c-format
msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
msgstr ""
-#: reload.c:1229
+#: reload.c:1254
msgid "cannot reload integer constant operand in `asm'"
msgstr ""
-#: reload.c:1251
+#: reload.c:1276
msgid "impossible register constraint in `asm'"
msgstr ""
-#: reload.c:3461
+#: reload.c:3489
msgid "`&' constraint used with no register class"
msgstr ""
-#: reload.c:3629
+#: reload.c:3657
msgid "unable to generate reloads for:"
msgstr ""
-#: reload.c:3630 reload.c:3844
+#: reload.c:3658 reload.c:3872
msgid "inconsistent operand constraints in an `asm'"
msgstr ""
-#: reload1.c:1250
+#: reload1.c:1212
msgid "frame size too large for reliable stack checking"
msgstr ""
-#: reload1.c:1253
+#: reload1.c:1215
msgid "try reducing the number of local variables"
msgstr ""
-#: reload1.c:1909
+#: reload1.c:1868
#, c-format
msgid "can't find a register in class `%s' while reloading `asm'"
msgstr ""
-#: reload1.c:1913
+#: reload1.c:1872
#, c-format
msgid "unable to find a register to spill in class `%s'"
msgstr ""
-#: reload1.c:1915
+#: reload1.c:1874
msgid "this is the insn:"
msgstr ""
-#: reload1.c:3938
+#: reload1.c:3871
msgid "`asm' operand requires impossible reload"
msgstr ""
#. It's the compiler's fault.
-#: reload1.c:5052
+#: reload1.c:4963
#, fuzzy
msgid "could not find a spill register"
msgstr "Ðе выкарыÑтоўваць Ñ€ÑгіÑтра sb"
-#: reload1.c:5057
+#: reload1.c:4968
msgid "`asm' operand constraint incompatible with operand size"
msgstr ""
#. It's the compiler's fault.
-#: reload1.c:6679
+#: reload1.c:6590
msgid "VOIDmode on an output"
msgstr ""
-#: reload1.c:6680
+#: reload1.c:6591
msgid "output operand is constant in `asm'"
msgstr ""
-#: rtl-error.c:140
+#: rtl-error.c:124
#, fuzzy
msgid "unrecognizable insn:"
msgstr "нераÑпазнаны выбар \"-%s\""
-#: rtl-error.c:142
+#: rtl-error.c:126
msgid "insn does not satisfy its constraints:"
msgstr ""
-#: rtl.c:535
+#: rtl.c:477
#, c-format
msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d"
msgstr ""
-#: rtl.c:550
+#: rtl.c:487
#, c-format
msgid "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr ""
-#: rtl.c:566
+#: rtl.c:497
#, c-format
msgid "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr ""
-#: rtl.c:579
+#: rtl.c:506
#, c-format
msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d"
msgstr ""
-#: rtl.c:593
+#: rtl.c:516
#, c-format
msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d"
msgstr ""
-#: rtl.c:608
+#: rtl.c:527
#, c-format
msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
msgstr ""
-#: rtl.c:623
+#: rtl.c:538
#, c-format
msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d"
msgstr ""
-#: stmt.c:766
+#: stmt.c:750
#, c-format
msgid "jump to `%s' invalidly jumps into binding contour"
msgstr ""
-#: stmt.c:1002 stmt.c:3766
-#, c-format
-msgid "label `%s' used before containing binding contour"
+#: stmt.c:977 stmt.c:3793
+msgid "%Jlabel '%D' used before containing binding contour"
msgstr ""
-#: stmt.c:1190
+#: stmt.c:1156
msgid "output operand constraint lacks `='"
msgstr ""
-#: stmt.c:1205
+#: stmt.c:1171
#, c-format
msgid "output constraint `%c' for operand %d is not at the beginning"
msgstr ""
-#: stmt.c:1227
+#: stmt.c:1193
msgid "operand constraint contains incorrectly positioned '+' or '='"
msgstr ""
-#: stmt.c:1233 stmt.c:1337
+#: stmt.c:1199 stmt.c:1301
#, c-format
msgid "`%%' constraint used with last operand"
msgstr ""
-#: stmt.c:1252
+#: stmt.c:1218
msgid "matching constraint not valid in output operand"
msgstr ""
-#: stmt.c:1328
+#: stmt.c:1260
+msgid "read-write constraint does not allow a register"
+msgstr ""
+
+#: stmt.c:1292
#, c-format
msgid "input operand constraint contains `%c'"
msgstr ""
-#: stmt.c:1368
+#: stmt.c:1334
msgid "matching constraint references invalid operand number"
msgstr ""
-#: stmt.c:1400
+#: stmt.c:1372
#, c-format
msgid "invalid punctuation `%c' in constraint"
msgstr ""
-#: stmt.c:1450
+#: stmt.c:1396
+msgid "matching constraint does not allow a register"
+msgstr ""
+
+#: stmt.c:1424
#, c-format
msgid "asm-specifier for variable `%s' conflicts with asm clobber list"
msgstr ""
-#: stmt.c:1540
+#: stmt.c:1514
#, c-format
msgid "unknown register name `%s' in `asm'"
msgstr ""
-#: stmt.c:1588
+#: stmt.c:1522
+#, c-format
+msgid "PIC register `%s' clobbered in `asm'"
+msgstr ""
+
+#: stmt.c:1571
#, c-format
msgid "more than %d operands in `asm'"
msgstr ""
-#: stmt.c:1650
+#: stmt.c:1633
#, c-format
msgid "output number %d not directly addressable"
msgstr ""
-#: stmt.c:1728
+#: stmt.c:1711
#, c-format
msgid "asm operand %d probably doesn't match constraints"
msgstr ""
-#: stmt.c:1738
+#: stmt.c:1721
#, c-format
msgid "use of memory input without lvalue in asm operand %d is deprecated"
msgstr ""
-#: stmt.c:1889
+#: stmt.c:1875
#, fuzzy
msgid "asm clobber conflict with output operand"
msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
-#: stmt.c:1894
+#: stmt.c:1880
#, fuzzy
msgid "asm clobber conflict with input operand"
msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
-#: stmt.c:1929
+#: stmt.c:1914
msgid "too many alternatives in `asm'"
msgstr ""
-#: stmt.c:1941
+#: stmt.c:1926
msgid "operand constraints for `asm' differ in number of alternatives"
msgstr ""
-#: stmt.c:1994
+#: stmt.c:1978
#, fuzzy, c-format
msgid "duplicate asm operand name '%s'"
msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-#: stmt.c:2081
+#: stmt.c:2076
msgid "missing close brace for named operand"
msgstr ""
-#: stmt.c:2109
+#: stmt.c:2104
#, fuzzy, c-format
msgid "undefined named operand '%s'"
msgstr "нераÑпазнаны аператар %s"
-#: stmt.c:3703
-#, c-format
-msgid "unused variable `%s'"
+#: stmt.c:2161
+msgid "%Hstatement with no effect"
+msgstr ""
+
+#: stmt.c:2317
+msgid "%Hvalue computed is not used"
+msgstr ""
+
+#: stmt.c:3733
+#, fuzzy
+msgid "%Junused variable '%D'"
msgstr "невыкарыÑÑ‚Ð¾ÑžÐ²Ð°ÐµÐ¼Ð°Ñ Ð¿ÐµÑ€Ð°Ð¼ÐµÐ½Ð½Ð°Ñ \"%s\""
-#: stmt.c:5189
+#: stmt.c:4508
+msgid "%Hunreachable code at beginning of %s"
+msgstr ""
+
+#: stmt.c:5136
#, c-format
msgid "enumeration value `%s' not handled in switch"
msgstr ""
-#: stmt.c:5214 stmt.c:5234
+#: stmt.c:5161 stmt.c:5181
#, c-format
msgid "case value `%ld' not in enumerated type"
msgstr ""
-#: stmt.c:5217 stmt.c:5237
+#: stmt.c:5164 stmt.c:5184
#, c-format
msgid "case value `%ld' not in enumerated type `%s'"
msgstr ""
-#: stmt.c:5310
+#: stmt.c:5401
msgid "switch missing default case"
msgstr ""
-#: stor-layout.c:178
+#: stor-layout.c:183
msgid "type size can't be explicitly evaluated"
msgstr ""
-#: stor-layout.c:180
+#: stor-layout.c:185
msgid "variable-size type declared outside of any function"
msgstr ""
-#: stor-layout.c:487
-#, c-format
-msgid "size of `%s' is %d bytes"
+#: stor-layout.c:515
+#, fuzzy
+msgid "%Jsize of '%D' is %d bytes"
msgstr "памер \"%s\" - %d байт"
-#: stor-layout.c:489
-#, c-format
-msgid "size of `%s' is larger than %d bytes"
+#: stor-layout.c:517
+#, fuzzy
+msgid "%Jsize of '%D' is larger than %d bytes"
msgstr "памер \"%s\" больш чам %d байт"
-#: stor-layout.c:909 stor-layout.c:1325
-#, c-format
-msgid "packed attribute causes inefficient alignment for `%s'"
+#: stor-layout.c:883
+msgid "%Jpacked attribute causes inefficient alignment for '%D'"
msgstr ""
-#: stor-layout.c:911 stor-layout.c:1327
-#, c-format
-msgid "packed attribute is unnecessary for `%s'"
+#: stor-layout.c:886
+#, fuzzy
+msgid "%Jpacked attribute is unnecessary for '%D'"
+msgstr "\"%s\" атрыбут ігнарыруецца"
+
+#: stor-layout.c:902
+msgid "%Jpadding struct to align '%D'"
msgstr ""
-#: stor-layout.c:926
+#: stor-layout.c:1245
+msgid "padding struct size to alignment boundary"
+msgstr ""
+
+#: stor-layout.c:1275
#, c-format
-msgid "padding struct to align `%s'"
+msgid "packed attribute causes inefficient alignment for `%s'"
msgstr ""
-#: stor-layout.c:1289
-msgid "padding struct size to alignment boundary"
+#: stor-layout.c:1277
+#, c-format
+msgid "packed attribute is unnecessary for `%s'"
msgstr ""
-#: stor-layout.c:1332
+#: stor-layout.c:1282
msgid "packed attribute causes inefficient alignment"
msgstr ""
-#: stor-layout.c:1334
+#: stor-layout.c:1284
msgid "packed attribute is unnecessary"
msgstr ""
-#: timevar.c:322
+#: targhooks.c:154
+msgid "__builtin_saveregs not supported by this target"
+msgstr "__buitin_saveregs не падтрымліваецца гÑтай мÑтай"
+
+#: timevar.c:314
#, c-format
msgid "cannot timevar_pop '%s' when top of timevars stack is '%s'"
msgstr ""
-#: timevar.c:453
+#: timevar.c:440
msgid ""
"\n"
"Execution times (seconds)\n"
msgstr ""
#. Print total time.
-#: timevar.c:503
+#: timevar.c:490
msgid " TOTAL :"
msgstr ""
-#: timevar.c:539
+#: timevar.c:513
#, c-format
msgid "time in %s: %ld.%06ld (%ld%%)\n"
msgstr ""
-#: tlink.c:399
+#: tlink.c:377
#, c-format
msgid "collect: reading %s\n"
msgstr ""
-#: tlink.c:502
+#: tlink.c:478
#, c-format
msgid "collect: recompiling %s\n"
msgstr ""
-#: tlink.c:674
+#: tlink.c:654
#, c-format
msgid "collect: tweaking %s in %s\n"
msgstr ""
-#: tlink.c:721
+#: tlink.c:700
+#, c-format
msgid "collect: relinking\n"
msgstr ""
-#: tlink.c:730
+#: tlink.c:709
#, c-format
msgid "ld returned %d exit status"
msgstr ""
-#: toplev.c:920
-msgid "Generate debugging info in default format"
-msgstr ""
-
-#: toplev.c:921
-msgid "Generate debugging info in default extended format"
-msgstr ""
-
-#: toplev.c:923
-msgid "Generate STABS format debug info"
-msgstr ""
-
-#: toplev.c:924
-msgid "Generate extended STABS format debug info"
-msgstr ""
-
-#: toplev.c:927
-msgid "Generate DWARF-1 format debug info"
-msgstr ""
-
-#: toplev.c:929
-msgid "Generate extended DWARF-1 format debug info"
-msgstr ""
-
-#: toplev.c:932
-msgid "Generate DWARF-2 debug info"
-msgstr ""
-
-#: toplev.c:935
-msgid "Generate XCOFF format debug info"
-msgstr ""
-
-#: toplev.c:936
-msgid "Generate extended XCOFF format debug info"
-msgstr ""
-
-#: toplev.c:939
-msgid "Generate COFF format debug info"
-msgstr ""
-
-#: toplev.c:942
-msgid "Generate VMS format debug info"
-msgstr ""
-
-#: toplev.c:981
-msgid "Perform DWARF2 duplicate elimination"
-msgstr ""
-
-#: toplev.c:983
-msgid "Do not store floats in registers"
-msgstr ""
-
-#: toplev.c:985
-msgid "Consider all mem refs through pointers as volatile"
-msgstr ""
-
-#: toplev.c:987
-msgid "Consider all mem refs to global data to be volatile"
-msgstr ""
-
-#: toplev.c:989
-msgid "Consider all mem refs to static data to be volatile"
-msgstr ""
-
-#: toplev.c:991
-msgid "Defer popping functions args from stack until later"
-msgstr ""
-
-#: toplev.c:993
-msgid "When possible do not generate stack frames"
-msgstr ""
-
-#: toplev.c:995
-msgid "Optimize sibling and tail recursive calls"
-msgstr ""
-
-#: toplev.c:997
-msgid "Perform superblock formation via tail duplication"
-msgstr ""
-
-#: toplev.c:999
-msgid "When running CSE, follow jumps to their targets"
-msgstr ""
-
-#: toplev.c:1001
-msgid "When running CSE, follow conditional jumps"
-msgstr ""
-
-#: toplev.c:1003
-msgid "Perform a number of minor, expensive optimizations"
-msgstr ""
-
-#: toplev.c:1005
-msgid "Perform jump threading optimizations"
-msgstr ""
-
-#: toplev.c:1007
-msgid "Perform strength reduction optimizations"
-msgstr ""
-
-#: toplev.c:1009
-msgid "Perform loop unrolling when iteration count is known"
-msgstr ""
-
-#: toplev.c:1011
-msgid "Perform loop unrolling for all loops"
-msgstr ""
-
-#: toplev.c:1013
-msgid "Generate prefetch instructions, if available, for arrays in loops"
-msgstr ""
-
-#: toplev.c:1015
-msgid "Force all loop invariant computations out of loops"
-msgstr ""
-
-#: toplev.c:1017
-msgid "Strength reduce all loop general induction variables"
-msgstr ""
-
-#: toplev.c:1019
-msgid "Store strings in writable data section"
-msgstr ""
-
-#: toplev.c:1021
-msgid "Enable machine specific peephole optimizations"
-msgstr ""
-
-#: toplev.c:1023
-msgid "Copy memory operands into registers before using"
-msgstr ""
-
-#: toplev.c:1025
-msgid "Copy memory address constants into regs before using"
-msgstr ""
-
-#: toplev.c:1027
-msgid "Allow function addresses to be held in registers"
-msgstr ""
-
-#: toplev.c:1029
-msgid "Integrate simple functions into their callers"
-msgstr ""
-
-#: toplev.c:1031
-msgid "Generate code for funcs even if they are fully inlined"
-msgstr ""
-
-#: toplev.c:1033
-msgid "Pay attention to the 'inline' keyword"
-msgstr ""
-
-#: toplev.c:1035
-msgid "Emit static const variables even if they are not used"
-msgstr ""
-
-#: toplev.c:1037
-msgid "Check for syntax errors, then stop"
-msgstr ""
-
-#: toplev.c:1039
-msgid "Mark data as shared rather than private"
-msgstr ""
-
-#: toplev.c:1041
-msgid "Enable saving registers around function calls"
-msgstr ""
-
-#: toplev.c:1043
-msgid "Return 'short' aggregates in memory, not registers"
-msgstr ""
-
-#: toplev.c:1045
-msgid "Return 'short' aggregates in registers"
-msgstr ""
-
-#: toplev.c:1047
-msgid "Attempt to fill delay slots of branch instructions"
-msgstr ""
-
-#: toplev.c:1049
-msgid "Perform the global common subexpression elimination"
-msgstr ""
-
-#: toplev.c:1051
-msgid "Perform enhanced load motion during global subexpression elimination"
-msgstr ""
-
-#: toplev.c:1053
-msgid "Perform store motion after global subexpression elimination"
-msgstr ""
-
-#: toplev.c:1055
-msgid "Perform the loop optimizations"
-msgstr ""
-
-#: toplev.c:1057
-msgid "Perform cross-jumping optimization"
-msgstr ""
-
-#: toplev.c:1059
-msgid "Perform conversion of conditional jumps to branchless equivalents"
-msgstr ""
-
-#: toplev.c:1061
-msgid "Perform conversion of conditional jumps to conditional execution"
-msgstr ""
-
-#: toplev.c:1063
-msgid "Run CSE pass after loop optimizations"
-msgstr ""
-
-#: toplev.c:1065
-msgid "Run the loop optimizer twice"
-msgstr ""
-
-#: toplev.c:1067
-msgid "Delete useless null pointer checks"
-msgstr ""
-
-#: toplev.c:1069
-msgid "Reschedule instructions before register allocation"
-msgstr ""
-
-#: toplev.c:1071
-msgid "Reschedule instructions after register allocation"
-msgstr ""
-
-#: toplev.c:1073
-msgid "Enable scheduling across basic blocks"
-msgstr ""
-
-#: toplev.c:1075
-msgid "Allow speculative motion of non-loads"
-msgstr ""
-
-#: toplev.c:1077
-msgid "Allow speculative motion of some loads"
-msgstr ""
-
-#: toplev.c:1079
-msgid "Allow speculative motion of more loads"
-msgstr ""
-
-#: toplev.c:1081
-msgid "Replace add,compare,branch with branch on count reg"
-msgstr ""
-
-#: toplev.c:1083
-msgid "Generate position independent code, if possible"
-msgstr ""
-
-#: toplev.c:1086
-msgid "Enable exception handling"
-msgstr "Уключыць апрацоўку выключÑньнÑÑž"
-
-#: toplev.c:1088
-msgid "Just generate unwind tables for exception handling"
-msgstr ""
-
-#: toplev.c:1090
-msgid "Generate unwind tables exact at each instruction boundary"
-msgstr ""
-
-#: toplev.c:1092
-msgid "Support synchronous non-call exceptions"
-msgstr ""
-
-#: toplev.c:1094
-msgid "Insert arc based program profiling code"
-msgstr ""
-
-#: toplev.c:1096
-msgid "Create data files needed by gcov"
-msgstr ""
-
-#: toplev.c:1098
-msgid "Use profiling information for branch probabilities"
-msgstr ""
-
-#: toplev.c:1100
-msgid "Enable basic program profiling code"
-msgstr ""
-
-#: toplev.c:1102
-msgid "Reorder basic blocks to improve code placement"
-msgstr ""
-
-#: toplev.c:1104
-msgid "Reorder functions to improve code placement"
-msgstr ""
-
-#: toplev.c:1106
-msgid "Do the register renaming optimization pass"
-msgstr ""
-
-#: toplev.c:1108
-msgid "Do the register copy-propagation optimization pass"
-msgstr ""
-
-#: toplev.c:1110
-msgid "Do not put uninitialized globals in the common section"
-msgstr ""
-
-#: toplev.c:1112
-msgid "Do not generate .size directives"
-msgstr ""
-
-#: toplev.c:1114
-msgid "place each function into its own section"
-msgstr ""
-
-#: toplev.c:1116
-msgid "place data items into their own section"
-msgstr ""
-
-#: toplev.c:1118
-msgid "Add extra commentary to assembler output"
-msgstr ""
-
-#: toplev.c:1120
-msgid "Output GNU ld formatted global initializers"
-msgstr ""
-
-#: toplev.c:1122
-msgid "Enables a register move optimization"
-msgstr ""
-
-#: toplev.c:1124
-msgid "Do the full regmove optimization pass"
-msgstr ""
-
-#: toplev.c:1126
-msgid "Pack structure members together without holes"
-msgstr ""
-
-#: toplev.c:1128
-msgid "Insert stack checking code into the program"
-msgstr "Уключаць код правÑркі ÑÑ‚Ñку Ñž праграму"
-
-#: toplev.c:1130
-msgid "Specify that arguments may alias each other & globals"
-msgstr ""
-
-#: toplev.c:1132
-msgid "Assume arguments may alias globals but not each other"
-msgstr ""
-
-#: toplev.c:1134
-msgid "Assume arguments do not alias each other or globals"
-msgstr ""
-
-#: toplev.c:1136
-msgid "Assume strict aliasing rules apply"
-msgstr ""
-
-#: toplev.c:1138
-msgid "Align the start of loops"
-msgstr ""
-
-#: toplev.c:1140
-msgid "Align labels which are only reached by jumping"
-msgstr ""
-
-#: toplev.c:1142
-msgid "Align all labels"
-msgstr ""
-
-#: toplev.c:1144
-msgid "Align the start of functions"
-msgstr ""
-
-#: toplev.c:1146
-msgid "Attempt to merge identical constants across compilation units"
-msgstr ""
-
-#: toplev.c:1148
-msgid "Attempt to merge identical constants and constant variables"
-msgstr ""
-
-#: toplev.c:1150
-msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
-msgstr ""
-
-#: toplev.c:1152
-msgid "Instrument function entry/exit with profiling calls"
-msgstr ""
-
-#: toplev.c:1154
-msgid "Put zero initialized data in the bss section"
-msgstr ""
-
-#: toplev.c:1156
-msgid "Enable SSA optimizations"
-msgstr "Уключаць SSA аптымізацыю"
-
-#: toplev.c:1158
-msgid "Enable SSA conditional constant propagation"
-msgstr ""
-
-#: toplev.c:1160
-msgid "Enable aggressive SSA dead code elimination"
-msgstr ""
-
-#: toplev.c:1162
-msgid "External symbols have a leading underscore"
-msgstr ""
-
-#: toplev.c:1164
-msgid "Process #ident directives"
-msgstr ""
-
-#: toplev.c:1166
-msgid "Enables an rtl peephole pass run before sched2"
-msgstr ""
-
-#: toplev.c:1168
-msgid "Assume no NaNs or +-Infs are generated"
-msgstr ""
-
-#: toplev.c:1170
-msgid "Enables guessing of branch probabilities"
-msgstr ""
-
-#: toplev.c:1172
-msgid "Set errno after built-in math functions"
-msgstr ""
-
-#: toplev.c:1174
-msgid "Floating-point operations can trap"
-msgstr ""
-
-#: toplev.c:1176
-msgid "Allow math optimizations that may violate IEEE or ANSI standards"
-msgstr ""
-
-#: toplev.c:1178
-msgid "Disable optimizations observable by IEEE signaling NaNs"
-msgstr ""
-
-#: toplev.c:1180
-#, fuzzy
-msgid "Generate code to check bounds before indexing arrays"
-msgstr "Генерыраваць код Ð´Ð»Ñ Intel as"
-
-#: toplev.c:1182
-msgid "Convert floating point constant to single precision constant"
-msgstr ""
-
-#: toplev.c:1184
-msgid "Report time taken by each compiler pass at end of run"
-msgstr ""
-
-#: toplev.c:1186
-msgid "Report on permanent memory allocation at end of run"
-msgstr ""
-
-#: toplev.c:1188
-msgid "Trap for signed overflow in addition / subtraction / multiplication"
-msgstr ""
-
-#: toplev.c:1190
-msgid "Use graph coloring register allocation."
-msgstr ""
-
-#: toplev.c:1207
-msgid "Compile just for ISO C90"
-msgstr ""
-
-#: toplev.c:1209
-msgid "Determine language standard"
-msgstr ""
-
-#: toplev.c:1213
-msgid "Make bit-fields by unsigned by default"
-msgstr ""
-
-#: toplev.c:1217
-msgid "Make 'char' be signed by default"
-msgstr ""
-
-#: toplev.c:1219
-msgid "Make 'char' be unsigned by default"
-msgstr ""
-
-#: toplev.c:1225
-msgid "Do not recognize the 'asm' keyword"
+#: toplev.c:1226
+#, c-format
+msgid "%s "
msgstr ""
#: toplev.c:1228
-#, fuzzy
-msgid "Do not recognize any built in functions"
-msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
-
-#: toplev.c:1230
-msgid "Assume normal C execution environment"
-msgstr ""
-
-#: toplev.c:1233
-msgid "Assume that standard libraries & main might not exist"
-msgstr ""
-
-#: toplev.c:1236
-msgid "Allow different types as args of ? operator"
-msgstr ""
-
-#: toplev.c:1239
-msgid "Allow the use of $ inside identifiers"
-msgstr ""
-
-#: toplev.c:1244
-msgid "Use the same size for double as for float"
-msgstr ""
-
-#: toplev.c:1247
-msgid "Use the smallest fitting integer to hold enums"
-msgstr ""
-
-#: toplev.c:1250
-msgid "Override the underlying type for wchar_t to `unsigned short'"
-msgstr ""
-
-#: toplev.c:1254
-msgid "Enable most warning messages"
-msgstr ""
-
-#: toplev.c:1256
-msgid "Warn about casting functions to incompatible types"
-msgstr ""
-
-#: toplev.c:1259
-msgid "Warn about functions which might be candidates for format attributes"
-msgstr ""
-
-#: toplev.c:1262
-msgid "Warn about casts which discard qualifiers"
-msgstr ""
-
-#: toplev.c:1265
-msgid "Warn about subscripts whose type is 'char'"
-msgstr ""
-
-#: toplev.c:1268 toplev.c:1271
-msgid "Warn if nested comments are detected"
-msgstr ""
-
-#: toplev.c:1274
-msgid "Warn about possibly confusing type conversions"
-msgstr ""
-
-#: toplev.c:1278
-msgid "Do not warn about compile-time integer division by zero"
-msgstr ""
-
-#: toplev.c:1280
-msgid "Warn about testing equality of floating point numbers"
-msgstr ""
-
-#: toplev.c:1283
-msgid "Warn about printf/scanf/strftime/strfmon format anomalies"
-msgstr ""
-
-#: toplev.c:1287
-msgid "Don't warn about too many arguments to format functions"
-msgstr ""
-
-#: toplev.c:1289
-msgid "Warn about non-string-literal format strings"
-msgstr ""
-
-#: toplev.c:1292
-msgid "Warn about possible security problems with format functions"
-msgstr ""
-
-#: toplev.c:1296
-msgid "Don't warn about strftime formats yielding 2 digit years"
-msgstr ""
-
-#: toplev.c:1298
-msgid "Warn about implicit function declarations"
-msgstr ""
-
-#: toplev.c:1302
-msgid "Warn when a declaration does not specify a type"
-msgstr ""
-
-#: toplev.c:1307
-msgid "Warn about the use of the #import directive"
-msgstr ""
-
-#: toplev.c:1311
-msgid "Do not warn about using 'long long' when -pedantic"
-msgstr ""
-
-#: toplev.c:1313
-msgid "Warn about suspicious declarations of main"
-msgstr ""
-
-#: toplev.c:1316
-msgid "Warn about possibly missing braces around initializers"
-msgstr ""
-
-#: toplev.c:1319
-msgid "Warn about global funcs without previous declarations"
-msgstr ""
-
-#: toplev.c:1322
-msgid "Warn about global funcs without prototypes"
-msgstr ""
-
-#: toplev.c:1325
-msgid "Warn about use of multicharacter literals"
-msgstr ""
-
-#: toplev.c:1328
-msgid "Warn about externs not at file scope level"
-msgstr ""
-
-#: toplev.c:1331
-msgid "Warn about possible missing parentheses"
-msgstr ""
-
-#: toplev.c:1334
-msgid "Warn about function pointer arithmetic"
-msgstr ""
-
-#: toplev.c:1337
-msgid "Warn about multiple declarations of the same object"
-msgstr ""
-
-#: toplev.c:1340
-msgid "Warn whenever a function's return-type defaults to int"
-msgstr ""
-
-#: toplev.c:1343
-msgid "Warn about possible violations of sequence point rules"
-msgstr ""
-
-#: toplev.c:1346
-msgid "Warn about signed/unsigned comparisons"
-msgstr ""
-
-#: toplev.c:1349
-msgid "Warn about non-prototyped function decls"
-msgstr ""
-
-#: toplev.c:1352
-msgid "Warn about constructs whose meanings change in ISO C"
-msgstr ""
-
-#: toplev.c:1355
-msgid "Warn when trigraphs are encountered"
-msgstr ""
-
-#: toplev.c:1360
-msgid "Warn about unrecognized pragmas"
-msgstr ""
-
-#: toplev.c:1363
-msgid "Mark strings as 'const char *'"
-msgstr ""
-
-#: toplev.c:1508
-msgid "Warn when a function is unused"
-msgstr ""
-
-#: toplev.c:1510
-msgid "Warn when a label is unused"
-msgstr ""
-
-#: toplev.c:1512
-msgid "Warn when a function parameter is unused"
-msgstr ""
-
-#: toplev.c:1514
-msgid "Warn when a variable is unused"
-msgstr ""
-
-#: toplev.c:1516
-msgid "Warn when an expression value is unused"
-msgstr ""
-
-#: toplev.c:1518
-msgid "Do not suppress warnings from system headers"
-msgstr ""
-
-#: toplev.c:1520
-msgid "Treat all warnings as errors"
-msgstr ""
-
-#: toplev.c:1522
-msgid "Warn when one local variable shadows another"
-msgstr ""
-
-#: toplev.c:1524
-msgid "Warn about enumerated switches, with no default, missing a case"
-msgstr ""
-
-#: toplev.c:1526
-msgid "Warn about enumerated switches missing a default case"
-msgstr ""
-
-#: toplev.c:1528
-msgid "Warn about all enumerated switches missing a specific case"
-msgstr ""
-
-#: toplev.c:1530
-msgid "Warn about returning structures, unions or arrays"
-msgstr ""
-
-#: toplev.c:1532
-msgid "Warn about pointer casts which increase alignment"
-msgstr ""
-
-#: toplev.c:1534
-msgid "Warn about code that will never be executed"
-msgstr ""
-
-#: toplev.c:1536
-msgid "Warn about uninitialized automatic variables"
-msgstr ""
-
-#: toplev.c:1538
-msgid "Warn when an inlined function cannot be inlined"
-msgstr ""
-
-#: toplev.c:1540
-msgid "Warn when the packed attribute has no effect on struct layout"
-msgstr ""
-
-#: toplev.c:1542
-msgid "Warn when padding is required to align struct members"
-msgstr ""
-
-#: toplev.c:1544
-msgid "Warn when an optimization pass is disabled"
-msgstr ""
-
-#: toplev.c:1546
-msgid "Warn about uses of __attribute__((deprecated)) declarations"
-msgstr ""
-
-#: toplev.c:1548
-msgid "Warn about functions which might be candidates for attribute noreturn"
-msgstr ""
-
-#: toplev.c:1550
-msgid "Warn about code which might break the strict aliasing rules"
+#, c-format
+msgid " %s"
msgstr ""
-#: toplev.c:1627 toplev.c:4548 config/rs6000/rs6000.c:680
+#: toplev.c:1293
#, fuzzy, c-format
-msgid "invalid option `%s'"
+msgid "invalid option argument `%s'"
msgstr "ÐерÑчаіÑны выбар \"%s\""
-#: toplev.c:2031
-#, c-format
-msgid "`%s' used but never defined"
-msgstr ""
-
-#: toplev.c:2034
+#: toplev.c:1356
#, c-format
-msgid "`%s' declared `static' but never defined"
+msgid "getting core file size maximum limit: %m"
msgstr ""
-#: toplev.c:2057
+#: toplev.c:1359
#, c-format
-msgid "`%s' defined but not used"
+msgid "setting core file size limit to maximum: %m"
msgstr ""
-#: toplev.c:2280
-#, c-format
-msgid "invalid register name `%s' for register variable"
-msgstr ""
-
-#: toplev.c:3697
-msgid " -ffixed-<register> Mark <register> as being unavailable to the compiler\n"
-msgstr ""
-
-#: toplev.c:3698
-msgid " -fcall-used-<register> Mark <register> as being corrupted by function calls\n"
-msgstr ""
-
-#: toplev.c:3699
-msgid " -fcall-saved-<register> Mark <register> as being preserved across functions\n"
-msgstr ""
-
-#: toplev.c:3700
-msgid " -finline-limit=<number> Limits the size of inlined functions to <number>\n"
-msgstr ""
-
-#: toplev.c:3701
-msgid " -fmessage-length=<number> Limits diagnostics messages lengths to <number> characters per line. 0 suppresses line-wrapping\n"
-msgstr ""
-
-#: toplev.c:3702
-msgid " -fdiagnostics-show-location=[once | every-line] Indicates how often source location information should be emitted, as prefix, at the beginning of diagnostics when line-wrapping\n"
-msgstr ""
-
-#: toplev.c:3703
-msgid " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indicates the default thread-local storage code generation model\n"
-msgstr ""
-
-#: toplev.c:3704
-msgid " -fstack-limit-register=<register> Trap if the stack goes past <register>\n"
-msgstr ""
-
-#: toplev.c:3705
-msgid " -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>\n"
-msgstr ""
-
-#: toplev.c:3706
-msgid " -frandom-seed=<string> Make compile reproducible using <string>\n"
-msgstr ""
-
-#: toplev.c:3718
-msgid " -O[number] Set optimization level to [number]\n"
-msgstr ""
-
-#: toplev.c:3719
-msgid " -Os Optimize for space rather than speed\n"
-msgstr ""
-
-#: toplev.c:3731
-msgid " -pedantic Issue warnings needed by strict compliance to ISO C\n"
-msgstr ""
-
-#: toplev.c:3732
-msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
-msgstr ""
-
-#: toplev.c:3733
-msgid " -w Suppress warnings\n"
-msgstr ""
-
-#: toplev.c:3734
-msgid " -W Enable extra warnings\n"
-msgstr ""
-
-#: toplev.c:3745
-msgid " -Wunused Enable unused warnings\n"
-msgstr ""
-
-#: toplev.c:3746
-msgid " -Wlarger-than-<number> Warn if an object is larger than <number> bytes\n"
-msgstr ""
-
-#: toplev.c:3747
-msgid " -p Enable function profiling\n"
-msgstr ""
-
-#: toplev.c:3748
-msgid " -o <file> Place output into <file> \n"
-msgstr ""
-
-#: toplev.c:3749
-msgid ""
-" -G <number> Put global and static data smaller than <number>\n"
-" bytes into a special section (on some targets)\n"
-msgstr ""
-
-#: toplev.c:3760
-msgid " -aux-info <file> Emit declaration info into <file>\n"
-msgstr ""
-
-#: toplev.c:3761
-msgid " -quiet Do not display functions compiled or elapsed time\n"
-msgstr ""
+#: toplev.c:1678
+#, fuzzy
+msgid "%J'%F' used but never defined"
+msgstr "адмеціна `%D' выкарыÑтоўвываецца, але Ð½Ñ Ð²Ñ‹Ð·Ð½Ð°Ñ‡Ð°Ð½Ð°"
-#: toplev.c:3762
-msgid " -version Display the compiler's version\n"
+#: toplev.c:1680
+msgid "%J'%F' declared `static' but never defined"
msgstr ""
-#: toplev.c:3763
-msgid " -d[letters] Enable dumps from specific passes of the compiler\n"
-msgstr ""
+#: toplev.c:1705
+#, fuzzy
+msgid "%J'%D' defined but not used"
+msgstr "адмеціна `%D' вызначана, але не выкарыÑтоўваецца"
-#: toplev.c:3764
-msgid " -dumpbase <file> Base name to be used for dumps from specific passes\n"
+#: toplev.c:1726 toplev.c:1743
+#, c-format
+msgid "`%s' is deprecated (declared at %s:%d)"
msgstr ""
-#: toplev.c:3766
-msgid " -fsched-verbose=<number> Set the verbosity level of the scheduler\n"
+#: toplev.c:1746
+#, c-format
+msgid "`%s' is deprecated"
msgstr ""
-#: toplev.c:3768
-msgid " --help Display this information\n"
+#: toplev.c:1749
+#, c-format
+msgid "type is deprecated (declared at %s:%d)"
msgstr ""
-#: toplev.c:3783
-msgid ""
-"\n"
-"Language specific options:\n"
+#: toplev.c:1752
+msgid "type is deprecated"
msgstr ""
-"\n"
-"Выбары, ÑÐ¿ÐµÑ†Ñ‹Ñ„Ñ–Ñ‡Ð½Ñ‹Ñ Ð´Ð»Ñ Ð¼Ð¾Ð²Ñ‹:\n"
-#: toplev.c:3795
+#: toplev.c:1956
#, c-format
-msgid " %-23.23s [undocumented]\n"
+msgid "invalid register name `%s' for register variable"
msgstr ""
-#: toplev.c:3803 toplev.c:3817
-#, c-format
-msgid ""
-"\n"
-"There are undocumented %s specific options as well.\n"
+#: toplev.c:3522
+msgid "branch target register load optimization is not intended to be run twice"
msgstr ""
-#: toplev.c:3807
+#: toplev.c:3689
#, c-format
msgid ""
"\n"
-" Options for %s:\n"
-msgstr ""
-"\n"
-" Выбары Ð´Ð»Ñ %s:\n"
-
-#: toplev.c:3844
-msgid ""
-"\n"
"Target specific options:\n"
msgstr ""
-#: toplev.c:3858 toplev.c:3877
+#: toplev.c:3703 toplev.c:3722
#, c-format
-msgid " -m%-23.23s [undocumented]\n"
+msgid " -m%-23s [undocumented]\n"
msgstr ""
-#: toplev.c:3886
+#: toplev.c:3731
+#, c-format
msgid ""
"\n"
"There are undocumented target specific options as well.\n"
msgstr ""
-#: toplev.c:3888
+#: toplev.c:3733
+#, c-format
msgid " They exist, but they are not documented.\n"
msgstr ""
-#: toplev.c:3941
+#: toplev.c:3788
#, c-format
msgid "unrecognized gcc debugging option: %c"
msgstr ""
-#: toplev.c:4007
-#, fuzzy, c-format
-msgid "`%s': unknown tls-model option"
-msgstr "\"%s\" : невÑдомы ці непадтрымліваемы выбар -g"
-
-#: toplev.c:4034
-#, c-format
-msgid "unrecognized register name `%s'"
-msgstr ""
-
-#: toplev.c:4059 toplev.c:5012
+#: toplev.c:3850 config/rs6000/rs6000.c:909
#, fuzzy, c-format
-msgid "unrecognized option `%s'"
-msgstr "нераÑпазнаны выбар \"-%s\""
-
-#: toplev.c:4107
-#, fuzzy
-msgid "-Wid-clash-LEN is no longer supported"
-msgstr "-pipe не падтрымліваецца."
-
-#: toplev.c:4184
-#, c-format
-msgid "use -gdwarf -g%d for DWARF v1, level %d"
-msgstr ""
-
-#: toplev.c:4187
-msgid "use -gdwarf-2 for DWARF v2"
-msgstr ""
-
-#: toplev.c:4192
-#, c-format
-msgid "ignoring option `%s' due to invalid debug level specification"
-msgstr ""
-
-#: toplev.c:4215 toplev.c:5010
-#, c-format
-msgid "`%s': unknown or unsupported -g option"
-msgstr "\"%s\" : невÑдомы ці непадтрымліваемы выбар -g"
-
-#: toplev.c:4222
-#, c-format
-msgid "`%s' ignored, conflicts with `-g%s'"
-msgstr ""
-
-#: toplev.c:4304
-msgid "-param option missing argument"
-msgstr ""
-
-#: toplev.c:4313
-#, c-format
-msgid "invalid --param option: %s"
-msgstr "нерÑчаіÑны выбар --param : %s"
-
-#: toplev.c:4325
-#, c-format
-msgid "invalid parameter value `%s'"
-msgstr ""
+msgid "invalid option `%s'"
+msgstr "ÐерÑчаіÑны выбар \"%s\""
-#: toplev.c:4565
+#: toplev.c:3865
#, c-format
msgid ""
"%s%s%s version %s (%s)\n"
@@ -7965,527 +6974,670 @@ msgstr ""
"%s\tзкампілÑвана GNU C верÑÑ–Ñ %s.\n"
"%s%s%s верÑÑ–Ñ %s (%s) зкампілÑвана CC.\n"
-#: toplev.c:4572
+#: toplev.c:3872
#, c-format
msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
msgstr ""
-#: toplev.c:4630
+#: toplev.c:3924
msgid "options passed: "
msgstr ""
-#: toplev.c:4659
+#: toplev.c:3953
msgid "options enabled: "
msgstr "выбары ўключаны:"
-#: toplev.c:4718 java/jcf-write.c:3453
-#, c-format
-msgid "can't open %s for writing"
+#: toplev.c:4011 java/jcf-write.c:3422
+#, fuzzy, c-format
+msgid "can't open %s for writing: %m"
msgstr "немагчыма адчыніць %s Ð´Ð»Ñ Ð·Ð°Ð¿Ñ–Ñу"
-#: toplev.c:5002
-#, fuzzy, c-format
-msgid "ignoring command line option '%s'"
-msgstr "ÐераÑпазнаны выбар \"%s\""
+#: toplev.c:4094 config/sh/sh.c:6883
+msgid "created and used with different settings of -fpic"
+msgstr ""
+
+#: toplev.c:4096 config/sh/sh.c:6885
+msgid "created and used with different settings of -fpie"
+msgstr ""
-#: toplev.c:5005
+#: toplev.c:4147 config/sh/sh.c:6935
#, c-format
-msgid "(it is valid for %s but not the selected language)"
+msgid "created and used with differing settings of `-m%s'"
msgstr ""
-#: toplev.c:5039
-msgid "-Wuninitialized is not supported without -O"
+#: toplev.c:4150 config/sh/sh.c:6938
+msgid "out of memory"
msgstr ""
-#: toplev.c:5094
+#: toplev.c:4331
msgid "instruction scheduling not supported on this target machine"
msgstr ""
-#: toplev.c:5098
+#: toplev.c:4335
msgid "this target machine does not have delayed branches"
msgstr ""
-#: toplev.c:5112
+#: toplev.c:4349
#, c-format
msgid "-f%sleading-underscore not supported on this target machine"
msgstr ""
-#: toplev.c:5175
+#: toplev.c:4398
+#, c-format
+msgid "target system does not support the \"%s\" debug format"
+msgstr ""
+
+#: toplev.c:4415
#, fuzzy
msgid "-ffunction-sections not supported for this target"
msgstr "атрыбуты Ñекцыі не падтрымліваюцца Ð´Ð»Ñ Ð³Ñтай мÑÑ‚Ñ‹"
-#: toplev.c:5180
+#: toplev.c:4420
#, fuzzy
msgid "-fdata-sections not supported for this target"
msgstr "атрыбуты Ñекцыі не падтрымліваюцца Ð´Ð»Ñ Ð³Ñтай мÑÑ‚Ñ‹"
-#: toplev.c:5187
+#: toplev.c:4427
msgid "-ffunction-sections disabled; it makes profiling impossible"
msgstr ""
-#: toplev.c:5194
+#: toplev.c:4434
#, fuzzy
msgid "-fprefetch-loop-arrays not supported for this target"
msgstr "атрыбуты Ñекцыі не падтрымліваюцца Ð´Ð»Ñ Ð³Ñтай мÑÑ‚Ñ‹"
-#: toplev.c:5200
+#: toplev.c:4440
msgid "-fprefetch-loop-arrays not supported for this target (try -march switches)"
msgstr ""
-#: toplev.c:5209
+#: toplev.c:4449
msgid "-fprefetch-loop-arrays is not supported with -Os"
msgstr ""
-#: toplev.c:5215
+#: toplev.c:4455
msgid "-ffunction-sections may affect debugging on some targets"
msgstr ""
-#: toplev.c:5327
-#, c-format
-msgid "error writing to %s"
+#: toplev.c:4557
+#, fuzzy, c-format
+msgid "error writing to %s: %m"
msgstr "памылка запіÑу Ñž %s"
-#: toplev.c:5329 java/jcf-parse.c:936 java/jcf-write.c:3460
-#, c-format
-msgid "error closing %s"
-msgstr ""
+#: toplev.c:4559 java/jcf-parse.c:902 java/jcf-write.c:3429
+#, fuzzy, c-format
+msgid "error closing %s: %m"
+msgstr "памылка запіÑу Ñž %s"
-#: tree-dump.c:702
+#: tree-dump.c:692
#, c-format
msgid "could not open dump file `%s'"
msgstr ""
-#: tree-dump.c:778
+#: tree-dump.c:763
#, c-format
-msgid "ignoring unknown option `%.*s' in `-f%s'"
+msgid "ignoring unknown option `%.*s' in `-fdump-%s'"
msgstr ""
-#: tree.c:3645
+#: tree-inline.c:1016
+msgid "%Jfunction '%F' can never be inlined because it uses alloca (override using the always_inline attribute)"
+msgstr ""
+
+#: tree-inline.c:1029
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp"
+msgstr ""
+
+#: tree-inline.c:1044
+msgid "%Jfunction '%F' can never be inlined because it uses variable argument lists"
+msgstr ""
+
+#: tree-inline.c:1060
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp-longjmp exception handling"
+msgstr ""
+
+#: tree-inline.c:1078
+msgid "%Jfunction '%F' can never be inlined because it contains a nested function"
+msgstr ""
+
+#: tree-inline.c:1095
+msgid "%Jfunction '%F' can never be inlined because it contains a computed goto"
+msgstr ""
+
+#: tree-inline.c:1105
+msgid "%Jfunction '%F' can never be inlined because it contains a nonlocal goto"
+msgstr ""
+
+#: tree-inline.c:1128
+msgid "%Jfunction '%F' can never be inlined because it uses variable sized variables"
+msgstr ""
+
+#: tree-inline.c:1338 tree-inline.c:1345
+msgid "%Jinlining failed in call to '%F': %s"
+msgstr ""
+
+#: tree-optimize.c:190
+#, fuzzy
+msgid "%Jsize of return value of '%D' is %u bytes"
+msgstr "памер вÑртаемага значÑÐ½Ð½Ñ \"%s\" %u байт"
+
+#: tree-optimize.c:193
+#, fuzzy
+msgid "%Jsize of return value of '%D' is larger than %wd bytes"
+msgstr "памер вÑртаемага значÑÐ½Ð½Ñ \"%s\" больш чым %d байт"
+
+#: tree.c:3800
msgid "arrays of functions are not meaningful"
msgstr ""
-#: tree.c:3702
+#: tree.c:3855
msgid "function return type cannot be function"
msgstr ""
-#: tree.c:4557
+#: tree.c:4684
msgid "invalid initializer for bit string"
msgstr ""
-#: tree.c:4616
+#: tree.c:4736
#, c-format
msgid "tree check: expected %s, have %s in %s, at %s:%d"
msgstr ""
-#: tree.c:4633
+#: tree.c:4749
#, c-format
msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d"
msgstr ""
-#: tree.c:4650
+#: tree.c:4762
#, c-format
msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
msgstr ""
-#: varasm.c:455 config/i386/winnt.c:611
+#: tree.c:4774
#, c-format
-msgid "%s causes a section type conflict"
+msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
msgstr ""
-#: varasm.c:841
-#, c-format
-msgid "register name not specified for `%s'"
+#: varasm.c:434
+msgid "%J%D causes a section type conflict"
msgstr ""
-#: varasm.c:843
-#, c-format
-msgid "invalid register name for `%s'"
+#: varasm.c:796
+msgid "%Jregister name not specified for '%D'"
+msgstr ""
+
+#: varasm.c:798
+#, fuzzy
+msgid "%Jinvalid register name for '%D'"
msgstr "нерÑчаіÑÐ½Ð°Ñ Ð½Ð°Ð·Ð²Ð° Ñ€ÑгіÑтра `%s'"
-#: varasm.c:846
-#, c-format
-msgid "data type of `%s' isn't suitable for a register"
+#: varasm.c:800
+msgid "%Jdata type of '%D' isn't suitable for a register"
msgstr ""
-#: varasm.c:849
-#, c-format
-msgid "register specified for `%s' isn't suitable for data type"
+#: varasm.c:803
+msgid "%Jregister specified for '%D' isn't suitable for data type"
msgstr ""
-#: varasm.c:858
+#: varasm.c:813
msgid "global register variable has initial value"
msgstr ""
-#: varasm.c:861
+#: varasm.c:816
msgid "volatile register variables don't work as you might wish"
msgstr ""
-#: varasm.c:894
-#, c-format
-msgid "register name given for non-register variable `%s'"
+#: varasm.c:848
+msgid "%Jregister name given for non-register variable '%D'"
msgstr ""
-#: varasm.c:1542
-#, c-format
-msgid "alignment of `%s' is greater than maximum object file alignment. Using %d"
+#: varasm.c:1380
+msgid "%Jstorage size of `%D' isn't known"
+msgstr ""
+
+#: varasm.c:1434
+msgid "%Jalignment of '%D' is greater than maximum object file alignment. Using %d"
msgstr ""
-#: varasm.c:1584
+#: varasm.c:1480
msgid "thread-local COMMON data not implemented"
msgstr ""
-#: varasm.c:1610
-#, c-format
-msgid "requested alignment for %s is greater than implemented alignment of %d"
+#: varasm.c:1505
+msgid "%Jrequested alignment for '%D' is greater than implemented alignment of %d"
msgstr ""
-#: varasm.c:4048
+#: varasm.c:3787
msgid "initializer for integer value is too complicated"
msgstr ""
-#: varasm.c:4053
+#: varasm.c:3792
msgid "initializer for floating value is not a floating constant"
msgstr ""
-#: varasm.c:4120
+#: varasm.c:3858
msgid "unknown set constructor type"
msgstr ""
-#: varasm.c:4334
+#: varasm.c:4077
#, c-format
msgid "invalid initial value for member `%s'"
msgstr ""
-#: varasm.c:4525 varasm.c:4568
-#, c-format
-msgid "weak declaration of `%s' must precede definition"
+#: varasm.c:4264 varasm.c:4308
+msgid "%Jweak declaration of '%D' must precede definition"
msgstr ""
-#: varasm.c:4532
-#, c-format
-msgid "weak declaration of `%s' after first use results in unspecified behavior"
+#: varasm.c:4272
+msgid "%Jweak declaration of '%D' after first use results in unspecified behavior"
msgstr ""
-#: varasm.c:4566
-#, c-format
-msgid "weak declaration of `%s' must be public"
-msgstr ""
+#: varasm.c:4306
+#, fuzzy
+msgid "%Jweak declaration of '%D' must be public"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: varasm.c:4575
-#, c-format
-msgid "weak declaration of `%s' not supported"
-msgstr ""
+#: varasm.c:4315
+#, fuzzy
+msgid "%Jweak declaration of '%D' not supported"
+msgstr "пуÑтое абвÑшчÑнне"
-#: varasm.c:4602 varasm.c:4677
+#: varasm.c:4344 varasm.c:4434
msgid "only weak aliases are supported in this configuration"
msgstr ""
-#: varasm.c:4685
+#: varasm.c:4437
msgid "alias definitions not supported in this configuration; ignored"
msgstr ""
-#: varasm.c:4716
+#: varasm.c:4466
#, fuzzy
msgid "visibility attribute not supported in this configuration; ignored"
msgstr "атрыбуты Ñекцыі не падтрымліваюцца Ð´Ð»Ñ Ð³Ñтай мÑÑ‚Ñ‹"
-#: varray.c:134
+#: varray.c:194
#, c-format
msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d"
msgstr ""
+#: varray.c:204
+#, c-format
+msgid "underflowed virtual array %s in %s, at %s:%d"
+msgstr ""
+
#. Print an error message for unrecognized stab codes.
-#: xcoffout.c:175
+#: xcoffout.c:173
#, c-format
msgid "no sclass for %s stab (0x%x)\n"
msgstr ""
-#: pretty-print.h:97
-#, fuzzy, c-format
-msgid "#`%s' not supported by %s#"
-msgstr "%s не падтрымлівае %s"
+#.
+#. Local variables:
+#. mode:c
+#. End:
+#.
+#: diagnostic.def:1
+#, fuzzy
+msgid "fatal error: "
+msgstr "Ð£Ð½ÑƒÑ‚Ñ€Ð°Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°: %s"
-#: params.def:53
-msgid "The maximum number of instructions in a single function eligible for inlining"
+#: diagnostic.def:2
+#, fuzzy
+msgid "internal compiler error: "
+msgstr "Ð£Ð½ÑƒÑ‚Ñ€Ð°Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°: %s"
+
+#: diagnostic.def:3
+msgid "error: "
msgstr ""
-#: params.def:65
-msgid "The maximum number of instructions when automatically inlining"
+#: diagnostic.def:4
+msgid "sorry, unimplemented: "
msgstr ""
-#: params.def:84
-msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
+#: diagnostic.def:6
+msgid "anachronism: "
msgstr ""
-#: params.def:97
-msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
+#: diagnostic.def:7
+msgid "note: "
msgstr ""
-#: params.def:110
-msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
+#: diagnostic.def:8
+msgid "debug: "
msgstr ""
-#: params.def:120
+#: params.def:53
+msgid "The maximum number of instructions in a single function eligible for inlining"
+msgstr ""
+
+#: params.def:65
+msgid "The maximum number of instructions when automatically inlining"
+msgstr ""
+
+#: params.def:75
msgid "The maximum number of instructions for the RTL inliner"
msgstr ""
-#: params.def:131
+#: params.def:86
msgid "The maximum number of instructions to consider to fill a delay slot"
msgstr ""
-#: params.def:142
+#: params.def:97
msgid "The maximum number of instructions to consider to find accurate live register information"
msgstr ""
-#: params.def:152
+#: params.def:107
msgid "The maximum length of scheduling's pending operations list"
msgstr ""
-#: params.def:159
+#: params.def:112
+msgid "The size of function body to be considered large"
+msgstr ""
+
+#: params.def:116
+msgid "Maximal growth due to inlining of large function (in percent)"
+msgstr ""
+
+#: params.def:120
+msgid "how much can given compilation unit grow because of the inlining (in percent)"
+msgstr ""
+
+#: params.def:127
msgid "The maximum amount of memory to be allocated by GCSE"
msgstr ""
-#: params.def:164
+#: params.def:132
msgid "The maximum number of passes to make when doing GCSE"
msgstr ""
-#: params.def:171
+#: params.def:139
msgid "The maximum number of instructions to consider to unroll in a loop"
msgstr ""
-#: params.def:176
-msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
+#: params.def:145
+msgid "The maximum number of instructions to consider to unroll in a loop on average"
+msgstr ""
+
+#: params.def:150
+msgid "The maximum number of unrollings of a single loop"
+msgstr ""
+
+#: params.def:155
+msgid "The maximum number of insns of a peeled loop"
+msgstr ""
+
+#: params.def:160
+msgid "The maximum number of peelings of a single loop"
+msgstr ""
+
+#: params.def:165
+msgid "The maximum number of insns of a completely peeled loop"
+msgstr ""
+
+#: params.def:170
+msgid "The maximum number of peelings of a single loop that is peeled completely"
+msgstr ""
+
+#: params.def:175
+msgid "The maximum number of insns of a peeled loop that rolls only once"
msgstr ""
#: params.def:181
-msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
+msgid "The maximum number of insns of an unswitched loop"
msgstr ""
#: params.def:186
-msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
+msgid "The maximum number of unswitchings in a single loop"
msgstr ""
#: params.def:191
-msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
+msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
msgstr ""
#: params.def:196
-msgid "Maximal code growth caused by tail duplication (in percents)"
+msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
msgstr ""
-#: params.def:200
-msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percents)"
+#: params.def:201
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
msgstr ""
-#: params.def:205
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is available"
+#: params.def:206
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
+msgstr ""
+
+#: params.def:211
+msgid "Maximal code growth caused by tail duplication (in percent)"
+msgstr ""
+
+#: params.def:215
+msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent)"
msgstr ""
-#: params.def:210
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is not available"
+#: params.def:220
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is available"
msgstr ""
-#: params.def:217
+#: params.def:225
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is not available"
+msgstr ""
+
+#: params.def:232
msgid "The maximum number of incoming edges to consider for crossjumping"
msgstr ""
-#: params.def:230
-msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap."
+#: params.def:238
+msgid "The maximum length of path considered in cse"
+msgstr ""
+
+#: params.def:243
+msgid "The maximum memory locations recorded by cselib"
+msgstr ""
+
+#: params.def:256
+msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap"
+msgstr ""
+
+#: params.def:262
+msgid "Minimum heap size before we start collecting garbage, in kilobytes"
msgstr ""
-#: params.def:236
-msgid "Minimum heap size before we start collecting garbage, in kilobytes."
+#: params.def:270
+msgid "The maximum number of instructions to search backward when looking for equivalent reload"
msgstr ""
#: config/darwin-c.c:75
msgid "too many #pragma options align=reset"
msgstr ""
-#: config/darwin-c.c:97 config/darwin-c.c:100 config/darwin-c.c:102
-#: config/darwin-c.c:104
+#: config/darwin-c.c:95 config/darwin-c.c:98 config/darwin-c.c:100
+#: config/darwin-c.c:102
msgid "malformed '#pragma options', ignoring"
msgstr ""
-#: config/darwin-c.c:107
+#: config/darwin-c.c:105
msgid "junk at end of '#pragma options'"
msgstr ""
-#: config/darwin-c.c:117
+#: config/darwin-c.c:115
msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring"
msgstr ""
-#: config/darwin-c.c:130
+#: config/darwin-c.c:127
msgid "missing '(' after '#pragma unused', ignoring"
msgstr ""
-#: config/darwin-c.c:148
+#: config/darwin-c.c:145
msgid "missing ')' after '#pragma unused', ignoring"
msgstr ""
-#: config/darwin-c.c:151
+#: config/darwin-c.c:148
msgid "junk at end of '#pragma unused'"
msgstr ""
-#: config/lynx-ng.h:97 config/lynx.h:121 config/rs6000/lynx.h:100
+#: config/darwin.c:1347
+msgid "internal and protected visibility attributes not supportedin this configuration; ignored"
+msgstr ""
+
+#: config/lynx-ng.h:97 config/lynx.h:116 config/rs6000/lynx.h:73
msgid "-msystem-v and -p are incompatible"
msgstr ""
-#: config/lynx-ng.h:99 config/lynx.h:123 config/rs6000/lynx.h:102
+#: config/lynx-ng.h:99 config/lynx.h:118 config/rs6000/lynx.h:75
msgid "-msystem-v and -mthreads are incompatible"
msgstr ""
-#: config/alpha/alpha.c:342
+#: config/windiss.h:37
+msgid "profiler support for WindISS"
+msgstr ""
+
+#: config/alpha/alpha.c:231
#, fuzzy, c-format
msgid "-f%s ignored for Unicos/Mk (not supported)"
msgstr "-pipe не падтрымліваецца."
-#: config/alpha/alpha.c:366
+#: config/alpha/alpha.c:255
#, fuzzy
msgid "-mieee not supported on Unicos/Mk"
msgstr "-pipe не падтрымліваецца"
-#: config/alpha/alpha.c:377
+#: config/alpha/alpha.c:266
msgid "-mieee-with-inexact not supported on Unicos/Mk"
msgstr ""
-#: config/alpha/alpha.c:394
+#: config/alpha/alpha.c:283
#, c-format
msgid "bad value `%s' for -mtrap-precision switch"
msgstr ""
-#: config/alpha/alpha.c:408
+#: config/alpha/alpha.c:297
#, c-format
msgid "bad value `%s' for -mfp-rounding-mode switch"
msgstr ""
-#: config/alpha/alpha.c:423
+#: config/alpha/alpha.c:312
#, c-format
msgid "bad value `%s' for -mfp-trap-mode switch"
msgstr ""
-#: config/alpha/alpha.c:435
+#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1063
#, c-format
msgid "bad value `%s' for -mtls-size switch"
msgstr ""
-#: config/alpha/alpha.c:454 config/alpha/alpha.c:466
+#: config/alpha/alpha.c:343 config/alpha/alpha.c:355
#, c-format
msgid "bad value `%s' for -mcpu switch"
msgstr ""
-#: config/alpha/alpha.c:473
+#: config/alpha/alpha.c:362
msgid "trap mode not supported on Unicos/Mk"
msgstr ""
-#: config/alpha/alpha.c:480
+#: config/alpha/alpha.c:369
msgid "fp software completion requires -mtrap-precision=i"
msgstr ""
-#: config/alpha/alpha.c:496
+#: config/alpha/alpha.c:385
msgid "rounding mode not supported for VAX floats"
msgstr ""
-#: config/alpha/alpha.c:501
+#: config/alpha/alpha.c:390
msgid "trap mode not supported for VAX floats"
msgstr ""
-#: config/alpha/alpha.c:530
+#: config/alpha/alpha.c:419
#, c-format
msgid "L%d cache latency unknown for %s"
msgstr ""
-#: config/alpha/alpha.c:545
+#: config/alpha/alpha.c:434
#, c-format
msgid "bad value `%s' for -mmemory-latency"
msgstr ""
-#: config/alpha/alpha.c:5604 config/m88k/m88k.c:2889 config/romp/romp.c:754
-#: config/romp/romp.c:761
+#: config/alpha/alpha.c:5411
#, c-format
msgid "invalid %%H value"
msgstr "нерÑчаіÑнае значÑньне %%H"
-#: config/alpha/alpha.c:5625
+#: config/alpha/alpha.c:5432
#, fuzzy, c-format
msgid "invalid %%J value"
msgstr "дрÑннае %%Q значÑнне"
-#: config/alpha/alpha.c:5641 config/ia64/ia64.c:3970 config/m88k/m88k.c:3034
+#: config/alpha/alpha.c:5448 config/ia64/ia64.c:4243
#, c-format
msgid "invalid %%r value"
msgstr "нерÑчаіÑнае значÑньне %%r"
-#: config/alpha/alpha.c:5651 config/rs6000/rs6000.c:7737
+#: config/alpha/alpha.c:5458 config/rs6000/rs6000.c:8944
+#: config/xtensa/xtensa.c:1999
#, c-format
msgid "invalid %%R value"
msgstr "нерÑчаіÑнае значÑньне %%R"
-#: config/alpha/alpha.c:5657 config/rs6000/rs6000.c:7663
+#: config/alpha/alpha.c:5464 config/rs6000/rs6000.c:8863
+#: config/xtensa/xtensa.c:1966
#, c-format
msgid "invalid %%N value"
msgstr "нерÑчаіÑнае значÑньне %%N"
-#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:7691
+#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:8891
#, c-format
msgid "invalid %%P value"
msgstr "нерÑчаіÑнае значÑньне %%P"
-#: config/alpha/alpha.c:5673 config/m88k/m88k.c:2895 config/romp/romp.c:740
-#: config/romp/romp.c:747
+#: config/alpha/alpha.c:5480
#, c-format
msgid "invalid %%h value"
msgstr "нерÑчаіÑнае значÑньне %%h"
-#: config/alpha/alpha.c:5681 config/romp/romp.c:698
+#: config/alpha/alpha.c:5488 config/xtensa/xtensa.c:1992
#, c-format
msgid "invalid %%L value"
msgstr "нерÑчаіÑнае значÑньне %%L"
-#: config/alpha/alpha.c:5720 config/rs6000/rs6000.c:7645
+#: config/alpha/alpha.c:5527 config/rs6000/rs6000.c:8845
#, c-format
msgid "invalid %%m value"
msgstr "нерÑчаіÑнае значÑньне %%m"
-#: config/alpha/alpha.c:5728 config/rs6000/rs6000.c:7653
+#: config/alpha/alpha.c:5535 config/rs6000/rs6000.c:8853
#, c-format
msgid "invalid %%M value"
msgstr "нерÑчаіÑнае значÑньне %%M"
-#: config/alpha/alpha.c:5772
+#: config/alpha/alpha.c:5579
#, c-format
msgid "invalid %%U value"
msgstr "нерÑчаіÑнае значÑньне %%U"
-#: config/alpha/alpha.c:5784 config/alpha/alpha.c:5798 config/romp/romp.c:706
-#: config/rs6000/rs6000.c:7745
+#: config/alpha/alpha.c:5591 config/alpha/alpha.c:5605
+#: config/rs6000/rs6000.c:8952
#, c-format
msgid "invalid %%s value"
msgstr "нерÑчаіÑнае значÑньне %%v"
-#: config/alpha/alpha.c:5821 config/m88k/m88k.c:2997
+#: config/alpha/alpha.c:5628
#, c-format
msgid "invalid %%C value"
msgstr "нерÑчаіÑнае значÑньне %%C"
-#: config/alpha/alpha.c:5858 config/m88k/m88k.c:3018
-#: config/rs6000/rs6000.c:7502
+#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:8702
#, c-format
msgid "invalid %%E value"
msgstr "нерÑчаіÑнае значÑньне %%E"
-#: config/alpha/alpha.c:5883 config/alpha/alpha.c:5933
+#: config/alpha/alpha.c:5690 config/alpha/alpha.c:5738
msgid "unknown relocation unspec"
msgstr ""
-#: config/alpha/alpha.c:5892 config/romp/romp.c:981
-#: config/rs6000/rs6000.c:8052
+#: config/alpha/alpha.c:5699 config/rs6000/rs6000.c:9265
#, c-format
msgid "invalid %%xn code"
msgstr "нерÑчаіÑнае значÑньне %%xn"
-#: config/alpha/alpha.c:6618 config/alpha/alpha.c:6621 config/s390/s390.c:6069
-#: config/s390/s390.c:6072
+#: config/alpha/alpha.c:6634 config/alpha/alpha.c:6637 config/s390/s390.c:6572
+#: config/s390/s390.c:6575
msgid "bad builtin fcode"
msgstr ""
@@ -8494,87 +7646,98 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/alpha/alpha.h:279 config/i386/i386.h:294 config/i386/i386.h:296
-#: config/i386/i386.h:298 config/ns32k/ns32k.h:140 config/rs6000/rs6000.h:292
-#: config/s390/s390.h:68 config/sparc/sparc.h:522 config/sparc/sparc.h:527
+#. WARNING: Do not mark empty strings for translation, as calling
+#. gettext on an empty string does NOT return an empty
+#. string.
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/alpha/alpha.h:286 config/i386/i386.h:327 config/i386/i386.h:329
+#: config/i386/i386.h:331 config/ns32k/ns32k.h:140 config/s390/s390.h:124
+#: config/sparc/sparc.h:537 config/sparc/sparc.h:542
msgid "Use hardware fp"
msgstr "ВыкарыÑтоўваць апаратную плаваючую кропку"
-#: config/alpha/alpha.h:280 config/i386/i386.h:295 config/i386/i386.h:297
-#: config/rs6000/rs6000.h:294 config/sparc/sparc.h:524
-#: config/sparc/sparc.h:529
+#: config/alpha/alpha.h:287 config/i386/i386.h:328 config/i386/i386.h:330
+#: config/sparc/sparc.h:539 config/sparc/sparc.h:544
msgid "Do not use hardware fp"
msgstr "Ðе выкарыÑтоўваць апаратную плаваючую кропку"
-#: config/alpha/alpha.h:281
+#: config/alpha/alpha.h:288
msgid "Use fp registers"
msgstr ""
-#: config/alpha/alpha.h:283
+#: config/alpha/alpha.h:290
msgid "Do not use fp registers"
msgstr ""
-#: config/alpha/alpha.h:284
+#: config/alpha/alpha.h:291
msgid "Do not assume GAS"
msgstr ""
-#: config/alpha/alpha.h:285
+#: config/alpha/alpha.h:292
msgid "Assume GAS"
msgstr ""
-#: config/alpha/alpha.h:287
+#: config/alpha/alpha.h:294
msgid "Request IEEE-conformant math library routines (OSF/1)"
msgstr ""
-#: config/alpha/alpha.h:289
+#: config/alpha/alpha.h:296
msgid "Emit IEEE-conformant code, without inexact exceptions"
msgstr ""
-#: config/alpha/alpha.h:291
+#: config/alpha/alpha.h:298
msgid "Emit IEEE-conformant code, with inexact exceptions"
msgstr ""
-#: config/alpha/alpha.h:293
+#: config/alpha/alpha.h:300
msgid "Do not emit complex integer constants to read-only memory"
msgstr ""
-#: config/alpha/alpha.h:294
+#: config/alpha/alpha.h:301
msgid "Use VAX fp"
msgstr ""
-#: config/alpha/alpha.h:295
+#: config/alpha/alpha.h:302
msgid "Do not use VAX fp"
msgstr ""
-#: config/alpha/alpha.h:296
+#: config/alpha/alpha.h:303
msgid "Emit code for the byte/word ISA extension"
msgstr ""
-#: config/alpha/alpha.h:299
+#: config/alpha/alpha.h:306
msgid "Emit code for the motion video ISA extension"
msgstr ""
-#: config/alpha/alpha.h:302
+#: config/alpha/alpha.h:309
msgid "Emit code for the fp move and sqrt ISA extension"
msgstr ""
-#: config/alpha/alpha.h:304
+#: config/alpha/alpha.h:311
msgid "Emit code for the counting ISA extension"
msgstr ""
-#: config/alpha/alpha.h:307
+#: config/alpha/alpha.h:314
msgid "Emit code using explicit relocation directives"
msgstr ""
-#: config/alpha/alpha.h:310
+#: config/alpha/alpha.h:317
msgid "Emit 16-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:312
+#: config/alpha/alpha.h:319
msgid "Emit 32-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:314
+#: config/alpha/alpha.h:321
+msgid "Emit direct branches to local functions"
+msgstr ""
+
+#: config/alpha/alpha.h:324
msgid "Emit rdval instead of rduniq for thread pointer"
msgstr ""
@@ -8585,293 +7748,314 @@ msgstr ""
#. For -mtrap-precision=[p|f|i]
#. For -mmemory-latency=
#. For -mtls-size=
-#: config/alpha/alpha.h:343
+#: config/alpha/alpha.h:353
msgid "Use features of and schedule given CPU"
msgstr ""
-#: config/alpha/alpha.h:345
+#: config/alpha/alpha.h:355
msgid "Schedule given CPU"
msgstr ""
-#: config/alpha/alpha.h:347
+#: config/alpha/alpha.h:357
msgid "Control the generated fp rounding mode"
msgstr ""
-#: config/alpha/alpha.h:349
+#: config/alpha/alpha.h:359
msgid "Control the IEEE trap mode"
msgstr ""
-#: config/alpha/alpha.h:351
+#: config/alpha/alpha.h:361
msgid "Control the precision given to fp exceptions"
msgstr ""
-#: config/alpha/alpha.h:353
+#: config/alpha/alpha.h:363
msgid "Tune expected memory latency"
msgstr ""
-#: config/alpha/alpha.h:355 config/ia64/ia64.h:225
+#: config/alpha/alpha.h:365 config/ia64/ia64.h:267 config/rs6000/sysv4.h:90
msgid "Specify bit size of immediate TLS offsets"
msgstr ""
-#: config/arc/arc.c:135
+#: config/arc/arc.c:147
#, c-format
msgid "bad value (%s) for -mcpu switch"
msgstr ""
-#: config/arc/arc.c:362
+#: config/arc/arc.c:369
#, fuzzy, c-format
msgid "argument of `%s' attribute is not a string constant"
msgstr "аргумент `__builtin_args_info' павінен быць канÑтантай"
-#: config/arc/arc.c:369
+#: config/arc/arc.c:376
#, c-format
msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\""
msgstr ""
-#: config/arc/arc.c:1708 config/m32r/m32r.c:2286
+#: config/arc/arc.c:1714 config/m32r/m32r.c:2325
#, fuzzy, c-format
msgid "invalid operand to %%R code"
msgstr "нерÑчаіÑны %%-код"
-#: config/arc/arc.c:1740 config/m32r/m32r.c:2309
+#: config/arc/arc.c:1746 config/m32r/m32r.c:2348
#, fuzzy, c-format
msgid "invalid operand to %%H/%%L code"
msgstr "нерÑчаіÑны %%-код"
-#: config/arc/arc.c:1763 config/m32r/m32r.c:2385
+#: config/arc/arc.c:1769 config/m32r/m32r.c:2419
#, fuzzy, c-format
msgid "invalid operand to %%U code"
msgstr "нерÑчаіÑны %%-код"
-#: config/arc/arc.c:1774
+#: config/arc/arc.c:1780
#, fuzzy, c-format
msgid "invalid operand to %%V code"
msgstr "нерÑчаіÑны %%-код"
#. Unknown flag.
-#: config/arc/arc.c:1781 config/m32r/m32r.c:2424 config/sparc/sparc.c:6533
+#. Undocumented flag.
+#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985
msgid "invalid operand output code"
msgstr ""
-#: config/arm/arm.c:458
+#: config/arm/arm.c:520
#, c-format
msgid "switch -mcpu=%s conflicts with -march= switch"
msgstr ""
-#: config/arm/arm.c:468 config/rs6000/rs6000.c:558 config/sparc/sparc.c:393
+#: config/arm/arm.c:530 config/rs6000/rs6000.c:759 config/sparc/sparc.c:424
#, c-format
msgid "bad value (%s) for %s switch"
msgstr ""
-#: config/arm/arm.c:604
+#: config/arm/arm.c:672
msgid "target CPU does not support APCS-32"
msgstr ""
-#: config/arm/arm.c:609
+#: config/arm/arm.c:677
msgid "target CPU does not support APCS-26"
msgstr ""
-#: config/arm/arm.c:615
+#: config/arm/arm.c:683
msgid "target CPU does not support interworking"
msgstr ""
-#: config/arm/arm.c:621
+#: config/arm/arm.c:689
#, fuzzy
msgid "target CPU does not support THUMB instructions"
msgstr "ISO C не падтрымлівае комлекÑÐ½Ñ‹Ñ Ñ†ÑÐ»Ð°Ð»Ñ–ÐºÐ°Ð²Ñ‹Ñ Ñ‚Ñ‹Ð¿Ñ‹"
-#: config/arm/arm.c:635
+#: config/arm/arm.c:703
msgid "enabling backtrace support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:638
+#: config/arm/arm.c:706
msgid "enabling callee interworking support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:641
+#: config/arm/arm.c:709
msgid "enabling caller interworking support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:647
+#: config/arm/arm.c:715
msgid "interworking forces APCS-32 to be used"
msgstr ""
-#: config/arm/arm.c:653
+#: config/arm/arm.c:721
msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
msgstr ""
-#: config/arm/arm.c:661
+#: config/arm/arm.c:729
msgid "-fpic and -mapcs-reent are incompatible"
msgstr ""
-#: config/arm/arm.c:664
+#: config/arm/arm.c:732
msgid "APCS reentrant code not supported. Ignored"
msgstr ""
-#: config/arm/arm.c:672
+#: config/arm/arm.c:740
msgid "-g with -mno-apcs-frame may not give sensible debugging"
msgstr ""
-#: config/arm/arm.c:680
+#: config/arm/arm.c:748
msgid "passing floating point arguments in fp regs not yet supported"
msgstr ""
-#: config/arm/arm.c:709
+#: config/arm/arm.c:792
#, c-format
msgid "invalid floating point emulation option: -mfpe-%s"
msgstr ""
-#: config/arm/arm.c:733
+#: config/arm/arm.c:803
+msgid "-mfpe switch not supported by ep9312 target cpu - ignored."
+msgstr ""
+
+#: config/arm/arm.c:823
msgid "structure size boundary can only be set to 8 or 32"
msgstr ""
-#: config/arm/arm.c:741
+#: config/arm/arm.c:831
msgid "-mpic-register= is useless without -fpic"
msgstr ""
-#: config/arm/arm.c:748
+#: config/arm/arm.c:838
#, c-format
msgid "unable to use '%s' for PIC register"
msgstr ""
-#: config/arm/arm.c:2064 config/arm/arm.c:2087 config/avr/avr.c:4794
-#: config/c4x/c4x.c:4644 config/h8300/h8300.c:3667 config/i386/i386.c:1396
-#: config/i386/i386.c:1425 config/ip2k/ip2k.c:3224
-#: config/m68hc11/m68hc11.c:1267 config/mcore/mcore.c:3510
-#: config/ns32k/ns32k.c:1047 config/rs6000/rs6000.c:12538 config/sh/sh.c:5681
-#: config/sh/sh.c:5706 config/sh/sh.c:5745 config/stormy16/stormy16.c:2026
-#: config/v850/v850.c:2180
+#: config/arm/arm.c:2246 config/arm/arm.c:2264 config/avr/avr.c:4558
+#: config/c4x/c4x.c:4447 config/h8300/h8300.c:4257 config/i386/i386.c:1571
+#: config/i386/i386.c:1617 config/ip2k/ip2k.c:3169
+#: config/m68hc11/m68hc11.c:1227 config/m68k/m68k.c:333
+#: config/mcore/mcore.c:3375 config/ns32k/ns32k.c:1064
+#: config/rs6000/rs6000.c:14556 config/sh/sh.c:6737 config/sh/sh.c:6758
+#: config/sh/sh.c:6793 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173
#, fuzzy, c-format
msgid "`%s' attribute only applies to functions"
msgstr "\"%s\" звычайна функцыÑ"
-#: config/arm/arm.c:9459
+#: config/arm/arm.c:10573
msgid "unable to compute real location of stacked parameter"
msgstr ""
-#: config/arm/arm.c:10138
+#. @@@ better error message
+#: config/arm/arm.c:11201 config/arm/arm.c:11238
+msgid "selector must be an immediate"
+msgstr ""
+
+#. @@@ better error message
+#: config/arm/arm.c:11281 config/i386/i386.c:14219 config/i386/i386.c:14253
+msgid "mask must be an immediate"
+msgstr ""
+
+#: config/arm/arm.c:11976
msgid "no low registers available for popping high registers"
msgstr ""
-#: config/arm/arm.c:10389
+#: config/arm/arm.c:12226
msgid "interrupt Service Routines cannot be coded in Thumb mode"
msgstr ""
-#: config/arm/pe.c:168 config/mcore/mcore.c:3358
-#, c-format
-msgid "initialized variable `%s' is marked dllimport"
+#: config/arm/pe.c:170 config/mcore/mcore.c:3241
+msgid "%Jinitialized variable '%D' is marked dllimport"
msgstr ""
-#: config/arm/pe.c:177
-#, c-format
-msgid "static variable `%s' is marked dllimport"
+#: config/arm/pe.c:179
+msgid "%Jstatic variable '%D' is marked dllimport"
msgstr ""
-#: config/arm/arm.h:416
+#: config/arm/arm.h:450
msgid "Generate APCS conformant stack frames"
msgstr ""
-#: config/arm/arm.h:419
+#: config/arm/arm.h:453
msgid "Store function names in object code"
msgstr ""
-#: config/arm/arm.h:423
+#: config/arm/arm.h:457
msgid "Use the 32-bit version of the APCS"
msgstr ""
-#: config/arm/arm.h:425
+#: config/arm/arm.h:459
msgid "Use the 26-bit version of the APCS"
msgstr ""
-#: config/arm/arm.h:429
+#: config/arm/arm.h:463
msgid "Pass FP arguments in FP registers"
msgstr ""
-#: config/arm/arm.h:432
+#: config/arm/arm.h:466
msgid "Generate re-entrant, PIC code"
msgstr ""
-#: config/arm/arm.h:435
+#: config/arm/arm.h:469
msgid "The MMU will trap on unaligned accesses"
msgstr ""
-#: config/arm/arm.h:442
+#: config/arm/arm.h:476
msgid "Use library calls to perform FP operations"
msgstr ""
-#: config/arm/arm.h:444 config/i960/i960.h:281
+#: config/arm/arm.h:478 config/i960/i960.h:291
msgid "Use hardware floating point instructions"
msgstr ""
-#: config/arm/arm.h:446
+#: config/arm/arm.h:480
msgid "Assume target CPU is configured as big endian"
msgstr ""
-#: config/arm/arm.h:448
+#: config/arm/arm.h:482
msgid "Assume target CPU is configured as little endian"
msgstr ""
-#: config/arm/arm.h:450
+#: config/arm/arm.h:484
msgid "Assume big endian bytes, little endian words"
msgstr ""
-#: config/arm/arm.h:452
+#: config/arm/arm.h:486
msgid "Support calls between Thumb and ARM instruction sets"
msgstr ""
-#: config/arm/arm.h:455
+#: config/arm/arm.h:489
msgid "Generate a call to abort if a noreturn function returns"
msgstr ""
-#: config/arm/arm.h:458
+#: config/arm/arm.h:492
msgid "Do not move instructions into a function's prologue"
msgstr ""
-#: config/arm/arm.h:461
+#: config/arm/arm.h:495
msgid "Do not load the PIC register in function prologues"
msgstr ""
-#: config/arm/arm.h:464
+#: config/arm/arm.h:498
msgid "Generate call insns as indirect calls, if necessary"
msgstr ""
-#: config/arm/arm.h:467
+#: config/arm/arm.h:501
msgid "Compile for the Thumb not the ARM"
msgstr ""
-#: config/arm/arm.h:471
+#: config/arm/arm.h:505
msgid "Thumb: Generate (non-leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.h:474
+#: config/arm/arm.h:508
msgid "Thumb: Generate (leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.h:477
+#: config/arm/arm.h:511
msgid "Thumb: Assume non-static functions may be called from ARM code"
msgstr ""
-#: config/arm/arm.h:481
+#: config/arm/arm.h:515
msgid "Thumb: Assume function pointers may go to non-Thumb aware code"
msgstr ""
-#: config/arm/arm.h:491
+#: config/arm/arm.h:519
+msgid "Cirrus: Place NOPs to avoid invalid instruction combinations"
+msgstr ""
+
+#: config/arm/arm.h:521
+msgid "Cirrus: Do not break up invalid instruction combinations with NOPs"
+msgstr ""
+
+#: config/arm/arm.h:529
msgid "Specify the name of the target CPU"
msgstr ""
-#: config/arm/arm.h:493
+#: config/arm/arm.h:531
msgid "Specify the name of the target architecture"
msgstr ""
-#: config/arm/arm.h:497
+#: config/arm/arm.h:535
msgid "Specify the version of the floating point emulator"
msgstr ""
-#: config/arm/arm.h:499
+#: config/arm/arm.h:537
msgid "Specify the minimum bit alignment of structures"
msgstr ""
-#: config/arm/arm.h:501
+#: config/arm/arm.h:539
msgid "Specify the register to be used for PIC addressing"
msgstr ""
@@ -8879,93 +8063,93 @@ msgstr ""
msgid "Ignore dllimport attribute for functions"
msgstr ""
-#: config/avr/avr.c:528
+#: config/avr/avr.c:514
#, c-format
msgid "large frame pointer change (%d) with -mtiny-stack"
msgstr ""
-#: config/avr/avr.c:1135
+#: config/avr/avr.c:1101
msgid "bad address, not (reg+disp):"
msgstr ""
-#: config/avr/avr.c:1143
+#: config/avr/avr.c:1109
msgid "internal compiler error. Bad address:"
msgstr ""
-#: config/avr/avr.c:1156
+#: config/avr/avr.c:1122
msgid "internal compiler error. Unknown mode:"
msgstr ""
-#: config/avr/avr.c:1864 config/avr/avr.c:2576
+#: config/avr/avr.c:1744 config/avr/avr.c:2405
#, fuzzy
msgid "invalid insn:"
msgstr "ÐерÑчаіÑны выбар %s"
-#: config/avr/avr.c:1901 config/avr/avr.c:1987 config/avr/avr.c:2036
-#: config/avr/avr.c:2045 config/avr/avr.c:2143 config/avr/avr.c:2315
-#: config/avr/avr.c:2613 config/avr/avr.c:2724
+#: config/avr/avr.c:1778 config/avr/avr.c:1861 config/avr/avr.c:1910
+#: config/avr/avr.c:1919 config/avr/avr.c:2014 config/avr/avr.c:2183
+#: config/avr/avr.c:2439 config/avr/avr.c:2547
msgid "incorrect insn:"
msgstr ""
-#: config/avr/avr.c:2064 config/avr/avr.c:2228 config/avr/avr.c:2386
-#: config/avr/avr.c:2768
+#: config/avr/avr.c:1938 config/avr/avr.c:2099 config/avr/avr.c:2254
+#: config/avr/avr.c:2591
msgid "unknown move insn:"
msgstr ""
-#: config/avr/avr.c:3003
+#: config/avr/avr.c:2814
msgid "bad shift insn:"
msgstr ""
-#: config/avr/avr.c:3119 config/avr/avr.c:3549 config/avr/avr.c:3929
+#: config/avr/avr.c:2927 config/avr/avr.c:3348 config/avr/avr.c:3719
msgid "internal compiler error. Incorrect shift:"
msgstr ""
-#: config/avr/avr.c:4767 config/ip2k/ip2k.c:3197
+#: config/avr/avr.c:4532 config/ip2k/ip2k.c:3144
msgid "only initialized variables can be placed into program memory area"
msgstr ""
-#: config/avr/avr.c:4866
+#: config/avr/avr.c:4626
msgid "only uninitialized variables can be placed in the .noinit section"
msgstr ""
-#: config/avr/avr.c:4881
+#: config/avr/avr.c:4640
#, c-format
msgid "MCU `%s' supported for assembler only"
msgstr ""
-#: config/avr/avr.h:78
+#: config/avr/avr.h:73
msgid "Assume int to be 8 bit integer"
msgstr ""
-#: config/avr/avr.h:80
+#: config/avr/avr.h:75
msgid "Change the stack pointer without disabling interrupts"
msgstr ""
-#: config/avr/avr.h:82
+#: config/avr/avr.h:77
msgid "Use subroutines for function prologue/epilogue"
msgstr ""
-#: config/avr/avr.h:84
+#: config/avr/avr.h:79
msgid "Change only the low 8 bits of the stack pointer"
msgstr ""
-#: config/avr/avr.h:86
+#: config/avr/avr.h:81
msgid "Do not generate tablejump insns"
msgstr ""
-#: config/avr/avr.h:88
+#: config/avr/avr.h:83
msgid "Use rjmp/rcall (limited range) on >8K devices"
msgstr ""
-#: config/avr/avr.h:91
+#: config/avr/avr.h:85
msgid "Output instruction sizes to the asm file"
msgstr ""
-#: config/avr/avr.h:108
+#: config/avr/avr.h:102
msgid "Specify the initial stack address"
msgstr ""
-#: config/avr/avr.h:109
+#: config/avr/avr.h:103
msgid "Specify the MCU name"
msgstr ""
@@ -8977,140 +8161,135 @@ msgstr ""
#. For instance, the SH target has only positive offsets in
#. addresses. Thus sorting to put the smallest address first allows
#. the most combinations to be found.
-#: config/avr/avr.h:2450
+#: config/avr/avr.h:2267
msgid "trampolines not supported"
msgstr ""
-#: config/c4x/c4x-c.c:69
+#: config/c4x/c4x-c.c:71
#, c-format
msgid "missing '(' after '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:72
+#: config/c4x/c4x-c.c:74
#, c-format
msgid "missing function name in '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:77
+#: config/c4x/c4x-c.c:79
#, c-format
msgid "malformed '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:79
+#: config/c4x/c4x-c.c:81
#, c-format
msgid "missing section name in '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:84
+#: config/c4x/c4x-c.c:86
#, c-format
msgid "missing ')' for '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:87
+#: config/c4x/c4x-c.c:89
#, c-format
msgid "junk at end of '#pragma %s'"
msgstr ""
-#: config/c4x/c4x.c:280
+#: config/c4x/c4x.c:300
#, c-format
msgid "unknown CPU version %d, using 40.\n"
msgstr ""
-#: config/c4x/c4x.c:853
+#: config/c4x/c4x.c:850
#, c-format
msgid "ISR %s requires %d words of local vars, max is 32767"
msgstr ""
-#: config/c4x/c4x.c:1602
+#: config/c4x/c4x.c:1571
msgid "using CONST_DOUBLE for address"
msgstr ""
-#: config/c4x/c4x.c:1742
+#: config/c4x/c4x.c:1709
msgid "c4x_address_cost: Invalid addressing mode"
msgstr ""
-#: config/c4x/c4x.c:1884
+#: config/c4x/c4x.c:1844
#, c-format
msgid "c4x_print_operand: %%L inconsistency"
msgstr ""
-#: config/c4x/c4x.c:1890
+#: config/c4x/c4x.c:1850
#, c-format
msgid "c4x_print_operand: %%N inconsistency"
msgstr ""
-#: config/c4x/c4x.c:1931
+#: config/c4x/c4x.c:1891
#, c-format
msgid "c4x_print_operand: %%O inconsistency"
msgstr ""
-#: config/c4x/c4x.c:2026
+#: config/c4x/c4x.c:1986
msgid "c4x_print_operand: Bad operand case"
msgstr ""
-#: config/c4x/c4x.c:2069
+#: config/c4x/c4x.c:2027
msgid "c4x_print_operand_address: Bad post_modify"
msgstr ""
-#: config/c4x/c4x.c:2091
+#: config/c4x/c4x.c:2049
msgid "c4x_print_operand_address: Bad pre_modify"
msgstr ""
-#: config/c4x/c4x.c:2139 config/c4x/c4x.c:2151 config/c4x/c4x.c:2166
+#: config/c4x/c4x.c:2097 config/c4x/c4x.c:2109 config/c4x/c4x.c:2124
msgid "c4x_print_operand_address: Bad operand case"
msgstr ""
-#: config/c4x/c4x.c:2422
+#: config/c4x/c4x.c:2375
msgid "c4x_rptb_insert: Cannot find start label"
msgstr ""
-#: config/c4x/c4x.c:3409 config/c4x/c4x.c:3429
+#: config/c4x/c4x.c:3292 config/c4x/c4x.c:3310
msgid "mode not QImode"
msgstr ""
-#: config/c4x/c4x.c:3514
+#: config/c4x/c4x.c:3380
msgid "invalid indirect memory address"
msgstr ""
-#: config/c4x/c4x.c:3603
+#: config/c4x/c4x.c:3469
msgid "invalid indirect (S) memory address"
msgstr ""
-#: config/c4x/c4x.c:3944
+#: config/c4x/c4x.c:3797
msgid "c4x_valid_operands: Internal error"
msgstr ""
-#: config/c4x/c4x.c:4424
+#: config/c4x/c4x.c:4216
msgid "c4x_operand_subword: invalid mode"
msgstr ""
-#: config/c4x/c4x.c:4427
+#: config/c4x/c4x.c:4219
msgid "c4x_operand_subword: invalid operand"
msgstr ""
#. We could handle these with some difficulty.
#. e.g., *p-- => *(p-=2); *(p+1).
-#: config/c4x/c4x.c:4453
+#: config/c4x/c4x.c:4245
msgid "c4x_operand_subword: invalid autoincrement"
msgstr ""
-#: config/c4x/c4x.c:4459
+#: config/c4x/c4x.c:4251
msgid "c4x_operand_subword: invalid address"
msgstr ""
-#: config/c4x/c4x.c:4470
+#: config/c4x/c4x.c:4262
msgid "c4x_operand_subword: address not offsettable"
msgstr ""
-#: config/c4x/c4x.c:4670
+#: config/c4x/c4x.c:4472
msgid "c4x_rptb_rpts_p: Repeat block top label moved\n"
msgstr ""
-#. Name of the c4x assembler.
-#. Name of the c4x linker.
-#. Define assembler options.
-#. Define linker options.
-#. Specify the end file to link with.
#. Target compilation option flags.
#. Small memory model.
#. Use 24-bit MPYI for C3x.
@@ -9329,159 +8508,159 @@ msgstr ""
msgid "Select CPU to generate code for"
msgstr ""
-#: config/cris/cris.c:599
+#: config/cris/cris.c:597
msgid "unexpected index-type in cris_print_index"
msgstr ""
-#: config/cris/cris.c:615
+#: config/cris/cris.c:611
msgid "unexpected base-type in cris_print_base"
msgstr ""
-#: config/cris/cris.c:908
+#: config/cris/cris.c:904
#, c-format
msgid "stackframe too big: %d bytes"
msgstr ""
-#: config/cris/cris.c:1223
+#: config/cris/cris.c:1215
msgid "allocated but unused delay list in epilogue"
msgstr ""
-#: config/cris/cris.c:1233
+#: config/cris/cris.c:1225
msgid "unexpected function type needing stack adjustment for __builtin_eh_return"
msgstr ""
-#: config/cris/cris.c:1312
+#: config/cris/cris.c:1301
msgid "invalid operand for 'b' modifier"
msgstr ""
-#: config/cris/cris.c:1324
+#: config/cris/cris.c:1314
msgid "invalid operand for 'v' modifier"
msgstr ""
-#: config/cris/cris.c:1334
+#: config/cris/cris.c:1324
msgid "invalid operand for 'P' modifier"
msgstr ""
-#: config/cris/cris.c:1341
+#: config/cris/cris.c:1331
msgid "invalid operand for 'p' modifier"
msgstr ""
-#: config/cris/cris.c:1380
+#: config/cris/cris.c:1370
msgid "invalid operand for 'z' modifier"
msgstr ""
-#: config/cris/cris.c:1411 config/cris/cris.c:1441
+#: config/cris/cris.c:1401 config/cris/cris.c:1431
msgid "invalid operand for 'H' modifier"
msgstr ""
-#: config/cris/cris.c:1417
+#: config/cris/cris.c:1407
msgid "bad register"
msgstr ""
-#: config/cris/cris.c:1455
+#: config/cris/cris.c:1445
msgid "invalid operand for 'e' modifier"
msgstr ""
-#: config/cris/cris.c:1472
+#: config/cris/cris.c:1462
msgid "invalid operand for 'm' modifier"
msgstr ""
-#: config/cris/cris.c:1497
+#: config/cris/cris.c:1487
msgid "invalid operand for 'A' modifier"
msgstr ""
-#: config/cris/cris.c:1505
+#: config/cris/cris.c:1495
msgid "invalid operand for 'D' modifier"
msgstr ""
-#: config/cris/cris.c:1519
+#: config/cris/cris.c:1509
msgid "invalid operand for 'T' modifier"
msgstr ""
-#: config/cris/cris.c:1528
+#: config/cris/cris.c:1518
msgid "invalid operand modifier letter"
msgstr ""
-#: config/cris/cris.c:1536
+#: config/cris/cris.c:1526
#, c-format
msgid "internal error: bad register: %d"
msgstr "ÑƒÐ½ÑƒÑ‚Ñ€Ð°Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°: дрÑнны Ñ€ÑгіÑÑ‚Ñ€: %d"
-#: config/cris/cris.c:1584
+#: config/cris/cris.c:1574
msgid "unexpected multiplicative operand"
msgstr ""
-#: config/cris/cris.c:1604
+#: config/cris/cris.c:1594
msgid "unexpected operand"
msgstr ""
-#: config/cris/cris.c:1639 config/cris/cris.c:1649
+#: config/cris/cris.c:1627 config/cris/cris.c:1637
msgid "unrecognized address"
msgstr "нераÑпазнаны адраÑ"
-#: config/cris/cris.c:2005
+#: config/cris/cris.c:1987
msgid "internal error: sideeffect-insn affecting main effect"
msgstr ""
#. If we get here, the caller got its initial tests wrong.
-#: config/cris/cris.c:2292
+#: config/cris/cris.c:2380
msgid "internal error: cris_side_effect_mode_ok with bad operands"
msgstr ""
-#: config/cris/cris.c:2374 config/cris/cris.c:2432
+#: config/cris/cris.c:2457 config/cris/cris.c:2519
#, fuzzy
msgid "unrecognized supposed constant"
msgstr "нераÑпазнаны выбар \"-%s\""
-#: config/cris/cris.c:2473
+#: config/cris/cris.c:2564
msgid "unrecognized supposed constant in cris_global_pic_symbol"
msgstr ""
-#: config/cris/cris.c:2492
+#: config/cris/cris.c:2583
#, c-format
msgid "-max-stackframe=%d is not usable, not between 0 and %d"
msgstr ""
-#: config/cris/cris.c:2520
+#: config/cris/cris.c:2611
#, c-format
msgid "unknown CRIS version specification in -march= or -mcpu= : %s"
msgstr ""
-#: config/cris/cris.c:2556
+#: config/cris/cris.c:2647
#, c-format
msgid "unknown CRIS cpu version specification in -mtune= : %s"
msgstr ""
-#: config/cris/cris.c:2574
+#: config/cris/cris.c:2665
msgid "-fPIC and -fpic are not supported in this configuration"
msgstr ""
-#: config/cris/cris.c:2590
+#: config/cris/cris.c:2681
msgid "that particular -g option is invalid with -maout and -melinux"
msgstr ""
-#: config/cris/cris.c:2824 config/cris/cris.c:2869
+#: config/cris/cris.c:2936 config/cris/cris.c:2981
msgid "unexpected side-effects in address"
msgstr ""
#. Labels are never marked as global symbols.
-#: config/cris/cris.c:2966 config/cris/cris.c:2997
+#: config/cris/cris.c:3076 config/cris/cris.c:3107
msgid "unexpected PIC symbol"
msgstr ""
-#: config/cris/cris.c:2970
+#: config/cris/cris.c:3080
msgid "PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:2983 config/cris/cris.c:3066
+#: config/cris/cris.c:3093 config/cris/cris.c:3176
msgid "unexpected address expression"
msgstr ""
-#: config/cris/cris.c:3001
+#: config/cris/cris.c:3111
msgid "emitting PIC operand, but PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:3010
+#: config/cris/cris.c:3120
msgid "unexpected NOTE as addr_const:"
msgstr ""
@@ -9494,215 +8673,215 @@ msgid "For elinux, request a specified stack-size for this program"
msgstr ""
#. No "no-etrax" as it does not really imply any model. On the other hand, "etrax" implies the common (and large) subset matching all models.
-#: config/cris/cris.h:340
+#: config/cris/cris.h:334
msgid "Compile for ETRAX 4 (CRIS v3)"
msgstr ""
-#: config/cris/cris.h:345
+#: config/cris/cris.h:339
msgid "Compile for ETRAX 100 (CRIS v8)"
msgstr ""
-#: config/cris/cris.h:349
+#: config/cris/cris.h:343
msgid "Emit verbose debug information in assembly code"
msgstr ""
-#: config/cris/cris.h:352
+#: config/cris/cris.h:346
#, fuzzy
msgid "Do not use condition codes from normal instructions"
msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
-#: config/cris/cris.h:356
+#: config/cris/cris.h:350
msgid "Do not emit addressing modes with side-effect assignment"
msgstr ""
-#: config/cris/cris.h:359
+#: config/cris/cris.h:353
msgid "Do not tune stack alignment"
msgstr ""
-#: config/cris/cris.h:362
+#: config/cris/cris.h:356
msgid "Do not tune writable data alignment"
msgstr ""
-#: config/cris/cris.h:365
+#: config/cris/cris.h:359
msgid "Do not tune code and read-only data alignment"
msgstr ""
-#: config/cris/cris.h:374
+#: config/cris/cris.h:368
msgid "Align code and data to 32 bits"
msgstr ""
-#: config/cris/cris.h:387
+#: config/cris/cris.h:381
msgid "Don't align items in code or data"
msgstr ""
-#: config/cris/cris.h:390
+#: config/cris/cris.h:384
msgid "Do not emit function prologue or epilogue"
msgstr ""
#. We have to handle this m-option here since we can't wash it off in both CC1_SPEC and CC1PLUS_SPEC.
-#: config/cris/cris.h:394
+#: config/cris/cris.h:388
msgid "Use the most feature-enabling options allowed by other options"
msgstr ""
#. We must call it "override-" since calling it "no-" will cause gcc.c to forget it, if there's a "later" -mbest-lib-options. Kludgy, but needed for some multilibbed files.
-#: config/cris/cris.h:400
+#: config/cris/cris.h:394
msgid "Override -mbest-lib-options"
msgstr ""
-#: config/cris/cris.h:432
+#: config/cris/cris.h:426
#, fuzzy
msgid "Generate code for the specified chip or CPU version"
msgstr "Генерыраваць код Ð´Ð»Ñ Ð´Ð°Ð´Ð·ÐµÐ½Ð°Ð³Ð° ЦП"
-#: config/cris/cris.h:434
+#: config/cris/cris.h:428
msgid "Tune alignment for the specified chip or CPU version"
msgstr ""
-#: config/cris/cris.h:436
+#: config/cris/cris.h:430
msgid "Warn when a stackframe is larger than the specified size"
msgstr ""
#. Node: Profiling
-#: config/cris/cris.h:1022
+#: config/cris/cris.h:1016
msgid "no FUNCTION_PROFILER for CRIS"
msgstr ""
-#: config/cris/linux.h:71
+#: config/cris/linux.h:69
msgid "Together with -fpic and -fPIC, do not use GOTPLT references"
msgstr ""
-#: config/d30v/d30v.c:207
+#: config/d30v/d30v.c:218
#, c-format
msgid "bad modes_tieable_p for register %s, mode1 %s, mode2 %s"
msgstr ""
-#: config/d30v/d30v.c:2666
+#: config/d30v/d30v.c:2678
msgid "bad insn to d30v_print_operand_address:"
msgstr ""
-#: config/d30v/d30v.c:2683 config/d30v/d30v.c:2744 config/d30v/d30v.c:2765
-#: config/d30v/d30v.c:2783
+#: config/d30v/d30v.c:2695 config/d30v/d30v.c:2756 config/d30v/d30v.c:2777
+#: config/d30v/d30v.c:2795
msgid "bad insn to d30v_print_operand_memory_reference:"
msgstr ""
-#: config/d30v/d30v.c:2851
+#: config/d30v/d30v.c:2863
msgid "bad insn to d30v_print_operand, 'f' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2860
+#: config/d30v/d30v.c:2872
msgid "bad insn to d30v_print_operand, 'A' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2867
+#: config/d30v/d30v.c:2879
msgid "bad insn to d30v_print_operand, 'M' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2921
+#: config/d30v/d30v.c:2933
msgid "bad insn to print_operand, 'F' or 'T' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2932
+#: config/d30v/d30v.c:2944
msgid "bad insn to print_operand, 'B' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2939
+#: config/d30v/d30v.c:2951
msgid "bad insn to print_operand, 'E' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2957
+#: config/d30v/d30v.c:2969
msgid "bad insn to print_operand, 'R' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2966 config/d30v/d30v.c:2974
+#: config/d30v/d30v.c:2978 config/d30v/d30v.c:2986
msgid "bad insn to print_operand, 's' modifier:"
msgstr ""
-#: config/d30v/d30v.c:3003
+#: config/d30v/d30v.c:3015
msgid "bad insn in d30v_print_operand, 0 case"
msgstr ""
-#: config/d30v/d30v.c:3301
+#: config/d30v/d30v.c:3313
msgid "d30v_emit_comparison"
msgstr ""
-#: config/d30v/d30v.c:3345
+#: config/d30v/d30v.c:3357
msgid "bad call to d30v_move_2words"
msgstr ""
-#: config/d30v/d30v.h:114
+#: config/d30v/d30v.h:111
msgid "Enable use of conditional move instructions"
msgstr ""
-#: config/d30v/d30v.h:117
+#: config/d30v/d30v.h:114
msgid "Disable use of conditional move instructions"
msgstr ""
-#: config/d30v/d30v.h:120
+#: config/d30v/d30v.h:117
msgid "Debug argument support in compiler"
msgstr ""
-#: config/d30v/d30v.h:123
+#: config/d30v/d30v.h:120
msgid "Debug stack support in compiler"
msgstr ""
-#: config/d30v/d30v.h:126
+#: config/d30v/d30v.h:123
msgid "Debug memory address support in compiler"
msgstr ""
-#: config/d30v/d30v.h:129
+#: config/d30v/d30v.h:126
msgid "Make adjacent short instructions parallel if possible"
msgstr ""
-#: config/d30v/d30v.h:132
+#: config/d30v/d30v.h:129
#, fuzzy
msgid "Do not make adjacent short instructions parallel"
msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
-#: config/d30v/d30v.h:135 config/d30v/d30v.h:138
+#: config/d30v/d30v.h:132 config/d30v/d30v.h:135
msgid "Link programs/data to be in external memory by default"
msgstr ""
-#: config/d30v/d30v.h:141
+#: config/d30v/d30v.h:138
msgid "Link programs/data to be in onchip memory by default"
msgstr ""
-#: config/d30v/d30v.h:149
+#: config/d30v/d30v.h:146
msgid "Change the branch costs within the compiler"
msgstr ""
-#: config/d30v/d30v.h:152
+#: config/d30v/d30v.h:149
msgid "Change the threshold for conversion to conditional execution"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1446 config/dsp16xx/dsp16xx.c:1469
+#: config/dsp16xx/dsp16xx.c:1463 config/dsp16xx/dsp16xx.c:1486
msgid "stack size > 32k"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1678
+#: config/dsp16xx/dsp16xx.c:1695
msgid "invalid addressing mode"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1821
+#: config/dsp16xx/dsp16xx.c:1838
msgid "bad register extension code"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1921
+#: config/dsp16xx/dsp16xx.c:1938
msgid "invalid offset in ybase addressing"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1924
+#: config/dsp16xx/dsp16xx.c:1941
msgid "invalid register in ybase addressing"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:2099
+#: config/dsp16xx/dsp16xx.c:2116
msgid "invalid shift operator in emit_1600_core_shift"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:2428
+#: config/dsp16xx/dsp16xx.c:2406
msgid "invalid mode for gen_tst_reg"
msgstr "нерÑчаіÑны Ñ€Ñжым Ð´Ð»Ñ gen_tst_reg"
-#: config/dsp16xx/dsp16xx.c:2500
+#: config/dsp16xx/dsp16xx.c:2478
msgid "invalid mode for integer comparison in gen_compare_reg"
msgstr ""
@@ -9808,58 +8987,62 @@ msgstr ""
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/dsp16xx/dsp16xx.h:1218 config/dsp16xx/dsp16xx.h:1772
-#: config/dsp16xx/dsp16xx.h:1777
+#. This is how to output an insn to push a register on the stack.
+#. It need not be very fast code since it is used only for profiling
+#. This is how to output an insn to pop a register from the stack.
+#. It need not be very fast code since it is used only for profiling
+#: config/dsp16xx/dsp16xx.h:1216 config/dsp16xx/dsp16xx.h:1667
+#: config/dsp16xx/dsp16xx.h:1672
msgid "profiling not implemented yet"
msgstr ""
#. Emit RTL insns to initialize the variable parts of a trampoline.
#. FNADDR is an RTX for the address of the function's pure code.
#. CXT is an RTX for the static chain value for the function.
-#: config/dsp16xx/dsp16xx.h:1228 config/dsp16xx/dsp16xx.h:1240
+#: config/dsp16xx/dsp16xx.h:1226 config/dsp16xx/dsp16xx.h:1238
msgid "trampolines not yet implemented"
msgstr ""
-#: config/fr30/fr30.c:453
+#: config/fr30/fr30.c:451
msgid "fr30_print_operand_address: unhandled address"
msgstr ""
-#: config/fr30/fr30.c:480
+#: config/fr30/fr30.c:475
#, c-format
msgid "fr30_print_operand: unrecognized %%p code"
msgstr ""
-#: config/fr30/fr30.c:500
+#: config/fr30/fr30.c:495
#, c-format
msgid "fr30_print_operand: unrecognized %%b code"
msgstr ""
-#: config/fr30/fr30.c:521
+#: config/fr30/fr30.c:516
#, c-format
msgid "fr30_print_operand: unrecognized %%B code"
msgstr ""
-#: config/fr30/fr30.c:529
+#: config/fr30/fr30.c:524
#, c-format
msgid "fr30_print_operand: invalid operand to %%A code"
msgstr ""
-#: config/fr30/fr30.c:546
+#: config/fr30/fr30.c:541
#, c-format
msgid "fr30_print_operand: invalid %%x code"
msgstr ""
-#: config/fr30/fr30.c:553
+#: config/fr30/fr30.c:548
#, c-format
msgid "fr30_print_operand: invalid %%F code"
msgstr ""
-#: config/fr30/fr30.c:570
+#: config/fr30/fr30.c:565
msgid "fr30_print_operand: unknown code"
msgstr ""
-#: config/fr30/fr30.c:599 config/fr30/fr30.c:608 config/fr30/fr30.c:619
-#: config/fr30/fr30.c:632
+#: config/fr30/fr30.c:594 config/fr30/fr30.c:603 config/fr30/fr30.c:614
+#: config/fr30/fr30.c:627
msgid "fr30_print_operand: unhandled MEM"
msgstr ""
@@ -9867,136 +9050,136 @@ msgstr ""
msgid "Assume small address space"
msgstr ""
-#: config/frv/frv.c:410 config/frv/frv.c:428
+#: config/frv/frv.c:392 config/frv/frv.c:410
#, c-format
msgid "Unknown cpu: -mcpu=%s"
msgstr ""
-#: config/frv/frv.c:451
+#: config/frv/frv.c:433
msgid "-fpic and -gdwarf are incompatible (-fpic and -g/-gdwarf-2 are fine)"
msgstr ""
-#: config/frv/frv.c:2520
+#: config/frv/frv.c:2397
msgid "Bad insn to frv_print_operand_address:"
msgstr ""
-#: config/frv/frv.c:2533
+#: config/frv/frv.c:2408
msgid "Bad register to frv_print_operand_memory_reference_reg:"
msgstr ""
-#: config/frv/frv.c:2574 config/frv/frv.c:2584 config/frv/frv.c:2593
-#: config/frv/frv.c:2621 config/frv/frv.c:2633 config/frv/frv.c:2637
+#: config/frv/frv.c:2446 config/frv/frv.c:2456 config/frv/frv.c:2465
+#: config/frv/frv.c:2493 config/frv/frv.c:2506 config/frv/frv.c:2510
msgid "Bad insn to frv_print_operand_memory_reference:"
msgstr ""
-#: config/frv/frv.c:2779
+#: config/frv/frv.c:2648
msgid "Bad insn in frv_print_operand, bad const_double"
msgstr ""
-#: config/frv/frv.c:2824
+#: config/frv/frv.c:2693
msgid "Bad insn to frv_print_operand, 'C' modifier:"
msgstr ""
-#: config/frv/frv.c:2847
+#: config/frv/frv.c:2716
msgid "Bad insn to frv_print_operand, 'c' modifier:"
msgstr ""
-#: config/frv/frv.c:2872
+#: config/frv/frv.c:2741
msgid "Bad insn to frv_print_operand, 'e' modifier:"
msgstr ""
-#: config/frv/frv.c:2880
+#: config/frv/frv.c:2749
msgid "Bad insn to frv_print_operand, 'F' modifier:"
msgstr ""
-#: config/frv/frv.c:2896
+#: config/frv/frv.c:2765
msgid "Bad insn to frv_print_operand, 'f' modifier:"
msgstr ""
-#: config/frv/frv.c:2949
+#: config/frv/frv.c:2818
msgid "Bad insn to frv_print_operand, 'L' modifier:"
msgstr ""
-#: config/frv/frv.c:2962
+#: config/frv/frv.c:2831
msgid "Bad insn to frv_print_operand, 'M/N' modifier:"
msgstr ""
-#: config/frv/frv.c:2983
+#: config/frv/frv.c:2852
msgid "Bad insn to frv_print_operand, 'O' modifier:"
msgstr ""
-#: config/frv/frv.c:3001
+#: config/frv/frv.c:2870
msgid "Bad insn to frv_print_operand, P modifier:"
msgstr ""
-#: config/frv/frv.c:3021
+#: config/frv/frv.c:2890
msgid "Bad insn in frv_print_operand, z case"
msgstr ""
-#: config/frv/frv.c:3049
+#: config/frv/frv.c:2918
msgid "Bad insn in frv_print_operand, 0 case"
msgstr ""
-#: config/frv/frv.c:3054
+#: config/frv/frv.c:2923
msgid "frv_print_operand: unknown code"
msgstr ""
-#: config/frv/frv.c:5737
+#: config/frv/frv.c:5474
msgid "Bad output_move_single operand"
msgstr ""
-#: config/frv/frv.c:5866
+#: config/frv/frv.c:5601
msgid "Bad output_move_double operand"
msgstr ""
-#: config/frv/frv.c:6010
+#: config/frv/frv.c:5743
msgid "Bad output_condmove_single operand"
msgstr ""
-#: config/frv/frv.c:8315
+#: config/frv/frv.c:8031
msgid "frv_registers_update"
msgstr ""
-#: config/frv/frv.c:8475
+#: config/frv/frv.c:8188
msgid "frv_registers_used_p"
msgstr ""
-#: config/frv/frv.c:8604
+#: config/frv/frv.c:8314
msgid "frv_registers_set_p"
msgstr ""
-#: config/frv/frv.c:9171
+#: config/frv/frv.c:8910
msgid "accumulator is not a constant integer"
msgstr ""
-#: config/frv/frv.c:9176
+#: config/frv/frv.c:8915
msgid "accumulator number is out of bounds"
msgstr ""
-#: config/frv/frv.c:9187
+#: config/frv/frv.c:8926
#, fuzzy, c-format
msgid "inappropriate accumulator for `%s'"
msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: config/frv/frv.c:9253
+#: config/frv/frv.c:8986
#, c-format
msgid "`%s' expects a constant argument"
msgstr ""
-#: config/frv/frv.c:9258
+#: config/frv/frv.c:8991
#, fuzzy, c-format
msgid "constant argument out of range for `%s'"
msgstr "вельмі шмат аргумÑнтаў у функцыі `%s'"
-#: config/frv/frv.c:9638
+#: config/frv/frv.c:9338
msgid "media functions are not available unless -mmedia is used"
msgstr ""
-#: config/frv/frv.c:9650
+#: config/frv/frv.c:9350
msgid "this media function is only available on the fr500"
msgstr ""
-#: config/frv/frv.c:9678
+#: config/frv/frv.c:9378
msgid "this media function is only available on the fr400"
msgstr ""
@@ -10009,16 +9192,17 @@ msgstr ""
#. #else
#. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)");
#. #endif
-#: config/frv/frv.h:512
+#: config/frv/frv.h:506
+#, c-format
msgid " (frv)"
msgstr ""
-#: config/h8300/h8300.c:314
+#: config/h8300/h8300.c:288
#, fuzzy
msgid "-ms2600 is used without -ms"
msgstr "-ms2600 ужываецца без -ms."
-#: config/h8300/h8300.c:320
+#: config/h8300/h8300.c:294
#, fuzzy
msgid "-mn is used without -mh or -ms"
msgstr "-ms2600 ужываецца без -ms."
@@ -10028,78 +9212,78 @@ msgstr "-ms2600 ужываецца без -ms."
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/h8300/h8300.h:150
+#: config/h8300/h8300.h:145
#, fuzzy
msgid "Generate H8S code"
msgstr "Стварыць код Ð´Ð»Ñ DLL"
-#: config/h8300/h8300.h:151
+#: config/h8300/h8300.h:146
#, fuzzy
msgid "Do not generate H8S code"
msgstr "Ðе Ñтвараць код Ð´Ð»Ñ 68851"
-#: config/h8300/h8300.h:152
+#: config/h8300/h8300.h:147
msgid "Generate H8S/2600 code"
msgstr ""
-#: config/h8300/h8300.h:153
+#: config/h8300/h8300.h:148
#, fuzzy
msgid "Do not generate H8S/2600 code"
msgstr "Стварыць код Ð´Ð»Ñ DLL"
-#: config/h8300/h8300.h:154
+#: config/h8300/h8300.h:149
msgid "Make integers 32 bits wide"
msgstr ""
-#: config/h8300/h8300.h:157
+#: config/h8300/h8300.h:152
msgid "Use registers for argument passing"
msgstr ""
-#: config/h8300/h8300.h:159
+#: config/h8300/h8300.h:154
msgid "Do not use registers for argument passing"
msgstr ""
-#: config/h8300/h8300.h:161
+#: config/h8300/h8300.h:156
msgid "Consider access to byte sized memory slow"
msgstr ""
-#: config/h8300/h8300.h:162
+#: config/h8300/h8300.h:157
msgid "Enable linker relaxing"
msgstr ""
-#: config/h8300/h8300.h:164
+#: config/h8300/h8300.h:158
msgid "Generate H8/300H code"
msgstr ""
-#: config/h8300/h8300.h:165
+#: config/h8300/h8300.h:159
msgid "Enable the normal mode"
msgstr ""
-#: config/h8300/h8300.h:166
+#: config/h8300/h8300.h:160
msgid "Do not generate H8/300H code"
msgstr ""
-#: config/h8300/h8300.h:167
+#: config/h8300/h8300.h:161
msgid "Use H8/300 alignment rules"
msgstr ""
-#: config/i370/i370-c.c:53
+#: config/i370/i370-c.c:55
msgid "junk at end of #pragma map"
msgstr ""
-#: config/i370/i370-c.c:59
+#: config/i370/i370-c.c:61
msgid "malformed #pragma map, ignored"
msgstr ""
-#: config/i370/i370.c:915
+#: config/i370/i370.c:784
msgid "real name is too long - alias ignored"
msgstr ""
-#: config/i370/i370.c:920
+#: config/i370/i370.c:789
msgid "alias name is too long - alias ignored"
msgstr ""
-#: config/i370/i370.c:1191
+#: config/i370/i370.c:1060
msgid "internal error--no jump follows compare:"
msgstr ""
@@ -10115,407 +9299,457 @@ msgstr ""
msgid "Do not generate char instructions"
msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
-#: config/i386/i386.c:1050
+#: config/i386/i386.c:1161
#, c-format
msgid "code model %s not supported in PIC mode"
msgstr ""
-#: config/i386/i386.c:1060 config/sparc/sparc.c:356
+#: config/i386/i386.c:1171 config/sparc/sparc.c:387
#, c-format
msgid "bad value (%s) for -mcmodel= switch"
msgstr ""
-#: config/i386/i386.c:1075
+#: config/i386/i386.c:1186
#, c-format
msgid "bad value (%s) for -masm= switch"
msgstr ""
-#: config/i386/i386.c:1078
+#: config/i386/i386.c:1189
#, c-format
msgid "code model `%s' not supported in the %s bit mode"
msgstr ""
-#: config/i386/i386.c:1081
+#: config/i386/i386.c:1192
msgid "code model `large' not supported yet"
msgstr ""
-#: config/i386/i386.c:1083
+#: config/i386/i386.c:1194
#, c-format
msgid "%i-bit mode not compiled in"
msgstr ""
-#: config/i386/i386.c:1113
+#: config/i386/i386.c:1221 config/i386/i386.c:1233
+#, fuzzy
+msgid "CPU you selected does not support x86-64 instruction set"
+msgstr "ISO C не падтрымлівае комлекÑÐ½Ñ‹Ñ Ñ†ÑÐ»Ð°Ð»Ñ–ÐºÐ°Ð²Ñ‹Ñ Ñ‚Ñ‹Ð¿Ñ‹"
+
+#: config/i386/i386.c:1226 config/iq2000/iq2000.c:1840
#, c-format
msgid "bad value (%s) for -march= switch"
msgstr ""
-#: config/i386/i386.c:1124
+#: config/i386/i386.c:1239
#, c-format
-msgid "bad value (%s) for -mcpu= switch"
+msgid "bad value (%s) for -mtune= switch"
msgstr ""
-#: config/i386/i386.c:1141
+#: config/i386/i386.c:1256
#, c-format
msgid "-mregparm=%d is not between 0 and %d"
msgstr ""
-#: config/i386/i386.c:1154
+#: config/i386/i386.c:1269
msgid "-malign-loops is obsolete, use -falign-loops"
msgstr ""
-#: config/i386/i386.c:1159 config/i386/i386.c:1172 config/i386/i386.c:1185
+#: config/i386/i386.c:1274 config/i386/i386.c:1287 config/i386/i386.c:1300
#, c-format
msgid "-malign-loops=%d is not between 0 and %d"
msgstr ""
-#: config/i386/i386.c:1167
+#: config/i386/i386.c:1282
msgid "-malign-jumps is obsolete, use -falign-jumps"
msgstr ""
-#: config/i386/i386.c:1180
+#: config/i386/i386.c:1295
msgid "-malign-functions is obsolete, use -falign-functions"
msgstr ""
-#: config/i386/i386.c:1218
+#: config/i386/i386.c:1333
#, c-format
msgid "-mpreferred-stack-boundary=%d is not between %d and 12"
msgstr ""
-#: config/i386/i386.c:1230
+#: config/i386/i386.c:1345
#, c-format
msgid "-mbranch-cost=%d is not between 0 and 5"
msgstr ""
-#: config/i386/i386.c:1242
+#: config/i386/i386.c:1357
#, c-format
msgid "bad value (%s) for -mtls-dialect= switch"
msgstr ""
-#: config/i386/i386.c:1263
+#: config/i386/i386.c:1386
msgid "-malign-double makes no sense in the 64bit mode"
msgstr ""
-#: config/i386/i386.c:1265
+#: config/i386/i386.c:1388
msgid "-mrtd calling convention not supported in the 64bit mode"
msgstr ""
-#: config/i386/i386.c:1281 config/i386/i386.c:1292
+#: config/i386/i386.c:1410 config/i386/i386.c:1421
msgid "SSE instruction set disabled, using 387 arithmetics"
msgstr ""
-#: config/i386/i386.c:1297
+#: config/i386/i386.c:1426
msgid "387 instruction set disabled, using SSE arithmetics"
msgstr ""
-#: config/i386/i386.c:1304
+#: config/i386/i386.c:1433
#, c-format
msgid "bad value (%s) for -mfpmath= switch"
msgstr ""
-#: config/i386/i386.c:1436
+#: config/i386/i386.c:1581 config/i386/i386.c:1592
+msgid "fastcall and stdcall attributes are not compatible"
+msgstr ""
+
+#: config/i386/i386.c:1585 config/i386/i386.c:1641
+msgid "fastcall and regparm attributes are not compatible"
+msgstr ""
+
+#: config/i386/i386.c:1628
#, c-format
msgid "`%s' attribute requires an integer constant argument"
msgstr ""
-#: config/i386/i386.c:1442
+#: config/i386/i386.c:1634
#, fuzzy, c-format
msgid "argument to `%s' attribute larger than %d"
msgstr "памер \"%s\" больш чам %d байт"
-#: config/i386/i386.c:2504
+#: config/i386/i386.c:2593
+msgid "SSE vector argument without SSE enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2609
+msgid "MMX vector argument without MMX enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2837
msgid "SSE vector return without SSE enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:6386
+#: config/i386/i386.c:6811
msgid "invalid UNSPEC as operand"
msgstr ""
-#: config/i386/i386.c:6648
+#: config/i386/i386.c:7069
msgid "extended registers have no high halves"
msgstr ""
-#: config/i386/i386.c:6663
+#: config/i386/i386.c:7084
msgid "unsupported operand size for extended register"
msgstr ""
-#: config/i386/i386.c:6978
+#: config/i386/i386.c:7399
msgid "operand is neither a constant nor a condition code, invalid operand code 'c'"
msgstr ""
-#: config/i386/i386.c:7024
+#: config/i386/i386.c:7445
#, fuzzy, c-format
msgid "invalid operand code `%c'"
msgstr "ÐерÑчаіÑны выбар \"%s\""
-#: config/i386/i386.c:7071
+#: config/i386/i386.c:7488
#, fuzzy
msgid "invalid constraints for operand"
msgstr "нерÑчаіÑны %%c аперанд"
-#: config/i386/i386.c:11271
+#: config/i386/i386.c:11889
#, fuzzy
msgid "unknown insn mode"
msgstr "невÑдомы Ñ€Ñжым машыны \"%s\""
-#. @@@ better error message
-#: config/i386/i386.c:13391 config/i386/i386.c:13427
-msgid "selector must be an immediate"
-msgstr ""
-
-#. @@@ better error message
-#: config/i386/i386.c:13588 config/i386/i386.c:13622
-msgid "mask must be an immediate"
+#: config/i386/i386.c:14021 config/i386/i386.c:14057
+#, c-format
+msgid "selector must be an integer constant in the range 0..%i"
msgstr ""
-#: config/i386/i386.c:13654
+#: config/i386/i386.c:14285
msgid "shift must be an immediate"
msgstr ""
-#: config/i386/winnt.c:96
-#, c-format
-msgid "function `%s' definition is marked dllimport."
-msgstr ""
+#: config/i386/i386.c:15308
+#, fuzzy, c-format
+msgid "`%s' incompatible attribute ignored"
+msgstr "\"%s\" атрыбут ігнарыруецца"
#: config/i386/winnt.c:104
-#, c-format
-msgid "variable `%s' definition is marked dllimport."
+msgid "%Jfunction `%D' definition is marked dllimport."
msgstr ""
-#: config/i386/winnt.c:123
-#, c-format
-msgid "external linkage required for symbol '%s' because of '%s' attribute."
+#: config/i386/winnt.c:112
+msgid "%Jvariable `%D' definition is marked dllimport."
msgstr ""
-#: config/i386/winnt.c:143
+#: config/i386/winnt.c:132
+msgid "%Jexternal linkage required for symbol '%D' because of '%s' attribute."
+msgstr ""
+
+#: config/i386/winnt.c:149
#, fuzzy, c-format
msgid "`%s' attribute only applies to variables"
msgstr "\"%s\" атрыбут ігнарыруецца"
-#: config/i386/winnt.c:242
-#, c-format
-msgid "function '%s' is defined after prior declaration as dllimport: attribute ignored."
+#: config/i386/winnt.c:247
+msgid "%Jfunction '%D' is defined after prior declaration as dllimport: attribute ignored"
msgstr ""
-#: config/i386/winnt.c:252
-#, c-format
-msgid "inline function '%s' is declared as dllimport: attribute ignored."
+#: config/i386/winnt.c:258
+msgid "%Jinline function '%D' is declared as dllimport: attribute ignored."
msgstr ""
-#: config/i386/winnt.c:263
-#, c-format
-msgid "definition of static data member '%s' of dllimport'd class."
+#: config/i386/winnt.c:270
+msgid "%Jdefinition of static data member '%D' of dllimport'd class."
msgstr ""
-#: config/i386/winnt.c:322
-#, c-format
-msgid "inconsistent dll linkage for '%s': dllexport assumed."
+#: config/i386/winnt.c:329
+msgid "%Jinconsistent dll linkage for '%D', dllexport assumed."
msgstr ""
-#: config/i386/winnt.c:364
+#: config/i386/winnt.c:371
#, c-format
msgid "`%s' declared as both exported to and imported from a DLL"
msgstr ""
-#: config/i386/winnt.c:373
-#, c-format
-msgid "failure in redeclaration of '%s': dllimport'd symbol lacks external linkage."
+#: config/i386/winnt.c:380
+msgid "%Jfailure in redeclaration of '%D': dllimport'd symbol lacks external linkage."
msgstr ""
-#: config/i386/winnt.c:479
-#, c-format
-msgid "'%s' %s after being referenced with dllimport linkage."
+#: config/i386/winnt.c:529
+msgid "%J'%D' defined locally after being referenced with dllimport linkage"
msgstr ""
-#: config/i386/cygwin.h:45
+#: config/i386/winnt.c:532
+msgid "%J'%D' redeclared without dllimport attribute after being referenced with dllimport linkage"
+msgstr ""
+
+#: config/i386/winnt.c:701
+msgid "%J'%D' causes a section type conflict"
+msgstr ""
+
+#: config/i386/cygming.h:40
msgid "Use the Cygwin interface"
msgstr ""
-#: config/i386/cygwin.h:46
+#: config/i386/cygming.h:41
msgid "Use the Mingw32 interface"
msgstr ""
-#: config/i386/cygwin.h:47
+#: config/i386/cygming.h:42
msgid "Create GUI application"
msgstr "Стварыць GUI прыдатак"
-#: config/i386/cygwin.h:48
+#: config/i386/cygming.h:43
msgid "Don't set Windows defines"
msgstr ""
-#: config/i386/cygwin.h:49
+#: config/i386/cygming.h:44
msgid "Set Windows defines"
msgstr ""
-#: config/i386/cygwin.h:50
+#: config/i386/cygming.h:45
msgid "Create console application"
msgstr "Стварыць канÑольны прыдатак"
-#: config/i386/cygwin.h:51 config/i386/win32.h:59
+#: config/i386/cygming.h:46
msgid "Generate code for a DLL"
msgstr "Стварыць код Ð´Ð»Ñ DLL"
-#: config/i386/cygwin.h:53 config/i386/win32.h:61
+#: config/i386/cygming.h:48
msgid "Ignore dllimport for functions"
msgstr ""
-#: config/i386/cygwin.h:55
+#: config/i386/cygming.h:50
msgid "Use Mingw-specific thread support"
msgstr ""
-#: config/i386/cygwin.h:245
+#: config/i386/cygming.h:169
#, c-format
msgid "-f%s ignored for target (all code is position independent)"
msgstr ""
-#: config/i386/djgpp.h:206
+#: config/i386/djgpp.h:191
msgid "-mbnu210 is ignored (option is obsolete)"
msgstr ""
+#: config/i386/i386-interix.h:256
+#, fuzzy
+msgid "ms-bitfields not supported for objc"
+msgstr "-pipe не падтрымліваецца"
+
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
-#: config/i386/i386.h:306
+#: config/i386/i386.h:339
msgid "Alternate calling convention"
msgstr ""
-#: config/i386/i386.h:308 config/m68k/m68k.h:180 config/ns32k/ns32k.h:144
+#: config/i386/i386.h:341 config/m68k/m68k.h:344 config/ns32k/ns32k.h:144
msgid "Use normal calling convention"
msgstr ""
-#: config/i386/i386.h:310
+#: config/i386/i386.h:343
msgid "Align some doubles on dword boundary"
msgstr ""
-#: config/i386/i386.h:312
+#: config/i386/i386.h:345
msgid "Align doubles on word boundary"
msgstr ""
-#: config/i386/i386.h:314
+#: config/i386/i386.h:347
msgid "Uninitialized locals in .bss"
msgstr ""
-#: config/i386/i386.h:316
+#: config/i386/i386.h:349
msgid "Uninitialized locals in .data"
msgstr ""
-#: config/i386/i386.h:318 config/m68k/linux-aout.h:45 config/m68k/linux.h:50
-#: config/ns32k/ns32k.h:167
+#: config/i386/i386.h:351 config/m68k/linux.h:35 config/ns32k/ns32k.h:167
msgid "Use IEEE math for fp comparisons"
msgstr ""
-#: config/i386/i386.h:320 config/ns32k/ns32k.h:169
+#: config/i386/i386.h:353 config/ns32k/ns32k.h:169
msgid "Do not use IEEE math for fp comparisons"
msgstr ""
-#: config/i386/i386.h:322
+#: config/i386/i386.h:355
msgid "Return values of functions in FPU registers"
msgstr ""
-#: config/i386/i386.h:324
+#: config/i386/i386.h:357
msgid "Do not return values of functions in FPU registers"
msgstr ""
-#: config/i386/i386.h:326
+#: config/i386/i386.h:359
msgid "Do not generate sin, cos, sqrt for FPU"
msgstr ""
-#: config/i386/i386.h:328
+#: config/i386/i386.h:361
msgid "Generate sin, cos, sqrt for FPU"
msgstr ""
-#: config/i386/i386.h:330
+#: config/i386/i386.h:363
msgid "Omit the frame pointer in leaf functions"
msgstr ""
-#: config/i386/i386.h:333
+#: config/i386/i386.h:366
msgid "Enable stack probing"
msgstr ""
#. undocumented
#. undocumented
-#: config/i386/i386.h:338
+#: config/i386/i386.h:371
msgid "Align destination of the string operations"
msgstr ""
-#: config/i386/i386.h:340
+#: config/i386/i386.h:373
msgid "Do not align destination of the string operations"
msgstr ""
-#: config/i386/i386.h:342
+#: config/i386/i386.h:375
msgid "Inline all known string operations"
msgstr ""
-#: config/i386/i386.h:344
+#: config/i386/i386.h:377
msgid "Do not inline all known string operations"
msgstr ""
-#: config/i386/i386.h:346 config/i386/i386.h:350
+#: config/i386/i386.h:379 config/i386/i386.h:383
msgid "Use push instructions to save outgoing arguments"
msgstr ""
-#: config/i386/i386.h:348 config/i386/i386.h:352
+#: config/i386/i386.h:381 config/i386/i386.h:385
msgid "Do not use push instructions to save outgoing arguments"
msgstr ""
-#: config/i386/i386.h:354
+#: config/i386/i386.h:387
msgid "Support MMX built-in functions"
msgstr ""
-#: config/i386/i386.h:356
+#: config/i386/i386.h:389
msgid "Do not support MMX built-in functions"
msgstr ""
-#: config/i386/i386.h:358
+#: config/i386/i386.h:391
msgid "Support 3DNow! built-in functions"
msgstr ""
-#: config/i386/i386.h:360
+#: config/i386/i386.h:393
msgid "Do not support 3DNow! built-in functions"
msgstr ""
-#: config/i386/i386.h:362
+#: config/i386/i386.h:395
msgid "Support MMX and SSE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:364
+#: config/i386/i386.h:397
msgid "Do not support MMX and SSE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:366
+#: config/i386/i386.h:399
msgid "Support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:368
+#: config/i386/i386.h:401
msgid "Do not support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:370
+#: config/i386/i386.h:403
+msgid "Support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr ""
+
+#: config/i386/i386.h:405
+msgid "Do not support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr ""
+
+#: config/i386/i386.h:407
msgid "sizeof(long double) is 16"
msgstr ""
-#: config/i386/i386.h:372
+#: config/i386/i386.h:409
msgid "sizeof(long double) is 12"
msgstr ""
-#: config/i386/i386.h:374
+#: config/i386/i386.h:411
msgid "Generate 64bit x86-64 code"
msgstr ""
-#: config/i386/i386.h:376
+#: config/i386/i386.h:413
msgid "Generate 32bit i386 code"
msgstr ""
-#: config/i386/i386.h:378
+#: config/i386/i386.h:415
+msgid "Use native (MS) bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:417
+msgid "Use gcc default bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:419
msgid "Use red-zone in the x86-64 code"
msgstr ""
-#: config/i386/i386.h:380
+#: config/i386/i386.h:421
msgid "Do not use red-zone in the x86-64 code"
msgstr ""
+#: config/i386/i386.h:423
+#, c-format
+msgid "Use direct references against %gs when accessing tls data"
+msgstr ""
+
+#: config/i386/i386.h:425
+#, c-format
+msgid "Do not use direct references against %gs when accessing tls data"
+msgstr ""
+
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10525,23 +9759,24 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:409 config/rs6000/rs6000.h:393 config/sparc/sparc.h:635
+#: config/i386/i386.h:459 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437
+#: config/s390/s390.h:146 config/sparc/sparc.h:650
msgid "Schedule code for given CPU"
msgstr ""
-#: config/i386/i386.h:411
+#: config/i386/i386.h:461
msgid "Generate floating point mathematics using given instruction set"
msgstr ""
-#: config/i386/i386.h:413
+#: config/i386/i386.h:463 config/s390/s390.h:148
msgid "Generate code for given CPU"
msgstr "Генерыраваць код Ð´Ð»Ñ Ð´Ð°Ð´Ð·ÐµÐ½Ð°Ð³Ð° ЦП"
-#: config/i386/i386.h:415
+#: config/i386/i386.h:465
msgid "Number of registers used to pass integer arguments"
msgstr ""
-#. TARGET_DEFAULT is defined in sun*.h and isi.h, etc.
+#. TARGET_DEFAULT is defined in m68k-none.h, netbsd.h, etc.
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10551,98 +9786,99 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:417 config/m68k/m68k.h:263
+#: config/i386/i386.h:467 config/m68k/m68k.h:360
msgid "Loop code aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:419 config/m68k/m68k.h:265
+#: config/i386/i386.h:469 config/m68k/m68k.h:362
msgid "Jump targets are aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:421 config/m68k/m68k.h:267
+#: config/i386/i386.h:471 config/m68k/m68k.h:364
msgid "Function starts are aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:424
+#: config/i386/i386.h:474
msgid "Attempt to keep stack aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:426
+#: config/i386/i386.h:476
msgid "Branches are this expensive (1-5, arbitrary units)"
msgstr ""
-#: config/i386/i386.h:428
+#: config/i386/i386.h:478
msgid "Use given x86-64 code model"
msgstr ""
#. Undocumented.
#. Undocumented.
-#: config/i386/i386.h:434
+#: config/i386/i386.h:484
msgid "Use given assembler dialect"
msgstr "ВыкарыÑтоўвываць зададзены дыÑлект аÑÑмблера"
-#: config/i386/i386.h:436
+#: config/i386/i386.h:486
#, fuzzy
msgid "Use given thread-local storage dialect"
msgstr "ВыкарыÑтоўвываць зададзены дыÑлект аÑÑмблера"
-#: config/i386/sco5.h:297
+#: config/i386/sco5.h:292
msgid "Generate ELF output"
msgstr "Стварыць ELF-вывад"
-#: config/i386/win32.h:53
-msgid "Use Mingw32 interface"
-msgstr ""
-
-#: config/i386/win32.h:55
-msgid "Use Cygwin interface"
-msgstr ""
-
-#: config/i386/win32.h:57
-msgid "Use bare Windows interface"
-msgstr ""
-
#. If the environment variable DJDIR is not defined, then DJGPP is not installed correctly and GCC will quickly become confused with the default prefix settings. Report the problem now so the user doesn't receive deceptive "file not found" error messages later.
#. DJDIR is automatically defined by the DJGPP environment config file pointed to by the environment variable DJGPP. Examine DJGPP to try and figure out what's wrong.
-#: config/i386/xm-djgpp.h:71
+#: config/i386/xm-djgpp.h:64
msgid "environment variable DJGPP not defined"
msgstr ""
-#: config/i386/xm-djgpp.h:73
+#: config/i386/xm-djgpp.h:66
#, c-format
msgid "environment variable DJGPP points to missing file '%s'"
msgstr ""
-#: config/i386/xm-djgpp.h:76
+#: config/i386/xm-djgpp.h:69
#, c-format
msgid "environment variable DJGPP points to corrupt file '%s'"
msgstr ""
-#: config/i960/i960-c.c:66
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/i860/i860.h:60
+msgid "Generate code which uses the FPU"
+msgstr ""
+
+#: config/i860/i860.h:61 config/i860/i860.h:62
+msgid "Do not generate code which uses the FPU"
+msgstr ""
+
+#: config/i960/i960-c.c:68
msgid "sorry, not implemented: #pragma align NAME=SIZE"
msgstr ""
-#: config/i960/i960-c.c:71
+#: config/i960/i960-c.c:73
msgid "malformed #pragma align - ignored"
msgstr ""
-#: config/i960/i960-c.c:109
+#: config/i960/i960-c.c:111
msgid "sorry, not implemented: #pragma noalign NAME"
msgstr ""
-#: config/i960/i960.c:121 config/i960/i960.c:131
+#: config/i960/i960.c:134 config/i960/i960.c:144
msgid "conflicting architectures defined - using C series"
msgstr ""
-#: config/i960/i960.c:126
+#: config/i960/i960.c:139
msgid "conflicting architectures defined - using K series"
msgstr ""
-#: config/i960/i960.c:141
+#: config/i960/i960.c:154
msgid "iC2.0 and iC3.0 are incompatible - using iC3.0"
msgstr ""
-#: config/i960/i960.c:1448 config/m68k/m68k.c:559 config/rs6000/rs6000.c:9976
+#: config/i960/i960.c:1456 config/m68k/m68k.c:588 config/rs6000/rs6000.c:11296
msgid "stack limit expression is not supported"
msgstr ""
@@ -10653,398 +9889,543 @@ msgstr ""
#. An empty string NAME is used to identify the default VALUE.
#. ??? Not all ten of these architecture variations actually exist, but I
#. am not sure which are real and which aren't.
-#: config/i960/i960.h:240
+#: config/i960/i960.h:250
msgid "Generate SA code"
msgstr ""
-#: config/i960/i960.h:243
+#: config/i960/i960.h:253
msgid "Generate SB code"
msgstr ""
#. {"sc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate SC code")},
-#: config/i960/i960.h:248
+#: config/i960/i960.h:258
msgid "Generate KA code"
msgstr ""
-#: config/i960/i960.h:251
+#: config/i960/i960.h:261
msgid "Generate KB code"
msgstr ""
#. {"kc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate KC code")},
-#: config/i960/i960.h:256
+#: config/i960/i960.h:266
msgid "Generate JA code"
msgstr ""
-#: config/i960/i960.h:258
+#: config/i960/i960.h:268
msgid "Generate JD code"
msgstr ""
-#: config/i960/i960.h:261
+#: config/i960/i960.h:271
msgid "Generate JF code"
msgstr ""
-#: config/i960/i960.h:263
+#: config/i960/i960.h:273
msgid "generate RP code"
msgstr ""
-#: config/i960/i960.h:266
+#: config/i960/i960.h:276
msgid "Generate MC code"
msgstr ""
-#: config/i960/i960.h:269
+#: config/i960/i960.h:279
msgid "Generate CA code"
msgstr ""
#. {"cb", (TARGET_FLAG_NUMERICS|TARGET_FLAG_C_SERIES| TARGET_FLAG_BRANCH_PREDICT|TARGET_FLAG_CODE_ALIGN), N_("Generate CB code")}, {"cc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_C_SERIES|TARGET_FLAG_BRANCH_PREDICT| TARGET_FLAG_CODE_ALIGN), N_("Generate CC code")},
-#: config/i960/i960.h:279
+#: config/i960/i960.h:289
msgid "Generate CF code"
msgstr ""
-#: config/i960/i960.h:283 config/mips/mips.h:568 config/pa/pa.h:266
+#: config/i960/i960.h:293 config/mips/mips.h:539 config/pa/pa.h:266
msgid "Use software floating point"
msgstr ""
-#: config/i960/i960.h:285
+#: config/i960/i960.h:295
msgid "Use alternate leaf function entries"
msgstr ""
-#: config/i960/i960.h:287
+#: config/i960/i960.h:297
msgid "Do not use alternate leaf function entries"
msgstr ""
-#: config/i960/i960.h:289
+#: config/i960/i960.h:299
msgid "Perform tail call optimization"
msgstr ""
-#: config/i960/i960.h:291
+#: config/i960/i960.h:301
msgid "Do not perform tail call optimization"
msgstr ""
-#: config/i960/i960.h:293
+#: config/i960/i960.h:303
msgid "Use complex addressing modes"
msgstr ""
-#: config/i960/i960.h:295
+#: config/i960/i960.h:305
msgid "Do not use complex addressing modes"
msgstr ""
-#: config/i960/i960.h:297
+#: config/i960/i960.h:307
msgid "Align code to 8 byte boundary"
msgstr ""
-#: config/i960/i960.h:299
+#: config/i960/i960.h:309
msgid "Do not align code to 8 byte boundary"
msgstr ""
#. {"clean-linkage", (TARGET_FLAG_CLEAN_LINKAGE), N_("Force use of prototypes")}, {"no-clean-linkage", -(TARGET_FLAG_CLEAN_LINKAGE), N_("Do not force use of prototypes")},
-#: config/i960/i960.h:305 config/i960/i960.h:307
+#: config/i960/i960.h:315 config/i960/i960.h:317
msgid "Enable compatibility with iC960 v2.0"
msgstr ""
-#: config/i960/i960.h:309
+#: config/i960/i960.h:319
msgid "Enable compatibility with iC960 v3.0"
msgstr ""
-#: config/i960/i960.h:311 config/i960/i960.h:313
+#: config/i960/i960.h:321 config/i960/i960.h:323
msgid "Enable compatibility with ic960 assembler"
msgstr ""
-#: config/i960/i960.h:315
+#: config/i960/i960.h:325
msgid "Do not permit unaligned accesses"
msgstr ""
-#: config/i960/i960.h:317
+#: config/i960/i960.h:327
msgid "Permit unaligned accesses"
msgstr ""
-#: config/i960/i960.h:319
+#: config/i960/i960.h:329
msgid "Layout types like Intel's v1.3 gcc"
msgstr ""
-#: config/i960/i960.h:321
+#: config/i960/i960.h:331
msgid "Do not layout types like Intel's v1.3 gcc"
msgstr ""
-#: config/i960/i960.h:323 config/sparc/freebsd.h:80 config/sparc/linux.h:86
-#: config/sparc/linux64.h:88 config/sparc/netbsd-elf.h:238
+#: config/i960/i960.h:333 config/sparc/freebsd.h:76 config/sparc/linux.h:91
+#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215
msgid "Use 64 bit long doubles"
msgstr ""
-#: config/i960/i960.h:325
+#: config/i960/i960.h:335
msgid "Enable linker relaxation"
msgstr ""
-#: config/i960/i960.h:327
+#: config/i960/i960.h:337
msgid "Do not enable linker relaxation"
msgstr ""
-#: config/ia64/ia64-c.c:51
+#: config/ia64/ia64-c.c:52
msgid "malformed #pragma builtin"
msgstr ""
-#: config/ia64/ia64.c:4015
+#: config/ia64/ia64.c:1021 config/m32r/m32r.c:354
+#, fuzzy, c-format
+msgid "invalid argument of `%s' attribute"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
+
+#: config/ia64/ia64.c:1033
+msgid "%Jan address area attribute cannot be specified for local variables"
+msgstr ""
+
+#: config/ia64/ia64.c:1040
+#, fuzzy
+msgid "%Jaddress area of '%s' conflicts with previous declaration"
+msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
+
+#: config/ia64/ia64.c:1047
+#, fuzzy
+msgid "%Jaddress area attribute cannot be specified for functions"
+msgstr "\"%s\" звычайна функцыÑ"
+
+#: config/ia64/ia64.c:4288
msgid "ia64_print_operand: unknown code"
msgstr ""
-#: config/ia64/ia64.c:4292
+#: config/ia64/ia64.c:4628
msgid "value of -mfixed-range must have form REG1-REG2"
msgstr ""
-#: config/ia64/ia64.c:4319
+#: config/ia64/ia64.c:4655
#, c-format
msgid "%s-%s is an empty range"
msgstr ""
-#: config/ia64/ia64.c:4350
+#: config/ia64/ia64.c:4703
msgid "cannot optimize floating point division for both latency and throughput"
msgstr ""
-#: config/ia64/ia64.c:4356
+#: config/ia64/ia64.c:4709
msgid "cannot optimize integer division for both latency and throughput"
msgstr ""
-#: config/ia64/ia64.c:4368
+#: config/ia64/ia64.c:4715
+msgid "cannot optimize square root for both latency and throughput"
+msgstr ""
+
+#: config/ia64/ia64.c:4721
+msgid "not yet implemented: latency-optimized inline square root"
+msgstr ""
+
+#: config/ia64/ia64.c:4733
#, c-format
msgid "bad value (%s) for -mtls-size= switch"
msgstr ""
+#: config/ia64/ia64.c:4749
+#, c-format
+msgid "bad value (%s) for -tune= switch"
+msgstr ""
+
#. This macro defines names of command options to set and clear bits in
#. `target_flags'. Its definition is an initializer with a subgrouping for
#. each command option.
-#: config/ia64/ia64.h:154
+#: config/ia64/ia64.h:172
msgid "Generate big endian code"
msgstr ""
-#: config/ia64/ia64.h:156 config/mcore/mcore.h:159
+#: config/ia64/ia64.h:174 config/mcore/mcore.h:154
msgid "Generate little endian code"
msgstr ""
-#: config/ia64/ia64.h:158
+#: config/ia64/ia64.h:176
msgid "Generate code for GNU as"
msgstr "Генерыраваць код Ð´Ð»Ñ GNU as"
-#: config/ia64/ia64.h:160
+#: config/ia64/ia64.h:178
msgid "Generate code for Intel as"
msgstr "Генерыраваць код Ð´Ð»Ñ Intel as"
-#: config/ia64/ia64.h:162
+#: config/ia64/ia64.h:180
msgid "Generate code for GNU ld"
msgstr "Генерыраваць код Ð´Ð»Ñ GNU ld"
-#: config/ia64/ia64.h:164
+#: config/ia64/ia64.h:182
msgid "Generate code for Intel ld"
msgstr "Генерыраваць код Ð´Ð»Ñ Intel ld"
-#: config/ia64/ia64.h:166
+#: config/ia64/ia64.h:184
msgid "Generate code without GP reg"
msgstr "Генерыраваць код без GP reg"
-#: config/ia64/ia64.h:168
+#: config/ia64/ia64.h:186
msgid "Emit stop bits before and after volatile extended asms"
msgstr ""
-#: config/ia64/ia64.h:170
+#: config/ia64/ia64.h:188
msgid "Don't emit stop bits before and after volatile extended asms"
msgstr ""
-#: config/ia64/ia64.h:172
+#: config/ia64/ia64.h:190
msgid "Emit code for Itanium (TM) processor B step"
msgstr ""
-#: config/ia64/ia64.h:174
+#: config/ia64/ia64.h:192
msgid "Use in/loc/out register names"
msgstr ""
-#: config/ia64/ia64.h:176
+#: config/ia64/ia64.h:194
msgid "Disable use of sdata/scommon/sbss"
msgstr ""
-#: config/ia64/ia64.h:178
+#: config/ia64/ia64.h:196
msgid "Enable use of sdata/scommon/sbss"
msgstr ""
-#: config/ia64/ia64.h:180
+#: config/ia64/ia64.h:198
msgid "gp is constant (but save/restore gp on indirect calls)"
msgstr ""
-#: config/ia64/ia64.h:182
+#: config/ia64/ia64.h:200
msgid "Generate self-relocatable code"
msgstr ""
-#: config/ia64/ia64.h:184
+#: config/ia64/ia64.h:202
msgid "Generate inline floating point division, optimize for latency"
msgstr ""
-#: config/ia64/ia64.h:186
+#: config/ia64/ia64.h:204
msgid "Generate inline floating point division, optimize for throughput"
msgstr ""
-#: config/ia64/ia64.h:188
+#: config/ia64/ia64.h:206
msgid "Generate inline integer division, optimize for latency"
msgstr ""
-#: config/ia64/ia64.h:190
+#: config/ia64/ia64.h:208
msgid "Generate inline integer division, optimize for throughput"
msgstr ""
-#: config/ia64/ia64.h:192
+#: config/ia64/ia64.h:210
+msgid "Generate inline square root, optimize for latency"
+msgstr ""
+
+#: config/ia64/ia64.h:212
+msgid "Generate inline square root, optimize for throughput"
+msgstr ""
+
+#: config/ia64/ia64.h:214
msgid "Enable Dwarf 2 line debug info via GNU as"
msgstr ""
-#: config/ia64/ia64.h:194
+#: config/ia64/ia64.h:216
msgid "Disable Dwarf 2 line debug info via GNU as"
msgstr ""
-#: config/ia64/ia64.h:223
+#: config/ia64/ia64.h:218
+msgid "Enable earlier placing stop bits for better scheduling"
+msgstr ""
+
+#: config/ia64/ia64.h:220
+msgid "Disable earlier placing stop bits"
+msgstr ""
+
+#: config/ia64/ia64.h:265
msgid "Specify range of registers to make fixed"
msgstr ""
-#: config/ip2k/ip2k.c:1090
+#: config/ip2k/ip2k.c:1074
#, fuzzy
msgid "bad operand"
msgstr "нерÑчаіÑны %%f аперанд"
-#: config/m32r/m32r.c:139
+#: config/iq2000/iq2000.c:1816
#, c-format
-msgid "bad value (%s) for -mmodel switch"
+msgid "bad value (%s) for -mcpu= switch"
msgstr ""
-#: config/m32r/m32r.c:148
+#: config/iq2000/iq2000.c:1845
+#, fuzzy, c-format
+msgid "The compiler does not support -march=%s."
+msgstr "%s не падтрымлівае %s"
+
+#: config/iq2000/iq2000.c:2232
#, c-format
-msgid "bad value (%s) for -msdata switch"
+msgid "gp_offset (%ld) or end_offset (%ld) is less than zero."
msgstr ""
-#: config/m32r/m32r.c:319
+#: config/iq2000/iq2000.c:3023
#, fuzzy, c-format
-msgid "invalid argument of `%s' attribute"
-msgstr "нÑвернае выкарыÑтанне \"restict\""
+msgid "argument `%d' is not a constant"
+msgstr "аргумент `__builtin_args_info' павінен быць канÑтантай"
+
+#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2081
+msgid "PRINT_OPERAND_ADDRESS, null pointer"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3469
+#, c-format
+msgid "PRINT_OPERAND: Unknown punctuation '%c'"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3478 config/mips/mips.c:5457
+#: config/xtensa/xtensa.c:1935
+msgid "PRINT_OPERAND null pointer"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3547
+#, fuzzy, c-format
+msgid "invalid %%P operand"
+msgstr "нерÑчаіÑны %%-код"
+
+#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8881
+#, c-format
+msgid "invalid %%p value"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3619 config/mips/mips.c:5587
+#, c-format
+msgid "invalid use of %%d, %%x, or %%X"
+msgstr ""
+
+#: config/iq2000/iq2000.h:72 config/mn10300/mn10300.h:74
+msgid "No default crt0.o"
+msgstr ""
+
+#: config/iq2000/iq2000.h:74
+msgid "Use GP relative sdata/sbss sections"
+msgstr ""
+
+#: config/iq2000/iq2000.h:76
+msgid "Don't use GP relative sdata/sbss sections"
+msgstr ""
+
+#: config/iq2000/iq2000.h:78 config/mips/mips.h:563
+msgid "Use ROM instead of RAM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:80 config/mips/mips.h:565
+msgid "Don't use ROM instead of RAM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:82 config/mips/mips.h:567
+msgid "Put uninitialized constants in ROM (needs -membedded-data)"
+msgstr ""
+
+#: config/iq2000/iq2000.h:84 config/mips/mips.h:569
+msgid "Don't put uninitialized constants in ROM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:106 config/mips/mips.h:731 config/pa/pa.h:310
+msgid "Specify CPU for scheduling purposes"
+msgstr ""
+
+#: config/iq2000/iq2000.h:108 config/mips/mips.h:733
+msgid "Specify CPU for code generation purposes"
+msgstr ""
+
+#: config/m32r/m32r.c:172
+#, c-format
+msgid "bad value (%s) for -mmodel switch"
+msgstr ""
+
+#: config/m32r/m32r.c:181
+#, c-format
+msgid "bad value (%s) for -msdata switch"
+msgstr ""
-#: config/m32r/m32r.c:422
-msgid "const objects cannot go in .sdata/.sbss"
+#: config/m32r/m32r.c:188
+#, c-format
+msgid "bad value (%s) for -flush-trap=n (0=<n<=15)"
msgstr ""
-#: config/m32r/m32r.c:2256
+#: config/m32r/m32r.c:2295
#, fuzzy, c-format
msgid "invalid operand to %%s code"
msgstr "нерÑчаіÑны %%-код"
-#: config/m32r/m32r.c:2263
+#: config/m32r/m32r.c:2302
#, fuzzy, c-format
msgid "invalid operand to %%p code"
msgstr "нерÑчаіÑны %%-код"
-#: config/m32r/m32r.c:2318
+#: config/m32r/m32r.c:2357
msgid "bad insn for 'A'"
msgstr ""
-#: config/m32r/m32r.c:2370
+#: config/m32r/m32r.c:2404
#, fuzzy, c-format
msgid "invalid operand to %%T/%%B code"
msgstr "нерÑчаіÑны %%-код"
-#: config/m32r/m32r.c:2393
+#: config/m32r/m32r.c:2427
#, fuzzy, c-format
msgid "invalid operand to %%N code"
msgstr "нерÑчаіÑны %%-код"
-#: config/m32r/m32r.c:2438
+#: config/m32r/m32r.c:2460
msgid "pre-increment address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2445
+#: config/m32r/m32r.c:2467
msgid "pre-decrement address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2452
+#: config/m32r/m32r.c:2474
msgid "post-increment address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2530 config/m32r/m32r.c:2546
-#: config/rs6000/rs6000.c:12802
+#: config/m32r/m32r.c:2550 config/m32r/m32r.c:2566
+#: config/rs6000/rs6000.c:14753
msgid "bad address"
msgstr "дрÑнны адраÑ"
-#: config/m32r/m32r.c:2551
+#: config/m32r/m32r.c:2571
#, fuzzy
msgid "lo_sum not of register"
msgstr "Ðе выкарыÑтоўваць Ñ€ÑгіÑтра sb"
#. { "relax", TARGET_RELAX_MASK, "" }, { "no-relax", -TARGET_RELAX_MASK, "" },
-#: config/m32r/m32r.h:241
+#: config/m32r/m32r.h:277
msgid "Display compile time statistics"
msgstr ""
-#: config/m32r/m32r.h:243
+#: config/m32r/m32r.h:279
msgid "Align all loops to 32 byte boundary"
msgstr ""
-#: config/m32r/m32r.h:246
+#: config/m32r/m32r.h:282
msgid "Only issue one instruction per cycle"
msgstr ""
-#: config/m32r/m32r.h:249
+#: config/m32r/m32r.h:285
msgid "Prefer branches over conditional execution"
msgstr ""
-#: config/m32r/m32r.h:265
+#: config/m32r/m32r.h:306
msgid "Code size: small, medium or large"
msgstr ""
-#: config/m32r/m32r.h:267
+#: config/m32r/m32r.h:308
msgid "Small data area: none, sdata, use"
msgstr ""
-#: config/m68hc11/m68hc11.c:242
+#: config/m32r/m32r.h:310 config/mips/mips.h:739
+msgid "Don't call any cache flush functions"
+msgstr ""
+
+#: config/m32r/m32r.h:312 config/mips/mips.h:741
+msgid "Specify cache flush function"
+msgstr ""
+
+#: config/m32r/m32r.h:314
+msgid "Don't call any cache flush trap"
+msgstr ""
+
+#: config/m32r/m32r.h:316
+msgid "Specify cache flush trap number"
+msgstr ""
+
+#: config/m68hc11/m68hc11.c:269
#, c-format
msgid "-f%s ignored for 68HC11/68HC12 (not supported)"
msgstr ""
-#: config/m68hc11/m68hc11.c:1305
+#: config/m68hc11/m68hc11.c:1260
msgid "`trap' and `far' attributes are not compatible, ignoring `far'"
msgstr ""
-#: config/m68hc11/m68hc11.c:1311
+#: config/m68hc11/m68hc11.c:1266
#, fuzzy
msgid "`trap' attribute is already used"
msgstr "\"%s\" атрыбут ігнарыруецца"
#. !!!! SCz wrong here.
-#: config/m68hc11/m68hc11.c:3327 config/m68hc11/m68hc11.c:3733
+#: config/m68hc11/m68hc11.c:3222 config/m68hc11/m68hc11.c:3606
msgid "move insn not handled"
msgstr ""
-#: config/m68hc11/m68hc11.c:3579 config/m68hc11/m68hc11.c:3663
-#: config/m68hc11/m68hc11.c:3946
+#: config/m68hc11/m68hc11.c:3454 config/m68hc11/m68hc11.c:3538
+#: config/m68hc11/m68hc11.c:3809
msgid "invalid register in the move instruction"
msgstr ""
-#: config/m68hc11/m68hc11.c:3613
+#: config/m68hc11/m68hc11.c:3488
msgid "invalid operand in the instruction"
msgstr ""
-#: config/m68hc11/m68hc11.c:3920
+#: config/m68hc11/m68hc11.c:3783
#, fuzzy
msgid "invalid register in the instruction"
msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: config/m68hc11/m68hc11.c:3953
+#: config/m68hc11/m68hc11.c:3816
msgid "operand 1 must be a hard register"
msgstr ""
-#: config/m68hc11/m68hc11.c:3970
+#: config/m68hc11/m68hc11.c:3830
#, fuzzy
msgid "invalid rotate insn"
msgstr "ÐерÑчаіÑны выбар %s"
-#: config/m68hc11/m68hc11.c:4391
+#: config/m68hc11/m68hc11.c:4246
msgid "registers IX, IY and Z used in the same INSN"
msgstr ""
-#: config/m68hc11/m68hc11.c:4728 config/m68hc11/m68hc11.c:5031
+#: config/m68hc11/m68hc11.c:4583 config/m68hc11/m68hc11.c:4883
msgid "cannot do z-register replacement"
msgstr ""
-#: config/m68hc11/m68hc11.c:5094
+#: config/m68hc11/m68hc11.c:4946
msgid "invalid Z register replacement for insn"
msgstr ""
@@ -11052,55 +10433,55 @@ msgstr ""
#. pairs in braces, each pair being { "NAME", VALUE } where VALUE is the bits
#. to set or minus the bits to clear. An empty string NAME is used to
#. identify the default VALUE.
-#: config/m68hc11/m68hc11.h:172
+#: config/m68hc11/m68hc11.h:177
msgid "Compile with 16-bit integer mode"
msgstr ""
-#: config/m68hc11/m68hc11.h:174
+#: config/m68hc11/m68hc11.h:179
msgid "Compile with 32-bit integer mode"
msgstr ""
-#: config/m68hc11/m68hc11.h:176
+#: config/m68hc11/m68hc11.h:181
msgid "Auto pre/post decrement increment allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:178
+#: config/m68hc11/m68hc11.h:183
msgid "Auto pre/post decrement increment not allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:180
+#: config/m68hc11/m68hc11.h:185
msgid "Min/max instructions allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:182
+#: config/m68hc11/m68hc11.h:187
msgid "Min/max instructions not allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:184
+#: config/m68hc11/m68hc11.h:189
msgid "Use call and rtc for function calls and returns"
msgstr ""
-#: config/m68hc11/m68hc11.h:186
+#: config/m68hc11/m68hc11.h:191
msgid "Use jsr and rts for function calls and returns"
msgstr ""
-#: config/m68hc11/m68hc11.h:188
+#: config/m68hc11/m68hc11.h:193
msgid "Do not use direct addressing mode for soft registers"
msgstr ""
-#: config/m68hc11/m68hc11.h:190
+#: config/m68hc11/m68hc11.h:195
msgid "Use direct addressing mode for soft registers"
msgstr ""
-#: config/m68hc11/m68hc11.h:192 config/m68hc11/m68hc11.h:198
+#: config/m68hc11/m68hc11.h:197 config/m68hc11/m68hc11.h:203
msgid "Compile for a 68HC11"
msgstr ""
-#: config/m68hc11/m68hc11.h:194 config/m68hc11/m68hc11.h:200
+#: config/m68hc11/m68hc11.h:199 config/m68hc11/m68hc11.h:205
msgid "Compile for a 68HC12"
msgstr ""
-#: config/m68hc11/m68hc11.h:196 config/m68hc11/m68hc11.h:202
+#: config/m68hc11/m68hc11.h:201 config/m68hc11/m68hc11.h:207
msgid "Compile for a 68HCS12"
msgstr ""
@@ -11113,30 +10494,43 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/m68hc11/m68hc11.h:216
+#: config/m68hc11/m68hc11.h:221
msgid "Specify the register allocation order"
msgstr ""
-#: config/m68hc11/m68hc11.h:218
+#: config/m68hc11/m68hc11.h:223
msgid "Indicate the number of soft registers available"
msgstr ""
-#: config/m68k/m68k.c:158
+#: config/m68k/m68k.c:227
#, c-format
msgid "-malign-loops=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:169
+#: config/m68k/m68k.c:238
+msgid "-mshared-library-id= specified without -mid-shared-library"
+msgstr ""
+
+#: config/m68k/m68k.c:241
+#, c-format
+msgid "-mshared-library-id=%d is not between 0 and %d"
+msgstr ""
+
+#: config/m68k/m68k.c:255
+msgid "cannot specify both -msep-data and -mid-shared-library"
+msgstr ""
+
+#: config/m68k/m68k.c:270
#, c-format
msgid "-malign-jumps=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:180
+#: config/m68k/m68k.c:281
#, c-format
msgid "-malign-functions=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:189
+#: config/m68k/m68k.c:290
msgid "-fPIC is not currently supported on the 68000 or 68010\n"
msgstr ""
@@ -11145,511 +10539,437 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/m68k/m68k.h:162 config/m68k/m68k.h:164
+#: config/m68k/m68k.h:248 config/m68k/m68k.h:250
msgid "Generate code for a 68020"
msgstr "Ствараць код Ð´Ð»Ñ 68020"
-#: config/m68k/m68k.h:169 config/m68k/m68k.h:172
+#: config/m68k/m68k.h:255 config/m68k/m68k.h:258
msgid "Generate code for a 68000"
msgstr "Ствараць код Ð´Ð»Ñ 68000"
-#: config/m68k/m68k.h:174
+#: config/m68k/m68k.h:260
msgid "Use the bit-field instructions"
msgstr ""
-#: config/m68k/m68k.h:176
+#: config/m68k/m68k.h:262
#, fuzzy
msgid "Do not use the bit-field instructions"
msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
-#: config/m68k/m68k.h:178
-msgid "Use different calling convention using 'rtd'"
-msgstr ""
-
-#: config/m68k/m68k.h:182
+#: config/m68k/m68k.h:264
msgid "Consider type `int' to be 16 bits wide"
msgstr ""
-#: config/m68k/m68k.h:184
+#: config/m68k/m68k.h:266
msgid "Consider type `int' to be 32 bits wide"
msgstr ""
-#: config/m68k/m68k.h:186
-#, fuzzy
-msgid "Generate code for a Sun FPA"
-msgstr "Стварыць код Ð´Ð»Ñ DLL"
-
-#: config/m68k/m68k.h:189
-#, fuzzy
-msgid "Do not generate code for a Sun FPA"
-msgstr "Стварыць код Ð´Ð»Ñ DLL"
-
-#: config/m68k/m68k.h:191 config/m68k/m68k.h:193
-#, fuzzy
-msgid "Generate code for a Sun Sky board"
-msgstr "Стварыць код Ð´Ð»Ñ DLL"
-
-#: config/m68k/m68k.h:195
-msgid "Do not use Sky linkage convention"
-msgstr ""
-
-#: config/m68k/m68k.h:197
-msgid "Generate code for a 68881"
-msgstr "Ствараць код Ð´Ð»Ñ 68881"
-
-#: config/m68k/m68k.h:200
+#: config/m68k/m68k.h:269
msgid "Generate code with library calls for floating point"
msgstr ""
-#: config/m68k/m68k.h:202
+#: config/m68k/m68k.h:271
msgid "Generate code for a 68040, without any new instructions"
msgstr ""
-#: config/m68k/m68k.h:205
+#: config/m68k/m68k.h:274
msgid "Generate code for a 68060, without any new instructions"
msgstr ""
-#: config/m68k/m68k.h:209
+#: config/m68k/m68k.h:278
msgid "Generate code for a 68030"
msgstr "Ствараць код Ð´Ð»Ñ 68030"
-#: config/m68k/m68k.h:212
+#: config/m68k/m68k.h:281
msgid "Generate code for a 68040"
msgstr "Ствараць код Ð´Ð»Ñ 68040"
-#: config/m68k/m68k.h:216
+#: config/m68k/m68k.h:285
msgid "Generate code for a 68060"
msgstr "Ствараць код Ð´Ð»Ñ 68060"
-#: config/m68k/m68k.h:221
+#: config/m68k/m68k.h:290
msgid "Generate code for a 520X"
msgstr "Ствараць код Ð´Ð»Ñ 520X"
-#: config/m68k/m68k.h:224
+#: config/m68k/m68k.h:294
+#, fuzzy
+msgid "Generate code for a 5206e"
+msgstr "Ствараць код Ð´Ð»Ñ 520X"
+
+#: config/m68k/m68k.h:298
+#, fuzzy
+msgid "Generate code for a 528x"
+msgstr "Ствараць код Ð´Ð»Ñ 520X"
+
+#: config/m68k/m68k.h:302
+#, fuzzy
+msgid "Generate code for a 5307"
+msgstr "Ствараць код Ð´Ð»Ñ 520X"
+
+#: config/m68k/m68k.h:306
+#, fuzzy
+msgid "Generate code for a 5407"
+msgstr "Ствараць код Ð´Ð»Ñ 520X"
+
+#: config/m68k/m68k.h:309
msgid "Generate code for a 68851"
msgstr "Ствараць код Ð´Ð»Ñ 68851"
-#: config/m68k/m68k.h:226
+#: config/m68k/m68k.h:311
msgid "Do no generate code for a 68851"
msgstr "Ðе Ñтвараць код Ð´Ð»Ñ 68851"
-#: config/m68k/m68k.h:229
+#: config/m68k/m68k.h:314
msgid "Generate code for a 68302"
msgstr "Ствараць код Ð´Ð»Ñ 68302"
-#: config/m68k/m68k.h:232
+#: config/m68k/m68k.h:317
msgid "Generate code for a 68332"
msgstr "Ствараць код Ð´Ð»Ñ 68332"
-#: config/m68k/m68k.h:236
+#: config/m68k/m68k.h:321
msgid "Generate code for a cpu32"
msgstr "Ствараць код Ð´Ð»Ñ Ñ†Ð¿32"
-#: config/m68k/m68k.h:239
+#: config/m68k/m68k.h:324
msgid "Align variables on a 32-bit boundary"
msgstr ""
-#: config/m68k/m68k.h:241
+#: config/m68k/m68k.h:326
msgid "Align variables on a 16-bit boundary"
msgstr ""
-#: config/m68k/m68k.h:243
-msgid "Generate pc-relative code"
-msgstr ""
-
-#: config/m68k/m68k.h:245
-msgid "Do not use unaligned memory references"
-msgstr ""
-
-#: config/m68k/m68k.h:247
-msgid "Use unaligned memory references"
+#: config/m68k/m68k.h:328
+msgid "Enable separate data segment"
msgstr ""
-#: config/m88k/m88k.c:903
-#, c-format
-msgid "internal gcc monitor: short-branch(%x)"
+#: config/m68k/m68k.h:330
+msgid "Disable separate data segment"
msgstr ""
-#: config/m88k/m88k.c:2302
-msgid "internal gcc error: Can't express symbolic location"
+#: config/m68k/m68k.h:332
+msgid "Enable ID based shared library"
msgstr ""
-#: config/m88k/m88k.c:2517
-#, c-format
-msgid "argument #%d is a structure"
+#: config/m68k/m68k.h:334
+msgid "Disable ID based shared library"
msgstr ""
-#: config/m88k/m88k.c:2816
-#, c-format
-msgid "%%R not followed by %%B/C/D/E"
-msgstr ""
-
-#: config/m88k/m88k.c:2884
-#, c-format
-msgid "invalid %%x/X value"
-msgstr "нерÑчаіÑнае значÑньне %%x/X"
-
-#: config/m88k/m88k.c:2901
-#, c-format
-msgid "invalid %%Q value"
-msgstr "дрÑннае %%Q значÑнне"
-
-#: config/m88k/m88k.c:2907 config/rs6000/rs6000.c:7718
-#, c-format
-msgid "invalid %%q value"
-msgstr ""
-
-#: config/m88k/m88k.c:2913
-#, c-format
-msgid "invalid %%o value"
-msgstr "нерÑчаіÑнае значÑньне %%o"
-
-#: config/m88k/m88k.c:2920 config/rs6000/rs6000.c:7681
-#, c-format
-msgid "invalid %%p value"
-msgstr ""
-
-#: config/m88k/m88k.c:2933 config/m88k/m88k.c:2938
-#, fuzzy, c-format
-msgid "invalid %%s/S value"
-msgstr "дрÑннае %%Q значÑнне"
-
-#: config/m88k/m88k.c:2949
-#, fuzzy, c-format
-msgid "invalid %%P operand"
-msgstr "нерÑчаіÑны %%-код"
-
-#: config/m88k/m88k.c:2980 config/romp/romp.c:690
-#, c-format
-msgid "invalid %%B value"
-msgstr ""
-
-#: config/m88k/m88k.c:3010
-#, fuzzy, c-format
-msgid "invalid %%D value"
-msgstr "дрÑннае %%Q значÑнне"
-
-#: config/m88k/m88k.c:3023
-#, c-format
-msgid "`%%d' operand isn't a register"
-msgstr ""
-
-#: config/m88k/m88k.c:3041
-msgid "operand is r0"
-msgstr ""
-
-#: config/m88k/m88k.c:3055
-msgid "operand is const_double"
+#: config/m68k/m68k.h:336
+msgid "Generate pc-relative code"
msgstr ""
-#: config/m88k/m88k.c:3074
-msgid "invalid code"
+#: config/m68k/m68k.h:338
+msgid "Do not use unaligned memory references"
msgstr ""
-#. Do any checking or such that is needed after processing the -m switches.
-#: config/m88k/m88k.h:277
-msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
+#: config/m68k/m68k.h:340
+msgid "Use unaligned memory references"
msgstr ""
-#: config/m88k/m88k.h:299
-#, fuzzy, c-format
-msgid "invalid option `-mshort-data-%s'"
-msgstr "ÐерÑчаіÑны выбар \"%s\""
-
-#: config/m88k/m88k.h:304
-#, c-format
-msgid "-mshort-data-%s is too large "
+#: config/m68k/m68k.h:342
+msgid "Use different calling convention using 'rtd'"
msgstr ""
-#: config/m88k/m88k.h:306
-#, c-format
-msgid "-mshort-data-%s and PIC are incompatible"
+#: config/m68k/m68k.h:366
+msgid "ID of shared library to build"
msgstr ""
-#: config/mcore/mcore.c:3078
+#: config/mcore/mcore.c:2973
#, fuzzy, c-format
msgid "invalid option `-mstack-increment=%s'"
msgstr "ÐерÑчаіÑны выбар \"%s\""
-#: config/mcore/mcore.h:126
+#: config/mcore/mcore.h:121
msgid "Inline constants if it can be done in 2 insns or less"
msgstr ""
-#: config/mcore/mcore.h:128
+#: config/mcore/mcore.h:123
msgid "Inline constants if it only takes 1 instruction"
msgstr ""
-#: config/mcore/mcore.h:130
+#: config/mcore/mcore.h:125
msgid "Set maximum alignment to 4"
msgstr ""
-#: config/mcore/mcore.h:132
+#: config/mcore/mcore.h:127
msgid "Set maximum alignment to 8"
msgstr ""
-#: config/mcore/mcore.h:136
+#: config/mcore/mcore.h:131
msgid "Do not use the divide instruction"
msgstr ""
-#: config/mcore/mcore.h:140
+#: config/mcore/mcore.h:135
msgid "Do not arbitrary sized immediates in bit operations"
msgstr ""
-#: config/mcore/mcore.h:142
+#: config/mcore/mcore.h:137
msgid "Always treat bit-field as int-sized"
msgstr ""
-#: config/mcore/mcore.h:146
+#: config/mcore/mcore.h:141
msgid "Force functions to be aligned to a 4 byte boundary"
msgstr ""
-#: config/mcore/mcore.h:148
+#: config/mcore/mcore.h:143
msgid "Force functions to be aligned to a 2 byte boundary"
msgstr ""
-#: config/mcore/mcore.h:150
+#: config/mcore/mcore.h:145
msgid "Emit call graph information"
msgstr ""
-#: config/mcore/mcore.h:154
+#: config/mcore/mcore.h:149
msgid "Prefer word accesses over byte accesses"
msgstr ""
-#: config/mcore/mcore.h:165
+#: config/mcore/mcore.h:160
msgid "Generate code for the M*Core M340"
msgstr ""
-#: config/mcore/mcore.h:178
+#: config/mcore/mcore.h:173
msgid "Maximum amount for a single stack increment operation"
msgstr ""
-#: config/mips/mips.c:5128
-#, c-format
-msgid "bad value (%s) for -mabi= switch"
+#: config/mips/mips.c:3115 config/xtensa/xtensa.c:992
+#: config/xtensa/xtensa.c:1024 config/xtensa/xtensa.c:1033
+msgid "bad test"
msgstr ""
-#: config/mips/mips.c:5158
+#: config/mips/mips.c:4593
#, c-format
-msgid "-mips%d conflicts with the other architecture options, which specify a MIPS%d processor"
+msgid "bad value (%s) for -mabi= switch"
msgstr ""
-#: config/mips/mips.c:5165
+#: config/mips/mips.c:4616
#, c-format
-msgid "bad value (%s) for -mips switch"
+msgid "-mips%s conflicts with the other architecture options, which specify a MIPS%d processor"
msgstr ""
-#: config/mips/mips.c:5180
+#: config/mips/mips.c:4635
#, c-format
msgid "-march=%s is not compatible with the selected ABI"
msgstr ""
-#: config/mips/mips.c:5192
+#: config/mips/mips.c:4650
msgid "-mgp64 used with a 32-bit processor"
msgstr ""
-#: config/mips/mips.c:5194
+#: config/mips/mips.c:4652
msgid "-mgp32 used with a 64-bit ABI"
msgstr ""
-#: config/mips/mips.c:5196
+#: config/mips/mips.c:4654
msgid "-mgp64 used with a 32-bit ABI"
msgstr ""
-#: config/mips/mips.c:5214 config/mips/mips.c:5216 config/mips/mips.c:5218
+#: config/mips/mips.c:4672 config/mips/mips.c:4674 config/mips/mips.c:4676
+#: config/mips/mips.c:4804
#, fuzzy, c-format
msgid "unsupported combination: %s"
msgstr "Ð½ÐµÐ¿Ð°Ð´Ñ‚Ñ€Ñ‹Ð¼Ð»Ñ–Ð²Ð°ÐµÐ¼Ð°Ñ Ð²ÐµÑ€ÑÑ–Ñ"
-#: config/mips/mips.c:5288
+#: config/mips/mips.c:4768
+msgid "-g is only supported using GNU as,"
+msgstr ""
+
+#: config/mips/mips.c:4770
+msgid "-g is only supported using GNU as with -mabi=32,"
+msgstr ""
+
+#: config/mips/mips.c:4771 config/pa/pa.c:353
+msgid "-g option disabled"
+msgstr ""
+
+#: config/mips/mips.c:4799
msgid "generation of Branch Likely instructions enabled, but not supported by architecture"
msgstr ""
-#: config/mips/mips.c:5299
+#: config/mips/mips.c:4816
msgid "-G is incompatible with PIC code which is the default"
msgstr ""
-#: config/mips/mips.c:5315
+#: config/mips/mips.c:4844
msgid "-membedded-pic and -mabicalls are incompatible"
msgstr ""
-#: config/mips/mips.c:5318
+#: config/mips/mips.c:4847
msgid "-G and -membedded-pic are incompatible"
msgstr ""
-#: config/mips/mips.c:5369
-#, fuzzy, c-format
-msgid "invalid option `entry%s'"
-msgstr "ÐерÑчаіÑны выбар \"%s\""
+#: config/mips/mips.c:4879
+msgid "non-PIC n64 with explicit relocations"
+msgstr ""
-#: config/mips/mips.c:5372
-msgid "-mentry is only meaningful with -mips-16"
+#: config/mips/mips.c:5267
+msgid "mips_debugger_offset called with non stack/frame/arg pointer"
msgstr ""
-#: config/mips/mips.c:5781
+#: config/mips/mips.c:5394
#, c-format
msgid "internal error: %%) found without a %%( in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5795
+#: config/mips/mips.c:5408
#, c-format
msgid "internal error: %%] found without a %%[ in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5808
+#: config/mips/mips.c:5421
#, c-format
msgid "internal error: %%> found without a %%< in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5821
+#: config/mips/mips.c:5434
#, c-format
msgid "internal error: %%} found without a %%{ in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5835
+#: config/mips/mips.c:5448
#, c-format
msgid "PRINT_OPERAND: unknown punctuation '%c'"
msgstr ""
-#: config/mips/mips.c:5844 config/xtensa/xtensa.c:1939
-msgid "PRINT_OPERAND null pointer"
-msgstr ""
-
-#: config/mips/mips.c:5975
+#: config/mips/mips.c:5477
#, c-format
-msgid "invalid use of %%d, %%x, or %%X"
+msgid "PRINT_OPERAND, invalid insn for %%C"
msgstr ""
-#: config/mips/mips.c:6013 config/xtensa/xtensa.c:2033
-msgid "PRINT_OPERAND_ADDRESS, null pointer"
+#: config/mips/mips.c:5494
+#, c-format
+msgid "PRINT_OPERAND, invalid insn for %%N"
msgstr ""
-#: config/mips/mips.c:6242
-msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
+#: config/mips/mips.c:5503
+#, c-format
+msgid "PRINT_OPERAND, invalid insn for %%F"
msgstr ""
-#: config/mips/mips.c:6552
-#, fuzzy
-msgid "can't rewind temp file"
-msgstr "немагчыма Ñтварыць чаÑовы файл"
-
-#: config/mips/mips.c:6556
-#, fuzzy
-msgid "can't write to output file"
-msgstr "не магу запіÑаць Ñž %s"
-
-#: config/mips/mips.c:6559
-#, fuzzy
-msgid "can't read from temp file"
-msgstr "не магу прачытаць з %s"
-
-#: config/mips/mips.c:6562
-#, fuzzy
-msgid "can't close temp file"
-msgstr "немагчыма зачыніць уваходзÑчы файл %s"
-
-#: config/mips/mips.c:7003
+#: config/mips/mips.c:5512
#, c-format
-msgid "gp_offset (%ld) or end_offset (%ld) is less than zero"
+msgid "PRINT_OPERAND, invalid insn for %%W"
msgstr ""
-#: config/mips/mips.c:7112
-#, c-format
-msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
+#: config/mips/mips.c:5618
+msgid "PRINT_OPERAND, invalid operand for relocation"
msgstr ""
-#: config/mips/mips.c:9335
+#: config/mips/mips.c:8252
#, c-format
msgid "can not handle inconsistent calls to `%s'"
msgstr ""
-#: config/mips/mips.c:10467
+#: config/mips/mips.c:9258
msgid "the cpu name must be lower case"
msgstr ""
-#: config/mips/mips.c:10489
+#: config/mips/mips.c:9280
#, c-format
msgid "bad value (%s) for %s"
msgstr ""
+#: config/mips/mips.c:9549
+#, fuzzy, c-format
+msgid "can't rewind temp file: %m"
+msgstr "немагчыма Ñтварыць чаÑовы файл"
+
+#: config/mips/mips.c:9553
+#, fuzzy, c-format
+msgid "can't write to output file: %m"
+msgstr "не магу запіÑаць Ñž %s"
+
+#: config/mips/mips.c:9556
+#, fuzzy, c-format
+msgid "can't read from temp file: %m"
+msgstr "не магу прачытаць з %s"
+
+#: config/mips/mips.c:9559
+#, fuzzy, c-format
+msgid "can't close temp file: %m"
+msgstr "немагчыма зачыніць уваходзÑчы файл %s"
+
+#: config/mips/linux64.h:39
+msgid "Same as -mabi=32, just trickier"
+msgstr ""
+
#. Target CPU builtins.
#. We do this here because __mips is defined below and so we can't use builtin_define_std.
#. Treat _R3000 and _R4000 like register-size defines, which is how they've historically been used.
#. Macros dependent on the C dialect.
-#. Bizzare, but needed at least for Irix.
+#. Bizarre, but needed at least for Irix.
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:528 config/mn10300/mn10300.h:64
-msgid "No default crt0.o"
-msgstr ""
-
-#: config/mips/mips.h:530
+#: config/mips/mips.h:501
msgid "Use 64-bit int type"
msgstr ""
-#: config/mips/mips.h:532
+#: config/mips/mips.h:503
msgid "Use 64-bit long type"
msgstr ""
-#: config/mips/mips.h:534
+#: config/mips/mips.h:505
msgid "Use 32-bit long type"
msgstr ""
-#: config/mips/mips.h:536
+#: config/mips/mips.h:507
msgid "Optimize lui/addiu address loads"
msgstr ""
-#: config/mips/mips.h:538
+#: config/mips/mips.h:509
msgid "Don't optimize lui/addiu address loads"
msgstr ""
-#: config/mips/mips.h:540
+#: config/mips/mips.h:511
msgid "Use MIPS as"
msgstr ""
-#: config/mips/mips.h:542
+#: config/mips/mips.h:513
msgid "Use GNU as"
msgstr "ВыкарыÑтоўваць GNU Ñк"
-#: config/mips/mips.h:544
+#: config/mips/mips.h:515
msgid "Use symbolic register names"
msgstr "Ужываць ÑÑ–Ð¼Ð²Ð°Ð»Ñ–Ñ‡Ð½Ñ‹Ñ Ð½Ð°Ð·Ð²Ñ‹ Ñ€ÑгіÑтраў"
-#: config/mips/mips.h:546
+#: config/mips/mips.h:517
msgid "Don't use symbolic register names"
msgstr "Ðе ўжываць ÑÑ–Ð¼Ð²Ð°Ð»Ñ–Ñ‡Ð½Ñ‹Ñ Ð½Ð°Ð·Ð²Ð° Ñ€ÑгіÑтраў"
-#: config/mips/mips.h:548 config/mips/mips.h:550
-msgid "Use GP relative sdata/sbss sections"
+#: config/mips/mips.h:519 config/mips/mips.h:521
+msgid "Use GP relative sdata/sbss sections (now ignored)"
msgstr ""
-#: config/mips/mips.h:552 config/mips/mips.h:554
-msgid "Don't use GP relative sdata/sbss sections"
+#: config/mips/mips.h:523 config/mips/mips.h:525
+msgid "Don't use GP relative sdata/sbss sections (now ignored)"
msgstr ""
-#: config/mips/mips.h:556
-msgid "Output compiler statistics"
+#: config/mips/mips.h:527
+#, fuzzy
+msgid "Output compiler statistics (now ignored)"
msgstr "ВывеÑці ÑтатыÑтыку капілÑтара"
-#: config/mips/mips.h:558
+#: config/mips/mips.h:529
msgid "Don't output compiler statistics"
msgstr "Ðе выводзіць ÑтатыÑтыку кампілÑтара"
-#: config/mips/mips.h:560
+#: config/mips/mips.h:531
msgid "Don't optimize block moves"
msgstr ""
-#: config/mips/mips.h:562
+#: config/mips/mips.h:533
msgid "Optimize block moves"
msgstr ""
-#: config/mips/mips.h:564
+#: config/mips/mips.h:535
msgid "Use mips-tfile asm postpass"
msgstr ""
-#: config/mips/mips.h:566
+#: config/mips/mips.h:537
msgid "Don't use mips-tfile asm postpass"
msgstr ""
@@ -11659,271 +10979,239 @@ msgstr ""
#. where VALUE is the bits to set or minus the bits to clear and DOC
#. is the documentation for --help (NULL if intentionally undocumented).
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:570 config/pdp11/pdp11.h:56
+#: config/mips/mips.h:541 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:314
msgid "Use hardware floating point"
msgstr "ВыкарыÑтоўваць апаратную \"плаваючую кропку\""
-#: config/mips/mips.h:572
+#: config/mips/mips.h:543
msgid "Use 64-bit FP registers"
msgstr "ВыкарыÑтоўваць 64-Ð±Ñ–Ñ‚Ð½Ñ‹Ñ FP-Ñ€ÑгіÑтры"
-#: config/mips/mips.h:574
+#: config/mips/mips.h:545
msgid "Use 32-bit FP registers"
msgstr "ВыкарыÑтоўваць 32-Ð±Ñ–Ñ‚Ð½Ñ‹Ñ FP-Ñ€ÑгіÑтры"
-#: config/mips/mips.h:576
+#: config/mips/mips.h:547
msgid "Use 64-bit general registers"
msgstr "ВыкарыÑтоўваць 64-Ð±Ñ–Ñ‚Ð½Ñ‹Ñ Ð³Ð°Ð»Ð¾ÑžÐ½Ñ‹Ñ Ñ€ÑгіÑтры"
-#: config/mips/mips.h:578
+#: config/mips/mips.h:549
msgid "Use 32-bit general registers"
msgstr "ВыкарыÑтоўваць 32-Ð±Ñ–Ñ‚Ð½Ñ‹Ñ Ð³Ð°Ð»Ð¾ÑžÐ½Ñ‹Ñ Ñ€ÑгіÑтры"
-#: config/mips/mips.h:580
+#: config/mips/mips.h:551
msgid "Use Irix PIC"
msgstr "ВыкарыÑтоўваць Irix PIC"
-#: config/mips/mips.h:582
+#: config/mips/mips.h:553
msgid "Don't use Irix PIC"
msgstr "Ðе выкарыÑтоўваць Irix PIC"
-#: config/mips/mips.h:584
+#: config/mips/mips.h:555
msgid "Use indirect calls"
msgstr ""
-#: config/mips/mips.h:586
+#: config/mips/mips.h:557
msgid "Don't use indirect calls"
msgstr ""
-#: config/mips/mips.h:588
+#: config/mips/mips.h:559
msgid "Use embedded PIC"
msgstr ""
-#: config/mips/mips.h:590
+#: config/mips/mips.h:561
msgid "Don't use embedded PIC"
msgstr ""
-#: config/mips/mips.h:592
-msgid "Use ROM instead of RAM"
-msgstr ""
-
-#: config/mips/mips.h:594
-msgid "Don't use ROM instead of RAM"
-msgstr ""
-
-#: config/mips/mips.h:596
-msgid "Put uninitialized constants in ROM (needs -membedded-data)"
-msgstr ""
-
-#: config/mips/mips.h:598
-msgid "Don't put uninitialized constants in ROM"
-msgstr ""
-
-#. Macro to define tables used to set the flags.
-#: config/mips/mips.h:600 config/xtensa/xtensa.h:110
+#: config/mips/mips.h:571
msgid "Use big-endian byte order"
msgstr ""
-#: config/mips/mips.h:602 config/xtensa/xtensa.h:112
+#: config/mips/mips.h:573
msgid "Use little-endian byte order"
msgstr ""
-#: config/mips/mips.h:604
+#: config/mips/mips.h:575
msgid "Use single (32-bit) FP only"
msgstr ""
-#: config/mips/mips.h:606
+#: config/mips/mips.h:577
msgid "Don't use single (32-bit) FP only"
msgstr ""
-#: config/mips/mips.h:608
+#: config/mips/mips.h:579
msgid "Use multiply accumulate"
msgstr ""
-#: config/mips/mips.h:610
+#: config/mips/mips.h:581
msgid "Don't use multiply accumulate"
msgstr ""
-#: config/mips/mips.h:612 config/rs6000/rs6000.h:314
+#: config/mips/mips.h:583
msgid "Don't generate fused multiply/add instructions"
msgstr ""
-#: config/mips/mips.h:614 config/rs6000/rs6000.h:312
+#: config/mips/mips.h:585 config/rs6000/rs6000.h:330
msgid "Generate fused multiply/add instructions"
msgstr ""
-#: config/mips/mips.h:616
+#: config/mips/mips.h:587
msgid "Work around early 4300 hardware bug"
msgstr ""
-#: config/mips/mips.h:618
+#: config/mips/mips.h:589
msgid "Don't work around early 4300 hardware bug"
msgstr ""
-#: config/mips/mips.h:620
-msgid "Trap on integer divide by zero"
+#: config/mips/mips.h:591
+msgid "Work around errata for early SB-1 revision 2 cores"
msgstr ""
-#: config/mips/mips.h:622
-msgid "Don't trap on integer divide by zero"
+#: config/mips/mips.h:593
+msgid "Don't work around errata for early SB-1 revision 2 cores"
msgstr ""
-#: config/mips/mips.h:624
-msgid "Trap on integer divide overflow"
+#: config/mips/mips.h:595
+msgid "Trap on integer divide by zero"
msgstr ""
-#: config/mips/mips.h:626
-msgid "Don't trap on integer divide overflow"
+#: config/mips/mips.h:597
+msgid "Don't trap on integer divide by zero"
msgstr ""
-#: config/mips/mips.h:628
+#: config/mips/mips.h:599
msgid "Use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:630
+#: config/mips/mips.h:601
msgid "Don't use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:744 config/pa/pa.h:310
-msgid "Specify CPU for scheduling purposes"
+#: config/mips/mips.h:603
+msgid "Use NewABI-style %reloc() assembly operators"
msgstr ""
-#: config/mips/mips.h:746
-msgid "Specify CPU for code generation purposes"
+#: config/mips/mips.h:605
+msgid "Use assembler macros instead of relocation operators"
msgstr ""
-#: config/mips/mips.h:748
-msgid "Specify an ABI"
-msgstr ""
+#: config/mips/mips.h:607
+#, fuzzy
+msgid "Generate mips16 code"
+msgstr "Стварыць код Ð´Ð»Ñ DLL"
-#: config/mips/mips.h:750
-msgid "Specify a Standard MIPS ISA"
-msgstr ""
+#: config/mips/mips.h:609
+#, fuzzy
+msgid "Generate normal-mode code"
+msgstr "Генерыраваць код Ð´Ð»Ñ GNU ld"
-#: config/mips/mips.h:752
-msgid "Use mips16 entry/exit psuedo ops"
+#: config/mips/mips.h:611
+msgid "Lift restrictions on GOT size"
msgstr ""
-#: config/mips/mips.h:754
-msgid "Don't use MIPS16 instructions"
+#: config/mips/mips.h:613
+msgid "Do not lift restrictions on GOT size"
msgstr ""
-#: config/mips/mips.h:756
-msgid "Don't call any cache flush functions"
+#: config/mips/mips.h:735
+msgid "Specify an ABI"
msgstr ""
-#: config/mips/mips.h:758
-msgid "Specify cache flush function"
+#: config/mips/mips.h:737
+msgid "Specify a Standard MIPS ISA"
msgstr ""
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/mips/mips.h:2900
+#: config/mips/mips.h:2403
msgid "mips16 function profiling"
msgstr ""
-#: config/mmix/mmix.c:189
+#: config/mmix/mmix.c:207
#, fuzzy, c-format
msgid "-f%s not supported: ignored"
msgstr "-pipe не падтрымліваецца"
-#: config/mmix/mmix.c:644
+#: config/mmix/mmix.c:633
#, c-format
msgid "too large function value type, needs %d registers, have only %d registers for this"
msgstr ""
-#: config/mmix/mmix.c:826
+#: config/mmix/mmix.c:803
msgid "function_profiler support for MMIX"
msgstr ""
-#: config/mmix/mmix.c:848
+#: config/mmix/mmix.c:823
msgid "MMIX Internal: Last named vararg would not fit in a register"
msgstr ""
-#: config/mmix/mmix.c:1639 config/mmix/mmix.c:1769
+#: config/mmix/mmix.c:1538 config/mmix/mmix.c:1668
msgid "MMIX Internal: Expected a CONST_INT, not this"
msgstr ""
-#: config/mmix/mmix.c:1647 config/mmix/mmix.c:1671 config/mmix/mmix.c:1787
+#: config/mmix/mmix.c:1546 config/mmix/mmix.c:1570 config/mmix/mmix.c:1686
#, c-format
msgid "MMIX Internal: Bad register: %d"
msgstr ""
-#: config/mmix/mmix.c:1718
+#: config/mmix/mmix.c:1617
msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
msgstr ""
-#: config/mmix/mmix.c:1737
+#: config/mmix/mmix.c:1636
msgid "MMIX Internal: Expected a register, not this"
msgstr ""
-#: config/mmix/mmix.c:1747
+#: config/mmix/mmix.c:1646
msgid "MMIX Internal: Expected a constant, not this"
msgstr ""
#. Presumably there's a missing case above if we get here.
-#: config/mmix/mmix.c:1779
+#: config/mmix/mmix.c:1678
#, c-format
msgid "MMIX Internal: Missing `%c' case in mmix_print_operand"
msgstr ""
#. We need the original here.
-#: config/mmix/mmix.c:1831
+#: config/mmix/mmix.c:1730
msgid "MMIX Internal: Cannot decode this operand"
msgstr ""
-#: config/mmix/mmix.c:1891
+#: config/mmix/mmix.c:1787
msgid "MMIX Internal: This is not a recognized address"
msgstr ""
-#: config/mmix/mmix.c:2082
+#: config/mmix/mmix.c:1964
#, c-format
msgid "stack frame not a multiple of 8 bytes: %d"
msgstr ""
-#: config/mmix/mmix.c:2321
+#: config/mmix/mmix.c:2203
#, c-format
msgid "stack frame not a multiple of octabyte: %d"
msgstr ""
-#: config/mmix/mmix.c:2818 config/mmix/mmix.c:2887
+#: config/mmix/mmix.c:2677 config/mmix/mmix.c:2741
#, c-format
msgid "MMIX Internal: %s is not a shiftable int"
msgstr ""
-#: config/mmix/mmix.c:3006
+#: config/mmix/mmix.c:2857
msgid "MMIX Internal: Trying to output invalidly reversed condition:"
msgstr ""
-#: config/mmix/mmix.c:3013
+#: config/mmix/mmix.c:2864
msgid "MMIX Internal: What's the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:3017
+#: config/mmix/mmix.c:2868
msgid "MMIX Internal: What is the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:3088
+#: config/mmix/mmix.c:2938
msgid "MMIX Internal: This is not a constant:"
msgstr ""
-#. For these target macros, there is no generic documentation here. You
-#. should read `Using and Porting GCC' for that. Only comments specific
-#. to the MMIX target are here.
-#.
-#. There are however references to the specific texinfo node (comments
-#. with "Node:"), so there should be little or nothing amiss. Probably
-#. the opposite, since we don't have to care about old littering and
-#. soon outdated generic comments.
-#. Node: Driver
-#. User symbols are in the same name-space as built-in symbols, but we
-#. don't need the built-in symbols, so remove those and instead apply
-#. stricter operand checking. Don't warn when expanding insns.
-#. Pass on -mset-program-start=N and -mset-data-start=M to the linker.
-#. Provide default program start 0x100 unless -mno-set-program-start.
-#. Don't do this if linking relocatably, with -r. For a final link,
-#. produce mmo, unless ELF is requested or when linking relocatably.
-#. Put unused option values here.
#: config/mmix/mmix.h:132
msgid "Set start-address of the program"
msgstr ""
@@ -11994,23 +11282,28 @@ msgstr ""
msgid "Do not generate a single exit point for each function"
msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
-#: config/mn10300/mn10300.h:59
-msgid "Work around hardware multiply bug"
-msgstr ""
-
-#: config/mn10300/mn10300.h:60
-msgid "Do not work around hardware multiply bug"
-msgstr ""
-
-#: config/mn10300/mn10300.h:61
+#: config/mn10300/linux.h:60 config/mn10300/mn10300.h:71
msgid "Target the AM33 processor"
msgstr "ÐœÑта - AM33 працÑÑар"
-#: config/mn10300/mn10300.h:65
+#: config/mn10300/linux.h:61 config/mn10300/mn10300.h:75
+#, fuzzy
+msgid "Target the AM33/2.0 processor"
+msgstr "ÐœÑта - AM33 працÑÑар"
+
+#: config/mn10300/linux.h:62 config/mn10300/mn10300.h:78
msgid "Enable linker relaxations"
msgstr ""
-#: config/ns32k/ns32k.h:142 config/s390/s390.h:69
+#: config/mn10300/mn10300.h:69
+msgid "Work around hardware multiply bug"
+msgstr ""
+
+#: config/mn10300/mn10300.h:70
+msgid "Do not work around hardware multiply bug"
+msgstr ""
+
+#: config/ns32k/ns32k.h:142 config/s390/s390.h:125
msgid "Don't use hardware fp"
msgstr "Ðе выкарыÑтоўваць апаратную fp"
@@ -12083,44 +11376,38 @@ msgstr ""
msgid "No \"Small register classes\" kludge"
msgstr ""
-#: config/pa/pa.c:261
+#: config/pa/pa.c:304
#, c-format
msgid ""
"unknown -mschedule= option (%s).\n"
"Valid options are 700, 7100, 7100LC, 7200, 7300, and 8000\n"
msgstr ""
-#: config/pa/pa.c:286
+#: config/pa/pa.c:329
#, c-format
msgid ""
"unknown -march= option (%s).\n"
"Valid options are 1.0, 1.1, and 2.0\n"
msgstr ""
-#: config/pa/pa.c:299
+#: config/pa/pa.c:342
msgid "PIC code generation is not supported in the portable runtime model\n"
msgstr ""
-#: config/pa/pa.c:304
+#: config/pa/pa.c:347
msgid "PIC code generation is not compatible with fast indirect calls\n"
msgstr ""
-#: config/pa/pa.c:309
+#: config/pa/pa.c:352
msgid "-g is only supported when using GAS on this processor,"
msgstr ""
-#: config/pa/pa.c:310
-msgid "-g option disabled"
-msgstr ""
-
-#: config/pa/pa-hiux.h:75 config/pa/pa-hpux.h:87 config/pa/pa-hpux7.h:81
-#: config/pa/pa64-hpux.h:25
+#: config/pa/pa-hpux.h:91 config/pa/pa64-hpux.h:25
#, fuzzy
msgid "Generate cpp defines for server IO"
msgstr "Генерыраваць код Ð´Ð»Ñ Ð´Ð°Ð´Ð·ÐµÐ½Ð°Ð³Ð° ЦП"
-#: config/pa/pa-hiux.h:76 config/pa/pa-hpux.h:88 config/pa/pa-hpux7.h:82
-#: config/pa/pa64-hpux.h:27
+#: config/pa/pa-hpux.h:92 config/pa/pa64-hpux.h:27
#, fuzzy
msgid "Generate cpp defines for workstation IO"
msgstr "Стварыць код Ð´Ð»Ñ DLL"
@@ -12256,50 +11543,50 @@ msgstr ""
msgid "Assume code will be linked by HP ld"
msgstr ""
-#: config/pdp11/pdp11.h:57
+#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:316
msgid "Do not use hardware floating point"
msgstr ""
#. return float result in ac0
-#: config/pdp11/pdp11.h:59
+#: config/pdp11/pdp11.h:64
msgid "Return floating point results in ac0"
msgstr ""
-#: config/pdp11/pdp11.h:60
+#: config/pdp11/pdp11.h:65
msgid "Return floating point results in memory"
msgstr ""
#. is 11/40
-#: config/pdp11/pdp11.h:62
+#: config/pdp11/pdp11.h:67
msgid "Generate code for an 11/40"
msgstr ""
#. is 11/45
-#: config/pdp11/pdp11.h:65
+#: config/pdp11/pdp11.h:70
msgid "Generate code for an 11/45"
msgstr ""
#. is 11/10
-#: config/pdp11/pdp11.h:68
+#: config/pdp11/pdp11.h:73
msgid "Generate code for an 11/10"
msgstr ""
#. use movstrhi for bcopy
#. use 32 bit for int
-#: config/pdp11/pdp11.h:73 config/pdp11/pdp11.h:74
+#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
msgid "Use 32 bit int"
msgstr "ВыкарыÑтоўваць 32-Ñ… бітны int"
-#: config/pdp11/pdp11.h:75 config/pdp11/pdp11.h:76
+#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
msgid "Use 16 bit int"
msgstr "ВыкарыÑтоўваць 16-ці бітны int"
#. use 32 bit for float
-#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
+#: config/pdp11/pdp11.h:83 config/pdp11/pdp11.h:84
msgid "Use 32 bit float"
msgstr "ВыкарыÑтоўваць 32-Ñ… бітны float"
-#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
+#: config/pdp11/pdp11.h:85 config/pdp11/pdp11.h:86
msgid "Use 64 bit float"
msgstr "ВыкарыÑтоўваць 64-Ñ… бітны float"
@@ -12307,69 +11594,53 @@ msgstr "ВыкарыÑтоўваць 64-Ñ… бітны float"
#. is branching expensive - on a PDP, it's actually really cheap
#. this is just to play around and check what code gcc generates
#. split instruction and data memory?
-#: config/pdp11/pdp11.h:90
+#: config/pdp11/pdp11.h:95
msgid "Target has split I&D"
msgstr ""
-#: config/pdp11/pdp11.h:91
+#: config/pdp11/pdp11.h:96
msgid "Target does not have split I&D"
msgstr ""
#. UNIX assembler syntax?
-#: config/pdp11/pdp11.h:93
+#: config/pdp11/pdp11.h:98
msgid "Use UNIX assembler syntax"
msgstr "ВыкарыÑтоўваць UNIX-ÑÑ–Ð½Ñ‚Ð°ÐºÑ Ð´Ð»Ñ Ð°ÑÑмблера"
-#: config/pdp11/pdp11.h:94
+#: config/pdp11/pdp11.h:99
msgid "Use DEC assembler syntax"
msgstr "ВыкарыÑтоўваць DEC-ÑÑ–Ð½Ñ‚Ð°ÐºÑ Ð´Ð»Ñ Ð°ÑÑмблера"
-#: config/romp/romp.c:717 config/rs6000/rs6000.c:7755
-#, c-format
-msgid "invalid %%S value"
+#: config/rs6000/host-darwin.c:52
+msgid "Segmentation Fault (code)"
msgstr ""
-#: config/romp/romp.c:726 config/romp/romp.c:733
-#, c-format
-msgid "invalid %%b value"
+#: config/rs6000/host-darwin.c:83
+msgid "Out of stack space.\n"
msgstr ""
-#: config/romp/romp.c:773 config/romp/romp.c:784
+#: config/rs6000/host-darwin.c:104
#, c-format
-msgid "invalid %%z value"
+msgid "Try running `%s' in the shell to raise its limit.\n"
msgstr ""
-#: config/romp/romp.c:792 config/romp/romp.c:800
-#, c-format
-msgid "invalid %%Z value"
+#: config/rs6000/host-darwin.c:117
+msgid "Segmentation Fault"
msgstr ""
-#: config/romp/romp.c:807 config/romp/romp.c:816 config/romp/romp.c:823
-#: config/rs6000/rs6000.c:7584
+#: config/rs6000/host-darwin.c:131
#, c-format
-msgid "invalid %%k value"
+msgid "While setting up signal stack: %m"
msgstr ""
-#: config/romp/romp.c:908 config/romp/romp.c:951
+#: config/rs6000/host-darwin.c:137
#, c-format
-msgid "invalid %%j value"
+msgid "While setting up signal handler: %m"
msgstr ""
-#. Perform any needed actions needed for a function that is receiving a
-#. variable number of arguments.
-#.
-#. CUM is as above.
-#.
-#. MODE and TYPE are the mode and type of the current parameter.
-#.
-#. PRETEND_SIZE is a variable that should be set to the amount of stack
-#. that must be pushed by the prolog to pretend that our caller pushed
-#. it.
-#.
-#. Normally, this macro will push all remaining incoming registers on the
-#. stack and set PRETEND_SIZE to the length of the registers pushed.
-#: config/romp/romp.h:648
-msgid "can't have varargs with -mfp-arg-in-fp-regs"
+#: config/rs6000/host-darwin.c:184
+#, c-format
+msgid "couldn't unmap pch_address_space: %m\n"
msgstr ""
#. Handle the machine specific pragma longcall. Its syntax is
@@ -12381,203 +11652,251 @@ msgstr ""
#. rs6000_default_long_calls is set to the value of TOGGLE, changing
#. whether or not new function declarations receive a longcall
#. attribute by default.
-#: config/rs6000/rs6000-c.c:44
+#: config/rs6000/rs6000-c.c:46
msgid "ignoring malformed #pragma longcall"
msgstr ""
-#: config/rs6000/rs6000-c.c:58
+#: config/rs6000/rs6000-c.c:59
#, fuzzy
msgid "missing open paren"
msgstr "Прапушчана назва"
-#: config/rs6000/rs6000-c.c:60
+#: config/rs6000/rs6000-c.c:61
#, fuzzy
msgid "missing number"
msgstr "Прапушчана назва"
-#: config/rs6000/rs6000-c.c:62
+#: config/rs6000/rs6000-c.c:63
#, fuzzy
msgid "missing close paren"
msgstr "Прапушчана назва клаÑа"
-#: config/rs6000/rs6000-c.c:65
+#: config/rs6000/rs6000-c.c:66
msgid "number must be 0 or 1"
msgstr ""
-#: config/rs6000/rs6000-c.c:68
+#: config/rs6000/rs6000-c.c:69
msgid "junk at end of #pragma longcall"
msgstr ""
-#: config/rs6000/rs6000.c:592
+#: config/rs6000/rs6000.c:793
msgid "-mmultiple is not supported on little endian systems"
msgstr ""
-#: config/rs6000/rs6000.c:599
+#: config/rs6000/rs6000.c:800
msgid "-mstring is not supported on little endian systems"
msgstr ""
-#: config/rs6000/rs6000.c:623
+#: config/rs6000/rs6000.c:814
#, c-format
msgid "unknown -mdebug-%s switch"
msgstr ""
-#: config/rs6000/rs6000.c:635
+#: config/rs6000/rs6000.c:826
#, c-format
msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'"
msgstr ""
-#: config/rs6000/rs6000.c:646
+#: config/rs6000/rs6000.c:837
#, c-format
msgid "Unknown switch -mlong-double-%s"
msgstr ""
-#: config/rs6000/rs6000.c:738
+#: config/rs6000/rs6000.c:1008
#, fuzzy, c-format
-msgid "unknown -misel= option specified: '%s'"
+msgid "unknown -m%s= option specified: '%s'"
msgstr "невÑдомы Ñ€Ñжым машыны \"%s\""
-#: config/rs6000/rs6000.c:753
+#: config/rs6000/rs6000.c:1025
+#, c-format
+msgid "not configured for ABI: '%s'"
+msgstr ""
+
+#: config/rs6000/rs6000.c:1031
#, fuzzy, c-format
-msgid "unknown -mvrsave= option specified: '%s'"
+msgid "unknown ABI specified: '%s'"
msgstr "невÑдомы Ñ€Ñжым машыны \"%s\""
-#: config/rs6000/rs6000.c:772
+#: config/rs6000/rs6000.c:1045
#, fuzzy, c-format
-msgid "unknown ABI specified: '%s'"
+msgid "unknown -malign-XXXXX option specified: '%s'"
msgstr "невÑдомы Ñ€Ñжым машыны \"%s\""
-#: config/rs6000/rs6000.c:4206
+#: config/rs6000/rs6000.c:5358
#, fuzzy
msgid "argument 1 must be a 5-bit signed literal"
msgstr "першым аргументам \"%s\" павінен быць \"int\""
-#: config/rs6000/rs6000.c:4313 config/rs6000/rs6000.c:4903
+#: config/rs6000/rs6000.c:5460 config/rs6000/rs6000.c:6083
#, fuzzy
msgid "argument 2 must be a 5-bit unsigned literal"
msgstr "першым аргументам \"%s\" павінен быць \"int\""
-#: config/rs6000/rs6000.c:4356
+#: config/rs6000/rs6000.c:5500
#, fuzzy
msgid "argument 1 of __builtin_altivec_predicate must be a constant"
msgstr "аргумент `__builtin_args_info' павінен быць канÑтантай"
-#: config/rs6000/rs6000.c:4410
+#: config/rs6000/rs6000.c:5554
#, fuzzy
msgid "argument 1 of __builtin_altivec_predicate is out of range"
msgstr "аргумент `__builtin_args_info' выйшаў за межы"
-#: config/rs6000/rs6000.c:4489
+#: config/rs6000/rs6000.c:5682
#, fuzzy
msgid "argument 3 must be a 4-bit unsigned literal"
msgstr "першым аргументам \"%s\" павінен быць \"int\""
-#: config/rs6000/rs6000.c:4666
+#: config/rs6000/rs6000.c:5852
#, fuzzy, c-format
msgid "argument to `%s' must be a 2-bit unsigned literal"
msgstr "першым аргументам \"%s\" павінен быць \"int\""
-#: config/rs6000/rs6000.c:4782
+#: config/rs6000/rs6000.c:5965
#, fuzzy
msgid "argument to dss must be a 2-bit unsigned literal"
msgstr "першым аргументам \"%s\" павінен быць \"int\""
-#: config/rs6000/rs6000.c:5013
+#: config/rs6000/rs6000.c:6203
#, fuzzy
msgid "argument 1 of __builtin_spe_predicate must be a constant"
msgstr "аргумент `__builtin_args_info' павінен быць канÑтантай"
-#: config/rs6000/rs6000.c:5086
+#: config/rs6000/rs6000.c:6276
#, fuzzy
msgid "argument 1 of __builtin_spe_predicate is out of range"
msgstr "аргумент `__builtin_args_info' выйшаў за межы"
-#: config/rs6000/rs6000.c:7511
+#: config/rs6000/rs6000.c:8711
#, c-format
msgid "invalid %%f value"
msgstr ""
-#: config/rs6000/rs6000.c:7520
+#: config/rs6000/rs6000.c:8720
#, c-format
msgid "invalid %%F value"
msgstr ""
-#: config/rs6000/rs6000.c:7529
+#: config/rs6000/rs6000.c:8729
#, c-format
msgid "invalid %%G value"
msgstr ""
-#: config/rs6000/rs6000.c:7564
+#: config/rs6000/rs6000.c:8764
#, c-format
msgid "invalid %%j code"
msgstr ""
-#: config/rs6000/rs6000.c:7574
+#: config/rs6000/rs6000.c:8774
#, c-format
msgid "invalid %%J code"
msgstr ""
-#: config/rs6000/rs6000.c:7604
+#: config/rs6000/rs6000.c:8784
+#, c-format
+msgid "invalid %%k value"
+msgstr ""
+
+#: config/rs6000/rs6000.c:8804 config/xtensa/xtensa.c:1985
#, c-format
msgid "invalid %%K value"
msgstr ""
-#: config/rs6000/rs6000.c:7671
+#: config/rs6000/rs6000.c:8871
#, c-format
msgid "invalid %%O value"
msgstr "нерÑчаіÑнае значÑньне %%O"
-#: config/rs6000/rs6000.c:7793
+#: config/rs6000/rs6000.c:8918
+#, c-format
+msgid "invalid %%q value"
+msgstr ""
+
+#: config/rs6000/rs6000.c:8962
+#, c-format
+msgid "invalid %%S value"
+msgstr ""
+
+#: config/rs6000/rs6000.c:9004
#, c-format
msgid "invalid %%T value"
msgstr ""
-#: config/rs6000/rs6000.c:7803
+#: config/rs6000/rs6000.c:9014
#, c-format
msgid "invalid %%u value"
msgstr ""
-#: config/rs6000/rs6000.c:7812
+#: config/rs6000/rs6000.c:9023 config/xtensa/xtensa.c:1955
#, c-format
msgid "invalid %%v value"
msgstr ""
-#: config/rs6000/rs6000.c:12242
+#: config/rs6000/rs6000.c:13513
msgid "no profiling of 64-bit code for this ABI"
msgstr ""
-#: config/rs6000/aix.h:160 config/rs6000/beos.h:32
+#: config/rs6000/aix.h:184 config/rs6000/beos.h:32
msgid "Always pass floating-point arguments in memory"
msgstr ""
-#: config/rs6000/aix.h:162 config/rs6000/beos.h:34
+#: config/rs6000/aix.h:186 config/rs6000/beos.h:34
msgid "Don't always pass floating-point arguments in memory"
msgstr ""
-#: config/rs6000/aix41.h:28 config/rs6000/aix43.h:32 config/rs6000/aix51.h:32
-#: config/rs6000/aix52.h:32
+#: config/rs6000/aix41.h:27 config/rs6000/aix43.h:31 config/rs6000/aix51.h:31
+#: config/rs6000/aix52.h:31
msgid "Support message passing with the Parallel Environment"
msgstr ""
-#: config/rs6000/aix43.h:28 config/rs6000/aix51.h:28 config/rs6000/aix52.h:28
+#: config/rs6000/aix43.h:27 config/rs6000/aix51.h:27 config/rs6000/aix52.h:27
msgid "Compile for 64-bit pointers"
msgstr ""
-#: config/rs6000/aix43.h:30 config/rs6000/aix51.h:30 config/rs6000/aix52.h:30
+#: config/rs6000/aix43.h:29 config/rs6000/aix51.h:29 config/rs6000/aix52.h:29
msgid "Compile for 32-bit pointers"
msgstr ""
-#: config/rs6000/aix43.h:49 config/rs6000/aix51.h:49 config/rs6000/aix52.h:49
+#: config/rs6000/aix43.h:48 config/rs6000/aix51.h:48 config/rs6000/aix52.h:48
msgid "-maix64 and POWER architecture are incompatible"
msgstr ""
-#: config/rs6000/aix43.h:54 config/rs6000/aix51.h:54 config/rs6000/aix52.h:54
+#: config/rs6000/aix43.h:53 config/rs6000/aix51.h:53 config/rs6000/aix52.h:53
msgid "-maix64 requires PowerPC64 architecture remain enabled"
msgstr ""
-#: config/rs6000/aix43.h:58 config/rs6000/aix51.h:58 config/rs6000/aix52.h:58
+#: config/rs6000/aix43.h:57 config/rs6000/aix51.h:57 config/rs6000/aix52.h:57
msgid "-maix64 required: 64-bit computation with 32-bit addressing not yet supported"
msgstr ""
+#: config/rs6000/darwin.h:64
+msgid "Generate code suitable for executables (NOT shared libs)"
+msgstr ""
+
+#. The Darwin ABI always includes AltiVec, can't be (validly) turned
+#. off.
+#: config/rs6000/darwin.h:80
+msgid "-mdynamic-no-pic overrides -fpic or -fPIC"
+msgstr ""
+
+#. Darwin doesn't support -fpic.
+#: config/rs6000/darwin.h:86
+#, fuzzy
+msgid "-fpic is not supported; -fPIC assumed"
+msgstr "-pipe не падтрымліваецца"
+
+#: config/rs6000/linux64.h:96
+msgid "-m64 requires a PowerPC64 cpu"
+msgstr ""
+
+#: config/rs6000/linux64.h:201
+msgid "Call mcount for profiling before a function prologue"
+msgstr ""
+
+#: config/rs6000/linux64.h:203
+msgid "Call mcount for profiling after a function prologue"
+msgstr ""
+
#. Run-time compilation parameters selecting different hardware subsets.
#.
#. Macro to define tables used to set the flags.
@@ -12585,162 +11904,205 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/rs6000/rs6000.h:240
+#: config/rs6000/rs6000.h:262
msgid "Use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:243
+#: config/rs6000/rs6000.h:265
msgid "Use POWER2 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:245
+#: config/rs6000/rs6000.h:267
msgid "Do not use POWER2 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:248
+#: config/rs6000/rs6000.h:270
msgid "Do not use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:250
+#: config/rs6000/rs6000.h:272
msgid "Use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:253
+#: config/rs6000/rs6000.h:275
msgid "Do not use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:255
+#: config/rs6000/rs6000.h:277
msgid "Use PowerPC General Purpose group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:257
-msgid "Don't use PowerPC General Purpose group optional instructions"
-msgstr ""
+#: config/rs6000/rs6000.h:279
+#, fuzzy
+msgid "Do not use PowerPC General Purpose group optional instructions"
+msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
-#: config/rs6000/rs6000.h:259
+#: config/rs6000/rs6000.h:281
msgid "Use PowerPC Graphics group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:261
-msgid "Don't use PowerPC Graphics group optional instructions"
-msgstr ""
+#: config/rs6000/rs6000.h:283
+#, fuzzy
+msgid "Do not use PowerPC Graphics group optional instructions"
+msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
-#: config/rs6000/rs6000.h:263
+#: config/rs6000/rs6000.h:285
msgid "Use PowerPC-64 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:265
-msgid "Don't use PowerPC-64 instruction set"
-msgstr ""
+#: config/rs6000/rs6000.h:287
+#, fuzzy
+msgid "Do not use PowerPC-64 instruction set"
+msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
-#: config/rs6000/rs6000.h:267
+#: config/rs6000/rs6000.h:289
msgid "Use AltiVec instructions"
msgstr ""
-#: config/rs6000/rs6000.h:269
-msgid "Don't use AltiVec instructions"
+#: config/rs6000/rs6000.h:291
+#, fuzzy
+msgid "Do not use AltiVec instructions"
msgstr "Ðе выкарыÑтоўваць інÑтрукцыі AltiVec"
-#: config/rs6000/rs6000.h:271
+#: config/rs6000/rs6000.h:293
msgid "Use new mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.h:273
+#: config/rs6000/rs6000.h:295
msgid "Use old mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.h:276
+#: config/rs6000/rs6000.h:298
msgid "Put everything in the regular TOC"
msgstr ""
-#: config/rs6000/rs6000.h:278
+#: config/rs6000/rs6000.h:300
msgid "Place floating point constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:280
-msgid "Don't place floating point constants in TOC"
+#: config/rs6000/rs6000.h:302
+msgid "Do not place floating point constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:282
+#: config/rs6000/rs6000.h:304
msgid "Place symbol+offset constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:284
-msgid "Don't place symbol+offset constants in TOC"
+#: config/rs6000/rs6000.h:306
+msgid "Do not place symbol+offset constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:290
+#: config/rs6000/rs6000.h:312
msgid "Place variable addresses in the regular TOC"
msgstr ""
-#: config/rs6000/rs6000.h:296
+#: config/rs6000/rs6000.h:318
msgid "Generate load/store multiple instructions"
msgstr ""
-#: config/rs6000/rs6000.h:298
+#: config/rs6000/rs6000.h:320
msgid "Do not generate load/store multiple instructions"
msgstr ""
-#: config/rs6000/rs6000.h:302
+#: config/rs6000/rs6000.h:322
msgid "Generate string instructions for block moves"
msgstr ""
-#: config/rs6000/rs6000.h:304
+#: config/rs6000/rs6000.h:324
msgid "Do not generate string instructions for block moves"
msgstr ""
-#: config/rs6000/rs6000.h:308
+#: config/rs6000/rs6000.h:326
msgid "Generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.h:310
+#: config/rs6000/rs6000.h:328
msgid "Do not generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.h:318
-msgid "Don't schedule the start and end of the procedure"
+#: config/rs6000/rs6000.h:332
+#, fuzzy
+msgid "Do not generate fused multiply/add instructions"
+msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
+
+#: config/rs6000/rs6000.h:336
+msgid "Do not schedule the start and end of the procedure"
msgstr ""
-#: config/rs6000/rs6000.h:324
+#: config/rs6000/rs6000.h:342
msgid "Return all structures in memory (AIX default)"
msgstr ""
-#: config/rs6000/rs6000.h:326
+#: config/rs6000/rs6000.h:344
msgid "Return small structures in registers (SVR4 default)"
msgstr ""
-#: config/rs6000/rs6000.h:391 config/sparc/sparc.h:633
+#: config/rs6000/rs6000.h:350
+#, fuzzy
+msgid "Generate single field mfcr instruction"
+msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
+
+#: config/rs6000/rs6000.h:352
+#, fuzzy
+msgid "Do not generate single field mfcr instruction"
+msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
+
+#: config/rs6000/rs6000.h:435 config/sparc/sparc.h:648
msgid "Use features of and schedule code for given CPU"
msgstr ""
-#: config/rs6000/rs6000.h:394
+#: config/rs6000/rs6000.h:438
msgid "Enable debug output"
msgstr ""
-#: config/rs6000/rs6000.h:396
+#: config/rs6000/rs6000.h:440
msgid "Select full, part, or no traceback table"
msgstr ""
-#: config/rs6000/rs6000.h:397
+#: config/rs6000/rs6000.h:441
msgid "Specify ABI to use"
msgstr ""
-#: config/rs6000/rs6000.h:399
+#: config/rs6000/rs6000.h:443
msgid "Specify size of long double (64 or 128 bits)"
msgstr ""
-#: config/rs6000/rs6000.h:401
+#: config/rs6000/rs6000.h:445
msgid "Specify yes/no if isel instructions should be generated"
msgstr ""
-#: config/rs6000/rs6000.h:403
+#: config/rs6000/rs6000.h:447
+msgid "Specify yes/no if SPE SIMD instructions should be generated"
+msgstr ""
+
+#: config/rs6000/rs6000.h:449
+msgid "Specify yes/no if using floating point in the GPRs"
+msgstr ""
+
+#: config/rs6000/rs6000.h:451
msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec"
msgstr ""
-#: config/rs6000/rs6000.h:405
+#: config/rs6000/rs6000.h:453
msgid "Avoid all range limits on call instructions"
msgstr ""
+#: config/rs6000/rs6000.h:456
+msgid "Determine which dependences between insns are considered costly"
+msgstr ""
+
+#: config/rs6000/rs6000.h:458
+msgid "Specify which post scheduling nop insertion scheme to apply"
+msgstr ""
+
+#: config/rs6000/rs6000.h:460
+msgid "Specify alignment of structure fields default/natural"
+msgstr ""
+
+#: config/rs6000/rs6000.h:462
+msgid "Specify scheduling priority for dispatch slot restricted insns"
+msgstr ""
+
#. Definitions for __builtin_return_address and __builtin_frame_address.
#. __builtin_return_address (0) should give link register (65), enable
#. this.
@@ -12753,7 +12115,7 @@ msgstr ""
#. Number of bytes into the frame return addresses can be found. See
#. rs6000_stack_info in rs6000.c for more information on how the different
#. abi's store the return address.
-#: config/rs6000/rs6000.h:1884
+#: config/rs6000/rs6000.h:1926
msgid "RETURN_ADDRESS_OFFSET not supported"
msgstr ""
@@ -12765,91 +12127,100 @@ msgstr ""
msgid "Select method for sdata handling"
msgstr ""
-#: config/rs6000/sysv4.h:103
+#: config/rs6000/sysv4.h:100
msgid "Align to the base type of the bit-field"
msgstr ""
-#: config/rs6000/sysv4.h:105
+#: config/rs6000/sysv4.h:102
msgid "Don't align to the base type of the bit-field"
msgstr ""
-#: config/rs6000/sysv4.h:107
+#: config/rs6000/sysv4.h:104
msgid "Don't assume that unaligned accesses are handled by the system"
msgstr ""
-#: config/rs6000/sysv4.h:109
+#: config/rs6000/sysv4.h:106
msgid "Assume that unaligned accesses are handled by the system"
msgstr ""
-#: config/rs6000/sysv4.h:111 config/rs6000/sysv4.h:115
+#: config/rs6000/sysv4.h:108 config/rs6000/sysv4.h:112
msgid "Produce code relocatable at runtime"
msgstr ""
-#: config/rs6000/sysv4.h:113 config/rs6000/sysv4.h:117
+#: config/rs6000/sysv4.h:110 config/rs6000/sysv4.h:114
msgid "Don't produce code relocatable at runtime"
msgstr ""
-#: config/rs6000/sysv4.h:119 config/rs6000/sysv4.h:121
+#: config/rs6000/sysv4.h:116 config/rs6000/sysv4.h:118
msgid "Produce little endian code"
msgstr ""
-#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:125
+#: config/rs6000/sysv4.h:120 config/rs6000/sysv4.h:122
msgid "Produce big endian code"
msgstr ""
-#: config/rs6000/sysv4.h:126 config/rs6000/sysv4.h:127
-#: config/rs6000/sysv4.h:128 config/rs6000/sysv4.h:129
-#: config/rs6000/sysv4.h:130 config/rs6000/sysv4.h:131
-#: config/rs6000/sysv4.h:141 config/rs6000/sysv4.h:142
-#: config/rs6000/sysv4.h:153 config/rs6000/sysv4.h:155
-#: config/rs6000/sysv4.h:157
+#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:124
+#: config/rs6000/sysv4.h:125 config/rs6000/sysv4.h:126
+#: config/rs6000/sysv4.h:127 config/rs6000/sysv4.h:128
+#: config/rs6000/sysv4.h:138 config/rs6000/sysv4.h:139
+#: config/rs6000/sysv4.h:151 config/rs6000/sysv4.h:157
msgid "no description yet"
msgstr ""
-#: config/rs6000/sysv4.h:132
+#: config/rs6000/sysv4.h:129
msgid "Use EABI"
msgstr ""
-#: config/rs6000/sysv4.h:133
+#: config/rs6000/sysv4.h:130
msgid "Don't use EABI"
msgstr "Ðе выкарыÑтоўваць EABI"
-#: config/rs6000/sysv4.h:136
+#: config/rs6000/sysv4.h:133
msgid "Do not allow bit-fields to cross word boundaries"
msgstr ""
-#: config/rs6000/sysv4.h:138
+#: config/rs6000/sysv4.h:135
msgid "Use alternate register names"
msgstr "ВыкарыÑтоўвываць альтÑÑ€Ð½Ð°Ñ‚Ñ‹ÑžÐ½Ñ‹Ñ Ð½Ð°Ð·Ð²Ñ‹ Ñ€ÑгіÑтраў"
-#: config/rs6000/sysv4.h:140
+#: config/rs6000/sysv4.h:137
msgid "Don't use alternate register names"
msgstr "Ðе выкарыÑтоўвываць альтÑÑ€Ð½Ð°Ñ‚Ñ‹ÑžÐ½Ñ‹Ñ Ð½Ð°Ð·Ð²Ñ‹ Ñ€ÑгіÑтраў"
-#: config/rs6000/sysv4.h:144
+#: config/rs6000/sysv4.h:141
msgid "Link with libsim.a, libc.a and sim-crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:146
+#: config/rs6000/sysv4.h:143
msgid "Link with libads.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:148
+#: config/rs6000/sysv4.h:145
msgid "Link with libyk.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:150
+#: config/rs6000/sysv4.h:147
msgid "Link with libmvme.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:152
+#: config/rs6000/sysv4.h:149
msgid "Set the PPC_EMB bit in the ELF flags header"
msgstr ""
-#: config/rs6000/sysv4.h:154
+#: config/rs6000/sysv4.h:150
msgid "Use the WindISS simulator"
msgstr ""
+#: config/rs6000/sysv4.h:153
+#, fuzzy
+msgid "Generate 64-bit code"
+msgstr "Стварыць код Ð´Ð»Ñ DLL"
+
+#: config/rs6000/sysv4.h:155
+#, fuzzy
+msgid "Generate 32-bit code"
+msgstr "Стварыць код Ð´Ð»Ñ DLL"
+
#. Sometimes certain combinations of command options do not make sense
#. on a particular target machine. You can define a macro
#. `OVERRIDE_OPTIONS' to take account of this. This macro, if
@@ -12873,365 +12244,433 @@ msgstr ""
msgid "-mrelocatable and -msdata=%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:255
+#: config/rs6000/sysv4.h:256
#, c-format
msgid "-f%s and -msdata=%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:264
+#: config/rs6000/sysv4.h:265
#, c-format
msgid "-msdata=%s and -mcall-%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:273
+#: config/rs6000/sysv4.h:274
msgid "-mrelocatable and -mno-minimal-toc are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:279
+#: config/rs6000/sysv4.h:280
#, c-format
msgid "-mrelocatable and -mcall-%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:286
+#: config/rs6000/sysv4.h:287
#, c-format
msgid "-fPIC and -mcall-%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:293
+#: config/rs6000/sysv4.h:294
msgid "-mcall-aixdesc must be big endian"
msgstr ""
-#: config/s390/s390.c:3063
+#: config/rs6000/sysv4.h:309
+#, fuzzy, c-format
+msgid "-m%s not supported in this configuration"
+msgstr "-pipe не падтрымліваецца"
+
+#: config/s390/s390.c:926
+#, c-format
+msgid "Unknown cpu used in -march=%s."
+msgstr ""
+
+#: config/s390/s390.c:945
+#, c-format
+msgid "Unknown cpu used in -mtune=%s."
+msgstr ""
+
+#: config/s390/s390.c:950
+#, fuzzy, c-format
+msgid "z/Architecture mode not supported on %s."
+msgstr "-pipe не падтрымліваецца"
+
+#: config/s390/s390.c:952
+msgid "64-bit ABI not supported in ESA/390 mode."
+msgstr ""
+
+#: config/s390/s390.c:3337
msgid "invalid UNSPEC as operand (1)"
msgstr ""
-#: config/s390/s390.c:3123
+#: config/s390/s390.c:3385
msgid "invalid UNSPEC as operand (2)"
msgstr ""
-#: config/s390/s390.c:3129
+#: config/s390/s390.c:3391
msgid "UNKNOWN in s390_output_symbolic_const !?"
msgstr ""
-#: config/s390/s390.c:3147
+#: config/s390/s390.c:3407
msgid "Cannot decompose address."
msgstr ""
-#: config/s390/s390.c:3308
+#: config/s390/s390.c:3578
msgid "UNKNOWN in print_operand !?"
msgstr ""
-#: config/s390/s390.c:4961
+#: config/s390/s390.c:5301
msgid "Total size of local variables exceeds architecture limit."
msgstr ""
-#: config/s390/s390.h:70
+#: config/s390/s390.h:126
msgid "Set backchain"
msgstr ""
-#: config/s390/s390.h:71
+#: config/s390/s390.h:127
msgid "Don't set backchain (faster, but debug harder"
msgstr ""
-#: config/s390/s390.h:72
+#: config/s390/s390.h:128
msgid "Use bras for executable < 64k"
msgstr ""
-#: config/s390/s390.h:73
+#: config/s390/s390.h:129
#, fuzzy
msgid "Don't use bras"
msgstr "Ðе выкарыÑтоўваць Irix PIC"
-#: config/s390/s390.h:74
+#: config/s390/s390.h:130
msgid "Additional debug prints"
msgstr ""
-#: config/s390/s390.h:75
+#: config/s390/s390.h:131
msgid "Don't print additional debug prints"
msgstr ""
-#: config/s390/s390.h:76
-msgid "64 bit mode"
+#: config/s390/s390.h:132
+msgid "64 bit ABI"
+msgstr ""
+
+#: config/s390/s390.h:133
+msgid "31 bit ABI"
+msgstr ""
+
+#: config/s390/s390.h:134
+msgid "z/Architecture"
msgstr ""
-#: config/s390/s390.h:77
-msgid "31 bit mode"
+#: config/s390/s390.h:135
+msgid "ESA/390 architecture"
msgstr ""
-#: config/s390/s390.h:78
+#: config/s390/s390.h:136
msgid "mvcle use"
msgstr ""
-#: config/s390/s390.h:79
+#: config/s390/s390.h:137
msgid "mvc&ex"
msgstr ""
-#: config/sh/sh.c:5137
+#: config/s390/s390.h:138
+msgid "enable tpf OS code"
+msgstr ""
+
+#: config/s390/s390.h:139
+msgid "disable tpf OS code"
+msgstr ""
+
+#: config/s390/s390.h:140
+#, fuzzy
+msgid "disable fused multiply/add instructions"
+msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
+
+#: config/s390/s390.h:141
+#, fuzzy
+msgid "enable fused multiply/add instructions"
+msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
+
+#: config/sh/sh.c:5841
#, fuzzy
msgid "__builtin_saveregs not supported by this subtarget"
msgstr "__buitin_saveregs не падтрымліваецца гÑтай мÑтай"
-#: config/sh/sh.c:5687
+#: config/sh/sh.c:6743
msgid "attribute interrupt_handler is not compatible with -m5-compact"
msgstr ""
#. The sp_switch attribute only has meaning for interrupt functions.
-#: config/sh/sh.c:5713 config/sh/sh.c:5752
+#. The trap_exit attribute only has meaning for interrupt functions.
+#: config/sh/sh.c:6765 config/sh/sh.c:6800
#, c-format
msgid "`%s' attribute only applies to interrupt functions"
msgstr ""
#. The argument must be a constant string.
-#: config/sh/sh.c:5720
+#: config/sh/sh.c:6772
#, c-format
msgid "`%s' attribute argument not a string constant"
msgstr ""
#. The argument must be a constant integer.
-#: config/sh/sh.c:5759
+#: config/sh/sh.c:6807
#, c-format
msgid "`%s' attribute argument not an integer constant"
msgstr ""
#. There are no delay slots on SHmedia.
#. Relaxation isn't yet supported for SHmedia
-#: config/sh/sh.h:437
+#. -fprofile-arcs needs a working libgcov . In unified tree configurations with newlib, this requires to configure with --with-newlib --with-headers. But there is no way to check here we have a working libgcov, so just assume that we have.
+#: config/sh/sh.h:478
#, fuzzy
msgid "Profiling is not supported on this target."
msgstr "__buitin_saveregs не падтрымліваецца гÑтай мÑтай"
-#: config/sparc/sparc.c:329
+#: config/sparc/sparc.c:360
#, c-format
msgid "%s is not supported by this configuration"
msgstr ""
-#: config/sparc/sparc.c:336
+#: config/sparc/sparc.c:367
msgid "-mlong-double-64 not allowed with -m64"
msgstr ""
-#: config/sparc/sparc.c:361
+#: config/sparc/sparc.c:392
msgid "-mcmodel= is not supported on 32 bit systems"
msgstr ""
-#: config/sparc/sparc.c:6341 config/sparc/sparc.c:6347
+#: config/sparc/sparc.c:6793 config/sparc/sparc.c:6799
#, c-format
msgid "invalid %%Y operand"
msgstr "нерÑчаіÑны %%Y аперанд"
-#: config/sparc/sparc.c:6417
+#: config/sparc/sparc.c:6869
#, c-format
msgid "invalid %%A operand"
msgstr "нерÑчаіÑны %%A аперанд"
-#: config/sparc/sparc.c:6427
+#: config/sparc/sparc.c:6879
#, c-format
msgid "invalid %%B operand"
msgstr "нерÑчаіÑны %%B аперанд"
-#: config/sparc/sparc.c:6466
+#: config/sparc/sparc.c:6918
#, c-format
msgid "invalid %%c operand"
msgstr "нерÑчаіÑны %%c аперанд"
-#: config/sparc/sparc.c:6467
+#: config/sparc/sparc.c:6919
#, c-format
msgid "invalid %%C operand"
msgstr "нерÑчаіÑны %%C аперанд"
-#: config/sparc/sparc.c:6488
+#: config/sparc/sparc.c:6940
#, c-format
msgid "invalid %%d operand"
msgstr "нерÑчаіÑны %%d аперанд"
-#: config/sparc/sparc.c:6489
+#: config/sparc/sparc.c:6941
#, c-format
msgid "invalid %%D operand"
msgstr "нерÑчаіÑны %%D аперанд"
-#: config/sparc/sparc.c:6505
+#: config/sparc/sparc.c:6957
#, c-format
msgid "invalid %%f operand"
msgstr "нерÑчаіÑны %%f аперанд"
-#: config/sparc/sparc.c:6519
+#: config/sparc/sparc.c:6971
#, fuzzy, c-format
msgid "invalid %%s operand"
msgstr "нерÑчаіÑны %%f аперанд"
-#: config/sparc/sparc.c:6573
+#: config/sparc/sparc.c:7025
msgid "long long constant not a valid immediate operand"
msgstr ""
-#: config/sparc/sparc.c:6576
+#: config/sparc/sparc.c:7028
msgid "floating point constant not a valid immediate operand"
msgstr ""
-#: config/sparc/freebsd.h:81 config/sparc/linux.h:87 config/sparc/linux64.h:89
-#: config/sparc/netbsd-elf.h:239
+#: config/sparc/freebsd.h:77 config/sparc/linux.h:92
+#: config/sparc/linux64.h:104 config/sparc/netbsd-elf.h:216
msgid "Use 128 bit long doubles"
msgstr ""
-#: config/sparc/sp64-elf.h:84 config/sparc/splet.h:29
+#: config/sparc/sp64-elf.h:90
msgid "Generate code for big endian"
msgstr ""
-#: config/sparc/sp64-elf.h:85 config/sparc/splet.h:30
+#: config/sparc/sp64-elf.h:91
msgid "Generate code for little endian"
msgstr ""
-#: config/sparc/sp86x-aout.h:51 config/sparc/sp86x-elf.h:65
+#: config/sparc/sp86x-elf.h:68
msgid "Use little-endian byte order for data"
msgstr ""
-#: config/sparc/sparc.h:532
+#: config/sparc/sparc.h:547
msgid "Assume possible double misalignment"
msgstr ""
-#: config/sparc/sparc.h:534
+#: config/sparc/sparc.h:549
msgid "Assume all doubles are aligned"
msgstr ""
-#: config/sparc/sparc.h:536
+#: config/sparc/sparc.h:551
msgid "Pass -assert pure-text to linker"
msgstr ""
-#: config/sparc/sparc.h:538
+#: config/sparc/sparc.h:553
msgid "Do not pass -assert pure-text to linker"
msgstr ""
-#: config/sparc/sparc.h:540
+#: config/sparc/sparc.h:555
msgid "Use flat register window model"
msgstr ""
-#: config/sparc/sparc.h:542
+#: config/sparc/sparc.h:557
msgid "Do not use flat register window model"
msgstr ""
-#: config/sparc/sparc.h:544
+#: config/sparc/sparc.h:559
msgid "Use ABI reserved registers"
msgstr ""
-#: config/sparc/sparc.h:546
+#: config/sparc/sparc.h:561
msgid "Do not use ABI reserved registers"
msgstr ""
-#: config/sparc/sparc.h:548
+#: config/sparc/sparc.h:563
msgid "Use hardware quad fp instructions"
msgstr ""
-#: config/sparc/sparc.h:550
+#: config/sparc/sparc.h:565
msgid "Do not use hardware quad fp instructions"
msgstr ""
-#: config/sparc/sparc.h:552
+#: config/sparc/sparc.h:567
msgid "Compile for v8plus ABI"
msgstr ""
-#: config/sparc/sparc.h:554
+#: config/sparc/sparc.h:569
msgid "Do not compile for v8plus ABI"
msgstr ""
-#: config/sparc/sparc.h:556
+#: config/sparc/sparc.h:571
msgid "Utilize Visual Instruction Set"
msgstr ""
-#: config/sparc/sparc.h:558
+#: config/sparc/sparc.h:573
msgid "Do not utilize Visual Instruction Set"
msgstr ""
#. ??? These are deprecated, coerced to -mcpu=. Delete in 2.9.
-#: config/sparc/sparc.h:561
+#: config/sparc/sparc.h:576
msgid "Optimize for Cypress processors"
msgstr "ÐÐ¿Ñ‚Ñ‹Ð¼Ñ–Ð·Ð°Ñ†Ñ‹Ñ Ð´Ð»Ñ Cypress працÑÑараў"
-#: config/sparc/sparc.h:563
+#: config/sparc/sparc.h:578
#, fuzzy
msgid "Optimize for SPARCLite processors"
msgstr "ÐÐ¿Ñ‚Ñ‹Ð¼Ñ–Ð·Ð°Ñ†Ñ‹Ñ Ð´Ð»Ñ SparcLite працÑÑараў"
-#: config/sparc/sparc.h:565
+#: config/sparc/sparc.h:580
msgid "Optimize for F930 processors"
msgstr "ÐÐ¿Ñ‚Ñ‹Ð¼Ñ–Ð·Ð°Ñ†Ñ‹Ñ Ð´Ð»Ñ F930 працÑÑараў"
-#: config/sparc/sparc.h:567
+#: config/sparc/sparc.h:582
msgid "Optimize for F934 processors"
msgstr "ÐÐ¿Ñ‚Ñ‹Ð¼Ñ–Ð·Ð°Ñ†Ñ‹Ñ Ð´Ð»Ñ F934 працÑÑараў"
-#: config/sparc/sparc.h:569
+#: config/sparc/sparc.h:584
msgid "Use V8 SPARC ISA"
msgstr ""
-#: config/sparc/sparc.h:571
+#: config/sparc/sparc.h:586
#, fuzzy
msgid "Optimize for SuperSPARC processors"
msgstr "ÐÐ¿Ñ‚Ñ‹Ð¼Ñ–Ð·Ð°Ñ†Ñ‹Ñ Ð´Ð»Ñ SuperSparc працÑÑараў"
#. End of deprecated options.
-#: config/sparc/sparc.h:574
+#: config/sparc/sparc.h:589
msgid "Pointers are 64-bit"
msgstr ""
-#: config/sparc/sparc.h:576
+#: config/sparc/sparc.h:591
msgid "Pointers are 32-bit"
msgstr ""
-#: config/sparc/sparc.h:578
+#: config/sparc/sparc.h:593
msgid "Use 32-bit ABI"
msgstr ""
-#: config/sparc/sparc.h:580
+#: config/sparc/sparc.h:595
msgid "Use 64-bit ABI"
msgstr ""
-#: config/sparc/sparc.h:582
+#: config/sparc/sparc.h:597
msgid "Use stack bias"
msgstr ""
-#: config/sparc/sparc.h:584
+#: config/sparc/sparc.h:599
msgid "Do not use stack bias"
msgstr ""
-#: config/sparc/sparc.h:586
+#: config/sparc/sparc.h:601
msgid "Use structs on stronger alignment for double-word copies"
msgstr ""
-#: config/sparc/sparc.h:588
+#: config/sparc/sparc.h:603
msgid "Do not use structs on stronger alignment for double-word copies"
msgstr ""
-#: config/sparc/sparc.h:590
+#: config/sparc/sparc.h:605
msgid "Optimize tail call instructions in assembler and linker"
msgstr ""
-#: config/sparc/sparc.h:592
+#: config/sparc/sparc.h:607
msgid "Do not optimize tail call instructions in assembler or linker"
msgstr ""
-#: config/sparc/sparc.h:637
+#: config/sparc/sparc.h:652
msgid "Use given SPARC code model"
msgstr ""
-#: config/stormy16/stormy16.c:1192
+#: config/stormy16/stormy16.c:526
+msgid "Constant halfword load operand out of range."
+msgstr ""
+
+#: config/stormy16/stormy16.c:536
+msgid "Constant arithmetic operand out of range."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1027
+msgid "Local variable memory requirements exceed capacity."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1193
+msgid "function_profiler support"
+msgstr ""
+
+#: config/stormy16/stormy16.c:1292
msgid "cannot use va_start in interrupt function"
msgstr ""
-#: config/stormy16/stormy16.c:1552
+#: config/stormy16/stormy16.c:1624
msgid "`B' operand is not constant"
msgstr ""
-#: config/stormy16/stormy16.c:1558
+#: config/stormy16/stormy16.c:1630
msgid "`B' operand has multiple bits set"
msgstr ""
-#: config/stormy16/stormy16.c:1585
+#: config/stormy16/stormy16.c:1656
msgid "`o' operand is not constant"
msgstr ""
-#: config/stormy16/stormy16.c:1600
+#: config/stormy16/stormy16.c:1670
msgid "xstormy16_print_operand: unknown code"
msgstr ""
-#: config/stormy16/stormy16.c:1650
+#: config/stormy16/stormy16.c:1716
#, c-format
msgid "switch statement of size %lu entries too large"
msgstr ""
@@ -13252,105 +12691,105 @@ msgstr ""
msgid "cannot set interrupt attribute: no such identifier"
msgstr ""
-#: config/v850/v850-c.c:148
+#: config/v850/v850-c.c:147
msgid "junk at end of #pragma ghs section"
msgstr ""
-#: config/v850/v850-c.c:165
+#: config/v850/v850-c.c:164
#, c-format
msgid "unrecognized section name \"%s\""
msgstr "нераÑÐ¿Ð°Ð·Ð½Ð°Ð½Ð°Ñ Ð½Ð°Ð·Ð²Ð° ÑÑкцыі \"%s\""
-#: config/v850/v850-c.c:180
+#: config/v850/v850-c.c:179
msgid "malformed #pragma ghs section"
msgstr ""
-#: config/v850/v850-c.c:200
+#: config/v850/v850-c.c:198
msgid "junk at end of #pragma ghs interrupt"
msgstr ""
-#: config/v850/v850-c.c:212
+#: config/v850/v850-c.c:209
msgid "junk at end of #pragma ghs starttda"
msgstr ""
-#: config/v850/v850-c.c:224
+#: config/v850/v850-c.c:220
msgid "junk at end of #pragma ghs startsda"
msgstr ""
-#: config/v850/v850-c.c:236
+#: config/v850/v850-c.c:231
msgid "junk at end of #pragma ghs startzda"
msgstr ""
-#: config/v850/v850-c.c:248
+#: config/v850/v850-c.c:242
msgid "junk at end of #pragma ghs endtda"
msgstr ""
-#: config/v850/v850-c.c:260
+#: config/v850/v850-c.c:253
msgid "junk at end of #pragma ghs endsda"
msgstr ""
-#: config/v850/v850-c.c:272
+#: config/v850/v850-c.c:264
msgid "junk at end of #pragma ghs endzda"
msgstr ""
-#: config/v850/v850.c:129
+#: config/v850/v850.c:142
#, c-format
msgid "%s=%s is not numeric"
msgstr ""
-#: config/v850/v850.c:136
+#: config/v850/v850.c:149
#, c-format
msgid "%s=%s is too large"
msgstr "%s=%s вельмі вÑлікі"
-#: config/v850/v850.c:302
+#: config/v850/v850.c:301
msgid "const_double_split got a bad insn:"
msgstr ""
-#: config/v850/v850.c:837
+#: config/v850/v850.c:866
msgid "output_move_single:"
msgstr ""
-#: config/v850/v850.c:2217
-msgid "a data area attribute cannot be specified for local variables"
+#: config/v850/v850.c:2209
+msgid "%Jdata area attributes cannot be specified for local variables"
msgstr ""
-#: config/v850/v850.c:2228
-#, c-format
-msgid "data area of '%s' conflicts with previous declaration"
-msgstr ""
+#: config/v850/v850.c:2220
+#, fuzzy
+msgid "%Jdata area of '%D' conflicts with previous declaration"
+msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
-#: config/v850/v850.c:2447
+#: config/v850/v850.c:2419
#, c-format
msgid "bogus JR construction: %d\n"
msgstr ""
-#: config/v850/v850.c:2468 config/v850/v850.c:2670
+#: config/v850/v850.c:2440 config/v850/v850.c:2643
#, c-format
msgid "bad amount of stack space removal: %d"
msgstr ""
-#: config/v850/v850.c:2646
+#: config/v850/v850.c:2619
#, c-format
msgid "bogus JARL construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3026
+#: config/v850/v850.c:2989
#, c-format
msgid "Bogus DISPOSE construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3048
+#: config/v850/v850.c:3011
#, c-format
msgid "Too much stack space to dispose of: %d"
msgstr ""
-#: config/v850/v850.c:3224
+#: config/v850/v850.c:3184
#, c-format
msgid "Bogus PREPEARE construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3246
+#: config/v850/v850.c:3206
#, c-format
msgid "Too much stack space to prepare: %d"
msgstr ""
@@ -13360,814 +12799,758 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/v850/v850.h:158
+#: config/v850/v850.h:174
msgid "Support Green Hills ABI"
msgstr ""
-#: config/v850/v850.h:161
+#: config/v850/v850.h:177
msgid "Prohibit PC relative function calls"
msgstr ""
-#: config/v850/v850.h:164
+#: config/v850/v850.h:180
msgid "Reuse r30 on a per function basis"
msgstr ""
-#: config/v850/v850.h:167
+#: config/v850/v850.h:183
msgid "Use stubs for function prologues"
msgstr ""
-#: config/v850/v850.h:170
+#: config/v850/v850.h:186
msgid "Same as: -mep -mprolog-function"
msgstr ""
-#: config/v850/v850.h:171
+#: config/v850/v850.h:187
msgid "Enable backend debugging"
msgstr ""
-#: config/v850/v850.h:173
+#: config/v850/v850.h:189
msgid "Compile for the v850 processor"
msgstr ""
-#: config/v850/v850.h:175
+#: config/v850/v850.h:191
+#, fuzzy
+msgid "Compile for v850e1 processor"
+msgstr "ÐÐ¿Ñ‚Ñ‹Ð¼Ñ–Ð·Ð°Ñ†Ñ‹Ñ Ð´Ð»Ñ F930 працÑÑараў"
+
+#. Make sure that the other bits are cleared.
+#: config/v850/v850.h:193
#, fuzzy
msgid "Compile for v850e processor"
msgstr "ÐÐ¿Ñ‚Ñ‹Ð¼Ñ–Ð·Ð°Ñ†Ñ‹Ñ Ð´Ð»Ñ F930 працÑÑараў"
#. Make sure that the other bits are cleared.
-#: config/v850/v850.h:177
+#: config/v850/v850.h:195
#, fuzzy
msgid "Enable the use of the short load instructions"
msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
-#: config/v850/v850.h:180
+#: config/v850/v850.h:198
#, fuzzy
msgid "Do not use the callt instruction"
msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
-#: config/v850/v850.h:187
+#: config/v850/v850.h:205
#, fuzzy
msgid "Do not use registers r2 and r5"
msgstr "Ðе выкарыÑтоўваць Ñ€ÑгіÑтра sb"
-#: config/v850/v850.h:189
+#: config/v850/v850.h:207
msgid "Enforce strict alignment"
msgstr ""
-#: config/v850/v850.h:192
+#: config/v850/v850.h:210
msgid "Use 4 byte entries in switch tables"
msgstr ""
-#: config/v850/v850.h:218
+#: config/v850/v850.h:236
msgid "Set the max size of data eligible for the TDA area"
msgstr ""
-#: config/v850/v850.h:221
+#: config/v850/v850.h:239
msgid "Set the max size of data eligible for the SDA area"
msgstr ""
-#: config/v850/v850.h:224
+#: config/v850/v850.h:242
msgid "Set the max size of data eligible for the ZDA area"
msgstr ""
-#: config/xtensa/xtensa.c:1062 config/xtensa/xtensa.c:1096
-#: config/xtensa/xtensa.c:1105
-msgid "bad test"
+#: config/xtensa/xtensa.c:1814
+msgid "boolean registers required for the floating-point option"
msgstr ""
-#: config/xtensa/xtensa.c:1824
-msgid "boolean registers required for the floating-point option"
+#: config/xtensa/xtensa.c:1868
+#, fuzzy, c-format
+msgid "-f%s is not supported with CONST16 instructions"
+msgstr "ISO C не падтрымлівае комлекÑÐ½Ñ‹Ñ Ñ†ÑÐ»Ð°Ð»Ñ–ÐºÐ°Ð²Ñ‹Ñ Ñ‚Ñ‹Ð¿Ñ‹"
+
+#: config/xtensa/xtensa.c:1873
+msgid "PIC is required but not supported with CONST16 instructions"
msgstr ""
-#: config/xtensa/xtensa.c:1991
+#: config/xtensa/xtensa.c:1943
+#, fuzzy, c-format
+msgid "invalid %%D value"
+msgstr "дрÑннае %%Q значÑнне"
+
+#: config/xtensa/xtensa.c:1980
msgid "invalid mask"
msgstr "нерÑчаіÑÐ½Ð°Ñ Ð¼Ð°Ñка"
-#: config/xtensa/xtensa.c:2038
+#: config/xtensa/xtensa.c:2006
+#, fuzzy, c-format
+msgid "invalid %%x value"
+msgstr "нерÑчаіÑнае значÑньне %%x/X"
+
+#: config/xtensa/xtensa.c:2013
+#, fuzzy, c-format
+msgid "invalid %%d value"
+msgstr "дрÑннае %%Q значÑнне"
+
+#: config/xtensa/xtensa.c:2034 config/xtensa/xtensa.c:2044
+#, fuzzy, c-format
+msgid "invalid %%t/%%b value"
+msgstr "дрÑннае %%Q значÑнне"
+
+#: config/xtensa/xtensa.c:2086
msgid "invalid address"
msgstr "нерÑчаіÑны адраÑ"
-#: config/xtensa/xtensa.c:2063
+#: config/xtensa/xtensa.c:2111
#, fuzzy
msgid "no register in address"
msgstr "невÑÐ´Ð¾Ð¼Ð°Ñ Ð½Ð°Ð·Ð²Ð° Ñ€ÑгіÑтра: %s"
-#: config/xtensa/xtensa.c:2071
+#: config/xtensa/xtensa.c:2119
msgid "address offset not a constant"
msgstr ""
-#: config/xtensa/xtensa.c:2794
+#: config/xtensa/xtensa.c:2802
msgid "only uninitialized variables can be placed in a .bss section"
msgstr ""
-#: config/xtensa/xtensa.h:114
-msgid "Use the Xtensa code density option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:116
-msgid "Do not use the Xtensa code density option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:118
-msgid "Use the Xtensa MAC16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:120
-msgid "Do not use the Xtensa MAC16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:122
-msgid "Use the Xtensa MUL16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:124
-msgid "Do not use the Xtensa MUL16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:126
-msgid "Use the Xtensa MUL32 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:128
-msgid "Do not use the Xtensa MUL32 option"
-msgstr ""
-
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:134
-msgid "Use the Xtensa NSA option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:136
-msgid "Do not use the Xtensa NSA option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:138
-msgid "Use the Xtensa MIN/MAX option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:140
-msgid "Do not use the Xtensa MIN/MAX option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:142
-msgid "Use the Xtensa SEXT option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:144
-msgid "Do not use the Xtensa SEXT option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:146
-msgid "Use the Xtensa boolean register option"
+#: config/xtensa/xtensa.h:79
+msgid "Use CONST16 instruction to load constants"
msgstr ""
-#: config/xtensa/xtensa.h:148
-#, fuzzy
-msgid "Do not use the Xtensa boolean register option"
-msgstr "Ðе ўжываць ÑÑ–Ð¼Ð²Ð°Ð»Ñ–Ñ‡Ð½Ñ‹Ñ Ð½Ð°Ð·Ð²Ð° Ñ€ÑгіÑтраў"
-
-#: config/xtensa/xtensa.h:150
-#, fuzzy
-msgid "Use the Xtensa floating-point unit"
-msgstr "ВыкарыÑтоўваць апаратную \"плаваючую кропку\""
-
-#: config/xtensa/xtensa.h:152
-msgid "Do not use the Xtensa floating-point unit"
+#: config/xtensa/xtensa.h:81
+msgid "Use PC-relative L32R instruction to load constants"
msgstr ""
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:170
+#: config/xtensa/xtensa.h:83
msgid "Disable fused multiply/add and multiply/subtract FP instructions"
msgstr ""
-#: config/xtensa/xtensa.h:172
+#: config/xtensa/xtensa.h:85
msgid "Enable fused multiply/add and multiply/subtract FP instructions"
msgstr ""
-#: config/xtensa/xtensa.h:174
-msgid "Serialize volatile memory references with MEMW instructions"
-msgstr ""
-
-#: config/xtensa/xtensa.h:176
-msgid "Do not serialize volatile memory references with MEMW instructions"
-msgstr ""
-
-#: config/xtensa/xtensa.h:178
+#: config/xtensa/xtensa.h:87
msgid "Intersperse literal pools with code in the text section"
msgstr ""
-#: config/xtensa/xtensa.h:180
+#: config/xtensa/xtensa.h:89
msgid "Put literal pools in a separate literal section"
msgstr ""
-#: config/xtensa/xtensa.h:182
+#: config/xtensa/xtensa.h:91
msgid "Automatically align branch targets to reduce branch penalties"
msgstr ""
-#: config/xtensa/xtensa.h:184
+#: config/xtensa/xtensa.h:93
msgid "Do not automatically align branch targets"
msgstr ""
-#: config/xtensa/xtensa.h:186
+#: config/xtensa/xtensa.h:95
msgid "Use indirect CALLXn instructions for large programs"
msgstr ""
-#: config/xtensa/xtensa.h:188
+#: config/xtensa/xtensa.h:97
msgid "Use direct CALLn instructions for fast calls"
msgstr ""
-#: ada/misc.c:233
-msgid "`-gnat' misspelled as `-gant'"
-msgstr ""
-
-#: cp/call.c:261 cp/init.c:1594
-msgid "qualified type `%T' does not match destructor name `~%T'"
-msgstr ""
-
-#: cp/call.c:270
-msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
-msgstr ""
-
-#: cp/call.c:279
-msgid "`%D' is a namespace"
-msgstr ""
+#: ada/misc.c:240
+#, fuzzy, c-format
+msgid "missing argument to \"-%s\""
+msgstr "аргумент Ð´Ð»Ñ \"%s\" прапушчан"
-#: cp/call.c:287
-msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
+#: ada/misc.c:281
+msgid "`-gnat' misspelled as `-gant'"
msgstr ""
-#: cp/call.c:369
+#: cp/call.c:217
msgid "unable to call pointer to member function here"
msgstr ""
-#: cp/call.c:518
-msgid "destructors take no parameters"
-msgstr ""
-
-#: cp/call.c:522
-msgid "destructor name `~%T' does not match type `%T' of expression"
-msgstr ""
-
-#: cp/call.c:543 cp/call.c:5000
-msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
-msgstr ""
-
-#: cp/call.c:567
-#, fuzzy
-msgid "request for member `%D' is ambiguous"
-msgstr "памер \"%s\" - %d байт"
-
-#: cp/call.c:2537
+#: cp/call.c:2228
msgid "%s %D(%T, %T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2542
+#: cp/call.c:2233
msgid "%s %D(%T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2546
+#: cp/call.c:2237
msgid "%s %D(%T) <built-in>"
msgstr ""
-#: cp/call.c:2550
+#: cp/call.c:2241
msgid "%s %T <conversion>"
msgstr ""
-#: cp/call.c:2552
-msgid "%s %+#D%s"
+#: cp/call.c:2243
+msgid "%J%s %+#D <near match>"
msgstr ""
-#: cp/call.c:2726
-msgid "conversion from `%T' to `%T' is ambiguous"
+#: cp/call.c:2245
+msgid "%J%s %+#D"
msgstr ""
-#: cp/call.c:2803
-#, fuzzy
-msgid "`%T' is not a class type"
-msgstr "\"%s\" мае незавершаны тып"
-
-#: cp/call.c:2811
-msgid "incomplete type '%T' cannot be used to name a scope"
+#: cp/call.c:2280
+msgid "candidates are:"
msgstr ""
-#: cp/call.c:2831 cp/typeck.c:2188 cp/typeck.c:2217
-msgid "'%D' has no member named '%E'"
+#: cp/call.c:2468
+msgid "conversion from `%T' to `%T' is ambiguous"
msgstr ""
-#: cp/call.c:2933
+#: cp/call.c:2619 cp/call.c:2663
msgid "no matching function for call to `%D(%A)'"
msgstr ""
-#: cp/call.c:2944 cp/call.c:5087
+#: cp/call.c:2622 cp/call.c:2666
msgid "call of overloaded `%D(%A)' is ambiguous"
msgstr ""
#. It's no good looking for an overloaded operator() on a
#. pointer-to-member-function.
-#: cp/call.c:2971
+#: cp/call.c:2732
#, c-format
msgid "pointer-to-member function %E cannot be called without an object; consider using .* or ->*"
msgstr ""
-#: cp/call.c:3036
+#: cp/call.c:2798
msgid "no match for call to `(%T) (%A)'"
msgstr ""
-#: cp/call.c:3046
+#: cp/call.c:2806
msgid "call of `(%T) (%A)' is ambiguous"
msgstr ""
-#: cp/call.c:3081
+#: cp/call.c:2839
#, c-format
msgid "%s for ternary 'operator?:' in '%E ? %E : %E'"
msgstr ""
-#: cp/call.c:3087
+#: cp/call.c:2845
#, fuzzy, c-format
msgid "%s for 'operator%s' in '%E%s'"
msgstr "%s перад знакам \"%s\""
-#: cp/call.c:3091
+#: cp/call.c:2849
#, c-format
msgid "%s for 'operator[]' in '%E[%E]'"
msgstr ""
-#: cp/call.c:3096
+#: cp/call.c:2854
+#, fuzzy, c-format
+msgid "%s for '%s' in '%s %E'"
+msgstr "прапушчана поле '%s' у '%s'"
+
+#: cp/call.c:2859
#, c-format
msgid "%s for 'operator%s' in '%E %s %E'"
msgstr ""
-#: cp/call.c:3099
+#: cp/call.c:2862
#, fuzzy, c-format
msgid "%s for 'operator%s' in '%s%E'"
msgstr "%s перад знакам \"%s\""
-#: cp/call.c:3191
+#: cp/call.c:2957
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
msgstr ""
-#: cp/call.c:3250
+#: cp/call.c:3018
#, c-format
msgid "`%E' has type `void' and is not a throw-expression"
msgstr ""
-#: cp/call.c:3283 cp/call.c:3475
+#: cp/call.c:3051 cp/call.c:3242
msgid "operands to ?: have different types"
msgstr ""
-#: cp/call.c:3428
+#: cp/call.c:3196
msgid "enumeral mismatch in conditional expression: `%T' vs `%T'"
msgstr ""
-#: cp/call.c:3435
+#: cp/call.c:3203
msgid "enumeral and non-enumeral type in conditional expression"
msgstr ""
-#: cp/call.c:3516
-msgid "`%D' must be declared before use"
-msgstr ""
-
-#: cp/call.c:3706
+#: cp/call.c:3487
msgid "no `%D(int)' declared for postfix `%s', trying prefix operator instead"
msgstr ""
-#: cp/call.c:3753
+#: cp/call.c:3532
msgid "using synthesized `%#D' for copy assignment"
msgstr ""
-#: cp/call.c:3755
+#: cp/call.c:3534
msgid " where cfront would use `%#D'"
msgstr ""
-#: cp/call.c:3782
+#: cp/call.c:3557
msgid "comparison between `%#T' and `%#T'"
msgstr ""
-#: cp/call.c:4021
-msgid "no suitable `operator delete' for `%T'"
-msgstr ""
+#: cp/call.c:3803
+#, fuzzy
+msgid "no suitable `operator %s' for `%T'"
+msgstr "немагчымы апÑратар '%s'"
-#: cp/call.c:4040
+#: cp/call.c:3820
msgid "`%+#D' is private"
msgstr ""
-#: cp/call.c:4042
+#: cp/call.c:3822
msgid "`%+#D' is protected"
msgstr ""
-#: cp/call.c:4044
+#: cp/call.c:3824
msgid "`%+#D' is inaccessible"
msgstr ""
-#: cp/call.c:4045
+#: cp/call.c:3825
msgid "within this context"
msgstr ""
-#: cp/call.c:4088
+#: cp/call.c:3895
msgid "invalid conversion from `%T' to `%T'"
msgstr ""
-#: cp/call.c:4090 cp/call.c:4229 cp/call.c:4231
+#: cp/call.c:3897
msgid " initializing argument %P of `%D'"
msgstr ""
-#: cp/call.c:4152 cp/call.c:4156
-msgid " initializing argument %P of `%D' from result of `%D'"
-msgstr ""
+#: cp/call.c:4050
+#, fuzzy
+msgid "cannot bind bitfield `%E' to `%T'"
+msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
-#: cp/call.c:4162 cp/call.c:4165
-msgid " initializing temporary from result of `%D'"
-msgstr ""
+#: cp/call.c:4053
+#, fuzzy
+msgid "cannot bind packed field `%E' to `%T'"
+msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
+
+#: cp/call.c:4056
+#, fuzzy
+msgid "cannot bind rvalue `%E' to `%T'"
+msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
-#. Undefined behavior [expr.call] 5.2.2/7. We used to just warn
-#. here and do a bitwise copy, but now cp_expr_size will abort if we
-#. try to do that.
-#: cp/call.c:4316
+#: cp/call.c:4144
msgid "cannot pass objects of non-POD type `%#T' through `...'; call will abort at runtime"
msgstr ""
#. Undefined behavior [expr.call] 5.2.2/7.
-#: cp/call.c:4343
-msgid "cannot receive objects of non-POD type `%#T' through `...'"
+#: cp/call.c:4168
+msgid "cannot receive objects of non-POD type `%#T' through `...'; call will abort at runtime"
msgstr ""
-#: cp/call.c:4523
+#: cp/call.c:4208
+#, fuzzy
+msgid "the default argument for parameter %d of `%D' has not yet been parsed"
+msgstr "звычайны аргумÑнт Ð´Ð»Ñ `%#D' мае тып `%T'"
+
+#: cp/call.c:4403
msgid "passing `%T' as `this' argument of `%#D' discards qualifiers"
msgstr ""
-#: cp/call.c:4542
+#: cp/call.c:4422
msgid "`%T' is not an accessible base of `%T'"
msgstr ""
-#: cp/call.c:4786
+#: cp/call.c:4696
msgid "could not find class$ field in java interface type `%T'"
msgstr ""
-#: cp/call.c:4974
+#: cp/call.c:4951
#, fuzzy
msgid "call to non-function `%D'"
msgstr "у функцыі \"%s\":"
-#: cp/call.c:5076
-msgid "no matching function for call to `%T::%D(%A)%#V'"
+#: cp/call.c:4977
+msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
+msgstr ""
+
+#: cp/call.c:5055
+msgid "no matching function for call to `%T::%s(%A)%#V'"
msgstr ""
-#: cp/call.c:5106
+#: cp/call.c:5072
+#, fuzzy, c-format
+msgid "call of overloaded `%s(%A)' is ambiguous"
+msgstr "памер \"%s\" - %d байт"
+
+#: cp/call.c:5093
msgid "cannot call member function `%D' without object"
msgstr ""
-#: cp/call.c:5704
+#: cp/call.c:5678
msgid "passing `%T' chooses `%T' over `%T'"
msgstr ""
-#: cp/call.c:5706 cp/decl2.c:4154
+#: cp/call.c:5680 cp/name-lookup.c:4057
msgid " in call to `%D'"
msgstr ""
-#: cp/call.c:5755
+#: cp/call.c:5737
msgid "choosing `%D' over `%D'"
msgstr ""
-#: cp/call.c:5756
+#: cp/call.c:5738
msgid " for conversion from `%T' to `%T'"
msgstr ""
-#: cp/call.c:5758
+#: cp/call.c:5740
msgid " because conversion sequence for the argument is better"
msgstr ""
-#: cp/call.c:5879
-msgid "ISO C++ says that `%D' and `%D' are ambiguous even though the worst conversion for the former is better than the worst conversion for the latter"
+#: cp/call.c:5860
+msgid "ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:"
+msgstr ""
+
+#: cp/call.c:5864
+msgid "candidate 1:"
+msgstr ""
+
+#: cp/call.c:5865
+msgid "candidate 2:"
msgstr ""
-#: cp/call.c:5996
+#: cp/call.c:5974
msgid "could not convert `%E' to `%T'"
msgstr ""
-#: cp/call.c:6105
+#: cp/call.c:6079
msgid "invalid initialization of non-const reference of type '%T' from a temporary of type '%T'"
msgstr ""
-#: cp/call.c:6109
+#: cp/call.c:6083
msgid "invalid initialization of reference of type '%T' from expression of type '%T'"
msgstr ""
-#: cp/class.c:287
+#: cp/class.c:281
msgid "cannot convert from base `%T' to derived type `%T' via virtual base `%T'"
msgstr ""
-#: cp/class.c:992
+#: cp/class.c:764
+msgid "Java class '%T' cannot have an implicit non-trivial destructor"
+msgstr ""
+
+#: cp/class.c:765
+msgid "Java class '%T' cannot have a destructor"
+msgstr ""
+
+#: cp/class.c:933
msgid "`%#D' and `%#D' cannot be overloaded"
msgstr ""
-#: cp/class.c:1076
+#: cp/class.c:1016
#, fuzzy
msgid "duplicate enum value `%D'"
msgstr "паўтарÑнне \"volatile\""
-#: cp/class.c:1079
+#: cp/class.c:1019
msgid "duplicate field `%D' (as enum and non-enum)"
msgstr ""
-#: cp/class.c:1086
+#: cp/class.c:1026
#, fuzzy
msgid "duplicate nested type `%D'"
msgstr "паўтарÑнне \"restrict\""
-#: cp/class.c:1097
+#: cp/class.c:1037
msgid "duplicate field `%D' (as type and non-type)"
msgstr ""
-#: cp/class.c:1101
+#: cp/class.c:1041
#, fuzzy
msgid "duplicate member `%D'"
msgstr "паўтарÑнне \"%s\""
-#: cp/class.c:1144
+#: cp/class.c:1079
msgid "conflicting access specifications for method `%D', ignored"
msgstr ""
-#: cp/class.c:1146
+#: cp/class.c:1081
#, c-format
msgid "conflicting access specifications for field `%s', ignored"
msgstr ""
-#: cp/class.c:1194
+#: cp/class.c:1131
msgid "`%D' names constructor"
msgstr ""
-#: cp/class.c:1199
+#: cp/class.c:1136
#, fuzzy
msgid "`%D' invalid in `%T'"
msgstr "ÐерÑчаіÑны выбар \"%s\""
-#: cp/class.c:1207
+#: cp/class.c:1144
msgid "no members matching `%D' in `%#T'"
msgstr ""
-#: cp/class.c:1239 cp/class.c:1247
+#: cp/class.c:1176 cp/class.c:1184
#, fuzzy
msgid "`%D' invalid in `%#T'"
msgstr "ÐерÑчаіÑны выбар \"%s\""
-#: cp/class.c:1240
+#: cp/class.c:1177
msgid " because of local method `%#D' with same name"
msgstr ""
-#: cp/class.c:1248
+#: cp/class.c:1185
msgid " because of local member `%#D' with same name"
msgstr ""
-#: cp/class.c:1320
+#: cp/class.c:1255
msgid "base class `%#T' has a non-virtual destructor"
msgstr ""
-#: cp/class.c:1340
+#: cp/class.c:1275
msgid "base `%T' with only non-default constructor in class without a constructor"
msgstr ""
-#: cp/class.c:1912
+#: cp/class.c:1659
msgid "all member functions in class `%T' are private"
msgstr ""
-#: cp/class.c:1926
+#: cp/class.c:1670
msgid "`%#T' only defines a private destructor and has no friends"
msgstr ""
-#: cp/class.c:1969
+#: cp/class.c:1712
msgid "`%#T' only defines private constructors and has no friends"
msgstr ""
-#: cp/class.c:2090 cp/class.c:5276
-msgid "redefinition of `%#T'"
-msgstr ""
-
-#: cp/class.c:2091
-msgid "previous definition of `%#T'"
-msgstr "папÑÑ€ÑднÑе вызначÑньне `%#T'"
-
-#: cp/class.c:2365
+#: cp/class.c:2097
msgid "no unique final overrider for `%D' in `%T'"
msgstr ""
#. Here we know it is a hider, and no overrider exists.
-#: cp/class.c:2712
+#: cp/class.c:2542
msgid "`%D' was hidden"
msgstr ""
-#: cp/class.c:2713
+#: cp/class.c:2543
msgid " by `%D'"
msgstr ""
-#: cp/class.c:2755
+#: cp/class.c:2584
msgid "ISO C++ forbids member `%D' with same name as enclosing class"
msgstr ""
-#: cp/class.c:2760 cp/decl2.c:1331
+#: cp/class.c:2589 cp/decl2.c:1167
msgid "`%#D' invalid; an anonymous union can only have non-static data members"
msgstr ""
-#: cp/class.c:2766 cp/decl2.c:1337
+#: cp/class.c:2595 cp/decl2.c:1174
msgid "private member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2769 cp/decl2.c:1339
+#: cp/class.c:2598 cp/decl2.c:1176
msgid "protected member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2894
+#: cp/class.c:2717
msgid "vtable layout for class `%T' may not be ABI-compliant and may change in a future version of GCC due to implicit virtual destructor"
msgstr ""
-#: cp/class.c:2958
+#: cp/class.c:2777
#, fuzzy
msgid "bit-field `%#D' with non-integral type"
msgstr "бітавае поле \"%s\" мае нерÑчаіÑны тып"
-#: cp/class.c:2978
+#: cp/class.c:2797
msgid "bit-field `%D' width not an integer constant"
msgstr ""
-#: cp/class.c:2984
+#: cp/class.c:2803
msgid "negative width in bit-field `%D'"
msgstr ""
-#: cp/class.c:2989
+#: cp/class.c:2808
msgid "zero width for bit-field `%D'"
msgstr ""
-#: cp/class.c:2995
+#: cp/class.c:2814
msgid "width of `%D' exceeds its type"
msgstr ""
-#: cp/class.c:3004
+#: cp/class.c:2823
msgid "`%D' is too small to hold all values of `%#T'"
msgstr ""
-#: cp/class.c:3088
+#: cp/class.c:2885
msgid "member `%#D' with constructor not allowed in union"
msgstr ""
-#: cp/class.c:3091
+#: cp/class.c:2888
msgid "member `%#D' with destructor not allowed in union"
msgstr ""
-#: cp/class.c:3094
+#: cp/class.c:2891
msgid "member `%#D' with copy assignment operator not allowed in union"
msgstr ""
-#: cp/class.c:3121
+#: cp/class.c:2918
msgid "multiple fields in union `%T' initialized"
msgstr ""
-#: cp/class.c:3234
+#: cp/class.c:2987
+msgid "ignoring packed attribute on unpacked non-POD field `%#D'"
+msgstr ""
+
+#: cp/class.c:3039
msgid "field `%D' in local class cannot be static"
msgstr ""
-#: cp/class.c:3240
+#: cp/class.c:3045
msgid "field `%D' invalidly declared function type"
msgstr ""
-#: cp/class.c:3247
+#: cp/class.c:3052
#, fuzzy
msgid "field `%D' invalidly declared method type"
msgstr "бітавае поле \"%s\" мае нерÑчаіÑны тып"
-#: cp/class.c:3253
-#, fuzzy
-msgid "field `%D' invalidly declared offset type"
-msgstr "бітавае поле \"%s\" мае нерÑчаіÑны тып"
-
#. Unions cannot have static members.
-#: cp/class.c:3271
+#: cp/class.c:3070
#, fuzzy
msgid "field `%D' declared static in union"
msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: cp/class.c:3298
+#: cp/class.c:3097
msgid "non-static reference `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3333
+#: cp/class.c:3132
msgid "non-static const member `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3349
+#: cp/class.c:3147
msgid "field `%#D' with same name as class"
msgstr ""
-#: cp/class.c:3367
+#: cp/class.c:3165
msgid "`%#T' has pointer data members"
msgstr ""
-#: cp/class.c:3371
+#: cp/class.c:3169
msgid " but does not override `%T(const %T&)'"
msgstr ""
-#: cp/class.c:3373
+#: cp/class.c:3171
msgid " or `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3376
+#: cp/class.c:3174
msgid " but does not override `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3826
+#: cp/class.c:3604
msgid "offset of empty base `%T' may not be ABI-compliant and maychange in a future version of GCC"
msgstr ""
-#: cp/class.c:3935
+#: cp/class.c:3714
msgid "class `%T' will be considered nearly empty in a future version of GCC"
msgstr ""
-#: cp/class.c:4025
+#: cp/class.c:3801
msgid "initializer specified for non-virtual method `%D'"
msgstr ""
-#: cp/class.c:4761
+#: cp/class.c:4489
msgid "offset of virtual base `%T' is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:4861
+#: cp/class.c:4579
msgid "direct base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:4874
+#: cp/class.c:4592
msgid "virtual base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:5030
+#: cp/class.c:4766
msgid "size assigned to `%T' may not be ABI-compliant and may change in a future version of GCC"
msgstr ""
#. Versions of G++ before G++ 3.4 did not reset the
#. DECL_MODE.
-#: cp/class.c:5053
+#: cp/class.c:4805
msgid "the offset of `%D' may not be ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5079
+#: cp/class.c:4828
msgid "offset of `%D' is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5088
+#: cp/class.c:4837
msgid "`%D' contains empty classes which may cause base classes to be placed at different locations in a future version of GCC"
msgstr ""
-#: cp/class.c:5147
+#: cp/class.c:4896
msgid "layout of classes derived from empty class `%T' may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5432
+#: cp/class.c:5026 cp/semantics.c:2029
+msgid "redefinition of `%#T'"
+msgstr ""
+
+#: cp/class.c:5196
msgid "`%#T' has virtual functions but non-virtual destructor"
msgstr ""
-#: cp/class.c:5516
+#: cp/class.c:5275
msgid "trying to finish struct, but kicked out due to previous parse errors"
msgstr ""
-#: cp/class.c:5982
+#: cp/class.c:5717
#, c-format
msgid "language string `\"%s\"' not recognized"
msgstr ""
-#: cp/class.c:6078
+#: cp/class.c:5805
msgid "cannot resolve overloaded function `%D' based on conversion to type `%T'"
msgstr ""
-#: cp/class.c:6203
+#: cp/class.c:5930
msgid "no matches converting function `%D' to type `%#T'"
msgstr ""
-#: cp/class.c:6226
+#: cp/class.c:5953
msgid "converting overloaded function `%D' to type `%#T' is ambiguous"
msgstr ""
-#: cp/class.c:6252
+#: cp/class.c:5979
msgid "assuming pointer to member `%D'"
msgstr ""
-#: cp/class.c:6255
+#: cp/class.c:5982
#, c-format
msgid "(a pointer to member can only be formed with `&%E')"
msgstr ""
-#: cp/class.c:6306 cp/class.c:6477 cp/class.c:6484
+#: cp/class.c:6027 cp/class.c:6209 cp/class.c:6216
msgid "not enough type information"
msgstr ""
-#: cp/class.c:6315
+#: cp/class.c:6044
msgid "argument of type `%T' does not match `%T'"
msgstr ""
-#: cp/class.c:6461
+#: cp/class.c:6193
msgid "invalid operation on uninstantiated type"
msgstr ""
@@ -14176,14 +13559,18 @@ msgstr ""
#. A name N used in a class S shall refer to the same declaration
#. in its context and when re-evaluated in the completed scope of
#. S.
-#: cp/class.c:6745 cp/decl.c:1254 cp/decl.c:3379 cp/pt.c:2004
+#: cp/class.c:6451 cp/decl.c:1225 cp/name-lookup.c:495 cp/pt.c:2093
msgid "declaration of `%#D'"
msgstr "абвÑшчÑньне `%#D'"
-#: cp/class.c:6746
+#: cp/class.c:6452
msgid "changes meaning of `%D' from `%+#D'"
msgstr ""
+#: cp/cp-lang.c:398
+msgid "inter-module optimisations not implemented yet"
+msgstr ""
+
#: cp/cvt.c:88
msgid "can't convert from incomplete type `%T' to `%T'"
msgstr ""
@@ -14192,257 +13579,244 @@ msgstr ""
msgid "conversion of `%E' from `%T' to `%T' is ambiguous"
msgstr ""
-#: cp/cvt.c:126
+#: cp/cvt.c:113 cp/cvt.c:127
msgid "converting from `%T' to `%T'"
msgstr "пераўтварÑньне з `%T' у `%T'"
-#: cp/cvt.c:203 cp/cvt.c:207
-msgid "pointer to member cast from `%T' to `%T' is via virtual base"
+#: cp/cvt.c:185 cp/cvt.c:253 cp/cvt.c:297
+msgid "cannot convert `%E' from type `%T' to type `%T'"
msgstr ""
-#: cp/cvt.c:225 cp/cvt.c:236 cp/cvt.c:283
-msgid "cannot convert `%E' from type `%T' to type `%T'"
+#: cp/cvt.c:214 cp/cvt.c:218
+msgid "pointer to member cast from `%T' to `%T' is via virtual base"
msgstr ""
-#: cp/cvt.c:262
+#: cp/cvt.c:276
#, fuzzy
msgid "invalid conversion from '%T' to '%T'"
msgstr "пераўтварÑньне з `%T' у `%T'"
-#: cp/cvt.c:504
+#: cp/cvt.c:508
msgid "conversion from `%T' to `%T' discards qualifiers"
msgstr ""
-#: cp/cvt.c:522
+#: cp/cvt.c:526
msgid "casting `%T' to `%T' does not dereference pointer"
msgstr ""
-#: cp/cvt.c:551
+#: cp/cvt.c:553
msgid "cannot convert type `%T' to type `%T'"
msgstr ""
-#: cp/cvt.c:683
+#: cp/cvt.c:679
msgid "conversion from `%#T' to `%#T'"
msgstr ""
-#: cp/cvt.c:695
+#: cp/cvt.c:691
msgid "`%#T' used where a `%T' was expected"
msgstr ""
-#: cp/cvt.c:712
-msgid "the address of `%D', will always be `true'"
-msgstr ""
-
-#: cp/cvt.c:732
+#: cp/cvt.c:715
msgid "`%#T' used where a floating point value was expected"
msgstr ""
-#: cp/cvt.c:779
+#: cp/cvt.c:762
msgid "conversion from `%T' to non-scalar type `%T' requested"
msgstr ""
-#: cp/cvt.c:865
+#: cp/cvt.c:850
msgid "object of incomplete type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:868
+#: cp/cvt.c:853
msgid "object of type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:884
+#: cp/cvt.c:869
msgid "object `%E' of incomplete type `%T' will not be accessed in %s"
msgstr ""
#. [over.over] enumerates the places where we can take the address
#. of an overloaded function, and this is not one of them.
-#: cp/cvt.c:904
+#: cp/cvt.c:885
#, c-format
msgid "%s cannot resolve address of overloaded function"
msgstr ""
#. Only warn when there is no &.
-#: cp/cvt.c:909
+#: cp/cvt.c:891
#, c-format
msgid "%s is a reference, not call, to function `%E'"
msgstr ""
-#: cp/cvt.c:1039
-msgid "converting NULL to non-pointer type"
-msgstr ""
-
-#: cp/cvt.c:1115
-msgid "ambiguous default type conversion from `%T'"
-msgstr ""
-
-#: cp/cvt.c:1117
-msgid " candidate conversions include `%D' and `%D'"
-msgstr ""
-
-#: cp/decl.c:736
-#, c-format
-msgid "push %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:770
+#: cp/cvt.c:898
#, c-format
-msgid "pop %s level %p line %d\n"
+msgid "%s has no effect"
msgstr ""
-#: cp/decl.c:776 cp/decl.c:814
-msgid "XXX is_class_level != (current_binding_level == class_binding_level)\n"
+#: cp/cvt.c:1009
+msgid "converting NULL to non-pointer type"
msgstr ""
-#: cp/decl.c:808
-#, c-format
-msgid "suspend %s level %p line %d\n"
+#: cp/cvt.c:1081
+msgid "ambiguous default type conversion from `%T'"
msgstr ""
-#: cp/decl.c:837
-#, c-format
-msgid "resume %s level %p line %d\n"
+#: cp/cvt.c:1083
+msgid " candidate conversions include `%D' and `%D'"
msgstr ""
-#: cp/decl.c:1255 cp/decl.c:3490
-msgid "conflicts with previous declaration `%#D'"
-msgstr "канфлікт з папÑÑ€Ñднім абвÑшчÑньнем `%#D'"
-
-#: cp/decl.c:1467
+#: cp/decl.c:374
msgid "label `%D' used but not defined"
msgstr "адмеціна `%D' выкарыÑтоўвываецца, але Ð½Ñ Ð²Ñ‹Ð·Ð½Ð°Ñ‡Ð°Ð½Ð°"
-#: cp/decl.c:1472
+#: cp/decl.c:381
msgid "label `%D' defined but not used"
msgstr "адмеціна `%D' вызначана, але не выкарыÑтоўваецца"
-#: cp/decl.c:2489
-msgid "namespace alias `%D' not allowed here, assuming `%D'"
-msgstr ""
+#: cp/decl.c:1133 cp/decl.c:1559
+msgid "previous declaration of `%D'"
+msgstr "папÑÑ€ÑднÑе абвÑшчÑньне `%D'"
-#: cp/decl.c:2825
-msgid "XXX entering pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1181
+#, fuzzy
+msgid "%Jfunction '%D' redeclared as inline"
+msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: cp/decl.c:2834
-msgid "XXX leaving pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1182
+#, fuzzy
+msgid "%Jprevious declaration of '%D' with attribute noinline"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: cp/decl.c:3285 cp/decl.c:3700
-msgid "previous declaration of `%D'"
-msgstr "папÑÑ€ÑднÑе абвÑшчÑньне `%D'"
+#: cp/decl.c:1189
+#, fuzzy
+msgid "%Jfunction '%D' redeclared with attribute noinline"
+msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: cp/decl.c:3366 cp/decl.c:3404
+#: cp/decl.c:1191
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was inline"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+
+#: cp/decl.c:1212 cp/decl.c:1250
#, fuzzy
msgid "shadowing %s function `%#D'"
msgstr "у функцыі \"%s\":"
-#: cp/decl.c:3375
+#: cp/decl.c:1221
msgid "library function `%#D' redeclared as non-function `%#D'"
msgstr ""
-#: cp/decl.c:3380
+#: cp/decl.c:1226
#, fuzzy
msgid "conflicts with built-in declaration `%#D'"
msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-#: cp/decl.c:3399 cp/decl.c:3504 cp/decl.c:3520
+#: cp/decl.c:1245 cp/decl.c:1357 cp/decl.c:1373
msgid "new declaration `%#D'"
msgstr "новае абвÑшчÑньне `%#D'"
-#: cp/decl.c:3400
+#: cp/decl.c:1246
#, fuzzy
msgid "ambiguates built-in declaration `%#D'"
msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-#: cp/decl.c:3464
+#: cp/decl.c:1317
msgid "`%#D' redeclared as different kind of symbol"
msgstr ""
-#: cp/decl.c:3467
+#: cp/decl.c:1320
msgid "previous declaration of `%#D'"
msgstr "папÑÑ€ÑднÑе абвÑшчÑньне `%#D'"
-#: cp/decl.c:3489
+#: cp/decl.c:1342
msgid "declaration of template `%#D'"
msgstr "абвÑшчÑньне шаблёну `%#D'"
-#: cp/decl.c:3505 cp/decl.c:3521
+#: cp/decl.c:1343 cp/name-lookup.c:496
+msgid "conflicts with previous declaration `%#D'"
+msgstr "канфлікт з папÑÑ€Ñднім абвÑшчÑньнем `%#D'"
+
+#: cp/decl.c:1358 cp/decl.c:1374
#, fuzzy
msgid "ambiguates old declaration `%#D'"
msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-#: cp/decl.c:3513
+#: cp/decl.c:1366
msgid "declaration of C function `%#D' conflicts with"
msgstr ""
-#: cp/decl.c:3515
+#: cp/decl.c:1368
#, fuzzy
msgid "previous declaration `%#D' here"
msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: cp/decl.c:3533
-msgid "conflicting types for `%#D'"
-msgstr ""
+#: cp/decl.c:1384
+#, fuzzy
+msgid "conflicting declaration '%#D'"
+msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-#: cp/decl.c:3534
+#: cp/decl.c:1385
#, fuzzy
-msgid "previous declaration as `%#D'"
+msgid "'%D' has a previous declaration as `%#D'"
msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: cp/decl.c:3577
+#: cp/decl.c:1438
msgid "`%#D' previously defined here"
msgstr ""
-#: cp/decl.c:3578
+#: cp/decl.c:1439
msgid "`%#D' previously declared here"
msgstr ""
#. Prototype decl follows defn w/o prototype.
-#: cp/decl.c:3587
+#: cp/decl.c:1448
#, fuzzy
msgid "prototype for `%#D'"
msgstr "нÑма папÑÑ€ÑднÑга прататыпа Ð´Ð»Ñ \"%s\""
-#: cp/decl.c:3588
-msgid "follows non-prototype definition here"
-msgstr ""
+#: cp/decl.c:1449
+#, fuzzy
+msgid "%Jfollows non-prototype definition here"
+msgstr "папÑÑ€ÑднÑе вызначÑньне"
-#: cp/decl.c:3600
+#: cp/decl.c:1461
#, fuzzy
msgid "previous declaration of `%#D' with %L linkage"
msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: cp/decl.c:3602
+#: cp/decl.c:1463
msgid "conflicts with new declaration with %L linkage"
msgstr ""
-#: cp/decl.c:3625 cp/decl.c:3632
+#: cp/decl.c:1486 cp/decl.c:1493
msgid "default argument given for parameter %d of `%#D'"
msgstr ""
-#: cp/decl.c:3627 cp/decl.c:3634
+#: cp/decl.c:1488 cp/decl.c:1495
#, fuzzy
msgid "after previous specification in `%#D'"
msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: cp/decl.c:3643
+#: cp/decl.c:1504
msgid "`%#D' was used before it was declared inline"
msgstr ""
-#: cp/decl.c:3645
+#: cp/decl.c:1505
#, fuzzy
-msgid "previous non-inline declaration here"
+msgid "%Jprevious non-inline declaration here"
msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: cp/decl.c:3699
+#: cp/decl.c:1558
msgid "redundant redeclaration of `%D' in same scope"
msgstr ""
-#: cp/decl.c:3780
+#: cp/decl.c:1649
#, c-format
msgid "declaration of `%F' throws different exceptions"
msgstr ""
-#: cp/decl.c:3782
+#: cp/decl.c:1651
#, fuzzy, c-format
msgid "than previous declaration `%F'"
msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
@@ -14455,638 +13829,513 @@ msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
#. that specialization that would cause an implicit
#. instantiation to take place, in every translation unit in
#. which such a use occurs.
-#: cp/decl.c:3922
+#: cp/decl.c:1798
msgid "explicit specialization of %D after first use"
msgstr ""
-#: cp/decl.c:4187
-#, fuzzy
-msgid "`%#D' used prior to declaration"
-msgstr "\"%s\" - гÑта не пачатак дÑкларацыі"
-
-#: cp/decl.c:4218
-#, fuzzy
-msgid "redeclaration of `wchar_t' as `%T'"
-msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-
-#. A redeclaration of main, but not a duplicate of the
-#. previous one.
-#.
-#. [basic.start.main]
-#.
-#. This function shall not be overloaded.
-#: cp/decl.c:4246
-#, fuzzy
-msgid "invalid redeclaration of `%D'"
-msgstr "ÐерÑчаіÑнае абвÑшчÑнне"
-
-#: cp/decl.c:4247
-msgid "as `%D'"
-msgstr "Ñк `%D'"
-
-#: cp/decl.c:4337
-#, fuzzy
-msgid "previous external decl of `%#D'"
-msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-
-#: cp/decl.c:4378
-msgid "`%D' was previously implicitly declared to return `int'"
-msgstr ""
-
-#: cp/decl.c:4438
-msgid "extern declaration of `%#D' doesn't match"
-msgstr ""
-
-#: cp/decl.c:4439
-#, fuzzy
-msgid "global declaration `%#D'"
-msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-
-#: cp/decl.c:4472
-msgid "declaration of `%#D' shadows a parameter"
+#: cp/decl.c:1880
+msgid "%J'%D': visibility attribute ignored because it"
msgstr ""
-#: cp/decl.c:4492
-#, c-format
-msgid "declaration of `%s' shadows a member of `this'"
-msgstr ""
-
-#: cp/decl.c:4889
-#, fuzzy
-msgid "`%#D' hides constructor for `%#T'"
-msgstr "дÑÑтруктару неабходны \"%#D\""
-
-#: cp/decl.c:4904
-#, fuzzy
-msgid "`%#D' conflicts with previous using declaration `%#D'"
-msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
-
-#: cp/decl.c:4916
-#, fuzzy
-msgid "previous non-function declaration `%#D'"
-msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-
-#: cp/decl.c:4917
+#: cp/decl.c:1882
#, fuzzy
-msgid "conflicts with function declaration `%#D'"
-msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
+msgid "%Jconflicts with previous declaration here"
+msgstr "канфлікт з папÑÑ€Ñднім абвÑшчÑньнем `%#D'"
-#: cp/decl.c:5007
+#: cp/decl.c:1976
#, fuzzy
msgid "implicit declaration of function `%#D'"
msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: cp/decl.c:5167
+#: cp/decl.c:2124
#, c-format
msgid "label `%s' referenced outside of any function"
msgstr ""
-#: cp/decl.c:5270 cp/decl.c:5294 cp/decl.c:5387
+#: cp/decl.c:2221 cp/decl.c:2245 cp/decl.c:2333
msgid "jump to label `%D'"
msgstr ""
-#: cp/decl.c:5272 cp/decl.c:5296
+#: cp/decl.c:2223 cp/decl.c:2247
msgid "jump to case label"
msgstr ""
-#: cp/decl.c:5280
+#: cp/decl.c:2226 cp/decl.c:2250
+#, fuzzy
+msgid "%H from here"
+msgstr " адÑюль"
+
+#: cp/decl.c:2231
msgid " crosses initialization of `%#D'"
msgstr ""
-#: cp/decl.c:5283 cp/decl.c:5403
+#: cp/decl.c:2234 cp/decl.c:2349
msgid " enters scope of non-POD `%#D'"
msgstr ""
-#: cp/decl.c:5303 cp/decl.c:5407
+#: cp/decl.c:2254 cp/decl.c:2353
msgid " enters try block"
msgstr ""
-#. Can't skip init of __exception_info.
-#: cp/decl.c:5305 cp/decl.c:5399 cp/decl.c:5409
+#: cp/decl.c:2256 cp/decl.c:2355
msgid " enters catch block"
msgstr ""
-#: cp/decl.c:5388
+#: cp/decl.c:2334
msgid " from here"
msgstr " адÑюль"
-#: cp/decl.c:5401
+#. Can't skip init of __exception_info.
+#: cp/decl.c:2345
+msgid "%J enters catch block"
+msgstr ""
+
+#: cp/decl.c:2347
#, fuzzy
msgid " skips initialization of `%#D'"
msgstr "ініцыÑлізацыÑ"
-#: cp/decl.c:5437
+#: cp/decl.c:2381
msgid "label named wchar_t"
msgstr ""
-#: cp/decl.c:5440
+#: cp/decl.c:2384
#, fuzzy
msgid "duplicate label `%D'"
msgstr "паўтарÑнне \"%s\""
-#: cp/decl.c:5525
-#, c-format
-msgid "case label `%E' not within a switch statement"
-msgstr ""
-
-#. Definition isn't the kind we were looking for.
-#: cp/decl.c:5704 cp/decl.c:5723
-msgid "`%#D' redeclared as %C"
-msgstr ""
-
-#. This happens for A::B where B is a template, and there are no
-#. template arguments.
-#: cp/decl.c:5811 cp/typeck.c:2069 cp/typeck.c:2229
-msgid "invalid use of `%D'"
-msgstr "нерÑчаіÑнае выкарыÑтаньне `%D'"
-
-#: cp/decl.c:5852
-msgid "`%D::%D' is not a template"
-msgstr ""
-
-#: cp/decl.c:5869
-msgid "`%D' undeclared in namespace `%D'"
-msgstr ""
-
-#: cp/decl.c:6002
+#: cp/decl.c:2612 cp/parser.c:3178
msgid "`%D' used without template parameters"
msgstr ""
-#: cp/decl.c:6013 cp/decl.c:6029 cp/decl.c:6139
+#: cp/decl.c:2622 cp/decl.c:2638 cp/decl.c:2726
msgid "no class template named `%#T' in `%#T'"
msgstr ""
-#: cp/decl.c:6055 cp/decl.c:6065 cp/decl.c:6100
+#: cp/decl.c:2659 cp/decl.c:2669 cp/decl.c:2689
msgid "no type named `%#T' in `%#T'"
msgstr ""
-#: cp/decl.c:6329
-msgid "lookup of `%D' finds `%#D'"
-msgstr ""
-
-#: cp/decl.c:6331
-msgid " instead of `%D' from dependent base class"
-msgstr ""
-
-#: cp/decl.c:6333
-msgid " (use `typename %T::%D' if that's what you meant)"
-msgstr ""
-
-#: cp/decl.c:6364
-msgid "name lookup of `%D' changed"
-msgstr ""
-
-#: cp/decl.c:6366
-msgid " matches this `%D' under ISO standard rules"
-msgstr ""
-
-#: cp/decl.c:6368
-msgid " matches this `%D' under old rules"
-msgstr ""
-
-#: cp/decl.c:6382 cp/decl.c:6389
-msgid "name lookup of `%D' changed for new ISO `for' scoping"
-msgstr ""
-
-#: cp/decl.c:6384
-msgid " cannot use obsolete binding at `%D' because it has a destructor"
-msgstr ""
-
-#: cp/decl.c:6391
-msgid " using obsolete binding at `%D'"
-msgstr ""
-
-#: cp/decl.c:6609
-msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
+#: cp/decl.c:3416
+msgid "%Jan anonymous union cannot have function members"
msgstr ""
-#: cp/decl.c:7432
-msgid "an anonymous union cannot have function members"
-msgstr ""
-
-#: cp/decl.c:7449
+#: cp/decl.c:3434
msgid "member %#D' with constructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7452
+#: cp/decl.c:3437
msgid "member %#D' with destructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7455
+#: cp/decl.c:3440
msgid "member %#D' with copy assignment operator not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7493
+#: cp/decl.c:3480
msgid "redeclaration of C++ built-in type `%T'"
msgstr ""
-#: cp/decl.c:7529
+#: cp/decl.c:3518
msgid "multiple types in one declaration"
msgstr ""
-#: cp/decl.c:7556
+#: cp/decl.c:3544
msgid "missing type-name in typedef-declaration"
msgstr ""
-#: cp/decl.c:7563
+#: cp/decl.c:3552
msgid "ISO C++ prohibits anonymous structs"
msgstr ""
-#: cp/decl.c:7570
+#: cp/decl.c:3559
msgid "`%D' can only be specified for functions"
msgstr ""
-#: cp/decl.c:7572
+#: cp/decl.c:3561
msgid "`%D' can only be specified inside a class"
msgstr ""
-#: cp/decl.c:7574
+#: cp/decl.c:3563
msgid "`%D' can only be specified for constructors"
msgstr ""
-#: cp/decl.c:7577
+#: cp/decl.c:3566
msgid "`%D' can only be specified for objects and functions"
msgstr ""
-#: cp/decl.c:7719 cp/decl2.c:936
+#: cp/decl.c:3708 cp/decl2.c:861
#, fuzzy
msgid "typedef `%D' is initialized (use __typeof__ instead)"
msgstr "параметр \"%s\" ініцыÑлізаваны"
-#: cp/decl.c:7724
+#: cp/decl.c:3713
msgid "function `%#D' is initialized like a variable"
msgstr ""
-#: cp/decl.c:7736
+#: cp/decl.c:3725
msgid "declaration of `%#D' has `extern' and is initialized"
msgstr ""
-#: cp/decl.c:7770
+#: cp/decl.c:3758
msgid "`%#D' is not a static member of `%#T'"
msgstr ""
-#: cp/decl.c:7775
+#: cp/decl.c:3764
msgid "ISO C++ does not permit `%T::%D' to be defined as `%T::%D'"
msgstr ""
-#: cp/decl.c:7786
+#: cp/decl.c:3775
msgid "duplicate initialization of %D"
msgstr ""
-#: cp/decl.c:7815
+#: cp/decl.c:3806
msgid "declaration of `%#D' outside of class is not definition"
msgstr ""
-#: cp/decl.c:7865
+#: cp/decl.c:3857
#, fuzzy
msgid "variable `%#D' has initializer but incomplete type"
msgstr "\"%s\" мае незавершаны тып"
-#: cp/decl.c:7873 cp/decl.c:8432
+#: cp/decl.c:3865 cp/decl.c:4426
#, fuzzy
msgid "elements of array `%#D' have incomplete type"
msgstr "\"%s\" мае незавершаны тып"
-#: cp/decl.c:7889
+#: cp/decl.c:3881
msgid "aggregate `%#D' has incomplete type and cannot be defined"
msgstr ""
-#: cp/decl.c:7931
+#: cp/decl.c:3923
msgid "`%D' declared as reference but not initialized"
msgstr ""
-#: cp/decl.c:7940
+#: cp/decl.c:3929
msgid "ISO C++ forbids use of initializer list to initialize reference `%D'"
msgstr ""
-#: cp/decl.c:7970
+#: cp/decl.c:3957
#, fuzzy
msgid "cannot initialize `%T' from `%T'"
msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
-#: cp/decl.c:8004
+#: cp/decl.c:3989
msgid "initializer fails to determine size of `%D'"
msgstr ""
-#: cp/decl.c:8009
+#: cp/decl.c:3994
msgid "array size missing in `%D'"
msgstr "прапушчан памер маÑіва Ñž `%D'"
-#: cp/decl.c:8021
+#: cp/decl.c:4006
msgid "zero-size array `%D'"
msgstr "нулÑвы памер маÑіва `%D'"
#. An automatic variable with an incomplete type: that is an error.
#. Don't talk about array types here, since we took care of that
#. message in grokdeclarator.
-#: cp/decl.c:8059
+#: cp/decl.c:4043
msgid "storage size of `%D' isn't known"
msgstr ""
-#: cp/decl.c:8081
+#: cp/decl.c:4065
msgid "storage size of `%D' isn't constant"
msgstr ""
-#: cp/decl.c:8137
+#: cp/decl.c:4120
msgid "sorry: semantics of inline function static data `%#D' are wrong (you'll wind up with multiple copies)"
msgstr ""
-#: cp/decl.c:8138
-msgid " you can work around this by removing the initializer"
+#: cp/decl.c:4121
+msgid "%J you can work around this by removing the initializer"
msgstr ""
-#: cp/decl.c:8164
+#: cp/decl.c:4147
#, fuzzy
msgid "uninitialized const `%D'"
msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
-#: cp/decl.c:8249
+#: cp/decl.c:4226
#, fuzzy
msgid "brace-enclosed initializer used to initialize `%T'"
msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
-#: cp/decl.c:8313
+#: cp/decl.c:4290
msgid "initializer for `%T' must be brace-enclosed"
msgstr ""
-#: cp/decl.c:8328
+#: cp/decl.c:4307
msgid "ISO C++ does not allow designated initializers"
msgstr ""
-#: cp/decl.c:8332
+#: cp/decl.c:4311
msgid "`%T' has no non-static data member named `%D'"
msgstr ""
-#: cp/decl.c:8389
+#: cp/decl.c:4359
+msgid "name `%D' used in a GNU-style designated initializer for an array"
+msgstr ""
+
+#: cp/decl.c:4382
#, fuzzy
msgid "too many initializers for `%T'"
msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
-#: cp/decl.c:8426
+#: cp/decl.c:4420
msgid "variable-sized object `%D' may not be initialized"
msgstr ""
-#: cp/decl.c:8437
+#: cp/decl.c:4431
#, fuzzy
msgid "`%D' has incomplete type"
msgstr "\"%s\" мае незавершаны тып"
-#: cp/decl.c:8486
+#: cp/decl.c:4486
msgid "`%D' must be initialized by constructor, not by `{...}'"
msgstr ""
-#: cp/decl.c:8527
+#: cp/decl.c:4530
msgid "structure `%D' with uninitialized const members"
msgstr ""
-#: cp/decl.c:8529
+#: cp/decl.c:4532
msgid "structure `%D' with uninitialized reference members"
msgstr ""
-#: cp/decl.c:8770
+#: cp/decl.c:4713
msgid "assignment (not initialization) in declaration"
msgstr ""
-#: cp/decl.c:8785
+#: cp/decl.c:4730
#, fuzzy
msgid "cannot initialize `%D' to namespace `%D'"
msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
-#: cp/decl.c:8836
+#: cp/decl.c:4780
#, fuzzy
msgid "shadowing previous type declaration of `%#D'"
msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-#: cp/decl.c:8883
+#: cp/decl.c:4816
msgid "`%D' cannot be thread-local because it has non-POD type `%T'"
msgstr ""
-#: cp/decl.c:8898
+#: cp/decl.c:4831
msgid "`%D' is thread-local and so cannot be dynamically initialized"
msgstr ""
-#: cp/decl.c:9298 cp/init.c:562
-msgid "multiple initializations given for `%D'"
-msgstr ""
-
-#: cp/decl.c:9390
+#: cp/decl.c:5313
msgid "invalid catch parameter"
msgstr ""
-#: cp/decl.c:9508
+#: cp/decl.c:5427
msgid "destructor for alien class `%T' cannot be a member"
msgstr ""
-#: cp/decl.c:9511
+#: cp/decl.c:5430
msgid "constructor for alien class `%T' cannot be a member"
msgstr ""
-#: cp/decl.c:9530
+#: cp/decl.c:5452
msgid "`%D' declared as a `virtual' %s"
msgstr ""
-#: cp/decl.c:9532
+#: cp/decl.c:5454
msgid "`%D' declared as an `inline' %s"
msgstr ""
-#: cp/decl.c:9534
+#: cp/decl.c:5456
msgid "`const' and `volatile' function specifiers on `%D' invalid in %s declaration"
msgstr ""
-#: cp/decl.c:9537
+#: cp/decl.c:5459
msgid "`%D' declared as a friend"
msgstr ""
-#: cp/decl.c:9543
+#: cp/decl.c:5465
#, fuzzy
msgid "`%D' declared with an exception specification"
msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: cp/decl.c:9618
+#: cp/decl.c:5544
msgid "cannot declare `::main' to be a template"
msgstr ""
-#: cp/decl.c:9620
+#: cp/decl.c:5546
msgid "cannot declare `::main' to be inline"
msgstr ""
-#: cp/decl.c:9622
+#: cp/decl.c:5548
msgid "cannot declare `::main' to be static"
msgstr ""
-#: cp/decl.c:9625
+#: cp/decl.c:5551
msgid "`main' must return `int'"
msgstr "`main' павінна вÑртаць `int'"
-#: cp/decl.c:9653
+#: cp/decl.c:5579
msgid "non-local function `%#D' uses anonymous type"
msgstr ""
-#: cp/decl.c:9656
+#: cp/decl.c:5582
msgid "`%#D' does not refer to the unqualified type, so it is not used for linkage"
msgstr ""
-#: cp/decl.c:9662
+#: cp/decl.c:5588
msgid "non-local function `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:9691
+#: cp/decl.c:5612
msgid "%smember function `%D' cannot have `%T' method qualifier"
msgstr ""
-#: cp/decl.c:9715
+#: cp/decl.c:5636
msgid "defining explicit specialization `%D' in friend declaration"
msgstr ""
#. Something like `template <class T> friend void f<T>()'.
-#: cp/decl.c:9725
+#: cp/decl.c:5646
msgid "invalid use of template-id `%D' in declaration of primary template"
msgstr ""
-#: cp/decl.c:9753
+#: cp/decl.c:5673
msgid "default arguments are not allowed in declaration of friend template specialization `%D'"
msgstr ""
-#: cp/decl.c:9760
+#: cp/decl.c:5680
msgid "`inline' is not allowed in declaration of friend template specialization `%D'"
msgstr ""
-#: cp/decl.c:9822
+#: cp/decl.c:5741
msgid "definition of implicitly-declared `%D'"
msgstr ""
-#: cp/decl.c:9834 cp/decl2.c:785
+#: cp/decl.c:5759 cp/decl2.c:744
msgid "no `%#D' member function declared in class `%T'"
msgstr ""
-#: cp/decl.c:9967
+#: cp/decl.c:5893
msgid "non-local variable `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:10064
+#: cp/decl.c:6008
msgid "invalid in-class initialization of static data member of non-integral type `%T'"
msgstr ""
-#: cp/decl.c:10073
+#: cp/decl.c:6017
msgid "ISO C++ forbids in-class initialization of non-const static member `%D'"
msgstr ""
-#: cp/decl.c:10076
+#: cp/decl.c:6020
msgid "ISO C++ forbids initialization of member constant `%D' of non-integral type `%T'"
msgstr ""
-#: cp/decl.c:10126
-msgid "size of array `%D' has non-integer type"
+#: cp/decl.c:6039
+#, fuzzy
+msgid "size of array `%D' has non-integral type `%T'"
msgstr "памер маÑіва `%D' не цÑлалікавы тып"
-#: cp/decl.c:10128
+#: cp/decl.c:6041
#, fuzzy
-msgid "size of array has non-integer type"
+msgid "size of array has non-integral type `%T'"
msgstr "памер маÑіва \"%s\" адмоўны"
-#: cp/decl.c:10148
+#: cp/decl.c:6077
msgid "size of array `%D' is negative"
msgstr "памер маÑіва `%D' - адмоўны"
-#: cp/decl.c:10150
+#: cp/decl.c:6079
msgid "size of array is negative"
msgstr "адмоўны памер маÑіва "
-#: cp/decl.c:10159
+#: cp/decl.c:6087
msgid "ISO C++ forbids zero-size array `%D'"
msgstr ""
-#: cp/decl.c:10161
+#: cp/decl.c:6089
#, fuzzy
msgid "ISO C++ forbids zero-size array"
msgstr "ISO C не дазвалÑе дÑкларацыі метак (label)"
-#: cp/decl.c:10168
+#: cp/decl.c:6096
#, fuzzy
msgid "size of array `%D' is not an integral constant-expression"
msgstr "памер маÑіва \"%s\" адмоўны"
-#: cp/decl.c:10171
+#: cp/decl.c:6099
msgid "size of array is not an integral constant-expression"
msgstr ""
-#: cp/decl.c:10189
+#: cp/decl.c:6104
msgid "ISO C++ forbids variable-size array `%D'"
msgstr ""
-#: cp/decl.c:10192
+#: cp/decl.c:6106
#, fuzzy
msgid "ISO C++ forbids variable-size array"
msgstr "ISO C не дазвалÑе дÑкларацыі метак (label)"
-#: cp/decl.c:10203
+#: cp/decl.c:6128
msgid "overflow in array dimension"
msgstr ""
-#: cp/decl.c:10262
+#: cp/decl.c:6222
msgid "declaration of `%D' as %s"
msgstr ""
-#: cp/decl.c:10264
+#: cp/decl.c:6224
#, c-format
msgid "creating %s"
msgstr ""
-#: cp/decl.c:10276
+#: cp/decl.c:6236
msgid "declaration of `%D' as multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:10279
+#: cp/decl.c:6239
msgid "multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:10308
+#: cp/decl.c:6267
msgid "return type specification for constructor invalid"
msgstr ""
-#: cp/decl.c:10315
+#: cp/decl.c:6274
msgid "return type specification for destructor invalid"
msgstr ""
-#: cp/decl.c:10321
+#: cp/decl.c:6280
msgid "operator `%T' declared to return `%T'"
msgstr ""
-#: cp/decl.c:10323
+#: cp/decl.c:6282
msgid "return type specified for `operator %T'"
msgstr ""
-#: cp/decl.c:10491
+#: cp/decl.c:6425
msgid "destructors must be member functions"
msgstr ""
-#: cp/decl.c:10510
+#: cp/decl.c:6444
msgid "destructor `%T' must match class name `%T'"
msgstr ""
-#: cp/decl.c:10539
-msgid "variable declaration is not allowed here"
-msgstr ""
-
-#: cp/decl.c:10566
-msgid "invalid declarator"
-msgstr "нерÑчаіÑны абвÑшчальнік"
-
-#: cp/decl.c:10617
+#: cp/decl.c:6507
msgid "declarator-id missing; using reserved word `%D'"
msgstr ""
-#: cp/decl.c:10674
+#: cp/decl.c:6561
msgid "type `%T' is not derived from type `%T'"
msgstr ""
#. Parse error puts this typespec where
#. a declarator should go.
-#: cp/decl.c:10726
+#: cp/decl.c:6624
msgid "`%T' specified as declarator-id"
msgstr ""
-#: cp/decl.c:10728
+#: cp/decl.c:6626
msgid " perhaps you want `%T' for a constructor"
msgstr ""
@@ -15094,309 +14343,309 @@ msgstr ""
#. decl-specifier like in
#. std::allocator alloc;
#. Handle that gracefully.
-#: cp/decl.c:10750
+#: cp/decl.c:6648
#, fuzzy, c-format
msgid "invalid use of template-name '%E' in a declarator"
msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: cp/decl.c:10770
+#: cp/decl.c:6668
msgid "declaration of `%D' as non-function"
msgstr ""
-#: cp/decl.c:10847
+#: cp/decl.c:6745
msgid "`bool' is now a keyword"
msgstr ""
-#: cp/decl.c:10849
+#: cp/decl.c:6747
msgid "extraneous `%T' ignored"
msgstr ""
-#: cp/decl.c:10865 cp/decl.c:10910
+#: cp/decl.c:6763 cp/decl.c:6807
msgid "multiple declarations `%T' and `%T'"
msgstr "неаднолькавае абвÑшчÑньне `%T' Ñ– `%T'"
-#: cp/decl.c:10878
+#: cp/decl.c:6776
msgid "ISO C++ does not support `long long'"
msgstr "ISO C++ не падтрымлівае \"long long\""
-#: cp/decl.c:10983 cp/decl.c:10986
+#: cp/decl.c:6880 cp/decl.c:6883
#, fuzzy, c-format
msgid "ISO C++ forbids declaration of `%s' with no type"
msgstr "ISO C не дазвалÑе дÑкларацыі метак (label)"
-#. The implicit typename extension is deprecated and will be
-#. removed. Warn about its use now.
-#: cp/decl.c:10996
-msgid "`%T' is implicitly a typename"
-msgstr ""
-
-#: cp/decl.c:11032
+#: cp/decl.c:6914
#, c-format
msgid "short, signed or unsigned invalid for `%s'"
msgstr ""
-#: cp/decl.c:11037
+#: cp/decl.c:6919
#, c-format
msgid "long and short specified together for `%s'"
msgstr ""
-#: cp/decl.c:11048
+#: cp/decl.c:6930
#, c-format
msgid "signed and unsigned given together for `%s'"
msgstr ""
-#: cp/decl.c:11157
+#: cp/decl.c:7039
msgid "qualifiers are not allowed on declaration of `operator %T'"
msgstr ""
-#: cp/decl.c:11179
+#: cp/decl.c:7061
msgid "member `%D' cannot be declared both virtual and static"
msgstr ""
-#: cp/decl.c:11188
+#: cp/decl.c:7070
#, fuzzy
msgid "`%T::%D' is not a valid declarator"
msgstr "\"%s\" - гÑта не пачатак дÑкларацыі"
-#: cp/decl.c:11200
+#: cp/decl.c:7082
msgid "storage class specifiers invalid in parameter declarations"
msgstr ""
-#: cp/decl.c:11204
+#: cp/decl.c:7086
msgid "typedef declaration invalid in parameter declaration"
msgstr ""
-#: cp/decl.c:11217
+#: cp/decl.c:7099
msgid "virtual outside class declaration"
msgstr ""
-#: cp/decl.c:11278
+#: cp/decl.c:7158
#, c-format
msgid "storage class specified for %s `%s'"
msgstr ""
-#: cp/decl.c:11325
+#: cp/decl.c:7193
+#, c-format
+msgid "top-level declaration of `%s' specifies `auto'"
+msgstr ""
+
+#: cp/decl.c:7205
msgid "storage class specifiers invalid in friend function declarations"
msgstr ""
-#: cp/decl.c:11495
+#: cp/decl.c:7370
msgid "destructor cannot be static member function"
msgstr ""
-#: cp/decl.c:11498
+#: cp/decl.c:7373
#, c-format
msgid "destructors may not be `%s'"
msgstr ""
-#: cp/decl.c:11519
+#: cp/decl.c:7394
msgid "constructor cannot be static member function"
msgstr ""
-#: cp/decl.c:11522
+#: cp/decl.c:7397
msgid "constructors cannot be declared virtual"
msgstr ""
-#: cp/decl.c:11527
+#: cp/decl.c:7402
#, c-format
msgid "constructors may not be `%s'"
msgstr ""
-#: cp/decl.c:11537
+#: cp/decl.c:7412
msgid "return value type specifier for constructor ignored"
msgstr ""
-#: cp/decl.c:11556
+#: cp/decl.c:7431
#, c-format
msgid "can't initialize friend function `%s'"
msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
#. Cannot be both friend and virtual.
-#: cp/decl.c:11560
+#: cp/decl.c:7435
msgid "virtual functions cannot be friends"
msgstr "Ð²Ñ–Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ñ‹Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ– не могуць быць ÑÑброўÑкімі"
-#: cp/decl.c:11565
+#: cp/decl.c:7440
msgid "friend declaration not in class definition"
msgstr ""
-#: cp/decl.c:11567
+#: cp/decl.c:7442
#, fuzzy, c-format
msgid "can't define friend function `%s' in a local class definition"
msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
-#: cp/decl.c:11591
+#: cp/decl.c:7463
msgid "destructors may not have parameters"
msgstr ""
-#: cp/decl.c:11622 cp/decl.c:11629
+#: cp/decl.c:7483 cp/decl.c:7490
#, fuzzy
msgid "cannot declare reference to `%#T'"
msgstr "Ðе магу знайÑці файл Ð´Ð»Ñ ÐºÐ»Ð°Ñа %s."
-#: cp/decl.c:11623
+#: cp/decl.c:7484
#, fuzzy
msgid "cannot declare pointer to `%#T'"
msgstr "\"%s\" мае незавершаны тып"
-#: cp/decl.c:11628
+#: cp/decl.c:7489
msgid "cannot declare pointer to `%#T' member"
msgstr ""
-#: cp/decl.c:11804
+#: cp/decl.c:7627
msgid "extra qualification `%T::' on member `%s' ignored"
msgstr ""
-#: cp/decl.c:11814
+#: cp/decl.c:7639
msgid "cannot declare member function `%T::%s' within `%T'"
msgstr ""
-#: cp/decl.c:11829
+#: cp/decl.c:7654
msgid "cannot declare member `%T::%s' within `%T'"
msgstr ""
-#: cp/decl.c:11908
+#: cp/decl.c:7734
msgid "data member may not have variably modified type `%T'"
msgstr ""
-#: cp/decl.c:11910
+#: cp/decl.c:7736
msgid "parameter may not have variably modified type `%T'"
msgstr ""
#. [dcl.fct.spec] The explicit specifier shall only be used in
#. declarations of constructors within a class definition.
-#: cp/decl.c:11918
+#: cp/decl.c:7744
msgid "only declarations of constructors can be `explicit'"
msgstr ""
-#: cp/decl.c:11926
+#: cp/decl.c:7752
#, c-format
msgid "non-member `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11931
+#: cp/decl.c:7757
#, c-format
msgid "non-object member `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11937
+#: cp/decl.c:7763
#, c-format
msgid "function `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11942
+#: cp/decl.c:7768
#, c-format
msgid "static `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11947
+#: cp/decl.c:7773
#, c-format
msgid "const `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11960
+#: cp/decl.c:7786
msgid "template-id `%D' used as a declarator"
msgstr ""
-#: cp/decl.c:11981
+#: cp/decl.c:7807
msgid "ISO C++ forbids nested type `%D' with same name as enclosing class"
msgstr ""
-#: cp/decl.c:12030
-msgid "typedef name may not be class-qualified"
+#: cp/decl.c:7815
+msgid "%Jtypedef name may not be a nested-name-specifier"
msgstr ""
-#: cp/decl.c:12038
-msgid "invalid type qualifier for non-member function type"
-msgstr ""
+#: cp/decl.c:7861
+#, fuzzy
+msgid "%Jinvalid type qualifier for non-member function type"
+msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
-#: cp/decl.c:12101
+#: cp/decl.c:7925
msgid "type qualifiers specified for friend class declaration"
msgstr ""
-#: cp/decl.c:12106
+#: cp/decl.c:7930
msgid "`inline' specified for friend class declaration"
msgstr ""
-#: cp/decl.c:12114
+#: cp/decl.c:7938
#, fuzzy
msgid "template parameters cannot be friends"
msgstr "Ð²Ñ–Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ñ‹Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ– не могуць быць ÑÑброўÑкімі"
-#: cp/decl.c:12116
+#: cp/decl.c:7940
msgid "friend declaration requires class-key, i.e. `friend class %T::%D'"
msgstr ""
-#: cp/decl.c:12120
+#: cp/decl.c:7944
msgid "friend declaration requires class-key, i.e. `friend %#T'"
msgstr ""
-#: cp/decl.c:12134
+#: cp/decl.c:7957
msgid "trying to make class `%T' a friend of global scope"
msgstr ""
-#: cp/decl.c:12145
+#: cp/decl.c:7968
msgid "invalid qualifiers on non-member function type"
msgstr ""
-#: cp/decl.c:12164
+#: cp/decl.c:7987
msgid "abstract declarator `%T' used as declaration"
msgstr ""
-#: cp/decl.c:12176
+#: cp/decl.c:7999
msgid "unnamed variable or field declared void"
msgstr ""
-#: cp/decl.c:12185
+#: cp/decl.c:8008
msgid "variable or field declared void"
msgstr ""
-#: cp/decl.c:12195
+#: cp/decl.c:8018
msgid "cannot use `::' in parameter declaration"
msgstr ""
#. Something like struct S { int N::j; };
-#: cp/decl.c:12234
+#: cp/decl.c:8063
msgid "invalid use of `::'"
msgstr "нерÑчаіÑнае выкарыÑтаньне `::'"
-#: cp/decl.c:12246
+#: cp/decl.c:8075
#, fuzzy
msgid "function `%D' cannot be declared friend"
msgstr "Ð²Ñ–Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ñ‹Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ– не могуць быць ÑÑброўÑкімі"
-#: cp/decl.c:12258
+#: cp/decl.c:8087
msgid "can't make `%D' into a method -- not in a class"
msgstr ""
-#: cp/decl.c:12267
+#: cp/decl.c:8096
#, fuzzy
msgid "function `%D' declared virtual inside a union"
msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: cp/decl.c:12279
+#: cp/decl.c:8108
msgid "`%D' cannot be declared virtual, since it is always static"
msgstr ""
-#: cp/decl.c:12355
+#: cp/decl.c:8185
#, fuzzy
msgid "field `%D' has incomplete type"
msgstr "\"%s\" мае незавершаны тып"
-#: cp/decl.c:12357
+#: cp/decl.c:8187
#, fuzzy
msgid "name `%T' has incomplete type"
msgstr "\"%s\" мае незавершаны тып"
-#: cp/decl.c:12366
+#: cp/decl.c:8196
msgid " in instantiation of template `%T'"
msgstr ""
-#: cp/decl.c:12376
+#: cp/decl.c:8206
#, c-format
msgid "`%s' is neither function nor member function; cannot be declared friend"
msgstr ""
-#: cp/decl.c:12387
+#: cp/decl.c:8217
msgid "member functions are implicitly friends of their class"
msgstr ""
@@ -15412,101 +14661,96 @@ msgstr ""
#. the rest of the compiler does not correctly
#. handle the initialization unless the member is
#. static so we make it static below.
-#: cp/decl.c:12434
+#: cp/decl.c:8258
msgid "ISO C++ forbids initialization of member `%D'"
msgstr ""
-#: cp/decl.c:12436
+#: cp/decl.c:8260
msgid "making `%D' static"
msgstr ""
-#: cp/decl.c:12460
+#: cp/decl.c:8283
msgid "ISO C++ forbids static data member `%D' with same name as enclosing class"
msgstr ""
-#: cp/decl.c:12501
+#: cp/decl.c:8323
#, c-format
msgid "storage class `auto' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:12503
+#: cp/decl.c:8325
#, c-format
msgid "storage class `register' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:12505
+#: cp/decl.c:8327
#, c-format
msgid "storage class `__thread' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:12516
+#: cp/decl.c:8338
#, c-format
msgid "storage class `static' invalid for function `%s' declared out of global scope"
msgstr ""
-#: cp/decl.c:12518
+#: cp/decl.c:8340
#, c-format
msgid "storage class `inline' invalid for function `%s' declared out of global scope"
msgstr ""
-#: cp/decl.c:12525
+#: cp/decl.c:8347
#, c-format
msgid "virtual non-class function `%s'"
msgstr ""
-#: cp/decl.c:12554
+#: cp/decl.c:8377
msgid "cannot declare member function `%D' to have static linkage"
msgstr ""
#. FIXME need arm citation
-#: cp/decl.c:12560
+#: cp/decl.c:8383
msgid "cannot declare static function inside another function"
msgstr ""
-#: cp/decl.c:12588
+#: cp/decl.c:8411
msgid "`static' may not be used when defining (as opposed to declaring) a static data member"
msgstr ""
-#: cp/decl.c:12594
+#: cp/decl.c:8417
msgid "static member `%D' declared `register'"
msgstr ""
-#: cp/decl.c:12599
+#: cp/decl.c:8422
msgid "cannot explicitly declare member `%#D' to have extern linkage"
msgstr ""
-#: cp/decl.c:12774
+#: cp/decl.c:8564
msgid "default argument for `%#D' has type `%T'"
msgstr "звычайны аргумÑнт Ð´Ð»Ñ `%#D' мае тып `%T'"
-#: cp/decl.c:12777
+#: cp/decl.c:8567
msgid "default argument for parameter of type `%T' has type `%T'"
msgstr ""
-#: cp/decl.c:12794
+#: cp/decl.c:8584
msgid "default argument `%E' uses local variable `%D'"
msgstr ""
-#: cp/decl.c:12839
+#: cp/decl.c:8628
#, c-format
msgid "invalid string constant `%E'"
msgstr "`%E' - нерÑчаіÑÐ½Ð°Ñ Ð½ÑÐ·ÑŒÐ¼ÐµÐ½Ð½Ð°Ñ Ñ‚Ñ‹Ð¿Ñƒ string"
-#: cp/decl.c:12841
+#: cp/decl.c:8630
msgid "invalid integer constant in parameter list, did you forget to give parameter name?"
msgstr ""
-#: cp/decl.c:12879
+#: cp/decl.c:8668
#, fuzzy
msgid "parameter `%D' invalidly declared method type"
msgstr "тып параметра \"%s\" не аб'Ñўлены"
-#: cp/decl.c:12885
-#, fuzzy
-msgid "parameter `%D' invalidly declared offset type"
-msgstr "тып параметра \"%s\" не аб'Ñўлены"
-
-#: cp/decl.c:12909
+#: cp/decl.c:8692
msgid "parameter `%D' includes %s to array of unknown bound `%T'"
msgstr ""
@@ -15525,524 +14769,358 @@ msgstr ""
#. or implicitly defined), there's no need to worry about their
#. existence. Theoretically, they should never even be
#. instantiated, but that's hard to forestall.
-#: cp/decl.c:13071
+#: cp/decl.c:8851
msgid "invalid constructor; you probably meant `%T (const %T&)'"
msgstr ""
-#: cp/decl.c:13222
+#: cp/decl.c:8991
msgid "`%D' must be a nonstatic member function"
msgstr ""
-#: cp/decl.c:13228
+#: cp/decl.c:8997
msgid "`%D' must be either a non-static member function or a non-member function"
msgstr ""
-#: cp/decl.c:13245
+#: cp/decl.c:9014
msgid "`%D' must have an argument of class or enumerated type"
msgstr ""
-#: cp/decl.c:13277
+#: cp/decl.c:9049
#, c-format
msgid "conversion to %s%s will never use a type conversion operator"
msgstr ""
#. 13.4.0.3
-#: cp/decl.c:13284
+#: cp/decl.c:9056
msgid "ISO C++ prohibits overloading operator ?:"
msgstr ""
-#: cp/decl.c:13334
+#: cp/decl.c:9106
msgid "postfix `%D' must take `int' as its argument"
msgstr ""
-#: cp/decl.c:13338
+#: cp/decl.c:9110
msgid "postfix `%D' must take `int' as its second argument"
msgstr ""
-#: cp/decl.c:13345
+#: cp/decl.c:9117
msgid "`%D' must take either zero or one argument"
msgstr ""
-#: cp/decl.c:13347
+#: cp/decl.c:9119
msgid "`%D' must take either one or two arguments"
msgstr ""
-#: cp/decl.c:13368
+#: cp/decl.c:9140
msgid "prefix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:13374
+#: cp/decl.c:9146
msgid "postfix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:13383
+#: cp/decl.c:9155
msgid "`%D' must take `void'"
msgstr ""
-#: cp/decl.c:13385 cp/decl.c:13393
+#: cp/decl.c:9157 cp/decl.c:9165
msgid "`%D' must take exactly one argument"
msgstr ""
-#: cp/decl.c:13395
+#: cp/decl.c:9167
msgid "`%D' must take exactly two arguments"
msgstr ""
-#: cp/decl.c:13403
+#: cp/decl.c:9175
msgid "user-defined `%D' always evaluates both arguments"
msgstr ""
-#: cp/decl.c:13417
+#: cp/decl.c:9189
msgid "`%D' should return by value"
msgstr ""
-#: cp/decl.c:13429 cp/decl.c:13432
+#: cp/decl.c:9201 cp/decl.c:9204
msgid "`%D' cannot have default arguments"
msgstr ""
-#: cp/decl.c:13475
+#: cp/decl.c:9264
msgid "using typedef-name `%D' after `%s'"
msgstr ""
-#: cp/decl.c:13481
+#: cp/decl.c:9270
msgid "using template type parameter `%T' after `%s'"
msgstr ""
-#: cp/decl.c:13542
-msgid "`%s %T' declares a new type at namespace scope"
-msgstr ""
+#: cp/decl.c:9278
+#, fuzzy
+msgid "`%T' referred to as `%s'"
+msgstr "не знойдзен ÐºÐ»Ð°Ñ \"%s\""
-#: cp/decl.c:13545
-msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
+#: cp/decl.c:9284
+msgid "`%T' referred to as enum"
msgstr ""
-#: cp/decl.c:13663
+#. If a class template appears as elaborated type specifier
+#. without a template header such as:
+#.
+#. template <class T> class C {};
+#. void f(class C); // No template header here
+#.
+#. then the required template argument is missing.
+#: cp/decl.c:9299
+#, fuzzy
+msgid "template argument required for `%s %T'"
+msgstr "невыкарыÑтаемы параметр \"%s\""
+
+#: cp/decl.c:9445
#, fuzzy
msgid "use of enum `%#D' without previous declaration"
msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
-#: cp/decl.c:13749
+#: cp/decl.c:9530
msgid "derived union `%T' invalid"
msgstr ""
-#: cp/decl.c:13795
+#: cp/decl.c:9583
msgid "base type `%T' fails to be a struct or class type"
msgstr ""
-#: cp/decl.c:13805
-msgid "base class `%T' has incomplete type"
-msgstr ""
-
-#: cp/decl.c:13813
+#: cp/decl.c:9591
msgid "recursive type `%T' undefined"
msgstr ""
-#: cp/decl.c:13815
+#: cp/decl.c:9593
msgid "duplicate base type `%T' invalid"
msgstr ""
-#: cp/decl.c:13926
+#: cp/decl.c:9671
+msgid "Java class '%T' cannot have multiple bases"
+msgstr ""
+
+#: cp/decl.c:9673
+msgid "Java class '%T' cannot have virtual bases"
+msgstr ""
+
+#: cp/decl.c:9713
msgid "multiple definition of `%#T'"
msgstr ""
-#: cp/decl.c:13927
-msgid "previous definition here"
+#: cp/decl.c:9714
+#, fuzzy
+msgid "%Jprevious definition here"
msgstr "папÑÑ€ÑднÑе вызначÑньне"
-#: cp/decl.c:14030
+#. DR 377
+#.
+#. IF no integral type can represent all the enumerator values, the
+#. enumeration is ill-formed.
+#: cp/decl.c:9849
msgid "no integral type can represent all of the enumerator values for `%T'"
msgstr ""
-#: cp/decl.c:14106
+#: cp/decl.c:9939
msgid "enumerator value for `%D' not integer constant"
msgstr ""
-#: cp/decl.c:14126
+#: cp/decl.c:9959
msgid "overflow in enumeration values at `%D'"
msgstr ""
-#: cp/decl.c:14195
+#: cp/decl.c:10028
#, fuzzy
msgid "return type `%#T' is incomplete"
msgstr "вÑртаемы тып \"%s\" не \"int\""
-#: cp/decl.c:14309
-#, fuzzy
-msgid "semicolon missing after declaration of `%#T'"
-msgstr "Ðе магу знайÑці дÑкларацыю інтÑрфейÑа Ð´Ð»Ñ \"%s\""
-
-#: cp/decl.c:14330
+#: cp/decl.c:10148
msgid "return type for `main' changed to `int'"
msgstr ""
-#: cp/decl.c:14361
+#: cp/decl.c:10178
#, fuzzy
msgid "`%D' implicitly declared before its definition"
msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: cp/decl.c:14383 cp/typeck.c:6314
+#: cp/decl.c:10200 cp/typeck.c:6011
msgid "`operator=' should return a reference to `*this'"
msgstr ""
-#: cp/decl.c:14643
+#: cp/decl.c:10472
#, fuzzy
msgid "parameter `%D' declared void"
msgstr "тып параметра \"%s\" не аб'Ñўлены"
-#: cp/decl.c:15130
+#: cp/decl.c:10938
+#, fuzzy
+msgid "invalid member function declaration"
+msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
+
+#: cp/decl.c:10955
msgid "`%D' is already defined in class `%T'"
msgstr ""
-#: cp/decl.c:15348
+#: cp/decl.c:11168
msgid "static member function `%#D' declared with type qualifiers"
msgstr ""
-#: cp/decl2.c:153
+#: cp/decl2.c:143
#, fuzzy, c-format
msgid "duplicate type qualifiers in %s declaration"
msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-#: cp/decl2.c:192
-msgid "template `%#D' instantiated in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:198
-msgid "template `%#D' defined in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:365
+#: cp/decl2.c:316
msgid "name missing for member function"
msgstr ""
-#. Something has gone very wrong. Assume we are mistakenly reducing
-#. an expression instead of a declaration.
-#: cp/decl2.c:428
-msgid "parser may be lost: is there a '{' missing somewhere?"
-msgstr ""
-
-#: cp/decl2.c:459 cp/decl2.c:473
+#: cp/decl2.c:408 cp/decl2.c:422
msgid "ambiguous conversion for array subscript"
msgstr ""
-#: cp/decl2.c:467
+#: cp/decl2.c:416
msgid "invalid types `%T[%T]' for array subscript"
msgstr ""
-#: cp/decl2.c:515
+#: cp/decl2.c:464
msgid "type `%#T' argument given to `delete', expected pointer"
msgstr ""
-#: cp/decl2.c:523
+#: cp/decl2.c:472
msgid "anachronistic use of array size in vector delete"
msgstr ""
-#: cp/decl2.c:533
+#: cp/decl2.c:482
msgid "cannot delete a function. Only pointer-to-objects are valid arguments to `delete'"
msgstr ""
-#: cp/decl2.c:540
+#: cp/decl2.c:489
#, fuzzy
msgid "deleting `%T' is undefined"
msgstr "метка \"%s\" ужываецца, але не вызначана"
-#: cp/decl2.c:548
+#: cp/decl2.c:497
msgid "deleting array `%#D'"
msgstr ""
#. 14.5.2.2 [temp.mem]
#.
#. A local class shall not have member templates.
-#: cp/decl2.c:582
+#: cp/decl2.c:530
msgid "invalid declaration of member template `%#D' in local class"
msgstr ""
-#: cp/decl2.c:591
+#: cp/decl2.c:539
msgid "invalid use of `virtual' in template declaration of `%#D'"
msgstr ""
-#: cp/decl2.c:601 cp/pt.c:2745
+#: cp/decl2.c:549 cp/pt.c:2830
#, fuzzy
msgid "template declaration of `%#D'"
msgstr "пуÑтое абвÑшчÑнне"
-#: cp/decl2.c:651
+#: cp/decl2.c:598
msgid "Java method '%D' has non-Java return type `%T'"
msgstr ""
-#: cp/decl2.c:660
+#: cp/decl2.c:614
msgid "Java method '%D' has non-Java parameter type `%T'"
msgstr ""
-#: cp/decl2.c:746
+#: cp/decl2.c:705
msgid "prototype for `%#D' does not match any in class `%T'"
msgstr ""
-#: cp/decl2.c:828
+#: cp/decl2.c:784
msgid "local class `%#T' shall not have static data member `%#D'"
msgstr ""
-#: cp/decl2.c:836
+#: cp/decl2.c:792
msgid "initializer invalid for static member with constructor"
msgstr ""
-#: cp/decl2.c:839
+#: cp/decl2.c:795
msgid "(an out of class initialization is required)"
msgstr ""
-#: cp/decl2.c:898
-#, fuzzy
-msgid "invalid data member initialization"
-msgstr "нерÑчаіÑны ініцыÑлізатар"
-
-#: cp/decl2.c:901
-msgid "(use `=' to initialize static data members)"
-msgstr ""
-
-#: cp/decl2.c:947
+#: cp/decl2.c:878
msgid "member `%D' conflicts with virtual function table field name"
msgstr ""
-#: cp/decl2.c:967
+#: cp/decl2.c:895
msgid "`%D' is already defined in `%T'"
msgstr ""
-#: cp/decl2.c:1014
+#: cp/decl2.c:942
msgid "field initializer is not constant"
msgstr ""
-#: cp/decl2.c:1038
+#: cp/decl2.c:970
msgid "`asm' specifiers are not permitted on non-static data members"
msgstr ""
-#: cp/decl2.c:1090
+#: cp/decl2.c:1020
msgid "cannot declare `%D' to be a bit-field type"
msgstr ""
-#: cp/decl2.c:1100
+#: cp/decl2.c:1030
msgid "cannot declare bit-field `%D' with function type"
msgstr ""
-#: cp/decl2.c:1107
+#: cp/decl2.c:1037
msgid "`%D' is already defined in the class %T"
msgstr ""
-#: cp/decl2.c:1114
+#: cp/decl2.c:1044
msgid "static member `%D' cannot be a bit-field"
msgstr ""
-#: cp/decl2.c:1201
+#: cp/decl2.c:1103
#, fuzzy
msgid "initializer specified for non-member function `%D'"
msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
-#: cp/decl2.c:1205
+#: cp/decl2.c:1107
#, fuzzy
msgid "invalid initializer for virtual method `%D'"
msgstr "нерÑчаіÑны ініцыÑлізатар"
-#: cp/decl2.c:1319
+#: cp/decl2.c:1154
msgid "anonymous struct not inside named type"
msgstr ""
-#: cp/decl2.c:1415
+#: cp/decl2.c:1224
msgid "namespace-scope anonymous aggregates must be static"
msgstr ""
-#: cp/decl2.c:1428
-msgid "anonymous aggregate with no members"
+#: cp/decl2.c:1231
+msgid "anonymous union with no members"
msgstr ""
-#: cp/decl2.c:1497
+#: cp/decl2.c:1265
msgid "`operator new' must return type `%T'"
msgstr ""
-#: cp/decl2.c:1505
+#: cp/decl2.c:1273
msgid "`operator new' takes type `size_t' (`%T') as first parameter"
msgstr ""
-#: cp/decl2.c:1532
+#: cp/decl2.c:1299
msgid "`operator delete' must return type `%T'"
msgstr ""
-#: cp/decl2.c:1540
+#: cp/decl2.c:1307
msgid "`operator delete' takes type `%T' as first parameter"
msgstr ""
-#. Overflow occurred. That means there are at least 4 billion
-#. initialization functions.
-#: cp/decl2.c:2282
-msgid "too many initialization functions required"
-msgstr ""
-
-#: cp/decl2.c:3006
+#: cp/decl2.c:2814
#, fuzzy
msgid "inline function `%D' used but never defined"
msgstr "адмеціна `%D' выкарыÑтоўвываецца, але Ð½Ñ Ð²Ñ‹Ð·Ð½Ð°Ñ‡Ð°Ð½Ð°"
-#: cp/decl2.c:3135
-msgid "use of old-style cast"
-msgstr ""
-
-#: cp/decl2.c:3860
-#, fuzzy
-msgid "use of `%D' is ambiguous"
-msgstr "памер \"%s\" - %d байт"
-
-#: cp/decl2.c:3861
-msgid " first declared as `%#D' here"
-msgstr ""
-
-#: cp/decl2.c:3864
-msgid " also declared as `%#D' here"
-msgstr ""
-
-#: cp/decl2.c:3879
-msgid "`%D' denotes an ambiguous type"
-msgstr ""
-
-#: cp/decl2.c:3880
-msgid " first type here"
-msgstr ""
-
-#: cp/decl2.c:3881
-msgid " other type here"
-msgstr ""
-
-#: cp/decl2.c:3982
-msgid "declaration of `%D' not in a namespace surrounding `%D'"
-msgstr ""
-
-#: cp/decl2.c:4016
-msgid "`%D' should have been declared inside `%D'"
-msgstr ""
-
-#: cp/decl2.c:4152
-msgid "`%D' is not a function,"
-msgstr "`%D' - гÑта Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ,"
-
-#: cp/decl2.c:4153
-msgid " conflict with `%D'"
-msgstr ""
-
-#. The parser did not find it, so it's not there.
-#: cp/decl2.c:4473
-#, fuzzy
-msgid "unknown namespace `%D'"
-msgstr "невÑдомы Ñ€Ñжым машыны \"%s\""
-
-#: cp/decl2.c:4507 cp/decl2.c:4794
-msgid "`%T' is not a namespace"
-msgstr ""
-
-#: cp/decl2.c:4509
-msgid "`%D' is not a namespace"
-msgstr ""
-
-#: cp/decl2.c:4518
-msgid "a using-declaration cannot specify a template-id. Try `using %D'"
-msgstr ""
-
-#: cp/decl2.c:4532
-#, fuzzy
-msgid "namespace `%D' not allowed in using-declaration"
-msgstr "\"%s\" - гÑта не пачатак дÑкларацыі"
-
-#: cp/decl2.c:4561
-msgid "`%D' not declared"
-msgstr ""
-
-#. If the OLD_FN was really declared, the
-#. declarations don't match.
-#: cp/decl2.c:4573 cp/decl2.c:4615 cp/decl2.c:4640
-msgid "`%D' is already declared in this scope"
-msgstr ""
-
-#: cp/decl2.c:4646
-msgid "using declaration `%D' introduced ambiguous type `%T'"
-msgstr ""
-
-#: cp/decl2.c:4740
-msgid "using-declaration for non-member at class scope"
-msgstr ""
-
-#: cp/decl2.c:4746
-msgid "using-declaration for destructor"
-msgstr ""
-
-#: cp/decl2.c:4752
-msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
-msgstr ""
-
-#: cp/decl2.c:4788
-msgid "namespace `%T' undeclared"
-msgstr ""
-
-#: cp/decl2.c:4817
+#: cp/decl2.c:2960
msgid "default argument missing for parameter %P of `%+#D'"
msgstr ""
-#: cp/decl2.c:4941
-msgid "extra qualification `%T::' on member `%D' ignored"
-msgstr ""
-
-#: cp/decl2.c:4945
-msgid "`%T' does not have a class or union named `%D'"
-msgstr ""
-
-#: cp/decl2.c:4963
-msgid "`%T' is not a class or union type"
-msgstr ""
-
-#: cp/decl2.c:4977
-#, fuzzy
-msgid "template argument is required for `%T'"
-msgstr "параметр \"%s\" ініцыÑлізаваны"
-
-#: cp/decl2.c:4995
-msgid "declaration of `%D' in `%D' which does not enclose `%D'"
-msgstr ""
-
-#: cp/error.c:35
-#, c-format
-msgid "`%s' not supported by %s"
-msgstr ""
-
-#: cp/error.c:571
-#, c-format
-msgid "<anonymous %s>"
-msgstr ""
-
-#: cp/error.c:810
-#, c-format
-msgid "(static %s for %s)"
-msgstr ""
-
-#: cp/error.c:1503
-#, c-format
-msgid "\\x%x"
-msgstr ""
-
-#: cp/error.c:2473
-#, c-format
-msgid "In %s `%s':"
-msgstr ""
-
-#: cp/error.c:2530
-#, c-format
-msgid "%s: In instantiation of `%s':\n"
-msgstr ""
-
-#: cp/error.c:2554
-#, c-format
-msgid "%s:%d: instantiated from `%s'\n"
-msgstr ""
-
-#: cp/error.c:2559
-#, c-format
-msgid "%s:%d: instantiated from here\n"
-msgstr ""
-
#. damn ICE suppression
-#: cp/error.c:2713
+#: cp/error.c:2374
#, c-format
msgid "unexpected letter `%c' in locate_error\n"
msgstr ""
@@ -16061,166 +15139,183 @@ msgstr ""
msgid "type `%T' is not derived from `java::lang::Throwable'"
msgstr ""
-#: cp/except.c:322
+#: cp/except.c:321
msgid "mixing C++ and Java catches in a single translation unit"
msgstr ""
-#: cp/except.c:639
+#: cp/except.c:630
msgid "throwing NULL, which has integral, not pointer type"
msgstr ""
-#: cp/except.c:730
+#: cp/except.c:653 cp/init.c:2029
+msgid "`%D' should never be overloaded"
+msgstr ""
+
+#: cp/except.c:722
msgid " in thrown expression"
msgstr ""
-#: cp/except.c:856
+#: cp/except.c:843
msgid "expression '%E' of abstract class type '%T' cannot be used in throw-expression"
msgstr ""
-#: cp/except.c:944
+#: cp/except.c:925
msgid "exception of type `%T' will be caught"
msgstr ""
-#: cp/except.c:947
+#: cp/except.c:928
msgid " by earlier handler for `%T'"
msgstr ""
-#: cp/except.c:968
+#: cp/except.c:949
msgid "`...' handler must be the last handler for its try block"
msgstr ""
-#: cp/friend.c:159
+#: cp/friend.c:151
#, fuzzy
msgid "`%D' is already a friend of class `%T'"
msgstr "не знойдзен ÐºÐ»Ð°Ñ \"%s\""
-#: cp/friend.c:161
-#, fuzzy
-msgid "previous friend declaration of `%D'"
-msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
-
-#: cp/friend.c:206
+#: cp/friend.c:202
msgid "invalid type `%T' declared `friend'"
msgstr ""
#. [temp.friend]
#. Friend declarations shall not declare partial
#. specializations.
-#: cp/friend.c:222
+#: cp/friend.c:218
msgid "partial specialization `%T' declared `friend'"
msgstr ""
-#: cp/friend.c:231
+#: cp/friend.c:228
msgid "class `%T' is implicitly friends with itself"
msgstr ""
#. template <class T> friend typename S<T>::X;
-#: cp/friend.c:249
+#: cp/friend.c:246
msgid "typename type `%#T' declared `friend'"
msgstr ""
#. template <class T> friend class T;
-#: cp/friend.c:255
+#: cp/friend.c:252
#, fuzzy
msgid "template parameter type `%T' declared `friend'"
msgstr "тып параметра \"%s\" не аб'Ñўлены"
#. template <class T> friend class A; where A is not a template
-#: cp/friend.c:261
+#: cp/friend.c:258
msgid "`%#T' is not a template"
msgstr ""
-#: cp/friend.c:276
+#: cp/friend.c:277
+#, fuzzy
+msgid "`%D' is already a friend of `%T'"
+msgstr "не знойдзен ÐºÐ»Ð°Ñ \"%s\""
+
+#: cp/friend.c:287
msgid "`%T' is already a friend of `%T'"
msgstr ""
-#: cp/friend.c:376
+#: cp/friend.c:413
msgid "member `%D' declared as friend before type `%T' defined"
msgstr ""
-#: cp/friend.c:431
+#: cp/friend.c:470
msgid "friend declaration `%#D' declares a non-template function"
msgstr ""
-#: cp/friend.c:434
+#: cp/friend.c:473
msgid "(if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) -Wno-non-template-friend disables this warning"
msgstr ""
-#: cp/g++spec.c:211 java/jvspec.c:423
+#: cp/g++spec.c:229 java/jvspec.c:415
#, c-format
msgid "argument to `%s' missing\n"
msgstr ""
-#: cp/init.c:334
+#: cp/init.c:318
msgid "`%D' should be initialized in the member initialization list"
msgstr ""
-#: cp/init.c:384
+#: cp/init.c:368
msgid "default-initialization of `%#D', which has reference type"
msgstr ""
-#: cp/init.c:389
+#: cp/init.c:373
msgid "uninitialized reference member `%D'"
msgstr ""
-#: cp/init.c:397
-msgid "initializer list treated as compound expression"
-msgstr ""
-
-#: cp/init.c:538
+#: cp/init.c:511
#, fuzzy
msgid "`%D' will be initialized after"
msgstr "параметр \"%s\" ініцыÑлізаваны"
-#: cp/init.c:541
+#: cp/init.c:514
#, fuzzy
msgid "base `%T' will be initialized after"
msgstr "ÐšÐ»Ð°Ñ \"%s\" ужо Ñ–Ñнуе"
-#: cp/init.c:544
+#: cp/init.c:517
#, fuzzy
msgid " `%#D'"
msgstr "Ñк `%D'"
-#: cp/init.c:546
+#: cp/init.c:519
#, fuzzy
msgid " base `%T'"
msgstr "Ñк `%D'"
-#: cp/init.c:564
+#: cp/init.c:520
+#, fuzzy
+msgid " when initialized here"
+msgstr "нерÑчаіÑны ініцыÑлізатар"
+
+#: cp/init.c:536
+msgid "multiple initializations given for `%D'"
+msgstr ""
+
+#: cp/init.c:538
#, fuzzy
msgid "multiple initializations given for base `%T'"
msgstr "ініцыÑлізацыÑ"
-#: cp/init.c:631
+#: cp/init.c:605
msgid "initializations for multiple members of `%T'"
msgstr ""
-#: cp/init.c:688
+#: cp/init.c:662
msgid "base class `%#T' should be explicitly initialized in the copy constructor"
msgstr ""
-#: cp/init.c:926
+#: cp/init.c:892 cp/init.c:911
msgid "class `%T' does not have any field named `%D'"
msgstr ""
-#: cp/init.c:932
-msgid "field `%#D' is static; the only point of initialization is its definition"
+#: cp/init.c:898
+msgid "`%#D' is a static data member; it can only be initialized at its definition"
msgstr ""
-#: cp/init.c:965
+#: cp/init.c:905
+msgid "`%#D' is not a non-static data member of `%T'"
+msgstr ""
+
+#: cp/init.c:944
msgid "unnamed initializer for `%T', which has no base classes"
msgstr ""
-#: cp/init.c:972
+#: cp/init.c:951
msgid "unnamed initializer for `%T', which uses multiple inheritance"
msgstr ""
-#: cp/init.c:1007
+#: cp/init.c:1006
+msgid "'%D' is both a direct base and an indirect virtual base"
+msgstr ""
+
+#: cp/init.c:1014
msgid "type `%D' is not a direct or virtual base of `%T'"
msgstr ""
-#: cp/init.c:1010
+#: cp/init.c:1017
msgid "type `%D' is not a direct base of `%T'"
msgstr ""
@@ -16236,548 +15331,857 @@ msgstr ""
#. COMPLEX zees(1.0, 0.0)[10];
#. }
#.
-#: cp/init.c:1104
+#: cp/init.c:1109
#, fuzzy
msgid "bad array initializer"
msgstr "нерÑчаіÑны ініцыÑлізатар"
-#: cp/init.c:1311
+#: cp/init.c:1303
#, fuzzy
msgid "`%T' is not an aggregate type"
msgstr "\"%s\" мае незавершаны тып"
-#: cp/init.c:1334
+#: cp/init.c:1324
msgid "`%T' fails to be an aggregate typedef"
msgstr ""
-#: cp/init.c:1343
+#: cp/init.c:1333
msgid "type `%T' is of non-aggregate type"
msgstr ""
-#: cp/init.c:1446
-msgid "cannot call destructor `%T::~%T' without object"
+#: cp/init.c:1425 cp/typeck.c:1798
+msgid "qualified type `%T' does not match destructor name `~%T'"
msgstr ""
-#: cp/init.c:1490
-#, fuzzy
-msgid "invalid use of non-static field `%D'"
-msgstr "нÑвернае выкарыÑтанне \"restict\""
-
-#. We can get here when processing a bad default
-#. argument, like:
-#. struct S { int a; void f(int i = a); }
-#: cp/init.c:1499 cp/method.c:160
-#, fuzzy
-msgid "invalid use of member `%D'"
-msgstr "нÑвернае выкарыÑтанне \"restict\""
-
-#: cp/init.c:1509
-#, fuzzy
-msgid "no method `%T::%D'"
-msgstr "у метадзе \"%s\":"
-
-#: cp/init.c:1602
+#: cp/init.c:1433
msgid "incomplete type `%T' does not have member `%D'"
msgstr ""
-#: cp/init.c:1676
+#: cp/init.c:1452
msgid "`%D' is not a member of type `%T'"
msgstr ""
-#: cp/init.c:1695
+#: cp/init.c:1471
#, fuzzy
msgid "invalid pointer to bit-field `%D'"
msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: cp/init.c:1734
-msgid "object missing in use of pointer-to-member construct"
-msgstr ""
-
-#: cp/init.c:1774
-msgid "member `%D' is non-static but referenced as a static member"
-msgstr ""
-
-#: cp/init.c:1776 cp/typeck.c:2826 cp/typeck.c:2930
-msgid "at this point in file"
-msgstr ""
+#: cp/init.c:1573
+#, fuzzy
+msgid "invalid use of non-static member function `%D'"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: cp/init.c:1813
-#, c-format
-msgid "object missing in `%E'"
-msgstr ""
+#: cp/init.c:1579 cp/semantics.c:1236
+#, fuzzy
+msgid "invalid use of non-static data member `%D'"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: cp/init.c:1944
+#: cp/init.c:1718
msgid "new of array type fails to specify size"
msgstr ""
-#: cp/init.c:1955
+#: cp/init.c:1729
msgid "size in array new must have integral type"
msgstr ""
-#: cp/init.c:1961
+#: cp/init.c:1735
msgid "zero size array reserves no space"
msgstr ""
-#: cp/init.c:2026
+#: cp/init.c:1801
msgid "new cannot be applied to a reference type"
msgstr ""
-#: cp/init.c:2032
+#: cp/init.c:1807
msgid "new cannot be applied to a function type"
msgstr ""
-#: cp/init.c:2079
+#: cp/init.c:1853
msgid "call to Java constructor, while `jclass' undefined"
msgstr ""
-#: cp/init.c:2095
+#: cp/init.c:1869
#, fuzzy
msgid "can't find class$"
msgstr "Ðе магу знайÑці ÐºÐ»Ð°Ñ \"%s\""
-#: cp/init.c:2209
+#: cp/init.c:1995
msgid "invalid type `void' for new"
msgstr ""
-#: cp/init.c:2261
+#: cp/init.c:2005
+msgid "uninitialized const in `new' of `%#T'"
+msgstr ""
+
+#: cp/init.c:2024
#, c-format
msgid "call to Java constructor with `%s' undefined"
msgstr ""
-#: cp/init.c:2369
-msgid "ISO C++ forbids initialization in array new"
-msgstr ""
+#: cp/init.c:2065
+#, fuzzy
+msgid "request for member `%D' is ambiguous"
+msgstr "памер \"%s\" - %d байт"
-#: cp/init.c:2391 cp/typeck2.c:367 cp/typeck2.c:1208
-msgid "initializer list being treated as compound expression"
+#: cp/init.c:2189
+msgid "ISO C++ forbids initialization in array new"
msgstr ""
-#: cp/init.c:2397
+#: cp/init.c:2213
msgid "ISO C++ forbids aggregate initializer to new"
msgstr ""
-#: cp/init.c:2485
-msgid "uninitialized const in `new' of `%#T'"
-msgstr ""
-
-#: cp/init.c:2864
+#: cp/init.c:2658
msgid "initializer ends prematurely"
msgstr ""
-#: cp/init.c:2934
+#: cp/init.c:2715
msgid "cannot initialize multi-dimensional array with initializer"
msgstr ""
-#: cp/init.c:3124
-msgid "unknown array size in delete"
-msgstr ""
-
-#: cp/init.c:3389
-msgid "type to vector delete is neither pointer or array type"
+#: cp/init.c:2876
+msgid "possible problem detected in invocation of delete operator:"
msgstr ""
-#: cp/lex.c:136
-msgid "type name expected before `*'"
+#: cp/init.c:2879
+msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined."
msgstr ""
-#: cp/lex.c:158
-msgid "cannot declare references to references"
-msgstr ""
-
-#: cp/lex.c:163
-msgid "cannot declare pointers to references"
+#: cp/init.c:2900
+msgid "unknown array size in delete"
msgstr ""
-#: cp/lex.c:167
-msgid "type name expected before `&'"
+#: cp/init.c:3165
+msgid "type to vector delete is neither pointer or array type"
msgstr ""
-#: cp/lex.c:894
-#, c-format
-msgid "semicolon missing after %s declaration"
+#: cp/lex.c:99
+msgid "type name expected before `*'"
msgstr ""
-#: cp/lex.c:897
-#, fuzzy
-msgid "semicolon missing after declaration of `%T'"
-msgstr "Ðе магу знайÑці дÑкларацыю інтÑрфейÑа Ð´Ð»Ñ \"%s\""
-
-#: cp/lex.c:945
+#: cp/lex.c:501
#, c-format
msgid "junk at end of #pragma %s"
msgstr ""
-#: cp/lex.c:952
+#: cp/lex.c:508
#, c-format
msgid "invalid #pragma %s"
msgstr ""
-#: cp/lex.c:961
+#: cp/lex.c:516
msgid "#pragma vtable no longer supported"
msgstr ""
-#: cp/lex.c:1038
+#: cp/lex.c:590
#, c-format
msgid "#pragma implementation for %s appears after file is included"
msgstr ""
-#: cp/lex.c:1063
+#: cp/lex.c:614
msgid "junk at end of #pragma GCC java_exceptions"
msgstr ""
-#: cp/lex.c:1107
+#: cp/lex.c:628
#, fuzzy
msgid "`%D' not defined"
msgstr "YYDEBUG не вызначан."
-#: cp/lex.c:1110
+#: cp/lex.c:631
#, fuzzy
msgid "`%D' was not declared in this scope"
msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: cp/lex.c:1118
+#: cp/lex.c:639
#, fuzzy
msgid "`%D' undeclared (first use this function)"
msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
-#: cp/lex.c:1122
+#: cp/lex.c:643
msgid "(Each undeclared identifier is reported only once for each function it appears in.)"
msgstr ""
-#: cp/lex.c:1242
-#, fuzzy
-msgid "`::%D' undeclared (first use here)"
-msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
+#. In a template, it is invalid to write "f()" or "f(3)" if no
+#. declaration of "f" is available. Historically, G++ and most
+#. other compilers accepted that usage since they deferred all name
+#. lookup until instantiation time rather than doing unqualified
+#. name lookup at template definition time; explain to the user what
+#. is going wrong.
+#.
+#. Note that we have the exact wording of the following message in
+#. the manual (trouble.texi, node "Name lookup"), so they need to
+#. be kept in synch.
+#: cp/lex.c:674
+msgid "there are no arguments to `%D' that depend on a template parameter, so a declaration of `%D' must be available"
+msgstr ""
+
+#: cp/lex.c:683
+msgid "(if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)"
+msgstr ""
-#: cp/mangle.c:2051
+#: cp/mangle.c:2036
msgid "call_expr cannot be mangled due to a defect in the C++ ABI"
msgstr ""
-#: cp/mangle.c:2363
+#: cp/mangle.c:2089
+msgid "omitted middle operand to `?:' operand cannot be mangled"
+msgstr ""
+
+#: cp/mangle.c:2388
msgid "the mangled name of `%D' will change in a future version of GCC"
msgstr ""
-#: cp/method.c:154
-msgid "invalid use of member `%D' in static member function"
+#: cp/method.c:456
+msgid "generic thunk code fails for method `%#D' which uses `...'"
msgstr ""
-#: cp/method.c:216
-msgid "use of namespace `%D' as expression"
+#: cp/method.c:681
+msgid "non-static const member `%#D', can't use default assignment operator"
msgstr ""
-#: cp/method.c:221
-msgid "use of class template `%T' as expression"
+#: cp/method.c:686
+msgid "non-static reference member `%#D', can't use default assignment operator"
+msgstr ""
+
+#: cp/name-lookup.c:649
+#, fuzzy
+msgid "`%#D' used prior to declaration"
+msgstr "\"%s\" - гÑта не пачатак дÑкларацыі"
+
+#: cp/name-lookup.c:680
+#, fuzzy
+msgid "redeclaration of `wchar_t' as `%T'"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+
+#. A redeclaration of main, but not a duplicate of the
+#. previous one.
+#.
+#. [basic.start.main]
+#.
+#. This function shall not be overloaded.
+#: cp/name-lookup.c:712
+#, fuzzy
+msgid "invalid redeclaration of `%D'"
+msgstr "ÐерÑчаіÑнае абвÑшчÑнне"
+
+#: cp/name-lookup.c:713
+msgid "as `%D'"
+msgstr "Ñк `%D'"
+
+#: cp/name-lookup.c:801
+#, fuzzy
+msgid "type mismatch with previous external decl of `%#D'"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+
+#: cp/name-lookup.c:802
+#, fuzzy
+msgid "previous external decl of `%#D'"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+
+#: cp/name-lookup.c:844
+msgid "`%D' was previously implicitly declared to return `int'"
+msgstr ""
+
+#: cp/name-lookup.c:902
+msgid "extern declaration of `%#D' doesn't match"
msgstr ""
-#: cp/method.c:234
+#: cp/name-lookup.c:903
+#, fuzzy
+msgid "global declaration `%#D'"
+msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
+
+#: cp/name-lookup.c:939
+msgid "declaration of `%#D' shadows a parameter"
+msgstr ""
+
+#: cp/name-lookup.c:960
#, c-format
-msgid "use of %s from containing function"
+msgid "declaration of `%s' shadows a member of `this'"
msgstr ""
-#: cp/method.c:237
-msgid " `%#D' declared here"
+#: cp/name-lookup.c:1136
+msgid "name lookup of `%D' changed"
msgstr ""
-#: cp/method.c:255
-msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
+#: cp/name-lookup.c:1138
+msgid " matches this `%D' under ISO standard rules"
msgstr ""
-#: cp/method.c:458
-msgid "generic thunk code fails for method `%#D' which uses `...'"
+#: cp/name-lookup.c:1140
+msgid " matches this `%D' under old rules"
msgstr ""
-#: cp/method.c:697
-msgid "non-static const member `%#D', can't use default assignment operator"
+#: cp/name-lookup.c:1154 cp/name-lookup.c:1161
+msgid "name lookup of `%D' changed for new ISO `for' scoping"
msgstr ""
-#: cp/method.c:702
-msgid "non-static reference member `%#D', can't use default assignment operator"
+#: cp/name-lookup.c:1156
+msgid " cannot use obsolete binding at `%D' because it has a destructor"
msgstr ""
-#: parse.y:262
-msgid "`%s' tag used in naming `%#T'"
+#: cp/name-lookup.c:1163
+msgid " using obsolete binding at `%D'"
msgstr ""
-#: parse.y:542
-msgid "keyword `export' not implemented, and will be ignored"
+#: cp/name-lookup.c:1216
+#, c-format
+msgid "%s %s(%E) %p %d\n"
+msgstr ""
+
+#: cp/name-lookup.c:1219
+#, fuzzy, c-format
+msgid "%s %s %p %d\n"
+msgstr "%s: %s: "
+
+#: cp/name-lookup.c:1338
+msgid "XXX is_class_level != (current_scope == class_scope)\n"
+msgstr ""
+
+#: cp/name-lookup.c:1975
+#, fuzzy
+msgid "`%#D' hides constructor for `%#T'"
+msgstr "дÑÑтруктару неабходны \"%#D\""
+
+#: cp/name-lookup.c:1990
+#, fuzzy
+msgid "`%#D' conflicts with previous using declaration `%#D'"
+msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
+
+#: cp/name-lookup.c:2002
+#, fuzzy
+msgid "previous non-function declaration `%#D'"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+
+#: cp/name-lookup.c:2003
+#, fuzzy
+msgid "conflicts with function declaration `%#D'"
+msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
+
+#. 7.3.3/5
+#. A using-declaration shall not name a template-id.
+#: cp/name-lookup.c:2080
+msgid "a using-declaration cannot specify a template-id. Try `using %D'"
msgstr ""
-#: parse.y:646
-msgid "use of linkage spec `%D' is different from previous spec `%D'"
+#: cp/name-lookup.c:2086
+#, fuzzy
+msgid "namespace `%D' not allowed in using-declaration"
+msgstr "\"%s\" - гÑта не пачатак дÑкларацыі"
+
+#. It's a nested name with template parameter dependent scope.
+#. This can only be using-declaration for class member.
+#: cp/name-lookup.c:2094 cp/name-lookup.c:2108 cp/name-lookup.c:3283
+msgid "`%T' is not a namespace"
msgstr ""
-#: parse.y:943
-msgid "no base or member initializers given following ':'"
+#: cp/name-lookup.c:2132
+msgid "`%D' not declared"
msgstr ""
-#: parse.y:984
-msgid "anachronistic old style base class initializer"
+#. If the OLD_FN was really declared, the
+#. declarations don't match.
+#: cp/name-lookup.c:2144 cp/name-lookup.c:2186 cp/name-lookup.c:2211
+msgid "`%D' is already declared in this scope"
msgstr ""
-#. Handle `Class<Class<Type>>' without space in the `>>'
-#: parse.y:1117
-msgid "`>>' should be `> >' in template class name"
+#: cp/name-lookup.c:2217
+msgid "using declaration `%D' introduced ambiguous type `%T'"
msgstr ""
-#: parse.y:1164
-msgid "use of template qualifier outside template"
+#. Definition isn't the kind we were looking for.
+#: cp/name-lookup.c:2376 cp/name-lookup.c:2395
+msgid "`%#D' redeclared as %C"
msgstr ""
-#: parse.y:1193 parse.y:1202
-#, c-format
-msgid "ISO C++ forbids an empty condition for `%s'"
+#: cp/name-lookup.c:2805
+msgid "using-declaration for non-member at class scope"
msgstr ""
-#: parse.y:1225
-msgid "definition of class `%T' in condition"
+#: cp/name-lookup.c:2812
+msgid "using-declaration cannot name destructor"
msgstr ""
-#: parse.y:1227
-msgid "definition of enum `%T' in condition"
+#: cp/name-lookup.c:2908
+msgid "declaration of `%D' not in a namespace surrounding `%D'"
msgstr ""
-#: parse.y:1238
-msgid "definition of array `%#D' in condition"
+#: cp/name-lookup.c:2948
+msgid "`%D' should have been declared inside `%D'"
msgstr ""
-#: parse.y:1351
-msgid "old style placement syntax, use () instead"
+#: cp/name-lookup.c:3012
+msgid "namespace alias `%D' not allowed here, assuming `%D'"
msgstr ""
-#: parse.y:1362
-msgid "`%T' is not a valid expression"
+#. The parser did not find it, so it's not there.
+#: cp/name-lookup.c:3127
+#, fuzzy
+msgid "unknown namespace `%D'"
+msgstr "невÑдомы Ñ€Ñжым машыны \"%s\""
+
+#: cp/name-lookup.c:3277
+msgid "namespace `%T' undeclared"
msgstr ""
-#. This was previously allowed as an extension, but
-#. was removed in G++ 3.3.
-#: parse.y:1369
-msgid "initialization of new expression with `='"
+#: cp/name-lookup.c:3310
+msgid "strong using only meaningful at namespace scope"
+msgstr ""
+
+#: cp/name-lookup.c:3317
+#, fuzzy
+msgid "`%D' attribute directive ignored"
+msgstr "\"%s\" атрыбут ігнарыруецца"
+
+#: cp/name-lookup.c:3450
+#, fuzzy
+msgid "use of `%D' is ambiguous"
+msgstr "памер \"%s\" - %d байт"
+
+#: cp/name-lookup.c:3451
+msgid " first declared as `%#D' here"
msgstr ""
-#: parse.y:1395
-msgid "ISO C++ forbids compound literals"
+#: cp/name-lookup.c:3454
+msgid " also declared as `%#D' here"
msgstr ""
-#: parse.y:1642
-msgid "ISO C++ forbids braced-groups within expressions"
+#: cp/name-lookup.c:3469
+msgid "`%D' denotes an ambiguous type"
msgstr ""
-#: parse.y:1721
+#: cp/name-lookup.c:3470
#, fuzzy
-msgid "invalid use of template `%D'"
-msgstr "нÑвернае выкарыÑтанне \"restict\""
+msgid "%J first type here"
+msgstr " адÑюль"
-#: parse.y:2053 parse.y:2068
-msgid "sigof type specifier"
+#: cp/name-lookup.c:3471
+msgid "%J other type here"
msgstr ""
-#: parse.y:2058
-msgid "`sigof' applied to non-aggregate expression"
+#. This happens for A::B where B is a template, and there are no
+#. template arguments.
+#: cp/name-lookup.c:3536 cp/typeck.c:1773
+msgid "invalid use of `%D'"
+msgstr "нерÑчаіÑнае выкарыÑтаньне `%D'"
+
+#: cp/name-lookup.c:3577
+msgid "`%D::%D' is not a template"
msgstr ""
-#: parse.y:2073
-msgid "`sigof' applied to non-aggregate type"
+#: cp/name-lookup.c:3594
+msgid "`%D' undeclared in namespace `%D'"
msgstr ""
-#: parse.y:2339
-msgid "using `typename' outside of template"
+#: cp/name-lookup.c:4055
+msgid "`%D' is not a function,"
+msgstr "`%D' - гÑта Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ,"
+
+#: cp/name-lookup.c:4056
+msgid " conflict with `%D'"
msgstr ""
-#: parse.y:2356
-msgid "qualified name does not name a class"
+#: cp/name-lookup.c:4794
+msgid "XXX entering pop_everything ()\n"
msgstr ""
-#: parse.y:2417
-#, c-format
-msgid "storage class specifier `%s' not allowed after struct or class"
+#: cp/name-lookup.c:4803
+msgid "XXX leaving pop_everything ()\n"
msgstr ""
-#: parse.y:2419
-#, c-format
-msgid "type specifier `%s' not allowed after struct or class"
+#: cp/parser.c:609
+#, fuzzy
+msgid "invalid token"
+msgstr "ÐерÑчаіÑны выбар %s"
+
+#: cp/parser.c:1806
+#, fuzzy
+msgid "`%D::%D' has not been declared"
+msgstr "\"%s\" - гÑта не пачатак дÑкларацыі"
+
+#: cp/parser.c:1809 cp/semantics.c:2284
+#, fuzzy
+msgid "`::%D' has not been declared"
+msgstr "\"%s\" - гÑта не пачатак дÑкларацыі"
+
+#: cp/parser.c:1811
+#, fuzzy
+msgid "`%D' has not been declared"
+msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
+
+#: cp/parser.c:1814
+msgid "`%D::%D' %s"
msgstr ""
-#: parse.y:2421
-#, c-format
-msgid "type qualifier `%s' not allowed after struct or class"
+#: cp/parser.c:1816
+msgid "`::%D' %s"
msgstr ""
-#: parse.y:2423
-msgid "no body nor ';' separates two class, struct or union declarations"
+#: cp/parser.c:1818
+msgid "`%D' %s"
msgstr ""
-#: parse.y:2553
-msgid "no bases given following `:'"
+#: cp/parser.c:1870
+msgid "new types may not be defined in a return type"
msgstr ""
-#: parse.y:2584 parse.y:2599
-msgid "`%D' access"
+#: cp/parser.c:1888 cp/pt.c:4185
+msgid "`%T' is not a template"
+msgstr ""
+
+#: cp/parser.c:1890
+#, fuzzy, c-format
+msgid "`%s' is not a template"
+msgstr "\"%s\" мае незавершаны тып"
+
+#: cp/parser.c:1892
+#, fuzzy
+msgid "invalid template-id"
+msgstr "ÐерÑчаіÑны выбар %s"
+
+#: cp/parser.c:1927
+#, fuzzy, c-format
+msgid "%s cannot appear in a constant-expression"
+msgstr "памер маÑіва \"%s\" адмоўны"
+
+#. Issue an error message.
+#: cp/parser.c:1954
+#, fuzzy, c-format
+msgid "`%s' does not name a type"
+msgstr "\"%s\" мае незавершаны тып"
+
+#: cp/parser.c:1985
+msgid "(perhaps `typename %T::%s' was intended)"
msgstr ""
-#: parse.y:2589
-msgid "multiple access specifiers"
+#: cp/parser.c:2407
+msgid "ISO C++ forbids braced-groups within expressions"
msgstr ""
-#: parse.y:2607
-msgid "multiple `virtual' specifiers"
+#: cp/parser.c:2416
+msgid "statement-expressions are allowed only inside functions"
msgstr ""
-#: parse.y:2644
-msgid "missing ';' before right brace"
+#: cp/parser.c:2467
+#, fuzzy
+msgid "`this' may not be used in this context"
+msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
+
+#: cp/parser.c:2617
+#, fuzzy
+msgid "local variable `%D' may not appear in this context"
+msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
+
+#: cp/parser.c:2982
+msgid "typedef-name `%D' used as destructor declarator"
msgstr ""
-#: parse.y:2865
-msgid "ISO C++ forbids array dimensions with parenthesized type in new"
+#: cp/parser.c:3627
+#, fuzzy
+msgid "ISO C++ forbids compound-literals"
+msgstr "ISO C не дазвалÑе дÑкларацыі метак (label)"
+
+#: cp/parser.c:4599
+msgid "expression in new-declarator must have integral or enumeration type"
msgstr ""
-#: parse.y:3152 parse.y:3172 parse.y:3181 parse.y:3210
-msgid "`%T' is not a class or namespace"
+#: cp/parser.c:4775
+msgid "use of old-style cast"
msgstr ""
-#: parse.y:3377
-msgid "ISO C++ forbids label declarations"
+#: cp/parser.c:5528
+#, c-format
+msgid "case label `%E' not within a switch statement"
msgstr ""
-#: parse.y:3537
+#: cp/parser.c:6070
msgid "ISO C++ forbids computed gotos"
msgstr ""
-#: parse.y:3545
-msgid "label must be followed by statement"
+#: cp/parser.c:6190
+msgid "extra `;'"
msgstr ""
-#: parse.y:3590
-msgid "must have at least one catch per try block"
+#: cp/parser.c:6485
+msgid "mixing declarations and function-definitions is forbidden"
msgstr ""
-#: parse.y:3650
-msgid "ISO C++ forbids compound statements inside for initializations"
+#: cp/parser.c:6623
+#, fuzzy
+msgid "duplicate `friend'"
+msgstr "паўтарÑньне `%s'"
+
+#: cp/parser.c:6772
+#, fuzzy
+msgid "class definition may not be declared a friend"
+msgstr "Ð²Ñ–Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ñ‹Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ– не могуць быць ÑÑброўÑкімі"
+
+#: cp/parser.c:7086
+msgid "only constructors take base initializers"
msgstr ""
-#. This helps us recover from really nasty
-#. parse errors, for example, a missing right
-#. parenthesis.
-#: parse.y:3737 parse.y:3747
-msgid "possibly missing ')'"
+#: cp/parser.c:7137
+msgid "anachronistic old-style base class initializer"
msgstr ""
-#: parse.y:3840
-msgid "type specifier omitted for parameter"
+#. Warn that we do not support `export'.
+#: cp/parser.c:7530
+msgid "keyword `export' not implemented, and will be ignored"
msgstr ""
-#: parse.y:3849
-#, c-format
-msgid "`%E' is not a type, use `typename %E' to make it one"
+#. Otherwise, emit an error about the invalid digraph, but continue
+#. parsing because we got our argument list.
+#: cp/parser.c:7890
+msgid "`<::' cannot begin a template-argument list"
+msgstr ""
+
+#: cp/parser.c:7891
+msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'"
+msgstr ""
+
+#: cp/parser.c:7898
+msgid "(if you use `-fpermissive' G++ will accept your code)"
+msgstr ""
+
+#. Explain what went wrong.
+#: cp/parser.c:8070
+msgid "non-template `%D' used as template"
+msgstr ""
+
+#: cp/parser.c:8071
+msgid "(use `%T::template %D' to indicate that it is a template)"
+msgstr ""
+
+#: cp/parser.c:9000
+msgid "using `typename' outside of template"
+msgstr ""
+
+#: cp/parser.c:9122
+msgid "expected type-name"
msgstr ""
-#: parse.y:3851
+#: cp/parser.c:9181
+msgid "type attributes are honored only at type definition"
+msgstr ""
+
+#. [namespace.udecl]
+#.
+#. A using declaration shall not name a template-id.
+#: cp/parser.c:9565
#, fuzzy
-msgid "no type `%D' in `%T'"
-msgstr "вÑртаемы тып \"%s\" не \"int\""
+msgid "a template-id may not appear in a using-declaration"
+msgstr "\"%s\" - гÑта не пачатак дÑкларацыі"
-#: parse.y:3854
-#, c-format
-msgid "type specifier omitted for parameter `%E'"
+#: cp/parser.c:9891
+msgid "an asm-specification is not allowed on a function-definition"
+msgstr ""
+
+#: cp/parser.c:9893
+#, fuzzy
+msgid "attributes are not allowed on a function-definition"
+msgstr "\"%s\" - гÑта не пачатак дÑкларацыі"
+
+#: cp/parser.c:10026
+msgid "attributes after parenthesized initializer ignored"
+msgstr ""
+
+#: cp/parser.c:11223
+#, fuzzy
+msgid "file ends in default argument"
+msgstr "нехапае аргументаў у функцыі \"%s\""
+
+#: cp/parser.c:11279
+msgid "deprecated use of default argument for parameter of non-function"
+msgstr ""
+
+#: cp/parser.c:11282
+msgid "default arguments are only permitted for function parameters"
+msgstr ""
+
+#: cp/parser.c:12007
+msgid "declaration of `%D' in `%D' which does not enclose `%D'"
+msgstr ""
+
+#: cp/parser.c:12020
+msgid "extra qualification ignored"
+msgstr ""
+
+#: cp/parser.c:12031
+#, fuzzy
+msgid "an explicit specialization must be preceded by 'template <>'"
+msgstr "ініцыÑлізацыÑ"
+
+#: cp/parser.c:12311
+msgid "extra semicolon"
+msgstr ""
+
+#: cp/parser.c:12329
+msgid "a class-key must be used when declaring a friend"
+msgstr ""
+
+#: cp/parser.c:12360
+msgid "friend declaration does not name a class or function"
+msgstr ""
+
+#: cp/parser.c:12531
+msgid "pure-specifier on function-definition"
+msgstr ""
+
+#: cp/parser.c:12804
+msgid "keyword `typename' not allowed outside of templates"
+msgstr ""
+
+#: cp/parser.c:12806
+msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)"
+msgstr ""
+
+#: cp/parser.c:13624
+#, fuzzy
+msgid "reference to `%D' is ambiguous"
+msgstr "памер \"%s\" - %d байт"
+
+#: cp/parser.c:13798
+#, fuzzy
+msgid "too few template-parameter-lists"
+msgstr "невыкарыÑтаемы параметр \"%s\""
+
+#. Otherwise, there are too many template parameter lists. We have
+#. something like:
+#.
+#. template <class T> template <class U> void S::f();
+#: cp/parser.c:13813
+msgid "too many template-parameter-lists"
+msgstr ""
+
+#. If begin_function_definition didn't like the definition, skip
+#. the entire function.
+#: cp/parser.c:14090
+#, fuzzy
+msgid "invalid function declaration"
+msgstr "ÐерÑчаіÑнае абвÑшчÑнне"
+
+#. Issue an error message.
+#: cp/parser.c:14127
+#, fuzzy
+msgid "named return values are no longer supported"
+msgstr "-pipe не падтрымліваецца."
+
+#: cp/parser.c:14455
+msgid "`>>' should be `> >' within a nested template argument list"
+msgstr ""
+
+#. If this is not a nested template argument list, the '>>' is
+#. a typo for '>'. Emit an error message and continue.
+#: cp/parser.c:14463
+msgid "spurious `>>', use `>' to terminate a template argument list"
+msgstr ""
+
+#: cp/parser.c:14950
+msgid "`%s' tag used in naming `%#T'"
+msgstr ""
+
+#: cp/parser.c:14970
+msgid "%D redeclared with different access"
msgstr ""
-#: parse.y:3862
-msgid "'%D' is used as a type, but is not defined as a type."
+#: cp/parser.c:14987
+msgid "`template' (as a disambiguator) is only allowed within templates"
msgstr ""
-#: cp/pt.c:284
+#: cp/pt.c:243
msgid "data member `%D' cannot be a member template"
msgstr ""
-#: cp/pt.c:296
+#: cp/pt.c:255
#, fuzzy
msgid "invalid member template declaration `%D'"
msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-#: cp/pt.c:691
+#: cp/pt.c:637
msgid "explicit specialization in non-namespace scope `%D'"
msgstr ""
-#: cp/pt.c:703
+#: cp/pt.c:649
msgid "enclosing class templates are not explicitly specialized"
msgstr ""
-#: cp/pt.c:792 cp/pt.c:833
+#: cp/pt.c:739 cp/pt.c:780
msgid "specializing `%#T' in different namespace"
msgstr ""
-#: cp/pt.c:793 cp/pt.c:834
+#: cp/pt.c:740 cp/pt.c:781
msgid " from definition of `%#D'"
msgstr ""
-#: cp/pt.c:801
+#: cp/pt.c:748
msgid "specialization of `%T' after instantiation"
msgstr ""
-#: cp/pt.c:848
+#: cp/pt.c:795
#, fuzzy
msgid "specialization `%T' after instantiation `%T'"
msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-#: cp/pt.c:860
+#: cp/pt.c:807
msgid "explicit specialization of non-template `%T'"
msgstr ""
-#: cp/pt.c:992
+#: cp/pt.c:1067
msgid "specialization of %D after instantiation"
msgstr ""
-#: cp/pt.c:1096
+#: cp/pt.c:1192
msgid "%s %+#D"
msgstr ""
-#: cp/pt.c:1147
+#: cp/pt.c:1241
#, fuzzy
msgid "`%D' is not a function template"
msgstr "\"%s\" звычайна функцыÑ"
-#: cp/pt.c:1286
+#: cp/pt.c:1380
msgid "template-id `%D' for `%+D' does not match any template declaration"
msgstr ""
-#: cp/pt.c:1294
+#: cp/pt.c:1388
msgid "ambiguous template specialization `%D' for `%+D'"
msgstr ""
#. This case handles bogus declarations like template <>
#. template <class T> void f<int>();
-#: cp/pt.c:1521 cp/pt.c:1595
+#: cp/pt.c:1611 cp/pt.c:1685
msgid "template-id `%D' in declaration of primary template"
msgstr ""
-#: cp/pt.c:1534
+#: cp/pt.c:1624
msgid "template parameter list used in explicit instantiation"
msgstr ""
-#: cp/pt.c:1540
+#: cp/pt.c:1630
msgid "definition provided for explicit instantiation"
msgstr ""
-#: cp/pt.c:1546
+#: cp/pt.c:1636
msgid "too many template parameter lists in declaration of `%D'"
msgstr ""
-#: cp/pt.c:1562
+#: cp/pt.c:1652
msgid "too few template parameter lists in declaration of `%D'"
msgstr ""
-#: cp/pt.c:1579
+#: cp/pt.c:1669
msgid "explicit specialization not preceded by `template <>'"
msgstr ""
-#: cp/pt.c:1592
+#: cp/pt.c:1682
msgid "partial specialization `%D' of function template"
msgstr ""
-#: cp/pt.c:1624
+#: cp/pt.c:1714
msgid "default argument specified in explicit specialization"
msgstr ""
-#: cp/pt.c:1628
+#: cp/pt.c:1718
msgid "template specialization with C linkage"
msgstr ""
@@ -16789,102 +16193,109 @@ msgstr ""
#. program is ill-formed.
#.
#. Similar language is found in [temp.explicit].
-#: cp/pt.c:1715
+#: cp/pt.c:1802
msgid "specialization of implicitly-declared special member function"
msgstr ""
-#: cp/pt.c:1759
+#: cp/pt.c:1846
msgid "no member function `%D' declared in `%T'"
msgstr ""
#. There are two many template parameter lists.
-#: cp/pt.c:1909
+#: cp/pt.c:2001
msgid "too many template parameter lists in declaration of `%T'"
msgstr ""
-#: cp/pt.c:2005
+#: cp/pt.c:2094
msgid " shadows template parm `%#D'"
msgstr ""
-#: cp/pt.c:2409
+#: cp/pt.c:2491
msgid "template parameters not used in partial specialization:"
msgstr ""
-#: cp/pt.c:2413
+#: cp/pt.c:2495
msgid " `%D'"
msgstr ""
-#: cp/pt.c:2425
+#: cp/pt.c:2507
msgid "partial specialization `%T' does not specialize any template arguments"
msgstr ""
-#: cp/pt.c:2450
+#: cp/pt.c:2532
#, c-format
msgid "template argument `%E' involves template parameter(s)"
msgstr ""
-#: cp/pt.c:2494
+#: cp/pt.c:2576
msgid "type `%T' of template argument `%E' depends on template parameter(s)"
msgstr ""
-#: cp/pt.c:2582
+#: cp/pt.c:2661
#, fuzzy
msgid "no default argument for `%D'"
msgstr "нехапае аргументаў у функцыі \"%s\""
-#: cp/pt.c:2735
+#: cp/pt.c:2810
msgid "template with C linkage"
msgstr ""
-#: cp/pt.c:2738
+#: cp/pt.c:2813
msgid "template class without a name"
msgstr ""
-#: cp/pt.c:2815
+#. [temp.mem]
+#.
+#. A destructor shall not be a member template.
+#: cp/pt.c:2820
+msgid "destructor `%D' declared as member template"
+msgstr ""
+
+#: cp/pt.c:2900
msgid "`%D' does not declare a template type"
msgstr ""
-#: cp/pt.c:2821
+#: cp/pt.c:2906
msgid "template definition of non-template `%#D'"
msgstr ""
-#: cp/pt.c:2862
+#: cp/pt.c:2947
msgid "expected %d levels of template parms for `%#D', got %d"
msgstr ""
-#: cp/pt.c:2874
+#: cp/pt.c:2959
msgid "got %d template parameters for `%#D'"
msgstr ""
-#: cp/pt.c:2877
+#: cp/pt.c:2962
msgid "got %d template parameters for `%#T'"
msgstr ""
-#: cp/pt.c:2879
+#: cp/pt.c:2964
#, c-format
msgid " but %d required"
msgstr ""
-#: cp/pt.c:2962
+#: cp/pt.c:3042
#, fuzzy
msgid "`%T' is not a template type"
msgstr "\"%s\" мае незавершаны тып"
-#: cp/pt.c:2978
+#: cp/pt.c:3058
msgid "previous declaration `%D'"
msgstr "папÑÑ€ÑднÑе абвÑшчÑньне `%D'"
-#: cp/pt.c:2979
+#: cp/pt.c:3059
#, c-format
msgid "used %d template parameter%s instead of %d"
msgstr ""
-#: cp/pt.c:2995
+#: cp/pt.c:3075
#, fuzzy
msgid "template parameter `%#D'"
msgstr "невыкарыÑтаемы параметр \"%s\""
-#: cp/pt.c:2996
+#: cp/pt.c:3076
msgid "redeclared here as `%#D'"
msgstr ""
@@ -16892,726 +16303,745 @@ msgstr ""
#.
#. A template-parameter may not be given default arguments
#. by two different declarations in the same scope.
-#: cp/pt.c:3006
+#: cp/pt.c:3086
msgid "redefinition of default argument for `%#D'"
msgstr ""
-#: cp/pt.c:3007
-msgid " original definition appeared here"
+#: cp/pt.c:3087
+msgid "%J original definition appeared here"
msgstr ""
-#: cp/pt.c:3100
+#: cp/pt.c:3235
#, c-format
msgid "`%E' is not a valid template argument"
msgstr ""
-#: cp/pt.c:3104
+#: cp/pt.c:3239
msgid "it must be the address of a function with external linkage"
msgstr ""
-#: cp/pt.c:3106
+#: cp/pt.c:3241
msgid "it must be the address of an object with external linkage"
msgstr ""
-#: cp/pt.c:3110
+#: cp/pt.c:3244
msgid "it must be a pointer-to-member of the form `&X::Y'"
msgstr ""
-#: cp/pt.c:3121
+#: cp/pt.c:3255
#, c-format
msgid "string literal %E is not a valid template argument because it is the address of an object with static linkage"
msgstr ""
-#: cp/pt.c:3133
+#: cp/pt.c:3270
#, c-format
msgid "address of non-extern `%E' cannot be used as template argument"
msgstr ""
-#: cp/pt.c:3144
+#: cp/pt.c:3279
#, c-format
msgid "non-constant `%E' cannot be used as template argument"
msgstr ""
-#: cp/pt.c:3151
-#, c-format
-msgid "object `%E' cannot be used as template argument"
+#: cp/pt.c:3287
+msgid "type '%T' cannot be used as a value for a non-type template-parameter"
msgstr ""
-#: cp/pt.c:3526
+#: cp/pt.c:3290
+#, fuzzy
+msgid "invalid use of '%D' as a non-type template-argument"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
+
+#: cp/pt.c:3292
+#, fuzzy, c-format
+msgid "invalid use of '%E' as a non-type template-argument"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
+
+#: cp/pt.c:3657
#, c-format
msgid "to refer to a type member of a template parameter, use `typename %E'"
msgstr ""
-#: cp/pt.c:3539 cp/pt.c:3555 cp/pt.c:3594
+#: cp/pt.c:3670 cp/pt.c:3688 cp/pt.c:3727
msgid "type/value mismatch at argument %d in template parameter list for `%D'"
msgstr ""
-#: cp/pt.c:3542
+#: cp/pt.c:3673
msgid " expected a constant of type `%T', got `%T'"
msgstr ""
-#: cp/pt.c:3546
+#: cp/pt.c:3677
+#, c-format
+msgid " expected a class template, got `%E'"
+msgstr ""
+
+#: cp/pt.c:3679
#, c-format
msgid " expected a type, got `%E'"
msgstr ""
-#: cp/pt.c:3558
+#: cp/pt.c:3691
msgid " expected a type, got `%T'"
msgstr ""
-#: cp/pt.c:3560
+#: cp/pt.c:3693
msgid " expected a class template, got `%T'"
msgstr ""
-#: cp/pt.c:3596
+#: cp/pt.c:3729
msgid " expected a template of type `%D', got `%D'"
msgstr ""
-#: cp/pt.c:3618
-msgid "template-argument `%T' uses anonymous type"
-msgstr ""
-
-#: cp/pt.c:3621
-msgid "template-argument `%T' uses local type `%T'"
-msgstr ""
-
-#: cp/pt.c:3631
-#, fuzzy
-msgid "template-argument `%T' is a variably modified type"
-msgstr "параметр \"%s\" ініцыÑлізаваны"
-
-#: cp/pt.c:3666
+#: cp/pt.c:3764
msgid "could not convert template argument `%E' to `%T'"
msgstr ""
-#: cp/pt.c:3710
+#: cp/pt.c:3804
#, c-format
msgid "wrong number of template arguments (%d, should be %d)"
msgstr ""
-#: cp/pt.c:3714
+#: cp/pt.c:3808
#, fuzzy
msgid "provided for `%D'"
msgstr "дÑÑтруктару неабходны \"%#D\""
-#: cp/pt.c:3761
+#: cp/pt.c:3836
#, fuzzy, c-format
msgid "template argument %d is invalid"
msgstr "параметр \"%s\" ініцыÑлізаваны"
-#: cp/pt.c:3997
+#: cp/pt.c:4057
msgid "non-template used as template"
msgstr ""
-#: cp/pt.c:4139
-msgid "`%T' is not a template"
-msgstr ""
-
-#: cp/pt.c:4152
+#: cp/pt.c:4197
msgid "non-template type `%T' used as a template"
msgstr ""
-#: cp/pt.c:4154
+#: cp/pt.c:4199
#, fuzzy
msgid "for template declaration `%D'"
msgstr "пуÑтое абвÑшчÑнне"
-#: cp/pt.c:4770
+#: cp/pt.c:4846
msgid "template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN to increase the maximum) instantiating `%D'"
msgstr ""
-#: cp/pt.c:5247
+#: cp/pt.c:5286
msgid "ambiguous class template instantiation for `%#T'"
msgstr ""
-#: cp/pt.c:5254
+#: cp/pt.c:5292
msgid "%s %+#T"
msgstr ""
-#: cp/pt.c:6284 cp/pt.c:6396
+#: cp/pt.c:6291 cp/pt.c:6411
msgid "instantiation of `%D' as type `%T'"
msgstr ""
-#: cp/pt.c:6440
+#: cp/pt.c:6453
msgid "invalid parameter type `%T'"
msgstr "нерÑчаіÑны тып парамÑтра `%T'"
-#: cp/pt.c:6442
+#: cp/pt.c:6455
msgid "in declaration `%D'"
msgstr "у абвÑшчÑньні `%D'"
-#: cp/pt.c:6517
+#: cp/pt.c:6529
msgid "creating pointer to member function of non-class type `%T'"
msgstr ""
-#: cp/pt.c:6680
+#: cp/pt.c:6668
msgid "creating array with size zero"
msgstr ""
-#: cp/pt.c:6694
+#: cp/pt.c:6682
#, c-format
msgid "creating array with size zero (`%E')"
msgstr ""
-#: cp/pt.c:6933
+#: cp/pt.c:6921
msgid "forming reference to void"
msgstr ""
-#: cp/pt.c:6935
+#: cp/pt.c:6923
msgid "forming %s to reference type `%T'"
msgstr ""
-#: cp/pt.c:6973
+#: cp/pt.c:6960
msgid "creating pointer to member of non-class type `%T'"
msgstr ""
-#: cp/pt.c:6979
+#: cp/pt.c:6966
msgid "creating pointer to member reference type `%T'"
msgstr ""
-#: cp/pt.c:7057
+#: cp/pt.c:7052
msgid "creating array of `%T'"
msgstr ""
-#: cp/pt.c:7100
+#: cp/pt.c:7058
+msgid "creating array of `%T', which is an abstract class type"
+msgstr ""
+
+#: cp/pt.c:7102
msgid "`%T' is not a class, struct, or union type"
msgstr ""
-#: cp/pt.c:7213
+#: cp/pt.c:7215
#, c-format
msgid "use of `%s' in template"
msgstr ""
-#: cp/pt.c:7975
-msgid "type `%T' composed from a local class is not a valid template-argument"
+#: cp/pt.c:7327
+#, c-format
+msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type"
+msgstr ""
+
+#: cp/pt.c:7329
+#, c-format
+msgid "say `typename %E' if a type is meant"
+msgstr ""
+
+#: cp/pt.c:8586
+msgid "`%T' uses anonymous type"
msgstr ""
-#: cp/pt.c:7976
+#: cp/pt.c:8588
+msgid "`%T' uses local type `%T'"
+msgstr ""
+
+#: cp/pt.c:8596
+#, fuzzy
+msgid "`%T' is a variably modified type"
+msgstr "\"%s\" мае незавершаны тып"
+
+#: cp/pt.c:8607
+#, fuzzy, c-format
+msgid "integral expression `%E' is not constant"
+msgstr "тып параметра \"%s\" не аб'Ñўлены"
+
+#: cp/pt.c:8612
msgid " trying to instantiate `%D'"
msgstr ""
-#: cp/pt.c:8421
+#: cp/pt.c:9125
msgid "incomplete type unification"
msgstr ""
-#: cp/pt.c:9387
+#: cp/pt.c:10072
#, c-format
msgid "use of `%s' in template type unification"
msgstr ""
-#: cp/pt.c:9821 cp/pt.c:9893
+#: cp/pt.c:10506 cp/pt.c:10578
msgid "explicit instantiation of non-template `%#D'"
msgstr ""
-#: cp/pt.c:9837 cp/pt.c:9888
+#: cp/pt.c:10522 cp/pt.c:10573
msgid "no matching template for `%D' found"
msgstr ""
-#: cp/pt.c:9843
+#: cp/pt.c:10528
msgid "explicit instantiation of `%#D'"
msgstr ""
-#: cp/pt.c:9880
+#: cp/pt.c:10565
#, fuzzy
msgid "duplicate explicit instantiation of `%#D'"
msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-#: cp/pt.c:9905
+#: cp/pt.c:10587
msgid "ISO C++ forbids the use of `extern' on explicit instantiations"
msgstr ""
-#: cp/pt.c:9909 cp/pt.c:9999
+#: cp/pt.c:10591 cp/pt.c:10672
msgid "storage class `%D' applied to template instantiation"
msgstr ""
-#: cp/pt.c:9966
+#: cp/pt.c:10644
msgid "explicit instantiation of non-template type `%T'"
msgstr ""
-#: cp/pt.c:9980
+#: cp/pt.c:10653
msgid "explicit instantiation of `%#T' before definition of template"
msgstr ""
-#: cp/pt.c:9988
+#: cp/pt.c:10661
#, c-format
msgid "ISO C++ forbids the use of `%s' on explicit instantiations"
msgstr ""
-#: cp/pt.c:10032
+#: cp/pt.c:10705
#, fuzzy
msgid "duplicate explicit instantiation of `%#T'"
msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-#: cp/pt.c:10412
+#: cp/pt.c:11086
msgid "explicit instantiation of `%D' but no definition available"
msgstr ""
-#: cp/pt.c:10815
+#: cp/pt.c:11520
msgid "`%#T' is not a valid type for a template constant parameter"
msgstr ""
-#: cp/repo.c:271
+#: cp/repo.c:259
msgid "-frepo must be used with -c"
msgstr ""
-#: cp/repo.c:361
+#: cp/repo.c:346
#, c-format
msgid "mysterious repository information in %s"
msgstr ""
-#: cp/repo.c:376
+#: cp/repo.c:361
#, c-format
msgid "can't create repository information file `%s'"
msgstr ""
-#: cp/rtti.c:240
+#: cp/rtti.c:248
msgid "cannot use typeid with -fno-rtti"
msgstr ""
-#: cp/rtti.c:246
+#: cp/rtti.c:254
msgid "must #include <typeinfo> before using typeid"
msgstr ""
-#: cp/rtti.c:320
+#: cp/rtti.c:326
msgid "cannot create type information for type `%T' because its size is variable"
msgstr ""
-#: cp/rtti.c:584 cp/rtti.c:598
+#: cp/rtti.c:580 cp/rtti.c:594
msgid "dynamic_cast of `%#D' to `%#T' can never succeed"
msgstr ""
-#: cp/rtti.c:674
+#: cp/rtti.c:675
msgid "cannot dynamic_cast `%E' (of type `%#T') to type `%#T' (%s)"
msgstr ""
-#: cp/search.c:332
+#: cp/search.c:306
msgid "`%T' is an ambiguous base of `%T'"
msgstr ""
-#: cp/search.c:350
+#: cp/search.c:324
msgid "`%T' is an inaccessible base of `%T'"
msgstr ""
-#. At parse time, we don't want to give this error, since
-#. we won't have enough state to make this kind of
-#. decision properly. But there are times (e.g., with
-#. enums in nested classes) when we do need to call
-#. this fn at parse time. So, in those cases, we pass
-#. complain as a 0 and just return a NULL_TREE.
-#: cp/search.c:1638
-msgid "assignment to non-static member `%D' of enclosing class `%T'"
-msgstr ""
-
-#: cp/search.c:2050
-msgid "adjusting pointers for covariant returns"
-msgstr ""
-
-#: cp/search.c:2054 cp/search.c:2061
+#: cp/search.c:1756
msgid "invalid covariant return type for `%#D'"
msgstr ""
-#: cp/search.c:2055
-msgid " overriding `%#D' (must be pointer or reference to class)"
-msgstr ""
-
-#: cp/search.c:2062
-msgid " overriding `%#D' (must use pointer or reference)"
+#: cp/search.c:1757 cp/search.c:1763
+msgid " overriding `%#D'"
msgstr ""
-#: cp/search.c:2067
+#: cp/search.c:1761
msgid "conflicting return type specified for `%#D'"
msgstr ""
-#: cp/search.c:2068
-msgid " overriding `%#D'"
-msgstr ""
-
-#: cp/search.c:2077
+#: cp/search.c:1775
#, c-format
msgid "looser throw specifier for `%#F'"
msgstr ""
-#: cp/search.c:2078
+#: cp/search.c:1776
#, c-format
msgid " overriding `%#F'"
msgstr ""
#. A static member function cannot match an inherited
#. virtual member function.
-#: cp/search.c:2167
+#: cp/search.c:1866
msgid "`%#D' cannot be declared"
msgstr ""
-#: cp/search.c:2168
+#: cp/search.c:1867
msgid " since `%#D' declared in base class"
msgstr ""
-#: cp/search.c:2309
+#: cp/search.c:1944
msgid "`%#D' needs a final overrider"
msgstr ""
-#: cp/semantics.c:919
+#: cp/semantics.c:1092
#, fuzzy, c-format
msgid "type of asm operand `%E' could not be determined"
msgstr "тып параметра \"%s\" не аб'Ñўлены"
-#: cp/semantics.c:1051
-msgid "ISO C++ does not permit named return values"
+#: cp/semantics.c:1233
+msgid "invalid use of member `%D' in static member function"
msgstr ""
-#: cp/semantics.c:1060
-msgid "return identifier `%D' already in place"
+#: cp/semantics.c:1237 cp/semantics.c:1276
+msgid "from this location"
msgstr ""
-#: cp/semantics.c:1068
-msgid "can't redefine default return value for constructors"
+#: cp/semantics.c:1275
+msgid "object missing in reference to `%D'"
msgstr ""
-#: cp/semantics.c:1100
-msgid "only constructors take base initializers"
-msgstr ""
+#: cp/semantics.c:1721
+#, fuzzy
+msgid "arguments to destructor are not allowed"
+msgstr "памер \"%s\" больш чам %d байт"
-#: cp/semantics.c:1343
+#: cp/semantics.c:1769
msgid "`this' is unavailable for static member functions"
msgstr ""
-#: cp/semantics.c:1349
+#: cp/semantics.c:1775
msgid "invalid use of `this' in non-member function"
msgstr ""
-#: cp/semantics.c:1351
+#: cp/semantics.c:1777
msgid "invalid use of `this' at top level"
msgstr ""
-#: cp/semantics.c:1381
-msgid "calling type `%T' like a method"
-msgstr ""
-
-#: cp/semantics.c:1419
-msgid "destructor specifier `%T::~%T()' must have matching names"
+#: cp/semantics.c:1801
+msgid "invalid qualifying scope in pseudo-destructor name"
msgstr ""
-#: cp/semantics.c:1425
+#: cp/semantics.c:1807
msgid "`%E' is not of type `%T'"
msgstr ""
-#: cp/semantics.c:1613
+#: cp/semantics.c:1918
msgid "template type parameters must use the keyword `class' or `typename'"
msgstr ""
-#: cp/semantics.c:1652
-msgid "invalid default template argument"
-msgstr ""
+#: cp/semantics.c:1962
+#, fuzzy
+msgid "invalid use of type `%T' as a default value for a template template-parameter"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
+
+#: cp/semantics.c:1965
+#, fuzzy
+msgid "invalid use of `%D' as a default value for a template template-parameter"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: cp/semantics.c:1694
+#: cp/semantics.c:1969
+#, fuzzy
+msgid "invalid default argument for a template template parameter"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
+
+#: cp/semantics.c:2004
msgid "definition of `%#T' inside template parameter list"
msgstr ""
-#: cp/semantics.c:1710
+#: cp/semantics.c:2015
msgid "invalid definition of qualified type `%T'"
msgstr ""
-#: cp/semantics.c:2053
+#: cp/semantics.c:2030
+msgid "previous definition of `%#T'"
+msgstr "папÑÑ€ÑднÑе вызначÑньне `%#T'"
+
+#: cp/semantics.c:2225
#, fuzzy
msgid "invalid base-class specification"
msgstr "ÐерÑчаіÑÐ½Ð°Ñ ÑпецыфікацыÑ! Памылка Ñž cc."
-#: cp/semantics.c:2062
+#: cp/semantics.c:2234
msgid "base class `%T' has cv qualifiers"
msgstr ""
-#: cp/semantics.c:2093
+#: cp/semantics.c:2266
msgid "multiple declarators in template declaration"
msgstr ""
-#: cp/semantics.c:2120
-#, fuzzy, c-format
-msgid "type of `%E' is unknown"
-msgstr "вÑртаемы тып \"%s\" не \"int\""
-
-#: cp/spew.c:225
-#, c-format
-msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
+#: cp/semantics.c:2277
+msgid "incomplete type `%T' used in nested name specifier"
msgstr ""
-#: cp/spew.c:1002 cp/spew.c:1340
-msgid "parse error at end of saved function text"
-msgstr ""
+#: cp/semantics.c:2279 cp/typeck.c:1616
+#, fuzzy
+msgid "`%D' is not a member of `%T'"
+msgstr "\"%s\" мае незавершаны тып"
-#: cp/spew.c:1090 cp/spew.c:1178
-msgid "%Hend of file read inside definition"
-msgstr ""
+#: cp/semantics.c:2282
+#, fuzzy
+msgid "`%D' is not a member of `%D'"
+msgstr "\"%s\" мае незавершаны тып"
-#: cp/spew.c:1121
-msgid "parse error in method specification"
+#: cp/semantics.c:2400
+msgid "template parameter `%D' of type `%T' is not allowed in an integral constant expression because it is not of integral or enumeration type"
msgstr ""
-#: cp/spew.c:1161
-msgid "function body for constructor missing"
-msgstr ""
+#: cp/semantics.c:2553
+#, fuzzy
+msgid "`%D' cannot appear in a constant-expression"
+msgstr "памер маÑіва \"%s\" адмоўны"
-#: cp/spew.c:1262
-msgid "%Hend of file read inside default argument"
+#: cp/semantics.c:2562
+msgid "use of namespace `%D' as expression"
msgstr ""
-#: cp/spew.c:1419
-msgid "circular dependency in default args of `%#D'"
+#: cp/semantics.c:2567
+msgid "use of class template `%T' as expression"
msgstr ""
-#: cp/spew.c:1483
-msgid "invalid type `%T' for default argument to `%T'"
+#. Ambiguous reference to base members.
+#: cp/semantics.c:2573
+msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
msgstr ""
-#: cp/spew.c:1548
+#: cp/semantics.c:2633
#, c-format
-msgid "%s before `%s'"
-msgstr "%s перад \"%s\""
-
-#: cp/spew.c:1550
-#, c-format
-msgid "%s before `%c'"
-msgstr "%s перад '%c'"
+msgid "use of %s from containing function"
+msgstr ""
-#: cp/spew.c:1552
-#, c-format
-msgid "%s before `\\%o'"
-msgstr "%s перад \"\\%o\""
+#: cp/semantics.c:2636
+msgid " `%#D' declared here"
+msgstr ""
-#: cp/spew.c:1555
-#, c-format
-msgid "%s before `%s' token"
-msgstr "%s перад знакам \"%s\""
+#: cp/semantics.c:2687
+#, fuzzy, c-format
+msgid "type of `%E' is unknown"
+msgstr "вÑртаемы тып \"%s\" не \"int\""
-#: cp/tree.c:263 cp/tree.c:275
+#: cp/tree.c:222
#, c-format
msgid "non-lvalue in %s"
msgstr ""
-#: cp/tree.c:562
+#: cp/tree.c:539
msgid "`%V' qualifiers cannot be applied to `%T'"
msgstr ""
-#: cp/tree.c:1941
+#: cp/tree.c:1830
#, c-format
msgid "`%s' attribute can only be applied to Java class definitions"
msgstr ""
-#: cp/tree.c:1971
+#: cp/tree.c:1859
#, c-format
msgid "`%s' attribute can only be applied to class definitions"
msgstr ""
-#: cp/tree.c:1977
+#: cp/tree.c:1865
#, c-format
msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default"
msgstr ""
-#: cp/tree.c:2002
+#: cp/tree.c:1889
msgid "requested init_priority is not an integer constant"
msgstr ""
-#: cp/tree.c:2023
+#: cp/tree.c:1910
#, c-format
msgid "can only use `%s' attribute on file-scope definitions of objects of class type"
msgstr ""
-#: cp/tree.c:2031
+#: cp/tree.c:1918
msgid "requested init_priority is out of range"
msgstr ""
-#: cp/tree.c:2041
+#: cp/tree.c:1928
msgid "requested init_priority is reserved for internal use"
msgstr ""
-#: cp/tree.c:2051
+#: cp/tree.c:1938
#, fuzzy, c-format
msgid "`%s' attribute is not supported on this platform"
msgstr "атрыбуты Ñекцыі не падтрымліваюцца Ð´Ð»Ñ Ð³Ñтай мÑÑ‚Ñ‹"
-#: cp/tree.c:2588
+#: cp/tree.c:2459
#, c-format
msgid "lang_* check: failed in %s, at %s:%d"
msgstr ""
-#: cp/typeck.c:524
-#, c-format
-msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
+#: cp/typeck.c:438 cp/typeck.c:453 cp/typeck.c:543
+msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
msgstr ""
-#: cp/typeck.c:545
-msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+#: cp/typeck.c:513
+#, c-format
+msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
msgstr ""
-#: cp/typeck.c:1436
-msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
+#: cp/typeck.c:563
+msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast"
msgstr ""
-#: cp/typeck.c:1514
+#: cp/typeck.c:1235
#, c-format
msgid "invalid application of `%s' to a member function"
msgstr ""
-#: cp/typeck.c:1520
-#, c-format
-msgid "invalid application of `%s' to non-static member"
-msgstr ""
+#: cp/typeck.c:1268
+#, fuzzy, c-format
+msgid "invalid application of `%s' to a bit-field"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: cp/typeck.c:1538
-msgid "sizeof applied to a bit-field"
-msgstr ""
+#: cp/typeck.c:1273
+#, fuzzy, c-format
+msgid "ISO C++ forbids applying `%s' to an expression of function type"
+msgstr "ISO C не дазвалÑе пуÑÑ‚Ñ‹ ізыходны файл"
-#: cp/typeck.c:1541
-msgid "ISO C++ forbids applying `sizeof' to an expression of function type"
-msgstr ""
+#: cp/typeck.c:1342
+#, fuzzy
+msgid "invalid use of non-static member function"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: cp/typeck.c:1759
+#: cp/typeck.c:1476
msgid "deprecated conversion from string constant to `%T'"
msgstr ""
-#: cp/typeck.c:1890 cp/typeck.c:2122
+#: cp/typeck.c:1587 cp/typeck.c:1874
msgid "request for member `%D' in `%E', which is of non-class type `%T'"
msgstr ""
-#: cp/typeck.c:1916
-#, fuzzy
-msgid "`%D' is not a member of `%T'"
-msgstr "\"%s\" мае незавершаны тып"
+#: cp/typeck.c:1614
+#, fuzzy, c-format
+msgid "invalid use of nonstatic data member '%E'"
+msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: cp/typeck.c:1957 cp/typeck.c:1978
+#: cp/typeck.c:1666 cp/typeck.c:1688
#, fuzzy
msgid "invalid access to non-static data member `%D' of NULL object"
msgstr "нÑвернае выкарыÑтанне \"restict\""
-#: cp/typeck.c:1959 cp/typeck.c:1980
+#: cp/typeck.c:1668 cp/typeck.c:1690
msgid "(perhaps the `offsetof' macro was used incorrectly)"
msgstr ""
-#: cp/typeck.c:2168
+#: cp/typeck.c:1804
+msgid "the type being destroyed is '%T', but the destructor refers to `%T'"
+msgstr ""
+
+#: cp/typeck.c:1924
#, fuzzy
msgid "`%D::%D' is not a member of `%T'"
msgstr "\"%s\" - гÑта не пачатак дÑкларацыі"
-#: cp/typeck.c:2179
+#: cp/typeck.c:1935
#, fuzzy
msgid "`%T' is not a base of `%T'"
msgstr "\"%s\" мае незавершаны тып"
-#: cp/typeck.c:2199
-msgid "destructor specifier `%T::~%T' must have matching names"
-msgstr ""
-
-#: cp/typeck.c:2205
-msgid "type `%T' has no destructor"
+#: cp/typeck.c:1954
+msgid "'%D' has no member named '%E'"
msgstr ""
-#: cp/typeck.c:2244
+#: cp/typeck.c:1969
#, fuzzy
msgid "`%D' is not a member template function"
msgstr "`%D' - гÑта Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ,"
#. A pointer to incomplete type (other than cv void) can be
#. dereferenced [expr.unary.op]/1
-#: cp/typeck.c:2338
+#: cp/typeck.c:2075
msgid "`%T' is not a pointer-to-object type"
msgstr ""
-#: cp/typeck.c:2365
+#: cp/typeck.c:2100
#, c-format
msgid "invalid use of `%s' on pointer to member"
msgstr ""
-#: cp/typeck.c:2371
+#: cp/typeck.c:2106
msgid "invalid type argument"
msgstr ""
-#: cp/typeck.c:2474
+#: cp/typeck.c:2212
msgid "ISO C++ forbids subscripting non-lvalue array"
msgstr ""
-#: cp/typeck.c:2485
+#: cp/typeck.c:2223
msgid "subscripting array declared `register'"
msgstr ""
-#: cp/typeck.c:2570
+#: cp/typeck.c:2306
#, c-format
msgid "object missing in use of `%E'"
msgstr ""
-#: cp/typeck.c:2674
+#: cp/typeck.c:2408
msgid "ISO C++ forbids calling `::main' from within program"
msgstr ""
-#: cp/typeck.c:2699
+#: cp/typeck.c:2433
#, c-format
msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'"
msgstr ""
-#: cp/typeck.c:2712
+#: cp/typeck.c:2446
#, fuzzy, c-format
msgid "`%E' cannot be used as a function"
msgstr "\"%s\" звычайна функцыÑ"
-#: cp/typeck.c:2824
+#: cp/typeck.c:2539
#, fuzzy
msgid "too many arguments to %s `%+#D'"
msgstr "вельмі шмат аргументаў у функцыі \"%s\""
-#: cp/typeck.c:2865
-msgid "parameter type of called function is incomplete"
+#: cp/typeck.c:2541 cp/typeck.c:2647
+msgid "at this point in file"
msgstr ""
-#: cp/typeck.c:2928
+#: cp/typeck.c:2578
+#, fuzzy
+msgid "parameter %P of `%D' has incomplete type `%T'"
+msgstr "\"%s\" мае незавершаны тып"
+
+#: cp/typeck.c:2581
+#, fuzzy
+msgid "parameter %P has incomplete type `%T'"
+msgstr "\"%s\" мае незавершаны тып"
+
+#: cp/typeck.c:2645
#, fuzzy
msgid "too few arguments to %s `%+#D'"
msgstr "нехапае аргументаў у функцыі \"%s\""
-#: cp/typeck.c:3056 cp/typeck.c:3066
+#: cp/typeck.c:2790 cp/typeck.c:2800
msgid "assuming cast to type `%T' from overloaded function"
msgstr ""
-#: cp/typeck.c:3126
+#: cp/typeck.c:2861
#, c-format
msgid "division by zero in `%E / 0'"
msgstr ""
-#: cp/typeck.c:3128
+#: cp/typeck.c:2863
#, c-format
msgid "division by zero in `%E / 0.'"
msgstr ""
-#: cp/typeck.c:3158
+#: cp/typeck.c:2892
#, c-format
msgid "division by zero in `%E %% 0'"
msgstr ""
-#: cp/typeck.c:3160
+#: cp/typeck.c:2894
#, c-format
msgid "division by zero in `%E %% 0.'"
msgstr ""
-#: cp/typeck.c:3240
+#: cp/typeck.c:2974
#, c-format
msgid "%s rotate count is negative"
msgstr ""
-#: cp/typeck.c:3243
+#: cp/typeck.c:2977
#, c-format
msgid "%s rotate count >= width of type"
msgstr ""
-#: cp/typeck.c:3274 cp/typeck.c:3279 cp/typeck.c:3370 cp/typeck.c:3375
+#: cp/typeck.c:3011 cp/typeck.c:3016 cp/typeck.c:3107 cp/typeck.c:3112
msgid "ISO C++ forbids comparison between pointer and integer"
msgstr ""
-#: cp/typeck.c:3553
+#: cp/typeck.c:3293
msgid "comparison between types `%#T' and `%#T'"
msgstr ""
-#: cp/typeck.c:3589
+#: cp/typeck.c:3329
msgid "comparison between signed and unsigned integer expressions"
msgstr ""
-#: cp/typeck.c:3654
+#: cp/typeck.c:3394
msgid "invalid operands of types `%T' and `%T' to binary `%O'"
msgstr ""
@@ -17619,764 +17049,587 @@ msgstr ""
#. performed. Note that pointer-difference and pointer-addition
#. have already been handled above, and so we don't end up here in
#. that case.
-#: cp/typeck.c:3676
+#: cp/typeck.c:3416
msgid "NULL used in arithmetic"
msgstr ""
-#: cp/typeck.c:3743
+#: cp/typeck.c:3479
msgid "ISO C++ forbids using pointer of type `void *' in subtraction"
msgstr ""
-#: cp/typeck.c:3745
+#: cp/typeck.c:3481
msgid "ISO C++ forbids using pointer to a function in subtraction"
msgstr ""
-#: cp/typeck.c:3747
+#: cp/typeck.c:3483
msgid "ISO C++ forbids using pointer to a method in subtraction"
msgstr ""
-#: cp/typeck.c:3749
-msgid "ISO C++ forbids using pointer to a member in subtraction"
-msgstr ""
-
-#: cp/typeck.c:3761
+#: cp/typeck.c:3495
msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
msgstr ""
-#: cp/typeck.c:3821
+#: cp/typeck.c:3550
#, c-format
msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id."
msgstr ""
-#: cp/typeck.c:3827
+#: cp/typeck.c:3556
#, c-format
msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function"
msgstr ""
-#: cp/typeck.c:3850
+#: cp/typeck.c:3578
msgid "taking address of temporary"
msgstr ""
-#: cp/typeck.c:4091
+#: cp/typeck.c:3813
#, c-format
msgid "ISO C++ forbids %sing an enum"
msgstr ""
-#: cp/typeck.c:4103
+#: cp/typeck.c:3824
#, fuzzy
msgid "cannot %s a pointer to incomplete type `%T'"
msgstr "\"%s\" мае незавершаны тып"
-#: cp/typeck.c:4110
+#: cp/typeck.c:3830
msgid "ISO C++ forbids %sing a pointer of type `%T'"
msgstr ""
-#: cp/typeck.c:4135
+#: cp/typeck.c:3855
msgid "cast to non-reference type used as lvalue"
msgstr ""
-#: cp/typeck.c:4169
+#: cp/typeck.c:3889
msgid "invalid use of `--' on bool variable `%D'"
msgstr ""
#. ARM $3.4
-#: cp/typeck.c:4202
+#: cp/typeck.c:3920
msgid "ISO C++ forbids taking address of function `::main'"
msgstr ""
#. An expression like &memfn.
-#: cp/typeck.c:4269
-msgid "ISO C++ forbids taking the address of an unqualified non-static member function to form a pointer to member function. Say `&%T::%D'"
+#: cp/typeck.c:3991
+msgid "ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function. Say `&%T::%D'"
msgstr ""
-#: cp/typeck.c:4271
+#: cp/typeck.c:3996
msgid "ISO C++ forbids taking the address of a bound member function to form a pointer to member function. Say `&%T::%D'"
msgstr ""
-#: cp/typeck.c:4295
+#: cp/typeck.c:4024
msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression"
msgstr ""
-#: cp/typeck.c:4324
+#: cp/typeck.c:4040
+msgid "unary `&'"
+msgstr ""
+
+#: cp/typeck.c:4069
#, fuzzy
msgid "attempt to take address of bit-field structure member `%D'"
msgstr "не магу атрымаць Ð°Ð´Ñ€Ð°Ñ Ð±Ñ–Ñ‚Ð°Ð²Ð°Ð³Ð° Ð¿Ð¾Ð»Ñ \"%s\""
-#: cp/typeck.c:4444
+#: cp/typeck.c:4183
msgid "taking address of destructor"
msgstr ""
-#: cp/typeck.c:4457
+#: cp/typeck.c:4196
msgid "taking address of bound pointer-to-member expression"
msgstr ""
-#: cp/typeck.c:4473
+#: cp/typeck.c:4204
msgid "cannot create pointer to reference member `%D'"
msgstr ""
-#: cp/typeck.c:4536
+#: cp/typeck.c:4266
msgid "cannot take the address of `this', which is an rvalue expression"
msgstr ""
-#: cp/typeck.c:4555
+#: cp/typeck.c:4285
msgid "address requested for `%D', which is declared `register'"
msgstr ""
-#: cp/typeck.c:4682
-msgid "static_cast from type `%T' to type `%T' casts away constness"
+#: cp/typeck.c:4353
+#, c-format
+msgid "%s expression list treated as compound expression"
+msgstr ""
+
+#: cp/typeck.c:4426
+msgid "%s from type `%T' to type `%T' casts away constness"
msgstr ""
-#: cp/typeck.c:4871
+#: cp/typeck.c:4618
msgid "invalid static_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4910
+#: cp/typeck.c:4658
msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4930
+#: cp/typeck.c:4678
msgid "reinterpret_cast from `%T' to `%T' loses precision"
msgstr ""
-#: cp/typeck.c:4943
-msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
-msgstr ""
-
-#: cp/typeck.c:4952
+#: cp/typeck.c:4697
msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object"
msgstr ""
-#: cp/typeck.c:4958
+#: cp/typeck.c:4703
msgid "invalid reinterpret_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4985
+#: cp/typeck.c:4731
msgid "invalid use of const_cast with type `%T', which is not a pointer, reference, nor a pointer-to-data-member type"
msgstr ""
-#: cp/typeck.c:4988
+#: cp/typeck.c:4734
msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type"
msgstr ""
-#: cp/typeck.c:5011
+#: cp/typeck.c:4757
msgid "invalid const_cast of an rvalue of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:5027
+#: cp/typeck.c:4774
msgid "invalid const_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:5069 cp/typeck.c:5074
+#: cp/typeck.c:4814 cp/typeck.c:4819
msgid "ISO C++ forbids casting to an array type `%T'"
msgstr ""
-#: cp/typeck.c:5082
+#: cp/typeck.c:4827
#, fuzzy
msgid "invalid cast to function type `%T'"
msgstr "ÐерÑчаіÑны выбар \"%s\""
-#: cp/typeck.c:5138
+#: cp/typeck.c:4883
msgid "cast from `%T' to `%T' discards qualifiers from pointer target type"
msgstr ""
-#: cp/typeck.c:5184
+#: cp/typeck.c:4929
msgid "cast from `%T' to `%T' increases required alignment of target type"
msgstr ""
-#: cp/typeck.c:5357
+#: cp/typeck.c:5093
msgid " in evaluation of `%Q(%#T, %#T)'"
msgstr ""
-#: cp/typeck.c:5399
+#: cp/typeck.c:5135
msgid "ISO C++ forbids cast to non-reference type used as lvalue"
msgstr ""
-#: cp/typeck.c:5463
+#: cp/typeck.c:5208
msgid "incompatible types in assignment of `%T' to `%T'"
msgstr ""
-#: cp/typeck.c:5470
+#: cp/typeck.c:5215
msgid "ISO C++ forbids assignment of arrays"
msgstr ""
-#: cp/typeck.c:5577
+#: cp/typeck.c:5314
msgid " in pointer to member function conversion"
msgstr ""
-#: cp/typeck.c:5585
+#: cp/typeck.c:5322
msgid " in pointer to member conversion"
msgstr ""
#. This is a reinterpret cast, we choose to do nothing.
-#: cp/typeck.c:5596 cp/typeck.c:5615
-msgid "pointer to member cast via virtual base `%T' of `%T'"
+#: cp/typeck.c:5332 cp/typeck.c:5347
+msgid "pointer to member cast via virtual base `%T'"
msgstr ""
-#: cp/typeck.c:5619
-msgid "pointer to member conversion via virtual base `%T' of `%T'"
+#: cp/typeck.c:5350
+msgid "pointer to member conversion via virtual base `%T'"
msgstr ""
-#: cp/typeck.c:5695
+#: cp/typeck.c:5420
msgid "invalid conversion to type `%T' from type `%T'"
msgstr ""
-#: cp/typeck.c:5860
+#: cp/typeck.c:5576
msgid "passing NULL used for non-pointer %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5863
+#: cp/typeck.c:5579
msgid "%s to non-pointer type `%T' from NULL"
msgstr ""
-#: cp/typeck.c:5871
+#: cp/typeck.c:5587
msgid "passing `%T' for %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5874
+#: cp/typeck.c:5590
msgid "%s to `%T' from `%T'"
msgstr ""
-#: cp/typeck.c:5884
+#: cp/typeck.c:5600
msgid "passing negative value `%E' for %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5887
+#: cp/typeck.c:5603
msgid "%s of negative value `%E' to `%T'"
msgstr ""
-#: cp/typeck.c:5982
+#: cp/typeck.c:5691
msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'"
msgstr ""
-#: cp/typeck.c:5985
+#: cp/typeck.c:5694
msgid "cannot convert `%T' to `%T' in %s"
msgstr ""
-#: cp/typeck.c:6073 cp/typeck.c:6075
+#: cp/typeck.c:5771 cp/typeck.c:5773
msgid "in passing argument %P of `%+D'"
msgstr ""
-#: cp/typeck.c:6190
+#: cp/typeck.c:5880
msgid "returning reference to temporary"
msgstr ""
-#: cp/typeck.c:6197
+#: cp/typeck.c:5887
msgid "reference to non-lvalue returned"
msgstr ""
-#: cp/typeck.c:6209
+#: cp/typeck.c:5899
msgid "reference to local variable `%D' returned"
msgstr ""
-#: cp/typeck.c:6212
+#: cp/typeck.c:5902
msgid "address of local variable `%D' returned"
msgstr ""
-#: cp/typeck.c:6243
+#: cp/typeck.c:5932
msgid "returning a value from a destructor"
msgstr ""
#. If a return statement appears in a handler of the
#. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.c:6251
+#: cp/typeck.c:5940
msgid "cannot return from a handler of a function-try-block of a constructor"
msgstr ""
#. You can't return a value from a constructor.
-#: cp/typeck.c:6254
+#: cp/typeck.c:5943
msgid "returning a value from a constructor"
msgstr ""
-#: cp/typeck.c:6271
-msgid "return-statement with no value, in function declared with a non-void return type"
+#: cp/typeck.c:5966
+msgid "return-statement with no value, in function returning '%T'"
msgstr ""
-#: cp/typeck.c:6287
-msgid "return-statement with a value, in function declared with a void return type"
+#: cp/typeck.c:5983
+msgid "return-statement with a value, in function returning 'void'"
msgstr ""
-#: cp/typeck.c:6308
+#: cp/typeck.c:6005
msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)"
msgstr ""
-#: cp/typeck2.c:54
+#: cp/typeck2.c:55
msgid "type `%T' is not a base type for type `%T'"
msgstr ""
-#: cp/typeck2.c:157
+#: cp/typeck2.c:151
msgid "cannot declare variable `%D' to be of type `%T'"
msgstr ""
-#: cp/typeck2.c:160
+#: cp/typeck2.c:154
msgid "cannot declare parameter `%D' to be of type `%T'"
msgstr ""
-#: cp/typeck2.c:163
+#: cp/typeck2.c:157
msgid "cannot declare field `%D' to be of type `%T'"
msgstr ""
-#: cp/typeck2.c:167
+#: cp/typeck2.c:161
msgid "invalid return type for member function `%#D'"
msgstr ""
-#: cp/typeck2.c:169
+#: cp/typeck2.c:163
msgid "invalid return type for function `%#D'"
msgstr ""
-#: cp/typeck2.c:172
+#: cp/typeck2.c:166
msgid "cannot allocate an object of type `%T'"
msgstr ""
-#: cp/typeck2.c:179
+#: cp/typeck2.c:173
msgid " because the following virtual functions are abstract:"
msgstr ""
-#: cp/typeck2.c:181
+#: cp/typeck2.c:175
msgid "\t%#D"
msgstr ""
-#: cp/typeck2.c:184
+#: cp/typeck2.c:178
msgid " since type `%T' has abstract virtual functions"
msgstr ""
-#: cp/typeck2.c:338
+#: cp/typeck2.c:426
msgid "constructor syntax used, but no constructor declared for type `%T'"
msgstr ""
-#: cp/typeck2.c:349
-msgid "comma expression used to initialize return value"
-msgstr ""
-
-#: cp/typeck2.c:358
+#: cp/typeck2.c:439
msgid "cannot initialize arrays using this syntax"
msgstr ""
-#: cp/typeck2.c:473
+#: cp/typeck2.c:544
msgid "initializing array with parameter list"
msgstr ""
-#: cp/typeck2.c:529
+#: cp/typeck2.c:599
msgid "initializer for scalar variable requires one element"
msgstr ""
-#: cp/typeck2.c:536
+#: cp/typeck2.c:606
msgid "braces around scalar initializer for `%T'"
msgstr ""
-#: cp/typeck2.c:539
+#: cp/typeck2.c:609
msgid "ignoring extra initializers for `%T'"
msgstr ""
-#: cp/typeck2.c:551
+#: cp/typeck2.c:621
msgid "variable-sized object of type `%T' may not be initialized"
msgstr ""
-#: cp/typeck2.c:561
+#: cp/typeck2.c:631
msgid "subobject of type `%T' must be initialized by constructor, not by `%E'"
msgstr ""
-#: cp/typeck2.c:627
+#: cp/typeck2.c:696
msgid "aggregate has a partly bracketed initializer"
msgstr ""
-#: cp/typeck2.c:665 cp/typeck2.c:770
+#: cp/typeck2.c:734 cp/typeck2.c:839
msgid "non-trivial labeled initializers"
msgstr ""
-#: cp/typeck2.c:682
+#: cp/typeck2.c:751
msgid "non-empty initializer for array of empty elements"
msgstr ""
-#: cp/typeck2.c:736
+#: cp/typeck2.c:805
msgid "initializer list for object of class with virtual base classes"
msgstr ""
-#: cp/typeck2.c:742
+#: cp/typeck2.c:811
msgid "initializer list for object of class with base classes"
msgstr ""
-#: cp/typeck2.c:748
+#: cp/typeck2.c:817
msgid "initializer list for object using virtual functions"
msgstr ""
-#: cp/typeck2.c:811 cp/typeck2.c:827
+#: cp/typeck2.c:879 cp/typeck2.c:895
#, fuzzy
msgid "missing initializer for member `%D'"
msgstr "прапушчан ініцыÑлізатар"
-#: cp/typeck2.c:816
+#: cp/typeck2.c:884
msgid "uninitialized const member `%D'"
msgstr ""
-#: cp/typeck2.c:818
+#: cp/typeck2.c:886
#, fuzzy
msgid "member `%D' with uninitialized const fields"
msgstr "параметр \"%s\" ініцыÑлізаваны"
-#: cp/typeck2.c:821
+#: cp/typeck2.c:889
#, fuzzy
msgid "member `%D' is uninitialized reference"
msgstr "параметр \"%s\" ініцыÑлізаваны"
-#: cp/typeck2.c:868
+#: cp/typeck2.c:936
msgid "index value instead of field name in union initializer"
msgstr ""
-#: cp/typeck2.c:880
+#: cp/typeck2.c:948
msgid "no field `%D' in union being initialized"
msgstr ""
-#: cp/typeck2.c:888
+#: cp/typeck2.c:956
msgid "union `%T' with no named members cannot be initialized"
msgstr ""
-#: cp/typeck2.c:924
+#: cp/typeck2.c:992
msgid "excess elements in aggregate initializer"
msgstr ""
-#: cp/typeck2.c:1038
+#: cp/typeck2.c:1100
msgid "circular pointer delegation detected"
msgstr ""
-#: cp/typeck2.c:1051
+#: cp/typeck2.c:1113
msgid "base operand of `->' has non-pointer type `%T'"
msgstr ""
-#: cp/typeck2.c:1065
+#: cp/typeck2.c:1137
msgid "result of `operator->()' yields non-pointer result"
msgstr ""
-#: cp/typeck2.c:1067
+#: cp/typeck2.c:1139
msgid "base operand of `->' is not a pointer"
msgstr ""
-#: cp/typeck2.c:1133
+#: cp/typeck2.c:1162
msgid "`%E' cannot be used as a member pointer, since it is of type `%T'"
msgstr ""
-#: cp/typeck2.c:1140
+#: cp/typeck2.c:1170
msgid "cannot apply member pointer `%E' to `%E', which is of non-aggregate type `%T'"
msgstr ""
-#: cp/typeck2.c:1149
+#: cp/typeck2.c:1180
msgid "member type `%T::' incompatible with object type `%T'"
msgstr ""
-#: cp/typeck2.c:1186
-msgid "`%T' fails to be a typedef or built-in type"
-msgstr ""
-
-#: cp/typeck2.c:1259
-#, c-format
-msgid "ISO C++ forbids defining types within %s"
-msgstr ""
-
-#: cp/typeck2.c:1384
+#: cp/typeck2.c:1396
#, fuzzy
msgid "call to function `%D' which throws incomplete type `%#T'"
msgstr "\"%s\" мае незавершаны тып"
-#: cp/typeck2.c:1387
+#: cp/typeck2.c:1399
#, fuzzy
msgid "call to function which throws incomplete type `%#T'"
msgstr "\"%s\" мае незавершаны тып"
#. XXX Not i18n clean.
-#: cp/cp-tree.h:3936
+#: cp/cp-tree.h:3756
#, c-format
msgid "%s is deprecated, please see the documentation for details"
msgstr ""
-#: cp/lang-options.h:29
-msgid "Do not obey access control semantics"
-msgstr ""
-
-#: cp/lang-options.h:31
-msgid "Change when template instances are emitted"
-msgstr ""
-
-#: cp/lang-options.h:36
-msgid "Check the return value of new"
-msgstr ""
-
-#: cp/lang-options.h:39
-msgid "Reduce size of object files"
-msgstr ""
-
-#: cp/lang-options.h:43
-msgid "Make string literals `char[]' instead of `const char[]'"
-msgstr ""
-
-#: cp/lang-options.h:46
-msgid "Dump the entire translation unit to a file"
-msgstr ""
-
-#: cp/lang-options.h:48
-msgid "Do not inline member functions by default"
-msgstr ""
-
-#: cp/lang-options.h:51
-msgid "Do not generate run time type descriptor information"
-msgstr ""
-
-#: cp/lang-options.h:56
-msgid "Do not generate code to check exception specifications"
-msgstr ""
-
-#: cp/lang-options.h:61
-msgid "Scope of for-init-statement vars extends outside"
-msgstr ""
-
-#: cp/lang-options.h:64
-msgid "Do not recognize GNU defined keywords"
-msgstr ""
-
-#: cp/lang-options.h:68
-msgid "Enable support for huge objects"
-msgstr ""
-
-#: cp/lang-options.h:72
-msgid "Export functions even if they can be inlined"
-msgstr ""
-
-#: cp/lang-options.h:75
-#, fuzzy
-msgid "Only emit explicit template instantiations"
-msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-
-#: cp/lang-options.h:78
-#, fuzzy
-msgid "Only emit explicit instantiations of inline templates"
-msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-
-#: cp/lang-options.h:84
-msgid "Don't pedwarn about uses of Microsoft extensions"
-msgstr ""
-
-#: cp/lang-options.h:87
-msgid "Recognize and/bitand/bitor/compl/not/or/xor"
-msgstr ""
-
-#: cp/lang-options.h:91
-msgid "Disable optional diagnostics"
-msgstr ""
-
-#: cp/lang-options.h:93
-msgid "Downgrade conformance errors to warnings"
-msgstr ""
-
-#: cp/lang-options.h:96
-msgid "Enable automatic template instantiation"
-msgstr ""
-
-#: cp/lang-options.h:101
-msgid "Display statistics accumulated during compilation"
-msgstr ""
-
-#: cp/lang-options.h:104
-msgid "Specify maximum template instantiation depth"
-msgstr ""
-
-#: cp/lang-options.h:106
-msgid "Use __cxa_atexit to register destructors"
-msgstr ""
-
-#: cp/lang-options.h:109
-msgid "Discard unused virtual functions"
-msgstr ""
-
-#: cp/lang-options.h:112
-msgid "Implement vtables using thunks"
-msgstr ""
-
-#: cp/lang-options.h:115
-msgid "Emit common-like symbols as weak symbols"
-msgstr ""
-
-#: cp/lang-options.h:118
-msgid "Emit cross referencing information"
-msgstr ""
-
-#: cp/lang-options.h:122
-msgid "Warn about inconsistent return types"
-msgstr ""
-
-#: cp/lang-options.h:125
-msgid "Warn about overloaded virtual function names"
-msgstr ""
-
-#: cp/lang-options.h:129
-msgid "Don't warn when all ctors/dtors are private"
-msgstr ""
-
-#: cp/lang-options.h:131
-msgid "Warn about non virtual destructors"
-msgstr ""
-
-#: cp/lang-options.h:134
-msgid "Warn when a function is declared extern, then inline"
-msgstr ""
-
-#: cp/lang-options.h:137
-msgid "Warn when the compiler reorders code"
-msgstr ""
-
-#: cp/lang-options.h:140
-msgid "Warn when synthesis behavior differs from Cfront"
-msgstr ""
-
-#: cp/lang-options.h:144
-msgid "Don't warn when type converting pointers to member functions"
-msgstr ""
-
-#: cp/lang-options.h:146
-msgid "Warn about violations of Effective C++ style rules"
-msgstr ""
-
-#: cp/lang-options.h:149
-msgid "Warn when overload promotes from unsigned to signed"
-msgstr ""
-
-#: cp/lang-options.h:152
-msgid "Warn if a C style cast is used in a program"
-msgstr ""
-
-#: cp/lang-options.h:156
-msgid "Don't warn when non-templatized friend functions are declared within a template"
-msgstr ""
-
-#: cp/lang-options.h:159
-msgid "Don't announce deprecation of compiler features"
-msgstr ""
-
-#: f/bad.c:387
+#: f/bad.c:388
msgid "note:"
msgstr ""
-#: f/bad.c:391
+#: f/bad.c:392
msgid "warning:"
msgstr "увага:"
-#: f/bad.c:395
+#: f/bad.c:396
msgid "fatal:"
msgstr ""
-#: f/bad.c:437
+#: f/bad.c:438
msgid "(continued):"
msgstr ""
-#: f/bad.c:487 f/bad.c:505
+#: f/bad.c:488 f/bad.c:506
msgid "[REPORT BUG!!] %"
msgstr ""
-#: f/bad.c:494 f/bad.c:526
+#: f/bad.c:495 f/bad.c:527
msgid "[REPORT BUG!!]"
msgstr ""
-#: f/com.c:3132
+#: f/com.c:3125
#, no-c-format
msgid "ASSIGN'ed label cannot fit into `%A' at %0 -- using wider sibling"
msgstr ""
-#: f/com.c:11623
+#: f/com.c:11565
msgid "no INTEGER type can hold a pointer on this configuration"
msgstr ""
-#: f/com.c:11844
+#: f/com.c:11839
#, c-format
msgid "configuration: REAL, INTEGER, and LOGICAL are %d bits wide,"
msgstr ""
-#: f/com.c:11846
+#: f/com.c:11841
#, c-format
msgid "and pointers are %d bits wide, but g77 doesn't yet work"
msgstr ""
-#: f/com.c:11848
+#: f/com.c:11843
msgid "properly unless they all are 32 bits wide"
msgstr ""
-#: f/com.c:11849
+#: f/com.c:11844
msgid "Please keep this in mind before you report bugs."
msgstr ""
#. I/O will probably crash.
-#: f/com.c:11857
+#: f/com.c:11852
#, c-format
msgid "configuration: char * holds %d bits, but ftnlen only %d"
msgstr ""
#. ASSIGN 10 TO I will crash.
-#: f/com.c:11866
+#: f/com.c:11861
#, c-format
msgid ""
"configuration: char * holds %d bits, but INTEGER only %d --\n"
" ASSIGN statement might fail"
msgstr ""
-#: f/com.c:13681
+#: f/com.c:13677
#, fuzzy
msgid "In statement function"
msgstr "вельмі шмат аргументаў у функцыі"
-#: f/com.c:13691
+#: f/com.c:13687
+#, c-format
msgid "Outside of any program unit:\n"
msgstr ""
-#: f/com.c:15320
+#: f/com.c:15283
#, no-c-format
msgid "%A from %B at %0%C"
msgstr ""
-#: f/com.c:15497
-msgid "directory name must immediately follow -I"
-msgstr ""
-
-#: f/com.c:15640
+#: f/com.c:15593
#, no-c-format
msgid "At %0, INCLUDE file %A exists, but is not readable"
msgstr ""
-#: f/com.c:15675
+#: f/com.c:15628
#, no-c-format
msgid "At %0, INCLUDE nesting too deep"
msgstr ""
-#: f/expr.c:9614
+#: f/expr.c:8706
#, no-c-format
msgid "Two arithmetic operators in a row at %0 and %1 -- use parentheses"
msgstr ""
-#: f/expr.c:9664
+#: f/expr.c:8756
#, no-c-format
msgid "Operator at %0 has lower precedence than that at %1 -- use parentheses"
msgstr ""
-#: f/expr.c:10525
+#: f/expr.c:9639
#, no-c-format
msgid "Use .EQV./.NEQV. instead of .EQ./.NE. at %0 for LOGICAL operands at %1 and %2"
msgstr ""
-#: f/expr.c:10896
+#: f/expr.c:10010
#, no-c-format
msgid "Unsupported operand for ** at %1 -- converting to default INTEGER"
msgstr ""
-#: f/g77spec.c:234
+#: f/g77spec.c:230
#, c-format
msgid "overflowed output arg list for `%s'"
msgstr ""
-#: f/g77spec.c:373
+#: f/g77spec.c:367
msgid "--driver no longer supported"
msgstr ""
-#: f/g77spec.c:386
+#: f/g77spec.c:380
#, c-format
msgid "argument to `%s' missing"
msgstr "аргумент Ð´Ð»Ñ \"%s\" прапушчан"
-#: f/g77spec.c:390
+#: f/g77spec.c:384
msgid "no input files; unwilling to write output files"
msgstr ""
@@ -18385,131 +17638,126 @@ msgstr ""
msgid "Implicit declaration of `%A' at %0"
msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-#: f/lex.c:326
+#: f/lex.c:321
#, no-c-format
msgid "Non-ISO-C-standard escape sequence `\\%A' at %0"
msgstr ""
-#: f/lex.c:345
+#: f/lex.c:340
#, no-c-format
msgid "Unknown escape sequence `\\%A' at %0"
msgstr "ÐевÑÐ´Ð¾Ð¼Ð°Ñ ESC-паÑлÑдоўнаÑьць `\\%A' at %0"
-#: f/lex.c:354
+#: f/lex.c:349
#, fuzzy, no-c-format
msgid "Unterminated escape sequence `\\' at %0"
msgstr "невÑÐ´Ð¾Ð¼Ð°Ñ ESC-паÑлÑдоўнаÑць '\\%c'"
-#: f/lex.c:365
+#: f/lex.c:360
#, no-c-format
msgid "Unknown escape sequence `\\' followed by char code 0x%A at %0"
msgstr ""
-#: f/lex.c:393
+#: f/lex.c:388
#, no-c-format
msgid "\\x used at %0 with no following hex digits"
msgstr ""
-#: f/lex.c:407
+#: f/lex.c:402
#, no-c-format
msgid "Hex escape at %0 out of range"
msgstr ""
-#: f/lex.c:441
+#: f/lex.c:436
#, no-c-format
msgid "Escape sequence at %0 out of range for character"
msgstr ""
-#: f/lex.c:595
+#: f/lex.c:590
msgid "hex escape out of range"
msgstr ""
-#: f/lex.c:648
+#: f/lex.c:643
#, c-format
msgid "non-ANSI-standard escape sequence, `\\%c'"
msgstr ""
-#: f/lex.c:661
+#: f/lex.c:656
#, fuzzy, c-format
msgid "non-ISO escape sequence `\\%c'"
msgstr "невÑÐ´Ð¾Ð¼Ð°Ñ ESC-паÑлÑдоўнаÑць '\\%c'"
-#: f/lex.c:665
+#: f/lex.c:660
#, c-format
msgid "unknown escape sequence `\\%c'"
msgstr ""
-#: f/lex.c:667
+#: f/lex.c:662
#, c-format
msgid "unknown escape sequence: `\\' followed by char code 0x%x"
msgstr ""
-#: f/lex.c:744
+#: f/lex.c:739
msgid "badly formed directive -- no closing quote"
msgstr ""
-#: f/lex.c:802
+#: f/lex.c:797
msgid "#-lines for entering and leaving files don't match"
msgstr ""
-#: f/lex.c:964
+#: f/lex.c:957
msgid "bad directive -- missing close-quote"
msgstr ""
-#: f/lex.c:1078
-#, c-format
-msgid "ignoring pragma: %s"
-msgstr ""
-
-#: f/lex.c:1156
+#: f/lex.c:1096
msgid "invalid #ident"
msgstr ""
-#: f/lex.c:1173
+#: f/lex.c:1113
msgid "undefined or invalid # directive"
msgstr ""
-#: f/lex.c:1229
+#: f/lex.c:1168
msgid "invalid #line"
msgstr ""
-#: f/lex.c:1285 f/lex.c:1329
+#: f/lex.c:1224 f/lex.c:1268
msgid "use `#line ...' instead of `# ...' in first line"
msgstr ""
-#: f/lex.c:1339
+#: f/lex.c:1278
msgid "invalid #-line"
msgstr ""
-#: f/lex.c:1432
+#: f/lex.c:1371
#, no-c-format
msgid "Null character at %0 -- line ignored"
msgstr ""
-#: f/stb.c:12078
+#: f/stb.c:9177
#, no-c-format
msgid "INCLUDE at %0 not the only statement on the source line"
msgstr ""
-#: f/ste.c:1400 f/ste.c:1747
+#: f/ste.c:1397 f/ste.c:1744
msgid "ASSIGNed FORMAT specifier is too small"
msgstr ""
#. ~~~Someday handle CHARACTER*1, CHARACTER*N
-#: f/ste.c:2624
+#: f/ste.c:2621
#, no-c-format
msgid "SELECT CASE on CHARACTER type (at %0) not supported -- sorry"
msgstr ""
-#: f/ste.c:2729
+#: f/ste.c:2725
msgid "SELECT (at %0) has duplicate cases -- check integer overflow of CASE(s)"
msgstr ""
-#: f/ste.c:2959
+#: f/ste.c:2957
msgid "ASSIGN to variable that is too small"
msgstr ""
-#: f/ste.c:2987
+#: f/ste.c:2989
msgid "ASSIGNed GOTO target variable is too small"
msgstr ""
@@ -18518,331 +17766,20 @@ msgstr ""
msgid "Local adjustable symbol `%A' at %0"
msgstr ""
-#: f/target.c:2550
+#: f/target.c:2545
msgid "data initializer on host with different endianness"
msgstr ""
-#: f/top.c:237
-#, c-format
-msgid "%s no longer supported -- try -fvxt"
-msgstr ""
-
-#: f/top.c:239
-#, c-format
-msgid "%s no longer supported -- try -fno-vxt -ff90"
-msgstr ""
-
-#: f/top.c:307 f/top.c:309
-#, c-format
-msgid "%s disabled, use normal debugging flags"
-msgstr ""
-
-#: f/lang-options.h:33
-msgid "Print g77-specific compiler version info, run internal tests"
-msgstr ""
-
-#: f/lang-options.h:37
-msgid "Program is written in typical FORTRAN 66 dialect"
-msgstr ""
-
-#: f/lang-options.h:40
-msgid "Program is written in typical Unix f77 dialect"
-msgstr ""
-
-#: f/lang-options.h:42
-msgid "Program does not use Unix-f77 dialectal features"
-msgstr ""
-
-#: f/lang-options.h:44
-msgid "Program is written in Fortran-90-ish dialect"
-msgstr ""
-
-#: f/lang-options.h:48
-msgid "Treat local vars and COMMON blocks as if they were named in SAVE statements"
-msgstr ""
-
-#: f/lang-options.h:50
-msgid "Allow $ in symbol names"
-msgstr ""
-
-#: f/lang-options.h:54
-msgid "f2c-compatible code need not be generated"
-msgstr ""
-
-#: f/lang-options.h:57
-msgid "Unsupported; do not generate libf2c-calling code"
-msgstr ""
-
-#: f/lang-options.h:59
-msgid "Unsupported; affects code-generation of arrays"
-msgstr ""
-
-#: f/lang-options.h:62
-msgid "Program is written in Fortran-90-ish free form"
-msgstr ""
-
-#: f/lang-options.h:67
-msgid "Warn about use of (only a few for now) Fortran extensions"
-msgstr ""
-
-#: f/lang-options.h:70
-msgid "Program is written in VXT (Digital-like) FORTRAN"
-msgstr ""
-
-#: f/lang-options.h:73
-msgid "Disallow all ugly features"
-msgstr ""
-
-#: f/lang-options.h:76
-msgid "Hollerith and typeless constants not passed as arguments"
-msgstr ""
-
-#: f/lang-options.h:78
-msgid "Allow ordinary copying of ASSIGN'ed vars"
-msgstr ""
-
-#: f/lang-options.h:81
-msgid "Dummy array dimensioned to (1) is assumed-size"
-msgstr ""
-
-#: f/lang-options.h:84
-msgid "Trailing comma in procedure call denotes null argument"
-msgstr ""
-
-#: f/lang-options.h:87
-msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
-msgstr ""
-
-#: f/lang-options.h:91
-msgid "Initialization via DATA and PARAMETER is type-compatible"
-msgstr ""
-
-#: f/lang-options.h:93
-msgid "Allow INTEGER and LOGICAL interchangeability"
-msgstr ""
-
-#: f/lang-options.h:96
-msgid "Print internal debugging-related info"
-msgstr ""
-
-#: f/lang-options.h:99
-msgid "Initialize local vars and arrays to zero"
-msgstr ""
-
-#: f/lang-options.h:103
-msgid "Backslashes in character/hollerith constants not special (C-style)"
-msgstr ""
-
-#: f/lang-options.h:105
-msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
-msgstr ""
-
-#: f/lang-options.h:109
-msgid "Disable the appending of underscores to externals"
-msgstr ""
-
-#: f/lang-options.h:112
-msgid "Never append a second underscore to externals"
-msgstr ""
-
-#: f/lang-options.h:114
-msgid "Intrinsics spelled as e.g. SqRt"
-msgstr ""
-
-#: f/lang-options.h:116
-msgid "Intrinsics in uppercase"
-msgstr ""
-
-#: f/lang-options.h:119
-msgid "Intrinsics letters in arbitrary cases"
-msgstr ""
-
-#: f/lang-options.h:121
-msgid "Language keywords spelled as e.g. IOStat"
-msgstr ""
-
-#: f/lang-options.h:123
-msgid "Language keywords in uppercase"
-msgstr ""
-
-#: f/lang-options.h:126
-msgid "Language keyword letters in arbitrary cases"
-msgstr ""
-
-#: f/lang-options.h:128
-msgid "Internally convert most source to uppercase"
-msgstr ""
-
-#: f/lang-options.h:131
-msgid "Internally preserve source case"
-msgstr ""
-
-#: f/lang-options.h:133
-msgid "Symbol names spelled in mixed case"
-msgstr ""
-
-#: f/lang-options.h:135
-msgid "Symbol names in uppercase"
-msgstr ""
-
-#: f/lang-options.h:137
-msgid "Symbol names in lowercase"
-msgstr ""
-
-#: f/lang-options.h:140
-msgid "Program written in uppercase"
-msgstr ""
-
-#: f/lang-options.h:142
-msgid "Program written in lowercase"
-msgstr ""
-
-#: f/lang-options.h:144
-msgid "Program written in strict mixed-case"
-msgstr ""
-
-#: f/lang-options.h:146
-msgid "Compile as if program written in uppercase"
-msgstr ""
-
-#: f/lang-options.h:148
-msgid "Compile as if program written in lowercase"
-msgstr ""
-
-#: f/lang-options.h:150
-msgid "Preserve all spelling (case) used in program"
-msgstr ""
-
-#: f/lang-options.h:152
-msgid "Delete libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:154
-msgid "Disable libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:157
-msgid "Hide libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:159
-msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:161
-msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:164
-msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:166
-msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:168
-msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:171
-msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:173
-msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
-msgstr ""
-
-#: f/lang-options.h:175
-msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:178
-msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:180
-msgid "Delete MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:182
-msgid "Disable MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:185
-msgid "Hide MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:187
-msgid "Delete libU77 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:189
-msgid "Disable libU77 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:192
-msgid "Hide libU77 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:194
-msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:196
-msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+#: f/top.c:244
+msgid "-fvxt-not-f90 no longer supported -- try -fvxt"
msgstr ""
-#: f/lang-options.h:199
-msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:201
-msgid "Treat initial values of 0 like non-zero values"
-msgstr ""
-
-#: f/lang-options.h:204
-msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
-msgstr ""
-
-#: f/lang-options.h:207
-msgid "Take at least one trip through each iterative DO loop"
-msgstr ""
-
-#: f/lang-options.h:211
-msgid "Print names of program units as they are compiled"
-msgstr ""
-
-#: f/lang-options.h:214
-msgid "Disable fatal diagnostics about inter-procedural problems"
-msgstr ""
-
-#: f/lang-options.h:216
-msgid "Make prefix-radix non-decimal constants be typeless"
-msgstr ""
-
-#: f/lang-options.h:219
-msgid "Generate code to check subscript and substring bounds"
-msgstr ""
-
-#: f/lang-options.h:222
-msgid "Fortran-specific form of -fbounds-check"
+#: f/top.c:248
+msgid "-ff90-not-vxt no longer supported -- try -fno-vxt -ff90"
msgstr ""
-#: f/lang-options.h:226
-msgid "Disable warnings about inter-procedural problems"
-msgstr ""
-
-#: f/lang-options.h:230
-msgid "Warn about constructs with surprising meanings"
-msgstr ""
-
-#: f/lang-options.h:235
-msgid "Add a directory for INCLUDE searching"
-msgstr ""
-
-#: f/lang-options.h:237
-msgid "Set the maximum line length"
+#: f/top.c:318
+msgid "-fdebug-kludge is disabled, use normal debugging flags"
msgstr ""
#: f/bad.def:39
@@ -19747,321 +18684,343 @@ msgstr ""
msgid "In anything"
msgstr ""
-#: java/check-init.c:917
+#: java/check-init.c:905
#, c-format
msgid "internal error in check-init: tree code not implemented: %s"
msgstr ""
-#: java/check-init.c:990
-#, c-format
-msgid "final field '%s' may not have been initialized"
+#: java/check-init.c:977
+msgid "%Jfinal field '%D' may not have been initialized"
msgstr ""
-#: java/class.c:539 java/class.c:564
+#: java/class.c:592 java/class.c:616
msgid "internal error - too many interface type"
msgstr ""
-#: java/class.c:677
+#: java/class.c:715
msgid "bad method signature"
msgstr ""
-#: java/class.c:726
+#: java/class.c:759
msgid "misplaced ConstantValue attribute (not in any field)"
msgstr ""
-#: java/class.c:728
+#: java/class.c:761
#, c-format
msgid "duplicate ConstantValue attribute for field '%s'"
msgstr ""
-#: java/class.c:739
+#: java/class.c:772
#, c-format
msgid "ConstantValue attribute of field '%s' has wrong type"
msgstr ""
-#: java/class.c:1103
+#: java/class.c:1067
#, c-format
msgid "field '%s' not found in class"
msgstr "поле \"%s\" не знойдзена Ñž клаÑе"
-#: java/class.c:1365
-msgid "abstract method in non-abstract class"
+#: java/class.c:1324
+#, fuzzy
+msgid "%Jabstract method in non-abstract class"
msgstr "абÑтрактны метад у неабÑтрактным клаÑе"
-#: java/class.c:2078
+#: java/class.c:2140
+msgid "%Jnon-static method '%D' overrides static method"
+msgstr ""
+
+#: java/decl.c:1018
+#, fuzzy
+msgid "%J'%D' used prior to declaration"
+msgstr "\"%s\" - гÑта не пачатак дÑкларацыі"
+
+#: java/decl.c:1059
#, c-format
-msgid "non-static method '%s' overrides static method"
+msgid "declaration of `%s' shadows a parameter"
msgstr ""
-#: java/decl.c:1541
+#: java/decl.c:1062
#, c-format
-msgid "In %s: overlapped variable and exception ranges at %d"
+msgid "declaration of `%s' shadows a symbol from the parameter list"
+msgstr ""
+
+#: java/decl.c:1361
+#, fuzzy
+msgid "%Jlabel '%D' used but not defined"
+msgstr "адмеціна `%D' выкарыÑтоўвываецца, але Ð½Ñ Ð²Ñ‹Ð·Ð½Ð°Ñ‡Ð°Ð½Ð°"
+
+#: java/decl.c:1366
+#, fuzzy
+msgid "%Jlabel '%D' defined but not used"
+msgstr "адмеціна `%D' вызначана, але не выкарыÑтоўваецца"
+
+#: java/decl.c:1494
+msgid "%JIn %D: overlapped variable and exception ranges at %d"
msgstr ""
-#: java/decl.c:1622
+#: java/decl.c:1572
msgid "bad type in parameter debug info"
msgstr ""
-#: java/decl.c:1632
-#, c-format
-msgid "bad PC range for debug info for local `%s'"
+#: java/decl.c:1581
+msgid "%Jbad PC range for debug info for local '%D'"
msgstr ""
-#: java/expr.c:530
+#: java/expr.c:519
msgid "stack underflow - dup* operation"
msgstr ""
-#: java/expr.c:1534
+#: java/expr.c:1469
#, c-format
msgid "reference `%s' is ambiguous: appears in interface `%s' and interface `%s'"
msgstr ""
-#: java/expr.c:1563
+#: java/expr.c:1497
#, c-format
msgid "field `%s' not found"
msgstr ""
-#: java/expr.c:1715
+#: java/expr.c:1658
msgid "ret instruction not implemented"
msgstr ""
-#: java/expr.c:1857
+#: java/expr.c:1815
#, c-format
msgid "method '%s' not found in class"
msgstr "метад \"%s\" не знойдзен у клаÑе"
-#: java/expr.c:2060
+#: java/expr.c:2020
#, c-format
msgid "failed to find class '%s'"
msgstr "не знойдзен ÐºÐ»Ð°Ñ \"%s\""
-#: java/expr.c:2070
+#: java/expr.c:2030
#, c-format
msgid "class '%s' has no method named '%s' matching signature '%s'"
msgstr ""
-#: java/expr.c:2080
+#: java/expr.c:2040
msgid "invokestatic on non static method"
msgstr ""
-#: java/expr.c:2085
+#: java/expr.c:2045
msgid "invokestatic on abstract method"
msgstr ""
-#: java/expr.c:2093
+#: java/expr.c:2053
msgid "invoke[non-static] on static method"
msgstr ""
-#: java/expr.c:2396
+#: java/expr.c:2352
#, c-format
msgid "missing field '%s' in '%s'"
msgstr "прапушчана поле '%s' у '%s'"
-#: java/expr.c:2402
+#: java/expr.c:2358
#, fuzzy, c-format
msgid "mismatching signature for field '%s' in '%s'"
msgstr "Прапушчана поле \"%s\" у \"%s\""
-#: java/expr.c:2425
-#, c-format
-msgid "assignment to final field `%s' not in field's class"
+#: java/expr.c:2380
+msgid "%Jassignment to final field '%D' not in field's class"
msgstr ""
-#: java/expr.c:2430
-#, c-format
-msgid "assignment to final static field `%s' not in class initializer"
+#: java/expr.c:2385
+msgid "%Jassignment to final static field `%D' not in class initializer"
msgstr ""
-#: java/expr.c:2437
-#, c-format
-msgid "assignment to final field `%s' not in constructor"
+#: java/expr.c:2393
+msgid "%Jassignment to final field '%D' not in constructor"
msgstr ""
-#: java/expr.c:2684
+#: java/expr.c:2636
#, fuzzy, c-format
msgid "can't expand %s"
msgstr "не магу прачытаць з %s"
-#: java/expr.c:2861
+#: java/expr.c:2808
msgid "invalid PC in line number table"
msgstr ""
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2906
+#: java/expr.c:2854
#, c-format
msgid "unreachable bytecode from %d to before %d"
msgstr ""
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2943
+#: java/expr.c:2892
#, c-format
msgid "unreachable bytecode from %d to the end of the method"
msgstr ""
#. duplicate code from LOAD macro
-#: java/expr.c:3261
+#: java/expr.c:3206
msgid "unrecogized wide sub-instruction"
msgstr ""
-#: java/jcf-io.c:543
+#: java/jcf-io.c:534
#, c-format
msgid "source file for class `%s' is newer than its matching class file. Source file `%s' used instead"
msgstr ""
-#: java/jcf-parse.c:338
+#: java/jcf-parse.c:330
msgid "bad string constant"
msgstr ""
-#: java/jcf-parse.c:356
+#: java/jcf-parse.c:348
#, c-format
msgid "bad value constant type %d, index %d"
msgstr ""
-#: java/jcf-parse.c:528
-#, c-format
-msgid "can't reopen %s"
-msgstr ""
+#: java/jcf-parse.c:514
+#, fuzzy, c-format
+msgid "can't reopen %s: %m"
+msgstr "немагчыма адчыніць %s"
-#: java/jcf-parse.c:533
-#, c-format
-msgid "can't close %s"
+#: java/jcf-parse.c:519
+#, fuzzy, c-format
+msgid "can't close %s: %m"
msgstr "не магу зачыніць %s"
-#: java/jcf-parse.c:619
+#: java/jcf-parse.c:604
#, c-format
msgid "cannot find file for class %s"
msgstr "немагчыма знайÑьці файл Ð´Ð»Ñ ÐºÐ»ÑÑа %s"
-#: java/jcf-parse.c:631
+#: java/jcf-parse.c:615
msgid "not a valid Java .class file"
msgstr ""
-#: java/jcf-parse.c:634
+#: java/jcf-parse.c:618
msgid "error while parsing constant pool"
msgstr ""
-#: java/jcf-parse.c:637
+#: java/jcf-parse.c:621
#, c-format
msgid "error in constant pool entry #%d\n"
msgstr ""
#. FIXME - where was first time
-#: java/jcf-parse.c:649
+#: java/jcf-parse.c:633
#, c-format
msgid "reading class %s for the second time from %s"
msgstr ""
-#: java/jcf-parse.c:667
+#: java/jcf-parse.c:651
msgid "error while parsing fields"
msgstr ""
-#: java/jcf-parse.c:670
+#: java/jcf-parse.c:654
msgid "error while parsing methods"
msgstr ""
-#: java/jcf-parse.c:673
+#: java/jcf-parse.c:657
msgid "error while parsing final attributes"
msgstr ""
-#: java/jcf-parse.c:687
+#: java/jcf-parse.c:671
#, c-format
msgid "the `java.lang.Object' that was found in `%s' didn't have the special zero-length `gnu.gcj.gcj-compiled' attribute. This generally means that your classpath is incorrectly set. Use `info gcj \"Input Options\"' to see the info page describing how to set the classpath"
msgstr ""
-#: java/jcf-parse.c:777
+#: java/jcf-parse.c:749
msgid "missing Code attribute"
msgstr ""
-#: java/jcf-parse.c:1014
-msgid "source file seen twice on command line and will be compiled only once"
+#: java/jcf-parse.c:981
+msgid "%Hsource file seen twice on command line and will be compiled only once"
msgstr ""
-#: java/jcf-parse.c:1030
+#: java/jcf-parse.c:997
msgid "no input file specified"
msgstr "не зададзены ўваходзÑÑ‡Ñ‹Ñ Ñ„Ð°Ð¹Ð»Ñ‹"
-#: java/jcf-parse.c:1059
-#, c-format
-msgid "can't close input file %s"
+#: java/jcf-parse.c:1026
+#, fuzzy, c-format
+msgid "can't close input file %s: %m"
msgstr "немагчыма зачыніць уваходзÑчы файл %s"
-#: java/jcf-parse.c:1096
+#: java/jcf-parse.c:1064
#, c-format
msgid "bad zip/jar file %s"
msgstr "дрÑнны zip/jar файл \"%s\""
-#: java/jcf-write.c:2650
+#: java/jcf-parse.c:1236
+#, c-format
+msgid "error while reading %s from zip file"
+msgstr ""
+
+#: java/jcf-write.c:2602
#, c-format
msgid "internal error in generate_bytecode_insn - tree code not implemented: %s"
msgstr ""
-#: java/jcf-write.c:2988
+#: java/jcf-write.c:2934
#, fuzzy
msgid "field initializer type mismatch"
msgstr "нерÑчаіÑны ініцыÑлізатар"
-#: java/jcf-write.c:3419
-#, c-format
-msgid "can't create directory %s"
+#: java/jcf-write.c:3389
+#, fuzzy, c-format
+msgid "can't create directory %s: %m"
msgstr "немагчыма Ñтварыць дырÑкторыю \"%s\""
-#: java/jcf-write.c:3473
+#: java/jcf-write.c:3442
#, fuzzy, c-format
-msgid "can't create %s"
-msgstr "не магу зачыніць %s"
+msgid "can't create %s: %m"
+msgstr "немагчыма Ñтварыць дырÑкторыю \"%s\""
-#: java/jv-scan.c:187
+#: java/jv-scan.c:185
msgid "only one of `--print-main', `--list-class', and `--complexity' allowed"
msgstr ""
-#: java/jv-scan.c:190
+#: java/jv-scan.c:188
#, c-format
msgid "can't open output file `%s'"
msgstr "немагчыма адчыніць файл уводу `%s'"
-#: java/jv-scan.c:224
+#: java/jv-scan.c:222
#, c-format
msgid "file not found `%s'"
msgstr "файл `%s' Ð½Ñ Ð·Ð½Ð¾Ð¹Ð´Ð·ÐµÐ½"
-#: java/jvspec.c:426
+#: java/jvspec.c:418
msgid "can't specify `-D' without `--main'\n"
msgstr ""
-#: java/jvspec.c:429
+#: java/jvspec.c:421
#, c-format
msgid "`%s' is not a valid class name"
msgstr ""
-#: java/jvspec.c:435
+#: java/jvspec.c:427
msgid "--resource requires -o"
msgstr ""
-#: java/jvspec.c:442
+#: java/jvspec.c:434
msgid "warning: already-compiled .class files ignored with -C"
msgstr ""
-#: java/jvspec.c:449
+#: java/jvspec.c:441
msgid "cannot specify both -C and -o"
msgstr ""
-#: java/jvspec.c:461
+#: java/jvspec.c:453
msgid "cannot create temporary file"
msgstr "немагчыма Ñтварыць чаÑовы файл"
-#: java/jvspec.c:489
+#: java/jvspec.c:481
msgid "using both @FILE with multiple files not implemented"
msgstr ""
-#: java/jvspec.c:538
+#: java/jvspec.c:530
msgid "cannot specify `main' class when not linking"
msgstr ""
-#: java/lang.c:548
+#: java/lang.c:740
msgid "can't do dependency tracking with input from stdin"
msgstr ""
-#: java/lang.c:564
+#: java/lang.c:756
msgid "couldn't determine target name for dependency tracking"
msgstr ""
@@ -20075,545 +19034,437 @@ msgid ""
"`--encoding=UTF-8' option"
msgstr ""
-#: java/mangle.c:85
+#: java/mangle.c:89
#, fuzzy, c-format
msgid "can't mangle %s"
msgstr "не магу зачыніць %s"
-#: java/mangle_name.c:144 java/mangle_name.c:216
+#: java/mangle_name.c:140 java/mangle_name.c:210
msgid "internal error - invalid Utf8 name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:881
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:962
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1303
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1364
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1574
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1796
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1805
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1816
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1827
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1839
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1854
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1871
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1873
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1945
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2116
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2178
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2330
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2342
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2349
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2356
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2367
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2369
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2407
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2409
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2411
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2432
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2434
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2436
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2452
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2454
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2475
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2477
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2479
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2507
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2509
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2511
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2513
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2531
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2533
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2555
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2566
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2577
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2588
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2601
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2605
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2607
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2620
+#: java/parse-scan.y:880 java/parse.y:949 java/parse.y:1290 java/parse.y:1351
+#: java/parse.y:1555 java/parse.y:1777 java/parse.y:1786 java/parse.y:1797
+#: java/parse.y:1808 java/parse.y:1820 java/parse.y:1835 java/parse.y:1852
+#: java/parse.y:1854 java/parse.y:1935 java/parse.y:2106 java/parse.y:2168
+#: java/parse.y:2320 java/parse.y:2332 java/parse.y:2339 java/parse.y:2346
+#: java/parse.y:2357 java/parse.y:2359 java/parse.y:2397 java/parse.y:2399
+#: java/parse.y:2401 java/parse.y:2422 java/parse.y:2424 java/parse.y:2426
+#: java/parse.y:2442 java/parse.y:2444 java/parse.y:2465 java/parse.y:2467
+#: java/parse.y:2469 java/parse.y:2497 java/parse.y:2499 java/parse.y:2501
+#: java/parse.y:2503 java/parse.y:2521 java/parse.y:2523 java/parse.y:2534
+#: java/parse.y:2545 java/parse.y:2556 java/parse.y:2567 java/parse.y:2578
+#: java/parse.y:2591 java/parse.y:2595 java/parse.y:2597 java/parse.y:2610
msgid "Missing term"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:883
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:734
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:772
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:797
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:983
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1338
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1550
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1552
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1781
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1807
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1818
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1829
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1841
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1856
+#: java/parse-scan.y:882 java/parse.y:721 java/parse.y:759 java/parse.y:784
+#: java/parse.y:970 java/parse.y:1325 java/parse.y:1531 java/parse.y:1533
+#: java/parse.y:1762 java/parse.y:1788 java/parse.y:1799 java/parse.y:1810
+#: java/parse.y:1822 java/parse.y:1837
msgid "';' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:732
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:770
+#: java/parse.y:719 java/parse.y:757
msgid "Missing name"
msgstr "Прапушчана назва"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:795
+#: java/parse.y:782
msgid "'*' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:809
+#: java/parse.y:796
msgid "Class or interface declaration expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:846
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:848
+#: java/parse.y:833 java/parse.y:835
msgid "Missing class name"
msgstr "Прапушчана назва клаÑа"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:851
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:855
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:863
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1023
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1284
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1616
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1867
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1899
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1952
+#: java/parse.y:838 java/parse.y:842 java/parse.y:850 java/parse.y:1010
+#: java/parse.y:1271 java/parse.y:1273 java/parse.y:1597 java/parse.y:1848
+#: java/parse.y:1880 java/parse.y:1942
msgid "'{' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:865
+#: java/parse.y:852
msgid "Missing super class name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:875
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:891
+#: java/parse.y:862 java/parse.y:878
msgid "Missing interface name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:977
+#: java/parse.y:964
msgid "Missing variable initializer"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:994
+#: java/parse.y:981
msgid "Invalid declaration"
msgstr "ÐерÑчаіÑнае абвÑшчÑнне"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:997
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1082
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2153
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2175
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2179
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2214
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2291
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2301
+#: java/parse.y:984 java/parse.y:1069 java/parse.y:2143 java/parse.y:2165
+#: java/parse.y:2169 java/parse.y:2204 java/parse.y:2281 java/parse.y:2291
msgid "']' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1001
+#: java/parse.y:988
msgid "Unbalanced ']'"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1037
+#: java/parse.y:1024
msgid "Invalid method declaration, method name required"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1042
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1047
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1052
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2036
+#: java/parse.y:1029 java/parse.y:1034 java/parse.y:1039 java/parse.y:2026
msgid "Identifier expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1057
+#: java/parse.y:1044
msgid "Invalid method declaration, return type required"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1080
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1530
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1537
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1546
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1548
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1576
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1684
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1981
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2034
+#: java/parse.y:1067 java/parse.y:1511 java/parse.y:1518 java/parse.y:1527
+#: java/parse.y:1529 java/parse.y:1557 java/parse.y:1665 java/parse.y:1971
+#: java/parse.y:2024
msgid "')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1096
+#: java/parse.y:1083
msgid "Missing formal parameter term"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1111
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1116
+#: java/parse.y:1098 java/parse.y:1103
msgid "Missing identifier"
msgstr "Прапушчан ідÑнтыфікатар"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1136
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1145
+#: java/parse.y:1123 java/parse.y:1132
msgid "Missing class type term"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1301
+#: java/parse.y:1288
msgid "Invalid interface type"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1494
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1663
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1665
+#: java/parse.y:1475 java/parse.y:1644 java/parse.y:1646
msgid "':' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1516
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1521
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1526
+#: java/parse.y:1497 java/parse.y:1502 java/parse.y:1507
msgid "Invalid expression statement"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1572
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1612
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1680
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1748
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1869
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1938
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2028
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2030
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2038
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2274
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2276
+#: java/parse.y:1525 java/parse.y:1553 java/parse.y:1593 java/parse.y:1661
+#: java/parse.y:1729 java/parse.y:1850 java/parse.y:1928 java/parse.y:2018
+#: java/parse.y:2020 java/parse.y:2028 java/parse.y:2264 java/parse.y:2266
msgid "'(' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1614
+#: java/parse.y:1595
msgid "Missing term or ')'"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1661
+#: java/parse.y:1642
msgid "Missing or invalid constant expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1682
+#: java/parse.y:1663
msgid "Missing term and ')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1721
+#: java/parse.y:1702
msgid "Invalid control expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1723
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1725
+#: java/parse.y:1704 java/parse.y:1706
msgid "Invalid update expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1750
+#: java/parse.y:1731
msgid "Invalid init statement"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1941
+#: java/parse.y:1931
msgid "Missing term or ')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1983
+#: java/parse.y:1973
msgid "'class' or 'this' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1985
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1987
+#: java/parse.y:1975 java/parse.y:1977
msgid "'class' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2032
+#: java/parse.y:2022
msgid "')' or term expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2151
+#: java/parse.y:2141
msgid "'[' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2229
+#: java/parse.y:2219
msgid "Field expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2296
+#: java/parse.y:2276 java/parse.y:2286
msgid "Missing term and ']' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2400
+#: java/parse.y:2390
msgid "']' expected, invalid type expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2403
+#: java/parse.y:2393
msgid "Invalid type expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2515
+#: java/parse.y:2505
msgid "Invalid reference type"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2993
+#: java/parse.y:2977
msgid "Constructor invocation must be first thing in a constructor"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2995
+#: java/parse.y:2979
msgid "Only constructors can invoke constructors"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3004
+#: java/parse.y:2987
#, c-format
msgid ": `%s' JDK1.1(TM) feature"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3064
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3066
+#: java/parse.y:3046 java/parse.y:3048
#, c-format
msgid ""
"%s.\n"
"%s"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6879
+#: java/parse.y:6908
#, c-format
msgid "malformed .zip archive in CLASSPATH: %s"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6950
+#: java/parse.y:6979
#, c-format
msgid "Can't find default package `%s'. Check the CLASSPATH environment variable and the access to the archives"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12352
+#: java/parse.y:12192
#, c-format
msgid "missing static field `%s'"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12357
+#: java/parse.y:12197
#, c-format
msgid "not a static field `%s'"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12400
+#: java/parse.y:12240
#, c-format
msgid "No case for %s"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:13365
+#: java/parse.y:13172
#, c-format
msgid "unregistered operator %s"
msgstr "нераÑпазнаны аператар %s"
-#: java/typeck.c:553
+#: java/typeck.c:530
msgid "junk at end of signature string"
msgstr ""
-#: java/verify.c:479
+#: java/verify.c:471
msgid "bad pc in exception_table"
msgstr ""
-#: java/verify.c:485
-msgid "exception handler inside code that is being protected"
-msgstr ""
-
-#: java/verify.c:1395
+#: java/verify.c:1384
#, c-format
msgid "unknown opcode %d@pc=%d during verification"
msgstr ""
-#: java/verify.c:1465 java/verify.c:1478 java/verify.c:1482
+#: java/verify.c:1454 java/verify.c:1467 java/verify.c:1471
#, c-format
msgid "verification error at PC=%d"
msgstr ""
-#: java/lang-options.h:32
-msgid "Disable automatic array bounds checking"
-msgstr ""
-
-#: java/lang-options.h:34
-msgid "Disable assignability checks for stores into object arrays"
-msgstr ""
-
-#: java/lang-options.h:36
-msgid "Assume native functions are implemented using JNI"
-msgstr ""
-
-#: java/lang-options.h:38
-msgid "Replace system path"
-msgstr ""
-
-#: java/lang-options.h:40
-msgid "Set class path"
-msgstr ""
-
-#: java/lang-options.h:42
-msgid "Set class path (deprecated: use --classpath instead)"
-msgstr ""
-
-#: java/lang-options.h:44
-msgid "Choose class whose main method should be used"
-msgstr ""
-
-#: java/lang-options.h:46
-msgid "Choose input encoding (default comes from locale)"
-msgstr ""
-
-#: java/lang-options.h:48
-msgid "Add directory to class path"
-msgstr ""
-
-#: java/lang-options.h:50
-msgid "Directory where class files should be written"
-msgstr ""
-
-#: java/lang-options.h:52
-msgid "Warn if modifiers are specified when not necessary"
-msgstr ""
-
-#: java/lang-options.h:54
-msgid "Warn if deprecated empty statements are found"
-msgstr ""
-
-#: java/lang-options.h:56
-msgid "Warn if .class files are out of date"
-msgstr ""
-
-#: java/lang-options.h:58
-msgid "Always check for non gcj generated classes archives"
-msgstr ""
-
-#: java/lang-options.h:60
-msgid "Never optimize static class initialization code"
-msgstr ""
-
-#: java/lang-options.h:62
-msgid "Use offset tables for virtual method calls"
-msgstr ""
-
-#: objc/objc-act.c:651
+#: objc/objc-act.c:689
#, c-format
msgid "object does not conform to the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:737 objc/objc-act.c:810
+#: objc/objc-act.c:775 objc/objc-act.c:848
#, c-format
msgid "class `%s' does not implement the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:914
+#: objc/objc-act.c:951
#, c-format
-msgid "`%s' cannot be statically allocated"
+msgid "statically allocated instance of Objective-C class `%s'"
msgstr ""
-#: objc/objc-act.c:963
+#: objc/objc-act.c:998
#, c-format
msgid "unexpected type for `id' (%s)"
msgstr ""
-#: objc/objc-act.c:968
+#: objc/objc-act.c:1003
msgid "undefined type `id', please import <objc/objc.h>"
msgstr ""
-#: objc/objc-act.c:1019
+#: objc/objc-act.c:1052
#, c-format
msgid "protocol `%s' has circular dependency"
msgstr ""
-#: objc/objc-act.c:1041 objc/objc-act.c:5301
+#: objc/objc-act.c:1074 objc/objc-act.c:5982
#, fuzzy, c-format
msgid "cannot find protocol declaration for `%s'"
msgstr "Ðе магу знайÑці дÑкларацыю пратакола Ð´Ð»Ñ \"%s\""
-#: objc/objc-act.c:1289 objc/objc-act.c:5877 objc/objc-act.c:6195
-#: objc/objc-act.c:6244 objc/objc-act.c:6280 objc-parse.y:1799
+#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6513
+#: objc/objc-act.c:6822 objc/objc-act.c:6875 objc/objc-act.c:6900
#, fuzzy, c-format
msgid "cannot find interface declaration for `%s'"
msgstr "Ðе магу знайÑці дÑкларацыю інтÑрфейÑа Ð´Ð»Ñ \"%s\""
-#: objc/objc-act.c:1328
+#: objc/objc-act.c:1423
+#, c-format
+msgid "interface `%s' does not have valid constant string layout"
+msgstr ""
+
+#: objc/objc-act.c:1439
#, fuzzy, c-format
msgid "cannot find reference tag for class `%s'"
msgstr "Ðе магу знайÑці файл Ð´Ð»Ñ ÐºÐ»Ð°Ñа %s."
-#: objc/objc-act.c:2050
+#: objc/objc-act.c:2179
#, c-format
msgid "creating selector for non existant method %s"
msgstr ""
-#: objc/objc-act.c:2364
+#: objc/objc-act.c:2389
+#, c-format
+msgid "`%s' is not an Objective-C class name or alias"
+msgstr ""
+
+#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6769
+#: objc/objc-act.c:7059 objc/objc-act.c:7088
+msgid "Objective-C declarations may only appear in global scope"
+msgstr ""
+
+#: objc/objc-act.c:2505
#, c-format
msgid "cannot find class `%s'"
msgstr "немагчыма знайÑьці клÑÑ `%s'"
-#: objc/objc-act.c:2366
+#: objc/objc-act.c:2507
#, c-format
msgid "class `%s' already exists"
msgstr "клÑÑ `%s' ужо Ñ–Ñнуе"
+#: objc/objc-act.c:2532 objc/objc-act.c:6791
+#, c-format
+msgid "`%s' redeclared as different kind of symbol"
+msgstr ""
+
#. fatal did not work with 2 args...should fix
-#: objc/objc-act.c:2473
+#: objc/objc-act.c:2680
#, fuzzy, c-format
msgid "cannot find interface declaration for `%s', superclass of `%s'"
msgstr "Ðе магу знайÑці дÑкларацыю інтÑрфейÑа Ð´Ð»Ñ \"%s\""
-#: objc/objc-act.c:2480
+#: objc/objc-act.c:2687
#, fuzzy, c-format
msgid "circular inheritance in interface declaration for `%s'"
msgstr "Ðе магу знайÑці дÑкларацыю інтÑрфейÑа Ð´Ð»Ñ \"%s\""
-#: objc/objc-act.c:3566 objc/objc-act.c:3583
-msgid "inconsistent instance variable specification"
+#: objc/objc-act.c:2780 objc/objc-act.c:2924 objc/objc-act.c:3024
+#: objc/objc-act.c:3200 objc/objc-act.c:3240
+msgid "Use `-fobjc-exceptions' to enable Objective-C exception syntax"
msgstr ""
-#: objc/objc-act.c:4580
-msgid "can not use an object as parameter to a method\n"
+#: objc/objc-act.c:2787
+msgid "`@throw;' (rethrow) used outside of a `@catch' block"
msgstr ""
-#: objc/objc-act.c:4780
-#, c-format
-msgid "multiple declarations for method `%s'"
+#: objc/objc-act.c:3027
+msgid "`@catch' parameter is not a known Objective-C class type"
msgstr ""
-#: objc/objc-act.c:4946
-#, c-format
-msgid "invalid receiver type `%s'"
+#: objc/objc-act.c:3036
+msgid "Exception already handled by preceding `@catch(id)'"
msgstr ""
-#: objc/objc-act.c:4977 objc/objc-act.c:5003 objc/objc-act.c:5051
+#: objc/objc-act.c:3041
#, c-format
-msgid "`%s' does not respond to `%s'"
+msgid "Exception of type `%s *' already handled by `@catch (%s *)'"
msgstr ""
-#: objc/objc-act.c:4983 objc/objc-act.c:7318
-#, c-format
-msgid "no super class declared in interface for `%s'"
+#: objc/objc-act.c:3206
+msgid "`@try' without `@catch' or `@finally'"
msgstr ""
-#: objc/objc-act.c:5081
+#: objc/objc-act.c:3647
+msgid "%Jtype '%D' does not have a known size"
+msgstr ""
+
+#: objc/objc-act.c:4256
#, fuzzy
-msgid "cannot find class (factory) method"
-msgstr "не магу знайÑці метад."
+msgid "%J%s `%s'"
+msgstr "Ñк `%D'"
+
+#: objc/objc-act.c:4281 objc/objc-act.c:4300
+msgid "inconsistent instance variable specification"
+msgstr ""
+
+#: objc/objc-act.c:5303
+msgid "can not use an object as parameter to a method\n"
+msgstr ""
-#: objc/objc-act.c:5082 objc/objc-act.c:5126
+#: objc/objc-act.c:5504
#, c-format
-msgid "return type for `%s' defaults to id"
+msgid "multiple %s named `%c%s' found"
+msgstr ""
+
+#: objc/objc-act.c:5721
+#, fuzzy, c-format
+msgid "no super class declared in @interface for `%s'"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+
+#: objc/objc-act.c:5809
+#, c-format
+msgid "invalid receiver type `%s'"
msgstr ""
-#: objc/objc-act.c:5099
+#: objc/objc-act.c:5820
#, fuzzy, c-format
-msgid "method `%s' not implemented by protocol"
+msgid "`%s' may not respond to `%c%s'"
+msgstr "\"%s\" атрыбут ігнарыруецца"
+
+#: objc/objc-act.c:5825
+#, fuzzy, c-format
+msgid "`%c%s' not implemented by protocol(s)"
msgstr "метад \"%s\" не знойдзен у клаÑе"
-#: objc/objc-act.c:5108
-msgid "return type defaults to id"
+#: objc/objc-act.c:5830
+msgid "(Messages without a matching method signature"
msgstr ""
-#: objc/objc-act.c:5125
-msgid "cannot find method"
-msgstr "немагчыма знайÑьці мÑтад"
+#: objc/objc-act.c:5831
+msgid "will be assumed to return `id' and accept"
+msgstr ""
-#: objc/objc-act.c:5399
+#: objc/objc-act.c:5832
+#, fuzzy
+msgid "`...' as arguments.)"
+msgstr "нÑма аргументаў"
+
+#: objc/objc-act.c:6079
#, fuzzy, c-format
msgid "undeclared selector `%s'"
msgstr "у абвÑшчÑньні `%D'"
@@ -20627,303 +19478,1951 @@ msgstr "у абвÑшчÑньні `%D'"
#. to an instance variable. It's better to catch the cases
#. where this is done unknowingly than to support the above
#. paradigm.
-#: objc/objc-act.c:5443
+#: objc/objc-act.c:6121
#, c-format
msgid "instance variable `%s' accessed in class method"
msgstr ""
-#: objc/objc-act.c:5678
+#: objc/objc-act.c:6327
#, fuzzy, c-format
-msgid "duplicate definition of class method `%s'"
+msgid "duplicate declaration of method `%c%s'"
msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
-#: objc/objc-act.c:5684
-#, fuzzy, c-format
-msgid "duplicate declaration of class method `%s'"
-msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
+#: objc/objc-act.c:6368
+#, c-format
+msgid "duplicate interface declaration for category `%s(%s)'"
+msgstr ""
+
+#: objc/objc-act.c:6398
+#, c-format
+msgid "illegal reference type specified for instance variable `%s'"
+msgstr ""
-#: objc/objc-act.c:5720
+#: objc/objc-act.c:6414
#, c-format
-msgid "duplicate definition of instance method `%s'"
+msgid "instance variable `%s' has unknown size"
msgstr ""
-#: objc/objc-act.c:5726
+#. vtable pointers are Real Bad(tm), since Obj-C cannot initialize them
+#: objc/objc-act.c:6428
#, fuzzy, c-format
-msgid "duplicate declaration of instance method `%s'"
-msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
+msgid "type `%s' has virtual member functions"
+msgstr "`%s' - звычайна функцыÑ"
-#: objc/objc-act.c:5766
+#: objc/objc-act.c:6429
#, c-format
-msgid "duplicate interface declaration for category `%s(%s)'"
+msgid "illegal aggregate type `%s' specified for instance variable `%s'"
msgstr ""
-#: objc/objc-act.c:5852
+#: objc/objc-act.c:6437
+#, c-format
+msgid "type `%s' has a user-defined constructor"
+msgstr ""
+
+#: objc/objc-act.c:6439
+#, c-format
+msgid "type `%s' has a user-defined destructor"
+msgstr ""
+
+#: objc/objc-act.c:6440
+msgid "C++ constructors and destructors will not be invoked for Objective-C fields"
+msgstr ""
+
+#: objc/objc-act.c:6490
#, c-format
msgid "instance variable `%s' is declared private"
msgstr ""
-#: objc/objc-act.c:5899
+#: objc/objc-act.c:6539
+#, c-format
+msgid "instance variable `%s' is %s; this will be a hard error in the future"
+msgstr ""
+
+#: objc/objc-act.c:6546
#, c-format
msgid "instance variable `%s' is declared %s"
msgstr ""
-#: objc/objc-act.c:5909
+#: objc/objc-act.c:6556
msgid "static access to object of type `id'"
msgstr ""
-#: objc/objc-act.c:5934 objc/objc-act.c:6027
+#: objc/objc-act.c:6578 objc/objc-act.c:6666
#, c-format
msgid "incomplete implementation of class `%s'"
msgstr ""
-#: objc/objc-act.c:5938 objc/objc-act.c:6032
+#: objc/objc-act.c:6582 objc/objc-act.c:6671
#, c-format
msgid "incomplete implementation of category `%s'"
msgstr ""
-#: objc/objc-act.c:5943 objc/objc-act.c:6037
+#: objc/objc-act.c:6587 objc/objc-act.c:6676
#, c-format
msgid "method definition for `%c%s' not found"
msgstr ""
-#: objc/objc-act.c:6081
+#: objc/objc-act.c:6717
#, c-format
msgid "%s `%s' does not fully implement the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:6139 objc/objc-act.c:8249
+#: objc/objc-act.c:6775 objc/objc-act.c:8803
msgid "`@end' missing in implementation context"
msgstr ""
-#: objc/objc-act.c:6167
+#: objc/objc-act.c:6805
#, c-format
msgid "reimplementation of class `%s'"
msgstr ""
-#: objc/objc-act.c:6209
+#: objc/objc-act.c:6836
#, c-format
msgid "conflicting super class name `%s'"
msgstr ""
-#: objc/objc-act.c:6224
+#: objc/objc-act.c:6838
+#, c-format
+msgid "previous declaration of `%s'"
+msgstr ""
+
+#: objc/objc-act.c:6852 objc/objc-act.c:6854
#, c-format
msgid "duplicate interface declaration for class `%s'"
msgstr ""
-#: objc/objc-act.c:6506
+#: objc/objc-act.c:7121
#, c-format
msgid "duplicate declaration for protocol `%s'"
msgstr ""
-#: objc/objc-act.c:7363
-msgid "[super ...] must appear in a method context"
+#. Add a readable method name to the warning.
+#: objc/objc-act.c:7613
+msgid "%J%s `%c%s'"
msgstr ""
-#: objc/objc-act.c:8354 objc/objc-act.c:8370
+#: objc/objc-act.c:7908
#, c-format
-msgid "potential selector conflict for method `%s'"
+msgid "no super class declared in interface for `%s'"
+msgstr ""
+
+#: objc/objc-act.c:7956
+msgid "[super ...] must appear in a method context"
msgstr ""
-#: objc-parse.y:2655
+#: objc/objc-parse.y:2700
msgid "`@end' must appear in an implementation context"
msgstr ""
-#: objc-parse.y:2931
+#: objc/objc-parse.y:2913
msgid "method definition not in class context"
msgstr ""
-#: objc/lang-options.h:27
-msgid "Dump decls to a .decl file"
+#: options.c:24
+#, fuzzy
+msgid "Display this information"
+msgstr " --help ÐдлюÑтраваць гÑту інфармацыю\n"
+
+#: options.c:30
+msgid "--param <param>=<value>\tSet paramter <param> to value. See below for a complete list of parameters"
msgstr ""
-#: objc/lang-options.h:29
-msgid "Generate code for GNU runtime environment"
+#: options.c:39
+msgid "-A<question>=<answer>\tAssert the <answer> to <question>. Putting '-' before <question> disables the <answer> to <question>"
+msgstr ""
+
+#: options.c:42
+#, fuzzy
+msgid "Do not discard comments"
+msgstr "Ð½ÐµÐ·Ð°Ð²ÐµÑ€ÑˆÐ°Ð½Ñ‹Ñ ÐºÐ°Ð¼ÐµÐ½Ñ‚Ð°Ñ€Ñ‹Ñ–"
+
+#: options.c:45
+msgid "Do not discard comments in macro expansions"
+msgstr ""
+
+#: options.c:48
+msgid "-D<macro>[=<val>]\tDefine a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1"
+msgstr ""
+
+#: options.c:54
+msgid "-G<number>\tPut global and static data smaller than <number> bytes into a special section (on some targets)"
+msgstr ""
+
+#: options.c:57
+msgid "Print the name of header files as they are used"
+msgstr ""
+
+#: options.c:66
+msgid "Generate make dependencies and compile"
+msgstr ""
+
+#: options.c:75
+msgid "Treat missing header files as generated files"
+msgstr ""
+
+#: options.c:81
+msgid "Like -MD but ignore system header files"
+msgstr ""
+
+#: options.c:90
+msgid "-MQ <target>\tAdd a MAKE-quoted target"
+msgstr ""
+
+#: options.c:96
+msgid "-O<number>\tSet optimization level to <number>"
+msgstr ""
+
+#: options.c:99
+#, fuzzy
+msgid "Optimize for space rather than speed"
+msgstr "ÐÐ¿Ñ‚Ñ‹Ð¼Ñ–Ð·Ð°Ñ†Ñ‹Ñ Ð´Ð»Ñ SparcLite працÑÑараў"
+
+#: options.c:102
+#, fuzzy
+msgid "Do not generate #line directives"
+msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
+
+#: options.c:105
+msgid "-U<macro>\tUndefine <macro>"
+msgstr ""
+
+#: options.c:108
+msgid "This switch is deprecated; use -Wextra instead"
+msgstr ""
+
+#: options.c:114
+msgid "Warn about returning structures, unions or arrays"
+msgstr ""
+
+#: options.c:120
+msgid "Warn about casting functions to incompatible types"
+msgstr ""
+
+#: options.c:123
+msgid "Warn about pointer casts which increase alignment"
+msgstr ""
+
+#: options.c:126
+msgid "Warn about casts which discard qualifiers"
+msgstr ""
+
+#: options.c:129
+msgid "Warn about subscripts whose type is \"char\""
+msgstr ""
+
+#: options.c:138
+msgid "Warn about possibly confusing type conversions"
+msgstr ""
+
+#: options.c:141
+msgid "Warn when all constructors and destructors are private"
+msgstr ""
+
+#: options.c:144
+msgid "Warn when a declaration is found after a statement"
+msgstr ""
+
+#: options.c:147
+msgid "Warn if deprecated class, method, or field is used"
+msgstr ""
+
+#: options.c:150
+msgid "Warn about uses of __attribute__((deprecated)) declarations"
+msgstr ""
+
+#: options.c:153
+msgid "Warn when an optimization pass is disabled"
+msgstr ""
+
+#: options.c:156
+msgid "Warn about compile-time integer division by zero"
+msgstr ""
+
+#: options.c:159
+msgid "Warn about violations of Effective C++ style rules"
+msgstr ""
+
+#: options.c:162
+msgid "Warn about stray tokens after #elif and #endif"
+msgstr ""
+
+#: options.c:165
+msgid "Treat all warnings as errors"
+msgstr ""
+
+#: options.c:168
+#, fuzzy
+msgid "Make implicit function declarations an error"
+msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
+
+#: options.c:171
+msgid "Print extra (possibly unwanted) warnings"
+msgstr ""
+
+#: options.c:174
+msgid "Warn if deprecated empty statements are found"
+msgstr ""
+
+#: options.c:177
+msgid "Warn if testing floating point numbers for equality"
+msgstr ""
+
+#: options.c:180
+msgid "Warn about printf/scanf/strftime/strfmon format string anomalies"
+msgstr ""
+
+#: options.c:183
+#, fuzzy
+msgid "Warn if passing too many arguments to a function for its format string"
+msgstr "вельмі шмат аргумÑнтаў у функцыі `%s'"
+
+#: options.c:186
+msgid "Warn about format strings that are not literals"
msgstr ""
-#: objc/lang-options.h:32
-msgid "Generate code for NeXT runtime environment"
+#: options.c:189
+msgid "Warn about possible security problems with format functions"
+msgstr ""
+
+#: options.c:192
+msgid "Warn about strftime formats yielding 2-digit years"
+msgstr ""
+
+#: options.c:201
+msgid "Enable warnings about inter-procedural problems"
+msgstr ""
+
+#: options.c:207
+msgid "Warn about implicit function declarations"
+msgstr ""
+
+#: options.c:210
+msgid "Warn when a declaration does not specify a type"
msgstr ""
-#: objc/lang-options.h:35
+#: options.c:216
+msgid "Warn about variables which are initialized to themselves."
+msgstr ""
+
+#: options.c:219
+msgid "Warn when an inlined function cannot be inlined"
+msgstr ""
+
+#: options.c:222
+msgid "Warn about invalid uses of the \"offsetof\" macro"
+msgstr ""
+
+#: options.c:225
+msgid "Warn about PCH files that are found but not used"
+msgstr ""
+
+#: options.c:228
+msgid "-Wlarger-than-<number>\tWarn if an object is larger than <number> bytes"
+msgstr ""
+
+#: options.c:231
+msgid "Do not warn about using \"long long\" when -pedantic"
+msgstr ""
+
+#: options.c:234
+#, fuzzy
+msgid "Warn about suspicious declarations of \"main\""
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+
+#: options.c:237
+msgid "Warn about possibly missing braces around initializers"
+msgstr ""
+
+#: options.c:240
+#, fuzzy
+msgid "Warn about global functions without previous declarations"
+msgstr "ÑÐµÐºÑ†Ñ‹Ñ \"%s\" канфліктуе з папÑÑ€ÑднÑй дÑкларацыÑй"
+
+#: options.c:243
+msgid "Warn about functions which might be candidates for format attributes"
+msgstr ""
+
+#: options.c:246
+msgid "Warn about functions which might be candidates for __attribute__((noreturn))"
+msgstr ""
+
+#: options.c:249
+msgid "Warn about global functions without prototypes"
+msgstr ""
+
+#: options.c:252
+#, fuzzy
+msgid "Warn about use of multi-character character constants"
+msgstr "мнагаÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ð°Ñ ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ð°Ñ ÐºÐ°Ð½Ñтанта"
+
+#: options.c:255
+msgid "Warn about \"extern\" declarations not at file scope"
+msgstr ""
+
+#: options.c:258
+msgid "Warn when non-templatized friend functions are declared within a template"
+msgstr ""
+
+#: options.c:261
+msgid "Warn about non-virtual destructors"
+msgstr ""
+
+#: options.c:267
+msgid "Warn if a C-style cast is used in a program"
+msgstr ""
+
+#: options.c:270
+msgid "Warn if an old-style parameter definition is used"
+msgstr ""
+
+#: options.c:273
+msgid "Warn if .class files are out of date"
+msgstr ""
+
+#: options.c:276
+msgid "Warn about overloaded virtual function names"
+msgstr ""
+
+#: options.c:279
+msgid "Warn when the packed attribute has no effect on struct layout"
+msgstr ""
+
+#: options.c:282
+msgid "Warn when padding is required to align structure members"
+msgstr ""
+
+#: options.c:285
+msgid "Warn about possibly missing parentheses"
+msgstr ""
+
+#: options.c:288
+msgid "Warn when converting the type of pointers to member functions"
+msgstr ""
+
+#: options.c:291
+msgid "Warn about function pointer arithmetic"
+msgstr ""
+
+#: options.c:294
+msgid "Warn if inherited methods are unimplemented"
+msgstr ""
+
+#: options.c:297
+msgid "Warn about multiple declarations of the same object"
+msgstr ""
+
+#: options.c:300
+msgid "Warn if modifiers are specified when not necessary"
+msgstr ""
+
+#: options.c:303
+msgid "Warn when the compiler reorders code"
+msgstr ""
+
+#: options.c:306
+msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)"
+msgstr ""
+
+#: options.c:309
msgid "Warn if a selector has multiple methods"
msgstr ""
-#: objc/lang-options.h:39
-msgid "Do not warn if inherited methods are unimplemented"
+#: options.c:312
+msgid "Warn about possible violations of sequence point rules"
msgstr ""
-#: objc/lang-options.h:41
-msgid "Generate C header of platform specific features"
+#: options.c:315
+msgid "Warn when one local variable shadows another"
msgstr ""
-#: objc/lang-options.h:43
-msgid "Specify the name of the class for constant strings"
+#: options.c:318
+msgid "Warn about signed-unsigned comparisons"
msgstr ""
-#. This is the contribution to the `lang_options' array in gcc.c for
-#. treelang.
-#: treelang/lang-options.h:26
-msgid "(debug) trace parsing process"
+#: options.c:321
+msgid "Warn when overload promotes from unsigned to signed"
msgstr ""
-#: treelang/lang-options.h:27
-msgid "(debug) trace lexical analysis"
+#: options.c:324
+msgid "Warn about code which might break strict aliasing rules"
msgstr ""
-#: config/rs6000/darwin.h:62
-msgid " conflicting code gen style switches are used"
+#: options.c:327
+#, fuzzy
+msgid "Warn about unprototyped function declarations"
+msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+
+#: options.c:330
+msgid "Warn about constructs with surprising meanings"
msgstr ""
-#: config/i386/mingw32.h:85 config/i386/cygwin.h:171
-msgid "shared and mdll are not compatible"
+#: options.c:333
+msgid "Warn about enumerated switches, with no default, missing a case"
msgstr ""
-#: java/lang-specs.h:33
-msgid "-fjni and -femit-class-files are incompatible"
+#: options.c:336
+msgid "Warn about enumerated switches missing a \"default:\" statement"
msgstr ""
-#: java/lang-specs.h:34
-msgid "-fjni and -femit-class-file are incompatible"
+#: options.c:339
+msgid "Warn about all enumerated switches missing a specific case"
msgstr ""
-#: java/lang-specs.h:35 java/lang-specs.h:36
-msgid "-femit-class-file should used along with -fsyntax-only"
+#: options.c:342
+msgid "Warn when synthesis behavior differs from Cfront"
msgstr ""
-#: ada/lang-specs.h:38 java/jvspec.c:77 gcc.c:716
-msgid "-pg and -fomit-frame-pointer are incompatible"
+#: options.c:345
+msgid "Do not suppress warnings from system headers"
msgstr ""
-#: ada/lang-specs.h:41
-msgid "-c or -S required for Ada"
+#: options.c:348
+msgid "Warn about features not present in traditional C"
msgstr ""
-#: config/darwin.h:212
-msgid "-current_version only allowed with -dynamiclib"
+#: options.c:357
+msgid "Warn if an undefined macro is used in an #if directive"
msgstr ""
-#: config/darwin.h:215
-msgid "-install_name only allowed with -dynamiclib"
+#: options.c:360
+msgid "Warn about uninitialized automatic variables"
msgstr ""
-#: config/darwin.h:220
-msgid "-bundle not allowed with -dynamiclib"
+#: options.c:363
+msgid "Warn about unrecognized pragmas"
msgstr ""
-#: config/darwin.h:221
-msgid "-bundle_loader not allowed with -dynamiclib"
+#: options.c:366
+msgid "Warn about code that will never be executed"
msgstr ""
-#: config/darwin.h:222
-msgid "-client_name not allowed with -dynamiclib"
+#: options.c:369
+msgid "Enable all -Wunused- warnings"
msgstr ""
-#: config/darwin.h:225
-msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
+#: options.c:372
+msgid "Warn when a function is unused"
msgstr ""
-#: config/darwin.h:226
-msgid "-force_flat_namespace not allowed with -dynamiclib"
+#: options.c:375
+msgid "Warn when a label is unused"
msgstr ""
-#: config/darwin.h:228
-msgid "-keep_private_externs not allowed with -dynamiclib"
+#: options.c:378
+msgid "Warn about macros defined in the main file that are not used"
msgstr ""
-#: config/darwin.h:229
-msgid "-private_bundle not allowed with -dynamiclib"
+#: options.c:381
+msgid "Warn when a function parameter is unused"
msgstr ""
-#: config/sparc/freebsd.h:34 config/ia64/freebsd.h:23
-#: config/alpha/freebsd.h:44 config/rs6000/sysv4.h:1107
-#: config/i386/freebsd-aout.h:213
-msgid "`-p' not supported; use `-pg' and gprof(1)"
+#: options.c:384
+msgid "Warn when an expression value is unused"
msgstr ""
-#: config/sparc/linux64.h:197 config/sparc/linux64.h:208
-#: config/sparc/netbsd-elf.h:163 config/sparc/netbsd-elf.h:182
-#: config/sparc/sol2-bi.h:168 config/sparc/sol2-bi.h:178
-msgid "may not use both -m32 and -m64"
+#: options.c:387
+msgid "Warn when a variable is unused"
msgstr ""
-#: config/arm/arm.h:178
-msgid "-mapcs-26 and -mapcs-32 may not be used together"
+#: options.c:390
+msgid "Give strings the type \"array of char\""
msgstr ""
-#: config/arm/arm.h:180
-msgid "-msoft-float and -mhard_float may not be used together"
+#: options.c:393
+msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead"
msgstr ""
-#: config/arm/arm.h:182
-msgid "-mbig-endian and -mlittle-endian may not be used together"
+#: options.c:396
+msgid "-aux-info <file>\tEmit declaration information into <file>"
+msgstr ""
+
+#: options.c:408
+msgid "-d<letters>\tEnable dumps from specific passes of the compiler"
+msgstr ""
+
+#: options.c:411
+msgid "-dumpbase <file>\tSet the file basename to be used for dumps"
+msgstr ""
+
+#: options.c:414
+msgid "--CLASSPATH\tDeprecated; use --classpath instead"
+msgstr ""
+
+#: options.c:429
+msgid "Enforce class member access control semantics"
+msgstr ""
+
+#: options.c:432
+msgid "Align the start of functions"
+msgstr ""
+
+#: options.c:438
+msgid "Align labels which are only reached by jumping"
+msgstr ""
+
+#: options.c:444
+msgid "Align all labels"
+msgstr ""
+
+#: options.c:450
+msgid "Align the start of loops"
+msgstr ""
+
+#: options.c:459
+msgid "Change when template instances are emitted"
+msgstr ""
+
+#: options.c:462
+msgid "Specify that arguments may alias each other and globals"
+msgstr ""
+
+#: options.c:465
+msgid "Assume arguments may alias globals but not each other"
+msgstr ""
+
+#: options.c:468
+msgid "Assume arguments alias neither each other nor globals"
+msgstr ""
+
+#: options.c:471
+msgid "Recognize the \"asm\" keyword"
+msgstr ""
+
+#: options.c:483
+msgid "Generate unwind tables that are exact at each instruction boundary"
+msgstr ""
+
+#: options.c:486
+msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements"
+msgstr ""
+
+#: options.c:489
+msgid "Backslashes in character and hollerith constants are special (not C-style)"
+msgstr ""
+
+#: options.c:492
+msgid "Delete libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:495
+msgid "Disable libU77 intrinsics with bad interfaces"
msgstr ""
-#: config/i386/sco5.h:195
+#: options.c:498
+msgid "Enable libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:501
+msgid "Hide libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:504
+msgid "--bootclasspath=<path>\tReplace system path"
+msgstr ""
+
+#: options.c:507
#, fuzzy
-msgid "-pg not supported on this platform"
-msgstr "атрыбуты Ñекцыі не падтрымліваюцца Ð´Ð»Ñ Ð³Ñтай мÑÑ‚Ñ‹"
+msgid "Generate code to check bounds before indexing arrays"
+msgstr "Генерыраваць код Ð´Ð»Ñ Intel as"
-#: config/i386/sco5.h:196
-msgid "-p and -pp specified - pick one"
+#: options.c:510
+msgid "Replace add, compare, branch with branch on count register"
msgstr ""
-#: config/i386/sco5.h:271
-msgid "-G and -static are mutually exclusive"
+#: options.c:513
+msgid "Use profiling information for branch probabilities"
msgstr ""
-#: f/lang-specs.h:38 gcc.c:689
-msgid "GNU C does not support -C without using -E"
+#: options.c:516
+msgid "Perform branch target load optimization before prologue / epilogue threading"
msgstr ""
-#: f/lang-specs.h:39 gcc.c:690
+#: options.c:519
+msgid "Perform branch target load optimization after prologue / epilogue threading"
+msgstr ""
+
+#: options.c:522
#, fuzzy
-msgid "GNU C does not support -CC without using -E"
-msgstr "ISO C89 не падтрымлівае `long long'"
+msgid "Recognize built-in functions"
+msgstr "Ðе генерыраваць ÑÑ–Ð¼Ð²Ð°Ð»ÑŒÐ½Ñ‹Ñ Ñ–Ð½Ñтрукцыі"
-#: config/mcore/mcore.h:60
-msgid "choose either big or little endian, not both"
+#: options.c:528
+msgid "-fcall-saved-<register>\tMark <register> as being preserved across functions"
msgstr ""
-#: config/mcore/mcore.h:63
-msgid "choose either m340 or m210 not both"
+#: options.c:531
+msgid "-fcall-used-<register>\tMark <register> as being corrupted by function calls"
msgstr ""
-#: config/mcore/mcore.h:64
-msgid "the m210 does not have little endian support"
+#: options.c:534
+msgid "Save registers around function calls"
msgstr ""
-#: config/i386/cygwin.h:115
-msgid "mno-cygwin and mno-win32 are not compatible"
+#: options.c:537
+msgid "Program written in strict mixed-case"
msgstr ""
-#: config/vax/netbsd-elf.h:42
-msgid "The -shared option is not currently supported for VAX ELF."
+#: options.c:540
+msgid "Compile as if program written in lowercase"
msgstr ""
-#: treelang/lang-specs.h:52
-msgid "-pg or -p and -fomit-frame-pointer are incompatible"
+#: options.c:543
+msgid "Preserve case used in program"
+msgstr ""
+
+#: options.c:546
+msgid "Program written in lowercase"
+msgstr ""
+
+#: options.c:549
+msgid "Program written in uppercase"
+msgstr ""
+
+#: options.c:552
+msgid "Compile as if program written in uppercase"
+msgstr ""
+
+#: options.c:555
+msgid "Check the return value of new"
+msgstr ""
+
+#: options.c:561
+msgid "--classpath=<path>\tSet class path"
+msgstr ""
+
+#: options.c:564
+msgid "Do not put uninitialized globals in the common section"
+msgstr ""
+
+#: options.c:570
+msgid "Allow the arguments of the '?' operator to have different types"
+msgstr ""
+
+#: options.c:573
+msgid "Reduce the size of object files"
+msgstr ""
+
+#: options.c:576
+msgid "Make string literals \"const char[]\" not \"char[]\""
+msgstr ""
+
+#: options.c:579
+msgid "-fconst-string-class=<name>\tUse class <name> for constant strings"
+msgstr ""
+
+#: options.c:582
+msgid "Perform a register copy-propagation optimization pass"
+msgstr ""
+
+#: options.c:585
+msgid "Perform cross-jumping optimization"
+msgstr ""
+
+#: options.c:588
+msgid "When running CSE, follow jumps to their targets"
+msgstr ""
+
+#: options.c:591
+msgid "When running CSE, follow conditional jumps"
+msgstr ""
+
+#: options.c:594
+msgid "Place data items into their own section"
+msgstr ""
+
+#: options.c:597
+msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
+msgstr ""
+
+#: options.c:600
+#, fuzzy
+msgid "Inline member functions by default"
+msgstr "у функцыі \"%s\":"
+
+#: options.c:603
+msgid "Defer popping functions args from stack until later"
+msgstr ""
+
+#: options.c:606
+msgid "Attempt to fill delay slots of branch instructions"
+msgstr ""
+
+#: options.c:609
+msgid "Delete useless null pointer checks"
+msgstr ""
+
+#: options.c:612
+msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics"
+msgstr ""
+
+#: options.c:615
+msgid "Allow '$' in symbol names"
+msgstr ""
+
+#: options.c:618
+msgid "Permit '$' as an identifier character"
+msgstr ""
+
+#: options.c:624
+msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
+msgstr ""
+
+#: options.c:630
+msgid "Perform DWARF2 duplicate elimination"
+msgstr ""
+
+#: options.c:633 options.c:636
+msgid "Perform unused type elimination in debug info"
+msgstr ""
+
+#: options.c:645
+msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
+msgstr ""
+
+#: options.c:648
+msgid "--encoding=<encoding>\tChoose input encoding (defaults from your locale)"
+msgstr ""
+
+#: options.c:651
+#, fuzzy
+msgid "Generate code to check exception specifications"
+msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
+
+#: options.c:657
+msgid "Enable exception handling"
+msgstr "Уключыць апрацоўку выключÑньнÑÑž"
+
+#: options.c:660
+msgid "-fexec-charset=<cset>\tConvert all strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:663
+msgid "Perform a number of minor, expensive optimizations"
+msgstr ""
+
+#: options.c:672
+msgid "f2c-compatible code can be generated"
+msgstr ""
+
+#: options.c:675
+msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:678
+msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:681
+msgid "Enable non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:684
+msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:687
+msgid "Unsupported; generate libf2c-calling code"
+msgstr ""
+
+#: options.c:690
+msgid "Program is written in typical FORTRAN 66 dialect"
+msgstr ""
+
+#: options.c:693
+msgid "Program is written in typical Unix-f77 dialect"
+msgstr ""
+
+#: options.c:696
+msgid "Program is written in Fortran-90-ish dialect"
+msgstr ""
+
+#: options.c:699
+msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:702
+msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:705
+msgid "Enable non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:708
+msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:720
+msgid "Assume no NaNs or infinities are generated"
+msgstr ""
+
+#: options.c:723
+msgid "-ffixed-<register>\tMark <register> as being unavailable to the compiler"
+msgstr ""
+
+#: options.c:729
+msgid "ffixed-line-length-<number>\tSet the maximum line length to <number>"
+msgstr ""
+
+#: options.c:732
+msgid "Unsupported; affects code generation of arrays"
+msgstr ""
+
+#: options.c:735
+msgid "Do not store floats in registers"
+msgstr ""
+
+#: options.c:738
+msgid "Scope of for-init-statement variables is local to the loop"
+msgstr ""
+
+#: options.c:741
+msgid "Copy memory address constants into registers before use"
+msgstr ""
+
+#: options.c:744
+msgid "Always check for non gcj generated classes archives"
+msgstr ""
+
+#: options.c:747
+msgid "Copy memory operands into registers before use"
+msgstr ""
+
+#: options.c:750
+msgid "Generate code to check subscript and substring bounds"
+msgstr ""
+
+#: options.c:753
+msgid "Program is written in Fortran-90-ish free form"
+msgstr ""
+
+#: options.c:756
+msgid "Do not assume that standard C libraries and \"main\" exist"
+msgstr ""
+
+#: options.c:759
+msgid "Allow function addresses to be held in registers"
+msgstr ""
+
+#: options.c:762
+#, fuzzy
+msgid "Place each function into its own section"
+msgstr "адзін раз Ð´Ð»Ñ ÐºÐ¾Ð¶Ð½Ð°Ð¹ функцыі, дзе ён з'ÑўлÑецца.)"
+
+#: options.c:765
+msgid "Perform global common subexpression elimination"
+msgstr ""
+
+#: options.c:768
+msgid "Perform redundant load after store elimination in global common subexpression elimination"
+msgstr ""
+
+#: options.c:771
+msgid "Perform enhanced load motion during global common subexpression elimination"
+msgstr ""
+
+#: options.c:774
+msgid "Perform store motion after global common subexpression elimination"
+msgstr ""
+
+#: options.c:777
+msgid "Enable fatal diagnostics about inter-procedural problems"
+msgstr ""
+
+#: options.c:780
+msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
+msgstr ""
+
+#: options.c:783
+msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:786
+msgid "Enable non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:789
+msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:792
+msgid "Recognize GNU-defined keywords"
+msgstr ""
+
+#: options.c:795
+msgid "Generate code for GNU runtime environment"
msgstr ""
-#: gcc.c:847
+#: options.c:798
+msgid "Enable guessing of branch probabilities"
+msgstr ""
+
+#: options.c:813
+msgid "Assume normal C execution environment"
+msgstr ""
+
+#: options.c:816
+msgid "Enable support for huge objects"
+msgstr ""
+
+#: options.c:819
+msgid "Process #ident directives"
+msgstr ""
+
+#: options.c:822
+msgid "Perform conversion of conditional jumps to branchless equivalents"
+msgstr ""
+
+#: options.c:825
+msgid "Perform conversion of conditional jumps to conditional execution"
+msgstr ""
+
+#: options.c:828
+msgid "Export functions even if they can be inlined"
+msgstr ""
+
+#: options.c:831
+#, fuzzy
+msgid "Emit implicit instantiations of inline templates"
+msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
+
+#: options.c:834
+#, fuzzy
+msgid "Emit implicit instantiations of templates"
+msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
+
+#: options.c:837
+msgid "Use offset tables for virtual method calls"
+msgstr ""
+
+#: options.c:840
+msgid "Do not generate .size directives"
+msgstr ""
+
+#: options.c:843
+msgid "Initialize local vars and arrays to zero"
+msgstr ""
+
+#: options.c:846
+msgid "Pay attention to the \"inline\" keyword"
+msgstr ""
+
+#: options.c:855
+msgid "-finline-limit=<number>\tLimit the size of inlined functions to <number>"
+msgstr ""
+
+#: options.c:858
+msgid "-finput-charset=<cset> Specify the default character set for source files."
+msgstr ""
+
+#: options.c:861
+msgid "Instrument function entry and exit with profiling calls"
+msgstr ""
+
+#: options.c:864
+msgid "Intrinsics letters in arbitrary cases"
+msgstr ""
+
+#: options.c:867
+msgid "Intrinsics spelled as e.g. SqRt"
+msgstr ""
+
+#: options.c:870
+msgid "Intrinsics in lowercase"
+msgstr ""
+
+#: options.c:873
+msgid "Intrinsics in uppercase"
+msgstr ""
+
+#: options.c:876
+msgid "Assume native functions are implemented using JNI"
+msgstr ""
+
+#: options.c:879
+msgid "Generate code for functions even if they are fully inlined"
+msgstr ""
+
+#: options.c:882
+msgid "Emit static const variables even if they are not used"
+msgstr ""
+
+#: options.c:888
+msgid "Give external symbols a leading underscore"
+msgstr ""
+
+#: options.c:891
+#, fuzzy
+msgid "Perform loop optimizations"
+msgstr "Уключаць SSA аптымізацыю"
+
+#: options.c:894
+msgid "Language keyword letters in arbitrary cases"
+msgstr ""
+
+#: options.c:897
+msgid "Language keywords spelled as e.g. IOStat"
+msgstr ""
+
+#: options.c:900
+msgid "Language keywords in lowercase"
+msgstr ""
+
+#: options.c:903
+msgid "Language keywords in uppercase"
+msgstr ""
+
+#: options.c:906
+msgid "Set errno after built-in math functions"
+msgstr ""
+
+#: options.c:909
+msgid "Report on permanent memory allocation"
+msgstr ""
+
+#: options.c:912
+msgid "Attempt to merge identical constants and constant variables"
+msgstr ""
+
+#: options.c:915
+msgid "Attempt to merge identical constants across compilation units"
+msgstr ""
+
+#: options.c:918
+msgid "-fmessage-length=<number>\tLimit diagnostics to <number> characters per line. 0 suppresses line-wrapping"
+msgstr ""
+
+#: options.c:921
+msgid "Delete MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:924
+msgid "Disable MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:927
+msgid "Enable MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:930
+msgid "Hide MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:933
+msgid "Force all loop invariant computations out of loops"
+msgstr ""
+
+#: options.c:936
+msgid "Don't warn about uses of Microsoft extensions"
+msgstr ""
+
+#: options.c:945
+msgid "Use graph-coloring register allocation"
+msgstr ""
+
+#: options.c:948
+msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
+msgstr ""
+
+#: options.c:951
+msgid "Assume that receivers of Objective-C messages may be nil"
+msgstr ""
+
+#: options.c:954
+msgid "Support synchronous non-call exceptions"
+msgstr ""
+
+#: options.c:963
+msgid "Enable Objective-C exception and synchronization syntax"
+msgstr ""
+
+#: options.c:966 options.c:1290
+msgid "Perform loop unrolling for all loops"
+msgstr ""
+
+#: options.c:969 options.c:1293
+msgid "Perform loop unrolling when iteration count is known"
+msgstr ""
+
+#: options.c:972
+msgid "When possible do not generate stack frames"
+msgstr ""
+
+#: options.c:975
+msgid "Take at least one trip through each iterative DO loop"
+msgstr ""
+
+#: options.c:978
+msgid "Recognize C++ kewords like \"compl\" and \"xor\""
+msgstr ""
+
+#: options.c:981
+msgid "Do the full register move optimization pass"
+msgstr ""
+
+#: options.c:984
+msgid "Optimize sibling and tail recursive calls"
+msgstr ""
+
+#: options.c:987
+msgid "Enable optimization of static class initialization code"
+msgstr ""
+
+#: options.c:990
+#, fuzzy
+msgid "Enable optional diagnostics"
+msgstr "Уключаць SSA аптымізацыю"
+
+#: options.c:996
+msgid "Pack structure members together without holes"
+msgstr ""
+
+#: options.c:999
+msgid "Return small aggregates in memory, not registers"
+msgstr ""
+
+#: options.c:1005
+msgid "Warn about use of (only a few for now) Fortran extensions"
+msgstr ""
+
+#: options.c:1008
+msgid "Perform loop peeling"
+msgstr ""
+
+#: options.c:1011
+msgid "Enable machine specific peephole optimizations"
+msgstr ""
+
+#: options.c:1014
+msgid "Enable an RTL peephole pass before sched2"
+msgstr ""
+
+#: options.c:1017
+msgid "Downgrade conformance errors to warnings"
+msgstr ""
+
+#: options.c:1020
+msgid "Generate position-independent code if possible"
+msgstr ""
+
+#: options.c:1023
+msgid "Generate position-independent code for executables if possible"
+msgstr ""
+
+#: options.c:1026
+msgid "Generate prefetch instructions, if available, for arrays in loops"
+msgstr ""
+
+#: options.c:1032
+msgid "Enable basic program profiling code"
+msgstr ""
+
+#: options.c:1035
+msgid "Insert arc-based program profiling code"
+msgstr ""
+
+#: options.c:1038
+msgid "Enable common options for generating profile info for profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1041
+msgid "Enable common options for performing profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1044
+msgid "Insert code to profile values of expressions"
+msgstr ""
+
+#: options.c:1050
+msgid "-frandom-seed=<string>\tMake compile reproducible using <string>"
+msgstr ""
+
+#: options.c:1053
+msgid "Strength reduce all loop general induction variables"
+msgstr ""
+
+#: options.c:1056
+#, fuzzy
+msgid "Return small aggregates in registers"
+msgstr "Ðе выкарыÑтоўваць Ñ€ÑгіÑтра sb"
+
+#: options.c:1059
+msgid "Enables a register move optimization"
+msgstr ""
+
+#: options.c:1062
+msgid "Perform a register renaming optimization pass"
+msgstr ""
+
+#: options.c:1065
+msgid "Reorder basic blocks to improve code placement"
+msgstr ""
+
+#: options.c:1068
+msgid "Reorder functions to improve code placement"
+msgstr ""
+
+#: options.c:1071
+msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime"
+msgstr ""
+
+#: options.c:1074
+msgid "Enable automatic template instantiation"
+msgstr ""
+
+#: options.c:1077
+msgid "Add a common subexpression elimination pass after loop optimizations"
+msgstr ""
+
+#: options.c:1080
+msgid "Run the loop optimizer twice"
+msgstr ""
+
+#: options.c:1083
+msgid "Disable optimizations that assume default FP rounding behavior"
+msgstr ""
+
+#: options.c:1086
+msgid "Generate run time type descriptor information"
+msgstr ""
+
+#: options.c:1089
+msgid "Enable scheduling across basic blocks"
+msgstr ""
+
+#: options.c:1092
+msgid "Allow speculative motion of non-loads"
+msgstr ""
+
+#: options.c:1095
+msgid "Allow speculative motion of some loads"
+msgstr ""
+
+#: options.c:1098
+msgid "Allow speculative motion of more loads"
+msgstr ""
+
+#: options.c:1101
+msgid "Allow premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1104
+msgid "Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1107
+msgid "-fsched-stalled-insns-dep=<number> Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1110
+msgid "-fsched-stalled-insns=<number> Set number of queued insns that can be prematurely scheduled"
+msgstr ""
+
+#: options.c:1113
+msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler"
+msgstr ""
+
+#: options.c:1116
+msgid "If scheduling post reload, do superblock scheduling"
+msgstr ""
+
+#: options.c:1119
+msgid "If scheduling post reload, do trace scheduling"
+msgstr ""
+
+#: options.c:1122
+msgid "Reschedule instructions before register allocation"
+msgstr ""
+
+#: options.c:1125
+msgid "Reschedule instructions after register allocation"
+msgstr ""
+
+#: options.c:1128
+msgid "Allow appending a second underscore to externals"
+msgstr ""
+
+#: options.c:1131
+msgid "Mark data as shared rather than private"
+msgstr ""
+
+#: options.c:1134
+msgid "Use the same size for double as for float"
+msgstr ""
+
+#: options.c:1137
+msgid "Use the narrowest integer type possible for enumeration types"
+msgstr ""
+
+#: options.c:1140
+msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\""
+msgstr ""
+
+#: options.c:1146
+msgid "Disable optimizations observable by IEEE signaling NaNs"
+msgstr ""
+
+#: options.c:1149
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed"
+msgstr ""
+
+#: options.c:1152
+msgid "Make \"char\" signed by default"
+msgstr ""
+
+#: options.c:1155
+msgid "Do not print names of program units as they are compiled"
+msgstr ""
+
+#: options.c:1158
+msgid "Convert floating point constants to single precision constants"
+msgstr ""
+
+#: options.c:1161
+msgid "Internally convert most source to lowercase"
+msgstr ""
+
+#: options.c:1164
+msgid "Internally preserve source case"
+msgstr ""
+
+#: options.c:1167
+msgid "Internally convert most source to uppercase"
+msgstr ""
+
+#: options.c:1173
+msgid "Insert stack checking code into the program"
+msgstr "Уключаць код правÑркі ÑÑ‚Ñку Ñž праграму"
+
+#: options.c:1179
+msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>"
+msgstr ""
+
+#: options.c:1182
+msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>"
+msgstr ""
+
+#: options.c:1185
+msgid "Display statistics accumulated during compilation"
+msgstr ""
+
+#: options.c:1188
+msgid "Enable assignability checks for stores into object arrays"
+msgstr ""
+
+#: options.c:1191
+msgid "Perform strength reduction optimizations"
+msgstr ""
+
+#: options.c:1194
+msgid "Assume strict aliasing rules apply"
+msgstr ""
+
+#: options.c:1203
+msgid "Symbol names spelled in mixed case"
+msgstr ""
+
+#: options.c:1206
+msgid "Symbol names in lowercase"
+msgstr ""
+
+#: options.c:1209
+msgid "Symbol names in uppercase"
+msgstr ""
+
+#: options.c:1212
+msgid "Check for syntax errors, then stop"
+msgstr ""
+
+#: options.c:1215
+msgid "-ftabstop=<number>\tDistance between tab stops for column reporting"
+msgstr ""
+
+#: options.c:1218
+msgid "-ftemplate-depth-<number>\tSpecify maximum template instantiation depth"
+msgstr ""
+
+#: options.c:1221
+msgid "Create data files needed by \"gcov\""
+msgstr ""
+
+#: options.c:1227
+msgid "Perform jump threading optimizations"
+msgstr ""
+
+#: options.c:1230
+msgid "Report the time taken by each compiler pass"
+msgstr ""
+
+#: options.c:1233
+msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model"
+msgstr ""
+
+#: options.c:1236
+msgid "Perform superblock formation via tail duplication"
+msgstr ""
+
+#: options.c:1239
+msgid "Assume floating-point operations can trap"
+msgstr ""
+
+#: options.c:1242
+msgid "Trap for signed overflow in addition, subtraction and multiplication"
+msgstr ""
+
+#: options.c:1245
+msgid "Make prefix-radix non-decimal constants be typeless"
+msgstr ""
+
+#: options.c:1248
+msgid "Allow all ugly features"
+msgstr ""
+
+#: options.c:1251
+msgid "Hollerith and typeless can be passed as arguments"
+msgstr ""
+
+#: options.c:1254
+msgid "Allow ordinary copying of ASSIGN'ed vars"
+msgstr ""
+
+#: options.c:1257
+msgid "Dummy array dimensioned to (1) is assumed-size"
+msgstr ""
+
+#: options.c:1260
+msgid "Trailing comma in procedure call denotes null argument"
+msgstr ""
+
+#: options.c:1263
+msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
+msgstr ""
+
+#: options.c:1266
+msgid "Initialization via DATA and PARAMETER is not type-compatible"
+msgstr ""
+
+#: options.c:1269
+msgid "Allow INTEGER and LOGICAL interchangeability"
+msgstr ""
+
+#: options.c:1272
+msgid "Append underscores to externals"
+msgstr ""
+
+#: options.c:1275
+msgid "Compile whole compilation unit at a time"
+msgstr ""
+
+#: options.c:1278
+msgid "Delete libU77 intrinsics"
+msgstr ""
+
+#: options.c:1281
+msgid "Disable libU77 intrinsics"
+msgstr ""
+
+#: options.c:1284
+msgid "Enable libU77 intrinsics"
+msgstr ""
+
+#: options.c:1287
+msgid "Hide libU77 intrinsics"
+msgstr ""
+
+#: options.c:1296
+msgid "Allow math optimizations that may violate IEEE or ISO standards"
+msgstr ""
+
+#: options.c:1299
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned"
+msgstr ""
+
+#: options.c:1302
+msgid "Make \"char\" unsigned by default"
+msgstr ""
+
+#: options.c:1305
+msgid "Perform loop unswitching"
+msgstr ""
+
+#: options.c:1308
+msgid "Just generate unwind tables for exception handling"
+msgstr ""
+
+#: options.c:1314
+msgid "Use __cxa_atexit to register destructors"
+msgstr ""
+
+#: options.c:1320
+msgid "Add extra commentary to assembler output"
+msgstr ""
+
+#: options.c:1323
+msgid "Print g77-specific version information and run internal tests"
+msgstr ""
+
+#: options.c:1326
+msgid "Use expression value profiles in optimizations"
+msgstr ""
+
+#: options.c:1329
+msgid "Discard unused virtual functions"
+msgstr ""
+
+#: options.c:1332
+msgid "Implement vtables using thunks"
+msgstr ""
+
+#: options.c:1335
+msgid "Program is written in VXT (Digital-like) FORTRAN"
+msgstr ""
+
+#: options.c:1338
+msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1341
+msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1344
+msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1347
+msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1353
+msgid "Emit common-like symbols as weak symbols"
+msgstr ""
+
+#: options.c:1356
+msgid "Construct webs and split unrelated uses of single variable"
+msgstr ""
+
+#: options.c:1359
+msgid "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:1362
+msgid "Generate a #line directive pointing at the current working directory"
+msgstr ""
+
+#: options.c:1365
+msgid "Assume signed arithmetic overflow wraps around"
+msgstr ""
+
+#: options.c:1368
+msgid "Store strings in writable data section"
+msgstr ""
+
+#: options.c:1371
+msgid "Emit cross referencing information"
+msgstr ""
+
+#: options.c:1374
+msgid "Print internal debugging-related information"
+msgstr ""
+
+#: options.c:1377
+msgid "Put zero initialized data in the bss section"
+msgstr ""
+
+#: options.c:1380
+msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode"
+msgstr ""
+
+#: options.c:1383
+msgid "Treat initial values of 0 like non-zero values"
+msgstr ""
+
+#: options.c:1386
+#, fuzzy
+msgid "Generate debug information in default format"
+msgstr "Генерыраваць код Ð´Ð»Ñ Intel as"
+
+#: options.c:1392
+msgid "Generate debug information in COFF format"
+msgstr ""
+
+#: options.c:1395
+msgid "Generate debug information in DWARF v2 format"
+msgstr ""
+
+#: options.c:1398
+msgid "Dump declarations to a .decl file"
+msgstr ""
+
+#: options.c:1401
+msgid "Generate debug information in default extended format"
+msgstr ""
+
+#: options.c:1404
+msgid "-gnat<options>\tSpecify options to GNAT"
+msgstr ""
+
+#: options.c:1407
+#, fuzzy
+msgid "Generate debug information in STABS format"
+msgstr "Стварыць код Ð´Ð»Ñ DLL"
+
+#: options.c:1410
+msgid "Generate debug information in extended STABS format"
+msgstr ""
+
+#: options.c:1413
+#, fuzzy
+msgid "Generate debug information in VMS format"
+msgstr "Стварыць код Ð´Ð»Ñ DLL"
+
+#: options.c:1416
+msgid "Generate debug information in XCOFF format"
+msgstr ""
+
+#: options.c:1419
+msgid "Generate debug information in extended XCOFF format"
+msgstr ""
+
+#: options.c:1422
+msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1425
+msgid "-imacros <file>\tAccept definition of macros in <file>"
+msgstr ""
+
+#: options.c:1428
+msgid "-include <file>\tInclude the contents of <file> before other files"
+msgstr ""
+
+#: options.c:1431
+msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options"
+msgstr ""
+
+#: options.c:1434
+msgid "-isysroot <dir>\tSet <dir> to be the system root directory"
+msgstr ""
+
+#: options.c:1437
+msgid "-isystem <dir>\tAdd <dir> to the start of the system include path"
+msgstr ""
+
+#: options.c:1440
+msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1443
+msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path"
+msgstr ""
+
+#: options.c:1455
+msgid "Do not search standard system include directories (those specified with -isystem will still be used)"
+msgstr ""
+
+#: options.c:1458
+msgid "Do not search standard system include directories for C++"
+msgstr ""
+
+#: options.c:1464
+#, fuzzy
+msgid "-o <file>\tPlace output into <file>"
+msgstr " -o <файл> ПамÑÑціць вывад у <файл>\n"
+
+#: options.c:1467
+#, fuzzy
+msgid "Enable function profiling"
+msgstr "Уключыць апрацоўку выключÑньнÑÑž"
+
+#: options.c:1470
+msgid "Issue warnings needed for strict compliance to the standard"
+msgstr ""
+
+#: options.c:1473
+msgid "Like -pedantic but issue them as errors"
+msgstr ""
+
+#: options.c:1476
+msgid "Generate C header of platform-specific features"
+msgstr ""
+
+#: options.c:1479
+msgid "Do not display functions compiled or elapsed time"
+msgstr ""
+
+#: options.c:1482
+msgid "Remap file names when including files"
+msgstr ""
+
+#: options.c:1485
+msgid "Conform to the ISO 1998 C++ standard"
+msgstr ""
+
+#: options.c:1488
+msgid "Conform to the ISO 1990 C standard"
+msgstr ""
+
+#: options.c:1491
+msgid "Conform to the ISO 1999 C standard"
+msgstr ""
+
+#: options.c:1494 options.c:1515 options.c:1518
+msgid "Deprecated in favor of -std=c99"
+msgstr ""
+
+#: options.c:1497
+msgid "Conform to the ISO 1998 C++ standard with GNU extensions"
+msgstr ""
+
+#: options.c:1500
+msgid "Conform to the ISO 1990 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1503
+msgid "Conform to the ISO 1999 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1506
+msgid "Deprecated in favor of -std=gnu99"
+msgstr ""
+
+#: options.c:1509
+msgid "Deprecated in favor of -std=c89"
+msgstr ""
+
+#: options.c:1512
+msgid "Conform to the ISO 1990 C standard as amended in 1994"
+msgstr ""
+
+#: options.c:1521
+msgid "Enable traditional preprocessing"
+msgstr ""
+
+#: options.c:1524
+msgid "-trigraphs\tSupport ISO C trigraphs"
+msgstr ""
+
+#: options.c:1527
+msgid "Do not predefine system-specific and GCC-specific macros"
+msgstr ""
+
+#: options.c:1530
+msgid "Enable verbose output"
+msgstr ""
+
+#: options.c:1536
+#, fuzzy
+msgid "Suppress warnings"
+msgstr "%s: увага: "
+
+#: config/rs6000/darwin.h:98
+msgid " conflicting code gen style switches are used"
+msgstr ""
+
+#: gcc.c:743
+msgid "GCC does not support -C or -CC without -E"
+msgstr ""
+
+#: gcc.c:767 java/jvspec.c:80 ada/lang-specs.h:34
+msgid "-pg and -fomit-frame-pointer are incompatible"
+msgstr ""
+
+#: gcc.c:915
msgid "-E required when input is from standard input"
msgstr ""
-#: gcc.c:851
-msgid "compilation of header file requested"
+#: config/arm/arm.h:197
+msgid "-mapcs-26 and -mapcs-32 may not be used together"
msgstr ""
-#: config/vax/vax.h:50 config/vax/vax.h:51
-msgid "profiling not supported with -mg\n"
+#: config/arm/arm.h:199
+msgid "-msoft-float and -mhard_float may not be used together"
msgstr ""
-#: config/mips/mips.h:954
+#: config/arm/arm.h:201
+msgid "-mbig-endian and -mlittle-endian may not be used together"
+msgstr ""
+
+#: config/i386/mingw32.h:58 config/i386/cygwin.h:70
+msgid "shared and mdll are not compatible"
+msgstr ""
+
+#: config/mips/mips.h:975
msgid "-pipe is not supported"
msgstr "-pipe не падтрымліваецца"
-#: config/mips/mips.h:1156 config/arc/arc.h:63
+#: config/mips/mips.h:1130 config/arc/arc.h:63
msgid "may not use both -EB and -EL"
msgstr ""
+#: config/darwin.h:215
+msgid "-current_version only allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:218
+msgid "-install_name only allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:223
+msgid "-bundle not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:224
+msgid "-bundle_loader not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:225
+msgid "-client_name not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:228
+msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:229
+msgid "-force_flat_namespace not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:231
+msgid "-keep_private_externs not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:232
+msgid "-private_bundle not allowed with -dynamiclib"
+msgstr ""
+
+#: config/vax/netbsd-elf.h:42
+msgid "The -shared option is not currently supported for VAX ELF."
+msgstr ""
+
+#: config/i386/sco5.h:191
+#, fuzzy
+msgid "-pg not supported on this platform"
+msgstr "атрыбуты Ñекцыі не падтрымліваюцца Ð´Ð»Ñ Ð³Ñтай мÑÑ‚Ñ‹"
+
+#: config/i386/sco5.h:192
+msgid "-p and -pp specified - pick one"
+msgstr ""
+
+#: config/i386/sco5.h:266
+msgid "-G and -static are mutually exclusive"
+msgstr ""
+
+#: treelang/lang-specs.h:52
+msgid "-pg or -p and -fomit-frame-pointer are incompatible"
+msgstr ""
+
+#: f/lang-specs.h:38
+#, fuzzy
+msgid "GCC does not support -C without using -E"
+msgstr "%s не падтрымлівае %s"
+
+#: f/lang-specs.h:39
+#, fuzzy
+msgid "GCC does not support -CC without using -E"
+msgstr "%s не падтрымлівае %s"
+
#: config/mips/r3900.h:35
msgid "-mhard-float not supported"
msgstr "-mhard-float не падтрымліваецца"
@@ -20932,37 +21431,119 @@ msgstr "-mhard-float не падтрымліваецца"
msgid "-msingle-float and -msoft-float can not both be specified"
msgstr ""
+#: config/rs6000/sysv4.h:1094 config/i386/freebsd-aout.h:215
+msgid "`-p' not supported; use `-pg' and gprof(1)"
+msgstr ""
+
+#: config/sparc/linux64.h:208 config/sparc/linux64.h:219
+#: config/sparc/netbsd-elf.h:140 config/sparc/netbsd-elf.h:159
+#: config/sparc/sol2-bi.h:195 config/sparc/sol2-bi.h:205
+msgid "may not use both -m32 and -m64"
+msgstr ""
+
+#: config/vax/vax.h:50 config/vax/vax.h:51
+msgid "profiling not supported with -mg\n"
+msgstr ""
+
+#: config/i386/cygwin.h:29
+msgid "mno-cygwin and mno-win32 are not compatible"
+msgstr ""
+
+#: ada/lang-specs.h:36
+msgid "one of -c, -S, -gnatc, -gnatz, or -gnats is required for Ada"
+msgstr ""
+
+#: config/sparc/sol2-bi.h:167 config/sparc/sol2-bi.h:172
+#: config/sparc/sol2-gld-bi.h:17 config/sparc/sol2-gld-bi.h:22
+#, fuzzy
+msgid "does not support multilib"
+msgstr "%s не падтрымлівае %s"
+
+#: java/lang-specs.h:34
+msgid "-fjni and -femit-class-files are incompatible"
+msgstr ""
+
+#: java/lang-specs.h:35
+msgid "-fjni and -femit-class-file are incompatible"
+msgstr ""
+
+#: java/lang-specs.h:36 java/lang-specs.h:37
+msgid "-femit-class-file should used along with -fsyntax-only"
+msgstr ""
+
+#: config/mcore/mcore.h:65
+msgid "the m210 does not have little endian support"
+msgstr ""
+
#~ msgid "unknown C standard `%s'"
#~ msgstr "невÑдомы C Ñтандарт `%s'"
+#~ msgid "label `%s' defined but not used"
+#~ msgstr "адмеціна `%s' вызначана, але Ð½Ñ Ð²Ñ‹ÐºÐ°Ñ€Ñ‹Ñтоўваецца"
+
#, fuzzy
-#~ msgid "missing binary operator"
-#~ msgstr "прапушчан ініцыÑлізатар"
+#~ msgid "a parameter"
+#~ msgstr "невыкарыÑтаемы параметр \"%s\""
#, fuzzy
-#~ msgid "changing search order for system directory \"%s\""
-#~ msgstr "немагчыма Ñтварыць дырÑкторыю \"%s\""
+#~ msgid "a global declaration"
+#~ msgstr "ÐерÑчаіÑнае абвÑшчÑнне"
+
+#~ msgid "parse error"
+#~ msgstr "Ð³Ñ€Ð°Ð¼Ð°Ñ‚Ñ‹Ñ‡Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°"
+
+#~ msgid "bad magic number"
+#~ msgstr "дрÑнны \"магічны\" нумар"
+
+#~ msgid "bad header version"
+#~ msgstr "дрÑÐ½Ð½Ð°Ñ Ð²ÐµÑ€ÑÑ–Ñ Ð·Ð°Ð³Ð°Ð»Ð¾ÑžÐºÐ°"
#, fuzzy
-#~ msgid "argument missing after %s"
-#~ msgstr "аргумент Ð´Ð»Ñ \"%s\" прапушчан"
+#~ msgid "missing binary operator"
+#~ msgstr "прапушчан ініцыÑлізатар"
+
+#~ msgid "%s: Not a directory"
+#~ msgstr "%s: не дырÑкторыÑ"
#, fuzzy
-#~ msgid "invalid option %s"
-#~ msgstr "ÐерÑчаіÑны выбар %s"
+#~ msgid "changing search order for system directory \"%s\""
+#~ msgstr "немагчыма Ñтварыць дырÑкторыю \"%s\""
#~ msgid "%s:%d: warning: "
#~ msgstr "%s:%d: увага: "
-#~ msgid "%s: warning: "
-#~ msgstr "%s: увага: "
+#~ msgid "In file included from %s:%d"
+#~ msgstr "У файле уключаным з %s:%d"
+
+#~ msgid "can't get current directory"
+#~ msgstr "не магу атрымаць бÑгучую дырÑкторыю"
#~ msgid "floating point overflow"
#~ msgstr "перапаўненьне плаваючай кропкі"
+#~ msgid ""
+#~ "\n"
+#~ "Language specific options:\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Выбары, ÑÐ¿ÐµÑ†Ñ‹Ñ„Ñ–Ñ‡Ð½Ñ‹Ñ Ð´Ð»Ñ Ð¼Ð¾Ð²Ñ‹:\n"
+
+#~ msgid ""
+#~ "\n"
+#~ " Options for %s:\n"
+#~ msgstr ""
+#~ "\n"
+#~ " Выбары Ð´Ð»Ñ %s:\n"
+
#, fuzzy
-#~ msgid "internal error: %s"
-#~ msgstr "Ð£Ð½ÑƒÑ‚Ñ€Ð°Ð½Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ°: %s"
+#~ msgid "unrecognized option `%s'"
+#~ msgstr "нераÑпазнаны выбар \"-%s\""
+
+#~ msgid "`%s': unknown or unsupported -g option"
+#~ msgstr "\"%s\" : невÑдомы ці непадтрымліваемы выбар -g"
+
+#~ msgid "invalid --param option: %s"
+#~ msgstr "нерÑчаіÑны выбар --param : %s"
#, fuzzy
#~ msgid "invalid character constant in #if"
@@ -20986,9 +21567,30 @@ msgstr ""
#~ msgid "optimization turned off"
#~ msgstr "Ð°Ð¿Ñ‚Ñ‹Ð¼Ñ–Ð·Ð°Ñ†Ñ‹Ñ Ð²Ñ‹ÐºÐ»ÑŽÑ‡Ð°Ð½Ð°"
+#~ msgid "invalid %%Q value"
+#~ msgstr "дрÑннае %%Q значÑнне"
+
#~ msgid "invalid %%V value"
#~ msgstr "нерÑчаіÑнае значÑньне %%V"
+#, fuzzy
+#~ msgid "Generate code for a Sun FPA"
+#~ msgstr "Стварыць код Ð´Ð»Ñ DLL"
+
+#~ msgid "Generate code for a 68881"
+#~ msgstr "Ствараць код Ð´Ð»Ñ 68881"
+
+#~ msgid "invalid %%o value"
+#~ msgstr "нерÑчаіÑнае значÑньне %%o"
+
+#, fuzzy
+#~ msgid "invalid option `-mshort-data-%s'"
+#~ msgstr "ÐерÑчаіÑны выбар \"%s\""
+
+#, fuzzy
+#~ msgid "invalid option `entry%s'"
+#~ msgstr "ÐерÑчаіÑны выбар \"%s\""
+
#~ msgid "Use OSF PIC"
#~ msgstr "ВыкарыÑтоўваць OSF PIC"
@@ -21002,6 +21604,14 @@ msgstr ""
#~ msgstr "Ðптымізаваць Ð´Ð»Ñ 4650"
#, fuzzy
+#~ msgid "Do not use the Xtensa boolean register option"
+#~ msgstr "Ðе ўжываць ÑÑ–Ð¼Ð²Ð°Ð»Ñ–Ñ‡Ð½Ñ‹Ñ Ð½Ð°Ð·Ð²Ð° Ñ€ÑгіÑтраў"
+
+#, fuzzy
+#~ msgid "Use the Xtensa floating-point unit"
+#~ msgstr "ВыкарыÑтоўваць апаратную \"плаваючую кропку\""
+
+#, fuzzy
#~ msgid "%s for `%T %s %T' operator"
#~ msgstr "%s перад знакам \"%s\""
@@ -21010,21 +21620,65 @@ msgstr ""
#~ msgstr "%s перад знакам \"%s\""
#, fuzzy
-#~ msgid "size of member `%D' is not constant"
+#~ msgid "field `%D' invalidly declared offset type"
+#~ msgstr "бітавае поле \"%s\" мае нерÑчаіÑны тып"
+
+#~ msgid "invalid declarator"
+#~ msgstr "нерÑчаіÑны абвÑшчальнік"
+
+#, fuzzy
+#~ msgid "parameter `%D' invalidly declared offset type"
#~ msgstr "тып параметра \"%s\" не аб'Ñўлены"
#, fuzzy
+#~ msgid "semicolon missing after declaration of `%#T'"
+#~ msgstr "Ðе магу знайÑці дÑкларацыю інтÑрфейÑа Ð´Ð»Ñ \"%s\""
+
+#, fuzzy
+#~ msgid "invalid data member initialization"
+#~ msgstr "нерÑчаіÑны ініцыÑлізатар"
+
+#, fuzzy
+#~ msgid "previous friend declaration of `%D'"
+#~ msgstr "нÑма папÑÑ€ÑднÑга аб'ÑÑžÐ»ÐµÐ½Ð½Ñ Ð´Ð»Ñ \"%s\""
+
+#, fuzzy
#~ msgid "member initializers for `%#D'"
#~ msgstr "complex нерÑчаіÑны Ð´Ð»Ñ \"%s\""
#, fuzzy
-#~ msgid "explicit specialization here"
-#~ msgstr "ініцыÑлізацыÑ"
+#~ msgid "invalid use of member `%D'"
+#~ msgstr "нÑвернае выкарыÑтанне \"restict\""
+
+#, fuzzy
+#~ msgid "no method `%T::%D'"
+#~ msgstr "у метадзе \"%s\":"
+
+#, fuzzy
+#~ msgid "semicolon missing after declaration of `%T'"
+#~ msgstr "Ðе магу знайÑці дÑкларацыю інтÑрфейÑа Ð´Ð»Ñ \"%s\""
+
+#, fuzzy
+#~ msgid "`::%D' undeclared (first use here)"
+#~ msgstr "\"%s\" не абвешчан (першае выкарыÑтанне Ñž гÑтай функцыі)"
+
+#, fuzzy
+#~ msgid "no type `%D' in `%T'"
+#~ msgstr "вÑртаемы тып \"%s\" не \"int\""
#, fuzzy
#~ msgid "base initializer for `%T'"
#~ msgstr "не магу ініцыÑлізаваць ÑÑброўÑкую функцыю \"%s\""
+#~ msgid "%s before `%c'"
+#~ msgstr "%s перад '%c'"
+
+#~ msgid "%s before `\\%o'"
+#~ msgstr "%s перад \"\\%o\""
+
+#~ msgid "%s before `%s' token"
+#~ msgstr "%s перад знакам \"%s\""
+
#, fuzzy
#~ msgid "`sizeof' applied to incomplete type `%T'"
#~ msgstr "\"%s\" мае незавершаны тып"
@@ -21039,3 +21693,18 @@ msgstr ""
#~ msgid "invalid use of `%T'"
#~ msgstr "нерÑчаіÑнае выкарыÑтаньне `%T'"
+
+#, fuzzy
+#~ msgid "cannot find class (factory) method"
+#~ msgstr "не магу знайÑці метад."
+
+#~ msgid "cannot find method"
+#~ msgstr "немагчыма знайÑьці мÑтад"
+
+#, fuzzy
+#~ msgid "duplicate definition of class method `%s'"
+#~ msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
+
+#, fuzzy
+#~ msgid "duplicate declaration of instance method `%s'"
+#~ msgstr "паўторнае абвÑшчÑнне меткі \"%s\""
diff --git a/gcc/po/ca.po b/gcc/po/ca.po
new file mode 100644
index 00000000000..082c1a51a2f
--- /dev/null
+++ b/gcc/po/ca.po
@@ -0,0 +1,20826 @@
+# translation of gcc-3.2-ca.po to Catalan
+# Catalan translation of gcc.
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# This file is distributed under the same license as the gcc package.
+# Gilles MATEU <mateu.gilles@wanadoo.fr>, 2002.
+# Gilles MATEU <mateu.gilles@wanadoo.fr>, 2003.
+# Gilles MATEU <mateu.gilles@wanadoo.fr>, 2004.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: gcc 3.3.2\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2003-10-24 13:20+0200\n"
+"PO-Revision-Date: 2004-01-30 00:03+0000\n"
+"Last-Translator: Mateu Gilles <mateu.gilles@wanadoo.fr>\n"
+"Language-Team: Catalan <ca@dodds.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=iso-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: attribs.c:185
+#, c-format
+msgid "`%s' attribute directive ignored"
+msgstr "s'ignora la directiva d'atribut \"%s\""
+
+#: attribs.c:193
+#, c-format
+msgid "wrong number of arguments specified for `%s' attribute"
+msgstr "es va especificar el nombre equivocat d'arguments per a l'atribut \"%s\""
+
+#: attribs.c:210
+#, c-format
+msgid "`%s' attribute does not apply to types"
+msgstr "l'atribut \"%s\" no s'aplica a tipus"
+
+#: attribs.c:247
+#, c-format
+msgid "`%s' attribute only applies to function types"
+msgstr "l'atribut \"%s\" nomes s'aplica a tipus funcions"
+
+#: attribs.c:404 c-common.c:5275 c-common.c:5297 c-common.c:5319
+#: c-common.c:5350 c-common.c:5372 c-common.c:5397 c-common.c:5423
+#: c-common.c:5453 c-common.c:5491 c-common.c:5538 c-common.c:5568
+#: c-common.c:5598 c-common.c:5621 c-common.c:5878 c-common.c:5900
+#: c-common.c:5943 c-common.c:6020 c-common.c:6076 c-common.c:6103
+#: c-common.c:6186 c-common.c:6220 c-common.c:6574 config/arm/arm.c:2101
+#: config/arm/arm.c:2128 config/avr/avr.c:4774 config/h8300/h8300.c:3693
+#: config/h8300/h8300.c:3718 config/i386/i386.c:1403 config/i386/winnt.c:78
+#: config/ip2k/ip2k.c:3204
+#, c-format
+msgid "`%s' attribute ignored"
+msgstr "s'ignora l'atribut \"%s\""
+
+#: builtins.c:285
+msgid "offset outside bounds of constant string"
+msgstr "el desplaçament fora dels límits de la constant de cadena"
+
+#: builtins.c:765
+msgid "second arg to `__builtin_prefetch' must be a constant"
+msgstr "el segon argument de \"__builtin_prefetch\" deu ser una constant"
+
+#: builtins.c:772
+msgid "invalid second arg to __builtin_prefetch; using zero"
+msgstr "segon argument de __builtin_prefetch invalid; s'utilitzara zero"
+
+#: builtins.c:779
+msgid "third arg to `__builtin_prefetch' must be a constant"
+msgstr "el tercer argument de \"__builtin_prefetch\" deu ser una constant"
+
+#: builtins.c:786
+msgid "invalid third arg to __builtin_prefetch; using zero"
+msgstr "tercer argument de __builtin_prefetch invalid; s'utilitzara zero"
+
+#. ??? We used to try and build up a call to the out of line function,
+#. guessing about what registers needed saving etc. This became much
+#. harder with __builtin_va_start, since we don't have a tree for a
+#. call to __builtin_saveregs to fall back on. There was exactly one
+#. port (i860) that used this code, and I'm unconvinced it could actually
+#. handle the general case. So we no longer try to handle anything
+#. weird and make the backend absorb the evil.
+#: builtins.c:2875
+msgid "__builtin_saveregs not supported by this target"
+msgstr "no es dona suport a _builtin_saveregs en aquest objectiu"
+
+#: builtins.c:2917
+msgid "argument of `__builtin_args_info' must be constant"
+msgstr "l'argument de \"__builtin_args_info\" deu ser constant"
+
+#: builtins.c:2923
+msgid "argument of `__builtin_args_info' out of range"
+msgstr "l'argument de \"__builtin_args_info\" està fora de rang"
+
+#: builtins.c:2929
+msgid "missing argument in `__builtin_args_info'"
+msgstr "falta un argument en \"__builtin_args_info\""
+
+#: builtins.c:2960
+msgid "`va_start' used in function with fixed args"
+msgstr "es va usar \"va_start\" en una funció amb arguments fixos"
+
+#: builtins.c:2979
+msgid "second parameter of `va_start' not last named argument"
+msgstr "el segon paràmetre de \"va_start\" no és l'últim argument nomenat"
+
+#. Evidently an out of date version of <stdarg.h>; can't validate
+#. va_start's second argument, but can still work as intended.
+#: builtins.c:2984
+msgid "`__builtin_next_arg' called without an argument"
+msgstr "es va cridar a \"__builtin_next_arg\" sense un argument"
+
+#: builtins.c:3070
+msgid "too many arguments to function `va_start'"
+msgstr "massa arguments per a la funció \"va_start\""
+
+#: builtins.c:3172
+msgid "first argument to `va_arg' not of type `va_list'"
+msgstr "el primer argument per a \"va_arg\" no és del tipus \"va_list\""
+
+#. Unfortunately, this is merely undefined, rather than a constraint
+#. violation, so we cannot make this an error. If this call is never
+#. executed, the program is still strictly conforming.
+#: builtins.c:3204
+#, c-format
+msgid "`%s' is promoted to `%s' when passed through `...'"
+msgstr "\"%s\" es promou a \"%s\" quan passa a través de \"...\""
+
+#: builtins.c:3209
+#, c-format
+msgid "(so you should pass `%s' not `%s' to `va_arg')"
+msgstr "(així que deu passar \"%s\" i no \"%s\" a \"va_arg\")"
+
+#: builtins.c:3340
+msgid "invalid arg to `__builtin_frame_address'"
+msgstr "argument invàlid per a \"__builtin_frame_address\""
+
+#: builtins.c:3342
+msgid "invalid arg to `__builtin_return_address'"
+msgstr "argument invàlid per a \"__builtin_return_address\""
+
+#: builtins.c:3356
+msgid "unsupported arg to `__builtin_frame_address'"
+msgstr "argument sense suport per a \"__builtin_frame_address\""
+
+#: builtins.c:3358
+msgid "unsupported arg to `__builtin_return_address'"
+msgstr "argument sense suport per a \"__builtin_return_address\""
+
+#: builtins.c:3530
+msgid "second arg to `__builtin_expect' must be a constant"
+msgstr "el segon argument de \"__builtin_expect\" deu ser una constant"
+
+#: builtins.c:4028
+msgid "__builtin_longjmp second argument must be 1"
+msgstr "el segon argument de _builtin_longjump deu ser 1"
+
+#. just do library call, if unknown builtin
+#: builtins.c:4092 c-common.c:4459
+#, c-format
+msgid "built-in function `%s' not currently supported"
+msgstr "no se suporta actualment la funció interna \"%s\""
+
+#: builtins.c:4165
+msgid "target format does not support infinity"
+msgstr "el format objectiu no té suport per a infinit"
+
+#: c-common.c:1168
+#, c-format
+msgid "`%s' is not defined outside of function scope"
+msgstr "no es defineix \"%s\" fora de l'àmbit de la funció"
+
+#: c-common.c:1189
+#, c-format
+msgid "string length `%d' is greater than the length `%d' ISO C%d compilers are required to support"
+msgstr "la longitud de la cadena \"%d\" és major que la longitud `%d\" que es requereix que els compiladors ISO C %d donin suport"
+
+#: c-common.c:1247
+msgid "concatenation of string literals with __FUNCTION__ is deprecated"
+msgstr "us depreciada de la concatenació de cadenes literals amb __FUNCTION__"
+
+#: c-common.c:1343
+msgid "overflow in constant expression"
+msgstr "desbordament en la constant implícita"
+
+#: c-common.c:1364
+msgid "integer overflow in expression"
+msgstr "desbordament enter en l'expressió"
+
+#: c-common.c:1373
+msgid "floating point overflow in expression"
+msgstr "desbordament de coma flotant en l'expressió"
+
+#: c-common.c:1379
+msgid "vector overflow in expression"
+msgstr "desbordament de vector flotant en l'expressió"
+
+#. This detects cases like converting -129 or 256 to unsigned char.
+#: c-common.c:1402
+msgid "large integer implicitly truncated to unsigned type"
+msgstr "enter gran truncat implícitament al tipus unsigned"
+
+#: c-common.c:1404
+msgid "negative integer implicitly converted to unsigned type"
+msgstr "enter negatiu truncat implícitament al tipus unsigned"
+
+#: c-common.c:1452
+msgid "overflow in implicit constant conversion"
+msgstr "desbordament en la conversió implícita de constant"
+
+#: c-common.c:1600
+#, c-format
+msgid "operation on `%s' may be undefined"
+msgstr "l'operació sobre \"%s\" pot estar indefinida"
+
+#: c-common.c:1891
+msgid "expression statement has incomplete type"
+msgstr "la declaració de l'expressió té tipus de dada incompleta"
+
+#: c-common.c:1924
+msgid "case label does not reduce to an integer constant"
+msgstr "l'etiqueta de \"casi\" no es redueix a una constant entera"
+
+#: c-common.c:2228
+msgid "invalid truth-value expression"
+msgstr "expressió de valor veritable invàlida"
+
+#: c-common.c:2279
+#, c-format
+msgid "invalid operands to binary %s"
+msgstr "operadors invàlids per al binari %s"
+
+#: c-common.c:2513
+msgid "comparison is always false due to limited range of data type"
+msgstr "la comparança sempre és falsa a causa del rang limitat del tipus de dades"
+
+#: c-common.c:2515
+msgid "comparison is always true due to limited range of data type"
+msgstr "la comparança sempre és veritable a causa del rang limitat del tipus de dades"
+
+#: c-common.c:2585
+msgid "comparison of unsigned expression >= 0 is always true"
+msgstr "la comparança d'una expressió unsigned >= 0 sempre és veritable"
+
+#: c-common.c:2594
+msgid "comparison of unsigned expression < 0 is always false"
+msgstr "la comparança d'una expressió unsigned < 0 sempre és falsa"
+
+#: c-common.c:2641
+msgid "pointer of type `void *' used in arithmetic"
+msgstr "es va usar un punter de tipus \"void *\" en l'aritmètica"
+
+#: c-common.c:2647
+msgid "pointer to a function used in arithmetic"
+msgstr "es va usar un punter a una funció en l'aritmètica"
+
+#: c-common.c:2653
+msgid "pointer to member function used in arithmetic"
+msgstr "es va usar un punter a una funció membre en l'aritmètica"
+
+#: c-common.c:2659
+msgid "pointer to a member used in arithmetic"
+msgstr "es va usar un punter a un membre en l'aritmètica"
+
+#: c-common.c:2746 f/com.c:14762
+msgid "struct type value used where scalar is required"
+msgstr "s'usa un valor de tipus struct quan es requereix un escalar"
+
+#: c-common.c:2750 f/com.c:14766
+msgid "union type value used where scalar is required"
+msgstr "s'usa un valor de tipus union quan es requereix un escalar"
+
+#: c-common.c:2754 f/com.c:14770
+msgid "array type value used where scalar is required"
+msgstr "s'usa un valor de tipus matriu quan es requereix un escalar"
+
+#: c-common.c:2874 f/com.c:14903
+msgid "suggest parentheses around assignment used as truth value"
+msgstr "se suggereixen parèntesi al voltant de l'assignació usada com valor veritable"
+
+#: c-common.c:2918 c-common.c:2950
+msgid "invalid use of `restrict'"
+msgstr "ús invàlid de \"restrict\""
+
+#: c-common.c:3064
+msgid "invalid application of `sizeof' to a function type"
+msgstr "aplicació invalida de \"sizeof\" a una expressió de tipus de funció"
+
+#: c-common.c:3074
+#, c-format
+msgid "invalid application of `%s' to a void type"
+msgstr "applicació invàlida de \"%s\" a un tipus void"
+
+#: c-common.c:3080
+#, c-format
+msgid "invalid application of `%s' to an incomplete type"
+msgstr "aplicació invàlida de \"%s\" a un tipus de dada incompleta"
+
+#: c-common.c:3121
+msgid "`__alignof' applied to a bit-field"
+msgstr "\"__alignof\" aplicat a un camp de bits"
+
+#: c-common.c:3618
+#, c-format
+msgid "cannot disable built-in function `%s'"
+msgstr "no es pot desactivar la funcio interna \"%s\""
+
+#: c-common.c:3787 c-typeck.c:1748
+#, c-format
+msgid "too few arguments to function `%s'"
+msgstr "massa pocs arguments per a la funció \"%s\""
+
+#: c-common.c:3793 c-typeck.c:1601
+#, c-format
+msgid "too many arguments to function `%s'"
+msgstr "massa arguments per a la funció \"%s\""
+
+#: c-common.c:3812
+#, c-format
+msgid "non-floating-point argument to function `%s'"
+msgstr "arguments que no són de coma flotant per a la funció \"%s\""
+
+#: c-common.c:4081
+msgid "pointers are not permitted as case values"
+msgstr "els apuntadores no són permesos com valors casi"
+
+#: c-common.c:4087
+msgid "ISO C++ forbids range expressions in switch statements"
+msgstr "ISO C++ prohibeix un rang d'expressions en les declaracions switch"
+
+#: c-common.c:4089
+msgid "ISO C forbids range expressions in switch statements"
+msgstr "ISO C prohibeix un rang d'expressions en les declaracions switch"
+
+#: c-common.c:4119
+msgid "empty range specified"
+msgstr "es va especificar un rang buit"
+
+#: c-common.c:4170
+msgid "duplicate (or overlapping) case value"
+msgstr "valor de casi duplicat (o translapat)"
+
+#: c-common.c:4172
+msgid "this is the first entry overlapping that value"
+msgstr "aquesta és la primera entrada que translapa aquest valor"
+
+#: c-common.c:4176
+msgid "duplicate case value"
+msgstr "valor de casi duplicat"
+
+#: c-common.c:4177
+msgid "previously used here"
+msgstr "es va usar prèviament aquí"
+
+#: c-common.c:4181
+msgid "multiple default labels in one switch"
+msgstr "múltiples etiquetes per omissió en un sol switch"
+
+#: c-common.c:4182
+msgid "this is the first default label"
+msgstr "aquesta és la primera etiqueta per omissió"
+
+#: c-common.c:4210
+msgid "ISO C++ forbids taking the address of a label"
+msgstr "ISO C++ prohibeix prendre l'adreça d'una etiqueta"
+
+#: c-common.c:4212
+msgid "ISO C forbids taking the address of a label"
+msgstr "SO C prohibeix prendre l'adreça d'una etiqueta"
+
+#: c-common.c:5235
+#, c-format
+msgid "declaration of `%s' shadows %s"
+msgstr "la declaració de \"%s\" enfosque \"%s\""
+
+#: c-common.c:5654
+#, c-format
+msgid "unknown machine mode `%s'"
+msgstr "es desconeix la manera de màquina \"%s\""
+
+#: c-common.c:5657
+#, c-format
+msgid "no data type for mode `%s'"
+msgstr "no hi ha tipus de dades per a la manera \"%s\""
+
+#: c-common.c:5666 c-common.c:6316
+#, c-format
+msgid "unable to emulate '%s'"
+msgstr "no es pot emular \"%s\""
+
+#: c-common.c:5702
+msgid "section attribute cannot be specified for local variables"
+msgstr "l'atribut de secció no pot ser especificat per a les variables locals"
+
+#: c-common.c:5713
+#, c-format
+msgid "section of `%s' conflicts with previous declaration"
+msgstr "la secció de \"%s\" causa conflictes amb la declaració prèvia"
+
+#: c-common.c:5722
+#, c-format
+msgid "section attribute not allowed for `%s'"
+msgstr "no es permet un atribut de secció per a \"%s\""
+
+#: c-common.c:5729
+msgid "section attributes are not supported for this target"
+msgstr "atributs de secció no suportats per aquest objectiu"
+
+#: c-common.c:5771
+msgid "requested alignment is not a constant"
+msgstr "l'alineació sol-licitada no és una constant"
+
+#: c-common.c:5776
+msgid "requested alignment is not a power of 2"
+msgstr "l'alineació sol-licitada no és una potència de 2"
+
+#: c-common.c:5781
+msgid "requested alignment is too large"
+msgstr "l'alineació sol-licitada és massa gran"
+
+#: c-common.c:5808
+#, c-format
+msgid "alignment may not be specified for `%s'"
+msgstr "l'alineació no pot ser especificada per a \"%s\""
+
+#: c-common.c:5853
+#, c-format
+msgid "`%s' defined both normally and as an alias"
+msgstr "\"%s\" definit normalment i com un alies"
+
+#: c-common.c:5863
+msgid "alias arg not a string"
+msgstr "l'argument d'alies no és una cadena"
+
+#: c-common.c:5910
+msgid "visibility arg not a string"
+msgstr "l'argument de·visibilitat no és una cadena"
+
+#: c-common.c:5919
+msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\""
+msgstr "l'argument de visibilitat deu ser \"default\", \"hidden\", \"protected\" o \"internal\""
+
+#: c-common.c:5953
+msgid "tls_model arg not a string"
+msgstr "l'argument tls_model no és una cadena"
+
+#: c-common.c:5962
+msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\""
+msgstr "l'argument de tls_model deu ser \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\""
+
+#: c-common.c:5987 c-common.c:6043
+#, c-format
+msgid "`%s' attribute applies only to functions"
+msgstr "l'atribut \"%s\" s'aplica solament a funcions"
+
+#: c-common.c:5994 c-common.c:6050
+#, c-format
+msgid "can't set `%s' attribute after definition"
+msgstr "no es pot establir l'atribut \"%s\" després de la definició"
+
+#: c-common.c:6114
+msgid "cleanup arg not an identifier"
+msgstr "l'objecte·cridat·no·és·un identificador"
+
+#: c-common.c:6121
+msgid "cleanup arg not a function"
+msgstr "l'objecte cridat no és una funció"
+
+#: c-common.c:6183
+#, c-format
+msgid "`%s' attribute ignored for `%s'"
+msgstr "atribut \"%s\" ignorat per a \"%s\""
+
+#: c-common.c:6248
+#, c-format
+msgid "invalid vector type for attribute `%s'"
+msgstr "tipus de vector invalid per a l'atribut \"%s\""
+
+#: c-common.c:6272 c-common.c:6304
+msgid "no vector mode with the size and type specified could be found"
+msgstr "no es pot trobar un mode vector amb la grandària i el tipus especificat "
+
+#: c-common.c:6403
+msgid "nonnull attribute without arguments on a non-prototype"
+msgstr "un atribut nonnull sense arguments en un que no és prototip"
+
+#: c-common.c:6418
+#, c-format
+msgid "nonnull argument has invalid operand number (arg %lu)"
+msgstr "un argument nonnull té un nombre d'operadors invàlid (arg %lu)"
+
+#: c-common.c:6437
+#, c-format
+msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)"
+msgstr "un argument nonnull amb un nombre d'operants fora de rang (arg %lu, operand %lu)"
+
+#: c-common.c:6445
+#, c-format
+msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)"
+msgstr "un argument nonnull fa referència a un operant que no és punter (arg %lu, operand %lu)"
+
+#: c-common.c:6531
+#, c-format
+msgid "null argument where non-null required (arg %lu)"
+msgstr "argument null on es requereix un que no sigui null (arg %lu)"
+
+#: c-convert.c:80 c-typeck.c:988 c-typeck.c:4059 cp/typeck.c:1615
+#: cp/typeck.c:5939
+msgid "void value not ignored as it ought to be"
+msgstr "valor void no ignorat com deuria ser"
+
+#: c-convert.c:112 java/typeck.c:150
+msgid "conversion to non-scalar type requested"
+msgstr "es va sol·licitar conversió a tipus no escalar"
+
+#: c-decl.c:340
+#, c-format
+msgid "array `%s' assumed to have one element"
+msgstr "s'assumeix que la matriu \"%s\" té un element"
+
+#: c-decl.c:526
+#, c-format
+msgid "`struct %s' incomplete in scope ending here"
+msgstr "el \"struct %s\" incomplet en l'àmbit acaba aquí"
+
+#: c-decl.c:529
+#, c-format
+msgid "`union %s' incomplete in scope ending here"
+msgstr "el \"union %s\" incomplet en l'àmbit acaba aquí"
+
+#: c-decl.c:532
+#, c-format
+msgid "`enum %s' incomplete in scope ending here"
+msgstr "el \"enum %s\" incomplet en l'àmbit acaba aquí"
+
+#: c-decl.c:646 c-decl.c:771 java/decl.c:1403
+#, c-format
+msgid "label `%s' used but not defined"
+msgstr "s'usa l'etiqueta \"%s\" però no està definida"
+
+#: c-decl.c:652 c-decl.c:778 java/decl.c:1409
+#, c-format
+msgid "label `%s' defined but not used"
+msgstr "l'etiqueta \"%s\" està definida però no s'usa"
+
+#: c-decl.c:893 cp/decl.c:3335
+#, c-format
+msgid "function `%s' redeclared as inline"
+msgstr "funció \"%s\" re declarada com inline"
+
+#: c-decl.c:895 cp/decl.c:3337
+#, c-format
+msgid "previous declaration of function `%s' with attribute noinline"
+msgstr "declaració prèvia de la funció \"%s\" amb l'atribut noinline"
+
+#: c-decl.c:902 cp/decl.c:3344
+#, c-format
+msgid "function `%s' redeclared with attribute noinline"
+msgstr "funció \"%s\" re-declarada amb l'atribut noinline"
+
+#: c-decl.c:904 cp/decl.c:3346
+#, c-format
+msgid "previous declaration of function `%s' was inline"
+msgstr "la declaració prèvia de la funció \"%s\" va ser inline"
+
+#: c-decl.c:933 c-decl.c:979
+#, c-format
+msgid "shadowing built-in function `%s'"
+msgstr "enfosquin la funció interna \"%s\""
+
+#: c-decl.c:935
+#, c-format
+msgid "shadowing library function `%s'"
+msgstr "enfosquin la funció de biblioteca \"%s\""
+
+#: c-decl.c:941
+#, c-format
+msgid "library function `%s' declared as non-function"
+msgstr "la funció de biblioteca \"%s\" no és declarada com funció"
+
+#: c-decl.c:945 c-decl.c:948
+#, c-format
+msgid "built-in function `%s' declared as non-function"
+msgstr "la funció interna \"%s\" no és declarada com funció"
+
+#: c-decl.c:952 objc/objc-act.c:2384 objc/objc-act.c:6154
+#, c-format
+msgid "`%s' redeclared as different kind of symbol"
+msgstr "\"%s\" redeclarat com un tipus diferent de símbol"
+
+#: c-decl.c:953 c-decl.c:1144 c-decl.c:1158 c-decl.c:1165 c-decl.c:1310
+#: objc/objc-act.c:2386 objc/objc-act.c:6156 objc/objc-act.c:6211
+#, c-format
+msgid "previous declaration of `%s'"
+msgstr "declaració prèvia de \"%s\""
+
+#. If types don't match for a built-in, throw away the built-in.
+#: c-decl.c:1048
+#, c-format
+msgid "conflicting types for built-in function `%s'"
+msgstr "tipus en conflicte per a la funció interna \"%s\""
+
+#: c-decl.c:1091 c-decl.c:1110
+#, c-format
+msgid "conflicting types for `%s'"
+msgstr "tipus en conflicte per a \"%s\""
+
+#: c-decl.c:1133
+msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
+msgstr "Una llista de paràmetres amb una el·lipse no pot coincidir amb una declaració de nom de llista de paràmetres buida."
+
+#: c-decl.c:1139
+msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
+msgstr "Un tipus d'argument que té una promoció per omissió no pot coincidir amb una declaració de nom de llista de paràmetres buida."
+
+#: c-decl.c:1157
+#, c-format
+msgid "thread-local declaration of `%s' follows non thread-local declaration"
+msgstr "declaració thread-local per a \"%s\" a continuació d'una no thread-local"
+
+#: c-decl.c:1164
+#, c-format
+msgid "non thread-local declaration of `%s' follows thread-local declaration"
+msgstr "declaració no thread-local per a \"%s\" a continuació d'una thread-local"
+
+#: c-decl.c:1175 c-decl.c:1198
+#, c-format
+msgid "redefinition of `%s'"
+msgstr "redefinició de \"%s\""
+
+#: c-decl.c:1178
+#, c-format
+msgid "redeclaration of `%s'"
+msgstr "re declaració de \"%s\""
+
+#: c-decl.c:1181
+#, c-format
+msgid "conflicting declarations of `%s'"
+msgstr "declaracions de \"%s\" en conflicte"
+
+#: c-decl.c:1225
+#, c-format
+msgid "prototype for `%s' follows"
+msgstr "el prototip per a \"%s\" a continuació"
+
+#: c-decl.c:1226 c-decl.c:1234 c-decl.c:1245
+msgid "non-prototype definition here"
+msgstr "la definició del no prototip aquí"
+
+#: c-decl.c:1233
+#, c-format
+msgid "prototype for `%s' follows and number of arguments doesn't match"
+msgstr "el prototip per a \"%s\" a continuació i el nombre d'arguments no coincideixen"
+
+#: c-decl.c:1243
+#, c-format
+msgid "prototype for `%s' follows and argument %d doesn't match"
+msgstr "el prototip per a \"%s\" a continuació i l'argument %d no coincideixen"
+
+#: c-decl.c:1261
+#, c-format
+msgid "`%s' declared inline after being called"
+msgstr "\"%s\" declarat inline abans de ser cridat"
+
+#: c-decl.c:1267
+#, c-format
+msgid "`%s' declared inline after its definition"
+msgstr "\"%s\" declarat inline després de la seva definició"
+
+#: c-decl.c:1274
+#, c-format
+msgid "static declaration for `%s' follows non-static"
+msgstr "la declaració static per a \"%s\" a continuació d'una no static"
+
+#: c-decl.c:1282
+#, c-format
+msgid "non-static declaration for `%s' follows static"
+msgstr "la declaració no static per a \"%s\" a continuació d'una static"
+
+#: c-decl.c:1289
+#, c-format
+msgid "const declaration for `%s' follows non-const"
+msgstr "la declaració const per a \"%s\" a continuació d'una no const"
+
+#: c-decl.c:1296
+#, c-format
+msgid "type qualifiers for `%s' conflict with previous decl"
+msgstr "qualificators de tipus per a \"%s\" generen conflicte amb la declaració prèvia"
+
+#: c-decl.c:1309
+#, c-format
+msgid "redundant redeclaration of `%s' in same scope"
+msgstr "declaració redundant de \"%s\" en el mateix àmbit"
+
+#: c-decl.c:1619 java/decl.c:1102
+#, c-format
+msgid "declaration of `%s' shadows a parameter"
+msgstr "la declaració de \"%s\" enfosquí un paràmetre"
+
+#: c-decl.c:1622 java/decl.c:1105
+#, c-format
+msgid "declaration of `%s' shadows a symbol from the parameter list"
+msgstr "la declaració de \"%s\" enfosquí un símbol de la llista de paràmetres"
+
+#: c-decl.c:1643 cp/decl.c:4479
+msgid "a parameter"
+msgstr "un paràmetre"
+
+#: c-decl.c:1645 cp/decl.c:4496
+msgid "a previous local"
+msgstr "una declaració local prèvia"
+
+#. XXX shadow warnings in outer-more namespaces
+#: c-decl.c:1649 cp/decl.c:4500
+msgid "a global declaration"
+msgstr "una declaració global"
+
+#: c-decl.c:1693
+#, c-format
+msgid "nested extern declaration of `%s'"
+msgstr "declaració extern niada de \"%s\""
+
+#: c-decl.c:1712 java/decl.c:1055
+#, c-format
+msgid "`%s' used prior to declaration"
+msgstr "s'usa \"%s\" previ a la declaració"
+
+#: c-decl.c:1726 c-decl.c:1901
+#, c-format
+msgid "`%s' was declared implicitly `extern' and later `static'"
+msgstr "\"%s\" es va declarar implícitament \"extern\" i després \"static\""
+
+#: c-decl.c:1829 cp/decl.c:4336
+msgid "type mismatch with previous external decl"
+msgstr "no coincideixen els tipus amb la declaració externa prèvia"
+
+#: c-decl.c:1830
+#, c-format
+msgid "previous external decl of `%s'"
+msgstr "declaració externa prèvia de \"%s\""
+
+#: c-decl.c:1843
+msgid "type mismatch with previous implicit declaration"
+msgstr "no coincideixen els tipus amb la declaració implícita prèvia"
+
+#: c-decl.c:1845
+#, c-format
+msgid "previous implicit declaration of `%s'"
+msgstr "declaració implícita prèvia de \"%s\""
+
+#: c-decl.c:1880
+#, c-format
+msgid "`%s' was previously implicitly declared to return `int'"
+msgstr "\"%s\" va ser declarat prèvia i implícitament per a retornar \"int\""
+
+#: c-decl.c:1905
+#, c-format
+msgid "`%s' was declared `extern' and later `static'"
+msgstr "\"%s\" va ser declarat \"extern\" i després \"static\""
+
+#: c-decl.c:1929
+#, c-format
+msgid "extern declaration of `%s' doesn't match global one"
+msgstr "la declaració externa de \"%s\" no coincideix amb la global"
+
+#: c-decl.c:1971
+#, c-format
+msgid "`%s' locally external but globally static"
+msgstr "\"%s\" és externa localment però estàtica globalment"
+
+#: c-decl.c:2095
+#, c-format
+msgid "function `%s' was previously declared within a block"
+msgstr "la funció \"%s\" va ser declarada prèviament dintre d'un bloc"
+
+#: c-decl.c:2115 c-decl.c:2117
+#, c-format
+msgid "implicit declaration of function `%s'"
+msgstr "declaració implícita de la funció \"%s\""
+
+#: c-decl.c:2196
+#, c-format
+msgid "label %s referenced outside of any function"
+msgstr "l'etiqueta %s és referenciada fora de qualsevol funció"
+
+#: c-decl.c:2253
+#, c-format
+msgid "duplicate label declaration `%s'"
+msgstr "declaració de l'etiqueta \"%s\" duplicada"
+
+#: c-decl.c:2256
+msgid "this is a previous declaration"
+msgstr "aquesta és una declaració prèvia"
+
+#: c-decl.c:2679
+msgid "unnamed struct/union that defines no instances"
+msgstr "struct/union sense nom que no defineix cap instància"
+
+#: c-decl.c:2698
+msgid "useless keyword or type name in empty declaration"
+msgstr "paraules claus inútils o noms de tipus en una declaració buida"
+
+#: c-decl.c:2705
+msgid "two types specified in one empty declaration"
+msgstr "es van especificar dos tipus en una declaració buida"
+
+#: c-decl.c:2710 c-parse.y:753 c-parse.y:755 parse.y:766 parse.y:1853
+#: objc-parse.y:799 objc-parse.y:801 objc-parse.y:3042
+msgid "empty declaration"
+msgstr "declaració buida"
+
+#: c-decl.c:2740
+msgid "ISO C90 does not support `static' or type qualifiers in parameter array declarators"
+msgstr "ISO C90 no dóna suport a \"static\" o qualificadors de tipus dins matrius de declaradors de parametres"
+
+#: c-decl.c:2742
+msgid "ISO C90 does not support `[*]' array declarators"
+msgstr "ISO C90 no dóna suport a declaradors de parametres \"[*]\""
+
+#: c-decl.c:2745
+msgid "GCC does not yet properly implement `[*]' array declarators"
+msgstr "GCC no implementa encara correctament declaradors de parametres \"[*]\""
+
+#: c-decl.c:2764
+msgid "static or type qualifiers in abstract declarator"
+msgstr "static o calificador de tipus en un declarador abstracte"
+
+#: c-decl.c:2838
+#, c-format
+msgid "`%s' is usually a function"
+msgstr "\"%s\" generalment és una funció"
+
+#: c-decl.c:2847
+#, c-format
+msgid "typedef `%s' is initialized (use __typeof__ instead)"
+msgstr "typedef \"%s\" té valor inicial (usi __typeof__ en lloc)"
+
+#: c-decl.c:2853
+#, c-format
+msgid "function `%s' is initialized like a variable"
+msgstr "la funció \"%s\" té valor inicial com una variable"
+
+#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
+#: c-decl.c:2860
+#, c-format
+msgid "parameter `%s' is initialized"
+msgstr "el paràmetre \"%s\" té valor inicial"
+
+#: c-decl.c:2880 c-typeck.c:4895
+msgid "variable-sized object may not be initialized"
+msgstr "un objecte de grandària variable no pot tenir valor inicial"
+
+#: c-decl.c:2886
+#, c-format
+msgid "variable `%s' has initializer but incomplete type"
+msgstr "la variable \"%s\" té assignació de valor inicial, però tipus de dada incompleta"
+
+#: c-decl.c:2892
+#, c-format
+msgid "elements of array `%s' have incomplete type"
+msgstr "alguns elements de la matriu \"%s\" tenen tipus de dada incompleta"
+
+#: c-decl.c:2905
+#, c-format
+msgid "declaration of `%s' has `extern' and is initialized"
+msgstr "la declaració de \"%s\" té \"extern\" i té valor inicial"
+
+#: c-decl.c:2954 c-decl.c:5828 cp/decl.c:7760 cp/decl.c:14339
+#, c-format
+msgid "inline function `%s' given attribute noinline"
+msgstr "ha donat un atribut noinline a la funció inline \"%s\""
+
+#: c-decl.c:3028
+#, c-format
+msgid "initializer fails to determine size of `%s'"
+msgstr "el iniciador no va poder determinar la grandària de \"%s\""
+
+#: c-decl.c:3033
+#, c-format
+msgid "array size missing in `%s'"
+msgstr "falta la grandària de la matriu en %s"
+
+#: c-decl.c:3049
+#, c-format
+msgid "zero or negative size array `%s'"
+msgstr "matriu \"%s\" de grandària zero o negatiu"
+
+#: c-decl.c:3077
+#, c-format
+msgid "storage size of `%s' isn't known"
+msgstr "no es coneix la grandària d'emmagatzematge de \"%s\""
+
+#: c-decl.c:3087
+#, c-format
+msgid "storage size of `%s' isn't constant"
+msgstr "la grandària d'emmagatzematge de \"%s\" no és constant"
+
+#: c-decl.c:3147
+#, c-format
+msgid "ignoring asm-specifier for non-static local variable `%s'"
+msgstr "s'ignora el especificador asm per a la variable local no estàtica \"%s\""
+
+#: c-decl.c:3247
+#, c-format
+msgid "ISO C forbids parameter `%s' shadowing typedef"
+msgstr "ISO C prohibeix l'enfosquiment del paràmetre \"%s\" de typedef"
+
+#: c-decl.c:3592 cp/decl.c:10880
+msgid "`long long long' is too long for GCC"
+msgstr "\"long long long\" és massa llarg per a GCC"
+
+#: c-decl.c:3597
+msgid "ISO C90 does not support `long long'"
+msgstr "ISO C90 no dóna suport a \"long long\""
+
+#: c-decl.c:3606 c-decl.c:3609 cp/decl.c:10885
+#, c-format
+msgid "duplicate `%s'"
+msgstr "\"%s\" duplicat"
+
+#: c-decl.c:3619 cp/decl.c:10892
+msgid "`__thread' before `extern'"
+msgstr "\"__thread\" abans \"extern\""
+
+#: c-decl.c:3621 cp/decl.c:10894
+msgid "`__thread' before `static'"
+msgstr "\"__thread\" abans \"static\""
+
+#: c-decl.c:3629 cp/decl.c:10921
+#, c-format
+msgid "two or more data types in declaration of `%s'"
+msgstr "dos o més tipus de dades en la declaració de \"%s\""
+
+#: c-decl.c:3649 cp/decl.c:10926
+#, c-format
+msgid "`%s' fails to be a typedef or built in type"
+msgstr "\"%s\" falla al ser un typedef o un tipus intern del compilador"
+
+#: c-decl.c:3688
+#, c-format
+msgid "type defaults to `int' in declaration of `%s'"
+msgstr "el tipus de dada per omissió és \"int\" en la declaració de \"%s\""
+
+#: c-decl.c:3717
+#, c-format
+msgid "both long and short specified for `%s'"
+msgstr "s'especifica long i short al mateix temps per a \"%s\""
+
+#: c-decl.c:3721 cp/decl.c:11041
+#, c-format
+msgid "long or short specified with char for `%s'"
+msgstr "s'especifica long o short amb char per a \"%s\""
+
+#: c-decl.c:3728 cp/decl.c:11045
+#, c-format
+msgid "long or short specified with floating type for `%s'"
+msgstr "s'especifica long o short amb tipus floating per a \"%s\""
+
+#: c-decl.c:3731
+msgid "the only valid combination is `long double'"
+msgstr "l'única combinació vàlida és \"long double\""
+
+#: c-decl.c:3737
+#, c-format
+msgid "both signed and unsigned specified for `%s'"
+msgstr "s'especifica signed i unsigned al mateix temps per a \"%s\""
+
+#: c-decl.c:3739 cp/decl.c:11034
+#, c-format
+msgid "long, short, signed or unsigned invalid for `%s'"
+msgstr "long, short, signed o unsigned invàlids per a \"%s\""
+
+#: c-decl.c:3745 cp/decl.c:11054
+#, c-format
+msgid "long, short, signed or unsigned used invalidly for `%s'"
+msgstr "ús invàlid de long, short, signed o unsigned per a \"%s\""
+
+#: c-decl.c:3763 cp/decl.c:11075
+#, c-format
+msgid "complex invalid for `%s'"
+msgstr "complex invàlid per a \"%s\""
+
+#: c-decl.c:3805
+msgid "ISO C90 does not support complex types"
+msgstr "ISO C90 no té suport per a tipus complexos"
+
+#: c-decl.c:3817
+msgid "ISO C does not support plain `complex' meaning `double complex'"
+msgstr "ISO C no té suport per a \"complex\" simples que signifiquen \"double complex\""
+
+#: c-decl.c:3823 c-decl.c:3835
+msgid "ISO C does not support complex integer types"
+msgstr "ISO C no dóna suport a tipus enters complexos"
+
+#: c-decl.c:3850 c-decl.c:4316 cp/decl.c:11688
+msgid "duplicate `const'"
+msgstr "\"const\" duplicat"
+
+#: c-decl.c:3852 c-decl.c:4320 cp/decl.c:11692
+msgid "duplicate `restrict'"
+msgstr "\"restrict\" duplicat"
+
+#: c-decl.c:3854 c-decl.c:4318 cp/decl.c:11690
+msgid "duplicate `volatile'"
+msgstr "\"volatile\" duplicat"
+
+#: c-decl.c:3882 cp/decl.c:11238
+#, c-format
+msgid "multiple storage classes in declaration of `%s'"
+msgstr "múltiples classes d'emmagatzematge en la declaració de \"%s\""
+
+#: c-decl.c:3892
+msgid "function definition declared `auto'"
+msgstr "la definició de la funció ho va declarar com \"auto\""
+
+#: c-decl.c:3894
+msgid "function definition declared `register'"
+msgstr "la definició de la funció ho va declarar com \"register\""
+
+#: c-decl.c:3896
+msgid "function definition declared `typedef'"
+msgstr "la definició de la funció ho va declarar com \"typedef\""
+
+#: c-decl.c:3898
+msgid "function definition declared `__thread'"
+msgstr "la definició de la funció ho va declarar com \"__thread\""
+
+#: c-decl.c:3911
+#, c-format
+msgid "storage class specified for structure field `%s'"
+msgstr "es va especificar una classe d'emmagatzematge per al camp de l'estructura \"%s\""
+
+#: c-decl.c:3915 cp/decl.c:11285
+#, c-format
+msgid "storage class specified for parameter `%s'"
+msgstr "es va especificar una classe d'emmagatzematge per al paràmetre \"%s\""
+
+#: c-decl.c:3918 cp/decl.c:11287
+msgid "storage class specified for typename"
+msgstr "es va especificar una classe d'emmagatzematge per al nom de tipus"
+
+#: c-decl.c:3930 cp/decl.c:11302
+#, c-format
+msgid "`%s' initialized and declared `extern'"
+msgstr "\"%s\" iniciat i declarat com \"extern\""
+
+#: c-decl.c:3932 cp/decl.c:11305
+#, c-format
+msgid "`%s' has both `extern' and initializer"
+msgstr "\"%s\" té \"extern\" i assignador de valor inicial al mateix temps"
+
+#: c-decl.c:3937 cp/decl.c:11313
+#, c-format
+msgid "top-level declaration of `%s' specifies `auto'"
+msgstr "la declaració del nivell superior de \"%s\" especifica \"auto\""
+
+#: c-decl.c:3942 cp/decl.c:11309
+#, c-format
+msgid "nested function `%s' declared `extern'"
+msgstr "la funció niada \"%s\" es va declarar \"extern\""
+
+#: c-decl.c:3948 cp/decl.c:11319
+#, c-format
+msgid "function-scope `%s' implicitly auto and declared `__thread'"
+msgstr "l'àmbit de la funció \"%s\" és implícitament acte i declarada \"__thread\""
+
+#. Only the innermost declarator (making a parameter be of
+#. array type which is converted to pointer type)
+#. may have static or type qualifiers.
+#: c-decl.c:3987 c-decl.c:4188
+msgid "static or type qualifiers in non-parameter array declarator"
+msgstr "static o qualificador de tipus en un declarador de matriu que no és parametre"
+
+#: c-decl.c:4031
+#, c-format
+msgid "declaration of `%s' as array of voids"
+msgstr "declaració de \"%s\" com una matriu de voids"
+
+#: c-decl.c:4037
+#, c-format
+msgid "declaration of `%s' as array of functions"
+msgstr "declaració de \"%s\" com una matriu de funcions"
+
+#: c-decl.c:4042 c-decl.c:5332
+msgid "invalid use of structure with flexible array member"
+msgstr "ús invàlid de structura amb membres de matriu flexible"
+
+#: c-decl.c:4061
+#, c-format
+msgid "size of array `%s' has non-integer type"
+msgstr "la grandària de la matriu \"%s\" té un tipus no enter"
+
+#: c-decl.c:4066
+#, c-format
+msgid "ISO C forbids zero-size array `%s'"
+msgstr "ISO C prohibeix la matriu \"%s\" de grandària zero"
+
+#: c-decl.c:4073
+#, c-format
+msgid "size of array `%s' is negative"
+msgstr "la grandària de la matriu \"%s\" és negatiu"
+
+#: c-decl.c:4086
+#, c-format
+msgid "ISO C90 forbids array `%s' whose size can't be evaluated"
+msgstr "ISO C90 prohibeix matriu \"%s\" que la seua grandària no pot ser avaluada"
+
+#: c-decl.c:4089
+#, c-format
+msgid "ISO C90 forbids variable-size array `%s'"
+msgstr "ISO C90 prohibeix la matriu \"%s\" de grandària variable"
+
+#: c-decl.c:4119 c-decl.c:4342 cp/decl.c:11897
+#, c-format
+msgid "size of array `%s' is too large"
+msgstr "la grandària de la matriu \"%s\" és massa gran"
+
+#: c-decl.c:4145
+msgid "ISO C90 does not support flexible array members"
+msgstr "ISO C90 no té suport per a membres de matriu flexibles"
+
+#: c-decl.c:4155
+msgid "array type has incomplete element type"
+msgstr "el tipus array té tipus d'element incomplet"
+
+#: c-decl.c:4162 c-decl.c:4392
+msgid "ISO C forbids const or volatile function types"
+msgstr "ISO C prohibeix els tipus de funció const o volatile"
+
+#: c-decl.c:4208 cp/decl.c:11445
+#, c-format
+msgid "`%s' declared as function returning a function"
+msgstr "\"%s\" que és declarat com funció retorna una funció"
+
+#: c-decl.c:4213 cp/decl.c:11450
+#, c-format
+msgid "`%s' declared as function returning an array"
+msgstr "\"%s\" que és declarat com funció retorna una matriu"
+
+#: c-decl.c:4241
+msgid "ISO C forbids qualified void function return type"
+msgstr "ISO C prohibeix el tipus qualificat de devolució d'una funció void"
+
+#: c-decl.c:4245
+msgid "type qualifiers ignored on function return type"
+msgstr "s'ignoren els calificatores de tipus en el tipus de devolució de la funció"
+
+#: c-decl.c:4274 c-decl.c:4357 c-decl.c:4481 c-decl.c:4573
+msgid "ISO C forbids qualified function types"
+msgstr "ISO C prohibeix els tipus de funció qualificats"
+
+#: c-decl.c:4314 cp/decl.c:11684
+msgid "invalid type modifier within pointer declarator"
+msgstr "modificador de tipus invàlid dintre de la declaració del punter"
+
+#: c-decl.c:4412 cp/decl.c:12182
+#, c-format
+msgid "variable or field `%s' declared void"
+msgstr "variable o camp \"%s\" declarat void"
+
+#: c-decl.c:4445
+msgid "attributes in parameter array declarator ignored"
+msgstr "atributs en el declarador de parametres de matriu ignorats"
+
+#: c-decl.c:4470
+msgid "invalid type modifier within array declarator"
+msgstr "imodificador de tipus invalid dins d'un declarador de matriu"
+
+#: c-decl.c:4515
+#, c-format
+msgid "field `%s' declared as a function"
+msgstr "el camp \"%s\" es declarat com una funció"
+
+#: c-decl.c:4521
+#, c-format
+msgid "field `%s' has incomplete type"
+msgstr "el camp \"%s\" té tipus de dada incompleta"
+
+#: c-decl.c:4553 c-decl.c:4555 c-decl.c:4557 c-decl.c:4564
+#, c-format
+msgid "invalid storage class for function `%s'"
+msgstr "classe d'emmagatzematge invàlida per a la funció \"%s\""
+
+#: c-decl.c:4579
+msgid "`noreturn' function returns non-void value"
+msgstr "la funció \"no return\" retorna un valor que no és void"
+
+#: c-decl.c:4594
+msgid "cannot inline function `main'"
+msgstr "no es pot fer inline la funció \"main\""
+
+#: c-decl.c:4649
+#, c-format
+msgid "variable `%s' declared `inline'"
+msgstr "la variable \"%s\" va ser declarada com \"inline\""
+
+#. A mere warning is sure to result in improper semantics
+#. at runtime. Don't bother to allow this to compile.
+#: c-decl.c:4677 cp/decl.c:9951
+msgid "thread-local storage not supported for this target"
+msgstr "no es dóna suport a -thread local strorage en aquest objectiu"
+
+#: c-decl.c:4732 c-decl.c:5880
+msgid "function declaration isn't a prototype"
+msgstr "la declaració de la funció no és un prototip"
+
+#: c-decl.c:4738
+msgid "parameter names (without types) in function declaration"
+msgstr "noms de paràmetres (sense tipus) en la declaració de la funció"
+
+#: c-decl.c:4770 c-decl.c:6250
+#, c-format
+msgid "parameter `%s' has incomplete type"
+msgstr "el paràmetre \"%s\" té tipus de dada incompleta"
+
+#: c-decl.c:4773
+msgid "parameter has incomplete type"
+msgstr "el paràmetre té tipus incomplet"
+
+#: c-decl.c:4794
+#, c-format
+msgid "parameter `%s' points to incomplete type"
+msgstr "el paràmetre \"%s\" apunta a un tipus incomplet"
+
+#: c-decl.c:4797
+msgid "parameter points to incomplete type"
+msgstr "el paràmetre punta a un tipus incomplet"
+
+#: c-decl.c:4862
+#, c-format
+msgid "parameter `%s' has just a forward declaration"
+msgstr "el paràmetre \"%s\" només té una declaració posterior"
+
+#: c-decl.c:4903
+msgid "`void' in parameter list must be the entire list"
+msgstr "\"void\" en la llista de paràmetres deu ser la llista completa"
+
+#: c-decl.c:4934
+#, c-format
+msgid "`struct %s' declared inside parameter list"
+msgstr "\"struct %s\" declarat dintre d'una llista de paràmetres"
+
+#: c-decl.c:4937
+#, c-format
+msgid "`union %s' declared inside parameter list"
+msgstr "\"union %s\" declarat dintre d'una llista de paràmetres"
+
+#: c-decl.c:4940
+#, c-format
+msgid "`enum %s' declared inside parameter list"
+msgstr "\"enum %s\" declarat dintre d'una llista de paràmetres"
+
+#: c-decl.c:4947
+msgid "anonymous struct declared inside parameter list"
+msgstr "struct anònim declarat dintre d'una llista de paràmetres"
+
+#: c-decl.c:4949
+msgid "anonymous union declared inside parameter list"
+msgstr "union anònim declarat dintre d'una llista de paràmetres"
+
+#: c-decl.c:4951
+msgid "anonymous enum declared inside parameter list"
+msgstr "enum anònim declarat dintre d'una llista de paràmetres"
+
+#: c-decl.c:4955
+msgid "its scope is only this definition or declaration, which is probably not what you want"
+msgstr "el seu àmbit és solament aquesta definició o declaració, la qual cosa probablement no sigui el que desitja."
+
+#: c-decl.c:5032
+#, c-format
+msgid "redefinition of `union %s'"
+msgstr "redefinició de \"union %s\""
+
+#: c-decl.c:5034
+#, c-format
+msgid "redefinition of `struct %s'"
+msgstr "redefinició de \"struct %s\""
+
+#: c-decl.c:5105 cp/decl.c:7532
+msgid "declaration does not declare anything"
+msgstr "la declaració no declara res"
+
+#: c-decl.c:5169 c-decl.c:5172
+#, c-format
+msgid "%s defined inside parms"
+msgstr "es va definir %s dintre dels paràmetres"
+
+#: c-decl.c:5170 c-decl.c:5173 c-decl.c:5184
+msgid "union"
+msgstr "unió"
+
+#: c-decl.c:5170 c-decl.c:5173
+msgid "structure"
+msgstr "estructura"
+
+#: c-decl.c:5183
+#, c-format
+msgid "%s has no %s"
+msgstr "%s no té %s"
+
+#: c-decl.c:5184
+msgid "struct"
+msgstr "struct"
+
+#: c-decl.c:5185
+msgid "named members"
+msgstr "membres nomenats"
+
+#: c-decl.c:5185
+msgid "members"
+msgstr "membres"
+
+#: c-decl.c:5224
+#, c-format
+msgid "nested redefinition of `%s'"
+msgstr "redefinició niada de \"%s\""
+
+#: c-decl.c:5237
+#, c-format
+msgid "bit-field `%s' width not an integer constant"
+msgstr "l'amplària del camp de bits \"%s\" no és una constant entera"
+
+#: c-decl.c:5248
+#, c-format
+msgid "bit-field `%s' has invalid type"
+msgstr "el camp de bits \"%s\" té un tipus invàlid"
+
+#: c-decl.c:5260
+#, c-format
+msgid "bit-field `%s' type invalid in ISO C"
+msgstr "el tipus de camp de bit \"%s\" és invàlid en ISO C"
+
+#: c-decl.c:5271
+#, c-format
+msgid "negative width in bit-field `%s'"
+msgstr "amplària negativa en el camp de bit \"%s\""
+
+#: c-decl.c:5273
+#, c-format
+msgid "width of `%s' exceeds its type"
+msgstr "l'amplària de \"%s\" excedeix el seu tipus"
+
+#: c-decl.c:5275
+#, c-format
+msgid "zero width for bit-field `%s'"
+msgstr "amplària zero per al camp de bits \"%s\""
+
+#: c-decl.c:5289
+#, c-format
+msgid "`%s' is narrower than values of its type"
+msgstr "\"%s\" és més estret que els valors del seu tipus"
+
+#: c-decl.c:5323
+msgid "flexible array member in union"
+msgstr "membre de matriu flexible en el union"
+
+#: c-decl.c:5325
+msgid "flexible array member not at end of struct"
+msgstr "el membre de matriu flexible no està al final del struct"
+
+#: c-decl.c:5327
+msgid "flexible array member in otherwise empty struct"
+msgstr "el membre de matriu flexible seria d'altra manera un struct buit"
+
+#: c-decl.c:5357
+#, c-format
+msgid "duplicate member `%s'"
+msgstr "membre duplicat \"%s\""
+
+#: c-decl.c:5448
+msgid "union cannot be made transparent"
+msgstr "union no es pot fer transparent"
+
+#. This enum is a named one that has been declared already.
+#: c-decl.c:5558
+#, c-format
+msgid "redeclaration of `enum %s'"
+msgstr "redeclaració de \"enum %s\""
+
+#: c-decl.c:5592
+msgid "enum defined inside parms"
+msgstr "enum definit dintre dels paràmetres"
+
+#: c-decl.c:5625
+msgid "enumeration values exceed range of largest integer"
+msgstr "els valors d'enumeració excedeixen el rang de l'enter més gran"
+
+#: c-decl.c:5734
+#, c-format
+msgid "enumerator value for `%s' not integer constant"
+msgstr "el valor de enumerator per a \"%s\" no és una constant entera"
+
+#: c-decl.c:5747
+msgid "overflow in enumeration values"
+msgstr "desbordament en valors d'enumeració"
+
+#: c-decl.c:5752
+msgid "ISO C restricts enumerator values to range of `int'"
+msgstr "ISO C restringeix els valors d'enumeració al rang de \"int\""
+
+#: c-decl.c:5834
+msgid "return type is an incomplete type"
+msgstr "el tipus de devolució és un tipus de dada incompleta"
+
+#: c-decl.c:5842
+msgid "return type defaults to `int'"
+msgstr "el tipus de devolució per omissió és \"int\""
+
+#: c-decl.c:5889
+#, c-format
+msgid "no previous prototype for `%s'"
+msgstr "no hi ha un prototip previ per a \"%s\""
+
+#: c-decl.c:5896
+#, c-format
+msgid "`%s' was used with no prototype before its definition"
+msgstr "es va usar \"%s\" sense prototip abans de la seva definició"
+
+#: c-decl.c:5902
+#, c-format
+msgid "no previous declaration for `%s'"
+msgstr "no hi ha declaració prèvia per a \"%s\""
+
+#: c-decl.c:5909
+#, c-format
+msgid "`%s' was used with no declaration before its definition"
+msgstr "es va usar \"%s\" sense prototip abans de la seva definició"
+
+#: c-decl.c:5933 c-decl.c:6486
+#, c-format
+msgid "return type of `%s' is not `int'"
+msgstr "el tipus de devolució de \"%s\" no és \"int\""
+
+#: c-decl.c:5949
+#, c-format
+msgid "first argument of `%s' should be `int'"
+msgstr "el primer argument de \"%s\" deu ser \"int\""
+
+#: c-decl.c:5958
+#, c-format
+msgid "second argument of `%s' should be `char **'"
+msgstr "el segon argument de \"%s\" deu ser \"char **\""
+
+#: c-decl.c:5967
+#, c-format
+msgid "third argument of `%s' should probably be `char **'"
+msgstr "el tercer argument de \"%s\" deuria ser \"char **\""
+
+#: c-decl.c:5976
+#, c-format
+msgid "`%s' takes only zero or two arguments"
+msgstr "\"%s\" només pren zero o dos arguments"
+
+#: c-decl.c:5979
+#, c-format
+msgid "`%s' is normally a non-static function"
+msgstr "\"%s\" generalment és una funció no estàtica"
+
+#: c-decl.c:6077
+msgid "parm types given both in parmlist and separately"
+msgstr "es van donar els tipus dels paràmetres en la llista de paràmetres i per separat"
+
+#: c-decl.c:6098
+msgid "parameter name omitted"
+msgstr "es va ometre el nom del paràmetre"
+
+#: c-decl.c:6102 c-decl.c:6204
+#, c-format
+msgid "parameter `%s' declared void"
+msgstr "el paràmetre \"%s\" es va declarar void"
+
+#: c-decl.c:6178
+msgid "parameter name missing from parameter list"
+msgstr "falta el nom del paràmetre de la llista de paràmetres"
+
+#: c-decl.c:6197
+#, c-format
+msgid "multiple parameters named `%s'"
+msgstr "múltiples paràmetres nomenats \"%s\""
+
+#: c-decl.c:6219 c-decl.c:6221
+#, c-format
+msgid "type of `%s' defaults to `int'"
+msgstr "el tipus de \"%s\" és \"int\" per omissió"
+
+#: c-decl.c:6257
+#, c-format
+msgid "declaration for parameter `%s' but no such parameter"
+msgstr "existeix la declaració per al paràmetre \"%s\" però no hi ha tal paràmetre"
+
+#: c-decl.c:6305
+msgid "number of arguments doesn't match prototype"
+msgstr "el nombre d'arguments no coincideixen amb el prototip"
+
+#: c-decl.c:6335
+#, c-format
+msgid "promoted argument `%s' doesn't match prototype"
+msgstr "l'argument promogut \"%s\" no coincideix amb el prototip"
+
+#: c-decl.c:6345
+#, c-format
+msgid "argument `%s' doesn't match prototype"
+msgstr "l'argument \"%s\" no coincideix amb el prototip"
+
+#: c-decl.c:6518 cp/decl.c:15049
+msgid "no return statement in function returning non-void"
+msgstr "no hi ha una declaració de devolució en una funció que retorna non-void"
+
+#: c-decl.c:6525
+msgid "this function may return with or without a value"
+msgstr "aquesta funció pot retornar amb o sense un valor"
+
+#: c-decl.c:6729
+#, c-format
+msgid "size of return value of `%s' is %u bytes"
+msgstr "la grandària del valor de devolució de \"%s\" és de %u octets"
+
+#: c-decl.c:6733
+#, c-format
+msgid "size of return value of `%s' is larger than %d bytes"
+msgstr "la grandària del valor de devolució de \"%s\" és més gran que %d octets"
+
+#. If we get here, declarations have been used in a for loop without
+#. the C99 for loop scope. This doesn't make much sense, so don't
+#. allow it.
+#: c-decl.c:6791
+msgid "`for' loop initial declaration used outside C99 mode"
+msgstr "es va usar la declaració inicial del cicle \"for\" fora de la manera C99"
+
+#: c-decl.c:6815
+#, c-format
+msgid "`struct %s' declared in `for' loop initial declaration"
+msgstr "\"struct %s\" declarat en la declaració inicial del cicle \"for\""
+
+#: c-decl.c:6818
+#, c-format
+msgid "`union %s' declared in `for' loop initial declaration"
+msgstr "\"union %s\" declarat en la declaració inicial del cicle \"for\""
+
+#: c-decl.c:6821
+#, c-format
+msgid "`enum %s' declared in `for' loop initial declaration"
+msgstr "\"enum %s\" declarat en la declaració inicial del cicle \"for\""
+
+#: c-decl.c:6829
+#, c-format
+msgid "declaration of non-variable `%s' in `for' loop initial declaration"
+msgstr "declaració de \"%s\" que no és variable en la declaració inicial del cicle \"for\""
+
+#: c-decl.c:6831
+#, c-format
+msgid "declaration of static variable `%s' in `for' loop initial declaration"
+msgstr "declaració de la variable static \"%s\" en la declaració inicial del cicle \"for\""
+
+#: c-decl.c:6833
+#, c-format
+msgid "declaration of `extern' variable `%s' in `for' loop initial declaration"
+msgstr "declaració de la variable \"extern\" \"%s\" en la declaració inicial del cicle `for\""
+
+#: c-format.c:109 c-format.c:191
+msgid "format string arg not a string type"
+msgstr "l'argument de la cadena de format no és del tipus cadena de text"
+
+#: c-format.c:124
+msgid "args to be formatted is not '...'"
+msgstr "els arguments que rebran format no són \"...\""
+
+#: c-format.c:133
+msgid "strftime formats cannot format arguments"
+msgstr "els formats de strftime no poden donar format als arguments"
+
+#: c-format.c:168 c-format.c:270
+msgid "format string has invalid operand number"
+msgstr "la cadena de format té un nombre d'operadors invàlid"
+
+#: c-format.c:202
+msgid "function does not return string type"
+msgstr "la funció no retorna un tipus string"
+
+#: c-format.c:233
+msgid "unrecognized format specifier"
+msgstr "no es reconeix el especificador de format"
+
+#: c-format.c:246
+#, c-format
+msgid "`%s' is an unrecognized format function type"
+msgstr "\"%s\" és un format de tipus de funció no reconegut"
+
+#: c-format.c:280
+msgid "format string arg follows the args to be formatted"
+msgstr "l'argument de la cadena de format segueix als arguments que rebran format"
+
+#: c-format.c:601
+msgid "` ' flag"
+msgstr "opció \" \""
+
+#: c-format.c:601
+msgid "the ` ' printf flag"
+msgstr "l'opció de printf \" \""
+
+#: c-format.c:602 c-format.c:673
+msgid "`+' flag"
+msgstr "opció \"+\""
+
+#: c-format.c:602
+msgid "the `+' printf flag"
+msgstr "l'opció \"+\" de printf"
+
+#: c-format.c:603 c-format.c:649
+msgid "`#' flag"
+msgstr "opció \"#\""
+
+#: c-format.c:603
+msgid "the `#' printf flag"
+msgstr "l'opció \"#\" de printf"
+
+#: c-format.c:604 c-format.c:647
+msgid "`0' flag"
+msgstr "opció \"0\""
+
+#: c-format.c:604
+msgid "the `0' printf flag"
+msgstr "l'opció \"0\" de printf"
+
+#: c-format.c:605 c-format.c:646 c-format.c:676
+msgid "`-' flag"
+msgstr "opció \"-\""
+
+#: c-format.c:605
+msgid "the `-' printf flag"
+msgstr "l'opció \"-\" de printf"
+
+#: c-format.c:606 c-format.c:630
+msgid "`'' flag"
+msgstr "opció \"'\""
+
+#: c-format.c:606
+msgid "the `'' printf flag"
+msgstr "l'opció \"'\" de printf"
+
+#: c-format.c:607 c-format.c:631
+msgid "`I' flag"
+msgstr "opció \"I\""
+
+#: c-format.c:607
+msgid "the `I' printf flag"
+msgstr "l'opció \"I\" de printf"
+
+#: c-format.c:608 c-format.c:628 c-format.c:650 c-format.c:677 c-format.c:1702
+msgid "field width"
+msgstr "amplària de camp"
+
+#: c-format.c:608
+msgid "field width in printf format"
+msgstr "amplària de camp en format printf"
+
+#: c-format.c:609
+msgid "precision"
+msgstr "precisió"
+
+#: c-format.c:609
+msgid "precision in printf format"
+msgstr "precisió en format printf"
+
+#: c-format.c:610 c-format.c:629 c-format.c:680
+msgid "length modifier"
+msgstr "modificador de longitud"
+
+#: c-format.c:610
+msgid "length modifier in printf format"
+msgstr "modificador de longitud en format printf"
+
+#: c-format.c:626
+msgid "assignment suppression"
+msgstr "supressió de l'assignació"
+
+#: c-format.c:626
+msgid "the assignment suppression scanf feature"
+msgstr "la supressió de l'assignació és una característica de scanf"
+
+#: c-format.c:627
+msgid "`a' flag"
+msgstr "opció \"a\""
+
+#: c-format.c:627
+msgid "the `a' scanf flag"
+msgstr "l'opció \"a\" de scanf"
+
+#: c-format.c:628
+msgid "field width in scanf format"
+msgstr "amplària de camp en format scanf"
+
+#: c-format.c:629
+msgid "length modifier in scanf format"
+msgstr "modificador de longitud en format scanf"
+
+#: c-format.c:630
+msgid "the `'' scanf flag"
+msgstr "l'opció \"'\" de scanf"
+
+#: c-format.c:631
+msgid "the `I' scanf flag"
+msgstr "l'opció \"I\" de scanf"
+
+#: c-format.c:645
+msgid "`_' flag"
+msgstr "l'opció \"_\""
+
+#: c-format.c:645
+msgid "the `_' strftime flag"
+msgstr "l'opció \"_\" de strftime"
+
+#: c-format.c:646
+msgid "the `-' strftime flag"
+msgstr "l'opció \"-\" de strftime"
+
+#: c-format.c:647
+msgid "the `0' strftime flag"
+msgstr "l'opció \"0\" de strftime"
+
+#: c-format.c:648 c-format.c:672
+msgid "`^' flag"
+msgstr "opció \"^\""
+
+#: c-format.c:648
+msgid "the `^' strftime flag"
+msgstr "l'opció \"^\" de strftime"
+
+#: c-format.c:649
+msgid "the `#' strftime flag"
+msgstr "l'opció \"#\" de strftime"
+
+#: c-format.c:650
+msgid "field width in strftime format"
+msgstr "amplària de camp en format strftime"
+
+#: c-format.c:651
+msgid "`E' modifier"
+msgstr "modificador \"E\""
+
+#: c-format.c:651
+msgid "the `E' strftime modifier"
+msgstr "el modificador \"E\" de strftime"
+
+#: c-format.c:652
+msgid "`O' modifier"
+msgstr "modificador \"O\""
+
+#: c-format.c:652
+msgid "the `O' strftime modifier"
+msgstr "el modificador \"O\" de strftime"
+
+#: c-format.c:653
+msgid "the `O' modifier"
+msgstr "el modificador \"O\""
+
+#: c-format.c:671
+msgid "fill character"
+msgstr "caràcter de farciment"
+
+#: c-format.c:671
+msgid "fill character in strfmon format"
+msgstr "caràcter de farciment en format strfmon"
+
+#: c-format.c:672
+msgid "the `^' strfmon flag"
+msgstr "l'opció \"^\" de strfmon"
+
+#: c-format.c:673
+msgid "the `+' strfmon flag"
+msgstr "l'opció \"+\" de strfmon"
+
+#: c-format.c:674
+msgid "`(' flag"
+msgstr "opció \"(\""
+
+#: c-format.c:674
+msgid "the `(' strfmon flag"
+msgstr "l'opció \"(\" de strfmon"
+
+#: c-format.c:675
+msgid "`!' flag"
+msgstr "opció \"!\""
+
+#: c-format.c:675
+msgid "the `!' strfmon flag"
+msgstr "l'opció \"!\" de strfmon"
+
+#: c-format.c:676
+msgid "the `-' strfmon flag"
+msgstr "l'opció \"-\" de strfmon"
+
+#: c-format.c:677
+msgid "field width in strfmon format"
+msgstr "amplària de camp en format strfmon"
+
+#: c-format.c:678
+msgid "left precision"
+msgstr "precisió esquerra"
+
+#: c-format.c:678
+msgid "left precision in strfmon format"
+msgstr "precisió esquerra en format strfmon"
+
+#: c-format.c:679
+msgid "right precision"
+msgstr "precisió de dreta"
+
+#: c-format.c:679
+msgid "right precision in strfmon format"
+msgstr "precisió de dreta en format strfmon"
+
+#: c-format.c:680
+msgid "length modifier in strfmon format"
+msgstr "modificador de longitud en format strfmon"
+
+#: c-format.c:983
+#, c-format
+msgid "function might be possible candidate for `%s' format attribute"
+msgstr "la funció pot ser un candidat possible per a l'atribut de format \"%s\""
+
+#: c-format.c:1107 c-format.c:1128 c-format.c:2112
+msgid "missing $ operand number in format"
+msgstr "falta l'operant numèric $ en el format"
+
+#: c-format.c:1138
+#, c-format
+msgid "%s does not support %%n$ operand number formats"
+msgstr "%s no té suport per a l'operant de format de nombre %%n$"
+
+#: c-format.c:1145
+msgid "operand number out of range in format"
+msgstr "operant numèric fora de rang en el format"
+
+#: c-format.c:1168
+#, c-format
+msgid "format argument %d used more than once in %s format"
+msgstr "s'usa més d'una vegada l'argument de format %d en el format %s"
+
+#: c-format.c:1218
+#, c-format
+msgid "format argument %d unused before used argument %d in $-style format"
+msgstr "no s'usa l'argument de format %d abans d'usar l'argument %d en el format $-style"
+
+#: c-format.c:1322
+msgid "format not a string literal, format string not checked"
+msgstr "el format no és una cadena literal, no es va revisar la cadena de format"
+
+#: c-format.c:1336
+msgid "format not a string literal and no format arguments"
+msgstr "el format no és una cadena literal i no té arguments de format"
+
+#: c-format.c:1338
+msgid "format not a string literal, argument types not checked"
+msgstr "el format no és una cadena literal, no es van revisar els tipus d'argument"
+
+#: c-format.c:1351
+msgid "too many arguments for format"
+msgstr "massa arguments per al format"
+
+#: c-format.c:1354
+msgid "unused arguments in $-style format"
+msgstr "no es van usar arguments en el format d'estil-$"
+
+#: c-format.c:1357
+#, c-format
+msgid "zero-length %s format string"
+msgstr "cadena de format %s de longitud zero"
+
+#: c-format.c:1361
+msgid "format is a wide character string"
+msgstr "el format és una cadena de caràcter ampla"
+
+#: c-format.c:1364
+msgid "unterminated format string"
+msgstr "constant de format sense acabar"
+
+#: c-format.c:1581
+msgid "embedded `\\0' in format"
+msgstr "\"\\0\" incrustat en el format"
+
+#: c-format.c:1596
+#, c-format
+msgid "spurious trailing `%%' in format"
+msgstr "\"%%\" final espuri en el format"
+
+#: c-format.c:1635 c-format.c:1872
+#, c-format
+msgid "repeated %s in format"
+msgstr "es va repetir %s en el format"
+
+#: c-format.c:1648
+msgid "missing fill character at end of strfmon format"
+msgstr "falta el caràcter de farciment al final del format strfmon"
+
+#: c-format.c:1687 c-format.c:1786 c-format.c:2066 c-format.c:2119
+msgid "too few arguments for format"
+msgstr "molt pocs arguments per al format"
+
+#: c-format.c:1728
+#, c-format
+msgid "zero width in %s format"
+msgstr "amplària zero en el format %s"
+
+#: c-format.c:1747
+#, c-format
+msgid "empty left precision in %s format"
+msgstr "precisió esquerra buida en el format %s"
+
+#: c-format.c:1801
+msgid "field precision"
+msgstr "precisió del camp"
+
+#: c-format.c:1816
+#, c-format
+msgid "empty precision in %s format"
+msgstr "precisió buida en el format %s"
+
+#: c-format.c:1856
+#, c-format
+msgid "%s does not support the `%s' %s length modifier"
+msgstr "%s no té suport per al modificador de longitud %s \"%s\""
+
+#: c-format.c:1906
+msgid "conversion lacks type at end of format"
+msgstr "la conversió manca de tipus al final del format"
+
+#: c-format.c:1917
+#, c-format
+msgid "unknown conversion type character `%c' in format"
+msgstr "es desconeix el caràcter de tipus de conversió \"%c\" en el format"
+
+#: c-format.c:1920
+#, c-format
+msgid "unknown conversion type character 0x%x in format"
+msgstr "es desconeix el caràcter de tipus de conversió 0x%x en el format"
+
+#: c-format.c:1927
+#, c-format
+msgid "%s does not support the `%%%c' %s format"
+msgstr "%s no té suport per al format \"%%%c\" %s"
+
+#: c-format.c:1943
+#, c-format
+msgid "%s used with `%%%c' %s format"
+msgstr "es va usar %s amb el format \"%%%c\" %s"
+
+#: c-format.c:1952
+#, c-format
+msgid "%s does not support %s"
+msgstr "%s no té suport per a %s"
+
+#: c-format.c:1961
+#, c-format
+msgid "%s does not support %s with the `%%%c' %s format"
+msgstr "%s no té suport per a %s amb el format \"%%%c\" %s"
+
+#: c-format.c:1994
+#, c-format
+msgid "%s ignored with %s and `%%%c' %s format"
+msgstr "s'ignora %s amb %s i el format \"%%%c\" %s"
+
+#: c-format.c:1998
+#, c-format
+msgid "%s ignored with %s in %s format"
+msgstr "s'ignora %s amb %s en el format %s"
+
+#: c-format.c:2004
+#, c-format
+msgid "use of %s and %s together with `%%%c' %s format"
+msgstr "ús de %s i %s juntament amb el format \"%%%c\" %s"
+
+#: c-format.c:2008
+#, c-format
+msgid "use of %s and %s together in %s format"
+msgstr "ús de %s i %s junts en el format %s"
+
+#: c-format.c:2027
+#, c-format
+msgid "`%%%c' yields only last 2 digits of year in some locales"
+msgstr "\"%%%c\" només produeix els dos últims dígits de l'any en alguns llocs"
+
+#: c-format.c:2030
+#, c-format
+msgid "`%%%c' yields only last 2 digits of year"
+msgstr "\"%%%c\" només produeix els dos últims dígits de l'any"
+
+#. The end of the format string was reached.
+#: c-format.c:2046
+#, c-format
+msgid "no closing `]' for `%%[' format"
+msgstr "no hi ha un \"]\" que tancament per al format \"%%[\""
+
+#: c-format.c:2059
+#, c-format
+msgid "use of `%s' length modifier with `%c' type character"
+msgstr "ús del modificador de longitud \"%s\" amb el caràcter de tipus \"%c\""
+
+#: c-format.c:2080
+#, c-format
+msgid "%s does not support the `%%%s%c' %s format"
+msgstr "%s no té suport per al format \"%%%s%c\" %s"
+
+#: c-format.c:2095
+msgid "operand number specified with suppressed assignment"
+msgstr "nombre d'operadors especificat amb assignació suprimida"
+
+#: c-format.c:2097
+msgid "operand number specified for format taking no argument"
+msgstr "el nombre de operades especificats per al format no pren arguments"
+
+#: c-format.c:2211
+#, c-format
+msgid "writing through null pointer (arg %d)"
+msgstr "escrivint a través d'un punter nul (argument %d)"
+
+#: c-format.c:2220
+#, c-format
+msgid "reading through null pointer (arg %d)"
+msgstr "llegint a través d'un punter nul (argument %d)"
+
+#: c-format.c:2240
+#, c-format
+msgid "writing into constant object (arg %d)"
+msgstr "escrivint en un objecte constant (argument %d)"
+
+#: c-format.c:2250
+#, c-format
+msgid "extra type qualifiers in format argument (arg %d)"
+msgstr "qualificadores de tipus extra en l'argument de format (argument %d)"
+
+#: c-format.c:2257
+#, c-format
+msgid "format argument is not a pointer (arg %d)"
+msgstr "l'argument de format no és un punter (argument %d)"
+
+#: c-format.c:2259
+#, c-format
+msgid "format argument is not a pointer to a pointer (arg %d)"
+msgstr "l'argument de format no és un punter a un punter (argument %d)"
+
+#: c-format.c:2330
+msgid "pointer"
+msgstr "punter"
+
+#: c-format.c:2332
+msgid "different type"
+msgstr "diferents tipus"
+
+#: c-format.c:2353
+#, c-format
+msgid "%s is not type %s (arg %d)"
+msgstr "%s no és del tipus %s (argument %d)"
+
+#: c-format.c:2356
+#, c-format
+msgid "%s format, %s arg (arg %d)"
+msgstr "format %s, argument %s (argument %d)"
+
+#: c-lex.c:153
+msgid "YYDEBUG not defined"
+msgstr "no es va definir YYDEBUG"
+
+#: c-lex.c:293
+msgid "badly nested C headers from preprocessor"
+msgstr "encapçalats C mal niats del preprocessador"
+
+#: c-lex.c:336
+#, c-format
+msgid "ignoring #pragma %s %s"
+msgstr "ignorant el #pragma %s %s"
+
+#: c-lex.c:386
+#, c-format
+msgid "universal-character-name '\\U%08x' not valid in identifier"
+msgstr "universal-character-name \"\\U%08x\" no és vàlid en l'identificador"
+
+#: c-lex.c:632
+#, c-format
+msgid "universal-character-name '\\u%04x' not valid in identifier"
+msgstr "universal-character-name \"\\u%04x\" no és vàlid en l'identificador"
+
+#: c-lex.c:695
+#, c-format
+msgid "stray '%c' in program"
+msgstr "\"%c\" paràsit en el programa"
+
+#: c-lex.c:697
+#, c-format
+msgid "stray '\\%o' in program"
+msgstr "\"\\%o\" paràsit en el programa"
+
+#: c-lex.c:854
+msgid "this decimal constant is unsigned only in ISO C90"
+msgstr "aquesta constant decimal només és unsigned en ISO C90"
+
+#: c-lex.c:857
+msgid "this decimal constant would be unsigned in ISO C90"
+msgstr "aquesta constant decimal serà unsigned en ISO C90 "
+
+#: c-lex.c:873
+#, c-format
+msgid "integer constant is too large for \"%s\" type"
+msgstr "la constant entera és massa gran pel tipus \"%s\""
+
+#: c-lex.c:941
+#, c-format
+msgid "floating constant exceeds range of \"%s\""
+msgstr "la constant de coma flotant excedeix el rang de \"%s\""
+
+#: c-lex.c:977 cpplex.c:330 cpplex.c:668 cpplex.c:1942
+msgid "ignoring invalid multibyte character"
+msgstr "ignorant els caràcters multibyte invàlids"
+
+#: c-opts.c:355
+#, c-format
+msgid "missing argument to \"-%s\""
+msgstr "Falten arguments per a \"-%s\""
+
+#: c-opts.c:359
+#, c-format
+msgid "no class name specified with \"-%s\""
+msgstr "no classes especificades amb \"-%s\""
+
+#: c-opts.c:366
+#, c-format
+msgid "missing filename after \"-%s\""
+msgstr "nom de fitxer faltant deprés de \"-%s\""
+
+#: c-opts.c:371
+#, c-format
+msgid "missing target after \"-%s\""
+msgstr "falta l'objectiu després de \"-%s\""
+
+#: c-opts.c:505
+#, c-format
+msgid "options array incorrectly sorted: %s is before %s"
+msgstr "opcions de matriu ordenades incorrectament: %s està abans de %s"
+
+#: c-opts.c:550
+#, c-format
+msgid "too many filenames given. Type %s --help for usage"
+msgstr "massa noms de fitxers. Teclegi %s --help per a informació d'ùs"
+
+#: c-opts.c:937
+msgid "-Wno-strict-prototypes is not supported in C++"
+msgstr "no és dona suport a -Wno-strict-prototypes en C++"
+
+#: c-opts.c:1017
+#, c-format
+msgid "switch \"%s\" is no longer supported"
+msgstr "el switch \"%s\" ja no té suport"
+
+#: c-opts.c:1033
+#, c-format
+msgid "switch \"%s\" is deprecated, please see documentation for details"
+msgstr "el switch \"%s\" és obsolet, per favor vegi la documentació per a més detalls"
+
+#: c-opts.c:1153
+msgid "-fhandle-exceptions has been renamed to -fexceptions (and is now on by default)"
+msgstr "es va re-nomenar -fhandle-exceptions a -fexceptions (i ara està activat per defecte)"
+
+#: c-opts.c:1273
+msgid "output filename specified twice"
+msgstr "nom de fitxer de sortida especificat dues vegades"
+
+#: c-opts.c:1387
+msgid "-Wformat-y2k ignored without -Wformat"
+msgstr "s'ignora -Wformat-y2k sense -Wformat"
+
+#: c-opts.c:1389
+msgid "-Wformat-extra-args ignored without -Wformat"
+msgstr "s'ignora -Wformat-extra-args sense -Wformat"
+
+#: c-opts.c:1391
+msgid "-Wformat-zero-length ignored without -Wformat"
+msgstr "s'ignora -Wformat-zero-length sense -Wformat"
+
+#: c-opts.c:1393
+msgid "-Wformat-nonliteral ignored without -Wformat"
+msgstr "s'ignora -Wformat-nonliteral sense -Wformat"
+
+#: c-opts.c:1395
+msgid "-Wformat-security ignored without -Wformat"
+msgstr "s'ignora -Wformat-security sense -Wformat"
+
+#: c-opts.c:1397
+msgid "-Wmissing-format-attribute ignored without -Wformat"
+msgstr "s'ignora -Wformat-attribute sense -Wformat"
+
+#: c-opts.c:1419
+#, c-format
+msgid "opening output file %s"
+msgstr "obrint el fitxer de sortida %s"
+
+#: c-opts.c:1474
+#, c-format
+msgid "opening dependency file %s"
+msgstr "obrint el fitxer de dependències %s"
+
+#: c-opts.c:1484
+#, c-format
+msgid "closing dependency file %s"
+msgstr "tancant el fitxer de dependències %s"
+
+#: c-opts.c:1487
+#, c-format
+msgid "when writing output to %s"
+msgstr "a l'escriure a %s"
+
+#: c-opts.c:1567
+msgid "to generate dependencies you must specify either -M or -MM"
+msgstr "per a generar dependències deu especificar -M o -MM"
+
+#: c-opts.c:1715
+#, c-format
+msgid "\"-%c%s%s\" is valid for %s but not for %s"
+msgstr "\"-%c%s%s\" és vàlida per a %s però no per a %s"
+
+#. To keep the lines from getting too long for some compilers, limit
+#. to about 500 characters (6 lines) per chunk.
+#: c-opts.c:1726
+msgid ""
+"Switches:\n"
+" -include <file> Include the contents of <file> before other files\n"
+" -imacros <file> Accept definition of macros in <file>\n"
+" -iprefix <path> Specify <path> as a prefix for next two options\n"
+" -iwithprefix <dir> Add <dir> to the end of the system include path\n"
+" -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
+" -isystem <dir> Add <dir> to the start of the system include path\n"
+msgstr ""
+"Interruptors:\n"
+" -include <fitxer> Inclou el contingut de <fitxer> abans altres fitxers\n"
+" -imacros <fitxer> Accepta la definició de macros en <fitxer>\n"
+" -iprefix <camí> Especifica <camí> com a prefix per a les dues opcions\n"
+" següentes\n"
+" -iwithprefix <dir> Afegeix <dir> al final del camí d'inclusió del sistema\n"
+" -iwithprefixbefore <dir> Afegeix <dir> al final del camí d'inclusió principal\n"
+" -isystem <dir> Afegeix <dir> a l'inicí del camí d'inclusió del sistema\n"
+
+#: c-opts.c:1735
+msgid ""
+" -idirafter <dir> Add <dir> to the end of the system include path\n"
+" -I <dir> Add <dir> to the end of the main include path\n"
+" -I- Fine-grained include path control; see info docs\n"
+" -nostdinc Do not search system include directories\n"
+" (dirs specified with -isystem will still be used)\n"
+" -nostdinc++ Do not search system include directories for C++\n"
+" -o <file> Put output into <file>\n"
+msgstr ""
+" -idirafter <dir> Afegeix <dir> al final del camí d'inclusió del sistema\n"
+" -I <dir> Afegeix <dir> al final del camí d'inclusió principal\n"
+" -I- afinar el control del camí d'inclusió; consulta la doc\n"
+" -nostdinc No cerca els directoris d'inclusió\n"
+" (dirs especificats amb -isystem seran encara utilitzats)\n"
+" -nostdinc++ No cerca els directoris d'inclusió per a C++\n"
+" -o <fitxer> Posa la sortida en <fitxer>\n"
+
+#: c-opts.c:1744
+msgid ""
+" -trigraphs Support ISO C trigraphs\n"
+" -std=<std name> Specify the conformance standard; one of:\n"
+" gnu89, gnu99, c89, c99, iso9899:1990,\n"
+" iso9899:199409, iso9899:1999, c++98\n"
+" -w Inhibit warning messages\n"
+" -W[no-]trigraphs Warn if trigraphs are encountered\n"
+" -W[no-]comment{s} Warn if one comment starts inside another\n"
+msgstr ""
+" -trigraphs Permetre trigrafes ISO/ C\n"
+" -std=<nom std> Especificar el estándard de concordança; una de:\n"
+" gnu89, gnu99, c89, c99, iso/9899:1990,\n"
+" iso9899:199409, iso9899:1999, c++98\n"
+" -w Inhibir els missatges d'avís\n"
+" -W[no-]trigraphs Avisar si es troben trigrafes\n"
+" -W[no-]comment{s} Avisar si un comentari inicia dintre d'altre\n"
+
+#: c-opts.c:1753
+msgid ""
+" -W[no-]traditional Warn about features not present in traditional C\n"
+" -W[no-]undef Warn if an undefined macro is used by #if\n"
+" -W[no-]import Warn about the use of the #import directive\n"
+msgstr ""
+" -W[no-]traditional Avisar a propòsit de funccionalitats que no\n"
+" són presentes en tradicional C\n"
+" -W[no-]undef Avisar si #if utilitza una macro no definida\n"
+" -W[no-]import Avisar a propòsit de l'ùs de directives #import\n"
+
+#: c-opts.c:1758
+msgid ""
+" -W[no-]error Treat all warnings as errors\n"
+" -W[no-]system-headers Do not suppress warnings from system headers\n"
+" -W[no-]all Enable most preprocessor warnings\n"
+msgstr ""
+" -W[no-]error Tractar tots els avís com a errors\n"
+" -W[no-]system-headers No supprimir les avís de les capçaleres sistema\n"
+" -W[no-]all Autoritzar tots els avís del preprocessador\n"
+
+#: c-opts.c:1763
+msgid ""
+" -M Generate make dependencies\n"
+" -MM As -M, but ignore system header files\n"
+" -MD Generate make dependencies and compile\n"
+" -MMD As -MD, but ignore system header files\n"
+" -MF <file> Write dependency output to the given file\n"
+" -MG Treat missing header file as generated files\n"
+msgstr ""
+" -M Generar les dependencies de make\n"
+" -MM Com -M, però ignorales capçaleres sistema\n"
+" -MD Generar les dependencies de make i compilar\n"
+" -MMD Com -MD, però ignorales capçaleres sistema\n"
+" -MF <fitxer> Escriu les dependencies de sortida a el fitxer donat\n"
+" -MG Tractar les fitxers de capçalera com a fitxers generats\n"
+
+#: c-opts.c:1771
+msgid ""
+" -MP\t\t\t Generate phony targets for all headers\n"
+" -MQ <target> Add a MAKE-quoted target\n"
+" -MT <target> Add an unquoted target\n"
+msgstr ""
+" -MP\t\t\t Generar objectius facticis per a totes les capçaleres\n"
+" -MQ <objectiu> Afegir un objectiu MAKE-quoted\n"
+" -MT <objectiu> Afegir un objectiu sense parèntesis\n"
+
+#: c-opts.c:1776
+msgid ""
+" -D<macro> Define a <macro> with string '1' as its value\n"
+" -D<macro>=<val> Define a <macro> with <val> as its value\n"
+" -A<question>=<answer> Assert the <answer> to <question>\n"
+" -A-<question>=<answer> Disable the <answer> to <question>\n"
+" -U<macro> Undefine <macro> \n"
+" -v Display the version number\n"
+msgstr ""
+" -D<macro> Definir una <macro> amb la cadena '1' com valor\n"
+" -D<macro>=<val> Definir una <macro> amb <val> com valor\n"
+" -A<pregunta>=<resposta> Associar <resposta> a <pregunta>\n"
+" -A-<pregunta>=<resposta> Dissociar <resposta> de <pregunta>\n"
+" -U<macro> Només definir <macro> \n"
+" -v Mostrar el numero de versió\n"
+
+#: c-opts.c:1784
+msgid ""
+" -H Print the name of header files as they are used\n"
+" -C Do not discard comments\n"
+" -dM Display a list of macro definitions active at end\n"
+" -dD Preserve macro definitions in output\n"
+" -dN As -dD except that only the names are preserved\n"
+" -dI Include #include directives in the output\n"
+msgstr ""
+" -H Mostrar les noms de fitxers de capçalera quan estan utilitzats\n"
+" -C Posar les comentaris de costat\n"
+" -dM Mostrar al final una llista de les definicions de macro actives\n"
+" -dD Preservar les definicions de macro a la sortida\n"
+" -dN Com -dD excepte nomès les noms són preservats\n"
+" -dI Incloure les directives #include a la sortida\n"
+
+#: c-opts.c:1792
+msgid ""
+" -f[no-]preprocessed Treat the input file as already preprocessed\n"
+" -ftabstop=<number> Distance between tab stops for column reporting\n"
+" -P Do not generate #line directives\n"
+" -remap Remap file names when including files\n"
+" --help Display this information\n"
+msgstr ""
+" -f[no-]preprocessed Tractar el fitxer d'entrada com a ja preprocessat\n"
+" -ftabstop=<nombre> Seleccionar l'amplitud de tabulació per a les rapports\n"
+" -P No generar directives #line\n"
+" -remap Remapar les noms de fitxer quan s'inclouen fitxers\n"
+" -help Mostra aquesta informació\n"
+
+#. Like YYERROR but do call yyerror.
+#: c-parse.y:55 parse.y:48 objc-parse.y:55
+msgid "syntax error"
+msgstr "error sintàctic"
+
+#: /usr/share/bison/bison.simple:179
+msgid "syntax error: cannot back up"
+msgstr "error sintàctic: no es pot regressar"
+
+#: c-parse.y:325 objc-parse.y:346
+msgid "ISO C forbids an empty source file"
+msgstr "ISO C prohibeix un fitxer font buit"
+
+#: c-parse.y:366 c-typeck.c:6916 objc-parse.y:388
+msgid "argument of `asm' is not a constant string"
+msgstr "l'argument de \"asm\" no és una cadena constant"
+
+#: c-parse.y:374 objc-parse.y:396
+msgid "ISO C forbids data definition with no type or storage class"
+msgstr "ISO C prohibeix la definició de dades sense tipus o classe d'emmagatzematge"
+
+#: c-parse.y:376 objc-parse.y:398
+msgid "data definition has no type or storage class"
+msgstr "la definició de dades no té tipus o classe d'emmagatzematge"
+
+#: c-parse.y:389 objc-parse.y:411
+msgid "ISO C does not allow extra `;' outside of a function"
+msgstr "ISO C no permet \";\" extra fora d'una funció"
+
+#: c-parse.y:449 cppexp.c:1312
+msgid "traditional C rejects the unary plus operator"
+msgstr "C tradicional rebutja l'operador unari mes"
+
+#: c-parse.y:496 objc-parse.y:518
+msgid "`sizeof' applied to a bit-field"
+msgstr "\"sizeof\" aplicat a un camp de bits"
+
+#: c-parse.y:583 objc-parse.y:605
+msgid "ISO C forbids omitting the middle term of a ?: expression"
+msgstr "ISO C prohibeix l'omissió del terme mig d'una expressió ?:"
+
+#: c-parse.y:632 objc-parse.y:654
+msgid "ISO C89 forbids compound literals"
+msgstr "ISO C89 prohibeix les literals compostoses"
+
+#: c-parse.y:646 objc-parse.y:668
+msgid "ISO C forbids braced-groups within expressions"
+msgstr "ISO C prohibeix grups de claus dintre d'expressions"
+
+#: c-parse.y:677 objc-parse.y:699
+msgid "first argument to __builtin_choose_expr not a constant"
+msgstr "el primer argument per a __builtin_choose_expr no és una constant"
+
+#: c-parse.y:721 objc-parse.y:767
+msgid "traditional C rejects ISO C style function definitions"
+msgstr "C tradicional rebutja la definició de funcions d'estil ISO·C"
+
+#: c-parse.y:985 c-parse.y:991 c-parse.y:997 c-parse.y:1003 c-parse.y:1024
+#: c-parse.y:1030 c-parse.y:1036 c-parse.y:1042 c-parse.y:1075 c-parse.y:1081
+#: c-parse.y:1087 c-parse.y:1093 c-parse.y:1138 c-parse.y:1144 c-parse.y:1150
+#: c-parse.y:1156 parse.y:1933 parse.y:1940 parse.y:1975 objc-parse.y:1031
+#: objc-parse.y:1037 objc-parse.y:1043 objc-parse.y:1049 objc-parse.y:1070
+#: objc-parse.y:1076 objc-parse.y:1082 objc-parse.y:1088 objc-parse.y:1121
+#: objc-parse.y:1127 objc-parse.y:1133 objc-parse.y:1139 objc-parse.y:1184
+#: objc-parse.y:1190 objc-parse.y:1196 objc-parse.y:1202
+#, c-format
+msgid "`%s' is not at beginning of declaration"
+msgstr "\"%s\" no està en l'inici de la declaració"
+
+#: c-parse.y:1441 objc-parse.y:1496
+msgid "ISO C forbids empty initializer braces"
+msgstr "ISO C prohibeix les claus de iniciador buides"
+
+#: c-parse.y:1455 objc-parse.y:1510
+msgid "ISO C89 forbids specifying subobject to initialize"
+msgstr "ISO C89 prohibeix l'especificació de subobjectes a iniciar"
+
+#: c-parse.y:1458 objc-parse.y:1513
+msgid "obsolete use of designated initializer without `='"
+msgstr "ús obsolet del iniciador designat sense \"=\""
+
+#: c-parse.y:1462 objc-parse.y:1517
+msgid "obsolete use of designated initializer with `:'"
+msgstr "ús obsolet del iniciador designat amb \":\""
+
+#: c-parse.y:1489 objc-parse.y:1544
+msgid "ISO C forbids specifying range of elements to initialize"
+msgstr "ISO C prohibeix l'especificació de rangs d'elements a iniciar"
+
+#: c-parse.y:1497 c-parse.y:1528 objc-parse.y:1552 objc-parse.y:1583
+msgid "ISO C forbids nested functions"
+msgstr "ISO C prohibeix les funcions niades"
+
+#: c-parse.y:1703 objc-parse.y:1760
+msgid "ISO C forbids forward references to `enum' types"
+msgstr "ISO C prohibeix les declaracions posteriors per a tipus \"enum\""
+
+#: c-parse.y:1715 parse.y:2411 objc-parse.y:1772
+msgid "comma at end of enumerator list"
+msgstr "coma al final de la llista de numeradors"
+
+#: c-parse.y:1723 objc-parse.y:1780
+msgid "no semicolon at end of struct or union"
+msgstr "no hi ha punt i coma al final del struct o union"
+
+#: c-parse.y:1732 objc-parse.y:1789 objc-parse.y:2864
+msgid "extra semicolon in struct or union specified"
+msgstr "es va especificar un punt i coma extra en un struct o union"
+
+#: c-parse.y:1745 objc-parse.y:1816
+msgid "ISO C doesn't support unnamed structs/unions"
+msgstr "ISO C no té suport per a structs/unions sense nom"
+
+#: c-parse.y:1754 objc-parse.y:1825
+msgid "ISO C forbids member declarations with no members"
+msgstr "ISO C prohibeix declaracions de membres sense membres"
+
+#: c-parse.y:1913 objc-parse.y:1984
+msgid "deprecated use of label at end of compound statement"
+msgstr "ús depreciada de l'etiqueta al final de la declaració compostosa"
+
+#: c-parse.y:1930 objc-parse.y:2001
+msgid "ISO C89 forbids mixed declarations and code"
+msgstr "ISO C89 prohibeix les declaracions barrejades i codi"
+
+#: c-parse.y:2005 objc-parse.y:2080
+msgid "ISO C forbids label declarations"
+msgstr "ISO C prohibeix les declaracions etiquetades"
+
+#: c-parse.y:2055 parse.y:1638 objc-parse.y:2130
+msgid "braced-group within expression allowed only inside a function"
+msgstr "un grup de claus dintre d'una expressió només es permet dintre d'una funció"
+
+#: c-parse.y:2182 objc-parse.y:2257
+msgid "empty body in an else-statement"
+msgstr "cos buit en una declaració else"
+
+#: c-parse.y:2303 objc-parse.y:2378
+msgid "ISO C forbids `goto *expr;'"
+msgstr "ISO C prohibeix \"goto *expr;\""
+
+#: c-parse.y:2403 objc-parse.y:2478
+msgid "ISO C forbids forward parameter declarations"
+msgstr "ISO C prohibeix declaracions avançades de paràmetres"
+
+#. Gcc used to allow this as an extension. However, it does
+#. not work for all targets, and thus has been disabled.
+#. Also, since func (...) and func () are indistinguishable,
+#. it caused problems with the code in expand_builtin which
+#. tries to verify that BUILT_IN_NEXT_ARG is being used
+#. correctly.
+#: c-parse.y:2429 objc-parse.y:2504
+msgid "ISO C requires a named argument before `...'"
+msgstr "ISO C requereix un argument amb nom abans de \"...\""
+
+#: c-parse.y:2526 objc-parse.y:2601
+msgid "`...' in old-style identifier list"
+msgstr "\"...\" en una llista d'identificadors d'estil antic"
+
+#: /usr/share/bison/bison.simple:795
+msgid "parse error; also virtual memory exhausted"
+msgstr "error d'analitza; també es va excedir la memòria virtual"
+
+#: /usr/share/bison/bison.simple:799 cp/spew.c:364
+msgid "parse error"
+msgstr "error d'analitza"
+
+#: /usr/share/bison/bison.simple:924
+msgid "parser stack overflow"
+msgstr "desbordament de la pila del analitzador"
+
+#: c-parse.y:2838 cp/spew.c:1525 objc-parse.y:3537
+#, c-format
+msgid "%s at end of input"
+msgstr "%s al final de l'entrada"
+
+#: c-parse.y:2844 cp/spew.c:1533 objc-parse.y:3543
+#, c-format
+msgid "%s before %s'%c'"
+msgstr "%s abans de %s\"%c\""
+
+#: c-parse.y:2846 cp/spew.c:1535 objc-parse.y:3545
+#, c-format
+msgid "%s before %s'\\x%x'"
+msgstr "%s abans de %s\"\\x%x\""
+
+#: c-parse.y:2850 cp/spew.c:1542 objc-parse.y:3549
+#, c-format
+msgid "%s before string constant"
+msgstr "%s abans d'una constant de cadena"
+
+#: c-parse.y:2852 cp/spew.c:1544 objc-parse.y:3551
+#, c-format
+msgid "%s before numeric constant"
+msgstr "%s abans d'una constant numèrica"
+
+#: c-parse.y:2854 objc-parse.y:3553
+#, c-format
+msgid "%s before \"%s\""
+msgstr "%s abans de \"%s\""
+
+#: c-parse.y:2856 objc-parse.y:3555
+#, c-format
+msgid "%s before '%s' token"
+msgstr "%s abans l'element \"%s\""
+
+#: c-parse.y:2921
+msgid "traditional C rejects string concatenation"
+msgstr "C tradicional rebutja la concatenació de cadenes"
+
+#: c-parse.y:3047 objc-parse.y:3779
+#, c-format
+msgid "syntax error at '%s' token"
+msgstr "error sintàctic en l'element \"%s\""
+
+#: c-pragma.c:107
+msgid "#pragma pack (pop) encountered without matching #pragma pack (push, <n>)"
+msgstr "es va trobar un #pragma pack (pop) sense un #pragma pack (push, <n>) coincident"
+
+#: c-pragma.c:125
+#, c-format
+msgid "#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s, <n>)"
+msgstr "es va trobar un #pragma pack (pop, %s) sense un #pragma pack (push, %s, <n>) coincident"
+
+#: c-pragma.c:145
+msgid "#pragma pack(push[, id], <n>) is not supported on this target"
+msgstr "no es dóna suport a #pragma pack(push[, id], <n>) en aquest objectiu"
+
+#: c-pragma.c:147
+msgid "#pragma pack(pop[, id], <n>) is not supported on this target"
+msgstr "no es dóna suport a #pragma pack(pop[, id], <n>) en aquest objectiu"
+
+#: c-pragma.c:167
+msgid "missing '(' after '#pragma pack' - ignored"
+msgstr "\"(\" faltant desprès de \"#pragma pack\" - ignorat"
+
+#: c-pragma.c:180 c-pragma.c:230
+msgid "malformed '#pragma pack' - ignored"
+msgstr "\"#pragma pack\" malformat - ignorat"
+
+#: c-pragma.c:185
+msgid "malformed '#pragma pack(push[, id], <n>)' - ignored"
+msgstr "\"#pragma pack(push[, id], <n>)\" malformat - ignorat"
+
+#: c-pragma.c:187
+msgid "malformed '#pragma pack(pop[, id])' - ignored"
+msgstr "\"#pragma pack(pop[, id])\" malformat - ignorat"
+
+#: c-pragma.c:196
+#, c-format
+msgid "unknown action '%s' for '#pragma pack' - ignored"
+msgstr "acció \"%s\" desconeguda per a \"#pragma pack\" - ignorat"
+
+#: c-pragma.c:233
+msgid "junk at end of '#pragma pack'"
+msgstr "escombraries al final de \"#pragma pack\""
+
+#: c-pragma.c:247
+#, c-format
+msgid "alignment must be a small power of two, not %d"
+msgstr "l'alineació deu ser una potència petita de dos, no %d"
+
+#: c-pragma.c:280
+#, c-format
+msgid "applying #pragma weak `%s' after first use results in unspecified behavior"
+msgstr "l'aplicació del #pragma weak \"%s\" després del primer ús resulta en conducta no especificada"
+
+#: c-pragma.c:328 c-pragma.c:333
+msgid "malformed #pragma weak, ignored"
+msgstr "#pragma weak malformat, ignorat"
+
+#: c-pragma.c:337
+msgid "junk at end of #pragma weak"
+msgstr "escombraries al final de \"#pragma weak\""
+
+#: c-pragma.c:372 c-pragma.c:377
+msgid "malformed #pragma redefine_extname, ignored"
+msgstr "#pragma redefine_extname malformat, ignorat"
+
+#: c-pragma.c:382
+msgid "junk at end of #pragma redefine_extname"
+msgstr "escombraries al final de #pragma redefine_extname"
+
+#: c-pragma.c:389 c-pragma.c:470
+msgid "#pragma redefine_extname conflicts with declaration"
+msgstr "#pragma redefine_extname té conflictes amb la declaració"
+
+#: c-pragma.c:420
+msgid "malformed #pragma extern_prefix, ignored"
+msgstr "#pragma extern_prefix malformat, ignorat"
+
+#: c-pragma.c:425
+msgid "junk at end of #pragma extern_prefix"
+msgstr "escombraries al final de #pragma extern_prefix"
+
+#: c-pragma.c:457
+msgid "asm declaration conflicts with previous rename"
+msgstr "la declaració asm causa conflictes amb el rename previ"
+
+#: c-semantics.c:565
+msgid "break statement not within loop or switch"
+msgstr "la declaració break no està dintre d'un cicle o switch"
+
+#: c-semantics.c:583
+msgid "continue statement not within a loop"
+msgstr "la declaració continue no està dintre dintre d'un cicle"
+
+#: c-semantics.c:678
+msgid "destructor needed for `%#D'"
+msgstr "es necessita un destructor per a \"%#D\""
+
+#: c-semantics.c:679
+msgid "where case label appears here"
+msgstr "on l'etiqueta casi apareix aquí"
+
+#: c-semantics.c:682
+msgid "(enclose actions of previous case statements requiring destructors in their own scope.)"
+msgstr "(les accions adjuntes de declaracions casi prèvies requereixen destructors en el seu propi àmbit.)"
+
+#: c-semantics.c:725 c-typeck.c:6942 cp/semantics.c:897
+#, c-format
+msgid "%s qualifier ignored on asm"
+msgstr "qualificador %s ignorat en asm"
+
+#: c-typeck.c:123
+#, c-format
+msgid "`%s' has an incomplete type"
+msgstr "\"%s\" té un tipus incompleta"
+
+#: c-typeck.c:145 cp/call.c:2865
+msgid "invalid use of void expression"
+msgstr "ús invàlid de l'expressió void"
+
+#: c-typeck.c:153
+msgid "invalid use of flexible array member"
+msgstr "ús invàlid de membres de matriu flexible"
+
+#: c-typeck.c:159
+msgid "invalid use of array with unspecified bounds"
+msgstr "ús invàlid de matrius amb límits sense especificar"
+
+#: c-typeck.c:167
+#, c-format
+msgid "invalid use of undefined type `%s %s'"
+msgstr "ús invàlid del tipus indefinit \"%s %s\""
+
+#. If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL.
+#: c-typeck.c:171
+#, c-format
+msgid "invalid use of incomplete typedef `%s'"
+msgstr "ús invàlid del typedef incomplet \"%s\""
+
+#: c-typeck.c:424 c-typeck.c:438
+msgid "function types not truly compatible in ISO C"
+msgstr "els tipus de funció no són totalment compatibles en ISO C"
+
+#: c-typeck.c:603
+msgid "types are not quite compatible"
+msgstr "els tipus no són totalment compatibles"
+
+#: c-typeck.c:757 c-typeck.c:2687
+msgid "arithmetic on pointer to an incomplete type"
+msgstr "aritmètica en apuntador a un tipus incomplet"
+
+#: c-typeck.c:1136
+#, c-format
+msgid "%s has no member named `%s'"
+msgstr "%s no té un membre cridat \"%s\""
+
+#: c-typeck.c:1172
+#, c-format
+msgid "request for member `%s' in something not a structure or union"
+msgstr "petició del membre \"%s\" en alguna cosa que no és estructura o unió"
+
+#: c-typeck.c:1204
+msgid "dereferencing pointer to incomplete type"
+msgstr "punter dereferènciat a tipus de dada incompleta"
+
+#: c-typeck.c:1208
+msgid "dereferencing `void *' pointer"
+msgstr "dereferènciant el punter \"void *\""
+
+#: c-typeck.c:1225 cp/typeck.c:2369
+#, c-format
+msgid "invalid type argument of `%s'"
+msgstr "argument de tipus invàlid de \"%s\""
+
+#: c-typeck.c:1244 cp/typeck.c:2395
+msgid "subscript missing in array reference"
+msgstr "falta subindici en la referència de la matriu"
+
+#: c-typeck.c:1265 cp/typeck.c:2437
+msgid "array subscript has type `char'"
+msgstr "el subindici de matriu té un tipus \"char\""
+
+#: c-typeck.c:1273 c-typeck.c:1362 cp/typeck.c:2444 cp/typeck.c:2523
+msgid "array subscript is not an integer"
+msgstr "el subindici de la matriu no és un enter"
+
+#: c-typeck.c:1306
+msgid "ISO C forbids subscripting `register' array"
+msgstr "ISO C prohibeix el subindici d'una matriu \"register\""
+
+#: c-typeck.c:1308
+msgid "ISO C90 forbids subscripting non-lvalue array"
+msgstr "ISO C90 prohibeix el subindici d'una matriu non-lvalue"
+
+#: c-typeck.c:1341
+msgid "subscript has type `char'"
+msgstr "el subindici és de tipus \"char\""
+
+#: c-typeck.c:1357 cp/typeck.c:2518
+msgid "subscripted value is neither array nor pointer"
+msgstr "el valor indicat pel subindici no és ni matriu ni punter"
+
+#: c-typeck.c:1411
+#, c-format
+msgid "`%s' undeclared here (not in a function)"
+msgstr "\"%s\" no ha estat declarat aquí (no en una funció)"
+
+#: c-typeck.c:1418
+#, c-format
+msgid "`%s' undeclared (first use in this function)"
+msgstr "\"%s\" no ha estat declarat aquí (primer us en aquesta funció)"
+
+#: c-typeck.c:1423
+msgid "(Each undeclared identifier is reported only once"
+msgstr "(Cada identificador no declarat solament es reporta una vegada"
+
+#: c-typeck.c:1424
+msgid "for each function it appears in.)"
+msgstr "per a cada funció en la qual apareix.)"
+
+#: c-typeck.c:1441
+#, c-format
+msgid "local declaration of `%s' hides instance variable"
+msgstr "la declaració local de \"%s\" oculta la variable d'instància"
+
+#: c-typeck.c:1518
+msgid "called object is not a function"
+msgstr "l'objecte cridat no és una funció"
+
+#: c-typeck.c:1604 cp/typeck.c:2829
+msgid "too many arguments to function"
+msgstr "massa arguments per a la funció"
+
+#: c-typeck.c:1625
+#, c-format
+msgid "type of formal parameter %d is incomplete"
+msgstr "el tipus de dada del paràmetre formal %d està incomplet"
+
+#: c-typeck.c:1638
+#, c-format
+msgid "%s as integer rather than floating due to prototype"
+msgstr "%s com enter en lloc de coma flotant a causa del prototip"
+
+#: c-typeck.c:1641
+#, c-format
+msgid "%s as integer rather than complex due to prototype"
+msgstr "%s com enter en lloc de complex a causa del prototip"
+
+#: c-typeck.c:1644
+#, c-format
+msgid "%s as complex rather than floating due to prototype"
+msgstr "%s com complex en lloc de coma flotant a causa del prototip"
+
+#: c-typeck.c:1647
+#, c-format
+msgid "%s as floating rather than integer due to prototype"
+msgstr "%s com coma flotant en lloc d'enter a causa del prototip"
+
+#: c-typeck.c:1650
+#, c-format
+msgid "%s as complex rather than integer due to prototype"
+msgstr "%s com complex en lloc d'enter a causa del prototip"
+
+#: c-typeck.c:1653
+#, c-format
+msgid "%s as floating rather than complex due to prototype"
+msgstr "%s com coma flotant en lloc de complex a causa del prototip"
+
+#: c-typeck.c:1663
+#, c-format
+msgid "%s as `float' rather than `double' due to prototype"
+msgstr "%s com \"float\" en lloc de \"double\" a causa del prototip"
+
+#: c-typeck.c:1681
+#, c-format
+msgid "%s with different width due to prototype"
+msgstr "%s amb amplària diferent a causa del prototip"
+
+#: c-typeck.c:1715
+#, c-format
+msgid "%s as unsigned due to prototype"
+msgstr "%s com unsigned a causa del prototip"
+
+#: c-typeck.c:1717
+#, c-format
+msgid "%s as signed due to prototype"
+msgstr "%s com signed a causa del prototip"
+
+#: c-typeck.c:1751 cp/typeck.c:2933
+msgid "too few arguments to function"
+msgstr "molt pocs arguments per a la funció"
+
+#: c-typeck.c:1793
+msgid "suggest parentheses around + or - inside shift"
+msgstr "se suggereixen parèntesi al voltant de + o - dintre d'un desplaçament"
+
+#: c-typeck.c:1800
+msgid "suggest parentheses around && within ||"
+msgstr "se suggereixen parèntesi al voltant de && dintre de ||"
+
+#: c-typeck.c:1809
+msgid "suggest parentheses around arithmetic in operand of |"
+msgstr "se suggereixen parèntesi al voltant de l'aritmètica per a operada de |"
+
+#: c-typeck.c:1812
+msgid "suggest parentheses around comparison in operand of |"
+msgstr "se suggereixen parèntesi al voltant de les comparances per a operada de |"
+
+#: c-typeck.c:1821
+msgid "suggest parentheses around arithmetic in operand of ^"
+msgstr "se suggereixen parèntesi al voltant de l'aritmètica per a operada de ^"
+
+#: c-typeck.c:1824
+msgid "suggest parentheses around comparison in operand of ^"
+msgstr "se suggereixen parèntesi al voltant de les comparances per a operada de ^"
+
+#: c-typeck.c:1831
+msgid "suggest parentheses around + or - in operand of &"
+msgstr "se suggereixen parèntesi al voltant de + o - per a operada de &"
+
+#: c-typeck.c:1834
+msgid "suggest parentheses around comparison in operand of &"
+msgstr "se suggereixen parèntesi al voltant de les comparances per a operada de &"
+
+#: c-typeck.c:1841
+msgid "comparisons like X<=Y<=Z do not have their mathematical meaning"
+msgstr "les comparances com X<=Y<=Z no tenen el seu significat matemàtic"
+
+#: c-typeck.c:2001 c-typeck.c:2036
+msgid "division by zero"
+msgstr "divisió per zero"
+
+#: c-typeck.c:2081 cp/typeck.c:3194
+msgid "right shift count is negative"
+msgstr "el compte de desplaçament a la dreta es negatiu"
+
+#: c-typeck.c:2088 cp/typeck.c:3200
+msgid "right shift count >= width of type"
+msgstr "compte de desplaçament a la dreta >= amplària del tipus"
+
+#: c-typeck.c:2109 cp/typeck.c:3219
+msgid "left shift count is negative"
+msgstr "el compte de desplaçament a l'esquerra és negativa"
+
+#: c-typeck.c:2112 cp/typeck.c:3221
+msgid "left shift count >= width of type"
+msgstr "compte de desplaçament a l'esquerra >= amplària del tipus"
+
+#: c-typeck.c:2133
+msgid "shift count is negative"
+msgstr "compte de desplaçament a la dreta negatiu"
+
+#: c-typeck.c:2135
+msgid "shift count >= width of type"
+msgstr "ompte de desplaçament a la dreta >= amplària del tipus"
+
+#: c-typeck.c:2152 cp/typeck.c:3256
+msgid "comparing floating point with == or != is unsafe"
+msgstr "no és segura la comparança de coma flotant amb == o !="
+
+#: c-typeck.c:2178 c-typeck.c:2184
+msgid "ISO C forbids comparison of `void *' with function pointer"
+msgstr "ISO C prohibeix la comparança de \"void *\" amb un punter de funció"
+
+#: c-typeck.c:2187 c-typeck.c:2227 c-typeck.c:2255
+msgid "comparison of distinct pointer types lacks a cast"
+msgstr "la comparança de diferents tipus de punter manca d'una conversió"
+
+#: c-typeck.c:2201 c-typeck.c:2206 c-typeck.c:2275 c-typeck.c:2280
+msgid "comparison between pointer and integer"
+msgstr "comparança entre punter i enter"
+
+#: c-typeck.c:2222 c-typeck.c:2250
+msgid "ISO C forbids ordered comparisons of pointers to functions"
+msgstr "ISO C prohibeix la comparança entre punters a funcions"
+
+#: c-typeck.c:2247
+msgid "comparison of complete and incomplete pointers"
+msgstr "comparança de punters complets i incomplets"
+
+#: c-typeck.c:2263 c-typeck.c:2270
+msgid "ordered comparison of pointer with integer zero"
+msgstr "comparança ordenada de punter amb l'enter zero"
+
+#: c-typeck.c:2294 cp/typeck.c:3389
+msgid "unordered comparison on non-floating point argument"
+msgstr "comparança sense ordre en argument de coma no flotant"
+
+#: c-typeck.c:2505
+msgid "comparison between signed and unsigned"
+msgstr "comparança entre signed i unsigned"
+
+#: c-typeck.c:2551 cp/typeck.c:3633
+msgid "comparison of promoted ~unsigned with constant"
+msgstr "comparança d'un ~unsigned promogut amb una constant"
+
+#: c-typeck.c:2559 cp/typeck.c:3641
+msgid "comparison of promoted ~unsigned with unsigned"
+msgstr "comparança d'un ~unsigned promogut amb unsigned"
+
+#: c-typeck.c:2639
+msgid "pointer of type `void *' used in subtraction"
+msgstr "es va usar un punter de tipus \"void *\" en la substracció"
+
+#: c-typeck.c:2641
+msgid "pointer to a function used in subtraction"
+msgstr "es va usar un punter a una funció en la substracció"
+
+#: c-typeck.c:2738
+msgid "wrong type argument to unary plus"
+msgstr "argument de tipus erroni per a l'increment unari"
+
+#: c-typeck.c:2751
+msgid "wrong type argument to unary minus"
+msgstr "argument de tipus erroni per al decrement unari"
+
+#: c-typeck.c:2768
+msgid "ISO C does not support `~' for complex conjugation"
+msgstr "ISO C no té suport de \"~\" per a conjugacions complexes"
+
+#: c-typeck.c:2774
+msgid "wrong type argument to bit-complement"
+msgstr "argument de tipus erroni per a complement de bits"
+
+#: c-typeck.c:2783
+msgid "wrong type argument to abs"
+msgstr "argument de tipus erroni per a abs"
+
+#: c-typeck.c:2795
+msgid "wrong type argument to conjugation"
+msgstr "argument de tipus erroni per a la conjugació"
+
+#: c-typeck.c:2809
+msgid "wrong type argument to unary exclamation mark"
+msgstr "argument de tipus erroni per al signe d'exclamació unari"
+
+#: c-typeck.c:2852
+msgid "ISO C does not support `++' and `--' on complex types"
+msgstr "ISO C no té suport per a \"++\" i \"--\" en tipus complexos"
+
+#: c-typeck.c:2867 c-typeck.c:2899
+msgid "wrong type argument to increment"
+msgstr "argument de tipus erroni per a l'increment"
+
+#: c-typeck.c:2869 c-typeck.c:2901
+msgid "wrong type argument to decrement"
+msgstr "argument de tipus erroni pel decrement"
+
+#: c-typeck.c:2890
+msgid "increment of pointer to unknown structure"
+msgstr "increment de punter a estructura desconeguda"
+
+#: c-typeck.c:2892
+msgid "decrement of pointer to unknown structure"
+msgstr "decrement de punter a estructura desconeguda"
+
+#: c-typeck.c:3029
+msgid "ISO C forbids the address of a cast expression"
+msgstr "ISO C prohibeix l'adreça d'una expressió cast"
+
+#: c-typeck.c:3039
+msgid "invalid lvalue in unary `&'"
+msgstr "l-value invàlid en \"&\" unari"
+
+#: c-typeck.c:3071
+#, c-format
+msgid "attempt to take address of bit-field structure member `%s'"
+msgstr "es va intentar prendre l'adreça del membre de l'estructura de camps de bits \"%s\""
+
+#: c-typeck.c:3180 c-typeck.c:4651 c-typeck.c:4667 c-typeck.c:4683
+#: final.c:3146 final.c:3148 gcc.c:4381 rtl-error.c:122 toplev.c:1694
+#: config/cris/cris.c:545 cp/spew.c:1538 cp/typeck.c:4367 java/expr.c:364
+#: java/verify.c:1467 java/verify.c:1468 java/verify.c:1483
+#, c-format
+msgid "%s"
+msgstr "%s"
+
+#: c-typeck.c:3241
+msgid "ISO C forbids use of conditional expressions as lvalues"
+msgstr "ISO C prohibeix l'ús d'expressions condicionals com l-values"
+
+#: c-typeck.c:3244
+msgid "ISO C forbids use of compound expressions as lvalues"
+msgstr "ISO C prohibeix l'ús d'expressions compostoses com l-valors"
+
+#: c-typeck.c:3247
+msgid "ISO C forbids use of cast expressions as lvalues"
+msgstr "ISO C prohibeix l'ús d'expressions de conversió com l-valors"
+
+#: c-typeck.c:3264
+#, c-format
+msgid "%s of read-only member `%s'"
+msgstr "%s del membre de només lectura \"%s\""
+
+#: c-typeck.c:3268
+#, c-format
+msgid "%s of read-only variable `%s'"
+msgstr "%s de la variable de només lectura \"%s\""
+
+#: c-typeck.c:3271
+#, c-format
+msgid "%s of read-only location"
+msgstr "%s de la ubicació de només lectura"
+
+#: c-typeck.c:3290
+#, c-format
+msgid "cannot take address of bit-field `%s'"
+msgstr "no es pot adquirir l'adreça del camp de bits \"%s\""
+
+#: c-typeck.c:3318
+#, c-format
+msgid "global register variable `%s' used in nested function"
+msgstr "es va usar la variable de registre global \"%s\" en funcions niades"
+
+#: c-typeck.c:3322
+#, c-format
+msgid "register variable `%s' used in nested function"
+msgstr "es va usar la va variable \"%s\" en funcions niades"
+
+#: c-typeck.c:3329
+#, c-format
+msgid "address of global register variable `%s' requested"
+msgstr "es va sol·licitar l'adreça de la variable de registre global \"%s\""
+
+#: c-typeck.c:3341
+msgid "cannot put object with volatile field into register"
+msgstr "no es pot posar objecte amb camp volatile en register"
+
+#: c-typeck.c:3345
+#, c-format
+msgid "address of register variable `%s' requested"
+msgstr "es va sol·licitar l'adreça de la variable register \"%s\""
+
+#: c-typeck.c:3453
+msgid "signed and unsigned type in conditional expression"
+msgstr "tipus signed i unsigned en l'expressió condicional"
+
+#: c-typeck.c:3460
+msgid "ISO C forbids conditional expr with only one void side"
+msgstr "ISO C prohibeix una expressió condicional amb només un costat void"
+
+#: c-typeck.c:3476 c-typeck.c:3483
+msgid "ISO C forbids conditional expr between `void *' and function pointer"
+msgstr "ISO C prohibeix expressions condicionals entre \"void *\" i punters de funcions"
+
+#: c-typeck.c:3489
+msgid "pointer type mismatch in conditional expression"
+msgstr "els tipus de dades punters no coincideixen en l'expressió condicional"
+
+#: c-typeck.c:3496 c-typeck.c:3506
+msgid "pointer/integer type mismatch in conditional expression"
+msgstr "els tipus de dades punters/enters no coincideixen en l'expressió condicional"
+
+#: c-typeck.c:3520
+msgid "type mismatch in conditional expression"
+msgstr "els tipus de dades no coincideixen en l'expressió condicional"
+
+#: c-typeck.c:3591 cp/typeck.c:4623
+msgid "left-hand operand of comma expression has no effect"
+msgstr "l'operador del costat esquerre de l'expressió coma no té efecte"
+
+#: c-typeck.c:3635
+msgid "cast specifies array type"
+msgstr "la conversió especifica el tipus matriu"
+
+#: c-typeck.c:3641
+msgid "cast specifies function type"
+msgstr "la conversió especifica el tipus funció"
+
+#: c-typeck.c:3651
+msgid "ISO C forbids casting nonscalar to the same type"
+msgstr "ISO C prohibeix la conversió d'un no escalar al mateix tipus"
+
+#: c-typeck.c:3670
+msgid "ISO C forbids casts to union type"
+msgstr "ISO C prohibeix la conversió al tipus union"
+
+#: c-typeck.c:3685
+msgid "cast to union type from type not present in union"
+msgstr "conversió a tipus union des d'un tipus no presenti en union"
+
+#: c-typeck.c:3736
+msgid "cast adds new qualifiers to function type"
+msgstr "la conversió afegeix nou qualificadors del tipus de la funció"
+
+#. There are qualifiers present in IN_OTYPE that are not
+#. present in IN_TYPE.
+#: c-typeck.c:3741
+msgid "cast discards qualifiers from pointer target type"
+msgstr "la conversió descarta els qualificadors del tipus de la destinació del punter"
+
+#: c-typeck.c:3756
+msgid "cast increases required alignment of target type"
+msgstr "la conversió incrementa l'alineació requerida del tipus de la destinació"
+
+#: c-typeck.c:3762 cp/typeck.c:5144
+msgid "cast from pointer to integer of different size"
+msgstr "conversió de punter a enter de grandària diferent"
+
+#: c-typeck.c:3767
+msgid "cast does not match function type"
+msgstr "la conversió no coincideix amb el tipus de la funció"
+
+#: c-typeck.c:3774 cp/typeck.c:5151
+msgid "cast to pointer from integer of different size"
+msgstr "conversió a punter des d'un enter de grandària diferent"
+
+#: c-typeck.c:3786
+msgid "type-punning to incomplete type might break strict-aliasing rules"
+msgstr "el càstig de tipus a tipus incomplet pot trencar les regles d'alies estricte"
+
+#: c-typeck.c:3790
+msgid "dereferencing type-punned pointer will break strict-aliasing rules"
+msgstr "el retorn de punters de tipus castigat trencarà les regles d'alies estricte"
+
+#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
+#. Reject anything strange now.
+#: c-typeck.c:3949
+msgid "invalid lvalue in assignment"
+msgstr "l-value invàlid en l'assignació"
+
+#. Convert new value to destination type.
+#: c-typeck.c:3958 c-typeck.c:3983 c-typeck.c:4000 cp/typeck.c:5266
+#: cp/typeck.c:5416
+msgid "assignment"
+msgstr "assignació"
+
+#: c-typeck.c:4070
+msgid "cannot pass rvalue to reference parameter"
+msgstr "no es pot passar un valor-r a un paràmetre de referència"
+
+#: c-typeck.c:4174 c-typeck.c:4241
+#, c-format
+msgid "%s makes qualified function pointer from unqualified"
+msgstr "%s fa un punter de funció qualificat des d'un no qualificat"
+
+#: c-typeck.c:4178 c-typeck.c:4221
+#, c-format
+msgid "%s discards qualifiers from pointer target type"
+msgstr "%s descarta els calificadors del tipus de la destinació del punter"
+
+#: c-typeck.c:4184
+msgid "ISO C prohibits argument conversion to union type"
+msgstr "ISO C prohibeix la conversió d'arguments a tipus union"
+
+#: c-typeck.c:4213
+#, c-format
+msgid "ISO C forbids %s between function pointer and `void *'"
+msgstr "ISO C prohibeix %s entre punters a funció i \"void *\""
+
+#: c-typeck.c:4230
+#, c-format
+msgid "pointer targets in %s differ in signedness"
+msgstr "el punter que apunta a %s difereix en signe"
+
+#: c-typeck.c:4246
+#, c-format
+msgid "%s from incompatible pointer type"
+msgstr "%s de tipus de punter incompatible"
+
+#: c-typeck.c:4252 c-typeck.c:4804 cp/typeck.c:1653
+msgid "invalid use of non-lvalue array"
+msgstr "ús invàlid de matriu no lvaluada"
+
+#: c-typeck.c:4267
+#, c-format
+msgid "%s makes pointer from integer without a cast"
+msgstr "%s crea un punter des d'un enter sense una conversió"
+
+#: c-typeck.c:4275
+#, c-format
+msgid "%s makes integer from pointer without a cast"
+msgstr "%s crea un enter des d'un punter sense una conversió"
+
+#: c-typeck.c:4289 c-typeck.c:4292
+#, c-format
+msgid "incompatible type for argument %d of `%s'"
+msgstr "tipus incompatible per a l'argument %d de \"%s\""
+
+#: c-typeck.c:4296
+#, c-format
+msgid "incompatible type for argument %d of indirect function call"
+msgstr "tipus incompatible per a l'argument %d de la cridada indirecta a funció"
+
+#: c-typeck.c:4300
+#, c-format
+msgid "incompatible types in %s"
+msgstr "tipus incompatibles en %s"
+
+#. Function name is known; supply it.
+#: c-typeck.c:4358
+#, c-format
+msgid "passing arg of `%s'"
+msgstr "passant l'argument de \"%s\""
+
+#. Function name unknown (call through ptr).
+#: c-typeck.c:4368
+msgid "passing arg of pointer to function"
+msgstr "passant l'argument del punter a la funció"
+
+#. Function name is known; supply it.
+#: c-typeck.c:4376
+#, c-format
+msgid "passing arg %d of `%s'"
+msgstr "passant l'argument %d de \"%s\""
+
+#. Function name unknown (call through ptr); just give arg number.
+#: c-typeck.c:4386
+#, c-format
+msgid "passing arg %d of pointer to function"
+msgstr "passant l'argument %d del punter a la funció"
+
+#: c-typeck.c:4452
+msgid "initializer for static variable is not constant"
+msgstr "el valor inicial assignat per a la variable estàtica no es constant"
+
+#: c-typeck.c:4458
+msgid "initializer for static variable uses complicated arithmetic"
+msgstr "el valor inicial assignat per a la variable estàtica usa aritmètica complicada"
+
+#: c-typeck.c:4466
+msgid "aggregate initializer is not constant"
+msgstr "el inicialitzador agregat no és una constant"
+
+#: c-typeck.c:4468
+msgid "aggregate initializer uses complicated arithmetic"
+msgstr "el inicialitzador agregat usa aritmètica complicada"
+
+#: c-typeck.c:4475
+msgid "traditional C rejects automatic aggregate initialization"
+msgstr "C tradicional rebutja la iniciació automàtica d'agregats"
+
+#: c-typeck.c:4654 c-typeck.c:4670 c-typeck.c:4686
+#, c-format
+msgid "(near initialization for `%s')"
+msgstr "(prop de l'assignació de valors inicials per a \"%s\")"
+
+#: c-typeck.c:4737 cp/typeck2.c:488
+msgid "char-array initialized from wide string"
+msgstr "matriu de caràcters amb valors inicials assignats d'una cadena ampla"
+
+#: c-typeck.c:4744 cp/typeck2.c:495
+msgid "int-array initialized from non-wide string"
+msgstr "matriu d'enters amb valors inicials assignats d'una cadena no ampla"
+
+#: c-typeck.c:4762 cp/typeck2.c:511
+msgid "initializer-string for array of chars is too long"
+msgstr "la cadena de valors inicials per a la matriu de caràcters és massa llarga"
+
+#: c-typeck.c:4822
+msgid "array initialized from non-constant array expression"
+msgstr "matriu amb valors inicials assignats d'una expressió matricial que no és constant"
+
+#: c-typeck.c:4839 c-typeck.c:4841 c-typeck.c:4857 c-typeck.c:4878
+#: c-typeck.c:6281
+msgid "initializer element is not constant"
+msgstr "l'element de valor inicial no és constant"
+
+#: c-typeck.c:4873
+msgid "initialization"
+msgstr "assignació de valors inicials"
+
+#: c-typeck.c:4884 c-typeck.c:6286
+msgid "initializer element is not computable at load time"
+msgstr "l'element de valor inicial no és calculable al moment de la càrrega"
+
+#: c-typeck.c:4899 cp/typeck2.c:588
+msgid "invalid initializer"
+msgstr "valor inicial invàlid"
+
+#: c-typeck.c:5393
+msgid "extra brace group at end of initializer"
+msgstr "grup extra de claus al final dels valors inicials"
+
+#: c-typeck.c:5413
+msgid "missing braces around initializer"
+msgstr "falten claus al voltant dels valors inicials"
+
+#: c-typeck.c:5473
+msgid "braces around scalar initializer"
+msgstr "claus al voltant del valor inicial escalar"
+
+#: c-typeck.c:5521
+msgid "initialization of flexible array member in a nested context"
+msgstr "iniciació d'un membre de matriu flexible en un context niat"
+
+#: c-typeck.c:5523
+msgid "initialization of a flexible array member"
+msgstr "iniciació d'un membre de matriu flexible"
+
+#: c-typeck.c:5554
+msgid "missing initializer"
+msgstr "falta valor inicial"
+
+#: c-typeck.c:5580
+msgid "empty scalar initializer"
+msgstr "valor inicial escalar buidor"
+
+#: c-typeck.c:5585
+msgid "extra elements in scalar initializer"
+msgstr "elements extres en valor inicial escalar"
+
+#: c-typeck.c:5671
+msgid "initialization designators may not nest"
+msgstr "no es poden niar els designadors d'iniciació"
+
+#: c-typeck.c:5692 c-typeck.c:5763
+msgid "array index in non-array initializer"
+msgstr "índex de matriu en valor inicial que no és de matriu"
+
+#: c-typeck.c:5697 c-typeck.c:5817
+msgid "field name not in record or union initializer"
+msgstr "el nom del camp no està en el inicialitzador de record o union"
+
+#: c-typeck.c:5759 c-typeck.c:5761
+msgid "nonconstant array index in initializer"
+msgstr "índex de matriu no constant en valor inicial"
+
+#: c-typeck.c:5765 c-typeck.c:5768
+msgid "array index in initializer exceeds array bounds"
+msgstr "l'índex de matriu en el valor inicial excedeix els límits de la matriu"
+
+#: c-typeck.c:5779
+msgid "empty index range in initializer"
+msgstr "rang d'índexs buit en valor inicial"
+
+#: c-typeck.c:5788
+msgid "array index range in initializer exceeds array bounds"
+msgstr "el rang d'índexs de la matriu en el valor inicial excedeix els límits de la matriu"
+
+#: c-typeck.c:5829
+#, c-format
+msgid "unknown field `%s' specified in initializer"
+msgstr "camp \"%s\" desconegut especificat en el valor inicial"
+
+#: c-typeck.c:5866 c-typeck.c:5887 c-typeck.c:6348
+msgid "initialized field with side-effects overwritten"
+msgstr "camp iniciat amb efectes laterals sobreescrits"
+
+#: c-typeck.c:6558
+msgid "excess elements in char array initializer"
+msgstr "excés d'elements en valors inicials de matriu de caràcters"
+
+#: c-typeck.c:6565 c-typeck.c:6611
+msgid "excess elements in struct initializer"
+msgstr "excés d'elements en valors inicials de struct"
+
+#: c-typeck.c:6626
+msgid "non-static initialization of a flexible array member"
+msgstr "iniciació no estàtica d'un membre de matriu flexible"
+
+#: c-typeck.c:6693
+msgid "excess elements in union initializer"
+msgstr "excés d'elements en valors inicials de union"
+
+#: c-typeck.c:6714
+msgid "traditional C rejects initialization of unions"
+msgstr "C tradicional rebutja els valors inicials de unions"
+
+#: c-typeck.c:6777
+msgid "excess elements in array initializer"
+msgstr "excés d'elements en valors inicials de matriu"
+
+#: c-typeck.c:6806
+msgid "excess elements in vector initializer"
+msgstr "excés d'elements en valor inicial vectorial"
+
+#: c-typeck.c:6828
+msgid "excess elements in scalar initializer"
+msgstr "excés d'elements en valor inicial escalar"
+
+#: c-typeck.c:6935
+msgid "asm template is not a string constant"
+msgstr "la plantilla asm no és una cadena constant"
+
+#: c-typeck.c:6967
+msgid "invalid lvalue in asm statement"
+msgstr "lvalue invàlid en declaració asm"
+
+#: c-typeck.c:7042
+msgid "modification by `asm'"
+msgstr "modificació per \"asm\""
+
+#: c-typeck.c:7061 cp/typeck.c:6237
+msgid "function declared `noreturn' has a `return' statement"
+msgstr "la funció declarada \"noreturn\" té una declaració \"return\""
+
+#: c-typeck.c:7068
+msgid "`return' with no value, in function returning non-void"
+msgstr "\"return\" sense valors, en una funció que retorna non-void"
+
+#: c-typeck.c:7074
+msgid "`return' with a value, in function returning void"
+msgstr "\"return\" amb valor, en una funció que retorna void"
+
+#: c-typeck.c:7078
+msgid "return"
+msgstr "return"
+
+#: c-typeck.c:7130
+msgid "function returns address of local variable"
+msgstr "la funció retorna l'adreça d'una variable local"
+
+#: c-typeck.c:7186 cp/semantics.c:555
+msgid "switch quantity not an integer"
+msgstr "la quantitat de switch no és un enter"
+
+#: c-typeck.c:7196
+msgid "`long' switch expression not converted to `int' in ISO C"
+msgstr "no es converteix l'expressió de switch \"long\" a \"int\" en ISO C"
+
+#: c-typeck.c:7231 cp/decl.c:5523
+msgid "case label not within a switch statement"
+msgstr "l'etiqueta casi no es troba dintre d'una declaració switch"
+
+#: c-typeck.c:7233 cp/decl.c:5528
+msgid "`default' label not within a switch statement"
+msgstr "l'etiqueta \"default\" no està dintre d'una declaració switch"
+
+#: calls.c:1934 tree-inline.c:1177
+#, c-format
+msgid "inlining failed in call to `%s'"
+msgstr "el \"inlining\" va fallar en la cridada a \"%s\""
+
+#: calls.c:1935 calls.c:2271 tree-inline.c:1178
+msgid "called from here"
+msgstr "cridat des d'aquí"
+
+#: calls.c:2270
+#, c-format
+msgid "can't inline call to `%s'"
+msgstr "no es poden fer la cridada inline a \"%s\""
+
+#: calls.c:2300
+msgid "function call has aggregate value"
+msgstr "la cridada a la funció té valor agregat"
+
+#: cfgloop.c:1107
+#, c-format
+msgid "Size of loop %d should be %d, not %d."
+msgstr "La grandària del cicle %d deu ser %d, no %d."
+
+#: cfgloop.c:1126
+#, c-format
+msgid "Bb %d do not belong to loop %d."
+msgstr "Bb %d no pertany al cicle %d."
+
+#: cfgloop.c:1144
+#, c-format
+msgid "Loop %d's header does not have exactly 2 entries."
+msgstr "L'encapçalat del cicle %d no té exactament 2 entrades."
+
+#: cfgloop.c:1152
+#, c-format
+msgid "Loop %d's latch does not have exactly 1 successor."
+msgstr "El forrellat del cicle %d no té exactament 1 successor."
+
+#: cfgloop.c:1157
+#, c-format
+msgid "Loop %d's latch does not have header as successor."
+msgstr "El forrellat del cicle %d no té un encapçalat com successor."
+
+#: cfgloop.c:1162
+#, c-format
+msgid "Loop %d's latch does not belong directly to it."
+msgstr "El forrellat del cicle %d no pertany directament a ell."
+
+#: cfgloop.c:1168
+#, c-format
+msgid "Loop %d's header does not belong directly to it."
+msgstr "L'encapçalat del cicle %d no pertany directament a ell."
+
+#: cfgrtl.c:1774
+#, c-format
+msgid "bb %d on wrong place"
+msgstr "bb %d en un lloc equivocat"
+
+#: cfgrtl.c:1780
+#, c-format
+msgid "prev_bb of %d should be %d, not %d"
+msgstr "el prev_bb de %d deu ser %d, no %d"
+
+#: cfgrtl.c:1800
+#, c-format
+msgid "end insn %d for block %d not found in the insn stream"
+msgstr "el insn final %d per al bloc %d no es troba en el fluix insn"
+
+#: cfgrtl.c:1814
+#, c-format
+msgid "insn %d is in multiple basic blocks (%d and %d)"
+msgstr "insn %d està en múltiples blocs bàsics (%d i %d)"
+
+#: cfgrtl.c:1826
+#, c-format
+msgid "head insn %d for block %d not found in the insn stream"
+msgstr "el cap insn %d per al bloc %d no es troba en el fluix insn"
+
+#: cfgrtl.c:1848
+#, c-format
+msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
+msgstr "verify_flow_info: REG_BR_PROB no coincideix amb la configuració %i %i"
+
+#: cfgrtl.c:1855
+#, c-format
+msgid "verify_flow_info: Wrong count of block %i %i"
+msgstr "verify_flow_info: Compte erroni del bloc %i %i"
+
+#: cfgrtl.c:1861
+#, c-format
+msgid "verify_flow_info: Wrong frequency of block %i %i"
+msgstr "verify_flow_info: Freqüència errònia del bloc %i %i"
+
+#: cfgrtl.c:1869
+#, c-format
+msgid "verify_flow_info: Duplicate edge %i->%i"
+msgstr "verify_flow_info: Vora duplicada %i->%i"
+
+#: cfgrtl.c:1875
+#, c-format
+msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+msgstr "verify_flow_info: Probabilitat errònia de la vora %i->%i %i"
+
+#: cfgrtl.c:1881
+#, c-format
+msgid "verify_flow_info: Wrong count of edge %i->%i %i"
+msgstr "verify_flow_info: Compte erroni de la vora %i->%i %i"
+
+#: cfgrtl.c:1911
+#, c-format
+msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgstr "verify_flow_info: Blocs incorrectes per al respatller %i->%i"
+
+#: cfgrtl.c:1926
+#, c-format
+msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgstr "verify_flow_info: Respatller incorrecte %i->%i"
+
+#: cfgrtl.c:1928
+msgid "wrong insn in the fallthru edge"
+msgstr "insn erroni en la vora del respatller"
+
+#: cfgrtl.c:1935
+#, c-format
+msgid "verify_flow_info: Basic block %d succ edge is corrupted"
+msgstr "verify_flow_info: El bloc bàsic %d succ edge està corrupte"
+
+#: cfgrtl.c:1951
+#, c-format
+msgid "Missing REG_EH_REGION note in the end of bb %i"
+msgstr "Manca la nota REG_EH_REGION al final de bb %i"
+
+#: cfgrtl.c:1959
+#, c-format
+msgid "Too many outgoing branch edges from bb %i"
+msgstr "Massa vores de ramificació de sortida de bb %i"
+
+#: cfgrtl.c:1964
+#, c-format
+msgid "Fallthru edge after unconditional jump %i"
+msgstr "Vora de caiguda després del salt incondicional %i"
+
+#: cfgrtl.c:1969
+#, c-format
+msgid "Wrong amount of branch edges after unconditional jump %i"
+msgstr "Quantitat errònia de vores de ramificació després del salt incondicional %i"
+
+#: cfgrtl.c:1975
+#, c-format
+msgid "Wrong amount of branch edges after conditional jump %i"
+msgstr "Quantitat errònia de vores de ramificació després del salt condicional %i"
+
+#: cfgrtl.c:1980
+#, c-format
+msgid "Call edges for non-call insn in bb %i"
+msgstr "Bords de cridada per a una insn que no és cridada en bb %i"
+
+#: cfgrtl.c:1989
+#, c-format
+msgid "Abnormal edges for no purpose in bb %i"
+msgstr "Vores anormals sense cap propòsit en bb %i"
+
+#: cfgrtl.c:2004
+#, c-format
+msgid "missing barrier after block %i"
+msgstr "falta una barrera després del bloc %i"
+
+#: cfgrtl.c:2014
+#, c-format
+msgid "basic block %d pred edge is corrupted"
+msgstr "el bloc bàsic %d pred edge està corrupte"
+
+#: cfgrtl.c:2031
+#, c-format
+msgid "insn %d inside basic block %d but block_for_insn is NULL"
+msgstr "insn %d està dintre del bloc bàsic %d però block_for_insn és NULL"
+
+#: cfgrtl.c:2035
+#, c-format
+msgid "insn %d inside basic block %d but block_for_insn is %i"
+msgstr "insn %d està dintre del bloc bàsic %d però block_for_insn és %i"
+
+#: cfgrtl.c:2049 cfgrtl.c:2059
+#, c-format
+msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
+msgstr "NOTE_INSN_BASIC_BLOCK mancada per al bloc %d"
+
+#: cfgrtl.c:2072
+#, c-format
+msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
+msgstr "NOTE_INSN_BASIC_BLOCK %d en el mitjà del bloc bàsic %d"
+
+#: cfgrtl.c:2084
+#, c-format
+msgid "in basic block %d:"
+msgstr "en el bloc bàsic %d:"
+
+#: cfgrtl.c:2085
+msgid "flow control insn inside a basic block"
+msgstr "control de fluix insn dintre el bloc bàsic"
+
+#: cfgrtl.c:2104
+#, c-format
+msgid "basic block %i edge lists are corrupted"
+msgstr "les llistes de vora del bloc bàsic %i estan corruptes"
+
+#: cfgrtl.c:2119
+msgid "basic blocks not numbered consecutively"
+msgstr "els blocs bàsics no estan numerats consecutivament"
+
+#: cfgrtl.c:2144
+msgid "insn outside basic block"
+msgstr "insn fora del bloc bàsic"
+
+#: cfgrtl.c:2152
+msgid "return not followed by barrier"
+msgstr "return no és seguit per una barrera"
+
+#: cfgrtl.c:2157
+#, c-format
+msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
+msgstr "el nombre de notes bb en la cadena insn (%d) != n_basic_blocks (%d)"
+
+#: cfgrtl.c:2161
+msgid "verify_flow_info failed"
+msgstr "verify_flow_info fallat"
+
+#: collect2.c:425
+msgid "internal error"
+msgstr "error intern"
+
+#: collect2.c:934
+msgid "no arguments"
+msgstr "sense arguments"
+
+#: collect2.c:1263 collect2.c:1411 collect2.c:1444
+#, c-format
+msgid "fopen %s"
+msgstr "fopen %s"
+
+#: collect2.c:1266 collect2.c:1416 collect2.c:1447
+#, c-format
+msgid "fclose %s"
+msgstr "fclose %s"
+
+#: collect2.c:1275
+#, c-format
+msgid "collect2 version %s"
+msgstr "collect2 versió %s"
+
+#: collect2.c:1365
+#, c-format
+msgid "%d constructor(s) found\n"
+msgstr "es troba(en) %d constructor(s)\n"
+
+#: collect2.c:1366
+#, c-format
+msgid "%d destructor(s) found\n"
+msgstr "es troba(en) %d destructor(s)\n"
+
+#: collect2.c:1367
+#, c-format
+msgid "%d frame table(s) found\n"
+msgstr "es troba(en) %d marcs de matriu(es)\n"
+
+#: collect2.c:1508
+#, c-format
+msgid "%s terminated with signal %d [%s]%s"
+msgstr "%s acabat amb el senyal %d [%s]%s"
+
+#: collect2.c:1527
+#, c-format
+msgid "%s returned %d exit status"
+msgstr "%s va retornar l'estat de sortida %d"
+
+#: collect2.c:1555
+#, c-format
+msgid "[cannot find %s]"
+msgstr "[no es pot trobar %s]"
+
+#: collect2.c:1570
+#, c-format
+msgid "cannot find `%s'"
+msgstr "no es pot trobar \"%s\""
+
+#: collect2.c:1581 collect2.c:1584
+#, c-format
+msgid "redirecting stdout: %s"
+msgstr "redirigint sortida estàndard: %s"
+
+#: collect2.c:1627
+#, c-format
+msgid "[Leaving %s]\n"
+msgstr "[Deixant %s]\n"
+
+#: collect2.c:1870
+#, c-format
+msgid ""
+"\n"
+"write_c_file - output name is %s, prefix is %s\n"
+msgstr ""
+"\n"
+"write_c_file - el nom de sortida és %s, el prefix és %s\n"
+
+#: collect2.c:2082
+msgid "cannot find `nm'"
+msgstr "no es pot trobar \"nm\""
+
+#: collect2.c:2092 collect2.c:2533
+msgid "pipe"
+msgstr "pipe"
+
+#: collect2.c:2096 collect2.c:2537
+msgid "fdopen"
+msgstr "fdopen"
+
+#: collect2.c:2122 collect2.c:2563
+#, c-format
+msgid "dup2 %d 1"
+msgstr "dup2 %d 1"
+
+#: collect2.c:2125 collect2.c:2128 collect2.c:2141 collect2.c:2566
+#: collect2.c:2569 collect2.c:2582
+#, c-format
+msgid "close %d"
+msgstr "close %d"
+
+#: collect2.c:2131 collect2.c:2572
+#, c-format
+msgid "execv %s"
+msgstr "execv %s"
+
+#: collect2.c:2185
+#, c-format
+msgid "init function found in object %s"
+msgstr "es va trobar la funció init en l'objecte %s"
+
+#: collect2.c:2193
+#, c-format
+msgid "fini function found in object %s"
+msgstr "es va trobar la funció fini en l'objecte %s"
+
+#: collect2.c:2216 collect2.c:2621
+msgid "fclose"
+msgstr "fclose"
+
+#: collect2.c:2261
+#, c-format
+msgid "unable to open file '%s'"
+msgstr "no es pot obrir el fitxer \"%s\""
+
+#: collect2.c:2263
+#, c-format
+msgid "unable to stat file '%s'"
+msgstr "no es pot avaluar el fitxer \"%s\""
+
+#: collect2.c:2269
+#, c-format
+msgid "unable to mmap file '%s'"
+msgstr "no es pot fer mmap al fitxer \"%s\""
+
+#: collect2.c:2422
+msgid "not found\n"
+msgstr "no trobat\n"
+
+#: collect2.c:2424 collect2.c:2600
+#, c-format
+msgid "dynamic dependency %s not found"
+msgstr "no es troba la dependència dinàmica %s"
+
+#: collect2.c:2444
+#, c-format
+msgid "bad magic number in file '%s'"
+msgstr "nombre màgic erroni en el fitxer \"%s\""
+
+#: collect2.c:2466
+msgid "dynamic dependencies.\n"
+msgstr "dependències dinàmiques.\n"
+
+#: collect2.c:2524
+msgid "cannot find `ldd'"
+msgstr "no es troba \"ldd\""
+
+#: collect2.c:2585
+msgid ""
+"\n"
+"ldd output with constructors/destructors.\n"
+msgstr ""
+"\n"
+"sortida de ldd amb constructors/destructors.\n"
+
+#: collect2.c:2612
+#, c-format
+msgid "unable to open dynamic dependency '%s'"
+msgstr "no es pot obrir la dependència dinàmica \"%s\""
+
+#: collect2.c:2726
+#, c-format
+msgid "%s: not a COFF file"
+msgstr "%s: no és un fitxer COFF"
+
+#: collect2.c:2845
+#, c-format
+msgid "%s: cannot open as COFF file"
+msgstr "%s: no es pot obrir com un fitxer COFF"
+
+#: collect2.c:2901
+#, c-format
+msgid "library lib%s not found"
+msgstr "no es troba la biblioteca lib%s"
+
+#: collect2.c:3028
+#, c-format
+msgid "open %s"
+msgstr "obrir %s"
+
+#: collect2.c:3051
+msgid "incompatibilities between object file & expected values"
+msgstr "incompatibilitats entre el fitxer objecte i els valors esperats"
+
+#: collect2.c:3124
+#, c-format
+msgid ""
+"\n"
+"Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+msgstr ""
+"\n"
+"Processant la matriu de símbols #%d, desplacament = 0x%.8lx, tipus = %s\n"
+
+#: collect2.c:3133
+msgid "string section missing"
+msgstr "falta la secció de cadenes"
+
+#: collect2.c:3136
+msgid "section pointer missing"
+msgstr "falta la secció de punters"
+
+#: collect2.c:3184
+msgid "no symbol table found"
+msgstr "no es troba la matriu de símbols"
+
+#: collect2.c:3197
+msgid "no cmd_strings found"
+msgstr "no es troben cmd_strings"
+
+#: collect2.c:3209
+msgid ""
+"\n"
+"Updating header and load commands.\n"
+"\n"
+msgstr ""
+"\n"
+"Actualitzant les ordres d'encapçalat i càrrega.\n"
+"\n"
+
+#: collect2.c:3216
+#, c-format
+msgid "load command map, %d cmds, new size %ld.\n"
+msgstr "carregar mapa d'ordres, %d ordres, nova grandària %ld.\n"
+
+#: collect2.c:3247
+msgid ""
+"writing load commands.\n"
+"\n"
+msgstr ""
+"escrivint les ordres de càrrega.\n"
+"\n"
+
+#: collect2.c:3267
+#, c-format
+msgid "close %s"
+msgstr "tancar %s"
+
+#: collect2.c:3341
+msgid "could not convert 0x%l.8x into a region"
+msgstr "no es pot convertir 0x%l.8x en una regió"
+
+#: collect2.c:3345
+#, c-format
+msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
+msgstr "funció %s, regió %d, desfasament = %ld (0x%.8lx)\n"
+
+#: collect2.c:3472
+msgid "bad magic number"
+msgstr "nombre màgic erroni"
+
+#: collect2.c:3473
+msgid "bad header version"
+msgstr "versió d'encapçalat errònia"
+
+#: collect2.c:3474
+msgid "bad raw header version"
+msgstr "versió d'encapçalat textual errònia"
+
+#: collect2.c:3475
+msgid "raw header buffer too small"
+msgstr "emmagatzematge temporal d'encapçalat textual massa petit"
+
+#: collect2.c:3476
+msgid "old raw header file"
+msgstr "fitxer d'encapçalat textual antic"
+
+#: collect2.c:3477
+msgid "unsupported version"
+msgstr "versió sense suport"
+
+#: collect2.c:3479
+#, c-format
+msgid "unknown {de,en}code_mach_o_hdr return value %d"
+msgstr "valor de devolució {de,en}code_mach_o_hdr %d desconegut"
+
+#: collect2.c:3499
+#, c-format
+msgid "fstat %s"
+msgstr "fstat %s"
+
+#: collect2.c:3536 collect2.c:3584
+#, c-format
+msgid "lseek %s 0"
+msgstr "lseek %s 0"
+
+#: collect2.c:3540
+#, c-format
+msgid "read %s"
+msgstr "read %s"
+
+#: collect2.c:3543
+#, c-format
+msgid "read %ld bytes, expected %ld, from %s"
+msgstr "%ld octets llegits, s'esperaven %ld, de %s"
+
+#: collect2.c:3564
+#, c-format
+msgid "msync %s"
+msgstr "msync %s"
+
+#: collect2.c:3571
+#, c-format
+msgid "munmap %s"
+msgstr "munmap %s"
+
+#: collect2.c:3588
+#, c-format
+msgid "write %s"
+msgstr "write %s"
+
+#: collect2.c:3591
+#, c-format
+msgid "wrote %ld bytes, expected %ld, to %s"
+msgstr "%ld octets escrits, s'esperaven %ld, a %s"
+
+#: combine.c:13222
+#, c-format
+msgid ""
+";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
+"\n"
+msgstr ""
+";; Estadístiques del combinador: %d intents, %d substitucions (%d van requerir espai nou),\n"
+";; %d èxits.\n"
+"\n"
+
+#: combine.c:13232
+#, c-format
+msgid ""
+"\n"
+";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
+msgstr ""
+"\n"
+";; Totals del combinador: %d intents, %d substitucions (%d van requerir espai nou),\n"
+";; %d èxits.\n"
+
+#: convert.c:69
+msgid "cannot convert to a pointer type"
+msgstr "no es pot convertir a un tipus punter"
+
+#: convert.c:102
+msgid "pointer value used where a floating point value was expected"
+msgstr "es va usar un valor de punter on s'esperava un valor de coma flotant"
+
+#: convert.c:106
+msgid "aggregate value used where a float was expected"
+msgstr "es va usar un valor agregat on s'esperava un float"
+
+#: convert.c:132
+msgid "conversion to incomplete type"
+msgstr "conversió a tipus de dada incompleta"
+
+#: convert.c:414 convert.c:494
+msgid "can't convert between vector values of different size"
+msgstr "no es pot convertir entre valors vectorials de grandàries diferents"
+
+#: convert.c:420
+msgid "aggregate value used where an integer was expected"
+msgstr "es va usar un valor agregat on s'esperava un enter"
+
+#: convert.c:472 f/com.c:1100
+msgid "pointer value used where a complex was expected"
+msgstr "es va usar un valor de punter on s'esperava un complex"
+
+#: convert.c:476 f/com.c:1102
+msgid "aggregate value used where a complex was expected"
+msgstr "es va usar un valor agregat on s'esperava un complex"
+
+#: convert.c:500
+msgid "can't convert value to a vector"
+msgstr "no es pot convertir el valor a un vector"
+
+#: cpperror.c:113
+msgid "warning: "
+msgstr "avís: "
+
+#: cpperror.c:115
+msgid "internal error: "
+msgstr "error intern: "
+
+#: cpperror.c:189
+msgid "stdout"
+msgstr "stdout"
+
+#: cpperror.c:191 gcc.c:6428
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: cppexp.c:199
+msgid "too many decimal points in number"
+msgstr "massa punts decimals en el nombre"
+
+#: cppexp.c:219
+#, c-format
+msgid "invalid digit \"%c\" in octal constant"
+msgstr "dígit \"%c\" invàlid en la constant octal"
+
+#: cppexp.c:225
+msgid "use of C99 hexadecimal floating constant"
+msgstr "ús d'una constant de coma flotant hexadecimal C99"
+
+#: cppexp.c:234
+msgid "exponent has no digits"
+msgstr "exponent no té dígits"
+
+#: cppexp.c:241
+msgid "hexadecimal floating constants require an exponent"
+msgstr "la constant de coma flotant hexadecimal requereixe un exponent"
+
+#: cppexp.c:247
+#, c-format
+msgid "invalid suffix \"%.*s\" on floating constant"
+msgstr "sufix \"%.*s\" invàlid en la constant de coma flotant"
+
+#: cppexp.c:257 cppexp.c:282
+#, c-format
+msgid "traditional C rejects the \"%.*s\" suffix"
+msgstr "C tradicional rebutja el sufix \"%.*s\""
+
+#: cppexp.c:268
+#, c-format
+msgid "invalid suffix \"%.*s\" on integer constant"
+msgstr "sufix \"%.*s\" invàlid en constant entera"
+
+#: cppexp.c:289
+msgid "use of C99 long long integer constant"
+msgstr "ús d'una constant entera long long C99"
+
+#: cppexp.c:295
+msgid "imaginary constants are a GCC extension"
+msgstr "les constants imaginàries són una extensió GCC"
+
+#: cppexp.c:383
+msgid "integer constant is too large for its type"
+msgstr "la constant entera és massa gran per al seu tipus"
+
+#: cppexp.c:395
+msgid "integer constant is so large that it is unsigned"
+msgstr "la constant entera és tan gran que és unsigned"
+
+#: cppexp.c:482
+msgid "missing ')' after \"defined\""
+msgstr "falta \")\" després de \"defined\""
+
+#: cppexp.c:489
+msgid "operator \"defined\" requires an identifier"
+msgstr "l'operador \"defined\" requereix un identificador"
+
+#: cppexp.c:497
+#, c-format
+msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
+msgstr "(\"%s\" és un element alternatiu per a \"%s\" en C++)"
+
+#: cppexp.c:507
+msgid "this use of \"defined\" may not be portable"
+msgstr "aquest ùs de \"defined\" podria ser no portable"
+
+#: cppexp.c:545
+msgid "floating constant in preprocessor expression"
+msgstr "constant de coma flotant en l'expressió del preprocessador"
+
+#: cppexp.c:551
+msgid "imaginary number in preprocessor expression"
+msgstr "nombre imaginari en l'expressió del preprocessador"
+
+#: cppexp.c:596
+#, c-format
+msgid "ISO C++ does not permit \"%s\" in #if"
+msgstr "ISO C++ no permet \"%s\" en #if"
+
+#: cppexp.c:604
+#, c-format
+msgid "\"%s\" is not defined"
+msgstr "\"%s\" no és definit"
+
+#: cppexp.c:737 cppexp.c:772
+#, c-format
+msgid "missing binary operator before token \"%s\""
+msgstr "operador binari faltant abans de l'element \"%s\""
+
+#: cppexp.c:756
+#, c-format
+msgid "invalid character '%c' in #if"
+msgstr "caracter invàlid \"%c\" en #if"
+
+#: cppexp.c:758
+#, c-format
+msgid "invalid character '\\%03o' in #if"
+msgstr "caracter invàlid \"\\%03o\" en #if"
+
+#: cppexp.c:763
+#, c-format
+msgid "token \"%s\" is not valid in preprocessor expressions"
+msgstr "l'element \"%s\" no és vàlid en les expressions del preprocesador"
+
+#: cppexp.c:782
+msgid "void expression between '(' and ')'"
+msgstr "expressión void entre \"(\" i \")\""
+
+#: cppexp.c:785
+msgid "#if with no expression"
+msgstr "#if sense expressió"
+
+#: cppexp.c:787
+#, c-format
+msgid "operator '%s' has no right operand"
+msgstr "l'operador \"%s\" no té operant de dreta"
+
+#: cppexp.c:813
+msgid " ':' without preceding '?'"
+msgstr " \":\" sense \"?\" precedent"
+
+#: cppexp.c:840
+msgid "unbalanced stack in #if"
+msgstr "pila desequilibrada en #if"
+
+#: cppexp.c:862
+#, c-format
+msgid "impossible operator '%u'"
+msgstr "operador \"%u\" impossible"
+
+#: cppexp.c:954
+msgid "missing ')' in expression"
+msgstr "\")\" faltant en l'expressió"
+
+#: cppexp.c:975
+msgid "'?' without following ':'"
+msgstr " \"?\" sense \":\" següent"
+
+#: cppexp.c:985
+msgid "integer overflow in preprocessor expression"
+msgstr "desbordament d'enter en l'expressió del preprocessador"
+
+#: cppexp.c:990
+msgid "missing '(' in expression"
+msgstr "\"(\" faltant en l'expressió"
+
+#: cppexp.c:1026
+#, c-format
+msgid "the left operand of \"%s\" changes sign when promoted"
+msgstr "l'operant esquerre de \"%s\" canvia el signe quan és promogut"
+
+#: cppexp.c:1031
+#, c-format
+msgid "the right operand of \"%s\" changes sign when promoted"
+msgstr "l'operant dret de \"%s\" canvia el signe quan és promogut"
+
+#: cppexp.c:1414
+msgid "comma operator in operand of #if"
+msgstr "operador coma en operant de #if"
+
+#: cppexp.c:1551
+msgid "division by zero in #if"
+msgstr "divisió per zero en #if"
+
+#: cppfiles.c:411
+#, c-format
+msgid "%s is too large"
+msgstr "%s és massa gran"
+
+#: cppfiles.c:447
+#, c-format
+msgid "%s is shorter than expected"
+msgstr "%s és més curt de l'esperat"
+
+#: cppfiles.c:461
+#, c-format
+msgid "%s is a block device"
+msgstr "%s és un dispositiu de blocs"
+
+#: cppfiles.c:594
+#, c-format
+msgid "no include path in which to find %s"
+msgstr "no hi ha ruta d'inclusió en la qual es trobi %s"
+
+#: cppfiles.c:668
+msgid "Multiple include guards may be useful for:\n"
+msgstr "Guàrdies múltiples de include poden ser útils per a:\n"
+
+#: cppfiles.c:1014
+msgid "absolute file name in remap_filename"
+msgstr "nom de fitxer absolut en remap_filename"
+
+#: cppinit.c:224
+#, c-format
+msgid "ignoring nonexistent directory \"%s\"\n"
+msgstr "ignorant el directori inexistent \"%s\"\n"
+
+#: cppinit.c:231
+#, c-format
+msgid "%s: Not a directory"
+msgstr "%s: No és un directori"
+
+#: cppinit.c:287
+#, c-format
+msgid "ignoring duplicate directory \"%s\"\n"
+msgstr "ignorant el directori duplicat \"%s\"\n"
+
+#: cppinit.c:325
+msgid " as it is a non-system directory that duplicates a system directory\n"
+msgstr " perquè és un directori que no és del sistema que duplica un directori del sistema\n"
+
+#: cppinit.c:891
+msgid "cppchar_t must be an unsigned type"
+msgstr "cppchar_t deu ser d'un tipus unsigned"
+
+#: cppinit.c:895
+#, c-format
+msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
+msgstr "l'aritmètica del preprocesador té una precisió màxima de %lu bits; l'objectiu requereix %lu bits"
+
+#: cppinit.c:901
+msgid "CPP arithmetic must be at least as precise as a target int"
+msgstr "l'aritmètica de CPP deu ser almenys tan precisa com un int de l'objectiu"
+
+#: cppinit.c:904
+msgid "target char is less than 8 bits wide"
+msgstr "el char de l'objectiu té menys de 8 bits d'ample"
+
+#: cppinit.c:908
+msgid "target wchar_t is narrower than target char"
+msgstr "el wchar_t de l'objectiu és més estret que el char de l'objectiu"
+
+#: cppinit.c:912
+msgid "target int is narrower than target char"
+msgstr "el int de l'objectiu és més estret que el char de l'objectiu"
+
+#: cppinit.c:916
+msgid "CPP half-integer narrower than CPP character"
+msgstr "el mitj-enter de CPP és més estret que el caràcter de CPP"
+
+#: cppinit.c:920
+#, c-format
+msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
+msgstr "CPP no pot manejar constants de caràcter amples més enllà de %lu bits en aquestobjectiu, però l'objectiu requereix %lu bits"
+
+#: cppinit.c:972
+msgid "#include \"...\" search starts here:\n"
+msgstr "la recerca de #include \"...\" s'inicia aquí:\n"
+
+#: cppinit.c:976
+msgid "#include <...> search starts here:\n"
+msgstr "la recerca de #include <...> s'inicia aquí:\n"
+
+#: cppinit.c:979
+msgid "End of search list.\n"
+msgstr "Fi de la llista de recerca.\n"
+
+#: cppinit.c:1057
+msgid "<built-in>"
+msgstr "<built-in>"
+
+#: cppinit.c:1059
+msgid "<command line>"
+msgstr "<command line>"
+
+#. Irix6 "cc -n32" and OSF4 cc have problems with char foo[] = ("string");
+#. I.e. a const string initializer with parens around it. That is
+#. what N_("string") resolves to, so we make no_* be macros instead.
+#: cppinit.c:1164
+#, c-format
+msgid "assertion missing after %s"
+msgstr "asserció faltant deprés de %s"
+
+#: cppinit.c:1165
+#, c-format
+msgid "directory name missing after %s"
+msgstr "nom de directori faltant deprés de %s"
+
+#: cppinit.c:1166
+#, c-format
+msgid "file name missing after %s"
+msgstr "nom de fitxer faltant deprés de %s"
+
+#: cppinit.c:1167
+#, c-format
+msgid "macro name missing after %s"
+msgstr "nom de macro faltant deprés de %s"
+
+#: cppinit.c:1168
+#, c-format
+msgid "path name missing after %s"
+msgstr "nom de camí faltant deprés de %s"
+
+#: cppinit.c:1353
+msgid "-I- specified twice"
+msgstr "-I- especificat dues vegades"
+
+#: cpplex.c:149
+#, c-format
+msgid "trigraph ??%c converted to %c"
+msgstr "trigraph ??%c convertit a %c"
+
+#: cpplex.c:157
+#, c-format
+msgid "trigraph ??%c ignored"
+msgstr "s'ignora el trigraph ??%c"
+
+#: cpplex.c:214
+msgid "backslash and newline separated by space"
+msgstr "barra invertida i fi de línia separats per espai"
+
+#: cpplex.c:221 cpptrad.c:158
+msgid "backslash-newline at end of file"
+msgstr "barra invertida al final del fitxer"
+
+#: cpplex.c:287 cpptrad.c:199
+msgid "\"/*\" within comment"
+msgstr "\"/*\" dintre un comentari"
+
+#: cpplex.c:395
+msgid "null character(s) ignored"
+msgstr "caràter(es) nul(s) ignorats"
+
+#: cpplex.c:402
+#, c-format
+msgid "%s in preprocessing directive"
+msgstr "%s en directiva de preprocessament"
+
+#: cpplex.c:475
+#, c-format
+msgid "attempt to use poisoned \"%s\""
+msgstr "intent d'usar \"%s\" enverinat"
+
+#: cpplex.c:483
+msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
+msgstr "__VA_ARGS__ solament pot aparèixer en l'expansió d'una macro variadic C99"
+
+#: cpplex.c:555
+msgid "'$' character(s) in identifier or number"
+msgstr "caràcter/(es) \"$\" en l'identificador o nombre"
+
+#: cpplex.c:698
+#, c-format
+msgid "missing terminating %c character"
+msgstr "falta caràcter acabant %c"
+
+#: cpplex.c:711
+msgid "null character(s) preserved in literal"
+msgstr "caràcter(es) nul(s) preservats en la literal"
+
+#: cpplex.c:915 cpptrad.c:487
+msgid "no newline at end of file"
+msgstr "no hi ha caràcter de fi de línia"
+
+#: cpplex.c:1092 cpptrad.c:213
+msgid "unterminated comment"
+msgstr "comentari sense acabar"
+
+#: cpplex.c:1103
+msgid "C++ style comments are not allowed in ISO C90"
+msgstr "els comentaris d'estil C++ no són permesos en ISO C90"
+
+#: cpplex.c:1105
+msgid "(this will be reported only once per input file)"
+msgstr "(això es reportarà solament una vegada per cada fitxer d'entrada)"
+
+#: cpplex.c:1110
+msgid "multi-line comment"
+msgstr "comentari en múltiples línies"
+
+#: cpplex.c:1425
+#, c-format
+msgid "unknown string token %s\n"
+msgstr "Element de cadena %s desconegut\n"
+
+#: cpplex.c:1438
+#, c-format
+msgid "unspellable token %s"
+msgstr "Element %s impronunciable"
+
+#: cpplex.c:1695
+#, c-format
+msgid "the meaning of '\\%c' is different in traditional C"
+msgstr "el significat de \"\\%c\" és diferent en C tradicional"
+
+#: cpplex.c:1701
+msgid "incomplete universal-character-name"
+msgstr "universal-character-name incomplet"
+
+#: cpplex.c:1715
+#, c-format
+msgid "non-hex digit '%c' in universal-character-name"
+msgstr "dígit no hexadecimal \"%c\" en universal-character-name"
+
+#: cpplex.c:1723
+msgid "universal-character-name on EBCDIC target"
+msgstr "universal-character-name en l'objectiu EBCDIC"
+
+#: cpplex.c:1737
+msgid "universal-character-name out of range"
+msgstr "universal-character-name fora de rang"
+
+#: cpplex.c:1791
+msgid "the meaning of '\\a' is different in traditional C"
+msgstr "el significat de \"\\a\" és diferent en C tradicional"
+
+#: cpplex.c:1798
+#, c-format
+msgid "non-ISO-standard escape sequence, '\\%c'"
+msgstr "seqüència d'escapi que no és estàndard ISO, \"\\%c\""
+
+#: cpplex.c:1809
+msgid "the meaning of '\\x' is different in traditional C"
+msgstr "el significat de \"\\x\" és diferent en C tradicional"
+
+#: cpplex.c:1828 f/lex.c:585
+msgid "\\x used with no following hex digits"
+msgstr "es va usar \\x sense dígits hexadecimales a continuació"
+
+#: cpplex.c:1833
+msgid "hex escape sequence out of range"
+msgstr "seqüència d'escapi hexadecimal fora de rang"
+
+#: cpplex.c:1858
+msgid "octal escape sequence out of range"
+msgstr "seqüència d'escapi octal fora de rang"
+
+#: cpplex.c:1874
+#, c-format
+msgid "unknown escape sequence '\\%c'"
+msgstr "seqüència d'escapi \"\\%c\" desconeguda"
+
+#: cpplex.c:1877
+#, c-format
+msgid "unknown escape sequence: '\\%03o'"
+msgstr "seqüència d'escapi desconeguda: '\\%03o'"
+
+#: cpplex.c:1882
+msgid "escape sequence out of range for its type"
+msgstr "seqüència d'escapi fora de rang per a el seu tipus"
+
+#: cpplex.c:1973
+msgid "empty character constant"
+msgstr "constant de caràter buida"
+
+#: cpplex.c:1983
+msgid "character constant too long for its type"
+msgstr "constant de caràcter massa gran pel seu tipus"
+
+#: cpplex.c:1986
+msgid "multi-character character constant"
+msgstr "constant de caràcter amb múltiples caràcters"
+
+#: cpplib.c:225
+#, c-format
+msgid "extra tokens at end of #%s directive"
+msgstr "elements extra al final de la directiva #%s"
+
+#: cpplib.c:315
+#, c-format
+msgid "#%s is a GCC extension"
+msgstr "#%s és una extenció del GCC"
+
+#: cpplib.c:327
+msgid "suggest not using #elif in traditional C"
+msgstr "es suggereix no usar #elif en C tradicional"
+
+#: cpplib.c:330
+#, c-format
+msgid "traditional C ignores #%s with the # indented"
+msgstr "C tradicional ignora #%s amb el # indentat"
+
+#: cpplib.c:334
+#, c-format
+msgid "suggest hiding #%s from traditional C with an indented #"
+msgstr "es suggereix ocultar #%s del C tradicional amb el # indentat"
+
+#: cpplib.c:358
+msgid "embedding a directive within macro arguments is not portable"
+msgstr ""
+
+#: cpplib.c:378
+msgid "style of line directive is a GCC extension"
+msgstr "l'estil de la directiva de línia és una extenció del GCC"
+
+#: cpplib.c:428
+#, c-format
+msgid "invalid preprocessing directive #%s"
+msgstr "directiva de preprocessament #%s invàlida"
+
+#: cpplib.c:500
+msgid "\"defined\" cannot be used as a macro name"
+msgstr "\"defined\" no es pot usar com un nom de macro"
+
+#: cpplib.c:506
+#, c-format
+msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
+msgstr "no es pot usar \"%s\" com un nom de macro perquè és un operador en C++"
+
+#: cpplib.c:509
+#, c-format
+msgid "no macro name given in #%s directive"
+msgstr "no es va donar un nom de macro en la directiva #%s"
+
+#: cpplib.c:512
+msgid "macro names must be identifiers"
+msgstr "els noms de macro deuen ser identificadors"
+
+#: cpplib.c:552
+#, c-format
+msgid "undefining \"%s\""
+msgstr "esborrant la definició de \"%s\""
+
+#: cpplib.c:598
+msgid "missing terminating > character"
+msgstr "falta el caràcter de terminació >"
+
+#: cpplib.c:637
+#, c-format
+msgid "#%s expects \"FILENAME\" or <FILENAME>"
+msgstr "#%s espera \"NOM_DE_FITXER\" o <NOM_DE_FITXER>"
+
+#: cpplib.c:648
+#, c-format
+msgid "empty file name in #%s"
+msgstr "nom de fitxer buit en #%s"
+
+#: cpplib.c:667
+msgid "#include_next in primary source file"
+msgstr "#include_next en el fitxer font primari"
+
+#: cpplib.c:674
+msgid "#import is obsolete, use an #ifndef wrapper in the header file"
+msgstr "#import és obsolet, usi un embolcall #ifndef en el fitxer d'encapçalat"
+
+#: cpplib.c:682
+msgid "#include nested too deeply"
+msgstr "#include niat amb massa profunditat"
+
+#: cpplib.c:739
+#, c-format
+msgid "invalid flag \"%s\" in line directive"
+msgstr "indicador \"%s\" invàlid en la línia de la directiva"
+
+#: cpplib.c:814
+#, c-format
+msgid "\"%s\" after #line is not a positive integer"
+msgstr "\"%s\" desprès de #line no és un enter positiu"
+
+#: cpplib.c:820
+msgid "line number out of range"
+msgstr "nombre de línia fora de rang"
+
+#: cpplib.c:831 cpplib.c:902
+#, c-format
+msgid "\"%s\" is not a valid filename"
+msgstr "\"%s\" no és un nom de fitxer vàlid"
+
+#: cpplib.c:866
+#, c-format
+msgid "\"%s\" after # is not a positive integer"
+msgstr "\"%s\" desprès de # no és un enter positiu"
+
+#: cpplib.c:973
+msgid "invalid #ident directive"
+msgstr "directiva #ident invàlida"
+
+#: cpplib.c:1061
+#, c-format
+msgid "registering \"%s\" as both a pragma and a pragma namespace"
+msgstr "desant \"%s\" com a pragma i espai de noms de pragma"
+
+#: cpplib.c:1064
+#, c-format
+msgid "#pragma %s %s is already registered"
+msgstr "ja s'ha desat #pragma %s %s"
+
+#: cpplib.c:1067
+#, c-format
+msgid "#pragma %s is already registered"
+msgstr "ja s'ha desat #pragma %s"
+
+#: cpplib.c:1143
+msgid "#pragma once is obsolete"
+msgstr "#pragma una vegada és obsolet"
+
+#: cpplib.c:1146
+msgid "#pragma once in main file"
+msgstr "#pragma una vegada en el fitxer principal"
+
+#: cpplib.c:1170
+msgid "invalid #pragma GCC poison directive"
+msgstr "directiva #pragma de GCC enverinada invàlida"
+
+#: cpplib.c:1179
+#, c-format
+msgid "poisoning existing macro \"%s\""
+msgstr "enverinant la macro existent \"%s\""
+
+#: cpplib.c:1201
+msgid "#pragma system_header ignored outside include file"
+msgstr "#pragma system_header ignorat fora del fitxer d'inclusió"
+
+#: cpplib.c:1226
+#, c-format
+msgid "cannot find source %s"
+msgstr "no es pot trobar la font %s"
+
+#: cpplib.c:1230
+#, c-format
+msgid "current file is older than %s"
+msgstr "el fitxer actual és més vell que %s"
+
+#: cpplib.c:1346
+msgid "_Pragma takes a parenthesized string literal"
+msgstr "_Pragma duu una cadena literal entre parèntesis"
+
+#: cpplib.c:1429
+msgid "#else without #if"
+msgstr "#else sense #if"
+
+#: cpplib.c:1434
+msgid "#else after #else"
+msgstr "#else després de #else"
+
+#: cpplib.c:1436 cpplib.c:1470
+msgid "the conditional began here"
+msgstr "el condicional va començar aquí"
+
+#: cpplib.c:1463
+msgid "#elif without #if"
+msgstr "#elif sense #if"
+
+#: cpplib.c:1468
+msgid "#elif after #else"
+msgstr "#elif després de #else"
+
+#: cpplib.c:1499
+msgid "#endif without #if"
+msgstr "#endif sense #if"
+
+#: cpplib.c:1582
+msgid "missing '(' after predicate"
+msgstr "falta \"(\" abans del predicat"
+
+#: cpplib.c:1597
+msgid "missing ')' to complete answer"
+msgstr "falta \")\" per a completar la resposta"
+
+#: cpplib.c:1617
+msgid "predicate's answer is empty"
+msgstr "el predicat de la resposta està buidor"
+
+#: cpplib.c:1647
+msgid "assertion without predicate"
+msgstr "afirmació sense predicat"
+
+#: cpplib.c:1649
+msgid "predicate must be an identifier"
+msgstr "el predicat deu ser un identificador"
+
+#: cpplib.c:1738
+#, c-format
+msgid "\"%s\" re-asserted"
+msgstr "\"%s\" reafirmat"
+
+#: cpplib.c:1968
+#, c-format
+msgid "unterminated #%s"
+msgstr "#%s sense acabar"
+
+#: cppmacro.c:94
+#, c-format
+msgid "macro \"%s\" is not used"
+msgstr ""
+
+#: cppmacro.c:139 cppmacro.c:294
+#, c-format
+msgid "invalid built-in macro \"%s\""
+msgstr "macro interna \"%s\" invàlida"
+
+#: cppmacro.c:234
+msgid "could not determine date and time"
+msgstr "no es pot determinar la data i l'hora"
+
+#: cppmacro.c:407
+msgid "invalid string literal, ignoring final '\\'"
+msgstr "cadena literal invàlida, s'ignora el \"\\\" finals"
+
+#: cppmacro.c:504
+#, c-format
+msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
+msgstr "pegar \"%s\" i \"%s\" no dóna un element vàlid de preprocessament"
+
+#: cppmacro.c:546
+msgid "ISO C99 requires rest arguments to be used"
+msgstr "ISO C99 requereix que la resta dels arguments sigui usat"
+
+#: cppmacro.c:551
+#, c-format
+msgid "macro \"%s\" requires %u arguments, but only %u given"
+msgstr "la macro \"%s\" requereix %u arguments, però sol es proporcionen %u"
+
+#: cppmacro.c:556
+#, c-format
+msgid "macro \"%s\" passed %u arguments, but takes just %u"
+msgstr "la macro \"%s\" va rebre %u arguments, però solament va prendre %u"
+
+#: cppmacro.c:669 cpptrad.c:774
+#, c-format
+msgid "unterminated argument list invoking macro \"%s\""
+msgstr "llista d'arguments sense acabar a l'invocar la macro \"%s\""
+
+#: cppmacro.c:776
+#, c-format
+msgid "function-like macro \"%s\" must be used with arguments in traditional C"
+msgstr "la funció de macro \"%s\" es deu usar amb arguments en C tradicional"
+
+#: cppmacro.c:1314
+#, c-format
+msgid "duplicate macro parameter \"%s\""
+msgstr "paràmetre de macro \"%s\" duplicat"
+
+#: cppmacro.c:1351
+#, c-format
+msgid "\"%s\" may not appear in macro parameter list"
+msgstr "\"%s\" podria faltar en la llista de paràmetre de macro"
+
+#: cppmacro.c:1359
+msgid "macro parameters must be comma-separated"
+msgstr "els paràmetres de macro deuen ser separats per comes"
+
+#: cppmacro.c:1376
+msgid "parameter name missing"
+msgstr "falta el nom del paràmetre"
+
+#: cppmacro.c:1391
+msgid "anonymous variadic macros were introduced in C99"
+msgstr "els macros variadic anònims es van introduir en C99"
+
+#: cppmacro.c:1395
+msgid "ISO C does not permit named variadic macros"
+msgstr "ISO C no permet macros variadic nomenats"
+
+#: cppmacro.c:1404
+msgid "missing ')' in macro parameter list"
+msgstr "falta parèntesi dret en la llista de paràmetres de macro"
+
+#: cppmacro.c:1472
+msgid "ISO C requires whitespace after the macro name"
+msgstr "ISO C requereix espais en blanc després del nom de macro"
+
+#: cppmacro.c:1500
+msgid "'#' is not followed by a macro parameter"
+msgstr "\"#\" no és seguit per un paràmetre de macro"
+
+#: cppmacro.c:1519
+msgid "'##' cannot appear at either end of a macro expansion"
+msgstr "\"##\" no pot apareixer en o al final d'una expansió de macro"
+
+#: cppmacro.c:1601
+#, c-format
+msgid "\"%s\" redefined"
+msgstr "\"%s\" re-definit"
+
+#: cppmacro.c:1606
+msgid "this is the location of the previous definition"
+msgstr "aquesta és la ubicació de la definició prèvia"
+
+#: cppmacro.c:1657
+#, c-format
+msgid "macro argument \"%s\" would be stringified in traditional C"
+msgstr "l'argument de macro \"%s\" deuria ser convertit a cadena en C traditional"
+
+#: cppmacro.c:1682
+#, c-format
+msgid "invalid hash type %d in cpp_macro_definition"
+msgstr "tipus de hash %d invàlid en cpp_macro_definition"
+
+#: cppspec.c:109
+#, c-format
+msgid "\"%s\" is not a valid option to the preprocessor"
+msgstr "\"%s\" no es una opció vàlida per el preprocessador"
+
+#: cppspec.c:133
+msgid "too many input files"
+msgstr "massa fitxers d'entrada"
+
+#: cpptrad.c:841
+#, c-format
+msgid "detected recursion whilst expanding macro \"%s\""
+msgstr ""
+
+#: cse.c:7195
+#, c-format
+msgid ";; Processing block from %d to %d, %d sets.\n"
+msgstr ";; Processant el bloc de %d a %d, %d establerts.\n"
+
+#: diagnostic.c:714
+msgid "((anonymous))"
+msgstr "((anònim))"
+
+#: diagnostic.c:928
+#, c-format
+msgid "%s: warnings being treated as errors\n"
+msgstr "%s: els avisos són tractats com errors\n"
+
+#: diagnostic.c:963
+#, c-format
+msgid "%s: %s: "
+msgstr "%s: %s: "
+
+#: diagnostic.c:1054
+#, c-format
+msgid "%s "
+msgstr "%s "
+
+#: diagnostic.c:1056
+#, c-format
+msgid " %s"
+msgstr " %s"
+
+#: diagnostic.c:1078
+msgid "At top level:"
+msgstr "En el nivell principal:"
+
+#: diagnostic.c:1083
+#, c-format
+msgid "In member function `%s':"
+msgstr "en la funció membre \"%s\":"
+
+#: diagnostic.c:1087
+#, c-format
+msgid "In function `%s':"
+msgstr "En la funció \"%s\":"
+
+#: diagnostic.c:1175
+msgid "compilation terminated.\n"
+msgstr "compilació acabada.\n"
+
+#: diagnostic.c:1193
+#, c-format
+msgid "%s:%d: confused by earlier errors, bailing out\n"
+msgstr "%s:%d: confusió per errors precedentes, abandó\n"
+
+#: diagnostic.c:1208 diagnostic.c:1316
+#, c-format
+msgid ""
+"Please submit a full bug report,\n"
+"with preprocessed source if appropriate.\n"
+"See %s for instructions.\n"
+msgstr ""
+"Si us plau, envieu un informe d'error complet,\n"
+"amd la font preprocessada si és oportú.\n"
+"Consulta %s per a les instruccions.\n"
+
+#: diagnostic.c:1314
+msgid "Internal compiler error: Error reporting routines re-entered.\n"
+msgstr "Error intern del compilador: Error al reportar rutines reentrades.\n"
+
+#: diagnostic.c:1376
+#, c-format
+msgid "in %s, at %s:%d"
+msgstr "en %s, en %s:%d"
+
+#: diagnostic.c:1397
+#, c-format
+msgid "In file included from %s:%d"
+msgstr "En el fitxer inclòs de %s:%d"
+
+#: diagnostic.c:1400
+#, c-format
+msgid ""
+",\n"
+" from %s:%d"
+msgstr ""
+",\n"
+" de %s:%d"
+
+#: diagnostic.c:1401
+msgid ":\n"
+msgstr ":\n"
+
+#: diagnostic.c:1445 diagnostic.c:1462
+#, c-format
+msgid "`%s' is deprecated (declared at %s:%d)"
+msgstr "\"%s\" és depreciat (declarat a %s:%d)"
+
+#: diagnostic.c:1465
+#, c-format
+msgid "`%s' is deprecated"
+msgstr "\"%s\" és depreciat"
+
+#: diagnostic.c:1468
+#, c-format
+msgid "type is deprecated (declared at %s:%d)"
+msgstr "type és depreciat (declarat a %s:%d)"
+
+#: diagnostic.c:1471
+msgid "type is deprecated"
+msgstr "type és depreciat"
+
+#: dominance.c:728
+#, c-format
+msgid "dominator of %d should be %d, not %d"
+msgstr ""
+
+#: dwarf2out.c:3135
+#, c-format
+msgid "DW_LOC_OP %s not implemented\n"
+msgstr "DW_LOC_OP %s no està implementat\n"
+
+#: dwarfout.c:2066
+#, c-format
+msgid "internal regno botch: `%s' has regno = %d\n"
+msgstr "regno intern mal fet: \"%s\" té regno = %d\n"
+
+#: dwarfout.c:6181
+msgid "support for the DWARF1 debugging format is deprecated"
+msgstr ""
+
+#: dwarfout.c:6278
+msgid "can't get current directory"
+msgstr "no es pot obtenir el directori actual"
+
+#: emit-rtl.c:1155
+msgid "can't access real part of complex value in hard register"
+msgstr "No es pot accedir a la part real d'un valor complex en un registre fix"
+
+#: emit-rtl.c:1177
+msgid "can't access imaginary part of complex value in hard register"
+msgstr "No es pot accedir a la part imaginària d'un valor complex en un registre fix"
+
+#: emit-rtl.c:3402
+msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
+msgstr "ICE:s'usa emit_insn on es necessita emit_jump_insn:\n"
+
+#: errors.c:136
+#, c-format
+msgid "abort in %s, at %s:%d"
+msgstr "abandó en %s, en %s:%d"
+
+#: except.c:369
+msgid "exception handling disabled, use -fexceptions to enable"
+msgstr "maneig d'excepcions desactivat, usi -fexceptions per a activar"
+
+#: except.c:2994
+msgid "argument of `__builtin_eh_return_regno' must be constant"
+msgstr "l'argument de \"__builtin_eh_return_regno\" deu ser constant"
+
+#: except.c:3137
+msgid "__builtin_eh_return not supported on this target"
+msgstr "no es dóna suport a _builtin_eh_return en aquest objectiu"
+
+#: explow.c:1408
+msgid "stack limits not supported on this target"
+msgstr "no es dóna suport a límits de la pila en aquest objectiu"
+
+#: expr.c:3355
+msgid "function using short complex types cannot be inline"
+msgstr "les funcions que usen tipus short complex no poden ser inline"
+
+#: expr.c:6272 expr.c:6281 expr.c:6290 expr.c:6295 expr.c:6604 expr.c:6620
+msgid "unsupported wide integer operation"
+msgstr "operació d'enters amples sense suport"
+
+#: expr.c:6669
+#, c-format
+msgid "prior parameter's size depends on `%s'"
+msgstr "la grandària del paràmetre previ depèn de \"%s\""
+
+#: expr.c:7005
+msgid "returned value in block_exit_expr"
+msgstr "es va regressar un valor en block_exit_expr"
+
+#. We can't make a bitwise copy of this object, so fail.
+#: expr.c:9202
+msgid "cannot take the address of an unaligned member"
+msgstr "no es pot prendre l'adreça d'un membre desalineat"
+
+#: final.c:1342
+msgid "negative insn length"
+msgstr "longitud insn negativa"
+
+#: final.c:2793
+msgid "could not split insn"
+msgstr "no es pot separar insn"
+
+#: final.c:3141
+msgid "invalid `asm': "
+msgstr "\"asm\" invàlid: "
+
+#: final.c:3328
+msgid "nested assembly dialect alternatives"
+msgstr "reunió de dialectes alternatius imbricats"
+
+#: final.c:3345 final.c:3357
+msgid "unterminated assembly dialect alternative"
+msgstr "reunió de dialectes alternatius no terminada"
+
+#: final.c:3401
+#, c-format
+msgid "operand number missing after %%-letter"
+msgstr "falta nombre operant després de %%-letter"
+
+#: final.c:3404 final.c:3443
+msgid "operand number out of range"
+msgstr "nombre operant fora de rang"
+
+#: final.c:3462
+#, c-format
+msgid "invalid %%-code"
+msgstr "%%-codi invàlid"
+
+#: final.c:3493
+#, c-format
+msgid "`%%l' operand isn't a label"
+msgstr "l'operant \"%%l\" no és una etiqueta"
+
+#. We can't handle floating point constants;
+#. PRINT_OPERAND must handle them.
+#: final.c:3600 vmsdbgout.c:466 config/i386/i386.c:6314
+#: config/pdp11/pdp11.c:1573
+msgid "floating constant misused"
+msgstr "constant de coma flotant mal usada"
+
+#: final.c:3656 vmsdbgout.c:523 config/i386/i386.c:6392
+#: config/pdp11/pdp11.c:1620
+msgid "invalid expression as operand"
+msgstr "expressió invàlida com operant"
+
+#: flow.c:352
+msgid "function might be possible candidate for attribute `noreturn'"
+msgstr "la funció pot ser un candidat possible per a l'atribut \"noreturn\""
+
+#: flow.c:357
+msgid "`noreturn' function does return"
+msgstr "la funció \"noreturn\" retorna"
+
+#: flow.c:378
+msgid "control reaches end of non-void function"
+msgstr "el control arriba a el final d'una funció que no és void"
+
+#: flow.c:1642
+msgid "Attempt to delete prologue/epilogue insn:"
+msgstr "Intent d'esborrar insn pròleg/epíleg:"
+
+#: fold-const.c:2546 fold-const.c:2559
+#, c-format
+msgid "comparison is always %d due to width of bit-field"
+msgstr "la comparança sempre és %d a causa de l'amplària del camp de bit"
+
+#: fold-const.c:3753 fold-const.c:3770
+#, c-format
+msgid "comparison is always %d"
+msgstr "la comparança sempre és %d"
+
+#: fold-const.c:3901
+msgid "`or' of unmatched not-equal tests is always 1"
+msgstr "un \"or\" de proves no equivalents sense coincidència sempre és 1"
+
+#: fold-const.c:3906
+msgid "`and' of mutually exclusive equal-tests is always 0"
+msgstr "un \"and\" de proves equivalents mútuament exclusives sempre és 0"
+
+#: function.c:884 varasm.c:1503
+#, c-format
+msgid "size of variable `%s' is too large"
+msgstr "la grandària de la variable \"%s\" és massa gran"
+
+#: function.c:3772
+msgid "impossible constraint in `asm'"
+msgstr "restricció impossible en \"asm\""
+
+#: function.c:5527
+#, c-format
+msgid "`%s' might be used uninitialized in this function"
+msgstr "\"%s\" es deuria usar sense iniciar en aquesta funció"
+
+#: function.c:5534
+#, c-format
+msgid "variable `%s' might be clobbered by `longjmp' or `vfork'"
+msgstr "la variable \"%s\" podria ser sobreescrita per \"longjmp\" o \"vfork\""
+
+#: function.c:5553
+#, c-format
+msgid "argument `%s' might be clobbered by `longjmp' or `vfork'"
+msgstr "l'argument \"%s\" podria ser sobreescrit per \"longjmp\" o \"vfork\""
+
+#: function.c:6420
+msgid "function returns an aggregate"
+msgstr "la funció retorna un agregat"
+
+#: function.c:6925
+#, c-format
+msgid "unused parameter `%s'"
+msgstr "paràmetre \"%s\" sense ús"
+
+#: gcc.c:1107
+#, c-format
+msgid "ambiguous abbreviation %s"
+msgstr "abreujament ambigu %s"
+
+#: gcc.c:1134
+#, c-format
+msgid "incomplete `%s' option"
+msgstr "Opció \"%s\" incompleta"
+
+#: gcc.c:1145
+#, c-format
+msgid "missing argument to `%s' option"
+msgstr "Falten arguments per a l'opció \"%s\""
+
+#: gcc.c:1158
+#, c-format
+msgid "extraneous argument to `%s' option"
+msgstr "argument estrany per a l'opció \"%s\""
+
+#: gcc.c:1486
+msgid "Using built-in specs.\n"
+msgstr "Usant especificacions internes.\n"
+
+#: gcc.c:1667
+#, c-format
+msgid ""
+"Setting spec %s to '%s'\n"
+"\n"
+msgstr ""
+"Canviant l'especificació de %s a \"%s\"\n"
+"\n"
+
+#: gcc.c:1774
+#, c-format
+msgid "Reading specs from %s\n"
+msgstr "Llegint especificacions de %s\n"
+
+#: gcc.c:1872 gcc.c:1891
+#, c-format
+msgid "specs %%include syntax malformed after %ld characters"
+msgstr "specs sintaxi mal formada de %%include després de %ld caràcters"
+
+#: gcc.c:1899
+#, c-format
+msgid "could not find specs file %s\n"
+msgstr "No es pot trobar el fitxer d'especificacions %s\n"
+
+#: gcc.c:1916 gcc.c:1924 gcc.c:1933 gcc.c:1942
+#, c-format
+msgid "specs %%rename syntax malformed after %ld characters"
+msgstr "specs sintaxi mal formada de %%rename després de %ld caràcters"
+
+#: gcc.c:1951
+#, c-format
+msgid "specs %s spec was not found to be renamed"
+msgstr "specs l'especificació %s no es va trobar per a ser re-nomenada"
+
+#: gcc.c:1958
+#, c-format
+msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
+msgstr ""
+
+#: gcc.c:1963
+#, c-format
+msgid "rename spec %s to %s\n"
+msgstr "re-nomenada especificació %s a %s\n"
+
+#: gcc.c:1965
+#, c-format
+msgid ""
+"spec is '%s'\n"
+"\n"
+msgstr ""
+"la especificació és \"%s\"\n"
+"\n"
+
+#: gcc.c:1978
+#, c-format
+msgid "specs unknown %% command after %ld characters"
+msgstr "specs comanda %% desconegut després de %ld caràcters"
+
+#: gcc.c:1989 gcc.c:2002
+#, c-format
+msgid "specs file malformed after %ld characters"
+msgstr "specs fitxer mal format després de %ld caràcters"
+
+#: gcc.c:2056
+msgid "spec file has no spec for linking"
+msgstr "el fitxer d'especificacions no té especificacions per a enllaçar"
+
+#: gcc.c:2554
+msgid "-pipe not supported"
+msgstr "-pipe no té suport"
+
+#: gcc.c:2609
+msgid ""
+"\n"
+"Go ahead? (y or n) "
+msgstr ""
+"\n"
+"Continuar? (s o n) "
+
+#: gcc.c:2735
+#, c-format
+msgid ""
+"Internal error: %s (program %s)\n"
+"Please submit a full bug report.\n"
+"See %s for instructions."
+msgstr ""
+"Error intern: %s (programa %s)\n"
+"Per favor envieu un informe complet d'error.\n"
+"Consulta %s per a més instruccions."
+
+#: gcc.c:2753
+#, c-format
+msgid "# %s %.2f %.2f\n"
+msgstr "# %s %.2f %.2f\n"
+
+#: gcc.c:2883
+#, c-format
+msgid "Usage: %s [options] file...\n"
+msgstr "Utilització: %s [opcions] fitxer...\n"
+
+#: gcc.c:2884
+msgid "Options:\n"
+msgstr "Opcions:\n"
+
+#: gcc.c:2886
+msgid " -pass-exit-codes Exit with highest error code from a phase\n"
+msgstr " -pass-exit-codes Sortir amb el codi d'error més alt d'una fase\n"
+
+#: gcc.c:2887
+msgid " --help Display this information\n"
+msgstr " --help Mostra aquesta informació\n"
+
+#: gcc.c:2888
+msgid " --target-help Display target specific command line options\n"
+msgstr ""
+" --target-help Mostra opcions de línia de comando específiques de\n"
+" l'objectiu\n"
+
+#: gcc.c:2890
+msgid " (Use '-v --help' to display command line options of sub-processes)\n"
+msgstr " (Usi \"-v --help\" per a mostrar les opcions de línia de comando dels subprocès)\n"
+
+#: gcc.c:2891
+msgid " -dumpspecs Display all of the built in spec strings\n"
+msgstr " -dumpspecs Mostra totes les cadenes internes d'especificació\n"
+
+#: gcc.c:2892
+msgid " -dumpversion Display the version of the compiler\n"
+msgstr " -dumpversion Mostra la versió del compilador\n"
+
+#: gcc.c:2893
+msgid " -dumpmachine Display the compiler's target processor\n"
+msgstr " -dumpmachine Mostra el processador objectiu del compilador\n"
+
+#: gcc.c:2894
+msgid " -print-search-dirs Display the directories in the compiler's search path\n"
+msgstr ""
+" -print-search-dirs Mostra les directoris en la ruta de recerca del\n"
+" compilador\n"
+
+#: gcc.c:2895
+msgid " -print-libgcc-file-name Display the name of the compiler's companion library\n"
+msgstr ""
+" -print-libgcc-file-name Mostra el nom de la biblioteca que acompanya el\n"
+" compilador\n"
+
+#: gcc.c:2896
+msgid " -print-file-name=<lib> Display the full path to library <lib>\n"
+msgstr " -print-file-name=<lib> Mostra la ruta completa a la biblioteca <lib>\n"
+
+#: gcc.c:2897
+msgid " -print-prog-name=<prog> Display the full path to compiler component <prog>\n"
+msgstr ""
+" -print-prog-name=<prog> Mostra la ruta completa del programa component del\n"
+" compilador <prog>\n"
+
+#: gcc.c:2898
+msgid " -print-multi-directory Display the root directory for versions of libgcc\n"
+msgstr " -print-multi-directory Mostra el directori arrel per a versoins de libgcc\n"
+
+#: gcc.c:2899
+msgid ""
+" -print-multi-lib Display the mapping between command line options and\n"
+" multiple library search directories\n"
+msgstr ""
+" -print-multi-lib Mostra el mapatge entre les opcions de línia de\n"
+" comanda i els múltiples directoris de la recerca\n"
+" de biblioteques\n"
+
+#: gcc.c:2902
+msgid " -print-multi-os-directory Display the relative path to OS libraries\n"
+msgstr " -print-multi-os-directory Mostra la ruta relativa per a les biblioteques del SO\n"
+
+#: gcc.c:2903
+msgid " -Wa,<options> Pass comma-separated <options> on to the assembler\n"
+msgstr " -Wa,<options> Passa <opcions> separades per coma al assemblador\n"
+
+#: gcc.c:2904
+msgid " -Wp,<options> Pass comma-separated <options> on to the preprocessor\n"
+msgstr " -Wp,<opcions> Passa <opcions> separades per coma al preprocesador\n"
+
+#: gcc.c:2905
+msgid " -Wl,<options> Pass comma-separated <options> on to the linker\n"
+msgstr " -Wl,<opcions> Passa <opcions> separades per coma al enllaçador\n"
+
+#: gcc.c:2906
+msgid " -Xlinker <arg> Pass <arg> on to the linker\n"
+msgstr " -Xlinker <arg> Passa el <arg> al enllaçador\n"
+
+#: gcc.c:2907
+msgid " -save-temps Do not delete intermediate files\n"
+msgstr " -save-temps No esborra els fitxers intermedis\n"
+
+#: gcc.c:2908
+msgid " -pipe Use pipes rather than intermediate files\n"
+msgstr " -pipe Usa canonades en lloc de fitxers intermedis\n"
+
+#: gcc.c:2909
+msgid " -time Time the execution of each subprocess\n"
+msgstr " -time Obté el temps d'execució de cada subprocès\n"
+
+#: gcc.c:2910
+msgid " -specs=<file> Override built-in specs with the contents of <file>\n"
+msgstr ""
+" -specs=<file> Sobreposa les especificacions internes amb el\n"
+" contingut de <fitxer>\n"
+
+#: gcc.c:2911
+msgid " -std=<standard> Assume that the input sources are for <standard>\n"
+msgstr ""
+" -std=<estàndard> Assumeix que les fitxers d'entrada són per a el\n"
+" <estàndard>\n"
+
+#: gcc.c:2912
+msgid " -B <directory> Add <directory> to the compiler's search paths\n"
+msgstr ""
+" -B <directori> Agrega el <directori> a les rutes de recerca del\n"
+" compilador\n"
+
+#: gcc.c:2913
+msgid " -b <machine> Run gcc for target <machine>, if installed\n"
+msgstr ""
+" -b <màquina> Executa gcc per a l'objectiu <màquina>,\n"
+" si va ser instal·lat\n"
+
+#: gcc.c:2914
+msgid " -V <version> Run gcc version number <version>, if installed\n"
+msgstr ""
+" -V <versió> Executa el gcc amb nombre de versió <versió>,\n"
+" si va ser instal·lat\n"
+
+#: gcc.c:2915
+msgid " -v Display the programs invoked by the compiler\n"
+msgstr " -v Mostra els programes invocats pel compilador\n"
+
+#: gcc.c:2916
+msgid " -### Like -v but options quoted and commands not executed\n"
+msgstr ""
+" -### Com -v però les opcions i comandes entr \"\" no estan\n"
+" executades\n"
+
+#: gcc.c:2917
+msgid " -E Preprocess only; do not compile, assemble or link\n"
+msgstr " -E Solament preprocessa; no compila, assembla o enllaça\n"
+
+#: gcc.c:2918
+msgid " -S Compile only; do not assemble or link\n"
+msgstr " -S Solament compila; no assembla o enllaça\n"
+
+#: gcc.c:2919
+msgid " -c Compile and assemble, but do not link\n"
+msgstr " -c Compila i assembla, però no enllaça\n"
+
+#: gcc.c:2920
+msgid " -o <file> Place the output into <file>\n"
+msgstr " -o <fitxer> Col·loca la sortida en el <fitxer>\n"
+
+#: gcc.c:2921
+msgid ""
+" -x <language> Specify the language of the following input files\n"
+" Permissible languages include: c c++ assembler none\n"
+" 'none' means revert to the default behavior of\n"
+" guessing the language based on the file's extension\n"
+msgstr ""
+" -x <llenguatge> Especifica el llenguatge dels següents fitxers d''\n"
+" entrada. Els llenguatges permesos inclouen: c c++\n"
+" assembler none. \"none\" significa revertir a la\n"
+" conducta habitual de endevinar el llenguatge basat\n"
+" en l'extensió del fitxer\n"
+
+#: gcc.c:2928
+#, c-format
+msgid ""
+"\n"
+"Options starting with -g, -f, -m, -O, -W, or --param are automatically\n"
+" passed on to the various sub-processes invoked by %s. In order to pass\n"
+" other options on to these processes the -W<letter> options must be used.\n"
+msgstr ""
+"\n"
+"Les opcions que comencen amb -g, -f, -m, -O, -W, o --param es passen\n"
+" automàticament als varis subprocesos invocats per %s. Per passar altres\n"
+" opcions a aquests processos es deuen usar les opcions -W<lletra>\n"
+
+#: gcc.c:3063
+#, c-format
+msgid "`-%c' option must have argument"
+msgstr "l'opció \"-%c\" deu tenir arguments"
+
+#: gcc.c:3085
+#, c-format
+msgid "couldn't run `%s': %s"
+msgstr ""
+
+#. translate_options () has turned --version into -fversion.
+#: gcc.c:3262
+#, c-format
+msgid "%s (GCC) %s\n"
+msgstr "%s (GCC) %s\n"
+
+#: gcc.c:3263
+msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
+msgstr "Copyright (C) 2003 Free Software Foundation, Inc.\n"
+
+#: gcc.c:3265 gcov.c:364
+msgid ""
+"This is free software; see the source for copying conditions. There is NO\n"
+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
+"\n"
+msgstr ""
+"Això és programari lliure; vegi el codi font per a les condicions de còpia.\n"
+"Aquest és programari lliure; vegeu el codi font per les condicions\n"
+"de còpia. No hi ha CAP garantia; ni tan sols de COMERCIABILITAT o\n"
+"ADEQUACIÓ A UN PROPÒSIT PARTICULAR.\n"
+
+#: gcc.c:3366
+msgid "argument to `-Xlinker' is missing"
+msgstr "falta l'argument per a \"-Xlinker\""
+
+#: gcc.c:3374
+msgid "argument to `-l' is missing"
+msgstr "falta l'argument per a \"-I\""
+
+#: gcc.c:3391
+msgid "argument to `-specs' is missing"
+msgstr "falta l'argument per a \"-specs\""
+
+#: gcc.c:3406
+msgid "argument to `-specs=' is missing"
+msgstr "falta l'argument per a \"-specs=\""
+
+#: gcc.c:3436
+#, c-format
+msgid "`-%c' must come at the start of the command line"
+msgstr ""
+
+#: gcc.c:3445
+msgid "argument to `-B' is missing"
+msgstr "falta l'argument per a \"-B\""
+
+#: gcc.c:3618
+msgid "cannot specify -o with -c or -S and multiple compilations"
+msgstr "no es pot especificar -o amb -c o -S i múltiples compilacions"
+
+#: gcc.c:3791
+msgid "warning: -pipe ignored because -save-temps specified"
+msgstr "Avís: s'ignora -pipe perquè es va especificar -save-temps"
+
+#: gcc.c:3795
+msgid "warning: -pipe ignored because -time specified"
+msgstr "Avís: s'ignora -pipe perquè es va especificar -time"
+
+#: gcc.c:3807
+msgid "argument to `-x' is missing"
+msgstr "falta l'argument per a \"-x\""
+
+#: gcc.c:3835
+#, c-format
+msgid "argument to `-%s' is missing"
+msgstr "falta l'argument per a \"-%s\""
+
+#: gcc.c:3896
+#, c-format
+msgid "warning: `-x %s' after last input file has no effect"
+msgstr "avís: \"-x %s\" després de l'últim fitxer d'entrada no té efecte"
+
+#: gcc.c:4241
+msgid "invalid specification! Bug in cc"
+msgstr "Especificació invàlida! Bug en cc."
+
+#: gcc.c:4395
+#, c-format
+msgid "%s\n"
+msgstr "%s\n"
+
+#. Catch the case where a spec string contains something like
+#. '%{foo:%*}'. ie there is no * in the pattern on the left
+#. hand side of the :.
+#: gcc.c:4955
+#, c-format
+msgid "spec failure: '%%*' has not been initialized by pattern match"
+msgstr "Falla en spec: \"%%*\" no ha estat iniciat per coincidència de patró"
+
+#: gcc.c:4964
+#, c-format
+msgid "warning: use of obsolete %%[ operator in specs"
+msgstr "Avís: ús de l'operador obsolet %%[ en specs"
+
+#: gcc.c:4982
+#, c-format
+msgid "Processing spec %c%s%c, which is '%s'\n"
+msgstr "Processant l'especificació %c%s%c, el qual és \"%s\"\n"
+
+#: gcc.c:5107
+#, c-format
+msgid "spec failure: unrecognized spec option '%c'"
+msgstr "Falla en spec: Opció d'especificació \"%c\" no reconeguda"
+
+#: gcc.c:5188
+#, c-format
+msgid "unknown spec function `%s'"
+msgstr "funció d'especificació \"%s\" desconeguda"
+
+#: gcc.c:5207
+#, c-format
+msgid "error in args to spec function `%s'"
+msgstr "error en els arguments per a la funció d'especificació \"%s\""
+
+#: gcc.c:5256
+msgid "malformed spec function name"
+msgstr "nom de la funció d'especificació malformat"
+
+#. )
+#: gcc.c:5259
+msgid "no arguments for spec function"
+msgstr "molt pocs arguments per a la funció spec"
+
+#: gcc.c:5278
+msgid "malformed spec function arguments"
+msgstr ""
+
+#: gcc.c:5386
+msgid "mismatched braces in specs"
+msgstr "claus sense coincidència en especificacions"
+
+#: gcc.c:6081
+#, c-format
+msgid "unrecognized option `-%s'"
+msgstr "opció \"-%s\" no reconeguda"
+
+#: gcc.c:6087
+#, c-format
+msgid "install: %s%s\n"
+msgstr "instal·lar: %s%s\n"
+
+#: gcc.c:6088
+#, c-format
+msgid "programs: %s\n"
+msgstr "programes: %s\n"
+
+#: gcc.c:6089
+#, c-format
+msgid "libraries: %s\n"
+msgstr "biblioteques: %s\n"
+
+#: gcc.c:6146
+msgid ""
+"\n"
+"For bug reporting instructions, please see:\n"
+msgstr ""
+"\n"
+"Per a instruccions de report de bug, si us plau per favor vegi:\n"
+
+#: gcc.c:6162
+#, c-format
+msgid "Configured with: %s\n"
+msgstr "Configurat amb: %s\n"
+
+#: gcc.c:6176
+#, c-format
+msgid "Thread model: %s\n"
+msgstr "Model de fils: %s\n"
+
+#: gcc.c:6187
+#, c-format
+msgid "gcc version %s\n"
+msgstr "gcc versió %s\n"
+
+#: gcc.c:6189
+#, c-format
+msgid "gcc driver version %s executing gcc version %s\n"
+msgstr "controlador gcc versió %s executant gcc versió %s\n"
+
+#: gcc.c:6197
+msgid "no input files"
+msgstr "no hi ha fitxers d'entrada"
+
+#: gcc.c:6235
+#, c-format
+msgid "%s: %s compiler not installed on this system"
+msgstr "%s: el compilador %s no està instal·lat en aquest sistema"
+
+#: gcc.c:6310
+#, c-format
+msgid "%s: linker input file unused because linking not done"
+msgstr "%s: fitxer d'entrada de l'enllaçador sense ùs perquè no es va fer enllaç"
+
+#: gcc.c:6353
+#, c-format
+msgid "language %s not recognized"
+msgstr "no es reconeix el llenguatge %s"
+
+#: gcc.c:6456
+msgid "internal gcc abort"
+msgstr "avortament intern de gcc"
+
+#: gcov.c:325
+msgid "Internal gcov abort.\n"
+msgstr "avortament intern de gcov.\n"
+
+#: gcov.c:338
+msgid ""
+"Usage: gcov [OPTION]... SOURCEFILE\n"
+"\n"
+msgstr ""
+"Us: gcov [OPCIO]... FITXERFONT\n"
+"\n"
+
+#: gcov.c:339
+msgid ""
+"Print code coverage information.\n"
+"\n"
+msgstr ""
+"Produire les informacions de la covertura del codi.\n"
+"\n"
+
+#: gcov.c:340
+msgid " -h, --help Print this help, then exit\n"
+msgstr " -h, --help Mostra aquesta informació, i surt\n"
+
+#: gcov.c:341
+msgid " -v, --version Print version number, then exit\n"
+msgstr " -v, --version Mostra el numero de versió, i surt\n"
+
+#: gcov.c:342
+msgid " -b, --branch-probabilities Include branch probabilities in output\n"
+msgstr " -b, --branch-probabilities Incloure les probabilitats de brancament en la sortida\n"
+
+#: gcov.c:343
+msgid ""
+" -c, --branch-counts Given counts of branches taken\n"
+" rather than percentages\n"
+msgstr ""
+" -c, --branch-counts Dóna el compte de branques pres\n"
+" enlloc de percentatges\n"
+
+#: gcov.c:345
+msgid " -n, --no-output Do not create an output file\n"
+msgstr " -n, --no-output No crea un fitxer de sortida\n"
+
+#: gcov.c:346
+msgid ""
+" -l, --long-file-names Use long output file names for included\n"
+" source files\n"
+msgstr ""
+" -l, --long-file-names Usar nom de fitxers de sortida llargs per a\n"
+" les fitxers font inclòs\n"
+
+#: gcov.c:348
+msgid " -f, --function-summaries Output summaries for each function\n"
+msgstr " -f, --function-summaries Fer un resum per a cada funció\n"
+
+#: gcov.c:349
+msgid " -o, --object-directory DIR|FILE Search for object files in DIR or called FILE\n"
+msgstr " -o, --object-directory DIR|FIT Cerca les fitxers objectes en DIR o el FITxer\n"
+
+#: gcov.c:350
+msgid " -p, --preserve-paths Preserve all pathname components\n"
+msgstr ""
+
+#: gcov.c:351
+#, c-format
+msgid ""
+"\n"
+"For bug reporting instructions, please see:\n"
+"%s.\n"
+msgstr ""
+"\n"
+"Per a instrucions d'informe de bug, si us plau consulta:\n"
+"%s.\n"
+
+#: gcov.c:361
+#, c-format
+msgid "gcov (GCC) %s\n"
+msgstr "gcov (GCC) %s\n"
+
+#: gcov.c:362
+msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
+msgstr "Copyright (C) 2001 Free Software Foundation, Inc.\n"
+
+#: gcov.c:500
+#, c-format
+msgid "Could not open basic block file %s.\n"
+msgstr "No es pot obrir fitxer de bloc bàsic %s.\n"
+
+#: gcov.c:507
+#, c-format
+msgid "Could not open program flow graph file %s.\n"
+msgstr "No es pot obrir el fitxer del graf de fluix del programa %s.\n"
+
+#: gcov.c:524
+#, c-format
+msgid "Could not open data file %s.\n"
+msgstr "No es pot obrir fitxer de dades %s.\n"
+
+#: gcov.c:525
+msgid "Assuming that all execution counts are zero.\n"
+msgstr "Assumint que tots els comptes d'execició estan a zero.\n"
+
+#: gcov.c:534
+#, c-format
+msgid "No executable code associated with file %s.\n"
+msgstr "No hi ha codi executable associat al fitxer %s.\n"
+
+#: gcov.c:1186
+#, c-format
+msgid "%s of %d lines executed in %s %s\n"
+msgstr "es van executar %s de %d línies en %s %s\n"
+
+#: gcov.c:1191
+#, c-format
+msgid "No executable lines in %s %s\n"
+msgstr "No hi ha línies de codi font executable en %s %s\n"
+
+#: gcov.c:1198
+#, c-format
+msgid "%s of %d branches executed in %s %s\n"
+msgstr "%s de %d ramificacions executades en %s %s\n"
+
+#: gcov.c:1203
+#, c-format
+msgid "%s of %d branches taken at least once in %s %s\n"
+msgstr "%s de %d ramificacions visitades almenys una vegada en %s %s\n"
+
+#: gcov.c:1209
+#, c-format
+msgid "No branches in %s %s\n"
+msgstr "No hi ha ramificacions en %s %s\n"
+
+#: gcov.c:1211
+#, c-format
+msgid "%s of %d calls executed in %s %s\n"
+msgstr "%s de %d cridades executades en %s %s\n"
+
+#: gcov.c:1216
+#, c-format
+msgid "No calls in %s %s\n"
+msgstr "No hi ha cridades en %s %s\n"
+
+#: gcov.c:1351
+#, c-format
+msgid "didn't use all bb entries of graph, function %s\n"
+msgstr "no es van usar totes les entrades bb del graf, funció %s\n"
+
+#: gcov.c:1353
+#, c-format
+msgid "block_num = %ld, num_blocks = %d\n"
+msgstr "block_num = %ld, num_blocks = %d\n"
+
+#: gcov.c:1367
+#, c-format
+msgid "ERROR: unexpected line number %ld\n"
+msgstr ""
+
+#: gcov.c:1383
+#, c-format
+msgid "ERROR: too many basic blocks in function %s\n"
+msgstr "ERROR: massa blocs bàsics en la funció %s\n"
+
+#: gcov.c:1398
+#, c-format
+msgid "ERROR: out of range line number in function %s\n"
+msgstr "ERROR: nombre de línies fora de rang en la funció %s\n"
+
+#: gcov.c:1470
+#, c-format
+msgid "Could not open source file %s.\n"
+msgstr "No es pot obrir el fitxer de codi font %s.\n"
+
+#: gcov.c:1480
+#, c-format
+msgid "Warning: source file %s is newer than %s\n"
+msgstr "Avís: el fitxer actual %s és més nou que %s\n"
+
+#: gcov.c:1510
+#, c-format
+msgid "Unexpected EOF while reading source file %s.\n"
+msgstr "EOF inesperat mentre es llegia el fitxer de codi font %s.\n"
+
+#: gcov.c:1532
+#, c-format
+msgid "call %2d never executed\n"
+msgstr "la cridada %2d mai s'executa\n"
+
+#: gcov.c:1535
+#, c-format
+msgid "call %2d returns %s\n"
+msgstr "la cridada %2d retorna %s\n"
+
+#: gcov.c:1543
+#, c-format
+msgid "branch %2d never executed\n"
+msgstr "la ramificació %2d mai s'executa\n"
+
+#: gcov.c:1546
+#, c-format
+msgid "branch %2d taken %s\n"
+msgstr "ramificació %2d presa %s\n"
+
+#: gcov.c:1610
+#, c-format
+msgid "Creating %s.\n"
+msgstr "Creant %s.\n"
+
+#: gcov.c:1613
+#, c-format
+msgid "Error writing output file %s.\n"
+msgstr "Error a l'escriure al fitxer de sortida %s.\n"
+
+#: gcov.c:1618
+#, c-format
+msgid "Could not open output file %s.\n"
+msgstr "No es pot obrir el fitxer de sortida %s.\n"
+
+#: gcse.c:763
+#, c-format
+msgid "GCSE disabled: %d > 1000 basic blocks and %d >= 20 edges/basic block"
+msgstr "GCSE desactivat: %d > 1000 blocs bàsics i %d >= 20 blocs bord/bàsics"
+
+#: gcse.c:775
+#, c-format
+msgid "GCSE disabled: %d basic blocks and %d registers"
+msgstr "GCSE desactivat: %d blocs bàsics i %d registres"
+
+#: genautomata.c:1490
+#, c-format
+msgid "Name `%s' contains quotes"
+msgstr ""
+
+#: genautomata.c:1621
+#, c-format
+msgid "invalid string `%s' in define_cpu_unit"
+msgstr "cadena \"%s\" invàlida en define_cpu_unit"
+
+#: genautomata.c:1650
+#, c-format
+msgid "invalid string `%s' in define_query_cpu_unit"
+msgstr "cadena \"%s\" invàlida en define_query_cpu_unit"
+
+#: genautomata.c:1682 genautomata.c:1685
+#, c-format
+msgid "invalid string `%s' in define_bypass"
+msgstr "cadena \"%s\" invàlida en define_bypass"
+
+#: genautomata.c:1720
+#, c-format
+msgid "invalid first string `%s' in exclusion_set"
+msgstr "primera cadena \"%s\" invàlida en exclusion_set"
+
+#: genautomata.c:1724
+#, c-format
+msgid "invalid second string `%s' in exclusion_set"
+msgstr "segona cadena \"%s\" invàlida en exclusion_set"
+
+#: genautomata.c:1760
+#, c-format
+msgid "invalid first string `%s' in presence_set"
+msgstr "primera cadena \"%s\" invàlida en presence_set"
+
+#: genautomata.c:1764
+#, c-format
+msgid "invalid second string `%s' in presence_set"
+msgstr ""
+
+#: genautomata.c:1800
+#, c-format
+msgid "invalid first string `%s' in absence_set"
+msgstr "primera cadena \"%s\" invàlida en absence_set"
+
+#: genautomata.c:1804
+#, c-format
+msgid "invalid second string `%s' in absence_set"
+msgstr ""
+
+#: genautomata.c:1837
+#, c-format
+msgid "invalid string `%s' in define_automaton"
+msgstr ""
+
+#: genautomata.c:1868
+#, c-format
+msgid "invalid option `%s' in automata_option"
+msgstr "opció·\"%s\" invàlida en automata_option"
+
+#: genautomata.c:1890
+#, c-format
+msgid "garbage after ) in reservation `%s'"
+msgstr ""
+
+#: genautomata.c:1921 genautomata.c:1954 genautomata.c:1981
+#, c-format
+msgid "invalid `%s' in reservation `%s'"
+msgstr "\"%s\" invàlid en la reservació \"%s\""
+
+#: genautomata.c:1932
+#, c-format
+msgid "repetition `%s' <= 1 in reservation `%s'"
+msgstr ""
+
+#: genautomata.c:2425
+#, c-format
+msgid "unit `%s' in exclusion is not declared"
+msgstr ""
+
+#: genautomata.c:2427
+#, c-format
+msgid "`%s' in exclusion is not unit"
+msgstr ""
+
+#: genautomata.c:2465
+#, c-format
+msgid "unit `%s' excludes itself"
+msgstr "la unitat \"%s\" s'exclou a ella mateixa"
+
+#: genautomata.c:2473
+#, c-format
+msgid "units `%s' and `%s' in exclusion set belong to different automata"
+msgstr ""
+
+#: genautomata.c:2603 genautomata.c:2609
+#, c-format
+msgid "unit `%s' excludes and requires presence of `%s'"
+msgstr ""
+
+#: genautomata.c:2623 genautomata.c:2629
+#, c-format
+msgid "unit `%s' requires absence and presence of `%s'"
+msgstr ""
+
+#: genautomata.c:2692 genautomata.c:2695
+#, c-format
+msgid "repeated declaration of automaton `%s'"
+msgstr "declaració repetida de l'autòmat \"%s\""
+
+#: genautomata.c:2711
+#, c-format
+msgid "define_insn_reservation `%s' has negative latency time"
+msgstr ""
+
+#: genautomata.c:2717
+#, c-format
+msgid "`%s' is already used as insn reservation name"
+msgstr "\"%s\" ja es va utilitzar com un nom de reservació de insn"
+
+#: genautomata.c:2723
+#, c-format
+msgid "define_bypass `%s - %s' has negative latency time"
+msgstr ""
+
+#: genautomata.c:2737
+#, c-format
+msgid "automaton `%s' is not declared"
+msgstr "l'autòmat \"%s\" no es va declarar"
+
+#: genautomata.c:2747
+#, c-format
+msgid "define_unit `%s' without automaton when one defined"
+msgstr ""
+
+#: genautomata.c:2753
+#, c-format
+msgid "`%s' is declared as cpu unit"
+msgstr "\"%s\" es declarat com una unitat de cpu"
+
+#: genautomata.c:2762
+#, c-format
+msgid "`%s' is declared as cpu reservation"
+msgstr "\"%s\" està declarat com una reservació de cpu"
+
+#: genautomata.c:2772
+#, c-format
+msgid "repeated declaration of unit `%s'"
+msgstr "declaració repetida de la unitat \"%s\""
+
+#: genautomata.c:2775
+#, c-format
+msgid "repeated declaration of reservation `%s'"
+msgstr "declaració repetida de la reservació \"%s\""
+
+#: genautomata.c:2790 genautomata.c:2793
+#, c-format
+msgid "there is no insn reservation `%s'"
+msgstr "no hi ha reservació de insn \"%s\""
+
+#: genautomata.c:2810 genautomata.c:2815
+#, c-format
+msgid "the same bypass `%s - %s' is already defined"
+msgstr "el mateix bypass \"%s - %s\" ja està definit"
+
+#: genautomata.c:2820
+#, c-format
+msgid "bypass `%s - %s' is already defined"
+msgstr "el bypass \"%s - %s\" ja està definit"
+
+#: genautomata.c:2925 genautomata.c:2927
+#, c-format
+msgid "automaton `%s' is not used"
+msgstr "l'autòmat \"%s\" no s'utilitza"
+
+#: genautomata.c:2950
+#, c-format
+msgid "undeclared unit or reservation `%s'"
+msgstr ""
+
+#: genautomata.c:3028 genautomata.c:3030
+#, c-format
+msgid "unit `%s' is not used"
+msgstr "la unitat \"%s\" no s'utilitza"
+
+#: genautomata.c:3035 genautomata.c:3037
+#, c-format
+msgid "reservation `%s' is not used"
+msgstr "la reservació \"%s\" no s'utilitza"
+
+#: genautomata.c:3134
+#, c-format
+msgid "cycle in definition of reservation `%s'"
+msgstr "cicle en la definició de la reservació \"%s\""
+
+#: genautomata.c:5333
+#, c-format
+msgid "Units `%s' and `%s' should be in the same automaton"
+msgstr ""
+
+#: genautomata.c:9441
+msgid "-split has no argument."
+msgstr "-split no té arguments"
+
+#: genautomata.c:9442
+msgid "option `-split' has not been implemented yet\n"
+msgstr "l'opció \"-split\" encara no s'ha implementat\n"
+
+#: genautomata.c:9486 genautomata.c:9491
+#, c-format
+msgid "Automaton `%s': Insn `%s' will never be issued"
+msgstr ""
+
+#: genautomata.c:9498 genautomata.c:9501
+#, c-format
+msgid "Insn `%s' will never be issued"
+msgstr ""
+
+#: genautomata.c:9649
+msgid "Errors in DFA description"
+msgstr "Errors en la descripció DFA"
+
+#: genautomata.c:9732
+#, c-format
+msgid "Error in writing DFA description file %s"
+msgstr "Error a l'escriure el fitxer de descripció DFA %s"
+
+#: genconditions.c:196
+msgid "No input file name."
+msgstr "No hi ha fitxers d'entrada"
+
+#: ggc-page.c:1265
+msgid "open /dev/zero"
+msgstr ""
+
+#: graph.c:420 profile.c:1204 profile.c:1211 toplev.c:1836 toplev.c:5168
+#: f/com.c:14210 java/jcf-parse.c:917 java/jcf-parse.c:1063 java/lex.c:1776
+#: objc/objc-act.c:449
+#, c-format
+msgid "can't open %s"
+msgstr "no és pot obrir %s"
+
+#: haifa-sched.c:196
+#, c-format
+msgid "fix_sched_param: unknown param: %s"
+msgstr "fix_sched_param: paràmetre desconegut: %s"
+
+#: integrate.c:174
+msgid "function cannot be inline"
+msgstr "la funció no pot ser inline"
+
+#: integrate.c:178
+msgid "varargs function cannot be inline"
+msgstr "la funció varargs no pot ser inline"
+
+#: integrate.c:181
+msgid "function using alloca cannot be inline"
+msgstr "la funció que usa alloca no pot ser inline"
+
+#: integrate.c:184
+msgid "function using setjmp cannot be inline"
+msgstr "la funció que usa setjmp no pot ser inline"
+
+#: integrate.c:187
+msgid "function uses __builtin_eh_return"
+msgstr "la funció usa __builtin_eh_return"
+
+#: integrate.c:190
+msgid "function with nested functions cannot be inline"
+msgstr "una funció amb funcions niades no pot ser inline"
+
+#: integrate.c:194
+msgid "function with label addresses used in initializers cannot inline"
+msgstr "una funció amb adreces d'etiquetes usada en iniciadors no pot ser inline"
+
+#: integrate.c:201 integrate.c:245
+msgid "function too large to be inline"
+msgstr "la funció és massa gran per a ser inline"
+
+#: integrate.c:211
+msgid "no prototype, and parameter address used; cannot be inline"
+msgstr "no hi ha prototip, i s'usen adreces de paràmetre; no pot ser inline"
+
+#: integrate.c:218 integrate.c:263
+msgid "inline functions not supported for this return value type"
+msgstr "no es dóna suport a funcions inline per a aquest tipus de valor de retorn"
+
+#: integrate.c:223
+msgid "function with varying-size return value cannot be inline"
+msgstr "una funció amb valor de retorn de grandària variable no pot ser inline"
+
+#: integrate.c:230
+msgid "function with varying-size parameter cannot be inline"
+msgstr "una funció amb paràmetre de grandària variable no pot ser inline"
+
+#: integrate.c:233
+msgid "function with transparent unit parameter cannot be inline"
+msgstr "una funció amb paràmetre d'unitat transparent no pot ser inline"
+
+#: integrate.c:252
+msgid "function with computed jump cannot inline"
+msgstr "una funció amb salt calculat no pot ser inline"
+
+#: integrate.c:256
+msgid "function with nonlocal goto cannot be inline"
+msgstr "una funció amb goto no local no pot ser inline"
+
+#: integrate.c:270
+msgid "function with target specific attribute(s) cannot be inlined"
+msgstr "una funció amb atribut(s) específic(s) de l'objectiu no pot ser inline"
+
+#: line-map.c:198
+#, c-format
+msgid "In file included from %s:%u"
+msgstr "En el fitxer inclòs dès de %s:%u"
+
+#. Translators note: this message is used in conjunction
+#. with "In file included from %s:%ld" and some other
+#. tricks. We want something like this:
+#.
+#. | In file included from sys/select.h:123,
+#. | from sys/types.h:234,
+#. | from userfile.c:31:
+#. | bits/select.h:45: <error message here>
+#.
+#. with all the "from"s lined up.
+#. The trailing comma is at the beginning of this message,
+#. and the trailing colon is not translated.
+#: line-map.c:216
+#, c-format
+msgid ""
+",\n"
+" from %s:%u"
+msgstr ""
+",\n"
+" dès de %s:%u"
+
+#. If we didn't find this parameter, issue an error message.
+#: params.c:80
+#, c-format
+msgid "invalid parameter `%s'"
+msgstr "el paràmetre \"%s\" és invàlid"
+
+#: profile.c:397
+#, c-format
+msgid "Profile does not match flowgraph of function %s (out of date?)"
+msgstr ""
+
+#: profile.c:400
+msgid ".da file corrupted"
+msgstr "fitxer .da corrupte"
+
+#: profile.c:634
+#, c-format
+msgid "corrupted profile info: prob for %d-%d thought to be %d"
+msgstr "informació de profil corrupta: prob per a %d-%d pensa ser %d"
+
+#: profile.c:1226
+#, c-format
+msgid "file %s not found, execution counts assumed to be zero"
+msgstr "no es troba el fitxer %s, s'assumeix que el compte d'execució és zero."
+
+#: protoize.c:542
+#, c-format
+msgid "%s: internal abort\n"
+msgstr "%s: abandó intern\n"
+
+#: protoize.c:633
+#, c-format
+msgid "%s: error writing file `%s': %s\n"
+msgstr "%s: error a l'escriure al fitxer \"%s\": %s\n"
+
+#: protoize.c:678
+#, c-format
+msgid "%s: usage '%s [ -VqfnkN ] [ -i <istring> ] [ filename ... ]'\n"
+msgstr "%s: ùs \"%s [ -VqfnkN ] [ -i <icadena> ] [ nom_fitxer ... ]\"\n"
+
+#: protoize.c:681
+#, c-format
+msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B <dirname> ] [ filename ... ]'\n"
+msgstr "%s: ùs \"%s [ -VqfnkNlgC ] [ -B <nom_directori> ] [ nom_fitxer ... ]\"\n"
+
+#: protoize.c:788
+#, c-format
+msgid "%s: warning: no read access for file `%s'\n"
+msgstr "%s: avís: no hi ha accés de lectura per al fitxer \"%s\"\n"
+
+#: protoize.c:796
+#, c-format
+msgid "%s: warning: no write access for file `%s'\n"
+msgstr "%s: avís: no hi ha accés d'escriptura per al fitxer \"%s\"\n"
+
+#: protoize.c:804
+#, c-format
+msgid "%s: warning: no write access for dir containing `%s'\n"
+msgstr "%s: avís: no hi ha accés d'escriptura per al directori que conté a \"%s\"\n"
+
+#. Catch cases like /.. where we try to backup to a
+#. point above the absolute root of the logical file
+#. system.
+#: protoize.c:1222
+#, c-format
+msgid "%s: invalid file name: %s\n"
+msgstr "%s: nom de fitxer invàlid: %s\n"
+
+#: protoize.c:1374
+#, c-format
+msgid "%s: %s: can't get status: %s\n"
+msgstr "%s: %s: no es pot obtenir l'estat: %s\n"
+
+#: protoize.c:1395
+#, c-format
+msgid ""
+"\n"
+"%s: fatal error: aux info file corrupted at line %d\n"
+msgstr ""
+"\n"
+"%s: error fatal: fitxer d'informació auxiliar corrupte en la línia %d\n"
+
+#: protoize.c:1731
+#, c-format
+msgid "%s:%d: declaration of function `%s' takes different forms\n"
+msgstr "%s:%d: la declaració de la funció `%s' pren formes diferents\n"
+
+#: protoize.c:1989
+#, c-format
+msgid "%s: compiling `%s'\n"
+msgstr "%s: compilant `%s'\n"
+
+#: protoize.c:2012
+#, c-format
+msgid "%s: wait: %s\n"
+msgstr "%s: esperar: %s\n"
+
+#: protoize.c:2017
+#, c-format
+msgid "%s: subprocess got fatal signal %d\n"
+msgstr "%s: el subproces va rebre el senyal fatal %d\n"
+
+#: protoize.c:2025
+#, c-format
+msgid "%s: %s exited with status %d\n"
+msgstr "%s: %s va acabar amb estat %d\n"
+
+#: protoize.c:2077
+#, c-format
+msgid "%s: warning: missing SYSCALLS file `%s'\n"
+msgstr "%s: avís: falta el fitxer SYSCALLS \"%s\"\n"
+
+#: protoize.c:2086 protoize.c:2115
+#, c-format
+msgid "%s: can't read aux info file `%s': %s\n"
+msgstr "%s: no es pot llegir el fitxer d'informació auxiliar \"%s\": %s\n"
+
+#: protoize.c:2131 protoize.c:2159
+#, c-format
+msgid "%s: can't get status of aux info file `%s': %s\n"
+msgstr "%s: no es pot obtenir l'estat del fitxer d'informació auxiliar \"%s\": %s\n"
+
+#: protoize.c:2187
+#, c-format
+msgid "%s: can't open aux info file `%s' for reading: %s\n"
+msgstr "%s: no es pot obrir el fitxer d'informació auxiliar \"%s\" per a lectura: %s\n"
+
+#: protoize.c:2205
+#, c-format
+msgid "%s: error reading aux info file `%s': %s\n"
+msgstr "%s: error al llegir el fitxer d'informació auxiliar \"%s\": %s\n"
+
+#: protoize.c:2218
+#, c-format
+msgid "%s: error closing aux info file `%s': %s\n"
+msgstr "%s: error al tancar el fitxer d'informació auxiliar \"%s\": %s\n"
+
+#: protoize.c:2234
+#, c-format
+msgid "%s: can't delete aux info file `%s': %s\n"
+msgstr "%s: no es pot esborrar el fitxer d'informació auxiliar \"%s\": %s\n"
+
+#: protoize.c:2316 protoize.c:4318
+#, c-format
+msgid "%s: can't delete file `%s': %s\n"
+msgstr "%s: no es pot esborrar el fitxer \"%s\": %s\n"
+
+#: protoize.c:2395
+#, c-format
+msgid "%s: warning: can't rename file `%s' to `%s': %s\n"
+msgstr "%s: avís: no es pot renomenar el fitxer \"%s\" a \"%s\": %s\n"
+
+#: protoize.c:2520
+#, c-format
+msgid "%s: conflicting extern definitions of '%s'\n"
+msgstr "%s: definicions externes de \"%s\" en conflicte\n"
+
+#: protoize.c:2524
+#, c-format
+msgid "%s: declarations of '%s' will not be converted\n"
+msgstr "%s: les declaracions de \"%s\" no es convertiran\n"
+
+#: protoize.c:2526
+#, c-format
+msgid "%s: conflict list for '%s' follows:\n"
+msgstr "%s: llistes de conflictes per a \"%s\" a continuació:\n"
+
+#: protoize.c:2559
+#, c-format
+msgid "%s: warning: using formals list from %s(%d) for function `%s'\n"
+msgstr "%s: avís: usant llistes formals de %s(%d) per a la funció \"%s\"\n"
+
+#: protoize.c:2599
+#, c-format
+msgid "%s: %d: `%s' used but missing from SYSCALLS\n"
+msgstr "%s: %d: s'usa \"%s\" però falta en SYSCALLS\n"
+
+#: protoize.c:2605
+#, c-format
+msgid "%s: %d: warning: no extern definition for `%s'\n"
+msgstr "%s: %d: avís: no hi ha definició extern per a \"%s\"\n"
+
+#: protoize.c:2636
+#, c-format
+msgid "%s: warning: no static definition for `%s' in file `%s'\n"
+msgstr "%s: avís: no hi ha definició static per a \"%s\" en el fitxer \"%s\"\n"
+
+#: protoize.c:2642
+#, c-format
+msgid "%s: multiple static defs of `%s' in file `%s'\n"
+msgstr "%s: definicions static múltiples de \"%s\" en el fitxer \"%s\"\n"
+
+#: protoize.c:2815 protoize.c:2818
+#, c-format
+msgid "%s: %d: warning: source too confusing\n"
+msgstr "%s: %d: avís: codi font massa confús\n"
+
+#: protoize.c:3024
+#, c-format
+msgid "%s: %d: warning: varargs function declaration not converted\n"
+msgstr "%s: %d: avís: no es va convertir la declaració de la funció varargs\n"
+
+#: protoize.c:3039
+#, c-format
+msgid "%s: declaration of function `%s' not converted\n"
+msgstr "%s: no es va convertir la declaració de la funció \"%s\"\n"
+
+#: protoize.c:3162
+#, c-format
+msgid "%s: warning: too many parameter lists in declaration of `%s'\n"
+msgstr "%s: avís: massa llistes de paràmetres en la declaració de \"%s\"\n"
+
+#: protoize.c:3183
+#, c-format
+msgid ""
+"\n"
+"%s: warning: too few parameter lists in declaration of `%s'\n"
+msgstr ""
+"\n"
+"%s: avís: molt poques llistes de paràmetres en la declaració de \"%s\"\n"
+
+#: protoize.c:3281
+#, c-format
+msgid "%s: %d: warning: found `%s' but expected `%s'\n"
+msgstr "%s: %d: avís: es va trobar \"%s\" però s'esperava \"%s\"\n"
+
+#: protoize.c:3459
+#, c-format
+msgid "%s: local declaration for function `%s' not inserted\n"
+msgstr "%s: no es va inserir la declaració local per a la funció \"%s\"\n"
+
+#: protoize.c:3486
+#, c-format
+msgid ""
+"\n"
+"%s: %d: warning: can't add declaration of `%s' into macro call\n"
+msgstr ""
+"\n"
+"%s: %d: avís: no es pot afegir la declaració per a\"%s\" en la cridada de macro\n"
+
+#: protoize.c:3560
+#, c-format
+msgid "%s: global declarations for file `%s' not inserted\n"
+msgstr "%s: no es van inserir les declaracions globals per al fitxer \"%s\"\n"
+
+#: protoize.c:3651 protoize.c:3681
+#, c-format
+msgid "%s: definition of function `%s' not converted\n"
+msgstr "%s: no es va convertir la definició de la funció \"%s\"\n"
+
+#: protoize.c:3670
+#, c-format
+msgid "%s: %d: warning: definition of %s not converted\n"
+msgstr "%s: %d: avís: no es va convertir la definició de %s\n"
+
+#: protoize.c:4000
+#, c-format
+msgid "%s: found definition of `%s' at %s(%d)\n"
+msgstr "%s: es va trobar la definició de \"%s\" en %s(%d)\n"
+
+#. If we make it here, then we did not know about this
+#. function definition.
+#: protoize.c:4016
+#, c-format
+msgid "%s: %d: warning: `%s' excluded by preprocessing\n"
+msgstr "%s: %d: avís: \"%s\" va ser exclòs pel preprocessament\n"
+
+#: protoize.c:4019
+#, c-format
+msgid "%s: function definition not converted\n"
+msgstr "%s: no es va convertir la definició de la funció\n"
+
+#: protoize.c:4078
+#, c-format
+msgid "%s: `%s' not converted\n"
+msgstr "%s: no es va convertir \"%s\"\n"
+
+#: protoize.c:4086
+#, c-format
+msgid "%s: would convert file `%s'\n"
+msgstr "%s: es podria convertir el fitxer \"%s\"\n"
+
+#: protoize.c:4089
+#, c-format
+msgid "%s: converting file `%s'\n"
+msgstr "%s: convertint el fitxer \"%s\"\n"
+
+#: protoize.c:4099
+#, c-format
+msgid "%s: can't get status for file `%s': %s\n"
+msgstr "%s: no es pot obtenir l'estat del fitxer \"%s\": %s\n"
+
+#: protoize.c:4141
+#, c-format
+msgid "%s: can't open file `%s' for reading: %s\n"
+msgstr "%s: no es pot obrir el fitxer \"%s\" per a lectura: %s\n"
+
+#: protoize.c:4156
+#, c-format
+msgid ""
+"\n"
+"%s: error reading input file `%s': %s\n"
+msgstr ""
+"\n"
+"%s: error al llegint el fitxer d'entrada \"%s\": %s\n"
+
+#: protoize.c:4190
+#, c-format
+msgid "%s: can't create/open clean file `%s': %s\n"
+msgstr "%s: no es pot crear/obrir el fitxer net \"%s\": %s\n"
+
+#: protoize.c:4295
+#, c-format
+msgid "%s: warning: file `%s' already saved in `%s'\n"
+msgstr "%s: avís: el fitxer \"%s\" ja havia estat guardat en \"%s\"\n"
+
+#: protoize.c:4303
+#, c-format
+msgid "%s: can't link file `%s' to `%s': %s\n"
+msgstr "%s: no es pot enllaçar el fitxer \"%s\" a \"%s\": %s\n"
+
+#: protoize.c:4333
+#, c-format
+msgid "%s: can't create/open output file `%s': %s\n"
+msgstr "%s: no es pot crear/obrir el fitxer de sortida \"%s\": %s\n"
+
+#: protoize.c:4366
+#, c-format
+msgid "%s: can't change mode of file `%s': %s\n"
+msgstr "%s: no es pot canviar la manera del fitxer \"%s\": %s\n"
+
+#: protoize.c:4541
+#, c-format
+msgid "%s: cannot get working directory: %s\n"
+msgstr "%s: no es pot obtenir el directori de treball: %s\n"
+
+#: protoize.c:4639
+#, c-format
+msgid "%s: input file names must have .c suffixes: %s\n"
+msgstr "%s: els noms de fitxer d'entrada deuen tenir sufixos .c: %s\n"
+
+#: ra.c:750
+msgid "Didn't find a coloring.\n"
+msgstr ""
+
+#: reg-stack.c:673
+#, c-format
+msgid "output constraint %d must specify a single register"
+msgstr "la restricció de sortida %d deu especificar un sol registre"
+
+#: reg-stack.c:683
+#, c-format
+msgid "output constraint %d cannot be specified together with \"%s\" clobber"
+msgstr "la restricció de sortida %d no es pot especificar amb el clobber \"%s\""
+
+#: reg-stack.c:706
+msgid "output regs must be grouped at top of stack"
+msgstr "els registres de sortida deuen ser agrupats en la part superior de la pila"
+
+#: reg-stack.c:743
+msgid "implicitly popped regs must be grouped at top of stack"
+msgstr "els registres extrets implícitament deuen ser agrupats en la part superior de la pila"
+
+#: reg-stack.c:762
+#, c-format
+msgid "output operand %d must use `&' constraint"
+msgstr "l'operant de sortida %d deu usar la restricció \"&\""
+
+#: regclass.c:756
+#, c-format
+msgid "can't use '%s' as a %s register"
+msgstr "no es pot usar \"%s\" com un registre %s"
+
+#: regclass.c:771 config/ia64/ia64.c:4304 config/ia64/ia64.c:4311
+#, c-format
+msgid "unknown register name: %s"
+msgstr "nom de registre desconegut: %s"
+
+#: regclass.c:782
+msgid "global register variable follows a function definition"
+msgstr "la variable de registre global segueix a una definició de funció"
+
+#: regclass.c:786
+msgid "register used for two global register variables"
+msgstr "nom de registre usat per dues variables de registre globals"
+
+#: regclass.c:791
+msgid "call-clobbered register used for global register variable"
+msgstr "registre de cridada alterada usat per a una variable de registre global"
+
+#: regrename.c:1899
+#, c-format
+msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)"
+msgstr "validate_value_data: [%u] next_regno erroni per a la cadena buida (%u)"
+
+#: regrename.c:1911
+#, c-format
+msgid "validate_value_data: Loop in regno chain (%u)"
+msgstr "validate_value_data: Cicle en la cadena regno (%u)"
+
+#: regrename.c:1914
+#, c-format
+msgid "validate_value_data: [%u] Bad oldest_regno (%u)"
+msgstr "validate_value_data: [%u] oldest_regno erroni (%u)"
+
+#: regrename.c:1926
+#, c-format
+msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
+msgstr "validate_value_data: [%u] Registre no buit en la cadena (%s %u %i)"
+
+#: reload.c:1229
+msgid "cannot reload integer constant operand in `asm'"
+msgstr "no es pot recarregar operants constants enters en \"asm\""
+
+#: reload.c:1251
+msgid "impossible register constraint in `asm'"
+msgstr "restricció de registres impossible en \"asm\""
+
+#: reload.c:3461
+msgid "`&' constraint used with no register class"
+msgstr "es va usar la restricció \"&\" sense classe de registre"
+
+#: reload.c:3629
+msgid "unable to generate reloads for:"
+msgstr " no es poden generar recarregues per a:"
+
+#: reload.c:3630 reload.c:3844
+msgid "inconsistent operand constraints in an `asm'"
+msgstr "restriccions de operants inconsistents en un \"asm\""
+
+#: reload1.c:1250
+msgid "frame size too large for reliable stack checking"
+msgstr "la grandària del marc és massa gran per a una revisió fiable de la pila"
+
+#: reload1.c:1253
+msgid "try reducing the number of local variables"
+msgstr "intenti reduir el nombre de variables locals"
+
+#: reload1.c:1909
+#, c-format
+msgid "can't find a register in class `%s' while reloading `asm'"
+msgstr "no es pot trobar un registre en la classe \"%s\" mentre es recarrega \"asm\"."
+
+#: reload1.c:1913
+#, c-format
+msgid "unable to find a register to spill in class `%s'"
+msgstr "no es pot trobar un registre per a buidar la classe \"%s\"."
+
+#: reload1.c:1915
+msgid "this is the insn:"
+msgstr "això és el insn:"
+
+#: reload1.c:3938
+msgid "`asm' operand requires impossible reload"
+msgstr "l'operant \"asm\" requereix una recarrega impossible"
+
+#. It's the compiler's fault.
+#: reload1.c:5052
+msgid "could not find a spill register"
+msgstr "no es pot trobar un registre de buidat "
+
+#: reload1.c:5057
+msgid "`asm' operand constraint incompatible with operand size"
+msgstr "la restricció de l'operant \"asm\" és incompatible amb la grandària de l'operant"
+
+#. It's the compiler's fault.
+#: reload1.c:6679
+msgid "VOIDmode on an output"
+msgstr "VOIDmode en una sortida"
+
+#: reload1.c:6680
+msgid "output operand is constant in `asm'"
+msgstr "l'operant de sortida és constant en \"asm\""
+
+#: rtl-error.c:140
+msgid "unrecognizable insn:"
+msgstr "insn no recognoscible:"
+
+#: rtl-error.c:142
+msgid "insn does not satisfy its constraints:"
+msgstr "insn no satisfà les seves restriccions:"
+
+#: rtl.c:535
+#, c-format
+msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d"
+msgstr "revisió RTL: accés de elt %d de \"%s\" amb l'últim elt %d en %s, en %s:%d"
+
+#: rtl.c:550
+#, c-format
+msgid "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
+msgstr "revisió RTL: s'esperava el tipus elt %d \"%c\", es té \"%c\" (rtx %s) en %s, en %s:%d"
+
+#: rtl.c:566
+#, c-format
+msgid "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %s:%d"
+msgstr "revisió RTL: s'esperava el tipus elt %d \"%c\" o \"%c\", es té \"%c\" (rtx %s) en %s, en %s:%d"
+
+#: rtl.c:579
+#, c-format
+msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d"
+msgstr "Revisió RTL: s'esperava el codi \"%s\", es té \"%s\" en %s, en %s:%d"
+
+#: rtl.c:593
+#, c-format
+msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d"
+msgstr "Revisió RTL: s'esperava el codi \"%s\" o \"%s\", es té \"%s\" en %s, en %s:%d"
+
+#: rtl.c:608
+#, c-format
+msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
+msgstr "Revisió RTL: accés de elt %d de vector amb l'últim elt %d en %s, en %s:%d"
+
+#: rtl.c:623
+#, c-format
+msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d"
+msgstr "Revisió RTL: es va usar %s amb el codi rtx inesperat \"%s\" en %s, en %s:%d"
+
+#: stmt.c:766
+#, c-format
+msgid "jump to `%s' invalidly jumps into binding contour"
+msgstr "el salt a \"%s\" salta de forma invàlida a un contorn d'unió"
+
+#: stmt.c:1002 stmt.c:3766
+#, c-format
+msgid "label `%s' used before containing binding contour"
+msgstr "es va usar abans l'etiqueta \"%s\" que contenia un contorn d'unió"
+
+#: stmt.c:1190
+msgid "output operand constraint lacks `='"
+msgstr "la restricció d'operant de sortida manca de \"=\""
+
+#: stmt.c:1205
+#, c-format
+msgid "output constraint `%c' for operand %d is not at the beginning"
+msgstr "la restricció de sortida \"%c\" per a l'operant %d no està al principi"
+
+#: stmt.c:1227
+msgid "operand constraint contains incorrectly positioned '+' or '='"
+msgstr "la restricció d'operant conté \"+\" o \"=\" mal posicionat"
+
+#: stmt.c:1233 stmt.c:1337
+#, c-format
+msgid "`%%' constraint used with last operand"
+msgstr "restricció \"%%\" utilitzada amd l'últim operant"
+
+#: stmt.c:1252
+msgid "matching constraint not valid in output operand"
+msgstr "la restricció coincident no és vàlida en l'operant de sortida"
+
+#: stmt.c:1328
+#, c-format
+msgid "input operand constraint contains `%c'"
+msgstr "la restricció d'operant d'entrada conté \"%c\""
+
+#: stmt.c:1368
+msgid "matching constraint references invalid operand number"
+msgstr "la restricció de coincidència fa referència a un nombre d'operant no vàlid"
+
+#: stmt.c:1400
+#, c-format
+msgid "invalid punctuation `%c' in constraint"
+msgstr "puntuació invàlida \"%c\" en la restricció"
+
+#: stmt.c:1450
+#, c-format
+msgid "asm-specifier for variable `%s' conflicts with asm clobber list"
+msgstr "els qualificadors asm per a la variable \"%s\" generen conflicte amb la lista d'agrupació asm"
+
+#: stmt.c:1540
+#, c-format
+msgid "unknown register name `%s' in `asm'"
+msgstr "nom de registre desconegut \"%s\" en \"asm\""
+
+#: stmt.c:1588
+#, c-format
+msgid "more than %d operands in `asm'"
+msgstr "més de %d operants en \"asm\""
+
+#: stmt.c:1650
+#, c-format
+msgid "output number %d not directly addressable"
+msgstr "el nombre de sortida %d no és directament dirrectionable"
+
+#: stmt.c:1728
+#, c-format
+msgid "asm operand %d probably doesn't match constraints"
+msgstr "l'operant asm %d probablement no coincideix amb les restriccions"
+
+#: stmt.c:1738
+#, c-format
+msgid "use of memory input without lvalue in asm operand %d is deprecated"
+msgstr ""
+
+#: stmt.c:1889
+msgid "asm clobber conflict with output operand"
+msgstr "l'agrupació asm causa conflictes amb l'operant de sortida"
+
+#: stmt.c:1894
+msgid "asm clobber conflict with input operand"
+msgstr "l'agrupació asm causa conflictes amb l'operant d'entrada"
+
+#: stmt.c:1929
+msgid "too many alternatives in `asm'"
+msgstr "massa alternatives en \"asm\""
+
+#: stmt.c:1941
+msgid "operand constraints for `asm' differ in number of alternatives"
+msgstr "les restriccions d'operants per a \"asm\" difereixen en el nombre d'alternatives"
+
+#: stmt.c:1994
+#, c-format
+msgid "duplicate asm operand name '%s'"
+msgstr "nom d'operant asm \"%s\" duplicat"
+
+#: stmt.c:2081
+msgid "missing close brace for named operand"
+msgstr "falta la clau final per a l'operant nomenat"
+
+#: stmt.c:2109
+#, c-format
+msgid "undefined named operand '%s'"
+msgstr "operant nomenat no definit \"%s\""
+
+#: stmt.c:3703
+#, c-format
+msgid "unused variable `%s'"
+msgstr "variable \"%s\" sense ús"
+
+#: stmt.c:5189
+#, c-format
+msgid "enumeration value `%s' not handled in switch"
+msgstr "el valor d'enumeració \"%s\" no es maneja en un switch"
+
+#: stmt.c:5214 stmt.c:5234
+#, c-format
+msgid "case value `%ld' not in enumerated type"
+msgstr "el valor de casi \"%ld\" no és un tipus enumerat"
+
+#: stmt.c:5217 stmt.c:5237
+#, c-format
+msgid "case value `%ld' not in enumerated type `%s'"
+msgstr "el valor de casi \"%ld\" no és un tipus enumerat \"%s\""
+
+#: stmt.c:5310
+msgid "switch missing default case"
+msgstr "mancada el casi per defecte per a un switch"
+
+#: stor-layout.c:178
+msgid "type size can't be explicitly evaluated"
+msgstr "la grandària del tipus no pot ser avaluat explícitament"
+
+#: stor-layout.c:180
+msgid "variable-size type declared outside of any function"
+msgstr "tipus de grandària variable declarat fora de qualsevol funció"
+
+#: stor-layout.c:487
+#, c-format
+msgid "size of `%s' is %d bytes"
+msgstr "la grandària de \"%s\" és de %d octets"
+
+#: stor-layout.c:489
+#, c-format
+msgid "size of `%s' is larger than %d bytes"
+msgstr "la grandària de \"%s\" és major que %d octets"
+
+#: stor-layout.c:909 stor-layout.c:1325
+#, c-format
+msgid "packed attribute causes inefficient alignment for `%s'"
+msgstr "l'atribut packed causa una alineació ineficient per a \"%s\""
+
+#: stor-layout.c:911 stor-layout.c:1327
+#, c-format
+msgid "packed attribute is unnecessary for `%s'"
+msgstr "no és necessari l'atribut packed per a \"%s\""
+
+#: stor-layout.c:926
+#, c-format
+msgid "padding struct to align `%s'"
+msgstr "estructura de farcit per a alinear \"%s\""
+
+#: stor-layout.c:1289
+msgid "padding struct size to alignment boundary"
+msgstr "grandària de l'estructura de farcit per als límits d'alineació"
+
+#: stor-layout.c:1332
+msgid "packed attribute causes inefficient alignment"
+msgstr "l'atribut packed causa una alineació ineficient"
+
+#: stor-layout.c:1334
+msgid "packed attribute is unnecessary"
+msgstr "no és necessari l'atribut packed"
+
+#: timevar.c:322
+#, c-format
+msgid "cannot timevar_pop '%s' when top of timevars stack is '%s'"
+msgstr ""
+
+#: timevar.c:453
+msgid ""
+"\n"
+"Execution times (seconds)\n"
+msgstr ""
+"\n"
+"Temps d'execució (segons)\n"
+
+#. Print total time.
+#: timevar.c:503
+msgid " TOTAL :"
+msgstr " TOTAL :"
+
+#: timevar.c:539
+#, c-format
+msgid "time in %s: %ld.%06ld (%ld%%)\n"
+msgstr "temps en %s: %ld.%06ld (%ld%%)\n"
+
+#: tlink.c:399
+#, c-format
+msgid "collect: reading %s\n"
+msgstr "collect: llegint %s\n"
+
+#: tlink.c:502
+#, c-format
+msgid "collect: recompiling %s\n"
+msgstr "collect: recompilant %s\n"
+
+#: tlink.c:674
+#, c-format
+msgid "collect: tweaking %s in %s\n"
+msgstr "collect: alterant %s en %s\n"
+
+#: tlink.c:721
+msgid "collect: relinking\n"
+msgstr "collect: reenllaçant\n"
+
+#: tlink.c:730
+#, c-format
+msgid "ld returned %d exit status"
+msgstr "ld va retornar l'estat de sortida %d"
+
+#: toplev.c:920
+msgid "Generate debugging info in default format"
+msgstr "Generar informació de depuració en el format per omissió"
+
+#: toplev.c:921
+msgid "Generate debugging info in default extended format"
+msgstr "Generar informació de depuració en el format estès per omissió"
+
+#: toplev.c:923
+msgid "Generate STABS format debug info"
+msgstr "Generar informació de depuració en el format STABS"
+
+#: toplev.c:924
+msgid "Generate extended STABS format debug info"
+msgstr "Generar informació de depuració en el format STABS estès"
+
+#: toplev.c:927
+msgid "Generate DWARF-1 format debug info"
+msgstr "Generar informació de depuració en el format DWARF-1"
+
+#: toplev.c:929
+msgid "Generate extended DWARF-1 format debug info"
+msgstr "Generar informació de depuració en el format DWARF-1 estès"
+
+#: toplev.c:932
+msgid "Generate DWARF-2 debug info"
+msgstr "Generar informació de depuració en el format DWARF-2"
+
+#: toplev.c:935
+msgid "Generate XCOFF format debug info"
+msgstr "Generar informació de depuració en el format XCOFF"
+
+#: toplev.c:936
+msgid "Generate extended XCOFF format debug info"
+msgstr "Generar informació de depuració en el format XCOFF estès"
+
+#: toplev.c:939
+msgid "Generate COFF format debug info"
+msgstr "Generar informació de depuració en el format COFF"
+
+#: toplev.c:942
+msgid "Generate VMS format debug info"
+msgstr "Generar informació de depuració en el format VMS"
+
+#: toplev.c:981
+msgid "Perform DWARF2 duplicate elimination"
+msgstr "Realitzar l'eliminació de DWARF2 duplicats"
+
+#: toplev.c:983
+msgid "Do not store floats in registers"
+msgstr "No guardar floats en els registres"
+
+#: toplev.c:985
+msgid "Consider all mem refs through pointers as volatile"
+msgstr "Considerar totes les referències a memòria a través de punters com volatile"
+
+#: toplev.c:987
+msgid "Consider all mem refs to global data to be volatile"
+msgstr "Considerar totes les referències a dades globals com volatile"
+
+#: toplev.c:989
+msgid "Consider all mem refs to static data to be volatile"
+msgstr "Considerar totes les referències a dades static com volatile"
+
+#: toplev.c:991
+msgid "Defer popping functions args from stack until later"
+msgstr "Diferir l'extracció d'arguments de funcions de la pila fins més tard"
+
+#: toplev.c:993
+msgid "When possible do not generate stack frames"
+msgstr "Quan sigui possible no generar marcs de pila"
+
+#: toplev.c:995
+msgid "Optimize sibling and tail recursive calls"
+msgstr "Optimitzar les cridades recursives germanades i d'extrem"
+
+#: toplev.c:997
+msgid "Perform superblock formation via tail duplication"
+msgstr ""
+
+#: toplev.c:999
+msgid "When running CSE, follow jumps to their targets"
+msgstr "Quan s'estigui executant CSE, seguir als salts als seus objectius"
+
+#: toplev.c:1001
+msgid "When running CSE, follow conditional jumps"
+msgstr "Quan s'estigui executant CSE, seguir als salts condicionals"
+
+#: toplev.c:1003
+msgid "Perform a number of minor, expensive optimizations"
+msgstr "Realitzar un nombre menor d'optimitzacions costoses"
+
+#: toplev.c:1005
+msgid "Perform jump threading optimizations"
+msgstr "Realitzar optimitzacions de filat de salts"
+
+#: toplev.c:1007
+msgid "Perform strength reduction optimizations"
+msgstr "Realitzar optimitzacions de reducció de força"
+
+#: toplev.c:1009
+msgid "Perform loop unrolling when iteration count is known"
+msgstr "Realitzar el desenrollament del cicle quan es coneix el compte d'iteració"
+
+#: toplev.c:1011
+msgid "Perform loop unrolling for all loops"
+msgstr "Realitzar el desenrollament del cicle per a tots els cicles"
+
+#: toplev.c:1013
+msgid "Generate prefetch instructions, if available, for arrays in loops"
+msgstr "Generar instruccions de precarregament, si estan disponibles, per a matrius en cicles"
+
+#: toplev.c:1015
+msgid "Force all loop invariant computations out of loops"
+msgstr "Forçar que totes les computacions invariantes del cicle siguin fora del cicle"
+
+#: toplev.c:1017
+msgid "Strength reduce all loop general induction variables"
+msgstr "Enfortir la reducció de totes les variables generals d'inducció de cicle"
+
+#: toplev.c:1019
+msgid "Store strings in writable data section"
+msgstr "Guardar les cadenes en la secció de dades modificables"
+
+#: toplev.c:1021
+msgid "Enable machine specific peephole optimizations"
+msgstr "Activar les optimitzacions de forats específiques de la màquina"
+
+#: toplev.c:1023
+msgid "Copy memory operands into registers before using"
+msgstr "Copiar els operants de memòria en registres abans d'usar-los"
+
+#: toplev.c:1025
+msgid "Copy memory address constants into regs before using"
+msgstr "Copiar les constants d'adreces de memòria en registres abans d'usar-los"
+
+#: toplev.c:1027
+msgid "Allow function addresses to be held in registers"
+msgstr "Permetre que les adreces de les funcions es conserven en registres"
+
+#: toplev.c:1029
+msgid "Integrate simple functions into their callers"
+msgstr "Integrar les funcions simples en els seus invocators"
+
+#: toplev.c:1031
+msgid "Generate code for funcs even if they are fully inlined"
+msgstr "Generar codi per a les funcions encara si estan completament inline"
+
+#: toplev.c:1033
+msgid "Pay attention to the 'inline' keyword"
+msgstr "Parar esment a la paraula clau \"inline\""
+
+#: toplev.c:1035
+msgid "Emit static const variables even if they are not used"
+msgstr "Emetre variables static const encara si no s'usen"
+
+#: toplev.c:1037
+msgid "Check for syntax errors, then stop"
+msgstr "Buscar errors de sintaxi, i aleshores detenir-se"
+
+#: toplev.c:1039
+msgid "Mark data as shared rather than private"
+msgstr "Marcar dades com compartits en lloc de privats"
+
+#: toplev.c:1041
+msgid "Enable saving registers around function calls"
+msgstr "Permetre guardar registres al voltant de cridades de funció"
+
+#: toplev.c:1043
+msgid "Return 'short' aggregates in memory, not registers"
+msgstr "Retornar els agregats \"short\" en memòria, no en registres"
+
+#: toplev.c:1045
+msgid "Return 'short' aggregates in registers"
+msgstr "Retornar els agregats \"short\" en registres"
+
+#: toplev.c:1047
+msgid "Attempt to fill delay slots of branch instructions"
+msgstr "Intentar emplenar les ranures de retard de les instruccions de ramificació"
+
+#: toplev.c:1049
+msgid "Perform the global common subexpression elimination"
+msgstr "Realitzar l'eliminació de subexpressions comuns globals"
+
+#: toplev.c:1051
+msgid "Perform enhanced load motion during global subexpression elimination"
+msgstr "Realitzar el moviment de càrrega millorada durant l'eliminació de subexpressions globals"
+
+#: toplev.c:1053
+msgid "Perform store motion after global subexpression elimination"
+msgstr "Realitzar el moviment de guardat després de l'eliminació de subexpressions globals"
+
+#: toplev.c:1055
+msgid "Perform the loop optimizations"
+msgstr "Realitzar les optimitzacions de cicle"
+
+#: toplev.c:1057
+msgid "Perform cross-jumping optimization"
+msgstr "Realitzar optimitzacions de salts creuats"
+
+#: toplev.c:1059
+msgid "Perform conversion of conditional jumps to branchless equivalents"
+msgstr ""
+
+#: toplev.c:1061
+msgid "Perform conversion of conditional jumps to conditional execution"
+msgstr "Realitzar la conversió de salts condicionals a execució condicional"
+
+#: toplev.c:1063
+msgid "Run CSE pass after loop optimizations"
+msgstr "Executar un pas CSE abans de les optimitzacions de cicles"
+
+#: toplev.c:1065
+msgid "Run the loop optimizer twice"
+msgstr "Executar el optimizador de cicles dues vegades"
+
+#: toplev.c:1067
+msgid "Delete useless null pointer checks"
+msgstr "Esborrar les revisions de punters nuls sense ús"
+
+#: toplev.c:1069
+msgid "Reschedule instructions before register allocation"
+msgstr "Recalendaritzar les instruccions abans de l'allotjament de registres"
+
+#: toplev.c:1071
+msgid "Reschedule instructions after register allocation"
+msgstr "Recalendaritzar les instruccions després de l'allotjament de registres"
+
+#: toplev.c:1073
+msgid "Enable scheduling across basic blocks"
+msgstr "Activar la calendarització entre blocs bàsics"
+
+#: toplev.c:1075
+msgid "Allow speculative motion of non-loads"
+msgstr "Permetre el moviment especulatiu de cap càrrega"
+
+#: toplev.c:1077
+msgid "Allow speculative motion of some loads"
+msgstr "Permetre el moviment especulatiu d'unes càrregues"
+
+#: toplev.c:1079
+msgid "Allow speculative motion of more loads"
+msgstr "Permetre el moviment especulatiu de més càrregues"
+
+#: toplev.c:1081
+msgid "Replace add,compare,branch with branch on count reg"
+msgstr "Reemplaçar add,compare,branch per branch en el compte de registres"
+
+#: toplev.c:1083
+msgid "Generate position independent code, if possible"
+msgstr "Generar codi independent de posició, si és possible"
+
+#: toplev.c:1086
+msgid "Enable exception handling"
+msgstr "Activar el maneig d'excepcions"
+
+#: toplev.c:1088
+msgid "Just generate unwind tables for exception handling"
+msgstr "Només generar matrius de desembolico per a maneig d'excepcions"
+
+#: toplev.c:1090
+msgid "Generate unwind tables exact at each instruction boundary"
+msgstr "Generar matrius de desembolico exactament en cada límit d'instrucció"
+
+#: toplev.c:1092
+msgid "Support synchronous non-call exceptions"
+msgstr "Suport per a excepcions síncrones no de cridades"
+
+#: toplev.c:1094
+msgid "Insert arc based program profiling code"
+msgstr "Inserir codi d'anàlisi de perfil basat en el programa arc"
+
+#: toplev.c:1096
+msgid "Create data files needed by gcov"
+msgstr "Crear fitxers de dades necessàries per a gcov"
+
+#: toplev.c:1098
+msgid "Use profiling information for branch probabilities"
+msgstr "Usar la informació d'anàlisi de perfil per a les probabilitats de ramificació"
+
+#: toplev.c:1100
+msgid "Enable basic program profiling code"
+msgstr "Activar el codi bàsic d'anàlisi de perfil del programa"
+
+#: toplev.c:1102
+msgid "Reorder basic blocks to improve code placement"
+msgstr "Reordenar els blocs bàsics per a millorar la ubicació del codi"
+
+#: toplev.c:1104
+msgid "Reorder functions to improve code placement"
+msgstr "Reordenar les funcions per a millorar la ubicació del codi"
+
+#: toplev.c:1106
+msgid "Do the register renaming optimization pass"
+msgstr "Fer el pas d'optimització de renomenació de registres"
+
+#: toplev.c:1108
+msgid "Do the register copy-propagation optimization pass"
+msgstr "Fer el pas d'optimització de còpia-propagació de registres"
+
+#: toplev.c:1110
+msgid "Do not put uninitialized globals in the common section"
+msgstr "No posar globals sense iniciar en la secció comuna"
+
+#: toplev.c:1112
+msgid "Do not generate .size directives"
+msgstr "No generar directives .size"
+
+#: toplev.c:1114
+msgid "place each function into its own section"
+msgstr "col·locar cada funció en la seva pròpia secció"
+
+#: toplev.c:1116
+msgid "place data items into their own section"
+msgstr "col·locar els elements de dades en la seva pròpia secció"
+
+#: toplev.c:1118
+msgid "Add extra commentary to assembler output"
+msgstr "Agregar comentaris extra a la sortida del ensemblador"
+
+#: toplev.c:1120
+msgid "Output GNU ld formatted global initializers"
+msgstr "Obtenir iniciators globals amb format per a ld de GNU"
+
+#: toplev.c:1122
+msgid "Enables a register move optimization"
+msgstr "Permet una optimització de moviment de registres"
+
+#: toplev.c:1124
+msgid "Do the full regmove optimization pass"
+msgstr "Fa el pas complet d'optimització de moviment de registres"
+
+#: toplev.c:1126
+msgid "Pack structure members together without holes"
+msgstr "Empaqueta junts als membres de l'estructura sense forats"
+
+#: toplev.c:1128
+msgid "Insert stack checking code into the program"
+msgstr "Insereix codi de revisió de la pila en el programa"
+
+#: toplev.c:1130
+msgid "Specify that arguments may alias each other & globals"
+msgstr "Especifica que els arguments poden ser alies de cada altre i dels globals"
+
+#: toplev.c:1132
+msgid "Assume arguments may alias globals but not each other"
+msgstr "Assumir que els arguments poden ser alies de globals però no de cada altre"
+
+#: toplev.c:1134
+msgid "Assume arguments do not alias each other or globals"
+msgstr "Assumir que els arguments no poden ser alies de globals o de cada altre"
+
+#: toplev.c:1136
+msgid "Assume strict aliasing rules apply"
+msgstr "Assumir que s'apliquen les regles estrictes d'alies"
+
+#: toplev.c:1138
+msgid "Align the start of loops"
+msgstr "Alinear l'inici dels cicles"
+
+#: toplev.c:1140
+msgid "Align labels which are only reached by jumping"
+msgstr "Alinear les etiquetes que solament s'arriben a saltant"
+
+#: toplev.c:1142
+msgid "Align all labels"
+msgstr "Alinear totes les etiquetes"
+
+#: toplev.c:1144
+msgid "Align the start of functions"
+msgstr "Alinear l'inici de les funcions"
+
+#: toplev.c:1146
+msgid "Attempt to merge identical constants across compilation units"
+msgstr "Intentar barrejar constants idèntiques a través de les unitats de compilació"
+
+#: toplev.c:1148
+msgid "Attempt to merge identical constants and constant variables"
+msgstr "Intentar barrejar constants idèntiques i variables constants"
+
+#: toplev.c:1150
+msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
+msgstr "Suprimir la sortida de notes de nombres d'instrucció i nombres de línia en els bolcats de depuració"
+
+#: toplev.c:1152
+msgid "Instrument function entry/exit with profiling calls"
+msgstr "Instrumentar funcions entrada/sortida amb cridades d'anàlisi de perfil"
+
+#: toplev.c:1154
+msgid "Put zero initialized data in the bss section"
+msgstr "Posar dades inicialitzades a zero en la secció bss"
+
+#: toplev.c:1156
+msgid "Enable SSA optimizations"
+msgstr "Activar les optimitzacions SSA"
+
+#: toplev.c:1158
+msgid "Enable SSA conditional constant propagation"
+msgstr "Activar la propagació de les constants condicionals SSA"
+
+#: toplev.c:1160
+msgid "Enable aggressive SSA dead code elimination"
+msgstr "Activar l'eliminació agressiva de codi mort SSA"
+
+#: toplev.c:1162
+msgid "External symbols have a leading underscore"
+msgstr "Els símbols externs tenen un subratllat inicial"
+
+#: toplev.c:1164
+msgid "Process #ident directives"
+msgstr "Processar directives #ident"
+
+#: toplev.c:1166
+msgid "Enables an rtl peephole pass run before sched2"
+msgstr "Activa una execució de passada de forats rtl abans de sched2"
+
+#: toplev.c:1168
+msgid "Assume no NaNs or +-Infs are generated"
+msgstr ""
+
+#: toplev.c:1170
+msgid "Enables guessing of branch probabilities"
+msgstr "Activar la predicció de probabilitats de ramificació"
+
+#: toplev.c:1172
+msgid "Set errno after built-in math functions"
+msgstr "Establir errno després de les funcions matemàtiques internes"
+
+#: toplev.c:1174
+msgid "Floating-point operations can trap"
+msgstr "Les operacions de coma flotant poden capturar"
+
+#: toplev.c:1176
+msgid "Allow math optimizations that may violate IEEE or ANSI standards"
+msgstr "Permetre optimitzacions matemàtiques que poden violar els estàndards IEEE o ANSI"
+
+#: toplev.c:1178
+msgid "Disable optimizations observable by IEEE signaling NaNs"
+msgstr ""
+
+#: toplev.c:1180
+msgid "Generate code to check bounds before indexing arrays"
+msgstr "Generar codi per a revisar els límits abans de matrius"
+
+#: toplev.c:1182
+msgid "Convert floating point constant to single precision constant"
+msgstr "Convertir constants de coma flotant a constants de precisió simple"
+
+#: toplev.c:1184
+msgid "Report time taken by each compiler pass at end of run"
+msgstr "Reportar el temps pres per cada pas del compilador al final de l'execució"
+
+#: toplev.c:1186
+msgid "Report on permanent memory allocation at end of run"
+msgstr "Reportar l'allotjament en memòria permanent al final de l'execució"
+
+#: toplev.c:1188
+msgid "Trap for signed overflow in addition / subtraction / multiplication"
+msgstr "Atrapar desbordaments signed en addició / substracció / multiplicació"
+
+#: toplev.c:1190
+msgid "Use graph coloring register allocation."
+msgstr "Utilitzar coloració de grafes per a l'allotjament de registres."
+
+#: toplev.c:1207
+msgid "Compile just for ISO C90"
+msgstr "Compilar només per a ISO C90"
+
+#: toplev.c:1209
+msgid "Determine language standard"
+msgstr "Determinar el estàndard de llenguatge"
+
+#: toplev.c:1213
+msgid "Make bit-fields by unsigned by default"
+msgstr "Fer per omissió unsigned els camps de bit"
+
+#: toplev.c:1217
+msgid "Make 'char' be signed by default"
+msgstr "Fer que \"char\" sigui signed per omissió"
+
+#: toplev.c:1219
+msgid "Make 'char' be unsigned by default"
+msgstr "Fer que \"char\" sigui unsigned per omissió"
+
+#: toplev.c:1225
+msgid "Do not recognize the 'asm' keyword"
+msgstr "No reconèixer la paraula clau \"asm\""
+
+#: toplev.c:1228
+msgid "Do not recognize any built in functions"
+msgstr "No reconèixer cap funció interna"
+
+#: toplev.c:1230
+msgid "Assume normal C execution environment"
+msgstr "Assumir l'ambient normal d'execució C"
+
+#: toplev.c:1233
+msgid "Assume that standard libraries & main might not exist"
+msgstr "Assumir que podrien no existir les biblioteques estàndard i main"
+
+#: toplev.c:1236
+msgid "Allow different types as args of ? operator"
+msgstr "Permetre tipus diferents com arguments de l'operador ?"
+
+#: toplev.c:1239
+msgid "Allow the use of $ inside identifiers"
+msgstr "Permetre l'ús de $ dintre dels identificadors"
+
+#: toplev.c:1244
+msgid "Use the same size for double as for float"
+msgstr "Usar la mateixa grandària per a double que per a float"
+
+#: toplev.c:1247
+msgid "Use the smallest fitting integer to hold enums"
+msgstr "Usar l'enter adequat més petit per a contenir enumerats"
+
+#: toplev.c:1250
+msgid "Override the underlying type for wchar_t to `unsigned short'"
+msgstr "Fer de costat el tipus sota wchar_t per \"unsigned short\""
+
+#: toplev.c:1254
+msgid "Enable most warning messages"
+msgstr "Activar gairebé tots els missatges d'avís"
+
+#: toplev.c:1256
+msgid "Warn about casting functions to incompatible types"
+msgstr "Avisar per funcions de conversió a tipus incompatibles"
+
+#: toplev.c:1259
+msgid "Warn about functions which might be candidates for format attributes"
+msgstr "Avisar per funcions que podrien ser candidates per a atributs de format"
+
+#: toplev.c:1262
+msgid "Warn about casts which discard qualifiers"
+msgstr "Avisar sobre conversions que descarten calificators"
+
+#: toplev.c:1265
+msgid "Warn about subscripts whose type is 'char'"
+msgstr "Avisar sobre subindicis el tipus del qual és \"char\""
+
+#: toplev.c:1268 toplev.c:1271
+msgid "Warn if nested comments are detected"
+msgstr "Avisar si es detecten comentaris niats"
+
+#: toplev.c:1274
+msgid "Warn about possibly confusing type conversions"
+msgstr "Avisar sobre la possibilitat de conversió de tipus confuses"
+
+#: toplev.c:1278
+msgid "Do not warn about compile-time integer division by zero"
+msgstr "No avisar sobre la divisió entera per zero en temps de compilació"
+
+#: toplev.c:1280
+msgid "Warn about testing equality of floating point numbers"
+msgstr "Avisar sobre l'equitat de proves de nombres de coma flotant"
+
+#: toplev.c:1283
+msgid "Warn about printf/scanf/strftime/strfmon format anomalies"
+msgstr "Avisar sobre anomalies de format de printf/scanf/strftime/strfmon"
+
+#: toplev.c:1287
+msgid "Don't warn about too many arguments to format functions"
+msgstr "No avisar sobre massa arguments per a les funcions de format"
+
+#: toplev.c:1289
+msgid "Warn about non-string-literal format strings"
+msgstr "Avisar sobre cadenes de format que no són cadenes literals"
+
+#: toplev.c:1292
+msgid "Warn about possible security problems with format functions"
+msgstr "Avisar sobre possibles problemes de seguretat amb funcions de format"
+
+#: toplev.c:1296
+msgid "Don't warn about strftime formats yielding 2 digit years"
+msgstr "No avisar sobre formats de strftime que produeixen dos dígits per a l'any"
+
+#: toplev.c:1298
+msgid "Warn about implicit function declarations"
+msgstr "Avisar sobre la declaració implícita de funcions"
+
+#: toplev.c:1302
+msgid "Warn when a declaration does not specify a type"
+msgstr "Avisar quan una declaració no especifiqui un tipus"
+
+#: toplev.c:1307
+msgid "Warn about the use of the #import directive"
+msgstr "Avisar sobre l'ús de la directiva #import"
+
+#: toplev.c:1311
+msgid "Do not warn about using 'long long' when -pedantic"
+msgstr "No avisar sobre l'ús de \"long long\" quan s'usi -pedantic"
+
+#: toplev.c:1313
+msgid "Warn about suspicious declarations of main"
+msgstr "Avisar sobre declaracions sospitoses de main"
+
+#: toplev.c:1316
+msgid "Warn about possibly missing braces around initializers"
+msgstr "Avisar sobre possibles claus faltantes al voltant d'assignadorsº"
+
+#: toplev.c:1319
+msgid "Warn about global funcs without previous declarations"
+msgstr "Avisar sobre funcions globals sense declaracions prèvies"
+
+#: toplev.c:1322
+msgid "Warn about global funcs without prototypes"
+msgstr "Avisar sobre funcions globals sense prototips"
+
+#: toplev.c:1325
+msgid "Warn about use of multicharacter literals"
+msgstr "Avisar sobre l'ús de literals multicaràcters"
+
+#: toplev.c:1328
+msgid "Warn about externs not at file scope level"
+msgstr "Avisar sobre externs que no estan en el nivell de l'abast del fitxer"
+
+#: toplev.c:1331
+msgid "Warn about possible missing parentheses"
+msgstr "Avisar sobre possibles parèntesis faltantes"
+
+#: toplev.c:1334
+msgid "Warn about function pointer arithmetic"
+msgstr "Avisar sobre l'aritmètica de punters de funcions"
+
+#: toplev.c:1337
+msgid "Warn about multiple declarations of the same object"
+msgstr "Avisar sobre declaracions múltiples del mateix objecte"
+
+#: toplev.c:1340
+msgid "Warn whenever a function's return-type defaults to int"
+msgstr "Avisar quan el tipus de devolució per defecte d'una funció canvia a int"
+
+#: toplev.c:1343
+msgid "Warn about possible violations of sequence point rules"
+msgstr "Avisar sobre possibles violacions a les regles de seqüència de punt"
+
+#: toplev.c:1346
+msgid "Warn about signed/unsigned comparisons"
+msgstr "Avisar sobre comparances signed/unsigned"
+
+#: toplev.c:1349
+msgid "Warn about non-prototyped function decls"
+msgstr "Avisar sobre declaracions de funció sense prototip"
+
+#: toplev.c:1352
+msgid "Warn about constructs whose meanings change in ISO C"
+msgstr "Avisar sobre construccions el significat de les quals canvia en ISO C"
+
+#: toplev.c:1355
+msgid "Warn when trigraphs are encountered"
+msgstr "Avisar si es troben trigrafes"
+
+#: toplev.c:1360
+msgid "Warn about unrecognized pragmas"
+msgstr "Avisar sobre pragmas no reconeguts"
+
+#: toplev.c:1363
+msgid "Mark strings as 'const char *'"
+msgstr "Marcar les cadenes com \"const char *\""
+
+#: toplev.c:1508
+msgid "Warn when a function is unused"
+msgstr "Avisar quan no s'usi una funció"
+
+#: toplev.c:1510
+msgid "Warn when a label is unused"
+msgstr "Avisar quan no s'usi una etiqueta"
+
+#: toplev.c:1512
+msgid "Warn when a function parameter is unused"
+msgstr "Avisar quan no s'usi un paràmetre d'una funció"
+
+#: toplev.c:1514
+msgid "Warn when a variable is unused"
+msgstr "Avisar quan no s'usi una variable"
+
+#: toplev.c:1516
+msgid "Warn when an expression value is unused"
+msgstr "Avisar quan no s'usi un valor d'una expressió"
+
+#: toplev.c:1518
+msgid "Do not suppress warnings from system headers"
+msgstr "No suprimir els avisos dels encapçalats del sistema"
+
+#: toplev.c:1520
+msgid "Treat all warnings as errors"
+msgstr "Tractar tots els avisos com errors"
+
+#: toplev.c:1522
+msgid "Warn when one local variable shadows another"
+msgstr "Avisar quan una variable local enfosque una altra"
+
+#: toplev.c:1524
+msgid "Warn about enumerated switches, with no default, missing a case"
+msgstr "Avisar sobre interruptors enumerats, sense valor per defecte, que manquin d'un casi"
+
+#: toplev.c:1526
+msgid "Warn about enumerated switches missing a default case"
+msgstr "Avisar sobre interruptors enumerats que manquin d'un casi per defecte"
+
+#: toplev.c:1528
+msgid "Warn about all enumerated switches missing a specific case"
+msgstr "Avisar sobre tots els interruptors enumerats que manquin d'un casi específic"
+
+#: toplev.c:1530
+msgid "Warn about returning structures, unions or arrays"
+msgstr "Avisar sobre la devolució d'estructures, unions o matrius"
+
+#: toplev.c:1532
+msgid "Warn about pointer casts which increase alignment"
+msgstr "Avisar sobre conversió de punters que incrementi l'alineació"
+
+#: toplev.c:1534
+msgid "Warn about code that will never be executed"
+msgstr "Avisar sobre codi que mai s'executarà"
+
+#: toplev.c:1536
+msgid "Warn about uninitialized automatic variables"
+msgstr "Avisar sobre variables automàtiques sense iniciar"
+
+#: toplev.c:1538
+msgid "Warn when an inlined function cannot be inlined"
+msgstr "Avisar quan una funció inline no pot ser inline"
+
+#: toplev.c:1540
+msgid "Warn when the packed attribute has no effect on struct layout"
+msgstr "Avisar quan l'atribut packed no té efecte en la disposició d'un struct"
+
+#: toplev.c:1542
+msgid "Warn when padding is required to align struct members"
+msgstr "Avisar quan es requereix farcit per a alinear als membres d'un struct"
+
+#: toplev.c:1544
+msgid "Warn when an optimization pass is disabled"
+msgstr "Avisar quan es va desactivar un pas d'optimització"
+
+#: toplev.c:1546
+msgid "Warn about uses of __attribute__((deprecated)) declarations"
+msgstr "Avisar sobre el ùs de declaracions __attribute__((deprecated))"
+
+#: toplev.c:1548
+msgid "Warn about functions which might be candidates for attribute noreturn"
+msgstr "Avisar sobre funcions que podrien ser candidates per a l'atribut noreturn"
+
+#: toplev.c:1550
+msgid "Warn about code which might break the strict aliasing rules"
+msgstr "Avisar sobre codi que pugui trencar les regles estrictes d'aliessis"
+
+#: toplev.c:1627 toplev.c:4548 config/rs6000/rs6000.c:680
+#, c-format
+msgid "invalid option `%s'"
+msgstr "opció \"%s\" invàlida"
+
+#: toplev.c:2031
+#, c-format
+msgid "`%s' used but never defined"
+msgstr "\"%s\" utilitzat però mai definit"
+
+#: toplev.c:2034
+#, c-format
+msgid "`%s' declared `static' but never defined"
+msgstr "\"%s\" declarat \"static\" però mai definit"
+
+#: toplev.c:2057
+#, c-format
+msgid "`%s' defined but not used"
+msgstr "\"%s\" definit però no utilitzat"
+
+#: toplev.c:2280
+#, c-format
+msgid "invalid register name `%s' for register variable"
+msgstr "el nom de registre \"%s\" no és vàlid per a variable de registre"
+
+#: toplev.c:3697
+msgid " -ffixed-<register> Mark <register> as being unavailable to the compiler\n"
+msgstr " -ffixed-<registre> Marca el <registre> com no disponible per al compilador\n"
+
+#: toplev.c:3698
+msgid " -fcall-used-<register> Mark <register> as being corrupted by function calls\n"
+msgstr " -fcall-used-<registre> Marca el <registre> com corrupte per a cridades de funció\n"
+
+#: toplev.c:3699
+msgid " -fcall-saved-<register> Mark <register> as being preserved across functions\n"
+msgstr " -fcall-saved-<registre> Marca el <registre> com preservat entre funcions\n"
+
+#: toplev.c:3700
+msgid " -finline-limit=<number> Limits the size of inlined functions to <number>\n"
+msgstr " -finline-limit=<nombre> Limita la grandària de funcions inline a <nombre>\n"
+
+#: toplev.c:3701
+msgid " -fmessage-length=<number> Limits diagnostics messages lengths to <number> characters per line. 0 suppresses line-wrapping\n"
+msgstr " -fmessage-length=<nombre> Limita la longitud dels missatges de diagnòstic a <nombre> caràcters per línia. 0 suprimeix el cort de línia\n"
+
+#: toplev.c:3702
+msgid " -fdiagnostics-show-location=[once | every-line] Indicates how often source location information should be emitted, as prefix, at the beginning of diagnostics when line-wrapping\n"
+msgstr " -fdiagnostics-show-location=[once | every-line] Indica que tan seguit es deu emetre la informació d'ubicació del codi, com prefix, a l'inici dels diagnòstics quan està activat el cort de línia\n"
+
+#: toplev.c:3703
+msgid " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indicates the default thread-local storage code generation model\n"
+msgstr ""
+
+#: toplev.c:3704
+msgid " -fstack-limit-register=<register> Trap if the stack goes past <register>\n"
+msgstr ""
+
+#: toplev.c:3705
+msgid " -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>\n"
+msgstr ""
+
+#: toplev.c:3706
+msgid " -frandom-seed=<string> Make compile reproducible using <string>\n"
+msgstr ""
+
+#: toplev.c:3718
+msgid " -O[number] Set optimization level to [number]\n"
+msgstr " -O[nombre] Establir el nivell d'optimització a [nombre]\n"
+
+#: toplev.c:3719
+msgid " -Os Optimize for space rather than speed\n"
+msgstr " -Os Optimitzar per a espai en lloc de velocitat\n"
+
+#: toplev.c:3731
+msgid " -pedantic Issue warnings needed by strict compliance to ISO C\n"
+msgstr " -pedantic Activar els avisos necessaris per a complir estrictament amb ISO C\n"
+
+#: toplev.c:3732
+msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
+msgstr " -pedantic-errors Com -pedantic excepte que es produeixen errors\n"
+
+#: toplev.c:3733
+msgid " -w Suppress warnings\n"
+msgstr " -w Suprimir avisos\n"
+
+#: toplev.c:3734
+msgid " -W Enable extra warnings\n"
+msgstr " -W Activar avisos extra\n"
+
+#: toplev.c:3745
+msgid " -Wunused Enable unused warnings\n"
+msgstr " -Wunused Activar avisos sense usar\n"
+
+#: toplev.c:3746
+msgid " -Wlarger-than-<number> Warn if an object is larger than <number> bytes\n"
+msgstr " -Wlarger-than-<nombre> Avisar si un objecte és més gran que <nombre> octets\n"
+
+#: toplev.c:3747
+msgid " -p Enable function profiling\n"
+msgstr " -p Activar l'anàlisi de perfil de funcions\n"
+
+#: toplev.c:3748
+msgid " -o <file> Place output into <file> \n"
+msgstr " -o <fitxer> Situar la sortida en el <fitxer> \n"
+
+#: toplev.c:3749
+msgid ""
+" -G <number> Put global and static data smaller than <number>\n"
+" bytes into a special section (on some targets)\n"
+msgstr ""
+" -G <nombre> Col·locar les dades globals i estàtics més petits que <nombre>\n"
+" octets en una secció especial (en alguns objectius)\n"
+
+#: toplev.c:3760
+msgid " -aux-info <file> Emit declaration info into <file>\n"
+msgstr " -aux-info <fitxer> Emetre la informació de declaracions en el <fitxer>\n"
+
+#: toplev.c:3761
+msgid " -quiet Do not display functions compiled or elapsed time\n"
+msgstr " -quiet No mostrar les funcions compilades o el temps transcorregut\n"
+
+#: toplev.c:3762
+msgid " -version Display the compiler's version\n"
+msgstr " -version Mostra la versió del compilador\n"
+
+#: toplev.c:3763
+msgid " -d[letters] Enable dumps from specific passes of the compiler\n"
+msgstr " -d[lletres] Activa els bolcats des de passos específics del compilador\n"
+
+#: toplev.c:3764
+msgid " -dumpbase <file> Base name to be used for dumps from specific passes\n"
+msgstr " -dumpbase <fitxer> Nom base a usar per als bolcats des de passos específics\n"
+
+#: toplev.c:3766
+msgid " -fsched-verbose=<number> Set the verbosity level of the scheduler\n"
+msgstr " -fsched-verbose=<nombre> Estableix el nivell de detall del calendaritzador\n"
+
+#: toplev.c:3768
+msgid " --help Display this information\n"
+msgstr " --help Mostra aquesta informació\n"
+
+#: toplev.c:3783
+msgid ""
+"\n"
+"Language specific options:\n"
+msgstr ""
+"\n"
+"Opcions específiques del llenguatge:\n"
+
+#: toplev.c:3795
+#, c-format
+msgid " %-23.23s [undocumented]\n"
+msgstr " %-23.23s [sense documentar]\n"
+
+#: toplev.c:3803 toplev.c:3817
+#, c-format
+msgid ""
+"\n"
+"There are undocumented %s specific options as well.\n"
+msgstr ""
+"\n"
+"A més hi ha opcions específiques de %s sense documentar.\n"
+
+#: toplev.c:3807
+#, c-format
+msgid ""
+"\n"
+" Options for %s:\n"
+msgstr ""
+"\n"
+" Opcions per a %s:\n"
+
+#: toplev.c:3844
+msgid ""
+"\n"
+"Target specific options:\n"
+msgstr ""
+"\n"
+"Opcions específiques de l'objectiu:\n"
+
+#: toplev.c:3858 toplev.c:3877
+#, c-format
+msgid " -m%-23.23s [undocumented]\n"
+msgstr " -m%-23.23s [sense documentar]\n"
+
+#: toplev.c:3886
+msgid ""
+"\n"
+"There are undocumented target specific options as well.\n"
+msgstr ""
+"\n"
+"A més hi ha opcions específiques de l'objectiu sense documentar.\n"
+
+#: toplev.c:3888
+msgid " They exist, but they are not documented.\n"
+msgstr " Existeixen, però no estan documentades.\n"
+
+#: toplev.c:3941
+#, c-format
+msgid "unrecognized gcc debugging option: %c"
+msgstr "opció de depuració de gcc no reconeguda: %c"
+
+#: toplev.c:4007
+#, c-format
+msgid "`%s': unknown tls-model option"
+msgstr "\"%s\": opció tls-model desconeguda"
+
+#: toplev.c:4034
+#, c-format
+msgid "unrecognized register name `%s'"
+msgstr "no es reconeix el nom de registre \"%s\""
+
+#: toplev.c:4059 toplev.c:5012
+#, c-format
+msgid "unrecognized option `%s'"
+msgstr "Opció \"%s\" no reconeguda"
+
+#: toplev.c:4107
+msgid "-Wid-clash-LEN is no longer supported"
+msgstr "-Wid-clash-LEN ja no té suport"
+
+#: toplev.c:4184
+#, c-format
+msgid "use -gdwarf -g%d for DWARF v1, level %d"
+msgstr "usi -gdwarf -g%d per a DWARF v1, nivell %d"
+
+#: toplev.c:4187
+msgid "use -gdwarf-2 for DWARF v2"
+msgstr "usi -ddwarf-2 per a DWARF v2"
+
+#: toplev.c:4192
+#, c-format
+msgid "ignoring option `%s' due to invalid debug level specification"
+msgstr "ignorant l'opció \"%s\" a causa de l'especificació d'un nivell de depuració invàlid"
+
+#: toplev.c:4215 toplev.c:5010
+#, c-format
+msgid "`%s': unknown or unsupported -g option"
+msgstr "\"%s\": opció -g desconeguda o sense suport"
+
+#: toplev.c:4222
+#, c-format
+msgid "`%s' ignored, conflicts with `-g%s'"
+msgstr "\"%s\" ignorat, té conflicte amb \"-g%s\""
+
+#: toplev.c:4304
+msgid "-param option missing argument"
+msgstr "falta l'argument per a l'opció -param"
+
+#: toplev.c:4313
+#, c-format
+msgid "invalid --param option: %s"
+msgstr "opció de --param invàlida: %s"
+
+#: toplev.c:4325
+#, c-format
+msgid "invalid parameter value `%s'"
+msgstr "valor de paràmetre \"%s\" invàlid"
+
+#: toplev.c:4565
+#, c-format
+msgid ""
+"%s%s%s version %s (%s)\n"
+"%s\tcompiled by GNU C version %s.\n"
+"%s%s%s version %s (%s) compiled by CC.\n"
+msgstr ""
+"%s%s%s versió %s (%s)\n"
+"%s\tcompilat amb GNU C versió %s.\n"
+"%s%s%s versió %s (%s) compilada per a CC.\n"
+
+#: toplev.c:4572
+#, c-format
+msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
+msgstr ""
+
+#: toplev.c:4630
+msgid "options passed: "
+msgstr "opcions passades: "
+
+#: toplev.c:4659
+msgid "options enabled: "
+msgstr "options activades: "
+
+#: toplev.c:4718 java/jcf-write.c:3453
+#, c-format
+msgid "can't open %s for writing"
+msgstr "no es pot obrir obrir %s per a escriptura"
+
+#: toplev.c:5002
+#, c-format
+msgid "ignoring command line option '%s'"
+msgstr "ignorant l'opció de línia de comanda \"%s\""
+
+#: toplev.c:5005
+#, c-format
+msgid "(it is valid for %s but not the selected language)"
+msgstr "(és vàlida per a %s però no per al llenguatge seleccionat)"
+
+#: toplev.c:5039
+msgid "-Wuninitialized is not supported without -O"
+msgstr "-Wuninitialized no té suport sense -O"
+
+#: toplev.c:5094
+msgid "instruction scheduling not supported on this target machine"
+msgstr "no es dóna suport a la planificació d'instruccions en aquest objectiu"
+
+#: toplev.c:5098
+msgid "this target machine does not have delayed branches"
+msgstr "aquesta màquina objectiu no té ramificacions alentides"
+
+#: toplev.c:5112
+#, c-format
+msgid "-f%sleading-underscore not supported on this target machine"
+msgstr "no es dóna suport a -f%sleading-underscore en aquest objectiu"
+
+#: toplev.c:5175
+msgid "-ffunction-sections not supported for this target"
+msgstr "no es dóna suport a -ffunction-sections en aquest objectiu"
+
+#: toplev.c:5180
+msgid "-fdata-sections not supported for this target"
+msgstr "no es dóna suport a -fdata-sections en aquest objectiu"
+
+#: toplev.c:5187
+msgid "-ffunction-sections disabled; it makes profiling impossible"
+msgstr "-ffunction-sections desactivat; fa impossible l'anàlisi de perfil"
+
+#: toplev.c:5194
+msgid "-fprefetch-loop-arrays not supported for this target"
+msgstr "no es dóna suport a -fprefetch-loop-arrays en aquest objectiu"
+
+#: toplev.c:5200
+msgid "-fprefetch-loop-arrays not supported for this target (try -march switches)"
+msgstr "no es dóna suport a -fprefetch-loop-arrays en aquest objectiu (prova switches -march)"
+
+#: toplev.c:5209
+msgid "-fprefetch-loop-arrays is not supported with -Os"
+msgstr "no es dóna suport a -fprefetch-loop-arrays amb -Os"
+
+#: toplev.c:5215
+msgid "-ffunction-sections may affect debugging on some targets"
+msgstr "-ffunction-sections podria afectar la depuració en alguns objectius"
+
+#: toplev.c:5327
+#, c-format
+msgid "error writing to %s"
+msgstr "error a l'escriure a %s"
+
+#: toplev.c:5329 java/jcf-parse.c:936 java/jcf-write.c:3460
+#, c-format
+msgid "error closing %s"
+msgstr "error al tancar %s"
+
+#: tree-dump.c:702
+#, c-format
+msgid "could not open dump file `%s'"
+msgstr "no es pot obrir el fitxer de dump \"%s\""
+
+#: tree-dump.c:778
+#, c-format
+msgid "ignoring unknown option `%.*s' in `-f%s'"
+msgstr "ignorant l'opció desconeguda \"%.*s\" dintre \"-f%s\""
+
+#: tree.c:3645
+msgid "arrays of functions are not meaningful"
+msgstr "les matrius de funcions no tenen significat"
+
+#: tree.c:3702
+msgid "function return type cannot be function"
+msgstr "el tipus de devolució d'una funció no pot ser una funció"
+
+#: tree.c:4557
+msgid "invalid initializer for bit string"
+msgstr "assignador invàlid per a cadena de bits"
+
+#: tree.c:4616
+#, c-format
+msgid "tree check: expected %s, have %s in %s, at %s:%d"
+msgstr "revisió d'arbre: s'esperava %s, es té %s en %s, en %s:%d"
+
+#: tree.c:4633
+#, c-format
+msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d"
+msgstr "revisió d'arbre: s'esperava classa \"%c\", es té \"%c\" (%s) en %s, en %s:%d"
+
+#: tree.c:4650
+#, c-format
+msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
+msgstr "revisió d'arbre: accés de *elt %d de tree_vec amb %d elts en %s, en %s:%d"
+
+#: varasm.c:455 config/i386/winnt.c:611
+#, c-format
+msgid "%s causes a section type conflict"
+msgstr "%s causa un conflicte de tipus de secció"
+
+#: varasm.c:841
+#, c-format
+msgid "register name not specified for `%s'"
+msgstr "no s'especifica nom de registre per a \"%s\""
+
+#: varasm.c:843
+#, c-format
+msgid "invalid register name for `%s'"
+msgstr "nom de registre invàlid per a \"%s\""
+
+#: varasm.c:846
+#, c-format
+msgid "data type of `%s' isn't suitable for a register"
+msgstr "el tipus de dades de \"%s\" no és adequat per a un registre"
+
+#: varasm.c:849
+#, c-format
+msgid "register specified for `%s' isn't suitable for data type"
+msgstr "el registre especificat per \"%s\" no és adequat per al tipus de dades"
+
+#: varasm.c:858
+msgid "global register variable has initial value"
+msgstr "la variable de registre global té valor inicial"
+
+#: varasm.c:861
+msgid "volatile register variables don't work as you might wish"
+msgstr "les variables de registre volatile no funcionen com vostè volgués"
+
+#: varasm.c:894
+#, c-format
+msgid "register name given for non-register variable `%s'"
+msgstr "nom de registre donat per a una variable \"%s\" que no és registre"
+
+#: varasm.c:1542
+#, c-format
+msgid "alignment of `%s' is greater than maximum object file alignment. Using %d"
+msgstr "l'alineació de \"%s\" és massa granda que l'alineació màxima del fitxer objecte. S'usa %d."
+
+#: varasm.c:1584
+msgid "thread-local COMMON data not implemented"
+msgstr ""
+
+#: varasm.c:1610
+#, c-format
+msgid "requested alignment for %s is greater than implemented alignment of %d"
+msgstr "l'alineació sol·licitada per a %s és massa granda que l'alineació implementada de %d"
+
+#: varasm.c:4048
+msgid "initializer for integer value is too complicated"
+msgstr "el assignador per a un valor enter és massa complicat"
+
+#: varasm.c:4053
+msgid "initializer for floating value is not a floating constant"
+msgstr "el assignador per a un valor de coma flotant no és una constant de coma flotant"
+
+#: varasm.c:4120
+msgid "unknown set constructor type"
+msgstr "conjunt de tipus constructor desconegut"
+
+#: varasm.c:4334
+#, c-format
+msgid "invalid initial value for member `%s'"
+msgstr "valor inicial invàlid per al membre \"%s\""
+
+#: varasm.c:4525 varasm.c:4568
+#, c-format
+msgid "weak declaration of `%s' must precede definition"
+msgstr "la declaració feble de \"%s\" deu precedir a la definició"
+
+#: varasm.c:4532
+#, c-format
+msgid "weak declaration of `%s' after first use results in unspecified behavior"
+msgstr "la declaració feble de \"%s\" després del primer ús resulta en una conducta no especificada"
+
+#: varasm.c:4566
+#, c-format
+msgid "weak declaration of `%s' must be public"
+msgstr "la declaració feble de \"%s\" deu ser public"
+
+#: varasm.c:4575
+#, c-format
+msgid "weak declaration of `%s' not supported"
+msgstr "no és dona suport a la declaració feble de \"%s\""
+
+#: varasm.c:4602 varasm.c:4677
+msgid "only weak aliases are supported in this configuration"
+msgstr "només els aliessis febles tenen suport en aquesta configuració"
+
+#: varasm.c:4685
+msgid "alias definitions not supported in this configuration; ignored"
+msgstr "les definicions d'alies no tenen suport en aquesta configuració; ignorades"
+
+#: varasm.c:4716
+msgid "visibility attribute not supported in this configuration; ignored"
+msgstr "els atributs de visibilitat no tenen suport en aquesta configuració; ignorats"
+
+#: varray.c:134
+#, c-format
+msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d"
+msgstr "matriu virtual %s[%lu]: l'element %lu està fora del límit en %s, en %s:%d"
+
+#. Print an error message for unrecognized stab codes.
+#: xcoffout.c:175
+#, c-format
+msgid "no sclass for %s stab (0x%x)\n"
+msgstr "no hi ha sclass per al stab %s (0x%x)\n"
+
+#: pretty-print.h:97
+#, c-format
+msgid "#`%s' not supported by %s#"
+msgstr "#\"%s\" no té suport per a %s#"
+
+#: params.def:53
+msgid "The maximum number of instructions in a single function eligible for inlining"
+msgstr "El nombre màxim d'instruccions en una sola funció elegible per a inlining"
+
+#: params.def:65
+msgid "The maximum number of instructions when automatically inlining"
+msgstr "El nombre màxim d'instruccions quan es fa inlining automàticament"
+
+#: params.def:84
+msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
+msgstr "El nombre màxim d'instruccions per inlining repetit abans que gcc comenci a descartar inlining"
+
+#: params.def:97
+msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
+msgstr ""
+
+#: params.def:110
+msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
+msgstr "El nombre d'instruccions en una sola funció per a ser encara elegible per a inlining després de molt inlining recursiu"
+
+#: params.def:120
+msgid "The maximum number of instructions for the RTL inliner"
+msgstr "El nombre màxim d'instruccions per al inliner de RTL"
+
+#: params.def:131
+msgid "The maximum number of instructions to consider to fill a delay slot"
+msgstr "El nombre màxim d'instruccions per a considerar l'omplert d'una ranura de retard"
+
+#: params.def:142
+msgid "The maximum number of instructions to consider to find accurate live register information"
+msgstr "El nombre màxim d'instruccions per a considerar la recerca d'informació de registres en viu exacta"
+
+#: params.def:152
+msgid "The maximum length of scheduling's pending operations list"
+msgstr "La longitud màxima de la llista d'operacions pendents del planificador de tasques"
+
+#: params.def:159
+msgid "The maximum amount of memory to be allocated by GCSE"
+msgstr "La quantitat màxima de memòria a ser assignada per GCSE"
+
+#: params.def:164
+msgid "The maximum number of passes to make when doing GCSE"
+msgstr "El nombre màxim de passos a realitzar quan es fa GCSE"
+
+#: params.def:171
+msgid "The maximum number of instructions to consider to unroll in a loop"
+msgstr "El nombre màxim d'instruccions per a considerar el desenrotllo en un cicle"
+
+#: params.def:176
+msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
+msgstr ""
+
+#: params.def:181
+msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
+msgstr ""
+
+#: params.def:186
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
+msgstr ""
+
+#: params.def:191
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
+msgstr ""
+
+#: params.def:196
+msgid "Maximal code growth caused by tail duplication (in percents)"
+msgstr ""
+
+#: params.def:200
+msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percents)"
+msgstr ""
+
+#: params.def:205
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is available"
+msgstr ""
+
+#: params.def:210
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is not available"
+msgstr ""
+
+#: params.def:217
+msgid "The maximum number of incoming edges to consider for crossjumping"
+msgstr "El nombre màxim de vores d'entrada per a considerar el salt creuat"
+
+#: params.def:230
+msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap."
+msgstr ""
+
+#: params.def:236
+msgid "Minimum heap size before we start collecting garbage, in kilobytes."
+msgstr ""
+
+#: config/darwin-c.c:75
+msgid "too many #pragma options align=reset"
+msgstr "massa opcions #pragma align=reset"
+
+#: config/darwin-c.c:97 config/darwin-c.c:100 config/darwin-c.c:102
+#: config/darwin-c.c:104
+msgid "malformed '#pragma options', ignoring"
+msgstr "\"#pragma opcions\" malformat, ignorant"
+
+#: config/darwin-c.c:107
+msgid "junk at end of '#pragma options'"
+msgstr "escombraries al final de \"#pragma opcions\""
+
+#: config/darwin-c.c:117
+msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring"
+msgstr "\"#pragma opcions align={mac68k|power|reset}\" malformat, ignorant"
+
+#: config/darwin-c.c:130
+msgid "missing '(' after '#pragma unused', ignoring"
+msgstr "\"(\" faltant després de '#pragma unused', ignorant"
+
+#: config/darwin-c.c:148
+msgid "missing ')' after '#pragma unused', ignoring"
+msgstr "\")\" faltant després de '#pragma unused', ignorant"
+
+#: config/darwin-c.c:151
+msgid "junk at end of '#pragma unused'"
+msgstr "escombraries al final de \"#pragma unused\""
+
+#: config/lynx-ng.h:97 config/lynx.h:121 config/rs6000/lynx.h:100
+msgid "-msystem-v and -p are incompatible"
+msgstr "-msystem-v i -p són incompatibles"
+
+#: config/lynx-ng.h:99 config/lynx.h:123 config/rs6000/lynx.h:102
+msgid "-msystem-v and -mthreads are incompatible"
+msgstr "-msystem-v i -mthreads són incompatibles"
+
+#: config/alpha/alpha.c:342
+#, c-format
+msgid "-f%s ignored for Unicos/Mk (not supported)"
+msgstr "s'ignora -f%s per a Unicos/Mk (no és dona suport)"
+
+#: config/alpha/alpha.c:366
+msgid "-mieee not supported on Unicos/Mk"
+msgstr "no és dona suport a -mieee en Unicos/Mk"
+
+#: config/alpha/alpha.c:377
+msgid "-mieee-with-inexact not supported on Unicos/Mk"
+msgstr "no és dona suport a -mieee-with-inexact en Unicos/Mk"
+
+#: config/alpha/alpha.c:394
+#, c-format
+msgid "bad value `%s' for -mtrap-precision switch"
+msgstr "valor erroni \"%s\" per a l'interruptor -mtrap-precision"
+
+#: config/alpha/alpha.c:408
+#, c-format
+msgid "bad value `%s' for -mfp-rounding-mode switch"
+msgstr "valor erroni \"%s\" per a l'interruptor -mfp-rounding-mode"
+
+#: config/alpha/alpha.c:423
+#, c-format
+msgid "bad value `%s' for -mfp-trap-mode switch"
+msgstr "valor erroni \"%s\" per a l'interruptor -mfp-trap-mode"
+
+#: config/alpha/alpha.c:435
+#, c-format
+msgid "bad value `%s' for -mtls-size switch"
+msgstr "valor erroni \"%s\" per a l'interruptor -mtls-size"
+
+#: config/alpha/alpha.c:454 config/alpha/alpha.c:466
+#, c-format
+msgid "bad value `%s' for -mcpu switch"
+msgstr "valor erroni \"%s\" per a l'interruptor -mcpu"
+
+#: config/alpha/alpha.c:473
+msgid "trap mode not supported on Unicos/Mk"
+msgstr "no és dona suport al mode trap en Unicos/Mk"
+
+#: config/alpha/alpha.c:480
+msgid "fp software completion requires -mtrap-precision=i"
+msgstr "el completat per programari de fp requereix una opció -mtrap-precision=i"
+
+#: config/alpha/alpha.c:496
+msgid "rounding mode not supported for VAX floats"
+msgstr "la manera d'arrodoniment no té suport per a floats de VAX"
+
+#: config/alpha/alpha.c:501
+msgid "trap mode not supported for VAX floats"
+msgstr "la manera de captura no té suport per a valors de coma flotant VAX"
+
+#: config/alpha/alpha.c:530
+#, c-format
+msgid "L%d cache latency unknown for %s"
+msgstr "latència de cau L%d desconeguda per a %s"
+
+#: config/alpha/alpha.c:545
+#, c-format
+msgid "bad value `%s' for -mmemory-latency"
+msgstr "valor erroni \"%s\" per a -mmemory-latency"
+
+#: config/alpha/alpha.c:5604 config/m88k/m88k.c:2889 config/romp/romp.c:754
+#: config/romp/romp.c:761
+#, c-format
+msgid "invalid %%H value"
+msgstr "valor %%H invàlid"
+
+#: config/alpha/alpha.c:5625
+#, c-format
+msgid "invalid %%J value"
+msgstr "valor %%J invàlid"
+
+#: config/alpha/alpha.c:5641 config/ia64/ia64.c:3970 config/m88k/m88k.c:3034
+#, c-format
+msgid "invalid %%r value"
+msgstr "valor %%r invàlid"
+
+#: config/alpha/alpha.c:5651 config/rs6000/rs6000.c:7737
+#, c-format
+msgid "invalid %%R value"
+msgstr "valor %%R invàlid"
+
+#: config/alpha/alpha.c:5657 config/rs6000/rs6000.c:7663
+#, c-format
+msgid "invalid %%N value"
+msgstr "valor %%N invàlid"
+
+#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:7691
+#, c-format
+msgid "invalid %%P value"
+msgstr "valor %%P invàlid"
+
+#: config/alpha/alpha.c:5673 config/m88k/m88k.c:2895 config/romp/romp.c:740
+#: config/romp/romp.c:747
+#, c-format
+msgid "invalid %%h value"
+msgstr "valor %%h invalíd"
+
+#: config/alpha/alpha.c:5681 config/romp/romp.c:698
+#, c-format
+msgid "invalid %%L value"
+msgstr "valor %%L invàlid"
+
+#: config/alpha/alpha.c:5720 config/rs6000/rs6000.c:7645
+#, c-format
+msgid "invalid %%m value"
+msgstr "valor %%m invàlid"
+
+#: config/alpha/alpha.c:5728 config/rs6000/rs6000.c:7653
+#, c-format
+msgid "invalid %%M value"
+msgstr "valor %%M invàlid"
+
+#: config/alpha/alpha.c:5772
+#, c-format
+msgid "invalid %%U value"
+msgstr "valor %%U invalíd"
+
+#: config/alpha/alpha.c:5784 config/alpha/alpha.c:5798 config/romp/romp.c:706
+#: config/rs6000/rs6000.c:7745
+#, c-format
+msgid "invalid %%s value"
+msgstr "valor %%s invalíd"
+
+#: config/alpha/alpha.c:5821 config/m88k/m88k.c:2997
+#, c-format
+msgid "invalid %%C value"
+msgstr "valor %%C invàlid"
+
+#: config/alpha/alpha.c:5858 config/m88k/m88k.c:3018
+#: config/rs6000/rs6000.c:7502
+#, c-format
+msgid "invalid %%E value"
+msgstr "valor %%E invalíd"
+
+#: config/alpha/alpha.c:5883 config/alpha/alpha.c:5933
+msgid "unknown relocation unspec"
+msgstr "reubicació unspec desconeguda"
+
+#: config/alpha/alpha.c:5892 config/romp/romp.c:981
+#: config/rs6000/rs6000.c:8052
+#, c-format
+msgid "invalid %%xn code"
+msgstr "codi %%xn invalíd"
+
+#: config/alpha/alpha.c:6618 config/alpha/alpha.c:6621 config/s390/s390.c:6069
+#: config/s390/s390.c:6072
+msgid "bad builtin fcode"
+msgstr ""
+
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/alpha/alpha.h:279 config/i386/i386.h:294 config/i386/i386.h:296
+#: config/i386/i386.h:298 config/ns32k/ns32k.h:140 config/rs6000/rs6000.h:292
+#: config/s390/s390.h:68 config/sparc/sparc.h:522 config/sparc/sparc.h:527
+msgid "Use hardware fp"
+msgstr "Usar fp de maquinari"
+
+#: config/alpha/alpha.h:280 config/i386/i386.h:295 config/i386/i386.h:297
+#: config/rs6000/rs6000.h:294 config/sparc/sparc.h:524
+#: config/sparc/sparc.h:529
+msgid "Do not use hardware fp"
+msgstr "No usar fp de maquinari"
+
+#: config/alpha/alpha.h:281
+msgid "Use fp registers"
+msgstr "Usar registres fp"
+
+#: config/alpha/alpha.h:283
+msgid "Do not use fp registers"
+msgstr "No usar registres fp"
+
+#: config/alpha/alpha.h:284
+msgid "Do not assume GAS"
+msgstr "No assumir GAS"
+
+#: config/alpha/alpha.h:285
+msgid "Assume GAS"
+msgstr "Assumir GAS"
+
+#: config/alpha/alpha.h:287
+msgid "Request IEEE-conformant math library routines (OSF/1)"
+msgstr "Requerir rutines de biblioteca matemàtica que compleixin amb IEEE (OSF/1)"
+
+#: config/alpha/alpha.h:289
+msgid "Emit IEEE-conformant code, without inexact exceptions"
+msgstr "Emetre codi que compleixi amb IEEE, sense excepcionsinexactes"
+
+#: config/alpha/alpha.h:291
+msgid "Emit IEEE-conformant code, with inexact exceptions"
+msgstr "Emetre codi que compleixi amb IEEE, amb excepcions inexactes"
+
+#: config/alpha/alpha.h:293
+msgid "Do not emit complex integer constants to read-only memory"
+msgstr "No emetre constants enteres complexes a memòria de només lectura"
+
+#: config/alpha/alpha.h:294
+msgid "Use VAX fp"
+msgstr "Usar fp VAX"
+
+#: config/alpha/alpha.h:295
+msgid "Do not use VAX fp"
+msgstr "No usar fp VAX"
+
+#: config/alpha/alpha.h:296
+msgid "Emit code for the byte/word ISA extension"
+msgstr "Emetre codi per a l'extensió ISA octet/word"
+
+#: config/alpha/alpha.h:299
+msgid "Emit code for the motion video ISA extension"
+msgstr "Emetre codi per a l'extensió ISA de vídeo en moviment"
+
+#: config/alpha/alpha.h:302
+msgid "Emit code for the fp move and sqrt ISA extension"
+msgstr "Emetre codi per a l'extensió ISA de move i sqrt de fp"
+
+#: config/alpha/alpha.h:304
+msgid "Emit code for the counting ISA extension"
+msgstr "Emetre codi per a l'extensió ISA de compte"
+
+#: config/alpha/alpha.h:307
+msgid "Emit code using explicit relocation directives"
+msgstr "Emetre codi utilitzant directives explícites de reassignació"
+
+#: config/alpha/alpha.h:310
+msgid "Emit 16-bit relocations to the small data areas"
+msgstr "Emetre reassignació de 16 bits per a las àreas de dades petites"
+
+#: config/alpha/alpha.h:312
+msgid "Emit 32-bit relocations to the small data areas"
+msgstr "Emetre reassignació de 32 bits per a las àreas de dades petites"
+
+#: config/alpha/alpha.h:314
+msgid "Emit rdval instead of rduniq for thread pointer"
+msgstr ""
+
+#. For -mcpu=
+#. For -mtune=
+#. For -mfp-rounding-mode=[n|m|c|d]
+#. For -mfp-trap-mode=[n|u|su|sui]
+#. For -mtrap-precision=[p|f|i]
+#. For -mmemory-latency=
+#. For -mtls-size=
+#: config/alpha/alpha.h:343
+msgid "Use features of and schedule given CPU"
+msgstr "Usar les característiques d'el i el planificador del CPU donat"
+
+#: config/alpha/alpha.h:345
+msgid "Schedule given CPU"
+msgstr "planificat per al CPU donat"
+
+#: config/alpha/alpha.h:347
+msgid "Control the generated fp rounding mode"
+msgstr "Controlar la manera d'arrodoniment generat de fp"
+
+#: config/alpha/alpha.h:349
+msgid "Control the IEEE trap mode"
+msgstr "Controlar la manera de captura IEEE"
+
+#: config/alpha/alpha.h:351
+msgid "Control the precision given to fp exceptions"
+msgstr "Controlar la precisió donada a les excepcions de fp"
+
+#: config/alpha/alpha.h:353
+msgid "Tune expected memory latency"
+msgstr "Ajustar la latència esperada de memòria"
+
+#: config/alpha/alpha.h:355 config/ia64/ia64.h:225
+msgid "Specify bit size of immediate TLS offsets"
+msgstr ""
+
+#: config/arc/arc.c:135
+#, c-format
+msgid "bad value (%s) for -mcpu switch"
+msgstr "valor erroni (%s) per a l'interruptor -mcpu"
+
+#: config/arc/arc.c:362
+#, c-format
+msgid "argument of `%s' attribute is not a string constant"
+msgstr "l'argument de l'atribut \"%s\" no és una cadena constant"
+
+#: config/arc/arc.c:369
+#, c-format
+msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\""
+msgstr "l'argument de l'atribut \"%s\" no és \"ilink1\" o \"ilink2\""
+
+#: config/arc/arc.c:1708 config/m32r/m32r.c:2286
+#, c-format
+msgid "invalid operand to %%R code"
+msgstr "operant invàlid per al codi %%R"
+
+#: config/arc/arc.c:1740 config/m32r/m32r.c:2309
+#, c-format
+msgid "invalid operand to %%H/%%L code"
+msgstr "operant invàlid per al codi %%H/%%L"
+
+#: config/arc/arc.c:1763 config/m32r/m32r.c:2385
+#, c-format
+msgid "invalid operand to %%U code"
+msgstr "operant invàlid per al codi %%U"
+
+#: config/arc/arc.c:1774
+#, c-format
+msgid "invalid operand to %%V code"
+msgstr "operant invàlid per al codi %%V"
+
+#. Unknown flag.
+#: config/arc/arc.c:1781 config/m32r/m32r.c:2424 config/sparc/sparc.c:6533
+msgid "invalid operand output code"
+msgstr "operant invàlid per al codi de sortida"
+
+#: config/arm/arm.c:458
+#, c-format
+msgid "switch -mcpu=%s conflicts with -march= switch"
+msgstr "l'interruptor -mcpu=%s genera conflictes amb el switch -march="
+
+#: config/arm/arm.c:468 config/rs6000/rs6000.c:558 config/sparc/sparc.c:393
+#, c-format
+msgid "bad value (%s) for %s switch"
+msgstr "valor erroni (%s) per a l'interruptor %s"
+
+#: config/arm/arm.c:604
+msgid "target CPU does not support APCS-32"
+msgstr "el CPU objectiu no té suport per a APCS-32"
+
+#: config/arm/arm.c:609
+msgid "target CPU does not support APCS-26"
+msgstr "el CPU objectiu no té suport per a APCS-26"
+
+#: config/arm/arm.c:615
+msgid "target CPU does not support interworking"
+msgstr "el CPU objectiu no té suport per a treball intern"
+
+#: config/arm/arm.c:621
+msgid "target CPU does not support THUMB instructions"
+msgstr "el CPU objectiu no té suport les instruccions THUMB"
+
+#: config/arm/arm.c:635
+msgid "enabling backtrace support is only meaningful when compiling for the Thumb"
+msgstr "habilitar el suport de rastrejo cap a endarrere només té significat quan es compila per al Thumb"
+
+#: config/arm/arm.c:638
+msgid "enabling callee interworking support is only meaningful when compiling for the Thumb"
+msgstr "habilitar el suport de treball intern de cridades només té significat quan es compila per al Thumb"
+
+#: config/arm/arm.c:641
+msgid "enabling caller interworking support is only meaningful when compiling for the Thumb"
+msgstr "habilitar el suport de treball intern de cridat només té significat quan es compila per al Thumb"
+
+#: config/arm/arm.c:647
+msgid "interworking forces APCS-32 to be used"
+msgstr "el treball intern força l'ús de APCS-32"
+
+#: config/arm/arm.c:653
+msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
+msgstr "-mapcs-stack-check és incompatible amb -mno-apcs-frame"
+
+#: config/arm/arm.c:661
+msgid "-fpic and -mapcs-reent are incompatible"
+msgstr "-fpic i -mapcs-reent són incompatibles"
+
+#: config/arm/arm.c:664
+msgid "APCS reentrant code not supported. Ignored"
+msgstr "no se suporta el codi APCS que es torna a introduir.Ignorat"
+
+#: config/arm/arm.c:672
+msgid "-g with -mno-apcs-frame may not give sensible debugging"
+msgstr "-g amb -mno-apcs-frame no permet una depuració sensible"
+
+#: config/arm/arm.c:680
+msgid "passing floating point arguments in fp regs not yet supported"
+msgstr "encara no se suporta passar arguments de nombre de coma flotant en registres fp"
+
+#: config/arm/arm.c:709
+#, c-format
+msgid "invalid floating point emulation option: -mfpe-%s"
+msgstr "opció d'emulació de coma flotant invàlida: -mfpe-%s"
+
+#: config/arm/arm.c:733
+msgid "structure size boundary can only be set to 8 or 32"
+msgstr "El límit de la grandària de l'estructura només pot establir-se a 8 o 32"
+
+#: config/arm/arm.c:741
+msgid "-mpic-register= is useless without -fpic"
+msgstr "-mpic-register= és inútil sense -fpic"
+
+#: config/arm/arm.c:748
+#, c-format
+msgid "unable to use '%s' for PIC register"
+msgstr "no es pot usar \"%s\" per a registre PIC"
+
+#: config/arm/arm.c:2064 config/arm/arm.c:2087 config/avr/avr.c:4794
+#: config/c4x/c4x.c:4644 config/h8300/h8300.c:3667 config/i386/i386.c:1396
+#: config/i386/i386.c:1425 config/ip2k/ip2k.c:3224
+#: config/m68hc11/m68hc11.c:1267 config/mcore/mcore.c:3510
+#: config/ns32k/ns32k.c:1047 config/rs6000/rs6000.c:12538 config/sh/sh.c:5681
+#: config/sh/sh.c:5706 config/sh/sh.c:5745 config/stormy16/stormy16.c:2026
+#: config/v850/v850.c:2180
+#, c-format
+msgid "`%s' attribute only applies to functions"
+msgstr "l'atribut \"%s\" nomès s'aplica a funcions"
+
+#: config/arm/arm.c:9459
+msgid "unable to compute real location of stacked parameter"
+msgstr "no es pot calcular la ubicació real del paràmetre apilat"
+
+#: config/arm/arm.c:10138
+msgid "no low registers available for popping high registers"
+msgstr "no hi ha registres inferiors disponibles per a emmagatzemar registres superiors"
+
+#: config/arm/arm.c:10389
+msgid "interrupt Service Routines cannot be coded in Thumb mode"
+msgstr "no es poden codificar les Rutines de Serveis d'Interrupció en la manera Thumb"
+
+#: config/arm/pe.c:168 config/mcore/mcore.c:3358
+#, c-format
+msgid "initialized variable `%s' is marked dllimport"
+msgstr "la variable iniciada \"%s\" està marcada com dllimport"
+
+#: config/arm/pe.c:177
+#, c-format
+msgid "static variable `%s' is marked dllimport"
+msgstr "la variable estàtica \"%s\" està marcada com dllimport"
+
+#: config/arm/arm.h:416
+msgid "Generate APCS conformant stack frames"
+msgstr "Generar marcs de pila que compleixin amb APCS"
+
+#: config/arm/arm.h:419
+msgid "Store function names in object code"
+msgstr "Emmagatzemar noms de funció en el codi objecte"
+
+#: config/arm/arm.h:423
+msgid "Use the 32-bit version of the APCS"
+msgstr "Usar la versió 32-bit del APCS"
+
+#: config/arm/arm.h:425
+msgid "Use the 26-bit version of the APCS"
+msgstr "Usar la versió 26-bit del APCS"
+
+#: config/arm/arm.h:429
+msgid "Pass FP arguments in FP registers"
+msgstr "Passar els arguments FP en els registres FP"
+
+#: config/arm/arm.h:432
+msgid "Generate re-entrant, PIC code"
+msgstr "Generar codi PIC que es torna a introduir"
+
+#: config/arm/arm.h:435
+msgid "The MMU will trap on unaligned accesses"
+msgstr "La MMU atraparà els accessos no alineats"
+
+#: config/arm/arm.h:442
+msgid "Use library calls to perform FP operations"
+msgstr "Usar cridades a biblioteques per a realitzar les operacions de FP"
+
+#: config/arm/arm.h:444 config/i960/i960.h:281
+msgid "Use hardware floating point instructions"
+msgstr "Usar instruccions de maquinari per a coma flotant"
+
+#: config/arm/arm.h:446
+msgid "Assume target CPU is configured as big endian"
+msgstr "Assumir que el CPU destinació està configurat com big endian"
+
+#: config/arm/arm.h:448
+msgid "Assume target CPU is configured as little endian"
+msgstr "Assumir que el CPU destinació està configurat com little endian"
+
+#: config/arm/arm.h:450
+msgid "Assume big endian bytes, little endian words"
+msgstr "Assumir octets big endian ,mots little endian"
+
+#: config/arm/arm.h:452
+msgid "Support calls between Thumb and ARM instruction sets"
+msgstr "Suport a cridades entre els conjunts d'instruccions Thumb i ARM"
+
+#: config/arm/arm.h:455
+msgid "Generate a call to abort if a noreturn function returns"
+msgstr "Generar una cridada a avortar si una funció noreturnretorna"
+
+#: config/arm/arm.h:458
+msgid "Do not move instructions into a function's prologue"
+msgstr "No moure les instruccions al pròleg d'una funció"
+
+#: config/arm/arm.h:461
+msgid "Do not load the PIC register in function prologues"
+msgstr "No carregar el registre PIC en els pròlegs de funció"
+
+#: config/arm/arm.h:464
+msgid "Generate call insns as indirect calls, if necessary"
+msgstr "Generar les cridades insns com cridades indirectes, si és necessari"
+
+#: config/arm/arm.h:467
+msgid "Compile for the Thumb not the ARM"
+msgstr "Compilar per al Thumb on per al ARM"
+
+#: config/arm/arm.h:471
+msgid "Thumb: Generate (non-leaf) stack frames even if not needed"
+msgstr "Thumb: Generar marcs de pila (no-fulles) encara si no és necessari"
+
+#: config/arm/arm.h:474
+msgid "Thumb: Generate (leaf) stack frames even if not needed"
+msgstr "Thumb: Generar marcs de pila (fulles) encara si no és necessari"
+
+#: config/arm/arm.h:477
+msgid "Thumb: Assume non-static functions may be called from ARM code"
+msgstr "Thumb: Assumir que les funcions no static poden ser cridades des de codi ARM"
+
+#: config/arm/arm.h:481
+msgid "Thumb: Assume function pointers may go to non-Thumb aware code"
+msgstr "Thumb: Assumir que els punters de funció poden anar a codi no informat sobre Thumb"
+
+#: config/arm/arm.h:491
+msgid "Specify the name of the target CPU"
+msgstr "Especificar el nom del CPU destinació"
+
+#: config/arm/arm.h:493
+msgid "Specify the name of the target architecture"
+msgstr "Especificar el nom de l'arquitectura destinació"
+
+#: config/arm/arm.h:497
+msgid "Specify the version of the floating point emulator"
+msgstr "Especifica la versió de l'emulador de nombre de coma flotant"
+
+#: config/arm/arm.h:499
+msgid "Specify the minimum bit alignment of structures"
+msgstr "Especificar l'alineació mínima de bit de les estructures"
+
+#: config/arm/arm.h:501
+msgid "Specify the register to be used for PIC addressing"
+msgstr "Especificar el registre a usar per al adreçament PIC"
+
+#: config/arm/pe.h:65
+msgid "Ignore dllimport attribute for functions"
+msgstr "Ignorar l'atribut dllimport per a les funcions"
+
+#: config/avr/avr.c:528
+#, c-format
+msgid "large frame pointer change (%d) with -mtiny-stack"
+msgstr "canvi de punter gran de marc (%d) amb -mtiny-stack"
+
+#: config/avr/avr.c:1135
+msgid "bad address, not (reg+disp):"
+msgstr "direcció errònia, no (reg+disp)"
+
+#: config/avr/avr.c:1143
+msgid "internal compiler error. Bad address:"
+msgstr "error intern del compilador. Direcció errònia:"
+
+#: config/avr/avr.c:1156
+msgid "internal compiler error. Unknown mode:"
+msgstr "error intern del compilador. Mode desconegut:"
+
+#: config/avr/avr.c:1864 config/avr/avr.c:2576
+msgid "invalid insn:"
+msgstr "insn invàlid:"
+
+#: config/avr/avr.c:1901 config/avr/avr.c:1987 config/avr/avr.c:2036
+#: config/avr/avr.c:2045 config/avr/avr.c:2143 config/avr/avr.c:2315
+#: config/avr/avr.c:2613 config/avr/avr.c:2724
+msgid "incorrect insn:"
+msgstr "insn incorrecte:"
+
+#: config/avr/avr.c:2064 config/avr/avr.c:2228 config/avr/avr.c:2386
+#: config/avr/avr.c:2768
+msgid "unknown move insn:"
+msgstr "desplaçament insn desconegut:"
+
+#: config/avr/avr.c:3003
+msgid "bad shift insn:"
+msgstr "desplaçament insn erròni:"
+
+#: config/avr/avr.c:3119 config/avr/avr.c:3549 config/avr/avr.c:3929
+msgid "internal compiler error. Incorrect shift:"
+msgstr "error intern del compilador. Direcció errònia:"
+
+#: config/avr/avr.c:4767 config/ip2k/ip2k.c:3197
+msgid "only initialized variables can be placed into program memory area"
+msgstr "Només les variables iniciades es poden ubicar en l'àrea de memòria del programa."
+
+#: config/avr/avr.c:4866
+msgid "only uninitialized variables can be placed in the .noinit section"
+msgstr "Només les variables sense inicialitzar es poden col·locar en la secció noinit"
+
+#: config/avr/avr.c:4881
+#, c-format
+msgid "MCU `%s' supported for assembler only"
+msgstr "MCU \"%s\" només té suport per a ensemblador"
+
+#: config/avr/avr.h:78
+msgid "Assume int to be 8 bit integer"
+msgstr "Assumir que int sigui enter de 8 bit"
+
+#: config/avr/avr.h:80
+msgid "Change the stack pointer without disabling interrupts"
+msgstr "Canviar el punter de la pila sense desactivar les interrupcions"
+
+#: config/avr/avr.h:82
+msgid "Use subroutines for function prologue/epilogue"
+msgstr "Usar subrutines per al pròleg/epíleg de funció"
+
+#: config/avr/avr.h:84
+msgid "Change only the low 8 bits of the stack pointer"
+msgstr "Canviar només els 8 bits baixos del punter de pila"
+
+#: config/avr/avr.h:86
+msgid "Do not generate tablejump insns"
+msgstr "No generar insns de salt de matriu"
+
+#: config/avr/avr.h:88
+msgid "Use rjmp/rcall (limited range) on >8K devices"
+msgstr ""
+
+#: config/avr/avr.h:91
+msgid "Output instruction sizes to the asm file"
+msgstr "Grandàries d'instrucció de sortida al fitxer asm"
+
+#: config/avr/avr.h:108
+msgid "Specify the initial stack address"
+msgstr "Especificar l'adreça inicial de la pila"
+
+#: config/avr/avr.h:109
+msgid "Specify the MCU name"
+msgstr "Especificar el nom MCU"
+
+#. `GIV_SORT_CRITERION(GIV1, GIV2)'
+#. In some cases, the strength reduction optimization pass can
+#. produce better code if this is defined. This macro controls the
+#. order that induction variables are combined. This macro is
+#. particularly useful if the target has limited addressing modes.
+#. For instance, the SH target has only positive offsets in
+#. addresses. Thus sorting to put the smallest address first allows
+#. the most combinations to be found.
+#: config/avr/avr.h:2450
+msgid "trampolines not supported"
+msgstr "els trampolins no tenen suport"
+
+#: config/c4x/c4x-c.c:69
+#, c-format
+msgid "missing '(' after '#pragma %s' - ignored"
+msgstr "\"(\" faltant desprès de \"#pragma %s\" - ignorat"
+
+#: config/c4x/c4x-c.c:72
+#, c-format
+msgid "missing function name in '#pragma %s' - ignored"
+msgstr "nom de funcció faltant en \"#pragma %s\" - ignorat"
+
+#: config/c4x/c4x-c.c:77
+#, c-format
+msgid "malformed '#pragma %s' - ignored"
+msgstr "\"#pragma %s\" malformat - ignorat"
+
+#: config/c4x/c4x-c.c:79
+#, c-format
+msgid "missing section name in '#pragma %s' - ignored"
+msgstr "nom de secció faltant en \"#pragma %s\" - ignorat"
+
+#: config/c4x/c4x-c.c:84
+#, c-format
+msgid "missing ')' for '#pragma %s' - ignored"
+msgstr "\")\" faltant per a \"#pragma %s\" - ignorat"
+
+#: config/c4x/c4x-c.c:87
+#, c-format
+msgid "junk at end of '#pragma %s'"
+msgstr "escombraries al final de \"#pragma %s\""
+
+#: config/c4x/c4x.c:280
+#, c-format
+msgid "unknown CPU version %d, using 40.\n"
+msgstr "versió desconeguda de CPU %d, usant 40.\n"
+
+#: config/c4x/c4x.c:853
+#, c-format
+msgid "ISR %s requires %d words of local vars, max is 32767"
+msgstr "El ISR %s requereix de %d words de variables locals,el màxim és 32767."
+
+#: config/c4x/c4x.c:1602
+msgid "using CONST_DOUBLE for address"
+msgstr "ùs de CONST_DOUBLE per a l'adreça"
+
+#: config/c4x/c4x.c:1742
+msgid "c4x_address_cost: Invalid addressing mode"
+msgstr "c4x_address_cost: Moda d'adreçament invàlid"
+
+#: config/c4x/c4x.c:1884
+#, c-format
+msgid "c4x_print_operand: %%L inconsistency"
+msgstr "c4x_print_operand: inconsistència %%L"
+
+#: config/c4x/c4x.c:1890
+#, c-format
+msgid "c4x_print_operand: %%N inconsistency"
+msgstr "c4x_print_operand: inconsistència %%N"
+
+#: config/c4x/c4x.c:1931
+#, c-format
+msgid "c4x_print_operand: %%O inconsistency"
+msgstr "c4x_print_operand: inconsistència %%O"
+
+#: config/c4x/c4x.c:2026
+msgid "c4x_print_operand: Bad operand case"
+msgstr "c4x_print_operand: Operant casi erroni"
+
+#: config/c4x/c4x.c:2069
+msgid "c4x_print_operand_address: Bad post_modify"
+msgstr "c4x_print_operand_address: post_modify erroni"
+
+#: config/c4x/c4x.c:2091
+msgid "c4x_print_operand_address: Bad pre_modify"
+msgstr "c4x_print_operand_address: pre_modify erroni"
+
+#: config/c4x/c4x.c:2139 config/c4x/c4x.c:2151 config/c4x/c4x.c:2166
+msgid "c4x_print_operand_address: Bad operand case"
+msgstr "c4x_print_operand_address: Operant casi erroni"
+
+#: config/c4x/c4x.c:2422
+msgid "c4x_rptb_insert: Cannot find start label"
+msgstr "c4x_rptb_insert: No es pot trobar l'etiqueta d'inici"
+
+#: config/c4x/c4x.c:3409 config/c4x/c4x.c:3429
+msgid "mode not QImode"
+msgstr "el moda no és QImode"
+
+#: config/c4x/c4x.c:3514
+msgid "invalid indirect memory address"
+msgstr "adreça indirecta de memòria invàlida"
+
+#: config/c4x/c4x.c:3603
+msgid "invalid indirect (S) memory address"
+msgstr "adreça indirecta de memòria (S) invàlida"
+
+#: config/c4x/c4x.c:3944
+msgid "c4x_valid_operands: Internal error"
+msgstr "c4x_valid_operands: error intern"
+
+#: config/c4x/c4x.c:4424
+msgid "c4x_operand_subword: invalid mode"
+msgstr "c4x_operand_subword: moda invàlid"
+
+#: config/c4x/c4x.c:4427
+msgid "c4x_operand_subword: invalid operand"
+msgstr "c4x_operand_subword: operant invàlid"
+
+#. We could handle these with some difficulty.
+#. e.g., *p-- => *(p-=2); *(p+1).
+#: config/c4x/c4x.c:4453
+msgid "c4x_operand_subword: invalid autoincrement"
+msgstr "c4x_operand_subword: autoincrement invàlid"
+
+#: config/c4x/c4x.c:4459
+msgid "c4x_operand_subword: invalid address"
+msgstr "c4x_operand_subword: adreça invàlid"
+
+#: config/c4x/c4x.c:4470
+msgid "c4x_operand_subword: address not offsettable"
+msgstr "c4x_operand_subword: adreça no desplaçabla"
+
+#: config/c4x/c4x.c:4670
+msgid "c4x_rptb_rpts_p: Repeat block top label moved\n"
+msgstr "c4x_rptb_rpts_p: etiqueta superiora de bloc de repetició desplaçada\n"
+
+#. Name of the c4x assembler.
+#. Name of the c4x linker.
+#. Define assembler options.
+#. Define linker options.
+#. Specify the end file to link with.
+#. Target compilation option flags.
+#. Small memory model.
+#. Use 24-bit MPYI for C3x.
+#. Fast fixing of floats.
+#. Allow use of RPTS.
+#. Emit C3x code.
+#. Be compatible with TI assembler.
+#. Be paranoid about DP reg. in ISRs.
+#. Pass arguments on stack.
+#. Enable features under development.
+#. Enable repeat block.
+#. Use BK as general register.
+#. Use decrement and branch for C3x.
+#. Enable debugging of GCC.
+#. Force constants into registers.
+#. Allow unsigned loop counters.
+#. Force op0 and op1 to be same.
+#. Save all 40 bits for floats.
+#. Allow parallel insns.
+#. Allow MPY||ADD, MPY||SUB insns.
+#. Assume mem refs possibly aliased.
+#. Emit C30 code.
+#. Emit C31 code.
+#. Emit C32 code.
+#. Emit C33 code.
+#. Emit C40 code.
+#. Emit C44 code.
+#. Run-time compilation parameters selecting different hardware subsets.
+#.
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of triplets in braces,
+#. each pair being { "NAME", VALUE, "DESCRIPTION" }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/c4x/c4x.h:168
+msgid "Small memory model"
+msgstr "Model de memòria small"
+
+#: config/c4x/c4x.h:170
+msgid "Big memory model"
+msgstr "Model de memòria big"
+
+#: config/c4x/c4x.h:172
+msgid "Use MPYI instruction for C3x"
+msgstr "Usar instrucció MPYI per a C3x"
+
+#: config/c4x/c4x.h:174
+msgid "Do not use MPYI instruction for C3x"
+msgstr "No usar instrucció MPYI per a C3x"
+
+#: config/c4x/c4x.h:176
+msgid "Use fast but approximate float to integer conversion"
+msgstr "Usar conversió de coma flotant a enter ràpida però aproximada"
+
+#: config/c4x/c4x.h:178
+msgid "Use slow but accurate float to integer conversion"
+msgstr "Usar conversió de coma flotant a enter lenta però exacta"
+
+#: config/c4x/c4x.h:180
+msgid "Enable use of RTPS instruction"
+msgstr "Activar l'ús de la instrucció RTPS"
+
+#: config/c4x/c4x.h:182
+msgid "Disable use of RTPS instruction"
+msgstr "Desactivar l'ús de la instrucció RTPS"
+
+#: config/c4x/c4x.h:184
+msgid "Enable use of RTPB instruction"
+msgstr "Activar l'ús de la instrucció RTPB"
+
+#: config/c4x/c4x.h:186
+msgid "Disable use of RTPB instruction"
+msgstr "Desactivar l'ús de la instrucció RTPB"
+
+#: config/c4x/c4x.h:188
+msgid "Generate code for C30 CPU"
+msgstr "Generar codi per al CPU C30"
+
+#: config/c4x/c4x.h:190
+msgid "Generate code for C31 CPU"
+msgstr "Generar codi per al CPU C31"
+
+#: config/c4x/c4x.h:192
+msgid "Generate code for C32 CPU"
+msgstr "Generar codi per al CPU C32"
+
+#: config/c4x/c4x.h:194
+msgid "Generate code for C33 CPU"
+msgstr "Generar codi per al CPU C33"
+
+#: config/c4x/c4x.h:196
+msgid "Generate code for C40 CPU"
+msgstr "Generar codi per al CPU C40"
+
+#: config/c4x/c4x.h:198
+msgid "Generate code for C44 CPU"
+msgstr "Generar codi per al CPU C44"
+
+#: config/c4x/c4x.h:200
+msgid "Emit code compatible with TI tools"
+msgstr "Emetre codi compatible amb les eines TI"
+
+#: config/c4x/c4x.h:202
+msgid "Emit code to use GAS extensions"
+msgstr "Emetre codi per a usar les extensions de GAS"
+
+#: config/c4x/c4x.h:204 config/c4x/c4x.h:208
+msgid "Save DP across ISR in small memory model"
+msgstr "Guardar DP entre ISR en el model de memòria small"
+
+#: config/c4x/c4x.h:206 config/c4x/c4x.h:210
+msgid "Don't save DP across ISR in small memory model"
+msgstr "No guardar DP entre ISR en el model de memòria small"
+
+#: config/c4x/c4x.h:212
+msgid "Pass arguments on the stack"
+msgstr "Passar els arguments en la pila"
+
+#: config/c4x/c4x.h:214
+msgid "Pass arguments in registers"
+msgstr "Passar els arguments en els registres"
+
+#: config/c4x/c4x.h:216
+msgid "Enable new features under development"
+msgstr "Activar noves característiques en desenvolupament"
+
+#: config/c4x/c4x.h:218
+msgid "Disable new features under development"
+msgstr "Desactivar noves característiques en desenvolupament"
+
+#: config/c4x/c4x.h:220
+msgid "Use the BK register as a general purpose register"
+msgstr "Usar el registre BK com un registre de propòsit general"
+
+#: config/c4x/c4x.h:222
+msgid "Do not allocate BK register"
+msgstr "No assignar el registre BK"
+
+#: config/c4x/c4x.h:224
+msgid "Enable use of DB instruction"
+msgstr "Activar l'ús de la instrucció DB"
+
+#: config/c4x/c4x.h:226
+msgid "Disable use of DB instruction"
+msgstr "Desactivar l'ús de la instrucció DB"
+
+#: config/c4x/c4x.h:228
+msgid "Enable debugging"
+msgstr "Activar la depuració"
+
+#: config/c4x/c4x.h:230
+msgid "Disable debugging"
+msgstr "Desactivar la depuració"
+
+#: config/c4x/c4x.h:232
+msgid "Force constants into registers to improve hoisting"
+msgstr "Forçar les constants dintre de registres per a millorar l'aixecament"
+
+#: config/c4x/c4x.h:234
+msgid "Don't force constants into registers"
+msgstr "No forçar les constants en els registres"
+
+#: config/c4x/c4x.h:236
+msgid "Force RTL generation to emit valid 3 operand insns"
+msgstr "Forçar que la generació de RTL emeti 3 operandes insns vàlids"
+
+#: config/c4x/c4x.h:238
+msgid "Allow RTL generation to emit invalid 3 operand insns"
+msgstr "Permetre que la generació de RTL emeti 3 operandes insns invàlids"
+
+#: config/c4x/c4x.h:240
+msgid "Allow unsigned iteration counts for RPTB/DB"
+msgstr "Permetre comptes de iteracions unsigned per a RPTB/DB"
+
+#: config/c4x/c4x.h:242
+msgid "Disallow unsigned iteration counts for RPTB/DB"
+msgstr "No permetre comptes de iteracions unsigned per a RPTB/DB"
+
+#: config/c4x/c4x.h:244
+msgid "Preserve all 40 bits of FP reg across call"
+msgstr "Preservar els 40 bits del registre FP entre cridades"
+
+#: config/c4x/c4x.h:246
+msgid "Only preserve 32 bits of FP reg across call"
+msgstr "Només preservar 32 bits del registre FP entre cridades"
+
+#: config/c4x/c4x.h:248
+msgid "Enable parallel instructions"
+msgstr "Activar les funcions paral·leles"
+
+#: config/c4x/c4x.h:250
+msgid "Disable parallel instructions"
+msgstr "Desactivar les funcions paral·leles"
+
+#: config/c4x/c4x.h:252
+msgid "Enable MPY||ADD and MPY||SUB instructions"
+msgstr "Activar les instruccions MPY||ADD i MPY||SUB"
+
+#: config/c4x/c4x.h:254
+msgid "Disable MPY||ADD and MPY||SUB instructions"
+msgstr "Desactivar les instruccions MPY||ADD i MPY||SUB"
+
+#: config/c4x/c4x.h:256
+msgid "Assume that pointers may be aliased"
+msgstr "Assumir que es poden fer alies dels punters"
+
+#: config/c4x/c4x.h:258
+msgid "Assume that pointers not aliased"
+msgstr "Assumir que els punters no tenen alies"
+
+#: config/c4x/c4x.h:331
+msgid "Specify maximum number of iterations for RPTS"
+msgstr "Especificar el nombre màxim de iteracions per a RPTS"
+
+#: config/c4x/c4x.h:333
+msgid "Select CPU to generate code for"
+msgstr "Seleccionar el CPU per al qual es genera codi"
+
+#: config/cris/cris.c:599
+msgid "unexpected index-type in cris_print_index"
+msgstr "index-type inesperat en cris_print_index"
+
+#: config/cris/cris.c:615
+msgid "unexpected base-type in cris_print_base"
+msgstr "base-type inesperat en cris_print_base"
+
+#: config/cris/cris.c:908
+#, c-format
+msgid "stackframe too big: %d bytes"
+msgstr "marc de pila massa grand: %d bytes"
+
+#: config/cris/cris.c:1223
+msgid "allocated but unused delay list in epilogue"
+msgstr "llista d'alenteixo assignada però sense ús en l'epíleg"
+
+#: config/cris/cris.c:1233
+msgid "unexpected function type needing stack adjustment for __builtin_eh_return"
+msgstr "el tipus de funció inesperat necessita un ajustament de pila per a _builtin_eh_return"
+
+#: config/cris/cris.c:1312
+msgid "invalid operand for 'b' modifier"
+msgstr "operant invàlid per al modificador \"b\""
+
+#: config/cris/cris.c:1324
+msgid "invalid operand for 'v' modifier"
+msgstr "operant invàlid per al modificador \"v\""
+
+#: config/cris/cris.c:1334
+msgid "invalid operand for 'P' modifier"
+msgstr "operant invàlid per al modificador \"P\""
+
+#: config/cris/cris.c:1341
+msgid "invalid operand for 'p' modifier"
+msgstr "operant invàlid per al modificador \"p\""
+
+#: config/cris/cris.c:1380
+msgid "invalid operand for 'z' modifier"
+msgstr "operant invàlid per al modificador \"z\""
+
+#: config/cris/cris.c:1411 config/cris/cris.c:1441
+msgid "invalid operand for 'H' modifier"
+msgstr "operant invàlid per al modificador \"H\""
+
+#: config/cris/cris.c:1417
+msgid "bad register"
+msgstr "registre erroni"
+
+#: config/cris/cris.c:1455
+msgid "invalid operand for 'e' modifier"
+msgstr "operant invàlid per al modificador \"e\""
+
+#: config/cris/cris.c:1472
+msgid "invalid operand for 'm' modifier"
+msgstr "operant invàlid per al modificador \"m\""
+
+#: config/cris/cris.c:1497
+msgid "invalid operand for 'A' modifier"
+msgstr "operant invàlid per al modificador \"A\""
+
+#: config/cris/cris.c:1505
+msgid "invalid operand for 'D' modifier"
+msgstr "operant invàlid per al modificador \"D\""
+
+#: config/cris/cris.c:1519
+msgid "invalid operand for 'T' modifier"
+msgstr "operant invàlid per al modificador \"T\""
+
+#: config/cris/cris.c:1528
+msgid "invalid operand modifier letter"
+msgstr "lletra de modificador d'operant invàlid"
+
+#: config/cris/cris.c:1536
+#, c-format
+msgid "internal error: bad register: %d"
+msgstr "error intern: registre erroni: %d"
+
+#: config/cris/cris.c:1584
+msgid "unexpected multiplicative operand"
+msgstr "operant multiplicatiu inesperat"
+
+#: config/cris/cris.c:1604
+msgid "unexpected operand"
+msgstr "operant inesperat"
+
+#: config/cris/cris.c:1639 config/cris/cris.c:1649
+msgid "unrecognized address"
+msgstr "adreça no reconeguda"
+
+#: config/cris/cris.c:2005
+msgid "internal error: sideeffect-insn affecting main effect"
+msgstr "error intern: sideeffect-insn afectant el efecte principal"
+
+#. If we get here, the caller got its initial tests wrong.
+#: config/cris/cris.c:2292
+msgid "internal error: cris_side_effect_mode_ok with bad operands"
+msgstr "error intern: cris_side_effect_mode_ok amb operants erronis"
+
+#: config/cris/cris.c:2374 config/cris/cris.c:2432
+msgid "unrecognized supposed constant"
+msgstr "suposada constant no reconeguda"
+
+#: config/cris/cris.c:2473
+msgid "unrecognized supposed constant in cris_global_pic_symbol"
+msgstr "suposada constant no reconeguda en cris_global_pic_symbol"
+
+#: config/cris/cris.c:2492
+#, c-format
+msgid "-max-stackframe=%d is not usable, not between 0 and %d"
+msgstr "no es pot usar -max-stackframe=%d, no està entre 0 i %d"
+
+#: config/cris/cris.c:2520
+#, c-format
+msgid "unknown CRIS version specification in -march= or -mcpu= : %s"
+msgstr "especificació de versió CRIS desconeguda en -march= o -mcpu= : %s"
+
+#: config/cris/cris.c:2556
+#, c-format
+msgid "unknown CRIS cpu version specification in -mtune= : %s"
+msgstr "especificació de versió de cpu de CRIS desconeguda en -mtune= : %s"
+
+#: config/cris/cris.c:2574
+msgid "-fPIC and -fpic are not supported in this configuration"
+msgstr "no és dona suport a -fPIC i -fpic en aquesta configuració"
+
+#: config/cris/cris.c:2590
+msgid "that particular -g option is invalid with -maout and -melinux"
+msgstr "aquesta opció particular -g és invàlid amb -maout i -melinux"
+
+#: config/cris/cris.c:2824 config/cris/cris.c:2869
+msgid "unexpected side-effects in address"
+msgstr "effecte de vora inesperat en l'adreça"
+
+#. Labels are never marked as global symbols.
+#: config/cris/cris.c:2966 config/cris/cris.c:2997
+msgid "unexpected PIC symbol"
+msgstr "símbol PIC inesperat"
+
+#: config/cris/cris.c:2970
+msgid "PIC register isn't set up"
+msgstr "el registre PIC no està preparat"
+
+#: config/cris/cris.c:2983 config/cris/cris.c:3066
+msgid "unexpected address expression"
+msgstr "expressió d'adreça inesperada"
+
+#: config/cris/cris.c:3001
+msgid "emitting PIC operand, but PIC register isn't set up"
+msgstr "emetant un operant PIC, però el registre PIC no està preparat"
+
+#: config/cris/cris.c:3010
+msgid "unexpected NOTE as addr_const:"
+msgstr "NOTE com a addr_const inesperat:"
+
+#: config/cris/aout.h:108
+msgid "Compile for the MMU-less Etrax 100-based elinux system"
+msgstr "Compilar per al sistema elinux Etrax basat en 100 sense MMU"
+
+#: config/cris/aout.h:115
+msgid "For elinux, request a specified stack-size for this program"
+msgstr "Per a elinux, sol·licitar una grandària de pila especificada per a aquest programa"
+
+#. No "no-etrax" as it does not really imply any model. On the other hand, "etrax" implies the common (and large) subset matching all models.
+#: config/cris/cris.h:340
+msgid "Compile for ETRAX 4 (CRIS v3)"
+msgstr "Compilar per a ETRAX 4 (CRIS v3)"
+
+#: config/cris/cris.h:345
+msgid "Compile for ETRAX 100 (CRIS v8)"
+msgstr "Compilar per a ETRAX 100 (CRIS v8)"
+
+#: config/cris/cris.h:349
+msgid "Emit verbose debug information in assembly code"
+msgstr "Emetre informació de depuració detallada en el codi assemblador"
+
+#: config/cris/cris.h:352
+msgid "Do not use condition codes from normal instructions"
+msgstr "No usar codis de condició per a les instruccions normals"
+
+#: config/cris/cris.h:356
+msgid "Do not emit addressing modes with side-effect assignment"
+msgstr "No emetre maneres d'adreçament amb assignacions col·laterals"
+
+#: config/cris/cris.h:359
+msgid "Do not tune stack alignment"
+msgstr "No ajustar l'alineació de la pila"
+
+#: config/cris/cris.h:362
+msgid "Do not tune writable data alignment"
+msgstr "No ajustar l'alineació de les dades modificables"
+
+#: config/cris/cris.h:365
+msgid "Do not tune code and read-only data alignment"
+msgstr "No ajustar l'alineació del codi i de dades només de lectura"
+
+#: config/cris/cris.h:374
+msgid "Align code and data to 32 bits"
+msgstr "Alinear codi i dades a 32 bits"
+
+#: config/cris/cris.h:387
+msgid "Don't align items in code or data"
+msgstr "No alinear elements en el codi o les dades"
+
+#: config/cris/cris.h:390
+msgid "Do not emit function prologue or epilogue"
+msgstr "No emetre pròleg o epíleg de funcions"
+
+#. We have to handle this m-option here since we can't wash it off in both CC1_SPEC and CC1PLUS_SPEC.
+#: config/cris/cris.h:394
+msgid "Use the most feature-enabling options allowed by other options"
+msgstr "Usar la major quantitat de característiques permeses per altres opcions"
+
+#. We must call it "override-" since calling it "no-" will cause gcc.c to forget it, if there's a "later" -mbest-lib-options. Kludgy, but needed for some multilibbed files.
+#: config/cris/cris.h:400
+msgid "Override -mbest-lib-options"
+msgstr "Anular -mbest-lib-options"
+
+#: config/cris/cris.h:432
+msgid "Generate code for the specified chip or CPU version"
+msgstr "Generar codi per al xip especificat o la versió de CPU"
+
+#: config/cris/cris.h:434
+msgid "Tune alignment for the specified chip or CPU version"
+msgstr "Ajustar alineació per al xip especificat o la versió de CPU"
+
+#: config/cris/cris.h:436
+msgid "Warn when a stackframe is larger than the specified size"
+msgstr "Avisar quan un marc de pila sigui més gran que la grandària especificada"
+
+#. Node: Profiling
+#: config/cris/cris.h:1022
+msgid "no FUNCTION_PROFILER for CRIS"
+msgstr "no FUNCTION_PROFILER per a CRIS"
+
+#: config/cris/linux.h:71
+msgid "Together with -fpic and -fPIC, do not use GOTPLT references"
+msgstr "Juntament amb -fpic i -fPIC, no utilitzar referències GOTPLT"
+
+#: config/d30v/d30v.c:207
+#, c-format
+msgid "bad modes_tieable_p for register %s, mode1 %s, mode2 %s"
+msgstr "modes_tieable_p erroni per al registre %s, manera1 %s, manera2 %s"
+
+#: config/d30v/d30v.c:2666
+msgid "bad insn to d30v_print_operand_address:"
+msgstr "insn erronia per a d30v_print_operand_address:"
+
+#: config/d30v/d30v.c:2683 config/d30v/d30v.c:2744 config/d30v/d30v.c:2765
+#: config/d30v/d30v.c:2783
+msgid "bad insn to d30v_print_operand_memory_reference:"
+msgstr "insn erroni per a d30v_print_operand_memory_reference:"
+
+#: config/d30v/d30v.c:2851
+msgid "bad insn to d30v_print_operand, 'f' modifier:"
+msgstr "insn erroni per a d30v_print_operand, modificador \"f\":"
+
+#: config/d30v/d30v.c:2860
+msgid "bad insn to d30v_print_operand, 'A' modifier:"
+msgstr "insn erroni per a d30v_print_operand, modificador \"A\":"
+
+#: config/d30v/d30v.c:2867
+msgid "bad insn to d30v_print_operand, 'M' modifier:"
+msgstr "insn erroni per a d30v_print_operand, modificador \"M\":"
+
+#: config/d30v/d30v.c:2921
+msgid "bad insn to print_operand, 'F' or 'T' modifier:"
+msgstr "insn erroni per a print_operand, modificador \"F\" o \"T\":"
+
+#: config/d30v/d30v.c:2932
+msgid "bad insn to print_operand, 'B' modifier:"
+msgstr "insn erroni per a print_operand, modificador \"B\":"
+
+#: config/d30v/d30v.c:2939
+msgid "bad insn to print_operand, 'E' modifier:"
+msgstr "insn erroni per a print_operand, modificador \"E\":"
+
+#: config/d30v/d30v.c:2957
+msgid "bad insn to print_operand, 'R' modifier:"
+msgstr "insn erroni per a print_operand, modificador \"R\":"
+
+#: config/d30v/d30v.c:2966 config/d30v/d30v.c:2974
+msgid "bad insn to print_operand, 's' modifier:"
+msgstr "insn erroni per a print_operand, modificador \"s\":"
+
+#: config/d30v/d30v.c:3003
+msgid "bad insn in d30v_print_operand, 0 case"
+msgstr "insn erroni per a d30v_print_operand, casi 0"
+
+#: config/d30v/d30v.c:3301
+msgid "d30v_emit_comparison"
+msgstr "d30v_emit_comparison"
+
+#: config/d30v/d30v.c:3345
+msgid "bad call to d30v_move_2words"
+msgstr "cirdada ad30v_move_2words errònia"
+
+#: config/d30v/d30v.h:114
+msgid "Enable use of conditional move instructions"
+msgstr "Activar l'ús de les instruccions condicionals move"
+
+#: config/d30v/d30v.h:117
+msgid "Disable use of conditional move instructions"
+msgstr "Desactivar l'ús de les instruccions condicionals move"
+
+#: config/d30v/d30v.h:120
+msgid "Debug argument support in compiler"
+msgstr "Suport per a depuració d'arguments en el compilador"
+
+#: config/d30v/d30v.h:123
+msgid "Debug stack support in compiler"
+msgstr "Suport per a depuració de pila en el compilador"
+
+#: config/d30v/d30v.h:126
+msgid "Debug memory address support in compiler"
+msgstr "Suport per a depuració d'adreces de memòria en el compilador"
+
+#: config/d30v/d30v.h:129
+msgid "Make adjacent short instructions parallel if possible"
+msgstr "Fer paral·leles les instruccions adjacents talles siés possible."
+
+#: config/d30v/d30v.h:132
+msgid "Do not make adjacent short instructions parallel"
+msgstr "No fer paral·leles les instruccions adjacents."
+
+#: config/d30v/d30v.h:135 config/d30v/d30v.h:138
+msgid "Link programs/data to be in external memory by default"
+msgstr "Enllaçar programes/dades per a estar en la memòria externa per omissió"
+
+#: config/d30v/d30v.h:141
+msgid "Link programs/data to be in onchip memory by default"
+msgstr "Enllaçar programes/dades per a estar en la memòria del xip per omissió"
+
+#: config/d30v/d30v.h:149
+msgid "Change the branch costs within the compiler"
+msgstr "Canviar els costos de ramificació dintre del compilador"
+
+#: config/d30v/d30v.h:152
+msgid "Change the threshold for conversion to conditional execution"
+msgstr "Canviar el llindar per a la conversió a execució condicional"
+
+#: config/dsp16xx/dsp16xx.c:1446 config/dsp16xx/dsp16xx.c:1469
+msgid "stack size > 32k"
+msgstr "Grandària de la pila > 32k"
+
+#: config/dsp16xx/dsp16xx.c:1678
+msgid "invalid addressing mode"
+msgstr "manera d'adreçar invàlida"
+
+#: config/dsp16xx/dsp16xx.c:1821
+msgid "bad register extension code"
+msgstr "codi d'extensió de registre erroni"
+
+#: config/dsp16xx/dsp16xx.c:1921
+msgid "invalid offset in ybase addressing"
+msgstr "desplaçament invàlid en el adreçament de ybase"
+
+#: config/dsp16xx/dsp16xx.c:1924
+msgid "invalid register in ybase addressing"
+msgstr "registre invàlid en el adreçament de ybase"
+
+#: config/dsp16xx/dsp16xx.c:2099
+msgid "invalid shift operator in emit_1600_core_shift"
+msgstr "operador de desplaçament invàlid en emit_1600_core_shift"
+
+#: config/dsp16xx/dsp16xx.c:2428
+msgid "invalid mode for gen_tst_reg"
+msgstr "mode invàlid per a gen_tst_reg"
+
+#: config/dsp16xx/dsp16xx.c:2500
+msgid "invalid mode for integer comparison in gen_compare_reg"
+msgstr "mode invàlid per a la comparança entera en gen_compari_reg"
+
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/dsp16xx/dsp16xx.h:230
+msgid "Pass parameters in registers (default)"
+msgstr "Passar els paràmetres en els registres (per omissió)"
+
+#: config/dsp16xx/dsp16xx.h:232
+msgid "Don't pass parameters in registers"
+msgstr "No passar els paràmetres en els registres"
+
+#: config/dsp16xx/dsp16xx.h:234
+msgid "Generate code for near calls"
+msgstr "Generar codi per a cridades near"
+
+#: config/dsp16xx/dsp16xx.h:236
+msgid "Don't generate code for near calls"
+msgstr "No generar codi per a cridades near"
+
+#: config/dsp16xx/dsp16xx.h:238
+msgid "Generate code for near jumps"
+msgstr "Generar codi per a salts near"
+
+#: config/dsp16xx/dsp16xx.h:240
+msgid "Don't generate code for near jumps"
+msgstr "No generar codi per a salts near"
+
+#: config/dsp16xx/dsp16xx.h:242
+msgid "Generate code for a bit-manipulation unit"
+msgstr "Generar codi per a una unitat de manipulació de bits"
+
+#: config/dsp16xx/dsp16xx.h:244
+msgid "Don't generate code for a bit-manipulation unit"
+msgstr "No generar codi per a una unitat de manipulació de bits"
+
+#: config/dsp16xx/dsp16xx.h:246
+msgid "Generate code for memory map1"
+msgstr "Generar codi per a memory map1"
+
+#: config/dsp16xx/dsp16xx.h:248
+msgid "Generate code for memory map2"
+msgstr "Generar codi per a memory map2"
+
+#: config/dsp16xx/dsp16xx.h:250
+msgid "Generate code for memory map3"
+msgstr "Generar codi per a memory map3"
+
+#: config/dsp16xx/dsp16xx.h:252
+msgid "Generate code for memory map4"
+msgstr "Generar codi per a memory map4"
+
+#: config/dsp16xx/dsp16xx.h:254
+msgid "Ouput extra code for initialized data"
+msgstr "Generar codi extra per a dades inicialitzades"
+
+#: config/dsp16xx/dsp16xx.h:256
+msgid "Don't let reg. allocator use ybase registers"
+msgstr "No permetre que el assignador de registres usi registres ybase"
+
+#: config/dsp16xx/dsp16xx.h:258
+msgid "Output extra debug info in Luxworks environment"
+msgstr "Generar informació extra de depuració en l'ambit Luxworks"
+
+#: config/dsp16xx/dsp16xx.h:260
+msgid "Save temp. files in Luxworks environment"
+msgstr "Guardar els fitxers temporals en l'ambit Luxworks"
+
+#: config/dsp16xx/dsp16xx.h:272
+msgid "Specify alternate name for text section"
+msgstr "Especificar un nom alternatiu per a la secció de text"
+
+#: config/dsp16xx/dsp16xx.h:274
+msgid "Specify alternate name for data section"
+msgstr "Especificar un nom alternatiu per a la secció de dades"
+
+#: config/dsp16xx/dsp16xx.h:276
+msgid "Specify alternate name for bss section"
+msgstr "Especificar un nom alternatiu per a la secció bss"
+
+#: config/dsp16xx/dsp16xx.h:278
+msgid "Specify alternate name for constant section"
+msgstr "Especificar un nom alternatiu per a la secció constant"
+
+#: config/dsp16xx/dsp16xx.h:280
+msgid "Specify alternate name for dsp16xx chip"
+msgstr "Especificar un nom alternatiu per a el xip dsp16xx"
+
+#. Output assembler code to FILE to increment profiler label # LABELNO
+#. for profiling a function entry.
+#: config/dsp16xx/dsp16xx.h:1218 config/dsp16xx/dsp16xx.h:1772
+#: config/dsp16xx/dsp16xx.h:1777
+msgid "profiling not implemented yet"
+msgstr "no s'ha implementat encara profiling"
+
+#. Emit RTL insns to initialize the variable parts of a trampoline.
+#. FNADDR is an RTX for the address of the function's pure code.
+#. CXT is an RTX for the static chain value for the function.
+#: config/dsp16xx/dsp16xx.h:1228 config/dsp16xx/dsp16xx.h:1240
+msgid "trampolines not yet implemented"
+msgstr "no s'han implementat encara trampolin"
+
+#: config/fr30/fr30.c:453
+msgid "fr30_print_operand_address: unhandled address"
+msgstr "fr30_print_operand_address: adreça sense manejar"
+
+#: config/fr30/fr30.c:480
+#, c-format
+msgid "fr30_print_operand: unrecognized %%p code"
+msgstr "fr30_print_operand_address: no es reconeix el codi %%p"
+
+#: config/fr30/fr30.c:500
+#, c-format
+msgid "fr30_print_operand: unrecognized %%b code"
+msgstr "fr30_print_operand_address: no es reconeix el codi %%b"
+
+#: config/fr30/fr30.c:521
+#, c-format
+msgid "fr30_print_operand: unrecognized %%B code"
+msgstr "fr30_print_operand_address: no es reconeix el codi %%B"
+
+#: config/fr30/fr30.c:529
+#, c-format
+msgid "fr30_print_operand: invalid operand to %%A code"
+msgstr "fr30_print_operand: operant invàlid per al codi %%A"
+
+#: config/fr30/fr30.c:546
+#, c-format
+msgid "fr30_print_operand: invalid %%x code"
+msgstr "fr30_print_operand: codi %%x invàlid"
+
+#: config/fr30/fr30.c:553
+#, c-format
+msgid "fr30_print_operand: invalid %%F code"
+msgstr "fr30_print_operand: codi %%F invàlid"
+
+#: config/fr30/fr30.c:570
+msgid "fr30_print_operand: unknown code"
+msgstr "fr30_print_operand: codi desconegut"
+
+#: config/fr30/fr30.c:599 config/fr30/fr30.c:608 config/fr30/fr30.c:619
+#: config/fr30/fr30.c:632
+msgid "fr30_print_operand: unhandled MEM"
+msgstr "fr30_print_operand: MEM sense manejar"
+
+#: config/fr30/fr30.h:63
+msgid "Assume small address space"
+msgstr "Assumint espai d'adreces petit"
+
+#: config/frv/frv.c:410 config/frv/frv.c:428
+#, c-format
+msgid "Unknown cpu: -mcpu=%s"
+msgstr ""
+
+#: config/frv/frv.c:451
+msgid "-fpic and -gdwarf are incompatible (-fpic and -g/-gdwarf-2 are fine)"
+msgstr ""
+
+#: config/frv/frv.c:2520
+msgid "Bad insn to frv_print_operand_address:"
+msgstr "insn erroni per a frv_print_operand_address:"
+
+#: config/frv/frv.c:2533
+msgid "Bad register to frv_print_operand_memory_reference_reg:"
+msgstr "insn erroni per a frv_print_operand_memory_reference_reg:"
+
+#: config/frv/frv.c:2574 config/frv/frv.c:2584 config/frv/frv.c:2593
+#: config/frv/frv.c:2621 config/frv/frv.c:2633 config/frv/frv.c:2637
+msgid "Bad insn to frv_print_operand_memory_reference:"
+msgstr "insn erroni per a frv_print_operand_memory_reference:"
+
+#: config/frv/frv.c:2779
+msgid "Bad insn in frv_print_operand, bad const_double"
+msgstr "insn erroni per a frv_print_operand,·bad·const_double"
+
+#: config/frv/frv.c:2824
+msgid "Bad insn to frv_print_operand, 'C' modifier:"
+msgstr "insn erroni per a frv_print_operand, modificador \"C\":"
+
+#: config/frv/frv.c:2847
+msgid "Bad insn to frv_print_operand, 'c' modifier:"
+msgstr "insn erroni per a frv_print_operand, modificador \"c\":"
+
+#: config/frv/frv.c:2872
+msgid "Bad insn to frv_print_operand, 'e' modifier:"
+msgstr "insn erroni per a frv_print_operand, modificador \"e\":"
+
+#: config/frv/frv.c:2880
+msgid "Bad insn to frv_print_operand, 'F' modifier:"
+msgstr "insn erroni per a frv_print_operand, modificador \"F\":"
+
+#: config/frv/frv.c:2896
+msgid "Bad insn to frv_print_operand, 'f' modifier:"
+msgstr "insn erroni per a frv_print_operand, modificador \"f\":"
+
+#: config/frv/frv.c:2949
+msgid "Bad insn to frv_print_operand, 'L' modifier:"
+msgstr "insn erroni per a frv_print_operand, modificador \"L\":"
+
+#: config/frv/frv.c:2962
+msgid "Bad insn to frv_print_operand, 'M/N' modifier:"
+msgstr "insn erroni per a frv_print_operand, modificador \"M/N\":"
+
+#: config/frv/frv.c:2983
+msgid "Bad insn to frv_print_operand, 'O' modifier:"
+msgstr "insn erroni per a frv_print_operand, modificador \"O\":"
+
+#: config/frv/frv.c:3001
+msgid "Bad insn to frv_print_operand, P modifier:"
+msgstr "insn erroni per a frv_print_operand, modificador \"P\":"
+
+#: config/frv/frv.c:3021
+msgid "Bad insn in frv_print_operand, z case"
+msgstr "insn erroni per a frv_print_operand, casi z"
+
+#: config/frv/frv.c:3049
+msgid "Bad insn in frv_print_operand, 0 case"
+msgstr "insn erroni per a frv_print_operand, casi 0"
+
+#: config/frv/frv.c:3054
+msgid "frv_print_operand: unknown code"
+msgstr "frv_print_operand: codi desconegut"
+
+#: config/frv/frv.c:5737
+msgid "Bad output_move_single operand"
+msgstr "Operant output_move_single erroni"
+
+#: config/frv/frv.c:5866
+msgid "Bad output_move_double operand"
+msgstr ""
+
+#: config/frv/frv.c:6010
+msgid "Bad output_condmove_single operand"
+msgstr "Operant output_condmove_single erroni"
+
+#: config/frv/frv.c:8315
+msgid "frv_registers_update"
+msgstr ""
+
+#: config/frv/frv.c:8475
+msgid "frv_registers_used_p"
+msgstr ""
+
+#: config/frv/frv.c:8604
+msgid "frv_registers_set_p"
+msgstr ""
+
+#: config/frv/frv.c:9171
+msgid "accumulator is not a constant integer"
+msgstr "el acumulador no és una constant sentera"
+
+#: config/frv/frv.c:9176
+msgid "accumulator number is out of bounds"
+msgstr ""
+
+#: config/frv/frv.c:9187
+#, c-format
+msgid "inappropriate accumulator for `%s'"
+msgstr "acumulador inadequat per a \"%s\""
+
+#: config/frv/frv.c:9253
+#, c-format
+msgid "`%s' expects a constant argument"
+msgstr "l'atribut \"%s\" espera una constant com argument"
+
+#: config/frv/frv.c:9258
+#, c-format
+msgid "constant argument out of range for `%s'"
+msgstr "l'argument constant està fora de rang per a \"%s\""
+
+#: config/frv/frv.c:9638
+msgid "media functions are not available unless -mmedia is used"
+msgstr ""
+
+#: config/frv/frv.c:9650
+msgid "this media function is only available on the fr500"
+msgstr ""
+
+#: config/frv/frv.c:9678
+msgid "this media function is only available on the fr400"
+msgstr ""
+
+#. This macro is a C statement to print on `stderr' a string describing the
+#. particular machine description choice. Every machine description should
+#. define `TARGET_VERSION'. For example:
+#.
+#. #ifdef MOTOROLA
+#. #define TARGET_VERSION fprintf (stderr, " (68k, Motorola syntax)");
+#. #else
+#. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)");
+#. #endif
+#: config/frv/frv.h:512
+msgid " (frv)"
+msgstr ""
+
+#: config/h8300/h8300.c:314
+msgid "-ms2600 is used without -ms"
+msgstr "es va usar -ms2600 sense -ms"
+
+#: config/h8300/h8300.c:320
+msgid "-mn is used without -mh or -ms"
+msgstr "es va usar -mn sense -mh o -ms"
+
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/h8300/h8300.h:150
+msgid "Generate H8S code"
+msgstr "Generar codi H8S"
+
+#: config/h8300/h8300.h:151
+msgid "Do not generate H8S code"
+msgstr "No generar codi H8S"
+
+#: config/h8300/h8300.h:152
+msgid "Generate H8S/2600 code"
+msgstr "Generar codi H8S/2600"
+
+#: config/h8300/h8300.h:153
+msgid "Do not generate H8S/2600 code"
+msgstr "No generar codi H8S/2600"
+
+#: config/h8300/h8300.h:154
+msgid "Make integers 32 bits wide"
+msgstr "Fer enters de 32 bits d'amplària"
+
+#: config/h8300/h8300.h:157
+msgid "Use registers for argument passing"
+msgstr "Usar registres per a pas de paràmetres"
+
+#: config/h8300/h8300.h:159
+msgid "Do not use registers for argument passing"
+msgstr "No usar registres per a pas de paràmetres"
+
+#: config/h8300/h8300.h:161
+msgid "Consider access to byte sized memory slow"
+msgstr "Considerar lent l'accés a la memòria de grandària octet"
+
+#: config/h8300/h8300.h:162
+msgid "Enable linker relaxing"
+msgstr "Activar la relaxació del enllaçador"
+
+#: config/h8300/h8300.h:164
+msgid "Generate H8/300H code"
+msgstr "Generar codi H8/300H"
+
+#: config/h8300/h8300.h:165
+msgid "Enable the normal mode"
+msgstr ""
+
+#: config/h8300/h8300.h:166
+msgid "Do not generate H8/300H code"
+msgstr "No generar codi H8/300H"
+
+#: config/h8300/h8300.h:167
+msgid "Use H8/300 alignment rules"
+msgstr "Usar regles d'alineació H8/300"
+
+#: config/i370/i370-c.c:53
+msgid "junk at end of #pragma map"
+msgstr "escombraries al final de #pragma map"
+
+#: config/i370/i370-c.c:59
+msgid "malformed #pragma map, ignored"
+msgstr "#pragma map malformat, ignorat"
+
+#: config/i370/i370.c:915
+msgid "real name is too long - alias ignored"
+msgstr "el nom real és massa llargària - s'ignora l'alies"
+
+#: config/i370/i370.c:920
+msgid "alias name is too long - alias ignored"
+msgstr "el nom d'alies és massa llargària - s'ignora l'alies"
+
+#: config/i370/i370.c:1191
+msgid "internal error--no jump follows compare:"
+msgstr "error intern--no hi ha salts a continuació de la comparança:"
+
+#. Macro to define tables used to set the flags. This is a list in braces
+#. of pairs in braces, each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/i370/i370.h:75
+msgid "Generate char instructions"
+msgstr "Generar instruccions char"
+
+#: config/i370/i370.h:76
+msgid "Do not generate char instructions"
+msgstr "No generar instruccions char"
+
+#: config/i386/i386.c:1050
+#, c-format
+msgid "code model %s not supported in PIC mode"
+msgstr "el model de codi %s no té suport en el mode PIC"
+
+#: config/i386/i386.c:1060 config/sparc/sparc.c:356
+#, c-format
+msgid "bad value (%s) for -mcmodel= switch"
+msgstr "valor erroni (%s) per a l'interruptor -mcmodel="
+
+#: config/i386/i386.c:1075
+#, c-format
+msgid "bad value (%s) for -masm= switch"
+msgstr "valor erroni (%s) per a l'interruptor -masm="
+
+#: config/i386/i386.c:1078
+#, c-format
+msgid "code model `%s' not supported in the %s bit mode"
+msgstr "el model de codi %s no té suport en el mode %s bit"
+
+#: config/i386/i386.c:1081
+msgid "code model `large' not supported yet"
+msgstr "el model de codi \"large\" not té suport"
+
+#: config/i386/i386.c:1083
+#, c-format
+msgid "%i-bit mode not compiled in"
+msgstr "no està compilat el mode %i-bit"
+
+#: config/i386/i386.c:1113
+#, c-format
+msgid "bad value (%s) for -march= switch"
+msgstr "valor erroni (%s) per a l'interruptor -march="
+
+#: config/i386/i386.c:1124
+#, c-format
+msgid "bad value (%s) for -mcpu= switch"
+msgstr "valor erroni (%s) per a l'interruptor -mcpu="
+
+#: config/i386/i386.c:1141
+#, c-format
+msgid "-mregparm=%d is not between 0 and %d"
+msgstr "-mregparm=%d no està entre 0 i %d"
+
+#: config/i386/i386.c:1154
+msgid "-malign-loops is obsolete, use -falign-loops"
+msgstr "-malign-loops és obsolet, usi -falign-loops"
+
+#: config/i386/i386.c:1159 config/i386/i386.c:1172 config/i386/i386.c:1185
+#, c-format
+msgid "-malign-loops=%d is not between 0 and %d"
+msgstr "-malign-loops=%d no està entre 0 i %d"
+
+#: config/i386/i386.c:1167
+msgid "-malign-jumps is obsolete, use -falign-jumps"
+msgstr "-malign-jumps és obsolet, usi -falign-jumps"
+
+#: config/i386/i386.c:1180
+msgid "-malign-functions is obsolete, use -falign-functions"
+msgstr "-malign-functions és obsolet, usi -falign-functions"
+
+#: config/i386/i386.c:1218
+#, c-format
+msgid "-mpreferred-stack-boundary=%d is not between %d and 12"
+msgstr "-mpreferred-stack-boundary=%d no està entre %d i 12"
+
+#: config/i386/i386.c:1230
+#, c-format
+msgid "-mbranch-cost=%d is not between 0 and 5"
+msgstr "-mbranch-cost=%d no està entre 0 i 5"
+
+#: config/i386/i386.c:1242
+#, c-format
+msgid "bad value (%s) for -mtls-dialect= switch"
+msgstr "valor erroni (%s) per a l'interruptor -mtls-dialect="
+
+#: config/i386/i386.c:1263
+msgid "-malign-double makes no sense in the 64bit mode"
+msgstr "-malign-double no té sentit en el mode 64 bit"
+
+#: config/i386/i386.c:1265
+msgid "-mrtd calling convention not supported in the 64bit mode"
+msgstr "la convenció de cridades -mrtd no té suport en el mode 64 bit"
+
+#: config/i386/i386.c:1281 config/i386/i386.c:1292
+msgid "SSE instruction set disabled, using 387 arithmetics"
+msgstr "el conjunt d'instruccions SSE està desactivat, usant l'aritmètica 387"
+
+#: config/i386/i386.c:1297
+msgid "387 instruction set disabled, using SSE arithmetics"
+msgstr "el conjunt d'instruccions 387 està desactivat, usant l'aritmètica SSE"
+
+#: config/i386/i386.c:1304
+#, c-format
+msgid "bad value (%s) for -mfpmath= switch"
+msgstr "valor erroni (%s) per a l'interruptor -mfpmath="
+
+#: config/i386/i386.c:1436
+#, c-format
+msgid "`%s' attribute requires an integer constant argument"
+msgstr "l'atribut \"%s\" requereix una constant entera com argument"
+
+#: config/i386/i386.c:1442
+#, c-format
+msgid "argument to `%s' attribute larger than %d"
+msgstr "l'argument per a l'atribut \"%s\" és més gran que %d"
+
+#: config/i386/i386.c:2504
+msgid "SSE vector return without SSE enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:6386
+msgid "invalid UNSPEC as operand"
+msgstr "UNSPEC invàlid com operant"
+
+#: config/i386/i386.c:6648
+msgid "extended registers have no high halves"
+msgstr "els registres estesos no tenen meitats superiors"
+
+#: config/i386/i386.c:6663
+msgid "unsupported operand size for extended register"
+msgstr "grandària d'operant sense suport per al registre estès"
+
+#: config/i386/i386.c:6978
+msgid "operand is neither a constant nor a condition code, invalid operand code 'c'"
+msgstr "l'operant no és una constant ni un codi de condició, codi d'operant \"c\" invàlid"
+
+#: config/i386/i386.c:7024
+#, c-format
+msgid "invalid operand code `%c'"
+msgstr "codi d'operant \"%c\" invàlid"
+
+#: config/i386/i386.c:7071
+msgid "invalid constraints for operand"
+msgstr "restriccions invàlides per a l'operant"
+
+#: config/i386/i386.c:11271
+msgid "unknown insn mode"
+msgstr "mode insn desconegut"
+
+#. @@@ better error message
+#: config/i386/i386.c:13391 config/i386/i386.c:13427
+msgid "selector must be an immediate"
+msgstr "el se-lector deu ser un immediat"
+
+#. @@@ better error message
+#: config/i386/i386.c:13588 config/i386/i386.c:13622
+msgid "mask must be an immediate"
+msgstr "la màscara deu ser un immediat"
+
+#: config/i386/i386.c:13654
+msgid "shift must be an immediate"
+msgstr "el desplaçament deu ser un immediat"
+
+#: config/i386/winnt.c:96
+#, c-format
+msgid "function `%s' definition is marked dllimport."
+msgstr "la definició de la funció \"%s\" està marcada com dllimport"
+
+#: config/i386/winnt.c:104
+#, c-format
+msgid "variable `%s' definition is marked dllimport."
+msgstr "la variable \"%s\" està marcada com dllimport"
+
+#: config/i386/winnt.c:123
+#, c-format
+msgid "external linkage required for symbol '%s' because of '%s' attribute."
+msgstr ""
+
+#: config/i386/winnt.c:143
+#, c-format
+msgid "`%s' attribute only applies to variables"
+msgstr "l'atribut \"%s\" solament aplica a variables"
+
+#: config/i386/winnt.c:242
+#, c-format
+msgid "function '%s' is defined after prior declaration as dllimport: attribute ignored."
+msgstr ""
+
+#: config/i386/winnt.c:252
+#, c-format
+msgid "inline function '%s' is declared as dllimport: attribute ignored."
+msgstr "la funció inline \"%s\" està declarada com dllimport: s'ignora l'atribut."
+
+#: config/i386/winnt.c:263
+#, c-format
+msgid "definition of static data member '%s' of dllimport'd class."
+msgstr ""
+
+#: config/i386/winnt.c:322
+#, c-format
+msgid "inconsistent dll linkage for '%s': dllexport assumed."
+msgstr ""
+
+#: config/i386/winnt.c:364
+#, c-format
+msgid "`%s' declared as both exported to and imported from a DLL"
+msgstr "\"%s\" és declarat com exportat a i importat d'una DLLal mateix temps"
+
+#: config/i386/winnt.c:373
+#, c-format
+msgid "failure in redeclaration of '%s': dllimport'd symbol lacks external linkage."
+msgstr ""
+
+#: config/i386/winnt.c:479
+#, c-format
+msgid "'%s' %s after being referenced with dllimport linkage."
+msgstr ""
+
+#: config/i386/cygwin.h:45
+msgid "Use the Cygwin interface"
+msgstr "Usar la interfície Cygwin"
+
+#: config/i386/cygwin.h:46
+msgid "Use the Mingw32 interface"
+msgstr "Usar la interfície Mingw32"
+
+#: config/i386/cygwin.h:47
+msgid "Create GUI application"
+msgstr "Crear una aplicació amb interfície gràfica d'usuari (GUI)"
+
+#: config/i386/cygwin.h:48
+msgid "Don't set Windows defines"
+msgstr "No establir les definicions de Windows"
+
+#: config/i386/cygwin.h:49
+msgid "Set Windows defines"
+msgstr "Establir les definicions de Windows"
+
+#: config/i386/cygwin.h:50
+msgid "Create console application"
+msgstr "Crear una aplicació de consola"
+
+#: config/i386/cygwin.h:51 config/i386/win32.h:59
+msgid "Generate code for a DLL"
+msgstr "Generar codi per a una DLL"
+
+#: config/i386/cygwin.h:53 config/i386/win32.h:61
+msgid "Ignore dllimport for functions"
+msgstr "Ignorar dllimport per a funcions"
+
+#: config/i386/cygwin.h:55
+msgid "Use Mingw-specific thread support"
+msgstr "Usar suport de fils específic de Mingw"
+
+#: config/i386/cygwin.h:245
+#, c-format
+msgid "-f%s ignored for target (all code is position independent)"
+msgstr "s'ignora -f%s per a l'objectiu (tot el codi és independent de posició)"
+
+#: config/i386/djgpp.h:206
+msgid "-mbnu210 is ignored (option is obsolete)"
+msgstr "s'ignora -mbnu210 (l'opció és obsoleta)."
+
+#. Deprecated.
+#. Deprecated.
+#. Deprecated.
+#. Deprecated.
+#. Deprecated.
+#. Deprecated.
+#: config/i386/i386.h:306
+msgid "Alternate calling convention"
+msgstr "Convenció de cridada alternativa"
+
+#: config/i386/i386.h:308 config/m68k/m68k.h:180 config/ns32k/ns32k.h:144
+msgid "Use normal calling convention"
+msgstr "Usar convenció de cridada normal"
+
+#: config/i386/i386.h:310
+msgid "Align some doubles on dword boundary"
+msgstr "Alinear alguns dobles en límits de dword"
+
+#: config/i386/i386.h:312
+msgid "Align doubles on word boundary"
+msgstr "Alinear dobles en límits de word"
+
+#: config/i386/i386.h:314
+msgid "Uninitialized locals in .bss"
+msgstr "Locals sense valors inicials en .bss"
+
+#: config/i386/i386.h:316
+msgid "Uninitialized locals in .data"
+msgstr "Locals sense valors inicials en .data"
+
+#: config/i386/i386.h:318 config/m68k/linux-aout.h:45 config/m68k/linux.h:50
+#: config/ns32k/ns32k.h:167
+msgid "Use IEEE math for fp comparisons"
+msgstr "Usar matemàtica IEEE per a comparances fp"
+
+#: config/i386/i386.h:320 config/ns32k/ns32k.h:169
+msgid "Do not use IEEE math for fp comparisons"
+msgstr "No usar matemàtica IEEE per a comparances fp"
+
+#: config/i386/i386.h:322
+msgid "Return values of functions in FPU registers"
+msgstr "Retornar valors de funcions en registres FPU"
+
+#: config/i386/i386.h:324
+msgid "Do not return values of functions in FPU registers"
+msgstr "No retornar valors de funcions en registres FPU"
+
+#: config/i386/i386.h:326
+msgid "Do not generate sin, cos, sqrt for FPU"
+msgstr "No generar sin, cos, sqrt per a FPU"
+
+#: config/i386/i386.h:328
+msgid "Generate sin, cos, sqrt for FPU"
+msgstr "Generar sin, cos, sqrt per a FPU"
+
+#: config/i386/i386.h:330
+msgid "Omit the frame pointer in leaf functions"
+msgstr "Ometre el marc de referència per a les funcions fulles"
+
+#: config/i386/i386.h:333
+msgid "Enable stack probing"
+msgstr "Habilitar la prova de la pila"
+
+#. undocumented
+#. undocumented
+#: config/i386/i386.h:338
+msgid "Align destination of the string operations"
+msgstr "Alinear destinació de les operacions de cadenes"
+
+#: config/i386/i386.h:340
+msgid "Do not align destination of the string operations"
+msgstr "No alinear destinació de les operacions de cadenes"
+
+#: config/i386/i386.h:342
+msgid "Inline all known string operations"
+msgstr "Convertir a inline totes les operacions de cadenes conegudes"
+
+#: config/i386/i386.h:344
+msgid "Do not inline all known string operations"
+msgstr "No convertir a inline totes les operacions de cadenes conegudes"
+
+#: config/i386/i386.h:346 config/i386/i386.h:350
+msgid "Use push instructions to save outgoing arguments"
+msgstr "Usar instruccions push per a guardar els arguments de sortida"
+
+#: config/i386/i386.h:348 config/i386/i386.h:352
+msgid "Do not use push instructions to save outgoing arguments"
+msgstr "No usar instruccions push per a guardar els arguments de sortida"
+
+#: config/i386/i386.h:354
+msgid "Support MMX built-in functions"
+msgstr "Donar suport per a funcions internes MMX"
+
+#: config/i386/i386.h:356
+msgid "Do not support MMX built-in functions"
+msgstr "No donar suport per a funcions internes MMX"
+
+#: config/i386/i386.h:358
+msgid "Support 3DNow! built-in functions"
+msgstr "Donar suport per a funcions internes 3DNow!"
+
+#: config/i386/i386.h:360
+msgid "Do not support 3DNow! built-in functions"
+msgstr "No donar suport per a funcions internes 3DNow!"
+
+#: config/i386/i386.h:362
+msgid "Support MMX and SSE built-in functions and code generation"
+msgstr "Donar suport per a funcions internes MMX i SSE"
+
+#: config/i386/i386.h:364
+msgid "Do not support MMX and SSE built-in functions and code generation"
+msgstr "No donar suport per a funcions internes MMX i SSE"
+
+#: config/i386/i386.h:366
+msgid "Support MMX, SSE and SSE2 built-in functions and code generation"
+msgstr "Donar suport per a funcions internes MMX, SSE i SSE2"
+
+#: config/i386/i386.h:368
+msgid "Do not support MMX, SSE and SSE2 built-in functions and code generation"
+msgstr "No donar suport per a funcions internes MMX, SSE i SSE2"
+
+#: config/i386/i386.h:370
+msgid "sizeof(long double) is 16"
+msgstr "sizeof(long double) és 16."
+
+#: config/i386/i386.h:372
+msgid "sizeof(long double) is 12"
+msgstr "sizeof(long double) és 12."
+
+#: config/i386/i386.h:374
+msgid "Generate 64bit x86-64 code"
+msgstr "Generar codi 64 bit per a x86-64"
+
+#: config/i386/i386.h:376
+msgid "Generate 32bit i386 code"
+msgstr "Generar codi 32 bit per a i386"
+
+#: config/i386/i386.h:378
+msgid "Use red-zone in the x86-64 code"
+msgstr "Usar red-zone en el codi x86-64"
+
+#: config/i386/i386.h:380
+msgid "Do not use red-zone in the x86-64 code"
+msgstr "No usar red-zone en el codi x86-64"
+
+#. This macro is similar to `TARGET_SWITCHES' but defines names of
+#. command options that have values. Its definition is an
+#. initializer with a subgrouping for each command option.
+#.
+#. Each subgrouping contains a string constant, that defines the
+#. fixed part of the option name, and the address of a variable. The
+#. variable, type `char *', is set to the variable part of the given
+#. option if the fixed part matches. The actual option name is made
+#. by appending `-m' to the specified name.
+#: config/i386/i386.h:409 config/rs6000/rs6000.h:393 config/sparc/sparc.h:635
+msgid "Schedule code for given CPU"
+msgstr "Codi de planificador per al CPU donat"
+
+#: config/i386/i386.h:411
+msgid "Generate floating point mathematics using given instruction set"
+msgstr "Generar matemàtiques de coma flotant usant el conjunt d'instruccions donat"
+
+#: config/i386/i386.h:413
+msgid "Generate code for given CPU"
+msgstr "Generar codi per al CPU donat"
+
+#: config/i386/i386.h:415
+msgid "Number of registers used to pass integer arguments"
+msgstr "Nombre de registres usats per a passar arguments enters"
+
+#. TARGET_DEFAULT is defined in sun*.h and isi.h, etc.
+#. This macro is similar to `TARGET_SWITCHES' but defines names of
+#. command options that have values. Its definition is an
+#. initializer with a subgrouping for each command option.
+#.
+#. Each subgrouping contains a string constant, that defines the
+#. fixed part of the option name, and the address of a variable. The
+#. variable, type `char *', is set to the variable part of the given
+#. option if the fixed part matches. The actual option name is made
+#. by appending `-m' to the specified name.
+#: config/i386/i386.h:417 config/m68k/m68k.h:263
+msgid "Loop code aligned to this power of 2"
+msgstr "El codi de cicle és alineat a aquesta potència de 2"
+
+#: config/i386/i386.h:419 config/m68k/m68k.h:265
+msgid "Jump targets are aligned to this power of 2"
+msgstr "Els objectius de salt són alineats a aquesta potència de 2"
+
+#: config/i386/i386.h:421 config/m68k/m68k.h:267
+msgid "Function starts are aligned to this power of 2"
+msgstr "Els inicis de les funcions són alineats a aquesta potència de 2"
+
+#: config/i386/i386.h:424
+msgid "Attempt to keep stack aligned to this power of 2"
+msgstr "Es tracta de mantenir la pila alineada a aquesta potència de 2"
+
+#: config/i386/i386.h:426
+msgid "Branches are this expensive (1-5, arbitrary units)"
+msgstr "Les ramificacions són així de cares (1-5, unitats arbitràries)"
+
+#: config/i386/i386.h:428
+msgid "Use given x86-64 code model"
+msgstr "Usar el mpdel de codi x86-64 donat"
+
+#. Undocumented.
+#. Undocumented.
+#: config/i386/i386.h:434
+msgid "Use given assembler dialect"
+msgstr "Usar el dialecte del ensemblador donat"
+
+#: config/i386/i386.h:436
+msgid "Use given thread-local storage dialect"
+msgstr "Usar el dialecte d'emmagatzematge thread-local donat"
+
+#: config/i386/sco5.h:297
+msgid "Generate ELF output"
+msgstr "Generar sortida ELF"
+
+#: config/i386/win32.h:53
+msgid "Use Mingw32 interface"
+msgstr "Usar la interfície Mingw32"
+
+#: config/i386/win32.h:55
+msgid "Use Cygwin interface"
+msgstr "Usar la interfície Cygwin"
+
+#: config/i386/win32.h:57
+msgid "Use bare Windows interface"
+msgstr "Usar la interfície nua Windows"
+
+#. If the environment variable DJDIR is not defined, then DJGPP is not installed correctly and GCC will quickly become confused with the default prefix settings. Report the problem now so the user doesn't receive deceptive "file not found" error messages later.
+#. DJDIR is automatically defined by the DJGPP environment config file pointed to by the environment variable DJGPP. Examine DJGPP to try and figure out what's wrong.
+#: config/i386/xm-djgpp.h:71
+msgid "environment variable DJGPP not defined"
+msgstr "no es va definir la variable d'ambient DJGPP"
+
+#: config/i386/xm-djgpp.h:73
+#, c-format
+msgid "environment variable DJGPP points to missing file '%s'"
+msgstr "la variable d'ambient DJGPP apunta al fitxer faltant\"%s\""
+
+#: config/i386/xm-djgpp.h:76
+#, c-format
+msgid "environment variable DJGPP points to corrupt file '%s'"
+msgstr "la variable d'ambient DJGPP apunta al fitxer corrupte \"%s\""
+
+#: config/i960/i960-c.c:66
+msgid "sorry, not implemented: #pragma align NAME=SIZE"
+msgstr "disculpi, no s'ha implementar: #pragma align NAME=SIZE"
+
+#: config/i960/i960-c.c:71
+msgid "malformed #pragma align - ignored"
+msgstr "#pragma align mal format - ignorat"
+
+#: config/i960/i960-c.c:109
+msgid "sorry, not implemented: #pragma noalign NAME"
+msgstr "disculpi, no s'ha implementat: #pragma noalign NAME"
+
+#: config/i960/i960.c:121 config/i960/i960.c:131
+msgid "conflicting architectures defined - using C series"
+msgstr "es van definir arquitectures en conflicte - usant les sèries C"
+
+#: config/i960/i960.c:126
+msgid "conflicting architectures defined - using K series"
+msgstr "es van definir arquitectures en conflicte - usant les sèries K"
+
+#: config/i960/i960.c:141
+msgid "iC2.0 and iC3.0 are incompatible - using iC3.0"
+msgstr "iC2.0 i iC3.0 són incompatibles - usant iC3.0"
+
+#: config/i960/i960.c:1448 config/m68k/m68k.c:559 config/rs6000/rs6000.c:9976
+msgid "stack limit expression is not supported"
+msgstr "no es dóna suport a l'expressió del límit de la pila"
+
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#. ??? Not all ten of these architecture variations actually exist, but I
+#. am not sure which are real and which aren't.
+#: config/i960/i960.h:240
+msgid "Generate SA code"
+msgstr "Generar codi SA"
+
+#: config/i960/i960.h:243
+msgid "Generate SB code"
+msgstr "Generar codi SB"
+
+#. {"sc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate SC code")},
+#: config/i960/i960.h:248
+msgid "Generate KA code"
+msgstr "Generar codi KA"
+
+#: config/i960/i960.h:251
+msgid "Generate KB code"
+msgstr "Generar codi KB"
+
+#. {"kc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate KC code")},
+#: config/i960/i960.h:256
+msgid "Generate JA code"
+msgstr "Generar codi JA"
+
+#: config/i960/i960.h:258
+msgid "Generate JD code"
+msgstr "Generar codi JD"
+
+#: config/i960/i960.h:261
+msgid "Generate JF code"
+msgstr "Generar codi JF"
+
+#: config/i960/i960.h:263
+msgid "generate RP code"
+msgstr "generar codi RP"
+
+#: config/i960/i960.h:266
+msgid "Generate MC code"
+msgstr "Generar codi MC"
+
+#: config/i960/i960.h:269
+msgid "Generate CA code"
+msgstr "Generar codi CA"
+
+#. {"cb", (TARGET_FLAG_NUMERICS|TARGET_FLAG_C_SERIES| TARGET_FLAG_BRANCH_PREDICT|TARGET_FLAG_CODE_ALIGN), N_("Generate CB code")}, {"cc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_C_SERIES|TARGET_FLAG_BRANCH_PREDICT| TARGET_FLAG_CODE_ALIGN), N_("Generate CC code")},
+#: config/i960/i960.h:279
+msgid "Generate CF code"
+msgstr "Generar codi CF"
+
+#: config/i960/i960.h:283 config/mips/mips.h:568 config/pa/pa.h:266
+msgid "Use software floating point"
+msgstr "Usar coma flotant de programari"
+
+#: config/i960/i960.h:285
+msgid "Use alternate leaf function entries"
+msgstr "Usar entrades de funció fulles alternades"
+
+#: config/i960/i960.h:287
+msgid "Do not use alternate leaf function entries"
+msgstr "No usar entrades de funció fulles alternades"
+
+#: config/i960/i960.h:289
+msgid "Perform tail call optimization"
+msgstr "Realitzar optimització de la cridada de l'extrem"
+
+#: config/i960/i960.h:291
+msgid "Do not perform tail call optimization"
+msgstr "No realitzar optimització de la cridada de l'extrem"
+
+#: config/i960/i960.h:293
+msgid "Use complex addressing modes"
+msgstr "Usar maneres de adreçament complexos"
+
+#: config/i960/i960.h:295
+msgid "Do not use complex addressing modes"
+msgstr "No usar maneres de adreçament complexos"
+
+#: config/i960/i960.h:297
+msgid "Align code to 8 byte boundary"
+msgstr "Alinear el codi a límits de 8 octet"
+
+#: config/i960/i960.h:299
+msgid "Do not align code to 8 byte boundary"
+msgstr "No alinear el codi a límits de 8 octet"
+
+#. {"clean-linkage", (TARGET_FLAG_CLEAN_LINKAGE), N_("Force use of prototypes")}, {"no-clean-linkage", -(TARGET_FLAG_CLEAN_LINKAGE), N_("Do not force use of prototypes")},
+#: config/i960/i960.h:305 config/i960/i960.h:307
+msgid "Enable compatibility with iC960 v2.0"
+msgstr "Activar la compatibilitat amb iC960 v2.0"
+
+#: config/i960/i960.h:309
+msgid "Enable compatibility with iC960 v3.0"
+msgstr "Activar la compatibilitat amb iC960 v3.0"
+
+#: config/i960/i960.h:311 config/i960/i960.h:313
+msgid "Enable compatibility with ic960 assembler"
+msgstr "Activar la compatibilitat amb el assemblador ic960"
+
+#: config/i960/i960.h:315
+msgid "Do not permit unaligned accesses"
+msgstr "No permetre accessos sense alinear"
+
+#: config/i960/i960.h:317
+msgid "Permit unaligned accesses"
+msgstr "Permetre accessos sense alinear"
+
+#: config/i960/i960.h:319
+msgid "Layout types like Intel's v1.3 gcc"
+msgstr "Presentar tipus com en el gcc v1.3 de Intel"
+
+#: config/i960/i960.h:321
+msgid "Do not layout types like Intel's v1.3 gcc"
+msgstr "No presentar tipus com en el gcc v1.3 de Intel"
+
+#: config/i960/i960.h:323 config/sparc/freebsd.h:80 config/sparc/linux.h:86
+#: config/sparc/linux64.h:88 config/sparc/netbsd-elf.h:238
+msgid "Use 64 bit long doubles"
+msgstr "Usar long doubles de 64 bit"
+
+#: config/i960/i960.h:325
+msgid "Enable linker relaxation"
+msgstr "Activar la relaxació del enllaçador"
+
+#: config/i960/i960.h:327
+msgid "Do not enable linker relaxation"
+msgstr "Desactivar la relaxació del enllaçador"
+
+#: config/ia64/ia64-c.c:51
+msgid "malformed #pragma builtin"
+msgstr "secció #pragma builtin malformada"
+
+#: config/ia64/ia64.c:4015
+msgid "ia64_print_operand: unknown code"
+msgstr "ia64_print_operand: codi desconegut"
+
+#: config/ia64/ia64.c:4292
+msgid "value of -mfixed-range must have form REG1-REG2"
+msgstr "el valor de -mfixed-range deu ser de la forma REG1-REG2"
+
+#: config/ia64/ia64.c:4319
+#, c-format
+msgid "%s-%s is an empty range"
+msgstr "%s-%s és un rang buit"
+
+#: config/ia64/ia64.c:4350
+msgid "cannot optimize floating point division for both latency and throughput"
+msgstr "no es pot optimitzar la divisió de coma flotant per a latència i sortida al mateix temps"
+
+#: config/ia64/ia64.c:4356
+msgid "cannot optimize integer division for both latency and throughput"
+msgstr "no es pot optimitzar la divisió entera per a latència i sortida al mateix temps"
+
+#: config/ia64/ia64.c:4368
+#, c-format
+msgid "bad value (%s) for -mtls-size= switch"
+msgstr "valor erroni (%s) per a l'interruptor -mtls-size="
+
+#. This macro defines names of command options to set and clear bits in
+#. `target_flags'. Its definition is an initializer with a subgrouping for
+#. each command option.
+#: config/ia64/ia64.h:154
+msgid "Generate big endian code"
+msgstr "Generar codi big endian"
+
+#: config/ia64/ia64.h:156 config/mcore/mcore.h:159
+msgid "Generate little endian code"
+msgstr "Generar codi little endian"
+
+#: config/ia64/ia64.h:158
+msgid "Generate code for GNU as"
+msgstr "Generar codi com de GNU"
+
+#: config/ia64/ia64.h:160
+msgid "Generate code for Intel as"
+msgstr "Generar codi com de Intel"
+
+#: config/ia64/ia64.h:162
+msgid "Generate code for GNU ld"
+msgstr "Generar codi per a ld de GNU"
+
+#: config/ia64/ia64.h:164
+msgid "Generate code for Intel ld"
+msgstr "Generar codi per a ld de Intel"
+
+#: config/ia64/ia64.h:166
+msgid "Generate code without GP reg"
+msgstr "Generar codi sense registre GP"
+
+#: config/ia64/ia64.h:168
+msgid "Emit stop bits before and after volatile extended asms"
+msgstr "Emetre bits de desocupada abans i després de asms estesos amb volatile"
+
+#: config/ia64/ia64.h:170
+msgid "Don't emit stop bits before and after volatile extended asms"
+msgstr "No emetre bits de desocupada abans i després de asmsestesos amb volatile"
+
+#: config/ia64/ia64.h:172
+msgid "Emit code for Itanium (TM) processor B step"
+msgstr "Emetre codi per a Itanium (TM) processador de pas B"
+
+#: config/ia64/ia64.h:174
+msgid "Use in/loc/out register names"
+msgstr "Usar noms de registre in/loc/out"
+
+#: config/ia64/ia64.h:176
+msgid "Disable use of sdata/scommon/sbss"
+msgstr "Desactivar l'ús de sdata/scommon/sbss"
+
+#: config/ia64/ia64.h:178
+msgid "Enable use of sdata/scommon/sbss"
+msgstr "Activar l'ús de sdata/scommon/sbss"
+
+#: config/ia64/ia64.h:180
+msgid "gp is constant (but save/restore gp on indirect calls)"
+msgstr "gp és constant (però hi ha save/restore de gp en cridades indirectes)"
+
+#: config/ia64/ia64.h:182
+msgid "Generate self-relocatable code"
+msgstr "Generar codi self-relocatable"
+
+#: config/ia64/ia64.h:184
+msgid "Generate inline floating point division, optimize for latency"
+msgstr "Generar divisió de coma flotant inline, optimitzada per a latència"
+
+#: config/ia64/ia64.h:186
+msgid "Generate inline floating point division, optimize for throughput"
+msgstr "Generar divisió de coma flotant inline, optimitzada per a sortida"
+
+#: config/ia64/ia64.h:188
+msgid "Generate inline integer division, optimize for latency"
+msgstr "Generar divisió entera inline, optimitzada per a latència"
+
+#: config/ia64/ia64.h:190
+msgid "Generate inline integer division, optimize for throughput"
+msgstr "Generar divisió entera inline, optimitzada per a sortida"
+
+#: config/ia64/ia64.h:192
+msgid "Enable Dwarf 2 line debug info via GNU as"
+msgstr "Activar la informació de la línia de depuració Dwarf2 a través com de GNU"
+
+#: config/ia64/ia64.h:194
+msgid "Disable Dwarf 2 line debug info via GNU as"
+msgstr "Desactivar la informació de la línia de depuració Dwarf 2 a través com de GNU"
+
+#: config/ia64/ia64.h:223
+msgid "Specify range of registers to make fixed"
+msgstr "Especifica el rang de registres a convertir en fixos"
+
+#: config/ip2k/ip2k.c:1090
+msgid "bad operand"
+msgstr "operant invàlid"
+
+#: config/m32r/m32r.c:139
+#, c-format
+msgid "bad value (%s) for -mmodel switch"
+msgstr "valor erroni (%s) per a l'interruptor -mmodel"
+
+#: config/m32r/m32r.c:148
+#, c-format
+msgid "bad value (%s) for -msdata switch"
+msgstr "valor erroni (%s) per a l'interruptor -msdata"
+
+#: config/m32r/m32r.c:319
+#, c-format
+msgid "invalid argument of `%s' attribute"
+msgstr "invàlid argument per a l'atribut \"%s\""
+
+#: config/m32r/m32r.c:422
+msgid "const objects cannot go in .sdata/.sbss"
+msgstr "els objectes cons no poden anar a .sdata/.sbss"
+
+#: config/m32r/m32r.c:2256
+#, c-format
+msgid "invalid operand to %%s code"
+msgstr "invàlid operand per al codi %%s"
+
+#: config/m32r/m32r.c:2263
+#, c-format
+msgid "invalid operand to %%p code"
+msgstr "invàlid operand per al codi %%p"
+
+#: config/m32r/m32r.c:2318
+msgid "bad insn for 'A'"
+msgstr "insn erroni per a \"A\""
+
+#: config/m32r/m32r.c:2370
+#, c-format
+msgid "invalid operand to %%T/%%B code"
+msgstr "invàlid operand per al codi %%T/%%B"
+
+#: config/m32r/m32r.c:2393
+#, c-format
+msgid "invalid operand to %%N code"
+msgstr "invàlid operand per al codi %%N"
+
+#: config/m32r/m32r.c:2438
+msgid "pre-increment address is not a register"
+msgstr "l'adreça de pre-increment no és un registre"
+
+#: config/m32r/m32r.c:2445
+msgid "pre-decrement address is not a register"
+msgstr "l'adreça de pre-decrement no és un registre"
+
+#: config/m32r/m32r.c:2452
+msgid "post-increment address is not a register"
+msgstr "l'adreça de post-increment no és un registre"
+
+#: config/m32r/m32r.c:2530 config/m32r/m32r.c:2546
+#: config/rs6000/rs6000.c:12802
+msgid "bad address"
+msgstr "adreça erroni"
+
+#: config/m32r/m32r.c:2551
+msgid "lo_sum not of register"
+msgstr "lo_sum no és un registre"
+
+#. { "relax", TARGET_RELAX_MASK, "" }, { "no-relax", -TARGET_RELAX_MASK, "" },
+#: config/m32r/m32r.h:241
+msgid "Display compile time statistics"
+msgstr "Mostrar estadístiques de tepms de compilació"
+
+#: config/m32r/m32r.h:243
+msgid "Align all loops to 32 byte boundary"
+msgstr "Alinear tots els cicles al límit de 32 octet"
+
+#: config/m32r/m32r.h:246
+msgid "Only issue one instruction per cycle"
+msgstr "Només executar una instrucció per cicle"
+
+#: config/m32r/m32r.h:249
+msgid "Prefer branches over conditional execution"
+msgstr "Preferir les branques sobre l'execució condicional"
+
+#: config/m32r/m32r.h:265
+msgid "Code size: small, medium or large"
+msgstr "Grandària del codi: small, medium o large"
+
+#: config/m32r/m32r.h:267
+msgid "Small data area: none, sdata, use"
+msgstr " Àrea de dades small: none, sdata, use"
+
+#: config/m68hc11/m68hc11.c:242
+#, c-format
+msgid "-f%s ignored for 68HC11/68HC12 (not supported)"
+msgstr "s'ignora -f%s per a 68HC11/68HC12 (sense suport)"
+
+#: config/m68hc11/m68hc11.c:1305
+msgid "`trap' and `far' attributes are not compatible, ignoring `far'"
+msgstr ""
+
+#: config/m68hc11/m68hc11.c:1311
+msgid "`trap' attribute is already used"
+msgstr "l'atribut \"trap\" ja està en ús"
+
+#. !!!! SCz wrong here.
+#: config/m68hc11/m68hc11.c:3327 config/m68hc11/m68hc11.c:3733
+msgid "move insn not handled"
+msgstr "no es maneja move insn"
+
+#: config/m68hc11/m68hc11.c:3579 config/m68hc11/m68hc11.c:3663
+#: config/m68hc11/m68hc11.c:3946
+msgid "invalid register in the move instruction"
+msgstr "registre invàlid en la instrucció move"
+
+#: config/m68hc11/m68hc11.c:3613
+msgid "invalid operand in the instruction"
+msgstr "operant invàlid en la instrucció"
+
+#: config/m68hc11/m68hc11.c:3920
+msgid "invalid register in the instruction"
+msgstr "registre invàlid en la instrucció"
+
+#: config/m68hc11/m68hc11.c:3953
+msgid "operand 1 must be a hard register"
+msgstr "l'operant 1 deu ser un registre fix"
+
+#: config/m68hc11/m68hc11.c:3970
+msgid "invalid rotate insn"
+msgstr "rotació de insn invàlida"
+
+#: config/m68hc11/m68hc11.c:4391
+msgid "registers IX, IY and Z used in the same INSN"
+msgstr "es van usar els registres IX, IY i Z en el mateix INSN"
+
+#: config/m68hc11/m68hc11.c:4728 config/m68hc11/m68hc11.c:5031
+msgid "cannot do z-register replacement"
+msgstr "no es pot reemplaçar el registre-z"
+
+#: config/m68hc11/m68hc11.c:5094
+msgid "invalid Z register replacement for insn"
+msgstr "reemplaçament de registre Z invàlid per al insn"
+
+#. Macro to define tables used to set the flags. This is a list in braces of
+#. pairs in braces, each pair being { "NAME", VALUE } where VALUE is the bits
+#. to set or minus the bits to clear. An empty string NAME is used to
+#. identify the default VALUE.
+#: config/m68hc11/m68hc11.h:172
+msgid "Compile with 16-bit integer mode"
+msgstr "Compilar amb el mode enter de 16-bit"
+
+#: config/m68hc11/m68hc11.h:174
+msgid "Compile with 32-bit integer mode"
+msgstr "Compilar amb el mode enter de 32-bit"
+
+#: config/m68hc11/m68hc11.h:176
+msgid "Auto pre/post decrement increment allowed"
+msgstr "Es permet el pre/post decrement increment automatic"
+
+#: config/m68hc11/m68hc11.h:178
+msgid "Auto pre/post decrement increment not allowed"
+msgstr "No es permet el pre/post decrement increment automatic"
+
+#: config/m68hc11/m68hc11.h:180
+msgid "Min/max instructions allowed"
+msgstr ""
+
+#: config/m68hc11/m68hc11.h:182
+msgid "Min/max instructions not allowed"
+msgstr ""
+
+#: config/m68hc11/m68hc11.h:184
+msgid "Use call and rtc for function calls and returns"
+msgstr "Usar call i rtc per a cridades i devolucions de funció"
+
+#: config/m68hc11/m68hc11.h:186
+msgid "Use jsr and rts for function calls and returns"
+msgstr "Usar jsr i rts per a cridades i devolucions de funció"
+
+#: config/m68hc11/m68hc11.h:188
+msgid "Do not use direct addressing mode for soft registers"
+msgstr "No usar el mode d'adreçament direct per a registres soft"
+
+#: config/m68hc11/m68hc11.h:190
+msgid "Use direct addressing mode for soft registers"
+msgstr "Usar el mode d'adreçament direct per a registres soft"
+
+#: config/m68hc11/m68hc11.h:192 config/m68hc11/m68hc11.h:198
+msgid "Compile for a 68HC11"
+msgstr "Compilar per a un 68HC11"
+
+#: config/m68hc11/m68hc11.h:194 config/m68hc11/m68hc11.h:200
+msgid "Compile for a 68HC12"
+msgstr "Compilar per a un 68HC12"
+
+#: config/m68hc11/m68hc11.h:196 config/m68hc11/m68hc11.h:202
+msgid "Compile for a 68HCS12"
+msgstr "Compilar per a un 68HCS12"
+
+#. This macro is similar to `TARGET_SWITCHES' but defines names of
+#. command options that have values. Its definition is an
+#. initializer with a subgrouping for each command option.
+#.
+#. Each subgrouping contains a string constant, that defines the
+#. fixed part of the option name, and the address of a variable. The
+#. variable, type `char *', is set to the variable part of the given
+#. option if the fixed part matches. The actual option name is made
+#. by appending `-m' to the specified name.
+#: config/m68hc11/m68hc11.h:216
+msgid "Specify the register allocation order"
+msgstr "Especificar l'ordre d'assignació de registres"
+
+#: config/m68hc11/m68hc11.h:218
+msgid "Indicate the number of soft registers available"
+msgstr "Indicar el nombre de registres suaus disponibles"
+
+#: config/m68k/m68k.c:158
+#, c-format
+msgid "-malign-loops=%d is not between 1 and %d"
+msgstr "-malign-loops=%d no és entre 1 i %d"
+
+#: config/m68k/m68k.c:169
+#, c-format
+msgid "-malign-jumps=%d is not between 1 and %d"
+msgstr "-malign-jumps=%d no és entre 1 i %d"
+
+#: config/m68k/m68k.c:180
+#, c-format
+msgid "-malign-functions=%d is not between 1 and %d"
+msgstr "-malign-functions=%d no és entre 1 i %d"
+
+#: config/m68k/m68k.c:189
+msgid "-fPIC is not currently supported on the 68000 or 68010\n"
+msgstr " -fPIC actualment no té suport en el 68000 o 68010\n"
+
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/m68k/m68k.h:162 config/m68k/m68k.h:164
+msgid "Generate code for a 68020"
+msgstr "Generar codi per a un 68020"
+
+#: config/m68k/m68k.h:169 config/m68k/m68k.h:172
+msgid "Generate code for a 68000"
+msgstr "Generar codi per a un 68000"
+
+#: config/m68k/m68k.h:174
+msgid "Use the bit-field instructions"
+msgstr "Usar instruccions de camps de bit"
+
+#: config/m68k/m68k.h:176
+msgid "Do not use the bit-field instructions"
+msgstr "No usar instruccions de camps de bit"
+
+#: config/m68k/m68k.h:178
+msgid "Use different calling convention using 'rtd'"
+msgstr "Usar la convenció de cridada diferent usant 'rtd'"
+
+#: config/m68k/m68k.h:182
+msgid "Consider type `int' to be 16 bits wide"
+msgstr "Considerar que el tipus \"int\" és de 16 bits d'amplària"
+
+#: config/m68k/m68k.h:184
+msgid "Consider type `int' to be 32 bits wide"
+msgstr "Considerar que el tipus \"int\" és de 32 bits d'amplària"
+
+#: config/m68k/m68k.h:186
+msgid "Generate code for a Sun FPA"
+msgstr "Generar codi per a un Sun FPA"
+
+#: config/m68k/m68k.h:189
+msgid "Do not generate code for a Sun FPA"
+msgstr "No generar codi per a un Sun FPA"
+
+#: config/m68k/m68k.h:191 config/m68k/m68k.h:193
+msgid "Generate code for a Sun Sky board"
+msgstr "Generar codi per a un Sun Sky board"
+
+#: config/m68k/m68k.h:195
+msgid "Do not use Sky linkage convention"
+msgstr "No usar la convenció d'enllaç Sky"
+
+#: config/m68k/m68k.h:197
+msgid "Generate code for a 68881"
+msgstr "Generar codi per a un 68881"
+
+#: config/m68k/m68k.h:200
+msgid "Generate code with library calls for floating point"
+msgstr "Generar codi amb cridades a biblioteques per a coma flotant"
+
+#: config/m68k/m68k.h:202
+msgid "Generate code for a 68040, without any new instructions"
+msgstr "Generar codi per a un 68040, sense cap instrucció nova"
+
+#: config/m68k/m68k.h:205
+msgid "Generate code for a 68060, without any new instructions"
+msgstr "Generar codi per a un 68060, sense cap instrucció nova"
+
+#: config/m68k/m68k.h:209
+msgid "Generate code for a 68030"
+msgstr "Generar codi per a un 68030"
+
+#: config/m68k/m68k.h:212
+msgid "Generate code for a 68040"
+msgstr "Generar codi per a un 68040"
+
+#: config/m68k/m68k.h:216
+msgid "Generate code for a 68060"
+msgstr "Generar codi per a un 68060"
+
+#: config/m68k/m68k.h:221
+msgid "Generate code for a 520X"
+msgstr "Generar codi per a un 520X"
+
+#: config/m68k/m68k.h:224
+msgid "Generate code for a 68851"
+msgstr "Generar codi per a un 68851"
+
+#: config/m68k/m68k.h:226
+msgid "Do no generate code for a 68851"
+msgstr "No generar codi per a un 68851"
+
+#: config/m68k/m68k.h:229
+msgid "Generate code for a 68302"
+msgstr "Generar codi per a un 68302"
+
+#: config/m68k/m68k.h:232
+msgid "Generate code for a 68332"
+msgstr "Generar codi per a un 68332"
+
+#: config/m68k/m68k.h:236
+msgid "Generate code for a cpu32"
+msgstr "Generar codi per a un cpu32"
+
+#: config/m68k/m68k.h:239
+msgid "Align variables on a 32-bit boundary"
+msgstr "Alinear les variables en un límit de 32-bit"
+
+#: config/m68k/m68k.h:241
+msgid "Align variables on a 16-bit boundary"
+msgstr "Alinear les variables en un límit de 16-bit"
+
+#: config/m68k/m68k.h:243
+msgid "Generate pc-relative code"
+msgstr "Generar codi relatiu al pc"
+
+#: config/m68k/m68k.h:245
+msgid "Do not use unaligned memory references"
+msgstr "No permetre referències a memòria sense alinear"
+
+#: config/m68k/m68k.h:247
+msgid "Use unaligned memory references"
+msgstr "Usar referències a memòria sense alinear"
+
+#: config/m88k/m88k.c:903
+#, c-format
+msgid "internal gcc monitor: short-branch(%x)"
+msgstr "monitor intern de gcc: short-branch(%x)"
+
+#: config/m88k/m88k.c:2302
+msgid "internal gcc error: Can't express symbolic location"
+msgstr "error intern de gcc: No es pot expressar la ubicació simbòlica"
+
+#: config/m88k/m88k.c:2517
+#, c-format
+msgid "argument #%d is a structure"
+msgstr "l'argument #%d és una estructura"
+
+#: config/m88k/m88k.c:2816
+#, c-format
+msgid "%%R not followed by %%B/C/D/E"
+msgstr "%%R no és seguit per %%B/C/D/E"
+
+#: config/m88k/m88k.c:2884
+#, c-format
+msgid "invalid %%x/X value"
+msgstr "valor invàlid per a %%x/X"
+
+#: config/m88k/m88k.c:2901
+#, c-format
+msgid "invalid %%Q value"
+msgstr "valor %%Q invàlid"
+
+#: config/m88k/m88k.c:2907 config/rs6000/rs6000.c:7718
+#, c-format
+msgid "invalid %%q value"
+msgstr "valor invàlid per a %%q"
+
+#: config/m88k/m88k.c:2913
+#, c-format
+msgid "invalid %%o value"
+msgstr "valor invàlid per a %%o"
+
+#: config/m88k/m88k.c:2920 config/rs6000/rs6000.c:7681
+#, c-format
+msgid "invalid %%p value"
+msgstr "valor invàlid per a %%p"
+
+#: config/m88k/m88k.c:2933 config/m88k/m88k.c:2938
+#, c-format
+msgid "invalid %%s/S value"
+msgstr "valor invàlid per a %%s/S"
+
+#: config/m88k/m88k.c:2949
+#, c-format
+msgid "invalid %%P operand"
+msgstr "operand invàlid per a %%P"
+
+#: config/m88k/m88k.c:2980 config/romp/romp.c:690
+#, c-format
+msgid "invalid %%B value"
+msgstr "valor invàlid per a %%B"
+
+#: config/m88k/m88k.c:3010
+#, c-format
+msgid "invalid %%D value"
+msgstr "valor invàlid per a %%D"
+
+#: config/m88k/m88k.c:3023
+#, c-format
+msgid "`%%d' operand isn't a register"
+msgstr "l'operand \"%%d\" no és un registre"
+
+#: config/m88k/m88k.c:3041
+msgid "operand is r0"
+msgstr "l'operand és r0"
+
+#: config/m88k/m88k.c:3055
+msgid "operand is const_double"
+msgstr "l'operand és const_double"
+
+#: config/m88k/m88k.c:3074
+msgid "invalid code"
+msgstr "codi invàlid"
+
+#. Do any checking or such that is needed after processing the -m switches.
+#: config/m88k/m88k.h:277
+msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
+msgstr "-mtrap-large-shift i -mhandle-large-shift no són compatibles"
+
+#: config/m88k/m88k.h:299
+#, c-format
+msgid "invalid option `-mshort-data-%s'"
+msgstr "opció invàlida \"-mshort-data-%s\""
+
+#: config/m88k/m88k.h:304
+#, c-format
+msgid "-mshort-data-%s is too large "
+msgstr "-mshort-data-%s és massa gran"
+
+#: config/m88k/m88k.h:306
+#, c-format
+msgid "-mshort-data-%s and PIC are incompatible"
+msgstr "-mshort-data-%s i PIC són incompatibles"
+
+#: config/mcore/mcore.c:3078
+#, c-format
+msgid "invalid option `-mstack-increment=%s'"
+msgstr "opció invàlida \"-mstack-increment=%s\""
+
+#: config/mcore/mcore.h:126
+msgid "Inline constants if it can be done in 2 insns or less"
+msgstr "Constants inline si poden ser fetes en 2 insns o menys"
+
+#: config/mcore/mcore.h:128
+msgid "Inline constants if it only takes 1 instruction"
+msgstr "Constants inline si només prenen 1 instrucció"
+
+#: config/mcore/mcore.h:130
+msgid "Set maximum alignment to 4"
+msgstr "Establir l'alineació màxima a 4"
+
+#: config/mcore/mcore.h:132
+msgid "Set maximum alignment to 8"
+msgstr "Establir l'alineació màxima a 8"
+
+#: config/mcore/mcore.h:136
+msgid "Do not use the divide instruction"
+msgstr "No usar la instrucció divideix"
+
+#: config/mcore/mcore.h:140
+msgid "Do not arbitrary sized immediates in bit operations"
+msgstr "No intervenir en immediats de grandàries arbitràries en operacions de bit"
+
+#: config/mcore/mcore.h:142
+msgid "Always treat bit-field as int-sized"
+msgstr "Tractar sempre als camps de bit com de grandària int"
+
+#: config/mcore/mcore.h:146
+msgid "Force functions to be aligned to a 4 byte boundary"
+msgstr "Forçar que les funcions s'alineïn a un límit de 4 octet"
+
+#: config/mcore/mcore.h:148
+msgid "Force functions to be aligned to a 2 byte boundary"
+msgstr "Forçar que les funcions s'alineïn a un límit de 2 octet"
+
+#: config/mcore/mcore.h:150
+msgid "Emit call graph information"
+msgstr "Emetre informació de graf de cridades"
+
+#: config/mcore/mcore.h:154
+msgid "Prefer word accesses over byte accesses"
+msgstr "Preferir accessos word sobre accés octet"
+
+#: config/mcore/mcore.h:165
+msgid "Generate code for the M*Core M340"
+msgstr "Generar codi per a M*Core M340"
+
+#: config/mcore/mcore.h:178
+msgid "Maximum amount for a single stack increment operation"
+msgstr "Quantitat màxima per a una sola operació d'increment de pila"
+
+#: config/mips/mips.c:5128
+#, c-format
+msgid "bad value (%s) for -mabi= switch"
+msgstr "valor erroni (%s) per a l'interruptor -mabi="
+
+#: config/mips/mips.c:5158
+#, c-format
+msgid "-mips%d conflicts with the other architecture options, which specify a MIPS%d processor"
+msgstr ""
+
+#: config/mips/mips.c:5165
+#, c-format
+msgid "bad value (%s) for -mips switch"
+msgstr "valor erroni (%s) per a l'interruptor -mips"
+
+#: config/mips/mips.c:5180
+#, c-format
+msgid "-march=%s is not compatible with the selected ABI"
+msgstr ""
+
+#: config/mips/mips.c:5192
+msgid "-mgp64 used with a 32-bit processor"
+msgstr ""
+
+#: config/mips/mips.c:5194
+msgid "-mgp32 used with a 64-bit ABI"
+msgstr "s'utilitza -mgp32 amb una ABI de 64-bit"
+
+#: config/mips/mips.c:5196
+msgid "-mgp64 used with a 32-bit ABI"
+msgstr "s'utilitza -mgp64 amb una ABI de 32-bit"
+
+#: config/mips/mips.c:5214 config/mips/mips.c:5216 config/mips/mips.c:5218
+#, c-format
+msgid "unsupported combination: %s"
+msgstr "combinació sense suport: %s"
+
+#: config/mips/mips.c:5288
+msgid "generation of Branch Likely instructions enabled, but not supported by architecture"
+msgstr ""
+
+#: config/mips/mips.c:5299
+msgid "-G is incompatible with PIC code which is the default"
+msgstr "-G és incompatible amb el codi PIC el qual és per omissió"
+
+#: config/mips/mips.c:5315
+msgid "-membedded-pic and -mabicalls are incompatible"
+msgstr "-membedded-pic i -mabicalls són incompatibles"
+
+#: config/mips/mips.c:5318
+msgid "-G and -membedded-pic are incompatible"
+msgstr "-G i -membedded-pic són incompatibles"
+
+#: config/mips/mips.c:5369
+#, c-format
+msgid "invalid option `entry%s'"
+msgstr "opció invàlid \"entry%s\""
+
+#: config/mips/mips.c:5372
+msgid "-mentry is only meaningful with -mips-16"
+msgstr "-mentry només té significat amb -mips-16"
+
+#: config/mips/mips.c:5781
+#, c-format
+msgid "internal error: %%) found without a %%( in assembler pattern"
+msgstr "error intern: es va trobar %%) sense un %%( en el patró del ensemblador"
+
+#: config/mips/mips.c:5795
+#, c-format
+msgid "internal error: %%] found without a %%[ in assembler pattern"
+msgstr "error intern: es va trobar %%] sense un %%[ en el patró del ensemblador"
+
+#: config/mips/mips.c:5808
+#, c-format
+msgid "internal error: %%> found without a %%< in assembler pattern"
+msgstr "error intern: es va trobar %%> sense un %%< en el patró del ensemblador"
+
+#: config/mips/mips.c:5821
+#, c-format
+msgid "internal error: %%} found without a %%{ in assembler pattern"
+msgstr "error intern: es va trobar %%} sense un %%{ en el patró del ensemblador"
+
+#: config/mips/mips.c:5835
+#, c-format
+msgid "PRINT_OPERAND: unknown punctuation '%c'"
+msgstr "PRINT_OPERAND: puntuació desconeguda \"%c\""
+
+#: config/mips/mips.c:5844 config/xtensa/xtensa.c:1939
+msgid "PRINT_OPERAND null pointer"
+msgstr "PRINT_OPERAND punter nul"
+
+#: config/mips/mips.c:5975
+#, c-format
+msgid "invalid use of %%d, %%x, or %%X"
+msgstr "ùs invàlid de %%d, %%x, o %%X"
+
+#: config/mips/mips.c:6013 config/xtensa/xtensa.c:2033
+msgid "PRINT_OPERAND_ADDRESS, null pointer"
+msgstr "PRINT_OPERAND_ADDRESS, punter nul"
+
+#: config/mips/mips.c:6242
+msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
+msgstr "el format ECOFF de MIPS no permet el canvi de noms de fitxer dintre de funcions amb #line"
+
+#: config/mips/mips.c:6552
+msgid "can't rewind temp file"
+msgstr "no es pot rebobinar el fitxer temporal"
+
+#: config/mips/mips.c:6556
+msgid "can't write to output file"
+msgstr "no es pot escriure al fitxer de sortida"
+
+#: config/mips/mips.c:6559
+msgid "can't read from temp file"
+msgstr "no es pot llegir dès del fitxer temporal"
+
+#: config/mips/mips.c:6562
+msgid "can't close temp file"
+msgstr "no es pot tancar el fitxer temporal"
+
+#: config/mips/mips.c:7003
+#, c-format
+msgid "gp_offset (%ld) or end_offset (%ld) is less than zero"
+msgstr "gp_offset (%ld) o end_offset (%ld) és menor a zero"
+
+#: config/mips/mips.c:7112
+#, c-format
+msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
+msgstr "fp_offset (%ld) o end_offset (%ld) és menor a zero"
+
+#: config/mips/mips.c:9335
+#, c-format
+msgid "can not handle inconsistent calls to `%s'"
+msgstr "no es poden manejar cridades inconsistentes a \"%s\""
+
+#: config/mips/mips.c:10467
+msgid "the cpu name must be lower case"
+msgstr "el nom de cpu deu estar en minúscules"
+
+#: config/mips/mips.c:10489
+#, c-format
+msgid "bad value (%s) for %s"
+msgstr "valor erroni (%s) per a %s"
+
+#. Target CPU builtins.
+#. We do this here because __mips is defined below and so we can't use builtin_define_std.
+#. Treat _R3000 and _R4000 like register-size defines, which is how they've historically been used.
+#. Macros dependent on the C dialect.
+#. Bizzare, but needed at least for Irix.
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/mips/mips.h:528 config/mn10300/mn10300.h:64
+msgid "No default crt0.o"
+msgstr "No està el crt0.o per omissió"
+
+#: config/mips/mips.h:530
+msgid "Use 64-bit int type"
+msgstr "Usar tipus int de 64 bits"
+
+#: config/mips/mips.h:532
+msgid "Use 64-bit long type"
+msgstr "Usar tipus long de 64 bits"
+
+#: config/mips/mips.h:534
+msgid "Use 32-bit long type"
+msgstr "Usar tipus long de 32 bits"
+
+#: config/mips/mips.h:536
+msgid "Optimize lui/addiu address loads"
+msgstr "Optimitzar les càrregues de les adreces lui/addiu"
+
+#: config/mips/mips.h:538
+msgid "Don't optimize lui/addiu address loads"
+msgstr "No optimitzar les càrregues de les adreces lui/addiu"
+
+#: config/mips/mips.h:540
+msgid "Use MIPS as"
+msgstr "Usar l'as de MIPS"
+
+#: config/mips/mips.h:542
+msgid "Use GNU as"
+msgstr "Usar l'as de GNU"
+
+#: config/mips/mips.h:544
+msgid "Use symbolic register names"
+msgstr "Usar noms simbòlics de registre"
+
+#: config/mips/mips.h:546
+msgid "Don't use symbolic register names"
+msgstr "No usar noms simbòlics de registre"
+
+#: config/mips/mips.h:548 config/mips/mips.h:550
+msgid "Use GP relative sdata/sbss sections"
+msgstr "Usar seccions sdata/sbss relatives a GP"
+
+#: config/mips/mips.h:552 config/mips/mips.h:554
+msgid "Don't use GP relative sdata/sbss sections"
+msgstr "No usar seccions sdata/sbss relatives a GP"
+
+#: config/mips/mips.h:556
+msgid "Output compiler statistics"
+msgstr "Mostrar la sortida d'estadístiques del compilador"
+
+#: config/mips/mips.h:558
+msgid "Don't output compiler statistics"
+msgstr "No mostrar la sortida d'estadístiques del compilador"
+
+#: config/mips/mips.h:560
+msgid "Don't optimize block moves"
+msgstr "No optimitzar els moviments de blocs"
+
+#: config/mips/mips.h:562
+msgid "Optimize block moves"
+msgstr "Optimitzar els moviments de blocs"
+
+#: config/mips/mips.h:564
+msgid "Use mips-tfile asm postpass"
+msgstr "Usar mips-tfile asm postpass"
+
+#: config/mips/mips.h:566
+msgid "Don't use mips-tfile asm postpass"
+msgstr "No usar mips-tfile asm postpass"
+
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of triplets in braces,
+#. each triplet being { "NAME", VALUE, DOC }
+#. where VALUE is the bits to set or minus the bits to clear and DOC
+#. is the documentation for --help (NULL if intentionally undocumented).
+#. An empty string NAME is used to identify the default VALUE.
+#: config/mips/mips.h:570 config/pdp11/pdp11.h:56
+msgid "Use hardware floating point"
+msgstr "Usar coma flotant de maquinari"
+
+#: config/mips/mips.h:572
+msgid "Use 64-bit FP registers"
+msgstr "Usar registres FP de 64 bits"
+
+#: config/mips/mips.h:574
+msgid "Use 32-bit FP registers"
+msgstr "Usar registres FP de 32 bits"
+
+#: config/mips/mips.h:576
+msgid "Use 64-bit general registers"
+msgstr "Usar registres generals de 64 bits"
+
+#: config/mips/mips.h:578
+msgid "Use 32-bit general registers"
+msgstr "Usar registres generals de 32 bits"
+
+#: config/mips/mips.h:580
+msgid "Use Irix PIC"
+msgstr "Usar PIC de Irix"
+
+#: config/mips/mips.h:582
+msgid "Don't use Irix PIC"
+msgstr "No usar PIC de Irix"
+
+#: config/mips/mips.h:584
+msgid "Use indirect calls"
+msgstr "Usar cridades indirectes"
+
+#: config/mips/mips.h:586
+msgid "Don't use indirect calls"
+msgstr "No usar cridades indirectes"
+
+#: config/mips/mips.h:588
+msgid "Use embedded PIC"
+msgstr "Usar el PIC incrustat"
+
+#: config/mips/mips.h:590
+msgid "Don't use embedded PIC"
+msgstr "No usar el PIC incrustat"
+
+#: config/mips/mips.h:592
+msgid "Use ROM instead of RAM"
+msgstr "Usar ROM enlloc de RAM"
+
+#: config/mips/mips.h:594
+msgid "Don't use ROM instead of RAM"
+msgstr "No usar ROM enlloc de RAM"
+
+#: config/mips/mips.h:596
+msgid "Put uninitialized constants in ROM (needs -membedded-data)"
+msgstr "Posar les constants sense inicialitzar en ROM (necessita -membedded-data)"
+
+#: config/mips/mips.h:598
+msgid "Don't put uninitialized constants in ROM"
+msgstr "No posar les constants sense inicialitzar en ROM"
+
+#. Macro to define tables used to set the flags.
+#: config/mips/mips.h:600 config/xtensa/xtensa.h:110
+msgid "Use big-endian byte order"
+msgstr "Usar ordre de bit big-endian"
+
+#: config/mips/mips.h:602 config/xtensa/xtensa.h:112
+msgid "Use little-endian byte order"
+msgstr "Usar ordre de bit little-endian"
+
+#: config/mips/mips.h:604
+msgid "Use single (32-bit) FP only"
+msgstr "Usar únicament una sola FP (32-bit)"
+
+#: config/mips/mips.h:606
+msgid "Don't use single (32-bit) FP only"
+msgstr "No usar únicament una sola FP (32-bit)"
+
+#: config/mips/mips.h:608
+msgid "Use multiply accumulate"
+msgstr "Usar el acumulador de multiplicació"
+
+#: config/mips/mips.h:610
+msgid "Don't use multiply accumulate"
+msgstr "No usar el acumulador de multiplicació"
+
+#: config/mips/mips.h:612 config/rs6000/rs6000.h:314
+msgid "Don't generate fused multiply/add instructions"
+msgstr "No generar instruccions multiply/add de curt circuit"
+
+#: config/mips/mips.h:614 config/rs6000/rs6000.h:312
+msgid "Generate fused multiply/add instructions"
+msgstr "Generar instruccions multiply/add de curt circuit"
+
+#: config/mips/mips.h:616
+msgid "Work around early 4300 hardware bug"
+msgstr "Evitar el bug del primer maquinari 4300"
+
+#: config/mips/mips.h:618
+msgid "Don't work around early 4300 hardware bug"
+msgstr "No evitar el bug del primer maquinari 4300"
+
+#: config/mips/mips.h:620
+msgid "Trap on integer divide by zero"
+msgstr "Atrapar la divisió entera per zero"
+
+#: config/mips/mips.h:622
+msgid "Don't trap on integer divide by zero"
+msgstr "No atrapar la divisió entera per zero"
+
+#: config/mips/mips.h:624
+msgid "Trap on integer divide overflow"
+msgstr "Atrapar desbordaments en la divisió entera"
+
+#: config/mips/mips.h:626
+msgid "Don't trap on integer divide overflow"
+msgstr "No atrapar desbordaments en la divisió entera"
+
+#: config/mips/mips.h:628
+msgid "Use Branch Likely instructions, overriding default for arch"
+msgstr ""
+
+#: config/mips/mips.h:630
+msgid "Don't use Branch Likely instructions, overriding default for arch"
+msgstr ""
+
+#: config/mips/mips.h:744 config/pa/pa.h:310
+msgid "Specify CPU for scheduling purposes"
+msgstr "Especificar el CPU per a propòsits de calendarització"
+
+#: config/mips/mips.h:746
+msgid "Specify CPU for code generation purposes"
+msgstr "Especificar el CPU per a propòsits de generació de codi"
+
+#: config/mips/mips.h:748
+msgid "Specify an ABI"
+msgstr "Especificar un ABI"
+
+#: config/mips/mips.h:750
+msgid "Specify a Standard MIPS ISA"
+msgstr "Especificar el ISA de MIPS standard"
+
+#: config/mips/mips.h:752
+msgid "Use mips16 entry/exit psuedo ops"
+msgstr "Usar pseudo ops mips16 de entrada/sortida"
+
+#: config/mips/mips.h:754
+msgid "Don't use MIPS16 instructions"
+msgstr "No usar instruccions MIPS16"
+
+#: config/mips/mips.h:756
+msgid "Don't call any cache flush functions"
+msgstr "No cridar cap funció de neteja de memòria cau"
+
+#: config/mips/mips.h:758
+msgid "Specify cache flush function"
+msgstr "Especificar una funció de neteja de memòria cau"
+
+#. Output assembler code to FILE to increment profiler label # LABELNO
+#. for profiling a function entry.
+#: config/mips/mips.h:2900
+msgid "mips16 function profiling"
+msgstr "anàlisi de perfil de les funcions mips16"
+
+#: config/mmix/mmix.c:189
+#, c-format
+msgid "-f%s not supported: ignored"
+msgstr "-f%s no té suport: ignorat"
+
+#: config/mmix/mmix.c:644
+#, c-format
+msgid "too large function value type, needs %d registers, have only %d registers for this"
+msgstr "el valor del tipus de la funció és massa gran, necessita %d registres, només es tenen %d registres per a això"
+
+#: config/mmix/mmix.c:826
+msgid "function_profiler support for MMIX"
+msgstr "suport per a function_profiler per a MMIX"
+
+#: config/mmix/mmix.c:848
+msgid "MMIX Internal: Last named vararg would not fit in a register"
+msgstr "MMIX intern: L'últim vararg nomenat no conté en un registre"
+
+#: config/mmix/mmix.c:1639 config/mmix/mmix.c:1769
+msgid "MMIX Internal: Expected a CONST_INT, not this"
+msgstr "MMIX intern: Esperant un CONS_INT, no això"
+
+#: config/mmix/mmix.c:1647 config/mmix/mmix.c:1671 config/mmix/mmix.c:1787
+#, c-format
+msgid "MMIX Internal: Bad register: %d"
+msgstr "MMIX intern: registre erroni: %d"
+
+#: config/mmix/mmix.c:1718
+msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
+msgstr "MMIX intern: valor erroni per a \"m\", no és un CONST_INT"
+
+#: config/mmix/mmix.c:1737
+msgid "MMIX Internal: Expected a register, not this"
+msgstr "MMIX intern: Esperant un registre, no això"
+
+#: config/mmix/mmix.c:1747
+msgid "MMIX Internal: Expected a constant, not this"
+msgstr "MMIX intern: Esperant una constant, no això"
+
+#. Presumably there's a missing case above if we get here.
+#: config/mmix/mmix.c:1779
+#, c-format
+msgid "MMIX Internal: Missing `%c' case in mmix_print_operand"
+msgstr "MMIX intern: \"%c\" faltant en mmix_print_operand"
+
+#. We need the original here.
+#: config/mmix/mmix.c:1831
+msgid "MMIX Internal: Cannot decode this operand"
+msgstr "MMIX intern: aquesta operant no es pot dexifrar"
+
+#: config/mmix/mmix.c:1891
+msgid "MMIX Internal: This is not a recognized address"
+msgstr "MMIX intern: adreça no reconeguda"
+
+#: config/mmix/mmix.c:2082
+#, c-format
+msgid "stack frame not a multiple of 8 bytes: %d"
+msgstr "el marc de pila no és un múltiple de 8 octets: %d"
+
+#: config/mmix/mmix.c:2321
+#, c-format
+msgid "stack frame not a multiple of octabyte: %d"
+msgstr "el marc de pila no és un múltiple de octabyte: %d"
+
+#: config/mmix/mmix.c:2818 config/mmix/mmix.c:2887
+#, c-format
+msgid "MMIX Internal: %s is not a shiftable int"
+msgstr "MMIX intern: %s no és un enter desplaçable"
+
+#: config/mmix/mmix.c:3006
+msgid "MMIX Internal: Trying to output invalidly reversed condition:"
+msgstr "MMIX intern: Intentant de mostrar una condició invertida de forma invàlida:"
+
+#: config/mmix/mmix.c:3013
+msgid "MMIX Internal: What's the CC of this?"
+msgstr "MMIX Internal: Quin és el CC per això"
+
+#: config/mmix/mmix.c:3017
+msgid "MMIX Internal: What is the CC of this?"
+msgstr "MMIX Internal: Quin és el CC per això"
+
+#: config/mmix/mmix.c:3088
+msgid "MMIX Internal: This is not a constant:"
+msgstr "MMIX Internal: Això no és una constant:"
+
+#. For these target macros, there is no generic documentation here. You
+#. should read `Using and Porting GCC' for that. Only comments specific
+#. to the MMIX target are here.
+#.
+#. There are however references to the specific texinfo node (comments
+#. with "Node:"), so there should be little or nothing amiss. Probably
+#. the opposite, since we don't have to care about old littering and
+#. soon outdated generic comments.
+#. Node: Driver
+#. User symbols are in the same name-space as built-in symbols, but we
+#. don't need the built-in symbols, so remove those and instead apply
+#. stricter operand checking. Don't warn when expanding insns.
+#. Pass on -mset-program-start=N and -mset-data-start=M to the linker.
+#. Provide default program start 0x100 unless -mno-set-program-start.
+#. Don't do this if linking relocatably, with -r. For a final link,
+#. produce mmo, unless ELF is requested or when linking relocatably.
+#. Put unused option values here.
+#: config/mmix/mmix.h:132
+msgid "Set start-address of the program"
+msgstr "Definir l'adreça d'inici del programa"
+
+#: config/mmix/mmix.h:134
+msgid "Set start-address of data"
+msgstr "Definir l'adreça d'inici de les dades"
+
+#. FIXME: Provide a way to *load* the epsilon register.
+#: config/mmix/mmix.h:198
+msgid "For intrinsics library: pass all parameters in registers"
+msgstr "Per a biblioteques intrínsecs: passar els parametres en registres"
+
+#: config/mmix/mmix.h:201
+msgid "Use register stack for parameters and return value"
+msgstr "Usar registres de pila per a parametres i valors de retorn"
+
+#: config/mmix/mmix.h:203
+msgid "Use call-clobbered registers for parameters and return value"
+msgstr "Usar registres maltractats per a parametres i valors de retorn"
+
+#: config/mmix/mmix.h:205
+msgid "Use epsilon-respecting floating point compare instructions"
+msgstr "Usar instuccions de comparança en coma flotant que respectent epsilon"
+
+#: config/mmix/mmix.h:208
+msgid "Use zero-extending memory loads, not sign-extending ones"
+msgstr "Usar càrregues de memòria d'extensió zero, no les d'extensió amb signe"
+
+#: config/mmix/mmix.h:211
+msgid "Generate divide results with reminder having the same sign as the divisor (not the dividend)"
+msgstr "Generar resultats de divisió amb residu que tingui el mateix signe que el divisor (no el del dividend)"
+
+#: config/mmix/mmix.h:215
+msgid "Prepend global symbols with \":\" (for use with PREFIX)"
+msgstr "Precedir als símbols globals amb \":\" (per a usar-se amb PREFIX)"
+
+#: config/mmix/mmix.h:217
+msgid "Do not provide a default start-address 0x100 of the program"
+msgstr "No proveir una adreça d'inici per omissió 0x100 del programa"
+
+#: config/mmix/mmix.h:219
+msgid "Link to emit program in ELF format (rather than mmo)"
+msgstr "Enllaçar per a emetre el programa en format ELF (en lloc de mmo)"
+
+#: config/mmix/mmix.h:221
+msgid "Use P-mnemonics for branches statically predicted as taken"
+msgstr "Usar Mnemónicos-P per a ramificacions predites estàticament com preses"
+
+#: config/mmix/mmix.h:223
+msgid "Don't use P-mnemonics for branches"
+msgstr "No usar Mnemónicos-P per a ramificacions"
+
+#: config/mmix/mmix.h:225
+msgid "Use addresses that allocate global registers"
+msgstr "Usar adreces que reservin registres globals"
+
+#: config/mmix/mmix.h:227
+msgid "Do not use addresses that allocate global registers"
+msgstr "No usar adreces que reservin registres globals"
+
+#: config/mmix/mmix.h:229
+msgid "Generate a single exit point for each function"
+msgstr "Generar només un punt de sortida per a cada funció"
+
+#: config/mmix/mmix.h:231
+msgid "Do not generate a single exit point for each function"
+msgstr "No generar només un punt de sortida per a cada funció"
+
+#: config/mn10300/mn10300.h:59
+msgid "Work around hardware multiply bug"
+msgstr "Evitar el error de multiplicació de maquinari"
+
+#: config/mn10300/mn10300.h:60
+msgid "Do not work around hardware multiply bug"
+msgstr "No evitar el error de multiplicació de maquinari"
+
+#: config/mn10300/mn10300.h:61
+msgid "Target the AM33 processor"
+msgstr "Apuntar al processador AM33"
+
+#: config/mn10300/mn10300.h:65
+msgid "Enable linker relaxations"
+msgstr "Activar la relaxació del enllaçador"
+
+#: config/ns32k/ns32k.h:142 config/s390/s390.h:69
+msgid "Don't use hardware fp"
+msgstr "No usar el fp de maquinari"
+
+#: config/ns32k/ns32k.h:143
+msgid "Alternative calling convention"
+msgstr "Convenció de cridada alternativa"
+
+#: config/ns32k/ns32k.h:145
+msgid "Pass some arguments in registers"
+msgstr "Passar alguns arguments en registres"
+
+#: config/ns32k/ns32k.h:146
+msgid "Pass all arguments on stack"
+msgstr "Passar tots els arguments en la pila"
+
+#: config/ns32k/ns32k.h:147
+msgid "Optimize for 32532 cpu"
+msgstr "Optimitzar per al cpu 32532"
+
+#: config/ns32k/ns32k.h:148
+msgid "Optimize for 32332 cpu"
+msgstr "Optimitzar per al cpu 32332"
+
+#: config/ns32k/ns32k.h:150
+msgid "Optimize for 32032"
+msgstr "Optimitzar per a 32032"
+
+#: config/ns32k/ns32k.h:152
+msgid "Register sb is zero. Use for absolute addressing"
+msgstr "El registre sb és zero. S'usa per a adreçament absolut"
+
+#: config/ns32k/ns32k.h:153
+msgid "Do not use register sb"
+msgstr "No usar el registre sb"
+
+#: config/ns32k/ns32k.h:155
+msgid "Use bit-field instructions"
+msgstr "Usar instruccions de camps de bit"
+
+#: config/ns32k/ns32k.h:157
+msgid "Do not use bit-field instructions"
+msgstr "No usar instruccions de camps de bit"
+
+#: config/ns32k/ns32k.h:158
+msgid "Generate code for high memory"
+msgstr "Generar codi per a memòria alta"
+
+#: config/ns32k/ns32k.h:159
+msgid "Generate code for low memory"
+msgstr "Generar codi per a memòria baixa"
+
+#: config/ns32k/ns32k.h:160
+msgid "32381 fpu"
+msgstr "fpu 32381"
+
+#: config/ns32k/ns32k.h:162
+msgid "Use multiply-accumulate fp instructions"
+msgstr "Usar instruccions de fp per a multiplicar-acumular"
+
+#: config/ns32k/ns32k.h:164
+msgid "Do not use multiply-accumulate fp instructions"
+msgstr "No usar instruccions de fp per a multiplicar-acumular"
+
+#: config/ns32k/ns32k.h:165
+msgid "\"Small register classes\" kludge"
+msgstr "kludge de \"Classes de registre petites\""
+
+#: config/ns32k/ns32k.h:166
+msgid "No \"Small register classes\" kludge"
+msgstr "No kludge de \"Classes de registre petites\""
+
+#: config/pa/pa.c:261
+#, c-format
+msgid ""
+"unknown -mschedule= option (%s).\n"
+"Valid options are 700, 7100, 7100LC, 7200, 7300, and 8000\n"
+msgstr ""
+"opció -mschedule= desconeguda (%s).\n"
+"Les opcions vàlides són 700, 7100, 7100LC, 7200, 7300, i 8000\n"
+
+#: config/pa/pa.c:286
+#, c-format
+msgid ""
+"unknown -march= option (%s).\n"
+"Valid options are 1.0, 1.1, and 2.0\n"
+msgstr ""
+"opció -march= desconeguda (%s).\n"
+"Les opcions vàlides són 1.0, 1.1, i 2.0\n"
+
+#: config/pa/pa.c:299
+msgid "PIC code generation is not supported in the portable runtime model\n"
+msgstr "La generació de codi PIC no té suport en el model portable de temps d'execució\n"
+
+#: config/pa/pa.c:304
+msgid "PIC code generation is not compatible with fast indirect calls\n"
+msgstr "La generació de codi PIC no és compatible amb les cridades ràpides indirectes\n"
+
+#: config/pa/pa.c:309
+msgid "-g is only supported when using GAS on this processor,"
+msgstr "-g només té suport quan s'usa GAS en aquest processador,"
+
+#: config/pa/pa.c:310
+msgid "-g option disabled"
+msgstr "opció -g desactivada"
+
+#: config/pa/pa-hiux.h:75 config/pa/pa-hpux.h:87 config/pa/pa-hpux7.h:81
+#: config/pa/pa64-hpux.h:25
+msgid "Generate cpp defines for server IO"
+msgstr "Generar definicions cpp per a IO de servidor"
+
+#: config/pa/pa-hiux.h:76 config/pa/pa-hpux.h:88 config/pa/pa-hpux7.h:82
+#: config/pa/pa64-hpux.h:27
+msgid "Generate cpp defines for workstation IO"
+msgstr "Generar definicions cpp per a IO d'estació de treball"
+
+#. Macro to define tables used to set the flags. This is a
+#. list in braces of target switches with each switch being
+#. { "NAME", VALUE, "HELP_STRING" }. VALUE is the bits to set,
+#. or minus the bits to clear. An empty string NAME is used to
+#. identify the default VALUE. Do not mark empty strings for
+#. translation.
+#: config/pa/pa.h:232 config/pa/pa.h:238
+msgid "Generate PA1.1 code"
+msgstr "Generar codi PA1.1"
+
+#: config/pa/pa.h:234 config/pa/pa.h:236
+msgid "Generate PA1.0 code"
+msgstr "Generar codi PA1.0"
+
+#: config/pa/pa.h:240
+msgid "Generate PA2.0 code (requires binutils 2.10 or later)"
+msgstr ""
+
+#: config/pa/pa.h:242
+msgid "Disable FP regs"
+msgstr "Desactivar els registres FP"
+
+#: config/pa/pa.h:244
+msgid "Do not disable FP regs"
+msgstr "No desactivar registres FP"
+
+#: config/pa/pa.h:246
+msgid "Disable space regs"
+msgstr ""
+
+#: config/pa/pa.h:248
+msgid "Do not disable space regs"
+msgstr "No desactivar registres d'espai"
+
+#: config/pa/pa.h:250
+msgid "Put jumps in call delay slots"
+msgstr ""
+
+#: config/pa/pa.h:252
+msgid "Do not put jumps in call delay slots"
+msgstr ""
+
+#: config/pa/pa.h:254
+msgid "Disable indexed addressing"
+msgstr "Desactivar adreçament d'index"
+
+#: config/pa/pa.h:256
+msgid "Do not disable indexed addressing"
+msgstr "No desactivar adreçament indexat"
+
+#: config/pa/pa.h:258
+msgid "Use portable calling conventions"
+msgstr "Usar convencions de cridada portable"
+
+#: config/pa/pa.h:260
+msgid "Do not use portable calling conventions"
+msgstr "No usar convencions de cridada portable"
+
+#: config/pa/pa.h:262
+msgid "Assume code will be assembled by GAS"
+msgstr ""
+
+#: config/pa/pa.h:264
+msgid "Do not assume code will be assembled by GAS"
+msgstr ""
+
+#: config/pa/pa.h:268
+msgid "Do not use software floating point"
+msgstr "No usa coma flotant de programari"
+
+#: config/pa/pa.h:270
+msgid "Emit long load/store sequences"
+msgstr ""
+
+#: config/pa/pa.h:272
+msgid "Do not emit long load/store sequences"
+msgstr "No emetre seqüències load/store llarges"
+
+#: config/pa/pa.h:274
+msgid "Generate fast indirect calls"
+msgstr "Generar cridades indirectes ràpides"
+
+#: config/pa/pa.h:276
+msgid "Do not generate fast indirect calls"
+msgstr "No generar cridades indirectes ràpides"
+
+#: config/pa/pa.h:278
+msgid "Generate code for huge switch statements"
+msgstr "Generar codi per a declaracions switch grandes"
+
+#: config/pa/pa.h:280
+msgid "Do not generate code for huge switch statements"
+msgstr "No generar codi per a declaracions switch grandes"
+
+#: config/pa/pa.h:282
+msgid "Always generate long calls"
+msgstr "Generar sempre cridades llarges"
+
+#: config/pa/pa.h:284
+msgid "Generate long calls only when needed"
+msgstr ""
+
+#: config/pa/pa.h:286
+msgid "Enable linker optimizations"
+msgstr "Activar les optimitzacions del enllaçador"
+
+#: config/pa/pa.h:312
+msgid "Specify architecture for code generation. Values are 1.0, 1.1, and 2.0. 2.0 requires gas snapshot 19990413 or later."
+msgstr ""
+
+#: config/pa/pa64-hpux.h:29
+msgid "Assume code will be linked by GNU ld"
+msgstr ""
+
+#: config/pa/pa64-hpux.h:31
+msgid "Assume code will be linked by HP ld"
+msgstr ""
+
+#: config/pdp11/pdp11.h:57
+msgid "Do not use hardware floating point"
+msgstr "No usa coma flotant de maquinari"
+
+#. return float result in ac0
+#: config/pdp11/pdp11.h:59
+msgid "Return floating point results in ac0"
+msgstr "Devolució de resultats de coma flotant en ac0"
+
+#: config/pdp11/pdp11.h:60
+msgid "Return floating point results in memory"
+msgstr "Devolució de resultats de coma flotant en memoria"
+
+#. is 11/40
+#: config/pdp11/pdp11.h:62
+msgid "Generate code for an 11/40"
+msgstr "Generar codi per a un 11/40"
+
+#. is 11/45
+#: config/pdp11/pdp11.h:65
+msgid "Generate code for an 11/45"
+msgstr "5Generar codi per a un 11/45"
+
+#. is 11/10
+#: config/pdp11/pdp11.h:68
+msgid "Generate code for an 11/10"
+msgstr "Generar codi per a un 11/10"
+
+#. use movstrhi for bcopy
+#. use 32 bit for int
+#: config/pdp11/pdp11.h:73 config/pdp11/pdp11.h:74
+msgid "Use 32 bit int"
+msgstr "Usar int de 32 bits"
+
+#: config/pdp11/pdp11.h:75 config/pdp11/pdp11.h:76
+msgid "Use 16 bit int"
+msgstr "Usar int de 16 bits"
+
+#. use 32 bit for float
+#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
+msgid "Use 32 bit float"
+msgstr "Usar float de 32 bits"
+
+#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
+msgid "Use 64 bit float"
+msgstr "Usar float de 64 bits"
+
+#. allow abshi pattern? - can trigger "optimizations" which make code SLOW!
+#. is branching expensive - on a PDP, it's actually really cheap
+#. this is just to play around and check what code gcc generates
+#. split instruction and data memory?
+#: config/pdp11/pdp11.h:90
+msgid "Target has split I&D"
+msgstr "L'objectiu té un I&D dividit"
+
+#: config/pdp11/pdp11.h:91
+msgid "Target does not have split I&D"
+msgstr "L'objectiu no té un I&D dividit"
+
+#. UNIX assembler syntax?
+#: config/pdp11/pdp11.h:93
+msgid "Use UNIX assembler syntax"
+msgstr "Usar sintaxi de l'ensemblador UNIX"
+
+#: config/pdp11/pdp11.h:94
+msgid "Use DEC assembler syntax"
+msgstr "Usar sintaxi de l'ensemblador DEC"
+
+#: config/romp/romp.c:717 config/rs6000/rs6000.c:7755
+#, c-format
+msgid "invalid %%S value"
+msgstr "valor %%S invàlid"
+
+#: config/romp/romp.c:726 config/romp/romp.c:733
+#, c-format
+msgid "invalid %%b value"
+msgstr "valor %%b invàlid"
+
+#: config/romp/romp.c:773 config/romp/romp.c:784
+#, c-format
+msgid "invalid %%z value"
+msgstr "valor %%z invàlid"
+
+#: config/romp/romp.c:792 config/romp/romp.c:800
+#, c-format
+msgid "invalid %%Z value"
+msgstr "valor %%Z invàlid"
+
+#: config/romp/romp.c:807 config/romp/romp.c:816 config/romp/romp.c:823
+#: config/rs6000/rs6000.c:7584
+#, c-format
+msgid "invalid %%k value"
+msgstr "valor %%k invàlid"
+
+#: config/romp/romp.c:908 config/romp/romp.c:951
+#, c-format
+msgid "invalid %%j value"
+msgstr "valor %%j invàlid"
+
+#. Perform any needed actions needed for a function that is receiving a
+#. variable number of arguments.
+#.
+#. CUM is as above.
+#.
+#. MODE and TYPE are the mode and type of the current parameter.
+#.
+#. PRETEND_SIZE is a variable that should be set to the amount of stack
+#. that must be pushed by the prolog to pretend that our caller pushed
+#. it.
+#.
+#. Normally, this macro will push all remaining incoming registers on the
+#. stack and set PRETEND_SIZE to the length of the registers pushed.
+#: config/romp/romp.h:648
+msgid "can't have varargs with -mfp-arg-in-fp-regs"
+msgstr "no es pot tenir varargs amb -mfp-arg-in-fp-regs"
+
+#. Handle the machine specific pragma longcall. Its syntax is
+#.
+#. # pragma longcall ( TOGGLE )
+#.
+#. where TOGGLE is either 0 or 1.
+#.
+#. rs6000_default_long_calls is set to the value of TOGGLE, changing
+#. whether or not new function declarations receive a longcall
+#. attribute by default.
+#: config/rs6000/rs6000-c.c:44
+msgid "ignoring malformed #pragma longcall"
+msgstr "ignorant el #pragma longcall malformats"
+
+#: config/rs6000/rs6000-c.c:58
+msgid "missing open paren"
+msgstr "\"(\" faltant"
+
+#: config/rs6000/rs6000-c.c:60
+msgid "missing number"
+msgstr "falta valor"
+
+#: config/rs6000/rs6000-c.c:62
+msgid "missing close paren"
+msgstr "\")\" faltant"
+
+#: config/rs6000/rs6000-c.c:65
+msgid "number must be 0 or 1"
+msgstr ""
+
+#: config/rs6000/rs6000-c.c:68
+msgid "junk at end of #pragma longcall"
+msgstr "escombraries al final de #pragma longcall"
+
+#: config/rs6000/rs6000.c:592
+msgid "-mmultiple is not supported on little endian systems"
+msgstr "-mmultiple no té suport en sistemes little endian"
+
+#: config/rs6000/rs6000.c:599
+msgid "-mstring is not supported on little endian systems"
+msgstr "-mstringe no té suport en sistemes little endian"
+
+#: config/rs6000/rs6000.c:623
+#, c-format
+msgid "unknown -mdebug-%s switch"
+msgstr "interruptor -mdebug-%s desconegut"
+
+#: config/rs6000/rs6000.c:635
+#, c-format
+msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'"
+msgstr ""
+
+#: config/rs6000/rs6000.c:646
+#, c-format
+msgid "Unknown switch -mlong-double-%s"
+msgstr "interruptor -mlong-double-%s desconegut"
+
+#: config/rs6000/rs6000.c:738
+#, c-format
+msgid "unknown -misel= option specified: '%s'"
+msgstr "opció -misel= especificada desconeguda: \"%s\""
+
+#: config/rs6000/rs6000.c:753
+#, c-format
+msgid "unknown -mvrsave= option specified: '%s'"
+msgstr "opció -mvrsave= especificada desconeguda: \"%s\""
+
+#: config/rs6000/rs6000.c:772
+#, c-format
+msgid "unknown ABI specified: '%s'"
+msgstr "ABI especificada desconeguda: \"%s\""
+
+#: config/rs6000/rs6000.c:4206
+msgid "argument 1 must be a 5-bit signed literal"
+msgstr "l'argument 1 deu ser una literal amb signe de 5-bit"
+
+#: config/rs6000/rs6000.c:4313 config/rs6000/rs6000.c:4903
+msgid "argument 2 must be a 5-bit unsigned literal"
+msgstr "l'argument 2 deu ser una literal sense signe de 5-bit"
+
+#: config/rs6000/rs6000.c:4356
+msgid "argument 1 of __builtin_altivec_predicate must be a constant"
+msgstr "l'argument 1 de _builtin_altivec_predicate deu ser una constant"
+
+#: config/rs6000/rs6000.c:4410
+msgid "argument 1 of __builtin_altivec_predicate is out of range"
+msgstr "l'argument 1 de _builtin_altivec_predicate es fora de rang"
+
+#: config/rs6000/rs6000.c:4489
+msgid "argument 3 must be a 4-bit unsigned literal"
+msgstr "l'argument 3 deu ser una literal sense signe de 4-bit"
+
+#: config/rs6000/rs6000.c:4666
+#, c-format
+msgid "argument to `%s' must be a 2-bit unsigned literal"
+msgstr "l'argument per a \"%s\" deu ser una literal sense signe de 2-bit"
+
+#: config/rs6000/rs6000.c:4782
+msgid "argument to dss must be a 2-bit unsigned literal"
+msgstr "l'argument per a dss deu ser una literal sense signe de 2-bit"
+
+#: config/rs6000/rs6000.c:5013
+msgid "argument 1 of __builtin_spe_predicate must be a constant"
+msgstr "l'argument 1 de __builtin__spe_predicate deu ser una constant"
+
+#: config/rs6000/rs6000.c:5086
+msgid "argument 1 of __builtin_spe_predicate is out of range"
+msgstr "l'argument 1 de __builtin_spe_predicate està fora de rang"
+
+#: config/rs6000/rs6000.c:7511
+#, c-format
+msgid "invalid %%f value"
+msgstr "valor %%f invàlid"
+
+#: config/rs6000/rs6000.c:7520
+#, c-format
+msgid "invalid %%F value"
+msgstr "valor %%F invàlid"
+
+#: config/rs6000/rs6000.c:7529
+#, c-format
+msgid "invalid %%G value"
+msgstr "valor %%G invàlid"
+
+#: config/rs6000/rs6000.c:7564
+#, c-format
+msgid "invalid %%j code"
+msgstr "valor %%j invàlid"
+
+#: config/rs6000/rs6000.c:7574
+#, c-format
+msgid "invalid %%J code"
+msgstr "valor %%J invàlid"
+
+#: config/rs6000/rs6000.c:7604
+#, c-format
+msgid "invalid %%K value"
+msgstr "valor %%K invàlid"
+
+#: config/rs6000/rs6000.c:7671
+#, c-format
+msgid "invalid %%O value"
+msgstr "valor %%O invàlid"
+
+#: config/rs6000/rs6000.c:7793
+#, c-format
+msgid "invalid %%T value"
+msgstr "valor %%T invàlid"
+
+#: config/rs6000/rs6000.c:7803
+#, c-format
+msgid "invalid %%u value"
+msgstr "valor %%u invàlid"
+
+#: config/rs6000/rs6000.c:7812
+#, c-format
+msgid "invalid %%v value"
+msgstr "valor %%v invàlid"
+
+#: config/rs6000/rs6000.c:12242
+msgid "no profiling of 64-bit code for this ABI"
+msgstr ""
+
+#: config/rs6000/aix.h:160 config/rs6000/beos.h:32
+msgid "Always pass floating-point arguments in memory"
+msgstr "Passar sempre els arguments de coma flotant en memòria"
+
+#: config/rs6000/aix.h:162 config/rs6000/beos.h:34
+msgid "Don't always pass floating-point arguments in memory"
+msgstr "No passar sempre els arguments de coma flotant en memòria"
+
+#: config/rs6000/aix41.h:28 config/rs6000/aix43.h:32 config/rs6000/aix51.h:32
+#: config/rs6000/aix52.h:32
+msgid "Support message passing with the Parallel Environment"
+msgstr "Suport per al pas de missatges amb l'Ambient Paral·lel"
+
+#: config/rs6000/aix43.h:28 config/rs6000/aix51.h:28 config/rs6000/aix52.h:28
+msgid "Compile for 64-bit pointers"
+msgstr "Compilar per a punters de 64-bit"
+
+#: config/rs6000/aix43.h:30 config/rs6000/aix51.h:30 config/rs6000/aix52.h:30
+msgid "Compile for 32-bit pointers"
+msgstr "Compilar per a punters de 32-bit"
+
+#: config/rs6000/aix43.h:49 config/rs6000/aix51.h:49 config/rs6000/aix52.h:49
+msgid "-maix64 and POWER architecture are incompatible"
+msgstr "-maix64 i l'arquitectura POWER són incompatibles"
+
+#: config/rs6000/aix43.h:54 config/rs6000/aix51.h:54 config/rs6000/aix52.h:54
+msgid "-maix64 requires PowerPC64 architecture remain enabled"
+msgstr "-maix64 requereix que l'arquitectura PowerPC64 romangui activada"
+
+#: config/rs6000/aix43.h:58 config/rs6000/aix51.h:58 config/rs6000/aix52.h:58
+msgid "-maix64 required: 64-bit computation with 32-bit addressing not yet supported"
+msgstr "es requereix -maix64: càlcul de 64 bits amb adreçament de 32 bits no té suport encara"
+
+#. Run-time compilation parameters selecting different hardware subsets.
+#.
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/rs6000/rs6000.h:240
+msgid "Use POWER instruction set"
+msgstr "Usar el conjunt d'instruccions POWER"
+
+#: config/rs6000/rs6000.h:243
+msgid "Use POWER2 instruction set"
+msgstr "Usar el conjunt d'instruccions POWER2"
+
+#: config/rs6000/rs6000.h:245
+msgid "Do not use POWER2 instruction set"
+msgstr "No usar el conjunt d'instruccions POWER2"
+
+#: config/rs6000/rs6000.h:248
+msgid "Do not use POWER instruction set"
+msgstr "No usar el conjunt d'instruccions POWER"
+
+#: config/rs6000/rs6000.h:250
+msgid "Use PowerPC instruction set"
+msgstr "Usar el conjunt d'instruccions PowerPC"
+
+#: config/rs6000/rs6000.h:253
+msgid "Do not use PowerPC instruction set"
+msgstr "No usar el conjunt d'instruccions PowerPC"
+
+#: config/rs6000/rs6000.h:255
+msgid "Use PowerPC General Purpose group optional instructions"
+msgstr "Usar el grup opcional d'instruccions PowerPC de Propòsit General"
+
+#: config/rs6000/rs6000.h:257
+msgid "Don't use PowerPC General Purpose group optional instructions"
+msgstr "No usar el grup opcional d'instruccions PowerPC de Propòsit General"
+
+#: config/rs6000/rs6000.h:259
+msgid "Use PowerPC Graphics group optional instructions"
+msgstr "Usar el grup opcional d'instruccions PowerPC de Gràfiques"
+
+#: config/rs6000/rs6000.h:261
+msgid "Don't use PowerPC Graphics group optional instructions"
+msgstr "No usar el grup opcional d'instruccions PowerPC de Gràfiques"
+
+#: config/rs6000/rs6000.h:263
+msgid "Use PowerPC-64 instruction set"
+msgstr "Usar el conjunt d'instruccions PowerPC-64"
+
+#: config/rs6000/rs6000.h:265
+msgid "Don't use PowerPC-64 instruction set"
+msgstr "No usar el conjunt d'instruccions PowerPC-64"
+
+#: config/rs6000/rs6000.h:267
+msgid "Use AltiVec instructions"
+msgstr "Usar instruccions AltiVec"
+
+#: config/rs6000/rs6000.h:269
+msgid "Don't use AltiVec instructions"
+msgstr "No usar instruccions AltiVec"
+
+#: config/rs6000/rs6000.h:271
+msgid "Use new mnemonics for PowerPC architecture"
+msgstr "Usar els mnemònics nous per a l'arquitectura PowerPC"
+
+#: config/rs6000/rs6000.h:273
+msgid "Use old mnemonics for PowerPC architecture"
+msgstr "Usar els mnemònics vells per a l'arquitectura PowerPC"
+
+#: config/rs6000/rs6000.h:276
+msgid "Put everything in the regular TOC"
+msgstr "Col·locar tot en el TOC normal"
+
+#: config/rs6000/rs6000.h:278
+msgid "Place floating point constants in TOC"
+msgstr "Col·locar les constants de coma flotant en TOC"
+
+#: config/rs6000/rs6000.h:280
+msgid "Don't place floating point constants in TOC"
+msgstr "No col·locar les constants de coma flotant en TOC"
+
+#: config/rs6000/rs6000.h:282
+msgid "Place symbol+offset constants in TOC"
+msgstr "Col·locar les constants símbol+desplaçament en TOC"
+
+#: config/rs6000/rs6000.h:284
+msgid "Don't place symbol+offset constants in TOC"
+msgstr "No col·locar les constants símbol+desplaçament en TOC"
+
+#: config/rs6000/rs6000.h:290
+msgid "Place variable addresses in the regular TOC"
+msgstr "Col·locar les adreces variables en el TOC normal"
+
+#: config/rs6000/rs6000.h:296
+msgid "Generate load/store multiple instructions"
+msgstr "Generar múltiples instruccions load/store"
+
+#: config/rs6000/rs6000.h:298
+msgid "Do not generate load/store multiple instructions"
+msgstr "No generar múltiples instruccions load/store"
+
+#: config/rs6000/rs6000.h:302
+msgid "Generate string instructions for block moves"
+msgstr "Generar instruccions de cadena per a moviment de blocs"
+
+#: config/rs6000/rs6000.h:304
+msgid "Do not generate string instructions for block moves"
+msgstr "No generar instruccions de cadena per a moviment de blocs"
+
+#: config/rs6000/rs6000.h:308
+msgid "Generate load/store with update instructions"
+msgstr "Generar load/store amb instruccions d'actualització"
+
+#: config/rs6000/rs6000.h:310
+msgid "Do not generate load/store with update instructions"
+msgstr "No generar load/store amb instruccions d'actualització"
+
+#: config/rs6000/rs6000.h:318
+msgid "Don't schedule the start and end of the procedure"
+msgstr "No calendaritzar l'inici i el final del procediment"
+
+#: config/rs6000/rs6000.h:324
+msgid "Return all structures in memory (AIX default)"
+msgstr "Regressar totes les estructures en memòria (per omissió en AIX)"
+
+#: config/rs6000/rs6000.h:326
+msgid "Return small structures in registers (SVR4 default)"
+msgstr "Regressar les petites estructures en registres (per omissió en SVR4)"
+
+#: config/rs6000/rs6000.h:391 config/sparc/sparc.h:633
+msgid "Use features of and schedule code for given CPU"
+msgstr "Usar característiques i calendaritzar el codi per al CPU donat"
+
+#: config/rs6000/rs6000.h:394
+msgid "Enable debug output"
+msgstr "Activar la sortida de depuració"
+
+#: config/rs6000/rs6000.h:396
+msgid "Select full, part, or no traceback table"
+msgstr ""
+
+#: config/rs6000/rs6000.h:397
+msgid "Specify ABI to use"
+msgstr "Especificar el ABI a utilitzar"
+
+#: config/rs6000/rs6000.h:399
+msgid "Specify size of long double (64 or 128 bits)"
+msgstr "Especificar la grandària de long double (64 o 128 bits)"
+
+#: config/rs6000/rs6000.h:401
+msgid "Specify yes/no if isel instructions should be generated"
+msgstr ""
+
+#: config/rs6000/rs6000.h:403
+msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec"
+msgstr ""
+
+#: config/rs6000/rs6000.h:405
+msgid "Avoid all range limits on call instructions"
+msgstr "Evitar tots els límits de rang en les instruccions de cridades"
+
+#. Definitions for __builtin_return_address and __builtin_frame_address.
+#. __builtin_return_address (0) should give link register (65), enable
+#. this.
+#. This should be uncommented, so that the link register is used, but
+#. currently this would result in unmatched insns and spilling fixed
+#. registers so we'll leave it for another day. When these problems are
+#. taken care of one additional fetch will be necessary in RETURN_ADDR_RTX.
+#. (mrs)
+#. #define RETURN_ADDR_IN_PREVIOUS_FRAME
+#. Number of bytes into the frame return addresses can be found. See
+#. rs6000_stack_info in rs6000.c for more information on how the different
+#. abi's store the return address.
+#: config/rs6000/rs6000.h:1884
+msgid "RETURN_ADDRESS_OFFSET not supported"
+msgstr "No es dona suport a RETURN_ADDRESS_OFFSET"
+
+#: config/rs6000/sysv4.h:87
+msgid "Select ABI calling convention"
+msgstr "Seleccionar la convenció de cridada ABI"
+
+#: config/rs6000/sysv4.h:88
+msgid "Select method for sdata handling"
+msgstr "Seleccionar el mètode per al maneig de sdata"
+
+#: config/rs6000/sysv4.h:103
+msgid "Align to the base type of the bit-field"
+msgstr "Alinear al tipus base del camp de bit"
+
+#: config/rs6000/sysv4.h:105
+msgid "Don't align to the base type of the bit-field"
+msgstr "No alinear al tipus base del camp de bit"
+
+#: config/rs6000/sysv4.h:107
+msgid "Don't assume that unaligned accesses are handled by the system"
+msgstr "No assumir que els accessos sense alinear són manejats pel sistema"
+
+#: config/rs6000/sysv4.h:109
+msgid "Assume that unaligned accesses are handled by the system"
+msgstr "Assumir que els accessos sense alinear són manejats pel sistema"
+
+#: config/rs6000/sysv4.h:111 config/rs6000/sysv4.h:115
+msgid "Produce code relocatable at runtime"
+msgstr "Produir codi re-ubicable en el moment d'execució"
+
+#: config/rs6000/sysv4.h:113 config/rs6000/sysv4.h:117
+msgid "Don't produce code relocatable at runtime"
+msgstr "No produir codi re-ubicable en el moment d'execució"
+
+#: config/rs6000/sysv4.h:119 config/rs6000/sysv4.h:121
+msgid "Produce little endian code"
+msgstr "Produir codi little endian"
+
+#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:125
+msgid "Produce big endian code"
+msgstr "Produir codi big endian"
+
+#: config/rs6000/sysv4.h:126 config/rs6000/sysv4.h:127
+#: config/rs6000/sysv4.h:128 config/rs6000/sysv4.h:129
+#: config/rs6000/sysv4.h:130 config/rs6000/sysv4.h:131
+#: config/rs6000/sysv4.h:141 config/rs6000/sysv4.h:142
+#: config/rs6000/sysv4.h:153 config/rs6000/sysv4.h:155
+#: config/rs6000/sysv4.h:157
+msgid "no description yet"
+msgstr "sense descripció encara"
+
+#: config/rs6000/sysv4.h:132
+msgid "Use EABI"
+msgstr "Usar EABI"
+
+#: config/rs6000/sysv4.h:133
+msgid "Don't use EABI"
+msgstr "No usar EABI"
+
+#: config/rs6000/sysv4.h:136
+msgid "Do not allow bit-fields to cross word boundaries"
+msgstr "No permetre que els camps de bits creuin els límits de word"
+
+#: config/rs6000/sysv4.h:138
+msgid "Use alternate register names"
+msgstr "Usar noms de registre alternats"
+
+#: config/rs6000/sysv4.h:140
+msgid "Don't use alternate register names"
+msgstr "No usar noms de registre alternats"
+
+#: config/rs6000/sysv4.h:144
+msgid "Link with libsim.a, libc.a and sim-crt0.o"
+msgstr "Enllaçar amb libsim.a, libc.a i sim-crt0.o"
+
+#: config/rs6000/sysv4.h:146
+msgid "Link with libads.a, libc.a and crt0.o"
+msgstr "Enllaçar amb libads.a, libc.a i crt0.o"
+
+#: config/rs6000/sysv4.h:148
+msgid "Link with libyk.a, libc.a and crt0.o"
+msgstr "Enllaçar amb libyk.a, libc.a i crt0.o"
+
+#: config/rs6000/sysv4.h:150
+msgid "Link with libmvme.a, libc.a and crt0.o"
+msgstr "Enllaçar amb libmvme.a, libc.a i crt0.o"
+
+#: config/rs6000/sysv4.h:152
+msgid "Set the PPC_EMB bit in the ELF flags header"
+msgstr "Activar el bit PPC_EMB en els interruptors de l'encapçalat ELF"
+
+#: config/rs6000/sysv4.h:154
+msgid "Use the WindISS simulator"
+msgstr ""
+
+#. Sometimes certain combinations of command options do not make sense
+#. on a particular target machine. You can define a macro
+#. `OVERRIDE_OPTIONS' to take account of this. This macro, if
+#. defined, is executed once just after all the command options have
+#. been parsed.
+#.
+#. The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
+#. get control.
+#: config/rs6000/sysv4.h:214
+#, c-format
+msgid "bad value for -mcall-%s"
+msgstr "valor erroni per a -mcall-%s"
+
+#: config/rs6000/sysv4.h:230
+#, c-format
+msgid "bad value for -msdata=%s"
+msgstr "valor erroni per a -msdata=%s"
+
+#: config/rs6000/sysv4.h:247
+#, c-format
+msgid "-mrelocatable and -msdata=%s are incompatible"
+msgstr "-mrelocatable and i -msdata=%s són incompatibles"
+
+#: config/rs6000/sysv4.h:255
+#, c-format
+msgid "-f%s and -msdata=%s are incompatible"
+msgstr "-f%s i -msdata=%s són incompatibles"
+
+#: config/rs6000/sysv4.h:264
+#, c-format
+msgid "-msdata=%s and -mcall-%s are incompatible"
+msgstr "-msdata=%s i -mcall-%s són incompatibles"
+
+#: config/rs6000/sysv4.h:273
+msgid "-mrelocatable and -mno-minimal-toc are incompatible"
+msgstr "-mrelocatable i -mno-minimal-toc són incompatibles"
+
+#: config/rs6000/sysv4.h:279
+#, c-format
+msgid "-mrelocatable and -mcall-%s are incompatible"
+msgstr "-mrelocatable i -mcall-%s són incompatibles"
+
+#: config/rs6000/sysv4.h:286
+#, c-format
+msgid "-fPIC and -mcall-%s are incompatible"
+msgstr "-fPIC i -mcall-%s són incompatibles"
+
+#: config/rs6000/sysv4.h:293
+msgid "-mcall-aixdesc must be big endian"
+msgstr "-mcall-aixdesc deu ser big endian"
+
+#: config/s390/s390.c:3063
+msgid "invalid UNSPEC as operand (1)"
+msgstr "UNSPEC invàlid com operant (1)"
+
+#: config/s390/s390.c:3123
+msgid "invalid UNSPEC as operand (2)"
+msgstr "UNSPEC invàlid com operant (2)"
+
+#: config/s390/s390.c:3129
+msgid "UNKNOWN in s390_output_symbolic_const !?"
+msgstr "UNKNOWN en s390_output_symbolic_const !?"
+
+#: config/s390/s390.c:3147
+msgid "Cannot decompose address."
+msgstr "No es pot descompondre l'adreça."
+
+#: config/s390/s390.c:3308
+msgid "UNKNOWN in print_operand !?"
+msgstr "UNKNOWN en print_operand !?"
+
+#: config/s390/s390.c:4961
+msgid "Total size of local variables exceeds architecture limit."
+msgstr "La grandària total de les variables locals excedeix el límit de l'arquitectura."
+
+#: config/s390/s390.h:70
+msgid "Set backchain"
+msgstr "Establir la cadena cap a endarrere"
+
+#: config/s390/s390.h:71
+msgid "Don't set backchain (faster, but debug harder"
+msgstr "No establir la cadena cap a endarrere (més ràpid, però més difícil de depurar"
+
+#: config/s390/s390.h:72
+msgid "Use bras for executable < 64k"
+msgstr "Usar bras per a executable < 64k"
+
+#: config/s390/s390.h:73
+msgid "Don't use bras"
+msgstr "No usar bras"
+
+#: config/s390/s390.h:74
+msgid "Additional debug prints"
+msgstr "Impressions addicionals de depuració"
+
+#: config/s390/s390.h:75
+msgid "Don't print additional debug prints"
+msgstr "No imprimir impressions addicionals de depuració"
+
+#: config/s390/s390.h:76
+msgid "64 bit mode"
+msgstr "moda 64 bits"
+
+#: config/s390/s390.h:77
+msgid "31 bit mode"
+msgstr "moda 31 bits"
+
+#: config/s390/s390.h:78
+msgid "mvcle use"
+msgstr "ùs de mvcle"
+
+#: config/s390/s390.h:79
+msgid "mvc&ex"
+msgstr "mvc&ex"
+
+#: config/sh/sh.c:5137
+msgid "__builtin_saveregs not supported by this subtarget"
+msgstr "no es dóna suport a _builtin_saveregs en aquest subobjectiu"
+
+#: config/sh/sh.c:5687
+msgid "attribute interrupt_handler is not compatible with -m5-compact"
+msgstr ""
+
+#. The sp_switch attribute only has meaning for interrupt functions.
+#: config/sh/sh.c:5713 config/sh/sh.c:5752
+#, c-format
+msgid "`%s' attribute only applies to interrupt functions"
+msgstr "l'atribut \"%s\" aplica solament a funcions d'interrupció"
+
+#. The argument must be a constant string.
+#: config/sh/sh.c:5720
+#, c-format
+msgid "`%s' attribute argument not a string constant"
+msgstr "l'argument de l'atribut \"%s\" no és una cadena constant"
+
+#. The argument must be a constant integer.
+#: config/sh/sh.c:5759
+#, c-format
+msgid "`%s' attribute argument not an integer constant"
+msgstr "l'argument de l'atribut \"%s\" no és una cadena entera"
+
+#. There are no delay slots on SHmedia.
+#. Relaxation isn't yet supported for SHmedia
+#: config/sh/sh.h:437
+msgid "Profiling is not supported on this target."
+msgstr "No es dóna suport a anàlisi de perfil en aquest objectiu."
+
+#: config/sparc/sparc.c:329
+#, c-format
+msgid "%s is not supported by this configuration"
+msgstr "%s no té suport en aquesta configuració"
+
+#: config/sparc/sparc.c:336
+msgid "-mlong-double-64 not allowed with -m64"
+msgstr "no es permet -mlong-double-64 amb -m64"
+
+#: config/sparc/sparc.c:361
+msgid "-mcmodel= is not supported on 32 bit systems"
+msgstr "-mcmodel= no té suport en sistemes de 32 bit"
+
+#: config/sparc/sparc.c:6341 config/sparc/sparc.c:6347
+#, c-format
+msgid "invalid %%Y operand"
+msgstr "operant %%Y invàlid"
+
+#: config/sparc/sparc.c:6417
+#, c-format
+msgid "invalid %%A operand"
+msgstr "operant %%A invàlid"
+
+#: config/sparc/sparc.c:6427
+#, c-format
+msgid "invalid %%B operand"
+msgstr "operant %%B invàlid"
+
+#: config/sparc/sparc.c:6466
+#, c-format
+msgid "invalid %%c operand"
+msgstr "operant %%c invàlid"
+
+#: config/sparc/sparc.c:6467
+#, c-format
+msgid "invalid %%C operand"
+msgstr "operant %%C invàlid"
+
+#: config/sparc/sparc.c:6488
+#, c-format
+msgid "invalid %%d operand"
+msgstr "operant %%d invàlid"
+
+#: config/sparc/sparc.c:6489
+#, c-format
+msgid "invalid %%D operand"
+msgstr "operant %%D invàlid"
+
+#: config/sparc/sparc.c:6505
+#, c-format
+msgid "invalid %%f operand"
+msgstr "operant %%f invàlid"
+
+#: config/sparc/sparc.c:6519
+#, c-format
+msgid "invalid %%s operand"
+msgstr "operant %%s invàlid"
+
+#: config/sparc/sparc.c:6573
+msgid "long long constant not a valid immediate operand"
+msgstr "la constant long long no és un operant immediat vàlid"
+
+#: config/sparc/sparc.c:6576
+msgid "floating point constant not a valid immediate operand"
+msgstr "la constant de coma flotant no és un operant immediat vàlid"
+
+#: config/sparc/freebsd.h:81 config/sparc/linux.h:87 config/sparc/linux64.h:89
+#: config/sparc/netbsd-elf.h:239
+msgid "Use 128 bit long doubles"
+msgstr "Usar long doubles de 128 bits"
+
+#: config/sparc/sp64-elf.h:84 config/sparc/splet.h:29
+msgid "Generate code for big endian"
+msgstr "Generar codi per a big endian"
+
+#: config/sparc/sp64-elf.h:85 config/sparc/splet.h:30
+msgid "Generate code for little endian"
+msgstr "Generar codi per a little endian"
+
+#: config/sparc/sp86x-aout.h:51 config/sparc/sp86x-elf.h:65
+msgid "Use little-endian byte order for data"
+msgstr "Usar l'ordre d'octet little-endian per a les dades"
+
+#: config/sparc/sparc.h:532
+msgid "Assume possible double misalignment"
+msgstr "Assumir desalineació de double possible"
+
+#: config/sparc/sparc.h:534
+msgid "Assume all doubles are aligned"
+msgstr "Assumir que tots els doubles estan alineats"
+
+#: config/sparc/sparc.h:536
+msgid "Pass -assert pure-text to linker"
+msgstr "Passar el text pur de -assert al enllaçador"
+
+#: config/sparc/sparc.h:538
+msgid "Do not pass -assert pure-text to linker"
+msgstr "No passar el text pur de -assert al enllaçador"
+
+#: config/sparc/sparc.h:540
+msgid "Use flat register window model"
+msgstr "Usar el model pla de finestra de registre"
+
+#: config/sparc/sparc.h:542
+msgid "Do not use flat register window model"
+msgstr "No usar el model pla de finestra de registre"
+
+#: config/sparc/sparc.h:544
+msgid "Use ABI reserved registers"
+msgstr "Usar els registres ABI reservats"
+
+#: config/sparc/sparc.h:546
+msgid "Do not use ABI reserved registers"
+msgstr "No usar els registres ABI reservats"
+
+#: config/sparc/sparc.h:548
+msgid "Use hardware quad fp instructions"
+msgstr "Usar instruccions de fp quad de maquinari"
+
+#: config/sparc/sparc.h:550
+msgid "Do not use hardware quad fp instructions"
+msgstr "No usar instruccions de fp quad de maquinari"
+
+#: config/sparc/sparc.h:552
+msgid "Compile for v8plus ABI"
+msgstr "Compilar per a el ABI de v8plus"
+
+#: config/sparc/sparc.h:554
+msgid "Do not compile for v8plus ABI"
+msgstr "No compilar per a el ABI de v8plus"
+
+#: config/sparc/sparc.h:556
+msgid "Utilize Visual Instruction Set"
+msgstr "Utilitzar el Conjunt d'Instruccions Visuals"
+
+#: config/sparc/sparc.h:558
+msgid "Do not utilize Visual Instruction Set"
+msgstr "No utilitzar el Conjunt d'Instruccions Visuals"
+
+#. ??? These are deprecated, coerced to -mcpu=. Delete in 2.9.
+#: config/sparc/sparc.h:561
+msgid "Optimize for Cypress processors"
+msgstr "Optimitzar per als processadors Cypress"
+
+#: config/sparc/sparc.h:563
+msgid "Optimize for SPARCLite processors"
+msgstr "Optimitzar per als processadors SPARCLite"
+
+#: config/sparc/sparc.h:565
+msgid "Optimize for F930 processors"
+msgstr "Optimitzar per als processadors F930"
+
+#: config/sparc/sparc.h:567
+msgid "Optimize for F934 processors"
+msgstr "Optimitzar per als processadors F934"
+
+#: config/sparc/sparc.h:569
+msgid "Use V8 SPARC ISA"
+msgstr "Usar el ISA V8 de SPARC"
+
+#: config/sparc/sparc.h:571
+msgid "Optimize for SuperSPARC processors"
+msgstr "Optimitzar per als processadors SuperSPARC"
+
+#. End of deprecated options.
+#: config/sparc/sparc.h:574
+msgid "Pointers are 64-bit"
+msgstr "El punters són de 64 bits"
+
+#: config/sparc/sparc.h:576
+msgid "Pointers are 32-bit"
+msgstr "El punters són de 32 bits"
+
+#: config/sparc/sparc.h:578
+msgid "Use 32-bit ABI"
+msgstr "Usar el ABI 32 bits"
+
+#: config/sparc/sparc.h:580
+msgid "Use 64-bit ABI"
+msgstr "Usar el ABI 64 bits"
+
+#: config/sparc/sparc.h:582
+msgid "Use stack bias"
+msgstr "Usar tendència de la pila"
+
+#: config/sparc/sparc.h:584
+msgid "Do not use stack bias"
+msgstr "No usar tendència de la pila"
+
+#: config/sparc/sparc.h:586
+msgid "Use structs on stronger alignment for double-word copies"
+msgstr "Usar structs en alineació més forta per a còpies double-word"
+
+#: config/sparc/sparc.h:588
+msgid "Do not use structs on stronger alignment for double-word copies"
+msgstr "No usar structs en alineació més forta per a còpies double-word"
+
+#: config/sparc/sparc.h:590
+msgid "Optimize tail call instructions in assembler and linker"
+msgstr "Optimitzar les instruccions de la cridada de l'extrem en el ensemblador i el enllaçador"
+
+#: config/sparc/sparc.h:592
+msgid "Do not optimize tail call instructions in assembler or linker"
+msgstr "No optimitzar les instruccions de la cridada de l'extrem en el ensemblador i el enllaçador"
+
+#: config/sparc/sparc.h:637
+msgid "Use given SPARC code model"
+msgstr "Usar el model de codi del SPARC donat"
+
+#: config/stormy16/stormy16.c:1192
+msgid "cannot use va_start in interrupt function"
+msgstr "no es pot usar va_start en una funció d'interrupció"
+
+#: config/stormy16/stormy16.c:1552
+msgid "`B' operand is not constant"
+msgstr "l'operant \"B\" no és una constant"
+
+#: config/stormy16/stormy16.c:1558
+msgid "`B' operand has multiple bits set"
+msgstr "l'operant \"B\" té establerts múltiples bits"
+
+#: config/stormy16/stormy16.c:1585
+msgid "`o' operand is not constant"
+msgstr "l'operant \"o\" no és una constant"
+
+#: config/stormy16/stormy16.c:1600
+msgid "xstormy16_print_operand: unknown code"
+msgstr "xstormy16_print_operand: codi desconegut"
+
+#: config/stormy16/stormy16.c:1650
+#, c-format
+msgid "switch statement of size %lu entries too large"
+msgstr "la declaració switch de grandària de %lu entrades és massa gran"
+
+#: config/v850/v850-c.c:67
+msgid "#pragma GHS endXXXX found without previous startXXX"
+msgstr "es va trobar un #pragma GHS endXXXX sense un startXXX previ"
+
+#: config/v850/v850-c.c:69
+msgid "#pragma GHS endXXX does not match previous startXXX"
+msgstr "el #pragma GHS endXXXX no coincideix amb el startXXX previ"
+
+#: config/v850/v850-c.c:94
+msgid "cannot set interrupt attribute: no current function"
+msgstr "no es pot establir l'atribut d'interrupció: no hi ha funció actual"
+
+#: config/v850/v850-c.c:102
+msgid "cannot set interrupt attribute: no such identifier"
+msgstr "no es pot establir l'atribut d'interrupció: no hi ha tal identificador"
+
+#: config/v850/v850-c.c:148
+msgid "junk at end of #pragma ghs section"
+msgstr "escombraries al final de la secció #pragma ghs"
+
+#: config/v850/v850-c.c:165
+#, c-format
+msgid "unrecognized section name \"%s\""
+msgstr "no es reconeix el nom de secció \"%s\""
+
+#: config/v850/v850-c.c:180
+msgid "malformed #pragma ghs section"
+msgstr "secció #pragma ghs malformada"
+
+#: config/v850/v850-c.c:200
+msgid "junk at end of #pragma ghs interrupt"
+msgstr "escombraries al final del #pragma ghs interrupt"
+
+#: config/v850/v850-c.c:212
+msgid "junk at end of #pragma ghs starttda"
+msgstr "escombraries al final del #pragma ghs starttda"
+
+#: config/v850/v850-c.c:224
+msgid "junk at end of #pragma ghs startsda"
+msgstr "escombraries al final del #pragma ghs startsda"
+
+#: config/v850/v850-c.c:236
+msgid "junk at end of #pragma ghs startzda"
+msgstr "escombraries al final del #pragma ghs startzda"
+
+#: config/v850/v850-c.c:248
+msgid "junk at end of #pragma ghs endtda"
+msgstr "escombraries al final del #pragma ghs endtda"
+
+#: config/v850/v850-c.c:260
+msgid "junk at end of #pragma ghs endsda"
+msgstr "escombraries al final del #pragma ghs endsda"
+
+#: config/v850/v850-c.c:272
+msgid "junk at end of #pragma ghs endzda"
+msgstr "escombraries al final del #pragma ghs endzda"
+
+#: config/v850/v850.c:129
+#, c-format
+msgid "%s=%s is not numeric"
+msgstr "%s=%s no és numèric"
+
+#: config/v850/v850.c:136
+#, c-format
+msgid "%s=%s is too large"
+msgstr "%s=%s é massa gran"
+
+#: config/v850/v850.c:302
+msgid "const_double_split got a bad insn:"
+msgstr "const_double_split va rebre un insn erroni:"
+
+#: config/v850/v850.c:837
+msgid "output_move_single:"
+msgstr "output_move_single:"
+
+#: config/v850/v850.c:2217
+msgid "a data area attribute cannot be specified for local variables"
+msgstr "no es pot especificar un atribut d'àrea de dades per a variables locals"
+
+#: config/v850/v850.c:2228
+#, c-format
+msgid "data area of '%s' conflicts with previous declaration"
+msgstr "l'àrea de dades de \"%s\" en conflicte amb una declaració prèvia"
+
+#: config/v850/v850.c:2447
+#, c-format
+msgid "bogus JR construction: %d\n"
+msgstr "construcció JR ambigua: %d\n"
+
+#: config/v850/v850.c:2468 config/v850/v850.c:2670
+#, c-format
+msgid "bad amount of stack space removal: %d"
+msgstr "quantitat errònia d'eliminació d'espai de pila: %d"
+
+#: config/v850/v850.c:2646
+#, c-format
+msgid "bogus JARL construction: %d\n"
+msgstr "construcció JARL ambigua: %d\n"
+
+#: config/v850/v850.c:3026
+#, c-format
+msgid "Bogus DISPOSE construction: %d\n"
+msgstr "construcció DISPOSE ambigua: %d\n"
+
+#: config/v850/v850.c:3048
+#, c-format
+msgid "Too much stack space to dispose of: %d"
+msgstr ""
+
+#: config/v850/v850.c:3224
+#, c-format
+msgid "Bogus PREPEARE construction: %d\n"
+msgstr "construcció PREPEARE ambigua: %d\n"
+
+#: config/v850/v850.c:3246
+#, c-format
+msgid "Too much stack space to prepare: %d"
+msgstr "Massa espai de pila per a preparar: %d"
+
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/v850/v850.h:158
+msgid "Support Green Hills ABI"
+msgstr "Dona suport al ABI Green Hills"
+
+#: config/v850/v850.h:161
+msgid "Prohibit PC relative function calls"
+msgstr "Prohibir la cridada a funcions relatives al PC"
+
+#: config/v850/v850.h:164
+msgid "Reuse r30 on a per function basis"
+msgstr "Reusar r30 basat per funció"
+
+#: config/v850/v850.h:167
+msgid "Use stubs for function prologues"
+msgstr "Usar caps per als pròlegs de funció"
+
+#: config/v850/v850.h:170
+msgid "Same as: -mep -mprolog-function"
+msgstr "Igual que: -mep -mprolog-function"
+
+#: config/v850/v850.h:171
+msgid "Enable backend debugging"
+msgstr "Habilitar la depuració per la fi"
+
+#: config/v850/v850.h:173
+msgid "Compile for the v850 processor"
+msgstr "Compilar per al processador v850"
+
+#: config/v850/v850.h:175
+msgid "Compile for v850e processor"
+msgstr "Compilar per al processador v850e"
+
+#. Make sure that the other bits are cleared.
+#: config/v850/v850.h:177
+msgid "Enable the use of the short load instructions"
+msgstr "Activar l'ús de les instruccions short load"
+
+#: config/v850/v850.h:180
+msgid "Do not use the callt instruction"
+msgstr "No usar la instrucció callt"
+
+#: config/v850/v850.h:187
+msgid "Do not use registers r2 and r5"
+msgstr "No usar els registres r2 i r5"
+
+#: config/v850/v850.h:189
+msgid "Enforce strict alignment"
+msgstr "Reforçar l'alineació estricta"
+
+#: config/v850/v850.h:192
+msgid "Use 4 byte entries in switch tables"
+msgstr "Usar entrades de 4 octet en les matrius de switch"
+
+#: config/v850/v850.h:218
+msgid "Set the max size of data eligible for the TDA area"
+msgstr "Establir la grandària màxima de dades elegibles per a l'àrea TDA"
+
+#: config/v850/v850.h:221
+msgid "Set the max size of data eligible for the SDA area"
+msgstr "Establir la grandària màxima de dades elegibles per a l'àrea SDA"
+
+#: config/v850/v850.h:224
+msgid "Set the max size of data eligible for the ZDA area"
+msgstr "Establir la grandària màxima de dades elegibles per a l'àrea ZDA"
+
+#: config/xtensa/xtensa.c:1062 config/xtensa/xtensa.c:1096
+#: config/xtensa/xtensa.c:1105
+msgid "bad test"
+msgstr "prova errònia"
+
+#: config/xtensa/xtensa.c:1824
+msgid "boolean registers required for the floating-point option"
+msgstr "es requereixen registres booleans per a l'opció de coma flotant"
+
+#: config/xtensa/xtensa.c:1991
+msgid "invalid mask"
+msgstr "màscara invàlida"
+
+#: config/xtensa/xtensa.c:2038
+msgid "invalid address"
+msgstr "adreça invàlida"
+
+#: config/xtensa/xtensa.c:2063
+msgid "no register in address"
+msgstr "no hi ha registre en l'adreça"
+
+#: config/xtensa/xtensa.c:2071
+msgid "address offset not a constant"
+msgstr "el desplaçament d'adreça no és una constant"
+
+#: config/xtensa/xtensa.c:2794
+msgid "only uninitialized variables can be placed in a .bss section"
+msgstr "només les variables sense inicialitzar es poden col·locar en una secció .bss"
+
+#: config/xtensa/xtensa.h:114
+msgid "Use the Xtensa code density option"
+msgstr "Usar l'opció de densitat del codi Xtensa"
+
+#: config/xtensa/xtensa.h:116
+msgid "Do not use the Xtensa code density option"
+msgstr "No usar l'opció de densitat del codi Xtensa"
+
+#: config/xtensa/xtensa.h:118
+msgid "Use the Xtensa MAC16 option"
+msgstr "Usar l'opció MAC16 de Xtensa"
+
+#: config/xtensa/xtensa.h:120
+msgid "Do not use the Xtensa MAC16 option"
+msgstr "No usar l'opció MAC16 de Xtensa"
+
+#: config/xtensa/xtensa.h:122
+msgid "Use the Xtensa MUL16 option"
+msgstr "Usar l'opció MUL16 de Xtensa"
+
+#: config/xtensa/xtensa.h:124
+msgid "Do not use the Xtensa MUL16 option"
+msgstr "No usar l'opció MUL16 de Xtensa"
+
+#: config/xtensa/xtensa.h:126
+msgid "Use the Xtensa MUL32 option"
+msgstr "Usar l'opció MUL32 de Xtensa"
+
+#: config/xtensa/xtensa.h:128
+msgid "Do not use the Xtensa MUL32 option"
+msgstr "No usar l'opció MUL32 de Xtensa"
+
+#. undocumented
+#. undocumented
+#: config/xtensa/xtensa.h:134
+msgid "Use the Xtensa NSA option"
+msgstr "Usar l'opció NSA de Xtensa"
+
+#: config/xtensa/xtensa.h:136
+msgid "Do not use the Xtensa NSA option"
+msgstr "No usar l'opció NSA de Xtensa"
+
+#: config/xtensa/xtensa.h:138
+msgid "Use the Xtensa MIN/MAX option"
+msgstr "Usar l'opció MIN/MAX de Xtensa"
+
+#: config/xtensa/xtensa.h:140
+msgid "Do not use the Xtensa MIN/MAX option"
+msgstr "No usar l'opció MIN/MAX de Xtensa"
+
+#: config/xtensa/xtensa.h:142
+msgid "Use the Xtensa SEXT option"
+msgstr "Usar l'opció SEXT de Xtensa"
+
+#: config/xtensa/xtensa.h:144
+msgid "Do not use the Xtensa SEXT option"
+msgstr "No usar l'opció SEXT de Xtensa"
+
+#: config/xtensa/xtensa.h:146
+msgid "Use the Xtensa boolean register option"
+msgstr "Usar l'opció de registre booleà de Xtensa"
+
+#: config/xtensa/xtensa.h:148
+msgid "Do not use the Xtensa boolean register option"
+msgstr "No usar l'opció de registre booleà de Xtensa"
+
+#: config/xtensa/xtensa.h:150
+msgid "Use the Xtensa floating-point unit"
+msgstr "Usar la unitat de coma flotant de Xtensa"
+
+#: config/xtensa/xtensa.h:152
+msgid "Do not use the Xtensa floating-point unit"
+msgstr "No usar la unitat de coma flotant de Xtensa"
+
+#. undocumented
+#. undocumented
+#. undocumented
+#. undocumented
+#. undocumented
+#. undocumented
+#. undocumented
+#. undocumented
+#: config/xtensa/xtensa.h:170
+msgid "Disable fused multiply/add and multiply/subtract FP instructions"
+msgstr "Desactivar les instruccions FP multiply/add i multiply/substract de curt circuit"
+
+#: config/xtensa/xtensa.h:172
+msgid "Enable fused multiply/add and multiply/subtract FP instructions"
+msgstr "Activar les instruccions FP multiply/add i multiply/substract de curt circuit"
+
+#: config/xtensa/xtensa.h:174
+msgid "Serialize volatile memory references with MEMW instructions"
+msgstr "Serialitzar les referències a memòria volàtil amb instruccions MEMW"
+
+#: config/xtensa/xtensa.h:176
+msgid "Do not serialize volatile memory references with MEMW instructions"
+msgstr "No serialitzar les referències a memòria volàtil amb instruccions MEMW"
+
+#: config/xtensa/xtensa.h:178
+msgid "Intersperse literal pools with code in the text section"
+msgstr "Entremesclar els conjunts de literals amb codi en la secció de text"
+
+#: config/xtensa/xtensa.h:180
+msgid "Put literal pools in a separate literal section"
+msgstr "Posar els conjunts de literals en una secció literal separada"
+
+#: config/xtensa/xtensa.h:182
+msgid "Automatically align branch targets to reduce branch penalties"
+msgstr "Alinear automàticament els objectius de les ramificacions per a reduir les faltes de ramificació"
+
+#: config/xtensa/xtensa.h:184
+msgid "Do not automatically align branch targets"
+msgstr "No alinear automàticament els objectius de les ramificacions"
+
+#: config/xtensa/xtensa.h:186
+msgid "Use indirect CALLXn instructions for large programs"
+msgstr "Usar instruccions CALLXn indirectes per a programes grans"
+
+#: config/xtensa/xtensa.h:188
+msgid "Use direct CALLn instructions for fast calls"
+msgstr "Usar instruccions CALLn directes per a cridades ràpides"
+
+#: ada/misc.c:233
+msgid "`-gnat' misspelled as `-gant'"
+msgstr "\"-gnat\" mal lletrejat com \"-gant\""
+
+#: cp/call.c:261 cp/init.c:1594
+msgid "qualified type `%T' does not match destructor name `~%T'"
+msgstr "el tipus qualificat \"%T\" no coincideix amb el nom del destructor \"~%T\""
+
+#: cp/call.c:270
+msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
+msgstr "el tipus de \"%E\" no coincideix amb el tipus del destructor \"%T\" (el tipus era \"%T\")"
+
+#: cp/call.c:279
+msgid "`%D' is a namespace"
+msgstr "\"%D\" és un nom d'espai"
+
+#: cp/call.c:287
+msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
+msgstr "l'objecte base \"%E\" de la cridada de mètode de l'ambient és del tipus no agregat \"%T\""
+
+#: cp/call.c:369
+msgid "unable to call pointer to member function here"
+msgstr "no es pot cridar un punter a una funció membre aquí"
+
+#: cp/call.c:518
+msgid "destructors take no parameters"
+msgstr "els destructors no prenen paràmetres"
+
+#: cp/call.c:522
+msgid "destructor name `~%T' does not match type `%T' of expression"
+msgstr "el nom del destructor \"%T\" no coincideix amb el tipus \"%T\" de l'expressió"
+
+#: cp/call.c:543 cp/call.c:5000
+msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
+msgstr "sol·licitud pel membre \"%D\" en \"%E\" el qual és del tipus no agregat \"%T\""
+
+#: cp/call.c:567
+msgid "request for member `%D' is ambiguous"
+msgstr "a petició per al membre \"%D\" és ambigua"
+
+#: cp/call.c:2537
+msgid "%s %D(%T, %T, %T) <built-in>"
+msgstr "%s %D(%T, %T, %T) <intern>"
+
+#: cp/call.c:2542
+msgid "%s %D(%T, %T) <built-in>"
+msgstr "%s %D(%T, %T) <intern>"
+
+#: cp/call.c:2546
+msgid "%s %D(%T) <built-in>"
+msgstr "%s %D(%T) <intern>"
+
+#: cp/call.c:2550
+msgid "%s %T <conversion>"
+msgstr "%s %T <conversió>"
+
+#: cp/call.c:2552
+msgid "%s %+#D%s"
+msgstr "%s %+#D%s"
+
+#: cp/call.c:2726
+msgid "conversion from `%T' to `%T' is ambiguous"
+msgstr "la conversió de \"%T\" a \"%T\" és ambigua"
+
+#: cp/call.c:2803
+msgid "`%T' is not a class type"
+msgstr "\"%T\" no és un tipus de classe"
+
+#: cp/call.c:2811
+msgid "incomplete type '%T' cannot be used to name a scope"
+msgstr "el tipus incomplet \"%T\" no es pot utilitzar per a nomenar un àmbit"
+
+#: cp/call.c:2831 cp/typeck.c:2188 cp/typeck.c:2217
+msgid "'%D' has no member named '%E'"
+msgstr "\"%D\" no té un membre cridat \"%E\""
+
+#: cp/call.c:2933
+msgid "no matching function for call to `%D(%A)'"
+msgstr "no hi ha una funció coincident per a la cridada a \"%D(%A)\""
+
+#: cp/call.c:2944 cp/call.c:5087
+msgid "call of overloaded `%D(%A)' is ambiguous"
+msgstr "la cridada del \"%D(%A)\" sobrecarregat és ambigua"
+
+#. It's no good looking for an overloaded operator() on a
+#. pointer-to-member-function.
+#: cp/call.c:2971
+#, c-format
+msgid "pointer-to-member function %E cannot be called without an object; consider using .* or ->*"
+msgstr "la funció punter-a-membre %E no es pot cridar dintre d'un objecte; consideri utilitzar .* o ->*"
+
+#: cp/call.c:3036
+msgid "no match for call to `(%T) (%A)'"
+msgstr "no hi ha coincidència per a la cridada a \"(%T) (%A)\""
+
+#: cp/call.c:3046
+msgid "call of `(%T) (%A)' is ambiguous"
+msgstr "la cridada de \"(%T) (%A)\" és ambigua"
+
+#: cp/call.c:3081
+#, c-format
+msgid "%s for ternary 'operator?:' in '%E ? %E : %E'"
+msgstr ""
+
+#: cp/call.c:3087
+#, c-format
+msgid "%s for 'operator%s' in '%E%s'"
+msgstr "%s per a \"operator%s\" en \"%E%s\""
+
+#: cp/call.c:3091
+#, c-format
+msgid "%s for 'operator[]' in '%E[%E]'"
+msgstr ""
+
+#: cp/call.c:3096
+#, c-format
+msgid "%s for 'operator%s' in '%E %s %E'"
+msgstr ""
+
+#: cp/call.c:3099
+#, c-format
+msgid "%s for 'operator%s' in '%s%E'"
+msgstr "%s per a \"operador%s\" en \"%s%E\""
+
+#: cp/call.c:3191
+msgid "ISO C++ forbids omitting the middle term of a ?: expression"
+msgstr "ISO C++ prohibeix l'omissió del terme mig d'una expressió ?:"
+
+#: cp/call.c:3250
+#, c-format
+msgid "`%E' has type `void' and is not a throw-expression"
+msgstr "\"%E\" té tipus \"void\" i no és una expressió throw"
+
+#: cp/call.c:3283 cp/call.c:3475
+msgid "operands to ?: have different types"
+msgstr "els operants de ?: tenen tipus diferents"
+
+#: cp/call.c:3428
+msgid "enumeral mismatch in conditional expression: `%T' vs `%T'"
+msgstr "no coincideix el enumeral en l'expressió condicional: \"%T\" vs \"%T\""
+
+#: cp/call.c:3435
+msgid "enumeral and non-enumeral type in conditional expression"
+msgstr "tipus enumeral i no enumeral en l'expressió condicional"
+
+#: cp/call.c:3516
+msgid "`%D' must be declared before use"
+msgstr "es deu declarar \"%D\" abans del seu ús"
+
+#: cp/call.c:3706
+msgid "no `%D(int)' declared for postfix `%s', trying prefix operator instead"
+msgstr "no es va declarar \"%D(int)\" per al \"%s\" postfix, intentant en el seu lloc l'operador prefix"
+
+#: cp/call.c:3753
+msgid "using synthesized `%#D' for copy assignment"
+msgstr "usant \"%#D\" sintetitzat per a assignació de còpia"
+
+#: cp/call.c:3755
+msgid " where cfront would use `%#D'"
+msgstr " on cfront podria usar \"%#D\""
+
+#: cp/call.c:3782
+msgid "comparison between `%#T' and `%#T'"
+msgstr "comparança entre \"%#T\" i \"%#T\""
+
+#: cp/call.c:4021
+msgid "no suitable `operator delete' for `%T'"
+msgstr "no hi ha un operador \"operator delete\" adequat per a \"%T\""
+
+#: cp/call.c:4040
+msgid "`%+#D' is private"
+msgstr "\"%+#D\" és privat"
+
+#: cp/call.c:4042
+msgid "`%+#D' is protected"
+msgstr "\"%+#D\" està protegit"
+
+#: cp/call.c:4044
+msgid "`%+#D' is inaccessible"
+msgstr "\"%+#D\" és inaccessible"
+
+#: cp/call.c:4045
+msgid "within this context"
+msgstr "des d'aquest context"
+
+#: cp/call.c:4088
+msgid "invalid conversion from `%T' to `%T'"
+msgstr "conversió invàlida de \"%T\" a \"%T\""
+
+#: cp/call.c:4090 cp/call.c:4229 cp/call.c:4231
+msgid " initializing argument %P of `%D'"
+msgstr " inicialitzant l'argument %P de \"%D\""
+
+#: cp/call.c:4152 cp/call.c:4156
+msgid " initializing argument %P of `%D' from result of `%D'"
+msgstr " inicialitzant l'argument %P de \"%D\" a partir del resultat de \"%D\""
+
+#: cp/call.c:4162 cp/call.c:4165
+msgid " initializing temporary from result of `%D'"
+msgstr " inicialitzant el temporal a partir del resultat de \"%D\""
+
+#. Undefined behavior [expr.call] 5.2.2/7. We used to just warn
+#. here and do a bitwise copy, but now cp_expr_size will abort if we
+#. try to do that.
+#: cp/call.c:4316
+msgid "cannot pass objects of non-POD type `%#T' through `...'; call will abort at runtime"
+msgstr "no es pot passar objectes de tipus \"%#T\" que no és POD a través de \"...\"; la cridada avortarà en temps d'execució"
+
+#. Undefined behavior [expr.call] 5.2.2/7.
+#: cp/call.c:4343
+msgid "cannot receive objects of non-POD type `%#T' through `...'"
+msgstr "no es pot rebre objectes de tipus \"%#T\" que no és POD a través de \"...\""
+
+#: cp/call.c:4523
+msgid "passing `%T' as `this' argument of `%#D' discards qualifiers"
+msgstr "passar \"%T\" com l'argument \"this\" de \"%#D\" descarta als qualificadors"
+
+#: cp/call.c:4542
+msgid "`%T' is not an accessible base of `%T'"
+msgstr "\"%T\" no és una base inaccessible de \"%T\""
+
+#: cp/call.c:4786
+msgid "could not find class$ field in java interface type `%T'"
+msgstr "no es va poder trobar un camp class$ en el tipus d'interfície java \"%T\""
+
+#: cp/call.c:4974
+msgid "call to non-function `%D'"
+msgstr "cridada a \"%D\" que no és funció"
+
+#: cp/call.c:5076
+msgid "no matching function for call to `%T::%D(%A)%#V'"
+msgstr "no es troba una funció coincident per a la cridada a \"%T::%D(%A)%#V\""
+
+#: cp/call.c:5106
+msgid "cannot call member function `%D' without object"
+msgstr "no es pot cridar a la funció membre \"%D\" sense un objecte"
+
+#: cp/call.c:5704
+msgid "passing `%T' chooses `%T' over `%T'"
+msgstr "passar \"%T\" escull \"%T\" sobre \"%T\""
+
+#: cp/call.c:5706 cp/decl2.c:4154
+msgid " in call to `%D'"
+msgstr " en la cridada a \"%D\""
+
+#: cp/call.c:5755
+msgid "choosing `%D' over `%D'"
+msgstr "escollint \"%D\" sobre \"%D\""
+
+#: cp/call.c:5756
+msgid " for conversion from `%T' to `%T'"
+msgstr " per a la conversió de \"%T\" a \"%T\""
+
+#: cp/call.c:5758
+msgid " because conversion sequence for the argument is better"
+msgstr " perquè la seqüència de conversió per a l'argument és millor"
+
+#: cp/call.c:5879
+msgid "ISO C++ says that `%D' and `%D' are ambiguous even though the worst conversion for the former is better than the worst conversion for the latter"
+msgstr ""
+
+#: cp/call.c:5996
+msgid "could not convert `%E' to `%T'"
+msgstr "no es pot convertir \"%E\" a \"%T\""
+
+#: cp/call.c:6105
+msgid "invalid initialization of non-const reference of type '%T' from a temporary of type '%T'"
+msgstr "const_cast invàlid d'un rvalue de tipus \"%T\" al tipus \"%T\""
+
+#: cp/call.c:6109
+msgid "invalid initialization of reference of type '%T' from expression of type '%T'"
+msgstr "initialització invàlida de reference de tipus \"%T\" a partir d'una expressió de tipus \"%T\""
+
+#: cp/class.c:287
+msgid "cannot convert from base `%T' to derived type `%T' via virtual base `%T'"
+msgstr "no es pot convertir de la base \"%T\" al tipus derivat \"%T\" a través de la base virtual \"%T\""
+
+#: cp/class.c:992
+msgid "`%#D' and `%#D' cannot be overloaded"
+msgstr "no es poden sobrecarregar \"%#D\" i \"%#D\""
+
+#: cp/class.c:1076
+msgid "duplicate enum value `%D'"
+msgstr "valor enum duplicat \"%D\""
+
+#: cp/class.c:1079
+msgid "duplicate field `%D' (as enum and non-enum)"
+msgstr "camp duplicat \"%D\" (com enum i non-enum)"
+
+#: cp/class.c:1086
+msgid "duplicate nested type `%D'"
+msgstr "tipus niat duplicat \"%D\""
+
+#: cp/class.c:1097
+msgid "duplicate field `%D' (as type and non-type)"
+msgstr "camp duplicat \"%D\" (com tipus i no tipus)"
+
+#: cp/class.c:1101
+msgid "duplicate member `%D'"
+msgstr "membre duplicat \"%D\""
+
+#: cp/class.c:1144
+msgid "conflicting access specifications for method `%D', ignored"
+msgstr "especificacions d'accés en conflicte per al mètode \"%D\", ignorat"
+
+#: cp/class.c:1146
+#, c-format
+msgid "conflicting access specifications for field `%s', ignored"
+msgstr "especificacions d'accés en conflicte per al camp \"%s\", ignorat"
+
+#: cp/class.c:1194
+msgid "`%D' names constructor"
+msgstr "\"%D\" nomena al constructor"
+
+#: cp/class.c:1199
+msgid "`%D' invalid in `%T'"
+msgstr "\"%D\" invàlid en \"%#T\""
+
+#: cp/class.c:1207
+msgid "no members matching `%D' in `%#T'"
+msgstr "no hi ha membres que coincideixin amb \"%D\" en \"%#T\""
+
+#: cp/class.c:1239 cp/class.c:1247
+msgid "`%D' invalid in `%#T'"
+msgstr "\"%D\" invàlid en \"%#T\""
+
+#: cp/class.c:1240
+msgid " because of local method `%#D' with same name"
+msgstr " a causa del mètode local \"%D\" amb el mateix nom"
+
+#: cp/class.c:1248
+msgid " because of local member `%#D' with same name"
+msgstr " a causa del membre local \"%D\" amb el mateix nom"
+
+#: cp/class.c:1320
+msgid "base class `%#T' has a non-virtual destructor"
+msgstr "la classe base \"%#T\" té un destructor no virtual"
+
+#: cp/class.c:1340
+msgid "base `%T' with only non-default constructor in class without a constructor"
+msgstr "base \"%#T\" amb només un constructor que no és per omissió en una classe sense un constructor"
+
+#: cp/class.c:1912
+msgid "all member functions in class `%T' are private"
+msgstr "tots les funcions membres en la classe \"%#T\" són privades"
+
+#: cp/class.c:1926
+msgid "`%#T' only defines a private destructor and has no friends"
+msgstr "\"%#T\" solament defineix un destructor privat i no té friends"
+
+#: cp/class.c:1969
+msgid "`%#T' only defines private constructors and has no friends"
+msgstr "\"%#T\" solament defineix constructors privats i no té friends"
+
+#: cp/class.c:2090 cp/class.c:5276
+msgid "redefinition of `%#T'"
+msgstr "redefinició de \"%#T\""
+
+#: cp/class.c:2091
+msgid "previous definition of `%#T'"
+msgstr "definició prèvia de \"%#T\""
+
+#: cp/class.c:2365
+msgid "no unique final overrider for `%D' in `%T'"
+msgstr "no hi ha un eixafador únic final per a \"%D\" en \"%#T\""
+
+#. Here we know it is a hider, and no overrider exists.
+#: cp/class.c:2712
+msgid "`%D' was hidden"
+msgstr "\"%D\" estava amagat"
+
+#: cp/class.c:2713
+msgid " by `%D'"
+msgstr " per \"%D\""
+
+#: cp/class.c:2755
+msgid "ISO C++ forbids member `%D' with same name as enclosing class"
+msgstr "ISO C++ prohibeix que el membre \"%D\" tingui el mateix nom que la classe que ho conté"
+
+#: cp/class.c:2760 cp/decl2.c:1331
+msgid "`%#D' invalid; an anonymous union can only have non-static data members"
+msgstr "\"%D\" invàlid; un union anònim només pot tenir membres amb dades no estàtiques"
+
+#: cp/class.c:2766 cp/decl2.c:1337
+msgid "private member `%#D' in anonymous union"
+msgstr "membre privat \"%D\" en union anònima"
+
+#: cp/class.c:2769 cp/decl2.c:1339
+msgid "protected member `%#D' in anonymous union"
+msgstr "membre protegit \"%D\" en union anònima"
+
+#: cp/class.c:2894
+msgid "vtable layout for class `%T' may not be ABI-compliant and may change in a future version of GCC due to implicit virtual destructor"
+msgstr ""
+
+#: cp/class.c:2958
+msgid "bit-field `%#D' with non-integral type"
+msgstr "camp de bits \"%D\" amb tipus no enter"
+
+#: cp/class.c:2978
+msgid "bit-field `%D' width not an integer constant"
+msgstr "l'amplària del camp de bits \"%D\" no és una constant entera"
+
+#: cp/class.c:2984
+msgid "negative width in bit-field `%D'"
+msgstr "amplària negativa en el camp de bit \"%D\""
+
+#: cp/class.c:2989
+msgid "zero width for bit-field `%D'"
+msgstr "amplària zero per al camp de bits \"%D\""
+
+#: cp/class.c:2995
+msgid "width of `%D' exceeds its type"
+msgstr "l'amplària de \"%D\" excedeix el seu tipus"
+
+#: cp/class.c:3004
+msgid "`%D' is too small to hold all values of `%#T'"
+msgstr "\"%D\" és massa petit per a guardar tots els valors de \"%#T\""
+
+#: cp/class.c:3088
+msgid "member `%#D' with constructor not allowed in union"
+msgstr "no es permet el membre \"%D\" amb constructor en la union"
+
+#: cp/class.c:3091
+msgid "member `%#D' with destructor not allowed in union"
+msgstr "no es permet el membre \"%D\" amb destructor en la union"
+
+#: cp/class.c:3094
+msgid "member `%#D' with copy assignment operator not allowed in union"
+msgstr "no es permet el membre \"%D\" amb operador d'assignació de còpia en la union"
+
+#: cp/class.c:3121
+msgid "multiple fields in union `%T' initialized"
+msgstr "múltiples camps inicialitzats en la unió \"%#T\""
+
+#: cp/class.c:3234
+msgid "field `%D' in local class cannot be static"
+msgstr "el camp \"%D\" en la classe local no pot ser static"
+
+#: cp/class.c:3240
+msgid "field `%D' invalidly declared function type"
+msgstr "el camp \"%D\" és declarat invàlidament com un tipus de funció"
+
+#: cp/class.c:3247
+msgid "field `%D' invalidly declared method type"
+msgstr "el camp \"%D\" és declarat invàlidament com un tipus de mètode"
+
+#: cp/class.c:3253
+msgid "field `%D' invalidly declared offset type"
+msgstr "el camp \"%D\" és declarat invàlidament com un tipus de desplaçament"
+
+#. Unions cannot have static members.
+#: cp/class.c:3271
+msgid "field `%D' declared static in union"
+msgstr "el camp \"%D\" és declarat com static en la unió"
+
+#: cp/class.c:3298
+msgid "non-static reference `%#D' in class without a constructor"
+msgstr "referència \"%D\" que no és static en una classe sense un constructor"
+
+#: cp/class.c:3333
+msgid "non-static const member `%#D' in class without a constructor"
+msgstr "membre const \"%D\" que no és static en una classe sense un constructor"
+
+#: cp/class.c:3349
+msgid "field `%#D' with same name as class"
+msgstr "camp \"%D\" amb el mateix nom que la classe"
+
+#: cp/class.c:3367
+msgid "`%#T' has pointer data members"
+msgstr "\"%#T\" té membres punters a dades"
+
+#: cp/class.c:3371
+msgid " but does not override `%T(const %T&)'"
+msgstr " però no s'imposa a \"%T(const %T&)\""
+
+#: cp/class.c:3373
+msgid " or `operator=(const %T&)'"
+msgstr " o a \"operator=(cont %T&)\""
+
+#: cp/class.c:3376
+msgid " but does not override `operator=(const %T&)'"
+msgstr " però no s'imposa a \"operator=(const %T&)\""
+
+#: cp/class.c:3826
+msgid "offset of empty base `%T' may not be ABI-compliant and maychange in a future version of GCC"
+msgstr ""
+
+#: cp/class.c:3935
+msgid "class `%T' will be considered nearly empty in a future version of GCC"
+msgstr ""
+
+#: cp/class.c:4025
+msgid "initializer specified for non-virtual method `%D'"
+msgstr "es va especificar un inicialitzador per al mètode no virtual \"%D\""
+
+#: cp/class.c:4761
+msgid "offset of virtual base `%T' is not ABI-compliant and may change in a future version of GCC"
+msgstr ""
+
+#: cp/class.c:4861
+msgid "direct base `%T' inaccessible in `%T' due to ambiguity"
+msgstr "base directa \"%T\" inaccessible en \"%T\" a causa de ambigüitat"
+
+#: cp/class.c:4874
+msgid "virtual base `%T' inaccessible in `%T' due to ambiguity"
+msgstr "base virtual \"%T\" inaccessible en \"%T\" a causa de ambigüitat"
+
+#: cp/class.c:5030
+msgid "size assigned to `%T' may not be ABI-compliant and may change in a future version of GCC"
+msgstr ""
+
+#. Versions of G++ before G++ 3.4 did not reset the
+#. DECL_MODE.
+#: cp/class.c:5053
+msgid "the offset of `%D' may not be ABI-compliant and may change in a future version of GCC"
+msgstr ""
+
+#: cp/class.c:5079
+msgid "offset of `%D' is not ABI-compliant and may change in a future version of GCC"
+msgstr ""
+
+#: cp/class.c:5088
+msgid "`%D' contains empty classes which may cause base classes to be placed at different locations in a future version of GCC"
+msgstr ""
+
+#: cp/class.c:5147
+msgid "layout of classes derived from empty class `%T' may change in a future version of GCC"
+msgstr ""
+
+#: cp/class.c:5432
+msgid "`%#T' has virtual functions but non-virtual destructor"
+msgstr "\"%#T\" té funcions virtuals però destructors no virtuals"
+
+#: cp/class.c:5516
+msgid "trying to finish struct, but kicked out due to previous parse errors"
+msgstr "es va tractar d'acabar struct, però va ser tret a causa de errors previs de decodificació"
+
+#: cp/class.c:5982
+#, c-format
+msgid "language string `\"%s\"' not recognized"
+msgstr "cadena de llenguatge \"\"%s\"\" no reconeguda"
+
+#: cp/class.c:6078
+msgid "cannot resolve overloaded function `%D' based on conversion to type `%T'"
+msgstr "no es pot resoldre la funció sobrecarregada \"%D\" basant-se en la conversió al tipus \"%T\""
+
+#: cp/class.c:6203
+msgid "no matches converting function `%D' to type `%#T'"
+msgstr "no hi ha coincidències al convertir la funció \"%D\" al tipus \"%#T\""
+
+#: cp/class.c:6226
+msgid "converting overloaded function `%D' to type `%#T' is ambiguous"
+msgstr "la conversió de la funció sobrecarregada \"%D\" al tipus \"%#T\" és ambigua"
+
+#: cp/class.c:6252
+msgid "assuming pointer to member `%D'"
+msgstr "assumint el punter a membre \"%D\""
+
+#: cp/class.c:6255
+#, c-format
+msgid "(a pointer to member can only be formed with `&%E')"
+msgstr "(un punter a membre solament es pot formar amb \"&%E\")"
+
+#: cp/class.c:6306 cp/class.c:6477 cp/class.c:6484
+msgid "not enough type information"
+msgstr "no hi ha suficient informació de tipus"
+
+#: cp/class.c:6315
+msgid "argument of type `%T' does not match `%T'"
+msgstr "l'argument de tipus \"%T\" no coincideix amb \"%T\""
+
+#: cp/class.c:6461
+msgid "invalid operation on uninstantiated type"
+msgstr "operació invàlida en tipus no instanciat"
+
+#. [basic.scope.class]
+#.
+#. A name N used in a class S shall refer to the same declaration
+#. in its context and when re-evaluated in the completed scope of
+#. S.
+#: cp/class.c:6745 cp/decl.c:1254 cp/decl.c:3379 cp/pt.c:2004
+msgid "declaration of `%#D'"
+msgstr "la declaració de \"%#D\""
+
+#: cp/class.c:6746
+msgid "changes meaning of `%D' from `%+#D'"
+msgstr "canvia el significat de \"%D\" a partir de \"%+#D\""
+
+#: cp/cvt.c:88
+msgid "can't convert from incomplete type `%T' to `%T'"
+msgstr "no es pot convertir des del tipus de dada incompleta \"%T\" a \"%T\""
+
+#: cp/cvt.c:97
+msgid "conversion of `%E' from `%T' to `%T' is ambiguous"
+msgstr "la conversió de \"%E\" des de \"%T\" a \"%T\" és ambigua"
+
+#: cp/cvt.c:126
+msgid "converting from `%T' to `%T'"
+msgstr "convertint de \"%T\" a \"%T\""
+
+#: cp/cvt.c:203 cp/cvt.c:207
+msgid "pointer to member cast from `%T' to `%T' is via virtual base"
+msgstr "el punter a la conversió de membre de \"%T\" a \"%T\" és a través d'una base virtual"
+
+#: cp/cvt.c:225 cp/cvt.c:236 cp/cvt.c:283
+msgid "cannot convert `%E' from type `%T' to type `%T'"
+msgstr "no es pot convertir \"%E\" des del tipus \"%T\" al tipus \"%T\""
+
+#: cp/cvt.c:262
+msgid "invalid conversion from '%T' to '%T'"
+msgstr "conversió invàlida de \"%T\" a \"%T\""
+
+#: cp/cvt.c:504
+msgid "conversion from `%T' to `%T' discards qualifiers"
+msgstr "la conversió de \"%T\" a \"%T\" descarta els qualificadors"
+
+#: cp/cvt.c:522
+msgid "casting `%T' to `%T' does not dereference pointer"
+msgstr "la conversió de \"%T\" a \"%T\" no dereferencia els punters"
+
+#: cp/cvt.c:551
+msgid "cannot convert type `%T' to type `%T'"
+msgstr "no es pot convertir del tipus \"%T\" al tipus \"%T\""
+
+#: cp/cvt.c:683
+msgid "conversion from `%#T' to `%#T'"
+msgstr "conversió de \"%#T\" a \"%#T\""
+
+#: cp/cvt.c:695
+msgid "`%#T' used where a `%T' was expected"
+msgstr "es va usar un \"%#T\" on s'esperava un \"%T\""
+
+#: cp/cvt.c:712
+msgid "the address of `%D', will always be `true'"
+msgstr "l'adreça de \"%D\", sempre serà \"true\""
+
+#: cp/cvt.c:732
+msgid "`%#T' used where a floating point value was expected"
+msgstr "es va usar un \"%#T\" on s'esperava un valor de coma flotant"
+
+#: cp/cvt.c:779
+msgid "conversion from `%T' to non-scalar type `%T' requested"
+msgstr "es va sol·licitar la conversió des de \"%T\" al tipus no escalar \"%T\""
+
+#: cp/cvt.c:865
+msgid "object of incomplete type `%T' will not be accessed in %s"
+msgstr "l'objecte de tipus incomplet \"%T\" no es accesará en %s"
+
+#: cp/cvt.c:868
+msgid "object of type `%T' will not be accessed in %s"
+msgstr "l'objecte de tipus \"%T\" no es accesará en %s"
+
+#: cp/cvt.c:884
+msgid "object `%E' of incomplete type `%T' will not be accessed in %s"
+msgstr "l'objecte \"%E\" de tipus incomplet \"%T\" no es accesará en %s"
+
+#. [over.over] enumerates the places where we can take the address
+#. of an overloaded function, and this is not one of them.
+#: cp/cvt.c:904
+#, c-format
+msgid "%s cannot resolve address of overloaded function"
+msgstr "%s no es pot resoldre l'adreça de la funció sobrecarregada"
+
+#. Only warn when there is no &.
+#: cp/cvt.c:909
+#, c-format
+msgid "%s is a reference, not call, to function `%E'"
+msgstr "%s és una referència, no una cridada, a la funció \"%E\""
+
+#: cp/cvt.c:1039
+msgid "converting NULL to non-pointer type"
+msgstr "convertint NULL a un tipus que no és apuntador"
+
+#: cp/cvt.c:1115
+msgid "ambiguous default type conversion from `%T'"
+msgstr "conversió de tipus per omissió ambigua des de \"%T\""
+
+#: cp/cvt.c:1117
+msgid " candidate conversions include `%D' and `%D'"
+msgstr " les conversions candidates inclouen \"%D\" i \"%D\""
+
+#: cp/decl.c:736
+#, c-format
+msgid "push %s level %p line %d\n"
+msgstr ""
+
+#: cp/decl.c:770
+#, c-format
+msgid "pop %s level %p line %d\n"
+msgstr ""
+
+#: cp/decl.c:776 cp/decl.c:814
+msgid "XXX is_class_level != (current_binding_level == class_binding_level)\n"
+msgstr ""
+
+#: cp/decl.c:808
+#, c-format
+msgid "suspend %s level %p line %d\n"
+msgstr ""
+
+#: cp/decl.c:837
+#, c-format
+msgid "resume %s level %p line %d\n"
+msgstr ""
+
+#: cp/decl.c:1255 cp/decl.c:3490
+msgid "conflicts with previous declaration `%#D'"
+msgstr "causa conflictes amb la declaració prèvia \"%#D\""
+
+#: cp/decl.c:1467
+msgid "label `%D' used but not defined"
+msgstr "s'usa l'etiqueta \"%D\" però no està definida"
+
+#: cp/decl.c:1472
+msgid "label `%D' defined but not used"
+msgstr "s'usa l'etiqueta \"%D\" però no està definida"
+
+#: cp/decl.c:2489
+msgid "namespace alias `%D' not allowed here, assuming `%D'"
+msgstr "no es permet aquí l'alies de l'espai de noms \"%D\", assumint que és \"%D\""
+
+#: cp/decl.c:2825
+msgid "XXX entering pop_everything ()\n"
+msgstr ""
+
+#: cp/decl.c:2834
+msgid "XXX leaving pop_everything ()\n"
+msgstr ""
+
+#: cp/decl.c:3285 cp/decl.c:3700
+msgid "previous declaration of `%D'"
+msgstr "declaració prèvia de \"%D\""
+
+#: cp/decl.c:3366 cp/decl.c:3404
+msgid "shadowing %s function `%#D'"
+msgstr "enfosquint la funció de biblioteca \"%#D\""
+
+#: cp/decl.c:3375
+msgid "library function `%#D' redeclared as non-function `%#D'"
+msgstr "la funció de biblioteca \"%#D\" és redeclarada com \"%#D\" que no és funció"
+
+#: cp/decl.c:3380
+msgid "conflicts with built-in declaration `%#D'"
+msgstr "causa conflicte amb la declaració interna \"%#D\""
+
+#: cp/decl.c:3399 cp/decl.c:3504 cp/decl.c:3520
+msgid "new declaration `%#D'"
+msgstr "declaració nova \"%#D\""
+
+#: cp/decl.c:3400
+msgid "ambiguates built-in declaration `%#D'"
+msgstr "fa ambigua la declaració interna \"%#D\""
+
+#: cp/decl.c:3464
+msgid "`%#D' redeclared as different kind of symbol"
+msgstr "\"%#D\" redeclarat com un tipus diferent de símbol"
+
+#: cp/decl.c:3467
+msgid "previous declaration of `%#D'"
+msgstr "declaració prèvia de \"%#D\""
+
+#: cp/decl.c:3489
+msgid "declaration of template `%#D'"
+msgstr "declaració del patró \"%#D\""
+
+#: cp/decl.c:3505 cp/decl.c:3521
+msgid "ambiguates old declaration `%#D'"
+msgstr "fa ambigua la declaració antiga \"%#D\""
+
+#: cp/decl.c:3513
+msgid "declaration of C function `%#D' conflicts with"
+msgstr "la declaració de la funció C \"%#D\" té conflictes amb"
+
+#: cp/decl.c:3515
+msgid "previous declaration `%#D' here"
+msgstr "declaració prèvia de \"%#D\" aquí"
+
+#: cp/decl.c:3533
+msgid "conflicting types for `%#D'"
+msgstr "tipus en conflicte per a \"%#D\""
+
+#: cp/decl.c:3534
+msgid "previous declaration as `%#D'"
+msgstr "declaració prèvia com \"%#D\""
+
+#: cp/decl.c:3577
+msgid "`%#D' previously defined here"
+msgstr "es va definir \"%#D\" prèviament aquí"
+
+#: cp/decl.c:3578
+msgid "`%#D' previously declared here"
+msgstr "es va declarar \"%#D\" prèviament aquí"
+
+#. Prototype decl follows defn w/o prototype.
+#: cp/decl.c:3587
+msgid "prototype for `%#D'"
+msgstr "el prototip per a \"%#D\""
+
+#: cp/decl.c:3588
+msgid "follows non-prototype definition here"
+msgstr "a continuació la definició del no prototip aquí"
+
+#: cp/decl.c:3600
+msgid "previous declaration of `%#D' with %L linkage"
+msgstr "declaració prèvia de \"%#D\" amb l'enllaç %L"
+
+#: cp/decl.c:3602
+msgid "conflicts with new declaration with %L linkage"
+msgstr "té conflictes amb la declaració nova amb l'enllaç %L"
+
+#: cp/decl.c:3625 cp/decl.c:3632
+msgid "default argument given for parameter %d of `%#D'"
+msgstr "argument per omissió donat per al paràmetre %d de \"%#D\""
+
+#: cp/decl.c:3627 cp/decl.c:3634
+msgid "after previous specification in `%#D'"
+msgstr "després de l'especificació prèvia en \"%#D\""
+
+#: cp/decl.c:3643
+msgid "`%#D' was used before it was declared inline"
+msgstr "es va usar \"%#D\" abans que fora declarat inline"
+
+#: cp/decl.c:3645
+msgid "previous non-inline declaration here"
+msgstr "declaració prèvia no inline aquí"
+
+#: cp/decl.c:3699
+msgid "redundant redeclaration of `%D' in same scope"
+msgstr "declaració redundant de \"%D\" en el mateix àmbit"
+
+#: cp/decl.c:3780
+#, c-format
+msgid "declaration of `%F' throws different exceptions"
+msgstr "la declaració de \"%F\" llança excepcions diferents"
+
+#: cp/decl.c:3782
+#, c-format
+msgid "than previous declaration `%F'"
+msgstr "que la declaració prèvia \"%F\""
+
+#. From [temp.expl.spec]:
+#.
+#. If a template, a member template or the member of a class
+#. template is explicitly specialized then that
+#. specialization shall be declared before the first use of
+#. that specialization that would cause an implicit
+#. instantiation to take place, in every translation unit in
+#. which such a use occurs.
+#: cp/decl.c:3922
+msgid "explicit specialization of %D after first use"
+msgstr "especialització explícita de %D després del primer ús"
+
+#: cp/decl.c:4187
+msgid "`%#D' used prior to declaration"
+msgstr "s'usa \"%#D\" previ a la declaració"
+
+#: cp/decl.c:4218
+msgid "redeclaration of `wchar_t' as `%T'"
+msgstr "redeclaración de \"wchar_t\" com \"%T\""
+
+#. A redeclaration of main, but not a duplicate of the
+#. previous one.
+#.
+#. [basic.start.main]
+#.
+#. This function shall not be overloaded.
+#: cp/decl.c:4246
+msgid "invalid redeclaration of `%D'"
+msgstr "redeclaración invàlida de \"%D\""
+
+#: cp/decl.c:4247
+msgid "as `%D'"
+msgstr "com \"%D\""
+
+#: cp/decl.c:4337
+msgid "previous external decl of `%#D'"
+msgstr "declaració externa prèvia de \"%#D\""
+
+#: cp/decl.c:4378
+msgid "`%D' was previously implicitly declared to return `int'"
+msgstr "\"%D\" va ser declarat prèvia i implícitament per a retornar \"int\""
+
+#: cp/decl.c:4438
+msgid "extern declaration of `%#D' doesn't match"
+msgstr "la declaració externa de \"%#D\" no coincideix"
+
+#: cp/decl.c:4439
+msgid "global declaration `%#D'"
+msgstr "amb la declaració global \"%#D\""
+
+#: cp/decl.c:4472
+msgid "declaration of `%#D' shadows a parameter"
+msgstr "la declaració de \"%#D\" enfosqueix un paràmetre"
+
+#: cp/decl.c:4492
+#, c-format
+msgid "declaration of `%s' shadows a member of `this'"
+msgstr "la declaració de \"%s\" obscurece a un membre de \"this\""
+
+#: cp/decl.c:4889
+msgid "`%#D' hides constructor for `%#T'"
+msgstr "\"%#D\" amaga el destructor per a \"%#T\""
+
+#: cp/decl.c:4904
+msgid "`%#D' conflicts with previous using declaration `%#D'"
+msgstr "\"%#D\" causa conflicte amb la declaració prèvia en ús \"%#D\""
+
+#: cp/decl.c:4916
+msgid "previous non-function declaration `%#D'"
+msgstr "la declaració prèvia \"%#D\" que no és funció"
+
+#: cp/decl.c:4917
+msgid "conflicts with function declaration `%#D'"
+msgstr "causa conflicte amb la declaració de la funció \"%#D\""
+
+#: cp/decl.c:5007
+msgid "implicit declaration of function `%#D'"
+msgstr "declaració implícita de la funció \"%#D\""
+
+#: cp/decl.c:5167
+#, c-format
+msgid "label `%s' referenced outside of any function"
+msgstr "l'etiqueta \"%s\" es va referenciar fora de qualsevol funció"
+
+#: cp/decl.c:5270 cp/decl.c:5294 cp/decl.c:5387
+msgid "jump to label `%D'"
+msgstr "salt a l'etiqueta \"%D\""
+
+#: cp/decl.c:5272 cp/decl.c:5296
+msgid "jump to case label"
+msgstr "salt a l'etiqueta case"
+
+#: cp/decl.c:5280
+msgid " crosses initialization of `%#D'"
+msgstr " creua la inicialització de \"%#D\""
+
+#: cp/decl.c:5283 cp/decl.c:5403
+msgid " enters scope of non-POD `%#D'"
+msgstr " entra en l'àmbit de \"%#D\" que no és POD"
+
+#: cp/decl.c:5303 cp/decl.c:5407
+msgid " enters try block"
+msgstr " entra intent de bloc"
+
+#. Can't skip init of __exception_info.
+#: cp/decl.c:5305 cp/decl.c:5399 cp/decl.c:5409
+msgid " enters catch block"
+msgstr " entra captura de bloc"
+
+#: cp/decl.c:5388
+msgid " from here"
+msgstr " des d'aquí"
+
+#: cp/decl.c:5401
+msgid " skips initialization of `%#D'"
+msgstr " salta la inicialización de \"%#D\""
+
+#: cp/decl.c:5437
+msgid "label named wchar_t"
+msgstr "etiqueta nomenada wchar_t"
+
+#: cp/decl.c:5440
+msgid "duplicate label `%D'"
+msgstr "etiqueta duplicada \"%D\""
+
+#: cp/decl.c:5525
+#, c-format
+msgid "case label `%E' not within a switch statement"
+msgstr "l'etiqueta casi \"%E\" no es troba dintre d'una declaració switch"
+
+#. Definition isn't the kind we were looking for.
+#: cp/decl.c:5704 cp/decl.c:5723
+msgid "`%#D' redeclared as %C"
+msgstr "\"%#D\" redeclarat com %C"
+
+#. This happens for A::B where B is a template, and there are no
+#. template arguments.
+#: cp/decl.c:5811 cp/typeck.c:2069 cp/typeck.c:2229
+msgid "invalid use of `%D'"
+msgstr "ús invàlid de \"%D\""
+
+#: cp/decl.c:5852
+msgid "`%D::%D' is not a template"
+msgstr "\"%D::%D\" no és un patró"
+
+#: cp/decl.c:5869
+msgid "`%D' undeclared in namespace `%D'"
+msgstr "\"%D\" no declarat en l'espai de noms \"%D\""
+
+#: cp/decl.c:6002
+msgid "`%D' used without template parameters"
+msgstr "s'usa \"%D\" sense paràmetres de patró"
+
+#: cp/decl.c:6013 cp/decl.c:6029 cp/decl.c:6139
+msgid "no class template named `%#T' in `%#T'"
+msgstr "no hi ha una patró de classe cridada \"%#T\" en \"%#T\""
+
+#: cp/decl.c:6055 cp/decl.c:6065 cp/decl.c:6100
+msgid "no type named `%#T' in `%#T'"
+msgstr "no hi ha un tipus cridat \"%#T\" en \"%#T\""
+
+#: cp/decl.c:6329
+msgid "lookup of `%D' finds `%#D'"
+msgstr "la recerca de \"%D\" troba a \"%#D\""
+
+#: cp/decl.c:6331
+msgid " instead of `%D' from dependent base class"
+msgstr " en lloc de \"%D\" de la classe base depenent"
+
+#: cp/decl.c:6333
+msgid " (use `typename %T::%D' if that's what you meant)"
+msgstr " (usi \"typename %T::%D\" si això és el que volia)"
+
+#: cp/decl.c:6364
+msgid "name lookup of `%D' changed"
+msgstr "la recerca de nom de \"%D\" va cambiar"
+
+#: cp/decl.c:6366
+msgid " matches this `%D' under ISO standard rules"
+msgstr ""
+
+#: cp/decl.c:6368
+msgid " matches this `%D' under old rules"
+msgstr ""
+
+#: cp/decl.c:6382 cp/decl.c:6389
+msgid "name lookup of `%D' changed for new ISO `for' scoping"
+msgstr ""
+
+#: cp/decl.c:6384
+msgid " cannot use obsolete binding at `%D' because it has a destructor"
+msgstr ""
+
+#: cp/decl.c:6391
+msgid " using obsolete binding at `%D'"
+msgstr ""
+
+#: cp/decl.c:6609
+msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
+msgstr "la recerca de \"%D\" en l'àmbit de \"%#T\" (\"%#D\") no coincideix amb la recerca en l'àmbit actual (\"%#D\")"
+
+#: cp/decl.c:7432
+msgid "an anonymous union cannot have function members"
+msgstr "un union anònim no pot tenir funcions membre"
+
+#: cp/decl.c:7449
+msgid "member %#D' with constructor not allowed in anonymous aggregate"
+msgstr "no es permet el membre \"%#D\" amb constructor en un agregat anònim"
+
+#: cp/decl.c:7452
+msgid "member %#D' with destructor not allowed in anonymous aggregate"
+msgstr "no es permet el membre \"%#D\" amb destructor en un agregat anònim"
+
+#: cp/decl.c:7455
+msgid "member %#D' with copy assignment operator not allowed in anonymous aggregate"
+msgstr "no es permet el membre \"%#D\" amb operador d'assignació de còpia en un agregat anònim"
+
+#: cp/decl.c:7493
+msgid "redeclaration of C++ built-in type `%T'"
+msgstr "redeclaración del tipus intern de C++ \"%T\""
+
+#: cp/decl.c:7529
+msgid "multiple types in one declaration"
+msgstr "tipus múltiples en una declaració"
+
+#: cp/decl.c:7556
+msgid "missing type-name in typedef-declaration"
+msgstr "falta el nom del tipus en la declaració typedef"
+
+#: cp/decl.c:7563
+msgid "ISO C++ prohibits anonymous structs"
+msgstr "ISO C++ prohibeix structs anònims"
+
+#: cp/decl.c:7570
+msgid "`%D' can only be specified for functions"
+msgstr "\"%D\" només pot ser especificat per a funcions"
+
+#: cp/decl.c:7572
+msgid "`%D' can only be specified inside a class"
+msgstr "\"%D\" només pot ser especificat dintre d'una classe"
+
+#: cp/decl.c:7574
+msgid "`%D' can only be specified for constructors"
+msgstr "\"%D\" només pot ser especificat per a constructors"
+
+#: cp/decl.c:7577
+msgid "`%D' can only be specified for objects and functions"
+msgstr "\"%D\" només pot ser especificat per a objectes i funcions"
+
+#: cp/decl.c:7719 cp/decl2.c:936
+msgid "typedef `%D' is initialized (use __typeof__ instead)"
+msgstr "typedef \"%D\" està inicialitzat (utilitzi __typeof__ en el seu lloc)"
+
+#: cp/decl.c:7724
+msgid "function `%#D' is initialized like a variable"
+msgstr "la funció \"%#D\" està inicialitzada com una variable"
+
+#: cp/decl.c:7736
+msgid "declaration of `%#D' has `extern' and is initialized"
+msgstr "la declaració de \"%#D\" té \"extern\" i està inicialitzada"
+
+#: cp/decl.c:7770
+msgid "`%#D' is not a static member of `%#T'"
+msgstr "\"%#D\" no és un membre static de \"%#T\""
+
+#: cp/decl.c:7775
+msgid "ISO C++ does not permit `%T::%D' to be defined as `%T::%D'"
+msgstr "ISO C++ no permet que \"%T::%D\" es defineixi com \"%T::%D\""
+
+#: cp/decl.c:7786
+msgid "duplicate initialization of %D"
+msgstr "inicialització duplicada de %D"
+
+#: cp/decl.c:7815
+msgid "declaration of `%#D' outside of class is not definition"
+msgstr "la declaració de \"%#D\" fora de la classe no és una definició"
+
+#: cp/decl.c:7865
+msgid "variable `%#D' has initializer but incomplete type"
+msgstr "la variable \"%#D\" té inicializador però de tipus de dada incompleta"
+
+#: cp/decl.c:7873 cp/decl.c:8432
+msgid "elements of array `%#D' have incomplete type"
+msgstr "alguns elements de la matriu \"%#D\" tenen tipus de dada incompleta"
+
+#: cp/decl.c:7889
+msgid "aggregate `%#D' has incomplete type and cannot be defined"
+msgstr "l'agregat \"%#D\" té un tipus incomplet i no es pot definir"
+
+#: cp/decl.c:7931
+msgid "`%D' declared as reference but not initialized"
+msgstr "\"%D\" declarat com referència però no està inicialitzat"
+
+#: cp/decl.c:7940
+msgid "ISO C++ forbids use of initializer list to initialize reference `%D'"
+msgstr "ISO C++ prohibeix l'ús d'una llista de inicialitzadors per a inicialitzar la referència \"%D\""
+
+#: cp/decl.c:7970
+msgid "cannot initialize `%T' from `%T'"
+msgstr "no es pot inicialitzar \"%T\" des de \"%T\""
+
+#: cp/decl.c:8004
+msgid "initializer fails to determine size of `%D'"
+msgstr "el inicializador no pot determinar la grandària de \"%D\""
+
+#: cp/decl.c:8009
+msgid "array size missing in `%D'"
+msgstr "falta la grandària de la matriu en \"%D\""
+
+#: cp/decl.c:8021
+msgid "zero-size array `%D'"
+msgstr "matriu \"%D\" de grandària zero"
+
+#. An automatic variable with an incomplete type: that is an error.
+#. Don't talk about array types here, since we took care of that
+#. message in grokdeclarator.
+#: cp/decl.c:8059
+msgid "storage size of `%D' isn't known"
+msgstr "no es coneix la grandària d'emmagatzematge de \"%D\""
+
+#: cp/decl.c:8081
+msgid "storage size of `%D' isn't constant"
+msgstr "la grandària d'emmagatzematge de \"%D\" no és constant"
+
+#: cp/decl.c:8137
+msgid "sorry: semantics of inline function static data `%#D' are wrong (you'll wind up with multiple copies)"
+msgstr "perdó: la semàntica de les dades static de la funció inline \"%#D\" és errònia (acabarà amb múltiples còpies)"
+
+#: cp/decl.c:8138
+msgid " you can work around this by removing the initializer"
+msgstr " pot evitar això eliminant el inicializador"
+
+#: cp/decl.c:8164
+msgid "uninitialized const `%D'"
+msgstr "const \"%D\" sense inicialitzar"
+
+#: cp/decl.c:8249
+msgid "brace-enclosed initializer used to initialize `%T'"
+msgstr "es va utilitzar un inicialitzador entre parèntesis per a inicialitzar \"%T\""
+
+#: cp/decl.c:8313
+msgid "initializer for `%T' must be brace-enclosed"
+msgstr "el inicialitzador per a \"%T\" deu estar tancat entre parèntesis"
+
+#: cp/decl.c:8328
+msgid "ISO C++ does not allow designated initializers"
+msgstr "ISO C++ no permet inicialitzadors designats"
+
+#: cp/decl.c:8332
+msgid "`%T' has no non-static data member named `%D'"
+msgstr "\"%T\" té una dada membre que no és non-static cridada \"%D\""
+
+#: cp/decl.c:8389
+msgid "too many initializers for `%T'"
+msgstr "massa inicialitzadors per a \"%T\""
+
+#: cp/decl.c:8426
+msgid "variable-sized object `%D' may not be initialized"
+msgstr "l'objecte de grandària variable \"%D\" no pot ser inicialitzat"
+
+#: cp/decl.c:8437
+msgid "`%D' has incomplete type"
+msgstr "\"%D\" té un tipus de dada incompleta"
+
+#: cp/decl.c:8486
+msgid "`%D' must be initialized by constructor, not by `{...}'"
+msgstr "\"%D\" deu ser inicialitzat per un constructor, no per \"{...}\""
+
+#: cp/decl.c:8527
+msgid "structure `%D' with uninitialized const members"
+msgstr "estructura \"%D\" amb membres const sense inicialitzar"
+
+#: cp/decl.c:8529
+msgid "structure `%D' with uninitialized reference members"
+msgstr "estructura \"%D\" amb membres de referència sense inicialitzar"
+
+#: cp/decl.c:8770
+msgid "assignment (not initialization) in declaration"
+msgstr "assignació (no inicialització) en la declaració"
+
+#: cp/decl.c:8785
+msgid "cannot initialize `%D' to namespace `%D'"
+msgstr "no es poden inicialitzar \"%D\" per a l'espai de noms \"%D\""
+
+#: cp/decl.c:8836
+msgid "shadowing previous type declaration of `%#D'"
+msgstr "enfosquint la declaració de tipus prèvia de \"%#D\""
+
+#: cp/decl.c:8883
+msgid "`%D' cannot be thread-local because it has non-POD type `%T'"
+msgstr "\"%D\" no pot ser thread-local perquè és de tipus \"%T\" que no és POD"
+
+#: cp/decl.c:8898
+msgid "`%D' is thread-local and so cannot be dynamically initialized"
+msgstr "\"%D\" és thread-local i per tant no es pot inicialitzar dinàmicament"
+
+#: cp/decl.c:9298 cp/init.c:562
+msgid "multiple initializations given for `%D'"
+msgstr "es van donar inicialitzacions múltiples per a \"%D\""
+
+#: cp/decl.c:9390
+msgid "invalid catch parameter"
+msgstr "paràmetre de captura invàlid"
+
+#: cp/decl.c:9508
+msgid "destructor for alien class `%T' cannot be a member"
+msgstr "el destructor per a la classe estrangera \"%T\" no pot ser un membre"
+
+#: cp/decl.c:9511
+msgid "constructor for alien class `%T' cannot be a member"
+msgstr "el constructor per a la classe estrangera \"%T\" no pot ser un membre"
+
+#: cp/decl.c:9530
+msgid "`%D' declared as a `virtual' %s"
+msgstr "\"%D\" va ser declarat com un %s \"virtual\""
+
+#: cp/decl.c:9532
+msgid "`%D' declared as an `inline' %s"
+msgstr "\"%D\" va ser declarat com un %s \"inline\""
+
+#: cp/decl.c:9534
+msgid "`const' and `volatile' function specifiers on `%D' invalid in %s declaration"
+msgstr "especificadors de funció \"const\" i \"volatile\" en \"%D\" invàlids en la declaració %s"
+
+#: cp/decl.c:9537
+msgid "`%D' declared as a friend"
+msgstr "\"%D\" declarat com un friend"
+
+#: cp/decl.c:9543
+msgid "`%D' declared with an exception specification"
+msgstr "\"%D\" declarat amb una excepció d'especificació"
+
+#: cp/decl.c:9618
+msgid "cannot declare `::main' to be a template"
+msgstr "no es pot declarar \"::main\" com template"
+
+#: cp/decl.c:9620
+msgid "cannot declare `::main' to be inline"
+msgstr "no es pot declarar \"::main\" com inline"
+
+#: cp/decl.c:9622
+msgid "cannot declare `::main' to be static"
+msgstr "no es pot declarar \"::main\" com static"
+
+#: cp/decl.c:9625
+msgid "`main' must return `int'"
+msgstr "\"main\" deu retornar \"int\""
+
+#: cp/decl.c:9653
+msgid "non-local function `%#D' uses anonymous type"
+msgstr "la funció \"%#D\" que no és local usa un tipus anònim"
+
+#: cp/decl.c:9656
+msgid "`%#D' does not refer to the unqualified type, so it is not used for linkage"
+msgstr "\"%#D\" no es refereix al tipus sense qualificar, així que no s'usa per a l'enllaçat"
+
+#: cp/decl.c:9662
+msgid "non-local function `%#D' uses local type `%T'"
+msgstr "la funció \"%#D\" que no és local utilitza el tipus local \"%T\""
+
+#: cp/decl.c:9691
+msgid "%smember function `%D' cannot have `%T' method qualifier"
+msgstr "%sfunció membre \"%D\" no pot tenir el qualificador de mètode \"%T\""
+
+#: cp/decl.c:9715
+msgid "defining explicit specialization `%D' in friend declaration"
+msgstr "definint l'especialització explícita \"%D\" en la declaració friend"
+
+#. Something like `template <class T> friend void f<T>()'.
+#: cp/decl.c:9725
+msgid "invalid use of template-id `%D' in declaration of primary template"
+msgstr "ús invàlid de l'aneu de patró \"%D\" en la declaració del patró primàri"
+
+#: cp/decl.c:9753
+msgid "default arguments are not allowed in declaration of friend template specialization `%D'"
+msgstr "no es permeten els argument per omissió en la declaració de l'especialització friend del patró \"%D\""
+
+#: cp/decl.c:9760
+msgid "`inline' is not allowed in declaration of friend template specialization `%D'"
+msgstr "no es permet \"inline\" en la declaració de l'especialització friend del patró \"%D\""
+
+#: cp/decl.c:9822
+msgid "definition of implicitly-declared `%D'"
+msgstr "la definició de \"%D\" declarat implícitament"
+
+#: cp/decl.c:9834 cp/decl2.c:785
+msgid "no `%#D' member function declared in class `%T'"
+msgstr "no hi ha una funció membre \"%#D\" declarada en la classe \"%T\""
+
+#: cp/decl.c:9967
+msgid "non-local variable `%#D' uses local type `%T'"
+msgstr ""
+
+#: cp/decl.c:10064
+msgid "invalid in-class initialization of static data member of non-integral type `%T'"
+msgstr ""
+
+#: cp/decl.c:10073
+msgid "ISO C++ forbids in-class initialization of non-const static member `%D'"
+msgstr "ISO C++ prohibeix la inicialización en la classe del membre static \"%D\" que no és constant"
+
+#: cp/decl.c:10076
+msgid "ISO C++ forbids initialization of member constant `%D' of non-integral type `%T'"
+msgstr "ISO C++ prohibeix la inicialització del membre constant \"%D\" del tipus \"%T\" que no és enter"
+
+#: cp/decl.c:10126
+msgid "size of array `%D' has non-integer type"
+msgstr "la grandària de la matriu \"%D\" té un tipus no enter"
+
+#: cp/decl.c:10128
+msgid "size of array has non-integer type"
+msgstr "la grandària de la matriu té un tipus no enter"
+
+#: cp/decl.c:10148
+msgid "size of array `%D' is negative"
+msgstr "la grandària de la matriu \"%D\" és negatiu"
+
+#: cp/decl.c:10150
+msgid "size of array is negative"
+msgstr "la grandària de la matriu és negatiu"
+
+#: cp/decl.c:10159
+msgid "ISO C++ forbids zero-size array `%D'"
+msgstr "ISO C++ prohibeix la matriu \"%D\" de grandària zero"
+
+#: cp/decl.c:10161
+msgid "ISO C++ forbids zero-size array"
+msgstr "ISO C++ prohibeix la matriu de grandària zero"
+
+#: cp/decl.c:10168
+msgid "size of array `%D' is not an integral constant-expression"
+msgstr "la grandària de la matriu \"%D\" no és una expressió constant integral"
+
+#: cp/decl.c:10171
+msgid "size of array is not an integral constant-expression"
+msgstr "la grandària de la matriu no és una expressió constant integral"
+
+#: cp/decl.c:10189
+msgid "ISO C++ forbids variable-size array `%D'"
+msgstr "ISO C++ prohibeix la matriu \"%D\" de grandària variable"
+
+#: cp/decl.c:10192
+msgid "ISO C++ forbids variable-size array"
+msgstr "ISO C++ prohibeix la matriu de grandària variable"
+
+#: cp/decl.c:10203
+msgid "overflow in array dimension"
+msgstr "desbordament en la dimensió de la matriu"
+
+#: cp/decl.c:10262
+msgid "declaration of `%D' as %s"
+msgstr "declaración de \"%D\" com %s"
+
+#: cp/decl.c:10264
+#, c-format
+msgid "creating %s"
+msgstr "creant %s"
+
+#: cp/decl.c:10276
+msgid "declaration of `%D' as multidimensional array must have bounds for all dimensions except the first"
+msgstr "la declaració de \"%D\" com una matriu multidimensional deu tenir límits per a totes les dimensions excepte la primera"
+
+#: cp/decl.c:10279
+msgid "multidimensional array must have bounds for all dimensions except the first"
+msgstr "una matriu multidimensional deu tenir límits per a totes les dimensions excepte per a la primera"
+
+#: cp/decl.c:10308
+msgid "return type specification for constructor invalid"
+msgstr "l'especificació del tipus de retorn per al constructor és invàlid"
+
+#: cp/decl.c:10315
+msgid "return type specification for destructor invalid"
+msgstr "l'especificació del tipus de retorn per al destructor és invàlid"
+
+#: cp/decl.c:10321
+msgid "operator `%T' declared to return `%T'"
+msgstr "l'operador \"%T\" es va declarar per a retornar \"%T\""
+
+#: cp/decl.c:10323
+msgid "return type specified for `operator %T'"
+msgstr "es va especificar un tipus de retorn per a \"operator %T\""
+
+#: cp/decl.c:10491
+msgid "destructors must be member functions"
+msgstr "els destructors deuen ser funcions membre"
+
+#: cp/decl.c:10510
+msgid "destructor `%T' must match class name `%T'"
+msgstr "el destructor \"%T\" deu coincidir amb el nom de la classe \"%T\""
+
+#: cp/decl.c:10539
+msgid "variable declaration is not allowed here"
+msgstr ""
+
+#: cp/decl.c:10566
+msgid "invalid declarator"
+msgstr "declarador invàlid"
+
+#: cp/decl.c:10617
+msgid "declarator-id missing; using reserved word `%D'"
+msgstr "falta l'identificador del declarador; utilitzant la paraula reservada \"%D\""
+
+#: cp/decl.c:10674
+msgid "type `%T' is not derived from type `%T'"
+msgstr "el tipus \"%T\" no és derivat del tipus \"%T\""
+
+#. Parse error puts this typespec where
+#. a declarator should go.
+#: cp/decl.c:10726
+msgid "`%T' specified as declarator-id"
+msgstr "\"%T\" especificat com identificador de declarador"
+
+#: cp/decl.c:10728
+msgid " perhaps you want `%T' for a constructor"
+msgstr " potser vol \"%T\" per a un constructor"
+
+#. Sometimes, we see a template-name used as part of a
+#. decl-specifier like in
+#. std::allocator alloc;
+#. Handle that gracefully.
+#: cp/decl.c:10750
+#, c-format
+msgid "invalid use of template-name '%E' in a declarator"
+msgstr "ús invàlid del nom de patró \"%E\" en un declarador"
+
+#: cp/decl.c:10770
+msgid "declaration of `%D' as non-function"
+msgstr "la declaració de \"%D\" com una no funció"
+
+#: cp/decl.c:10847
+msgid "`bool' is now a keyword"
+msgstr "`bool' ara és una paraula clau"
+
+#: cp/decl.c:10849
+msgid "extraneous `%T' ignored"
+msgstr "\"%T\" extra ignorat"
+
+#: cp/decl.c:10865 cp/decl.c:10910
+msgid "multiple declarations `%T' and `%T'"
+msgstr "declaracions múltiples \"%T\" i \"%T\""
+
+#: cp/decl.c:10878
+msgid "ISO C++ does not support `long long'"
+msgstr "ISO C++ no dóna suport a \"long long\""
+
+#: cp/decl.c:10983 cp/decl.c:10986
+#, c-format
+msgid "ISO C++ forbids declaration of `%s' with no type"
+msgstr "ISO C++ prohibeix la declaració de \"%s\" sense tipus"
+
+#. The implicit typename extension is deprecated and will be
+#. removed. Warn about its use now.
+#: cp/decl.c:10996
+msgid "`%T' is implicitly a typename"
+msgstr "\"%T\" implícitament és un nom de tipus"
+
+#: cp/decl.c:11032
+#, c-format
+msgid "short, signed or unsigned invalid for `%s'"
+msgstr "short, signed o unsigned invàlid per a \"%s\""
+
+#: cp/decl.c:11037
+#, c-format
+msgid "long and short specified together for `%s'"
+msgstr "long i short especificats junts per a \"%s\""
+
+#: cp/decl.c:11048
+#, c-format
+msgid "signed and unsigned given together for `%s'"
+msgstr "es van donar junts signed i unsigned per a \"%s\""
+
+#: cp/decl.c:11157
+msgid "qualifiers are not allowed on declaration of `operator %T'"
+msgstr "no es permeten qualificadors en la declaració de \"operator %T\""
+
+#: cp/decl.c:11179
+msgid "member `%D' cannot be declared both virtual and static"
+msgstr ""
+
+#: cp/decl.c:11188
+msgid "`%T::%D' is not a valid declarator"
+msgstr "\"%T::%D\" no és una declaració vàlida"
+
+#: cp/decl.c:11200
+msgid "storage class specifiers invalid in parameter declarations"
+msgstr "especificadors de classe d'emmagatzematge invàlids en les declaracions de paràmetres"
+
+#: cp/decl.c:11204
+msgid "typedef declaration invalid in parameter declaration"
+msgstr "declaració typedef invàlida en la declaració de paràmetres"
+
+#: cp/decl.c:11217
+msgid "virtual outside class declaration"
+msgstr "declaració de virtual fora de class"
+
+#: cp/decl.c:11278
+#, c-format
+msgid "storage class specified for %s `%s'"
+msgstr "classe d'emmagatzematge especificada per %s \"%s\""
+
+#: cp/decl.c:11325
+msgid "storage class specifiers invalid in friend function declarations"
+msgstr "especificadors de classe d'emmagatzematge invàlids en les declaracions de funcions friend"
+
+#: cp/decl.c:11495
+msgid "destructor cannot be static member function"
+msgstr "el destructor no pot ser una funció membre de tipus static"
+
+#: cp/decl.c:11498
+#, c-format
+msgid "destructors may not be `%s'"
+msgstr "els destructors no poden ser \"%s\""
+
+#: cp/decl.c:11519
+msgid "constructor cannot be static member function"
+msgstr "el constructor no pot ser una funció membre de tipus static"
+
+#: cp/decl.c:11522
+msgid "constructors cannot be declared virtual"
+msgstr "els constructors no poden ser declarats virtual"
+
+#: cp/decl.c:11527
+#, c-format
+msgid "constructors may not be `%s'"
+msgstr "els constructors no poden ser \"%s\""
+
+#: cp/decl.c:11537
+msgid "return value type specifier for constructor ignored"
+msgstr "el especificador de tipus del valor retornat per al constructor és ignorat"
+
+#: cp/decl.c:11556
+#, c-format
+msgid "can't initialize friend function `%s'"
+msgstr "no es pot inicialitzar la funció friend \"%s\""
+
+#. Cannot be both friend and virtual.
+#: cp/decl.c:11560
+msgid "virtual functions cannot be friends"
+msgstr "les funcions virtual no poden ser friend"
+
+#: cp/decl.c:11565
+msgid "friend declaration not in class definition"
+msgstr "la declaració friend no està en una definició de classe"
+
+#: cp/decl.c:11567
+#, c-format
+msgid "can't define friend function `%s' in a local class definition"
+msgstr "no es pot definir la funció friend \"%s\" en una definició de classe local"
+
+#: cp/decl.c:11591
+msgid "destructors may not have parameters"
+msgstr "els destructors no poden tenir paràmetres"
+
+#: cp/decl.c:11622 cp/decl.c:11629
+msgid "cannot declare reference to `%#T'"
+msgstr "no es poden declarar referències a \"%#T\""
+
+#: cp/decl.c:11623
+msgid "cannot declare pointer to `%#T'"
+msgstr "no es pot declarar un punter a \"%#T\""
+
+#: cp/decl.c:11628
+msgid "cannot declare pointer to `%#T' member"
+msgstr "no es pot declarar un punter al membre \"%#T\""
+
+#: cp/decl.c:11804
+msgid "extra qualification `%T::' on member `%s' ignored"
+msgstr "s'ignora la qualificació extra `%T::' en el membre \"%s\""
+
+#: cp/decl.c:11814
+msgid "cannot declare member function `%T::%s' within `%T'"
+msgstr "no es pot declarar la funció membre \"%T::%s\" dintre de \"%T\""
+
+#: cp/decl.c:11829
+msgid "cannot declare member `%T::%s' within `%T'"
+msgstr "no es pot declarar el membre \"%T::%s\" dintre de \"%T\""
+
+#: cp/decl.c:11908
+msgid "data member may not have variably modified type `%T'"
+msgstr ""
+
+#: cp/decl.c:11910
+msgid "parameter may not have variably modified type `%T'"
+msgstr ""
+
+#. [dcl.fct.spec] The explicit specifier shall only be used in
+#. declarations of constructors within a class definition.
+#: cp/decl.c:11918
+msgid "only declarations of constructors can be `explicit'"
+msgstr "solament les declaracions de constructors poden ser \"explicit\""
+
+#: cp/decl.c:11926
+#, c-format
+msgid "non-member `%s' cannot be declared `mutable'"
+msgstr "el no-membre \"%s\" no pot ser declarat \"mutable\""
+
+#: cp/decl.c:11931
+#, c-format
+msgid "non-object member `%s' cannot be declared `mutable'"
+msgstr "el membre non-objecte \"%s\" no pot ser declarat \"mutable\""
+
+#: cp/decl.c:11937
+#, c-format
+msgid "function `%s' cannot be declared `mutable'"
+msgstr "la funció \"%s\" no pot ser declarada \"mutable\""
+
+#: cp/decl.c:11942
+#, c-format
+msgid "static `%s' cannot be declared `mutable'"
+msgstr "static \"%s\" no pot ser declarat \"mutable\""
+
+#: cp/decl.c:11947
+#, c-format
+msgid "const `%s' cannot be declared `mutable'"
+msgstr "const \"%s\" no pot ser declarat \"mutable\""
+
+#: cp/decl.c:11960
+msgid "template-id `%D' used as a declarator"
+msgstr "l'identificador de patró \"%D\" s'usa com un declarador"
+
+#: cp/decl.c:11981
+msgid "ISO C++ forbids nested type `%D' with same name as enclosing class"
+msgstr "ISO C++ prohibeix el tipus niat \"%D\" amb el mateix nom que la classe que ho conté"
+
+#: cp/decl.c:12030
+msgid "typedef name may not be class-qualified"
+msgstr "el nom de la definició de tipus pot no ser qualificada per a la classe"
+
+#: cp/decl.c:12038
+msgid "invalid type qualifier for non-member function type"
+msgstr "qualificador de tipus invàlid per al tipus de funció no membre"
+
+#: cp/decl.c:12101
+msgid "type qualifiers specified for friend class declaration"
+msgstr "es van especificar qualificadors de tipus en una declaració de classe friend"
+
+#: cp/decl.c:12106
+msgid "`inline' specified for friend class declaration"
+msgstr "es va especificar \"inline\" per a la declaració de classe friend"
+
+#: cp/decl.c:12114
+msgid "template parameters cannot be friends"
+msgstr "els paràmetres del patró no poden ser friends"
+
+#: cp/decl.c:12116
+msgid "friend declaration requires class-key, i.e. `friend class %T::%D'"
+msgstr "la declaració friend requereix una clau de classe, ex. \"friend class %T::%D\""
+
+#: cp/decl.c:12120
+msgid "friend declaration requires class-key, i.e. `friend %#T'"
+msgstr "la declaració friend requereix una clau de classe, ex. \"friend %#T\""
+
+#: cp/decl.c:12134
+msgid "trying to make class `%T' a friend of global scope"
+msgstr "tractant fer que la classe \"%T\" sigui un friend d'àmbit global"
+
+#: cp/decl.c:12145
+msgid "invalid qualifiers on non-member function type"
+msgstr "qualificadors invàlids en el tipus de funció no membre"
+
+#: cp/decl.c:12164
+msgid "abstract declarator `%T' used as declaration"
+msgstr "el declarador abstracte \"%T\" es va utilitzar com una declaració"
+
+#: cp/decl.c:12176
+msgid "unnamed variable or field declared void"
+msgstr "variable sense nom o camp declarat void"
+
+#: cp/decl.c:12185
+msgid "variable or field declared void"
+msgstr "variable o camp declarat void"
+
+#: cp/decl.c:12195
+msgid "cannot use `::' in parameter declaration"
+msgstr "no es pot usar \"::\" en la declaració de paràmetres"
+
+#. Something like struct S { int N::j; };
+#: cp/decl.c:12234
+msgid "invalid use of `::'"
+msgstr "ús invàlid de \"::\""
+
+#: cp/decl.c:12246
+msgid "function `%D' cannot be declared friend"
+msgstr "la funció \"%D\" no pot ser declarada friend"
+
+#: cp/decl.c:12258
+msgid "can't make `%D' into a method -- not in a class"
+msgstr "no es pot fer \"%D\" en un mètode -- no està en una classe"
+
+#: cp/decl.c:12267
+msgid "function `%D' declared virtual inside a union"
+msgstr "la funció \"%s\" es va declarar virtual dintre d'un union"
+
+#: cp/decl.c:12279
+msgid "`%D' cannot be declared virtual, since it is always static"
+msgstr "\"%D\" no es pot declarar virtual, ja que sempre és static"
+
+#: cp/decl.c:12355
+msgid "field `%D' has incomplete type"
+msgstr "el camp \"%D\" té tipus de dada incompleta"
+
+#: cp/decl.c:12357
+msgid "name `%T' has incomplete type"
+msgstr "el nom \"%T\" té tipus de dada incompleta"
+
+#: cp/decl.c:12366
+msgid " in instantiation of template `%T'"
+msgstr " en la instanciació det patró \"%T\""
+
+#: cp/decl.c:12376
+#, c-format
+msgid "`%s' is neither function nor member function; cannot be declared friend"
+msgstr "\"%s\" no és ni funció ni funció membre; no pot ser declarat friend"
+
+#: cp/decl.c:12387
+msgid "member functions are implicitly friends of their class"
+msgstr "les funcions membres són implícitament friends de la seva classe"
+
+#. An attempt is being made to initialize a non-static
+#. member. But, from [class.mem]:
+#.
+#. 4 A member-declarator can contain a
+#. constant-initializer only if it declares a static
+#. member (_class.static_) of integral or enumeration
+#. type, see _class.static.data_.
+#.
+#. This used to be relatively common practice, but
+#. the rest of the compiler does not correctly
+#. handle the initialization unless the member is
+#. static so we make it static below.
+#: cp/decl.c:12434
+msgid "ISO C++ forbids initialization of member `%D'"
+msgstr "ISO C++ prohibeix la inicialización del membre \"%D\""
+
+#: cp/decl.c:12436
+msgid "making `%D' static"
+msgstr "fent a \"%D\" static"
+
+#: cp/decl.c:12460
+msgid "ISO C++ forbids static data member `%D' with same name as enclosing class"
+msgstr "ISO C++ prohibeix que el membre de dades static \"%D\" tingui el mateix nom que la classe que ho conté"
+
+#: cp/decl.c:12501
+#, c-format
+msgid "storage class `auto' invalid for function `%s'"
+msgstr "la classe d'emmagatzematge \"auto\" és invàlida per a la funció \"%s\""
+
+#: cp/decl.c:12503
+#, c-format
+msgid "storage class `register' invalid for function `%s'"
+msgstr "la classe d'emmagatzematge \"register\" és invàlida per a la funció \"%s\""
+
+#: cp/decl.c:12505
+#, c-format
+msgid "storage class `__thread' invalid for function `%s'"
+msgstr "la classe d'emmagatzematge \"__thread\" és invàlida per a la funció \"%s\""
+
+#: cp/decl.c:12516
+#, c-format
+msgid "storage class `static' invalid for function `%s' declared out of global scope"
+msgstr "la classe d'emmagatzematge \"static\" és invàlida per a la funció \"%s\" declarada fora de l'àmbit global"
+
+#: cp/decl.c:12518
+#, c-format
+msgid "storage class `inline' invalid for function `%s' declared out of global scope"
+msgstr "la classe d'emmagatzematge \"inline\" és invàlida per a la funció \"%s\" declarada fora de l'àmbit global"
+
+#: cp/decl.c:12525
+#, c-format
+msgid "virtual non-class function `%s'"
+msgstr "la funció virtual \"%s\" no és classe"
+
+#: cp/decl.c:12554
+msgid "cannot declare member function `%D' to have static linkage"
+msgstr "no es pot declarar que la funció membre \"%D\" tingui enllaçat estàtic"
+
+#. FIXME need arm citation
+#: cp/decl.c:12560
+msgid "cannot declare static function inside another function"
+msgstr "no es pot declarar una funció static dintre d'altra funció"
+
+#: cp/decl.c:12588
+msgid "`static' may not be used when defining (as opposed to declaring) a static data member"
+msgstr "\"static\" pot no ser utilitzat quan es defineix (oposat a la declaració) una dada membre static"
+
+#: cp/decl.c:12594
+msgid "static member `%D' declared `register'"
+msgstr "es va declarar el membre static \"%D\" com \"register\""
+
+#: cp/decl.c:12599
+msgid "cannot explicitly declare member `%#D' to have extern linkage"
+msgstr "no es pot declarar explícitament que el membre \"%#D\" tingui un enllaçat extern"
+
+#: cp/decl.c:12774
+msgid "default argument for `%#D' has type `%T'"
+msgstr "l'argument per omissió de \"%#D\" té tipus \"%T\""
+
+#: cp/decl.c:12777
+msgid "default argument for parameter of type `%T' has type `%T'"
+msgstr "l'argument per omissió per al paràmetre del tipus \"%T\" té el tipus \"%T\""
+
+#: cp/decl.c:12794
+msgid "default argument `%E' uses local variable `%D'"
+msgstr "l'argument per omissió \"%E\" usa la variable local \"%D\""
+
+#: cp/decl.c:12839
+#, c-format
+msgid "invalid string constant `%E'"
+msgstr "constant de cadena invàlida \"%E\""
+
+#: cp/decl.c:12841
+msgid "invalid integer constant in parameter list, did you forget to give parameter name?"
+msgstr "constant entera invàlida en la llista de paràmetres, va oblidar proporcionar nom(s) de paràmetre(s)?"
+
+#: cp/decl.c:12879
+msgid "parameter `%D' invalidly declared method type"
+msgstr "el paràmetre \"%D\" es va declarar invàlidament com tipus de mètode"
+
+#: cp/decl.c:12885
+msgid "parameter `%D' invalidly declared offset type"
+msgstr "el paràmetre \"%D\" es va declarar invàlidament com tipus de desplaçament"
+
+#: cp/decl.c:12909
+msgid "parameter `%D' includes %s to array of unknown bound `%T'"
+msgstr "el paràmetre \"%D\" inclou %s per a la matriu \"%T\" de límit desconegut"
+
+#. [class.copy]
+#.
+#. A declaration of a constructor for a class X is ill-formed if
+#. its first parameter is of type (optionally cv-qualified) X
+#. and either there are no other parameters or else all other
+#. parameters have default arguments.
+#.
+#. We *don't* complain about member template instantiations that
+#. have this form, though; they can occur as we try to decide
+#. what constructor to use during overload resolution. Since
+#. overload resolution will never prefer such a constructor to
+#. the non-template copy constructor (which is either explicitly
+#. or implicitly defined), there's no need to worry about their
+#. existence. Theoretically, they should never even be
+#. instantiated, but that's hard to forestall.
+#: cp/decl.c:13071
+msgid "invalid constructor; you probably meant `%T (const %T&)'"
+msgstr "constructor invàlid; tal vegada va voler dir \"%T (const %T&)\""
+
+#: cp/decl.c:13222
+msgid "`%D' must be a nonstatic member function"
+msgstr "\"%D\" deu ser una funció membre que no sigui static"
+
+#: cp/decl.c:13228
+msgid "`%D' must be either a non-static member function or a non-member function"
+msgstr "\"%D\" deu ser una funció membre no estàtic o una funció no membre"
+
+#: cp/decl.c:13245
+msgid "`%D' must have an argument of class or enumerated type"
+msgstr "\"%D\" deu tenir un argument de tipus classe o enumerat"
+
+#: cp/decl.c:13277
+#, c-format
+msgid "conversion to %s%s will never use a type conversion operator"
+msgstr "la conversió a %s%s mai usarà un operador de conversió de tipus"
+
+#. 13.4.0.3
+#: cp/decl.c:13284
+msgid "ISO C++ prohibits overloading operator ?:"
+msgstr "ISO C++ prohibeix la sobrecàrrega de l'operador ?:"
+
+#: cp/decl.c:13334
+msgid "postfix `%D' must take `int' as its argument"
+msgstr "el postfix \"%D\" deu prendre \"int\" com el seu argument"
+
+#: cp/decl.c:13338
+msgid "postfix `%D' must take `int' as its second argument"
+msgstr "el postfix \"%D\" deu prendre \"int\" com el seu segon argument"
+
+#: cp/decl.c:13345
+msgid "`%D' must take either zero or one argument"
+msgstr "\"%D\" deu prendre zero o un arguments"
+
+#: cp/decl.c:13347
+msgid "`%D' must take either one or two arguments"
+msgstr "\"%D\" deu prendre un o dos arguments"
+
+#: cp/decl.c:13368
+msgid "prefix `%D' should return `%T'"
+msgstr "el prefix \"%D\" deu regressar \"%T\""
+
+#: cp/decl.c:13374
+msgid "postfix `%D' should return `%T'"
+msgstr "el postfix \"%D\" deu regressar \"%T\""
+
+#: cp/decl.c:13383
+msgid "`%D' must take `void'"
+msgstr "\"%D\" deu prendre \"void\""
+
+#: cp/decl.c:13385 cp/decl.c:13393
+msgid "`%D' must take exactly one argument"
+msgstr "\"%D\" deu prendre un argument exactament"
+
+#: cp/decl.c:13395
+msgid "`%D' must take exactly two arguments"
+msgstr "\"%D\" deu prendre dos arguments exactament"
+
+#: cp/decl.c:13403
+msgid "user-defined `%D' always evaluates both arguments"
+msgstr "el \"%D\" definit per l'usuari sempre avalua ambdós arguments"
+
+#: cp/decl.c:13417
+msgid "`%D' should return by value"
+msgstr "\"%D\" deu regressar per valor"
+
+#: cp/decl.c:13429 cp/decl.c:13432
+msgid "`%D' cannot have default arguments"
+msgstr "\"%D\" no pot tenir arguments per omissió"
+
+#: cp/decl.c:13475
+msgid "using typedef-name `%D' after `%s'"
+msgstr "usant el nom de definició de tipus \"%D\" després de \"%s\""
+
+#: cp/decl.c:13481
+msgid "using template type parameter `%T' after `%s'"
+msgstr "usant el paràmetre de tipus patró \"%T\" després de \"%s\""
+
+#: cp/decl.c:13542
+msgid "`%s %T' declares a new type at namespace scope"
+msgstr "\"%s %T\" declara un tipus nou en l'àmbit del nom d'espai"
+
+#: cp/decl.c:13545
+msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
+msgstr " els noms de les classes bases depenents no són visibles per a la recerca de noms sense qualificar - per a referir-se al tipus heretat, utilitzi \"%s %T::%T\""
+
+#: cp/decl.c:13663
+msgid "use of enum `%#D' without previous declaration"
+msgstr "ús del enum \"%#D\" sense declaració prèvia"
+
+#: cp/decl.c:13749
+msgid "derived union `%T' invalid"
+msgstr "union derivada \"%T\" invàlida"
+
+#: cp/decl.c:13795
+msgid "base type `%T' fails to be a struct or class type"
+msgstr "el tipus base \"%T\" falla a ser un tipus struct o classe"
+
+#: cp/decl.c:13805
+msgid "base class `%T' has incomplete type"
+msgstr "la classe base \"%T\" té tipus de dada incompleta"
+
+#: cp/decl.c:13813
+msgid "recursive type `%T' undefined"
+msgstr "tipus recursivo \"%T\" sense definir"
+
+#: cp/decl.c:13815
+msgid "duplicate base type `%T' invalid"
+msgstr "tipus base duplicat \"%T\" invàlid"
+
+#: cp/decl.c:13926
+msgid "multiple definition of `%#T'"
+msgstr "definició múltiple de \"%#T\""
+
+#: cp/decl.c:13927
+msgid "previous definition here"
+msgstr "definició prèvia aquí"
+
+#: cp/decl.c:14030
+msgid "no integral type can represent all of the enumerator values for `%T'"
+msgstr ""
+
+#: cp/decl.c:14106
+msgid "enumerator value for `%D' not integer constant"
+msgstr "el valor de enumerador per a \"%D\" no és una constant entera"
+
+#: cp/decl.c:14126
+msgid "overflow in enumeration values at `%D'"
+msgstr "desbordament en valors d'enumeració en \"%D\""
+
+#: cp/decl.c:14195
+msgid "return type `%#T' is incomplete"
+msgstr "el tipus de retorn \"%#T\" és un tipus de dada incompleta"
+
+#: cp/decl.c:14309
+msgid "semicolon missing after declaration of `%#T'"
+msgstr "manca punt i coma després de la declaració de \"%#T\""
+
+#: cp/decl.c:14330
+msgid "return type for `main' changed to `int'"
+msgstr "el tipus de retorn per a \"main\" va canviar a \"int\""
+
+#: cp/decl.c:14361
+msgid "`%D' implicitly declared before its definition"
+msgstr "\"%D\" declarat implícitament abans de la seva definició"
+
+#: cp/decl.c:14383 cp/typeck.c:6314
+msgid "`operator=' should return a reference to `*this'"
+msgstr "\"operator=\" deu retornar una referència a \"*this\""
+
+#: cp/decl.c:14643
+msgid "parameter `%D' declared void"
+msgstr "el paràmetre \"%D\" es va declarar void"
+
+#: cp/decl.c:15130
+msgid "`%D' is already defined in class `%T'"
+msgstr "\"%D\" ja es va definir en la classe \"%T\""
+
+#: cp/decl.c:15348
+msgid "static member function `%#D' declared with type qualifiers"
+msgstr "la funció membre static \"%#D\" és declarada amb qualificadors de tipus"
+
+#: cp/decl2.c:153
+#, c-format
+msgid "duplicate type qualifiers in %s declaration"
+msgstr "qualificadors de tipus duplicats en la declaració %s"
+
+#: cp/decl2.c:192
+msgid "template `%#D' instantiated in file without #pragma interface"
+msgstr "es va instanciar el patró \"%#D\" en el fitxer sense #pragma interface"
+
+#: cp/decl2.c:198
+msgid "template `%#D' defined in file without #pragma interface"
+msgstr "es va definir el patró \"%#D\" en el fitxer sense #pragma interface"
+
+#: cp/decl2.c:365
+msgid "name missing for member function"
+msgstr "falta el nom per a la funció membre"
+
+#. Something has gone very wrong. Assume we are mistakenly reducing
+#. an expression instead of a declaration.
+#: cp/decl2.c:428
+msgid "parser may be lost: is there a '{' missing somewhere?"
+msgstr "el decodificador tal vegada es va perdre: falta algun \"{\" en algun lloc?"
+
+#: cp/decl2.c:459 cp/decl2.c:473
+msgid "ambiguous conversion for array subscript"
+msgstr "conversió ambigua per a índex de matriu"
+
+#: cp/decl2.c:467
+msgid "invalid types `%T[%T]' for array subscript"
+msgstr "tipus invàlids \"%T[%T]\" per a índex de matriu"
+
+#: cp/decl2.c:515
+msgid "type `%#T' argument given to `delete', expected pointer"
+msgstr "es va donar un argument de tipus \"%#T\" a \"delete\", s'esperava un punter"
+
+#: cp/decl2.c:523
+msgid "anachronistic use of array size in vector delete"
+msgstr "ús anacrònic de la grandària de la matriu desconeguda en vector delete"
+
+#: cp/decl2.c:533
+msgid "cannot delete a function. Only pointer-to-objects are valid arguments to `delete'"
+msgstr "no es pot esborrar una funció. Solament els punters a objectes són arguments vàlids per a \"delete\""
+
+#: cp/decl2.c:540
+msgid "deleting `%T' is undefined"
+msgstr "esborrar \"%T\" està indefinit"
+
+#: cp/decl2.c:548
+msgid "deleting array `%#D'"
+msgstr "esborrant la matriu \"%#D\""
+
+#. 14.5.2.2 [temp.mem]
+#.
+#. A local class shall not have member templates.
+#: cp/decl2.c:582
+msgid "invalid declaration of member template `%#D' in local class"
+msgstr "declaració invàlida del patró membre \"%#D\" en la classe local"
+
+#: cp/decl2.c:591
+msgid "invalid use of `virtual' in template declaration of `%#D'"
+msgstr "ús invàlid de \"virtual\" en la declaració de patró de \"%#D\""
+
+#: cp/decl2.c:601 cp/pt.c:2745
+msgid "template declaration of `%#D'"
+msgstr "declaració en patró de \"%#D\""
+
+#: cp/decl2.c:651
+msgid "Java method '%D' has non-Java return type `%T'"
+msgstr "el mètode Java \"%D\" té un tipus de retorn \"%T\" que no és de Java"
+
+#: cp/decl2.c:660
+msgid "Java method '%D' has non-Java parameter type `%T'"
+msgstr "el mètode Java \"%D\" té un tipus de paràmetre \"%T\" que no és de Java"
+
+#: cp/decl2.c:746
+msgid "prototype for `%#D' does not match any in class `%T'"
+msgstr "el prototip per a \"%#D\" no coincideix amb cap altre en la classe \"%T\""
+
+#: cp/decl2.c:828
+msgid "local class `%#T' shall not have static data member `%#D'"
+msgstr "la classe local \"%#T\" no deu tenir el membre static \"%#D\""
+
+#: cp/decl2.c:836
+msgid "initializer invalid for static member with constructor"
+msgstr "inicializador invàlid per al membre static amb constructor"
+
+#: cp/decl2.c:839
+msgid "(an out of class initialization is required)"
+msgstr "(es requereix una inicialització fora de la classe)"
+
+#: cp/decl2.c:898
+msgid "invalid data member initialization"
+msgstr "inicialització de la dada membre invàlida"
+
+#: cp/decl2.c:901
+msgid "(use `=' to initialize static data members)"
+msgstr "(usi \"=\" per a inicialitzar membres de dades static)"
+
+#: cp/decl2.c:947
+msgid "member `%D' conflicts with virtual function table field name"
+msgstr "el membre \"%D\" té conflictes amb el nom de camp de la matriu de funcions virtuals"
+
+#: cp/decl2.c:967
+msgid "`%D' is already defined in `%T'"
+msgstr "\"%D\" ja està definit en \"%T\""
+
+#: cp/decl2.c:1014
+msgid "field initializer is not constant"
+msgstr "el inicializador del camp no és constant"
+
+#: cp/decl2.c:1038
+msgid "`asm' specifiers are not permitted on non-static data members"
+msgstr "no es permeten els especificadores \"asm\" en membres de dades no estàtiques"
+
+#: cp/decl2.c:1090
+msgid "cannot declare `%D' to be a bit-field type"
+msgstr "no es pot declarar \"%D\" que sigui un tipus de camp de bits"
+
+#: cp/decl2.c:1100
+msgid "cannot declare bit-field `%D' with function type"
+msgstr "no es pot declarar el camp de bits \"%D\" amb un tipus de funció"
+
+#: cp/decl2.c:1107
+msgid "`%D' is already defined in the class %T"
+msgstr "\"%D\" ja està definit en la classe %T"
+
+#: cp/decl2.c:1114
+msgid "static member `%D' cannot be a bit-field"
+msgstr "el membre static \"%D\" no pot ser un camp de bits"
+
+#: cp/decl2.c:1201
+msgid "initializer specified for non-member function `%D'"
+msgstr "es va especificar un inicialitzador per a la funció no-membre \"%D\""
+
+#: cp/decl2.c:1205
+msgid "invalid initializer for virtual method `%D'"
+msgstr "inicialitzador invàlid per al mètode virtual \"%D\""
+
+#: cp/decl2.c:1319
+msgid "anonymous struct not inside named type"
+msgstr "struct anònim no es troba dintre d'un tipus nomenat"
+
+#: cp/decl2.c:1415
+msgid "namespace-scope anonymous aggregates must be static"
+msgstr "els agregats anònims d'abast de nom d'espai deuen ser static"
+
+#: cp/decl2.c:1428
+msgid "anonymous aggregate with no members"
+msgstr "agregat anònim sense membres"
+
+#: cp/decl2.c:1497
+msgid "`operator new' must return type `%T'"
+msgstr "\"operator new\" deu retornar el tipus \"%T\""
+
+#: cp/decl2.c:1505
+msgid "`operator new' takes type `size_t' (`%T') as first parameter"
+msgstr "\"operator new\" pren el tipus \"size_t\" (\"%T\") com primer argument"
+
+#: cp/decl2.c:1532
+msgid "`operator delete' must return type `%T'"
+msgstr "\"operator delete\" deu retornar el tipus \"%T\""
+
+#: cp/decl2.c:1540
+msgid "`operator delete' takes type `%T' as first parameter"
+msgstr "\"operator delete\" pren el tipus \"%T\" com primer argument"
+
+#. Overflow occurred. That means there are at least 4 billion
+#. initialization functions.
+#: cp/decl2.c:2282
+msgid "too many initialization functions required"
+msgstr "es requereixen massa funcions d'inicialització"
+
+#: cp/decl2.c:3006
+msgid "inline function `%D' used but never defined"
+msgstr "s'usa la funció inline \"%D\" però mai es va definir"
+
+#: cp/decl2.c:3135
+msgid "use of old-style cast"
+msgstr "ús de la conversió d'estil antic"
+
+#: cp/decl2.c:3860
+msgid "use of `%D' is ambiguous"
+msgstr "l'ús de \"%D\" és ambigu"
+
+#: cp/decl2.c:3861
+msgid " first declared as `%#D' here"
+msgstr " declarat inicialment com \"%#D\" aquí"
+
+#: cp/decl2.c:3864
+msgid " also declared as `%#D' here"
+msgstr " també declarat com \"%#D\" aquí"
+
+#: cp/decl2.c:3879
+msgid "`%D' denotes an ambiguous type"
+msgstr "\"%D\" denota un tipus ambigu"
+
+#: cp/decl2.c:3880
+msgid " first type here"
+msgstr " primer tipus aquí"
+
+#: cp/decl2.c:3881
+msgid " other type here"
+msgstr " altre tipus aquí"
+
+#: cp/decl2.c:3982
+msgid "declaration of `%D' not in a namespace surrounding `%D'"
+msgstr "la declaració de \"%D\" no està en un espai de noms al voltant de \"%D\""
+
+#: cp/decl2.c:4016
+msgid "`%D' should have been declared inside `%D'"
+msgstr "\"%D\" deuria ser declarat dintre de \"%D\""
+
+#: cp/decl2.c:4152
+msgid "`%D' is not a function,"
+msgstr "\"%D\" no és una funció,"
+
+#: cp/decl2.c:4153
+msgid " conflict with `%D'"
+msgstr " té conflicte amb \"%D\""
+
+#. The parser did not find it, so it's not there.
+#: cp/decl2.c:4473
+msgid "unknown namespace `%D'"
+msgstr "espai de noms \"%D\" desconegut"
+
+#: cp/decl2.c:4507 cp/decl2.c:4794
+msgid "`%T' is not a namespace"
+msgstr "\"%T\" no és un nom d'espai"
+
+#: cp/decl2.c:4509
+msgid "`%D' is not a namespace"
+msgstr "\"%D\" no és un nom d'espai"
+
+#: cp/decl2.c:4518
+msgid "a using-declaration cannot specify a template-id. Try `using %D'"
+msgstr "una declaració d'ús no pot especificar un identificador de patró. Intenti \"using %D\""
+
+#: cp/decl2.c:4532
+msgid "namespace `%D' not allowed in using-declaration"
+msgstr "no es permet l'espai de noms \"%D\" en la declaració d'ús"
+
+#: cp/decl2.c:4561
+msgid "`%D' not declared"
+msgstr "no es va declarar \"%D\""
+
+#. If the OLD_FN was really declared, the
+#. declarations don't match.
+#: cp/decl2.c:4573 cp/decl2.c:4615 cp/decl2.c:4640
+msgid "`%D' is already declared in this scope"
+msgstr "\"%D\" ja es va declarar en aquest àmbit"
+
+#: cp/decl2.c:4646
+msgid "using declaration `%D' introduced ambiguous type `%T'"
+msgstr "l'ús de la declaració \"%D\" va introduir el tipus ambigu \"%T\""
+
+#: cp/decl2.c:4740
+msgid "using-declaration for non-member at class scope"
+msgstr "declaració d'ús per a un no membre en l'àmbit de la classe"
+
+#: cp/decl2.c:4746
+msgid "using-declaration for destructor"
+msgstr "declaració d'ús per al destructor"
+
+#: cp/decl2.c:4752
+msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
+msgstr "una declaració d'ús no pot especificar un aneu de patró. Intenti \"using %T::%D\""
+
+#: cp/decl2.c:4788
+msgid "namespace `%T' undeclared"
+msgstr "espai de noms \"%T\" sense declarar"
+
+#: cp/decl2.c:4817
+msgid "default argument missing for parameter %P of `%+#D'"
+msgstr "falta l'argument per omissió per al paràmetre %P de \"%+#D\""
+
+#: cp/decl2.c:4941
+msgid "extra qualification `%T::' on member `%D' ignored"
+msgstr "s'ignora la qualificació extra \"%T::\" en el membre \"%D\""
+
+#: cp/decl2.c:4945
+msgid "`%T' does not have a class or union named `%D'"
+msgstr "\"%T\" no té una classe o union cridat \"%D\""
+
+#: cp/decl2.c:4963
+msgid "`%T' is not a class or union type"
+msgstr "\"%T\" no és una classe o tipus union"
+
+#: cp/decl2.c:4977
+msgid "template argument is required for `%T'"
+msgstr "es requereix un argument de patró per a \"%T\""
+
+#: cp/decl2.c:4995
+msgid "declaration of `%D' in `%D' which does not enclose `%D'"
+msgstr "declaració de \"%D\" en \"%D\" la qual no inclou a \"%D\""
+
+#: cp/error.c:35
+#, c-format
+msgid "`%s' not supported by %s"
+msgstr "\"%s\" no té suport per a %s"
+
+#: cp/error.c:571
+#, c-format
+msgid "<anonymous %s>"
+msgstr "<%s anònim>"
+
+#: cp/error.c:810
+#, c-format
+msgid "(static %s for %s)"
+msgstr "(%s static per a %s)"
+
+#: cp/error.c:1503
+#, c-format
+msgid "\\x%x"
+msgstr ""
+
+#: cp/error.c:2473
+#, c-format
+msgid "In %s `%s':"
+msgstr "En %s \"%s\":"
+
+#: cp/error.c:2530
+#, c-format
+msgid "%s: In instantiation of `%s':\n"
+msgstr "%s: En la instanciació de \"%s\":\n"
+
+#: cp/error.c:2554
+#, c-format
+msgid "%s:%d: instantiated from `%s'\n"
+msgstr "%s:%d: instanciat des de \"%s\"\n"
+
+#: cp/error.c:2559
+#, c-format
+msgid "%s:%d: instantiated from here\n"
+msgstr "%s:%d: instanciat des d'aquí\n"
+
+#. damn ICE suppression
+#: cp/error.c:2713
+#, c-format
+msgid "unexpected letter `%c' in locate_error\n"
+msgstr "lletra \"%c\" inesperada en locate_error\n"
+
+#. Can't throw a reference.
+#: cp/except.c:240
+msgid "type `%T' is disallowed in Java `throw' or `catch'"
+msgstr "el tipus \"%T\" no està permès en \"throw\" o \"catch\" de Java"
+
+#: cp/except.c:251
+msgid "call to Java `catch' or `throw' with `jthrowable' undefined"
+msgstr "cridada a \"catch\" o \"throw\" de Java amb \"jthrowable\" sense definir"
+
+#. Thrown object must be a Throwable.
+#: cp/except.c:258
+msgid "type `%T' is not derived from `java::lang::Throwable'"
+msgstr "el tipus \"%T\" no és derivat de \"java::lang::Throwable\""
+
+#: cp/except.c:322
+msgid "mixing C++ and Java catches in a single translation unit"
+msgstr "barrejant \"catches\" de C++ i Java en una sola unitat de traducció"
+
+#: cp/except.c:639
+msgid "throwing NULL, which has integral, not pointer type"
+msgstr "llançant NULL, que té un tipus integral, no un tipus punter"
+
+#: cp/except.c:730
+msgid " in thrown expression"
+msgstr " en expressió thrown"
+
+#: cp/except.c:856
+msgid "expression '%E' of abstract class type '%T' cannot be used in throw-expression"
+msgstr "no es pot usar l'expressió \"%E\" del tipus de classe abstracta \"%T\" en les expressions thrown"
+
+#: cp/except.c:944
+msgid "exception of type `%T' will be caught"
+msgstr "l'excepció del tipus \"%T\" serà atrapada"
+
+#: cp/except.c:947
+msgid " by earlier handler for `%T'"
+msgstr " per un gestor anterior per a \"%T\""
+
+#: cp/except.c:968
+msgid "`...' handler must be the last handler for its try block"
+msgstr "el gestor \"...\" deu ser l'últim gestor per al seu bloc try"
+
+#: cp/friend.c:159
+msgid "`%D' is already a friend of class `%T'"
+msgstr "\"%D\" ja és un friend de la classe \"%T\""
+
+#: cp/friend.c:161
+msgid "previous friend declaration of `%D'"
+msgstr "declaració friend prèvia de \"%D\""
+
+#: cp/friend.c:206
+msgid "invalid type `%T' declared `friend'"
+msgstr "el tipus invàlid \"%T\" va ser declarat \"friend\""
+
+#. [temp.friend]
+#. Friend declarations shall not declare partial
+#. specializations.
+#: cp/friend.c:222
+msgid "partial specialization `%T' declared `friend'"
+msgstr "l'especialització parcial \"%T\" es va declarar \"friend\""
+
+#: cp/friend.c:231
+msgid "class `%T' is implicitly friends with itself"
+msgstr "la classe \"%T\" és implícitament friend amb si mateixa"
+
+#. template <class T> friend typename S<T>::X;
+#: cp/friend.c:249
+msgid "typename type `%#T' declared `friend'"
+msgstr "el tipus de nom de tipus \"%#T\" es va declarar \"friend\""
+
+#. template <class T> friend class T;
+#: cp/friend.c:255
+msgid "template parameter type `%T' declared `friend'"
+msgstr "el tipus de paràmetre de patró \"%T\" es va declarar \"friend\""
+
+#. template <class T> friend class A; where A is not a template
+#: cp/friend.c:261
+msgid "`%#T' is not a template"
+msgstr "\"%#T\" no és un patró"
+
+#: cp/friend.c:276
+msgid "`%T' is already a friend of `%T'"
+msgstr "\"%T\" ja és un friend de \"%T\""
+
+#: cp/friend.c:376
+msgid "member `%D' declared as friend before type `%T' defined"
+msgstr "el membre \"%D\" és declarat friend abans que es defineixi el tipus \"%T\""
+
+#: cp/friend.c:431
+msgid "friend declaration `%#D' declares a non-template function"
+msgstr "la declaració friend \"%#D\" declara una funció que no és patró"
+
+#: cp/friend.c:434
+msgid "(if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) -Wno-non-template-friend disables this warning"
+msgstr "(si aquesta no és la seva intenció, asseguri's qu'el patró de la funció ja ha estat declarada i agregui <> aquí després del nom de la funció) -Wno-non-template-friend desactiva aquest avís"
+
+#: cp/g++spec.c:211 java/jvspec.c:423
+#, c-format
+msgid "argument to `%s' missing\n"
+msgstr "falta l'argument per a `%s'\n"
+
+#: cp/init.c:334
+msgid "`%D' should be initialized in the member initialization list"
+msgstr ""
+
+#: cp/init.c:384
+msgid "default-initialization of `%#D', which has reference type"
+msgstr "l'inicialització per omissió de \"%#D\", el qual té el tipus de referència"
+
+#: cp/init.c:389
+msgid "uninitialized reference member `%D'"
+msgstr "membre referència \"%D\" sense inicialitzar"
+
+#: cp/init.c:397
+msgid "initializer list treated as compound expression"
+msgstr "la llista d'inicialitzadors es tracta com una expressió compostada"
+
+#: cp/init.c:538
+msgid "`%D' will be initialized after"
+msgstr "\"%D\" s'inicialitzarà després"
+
+#: cp/init.c:541
+msgid "base `%T' will be initialized after"
+msgstr "la base \"%T\" s'inicialitzarà després"
+
+#: cp/init.c:544
+msgid " `%#D'"
+msgstr " \"#%D\""
+
+#: cp/init.c:546
+msgid " base `%T'"
+msgstr " base \"%T\""
+
+#: cp/init.c:564
+msgid "multiple initializations given for base `%T'"
+msgstr "es van donar inicialitzacions múltiples per a la base \"%T\""
+
+#: cp/init.c:631
+msgid "initializations for multiple members of `%T'"
+msgstr "inicialitzacions per a múltiples membres de \"%T\""
+
+#: cp/init.c:688
+msgid "base class `%#T' should be explicitly initialized in the copy constructor"
+msgstr "la classe base \"%#T\" deu ser inicialitzada explícitament en la còpia del constructor"
+
+#: cp/init.c:926
+msgid "class `%T' does not have any field named `%D'"
+msgstr "la classe \"%T\" no té cap camp cridat \"%D\""
+
+#: cp/init.c:932
+msgid "field `%#D' is static; the only point of initialization is its definition"
+msgstr "el camp \"%#D\" és static; l'únic punt d'inicialització és la seva definició"
+
+#: cp/init.c:965
+msgid "unnamed initializer for `%T', which has no base classes"
+msgstr "inicialitzador sense nom per a \"%T\", el qual no té una classe base"
+
+#: cp/init.c:972
+msgid "unnamed initializer for `%T', which uses multiple inheritance"
+msgstr "inicialitzador sense nom per a \"%T\", el qual usa herència múltiple"
+
+#: cp/init.c:1007
+msgid "type `%D' is not a direct or virtual base of `%T'"
+msgstr "el tipus \"%D\" no és una base directa o virtual de \"%T\""
+
+#: cp/init.c:1010
+msgid "type `%D' is not a direct base of `%T'"
+msgstr "el tipus \"%D\" no és una base directa de \"%T\""
+
+#. Handle bad initializers like:
+#. class COMPLEX {
+#. public:
+#. double re, im;
+#. COMPLEX(double r = 0.0, double i = 0.0) {re = r; im = i;};
+#. ~COMPLEX() {};
+#. };
+#.
+#. int main(int argc, char **argv) {
+#. COMPLEX zees(1.0, 0.0)[10];
+#. }
+#.
+#: cp/init.c:1104
+msgid "bad array initializer"
+msgstr "inicialitzador de matriu erroni"
+
+#: cp/init.c:1311
+msgid "`%T' is not an aggregate type"
+msgstr "\"%T\" no és un tipus agregat"
+
+#: cp/init.c:1334
+msgid "`%T' fails to be an aggregate typedef"
+msgstr "\"%T\" falla a ser un tipus agregat"
+
+#: cp/init.c:1343
+msgid "type `%T' is of non-aggregate type"
+msgstr "el tipus \"%T\" és d'un tipus no agregat"
+
+#: cp/init.c:1446
+msgid "cannot call destructor `%T::~%T' without object"
+msgstr "no es pot cridar al destructor \"%T::%T\" sense un objecte"
+
+#: cp/init.c:1490
+msgid "invalid use of non-static field `%D'"
+msgstr "ús invàlid del camp no static \"%D\""
+
+#. We can get here when processing a bad default
+#. argument, like:
+#. struct S { int a; void f(int i = a); }
+#: cp/init.c:1499 cp/method.c:160
+msgid "invalid use of member `%D'"
+msgstr "ús invàlid del membre \"%D\""
+
+#: cp/init.c:1509
+msgid "no method `%T::%D'"
+msgstr "no hi ha un mètode \"%T::%D\""
+
+#: cp/init.c:1602
+msgid "incomplete type `%T' does not have member `%D'"
+msgstr "el tipus incomplet \"%T\" no té al membre \"%D\""
+
+#: cp/init.c:1676
+msgid "`%D' is not a member of type `%T'"
+msgstr "\"%D\" no és un membre de tipus \"%T\""
+
+#: cp/init.c:1695
+msgid "invalid pointer to bit-field `%D'"
+msgstr "punter invàlid al camp de bit \"%D\""
+
+#: cp/init.c:1734
+msgid "object missing in use of pointer-to-member construct"
+msgstr "manca objecte en l'ús d'una consctrucció que punta a membres"
+
+#: cp/init.c:1774
+msgid "member `%D' is non-static but referenced as a static member"
+msgstr "el membre \"%D\" no és static però és referenciat com un membre static"
+
+#: cp/init.c:1776 cp/typeck.c:2826 cp/typeck.c:2930
+msgid "at this point in file"
+msgstr "en aquest punt en el fitxer"
+
+#: cp/init.c:1813
+#, c-format
+msgid "object missing in `%E'"
+msgstr "falta un objecte en \"%E\""
+
+#: cp/init.c:1944
+msgid "new of array type fails to specify size"
+msgstr "new de matriu falla a l'especificar la grandària"
+
+#: cp/init.c:1955
+msgid "size in array new must have integral type"
+msgstr "la grandària de la matriu nova deu tenir un tipus integral"
+
+#: cp/init.c:1961
+msgid "zero size array reserves no space"
+msgstr "la matriu de grandària zero no reserva espai"
+
+#: cp/init.c:2026
+msgid "new cannot be applied to a reference type"
+msgstr "new no pot ser aplicat a un tipus de referència"
+
+#: cp/init.c:2032
+msgid "new cannot be applied to a function type"
+msgstr "new no pot ser aplicat a una funcció de referència"
+
+#: cp/init.c:2079
+msgid "call to Java constructor, while `jclass' undefined"
+msgstr "cridada a constructor Java, mentre \"jclass\" està indefinit"
+
+#: cp/init.c:2095
+msgid "can't find class$"
+msgstr "no es pot trobar class$"
+
+#: cp/init.c:2209
+msgid "invalid type `void' for new"
+msgstr "tipus \"void\" invàlid per a new"
+
+#: cp/init.c:2261
+#, c-format
+msgid "call to Java constructor with `%s' undefined"
+msgstr "cridada a constructor Java amb \"%s\" sense definir"
+
+#: cp/init.c:2369
+msgid "ISO C++ forbids initialization in array new"
+msgstr "ISO C++ prohibeix la inicialització en la matriu new"
+
+#: cp/init.c:2391 cp/typeck2.c:367 cp/typeck2.c:1208
+msgid "initializer list being treated as compound expression"
+msgstr "es tracta la llista d'inicialitzadors com una expressió composada"
+
+#: cp/init.c:2397
+msgid "ISO C++ forbids aggregate initializer to new"
+msgstr "ISO C++ prohibeix un inicialitzador agregat per a new"
+
+#: cp/init.c:2485
+msgid "uninitialized const in `new' of `%#T'"
+msgstr "const sense inicialitzar en \"new\" de \"%#T\""
+
+#: cp/init.c:2864
+msgid "initializer ends prematurely"
+msgstr "el inicialitzador acaba prematurament"
+
+#: cp/init.c:2934
+msgid "cannot initialize multi-dimensional array with initializer"
+msgstr "no es poden inicialitzar matrius multidimensionals amb el inicialitzador"
+
+#: cp/init.c:3124
+msgid "unknown array size in delete"
+msgstr "grandària de matriu desconeguda en delete"
+
+#: cp/init.c:3389
+msgid "type to vector delete is neither pointer or array type"
+msgstr "el tipus de vector delete no és del tipus punter ni matriu"
+
+#: cp/lex.c:136
+msgid "type name expected before `*'"
+msgstr "s'esperava nom de tipus abans de \"*\""
+
+#: cp/lex.c:158
+msgid "cannot declare references to references"
+msgstr "no es poden declarar referències a referències"
+
+#: cp/lex.c:163
+msgid "cannot declare pointers to references"
+msgstr "no es poden declarar punter a referències"
+
+#: cp/lex.c:167
+msgid "type name expected before `&'"
+msgstr "s'esperava nom de tipus abans de \"&\""
+
+#: cp/lex.c:894
+#, c-format
+msgid "semicolon missing after %s declaration"
+msgstr "manca punt i coma després de la declaració %s"
+
+#: cp/lex.c:897
+msgid "semicolon missing after declaration of `%T'"
+msgstr "manca punt i coma després de la declaració de \"%T\""
+
+#: cp/lex.c:945
+#, c-format
+msgid "junk at end of #pragma %s"
+msgstr "escombraries al final de #pragma %s"
+
+#: cp/lex.c:952
+#, c-format
+msgid "invalid #pragma %s"
+msgstr "#pragma %s invàlid"
+
+#: cp/lex.c:961
+msgid "#pragma vtable no longer supported"
+msgstr "#pragma vtable ja no té suport"
+
+#: cp/lex.c:1038
+#, c-format
+msgid "#pragma implementation for %s appears after file is included"
+msgstr "implementació de #pragma per a %s apareix després que el fitxer és inclòs"
+
+#: cp/lex.c:1063
+msgid "junk at end of #pragma GCC java_exceptions"
+msgstr "escombraries al final del #pragma GCC java_exceptions"
+
+#: cp/lex.c:1107
+msgid "`%D' not defined"
+msgstr "\"%D\" no està definit"
+
+#: cp/lex.c:1110
+msgid "`%D' was not declared in this scope"
+msgstr "\"%D\" no es va declarar en aquest àmbit"
+
+#: cp/lex.c:1118
+msgid "`%D' undeclared (first use this function)"
+msgstr "\"%D\" sense declarar (primer ús en aquesta funció)"
+
+#: cp/lex.c:1122
+msgid "(Each undeclared identifier is reported only once for each function it appears in.)"
+msgstr "(Cada identificador sense declarar és reportat només una vegada per a cada funció en el qual apareix.)"
+
+#: cp/lex.c:1242
+msgid "`::%D' undeclared (first use here)"
+msgstr "\"::%D\" sense declarar (primer ús aquí)"
+
+#: cp/mangle.c:2051
+msgid "call_expr cannot be mangled due to a defect in the C++ ABI"
+msgstr ""
+
+#: cp/mangle.c:2363
+msgid "the mangled name of `%D' will change in a future version of GCC"
+msgstr ""
+
+#: cp/method.c:154
+msgid "invalid use of member `%D' in static member function"
+msgstr "ús invàlid del membre \"%D\" en la funció membre static"
+
+#: cp/method.c:216
+msgid "use of namespace `%D' as expression"
+msgstr "ús de l'espai de noms \"%D\" com una expressió"
+
+#: cp/method.c:221
+msgid "use of class template `%T' as expression"
+msgstr "ús de la plantilla de classe \"%T\" com una expressió"
+
+#: cp/method.c:234
+#, c-format
+msgid "use of %s from containing function"
+msgstr "ús de %s des d'una funció contenidora"
+
+#: cp/method.c:237
+msgid " `%#D' declared here"
+msgstr " \"%#D\" declarat aquí"
+
+#: cp/method.c:255
+msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
+msgstr "la petició pel membre \"%D\" és ambigua en la xarxa d'herència múltiple"
+
+#: cp/method.c:458
+msgid "generic thunk code fails for method `%#D' which uses `...'"
+msgstr "el codi de thunk genèric va fallar per al mètode \"%#D\" que utilitza \"...\""
+
+#: cp/method.c:697
+msgid "non-static const member `%#D', can't use default assignment operator"
+msgstr "el membre const \"%#D\" que no és static, no pot usar l'operador d'assignació per omissió"
+
+#: cp/method.c:702
+msgid "non-static reference member `%#D', can't use default assignment operator"
+msgstr "el membre de referència \"%#D\" que no és static, no pot usar l'operador d'assignació per omissió"
+
+#: parse.y:262
+msgid "`%s' tag used in naming `%#T'"
+msgstr "es va usar la marca \"%s\" al nomenar a\"%#T\""
+
+#: parse.y:542
+msgid "keyword `export' not implemented, and will be ignored"
+msgstr "la paraula clau \"export\" no està implementada, i serà ignorada"
+
+#: parse.y:646
+msgid "use of linkage spec `%D' is different from previous spec `%D'"
+msgstr "l'ús de l'especificació d'enllaçat \"%D\" és diferent de l'especificació prèvia \"%D\""
+
+#: parse.y:943
+msgid "no base or member initializers given following ':'"
+msgstr ""
+
+#: parse.y:984
+msgid "anachronistic old style base class initializer"
+msgstr "inicialitzador de classe base d'estil antic anacrònic"
+
+#. Handle `Class<Class<Type>>' without space in the `>>'
+#: parse.y:1117
+msgid "`>>' should be `> >' in template class name"
+msgstr "\">>\" deu ser \"> >\" en el nom de classe del patró"
+
+#: parse.y:1164
+msgid "use of template qualifier outside template"
+msgstr "ús del qualificador de patró fora del patró"
+
+#: parse.y:1193 parse.y:1202
+#, c-format
+msgid "ISO C++ forbids an empty condition for `%s'"
+msgstr "ISO C++ prohibeix una condició buida per a \"%s\""
+
+#: parse.y:1225
+msgid "definition of class `%T' in condition"
+msgstr "definició de la classe \"%T\" en una condició"
+
+#: parse.y:1227
+msgid "definition of enum `%T' in condition"
+msgstr "definició del enum \"%T\" en una condició"
+
+#: parse.y:1238
+msgid "definition of array `%#D' in condition"
+msgstr "definició de la matriu \"%#D\" en una condició"
+
+#: parse.y:1351
+msgid "old style placement syntax, use () instead"
+msgstr "sintaxi d'ubicació d'estil antic, usi en el seu lloc ()"
+
+#: parse.y:1362
+msgid "`%T' is not a valid expression"
+msgstr "\"%T\" no és una expressió vàlida"
+
+#. This was previously allowed as an extension, but
+#. was removed in G++ 3.3.
+#: parse.y:1369
+msgid "initialization of new expression with `='"
+msgstr "inicialització de l'expressió new amb \"=\""
+
+#: parse.y:1395
+msgid "ISO C++ forbids compound literals"
+msgstr "ISO C++ prohibeix literals composats"
+
+#: parse.y:1642
+msgid "ISO C++ forbids braced-groups within expressions"
+msgstr "ISO C++ prohibeix grups de parèntesis dintre de les expressions"
+
+#: parse.y:1721
+msgid "invalid use of template `%D'"
+msgstr "ús invàlid del patró \"%D\""
+
+#: parse.y:2053 parse.y:2068
+msgid "sigof type specifier"
+msgstr "especificador de tipus sigof"
+
+#: parse.y:2058
+msgid "`sigof' applied to non-aggregate expression"
+msgstr "\"sigof\" aplicat a una expressió no agregada"
+
+#: parse.y:2073
+msgid "`sigof' applied to non-aggregate type"
+msgstr "\"sigof\" aplicat a un tipus no agregat"
+
+#: parse.y:2339
+msgid "using `typename' outside of template"
+msgstr "usant \"typename\" fora de la plantilla"
+
+#: parse.y:2356
+msgid "qualified name does not name a class"
+msgstr ""
+
+#: parse.y:2417
+#, c-format
+msgid "storage class specifier `%s' not allowed after struct or class"
+msgstr "no es permet el especificador de classe d'emmagatzematge \"%s\" després de struct o class"
+
+#: parse.y:2419
+#, c-format
+msgid "type specifier `%s' not allowed after struct or class"
+msgstr "no es permet el especificador de tipus \"%s\" després de struct o class"
+
+#: parse.y:2421
+#, c-format
+msgid "type qualifier `%s' not allowed after struct or class"
+msgstr "no es permet el qualificador de tipus \"%s\" després de struct o class"
+
+#: parse.y:2423
+msgid "no body nor ';' separates two class, struct or union declarations"
+msgstr "no hi ha cos ni \";\" separant dues declaracions class, struct o union"
+
+#: parse.y:2553
+msgid "no bases given following `:'"
+msgstr "no hi ha bases donat seguint \":\""
+
+#: parse.y:2584 parse.y:2599
+msgid "`%D' access"
+msgstr "accés \"%D\""
+
+#: parse.y:2589
+msgid "multiple access specifiers"
+msgstr "specificadors d'accés múltiples"
+
+#: parse.y:2607
+msgid "multiple `virtual' specifiers"
+msgstr "specificadors \"virtual\" múltiples"
+
+#: parse.y:2644
+msgid "missing ';' before right brace"
+msgstr "falta \";\" abans de la clau dreta"
+
+#: parse.y:2865
+msgid "ISO C++ forbids array dimensions with parenthesized type in new"
+msgstr "ISO C++ prohibeix les dimensions de matriu amb tipus amb parèntesi en new"
+
+#: parse.y:3152 parse.y:3172 parse.y:3181 parse.y:3210
+msgid "`%T' is not a class or namespace"
+msgstr "\"%T\" no és una classa o un espai de noms"
+
+#: parse.y:3377
+msgid "ISO C++ forbids label declarations"
+msgstr "ISO C++ prohibeix declaracions d'etiquetes"
+
+#: parse.y:3537
+msgid "ISO C++ forbids computed gotos"
+msgstr "ISO C++ prohibeix gotos calculats"
+
+#: parse.y:3545
+msgid "label must be followed by statement"
+msgstr "l'etiqueta deu ser seguida d'una declaració"
+
+#: parse.y:3590
+msgid "must have at least one catch per try block"
+msgstr "es deu tenir almenys un catch per cada bloc try"
+
+#: parse.y:3650
+msgid "ISO C++ forbids compound statements inside for initializations"
+msgstr "ISO C++ prohibeix les declaracions compostoses internes per a inicialitzacions"
+
+#. This helps us recover from really nasty
+#. parse errors, for example, a missing right
+#. parenthesis.
+#: parse.y:3737 parse.y:3747
+msgid "possibly missing ')'"
+msgstr "possible \")\" faltant"
+
+#: parse.y:3840
+msgid "type specifier omitted for parameter"
+msgstr "especificador de tipus omès per al paràmetre"
+
+#: parse.y:3849
+#, c-format
+msgid "`%E' is not a type, use `typename %E' to make it one"
+msgstr "\"%E\" no és un tipus, usi \"typename %E\" per a fer-lo un tipus"
+
+#: parse.y:3851
+msgid "no type `%D' in `%T'"
+msgstr "no hi ha un tipus \"%D\" en \"%T\""
+
+#: parse.y:3854
+#, c-format
+msgid "type specifier omitted for parameter `%E'"
+msgstr "es va ometre el especificador per al paràmetre \"%E\""
+
+#: parse.y:3862
+msgid "'%D' is used as a type, but is not defined as a type."
+msgstr "s'usa \"%D\" com un tipus, però no està definit com un tipus."
+
+#: cp/pt.c:284
+msgid "data member `%D' cannot be a member template"
+msgstr "les dades membres \"%D\" no poden ser un patró membre"
+
+#: cp/pt.c:296
+msgid "invalid member template declaration `%D'"
+msgstr "declaració del patró membre \"%D\" invàlida"
+
+#: cp/pt.c:691
+msgid "explicit specialization in non-namespace scope `%D'"
+msgstr "especialització explícita en l'àmbit \"%D\" que no és espai de noms"
+
+#: cp/pt.c:703
+msgid "enclosing class templates are not explicitly specialized"
+msgstr "les patrons de classe contingudes no són especialitzades explícitament"
+
+#: cp/pt.c:792 cp/pt.c:833
+msgid "specializing `%#T' in different namespace"
+msgstr "especialitzant \"%#T\" en diferents espais de noms"
+
+#: cp/pt.c:793 cp/pt.c:834
+msgid " from definition of `%#D'"
+msgstr " de la definició de \"%#D\""
+
+#: cp/pt.c:801
+msgid "specialization of `%T' after instantiation"
+msgstr "especialització de \"%T\" després de la instanciació"
+
+#: cp/pt.c:848
+msgid "specialization `%T' after instantiation `%T'"
+msgstr "especialització de \"%T\" després de la instanciació \"%T\""
+
+#: cp/pt.c:860
+msgid "explicit specialization of non-template `%T'"
+msgstr "especialització explícita de \"%T\" que no és patró"
+
+#: cp/pt.c:992
+msgid "specialization of %D after instantiation"
+msgstr "especialització de %D després de la instanciació"
+
+#: cp/pt.c:1096
+msgid "%s %+#D"
+msgstr "%s %+#D"
+
+#: cp/pt.c:1147
+msgid "`%D' is not a function template"
+msgstr "\"%D\" no és un patró de funció"
+
+#: cp/pt.c:1286
+msgid "template-id `%D' for `%+D' does not match any template declaration"
+msgstr "l'idenfificador de patró \"%D\" per a \"%+D\" no coincideix amb cap declaració de patró"
+
+#: cp/pt.c:1294
+msgid "ambiguous template specialization `%D' for `%+D'"
+msgstr "especialització de patró ambigua \"%D\" per a \"%+D\""
+
+#. This case handles bogus declarations like template <>
+#. template <class T> void f<int>();
+#: cp/pt.c:1521 cp/pt.c:1595
+msgid "template-id `%D' in declaration of primary template"
+msgstr "identificador de patró \"%D\" en la declaració del patró primari"
+
+#: cp/pt.c:1534
+msgid "template parameter list used in explicit instantiation"
+msgstr "es va usar una llista de paràmetres de patró en una instanciació explícita"
+
+#: cp/pt.c:1540
+msgid "definition provided for explicit instantiation"
+msgstr "es proveeix una definició per a instanciació explícita"
+
+#: cp/pt.c:1546
+msgid "too many template parameter lists in declaration of `%D'"
+msgstr "massa llistes de paràmetres de patró en la declaració de \"%D\""
+
+#: cp/pt.c:1562
+msgid "too few template parameter lists in declaration of `%D'"
+msgstr "molt poques llistes de paràmetres de patró en la declaració de \"%D\""
+
+#: cp/pt.c:1579
+msgid "explicit specialization not preceded by `template <>'"
+msgstr "especialització explícita no precedida per \"template <>\""
+
+#: cp/pt.c:1592
+msgid "partial specialization `%D' of function template"
+msgstr "especialització parcial \"%D\" del patró de funció"
+
+#: cp/pt.c:1624
+msgid "default argument specified in explicit specialization"
+msgstr "es va especificar un argument per omissió en l'especialització explícita"
+
+#: cp/pt.c:1628
+msgid "template specialization with C linkage"
+msgstr "especialització de patró amb enllaç C"
+
+#. From [temp.expl.spec]:
+#.
+#. If such an explicit specialization for the member
+#. of a class template names an implicitly-declared
+#. special member function (clause _special_), the
+#. program is ill-formed.
+#.
+#. Similar language is found in [temp.explicit].
+#: cp/pt.c:1715
+msgid "specialization of implicitly-declared special member function"
+msgstr "especialització de la funció membre especial declarada implícitament"
+
+#: cp/pt.c:1759
+msgid "no member function `%D' declared in `%T'"
+msgstr "la funció no membre \"%D\" es va declarar en \"%T\""
+
+#. There are two many template parameter lists.
+#: cp/pt.c:1909
+msgid "too many template parameter lists in declaration of `%T'"
+msgstr "massa llistes de paràmetres de patró en la declaració de \"%T\""
+
+#: cp/pt.c:2005
+msgid " shadows template parm `%#D'"
+msgstr " enfosquen el paràmetre de patró \"%#D\""
+
+#: cp/pt.c:2409
+msgid "template parameters not used in partial specialization:"
+msgstr "no s'usen els paràmetres de patró en l'especialització parcial:"
+
+#: cp/pt.c:2413
+msgid " `%D'"
+msgstr " \"%D\""
+
+#: cp/pt.c:2425
+msgid "partial specialization `%T' does not specialize any template arguments"
+msgstr "l'especialització parcial \"%T\" no especialitza cap argument de patró"
+
+#: cp/pt.c:2450
+#, c-format
+msgid "template argument `%E' involves template parameter(s)"
+msgstr "l'argument de patró \"%E\" involucra el(s) paràmetre(s) de patró"
+
+#: cp/pt.c:2494
+msgid "type `%T' of template argument `%E' depends on template parameter(s)"
+msgstr "el tipus \"%T\" de l'argument de patró \"%E\" depèn del(s) paràmetre(s) de patró"
+
+#: cp/pt.c:2582
+msgid "no default argument for `%D'"
+msgstr "no hi ha un argument per omissió per a \"%D\""
+
+#: cp/pt.c:2735
+msgid "template with C linkage"
+msgstr "patró amb enllaç C"
+
+#: cp/pt.c:2738
+msgid "template class without a name"
+msgstr "classe de patró sense nom"
+
+#: cp/pt.c:2815
+msgid "`%D' does not declare a template type"
+msgstr "\"%D\" no declara un tipus de patró"
+
+#: cp/pt.c:2821
+msgid "template definition of non-template `%#D'"
+msgstr "definició de patró de \"%#D\" que no és patró"
+
+#: cp/pt.c:2862
+msgid "expected %d levels of template parms for `%#D', got %d"
+msgstr "s'esperaven %d nivells de paràmetres de patró per a \"%#D\", es van obtenir %d"
+
+#: cp/pt.c:2874
+msgid "got %d template parameters for `%#D'"
+msgstr "es van obtenir %d paràmetres de patró per a \"%#D\""
+
+#: cp/pt.c:2877
+msgid "got %d template parameters for `%#T'"
+msgstr "es van obtenir %d paràmetres de patró per a \"%#T\""
+
+#: cp/pt.c:2879
+#, c-format
+msgid " but %d required"
+msgstr " però es requereixen %d"
+
+#: cp/pt.c:2962
+msgid "`%T' is not a template type"
+msgstr "\"%T\" no és un tipus patró"
+
+#: cp/pt.c:2978
+msgid "previous declaration `%D'"
+msgstr "declaració prèvia de \"%D\""
+
+#: cp/pt.c:2979
+#, c-format
+msgid "used %d template parameter%s instead of %d"
+msgstr "es van usar %d paràmetre%s de patró en lloc de %d"
+
+#: cp/pt.c:2995
+msgid "template parameter `%#D'"
+msgstr "paràmetre de patró \"%#D\""
+
+#: cp/pt.c:2996
+msgid "redeclared here as `%#D'"
+msgstr "redeclarat aquí com \"%#D\""
+
+#. We have in [temp.param]:
+#.
+#. A template-parameter may not be given default arguments
+#. by two different declarations in the same scope.
+#: cp/pt.c:3006
+msgid "redefinition of default argument for `%#D'"
+msgstr "redefinició de l'argument per omissió per a \"%#D\""
+
+#: cp/pt.c:3007
+msgid " original definition appeared here"
+msgstr " la definició original apareix aquí"
+
+#: cp/pt.c:3100
+#, c-format
+msgid "`%E' is not a valid template argument"
+msgstr "\"%E\" no és un argument de patró vàlid"
+
+#: cp/pt.c:3104
+msgid "it must be the address of a function with external linkage"
+msgstr "deu ser l'adreça d'una funció amb enllaç extern"
+
+#: cp/pt.c:3106
+msgid "it must be the address of an object with external linkage"
+msgstr "deu ser l'adreça d'un objecte amb enllaç extern"
+
+#: cp/pt.c:3110
+msgid "it must be a pointer-to-member of the form `&X::Y'"
+msgstr "deu ser un punter-a-membre de la forma \"&X::I\""
+
+#: cp/pt.c:3121
+#, c-format
+msgid "string literal %E is not a valid template argument because it is the address of an object with static linkage"
+msgstr "la cadena literal %E no és un argument vàlid de patró perquè és l'adreça d'un objecte amb enllaç estàtic"
+
+#: cp/pt.c:3133
+#, c-format
+msgid "address of non-extern `%E' cannot be used as template argument"
+msgstr "no es pot usar l'adreça de \"%E\" que no és extern com un argument de patró"
+
+#: cp/pt.c:3144
+#, c-format
+msgid "non-constant `%E' cannot be used as template argument"
+msgstr "\"%E\" que no és constant no es pot usar com un argument de patró"
+
+#: cp/pt.c:3151
+#, c-format
+msgid "object `%E' cannot be used as template argument"
+msgstr "l'objecte \"%E\" no es pot usar com un argument de patró"
+
+#: cp/pt.c:3526
+#, c-format
+msgid "to refer to a type member of a template parameter, use `typename %E'"
+msgstr "per a fer referència a un tipus membre d'un paràmetre de patró, usi \"typename %E\""
+
+#: cp/pt.c:3539 cp/pt.c:3555 cp/pt.c:3594
+msgid "type/value mismatch at argument %d in template parameter list for `%D'"
+msgstr "no coincideix el tipus/valor en l'argument %d en la llista de paràmetres de patró per a \"%D\""
+
+#: cp/pt.c:3542
+msgid " expected a constant of type `%T', got `%T'"
+msgstr " s'esperava una constant de tipus \"%T\", es va obtenir \"%T\""
+
+#: cp/pt.c:3546
+#, c-format
+msgid " expected a type, got `%E'"
+msgstr " s'esperava un tipus, es va obtenir \"%E\""
+
+#: cp/pt.c:3558
+msgid " expected a type, got `%T'"
+msgstr " s'esperava un tipus, es va obtenir \"%T\""
+
+#: cp/pt.c:3560
+msgid " expected a class template, got `%T'"
+msgstr " s'esperava un patró de classe, es va obtenir \"%T\""
+
+#: cp/pt.c:3596
+msgid " expected a template of type `%D', got `%D'"
+msgstr " s'esperava un patró de tipus \"%D\", es va obtenir \"%D\""
+
+#: cp/pt.c:3618
+msgid "template-argument `%T' uses anonymous type"
+msgstr "l'argument de patró \"%T\" usa un tipus anònim"
+
+#: cp/pt.c:3621
+msgid "template-argument `%T' uses local type `%T'"
+msgstr "l'argument de patró \"%T\" usa el tipus local \"%T\""
+
+#: cp/pt.c:3631
+msgid "template-argument `%T' is a variably modified type"
+msgstr "l'argument de patró \"%T\" és un tipus modificat variablement"
+
+#: cp/pt.c:3666
+msgid "could not convert template argument `%E' to `%T'"
+msgstr "no es pot convertir l'argument de patró \"%E\" a \"%T\""
+
+#: cp/pt.c:3710
+#, c-format
+msgid "wrong number of template arguments (%d, should be %d)"
+msgstr "nombre erroni d'arguments de patró (%d, deuria ser %d)"
+
+#: cp/pt.c:3714
+msgid "provided for `%D'"
+msgstr "proveït per \"%D\""
+
+#: cp/pt.c:3761
+#, c-format
+msgid "template argument %d is invalid"
+msgstr "l'argument de patró %d és invàlid"
+
+#: cp/pt.c:3997
+msgid "non-template used as template"
+msgstr "s'usa un no-patró com patró"
+
+#: cp/pt.c:4139
+msgid "`%T' is not a template"
+msgstr "\"%T\" no és un patró"
+
+#: cp/pt.c:4152
+msgid "non-template type `%T' used as a template"
+msgstr "s'usa el tipus \"%T\" que és no-patró com patró"
+
+#: cp/pt.c:4154
+msgid "for template declaration `%D'"
+msgstr "per a la declaració de patró \"%D\""
+
+#: cp/pt.c:4770
+msgid "template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN to increase the maximum) instantiating `%D'"
+msgstr "la profunditat d'instanciació del patró excedeix el màxim de %d (usi -ftemplate-depth-NN per a incrementar el màxim) al instanciar \"%D\""
+
+#: cp/pt.c:5247
+msgid "ambiguous class template instantiation for `%#T'"
+msgstr "instanciació de patró classe ambigua per a \"%#T\""
+
+#: cp/pt.c:5254
+msgid "%s %+#T"
+msgstr "%s %+#T"
+
+#: cp/pt.c:6284 cp/pt.c:6396
+msgid "instantiation of `%D' as type `%T'"
+msgstr "instanciació de \"%D\" com tipus \"%T\""
+
+#: cp/pt.c:6440
+msgid "invalid parameter type `%T'"
+msgstr "tipus de paràmetre \"%T\" invàlid"
+
+#: cp/pt.c:6442
+msgid "in declaration `%D'"
+msgstr "en la declaració \"%D\""
+
+#: cp/pt.c:6517
+msgid "creating pointer to member function of non-class type `%T'"
+msgstr "creant un punter a funció membre del tipus \"%T\" que no és classe"
+
+#: cp/pt.c:6680
+msgid "creating array with size zero"
+msgstr "creant la matriu amb grandària zero"
+
+#: cp/pt.c:6694
+#, c-format
+msgid "creating array with size zero (`%E')"
+msgstr "creant la matriu amb grandària zero (\"%E\")"
+
+#: cp/pt.c:6933
+msgid "forming reference to void"
+msgstr "formant la referència a void"
+
+#: cp/pt.c:6935
+msgid "forming %s to reference type `%T'"
+msgstr "formant %s per a referenciar al tipus \"%T\""
+
+#: cp/pt.c:6973
+msgid "creating pointer to member of non-class type `%T'"
+msgstr "creant un punter al membre del tipus \"%T\" que no és classe"
+
+#: cp/pt.c:6979
+msgid "creating pointer to member reference type `%T'"
+msgstr "creant un punter al membre de referència de tipus \"%T\""
+
+#: cp/pt.c:7057
+msgid "creating array of `%T'"
+msgstr "creant la matriu de \"%T\""
+
+#: cp/pt.c:7100
+msgid "`%T' is not a class, struct, or union type"
+msgstr "\"%T\" no és de tipus classe, struct o union"
+
+#: cp/pt.c:7213
+#, c-format
+msgid "use of `%s' in template"
+msgstr "ús de \"%s\" en el patró"
+
+#: cp/pt.c:7975
+msgid "type `%T' composed from a local class is not a valid template-argument"
+msgstr "el tipus \"%T\" composat des d'una classe local no és un argument de patró vàlid"
+
+#: cp/pt.c:7976
+msgid " trying to instantiate `%D'"
+msgstr " tractant d'instanciar \"%D\""
+
+#: cp/pt.c:8421
+msgid "incomplete type unification"
+msgstr "unificació de tipus incomplet"
+
+#: cp/pt.c:9387
+#, c-format
+msgid "use of `%s' in template type unification"
+msgstr "ús de \"%s\" en la unificació de tipus de patró"
+
+#: cp/pt.c:9821 cp/pt.c:9893
+msgid "explicit instantiation of non-template `%#D'"
+msgstr "instanciació explícita de \"%#D\" que no és patró"
+
+#: cp/pt.c:9837 cp/pt.c:9888
+msgid "no matching template for `%D' found"
+msgstr "no es troba una patró coincident per a \"%D\""
+
+#: cp/pt.c:9843
+msgid "explicit instantiation of `%#D'"
+msgstr "instanciació explícita de \"%#D\""
+
+#: cp/pt.c:9880
+msgid "duplicate explicit instantiation of `%#D'"
+msgstr "instanciació explícita duplicada de \"%#D\""
+
+#: cp/pt.c:9905
+msgid "ISO C++ forbids the use of `extern' on explicit instantiations"
+msgstr "ISO C++ prohibeix l'ús de \"extern\" en instanciacions explícites"
+
+#: cp/pt.c:9909 cp/pt.c:9999
+msgid "storage class `%D' applied to template instantiation"
+msgstr "classe d'emmagatzematge \"%D\" aplicada a la instanciació d'un patró"
+
+#: cp/pt.c:9966
+msgid "explicit instantiation of non-template type `%T'"
+msgstr "instanciació explícita del tipus \"%T\" del tipus no-patró"
+
+#: cp/pt.c:9980
+msgid "explicit instantiation of `%#T' before definition of template"
+msgstr "instanciació explícita de \"%#T\" abans de la definició del patró"
+
+#: cp/pt.c:9988
+#, c-format
+msgid "ISO C++ forbids the use of `%s' on explicit instantiations"
+msgstr "ISO C++ prohibeix l'ús de \"%s\" en les instanciacions explícites"
+
+#: cp/pt.c:10032
+msgid "duplicate explicit instantiation of `%#T'"
+msgstr "instanciació explícita duplicada de \"%#T\""
+
+#: cp/pt.c:10412
+msgid "explicit instantiation of `%D' but no definition available"
+msgstr "instanciació explícita de \"%D\" però no hi ha una definició disponible"
+
+#: cp/pt.c:10815
+msgid "`%#T' is not a valid type for a template constant parameter"
+msgstr "\"%#T\" no és un tipus vàlid per a un paràmetre constant de patró"
+
+#: cp/repo.c:271
+msgid "-frepo must be used with -c"
+msgstr "-frepo deu ser usat amb -c"
+
+#: cp/repo.c:361
+#, c-format
+msgid "mysterious repository information in %s"
+msgstr "informació de \"repository\" misteriosa en %s"
+
+#: cp/repo.c:376
+#, c-format
+msgid "can't create repository information file `%s'"
+msgstr "no es pot crear el fitxer d'informació de \"repository\" \"%s\""
+
+#: cp/rtti.c:240
+msgid "cannot use typeid with -fno-rtti"
+msgstr "no es pot usar typeid sense -fno-rtti"
+
+#: cp/rtti.c:246
+msgid "must #include <typeinfo> before using typeid"
+msgstr "deu fer #include <typeinfo> abans d'usar typeid"
+
+#: cp/rtti.c:320
+msgid "cannot create type information for type `%T' because its size is variable"
+msgstr "no es pot crear la informació de tipus per al tipus \"%T\" perquè la seva grandària és variable"
+
+#: cp/rtti.c:584 cp/rtti.c:598
+msgid "dynamic_cast of `%#D' to `%#T' can never succeed"
+msgstr "dynamic_cast de \"%#D\" a \"%#T\" mai podrà tenir èxit"
+
+#: cp/rtti.c:674
+msgid "cannot dynamic_cast `%E' (of type `%#T') to type `%#T' (%s)"
+msgstr "no es pot fer dynamic_cast \"%E\" (de tipus \"%#T\") al tipus \"%#T\" (%s)"
+
+#: cp/search.c:332
+msgid "`%T' is an ambiguous base of `%T'"
+msgstr "\"%T\" és una base ambigua de \"%T\""
+
+#: cp/search.c:350
+msgid "`%T' is an inaccessible base of `%T'"
+msgstr "\"%T\" és una base inaccessible de \"%T\""
+
+#. At parse time, we don't want to give this error, since
+#. we won't have enough state to make this kind of
+#. decision properly. But there are times (e.g., with
+#. enums in nested classes) when we do need to call
+#. this fn at parse time. So, in those cases, we pass
+#. complain as a 0 and just return a NULL_TREE.
+#: cp/search.c:1638
+msgid "assignment to non-static member `%D' of enclosing class `%T'"
+msgstr ""
+
+#: cp/search.c:2050
+msgid "adjusting pointers for covariant returns"
+msgstr "ajustant els punters per a retorns covariants"
+
+#: cp/search.c:2054 cp/search.c:2061
+msgid "invalid covariant return type for `%#D'"
+msgstr "tipus de retorn covariant invàlid per a \"%#D\""
+
+#: cp/search.c:2055
+msgid " overriding `%#D' (must be pointer or reference to class)"
+msgstr " substituint a \"%#D\" (deu ser punter o referència a una classe)"
+
+#: cp/search.c:2062
+msgid " overriding `%#D' (must use pointer or reference)"
+msgstr " substituint a \"%#D\" (deu ser punter o referència)"
+
+#: cp/search.c:2067
+msgid "conflicting return type specified for `%#D'"
+msgstr "tipus de devolució en conflicte especificats per a \"%#D\""
+
+#: cp/search.c:2068
+msgid " overriding `%#D'"
+msgstr " substituint \"%#D\""
+
+#: cp/search.c:2077
+#, c-format
+msgid "looser throw specifier for `%#F'"
+msgstr "especificador thrown més flexible per a \"%#F\""
+
+#: cp/search.c:2078
+#, c-format
+msgid " overriding `%#F'"
+msgstr " substituint \"%#F\""
+
+#. A static member function cannot match an inherited
+#. virtual member function.
+#: cp/search.c:2167
+msgid "`%#D' cannot be declared"
+msgstr "\"%#D\" no pot ser declarat"
+
+#: cp/search.c:2168
+msgid " since `%#D' declared in base class"
+msgstr " ja que es va declarar \"%#D\" en la classe base"
+
+#: cp/search.c:2309
+msgid "`%#D' needs a final overrider"
+msgstr "\"%#D\" necessita un substituent final"
+
+#: cp/semantics.c:919
+#, c-format
+msgid "type of asm operand `%E' could not be determined"
+msgstr "no es pot determinar el tipus de l'operant asm \"%E\""
+
+#: cp/semantics.c:1051
+msgid "ISO C++ does not permit named return values"
+msgstr "ISO C++ no permet valors de retorn nomenats"
+
+#: cp/semantics.c:1060
+msgid "return identifier `%D' already in place"
+msgstr "l'identificador de retorn \"%D\" ja està en el seu lloc"
+
+#: cp/semantics.c:1068
+msgid "can't redefine default return value for constructors"
+msgstr "no es pot redefinir el valor per omissió de retorn pels constructors"
+
+#: cp/semantics.c:1100
+msgid "only constructors take base initializers"
+msgstr ""
+
+#: cp/semantics.c:1343
+msgid "`this' is unavailable for static member functions"
+msgstr "\"this\" no està disponible per a funcions membre static"
+
+#: cp/semantics.c:1349
+msgid "invalid use of `this' in non-member function"
+msgstr "ús invàlid de \"this\" en la funció no membre"
+
+#: cp/semantics.c:1351
+msgid "invalid use of `this' at top level"
+msgstr "ús invàlid de \"this\" en el nivell principal"
+
+#: cp/semantics.c:1381
+msgid "calling type `%T' like a method"
+msgstr "cridant al tipus \"%T\" com un mètode"
+
+#: cp/semantics.c:1419
+msgid "destructor specifier `%T::~%T()' must have matching names"
+msgstr "el especificador del destructor \"%T::%T()\" deu tenir noms coincidents"
+
+#: cp/semantics.c:1425
+msgid "`%E' is not of type `%T'"
+msgstr "\"%E\" no és de tipus \"%T\""
+
+#: cp/semantics.c:1613
+msgid "template type parameters must use the keyword `class' or `typename'"
+msgstr "els paràmetres de tipus patró deu usar la paraula clau \"class\" o \"typename\""
+
+#: cp/semantics.c:1652
+msgid "invalid default template argument"
+msgstr ""
+
+#: cp/semantics.c:1694
+msgid "definition of `%#T' inside template parameter list"
+msgstr "definició de \"%#T\" dintre d'una llista de paràmetres de patró"
+
+#: cp/semantics.c:1710
+msgid "invalid definition of qualified type `%T'"
+msgstr "definició invàlida del tipus qualificat \"%T\""
+
+#: cp/semantics.c:2053
+msgid "invalid base-class specification"
+msgstr "especificació de classe base invàlida"
+
+#: cp/semantics.c:2062
+msgid "base class `%T' has cv qualifiers"
+msgstr "la classe base \"%T\" té qualificadors cv"
+
+#: cp/semantics.c:2093
+msgid "multiple declarators in template declaration"
+msgstr "múltiples declaradors en una declaració de patró"
+
+#: cp/semantics.c:2120
+#, c-format
+msgid "type of `%E' is unknown"
+msgstr "el tipus de \"%E\" és desconegut"
+
+#: cp/spew.c:225
+#, c-format
+msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
+msgstr "el nom d'identificador \"%s\" causa conflictes amb l'estratègia interna de nomenatge del C++ de GNU"
+
+#: cp/spew.c:1002 cp/spew.c:1340
+msgid "parse error at end of saved function text"
+msgstr "error de decodificació al final del text de la funció guardada"
+
+#: cp/spew.c:1090 cp/spew.c:1178
+msgid "%Hend of file read inside definition"
+msgstr ""
+
+#: cp/spew.c:1121
+msgid "parse error in method specification"
+msgstr "error de decodificació en l'especificació del mètode"
+
+#: cp/spew.c:1161
+msgid "function body for constructor missing"
+msgstr "falta el cos de la funció pel constructor"
+
+#: cp/spew.c:1262
+msgid "%Hend of file read inside default argument"
+msgstr "%Hlectura de final de fitxer dintre de l'argument per defecte"
+
+#: cp/spew.c:1419
+msgid "circular dependency in default args of `%#D'"
+msgstr "dependència circular en els arguments per omissió de \"%#D\""
+
+#: cp/spew.c:1483
+msgid "invalid type `%T' for default argument to `%T'"
+msgstr "tipus \"%T\" invàlid per a l'argument per omissió de \"%T\""
+
+#: cp/spew.c:1548
+#, c-format
+msgid "%s before `%s'"
+msgstr "%s abans de \"%s\""
+
+#: cp/spew.c:1550
+#, c-format
+msgid "%s before `%c'"
+msgstr "%s abans de \"%c\""
+
+#: cp/spew.c:1552
+#, c-format
+msgid "%s before `\\%o'"
+msgstr "%s abans de \"\\%o\""
+
+#: cp/spew.c:1555
+#, c-format
+msgid "%s before `%s' token"
+msgstr "%s abans del testimoni \"%s\""
+
+#: cp/tree.c:263 cp/tree.c:275
+#, c-format
+msgid "non-lvalue in %s"
+msgstr "non-lvalue dintre %s"
+
+#: cp/tree.c:562
+msgid "`%V' qualifiers cannot be applied to `%T'"
+msgstr "els qualificadors \"%V\" no es poden aplicar a \"%T\""
+
+#: cp/tree.c:1941
+#, c-format
+msgid "`%s' attribute can only be applied to Java class definitions"
+msgstr "l'atribut \"%s\" només es pot aplicar a definicions de classes Java"
+
+#: cp/tree.c:1971
+#, c-format
+msgid "`%s' attribute can only be applied to class definitions"
+msgstr "l'atribut \"%s\" sol es pot aplicar a definicions de classe"
+
+#: cp/tree.c:1977
+#, c-format
+msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default"
+msgstr "\"%s\" és obsolet; les vtables de g++ ara són compatibles amb COM per omissió"
+
+#: cp/tree.c:2002
+msgid "requested init_priority is not an integer constant"
+msgstr "la init_priority sol·licitada no és una constant entera"
+
+#: cp/tree.c:2023
+#, c-format
+msgid "can only use `%s' attribute on file-scope definitions of objects of class type"
+msgstr "sol es pot usar l'atribut \"%s\" en definicions de rang de fitxer d'objectes de tipus class"
+
+#: cp/tree.c:2031
+msgid "requested init_priority is out of range"
+msgstr "la init_priority sol·licitada està fora de rang"
+
+#: cp/tree.c:2041
+msgid "requested init_priority is reserved for internal use"
+msgstr "la init_priority sol·licitada està reservada per a ús intern"
+
+#: cp/tree.c:2051
+#, c-format
+msgid "`%s' attribute is not supported on this platform"
+msgstr "l'atribut \"%s\" no té suport en aquesta plataforma"
+
+#: cp/tree.c:2588
+#, c-format
+msgid "lang_* check: failed in %s, at %s:%d"
+msgstr "revisió lang_*: va fallar en %s, en %s:%d"
+
+#: cp/typeck.c:524
+#, c-format
+msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
+msgstr "ISO C++ prohibeix %s entre punters de tipus \"void *\" i punters a funcions"
+
+#: cp/typeck.c:545
+msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+msgstr "%s entre diferents tipus de punter \"%T\" i \"%T\" manca d'una conversió"
+
+#: cp/typeck.c:1436
+msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
+msgstr "ISO C++ prohibeix la conversió de \"%#T\" a \"(...)\""
+
+#: cp/typeck.c:1514
+#, c-format
+msgid "invalid application of `%s' to a member function"
+msgstr "aplicació invàlida de \"%s\" a una funció membre"
+
+#: cp/typeck.c:1520
+#, c-format
+msgid "invalid application of `%s' to non-static member"
+msgstr "ús invàlid de \"%s\" en un membre no static"
+
+#: cp/typeck.c:1538
+msgid "sizeof applied to a bit-field"
+msgstr "sizeof aplicat a un camp de bits"
+
+#: cp/typeck.c:1541
+msgid "ISO C++ forbids applying `sizeof' to an expression of function type"
+msgstr "ISO C++ prohibeix l'aplicació de \"sizeof\" a una expressió de tipus de funció"
+
+#: cp/typeck.c:1759
+msgid "deprecated conversion from string constant to `%T'"
+msgstr "conversió obsoleta d'una constant de cadena a \"%T\""
+
+#: cp/typeck.c:1890 cp/typeck.c:2122
+msgid "request for member `%D' in `%E', which is of non-class type `%T'"
+msgstr "sol·licitud pel membre \"%D\" en \"%E\", el qual és del tipus no agregat \"%T\""
+
+#: cp/typeck.c:1916
+msgid "`%D' is not a member of `%T'"
+msgstr "\"%D\" no és un membre de \"%T\""
+
+#: cp/typeck.c:1957 cp/typeck.c:1978
+msgid "invalid access to non-static data member `%D' of NULL object"
+msgstr "accés invàlid a dades del membre que no és static \"%D\" de l'objecte NULL"
+
+#: cp/typeck.c:1959 cp/typeck.c:1980
+msgid "(perhaps the `offsetof' macro was used incorrectly)"
+msgstr ""
+
+#: cp/typeck.c:2168
+msgid "`%D::%D' is not a member of `%T'"
+msgstr "\"%D::%D\" no és un membre de \"%T\""
+
+#: cp/typeck.c:2179
+msgid "`%T' is not a base of `%T'"
+msgstr "\"%T\" no és una base de \"%T\""
+
+#: cp/typeck.c:2199
+msgid "destructor specifier `%T::~%T' must have matching names"
+msgstr "el especificador del destructor \"%T::~%T\" deu tenir noms coincidents"
+
+#: cp/typeck.c:2205
+msgid "type `%T' has no destructor"
+msgstr "el tipus \"%T\" no té destructor"
+
+#: cp/typeck.c:2244
+msgid "`%D' is not a member template function"
+msgstr "\"%D\" no és una funció patró membre"
+
+#. A pointer to incomplete type (other than cv void) can be
+#. dereferenced [expr.unary.op]/1
+#: cp/typeck.c:2338
+msgid "`%T' is not a pointer-to-object type"
+msgstr "\"%T\" no és de tipus punter-a-objecte"
+
+#: cp/typeck.c:2365
+#, c-format
+msgid "invalid use of `%s' on pointer to member"
+msgstr "ús invàlid de \"%s\" en punter a membre"
+
+#: cp/typeck.c:2371
+msgid "invalid type argument"
+msgstr "argument de tipus invàlid"
+
+#: cp/typeck.c:2474
+msgid "ISO C++ forbids subscripting non-lvalue array"
+msgstr "ISO C++ prohibeix el subindici d'una matriu de l-valors"
+
+#: cp/typeck.c:2485
+msgid "subscripting array declared `register'"
+msgstr "es va declarar el subindici de la matriu com \"register\""
+
+#: cp/typeck.c:2570
+#, c-format
+msgid "object missing in use of `%E'"
+msgstr "falta un objecte en \"%E\""
+
+#: cp/typeck.c:2674
+msgid "ISO C++ forbids calling `::main' from within program"
+msgstr "ISO C++ prohibeix la cridada \"::main\" dintre del mateix programa"
+
+#: cp/typeck.c:2699
+#, c-format
+msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'"
+msgstr "es deu usar .* o ->* en la cridada a la funció punter-a-membre en \"%E (...)\""
+
+#: cp/typeck.c:2712
+#, c-format
+msgid "`%E' cannot be used as a function"
+msgstr "no es pot usar \"%E\" com una funció"
+
+#: cp/typeck.c:2824
+msgid "too many arguments to %s `%+#D'"
+msgstr "massa arguments per a %s \"%+#D\""
+
+#: cp/typeck.c:2865
+msgid "parameter type of called function is incomplete"
+msgstr "el tipus del paràmetre de la funció cridada és incomplet"
+
+#: cp/typeck.c:2928
+msgid "too few arguments to %s `%+#D'"
+msgstr "molt pocs arguments per a %s \"%+#D\""
+
+#: cp/typeck.c:3056 cp/typeck.c:3066
+msgid "assuming cast to type `%T' from overloaded function"
+msgstr "assumint la conversió al tipus \"%T\" des de la funció sobrecarregada"
+
+#: cp/typeck.c:3126
+#, c-format
+msgid "division by zero in `%E / 0'"
+msgstr "divisió per zero en \"%E / 0\""
+
+#: cp/typeck.c:3128
+#, c-format
+msgid "division by zero in `%E / 0.'"
+msgstr "divisió per zero en \"%E / 0.\""
+
+#: cp/typeck.c:3158
+#, c-format
+msgid "division by zero in `%E %% 0'"
+msgstr "divisió per zero en \"%E %% 0\""
+
+#: cp/typeck.c:3160
+#, c-format
+msgid "division by zero in `%E %% 0.'"
+msgstr "divisió per zero en \"%E %% 0.\""
+
+#: cp/typeck.c:3240
+#, c-format
+msgid "%s rotate count is negative"
+msgstr "el compte de rotació %s és negatiu"
+
+#: cp/typeck.c:3243
+#, c-format
+msgid "%s rotate count >= width of type"
+msgstr "el compte de rotació %s >= amplària del tipus"
+
+#: cp/typeck.c:3274 cp/typeck.c:3279 cp/typeck.c:3370 cp/typeck.c:3375
+msgid "ISO C++ forbids comparison between pointer and integer"
+msgstr "ISO C++ prohibeix la comparança entre punters i enters"
+
+#: cp/typeck.c:3553
+msgid "comparison between types `%#T' and `%#T'"
+msgstr "comparança entre els tipus \"%#T\" i \"%#T\""
+
+#: cp/typeck.c:3589
+msgid "comparison between signed and unsigned integer expressions"
+msgstr "comparança entre expressions enteres signed i unsigned"
+
+#: cp/typeck.c:3654
+msgid "invalid operands of types `%T' and `%T' to binary `%O'"
+msgstr "operadors invàlids de tipus \"%T\" i \"%T\" per al binari \"%O\""
+
+#. Some sort of arithmetic operation involving NULL was
+#. performed. Note that pointer-difference and pointer-addition
+#. have already been handled above, and so we don't end up here in
+#. that case.
+#: cp/typeck.c:3676
+msgid "NULL used in arithmetic"
+msgstr "es va usar NULL en l'aritmètica"
+
+#: cp/typeck.c:3743
+msgid "ISO C++ forbids using pointer of type `void *' in subtraction"
+msgstr "ISO C++ prohibeix l'ús d'un punter de tipus \"void *\" en la substracció"
+
+#: cp/typeck.c:3745
+msgid "ISO C++ forbids using pointer to a function in subtraction"
+msgstr "ISO C++ prohibeix l'ús d'un punter a una funció en la substracció"
+
+#: cp/typeck.c:3747
+msgid "ISO C++ forbids using pointer to a method in subtraction"
+msgstr "ISO C++ prohibeix l'ús d'un punter a un mètode en la substracció"
+
+#: cp/typeck.c:3749
+msgid "ISO C++ forbids using pointer to a member in subtraction"
+msgstr "ISO C++ prohibeix l'ús d'un punter a un membre en la substracció"
+
+#: cp/typeck.c:3761
+msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
+msgstr "ús invàlid d'un punter a un tipus incomplet en aritmètica de punters"
+
+#: cp/typeck.c:3821
+#, c-format
+msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id."
+msgstr ""
+
+#: cp/typeck.c:3827
+#, c-format
+msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function"
+msgstr ""
+
+#: cp/typeck.c:3850
+msgid "taking address of temporary"
+msgstr "prenent l'adreça del temporal"
+
+#: cp/typeck.c:4091
+#, c-format
+msgid "ISO C++ forbids %sing an enum"
+msgstr "ISO C++ prohibeix %sing un enum"
+
+#: cp/typeck.c:4103
+msgid "cannot %s a pointer to incomplete type `%T'"
+msgstr "no es pot %s un punter a un tipus incomplet \"%T\""
+
+#: cp/typeck.c:4110
+msgid "ISO C++ forbids %sing a pointer of type `%T'"
+msgstr "ISO C++ prohibeix %sing un punter de tipus \"%T\""
+
+#: cp/typeck.c:4135
+msgid "cast to non-reference type used as lvalue"
+msgstr "s'usa la conversió a un tipus no referenciat com un lvalue"
+
+#: cp/typeck.c:4169
+msgid "invalid use of `--' on bool variable `%D'"
+msgstr "ús invàlid de \"--\" en la variable booleana \"%D\""
+
+#. ARM $3.4
+#: cp/typeck.c:4202
+msgid "ISO C++ forbids taking address of function `::main'"
+msgstr "ISO C++ prohibeix prendre l'adreça de la funció \"::main\""
+
+#. An expression like &memfn.
+#: cp/typeck.c:4269
+msgid "ISO C++ forbids taking the address of an unqualified non-static member function to form a pointer to member function. Say `&%T::%D'"
+msgstr "ISO C++ prohibeix prendre l'adreça d'una funció membre no estàtica sense qualificar per a formar un punter a la funció membre. Com \"&%T::%D\""
+
+#: cp/typeck.c:4271
+msgid "ISO C++ forbids taking the address of a bound member function to form a pointer to member function. Say `&%T::%D'"
+msgstr "ISO C++ prohibeix prendre l'adreça d'una funció membre limitada per a formar un punter a la funció membre. Com \"&%T::%D\""
+
+#: cp/typeck.c:4295
+msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression"
+msgstr "ISO C++ prohibeix prendre l'adreça d'una conversió a una expressió no lvalue"
+
+#: cp/typeck.c:4324
+msgid "attempt to take address of bit-field structure member `%D'"
+msgstr ""
+
+#: cp/typeck.c:4444
+msgid "taking address of destructor"
+msgstr "prenent l'adreça del destructor"
+
+#: cp/typeck.c:4457
+msgid "taking address of bound pointer-to-member expression"
+msgstr "prenent l'adreça de l'expressió limitada punter-a-membre"
+
+#: cp/typeck.c:4473
+msgid "cannot create pointer to reference member `%D'"
+msgstr "no es pot crear un punter al membre referència \"%D\""
+
+#: cp/typeck.c:4536
+msgid "cannot take the address of `this', which is an rvalue expression"
+msgstr "no es pot prendre l'adreça de \"this\" que és una expressió rvalue"
+
+#: cp/typeck.c:4555
+msgid "address requested for `%D', which is declared `register'"
+msgstr "es va sol·licitar l'adreça de \"%D\", el qual es va declarar com \"register\""
+
+#: cp/typeck.c:4682
+msgid "static_cast from type `%T' to type `%T' casts away constness"
+msgstr "static_cast del tipus \"%T\" al tipus \"%T\" proscriu la constància"
+
+#: cp/typeck.c:4871
+msgid "invalid static_cast from type `%T' to type `%T'"
+msgstr "static_cast invàlid del tipus \"%T\" al tipus \"%T\""
+
+#: cp/typeck.c:4910
+msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'"
+msgstr "reinterpret_cast invàlid d'una expressió rvalue del tipus \"%T\" al tipus \"%T\""
+
+#: cp/typeck.c:4930
+msgid "reinterpret_cast from `%T' to `%T' loses precision"
+msgstr "reinterpret_cast de \"%T\" a \"%T\" perd precisió"
+
+#: cp/typeck.c:4943
+msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
+msgstr "reinterpret_cast de \"%T\" a \"%T\" proscriu a const (o volatile)"
+
+#: cp/typeck.c:4952
+msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object"
+msgstr "ISO C++ prohibeix la conversió entre entre punter a funció i punter a objecte"
+
+#: cp/typeck.c:4958
+msgid "invalid reinterpret_cast from type `%T' to type `%T'"
+msgstr "reinterpret_cast invàlid del tipus \"%T\" al tipus \"%T\""
+
+#: cp/typeck.c:4985
+msgid "invalid use of const_cast with type `%T', which is not a pointer, reference, nor a pointer-to-data-member type"
+msgstr "ús invàlid de const_cast amb tipus \"%T\", que no és punter, referència, ni un tipus punter-a-dades-membres"
+
+#: cp/typeck.c:4988
+msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type"
+msgstr "ús invàlid de const_cast amb tipus \"%T\", el qual és un punter o referència a un tipus de funció"
+
+#: cp/typeck.c:5011
+msgid "invalid const_cast of an rvalue of type `%T' to type `%T'"
+msgstr "const_cast invàlid d'un rvalue de tipus \"%T\" al tipus \"%T\""
+
+#: cp/typeck.c:5027
+msgid "invalid const_cast from type `%T' to type `%T'"
+msgstr "const_cast invàlid del tipus \"%T\" al tipus \"%T\""
+
+#: cp/typeck.c:5069 cp/typeck.c:5074
+msgid "ISO C++ forbids casting to an array type `%T'"
+msgstr "ISO C++ prohibeix la conversió a un tipus de matriu \"%T\""
+
+#: cp/typeck.c:5082
+msgid "invalid cast to function type `%T'"
+msgstr "conversió invàlida al tipus de funció \"%T\""
+
+#: cp/typeck.c:5138
+msgid "cast from `%T' to `%T' discards qualifiers from pointer target type"
+msgstr "la conversió de \"%T\" a \"%T\" descarta els qualificadors del tipus de la destinació del punter"
+
+#: cp/typeck.c:5184
+msgid "cast from `%T' to `%T' increases required alignment of target type"
+msgstr "la conversió de \"%T\" a \"%T\" incrementa l'alineació requerida del tipus de la destinació"
+
+#: cp/typeck.c:5357
+msgid " in evaluation of `%Q(%#T, %#T)'"
+msgstr " en l'avaluació de \"%Q(%#T, %#T)\""
+
+#: cp/typeck.c:5399
+msgid "ISO C++ forbids cast to non-reference type used as lvalue"
+msgstr "ISO C++ prohibeix la conversió a un tipus no referent usat com lvalue"
+
+#: cp/typeck.c:5463
+msgid "incompatible types in assignment of `%T' to `%T'"
+msgstr "tipus incompatible en l'assignació de \"%T\" a \"%T\""
+
+#: cp/typeck.c:5470
+msgid "ISO C++ forbids assignment of arrays"
+msgstr "ISO C++ prohibeix l'assignació de matrius"
+
+#: cp/typeck.c:5577
+msgid " in pointer to member function conversion"
+msgstr " en la conversió del punter a funció membre"
+
+#: cp/typeck.c:5585
+msgid " in pointer to member conversion"
+msgstr " en la conversió del punter a membre"
+
+#. This is a reinterpret cast, we choose to do nothing.
+#: cp/typeck.c:5596 cp/typeck.c:5615
+msgid "pointer to member cast via virtual base `%T' of `%T'"
+msgstr "punter a la conversió membre a través de la base virtual \"%T\" de \"%T\""
+
+#: cp/typeck.c:5619
+msgid "pointer to member conversion via virtual base `%T' of `%T'"
+msgstr "punter a la conversió membre a través de la base virtual \"%T\" de \"%T\""
+
+#: cp/typeck.c:5695
+msgid "invalid conversion to type `%T' from type `%T'"
+msgstr "conversió invàlida del tipus \"%T\" a partir del tipus \"%T\""
+
+#: cp/typeck.c:5860
+msgid "passing NULL used for non-pointer %s %P of `%D'"
+msgstr "passant NULL usat per al no punter %s %P de \"%D\""
+
+#: cp/typeck.c:5863
+msgid "%s to non-pointer type `%T' from NULL"
+msgstr "%s al tipus \"%T\" que no és punter des de NULL"
+
+#: cp/typeck.c:5871
+msgid "passing `%T' for %s %P of `%D'"
+msgstr "passant \"%T\" per a %s %P de \"%D\""
+
+#: cp/typeck.c:5874
+msgid "%s to `%T' from `%T'"
+msgstr "%s a \"%T\" des de \"%T\""
+
+#: cp/typeck.c:5884
+msgid "passing negative value `%E' for %s %P of `%D'"
+msgstr "passant el valor negatiu `%E' per a %s %P de \"%D\""
+
+#: cp/typeck.c:5887
+msgid "%s of negative value `%E' to `%T'"
+msgstr "%s de valor negatiu `%I' a \"%T\""
+
+#: cp/typeck.c:5982
+msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'"
+msgstr "no es pot convertir \"%T\" a \"%T\" per a l'argument `%P' per a \"%D\""
+
+#: cp/typeck.c:5985
+msgid "cannot convert `%T' to `%T' in %s"
+msgstr "no es pot convertir \"%T\" a \"%T\" en %s"
+
+#: cp/typeck.c:6073 cp/typeck.c:6075
+msgid "in passing argument %P of `%+D'"
+msgstr "en el pas de l'argument %P de \"%+D\""
+
+#: cp/typeck.c:6190
+msgid "returning reference to temporary"
+msgstr "retornant la referència al temporal"
+
+#: cp/typeck.c:6197
+msgid "reference to non-lvalue returned"
+msgstr "es va retornar una referència a un non-lvalue"
+
+#: cp/typeck.c:6209
+msgid "reference to local variable `%D' returned"
+msgstr "es va retornar una referència a la variable local \"%D\""
+
+#: cp/typeck.c:6212
+msgid "address of local variable `%D' returned"
+msgstr "es va retornar l'adreça de la variable local \"%D\""
+
+#: cp/typeck.c:6243
+msgid "returning a value from a destructor"
+msgstr "retornant un valor d'un destructor"
+
+#. If a return statement appears in a handler of the
+#. function-try-block of a constructor, the program is ill-formed.
+#: cp/typeck.c:6251
+msgid "cannot return from a handler of a function-try-block of a constructor"
+msgstr "no es pot retornar d'un gestor d'una function-try-block d'un constructor"
+
+#. You can't return a value from a constructor.
+#: cp/typeck.c:6254
+msgid "returning a value from a constructor"
+msgstr "retornant un valor d'un constructor"
+
+#: cp/typeck.c:6271
+msgid "return-statement with no value, in function declared with a non-void return type"
+msgstr "return-statement sense valor, en una funció declarada amb un tipus de retorn non-void"
+
+#: cp/typeck.c:6287
+msgid "return-statement with a value, in function declared with a void return type"
+msgstr "return-statement amb un valor, en una funció declarada amb un tipus de retorn void"
+
+#: cp/typeck.c:6308
+msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)"
+msgstr "\"operator new\" no deu regressar NULL a menys que es declari \"throw()\" (o -fcheck-new estigui en efecte)"
+
+#: cp/typeck2.c:54
+msgid "type `%T' is not a base type for type `%T'"
+msgstr "el tipus \"%T\" no és un tipus base per al tipus \"%T\""
+
+#: cp/typeck2.c:157
+msgid "cannot declare variable `%D' to be of type `%T'"
+msgstr "no es pot declarar que la variable \"%D\" sigui de tipus \"%T\""
+
+#: cp/typeck2.c:160
+msgid "cannot declare parameter `%D' to be of type `%T'"
+msgstr "no es pot declarar que el paràmetre \"%D\" sigui de tipus \"%T\""
+
+#: cp/typeck2.c:163
+msgid "cannot declare field `%D' to be of type `%T'"
+msgstr "no es pot declarar que el camp \"%D\" sigui de tipus \"%T\""
+
+#: cp/typeck2.c:167
+msgid "invalid return type for member function `%#D'"
+msgstr "tipus de retorn invàlid per a la funció membre \"%#D\""
+
+#: cp/typeck2.c:169
+msgid "invalid return type for function `%#D'"
+msgstr "tipus de retorn invàlid per a la funció \"%#D\""
+
+#: cp/typeck2.c:172
+msgid "cannot allocate an object of type `%T'"
+msgstr "no es pot assignar un objecte de tipus \"%T\""
+
+#: cp/typeck2.c:179
+msgid " because the following virtual functions are abstract:"
+msgstr " perquè les següents funcions virtual són abstractes:"
+
+#: cp/typeck2.c:181
+msgid "\t%#D"
+msgstr "\t%#D"
+
+#: cp/typeck2.c:184
+msgid " since type `%T' has abstract virtual functions"
+msgstr " ja que el tipus \"%T\" té funcions virtuals abstractes"
+
+#: cp/typeck2.c:338
+msgid "constructor syntax used, but no constructor declared for type `%T'"
+msgstr "es va usar la sintaxi de constructor, però no es va declarar un constructor per al tipus \"%T\""
+
+#: cp/typeck2.c:349
+msgid "comma expression used to initialize return value"
+msgstr "es va usar una expressió coma per a inicialitzar el valor de retorn"
+
+#: cp/typeck2.c:358
+msgid "cannot initialize arrays using this syntax"
+msgstr "no es poden inicialitzar matrius usant aquesta sintaxi"
+
+#: cp/typeck2.c:473
+msgid "initializing array with parameter list"
+msgstr "inicialitzant una matriu amb una llista de paràmetres"
+
+#: cp/typeck2.c:529
+msgid "initializer for scalar variable requires one element"
+msgstr "el inicialitzador per a una variable escalar requereix un element"
+
+#: cp/typeck2.c:536
+msgid "braces around scalar initializer for `%T'"
+msgstr "parèntesis al voltant del inicialitzador per a \"%T\""
+
+#: cp/typeck2.c:539
+msgid "ignoring extra initializers for `%T'"
+msgstr "ignorant els inicialitzadors extra per a \"%T\""
+
+#: cp/typeck2.c:551
+msgid "variable-sized object of type `%T' may not be initialized"
+msgstr "un objecte de grandària variable de tipus \"%T\" no pot ser inicialitzat"
+
+#: cp/typeck2.c:561
+msgid "subobject of type `%T' must be initialized by constructor, not by `%E'"
+msgstr "el subobjecte de tipus \"%T\" deu ser inicialitzat per un constructor, no per \"%E\""
+
+#: cp/typeck2.c:627
+msgid "aggregate has a partly bracketed initializer"
+msgstr "l'agregat té un inicialitzador amb parèntesis parcials"
+
+#: cp/typeck2.c:665 cp/typeck2.c:770
+msgid "non-trivial labeled initializers"
+msgstr "inicialitzadors etiquetats com no trivials"
+
+#: cp/typeck2.c:682
+msgid "non-empty initializer for array of empty elements"
+msgstr "inicialitzador no-buit per a una matriu d'elements buits"
+
+#: cp/typeck2.c:736
+msgid "initializer list for object of class with virtual base classes"
+msgstr "llista d'inicialitzadors per a un objecte d'una classe amb classes base virtual"
+
+#: cp/typeck2.c:742
+msgid "initializer list for object of class with base classes"
+msgstr "llista d'inicialitzadors per a un objecte d'una classe amb classes base"
+
+#: cp/typeck2.c:748
+msgid "initializer list for object using virtual functions"
+msgstr "llista d'inicialitzadors per a un objecte que usa funcions virtuals"
+
+#: cp/typeck2.c:811 cp/typeck2.c:827
+msgid "missing initializer for member `%D'"
+msgstr "falta el inicialitzador pel membre \"%D\""
+
+#: cp/typeck2.c:816
+msgid "uninitialized const member `%D'"
+msgstr "membre const \"%D\" sense inicialitzar"
+
+#: cp/typeck2.c:818
+msgid "member `%D' with uninitialized const fields"
+msgstr "membre \"%D\" amb camps const sense inicialitzar"
+
+#: cp/typeck2.c:821
+msgid "member `%D' is uninitialized reference"
+msgstr "el membre \"%D\" és una referència sense inicialitzar"
+
+#: cp/typeck2.c:868
+msgid "index value instead of field name in union initializer"
+msgstr "valor d'índex en lloc del nom del camp en el inicialitzador de union"
+
+#: cp/typeck2.c:880
+msgid "no field `%D' in union being initialized"
+msgstr "no existeix el camp \"%D\" en el union que s'està inicialitzant"
+
+#: cp/typeck2.c:888
+msgid "union `%T' with no named members cannot be initialized"
+msgstr "no es pot inicialitzar el union \"%T\" sense membres nomenats"
+
+#: cp/typeck2.c:924
+msgid "excess elements in aggregate initializer"
+msgstr "excés d'elements en el inicialitzador agregat"
+
+#: cp/typeck2.c:1038
+msgid "circular pointer delegation detected"
+msgstr "es va detectar una delegació de punter circular"
+
+#: cp/typeck2.c:1051
+msgid "base operand of `->' has non-pointer type `%T'"
+msgstr "l'operant base de \"->\" té el tipus \"%T\" que no és punter"
+
+#: cp/typeck2.c:1065
+msgid "result of `operator->()' yields non-pointer result"
+msgstr "el resultat de \"operator->()\" produeix un resultat que no és punter"
+
+#: cp/typeck2.c:1067
+msgid "base operand of `->' is not a pointer"
+msgstr "l'operant base de \"->\" no és un punter"
+
+#: cp/typeck2.c:1133
+msgid "`%E' cannot be used as a member pointer, since it is of type `%T'"
+msgstr "no es pot usar \"%E\" com un punter membre, perquè és de tipus \"%T\""
+
+#: cp/typeck2.c:1140
+msgid "cannot apply member pointer `%E' to `%E', which is of non-aggregate type `%T'"
+msgstr "no es pot aplicar el punter a membre \"%E\" a \"%E\", el qual és del tipus no agregat \"%T\""
+
+#: cp/typeck2.c:1149
+msgid "member type `%T::' incompatible with object type `%T'"
+msgstr "el tipus de membre \"%T::\" és incompatible amb el tipus objecte \"%T\""
+
+#: cp/typeck2.c:1186
+msgid "`%T' fails to be a typedef or built-in type"
+msgstr "\"%T\" falla al ser un typedef o un tipus built-in"
+
+#: cp/typeck2.c:1259
+#, c-format
+msgid "ISO C++ forbids defining types within %s"
+msgstr "ISO C++ prohibeix la definició de tipus dintre de %s"
+
+#: cp/typeck2.c:1384
+msgid "call to function `%D' which throws incomplete type `%#T'"
+msgstr "cridada a la funció \"%D\" la qual llança el tipus incomplet \"%#T\""
+
+#: cp/typeck2.c:1387
+msgid "call to function which throws incomplete type `%#T'"
+msgstr "cridada a una funció la qual llança el tipus incomplet \"%#T\""
+
+#. XXX Not i18n clean.
+#: cp/cp-tree.h:3936
+#, c-format
+msgid "%s is deprecated, please see the documentation for details"
+msgstr "%s és obsolet, per favor vegi la documentació per a més detalls"
+
+#: cp/lang-options.h:29
+msgid "Do not obey access control semantics"
+msgstr "No obeir les semàntiques de control d'accés"
+
+#: cp/lang-options.h:31
+msgid "Change when template instances are emitted"
+msgstr "Canviar quan s'emetin les instàncies del patró"
+
+#: cp/lang-options.h:36
+msgid "Check the return value of new"
+msgstr "Revisar el valor de retorn de new"
+
+#: cp/lang-options.h:39
+msgid "Reduce size of object files"
+msgstr "Reduir la grandària dels fitxers objecte"
+
+#: cp/lang-options.h:43
+msgid "Make string literals `char[]' instead of `const char[]'"
+msgstr "Fer que les cadenes literals siguin \"char[]\" en lloc de \"const char[]\""
+
+#: cp/lang-options.h:46
+msgid "Dump the entire translation unit to a file"
+msgstr "Buidar la unitat de traducció completa a un fitxer"
+
+#: cp/lang-options.h:48
+msgid "Do not inline member functions by default"
+msgstr "No fer inline per omissió a les funcions membre"
+
+#: cp/lang-options.h:51
+msgid "Do not generate run time type descriptor information"
+msgstr "No generar informació del tipus de descriptor en temps d'execució"
+
+#: cp/lang-options.h:56
+msgid "Do not generate code to check exception specifications"
+msgstr "No generar codi per a revisar excepcions d'especificacions"
+
+#: cp/lang-options.h:61
+msgid "Scope of for-init-statement vars extends outside"
+msgstr "L'àmbit de les variables de la declaració d'inici de for s'estén cap a fora"
+
+#: cp/lang-options.h:64
+msgid "Do not recognize GNU defined keywords"
+msgstr "No reconèixer les paraules claus definides per GNU"
+
+#: cp/lang-options.h:68
+msgid "Enable support for huge objects"
+msgstr "Activar el suport per a objectes enormes"
+
+#: cp/lang-options.h:72
+msgid "Export functions even if they can be inlined"
+msgstr "Exportar funcions encara si poden ser inline"
+
+#: cp/lang-options.h:75
+msgid "Only emit explicit template instantiations"
+msgstr "Emetre solament instanciacions explícites de patrons"
+
+#: cp/lang-options.h:78
+msgid "Only emit explicit instantiations of inline templates"
+msgstr "Emetre solament instanciacions explícites de patrons inline"
+
+#: cp/lang-options.h:84
+msgid "Don't pedwarn about uses of Microsoft extensions"
+msgstr "No avisar pedantment sobre els usos d'extensions Microsoft"
+
+#: cp/lang-options.h:87
+msgid "Recognize and/bitand/bitor/compl/not/or/xor"
+msgstr "Reconèixer and/bitand/bitor/compl/not/or/xor"
+
+#: cp/lang-options.h:91
+msgid "Disable optional diagnostics"
+msgstr "Desactivar els diagnòstics opcionals"
+
+#: cp/lang-options.h:93
+msgid "Downgrade conformance errors to warnings"
+msgstr "Degradar els errors de concordança a advertiments"
+
+#: cp/lang-options.h:96
+msgid "Enable automatic template instantiation"
+msgstr "Activar l'instanciació automàtica de patrons"
+
+#: cp/lang-options.h:101
+msgid "Display statistics accumulated during compilation"
+msgstr "Mostrar les estadístiques acumulades durant la compilació"
+
+#: cp/lang-options.h:104
+msgid "Specify maximum template instantiation depth"
+msgstr "Especificar la profunditat màxima d'instanciació de patrons"
+
+#: cp/lang-options.h:106
+msgid "Use __cxa_atexit to register destructors"
+msgstr "Usar __cxa_atexit per a registrar destructors"
+
+#: cp/lang-options.h:109
+msgid "Discard unused virtual functions"
+msgstr "Descartar funcions virtual sense usar"
+
+#: cp/lang-options.h:112
+msgid "Implement vtables using thunks"
+msgstr "Implementar vtables usant thunks"
+
+#: cp/lang-options.h:115
+msgid "Emit common-like symbols as weak symbols"
+msgstr "Emetre símbols comuns com símbols febles"
+
+#: cp/lang-options.h:118
+msgid "Emit cross referencing information"
+msgstr "Emetre informació de referència creuada"
+
+#: cp/lang-options.h:122
+msgid "Warn about inconsistent return types"
+msgstr "Avisar sobre tipus inconsistents de retorn"
+
+#: cp/lang-options.h:125
+msgid "Warn about overloaded virtual function names"
+msgstr "Avisar sobre noms de funcions virtual sobrecarregades"
+
+#: cp/lang-options.h:129
+msgid "Don't warn when all ctors/dtors are private"
+msgstr "No avisar quan tots els ctors/dtors són privats"
+
+#: cp/lang-options.h:131
+msgid "Warn about non virtual destructors"
+msgstr "Avisar sobre destructors no virtuals"
+
+#: cp/lang-options.h:134
+msgid "Warn when a function is declared extern, then inline"
+msgstr "Avisar quan una funció és declarada extern i després inline"
+
+#: cp/lang-options.h:137
+msgid "Warn when the compiler reorders code"
+msgstr "Avisar quan el compilador reordeni codi"
+
+#: cp/lang-options.h:140
+msgid "Warn when synthesis behavior differs from Cfront"
+msgstr "Avisar quan el comportament de síntesi difereixi de Cfront"
+
+#: cp/lang-options.h:144
+msgid "Don't warn when type converting pointers to member functions"
+msgstr "avisar quan el tipus converteix punters a funcions membre"
+
+#: cp/lang-options.h:146
+msgid "Warn about violations of Effective C++ style rules"
+msgstr "Avisar violacions de regles d'estil de Effective C++"
+
+#: cp/lang-options.h:149
+msgid "Warn when overload promotes from unsigned to signed"
+msgstr "Avisar quan la sobrecàrrega promogui de unsigned a signed"
+
+#: cp/lang-options.h:152
+msgid "Warn if a C style cast is used in a program"
+msgstr "Avisar quan s'usi una conversió d'estil C en un programa"
+
+#: cp/lang-options.h:156
+msgid "Don't warn when non-templatized friend functions are declared within a template"
+msgstr "No avisar quan les funcions friend sense patró són declarades dintre d'un patró"
+
+#: cp/lang-options.h:159
+msgid "Don't announce deprecation of compiler features"
+msgstr "No anunciar característiques obsoletes del compilador"
+
+#: f/bad.c:387
+msgid "note:"
+msgstr "nota:"
+
+#: f/bad.c:391
+msgid "warning:"
+msgstr "avís:"
+
+#: f/bad.c:395
+msgid "fatal:"
+msgstr "fatal:"
+
+#: f/bad.c:437
+msgid "(continued):"
+msgstr "(continuat):"
+
+#: f/bad.c:487 f/bad.c:505
+msgid "[REPORT BUG!!] %"
+msgstr "[REPORTAR error!!] %"
+
+#: f/bad.c:494 f/bad.c:526
+msgid "[REPORT BUG!!]"
+msgstr "[REPORTAR error!!]"
+
+#: f/com.c:3132
+#, no-c-format
+msgid "ASSIGN'ed label cannot fit into `%A' at %0 -- using wider sibling"
+msgstr "l'etiqueta ASSIGNada no entra en \"%A\" a %0 -- utilitzant una similar més ample"
+
+#: f/com.c:11623
+msgid "no INTEGER type can hold a pointer on this configuration"
+msgstr "cap tipus INTEGER pot guardar un punter en aquesta configuració"
+
+#: f/com.c:11844
+#, c-format
+msgid "configuration: REAL, INTEGER, and LOGICAL are %d bits wide,"
+msgstr "configuració: REAL, INTEGER, i LOGICAL són de %d bits d'amplària,"
+
+#: f/com.c:11846
+#, c-format
+msgid "and pointers are %d bits wide, but g77 doesn't yet work"
+msgstr "i els punters són de %d bits d'amplària, però g77 encara no treballa"
+
+#: f/com.c:11848
+msgid "properly unless they all are 32 bits wide"
+msgstr "de forma adequada a menys que tots siguin de 32 bits d'amplària"
+
+#: f/com.c:11849
+msgid "Please keep this in mind before you report bugs."
+msgstr "Per favor tingui això presenti abans de reportar errors."
+
+#. I/O will probably crash.
+#: f/com.c:11857
+#, c-format
+msgid "configuration: char * holds %d bits, but ftnlen only %d"
+msgstr "configuració: char * guarda %d bits, però ftnlen només %d"
+
+#. ASSIGN 10 TO I will crash.
+#: f/com.c:11866
+#, c-format
+msgid ""
+"configuration: char * holds %d bits, but INTEGER only %d --\n"
+" ASSIGN statement might fail"
+msgstr ""
+"configuració: char * guarda %d bits, però INTEGER només %d --\n"
+" la declaració ASSIGN pot fallar"
+
+#: f/com.c:13681
+msgid "In statement function"
+msgstr "En la declaració de la funció"
+
+#: f/com.c:13691
+msgid "Outside of any program unit:\n"
+msgstr "Fora de qualsevol unitat de programa:\n"
+
+#: f/com.c:15320
+#, no-c-format
+msgid "%A from %B at %0%C"
+msgstr "%A des de %B en %0%C"
+
+#: f/com.c:15497
+msgid "directory name must immediately follow -I"
+msgstr "el nom del directori deu seguir immediatament a -I"
+
+#: f/com.c:15640
+#, no-c-format
+msgid "At %0, INCLUDE file %A exists, but is not readable"
+msgstr "En %0, el fitxer INCLUDE %A existeix, però no és llegible"
+
+#: f/com.c:15675
+#, no-c-format
+msgid "At %0, INCLUDE nesting too deep"
+msgstr "En %0, la \"niació\" de INCLUDE és massa profunda"
+
+#: f/expr.c:9614
+#, no-c-format
+msgid "Two arithmetic operators in a row at %0 and %1 -- use parentheses"
+msgstr "Dos operadors aritmètics en una fila en %0 i %1 -- usi parèntesi"
+
+#: f/expr.c:9664
+#, no-c-format
+msgid "Operator at %0 has lower precedence than that at %1 -- use parentheses"
+msgstr "L'operador en %0 té una preferència menor que aquell en %1 -- usi parèntesi"
+
+#: f/expr.c:10525
+#, no-c-format
+msgid "Use .EQV./.NEQV. instead of .EQ./.NE. at %0 for LOGICAL operands at %1 and %2"
+msgstr "Usi .EQV./.NEQV. en lloc de .EQ./.NE en %0 pels operands LOGICAL en %1 i %2"
+
+#: f/expr.c:10896
+#, no-c-format
+msgid "Unsupported operand for ** at %1 -- converting to default INTEGER"
+msgstr "Operant sense suport per a ** en %1 -- es va convertir a INTEGER per omissió"
+
+#: f/g77spec.c:234
+#, c-format
+msgid "overflowed output arg list for `%s'"
+msgstr "llista d'arguments de sortida desbordada per a \"%s\""
+
+#: f/g77spec.c:373
+msgid "--driver no longer supported"
+msgstr "--driver ja no té suport"
+
+#: f/g77spec.c:386
+#, c-format
+msgid "argument to `%s' missing"
+msgstr "falta l'argument per a \"%s\""
+
+#: f/g77spec.c:390
+msgid "no input files; unwilling to write output files"
+msgstr "no hi ha fitxers d'entrada; incapaç d'escriure fitxers de sortida"
+
+#: f/implic.c:203
+#, no-c-format
+msgid "Implicit declaration of `%A' at %0"
+msgstr "Declaració implícita de \"%A\" en %0"
+
+#: f/lex.c:326
+#, no-c-format
+msgid "Non-ISO-C-standard escape sequence `\\%A' at %0"
+msgstr "Seqüència d'escapi que no és estàndard ISO \"\\%A\" en %0"
+
+#: f/lex.c:345
+#, no-c-format
+msgid "Unknown escape sequence `\\%A' at %0"
+msgstr "Seqüència d'escapi desconeguda \"\\%A\" en %0"
+
+#: f/lex.c:354
+#, no-c-format
+msgid "Unterminated escape sequence `\\' at %0"
+msgstr "Seqüència d'escapi sense acabar \"\\\" en %0"
+
+#: f/lex.c:365
+#, no-c-format
+msgid "Unknown escape sequence `\\' followed by char code 0x%A at %0"
+msgstr "Seqüència d'escapi desconeguda: \"\\\" seguida pel codi de caràcter 0x%A en %0"
+
+#: f/lex.c:393
+#, no-c-format
+msgid "\\x used at %0 with no following hex digits"
+msgstr "es va usar \\x en %0 sense dígits hexadecimals a continuació"
+
+#: f/lex.c:407
+#, no-c-format
+msgid "Hex escape at %0 out of range"
+msgstr "escapi Hex en %0 fora de rang"
+
+#: f/lex.c:441
+#, no-c-format
+msgid "Escape sequence at %0 out of range for character"
+msgstr "Seqüència d'escapi en %0 fora de rang per al caràcter"
+
+#: f/lex.c:595
+msgid "hex escape out of range"
+msgstr "escapi hex fora de rang"
+
+#: f/lex.c:648
+#, c-format
+msgid "non-ANSI-standard escape sequence, `\\%c'"
+msgstr "seqüència d'escapi que no és estàndard ANSI, \"\\%c\""
+
+#: f/lex.c:661
+#, c-format
+msgid "non-ISO escape sequence `\\%c'"
+msgstr "seqüència d'escapi que no és ISO, \"\\%c\""
+
+#: f/lex.c:665
+#, c-format
+msgid "unknown escape sequence `\\%c'"
+msgstr "seqüència d'escapi desconeguda, \"\\%c\""
+
+#: f/lex.c:667
+#, c-format
+msgid "unknown escape sequence: `\\' followed by char code 0x%x"
+msgstr "seqüència d'escapi desconeguda, \"\\\" seguida pel codi de caràcter 0x%x"
+
+#: f/lex.c:744
+msgid "badly formed directive -- no closing quote"
+msgstr "directiva mal formada -- cometa sense tancar"
+
+#: f/lex.c:802
+msgid "#-lines for entering and leaving files don't match"
+msgstr "el nombre de #-lines per a entrar i sortir dels fitxers no coincideixen"
+
+#: f/lex.c:964
+msgid "bad directive -- missing close-quote"
+msgstr "directiva errònia -- falta una cometa que tanqui"
+
+#: f/lex.c:1078
+#, c-format
+msgid "ignoring pragma: %s"
+msgstr "ignorant el pragma: %s"
+
+#: f/lex.c:1156
+msgid "invalid #ident"
+msgstr "#ident invàlid"
+
+#: f/lex.c:1173
+msgid "undefined or invalid # directive"
+msgstr "directiva # no definida o invàlida"
+
+#: f/lex.c:1229
+msgid "invalid #line"
+msgstr "#line invàlid"
+
+#: f/lex.c:1285 f/lex.c:1329
+msgid "use `#line ...' instead of `# ...' in first line"
+msgstr "usi \"#line ...\" en lloc de \"# ...\" en la primera línia"
+
+#: f/lex.c:1339
+msgid "invalid #-line"
+msgstr "#-line invàlid"
+
+#: f/lex.c:1432
+#, no-c-format
+msgid "Null character at %0 -- line ignored"
+msgstr "Caràcter nul en %0 -- línia ignorada"
+
+#: f/stb.c:12078
+#, no-c-format
+msgid "INCLUDE at %0 not the only statement on the source line"
+msgstr "INCLUDE en %0 no és la primera declaració en la línia de codi"
+
+#: f/ste.c:1400 f/ste.c:1747
+msgid "ASSIGNed FORMAT specifier is too small"
+msgstr "el especificador ASSIGNed FORMAT és massa petit"
+
+#. ~~~Someday handle CHARACTER*1, CHARACTER*N
+#: f/ste.c:2624
+#, no-c-format
+msgid "SELECT CASE on CHARACTER type (at %0) not supported -- sorry"
+msgstr "SELECT CASE en el tipus CHARACTER (en %0) no té suport -- perdó"
+
+#: f/ste.c:2729
+msgid "SELECT (at %0) has duplicate cases -- check integer overflow of CASE(s)"
+msgstr ""
+
+#: f/ste.c:2959
+msgid "ASSIGN to variable that is too small"
+msgstr "ASSIGN a una variable que és massa petita"
+
+#: f/ste.c:2987
+msgid "ASSIGNed GOTO target variable is too small"
+msgstr "la variable de l'objectiu ASSIGNed GOTO és massa petita"
+
+#: f/stu.c:305
+#, no-c-format
+msgid "Local adjustable symbol `%A' at %0"
+msgstr "Símbol local ajustable \"%A\" en %0"
+
+#: f/target.c:2550
+msgid "data initializer on host with different endianness"
+msgstr "inicialitzador de dades en l'ordinador amb \"endianness\" diferent"
+
+#: f/top.c:237
+#, c-format
+msgid "%s no longer supported -- try -fvxt"
+msgstr "%s ja no té suport -- intenti -fvxt"
+
+#: f/top.c:239
+#, c-format
+msgid "%s no longer supported -- try -fno-vxt -ff90"
+msgstr "%s ja no té suport -- intenti -fno-vxt -ff90"
+
+#: f/top.c:307 f/top.c:309
+#, c-format
+msgid "%s disabled, use normal debugging flags"
+msgstr "%s desactivat, usi els interruptors normals de depuració"
+
+#: f/lang-options.h:33
+msgid "Print g77-specific compiler version info, run internal tests"
+msgstr "Imprimeix informació de la versió específica del compilador g77, executa proves internes"
+
+#: f/lang-options.h:37
+msgid "Program is written in typical FORTRAN 66 dialect"
+msgstr "El programa està escrit en el dialecte típic FORTRAN 66"
+
+#: f/lang-options.h:40
+msgid "Program is written in typical Unix f77 dialect"
+msgstr "El programa està escrit en el dialecte típic Unix f77"
+
+#: f/lang-options.h:42
+msgid "Program does not use Unix-f77 dialectal features"
+msgstr "El programa no utilitza les característiques del dialecte Unix-f77"
+
+#: f/lang-options.h:44
+msgid "Program is written in Fortran-90-ish dialect"
+msgstr "El programa en un dialecte proper a Fortran-90"
+
+#: f/lang-options.h:48
+msgid "Treat local vars and COMMON blocks as if they were named in SAVE statements"
+msgstr "Tractar les variables locals i els blocs COMMON com si fossin nomenats en declaracions SAVE"
+
+#: f/lang-options.h:50
+msgid "Allow $ in symbol names"
+msgstr "Permetre $ en els noms de símbols"
+
+#: f/lang-options.h:54
+msgid "f2c-compatible code need not be generated"
+msgstr "No es necessita generar codi compatible amb f2c"
+
+#: f/lang-options.h:57
+msgid "Unsupported; do not generate libf2c-calling code"
+msgstr "Sense suport; no genera codi de cridada a libf2c"
+
+#: f/lang-options.h:59
+msgid "Unsupported; affects code-generation of arrays"
+msgstr "Sense suport; afecta la generació de codi de les matrius"
+
+#: f/lang-options.h:62
+msgid "Program is written in Fortran-90-ish free form"
+msgstr "El programa està escrit en una forma lliure propera a Fortran-90"
+
+#: f/lang-options.h:67
+msgid "Warn about use of (only a few for now) Fortran extensions"
+msgstr "Avisar sobre l'ús d' (només algunes per ara) extensions Fortran"
+
+#: f/lang-options.h:70
+msgid "Program is written in VXT (Digital-like) FORTRAN"
+msgstr "El programa està escrit en VXT (com Digital) FORTRAN"
+
+#: f/lang-options.h:73
+msgid "Disallow all ugly features"
+msgstr "Desactiva totes les característiques lletjes"
+
+#: f/lang-options.h:76
+msgid "Hollerith and typeless constants not passed as arguments"
+msgstr "No es passen les constants Hollerith i sense tipus com arguments"
+
+#: f/lang-options.h:78
+msgid "Allow ordinary copying of ASSIGN'ed vars"
+msgstr "Permet la còpia ordinària de variables ASSIGN'ed"
+
+#: f/lang-options.h:81
+msgid "Dummy array dimensioned to (1) is assumed-size"
+msgstr "La matriu faltament dimensionada a (1) és de grandària assumida"
+
+#: f/lang-options.h:84
+msgid "Trailing comma in procedure call denotes null argument"
+msgstr "Coma al final de la cridada al procediment denota un argument null"
+
+#: f/lang-options.h:87
+msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
+msgstr "Permet que REAL(Z) i AIMAG(Z) rebin DOUBLE COMPLEX Z"
+
+#: f/lang-options.h:91
+msgid "Initialization via DATA and PARAMETER is type-compatible"
+msgstr "L'inicialització a través de DATA i PARAMETER és de tipus compatible"
+
+#: f/lang-options.h:93
+msgid "Allow INTEGER and LOGICAL interchangeability"
+msgstr "Permet l'intercanvi entre INTEGER i LOGICAL"
+
+#: f/lang-options.h:96
+msgid "Print internal debugging-related info"
+msgstr "Mostra la informació interna relacionada amb la depuració"
+
+#: f/lang-options.h:99
+msgid "Initialize local vars and arrays to zero"
+msgstr "Inicialitza les variables locals i matrius a zero"
+
+#: f/lang-options.h:103
+msgid "Backslashes in character/hollerith constants not special (C-style)"
+msgstr "Les barres invertides en constants de caràcter/hollerith no són especials (estil C)"
+
+#: f/lang-options.h:105
+msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
+msgstr "Fa que el front emuli aritmètica COMPLEX per a evitar errors"
+
+#: f/lang-options.h:109
+msgid "Disable the appending of underscores to externals"
+msgstr "Desactiva l'agregació de subratllats als externs"
+
+#: f/lang-options.h:112
+msgid "Never append a second underscore to externals"
+msgstr "Mai agregar un segon subratllat als externs"
+
+#: f/lang-options.h:114
+msgid "Intrinsics spelled as e.g. SqRt"
+msgstr "Intrínsecs lletrejats com p.e. SqRt"
+
+#: f/lang-options.h:116
+msgid "Intrinsics in uppercase"
+msgstr "Intrínsecs en majúscules"
+
+#: f/lang-options.h:119
+msgid "Intrinsics letters in arbitrary cases"
+msgstr "Lletres d'intrínsecs amb majúscules/minúscules indistintes"
+
+#: f/lang-options.h:121
+msgid "Language keywords spelled as e.g. IOStat"
+msgstr "Paraules claus del llenguatge lletrejades com p.e. IOStat"
+
+#: f/lang-options.h:123
+msgid "Language keywords in uppercase"
+msgstr "Paraules claus del llenguatge en majúscules"
+
+#: f/lang-options.h:126
+msgid "Language keyword letters in arbitrary cases"
+msgstr "Paraules claus del llenguatge amb majúscules/minúscules indistintes"
+
+#: f/lang-options.h:128
+msgid "Internally convert most source to uppercase"
+msgstr "Convertir internament gairebé tot el codi a majúscules"
+
+#: f/lang-options.h:131
+msgid "Internally preserve source case"
+msgstr "Preservar internament les majúscules i minúscules del codi font"
+
+#: f/lang-options.h:133
+msgid "Symbol names spelled in mixed case"
+msgstr "Noms de símbol lletrejats amb majúscules/minúscules barrejades"
+
+#: f/lang-options.h:135
+msgid "Symbol names in uppercase"
+msgstr "Noms de símbol en majúscules"
+
+#: f/lang-options.h:137
+msgid "Symbol names in lowercase"
+msgstr "Noms de símbol en minúscules"
+
+#: f/lang-options.h:140
+msgid "Program written in uppercase"
+msgstr "Programa escrit en majúscules"
+
+#: f/lang-options.h:142
+msgid "Program written in lowercase"
+msgstr "Programa escrit en minúscules"
+
+#: f/lang-options.h:144
+msgid "Program written in strict mixed-case"
+msgstr "Programa escrit estrictament amb majúscules i minúscules barrejades"
+
+#: f/lang-options.h:146
+msgid "Compile as if program written in uppercase"
+msgstr "Compilar com si el programa estigués escrit en majúscules"
+
+#: f/lang-options.h:148
+msgid "Compile as if program written in lowercase"
+msgstr "Compilar com si el programa estigués escrit en minúscules"
+
+#: f/lang-options.h:150
+msgid "Preserve all spelling (case) used in program"
+msgstr "Preservar tot el lletrejo (majúscules/minúscules) usat en el programa"
+
+#: f/lang-options.h:152
+msgid "Delete libU77 intrinsics with bad interfaces"
+msgstr "Esborrar els intrínsecs libU77 amb interfícies errònies"
+
+#: f/lang-options.h:154
+msgid "Disable libU77 intrinsics with bad interfaces"
+msgstr "Desactivar els intrínsecs libU77 amb interfícies errònies"
+
+#: f/lang-options.h:157
+msgid "Hide libU77 intrinsics with bad interfaces"
+msgstr "Amagar els intrínsecs libU77 amb interfícies errònies"
+
+#: f/lang-options.h:159
+msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Esborrar els intrínsecs de FORTRAN que no és 77 que f2c suporta"
+
+#: f/lang-options.h:161
+msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que f2c suporta"
+
+#: f/lang-options.h:164
+msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Amagar els intrínsecs de FORTRAN que no és 77 que f2c suporta"
+
+#: f/lang-options.h:166
+msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Esborrar els intrínsecs de FORTRAN que no és 77 que F90 suporta"
+
+#: f/lang-options.h:168
+msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que F90 suporta"
+
+#: f/lang-options.h:171
+msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Amagar els intrínsecs de FORTRAN que no és 77 que F90 suporta"
+
+#: f/lang-options.h:173
+msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
+msgstr "Esborrar els intrínsecs de FORTRAN que no és 77 que g77 suporta"
+
+#: f/lang-options.h:175
+msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
+msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que g77 suporta"
+
+#: f/lang-options.h:178
+msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
+msgstr "Amagar els intrínsecs de FORTRAN que no és 77 que g77 suporta"
+
+#: f/lang-options.h:180
+msgid "Delete MIL-STD 1753 intrinsics"
+msgstr "Esborrar els intrínsecs MIL-STD 1753"
+
+#: f/lang-options.h:182
+msgid "Disable MIL-STD 1753 intrinsics"
+msgstr "Desactivar els intrínsecs MIL-STD 1753"
+
+#: f/lang-options.h:185
+msgid "Hide MIL-STD 1753 intrinsics"
+msgstr "Amagar els intrínsecs MIL-STD 1753"
+
+#: f/lang-options.h:187
+msgid "Delete libU77 intrinsics"
+msgstr "Esborrar els intrínsecs libU77"
+
+#: f/lang-options.h:189
+msgid "Disable libU77 intrinsics"
+msgstr "Desactivar els intrínsecs libU77"
+
+#: f/lang-options.h:192
+msgid "Hide libU77 intrinsics"
+msgstr "Amagar els intrínsecs libU77"
+
+#: f/lang-options.h:194
+msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Esborrar els intrínsecs de FORTRAN que no és 77 que VXT FORTRAN suporta"
+
+#: f/lang-options.h:196
+msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Desactivar els intrínsecs de FORTRAN que no és 77 que VXT FORTRAN suporta"
+
+#: f/lang-options.h:199
+msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Amagar els intrínsecs de FORTRAN que no és 77 que VXT FORTRAN suporta"
+
+#: f/lang-options.h:201
+msgid "Treat initial values of 0 like non-zero values"
+msgstr "Tractar els valors inicials de 0 com valors que no són zero"
+
+#: f/lang-options.h:204
+msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
+msgstr "Emetre informació especial de depuració per a COMMON i EQUIVALENCE (desactivat)"
+
+#: f/lang-options.h:207
+msgid "Take at least one trip through each iterative DO loop"
+msgstr "Prendre almenys un viatge a través de cada cicle DO iteratiu"
+
+#: f/lang-options.h:211
+msgid "Print names of program units as they are compiled"
+msgstr "Mostrar els noms de les unitats de programa mentre són compilades"
+
+#: f/lang-options.h:214
+msgid "Disable fatal diagnostics about inter-procedural problems"
+msgstr "Desactivar els diagnòstics fatals sobre problemes interprocedurals"
+
+#: f/lang-options.h:216
+msgid "Make prefix-radix non-decimal constants be typeless"
+msgstr "Fer que no tinguin tipus les constants amb prefix-radical que no és decimal"
+
+#: f/lang-options.h:219
+msgid "Generate code to check subscript and substring bounds"
+msgstr "Generar codi per a revisar els límits de subíndicis i subcadenes"
+
+#: f/lang-options.h:222
+msgid "Fortran-specific form of -fbounds-check"
+msgstr "Forma específica de Fortran de -fbounds-check"
+
+#: f/lang-options.h:226
+msgid "Disable warnings about inter-procedural problems"
+msgstr "Desactivar els avisos sobre problemes interprocedurals"
+
+#: f/lang-options.h:230
+msgid "Warn about constructs with surprising meanings"
+msgstr "Avisar sobre constructors amb significats sorprenents"
+
+#: f/lang-options.h:235
+msgid "Add a directory for INCLUDE searching"
+msgstr "Agregar un directori per a la recerca de INCLUDE"
+
+#: f/lang-options.h:237
+msgid "Set the maximum line length"
+msgstr "Establir la longitud màxima de línia"
+
+#: f/bad.def:39
+#, no-c-format
+msgid "Missing first operand for binary operator at %0"
+msgstr "Falta el primer operant binari per a l'operador binari en %0"
+
+#: f/bad.def:42
+#, no-c-format
+msgid "Zero-length character constant at %0"
+msgstr "Constant de caràcter de longitud zero en %0"
+
+#: f/bad.def:45
+#, no-c-format
+msgid "Invalid token at %0 in expression or subexpression at %1"
+msgstr "Element invàlid en %0 en l'expressió o subexpressió en %1"
+
+#: f/bad.def:48
+#, no-c-format
+msgid "Missing operand for operator at %1 at end of expression at %0"
+msgstr "Falta un operant per a l'operador en %1 al final de l'expressió en %0"
+
+#: f/bad.def:51
+#, no-c-format
+msgid "Label %A already defined at %1 when redefined at %0"
+msgstr "L'etiqueta %A ja es va definir en %1 quan es va redefinir en %0"
+
+#: f/bad.def:54
+#, no-c-format
+msgid "Unrecognized character at %0 [info -f g77 M LEX]"
+msgstr "Caràcter no reconegut en %0 [info -f g77 M LEX]"
+
+#: f/bad.def:57
+#, no-c-format
+msgid "Label definition %A at %0 on empty statement (as of %1)"
+msgstr "La definició de l'etiqueta %A en %0 en una declaració buida (per a %1)"
+
+#: f/bad.def:65
+#, no-c-format
+msgid "Invalid first character at %0 [info -f g77 M LEX]"
+msgstr "Primer caràcter invàlid en %0 [info -f g77 M LEX]"
+
+#: f/bad.def:68
+#, no-c-format
+msgid "Line too long as of %0 [info -f g77 M LEX]"
+msgstr "Línia massa deixa anar per a %0 [info -f g77 M LEX]"
+
+#: f/bad.def:71
+#, no-c-format
+msgid "Non-numeric character at %0 in label field [info -f g77 M LEX]"
+msgstr "Caràcter no numèric en %0 en el camp d'etiqueta [info -f g77 M LEX]"
+
+#: f/bad.def:74
+#, no-c-format
+msgid "Label number at %0 not in range 1-99999"
+msgstr "El nombre d'etiqueta en %0 no està en el rang 1-99999"
+
+#: f/bad.def:77
+#, no-c-format
+msgid "At %0, '!' and '/*' are not valid comment delimiters"
+msgstr "En %0, \"!\" i \"/*\" no són delimitadors de comentari vàlids"
+
+#: f/bad.def:80
+#, no-c-format
+msgid "Continuation indicator at %0 must appear in column 6 [info -f g77 M LEX]"
+msgstr "L'indicador de continuació en %0 deu aparèixer en la columna 6 [info -f g77 M LEX]"
+
+#: f/bad.def:83
+#, no-c-format
+msgid "Label at %0 invalid with continuation line indicator at %1 [info -f g77 M LEX]"
+msgstr "Etiqueta en %0 invàlida amb indicador de continuació de línia en %1 [info -f g77 M LEX]"
+
+#: f/bad.def:91
+#, no-c-format
+msgid "Character constant at %0 has no closing apostrophe at %1"
+msgstr "La constant de caràcter en %0 no té l'apòstrofe que tanca en %1"
+
+#: f/bad.def:94
+#, no-c-format
+msgid "Hollerith constant at %0 specified %A more characters than are present as of %1"
+msgstr "La constant hollerith en %0 especifica %A més caràcters que els presents en %1"
+
+#: f/bad.def:97
+#, no-c-format
+msgid "Missing close parenthese at %0 needed to match open parenthese at %1"
+msgstr "Falta el parèntesi que tanca en %0 necessari per a coincidir amb els parèntesis oberts en %1"
+
+#: f/bad.def:100
+#, no-c-format
+msgid "Integer at %0 too large"
+msgstr "Enter en %0 massa gran"
+
+#: f/bad.def:123
+#, no-c-format
+msgid "Period at %0 not followed by digits for floating-point number or by `NOT.', `TRUE.', or `FALSE.'"
+msgstr "El punt en %0 no està seguit de dígits per a un nombre de coma flotant o per \"NOT.\", \"TRUE.\" o \"FALSE.\""
+
+#: f/bad.def:126
+#, no-c-format
+msgid "Missing close-period between `.%A' at %0 and %1"
+msgstr "Falta el punt que tanca entri \".%A\" en %0 i %1"
+
+#: f/bad.def:129
+#, no-c-format
+msgid "Invalid exponent at %0 for real constant at %1; nondigit `%A' in exponent field"
+msgstr "Exponent invàlid en %0 per a la constant real en %1; \"%A\" que no és dígit en el camp de l'exponent"
+
+#: f/bad.def:132
+#, no-c-format
+msgid "Missing value at %1 for real-number exponent at %0"
+msgstr "Falta un valor en %1 per a l'exponent de nombre real en %0"
+
+#: f/bad.def:135
+#, no-c-format
+msgid "Expected binary operator between expressions at %0 and at %1"
+msgstr "S'esperava un operador binari entre les expressions en %0 i en %1"
+
+#: f/bad.def:253
+#, no-c-format
+msgid "Semicolon at %0 is an invalid token"
+msgstr "El punt i coma en %0 és un element invàlid"
+
+#: f/bad.def:271
+#, no-c-format
+msgid "Extraneous comma in FORMAT statement at %0"
+msgstr "Coma sobrant en la declaració FORMAT en %0"
+
+#: f/bad.def:274
+#, no-c-format
+msgid "Missing comma in FORMAT statement at %0"
+msgstr "Coma faltant en la declaració FORMAT en %0"
+
+#: f/bad.def:277
+#, no-c-format
+msgid "Spurious sign in FORMAT statement at %0"
+msgstr "Signe espuri en la declaració FORMAT en %0"
+
+#: f/bad.def:280
+#, no-c-format
+msgid "Spurious number in FORMAT statement at %0"
+msgstr "Nombre espuri en la declaració FORMAT en %0"
+
+#: f/bad.def:283
+#, no-c-format
+msgid "Spurious text trailing number in FORMAT statement at %0"
+msgstr "Text espuri addicional al nombre en la declaració FORMAT en %0"
+
+#: f/bad.def:291
+#, no-c-format
+msgid "Unrecognized FORMAT specifier at %0"
+msgstr "Especificador FORMAT no reconegut en %0"
+
+#: f/bad.def:419
+#, no-c-format
+msgid "Missing close-parenthese(s) in FORMAT statement at %0"
+msgstr "Falta(en) parèntesi(s) que tanquen en la declaració FORMAT en %0"
+
+#: f/bad.def:422
+#, no-c-format
+msgid "Missing number following period in FORMAT statement at %0"
+msgstr "Falta un nombre a continuació del punt en la declaració FORMAT en %0"
+
+#: f/bad.def:425
+#, no-c-format
+msgid "Missing number following `E' in FORMAT statement at %0"
+msgstr "Falta un nombre a continuació de \"E\" en la declaració FORMAT en %0"
+
+#: f/bad.def:433
+#, no-c-format
+msgid "Spurious trailing comma preceding terminator at %0"
+msgstr "Coma final espúria precedint al terminador en %0"
+
+#: f/bad.def:436
+#, no-c-format
+msgid "At %0, specify OPERATOR instead of ASSIGNMENT for INTERFACE statement not specifying the assignment operator (=)"
+msgstr "En %0, especifiqui OPERATOR en lloc de ASSIGNMENT per a la declaració INTERFACE que no especifica l'operador d'assignació (=)"
+
+#: f/bad.def:439
+#, no-c-format
+msgid "At %0, specify ASSIGNMENT instead of OPERATOR for INTERFACE statement specifying the assignment operator (=)"
+msgstr "En %0, especifiqui ASSIGNMENT en lloc de OPERATOR per a la declaració INTERFACE que especifica l'operador d'assignació (=)"
+
+#: f/bad.def:452
+#, no-c-format
+msgid "Cannot specify =initialization-expr at %0 unless `::' appears before list of objects"
+msgstr "No es pot especificar =expr-iniciació en %0 a menys que \"::\" aparegui abans que la llista dels objectes"
+
+#: f/bad.def:455
+#, no-c-format
+msgid "Reference to label at %1 inconsistent with its definition at %0"
+msgstr "La referència a l'etiqueta en %1 és inconsistenta amb la seva definició en %0"
+
+#: f/bad.def:458
+#, no-c-format
+msgid "Reference to label at %1 inconsistent with earlier reference at %0"
+msgstr "La referència a l'etiqueta en %1 és inconsistenta amb la referència anterior en %0"
+
+#: f/bad.def:461
+#, no-c-format
+msgid "DO-statement reference to label at %1 follows its definition at %0"
+msgstr "La referència de la declaració DO a l'etiqueta en %1 segueix la seva definició en %0"
+
+#: f/bad.def:464
+#, no-c-format
+msgid "Reference to label at %1 is outside block containing definition at %0"
+msgstr "La referència a l'etiqueta en %1 està fora del bloc que conté la definició en %0"
+
+#: f/bad.def:467
+#, no-c-format
+msgid "DO-statement references to label at %0 and %2 separated by unterminated block starting at %1"
+msgstr "Les referències de la declaració DO a l'etiqueta en %0 i %2 estan separades per un bloc sense acabar que comença en %1"
+
+#: f/bad.def:470
+#, no-c-format
+msgid "DO-statement reference to label at %0 and label definition at %2 separated by unterminated block starting at %1"
+msgstr "La referència de la declaració DO a l'etiqueta en %0 i la definició de l'etiqueta en %2 estan separades per un bloc sense acabar que comença en %1"
+
+#: f/bad.def:473
+#, no-c-format
+msgid "Label definition at %0 invalid on this kind of statement"
+msgstr "La definició d'etiqueta en %0 és invàlida en aquest tipus de declaració"
+
+#: f/bad.def:476
+#, no-c-format
+msgid "Statement at %0 invalid in this context"
+msgstr "La declaració en %0 és invàlida en aquest context"
+
+#: f/bad.def:479
+#, no-c-format
+msgid "Statement at %0 invalid in context established by statement at %1"
+msgstr "La declaració en %0 és invàlida en el context establert per la declaració en %1"
+
+#: f/bad.def:482
+#, no-c-format
+msgid "Statement at %0 must specify construct name specified at %1"
+msgstr "La declaració en %0 deu especificar el nom de la construcció especificada en %1"
+
+#: f/bad.def:485
+#, no-c-format
+msgid "Construct name at %0 superfluous, no construct name specified at %1"
+msgstr "El nom de la construcció en %0 és superflu, no es va especificar un nom de construcció en %1"
+
+#: f/bad.def:488
+#, no-c-format
+msgid "Construct name at %0 not the same as construct name at %1"
+msgstr "El nom de construcció en %0 no és el mateix que el nom de construcció en %1"
+
+#: f/bad.def:491
+#, no-c-format
+msgid "Construct name at %0 does not match construct name for any containing DO constructs"
+msgstr "El nom de construcció en %0 no coincideix amb el nom de construcció per a qualsevol construcció DO contenidora"
+
+#: f/bad.def:494
+#, no-c-format
+msgid "Label definition missing at %0 for DO construct specifying label at %1"
+msgstr "Falta la definició d'etiqueta en %0 per a la construcció DO que especifica l'etiqueta en %1"
+
+#: f/bad.def:497
+#, no-c-format
+msgid "Statement at %0 follows ELSE block for IF construct at %1"
+msgstr "La declaració en %0 segueix al bloc ELSE per a la construcció IF en %1"
+
+#: f/bad.def:500
+#, no-c-format
+msgid "No label definition for FORMAT statement at %0"
+msgstr "No hi ha definició d'etiqueta per a la declaració FORMAT en %0"
+
+#: f/bad.def:503
+#, no-c-format
+msgid "Second occurrence of ELSE WHERE at %0 within WHERE at %1"
+msgstr "Segona ocurrència de ELSE WHERE en %0 dintre de WHERE en %1"
+
+#: f/bad.def:506
+#, no-c-format
+msgid "END statement at %0 missing `%A' keyword required for internal or module procedure(s) bounded by %1"
+msgstr "A la declaració END en %0 li falta la paraula clau `%A' requerida per a procediment(s) intern(s) o mòdul(s) units per %1"
+
+#: f/bad.def:509
+#, no-c-format
+msgid "MODULE PROCEDURE statement at %0 disallowed because INTERFACE at %1 specifies no generic name, operator, or assignment"
+msgstr "No es permet la declaració MODULE PROCEDURE en %0 perquè INTERFACE en %1 no especifica un nom genèric, operador o assignació"
+
+#: f/bad.def:512
+#, no-c-format
+msgid "BLOCK DATA name at %0 superfluous, no name specified at %1"
+msgstr "El nom de BLOCK DATA en %0 és superflu, no es va especificar un nom en %1"
+
+#: f/bad.def:515
+#, no-c-format
+msgid "Program name at %0 superfluous, no PROGRAM statement specified at %1"
+msgstr "El nom de programa en %0 és superflu, no es va especificar una declaració PROGRAM en %1"
+
+#: f/bad.def:518
+#, no-c-format
+msgid "Program unit name at %0 not the same as name at %1"
+msgstr "El nom d'unitat de programa en %0 no és el mateix que el nom en %1"
+
+#: f/bad.def:521
+#, no-c-format
+msgid "Type name at %0 not the same as name at %1"
+msgstr "El nom de tipus en %0 no és el mateix que el nom en %1"
+
+#: f/bad.def:524
+#, no-c-format
+msgid "End of source file before end of block started at %0"
+msgstr "Fi del fitxer font abans que comencés el bloc en %0"
+
+#: f/bad.def:527
+#, no-c-format
+msgid "Undefined label, first referenced at %0"
+msgstr "Etiqueta indefinida, primer referenciada en %0"
+
+#: f/bad.def:530
+#, no-c-format
+msgid "SAVE statement or attribute at %1 cannot be specified along with SAVE statement or attribute at %0"
+msgstr "La declaració o atribut SAVE en %1 no es pot especificar juntament amb la declaració o atribut SAVE en %0"
+
+#: f/bad.def:533
+#, no-c-format
+msgid "PUBLIC or PRIVATE statement at %1 cannot be specified along with PUBLIC or PRIVATE statement at %0"
+msgstr "La declaració PUBLIC o PRIVATE en %1 no es pot especificar juntament amb la declaració PUBLIC o PRIVATE en %0"
+
+#: f/bad.def:536
+#, no-c-format
+msgid "RETURN statement at %0 invalid within a main program unit"
+msgstr "La declaració RETURN en %0 és invàlida dintre d'una unitat de programa principal"
+
+#: f/bad.def:539
+#, no-c-format
+msgid "Alternate return specifier at %0 invalid within a main program unit"
+msgstr "El especificador de retorn alternatiu en %0 és invàlid dintre d'una unitat de programa principal"
+
+#: f/bad.def:542
+#, no-c-format
+msgid "Alternate return specifier at %0 invalid within a function"
+msgstr "El especificador de retorn alternatiu en %0 és invàlid dintre d'una funció"
+
+#: f/bad.def:545
+#, no-c-format
+msgid "Access specifier or PRIVATE statement at %0 invalid for derived-type definition within other than the specification part of a module"
+msgstr "El especificador d'accés o la declaració PRIVATE en %0 és invàlid per a la definició de tipus derivat dintre d'un altre que la part d'especificació d'un mòdul"
+
+#: f/bad.def:548
+#, no-c-format
+msgid "Access specifier at %0 must immediately follow derived-type statement at %1 with no intervening statements"
+msgstr "El especificador d'accés en %0 deu seguir immediatament a la declaració de tipus derivat en %1 sense declaracions que intervinguin"
+
+#: f/bad.def:551
+#, no-c-format
+msgid "No components specified as of %0 for derived-type definition beginning at %1"
+msgstr "No es van especificar components per a %0 per a la definició de tipus derivat que comença en %1"
+
+#: f/bad.def:554
+#, no-c-format
+msgid "No components specified as of %0 for structure definition beginning at %1"
+msgstr "No es van especificar components per a %0 per a la la definició de l'estructura que comença en %1"
+
+#: f/bad.def:557
+#, no-c-format
+msgid "Missing structure name for outer structure definition at %0"
+msgstr "Falta el nom de l'estructura per a la definició de l'estructura externa en %0"
+
+#: f/bad.def:560
+#, no-c-format
+msgid "Field names at %0 for outer structure definition -- specify them in a subsequent RECORD statement instead"
+msgstr "Noms de camps en %0 per a la definició de l'estructura exterior -- especifiqui'ls en el seu lloc en una declaració RECORD subsecuents"
+
+#: f/bad.def:563
+#, no-c-format
+msgid "Missing field name(s) for structure definition at %0 within structure definition at %1"
+msgstr "Manca(en) el(s) nom(s) de camp(s) per a la definició de l'estructura en %0 dintre de la definició de l'estructura en %1"
+
+#: f/bad.def:566
+#, no-c-format
+msgid "No components specified as of %0 for map beginning at %1"
+msgstr "No es van especificar component en %0 per al mapa que comença en %1"
+
+#: f/bad.def:569
+#, no-c-format
+msgid "Zero or one maps specified as of %0 for union beginning at %1 -- at least two are required"
+msgstr "Es van especificar zero o un mapa en %0 per a la unió que comença en %1 -- es requereixen almenys dos"
+
+#: f/bad.def:572
+#, no-c-format
+msgid "Missing %A specifier in statement at %0"
+msgstr "Falta el especificador %A en la declaració en %0"
+
+#: f/bad.def:575
+#, no-c-format
+msgid "Items in I/O list starting at %0 invalid for namelist-directed I/O"
+msgstr "Els elements en la llista d'I/O que comença en %0 són invàlids pel I/O dirigit per una llista de noms"
+
+#: f/bad.def:578
+#, no-c-format
+msgid "Conflicting I/O control specifications at %0 and %1"
+msgstr "Especificacions de control d'I/O en conflicte en %0 i %1"
+
+#: f/bad.def:581
+#, no-c-format
+msgid "No UNIT= specifier in I/O control list at %0"
+msgstr "No hi ha un especificador UNIT= en la llista de control d'I/O en %0"
+
+#: f/bad.def:584
+#, no-c-format
+msgid "Specification at %0 requires ADVANCE=`NO' specification in same I/O control list"
+msgstr "L'especificació en %0 requereix l'especificació ADVANCE=\"NO\" en la mateixa llista de control d'I/O"
+
+#: f/bad.def:587
+#, no-c-format
+msgid "Specification at %0 requires explicit FMT= specification in same I/O control list"
+msgstr "L'especificació en %0 requereix l'especificació FMT= explícita en la mateixa llista de control d'I/O"
+
+#: f/bad.def:595
+#, no-c-format
+msgid "Second occurrence of CASE DEFAULT at %0 within SELECT CASE at %1"
+msgstr "Segona ocurrència de CASE DEFAULT en %0 dintre d'un SELECT CASE en %1"
+
+#: f/bad.def:598
+#, no-c-format
+msgid "Duplicate or overlapping case values/ranges at %0 and %1"
+msgstr "Valors/rangs casi duplicats o traslapats en %0 i %1"
+
+#: f/bad.def:601
+#, no-c-format
+msgid "Type and/or kind-type parameter disagreement between CASE value or value within range at %0 and SELECT CASE at %1"
+msgstr "Desacord de tipus i/o paràmetre de tipus entre el valor CASE o el valor dintre del rang en %0 i SELECT CASE en %1"
+
+#: f/bad.def:604
+#, no-c-format
+msgid "Range specification at %0 invalid for CASE statement within logical-type SELECT CASE statement"
+msgstr "Especificació de rang en %0 invàlida per a la declaració CASE dintre de la declaració SELECT CASE de tipus lògic"
+
+#: f/bad.def:617
+#, no-c-format
+msgid "Fortran 90 feature at %0 unsupported"
+msgstr "Característica Fortran 90 en %0 sense suport"
+
+#: f/bad.def:630
+#, no-c-format
+msgid "Invalid declaration of or reference to symbol `%A' at %0 [initially seen at %1]"
+msgstr "Declaració invàlida de/o referència al símbol \"%A\" en %0 [observat inicialment en %1]"
+
+#: f/bad.def:638
+#, no-c-format
+msgid "Null element at %0 for array reference at %1"
+msgstr "Element null en %0 per a la referència de matriu en %1"
+
+#: f/bad.def:641
+#, no-c-format
+msgid "Too few elements (%A missing) as of %0 for array reference at %1"
+msgstr "Molt pocs elements (falta %A) per a %0 per a la referència de matriu en %1"
+
+#: f/bad.def:644
+#, no-c-format
+msgid "Too many elements as of %0 for array reference at %1"
+msgstr "Massa elements per a %0 per a la referència de matriu en %1"
+
+#: f/bad.def:647
+#, no-c-format
+msgid "Missing colon as of %0 in substring reference for %1"
+msgstr "Falten dos punts en %0 en la referència de subcadene per a %1"
+
+#: f/bad.def:650
+#, no-c-format
+msgid "Invalid use at %0 of substring operator on %1"
+msgstr "ùs invàlid en %0 de l'operador de subcadenes en %1"
+
+#: f/bad.def:653
+#, no-c-format
+msgid "Substring begin/end point at %0 out of defined range"
+msgstr "El punt d'inici/fi de la subcadena en %0 està fora del rang definit"
+
+#: f/bad.def:656
+#, no-c-format
+msgid "Array element value at %0 out of defined range"
+msgstr "Valor de l'element de la matriu en %0 està fora del rang definit"
+
+#: f/bad.def:659
+#, no-c-format
+msgid "Expression at %0 has incorrect data type or rank for its context"
+msgstr "L'expressió en %0 té el tipus de dada o rang incorrecte per al seu context"
+
+#: f/bad.def:662
+#, no-c-format
+msgid "Division by 0 (zero) at %0 (IEEE not yet supported)"
+msgstr "Divisió per 0 (zero) en %0 (IEEE encara no té suport)"
+
+#: f/bad.def:665
+#, no-c-format
+msgid "%A step count known to be 0 (zero) at %0"
+msgstr "Se sap que el compte de passada %A és 0 (zero) en %0"
+
+#: f/bad.def:668
+#, no-c-format
+msgid "%A end value plus step count known to overflow at %0"
+msgstr "Se sap que el valor final %A mes el compte de passada es desborda en %0"
+
+#: f/bad.def:671
+#, no-c-format
+msgid "%A begin, end, and step-count values known to result in implementation-dependent behavior due to overflow(s) in intermediate calculations at %0"
+msgstr "Se sap que els valors d'inici, fi i compte de passada %A resulten en conducta depenent de la implementació a causa de desbordament(s) en càlculs intermedis en %0"
+
+#: f/bad.def:674
+#, no-c-format
+msgid "%A begin, end, and step-count values known to result in no iterations at %0"
+msgstr "Se sap que els valors d'inici, fi i compte de passada %A resulten en falta d'iteracions en %0"
+
+#: f/bad.def:677
+#, no-c-format
+msgid "Type disagreement between expressions at %0 and %1"
+msgstr "Desacord de tipus entre les expressions en %0 i %1"
+
+#: f/bad.def:690
+#, no-c-format
+msgid "No specification for implied-DO iterator `%A' at %0"
+msgstr "No hi ha especificació per al iterador del DO implícit `%A' en %0"
+
+#: f/bad.def:693
+#, no-c-format
+msgid "Gratuitous parentheses surround implied-DO construct at %0"
+msgstr "Parèntesis gratuïts al voltant de la construcció amb DO implícit en %0"
+
+#: f/bad.def:696
+#, no-c-format
+msgid "Zero-size specification invalid at %0"
+msgstr "Especificació de grandària zero invàlida en %0"
+
+#: f/bad.def:699
+#, no-c-format
+msgid "Zero-size array at %0"
+msgstr "Matriu de grandària zero en %0"
+
+#: f/bad.def:702
+#, no-c-format
+msgid "Target machine does not support complex entity of kind specified at %0"
+msgstr ""
+
+#: f/bad.def:705
+#, no-c-format
+msgid "Target machine does not support DOUBLE COMPLEX, specified at %0"
+msgstr ""
+
+#: f/bad.def:708
+#, no-c-format
+msgid "Attempt to raise constant zero to a power at %0"
+msgstr ""
+
+#: f/bad.def:806
+#, no-c-format
+msgid "Reference to generic intrinsic `%A' at %0 could be to form %B or %C"
+msgstr ""
+
+#: f/bad.def:809
+#, no-c-format
+msgid "Ambiguous use of intrinsic `%A' at %0 [info -f g77 M CMPAMBIG]"
+msgstr ""
+
+#: f/bad.def:812
+#, no-c-format
+msgid "Intrinsic `%A' referenced %Bly at %0, %Cly at %1 [info -f g77 M EXPIMP]"
+msgstr ""
+
+#: f/bad.def:815
+#, no-c-format
+msgid "Same name `%A' used for %B at %0 and %C at %1 [info -f g77 M INTGLOB]"
+msgstr ""
+
+#: f/bad.def:818
+#, no-c-format
+msgid "Explicit type declaration for intrinsic `%A' disagrees with invocation at %0"
+msgstr ""
+
+#: f/bad.def:821
+#, no-c-format
+msgid "Unable to open INCLUDE file `%A' at %0"
+msgstr ""
+
+#: f/bad.def:839
+#, no-c-format
+msgid "Null argument at %0 for statement function reference at %1"
+msgstr ""
+
+#: f/bad.def:842
+#, no-c-format
+msgid "Null argument at %0 for procedure invocation at %1"
+msgstr ""
+
+#: f/bad.def:845
+#, no-c-format
+msgid "%A too few arguments (starting with dummy argument `%B') as of %0 for statement function reference at %1"
+msgstr ""
+
+#: f/bad.def:848
+#, no-c-format
+msgid "%A too many arguments as of %0 for statement function reference at %1"
+msgstr ""
+
+#: f/bad.def:851
+#, no-c-format
+msgid "Array supplied at %1 for dummy argument `%A' in statement function reference at %0"
+msgstr ""
+
+#: f/bad.def:854
+#, no-c-format
+msgid "Unsupported FORMAT specifier at %0"
+msgstr ""
+
+#: f/bad.def:857
+#, no-c-format
+msgid "Variable-expression FORMAT specifier at %0 -- unsupported"
+msgstr ""
+
+#: f/bad.def:880
+#, no-c-format
+msgid "Unsupported VXT statement at %0"
+msgstr ""
+
+#: f/bad.def:883
+#, no-c-format
+msgid "Attempt to specify second initial value for `%A' at %0"
+msgstr ""
+
+#: f/bad.def:886
+#, no-c-format
+msgid "Too few initial values in list of initializers for `%A' at %0"
+msgstr ""
+
+#: f/bad.def:889
+#, no-c-format
+msgid "Too many initial values in list of initializers starting at %0"
+msgstr ""
+
+#: f/bad.def:892
+#, no-c-format
+msgid "Array or substring specification for `%A' out of range in statement at %0"
+msgstr ""
+
+#: f/bad.def:895
+#, no-c-format
+msgid "Array subscript #%B out of range for initialization of `%A' in statement at %0"
+msgstr ""
+
+#: f/bad.def:898
+#, no-c-format
+msgid "Implied do-loop step count of 0 (zero) for iteration variable `%A' in statement at %0"
+msgstr ""
+
+#: f/bad.def:901
+#, no-c-format
+msgid "Implied do-loop iteration count of 0 (zero) for iteration variable `%A' in statement at %0"
+msgstr ""
+
+#: f/bad.def:904
+#, no-c-format
+msgid "Not an integer constant expression in implied do-loop in statement at %0"
+msgstr ""
+
+#: f/bad.def:907
+#, no-c-format
+msgid "Attempt to specify second initial value for element of `%A' at %0"
+msgstr ""
+
+#: f/bad.def:910
+#, no-c-format
+msgid "Attempt to EQUIVALENCE common areas `%A' and `%B' at %0"
+msgstr ""
+
+#: f/bad.def:913
+#, no-c-format
+msgid "Can't place `%A' as directed by EQUIVALENCE due to alignment restrictions"
+msgstr ""
+
+#: f/bad.def:916
+#, no-c-format
+msgid "Mismatched EQUIVALENCE requirements for placement of `%A' at both %C and %D bytes offset from `%B'"
+msgstr ""
+
+#: f/bad.def:919
+#, no-c-format
+msgid "Array or substring specification for `%A' out of range in EQUIVALENCE statement"
+msgstr ""
+
+#: f/bad.def:922
+#, no-c-format
+msgid "Substring of non-CHARACTER entity `%A' in EQUIVALENCE statement"
+msgstr ""
+
+#: f/bad.def:925
+#, no-c-format
+msgid "Array reference to scalar variable `%A' in EQUIVALENCE statement"
+msgstr ""
+
+#: f/bad.def:928
+#, no-c-format
+msgid "Array subscript #%B out of range for EQUIVALENCE of `%A'"
+msgstr ""
+
+#: f/bad.def:936
+#, no-c-format
+msgid "Attempt to extend COMMON area beyond its starting point via EQUIVALENCE of `%A'"
+msgstr ""
+
+#: f/bad.def:939
+#, no-c-format
+msgid "Too few elements in reference to array `%A' in EQUIVALENCE statement"
+msgstr ""
+
+#: f/bad.def:942
+#, no-c-format
+msgid "Too many elements in reference to array `%A' in EQUIVALENCE statement"
+msgstr ""
+
+#: f/bad.def:945
+#, no-c-format
+msgid "Mixed CHARACTER and non-CHARACTER types via COMMON/EQUIVALENCE -- for example, `%A' and `%B'"
+msgstr ""
+
+#: f/bad.def:958
+#, no-c-format
+msgid "Return value `%A' for FUNCTION at %0 not referenced in subprogram"
+msgstr ""
+
+#: f/bad.def:976
+#, no-c-format
+msgid "Common block `%A' is SAVEd, explicitly or implicitly, at %0 but not SAVEd at %1"
+msgstr ""
+
+#: f/bad.def:979
+#, no-c-format
+msgid "Common block `%A' is %B %D in length at %0 but %C %E at %1"
+msgstr ""
+
+#: f/bad.def:987
+#, no-c-format
+msgid "Blank common initialized at %0"
+msgstr ""
+
+#: f/bad.def:990
+#, no-c-format
+msgid "Intrinsic `%A' is passed as actual argument at %0 but not explicitly declared INTRINSIC"
+msgstr ""
+
+#: f/bad.def:993
+#, no-c-format
+msgid "External procedure `%A' is passed as actual argument at %0 but not explicitly declared EXTERNAL"
+msgstr ""
+
+#: f/bad.def:996
+#, no-c-format
+msgid "Character `%A' (for example) is upper-case in symbol name at %0"
+msgstr ""
+
+#: f/bad.def:999
+#, no-c-format
+msgid "Character `%A' (for example) is lower-case in symbol name at %0"
+msgstr ""
+
+#: f/bad.def:1002
+#, no-c-format
+msgid "Character `%A' not followed at some point by lower-case character in symbol name at %0"
+msgstr ""
+
+#: f/bad.def:1005
+#, no-c-format
+msgid "Initial character `%A' is lower-case in symbol name at %0"
+msgstr ""
+
+#: f/bad.def:1013
+#, no-c-format
+msgid "NAMELIST not adequately supported by run-time library for source files with case preserved"
+msgstr ""
+
+#: f/bad.def:1016
+#, no-c-format
+msgid "Nested %% construct (%%VAL, %%REF, or %%DESCR) at %0"
+msgstr ""
+
+#: f/bad.def:1034
+#, no-c-format
+msgid "Statement at %0 invalid in BLOCK DATA program unit at %1"
+msgstr ""
+
+#: f/bad.def:1037
+#, no-c-format
+msgid "Truncating characters on right side of character constant at %0"
+msgstr ""
+
+#: f/bad.def:1040
+#, no-c-format
+msgid "Truncating characters on right side of hollerith constant at %0"
+msgstr ""
+
+#: f/bad.def:1043
+#, no-c-format
+msgid "Truncating non-zero data on left side of numeric constant at %0"
+msgstr ""
+
+#: f/bad.def:1046
+#, no-c-format
+msgid "Truncating non-zero data on left side of typeless constant at %0"
+msgstr ""
+
+#: f/bad.def:1049
+#, no-c-format
+msgid "Typeless constant at %0 too large"
+msgstr ""
+
+#: f/bad.def:1052
+#, no-c-format
+msgid "First-column ampersand continuation at %0"
+msgstr ""
+
+#: f/bad.def:1055 f/bad.def:1058
+#, no-c-format
+msgid "Global name `%A' defined at %0 already defined at %1 [info -f g77 M GLOBALS]"
+msgstr ""
+
+#: f/bad.def:1061 f/bad.def:1064
+#, no-c-format
+msgid "Global name `%A' is %B at %0 but is %C at %1 [info -f g77 M GLOBALS]"
+msgstr ""
+
+#: f/bad.def:1067 f/bad.def:1070
+#, no-c-format
+msgid "Global name `%A' at %0 has different type at %1 [info -f g77 M GLOBALS]"
+msgstr ""
+
+#: f/bad.def:1073
+#, no-c-format
+msgid "Too %B arguments passed to `%A' at %0 versus definition at %1 [info -f g77 M GLOBALS]"
+msgstr ""
+
+#: f/bad.def:1076
+#, no-c-format
+msgid "Too %B arguments for `%A' at %0 versus invocation at %1 [info -f g77 M GLOBALS]"
+msgstr ""
+
+#: f/bad.def:1079 f/bad.def:1082
+#, no-c-format
+msgid "Argument #%B of `%A' is %C at %0 but is %D at %1 [info -f g77 M GLOBALS]"
+msgstr ""
+
+#: f/bad.def:1085
+#, no-c-format
+msgid "Array `%A' at %0 is too large to handle"
+msgstr ""
+
+#: f/bad.def:1088
+#, no-c-format
+msgid "Statement function `%A' defined at %0 is not used"
+msgstr ""
+
+#: f/bad.def:1091
+#, no-c-format
+msgid "Intrinsic `%A', invoked at %0, known to be non-Y2K-compliant [info -f g77 M Y2KBAD]"
+msgstr ""
+
+#: f/bad.def:1094
+#, no-c-format
+msgid "Internal compiler error -- cannot perform operation"
+msgstr ""
+
+#. Kind messages are used in diagnostic location reports of the
+#. form "<file>: In function `foo': <error message>".
+#: f/info-k.def:32
+msgid "In unknown kind"
+msgstr ""
+
+#: f/info-k.def:33
+msgid "In entity"
+msgstr ""
+
+#: f/info-k.def:34
+msgid "In function"
+msgstr ""
+
+#: f/info-k.def:35
+msgid "In subroutine"
+msgstr ""
+
+#: f/info-k.def:36
+msgid "In program"
+msgstr ""
+
+#: f/info-k.def:37
+msgid "In block-data unit"
+msgstr ""
+
+#: f/info-k.def:38
+msgid "In common block"
+msgstr ""
+
+#: f/info-k.def:39
+msgid "In construct"
+msgstr ""
+
+#: f/info-k.def:40
+msgid "In namelist"
+msgstr ""
+
+#: f/info-k.def:41
+msgid "In anything"
+msgstr ""
+
+#: java/check-init.c:917
+#, c-format
+msgid "internal error in check-init: tree code not implemented: %s"
+msgstr ""
+
+#: java/check-init.c:990
+#, c-format
+msgid "final field '%s' may not have been initialized"
+msgstr ""
+
+#: java/class.c:539 java/class.c:564
+msgid "internal error - too many interface type"
+msgstr ""
+
+#: java/class.c:677
+msgid "bad method signature"
+msgstr ""
+
+#: java/class.c:726
+msgid "misplaced ConstantValue attribute (not in any field)"
+msgstr ""
+
+#: java/class.c:728
+#, c-format
+msgid "duplicate ConstantValue attribute for field '%s'"
+msgstr ""
+
+#: java/class.c:739
+#, c-format
+msgid "ConstantValue attribute of field '%s' has wrong type"
+msgstr ""
+
+#: java/class.c:1103
+#, c-format
+msgid "field '%s' not found in class"
+msgstr ""
+
+#: java/class.c:1365
+msgid "abstract method in non-abstract class"
+msgstr ""
+
+#: java/class.c:2078
+#, c-format
+msgid "non-static method '%s' overrides static method"
+msgstr ""
+
+#: java/decl.c:1541
+#, c-format
+msgid "In %s: overlapped variable and exception ranges at %d"
+msgstr ""
+
+#: java/decl.c:1622
+msgid "bad type in parameter debug info"
+msgstr ""
+
+#: java/decl.c:1632
+#, c-format
+msgid "bad PC range for debug info for local `%s'"
+msgstr ""
+
+#: java/expr.c:530
+msgid "stack underflow - dup* operation"
+msgstr ""
+
+#: java/expr.c:1534
+#, c-format
+msgid "reference `%s' is ambiguous: appears in interface `%s' and interface `%s'"
+msgstr ""
+
+#: java/expr.c:1563
+#, c-format
+msgid "field `%s' not found"
+msgstr ""
+
+#: java/expr.c:1715
+msgid "ret instruction not implemented"
+msgstr ""
+
+#: java/expr.c:1857
+#, c-format
+msgid "method '%s' not found in class"
+msgstr ""
+
+#: java/expr.c:2060
+#, c-format
+msgid "failed to find class '%s'"
+msgstr ""
+
+#: java/expr.c:2070
+#, c-format
+msgid "class '%s' has no method named '%s' matching signature '%s'"
+msgstr ""
+
+#: java/expr.c:2080
+msgid "invokestatic on non static method"
+msgstr ""
+
+#: java/expr.c:2085
+msgid "invokestatic on abstract method"
+msgstr ""
+
+#: java/expr.c:2093
+msgid "invoke[non-static] on static method"
+msgstr ""
+
+#: java/expr.c:2396
+#, c-format
+msgid "missing field '%s' in '%s'"
+msgstr ""
+
+#: java/expr.c:2402
+#, c-format
+msgid "mismatching signature for field '%s' in '%s'"
+msgstr ""
+
+#: java/expr.c:2425
+#, c-format
+msgid "assignment to final field `%s' not in field's class"
+msgstr ""
+
+#: java/expr.c:2430
+#, c-format
+msgid "assignment to final static field `%s' not in class initializer"
+msgstr ""
+
+#: java/expr.c:2437
+#, c-format
+msgid "assignment to final field `%s' not in constructor"
+msgstr ""
+
+#: java/expr.c:2684
+#, c-format
+msgid "can't expand %s"
+msgstr ""
+
+#: java/expr.c:2861
+msgid "invalid PC in line number table"
+msgstr ""
+
+#. We've just reached the end of a region of dead code.
+#: java/expr.c:2906
+#, c-format
+msgid "unreachable bytecode from %d to before %d"
+msgstr ""
+
+#. We've just reached the end of a region of dead code.
+#: java/expr.c:2943
+#, c-format
+msgid "unreachable bytecode from %d to the end of the method"
+msgstr ""
+
+#. duplicate code from LOAD macro
+#: java/expr.c:3261
+msgid "unrecogized wide sub-instruction"
+msgstr ""
+
+#: java/jcf-io.c:543
+#, c-format
+msgid "source file for class `%s' is newer than its matching class file. Source file `%s' used instead"
+msgstr ""
+
+#: java/jcf-parse.c:338
+msgid "bad string constant"
+msgstr ""
+
+#: java/jcf-parse.c:356
+#, c-format
+msgid "bad value constant type %d, index %d"
+msgstr ""
+
+#: java/jcf-parse.c:528
+#, c-format
+msgid "can't reopen %s"
+msgstr ""
+
+#: java/jcf-parse.c:533
+#, c-format
+msgid "can't close %s"
+msgstr ""
+
+#: java/jcf-parse.c:619
+#, c-format
+msgid "cannot find file for class %s"
+msgstr ""
+
+#: java/jcf-parse.c:631
+msgid "not a valid Java .class file"
+msgstr ""
+
+#: java/jcf-parse.c:634
+msgid "error while parsing constant pool"
+msgstr ""
+
+#: java/jcf-parse.c:637
+#, c-format
+msgid "error in constant pool entry #%d\n"
+msgstr ""
+
+#. FIXME - where was first time
+#: java/jcf-parse.c:649
+#, c-format
+msgid "reading class %s for the second time from %s"
+msgstr ""
+
+#: java/jcf-parse.c:667
+msgid "error while parsing fields"
+msgstr ""
+
+#: java/jcf-parse.c:670
+msgid "error while parsing methods"
+msgstr ""
+
+#: java/jcf-parse.c:673
+msgid "error while parsing final attributes"
+msgstr ""
+
+#: java/jcf-parse.c:687
+#, c-format
+msgid "the `java.lang.Object' that was found in `%s' didn't have the special zero-length `gnu.gcj.gcj-compiled' attribute. This generally means that your classpath is incorrectly set. Use `info gcj \"Input Options\"' to see the info page describing how to set the classpath"
+msgstr ""
+
+#: java/jcf-parse.c:777
+msgid "missing Code attribute"
+msgstr ""
+
+#: java/jcf-parse.c:1014
+msgid "source file seen twice on command line and will be compiled only once"
+msgstr ""
+
+#: java/jcf-parse.c:1030
+msgid "no input file specified"
+msgstr ""
+
+#: java/jcf-parse.c:1059
+#, c-format
+msgid "can't close input file %s"
+msgstr ""
+
+#: java/jcf-parse.c:1096
+#, c-format
+msgid "bad zip/jar file %s"
+msgstr ""
+
+#: java/jcf-write.c:2650
+#, c-format
+msgid "internal error in generate_bytecode_insn - tree code not implemented: %s"
+msgstr ""
+
+#: java/jcf-write.c:2988
+msgid "field initializer type mismatch"
+msgstr ""
+
+#: java/jcf-write.c:3419
+#, c-format
+msgid "can't create directory %s"
+msgstr ""
+
+#: java/jcf-write.c:3473
+#, c-format
+msgid "can't create %s"
+msgstr ""
+
+#: java/jv-scan.c:187
+msgid "only one of `--print-main', `--list-class', and `--complexity' allowed"
+msgstr ""
+
+#: java/jv-scan.c:190
+#, c-format
+msgid "can't open output file `%s'"
+msgstr ""
+
+#: java/jv-scan.c:224
+#, c-format
+msgid "file not found `%s'"
+msgstr ""
+
+#: java/jvspec.c:426
+msgid "can't specify `-D' without `--main'\n"
+msgstr ""
+
+#: java/jvspec.c:429
+#, c-format
+msgid "`%s' is not a valid class name"
+msgstr ""
+
+#: java/jvspec.c:435
+msgid "--resource requires -o"
+msgstr ""
+
+#: java/jvspec.c:442
+msgid "warning: already-compiled .class files ignored with -C"
+msgstr ""
+
+#: java/jvspec.c:449
+msgid "cannot specify both -C and -o"
+msgstr ""
+
+#: java/jvspec.c:461
+msgid "cannot create temporary file"
+msgstr ""
+
+#: java/jvspec.c:489
+msgid "using both @FILE with multiple files not implemented"
+msgstr ""
+
+#: java/jvspec.c:538
+msgid "cannot specify `main' class when not linking"
+msgstr ""
+
+#: java/lang.c:548
+msgid "can't do dependency tracking with input from stdin"
+msgstr ""
+
+#: java/lang.c:564
+msgid "couldn't determine target name for dependency tracking"
+msgstr ""
+
+#: java/lex.c:303
+#, c-format
+msgid ""
+"unknown encoding: `%s'\n"
+"This might mean that your locale's encoding is not supported\n"
+"by your system's iconv(3) implementation. If you aren't trying\n"
+"to use a particular encoding for your input file, try the\n"
+"`--encoding=UTF-8' option"
+msgstr ""
+
+#: java/mangle.c:85
+#, c-format
+msgid "can't mangle %s"
+msgstr ""
+
+#: java/mangle_name.c:144 java/mangle_name.c:216
+msgid "internal error - invalid Utf8 name"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:881
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:962
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1303
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1364
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1574
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1796
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1805
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1816
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1827
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1839
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1854
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1871
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1873
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1945
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2116
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2178
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2330
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2342
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2349
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2356
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2367
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2369
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2407
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2409
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2411
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2432
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2434
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2436
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2452
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2454
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2475
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2477
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2479
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2507
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2509
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2511
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2513
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2531
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2533
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2544
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2555
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2566
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2577
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2588
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2601
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2605
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2607
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2620
+msgid "Missing term"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:883
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:734
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:772
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:797
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:983
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1338
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1550
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1552
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1781
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1807
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1818
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1829
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1841
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1856
+msgid "';' expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:732
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:770
+msgid "Missing name"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:795
+msgid "'*' expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:809
+msgid "Class or interface declaration expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:846
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:848
+msgid "Missing class name"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:851
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:855
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:863
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1023
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1284
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1286
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1616
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1867
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1899
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1952
+msgid "'{' expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:865
+msgid "Missing super class name"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:875
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:891
+msgid "Missing interface name"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:977
+msgid "Missing variable initializer"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:994
+msgid "Invalid declaration"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:997
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1082
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2153
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2175
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2179
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2214
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2291
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2301
+msgid "']' expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1001
+msgid "Unbalanced ']'"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1037
+msgid "Invalid method declaration, method name required"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1042
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1047
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1052
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2036
+msgid "Identifier expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1057
+msgid "Invalid method declaration, return type required"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1080
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1530
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1537
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1546
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1548
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1576
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1684
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1981
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2034
+msgid "')' expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1096
+msgid "Missing formal parameter term"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1111
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1116
+msgid "Missing identifier"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1136
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1145
+msgid "Missing class type term"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1301
+msgid "Invalid interface type"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1494
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1663
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1665
+msgid "':' expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1516
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1521
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1526
+msgid "Invalid expression statement"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1544
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1572
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1612
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1680
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1748
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1869
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1938
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2028
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2030
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2038
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2274
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2276
+msgid "'(' expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1614
+msgid "Missing term or ')'"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1661
+msgid "Missing or invalid constant expression"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1682
+msgid "Missing term and ')' expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1721
+msgid "Invalid control expression"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1723
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1725
+msgid "Invalid update expression"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1750
+msgid "Invalid init statement"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1941
+msgid "Missing term or ')' expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1983
+msgid "'class' or 'this' expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1985
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1987
+msgid "'class' expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2032
+msgid "')' or term expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2151
+msgid "'[' expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2229
+msgid "Field expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2286
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2296
+msgid "Missing term and ']' expected"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2400
+msgid "']' expected, invalid type expression"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2403
+msgid "Invalid type expression"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2515
+msgid "Invalid reference type"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2993
+msgid "Constructor invocation must be first thing in a constructor"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2995
+msgid "Only constructors can invoke constructors"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3004
+#, c-format
+msgid ": `%s' JDK1.1(TM) feature"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3064
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3066
+#, c-format
+msgid ""
+"%s.\n"
+"%s"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6879
+#, c-format
+msgid "malformed .zip archive in CLASSPATH: %s"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6950
+#, c-format
+msgid "Can't find default package `%s'. Check the CLASSPATH environment variable and the access to the archives"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12352
+#, c-format
+msgid "missing static field `%s'"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12357
+#, c-format
+msgid "not a static field `%s'"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12400
+#, c-format
+msgid "No case for %s"
+msgstr ""
+
+#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:13365
+#, c-format
+msgid "unregistered operator %s"
+msgstr ""
+
+#: java/typeck.c:553
+msgid "junk at end of signature string"
+msgstr ""
+
+#: java/verify.c:479
+msgid "bad pc in exception_table"
+msgstr ""
+
+#: java/verify.c:485
+msgid "exception handler inside code that is being protected"
+msgstr ""
+
+#: java/verify.c:1395
+#, c-format
+msgid "unknown opcode %d@pc=%d during verification"
+msgstr ""
+
+#: java/verify.c:1465 java/verify.c:1478 java/verify.c:1482
+#, c-format
+msgid "verification error at PC=%d"
+msgstr ""
+
+#: java/lang-options.h:32
+msgid "Disable automatic array bounds checking"
+msgstr ""
+
+#: java/lang-options.h:34
+msgid "Disable assignability checks for stores into object arrays"
+msgstr ""
+
+#: java/lang-options.h:36
+msgid "Assume native functions are implemented using JNI"
+msgstr ""
+
+#: java/lang-options.h:38
+msgid "Replace system path"
+msgstr ""
+
+#: java/lang-options.h:40
+msgid "Set class path"
+msgstr ""
+
+#: java/lang-options.h:42
+msgid "Set class path (deprecated: use --classpath instead)"
+msgstr ""
+
+#: java/lang-options.h:44
+msgid "Choose class whose main method should be used"
+msgstr ""
+
+#: java/lang-options.h:46
+msgid "Choose input encoding (default comes from locale)"
+msgstr ""
+
+#: java/lang-options.h:48
+msgid "Add directory to class path"
+msgstr ""
+
+#: java/lang-options.h:50
+msgid "Directory where class files should be written"
+msgstr ""
+
+#: java/lang-options.h:52
+msgid "Warn if modifiers are specified when not necessary"
+msgstr ""
+
+#: java/lang-options.h:54
+msgid "Warn if deprecated empty statements are found"
+msgstr ""
+
+#: java/lang-options.h:56
+msgid "Warn if .class files are out of date"
+msgstr ""
+
+#: java/lang-options.h:58
+msgid "Always check for non gcj generated classes archives"
+msgstr ""
+
+#: java/lang-options.h:60
+msgid "Never optimize static class initialization code"
+msgstr ""
+
+#: java/lang-options.h:62
+msgid "Use offset tables for virtual method calls"
+msgstr ""
+
+#: objc/objc-act.c:651
+#, c-format
+msgid "object does not conform to the `%s' protocol"
+msgstr ""
+
+#: objc/objc-act.c:737 objc/objc-act.c:810
+#, c-format
+msgid "class `%s' does not implement the `%s' protocol"
+msgstr ""
+
+#: objc/objc-act.c:914
+#, c-format
+msgid "`%s' cannot be statically allocated"
+msgstr ""
+
+#: objc/objc-act.c:963
+#, c-format
+msgid "unexpected type for `id' (%s)"
+msgstr ""
+
+#: objc/objc-act.c:968
+msgid "undefined type `id', please import <objc/objc.h>"
+msgstr ""
+
+#: objc/objc-act.c:1019
+#, c-format
+msgid "protocol `%s' has circular dependency"
+msgstr ""
+
+#: objc/objc-act.c:1041 objc/objc-act.c:5301
+#, c-format
+msgid "cannot find protocol declaration for `%s'"
+msgstr ""
+
+#: objc/objc-act.c:1289 objc/objc-act.c:5877 objc/objc-act.c:6195
+#: objc/objc-act.c:6244 objc/objc-act.c:6280 objc-parse.y:1799
+#, c-format
+msgid "cannot find interface declaration for `%s'"
+msgstr ""
+
+#: objc/objc-act.c:1328
+#, c-format
+msgid "cannot find reference tag for class `%s'"
+msgstr ""
+
+#: objc/objc-act.c:2050
+#, c-format
+msgid "creating selector for non existant method %s"
+msgstr ""
+
+#: objc/objc-act.c:2364
+#, c-format
+msgid "cannot find class `%s'"
+msgstr ""
+
+#: objc/objc-act.c:2366
+#, c-format
+msgid "class `%s' already exists"
+msgstr ""
+
+#. fatal did not work with 2 args...should fix
+#: objc/objc-act.c:2473
+#, c-format
+msgid "cannot find interface declaration for `%s', superclass of `%s'"
+msgstr ""
+
+#: objc/objc-act.c:2480
+#, c-format
+msgid "circular inheritance in interface declaration for `%s'"
+msgstr ""
+
+#: objc/objc-act.c:3566 objc/objc-act.c:3583
+msgid "inconsistent instance variable specification"
+msgstr ""
+
+#: objc/objc-act.c:4580
+msgid "can not use an object as parameter to a method\n"
+msgstr ""
+
+#: objc/objc-act.c:4780
+#, c-format
+msgid "multiple declarations for method `%s'"
+msgstr ""
+
+#: objc/objc-act.c:4946
+#, c-format
+msgid "invalid receiver type `%s'"
+msgstr ""
+
+#: objc/objc-act.c:4977 objc/objc-act.c:5003 objc/objc-act.c:5051
+#, c-format
+msgid "`%s' does not respond to `%s'"
+msgstr ""
+
+#: objc/objc-act.c:4983 objc/objc-act.c:7318
+#, c-format
+msgid "no super class declared in interface for `%s'"
+msgstr ""
+
+#: objc/objc-act.c:5081
+msgid "cannot find class (factory) method"
+msgstr ""
+
+#: objc/objc-act.c:5082 objc/objc-act.c:5126
+#, c-format
+msgid "return type for `%s' defaults to id"
+msgstr ""
+
+#: objc/objc-act.c:5099
+#, c-format
+msgid "method `%s' not implemented by protocol"
+msgstr ""
+
+#: objc/objc-act.c:5108
+msgid "return type defaults to id"
+msgstr ""
+
+#: objc/objc-act.c:5125
+msgid "cannot find method"
+msgstr ""
+
+#: objc/objc-act.c:5399
+#, c-format
+msgid "undeclared selector `%s'"
+msgstr "selector \"%s\" sense declarar"
+
+#. Historically, a class method that produced objects (factory
+#. method) would assign `self' to the instance that it
+#. allocated. This would effectively turn the class method into
+#. an instance method. Following this assignment, the instance
+#. variables could be accessed. That practice, while safe,
+#. violates the simple rule that a class method should not refer
+#. to an instance variable. It's better to catch the cases
+#. where this is done unknowingly than to support the above
+#. paradigm.
+#: objc/objc-act.c:5443
+#, c-format
+msgid "instance variable `%s' accessed in class method"
+msgstr ""
+
+#: objc/objc-act.c:5678
+#, c-format
+msgid "duplicate definition of class method `%s'"
+msgstr ""
+
+#: objc/objc-act.c:5684
+#, c-format
+msgid "duplicate declaration of class method `%s'"
+msgstr ""
+
+#: objc/objc-act.c:5720
+#, c-format
+msgid "duplicate definition of instance method `%s'"
+msgstr ""
+
+#: objc/objc-act.c:5726
+#, c-format
+msgid "duplicate declaration of instance method `%s'"
+msgstr ""
+
+#: objc/objc-act.c:5766
+#, c-format
+msgid "duplicate interface declaration for category `%s(%s)'"
+msgstr ""
+
+#: objc/objc-act.c:5852
+#, c-format
+msgid "instance variable `%s' is declared private"
+msgstr ""
+
+#: objc/objc-act.c:5899
+#, c-format
+msgid "instance variable `%s' is declared %s"
+msgstr ""
+
+#: objc/objc-act.c:5909
+msgid "static access to object of type `id'"
+msgstr ""
+
+#: objc/objc-act.c:5934 objc/objc-act.c:6027
+#, c-format
+msgid "incomplete implementation of class `%s'"
+msgstr ""
+
+#: objc/objc-act.c:5938 objc/objc-act.c:6032
+#, c-format
+msgid "incomplete implementation of category `%s'"
+msgstr ""
+
+#: objc/objc-act.c:5943 objc/objc-act.c:6037
+#, c-format
+msgid "method definition for `%c%s' not found"
+msgstr ""
+
+#: objc/objc-act.c:6081
+#, c-format
+msgid "%s `%s' does not fully implement the `%s' protocol"
+msgstr ""
+
+#: objc/objc-act.c:6139 objc/objc-act.c:8249
+msgid "`@end' missing in implementation context"
+msgstr ""
+
+#: objc/objc-act.c:6167
+#, c-format
+msgid "reimplementation of class `%s'"
+msgstr ""
+
+#: objc/objc-act.c:6209
+#, c-format
+msgid "conflicting super class name `%s'"
+msgstr ""
+
+#: objc/objc-act.c:6224
+#, c-format
+msgid "duplicate interface declaration for class `%s'"
+msgstr ""
+
+#: objc/objc-act.c:6506
+#, c-format
+msgid "duplicate declaration for protocol `%s'"
+msgstr ""
+
+#: objc/objc-act.c:7363
+msgid "[super ...] must appear in a method context"
+msgstr ""
+
+#: objc/objc-act.c:8354 objc/objc-act.c:8370
+#, c-format
+msgid "potential selector conflict for method `%s'"
+msgstr ""
+
+#: objc-parse.y:2655
+msgid "`@end' must appear in an implementation context"
+msgstr ""
+
+#: objc-parse.y:2931
+msgid "method definition not in class context"
+msgstr ""
+
+#: objc/lang-options.h:27
+msgid "Dump decls to a .decl file"
+msgstr ""
+
+#: objc/lang-options.h:29
+msgid "Generate code for GNU runtime environment"
+msgstr ""
+
+#: objc/lang-options.h:32
+msgid "Generate code for NeXT runtime environment"
+msgstr ""
+
+#: objc/lang-options.h:35
+msgid "Warn if a selector has multiple methods"
+msgstr ""
+
+#: objc/lang-options.h:39
+msgid "Do not warn if inherited methods are unimplemented"
+msgstr ""
+
+#: objc/lang-options.h:41
+msgid "Generate C header of platform specific features"
+msgstr ""
+
+#: objc/lang-options.h:43
+msgid "Specify the name of the class for constant strings"
+msgstr ""
+
+#. This is the contribution to the `lang_options' array in gcc.c for
+#. treelang.
+#: treelang/lang-options.h:26
+msgid "(debug) trace parsing process"
+msgstr ""
+
+#: treelang/lang-options.h:27
+msgid "(debug) trace lexical analysis"
+msgstr ""
+
+#: config/rs6000/darwin.h:62
+msgid " conflicting code gen style switches are used"
+msgstr ""
+
+#: config/i386/mingw32.h:85 config/i386/cygwin.h:171
+msgid "shared and mdll are not compatible"
+msgstr ""
+
+#: java/lang-specs.h:33
+msgid "-fjni and -femit-class-files are incompatible"
+msgstr ""
+
+#: java/lang-specs.h:34
+msgid "-fjni and -femit-class-file are incompatible"
+msgstr ""
+
+#: java/lang-specs.h:35 java/lang-specs.h:36
+msgid "-femit-class-file should used along with -fsyntax-only"
+msgstr ""
+
+#: ada/lang-specs.h:38 java/jvspec.c:77 gcc.c:716
+msgid "-pg and -fomit-frame-pointer are incompatible"
+msgstr ""
+
+#: ada/lang-specs.h:41
+msgid "-c or -S required for Ada"
+msgstr ""
+
+#: config/darwin.h:212
+msgid "-current_version only allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:215
+msgid "-install_name only allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:220
+msgid "-bundle not allowed with -dynamiclib"
+msgstr "no es permet -bundle amb -dynamiclib"
+
+#: config/darwin.h:221
+msgid "-bundle_loader not allowed with -dynamiclib"
+msgstr "no es permet -bundle_loader amb -dynamiclib"
+
+#: config/darwin.h:222
+msgid "-client_name not allowed with -dynamiclib"
+msgstr "no es permet -client_name amb -dynamiclib"
+
+#: config/darwin.h:225
+msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:226
+msgid "-force_flat_namespace not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:228
+msgid "-keep_private_externs not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:229
+msgid "-private_bundle not allowed with -dynamiclib"
+msgstr "no es permet -private_bundle amb -dynamiclib"
+
+#: config/sparc/freebsd.h:34 config/ia64/freebsd.h:23
+#: config/alpha/freebsd.h:44 config/rs6000/sysv4.h:1107
+#: config/i386/freebsd-aout.h:213
+msgid "`-p' not supported; use `-pg' and gprof(1)"
+msgstr ""
+
+#: config/sparc/linux64.h:197 config/sparc/linux64.h:208
+#: config/sparc/netbsd-elf.h:163 config/sparc/netbsd-elf.h:182
+#: config/sparc/sol2-bi.h:168 config/sparc/sol2-bi.h:178
+msgid "may not use both -m32 and -m64"
+msgstr ""
+
+#: config/arm/arm.h:178
+msgid "-mapcs-26 and -mapcs-32 may not be used together"
+msgstr ""
+
+#: config/arm/arm.h:180
+msgid "-msoft-float and -mhard_float may not be used together"
+msgstr ""
+
+#: config/arm/arm.h:182
+msgid "-mbig-endian and -mlittle-endian may not be used together"
+msgstr ""
+
+#: config/i386/sco5.h:195
+msgid "-pg not supported on this platform"
+msgstr "-pg no té suport en aquesta plataforma"
+
+#: config/i386/sco5.h:196
+msgid "-p and -pp specified - pick one"
+msgstr "-p i -pp especificats - tria un"
+
+#: config/i386/sco5.h:271
+msgid "-G and -static are mutually exclusive"
+msgstr "-G·i·-static són mútuament exclusius"
+
+#: f/lang-specs.h:38 gcc.c:689
+msgid "GNU C does not support -C without using -E"
+msgstr ""
+
+#: f/lang-specs.h:39 gcc.c:690
+msgid "GNU C does not support -CC without using -E"
+msgstr "GNU C no dóna suport a -CC sense usar -E"
+
+#: config/mcore/mcore.h:60
+msgid "choose either big or little endian, not both"
+msgstr ""
+
+#: config/mcore/mcore.h:63
+msgid "choose either m340 or m210 not both"
+msgstr ""
+
+#: config/mcore/mcore.h:64
+msgid "the m210 does not have little endian support"
+msgstr ""
+
+#: config/i386/cygwin.h:115
+msgid "mno-cygwin and mno-win32 are not compatible"
+msgstr ""
+
+#: config/vax/netbsd-elf.h:42
+msgid "The -shared option is not currently supported for VAX ELF."
+msgstr "L'opció -shared no se suporta actualment per a ELF de VAX."
+
+#: treelang/lang-specs.h:52
+msgid "-pg or -p and -fomit-frame-pointer are incompatible"
+msgstr "punters -pg o -p i -fomit-frame són incompatibles"
+
+#: gcc.c:847
+msgid "-E required when input is from standard input"
+msgstr ""
+
+#: gcc.c:851
+msgid "compilation of header file requested"
+msgstr ""
+
+#: config/vax/vax.h:50 config/vax/vax.h:51
+msgid "profiling not supported with -mg\n"
+msgstr ""
+
+#: config/mips/mips.h:954
+msgid "-pipe is not supported"
+msgstr ""
+
+#: config/mips/mips.h:1156 config/arc/arc.h:63
+msgid "may not use both -EB and -EL"
+msgstr ""
+
+#: config/mips/r3900.h:35
+msgid "-mhard-float not supported"
+msgstr ""
+
+#: config/mips/r3900.h:37
+msgid "-msingle-float and -msoft-float can not both be specified"
+msgstr ""
diff --git a/gcc/po/da.po b/gcc/po/da.po
index 265251d6d7a..36be27771ad 100644
--- a/gcc/po/da.po
+++ b/gcc/po/da.po
@@ -127,7 +127,8 @@
msgid ""
msgstr ""
"Project-Id-Version: gcc 3.3\n"
-"POT-Creation-Date: 2003-10-24 13:20+0200\n"
+"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
+"POT-Creation-Date: 2004-02-06 01:40+0000\n"
"PO-Revision-Date: 2003-05-25 18:00+0200\n"
"Last-Translator: Ole Laursen <olau@hardworking.dk>\n"
"Language-Team: Danish <dansk@klid.dk>\n"
@@ -135,1051 +136,1140 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
-#: attribs.c:185
+#: attribs.c:178
#, c-format
msgid "`%s' attribute directive ignored"
msgstr "egenskabsdirektivet '%s' ignoreret"
-#: attribs.c:193
+#: attribs.c:186
#, c-format
msgid "wrong number of arguments specified for `%s' attribute"
msgstr "forkert antal parametre angivet til egenskaben '%s'"
-#: attribs.c:210
+#: attribs.c:203
#, c-format
msgid "`%s' attribute does not apply to types"
msgstr "egenskaben '%s' kan ikke anvendes på typer"
-#: attribs.c:247
+#: attribs.c:249
#, c-format
msgid "`%s' attribute only applies to function types"
msgstr "egenskaben '%s' kan kun anvendes sammen med funktionstyper"
-#: attribs.c:404 c-common.c:5275 c-common.c:5297 c-common.c:5319
-#: c-common.c:5350 c-common.c:5372 c-common.c:5397 c-common.c:5423
-#: c-common.c:5453 c-common.c:5491 c-common.c:5538 c-common.c:5568
-#: c-common.c:5598 c-common.c:5621 c-common.c:5878 c-common.c:5900
-#: c-common.c:5943 c-common.c:6020 c-common.c:6076 c-common.c:6103
-#: c-common.c:6186 c-common.c:6220 c-common.c:6574 config/arm/arm.c:2101
-#: config/arm/arm.c:2128 config/avr/avr.c:4774 config/h8300/h8300.c:3693
-#: config/h8300/h8300.c:3718 config/i386/i386.c:1403 config/i386/winnt.c:78
-#: config/ip2k/ip2k.c:3204
+#: attribs.c:416 c-common.c:4344 c-common.c:4363 c-common.c:4381
+#: c-common.c:4408 c-common.c:4427 c-common.c:4450 c-common.c:4473
+#: c-common.c:4499 c-common.c:4533 c-common.c:4577 c-common.c:4605
+#: c-common.c:4633 c-common.c:4652 c-common.c:4907 c-common.c:4929
+#: c-common.c:4964 c-common.c:5031 c-common.c:5077 c-common.c:5135
+#: c-common.c:5166 c-common.c:5512 c-common.c:5535 c-common.c:5574
+#: config/arm/arm.c:2278 config/arm/arm.c:2305 config/avr/avr.c:4539
+#: config/h8300/h8300.c:4281 config/h8300/h8300.c:4304 config/i386/i386.c:1599
+#: config/i386/i386.c:15299 config/i386/winnt.c:86 config/ia64/ia64.c:1053
+#: config/ip2k/ip2k.c:3151
#, c-format
msgid "`%s' attribute ignored"
msgstr "egenskaben '%s' ignoreret"
-#: builtins.c:285
+#: builtins.c:318
msgid "offset outside bounds of constant string"
msgstr "forskydning udenfor grænserne af konstant streng"
-#: builtins.c:765
+#: builtins.c:786
msgid "second arg to `__builtin_prefetch' must be a constant"
msgstr "den anden parameter til '__builtin_prefetch' skal være en konstant"
-#: builtins.c:772
+#: builtins.c:793
msgid "invalid second arg to __builtin_prefetch; using zero"
msgstr "ugyldig anden parameter til '__builtin_prefetch'; benytter nul"
-#: builtins.c:779
+#: builtins.c:800
msgid "third arg to `__builtin_prefetch' must be a constant"
msgstr "en tredje parameter til '__builtin_prefetch' skal være en konstant"
-#: builtins.c:786
+#: builtins.c:807
msgid "invalid third arg to __builtin_prefetch; using zero"
msgstr "ugyldig tredje parameter til '__builtin_prefetch'; benytter nul"
-#. ??? We used to try and build up a call to the out of line function,
-#. guessing about what registers needed saving etc. This became much
-#. harder with __builtin_va_start, since we don't have a tree for a
-#. call to __builtin_saveregs to fall back on. There was exactly one
-#. port (i860) that used this code, and I'm unconvinced it could actually
-#. handle the general case. So we no longer try to handle anything
-#. weird and make the backend absorb the evil.
-#: builtins.c:2875
-msgid "__builtin_saveregs not supported by this target"
-msgstr "__builtin_saveregs understøttes ikke af denne målarkitektur"
-
-#: builtins.c:2917
+#: builtins.c:3828
msgid "argument of `__builtin_args_info' must be constant"
msgstr "parameteren til '__builtin_args_info' skal være konstant"
-#: builtins.c:2923
+#: builtins.c:3834
msgid "argument of `__builtin_args_info' out of range"
msgstr "parameteren til '__builtin_args_info' er uden for det gyldige interval"
-#: builtins.c:2929
+#: builtins.c:3840
msgid "missing argument in `__builtin_args_info'"
msgstr "manglende parameter i '__builtin_args_info'"
-#: builtins.c:2960
+#: builtins.c:3856
msgid "`va_start' used in function with fixed args"
msgstr "`va_start' benyttet i en funktion med fast antal parametre"
-#: builtins.c:2979
+#: builtins.c:3875
msgid "second parameter of `va_start' not last named argument"
msgstr "den anden parameter til 'va_start' er ikke den sidste navngivne parameter"
#. Evidently an out of date version of <stdarg.h>; can't validate
#. va_start's second argument, but can still work as intended.
-#: builtins.c:2984
+#: builtins.c:3880
msgid "`__builtin_next_arg' called without an argument"
msgstr "`__builtin_next_arg' kaldt uden en parameter"
-#: builtins.c:3070
+#: builtins.c:3969
msgid "too many arguments to function `va_start'"
msgstr "for mange parametre til funktionen 'va_start'"
-#: builtins.c:3172
+#: builtins.c:4091
msgid "first argument to `va_arg' not of type `va_list'"
msgstr "den første parameter til 'va_arg' er ikke af typen 'va_list'"
#. Unfortunately, this is merely undefined, rather than a constraint
#. violation, so we cannot make this an error. If this call is never
#. executed, the program is still strictly conforming.
-#: builtins.c:3204
+#: builtins.c:4123
#, c-format
msgid "`%s' is promoted to `%s' when passed through `...'"
msgstr "'%s' forfremmes til '%s' ved overbringelse gennem '...'"
-#: builtins.c:3209
+#: builtins.c:4128
#, c-format
msgid "(so you should pass `%s' not `%s' to `va_arg')"
msgstr "(så du skal overbring '%s' ikke '%s' til 'va_arg')"
-#: builtins.c:3340
+#: builtins.c:4240
msgid "invalid arg to `__builtin_frame_address'"
msgstr "ugyldig parameter til '__builtin_frame_address'"
-#: builtins.c:3342
+#: builtins.c:4242
msgid "invalid arg to `__builtin_return_address'"
msgstr "ugyldig parameter til '__builtin_return_address'"
-#: builtins.c:3356
+#: builtins.c:4256
msgid "unsupported arg to `__builtin_frame_address'"
msgstr "ikke-understøttet parameter til '__builtin_frame_address'"
-#: builtins.c:3358
+#: builtins.c:4258
msgid "unsupported arg to `__builtin_return_address'"
msgstr "ikke-understøttet parameter til '__builtin_return_address'"
-#: builtins.c:3530
+#: builtins.c:4418
msgid "second arg to `__builtin_expect' must be a constant"
msgstr "den anden parameter til '__builtin_expect' skal være en konstant"
-#: builtins.c:4028
+#: builtins.c:5359
msgid "__builtin_longjmp second argument must be 1"
msgstr "den anden paramter til '__builtin_longjmp' skal være 1"
-#. just do library call, if unknown builtin
-#: builtins.c:4092 c-common.c:4459
+#: builtins.c:5454
#, c-format
msgid "built-in function `%s' not currently supported"
msgstr "den indbyggede funktion '%s' understøttes i øjeblikket ikke"
-#: builtins.c:4165
+#: builtins.c:5594
msgid "target format does not support infinity"
msgstr "målprocessoren understøtter ikke uendelig"
-#: c-common.c:1168
-#, c-format
-msgid "`%s' is not defined outside of function scope"
+#: c-common.c:934
+msgid "%Hsuggest explicit braces to avoid ambiguous `else'"
+msgstr ""
+
+#: c-common.c:1158
+#, fuzzy
+msgid "%J'%D' is not defined outside of function scope"
msgstr "'%s' er ikke defineret uden for funktionsvirkefelt"
-#: c-common.c:1189
+#: c-common.c:1178
#, c-format
msgid "string length `%d' is greater than the length `%d' ISO C%d compilers are required to support"
msgstr "strenglængden '%d' er større end den længde på '%d' som ISO C%d-oversættere er pålagt at understøtte"
-#: c-common.c:1247
-msgid "concatenation of string literals with __FUNCTION__ is deprecated"
-msgstr "sammensætning af strengkonstanter med __FUNCTION__ er forældet"
-
-#: c-common.c:1343
+#: c-common.c:1218
msgid "overflow in constant expression"
msgstr "overløb i konstant udtryk"
-#: c-common.c:1364
+#: c-common.c:1238
msgid "integer overflow in expression"
msgstr "heltalsoverløb i udtryk"
-#: c-common.c:1373
+#: c-common.c:1247
msgid "floating point overflow in expression"
msgstr "kommatalsoverløb i udtryk"
-#: c-common.c:1379
+#: c-common.c:1253
msgid "vector overflow in expression"
msgstr "vektoroverløb i udtryk"
#. This detects cases like converting -129 or 256 to unsigned char.
-#: c-common.c:1402
+#: c-common.c:1275
msgid "large integer implicitly truncated to unsigned type"
msgstr "stort heltal forkortes underforstået til type uden fortegn"
-#: c-common.c:1404
+#: c-common.c:1277
msgid "negative integer implicitly converted to unsigned type"
msgstr "negativt heltal forkortes underforstået til type uden fortegn"
-#: c-common.c:1452
+#: c-common.c:1323
msgid "overflow in implicit constant conversion"
msgstr "overløb i underforstået konstant konvertering"
-#: c-common.c:1600
+#: c-common.c:1459
#, c-format
msgid "operation on `%s' may be undefined"
msgstr "brug af '%s' er muligvis ikke defineret"
-#: c-common.c:1891
+#: c-common.c:1743
msgid "expression statement has incomplete type"
msgstr "udtrykket er af en ufuldstændig type"
-#: c-common.c:1924
+#: c-common.c:1775
msgid "case label does not reduce to an integer constant"
msgstr "case-etiketten kan ikke reduceres til en heltalskonstant"
-#: c-common.c:2228
+#: c-common.c:2105
msgid "invalid truth-value expression"
msgstr "ugyldigt sandhedsværdiudtryk"
-#: c-common.c:2279
+#: c-common.c:2156
#, c-format
msgid "invalid operands to binary %s"
msgstr "ugyldige operander til binær %s"
-#: c-common.c:2513
+#: c-common.c:2390
msgid "comparison is always false due to limited range of data type"
msgstr "sammenligning er altid falsk på grund af den begrænsede rækkevidde af datatypen"
-#: c-common.c:2515
+#: c-common.c:2392
msgid "comparison is always true due to limited range of data type"
msgstr "sammenligning er altid sand på grund af den begrænsede rækkevidde af datatypen"
-#: c-common.c:2585
+#: c-common.c:2462
msgid "comparison of unsigned expression >= 0 is always true"
msgstr "sammenligning med unsigned udtryk >= 0 er altid sand"
-#: c-common.c:2594
+#: c-common.c:2471
msgid "comparison of unsigned expression < 0 is always false"
msgstr "sammenligning med unsigned udtryk < 0 er altid falsk"
-#: c-common.c:2641
+#: c-common.c:2516
msgid "pointer of type `void *' used in arithmetic"
msgstr "henvisning af typen 'void *' benyttet i udregning"
-#: c-common.c:2647
+#: c-common.c:2522
msgid "pointer to a function used in arithmetic"
msgstr "henvisning til en funktion benyttet i udregning"
-#: c-common.c:2653
+#: c-common.c:2528
msgid "pointer to member function used in arithmetic"
msgstr "henvisning til en medlemsfunktion benyttet i udregning"
-#: c-common.c:2659
+#: c-common.c:2534
msgid "pointer to a member used in arithmetic"
msgstr "henvisning til et medlem benyttet i udregning"
-#: c-common.c:2746 f/com.c:14762
+#: c-common.c:2623 f/com.c:14734
msgid "struct type value used where scalar is required"
msgstr "værdi af struct-type angivet hvor skalar er påkrævet"
-#: c-common.c:2750 f/com.c:14766
+#: c-common.c:2627 f/com.c:14738
msgid "union type value used where scalar is required"
msgstr "værdi af union-type angivet hvor skalar er påkrævet"
-#: c-common.c:2754 f/com.c:14770
+#: c-common.c:2631 f/com.c:14742
msgid "array type value used where scalar is required"
msgstr "værdi af tabeltype angivet hvor skalar er påkrævet"
-#: c-common.c:2874 f/com.c:14903
+#. Common Ada/Pascal programmer's mistake. We always warn
+#. about this since it is so bad.
+#: c-common.c:2668
+#, fuzzy
+msgid "the address of `%D', will always evaluate as `true'"
+msgstr "adressen af '%D' vil altid være 'true'"
+
+#: c-common.c:2762 f/com.c:14874
msgid "suggest parentheses around assignment used as truth value"
msgstr "foreslår paranteser omkring tildeling der er benyttet som boolsk værdi"
-#: c-common.c:2918 c-common.c:2950
+#: c-common.c:2808 c-common.c:2848
msgid "invalid use of `restrict'"
msgstr "ugyldig brug af 'restrict'"
-#: c-common.c:3064
+#: c-common.c:2958
msgid "invalid application of `sizeof' to a function type"
msgstr "ugyldig anvendelse af 'sizeof' på en funktionstype"
-#: c-common.c:3074
+#: c-common.c:2968
#, c-format
msgid "invalid application of `%s' to a void type"
msgstr "ugyldig anvendelse af '%s' på en void-type"
-#: c-common.c:3080
+#: c-common.c:2974
#, c-format
msgid "invalid application of `%s' to an incomplete type"
msgstr "ugyldig anvendelse af '%s' på en ufuldstændig type"
-#: c-common.c:3121
+#: c-common.c:3014
msgid "`__alignof' applied to a bit-field"
msgstr "'__alignof' benyttet på et bitfelt"
-#: c-common.c:3618
+#: c-common.c:3506
#, c-format
msgid "cannot disable built-in function `%s'"
msgstr "kan ikke deaktivere den indbyggede funktion '%s'"
-#: c-common.c:3787 c-typeck.c:1748
+#: c-common.c:3667 c-typeck.c:1941
#, c-format
msgid "too few arguments to function `%s'"
msgstr "for få parametre til funktionen '%s'"
-#: c-common.c:3793 c-typeck.c:1601
+#: c-common.c:3673 c-typeck.c:1802
#, c-format
msgid "too many arguments to function `%s'"
msgstr "for mange parametre til funktionen '%s'"
-#: c-common.c:3812
+#: c-common.c:3692
#, c-format
msgid "non-floating-point argument to function `%s'"
msgstr "parameter der ikke er et kommatal, til funktionen '%s'"
-#: c-common.c:4081
+#: c-common.c:3919
msgid "pointers are not permitted as case values"
msgstr "henvisningsvariabler er ikke tilladt som case-værdier"
-#: c-common.c:4087
-msgid "ISO C++ forbids range expressions in switch statements"
-msgstr "ISO C++ forbyder intervaludtryk i switch-sætninger"
-
-#: c-common.c:4089
-msgid "ISO C forbids range expressions in switch statements"
+#: c-common.c:3923
+#, fuzzy
+msgid "range expressions in switch statements are non-standard"
msgstr "ISO C forbyder intervaludtryk i switch-sætninger"
-#: c-common.c:4119
+#: c-common.c:3952
msgid "empty range specified"
msgstr "tomt interval angivet"
-#: c-common.c:4170
+#: c-common.c:4003
msgid "duplicate (or overlapping) case value"
msgstr "case-værdi optræder mere end én gang (måske pga. intervalsammenfald)"
-#: c-common.c:4172
-msgid "this is the first entry overlapping that value"
+#: c-common.c:4004
+#, fuzzy
+msgid "%Jthis is the first entry overlapping that value"
msgstr "dette er det første punkt som falder sammen med den værdi"
-#: c-common.c:4176
+#: c-common.c:4008
msgid "duplicate case value"
msgstr "case-værdi optræder mere end én gang"
-#: c-common.c:4177
-msgid "previously used here"
+#: c-common.c:4009
+#, fuzzy
+msgid "%Jpreviously used here"
msgstr "tidligere benyttet her"
-#: c-common.c:4181
+#: c-common.c:4013
msgid "multiple default labels in one switch"
msgstr "flere default-etiketter i én switch-konstruktion"
-#: c-common.c:4182
-msgid "this is the first default label"
+#: c-common.c:4014
+#, fuzzy
+msgid "%Jthis is the first default label"
msgstr "dette er den første default-etiket"
-#: c-common.c:4210
-msgid "ISO C++ forbids taking the address of a label"
-msgstr "ISO C++ forbyder at tage adressen af en etiket"
-
-#: c-common.c:4212
-msgid "ISO C forbids taking the address of a label"
+#: c-common.c:4039
+#, fuzzy
+msgid "taking the address of a label is non-standard"
msgstr "ISO C forbyder at tage adressen af en etiket"
-#: c-common.c:5235
-#, c-format
-msgid "declaration of `%s' shadows %s"
-msgstr "erklæring af '%s' skygger for '%s'"
+#: c-common.c:4085
+msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
+
+#: c-common.c:4090
+msgid "%Hignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
-#: c-common.c:5654
+#. SW_PARAM
+#: c-common.c:4297
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a parameter"
+msgstr "erklæring af '%s' skygger for en parameter"
+
+#. SW_LOCAL
+#: c-common.c:4298
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a previous local"
+msgstr "erklæring af '%s' skygger for en parameter"
+
+#. SW_GLOBAL
+#: c-common.c:4299
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a global declaration"
+msgstr "erklæring af '%s' skygger for en parameter"
+
+#: c-common.c:4303
+#, fuzzy
+msgid "%Jshadowed declaration is here"
+msgstr "variabelerklæring er ikke tilladt her"
+
+#: c-common.c:4686
#, c-format
msgid "unknown machine mode `%s'"
msgstr "ukendt maskintilstand '%s'"
-#: c-common.c:5657
+#: c-common.c:4689
#, c-format
msgid "no data type for mode `%s'"
msgstr "ingen datatype til tilstanden '%s'"
-#: c-common.c:5666 c-common.c:6316
+#: c-common.c:4693
+#, fuzzy, c-format
+msgid "invalid pointer mode `%s'"
+msgstr "ugyldig operandkode '%c'"
+
+#: c-common.c:4700 c-common.c:5263
#, c-format
msgid "unable to emulate '%s'"
msgstr "kunne ikke emulere '%s'"
-#: c-common.c:5702
-msgid "section attribute cannot be specified for local variables"
+#: c-common.c:4744
+#, fuzzy
+msgid "%Jsection attribute cannot be specified for local variables"
msgstr "sektionsegenskaben kan ikke angives for lokale variabler"
-#: c-common.c:5713
-#, c-format
-msgid "section of `%s' conflicts with previous declaration"
+#: c-common.c:4755
+#, fuzzy
+msgid "%Jsection of '%D' conflicts with previous declaration"
msgstr "sektionen '%s' strider mod tidligere erklæring"
-#: c-common.c:5722
-#, c-format
-msgid "section attribute not allowed for `%s'"
+#: c-common.c:4764
+#, fuzzy
+msgid "%Jsection attribute not allowed for '%D'"
msgstr "sektionsegenskaben er ikke tilladt for '%s'"
-#: c-common.c:5729
-msgid "section attributes are not supported for this target"
+#: c-common.c:4770
+#, fuzzy
+msgid "%Jsection attributes are not supported for this target"
msgstr "sektionsegenskaber understøttes ikke på denne målarkitektur"
-#: c-common.c:5771
+#: c-common.c:4808
msgid "requested alignment is not a constant"
msgstr "angivet justering er ikke en konstant"
-#: c-common.c:5776
+#: c-common.c:4813
msgid "requested alignment is not a power of 2"
msgstr "angivet justering er ikke en potens af 2"
-#: c-common.c:5781
+#: c-common.c:4818
msgid "requested alignment is too large"
msgstr "angivet justering er for stor"
-#: c-common.c:5808
-#, c-format
-msgid "alignment may not be specified for `%s'"
+#: c-common.c:4844
+#, fuzzy
+msgid "%Jalignment may not be specified for '%D'"
msgstr "justering må ikke angives for '%s'"
-#: c-common.c:5853
-#, c-format
-msgid "`%s' defined both normally and as an alias"
+#: c-common.c:4882
+#, fuzzy
+msgid "%J'%D' defined both normally and as an alias"
msgstr "'%s' er defineret både normalt og som et alias"
-#: c-common.c:5863
+#: c-common.c:4892
msgid "alias arg not a string"
msgstr "aliasparameter er ikke en streng"
-#: c-common.c:5910
+#: c-common.c:4935
msgid "visibility arg not a string"
msgstr "synlighedsparameter er ikke en streng"
-#: c-common.c:5919
+#: c-common.c:4948
msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\""
msgstr "synlighedsparameter skal være en af \"default\", \"hidden\", \"protected\" eller \"internal\""
-#: c-common.c:5953
+#: c-common.c:4974
msgid "tls_model arg not a string"
msgstr "tls_model-parameter er ikke en streng"
-#: c-common.c:5962
+#: c-common.c:4983
msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\""
msgstr "tls_model-parameter skal være en af \"local-exec\", \"initial-exec\", \"local-dynamic\" eller \"global-dynamic\""
-#: c-common.c:5987 c-common.c:6043
-#, c-format
-msgid "`%s' attribute applies only to functions"
-msgstr "'%s'-egenskaben kan kun anvendes sammen med funktioner"
-
-#: c-common.c:5994 c-common.c:6050
-#, c-format
-msgid "can't set `%s' attribute after definition"
-msgstr "kan ikke angive '%s'-egenskaben efter definitionen"
-
-#: c-common.c:6114
+#: c-common.c:5005 c-common.c:5051
#, fuzzy
-msgid "cleanup arg not an identifier"
-msgstr "'defined' optræder uden et kaldenavn"
+msgid "%J'%E' attribute applies only to functions"
+msgstr "'%s'-egenskaben kan kun anvendes sammen med funktioner"
-#: c-common.c:6121
+#: c-common.c:5010 c-common.c:5056
#, fuzzy
-msgid "cleanup arg not a function"
-msgstr "det kaldte objekt er ikke en funktion"
+msgid "%Jcan't set '%E' attribute after definition"
+msgstr "kan ikke angive '%s'-egenskaben efter definitionen"
-#: c-common.c:6183
+#: c-common.c:5132
#, c-format
msgid "`%s' attribute ignored for `%s'"
msgstr "'%s'-egenskaben ignoreret for '%s'"
-#: c-common.c:6248
+#: c-common.c:5195
#, c-format
msgid "invalid vector type for attribute `%s'"
msgstr "ugyldig vektortype for egenskaben '%s'"
-#: c-common.c:6272 c-common.c:6304
+#: c-common.c:5219 c-common.c:5251
msgid "no vector mode with the size and type specified could be found"
msgstr "ingen vektortilstand med den angivne størrelse og typen kunne findes"
-#: c-common.c:6403
+#: c-common.c:5353
msgid "nonnull attribute without arguments on a non-prototype"
msgstr "ikke-nul egenskab uden parametre til en ikke-prototype"
-#: c-common.c:6418
+#: c-common.c:5368
#, c-format
msgid "nonnull argument has invalid operand number (arg %lu)"
msgstr "ikke-nul parameter har ugyldig operandnummer (parameter %lu)"
-#: c-common.c:6437
+#: c-common.c:5387
#, c-format
msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)"
msgstr "ikke-nul parameter med operandnummer uden for det gyldig interval (parameter %lu, operand %lu)"
-#: c-common.c:6445
+#: c-common.c:5395
#, c-format
msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)"
msgstr "ikke-nul parameter refererer til ikke-henvisningsoperand (parameter %lu, operand %lu)"
-#: c-common.c:6531
+#: c-common.c:5475
#, c-format
msgid "null argument where non-null required (arg %lu)"
msgstr "nulparameter hvor ikke-nul er påkrævet (parameter %lu)"
-#: c-convert.c:80 c-typeck.c:988 c-typeck.c:4059 cp/typeck.c:1615
-#: cp/typeck.c:5939
-msgid "void value not ignored as it ought to be"
-msgstr "tom værdi er ikke ignoreret som den burde være"
-
-#: c-convert.c:112 java/typeck.c:150
-msgid "conversion to non-scalar type requested"
-msgstr "konvertering til ikke-skalartype udbedt"
-
-#: c-decl.c:340
-#, c-format
-msgid "array `%s' assumed to have one element"
-msgstr "tabellen '%s' antages kun at have ét element"
-
-#: c-decl.c:526
-#, c-format
-msgid "`struct %s' incomplete in scope ending here"
-msgstr "'struct %s' er ufuldstændig ved virkefeltets afslutning her"
+#: c-common.c:5546
+#, fuzzy
+msgid "cleanup arg not an identifier"
+msgstr "'defined' optræder uden et kaldenavn"
-#: c-decl.c:529
-#, c-format
-msgid "`union %s' incomplete in scope ending here"
-msgstr "'union %s' er ufuldstændig ved virkefeltets afslutning her"
+#: c-common.c:5553
+#, fuzzy
+msgid "cleanup arg not a function"
+msgstr "det kaldte objekt er ikke en funktion"
-#: c-decl.c:532
+#: c-common.c:5914
#, c-format
-msgid "`enum %s' incomplete in scope ending here"
-msgstr "'enum %s' er ufuldstændig ved virkefeltets afslutning her"
+msgid "%s at end of input"
+msgstr "%s ved slutning af inddata"
-#: c-decl.c:646 c-decl.c:771 java/decl.c:1403
+#: c-common.c:5920
#, c-format
-msgid "label `%s' used but not defined"
-msgstr "etiketten '%s' er benyttet, men ikke defineret"
+msgid "%s before %s'%c'"
+msgstr "%s før %s'%c'"
-#: c-decl.c:652 c-decl.c:778 java/decl.c:1409
+#: c-common.c:5922
#, c-format
-msgid "label `%s' defined but not used"
-msgstr "etiketten '%s' er defineret, men ikke benyttet"
+msgid "%s before %s'\\x%x'"
+msgstr "%s før %s'\\x%x'"
-#: c-decl.c:893 cp/decl.c:3335
+#: c-common.c:5926
#, c-format
-msgid "function `%s' redeclared as inline"
-msgstr "funktionen '%s' omerklæret som inline"
+msgid "%s before string constant"
+msgstr "%s før strengkonstant"
-#: c-decl.c:895 cp/decl.c:3337
+#: c-common.c:5928
#, c-format
-msgid "previous declaration of function `%s' with attribute noinline"
-msgstr "tidligere erklæring af funktionen '%s' med egenskaben noinline"
+msgid "%s before numeric constant"
+msgstr "%s før talkonstant"
-#: c-decl.c:902 cp/decl.c:3344
+#: c-common.c:5930
#, c-format
-msgid "function `%s' redeclared with attribute noinline"
-msgstr "funktionen '%s' omerklæret med egenskaben noinline"
+msgid "%s before \"%s\""
+msgstr "%s før \"%s\""
-#: c-decl.c:904 cp/decl.c:3346
+#: c-common.c:5932
#, c-format
-msgid "previous declaration of function `%s' was inline"
-msgstr "tidligere erklæring af funktionen '%s' var inline"
+msgid "%s before '%s' token"
+msgstr "%s før symbolet '%s'"
-# shadowing betyder at en funktion har samme navn og dermed skjuler en anden
-#: c-decl.c:933 c-decl.c:979
+#. Use `%s' to print the string in case there are any escape
+#. characters in the message.
+#: c-common.c:5934 c-typeck.c:2578 c-typeck.c:3970 c-typeck.c:3985
+#: c-typeck.c:4000 final.c:2776 final.c:2778 gcc.c:4574 rtl-error.c:109
+#: toplev.c:1340 config/cris/cris.c:545 cp/parser.c:1848 cp/typeck.c:4111
+#: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472
#, c-format
-msgid "shadowing built-in function `%s'"
-msgstr "skygger for den indbyggede funktion '%s'"
+msgid "%s"
+msgstr "%s"
-#: c-decl.c:935
-#, c-format
-msgid "shadowing library function `%s'"
-msgstr "skygger for biblioteksfunktionen '%s'"
+#: c-convert.c:82 c-typeck.c:1193 c-typeck.c:3410 cp/typeck.c:1337
+#: cp/typeck.c:5648 treelang/tree-convert.c:79
+msgid "void value not ignored as it ought to be"
+msgstr "tom værdi er ikke ignoreret som den burde være"
-#: c-decl.c:941
-#, c-format
-msgid "library function `%s' declared as non-function"
-msgstr "biblioteksfunktionen '%s' er erklæret som noget der ikke er en funktion"
+#: c-convert.c:114 java/typeck.c:148 treelang/tree-convert.c:105
+msgid "conversion to non-scalar type requested"
+msgstr "konvertering til ikke-skalartype udbedt"
-#: c-decl.c:945 c-decl.c:948
-#, c-format
-msgid "built-in function `%s' declared as non-function"
-msgstr "den indbyggede funktion '%s' er erklæret som noget der ikke er en funktion"
+#: c-decl.c:371
+#, fuzzy
+msgid "%Jarray '%D' assumed to have one element"
+msgstr "tabellen '%s' antages kun at have ét element"
-#: c-decl.c:952 objc/objc-act.c:2384 objc/objc-act.c:6154
-#, c-format
-msgid "`%s' redeclared as different kind of symbol"
-msgstr "'%s' omerklæret som en anden form for symbol"
+#: c-decl.c:580
+#, fuzzy
+msgid "%Jlabel `%D' used but not defined"
+msgstr "etiketten '%D' er benyttet, men ikke defineret"
-#: c-decl.c:953 c-decl.c:1144 c-decl.c:1158 c-decl.c:1165 c-decl.c:1310
-#: objc/objc-act.c:2386 objc/objc-act.c:6156 objc/objc-act.c:6211
-#, c-format
-msgid "previous declaration of `%s'"
-msgstr "'%s' er tidligere erklæret"
+#: c-decl.c:586
+#, fuzzy
+msgid "%Jlabel `%D' defined but not used"
+msgstr "etiketten '%D' er defineret, men ikke benyttet"
-#. If types don't match for a built-in, throw away the built-in.
-#: c-decl.c:1048
-#, c-format
-msgid "conflicting types for built-in function `%s'"
-msgstr "modstridende typer for den indbyggede funktion '%s'"
+#: c-decl.c:588
+#, fuzzy
+msgid "%Jlabel `%D' declared but not defined"
+msgstr "etiketten '%D' er benyttet, men ikke defineret"
-#: c-decl.c:1091 c-decl.c:1110
-#, c-format
-msgid "conflicting types for `%s'"
-msgstr "modstridende typer for '%s'"
+#: c-decl.c:613
+#, fuzzy
+msgid "%Junused variable `%D'"
+msgstr "ubrugt variabel '%s'"
-#: c-decl.c:1133
+#: c-decl.c:821
msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
msgstr "en parameterliste med '...' passer ikke til en erklæring med en tom parameterliste"
-#: c-decl.c:1139
+#: c-decl.c:828
msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
msgstr "en parametertype med automatisk forfremmelse passer ikke til en erklæring med en tom parameterliste"
-#: c-decl.c:1157
-#, c-format
-msgid "thread-local declaration of `%s' follows non thread-local declaration"
-msgstr "trådlokal erklæring af '%s' følger ikke-trådlokal erklæring"
+#: c-decl.c:864
+msgid "%Jprototype for '%D' declares more arguments than previous old-style definition"
+msgstr ""
-#: c-decl.c:1164
-#, c-format
-msgid "non thread-local declaration of `%s' follows thread-local declaration"
-msgstr "ikke-trådlokal erklæring af '%s' følger trådlokal erklæring"
+#: c-decl.c:870
+msgid "%Jprototype for '%D' declares fewer arguments than previous old-style definition"
+msgstr ""
-#: c-decl.c:1175 c-decl.c:1198
-#, c-format
-msgid "redefinition of `%s'"
-msgstr "omdefinering af '%s'"
+#: c-decl.c:879
+msgid "%Jprototype for '%D' declares arg %d with incompatible type"
+msgstr ""
-#: c-decl.c:1178
-#, c-format
-msgid "redeclaration of `%s'"
-msgstr "omerklæring af '%s'"
+#. If we get here, no errors were found, but do issue a warning
+#. for this poor-style construct.
+#: c-decl.c:891
+#, fuzzy
+msgid "%Jprototype for '%D' follows non-prototype definition"
+msgstr "følger definition uden prototype her"
-#: c-decl.c:1181
-#, c-format
-msgid "conflicting declarations of `%s'"
-msgstr "modstridende erklæringer af '%s'"
+#: c-decl.c:906
+#, fuzzy
+msgid "%Jprevious definition of '%D' was here"
+msgstr "tidligere definition her"
-#: c-decl.c:1225
-#, c-format
-msgid "prototype for `%s' follows"
-msgstr "prototypen for '%s' følger"
+#: c-decl.c:908
+#, fuzzy
+msgid "%Jprevious implicit declaration of '%D' was here"
+msgstr "tidligere underforstået erklæring af '%s'"
-#: c-decl.c:1226 c-decl.c:1234 c-decl.c:1245
-msgid "non-prototype definition here"
-msgstr "definition uden prototype her"
+#: c-decl.c:910
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was here"
+msgstr "tidligere erklæring af '%#D' her"
-#: c-decl.c:1233
-#, c-format
-msgid "prototype for `%s' follows and number of arguments doesn't match"
-msgstr "prototypen for '%s' følger og antallet af parametre passer ikke"
+#: c-decl.c:944
+#, fuzzy
+msgid "%J'%D' redeclared as different kind of symbol"
+msgstr "'%#D' omerklæret som en anden form for symbol"
-#: c-decl.c:1243
-#, c-format
-msgid "prototype for `%s' follows and argument %d doesn't match"
-msgstr "prototypen for '%s' følger og den %d. parameter passer ikke"
+#: c-decl.c:949
+#, fuzzy
+msgid "%Jbuilt-in function '%D' declared as non-function"
+msgstr "den indbyggede funktion '%s' er erklæret som noget der ikke er en funktion"
-#: c-decl.c:1261
-#, c-format
-msgid "`%s' declared inline after being called"
-msgstr "'%s' er erklæret inline efter at være blevet kaldt"
+# shadowing betyder at en funktion har samme navn og dermed skjuler en anden
+#: c-decl.c:952 c-decl.c:1042
+#, fuzzy
+msgid "%Jshadowing built-in function '%D'"
+msgstr "skygger for den indbyggede funktion '%s'"
-#: c-decl.c:1267
-#, c-format
-msgid "`%s' declared inline after its definition"
-msgstr "'%s' er erklæret inline efter dens definition"
+#. If types don't match for a built-in, throw away the
+#. built-in. No point in calling locate_old_decl here, it
+#. won't print anything.
+#: c-decl.c:972
+#, fuzzy
+msgid "%Jconflicting types for built-in function '%D'"
+msgstr "modstridende typer for den indbyggede funktion '%s'"
+
+#: c-decl.c:996 c-decl.c:1004
+#, fuzzy
+msgid "%Jconflicting types for '%D'"
+msgstr "modstridende typer for '%#D'"
+
+#. allow OLDDECL to continue in use
+#: c-decl.c:1019
+#, fuzzy
+msgid "%Jredefinition of typedef '%D'"
+msgstr "omdefinering af '%s'"
+
+#: c-decl.c:1055 c-decl.c:1119
+#, fuzzy
+msgid "%Jredefinition of '%D'"
+msgstr "omdefinering af '%s'"
# anden 'declaration' er underforstået i engelsk original
-#: c-decl.c:1274
-#, c-format
-msgid "static declaration for `%s' follows non-static"
+#: c-decl.c:1086 c-decl.c:1136
+#, fuzzy
+msgid "%Jstatic declaration of '%D' follows non-static declaration"
msgstr "static-erklæring af '%s' følger erklæring uden static"
-#: c-decl.c:1282
-#, c-format
-msgid "non-static declaration for `%s' follows static"
+#: c-decl.c:1094 c-decl.c:1133
+#, fuzzy
+msgid "%Jnon-static declaration of '%D' follows static declaration"
msgstr "erklæring uden static af '%s' følger static-erklæring"
-#: c-decl.c:1289
-#, c-format
-msgid "const declaration for `%s' follows non-const"
-msgstr "const-erklæring af '%s' følger ikke-konstant erklæring"
+#: c-decl.c:1106
+#, fuzzy
+msgid "%Jthread-local declaration of '%D' follows non-thread-local declaration"
+msgstr "trådlokal erklæring af '%s' følger ikke-trådlokal erklæring"
-#: c-decl.c:1296
-#, c-format
-msgid "type qualifiers for `%s' conflict with previous decl"
-msgstr "typemodifikationer for '%s' strider mod tidligere erklæring"
+#: c-decl.c:1109
+#, fuzzy
+msgid "%Jnon-thread-local declaration of '%D' follows thread-local declaration"
+msgstr "ikke-trådlokal erklæring af '%s' følger trådlokal erklæring"
-#: c-decl.c:1309
-#, c-format
-msgid "redundant redeclaration of `%s' in same scope"
-msgstr "overflødig omerklæring af '%s' i samme virkefelt"
+#: c-decl.c:1149
+#, fuzzy
+msgid "%Jextern declaration of '%D' follows declaration with no linkage"
+msgstr "extern-erklæring af '%s' passer ikke med den globale"
-#: c-decl.c:1619 java/decl.c:1102
-#, c-format
-msgid "declaration of `%s' shadows a parameter"
-msgstr "erklæring af '%s' skygger for en parameter"
+#: c-decl.c:1152
+#, fuzzy
+msgid "%Jdeclaration of '%D' with no linkage follows extern declaration"
+msgstr "erklæring af '%F' kaster forskellige undtagelser"
-#: c-decl.c:1622 java/decl.c:1105
-#, c-format
-msgid "declaration of `%s' shadows a symbol from the parameter list"
-msgstr "erklæring af '%s' skygger for et symbol fra parameterlisten"
+#: c-decl.c:1155
+#, fuzzy
+msgid "%Jredeclaration of '%D' with no linkage"
+msgstr "tidligere erklæring af '%#D' med %L-kædning"
-#: c-decl.c:1643 cp/decl.c:4479
-msgid "a parameter"
-msgstr "en parameter"
+#: c-decl.c:1169
+msgid "%Jredeclaration of '%D' with different visibility (old visibility preserved)"
+msgstr ""
-#: c-decl.c:1645 cp/decl.c:4496
-msgid "a previous local"
-msgstr "en tidligere lokal variabel"
+#: c-decl.c:1180
+#, fuzzy
+msgid "%Jinline declaration of '%D' follows declaration with attribute noinline"
+msgstr "tidligere erklæring af funktionen '%s' med egenskaben noinline"
-#. XXX shadow warnings in outer-more namespaces
-#: c-decl.c:1649 cp/decl.c:4500
-msgid "a global declaration"
-msgstr "en global erklæring"
+#: c-decl.c:1187
+#, fuzzy
+msgid "%Jdeclaration of '%D' with attribute noinline follows inline declaration "
+msgstr "erklæring af '%s' der er en statisk variabel, i begyndelseserklæring i 'for'-løkke"
-#: c-decl.c:1693
-#, c-format
-msgid "nested extern declaration of `%s'"
-msgstr "indlejret extern-erklæring af '%s'"
+#: c-decl.c:1199
+#, fuzzy
+msgid "%J'%D' declared inline after being called"
+msgstr "'%s' er erklæret inline efter at være blevet kaldt"
-#: c-decl.c:1712 java/decl.c:1055
-#, c-format
-msgid "`%s' used prior to declaration"
-msgstr "'%s' benyttes før erklæringen"
+#: c-decl.c:1205
+#, fuzzy
+msgid "%J'%D' declared inline after its definition"
+msgstr "'%s' er erklæret inline efter dens definition"
-#: c-decl.c:1726 c-decl.c:1901
-#, c-format
-msgid "`%s' was declared implicitly `extern' and later `static'"
-msgstr "'%s' blev underforstået erklæret 'extern' og derefter 'static'"
+#: c-decl.c:1217
+#, fuzzy
+msgid "%Jvolatile declaration of '%D' follows non-volatile declaration"
+msgstr "trådlokal erklæring af '%s' følger ikke-trådlokal erklæring"
-#: c-decl.c:1829 cp/decl.c:4336
-msgid "type mismatch with previous external decl"
-msgstr "typen passer ikke med tidligere ekstern erklæring"
+#: c-decl.c:1220
+#, fuzzy
+msgid "%Jnon-volatile declaration of '%D' follows volatile declaration"
+msgstr "ikke-trådlokal erklæring af '%s' følger trådlokal erklæring"
-#: c-decl.c:1830
-#, c-format
-msgid "previous external decl of `%s'"
-msgstr "tidligere ekstern erklæring af '%s'"
+#: c-decl.c:1227
+#, fuzzy
+msgid "%Jconst declaration of '%D' follows non-const declaration"
+msgstr "const-erklæring af '%s' følger ikke-konstant erklæring"
-#: c-decl.c:1843
-msgid "type mismatch with previous implicit declaration"
-msgstr "typen passer ikke med tidligere underforstået erklæring"
+#: c-decl.c:1230
+#, fuzzy
+msgid "%Jnon-const declaration of '%D' follows const declaration"
+msgstr "erklæring uden static af '%s' følger static-erklæring"
-#: c-decl.c:1845
-#, c-format
-msgid "previous implicit declaration of `%s'"
-msgstr "tidligere underforstået erklæring af '%s'"
+#: c-decl.c:1246
+#, fuzzy
+msgid "%Jredundant redeclaration of '%D'"
+msgstr "overflødig omerklæring af '%D' i samme virkefelt"
-#: c-decl.c:1880
+#: c-decl.c:1690
#, c-format
-msgid "`%s' was previously implicitly declared to return `int'"
-msgstr "'%s' blev tidligere underforstået erklæret til at returnere 'int'"
+msgid "nested extern declaration of `%s'"
+msgstr "indlejret extern-erklæring af '%s'"
-#: c-decl.c:1905
-#, c-format
-msgid "`%s' was declared `extern' and later `static'"
-msgstr "'%s' blev erklæret 'extern' og derefter 'static'"
+#: c-decl.c:1829 objc/objc-act.c:2534 objc/objc-act.c:6793
+#, fuzzy
+msgid "%Jprevious declaration of '%D'"
+msgstr "'%D' er tidligere erklæret"
-#: c-decl.c:1929
+#: c-decl.c:1870 c-decl.c:1872
#, c-format
-msgid "extern declaration of `%s' doesn't match global one"
-msgstr "extern-erklæring af '%s' passer ikke med den globale"
+msgid "implicit declaration of function `%s'"
+msgstr "underforstået erklæring af funktionen '%s'"
-#: c-decl.c:1971
+#: c-decl.c:1888
#, c-format
-msgid "`%s' locally external but globally static"
-msgstr "'%s' er lokalt ekstern, men globalt statisk"
+msgid "`%s' undeclared here (not in a function)"
+msgstr "'%s' ikke erklæret her (ikke i en funktion)"
-#: c-decl.c:2095
+#: c-decl.c:1894
#, c-format
-msgid "function `%s' was previously declared within a block"
-msgstr "funktionen '%s' blev tidligere erklæret inden for en blok"
+msgid "`%s' undeclared (first use in this function)"
+msgstr "'%s' er ikke erklæret (først benyttet i denne funktion)"
-#: c-decl.c:2115 c-decl.c:2117
-#, c-format
-msgid "implicit declaration of function `%s'"
-msgstr "underforstået erklæring af funktionen '%s'"
+#: c-decl.c:1899
+msgid "(Each undeclared identifier is reported only once"
+msgstr "(et kaldenavn der ikke er erklæret, rapporteres kun én gang"
+
+#: c-decl.c:1900
+msgid "for each function it appears in.)"
+msgstr "per funktion)"
-#: c-decl.c:2196
+#: c-decl.c:1953
#, c-format
msgid "label %s referenced outside of any function"
msgstr "der er blevet henvist til etiketten '%s' uden for en funktion"
-#: c-decl.c:2253
+#: c-decl.c:2000
#, c-format
msgid "duplicate label declaration `%s'"
msgstr "etiketten '%s' er blevet erklæret mere end én gang"
-#: c-decl.c:2256
-msgid "this is a previous declaration"
+#: c-decl.c:2001
+#, fuzzy
+msgid "%Jthis is a previous declaration"
msgstr "dette er en tidligere erklæring"
-#: c-decl.c:2679
+#: c-decl.c:2036
+#, fuzzy
+msgid "%Hduplicate label `%D'"
+msgstr "etiketten '%D' optræder mere end én gang"
+
+#: c-decl.c:2038
+#, fuzzy
+msgid "%J`%D' previously defined here"
+msgstr "'%#D' tidligere defineret her"
+
+#: c-decl.c:2040
+#, fuzzy
+msgid "%J`%D' previously declared here"
+msgstr "'%#D' tidligere erklæret her"
+
+#: c-decl.c:2060
+msgid "%Htraditional C lacks a separate namespace for labels, identifier `%s' conflicts"
+msgstr ""
+
+#: c-decl.c:2131
+#, fuzzy
+msgid "%H`%s' defined as wrong kind of tag"
+msgstr "'%s' omerklæret som en anden form for symbol"
+
+#: c-decl.c:2369
msgid "unnamed struct/union that defines no instances"
msgstr "unavngiven struct/union som ikke definerer nogen instanser"
-#: c-decl.c:2698
+#: c-decl.c:2388
msgid "useless keyword or type name in empty declaration"
msgstr "ubrugeligt reserveret ord eller typenavn i tom erklæring"
-#: c-decl.c:2705
+#: c-decl.c:2395
msgid "two types specified in one empty declaration"
msgstr "to typer angivet i én tom erklæring"
-#: c-decl.c:2710 c-parse.y:753 c-parse.y:755 parse.y:766 parse.y:1853
-#: objc-parse.y:799 objc-parse.y:801 objc-parse.y:3042
+#: c-decl.c:2400 c-parse.y:735 c-parse.y:737 objc/objc-parse.y:776
+#: objc/objc-parse.y:778 objc/objc-parse.y:3016
msgid "empty declaration"
msgstr "tom erklæring"
-#: c-decl.c:2740
+#: c-decl.c:2426
msgid "ISO C90 does not support `static' or type qualifiers in parameter array declarators"
msgstr "ISO C90 understøtter ikke 'static' eller typemodifikationer i parametertabelerklæringer"
-#: c-decl.c:2742
+#: c-decl.c:2428
msgid "ISO C90 does not support `[*]' array declarators"
msgstr "ISO C90 understøtter ikke tabelerklæringer med '[*]'"
-#: c-decl.c:2745
+#: c-decl.c:2431
msgid "GCC does not yet properly implement `[*]' array declarators"
msgstr "GCC understøtter endnu ikke ordentligt tabelerklæringer med '[*]'"
-#: c-decl.c:2764
+#: c-decl.c:2447
msgid "static or type qualifiers in abstract declarator"
msgstr "static eller typemodifikationer i abstrakt erklæring"
-#: c-decl.c:2838
-#, c-format
-msgid "`%s' is usually a function"
+#: c-decl.c:2517
+#, fuzzy
+msgid "%J'%D' is usually a function"
msgstr "'%s' er sædvanligvis en funktion"
# init dækker over værditildeling her - samme for de næste mange
-#: c-decl.c:2847
+#: c-decl.c:2526
#, c-format
msgid "typedef `%s' is initialized (use __typeof__ instead)"
msgstr "typedef '%s' bliver tildelt en værdi (benyt __typeof__ i stedet)"
-#: c-decl.c:2853
+#: c-decl.c:2532
#, c-format
msgid "function `%s' is initialized like a variable"
msgstr "funktionen '%s' bliver tildelt en startværdi som en variabel"
#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
-#: c-decl.c:2860
+#: c-decl.c:2539
#, c-format
msgid "parameter `%s' is initialized"
msgstr "parameteren '%s' bliver tildelt en startværdi"
-#: c-decl.c:2880 c-typeck.c:4895
+#: c-decl.c:2559 c-typeck.c:4220
msgid "variable-sized object may not be initialized"
msgstr "et objekt af variabel størrelse må ikke tildeles en startværdi"
-#: c-decl.c:2886
+#: c-decl.c:2565
#, c-format
msgid "variable `%s' has initializer but incomplete type"
msgstr "variablen '%s' bliver tildelt en startværdi, men er af en ufuldstændig type"
-#: c-decl.c:2892
+#: c-decl.c:2571
#, c-format
msgid "elements of array `%s' have incomplete type"
msgstr "elementer i tabellen '%s' er af en ufuldstændig type"
-#: c-decl.c:2905
-#, c-format
-msgid "declaration of `%s' has `extern' and is initialized"
-msgstr "erklæringen af '%s' indeholder 'extern' og variablen bliver tildelt en startværdi"
-
-#: c-decl.c:2954 c-decl.c:5828 cp/decl.c:7760 cp/decl.c:14339
-#, c-format
-msgid "inline function `%s' given attribute noinline"
+#: c-decl.c:2640 c-decl.c:5426 cp/decl.c:3748 cp/decl.c:10156
+#, fuzzy
+msgid "%Jinline function '%D' given attribute noinline"
msgstr "inline funktion '%s' givet egenskaben noinline"
-#: c-decl.c:3028
-#, c-format
-msgid "initializer fails to determine size of `%s'"
-msgstr "startværdien giver ikke størrelsen af '%s'"
+#: c-decl.c:2716
+#, fuzzy
+msgid "%Jinitializer fails to determine size of '%D'"
+msgstr "startværdien giver ikke størrelsen af '%D'"
+
+#: c-decl.c:2721
+#, fuzzy
+msgid "%Jarray size missing in '%D'"
+msgstr "tabelstørrelsen mangler i '%D'"
+
+#: c-decl.c:2737
+#, fuzzy
+msgid "%Jzero or negative size array '%D'"
+msgstr "nul eller negativ størrelse for tabellen '%s'"
+
+#: c-decl.c:2765
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't known"
+msgstr "lagringsstørrelsen af '%D' er ikke kendt"
+
+#: c-decl.c:2775
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't constant"
+msgstr "lagringsstørrelsen af '%D' er ikke konstant"
+
+#: c-decl.c:2858
+#, fuzzy
+msgid "%Jignoring asm-specifier for non-static local variable '%D'"
+msgstr "ignorerer asm-anvisning til den ikke-statiske, lokale variabel '%s'"
+
+#: c-decl.c:2969
+msgid "ISO C forbids forward parameter declarations"
+msgstr "ISO C forbyder forhåndsparametererklæringer"
+
+#: c-decl.c:3151
+#, fuzzy
+msgid "<anonymous>"
+msgstr "<anonym %s>"
-#: c-decl.c:3033
+#: c-decl.c:3160
#, c-format
-msgid "array size missing in `%s'"
-msgstr "tabelstørrelsen mangler i '%s'"
+msgid "bit-field `%s' width not an integer constant"
+msgstr "bredden af bitfeltet '%s' er ikke en heltalskonstant"
-#: c-decl.c:3049
+#: c-decl.c:3168
#, c-format
-msgid "zero or negative size array `%s'"
-msgstr "nul eller negativ størrelse for tabellen '%s'"
+msgid "negative width in bit-field `%s'"
+msgstr "negativ bredde i bitfeltet '%s'"
-#: c-decl.c:3077
+#: c-decl.c:3173
#, c-format
-msgid "storage size of `%s' isn't known"
-msgstr "lagringsstørrelsen af '%s' er ikke kendt"
+msgid "zero width for bit-field `%s'"
+msgstr "en bredde på nul for bitfeltet '%s'"
-#: c-decl.c:3087
+#: c-decl.c:3183
#, c-format
-msgid "storage size of `%s' isn't constant"
-msgstr "lagringsstørrelsen af '%s' er ikke konstant"
+msgid "bit-field `%s' has invalid type"
+msgstr "bitfeltet '%s' er af en ufuldstændig type"
-#: c-decl.c:3147
+#: c-decl.c:3192
+#, fuzzy, c-format
+msgid "type of bit-field `%s' is a GCC extension"
+msgstr "linjestilsdirektiv er en GCC-udvidelse"
+
+#: c-decl.c:3201
#, c-format
-msgid "ignoring asm-specifier for non-static local variable `%s'"
-msgstr "ignorerer asm-anvisning til den ikke-statiske, lokale variabel '%s'"
+msgid "width of `%s' exceeds its type"
+msgstr "bredden af '%s' overstiger typen"
-#: c-decl.c:3247
+# RETMIG: find på et eller andet med præcisionen
+#: c-decl.c:3211
#, c-format
-msgid "ISO C forbids parameter `%s' shadowing typedef"
-msgstr "ISO C forbyder at parameteren '%s' skygger for typedef"
+msgid "`%s' is narrower than values of its type"
+msgstr "'%s' er smallere end værdier af dens type"
-#: c-decl.c:3592 cp/decl.c:10880
+#: c-decl.c:3361 cp/decl.c:6778
msgid "`long long long' is too long for GCC"
msgstr "'long long long' er for langt for GCC"
-#: c-decl.c:3597
+#: c-decl.c:3366
msgid "ISO C90 does not support `long long'"
msgstr "ISO C90 understøtter ikke 'long long'"
-#: c-decl.c:3606 c-decl.c:3609 cp/decl.c:10885
+#: c-decl.c:3375 c-decl.c:3378 cp/decl.c:6783
#, c-format
msgid "duplicate `%s'"
msgstr "'%s' optræder mere end én gang"
-#: c-decl.c:3619 cp/decl.c:10892
+#: c-decl.c:3388 cp/decl.c:6789
msgid "`__thread' before `extern'"
msgstr "'__thread' før 'extern'"
-#: c-decl.c:3621 cp/decl.c:10894
+#: c-decl.c:3390 cp/decl.c:6791
msgid "`__thread' before `static'"
msgstr "'__thread' før 'static'"
-#: c-decl.c:3629 cp/decl.c:10921
+#: c-decl.c:3398 cp/decl.c:6818
#, c-format
msgid "two or more data types in declaration of `%s'"
msgstr "mere end én datatype i erklæringen af '%s'"
-#: c-decl.c:3649 cp/decl.c:10926
+#: c-decl.c:3418 cp/decl.c:6823
#, c-format
msgid "`%s' fails to be a typedef or built in type"
msgstr "'%s' er hverken en typedef eller en indbygget type"
-#: c-decl.c:3688
+#: c-decl.c:3457
#, c-format
msgid "type defaults to `int' in declaration of `%s'"
msgstr "typen antages at være 'int' i erklæringen af '%s'"
-#: c-decl.c:3717
+#: c-decl.c:3486
#, c-format
msgid "both long and short specified for `%s'"
msgstr "både long og short er angivet for '%s'"
-#: c-decl.c:3721 cp/decl.c:11041
+#: c-decl.c:3490 cp/decl.c:6923
#, c-format
msgid "long or short specified with char for `%s'"
msgstr "long eller short angivet samtidig med char for '%s'"
-#: c-decl.c:3728 cp/decl.c:11045
+#: c-decl.c:3497 cp/decl.c:6927
#, c-format
msgid "long or short specified with floating type for `%s'"
msgstr "long eller short angivet samtidig med en kommatalstype for '%s'"
-#: c-decl.c:3731
+#: c-decl.c:3500
msgid "the only valid combination is `long double'"
msgstr "den eneste gyldige kombination er 'long double'"
-#: c-decl.c:3737
+#: c-decl.c:3506
#, c-format
msgid "both signed and unsigned specified for `%s'"
msgstr "både signed og unsigned er angivet for '%s'"
-#: c-decl.c:3739 cp/decl.c:11034
+#: c-decl.c:3508 cp/decl.c:6916
#, c-format
msgid "long, short, signed or unsigned invalid for `%s'"
msgstr "long, short, signed og unsigned er ugyldige for '%s'"
-#: c-decl.c:3745 cp/decl.c:11054
+#: c-decl.c:3514 cp/decl.c:6936
#, c-format
msgid "long, short, signed or unsigned used invalidly for `%s'"
msgstr "long, short, signed og unsigned er benyttet på ugyldig vis for '%s'"
-#: c-decl.c:3763 cp/decl.c:11075
+#: c-decl.c:3532 cp/decl.c:6957
#, c-format
msgid "complex invalid for `%s'"
msgstr "complex ugyldig for '%s'"
-#: c-decl.c:3805
+#: c-decl.c:3574
msgid "ISO C90 does not support complex types"
msgstr "ISO C90 understøtter ikke komplekse typer"
-#: c-decl.c:3817
+#: c-decl.c:3586
msgid "ISO C does not support plain `complex' meaning `double complex'"
msgstr "ISO C understøtter ikke at blot 'complex' betyder 'double complex'"
-#: c-decl.c:3823 c-decl.c:3835
+#: c-decl.c:3592 c-decl.c:3604
msgid "ISO C does not support complex integer types"
msgstr "ISO C understøtter ikke komplekse heltalstyper"
-#: c-decl.c:3850 c-decl.c:4316 cp/decl.c:11688
+#: c-decl.c:3632 c-decl.c:4090 cp/decl.c:7549
msgid "duplicate `const'"
msgstr "'const' optræder mere end én gang"
-#: c-decl.c:3852 c-decl.c:4320 cp/decl.c:11692
+#: c-decl.c:3634 c-decl.c:4094 cp/decl.c:7553
msgid "duplicate `restrict'"
msgstr "'restrict' optræder mere end én gang"
-#: c-decl.c:3854 c-decl.c:4318 cp/decl.c:11690
+#: c-decl.c:3636 c-decl.c:4092 cp/decl.c:7551
msgid "duplicate `volatile'"
msgstr "'volatile' optræder mere end én gang"
-#: c-decl.c:3882 cp/decl.c:11238
+#: c-decl.c:3664 cp/decl.c:7120
#, c-format
msgid "multiple storage classes in declaration of `%s'"
msgstr "flere lagringsklasser optræder i erklæringen af '%s'"
-#: c-decl.c:3892
+#: c-decl.c:3674
msgid "function definition declared `auto'"
msgstr "'auto' er påhæftet funktionsdefinitionen"
-#: c-decl.c:3894
+#: c-decl.c:3676
msgid "function definition declared `register'"
msgstr "'register' er påhæftet funktionsdefinitionen"
-#: c-decl.c:3896
+#: c-decl.c:3678
msgid "function definition declared `typedef'"
msgstr "'typedef' er påhæftet funktionsdefinitionen"
-#: c-decl.c:3898
+#: c-decl.c:3680
msgid "function definition declared `__thread'"
msgstr "'__thread' er påhæftet funktionsdefinitionen"
-#: c-decl.c:3911
+#: c-decl.c:3693
#, c-format
msgid "storage class specified for structure field `%s'"
msgstr "lagringsklasse angivet for strukturfelt '%s'"
-#: c-decl.c:3915 cp/decl.c:11285
+#: c-decl.c:3697 cp/decl.c:7165
#, c-format
msgid "storage class specified for parameter `%s'"
msgstr "lagringsklasse angivet for parameter '%s'"
-#: c-decl.c:3918 cp/decl.c:11287
+#: c-decl.c:3700 cp/decl.c:7167
msgid "storage class specified for typename"
msgstr "lagringsklasse angivet for typenavn"
-#: c-decl.c:3930 cp/decl.c:11302
+#: c-decl.c:3712 cp/decl.c:7182
#, c-format
msgid "`%s' initialized and declared `extern'"
msgstr "'%s' bliver tildelt en startværdi og er samtidig erklæret 'extern'"
-#: c-decl.c:3932 cp/decl.c:11305
+#: c-decl.c:3714 cp/decl.c:7185
#, c-format
msgid "`%s' has both `extern' and initializer"
msgstr "'%s' er erklæret 'extern', men bliver tildelt en startværdi"
-#: c-decl.c:3937 cp/decl.c:11313
-#, c-format
-msgid "top-level declaration of `%s' specifies `auto'"
+#: c-decl.c:3719
+#, fuzzy, c-format
+msgid "file-scope declaration of `%s' specifies `auto'"
msgstr "erklæring af '%s' på øverste niveau angiver 'auto'"
-#: c-decl.c:3942 cp/decl.c:11309
+#: c-decl.c:3724 cp/decl.c:7189
#, c-format
msgid "nested function `%s' declared `extern'"
msgstr "indlejret funktion '%s' er erklæret 'extern'"
-#: c-decl.c:3948 cp/decl.c:11319
+#: c-decl.c:3730 cp/decl.c:7199
#, c-format
msgid "function-scope `%s' implicitly auto and declared `__thread'"
msgstr "'%s' i funktionsvirkefelt underforstået auto og erklæret '__thread'"
@@ -1187,2749 +1277,2781 @@ msgstr "'%s' i funktionsvirkefelt underforstået auto og erklæret '__thread'"
#. Only the innermost declarator (making a parameter be of
#. array type which is converted to pointer type)
#. may have static or type qualifiers.
-#: c-decl.c:3987 c-decl.c:4188
+#: c-decl.c:3769 c-decl.c:3962
msgid "static or type qualifiers in non-parameter array declarator"
msgstr "static eller typemodifikationer i ikke-parametertabelerklæring"
-#: c-decl.c:4031
+#: c-decl.c:3813
#, c-format
msgid "declaration of `%s' as array of voids"
msgstr "'%s' erklæret som en tabel af void"
-#: c-decl.c:4037
+#: c-decl.c:3819
#, c-format
msgid "declaration of `%s' as array of functions"
msgstr "'%s' erklæret som en tabel af funktioner"
-#: c-decl.c:4042 c-decl.c:5332
+#: c-decl.c:3824
msgid "invalid use of structure with flexible array member"
msgstr "ugyldig brug af struktur med fleksibelt tabelmedlem"
-#: c-decl.c:4061
+#: c-decl.c:3843
#, c-format
msgid "size of array `%s' has non-integer type"
msgstr "størrelsen af tabellen '%s' er ikke af en heltalstype"
-#: c-decl.c:4066
+#: c-decl.c:3848
#, c-format
msgid "ISO C forbids zero-size array `%s'"
msgstr "ISO C forbyder tabellen '%s' med størrelsen nul"
-#: c-decl.c:4073
+#: c-decl.c:3855
#, c-format
msgid "size of array `%s' is negative"
msgstr "størrelsen af tabellen '%s' er negativ"
-#: c-decl.c:4086
+#: c-decl.c:3868
#, c-format
msgid "ISO C90 forbids array `%s' whose size can't be evaluated"
msgstr "ISO C90 forbyder tabellen '%s' hvis størrelse ikke kan bestemmes"
-#: c-decl.c:4089
+#: c-decl.c:3871
#, c-format
msgid "ISO C90 forbids variable-size array `%s'"
msgstr "ISO C90 forbyder tabellen '%s' med variabel størrelse"
-#: c-decl.c:4119 c-decl.c:4342 cp/decl.c:11897
+#: c-decl.c:3901 c-decl.c:4116 cp/decl.c:7723
#, c-format
msgid "size of array `%s' is too large"
msgstr "størrelsen af tabellen '%s' er for stor"
-#: c-decl.c:4145
+#: c-decl.c:3927
msgid "ISO C90 does not support flexible array members"
msgstr "ISO C90 understøtter ikke fleksible tabelmedlemmer"
-#: c-decl.c:4155
+#: c-decl.c:3937
msgid "array type has incomplete element type"
msgstr "tabeltypen er af en ufuldstændig type"
-#: c-decl.c:4162 c-decl.c:4392
-msgid "ISO C forbids const or volatile function types"
-msgstr "ISO C forbyder const eller volatile funktionstyper"
-
-#: c-decl.c:4208 cp/decl.c:11445
+#: c-decl.c:3982 cp/decl.c:7320
#, c-format
msgid "`%s' declared as function returning a function"
msgstr "'%s' er erklæret som en funktion der returnerer en funktion"
-#: c-decl.c:4213 cp/decl.c:11450
+#: c-decl.c:3987 cp/decl.c:7325
#, c-format
msgid "`%s' declared as function returning an array"
msgstr "'%s' er erklæret som en funktion der returnerer en tabel"
-#: c-decl.c:4241
+#: c-decl.c:4015
msgid "ISO C forbids qualified void function return type"
msgstr "ISO C forbyder void funktionsreturtype med modifikationer"
-#: c-decl.c:4245
+#: c-decl.c:4019
msgid "type qualifiers ignored on function return type"
msgstr "typemodifikationer ignoreret i funktionsreturtypen"
-#: c-decl.c:4274 c-decl.c:4357 c-decl.c:4481 c-decl.c:4573
+#: c-decl.c:4048 c-decl.c:4131 c-decl.c:4255 c-decl.c:4341
msgid "ISO C forbids qualified function types"
msgstr "ISO C forbyder funktionsreturtype med modifikationer"
-#: c-decl.c:4314 cp/decl.c:11684
+#: c-decl.c:4088 cp/decl.c:7545
msgid "invalid type modifier within pointer declarator"
msgstr "ugyldig typemodifikation i erklæring af henvisning"
-#: c-decl.c:4412 cp/decl.c:12182
+#: c-decl.c:4166
+msgid "ISO C forbids const or volatile function types"
+msgstr "ISO C forbyder const eller volatile funktionstyper"
+
+#: c-decl.c:4186 cp/decl.c:8005
#, c-format
msgid "variable or field `%s' declared void"
msgstr "variabel eller felt '%s' erklæret void"
-#: c-decl.c:4445
+#: c-decl.c:4219
msgid "attributes in parameter array declarator ignored"
msgstr "egenskaber i parametertabelerklæring ignoreret"
-#: c-decl.c:4470
+#: c-decl.c:4244
msgid "invalid type modifier within array declarator"
msgstr "ugyldig typemodifikation i tabelerklæring"
-#: c-decl.c:4515
+#: c-decl.c:4289
#, c-format
msgid "field `%s' declared as a function"
msgstr "feltet '%s' er erklæret som en funktion"
-#: c-decl.c:4521
+#: c-decl.c:4295
#, c-format
msgid "field `%s' has incomplete type"
msgstr "feltet '%s' er af en ufuldstændig type"
-#: c-decl.c:4553 c-decl.c:4555 c-decl.c:4557 c-decl.c:4564
+#: c-decl.c:4321 c-decl.c:4323 c-decl.c:4325 c-decl.c:4332
#, c-format
msgid "invalid storage class for function `%s'"
msgstr "ugyldig lagringsklasse for funktion '%s'"
-#: c-decl.c:4579
+#: c-decl.c:4347
msgid "`noreturn' function returns non-void value"
msgstr "en funktion uden returtype returnerer en ikke-tom værdi"
# at oversætte inline med et udsagnsord her bliver vist for tvetydigt
-#: c-decl.c:4594
+#: c-decl.c:4362
msgid "cannot inline function `main'"
msgstr "funktionen 'main' kan ikke være inline"
-#: c-decl.c:4649
-#, c-format
-msgid "variable `%s' declared `inline'"
+#: c-decl.c:4415
+#, fuzzy
+msgid "variable previously declared `static' redeclared `extern'"
+msgstr "variabel eller felt '%s' erklæret void"
+
+#: c-decl.c:4424
+#, fuzzy
+msgid "%Jvariable '%D' declared `inline'"
msgstr "variablen '%s' er erklæret 'inline'"
#. A mere warning is sure to result in improper semantics
#. at runtime. Don't bother to allow this to compile.
-#: c-decl.c:4677 cp/decl.c:9951
+#: c-decl.c:4452 cp/decl.c:5877
msgid "thread-local storage not supported for this target"
msgstr "trådlokal lagring understøttes ikke på målarkitekturen"
-#: c-decl.c:4732 c-decl.c:5880
+#: c-decl.c:4513 c-decl.c:5470
msgid "function declaration isn't a prototype"
msgstr "funktionserklæringen er ikke en prototype"
-#: c-decl.c:4738
+#: c-decl.c:4519
msgid "parameter names (without types) in function declaration"
msgstr "parameternavne (uden typer) i funktionserklæringen"
-#: c-decl.c:4770 c-decl.c:6250
+#: c-decl.c:4547
#, c-format
msgid "parameter `%s' has incomplete type"
msgstr "parameteren '%s' er af en ufuldstændig type"
-#: c-decl.c:4773
+#: c-decl.c:4550
msgid "parameter has incomplete type"
msgstr "parameteren er af en ufuldstændig type"
-# engelsk original upræcis (hvordan kan man henvise til en type?)
-#: c-decl.c:4794
-#, c-format
-msgid "parameter `%s' points to incomplete type"
-msgstr "parameteren '%s' er en henvisning til en ufuldstændig type"
+#: c-decl.c:4599
+#, fuzzy
+msgid "\"void\" as only parameter may not be qualified"
+msgstr "typedef-navn kan ikke klassemodificeres"
-#: c-decl.c:4797
-msgid "parameter points to incomplete type"
-msgstr "parameteren er en henvisning til en ufuldstændig type"
+#: c-decl.c:4620
+#, fuzzy
+msgid "\"void\" must be the only parameter"
+msgstr "ugyldig brug af skabelonstypeparameter"
-#: c-decl.c:4862
-#, c-format
-msgid "parameter `%s' has just a forward declaration"
+#: c-decl.c:4637
+#, fuzzy
+msgid "%Jparameter \"%D\" has just a forward declaration"
msgstr "parameteren '%s' har kun en forhåndserklæring"
-#: c-decl.c:4903
-msgid "`void' in parameter list must be the entire list"
-msgstr "'void' i en parameterliste skal udgøre hele listen"
-
-#: c-decl.c:4934
-#, c-format
-msgid "`struct %s' declared inside parameter list"
+#. The first %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4665
+#, fuzzy, c-format
+msgid "\"%s %s\" declared inside parameter list"
msgstr "'struct %s' erklæret inde i en parameterliste"
-#: c-decl.c:4937
-#, c-format
-msgid "`union %s' declared inside parameter list"
-msgstr "'union %s' erklæret inde i en parameterliste"
-
-#: c-decl.c:4940
-#, c-format
-msgid "`enum %s' declared inside parameter list"
-msgstr "'enum %s' erklæret inde i en parameterliste"
-
-#: c-decl.c:4947
-msgid "anonymous struct declared inside parameter list"
+#. The %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4669
+#, fuzzy, c-format
+msgid "anonymous %s declared inside parameter list"
msgstr "anonym struct erklæret inde i en parameterliste"
-#: c-decl.c:4949
-msgid "anonymous union declared inside parameter list"
-msgstr "anonym union erklæret inde i en parameterliste"
-
-#: c-decl.c:4951
-msgid "anonymous enum declared inside parameter list"
-msgstr "anonym enum erklæret inde i en parameterliste"
-
-#: c-decl.c:4955
+#: c-decl.c:4673
msgid "its scope is only this definition or declaration, which is probably not what you want"
msgstr "dens virkefelt er kun denne definition eller erklæring hvilket sandsynligvis ikke er hvad du ønsker."
-#: c-decl.c:5032
+#: c-decl.c:4758
#, c-format
msgid "redefinition of `union %s'"
msgstr "omdefinering af 'union %s'"
-#: c-decl.c:5034
+#: c-decl.c:4760
#, c-format
msgid "redefinition of `struct %s'"
msgstr "omdefinering af 'struct %s'"
-#: c-decl.c:5105 cp/decl.c:7532
+#: c-decl.c:4828 cp/decl.c:3521
msgid "declaration does not declare anything"
msgstr "erklæring erklærer ikke noget"
+#: c-decl.c:4873 c-decl.c:4889
+#, fuzzy
+msgid "%Jduplicate member '%D'"
+msgstr "medlemmet '%D' optræder mere end én gang"
+
# engelsk original forkortet
-#: c-decl.c:5169 c-decl.c:5172
+#: c-decl.c:4923 c-decl.c:4926
#, c-format
msgid "%s defined inside parms"
msgstr "%s defineret inden i parameterliste"
-#: c-decl.c:5170 c-decl.c:5173 c-decl.c:5184
+#: c-decl.c:4924 c-decl.c:4927 c-decl.c:4938
msgid "union"
msgstr "union"
-#: c-decl.c:5170 c-decl.c:5173
+#: c-decl.c:4924 c-decl.c:4927
msgid "structure"
msgstr "struktur"
-#: c-decl.c:5183
+#: c-decl.c:4937
#, c-format
msgid "%s has no %s"
msgstr "%s har ingen %s"
-#: c-decl.c:5184
+#: c-decl.c:4938
msgid "struct"
msgstr "struct"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "named members"
msgstr "navngivne medlemmer"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "members"
msgstr "medlemmer"
-#: c-decl.c:5224
+#: c-decl.c:4978
#, c-format
msgid "nested redefinition of `%s'"
msgstr "indlejret omdefinering af '%s'"
-#: c-decl.c:5237
-#, c-format
-msgid "bit-field `%s' width not an integer constant"
-msgstr "bredden af bitfeltet '%s' er ikke en heltalskonstant"
-
-#: c-decl.c:5248
-#, c-format
-msgid "bit-field `%s' has invalid type"
-msgstr "bitfeltet '%s' er af en ufuldstændig type"
-
-#: c-decl.c:5260
-#, c-format
-msgid "bit-field `%s' type invalid in ISO C"
-msgstr "typen af bitfeltet '%s' er ugyldig i ISO C"
-
-#: c-decl.c:5271
-#, c-format
-msgid "negative width in bit-field `%s'"
-msgstr "negativ bredde i bitfeltet '%s'"
-
-#: c-decl.c:5273
-#, c-format
-msgid "width of `%s' exceeds its type"
-msgstr "bredden af '%s' overstiger typen"
-
-#: c-decl.c:5275
-#, c-format
-msgid "zero width for bit-field `%s'"
-msgstr "en bredde på nul for bitfeltet '%s'"
-
-# RETMIG: find på et eller andet med præcisionen
-#: c-decl.c:5289
-#, c-format
-msgid "`%s' is narrower than values of its type"
-msgstr "'%s' er smallere end værdier af dens type"
-
-#: c-decl.c:5323
-msgid "flexible array member in union"
+#: c-decl.c:4998
+#, fuzzy
+msgid "%Jflexible array member in union"
msgstr "fleksibelt tabelmedlem i union"
-#: c-decl.c:5325
-msgid "flexible array member not at end of struct"
+#: c-decl.c:5000
+#, fuzzy
+msgid "%Jflexible array member not at end of struct"
msgstr "fleksibelt tabelmedlem ikke i slutningen af struktur"
-#: c-decl.c:5327
-msgid "flexible array member in otherwise empty struct"
+#: c-decl.c:5002
+#, fuzzy
+msgid "%Jflexible array member in otherwise empty struct"
msgstr "fleksibelt tabelmedlem i ellers tom struktur"
-#: c-decl.c:5357
-#, c-format
-msgid "duplicate member `%s'"
-msgstr "medlemmet '%s' optræder mere end én gang"
+#: c-decl.c:5007
+#, fuzzy
+msgid "%Jinvalid use of structure with flexible array member"
+msgstr "ugyldig brug af struktur med fleksibelt tabelmedlem"
-#: c-decl.c:5448
+#: c-decl.c:5102
msgid "union cannot be made transparent"
msgstr "union kan ikke ikke gøres gennemsigtig"
#. This enum is a named one that has been declared already.
-#: c-decl.c:5558
+#: c-decl.c:5171
#, c-format
msgid "redeclaration of `enum %s'"
msgstr "omerklæring af 'enum %s'"
# original forkortet
-#: c-decl.c:5592
+#: c-decl.c:5202
msgid "enum defined inside parms"
msgstr "enum defineret inden i parameterliste"
-#: c-decl.c:5625
+#: c-decl.c:5235
msgid "enumeration values exceed range of largest integer"
msgstr "enum-værdier overstige rækkevidden af det største heltal"
-#: c-decl.c:5734
+#: c-decl.c:5338
#, c-format
msgid "enumerator value for `%s' not integer constant"
msgstr "enum-værdien for '%s' er ikke en heltalskonstant"
-#: c-decl.c:5747
+#: c-decl.c:5351
msgid "overflow in enumeration values"
msgstr "enum-værdier for store"
-#: c-decl.c:5752
+#: c-decl.c:5356
msgid "ISO C restricts enumerator values to range of `int'"
msgstr "ISO C begrænser enum-værdier til rækkevidden af 'int'"
-#: c-decl.c:5834
+#: c-decl.c:5432
msgid "return type is an incomplete type"
msgstr "returtypen er en ufuldstændig type"
-#: c-decl.c:5842
+#: c-decl.c:5440
msgid "return type defaults to `int'"
msgstr "returtypen antages at være 'int'"
-#: c-decl.c:5889
-#, c-format
-msgid "no previous prototype for `%s'"
+#: c-decl.c:5476
+#, fuzzy
+msgid "%Jno previous prototype for '%D'"
msgstr "ingen tidligere prototype for '%s'"
-#: c-decl.c:5896
-#, c-format
-msgid "`%s' was used with no prototype before its definition"
+#: c-decl.c:5482
+#, fuzzy
+msgid "%J'%D' was used with no prototype before its definition"
msgstr "'%s' blev brugt uden en prototype før dens definition"
-#: c-decl.c:5902
-#, c-format
-msgid "no previous declaration for `%s'"
+#: c-decl.c:5489
+#, fuzzy
+msgid "%Jno previous declaration for '%D'"
msgstr "ingen tidligere erklæring af '%s'"
-#: c-decl.c:5909
-#, c-format
-msgid "`%s' was used with no declaration before its definition"
+#: c-decl.c:5495
+#, fuzzy
+msgid "%J`%D' was used with no declaration before its definition"
msgstr "'%s' blev brugt uden en erklæring før dens definition"
-#: c-decl.c:5933 c-decl.c:6486
-#, c-format
-msgid "return type of `%s' is not `int'"
+#: c-decl.c:5531 c-decl.c:6037
+#, fuzzy
+msgid "%Jreturn type of '%D' is not `int'"
msgstr "returtypen til '%s' er ikke 'int'"
-#: c-decl.c:5949
-#, c-format
-msgid "first argument of `%s' should be `int'"
+#: c-decl.c:5546
+#, fuzzy
+msgid "%Jfirst argument of '%D' should be `int'"
msgstr "den første parameter til '%s' skal være 'int'"
-#: c-decl.c:5958
-#, c-format
-msgid "second argument of `%s' should be `char **'"
+#: c-decl.c:5555
+#, fuzzy
+msgid "%Jsecond argument of '%D' should be 'char **'"
msgstr "den anden parameter til '%s' skal være 'char **'"
-#: c-decl.c:5967
-#, c-format
-msgid "third argument of `%s' should probably be `char **'"
+#: c-decl.c:5564
+#, fuzzy
+msgid "%Jthird argument of '%D' should probably be 'char **'"
msgstr "den tredje parameter til '%s' skal sandsynligvis være 'char **'"
-#: c-decl.c:5976
-#, c-format
-msgid "`%s' takes only zero or two arguments"
+#: c-decl.c:5574
+#, fuzzy
+msgid "%J'%D' takes only zero or two arguments"
msgstr "'%s' tager kun mod to eller ingen parametre"
-#: c-decl.c:5979
-#, c-format
-msgid "`%s' is normally a non-static function"
+#: c-decl.c:5577
+#, fuzzy
+msgid "%J'%D' is normally a non-static function"
msgstr "'%s' er normalt en ikke-statisk funktion"
-#: c-decl.c:6077
-msgid "parm types given both in parmlist and separately"
-msgstr "parametertyper angivet både i parameterliste og separat"
+#: c-decl.c:5633
+msgid "%Jold-style parameter declarations in prototyped function definition"
+msgstr ""
-#: c-decl.c:6098
-msgid "parameter name omitted"
+#: c-decl.c:5647
+#, fuzzy
+msgid "%Jparameter name omitted"
msgstr "parameternavn udeladt"
-#: c-decl.c:6102 c-decl.c:6204
-#, c-format
-msgid "parameter `%s' declared void"
-msgstr "parameteren '%s' erklæret void"
-
-#: c-decl.c:6178
-msgid "parameter name missing from parameter list"
+#: c-decl.c:5722
+#, fuzzy
+msgid "%Jparameter name missing from parameter list"
msgstr "parameternavn mangler fra parameterliste"
-#: c-decl.c:6197
-#, c-format
-msgid "multiple parameters named `%s'"
+#: c-decl.c:5732
+#, fuzzy
+msgid "%J\"%D\" declared as a non-parameter"
+msgstr "'%D' er erklæret som en ven"
+
+#: c-decl.c:5737
+#, fuzzy
+msgid "%Jmultiple parameters named \"%D\""
msgstr "flere parametre ved navn '%s'"
-#: c-decl.c:6219 c-decl.c:6221
-#, c-format
-msgid "type of `%s' defaults to `int'"
+#: c-decl.c:5745
+#, fuzzy
+msgid "%Jparameter \"%D\" declared void"
+msgstr "parameteren '%D' erklæret void"
+
+#: c-decl.c:5760 c-decl.c:5762
+#, fuzzy
+msgid "%Jtype of \"%D\" defaults to \"int\""
msgstr "typen til '%s' antages at være 'int'"
-#: c-decl.c:6257
-#, c-format
-msgid "declaration for parameter `%s' but no such parameter"
+#: c-decl.c:5776
+#, fuzzy
+msgid "%Jparameter \"%D\" has incomplete type"
+msgstr "parameteren er af en ufuldstændig type"
+
+#: c-decl.c:5782
+#, fuzzy
+msgid "%Jdeclaration for parameter \"%D\" but no such parameter"
msgstr "erklæring af parameteren '%s', men ingen sådan parameter"
-#: c-decl.c:6305
+#: c-decl.c:5834
msgid "number of arguments doesn't match prototype"
msgstr "antallet af parametre passer ikke til prototypen"
-#: c-decl.c:6335
-#, c-format
-msgid "promoted argument `%s' doesn't match prototype"
+#: c-decl.c:5835 c-decl.c:5866 c-decl.c:5873
+#, fuzzy
+msgid "%Hprototype declaration"
+msgstr "tom erklæring"
+
+#: c-decl.c:5864
+#, fuzzy
+msgid "promoted argument \"%D\" doesn't match prototype"
msgstr "den forfremmede parameter '%s' passer ikke til prototypen"
-#: c-decl.c:6345
-#, c-format
-msgid "argument `%s' doesn't match prototype"
+#: c-decl.c:5872
+#, fuzzy
+msgid "argument \"%D\" doesn't match prototype"
msgstr "parameteren '%s' passer ikke til prototypen"
-#: c-decl.c:6518 cp/decl.c:15049
+#: c-decl.c:6069 cp/decl.c:10876
msgid "no return statement in function returning non-void"
msgstr "ingen return-sætning i en funktion der ikke returnerer void"
-#: c-decl.c:6525
+#: c-decl.c:6076
msgid "this function may return with or without a value"
msgstr "denne funktion kan returnere med eller uden en værdi"
-#: c-decl.c:6729
-#, c-format
-msgid "size of return value of `%s' is %u bytes"
-msgstr "størrelsen af returtypen til '%s' er %u byte"
-
-#: c-decl.c:6733
-#, c-format
-msgid "size of return value of `%s' is larger than %d bytes"
-msgstr "størrelsen af returtypen til '%s' er større end %d byte"
-
#. If we get here, declarations have been used in a for loop without
#. the C99 for loop scope. This doesn't make much sense, so don't
#. allow it.
-#: c-decl.c:6791
-msgid "`for' loop initial declaration used outside C99 mode"
+#: c-decl.c:6175
+#, fuzzy
+msgid "'for' loop initial declaration used outside C99 mode"
msgstr "begyndelseserklæring i 'for'-løkke benyttet uden for C99-tilstand"
-#: c-decl.c:6815
-#, c-format
-msgid "`struct %s' declared in `for' loop initial declaration"
+#: c-decl.c:6199
+#, fuzzy, c-format
+msgid "'struct %s' declared in 'for' loop initial declaration"
msgstr "'struct %s' erklæret i begyndelseserklæring i 'for'-løkke"
-#: c-decl.c:6818
-#, c-format
-msgid "`union %s' declared in `for' loop initial declaration"
+#: c-decl.c:6202
+#, fuzzy, c-format
+msgid "'union %s' declared in 'for' loop initial declaration"
msgstr "'union %s' erklæret i begyndelseserklæring i 'for'-løkke"
-#: c-decl.c:6821
-#, c-format
-msgid "`enum %s' declared in `for' loop initial declaration"
+#: c-decl.c:6205
+#, fuzzy, c-format
+msgid "'enum %s' declared in 'for' loop initial declaration"
msgstr "'enum %s' erklæret i begyndelseserklæring i 'for'-løkke"
-#: c-decl.c:6829
-#, c-format
-msgid "declaration of non-variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6213
+#, fuzzy
+msgid "%Jdeclaration of non-variable '%D' in 'for' loop initial declaration"
msgstr "erklæring af '%s' der ikke er en variabel, i begyndelseserklæring i 'for'-løkke"
-#: c-decl.c:6831
-#, c-format
-msgid "declaration of static variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6216
+#, fuzzy
+msgid "%Jdeclaration of static variable '%D' in 'for' loop initial declaration"
msgstr "erklæring af '%s' der er en statisk variabel, i begyndelseserklæring i 'for'-løkke"
-#: c-decl.c:6833
-#, c-format
-msgid "declaration of `extern' variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6219
+#, fuzzy
+msgid "%Jdeclaration of 'extern' variable '%D' in 'for' loop initial declaration"
msgstr "erklæring af '%s' der er en 'extern'-variabel, i begyndelseserklæring i 'for'-løkke"
-#: c-format.c:109 c-format.c:191
-msgid "format string arg not a string type"
-msgstr "formateringsstrengsparameter er ikke af en strengtype"
-
-#: c-format.c:124
-msgid "args to be formatted is not '...'"
-msgstr "parametrene der skal formateres, er ikke '...'"
+#: c-decl.c:6532
+#, fuzzy
+msgid "%Jredefinition of global '%D'"
+msgstr "omdefinering af '%s'"
-#: c-format.c:133
-msgid "strftime formats cannot format arguments"
-msgstr "strftime-formater kan ikke formatere parametre"
+#: c-decl.c:6533
+#, fuzzy
+msgid "%J'%D' previously defined here"
+msgstr "'%#D' tidligere defineret her"
-#: c-format.c:168 c-format.c:270
+#: c-format.c:94 c-format.c:210
msgid "format string has invalid operand number"
msgstr "formateringsstrengen har et ugyldigt operandtal"
-#: c-format.c:202
+#: c-format.c:111
msgid "function does not return string type"
msgstr "funktionen returnerer ikke en strengtype"
-#: c-format.c:233
+#: c-format.c:140
+msgid "format string arg not a string type"
+msgstr "formateringsstrengsparameter er ikke af en strengtype"
+
+#: c-format.c:190
msgid "unrecognized format specifier"
msgstr "ukendt formateringsanvisning"
-#: c-format.c:246
+#: c-format.c:203
#, c-format
msgid "`%s' is an unrecognized format function type"
msgstr "'%s' er en ukendt formateringsfunktionstype"
-#: c-format.c:280
+#: c-format.c:216
+#, fuzzy
+msgid "'...' has invalid operand number"
+msgstr "formateringsstrengen har et ugyldigt operandtal"
+
+#: c-format.c:224
msgid "format string arg follows the args to be formatted"
msgstr "formateringsstrengsparameter efterfølger parametrene der skal formateres"
# her er der tale om en signalering
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "` ' flag"
msgstr "' '-flag"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "the ` ' printf flag"
msgstr "' '-printf-flaget"
-#: c-format.c:602 c-format.c:673
+#: c-format.c:566 c-format.c:590 c-format.c:627 c-format.c:683
msgid "`+' flag"
msgstr "'+'-flag"
-#: c-format.c:602
+#: c-format.c:566 c-format.c:590 c-format.c:627
msgid "the `+' printf flag"
msgstr "'+'-printf-flaget"
-#: c-format.c:603 c-format.c:649
+#: c-format.c:567 c-format.c:591 c-format.c:628 c-format.c:659
msgid "`#' flag"
msgstr "'#'-flag"
-#: c-format.c:603
+#: c-format.c:567 c-format.c:591 c-format.c:628
msgid "the `#' printf flag"
msgstr "'#'-printf-flaget"
-#: c-format.c:604 c-format.c:647
+#: c-format.c:568 c-format.c:592 c-format.c:657
msgid "`0' flag"
msgstr "'0'-flag"
-#: c-format.c:604
+#: c-format.c:568 c-format.c:592
msgid "the `0' printf flag"
msgstr "'0'-printf-flaget"
-#: c-format.c:605 c-format.c:646 c-format.c:676
+#: c-format.c:569 c-format.c:593 c-format.c:656 c-format.c:686
msgid "`-' flag"
msgstr "'-'-flag"
-#: c-format.c:605
+#: c-format.c:569 c-format.c:593
msgid "the `-' printf flag"
msgstr "'-'-printf-flaget"
-#: c-format.c:606 c-format.c:630
+#: c-format.c:570 c-format.c:640
msgid "`'' flag"
msgstr "'''-flag"
-#: c-format.c:606
+#: c-format.c:570
msgid "the `'' printf flag"
msgstr "'''-printf-flaget"
-#: c-format.c:607 c-format.c:631
+#: c-format.c:571 c-format.c:641
msgid "`I' flag"
msgstr "'I'-flag"
-#: c-format.c:607
+#: c-format.c:571
msgid "the `I' printf flag"
msgstr "'I'-printf-flaget"
-#: c-format.c:608 c-format.c:628 c-format.c:650 c-format.c:677 c-format.c:1702
+#: c-format.c:572 c-format.c:594 c-format.c:638 c-format.c:660 c-format.c:687
+#: c-format.c:1802
msgid "field width"
msgstr "feltbredde"
-#: c-format.c:608
+#: c-format.c:572 c-format.c:594
msgid "field width in printf format"
msgstr "feltbredde i printf-formatering"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision"
msgstr "præcision"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision in printf format"
msgstr "præcision i printf-formatering"
-#: c-format.c:610 c-format.c:629 c-format.c:680
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630 c-format.c:639
+#: c-format.c:690
msgid "length modifier"
msgstr "længdetilpasning"
-#: c-format.c:610
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630
msgid "length modifier in printf format"
msgstr "længdetilpasning i printf-formatering"
-#: c-format.c:626
+#: c-format.c:636
msgid "assignment suppression"
msgstr "tildelingsundertrykkelse"
-#: c-format.c:626
+#: c-format.c:636
msgid "the assignment suppression scanf feature"
msgstr "den tildelingsundertrykkende scanf-facilitet"
-#: c-format.c:627
+#: c-format.c:637
msgid "`a' flag"
msgstr "'a'-flag"
-#: c-format.c:627
+#: c-format.c:637
msgid "the `a' scanf flag"
msgstr "'a'-scanf-flaget"
-#: c-format.c:628
+#: c-format.c:638
msgid "field width in scanf format"
msgstr "feltbredde i scanf-formatering"
-#: c-format.c:629
+#: c-format.c:639
msgid "length modifier in scanf format"
msgstr "længdetilpasning i scanf-formatering"
-#: c-format.c:630
+#: c-format.c:640
msgid "the `'' scanf flag"
msgstr "'''-scanf-flaget"
-#: c-format.c:631
+#: c-format.c:641
msgid "the `I' scanf flag"
msgstr "'I'-scanf-flaget"
-#: c-format.c:645
+#: c-format.c:655
msgid "`_' flag"
msgstr "'_'-flag"
-#: c-format.c:645
+#: c-format.c:655
msgid "the `_' strftime flag"
msgstr "'_'-strftime-flaget"
-#: c-format.c:646
+#: c-format.c:656
msgid "the `-' strftime flag"
msgstr "'-'-strftime-flaget"
-#: c-format.c:647
+#: c-format.c:657
msgid "the `0' strftime flag"
msgstr "'0'-strftime-flaget"
-#: c-format.c:648 c-format.c:672
+#: c-format.c:658 c-format.c:682
msgid "`^' flag"
msgstr "'^'-flag"
-#: c-format.c:648
+#: c-format.c:658
msgid "the `^' strftime flag"
msgstr "'^'-strftime-flaget"
-#: c-format.c:649
+#: c-format.c:659
msgid "the `#' strftime flag"
msgstr "'#'-strftime-flaget"
-#: c-format.c:650
+#: c-format.c:660
msgid "field width in strftime format"
msgstr "feltbredde i strftime-formatering"
-#: c-format.c:651
+#: c-format.c:661
msgid "`E' modifier"
msgstr "'E'-modifikation"
-#: c-format.c:651
+#: c-format.c:661
msgid "the `E' strftime modifier"
msgstr "'E'-strftime-modifikationen"
-#: c-format.c:652
+#: c-format.c:662
msgid "`O' modifier"
msgstr "'O'-modifikation"
-#: c-format.c:652
+#: c-format.c:662
msgid "the `O' strftime modifier"
msgstr "'O'-strftime-modifikationen"
-#: c-format.c:653
+#: c-format.c:663
msgid "the `O' modifier"
msgstr "'O'-modifikation"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character"
msgstr "udfyldningstegn"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character in strfmon format"
msgstr "udfyldningstegn i strfmon-formatering"
-#: c-format.c:672
+#: c-format.c:682
msgid "the `^' strfmon flag"
msgstr "'^'-strfmon-flaget"
-#: c-format.c:673
+#: c-format.c:683
msgid "the `+' strfmon flag"
msgstr "'+'-strfmon-flaget"
-#: c-format.c:674
+#: c-format.c:684
msgid "`(' flag"
msgstr "'('-flag"
-#: c-format.c:674
+#: c-format.c:684
msgid "the `(' strfmon flag"
msgstr "'('-strfmon-flaget"
-#: c-format.c:675
+#: c-format.c:685
msgid "`!' flag"
msgstr "'!'-flag"
-#: c-format.c:675
+#: c-format.c:685
msgid "the `!' strfmon flag"
msgstr "'!'-strfmon-flaget"
-#: c-format.c:676
+#: c-format.c:686
msgid "the `-' strfmon flag"
msgstr "'-'-strfmon-flaget"
-#: c-format.c:677
+#: c-format.c:687
msgid "field width in strfmon format"
msgstr "feltbredde i strfmon-formatering"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision"
msgstr "venstrepræcision"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision in strfmon format"
msgstr "venstrepræcision i strfmon-formatering"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision"
msgstr "højrepræcision"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision in strfmon format"
msgstr "højrepræcision i strfmon-formatering"
-#: c-format.c:680
+#: c-format.c:690
msgid "length modifier in strfmon format"
msgstr "længdemodifikation i strfmon-formatering"
-#: c-format.c:983
+#: c-format.c:1107
#, c-format
msgid "function might be possible candidate for `%s' format attribute"
msgstr "funktion er en mulig kandidat til '%s'-formateringsegenskab"
-#: c-format.c:1107 c-format.c:1128 c-format.c:2112
+#: c-format.c:1223 c-format.c:1244 c-format.c:2212
msgid "missing $ operand number in format"
msgstr "manglende $-operandnummer i formatering"
-#: c-format.c:1138
+#: c-format.c:1254
#, c-format
msgid "%s does not support %%n$ operand number formats"
msgstr "%s understøtter ikke %%n$-operandnummerformateringer"
-#: c-format.c:1145
+#: c-format.c:1261
msgid "operand number out of range in format"
msgstr "operandnummer uden for det gyldige interval"
-#: c-format.c:1168
+#: c-format.c:1284
#, c-format
msgid "format argument %d used more than once in %s format"
msgstr "formateringsparameter %d brugt mere end en gang i %s-formatering"
-#: c-format.c:1218
+#: c-format.c:1331
#, c-format
msgid "format argument %d unused before used argument %d in $-style format"
msgstr "formateringsparameter %d ubenyttet før den brugte parameter %d i formatering med $"
-#: c-format.c:1322
+#: c-format.c:1429
msgid "format not a string literal, format string not checked"
msgstr "formatering er ikke en strengkonstant, formateringsstrengen er ikke kontrolleret"
-#: c-format.c:1336
+#: c-format.c:1443
msgid "format not a string literal and no format arguments"
msgstr "formatering er ikke en strengkonstant og der er ingen formateringsparametre"
-#: c-format.c:1338
+#: c-format.c:1445
msgid "format not a string literal, argument types not checked"
msgstr "formatering er ikke en strengkonstant, parametertyper er ikke kontrolleret"
-#: c-format.c:1351
+#: c-format.c:1458
msgid "too many arguments for format"
msgstr "for mange parametre til formatering"
-#: c-format.c:1354
+#: c-format.c:1461
msgid "unused arguments in $-style format"
msgstr "ubenyttede parametre i formatering med $"
-#: c-format.c:1357
+#: c-format.c:1464
#, c-format
msgid "zero-length %s format string"
msgstr "formateringsstreng %s med længden nul"
-#: c-format.c:1361
+#: c-format.c:1468
msgid "format is a wide character string"
msgstr "formatering er en bredtegnsstreng"
-#: c-format.c:1364
+#: c-format.c:1471
msgid "unterminated format string"
msgstr "uafsluttet formateringsstreng"
-#: c-format.c:1581
+#: c-format.c:1681
msgid "embedded `\\0' in format"
msgstr "indlejret '\\0' i formatering"
-#: c-format.c:1596
+#: c-format.c:1696
#, c-format
msgid "spurious trailing `%%' in format"
msgstr "mystisk afsluttende '%%' i formatering"
-#: c-format.c:1635 c-format.c:1872
+#: c-format.c:1735 c-format.c:1972
#, c-format
msgid "repeated %s in format"
msgstr "gentaget %s i formatering"
-#: c-format.c:1648
+#: c-format.c:1748
msgid "missing fill character at end of strfmon format"
msgstr "mangler fyldtegn i slutningen af strfmon-formatering"
-#: c-format.c:1687 c-format.c:1786 c-format.c:2066 c-format.c:2119
+#: c-format.c:1787 c-format.c:1886 c-format.c:2166 c-format.c:2219
msgid "too few arguments for format"
msgstr "for få parametre til formatering"
-#: c-format.c:1728
+#: c-format.c:1828
#, c-format
msgid "zero width in %s format"
msgstr "bredde på nul i %s-formatering"
-#: c-format.c:1747
+#: c-format.c:1847
#, c-format
msgid "empty left precision in %s format"
msgstr "tom venstrepræcision i %s-formatering"
-#: c-format.c:1801
+#: c-format.c:1901
msgid "field precision"
msgstr "feltpræcision"
-#: c-format.c:1816
+#: c-format.c:1916
#, c-format
msgid "empty precision in %s format"
msgstr "tom præcision i %s-formatering"
-#: c-format.c:1856
+#: c-format.c:1956
#, c-format
msgid "%s does not support the `%s' %s length modifier"
msgstr "%s understøtter ikke '%s' %s-længdemodifikationen"
-#: c-format.c:1906
+#: c-format.c:2006
msgid "conversion lacks type at end of format"
msgstr "konvertering mangler type i slutningen af formatering"
-#: c-format.c:1917
+#: c-format.c:2017
#, c-format
msgid "unknown conversion type character `%c' in format"
msgstr "ukendt konverteringstypetegn '%c' i formatering"
-#: c-format.c:1920
+#: c-format.c:2020
#, c-format
msgid "unknown conversion type character 0x%x in format"
msgstr "ukendt konverteringstypetegn 0x%x i formatering"
-#: c-format.c:1927
+#: c-format.c:2027
#, c-format
msgid "%s does not support the `%%%c' %s format"
msgstr "%s understøtter ikke '%%%c' %s-formateringen"
-#: c-format.c:1943
+#: c-format.c:2043
#, c-format
msgid "%s used with `%%%c' %s format"
msgstr "%s brugt med '%%%c' %s-formatering"
-#: c-format.c:1952
+#: c-format.c:2052
#, c-format
msgid "%s does not support %s"
msgstr "%s understøtter ikke %s"
-#: c-format.c:1961
+#: c-format.c:2061
#, c-format
msgid "%s does not support %s with the `%%%c' %s format"
msgstr "%s understøtter ikke %s med '%%%c' %s-formateringen"
-#: c-format.c:1994
+#: c-format.c:2094
#, c-format
msgid "%s ignored with %s and `%%%c' %s format"
msgstr "%s ignoreret med %s og '%%%c' %s-formatering"
-#: c-format.c:1998
+#: c-format.c:2098
#, c-format
msgid "%s ignored with %s in %s format"
msgstr "%s ignoreret med %s i %s-formatering"
-#: c-format.c:2004
+#: c-format.c:2104
#, c-format
msgid "use of %s and %s together with `%%%c' %s format"
msgstr "brug af %s og %s sammen med '%%%c' %s-formatering"
-#: c-format.c:2008
+#: c-format.c:2108
#, c-format
msgid "use of %s and %s together in %s format"
msgstr "brug af %s og %s sammen i %s-formatering"
-#: c-format.c:2027
+#: c-format.c:2127
#, c-format
msgid "`%%%c' yields only last 2 digits of year in some locales"
msgstr "'%%%c' giver kun de to sidste cifre af året under nogle regionalindstillinger"
-#: c-format.c:2030
+#: c-format.c:2130
#, c-format
msgid "`%%%c' yields only last 2 digits of year"
msgstr "'%%%c' giver kun de to sidste cifre af året"
#. The end of the format string was reached.
-#: c-format.c:2046
+#: c-format.c:2146
#, c-format
msgid "no closing `]' for `%%[' format"
msgstr "ingen afsluttende '[' til '%%['-formatering"
-#: c-format.c:2059
+#: c-format.c:2159
#, c-format
msgid "use of `%s' length modifier with `%c' type character"
msgstr "brug af '%s'-længdemodifikation med '%c'-typetegn"
-#: c-format.c:2080
+#: c-format.c:2180
#, c-format
msgid "%s does not support the `%%%s%c' %s format"
msgstr "%s understøtter ikke '%%%s%c' %s-formateringen"
-#: c-format.c:2095
+#: c-format.c:2195
msgid "operand number specified with suppressed assignment"
msgstr "operandnummer angivet med undertrykt tildeling"
-#: c-format.c:2097
+#: c-format.c:2197
msgid "operand number specified for format taking no argument"
msgstr "operandnummer angiver for formatering der ikke tager mod parametre"
-#: c-format.c:2211
+#: c-format.c:2309
#, c-format
msgid "writing through null pointer (arg %d)"
msgstr "skrivning gennem nulhenvisning (parameter %d)"
-#: c-format.c:2220
+#: c-format.c:2318
#, c-format
msgid "reading through null pointer (arg %d)"
msgstr "læsning gennem nulhenvisning (parameter %d)"
-#: c-format.c:2240
+#: c-format.c:2338
#, c-format
msgid "writing into constant object (arg %d)"
msgstr "skrivning til konstant objekt (parameter %d)"
-#: c-format.c:2250
+#: c-format.c:2348
#, c-format
msgid "extra type qualifiers in format argument (arg %d)"
msgstr "ekstra typemodifikationer i formateringsparameter (parameter %d)"
-#: c-format.c:2257
+#: c-format.c:2355
#, c-format
msgid "format argument is not a pointer (arg %d)"
msgstr "formateringsparameter er ikke en henvisning (parameter %d)"
-#: c-format.c:2259
+#: c-format.c:2357
#, c-format
msgid "format argument is not a pointer to a pointer (arg %d)"
msgstr "formateringsparameter er ikke en henvisning til en henvisning (parameter %d)"
-#: c-format.c:2330
+#: c-format.c:2433
msgid "pointer"
msgstr "henvisning"
-#: c-format.c:2332
+#: c-format.c:2435
msgid "different type"
msgstr "anden type"
-#: c-format.c:2353
+#: c-format.c:2456
#, c-format
msgid "%s is not type %s (arg %d)"
msgstr "%s er ikke af typen %s (parameter %d)"
-#: c-format.c:2356
+#: c-format.c:2459
#, c-format
msgid "%s format, %s arg (arg %d)"
msgstr "%s-formatering, %s-parameter (parameter %d)"
-#: c-lex.c:153
-msgid "YYDEBUG not defined"
-msgstr "YYDEBUG ikke defineret"
+#: c-format.c:2704
+msgid "args to be formatted is not '...'"
+msgstr "parametrene der skal formateres, er ikke '...'"
+
+#: c-format.c:2713
+msgid "strftime formats cannot format arguments"
+msgstr "strftime-formater kan ikke formatere parametre"
+
+#: c-incpath.c:68
+#, c-format
+msgid "ignoring duplicate directory \"%s\"\n"
+msgstr "ignorerer mere end én angivelse af kataloget \"%s\"\n"
+
+#: c-incpath.c:71
+#, c-format
+msgid " as it is a non-system directory that duplicates a system directory\n"
+msgstr " da det er et ikke-systemkatalog som dublerer et systemkatalog\n"
+
+#: c-incpath.c:75
+#, c-format
+msgid "ignoring nonexistent directory \"%s\"\n"
+msgstr "ignorerer det ikke-eksisterende katalog \"%s\"\n"
+
+#: c-incpath.c:273
+#, c-format
+msgid "#include \"...\" search starts here:\n"
+msgstr "#include \"...\"-søgning begynder her:\n"
+
+#: c-incpath.c:277
+#, c-format
+msgid "#include <...> search starts here:\n"
+msgstr "#include <...>-søgning begynder her:\n"
-#: c-lex.c:293
+#: c-incpath.c:282
+#, c-format
+msgid "End of search list.\n"
+msgstr "Slut på søgningslisten.\n"
+
+#: c-lex.c:240
msgid "badly nested C headers from preprocessor"
msgstr "ugyldigt indlejrede C-inkluderingsfiler fra præprocessoren"
-#: c-lex.c:336
+#: c-lex.c:281
#, c-format
msgid "ignoring #pragma %s %s"
msgstr "ignorerer #pragma %s %s"
-#: c-lex.c:386
-#, c-format
-msgid "universal-character-name '\\U%08x' not valid in identifier"
-msgstr "universelt tegn '\\U%08x' er ikke gyldigt i kaldenavne"
+#. ... or not.
+#: c-lex.c:385
+#, fuzzy
+msgid "%Hstray '@' in program"
+msgstr "vildfaren '%c' i program"
-#: c-lex.c:632
+#: c-lex.c:393
#, c-format
-msgid "universal-character-name '\\u%04x' not valid in identifier"
-msgstr "universelt tegn '\\u%04x' er ikke gyldigt i kaldenavne"
+msgid "missing terminating %c character"
+msgstr "manglende afsluttende '%c'-tegn"
-#: c-lex.c:695
+#: c-lex.c:395
#, c-format
msgid "stray '%c' in program"
msgstr "vildfaren '%c' i program"
-#: c-lex.c:697
+#: c-lex.c:397
#, c-format
msgid "stray '\\%o' in program"
msgstr "vildfaren '\\%o' i program"
-#: c-lex.c:854
+#: c-lex.c:535
msgid "this decimal constant is unsigned only in ISO C90"
msgstr "denne kommatalskonstant er kun unsigned i ISO C90"
-#: c-lex.c:857
+#: c-lex.c:538
msgid "this decimal constant would be unsigned in ISO C90"
msgstr "denne kommatalskonstant ville være unsigned i ISO C90"
-#: c-lex.c:873
+#: c-lex.c:554
#, c-format
msgid "integer constant is too large for \"%s\" type"
msgstr "heltalskonstanten er for stor til typen '%s'"
-#: c-lex.c:941
+#: c-lex.c:620
#, c-format
msgid "floating constant exceeds range of \"%s\""
msgstr "kommatalskonstant overskrider intervallet for '%s'"
-#: c-lex.c:977 cpplex.c:330 cpplex.c:668 cpplex.c:1942
-msgid "ignoring invalid multibyte character"
-msgstr "ignorerer ugyldigt flerbyte-tegn"
+#: c-lex.c:696
+#, fuzzy
+msgid "traditional C rejects string constant concatenation"
+msgstr "traditionel C tillader ikke strengsammensætning"
+
+#: c-objc-common.c:82
+msgid "%Jfunction '%F' can never be inlined because it is supressed using -fno-inline"
+msgstr ""
-#: c-opts.c:355
-#, c-format
-msgid "missing argument to \"-%s\""
-msgstr "der mangler en parameter til tilvalget '-%s'"
+#: c-objc-common.c:92
+msgid "%Jfunction '%F' can never be inlined because it might not be bound within this unit of translation"
+msgstr ""
-#: c-opts.c:359
-#, c-format
-msgid "no class name specified with \"-%s\""
+#: c-objc-common.c:100
+msgid "%Jfunction '%F' can never be inlined because it uses attributes conflicting with inlining"
+msgstr ""
+
+#: c-objc-common.c:115
+msgid "%Jfunction '%F' can never be inlined because it has pending sizes"
+msgstr ""
+
+#: c-objc-common.c:128
+msgid "%Jnested function '%F' can never be inlined because it has possibly saved pending sizes"
+msgstr ""
+
+#: c-opts.c:141
+#, fuzzy, c-format
+msgid "no class name specified with \"%s\""
msgstr "intet klassenavn angivet med '-%s'"
-#: c-opts.c:366
-#, c-format
-msgid "missing filename after \"-%s\""
-msgstr "et filnavn mangler efter '-%s'"
+#: c-opts.c:145
+#, fuzzy, c-format
+msgid "assertion missing after \"%s\""
+msgstr "et postulat mangler efter %s"
-#: c-opts.c:371
-#, c-format
-msgid "missing target after \"-%s\""
+#: c-opts.c:150
+#, fuzzy, c-format
+msgid "macro name missing after \"%s\""
+msgstr "et makronavn mangler efter %s"
+
+#: c-opts.c:157
+#, fuzzy, c-format
+msgid "missing path after \"%s\""
msgstr "et mål mangler efter '-%s'"
-#: c-opts.c:505
-#, c-format
-msgid "options array incorrectly sorted: %s is before %s"
-msgstr "tilvalgstabel sorteret forkert: %s er før %s"
+#: c-opts.c:166
+#, fuzzy, c-format
+msgid "missing filename after \"%s\""
+msgstr "et filnavn mangler efter '-%s'"
-#: c-opts.c:550
-#, c-format
-msgid "too many filenames given. Type %s --help for usage"
-msgstr "for mange filnavne angivet - vejledning i brug kan fås med '%s --help'"
+#: c-opts.c:171
+#, fuzzy, c-format
+msgid "missing makefile target after \"%s\""
+msgstr "et mål mangler efter '-%s'"
-#: c-opts.c:937
-msgid "-Wno-strict-prototypes is not supported in C++"
-msgstr "-Wno-strict-prototypes er ikke understøttet i C++"
+#: c-opts.c:291
+msgid "-I- specified twice"
+msgstr "-I- er angivet to gange"
-#: c-opts.c:1017
+#: c-opts.c:692
#, c-format
msgid "switch \"%s\" is no longer supported"
msgstr "tilvalget '%s' understøttes ikke længere"
-#: c-opts.c:1033
-#, c-format
-msgid "switch \"%s\" is deprecated, please see documentation for details"
-msgstr "tilvalget '%s' er forældet, se venligst dokumentationen for detaljer"
-
-#: c-opts.c:1153
-msgid "-fhandle-exceptions has been renamed to -fexceptions (and is now on by default)"
+#: c-opts.c:816
+#, fuzzy
+msgid "-fhandle-exceptions has been renamed -fexceptions (and is now on by default)"
msgstr "-fhandle-exceptions er blevet omdøbt til -fexceptions (og er nu til som standard)"
-#: c-opts.c:1273
+#: c-opts.c:982
msgid "output filename specified twice"
msgstr "uddatafilnavnet er angivet to gange"
-#: c-opts.c:1387
+#: c-opts.c:1106
msgid "-Wformat-y2k ignored without -Wformat"
msgstr "-Wformat-y2k ignoreret uden -Wformat"
-#: c-opts.c:1389
+#: c-opts.c:1108
msgid "-Wformat-extra-args ignored without -Wformat"
msgstr "-Wformat-extra-args ignoreret uden -Wformat"
-#: c-opts.c:1391
+#: c-opts.c:1110
msgid "-Wformat-zero-length ignored without -Wformat"
msgstr "-Wformat-zero-length ignoreret uden -Wformat"
-#: c-opts.c:1393
+#: c-opts.c:1112
msgid "-Wformat-nonliteral ignored without -Wformat"
msgstr "-Wformat-nonliteral ignoreret uden -Wformat"
-#: c-opts.c:1395
+#: c-opts.c:1114
msgid "-Wformat-security ignored without -Wformat"
msgstr "-Wformat-security ignoreret uden -Wformat"
-#: c-opts.c:1397
+#: c-opts.c:1116
msgid "-Wmissing-format-attribute ignored without -Wformat"
msgstr "-Wmissing-format-attribute ignoreret uden -Wformat"
-#: c-opts.c:1419
-#, c-format
-msgid "opening output file %s"
+#: c-opts.c:1130
+#, fuzzy, c-format
+msgid "opening output file %s: %m"
msgstr "åbner uddatafilen %s"
-#: c-opts.c:1474
+#: c-opts.c:1135
#, c-format
-msgid "opening dependency file %s"
+msgid "too many filenames given. Type %s --help for usage"
+msgstr "for mange filnavne angivet - vejledning i brug kan fås med '%s --help'"
+
+#: c-opts.c:1213
+msgid "YYDEBUG not defined"
+msgstr "YYDEBUG ikke defineret"
+
+#: c-opts.c:1260
+#, fuzzy, c-format
+msgid "opening dependency file %s: %m"
msgstr "åbner afhængighedsfilen %s"
-#: c-opts.c:1484
-#, c-format
-msgid "closing dependency file %s"
+#: c-opts.c:1270
+#, fuzzy, c-format
+msgid "closing dependency file %s: %m"
msgstr "lukker afhængighedsfilen %s"
-#: c-opts.c:1487
-#, c-format
-msgid "when writing output to %s"
+#: c-opts.c:1273
+#, fuzzy, c-format
+msgid "when writing output to %s: %m"
msgstr "ved skrivning af uddata til %s"
-#: c-opts.c:1567
+#: c-opts.c:1343
msgid "to generate dependencies you must specify either -M or -MM"
msgstr "for at generere afhængigheder skal du angive enten -M eller -MM"
-#: c-opts.c:1715
-#, fuzzy, c-format
-msgid "\"-%c%s%s\" is valid for %s but not for %s"
-msgstr "'-%s' er gyldigt for %s, men ikke for %s"
-
-# den fulde tekst til disse bidder findes også senere
-#. To keep the lines from getting too long for some compilers, limit
-#. to about 500 characters (6 lines) per chunk.
-#: c-opts.c:1726
-msgid ""
-"Switches:\n"
-" -include <file> Include the contents of <file> before other files\n"
-" -imacros <file> Accept definition of macros in <file>\n"
-" -iprefix <path> Specify <path> as a prefix for next two options\n"
-" -iwithprefix <dir> Add <dir> to the end of the system include path\n"
-" -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
-" -isystem <dir> Add <dir> to the start of the system include path\n"
-msgstr ""
-"Tilvalg:\n"
-" -include <fil> Inkludér indholdet af <fil> før andre filer\n"
-" -imacros <fil> Læs makrodefinitionerne i <fil>\n"
-" -iprefix <sti> Angiv <sti> som et præfiks til de næste to tilvalg\n"
-" -iwithprefix <ktlg> Føj <ktlg> til slutningen af systeminkluderingsstien\n"
-" -withprefixbefore <ktlg> Føj <ktlg> til slutningen af den alm. inkluderingssti\n"
-" -isystem <ktlg> Føj <ktlg> til begyndelsen af systeminkluderingsstien\n"
-
-#: c-opts.c:1735
-msgid ""
-" -idirafter <dir> Add <dir> to the end of the system include path\n"
-" -I <dir> Add <dir> to the end of the main include path\n"
-" -I- Fine-grained include path control; see info docs\n"
-" -nostdinc Do not search system include directories\n"
-" (dirs specified with -isystem will still be used)\n"
-" -nostdinc++ Do not search system include directories for C++\n"
-" -o <file> Put output into <file>\n"
-msgstr ""
-" -idirafter <ktlg> Føj <ktlg> til slutningen af systeminkluderingsstien\n"
-" -I <ktlg> Føj <ktlg> til slutningen af den alm. inkluderingssti\n"
-" -I- Nøje kontrolleret inkluderingssti; se info-hjælpen\n"
-" -nostdinc Søg ikke i systeminkluderingskataloger\n"
-" (kataloger angivet med -isystem søges dog stadig)\n"
-" -nostdinc++ Søg ikke i systeminkluderingskataloger til C++\n"
-" -o <fil> Send uddata til <fil>\n"
-
-#: c-opts.c:1744
-msgid ""
-" -trigraphs Support ISO C trigraphs\n"
-" -std=<std name> Specify the conformance standard; one of:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Inhibit warning messages\n"
-" -W[no-]trigraphs Warn if trigraphs are encountered\n"
-" -W[no-]comment{s} Warn if one comment starts inside another\n"
-msgstr ""
-" -trigraphs Understøt ISO C trigrafer\n"
-" -std=<standardnavn> Angiv at koden retter sig efter en af standarderne:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Undertryk advarselsmeddelelser\n"
-" -W[no-]trigraphs Advar hvis trigrafer mødes\n"
-" -W[no-]comment{s} Advar hvis en kommentar begynder inden i en anden\n"
-
-#: c-opts.c:1753
-msgid ""
-" -W[no-]traditional Warn about features not present in traditional C\n"
-" -W[no-]undef Warn if an undefined macro is used by #if\n"
-" -W[no-]import Warn about the use of the #import directive\n"
-msgstr ""
-" -W[no-]traditional Advar om utilgængelige faciliteter i traditionel C\n"
-" -W[no-]undef Advar hvis en ikkedefineret makro bruges med #if\n"
-" -W[no-]import Advar om brug af #import-direktivet\n"
-
-#: c-opts.c:1758
-msgid ""
-" -W[no-]error Treat all warnings as errors\n"
-" -W[no-]system-headers Do not suppress warnings from system headers\n"
-" -W[no-]all Enable most preprocessor warnings\n"
-msgstr ""
-" -W[no-]error Behandl alle advarsler som fejl\n"
-" -W[no-]system-headers Undertryk ikke advarsler fra systeminkluderingsfiler\n"
-" -W[no-]all Slå alle præprocessoradvarsler til\n"
+#: c-opts.c:1403
+msgid "<built-in>"
+msgstr "<indbygget>"
-#: c-opts.c:1763
-msgid ""
-" -M Generate make dependencies\n"
-" -MM As -M, but ignore system header files\n"
-" -MD Generate make dependencies and compile\n"
-" -MMD As -MD, but ignore system header files\n"
-" -MF <file> Write dependency output to the given file\n"
-" -MG Treat missing header file as generated files\n"
-msgstr ""
-" -M Generér afhængigheder til make\n"
-" -MM Som -M, men ignorér systeminkluderingsfiler\n"
-" -MD Generer make-afhængigheder og oversæt\n"
-" -MMD Som -MD, men ignorér systeminkluderingsfiler\n"
-" -MF <fil> Skriv afhænghedsuddata til den givne fil\n"
-" -MG Behandl manglende inkl.-filer som genererede filer\n"
+#: c-opts.c:1418
+msgid "<command line>"
+msgstr "<kommandolinje>"
-# make kalder phony targets for falske mål
-#: c-opts.c:1771
-msgid ""
-" -MP\t\t\t Generate phony targets for all headers\n"
-" -MQ <target> Add a MAKE-quoted target\n"
-" -MT <target> Add an unquoted target\n"
+#: c-opts.c:1502
+msgid "too late for # directive to set debug directory"
msgstr ""
-" -MP Generér \"falske\" mål for alle inkluderingsfiler\n"
-" -MQ <mål> Tilføj et MAKE-mål i anførselstegn\n"
-" -MT <mål> Tilføj et mål uden anførselstegn\n"
-
-#: c-opts.c:1776
-msgid ""
-" -D<macro> Define a <macro> with string '1' as its value\n"
-" -D<macro>=<val> Define a <macro> with <val> as its value\n"
-" -A<question>=<answer> Assert the <answer> to <question>\n"
-" -A-<question>=<answer> Disable the <answer> to <question>\n"
-" -U<macro> Undefine <macro> \n"
-" -v Display the version number\n"
-msgstr ""
-" -D<makro> Definér makroen <makro> med strengen '1' som værdi\n"
-" -D<makro>=<værdi> Definér makroen <makro> med værdien <værdi>\n"
-" -A<spørgsmål>=<svar> Angiv at <svar> er svar på <spørgsmål>\n"
-" -A-<spørgsmål>=<svar> Angiv at <svar> ikke er svar på <spørgsmål>\n"
-" -U<makro> Glem definitionen af <makro>\n"
-" -v Skriv versionsnummeret\n"
-
-#: c-opts.c:1784
-msgid ""
-" -H Print the name of header files as they are used\n"
-" -C Do not discard comments\n"
-" -dM Display a list of macro definitions active at end\n"
-" -dD Preserve macro definitions in output\n"
-" -dN As -dD except that only the names are preserved\n"
-" -dI Include #include directives in the output\n"
-msgstr ""
-" -H Skriv navnene på inkluderingsfilerne når de bruges\n"
-" -C Fjern ikke kommentarer\n"
-" -dM Vis til sidst de aktive makrodefinitioner\n"
-" -dD Bevar makrodefinitioner i uddata\n"
-" -dN Som -dD bortset fra at kun navnene bevares\n"
-" -dI Inkludér #include-anvisninger i uddata\n"
-
-#: c-opts.c:1792
-msgid ""
-" -f[no-]preprocessed Treat the input file as already preprocessed\n"
-" -ftabstop=<number> Distance between tab stops for column reporting\n"
-" -P Do not generate #line directives\n"
-" -remap Remap file names when including files\n"
-" --help Display this information\n"
-msgstr ""
-" -f[no-]preprocessed Behandl inddatafilen som allerede præprocesseret\n"
-" -ftabstop=<tal> Afstand mellem tabulatorstop i kolonnerapportering\n"
-" -P Generér ikke #line-angivelser\n"
-" -remap Omdan filnavne ved filinkludering\n"
-" --help Vis denne vejledning\n"
#. Like YYERROR but do call yyerror.
-#: c-parse.y:55 parse.y:48 objc-parse.y:55
+#: c-parse.y:54 c-parse.c:5381 gengtype-yacc.c:1514 java/parse-scan.c:3063
+#: java/parse.c:6067 objc/objc-parse.y:54 objc/objc-parse.c:6644
msgid "syntax error"
msgstr "syntaksfejl"
-#: /usr/share/bison/bison.simple:179
+#: c-parse.c:2118 gengtype-yacc.c:545 java/parse-scan.c:1932 java/parse.c:2875
+#: objc/objc-parse.c:2717
msgid "syntax error: cannot back up"
msgstr "syntaksfejl: kan ikke gå tilbage"
-#: c-parse.y:325 objc-parse.y:346
+#: c-parse.y:320 objc/objc-parse.y:344
msgid "ISO C forbids an empty source file"
msgstr "ISO C forbyder en tom kildefil"
-#: c-parse.y:366 c-typeck.c:6916 objc-parse.y:388
+#: c-parse.y:349 c-typeck.c:6217 objc/objc-parse.y:374
msgid "argument of `asm' is not a constant string"
msgstr "parameteren til 'asm' er ikke en konstant streng"
-#: c-parse.y:374 objc-parse.y:396
+#: c-parse.y:357 objc/objc-parse.y:382
msgid "ISO C forbids data definition with no type or storage class"
msgstr "ISO C forbyder definition af data uden angivelse af type eller lagringsklasse"
-#: c-parse.y:376 objc-parse.y:398
+#: c-parse.y:359 objc/objc-parse.y:384
msgid "data definition has no type or storage class"
msgstr "definition af data uden angivelse af type eller lagringsklasse"
-#: c-parse.y:389 objc-parse.y:411
+#: c-parse.y:372 objc/objc-parse.y:397
msgid "ISO C does not allow extra `;' outside of a function"
msgstr "ISO C tillader ikke ekstra ';' uden for funktioner"
-#: c-parse.y:449 cppexp.c:1312
+#: c-parse.y:429 cppexp.c:1253
msgid "traditional C rejects the unary plus operator"
msgstr "traditionel C tillader ikke operatoren unær plus"
-#: c-parse.y:496 objc-parse.y:518
+#: c-parse.y:476 objc/objc-parse.y:501
msgid "`sizeof' applied to a bit-field"
msgstr "'sizeof' benyttet på et bitfelt"
-#: c-parse.y:583 objc-parse.y:605
+#: c-parse.y:563 objc/objc-parse.y:588
msgid "ISO C forbids omitting the middle term of a ?: expression"
msgstr "ISO C forbyder udeladelse af den midterste del af et '?:'-udtryk"
-#: c-parse.y:632 objc-parse.y:654
+#: c-parse.y:611 objc/objc-parse.y:636
msgid "ISO C89 forbids compound literals"
msgstr "ISO C89 forbyder sammensatte konstanter"
-#: c-parse.y:646 objc-parse.y:668
+#: c-parse.y:625 objc/objc-parse.y:650
msgid "ISO C forbids braced-groups within expressions"
msgstr "ISO C forbyder sætningsblokke inden i udtryk"
-#: c-parse.y:677 objc-parse.y:699
+#: c-parse.y:653 objc/objc-parse.y:678
msgid "first argument to __builtin_choose_expr not a constant"
msgstr "første parameter til '__builtin_choose_expr' skal være en konstant"
-#: c-parse.y:721 objc-parse.y:767
+#: c-parse.y:696 objc/objc-parse.y:737
msgid "traditional C rejects ISO C style function definitions"
msgstr "traditionel C tillader ikke ISO C-functionsdefinitioner"
-#: c-parse.y:985 c-parse.y:991 c-parse.y:997 c-parse.y:1003 c-parse.y:1024
-#: c-parse.y:1030 c-parse.y:1036 c-parse.y:1042 c-parse.y:1075 c-parse.y:1081
-#: c-parse.y:1087 c-parse.y:1093 c-parse.y:1138 c-parse.y:1144 c-parse.y:1150
-#: c-parse.y:1156 parse.y:1933 parse.y:1940 parse.y:1975 objc-parse.y:1031
-#: objc-parse.y:1037 objc-parse.y:1043 objc-parse.y:1049 objc-parse.y:1070
-#: objc-parse.y:1076 objc-parse.y:1082 objc-parse.y:1088 objc-parse.y:1121
-#: objc-parse.y:1127 objc-parse.y:1133 objc-parse.y:1139 objc-parse.y:1184
-#: objc-parse.y:1190 objc-parse.y:1196 objc-parse.y:1202
+#: c-parse.y:699 c-parse.y:705 objc/objc-parse.y:740 objc/objc-parse.y:746
+#, fuzzy
+msgid "old-style parameter declaration"
+msgstr "kan ikke bruge '::' i parametererklæring"
+
+#: c-parse.y:967 c-parse.y:973 c-parse.y:979 c-parse.y:985 c-parse.y:1006
+#: c-parse.y:1012 c-parse.y:1018 c-parse.y:1024 c-parse.y:1057 c-parse.y:1063
+#: c-parse.y:1069 c-parse.y:1075 c-parse.y:1120 c-parse.y:1126 c-parse.y:1132
+#: c-parse.y:1138 objc/objc-parse.y:1008 objc/objc-parse.y:1014
+#: objc/objc-parse.y:1020 objc/objc-parse.y:1026 objc/objc-parse.y:1047
+#: objc/objc-parse.y:1053 objc/objc-parse.y:1059 objc/objc-parse.y:1065
+#: objc/objc-parse.y:1098 objc/objc-parse.y:1104 objc/objc-parse.y:1110
+#: objc/objc-parse.y:1116 objc/objc-parse.y:1161 objc/objc-parse.y:1167
+#: objc/objc-parse.y:1173 objc/objc-parse.y:1179
#, c-format
msgid "`%s' is not at beginning of declaration"
msgstr "'%s' er ikke ved begyndelsen af erklæringen"
-#: c-parse.y:1441 objc-parse.y:1496
+#: c-parse.y:1300 objc/objc-parse.y:1350
+#, fuzzy
+msgid "`typeof' applied to a bit-field"
+msgstr "'sizeof' benyttet på et bitfelt"
+
+#: c-parse.y:1427 objc/objc-parse.y:1477
msgid "ISO C forbids empty initializer braces"
msgstr "ISO C forbyder tom startværdiblok"
-#: c-parse.y:1455 objc-parse.y:1510
+#: c-parse.y:1441 objc/objc-parse.y:1491
msgid "ISO C89 forbids specifying subobject to initialize"
msgstr "ISO C89 forbyder angivelse af underobjekt til klargøring"
# RETMIG: hm, gad vide om dette er rigtigt
-#: c-parse.y:1458 objc-parse.y:1513
+#: c-parse.y:1444 objc/objc-parse.y:1494
msgid "obsolete use of designated initializer without `='"
msgstr "forældet brug af udpeget startværdi uden '='"
-#: c-parse.y:1462 objc-parse.y:1517
+#: c-parse.y:1448 objc/objc-parse.y:1498
msgid "obsolete use of designated initializer with `:'"
msgstr "forældet brug af udpeget startværdi med ':'"
-#: c-parse.y:1489 objc-parse.y:1544
+#: c-parse.y:1475 objc/objc-parse.y:1525
msgid "ISO C forbids specifying range of elements to initialize"
msgstr "ISO C forbyder angivelse af interval af elementer til klargøring"
-#: c-parse.y:1497 c-parse.y:1528 objc-parse.y:1552 objc-parse.y:1583
+#: c-parse.y:1483 c-parse.y:1514 objc/objc-parse.y:1533 objc/objc-parse.y:1564
msgid "ISO C forbids nested functions"
msgstr "ISO C forbyder indlejrede funktioner"
-#: c-parse.y:1703 objc-parse.y:1760
+#: c-parse.y:1691 objc/objc-parse.y:1743
msgid "ISO C forbids forward references to `enum' types"
msgstr "ISO C forbyder forhåndsreferencer til 'enum'-typer"
-#: c-parse.y:1715 parse.y:2411 objc-parse.y:1772
+#: c-parse.y:1703 cp/parser.c:9282 objc/objc-parse.y:1755
msgid "comma at end of enumerator list"
msgstr "komma i slutningen af enum-liste"
-#: c-parse.y:1723 objc-parse.y:1780
+#: c-parse.y:1723 objc/objc-parse.y:1775
msgid "no semicolon at end of struct or union"
msgstr "intet semikolon i slutningen af struct eller union"
-#: c-parse.y:1732 objc-parse.y:1789 objc-parse.y:2864
+#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846
msgid "extra semicolon in struct or union specified"
msgstr "ekstra semikolon angivet i struct eller union"
-#: c-parse.y:1745 objc-parse.y:1816
+#: c-parse.y:1745 objc/objc-parse.y:1800
msgid "ISO C doesn't support unnamed structs/unions"
msgstr "ISO C understøtter ikke unavngivne struct/union-konstruktioner"
-#: c-parse.y:1754 objc-parse.y:1825
+#: c-parse.y:1754 objc/objc-parse.y:1809
msgid "ISO C forbids member declarations with no members"
msgstr "ISO C forbyder medlemserklæringer uden medlemmer"
-#: c-parse.y:1913 objc-parse.y:1984
-msgid "deprecated use of label at end of compound statement"
+#: c-parse.y:1915 objc/objc-parse.y:1970
+#, fuzzy
+msgid "label at end of compound statement"
msgstr "forældet brug af etiket i slutningen af sammensat sætning"
-#: c-parse.y:1930 objc-parse.y:2001
-msgid "ISO C89 forbids mixed declarations and code"
+#: c-parse.y:1934 objc/objc-parse.y:1989
+#, fuzzy
+msgid "ISO C90 forbids mixed declarations and code"
msgstr "ISO C89 forbyder blandede erklæringer og kode"
-#: c-parse.y:2005 objc-parse.y:2080
+#: c-parse.y:2012 objc/objc-parse.y:2069
msgid "ISO C forbids label declarations"
msgstr "ISO C forbyder etiketerklæringer"
-#: c-parse.y:2055 parse.y:1638 objc-parse.y:2130
+#: c-parse.y:2062 objc/objc-parse.y:2119
msgid "braced-group within expression allowed only inside a function"
msgstr "sætningsblokke i udtryk er kun tilladt inde i en funktion"
-#: c-parse.y:2182 objc-parse.y:2257
+#: c-parse.y:2184 objc/objc-parse.y:2241
msgid "empty body in an else-statement"
msgstr "tom krop i en else-sætning"
-#: c-parse.y:2303 objc-parse.y:2378
+#: c-parse.y:2192 objc/objc-parse.y:2249
+#, fuzzy
+msgid "%Hempty body in an if-statement"
+msgstr "tom krop i en else-sætning"
+
+#: c-parse.y:2272 cp/parser.c:6028 objc/objc-parse.y:2329
+msgid "break statement not within loop or switch"
+msgstr "break-sætning befinder sig ikke i en løkke- eller switch-konstruktion"
+
+#: c-parse.y:2281 cp/parser.c:6039 objc/objc-parse.y:2338
+msgid "continue statement not within a loop"
+msgstr "continue-sætning befinder sig ikke i en løkke"
+
+#: c-parse.y:2323 objc/objc-parse.y:2380
msgid "ISO C forbids `goto *expr;'"
msgstr "ISO C forbyder 'goto *udtryk;'"
-#: c-parse.y:2403 objc-parse.y:2478
-msgid "ISO C forbids forward parameter declarations"
-msgstr "ISO C forbyder forhåndsparametererklæringer"
-
#. Gcc used to allow this as an extension. However, it does
#. not work for all targets, and thus has been disabled.
#. Also, since func (...) and func () are indistinguishable,
#. it caused problems with the code in expand_builtin which
#. tries to verify that BUILT_IN_NEXT_ARG is being used
#. correctly.
-#: c-parse.y:2429 objc-parse.y:2504
+#: c-parse.y:2440 objc/objc-parse.y:2548
msgid "ISO C requires a named argument before `...'"
msgstr "ISO C påkræver en navngiven parameter før '...'"
-#: c-parse.y:2526 objc-parse.y:2601
+#: c-parse.y:2538 objc/objc-parse.y:2646
msgid "`...' in old-style identifier list"
msgstr "'...' i gammeldags liste af kaldenavne"
-#: /usr/share/bison/bison.simple:795
-msgid "parse error; also virtual memory exhausted"
+#: c-parse.c:5377 gengtype-yacc.c:1510 java/parse-scan.c:3059
+#: java/parse.c:6063 objc/objc-parse.c:6640
+#, fuzzy
+msgid "syntax error; also virtual memory exhausted"
msgstr "tolkningsfejl; desuden løbet tør for virtuel hukommelse"
-#: /usr/share/bison/bison.simple:799 cp/spew.c:364
-msgid "parse error"
-msgstr "tolkningsfejl"
-
-#: /usr/share/bison/bison.simple:924
+#: c-parse.c:5495 gengtype-yacc.c:1628 java/parse-scan.c:3177
+#: java/parse.c:6181 objc/objc-parse.c:6758
msgid "parser stack overflow"
msgstr "overløb i tolkerens stak"
-#: c-parse.y:2838 cp/spew.c:1525 objc-parse.y:3537
+#: c-parse.y:2968 objc/objc-parse.y:3663
#, c-format
-msgid "%s at end of input"
-msgstr "%s ved slutning af inddata"
+msgid "syntax error at '%s' token"
+msgstr "syntaksfejl ved symbolet '%s'"
+
+#: c-pch.c:112
+#, fuzzy, c-format
+msgid "can't create precompiled header %s: %m"
+msgstr "kan ikke oprette kataloget %s"
+
+#: c-pch.c:132
+#, fuzzy, c-format
+msgid "can't write to %s: %m"
+msgstr "kan ikke skrive i uddatafil"
+
+#: c-pch.c:138
+#, fuzzy, c-format
+msgid "`%s' is not a valid output file"
+msgstr "\"%s\" er ikke et ugyldigt filnavn"
+
+#: c-pch.c:167 c-pch.c:183 c-pch.c:195
+#, fuzzy, c-format
+msgid "can't write %s: %m"
+msgstr "kan ikke oprette %s"
+
+#: c-pch.c:173
+#, fuzzy, c-format
+msgid "can't seek in %s: %m"
+msgstr "kan ikke genåbne %s"
-#: c-parse.y:2844 cp/spew.c:1533 objc-parse.y:3543
+#: c-pch.c:181 c-pch.c:221 c-pch.c:249 c-pch.c:254 c-pch.c:324
+#, fuzzy, c-format
+msgid "can't read %s: %m"
+msgstr "kan ikke udfolde %s"
+
+#: c-pch.c:234
+#, fuzzy, c-format
+msgid "%s: not compatible with this GCC version"
+msgstr "-march=%s er ikke forenelig med den valgte ABI"
+
+#. It's a PCH for the wrong language.
+#: c-pch.c:237
+#, fuzzy, c-format
+msgid "%s: not for %s"
+msgstr "%s understøtter ikke %s"
+
+#. Not any kind of PCH.
+#: c-pch.c:241
+#, fuzzy, c-format
+msgid "%s: not a PCH file"
+msgstr "%s: ikke en COFF-fil"
+
+#: c-pch.c:260
#, c-format
-msgid "%s before %s'%c'"
-msgstr "%s før %s'%c'"
+msgid "%s: created on host `%.*s', but used on host `%s'"
+msgstr ""
-#: c-parse.y:2846 cp/spew.c:1535 objc-parse.y:3545
+#: c-pch.c:270
#, c-format
-msgid "%s before %s'\\x%x'"
-msgstr "%s før %s'\\x%x'"
+msgid "%s: created for target `%.*s', but used for target `%s'"
+msgstr ""
-#: c-parse.y:2850 cp/spew.c:1542 objc-parse.y:3549
+#: c-pch.c:283
#, c-format
-msgid "%s before string constant"
-msgstr "%s før strengkonstant"
+msgid "%s: created by version `%.*s', but this is version `%s'"
+msgstr ""
-#: c-parse.y:2852 cp/spew.c:1544 objc-parse.y:3551
+#: c-pch.c:299
#, c-format
-msgid "%s before numeric constant"
-msgstr "%s før talkonstant"
+msgid "%s: created with -g%s, but used with -g%s"
+msgstr ""
-#: c-parse.y:2854 objc-parse.y:3553
+#: c-pch.c:313
#, c-format
-msgid "%s before \"%s\""
-msgstr "%s før \"%s\""
+msgid "%s: had text segment at different address"
+msgstr ""
-#: c-parse.y:2856 objc-parse.y:3555
+#: c-pch.c:330 cpperror.c:176 gcc.c:6547
#, c-format
-msgid "%s before '%s' token"
-msgstr "%s før symbolet '%s'"
+msgid "%s: %s"
+msgstr "%s: %s"
-#: c-parse.y:2921
-msgid "traditional C rejects string concatenation"
-msgstr "traditionel C tillader ikke strengsammensætning"
+#: c-pch.c:361
+#, fuzzy
+msgid "calling fdopen"
+msgstr "fdopen"
-#: c-parse.y:3047 objc-parse.y:3779
-#, c-format
-msgid "syntax error at '%s' token"
-msgstr "syntaksfejl ved symbolet '%s'"
+#: c-pch.c:369 c-pch.c:381
+#, fuzzy
+msgid "reading"
+msgstr "opretter %s"
-#: c-pragma.c:107
+#: c-pragma.c:106
msgid "#pragma pack (pop) encountered without matching #pragma pack (push, <n>)"
msgstr "'#pragma pack (pop)' mødt uden tilsvarende '#pragma pack (push, <n>)'"
-#: c-pragma.c:125
+#: c-pragma.c:124
#, c-format
msgid "#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s, <n>)"
msgstr "'#pragma pack(pop, %s)' mødt uden tilsvarende '#pragma pack(push, %s, <n>)'"
-#: c-pragma.c:145
+#: c-pragma.c:144
msgid "#pragma pack(push[, id], <n>) is not supported on this target"
msgstr "#pragma pack(push[, id], <n>) understøttes ikke på målarkitekturen"
-#: c-pragma.c:147
+#: c-pragma.c:146
msgid "#pragma pack(pop[, id], <n>) is not supported on this target"
msgstr "#pragma pack(pop[, id], <n>) understøttes ikke på målarkitekturen"
-#: c-pragma.c:167
+#: c-pragma.c:165
msgid "missing '(' after '#pragma pack' - ignored"
msgstr "manglende '(' efter '#pragma pack' - ignoreret"
-#: c-pragma.c:180 c-pragma.c:230
+#: c-pragma.c:178 c-pragma.c:228
msgid "malformed '#pragma pack' - ignored"
msgstr "forkert udformet '#pragma pack' - ignoreret"
-#: c-pragma.c:185
+#: c-pragma.c:183
msgid "malformed '#pragma pack(push[, id], <n>)' - ignored"
msgstr "forkert udformet '#pragma pack(push[, id], <n>)' - ignoreret"
-#: c-pragma.c:187
+#: c-pragma.c:185
msgid "malformed '#pragma pack(pop[, id])' - ignored"
msgstr "forkert udformet '#pragma pack(pop[, id])' - ignoreret"
-#: c-pragma.c:196
+#: c-pragma.c:194
#, c-format
msgid "unknown action '%s' for '#pragma pack' - ignored"
msgstr "ukendt handling '%s' for '#pragma pack' - ignoreret"
-#: c-pragma.c:233
+#: c-pragma.c:231
msgid "junk at end of '#pragma pack'"
msgstr "ragelse i slutningen af '#pragma pack'"
-#: c-pragma.c:247
+#: c-pragma.c:245
#, c-format
msgid "alignment must be a small power of two, not %d"
msgstr "justering skal være en lille potens af to, ikke %d"
-#: c-pragma.c:280
-#, c-format
-msgid "applying #pragma weak `%s' after first use results in unspecified behavior"
+#: c-pragma.c:278
+#, fuzzy
+msgid "%Japplying #pragma weak '%D' after first use results in unspecified behavior"
msgstr "anvendelse af #pragma weak '%s' efter første brug resulterer i ikke-defineret opførsel"
-#: c-pragma.c:328 c-pragma.c:333
+#: c-pragma.c:325 c-pragma.c:330
msgid "malformed #pragma weak, ignored"
msgstr "forkert udformet '#pragma weak' - ignoreret"
-#: c-pragma.c:337
+#: c-pragma.c:334
msgid "junk at end of #pragma weak"
msgstr "ragelse i slutningen af '#pragma weak'"
-#: c-pragma.c:372 c-pragma.c:377
+#: c-pragma.c:367 c-pragma.c:372
msgid "malformed #pragma redefine_extname, ignored"
msgstr "forkert udformet '#pragma redefine_extname' - ignoreret"
-#: c-pragma.c:382
+#: c-pragma.c:377
msgid "junk at end of #pragma redefine_extname"
msgstr "ragelse i slutningen af '#pragma redefine_extname'"
-#: c-pragma.c:389 c-pragma.c:470
+#: c-pragma.c:384 c-pragma.c:462
msgid "#pragma redefine_extname conflicts with declaration"
msgstr "#pragma redefine_extname er i konflikt med erklæring"
-#: c-pragma.c:420
+#: c-pragma.c:413
msgid "malformed #pragma extern_prefix, ignored"
msgstr "forkert udformet '#pragma extern_prefix' - ignoreret"
-#: c-pragma.c:425
+#: c-pragma.c:418
msgid "junk at end of #pragma extern_prefix"
msgstr "ragelse i slutningen af '#pragma extern_prefix'"
-#: c-pragma.c:457
+#: c-pragma.c:449
msgid "asm declaration conflicts with previous rename"
msgstr "asm-erklæring er i konflikt med tidligere omdøbelse"
-#: c-semantics.c:565
-msgid "break statement not within loop or switch"
-msgstr "break-sætning befinder sig ikke i en løkke- eller switch-konstruktion"
-
-#: c-semantics.c:583
-msgid "continue statement not within a loop"
-msgstr "continue-sætning befinder sig ikke i en løkke"
-
-#: c-semantics.c:678
-msgid "destructor needed for `%#D'"
+#: c-semantics.c:697
+#, fuzzy
+msgid "destructor needed for `%D'"
msgstr "destruktionsfunktion påkrævet til '%#D'"
-#: c-semantics.c:679
+#: c-semantics.c:698
msgid "where case label appears here"
msgstr "hvor case-etiket optræder her"
-#: c-semantics.c:682
+#: c-semantics.c:701
msgid "(enclose actions of previous case statements requiring destructors in their own scope.)"
msgstr "(indesluttede handlinger fra tidligere case-sætninger kræver destruktionsfunktioner i deres eget virkefelt)"
-#: c-semantics.c:725 c-typeck.c:6942 cp/semantics.c:897
+#: c-semantics.c:737 c-typeck.c:6239 cp/semantics.c:1070
#, c-format
msgid "%s qualifier ignored on asm"
msgstr "%s-modifikation ignoreret ved asm"
-#: c-typeck.c:123
+#: c-semantics.c:991
+#, fuzzy
+msgid "will never be executed"
+msgstr "kald %2d aldrig udført\n"
+
+#: c-typeck.c:120
#, c-format
msgid "`%s' has an incomplete type"
msgstr "'%s' er af en ufuldstændig type"
-#: c-typeck.c:145 cp/call.c:2865
+#: c-typeck.c:142 cp/call.c:2532
msgid "invalid use of void expression"
msgstr "ugyldig brug af void-udtryk"
-#: c-typeck.c:153
+#: c-typeck.c:150
msgid "invalid use of flexible array member"
msgstr "ugyldig brug af fleksibelt tabelmedlem"
-#: c-typeck.c:159
+#: c-typeck.c:156
msgid "invalid use of array with unspecified bounds"
msgstr "ugyldig brug af tabel uden angivne grænser"
-#: c-typeck.c:167
+#: c-typeck.c:164
#, c-format
msgid "invalid use of undefined type `%s %s'"
msgstr "ugyldig brug af en type '%s %s' der ikke er defineret"
#. If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL.
-#: c-typeck.c:171
+#: c-typeck.c:168
#, c-format
msgid "invalid use of incomplete typedef `%s'"
msgstr "ugyldig brug af ufuldstændig typedef '%s'"
-#: c-typeck.c:424 c-typeck.c:438
+#: c-typeck.c:415 c-typeck.c:430
msgid "function types not truly compatible in ISO C"
msgstr "funktionstyper ikke er fuldt ud forenelige i ISO C"
-#: c-typeck.c:603
+#: c-typeck.c:611
msgid "types are not quite compatible"
msgstr "typer er ikke helt forenelige"
-#: c-typeck.c:757 c-typeck.c:2687
+#: c-typeck.c:820
+#, fuzzy
+msgid "function return types not compatible due to `volatile'"
+msgstr "en funktions returtype kan ikke være en funktion"
+
+#: c-typeck.c:966 c-typeck.c:2143
msgid "arithmetic on pointer to an incomplete type"
msgstr "beregninger udført på en henvisning til en ufuldstændig type"
-#: c-typeck.c:1136
+#: c-typeck.c:1339
#, c-format
msgid "%s has no member named `%s'"
msgstr "%s har intet medlem ved navn '%s'"
-#: c-typeck.c:1172
+#: c-typeck.c:1375
#, c-format
msgid "request for member `%s' in something not a structure or union"
msgstr "forespørgsel efter medlemmet '%s' i noget der hverken er en union eller en struktur"
-#: c-typeck.c:1204
+#: c-typeck.c:1404
msgid "dereferencing pointer to incomplete type"
msgstr "forsøg på at følge en henvisning til en variabel af en ufuldstændig type"
-#: c-typeck.c:1208
+#: c-typeck.c:1408
msgid "dereferencing `void *' pointer"
msgstr "forsøg på at følge en 'void *'-henvisning"
-#: c-typeck.c:1225 cp/typeck.c:2369
+#: c-typeck.c:1425 cp/typeck.c:2104
#, c-format
msgid "invalid type argument of `%s'"
msgstr "ugyldig typeparameter '%s'"
-#: c-typeck.c:1244 cp/typeck.c:2395
+#: c-typeck.c:1443 cp/typeck.c:2129
msgid "subscript missing in array reference"
msgstr "indeks mangler i tabelopslag"
-#: c-typeck.c:1265 cp/typeck.c:2437
+#: c-typeck.c:1464 cp/typeck.c:2171
msgid "array subscript has type `char'"
msgstr "tabelindeks er af typen 'char'"
-#: c-typeck.c:1273 c-typeck.c:1362 cp/typeck.c:2444 cp/typeck.c:2523
+#: c-typeck.c:1472 c-typeck.c:1561 cp/typeck.c:2175 cp/typeck.c:2261
msgid "array subscript is not an integer"
msgstr "tabelindeks er ikke et heltal"
-#: c-typeck.c:1306
+#: c-typeck.c:1505
msgid "ISO C forbids subscripting `register' array"
msgstr "ISO C forbyder opslag i 'register'-tabel"
-#: c-typeck.c:1308
+#: c-typeck.c:1507
msgid "ISO C90 forbids subscripting non-lvalue array"
msgstr "ISO C90 forbyder opslag i tabel der ikke er venstreværdi"
-#: c-typeck.c:1341
+#: c-typeck.c:1540
msgid "subscript has type `char'"
msgstr "indeks er af typen 'char'"
-#: c-typeck.c:1357 cp/typeck.c:2518
+#: c-typeck.c:1556 cp/typeck.c:2256
msgid "subscripted value is neither array nor pointer"
msgstr "værdien der er påført et indeks, er hverken en tabel eller en henvisningsvariabel"
-#: c-typeck.c:1411
-#, c-format
-msgid "`%s' undeclared here (not in a function)"
-msgstr "'%s' ikke erklæret her (ikke i en funktion)"
-
-#: c-typeck.c:1418
-#, c-format
-msgid "`%s' undeclared (first use in this function)"
-msgstr "'%s' er ikke erklæret (først benyttet i denne funktion)"
-
-#: c-typeck.c:1423
-msgid "(Each undeclared identifier is reported only once"
-msgstr "(et kaldenavn der ikke er erklæret, rapporteres kun én gang"
-
-#: c-typeck.c:1424
-msgid "for each function it appears in.)"
-msgstr "per funktion)"
-
-#: c-typeck.c:1441
+#: c-typeck.c:1586
#, c-format
msgid "local declaration of `%s' hides instance variable"
msgstr "den lokale erklæring af funktionen '%s' skjuler instansvariabel"
-#: c-typeck.c:1518
+#: c-typeck.c:1679
msgid "called object is not a function"
msgstr "det kaldte objekt er ikke en funktion"
-#: c-typeck.c:1604 cp/typeck.c:2829
+#. This situation leads to run-time undefined behavior. We can't,
+#. therefore, simply error unless we can prove that all possible
+#. executions of the program must execute the code.
+#: c-typeck.c:1711
+#, fuzzy
+msgid "function called through a non-compatible type"
+msgstr "sizeof benyttet på en ufuldstændig type"
+
+#: c-typeck.c:1805 cp/typeck.c:2544
msgid "too many arguments to function"
msgstr "for mange parametre til funktionen"
-#: c-typeck.c:1625
+#: c-typeck.c:1826
#, c-format
msgid "type of formal parameter %d is incomplete"
msgstr "typen af den formelle parameter %d er ufuldstændig"
-#: c-typeck.c:1638
+#: c-typeck.c:1839
#, c-format
msgid "%s as integer rather than floating due to prototype"
msgstr "%s som heltal i stedet for kommatal på grund af prototypen"
-#: c-typeck.c:1641
+#: c-typeck.c:1842
#, c-format
msgid "%s as integer rather than complex due to prototype"
msgstr "%s som heltal i stedet for complex på grund af prototypen"
-#: c-typeck.c:1644
+#: c-typeck.c:1845
#, c-format
msgid "%s as complex rather than floating due to prototype"
msgstr "%s som complex i stedet for kommatal på grund af prototypen"
-#: c-typeck.c:1647
+#: c-typeck.c:1848
#, c-format
msgid "%s as floating rather than integer due to prototype"
msgstr "%s som kommatal i stedet for heltal på grund af prototypen"
-#: c-typeck.c:1650
+#: c-typeck.c:1851
#, c-format
msgid "%s as complex rather than integer due to prototype"
msgstr "%s som complex i stedet for heltal på grund af prototypen"
-#: c-typeck.c:1653
+#: c-typeck.c:1854
#, c-format
msgid "%s as floating rather than complex due to prototype"
msgstr "%s som kommatal i stedet for complex på grund af prototypen"
-#: c-typeck.c:1663
+#: c-typeck.c:1864
#, c-format
msgid "%s as `float' rather than `double' due to prototype"
msgstr "%s som float i stedet for double på grund af prototypen"
-#: c-typeck.c:1681
+#: c-typeck.c:1882
#, c-format
msgid "%s with different width due to prototype"
msgstr "%s med anderledes bredde på grund af prototypen"
-#: c-typeck.c:1715
+#: c-typeck.c:1908
#, c-format
msgid "%s as unsigned due to prototype"
msgstr "%s som unsigned på grund af prototypen"
-#: c-typeck.c:1717
+#: c-typeck.c:1910
#, c-format
msgid "%s as signed due to prototype"
msgstr "%s som signed på grund af prototypen"
-#: c-typeck.c:1751 cp/typeck.c:2933
+#: c-typeck.c:1944 cp/typeck.c:2650
msgid "too few arguments to function"
msgstr "for få parametre til funktionen"
-#: c-typeck.c:1793
+#: c-typeck.c:1984
msgid "suggest parentheses around + or - inside shift"
msgstr "foreslår paranteser omkring + eller - inden i skifteoperation"
-#: c-typeck.c:1800
+#: c-typeck.c:1991
msgid "suggest parentheses around && within ||"
msgstr "foreslår paranteser omkring && inden i ||"
-#: c-typeck.c:1809
+#: c-typeck.c:2000
msgid "suggest parentheses around arithmetic in operand of |"
msgstr "foreslår paranteser omkring beregning i operand til |"
-#: c-typeck.c:1812
+#: c-typeck.c:2003
msgid "suggest parentheses around comparison in operand of |"
msgstr "foreslår paranteser omkring sammenligning i operand til |"
-#: c-typeck.c:1821
+#: c-typeck.c:2012
msgid "suggest parentheses around arithmetic in operand of ^"
msgstr "foreslår paranteser omkring beregning i operand til ^"
-#: c-typeck.c:1824
+#: c-typeck.c:2015
msgid "suggest parentheses around comparison in operand of ^"
msgstr "foreslår paranteser omkring sammenligning i operand til ^"
-#: c-typeck.c:1831
+#: c-typeck.c:2022
msgid "suggest parentheses around + or - in operand of &"
msgstr "foreslår paranteser omkring + eller - i operand til &"
-#: c-typeck.c:1834
+#: c-typeck.c:2025
msgid "suggest parentheses around comparison in operand of &"
msgstr "foreslår paranteser omkring sammenligning i operand til &"
-#: c-typeck.c:1841
+#: c-typeck.c:2032
msgid "comparisons like X<=Y<=Z do not have their mathematical meaning"
msgstr "sammenligninger som 'x <= y <= z' følger ikke den matematiske betydning"
-#: c-typeck.c:2001 c-typeck.c:2036
-msgid "division by zero"
-msgstr "division med nul"
-
-#: c-typeck.c:2081 cp/typeck.c:3194
-msgid "right shift count is negative"
-msgstr "højreskiftsantal er negativ"
-
-#: c-typeck.c:2088 cp/typeck.c:3200
-msgid "right shift count >= width of type"
-msgstr "højreskiftsantal er større end bredden af typen"
-
-#: c-typeck.c:2109 cp/typeck.c:3219
-msgid "left shift count is negative"
-msgstr "venstreskiftsantal er negativ"
-
-#: c-typeck.c:2112 cp/typeck.c:3221
-msgid "left shift count >= width of type"
-msgstr "venstreskiftsantal er større end bredden af typen"
-
-#: c-typeck.c:2133
-msgid "shift count is negative"
-msgstr "skifteantal er negativ"
-
-#: c-typeck.c:2135
-msgid "shift count >= width of type"
-msgstr "skifteantal er større end bredden af typen"
-
-#: c-typeck.c:2152 cp/typeck.c:3256
-msgid "comparing floating point with == or != is unsafe"
-msgstr "sammenligning af kommatal med == eller != er ikke sikkert"
-
-#: c-typeck.c:2178 c-typeck.c:2184
-msgid "ISO C forbids comparison of `void *' with function pointer"
-msgstr "ISO C forbyder sammenligning af 'void *' med funktionshenvisning"
-
-#: c-typeck.c:2187 c-typeck.c:2227 c-typeck.c:2255
-msgid "comparison of distinct pointer types lacks a cast"
-msgstr "sammenligning med forskellige henvisningstyper mangler en typeomtvingelse"
-
-#: c-typeck.c:2201 c-typeck.c:2206 c-typeck.c:2275 c-typeck.c:2280
-msgid "comparison between pointer and integer"
-msgstr "sammenligning mellem henvisningsvariabel og heltal"
-
-#: c-typeck.c:2222 c-typeck.c:2250
-msgid "ISO C forbids ordered comparisons of pointers to functions"
-msgstr "ISO C forbyder ordnede sammenligninger af henvisninger til funktioner"
-
-#: c-typeck.c:2247
-msgid "comparison of complete and incomplete pointers"
-msgstr "sammenligning mellem en fuldstændig og ufuldstændig henvisning"
-
-#: c-typeck.c:2263 c-typeck.c:2270
-msgid "ordered comparison of pointer with integer zero"
-msgstr "ordnet sammenligning af henvisning med heltallet nul"
-
-#: c-typeck.c:2294 cp/typeck.c:3389
-msgid "unordered comparison on non-floating point argument"
-msgstr "uordnet sammenligning af ikke-kommatalsparameter"
-
-#: c-typeck.c:2505
-msgid "comparison between signed and unsigned"
-msgstr "sammenligning mellem signed og unsigned"
-
-#: c-typeck.c:2551 cp/typeck.c:3633
-msgid "comparison of promoted ~unsigned with constant"
-msgstr "sammenligning af forfremmet ~unsigned med konstant"
-
-#: c-typeck.c:2559 cp/typeck.c:3641
-msgid "comparison of promoted ~unsigned with unsigned"
-msgstr "sammenligning af forfremmet ~unsigned med unsigned"
-
-#: c-typeck.c:2639
+#: c-typeck.c:2095
msgid "pointer of type `void *' used in subtraction"
msgstr "henvisning af typen 'void *' benyttet i subtraktion"
-#: c-typeck.c:2641
+#: c-typeck.c:2097
msgid "pointer to a function used in subtraction"
msgstr "henvisning til en funktion benyttet i subtraktion"
-#: c-typeck.c:2738
+#: c-typeck.c:2191
msgid "wrong type argument to unary plus"
msgstr "forkert parametertype til unært plus"
-#: c-typeck.c:2751
+#: c-typeck.c:2204
msgid "wrong type argument to unary minus"
msgstr "forkert parametertype til unært minus"
-#: c-typeck.c:2768
+#: c-typeck.c:2221
msgid "ISO C does not support `~' for complex conjugation"
msgstr "ISO C understøtter ikke '~' til compleks-konjugering"
-#: c-typeck.c:2774
+#: c-typeck.c:2227
msgid "wrong type argument to bit-complement"
msgstr "forkert parametertype til bitkomplement"
-#: c-typeck.c:2783
+#: c-typeck.c:2235
msgid "wrong type argument to abs"
msgstr "forkert parametertype til abs"
-#: c-typeck.c:2795
+#: c-typeck.c:2247
msgid "wrong type argument to conjugation"
msgstr "forkert parametertype til konjugation"
-#: c-typeck.c:2809
+#: c-typeck.c:2261
msgid "wrong type argument to unary exclamation mark"
msgstr "forkert parametertype til unært udråbstegn"
-#: c-typeck.c:2852
+#: c-typeck.c:2304
msgid "ISO C does not support `++' and `--' on complex types"
msgstr "ISO C understøtter ikke '++' og '--' for complex-typer"
# man kan ikke stikke en forøgelse (++) en type som parameter, 'type
# argument' skal opfattes på en anden måde
-#: c-typeck.c:2867 c-typeck.c:2899
+#: c-typeck.c:2319 c-typeck.c:2351
msgid "wrong type argument to increment"
msgstr "forkert parametertype til forøgelse"
-#: c-typeck.c:2869 c-typeck.c:2901
+#: c-typeck.c:2321 c-typeck.c:2353
msgid "wrong type argument to decrement"
msgstr "forkert parametertype til formindskelse"
-#: c-typeck.c:2890
+#: c-typeck.c:2342
msgid "increment of pointer to unknown structure"
msgstr "forøgelse af henvisning til en ukendt struktur"
-#: c-typeck.c:2892
+#: c-typeck.c:2344
msgid "decrement of pointer to unknown structure"
msgstr "formindskelse af henvisning til en ukendt struktur"
-# RETMIG: hvad betyder dette?
-#: c-typeck.c:3029
-msgid "ISO C forbids the address of a cast expression"
-msgstr "ISO C forbyder adressen af et typeomtvingningsudtryk"
-
-#: c-typeck.c:3039
+#: c-typeck.c:2469
msgid "invalid lvalue in unary `&'"
msgstr "ugyldig venstreværdi i unær '&'"
-#: c-typeck.c:3071
+#: c-typeck.c:2501
#, c-format
msgid "attempt to take address of bit-field structure member `%s'"
msgstr "forsøg på at finde adressen af bitfeltstrukturmedlemmet '%s'"
-#: c-typeck.c:3180 c-typeck.c:4651 c-typeck.c:4667 c-typeck.c:4683
-#: final.c:3146 final.c:3148 gcc.c:4381 rtl-error.c:122 toplev.c:1694
-#: config/cris/cris.c:545 cp/spew.c:1538 cp/typeck.c:4367 java/expr.c:364
-#: java/verify.c:1467 java/verify.c:1468 java/verify.c:1483
-#, c-format
-msgid "%s"
-msgstr "%s"
-
-#: c-typeck.c:3241
-msgid "ISO C forbids use of conditional expressions as lvalues"
+#: c-typeck.c:2634
+#, fuzzy
+msgid "use of conditional expressions as lvalues is deprecated"
msgstr "ISO C forbyder brug af betingede udtryk som venstreværdier"
-#: c-typeck.c:3244
-msgid "ISO C forbids use of compound expressions as lvalues"
+#: c-typeck.c:2637
+#, fuzzy
+msgid "use of compound expressions as lvalues is deprecated"
msgstr "ISO C forbyder brug af sammensatte udtryk som venstreværdier"
-#: c-typeck.c:3247
-msgid "ISO C forbids use of cast expressions as lvalues"
+#: c-typeck.c:2640
+#, fuzzy
+msgid "use of cast expressions as lvalues is deprecated"
msgstr "ISO C forbyder brug af typeomtvingningsudtryk som venstreværdier"
# RETMIG: lettere klodset konstruktion
-#: c-typeck.c:3264
+#: c-typeck.c:2655
#, c-format
msgid "%s of read-only member `%s'"
msgstr "%s af medlemmet '%s' der kun må læses"
-#: c-typeck.c:3268
+#: c-typeck.c:2659
#, c-format
msgid "%s of read-only variable `%s'"
msgstr "%s af variablen '%s' der kun må læses"
-#: c-typeck.c:3271
+#: c-typeck.c:2662
#, c-format
msgid "%s of read-only location"
msgstr "%s af placering der kun må læses"
-#: c-typeck.c:3290
+#: c-typeck.c:2680
#, c-format
msgid "cannot take address of bit-field `%s'"
msgstr "kan ikke finde adressen af bitfeltet '%s'"
-#: c-typeck.c:3318
+#: c-typeck.c:2708 treelang/treetree.c:946
#, c-format
msgid "global register variable `%s' used in nested function"
msgstr "global registervariabel '%s' benyttet i indlejret funktion"
-#: c-typeck.c:3322
+#: c-typeck.c:2712 treelang/treetree.c:950
#, c-format
msgid "register variable `%s' used in nested function"
msgstr "registervariabel '%s' benyttet i indlejret funktion"
-#: c-typeck.c:3329
+#: c-typeck.c:2719 treelang/treetree.c:957
#, c-format
msgid "address of global register variable `%s' requested"
msgstr "forespørgsel efter adressen af den globale registervariabel '%s'"
-#: c-typeck.c:3341
+#: c-typeck.c:2731
msgid "cannot put object with volatile field into register"
msgstr "kan ikke anbringe et objekt med et volatile-felt i et register"
-#: c-typeck.c:3345
+#: c-typeck.c:2735 treelang/treetree.c:962
#, c-format
msgid "address of register variable `%s' requested"
msgstr "forespørgsel efter adressen af registervariablen '%s'"
-#: c-typeck.c:3453
+#: c-typeck.c:2820
msgid "signed and unsigned type in conditional expression"
msgstr "signed og unsigned type i betinget udtryk"
-#: c-typeck.c:3460
+#: c-typeck.c:2827
msgid "ISO C forbids conditional expr with only one void side"
msgstr "ISO C forbyder betingede udtryk med kun én tom side"
-#: c-typeck.c:3476 c-typeck.c:3483
+#: c-typeck.c:2843 c-typeck.c:2850
msgid "ISO C forbids conditional expr between `void *' and function pointer"
msgstr "ISO C++ forbyder betinget udtryk mellem 'void *' og funktionshenvisning"
-#: c-typeck.c:3489
+#: c-typeck.c:2856
msgid "pointer type mismatch in conditional expression"
msgstr "henvisningstyperne i betingelsesudtrykket passer ikke sammen"
-#: c-typeck.c:3496 c-typeck.c:3506
+#: c-typeck.c:2863 c-typeck.c:2873
msgid "pointer/integer type mismatch in conditional expression"
msgstr "henvisnings- og heltalstype i betingelsesudtrykket passer ikke sammen"
-#: c-typeck.c:3520
+#: c-typeck.c:2887
msgid "type mismatch in conditional expression"
msgstr "typerne i betingelsesudtrykket passer ikke sammen"
-#: c-typeck.c:3591 cp/typeck.c:4623
+#: c-typeck.c:2947
msgid "left-hand operand of comma expression has no effect"
msgstr "venstreoperanden til kommaudtrykket har ingen virkning"
-#: c-typeck.c:3635
+#: c-typeck.c:2978
msgid "cast specifies array type"
msgstr "typetildelingen angiver en tabeltype"
-#: c-typeck.c:3641
+#: c-typeck.c:2984
msgid "cast specifies function type"
msgstr "typetildelingen angiver en funktionstype"
-#: c-typeck.c:3651
+#: c-typeck.c:2994
msgid "ISO C forbids casting nonscalar to the same type"
msgstr "ISO C forbyder omtvingelse af ikke-skalar til den samme type"
-#: c-typeck.c:3670
+#: c-typeck.c:3012
msgid "ISO C forbids casts to union type"
msgstr "ISO C forbyder omtvingelse til uniontype"
-#: c-typeck.c:3685
+#: c-typeck.c:3020
msgid "cast to union type from type not present in union"
msgstr "typetildeling til en uniontype fra en type der ikke findes i union'en"
-#: c-typeck.c:3736
+#: c-typeck.c:3071
msgid "cast adds new qualifiers to function type"
msgstr "typeomtvingning tilføjer modifikationer til en funktionstype"
#. There are qualifiers present in IN_OTYPE that are not
#. present in IN_TYPE.
-#: c-typeck.c:3741
+#: c-typeck.c:3076
msgid "cast discards qualifiers from pointer target type"
msgstr "typeomtvingelse kasserer modifikationer på henvisningsmålets type"
-#: c-typeck.c:3756
+#: c-typeck.c:3091
msgid "cast increases required alignment of target type"
msgstr "typeomtvingelse forøger den påkrævne justering af måltypen"
-#: c-typeck.c:3762 cp/typeck.c:5144
+#: c-typeck.c:3097 cp/typeck.c:4889
msgid "cast from pointer to integer of different size"
msgstr "typeomtvingelse fra henvisning til heltal af en anden størrelse"
-#: c-typeck.c:3767
+#: c-typeck.c:3102
msgid "cast does not match function type"
msgstr "typeomtvingelse passer ikke til funktionstype"
-#: c-typeck.c:3774 cp/typeck.c:5151
+#: c-typeck.c:3109 cp/typeck.c:4896
msgid "cast to pointer from integer of different size"
msgstr "typeomtvingelse fra heltal til henvisning af en anden størrelse"
-#: c-typeck.c:3786
+#: c-typeck.c:3121
msgid "type-punning to incomplete type might break strict-aliasing rules"
msgstr "typeomtvingning af ufuldstændig type bryder muligvis strenge aliasregler"
-#: c-typeck.c:3790
+#: c-typeck.c:3125
msgid "dereferencing type-punned pointer will break strict-aliasing rules"
msgstr "følgning af en typeomtvunget henvisning vil bryde strenge aliasregler"
+#: c-typeck.c:3136
+#, fuzzy
+msgid "ISO C forbids conversion of function pointer to object pointer type"
+msgstr "ISO C forbyder sammenligning af 'void *' med funktionshenvisning"
+
+#: c-typeck.c:3145
+#, fuzzy
+msgid "ISO C forbids conversion of object pointer to function pointer type"
+msgstr "ISO C forbyder sammenligning af 'void *' med funktionshenvisning"
+
#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
#. Reject anything strange now.
-#: c-typeck.c:3949
+#: c-typeck.c:3303
msgid "invalid lvalue in assignment"
msgstr "ugyldig venstreværdi i tildeling"
#. Convert new value to destination type.
-#: c-typeck.c:3958 c-typeck.c:3983 c-typeck.c:4000 cp/typeck.c:5266
-#: cp/typeck.c:5416
+#. Check this here to avoid odd errors when trying to convert
+#. a throw to the type of the COND_EXPR.
+#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
+#. Reject anything strange now.
+#: c-typeck.c:3312 c-typeck.c:3337 c-typeck.c:3354 cp/typeck.c:5008
+#: cp/typeck.c:5152
msgid "assignment"
msgstr "tildeling"
-#: c-typeck.c:4070
+#: c-typeck.c:3421
msgid "cannot pass rvalue to reference parameter"
msgstr "kan ikke videregive højreværdi til referenceparameter"
-#: c-typeck.c:4174 c-typeck.c:4241
+#: c-typeck.c:3530 c-typeck.c:3606
#, c-format
msgid "%s makes qualified function pointer from unqualified"
msgstr "%s opretter en funktionshenvisning med modifikationer fra én uden"
-#: c-typeck.c:4178 c-typeck.c:4221
+#: c-typeck.c:3534 c-typeck.c:3586
#, c-format
msgid "%s discards qualifiers from pointer target type"
msgstr "%s kasserer modifikationer på henvisningsmålets type"
-#: c-typeck.c:4184
+#: c-typeck.c:3540
msgid "ISO C prohibits argument conversion to union type"
msgstr "ISO C forbyder parameterkonvertering til uniontype"
-#: c-typeck.c:4213
+#: c-typeck.c:3578
#, c-format
msgid "ISO C forbids %s between function pointer and `void *'"
msgstr "ISO C forbyder %s mellem funktionshenvisning og 'void *'"
-#: c-typeck.c:4230
+#: c-typeck.c:3595
#, c-format
msgid "pointer targets in %s differ in signedness"
msgstr "fortegnene i henvisningsmål i %s er forskellige"
-#: c-typeck.c:4246
+#: c-typeck.c:3611
#, c-format
msgid "%s from incompatible pointer type"
msgstr "%s fra en henvisningstype der ikke er forenelig med målets"
-#: c-typeck.c:4252 c-typeck.c:4804 cp/typeck.c:1653
+#: c-typeck.c:3617 c-typeck.c:4124 cp/typeck.c:1366
msgid "invalid use of non-lvalue array"
msgstr "ugyldig brug af en tabel der ikke kan optræde som en venstreværdi"
-#: c-typeck.c:4267
+#: c-typeck.c:3631
#, c-format
msgid "%s makes pointer from integer without a cast"
msgstr "%s opretter en henvisningsvariabel ud fra et heltal uden en typeomtvingning"
-#: c-typeck.c:4275
+#: c-typeck.c:3638
#, c-format
msgid "%s makes integer from pointer without a cast"
msgstr "%s opretter et heltal ud fra en henvisningsvariabel uden en typeomtvingning"
-#: c-typeck.c:4289 c-typeck.c:4292
+#: c-typeck.c:3652 c-typeck.c:3655
#, c-format
msgid "incompatible type for argument %d of `%s'"
msgstr "typen af den %d. parameter i '%s' passer ikke"
-#: c-typeck.c:4296
+#: c-typeck.c:3659
#, c-format
msgid "incompatible type for argument %d of indirect function call"
msgstr "typen af den %d. parameter i det indirekte funktionskald passer ikke"
-#: c-typeck.c:4300
+#: c-typeck.c:3663
#, c-format
msgid "incompatible types in %s"
msgstr "uforenelige typer i %s"
#. Function name is known; supply it.
-#: c-typeck.c:4358
+#: c-typeck.c:3719
#, c-format
msgid "passing arg of `%s'"
msgstr "videregiver parameter til '%s'"
#. Function name unknown (call through ptr).
-#: c-typeck.c:4368
+#: c-typeck.c:3728
msgid "passing arg of pointer to function"
msgstr "videregiver parameter af henvisning til funktion"
#. Function name is known; supply it.
-#: c-typeck.c:4376
+#: c-typeck.c:3736
#, c-format
msgid "passing arg %d of `%s'"
msgstr "videregiver den %d. parameter til '%s'"
#. Function name unknown (call through ptr); just give arg number.
-#: c-typeck.c:4386
+#: c-typeck.c:3745
#, c-format
msgid "passing arg %d of pointer to function"
msgstr "videregiver den %d. parameter af henvisning til funktion"
-#: c-typeck.c:4452
-msgid "initializer for static variable is not constant"
-msgstr "startværdien for den statiske variabel er ikke en konstant"
-
-#: c-typeck.c:4458
-msgid "initializer for static variable uses complicated arithmetic"
-msgstr "startværdien for den statiske variabel benytter komplicerede beregninger"
-
-#: c-typeck.c:4466
-msgid "aggregate initializer is not constant"
-msgstr "startværdi til variabel af en sammensat type er ikke en konstant"
-
-#: c-typeck.c:4468
-msgid "aggregate initializer uses complicated arithmetic"
-msgstr "startværdien til variabel af en sammensat type benytter komplicerede beregninger"
-
# 'automatic aggregate' betyder automatisk allokerede variabler, dvs.
# ganske almindelige lokale variabler (kan evt. erklæres med 'auto')
-#: c-typeck.c:4475
+#: c-typeck.c:3802
msgid "traditional C rejects automatic aggregate initialization"
msgstr "traditionel C forbyder klargøring af auto-variabler af sammensatte typer"
-#: c-typeck.c:4654 c-typeck.c:4670 c-typeck.c:4686
+#: c-typeck.c:3973 c-typeck.c:3988 c-typeck.c:4003
#, c-format
msgid "(near initialization for `%s')"
msgstr "(i nærheden af klargøringen af '%s')"
-#: c-typeck.c:4737 cp/typeck2.c:488
+#: c-typeck.c:4052 cp/typeck2.c:559
msgid "char-array initialized from wide string"
msgstr "char-tabel får tildelt startværdi fra en bred streng"
-#: c-typeck.c:4744 cp/typeck2.c:495
+#: c-typeck.c:4059 cp/typeck2.c:566
msgid "int-array initialized from non-wide string"
msgstr "int-tabel får tildelt startværdi fra en ikke-bred streng"
-#: c-typeck.c:4762 cp/typeck2.c:511
+#: c-typeck.c:4077 cp/typeck2.c:581
msgid "initializer-string for array of chars is too long"
msgstr "startværdistrengen til char-tabellen er for lang"
-#: c-typeck.c:4822
+#: c-typeck.c:4147
msgid "array initialized from non-constant array expression"
msgstr "tabel får tildelt en startværdi fra et tabeludtryk der ikke er konstant"
-#: c-typeck.c:4839 c-typeck.c:4841 c-typeck.c:4857 c-typeck.c:4878
-#: c-typeck.c:6281
+#: c-typeck.c:4164 c-typeck.c:4166 c-typeck.c:4182 c-typeck.c:4203
+#: c-typeck.c:5585
msgid "initializer element is not constant"
msgstr "startværdielement er ikke en konstant"
-#: c-typeck.c:4873
+#: c-typeck.c:4198
msgid "initialization"
msgstr "klargøring"
-#: c-typeck.c:4884 c-typeck.c:6286
+#: c-typeck.c:4209 c-typeck.c:5590
msgid "initializer element is not computable at load time"
msgstr "startværdielement kan ikke beregnes ved indlæsningstidspunktet"
-#: c-typeck.c:4899 cp/typeck2.c:588
+#: c-typeck.c:4224 cp/typeck2.c:658
msgid "invalid initializer"
msgstr "ugyldig startværdi"
-#: c-typeck.c:5393
+#: c-typeck.c:4509 cp/decl.c:4465
+#, fuzzy
+msgid "opaque vector types cannot be initialized"
+msgstr "objekt af typen '%T' med variabel størrelse må ikke tildeles en startværdi"
+
+#: c-typeck.c:4703
msgid "extra brace group at end of initializer"
msgstr "overskydende krøllede paranteser ved slutningen af startværdien"
-#: c-typeck.c:5413
+#: c-typeck.c:4723
msgid "missing braces around initializer"
msgstr "krøllede paranteser mangler omkring startværdien"
-#: c-typeck.c:5473
+#: c-typeck.c:4783
msgid "braces around scalar initializer"
msgstr "krøllede paranteser omkring skalarstartværdi"
# RETMIG: eller er det fleksibel tabel-medlem
-#: c-typeck.c:5521
+#: c-typeck.c:4830
msgid "initialization of flexible array member in a nested context"
msgstr "klargøring af fleksibelt tabelmedlem i en indlejret kontekst"
-#: c-typeck.c:5523
+#: c-typeck.c:4832
msgid "initialization of a flexible array member"
msgstr "klargøring af fleksibelt tabelmedlem"
-#: c-typeck.c:5554
+#: c-typeck.c:4863
msgid "missing initializer"
msgstr "manglende startværdi"
-#: c-typeck.c:5580
+#: c-typeck.c:4889
msgid "empty scalar initializer"
msgstr "tom skalarstartværdi"
-#: c-typeck.c:5585
+#: c-typeck.c:4894
msgid "extra elements in scalar initializer"
msgstr "overskydende elementer i skalarstarværdi"
-#: c-typeck.c:5671
+#: c-typeck.c:4979
msgid "initialization designators may not nest"
msgstr "klargøringstegn må ikke indlejres"
-#: c-typeck.c:5692 c-typeck.c:5763
+#: c-typeck.c:5000 c-typeck.c:5068
msgid "array index in non-array initializer"
msgstr "tabelindeks i en startværdi der ikke er en tabel"
# RETMIG: record?
-#: c-typeck.c:5697 c-typeck.c:5817
+#: c-typeck.c:5005 c-typeck.c:5121
msgid "field name not in record or union initializer"
msgstr "feltnavn ikke i struktur- eller union-startværdi"
-#: c-typeck.c:5759 c-typeck.c:5761
+#: c-typeck.c:5064 c-typeck.c:5066
msgid "nonconstant array index in initializer"
msgstr "tabelindekset i startværdien er ikke en konstant"
-#: c-typeck.c:5765 c-typeck.c:5768
+#: c-typeck.c:5070 c-typeck.c:5073
msgid "array index in initializer exceeds array bounds"
msgstr "tabelindeks i startværdi overskrider tabelgrænser"
-#: c-typeck.c:5779
+#: c-typeck.c:5084
msgid "empty index range in initializer"
msgstr "tomt indeksinterval i startværdi"
-#: c-typeck.c:5788
+#: c-typeck.c:5093
msgid "array index range in initializer exceeds array bounds"
msgstr "tabelindeksinterval i startværdi overskrider tabelgrænser"
-#: c-typeck.c:5829
+#: c-typeck.c:5133
#, c-format
msgid "unknown field `%s' specified in initializer"
msgstr "ukendt felt '%s' angivet i startværdi"
-#: c-typeck.c:5866 c-typeck.c:5887 c-typeck.c:6348
+#: c-typeck.c:5169 c-typeck.c:5190 c-typeck.c:5652
msgid "initialized field with side-effects overwritten"
msgstr "klargjort felt med bivirkninger overskrevet"
-#: c-typeck.c:6558
+#: c-typeck.c:5860
msgid "excess elements in char array initializer"
msgstr "for mange elementer i char-tabelstartværdien"
-#: c-typeck.c:6565 c-typeck.c:6611
+#: c-typeck.c:5867 c-typeck.c:5913
msgid "excess elements in struct initializer"
msgstr "for mange elementer i struct-startværdi"
-#: c-typeck.c:6626
+#: c-typeck.c:5928
msgid "non-static initialization of a flexible array member"
msgstr "ikke-statisk klargøring af fleksibelt tabelmedlem"
-#: c-typeck.c:6693
+#: c-typeck.c:5995
msgid "excess elements in union initializer"
msgstr "for mange elementer i union-startværdi"
-#: c-typeck.c:6714
+#: c-typeck.c:6016
msgid "traditional C rejects initialization of unions"
msgstr "traditionel C forbyder tildeling af startværdi til unioner"
-#: c-typeck.c:6777
+#: c-typeck.c:6079
msgid "excess elements in array initializer"
msgstr "for mange elementer i tabelstartværdi"
-#: c-typeck.c:6806
+#: c-typeck.c:6108
msgid "excess elements in vector initializer"
msgstr "for mange elementer i vektorstartværdi"
-#: c-typeck.c:6828
+#: c-typeck.c:6130
msgid "excess elements in scalar initializer"
msgstr "for mange elementer i skalarstartværdi"
-#: c-typeck.c:6935
+#: c-typeck.c:6232
msgid "asm template is not a string constant"
msgstr "asm-sætning er ikke en strengkonstant"
-#: c-typeck.c:6967
+#: c-typeck.c:6264
msgid "invalid lvalue in asm statement"
msgstr "ugyldig venstreværdi i asm-sætning"
-#: c-typeck.c:7042
+#: c-typeck.c:6336
msgid "modification by `asm'"
msgstr "ændring af 'asm'"
-#: c-typeck.c:7061 cp/typeck.c:6237
+#: c-typeck.c:6354 cp/typeck.c:5926
msgid "function declared `noreturn' has a `return' statement"
msgstr "funktion der er erklæret 'noreturn' har en 'return'-sætning"
-#: c-typeck.c:7068
+#: c-typeck.c:6361
msgid "`return' with no value, in function returning non-void"
msgstr "'return' uden nogen værdi i en funktion der ikke returnerer void"
-#: c-typeck.c:7074
+#: c-typeck.c:6367
msgid "`return' with a value, in function returning void"
msgstr "'return' med en værdi i en funktion der returnerer void"
-#: c-typeck.c:7078
+#: c-typeck.c:6371
msgid "return"
msgstr "returnering"
-#: c-typeck.c:7130
+#: c-typeck.c:6423
msgid "function returns address of local variable"
msgstr "funktion returnerer adressen på en lokal variabel"
-#: c-typeck.c:7186 cp/semantics.c:555
+#: c-typeck.c:6478 cp/semantics.c:749
msgid "switch quantity not an integer"
msgstr "switch-størrelsen er ikke et heltal"
-#: c-typeck.c:7196
+#: c-typeck.c:6488
msgid "`long' switch expression not converted to `int' in ISO C"
msgstr "'long'-udtryk i switch konverteres ikke til 'int' i ISO C"
-#: c-typeck.c:7231 cp/decl.c:5523
+#: c-typeck.c:6529 cp/parser.c:5538
msgid "case label not within a switch statement"
msgstr "case-etiket befinder sig ikke inden i en switch-sætning"
-#: c-typeck.c:7233 cp/decl.c:5528
+#: c-typeck.c:6531
msgid "`default' label not within a switch statement"
msgstr "'default'-etiket befinder sig ikke inden i en switch-sætning"
-#: calls.c:1934 tree-inline.c:1177
-#, c-format
-msgid "inlining failed in call to `%s'"
+#: c-typeck.c:6683 c-typeck.c:6717
+msgid "division by zero"
+msgstr "division med nul"
+
+#: c-typeck.c:6762 cp/typeck.c:2928
+msgid "right shift count is negative"
+msgstr "højreskiftsantal er negativ"
+
+#: c-typeck.c:6769 cp/typeck.c:2934
+msgid "right shift count >= width of type"
+msgstr "højreskiftsantal er større end bredden af typen"
+
+#: c-typeck.c:6790 cp/typeck.c:2953
+msgid "left shift count is negative"
+msgstr "venstreskiftsantal er negativ"
+
+#: c-typeck.c:6793 cp/typeck.c:2955
+msgid "left shift count >= width of type"
+msgstr "venstreskiftsantal er større end bredden af typen"
+
+#: c-typeck.c:6814
+msgid "shift count is negative"
+msgstr "skifteantal er negativ"
+
+#: c-typeck.c:6816
+msgid "shift count >= width of type"
+msgstr "skifteantal er større end bredden af typen"
+
+#: c-typeck.c:6833 cp/typeck.c:2990
+msgid "comparing floating point with == or != is unsafe"
+msgstr "sammenligning af kommatal med == eller != er ikke sikkert"
+
+#: c-typeck.c:6859 c-typeck.c:6865
+msgid "ISO C forbids comparison of `void *' with function pointer"
+msgstr "ISO C forbyder sammenligning af 'void *' med funktionshenvisning"
+
+#: c-typeck.c:6868 c-typeck.c:6908 c-typeck.c:6936
+msgid "comparison of distinct pointer types lacks a cast"
+msgstr "sammenligning med forskellige henvisningstyper mangler en typeomtvingelse"
+
+#: c-typeck.c:6882 c-typeck.c:6887 c-typeck.c:6956 c-typeck.c:6961
+msgid "comparison between pointer and integer"
+msgstr "sammenligning mellem henvisningsvariabel og heltal"
+
+#: c-typeck.c:6903 c-typeck.c:6931
+msgid "ISO C forbids ordered comparisons of pointers to functions"
+msgstr "ISO C forbyder ordnede sammenligninger af henvisninger til funktioner"
+
+#: c-typeck.c:6928
+msgid "comparison of complete and incomplete pointers"
+msgstr "sammenligning mellem en fuldstændig og ufuldstændig henvisning"
+
+#: c-typeck.c:6944 c-typeck.c:6951
+msgid "ordered comparison of pointer with integer zero"
+msgstr "ordnet sammenligning af henvisning med heltallet nul"
+
+#: c-typeck.c:6975 cp/typeck.c:3126
+msgid "unordered comparison on non-floating point argument"
+msgstr "uordnet sammenligning af ikke-kommatalsparameter"
+
+#: c-typeck.c:7185
+msgid "comparison between signed and unsigned"
+msgstr "sammenligning mellem signed og unsigned"
+
+#: c-typeck.c:7231 cp/typeck.c:3373
+msgid "comparison of promoted ~unsigned with constant"
+msgstr "sammenligning af forfremmet ~unsigned med konstant"
+
+#: c-typeck.c:7239 cp/typeck.c:3381
+msgid "comparison of promoted ~unsigned with unsigned"
+msgstr "sammenligning af forfremmet ~unsigned med unsigned"
+
+#: calls.c:1838
+#, fuzzy
+msgid "%Jinlining failed in call to '%F'"
msgstr "indlejring mislykkedes i kald til '%s'"
-#: calls.c:1935 calls.c:2271 tree-inline.c:1178
+#: calls.c:1839 calls.c:2208 tree-inline.c:1339 tree-inline.c:1346
msgid "called from here"
msgstr "kaldt herfra"
-#: calls.c:2270
-#, c-format
-msgid "can't inline call to `%s'"
+#: calls.c:2207
+#, fuzzy
+msgid "%Jcan't inline call to '%F'"
msgstr "kan ikke indlejre kald til '%s'"
-#: calls.c:2300
+#: calls.c:2216
+msgid "ignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2229
+msgid "ignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2239
msgid "function call has aggregate value"
msgstr "funktionskald har en sammensat værdi"
-#: cfgloop.c:1107
+#: cfg.c:835
+#, c-format
+msgid "bb %d on wrong place"
+msgstr "basisblok %d ved et forkerte sted"
+
+#: cfg.c:841
+#, c-format
+msgid "prev_bb of %d should be %d, not %d"
+msgstr "prev_bb for %d bør være %d, ikke %d"
+
+#: cfg.c:857
+#, c-format
+msgid "verify_flow_info: Wrong count of block %i %i"
+msgstr "verify_flow_info: Ukorrekt antal af blok %i %i"
+
+#: cfg.c:863
+#, c-format
+msgid "verify_flow_info: Wrong frequency of block %i %i"
+msgstr "verify_flow_info: Ukorrekt frekvens af blok %i %i"
+
+#: cfg.c:871
+#, c-format
+msgid "verify_flow_info: Duplicate edge %i->%i"
+msgstr "verify_flow_info: Dobbelt kant %i->%i"
+
+#: cfg.c:877
+#, c-format
+msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+msgstr "verify_flow_info: Ukorrekt sandsynlighed for kant %i->%i %i"
+
+#: cfg.c:883
+#, c-format
+msgid "verify_flow_info: Wrong count of edge %i->%i %i"
+msgstr "verify_flow_info: Ukorrekt antal for kant %i->%i %i"
+
+#: cfg.c:895
+#, c-format
+msgid "verify_flow_info: Basic block %d succ edge is corrupted"
+msgstr "verify_flow_info: Efterfølgende kant til basisblok %d er ødelagt"
+
+#: cfg.c:909 cfgrtl.c:1971
+#, c-format
+msgid "Wrong amount of branch edges after unconditional jump %i"
+msgstr "Forkert antal forgreningskanter efter ubetinget spring %i"
+
+#: cfg.c:917
+#, c-format
+msgid "basic block %d pred edge is corrupted"
+msgstr "foregående kant til basisblok %d er ødelagt"
+
+#: cfg.c:943
+#, c-format
+msgid "basic block %i edge lists are corrupted"
+msgstr "kantlister til basisblok %i er ødelagt"
+
+#: cfg.c:955
+msgid "verify_flow_info failed"
+msgstr "verify_flow_info mislykkedes"
+
+#: cfgloop.c:1134
#, c-format
msgid "Size of loop %d should be %d, not %d."
msgstr "Størrelsen af løkke %d burde være %d, ikke %d."
-#: cfgloop.c:1126
+#: cfgloop.c:1153
#, c-format
msgid "Bb %d do not belong to loop %d."
msgstr "Basisblok %d hører ikke til løkke %d."
-#: cfgloop.c:1144
+#: cfgloop.c:1171
#, c-format
msgid "Loop %d's header does not have exactly 2 entries."
msgstr "Løkke %d's hoved har ikke præcis 2 elementer."
-#: cfgloop.c:1152
+#: cfgloop.c:1179
#, c-format
msgid "Loop %d's latch does not have exactly 1 successor."
msgstr "Løkke %d's ende har ikke præcis 1 efterfølger."
-#: cfgloop.c:1157
+#: cfgloop.c:1184
#, c-format
msgid "Loop %d's latch does not have header as successor."
msgstr "Løkke %d's ende har ikke hoved som efterfølger."
-#: cfgloop.c:1162
+#: cfgloop.c:1189
#, c-format
msgid "Loop %d's latch does not belong directly to it."
msgstr "Løkke %d's ende tilhører ikke direkte løkken."
-#: cfgloop.c:1168
+#: cfgloop.c:1195
#, c-format
msgid "Loop %d's header does not belong directly to it."
msgstr "Løkke %d's hoved tilhører ikke direkte løkken."
-#: cfgrtl.c:1774
+#: cfgloop.c:1201
+#, fuzzy, c-format
+msgid "Loop %d's latch is marked as part of irreducible region."
+msgstr "Løkke %d's ende tilhører ikke direkte løkken."
+
+#: cfgloop.c:1231
#, c-format
-msgid "bb %d on wrong place"
-msgstr "basisblok %d ved et forkerte sted"
+msgid "Basic block %d should be marked irreducible."
+msgstr ""
-#: cfgrtl.c:1780
+#: cfgloop.c:1237
#, c-format
-msgid "prev_bb of %d should be %d, not %d"
-msgstr "prev_bb for %d bør være %d, ikke %d"
+msgid "Basic block %d should not be marked irreducible."
+msgstr ""
+
+#: cfgloop.c:1245
+#, c-format
+msgid "Edge from %d to %d should be marked irreducible."
+msgstr ""
-#: cfgrtl.c:1800
+#: cfgloop.c:1252
+#, c-format
+msgid "Edge from %d to %d should not be marked irreducible."
+msgstr ""
+
+#: cfgrtl.c:1877
#, c-format
msgid "end insn %d for block %d not found in the insn stream"
msgstr "slutinstruktion %d for blok %d ikke fundet i instruktionsstrømmen"
-#: cfgrtl.c:1814
+#: cfgrtl.c:1891
#, c-format
msgid "insn %d is in multiple basic blocks (%d and %d)"
msgstr "instruktion %d er i flere basisblokke (%d og %d)"
-#: cfgrtl.c:1826
+#: cfgrtl.c:1903
#, c-format
msgid "head insn %d for block %d not found in the insn stream"
msgstr "hovedinstruktion %d for blok %d ikke fundet i instruktionsstrømmen"
-#: cfgrtl.c:1848
-#, c-format
-msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
+#: cfgrtl.c:1925
+#, fuzzy
+msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i"
msgstr "verify_flow_info: REG_BR_PROB passer ikke til konf. %i %i"
-#: cfgrtl.c:1855
-#, c-format
-msgid "verify_flow_info: Wrong count of block %i %i"
-msgstr "verify_flow_info: Ukorrekt antal af blok %i %i"
-
-#: cfgrtl.c:1861
-#, c-format
-msgid "verify_flow_info: Wrong frequency of block %i %i"
-msgstr "verify_flow_info: Ukorrekt frekvens af blok %i %i"
-
-#: cfgrtl.c:1869
-#, c-format
-msgid "verify_flow_info: Duplicate edge %i->%i"
-msgstr "verify_flow_info: Dobbelt kant %i->%i"
-
-#: cfgrtl.c:1875
-#, c-format
-msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
-msgstr "verify_flow_info: Ukorrekt sandsynlighed for kant %i->%i %i"
-
-#: cfgrtl.c:1881
-#, c-format
-msgid "verify_flow_info: Wrong count of edge %i->%i %i"
-msgstr "verify_flow_info: Ukorrekt antal for kant %i->%i %i"
-
-#: cfgrtl.c:1911
-#, c-format
-msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
-msgstr "verify_flow_info: Ukorrekte blokke til fald-gennem %i->%i"
-
-#: cfgrtl.c:1926
-#, c-format
-msgid "verify_flow_info: Incorrect fallthru %i->%i"
-msgstr "verify_flow_info: Ukorrekt fald-gennem %i->%i"
-
-#: cfgrtl.c:1928
-msgid "wrong insn in the fallthru edge"
-msgstr "forkert instruktion i fald-gennem-kant"
-
-#: cfgrtl.c:1935
-#, c-format
-msgid "verify_flow_info: Basic block %d succ edge is corrupted"
-msgstr "verify_flow_info: Efterfølgende kant til basisblok %d er ødelagt"
-
-#: cfgrtl.c:1951
+#: cfgrtl.c:1953
#, c-format
msgid "Missing REG_EH_REGION note in the end of bb %i"
msgstr "Mangler REG_EH_REGION-note i slutningen af basisblok %i"
-#: cfgrtl.c:1959
+#: cfgrtl.c:1961
#, c-format
msgid "Too many outgoing branch edges from bb %i"
msgstr "For mange udgående forgreningskanter fra basisblok %i"
-#: cfgrtl.c:1964
+#: cfgrtl.c:1966
#, c-format
msgid "Fallthru edge after unconditional jump %i"
msgstr "Fald gennem-kant efter ubetinget spring %i"
-#: cfgrtl.c:1969
-#, c-format
-msgid "Wrong amount of branch edges after unconditional jump %i"
-msgstr "Forkert antal forgreningskanter efter ubetinget spring %i"
-
-#: cfgrtl.c:1975
+#: cfgrtl.c:1977
#, c-format
msgid "Wrong amount of branch edges after conditional jump %i"
msgstr "Forkert antal forgreningskanter efter betinget spring %i"
-#: cfgrtl.c:1980
+#: cfgrtl.c:1982
#, c-format
msgid "Call edges for non-call insn in bb %i"
msgstr "Kaldekanter for ikke-kaldsinstruktion i basisblok %i"
-#: cfgrtl.c:1989
+#: cfgrtl.c:1991
#, c-format
msgid "Abnormal edges for no purpose in bb %i"
msgstr "Unormale kanter uden noget formål i basisblok %i"
-#: cfgrtl.c:2004
-#, c-format
-msgid "missing barrier after block %i"
-msgstr "manglende barriere efter blok %i"
-
-#: cfgrtl.c:2014
-#, c-format
-msgid "basic block %d pred edge is corrupted"
-msgstr "foregående kant til basisblok %d er ødelagt"
-
-#: cfgrtl.c:2031
+#: cfgrtl.c:2001
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is NULL"
msgstr "instruktion %d inden i basisblok %d, men block_for_insn er NULL"
-#: cfgrtl.c:2035
+#: cfgrtl.c:2005
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is %i"
msgstr "instruktion %d inden i basisblok %d, men block_for_insn er %i"
-#: cfgrtl.c:2049 cfgrtl.c:2059
+#: cfgrtl.c:2019 cfgrtl.c:2029
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
msgstr "NOTE_INSN_BASIC_BLOCK mangler for blok %d"
-#: cfgrtl.c:2072
+#: cfgrtl.c:2042
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
msgstr "NOTE_INSN_BASIC_BLOCK %d i midten af basisblok %d"
-#: cfgrtl.c:2084
+#: cfgrtl.c:2052
#, c-format
msgid "in basic block %d:"
msgstr "i basisblok %d:"
-#: cfgrtl.c:2085
+#: cfgrtl.c:2053
msgid "flow control insn inside a basic block"
msgstr "strømkontrolinstruktion inden i en basisblok"
-#: cfgrtl.c:2104
+#: cfgrtl.c:2099
#, c-format
-msgid "basic block %i edge lists are corrupted"
-msgstr "kantlister til basisblok %i er ødelagt"
+msgid "missing barrier after block %i"
+msgstr "manglende barriere efter blok %i"
+
+#: cfgrtl.c:2112
+#, c-format
+msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgstr "verify_flow_info: Ukorrekte blokke til fald-gennem %i->%i"
-#: cfgrtl.c:2119
-msgid "basic blocks not numbered consecutively"
+#: cfgrtl.c:2127
+#, c-format
+msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgstr "verify_flow_info: Ukorrekt fald-gennem %i->%i"
+
+#: cfgrtl.c:2129
+msgid "wrong insn in the fallthru edge"
+msgstr "forkert instruktion i fald-gennem-kant"
+
+#: cfgrtl.c:2146
+#, fuzzy
+msgid "basic blocks not laid down consecutively"
msgstr "basisblokkene er ikke nummeret i rækkefølge"
-#: cfgrtl.c:2144
+#: cfgrtl.c:2171
msgid "insn outside basic block"
msgstr "instruktion uden for basisblok"
-#: cfgrtl.c:2152
+#: cfgrtl.c:2179
msgid "return not followed by barrier"
msgstr "returnering følges ikke af barriere"
-#: cfgrtl.c:2157
+#: cfgrtl.c:2186
#, c-format
msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr "antallet af basisbloknoter i instruktionskæden (%d) != n_basic_blocks (%d)"
-#: cfgrtl.c:2161
-msgid "verify_flow_info failed"
-msgstr "verify_flow_info mislykkedes"
+#: cgraph.c:161
+#, fuzzy
+msgid "function body not available"
+msgstr "funktion kan ikke indbygges"
+
+#: cgraph.c:163 cgraphunit.c:341
+#, fuzzy
+msgid "redefined extern inline functions are not considered for inlining"
+msgstr "Advar når en inline funktion ikke kan indbygges"
+
+#: cgraph.c:166 cgraphunit.c:346
+#, fuzzy
+msgid "function not considered for inlining"
+msgstr "funktion kan ikke indbygges"
-#: collect2.c:425
+#: cgraph.c:168 cgraphunit.c:344
+#, fuzzy
+msgid "function not inlinable"
+msgstr "funktion kan ikke indbygges"
+
+#: cgraph.c:476
+msgid "%D renamed after being referenced in assembly"
+msgstr ""
+
+#: cgraphunit.c:1042
+msgid "--param large-function-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1055
+msgid "--param large-function-growth limit reached while inlining the caller"
+msgstr ""
+
+#: cgraphunit.c:1120
+msgid "--param max-inline-insns-single limit reached"
+msgstr ""
+
+#: cgraphunit.c:1144
+msgid "--param max-inline-insns-single limit reached after inlining into the callee"
+msgstr ""
+
+#: cgraphunit.c:1221
+msgid "--param inline-unit-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1293 cgraphunit.c:1437
+msgid "recursive inlining"
+msgstr ""
+
+#: collect2.c:406
msgid "internal error"
msgstr "intern fejl"
-#: collect2.c:934
+#: collect2.c:894
msgid "no arguments"
msgstr "ingen parametre"
-#: collect2.c:1263 collect2.c:1411 collect2.c:1444
+#: collect2.c:1226 collect2.c:1374 collect2.c:1407
#, c-format
msgid "fopen %s"
msgstr "fopen %s"
-#: collect2.c:1266 collect2.c:1416 collect2.c:1447
+#: collect2.c:1229 collect2.c:1379 collect2.c:1410
#, c-format
msgid "fclose %s"
msgstr "fclose %s"
-#: collect2.c:1275
+#: collect2.c:1238
#, c-format
msgid "collect2 version %s"
msgstr "collect2 version %s"
-#: collect2.c:1365
+#: collect2.c:1328
#, c-format
msgid "%d constructor(s) found\n"
msgstr "%d konstruktionsfunktion(er) fundet\n"
-#: collect2.c:1366
+#: collect2.c:1329
#, c-format
msgid "%d destructor(s) found\n"
msgstr "%d destruktionsfunktion(er) fundet\n"
-#: collect2.c:1367
+#: collect2.c:1330
#, c-format
msgid "%d frame table(s) found\n"
msgstr "%d rammetabel(ler) fundet\n"
-#: collect2.c:1508
+#: collect2.c:1470
#, c-format
msgid "%s terminated with signal %d [%s]%s"
msgstr "%s afsluttet af signal %d [%s]%s"
-#: collect2.c:1527
+#: collect2.c:1488
#, c-format
msgid "%s returned %d exit status"
msgstr "%s returnerede afslutningskoden %d"
-#: collect2.c:1555
+#: collect2.c:1513
#, c-format
msgid "[cannot find %s]"
msgstr "[kan ikke finde %s]"
-#: collect2.c:1570
+#: collect2.c:1528
#, c-format
msgid "cannot find `%s'"
msgstr "kan ikke finde '%s'"
-#: collect2.c:1581 collect2.c:1584
+#: collect2.c:1539 collect2.c:1542
#, c-format
msgid "redirecting stdout: %s"
msgstr "omdirigerer standard-ud: %s"
-#: collect2.c:1627
+#: collect2.c:1581
#, c-format
msgid "[Leaving %s]\n"
msgstr "[Efterlader %s]\n"
-#: collect2.c:1870
+#: collect2.c:1801
#, c-format
msgid ""
"\n"
@@ -3938,86 +4060,86 @@ msgstr ""
"\n"
"write_c_file - uddatanavnet er %s, præfikset er %s\n"
-#: collect2.c:2082
+#: collect2.c:2005
msgid "cannot find `nm'"
msgstr "kan ikke finde 'nm'"
-#: collect2.c:2092 collect2.c:2533
+#: collect2.c:2015 collect2.c:2444
msgid "pipe"
msgstr "pipe"
-#: collect2.c:2096 collect2.c:2537
+#: collect2.c:2019 collect2.c:2448
msgid "fdopen"
msgstr "fdopen"
-#: collect2.c:2122 collect2.c:2563
+#: collect2.c:2045 collect2.c:2474
#, c-format
msgid "dup2 %d 1"
msgstr "dup2 %d 1"
-#: collect2.c:2125 collect2.c:2128 collect2.c:2141 collect2.c:2566
-#: collect2.c:2569 collect2.c:2582
+#: collect2.c:2048 collect2.c:2051 collect2.c:2064 collect2.c:2477
+#: collect2.c:2480 collect2.c:2493
#, c-format
msgid "close %d"
msgstr "close %d"
-#: collect2.c:2131 collect2.c:2572
+#: collect2.c:2054 collect2.c:2483
#, c-format
msgid "execv %s"
msgstr "fejl under kørsel (vha. execv) af %s"
-#: collect2.c:2185
+#: collect2.c:2108
#, c-format
msgid "init function found in object %s"
msgstr "klargøringsfunktion fundet i objekt %s"
-#: collect2.c:2193
+#: collect2.c:2116
#, c-format
msgid "fini function found in object %s"
msgstr "afslutningsfunktion fundet i objekt %s"
-#: collect2.c:2216 collect2.c:2621
+#: collect2.c:2139 collect2.c:2532
msgid "fclose"
msgstr "fclose"
-#: collect2.c:2261
+#: collect2.c:2181
#, c-format
msgid "unable to open file '%s'"
msgstr "kunne ikke åbne filen '%s'"
-#: collect2.c:2263
+#: collect2.c:2183
#, c-format
msgid "unable to stat file '%s'"
msgstr "kunne ikke få fat i oplysninger om filen '%s'"
-#: collect2.c:2269
+#: collect2.c:2189
#, c-format
msgid "unable to mmap file '%s'"
msgstr "kunne ikke indlæse filen '%s'"
-#: collect2.c:2422
+#: collect2.c:2335
msgid "not found\n"
msgstr "ikke fundet\n"
-#: collect2.c:2424 collect2.c:2600
+#: collect2.c:2337 collect2.c:2511
#, c-format
msgid "dynamic dependency %s not found"
msgstr "dynamisk afhængighed %s ikke fundet"
-#: collect2.c:2444
+#: collect2.c:2356
#, c-format
msgid "bad magic number in file '%s'"
msgstr "ugyldigt magisk tal i filen '%s'"
-#: collect2.c:2466
+#: collect2.c:2378
msgid "dynamic dependencies.\n"
msgstr "dynamiske afhængigheder.\n"
-#: collect2.c:2524
+#: collect2.c:2435
msgid "cannot find `ldd'"
msgstr "kan ikke finde 'ldd'"
-#: collect2.c:2585
+#: collect2.c:2496
msgid ""
"\n"
"ldd output with constructors/destructors.\n"
@@ -4025,1370 +4147,1121 @@ msgstr ""
"\n"
"ldd-uddata med konstruktions-/destruktionsfunktioner.\n"
-#: collect2.c:2612
+#: collect2.c:2523
#, c-format
msgid "unable to open dynamic dependency '%s'"
msgstr "kan ikke åbne den dynamiske afhængighed '%s'"
-#: collect2.c:2726
+#: collect2.c:2683
#, c-format
msgid "%s: not a COFF file"
msgstr "%s: ikke en COFF-fil"
-#: collect2.c:2845
+#: collect2.c:2802
#, c-format
msgid "%s: cannot open as COFF file"
msgstr "%s: kan ikke åbnes som en COFF-fil"
-#: collect2.c:2901
+#: collect2.c:2857
#, c-format
msgid "library lib%s not found"
msgstr "biblioteket lib%s ikke fundet"
-#: collect2.c:3028
-#, c-format
-msgid "open %s"
-msgstr "fejl ved åbning af %s"
-
-#: collect2.c:3051
-msgid "incompatibilities between object file & expected values"
-msgstr "uoverensstemmelser mellem objektfil og forventede værdier"
-
-#: collect2.c:3124
+#: combine.c:13027
#, c-format
msgid ""
+";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
"\n"
-"Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
msgstr ""
+";; kombineringsstatistik: %d forsøg, %d udskiftninger (%d kræver ny plads),\n"
+";; %d vellykkede.\n"
"\n"
-"Behandler symboltabel nr. %d, forskydning = 0x%.8lx, form = %s\n"
-
-#: collect2.c:3133
-msgid "string section missing"
-msgstr "strengsektion mangler"
-
-#: collect2.c:3136
-msgid "section pointer missing"
-msgstr "sektionshenvisning mangler"
-#: collect2.c:3184
-msgid "no symbol table found"
-msgstr "ingen symboltabel fundet"
-
-#: collect2.c:3197
-msgid "no cmd_strings found"
-msgstr "ingen cmd_strings fundet"
-
-#: collect2.c:3209
+#: combine.c:13036
+#, c-format
msgid ""
"\n"
-"Updating header and load commands.\n"
-"\n"
+";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
msgstr ""
"\n"
-"Opdaterer hoved- og indlæsningskommandoer.\n"
-"\n"
+";; kombineringstotal: %d forsøg, %d udskiftninger (%d kræver ny plads),\n"
+";; %d succeser.\n"
-#: collect2.c:3216
-#, c-format
-msgid "load command map, %d cmds, new size %ld.\n"
-msgstr "indlæser kommandooversigt, %d kommandoer, ny størrelse %ld.\n"
+#: convert.c:70
+msgid "cannot convert to a pointer type"
+msgstr "kan ikke konverteres til en henvisningstype"
-#: collect2.c:3247
-msgid ""
-"writing load commands.\n"
-"\n"
-msgstr ""
-"skriver indlæsningskommandoer.\n"
-"\n"
+#: convert.c:267
+msgid "pointer value used where a floating point value was expected"
+msgstr "en henvisningsværdi er angivet hvor der forventedes en kommatalsværdi"
-#: collect2.c:3267
-#, c-format
-msgid "close %s"
-msgstr "fejl ved lukning af %s"
+#: convert.c:271
+msgid "aggregate value used where a float was expected"
+msgstr "en værdi af en sammensat type er angivet hvor der forventedes et kommatal"
-#: collect2.c:3341
-msgid "could not convert 0x%l.8x into a region"
-msgstr "kunne ikke konvertere 0x%l.8x til en region"
+#: convert.c:296
+msgid "conversion to incomplete type"
+msgstr "konvertering til en ufuldstændig type"
-#: collect2.c:3345
-#, c-format
-msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
-msgstr "%s-funktion, region %d, forskydning = %ld (0x%.8lx)\n"
+#: convert.c:600 convert.c:678
+msgid "can't convert between vector values of different size"
+msgstr "kan ikke konvertere vektorværdier af forskellige størrelser"
-#: collect2.c:3472
-msgid "bad magic number"
-msgstr "ugyldigt magisk tal"
+#: convert.c:606
+msgid "aggregate value used where an integer was expected"
+msgstr "en værdi af en sammensat type er angivet hvor der forventedes et heltal"
-#: collect2.c:3473
-msgid "bad header version"
-msgstr "ugyldig version af hovedet"
+#: convert.c:657 f/com.c:1101
+msgid "pointer value used where a complex was expected"
+msgstr "en henvisningsværdi er angivet hvor der forventedes et komplekst tal"
-#: collect2.c:3474
-msgid "bad raw header version"
-msgstr "ugyldig version af råhovedet"
+#: convert.c:661 f/com.c:1103
+msgid "aggregate value used where a complex was expected"
+msgstr "en værdi af en sammensat type er angivet hvor der forventedes et komplekst tal"
-#: collect2.c:3475
-msgid "raw header buffer too small"
-msgstr "råhoved-mellemlager for småt"
+#: convert.c:684
+msgid "can't convert value to a vector"
+msgstr "kan ikke konvertere værdi til en vektor"
-#: collect2.c:3476
-msgid "old raw header file"
-msgstr "gammel råhovedfil"
+#: coverage.c:164
+#, fuzzy, c-format
+msgid "`%s' is not a gcov data file"
+msgstr "\"%s\" er ikke et ugyldigt filnavn"
-#: collect2.c:3477
-msgid "unsupported version"
-msgstr "versionen er ikke understøttet"
+#: coverage.c:175
+#, fuzzy, c-format
+msgid "`%s' is version `%.4s', expected version `%.4s'"
+msgstr "GCC-styringsprogram version %s kører GCCc version %s\n"
-#: collect2.c:3479
+#: coverage.c:255 coverage.c:263
#, c-format
-msgid "unknown {de,en}code_mach_o_hdr return value %d"
-msgstr "ukendt {de,en}code_mach_o_hdr returneringsværdi %d"
+msgid "coverage mismatch for function %u while reading execution counters."
+msgstr ""
-#: collect2.c:3499
+#: coverage.c:257 coverage.c:340
#, c-format
-msgid "fstat %s"
-msgstr "fejl ved egenskabsundersøgelse af filen %s"
+msgid "checksum is %x instead of %x"
+msgstr ""
-#: collect2.c:3536 collect2.c:3584
+#: coverage.c:265 coverage.c:348
#, c-format
-msgid "lseek %s 0"
-msgstr "fejl ved søgning til begyndelsen i filen %s"
+msgid "number of counters is %d instead of %d"
+msgstr ""
-#: collect2.c:3540
-#, c-format
-msgid "read %s"
-msgstr "fejl ved læsning af %s"
+#: coverage.c:271
+#, fuzzy, c-format
+msgid "cannot merge separate %s counters for function %u"
+msgstr "kan ikke bruge va_start i afbrydelsesfunktion"
-#: collect2.c:3543
-#, c-format
-msgid "read %ld bytes, expected %ld, from %s"
-msgstr "læste %ld byte, forventede %ld, fra %s"
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' has overflowed"
+msgstr "overløb i tolkerens stak"
-#: collect2.c:3564
-#, c-format
-msgid "msync %s"
-msgstr "fejl ved synkronisering mellem hukommelse og disk af %s"
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' is corrupted"
+msgstr "'%s' er forældet"
-#: collect2.c:3571
+#: coverage.c:319
#, c-format
-msgid "munmap %s"
-msgstr "fejl ved fjernelse af %s fra hukommelsen"
+msgid "file %s not found, execution counts assumed to be zero"
+msgstr "filen %s ikke fundet, antager at kørselstællere er nul"
+
+#: coverage.c:329
+#, fuzzy, c-format
+msgid "no coverage for function '%s' found."
+msgstr "ugyldig lagringsklasse for funktion '%s'"
-#: collect2.c:3588
+#: coverage.c:337 coverage.c:345
#, c-format
-msgid "write %s"
+msgid "coverage mismatch for function '%s' while reading counter '%s'."
+msgstr ""
+
+#: coverage.c:492
+#, fuzzy, c-format
+msgid "cannot open %s"
+msgstr "kan ikke åbne %s"
+
+#: coverage.c:527
+#, fuzzy, c-format
+msgid "error writing `%s'"
msgstr "fejl ved skrivning til %s"
-#: collect2.c:3591
-#, c-format
-msgid "wrote %ld bytes, expected %ld, to %s"
-msgstr "skrev %ld byte, forventede %ld, til %s"
+#. XXX should be DL_SORRY
+#: cppcharset.c:653
+#, fuzzy, c-format
+msgid "conversion from %s to %s not supported by iconv"
+msgstr "konvertering fra NaN til unsigned int"
-#: combine.c:13222
-#, c-format
-msgid ""
-";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
-"\n"
+#: cppcharset.c:656
+msgid "iconv_open"
msgstr ""
-";; kombineringsstatistik: %d forsøg, %d udskiftninger (%d kræver ny plads),\n"
-";; %d vellykkede.\n"
-"\n"
-#: combine.c:13232
+#. XXX should be DL_SORRY
+#: cppcharset.c:664
#, c-format
-msgid ""
-"\n"
-";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
+msgid "no iconv implementation, cannot convert from %s to %s"
msgstr ""
-"\n"
-";; kombineringstotal: %d forsøg, %d udskiftninger (%d kræver ny plads),\n"
-";; %d succeser.\n"
-#: convert.c:69
-msgid "cannot convert to a pointer type"
-msgstr "kan ikke konverteres til en henvisningstype"
+#: cppcharset.c:808
+#, fuzzy
+msgid "universal character names are only valid in C++ and C99"
+msgstr "universelt tegn '\\U%08x' er ikke gyldigt i kaldenavne"
-#: convert.c:102
-msgid "pointer value used where a floating point value was expected"
-msgstr "en henvisningsværdi er angivet hvor der forventedes en kommatalsværdi"
+#: cppcharset.c:811
+#, c-format
+msgid "the meaning of '\\%c' is different in traditional C"
+msgstr "betydningen af '\\%c' er anderledes i traditionel C"
-#: convert.c:106
-msgid "aggregate value used where a float was expected"
-msgstr "en værdi af en sammensat type er angivet hvor der forventedes et kommatal"
+#: cppcharset.c:837
+#, fuzzy, c-format
+msgid "incomplete universal character name %.*s"
+msgstr "ufuldstændigt universelt tegnnavn"
-#: convert.c:132
-msgid "conversion to incomplete type"
-msgstr "konvertering til en ufuldstændig type"
+#: cppcharset.c:849
+#, fuzzy, c-format
+msgid "%.*s is not a valid universal character"
+msgstr "'%T::%D' er ikke en gyldig erklærer"
-#: convert.c:414 convert.c:494
-msgid "can't convert between vector values of different size"
-msgstr "kan ikke konvertere vektorværdier af forskellige størrelser"
+#: cppcharset.c:859
+#, fuzzy, c-format
+msgid "universal character %.*s is not valid in an identifier"
+msgstr "universelt tegn '\\U%08x' er ikke gyldigt i kaldenavne"
-#: convert.c:420
-msgid "aggregate value used where an integer was expected"
-msgstr "en værdi af en sammensat type er angivet hvor der forventedes et heltal"
+#: cppcharset.c:863
+#, fuzzy, c-format
+msgid "universal character %.*s is not valid at the start of an identifier"
+msgstr "universelt tegn '\\U%08x' er ikke gyldigt i kaldenavne"
-#: convert.c:472 f/com.c:1100
-msgid "pointer value used where a complex was expected"
-msgstr "en henvisningsværdi er angivet hvor der forventedes et komplekst tal"
+#: cppcharset.c:898
+#, fuzzy
+msgid "converting UCN to source character set"
+msgstr "konverterer NULL til en ikke-henvisningstype"
-#: convert.c:476 f/com.c:1102
-msgid "aggregate value used where a complex was expected"
-msgstr "en værdi af en sammensat type er angivet hvor der forventedes et komplekst tal"
+#: cppcharset.c:902
+#, fuzzy
+msgid "converting UCN to execution character set"
+msgstr "konverterer NULL til en ikke-henvisningstype"
-#: convert.c:500
-msgid "can't convert value to a vector"
-msgstr "kan ikke konvertere værdi til en vektor"
+#: cppcharset.c:967
+msgid "the meaning of '\\x' is different in traditional C"
+msgstr "betydningen af '\\x' er anderledes i traditionel C"
+
+#: cppcharset.c:984 f/lex.c:580
+msgid "\\x used with no following hex digits"
+msgstr "\\x angivet uden efterfølgende hexadecimale cifre"
+
+#: cppcharset.c:991
+msgid "hex escape sequence out of range"
+msgstr "den hexadecimale undvigesekvens er uden for det gyldige interval"
+
+#: cppcharset.c:1030
+msgid "octal escape sequence out of range"
+msgstr "den oktale undvigesekvens er uden for det gyldige interval"
+
+#: cppcharset.c:1098
+msgid "the meaning of '\\a' is different in traditional C"
+msgstr "betydningen af '\\a' er anderledes i traditionel C"
-#: cpperror.c:113
+#: cppcharset.c:1105
+#, c-format
+msgid "non-ISO-standard escape sequence, '\\%c'"
+msgstr "undvigesekvensen '\\%c' er ikke ISO-standard"
+
+#: cppcharset.c:1113
+#, c-format
+msgid "unknown escape sequence '\\%c'"
+msgstr "ukendt undvigesekvensen '\\%c'"
+
+#: cppcharset.c:1116
+#, c-format
+msgid "unknown escape sequence: '\\%03o'"
+msgstr "ukendt undvigesekvensen '\\%03o'"
+
+#: cppcharset.c:1122
+#, fuzzy
+msgid "converting escape sequence to execution character set"
+msgstr "undvigesekvens er uden for det gyldig interval for tegn"
+
+#: cppcharset.c:1181
+msgid "converting to execution character set"
+msgstr ""
+
+#: cppcharset.c:1244 cppcharset.c:1307
+msgid "character constant too long for its type"
+msgstr "tegnkonstanten er for lang for dens type"
+
+#: cppcharset.c:1247
+msgid "multi-character character constant"
+msgstr "flerbyte-tegnkonstant"
+
+#: cppcharset.c:1339
+msgid "empty character constant"
+msgstr "tom tegnkonstant"
+
+#: cppcharset.c:1378
+#, fuzzy, c-format
+msgid "failure to convert %s to %s"
+msgstr "kunne ikke konvertere '%E' til '%T'"
+
+#: cpperror.c:110 diagnostic.def:5
msgid "warning: "
msgstr "advarsel: "
-#: cpperror.c:115
+#: cpperror.c:112
msgid "internal error: "
msgstr "intern fejl: "
-#: cpperror.c:189
+#: cpperror.c:174
msgid "stdout"
msgstr "std-ud"
-#: cpperror.c:191 gcc.c:6428
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
-#: cppexp.c:199
+#: cppexp.c:192
msgid "too many decimal points in number"
msgstr "for mange decimalkommaer i tal"
-#: cppexp.c:219
+#: cppexp.c:212
#, c-format
msgid "invalid digit \"%c\" in octal constant"
msgstr "ugyldig ciffer \"%c\" i oktal konstant"
-#: cppexp.c:225
+#: cppexp.c:218
msgid "use of C99 hexadecimal floating constant"
msgstr "brug af C99 hexadecimal kommatalskonstant"
-#: cppexp.c:234
+#: cppexp.c:227
msgid "exponent has no digits"
msgstr "der er ingen cifre i eksponent"
-#: cppexp.c:241
+#: cppexp.c:234
msgid "hexadecimal floating constants require an exponent"
msgstr "hexadecimal kommatalskonstant skal have en eksponent"
-#: cppexp.c:247
+#: cppexp.c:240
#, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "ugyldig endelse \"%.*s\" i kommatalskonstant"
-#: cppexp.c:257 cppexp.c:282
+#: cppexp.c:250 cppexp.c:275
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr "traditionel C tillader ikke endelsen \"%.*s\""
-#: cppexp.c:268
+#: cppexp.c:261
#, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "ugyldig endelse \"%.*s\" i heltalskonstant"
-#: cppexp.c:289
+#: cppexp.c:283
msgid "use of C99 long long integer constant"
msgstr "brug af ISO C99 long long-heltalskonstanter"
-#: cppexp.c:295
+#: cppexp.c:290
msgid "imaginary constants are a GCC extension"
msgstr "imaginære konstanter er en GCC-udvidelse"
-#: cppexp.c:383
+#: cppexp.c:376
msgid "integer constant is too large for its type"
msgstr "heltalskonstanten er for stor for dens type"
-#: cppexp.c:395
+#: cppexp.c:388
msgid "integer constant is so large that it is unsigned"
msgstr "heltalskonstanten er så stor at den er unsigned"
-#: cppexp.c:482
+#: cppexp.c:470
msgid "missing ')' after \"defined\""
msgstr "manglende ')' efter \"defined\""
-#: cppexp.c:489
+#: cppexp.c:477
msgid "operator \"defined\" requires an identifier"
msgstr "operatoren \"defined\" kræver et kaldenavn"
-#: cppexp.c:497
+#: cppexp.c:485
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr "(\"%s\" er et alternativt symbol for \"%s\" i C++)"
-#: cppexp.c:507
+#: cppexp.c:495
msgid "this use of \"defined\" may not be portable"
msgstr "denne brug af \"defined\" er muligvis ikke portabel"
-#: cppexp.c:545
+#: cppexp.c:531
msgid "floating constant in preprocessor expression"
msgstr "kommatalskonstant i præprocessorudtryk"
-#: cppexp.c:551
+#: cppexp.c:537
msgid "imaginary number in preprocessor expression"
msgstr "imaginært tal i præprocessorudtryk"
-#: cppexp.c:596
-#, c-format
-msgid "ISO C++ does not permit \"%s\" in #if"
-msgstr "ISO C++ tillader ikke \"%s\" i #if"
-
-#: cppexp.c:604
+#: cppexp.c:582
#, c-format
msgid "\"%s\" is not defined"
msgstr "\"%s\" er ikke defineret"
-#: cppexp.c:737 cppexp.c:772
+#: cppexp.c:714 cppexp.c:743
#, c-format
msgid "missing binary operator before token \"%s\""
msgstr "manglende binær operator før symbolet \"%s\""
-#: cppexp.c:756
-#, c-format
-msgid "invalid character '%c' in #if"
-msgstr "ugyldigt tegn '%c' i #if"
-
-#: cppexp.c:758
-#, c-format
-msgid "invalid character '\\%03o' in #if"
-msgstr "ugyldigt tegn '\\%03o' i #if"
-
-#: cppexp.c:763
+#: cppexp.c:734
#, c-format
msgid "token \"%s\" is not valid in preprocessor expressions"
msgstr "symbolet \"%s\" er ikke gyldigt i præprocessorudtryk"
-#: cppexp.c:782
+#: cppexp.c:753
msgid "void expression between '(' and ')'"
msgstr "tomt udtryk mellem '(' og ')'"
-#: cppexp.c:785
+#: cppexp.c:756
msgid "#if with no expression"
msgstr "#if uden noget udtryk"
-#: cppexp.c:787
+#: cppexp.c:758
#, c-format
msgid "operator '%s' has no right operand"
msgstr "operatoren '%s' har ikke nogen højre operand"
-#: cppexp.c:813
+#: cppexp.c:784
msgid " ':' without preceding '?'"
msgstr " ':' uden forudgående '?'"
-#: cppexp.c:840
+#: cppexp.c:811
msgid "unbalanced stack in #if"
msgstr "uafbalanceret stak i #if"
-#: cppexp.c:862
+#: cppexp.c:830
#, c-format
msgid "impossible operator '%u'"
msgstr "umulig operator '%u'"
-#: cppexp.c:954
+#: cppexp.c:922
msgid "missing ')' in expression"
msgstr "manglende ')' i udtryk"
-#: cppexp.c:975
+#: cppexp.c:943
msgid "'?' without following ':'"
msgstr "'?' uden efterfølgende ':'"
-#: cppexp.c:985
+#: cppexp.c:953
msgid "integer overflow in preprocessor expression"
msgstr "heltallet løber over i præprocessorudtrykket"
-#: cppexp.c:990
+#: cppexp.c:958
msgid "missing '(' in expression"
msgstr "manglende '(' i udtryk"
-#: cppexp.c:1026
+#: cppexp.c:990
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr "den venstre operand til \"%s\" ændrer fortegn ved forfremmelse"
-#: cppexp.c:1031
+#: cppexp.c:995
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr "den højre operand til \"%s\" ændrer fortegn ved forfremmelse"
-#: cppexp.c:1414
+#: cppexp.c:1352
msgid "comma operator in operand of #if"
msgstr "kommeoperator i en operand til #if"
-#: cppexp.c:1551
+#: cppexp.c:1483
msgid "division by zero in #if"
msgstr "division med nul i #if"
-#: cppfiles.c:411
+#: cppfiles.c:370
+msgid "NULL directory in find_file"
+msgstr ""
+
+#: cppfiles.c:397
+msgid "one or more PCH files were found, but they were invalid"
+msgstr ""
+
+#: cppfiles.c:400
+msgid "use -Winvalid-pch for more information"
+msgstr ""
+
+#: cppfiles.c:458
+#, c-format
+msgid "%s is a block device"
+msgstr "%s er en blokenhed"
+
+#: cppfiles.c:475
#, c-format
msgid "%s is too large"
msgstr "%s er for stor"
-#: cppfiles.c:447
+#: cppfiles.c:510
#, c-format
msgid "%s is shorter than expected"
msgstr "%s er kortere end forventet"
-#: cppfiles.c:461
-#, c-format
-msgid "%s is a block device"
-msgstr "%s er en blokenhed"
-
-#: cppfiles.c:594
-#, c-format
-msgid "no include path in which to find %s"
+#: cppfiles.c:696
+#, fuzzy, c-format
+msgid "no include path in which to search for %s"
msgstr "der er ingen inkluderingssti at finde %s i"
-#: cppfiles.c:668
+#: cppfiles.c:956
msgid "Multiple include guards may be useful for:\n"
msgstr "Flere inkluderingsvagter kan være nyttige til:\n"
-#: cppfiles.c:1014
-msgid "absolute file name in remap_filename"
-msgstr "absolut filnavn i remap_filename"
-
-#: cppinit.c:224
-#, c-format
-msgid "ignoring nonexistent directory \"%s\"\n"
-msgstr "ignorerer det ikke-eksisterende katalog \"%s\"\n"
-
-#: cppinit.c:231
-#, c-format
-msgid "%s: Not a directory"
-msgstr "%s: ikke et katalog"
-
-#: cppinit.c:287
-#, c-format
-msgid "ignoring duplicate directory \"%s\"\n"
-msgstr "ignorerer mere end én angivelse af kataloget \"%s\"\n"
-
-#: cppinit.c:325
-msgid " as it is a non-system directory that duplicates a system directory\n"
-msgstr " da det er et ikke-systemkatalog som dublerer et systemkatalog\n"
-
-#: cppinit.c:891
+#: cppinit.c:387
msgid "cppchar_t must be an unsigned type"
msgstr "cppchar_t skal være en unsigned type"
-#: cppinit.c:895
+#: cppinit.c:391
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr "præprocessorberegning har en maksimal præcision på %lu bit; målarkitektur kræver %lu bit"
-#: cppinit.c:901
+#: cppinit.c:398
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr "CPP-beregning skal være mindst lige så præcis som en målarkitekturs int"
-#: cppinit.c:904
+#: cppinit.c:401
msgid "target char is less than 8 bits wide"
msgstr "målarkitekturs char er mindre end 8 bit bred"
-#: cppinit.c:908
+#: cppinit.c:405
msgid "target wchar_t is narrower than target char"
msgstr "målarkitekturs wchar_t er mindre end målarkitekturs char"
-#: cppinit.c:912
+#: cppinit.c:409
msgid "target int is narrower than target char"
msgstr "målarkitekturs int er mindre end målarkitekturs char"
-#: cppinit.c:916
+#: cppinit.c:414
msgid "CPP half-integer narrower than CPP character"
msgstr "CPP-halvheltal er mindre end CPP-tegn"
-#: cppinit.c:920
+#: cppinit.c:418
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
msgstr "CPP på denne vært kan ikke håndtere bredtegnkonstanter over %lu bit, men målarkitekturen kræver %lu bit"
-#: cppinit.c:972
-msgid "#include \"...\" search starts here:\n"
-msgstr "#include \"...\"-søgning begynder her:\n"
-
-#: cppinit.c:976
-msgid "#include <...> search starts here:\n"
-msgstr "#include <...>-søgning begynder her:\n"
-
-#: cppinit.c:979
-msgid "End of search list.\n"
-msgstr "Slut på søgningslisten.\n"
-
-#: cppinit.c:1057
-msgid "<built-in>"
-msgstr "<indbygget>"
-
-#: cppinit.c:1059
-msgid "<command line>"
-msgstr "<kommandolinje>"
-
-#. Irix6 "cc -n32" and OSF4 cc have problems with char foo[] = ("string");
-#. I.e. a const string initializer with parens around it. That is
-#. what N_("string") resolves to, so we make no_* be macros instead.
-#: cppinit.c:1164
-#, c-format
-msgid "assertion missing after %s"
-msgstr "et postulat mangler efter %s"
-
-#: cppinit.c:1165
-#, c-format
-msgid "directory name missing after %s"
-msgstr "et katalognavn mangler efter %s"
-
-#: cppinit.c:1166
-#, c-format
-msgid "file name missing after %s"
-msgstr "et filnavn mangler efter %s"
-
-#: cppinit.c:1167
-#, c-format
-msgid "macro name missing after %s"
-msgstr "et makronavn mangler efter %s"
-
-#: cppinit.c:1168
-#, c-format
-msgid "path name missing after %s"
-msgstr "navnet på en sti mangler efter %s"
-
-#: cppinit.c:1353
-msgid "-I- specified twice"
-msgstr "-I- er angivet to gange"
-
-#: cpplex.c:149
-#, c-format
-msgid "trigraph ??%c converted to %c"
-msgstr "trigrafen ??%c konverteret til %c"
-
-#: cpplex.c:157
-#, c-format
-msgid "trigraph ??%c ignored"
-msgstr "trigrafen ??%c ignoreret"
-
-#: cpplex.c:214
-msgid "backslash and newline separated by space"
-msgstr "omvendt skråstreg og linjeskift er adskilt af mellemrum"
-
-#: cpplex.c:221 cpptrad.c:158
-msgid "backslash-newline at end of file"
-msgstr "omvendt skråstreg efterfulgt af linjeskift ved slutningen af filen"
-
-#: cpplex.c:287 cpptrad.c:199
-msgid "\"/*\" within comment"
-msgstr "\"/*\" i en kommentar"
-
-#: cpplex.c:395
+#: cpplex.c:410
msgid "null character(s) ignored"
msgstr "nultegn ignoreret"
-#: cpplex.c:402
-#, c-format
-msgid "%s in preprocessing directive"
-msgstr "%s i præprocessordirektiv"
+#: cpplex.c:445
+#, fuzzy
+msgid "'$' in identifier or number"
+msgstr "'$'-tegn i kaldenavn eller tal"
-#: cpplex.c:475
+#: cpplex.c:492
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr "forsøg på at bruge forgiftet \"%s\""
-#: cpplex.c:483
+#: cpplex.c:500
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr "__VA_ARGS__ kan kun optræde i udfoldelsen af en C99-makro med vilkårligt antal parametre"
-#: cpplex.c:555
-msgid "'$' character(s) in identifier or number"
-msgstr "'$'-tegn i kaldenavn eller tal"
-
-#: cpplex.c:698
-#, c-format
-msgid "missing terminating %c character"
-msgstr "manglende afsluttende '%c'-tegn"
-
-#: cpplex.c:711
+#: cpplex.c:596
msgid "null character(s) preserved in literal"
msgstr "nultegn bevaret i strengkonstant"
-#: cpplex.c:915 cpptrad.c:487
-msgid "no newline at end of file"
-msgstr "ingen linjeskift ved slutningen af filen"
-
-#: cpplex.c:1092 cpptrad.c:213
+#: cpplex.c:916
msgid "unterminated comment"
msgstr "uafsluttet kommentar"
-#: cpplex.c:1103
+#: cpplex.c:927
msgid "C++ style comments are not allowed in ISO C90"
msgstr "kommentarer i C++-stil er ikke tilladt i ISO C90"
-#: cpplex.c:1105
+#: cpplex.c:929
msgid "(this will be reported only once per input file)"
msgstr "(dette rapporteres kun en enkelt gang per inddatafil)"
-#: cpplex.c:1110
+#: cpplex.c:934
msgid "multi-line comment"
msgstr "flerlinjers kommentar"
-#: cpplex.c:1425
-#, c-format
-msgid "unknown string token %s\n"
-msgstr "ukendt strengsymbol %s\n"
-
-#: cpplex.c:1438
+#: cpplex.c:1198
#, c-format
msgid "unspellable token %s"
msgstr "symbol %s kan ikke staves"
-#: cpplex.c:1695
-#, c-format
-msgid "the meaning of '\\%c' is different in traditional C"
-msgstr "betydningen af '\\%c' er anderledes i traditionel C"
-
-#: cpplex.c:1701
-msgid "incomplete universal-character-name"
-msgstr "ufuldstændigt universelt tegnnavn"
-
-#: cpplex.c:1715
-#, c-format
-msgid "non-hex digit '%c' in universal-character-name"
-msgstr "'%c' der ikke er et hexadecimalt ciffer, optræder i universelt tegnnavn"
-
-#: cpplex.c:1723
-msgid "universal-character-name on EBCDIC target"
-msgstr "universelt tegnnavn på EBCDIC-mål"
-
-#: cpplex.c:1737
-msgid "universal-character-name out of range"
-msgstr "universelt tegnnavn uden for det gyldige interval"
-
-#: cpplex.c:1791
-msgid "the meaning of '\\a' is different in traditional C"
-msgstr "betydningen af '\\a' er anderledes i traditionel C"
-
-#: cpplex.c:1798
-#, c-format
-msgid "non-ISO-standard escape sequence, '\\%c'"
-msgstr "undvigesekvensen '\\%c' er ikke ISO-standard"
-
-#: cpplex.c:1809
-msgid "the meaning of '\\x' is different in traditional C"
-msgstr "betydningen af '\\x' er anderledes i traditionel C"
-
-#: cpplex.c:1828 f/lex.c:585
-msgid "\\x used with no following hex digits"
-msgstr "\\x angivet uden efterfølgende hexadecimale cifre"
-
-#: cpplex.c:1833
-msgid "hex escape sequence out of range"
-msgstr "den hexadecimale undvigesekvens er uden for det gyldige interval"
-
-#: cpplex.c:1858
-msgid "octal escape sequence out of range"
-msgstr "den oktale undvigesekvens er uden for det gyldige interval"
-
-#: cpplex.c:1874
-#, c-format
-msgid "unknown escape sequence '\\%c'"
-msgstr "ukendt undvigesekvensen '\\%c'"
-
-#: cpplex.c:1877
-#, c-format
-msgid "unknown escape sequence: '\\%03o'"
-msgstr "ukendt undvigesekvensen '\\%03o'"
-
-#: cpplex.c:1882
-msgid "escape sequence out of range for its type"
-msgstr "undvigesekvensen er uden for det gyldig interval for dens type"
-
-#: cpplex.c:1973
-msgid "empty character constant"
-msgstr "tom tegnkonstant"
-
-#: cpplex.c:1983
-msgid "character constant too long for its type"
-msgstr "tegnkonstanten er for lang for dens type"
-
-#: cpplex.c:1986
-msgid "multi-character character constant"
-msgstr "flerbyte-tegnkonstant"
-
-#: cpplib.c:225
+#: cpplib.c:218
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr "ekstra symboler i slutningen af #%s-direktiv"
-#: cpplib.c:315
+#: cpplib.c:304
#, c-format
msgid "#%s is a GCC extension"
msgstr "#%s er en GCC-udvidelse"
-#: cpplib.c:327
+#: cpplib.c:316
msgid "suggest not using #elif in traditional C"
msgstr "foreslår undladelse af brug af #elif i traditionel C"
-#: cpplib.c:330
+#: cpplib.c:319
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr "traditionel C ignorerer #%s når '#' er indrykket"
-#: cpplib.c:334
+#: cpplib.c:323
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr "foreslår at skjule #%s fra traditionel C vha. indrykket '#'"
-#: cpplib.c:358
+#: cpplib.c:345
msgid "embedding a directive within macro arguments is not portable"
msgstr "indlejring af et direktiv inden i makroparametre er ikke portabelt"
-#: cpplib.c:378
+#: cpplib.c:365
msgid "style of line directive is a GCC extension"
msgstr "linjestilsdirektiv er en GCC-udvidelse"
-#: cpplib.c:428
+#: cpplib.c:415
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr "ugyldigt præprocessordirektiv #%s"
-#: cpplib.c:500
+#: cpplib.c:484
msgid "\"defined\" cannot be used as a macro name"
msgstr "\"defined\" kan ikke bruges som makronavn"
-#: cpplib.c:506
+#: cpplib.c:490
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr "\"%s\" kan ikke bruges som et makronavn da det er en operator i C++"
-#: cpplib.c:509
+#: cpplib.c:493
#, c-format
msgid "no macro name given in #%s directive"
msgstr "intet makronavn angivet i direktivet #%s"
-#: cpplib.c:512
+#: cpplib.c:496
msgid "macro names must be identifiers"
msgstr "makronavne skal være kaldenavne"
-#: cpplib.c:552
+#: cpplib.c:537
#, c-format
msgid "undefining \"%s\""
msgstr "glemmer definitionen af \"%s\""
-#: cpplib.c:598
+#: cpplib.c:609
msgid "missing terminating > character"
msgstr "manglende afsluttende '>'-tegn"
-#: cpplib.c:637
+#: cpplib.c:662
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr "#%s forventer \"FILNAVN\" eller <FILNAVN>"
-#: cpplib.c:648
-#, c-format
-msgid "empty file name in #%s"
-msgstr "tomt filnavn i #%s"
+#: cpplib.c:685
+msgid "#include nested too deeply"
+msgstr "#include indlejret for dybt"
-#: cpplib.c:667
+#: cpplib.c:723
msgid "#include_next in primary source file"
msgstr "#include_next i den primære kildekodefil"
-#: cpplib.c:674
-msgid "#import is obsolete, use an #ifndef wrapper in the header file"
-msgstr "#import er forældet, brug en #ifndef-indpakning i inkluderingsfilen"
-
-#: cpplib.c:682
-msgid "#include nested too deeply"
-msgstr "#include indlejret for dybt"
-
-#: cpplib.c:739
+#: cpplib.c:749
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr "ugyldigt flag \"%s\" i linjedirektiv"
-#: cpplib.c:814
+#: cpplib.c:794
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "\"%s\" efter #line er ikke et positivt heltal"
-#: cpplib.c:820
+#: cpplib.c:800
msgid "line number out of range"
msgstr "linjenummer er uden for det gyldige interval"
-#: cpplib.c:831 cpplib.c:902
+#: cpplib.c:812 cpplib.c:885
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr "\"%s\" er ikke et ugyldigt filnavn"
-#: cpplib.c:866
+#: cpplib.c:847
#, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "\"%s\" efter # er ikke et positivt heltal"
-#: cpplib.c:973
+#: cpplib.c:947
msgid "invalid #ident directive"
msgstr "ugyldigt #ident-direktiv"
-#: cpplib.c:1061
+#: cpplib.c:1027
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr "registrerer \"%s\" som både et pragma og som et pragmanavnerum"
-#: cpplib.c:1064
+#: cpplib.c:1030
#, c-format
msgid "#pragma %s %s is already registered"
msgstr "#pragma %s %s er allerede registreret"
-#: cpplib.c:1067
+#: cpplib.c:1033
#, c-format
msgid "#pragma %s is already registered"
msgstr "#pragma %s er allerede registreret"
-#: cpplib.c:1143
-msgid "#pragma once is obsolete"
-msgstr "'#pragma once' er forældet"
-
-#: cpplib.c:1146
+#: cpplib.c:1178
msgid "#pragma once in main file"
msgstr "'#pragma once' i hovedfil"
-#: cpplib.c:1170
+#: cpplib.c:1201
msgid "invalid #pragma GCC poison directive"
msgstr "ugyldigt #pragma GCC poison-direktiv"
-#: cpplib.c:1179
+#: cpplib.c:1210
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr "forgifter eksisterende makro \"%s\""
-#: cpplib.c:1201
+#: cpplib.c:1231
msgid "#pragma system_header ignored outside include file"
msgstr "'#pragma system_header' ignoreret uden for inkluderingsfil"
-#: cpplib.c:1226
-#, c-format
-msgid "cannot find source %s"
+#: cpplib.c:1255
+#, fuzzy, c-format
+msgid "cannot find source file %s"
msgstr "kan ikke finde kilden %s"
-#: cpplib.c:1230
+#: cpplib.c:1259
#, c-format
msgid "current file is older than %s"
msgstr "aktuel fil er ældre end %s"
-#: cpplib.c:1346
+#: cpplib.c:1373
msgid "_Pragma takes a parenthesized string literal"
msgstr "_Pragma tager en strengkonstant med paranteser omkring"
-#: cpplib.c:1429
+#: cpplib.c:1451
msgid "#else without #if"
msgstr "#else uden #if"
-#: cpplib.c:1434
+#: cpplib.c:1456
msgid "#else after #else"
msgstr "#else efter #else"
-#: cpplib.c:1436 cpplib.c:1470
-msgid "the conditional began here"
-msgstr "betingelsen begyndte her"
-
-#: cpplib.c:1463
+#: cpplib.c:1484
msgid "#elif without #if"
msgstr "#elif uden #if"
-#: cpplib.c:1468
+#: cpplib.c:1489
msgid "#elif after #else"
msgstr "#elif efter #else"
-#: cpplib.c:1499
+#: cpplib.c:1519
msgid "#endif without #if"
msgstr "#endif uden #if"
-#: cpplib.c:1582
+#: cpplib.c:1596
msgid "missing '(' after predicate"
msgstr "manglende '(' efter udsagn"
-#: cpplib.c:1597
+#: cpplib.c:1611
msgid "missing ')' to complete answer"
msgstr "manglende ')' til at fuldføre svar"
-#: cpplib.c:1617
+#: cpplib.c:1631
msgid "predicate's answer is empty"
msgstr "udsagnets svar et tomt"
-#: cpplib.c:1647
+#: cpplib.c:1658
msgid "assertion without predicate"
msgstr "postulat uden udsagn"
-#: cpplib.c:1649
+#: cpplib.c:1660
msgid "predicate must be an identifier"
msgstr "udsagn skal være et kaldenavn"
-#: cpplib.c:1738
+#: cpplib.c:1744
#, c-format
msgid "\"%s\" re-asserted"
msgstr "\"%s\" genpostuleret"
-#: cpplib.c:1968
-#, c-format
-msgid "unterminated #%s"
-msgstr "uafsluttet #%s"
-
-#: cppmacro.c:94
-#, c-format
-msgid "macro \"%s\" is not used"
-msgstr "makroen \"%s\" bliver ikke brugt"
-
-#: cppmacro.c:139 cppmacro.c:294
+#: cppmacro.c:125 cppmacro.c:280
#, c-format
msgid "invalid built-in macro \"%s\""
msgstr "ugyldig indbygget makro \"%s\""
-#: cppmacro.c:234
+#: cppmacro.c:221
msgid "could not determine date and time"
msgstr "kunne ikke bestemme dato og tid"
-#: cppmacro.c:407
+#: cppmacro.c:393
msgid "invalid string literal, ignoring final '\\'"
msgstr "ugyldig strengkonstant, ignorerer afsluttende '\\'"
-#: cppmacro.c:504
+#: cppmacro.c:476
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr "indsættelse af \"%s\" og \"%s\" giver ikke et gyldigt præprocessorsymbol"
-#: cppmacro.c:546
+#: cppmacro.c:514
msgid "ISO C99 requires rest arguments to be used"
msgstr "ISO C99 påkræver at restparametrene skal bruges"
-#: cppmacro.c:551
+#: cppmacro.c:519
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr "makroen \"%s\" kræver %u parametre, men modtager kun %u"
-#: cppmacro.c:556
+#: cppmacro.c:524
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr "makroen \"%s\" bliver viderebragt %u parametre, men tager kun mod %u"
-#: cppmacro.c:669 cpptrad.c:774
+#: cppmacro.c:635
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr "uafsluttet parameterliste ved kald af makroen \"%s\""
-#: cppmacro.c:776
+#: cppmacro.c:738
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr "funktionsagtig makro \"%s\" skal bruges med parametre i traditionel C"
-#: cppmacro.c:1314
+#: cppmacro.c:1241
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr "makroparameternavnet \"%s\" optræder mere end én gang"
-#: cppmacro.c:1351
+#: cppmacro.c:1286
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr "\"%s\" må ikke optræde i makroparameterliste"
-#: cppmacro.c:1359
+#: cppmacro.c:1294
msgid "macro parameters must be comma-separated"
msgstr "makroparametre skal være komma-adskilte"
-#: cppmacro.c:1376
+#: cppmacro.c:1311
msgid "parameter name missing"
msgstr "parameternavn mangler"
-#: cppmacro.c:1391
+#: cppmacro.c:1326
msgid "anonymous variadic macros were introduced in C99"
msgstr "anonyme makroer med vilkårligt antal parametre blev introduceret i C99"
-#: cppmacro.c:1395
+#: cppmacro.c:1330
msgid "ISO C does not permit named variadic macros"
msgstr "ISO C tillader ikke navngivne makroer med vilkårligt antal parametre"
-#: cppmacro.c:1404
+#: cppmacro.c:1339
msgid "missing ')' in macro parameter list"
msgstr "manglende ')' i makroparameterliste"
-#: cppmacro.c:1472
+#: cppmacro.c:1402
msgid "ISO C requires whitespace after the macro name"
msgstr "ISO C påkræver mellemrum efter makronavnet"
-#: cppmacro.c:1500
+#: cppmacro.c:1430
msgid "'#' is not followed by a macro parameter"
msgstr "'#' efterfølges ikke af en makroparameter"
-#: cppmacro.c:1519
+#: cppmacro.c:1449
msgid "'##' cannot appear at either end of a macro expansion"
msgstr "'##' må ikke optræde ved nogen af enderne i en makrokrop"
-#: cppmacro.c:1601
-#, c-format
-msgid "\"%s\" redefined"
-msgstr "\"%s\" omdefineret"
-
-#: cppmacro.c:1606
-msgid "this is the location of the previous definition"
-msgstr "den foregående definition er her"
-
-#: cppmacro.c:1657
+#: cppmacro.c:1588
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr "makroparameteren \"%s\" ville blive gjort til en streng i traditionel C"
-#: cppmacro.c:1682
+#: cppmacro.c:1611
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr "ugyldig hashtype %d i cpp_macro_definition"
-#: cppspec.c:109
+#: cpppch.c:84 cpppch.c:332 cpppch.c:356 cpppch.c:365
+msgid "while writing precompiled header"
+msgstr ""
+
+#: cpppch.c:463
+#, fuzzy, c-format
+msgid "%s: not used because `%.*s' not defined"
+msgstr "etiketten '%s' er benyttet, men ikke defineret"
+
+#: cpppch.c:475
+#, c-format
+msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
+msgstr ""
+
+#: cpppch.c:516
+#, fuzzy, c-format
+msgid "%s: not used because `%s' is defined"
+msgstr "'%s' brugt, men aldrig defineret"
+
+#: cpppch.c:529 cpppch.c:715
+msgid "while reading precompiled header"
+msgstr ""
+
+#: cppspec.c:106
#, c-format
msgid "\"%s\" is not a valid option to the preprocessor"
msgstr "\"%s\" er ikke et gyldigt tilvalg til præprocessoren"
-#: cppspec.c:133
+#: cppspec.c:128
msgid "too many input files"
msgstr "for mange inddatafiler"
-#: cpptrad.c:841
+#: cpptrad.c:744
#, c-format
msgid "detected recursion whilst expanding macro \"%s\""
msgstr "opdagede rekursion ved udfoldelse af makroen \"%s\""
-#: cse.c:7195
+#: cpptrad.c:911
+#, fuzzy
+msgid "syntax error in macro parameter list"
+msgstr "\"%s\" må ikke optræde i makroparameterliste"
+
+#: cse.c:7040
#, c-format
msgid ";; Processing block from %d to %d, %d sets.\n"
msgstr ";; Behandler blok fra %d til %d, %d mængder.\n"
-#: diagnostic.c:714
-msgid "((anonymous))"
-msgstr "((anonym))"
-
-#: diagnostic.c:928
-#, c-format
-msgid "%s: warnings being treated as errors\n"
-msgstr "%s: advarsler bliver opfattet som fejl\n"
-
-#: diagnostic.c:963
-#, c-format
-msgid "%s: %s: "
-msgstr "%s: %s: "
-
-#: diagnostic.c:1054
-#, c-format
-msgid "%s "
-msgstr "%s "
-
-#: diagnostic.c:1056
-#, c-format
-msgid " %s"
-msgstr " %s"
-
-#: diagnostic.c:1078
-msgid "At top level:"
-msgstr "Ved øverste niveau:"
-
-#: diagnostic.c:1083
-#, c-format
-msgid "In member function `%s':"
-msgstr "I medlemsfunktionen '%s':"
-
-#: diagnostic.c:1087
-#, c-format
-msgid "In function `%s':"
-msgstr "I funktionen '%s':"
-
-#: diagnostic.c:1175
-msgid "compilation terminated.\n"
-msgstr "oversættelse afsluttede.\n"
-
-#: diagnostic.c:1193
+#: diagnostic.c:209
#, c-format
msgid "%s:%d: confused by earlier errors, bailing out\n"
msgstr "%s:%d: forvirret af tidligere fejl, opgiver ævred\n"
-#: diagnostic.c:1208 diagnostic.c:1316
-#, c-format
-msgid ""
-"Please submit a full bug report,\n"
-"with preprocessed source if appropriate.\n"
-"See %s for instructions.\n"
-msgstr ""
-"Indsend venligst en komplet fejlrapport med\n"
-"præprocesseret kildekode om nødvendigt.\n"
-"Se %s for instruktioner.\n"
+#: diagnostic.c:281
+msgid "compilation terminated.\n"
+msgstr "oversættelse afsluttede.\n"
-#: diagnostic.c:1314
+#: diagnostic.c:572
msgid "Internal compiler error: Error reporting routines re-entered.\n"
msgstr "Intern oversætterfejl: fejlrapporteringsrutiner blev kaldt igen.\n"
-#: diagnostic.c:1376
+#: diagnostic.c:584
#, c-format
msgid "in %s, at %s:%d"
msgstr "i %s, ved %s:%d"
-#: diagnostic.c:1397
-#, c-format
-msgid "In file included from %s:%d"
-msgstr "I filen inkluderet af %s:%d"
-
-# kommer til at stå neden under ovenstående, derfor "af"
-#: diagnostic.c:1400
-#, c-format
-msgid ""
-",\n"
-" from %s:%d"
-msgstr ""
-",\n"
-" af %s:%d"
-
-#: diagnostic.c:1401
-msgid ":\n"
-msgstr ":\n"
-
-#: diagnostic.c:1445 diagnostic.c:1462
-#, c-format
-msgid "`%s' is deprecated (declared at %s:%d)"
-msgstr "'%s' er forældet (erklæret ved %s:%d)"
-
-#: diagnostic.c:1465
-#, c-format
-msgid "`%s' is deprecated"
-msgstr "'%s' er forældet"
-
-#: diagnostic.c:1468
-#, c-format
-msgid "type is deprecated (declared at %s:%d)"
-msgstr "type er forældet (erklæret ved %s:%d)"
-
-#: diagnostic.c:1471
-msgid "type is deprecated"
-msgstr "type er forældet"
-
-#: dominance.c:728
+#: dominance.c:763
#, c-format
msgid "dominator of %d should be %d, not %d"
msgstr "dominator for %d burde være %d, ikke %d"
-#: dwarf2out.c:3135
+#: dwarf2out.c:3228
#, c-format
msgid "DW_LOC_OP %s not implemented\n"
msgstr "DW_LOC_OP %s understøttes ikke\n"
-#: dwarfout.c:2066
-#, c-format
-msgid "internal regno botch: `%s' has regno = %d\n"
-msgstr "internt reg.nr.-problem: '%s' har reg.nr. = %d\n"
-
-#: dwarfout.c:6181
-msgid "support for the DWARF1 debugging format is deprecated"
-msgstr "understøttelse for DWARF1-fejlanalyseringsformatet er forældet"
-
-#: dwarfout.c:6278
-msgid "can't get current directory"
-msgstr "kan ikke få fat i det aktuelle katalog"
-
#: emit-rtl.c:1155
msgid "can't access real part of complex value in hard register"
msgstr "kan ikke tilgå den reelle del af komplekst tal i et hardwareregister"
-#: emit-rtl.c:1177
+#: emit-rtl.c:1182
msgid "can't access imaginary part of complex value in hard register"
msgstr "kan ikke tilgå den imaginære del af komplekst tal i et hardwareregister"
-#: emit-rtl.c:3402
+#: emit-rtl.c:2263
+#, fuzzy
+msgid "Invalid rtl sharing found in the insn"
+msgstr "ugyldig operand i instruktionen"
+
+#: emit-rtl.c:2265
+msgid "Shared rtx"
+msgstr ""
+
+#: emit-rtl.c:3400
msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
msgstr "ICE: emit_insn brugt hvor emit_jump_insn behøves:\n"
-#: errors.c:136
+#: errors.c:129
#, c-format
msgid "abort in %s, at %s:%d"
msgstr "afbrudt i %s ved %s:%d"
-#: except.c:369
+#: except.c:357
msgid "exception handling disabled, use -fexceptions to enable"
msgstr "håndtering af undtagelser er slået fra, angiv -fexceptions for at slå dem til"
-#: except.c:2994
+#: except.c:2942
msgid "argument of `__builtin_eh_return_regno' must be constant"
msgstr "parameteren til '__builtin_eh_return_regno' skal være konstant"
-#: except.c:3137
+#: except.c:3073
msgid "__builtin_eh_return not supported on this target"
msgstr "__builtin_eh_return understøttes ikke på målarkitekturen"
-#: explow.c:1408
+#: explow.c:1327
msgid "stack limits not supported on this target"
msgstr "stakgrænser understøttes ikke på målarkitekturen"
-#: expr.c:3355
+#: expr.c:2965
msgid "function using short complex types cannot be inline"
msgstr "funktioner der benytter short complex-typer, kan ikke indbygges"
-#: expr.c:6272 expr.c:6281 expr.c:6290 expr.c:6295 expr.c:6604 expr.c:6620
-msgid "unsupported wide integer operation"
-msgstr "bred heltalsoperation understøttes ikke"
-
-#: expr.c:6669
-#, c-format
-msgid "prior parameter's size depends on `%s'"
+#: expr.c:6311
+#, fuzzy
+msgid "%Jprior parameter's size depends on '%D'"
msgstr "foregående parameters størrelse afhænger af '%s'"
-#: expr.c:7005
+#: expr.c:6678
msgid "returned value in block_exit_expr"
msgstr "returnerede værdi i block_exit_expr"
#. We can't make a bitwise copy of this object, so fail.
-#: expr.c:9202
+#: expr.c:8823
msgid "cannot take the address of an unaligned member"
msgstr "kan ikke tage adressen af et ikke-justeret medlem"
-#: final.c:1342
+#: final.c:1058
msgid "negative insn length"
msgstr "negativ instruktionslængde"
-#: final.c:2793
+#: final.c:2429
msgid "could not split insn"
msgstr "kunne ikke dele instruktion"
-#: final.c:3141
+#: final.c:2771
msgid "invalid `asm': "
msgstr "ugyldig 'asm': "
-#: final.c:3328
+#: final.c:2954
msgid "nested assembly dialect alternatives"
msgstr "indlejrede alternativer for maskinkodedialekter"
-#: final.c:3345 final.c:3357
+#: final.c:2971 final.c:2983
msgid "unterminated assembly dialect alternative"
msgstr "uafsluttet alternativ for maskinkodedialekt"
-#: final.c:3401
+#: final.c:3027
#, c-format
msgid "operand number missing after %%-letter"
msgstr "operandtal mangler efter %%-letter"
-#: final.c:3404 final.c:3443
+#: final.c:3030 final.c:3069
msgid "operand number out of range"
msgstr "operandtal er uden for det gyldige interval"
-#: final.c:3462
+#: final.c:3088
#, c-format
msgid "invalid %%-code"
msgstr "ugyldig %%-kode"
-#: final.c:3493
+#: final.c:3118
#, c-format
msgid "`%%l' operand isn't a label"
msgstr "'%%l'-operand er ikke en etiket"
#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
-#: final.c:3600 vmsdbgout.c:466 config/i386/i386.c:6314
-#: config/pdp11/pdp11.c:1573
+#. We can't handle floating point constants; PRINT_OPERAND must
+#. handle them.
+#. We can't handle floating point constants;
+#. PRINT_OPERAND must handle them.
+#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6739
+#: config/pdp11/pdp11.c:1646
msgid "floating constant misused"
msgstr "kommatalskonstant misbrugt"
-#: final.c:3656 vmsdbgout.c:523 config/i386/i386.c:6392
-#: config/pdp11/pdp11.c:1620
+#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6817
+#: config/pdp11/pdp11.c:1693
msgid "invalid expression as operand"
msgstr "ugyldigt udtryk som operand"
-#: flow.c:352
+#: flow.c:329
msgid "function might be possible candidate for attribute `noreturn'"
msgstr "funktion er muligvis en kandidat til egenskaben 'noreturn'"
-#: flow.c:357
+#: flow.c:334
msgid "`noreturn' function does return"
msgstr "funktion med egenskaben 'noreturn' returnerer"
# RETMIG: dette må kunne gøres bedre
-#: flow.c:378
+#: flow.c:355
msgid "control reaches end of non-void function"
msgstr "kontrol når til slutningen af ikke-void funktion"
-#: flow.c:1642
+#: flow.c:1582
msgid "Attempt to delete prologue/epilogue insn:"
msgstr "forsøg på at slette indledende/afsluttende instruktion:"
-#: fold-const.c:2546 fold-const.c:2559
+#: fold-const.c:2759 fold-const.c:2772
#, c-format
msgid "comparison is always %d due to width of bit-field"
msgstr "sammenligning er altid %d på grund af den begrænsede rækkevidde af bitfeltet"
-#: fold-const.c:3753 fold-const.c:3770
+#: fold-const.c:3967 fold-const.c:3984
#, c-format
msgid "comparison is always %d"
msgstr "sammenligning er altid %d"
# RETMIG: det giver ikke mening
-#: fold-const.c:3901
+#: fold-const.c:4115
msgid "`or' of unmatched not-equal tests is always 1"
msgstr "'or' af uafbalancerede sammenligninger med forskellig fra er altid 1"
-#: fold-const.c:3906
+#: fold-const.c:4120
msgid "`and' of mutually exclusive equal-tests is always 0"
msgstr "'and' af udtryk der hver for sig udelukker hinanden, er altid 0"
-#: function.c:884 varasm.c:1503
-#, c-format
-msgid "size of variable `%s' is too large"
+#: fold-const.c:8340
+msgid "fold check: original tree changed by fold"
+msgstr ""
+
+#: function.c:884 varasm.c:1408
+#, fuzzy
+msgid "%Jsize of variable '%D' is too large"
msgstr "størrelsen af variablen '%s' er for stor"
-#: function.c:3772
+#: function.c:3737
msgid "impossible constraint in `asm'"
msgstr "umulig begrænsing i 'asm'"
-#: function.c:5527
-#, c-format
-msgid "`%s' might be used uninitialized in this function"
+#: function.c:5697
+#, fuzzy
+msgid "%J'%D' might be used uninitialized in this function"
msgstr "'%s' bliver måske brugt uden at have en startværdi i denne funktion"
-#: function.c:5534
-#, c-format
-msgid "variable `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5704
+#, fuzzy
+msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'"
msgstr "variablen '%s' bliver måske overskrevet af 'longjmp' eller 'vfork'"
-#: function.c:5553
-#, c-format
-msgid "argument `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5723
+#, fuzzy
+msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'"
msgstr "parameteren '%s' bliver måske overskrevet af 'longjmp' eller 'vfork'"
-#: function.c:6420
+#: function.c:6497
msgid "function returns an aggregate"
msgstr "funktion returnerer en værdi af en sammensat type"
-#: function.c:6925
-#, c-format
-msgid "unused parameter `%s'"
+#: function.c:6980
+#, fuzzy
+msgid "%Junused parameter '%D'"
msgstr "ubenyttet parameter '%s'"
-#: gcc.c:1107
+#: gcc.c:1191
#, c-format
msgid "ambiguous abbreviation %s"
msgstr "tvetydig forkortelse %s"
-#: gcc.c:1134
+#: gcc.c:1218
#, c-format
msgid "incomplete `%s' option"
msgstr "ufuldstændigt tilvalg '%s'"
-#: gcc.c:1145
+#: gcc.c:1229
#, c-format
msgid "missing argument to `%s' option"
msgstr "der mangler en parameter til tilvalget '%s'"
-#: gcc.c:1158
+#: gcc.c:1242
#, c-format
msgid "extraneous argument to `%s' option"
msgstr "der er en parameter for meget til tilvalget '%s'"
-#: gcc.c:1486
+#: gcc.c:1563
msgid "Using built-in specs.\n"
msgstr "Benytter indbyggede specifikationer.\n"
-#: gcc.c:1667
+#: gcc.c:1748
#, c-format
msgid ""
"Setting spec %s to '%s'\n"
@@ -5397,42 +5270,42 @@ msgstr ""
"Sætter specifikation %s til '%s'\n"
"\n"
-#: gcc.c:1774
+#: gcc.c:1850
#, c-format
msgid "Reading specs from %s\n"
msgstr "Læser specifikationer fra %s\n"
-#: gcc.c:1872 gcc.c:1891
+#: gcc.c:1946 gcc.c:1965
#, c-format
msgid "specs %%include syntax malformed after %ld characters"
msgstr "%%include-syntaks i specifikationer misdannet efter %ld tegn"
-#: gcc.c:1899
+#: gcc.c:1973
#, c-format
msgid "could not find specs file %s\n"
msgstr "kunne ikke finde specifikationsfilen %s\n"
-#: gcc.c:1916 gcc.c:1924 gcc.c:1933 gcc.c:1942
+#: gcc.c:1990 gcc.c:1998 gcc.c:2007 gcc.c:2016
#, c-format
msgid "specs %%rename syntax malformed after %ld characters"
msgstr "%%rename-syntaks i specifikationer misdannet efter %ld tegn"
-#: gcc.c:1951
+#: gcc.c:2025
#, c-format
msgid "specs %s spec was not found to be renamed"
msgstr "%s-specifikation i specifikationer kunne ikke findes til omdøbelse"
-#: gcc.c:1958
+#: gcc.c:2032
#, c-format
msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
msgstr "%s: forsøg på at omdøbe specifikation '%s' til allerede defineret specifikation '%s'"
-#: gcc.c:1963
+#: gcc.c:2037
#, c-format
msgid "rename spec %s to %s\n"
msgstr "omdøb specifikation %s til %s\n"
-#: gcc.c:1965
+#: gcc.c:2039
#, c-format
msgid ""
"spec is '%s'\n"
@@ -5441,25 +5314,25 @@ msgstr ""
"specifikation er '%s'\n"
"\n"
-#: gcc.c:1978
+#: gcc.c:2052
#, c-format
msgid "specs unknown %% command after %ld characters"
msgstr "ukendt %%-kommando i specifikationer efter %ld tegn"
-#: gcc.c:1989 gcc.c:2002
+#: gcc.c:2063 gcc.c:2076
#, c-format
msgid "specs file malformed after %ld characters"
msgstr "specifikationsfil misdannet efter %ld tegn"
-#: gcc.c:2056
+#: gcc.c:2129
msgid "spec file has no spec for linking"
msgstr "specifikationsfil har ingen specifikation til sammenkædning"
-#: gcc.c:2554
+#: gcc.c:2634
msgid "-pipe not supported"
msgstr "-pipe understøttes ikke"
-#: gcc.c:2609
+#: gcc.c:2696
msgid ""
"\n"
"Go ahead? (y or n) "
@@ -5467,7 +5340,7 @@ msgstr ""
"\n"
"Fortsæt, ja (y) eller nej (n)?"
-#: gcc.c:2735
+#: gcc.c:2822
#, c-format
msgid ""
"Internal error: %s (program %s)\n"
@@ -5478,69 +5351,69 @@ msgstr ""
"Indsend venligst en komplet fejlrapport.\n"
"Se %s for instruktioner."
-#: gcc.c:2753
+#: gcc.c:2840
#, c-format
msgid "# %s %.2f %.2f\n"
msgstr "# %s %.2f %.2f\n"
-#: gcc.c:2883
+#: gcc.c:2973
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr "Brug: %s [tilvalg] fil...\n"
-#: gcc.c:2884
+#: gcc.c:2974
msgid "Options:\n"
msgstr "Tilvalg:\n"
-#: gcc.c:2886
+#: gcc.c:2976
msgid " -pass-exit-codes Exit with highest error code from a phase\n"
msgstr " -pass-exit-codes Afslut med den højeste fejlkode fra en fase\n"
-#: gcc.c:2887
+#: gcc.c:2977
msgid " --help Display this information\n"
msgstr " --help Vis disse oplysninger\n"
-#: gcc.c:2888
+#: gcc.c:2978
msgid " --target-help Display target specific command line options\n"
msgstr " --target-help Vis målspecifikke kommandolinjetilvalg\n"
-#: gcc.c:2890
+#: gcc.c:2980
msgid " (Use '-v --help' to display command line options of sub-processes)\n"
msgstr " (benyt '-v --help' for at vise kommandolinjetilvalg for underprocesser)\n"
-#: gcc.c:2891
+#: gcc.c:2981
msgid " -dumpspecs Display all of the built in spec strings\n"
msgstr " -dumpspecs Vis alle de indbyggede specifikationsstrenge\n"
-#: gcc.c:2892
+#: gcc.c:2982
msgid " -dumpversion Display the version of the compiler\n"
msgstr " -dumpversion Vis versionsnummeret af oversætteren\n"
-#: gcc.c:2893
+#: gcc.c:2983
msgid " -dumpmachine Display the compiler's target processor\n"
msgstr " -dumpmachine Vis oversætterens målprocessor\n"
-#: gcc.c:2894
+#: gcc.c:2984
msgid " -print-search-dirs Display the directories in the compiler's search path\n"
msgstr " -print-search-dirs Vis katalogerne i oversætterens søgesti\n"
-#: gcc.c:2895
+#: gcc.c:2985
msgid " -print-libgcc-file-name Display the name of the compiler's companion library\n"
msgstr " -print-libgcc-file-name Vis navnet på oversætterens tilhørende bibliotek\n"
-#: gcc.c:2896
+#: gcc.c:2986
msgid " -print-file-name=<lib> Display the full path to library <lib>\n"
msgstr " -print-file-name=<bibl> Vis den komplette sti til biblioteket <bibl>\n"
-#: gcc.c:2897
+#: gcc.c:2987
msgid " -print-prog-name=<prog> Display the full path to compiler component <prog>\n"
msgstr " -print-prog-name=<prog> Vis den komplette sti til oversætterkomponenten <prog>\n"
-#: gcc.c:2898
+#: gcc.c:2988
msgid " -print-multi-directory Display the root directory for versions of libgcc\n"
msgstr " -print-multi-directory Vis rodkataloget for versioner af libgcc\n"
-#: gcc.c:2899
+#: gcc.c:2989
msgid ""
" -print-multi-lib Display the mapping between command line options and\n"
" multiple library search directories\n"
@@ -5548,85 +5421,95 @@ msgstr ""
" -print-multi-lib Vis afbildningen mellem kommandolinjetilvalg og\n"
" flere bibliotekssøgekataloger\n"
-#: gcc.c:2902
+#: gcc.c:2992
msgid " -print-multi-os-directory Display the relative path to OS libraries\n"
msgstr " -print-multi-os-directory Vis den relative sti for OS-biblioteker\n"
-#: gcc.c:2903
+#: gcc.c:2993
msgid " -Wa,<options> Pass comma-separated <options> on to the assembler\n"
msgstr " -Wa,<tilvalg> Videregiv komma-adskilte <tilvalg> til maskinkodeoversætteren\n"
-#: gcc.c:2904
+#: gcc.c:2994
msgid " -Wp,<options> Pass comma-separated <options> on to the preprocessor\n"
msgstr " -Wp,<tilvalg> Videregiv komma-adskilte <tilvalg> til præprocessoren\n"
-#: gcc.c:2905
+#: gcc.c:2995
msgid " -Wl,<options> Pass comma-separated <options> on to the linker\n"
msgstr " -Wl,<tilvalg> Videregiv komma-adskilte <tilvalg> til sammenkæderen\n"
-#: gcc.c:2906
+#: gcc.c:2996
+#, fuzzy
+msgid " -Xassembler <arg> Pass <arg> on to the assembler\n"
+msgstr " -Xlinker <para> Videregiv <para> til sammenkæderen\n"
+
+#: gcc.c:2997
+#, fuzzy
+msgid " -Xpreprocessor <arg> Pass <arg> on to the preprocessor\n"
+msgstr " -Xlinker <para> Videregiv <para> til sammenkæderen\n"
+
+#: gcc.c:2998
msgid " -Xlinker <arg> Pass <arg> on to the linker\n"
msgstr " -Xlinker <para> Videregiv <para> til sammenkæderen\n"
-#: gcc.c:2907
+#: gcc.c:2999
msgid " -save-temps Do not delete intermediate files\n"
msgstr " -save-temps Slet ikke midlertidige filer\n"
-#: gcc.c:2908
+#: gcc.c:3000
msgid " -pipe Use pipes rather than intermediate files\n"
msgstr " -pipe Brug datakanaler i stedet for midlertidige filer\n"
-#: gcc.c:2909
+#: gcc.c:3001
msgid " -time Time the execution of each subprocess\n"
msgstr " -time Tag tid på udførslen af hver underproces\n"
-#: gcc.c:2910
+#: gcc.c:3002
msgid " -specs=<file> Override built-in specs with the contents of <file>\n"
msgstr " -specs=<fil> Overskriv indbyggede specifikationer med indholdet af <fil>\n"
-#: gcc.c:2911
+#: gcc.c:3003
msgid " -std=<standard> Assume that the input sources are for <standard>\n"
msgstr " -std=<standard> Antag at inddatakildekoden er skrevet til <standard>\n"
-#: gcc.c:2912
+#: gcc.c:3004
msgid " -B <directory> Add <directory> to the compiler's search paths\n"
msgstr " -B <katalog> Tilføj katalog til oversætterens søgestier\n"
-#: gcc.c:2913
+#: gcc.c:3005
msgid " -b <machine> Run gcc for target <machine>, if installed\n"
msgstr " -b <maskine> Kør GCC til målet <maskine>, hvis installeret\n"
-#: gcc.c:2914
+#: gcc.c:3006
msgid " -V <version> Run gcc version number <version>, if installed\n"
msgstr " -V <version> Kør GCC med versionsnummeret <version>, hvis installeret\n"
-#: gcc.c:2915
+#: gcc.c:3007
msgid " -v Display the programs invoked by the compiler\n"
msgstr " -v Vis de programmer der startes af oversætteren\n"
-#: gcc.c:2916
+#: gcc.c:3008
msgid " -### Like -v but options quoted and commands not executed\n"
msgstr ""
" -### Som '-v', men tilvalg anbringes i anførselstegn\n"
" og kommandoerne udføres ikke\n"
-#: gcc.c:2917
+#: gcc.c:3009
msgid " -E Preprocess only; do not compile, assemble or link\n"
msgstr " -E Forbehandl kun; oversæt og sammenkæd ikke\n"
-#: gcc.c:2918
+#: gcc.c:3010
msgid " -S Compile only; do not assemble or link\n"
msgstr " -S Oversæt kun; maskinekodeoversæt og sammenkæd ikke\n"
-#: gcc.c:2919
+#: gcc.c:3011
msgid " -c Compile and assemble, but do not link\n"
msgstr " -c Oversæt, også til maskinkode, men sammenkæd ikke\n"
-#: gcc.c:2920
+#: gcc.c:3012
msgid " -o <file> Place the output into <file>\n"
msgstr " -o <fil> Anbring uddataene i <fil>\n"
-#: gcc.c:2921
+#: gcc.c:3013
msgid ""
" -x <language> Specify the language of the following input files\n"
" Permissible languages include: c c++ assembler none\n"
@@ -5638,7 +5521,7 @@ msgstr ""
" 'none' betyder at standardopførslen med at gætte\n"
" sproget på filendelsen udføres\n"
-#: gcc.c:2928
+#: gcc.c:3020
#, c-format
msgid ""
"\n"
@@ -5652,27 +5535,23 @@ msgstr ""
" videregive andre indstillinger til disse processer kan tilvalg på formen\n"
" '-W<bogstav>' bruges.\n"
-#: gcc.c:3063
+#: gcc.c:3141
#, c-format
msgid "`-%c' option must have argument"
msgstr "tilvalget '-%c' skal have en parameter"
-#: gcc.c:3085
+#: gcc.c:3163
#, c-format
msgid "couldn't run `%s': %s"
msgstr "kunne ikke køre '%s': %s"
#. translate_options () has turned --version into -fversion.
-#: gcc.c:3262
+#: gcc.c:3349
#, c-format
msgid "%s (GCC) %s\n"
msgstr "%s (GCC) %s\n"
-#: gcc.c:3263
-msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
-msgstr "Copyright © 2003 Free Software Foundation, Inc.\n"
-
-#: gcc.c:3265 gcov.c:364
+#: gcc.c:3352
msgid ""
"This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
@@ -5681,62 +5560,68 @@ msgstr ""
"Dette er et frit program; se kildekoden for kopieringsbetingelser. Der er\n"
"INGEN garanti; ikke engang for SALGBARHED eller BRUGBARHED TIL NOGET FORMÅL.\n"
-#: gcc.c:3366
+#: gcc.c:3453
msgid "argument to `-Xlinker' is missing"
msgstr "der mangler en parameter til '-Xlinker'"
-#: gcc.c:3374
+#: gcc.c:3461
+#, fuzzy
+msgid "argument to `-Xpreprocessor' is missing"
+msgstr "der mangler en parameter til '-specs'"
+
+#: gcc.c:3468
+#, fuzzy
+msgid "argument to `-Xassembler' is missing"
+msgstr "der mangler en parameter til '-Xlinker'"
+
+#: gcc.c:3475
msgid "argument to `-l' is missing"
msgstr "der mangler en parameter til '-l'"
-#: gcc.c:3391
+#: gcc.c:3491
msgid "argument to `-specs' is missing"
msgstr "der mangler en parameter til '-specs'"
-#: gcc.c:3406
+#: gcc.c:3505
msgid "argument to `-specs=' is missing"
msgstr "der mangler en parameter til '-specs='"
-#: gcc.c:3436
+#: gcc.c:3542
#, c-format
msgid "`-%c' must come at the start of the command line"
msgstr "'-%c' skal være i begyndelsen af kommandolinjen"
-#: gcc.c:3445
+#: gcc.c:3551
msgid "argument to `-B' is missing"
msgstr "der mangler en parameter til '-B'"
-#: gcc.c:3618
-msgid "cannot specify -o with -c or -S and multiple compilations"
-msgstr "kan ikke angive -o med -c eller -S og flere oversættelser"
-
-#: gcc.c:3791
+#: gcc.c:3728
msgid "warning: -pipe ignored because -save-temps specified"
msgstr "advarsel: -pipe ignoreret fordi -save-temps er angivet"
-#: gcc.c:3795
+#: gcc.c:3732
msgid "warning: -pipe ignored because -time specified"
msgstr "advarsel: -pipe ignoreret fordi -time er angivet"
-#: gcc.c:3807
+#: gcc.c:3944
msgid "argument to `-x' is missing"
msgstr "der mangler en parameter til '-x'"
-#: gcc.c:3835
+#: gcc.c:3972
#, c-format
msgid "argument to `-%s' is missing"
msgstr "der mangler en parameter til '-%s'"
-#: gcc.c:3896
+#: gcc.c:4033
#, c-format
msgid "warning: `-x %s' after last input file has no effect"
msgstr "advarsel: '-x %s' efter den sidste inddatafil har ingen effekt"
-#: gcc.c:4241
+#: gcc.c:4434
msgid "invalid specification! Bug in cc"
msgstr "ugyldig specifikation! Fejl i cc."
-#: gcc.c:4395
+#: gcc.c:4588
#, c-format
msgid "%s\n"
msgstr "%s\n"
@@ -5744,74 +5629,79 @@ msgstr "%s\n"
#. Catch the case where a spec string contains something like
#. '%{foo:%*}'. ie there is no * in the pattern on the left
#. hand side of the :.
-#: gcc.c:4955
+#: gcc.c:5092
#, c-format
msgid "spec failure: '%%*' has not been initialized by pattern match"
msgstr "specifikationsfejl: '%%*' er ikke blevet klargjort af mønstersøgning"
-#: gcc.c:4964
+#: gcc.c:5101
#, c-format
msgid "warning: use of obsolete %%[ operator in specs"
msgstr "advarsel: forældet '%%['-operator benyttet i specifikationer"
-#: gcc.c:4982
+#: gcc.c:5119
#, c-format
msgid "Processing spec %c%s%c, which is '%s'\n"
msgstr "Behandler specifikation %c%s%c, som er '%s'\n"
-#: gcc.c:5107
+#: gcc.c:5182
#, c-format
msgid "spec failure: unrecognized spec option '%c'"
msgstr "specifikationsfejl: ukendt specifikationstilvalg '%c'"
-#: gcc.c:5188
+#: gcc.c:5261
#, c-format
msgid "unknown spec function `%s'"
msgstr "ukendt specifikationsfunktion '%s'"
-#: gcc.c:5207
+#: gcc.c:5280
#, c-format
msgid "error in args to spec function `%s'"
msgstr "fejl i parametre til specifikationsfunktion '%s'"
-#: gcc.c:5256
+#: gcc.c:5328
msgid "malformed spec function name"
msgstr "forkert udformet specifikationsfunktionsnavn"
#. )
-#: gcc.c:5259
+#: gcc.c:5331
msgid "no arguments for spec function"
msgstr "ingen parametre til specifikationsfunktion"
-#: gcc.c:5278
+#: gcc.c:5350
msgid "malformed spec function arguments"
msgstr "forkert udformede specifikationsfunktionsparametre"
-#: gcc.c:5386
-msgid "mismatched braces in specs"
-msgstr "uafbalancerede krøllede paranteser i specifikationer"
+#: gcc.c:6076
+msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC."
+msgstr ""
+
+#: gcc.c:6086
+msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC."
+msgstr ""
-#: gcc.c:6081
+#: gcc.c:6179
#, c-format
msgid "unrecognized option `-%s'"
msgstr "ukendt tilvalg '-%s'"
-#: gcc.c:6087
+#: gcc.c:6185
#, c-format
msgid "install: %s%s\n"
msgstr "installering: %s%s\n"
-#: gcc.c:6088
+#: gcc.c:6186
#, c-format
msgid "programs: %s\n"
msgstr "programmer: %s\n"
-#: gcc.c:6089
+#: gcc.c:6187
#, c-format
msgid "libraries: %s\n"
msgstr "biblioteker: %s\n"
-#: gcc.c:6146
+#: gcc.c:6244
+#, c-format
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
@@ -5819,54 +5709,59 @@ msgstr ""
"\n"
"For fejlrapporteringsinstruktioner, se:\n"
-#: gcc.c:6162
+#: gcc.c:6260
#, c-format
msgid "Configured with: %s\n"
msgstr "Konfigureret med: %s\n"
-#: gcc.c:6176
+#: gcc.c:6274
#, c-format
msgid "Thread model: %s\n"
msgstr "Trådmodel: %s\n"
-#: gcc.c:6187
+#: gcc.c:6285
#, c-format
msgid "gcc version %s\n"
msgstr "GCC version %s\n"
-#: gcc.c:6189
+#: gcc.c:6287
#, c-format
msgid "gcc driver version %s executing gcc version %s\n"
msgstr "GCC-styringsprogram version %s kører GCCc version %s\n"
-#: gcc.c:6197
+#: gcc.c:6295
msgid "no input files"
msgstr "ingen inddatafiler"
-#: gcc.c:6235
-#, c-format
-msgid "%s: %s compiler not installed on this system"
-msgstr "%s: %s-oversætter ikke installeret på dette system"
-
-#: gcc.c:6310
+#: gcc.c:6317 gcc.c:6436
#, c-format
msgid "%s: linker input file unused because linking not done"
msgstr "%s: sammenkæderinddatafil ikke benyttet eftersom sammenkædning ikke blev foretaget"
-#: gcc.c:6353
+#: gcc.c:6320
+#, fuzzy
+msgid "cannot specify -o with -c or -S and multiple languages"
+msgstr "kan ikke angive -o med -c eller -S og flere oversættelser"
+
+#: gcc.c:6355
+#, c-format
+msgid "%s: %s compiler not installed on this system"
+msgstr "%s: %s-oversætter ikke installeret på dette system"
+
+#: gcc.c:6476
#, c-format
msgid "language %s not recognized"
msgstr "sproget %s ikke genkendt"
-#: gcc.c:6456
+#: gcc.c:6573
msgid "internal gcc abort"
msgstr "intern GCC-afbrydelse"
-#: gcov.c:325
+#: gcov.c:384
msgid "Internal gcov abort.\n"
msgstr "Intern gcov afbrydelse.\n"
-#: gcov.c:338
+#: gcov.c:397
msgid ""
"Usage: gcov [OPTION]... SOURCEFILE\n"
"\n"
@@ -5874,7 +5769,7 @@ msgstr ""
"Brug: gcov [TILVALG]... KILDEFIL\n"
"\n"
-#: gcov.c:339
+#: gcov.c:398
msgid ""
"Print code coverage information.\n"
"\n"
@@ -5882,47 +5777,55 @@ msgstr ""
"Udskriv kodedækningsoplysninger.\n"
"\n"
-#: gcov.c:340
+#: gcov.c:399
msgid " -h, --help Print this help, then exit\n"
msgstr " -h, --help Udskriv denne hjælp og afslut\n"
-#: gcov.c:341
+#: gcov.c:400
msgid " -v, --version Print version number, then exit\n"
msgstr " -v, --version Udskriv versionsnummeret og afslut\n"
-#: gcov.c:342
+#: gcov.c:401
+msgid " -a, --all-blocks Show information for every basic block\n"
+msgstr ""
+
+#: gcov.c:402
msgid " -b, --branch-probabilities Include branch probabilities in output\n"
msgstr " -b, --branch-probabilities Medtag forgreningssandsynligheder i uddata\n"
-#: gcov.c:343
+#: gcov.c:403
msgid ""
" -c, --branch-counts Given counts of branches taken\n"
" rather than percentages\n"
msgstr " -c, --branch-counts Antal forgreninger taget i stedet for procenter\n"
-#: gcov.c:345
+#: gcov.c:405
msgid " -n, --no-output Do not create an output file\n"
msgstr " -n, --no-output Opret ikke en uddatafil\n"
-#: gcov.c:346
+#: gcov.c:406
msgid ""
" -l, --long-file-names Use long output file names for included\n"
" source files\n"
msgstr " -l, --long-file-names Brug lange filnavne til inkluderede kildefiler\n"
-#: gcov.c:348
+#: gcov.c:408
msgid " -f, --function-summaries Output summaries for each function\n"
msgstr " -f, --function-summaries Udskriv sammendrag for hver funktion\n"
-#: gcov.c:349
+#: gcov.c:409
msgid " -o, --object-directory DIR|FILE Search for object files in DIR or called FILE\n"
msgstr " -o, --object-directory KAT|FIL Søg efter objektfiler i KAT eller kaldt FIL\n"
-#: gcov.c:350
+#: gcov.c:410
msgid " -p, --preserve-paths Preserve all pathname components\n"
msgstr " -p, --preserve-paths Bevar alle stinavnskomponenter\n"
-#: gcov.c:351
+#: gcov.c:411
+msgid " -u, --unconditional-branches Show unconditional branch counts too\n"
+msgstr ""
+
+#: gcov.c:412
#, c-format
msgid ""
"\n"
@@ -5933,399 +5836,291 @@ msgstr ""
"For fejlrapporteringsinstruktioner, se:\n"
"%s.\n"
-#: gcov.c:361
+#: gcov.c:422
#, c-format
msgid "gcov (GCC) %s\n"
msgstr "gcov (GCC) %s\n"
-#: gcov.c:362
-msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
-msgstr "Copyright © 2001 Free Software Foundation, Inc.\n"
-
-#: gcov.c:500
-#, c-format
-msgid "Could not open basic block file %s.\n"
-msgstr "Kunne ikke åbne basisblokfilen %s.\n"
-
-#: gcov.c:507
-#, c-format
-msgid "Could not open program flow graph file %s.\n"
-msgstr "Kunne ikke åbne programstrømsgraffilen %s.\n"
-
-#: gcov.c:524
-#, c-format
-msgid "Could not open data file %s.\n"
-msgstr "Kunne ikke åbne datafilen %s.\n"
-
-#: gcov.c:525
-msgid "Assuming that all execution counts are zero.\n"
-msgstr "Antager at alle kørselstællere er nul.\n"
-
-#: gcov.c:534
-#, c-format
-msgid "No executable code associated with file %s.\n"
-msgstr "Ingen kørbar kode associeret med filen %s.\n"
-
-#: gcov.c:1186
-#, c-format
-msgid "%s of %d lines executed in %s %s\n"
-msgstr "%s af %d linjer udført i %s %s\n"
-
-#: gcov.c:1191
-#, c-format
-msgid "No executable lines in %s %s\n"
-msgstr "Ingen kørbare linjer i %s %s\n"
-
-#: gcov.c:1198
-#, c-format
-msgid "%s of %d branches executed in %s %s\n"
-msgstr "%s af %d forgreninger udført i %s %s\n"
-
-#: gcov.c:1203
-#, c-format
-msgid "%s of %d branches taken at least once in %s %s\n"
-msgstr "%s af %d forgreninger valgt mindst én gang i %s %s\n"
-
-#: gcov.c:1209
-#, c-format
-msgid "No branches in %s %s\n"
-msgstr "Ingen forgreninger i %s %s\n"
-
-#: gcov.c:1211
-#, c-format
-msgid "%s of %d calls executed in %s %s\n"
-msgstr "%s af %d kald udført i %s %s\n"
-
-#: gcov.c:1216
-#, c-format
-msgid "No calls in %s %s\n"
-msgstr "Ingen kald i %s %s\n"
-
-#: gcov.c:1351
-#, c-format
-msgid "didn't use all bb entries of graph, function %s\n"
-msgstr "brugte ikke alle grafens basisblokelementer, funktion %s\n"
-
-#: gcov.c:1353
-#, c-format
-msgid "block_num = %ld, num_blocks = %d\n"
-msgstr "block_num = %ld, num_blocks = %d\n"
-
-#: gcov.c:1367
-#, c-format
-msgid "ERROR: unexpected line number %ld\n"
-msgstr "Fejl: uventet linjenummer %ld\n"
-
-#: gcov.c:1383
-#, c-format
-msgid "ERROR: too many basic blocks in function %s\n"
-msgstr "Fejl: for mange basisblokke i funktionen %s\n"
-
-#: gcov.c:1398
-#, c-format
-msgid "ERROR: out of range line number in function %s\n"
-msgstr "Fejl: linjenummer uden for det gyldige interval i funktionen %s\n"
-
-#: gcov.c:1470
-#, c-format
-msgid "Could not open source file %s.\n"
-msgstr "Kunne ikke åbne kildefilen %s.\n"
-
-#: gcov.c:1480
-#, c-format
-msgid "Warning: source file %s is newer than %s\n"
-msgstr "Advarsel: kildefil %s er nyere end %s\n"
-
-#: gcov.c:1510
-#, c-format
-msgid "Unexpected EOF while reading source file %s.\n"
-msgstr "Stødt på slutningen af kildefilen %s tidligere end forventet.\n"
-
-#: gcov.c:1532
-#, c-format
-msgid "call %2d never executed\n"
-msgstr "kald %2d aldrig udført\n"
+#: gcov.c:423
+msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
+msgstr "Copyright © 2003 Free Software Foundation, Inc.\n"
-#: gcov.c:1535
-#, c-format
-msgid "call %2d returns %s\n"
-msgstr "kald %2d returnerer %s\n"
+#: gcov.c:425
+#, fuzzy
+msgid ""
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or \n"
+"FITNESS FOR A PARTICULAR PURPOSE.\n"
+"\n"
+msgstr ""
+"Dette er et frit program; se kildekoden for kopieringsbetingelser. Der er\n"
+"INGEN garanti; ikke engang for SALGBARHED eller BRUGBARHED TIL NOGET FORMÅL.\n"
-#: gcov.c:1543
-#, c-format
-msgid "branch %2d never executed\n"
-msgstr "forgrening %2d aldrig udført\n"
+#: gcov.c:515
+#, fuzzy, c-format
+msgid "%s:no functions found\n"
+msgstr "ingen cmd_strings fundet"
-#: gcov.c:1546
-#, c-format
-msgid "branch %2d taken %s\n"
-msgstr "forgrening %2d valgt %s\n"
+#: gcov.c:536 gcov.c:564
+#, fuzzy
+msgid "\n"
+msgstr ":\n"
-#: gcov.c:1610
-#, c-format
-msgid "Creating %s.\n"
-msgstr "Opretter %s.\n"
+#: gcov.c:551
+#, fuzzy, c-format
+msgid "%s:creating `%s'\n"
+msgstr "opretter %s"
-#: gcov.c:1613
-#, c-format
-msgid "Error writing output file %s.\n"
+#: gcov.c:555
+#, fuzzy, c-format
+msgid "%s:error writing output file `%s'\n"
msgstr "Fejl ved skrivning af uddatafilen %s.\n"
-#: gcov.c:1618
-#, c-format
-msgid "Could not open output file %s.\n"
+#: gcov.c:560
+#, fuzzy, c-format
+msgid "%s:could not open output file `%s'\n"
msgstr "Kunne ikke åbne uddatafilen %s.\n"
-#: gcse.c:763
-#, c-format
-msgid "GCSE disabled: %d > 1000 basic blocks and %d >= 20 edges/basic block"
-msgstr "GCSE deaktiveret: %d > 1000 basisblokke og %d >= 20 kanter/basisblok"
-
-#: gcse.c:775
-#, c-format
-msgid "GCSE disabled: %d basic blocks and %d registers"
-msgstr "GCSE deaktiveret: %d basisblokke og %d registre"
-
-#: genautomata.c:1490
-#, c-format
-msgid "Name `%s' contains quotes"
-msgstr "Navnet '%s' indeholder citationstegn"
-
-#: genautomata.c:1621
-#, c-format
-msgid "invalid string `%s' in define_cpu_unit"
-msgstr "ugyldig streng '%s' i define_cpu_unit"
-
-#: genautomata.c:1650
-#, c-format
-msgid "invalid string `%s' in define_query_cpu_unit"
-msgstr "ugyldig streng '%s' i define_query_cpu_unit"
+#: gcov.c:711
+#, fuzzy, c-format
+msgid "%s:cannot open graph file\n"
+msgstr "%s: kan ikke åbnes som en COFF-fil"
-#: genautomata.c:1682 genautomata.c:1685
-#, c-format
-msgid "invalid string `%s' in define_bypass"
-msgstr "ugyldig streng '%s' i define_bypass"
+#: gcov.c:717
+#, fuzzy, c-format
+msgid "%s:not a gcov graph file\n"
+msgstr "%s: ikke en COFF-fil"
-#: genautomata.c:1720
+#: gcov.c:730
#, c-format
-msgid "invalid first string `%s' in exclusion_set"
-msgstr "ugyldig første streng '%s' i exclusion_set"
+msgid "%s:version `%.4s', prefer `%.4s'\n"
+msgstr ""
-#: genautomata.c:1724
+#: gcov.c:782
#, c-format
-msgid "invalid second string `%s' in exclusion_set"
-msgstr "ugyldig anden streng '%s' i exclusion_set"
+msgid "%s:already seen blocks for `%s'\n"
+msgstr ""
-#: genautomata.c:1760
+#: gcov.c:903 gcov.c:1062
#, c-format
-msgid "invalid first string `%s' in presence_set"
-msgstr "ugyldig første streng '%s' i presence_set"
+msgid "%s:corrupted\n"
+msgstr ""
-#: genautomata.c:1764
-#, c-format
-msgid "invalid second string `%s' in presence_set"
-msgstr "ugyldig anden streng '%s' i presence_set"
+#: gcov.c:976
+#, fuzzy, c-format
+msgid "%s:cannot open data file\n"
+msgstr "%s: kan ikke åbnes som en COFF-fil"
-#: genautomata.c:1800
-#, c-format
-msgid "invalid first string `%s' in absence_set"
-msgstr "ugyldig første streng '%s' i absence_set"
+#: gcov.c:981
+#, fuzzy, c-format
+msgid "%s:not a gcov data file\n"
+msgstr "%s: ikke en COFF-fil"
-#: genautomata.c:1804
+#: gcov.c:994
#, c-format
-msgid "invalid second string `%s' in absence_set"
-msgstr "ugyldig anden streng '%s' i absence_set"
+msgid "%s:version `%.4s', prefer version `%.4s'\n"
+msgstr ""
-#: genautomata.c:1837
+#: gcov.c:1000
#, c-format
-msgid "invalid string `%s' in define_automaton"
-msgstr "ugyldig streng '%s' i define_automaton"
+msgid "%s:stamp mismatch with graph file\n"
+msgstr ""
-#: genautomata.c:1868
-#, c-format
-msgid "invalid option `%s' in automata_option"
-msgstr "ugyldigt tilvalg '%s' i automata_option"
+#: gcov.c:1026
+#, fuzzy, c-format
+msgid "%s:unknown function `%u'\n"
+msgstr "ukendt specifikationsfunktion '%s'"
-#: genautomata.c:1890
+#: gcov.c:1039
#, c-format
-msgid "garbage after ) in reservation `%s'"
-msgstr "ragelse efter ) i reservering '%s'"
+msgid "%s:profile mismatch for `%s'\n"
+msgstr ""
-#: genautomata.c:1921 genautomata.c:1954 genautomata.c:1981
-#, c-format
-msgid "invalid `%s' in reservation `%s'"
-msgstr "ugyldig '%s' i reservering '%s'"
+#: gcov.c:1062
+#, fuzzy, c-format
+msgid "%s:overflowed\n"
+msgstr "%s: overløbsintervalfejl"
-#: genautomata.c:1932
+#: gcov.c:1085
#, c-format
-msgid "repetition `%s' <= 1 in reservation `%s'"
-msgstr "gentagelse '%s' <= 1 i reservering '%s'"
+msgid "%s:`%s' lacks entry and/or exit blocks\n"
+msgstr ""
-#: genautomata.c:2425
+#: gcov.c:1090
#, c-format
-msgid "unit `%s' in exclusion is not declared"
-msgstr "enhed '%s' i ekskludering er ikke erklæret"
+msgid "%s:`%s' has arcs to entry block\n"
+msgstr ""
-#: genautomata.c:2427
+#: gcov.c:1098
#, c-format
-msgid "`%s' in exclusion is not unit"
-msgstr "'%s' i ekskludering er ikke enhed"
+msgid "%s:`%s' has arcs from exit block\n"
+msgstr ""
-#: genautomata.c:2465
+#: gcov.c:1306
#, c-format
-msgid "unit `%s' excludes itself"
-msgstr "enheden '%s' ekskluderer sig selv"
+msgid "%s:graph is unsolvable for `%s'\n"
+msgstr ""
-#: genautomata.c:2473
-#, c-format
-msgid "units `%s' and `%s' in exclusion set belong to different automata"
-msgstr "enhederne '%s' og '%s' i ekskluderingsmængde tilhører forskellige automater"
+#: gcov.c:1386
+#, fuzzy, c-format
+msgid "%s `%s'\n"
+msgstr "I %s '%s':"
-#: genautomata.c:2603 genautomata.c:2609
-#, c-format
-msgid "unit `%s' excludes and requires presence of `%s'"
-msgstr "enheden '%s' ekskluderer og kræver tilstedeværelse af '%s'"
+#: gcov.c:1389
+#, fuzzy, c-format
+msgid "Lines executed:%s of %d\n"
+msgstr "%s af %d linjer udført i %s %s\n"
-#: genautomata.c:2623 genautomata.c:2629
-#, c-format
-msgid "unit `%s' requires absence and presence of `%s'"
-msgstr "enheden '%s' kræver tilstedeværelse og fravær af '%s'"
+#: gcov.c:1393
+#, fuzzy
+msgid "No executable lines"
+msgstr "Ingen kørbare linjer i %s %s\n"
-#: genautomata.c:2692 genautomata.c:2695
-#, c-format
-msgid "repeated declaration of automaton `%s'"
-msgstr "gentaget erklæring af automaten '%s'"
+#: gcov.c:1399
+#, fuzzy, c-format
+msgid "Branches executed:%s of %d\n"
+msgstr "%s af %d forgreninger udført i %s %s\n"
-#: genautomata.c:2711
-#, c-format
-msgid "define_insn_reservation `%s' has negative latency time"
-msgstr "define_insn_reservation '%s' har negativ ventetid"
+#: gcov.c:1403
+#, fuzzy, c-format
+msgid "Taken at least once:%s of %d\n"
+msgstr "%s af %d forgreninger valgt mindst én gang i %s %s\n"
-#: genautomata.c:2717
-#, c-format
-msgid "`%s' is already used as insn reservation name"
-msgstr "`%s' bliver allerede benyttet som instruktionsreserveringsnavn"
+#: gcov.c:1409
+#, fuzzy
+msgid "No branches\n"
+msgstr "Ingen forgreninger i %s %s\n"
-#: genautomata.c:2723
-#, c-format
-msgid "define_bypass `%s - %s' has negative latency time"
-msgstr "define_bypass '%s - %s' har negativ ventetid"
+#: gcov.c:1411
+#, fuzzy, c-format
+msgid "Calls executed:%s of %d\n"
+msgstr "%s af %d kald udført i %s %s\n"
-#: genautomata.c:2737
-#, c-format
-msgid "automaton `%s' is not declared"
-msgstr "automaten '%s' er ikke erklæret"
+#: gcov.c:1415
+#, fuzzy
+msgid "No calls\n"
+msgstr "Ingen kald i %s %s\n"
-#: genautomata.c:2747
-#, c-format
-msgid "define_unit `%s' without automaton when one defined"
-msgstr "define_unit '%s' uden automat når en er defineret"
+#: gcov.c:1556
+#, fuzzy, c-format
+msgid "%s:no lines for `%s'\n"
+msgstr "%s før '%s'"
-#: genautomata.c:2753
-#, c-format
-msgid "`%s' is declared as cpu unit"
-msgstr "'%s' er erklæret som CPU-enhed"
+#: gcov.c:1751
+#, fuzzy, c-format
+msgid "call %2d returned %s\n"
+msgstr "kald %2d returnerer %s\n"
-#: genautomata.c:2762
+#: gcov.c:1756
#, c-format
-msgid "`%s' is declared as cpu reservation"
-msgstr "'%s' er erklæret som CPU-reservering"
+msgid "call %2d never executed\n"
+msgstr "kald %2d aldrig udført\n"
-#: genautomata.c:2772
-#, c-format
-msgid "repeated declaration of unit `%s'"
-msgstr "gentaget erklæring af enheden '%s'"
+#: gcov.c:1761
+#, fuzzy, c-format
+msgid "branch %2d taken %s%s\n"
+msgstr "forgrening %2d valgt %s\n"
-#: genautomata.c:2775
+#: gcov.c:1765
#, c-format
-msgid "repeated declaration of reservation `%s'"
-msgstr "gentaget erklæring af reserveringen '%s'"
+msgid "branch %2d never executed\n"
+msgstr "forgrening %2d aldrig udført\n"
-#: genautomata.c:2790 genautomata.c:2793
-#, c-format
-msgid "there is no insn reservation `%s'"
-msgstr "der er ingen instruktionsreservering '%s'"
+#: gcov.c:1770
+#, fuzzy, c-format
+msgid "unconditional %2d taken %s\n"
+msgstr "forgrening %2d valgt %s\n"
-#: genautomata.c:2810 genautomata.c:2815
-#, c-format
-msgid "the same bypass `%s - %s' is already defined"
-msgstr "den samme videreledning '%s - %s' er allerede defineret"
+#: gcov.c:1773
+#, fuzzy, c-format
+msgid "unconditional %2d never executed\n"
+msgstr "kald %2d aldrig udført\n"
-#: genautomata.c:2820
-#, c-format
-msgid "bypass `%s - %s' is already defined"
-msgstr "videreledning '%s - %s' er allerede defineret"
+#: gcov.c:1805
+#, fuzzy, c-format
+msgid "%s:cannot open source file\n"
+msgstr "%s: kan ikke åbnes som en COFF-fil"
-#: genautomata.c:2925 genautomata.c:2927
-#, c-format
-msgid "automaton `%s' is not used"
-msgstr "automat '%s' bliver ikke benyttet"
+#: gcov.c:1815
+#, fuzzy, c-format
+msgid "%s:source file is newer than graph file `%s'\n"
+msgstr "Advarsel: kildefil %s er nyere end %s\n"
-#: genautomata.c:2950
-#, c-format
-msgid "undeclared unit or reservation `%s'"
-msgstr "ikke-erklæret enhed eller reservering '%s'"
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:747
+msgid "GCSE disabled"
+msgstr ""
-#: genautomata.c:3028 genautomata.c:3030
-#, c-format
-msgid "unit `%s' is not used"
-msgstr "enhed '%s' bliver ikke benyttet"
+#: gcse.c:6108
+msgid "NULL pointer checks disabled"
+msgstr ""
-#: genautomata.c:3035 genautomata.c:3037
-#, c-format
-msgid "reservation `%s' is not used"
-msgstr "reservering '%s' bliver ikke benyttet"
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:7994
+#, fuzzy
+msgid "jump bypassing disabled"
+msgstr "tilvalget -g deaktiveret"
-#: genautomata.c:3134
-#, c-format
-msgid "cycle in definition of reservation `%s'"
-msgstr "cyklus i definering af reservering '%s'"
+#: gcse.c:8055
+#, fuzzy, c-format
+msgid "%s: %d basic blocks and %d edges/basic block"
+msgstr "GCSE deaktiveret: %d > 1000 basisblokke og %d >= 20 kanter/basisblok"
-#: genautomata.c:5333
-#, c-format
-msgid "Units `%s' and `%s' should be in the same automaton"
-msgstr "Enhederne '%s' og '%s' skal være i den samme automat"
+#: gcse.c:8068
+#, fuzzy, c-format
+msgid "%s: %d basic blocks and %d registers"
+msgstr "GCSE deaktiveret: %d basisblokke og %d registre"
-#: genautomata.c:9441
-msgid "-split has no argument."
-msgstr "-split uden parametre"
+#: ggc-common.c:398 ggc-common.c:406 ggc-common.c:487 ggc-common.c:507
+#: ggc-page.c:2030 ggc-page.c:2062 ggc-page.c:2069 ggc-zone.c:1361
+#: ggc-zone.c:1367 ggc-zone.c:1372 ggc-zone.c:1379
+#, fuzzy, c-format
+msgid "can't write PCH file: %m"
+msgstr "kan ikke skrive i uddatafil"
-#: genautomata.c:9442
-msgid "option `-split' has not been implemented yet\n"
-msgstr "tilvalget '-split' understøttes ikke endnu\n"
+#: ggc-common.c:500
+#, fuzzy, c-format
+msgid "can't get position in PCH file: %m"
+msgstr "kan ikke oprette informationsfilen '%s' til opbevaringssted"
-#: genautomata.c:9486 genautomata.c:9491
-#, c-format
-msgid "Automaton `%s': Insn `%s' will never be issued"
-msgstr "Automat '%s': instruktion '%s' vil aldrig blive udført"
+#: ggc-common.c:510
+#, fuzzy, c-format
+msgid "can't write padding to PCH file: %m"
+msgstr "kan ikke skrive i uddatafil"
-#: genautomata.c:9498 genautomata.c:9501
-#, c-format
-msgid "Insn `%s' will never be issued"
-msgstr "Instruktion '%s' vil aldrig blive udført"
+#: ggc-common.c:563 ggc-common.c:571 ggc-common.c:578 ggc-common.c:581
+#: ggc-common.c:654 ggc-common.c:657 ggc-page.c:2157 ggc-zone.c:1389
+#, fuzzy, c-format
+msgid "can't read PCH file: %m"
+msgstr "kan ikke læse fra midlertidig fil"
-#: genautomata.c:9649
-msgid "Errors in DFA description"
-msgstr "Fejl i DFA-beskrivelse"
+#: ggc-common.c:681
+msgid "had to relocate PCH"
+msgstr ""
-#: genautomata.c:9732
+#: ggc-page.c:1325
#, c-format
-msgid "Error in writing DFA description file %s"
-msgstr "Fejl ved skrivning af DFA-beskrivelsesfil %s"
+msgid "open /dev/zero: %m"
+msgstr ""
-#: genconditions.c:196
-msgid "No input file name."
-msgstr "Intet inddatafilnavn."
+#: ggc-page.c:2047 ggc-page.c:2053
+#, fuzzy
+msgid "can't write PCH file"
+msgstr "kan ikke skrive i uddatafil"
-#: ggc-page.c:1265
-msgid "open /dev/zero"
+#: ggc-simple.c:506
+msgid "Generating PCH files is not supported when using ggc-simple.c"
msgstr ""
-#: graph.c:420 profile.c:1204 profile.c:1211 toplev.c:1836 toplev.c:5168
-#: f/com.c:14210 java/jcf-parse.c:917 java/jcf-parse.c:1063 java/lex.c:1776
-#: objc/objc-act.c:449
-#, c-format
-msgid "can't open %s"
+#: global.c:356 global.c:369 global.c:383
+#, fuzzy, c-format
+msgid "%s cannot be used in asm here"
+msgstr "\"%s\" kan ikke bruges som et makronavn"
+
+#: graph.c:403 toplev.c:1481 toplev.c:4408 f/com.c:14202 java/jcf-parse.c:883
+#: java/jcf-parse.c:1030 java/lex.c:1828 objc/objc-act.c:503
+#, fuzzy, c-format
+msgid "can't open %s: %m"
msgstr "kan ikke åbne %s"
#: haifa-sched.c:196
@@ -6333,71 +6128,81 @@ msgstr "kan ikke åbne %s"
msgid "fix_sched_param: unknown param: %s"
msgstr "fix_sched_param: ukendt parameter: %s"
-#: integrate.c:174
+#: integrate.c:166
msgid "function cannot be inline"
msgstr "funktion kan ikke indbygges"
-#: integrate.c:178
+#: integrate.c:170
msgid "varargs function cannot be inline"
msgstr "funktion med variabel parameterliste kan ikke indbygges"
-#: integrate.c:181
+#: integrate.c:173
msgid "function using alloca cannot be inline"
msgstr "funktion der bruger alloca, kan ikke indbygges"
-#: integrate.c:184
+#: integrate.c:176
+#, fuzzy
+msgid "function using longjmp cannot be inline"
+msgstr "funktion der bruger setjmp, kan ikke indbygges"
+
+#: integrate.c:179
msgid "function using setjmp cannot be inline"
msgstr "funktion der bruger setjmp, kan ikke indbygges"
-#: integrate.c:187
+#: integrate.c:182
msgid "function uses __builtin_eh_return"
msgstr "funktionen bruger __builtin_eh_return"
-#: integrate.c:190
+#: integrate.c:185
msgid "function with nested functions cannot be inline"
msgstr "funktion med indlejrede funktioner kan ikke indbygges"
-#: integrate.c:194
+#: integrate.c:189
msgid "function with label addresses used in initializers cannot inline"
msgstr "funktion hvor etiketadresser benyttes i klargøringer, kan ikke indbygges"
-#: integrate.c:201 integrate.c:245
+#: integrate.c:196 integrate.c:240
msgid "function too large to be inline"
msgstr "funktionen er for stor til at blive indbygget"
-#: integrate.c:211
+#: integrate.c:206
msgid "no prototype, and parameter address used; cannot be inline"
msgstr "ingen prototype, og parameteradressen benyttes; kan ikke indbygges"
-#: integrate.c:218 integrate.c:263
+#: integrate.c:213 integrate.c:258
msgid "inline functions not supported for this return value type"
msgstr "integrerede funktioner understøttes ikke for denne returværditype"
-#: integrate.c:223
+#: integrate.c:218
msgid "function with varying-size return value cannot be inline"
msgstr "funktioner med returværdier af varierende størrelse kan ikke indbygges"
-#: integrate.c:230
+#: integrate.c:225
msgid "function with varying-size parameter cannot be inline"
msgstr "funktioner med parametre af varierende størrelse kan ikke indbygges"
-#: integrate.c:233
+#: integrate.c:228
msgid "function with transparent unit parameter cannot be inline"
msgstr "funktioner med gennemsigtig union-parameter kan ikke indbygges"
-#: integrate.c:252
+#: integrate.c:247
msgid "function with computed jump cannot inline"
msgstr "funktioner med beregnede spring kan ikke indbygges"
-#: integrate.c:256
+#: integrate.c:251
msgid "function with nonlocal goto cannot be inline"
msgstr "funktioner med ikke-lokale goto'er kan ikke indbygges"
-#: integrate.c:270
+#: integrate.c:265
msgid "function with target specific attribute(s) cannot be inlined"
msgstr "funktioner med målspecifikke egenskaber kan ikke indbygges"
-#: line-map.c:198
+#: jump.c:1896
+#, fuzzy
+msgid "%Hwill never be executed"
+msgstr "kald %2d aldrig udført\n"
+
+#: line-map.c:202
#, c-format
msgid "In file included from %s:%u"
msgstr "I filen inkluderet af %s:%u"
@@ -6414,7 +6219,7 @@ msgstr "I filen inkluderet af %s:%u"
#. with all the "from"s lined up.
#. The trailing comma is at the beginning of this message,
#. and the trailing colon is not translated.
-#: line-map.c:216
+#: line-map.c:220
#, c-format
msgid ""
",\n"
@@ -6423,63 +6228,159 @@ msgstr ""
",\n"
" af %s:%u"
+#. What to print when a switch has no documentation.
+#: opts.c:149
+msgid "This switch lacks documentation"
+msgstr ""
+
+#. Eventually this should become a hard error IMO.
+#: opts.c:318
+#, fuzzy, c-format
+msgid "command line option \"%s\" is valid for %s but not for %s"
+msgstr "'-%s' er gyldigt for %s, men ikke for %s"
+
+#: opts.c:406
+#, fuzzy, c-format
+msgid "missing argument to \"%s\""
+msgstr "der mangler en parameter til tilvalget '-%s'"
+
+#: opts.c:416
+#, fuzzy, c-format
+msgid "argument to \"%s\" should be a non-negative integer"
+msgstr "parameter til '%s' skal være en 2 bit-konstant uden fortegn"
+
+#: opts.c:463
+#, fuzzy, c-format
+msgid "unrecognized command line option \"%s\""
+msgstr "ignorerer kommandolinjetilvalget '%s'"
+
+#: opts.c:646
+msgid "-Wuninitialized is not supported without -O"
+msgstr "-Wuninitialized understøttes ikke uden -O"
+
+#: opts.c:1350
+#, fuzzy, c-format
+msgid "unrecognized register name \"%s\""
+msgstr "ukendt registernavn '%s'"
+
+#: opts.c:1394
+#, fuzzy, c-format
+msgid "unknown tls-model \"%s\""
+msgstr "'%s': ukendt tls-model-tilvalg"
+
+#: opts.c:1450
+#, fuzzy
+msgid "-fwritable-strings is deprecated; see documentation for details"
+msgstr "tilvalget '%s' er forældet, se venligst dokumentationen for detaljer"
+
+#: opts.c:1534
+#, c-format
+msgid "%s: --param arguments should be of the form NAME=VALUE"
+msgstr ""
+
+#: opts.c:1539
+#, fuzzy, c-format
+msgid "invalid --param value `%s'"
+msgstr "ugyldig parameterværdi '%s'"
+
+#: opts.c:1635
+#, fuzzy
+msgid "target system does not support debug output"
+msgstr "målprocessoren understøtter ikke uendelig"
+
+#: opts.c:1642
+#, fuzzy, c-format
+msgid "debug format \"%s\" conflicts with prior selection"
+msgstr "dataområdet '%s' er i modstrid med tidligere erklæring"
+
+#: opts.c:1658
+#, fuzzy, c-format
+msgid "unrecognised debug output level \"%s\""
+msgstr "ukendt sektionsnavn \"%s\""
+
+#: opts.c:1660
+#, c-format
+msgid "debug output level %s is too high"
+msgstr ""
+
+#: opts.c:1679
+msgid "The following options are language-independent:\n"
+msgstr ""
+
+#: opts.c:1686
+#, c-format
+msgid ""
+"The %s front end recognizes the following options:\n"
+"\n"
+msgstr ""
+
+#: opts.c:1700
+msgid "The --param option recognizes the following as parameters:\n"
+msgstr ""
+
#. If we didn't find this parameter, issue an error message.
-#: params.c:80
+#: params.c:76
#, c-format
msgid "invalid parameter `%s'"
msgstr "ugyldig parameter '%s'"
-#: profile.c:397
-#, c-format
-msgid "Profile does not match flowgraph of function %s (out of date?)"
-msgstr "Profil passer ikke til flowgraph af funktionen %s (forældet?)"
+#: profile.c:288
+msgid "corrupted profile info: run_max * runs < sum_max"
+msgstr ""
-#: profile.c:400
-msgid ".da file corrupted"
-msgstr ".da-fil ødelagt"
+#: profile.c:294
+msgid "corrupted profile info: sum_all is smaller than sum_max"
+msgstr ""
# 'prob' står for sandsynlighed
-#: profile.c:634
-#, c-format
-msgid "corrupted profile info: prob for %d-%d thought to be %d"
+#: profile.c:336
+#, fuzzy, c-format
+msgid "corrupted profile info: edge from %i to %i exceeds maximal count"
msgstr "ødelagte profilinfo: sandsynlighed for %d-%d menes at være %d"
-#: profile.c:1226
-#, c-format
-msgid "file %s not found, execution counts assumed to be zero"
-msgstr "filen %s ikke fundet, antager at kørselstællere er nul"
+# 'prob' står for sandsynlighed
+#: profile.c:499
+#, fuzzy, c-format
+msgid "corrupted profile info: number of iterations for basic block %d thought to be %i"
+msgstr "ødelagte profilinfo: sandsynlighed for %d-%d menes at være %d"
-#: protoize.c:542
+# 'prob' står for sandsynlighed
+#: profile.c:526
+#, fuzzy, c-format
+msgid "corrupted profile info: number of executions for edge %d-%d thought to be %i"
+msgstr "ødelagte profilinfo: sandsynlighed for %d-%d menes at være %d"
+
+#: protoize.c:534
#, c-format
msgid "%s: internal abort\n"
msgstr "%s: intern afbrydelse\n"
-#: protoize.c:633
+#: protoize.c:592
#, c-format
msgid "%s: error writing file `%s': %s\n"
msgstr "%s: fejl ved skrivning til filen '%s': %s\n"
-#: protoize.c:678
+#: protoize.c:636
#, c-format
msgid "%s: usage '%s [ -VqfnkN ] [ -i <istring> ] [ filename ... ]'\n"
msgstr "%s: brug '%s [ -VqfnkN ] [ -i <istreng> ] [ filenavn ... ]'\n"
-#: protoize.c:681
+#: protoize.c:639
#, c-format
msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B <dirname> ] [ filename ... ]'\n"
msgstr "%s: brug '%s [ -VqfnkNlgC ] [ -B <katalognavn> ] [ filnavn ... ]'\n"
-#: protoize.c:788
+#: protoize.c:745
#, c-format
msgid "%s: warning: no read access for file `%s'\n"
msgstr "%s: advarsel: ingen læseadgang til filen '%s'\n"
-#: protoize.c:796
+#: protoize.c:753
#, c-format
msgid "%s: warning: no write access for file `%s'\n"
msgstr "%s: advarsel: ingen skriveadgang til filen '%s'\n"
-#: protoize.c:804
+#: protoize.c:761
#, c-format
msgid "%s: warning: no write access for dir containing `%s'\n"
msgstr "%s: advarsel: ingen skriveadgang til kataloget der indeholder '%s'\n"
@@ -6487,17 +6388,17 @@ msgstr "%s: advarsel: ingen skriveadgang til kataloget der indeholder '%s'\n"
#. Catch cases like /.. where we try to backup to a
#. point above the absolute root of the logical file
#. system.
-#: protoize.c:1222
+#: protoize.c:1148
#, c-format
msgid "%s: invalid file name: %s\n"
msgstr "%s: ugyldigt filnavn: %s\n"
-#: protoize.c:1374
+#: protoize.c:1296
#, c-format
msgid "%s: %s: can't get status: %s\n"
msgstr "%s: %s: kan ikke finde ud af filens status: %s\n"
-#: protoize.c:1395
+#: protoize.c:1317
#, c-format
msgid ""
"\n"
@@ -6506,137 +6407,137 @@ msgstr ""
"\n"
"%s: fatal fejl: hjælpeinformationsfilen er beskadiget ved linje %d\n"
-#: protoize.c:1731
+#: protoize.c:1646
#, c-format
msgid "%s:%d: declaration of function `%s' takes different forms\n"
msgstr "%s:%d: erklæringen af funktionen '%s' antager forskellige former\n"
-#: protoize.c:1989
+#: protoize.c:1901
#, c-format
msgid "%s: compiling `%s'\n"
msgstr "%s: oversætter '%s'\n"
-#: protoize.c:2012
+#: protoize.c:1924
#, c-format
msgid "%s: wait: %s\n"
msgstr "%s: vent: %s\n"
-#: protoize.c:2017
+#: protoize.c:1929
#, c-format
msgid "%s: subprocess got fatal signal %d\n"
msgstr "%s: underprocessen modtog fatalt signal %d\n"
-#: protoize.c:2025
+#: protoize.c:1937
#, c-format
msgid "%s: %s exited with status %d\n"
msgstr "%s: %s afsluttede med status %d\n"
-#: protoize.c:2077
+#: protoize.c:1986
#, c-format
msgid "%s: warning: missing SYSCALLS file `%s'\n"
msgstr "%s: advarsel: manglende SYSCALLS-fil '%s'\n"
-#: protoize.c:2086 protoize.c:2115
+#: protoize.c:1995 protoize.c:2024
#, c-format
msgid "%s: can't read aux info file `%s': %s\n"
msgstr "%s: kan ikke læse hjælpeinformationsfilen '%s': %s\n"
-#: protoize.c:2131 protoize.c:2159
+#: protoize.c:2040 protoize.c:2068
#, c-format
msgid "%s: can't get status of aux info file `%s': %s\n"
msgstr "%s: kan ikke få status for hjælpeinformationsfilen '%s': %s\n"
-#: protoize.c:2187
+#: protoize.c:2096
#, c-format
msgid "%s: can't open aux info file `%s' for reading: %s\n"
msgstr "%s: kan ikke åbne hjælpeinformationsfilen '%s' til at læse fra: %s\n"
-#: protoize.c:2205
+#: protoize.c:2114
#, c-format
msgid "%s: error reading aux info file `%s': %s\n"
msgstr "%s: fejl ved læsning af hjælpeinformationsfilen '%s': %s\n"
-#: protoize.c:2218
+#: protoize.c:2127
#, c-format
msgid "%s: error closing aux info file `%s': %s\n"
msgstr "%s: fejl ved lukning af hjælpeinformationsfilen '%s': %s\n"
-#: protoize.c:2234
+#: protoize.c:2143
#, c-format
msgid "%s: can't delete aux info file `%s': %s\n"
msgstr "%s: kan ikke slette hjælpeinformationsfilen '%s': %s\n"
-#: protoize.c:2316 protoize.c:4318
+#: protoize.c:2225 protoize.c:4195
#, c-format
msgid "%s: can't delete file `%s': %s\n"
msgstr "%s: kan ikke slette filen '%s': %s\n"
-#: protoize.c:2395
+#: protoize.c:2303
#, c-format
msgid "%s: warning: can't rename file `%s' to `%s': %s\n"
msgstr "%s: advarsel: kan ikke omdøbe filen '%s' til '%s': %s\n"
-#: protoize.c:2520
+#: protoize.c:2425
#, c-format
msgid "%s: conflicting extern definitions of '%s'\n"
msgstr "%s: modstridende eksterne definitioner af '%s'\n"
-#: protoize.c:2524
+#: protoize.c:2429
#, c-format
msgid "%s: declarations of '%s' will not be converted\n"
msgstr "%s: erklæringer af '%s' vil ikke blive omdannet\n"
-#: protoize.c:2526
+#: protoize.c:2431
#, c-format
msgid "%s: conflict list for '%s' follows:\n"
msgstr "%s: modstridene for '%s' følger:\n"
-#: protoize.c:2559
+#: protoize.c:2464
#, c-format
msgid "%s: warning: using formals list from %s(%d) for function `%s'\n"
msgstr "%s: advarsel: bruger parameterlisten fra %s(%d) til funktionen '%s'\n"
-#: protoize.c:2599
+#: protoize.c:2504
#, c-format
msgid "%s: %d: `%s' used but missing from SYSCALLS\n"
msgstr "%s: %d: '%s' benyttet, men mangler i SYSCALLS\n"
-#: protoize.c:2605
+#: protoize.c:2510
#, c-format
msgid "%s: %d: warning: no extern definition for `%s'\n"
msgstr "%s: %d: advarsel: ingen ekstern definition af '%s'\n"
-#: protoize.c:2636
+#: protoize.c:2540
#, c-format
msgid "%s: warning: no static definition for `%s' in file `%s'\n"
msgstr "%s: advarsel: ingen statisk definition af '%s' i filen '%s'\n"
-#: protoize.c:2642
+#: protoize.c:2546
#, c-format
msgid "%s: multiple static defs of `%s' in file `%s'\n"
msgstr "%s: flere statiske definitioner af '%s' i filen '%s'\n"
-#: protoize.c:2815 protoize.c:2818
+#: protoize.c:2716 protoize.c:2719
#, c-format
msgid "%s: %d: warning: source too confusing\n"
msgstr "%s: %d: advarsel: koden er for forvirrende\n"
-#: protoize.c:3024
+#: protoize.c:2915
#, c-format
msgid "%s: %d: warning: varargs function declaration not converted\n"
msgstr "%s: %d: advarsel: funktionserklæring med variabel parameterliste er ikke omdannet\n"
-#: protoize.c:3039
+#: protoize.c:2930
#, c-format
msgid "%s: declaration of function `%s' not converted\n"
msgstr "%s: erklæringen af funktionen '%s' er ikke omdannet\n"
-#: protoize.c:3162
+#: protoize.c:3053
#, c-format
msgid "%s: warning: too many parameter lists in declaration of `%s'\n"
msgstr "%s: advarsel: for mange parameterlister i erklæringen af '%s'\n"
-#: protoize.c:3183
+#: protoize.c:3074
#, c-format
msgid ""
"\n"
@@ -6645,17 +6546,17 @@ msgstr ""
"\n"
"%s: advarsel: for få parameterlister i erklæringen af '%s'\n"
-#: protoize.c:3281
+#: protoize.c:3170
#, c-format
msgid "%s: %d: warning: found `%s' but expected `%s'\n"
msgstr "%s: %d: advarsel: fandt '%s', men forventede '%s'\n"
-#: protoize.c:3459
+#: protoize.c:3345
#, c-format
msgid "%s: local declaration for function `%s' not inserted\n"
msgstr "%s: den lokale erklæring af funktionen '%s' er ikke indsat\n"
-#: protoize.c:3486
+#: protoize.c:3372
#, c-format
msgid ""
"\n"
@@ -6664,64 +6565,64 @@ msgstr ""
"\n"
"%s: %d: advarsel: kan ikke tilføje erklæringen af '%s' i makrokald\n"
-#: protoize.c:3560
+#: protoize.c:3444
#, c-format
msgid "%s: global declarations for file `%s' not inserted\n"
msgstr "%s: globale erklæringer for filen '%s' er ikke indsat\n"
-#: protoize.c:3651 protoize.c:3681
+#: protoize.c:3533 protoize.c:3563
#, c-format
msgid "%s: definition of function `%s' not converted\n"
msgstr "%s: definitionen af funktionen '%s' er ikke omdannet\n"
-#: protoize.c:3670
+#: protoize.c:3552
#, c-format
msgid "%s: %d: warning: definition of %s not converted\n"
msgstr "%s: %d: advarsel: definitionen af '%s' er ikke omdannet\n"
-#: protoize.c:4000
+#: protoize.c:3878
#, c-format
msgid "%s: found definition of `%s' at %s(%d)\n"
msgstr "%s: fandt definitionen af '%s' ved %s(%d)\n"
#. If we make it here, then we did not know about this
#. function definition.
-#: protoize.c:4016
+#: protoize.c:3894
#, c-format
msgid "%s: %d: warning: `%s' excluded by preprocessing\n"
msgstr "%s: %d: advarsel: '%s' ekskluderet af forbehandlingen\n"
-#: protoize.c:4019
+#: protoize.c:3897
#, c-format
msgid "%s: function definition not converted\n"
msgstr "%s: funktionsdefinitionen er ikke omdannet\n"
-#: protoize.c:4078
+#: protoize.c:3955
#, c-format
msgid "%s: `%s' not converted\n"
msgstr "%s: '%s' ikke omdannet\n"
-#: protoize.c:4086
+#: protoize.c:3963
#, c-format
msgid "%s: would convert file `%s'\n"
msgstr "%s: ville omdanne filen '%s'\n"
-#: protoize.c:4089
+#: protoize.c:3966
#, c-format
msgid "%s: converting file `%s'\n"
msgstr "%s: omdanner filen '%s'\n"
-#: protoize.c:4099
+#: protoize.c:3976
#, c-format
msgid "%s: can't get status for file `%s': %s\n"
msgstr "%s: kan ikke få status for filen '%s': %s\n"
-#: protoize.c:4141
+#: protoize.c:4018
#, c-format
msgid "%s: can't open file `%s' for reading: %s\n"
msgstr "%s: kan ikke åbne filen '%s' til at læse fra: %s\n"
-#: protoize.c:4156
+#: protoize.c:4033
#, c-format
msgid ""
"\n"
@@ -6730,37 +6631,37 @@ msgstr ""
"\n"
"%s: fejl ved læsning af inddatafilen '%s': %s\n"
-#: protoize.c:4190
+#: protoize.c:4067
#, c-format
msgid "%s: can't create/open clean file `%s': %s\n"
msgstr "%s: kan ikke oprette/åbne oprydningsfilen '%s': %s\n"
-#: protoize.c:4295
+#: protoize.c:4172
#, c-format
msgid "%s: warning: file `%s' already saved in `%s'\n"
msgstr "%s: advarsel: filen '%s' er allerede gemt i '%s'\n"
-#: protoize.c:4303
+#: protoize.c:4180
#, c-format
msgid "%s: can't link file `%s' to `%s': %s\n"
msgstr "%s: kan ikke kæde filen '%s' sammen med '%s': %s\n"
-#: protoize.c:4333
+#: protoize.c:4210
#, c-format
msgid "%s: can't create/open output file `%s': %s\n"
msgstr "%s: kan ikke oprette/åbne uddatafilen '%s': %s\n"
-#: protoize.c:4366
+#: protoize.c:4243
#, c-format
msgid "%s: can't change mode of file `%s': %s\n"
msgstr "%s: kan ikke ændre tilstanden af filen '%s': '%s'\n"
-#: protoize.c:4541
+#: protoize.c:4416
#, c-format
msgid "%s: cannot get working directory: %s\n"
msgstr "%s: kan ikke få fat i arbejdskataloget: %s\n"
-#: protoize.c:4639
+#: protoize.c:4514
#, c-format
msgid "%s: input file names must have .c suffixes: %s\n"
msgstr "%s: inddatafilnavn skal have '.c'-endelser: %s\n"
@@ -6769,359 +6670,402 @@ msgstr "%s: inddatafilnavn skal have '.c'-endelser: %s\n"
msgid "Didn't find a coloring.\n"
msgstr "Kunne ikke finde en farvning.\n"
-#: reg-stack.c:673
+#: reg-stack.c:665
#, c-format
msgid "output constraint %d must specify a single register"
msgstr "uddatabegrænsning %d skal angive et enkelt register"
-#: reg-stack.c:683
+#: reg-stack.c:675
#, c-format
msgid "output constraint %d cannot be specified together with \"%s\" clobber"
msgstr "uddatabegrænsning %d kan ikke angives samtidig med overskrivning af \"%s\""
-#: reg-stack.c:706
+#: reg-stack.c:698
msgid "output regs must be grouped at top of stack"
msgstr "uddataregistre skal grupperes i toppen af stakken"
-#: reg-stack.c:743
+#: reg-stack.c:735
msgid "implicitly popped regs must be grouped at top of stack"
msgstr "implicit aflæste registre skal grupperes i toppen af stakken"
-#: reg-stack.c:762
+#: reg-stack.c:754
#, c-format
msgid "output operand %d must use `&' constraint"
msgstr "uddataoperand %d skal bruge begrænsningen '&'"
-#: regclass.c:756
+#: regclass.c:743
#, c-format
msgid "can't use '%s' as a %s register"
msgstr "kan ikke bruge '%s' som et %s-register"
-#: regclass.c:771 config/ia64/ia64.c:4304 config/ia64/ia64.c:4311
+#: regclass.c:758 config/ia64/ia64.c:4640 config/ia64/ia64.c:4647
#, c-format
msgid "unknown register name: %s"
msgstr "ukendt registernavn: %s"
-#: regclass.c:782
+#: regclass.c:768
msgid "global register variable follows a function definition"
msgstr "en global registervariabel følger en funktionsdefinition"
-#: regclass.c:786
+#: regclass.c:772
msgid "register used for two global register variables"
msgstr "register brugt til to globale registervariabler"
-#: regclass.c:791
+#: regclass.c:777
msgid "call-clobbered register used for global register variable"
msgstr "kaldeoverskrevet register brugt til global registervariabel"
-#: regrename.c:1899
+#: regrename.c:1846
#, c-format
msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)"
msgstr "validate_value_data: [%u] Ugyldig next_regno til tom kæde (%u)"
-#: regrename.c:1911
+#: regrename.c:1858
#, c-format
msgid "validate_value_data: Loop in regno chain (%u)"
msgstr "validate_value_data: Løkke i registertalskæde (%u)"
-#: regrename.c:1914
+#: regrename.c:1861
#, c-format
msgid "validate_value_data: [%u] Bad oldest_regno (%u)"
msgstr "validate_value_data: [%u] Ugyldig oldest_regno (%u)"
-#: regrename.c:1926
+#: regrename.c:1873
#, c-format
msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
msgstr "validate_value_data: [%u] Ikke-tomt register i kæde (%s %u %i)"
-#: reload.c:1229
+#: reload.c:1254
msgid "cannot reload integer constant operand in `asm'"
msgstr "kan ikke genindlæse heltalskonstantoperand i 'asm'"
-#: reload.c:1251
+#: reload.c:1276
msgid "impossible register constraint in `asm'"
msgstr "umulig registerbegrænsing i 'asm'"
-#: reload.c:3461
+#: reload.c:3489
msgid "`&' constraint used with no register class"
msgstr "'&'-begrænsning brugt uden registerklasse"
-#: reload.c:3629
+#: reload.c:3657
msgid "unable to generate reloads for:"
msgstr "kunne ikke generere genindlæsninger for:"
-#: reload.c:3630 reload.c:3844
+#: reload.c:3658 reload.c:3872
msgid "inconsistent operand constraints in an `asm'"
msgstr "inkonsistente operandbegræsninger i 'asm'"
-#: reload1.c:1250
+#: reload1.c:1212
msgid "frame size too large for reliable stack checking"
msgstr "rammestørrelse for stor til pålidelig stakkontrol"
-#: reload1.c:1253
+#: reload1.c:1215
msgid "try reducing the number of local variables"
msgstr "forsøg at reducere antallet af lokale variable"
-#: reload1.c:1909
+#: reload1.c:1868
#, c-format
msgid "can't find a register in class `%s' while reloading `asm'"
msgstr "kan ikke finde et register i klassen '%s' ved genindlæsning af 'asm'"
-#: reload1.c:1913
+#: reload1.c:1872
#, c-format
msgid "unable to find a register to spill in class `%s'"
msgstr "kan ikke finde et register at bortødsle i klassen '%s'"
-#: reload1.c:1915
+#: reload1.c:1874
msgid "this is the insn:"
msgstr "dette er instruktionen:"
-#: reload1.c:3938
+#: reload1.c:3871
msgid "`asm' operand requires impossible reload"
msgstr "'asm'-operand kræver umulig genindlæsning"
#. It's the compiler's fault.
-#: reload1.c:5052
+#: reload1.c:4963
msgid "could not find a spill register"
msgstr "kunne ikke finde et register at bortødsle"
-#: reload1.c:5057
+#: reload1.c:4968
msgid "`asm' operand constraint incompatible with operand size"
msgstr "'asm'-operandbegrænsning ikke forenelig med operandstørrelse"
#. It's the compiler's fault.
-#: reload1.c:6679
+#: reload1.c:6590
msgid "VOIDmode on an output"
msgstr "VOID-tilstand ved uddata"
-#: reload1.c:6680
+#: reload1.c:6591
msgid "output operand is constant in `asm'"
msgstr "uddataoperand er konstant i 'asm'"
-#: rtl-error.c:140
+#: rtl-error.c:124
msgid "unrecognizable insn:"
msgstr "ukendt instruktion:"
-#: rtl-error.c:142
+#: rtl-error.c:126
msgid "insn does not satisfy its constraints:"
msgstr "instruktion tilfredsstiller ikke sine begrænsninger:"
-#: rtl.c:535
+#: rtl.c:477
#, c-format
msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d"
msgstr "RTL-kontrol: tilgang til udtrykstræ %d fra '%s' med sidste udtrykstræ %d i %s, ved %s:%d"
-#: rtl.c:550
+#: rtl.c:487
#, c-format
msgid "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr "RTL-kontrol: forventede udtrykstræ %d type '%c', har '%c' (registeroverførselsudtryk %s) i %s, ved %s:%d"
-#: rtl.c:566
+#: rtl.c:497
#, c-format
msgid "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr "RTL-kontrol: forventede udtrykstræ %d type '%c' eller '%c', har '%c' (registeroverførselsudtryk %s) i %s, ved %s:%d"
-#: rtl.c:579
+#: rtl.c:506
#, c-format
msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d"
msgstr "RTL-kontrol: forventede koden '%s', har '%s' i %s, ved %s:%d"
-#: rtl.c:593
+#: rtl.c:516
#, c-format
msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d"
msgstr "RTL-kontrol: forventede koden '%s' eller '%s', har '%s' i %s, ved %s:%d"
-#: rtl.c:608
+#: rtl.c:527
#, c-format
msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
msgstr "RTL-kontrol: tilgang til udtrykstræ %d af vektor hvis sidste udtrykstræ er %d i %s, ved %s:%d"
-#: rtl.c:623
+#: rtl.c:538
#, c-format
msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d"
msgstr "RTL-flagskontrol: %s benyttet med uventet rtx-kode '%s' i %s, ved %s:%d"
-#: stmt.c:766
+#: stmt.c:750
#, c-format
msgid "jump to `%s' invalidly jumps into binding contour"
msgstr "spring til '%s' rammer på ugyldig vis ind i bindingskontur"
-#: stmt.c:1002 stmt.c:3766
-#, c-format
-msgid "label `%s' used before containing binding contour"
+#: stmt.c:977 stmt.c:3793
+#, fuzzy
+msgid "%Jlabel '%D' used before containing binding contour"
msgstr "etiket '%s' brugt før indholdende bindingskontur"
-#: stmt.c:1190
+#: stmt.c:1156
msgid "output operand constraint lacks `='"
msgstr "uddataoperandbegrænsning mangler '='"
-#: stmt.c:1205
+#: stmt.c:1171
#, c-format
msgid "output constraint `%c' for operand %d is not at the beginning"
msgstr "uddatabegrænsning '%c' for operanden %d er ikke ved begyndelsen"
-#: stmt.c:1227
+#: stmt.c:1193
msgid "operand constraint contains incorrectly positioned '+' or '='"
msgstr "operandbegrænsning indeholder forkert placeret '+' eller '='"
-#: stmt.c:1233 stmt.c:1337
+#: stmt.c:1199 stmt.c:1301
#, c-format
msgid "`%%' constraint used with last operand"
msgstr "'%%'-begrænsning brugt med sidste operand"
-#: stmt.c:1252
+#: stmt.c:1218
msgid "matching constraint not valid in output operand"
msgstr "begrænsningen er ikke gyldig for uddataoperanden"
-#: stmt.c:1328
+#: stmt.c:1260
+#, fuzzy
+msgid "read-write constraint does not allow a register"
+msgstr "hexadecimal tegnkonstant kan ikke være i en byte"
+
+#: stmt.c:1292
#, c-format
msgid "input operand constraint contains `%c'"
msgstr "inddataoperandbegrænsningen indeholder '%c'"
-#: stmt.c:1368
+#: stmt.c:1334
msgid "matching constraint references invalid operand number"
msgstr "begrænsning refererer til et ugyldigt operandtal"
-#: stmt.c:1400
+#: stmt.c:1372
#, c-format
msgid "invalid punctuation `%c' in constraint"
msgstr "ugyldig punktuering '%c' i begrænsning"
-#: stmt.c:1450
+#: stmt.c:1396
+#, fuzzy
+msgid "matching constraint does not allow a register"
+msgstr "begrænsningen er ikke gyldig for uddataoperanden"
+
+#: stmt.c:1424
#, c-format
msgid "asm-specifier for variable `%s' conflicts with asm clobber list"
msgstr "asm-anvisning for variablen '%s' strider mod asm-overskrivelsesliste"
-#: stmt.c:1540
+#: stmt.c:1514
#, c-format
msgid "unknown register name `%s' in `asm'"
msgstr "ukendt registernavn '%s' i 'asm'"
-#: stmt.c:1588
+#: stmt.c:1522
+#, fuzzy, c-format
+msgid "PIC register `%s' clobbered in `asm'"
+msgstr "ukendt registernavn '%s' i 'asm'"
+
+#: stmt.c:1571
#, c-format
msgid "more than %d operands in `asm'"
msgstr "mere end %d operander i 'asm'"
-#: stmt.c:1650
+#: stmt.c:1633
#, c-format
msgid "output number %d not directly addressable"
msgstr "uddata nr. %d kan ikke adresseres direkte"
-#: stmt.c:1728
+#: stmt.c:1711
#, c-format
msgid "asm operand %d probably doesn't match constraints"
msgstr "'asm'-operand %d passer sandsynligvis ikke til begrænsninger"
-#: stmt.c:1738
+#: stmt.c:1721
#, c-format
msgid "use of memory input without lvalue in asm operand %d is deprecated"
msgstr ""
-#: stmt.c:1889
+#: stmt.c:1875
msgid "asm clobber conflict with output operand"
msgstr "asm-overskrivelse er i modstrid med uddataoperander"
-#: stmt.c:1894
+#: stmt.c:1880
msgid "asm clobber conflict with input operand"
msgstr "asm-overskrivelse er i modstrid med inddataoperander"
-#: stmt.c:1929
+#: stmt.c:1914
msgid "too many alternatives in `asm'"
msgstr "for mange alternativer i 'asm'"
-#: stmt.c:1941
+#: stmt.c:1926
msgid "operand constraints for `asm' differ in number of alternatives"
msgstr "operandbegrænsninger til 'asm' har forskellige antal alternativer"
-#: stmt.c:1994
+#: stmt.c:1978
#, c-format
msgid "duplicate asm operand name '%s'"
msgstr "'asm'-operandnavnet '%s' optræder mere end én gang"
-#: stmt.c:2081
+#: stmt.c:2076
msgid "missing close brace for named operand"
msgstr "manglende afsluttende krøllet parantes til navngiven operand"
-#: stmt.c:2109
+#: stmt.c:2104
#, c-format
msgid "undefined named operand '%s'"
msgstr "ikkedefineret navngiven operand '%s'"
-#: stmt.c:3703
-#, c-format
-msgid "unused variable `%s'"
+#: stmt.c:2161
+msgid "%Hstatement with no effect"
+msgstr ""
+
+#: stmt.c:2317
+#, fuzzy
+msgid "%Hvalue computed is not used"
+msgstr "automat '%s' bliver ikke benyttet"
+
+#: stmt.c:3733
+#, fuzzy
+msgid "%Junused variable '%D'"
msgstr "ubrugt variabel '%s'"
-#: stmt.c:5189
+#: stmt.c:4508
+#, fuzzy
+msgid "%Hunreachable code at beginning of %s"
+msgstr "kan ikke nå bytekode fra %d til før %d"
+
+#: stmt.c:5136
#, c-format
msgid "enumeration value `%s' not handled in switch"
msgstr "enum-værdien '%s' håndteres ikke i switch-sætning"
-#: stmt.c:5214 stmt.c:5234
+#: stmt.c:5161 stmt.c:5181
#, c-format
msgid "case value `%ld' not in enumerated type"
msgstr "case-værdien '%ld' eksisterer ikke i enum-type"
-#: stmt.c:5217 stmt.c:5237
+#: stmt.c:5164 stmt.c:5184
#, c-format
msgid "case value `%ld' not in enumerated type `%s'"
msgstr "case-værdien '%ld' eksisterer ikke i enum-typen '%s'"
-#: stmt.c:5310
+#: stmt.c:5401
msgid "switch missing default case"
msgstr "switch-konstruktion mangler default"
-#: stor-layout.c:178
+#: stor-layout.c:183
msgid "type size can't be explicitly evaluated"
msgstr "det er ikke muligt eksplicit at finde typens størrelse"
-#: stor-layout.c:180
+#: stor-layout.c:185
msgid "variable-size type declared outside of any function"
msgstr "en type med en variabel størrelse er erklæret uden for en funktion"
-#: stor-layout.c:487
-#, c-format
-msgid "size of `%s' is %d bytes"
+#: stor-layout.c:515
+#, fuzzy
+msgid "%Jsize of '%D' is %d bytes"
msgstr "størrelsen af '%s' er %d byte"
-#: stor-layout.c:489
-#, c-format
-msgid "size of `%s' is larger than %d bytes"
+#: stor-layout.c:517
+#, fuzzy
+msgid "%Jsize of '%D' is larger than %d bytes"
msgstr "størrelsen af '%s' er større end %d byte"
-#: stor-layout.c:909 stor-layout.c:1325
-#, c-format
-msgid "packed attribute causes inefficient alignment for `%s'"
+#: stor-layout.c:883
+#, fuzzy
+msgid "%Jpacked attribute causes inefficient alignment for '%D'"
msgstr "packed-egenskab forårsager ineffektiv justering af '%s'"
-#: stor-layout.c:911 stor-layout.c:1327
-#, c-format
-msgid "packed attribute is unnecessary for `%s'"
+#: stor-layout.c:886
+#, fuzzy
+msgid "%Jpacked attribute is unnecessary for '%D'"
msgstr "packed-egenskab er unødvendig for '%s'"
-#: stor-layout.c:926
-#, c-format
-msgid "padding struct to align `%s'"
+#: stor-layout.c:902
+#, fuzzy
+msgid "%Jpadding struct to align '%D'"
msgstr "udfylder struct for at justere '%s'"
-#: stor-layout.c:1289
+#: stor-layout.c:1245
msgid "padding struct size to alignment boundary"
msgstr "udfylder struct-størrelse til justeringskant"
-#: stor-layout.c:1332
+#: stor-layout.c:1275
+#, c-format
+msgid "packed attribute causes inefficient alignment for `%s'"
+msgstr "packed-egenskab forårsager ineffektiv justering af '%s'"
+
+#: stor-layout.c:1277
+#, c-format
+msgid "packed attribute is unnecessary for `%s'"
+msgstr "packed-egenskab er unødvendig for '%s'"
+
+#: stor-layout.c:1282
msgid "packed attribute causes inefficient alignment"
msgstr "packed-egenskab forårsager ineffektiv justering"
-#: stor-layout.c:1334
+#: stor-layout.c:1284
msgid "packed attribute is unnecessary"
msgstr "packed-egenskab er unødvendig"
-#: timevar.c:322
+#: targhooks.c:154
+msgid "__builtin_saveregs not supported by this target"
+msgstr "__builtin_saveregs understøttes ikke af denne målarkitektur"
+
+#: timevar.c:314
#, c-format
msgid "cannot timevar_pop '%s' when top of timevars stack is '%s'"
msgstr "kan ikke udføre timevar_pop '%s' når toppen af timevars-stakken er '%s'"
-#: timevar.c:453
+#: timevar.c:440
msgid ""
"\n"
"Execution times (seconds)\n"
@@ -7130,975 +7074,125 @@ msgstr ""
"Udførselstid (sekunder)\n"
#. Print total time.
-#: timevar.c:503
+#: timevar.c:490
msgid " TOTAL :"
msgstr " TOTAL :"
-#: timevar.c:539
+#: timevar.c:513
#, c-format
msgid "time in %s: %ld.%06ld (%ld%%)\n"
msgstr "tid i %s: %ld.%06ld (%ld%%)\n"
-#: tlink.c:399
+#: tlink.c:377
#, c-format
msgid "collect: reading %s\n"
msgstr "collect: læser %s\n"
-#: tlink.c:502
+#: tlink.c:478
#, c-format
msgid "collect: recompiling %s\n"
msgstr "collect: genoversætter '%s'\n"
# RETMIG: rigtigt?
-#: tlink.c:674
+#: tlink.c:654
#, c-format
msgid "collect: tweaking %s in %s\n"
msgstr "collect: presser %s i %s\n"
-#: tlink.c:721
+#: tlink.c:700
+#, c-format
msgid "collect: relinking\n"
msgstr "collect: kæder sammen igen\n"
-#: tlink.c:730
+#: tlink.c:709
#, c-format
msgid "ld returned %d exit status"
msgstr "ld returnerede afslutningskoden %d"
-#: toplev.c:920
-msgid "Generate debugging info in default format"
-msgstr "Generér fejlfindingsinfo i standardformat"
-
-#: toplev.c:921
-msgid "Generate debugging info in default extended format"
-msgstr "Generér fejlfindingsinfo i udvidet standardformat"
-
-#: toplev.c:923
-msgid "Generate STABS format debug info"
-msgstr "Generér fejlfindingsinfo i STABS-format"
-
-#: toplev.c:924
-msgid "Generate extended STABS format debug info"
-msgstr "Generér fejlfindingsinfo i udvidet STABS-format"
-
-#: toplev.c:927
-msgid "Generate DWARF-1 format debug info"
-msgstr "Generér fejlfindingsinfo i DWARF-1-format"
-
-#: toplev.c:929
-msgid "Generate extended DWARF-1 format debug info"
-msgstr "Generér fejlfindingsinfo i udvidet DWARF-1-format"
-
-#: toplev.c:932
-msgid "Generate DWARF-2 debug info"
-msgstr "Generér fejlfindingsinfo i DWARF-2-format"
-
-#: toplev.c:935
-msgid "Generate XCOFF format debug info"
-msgstr "Generér fejlfindingsinfo i XCOFF-format"
-
-#: toplev.c:936
-msgid "Generate extended XCOFF format debug info"
-msgstr "Generér fejlfindingsinfo i udvidet XCOFF-format"
-
-#: toplev.c:939
-msgid "Generate COFF format debug info"
-msgstr "Generér fejlfindingsinfo i COFF-format"
-
-#: toplev.c:942
-msgid "Generate VMS format debug info"
-msgstr "Generér fejlfindingsinfo i VMS-format"
-
-#: toplev.c:981
-msgid "Perform DWARF2 duplicate elimination"
-msgstr "Udfør DWARF2-eliminering af dubletter"
-
-#: toplev.c:983
-msgid "Do not store floats in registers"
-msgstr "Lagr ikke kommatal i registre"
-
-#: toplev.c:985
-msgid "Consider all mem refs through pointers as volatile"
-msgstr "Betragt alle hukommelsesferencer gennem henvisninger som volatile"
-
-#: toplev.c:987
-msgid "Consider all mem refs to global data to be volatile"
-msgstr "Betragt alle hukommelsesferencer til globale data som volatile"
-
-#: toplev.c:989
-msgid "Consider all mem refs to static data to be volatile"
-msgstr "Betragt alle hukommelsesferencer til statiske data som volatile"
-
-#: toplev.c:991
-msgid "Defer popping functions args from stack until later"
-msgstr "Vent med fjernelse af funktionsparametre fra stakken til senere"
-
-#: toplev.c:993
-msgid "When possible do not generate stack frames"
-msgstr "Generér ikke stakrammer når det kan undgås"
-
-#: toplev.c:995
-msgid "Optimize sibling and tail recursive calls"
-msgstr "Optimér søskende- og halerekursive kald"
-
-#: toplev.c:997
-msgid "Perform superblock formation via tail duplication"
-msgstr "Udfør superbloksformering vha. haleduplikering"
-
-# RETMIG: hvad er CSE?
-#: toplev.c:999
-msgid "When running CSE, follow jumps to their targets"
-msgstr "Ved kørsel af CSE følg spring til deres mål"
-
-#: toplev.c:1001
-msgid "When running CSE, follow conditional jumps"
-msgstr "Ved kørsel af CSE følg betingede spring"
-
-#: toplev.c:1003
-msgid "Perform a number of minor, expensive optimizations"
-msgstr "Udfør et antal mindre, dyre optimeringer"
-
-#: toplev.c:1005
-msgid "Perform jump threading optimizations"
-msgstr "Udfør springtrådningsoptimeringer"
-
-#: toplev.c:1007
-msgid "Perform strength reduction optimizations"
-msgstr "Udfør styrkereduceringsoptimeringer"
-
-#: toplev.c:1009
-msgid "Perform loop unrolling when iteration count is known"
-msgstr "Udfør løkkeudrulning når iterationsantallet er kendt"
-
-#: toplev.c:1011
-msgid "Perform loop unrolling for all loops"
-msgstr "Udfør løkkeudrulning for alle løkker"
-
-#: toplev.c:1013
-msgid "Generate prefetch instructions, if available, for arrays in loops"
-msgstr "Generér præhentningsinstruktioner, hvis tilgængelige, for tabeller i løkker"
-
-#: toplev.c:1015
-msgid "Force all loop invariant computations out of loops"
-msgstr "Tving alle løkkeinvariansberegninger ud af løkker"
-
-#: toplev.c:1017
-msgid "Strength reduce all loop general induction variables"
-msgstr "Styrkereducér alle generelle løkkeinduktionsvariabler"
-
-#: toplev.c:1019
-msgid "Store strings in writable data section"
-msgstr "Gem strenge i en skrivbar datasektion"
-
-#: toplev.c:1021
-msgid "Enable machine specific peephole optimizations"
-msgstr "Aktivér maskinspecifikke kighulsoptimeringer"
-
-#: toplev.c:1023
-msgid "Copy memory operands into registers before using"
-msgstr "Kopiér hukommelsesoperander ind i registre før brug"
-
-#: toplev.c:1025
-msgid "Copy memory address constants into regs before using"
-msgstr "Kopiér hukommelsesadressekonstanter ind i registre før brug"
-
-#: toplev.c:1027
-msgid "Allow function addresses to be held in registers"
-msgstr "Tillad funktionsadresser at blive opbevaret i registre"
-
-#: toplev.c:1029
-msgid "Integrate simple functions into their callers"
-msgstr "Integrér simple funktioner i deres kaldere"
-
-#: toplev.c:1031
-msgid "Generate code for funcs even if they are fully inlined"
-msgstr "Generér kode for funktioner selv hvis de indlejres helt"
-
-#: toplev.c:1033
-msgid "Pay attention to the 'inline' keyword"
-msgstr "Læg mærke til 'inline'-nøgleordet"
-
-#: toplev.c:1035
-msgid "Emit static const variables even if they are not used"
-msgstr "Konstruér statiske, konstante variabler selv hvis de ikke bruges"
-
-#: toplev.c:1037
-msgid "Check for syntax errors, then stop"
-msgstr "Kontrollér syntaks og stop derefter"
-
-#: toplev.c:1039
-msgid "Mark data as shared rather than private"
-msgstr "Markér data som delt snarere end privat"
-
-#: toplev.c:1041
-msgid "Enable saving registers around function calls"
-msgstr "Aktivér gemning af registrer omkring funktionskald"
-
-#: toplev.c:1043
-msgid "Return 'short' aggregates in memory, not registers"
-msgstr "Returnér små sammensatte værdier i hukommelsen, ikke i registre"
-
-#: toplev.c:1045
-msgid "Return 'short' aggregates in registers"
-msgstr "Returnér små sammensatte værdier i registre"
-
-#: toplev.c:1047
-msgid "Attempt to fill delay slots of branch instructions"
-msgstr "Forsøg at udfylde ventepladser med forgreningsinstruktioner"
-
-#: toplev.c:1049
-msgid "Perform the global common subexpression elimination"
-msgstr "Udfør global eliminering af fælles underudtryk"
-
-#: toplev.c:1051
-msgid "Perform enhanced load motion during global subexpression elimination"
-msgstr "Udfør forbedret indlæsningsbevægelse under eliminering af fælles underudtryk"
-
-#: toplev.c:1053
-msgid "Perform store motion after global subexpression elimination"
-msgstr "Udfør lagringsbevægelse efter eliminering af fælles underudtryk"
-
-#: toplev.c:1055
-msgid "Perform the loop optimizations"
-msgstr "Udfør løkkeoptimeringerne"
-
-#: toplev.c:1057
-msgid "Perform cross-jumping optimization"
-msgstr "Udfør krydsspringsoptimering"
-
-#: toplev.c:1059
-msgid "Perform conversion of conditional jumps to branchless equivalents"
-msgstr "Udfør konvertering af betingede spring til forgreningsløse ækvivalenter"
-
-#: toplev.c:1061
-msgid "Perform conversion of conditional jumps to conditional execution"
-msgstr "Udfør konvertering af betingede spring til betinget udførsel"
-
-#: toplev.c:1063
-msgid "Run CSE pass after loop optimizations"
-msgstr "Kør CSE-fase efter løkkeoptimeringer"
-
-#: toplev.c:1065
-msgid "Run the loop optimizer twice"
-msgstr "Kør løkkeoptimeringen to gange"
-
-#: toplev.c:1067
-msgid "Delete useless null pointer checks"
-msgstr "Fjern ubrugelige nul-henvisningstjek"
-
-#: toplev.c:1069
-msgid "Reschedule instructions before register allocation"
-msgstr "Omplanlæg instruktioner før registerallokering"
-
-#: toplev.c:1071
-msgid "Reschedule instructions after register allocation"
-msgstr "Omplanlæg instruktioner efter registerallokering"
-
-#: toplev.c:1073
-msgid "Enable scheduling across basic blocks"
-msgstr "Aktivér planlægning over basisblokke"
-
-#: toplev.c:1075
-msgid "Allow speculative motion of non-loads"
-msgstr "Tillad spekulativ bevægelse af ikke-indlæsninger"
-
-#: toplev.c:1077
-msgid "Allow speculative motion of some loads"
-msgstr "Tillad spekulativ bevægelse af nogle indlæsninger"
-
-#: toplev.c:1079
-msgid "Allow speculative motion of more loads"
-msgstr "Tillad spekulativ bevægelse af flere indlæsninger"
-
-# RETMIG: rigtig?
-#: toplev.c:1081
-msgid "Replace add,compare,branch with branch on count reg"
-msgstr "Erstat tilføj,sammenlign,forgrening med forgrening på tælleregister"
-
-#: toplev.c:1083
-msgid "Generate position independent code, if possible"
-msgstr "Generér placeringsuafhængig kode, om muligt"
-
-#: toplev.c:1086
-msgid "Enable exception handling"
-msgstr "Aktivér undtagelseshåndtering"
-
-#: toplev.c:1088
-msgid "Just generate unwind tables for exception handling"
-msgstr "Generér blot afvindingstabeller for undtagelseshåndtering"
-
-#: toplev.c:1090
-msgid "Generate unwind tables exact at each instruction boundary"
-msgstr "Generér afvindingstabeller eksakt for hver instruktionsgrænse"
-
-#: toplev.c:1092
-msgid "Support synchronous non-call exceptions"
-msgstr "Understøt synkrone ikke-kaldende undtagelser"
-
-#: toplev.c:1094
-msgid "Insert arc based program profiling code"
-msgstr "Indsæt buebaseret programprofileringskode"
-
-#: toplev.c:1096
-msgid "Create data files needed by gcov"
-msgstr "Opret datafiler som gcov har brug for"
-
-#: toplev.c:1098
-msgid "Use profiling information for branch probabilities"
-msgstr "Benyt profileringsoplysninger til forgreningssandsynligheder"
-
-#: toplev.c:1100
-msgid "Enable basic program profiling code"
-msgstr "Aktivér basal programprofileringskode"
-
-#: toplev.c:1102
-msgid "Reorder basic blocks to improve code placement"
-msgstr "Omordn basisblokke for at forbedre kodeplacering"
-
-#: toplev.c:1104
-msgid "Reorder functions to improve code placement"
-msgstr "Omordn funktioner for at forbedre kodeplacering"
-
-#: toplev.c:1106
-msgid "Do the register renaming optimization pass"
-msgstr "Foretag registeromdøbningsoptimering"
-
-#: toplev.c:1108
-msgid "Do the register copy-propagation optimization pass"
-msgstr "Foretag registerkopipropageringsoptimering"
-
-#: toplev.c:1110
-msgid "Do not put uninitialized globals in the common section"
-msgstr "Anbring ikke uklargjorte globale variabler i den fælles sektion"
-
-#: toplev.c:1112
-msgid "Do not generate .size directives"
-msgstr "Generér ikke .size-direktiver"
-
-#: toplev.c:1114
-msgid "place each function into its own section"
-msgstr "placér hver funktion i dens egen sektion"
-
-#: toplev.c:1116
-msgid "place data items into their own section"
-msgstr "placér dataelementer i deres egen sektion"
-
-#: toplev.c:1118
-msgid "Add extra commentary to assembler output"
-msgstr "Tilføj ekstra kommentarer til menneskeligt læsbar maskinkodeuddata"
-
-#: toplev.c:1120
-msgid "Output GNU ld formatted global initializers"
-msgstr "Udskriv GNU ld-formaterede globale startværdier"
-
-#: toplev.c:1122
-msgid "Enables a register move optimization"
-msgstr "Aktivér en registerflytningsoptimering"
-
-#: toplev.c:1124
-msgid "Do the full regmove optimization pass"
-msgstr "Foretag en komplet registerflytningsoptimering"
-
-#: toplev.c:1126
-msgid "Pack structure members together without holes"
-msgstr "Pak strukturmedlemmer sammen uden mellemrum"
-
-#: toplev.c:1128
-msgid "Insert stack checking code into the program"
-msgstr "Indsæt stakkontrolleringskode i programmet"
-
-#: toplev.c:1130
-msgid "Specify that arguments may alias each other & globals"
-msgstr "Angiv at parametre kan være aliaser for hinanden og for globale variable"
-
-#: toplev.c:1132
-msgid "Assume arguments may alias globals but not each other"
-msgstr "Antag at parametre kan være aliaser for globale variable, men ikke for hinanden"
-
-#: toplev.c:1134
-msgid "Assume arguments do not alias each other or globals"
-msgstr "Antag at parametre ikke er aliaser for hinanden eller for globale variable"
-
-#: toplev.c:1136
-msgid "Assume strict aliasing rules apply"
-msgstr "Antag at strenge aliasregler skal anvendes"
-
-#: toplev.c:1138
-msgid "Align the start of loops"
-msgstr "Justér begyndelsen af løkker"
-
-#: toplev.c:1140
-msgid "Align labels which are only reached by jumping"
-msgstr "Justér etiketter som kun nås ved spring"
-
-#: toplev.c:1142
-msgid "Align all labels"
-msgstr "Justér alle etiketter"
-
-#: toplev.c:1144
-msgid "Align the start of functions"
-msgstr "Justér begyndelsen af funktioner"
-
-#: toplev.c:1146
-msgid "Attempt to merge identical constants across compilation units"
-msgstr "Forsøg at forene identiske konstanter over forskellige oversættelsesenheder"
-
-#: toplev.c:1148
-msgid "Attempt to merge identical constants and constant variables"
-msgstr "Forsøg at forene identiske konstanter og konstante variabler"
-
-#: toplev.c:1150
-msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
-msgstr "Undtryk udskrift af instruktionstal og linjenummernoter i fejlfindingsdump"
-
-#: toplev.c:1152
-msgid "Instrument function entry/exit with profiling calls"
-msgstr "Instrumentér funktionsindgange/-afslutninger med profileringskald"
-
-#: toplev.c:1154
-msgid "Put zero initialized data in the bss section"
-msgstr "Anbring nul-klargjorte data i bss-sektionen"
-
-#: toplev.c:1156
-msgid "Enable SSA optimizations"
-msgstr "Aktivér SSA-optimeringer"
-
-#: toplev.c:1158
-msgid "Enable SSA conditional constant propagation"
-msgstr "Aktivér betinget konstant SSA-propagering"
-
-#: toplev.c:1160
-msgid "Enable aggressive SSA dead code elimination"
-msgstr "Aktivér aggressiv SSA-eliminering af ubrugt kode"
-
-#: toplev.c:1162
-msgid "External symbols have a leading underscore"
-msgstr "Eksterne symboler har indledende understreg"
-
-#: toplev.c:1164
-msgid "Process #ident directives"
-msgstr "Behandl #ident-direktiver"
-
-#: toplev.c:1166
-msgid "Enables an rtl peephole pass run before sched2"
-msgstr "Aktivér en RTL-kikhulsfase før sched2"
-
-#: toplev.c:1168
-msgid "Assume no NaNs or +-Infs are generated"
-msgstr "Antag at ingen NaN eller +-Inf bliver genereret"
-
-#: toplev.c:1170
-msgid "Enables guessing of branch probabilities"
-msgstr "Aktivér gæt af forgreningssandsynligheder"
-
-#: toplev.c:1172
-msgid "Set errno after built-in math functions"
-msgstr "Sæt errno efter indbyggede matematikfunktioner"
-
-#: toplev.c:1174
-msgid "Floating-point operations can trap"
-msgstr "Kommatalsoperationer kan fange"
-
-#: toplev.c:1176
-msgid "Allow math optimizations that may violate IEEE or ANSI standards"
-msgstr "Tillad matematikoptimeringer der kan overtræde IEEE- eller ANSI-standarderne"
-
-#: toplev.c:1178
-msgid "Disable optimizations observable by IEEE signaling NaNs"
-msgstr "Deaktivér optimeringer som kan opdages ved IEEE-signalerende NaN'er"
-
-#: toplev.c:1180
-msgid "Generate code to check bounds before indexing arrays"
-msgstr "Generér kode til at kontrollere grænserne før tabeller indekseres"
-
-#: toplev.c:1182
-msgid "Convert floating point constant to single precision constant"
-msgstr "Konvertér kommatalskonstanter til enkeltpræcisionskonstanter"
-
-#: toplev.c:1184
-msgid "Report time taken by each compiler pass at end of run"
-msgstr "Rapportér den tid det tager for hver oversættelsesfase ved afslutningen af kørslen"
-
-#: toplev.c:1186
-msgid "Report on permanent memory allocation at end of run"
-msgstr "Rapportér om permanente hukommelsesallokering ved afslutningen af kørslen"
-
-#: toplev.c:1188
-msgid "Trap for signed overflow in addition / subtraction / multiplication"
-msgstr "Opsæt fælde for overløb med fortegn i addition/subtraktion/multiplikation"
-
-#: toplev.c:1190
-msgid "Use graph coloring register allocation."
-msgstr "Allokér registre vha. graffarvning"
-
-#: toplev.c:1207
-msgid "Compile just for ISO C90"
-msgstr "Oversæt kun til ISO C90"
-
-#: toplev.c:1209
-msgid "Determine language standard"
-msgstr "Bestem sprogstandarden"
-
-#: toplev.c:1213
-msgid "Make bit-fields by unsigned by default"
-msgstr "Lad bitfelter være uden fortegn som standard"
-
-#: toplev.c:1217
-msgid "Make 'char' be signed by default"
-msgstr "Lad 'char' være med fortegn som standard"
-
-#: toplev.c:1219
-msgid "Make 'char' be unsigned by default"
-msgstr "Lad 'char' være uden fortegn som standard"
-
-#: toplev.c:1225
-msgid "Do not recognize the 'asm' keyword"
-msgstr "Genkend ikke det reserverede ord 'asm'"
+#: toplev.c:1226
+#, c-format
+msgid "%s "
+msgstr "%s "
#: toplev.c:1228
-msgid "Do not recognize any built in functions"
-msgstr "Genkend ikke nogen indbyggede funktioner"
-
-#: toplev.c:1230
-msgid "Assume normal C execution environment"
-msgstr "Antag normalt C-kørselsmiljø"
-
-#: toplev.c:1233
-msgid "Assume that standard libraries & main might not exist"
-msgstr "Antag at standardbibliotekerne og main måske ikke eksisterer"
-
-#: toplev.c:1236
-msgid "Allow different types as args of ? operator"
-msgstr "Tillad forskellige typer som parametre til ?-operatoren"
-
-#: toplev.c:1239
-msgid "Allow the use of $ inside identifiers"
-msgstr "Tillad brug af $ inden i kaldenavne"
-
-#: toplev.c:1244
-msgid "Use the same size for double as for float"
-msgstr "Benyt den samme størrelse til double som til float"
-
-#: toplev.c:1247
-msgid "Use the smallest fitting integer to hold enums"
-msgstr "Benyt den mindst mulige størrelse heltal til enum-værdier"
-
-#: toplev.c:1250
-msgid "Override the underlying type for wchar_t to `unsigned short'"
-msgstr "Overskriv den underliggende type af wchar_t til 'unsigned short'"
-
-#: toplev.c:1254
-msgid "Enable most warning messages"
-msgstr "Aktivér de fleste advarselsbeskeder"
-
-#: toplev.c:1256
-msgid "Warn about casting functions to incompatible types"
-msgstr "Advar om omtvingning af funktioner til ikke-kompatible typer"
-
-#: toplev.c:1259
-msgid "Warn about functions which might be candidates for format attributes"
-msgstr "Advar om funktioner som kan være kandidater til formateringsegenskaber"
-
-#: toplev.c:1262
-msgid "Warn about casts which discard qualifiers"
-msgstr "Advar om typeomtvingninger som forkaster modifikationer"
-
-#: toplev.c:1265
-msgid "Warn about subscripts whose type is 'char'"
-msgstr "Advar som tabelindeksering hvis type er 'char'"
-
-#: toplev.c:1268 toplev.c:1271
-msgid "Warn if nested comments are detected"
-msgstr "Advar hvis indlejrede kommentarer mødes"
-
-#: toplev.c:1274
-msgid "Warn about possibly confusing type conversions"
-msgstr "Advar om typekonverteringer der kan være forvirrende"
-
-#: toplev.c:1278
-msgid "Do not warn about compile-time integer division by zero"
-msgstr "Advar ikke om heltalsdivision på oversættelsestidspunktet med nul"
-
-#: toplev.c:1280
-msgid "Warn about testing equality of floating point numbers"
-msgstr "Advar om lighedssammenligninger mellem kommatal"
-
-#: toplev.c:1283
-msgid "Warn about printf/scanf/strftime/strfmon format anomalies"
-msgstr "Advar om printf/scanf/strftime/strfmon-formateringsanormaliteter"
-
-#: toplev.c:1287
-msgid "Don't warn about too many arguments to format functions"
-msgstr "Advar ikke om for mange parametre til formateringsfunktioner"
-
-#: toplev.c:1289
-msgid "Warn about non-string-literal format strings"
-msgstr "Advar om formateringsstrenge der ikke er strengkonstanter"
-
-#: toplev.c:1292
-msgid "Warn about possible security problems with format functions"
-msgstr "Advar om mulige sikkerhedsproblemer i forbindelse med formateringsfunktioner"
-
-#: toplev.c:1296
-msgid "Don't warn about strftime formats yielding 2 digit years"
-msgstr "Advar ikke om strftime-formateringer med 2-cifres år"
-
-#: toplev.c:1298
-msgid "Warn about implicit function declarations"
-msgstr "Advar om underforståede funktionserklæringer"
-
-#: toplev.c:1302
-msgid "Warn when a declaration does not specify a type"
-msgstr "Advar når en erklæring ikke angiver en type"
-
-#: toplev.c:1307
-msgid "Warn about the use of the #import directive"
-msgstr "Advar om brug af #import-direktivet"
-
-#: toplev.c:1311
-msgid "Do not warn about using 'long long' when -pedantic"
-msgstr "Advar ikke om brug af 'long long' når -pedantic benyttes"
-
-#: toplev.c:1313
-msgid "Warn about suspicious declarations of main"
-msgstr "Advar om mistænkelige erklæringer af main"
-
-#: toplev.c:1316
-msgid "Warn about possibly missing braces around initializers"
-msgstr "Advar om mulige manglende krøllede paranteser omkring startværdier"
-
-#: toplev.c:1319
-msgid "Warn about global funcs without previous declarations"
-msgstr "Advar om globale funktioner uden tidligere erklæringer"
-
-#: toplev.c:1322
-msgid "Warn about global funcs without prototypes"
-msgstr "Advar om globale funktioner uden prototyper"
-
-#: toplev.c:1325
-msgid "Warn about use of multicharacter literals"
-msgstr "Advar om brug af multitegnskonstanter"
-
-#: toplev.c:1328
-msgid "Warn about externs not at file scope level"
-msgstr "Advar om extern-erklæringer som ikke er ved filvirkefeltsniveauet"
-
-#: toplev.c:1331
-msgid "Warn about possible missing parentheses"
-msgstr "Advar om mulige manglende paranteser"
-
-#: toplev.c:1334
-msgid "Warn about function pointer arithmetic"
-msgstr "Advar om beregninger på funktionshenvisninger"
-
-#: toplev.c:1337
-msgid "Warn about multiple declarations of the same object"
-msgstr "Advar om flere erklæring af det samme objekt"
-
-#: toplev.c:1340
-msgid "Warn whenever a function's return-type defaults to int"
-msgstr "Advar når en funktions returtype antages at være int"
-
-#: toplev.c:1343
-msgid "Warn about possible violations of sequence point rules"
-msgstr "Advar om mulige brud på sekvenspunktreglerne"
-
-#: toplev.c:1346
-msgid "Warn about signed/unsigned comparisons"
-msgstr "Advar om sammenligninger mellem typer med og uden fortegn"
-
-#: toplev.c:1349
-msgid "Warn about non-prototyped function decls"
-msgstr "Advar om funktionserklæringer uden prototype"
-
-#: toplev.c:1352
-msgid "Warn about constructs whose meanings change in ISO C"
-msgstr "Advar om konstruktioner hvis betydning er ændret i ISO C"
-
-#: toplev.c:1355
-msgid "Warn when trigraphs are encountered"
-msgstr "Advar når trigrafer mødes"
-
-#: toplev.c:1360
-msgid "Warn about unrecognized pragmas"
-msgstr "Advar om ukendte pragmaer"
-
-#: toplev.c:1363
-msgid "Mark strings as 'const char *'"
-msgstr "Markér strenge som 'const char *'"
-
-#: toplev.c:1508
-msgid "Warn when a function is unused"
-msgstr "Advar når en funktion ikke benyttes"
-
-#: toplev.c:1510
-msgid "Warn when a label is unused"
-msgstr "Advar når en etiket ikke benyttes"
-
-#: toplev.c:1512
-msgid "Warn when a function parameter is unused"
-msgstr "Advar når en funktionsparameter ikke benyttes"
-
-#: toplev.c:1514
-msgid "Warn when a variable is unused"
-msgstr "Advar når en variabel ikke benyttes"
-
-#: toplev.c:1516
-msgid "Warn when an expression value is unused"
-msgstr "Advar når værdien af et udtryk ikke benyttes"
-
-#: toplev.c:1518
-msgid "Do not suppress warnings from system headers"
-msgstr "Undertryk ikke advarsler fra systeminkluderingsfiler"
-
-#: toplev.c:1520
-msgid "Treat all warnings as errors"
-msgstr "Behandl alle advarsler som fejl"
-
-#: toplev.c:1522
-msgid "Warn when one local variable shadows another"
-msgstr "Advar når en lokal variabel skygger for en anden"
-
-#: toplev.c:1524
-msgid "Warn about enumerated switches, with no default, missing a case"
-msgstr "Advar om switch-sætninger over enum-typer som mangler et tilfælde og ikke har default"
-
-#: toplev.c:1526
-msgid "Warn about enumerated switches missing a default case"
-msgstr "Advar om switch-sætninger over enum-typer som mangler default"
-
-#: toplev.c:1528
-msgid "Warn about all enumerated switches missing a specific case"
-msgstr "Advar om alle switch-sætninger over enum-typer som mangler et bestemt tilfælde"
-
-#: toplev.c:1530
-msgid "Warn about returning structures, unions or arrays"
-msgstr "Advar om returnering af struct, union og tabeller"
-
-#: toplev.c:1532
-msgid "Warn about pointer casts which increase alignment"
-msgstr "Advar om typeomtvingning af henvisninger som forøger justeringen"
-
-#: toplev.c:1534
-msgid "Warn about code that will never be executed"
-msgstr "Advar om kode som aldrig bliver udført"
-
-#: toplev.c:1536
-msgid "Warn about uninitialized automatic variables"
-msgstr "Advar om ikke-klargjorte automatiske variabler"
-
-#: toplev.c:1538
-msgid "Warn when an inlined function cannot be inlined"
-msgstr "Advar når en inline funktion ikke kan indbygges"
-
-#: toplev.c:1540
-msgid "Warn when the packed attribute has no effect on struct layout"
-msgstr "Advar når packed-egenskaben ikke har nogen effekt på struct-layoutet"
-
-#: toplev.c:1542
-msgid "Warn when padding is required to align struct members"
-msgstr "Advar når udfyldning er påkrævet for at justere struct-medlemmer"
-
-#: toplev.c:1544
-msgid "Warn when an optimization pass is disabled"
-msgstr "Advar når en optimeringsfase deaktiveres"
-
-#: toplev.c:1546
-msgid "Warn about uses of __attribute__((deprecated)) declarations"
-msgstr "Advar om brug af __attribute__((deprecated))-erklæringer"
-
-#: toplev.c:1548
-msgid "Warn about functions which might be candidates for attribute noreturn"
-msgstr "Advar om funktioner som kan være kandidater til egenskaben noreturn"
+#, c-format
+msgid " %s"
+msgstr " %s"
-#: toplev.c:1550
-msgid "Warn about code which might break the strict aliasing rules"
-msgstr "Advar om kode som kan bryde strenge aliasregler"
+#: toplev.c:1293
+#, fuzzy, c-format
+msgid "invalid option argument `%s'"
+msgstr "ugyldigt tilvalg '%s'"
-#: toplev.c:1627 toplev.c:4548 config/rs6000/rs6000.c:680
+#: toplev.c:1356
#, c-format
-msgid "invalid option `%s'"
-msgstr "ugyldigt tilvalg '%s'"
+msgid "getting core file size maximum limit: %m"
+msgstr ""
-#: toplev.c:2031
+#: toplev.c:1359
#, c-format
-msgid "`%s' used but never defined"
+msgid "setting core file size limit to maximum: %m"
+msgstr ""
+
+#: toplev.c:1678
+#, fuzzy
+msgid "%J'%F' used but never defined"
msgstr "'%s' brugt, men aldrig defineret"
-#: toplev.c:2034
-#, c-format
-msgid "`%s' declared `static' but never defined"
+#: toplev.c:1680
+#, fuzzy
+msgid "%J'%F' declared `static' but never defined"
msgstr "'%s' erklæret 'static', men aldrig defineret"
-#: toplev.c:2057
-#, c-format
-msgid "`%s' defined but not used"
+#: toplev.c:1705
+#, fuzzy
+msgid "%J'%D' defined but not used"
msgstr "'%s' defineret, men aldrig brugt"
-#: toplev.c:2280
+#: toplev.c:1726 toplev.c:1743
#, c-format
-msgid "invalid register name `%s' for register variable"
-msgstr "ugyldigt registernavn '%s' for registervariabel"
-
-#: toplev.c:3697
-msgid " -ffixed-<register> Mark <register> as being unavailable to the compiler\n"
-msgstr " -ffixed-<register> Markér <register> som værende utilgængeligt for oversætteren\n"
-
-#: toplev.c:3698
-msgid " -fcall-used-<register> Mark <register> as being corrupted by function calls\n"
-msgstr " -fcall-used-<register> Markér <register> som værende benyttet af funktionskald\n"
-
-#: toplev.c:3699
-msgid " -fcall-saved-<register> Mark <register> as being preserved across functions\n"
-msgstr " -fcall-saved-<register> Markér <register> som værende bevaret over funktioner\n"
-
-#: toplev.c:3700
-msgid " -finline-limit=<number> Limits the size of inlined functions to <number>\n"
-msgstr " -finline-limit=<str> Begræns størrelsen af inlie funktion til <str>\n"
-
-#: toplev.c:3701
-msgid " -fmessage-length=<number> Limits diagnostics messages lengths to <number> characters per line. 0 suppresses line-wrapping\n"
-msgstr " -fmessage-length=<antal> Begræns længden af diagnosticeringmeddelelser til længden <antal> tegn/linje. 0 undertrykker linjeombrydning\n"
-
-#: toplev.c:3702
-msgid " -fdiagnostics-show-location=[once | every-line] Indicates how often source location information should be emitted, as prefix, at the beginning of diagnostics when line-wrapping\n"
-msgstr " -fdiagnostics-show-location=[once | every-line] Indikerer hvor ofte kildeplaceringsoplysninger skal udsendes som præfiks til begyndelsen af meddelelserne ved linjeombrydning\n"
-
-#: toplev.c:3703
-msgid " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indicates the default thread-local storage code generation model\n"
-msgstr " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indikerer den forvalgte tråd-lokale lagringsmodel for kodegenerering\n"
-
-#: toplev.c:3704
-msgid " -fstack-limit-register=<register> Trap if the stack goes past <register>\n"
-msgstr ""
-
-#: toplev.c:3705
-msgid " -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>\n"
-msgstr ""
-
-#: toplev.c:3706
-msgid " -frandom-seed=<string> Make compile reproducible using <string>\n"
-msgstr ""
-
-#: toplev.c:3718
-msgid " -O[number] Set optimization level to [number]\n"
-msgstr " -O[tal] Sæt optimeringsniveauet til [tal]\n"
-
-#: toplev.c:3719
-msgid " -Os Optimize for space rather than speed\n"
-msgstr " -Os Optimér mht. plads i stedet for hastighed\n"
-
-#: toplev.c:3731
-msgid " -pedantic Issue warnings needed by strict compliance to ISO C\n"
-msgstr " -pedantic Udsend advarsler som er nødvendige for streng overholdelse af ISO C\n"
-
-#: toplev.c:3732
-msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
-msgstr " -pedantic-errors Som -pedantic bortset fra at problemer bliver til fejl\n"
-
-#: toplev.c:3733
-msgid " -w Suppress warnings\n"
-msgstr " -w Undertryk advarsler\n"
-
-#: toplev.c:3734
-msgid " -W Enable extra warnings\n"
-msgstr " -W Aktivér ekstra advarsler\n"
-
-#: toplev.c:3745
-msgid " -Wunused Enable unused warnings\n"
-msgstr " -Wunused Aktivér ubrugthedsadvarsler\n"
-
-#: toplev.c:3746
-msgid " -Wlarger-than-<number> Warn if an object is larger than <number> bytes\n"
-msgstr " -Wlarger-than-<tal> Advar hvis et objekt er større end <tal> byte\n"
-
-#: toplev.c:3747
-msgid " -p Enable function profiling\n"
-msgstr " -p Aktivér funktionsprofilering\n"
-
-#: toplev.c:3748
-msgid " -o <file> Place output into <file> \n"
-msgstr " -o <fil> Anbring uddata i <fil>\n"
-
-#: toplev.c:3749
-msgid ""
-" -G <number> Put global and static data smaller than <number>\n"
-" bytes into a special section (on some targets)\n"
-msgstr " -G <str> Anbring globale og statiske data mindre end <tal> byte i en specialsektion (på nogle målarkitekturer)\n"
-
-#: toplev.c:3760
-msgid " -aux-info <file> Emit declaration info into <file>\n"
-msgstr " -aux-info <fil> Udskriv erklæringsoplysninger til <fil>\n"
-
-#: toplev.c:3761
-msgid " -quiet Do not display functions compiled or elapsed time\n"
-msgstr " -quiet Vis ikke funktioner der oversættes eller forløbet tid\n"
-
-#: toplev.c:3762
-msgid " -version Display the compiler's version\n"
-msgstr " -version Udskriv oversætterens version\n"
-
-#: toplev.c:3763
-msgid " -d[letters] Enable dumps from specific passes of the compiler\n"
-msgstr " -d[bogstaver] Aktivér dump fra specifikke faser i oversætteren\n"
-
-#: toplev.c:3764
-msgid " -dumpbase <file> Base name to be used for dumps from specific passes\n"
-msgstr " -dumpbase <fil> Basisnavn til brug for dump fra specifikke faser\n"
+msgid "`%s' is deprecated (declared at %s:%d)"
+msgstr "'%s' er forældet (erklæret ved %s:%d)"
-#: toplev.c:3766
-msgid " -fsched-verbose=<number> Set the verbosity level of the scheduler\n"
-msgstr " -fsched-verbose=<tal> Angiv hvor meget planlæggeren skal fortælle\n"
+#: toplev.c:1746
+#, c-format
+msgid "`%s' is deprecated"
+msgstr "'%s' er forældet"
-#: toplev.c:3768
-msgid " --help Display this information\n"
-msgstr " --help Vis disse oplysninger\n"
+#: toplev.c:1749
+#, c-format
+msgid "type is deprecated (declared at %s:%d)"
+msgstr "type er forældet (erklæret ved %s:%d)"
-#: toplev.c:3783
-msgid ""
-"\n"
-"Language specific options:\n"
-msgstr ""
-"\n"
-"Sprogspecifikke tilvalg:\n"
+#: toplev.c:1752
+msgid "type is deprecated"
+msgstr "type er forældet"
-#: toplev.c:3795
+#: toplev.c:1956
#, c-format
-msgid " %-23.23s [undocumented]\n"
-msgstr " %-23.23s [ikke dokumenteret]\n"
+msgid "invalid register name `%s' for register variable"
+msgstr "ugyldigt registernavn '%s' for registervariabel"
-# %s er et sprog
-#: toplev.c:3803 toplev.c:3817
-#, c-format
-msgid ""
-"\n"
-"There are undocumented %s specific options as well.\n"
+#: toplev.c:3522
+msgid "branch target register load optimization is not intended to be run twice"
msgstr ""
-"\n"
-"Der er også ikke-dokumenterede specifikke tilvalg til %s.\n"
-#: toplev.c:3807
+#: toplev.c:3689
#, c-format
msgid ""
"\n"
-" Options for %s:\n"
-msgstr ""
-"\n"
-" Tilvalg til %s:\n"
-
-#: toplev.c:3844
-msgid ""
-"\n"
"Target specific options:\n"
msgstr ""
"\n"
"Målspecifikke tilvalg:\n"
-#: toplev.c:3858 toplev.c:3877
-#, c-format
-msgid " -m%-23.23s [undocumented]\n"
+#: toplev.c:3703 toplev.c:3722
+#, fuzzy, c-format
+msgid " -m%-23s [undocumented]\n"
msgstr " -m%-23.23s [ikke dokumenteret]\n"
-#: toplev.c:3886
+#: toplev.c:3731
+#, c-format
msgid ""
"\n"
"There are undocumented target specific options as well.\n"
@@ -8106,73 +7200,22 @@ msgstr ""
"\n"
"Der er også ikke-dokumenterede målspecifikke tilvalg.\n"
-#: toplev.c:3888
+#: toplev.c:3733
+#, c-format
msgid " They exist, but they are not documented.\n"
msgstr " De eksisterer, men er ikke dokumenteret.\n"
-#: toplev.c:3941
+#: toplev.c:3788
#, c-format
msgid "unrecognized gcc debugging option: %c"
msgstr "ukendt GCC-fejlfindingstilvalg: %c"
-#: toplev.c:4007
-#, c-format
-msgid "`%s': unknown tls-model option"
-msgstr "'%s': ukendt tls-model-tilvalg"
-
-#: toplev.c:4034
-#, c-format
-msgid "unrecognized register name `%s'"
-msgstr "ukendt registernavn '%s'"
-
-#: toplev.c:4059 toplev.c:5012
-#, c-format
-msgid "unrecognized option `%s'"
-msgstr "ukendt tilvalg '%s'"
-
-#: toplev.c:4107
-msgid "-Wid-clash-LEN is no longer supported"
-msgstr "-Wid-clash-LEN understøttes ikke længere"
-
-#: toplev.c:4184
-#, c-format
-msgid "use -gdwarf -g%d for DWARF v1, level %d"
-msgstr "benyt - gdwarf -g%d til DWARF v1, niveau %d"
-
-#: toplev.c:4187
-msgid "use -gdwarf-2 for DWARF v2"
-msgstr "benyt -gdwarf-2 til DWARF v2"
-
-#: toplev.c:4192
-#, c-format
-msgid "ignoring option `%s' due to invalid debug level specification"
-msgstr "ignorerer tilvalget '%s' på grund af ugyldig specifikation af fejlfindingsniveau"
-
-#: toplev.c:4215 toplev.c:5010
-#, c-format
-msgid "`%s': unknown or unsupported -g option"
-msgstr "'%s': ukendt eller ikke-understøttet '-g'-tilvalg"
-
-#: toplev.c:4222
-#, c-format
-msgid "`%s' ignored, conflicts with `-g%s'"
-msgstr "'%s' ignoreret, er i konflikt med '-g%s'"
-
-#: toplev.c:4304
-msgid "-param option missing argument"
-msgstr "'-param'-tilvalg mangler parameter"
-
-#: toplev.c:4313
-#, c-format
-msgid "invalid --param option: %s"
-msgstr "ugyldigt '--param'-tilvalg: %s"
-
-#: toplev.c:4325
+#: toplev.c:3850 config/rs6000/rs6000.c:909
#, c-format
-msgid "invalid parameter value `%s'"
-msgstr "ugyldig parameterværdi '%s'"
+msgid "invalid option `%s'"
+msgstr "ugyldigt tilvalg '%s'"
-#: toplev.c:4565
+#: toplev.c:3865
#, c-format
msgid ""
"%s%s%s version %s (%s)\n"
@@ -8183,242 +7226,345 @@ msgstr ""
"%s\toversat af GNU C version %s.\n"
"%s%s%s version %s (%s) oversat af CC.\n"
-#: toplev.c:4572
+#: toplev.c:3872
#, c-format
msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
msgstr "%s%sGGC-heuristikker: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
-#: toplev.c:4630
+#: toplev.c:3924
msgid "options passed: "
msgstr "tilvalg overbragt: "
-#: toplev.c:4659
+#: toplev.c:3953
msgid "options enabled: "
msgstr "tilvalg slået til: "
-#: toplev.c:4718 java/jcf-write.c:3453
-#, c-format
-msgid "can't open %s for writing"
+#: toplev.c:4011 java/jcf-write.c:3422
+#, fuzzy, c-format
+msgid "can't open %s for writing: %m"
msgstr "kan ikke åbne '%s' til skrivning"
-#: toplev.c:5002
-#, c-format
-msgid "ignoring command line option '%s'"
-msgstr "ignorerer kommandolinjetilvalget '%s'"
+#: toplev.c:4094 config/sh/sh.c:6883
+msgid "created and used with different settings of -fpic"
+msgstr ""
+
+#: toplev.c:4096 config/sh/sh.c:6885
+msgid "created and used with different settings of -fpie"
+msgstr ""
-#: toplev.c:5005
+#: toplev.c:4147 config/sh/sh.c:6935
#, c-format
-msgid "(it is valid for %s but not the selected language)"
-msgstr "(det er gyldigt for %s, men ikke for det valgte sprog)"
+msgid "created and used with differing settings of `-m%s'"
+msgstr ""
-#: toplev.c:5039
-msgid "-Wuninitialized is not supported without -O"
-msgstr "-Wuninitialized understøttes ikke uden -O"
+#: toplev.c:4150 config/sh/sh.c:6938
+msgid "out of memory"
+msgstr ""
-#: toplev.c:5094
+#: toplev.c:4331
msgid "instruction scheduling not supported on this target machine"
msgstr "instruktionsplanlægning understøttes ikke på målarkitekturen"
-#: toplev.c:5098
+#: toplev.c:4335
msgid "this target machine does not have delayed branches"
msgstr "målarkitekturen har ikke forsinkede forgreninger"
-#: toplev.c:5112
+#: toplev.c:4349
#, c-format
msgid "-f%sleading-underscore not supported on this target machine"
msgstr "-f%sleading-underscore understøttes ikke på målarkitekturen"
-#: toplev.c:5175
+#: toplev.c:4398
+#, fuzzy, c-format
+msgid "target system does not support the \"%s\" debug format"
+msgstr "%s understøtter ikke '%%%s%c' %s-formateringen"
+
+#: toplev.c:4415
msgid "-ffunction-sections not supported for this target"
msgstr "-ffunction-sections understøttes ikke på målarkitekturen"
-#: toplev.c:5180
+#: toplev.c:4420
msgid "-fdata-sections not supported for this target"
msgstr "-fdata-sections understøttes ikke på målarkitekturen"
-#: toplev.c:5187
+#: toplev.c:4427
msgid "-ffunction-sections disabled; it makes profiling impossible"
msgstr "-ffunction-sections deaktiveret; dette gør profilering umulig"
-#: toplev.c:5194
+#: toplev.c:4434
msgid "-fprefetch-loop-arrays not supported for this target"
msgstr "-fprefetch-loop-arrays understøttes ikke på målarkitekturen"
-#: toplev.c:5200
+#: toplev.c:4440
msgid "-fprefetch-loop-arrays not supported for this target (try -march switches)"
msgstr "-fprefetch-loop-arrays understøttes ikke på målarkitekturen (prøv '-march'-tilvalgene)"
-#: toplev.c:5209
+#: toplev.c:4449
msgid "-fprefetch-loop-arrays is not supported with -Os"
msgstr "-fprefetch-loop-arrays understøttes ikke med -Os"
-#: toplev.c:5215
+#: toplev.c:4455
msgid "-ffunction-sections may affect debugging on some targets"
msgstr "-ffunction-sections kan have indflydelse på fejlfinding på nogle målarkitekturer"
-#: toplev.c:5327
-#, c-format
-msgid "error writing to %s"
+#: toplev.c:4557
+#, fuzzy, c-format
+msgid "error writing to %s: %m"
msgstr "fejl ved skrivning til %s"
-#: toplev.c:5329 java/jcf-parse.c:936 java/jcf-write.c:3460
-#, c-format
-msgid "error closing %s"
+#: toplev.c:4559 java/jcf-parse.c:902 java/jcf-write.c:3429
+#, fuzzy, c-format
+msgid "error closing %s: %m"
msgstr "fejl ved lukning af %s"
-#: tree-dump.c:702
+#: tree-dump.c:692
#, c-format
msgid "could not open dump file `%s'"
msgstr "kunne ikke åbne dumpningsfilen '%s'"
-#: tree-dump.c:778
-#, c-format
-msgid "ignoring unknown option `%.*s' in `-f%s'"
+#: tree-dump.c:763
+#, fuzzy, c-format
+msgid "ignoring unknown option `%.*s' in `-fdump-%s'"
msgstr "ignorerer ukendt tilvalg '%.*s' i '-f%s'"
-#: tree.c:3645
+#: tree-inline.c:1016
+msgid "%Jfunction '%F' can never be inlined because it uses alloca (override using the always_inline attribute)"
+msgstr ""
+
+#: tree-inline.c:1029
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp"
+msgstr ""
+
+#: tree-inline.c:1044
+msgid "%Jfunction '%F' can never be inlined because it uses variable argument lists"
+msgstr ""
+
+#: tree-inline.c:1060
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp-longjmp exception handling"
+msgstr ""
+
+#: tree-inline.c:1078
+msgid "%Jfunction '%F' can never be inlined because it contains a nested function"
+msgstr ""
+
+#: tree-inline.c:1095
+msgid "%Jfunction '%F' can never be inlined because it contains a computed goto"
+msgstr ""
+
+#: tree-inline.c:1105
+msgid "%Jfunction '%F' can never be inlined because it contains a nonlocal goto"
+msgstr ""
+
+#: tree-inline.c:1128
+msgid "%Jfunction '%F' can never be inlined because it uses variable sized variables"
+msgstr ""
+
+#: tree-inline.c:1338 tree-inline.c:1345
+#, fuzzy
+msgid "%Jinlining failed in call to '%F': %s"
+msgstr "indlejring mislykkedes i kald til '%s'"
+
+#: tree-optimize.c:190
+#, fuzzy
+msgid "%Jsize of return value of '%D' is %u bytes"
+msgstr "størrelsen af returtypen til '%s' er %u byte"
+
+#: tree-optimize.c:193
+#, fuzzy
+msgid "%Jsize of return value of '%D' is larger than %wd bytes"
+msgstr "størrelsen af returtypen til '%s' er større end %d byte"
+
+#: tree.c:3800
msgid "arrays of functions are not meaningful"
msgstr "en tabel af funktioner giver ikke mening"
-#: tree.c:3702
+#: tree.c:3855
msgid "function return type cannot be function"
msgstr "en funktions returtype kan ikke være en funktion"
-#: tree.c:4557
+#: tree.c:4684
msgid "invalid initializer for bit string"
msgstr "ugyldig startværdi til bitstreng"
-#: tree.c:4616
+#: tree.c:4736
#, c-format
msgid "tree check: expected %s, have %s in %s, at %s:%d"
msgstr "træ-kontrol: forventede %s, har %s i %s, ved %s:%d"
-#: tree.c:4633
+#: tree.c:4749
#, c-format
msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d"
msgstr "træ-kontrol: forventede klasse '%c', har '%c' (%s) i %s, ved %s:%d"
-#: tree.c:4650
+#: tree.c:4762
#, c-format
msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
msgstr "RTL-kontrol: tilgik udtrykstræ %d af tree_vec med %d udtrykstræer i %s, ved %s:%d"
-#: varasm.c:455 config/i386/winnt.c:611
-#, c-format
-msgid "%s causes a section type conflict"
+#: tree.c:4774
+#, fuzzy, c-format
+msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
+msgstr "RTL-kontrol: tilgik udtrykstræ %d af tree_vec med %d udtrykstræer i %s, ved %s:%d"
+
+#: varasm.c:434
+#, fuzzy
+msgid "%J%D causes a section type conflict"
msgstr "%s forårsager en sektionstypekonflikt"
-#: varasm.c:841
-#, c-format
-msgid "register name not specified for `%s'"
+#: varasm.c:796
+#, fuzzy
+msgid "%Jregister name not specified for '%D'"
msgstr "registernavn ikke angivet for '%s'"
-#: varasm.c:843
-#, c-format
-msgid "invalid register name for `%s'"
+#: varasm.c:798
+#, fuzzy
+msgid "%Jinvalid register name for '%D'"
msgstr "ugyldigt registernavn for '%s'"
-#: varasm.c:846
-#, c-format
-msgid "data type of `%s' isn't suitable for a register"
+#: varasm.c:800
+#, fuzzy
+msgid "%Jdata type of '%D' isn't suitable for a register"
msgstr "datatypen for '%s' passer ikke med et register"
-#: varasm.c:849
-#, c-format
-msgid "register specified for `%s' isn't suitable for data type"
+#: varasm.c:803
+#, fuzzy
+msgid "%Jregister specified for '%D' isn't suitable for data type"
msgstr "registeret som er angivet for '%s' passer ikke med datatypen"
-#: varasm.c:858
+#: varasm.c:813
msgid "global register variable has initial value"
msgstr "global registervariabel har en startværdi"
-#: varasm.c:861
+#: varasm.c:816
msgid "volatile register variables don't work as you might wish"
msgstr "registervariable erklæret volatile virker ikke som du måske ønsker"
-#: varasm.c:894
-#, c-format
-msgid "register name given for non-register variable `%s'"
+#: varasm.c:848
+#, fuzzy
+msgid "%Jregister name given for non-register variable '%D'"
msgstr "registernavn givet for ikke-registervariablen '%s'"
-#: varasm.c:1542
-#, c-format
-msgid "alignment of `%s' is greater than maximum object file alignment. Using %d"
+#: varasm.c:1380
+#, fuzzy
+msgid "%Jstorage size of `%D' isn't known"
+msgstr "lagringsstørrelsen af '%D' er ikke kendt"
+
+#: varasm.c:1434
+#, fuzzy
+msgid "%Jalignment of '%D' is greater than maximum object file alignment. Using %d"
msgstr "justering af '%s' er større end den maksimale objektfilsjustering - bruger %d"
-#: varasm.c:1584
+#: varasm.c:1480
msgid "thread-local COMMON data not implemented"
msgstr "tråd-lokal COMMON-data er ikke implementeret"
-#: varasm.c:1610
-#, c-format
-msgid "requested alignment for %s is greater than implemented alignment of %d"
+#: varasm.c:1505
+#, fuzzy
+msgid "%Jrequested alignment for '%D' is greater than implemented alignment of %d"
msgstr "forespurgt justering for %s er større end den implementerede justering af %d"
-#: varasm.c:4048
+#: varasm.c:3787
msgid "initializer for integer value is too complicated"
msgstr "startværdien for heltallet er for kompliceret"
-#: varasm.c:4053
+#: varasm.c:3792
msgid "initializer for floating value is not a floating constant"
msgstr "startværdien for kommatal er ikke en kommatalskonstant"
-#: varasm.c:4120
+#: varasm.c:3858
msgid "unknown set constructor type"
msgstr "ukendt mængdekonstruktionstype"
-#: varasm.c:4334
+#: varasm.c:4077
#, c-format
msgid "invalid initial value for member `%s'"
msgstr "ugyldig startværdi for medlemmet '%s'"
-#: varasm.c:4525 varasm.c:4568
-#, c-format
-msgid "weak declaration of `%s' must precede definition"
+#: varasm.c:4264 varasm.c:4308
+#, fuzzy
+msgid "%Jweak declaration of '%D' must precede definition"
msgstr "svag erklæring af '%s' skal komme før definitionen"
-#: varasm.c:4532
-#, c-format
-msgid "weak declaration of `%s' after first use results in unspecified behavior"
+#: varasm.c:4272
+#, fuzzy
+msgid "%Jweak declaration of '%D' after first use results in unspecified behavior"
msgstr "svag erklæring af '%s' efter første brug resulterer i ikke-defineret opførsel"
-#: varasm.c:4566
-#, c-format
-msgid "weak declaration of `%s' must be public"
+#: varasm.c:4306
+#, fuzzy
+msgid "%Jweak declaration of '%D' must be public"
msgstr "svag erklæring af '%s' skal være public"
-#: varasm.c:4575
-#, c-format
-msgid "weak declaration of `%s' not supported"
+#: varasm.c:4315
+#, fuzzy
+msgid "%Jweak declaration of '%D' not supported"
msgstr "svag erklæring af '%s' ikke understøttet"
-#: varasm.c:4602 varasm.c:4677
+#: varasm.c:4344 varasm.c:4434
msgid "only weak aliases are supported in this configuration"
msgstr "kun svage aliaser understøttes i denne konfiguration"
-#: varasm.c:4685
+#: varasm.c:4437
msgid "alias definitions not supported in this configuration; ignored"
msgstr "aliasdefinitioner er ikke understøttet i denne konfiguration; ignoreret"
-#: varasm.c:4716
+#: varasm.c:4466
msgid "visibility attribute not supported in this configuration; ignored"
msgstr "synlighedsegenskab er ikke understøttet i denne konfiguration; ignoreret"
-#: varray.c:134
+#: varray.c:194
#, c-format
msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d"
msgstr "virtuel tabel %s[%lu]: element %lu ude over grænserne i %s, ved %s:%d"
+#: varray.c:204
+#, fuzzy, c-format
+msgid "underflowed virtual array %s in %s, at %s:%d"
+msgstr "Intern oversætterfejl i %s ved %s:%d."
+
#. Print an error message for unrecognized stab codes.
-#: xcoffout.c:175
+#: xcoffout.c:173
#, c-format
msgid "no sclass for %s stab (0x%x)\n"
msgstr "ingen sclass for %s stab (0x%x)\n"
-#: pretty-print.h:97
-#, c-format
-msgid "#`%s' not supported by %s#"
-msgstr "#'%s' ikke understøttet af %s#"
+#.
+#. Local variables:
+#. mode:c
+#. End:
+#.
+#: diagnostic.def:1
+#, fuzzy
+msgid "fatal error: "
+msgstr "intern fejl: "
+
+#: diagnostic.def:2
+#, fuzzy
+msgid "internal compiler error: "
+msgstr "intern fejl: "
+
+#: diagnostic.def:3
+#, fuzzy
+msgid "error: "
+msgstr "intern fejl: "
+
+#: diagnostic.def:4
+#, fuzzy
+msgid "sorry, unimplemented: "
+msgstr "desværre, ikke implementeret: "
+
+#: diagnostic.def:6
+msgid "anachronism: "
+msgstr ""
+
+#: diagnostic.def:7
+#, fuzzy
+msgid "note: "
+msgstr "bemærk:"
+
+#: diagnostic.def:8
+msgid "debug: "
+msgstr ""
#: params.def:53
msgid "The maximum number of instructions in a single function eligible for inlining"
@@ -8428,277 +7574,352 @@ msgstr "Det maksimale antal instruktioner i en enkelt funktion der må indbygges"
msgid "The maximum number of instructions when automatically inlining"
msgstr "Det maksimale antal instruktioner ved automatisk indbygning"
-#: params.def:84
-msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
-msgstr "Det maksimale antal instruktioner ved gentagen indbygning før GCC dæmper indbygningen"
-
-#: params.def:97
-msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
-msgstr "Hældningen af den lineære funktion der dæmper indbygning efter at den rekursive indbygningsgrænse er nået, er givet ved den negative, reciprokke værdi af denne parameter"
-
-#: params.def:110
-msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
-msgstr "Antallet af instruktioner i en enkelt funktion der stadig indbygges efter megen rekursiv indbygning"
-
-#: params.def:120
+#: params.def:75
msgid "The maximum number of instructions for the RTL inliner"
msgstr "Det maksimale antal instruktioner til RTL-indbyggeren"
-#: params.def:131
+#: params.def:86
msgid "The maximum number of instructions to consider to fill a delay slot"
msgstr "Det maksimale antal instruktioner det overvejes at udfylde ventepladser med"
-#: params.def:142
+#: params.def:97
msgid "The maximum number of instructions to consider to find accurate live register information"
msgstr "Det maksimale antal instruktioner der overvejes under søgning efter præcis registerinfo"
-#: params.def:152
+#: params.def:107
msgid "The maximum length of scheduling's pending operations list"
msgstr "Den maksimale længde af planlæggerens liste over ventende operationer"
-#: params.def:159
+#: params.def:112
+msgid "The size of function body to be considered large"
+msgstr ""
+
+#: params.def:116
+#, fuzzy
+msgid "Maximal growth due to inlining of large function (in percent)"
+msgstr "Maksimal kodevækst forårsaget af haleduplikering (i procent)"
+
+#: params.def:120
+msgid "how much can given compilation unit grow because of the inlining (in percent)"
+msgstr ""
+
+#: params.def:127
msgid "The maximum amount of memory to be allocated by GCSE"
msgstr "Den maksimale mængde hukommelse som skal allokeres af GCSE"
-#: params.def:164
+#: params.def:132
msgid "The maximum number of passes to make when doing GCSE"
msgstr "Det maksimale antal faser der skal gennemgås ved udførsel af GCSE"
-#: params.def:171
+#: params.def:139
msgid "The maximum number of instructions to consider to unroll in a loop"
msgstr "Det maksimale antal instruktioner der overvejes at udrulle i en løkke"
-#: params.def:176
+#: params.def:145
+#, fuzzy
+msgid "The maximum number of instructions to consider to unroll in a loop on average"
+msgstr "Det maksimale antal instruktioner der overvejes at udrulle i en løkke"
+
+#: params.def:150
+#, fuzzy
+msgid "The maximum number of unrollings of a single loop"
+msgstr "Det maksimale antal instruktioner til RTL-indbyggeren"
+
+#: params.def:155
+#, fuzzy
+msgid "The maximum number of insns of a peeled loop"
+msgstr "Det maksimale antal instruktioner det overvejes at udfylde ventepladser med"
+
+#: params.def:160
+#, fuzzy
+msgid "The maximum number of peelings of a single loop"
+msgstr "Det maksimale antal faser der skal gennemgås ved udførsel af GCSE"
+
+#: params.def:165
+#, fuzzy
+msgid "The maximum number of insns of a completely peeled loop"
+msgstr "Det maksimale antal instruktioner der overvejes at udrulle i en løkke"
+
+#: params.def:170
+#, fuzzy
+msgid "The maximum number of peelings of a single loop that is peeled completely"
+msgstr "Det maksimale antal instruktioner i en enkelt funktion der må indbygges"
+
+#: params.def:175
+#, fuzzy
+msgid "The maximum number of insns of a peeled loop that rolls only once"
+msgstr "Det maksimale antal instruktioner til RTL-indbyggeren"
+
+#: params.def:181
+#, fuzzy
+msgid "The maximum number of insns of an unswitched loop"
+msgstr "Det maksimale antal instruktioner der overvejes at udrulle i en løkke"
+
+#: params.def:186
+#, fuzzy
+msgid "The maximum number of unswitchings in a single loop"
+msgstr "Det maksimale antal instruktioner i en enkelt funktion der må indbygges"
+
+#: params.def:191
msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
msgstr "Vælg den andel af det maksimale antal gentagelser af basisblokke i et program en given basisblok skal have for at blive betragtet som \"varm\""
-#: params.def:181
+#: params.def:196
msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
msgstr "Vælg den andel af den maksimale frekvens af udførsler af basisblokke i et program en given basisblok skal have for at blive betragtet som \"varm\""
-#: params.def:186
+#: params.def:201
msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
msgstr "Den procendel af funktioner vægtet efter udførselsfrekvens som skal dækkes af sporingsformering; benyttes når profileringsfeedback er tilgængeligt"
-#: params.def:191
+#: params.def:206
msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
msgstr "Den procendel af funktioner vægtet efter udførselsfrekvens som skal dækkes af sporingsformering; benyttes når profileringsfeedback ikke er tilgængeligt"
-#: params.def:196
-msgid "Maximal code growth caused by tail duplication (in percents)"
+#: params.def:211
+#, fuzzy
+msgid "Maximal code growth caused by tail duplication (in percent)"
msgstr "Maksimal kodevækst forårsaget af haleduplikering (i procent)"
-#: params.def:200
-msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percents)"
+#: params.def:215
+#, fuzzy
+msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent)"
msgstr "Stop omvendt vækst hvis den omvendte sandsynlighed for den bedste kant er mindre end denne tærskel (i procent)"
-#: params.def:205
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is available"
+#: params.def:220
+#, fuzzy
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is available"
msgstr "Stop fremadrettet vækst hvis sandsynligheden for den bedste kant er mindre end denne tærskel (i procent); benyttes når profileringsfeedback er tilgængeligt"
-#: params.def:210
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is not available"
+#: params.def:225
+#, fuzzy
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is not available"
msgstr "Stop fremadrettet vækst hvis sandsynligheden for den bedste kant er mindre end denne tærskel (i procent); benyttes når profileringsfeedback ikke er tilgængeligt"
-#: params.def:217
+#: params.def:232
msgid "The maximum number of incoming edges to consider for crossjumping"
msgstr "Det maksimale antal indadgående kanter der overvejes til krydsspring"
-#: params.def:230
-msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap."
+#: params.def:238
+#, fuzzy
+msgid "The maximum length of path considered in cse"
+msgstr "Den maksimale længde af planlæggerens liste over ventende operationer"
+
+#: params.def:243
+#, fuzzy
+msgid "The maximum memory locations recorded by cselib"
+msgstr "Det maksimale antal instruktioner til RTL-indbyggeren"
+
+#: params.def:256
+#, fuzzy
+msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap"
msgstr "Minimal heap-udvidelse for at udløse garbage collection, som en procentdel af den totale heap"
-#: params.def:236
-msgid "Minimum heap size before we start collecting garbage, in kilobytes."
+#: params.def:262
+#, fuzzy
+msgid "Minimum heap size before we start collecting garbage, in kilobytes"
msgstr "Minimal heap-størrelse før garbage collection startes, i kilobyte."
+#: params.def:270
+#, fuzzy
+msgid "The maximum number of instructions to search backward when looking for equivalent reload"
+msgstr "Det maksimale antal instruktioner der overvejes at udrulle i en løkke"
+
#: config/darwin-c.c:75
msgid "too many #pragma options align=reset"
msgstr "for mange '#pragma options align=reset'"
-#: config/darwin-c.c:97 config/darwin-c.c:100 config/darwin-c.c:102
-#: config/darwin-c.c:104
+#: config/darwin-c.c:95 config/darwin-c.c:98 config/darwin-c.c:100
+#: config/darwin-c.c:102
msgid "malformed '#pragma options', ignoring"
msgstr "forkert udformet '#pragma options', ignorerer"
-#: config/darwin-c.c:107
+#: config/darwin-c.c:105
msgid "junk at end of '#pragma options'"
msgstr "ragelse i slutningen af '#pragma options'"
-#: config/darwin-c.c:117
+#: config/darwin-c.c:115
msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring"
msgstr "forkert udformet '#pragma options align={mac68k|power|reset}', ignorerer"
-#: config/darwin-c.c:130
+#: config/darwin-c.c:127
msgid "missing '(' after '#pragma unused', ignoring"
msgstr "manglende '(' efter '#pragma unused', ignorerer"
-#: config/darwin-c.c:148
+#: config/darwin-c.c:145
msgid "missing ')' after '#pragma unused', ignoring"
msgstr "manglende ')' efter '#pragma unused', ignorerer"
-#: config/darwin-c.c:151
+#: config/darwin-c.c:148
msgid "junk at end of '#pragma unused'"
msgstr "ragelse i slutningen af '#pragma unused'"
-#: config/lynx-ng.h:97 config/lynx.h:121 config/rs6000/lynx.h:100
+#: config/darwin.c:1347
+#, fuzzy
+msgid "internal and protected visibility attributes not supportedin this configuration; ignored"
+msgstr "synlighedsegenskab er ikke understøttet i denne konfiguration; ignoreret"
+
+#: config/lynx-ng.h:97 config/lynx.h:116 config/rs6000/lynx.h:73
msgid "-msystem-v and -p are incompatible"
msgstr "-msystem-v og -p er indbyrdes uforenelige"
-#: config/lynx-ng.h:99 config/lynx.h:123 config/rs6000/lynx.h:102
+#: config/lynx-ng.h:99 config/lynx.h:118 config/rs6000/lynx.h:75
msgid "-msystem-v and -mthreads are incompatible"
msgstr "-msystem-v og -mthreads er indbyrdes uforenelige"
-#: config/alpha/alpha.c:342
+#: config/windiss.h:37
+#, fuzzy
+msgid "profiler support for WindISS"
+msgstr "function_profiler-understøttelse for MMIX"
+
+#: config/alpha/alpha.c:231
#, c-format
msgid "-f%s ignored for Unicos/Mk (not supported)"
msgstr "-f%s ignoreret for Unicos/Mk (ikke understøttet)"
-#: config/alpha/alpha.c:366
+#: config/alpha/alpha.c:255
msgid "-mieee not supported on Unicos/Mk"
msgstr "-mieee understøttes ikke på Unicos/Mk"
-#: config/alpha/alpha.c:377
+#: config/alpha/alpha.c:266
msgid "-mieee-with-inexact not supported on Unicos/Mk"
msgstr "-mieee-with-inexact understøttes ikke på Unicos/Mk"
-#: config/alpha/alpha.c:394
+#: config/alpha/alpha.c:283
#, c-format
msgid "bad value `%s' for -mtrap-precision switch"
msgstr "ugyldig værdi '%s' til tilvalget -mtrap-precision"
-#: config/alpha/alpha.c:408
+#: config/alpha/alpha.c:297
#, c-format
msgid "bad value `%s' for -mfp-rounding-mode switch"
msgstr "ugyldig værdi '%s' til tilvalget -mfp-rounding-mode"
-#: config/alpha/alpha.c:423
+#: config/alpha/alpha.c:312
#, c-format
msgid "bad value `%s' for -mfp-trap-mode switch"
msgstr "ugyldig værdi '%s' til tilvalget -mfp-trap-mode"
-#: config/alpha/alpha.c:435
+#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1063
#, c-format
msgid "bad value `%s' for -mtls-size switch"
msgstr "ugyldig værdi '%s' til tilvalget -mtls-size"
-#: config/alpha/alpha.c:454 config/alpha/alpha.c:466
+#: config/alpha/alpha.c:343 config/alpha/alpha.c:355
#, c-format
msgid "bad value `%s' for -mcpu switch"
msgstr "ugyldig værdi '%s' til tilvalget -mcpu"
-#: config/alpha/alpha.c:473
+#: config/alpha/alpha.c:362
msgid "trap mode not supported on Unicos/Mk"
msgstr "fældetilstand understøttes ikke på Unicos/Mk"
-#: config/alpha/alpha.c:480
+#: config/alpha/alpha.c:369
msgid "fp software completion requires -mtrap-precision=i"
msgstr "kommatalssoftwarefuldførelse kræver -mtrap-precision=i"
-#: config/alpha/alpha.c:496
+#: config/alpha/alpha.c:385
msgid "rounding mode not supported for VAX floats"
msgstr "afrundingstilstand er ikke understøttet for VAX-kommatal"
-#: config/alpha/alpha.c:501
+#: config/alpha/alpha.c:390
msgid "trap mode not supported for VAX floats"
msgstr "fældetilstand er ikke understøttet for VAX-kommatal"
-#: config/alpha/alpha.c:530
+#: config/alpha/alpha.c:419
#, c-format
msgid "L%d cache latency unknown for %s"
msgstr "L%d-mellemlagersventetid ukendt for %s"
-#: config/alpha/alpha.c:545
+#: config/alpha/alpha.c:434
#, c-format
msgid "bad value `%s' for -mmemory-latency"
msgstr "ugyldig værdi '%s' for -mmemory-latency"
-#: config/alpha/alpha.c:5604 config/m88k/m88k.c:2889 config/romp/romp.c:754
-#: config/romp/romp.c:761
+#: config/alpha/alpha.c:5411
#, c-format
msgid "invalid %%H value"
msgstr "ugyldig %%H-værdi"
-#: config/alpha/alpha.c:5625
+#: config/alpha/alpha.c:5432
#, c-format
msgid "invalid %%J value"
msgstr "ugyldig %%J-værdi"
-#: config/alpha/alpha.c:5641 config/ia64/ia64.c:3970 config/m88k/m88k.c:3034
+#: config/alpha/alpha.c:5448 config/ia64/ia64.c:4243
#, c-format
msgid "invalid %%r value"
msgstr "ugyldig %%r-værdi"
-#: config/alpha/alpha.c:5651 config/rs6000/rs6000.c:7737
+#: config/alpha/alpha.c:5458 config/rs6000/rs6000.c:8944
+#: config/xtensa/xtensa.c:1999
#, c-format
msgid "invalid %%R value"
msgstr "ugyldig %%R-værdi"
-#: config/alpha/alpha.c:5657 config/rs6000/rs6000.c:7663
+#: config/alpha/alpha.c:5464 config/rs6000/rs6000.c:8863
+#: config/xtensa/xtensa.c:1966
#, c-format
msgid "invalid %%N value"
msgstr "ugyldig %%N-værdi"
-#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:7691
+#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:8891
#, c-format
msgid "invalid %%P value"
msgstr "ugyldig %%P-værdi"
-#: config/alpha/alpha.c:5673 config/m88k/m88k.c:2895 config/romp/romp.c:740
-#: config/romp/romp.c:747
+#: config/alpha/alpha.c:5480
#, c-format
msgid "invalid %%h value"
msgstr "ugyldig %%h-værdi"
-#: config/alpha/alpha.c:5681 config/romp/romp.c:698
+#: config/alpha/alpha.c:5488 config/xtensa/xtensa.c:1992
#, c-format
msgid "invalid %%L value"
msgstr "ugyldig %%L-værdi"
-#: config/alpha/alpha.c:5720 config/rs6000/rs6000.c:7645
+#: config/alpha/alpha.c:5527 config/rs6000/rs6000.c:8845
#, c-format
msgid "invalid %%m value"
msgstr "ugyldig %%m-værdi"
-#: config/alpha/alpha.c:5728 config/rs6000/rs6000.c:7653
+#: config/alpha/alpha.c:5535 config/rs6000/rs6000.c:8853
#, c-format
msgid "invalid %%M value"
msgstr "ugyldig %%M-værdi"
-#: config/alpha/alpha.c:5772
+#: config/alpha/alpha.c:5579
#, c-format
msgid "invalid %%U value"
msgstr "ugyldig %%U-værdi"
-#: config/alpha/alpha.c:5784 config/alpha/alpha.c:5798 config/romp/romp.c:706
-#: config/rs6000/rs6000.c:7745
+#: config/alpha/alpha.c:5591 config/alpha/alpha.c:5605
+#: config/rs6000/rs6000.c:8952
#, c-format
msgid "invalid %%s value"
msgstr "ugyldig %%s-værdi"
-#: config/alpha/alpha.c:5821 config/m88k/m88k.c:2997
+#: config/alpha/alpha.c:5628
#, c-format
msgid "invalid %%C value"
msgstr "ugyldig %%C-værdi"
-#: config/alpha/alpha.c:5858 config/m88k/m88k.c:3018
-#: config/rs6000/rs6000.c:7502
+#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:8702
#, c-format
msgid "invalid %%E value"
msgstr "ugyldig %%E-værdi"
-#: config/alpha/alpha.c:5883 config/alpha/alpha.c:5933
+#: config/alpha/alpha.c:5690 config/alpha/alpha.c:5738
msgid "unknown relocation unspec"
msgstr "ukendt relokaliserings-unspec"
-#: config/alpha/alpha.c:5892 config/romp/romp.c:981
-#: config/rs6000/rs6000.c:8052
+#: config/alpha/alpha.c:5699 config/rs6000/rs6000.c:9265
#, c-format
msgid "invalid %%xn code"
msgstr "ugyldig %%xn-kode"
-#: config/alpha/alpha.c:6618 config/alpha/alpha.c:6621 config/s390/s390.c:6069
-#: config/s390/s390.c:6072
+#: config/alpha/alpha.c:6634 config/alpha/alpha.c:6637 config/s390/s390.c:6572
+#: config/s390/s390.c:6575
msgid "bad builtin fcode"
msgstr "ugyldig indbygget fcode"
@@ -8707,87 +7928,99 @@ msgstr "ugyldig indbygget fcode"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/alpha/alpha.h:279 config/i386/i386.h:294 config/i386/i386.h:296
-#: config/i386/i386.h:298 config/ns32k/ns32k.h:140 config/rs6000/rs6000.h:292
-#: config/s390/s390.h:68 config/sparc/sparc.h:522 config/sparc/sparc.h:527
+#. WARNING: Do not mark empty strings for translation, as calling
+#. gettext on an empty string does NOT return an empty
+#. string.
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/alpha/alpha.h:286 config/i386/i386.h:327 config/i386/i386.h:329
+#: config/i386/i386.h:331 config/ns32k/ns32k.h:140 config/s390/s390.h:124
+#: config/sparc/sparc.h:537 config/sparc/sparc.h:542
msgid "Use hardware fp"
msgstr "Brug hardwarekommatal"
-#: config/alpha/alpha.h:280 config/i386/i386.h:295 config/i386/i386.h:297
-#: config/rs6000/rs6000.h:294 config/sparc/sparc.h:524
-#: config/sparc/sparc.h:529
+#: config/alpha/alpha.h:287 config/i386/i386.h:328 config/i386/i386.h:330
+#: config/sparc/sparc.h:539 config/sparc/sparc.h:544
msgid "Do not use hardware fp"
msgstr "Brug ikke hardwarekommatal"
-#: config/alpha/alpha.h:281
+#: config/alpha/alpha.h:288
msgid "Use fp registers"
msgstr "Brug kommatalsregistre"
-#: config/alpha/alpha.h:283
+#: config/alpha/alpha.h:290
msgid "Do not use fp registers"
msgstr "Brug ikke kommatalsregistre"
-#: config/alpha/alpha.h:284
+#: config/alpha/alpha.h:291
msgid "Do not assume GAS"
msgstr "Antag ikke GAS"
-#: config/alpha/alpha.h:285
+#: config/alpha/alpha.h:292
msgid "Assume GAS"
msgstr "Antag GAS"
-#: config/alpha/alpha.h:287
+#: config/alpha/alpha.h:294
msgid "Request IEEE-conformant math library routines (OSF/1)"
msgstr "Påkræv at matematiksbibliotekrutiner opfylder IEEE-standarden (OSF/1)"
-#: config/alpha/alpha.h:289
+#: config/alpha/alpha.h:296
msgid "Emit IEEE-conformant code, without inexact exceptions"
msgstr "Udsend kode der opfylder IEEE-standarden, uden ineksakte undtagelser"
-#: config/alpha/alpha.h:291
+#: config/alpha/alpha.h:298
msgid "Emit IEEE-conformant code, with inexact exceptions"
msgstr "Udsend kode der opfylder IEEE-standarden, med ineksakte undtagelser"
-#: config/alpha/alpha.h:293
+#: config/alpha/alpha.h:300
msgid "Do not emit complex integer constants to read-only memory"
msgstr "Udsend ikke komplekse heltalskonstanter til skrivebeskyttet hukommelse"
-#: config/alpha/alpha.h:294
+#: config/alpha/alpha.h:301
msgid "Use VAX fp"
msgstr "Benyt VAX-kommatal"
-#: config/alpha/alpha.h:295
+#: config/alpha/alpha.h:302
msgid "Do not use VAX fp"
msgstr "Benyt ikke VAX-kommatal"
-#: config/alpha/alpha.h:296
+#: config/alpha/alpha.h:303
msgid "Emit code for the byte/word ISA extension"
msgstr "Udsend kode for byte/word-ISA-udvidelsen"
-#: config/alpha/alpha.h:299
+#: config/alpha/alpha.h:306
msgid "Emit code for the motion video ISA extension"
msgstr "Udsend kode for video-ISA-udvidelsen"
-#: config/alpha/alpha.h:302
+#: config/alpha/alpha.h:309
msgid "Emit code for the fp move and sqrt ISA extension"
msgstr "Udsend kode for kommatalsflytning og kvadratrod-ISA-udvidelsen"
-#: config/alpha/alpha.h:304
+#: config/alpha/alpha.h:311
msgid "Emit code for the counting ISA extension"
msgstr "Udsend kode for tæller-ISA-udvidelsen"
-#: config/alpha/alpha.h:307
+#: config/alpha/alpha.h:314
msgid "Emit code using explicit relocation directives"
msgstr "Udsend kode der bruger eksplicitte relokaliseringsdirektiver"
-#: config/alpha/alpha.h:310
+#: config/alpha/alpha.h:317
msgid "Emit 16-bit relocations to the small data areas"
msgstr "Udsend 16-bit relokalisering til det lille dataområde"
-#: config/alpha/alpha.h:312
+#: config/alpha/alpha.h:319
msgid "Emit 32-bit relocations to the small data areas"
msgstr "Udsend 32-bit relokalisering til det lille dataområde"
-#: config/alpha/alpha.h:314
+#: config/alpha/alpha.h:321
+#, fuzzy
+msgid "Emit direct branches to local functions"
+msgstr "Udelad rammehenvisningen i de yderste funktioner"
+
+#: config/alpha/alpha.h:324
msgid "Emit rdval instead of rduniq for thread pointer"
msgstr "Udsend rdval i stedet for rduniq for trådhenvisning"
@@ -8798,292 +8031,315 @@ msgstr "Udsend rdval i stedet for rduniq for trådhenvisning"
#. For -mtrap-precision=[p|f|i]
#. For -mmemory-latency=
#. For -mtls-size=
-#: config/alpha/alpha.h:343
+#: config/alpha/alpha.h:353
msgid "Use features of and schedule given CPU"
msgstr "Brug faciliteter fra og planlæg mht. den givne processor"
-#: config/alpha/alpha.h:345
+#: config/alpha/alpha.h:355
msgid "Schedule given CPU"
msgstr "Planlæg til en given processor"
-#: config/alpha/alpha.h:347
+#: config/alpha/alpha.h:357
msgid "Control the generated fp rounding mode"
msgstr "Kontrollér den genererede kommatalsafrundingstilstand"
-#: config/alpha/alpha.h:349
+#: config/alpha/alpha.h:359
msgid "Control the IEEE trap mode"
msgstr "Kontrollér IEEE-fældetilstanden"
-#: config/alpha/alpha.h:351
+#: config/alpha/alpha.h:361
msgid "Control the precision given to fp exceptions"
msgstr "Kontrollér den præcision der gives til kommatalsundtagelser"
-#: config/alpha/alpha.h:353
+#: config/alpha/alpha.h:363
msgid "Tune expected memory latency"
msgstr "Justér den forventede hukommelsesventetid"
-#: config/alpha/alpha.h:355 config/ia64/ia64.h:225
+#: config/alpha/alpha.h:365 config/ia64/ia64.h:267 config/rs6000/sysv4.h:90
msgid "Specify bit size of immediate TLS offsets"
msgstr "Angiv bitstørrelse for umiddelbar TLS-afsæt"
-#: config/arc/arc.c:135
+#: config/arc/arc.c:147
#, c-format
msgid "bad value (%s) for -mcpu switch"
msgstr "ugyldig værdi '%s' til tilvalget -mcpu"
-#: config/arc/arc.c:362
+#: config/arc/arc.c:369
#, c-format
msgid "argument of `%s' attribute is not a string constant"
msgstr "parameteren til egenskaben '%s er ikke en strengkonstant"
-#: config/arc/arc.c:369
+#: config/arc/arc.c:376
#, c-format
msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\""
msgstr "parameteren til egenskaben '%s er ikke \"ilink1\" eller \"ilink2\""
-#: config/arc/arc.c:1708 config/m32r/m32r.c:2286
+#: config/arc/arc.c:1714 config/m32r/m32r.c:2325
#, c-format
msgid "invalid operand to %%R code"
msgstr "ugyldig operand til %%R-koden"
-#: config/arc/arc.c:1740 config/m32r/m32r.c:2309
+#: config/arc/arc.c:1746 config/m32r/m32r.c:2348
#, c-format
msgid "invalid operand to %%H/%%L code"
msgstr "ugyldig operand til %%H/%%L-koden"
-#: config/arc/arc.c:1763 config/m32r/m32r.c:2385
+#: config/arc/arc.c:1769 config/m32r/m32r.c:2419
#, c-format
msgid "invalid operand to %%U code"
msgstr "ugyldig operand til %%U-koden"
-#: config/arc/arc.c:1774
+#: config/arc/arc.c:1780
#, c-format
msgid "invalid operand to %%V code"
msgstr "ugyldig operand til %%V-koden"
#. Unknown flag.
-#: config/arc/arc.c:1781 config/m32r/m32r.c:2424 config/sparc/sparc.c:6533
+#. Undocumented flag.
+#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985
msgid "invalid operand output code"
msgstr "ugyldig operand-uddatakode"
-#: config/arm/arm.c:458
+#: config/arm/arm.c:520
#, c-format
msgid "switch -mcpu=%s conflicts with -march= switch"
msgstr "tilvalget -mcpu=%s er i konflikt med tilvalget -march="
-#: config/arm/arm.c:468 config/rs6000/rs6000.c:558 config/sparc/sparc.c:393
+#: config/arm/arm.c:530 config/rs6000/rs6000.c:759 config/sparc/sparc.c:424
#, c-format
msgid "bad value (%s) for %s switch"
msgstr "ugyldig værdi (%s) til tilvalget %s"
-#: config/arm/arm.c:604
+#: config/arm/arm.c:672
msgid "target CPU does not support APCS-32"
msgstr "målprocessoren understøtter ikke APCS-32"
-#: config/arm/arm.c:609
+#: config/arm/arm.c:677
msgid "target CPU does not support APCS-26"
msgstr "målprocessoren understøtter ikke APCS-26"
-#: config/arm/arm.c:615
+#: config/arm/arm.c:683
msgid "target CPU does not support interworking"
msgstr "målprocessoren understøtter ikke interarbejde"
-#: config/arm/arm.c:621
+#: config/arm/arm.c:689
msgid "target CPU does not support THUMB instructions"
msgstr "målprocessoren understøtter ikke THUMB-instruktioner"
-#: config/arm/arm.c:635
+#: config/arm/arm.c:703
msgid "enabling backtrace support is only meaningful when compiling for the Thumb"
msgstr "aktivering af tilbagesporingsunderstøttelse giver kun mening ved oversættelse for en Thumb"
-#: config/arm/arm.c:638
+#: config/arm/arm.c:706
msgid "enabling callee interworking support is only meaningful when compiling for the Thumb"
msgstr "aktivering af interarbejdeunderstøttelse for kaldte objekter giver kun mening ved oversættelse for en Thumb"
-#: config/arm/arm.c:641
+#: config/arm/arm.c:709
msgid "enabling caller interworking support is only meaningful when compiling for the Thumb"
msgstr "aktivering af interarbejdeunderstøttelse for kaldere giver kun mening ved oversættelse for en Thumb"
-#: config/arm/arm.c:647
+#: config/arm/arm.c:715
msgid "interworking forces APCS-32 to be used"
msgstr "interarbejde tvinger APCS-32 til at blive brugt"
-#: config/arm/arm.c:653
+#: config/arm/arm.c:721
msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
msgstr "-mapcs-stack-check og -mno-apcs-frame er indbyrdes uforenelige"
-#: config/arm/arm.c:661
+#: config/arm/arm.c:729
msgid "-fpic and -mapcs-reent are incompatible"
msgstr "-fpic og -mapcs-reent er indbyrdes uforenelige"
-#: config/arm/arm.c:664
+#: config/arm/arm.c:732
msgid "APCS reentrant code not supported. Ignored"
msgstr "APCS-genindtrædelig kode er ikke understøttet - ignoreret"
-#: config/arm/arm.c:672
+#: config/arm/arm.c:740
msgid "-g with -mno-apcs-frame may not give sensible debugging"
msgstr "-g med -mno-apcs-frame giver måske ikke fornuftig fejlanalysering"
-#: config/arm/arm.c:680
+#: config/arm/arm.c:748
msgid "passing floating point arguments in fp regs not yet supported"
msgstr "overbringelse af kommatalsparametre i kommatalsregistre er ikke understøttet endnu"
-#: config/arm/arm.c:709
+#: config/arm/arm.c:792
#, c-format
msgid "invalid floating point emulation option: -mfpe-%s"
msgstr "ugyldigt tilvalg til kommatalsemulering: -mfpe-%s"
-#: config/arm/arm.c:733
+#: config/arm/arm.c:803
+msgid "-mfpe switch not supported by ep9312 target cpu - ignored."
+msgstr ""
+
+#: config/arm/arm.c:823
msgid "structure size boundary can only be set to 8 or 32"
msgstr "strukturstørrelsesgrænse kan kun sættes til 8 eller 32"
-#: config/arm/arm.c:741
+#: config/arm/arm.c:831
msgid "-mpic-register= is useless without -fpic"
msgstr "-mpic-register= er ubrugelig uden -fpic"
-#: config/arm/arm.c:748
+#: config/arm/arm.c:838
#, c-format
msgid "unable to use '%s' for PIC register"
msgstr "kan ikke bruge '%s' til PIC-register"
-#: config/arm/arm.c:2064 config/arm/arm.c:2087 config/avr/avr.c:4794
-#: config/c4x/c4x.c:4644 config/h8300/h8300.c:3667 config/i386/i386.c:1396
-#: config/i386/i386.c:1425 config/ip2k/ip2k.c:3224
-#: config/m68hc11/m68hc11.c:1267 config/mcore/mcore.c:3510
-#: config/ns32k/ns32k.c:1047 config/rs6000/rs6000.c:12538 config/sh/sh.c:5681
-#: config/sh/sh.c:5706 config/sh/sh.c:5745 config/stormy16/stormy16.c:2026
-#: config/v850/v850.c:2180
+#: config/arm/arm.c:2246 config/arm/arm.c:2264 config/avr/avr.c:4558
+#: config/c4x/c4x.c:4447 config/h8300/h8300.c:4257 config/i386/i386.c:1571
+#: config/i386/i386.c:1617 config/ip2k/ip2k.c:3169
+#: config/m68hc11/m68hc11.c:1227 config/m68k/m68k.c:333
+#: config/mcore/mcore.c:3375 config/ns32k/ns32k.c:1064
+#: config/rs6000/rs6000.c:14556 config/sh/sh.c:6737 config/sh/sh.c:6758
+#: config/sh/sh.c:6793 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173
#, c-format
msgid "`%s' attribute only applies to functions"
msgstr "egenskaben '%s' kan kun anvendes sammen med funktioner"
-#: config/arm/arm.c:9459
+#: config/arm/arm.c:10573
msgid "unable to compute real location of stacked parameter"
msgstr "kan ikke beregne virkelig placering af stakkede parametre"
-#: config/arm/arm.c:10138
+#. @@@ better error message
+#: config/arm/arm.c:11201 config/arm/arm.c:11238
+msgid "selector must be an immediate"
+msgstr "vælger skal være en umiddelbar værdi"
+
+#. @@@ better error message
+#: config/arm/arm.c:11281 config/i386/i386.c:14219 config/i386/i386.c:14253
+msgid "mask must be an immediate"
+msgstr "maske skal være en umiddelbar værdi"
+
+#: config/arm/arm.c:11976
msgid "no low registers available for popping high registers"
msgstr "ingen lave registre er tilgængelige til at modtage værdier fra høje registre"
-#: config/arm/arm.c:10389
+#: config/arm/arm.c:12226
msgid "interrupt Service Routines cannot be coded in Thumb mode"
msgstr "afbrydelsesservicerutiner kan ikke kodes i Thumb-tilstand"
-#: config/arm/pe.c:168 config/mcore/mcore.c:3358
-#, c-format
-msgid "initialized variable `%s' is marked dllimport"
+#: config/arm/pe.c:170 config/mcore/mcore.c:3241
+#, fuzzy
+msgid "%Jinitialized variable '%D' is marked dllimport"
msgstr "variablen '%s' med startværdi er markeret dllimport"
-#: config/arm/pe.c:177
-#, c-format
-msgid "static variable `%s' is marked dllimport"
+#: config/arm/pe.c:179
+#, fuzzy
+msgid "%Jstatic variable '%D' is marked dllimport"
msgstr "statisk variabel '%s' er markeret dllimport"
-#: config/arm/arm.h:416
+#: config/arm/arm.h:450
msgid "Generate APCS conformant stack frames"
msgstr "Generér APCS-overholdende stakrammer"
-#: config/arm/arm.h:419
+#: config/arm/arm.h:453
msgid "Store function names in object code"
msgstr "Gem funktionsnavne i objektkode"
-#: config/arm/arm.h:423
+#: config/arm/arm.h:457
msgid "Use the 32-bit version of the APCS"
msgstr "Benyt 32 bit-udgaven af APCS"
-#: config/arm/arm.h:425
+#: config/arm/arm.h:459
msgid "Use the 26-bit version of the APCS"
msgstr "Benyt 26 bit-udgaven af APCS"
-#: config/arm/arm.h:429
+#: config/arm/arm.h:463
msgid "Pass FP arguments in FP registers"
msgstr "Videregiv kommatalsparametre i kommatalsregistre"
-#: config/arm/arm.h:432
+#: config/arm/arm.h:466
msgid "Generate re-entrant, PIC code"
msgstr "Generér genindtrædelig PIC-kode"
-#: config/arm/arm.h:435
+#: config/arm/arm.h:469
msgid "The MMU will trap on unaligned accesses"
msgstr "MMU'en vil aktiveres ved ikke-justerede tilgange"
-#: config/arm/arm.h:442
+#: config/arm/arm.h:476
msgid "Use library calls to perform FP operations"
msgstr "Benyt bibliotekskald til at udføre kommatalsoperationer"
-#: config/arm/arm.h:444 config/i960/i960.h:281
+#: config/arm/arm.h:478 config/i960/i960.h:291
msgid "Use hardware floating point instructions"
msgstr "Benyt hardware-kommatalsinstruktioner"
-#: config/arm/arm.h:446
+#: config/arm/arm.h:480
msgid "Assume target CPU is configured as big endian"
msgstr "Antag at målprocessoren er konfigureret som storendet"
-#: config/arm/arm.h:448
+#: config/arm/arm.h:482
msgid "Assume target CPU is configured as little endian"
msgstr "Antag at målprocessoren er konfigureret som lilleendet"
-#: config/arm/arm.h:450
+#: config/arm/arm.h:484
msgid "Assume big endian bytes, little endian words"
msgstr "Antag storendede byte og lilleendede word"
-#: config/arm/arm.h:452
+#: config/arm/arm.h:486
msgid "Support calls between Thumb and ARM instruction sets"
msgstr "Understøt kald mellem Thumb- og ARM-instruktionssættene"
-#: config/arm/arm.h:455
+#: config/arm/arm.h:489
msgid "Generate a call to abort if a noreturn function returns"
msgstr "Generér et kald til abort hvis en noreturn-funktion returnerer"
-#: config/arm/arm.h:458
+#: config/arm/arm.h:492
msgid "Do not move instructions into a function's prologue"
msgstr "Flyt ikke instruktioner til en funktions begyndelse"
-#: config/arm/arm.h:461
+#: config/arm/arm.h:495
msgid "Do not load the PIC register in function prologues"
msgstr "Indlæs ikke PIC-registeret i funktionsbegyndelser"
-#: config/arm/arm.h:464
+#: config/arm/arm.h:498
msgid "Generate call insns as indirect calls, if necessary"
msgstr "Generér kaldeinstruktioner som indirekte kald, om nødvendigt"
-#: config/arm/arm.h:467
+#: config/arm/arm.h:501
msgid "Compile for the Thumb not the ARM"
msgstr "Oversæt til Thymb, ikke til ARM"
-#: config/arm/arm.h:471
+#: config/arm/arm.h:505
msgid "Thumb: Generate (non-leaf) stack frames even if not needed"
msgstr "Thumb: Generér (ikke-yderste) stakrammer selv hvis det ikke er nødvendigt"
-#: config/arm/arm.h:474
+#: config/arm/arm.h:508
msgid "Thumb: Generate (leaf) stack frames even if not needed"
msgstr "Thumb: Generér (yderste) stakrammer selv hvis det ikke er nødvendigt"
-#: config/arm/arm.h:477
+#: config/arm/arm.h:511
msgid "Thumb: Assume non-static functions may be called from ARM code"
msgstr "Thumb: Antag at ikke-statiske funktioner kan kaldes fra ARM-kode"
-#: config/arm/arm.h:481
+#: config/arm/arm.h:515
msgid "Thumb: Assume function pointers may go to non-Thumb aware code"
msgstr "Thumb: Antag at funktionshenvisninger kan gå til kode der ikke er opmærksom på Thumb"
-#: config/arm/arm.h:491
+#: config/arm/arm.h:519
+msgid "Cirrus: Place NOPs to avoid invalid instruction combinations"
+msgstr ""
+
+#: config/arm/arm.h:521
+msgid "Cirrus: Do not break up invalid instruction combinations with NOPs"
+msgstr ""
+
+#: config/arm/arm.h:529
msgid "Specify the name of the target CPU"
msgstr "Angiv navnet på målprocessoren"
-#: config/arm/arm.h:493
+#: config/arm/arm.h:531
msgid "Specify the name of the target architecture"
msgstr "Angiv navnet på målarkitekturen"
-#: config/arm/arm.h:497
+#: config/arm/arm.h:535
msgid "Specify the version of the floating point emulator"
msgstr "Angiv versionen af kommatalsemulatoren"
-#: config/arm/arm.h:499
+#: config/arm/arm.h:537
msgid "Specify the minimum bit alignment of structures"
msgstr "Angiv den mindste bitjustering af strukturer"
-#: config/arm/arm.h:501
+#: config/arm/arm.h:539
msgid "Specify the register to be used for PIC addressing"
msgstr "Angiv det register der skal bruges til PIC-adressering"
@@ -9091,92 +8347,92 @@ msgstr "Angiv det register der skal bruges til PIC-adressering"
msgid "Ignore dllimport attribute for functions"
msgstr "Ignorér dllimport-egenskaben for funktioner"
-#: config/avr/avr.c:528
+#: config/avr/avr.c:514
#, c-format
msgid "large frame pointer change (%d) with -mtiny-stack"
msgstr "stor rammehenvisningsændring (%d) med -mtiny-stack"
-#: config/avr/avr.c:1135
+#: config/avr/avr.c:1101
msgid "bad address, not (reg+disp):"
msgstr "ugyldig adresse, ikke (reg+disp):"
-#: config/avr/avr.c:1143
+#: config/avr/avr.c:1109
msgid "internal compiler error. Bad address:"
msgstr "intern oversætterfejl - ugyldig adresse:"
-#: config/avr/avr.c:1156
+#: config/avr/avr.c:1122
msgid "internal compiler error. Unknown mode:"
msgstr "intern oversætterfejl - ugyldig tilstand:"
-#: config/avr/avr.c:1864 config/avr/avr.c:2576
+#: config/avr/avr.c:1744 config/avr/avr.c:2405
msgid "invalid insn:"
msgstr "ugyldig instruktion:"
-#: config/avr/avr.c:1901 config/avr/avr.c:1987 config/avr/avr.c:2036
-#: config/avr/avr.c:2045 config/avr/avr.c:2143 config/avr/avr.c:2315
-#: config/avr/avr.c:2613 config/avr/avr.c:2724
+#: config/avr/avr.c:1778 config/avr/avr.c:1861 config/avr/avr.c:1910
+#: config/avr/avr.c:1919 config/avr/avr.c:2014 config/avr/avr.c:2183
+#: config/avr/avr.c:2439 config/avr/avr.c:2547
msgid "incorrect insn:"
msgstr "ukorrekt instruktion:"
-#: config/avr/avr.c:2064 config/avr/avr.c:2228 config/avr/avr.c:2386
-#: config/avr/avr.c:2768
+#: config/avr/avr.c:1938 config/avr/avr.c:2099 config/avr/avr.c:2254
+#: config/avr/avr.c:2591
msgid "unknown move insn:"
msgstr "ukendt flytteinstruktion:"
-#: config/avr/avr.c:3003
+#: config/avr/avr.c:2814
msgid "bad shift insn:"
msgstr "ugyldig skifteinstruktion:"
-#: config/avr/avr.c:3119 config/avr/avr.c:3549 config/avr/avr.c:3929
+#: config/avr/avr.c:2927 config/avr/avr.c:3348 config/avr/avr.c:3719
msgid "internal compiler error. Incorrect shift:"
msgstr "intern oversætterfejl - ukorrekt skift:"
-#: config/avr/avr.c:4767 config/ip2k/ip2k.c:3197
+#: config/avr/avr.c:4532 config/ip2k/ip2k.c:3144
msgid "only initialized variables can be placed into program memory area"
msgstr "kun variabler med startværdi kan placeres i programhukommelsesområdet"
-#: config/avr/avr.c:4866
+#: config/avr/avr.c:4626
msgid "only uninitialized variables can be placed in the .noinit section"
msgstr "kun variabler uden startværdi kan placeres i .noinit-sektionen"
-#: config/avr/avr.c:4881
+#: config/avr/avr.c:4640
#, c-format
msgid "MCU `%s' supported for assembler only"
msgstr "MCU '%s' understøttes kun for maskinkode"
-#: config/avr/avr.h:78
+#: config/avr/avr.h:73
msgid "Assume int to be 8 bit integer"
msgstr "Antag at int er 8 bit-heltal"
-#: config/avr/avr.h:80
+#: config/avr/avr.h:75
msgid "Change the stack pointer without disabling interrupts"
msgstr "Ændr stakhenvisningen uden at deaktivere afbrydelser"
-#: config/avr/avr.h:82
+#: config/avr/avr.h:77
msgid "Use subroutines for function prologue/epilogue"
msgstr "Benyt subrutiner for funktionsindledning/-afslutninger"
-#: config/avr/avr.h:84
+#: config/avr/avr.h:79
msgid "Change only the low 8 bits of the stack pointer"
msgstr "Ændr kun de laveste 8 bit af stakhenvisningen"
-#: config/avr/avr.h:86
+#: config/avr/avr.h:81
msgid "Do not generate tablejump insns"
msgstr "Generér ikke tabelspringsinstruktioner"
-#: config/avr/avr.h:88
+#: config/avr/avr.h:83
msgid "Use rjmp/rcall (limited range) on >8K devices"
msgstr "Benyt rjmp/rcall (begrænset omfang) på >8K-enheder"
-#: config/avr/avr.h:91
+#: config/avr/avr.h:85
msgid "Output instruction sizes to the asm file"
msgstr "Anbring instruktionsstørrelser i asm-filen"
-#: config/avr/avr.h:108
+#: config/avr/avr.h:102
msgid "Specify the initial stack address"
msgstr "Angiv den første stakadresse"
-#: config/avr/avr.h:109
+#: config/avr/avr.h:103
msgid "Specify the MCU name"
msgstr "Angiv MCU-navnet"
@@ -9188,140 +8444,135 @@ msgstr "Angiv MCU-navnet"
#. For instance, the SH target has only positive offsets in
#. addresses. Thus sorting to put the smallest address first allows
#. the most combinations to be found.
-#: config/avr/avr.h:2450
+#: config/avr/avr.h:2267
msgid "trampolines not supported"
msgstr "trampoliner understøttes ikke"
-#: config/c4x/c4x-c.c:69
+#: config/c4x/c4x-c.c:71
#, c-format
msgid "missing '(' after '#pragma %s' - ignored"
msgstr "manglende '(' efter '#pragma %s' - ignoreret"
-#: config/c4x/c4x-c.c:72
+#: config/c4x/c4x-c.c:74
#, c-format
msgid "missing function name in '#pragma %s' - ignored"
msgstr "manglende funktionsnavn i '#pragma %s' - ignoreret"
-#: config/c4x/c4x-c.c:77
+#: config/c4x/c4x-c.c:79
#, c-format
msgid "malformed '#pragma %s' - ignored"
msgstr "forkert udformet '#pragma %s' - ignoreret"
-#: config/c4x/c4x-c.c:79
+#: config/c4x/c4x-c.c:81
#, c-format
msgid "missing section name in '#pragma %s' - ignored"
msgstr "manglende sektionsnavn i '#pragma %s' - ignoreret"
-#: config/c4x/c4x-c.c:84
+#: config/c4x/c4x-c.c:86
#, c-format
msgid "missing ')' for '#pragma %s' - ignored"
msgstr "manglende '(' for '#pragma %s' - ignoreret"
-#: config/c4x/c4x-c.c:87
+#: config/c4x/c4x-c.c:89
#, c-format
msgid "junk at end of '#pragma %s'"
msgstr "ragelse i slutningen af '#pragma %s'"
-#: config/c4x/c4x.c:280
+#: config/c4x/c4x.c:300
#, c-format
msgid "unknown CPU version %d, using 40.\n"
msgstr "ukendt processorversion %d, bruger 40.\n"
-#: config/c4x/c4x.c:853
+#: config/c4x/c4x.c:850
#, c-format
msgid "ISR %s requires %d words of local vars, max is 32767"
msgstr "ISR %s kræver %d ord af lokale variable, maks. er 32767"
-#: config/c4x/c4x.c:1602
+#: config/c4x/c4x.c:1571
msgid "using CONST_DOUBLE for address"
msgstr "bruger CONST_DOUBLE til adresse"
-#: config/c4x/c4x.c:1742
+#: config/c4x/c4x.c:1709
msgid "c4x_address_cost: Invalid addressing mode"
msgstr "c4x_address_cost: Ugyldig adresseringstilstand"
-#: config/c4x/c4x.c:1884
+#: config/c4x/c4x.c:1844
#, c-format
msgid "c4x_print_operand: %%L inconsistency"
msgstr "c4x_print_operand: %%L-inkonsistens"
-#: config/c4x/c4x.c:1890
+#: config/c4x/c4x.c:1850
#, c-format
msgid "c4x_print_operand: %%N inconsistency"
msgstr "c4x_print_operand: %%N-inkonsistens"
-#: config/c4x/c4x.c:1931
+#: config/c4x/c4x.c:1891
#, c-format
msgid "c4x_print_operand: %%O inconsistency"
msgstr "c4x_print_operand: %%O-inkonsistens"
-#: config/c4x/c4x.c:2026
+#: config/c4x/c4x.c:1986
msgid "c4x_print_operand: Bad operand case"
msgstr "c4x_print_operand: Ugyldig operand-case"
-#: config/c4x/c4x.c:2069
+#: config/c4x/c4x.c:2027
msgid "c4x_print_operand_address: Bad post_modify"
msgstr "c4x_print_operand_address: Ugyldig post_modify"
-#: config/c4x/c4x.c:2091
+#: config/c4x/c4x.c:2049
msgid "c4x_print_operand_address: Bad pre_modify"
msgstr "c4x_print_operand_address: Ugyldig pre_modify"
-#: config/c4x/c4x.c:2139 config/c4x/c4x.c:2151 config/c4x/c4x.c:2166
+#: config/c4x/c4x.c:2097 config/c4x/c4x.c:2109 config/c4x/c4x.c:2124
msgid "c4x_print_operand_address: Bad operand case"
msgstr "c4x_print_operand_address: Ugyldig operand-case"
-#: config/c4x/c4x.c:2422
+#: config/c4x/c4x.c:2375
msgid "c4x_rptb_insert: Cannot find start label"
msgstr "c4x_rptb_insert: Kan ikke finde startetiket"
-#: config/c4x/c4x.c:3409 config/c4x/c4x.c:3429
+#: config/c4x/c4x.c:3292 config/c4x/c4x.c:3310
msgid "mode not QImode"
msgstr "tilstand ikke QImode"
-#: config/c4x/c4x.c:3514
+#: config/c4x/c4x.c:3380
msgid "invalid indirect memory address"
msgstr "ugyldig indirekte hukommelsesadresse"
-#: config/c4x/c4x.c:3603
+#: config/c4x/c4x.c:3469
msgid "invalid indirect (S) memory address"
msgstr "ugyldig indirekte (S) hukommelsesadresse"
-#: config/c4x/c4x.c:3944
+#: config/c4x/c4x.c:3797
msgid "c4x_valid_operands: Internal error"
msgstr "c4x_valid_operands: Intern fejl"
-#: config/c4x/c4x.c:4424
+#: config/c4x/c4x.c:4216
msgid "c4x_operand_subword: invalid mode"
msgstr "c4x_operand_subword: ugyldig tilstand"
-#: config/c4x/c4x.c:4427
+#: config/c4x/c4x.c:4219
msgid "c4x_operand_subword: invalid operand"
msgstr "c4x_operand_subword: ugyldig operand"
#. We could handle these with some difficulty.
#. e.g., *p-- => *(p-=2); *(p+1).
-#: config/c4x/c4x.c:4453
+#: config/c4x/c4x.c:4245
msgid "c4x_operand_subword: invalid autoincrement"
msgstr "c4x_operand_subword: ugyldig selvforøgelse"
-#: config/c4x/c4x.c:4459
+#: config/c4x/c4x.c:4251
msgid "c4x_operand_subword: invalid address"
msgstr "c4x_operand_subword: ugyldig adresse"
-#: config/c4x/c4x.c:4470
+#: config/c4x/c4x.c:4262
msgid "c4x_operand_subword: address not offsettable"
msgstr "c4x_operand_subword: adresse kan ikke tilføjes et offset"
-#: config/c4x/c4x.c:4670
+#: config/c4x/c4x.c:4472
msgid "c4x_rptb_rpts_p: Repeat block top label moved\n"
msgstr "c4x_rptb_rpts_p: Topetiket til gentagelsesblok flyttet\n"
-#. Name of the c4x assembler.
-#. Name of the c4x linker.
-#. Define assembler options.
-#. Define linker options.
-#. Specify the end file to link with.
#. Target compilation option flags.
#. Small memory model.
#. Use 24-bit MPYI for C3x.
@@ -9542,158 +8793,158 @@ msgstr "Angiv maksimalt antal iterationer for RPTS"
msgid "Select CPU to generate code for"
msgstr "Vælg den processor der skal genereres kode til"
-#: config/cris/cris.c:599
+#: config/cris/cris.c:597
msgid "unexpected index-type in cris_print_index"
msgstr "uventet indekstype i cris_print_index"
-#: config/cris/cris.c:615
+#: config/cris/cris.c:611
msgid "unexpected base-type in cris_print_base"
msgstr "uventet grundtype in cris_print_base"
-#: config/cris/cris.c:908
+#: config/cris/cris.c:904
#, c-format
msgid "stackframe too big: %d bytes"
msgstr "stakramme for stor: %d byte"
-#: config/cris/cris.c:1223
+#: config/cris/cris.c:1215
msgid "allocated but unused delay list in epilogue"
msgstr "allokeret, men ubenyttet venteliste i afslutning"
-#: config/cris/cris.c:1233
+#: config/cris/cris.c:1225
msgid "unexpected function type needing stack adjustment for __builtin_eh_return"
msgstr "uventet funktionstype behøver stak justering for __builtin_eh_return"
-#: config/cris/cris.c:1312
+#: config/cris/cris.c:1301
msgid "invalid operand for 'b' modifier"
msgstr "ugyldig operand til 'b'-ændring"
-#: config/cris/cris.c:1324
+#: config/cris/cris.c:1314
msgid "invalid operand for 'v' modifier"
msgstr "ugyldig operand til 'v'-ændring"
-#: config/cris/cris.c:1334
+#: config/cris/cris.c:1324
msgid "invalid operand for 'P' modifier"
msgstr "ugyldig operand til 'P'-ændring"
-#: config/cris/cris.c:1341
+#: config/cris/cris.c:1331
msgid "invalid operand for 'p' modifier"
msgstr "ugyldig operand til 'p'-ændring"
-#: config/cris/cris.c:1380
+#: config/cris/cris.c:1370
msgid "invalid operand for 'z' modifier"
msgstr "ugyldig operand til 'z'-ændring"
-#: config/cris/cris.c:1411 config/cris/cris.c:1441
+#: config/cris/cris.c:1401 config/cris/cris.c:1431
msgid "invalid operand for 'H' modifier"
msgstr "ugyldig operand til 'H'-ændring"
-#: config/cris/cris.c:1417
+#: config/cris/cris.c:1407
msgid "bad register"
msgstr "ugyldigt register"
-#: config/cris/cris.c:1455
+#: config/cris/cris.c:1445
msgid "invalid operand for 'e' modifier"
msgstr "ugyldig operand til 'e'-ændring"
-#: config/cris/cris.c:1472
+#: config/cris/cris.c:1462
msgid "invalid operand for 'm' modifier"
msgstr "ugyldig operand til 'm'-ændring"
-#: config/cris/cris.c:1497
+#: config/cris/cris.c:1487
msgid "invalid operand for 'A' modifier"
msgstr "ugyldig operand til 'A'-ændring"
-#: config/cris/cris.c:1505
+#: config/cris/cris.c:1495
msgid "invalid operand for 'D' modifier"
msgstr "ugyldig operand til 'D'-ændring"
-#: config/cris/cris.c:1519
+#: config/cris/cris.c:1509
msgid "invalid operand for 'T' modifier"
msgstr "ugyldig operand til 'T'-ændring"
-#: config/cris/cris.c:1528
+#: config/cris/cris.c:1518
msgid "invalid operand modifier letter"
msgstr "ugyldigt operandændringsbogstav"
-#: config/cris/cris.c:1536
+#: config/cris/cris.c:1526
#, c-format
msgid "internal error: bad register: %d"
msgstr "intern fejl: ugyldigt register: %d"
-#: config/cris/cris.c:1584
+#: config/cris/cris.c:1574
msgid "unexpected multiplicative operand"
msgstr "uventet multiplikativ operand"
-#: config/cris/cris.c:1604
+#: config/cris/cris.c:1594
msgid "unexpected operand"
msgstr "uventet operand"
-#: config/cris/cris.c:1639 config/cris/cris.c:1649
+#: config/cris/cris.c:1627 config/cris/cris.c:1637
msgid "unrecognized address"
msgstr "ukendt adresse"
-#: config/cris/cris.c:2005
+#: config/cris/cris.c:1987
msgid "internal error: sideeffect-insn affecting main effect"
msgstr "intern fejl: bivirkningsinstruktion påvirker hovedvirkning"
#. If we get here, the caller got its initial tests wrong.
-#: config/cris/cris.c:2292
+#: config/cris/cris.c:2380
msgid "internal error: cris_side_effect_mode_ok with bad operands"
msgstr "intern fejl: cris_side_effect_mode_ok med ugyldige operander"
-#: config/cris/cris.c:2374 config/cris/cris.c:2432
+#: config/cris/cris.c:2457 config/cris/cris.c:2519
msgid "unrecognized supposed constant"
msgstr "ukendt formodet konstant"
-#: config/cris/cris.c:2473
+#: config/cris/cris.c:2564
msgid "unrecognized supposed constant in cris_global_pic_symbol"
msgstr "ukendt formodet konstant i cris_global_pic_symbol"
-#: config/cris/cris.c:2492
+#: config/cris/cris.c:2583
#, c-format
msgid "-max-stackframe=%d is not usable, not between 0 and %d"
msgstr "-max-stackframe=%d er ikke brugbar mellem 0 og %d"
-#: config/cris/cris.c:2520
+#: config/cris/cris.c:2611
#, c-format
msgid "unknown CRIS version specification in -march= or -mcpu= : %s"
msgstr "ukendt CRIS-versionsspecifikation i -march= eller -mcpu=: %s"
-#: config/cris/cris.c:2556
+#: config/cris/cris.c:2647
#, c-format
msgid "unknown CRIS cpu version specification in -mtune= : %s"
msgstr "ukendt CRIS-versionsspecifikation i -mtune=: %s"
-#: config/cris/cris.c:2574
+#: config/cris/cris.c:2665
msgid "-fPIC and -fpic are not supported in this configuration"
msgstr "-fPIC og -fpic understøttes ikke af denne konfiguration"
-#: config/cris/cris.c:2590
+#: config/cris/cris.c:2681
msgid "that particular -g option is invalid with -maout and -melinux"
msgstr "det bestemte '-g'-tilvalg er ugyldigt med -maout og -melinux"
-#: config/cris/cris.c:2824 config/cris/cris.c:2869
+#: config/cris/cris.c:2936 config/cris/cris.c:2981
msgid "unexpected side-effects in address"
msgstr "uventede bivirkninger i adresse"
#. Labels are never marked as global symbols.
-#: config/cris/cris.c:2966 config/cris/cris.c:2997
+#: config/cris/cris.c:3076 config/cris/cris.c:3107
msgid "unexpected PIC symbol"
msgstr "uventet PIC-symbol"
-#: config/cris/cris.c:2970
+#: config/cris/cris.c:3080
msgid "PIC register isn't set up"
msgstr "PIC-register er ikke sat op"
-#: config/cris/cris.c:2983 config/cris/cris.c:3066
+#: config/cris/cris.c:3093 config/cris/cris.c:3176
msgid "unexpected address expression"
msgstr "uventet adresseudtryk"
-#: config/cris/cris.c:3001
+#: config/cris/cris.c:3111
msgid "emitting PIC operand, but PIC register isn't set up"
msgstr "udsender PIC-operand, men PIC-register er ikke sat op"
-#: config/cris/cris.c:3010
+#: config/cris/cris.c:3120
msgid "unexpected NOTE as addr_const:"
msgstr "uventet NOTE som addr_const:"
@@ -9706,212 +8957,212 @@ msgid "For elinux, request a specified stack-size for this program"
msgstr "For elinux; forespørg en angivet stakstørrelse for dette program"
#. No "no-etrax" as it does not really imply any model. On the other hand, "etrax" implies the common (and large) subset matching all models.
-#: config/cris/cris.h:340
+#: config/cris/cris.h:334
msgid "Compile for ETRAX 4 (CRIS v3)"
msgstr "Oversæt for ETRAX 4 (CRIS v3)"
-#: config/cris/cris.h:345
+#: config/cris/cris.h:339
msgid "Compile for ETRAX 100 (CRIS v8)"
msgstr "Oversæt for ETRAX 100 (CRIS v8)"
-#: config/cris/cris.h:349
+#: config/cris/cris.h:343
msgid "Emit verbose debug information in assembly code"
msgstr "Udsend fejlanalyseringsinfo i maskinkode"
-#: config/cris/cris.h:352
+#: config/cris/cris.h:346
msgid "Do not use condition codes from normal instructions"
msgstr "Benyt ikke betingelseskoder fra normale instruktioner"
-#: config/cris/cris.h:356
+#: config/cris/cris.h:350
msgid "Do not emit addressing modes with side-effect assignment"
msgstr "Udsend ikke adresseringstilstande med bivirkningstildeling"
-#: config/cris/cris.h:359
+#: config/cris/cris.h:353
msgid "Do not tune stack alignment"
msgstr "Finjustér ikke stakjustering"
-#: config/cris/cris.h:362
+#: config/cris/cris.h:356
msgid "Do not tune writable data alignment"
msgstr "Finjustér ikke justering af skrivbare data"
-#: config/cris/cris.h:365
+#: config/cris/cris.h:359
msgid "Do not tune code and read-only data alignment"
msgstr "Finjustér ikke justering af kode og skrivebeskyttet data"
-#: config/cris/cris.h:374
+#: config/cris/cris.h:368
msgid "Align code and data to 32 bits"
msgstr "Justér kode og data til 32 bit"
-#: config/cris/cris.h:387
+#: config/cris/cris.h:381
msgid "Don't align items in code or data"
msgstr "Justér ikke elementer i kode eller data"
-#: config/cris/cris.h:390
+#: config/cris/cris.h:384
msgid "Do not emit function prologue or epilogue"
msgstr "Udsend ikke funktionsindledning eller -afslutning"
#. We have to handle this m-option here since we can't wash it off in both CC1_SPEC and CC1PLUS_SPEC.
-#: config/cris/cris.h:394
+#: config/cris/cris.h:388
msgid "Use the most feature-enabling options allowed by other options"
msgstr "Benyt de tilvalg der giver de fleste faciliteter tilladt af andre tilvalg"
#. We must call it "override-" since calling it "no-" will cause gcc.c to forget it, if there's a "later" -mbest-lib-options. Kludgy, but needed for some multilibbed files.
-#: config/cris/cris.h:400
+#: config/cris/cris.h:394
msgid "Override -mbest-lib-options"
msgstr "Overskriv -mbest-lib-options"
-#: config/cris/cris.h:432
+#: config/cris/cris.h:426
msgid "Generate code for the specified chip or CPU version"
msgstr "Generér kode til en given chip- eller processorversion"
-#: config/cris/cris.h:434
+#: config/cris/cris.h:428
msgid "Tune alignment for the specified chip or CPU version"
msgstr "Finjustér justering til en given chip- eller processorversion"
-#: config/cris/cris.h:436
+#: config/cris/cris.h:430
msgid "Warn when a stackframe is larger than the specified size"
msgstr "Advar når en stakramme er større end den angivne størrelse"
#. Node: Profiling
-#: config/cris/cris.h:1022
+#: config/cris/cris.h:1016
msgid "no FUNCTION_PROFILER for CRIS"
msgstr "ingen FUNCTION_PROFILER for CRIS"
-#: config/cris/linux.h:71
+#: config/cris/linux.h:69
msgid "Together with -fpic and -fPIC, do not use GOTPLT references"
msgstr "Benyt ikke GOTPLT-referencer sammen med -fpic og -fPIC"
-#: config/d30v/d30v.c:207
+#: config/d30v/d30v.c:218
#, c-format
msgid "bad modes_tieable_p for register %s, mode1 %s, mode2 %s"
msgstr "ugyldig modes_tieable_p for register %s, mode1 %s, mode2 %s"
-#: config/d30v/d30v.c:2666
+#: config/d30v/d30v.c:2678
msgid "bad insn to d30v_print_operand_address:"
msgstr "ugyldig instruktion til d30v_print_operand_address:"
-#: config/d30v/d30v.c:2683 config/d30v/d30v.c:2744 config/d30v/d30v.c:2765
-#: config/d30v/d30v.c:2783
+#: config/d30v/d30v.c:2695 config/d30v/d30v.c:2756 config/d30v/d30v.c:2777
+#: config/d30v/d30v.c:2795
msgid "bad insn to d30v_print_operand_memory_reference:"
msgstr "ugyldig instruktion til d30v_print_operand_memory_reference:"
-#: config/d30v/d30v.c:2851
+#: config/d30v/d30v.c:2863
msgid "bad insn to d30v_print_operand, 'f' modifier:"
msgstr "ugyldig instruktion til d30v_print_operand, 'f'-ændring:"
-#: config/d30v/d30v.c:2860
+#: config/d30v/d30v.c:2872
msgid "bad insn to d30v_print_operand, 'A' modifier:"
msgstr "ugyldig instruktion til d30v_print_operand, 'A'-ændring:"
-#: config/d30v/d30v.c:2867
+#: config/d30v/d30v.c:2879
msgid "bad insn to d30v_print_operand, 'M' modifier:"
msgstr "ugyldig instruktion til d30v_print_operand, 'M'-ændring:"
-#: config/d30v/d30v.c:2921
+#: config/d30v/d30v.c:2933
msgid "bad insn to print_operand, 'F' or 'T' modifier:"
msgstr "ugyldig instruktion til d30v_print_operand, 'F'- eller 'T'-ændring:"
-#: config/d30v/d30v.c:2932
+#: config/d30v/d30v.c:2944
msgid "bad insn to print_operand, 'B' modifier:"
msgstr "ugyldig instruktion til d30v_print_operand, 'B'-ændring:"
-#: config/d30v/d30v.c:2939
+#: config/d30v/d30v.c:2951
msgid "bad insn to print_operand, 'E' modifier:"
msgstr "ugyldig instruktion til d30v_print_operand, 'E'-ændring:"
-#: config/d30v/d30v.c:2957
+#: config/d30v/d30v.c:2969
msgid "bad insn to print_operand, 'R' modifier:"
msgstr "ugyldig instruktion til d30v_print_operand, 'R'-ændring:"
-#: config/d30v/d30v.c:2966 config/d30v/d30v.c:2974
+#: config/d30v/d30v.c:2978 config/d30v/d30v.c:2986
msgid "bad insn to print_operand, 's' modifier:"
msgstr "ugyldig instruktion til d30v_print_operand, 's'-ændring:"
-#: config/d30v/d30v.c:3003
+#: config/d30v/d30v.c:3015
msgid "bad insn in d30v_print_operand, 0 case"
msgstr "ugyldig instruktion til d30v_print_operand, 0 case"
-#: config/d30v/d30v.c:3301
+#: config/d30v/d30v.c:3313
msgid "d30v_emit_comparison"
msgstr "d30v_emit_comparison"
-#: config/d30v/d30v.c:3345
+#: config/d30v/d30v.c:3357
msgid "bad call to d30v_move_2words"
msgstr "ugyldigt kald af d30v_move_2words"
-#: config/d30v/d30v.h:114
+#: config/d30v/d30v.h:111
msgid "Enable use of conditional move instructions"
msgstr "Aktivér brug af betingede flytteinstruktioner"
-#: config/d30v/d30v.h:117
+#: config/d30v/d30v.h:114
msgid "Disable use of conditional move instructions"
msgstr "Deaktivér brug af betingede flytteinstruktioner"
-#: config/d30v/d30v.h:120
+#: config/d30v/d30v.h:117
msgid "Debug argument support in compiler"
msgstr "Fejlanalyser parameterunderstøttelse i oversætteren"
-#: config/d30v/d30v.h:123
+#: config/d30v/d30v.h:120
msgid "Debug stack support in compiler"
msgstr "Fejlanalyser stakunderstøttelse i oversætteren"
-#: config/d30v/d30v.h:126
+#: config/d30v/d30v.h:123
msgid "Debug memory address support in compiler"
msgstr "Fejlanalyser hukommelsesadresseunderstøttelse i oversætteren"
-#: config/d30v/d30v.h:129
+#: config/d30v/d30v.h:126
msgid "Make adjacent short instructions parallel if possible"
msgstr "Gør nærliggende korte instruktioner parallelle om muligt"
-#: config/d30v/d30v.h:132
+#: config/d30v/d30v.h:129
msgid "Do not make adjacent short instructions parallel"
msgstr "Gør ikke nærliggende korte instruktioner parallelle"
-#: config/d30v/d30v.h:135 config/d30v/d30v.h:138
+#: config/d30v/d30v.h:132 config/d30v/d30v.h:135
msgid "Link programs/data to be in external memory by default"
msgstr "Sammenkæd program/data til at være i ekstern hukommelse som standard"
-#: config/d30v/d30v.h:141
+#: config/d30v/d30v.h:138
msgid "Link programs/data to be in onchip memory by default"
msgstr "Sammenkæd program/data til at være i hukommelsen på chippen som standard"
-#: config/d30v/d30v.h:149
+#: config/d30v/d30v.h:146
msgid "Change the branch costs within the compiler"
msgstr "Skift forgreningsomkostningen i oversætteren"
-#: config/d30v/d30v.h:152
+#: config/d30v/d30v.h:149
msgid "Change the threshold for conversion to conditional execution"
msgstr "Skift tærsklen for konvertering til betinget udførelse"
-#: config/dsp16xx/dsp16xx.c:1446 config/dsp16xx/dsp16xx.c:1469
+#: config/dsp16xx/dsp16xx.c:1463 config/dsp16xx/dsp16xx.c:1486
msgid "stack size > 32k"
msgstr "stakstørrelse > 32k"
-#: config/dsp16xx/dsp16xx.c:1678
+#: config/dsp16xx/dsp16xx.c:1695
msgid "invalid addressing mode"
msgstr "ugyldig adresseringstilstand"
-#: config/dsp16xx/dsp16xx.c:1821
+#: config/dsp16xx/dsp16xx.c:1838
msgid "bad register extension code"
msgstr "ugyldig registerudvidelseskode"
-#: config/dsp16xx/dsp16xx.c:1921
+#: config/dsp16xx/dsp16xx.c:1938
msgid "invalid offset in ybase addressing"
msgstr "ugyldigt afsæt i ybase-adressering"
-#: config/dsp16xx/dsp16xx.c:1924
+#: config/dsp16xx/dsp16xx.c:1941
msgid "invalid register in ybase addressing"
msgstr "ugyldigt register i ybase-adressering"
-#: config/dsp16xx/dsp16xx.c:2099
+#: config/dsp16xx/dsp16xx.c:2116
msgid "invalid shift operator in emit_1600_core_shift"
msgstr "ugyldig skifteoperator i emit_1600_core_shift"
-#: config/dsp16xx/dsp16xx.c:2428
+#: config/dsp16xx/dsp16xx.c:2406
msgid "invalid mode for gen_tst_reg"
msgstr "ugyldig tilstand for gen_tst_reg"
-#: config/dsp16xx/dsp16xx.c:2500
+#: config/dsp16xx/dsp16xx.c:2478
msgid "invalid mode for integer comparison in gen_compare_reg"
msgstr "ugyldig tilstand for heltalssammenligning i gen_compare_reg"
@@ -10006,58 +9257,62 @@ msgstr "Angiv alternativt navn til dsp16xx-chippen"
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/dsp16xx/dsp16xx.h:1218 config/dsp16xx/dsp16xx.h:1772
-#: config/dsp16xx/dsp16xx.h:1777
+#. This is how to output an insn to push a register on the stack.
+#. It need not be very fast code since it is used only for profiling
+#. This is how to output an insn to pop a register from the stack.
+#. It need not be very fast code since it is used only for profiling
+#: config/dsp16xx/dsp16xx.h:1216 config/dsp16xx/dsp16xx.h:1667
+#: config/dsp16xx/dsp16xx.h:1672
msgid "profiling not implemented yet"
msgstr "profilering understøttes ikke endnu"
#. Emit RTL insns to initialize the variable parts of a trampoline.
#. FNADDR is an RTX for the address of the function's pure code.
#. CXT is an RTX for the static chain value for the function.
-#: config/dsp16xx/dsp16xx.h:1228 config/dsp16xx/dsp16xx.h:1240
+#: config/dsp16xx/dsp16xx.h:1226 config/dsp16xx/dsp16xx.h:1238
msgid "trampolines not yet implemented"
msgstr "trampoliner understøttes ikke endnu"
-#: config/fr30/fr30.c:453
+#: config/fr30/fr30.c:451
msgid "fr30_print_operand_address: unhandled address"
msgstr "fr30_print_operand_address: ikke-håndteret adresse"
-#: config/fr30/fr30.c:480
+#: config/fr30/fr30.c:475
#, c-format
msgid "fr30_print_operand: unrecognized %%p code"
msgstr "fr30_print_operand: ukendt '%%p'-kode"
-#: config/fr30/fr30.c:500
+#: config/fr30/fr30.c:495
#, c-format
msgid "fr30_print_operand: unrecognized %%b code"
msgstr "fr30_print_operand: ukendt '%%b'-kode"
-#: config/fr30/fr30.c:521
+#: config/fr30/fr30.c:516
#, c-format
msgid "fr30_print_operand: unrecognized %%B code"
msgstr "fr30_print_operand: ukendt '%%B'-kode"
-#: config/fr30/fr30.c:529
+#: config/fr30/fr30.c:524
#, c-format
msgid "fr30_print_operand: invalid operand to %%A code"
msgstr "fr30_print_operand: ugyldig operand til '%%A'-kode"
-#: config/fr30/fr30.c:546
+#: config/fr30/fr30.c:541
#, c-format
msgid "fr30_print_operand: invalid %%x code"
msgstr "fr30_print_operand: ugyldig '%%x'-kode"
-#: config/fr30/fr30.c:553
+#: config/fr30/fr30.c:548
#, c-format
msgid "fr30_print_operand: invalid %%F code"
msgstr "fr30_print_operand: ugyldig '%%F'-kode"
-#: config/fr30/fr30.c:570
+#: config/fr30/fr30.c:565
msgid "fr30_print_operand: unknown code"
msgstr "fr30_print_operand: ukendt kode"
-#: config/fr30/fr30.c:599 config/fr30/fr30.c:608 config/fr30/fr30.c:619
-#: config/fr30/fr30.c:632
+#: config/fr30/fr30.c:594 config/fr30/fr30.c:603 config/fr30/fr30.c:614
+#: config/fr30/fr30.c:627
msgid "fr30_print_operand: unhandled MEM"
msgstr "fr30_print_operand: ikke-håndteret MEM"
@@ -10065,136 +9320,136 @@ msgstr "fr30_print_operand: ikke-håndteret MEM"
msgid "Assume small address space"
msgstr "Antag lille adresserum"
-#: config/frv/frv.c:410 config/frv/frv.c:428
+#: config/frv/frv.c:392 config/frv/frv.c:410
#, c-format
msgid "Unknown cpu: -mcpu=%s"
msgstr "Ukendt processor: -mcpu=%s"
-#: config/frv/frv.c:451
+#: config/frv/frv.c:433
msgid "-fpic and -gdwarf are incompatible (-fpic and -g/-gdwarf-2 are fine)"
msgstr "-fpic og -gdwarf er indbyrdes uforenelige (-fpic og -g/-gdwarf-2 er i orden)"
-#: config/frv/frv.c:2520
+#: config/frv/frv.c:2397
msgid "Bad insn to frv_print_operand_address:"
msgstr "Ugyldig instruktion til frv_print_operand_address:"
-#: config/frv/frv.c:2533
+#: config/frv/frv.c:2408
msgid "Bad register to frv_print_operand_memory_reference_reg:"
msgstr "Ugyldigt register til frv_print_operand_memory_reference_reg:"
-#: config/frv/frv.c:2574 config/frv/frv.c:2584 config/frv/frv.c:2593
-#: config/frv/frv.c:2621 config/frv/frv.c:2633 config/frv/frv.c:2637
+#: config/frv/frv.c:2446 config/frv/frv.c:2456 config/frv/frv.c:2465
+#: config/frv/frv.c:2493 config/frv/frv.c:2506 config/frv/frv.c:2510
msgid "Bad insn to frv_print_operand_memory_reference:"
msgstr "Ugyldig instruktion til frv_print_operand_memory_reference:"
-#: config/frv/frv.c:2779
+#: config/frv/frv.c:2648
msgid "Bad insn in frv_print_operand, bad const_double"
msgstr "Ugyldig instruktion i frv_print_operand, ugyldig const_double"
-#: config/frv/frv.c:2824
+#: config/frv/frv.c:2693
msgid "Bad insn to frv_print_operand, 'C' modifier:"
msgstr "Ugyldig instruktionen til frv_print_operand, 'C'-modifikation:"
-#: config/frv/frv.c:2847
+#: config/frv/frv.c:2716
msgid "Bad insn to frv_print_operand, 'c' modifier:"
msgstr "Ugyldig instruktion til frv_print_operand, 'c'-modifikation:"
-#: config/frv/frv.c:2872
+#: config/frv/frv.c:2741
msgid "Bad insn to frv_print_operand, 'e' modifier:"
msgstr "Ugyldig instruktion til frv_print_operand, 'e'-modifikation:"
-#: config/frv/frv.c:2880
+#: config/frv/frv.c:2749
msgid "Bad insn to frv_print_operand, 'F' modifier:"
msgstr "Ugyldig instruktion til frv_print_operand, 'F'-modifikation:"
-#: config/frv/frv.c:2896
+#: config/frv/frv.c:2765
msgid "Bad insn to frv_print_operand, 'f' modifier:"
msgstr "Ugyldig instruktion til frv_print_operand, 'f'-modifikation:"
-#: config/frv/frv.c:2949
+#: config/frv/frv.c:2818
msgid "Bad insn to frv_print_operand, 'L' modifier:"
msgstr "Ugyldig instruktion til frv_print_operand, 'L'-modifikation:"
-#: config/frv/frv.c:2962
+#: config/frv/frv.c:2831
msgid "Bad insn to frv_print_operand, 'M/N' modifier:"
msgstr "Ugyldig instruktion til frv_print_operand, 'M/N'-modifikation:"
-#: config/frv/frv.c:2983
+#: config/frv/frv.c:2852
msgid "Bad insn to frv_print_operand, 'O' modifier:"
msgstr "Ugyldig instruktion til frv_print_operand, 'O'-modifikation:"
-#: config/frv/frv.c:3001
+#: config/frv/frv.c:2870
msgid "Bad insn to frv_print_operand, P modifier:"
msgstr "Ugyldig instruktion til frv_print_operand, P-modifikation:"
-#: config/frv/frv.c:3021
+#: config/frv/frv.c:2890
msgid "Bad insn in frv_print_operand, z case"
msgstr "Ugyldig instruktion i frv_print_operand, tilfældet z"
-#: config/frv/frv.c:3049
+#: config/frv/frv.c:2918
msgid "Bad insn in frv_print_operand, 0 case"
msgstr "Ugyldig instruktion i frv_print_operand, tilfældet 0"
-#: config/frv/frv.c:3054
+#: config/frv/frv.c:2923
msgid "frv_print_operand: unknown code"
msgstr "fr_print_operand: ukendt kode"
-#: config/frv/frv.c:5737
+#: config/frv/frv.c:5474
msgid "Bad output_move_single operand"
msgstr "Ugyldig output_move_single-operand"
-#: config/frv/frv.c:5866
+#: config/frv/frv.c:5601
msgid "Bad output_move_double operand"
msgstr "Ugyldig output_move_double-operand"
-#: config/frv/frv.c:6010
+#: config/frv/frv.c:5743
msgid "Bad output_condmove_single operand"
msgstr "Ugyldig output_condmove_single-operand"
-#: config/frv/frv.c:8315
+#: config/frv/frv.c:8031
msgid "frv_registers_update"
msgstr "frv_registers_update"
-#: config/frv/frv.c:8475
+#: config/frv/frv.c:8188
msgid "frv_registers_used_p"
msgstr "frv_registers_used_p"
-#: config/frv/frv.c:8604
+#: config/frv/frv.c:8314
msgid "frv_registers_set_p"
msgstr "frv_registers_set_p"
-#: config/frv/frv.c:9171
+#: config/frv/frv.c:8910
msgid "accumulator is not a constant integer"
msgstr "akkumulator er ikke et konstant heltal"
-#: config/frv/frv.c:9176
+#: config/frv/frv.c:8915
msgid "accumulator number is out of bounds"
msgstr "akkumulatortal er uden for det gyldig interval"
-#: config/frv/frv.c:9187
+#: config/frv/frv.c:8926
#, c-format
msgid "inappropriate accumulator for `%s'"
msgstr "forkert akkumulator for '%s'"
-#: config/frv/frv.c:9253
+#: config/frv/frv.c:8986
#, c-format
msgid "`%s' expects a constant argument"
msgstr "'%s' forventer en konstant parameter"
-#: config/frv/frv.c:9258
+#: config/frv/frv.c:8991
#, c-format
msgid "constant argument out of range for `%s'"
msgstr "konstant parameter uden for det gyldige interval for '%s'"
-#: config/frv/frv.c:9638
+#: config/frv/frv.c:9338
msgid "media functions are not available unless -mmedia is used"
msgstr "mediafunktioner er ikke tilgængelige medmindre -mmedia benyttes"
-#: config/frv/frv.c:9650
+#: config/frv/frv.c:9350
msgid "this media function is only available on the fr500"
msgstr "denne mediafunktion er kun tilgængelig på fr500"
-#: config/frv/frv.c:9678
+#: config/frv/frv.c:9378
msgid "this media function is only available on the fr400"
msgstr "denne mediafunktion er kun tilgængelig på fr400"
@@ -10207,15 +9462,16 @@ msgstr "denne mediafunktion er kun tilgængelig på fr400"
#. #else
#. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)");
#. #endif
-#: config/frv/frv.h:512
+#: config/frv/frv.h:506
+#, c-format
msgid " (frv)"
msgstr " (frv)"
-#: config/h8300/h8300.c:314
+#: config/h8300/h8300.c:288
msgid "-ms2600 is used without -ms"
msgstr "-ms2600 benyttet uden -ms"
-#: config/h8300/h8300.c:320
+#: config/h8300/h8300.c:294
msgid "-mn is used without -mh or -ms"
msgstr "-mn benyttet uden -mh eller -ms"
@@ -10224,75 +9480,75 @@ msgstr "-mn benyttet uden -mh eller -ms"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/h8300/h8300.h:150
+#: config/h8300/h8300.h:145
msgid "Generate H8S code"
msgstr "Generér H8S-kode"
-#: config/h8300/h8300.h:151
+#: config/h8300/h8300.h:146
msgid "Do not generate H8S code"
msgstr "Generér ikke H8S-kode"
-#: config/h8300/h8300.h:152
+#: config/h8300/h8300.h:147
msgid "Generate H8S/2600 code"
msgstr "Generér H8S/2600-kode"
-#: config/h8300/h8300.h:153
+#: config/h8300/h8300.h:148
msgid "Do not generate H8S/2600 code"
msgstr "Generér ikke H8S/2600-kode"
-#: config/h8300/h8300.h:154
+#: config/h8300/h8300.h:149
msgid "Make integers 32 bits wide"
msgstr "Gør heltal 32 bit brede"
-#: config/h8300/h8300.h:157
+#: config/h8300/h8300.h:152
msgid "Use registers for argument passing"
msgstr "Benyt registre til parameteroverbringning"
-#: config/h8300/h8300.h:159
+#: config/h8300/h8300.h:154
msgid "Do not use registers for argument passing"
msgstr "Benyt ikke registre til parameteroverbringning"
-#: config/h8300/h8300.h:161
+#: config/h8300/h8300.h:156
msgid "Consider access to byte sized memory slow"
msgstr "Betragt tilgang til bytestørrelseshukommelse som langsomt"
-#: config/h8300/h8300.h:162
+#: config/h8300/h8300.h:157
msgid "Enable linker relaxing"
msgstr "Aktivér tolerant sammenkædning"
-#: config/h8300/h8300.h:164
+#: config/h8300/h8300.h:158
msgid "Generate H8/300H code"
msgstr "Generér H8/300H-kode"
-#: config/h8300/h8300.h:165
+#: config/h8300/h8300.h:159
msgid "Enable the normal mode"
msgstr "Aktivér den normale tilstand"
-#: config/h8300/h8300.h:166
+#: config/h8300/h8300.h:160
msgid "Do not generate H8/300H code"
msgstr "Generér ikke H8/300H-kode"
-#: config/h8300/h8300.h:167
+#: config/h8300/h8300.h:161
msgid "Use H8/300 alignment rules"
msgstr "Benyt H8/300-justeringsregler"
-#: config/i370/i370-c.c:53
+#: config/i370/i370-c.c:55
msgid "junk at end of #pragma map"
msgstr "ragelse i slutningen af #pragma map"
-#: config/i370/i370-c.c:59
+#: config/i370/i370-c.c:61
msgid "malformed #pragma map, ignored"
msgstr "forkert udformet '#pragma map' - ignoreret"
-#: config/i370/i370.c:915
+#: config/i370/i370.c:784
msgid "real name is too long - alias ignored"
msgstr "rigtigt navn for langt - alias ignoreret"
-#: config/i370/i370.c:920
+#: config/i370/i370.c:789
msgid "alias name is too long - alias ignored"
msgstr "aliasnavn for langt - alias ignoreret"
-#: config/i370/i370.c:1191
+#: config/i370/i370.c:1060
msgid "internal error--no jump follows compare:"
msgstr "intern fejl - intet spring efterfølger sammenligning:"
@@ -10308,407 +9564,465 @@ msgstr "Generér char-instruktioner"
msgid "Do not generate char instructions"
msgstr "Generér ikke char-instruktioner"
-#: config/i386/i386.c:1050
+#: config/i386/i386.c:1161
#, c-format
msgid "code model %s not supported in PIC mode"
msgstr "kodemodellen %s er ikke understøttet i PIC-tilstand"
-#: config/i386/i386.c:1060 config/sparc/sparc.c:356
+#: config/i386/i386.c:1171 config/sparc/sparc.c:387
#, c-format
msgid "bad value (%s) for -mcmodel= switch"
msgstr "ugyldig værdi (%s) til tilvalget -mcmodel="
-#: config/i386/i386.c:1075
+#: config/i386/i386.c:1186
#, c-format
msgid "bad value (%s) for -masm= switch"
msgstr "ugyldig værdi (%s) til tilvalget -masm="
-#: config/i386/i386.c:1078
+#: config/i386/i386.c:1189
#, c-format
msgid "code model `%s' not supported in the %s bit mode"
msgstr "kodemodellen %s er ikke understøttet i %s bit-tilstand"
-#: config/i386/i386.c:1081
+#: config/i386/i386.c:1192
msgid "code model `large' not supported yet"
msgstr "kodemodellen 'large' er ikke understøttet endnu"
-#: config/i386/i386.c:1083
+#: config/i386/i386.c:1194
#, c-format
msgid "%i-bit mode not compiled in"
msgstr "%i bit-tilstand er ikke oversat med ind"
-#: config/i386/i386.c:1113
+#: config/i386/i386.c:1221 config/i386/i386.c:1233
+#, fuzzy
+msgid "CPU you selected does not support x86-64 instruction set"
+msgstr "målprocessoren understøtter ikke THUMB-instruktioner"
+
+#: config/i386/i386.c:1226 config/iq2000/iq2000.c:1840
#, c-format
msgid "bad value (%s) for -march= switch"
msgstr "ugyldig værdi (%s) til tilvalget -march="
-#: config/i386/i386.c:1124
+#: config/i386/i386.c:1239
#, c-format
-msgid "bad value (%s) for -mcpu= switch"
+msgid "bad value (%s) for -mtune= switch"
msgstr "ugyldig værdi (%s) til tilvalget -mcpu="
-#: config/i386/i386.c:1141
+#: config/i386/i386.c:1256
#, c-format
msgid "-mregparm=%d is not between 0 and %d"
msgstr "-mregparm=%d er ikke mellem 0 og %d"
-#: config/i386/i386.c:1154
+#: config/i386/i386.c:1269
msgid "-malign-loops is obsolete, use -falign-loops"
msgstr "-malign-loops er forældet, benyt -falign-loops"
-#: config/i386/i386.c:1159 config/i386/i386.c:1172 config/i386/i386.c:1185
+#: config/i386/i386.c:1274 config/i386/i386.c:1287 config/i386/i386.c:1300
#, c-format
msgid "-malign-loops=%d is not between 0 and %d"
msgstr "-malign-loops=%d er ikke mellem 0 og %d"
-#: config/i386/i386.c:1167
+#: config/i386/i386.c:1282
msgid "-malign-jumps is obsolete, use -falign-jumps"
msgstr "-malign-jumps er forældet, benyt -falign-jumps"
-#: config/i386/i386.c:1180
+#: config/i386/i386.c:1295
msgid "-malign-functions is obsolete, use -falign-functions"
msgstr "-malign-functions er forældet, benyt -falign-functions"
-#: config/i386/i386.c:1218
+#: config/i386/i386.c:1333
#, c-format
msgid "-mpreferred-stack-boundary=%d is not between %d and 12"
msgstr "-mpreferred-stack-boundary=%d er ikke mellem %d og 12"
-#: config/i386/i386.c:1230
+#: config/i386/i386.c:1345
#, c-format
msgid "-mbranch-cost=%d is not between 0 and 5"
msgstr "-mbranch-cost=%d er ikke mellem 0 og 5"
-#: config/i386/i386.c:1242
+#: config/i386/i386.c:1357
#, c-format
msgid "bad value (%s) for -mtls-dialect= switch"
msgstr "ugyldig værdi (%s) til tilvalget -mtls-dialect"
-#: config/i386/i386.c:1263
+#: config/i386/i386.c:1386
msgid "-malign-double makes no sense in the 64bit mode"
msgstr "-malign-double giver ikke mening i 64 bit-tilstand"
-#: config/i386/i386.c:1265
+#: config/i386/i386.c:1388
msgid "-mrtd calling convention not supported in the 64bit mode"
msgstr "kaldekonventionen -mrtd er ikke understøttet i 64 bit-tilstand"
-#: config/i386/i386.c:1281 config/i386/i386.c:1292
+#: config/i386/i386.c:1410 config/i386/i386.c:1421
msgid "SSE instruction set disabled, using 387 arithmetics"
msgstr "SSE-instruktionssæt deaktiveret, bruger 387-beregninger"
-#: config/i386/i386.c:1297
+#: config/i386/i386.c:1426
msgid "387 instruction set disabled, using SSE arithmetics"
msgstr "387-instruktionssæt deaktiveret, bruger SSE-beregninger"
-#: config/i386/i386.c:1304
+#: config/i386/i386.c:1433
#, c-format
msgid "bad value (%s) for -mfpmath= switch"
msgstr "ugyldig værdi (%s) til tilvalget -mfpmath="
-#: config/i386/i386.c:1436
+#: config/i386/i386.c:1581 config/i386/i386.c:1592
+#, fuzzy
+msgid "fastcall and stdcall attributes are not compatible"
+msgstr "shared og mdll er indbyrdes uforenelige"
+
+#: config/i386/i386.c:1585 config/i386/i386.c:1641
+#, fuzzy
+msgid "fastcall and regparm attributes are not compatible"
+msgstr "egenskaberne 'trap' og 'far' kan ikke bruges på samme tid, ignorerer 'far'"
+
+#: config/i386/i386.c:1628
#, c-format
msgid "`%s' attribute requires an integer constant argument"
msgstr "egenskaben '%s' kræver en heltalskonstant som parameter"
-#: config/i386/i386.c:1442
+#: config/i386/i386.c:1634
#, c-format
msgid "argument to `%s' attribute larger than %d"
msgstr "parameter til egenskaben '%s' er større end %d"
-#: config/i386/i386.c:2504
+#: config/i386/i386.c:2593
+msgid "SSE vector argument without SSE enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2609
+msgid "MMX vector argument without MMX enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2837
msgid "SSE vector return without SSE enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:6386
+#: config/i386/i386.c:6811
msgid "invalid UNSPEC as operand"
msgstr "ugyldig UNSPEC som operand"
-#: config/i386/i386.c:6648
+#: config/i386/i386.c:7069
msgid "extended registers have no high halves"
msgstr "udvidede registre har ikke høje halvdele"
-#: config/i386/i386.c:6663
+#: config/i386/i386.c:7084
msgid "unsupported operand size for extended register"
msgstr "ikke-understøttet operandstørrelse for udvidede registre"
-#: config/i386/i386.c:6978
+#: config/i386/i386.c:7399
msgid "operand is neither a constant nor a condition code, invalid operand code 'c'"
msgstr "operand er hverken en konstant eller en betingelseskode, ugyldig operandkode 'c'"
-#: config/i386/i386.c:7024
+#: config/i386/i386.c:7445
#, c-format
msgid "invalid operand code `%c'"
msgstr "ugyldig operandkode '%c'"
-#: config/i386/i386.c:7071
+#: config/i386/i386.c:7488
msgid "invalid constraints for operand"
msgstr "ugyldige begrænsninger for operand"
-#: config/i386/i386.c:11271
+#: config/i386/i386.c:11889
msgid "unknown insn mode"
msgstr "ukendt instruktionstilstand"
-#. @@@ better error message
-#: config/i386/i386.c:13391 config/i386/i386.c:13427
-msgid "selector must be an immediate"
-msgstr "vælger skal være en umiddelbar værdi"
-
-#. @@@ better error message
-#: config/i386/i386.c:13588 config/i386/i386.c:13622
-msgid "mask must be an immediate"
-msgstr "maske skal være en umiddelbar værdi"
+#: config/i386/i386.c:14021 config/i386/i386.c:14057
+#, c-format
+msgid "selector must be an integer constant in the range 0..%i"
+msgstr ""
-#: config/i386/i386.c:13654
+#: config/i386/i386.c:14285
msgid "shift must be an immediate"
msgstr "skifteværdi skal være en umiddelbar værdi"
-#: config/i386/winnt.c:96
+#: config/i386/i386.c:15308
#, fuzzy, c-format
-msgid "function `%s' definition is marked dllimport."
-msgstr "'auto' er påhæftet funktionsdefinitionen"
+msgid "`%s' incompatible attribute ignored"
+msgstr "egenskaben '%s' ignoreret"
#: config/i386/winnt.c:104
-#, fuzzy, c-format
-msgid "variable `%s' definition is marked dllimport."
+#, fuzzy
+msgid "%Jfunction `%D' definition is marked dllimport."
+msgstr "'auto' er påhæftet funktionsdefinitionen"
+
+#: config/i386/winnt.c:112
+#, fuzzy
+msgid "%Jvariable `%D' definition is marked dllimport."
msgstr "statisk variabel '%s' er markeret dllimport"
-#: config/i386/winnt.c:123
-#, c-format
-msgid "external linkage required for symbol '%s' because of '%s' attribute."
+#: config/i386/winnt.c:132
+msgid "%Jexternal linkage required for symbol '%D' because of '%s' attribute."
msgstr ""
-#: config/i386/winnt.c:143
+#: config/i386/winnt.c:149
#, c-format
msgid "`%s' attribute only applies to variables"
msgstr "egenskaben '%s' kan kun anvendes på variabler"
-#: config/i386/winnt.c:242
-#, c-format
-msgid "function '%s' is defined after prior declaration as dllimport: attribute ignored."
+#: config/i386/winnt.c:247
+msgid "%Jfunction '%D' is defined after prior declaration as dllimport: attribute ignored"
msgstr ""
-#: config/i386/winnt.c:252
-#, fuzzy, c-format
-msgid "inline function '%s' is declared as dllimport: attribute ignored."
+#: config/i386/winnt.c:258
+#, fuzzy
+msgid "%Jinline function '%D' is declared as dllimport: attribute ignored."
msgstr "funktionen '%s' omerklæret med egenskaben noinline"
-#: config/i386/winnt.c:263
-#, c-format
-msgid "definition of static data member '%s' of dllimport'd class."
+#: config/i386/winnt.c:270
+msgid "%Jdefinition of static data member '%D' of dllimport'd class."
msgstr ""
-#: config/i386/winnt.c:322
-#, c-format
-msgid "inconsistent dll linkage for '%s': dllexport assumed."
+#: config/i386/winnt.c:329
+msgid "%Jinconsistent dll linkage for '%D', dllexport assumed."
msgstr ""
-#: config/i386/winnt.c:364
+#: config/i386/winnt.c:371
#, c-format
msgid "`%s' declared as both exported to and imported from a DLL"
msgstr "'%s' erklæret som både eksporteret til og importeret fra en DLL"
-#: config/i386/winnt.c:373
-#, c-format
-msgid "failure in redeclaration of '%s': dllimport'd symbol lacks external linkage."
+#: config/i386/winnt.c:380
+msgid "%Jfailure in redeclaration of '%D': dllimport'd symbol lacks external linkage."
msgstr ""
-#: config/i386/winnt.c:479
-#, c-format
-msgid "'%s' %s after being referenced with dllimport linkage."
+#: config/i386/winnt.c:529
+msgid "%J'%D' defined locally after being referenced with dllimport linkage"
+msgstr ""
+
+#: config/i386/winnt.c:532
+msgid "%J'%D' redeclared without dllimport attribute after being referenced with dllimport linkage"
msgstr ""
-#: config/i386/cygwin.h:45
+#: config/i386/winnt.c:701
+#, fuzzy
+msgid "%J'%D' causes a section type conflict"
+msgstr "%s forårsager en sektionstypekonflikt"
+
+#: config/i386/cygming.h:40
msgid "Use the Cygwin interface"
msgstr "Benyt Cygwin-grænsefladen"
-#: config/i386/cygwin.h:46
+#: config/i386/cygming.h:41
msgid "Use the Mingw32 interface"
msgstr "Benyt Mingw32-grænsefladen"
-#: config/i386/cygwin.h:47
+#: config/i386/cygming.h:42
msgid "Create GUI application"
msgstr "Opret grafisk program"
-#: config/i386/cygwin.h:48
+#: config/i386/cygming.h:43
msgid "Don't set Windows defines"
msgstr "Angiv ikke Windows-definitioner"
-#: config/i386/cygwin.h:49
+#: config/i386/cygming.h:44
msgid "Set Windows defines"
msgstr "Angiv Windows-definitioner"
-#: config/i386/cygwin.h:50
+#: config/i386/cygming.h:45
msgid "Create console application"
msgstr "Opret konsolprogram"
-#: config/i386/cygwin.h:51 config/i386/win32.h:59
+#: config/i386/cygming.h:46
msgid "Generate code for a DLL"
msgstr "Generér kode til en DLL"
-#: config/i386/cygwin.h:53 config/i386/win32.h:61
+#: config/i386/cygming.h:48
msgid "Ignore dllimport for functions"
msgstr "Ignorér dllimport til funktioner"
-#: config/i386/cygwin.h:55
+#: config/i386/cygming.h:50
msgid "Use Mingw-specific thread support"
msgstr "Benyt Mingw-specifik trådunderstøttelse"
-#: config/i386/cygwin.h:245
+#: config/i386/cygming.h:169
#, c-format
msgid "-f%s ignored for target (all code is position independent)"
msgstr "-f%s ignoreret for målarkitekturen (all kode er positionsuafhængigt)"
-#: config/i386/djgpp.h:206
+#: config/i386/djgpp.h:191
msgid "-mbnu210 is ignored (option is obsolete)"
msgstr "-mbnu210 ignoreres (tilvalget er forældet)"
+#: config/i386/i386-interix.h:256
+#, fuzzy
+msgid "ms-bitfields not supported for objc"
+msgstr "-f%s er ikke understøttet: ignoreret"
+
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
-#: config/i386/i386.h:306
+#: config/i386/i386.h:339
msgid "Alternate calling convention"
msgstr "Alternativ kaldekonvention"
-#: config/i386/i386.h:308 config/m68k/m68k.h:180 config/ns32k/ns32k.h:144
+#: config/i386/i386.h:341 config/m68k/m68k.h:344 config/ns32k/ns32k.h:144
msgid "Use normal calling convention"
msgstr "Brug normal kaldekonvention"
-#: config/i386/i386.h:310
+#: config/i386/i386.h:343
msgid "Align some doubles on dword boundary"
msgstr "Justér nogle double-variabler til dword-grænserne"
-#: config/i386/i386.h:312
+#: config/i386/i386.h:345
msgid "Align doubles on word boundary"
msgstr "Justér double-variabler til word-grænserne"
-#: config/i386/i386.h:314
+#: config/i386/i386.h:347
msgid "Uninitialized locals in .bss"
msgstr "Lokale variabler uden startværdi i .bss"
-#: config/i386/i386.h:316
+#: config/i386/i386.h:349
msgid "Uninitialized locals in .data"
msgstr "Lokale variabler uden startværdi i .data"
-#: config/i386/i386.h:318 config/m68k/linux-aout.h:45 config/m68k/linux.h:50
-#: config/ns32k/ns32k.h:167
+#: config/i386/i386.h:351 config/m68k/linux.h:35 config/ns32k/ns32k.h:167
msgid "Use IEEE math for fp comparisons"
msgstr "Brug IEEE-matematik til kommatalssammenligninger"
-#: config/i386/i386.h:320 config/ns32k/ns32k.h:169
+#: config/i386/i386.h:353 config/ns32k/ns32k.h:169
msgid "Do not use IEEE math for fp comparisons"
msgstr "Brug ikke IEEE-matematik til kommatalssammenligninger"
-#: config/i386/i386.h:322
+#: config/i386/i386.h:355
msgid "Return values of functions in FPU registers"
msgstr "Returnér værdier fra funktioner i fpu-registre"
-#: config/i386/i386.h:324
+#: config/i386/i386.h:357
msgid "Do not return values of functions in FPU registers"
msgstr "Returnér ikke værdier fra funktioner i fpu-registre"
-#: config/i386/i386.h:326
+#: config/i386/i386.h:359
msgid "Do not generate sin, cos, sqrt for FPU"
msgstr "Generér ikke sin, cos, sqrt til fpu"
-#: config/i386/i386.h:328
+#: config/i386/i386.h:361
msgid "Generate sin, cos, sqrt for FPU"
msgstr "Generér sin, cos og sqrt til fpu"
-#: config/i386/i386.h:330
+#: config/i386/i386.h:363
msgid "Omit the frame pointer in leaf functions"
msgstr "Udelad rammehenvisningen i de yderste funktioner"
-#: config/i386/i386.h:333
+#: config/i386/i386.h:366
msgid "Enable stack probing"
msgstr "Aktivér stakprøvning"
#. undocumented
#. undocumented
-#: config/i386/i386.h:338
+#: config/i386/i386.h:371
msgid "Align destination of the string operations"
msgstr "Justér strengoperationernes destination"
-#: config/i386/i386.h:340
+#: config/i386/i386.h:373
msgid "Do not align destination of the string operations"
msgstr "Justér ikke strengoperationernes destination"
-#: config/i386/i386.h:342
+#: config/i386/i386.h:375
msgid "Inline all known string operations"
msgstr "Indbyg alle kendte strengoperationer"
-#: config/i386/i386.h:344
+#: config/i386/i386.h:377
msgid "Do not inline all known string operations"
msgstr "Indbyg ikke alle kendte strengoperationer"
-#: config/i386/i386.h:346 config/i386/i386.h:350
+#: config/i386/i386.h:379 config/i386/i386.h:383
msgid "Use push instructions to save outgoing arguments"
msgstr "Brug push-instruktioner til at gemme udgående parametre"
-#: config/i386/i386.h:348 config/i386/i386.h:352
+#: config/i386/i386.h:381 config/i386/i386.h:385
msgid "Do not use push instructions to save outgoing arguments"
msgstr "Brug ikke push-instruktioner til at gemme udgående parametre"
# shadowing betyder at en funktion har samme navn og dermed skjuler en anden
-#: config/i386/i386.h:354
+#: config/i386/i386.h:387
msgid "Support MMX built-in functions"
msgstr "Understøt indbyggede MMX-funktioner"
-#: config/i386/i386.h:356
+#: config/i386/i386.h:389
msgid "Do not support MMX built-in functions"
msgstr "Understøt ikke indbyggede MMX-funktioner"
# shadowing betyder at en funktion har samme navn og dermed skjuler en anden
-#: config/i386/i386.h:358
+#: config/i386/i386.h:391
msgid "Support 3DNow! built-in functions"
msgstr "Understøt indbyggede 3DNow!-funktioner"
-#: config/i386/i386.h:360
+#: config/i386/i386.h:393
msgid "Do not support 3DNow! built-in functions"
msgstr "Understøt ikke indbyggede 3DNow!-funktioner"
-#: config/i386/i386.h:362
+#: config/i386/i386.h:395
msgid "Support MMX and SSE built-in functions and code generation"
msgstr "Understøt indbyggede MMX- og SSE-funktioner og kodegenerering"
-#: config/i386/i386.h:364
+#: config/i386/i386.h:397
msgid "Do not support MMX and SSE built-in functions and code generation"
msgstr "Understøt ikke indbyggede MMX- og SSE-funktioner og kodegenerering"
-#: config/i386/i386.h:366
+#: config/i386/i386.h:399
msgid "Support MMX, SSE and SSE2 built-in functions and code generation"
msgstr "Understøt indbyggede MMX-, SSE- og SSE2-funktioner og kodegenerering"
-#: config/i386/i386.h:368
+#: config/i386/i386.h:401
msgid "Do not support MMX, SSE and SSE2 built-in functions and code generation"
msgstr "Understøt ikke indbyggede MMX-, SSE- og SSE2-funktioner og kodegenerering"
-#: config/i386/i386.h:370
+#: config/i386/i386.h:403
+#, fuzzy
+msgid "Support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr "Understøt indbyggede MMX-, SSE- og SSE2-funktioner og kodegenerering"
+
+#: config/i386/i386.h:405
+#, fuzzy
+msgid "Do not support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr "Understøt ikke indbyggede MMX-, SSE- og SSE2-funktioner og kodegenerering"
+
+#: config/i386/i386.h:407
msgid "sizeof(long double) is 16"
msgstr "sizeof(long double) er 16"
-#: config/i386/i386.h:372
+#: config/i386/i386.h:409
msgid "sizeof(long double) is 12"
msgstr "sizeof(long double) er 12"
-#: config/i386/i386.h:374
+#: config/i386/i386.h:411
msgid "Generate 64bit x86-64 code"
msgstr "Generér 64 bit x86-64-kode"
-#: config/i386/i386.h:376
+#: config/i386/i386.h:413
msgid "Generate 32bit i386 code"
msgstr "Generér 64 bit i386-kode"
-#: config/i386/i386.h:378
+#: config/i386/i386.h:415
+msgid "Use native (MS) bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:417
+msgid "Use gcc default bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:419
msgid "Use red-zone in the x86-64 code"
msgstr "Benyt rødzone i x86-64-koden"
-#: config/i386/i386.h:380
+#: config/i386/i386.h:421
msgid "Do not use red-zone in the x86-64 code"
msgstr "Benyt ikke rødzone i x86-64-koden"
+#: config/i386/i386.h:423
+#, c-format
+msgid "Use direct references against %gs when accessing tls data"
+msgstr ""
+
+#: config/i386/i386.h:425
+#, c-format
+msgid "Do not use direct references against %gs when accessing tls data"
+msgstr ""
+
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10718,23 +10032,24 @@ msgstr "Benyt ikke rødzone i x86-64-koden"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:409 config/rs6000/rs6000.h:393 config/sparc/sparc.h:635
+#: config/i386/i386.h:459 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437
+#: config/s390/s390.h:146 config/sparc/sparc.h:650
msgid "Schedule code for given CPU"
msgstr "Planlæg koden til en given processor"
-#: config/i386/i386.h:411
+#: config/i386/i386.h:461
msgid "Generate floating point mathematics using given instruction set"
msgstr "Generér kommatalsmatematik vha. givent instruktionssæt"
-#: config/i386/i386.h:413
+#: config/i386/i386.h:463 config/s390/s390.h:148
msgid "Generate code for given CPU"
msgstr "Generér kode til en given processor"
-#: config/i386/i386.h:415
+#: config/i386/i386.h:465
msgid "Number of registers used to pass integer arguments"
msgstr "Antallet af registre der skal bruges til at overbringe heltalsparametre"
-#. TARGET_DEFAULT is defined in sun*.h and isi.h, etc.
+#. TARGET_DEFAULT is defined in m68k-none.h, netbsd.h, etc.
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10744,97 +10059,98 @@ msgstr "Antallet af registre der skal bruges til at overbringe heltalsparametre"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:417 config/m68k/m68k.h:263
+#: config/i386/i386.h:467 config/m68k/m68k.h:360
msgid "Loop code aligned to this power of 2"
msgstr "Løkkekode skal justeres til denne potens af 2"
-#: config/i386/i386.h:419 config/m68k/m68k.h:265
+#: config/i386/i386.h:469 config/m68k/m68k.h:362
msgid "Jump targets are aligned to this power of 2"
msgstr "Steder der skal springes til, justeres til denne potens af 2"
-#: config/i386/i386.h:421 config/m68k/m68k.h:267
+#: config/i386/i386.h:471 config/m68k/m68k.h:364
msgid "Function starts are aligned to this power of 2"
msgstr "Funktionsbegyndelser justeres til denne potens af 2"
-#: config/i386/i386.h:424
+#: config/i386/i386.h:474
msgid "Attempt to keep stack aligned to this power of 2"
msgstr "Forsøg at holde stakken justeret til denne potens af 2"
-#: config/i386/i386.h:426
+#: config/i386/i386.h:476
msgid "Branches are this expensive (1-5, arbitrary units)"
msgstr "Forgreninger koster dette (1-5, vilkårlige enheder)"
-#: config/i386/i386.h:428
+#: config/i386/i386.h:478
msgid "Use given x86-64 code model"
msgstr "Benyt den givne x86-64-kodemodel"
#. Undocumented.
#. Undocumented.
-#: config/i386/i386.h:434
+#: config/i386/i386.h:484
msgid "Use given assembler dialect"
msgstr "Benyt den givne maskinkodedialekt"
-#: config/i386/i386.h:436
+#: config/i386/i386.h:486
msgid "Use given thread-local storage dialect"
msgstr "Benyt den givne tråd-lokale lagringsdialekt"
-#: config/i386/sco5.h:297
+#: config/i386/sco5.h:292
msgid "Generate ELF output"
msgstr "Generér ELF-uddata"
-#: config/i386/win32.h:53
-msgid "Use Mingw32 interface"
-msgstr "Benyt Mingw32-grænseflade"
-
-#: config/i386/win32.h:55
-msgid "Use Cygwin interface"
-msgstr "Benyt Cygwin-grænseflade"
-
-#: config/i386/win32.h:57
-msgid "Use bare Windows interface"
-msgstr "Benyt bar Windows-grænseflade"
-
#. If the environment variable DJDIR is not defined, then DJGPP is not installed correctly and GCC will quickly become confused with the default prefix settings. Report the problem now so the user doesn't receive deceptive "file not found" error messages later.
#. DJDIR is automatically defined by the DJGPP environment config file pointed to by the environment variable DJGPP. Examine DJGPP to try and figure out what's wrong.
-#: config/i386/xm-djgpp.h:71
+#: config/i386/xm-djgpp.h:64
msgid "environment variable DJGPP not defined"
msgstr "miljøvariablen DJGPP er ikke defineret"
-#: config/i386/xm-djgpp.h:73
+#: config/i386/xm-djgpp.h:66
#, c-format
msgid "environment variable DJGPP points to missing file '%s'"
msgstr "miljøvariablen DJGPP peger på den manglende fil '%s'"
-#: config/i386/xm-djgpp.h:76
+#: config/i386/xm-djgpp.h:69
#, c-format
msgid "environment variable DJGPP points to corrupt file '%s'"
msgstr "miljøvariablen DJGPP peger på den ødelagte fil '%s'"
-#: config/i960/i960-c.c:66
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/i860/i860.h:60
+msgid "Generate code which uses the FPU"
+msgstr "Generér kode som bruger FPU'en"
+
+#: config/i860/i860.h:61 config/i860/i860.h:62
+msgid "Do not generate code which uses the FPU"
+msgstr "Generér ikke kode som bruger FPU'en"
+
+#: config/i960/i960-c.c:68
msgid "sorry, not implemented: #pragma align NAME=SIZE"
msgstr "desværre, ikke implementeret: #pragma align NAVN=STØRRELSE"
-#: config/i960/i960-c.c:71
+#: config/i960/i960-c.c:73
msgid "malformed #pragma align - ignored"
msgstr "forkert udformet '#pragma align' - ignoreret"
-#: config/i960/i960-c.c:109
+#: config/i960/i960-c.c:111
msgid "sorry, not implemented: #pragma noalign NAME"
msgstr "desværre, ikke implementeret: #pragma noalign NAVN"
-#: config/i960/i960.c:121 config/i960/i960.c:131
+#: config/i960/i960.c:134 config/i960/i960.c:144
msgid "conflicting architectures defined - using C series"
msgstr "modstridende arkitekturer defineret - bruger C-serien"
-#: config/i960/i960.c:126
+#: config/i960/i960.c:139
msgid "conflicting architectures defined - using K series"
msgstr "modstridende arkitekturer defineret - bruger K-serien"
-#: config/i960/i960.c:141
+#: config/i960/i960.c:154
msgid "iC2.0 and iC3.0 are incompatible - using iC3.0"
msgstr "iC2.0 og iC3.0 er inkompatible - bruger iC3.0"
-#: config/i960/i960.c:1448 config/m68k/m68k.c:559 config/rs6000/rs6000.c:9976
+#: config/i960/i960.c:1456 config/m68k/m68k.c:588 config/rs6000/rs6000.c:11296
msgid "stack limit expression is not supported"
msgstr "stakgrænseudtryk understøttes ikke"
@@ -10845,393 +10161,545 @@ msgstr "stakgrænseudtryk understøttes ikke"
#. An empty string NAME is used to identify the default VALUE.
#. ??? Not all ten of these architecture variations actually exist, but I
#. am not sure which are real and which aren't.
-#: config/i960/i960.h:240
+#: config/i960/i960.h:250
msgid "Generate SA code"
msgstr "Generér SA-kode"
-#: config/i960/i960.h:243
+#: config/i960/i960.h:253
msgid "Generate SB code"
msgstr "Generér SB-kode"
#. {"sc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate SC code")},
-#: config/i960/i960.h:248
+#: config/i960/i960.h:258
msgid "Generate KA code"
msgstr "Generér KA-kode"
-#: config/i960/i960.h:251
+#: config/i960/i960.h:261
msgid "Generate KB code"
msgstr "Generér KB-kode"
#. {"kc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate KC code")},
-#: config/i960/i960.h:256
+#: config/i960/i960.h:266
msgid "Generate JA code"
msgstr "Generér JA-kode"
-#: config/i960/i960.h:258
+#: config/i960/i960.h:268
msgid "Generate JD code"
msgstr "Generér JD-kode"
-#: config/i960/i960.h:261
+#: config/i960/i960.h:271
msgid "Generate JF code"
msgstr "Generér JF-kode"
-#: config/i960/i960.h:263
+#: config/i960/i960.h:273
msgid "generate RP code"
msgstr "Generér RP-kode"
-#: config/i960/i960.h:266
+#: config/i960/i960.h:276
msgid "Generate MC code"
msgstr "Generér MC-kode"
-#: config/i960/i960.h:269
+#: config/i960/i960.h:279
msgid "Generate CA code"
msgstr "Generér CA-kode"
#. {"cb", (TARGET_FLAG_NUMERICS|TARGET_FLAG_C_SERIES| TARGET_FLAG_BRANCH_PREDICT|TARGET_FLAG_CODE_ALIGN), N_("Generate CB code")}, {"cc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_C_SERIES|TARGET_FLAG_BRANCH_PREDICT| TARGET_FLAG_CODE_ALIGN), N_("Generate CC code")},
-#: config/i960/i960.h:279
+#: config/i960/i960.h:289
msgid "Generate CF code"
msgstr "Generér CF-kode"
-#: config/i960/i960.h:283 config/mips/mips.h:568 config/pa/pa.h:266
+#: config/i960/i960.h:293 config/mips/mips.h:539 config/pa/pa.h:266
msgid "Use software floating point"
msgstr "Benyt softwarekommatal"
-#: config/i960/i960.h:285
+#: config/i960/i960.h:295
msgid "Use alternate leaf function entries"
msgstr "Benyt alternative elementer til yderste funktioner"
-#: config/i960/i960.h:287
+#: config/i960/i960.h:297
msgid "Do not use alternate leaf function entries"
msgstr "Benyt ikke alternative elementer til yderste funktioner"
-#: config/i960/i960.h:289
+#: config/i960/i960.h:299
msgid "Perform tail call optimization"
msgstr "Udfør halekaldsoptimering"
-#: config/i960/i960.h:291
+#: config/i960/i960.h:301
msgid "Do not perform tail call optimization"
msgstr "Udfør ikke halekaldsoptimering"
-#: config/i960/i960.h:293
+#: config/i960/i960.h:303
msgid "Use complex addressing modes"
msgstr "Benyt komplekse adresseringstilstande"
-#: config/i960/i960.h:295
+#: config/i960/i960.h:305
msgid "Do not use complex addressing modes"
msgstr "Benyt ikke komplekse adresseringstilstande"
-#: config/i960/i960.h:297
+#: config/i960/i960.h:307
msgid "Align code to 8 byte boundary"
msgstr "Justér kode til 8 byte-grænser"
-#: config/i960/i960.h:299
+#: config/i960/i960.h:309
msgid "Do not align code to 8 byte boundary"
msgstr "Justér ikke kode til 8 byte-grænser"
#. {"clean-linkage", (TARGET_FLAG_CLEAN_LINKAGE), N_("Force use of prototypes")}, {"no-clean-linkage", -(TARGET_FLAG_CLEAN_LINKAGE), N_("Do not force use of prototypes")},
-#: config/i960/i960.h:305 config/i960/i960.h:307
+#: config/i960/i960.h:315 config/i960/i960.h:317
msgid "Enable compatibility with iC960 v2.0"
msgstr "Aktivér kompatibilitet med iC960 v2.0"
-#: config/i960/i960.h:309
+#: config/i960/i960.h:319
msgid "Enable compatibility with iC960 v3.0"
msgstr "Aktivér kompatibilitet med iC960 v3.0"
-#: config/i960/i960.h:311 config/i960/i960.h:313
+#: config/i960/i960.h:321 config/i960/i960.h:323
msgid "Enable compatibility with ic960 assembler"
msgstr "Aktivér kompatibilitet med ic960-maskinkodeoversætteren"
-#: config/i960/i960.h:315
+#: config/i960/i960.h:325
msgid "Do not permit unaligned accesses"
msgstr "Tillad ikke ikke-justeret adgang"
-#: config/i960/i960.h:317
+#: config/i960/i960.h:327
msgid "Permit unaligned accesses"
msgstr "Tillad ikke-justeret adgang"
-#: config/i960/i960.h:319
+#: config/i960/i960.h:329
msgid "Layout types like Intel's v1.3 gcc"
msgstr "Sammensæt typer som Intels v1.3 gcc"
-#: config/i960/i960.h:321
+#: config/i960/i960.h:331
msgid "Do not layout types like Intel's v1.3 gcc"
msgstr "Sammensæt ikke typer som Intels v1.3 gcc"
-#: config/i960/i960.h:323 config/sparc/freebsd.h:80 config/sparc/linux.h:86
-#: config/sparc/linux64.h:88 config/sparc/netbsd-elf.h:238
+#: config/i960/i960.h:333 config/sparc/freebsd.h:76 config/sparc/linux.h:91
+#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215
msgid "Use 64 bit long doubles"
msgstr "Benyt 64 bit long double"
-#: config/i960/i960.h:325
+#: config/i960/i960.h:335
msgid "Enable linker relaxation"
msgstr "Aktivér tolerant sammenkæder"
-#: config/i960/i960.h:327
+#: config/i960/i960.h:337
msgid "Do not enable linker relaxation"
msgstr "Aktivér ikke tolerant sammenkæder"
-#: config/ia64/ia64-c.c:51
+#: config/ia64/ia64-c.c:52
msgid "malformed #pragma builtin"
msgstr "forkert udformet '#pragma builtin'"
-#: config/ia64/ia64.c:4015
+#: config/ia64/ia64.c:1021 config/m32r/m32r.c:354
+#, c-format
+msgid "invalid argument of `%s' attribute"
+msgstr "ugyldig parameter til egenskaben '%s'"
+
+#: config/ia64/ia64.c:1033
+#, fuzzy
+msgid "%Jan address area attribute cannot be specified for local variables"
+msgstr "en dataområdeegenskab kan ikke angives for lokale variable"
+
+#: config/ia64/ia64.c:1040
+#, fuzzy
+msgid "%Jaddress area of '%s' conflicts with previous declaration"
+msgstr "dataområdet '%s' er i modstrid med tidligere erklæring"
+
+#: config/ia64/ia64.c:1047
+#, fuzzy
+msgid "%Jaddress area attribute cannot be specified for functions"
+msgstr "en dataområdeegenskab kan ikke angives for lokale variable"
+
+#: config/ia64/ia64.c:4288
msgid "ia64_print_operand: unknown code"
msgstr "ia64_print_operand: ukendt kode"
-#: config/ia64/ia64.c:4292
+#: config/ia64/ia64.c:4628
msgid "value of -mfixed-range must have form REG1-REG2"
msgstr "værdien af -mfixed-range skal være på formen REG1-REG2"
-#: config/ia64/ia64.c:4319
+#: config/ia64/ia64.c:4655
#, c-format
msgid "%s-%s is an empty range"
msgstr "%s-%s er et tomt interval"
-#: config/ia64/ia64.c:4350
+#: config/ia64/ia64.c:4703
msgid "cannot optimize floating point division for both latency and throughput"
msgstr "kan ikke optimere kommatalsdivision for både ventetid og båndbredde"
-#: config/ia64/ia64.c:4356
+#: config/ia64/ia64.c:4709
msgid "cannot optimize integer division for both latency and throughput"
msgstr "kan ikke optimere heltalsdivision for både ventetid og båndbredde"
-#: config/ia64/ia64.c:4368
+#: config/ia64/ia64.c:4715
+#, fuzzy
+msgid "cannot optimize square root for both latency and throughput"
+msgstr "kan ikke optimere heltalsdivision for både ventetid og båndbredde"
+
+#: config/ia64/ia64.c:4721
+msgid "not yet implemented: latency-optimized inline square root"
+msgstr ""
+
+#: config/ia64/ia64.c:4733
#, c-format
msgid "bad value (%s) for -mtls-size= switch"
msgstr "ugyldig værdi (%s) for tilvalget -mtls-size="
+#: config/ia64/ia64.c:4749
+#, fuzzy, c-format
+msgid "bad value (%s) for -tune= switch"
+msgstr "ugyldig værdi (%s) til tilvalget -mcpu="
+
#. This macro defines names of command options to set and clear bits in
#. `target_flags'. Its definition is an initializer with a subgrouping for
#. each command option.
-#: config/ia64/ia64.h:154
+#: config/ia64/ia64.h:172
msgid "Generate big endian code"
msgstr "Generér storendet kode"
-#: config/ia64/ia64.h:156 config/mcore/mcore.h:159
+#: config/ia64/ia64.h:174 config/mcore/mcore.h:154
msgid "Generate little endian code"
msgstr "Generér lilleendet kode"
-#: config/ia64/ia64.h:158
+#: config/ia64/ia64.h:176
msgid "Generate code for GNU as"
msgstr "Generér kode til GNU as"
-#: config/ia64/ia64.h:160
+#: config/ia64/ia64.h:178
msgid "Generate code for Intel as"
msgstr "Generér kode til Intel as"
-#: config/ia64/ia64.h:162
+#: config/ia64/ia64.h:180
msgid "Generate code for GNU ld"
msgstr "Generér kode til GNU ld"
-#: config/ia64/ia64.h:164
+#: config/ia64/ia64.h:182
msgid "Generate code for Intel ld"
msgstr "Generér kode til Intel ld"
-#: config/ia64/ia64.h:166
+#: config/ia64/ia64.h:184
msgid "Generate code without GP reg"
msgstr "Generér kode uden GP-registeret"
-#: config/ia64/ia64.h:168
+#: config/ia64/ia64.h:186
msgid "Emit stop bits before and after volatile extended asms"
msgstr "Udsend stopbit før og efter volatile udvidede asm-sætninger"
-#: config/ia64/ia64.h:170
+#: config/ia64/ia64.h:188
msgid "Don't emit stop bits before and after volatile extended asms"
msgstr "Udsend ikke stopbit før og efter volatile udvidede asm-sætninger"
-#: config/ia64/ia64.h:172
+#: config/ia64/ia64.h:190
msgid "Emit code for Itanium (TM) processor B step"
msgstr "Udsend kode for Itanium (TM) processor B-skridt"
-#: config/ia64/ia64.h:174
+#: config/ia64/ia64.h:192
msgid "Use in/loc/out register names"
msgstr "Benyt in/loc/out-registernavne"
-#: config/ia64/ia64.h:176
+#: config/ia64/ia64.h:194
msgid "Disable use of sdata/scommon/sbss"
msgstr "Deaktivér brug af sdata/scommon/sbss"
-#: config/ia64/ia64.h:178
+#: config/ia64/ia64.h:196
msgid "Enable use of sdata/scommon/sbss"
msgstr "Aktivér brug af sdata/scommon/sbss"
-#: config/ia64/ia64.h:180
+#: config/ia64/ia64.h:198
msgid "gp is constant (but save/restore gp on indirect calls)"
msgstr "gp er konstant (men gem/gendan gp ved indirekte kald)"
-#: config/ia64/ia64.h:182
+#: config/ia64/ia64.h:200
msgid "Generate self-relocatable code"
msgstr "Generér selvflyttende kode"
-#: config/ia64/ia64.h:184
+#: config/ia64/ia64.h:202
msgid "Generate inline floating point division, optimize for latency"
msgstr "Generér indlejrede kommatalsdivisioner, optimér for ventetid"
-#: config/ia64/ia64.h:186
+#: config/ia64/ia64.h:204
msgid "Generate inline floating point division, optimize for throughput"
msgstr "Generér indlejrede kommatalsdivisioner, optimér for båndbredde"
-#: config/ia64/ia64.h:188
+#: config/ia64/ia64.h:206
msgid "Generate inline integer division, optimize for latency"
msgstr "Generér indlejrede heltalsdivisioner, optimér for ventetid"
-#: config/ia64/ia64.h:190
+#: config/ia64/ia64.h:208
msgid "Generate inline integer division, optimize for throughput"
msgstr "Generér indlejrede heltalsdivisioner, optimér for båndbredde"
-#: config/ia64/ia64.h:192
+#: config/ia64/ia64.h:210
+#, fuzzy
+msgid "Generate inline square root, optimize for latency"
+msgstr "Generér indlejrede heltalsdivisioner, optimér for ventetid"
+
+#: config/ia64/ia64.h:212
+#, fuzzy
+msgid "Generate inline square root, optimize for throughput"
+msgstr "Generér indlejrede heltalsdivisioner, optimér for båndbredde"
+
+#: config/ia64/ia64.h:214
msgid "Enable Dwarf 2 line debug info via GNU as"
msgstr "Aktivér Dwarf 2-linjefejlanalyseringsinfo via GNU as"
-#: config/ia64/ia64.h:194
+#: config/ia64/ia64.h:216
msgid "Disable Dwarf 2 line debug info via GNU as"
msgstr "Deaktivér Dwarf 2-linjefejlanalyseringsinfo via GNU as"
-#: config/ia64/ia64.h:223
+#: config/ia64/ia64.h:218
+msgid "Enable earlier placing stop bits for better scheduling"
+msgstr ""
+
+#: config/ia64/ia64.h:220
+#, fuzzy
+msgid "Disable earlier placing stop bits"
+msgstr "Deaktivér parallelle instruktioner"
+
+#: config/ia64/ia64.h:265
msgid "Specify range of registers to make fixed"
msgstr "Angiv interval af registre der skal gøres faste"
-#: config/ip2k/ip2k.c:1090
+#: config/ip2k/ip2k.c:1074
msgid "bad operand"
msgstr "ugyldig operand"
-#: config/m32r/m32r.c:139
+#: config/iq2000/iq2000.c:1816
+#, c-format
+msgid "bad value (%s) for -mcpu= switch"
+msgstr "ugyldig værdi (%s) til tilvalget -mcpu="
+
+#: config/iq2000/iq2000.c:1845
+#, fuzzy, c-format
+msgid "The compiler does not support -march=%s."
+msgstr "%s understøtter ikke %s"
+
+#: config/iq2000/iq2000.c:2232
+#, fuzzy, c-format
+msgid "gp_offset (%ld) or end_offset (%ld) is less than zero."
+msgstr "gp_offset (%ld) eller end_offset (%ld) er mindre end nul"
+
+#: config/iq2000/iq2000.c:3023
+#, fuzzy, c-format
+msgid "argument `%d' is not a constant"
+msgstr "parameteren til 'asm' er ikke en konstant streng"
+
+#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2081
+msgid "PRINT_OPERAND_ADDRESS, null pointer"
+msgstr "PRINT_OPERAND_ADDRESS, nul-henvisning"
+
+#: config/iq2000/iq2000.c:3469
+#, fuzzy, c-format
+msgid "PRINT_OPERAND: Unknown punctuation '%c'"
+msgstr "PRINT_OPERAND: ukendt tegnsætning '%c'"
+
+#: config/iq2000/iq2000.c:3478 config/mips/mips.c:5457
+#: config/xtensa/xtensa.c:1935
+msgid "PRINT_OPERAND null pointer"
+msgstr "PRINT_OPERAND nul-henvisning"
+
+#: config/iq2000/iq2000.c:3547
+#, c-format
+msgid "invalid %%P operand"
+msgstr "ugyldig %%P-operand"
+
+#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8881
+#, c-format
+msgid "invalid %%p value"
+msgstr "ugyldig %%p-værdi"
+
+#: config/iq2000/iq2000.c:3619 config/mips/mips.c:5587
+#, c-format
+msgid "invalid use of %%d, %%x, or %%X"
+msgstr "ugyldigt brug af %%d, %%x eller %%X"
+
+#: config/iq2000/iq2000.h:72 config/mn10300/mn10300.h:74
+msgid "No default crt0.o"
+msgstr "Ingen standard crt0.o"
+
+#: config/iq2000/iq2000.h:74
+msgid "Use GP relative sdata/sbss sections"
+msgstr "Benyt GP-relative sdata/sbss-sektioner"
+
+#: config/iq2000/iq2000.h:76
+msgid "Don't use GP relative sdata/sbss sections"
+msgstr "Benyt ikke GP-relative sdata/sbss-sektioner"
+
+#: config/iq2000/iq2000.h:78 config/mips/mips.h:563
+msgid "Use ROM instead of RAM"
+msgstr "Benyt ROM i stedet for RAM"
+
+#: config/iq2000/iq2000.h:80 config/mips/mips.h:565
+msgid "Don't use ROM instead of RAM"
+msgstr "Benyt ikke ROM i stedet for RAM"
+
+#: config/iq2000/iq2000.h:82 config/mips/mips.h:567
+msgid "Put uninitialized constants in ROM (needs -membedded-data)"
+msgstr "Anbring konstanter uden startværdi i ROM (behøver -membedded-data)"
+
+#: config/iq2000/iq2000.h:84 config/mips/mips.h:569
+msgid "Don't put uninitialized constants in ROM"
+msgstr "Anbring ikke konstanter uden startværdi i ROM"
+
+#: config/iq2000/iq2000.h:106 config/mips/mips.h:731 config/pa/pa.h:310
+msgid "Specify CPU for scheduling purposes"
+msgstr "Angiv processor til planlægningsformål"
+
+#: config/iq2000/iq2000.h:108 config/mips/mips.h:733
+msgid "Specify CPU for code generation purposes"
+msgstr "Angiv processor til kodegenereringsformål"
+
+#: config/m32r/m32r.c:172
#, c-format
msgid "bad value (%s) for -mmodel switch"
msgstr "ugyldig værdi (%s) til tilvalget -mmodel"
-#: config/m32r/m32r.c:148
+#: config/m32r/m32r.c:181
#, c-format
msgid "bad value (%s) for -msdata switch"
msgstr "ugyldig værdi (%s) til tilvalget -msdata"
-#: config/m32r/m32r.c:319
-#, c-format
-msgid "invalid argument of `%s' attribute"
-msgstr "ugyldig parameter til egenskaben '%s'"
-
-#: config/m32r/m32r.c:422
-msgid "const objects cannot go in .sdata/.sbss"
-msgstr "konstante objekter kan ikke anbringes i .sdata/.sbss"
+#: config/m32r/m32r.c:188
+#, fuzzy, c-format
+msgid "bad value (%s) for -flush-trap=n (0=<n<=15)"
+msgstr "ugyldig værdi (%s) til tilvalget -msdata"
-#: config/m32r/m32r.c:2256
+#: config/m32r/m32r.c:2295
#, c-format
msgid "invalid operand to %%s code"
msgstr "ugyldig operand til %%s-koden"
-#: config/m32r/m32r.c:2263
+#: config/m32r/m32r.c:2302
#, c-format
msgid "invalid operand to %%p code"
msgstr "ugyldig operand til %%p-koden"
-#: config/m32r/m32r.c:2318
+#: config/m32r/m32r.c:2357
msgid "bad insn for 'A'"
msgstr "ugyldig instruktion for 'A'"
-#: config/m32r/m32r.c:2370
+#: config/m32r/m32r.c:2404
#, c-format
msgid "invalid operand to %%T/%%B code"
msgstr "ugyldig operand til %%T/%%B-koden"
-#: config/m32r/m32r.c:2393
+#: config/m32r/m32r.c:2427
#, c-format
msgid "invalid operand to %%N code"
msgstr "ugyldig operand til %%N-koden"
-#: config/m32r/m32r.c:2438
+#: config/m32r/m32r.c:2460
msgid "pre-increment address is not a register"
msgstr "præfiks forøgelsesadresse er ikke et register"
-#: config/m32r/m32r.c:2445
+#: config/m32r/m32r.c:2467
msgid "pre-decrement address is not a register"
msgstr "præfiks formindskelsesadresse er ikke et register"
-#: config/m32r/m32r.c:2452
+#: config/m32r/m32r.c:2474
msgid "post-increment address is not a register"
msgstr "postfiks forøgelsesadresse er ikke et register"
-#: config/m32r/m32r.c:2530 config/m32r/m32r.c:2546
-#: config/rs6000/rs6000.c:12802
+#: config/m32r/m32r.c:2550 config/m32r/m32r.c:2566
+#: config/rs6000/rs6000.c:14753
msgid "bad address"
msgstr "ugyldig adresse"
-#: config/m32r/m32r.c:2551
+#: config/m32r/m32r.c:2571
msgid "lo_sum not of register"
msgstr "lo_sum ikke af register"
#. { "relax", TARGET_RELAX_MASK, "" }, { "no-relax", -TARGET_RELAX_MASK, "" },
-#: config/m32r/m32r.h:241
+#: config/m32r/m32r.h:277
msgid "Display compile time statistics"
msgstr "Vis oversættelsesstatistikker"
-#: config/m32r/m32r.h:243
+#: config/m32r/m32r.h:279
msgid "Align all loops to 32 byte boundary"
msgstr "Justér alle løkker til 32 byte-grænserne"
-#: config/m32r/m32r.h:246
+#: config/m32r/m32r.h:282
msgid "Only issue one instruction per cycle"
msgstr "Udfør kun én instruktion pr. cyklus"
-#: config/m32r/m32r.h:249
+#: config/m32r/m32r.h:285
msgid "Prefer branches over conditional execution"
msgstr "Foretræk forgrening frem for betinget udførelse"
-#: config/m32r/m32r.h:265
+#: config/m32r/m32r.h:306
msgid "Code size: small, medium or large"
msgstr "Kodestørrelse: small, medium eller large"
-#: config/m32r/m32r.h:267
+#: config/m32r/m32r.h:308
msgid "Small data area: none, sdata, use"
msgstr "Område til små data: none, sdata, use"
-#: config/m68hc11/m68hc11.c:242
+#: config/m32r/m32r.h:310 config/mips/mips.h:739
+msgid "Don't call any cache flush functions"
+msgstr "Kald ikke nogen mellemlagertømningsfunktion"
+
+#: config/m32r/m32r.h:312 config/mips/mips.h:741
+msgid "Specify cache flush function"
+msgstr "Angiv mellemlagertømningsfunktion"
+
+#: config/m32r/m32r.h:314
+#, fuzzy
+msgid "Don't call any cache flush trap"
+msgstr "Kald ikke nogen mellemlagertømningsfunktion"
+
+#: config/m32r/m32r.h:316
+#, fuzzy
+msgid "Specify cache flush trap number"
+msgstr "Angiv mellemlagertømningsfunktion"
+
+#: config/m68hc11/m68hc11.c:269
#, c-format
msgid "-f%s ignored for 68HC11/68HC12 (not supported)"
msgstr "-f%s ignoreret for 68HC11/68HC12 (ikke understøttet)"
-#: config/m68hc11/m68hc11.c:1305
+#: config/m68hc11/m68hc11.c:1260
msgid "`trap' and `far' attributes are not compatible, ignoring `far'"
msgstr "egenskaberne 'trap' og 'far' kan ikke bruges på samme tid, ignorerer 'far'"
-#: config/m68hc11/m68hc11.c:1311
+#: config/m68hc11/m68hc11.c:1266
msgid "`trap' attribute is already used"
msgstr "egenskaben 'trap' er allerede benyttet"
#. !!!! SCz wrong here.
-#: config/m68hc11/m68hc11.c:3327 config/m68hc11/m68hc11.c:3733
+#: config/m68hc11/m68hc11.c:3222 config/m68hc11/m68hc11.c:3606
msgid "move insn not handled"
msgstr "flytteinstruktion ikke håndteret"
-#: config/m68hc11/m68hc11.c:3579 config/m68hc11/m68hc11.c:3663
-#: config/m68hc11/m68hc11.c:3946
+#: config/m68hc11/m68hc11.c:3454 config/m68hc11/m68hc11.c:3538
+#: config/m68hc11/m68hc11.c:3809
msgid "invalid register in the move instruction"
msgstr "ugyldigt register i flytteinstruktionen"
-#: config/m68hc11/m68hc11.c:3613
+#: config/m68hc11/m68hc11.c:3488
msgid "invalid operand in the instruction"
msgstr "ugyldig operand i instruktionen"
-#: config/m68hc11/m68hc11.c:3920
+#: config/m68hc11/m68hc11.c:3783
msgid "invalid register in the instruction"
msgstr "ugyldigt register i instruktionen"
-#: config/m68hc11/m68hc11.c:3953
+#: config/m68hc11/m68hc11.c:3816
msgid "operand 1 must be a hard register"
msgstr "operand 1 skal være et hårdt register"
-#: config/m68hc11/m68hc11.c:3970
+#: config/m68hc11/m68hc11.c:3830
msgid "invalid rotate insn"
msgstr "ugyldig roteringsinstruktion"
-#: config/m68hc11/m68hc11.c:4391
+#: config/m68hc11/m68hc11.c:4246
msgid "registers IX, IY and Z used in the same INSN"
msgstr "registrene IX, IY og Z benyttet i samme INSN"
-#: config/m68hc11/m68hc11.c:4728 config/m68hc11/m68hc11.c:5031
+#: config/m68hc11/m68hc11.c:4583 config/m68hc11/m68hc11.c:4883
msgid "cannot do z-register replacement"
msgstr "kan ikke udføre Z-registererstatning"
-#: config/m68hc11/m68hc11.c:5094
+#: config/m68hc11/m68hc11.c:4946
msgid "invalid Z register replacement for insn"
msgstr "ugyldig Z-registererstatning for instruktion"
@@ -11239,55 +10707,55 @@ msgstr "ugyldig Z-registererstatning for instruktion"
#. pairs in braces, each pair being { "NAME", VALUE } where VALUE is the bits
#. to set or minus the bits to clear. An empty string NAME is used to
#. identify the default VALUE.
-#: config/m68hc11/m68hc11.h:172
+#: config/m68hc11/m68hc11.h:177
msgid "Compile with 16-bit integer mode"
msgstr "Oversæt med 16 bit-heltalstilstand"
-#: config/m68hc11/m68hc11.h:174
+#: config/m68hc11/m68hc11.h:179
msgid "Compile with 32-bit integer mode"
msgstr "Oversæt med 32 bit-heltalstilstand"
-#: config/m68hc11/m68hc11.h:176
+#: config/m68hc11/m68hc11.h:181
msgid "Auto pre/post decrement increment allowed"
msgstr "Selvformindskelse tilladt"
-#: config/m68hc11/m68hc11.h:178
+#: config/m68hc11/m68hc11.h:183
msgid "Auto pre/post decrement increment not allowed"
msgstr "Selvforøgelse ikke tilladt"
-#: config/m68hc11/m68hc11.h:180
+#: config/m68hc11/m68hc11.h:185
msgid "Min/max instructions allowed"
msgstr "Min/max-instruktioner tilladt"
-#: config/m68hc11/m68hc11.h:182
+#: config/m68hc11/m68hc11.h:187
msgid "Min/max instructions not allowed"
msgstr "Min/max-instruktioner ikke tilladt"
-#: config/m68hc11/m68hc11.h:184
+#: config/m68hc11/m68hc11.h:189
msgid "Use call and rtc for function calls and returns"
msgstr "Benyt call og rtc til funktionskald og returneringer"
-#: config/m68hc11/m68hc11.h:186
+#: config/m68hc11/m68hc11.h:191
msgid "Use jsr and rts for function calls and returns"
msgstr "Benyt jsr og rts til funktionskald og returneringer"
-#: config/m68hc11/m68hc11.h:188
+#: config/m68hc11/m68hc11.h:193
msgid "Do not use direct addressing mode for soft registers"
msgstr "Benyt ikke direkte adresseringstilstand til bløde registre"
-#: config/m68hc11/m68hc11.h:190
+#: config/m68hc11/m68hc11.h:195
msgid "Use direct addressing mode for soft registers"
msgstr "Benyt direkte adresseringstilstand til bløde registre"
-#: config/m68hc11/m68hc11.h:192 config/m68hc11/m68hc11.h:198
+#: config/m68hc11/m68hc11.h:197 config/m68hc11/m68hc11.h:203
msgid "Compile for a 68HC11"
msgstr "Oversæt til en 68HC11"
-#: config/m68hc11/m68hc11.h:194 config/m68hc11/m68hc11.h:200
+#: config/m68hc11/m68hc11.h:199 config/m68hc11/m68hc11.h:205
msgid "Compile for a 68HC12"
msgstr "Oversæt til en 68HC12"
-#: config/m68hc11/m68hc11.h:196 config/m68hc11/m68hc11.h:202
+#: config/m68hc11/m68hc11.h:201 config/m68hc11/m68hc11.h:207
msgid "Compile for a 68HCS12"
msgstr "Oversæt til en 68HCS12"
@@ -11300,30 +10768,44 @@ msgstr "Oversæt til en 68HCS12"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/m68hc11/m68hc11.h:216
+#: config/m68hc11/m68hc11.h:221
msgid "Specify the register allocation order"
msgstr "Angiv registerallokeringsordnen"
-#: config/m68hc11/m68hc11.h:218
+#: config/m68hc11/m68hc11.h:223
msgid "Indicate the number of soft registers available"
msgstr "Angiv antallet af bløde registre der er til rådighed"
-#: config/m68k/m68k.c:158
+#: config/m68k/m68k.c:227
#, c-format
msgid "-malign-loops=%d is not between 1 and %d"
msgstr "-malign-loops=%d er ikke mellem 1 og %d"
-#: config/m68k/m68k.c:169
+#: config/m68k/m68k.c:238
+msgid "-mshared-library-id= specified without -mid-shared-library"
+msgstr ""
+
+#: config/m68k/m68k.c:241
+#, fuzzy, c-format
+msgid "-mshared-library-id=%d is not between 0 and %d"
+msgstr "-mregparm=%d er ikke mellem 0 og %d"
+
+#: config/m68k/m68k.c:255
+#, fuzzy
+msgid "cannot specify both -msep-data and -mid-shared-library"
+msgstr "-C og -o er indbyrdes uforenelige"
+
+#: config/m68k/m68k.c:270
#, c-format
msgid "-malign-jumps=%d is not between 1 and %d"
msgstr "-malign-jumps=%d er ikke mellem 1 og %d"
-#: config/m68k/m68k.c:180
+#: config/m68k/m68k.c:281
#, c-format
msgid "-malign-functions=%d is not between 1 and %d"
msgstr "-malign-functions=%d er ikke mellem 1 og %d"
-#: config/m68k/m68k.c:189
+#: config/m68k/m68k.c:290
msgid "-fPIC is not currently supported on the 68000 or 68010\n"
msgstr "-fPIC understøttes ikke på nuværende tidspunkt på 68000 og 68010\n"
@@ -11332,504 +10814,442 @@ msgstr "-fPIC understøttes ikke på nuværende tidspunkt på 68000 og 68010\n"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/m68k/m68k.h:162 config/m68k/m68k.h:164
+#: config/m68k/m68k.h:248 config/m68k/m68k.h:250
msgid "Generate code for a 68020"
msgstr "Generér kode til en 68020"
-#: config/m68k/m68k.h:169 config/m68k/m68k.h:172
+#: config/m68k/m68k.h:255 config/m68k/m68k.h:258
msgid "Generate code for a 68000"
msgstr "Generér kode til en 68000"
-#: config/m68k/m68k.h:174
+#: config/m68k/m68k.h:260
msgid "Use the bit-field instructions"
msgstr "Benyt bitfeltinstruktionerne"
-#: config/m68k/m68k.h:176
+#: config/m68k/m68k.h:262
msgid "Do not use the bit-field instructions"
msgstr "Benyt ikke bitfeltinstruktionerne"
-#: config/m68k/m68k.h:178
-msgid "Use different calling convention using 'rtd'"
-msgstr "Benyt anden kaldekonvention vha. 'rtd'"
-
-#: config/m68k/m68k.h:182
+#: config/m68k/m68k.h:264
msgid "Consider type `int' to be 16 bits wide"
msgstr "Lad typen 'int' være 16 bit bred"
-#: config/m68k/m68k.h:184
+#: config/m68k/m68k.h:266
msgid "Consider type `int' to be 32 bits wide"
msgstr "Lad typen 'int' være 32 bit bred"
-#: config/m68k/m68k.h:186
-msgid "Generate code for a Sun FPA"
-msgstr "Generér kode til en Sun FPA"
-
-#: config/m68k/m68k.h:189
-msgid "Do not generate code for a Sun FPA"
-msgstr "Generér ikke kode til en Sun FPA"
-
-#: config/m68k/m68k.h:191 config/m68k/m68k.h:193
-msgid "Generate code for a Sun Sky board"
-msgstr "Generér kode til et Sun Sky-kort"
-
-#: config/m68k/m68k.h:195
-msgid "Do not use Sky linkage convention"
-msgstr "Benyt ikke Sky-kædningskonventionen"
-
-#: config/m68k/m68k.h:197
-msgid "Generate code for a 68881"
-msgstr "Generér kode til en 68881"
-
-#: config/m68k/m68k.h:200
+#: config/m68k/m68k.h:269
msgid "Generate code with library calls for floating point"
msgstr "Generér kode med bibliotekskald for kommatalsoperationer"
-#: config/m68k/m68k.h:202
+#: config/m68k/m68k.h:271
msgid "Generate code for a 68040, without any new instructions"
msgstr "Generér kode til en 68040 uden nogen nye instruktioner"
-#: config/m68k/m68k.h:205
+#: config/m68k/m68k.h:274
msgid "Generate code for a 68060, without any new instructions"
msgstr "Generér kode til en 68060 uden nogen nye instruktioner"
-#: config/m68k/m68k.h:209
+#: config/m68k/m68k.h:278
msgid "Generate code for a 68030"
msgstr "Generér kode til en 68030"
-#: config/m68k/m68k.h:212
+#: config/m68k/m68k.h:281
msgid "Generate code for a 68040"
msgstr "Generér kode til en 68040"
-#: config/m68k/m68k.h:216
+#: config/m68k/m68k.h:285
msgid "Generate code for a 68060"
msgstr "Generér kode til en 68060"
-#: config/m68k/m68k.h:221
+#: config/m68k/m68k.h:290
msgid "Generate code for a 520X"
msgstr "Generér kode til en 520X"
-#: config/m68k/m68k.h:224
+#: config/m68k/m68k.h:294
+#, fuzzy
+msgid "Generate code for a 5206e"
+msgstr "Generér kode til en 520X"
+
+#: config/m68k/m68k.h:298
+#, fuzzy
+msgid "Generate code for a 528x"
+msgstr "Generér kode til en 520X"
+
+#: config/m68k/m68k.h:302
+#, fuzzy
+msgid "Generate code for a 5307"
+msgstr "Generér kode til en 520X"
+
+#: config/m68k/m68k.h:306
+#, fuzzy
+msgid "Generate code for a 5407"
+msgstr "Generér kode til en 520X"
+
+#: config/m68k/m68k.h:309
msgid "Generate code for a 68851"
msgstr "Generér kode til en 68851"
-#: config/m68k/m68k.h:226
+#: config/m68k/m68k.h:311
msgid "Do no generate code for a 68851"
msgstr "Generér ikke kode til en 68851"
-#: config/m68k/m68k.h:229
+#: config/m68k/m68k.h:314
msgid "Generate code for a 68302"
msgstr "Generér kode til en 68302"
-#: config/m68k/m68k.h:232
+#: config/m68k/m68k.h:317
msgid "Generate code for a 68332"
msgstr "Generér kode til en 68332"
-#: config/m68k/m68k.h:236
+#: config/m68k/m68k.h:321
msgid "Generate code for a cpu32"
msgstr "Generér kode til en cpu32"
-#: config/m68k/m68k.h:239
+#: config/m68k/m68k.h:324
msgid "Align variables on a 32-bit boundary"
msgstr "Justér variabler til 32 bit-grænserne"
-#: config/m68k/m68k.h:241
+#: config/m68k/m68k.h:326
msgid "Align variables on a 16-bit boundary"
msgstr "Justér variabler til 16 bit-grænserne"
-#: config/m68k/m68k.h:243
+#: config/m68k/m68k.h:328
+msgid "Enable separate data segment"
+msgstr ""
+
+#: config/m68k/m68k.h:330
+#, fuzzy
+msgid "Disable separate data segment"
+msgstr "Deaktivér pladsregistre"
+
+#: config/m68k/m68k.h:332
+msgid "Enable ID based shared library"
+msgstr ""
+
+#: config/m68k/m68k.h:334
+msgid "Disable ID based shared library"
+msgstr ""
+
+#: config/m68k/m68k.h:336
msgid "Generate pc-relative code"
msgstr "Generér pc-relativ kode"
-#: config/m68k/m68k.h:245
+#: config/m68k/m68k.h:338
msgid "Do not use unaligned memory references"
msgstr "Benyt ikke ikke-justerede hukommelsesreferencer"
-#: config/m68k/m68k.h:247
+#: config/m68k/m68k.h:340
msgid "Use unaligned memory references"
msgstr "Benyt ikke-justerede hukommelsesreferencer"
-#: config/m88k/m88k.c:903
-#, c-format
-msgid "internal gcc monitor: short-branch(%x)"
-msgstr "intern GCC-overvågning: short-branch(%x)"
-
-#: config/m88k/m88k.c:2302
-msgid "internal gcc error: Can't express symbolic location"
-msgstr "intern GCC-fejl: Kan ikke udtrykke symbolsk placering"
-
-#: config/m88k/m88k.c:2517
-#, c-format
-msgid "argument #%d is a structure"
-msgstr "%d. parameter er en struktur"
-
-#: config/m88k/m88k.c:2816
-#, c-format
-msgid "%%R not followed by %%B/C/D/E"
-msgstr "%%R efterfølges ikke af %%B/C/D/E"
-
-#: config/m88k/m88k.c:2884
-#, c-format
-msgid "invalid %%x/X value"
-msgstr "ugyldig %%x/X-værdi"
-
-#: config/m88k/m88k.c:2901
-#, c-format
-msgid "invalid %%Q value"
-msgstr "ugyldig %%Q-værdi"
-
-#: config/m88k/m88k.c:2907 config/rs6000/rs6000.c:7718
-#, c-format
-msgid "invalid %%q value"
-msgstr "ugyldig %%q-værdi"
-
-#: config/m88k/m88k.c:2913
-#, c-format
-msgid "invalid %%o value"
-msgstr "ugyldig %%o-værdi"
-
-#: config/m88k/m88k.c:2920 config/rs6000/rs6000.c:7681
-#, c-format
-msgid "invalid %%p value"
-msgstr "ugyldig %%p-værdi"
-
-#: config/m88k/m88k.c:2933 config/m88k/m88k.c:2938
-#, c-format
-msgid "invalid %%s/S value"
-msgstr "ugyldig %%s/S-værdi"
-
-#: config/m88k/m88k.c:2949
-#, c-format
-msgid "invalid %%P operand"
-msgstr "ugyldig %%P-operand"
-
-#: config/m88k/m88k.c:2980 config/romp/romp.c:690
-#, c-format
-msgid "invalid %%B value"
-msgstr "ugyldig %%B-værdi"
-
-#: config/m88k/m88k.c:3010
-#, c-format
-msgid "invalid %%D value"
-msgstr "ugyldig %%D-værdi"
-
-#: config/m88k/m88k.c:3023
-#, c-format
-msgid "`%%d' operand isn't a register"
-msgstr "operanden '%%d' er ikke et register"
-
-#: config/m88k/m88k.c:3041
-msgid "operand is r0"
-msgstr "operanden er r0"
-
-#: config/m88k/m88k.c:3055
-msgid "operand is const_double"
-msgstr "operanden er const_double"
-
-#: config/m88k/m88k.c:3074
-msgid "invalid code"
-msgstr "ugyldig kode"
-
-#. Do any checking or such that is needed after processing the -m switches.
-#: config/m88k/m88k.h:277
-msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
-msgstr "-mtrap-large-shift og -mhandle-large-shift er indbyrdes uforenelige"
-
-#: config/m88k/m88k.h:299
-#, c-format
-msgid "invalid option `-mshort-data-%s'"
-msgstr "ugyldigt tilvalg '-mshort-data-%s'"
-
-#: config/m88k/m88k.h:304
-#, c-format
-msgid "-mshort-data-%s is too large "
-msgstr "-mshort-data-%s er for stor"
+#: config/m68k/m68k.h:342
+msgid "Use different calling convention using 'rtd'"
+msgstr "Benyt anden kaldekonvention vha. 'rtd'"
-#: config/m88k/m88k.h:306
-#, c-format
-msgid "-mshort-data-%s and PIC are incompatible"
-msgstr "-mshort-data-%s og PIC er indbyrdes uforenelige"
+#: config/m68k/m68k.h:366
+msgid "ID of shared library to build"
+msgstr ""
-#: config/mcore/mcore.c:3078
+#: config/mcore/mcore.c:2973
#, c-format
msgid "invalid option `-mstack-increment=%s'"
msgstr "ugyldigt tilvalg '-mshort-increment=%s'"
-#: config/mcore/mcore.h:126
+#: config/mcore/mcore.h:121
msgid "Inline constants if it can be done in 2 insns or less"
msgstr "Indlejr konstanter hvis det kan gøres med 2 instruktioner eller mindre"
-#: config/mcore/mcore.h:128
+#: config/mcore/mcore.h:123
msgid "Inline constants if it only takes 1 instruction"
msgstr "Indlejr konstanter hvis det kan gøres med 1 instruktion"
-#: config/mcore/mcore.h:130
+#: config/mcore/mcore.h:125
msgid "Set maximum alignment to 4"
msgstr "Sæt maksimal justering til 4"
-#: config/mcore/mcore.h:132
+#: config/mcore/mcore.h:127
msgid "Set maximum alignment to 8"
msgstr "Sæt maksimal justering til 8"
-#: config/mcore/mcore.h:136
+#: config/mcore/mcore.h:131
msgid "Do not use the divide instruction"
msgstr "Benyt ikke divisionsinstruktionen"
-#: config/mcore/mcore.h:140
+#: config/mcore/mcore.h:135
msgid "Do not arbitrary sized immediates in bit operations"
msgstr "Benyt ikke vilkårlige størrelsers umiddelbare værdier i bitoperationer"
-#: config/mcore/mcore.h:142
+#: config/mcore/mcore.h:137
msgid "Always treat bit-field as int-sized"
msgstr "Behandl altid bitfelter som af størrelsen int"
-#: config/mcore/mcore.h:146
+#: config/mcore/mcore.h:141
msgid "Force functions to be aligned to a 4 byte boundary"
msgstr "Tving funktioner til at blive justeret til en 4 byte-grænse"
-#: config/mcore/mcore.h:148
+#: config/mcore/mcore.h:143
msgid "Force functions to be aligned to a 2 byte boundary"
msgstr "Tving funktioner til at blive justeret til en 2 byte-grænse"
-#: config/mcore/mcore.h:150
+#: config/mcore/mcore.h:145
msgid "Emit call graph information"
msgstr "Udsend kaldegrafinfo"
-#: config/mcore/mcore.h:154
+#: config/mcore/mcore.h:149
msgid "Prefer word accesses over byte accesses"
msgstr "Foretræk ord-tilgange frem for byte-tilgange"
-#: config/mcore/mcore.h:165
+#: config/mcore/mcore.h:160
msgid "Generate code for the M*Core M340"
msgstr "Generér kode til en M*Core M340"
-#: config/mcore/mcore.h:178
+#: config/mcore/mcore.h:173
msgid "Maximum amount for a single stack increment operation"
msgstr "Maksimalt antal for en enkelt stakforøgelsesoperation"
-#: config/mips/mips.c:5128
+#: config/mips/mips.c:3115 config/xtensa/xtensa.c:992
+#: config/xtensa/xtensa.c:1024 config/xtensa/xtensa.c:1033
+msgid "bad test"
+msgstr "ugyldig test"
+
+#: config/mips/mips.c:4593
#, c-format
msgid "bad value (%s) for -mabi= switch"
msgstr "ugyldig værdi (%s) til tilvalget -mabi="
-#: config/mips/mips.c:5158
-#, c-format
-msgid "-mips%d conflicts with the other architecture options, which specify a MIPS%d processor"
+#: config/mips/mips.c:4616
+#, fuzzy, c-format
+msgid "-mips%s conflicts with the other architecture options, which specify a MIPS%d processor"
msgstr "-mips%d er i konflikt med de andre arkitekturtilvalg som angiver en MIPS%d-processor"
-#: config/mips/mips.c:5165
-#, c-format
-msgid "bad value (%s) for -mips switch"
-msgstr "ugyldig værdi (%s) til tilvalget -mips"
-
-#: config/mips/mips.c:5180
+#: config/mips/mips.c:4635
#, c-format
msgid "-march=%s is not compatible with the selected ABI"
msgstr "-march=%s er ikke forenelig med den valgte ABI"
-#: config/mips/mips.c:5192
+#: config/mips/mips.c:4650
msgid "-mgp64 used with a 32-bit processor"
msgstr "-mgp64 benyttet med en 32 bit-processor"
-#: config/mips/mips.c:5194
+#: config/mips/mips.c:4652
msgid "-mgp32 used with a 64-bit ABI"
msgstr "-mgp32 benyttet med et 64 bit-ABI"
-#: config/mips/mips.c:5196
+#: config/mips/mips.c:4654
msgid "-mgp64 used with a 32-bit ABI"
msgstr "-mgp64 benyttet med et 32 bit-ABI"
-#: config/mips/mips.c:5214 config/mips/mips.c:5216 config/mips/mips.c:5218
+#: config/mips/mips.c:4672 config/mips/mips.c:4674 config/mips/mips.c:4676
+#: config/mips/mips.c:4804
#, c-format
msgid "unsupported combination: %s"
msgstr "ikke-understøttet kombination: %s"
-#: config/mips/mips.c:5288
+#: config/mips/mips.c:4768
+#, fuzzy
+msgid "-g is only supported using GNU as,"
+msgstr "-g er kun understøttet ved brug af GAS på denne processor,"
+
+#: config/mips/mips.c:4770
+#, fuzzy
+msgid "-g is only supported using GNU as with -mabi=32,"
+msgstr "-g er kun understøttet ved brug af GAS på denne processor,"
+
+#: config/mips/mips.c:4771 config/pa/pa.c:353
+msgid "-g option disabled"
+msgstr "tilvalget -g deaktiveret"
+
+#: config/mips/mips.c:4799
msgid "generation of Branch Likely instructions enabled, but not supported by architecture"
msgstr "generering af Branch Likely-instruktioner er aktiveret, men ikke understøttet af arkitekturen"
-#: config/mips/mips.c:5299
+#: config/mips/mips.c:4816
msgid "-G is incompatible with PIC code which is the default"
msgstr "-G er uforenelig med PIC-kode som genereres som standard"
-#: config/mips/mips.c:5315
+#: config/mips/mips.c:4844
msgid "-membedded-pic and -mabicalls are incompatible"
msgstr "-membedded-pic og -mabicalls er indbyrdes uforenelige"
-#: config/mips/mips.c:5318
+#: config/mips/mips.c:4847
msgid "-G and -membedded-pic are incompatible"
msgstr "-G og -membedded-pic er indbyrdes uforenelige"
-#: config/mips/mips.c:5369
-#, c-format
-msgid "invalid option `entry%s'"
-msgstr "ugyldigt tilvalg 'entry%s'"
+#: config/mips/mips.c:4879
+msgid "non-PIC n64 with explicit relocations"
+msgstr ""
-#: config/mips/mips.c:5372
-msgid "-mentry is only meaningful with -mips-16"
-msgstr "-mentry giver kun mening sammen med -mips-16"
+#: config/mips/mips.c:5267
+msgid "mips_debugger_offset called with non stack/frame/arg pointer"
+msgstr ""
-#: config/mips/mips.c:5781
+#: config/mips/mips.c:5394
#, c-format
msgid "internal error: %%) found without a %%( in assembler pattern"
msgstr "intern fejl: %%) fundet uden en %%) i maskinkodeoversættermønster"
-#: config/mips/mips.c:5795
+#: config/mips/mips.c:5408
#, c-format
msgid "internal error: %%] found without a %%[ in assembler pattern"
msgstr "intern fejl: %%] fundet uden en %%[ i maskinkodeoversættermønster"
-#: config/mips/mips.c:5808
+#: config/mips/mips.c:5421
#, c-format
msgid "internal error: %%> found without a %%< in assembler pattern"
msgstr "intern fejl: %%> fundet uden en %%< i maskinkodeoversættermønster"
-#: config/mips/mips.c:5821
+#: config/mips/mips.c:5434
#, c-format
msgid "internal error: %%} found without a %%{ in assembler pattern"
msgstr "intern fejl: %%} fundet uden en %%{ i maskinkodeoversættermønster"
-#: config/mips/mips.c:5835
+#: config/mips/mips.c:5448
#, c-format
msgid "PRINT_OPERAND: unknown punctuation '%c'"
msgstr "PRINT_OPERAND: ukendt tegnsætning '%c'"
-#: config/mips/mips.c:5844 config/xtensa/xtensa.c:1939
-msgid "PRINT_OPERAND null pointer"
+#: config/mips/mips.c:5477
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%C"
msgstr "PRINT_OPERAND nul-henvisning"
-#: config/mips/mips.c:5975
-#, c-format
-msgid "invalid use of %%d, %%x, or %%X"
-msgstr "ugyldigt brug af %%d, %%x eller %%X"
-
-#: config/mips/mips.c:6013 config/xtensa/xtensa.c:2033
-msgid "PRINT_OPERAND_ADDRESS, null pointer"
-msgstr "PRINT_OPERAND_ADDRESS, nul-henvisning"
-
-#: config/mips/mips.c:6242
-msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
-msgstr "MIPS ECOFF-formatet tillader ikke skift af filnavne inden i funktioner med #line"
-
-#: config/mips/mips.c:6552
-msgid "can't rewind temp file"
-msgstr "kan ikke spole midlertidig fil tilbage"
-
-#: config/mips/mips.c:6556
-msgid "can't write to output file"
-msgstr "kan ikke skrive i uddatafil"
-
-#: config/mips/mips.c:6559
-msgid "can't read from temp file"
-msgstr "kan ikke læse fra midlertidig fil"
+#: config/mips/mips.c:5494
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%N"
+msgstr "PRINT_OPERAND nul-henvisning"
-#: config/mips/mips.c:6562
-msgid "can't close temp file"
-msgstr "kan ikke lukke midlertidig fil"
+#: config/mips/mips.c:5503
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%F"
+msgstr "PRINT_OPERAND nul-henvisning"
-#: config/mips/mips.c:7003
-#, c-format
-msgid "gp_offset (%ld) or end_offset (%ld) is less than zero"
-msgstr "gp_offset (%ld) eller end_offset (%ld) er mindre end nul"
+#: config/mips/mips.c:5512
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%W"
+msgstr "PRINT_OPERAND nul-henvisning"
-#: config/mips/mips.c:7112
-#, c-format
-msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
-msgstr "fp_offset (%ld) eller end_offset (%ld) er mindre end nul"
+#: config/mips/mips.c:5618
+msgid "PRINT_OPERAND, invalid operand for relocation"
+msgstr ""
-#: config/mips/mips.c:9335
+#: config/mips/mips.c:8252
#, c-format
msgid "can not handle inconsistent calls to `%s'"
msgstr "kan ikke håndtere inkonsistente kald af '%s'"
-#: config/mips/mips.c:10467
+#: config/mips/mips.c:9258
msgid "the cpu name must be lower case"
msgstr "processornavnet skal staves med små bogstaver"
-#: config/mips/mips.c:10489
+#: config/mips/mips.c:9280
#, c-format
msgid "bad value (%s) for %s"
msgstr "ugyldig værdi (%s) for %s"
+#: config/mips/mips.c:9549
+#, fuzzy, c-format
+msgid "can't rewind temp file: %m"
+msgstr "kan ikke spole midlertidig fil tilbage"
+
+#: config/mips/mips.c:9553
+#, fuzzy, c-format
+msgid "can't write to output file: %m"
+msgstr "kan ikke skrive i uddatafil"
+
+#: config/mips/mips.c:9556
+#, fuzzy, c-format
+msgid "can't read from temp file: %m"
+msgstr "kan ikke læse fra midlertidig fil"
+
+#: config/mips/mips.c:9559
+#, fuzzy, c-format
+msgid "can't close temp file: %m"
+msgstr "kan ikke lukke midlertidig fil"
+
+#: config/mips/linux64.h:39
+msgid "Same as -mabi=32, just trickier"
+msgstr ""
+
#. Target CPU builtins.
#. We do this here because __mips is defined below and so we can't use builtin_define_std.
#. Treat _R3000 and _R4000 like register-size defines, which is how they've historically been used.
#. Macros dependent on the C dialect.
-#. Bizzare, but needed at least for Irix.
+#. Bizarre, but needed at least for Irix.
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:528 config/mn10300/mn10300.h:64
-msgid "No default crt0.o"
-msgstr "Ingen standard crt0.o"
-
-#: config/mips/mips.h:530
+#: config/mips/mips.h:501
msgid "Use 64-bit int type"
msgstr "Benyt 64 bit int-type"
-#: config/mips/mips.h:532
+#: config/mips/mips.h:503
msgid "Use 64-bit long type"
msgstr "Benyt 64 bit long-type"
-#: config/mips/mips.h:534
+#: config/mips/mips.h:505
msgid "Use 32-bit long type"
msgstr "Benyt 32 bit long-type"
-#: config/mips/mips.h:536
+#: config/mips/mips.h:507
msgid "Optimize lui/addiu address loads"
msgstr "Optimér lui/addiu-adresseindlæsninger"
-#: config/mips/mips.h:538
+#: config/mips/mips.h:509
msgid "Don't optimize lui/addiu address loads"
msgstr "Optimér ikke lui/addiu-adresseindlæsninger"
# 'as' står for assembler
-#: config/mips/mips.h:540
+#: config/mips/mips.h:511
msgid "Use MIPS as"
msgstr "Benyt MIPS as"
-#: config/mips/mips.h:542
+#: config/mips/mips.h:513
msgid "Use GNU as"
msgstr "Benyt GNU as"
-#: config/mips/mips.h:544
+#: config/mips/mips.h:515
msgid "Use symbolic register names"
msgstr "Benyt symbolske registernavne"
-#: config/mips/mips.h:546
+#: config/mips/mips.h:517
msgid "Don't use symbolic register names"
msgstr "Benyt ikke symbolske registernavne"
-#: config/mips/mips.h:548 config/mips/mips.h:550
-msgid "Use GP relative sdata/sbss sections"
+#: config/mips/mips.h:519 config/mips/mips.h:521
+#, fuzzy
+msgid "Use GP relative sdata/sbss sections (now ignored)"
msgstr "Benyt GP-relative sdata/sbss-sektioner"
-#: config/mips/mips.h:552 config/mips/mips.h:554
-msgid "Don't use GP relative sdata/sbss sections"
+#: config/mips/mips.h:523 config/mips/mips.h:525
+#, fuzzy
+msgid "Don't use GP relative sdata/sbss sections (now ignored)"
msgstr "Benyt ikke GP-relative sdata/sbss-sektioner"
-#: config/mips/mips.h:556
-msgid "Output compiler statistics"
+#: config/mips/mips.h:527
+#, fuzzy
+msgid "Output compiler statistics (now ignored)"
msgstr "Udsend oversættelsesstatistik"
-#: config/mips/mips.h:558
+#: config/mips/mips.h:529
msgid "Don't output compiler statistics"
msgstr "Udsend ikke oversættelsesstatistik"
-#: config/mips/mips.h:560
+#: config/mips/mips.h:531
msgid "Don't optimize block moves"
msgstr "Optimér ikke blokflytninger"
-#: config/mips/mips.h:562
+#: config/mips/mips.h:533
msgid "Optimize block moves"
msgstr "Optimér blokflytninger"
-#: config/mips/mips.h:564
+#: config/mips/mips.h:535
msgid "Use mips-tfile asm postpass"
msgstr "Benyt mips-tfile-maskinkodeefterfase"
-#: config/mips/mips.h:566
+#: config/mips/mips.h:537
msgid "Don't use mips-tfile asm postpass"
msgstr "Benyt ikke mips-tfile-maskinkodeefterfase"
@@ -11839,272 +11259,240 @@ msgstr "Benyt ikke mips-tfile-maskinkodeefterfase"
#. where VALUE is the bits to set or minus the bits to clear and DOC
#. is the documentation for --help (NULL if intentionally undocumented).
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:570 config/pdp11/pdp11.h:56
+#: config/mips/mips.h:541 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:314
msgid "Use hardware floating point"
msgstr "Benyt hardware-kommatal"
-#: config/mips/mips.h:572
+#: config/mips/mips.h:543
msgid "Use 64-bit FP registers"
msgstr "Benyt 64 bit-kommatalsregistre"
-#: config/mips/mips.h:574
+#: config/mips/mips.h:545
msgid "Use 32-bit FP registers"
msgstr "Benyt 32 bit-kommatalsregistre"
-#: config/mips/mips.h:576
+#: config/mips/mips.h:547
msgid "Use 64-bit general registers"
msgstr "Benyt 64 bit almene registre"
-#: config/mips/mips.h:578
+#: config/mips/mips.h:549
msgid "Use 32-bit general registers"
msgstr "Benyt 32 bit almene registre"
-#: config/mips/mips.h:580
+#: config/mips/mips.h:551
msgid "Use Irix PIC"
msgstr "Benyt Irix PIC"
-#: config/mips/mips.h:582
+#: config/mips/mips.h:553
msgid "Don't use Irix PIC"
msgstr "Benyt ikke Irix PIC"
-#: config/mips/mips.h:584
+#: config/mips/mips.h:555
msgid "Use indirect calls"
msgstr "Benyt indirekte kald"
-#: config/mips/mips.h:586
+#: config/mips/mips.h:557
msgid "Don't use indirect calls"
msgstr "Benyt ikke indirekte kald"
-#: config/mips/mips.h:588
+#: config/mips/mips.h:559
msgid "Use embedded PIC"
msgstr "Benyt indlejret PIC"
-#: config/mips/mips.h:590
+#: config/mips/mips.h:561
msgid "Don't use embedded PIC"
msgstr "Benyt ikke indlejret PIC"
-#: config/mips/mips.h:592
-msgid "Use ROM instead of RAM"
-msgstr "Benyt ROM i stedet for RAM"
-
-#: config/mips/mips.h:594
-msgid "Don't use ROM instead of RAM"
-msgstr "Benyt ikke ROM i stedet for RAM"
-
-#: config/mips/mips.h:596
-msgid "Put uninitialized constants in ROM (needs -membedded-data)"
-msgstr "Anbring konstanter uden startværdi i ROM (behøver -membedded-data)"
-
-#: config/mips/mips.h:598
-msgid "Don't put uninitialized constants in ROM"
-msgstr "Anbring ikke konstanter uden startværdi i ROM"
-
-#. Macro to define tables used to set the flags.
-#: config/mips/mips.h:600 config/xtensa/xtensa.h:110
+#: config/mips/mips.h:571
msgid "Use big-endian byte order"
msgstr "Benyt storendet byteordning"
-#: config/mips/mips.h:602 config/xtensa/xtensa.h:112
+#: config/mips/mips.h:573
msgid "Use little-endian byte order"
msgstr "Benyt lilleendet byteordning"
-#: config/mips/mips.h:604
+#: config/mips/mips.h:575
msgid "Use single (32-bit) FP only"
msgstr "Benyt kun enkeltpræcisions (32 bit) kommatal"
-#: config/mips/mips.h:606
+#: config/mips/mips.h:577
msgid "Don't use single (32-bit) FP only"
msgstr "Benyt ikke kun enkeltpræcisions (32 bit) kommatal"
# hvad så det er...
-#: config/mips/mips.h:608
+#: config/mips/mips.h:579
msgid "Use multiply accumulate"
msgstr "Benyt multiplikationsakkumulering"
-#: config/mips/mips.h:610
+#: config/mips/mips.h:581
msgid "Don't use multiply accumulate"
msgstr "Benyt ikke multiplikationsakkumulering"
-#: config/mips/mips.h:612 config/rs6000/rs6000.h:314
+#: config/mips/mips.h:583
msgid "Don't generate fused multiply/add instructions"
msgstr "Generér ikke sammensatte gang/addér-instruktioner"
-#: config/mips/mips.h:614 config/rs6000/rs6000.h:312
+#: config/mips/mips.h:585 config/rs6000/rs6000.h:330
msgid "Generate fused multiply/add instructions"
msgstr "Generér sammensatte gang/addér-instruktioner"
-#: config/mips/mips.h:616
+#: config/mips/mips.h:587
msgid "Work around early 4300 hardware bug"
msgstr "Arbejd rundt om tidlig 4300-hardwarefejl"
-#: config/mips/mips.h:618
+#: config/mips/mips.h:589
msgid "Don't work around early 4300 hardware bug"
msgstr "Arbejd ikke rundt om tidlig 4300-hardwarefejl"
-#: config/mips/mips.h:620
+#: config/mips/mips.h:591
+msgid "Work around errata for early SB-1 revision 2 cores"
+msgstr ""
+
+#: config/mips/mips.h:593
+msgid "Don't work around errata for early SB-1 revision 2 cores"
+msgstr ""
+
+#: config/mips/mips.h:595
msgid "Trap on integer divide by zero"
msgstr "Forårsag undtagelse ved heltalsdivision med nul"
-#: config/mips/mips.h:622
+#: config/mips/mips.h:597
msgid "Don't trap on integer divide by zero"
msgstr "Forårsag ikke undtagelse ved heltalsdivision med nul"
-#: config/mips/mips.h:624
-msgid "Trap on integer divide overflow"
-msgstr "Forårsag undtagelse ved heltalsdivisionsoverløb"
-
-#: config/mips/mips.h:626
-msgid "Don't trap on integer divide overflow"
-msgstr "Forårsag ikke undtagelse ved heltalsdivisionsoverløb"
-
-#: config/mips/mips.h:628
+#: config/mips/mips.h:599
msgid "Use Branch Likely instructions, overriding default for arch"
msgstr "Benyt Branch Likely-instruktioner, overskrivende forvalget for arkitektur"
-#: config/mips/mips.h:630
+#: config/mips/mips.h:601
msgid "Don't use Branch Likely instructions, overriding default for arch"
msgstr "Benyt ikke Branch Likely-instruktioner, overskrivende forvalget for arkitektur"
-#: config/mips/mips.h:744 config/pa/pa.h:310
-msgid "Specify CPU for scheduling purposes"
-msgstr "Angiv processor til planlægningsformål"
+#: config/mips/mips.h:603
+msgid "Use NewABI-style %reloc() assembly operators"
+msgstr ""
-#: config/mips/mips.h:746
-msgid "Specify CPU for code generation purposes"
-msgstr "Angiv processor til kodegenereringsformål"
+#: config/mips/mips.h:605
+msgid "Use assembler macros instead of relocation operators"
+msgstr ""
-#: config/mips/mips.h:748
-msgid "Specify an ABI"
-msgstr "Angiv en ABI"
+#: config/mips/mips.h:607
+#, fuzzy
+msgid "Generate mips16 code"
+msgstr "Generér SA-kode"
-#: config/mips/mips.h:750
-msgid "Specify a Standard MIPS ISA"
-msgstr "Angiv en Standard MIPS ISA"
+#: config/mips/mips.h:609
+#, fuzzy
+msgid "Generate normal-mode code"
+msgstr "Generér SA-kode"
-#: config/mips/mips.h:752
-msgid "Use mips16 entry/exit psuedo ops"
-msgstr "Benyt MIPS16-indtrædelse-/afslutningspseudooperationer"
+#: config/mips/mips.h:611
+msgid "Lift restrictions on GOT size"
+msgstr ""
-#: config/mips/mips.h:754
-msgid "Don't use MIPS16 instructions"
-msgstr "Benyt ikke MIPS16-instruktioner"
+#: config/mips/mips.h:613
+msgid "Do not lift restrictions on GOT size"
+msgstr ""
-#: config/mips/mips.h:756
-msgid "Don't call any cache flush functions"
-msgstr "Kald ikke nogen mellemlagertømningsfunktion"
+#: config/mips/mips.h:735
+msgid "Specify an ABI"
+msgstr "Angiv en ABI"
-#: config/mips/mips.h:758
-msgid "Specify cache flush function"
-msgstr "Angiv mellemlagertømningsfunktion"
+#: config/mips/mips.h:737
+msgid "Specify a Standard MIPS ISA"
+msgstr "Angiv en Standard MIPS ISA"
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/mips/mips.h:2900
+#: config/mips/mips.h:2403
msgid "mips16 function profiling"
msgstr "MIPS16-funktionsprofilering"
-#: config/mmix/mmix.c:189
+#: config/mmix/mmix.c:207
#, c-format
msgid "-f%s not supported: ignored"
msgstr "-f%s er ikke understøttet: ignoreret"
-#: config/mmix/mmix.c:644
+#: config/mmix/mmix.c:633
#, c-format
msgid "too large function value type, needs %d registers, have only %d registers for this"
msgstr "for stor funktionsværditype, behøver %d registre, har kun %d registre til dette"
-#: config/mmix/mmix.c:826
+#: config/mmix/mmix.c:803
msgid "function_profiler support for MMIX"
msgstr "function_profiler-understøttelse for MMIX"
-#: config/mmix/mmix.c:848
+#: config/mmix/mmix.c:823
msgid "MMIX Internal: Last named vararg would not fit in a register"
msgstr "MMIX-intern: Sidst navngivne variabel parameter kan ikke passes i et register"
-#: config/mmix/mmix.c:1639 config/mmix/mmix.c:1769
+#: config/mmix/mmix.c:1538 config/mmix/mmix.c:1668
msgid "MMIX Internal: Expected a CONST_INT, not this"
msgstr "MMIX-intern: Forventede en CONST_INT, ikke dette"
-#: config/mmix/mmix.c:1647 config/mmix/mmix.c:1671 config/mmix/mmix.c:1787
+#: config/mmix/mmix.c:1546 config/mmix/mmix.c:1570 config/mmix/mmix.c:1686
#, c-format
msgid "MMIX Internal: Bad register: %d"
msgstr "MMIX-intern: Ugyldigt register: %d"
-#: config/mmix/mmix.c:1718
+#: config/mmix/mmix.c:1617
msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
msgstr "MMIX-intern: Ugyldigt værdi for 'm', ikke en CONST_INT"
-#: config/mmix/mmix.c:1737
+#: config/mmix/mmix.c:1636
msgid "MMIX Internal: Expected a register, not this"
msgstr "MMIX-intern: Forventede et register, ikke dette"
-#: config/mmix/mmix.c:1747
+#: config/mmix/mmix.c:1646
msgid "MMIX Internal: Expected a constant, not this"
msgstr "MMIX-intern: Forventede en konstant, ikke dette"
#. Presumably there's a missing case above if we get here.
-#: config/mmix/mmix.c:1779
+#: config/mmix/mmix.c:1678
#, c-format
msgid "MMIX Internal: Missing `%c' case in mmix_print_operand"
msgstr "MMIX-intern: Mangler '%c'-case i mmix_print_operand"
#. We need the original here.
-#: config/mmix/mmix.c:1831
+#: config/mmix/mmix.c:1730
msgid "MMIX Internal: Cannot decode this operand"
msgstr "MMIX-intern: Kan ikke dekode denne operand"
-#: config/mmix/mmix.c:1891
+#: config/mmix/mmix.c:1787
msgid "MMIX Internal: This is not a recognized address"
msgstr "MMIX-intern: Dette er ikke en genkendt adresse"
-#: config/mmix/mmix.c:2082
+#: config/mmix/mmix.c:1964
#, c-format
msgid "stack frame not a multiple of 8 bytes: %d"
msgstr "stakramme ikke et produkt af 8 byte: %d"
-#: config/mmix/mmix.c:2321
+#: config/mmix/mmix.c:2203
#, c-format
msgid "stack frame not a multiple of octabyte: %d"
msgstr "stakramme ikke et produkt af 8 byte: %d"
-#: config/mmix/mmix.c:2818 config/mmix/mmix.c:2887
+#: config/mmix/mmix.c:2677 config/mmix/mmix.c:2741
#, c-format
msgid "MMIX Internal: %s is not a shiftable int"
msgstr "MMIX-intern: %s er ikke en int der kan skiftes"
-#: config/mmix/mmix.c:3006
+#: config/mmix/mmix.c:2857
msgid "MMIX Internal: Trying to output invalidly reversed condition:"
msgstr "MMIX-intern: Forsøger at udskrive ugyldigt omvendt betingelse:"
-#: config/mmix/mmix.c:3013
+#: config/mmix/mmix.c:2864
msgid "MMIX Internal: What's the CC of this?"
msgstr "MMIX-intern: Hvad er CC af dette?"
-#: config/mmix/mmix.c:3017
+#: config/mmix/mmix.c:2868
msgid "MMIX Internal: What is the CC of this?"
msgstr "MMIX-intern: Hvad er CC af dette?"
-#: config/mmix/mmix.c:3088
+#: config/mmix/mmix.c:2938
msgid "MMIX Internal: This is not a constant:"
msgstr "MMIX-intern: Dette er ikke en konstant:"
-#. For these target macros, there is no generic documentation here. You
-#. should read `Using and Porting GCC' for that. Only comments specific
-#. to the MMIX target are here.
-#.
-#. There are however references to the specific texinfo node (comments
-#. with "Node:"), so there should be little or nothing amiss. Probably
-#. the opposite, since we don't have to care about old littering and
-#. soon outdated generic comments.
-#. Node: Driver
-#. User symbols are in the same name-space as built-in symbols, but we
-#. don't need the built-in symbols, so remove those and instead apply
-#. stricter operand checking. Don't warn when expanding insns.
-#. Pass on -mset-program-start=N and -mset-data-start=M to the linker.
-#. Provide default program start 0x100 unless -mno-set-program-start.
-#. Don't do this if linking relocatably, with -r. For a final link,
-#. produce mmo, unless ELF is requested or when linking relocatably.
-#. Put unused option values here.
#: config/mmix/mmix.h:132
msgid "Set start-address of the program"
msgstr "Angiv startadressen for programmet"
@@ -12174,23 +11562,28 @@ msgstr "Generér et enkelt afslutningspunkt for hver funktion"
msgid "Do not generate a single exit point for each function"
msgstr "Generér ikke et enkelt afslutningspunkt for hver funktion"
-#: config/mn10300/mn10300.h:59
-msgid "Work around hardware multiply bug"
-msgstr "Arbejd omkring hardware-multiplikationsfejl"
-
-#: config/mn10300/mn10300.h:60
-msgid "Do not work around hardware multiply bug"
-msgstr "Arbejd ikke omkring hardware-multiplikationsfejl"
-
-#: config/mn10300/mn10300.h:61
+#: config/mn10300/linux.h:60 config/mn10300/mn10300.h:71
msgid "Target the AM33 processor"
msgstr "Målret mod AM33-processoren"
-#: config/mn10300/mn10300.h:65
+#: config/mn10300/linux.h:61 config/mn10300/mn10300.h:75
+#, fuzzy
+msgid "Target the AM33/2.0 processor"
+msgstr "Målret mod AM33-processoren"
+
+#: config/mn10300/linux.h:62 config/mn10300/mn10300.h:78
msgid "Enable linker relaxations"
msgstr "Aktivér tolerant sammenkædning"
-#: config/ns32k/ns32k.h:142 config/s390/s390.h:69
+#: config/mn10300/mn10300.h:69
+msgid "Work around hardware multiply bug"
+msgstr "Arbejd omkring hardware-multiplikationsfejl"
+
+#: config/mn10300/mn10300.h:70
+msgid "Do not work around hardware multiply bug"
+msgstr "Arbejd ikke omkring hardware-multiplikationsfejl"
+
+#: config/ns32k/ns32k.h:142 config/s390/s390.h:125
msgid "Don't use hardware fp"
msgstr "Benyt ikke hardware-kommatal"
@@ -12262,7 +11655,7 @@ msgstr "\"Små registerklasser\"-lapning"
msgid "No \"Small register classes\" kludge"
msgstr "Ingen \"Små registerklasser\"-lapning"
-#: config/pa/pa.c:261
+#: config/pa/pa.c:304
#, c-format
msgid ""
"unknown -mschedule= option (%s).\n"
@@ -12271,7 +11664,7 @@ msgstr ""
"ukendt parameter til -mschedule= (%s).\n"
"Gyldige parametre er 700, 7100, 7100LC, 7200, 7300 og 8000\n"
-#: config/pa/pa.c:286
+#: config/pa/pa.c:329
#, c-format
msgid ""
"unknown -march= option (%s).\n"
@@ -12280,29 +11673,23 @@ msgstr ""
"ukendt parameter til -march= (%s).\n"
"Gyldige parametre er 1.0, 1.1 og 2.0\n"
-#: config/pa/pa.c:299
+#: config/pa/pa.c:342
msgid "PIC code generation is not supported in the portable runtime model\n"
msgstr "PIC-kodegenerering er ikke understøttet i den portable kørselsmodel\n"
-#: config/pa/pa.c:304
+#: config/pa/pa.c:347
msgid "PIC code generation is not compatible with fast indirect calls\n"
msgstr "PIC-kodegenerering er ikke kompatibel med hurtige indirekte kald\n"
-#: config/pa/pa.c:309
+#: config/pa/pa.c:352
msgid "-g is only supported when using GAS on this processor,"
msgstr "-g er kun understøttet ved brug af GAS på denne processor,"
-#: config/pa/pa.c:310
-msgid "-g option disabled"
-msgstr "tilvalget -g deaktiveret"
-
-#: config/pa/pa-hiux.h:75 config/pa/pa-hpux.h:87 config/pa/pa-hpux7.h:81
-#: config/pa/pa64-hpux.h:25
+#: config/pa/pa-hpux.h:91 config/pa/pa64-hpux.h:25
msgid "Generate cpp defines for server IO"
msgstr "Generér CPP-defineringer til server-IO"
-#: config/pa/pa-hiux.h:76 config/pa/pa-hpux.h:88 config/pa/pa-hpux7.h:82
-#: config/pa/pa64-hpux.h:27
+#: config/pa/pa-hpux.h:92 config/pa/pa64-hpux.h:27
msgid "Generate cpp defines for workstation IO"
msgstr "Generér CPP-defineringer til arbejdsstation-IO"
@@ -12424,50 +11811,50 @@ msgstr "Antag at kode vil blive sammenkædet med GNU ld"
msgid "Assume code will be linked by HP ld"
msgstr "Antag at kode vil blive sammenkædet med HP ld"
-#: config/pdp11/pdp11.h:57
+#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:316
msgid "Do not use hardware floating point"
msgstr "Benyt ikke hardware-kommatal"
#. return float result in ac0
-#: config/pdp11/pdp11.h:59
+#: config/pdp11/pdp11.h:64
msgid "Return floating point results in ac0"
msgstr "Returnér kommatalsresultater i ac0"
-#: config/pdp11/pdp11.h:60
+#: config/pdp11/pdp11.h:65
msgid "Return floating point results in memory"
msgstr "Returnér kommatalsresultater i hukommelse"
#. is 11/40
-#: config/pdp11/pdp11.h:62
+#: config/pdp11/pdp11.h:67
msgid "Generate code for an 11/40"
msgstr "Generér kode til en 11/40"
#. is 11/45
-#: config/pdp11/pdp11.h:65
+#: config/pdp11/pdp11.h:70
msgid "Generate code for an 11/45"
msgstr "Generér kode til en 11/45"
#. is 11/10
-#: config/pdp11/pdp11.h:68
+#: config/pdp11/pdp11.h:73
msgid "Generate code for an 11/10"
msgstr "Generér kode til en 11/10"
#. use movstrhi for bcopy
#. use 32 bit for int
-#: config/pdp11/pdp11.h:73 config/pdp11/pdp11.h:74
+#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
msgid "Use 32 bit int"
msgstr "Benyt 32 bit int"
-#: config/pdp11/pdp11.h:75 config/pdp11/pdp11.h:76
+#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
msgid "Use 16 bit int"
msgstr "Benyt 16 bit int"
#. use 32 bit for float
-#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
+#: config/pdp11/pdp11.h:83 config/pdp11/pdp11.h:84
msgid "Use 32 bit float"
msgstr "Benyt 32 bit float"
-#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
+#: config/pdp11/pdp11.h:85 config/pdp11/pdp11.h:86
msgid "Use 64 bit float"
msgstr "Benyt 64 bit float"
@@ -12475,70 +11862,54 @@ msgstr "Benyt 64 bit float"
#. is branching expensive - on a PDP, it's actually really cheap
#. this is just to play around and check what code gcc generates
#. split instruction and data memory?
-#: config/pdp11/pdp11.h:90
+#: config/pdp11/pdp11.h:95
msgid "Target has split I&D"
msgstr "Målarkitektur har delt I&D"
-#: config/pdp11/pdp11.h:91
+#: config/pdp11/pdp11.h:96
msgid "Target does not have split I&D"
msgstr "Målarkitektur har ikke delt I&D"
#. UNIX assembler syntax?
-#: config/pdp11/pdp11.h:93
+#: config/pdp11/pdp11.h:98
msgid "Use UNIX assembler syntax"
msgstr "Benyt UNIX-maskinkodesyntaks"
-#: config/pdp11/pdp11.h:94
+#: config/pdp11/pdp11.h:99
msgid "Use DEC assembler syntax"
msgstr "Benyt DEC-maskinkodesyntaks"
-#: config/romp/romp.c:717 config/rs6000/rs6000.c:7755
-#, c-format
-msgid "invalid %%S value"
-msgstr "ugyldig %%S-værdi"
+#: config/rs6000/host-darwin.c:52
+msgid "Segmentation Fault (code)"
+msgstr ""
-#: config/romp/romp.c:726 config/romp/romp.c:733
-#, c-format
-msgid "invalid %%b value"
-msgstr "ugyldig %%b-værdi"
+#: config/rs6000/host-darwin.c:83
+msgid "Out of stack space.\n"
+msgstr ""
-#: config/romp/romp.c:773 config/romp/romp.c:784
+#: config/rs6000/host-darwin.c:104
#, c-format
-msgid "invalid %%z value"
-msgstr "ugyldig %%z-værdi"
+msgid "Try running `%s' in the shell to raise its limit.\n"
+msgstr ""
-#: config/romp/romp.c:792 config/romp/romp.c:800
-#, c-format
-msgid "invalid %%Z value"
-msgstr "ugyldig %%Z-værdi"
+#: config/rs6000/host-darwin.c:117
+msgid "Segmentation Fault"
+msgstr ""
-#: config/romp/romp.c:807 config/romp/romp.c:816 config/romp/romp.c:823
-#: config/rs6000/rs6000.c:7584
+#: config/rs6000/host-darwin.c:131
#, c-format
-msgid "invalid %%k value"
-msgstr "ugyldig %%k-værdi"
+msgid "While setting up signal stack: %m"
+msgstr ""
-#: config/romp/romp.c:908 config/romp/romp.c:951
+#: config/rs6000/host-darwin.c:137
#, c-format
-msgid "invalid %%j value"
-msgstr "ugyldig %%j-værdi"
+msgid "While setting up signal handler: %m"
+msgstr ""
-#. Perform any needed actions needed for a function that is receiving a
-#. variable number of arguments.
-#.
-#. CUM is as above.
-#.
-#. MODE and TYPE are the mode and type of the current parameter.
-#.
-#. PRETEND_SIZE is a variable that should be set to the amount of stack
-#. that must be pushed by the prolog to pretend that our caller pushed
-#. it.
-#.
-#. Normally, this macro will push all remaining incoming registers on the
-#. stack and set PRETEND_SIZE to the length of the registers pushed.
-#: config/romp/romp.h:648
-msgid "can't have varargs with -mfp-arg-in-fp-regs"
-msgstr "kan ikke have variable parameterlister med -mfp-arg-in-fp-regs"
+#: config/rs6000/host-darwin.c:184
+#, c-format
+msgid "couldn't unmap pch_address_space: %m\n"
+msgstr ""
#. Handle the machine specific pragma longcall. Its syntax is
#.
@@ -12549,192 +11920,243 @@ msgstr "kan ikke have variable parameterlister med -mfp-arg-in-fp-regs"
#. rs6000_default_long_calls is set to the value of TOGGLE, changing
#. whether or not new function declarations receive a longcall
#. attribute by default.
-#: config/rs6000/rs6000-c.c:44
+#: config/rs6000/rs6000-c.c:46
msgid "ignoring malformed #pragma longcall"
msgstr "ignorerer forkert udformet #pragma longcall"
-#: config/rs6000/rs6000-c.c:58
+#: config/rs6000/rs6000-c.c:59
msgid "missing open paren"
msgstr "manglende startparantes"
-#: config/rs6000/rs6000-c.c:60
+#: config/rs6000/rs6000-c.c:61
msgid "missing number"
msgstr "manglende tal"
-#: config/rs6000/rs6000-c.c:62
+#: config/rs6000/rs6000-c.c:63
msgid "missing close paren"
msgstr "manglende slutparantes"
-#: config/rs6000/rs6000-c.c:65
+#: config/rs6000/rs6000-c.c:66
msgid "number must be 0 or 1"
msgstr "tal skal enten være 0 eller 1"
-#: config/rs6000/rs6000-c.c:68
+#: config/rs6000/rs6000-c.c:69
msgid "junk at end of #pragma longcall"
msgstr "ragelse i slutningen af #pragma longcall"
-#: config/rs6000/rs6000.c:592
+#: config/rs6000/rs6000.c:793
msgid "-mmultiple is not supported on little endian systems"
msgstr "-mmultiple er ikke understøttet på lilleendede systemer"
-#: config/rs6000/rs6000.c:599
+#: config/rs6000/rs6000.c:800
msgid "-mstring is not supported on little endian systems"
msgstr "-mstring er ikke understøttet på lilleendede systemer"
-#: config/rs6000/rs6000.c:623
+#: config/rs6000/rs6000.c:814
#, c-format
msgid "unknown -mdebug-%s switch"
msgstr "ukendt tilvalg -mdebug-%s"
-#: config/rs6000/rs6000.c:635
+#: config/rs6000/rs6000.c:826
#, c-format
msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'"
msgstr "ukendt parameter '%s' til -mtraceback; forventer 'full', 'partial' eller 'none'"
-#: config/rs6000/rs6000.c:646
+#: config/rs6000/rs6000.c:837
#, c-format
msgid "Unknown switch -mlong-double-%s"
msgstr "Ukendt tilvalg -mlong-double-%s"
-#: config/rs6000/rs6000.c:738
-#, c-format
-msgid "unknown -misel= option specified: '%s'"
+#: config/rs6000/rs6000.c:1008
+#, fuzzy, c-format
+msgid "unknown -m%s= option specified: '%s'"
msgstr "ukendt tilvalg til -misel= angivet: '%s'"
-#: config/rs6000/rs6000.c:753
+#: config/rs6000/rs6000.c:1025
#, c-format
-msgid "unknown -mvrsave= option specified: '%s'"
-msgstr "ukendt tilvalg til -mvrsave= angivet: '%s'"
+msgid "not configured for ABI: '%s'"
+msgstr ""
-#: config/rs6000/rs6000.c:772
+#: config/rs6000/rs6000.c:1031
#, c-format
msgid "unknown ABI specified: '%s'"
msgstr "ukendt ABI angivet: '%s'"
-#: config/rs6000/rs6000.c:4206
+#: config/rs6000/rs6000.c:1045
+#, fuzzy, c-format
+msgid "unknown -malign-XXXXX option specified: '%s'"
+msgstr "ukendt tilvalg til -misel= angivet: '%s'"
+
+#: config/rs6000/rs6000.c:5358
msgid "argument 1 must be a 5-bit signed literal"
msgstr "1. parameter skal være en 5 bit-konstant med fortegn"
-#: config/rs6000/rs6000.c:4313 config/rs6000/rs6000.c:4903
+#: config/rs6000/rs6000.c:5460 config/rs6000/rs6000.c:6083
msgid "argument 2 must be a 5-bit unsigned literal"
msgstr "2. parameter skal være en 5 bit-konstant uden fortegn"
-#: config/rs6000/rs6000.c:4356
+#: config/rs6000/rs6000.c:5500
msgid "argument 1 of __builtin_altivec_predicate must be a constant"
msgstr "1. parameter til __builtin_altivec_predicate skal være en konstant"
-#: config/rs6000/rs6000.c:4410
+#: config/rs6000/rs6000.c:5554
msgid "argument 1 of __builtin_altivec_predicate is out of range"
msgstr "1. parameter til __builtin_altivec_predicate er uden for det gyldige interval"
-#: config/rs6000/rs6000.c:4489
+#: config/rs6000/rs6000.c:5682
msgid "argument 3 must be a 4-bit unsigned literal"
msgstr "3. parameter skal være en 4 bit-konstant uden fortegn"
-#: config/rs6000/rs6000.c:4666
+#: config/rs6000/rs6000.c:5852
#, c-format
msgid "argument to `%s' must be a 2-bit unsigned literal"
msgstr "parameter til '%s' skal være en 2 bit-konstant uden fortegn"
-#: config/rs6000/rs6000.c:4782
+#: config/rs6000/rs6000.c:5965
msgid "argument to dss must be a 2-bit unsigned literal"
msgstr "parameter til dss skal være en 2 bit-konstant uden fortegn"
-#: config/rs6000/rs6000.c:5013
+#: config/rs6000/rs6000.c:6203
msgid "argument 1 of __builtin_spe_predicate must be a constant"
msgstr "1. parameter til __builtin_spe_predicate skal være en konstant"
-#: config/rs6000/rs6000.c:5086
+#: config/rs6000/rs6000.c:6276
msgid "argument 1 of __builtin_spe_predicate is out of range"
msgstr "1. parameter til __builtin_spe_predicate er uden for det gyldige interval"
-#: config/rs6000/rs6000.c:7511
+#: config/rs6000/rs6000.c:8711
#, c-format
msgid "invalid %%f value"
msgstr "ugyldig %%f-værdi"
-#: config/rs6000/rs6000.c:7520
+#: config/rs6000/rs6000.c:8720
#, c-format
msgid "invalid %%F value"
msgstr "ugyldig %%F-værdi"
-#: config/rs6000/rs6000.c:7529
+#: config/rs6000/rs6000.c:8729
#, c-format
msgid "invalid %%G value"
msgstr "ugyldig %%G-værdi"
-#: config/rs6000/rs6000.c:7564
+#: config/rs6000/rs6000.c:8764
#, c-format
msgid "invalid %%j code"
msgstr "ugyldig %%j-kode"
-#: config/rs6000/rs6000.c:7574
+#: config/rs6000/rs6000.c:8774
#, c-format
msgid "invalid %%J code"
msgstr "ugyldig %%J-kode"
-#: config/rs6000/rs6000.c:7604
+#: config/rs6000/rs6000.c:8784
+#, c-format
+msgid "invalid %%k value"
+msgstr "ugyldig %%k-værdi"
+
+#: config/rs6000/rs6000.c:8804 config/xtensa/xtensa.c:1985
#, c-format
msgid "invalid %%K value"
msgstr "ugyldig %%K-værdi"
-#: config/rs6000/rs6000.c:7671
+#: config/rs6000/rs6000.c:8871
#, c-format
msgid "invalid %%O value"
msgstr "ugyldig %%O-værdi"
-#: config/rs6000/rs6000.c:7793
+#: config/rs6000/rs6000.c:8918
+#, c-format
+msgid "invalid %%q value"
+msgstr "ugyldig %%q-værdi"
+
+#: config/rs6000/rs6000.c:8962
+#, c-format
+msgid "invalid %%S value"
+msgstr "ugyldig %%S-værdi"
+
+#: config/rs6000/rs6000.c:9004
#, c-format
msgid "invalid %%T value"
msgstr "ugyldig %%T-værdi"
-#: config/rs6000/rs6000.c:7803
+#: config/rs6000/rs6000.c:9014
#, c-format
msgid "invalid %%u value"
msgstr "ugyldig %%u-værdi"
-#: config/rs6000/rs6000.c:7812
+#: config/rs6000/rs6000.c:9023 config/xtensa/xtensa.c:1955
#, c-format
msgid "invalid %%v value"
msgstr "ugyldig %%v-værdi"
-#: config/rs6000/rs6000.c:12242
+#: config/rs6000/rs6000.c:13513
msgid "no profiling of 64-bit code for this ABI"
msgstr "ingen profilering af 64 bit-kode for denne ABI"
-#: config/rs6000/aix.h:160 config/rs6000/beos.h:32
+#: config/rs6000/aix.h:184 config/rs6000/beos.h:32
msgid "Always pass floating-point arguments in memory"
msgstr "Overbring altid kommatalsparametre i hukommelse"
-#: config/rs6000/aix.h:162 config/rs6000/beos.h:34
+#: config/rs6000/aix.h:186 config/rs6000/beos.h:34
msgid "Don't always pass floating-point arguments in memory"
msgstr "Overbring ikke altid kommatalsparametre i hukommelse"
-#: config/rs6000/aix41.h:28 config/rs6000/aix43.h:32 config/rs6000/aix51.h:32
-#: config/rs6000/aix52.h:32
+#: config/rs6000/aix41.h:27 config/rs6000/aix43.h:31 config/rs6000/aix51.h:31
+#: config/rs6000/aix52.h:31
msgid "Support message passing with the Parallel Environment"
msgstr "Understøt meddelelsesoverbringelse med Parallel Environment"
-#: config/rs6000/aix43.h:28 config/rs6000/aix51.h:28 config/rs6000/aix52.h:28
+#: config/rs6000/aix43.h:27 config/rs6000/aix51.h:27 config/rs6000/aix52.h:27
msgid "Compile for 64-bit pointers"
msgstr "Oversæt for 64 bit-henvisninger"
-#: config/rs6000/aix43.h:30 config/rs6000/aix51.h:30 config/rs6000/aix52.h:30
+#: config/rs6000/aix43.h:29 config/rs6000/aix51.h:29 config/rs6000/aix52.h:29
msgid "Compile for 32-bit pointers"
msgstr "Oversæt for 32 bit-henvisninger"
-#: config/rs6000/aix43.h:49 config/rs6000/aix51.h:49 config/rs6000/aix52.h:49
+#: config/rs6000/aix43.h:48 config/rs6000/aix51.h:48 config/rs6000/aix52.h:48
msgid "-maix64 and POWER architecture are incompatible"
msgstr "-maix64 og POWER-arkitekturen er indbyrdes uforenelige"
-#: config/rs6000/aix43.h:54 config/rs6000/aix51.h:54 config/rs6000/aix52.h:54
+#: config/rs6000/aix43.h:53 config/rs6000/aix51.h:53 config/rs6000/aix52.h:53
msgid "-maix64 requires PowerPC64 architecture remain enabled"
msgstr "-maix64 kræver at PowerPC64-arkitekturen forbliver aktiveret"
-#: config/rs6000/aix43.h:58 config/rs6000/aix51.h:58 config/rs6000/aix52.h:58
+#: config/rs6000/aix43.h:57 config/rs6000/aix51.h:57 config/rs6000/aix52.h:57
msgid "-maix64 required: 64-bit computation with 32-bit addressing not yet supported"
msgstr "-maix64 påkrævet: 64 bit-beregninger med 32 bit-adressering understøttes endnu ikke"
+#: config/rs6000/darwin.h:64
+msgid "Generate code suitable for executables (NOT shared libs)"
+msgstr ""
+
+#. The Darwin ABI always includes AltiVec, can't be (validly) turned
+#. off.
+#: config/rs6000/darwin.h:80
+msgid "-mdynamic-no-pic overrides -fpic or -fPIC"
+msgstr ""
+
+#. Darwin doesn't support -fpic.
+#: config/rs6000/darwin.h:86
+#, fuzzy
+msgid "-fpic is not supported; -fPIC assumed"
+msgstr "-pipe understøttes ikke"
+
+#: config/rs6000/linux64.h:96
+#, fuzzy
+msgid "-m64 requires a PowerPC64 cpu"
+msgstr "-maix64 kræver at PowerPC64-arkitekturen forbliver aktiveret"
+
+#: config/rs6000/linux64.h:201
+#, fuzzy
+msgid "Call mcount for profiling before a function prologue"
+msgstr "Flyt ikke instruktioner til en funktions begyndelse"
+
+#: config/rs6000/linux64.h:203
+#, fuzzy
+msgid "Call mcount for profiling after a function prologue"
+msgstr "Flyt ikke instruktioner til en funktions begyndelse"
+
#. Run-time compilation parameters selecting different hardware subsets.
#.
#. Macro to define tables used to set the flags.
@@ -12742,162 +12164,211 @@ msgstr "-maix64 påkrævet: 64 bit-beregninger med 32 bit-adressering understøttes
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/rs6000/rs6000.h:240
+#: config/rs6000/rs6000.h:262
msgid "Use POWER instruction set"
msgstr "Benyt POWER-instruktionssættet"
-#: config/rs6000/rs6000.h:243
+#: config/rs6000/rs6000.h:265
msgid "Use POWER2 instruction set"
msgstr "Benyt POWER2-instruktionssættet"
-#: config/rs6000/rs6000.h:245
+#: config/rs6000/rs6000.h:267
msgid "Do not use POWER2 instruction set"
msgstr "Benyt ikke POWER2-instruktionssættet"
-#: config/rs6000/rs6000.h:248
+#: config/rs6000/rs6000.h:270
msgid "Do not use POWER instruction set"
msgstr "Benyt ikke POWER-instruktionssættet"
-#: config/rs6000/rs6000.h:250
+#: config/rs6000/rs6000.h:272
msgid "Use PowerPC instruction set"
msgstr "Benyt PowerPC-instruktionssættet"
-#: config/rs6000/rs6000.h:253
+#: config/rs6000/rs6000.h:275
msgid "Do not use PowerPC instruction set"
msgstr "Benyt ikke PowerPC-instruktionssættet"
-#: config/rs6000/rs6000.h:255
+#: config/rs6000/rs6000.h:277
msgid "Use PowerPC General Purpose group optional instructions"
msgstr "Benyt valgfrie instruktioner fra PowerPC General Purpose-gruppen"
-#: config/rs6000/rs6000.h:257
-msgid "Don't use PowerPC General Purpose group optional instructions"
+#: config/rs6000/rs6000.h:279
+#, fuzzy
+msgid "Do not use PowerPC General Purpose group optional instructions"
msgstr "Benyt ikke valgfrie instruktioner fra PowerPC General Purpose-gruppen"
-#: config/rs6000/rs6000.h:259
+#: config/rs6000/rs6000.h:281
msgid "Use PowerPC Graphics group optional instructions"
msgstr "Benyt valgfrie instruktioner fra PowerPC Graphics-gruppen"
-#: config/rs6000/rs6000.h:261
-msgid "Don't use PowerPC Graphics group optional instructions"
+#: config/rs6000/rs6000.h:283
+#, fuzzy
+msgid "Do not use PowerPC Graphics group optional instructions"
msgstr "Benyt ikke valgfrie instruktioner fra PowerPC Graphics-gruppen"
-#: config/rs6000/rs6000.h:263
+#: config/rs6000/rs6000.h:285
msgid "Use PowerPC-64 instruction set"
msgstr "Benyt PowerPC-64-instruktionssættet"
-#: config/rs6000/rs6000.h:265
-msgid "Don't use PowerPC-64 instruction set"
+#: config/rs6000/rs6000.h:287
+#, fuzzy
+msgid "Do not use PowerPC-64 instruction set"
msgstr "Benyt ikke PowerPC-64-instruktionssættet"
-#: config/rs6000/rs6000.h:267
+#: config/rs6000/rs6000.h:289
msgid "Use AltiVec instructions"
msgstr "Benyt AltiVec-instruktioner"
-#: config/rs6000/rs6000.h:269
-msgid "Don't use AltiVec instructions"
+#: config/rs6000/rs6000.h:291
+#, fuzzy
+msgid "Do not use AltiVec instructions"
msgstr "Benyt ikke AltiVec-instruktioner"
-#: config/rs6000/rs6000.h:271
+#: config/rs6000/rs6000.h:293
msgid "Use new mnemonics for PowerPC architecture"
msgstr "Benyt nye aliaser for PowerPC-arkitekturen"
-#: config/rs6000/rs6000.h:273
+#: config/rs6000/rs6000.h:295
msgid "Use old mnemonics for PowerPC architecture"
msgstr "Benyt tidligere aliaser for PowerPC-arkitekturen"
-#: config/rs6000/rs6000.h:276
+#: config/rs6000/rs6000.h:298
msgid "Put everything in the regular TOC"
msgstr "Anbring alting i den regulære indholdsfortegnelse"
-#: config/rs6000/rs6000.h:278
+#: config/rs6000/rs6000.h:300
msgid "Place floating point constants in TOC"
msgstr "Anbring kommatalskonstanter i indholdsfortegnelsen"
-#: config/rs6000/rs6000.h:280
-msgid "Don't place floating point constants in TOC"
+#: config/rs6000/rs6000.h:302
+#, fuzzy
+msgid "Do not place floating point constants in TOC"
msgstr "Anbring ikke kommatalskonstanter i indholdsfortegnelsen"
-#: config/rs6000/rs6000.h:282
+#: config/rs6000/rs6000.h:304
msgid "Place symbol+offset constants in TOC"
msgstr "Anbring symbol+afsæt-konstanter i indholdsfortegnelsen"
-#: config/rs6000/rs6000.h:284
-msgid "Don't place symbol+offset constants in TOC"
+#: config/rs6000/rs6000.h:306
+#, fuzzy
+msgid "Do not place symbol+offset constants in TOC"
msgstr "Anbring ikke symbol+afsæt-konstanter i indholdsfortegnelsen"
-#: config/rs6000/rs6000.h:290
+#: config/rs6000/rs6000.h:312
msgid "Place variable addresses in the regular TOC"
msgstr "Anbring variabeladresser i den regulære indholdsfortegnelse"
-#: config/rs6000/rs6000.h:296
+#: config/rs6000/rs6000.h:318
msgid "Generate load/store multiple instructions"
msgstr "Generér flere indlæsnings-/lagringsinstruktioner"
-#: config/rs6000/rs6000.h:298
+#: config/rs6000/rs6000.h:320
msgid "Do not generate load/store multiple instructions"
msgstr "Generér ikke flere indlæsnings-/lagringsinstruktioner"
-#: config/rs6000/rs6000.h:302
+#: config/rs6000/rs6000.h:322
msgid "Generate string instructions for block moves"
msgstr "Generér strengoperationer til blokflytninger"
-#: config/rs6000/rs6000.h:304
+#: config/rs6000/rs6000.h:324
msgid "Do not generate string instructions for block moves"
msgstr "Generér ikke strengoperationer til blokflytninger"
-#: config/rs6000/rs6000.h:308
+#: config/rs6000/rs6000.h:326
msgid "Generate load/store with update instructions"
msgstr "Generér indlæsning/lagring med opdateringsinstruktioner"
-#: config/rs6000/rs6000.h:310
+#: config/rs6000/rs6000.h:328
msgid "Do not generate load/store with update instructions"
msgstr "Generér ikke indlæsning/lagring med opdateringsinstruktioner"
-#: config/rs6000/rs6000.h:318
-msgid "Don't schedule the start and end of the procedure"
+#: config/rs6000/rs6000.h:332
+#, fuzzy
+msgid "Do not generate fused multiply/add instructions"
+msgstr "Generér ikke sammensatte gang/addér-instruktioner"
+
+#: config/rs6000/rs6000.h:336
+#, fuzzy
+msgid "Do not schedule the start and end of the procedure"
msgstr "Planlæg ikke begyndelsen og slutningen af proceduren"
-#: config/rs6000/rs6000.h:324
+#: config/rs6000/rs6000.h:342
msgid "Return all structures in memory (AIX default)"
msgstr "Returnér alle strukturer i hukommelse (SVR4-standard)"
-#: config/rs6000/rs6000.h:326
+#: config/rs6000/rs6000.h:344
msgid "Return small structures in registers (SVR4 default)"
msgstr "Returnér små strukturer i registre (SVR4-standard)"
-#: config/rs6000/rs6000.h:391 config/sparc/sparc.h:633
+#: config/rs6000/rs6000.h:350
+#, fuzzy
+msgid "Generate single field mfcr instruction"
+msgstr "Generér char-instruktioner"
+
+#: config/rs6000/rs6000.h:352
+#, fuzzy
+msgid "Do not generate single field mfcr instruction"
+msgstr "Generér ikke char-instruktioner"
+
+#: config/rs6000/rs6000.h:435 config/sparc/sparc.h:648
msgid "Use features of and schedule code for given CPU"
msgstr "Benyt faciliteter fra og planlæg koden til en given processor"
-#: config/rs6000/rs6000.h:394
+#: config/rs6000/rs6000.h:438
msgid "Enable debug output"
msgstr "Aktivér fejlanalyseringsuddata"
-#: config/rs6000/rs6000.h:396
+#: config/rs6000/rs6000.h:440
msgid "Select full, part, or no traceback table"
msgstr "Vælg komplet, partiel eller ingen tilbagesporingstabel"
-#: config/rs6000/rs6000.h:397
+#: config/rs6000/rs6000.h:441
msgid "Specify ABI to use"
msgstr "Angiv ABI der skal bruges"
-#: config/rs6000/rs6000.h:399
+#: config/rs6000/rs6000.h:443
msgid "Specify size of long double (64 or 128 bits)"
msgstr "Angiv størrelsen af long double (64 eller 128 bit)"
-#: config/rs6000/rs6000.h:401
+#: config/rs6000/rs6000.h:445
msgid "Specify yes/no if isel instructions should be generated"
msgstr "Angiv yes/no hvis isel-instruktioner skal genereres"
-#: config/rs6000/rs6000.h:403
+#: config/rs6000/rs6000.h:447
+#, fuzzy
+msgid "Specify yes/no if SPE SIMD instructions should be generated"
+msgstr "Angiv yes/no hvis isel-instruktioner skal genereres"
+
+#: config/rs6000/rs6000.h:449
+#, fuzzy
+msgid "Specify yes/no if using floating point in the GPRs"
+msgstr "Angiv versionen af kommatalsemulatoren"
+
+#: config/rs6000/rs6000.h:451
msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec"
msgstr "Angiv yes/no hvis VRSAVE-instruktioner skal genereres til AltiVec"
-#: config/rs6000/rs6000.h:405
+#: config/rs6000/rs6000.h:453
msgid "Avoid all range limits on call instructions"
msgstr "Undgå alle områdegrænser ved kaldeinstruktioner"
+#: config/rs6000/rs6000.h:456
+msgid "Determine which dependences between insns are considered costly"
+msgstr ""
+
+#: config/rs6000/rs6000.h:458
+msgid "Specify which post scheduling nop insertion scheme to apply"
+msgstr ""
+
+#: config/rs6000/rs6000.h:460
+#, fuzzy
+msgid "Specify alignment of structure fields default/natural"
+msgstr "Angiv den mindste bitjustering af strukturer"
+
+#: config/rs6000/rs6000.h:462
+msgid "Specify scheduling priority for dispatch slot restricted insns"
+msgstr ""
+
#. Definitions for __builtin_return_address and __builtin_frame_address.
#. __builtin_return_address (0) should give link register (65), enable
#. this.
@@ -12910,7 +12381,7 @@ msgstr "Undgå alle områdegrænser ved kaldeinstruktioner"
#. Number of bytes into the frame return addresses can be found. See
#. rs6000_stack_info in rs6000.c for more information on how the different
#. abi's store the return address.
-#: config/rs6000/rs6000.h:1884
+#: config/rs6000/rs6000.h:1926
msgid "RETURN_ADDRESS_OFFSET not supported"
msgstr "RETURN_ADDRESS_OFFSET er ikke understøttet"
@@ -12922,91 +12393,100 @@ msgstr "Angiv ABI-kaldekonvention"
msgid "Select method for sdata handling"
msgstr "Angiv metode for sdata-håndtering"
-#: config/rs6000/sysv4.h:103
+#: config/rs6000/sysv4.h:100
msgid "Align to the base type of the bit-field"
msgstr "Justér til grundtypen for bitfeltet"
-#: config/rs6000/sysv4.h:105
+#: config/rs6000/sysv4.h:102
msgid "Don't align to the base type of the bit-field"
msgstr "Justér ikke til grundtypen for bitfeltet"
-#: config/rs6000/sysv4.h:107
+#: config/rs6000/sysv4.h:104
msgid "Don't assume that unaligned accesses are handled by the system"
msgstr "Antag ikke at ujusterede tilgange håndteres af systemet"
-#: config/rs6000/sysv4.h:109
+#: config/rs6000/sysv4.h:106
msgid "Assume that unaligned accesses are handled by the system"
msgstr "Antag at ujusterede tilgange håndteres af systemet"
-#: config/rs6000/sysv4.h:111 config/rs6000/sysv4.h:115
+#: config/rs6000/sysv4.h:108 config/rs6000/sysv4.h:112
msgid "Produce code relocatable at runtime"
msgstr "Generér kode som kan flyttes på kørselstidspunktet"
-#: config/rs6000/sysv4.h:113 config/rs6000/sysv4.h:117
+#: config/rs6000/sysv4.h:110 config/rs6000/sysv4.h:114
msgid "Don't produce code relocatable at runtime"
msgstr "Generér ikke kode som kan flyttes på kørselstidspunktet"
-#: config/rs6000/sysv4.h:119 config/rs6000/sysv4.h:121
+#: config/rs6000/sysv4.h:116 config/rs6000/sysv4.h:118
msgid "Produce little endian code"
msgstr "Generér lilleendet kode"
-#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:125
+#: config/rs6000/sysv4.h:120 config/rs6000/sysv4.h:122
msgid "Produce big endian code"
msgstr "Generér storendet kode"
-#: config/rs6000/sysv4.h:126 config/rs6000/sysv4.h:127
-#: config/rs6000/sysv4.h:128 config/rs6000/sysv4.h:129
-#: config/rs6000/sysv4.h:130 config/rs6000/sysv4.h:131
-#: config/rs6000/sysv4.h:141 config/rs6000/sysv4.h:142
-#: config/rs6000/sysv4.h:153 config/rs6000/sysv4.h:155
-#: config/rs6000/sysv4.h:157
+#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:124
+#: config/rs6000/sysv4.h:125 config/rs6000/sysv4.h:126
+#: config/rs6000/sysv4.h:127 config/rs6000/sysv4.h:128
+#: config/rs6000/sysv4.h:138 config/rs6000/sysv4.h:139
+#: config/rs6000/sysv4.h:151 config/rs6000/sysv4.h:157
msgid "no description yet"
msgstr "ingen beskrivelse endnu"
-#: config/rs6000/sysv4.h:132
+#: config/rs6000/sysv4.h:129
msgid "Use EABI"
msgstr "Benyt EABI"
-#: config/rs6000/sysv4.h:133
+#: config/rs6000/sysv4.h:130
msgid "Don't use EABI"
msgstr "Benyt ikke EABI"
-#: config/rs6000/sysv4.h:136
+#: config/rs6000/sysv4.h:133
msgid "Do not allow bit-fields to cross word boundaries"
msgstr "Tillad ikke bitfelter at krydse ordgrænser"
-#: config/rs6000/sysv4.h:138
+#: config/rs6000/sysv4.h:135
msgid "Use alternate register names"
msgstr "Benyt alternative registernavne"
-#: config/rs6000/sysv4.h:140
+#: config/rs6000/sysv4.h:137
msgid "Don't use alternate register names"
msgstr "Benyt ikke alternative registernavne"
-#: config/rs6000/sysv4.h:144
+#: config/rs6000/sysv4.h:141
msgid "Link with libsim.a, libc.a and sim-crt0.o"
msgstr "Sammenkæd med libsim.a, libc.a og sim-crt0.o"
-#: config/rs6000/sysv4.h:146
+#: config/rs6000/sysv4.h:143
msgid "Link with libads.a, libc.a and crt0.o"
msgstr "Sammenkæd med libads.a, libc.a og crt0.o"
-#: config/rs6000/sysv4.h:148
+#: config/rs6000/sysv4.h:145
msgid "Link with libyk.a, libc.a and crt0.o"
msgstr "Sammenkæd med libyk.a, libc.a og crt0.o"
-#: config/rs6000/sysv4.h:150
+#: config/rs6000/sysv4.h:147
msgid "Link with libmvme.a, libc.a and crt0.o"
msgstr "Sammenkæd med libmvme.a, libc.a og crt0.o"
-#: config/rs6000/sysv4.h:152
+#: config/rs6000/sysv4.h:149
msgid "Set the PPC_EMB bit in the ELF flags header"
msgstr "Sæt PPC_EMB-bitten i ELF-tilvalgshovedet"
-#: config/rs6000/sysv4.h:154
+#: config/rs6000/sysv4.h:150
msgid "Use the WindISS simulator"
msgstr "Benyt WindISS-simulatoren"
+#: config/rs6000/sysv4.h:153
+#, fuzzy
+msgid "Generate 64-bit code"
+msgstr "Generér 64 bit x86-64-kode"
+
+#: config/rs6000/sysv4.h:155
+#, fuzzy
+msgid "Generate 32-bit code"
+msgstr "Generér 64 bit i386-kode"
+
#. Sometimes certain combinations of command options do not make sense
#. on a particular target machine. You can define a macro
#. `OVERRIDE_OPTIONS' to take account of this. This macro, if
@@ -13030,361 +12510,436 @@ msgstr "ugyldig værdi til -msdata=%s"
msgid "-mrelocatable and -msdata=%s are incompatible"
msgstr "-mrelocatable og -msdata=%s er indbyrdes uforenelige"
-#: config/rs6000/sysv4.h:255
+#: config/rs6000/sysv4.h:256
#, c-format
msgid "-f%s and -msdata=%s are incompatible"
msgstr "-f%s og -msdata=%s er indbyrdes uforenelige"
-#: config/rs6000/sysv4.h:264
+#: config/rs6000/sysv4.h:265
#, c-format
msgid "-msdata=%s and -mcall-%s are incompatible"
msgstr "-msdata=%s og -mcall-%s er indbyrdes uforenelige"
-#: config/rs6000/sysv4.h:273
+#: config/rs6000/sysv4.h:274
msgid "-mrelocatable and -mno-minimal-toc are incompatible"
msgstr "-mrelocatable og -mno-minimal-toc er indbyrdes uforenelige"
-#: config/rs6000/sysv4.h:279
+#: config/rs6000/sysv4.h:280
#, c-format
msgid "-mrelocatable and -mcall-%s are incompatible"
msgstr "-mrelocatable og -mcall-%s er indbyrdes uforenelige"
-#: config/rs6000/sysv4.h:286
+#: config/rs6000/sysv4.h:287
#, c-format
msgid "-fPIC and -mcall-%s are incompatible"
msgstr "-fPIC og -mcall-%s er indbyrdes uforenelige"
-#: config/rs6000/sysv4.h:293
+#: config/rs6000/sysv4.h:294
msgid "-mcall-aixdesc must be big endian"
msgstr "-mcall-aixdesc skal være stor-endet"
-#: config/s390/s390.c:3063
+#: config/rs6000/sysv4.h:309
+#, fuzzy, c-format
+msgid "-m%s not supported in this configuration"
+msgstr "%s understøttes ikke af denne konfiguration"
+
+#: config/s390/s390.c:926
+#, fuzzy, c-format
+msgid "Unknown cpu used in -march=%s."
+msgstr "Ukendt processor: -mcpu=%s"
+
+#: config/s390/s390.c:945
+#, fuzzy, c-format
+msgid "Unknown cpu used in -mtune=%s."
+msgstr "Ukendt processor: -mcpu=%s"
+
+#: config/s390/s390.c:950
+#, fuzzy, c-format
+msgid "z/Architecture mode not supported on %s."
+msgstr "fældetilstand understøttes ikke på Unicos/Mk"
+
+#: config/s390/s390.c:952
+#, fuzzy
+msgid "64-bit ABI not supported in ESA/390 mode."
+msgstr "kodemodellen %s er ikke understøttet i PIC-tilstand"
+
+#: config/s390/s390.c:3337
msgid "invalid UNSPEC as operand (1)"
msgstr "ugyldig UNSPEC som operand (1)"
-#: config/s390/s390.c:3123
+#: config/s390/s390.c:3385
msgid "invalid UNSPEC as operand (2)"
msgstr "ugyldig UNSPEC som operand (2)"
-#: config/s390/s390.c:3129
+#: config/s390/s390.c:3391
msgid "UNKNOWN in s390_output_symbolic_const !?"
msgstr "UNKNOWN i s390_output_symbolic_const !?"
-#: config/s390/s390.c:3147
+#: config/s390/s390.c:3407
msgid "Cannot decompose address."
msgstr "Kan ikke adskille adresse."
-#: config/s390/s390.c:3308
+#: config/s390/s390.c:3578
msgid "UNKNOWN in print_operand !?"
msgstr "UNKNOWN i print_operand !?"
-#: config/s390/s390.c:4961
+#: config/s390/s390.c:5301
msgid "Total size of local variables exceeds architecture limit."
msgstr "Total størrelse af lokale variable overstiger arkitekturgrænsen."
# RETMIG: hvad er backchain?
-#: config/s390/s390.h:70
+#: config/s390/s390.h:126
msgid "Set backchain"
msgstr "Sæt backchain"
-#: config/s390/s390.h:71
+#: config/s390/s390.h:127
msgid "Don't set backchain (faster, but debug harder"
msgstr "Sæt ikke backchain (hurtigere, men sværere at fejlanalysere)"
-#: config/s390/s390.h:72
+#: config/s390/s390.h:128
msgid "Use bras for executable < 64k"
msgstr "Benyt bras til kørbar fil < 64k"
-#: config/s390/s390.h:73
+#: config/s390/s390.h:129
msgid "Don't use bras"
msgstr "Benyt ikke bras"
-#: config/s390/s390.h:74
+#: config/s390/s390.h:130
msgid "Additional debug prints"
msgstr "Udskriv ekstra fejlanalyseringsinfo"
-#: config/s390/s390.h:75
+#: config/s390/s390.h:131
msgid "Don't print additional debug prints"
msgstr "Udskriv ikke ekstra fejlanalyseringsinfo"
-#: config/s390/s390.h:76
-msgid "64 bit mode"
-msgstr "64 bit-tilstand"
+#: config/s390/s390.h:132
+#, fuzzy
+msgid "64 bit ABI"
+msgstr "Benyt 64 bit-API"
-#: config/s390/s390.h:77
-msgid "31 bit mode"
-msgstr "31 bit-tilstand"
+#: config/s390/s390.h:133
+#, fuzzy
+msgid "31 bit ABI"
+msgstr "Benyt 64 bit-API"
+
+#: config/s390/s390.h:134
+msgid "z/Architecture"
+msgstr ""
+
+#: config/s390/s390.h:135
+msgid "ESA/390 architecture"
+msgstr ""
-#: config/s390/s390.h:78
+#: config/s390/s390.h:136
msgid "mvcle use"
msgstr "Benyt mvcle"
-#: config/s390/s390.h:79
+#: config/s390/s390.h:137
msgid "mvc&ex"
msgstr "mvc&ex"
-#: config/sh/sh.c:5137
+#: config/s390/s390.h:138
+#, fuzzy
+msgid "enable tpf OS code"
+msgstr "Generér SA-kode"
+
+#: config/s390/s390.h:139
+msgid "disable tpf OS code"
+msgstr ""
+
+#: config/s390/s390.h:140
+#, fuzzy
+msgid "disable fused multiply/add instructions"
+msgstr "Generér sammensatte gang/addér-instruktioner"
+
+#: config/s390/s390.h:141
+#, fuzzy
+msgid "enable fused multiply/add instructions"
+msgstr "Generér sammensatte gang/addér-instruktioner"
+
+#: config/sh/sh.c:5841
msgid "__builtin_saveregs not supported by this subtarget"
msgstr "__builtin_saveregs understøttes ikke af denne undermålarkitektur"
-#: config/sh/sh.c:5687
+#: config/sh/sh.c:6743
msgid "attribute interrupt_handler is not compatible with -m5-compact"
msgstr "egenskaben interrupt_handler er ikke forenelig med -m5-compact"
#. The sp_switch attribute only has meaning for interrupt functions.
-#: config/sh/sh.c:5713 config/sh/sh.c:5752
+#. The trap_exit attribute only has meaning for interrupt functions.
+#: config/sh/sh.c:6765 config/sh/sh.c:6800
#, c-format
msgid "`%s' attribute only applies to interrupt functions"
msgstr "egenskaben '%s' kan kun anvendes sammen med afbrydelsesfunktioner"
#. The argument must be a constant string.
-#: config/sh/sh.c:5720
+#: config/sh/sh.c:6772
#, c-format
msgid "`%s' attribute argument not a string constant"
msgstr "parameteren til egenskaben '%s' er ikke en strengkonstant"
#. The argument must be a constant integer.
-#: config/sh/sh.c:5759
+#: config/sh/sh.c:6807
#, c-format
msgid "`%s' attribute argument not an integer constant"
msgstr "parameteren til egenskaben '%s' er ikke en heltalskonstant"
#. There are no delay slots on SHmedia.
#. Relaxation isn't yet supported for SHmedia
-#: config/sh/sh.h:437
+#. -fprofile-arcs needs a working libgcov . In unified tree configurations with newlib, this requires to configure with --with-newlib --with-headers. But there is no way to check here we have a working libgcov, so just assume that we have.
+#: config/sh/sh.h:478
msgid "Profiling is not supported on this target."
msgstr "Profilering er ikke understøttet på målarkitekturen."
-#: config/sparc/sparc.c:329
+#: config/sparc/sparc.c:360
#, c-format
msgid "%s is not supported by this configuration"
msgstr "%s understøttes ikke af denne konfiguration"
-#: config/sparc/sparc.c:336
+#: config/sparc/sparc.c:367
msgid "-mlong-double-64 not allowed with -m64"
msgstr "-mlong-double-64 er ikke tilladt med -m64"
-#: config/sparc/sparc.c:361
+#: config/sparc/sparc.c:392
msgid "-mcmodel= is not supported on 32 bit systems"
msgstr "-mcmodel= understøttes ikke på 32 bit-systemer"
-#: config/sparc/sparc.c:6341 config/sparc/sparc.c:6347
+#: config/sparc/sparc.c:6793 config/sparc/sparc.c:6799
#, c-format
msgid "invalid %%Y operand"
msgstr "ugyldig %%Y-operand"
-#: config/sparc/sparc.c:6417
+#: config/sparc/sparc.c:6869
#, c-format
msgid "invalid %%A operand"
msgstr "ugyldig %%A-operand"
-#: config/sparc/sparc.c:6427
+#: config/sparc/sparc.c:6879
#, c-format
msgid "invalid %%B operand"
msgstr "ugyldig %%B-operand"
-#: config/sparc/sparc.c:6466
+#: config/sparc/sparc.c:6918
#, c-format
msgid "invalid %%c operand"
msgstr "ugyldig %%c-operand"
-#: config/sparc/sparc.c:6467
+#: config/sparc/sparc.c:6919
#, c-format
msgid "invalid %%C operand"
msgstr "ugyldig %%C-operand"
-#: config/sparc/sparc.c:6488
+#: config/sparc/sparc.c:6940
#, c-format
msgid "invalid %%d operand"
msgstr "ugyldig %%d-operand"
-#: config/sparc/sparc.c:6489
+#: config/sparc/sparc.c:6941
#, c-format
msgid "invalid %%D operand"
msgstr "ugyldig %%D-operand"
-#: config/sparc/sparc.c:6505
+#: config/sparc/sparc.c:6957
#, c-format
msgid "invalid %%f operand"
msgstr "ugyldig %%f-operand"
-#: config/sparc/sparc.c:6519
+#: config/sparc/sparc.c:6971
#, c-format
msgid "invalid %%s operand"
msgstr "ugyldig %%s-operand"
-#: config/sparc/sparc.c:6573
+#: config/sparc/sparc.c:7025
msgid "long long constant not a valid immediate operand"
msgstr "long long-konstant er ikke en gyldig umiddelbar operand"
-#: config/sparc/sparc.c:6576
+#: config/sparc/sparc.c:7028
msgid "floating point constant not a valid immediate operand"
msgstr "kommatalskonstant er ikke en gyldig umiddelbar operand"
-#: config/sparc/freebsd.h:81 config/sparc/linux.h:87 config/sparc/linux64.h:89
-#: config/sparc/netbsd-elf.h:239
+#: config/sparc/freebsd.h:77 config/sparc/linux.h:92
+#: config/sparc/linux64.h:104 config/sparc/netbsd-elf.h:216
msgid "Use 128 bit long doubles"
msgstr "Benyt 128 bit long double"
-#: config/sparc/sp64-elf.h:84 config/sparc/splet.h:29
+#: config/sparc/sp64-elf.h:90
msgid "Generate code for big endian"
msgstr "Generér kode til storendet"
-#: config/sparc/sp64-elf.h:85 config/sparc/splet.h:30
+#: config/sparc/sp64-elf.h:91
msgid "Generate code for little endian"
msgstr "Generér kode til lilleendet"
-#: config/sparc/sp86x-aout.h:51 config/sparc/sp86x-elf.h:65
+#: config/sparc/sp86x-elf.h:68
msgid "Use little-endian byte order for data"
msgstr "Benyt lilleendet byte-orden til data"
-#: config/sparc/sparc.h:532
+#: config/sparc/sparc.h:547
msgid "Assume possible double misalignment"
msgstr "Antag at double-variabler kan være ujusterede"
-#: config/sparc/sparc.h:534
+#: config/sparc/sparc.h:549
msgid "Assume all doubles are aligned"
msgstr "Antag at alle double-variabler er justerede"
-#: config/sparc/sparc.h:536
+#: config/sparc/sparc.h:551
msgid "Pass -assert pure-text to linker"
msgstr "Overbring -assert pure-text til sammenkæderen"
-#: config/sparc/sparc.h:538
+#: config/sparc/sparc.h:553
msgid "Do not pass -assert pure-text to linker"
msgstr "Overbring ikke -assert pure-text til sammenkæderen"
-#: config/sparc/sparc.h:540
+#: config/sparc/sparc.h:555
msgid "Use flat register window model"
msgstr "Benyt flad registervinduesmodel"
-#: config/sparc/sparc.h:542
+#: config/sparc/sparc.h:557
msgid "Do not use flat register window model"
msgstr "Benyt ikke flad registervinduesmodel"
-#: config/sparc/sparc.h:544
+#: config/sparc/sparc.h:559
msgid "Use ABI reserved registers"
msgstr "Benyt ABI-reserverede registre"
-#: config/sparc/sparc.h:546
+#: config/sparc/sparc.h:561
msgid "Do not use ABI reserved registers"
msgstr "Benyt ikke ABI-reserverede registre"
-#: config/sparc/sparc.h:548
+#: config/sparc/sparc.h:563
msgid "Use hardware quad fp instructions"
msgstr "Benyt hardware quad-kommatalsinstruktioner"
-#: config/sparc/sparc.h:550
+#: config/sparc/sparc.h:565
msgid "Do not use hardware quad fp instructions"
msgstr "Benyt ikke hardware quad-kommatalsinstruktioner"
-#: config/sparc/sparc.h:552
+#: config/sparc/sparc.h:567
msgid "Compile for v8plus ABI"
msgstr "Oversæt for v8plus-ABI"
-#: config/sparc/sparc.h:554
+#: config/sparc/sparc.h:569
msgid "Do not compile for v8plus ABI"
msgstr "Oversæt ikke for v8plus-ABI"
-#: config/sparc/sparc.h:556
+#: config/sparc/sparc.h:571
msgid "Utilize Visual Instruction Set"
msgstr "Benyt Visual Instruction Set"
-#: config/sparc/sparc.h:558
+#: config/sparc/sparc.h:573
msgid "Do not utilize Visual Instruction Set"
msgstr "Benyt ikke Visual Instruction Set"
#. ??? These are deprecated, coerced to -mcpu=. Delete in 2.9.
-#: config/sparc/sparc.h:561
+#: config/sparc/sparc.h:576
msgid "Optimize for Cypress processors"
msgstr "Optimér for Cypress-processorer"
-#: config/sparc/sparc.h:563
+#: config/sparc/sparc.h:578
msgid "Optimize for SPARCLite processors"
msgstr "Optimér for SPARCLite-processorer"
-#: config/sparc/sparc.h:565
+#: config/sparc/sparc.h:580
msgid "Optimize for F930 processors"
msgstr "Optimér for F930-processorer"
-#: config/sparc/sparc.h:567
+#: config/sparc/sparc.h:582
msgid "Optimize for F934 processors"
msgstr "Optimér for F934-processorer"
-#: config/sparc/sparc.h:569
+#: config/sparc/sparc.h:584
msgid "Use V8 SPARC ISA"
msgstr "Benyt V8 SPARC ISA"
-#: config/sparc/sparc.h:571
+#: config/sparc/sparc.h:586
msgid "Optimize for SuperSPARC processors"
msgstr "Optimér for SuperSPARC-processorer"
#. End of deprecated options.
-#: config/sparc/sparc.h:574
+#: config/sparc/sparc.h:589
msgid "Pointers are 64-bit"
msgstr "Henvisninger er 64 bit"
-#: config/sparc/sparc.h:576
+#: config/sparc/sparc.h:591
msgid "Pointers are 32-bit"
msgstr "Henvisninger er 32 bit"
-#: config/sparc/sparc.h:578
+#: config/sparc/sparc.h:593
msgid "Use 32-bit ABI"
msgstr "Benyt 32 bit-API"
-#: config/sparc/sparc.h:580
+#: config/sparc/sparc.h:595
msgid "Use 64-bit ABI"
msgstr "Benyt 64 bit-API"
-#: config/sparc/sparc.h:582
+#: config/sparc/sparc.h:597
msgid "Use stack bias"
msgstr "Benyt stakafsæt"
-#: config/sparc/sparc.h:584
+#: config/sparc/sparc.h:599
msgid "Do not use stack bias"
msgstr "Benyt ikke stakafsæt"
-#: config/sparc/sparc.h:586
+#: config/sparc/sparc.h:601
msgid "Use structs on stronger alignment for double-word copies"
msgstr "Benyt strukturer på stærkere justering til dobbelt-ord kopier"
-#: config/sparc/sparc.h:588
+#: config/sparc/sparc.h:603
msgid "Do not use structs on stronger alignment for double-word copies"
msgstr "Benyt ikke strukturer på stærkere justering til dobbelt-ord kopier"
-#: config/sparc/sparc.h:590
+#: config/sparc/sparc.h:605
msgid "Optimize tail call instructions in assembler and linker"
msgstr "Optimér halekaldsinstruktioner i maskinkodeoversætteren og sammenkæderen"
-#: config/sparc/sparc.h:592
+#: config/sparc/sparc.h:607
msgid "Do not optimize tail call instructions in assembler or linker"
msgstr "Optimér ikke halekaldsinstruktioner i maskinkodeoversætteren og sammenkæderen"
-#: config/sparc/sparc.h:637
+#: config/sparc/sparc.h:652
msgid "Use given SPARC code model"
msgstr "Benyt given SPARC-kodemodel"
-#: config/stormy16/stormy16.c:1192
+#: config/stormy16/stormy16.c:526
+#, fuzzy
+msgid "Constant halfword load operand out of range."
+msgstr "konstant parameter uden for det gyldige interval for '%s'"
+
+#: config/stormy16/stormy16.c:536
+#, fuzzy
+msgid "Constant arithmetic operand out of range."
+msgstr "konstant parameter uden for det gyldige interval for '%s'"
+
+#: config/stormy16/stormy16.c:1027
+msgid "Local variable memory requirements exceed capacity."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1193
+#, fuzzy
+msgid "function_profiler support"
+msgstr "function_profiler-understøttelse for MMIX"
+
+#: config/stormy16/stormy16.c:1292
msgid "cannot use va_start in interrupt function"
msgstr "kan ikke bruge va_start i afbrydelsesfunktion"
-#: config/stormy16/stormy16.c:1552
+#: config/stormy16/stormy16.c:1624
msgid "`B' operand is not constant"
msgstr "'B'-operanden er ikke konstant"
-#: config/stormy16/stormy16.c:1558
+#: config/stormy16/stormy16.c:1630
msgid "`B' operand has multiple bits set"
msgstr "'B'-operanden har flere bit sat"
-#: config/stormy16/stormy16.c:1585
+#: config/stormy16/stormy16.c:1656
msgid "`o' operand is not constant"
msgstr "'o'-operanden er ikke konstant"
-#: config/stormy16/stormy16.c:1600
+#: config/stormy16/stormy16.c:1670
msgid "xstormy16_print_operand: unknown code"
msgstr "xstormy16_print_operand: ukendt kode"
-#: config/stormy16/stormy16.c:1650
+#: config/stormy16/stormy16.c:1716
#, c-format
msgid "switch statement of size %lu entries too large"
msgstr "switch-sætning med %lu elementer er for stor"
@@ -13405,105 +12960,106 @@ msgstr "kan ikke sætte afbrydelsesegenskaben: ingen aktuel funktion"
msgid "cannot set interrupt attribute: no such identifier"
msgstr "kan ikke sætte afbrydelsesegenskaben: intet sådant kaldenavn"
-#: config/v850/v850-c.c:148
+#: config/v850/v850-c.c:147
msgid "junk at end of #pragma ghs section"
msgstr "ragelse i slutningen af '#pragma ghs section'"
-#: config/v850/v850-c.c:165
+#: config/v850/v850-c.c:164
#, c-format
msgid "unrecognized section name \"%s\""
msgstr "ukendt sektionsnavn \"%s\""
-#: config/v850/v850-c.c:180
+#: config/v850/v850-c.c:179
msgid "malformed #pragma ghs section"
msgstr "forkert udformet '#pragma ghs section'"
-#: config/v850/v850-c.c:200
+#: config/v850/v850-c.c:198
msgid "junk at end of #pragma ghs interrupt"
msgstr "ragelse i slutningen af '#pragma ghs interrupt'"
-#: config/v850/v850-c.c:212
+#: config/v850/v850-c.c:209
msgid "junk at end of #pragma ghs starttda"
msgstr "ragelse i slutningen af '#pragma ghs starttda'"
-#: config/v850/v850-c.c:224
+#: config/v850/v850-c.c:220
msgid "junk at end of #pragma ghs startsda"
msgstr "ragelse i slutningen af '#pragma ghs startsda'"
-#: config/v850/v850-c.c:236
+#: config/v850/v850-c.c:231
msgid "junk at end of #pragma ghs startzda"
msgstr "ragelse i slutningen af '#pragma ghs startzda'"
-#: config/v850/v850-c.c:248
+#: config/v850/v850-c.c:242
msgid "junk at end of #pragma ghs endtda"
msgstr "ragelse i slutningen af '#pragma ghs endtda'"
-#: config/v850/v850-c.c:260
+#: config/v850/v850-c.c:253
msgid "junk at end of #pragma ghs endsda"
msgstr "ragelse i slutningen af '#pragma ghs endsda'"
-#: config/v850/v850-c.c:272
+#: config/v850/v850-c.c:264
msgid "junk at end of #pragma ghs endzda"
msgstr "ragelse i slutningen af '#pragma ghs endzda'"
-#: config/v850/v850.c:129
+#: config/v850/v850.c:142
#, c-format
msgid "%s=%s is not numeric"
msgstr "%s=%s er ikke et tal"
-#: config/v850/v850.c:136
+#: config/v850/v850.c:149
#, c-format
msgid "%s=%s is too large"
msgstr "%s=%s er for stor"
-#: config/v850/v850.c:302
+#: config/v850/v850.c:301
msgid "const_double_split got a bad insn:"
msgstr "const_double_split modtog en ugyldig instruktion:"
-#: config/v850/v850.c:837
+#: config/v850/v850.c:866
msgid "output_move_single:"
msgstr "output_move_single:"
-#: config/v850/v850.c:2217
-msgid "a data area attribute cannot be specified for local variables"
+#: config/v850/v850.c:2209
+#, fuzzy
+msgid "%Jdata area attributes cannot be specified for local variables"
msgstr "en dataområdeegenskab kan ikke angives for lokale variable"
-#: config/v850/v850.c:2228
-#, c-format
-msgid "data area of '%s' conflicts with previous declaration"
+#: config/v850/v850.c:2220
+#, fuzzy
+msgid "%Jdata area of '%D' conflicts with previous declaration"
msgstr "dataområdet '%s' er i modstrid med tidligere erklæring"
-#: config/v850/v850.c:2447
+#: config/v850/v850.c:2419
#, c-format
msgid "bogus JR construction: %d\n"
msgstr "falsk JR-konstruktion: %d\n"
-#: config/v850/v850.c:2468 config/v850/v850.c:2670
+#: config/v850/v850.c:2440 config/v850/v850.c:2643
#, c-format
msgid "bad amount of stack space removal: %d"
msgstr "ugyldig størrelse af stakpladsfjernelse: %d"
-#: config/v850/v850.c:2646
+#: config/v850/v850.c:2619
#, c-format
msgid "bogus JARL construction: %d\n"
msgstr "falsk JARL-konstruktion: %d\n"
-#: config/v850/v850.c:3026
+#: config/v850/v850.c:2989
#, c-format
msgid "Bogus DISPOSE construction: %d\n"
msgstr "Falsk DISPOSE-konstruktion: %d\n"
-#: config/v850/v850.c:3048
+#: config/v850/v850.c:3011
#, c-format
msgid "Too much stack space to dispose of: %d"
msgstr "For meget stakplads at tage sig af: %d"
-#: config/v850/v850.c:3224
+#: config/v850/v850.c:3184
#, c-format
msgid "Bogus PREPEARE construction: %d\n"
msgstr "Falsk PREPARE-konstruktion: %d\n"
-#: config/v850/v850.c:3246
+#: config/v850/v850.c:3206
#, c-format
msgid "Too much stack space to prepare: %d"
msgstr "For meget stakplads at forberede: %d"
@@ -13513,801 +13069,760 @@ msgstr "For meget stakplads at forberede: %d"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/v850/v850.h:158
+#: config/v850/v850.h:174
msgid "Support Green Hills ABI"
msgstr "Understøt Green Hills-ABI"
-#: config/v850/v850.h:161
+#: config/v850/v850.h:177
msgid "Prohibit PC relative function calls"
msgstr "Forbyd PC-relative funktionskald"
-#: config/v850/v850.h:164
+#: config/v850/v850.h:180
msgid "Reuse r30 on a per function basis"
msgstr "Genbrug r30 på et pr. funktionsgrundlag"
-#: config/v850/v850.h:167
+#: config/v850/v850.h:183
msgid "Use stubs for function prologues"
msgstr "Benyt stubbe til funktionsindledninger"
-#: config/v850/v850.h:170
+#: config/v850/v850.h:186
msgid "Same as: -mep -mprolog-function"
msgstr "Samme som: -mep -mprolog-function"
-#: config/v850/v850.h:171
+#: config/v850/v850.h:187
msgid "Enable backend debugging"
msgstr "Aktivér bagendefejlanalyseringsinfo"
-#: config/v850/v850.h:173
+#: config/v850/v850.h:189
msgid "Compile for the v850 processor"
msgstr "Oversæt for v850-processoren"
-#: config/v850/v850.h:175
+#: config/v850/v850.h:191
+#, fuzzy
+msgid "Compile for v850e1 processor"
+msgstr "Oversæt for v850e-processoren"
+
+#. Make sure that the other bits are cleared.
+#: config/v850/v850.h:193
msgid "Compile for v850e processor"
msgstr "Oversæt for v850e-processoren"
#. Make sure that the other bits are cleared.
-#: config/v850/v850.h:177
+#: config/v850/v850.h:195
msgid "Enable the use of the short load instructions"
msgstr "Aktivér brug af short load-instruktioner"
-#: config/v850/v850.h:180
+#: config/v850/v850.h:198
msgid "Do not use the callt instruction"
msgstr "Benyt ikke callt-instruktionen"
-#: config/v850/v850.h:187
+#: config/v850/v850.h:205
msgid "Do not use registers r2 and r5"
msgstr "Benyt ikke registrene r2 og r5"
-#: config/v850/v850.h:189
+#: config/v850/v850.h:207
msgid "Enforce strict alignment"
msgstr "Gennemtving streng justering"
-#: config/v850/v850.h:192
+#: config/v850/v850.h:210
msgid "Use 4 byte entries in switch tables"
msgstr "Benyt 4 byte-elementer i switch-tabeller"
-#: config/v850/v850.h:218
+#: config/v850/v850.h:236
msgid "Set the max size of data eligible for the TDA area"
msgstr "Angiv den maks. størrelse af data til TDA-området"
-#: config/v850/v850.h:221
+#: config/v850/v850.h:239
msgid "Set the max size of data eligible for the SDA area"
msgstr "Angiv den maks. størrelse af data til SDA-området"
-#: config/v850/v850.h:224
+#: config/v850/v850.h:242
msgid "Set the max size of data eligible for the ZDA area"
msgstr "Angiv den maks. størrelse af data til ZDA-området"
-#: config/xtensa/xtensa.c:1062 config/xtensa/xtensa.c:1096
-#: config/xtensa/xtensa.c:1105
-msgid "bad test"
-msgstr "ugyldig test"
-
-#: config/xtensa/xtensa.c:1824
+#: config/xtensa/xtensa.c:1814
msgid "boolean registers required for the floating-point option"
msgstr "booleske registre er påkrævet til kommatalsindstillingen"
-#: config/xtensa/xtensa.c:1991
+#: config/xtensa/xtensa.c:1868
+#, fuzzy, c-format
+msgid "-f%s is not supported with CONST16 instructions"
+msgstr "%s understøttes ikke af denne konfiguration"
+
+#: config/xtensa/xtensa.c:1873
+msgid "PIC is required but not supported with CONST16 instructions"
+msgstr ""
+
+#: config/xtensa/xtensa.c:1943
+#, c-format
+msgid "invalid %%D value"
+msgstr "ugyldig %%D-værdi"
+
+#: config/xtensa/xtensa.c:1980
msgid "invalid mask"
msgstr "ugyldig maske"
-#: config/xtensa/xtensa.c:2038
+#: config/xtensa/xtensa.c:2006
+#, fuzzy, c-format
+msgid "invalid %%x value"
+msgstr "ugyldig %%x/X-værdi"
+
+#: config/xtensa/xtensa.c:2013
+#, fuzzy, c-format
+msgid "invalid %%d value"
+msgstr "ugyldig %%V-værdi"
+
+#: config/xtensa/xtensa.c:2034 config/xtensa/xtensa.c:2044
+#, fuzzy, c-format
+msgid "invalid %%t/%%b value"
+msgstr "ugyldig %%b-værdi"
+
+#: config/xtensa/xtensa.c:2086
msgid "invalid address"
msgstr "ugyldig adresse"
-#: config/xtensa/xtensa.c:2063
+#: config/xtensa/xtensa.c:2111
msgid "no register in address"
msgstr "ingen registre i adresse"
-#: config/xtensa/xtensa.c:2071
+#: config/xtensa/xtensa.c:2119
msgid "address offset not a constant"
msgstr "adresseafsæt er ikke en konstant"
-#: config/xtensa/xtensa.c:2794
+#: config/xtensa/xtensa.c:2802
msgid "only uninitialized variables can be placed in a .bss section"
msgstr "kun variabler uden startværdi kan placeres i .bss-sektionen"
-#: config/xtensa/xtensa.h:114
-msgid "Use the Xtensa code density option"
-msgstr "Benyt Xtensa-kodetæthedsindstillingen"
-
-#: config/xtensa/xtensa.h:116
-msgid "Do not use the Xtensa code density option"
-msgstr "Benyt ikke Xtensa-kodetæthedsindstillingen"
-
-#: config/xtensa/xtensa.h:118
-msgid "Use the Xtensa MAC16 option"
-msgstr "Benyt Xtensa-MAC16-indstillingen"
-
-#: config/xtensa/xtensa.h:120
-msgid "Do not use the Xtensa MAC16 option"
-msgstr "Benyt ikke Xtensa-MAC16-indstillingen"
-
-#: config/xtensa/xtensa.h:122
-msgid "Use the Xtensa MUL16 option"
-msgstr "Benyt Xtensa-MUL16-indstillingen"
-
-#: config/xtensa/xtensa.h:124
-msgid "Do not use the Xtensa MUL16 option"
-msgstr "Benyt ikke Xtensa-MUL16-indstillingen"
-
-#: config/xtensa/xtensa.h:126
-msgid "Use the Xtensa MUL32 option"
-msgstr "Benyt Xtensa-MUL32-indstillingen"
-
-#: config/xtensa/xtensa.h:128
-msgid "Do not use the Xtensa MUL32 option"
-msgstr "Benyt ikke Xtensa-MUL32-indstillingen"
-
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:134
-msgid "Use the Xtensa NSA option"
-msgstr "Benyt Xtensa-NSA-indstillingen"
-
-#: config/xtensa/xtensa.h:136
-msgid "Do not use the Xtensa NSA option"
-msgstr "Benyt ikke Xtensa-NSA-indstillingen"
-
-#: config/xtensa/xtensa.h:138
-msgid "Use the Xtensa MIN/MAX option"
-msgstr "Benyt Xtensa-MIN/MAX-indstillingen"
-
-#: config/xtensa/xtensa.h:140
-msgid "Do not use the Xtensa MIN/MAX option"
-msgstr "Benyt ikke Xtensa-MIN/MAX-indstillingen"
-
-#: config/xtensa/xtensa.h:142
-msgid "Use the Xtensa SEXT option"
-msgstr "Benyt Xtensa-SEXT-indstillingen"
-
-#: config/xtensa/xtensa.h:144
-msgid "Do not use the Xtensa SEXT option"
-msgstr "Benyt ikke Xtensa-SEXT-indstillingen"
-
-#: config/xtensa/xtensa.h:146
-msgid "Use the Xtensa boolean register option"
-msgstr "Benyt Xtensa-indstillingen til booleske registre"
-
-#: config/xtensa/xtensa.h:148
-msgid "Do not use the Xtensa boolean register option"
-msgstr "Benyt ikke Xtensa-indstillingen til booleske registre"
-
-#: config/xtensa/xtensa.h:150
-msgid "Use the Xtensa floating-point unit"
-msgstr "Benyt kommatalsenheden til Xtensa"
+#: config/xtensa/xtensa.h:79
+#, fuzzy
+msgid "Use CONST16 instruction to load constants"
+msgstr "Brug push-instruktioner til at gemme udgående parametre"
-#: config/xtensa/xtensa.h:152
-msgid "Do not use the Xtensa floating-point unit"
-msgstr "Benyt ikke kommatalsenheden til Xtensa"
+#: config/xtensa/xtensa.h:81
+#, fuzzy
+msgid "Use PC-relative L32R instruction to load constants"
+msgstr "Benyt direkte CALLn-instruktioner for hurtige kald"
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:170
+#: config/xtensa/xtensa.h:83
msgid "Disable fused multiply/add and multiply/subtract FP instructions"
msgstr "Deaktivér sammensatte gang/addér- og gang/subtrahér-kommatalsinstruktioner"
-#: config/xtensa/xtensa.h:172
+#: config/xtensa/xtensa.h:85
msgid "Enable fused multiply/add and multiply/subtract FP instructions"
msgstr "Aktivér sammensatte gang/addér- og gang/subtrahér-kommatalsinstruktioner"
-#: config/xtensa/xtensa.h:174
-msgid "Serialize volatile memory references with MEMW instructions"
-msgstr "Serialisér volatile hukommelsesreference med MEMW-instruktioner"
-
-#: config/xtensa/xtensa.h:176
-msgid "Do not serialize volatile memory references with MEMW instructions"
-msgstr "Serialisér ikke volatile hukommelsesreference med MEMW-instruktioner"
-
-#: config/xtensa/xtensa.h:178
+#: config/xtensa/xtensa.h:87
msgid "Intersperse literal pools with code in the text section"
msgstr "Fordel konstanter med kode i tekstsektionen"
-#: config/xtensa/xtensa.h:180
+#: config/xtensa/xtensa.h:89
msgid "Put literal pools in a separate literal section"
msgstr "Anbring konstanter i en adskilt konstantsektion"
-#: config/xtensa/xtensa.h:182
+#: config/xtensa/xtensa.h:91
msgid "Automatically align branch targets to reduce branch penalties"
msgstr "Justér automatisk forgreningsmål for at reducere forgreningsstraffe"
-#: config/xtensa/xtensa.h:184
+#: config/xtensa/xtensa.h:93
msgid "Do not automatically align branch targets"
msgstr "Justér ikke automatisk forgreningsmål"
-#: config/xtensa/xtensa.h:186
+#: config/xtensa/xtensa.h:95
msgid "Use indirect CALLXn instructions for large programs"
msgstr "Benyt indirekte CALLXn-instruktioner for store programmer"
-#: config/xtensa/xtensa.h:188
+#: config/xtensa/xtensa.h:97
msgid "Use direct CALLn instructions for fast calls"
msgstr "Benyt direkte CALLn-instruktioner for hurtige kald"
-#: ada/misc.c:233
+#: ada/misc.c:240
+#, c-format
+msgid "missing argument to \"-%s\""
+msgstr "der mangler en parameter til tilvalget '-%s'"
+
+#: ada/misc.c:281
msgid "`-gnat' misspelled as `-gant'"
msgstr "'-gnat' stavet forkert som '-gant'"
-#: cp/call.c:261 cp/init.c:1594
-msgid "qualified type `%T' does not match destructor name `~%T'"
-msgstr "den modificerede type '%T' passer ikke til destruktionsfunktionsnavnet '~%T'"
-
-#: cp/call.c:270
-msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
-msgstr "typen af '%E' passer ikke til destruktionsfunktionstypen '%T' (typen var '%T')"
-
-#: cp/call.c:279
-msgid "`%D' is a namespace"
-msgstr "'%D' er et navnerum"
-
-#: cp/call.c:287
-msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
-msgstr "stamobjektet '%E' fra metodekald forsynet med virkefelt er af en ikke-sammensat type '%T'"
-
-#: cp/call.c:369
+#: cp/call.c:217
msgid "unable to call pointer to member function here"
msgstr "kan ikke kalde henvisning til medlemsfunktion her"
-#: cp/call.c:518
-msgid "destructors take no parameters"
-msgstr "destruktionsfunktioner kan ikke have parametre"
-
-#: cp/call.c:522
-msgid "destructor name `~%T' does not match type `%T' of expression"
-msgstr "destruktionsfunktionsnavn '~T' passer ikke med typen '%T' for udtrykket"
-
-#: cp/call.c:543 cp/call.c:5000
-msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
-msgstr "forespørgsel efter medlemmet '%D' i '%E' som er af en ikke-sammensat type '%T'"
-
-#: cp/call.c:567
-msgid "request for member `%D' is ambiguous"
-msgstr "forespørgsel efter medlemmet '%D' er tvetydigt"
-
-#: cp/call.c:2537
+#: cp/call.c:2228
msgid "%s %D(%T, %T, %T) <built-in>"
msgstr "%s %D(%T, %T, %T) <indbygget>"
-#: cp/call.c:2542
+#: cp/call.c:2233
msgid "%s %D(%T, %T) <built-in>"
msgstr "%s %D(%T, %T) <indbygget>"
-#: cp/call.c:2546
+#: cp/call.c:2237
msgid "%s %D(%T) <built-in>"
msgstr "%s %D(%T) <indbygget>"
-#: cp/call.c:2550
+#: cp/call.c:2241
msgid "%s %T <conversion>"
msgstr "%s %T <konvertering>"
-#: cp/call.c:2552
-msgid "%s %+#D%s"
-msgstr "%s %+#D%s"
-
-#: cp/call.c:2726
-msgid "conversion from `%T' to `%T' is ambiguous"
-msgstr "konvertering fra '%T' til '%T' er tvetydigt"
+#: cp/call.c:2243
+msgid "%J%s %+#D <near match>"
+msgstr ""
-#: cp/call.c:2803
+#: cp/call.c:2245
#, fuzzy
-msgid "`%T' is not a class type"
-msgstr "'%T' er ikke af en klasse- eller union-type"
+msgid "%J%s %+#D"
+msgstr "%s %+#D"
-#: cp/call.c:2811
-msgid "incomplete type '%T' cannot be used to name a scope"
-msgstr "ufuldstændig type '%T' kan ikke bruges til at navngive et virkefelt"
+#: cp/call.c:2280
+#, fuzzy
+msgid "candidates are:"
+msgstr "candidate%s: %+#D"
-#: cp/call.c:2831 cp/typeck.c:2188 cp/typeck.c:2217
-msgid "'%D' has no member named '%E'"
-msgstr "'%D' har intet medlem ved navn '%E'"
+#: cp/call.c:2468
+msgid "conversion from `%T' to `%T' is ambiguous"
+msgstr "konvertering fra '%T' til '%T' er tvetydigt"
-#: cp/call.c:2933
+#: cp/call.c:2619 cp/call.c:2663
msgid "no matching function for call to `%D(%A)'"
msgstr "ingen passende funktion for kald til '%D(%A)'"
-#: cp/call.c:2944 cp/call.c:5087
+#: cp/call.c:2622 cp/call.c:2666
msgid "call of overloaded `%D(%A)' is ambiguous"
msgstr "kald af flertydig '%D(%A)' er tvetydigt"
#. It's no good looking for an overloaded operator() on a
#. pointer-to-member-function.
-#: cp/call.c:2971
+#: cp/call.c:2732
#, c-format
msgid "pointer-to-member function %E cannot be called without an object; consider using .* or ->*"
msgstr "henvisning til medlemsfunktionen %E kan ikke kaldes uden et objekt; overvej at benytte .* eller ->*"
-#: cp/call.c:3036
+#: cp/call.c:2798
msgid "no match for call to `(%T) (%A)'"
msgstr "ingen passende fundet for kald til '(%T) (%A)'"
-#: cp/call.c:3046
+#: cp/call.c:2806
msgid "call of `(%T) (%A)' is ambiguous"
msgstr "kald af '(%T) (%A)' er tvetydigt"
-#: cp/call.c:3081
+#: cp/call.c:2839
#, c-format
msgid "%s for ternary 'operator?:' in '%E ? %E : %E'"
msgstr ""
-#: cp/call.c:3087
+#: cp/call.c:2845
#, fuzzy, c-format
msgid "%s for 'operator%s' in '%E%s'"
msgstr "%s for operatoren '%T %s' "
-#: cp/call.c:3091
+#: cp/call.c:2849
#, c-format
msgid "%s for 'operator[]' in '%E[%E]'"
msgstr ""
-#: cp/call.c:3096
+#: cp/call.c:2854
+#, fuzzy, c-format
+msgid "%s for '%s' in '%s %E'"
+msgstr "manglende felt '%s' i '%s'"
+
+#: cp/call.c:2859
#, c-format
msgid "%s for 'operator%s' in '%E %s %E'"
msgstr ""
-#: cp/call.c:3099
+#: cp/call.c:2862
#, fuzzy, c-format
msgid "%s for 'operator%s' in '%s%E'"
msgstr "%s for operatoren '%T %s' "
-#: cp/call.c:3191
+#: cp/call.c:2957
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
msgstr "ISO C++ forbyder udeladelse af den mellemste del af et ?:-udtryk"
-#: cp/call.c:3250
+#: cp/call.c:3018
#, c-format
msgid "`%E' has type `void' and is not a throw-expression"
msgstr "'%E' har typen 'void' og er ikke et throw-udtryk"
-#: cp/call.c:3283 cp/call.c:3475
+#: cp/call.c:3051 cp/call.c:3242
msgid "operands to ?: have different types"
msgstr "operander til ?: har forskellige typer"
-#: cp/call.c:3428
+#: cp/call.c:3196
msgid "enumeral mismatch in conditional expression: `%T' vs `%T'"
msgstr "enum-typer passer ikke sammen i betinget udtryk: '%T' og '%T'"
-#: cp/call.c:3435
+#: cp/call.c:3203
msgid "enumeral and non-enumeral type in conditional expression"
msgstr "enum- og ikke enum-type i betinget udtryk"
-#: cp/call.c:3516
-msgid "`%D' must be declared before use"
-msgstr "'%D' skal erklæres før brug"
-
-#: cp/call.c:3706
+#: cp/call.c:3487
msgid "no `%D(int)' declared for postfix `%s', trying prefix operator instead"
msgstr "ingen '%D(int)' erklæret for suffiks '%s', prøver præfiksoperatoren i stedet"
-#: cp/call.c:3753
+#: cp/call.c:3532
msgid "using synthesized `%#D' for copy assignment"
msgstr "bruger syntetiseret '%#D' for kopitildeling"
-#: cp/call.c:3755
+#: cp/call.c:3534
msgid " where cfront would use `%#D'"
msgstr " hvor cfront ville bruge '%#D'"
-#: cp/call.c:3782
+#: cp/call.c:3557
msgid "comparison between `%#T' and `%#T'"
msgstr "sammenligning mellem '%#T' og '%#T'"
-#: cp/call.c:4021
-msgid "no suitable `operator delete' for `%T'"
+#: cp/call.c:3803
+#, fuzzy
+msgid "no suitable `operator %s' for `%T'"
msgstr "ingen passende 'operator delete' for '%T'"
-#: cp/call.c:4040
+#: cp/call.c:3820
msgid "`%+#D' is private"
msgstr "'%+#D' er privat"
-#: cp/call.c:4042
+#: cp/call.c:3822
msgid "`%+#D' is protected"
msgstr "'%+#D' er beskyttet"
-#: cp/call.c:4044
+#: cp/call.c:3824
msgid "`%+#D' is inaccessible"
msgstr "'%+#D' er ikke tilgængelig"
-#: cp/call.c:4045
+#: cp/call.c:3825
msgid "within this context"
msgstr "i denne kontekst"
-#: cp/call.c:4088
+#: cp/call.c:3895
msgid "invalid conversion from `%T' to `%T'"
msgstr "ugyldig konvertering fra '%T' til '%T'"
-#: cp/call.c:4090 cp/call.c:4229 cp/call.c:4231
+#: cp/call.c:3897
msgid " initializing argument %P of `%D'"
msgstr " ved klargøring af parameteren %P til '%D'"
-#: cp/call.c:4152 cp/call.c:4156
-msgid " initializing argument %P of `%D' from result of `%D'"
-msgstr " ved klargøring af parameteren %P til '%D' fra resultatet af '%D'"
+#: cp/call.c:4050
+#, fuzzy
+msgid "cannot bind bitfield `%E' to `%T'"
+msgstr "kan ikke klargøre '%T' fra %T'"
+
+#: cp/call.c:4053
+#, fuzzy
+msgid "cannot bind packed field `%E' to `%T'"
+msgstr "kan ikke erklære feltet '%D' til at være af typen '%T'"
-#: cp/call.c:4162 cp/call.c:4165
-msgid " initializing temporary from result of `%D'"
-msgstr " ved klargøring af midlertidig variabel fra resultatet af '%D'"
+#: cp/call.c:4056
+#, fuzzy
+msgid "cannot bind rvalue `%E' to `%T'"
+msgstr "kan ikke klargøre '%T' fra %T'"
-#. Undefined behavior [expr.call] 5.2.2/7. We used to just warn
-#. here and do a bitwise copy, but now cp_expr_size will abort if we
-#. try to do that.
-#: cp/call.c:4316
+#: cp/call.c:4144
msgid "cannot pass objects of non-POD type `%#T' through `...'; call will abort at runtime"
msgstr "kan ikke videregive objekter af en ikke-POD type '%#T' gennem '...'; kald vil afbryde på kørselstidspunktet"
#. Undefined behavior [expr.call] 5.2.2/7.
-#: cp/call.c:4343
-msgid "cannot receive objects of non-POD type `%#T' through `...'"
-msgstr "kan ikke modtage objekter af en ikke-POD type '%#T' gennem '...'"
+#: cp/call.c:4168
+#, fuzzy
+msgid "cannot receive objects of non-POD type `%#T' through `...'; call will abort at runtime"
+msgstr "kan ikke videregive objekter af en ikke-POD type '%#T' gennem '...'; kald vil afbryde på kørselstidspunktet"
-#: cp/call.c:4523
+#: cp/call.c:4208
+#, fuzzy
+msgid "the default argument for parameter %d of `%D' has not yet been parsed"
+msgstr "standardparameter for parameter af typen '%T' har typen '%T'"
+
+#: cp/call.c:4403
msgid "passing `%T' as `this' argument of `%#D' discards qualifiers"
msgstr "videregivelse af '%T' som 'this'-parameteren til '%#D' forkaster modifikationer"
-#: cp/call.c:4542
+#: cp/call.c:4422
#, fuzzy
msgid "`%T' is not an accessible base of `%T'"
msgstr "'%T' er en utilgængelig stamklasse til '%T'"
-#: cp/call.c:4786
+#: cp/call.c:4696
msgid "could not find class$ field in java interface type `%T'"
msgstr "kunne ikke finde et class$-felt i Java-grænsefladetypen '%T'"
-#: cp/call.c:4974
+#: cp/call.c:4951
msgid "call to non-function `%D'"
msgstr "kald af ikke-funktion '%D'"
-#: cp/call.c:5076
-msgid "no matching function for call to `%T::%D(%A)%#V'"
+#: cp/call.c:4977
+msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
+msgstr "forespørgsel efter medlemmet '%D' i '%E' som er af en ikke-sammensat type '%T'"
+
+#: cp/call.c:5055
+#, fuzzy
+msgid "no matching function for call to `%T::%s(%A)%#V'"
msgstr "ingen passende funktion for kald til '%T::%D(%A)%#V'"
-#: cp/call.c:5106
+#: cp/call.c:5072
+#, fuzzy, c-format
+msgid "call of overloaded `%s(%A)' is ambiguous"
+msgstr "kald af flertydig '%D(%A)' er tvetydigt"
+
+#: cp/call.c:5093
msgid "cannot call member function `%D' without object"
msgstr "kan ikke kalde medlemsfunktionen '%D' uden et objekt"
-#: cp/call.c:5704
+#: cp/call.c:5678
msgid "passing `%T' chooses `%T' over `%T'"
msgstr "videregivelse af '%T' vælger '%T' frem for '%T'"
-#: cp/call.c:5706 cp/decl2.c:4154
+#: cp/call.c:5680 cp/name-lookup.c:4057
msgid " in call to `%D'"
msgstr " i kald af '%D'"
-#: cp/call.c:5755
+#: cp/call.c:5737
msgid "choosing `%D' over `%D'"
msgstr "vælger '%D' frem for '%D'"
-#: cp/call.c:5756
+#: cp/call.c:5738
msgid " for conversion from `%T' to `%T'"
msgstr " for konvertering fra '%T' til '%T'"
-#: cp/call.c:5758
+#: cp/call.c:5740
msgid " because conversion sequence for the argument is better"
msgstr " fordi konverteringssekvensen for parameteren er bedre"
-#: cp/call.c:5879
-msgid "ISO C++ says that `%D' and `%D' are ambiguous even though the worst conversion for the former is better than the worst conversion for the latter"
+#: cp/call.c:5860
+#, fuzzy
+msgid "ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:"
msgstr "ifølge ISO C++ er '%D' og '%D' tvetydigt selvom den værste konvertering for førstnævnte er bedre end den værste konvertering for den sidstnævnte"
-#: cp/call.c:5996
+#: cp/call.c:5864
+#, fuzzy
+msgid "candidate 1:"
+msgstr "candidate%s: %+#D"
+
+#: cp/call.c:5865
+#, fuzzy
+msgid "candidate 2:"
+msgstr "candidate%s: %+#D"
+
+#: cp/call.c:5974
msgid "could not convert `%E' to `%T'"
msgstr "kunne ikke konvertere '%E' til '%T'"
-#: cp/call.c:6105
+#: cp/call.c:6079
#, fuzzy
msgid "invalid initialization of non-const reference of type '%T' from a temporary of type '%T'"
msgstr "ugyldig const_cast af en højreværdi fra typen '%T' til typen '%T'"
-#: cp/call.c:6109
+#: cp/call.c:6083
#, fuzzy
msgid "invalid initialization of reference of type '%T' from expression of type '%T'"
msgstr "ugyldig omdannelse til typen '%T' fra typen '%T'"
-#: cp/class.c:287
+#: cp/class.c:281
msgid "cannot convert from base `%T' to derived type `%T' via virtual base `%T'"
msgstr "kan ikke konvertere fra stamklassen '%T' til den nedarvede type '%T' via den virtuelle stamklasse '%T'"
-#: cp/class.c:992
+#: cp/class.c:764
+#, fuzzy
+msgid "Java class '%T' cannot have an implicit non-trivial destructor"
+msgstr "stamklassen '%#T' har en ikke-virtuel destruktionsfunktion"
+
+#: cp/class.c:765
+#, fuzzy
+msgid "Java class '%T' cannot have a destructor"
+msgstr "stamklassen '%#T' har en ikke-virtuel destruktionsfunktion"
+
+#: cp/class.c:933
msgid "`%#D' and `%#D' cannot be overloaded"
msgstr "'%#D' og '%#D' kan ikke flertydiggøres"
-#: cp/class.c:1076
+#: cp/class.c:1016
msgid "duplicate enum value `%D'"
msgstr "enum-værdien '%D' optræder mere end én gang"
-#: cp/class.c:1079
+#: cp/class.c:1019
msgid "duplicate field `%D' (as enum and non-enum)"
msgstr "feltet '%D' optræder mere end én gang (som enum og som ikke-enum)"
-#: cp/class.c:1086
+#: cp/class.c:1026
msgid "duplicate nested type `%D'"
msgstr "den indlejrede type '%D' optræder mere end én gang"
-#: cp/class.c:1097
+#: cp/class.c:1037
msgid "duplicate field `%D' (as type and non-type)"
msgstr "feltet '%D' optræder mere end én gang (som type og som ikke-type)"
-#: cp/class.c:1101
+#: cp/class.c:1041
msgid "duplicate member `%D'"
msgstr "medlemmet '%D' optræder mere end én gang"
-#: cp/class.c:1144
+#: cp/class.c:1079
msgid "conflicting access specifications for method `%D', ignored"
msgstr "modstridende tilgangsanvisninger til metoden '%D', ignoreret"
-#: cp/class.c:1146
+#: cp/class.c:1081
#, c-format
msgid "conflicting access specifications for field `%s', ignored"
msgstr "modstridende tilgangsanvisninger til feltet '%s', ignoreret"
-#: cp/class.c:1194
+#: cp/class.c:1131
msgid "`%D' names constructor"
msgstr "'%D' navngiver en konstruktionsfunktion"
-#: cp/class.c:1199
+#: cp/class.c:1136
msgid "`%D' invalid in `%T'"
msgstr "'%D' ugyldig i '%T'"
-#: cp/class.c:1207
+#: cp/class.c:1144
msgid "no members matching `%D' in `%#T'"
msgstr "ingen medlemmer passer til '%D' i '%#T'"
-#: cp/class.c:1239 cp/class.c:1247
+#: cp/class.c:1176 cp/class.c:1184
msgid "`%D' invalid in `%#T'"
msgstr "'%D' ugyldig i '%#T'"
-#: cp/class.c:1240
+#: cp/class.c:1177
msgid " because of local method `%#D' with same name"
msgstr " på grund af den lokale metode '%#D' med det samme navn"
-#: cp/class.c:1248
+#: cp/class.c:1185
msgid " because of local member `%#D' with same name"
msgstr " på grund af det lokale medlem '%#D' med det samme navn"
-#: cp/class.c:1320
+#: cp/class.c:1255
msgid "base class `%#T' has a non-virtual destructor"
msgstr "stamklassen '%#T' har en ikke-virtuel destruktionsfunktion"
-#: cp/class.c:1340
+#: cp/class.c:1275
msgid "base `%T' with only non-default constructor in class without a constructor"
msgstr "stamklasse '%T' med kun ikke-standardkonstruktionsfunktion i klasse uden en konstruktionsfunktion"
-#: cp/class.c:1912
+#: cp/class.c:1659
msgid "all member functions in class `%T' are private"
msgstr "alle medlemsfunktioner i klassen '%T' er private"
-#: cp/class.c:1926
+#: cp/class.c:1670
msgid "`%#T' only defines a private destructor and has no friends"
msgstr "'%#T' definerer kun en privat destruktionsfunktion og har ingen venner"
-#: cp/class.c:1969
+#: cp/class.c:1712
msgid "`%#T' only defines private constructors and has no friends"
msgstr "'%#T' definerer kun private konstruktionsfunktioner og har ingen venner"
-#: cp/class.c:2090 cp/class.c:5276
-msgid "redefinition of `%#T'"
-msgstr "omdefinering af '%#T'"
-
-#: cp/class.c:2091
-msgid "previous definition of `%#T'"
-msgstr "tidligere definition af '%#T'"
-
# %D er en funktion
-#: cp/class.c:2365
+#: cp/class.c:2097
msgid "no unique final overrider for `%D' in `%T'"
msgstr "ingen unik endelig overskrivning af '%D' i '%T'"
#. Here we know it is a hider, and no overrider exists.
-#: cp/class.c:2712
+#: cp/class.c:2542
msgid "`%D' was hidden"
msgstr "'%D' var skjult"
-#: cp/class.c:2713
+#: cp/class.c:2543
msgid " by `%D'"
msgstr " af '%D'"
-#: cp/class.c:2755
+#: cp/class.c:2584
msgid "ISO C++ forbids member `%D' with same name as enclosing class"
msgstr "ISO C++ forbyder medlemmet '%D' med samme navn som den omgivende klasse"
-#: cp/class.c:2760 cp/decl2.c:1331
+#: cp/class.c:2589 cp/decl2.c:1167
msgid "`%#D' invalid; an anonymous union can only have non-static data members"
msgstr "'%#D' er ugyldig; en anonym union kan kun have ikke-statiske datamedlemmer"
-#: cp/class.c:2766 cp/decl2.c:1337
+#: cp/class.c:2595 cp/decl2.c:1174
msgid "private member `%#D' in anonymous union"
msgstr "privat medlem '%#D' i en anonym union"
-#: cp/class.c:2769 cp/decl2.c:1339
+#: cp/class.c:2598 cp/decl2.c:1176
msgid "protected member `%#D' in anonymous union"
msgstr "beskyttet medlem '%#D' i en anonym union"
-#: cp/class.c:2894
+#: cp/class.c:2717
msgid "vtable layout for class `%T' may not be ABI-compliant and may change in a future version of GCC due to implicit virtual destructor"
msgstr "vtable-layout for klassen '%T' følger ikke nødvendigvis ABI'et og kan ændre sig i en fremtidig version af GCC pga. underforstået virtuel destruktionsfunktion"
-#: cp/class.c:2958
+#: cp/class.c:2777
msgid "bit-field `%#D' with non-integral type"
msgstr "bitfelt '%#D' med en ikke-heltalstype"
-#: cp/class.c:2978
+#: cp/class.c:2797
msgid "bit-field `%D' width not an integer constant"
msgstr "bredden af bitfeltet '%D' er ikke en heltalskonstant"
-#: cp/class.c:2984
+#: cp/class.c:2803
msgid "negative width in bit-field `%D'"
msgstr "negativ bredde i bitfeltet '%D'"
-#: cp/class.c:2989
+#: cp/class.c:2808
msgid "zero width for bit-field `%D'"
msgstr "en bredde på nul for bitfeltet '%D'"
-#: cp/class.c:2995
+#: cp/class.c:2814
msgid "width of `%D' exceeds its type"
msgstr "bredden af '%D' overstiger typen"
-#: cp/class.c:3004
+#: cp/class.c:2823
msgid "`%D' is too small to hold all values of `%#T'"
msgstr "'%D' er for lille til at indeholde alle værdierne af '%#T'"
-#: cp/class.c:3088
+#: cp/class.c:2885
msgid "member `%#D' with constructor not allowed in union"
msgstr "medlemmet '%#D' med en konstruktionsfunktion er ikke tilladt i en union"
-#: cp/class.c:3091
+#: cp/class.c:2888
msgid "member `%#D' with destructor not allowed in union"
msgstr "medlemmet '%#D' med en destruktionsfunktion er ikke tilladt i en union"
-#: cp/class.c:3094
+#: cp/class.c:2891
msgid "member `%#D' with copy assignment operator not allowed in union"
msgstr "medlemmet '%#D' med en kopitildelingsoperator er ikke tilladt i en union"
-#: cp/class.c:3121
+#: cp/class.c:2918
msgid "multiple fields in union `%T' initialized"
msgstr "flere felter i union '%T' tildeles startværdi"
-#: cp/class.c:3234
+#: cp/class.c:2987
+msgid "ignoring packed attribute on unpacked non-POD field `%#D'"
+msgstr ""
+
+#: cp/class.c:3039
msgid "field `%D' in local class cannot be static"
msgstr "feltet '%D' i lokal klasse kan ikke være statisk"
-#: cp/class.c:3240
+#: cp/class.c:3045
msgid "field `%D' invalidly declared function type"
msgstr "feltet '%D' er på ugyldig vis erklæret som en funktionstype"
-#: cp/class.c:3247
+#: cp/class.c:3052
msgid "field `%D' invalidly declared method type"
msgstr "feltet '%D' er på ugyldig vis erklæret som en medlemsfunktionstype"
-#: cp/class.c:3253
-msgid "field `%D' invalidly declared offset type"
-msgstr "feltet '%D' er på ugyldig vis erklæret som en afstandstype"
-
#. Unions cannot have static members.
-#: cp/class.c:3271
+#: cp/class.c:3070
msgid "field `%D' declared static in union"
msgstr "feltet '%D' er erklæret statisk i union"
-#: cp/class.c:3298
+#: cp/class.c:3097
msgid "non-static reference `%#D' in class without a constructor"
msgstr "ikke-statisk reference '%#D' i klasse uden en konstruktionsfunktion"
-#: cp/class.c:3333
+#: cp/class.c:3132
msgid "non-static const member `%#D' in class without a constructor"
msgstr "ikke-statisk konstant medlem '%#D' i klasse uden en konstruktionsfunktion"
-#: cp/class.c:3349
+#: cp/class.c:3147
msgid "field `%#D' with same name as class"
msgstr "felt '%#D' med samme navn som klassen"
-#: cp/class.c:3367
+#: cp/class.c:3165
msgid "`%#T' has pointer data members"
msgstr "'%#T' har henvisningsdatamedlemmer"
-#: cp/class.c:3371
+#: cp/class.c:3169
msgid " but does not override `%T(const %T&)'"
msgstr " men overskriver ikke '%T(const %T&)'"
-#: cp/class.c:3373
+#: cp/class.c:3171
msgid " or `operator=(const %T&)'"
msgstr " eller 'operator=(const %T&)'"
-#: cp/class.c:3376
+#: cp/class.c:3174
msgid " but does not override `operator=(const %T&)'"
msgstr " men overskriver ikke 'operator=(const %T&)'"
-#: cp/class.c:3826
+#: cp/class.c:3604
msgid "offset of empty base `%T' may not be ABI-compliant and maychange in a future version of GCC"
msgstr "afsættet for tom stamklasse '%T' følger ikke nødvendigvis ABI'en og kan ændre sig i en fremtidig version af GCC"
-#: cp/class.c:3935
+#: cp/class.c:3714
msgid "class `%T' will be considered nearly empty in a future version of GCC"
msgstr "klassen '%T' vil blive betragtet som næsten tom i en fremtidig version af GCC"
-#: cp/class.c:4025
+#: cp/class.c:3801
msgid "initializer specified for non-virtual method `%D'"
msgstr "startværdi angivet for ikke-virtuel medlemsfunktion '%D'"
-#: cp/class.c:4761
+#: cp/class.c:4489
msgid "offset of virtual base `%T' is not ABI-compliant and may change in a future version of GCC"
msgstr "afsættet for virtuel stamklasse '%T' følger ikke ABI'en og kan ændre sig i en fremtidig version af GCC"
-#: cp/class.c:4861
+#: cp/class.c:4579
msgid "direct base `%T' inaccessible in `%T' due to ambiguity"
msgstr "direkte stamklasse '%T' er ikke tilgængelig i '%T' på grund af tvetydighed"
-#: cp/class.c:4874
+#: cp/class.c:4592
msgid "virtual base `%T' inaccessible in `%T' due to ambiguity"
msgstr "virtuel stamklasse '%T' er ikke tilgængelig i '%T' på grund af tvetydighed"
-#: cp/class.c:5030
+#: cp/class.c:4766
msgid "size assigned to `%T' may not be ABI-compliant and may change in a future version of GCC"
msgstr "størrelsen der bliver tildelt '%T' følger ikke nødvendigvis ABI'en og kan ændre sig i en fremtidig version af GCC"
#. Versions of G++ before G++ 3.4 did not reset the
#. DECL_MODE.
-#: cp/class.c:5053
+#: cp/class.c:4805
#, fuzzy
msgid "the offset of `%D' may not be ABI-compliant and may change in a future version of GCC"
msgstr "afsættet for '%D' følger ikke ABI'en og kan ændre sig i en fremtidig version af GCC"
-#: cp/class.c:5079
+#: cp/class.c:4828
msgid "offset of `%D' is not ABI-compliant and may change in a future version of GCC"
msgstr "afsættet for '%D' følger ikke ABI'en og kan ændre sig i en fremtidig version af GCC"
-#: cp/class.c:5088
+#: cp/class.c:4837
msgid "`%D' contains empty classes which may cause base classes to be placed at different locations in a future version of GCC"
msgstr "'%D' indeholder tomme klasser hvad der kan få stamklasser til at blive placeret andre steder i en fremtidig version af GCC"
-#: cp/class.c:5147
+#: cp/class.c:4896
msgid "layout of classes derived from empty class `%T' may change in a future version of GCC"
msgstr "layoutet af klasser der nedarver fra den tomme klasse '%T' kan ændre sig i en fremtidig version af GCC"
-#: cp/class.c:5432
+#: cp/class.c:5026 cp/semantics.c:2029
+msgid "redefinition of `%#T'"
+msgstr "omdefinering af '%#T'"
+
+#: cp/class.c:5196
msgid "`%#T' has virtual functions but non-virtual destructor"
msgstr "'%#T' har virtuelle funktioner, men ikke-virtuel destruktionsfunktion"
-#: cp/class.c:5516
+#: cp/class.c:5275
msgid "trying to finish struct, but kicked out due to previous parse errors"
msgstr "forsøgte at afslutte struct, men blev stoppet af tidligere fortolkningsfejl"
-#: cp/class.c:5982
+#: cp/class.c:5717
#, c-format
msgid "language string `\"%s\"' not recognized"
msgstr "sprogstrengen '\"%s\"' ikke genkendt"
-#: cp/class.c:6078
+#: cp/class.c:5805
msgid "cannot resolve overloaded function `%D' based on conversion to type `%T'"
msgstr "kan ikke benytte den flertydiggjorte funktion '%D' baseret på konvertering til typen '%T'"
-#: cp/class.c:6203
+#: cp/class.c:5930
msgid "no matches converting function `%D' to type `%#T'"
msgstr "ingen passende ved konvertering af funktionen '%D' til typen '%#T'"
-#: cp/class.c:6226
+#: cp/class.c:5953
msgid "converting overloaded function `%D' to type `%#T' is ambiguous"
msgstr "konvertering af den flertydiggjorte funktion '%D' til typen '%T' er tvetydig"
-#: cp/class.c:6252
+#: cp/class.c:5979
msgid "assuming pointer to member `%D'"
msgstr "antager henvisning til medlemmet '%D'"
-#: cp/class.c:6255
+#: cp/class.c:5982
#, c-format
msgid "(a pointer to member can only be formed with `&%E')"
msgstr "(en henvisning til medlem kan kun dannes med '&%E')"
-#: cp/class.c:6306 cp/class.c:6477 cp/class.c:6484
+#: cp/class.c:6027 cp/class.c:6209 cp/class.c:6216
msgid "not enough type information"
msgstr "ikke tilstrækkelig information om typen"
-#: cp/class.c:6315
+#: cp/class.c:6044
msgid "argument of type `%T' does not match `%T'"
msgstr "parameter af typen '%T' passer ikke til '%T'"
-#: cp/class.c:6461
+#: cp/class.c:6193
msgid "invalid operation on uninstantiated type"
msgstr "ugyldig operation på uudskiftet type"
@@ -14316,14 +13831,19 @@ msgstr "ugyldig operation på uudskiftet type"
#. A name N used in a class S shall refer to the same declaration
#. in its context and when re-evaluated in the completed scope of
#. S.
-#: cp/class.c:6745 cp/decl.c:1254 cp/decl.c:3379 cp/pt.c:2004
+#: cp/class.c:6451 cp/decl.c:1225 cp/name-lookup.c:495 cp/pt.c:2093
msgid "declaration of `%#D'"
msgstr "omerklæring af '%#D'"
-#: cp/class.c:6746
+#: cp/class.c:6452
msgid "changes meaning of `%D' from `%+#D'"
msgstr "skifter betydningen af '%D' fra '%+#D'"
+#: cp/cp-lang.c:398
+#, fuzzy
+msgid "inter-module optimisations not implemented yet"
+msgstr "profilering understøttes ikke endnu"
+
#: cp/cvt.c:88
msgid "can't convert from incomplete type `%T' to `%T'"
msgstr "kan ikke konvertere fra ufuldstændig type '%T' til '%T'"
@@ -14332,247 +13852,236 @@ msgstr "kan ikke konvertere fra ufuldstændig type '%T' til '%T'"
msgid "conversion of `%E' from `%T' to `%T' is ambiguous"
msgstr "konvertering af '%E' fra '%T' til '%T' er tvetydigt"
-#: cp/cvt.c:126
+#: cp/cvt.c:113 cp/cvt.c:127
msgid "converting from `%T' to `%T'"
msgstr "konvertering fra '%T' til '%T'"
-#: cp/cvt.c:203 cp/cvt.c:207
-msgid "pointer to member cast from `%T' to `%T' is via virtual base"
-msgstr "typekonvertering af henvisning til medlem fra '%T' til '%T' er via virtuel stamklasse"
-
-#: cp/cvt.c:225 cp/cvt.c:236 cp/cvt.c:283
+#: cp/cvt.c:185 cp/cvt.c:253 cp/cvt.c:297
msgid "cannot convert `%E' from type `%T' to type `%T'"
msgstr "kan ikke konvertere '%E' fra typen '%T' til typen '%T'"
-#: cp/cvt.c:262
+#: cp/cvt.c:214 cp/cvt.c:218
+msgid "pointer to member cast from `%T' to `%T' is via virtual base"
+msgstr "typekonvertering af henvisning til medlem fra '%T' til '%T' er via virtuel stamklasse"
+
+#: cp/cvt.c:276
msgid "invalid conversion from '%T' to '%T'"
msgstr "ugyldig konvertering fra '%T' til '%T'"
-#: cp/cvt.c:504
+#: cp/cvt.c:508
msgid "conversion from `%T' to `%T' discards qualifiers"
msgstr "konvertering fra '%T' til '%T' forkaster modifikationer"
-#: cp/cvt.c:522
+#: cp/cvt.c:526
msgid "casting `%T' to `%T' does not dereference pointer"
msgstr "typeomtvingning af '%T' til '%T' følger ikke henvisning"
-#: cp/cvt.c:551
+#: cp/cvt.c:553
msgid "cannot convert type `%T' to type `%T'"
msgstr "kan ikke konvertere typen '%T' til typen '%T'"
-#: cp/cvt.c:683
+#: cp/cvt.c:679
msgid "conversion from `%#T' to `%#T'"
msgstr "konvertering fra '%#T' til '%#T'"
-#: cp/cvt.c:695
+#: cp/cvt.c:691
msgid "`%#T' used where a `%T' was expected"
msgstr "'%#T' benyttet hvor '%T' var forventet"
-#: cp/cvt.c:712
-msgid "the address of `%D', will always be `true'"
-msgstr "adressen af '%D' vil altid være 'true'"
-
-#: cp/cvt.c:732
+#: cp/cvt.c:715
msgid "`%#T' used where a floating point value was expected"
msgstr "'%#T' benyttet hvor der forventedes en kommatalsværdi"
-#: cp/cvt.c:779
+#: cp/cvt.c:762
msgid "conversion from `%T' to non-scalar type `%T' requested"
msgstr "konvertering fra '%T' til en ikke-skalartype '%T' udbedt"
-#: cp/cvt.c:865
+#: cp/cvt.c:850
msgid "object of incomplete type `%T' will not be accessed in %s"
msgstr "objekt af den ufuldstændige type '%T' vil ikke blive tilgået i %s"
-#: cp/cvt.c:868
+#: cp/cvt.c:853
msgid "object of type `%T' will not be accessed in %s"
msgstr "objekt af typen '%T' vil ikke blive tilgået i %s"
-#: cp/cvt.c:884
+#: cp/cvt.c:869
msgid "object `%E' of incomplete type `%T' will not be accessed in %s"
msgstr "objektet '%E' af den ufuldstændige type '%T' vil ikke blive tilgået i %s"
#. [over.over] enumerates the places where we can take the address
#. of an overloaded function, and this is not one of them.
-#: cp/cvt.c:904
+#: cp/cvt.c:885
#, c-format
msgid "%s cannot resolve address of overloaded function"
msgstr "%s kan ikke finde adressen af flertydiggjort funktion"
#. Only warn when there is no &.
-#: cp/cvt.c:909
+#: cp/cvt.c:891
#, c-format
msgid "%s is a reference, not call, to function `%E'"
msgstr "%s er en reference til og ikke et kald af funktionen '%E'"
-#: cp/cvt.c:1039
+#: cp/cvt.c:898
+#, fuzzy, c-format
+msgid "%s has no effect"
+msgstr "%s har ingen %s"
+
+#: cp/cvt.c:1009
msgid "converting NULL to non-pointer type"
msgstr "konverterer NULL til en ikke-henvisningstype"
-#: cp/cvt.c:1115
+#: cp/cvt.c:1081
msgid "ambiguous default type conversion from `%T'"
msgstr "tvetydig standardtypekonvertering fra '%T'"
-#: cp/cvt.c:1117
+#: cp/cvt.c:1083
msgid " candidate conversions include `%D' and `%D'"
msgstr " kandidater til konverteringen inkluderer '%D' og '%D'"
-#: cp/decl.c:736
-#, c-format
-msgid "push %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:770
-#, c-format
-msgid "pop %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:776 cp/decl.c:814
-msgid "XXX is_class_level != (current_binding_level == class_binding_level)\n"
-msgstr ""
-
-#: cp/decl.c:808
-#, c-format
-msgid "suspend %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:837
-#, c-format
-msgid "resume %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:1255 cp/decl.c:3490
-msgid "conflicts with previous declaration `%#D'"
-msgstr "strider mod tidligere erklæring '%#D'"
-
-#: cp/decl.c:1467
+#: cp/decl.c:374
msgid "label `%D' used but not defined"
msgstr "etiketten '%D' er benyttet, men ikke defineret"
-#: cp/decl.c:1472
+#: cp/decl.c:381
msgid "label `%D' defined but not used"
msgstr "etiketten '%D' er defineret, men ikke benyttet"
-#: cp/decl.c:2489
-msgid "namespace alias `%D' not allowed here, assuming `%D'"
-msgstr "navnerumsalias '%D' er ikke tilladt her, antager '%D'"
+#: cp/decl.c:1133 cp/decl.c:1559
+msgid "previous declaration of `%D'"
+msgstr "'%D' er tidligere erklæret"
-#: cp/decl.c:2825
-msgid "XXX entering pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1181
+#, fuzzy
+msgid "%Jfunction '%D' redeclared as inline"
+msgstr "funktionen '%s' omerklæret som inline"
-#: cp/decl.c:2834
-msgid "XXX leaving pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1182
+#, fuzzy
+msgid "%Jprevious declaration of '%D' with attribute noinline"
+msgstr "tidligere erklæring af funktionen '%s' med egenskaben noinline"
-#: cp/decl.c:3285 cp/decl.c:3700
-msgid "previous declaration of `%D'"
-msgstr "'%D' er tidligere erklæret"
+#: cp/decl.c:1189
+#, fuzzy
+msgid "%Jfunction '%D' redeclared with attribute noinline"
+msgstr "funktionen '%s' omerklæret med egenskaben noinline"
+
+#: cp/decl.c:1191
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was inline"
+msgstr "tidligere erklæring af funktionen '%s' var inline"
-#: cp/decl.c:3366 cp/decl.c:3404
+#: cp/decl.c:1212 cp/decl.c:1250
msgid "shadowing %s function `%#D'"
msgstr "skygger for en %s-funktion '%#D'"
-#: cp/decl.c:3375
+#: cp/decl.c:1221
msgid "library function `%#D' redeclared as non-function `%#D'"
msgstr "biblioteksfunktionen '%#D' er omerklæret som '%#D' der ikke er en funktion"
-#: cp/decl.c:3380
+#: cp/decl.c:1226
msgid "conflicts with built-in declaration `%#D'"
msgstr "strider mod indbygget erklæring '%#D'"
# følges af næste tekst
-#: cp/decl.c:3399 cp/decl.c:3504 cp/decl.c:3520
+#: cp/decl.c:1245 cp/decl.c:1357 cp/decl.c:1373
msgid "new declaration `%#D'"
msgstr "ny erklæring af '%#D'"
-#: cp/decl.c:3400
+#: cp/decl.c:1246
msgid "ambiguates built-in declaration `%#D'"
msgstr "tvetydiggør indbygget erklæring '%#D'"
-#: cp/decl.c:3464
+#: cp/decl.c:1317
msgid "`%#D' redeclared as different kind of symbol"
msgstr "'%#D' omerklæret som en anden form for symbol"
-#: cp/decl.c:3467
+#: cp/decl.c:1320
msgid "previous declaration of `%#D'"
msgstr "tidligere erklæring af '%#D'"
-#: cp/decl.c:3489
+#: cp/decl.c:1342
msgid "declaration of template `%#D'"
msgstr "erklæring af skabelon '%#D'"
-#: cp/decl.c:3505 cp/decl.c:3521
+#: cp/decl.c:1343 cp/name-lookup.c:496
+msgid "conflicts with previous declaration `%#D'"
+msgstr "strider mod tidligere erklæring '%#D'"
+
+#: cp/decl.c:1358 cp/decl.c:1374
msgid "ambiguates old declaration `%#D'"
msgstr "tvetydiggør tidligere erklæring '%#D'"
-#: cp/decl.c:3513
+#: cp/decl.c:1366
msgid "declaration of C function `%#D' conflicts with"
msgstr "erklæring af C-funktionen '%#D' strider mod"
-#: cp/decl.c:3515
+#: cp/decl.c:1368
msgid "previous declaration `%#D' here"
msgstr "tidligere erklæring af '%#D' her"
-#: cp/decl.c:3533
-msgid "conflicting types for `%#D'"
-msgstr "modstridende typer for '%#D'"
+#: cp/decl.c:1384
+#, fuzzy
+msgid "conflicting declaration '%#D'"
+msgstr "modstridende erklæringer af '%s'"
-#: cp/decl.c:3534
-msgid "previous declaration as `%#D'"
+#: cp/decl.c:1385
+#, fuzzy
+msgid "'%D' has a previous declaration as `%#D'"
msgstr "tidligere erklæring som '%#D'"
-#: cp/decl.c:3577
+#: cp/decl.c:1438
msgid "`%#D' previously defined here"
msgstr "'%#D' tidligere defineret her"
-#: cp/decl.c:3578
+#: cp/decl.c:1439
msgid "`%#D' previously declared here"
msgstr "'%#D' tidligere erklæret her"
#. Prototype decl follows defn w/o prototype.
-#: cp/decl.c:3587
+#: cp/decl.c:1448
msgid "prototype for `%#D'"
msgstr "prototypen for '%#D'"
-#: cp/decl.c:3588
-msgid "follows non-prototype definition here"
+#: cp/decl.c:1449
+#, fuzzy
+msgid "%Jfollows non-prototype definition here"
msgstr "følger definition uden prototype her"
-#: cp/decl.c:3600
+#: cp/decl.c:1461
msgid "previous declaration of `%#D' with %L linkage"
msgstr "tidligere erklæring af '%#D' med %L-kædning"
-#: cp/decl.c:3602
+#: cp/decl.c:1463
msgid "conflicts with new declaration with %L linkage"
msgstr "strider mod ny erklæring af med %L-kædning"
-#: cp/decl.c:3625 cp/decl.c:3632
+#: cp/decl.c:1486 cp/decl.c:1493
msgid "default argument given for parameter %d of `%#D'"
msgstr "standardparameter givet til %d. parameter for '%#D'"
-#: cp/decl.c:3627 cp/decl.c:3634
+#: cp/decl.c:1488 cp/decl.c:1495
msgid "after previous specification in `%#D'"
msgstr "efter tidligere specifikation i '%#D'"
-#: cp/decl.c:3643
+#: cp/decl.c:1504
msgid "`%#D' was used before it was declared inline"
msgstr "'%#D' blev brugt før erklæring som inline"
-#: cp/decl.c:3645
-msgid "previous non-inline declaration here"
+#: cp/decl.c:1505
+#, fuzzy
+msgid "%Jprevious non-inline declaration here"
msgstr "tidligere ikke-inline erklæring her"
-#: cp/decl.c:3699
+#: cp/decl.c:1558
msgid "redundant redeclaration of `%D' in same scope"
msgstr "overflødig omerklæring af '%D' i samme virkefelt"
-#: cp/decl.c:3780
+#: cp/decl.c:1649
#, c-format
msgid "declaration of `%F' throws different exceptions"
msgstr "erklæring af '%F' kaster forskellige undtagelser"
-#: cp/decl.c:3782
+#: cp/decl.c:1651
#, c-format
msgid "than previous declaration `%F'"
msgstr "end tidligere erklæring '%F'"
@@ -14585,613 +14094,501 @@ msgstr "end tidligere erklæring '%F'"
#. that specialization that would cause an implicit
#. instantiation to take place, in every translation unit in
#. which such a use occurs.
-#: cp/decl.c:3922
+#: cp/decl.c:1798
msgid "explicit specialization of %D after first use"
msgstr "eksplicit specialisering af %D efter første brug"
-#: cp/decl.c:4187
-msgid "`%#D' used prior to declaration"
-msgstr "'%#D' benyttet før erklæring"
-
-#: cp/decl.c:4218
-msgid "redeclaration of `wchar_t' as `%T'"
-msgstr "omerklæring af 'wchar_t' som '%T'"
-
-#. A redeclaration of main, but not a duplicate of the
-#. previous one.
-#.
-#. [basic.start.main]
-#.
-#. This function shall not be overloaded.
-#: cp/decl.c:4246
-msgid "invalid redeclaration of `%D'"
-msgstr "ugyldig omerklæring af '%D'"
-
-#: cp/decl.c:4247
-msgid "as `%D'"
-msgstr "som '%D'"
-
-#: cp/decl.c:4337
-msgid "previous external decl of `%#D'"
-msgstr "tidligere ekstern erklæring af '%#D'"
-
-#: cp/decl.c:4378
-msgid "`%D' was previously implicitly declared to return `int'"
-msgstr "'%D' blev tidligere underforstået erklæret til at returnere 'int'"
-
-#: cp/decl.c:4438
-msgid "extern declaration of `%#D' doesn't match"
-msgstr "extern-erklæring af '%#D' passer ikke med"
-
-#: cp/decl.c:4439
-msgid "global declaration `%#D'"
-msgstr "global erklæring '%#D'"
-
-#: cp/decl.c:4472
-msgid "declaration of `%#D' shadows a parameter"
-msgstr "erklæring af '%#D' skygger for en parameter"
-
-#: cp/decl.c:4492
-#, c-format
-msgid "declaration of `%s' shadows a member of `this'"
-msgstr "erklæring af '%s' skygger for et medlem af 'this'"
-
-#: cp/decl.c:4889
-msgid "`%#D' hides constructor for `%#T'"
-msgstr "'%#D' skjuler konstruktionsfunktion for '%#T'"
-
-#: cp/decl.c:4904
-msgid "`%#D' conflicts with previous using declaration `%#D'"
-msgstr "'%#D' strider mod tidligere using-erklæring '%#D'"
-
-#: cp/decl.c:4916
-msgid "previous non-function declaration `%#D'"
-msgstr "tidligere ikke-funktionserklæring '%#D'"
+#: cp/decl.c:1880
+msgid "%J'%D': visibility attribute ignored because it"
+msgstr ""
-#: cp/decl.c:4917
-msgid "conflicts with function declaration `%#D'"
-msgstr "strider mod funktionserklæring '%#D'"
+#: cp/decl.c:1882
+#, fuzzy
+msgid "%Jconflicts with previous declaration here"
+msgstr "strider mod tidligere erklæring '%#D'"
-#: cp/decl.c:5007
+#: cp/decl.c:1976
msgid "implicit declaration of function `%#D'"
msgstr "underforstået erklæring af funktionen '%#D'"
-#: cp/decl.c:5167
+#: cp/decl.c:2124
#, c-format
msgid "label `%s' referenced outside of any function"
msgstr "der er blevet henvist til etiketten '%s' uden for en funktion"
-#: cp/decl.c:5270 cp/decl.c:5294 cp/decl.c:5387
+#: cp/decl.c:2221 cp/decl.c:2245 cp/decl.c:2333
msgid "jump to label `%D'"
msgstr "spring til etiketten '%D' "
-#: cp/decl.c:5272 cp/decl.c:5296
+#: cp/decl.c:2223 cp/decl.c:2247
msgid "jump to case label"
msgstr "spring til case-etiket"
-#: cp/decl.c:5280
+#: cp/decl.c:2226 cp/decl.c:2250
+#, fuzzy
+msgid "%H from here"
+msgstr " herfra"
+
+#: cp/decl.c:2231
msgid " crosses initialization of `%#D'"
msgstr " krydser klargøring af '%#D'"
-#: cp/decl.c:5283 cp/decl.c:5403
+#: cp/decl.c:2234 cp/decl.c:2349
msgid " enters scope of non-POD `%#D'"
msgstr " går ind i virkefelt af ikke-POD '%#D'"
-#: cp/decl.c:5303 cp/decl.c:5407
+#: cp/decl.c:2254 cp/decl.c:2353
msgid " enters try block"
msgstr " går ind i try-blok"
-#. Can't skip init of __exception_info.
-#: cp/decl.c:5305 cp/decl.c:5399 cp/decl.c:5409
+#: cp/decl.c:2256 cp/decl.c:2355
msgid " enters catch block"
msgstr " går ind i catch-blok"
-#: cp/decl.c:5388
+#: cp/decl.c:2334
msgid " from here"
msgstr " herfra"
-#: cp/decl.c:5401
+#. Can't skip init of __exception_info.
+#: cp/decl.c:2345
+#, fuzzy
+msgid "%J enters catch block"
+msgstr " går ind i catch-blok"
+
+#: cp/decl.c:2347
msgid " skips initialization of `%#D'"
msgstr " springer over klargøring af '%#D'"
-#: cp/decl.c:5437
+#: cp/decl.c:2381
msgid "label named wchar_t"
msgstr "etiket med navnet wchar_t"
-#: cp/decl.c:5440
+#: cp/decl.c:2384
msgid "duplicate label `%D'"
msgstr "etiketten '%D' optræder mere end én gang"
-#: cp/decl.c:5525
-#, c-format
-msgid "case label `%E' not within a switch statement"
-msgstr "case-etiket '%E' befinder sig ikke inden i en switch-sætning"
-
-#. Definition isn't the kind we were looking for.
-#: cp/decl.c:5704 cp/decl.c:5723
-msgid "`%#D' redeclared as %C"
-msgstr "'%#D' omerklæret som %C"
-
-#. This happens for A::B where B is a template, and there are no
-#. template arguments.
-#: cp/decl.c:5811 cp/typeck.c:2069 cp/typeck.c:2229
-msgid "invalid use of `%D'"
-msgstr "ugyldig brug af '%D"
-
-#: cp/decl.c:5852
-msgid "`%D::%D' is not a template"
-msgstr "'%D::%D' er ikke en skabelon"
-
-#: cp/decl.c:5869
-msgid "`%D' undeclared in namespace `%D'"
-msgstr "'%D' ikke erklæret i navnerummet '%D'"
-
-#: cp/decl.c:6002
+#: cp/decl.c:2612 cp/parser.c:3178
msgid "`%D' used without template parameters"
msgstr "'%D' benyttet uden skabelonsparametre"
-#: cp/decl.c:6013 cp/decl.c:6029 cp/decl.c:6139
+#: cp/decl.c:2622 cp/decl.c:2638 cp/decl.c:2726
msgid "no class template named `%#T' in `%#T'"
msgstr "ingen klasseskabelon ved navn '%#T' i '%#T'"
-#: cp/decl.c:6055 cp/decl.c:6065 cp/decl.c:6100
+#: cp/decl.c:2659 cp/decl.c:2669 cp/decl.c:2689
msgid "no type named `%#T' in `%#T'"
msgstr "ingen type ved navn '%#T' i '%#T'"
-#: cp/decl.c:6329
-msgid "lookup of `%D' finds `%#D'"
-msgstr "opslag af '%D' finder '%#D'"
-
-#: cp/decl.c:6331
-msgid " instead of `%D' from dependent base class"
-msgstr " i stedet for '%D' fra afhængig stamklasse"
-
-#: cp/decl.c:6333
-msgid " (use `typename %T::%D' if that's what you meant)"
-msgstr " (benyt 'typename %T::%D' hvis det er hvad du mener)"
-
-#: cp/decl.c:6364
-msgid "name lookup of `%D' changed"
-msgstr "navneopslag for '%D' ændret"
-
-#: cp/decl.c:6366
-msgid " matches this `%D' under ISO standard rules"
-msgstr " passer med '%D' under ISO-standardreglerne"
-
-#: cp/decl.c:6368
-msgid " matches this `%D' under old rules"
-msgstr " passer med '%D' under tidligere regler"
-
-#: cp/decl.c:6382 cp/decl.c:6389
-msgid "name lookup of `%D' changed for new ISO `for' scoping"
-msgstr "navneopslaget af '%D' er ændret til ISO 'for'-virkefelt"
-
-#: cp/decl.c:6384
-msgid " cannot use obsolete binding at `%D' because it has a destructor"
-msgstr " kan ikke bruge forældet binding til '%D' fordi den har en destruktionsfunktion"
-
-#: cp/decl.c:6391
-msgid " using obsolete binding at `%D'"
-msgstr " bruger forældet binding til '%D'"
-
-#: cp/decl.c:6609
-msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
-msgstr "opslag af '%D' i virkefeltet for '%#T' ('%#D') passer ikke med opslaget i det aktuelle virkefelt ('%#D')"
-
-#: cp/decl.c:7432
-msgid "an anonymous union cannot have function members"
+#: cp/decl.c:3416
+#, fuzzy
+msgid "%Jan anonymous union cannot have function members"
msgstr "en anonym union kan ikke have funktionsmedlemmer"
-#: cp/decl.c:7449
+#: cp/decl.c:3434
msgid "member %#D' with constructor not allowed in anonymous aggregate"
msgstr "medlemmet '%#D' med konstruktionsfunktion er ikke tilladt i anonym sammensat type"
-#: cp/decl.c:7452
+#: cp/decl.c:3437
msgid "member %#D' with destructor not allowed in anonymous aggregate"
msgstr "medlemmet '%#D' med destruktionsfunktion er ikke tilladt i anonym sammensat type"
-#: cp/decl.c:7455
+#: cp/decl.c:3440
msgid "member %#D' with copy assignment operator not allowed in anonymous aggregate"
msgstr "medlemmet '%#D' med kopitildelingsoperator er ikke tilladt i anonym sammensat type"
-#: cp/decl.c:7493
+#: cp/decl.c:3480
msgid "redeclaration of C++ built-in type `%T'"
msgstr "omerklæring af indbygget type i C++ '%T'"
-#: cp/decl.c:7529
+#: cp/decl.c:3518
msgid "multiple types in one declaration"
msgstr "flere typer i én erklæring"
-#: cp/decl.c:7556
+#: cp/decl.c:3544
msgid "missing type-name in typedef-declaration"
msgstr "manglende typenavn i typedef-erklæring"
-#: cp/decl.c:7563
+#: cp/decl.c:3552
msgid "ISO C++ prohibits anonymous structs"
msgstr "ISO C++ forbyder anonyme strukturer"
-#: cp/decl.c:7570
+#: cp/decl.c:3559
msgid "`%D' can only be specified for functions"
msgstr "'%D' kan kun angives for funktioner"
-#: cp/decl.c:7572
+#: cp/decl.c:3561
msgid "`%D' can only be specified inside a class"
msgstr "'%D' kan kun angives inden i en klasse"
-#: cp/decl.c:7574
+#: cp/decl.c:3563
msgid "`%D' can only be specified for constructors"
msgstr "'%D' kan kun angives for konstruktionsfunktioner"
-#: cp/decl.c:7577
+#: cp/decl.c:3566
msgid "`%D' can only be specified for objects and functions"
msgstr "'%D' kan kun angives for objekter og funktioner"
# init dækker over værditildeling her - samme for de næste mange
-#: cp/decl.c:7719 cp/decl2.c:936
+#: cp/decl.c:3708 cp/decl2.c:861
msgid "typedef `%D' is initialized (use __typeof__ instead)"
msgstr "typedef '%D' bliver tildelt en værdi (benyt __typeof__ i stedet)"
-#: cp/decl.c:7724
+#: cp/decl.c:3713
msgid "function `%#D' is initialized like a variable"
msgstr "funktionen '%#D' bliver tildelt en startværdi som en variabel"
-#: cp/decl.c:7736
+#: cp/decl.c:3725
msgid "declaration of `%#D' has `extern' and is initialized"
msgstr "erklæringen af '%#D' indeholder 'extern' og variablen bliver tildelt en startværdi"
-#: cp/decl.c:7770
+#: cp/decl.c:3758
msgid "`%#D' is not a static member of `%#T'"
msgstr "'%#D' er ikke et statisk medlem af '%#T'"
-#: cp/decl.c:7775
+#: cp/decl.c:3764
msgid "ISO C++ does not permit `%T::%D' to be defined as `%T::%D'"
msgstr "ISO C++ tillader ikke '%T::%D' at blive defineret som '%T::%D'"
-#: cp/decl.c:7786
+#: cp/decl.c:3775
msgid "duplicate initialization of %D"
msgstr "%D tildelt startværdi mere end én gang"
-#: cp/decl.c:7815
+#: cp/decl.c:3806
msgid "declaration of `%#D' outside of class is not definition"
msgstr "erklæring af '%#D' uden for en klasse er ikke en definition"
-#: cp/decl.c:7865
+#: cp/decl.c:3857
msgid "variable `%#D' has initializer but incomplete type"
msgstr "variablen '%#D' bliver tildelt en startværdi, men er af en ufuldstændig type"
-#: cp/decl.c:7873 cp/decl.c:8432
+#: cp/decl.c:3865 cp/decl.c:4426
msgid "elements of array `%#D' have incomplete type"
msgstr "elementer i tabellen '%#D' er af en ufuldstændig type"
-#: cp/decl.c:7889
+#: cp/decl.c:3881
msgid "aggregate `%#D' has incomplete type and cannot be defined"
msgstr "den sammensatte type '%#D' er af en ufuldstændig type og kan ikke defineres"
-#: cp/decl.c:7931
+#: cp/decl.c:3923
msgid "`%D' declared as reference but not initialized"
msgstr "'%D' erklæret som en reference, men bliver ikke tildelt en startværdi"
-#: cp/decl.c:7940
+#: cp/decl.c:3929
msgid "ISO C++ forbids use of initializer list to initialize reference `%D'"
msgstr "ISO C++ forbyder brug af en startværdiliste til at klargøre referencen '%D'"
-#: cp/decl.c:7970
+#: cp/decl.c:3957
msgid "cannot initialize `%T' from `%T'"
msgstr "kan ikke klargøre '%T' fra %T'"
-#: cp/decl.c:8004
+#: cp/decl.c:3989
msgid "initializer fails to determine size of `%D'"
msgstr "startværdien giver ikke størrelsen af '%D'"
-#: cp/decl.c:8009
+#: cp/decl.c:3994
msgid "array size missing in `%D'"
msgstr "tabelstørrelsen mangler i '%D'"
-#: cp/decl.c:8021
+#: cp/decl.c:4006
msgid "zero-size array `%D'"
msgstr "nulstørrelsestabel '%D'"
#. An automatic variable with an incomplete type: that is an error.
#. Don't talk about array types here, since we took care of that
#. message in grokdeclarator.
-#: cp/decl.c:8059
+#: cp/decl.c:4043
msgid "storage size of `%D' isn't known"
msgstr "lagringsstørrelsen af '%D' er ikke kendt"
-#: cp/decl.c:8081
+#: cp/decl.c:4065
msgid "storage size of `%D' isn't constant"
msgstr "lagringsstørrelsen af '%D' er ikke konstant"
-#: cp/decl.c:8137
+#: cp/decl.c:4120
msgid "sorry: semantics of inline function static data `%#D' are wrong (you'll wind up with multiple copies)"
msgstr "semantikken for indlejret funktionsstatisk data '%#D' er forkert (du ender med flere kopier)"
-#: cp/decl.c:8138
-msgid " you can work around this by removing the initializer"
+#: cp/decl.c:4121
+#, fuzzy
+msgid "%J you can work around this by removing the initializer"
msgstr " du kan arbejde dig rundt om dette ved at fjerne startværdien"
-#: cp/decl.c:8164
+#: cp/decl.c:4147
msgid "uninitialized const `%D'"
msgstr "konstant '%D' uden startværdi"
-#: cp/decl.c:8249
+#: cp/decl.c:4226
msgid "brace-enclosed initializer used to initialize `%T'"
msgstr "startværdi i krøllede paranteser benyttet til at klargøre '%T'"
-#: cp/decl.c:8313
+#: cp/decl.c:4290
msgid "initializer for `%T' must be brace-enclosed"
msgstr "startværdi for '%T' skal være indesluttet i krøllede paranteser"
-#: cp/decl.c:8328
+#: cp/decl.c:4307
msgid "ISO C++ does not allow designated initializers"
msgstr "ISO C++ tillader ikke udpegede startværdier"
-#: cp/decl.c:8332
+#: cp/decl.c:4311
msgid "`%T' has no non-static data member named `%D'"
msgstr "'%T' har intet ikke-statisk medlem ved navn '%D'"
-#: cp/decl.c:8389
+#: cp/decl.c:4359
+msgid "name `%D' used in a GNU-style designated initializer for an array"
+msgstr ""
+
+#: cp/decl.c:4382
msgid "too many initializers for `%T'"
msgstr "for mange startværdier for '%T'"
-#: cp/decl.c:8426
+#: cp/decl.c:4420
msgid "variable-sized object `%D' may not be initialized"
msgstr "objektet '%D' af variabel størrelse må ikke tildeles en startværdi"
-#: cp/decl.c:8437
+#: cp/decl.c:4431
msgid "`%D' has incomplete type"
msgstr "'%D' er af en ufuldstændig type"
-#: cp/decl.c:8486
+#: cp/decl.c:4486
msgid "`%D' must be initialized by constructor, not by `{...}'"
msgstr "'%D' skal klargøres af en konstruktionsfunktion, ikke af '{...}'"
-#: cp/decl.c:8527
+#: cp/decl.c:4530
msgid "structure `%D' with uninitialized const members"
msgstr "struktur '%D' med konstante medlemmer uden startværdi"
-#: cp/decl.c:8529
+#: cp/decl.c:4532
msgid "structure `%D' with uninitialized reference members"
msgstr "struktur '%D' med referencemedlemmer uden startværdi"
-#: cp/decl.c:8770
+#: cp/decl.c:4713
msgid "assignment (not initialization) in declaration"
msgstr "tildeling (ikke klargøring) i erklæring"
-#: cp/decl.c:8785
+#: cp/decl.c:4730
msgid "cannot initialize `%D' to namespace `%D'"
msgstr "kan ikke tildele startværdi til '%D' med navnerummet '%D'"
-#: cp/decl.c:8836
+#: cp/decl.c:4780
msgid "shadowing previous type declaration of `%#D'"
msgstr "skygger for tidligere typeerklæring af '%#D'"
-#: cp/decl.c:8883
+#: cp/decl.c:4816
msgid "`%D' cannot be thread-local because it has non-POD type `%T'"
msgstr "'%D' kan ikke være trådlokal eftersom den er af en ikke-POD type '%T'"
-#: cp/decl.c:8898
+#: cp/decl.c:4831
msgid "`%D' is thread-local and so cannot be dynamically initialized"
msgstr "'%D' er trådlokal og kan derfor ikke blive tildelt en startværdi dynamisk"
-#: cp/decl.c:9298 cp/init.c:562
-msgid "multiple initializations given for `%D'"
-msgstr "flere startværdier angivet for '%D'"
-
-#: cp/decl.c:9390
+#: cp/decl.c:5313
msgid "invalid catch parameter"
msgstr "ugyldig catch-parameter"
-#: cp/decl.c:9508
+#: cp/decl.c:5427
msgid "destructor for alien class `%T' cannot be a member"
msgstr "destruktionsfunktionen for den fremmede klasse '%T' kan ikke være et medlem"
-#: cp/decl.c:9511
+#: cp/decl.c:5430
msgid "constructor for alien class `%T' cannot be a member"
msgstr "konstruktionsfunktionen for den fremmede klasse '%T' kan ikke være et medlem"
-#: cp/decl.c:9530
+#: cp/decl.c:5452
msgid "`%D' declared as a `virtual' %s"
msgstr "'%D' erklæret som 'virtual' %s"
-#: cp/decl.c:9532
+#: cp/decl.c:5454
msgid "`%D' declared as an `inline' %s"
msgstr "'%D' erklæret som 'inline' %s"
# %s bliver omsat til typen
-#: cp/decl.c:9534
+#: cp/decl.c:5456
msgid "`const' and `volatile' function specifiers on `%D' invalid in %s declaration"
msgstr "'const'- og 'volatile'-funktionsangivelser til '%D' er ugyldigt i erklæring af %s"
-#: cp/decl.c:9537
+#: cp/decl.c:5459
msgid "`%D' declared as a friend"
msgstr "'%D' er erklæret som en ven"
-#: cp/decl.c:9543
+#: cp/decl.c:5465
msgid "`%D' declared with an exception specification"
msgstr "'%D' erklæret med en undtagelsesspecifikation"
-#: cp/decl.c:9618
+#: cp/decl.c:5544
msgid "cannot declare `::main' to be a template"
msgstr "kan ikke erklære '::main' som en skabelon"
-#: cp/decl.c:9620
+#: cp/decl.c:5546
msgid "cannot declare `::main' to be inline"
msgstr "kan ikke erklære '::main' som indlejret"
-#: cp/decl.c:9622
+#: cp/decl.c:5548
msgid "cannot declare `::main' to be static"
msgstr "kan ikke erklære '::main' som statisk"
-#: cp/decl.c:9625
+#: cp/decl.c:5551
msgid "`main' must return `int'"
msgstr "'main' skal returnere typen 'int'"
-#: cp/decl.c:9653
+#: cp/decl.c:5579
msgid "non-local function `%#D' uses anonymous type"
msgstr "ikke-lokal funktion '%#D' bruger anonym type"
-#: cp/decl.c:9656
+#: cp/decl.c:5582
msgid "`%#D' does not refer to the unqualified type, so it is not used for linkage"
msgstr "'%#D' refererer ikke til den ikkemodificerede type, so den bruges ikke til sammenkædning"
-#: cp/decl.c:9662
+#: cp/decl.c:5588
msgid "non-local function `%#D' uses local type `%T'"
msgstr "ikke-lokal funktion '%#D' bruger lokal type '%T'"
-#: cp/decl.c:9691
+#: cp/decl.c:5612
msgid "%smember function `%D' cannot have `%T' method qualifier"
msgstr "%smedlemsfunktion '%D' kan ikke have metodemodifikationen '%T'"
-#: cp/decl.c:9715
+#: cp/decl.c:5636
msgid "defining explicit specialization `%D' in friend declaration"
msgstr "definering af eksplicit specialisering '%D' i friend-erklæring"
#. Something like `template <class T> friend void f<T>()'.
-#: cp/decl.c:9725
+#: cp/decl.c:5646
msgid "invalid use of template-id `%D' in declaration of primary template"
msgstr "ugyldig brug af skabelons-id '%D' i erklæring af primær skabelon"
-#: cp/decl.c:9753
+#: cp/decl.c:5673
msgid "default arguments are not allowed in declaration of friend template specialization `%D'"
msgstr "standardparametre er ikke tilladt i erklæring af venneskabelonsspecialisering '%D'"
-#: cp/decl.c:9760
+#: cp/decl.c:5680
msgid "`inline' is not allowed in declaration of friend template specialization `%D'"
msgstr "'inline' er ikke tilladt i erklæring venneskabelonsspecialisering '%D'"
-#: cp/decl.c:9822
+#: cp/decl.c:5741
msgid "definition of implicitly-declared `%D'"
msgstr "definition af underforstået-erklæret '%D'"
-#: cp/decl.c:9834 cp/decl2.c:785
+#: cp/decl.c:5759 cp/decl2.c:744
msgid "no `%#D' member function declared in class `%T'"
msgstr "ingen medlemsfunktion '%#D' erklæret i klassen '%T'"
-#: cp/decl.c:9967
+#: cp/decl.c:5893
msgid "non-local variable `%#D' uses local type `%T'"
msgstr "ikke-lokal variabel '%#D' bruger lokal type '%T'"
-#: cp/decl.c:10064
+#: cp/decl.c:6008
msgid "invalid in-class initialization of static data member of non-integral type `%T'"
msgstr "ugyldig tildeling af startværdi i klasse til statisk datamedlem af en ikke-heltalstype '%T'"
-#: cp/decl.c:10073
+#: cp/decl.c:6017
msgid "ISO C++ forbids in-class initialization of non-const static member `%D'"
msgstr "ISO C++ forbyder tildeling af startværdi i klasse til ikke-konstant statisk medlem '%D'"
-#: cp/decl.c:10076
+#: cp/decl.c:6020
msgid "ISO C++ forbids initialization of member constant `%D' of non-integral type `%T'"
msgstr "ISO C++ forbyder tildeling af startværdi til medlemskonstant '%D' af en ikke-heltallig type"
-#: cp/decl.c:10126
-msgid "size of array `%D' has non-integer type"
+#: cp/decl.c:6039
+#, fuzzy
+msgid "size of array `%D' has non-integral type `%T'"
msgstr "størrelsen af tabellen '%D' er ikke af en heltalstype"
-#: cp/decl.c:10128
-msgid "size of array has non-integer type"
+#: cp/decl.c:6041
+#, fuzzy
+msgid "size of array has non-integral type `%T'"
msgstr "størrelsen af tabel er ikke af en heltalstype"
-#: cp/decl.c:10148
+#: cp/decl.c:6077
msgid "size of array `%D' is negative"
msgstr "størrelsen af tabellen '%D' er negativ"
-#: cp/decl.c:10150
+#: cp/decl.c:6079
msgid "size of array is negative"
msgstr "størrelsen af tabel er negativ"
-#: cp/decl.c:10159
+#: cp/decl.c:6087
msgid "ISO C++ forbids zero-size array `%D'"
msgstr "ISO C++ forbyder tabellen '%D' med størrelsen nul"
-#: cp/decl.c:10161
+#: cp/decl.c:6089
msgid "ISO C++ forbids zero-size array"
msgstr "ISO C++ forbyder tabel med størrelsen nul"
-#: cp/decl.c:10168
+#: cp/decl.c:6096
msgid "size of array `%D' is not an integral constant-expression"
msgstr "størrelsen af tabellen '%D' er ikke af et heltalligt konstantudtryk"
-#: cp/decl.c:10171
+#: cp/decl.c:6099
msgid "size of array is not an integral constant-expression"
msgstr "størrelsen af tabel er ikke af et heltalligt konstantudtryk"
-#: cp/decl.c:10189
+#: cp/decl.c:6104
msgid "ISO C++ forbids variable-size array `%D'"
msgstr "ISO C++ forbyder tabellen '%D' med variabel størrelse"
-#: cp/decl.c:10192
+#: cp/decl.c:6106
msgid "ISO C++ forbids variable-size array"
msgstr "ISO C++ forbyder tabel med variabel størrelse"
-#: cp/decl.c:10203
+#: cp/decl.c:6128
msgid "overflow in array dimension"
msgstr "tabeldimension for stor"
-#: cp/decl.c:10262
+#: cp/decl.c:6222
msgid "declaration of `%D' as %s"
msgstr "erklæring af '%D' som %s"
-#: cp/decl.c:10264
+#: cp/decl.c:6224
#, c-format
msgid "creating %s"
msgstr "opretter %s"
-#: cp/decl.c:10276
+#: cp/decl.c:6236
msgid "declaration of `%D' as multidimensional array must have bounds for all dimensions except the first"
msgstr "erklæring af '%D' som flerdimensional tabel skal have grænser for alle dimensioner pånær den første"
-#: cp/decl.c:10279
+#: cp/decl.c:6239
msgid "multidimensional array must have bounds for all dimensions except the first"
msgstr "flerdimensional tabel skal have grænser for alle dimensioner pånær den første"
-#: cp/decl.c:10308
+#: cp/decl.c:6267
msgid "return type specification for constructor invalid"
msgstr "angivelse af returneringstypen til konstruktionsfunktion er ugyldigt"
-#: cp/decl.c:10315
+#: cp/decl.c:6274
msgid "return type specification for destructor invalid"
msgstr "angivelse af returneringstypen til destruktionsfunktion er ugyldigt"
-#: cp/decl.c:10321
+#: cp/decl.c:6280
msgid "operator `%T' declared to return `%T'"
msgstr "operator '%T' erklæret til at returnere '%T'"
-#: cp/decl.c:10323
+#: cp/decl.c:6282
msgid "return type specified for `operator %T'"
msgstr "returtype angivet for 'operator %T'"
-#: cp/decl.c:10491
+#: cp/decl.c:6425
msgid "destructors must be member functions"
msgstr "destruktionsfunktioner skal være medlemmer"
-#: cp/decl.c:10510
+#: cp/decl.c:6444
msgid "destructor `%T' must match class name `%T'"
msgstr "destruktionsfunktion '%T' skal passe til klassenavnet '%T'"
-#: cp/decl.c:10539
-msgid "variable declaration is not allowed here"
-msgstr "variabelerklæring er ikke tilladt her"
-
-#: cp/decl.c:10566
-msgid "invalid declarator"
-msgstr "ugyldig erklærer"
-
-#: cp/decl.c:10617
+#: cp/decl.c:6507
msgid "declarator-id missing; using reserved word `%D'"
msgstr "erklærer-id mangler; bruger reserveret ord '%D'"
-#: cp/decl.c:10674
+#: cp/decl.c:6561
msgid "type `%T' is not derived from type `%T'"
msgstr "typen '%T' er ikke nedarvet fra typen '%T'"
#. Parse error puts this typespec where
#. a declarator should go.
-#: cp/decl.c:10726
+#: cp/decl.c:6624
msgid "`%T' specified as declarator-id"
msgstr "'%T' angivet som erklærer-id"
-#: cp/decl.c:10728
+#: cp/decl.c:6626
msgid " perhaps you want `%T' for a constructor"
msgstr " måske ønsker du '%T' for en konstruktionsfunktion"
@@ -15199,301 +14596,302 @@ msgstr " måske ønsker du '%T' for en konstruktionsfunktion"
#. decl-specifier like in
#. std::allocator alloc;
#. Handle that gracefully.
-#: cp/decl.c:10750
+#: cp/decl.c:6648
#, c-format
msgid "invalid use of template-name '%E' in a declarator"
msgstr "ugyldig brug af skabelonsnavn '%E' i erklæring"
-#: cp/decl.c:10770
+#: cp/decl.c:6668
msgid "declaration of `%D' as non-function"
msgstr "erklæring af '%D' som ikke-funktion"
-#: cp/decl.c:10847
+#: cp/decl.c:6745
msgid "`bool' is now a keyword"
msgstr "'bool' er et reserveret ord"
-#: cp/decl.c:10849
+#: cp/decl.c:6747
msgid "extraneous `%T' ignored"
msgstr "overflødig '%T' ignoreret"
-#: cp/decl.c:10865 cp/decl.c:10910
+#: cp/decl.c:6763 cp/decl.c:6807
msgid "multiple declarations `%T' and `%T'"
msgstr "flere erklæringer '%T' og '%T'"
-#: cp/decl.c:10878
+#: cp/decl.c:6776
msgid "ISO C++ does not support `long long'"
msgstr "ISO C++ understøtter ikke 'long long'"
-#: cp/decl.c:10983 cp/decl.c:10986
+#: cp/decl.c:6880 cp/decl.c:6883
#, c-format
msgid "ISO C++ forbids declaration of `%s' with no type"
msgstr "ISO C++ forbyder erklæring af '%s' uden en type"
-#. The implicit typename extension is deprecated and will be
-#. removed. Warn about its use now.
-#: cp/decl.c:10996
-msgid "`%T' is implicitly a typename"
-msgstr "'%T' er underforstået et typenavn"
-
-#: cp/decl.c:11032
+#: cp/decl.c:6914
#, c-format
msgid "short, signed or unsigned invalid for `%s'"
msgstr "short, signed eller unsigned er ugyldig for '%s'"
-#: cp/decl.c:11037
+#: cp/decl.c:6919
#, c-format
msgid "long and short specified together for `%s'"
msgstr "long og short er begge angivet for '%s'"
-#: cp/decl.c:11048
+#: cp/decl.c:6930
#, c-format
msgid "signed and unsigned given together for `%s'"
msgstr "signed og unsigned er begge angivet for '%s'"
-#: cp/decl.c:11157
+#: cp/decl.c:7039
msgid "qualifiers are not allowed on declaration of `operator %T'"
msgstr "modifikationer er ikke tilladt i erklæring af 'operator %T'"
-#: cp/decl.c:11179
+#: cp/decl.c:7061
msgid "member `%D' cannot be declared both virtual and static"
msgstr "medlemmet '%D' kan ikke afklæres både virtual og static"
-#: cp/decl.c:11188
+#: cp/decl.c:7070
msgid "`%T::%D' is not a valid declarator"
msgstr "'%T::%D' er ikke en gyldig erklærer"
-#: cp/decl.c:11200
+#: cp/decl.c:7082
msgid "storage class specifiers invalid in parameter declarations"
msgstr "lagringsklasseanvisninger er ugyldige i parametererklæringer"
-#: cp/decl.c:11204
+#: cp/decl.c:7086
msgid "typedef declaration invalid in parameter declaration"
msgstr "typedef-erklæringer er ugyldig i parametererklæringer"
-#: cp/decl.c:11217
+#: cp/decl.c:7099
msgid "virtual outside class declaration"
msgstr "virtual angivet uden for klasseerklæring"
-#: cp/decl.c:11278
+#: cp/decl.c:7158
#, c-format
msgid "storage class specified for %s `%s'"
msgstr "lagringsklasse angivet for %s '%s'"
-#: cp/decl.c:11325
+#: cp/decl.c:7193
+#, c-format
+msgid "top-level declaration of `%s' specifies `auto'"
+msgstr "erklæring af '%s' på øverste niveau angiver 'auto'"
+
+#: cp/decl.c:7205
msgid "storage class specifiers invalid in friend function declarations"
msgstr "lagringsklasseanvisninger er ugyldige i vennefunktionserklæringer"
-#: cp/decl.c:11495
+#: cp/decl.c:7370
msgid "destructor cannot be static member function"
msgstr "destruktionsfunktionen kan ikke være en statisk medlemsfunktion"
-#: cp/decl.c:11498
+#: cp/decl.c:7373
#, c-format
msgid "destructors may not be `%s'"
msgstr "destruktionsfunktioner må ikke være '%s'"
-#: cp/decl.c:11519
+#: cp/decl.c:7394
msgid "constructor cannot be static member function"
msgstr "konstruktionsfunktionen kan ikke være en statisk medlemsfunktion"
-#: cp/decl.c:11522
+#: cp/decl.c:7397
msgid "constructors cannot be declared virtual"
msgstr "konstruktionsfunktioner kan ikke erklæres virtual"
-#: cp/decl.c:11527
+#: cp/decl.c:7402
#, c-format
msgid "constructors may not be `%s'"
msgstr "konstruktionsfunktioner må ikke være '%s'"
-#: cp/decl.c:11537
+#: cp/decl.c:7412
msgid "return value type specifier for constructor ignored"
msgstr "angivelse af typen af returværdien til konstruktionsfunktionen ignoreret"
-#: cp/decl.c:11556
+#: cp/decl.c:7431
#, c-format
msgid "can't initialize friend function `%s'"
msgstr "kan ikke tildele en startværdi til vennefunktionen '%s'"
#. Cannot be both friend and virtual.
-#: cp/decl.c:11560
+#: cp/decl.c:7435
msgid "virtual functions cannot be friends"
msgstr "en virtuel funktion kan ikke erklæres som friend"
-#: cp/decl.c:11565
+#: cp/decl.c:7440
msgid "friend declaration not in class definition"
msgstr "friend-erklæringen er ikke i klassedefinitionen"
-#: cp/decl.c:11567
+#: cp/decl.c:7442
#, c-format
msgid "can't define friend function `%s' in a local class definition"
msgstr "kan ikke definere vennefunktion '%s' i en lokal klassedefinition"
-#: cp/decl.c:11591
+#: cp/decl.c:7463
msgid "destructors may not have parameters"
msgstr "destruktionsfunktioner må ikke have parametre"
-#: cp/decl.c:11622 cp/decl.c:11629
+#: cp/decl.c:7483 cp/decl.c:7490
msgid "cannot declare reference to `%#T'"
msgstr "kan ikke erklære reference til '%#T'"
-#: cp/decl.c:11623
+#: cp/decl.c:7484
msgid "cannot declare pointer to `%#T'"
msgstr "kan ikke erklære henvisning til '%#T'"
-#: cp/decl.c:11628
+#: cp/decl.c:7489
msgid "cannot declare pointer to `%#T' member"
msgstr "kan ikke erklære henvisning til medlemmet '%#T'"
-#: cp/decl.c:11804
+#: cp/decl.c:7627
msgid "extra qualification `%T::' on member `%s' ignored"
msgstr "ekstra modifikation '%T::' af medlemmet '%s' ignoreret"
-#: cp/decl.c:11814
+#: cp/decl.c:7639
msgid "cannot declare member function `%T::%s' within `%T'"
msgstr "kan ikke erklære medlemsfunktion '%T::%s' inde i '%T'"
-#: cp/decl.c:11829
+#: cp/decl.c:7654
msgid "cannot declare member `%T::%s' within `%T'"
msgstr "kan ikke erklære medlem '%T::%s' inde i '%T'"
-#: cp/decl.c:11908
+#: cp/decl.c:7734
msgid "data member may not have variably modified type `%T'"
msgstr "datamedlem må ikke have variabelt ændret type '%T'"
-#: cp/decl.c:11910
+#: cp/decl.c:7736
msgid "parameter may not have variably modified type `%T'"
msgstr "parameter må ikke have variabelt ændret type '%T'"
#. [dcl.fct.spec] The explicit specifier shall only be used in
#. declarations of constructors within a class definition.
-#: cp/decl.c:11918
+#: cp/decl.c:7744
msgid "only declarations of constructors can be `explicit'"
msgstr "kun erklæringer af konstruktionsfunktioner kan være 'explicit'"
-#: cp/decl.c:11926
+#: cp/decl.c:7752
#, c-format
msgid "non-member `%s' cannot be declared `mutable'"
msgstr "'%s' som ikke er medlem, kan ikke erklæres 'mutable'"
-#: cp/decl.c:11931
+#: cp/decl.c:7757
#, c-format
msgid "non-object member `%s' cannot be declared `mutable'"
msgstr "'%s' som ikke er objektmedlem, kan ikke erklæres 'mutable'"
-#: cp/decl.c:11937
+#: cp/decl.c:7763
#, c-format
msgid "function `%s' cannot be declared `mutable'"
msgstr "funktionen '%s' kan ikke erklæres 'mutable'"
-#: cp/decl.c:11942
+#: cp/decl.c:7768
#, c-format
msgid "static `%s' cannot be declared `mutable'"
msgstr "static '%s' kan ikke erklæres 'mutable'"
-#: cp/decl.c:11947
+#: cp/decl.c:7773
#, c-format
msgid "const `%s' cannot be declared `mutable'"
msgstr "const '%s' kan ikke erklæres 'mutable'"
-#: cp/decl.c:11960
+#: cp/decl.c:7786
msgid "template-id `%D' used as a declarator"
msgstr "skabelons-id '%D' benyttet som erklærer"
-#: cp/decl.c:11981
+#: cp/decl.c:7807
msgid "ISO C++ forbids nested type `%D' with same name as enclosing class"
msgstr "ISO C++ forbyder indlejret type '%D' med samme navn som den omgivende klasse"
-#: cp/decl.c:12030
-msgid "typedef name may not be class-qualified"
+#: cp/decl.c:7815
+#, fuzzy
+msgid "%Jtypedef name may not be a nested-name-specifier"
msgstr "typedef-navn kan ikke klassemodificeres"
-#: cp/decl.c:12038
-msgid "invalid type qualifier for non-member function type"
+#: cp/decl.c:7861
+#, fuzzy
+msgid "%Jinvalid type qualifier for non-member function type"
msgstr "ugyldig typemodifikation for ikke-medlemsfunktionstype"
-#: cp/decl.c:12101
+#: cp/decl.c:7925
msgid "type qualifiers specified for friend class declaration"
msgstr "typemodifikationer angivet for friend class-erklæring"
-#: cp/decl.c:12106
+#: cp/decl.c:7930
msgid "`inline' specified for friend class declaration"
msgstr "'inline' angivet for friend class-erklæring"
-#: cp/decl.c:12114
+#: cp/decl.c:7938
msgid "template parameters cannot be friends"
msgstr "skabelonsparametre kan ikke være venner"
-#: cp/decl.c:12116
+#: cp/decl.c:7940
msgid "friend declaration requires class-key, i.e. `friend class %T::%D'"
msgstr "friend-erklæring kræver klasseangivelse, dvs. 'friend class %T::%D'"
-#: cp/decl.c:12120
+#: cp/decl.c:7944
msgid "friend declaration requires class-key, i.e. `friend %#T'"
msgstr "friend-erklæring kræver klasseangivelse, dvs. 'friend %#T'"
-#: cp/decl.c:12134
+#: cp/decl.c:7957
msgid "trying to make class `%T' a friend of global scope"
msgstr "forsøg på at gøre klassen '%T' til ven af det globale virkningsfelt"
-#: cp/decl.c:12145
+#: cp/decl.c:7968
msgid "invalid qualifiers on non-member function type"
msgstr "ugyldige modifikationer for ikke-medlemsfunktionstype"
-#: cp/decl.c:12164
+#: cp/decl.c:7987
msgid "abstract declarator `%T' used as declaration"
msgstr "abstrakt erklærer '%T' benyttet som erklæring"
-#: cp/decl.c:12176
+#: cp/decl.c:7999
msgid "unnamed variable or field declared void"
msgstr "unavngiven variabel eller felt erklæret void"
-#: cp/decl.c:12185
+#: cp/decl.c:8008
msgid "variable or field declared void"
msgstr "variabel eller felt erklæret void"
-#: cp/decl.c:12195
+#: cp/decl.c:8018
msgid "cannot use `::' in parameter declaration"
msgstr "kan ikke bruge '::' i parametererklæring"
#. Something like struct S { int N::j; };
-#: cp/decl.c:12234
+#: cp/decl.c:8063
msgid "invalid use of `::'"
msgstr "ugyldig brug af '::'"
-#: cp/decl.c:12246
+#: cp/decl.c:8075
msgid "function `%D' cannot be declared friend"
msgstr "funktionen '%D' kan ikke erklæres friend"
-#: cp/decl.c:12258
+#: cp/decl.c:8087
msgid "can't make `%D' into a method -- not in a class"
msgstr "kan ikke gøre '%D' til en metode - er ikke i en klasse"
-#: cp/decl.c:12267
+#: cp/decl.c:8096
msgid "function `%D' declared virtual inside a union"
msgstr "funktionen '%D' erklæret virtual inden i en union"
-#: cp/decl.c:12279
+#: cp/decl.c:8108
msgid "`%D' cannot be declared virtual, since it is always static"
msgstr "'%D' kan ikke erklæres virtual eftersom den altid er statisk"
-#: cp/decl.c:12355
+#: cp/decl.c:8185
msgid "field `%D' has incomplete type"
msgstr "feltet '%D' er af en ufuldstændig type"
-#: cp/decl.c:12357
+#: cp/decl.c:8187
msgid "name `%T' has incomplete type"
msgstr "navnet '%T' er af en ufuldstændig type"
-#: cp/decl.c:12366
+#: cp/decl.c:8196
msgid " in instantiation of template `%T'"
msgstr " i instantiering af skabelonen '%T'"
-#: cp/decl.c:12376
+#: cp/decl.c:8206
#, c-format
msgid "`%s' is neither function nor member function; cannot be declared friend"
msgstr "'%s' er hverken en almindelig funktion eller en medlemsfunktion; kan ikke erklæres som friend"
-#: cp/decl.c:12387
+#: cp/decl.c:8217
msgid "member functions are implicitly friends of their class"
msgstr "medlemsfunktioner er underforstået venner af deres klasse"
@@ -15509,99 +14907,95 @@ msgstr "medlemsfunktioner er underforstået venner af deres klasse"
#. the rest of the compiler does not correctly
#. handle the initialization unless the member is
#. static so we make it static below.
-#: cp/decl.c:12434
+#: cp/decl.c:8258
msgid "ISO C++ forbids initialization of member `%D'"
msgstr "ISO C++ forbyder tildeling af startværdi til medlemmet '%D'"
-#: cp/decl.c:12436
+#: cp/decl.c:8260
msgid "making `%D' static"
msgstr "gør '%D' statisk"
-#: cp/decl.c:12460
+#: cp/decl.c:8283
msgid "ISO C++ forbids static data member `%D' with same name as enclosing class"
msgstr "ISO C++ forbyder statisk datamedlem '%D' med samme navn som den omgivende klasse"
-#: cp/decl.c:12501
+#: cp/decl.c:8323
#, c-format
msgid "storage class `auto' invalid for function `%s'"
msgstr "lagringsklassen 'auto' er ugyldig for funktionen '%s'"
-#: cp/decl.c:12503
+#: cp/decl.c:8325
#, c-format
msgid "storage class `register' invalid for function `%s'"
msgstr "lagringsklassen 'register' er ugyldig for funktionen '%s'"
-#: cp/decl.c:12505
+#: cp/decl.c:8327
#, c-format
msgid "storage class `__thread' invalid for function `%s'"
msgstr "lagringsklassen '__thread' er ugyldig for funktionen '%s'"
-#: cp/decl.c:12516
+#: cp/decl.c:8338
#, c-format
msgid "storage class `static' invalid for function `%s' declared out of global scope"
msgstr "lagringsklassen 'static' er ugyldig for funktionen '%s' erklæret uden for det globale virkefelt"
-#: cp/decl.c:12518
+#: cp/decl.c:8340
#, c-format
msgid "storage class `inline' invalid for function `%s' declared out of global scope"
msgstr "lagringsklassen 'inline' er ugyldig for funktionen '%s' erklæret uden for det globale virkefelt"
-#: cp/decl.c:12525
+#: cp/decl.c:8347
#, c-format
msgid "virtual non-class function `%s'"
msgstr "virtuel funktion '%s' tilhører ikke en klasse"
-#: cp/decl.c:12554
+#: cp/decl.c:8377
msgid "cannot declare member function `%D' to have static linkage"
msgstr "kan ikke erklære medlemsfunktion '%D' til at have statisk kædning"
#. FIXME need arm citation
-#: cp/decl.c:12560
+#: cp/decl.c:8383
msgid "cannot declare static function inside another function"
msgstr "kan ikke erklære en funktion for static inden i en anden funktion"
-#: cp/decl.c:12588
+#: cp/decl.c:8411
msgid "`static' may not be used when defining (as opposed to declaring) a static data member"
msgstr "'static' må ikke bruges ved definering (i modsætning til erklæring) af et statisk datamedlem"
-#: cp/decl.c:12594
+#: cp/decl.c:8417
msgid "static member `%D' declared `register'"
msgstr "statisk medlem '%D' erklæret 'register'"
-#: cp/decl.c:12599
+#: cp/decl.c:8422
msgid "cannot explicitly declare member `%#D' to have extern linkage"
msgstr "kan ikke eksplicit erklære medlemmet '%#D' til at have extern-kædning"
-#: cp/decl.c:12774
+#: cp/decl.c:8564
msgid "default argument for `%#D' has type `%T'"
msgstr "standardparameter for '%#D' har typen '%T'"
-#: cp/decl.c:12777
+#: cp/decl.c:8567
msgid "default argument for parameter of type `%T' has type `%T'"
msgstr "standardparameter for parameter af typen '%T' har typen '%T'"
-#: cp/decl.c:12794
+#: cp/decl.c:8584
msgid "default argument `%E' uses local variable `%D'"
msgstr "standardparameter '%E' bruger lokal variabel '%D'"
-#: cp/decl.c:12839
+#: cp/decl.c:8628
#, c-format
msgid "invalid string constant `%E'"
msgstr "ugyldig strengkonstant '%E'"
-#: cp/decl.c:12841
+#: cp/decl.c:8630
msgid "invalid integer constant in parameter list, did you forget to give parameter name?"
msgstr "ugyldig heltalskonstant i parameterlisten, måske mangler parameternavnet?"
-#: cp/decl.c:12879
+#: cp/decl.c:8668
msgid "parameter `%D' invalidly declared method type"
msgstr "parameteren '%D' er på ugyldig vis erklæret som af en medlemsfunktionstype"
-#: cp/decl.c:12885
-msgid "parameter `%D' invalidly declared offset type"
-msgstr "parameteren '%D' er på ugyldig vis erklæret som af en offset-type"
-
-#: cp/decl.c:12909
+#: cp/decl.c:8692
msgid "parameter `%D' includes %s to array of unknown bound `%T'"
msgstr "parameteren '%D' inkluderer %s til tabel med ukendt grænse '%T'"
@@ -15620,509 +15014,352 @@ msgstr "parameteren '%D' inkluderer %s til tabel med ukendt grænse '%T'"
#. or implicitly defined), there's no need to worry about their
#. existence. Theoretically, they should never even be
#. instantiated, but that's hard to forestall.
-#: cp/decl.c:13071
+#: cp/decl.c:8851
msgid "invalid constructor; you probably meant `%T (const %T&)'"
msgstr "ugyldig konstruktionsfunktion; du mente sandsynligvis '%T (const %T&)'"
-#: cp/decl.c:13222
+#: cp/decl.c:8991
msgid "`%D' must be a nonstatic member function"
msgstr "'%D' skal være en ikke-statisk medlemsfunktion"
-#: cp/decl.c:13228
+#: cp/decl.c:8997
msgid "`%D' must be either a non-static member function or a non-member function"
msgstr "'%D' skal enten være en ikke-statisk medlemsfunktion eller ikke en medlemsfunktion"
-#: cp/decl.c:13245
+#: cp/decl.c:9014
msgid "`%D' must have an argument of class or enumerated type"
msgstr "'%D' skal have en parameter af en klasse- eller enum-type"
-#: cp/decl.c:13277
+#: cp/decl.c:9049
#, c-format
msgid "conversion to %s%s will never use a type conversion operator"
msgstr "konvertering til %s%s vil aldrig bruge en typekonverteringsoperator"
#. 13.4.0.3
-#: cp/decl.c:13284
+#: cp/decl.c:9056
msgid "ISO C++ prohibits overloading operator ?:"
msgstr "ISO C++ forbyder flertydiggørelse af operatoren ?:"
-#: cp/decl.c:13334
+#: cp/decl.c:9106
msgid "postfix `%D' must take `int' as its argument"
msgstr "postfiks '%D' skal tage mod 'int' som parameter"
-#: cp/decl.c:13338
+#: cp/decl.c:9110
msgid "postfix `%D' must take `int' as its second argument"
msgstr "postfiks '%D' skal tage mod 'int' som den anden parameter"
-#: cp/decl.c:13345
+#: cp/decl.c:9117
msgid "`%D' must take either zero or one argument"
msgstr "'%D' skal tage mod nul eller én parameter"
-#: cp/decl.c:13347
+#: cp/decl.c:9119
msgid "`%D' must take either one or two arguments"
msgstr "'%D' skal tage mod én eller to parametre"
-#: cp/decl.c:13368
+#: cp/decl.c:9140
msgid "prefix `%D' should return `%T'"
msgstr "præfiks '%D' skal returnere '%T'"
-#: cp/decl.c:13374
+#: cp/decl.c:9146
msgid "postfix `%D' should return `%T'"
msgstr "postfiks '%D' skal returnere '%T'"
-#: cp/decl.c:13383
+#: cp/decl.c:9155
msgid "`%D' must take `void'"
msgstr "'%D' skal tage mod 'void'"
-#: cp/decl.c:13385 cp/decl.c:13393
+#: cp/decl.c:9157 cp/decl.c:9165
msgid "`%D' must take exactly one argument"
msgstr "'%s' skal tage mod én parameter"
-#: cp/decl.c:13395
+#: cp/decl.c:9167
msgid "`%D' must take exactly two arguments"
msgstr "'%s' skal tage mod to parametre"
-#: cp/decl.c:13403
+#: cp/decl.c:9175
msgid "user-defined `%D' always evaluates both arguments"
msgstr "brugerdefineret '%D' evaluerer altid begge parametre"
-#: cp/decl.c:13417
+#: cp/decl.c:9189
msgid "`%D' should return by value"
msgstr "'%D' skal returnere pr. værdi (ikke reference)"
-#: cp/decl.c:13429 cp/decl.c:13432
+#: cp/decl.c:9201 cp/decl.c:9204
msgid "`%D' cannot have default arguments"
msgstr "'%D' kan ikke have standardparametre"
-#: cp/decl.c:13475
+#: cp/decl.c:9264
msgid "using typedef-name `%D' after `%s'"
msgstr "bruger typedef-navn '%D' efter '%s'"
-#: cp/decl.c:13481
+#: cp/decl.c:9270
msgid "using template type parameter `%T' after `%s'"
msgstr "bruger skabelonstypeparameter '%D' efter '%s'"
-#: cp/decl.c:13542
-msgid "`%s %T' declares a new type at namespace scope"
-msgstr "'%s %T' erklærer en ny type ved navnerumsvirkefelt"
+#: cp/decl.c:9278
+#, fuzzy
+msgid "`%T' referred to as `%s'"
+msgstr "'%#D' omerklæret som %C"
+
+#: cp/decl.c:9284
+#, fuzzy
+msgid "`%T' referred to as enum"
+msgstr "'%#D' omerklæret som %C"
-#: cp/decl.c:13545
-msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
-msgstr " navne fra afhængige stamklasser er ikke synlige for umodificerede navneopslag - benyt '%s %T::%T' for at referere til den nedarvede type"
+#. If a class template appears as elaborated type specifier
+#. without a template header such as:
+#.
+#. template <class T> class C {};
+#. void f(class C); // No template header here
+#.
+#. then the required template argument is missing.
+#: cp/decl.c:9299
+#, fuzzy
+msgid "template argument required for `%s %T'"
+msgstr "skabelonsparameter er påkrævet for '%T'"
-#: cp/decl.c:13663
+#: cp/decl.c:9445
msgid "use of enum `%#D' without previous declaration"
msgstr "brug af enum '%#D' uden tidligere erklæring"
-#: cp/decl.c:13749
+#: cp/decl.c:9530
msgid "derived union `%T' invalid"
msgstr "nedarvet union '%T' ugyldig"
-#: cp/decl.c:13795
+#: cp/decl.c:9583
msgid "base type `%T' fails to be a struct or class type"
msgstr "stamklassetype '%T' er hverken en struct- eller class-type"
-#: cp/decl.c:13805
-msgid "base class `%T' has incomplete type"
-msgstr "stamklasse '%T' er af en ufuldstændig type"
-
-#: cp/decl.c:13813
+#: cp/decl.c:9591
msgid "recursive type `%T' undefined"
msgstr "rekursiv type '%T' ikke defineret"
-#: cp/decl.c:13815
+#: cp/decl.c:9593
msgid "duplicate base type `%T' invalid"
msgstr "stamklassetype '%T' optræder mere end én gang"
-#: cp/decl.c:13926
+#: cp/decl.c:9671
+msgid "Java class '%T' cannot have multiple bases"
+msgstr ""
+
+#: cp/decl.c:9673
+#, fuzzy
+msgid "Java class '%T' cannot have virtual bases"
+msgstr "stamklassen '%#T' har en ikke-virtuel destruktionsfunktion"
+
+#: cp/decl.c:9713
msgid "multiple definition of `%#T'"
msgstr "flere definitioner af '%#T'"
-#: cp/decl.c:13927
-msgid "previous definition here"
+#: cp/decl.c:9714
+#, fuzzy
+msgid "%Jprevious definition here"
msgstr "tidligere definition her"
-#: cp/decl.c:14030
+#. DR 377
+#.
+#. IF no integral type can represent all the enumerator values, the
+#. enumeration is ill-formed.
+#: cp/decl.c:9849
msgid "no integral type can represent all of the enumerator values for `%T'"
msgstr ""
-#: cp/decl.c:14106
+#: cp/decl.c:9939
msgid "enumerator value for `%D' not integer constant"
msgstr "enum-værdi for '%D' er ikke en heltalskonstant"
-#: cp/decl.c:14126
+#: cp/decl.c:9959
msgid "overflow in enumeration values at `%D'"
msgstr "enum-værdier for store ved '%D'"
-#: cp/decl.c:14195
+#: cp/decl.c:10028
msgid "return type `%#T' is incomplete"
msgstr "returtype '%#T' er ufuldstændig"
-#: cp/decl.c:14309
-msgid "semicolon missing after declaration of `%#T'"
-msgstr "semikolon mangler efter erklæring af '%#T'"
-
-#: cp/decl.c:14330
+#: cp/decl.c:10148
msgid "return type for `main' changed to `int'"
msgstr "returtype for 'main' ændret til 'int'"
-#: cp/decl.c:14361
+#: cp/decl.c:10178
msgid "`%D' implicitly declared before its definition"
msgstr "'%s' er underforstået erklæret efter dens definition"
-#: cp/decl.c:14383 cp/typeck.c:6314
+#: cp/decl.c:10200 cp/typeck.c:6011
msgid "`operator=' should return a reference to `*this'"
msgstr "'operator=' bør returnere en reference til '*this'"
-#: cp/decl.c:14643
+#: cp/decl.c:10472
msgid "parameter `%D' declared void"
msgstr "parameteren '%D' erklæret void"
-#: cp/decl.c:15130
+#: cp/decl.c:10938
+#, fuzzy
+msgid "invalid member function declaration"
+msgstr "ugyldig medlemsskabelonerklæring '%D'"
+
+#: cp/decl.c:10955
msgid "`%D' is already defined in class `%T'"
msgstr "'%D' er allerede defineret i klassen '%T'"
-#: cp/decl.c:15348
+#: cp/decl.c:11168
msgid "static member function `%#D' declared with type qualifiers"
msgstr "statisk medlemsfunktion '%#D' erklæret med typemodifikationer"
-#: cp/decl2.c:153
+#: cp/decl2.c:143
#, c-format
msgid "duplicate type qualifiers in %s declaration"
msgstr "dobbelte typemodifikationer i %s-erklæring"
-#: cp/decl2.c:192
-msgid "template `%#D' instantiated in file without #pragma interface"
-msgstr "skabelon '%#D' instantieret i fil uden #pragma interface"
-
-#: cp/decl2.c:198
-msgid "template `%#D' defined in file without #pragma interface"
-msgstr "skabelon '%#D' defineret i fil uden #pragma interface"
-
-#: cp/decl2.c:365
+#: cp/decl2.c:316
msgid "name missing for member function"
msgstr "navn mangler for medlemsfunktion"
-#. Something has gone very wrong. Assume we are mistakenly reducing
-#. an expression instead of a declaration.
-#: cp/decl2.c:428
-msgid "parser may be lost: is there a '{' missing somewhere?"
-msgstr "fortolkeren kan være faret vild: mangler der en '{' et eller andet sted?"
-
-#: cp/decl2.c:459 cp/decl2.c:473
+#: cp/decl2.c:408 cp/decl2.c:422
msgid "ambiguous conversion for array subscript"
msgstr "tvetydig konvertering af tabelindeks"
-#: cp/decl2.c:467
+#: cp/decl2.c:416
msgid "invalid types `%T[%T]' for array subscript"
msgstr "ugyldige typer '%T[%T]' for tabelopslag"
-#: cp/decl2.c:515
+#: cp/decl2.c:464
msgid "type `%#T' argument given to `delete', expected pointer"
msgstr "parameter af typen '%#T' givet til 'delete', forventede henvisning"
-#: cp/decl2.c:523
+#: cp/decl2.c:472
msgid "anachronistic use of array size in vector delete"
msgstr "forældet brug af tabelstørrelse i tabelformen af delete"
-#: cp/decl2.c:533
+#: cp/decl2.c:482
msgid "cannot delete a function. Only pointer-to-objects are valid arguments to `delete'"
msgstr "kan ikke udføre delete på en funktion; kun henvisninger til objekter er gyldige som parameter til 'delete'"
-#: cp/decl2.c:540
+#: cp/decl2.c:489
msgid "deleting `%T' is undefined"
msgstr "benyttelse af delete på '%T' er ikke defineret"
-#: cp/decl2.c:548
+#: cp/decl2.c:497
msgid "deleting array `%#D'"
msgstr "benyttelse af delete på tabellen '%#D'"
#. 14.5.2.2 [temp.mem]
#.
#. A local class shall not have member templates.
-#: cp/decl2.c:582
+#: cp/decl2.c:530
msgid "invalid declaration of member template `%#D' in local class"
msgstr "ugyldig erklæring af medlemsskabelon '%#D' i lokal klasse"
-#: cp/decl2.c:591
+#: cp/decl2.c:539
msgid "invalid use of `virtual' in template declaration of `%#D'"
msgstr "ugyldig brug af 'virtual' i skabelonserklæring af '%#D'"
-#: cp/decl2.c:601 cp/pt.c:2745
+#: cp/decl2.c:549 cp/pt.c:2830
msgid "template declaration of `%#D'"
msgstr "skabelonserklæring af '%#D'"
-#: cp/decl2.c:651
+#: cp/decl2.c:598
msgid "Java method '%D' has non-Java return type `%T'"
msgstr "Java-metoden '%D' har har en returtype '%T' som ikke er fra Java"
-#: cp/decl2.c:660
+#: cp/decl2.c:614
msgid "Java method '%D' has non-Java parameter type `%T'"
msgstr "Java-metoden '%D' har har en parametertype '%T' som ikke er fra Java"
-#: cp/decl2.c:746
+#: cp/decl2.c:705
msgid "prototype for `%#D' does not match any in class `%T'"
msgstr "prototypen for '%#D' passer ikke nogen i klassen '%T'"
-#: cp/decl2.c:828
+#: cp/decl2.c:784
msgid "local class `%#T' shall not have static data member `%#D'"
msgstr "lokal klasse '%#T' må ikke have det statiske datamedlem '%#D'"
-#: cp/decl2.c:836
+#: cp/decl2.c:792
msgid "initializer invalid for static member with constructor"
msgstr "tildeling af startværdi er ugyldig for statisk medlem med konstruktionsfunktion"
-#: cp/decl2.c:839
+#: cp/decl2.c:795
msgid "(an out of class initialization is required)"
msgstr "(en klargøring uden for klassens erklæring er nødvendig)"
-#: cp/decl2.c:898
-msgid "invalid data member initialization"
-msgstr "ugyldig tildeling af startværdi til datamedlem"
-
-#: cp/decl2.c:901
-msgid "(use `=' to initialize static data members)"
-msgstr "(brug '=' for at klargøre statiske datamedlemmer)"
-
-#: cp/decl2.c:947
+#: cp/decl2.c:878
msgid "member `%D' conflicts with virtual function table field name"
msgstr "medlemmet '%D' er i konflikt med feltnavn fra den virtuelle funktionstabel"
-#: cp/decl2.c:967
+#: cp/decl2.c:895
msgid "`%D' is already defined in `%T'"
msgstr "'%D' er allerede defineret i '%T'"
-#: cp/decl2.c:1014
+#: cp/decl2.c:942
msgid "field initializer is not constant"
msgstr "feltets startværdi er ikke en konstant"
-#: cp/decl2.c:1038
+#: cp/decl2.c:970
msgid "`asm' specifiers are not permitted on non-static data members"
msgstr "'asm'-angivelser er ikke tilladt på ikke-statiske datamedlemmer"
-#: cp/decl2.c:1090
+#: cp/decl2.c:1020
msgid "cannot declare `%D' to be a bit-field type"
msgstr "kan ikke erklære '%D' til at være en bitfeltstype"
-#: cp/decl2.c:1100
+#: cp/decl2.c:1030
msgid "cannot declare bit-field `%D' with function type"
msgstr "kan ikke erklære bitfelt '%D' med funktionstype"
-#: cp/decl2.c:1107
+#: cp/decl2.c:1037
msgid "`%D' is already defined in the class %T"
msgstr "'%D' er allerede defineret i klassen '%T'"
-#: cp/decl2.c:1114
+#: cp/decl2.c:1044
msgid "static member `%D' cannot be a bit-field"
msgstr "statisk medlem '%D' kan ikke være et bitfelt"
-#: cp/decl2.c:1201
+#: cp/decl2.c:1103
msgid "initializer specified for non-member function `%D'"
msgstr "startværdi angivet for ikke-medlemsfunktion '%D'"
-#: cp/decl2.c:1205
+#: cp/decl2.c:1107
msgid "invalid initializer for virtual method `%D'"
msgstr "ugyldig startværdi til virtuel medlemsfunktion '%D'"
-#: cp/decl2.c:1319
+#: cp/decl2.c:1154
msgid "anonymous struct not inside named type"
msgstr "anonym struct er ikke inden i en navngiven type"
-#: cp/decl2.c:1415
+#: cp/decl2.c:1224
msgid "namespace-scope anonymous aggregates must be static"
msgstr "anonyme variabler af sammensatte typer i navnerumsvirkefelt skal erklæres static"
-#: cp/decl2.c:1428
-msgid "anonymous aggregate with no members"
+#: cp/decl2.c:1231
+#, fuzzy
+msgid "anonymous union with no members"
msgstr "anonym sammensat type uden medlemmer"
-#: cp/decl2.c:1497
+#: cp/decl2.c:1265
msgid "`operator new' must return type `%T'"
msgstr "'operator new' skal returnere typen '%T'"
-#: cp/decl2.c:1505
+#: cp/decl2.c:1273
msgid "`operator new' takes type `size_t' (`%T') as first parameter"
msgstr "den første parameter til 'operator new' skal være af typen 'size_t' ('%T')"
-#: cp/decl2.c:1532
+#: cp/decl2.c:1299
msgid "`operator delete' must return type `%T'"
msgstr "'operator delete' skal returnere typen '%T'"
-#: cp/decl2.c:1540
+#: cp/decl2.c:1307
msgid "`operator delete' takes type `%T' as first parameter"
msgstr "den første parameter til 'operator delete' skal være af typen '%T'"
-#. Overflow occurred. That means there are at least 4 billion
-#. initialization functions.
-#: cp/decl2.c:2282
-msgid "too many initialization functions required"
-msgstr "for mange klargøringsfunktioner påkrævet"
-
-#: cp/decl2.c:3006
+#: cp/decl2.c:2814
msgid "inline function `%D' used but never defined"
msgstr "indbygget funktion '%D' benyttet, men aldrig defineret"
-#: cp/decl2.c:3135
-msgid "use of old-style cast"
-msgstr "brug af ældre type typeomtvingning"
-
-#: cp/decl2.c:3860
-msgid "use of `%D' is ambiguous"
-msgstr "brug af '%D' er tvetydigt"
-
-#: cp/decl2.c:3861
-msgid " first declared as `%#D' here"
-msgstr " først erklæret som '%#D' her"
-
-#: cp/decl2.c:3864
-msgid " also declared as `%#D' here"
-msgstr " også erklæret som '%#D' her"
-
-#: cp/decl2.c:3879
-msgid "`%D' denotes an ambiguous type"
-msgstr "'%D' angiver en tvetydig type"
-
-#: cp/decl2.c:3880
-msgid " first type here"
-msgstr " første type her"
-
-#: cp/decl2.c:3881
-msgid " other type here"
-msgstr " anden type her"
-
-#: cp/decl2.c:3982
-msgid "declaration of `%D' not in a namespace surrounding `%D'"
-msgstr "erklæring af '%D' er ikke i et navnerum der omgiver '%D'"
-
-#: cp/decl2.c:4016
-msgid "`%D' should have been declared inside `%D'"
-msgstr "'%D' skulle have været erklæret inden i '%D'"
-
-#: cp/decl2.c:4152
-msgid "`%D' is not a function,"
-msgstr "'%s' er ikke en funktion,"
-
-#: cp/decl2.c:4153
-msgid " conflict with `%D'"
-msgstr " konflikt med '%D'"
-
-#. The parser did not find it, so it's not there.
-#: cp/decl2.c:4473
-msgid "unknown namespace `%D'"
-msgstr "ukendt navnerum '%D'"
-
-#: cp/decl2.c:4507 cp/decl2.c:4794
-msgid "`%T' is not a namespace"
-msgstr "'%T' er ikke et navnerum"
-
-#: cp/decl2.c:4509
-msgid "`%D' is not a namespace"
-msgstr "'%D' er ikke et navnerum"
-
-#: cp/decl2.c:4518
-msgid "a using-declaration cannot specify a template-id. Try `using %D'"
-msgstr "en using-erklæring kan ikke angive en skabelons-id; prøv 'using %D'"
-
-#: cp/decl2.c:4532
-msgid "namespace `%D' not allowed in using-declaration"
-msgstr "navnerum '%D' ikke tilladt i using-erklæring"
-
-#: cp/decl2.c:4561
-msgid "`%D' not declared"
-msgstr "'%D' ikke erklæret"
-
-#. If the OLD_FN was really declared, the
-#. declarations don't match.
-#: cp/decl2.c:4573 cp/decl2.c:4615 cp/decl2.c:4640
-msgid "`%D' is already declared in this scope"
-msgstr "'%D' er allerede erklæret i dette navnerum"
-
-#: cp/decl2.c:4646
-msgid "using declaration `%D' introduced ambiguous type `%T'"
-msgstr "using-erklæring '%D' introducerede tvetydig type '%T'"
-
-#: cp/decl2.c:4740
-msgid "using-declaration for non-member at class scope"
-msgstr "using-erklæring for ikke-medlem ved klassevirkefelt"
-
-#: cp/decl2.c:4746
-msgid "using-declaration for destructor"
-msgstr "using-erklæring for destruktionsfunktion"
-
-#: cp/decl2.c:4752
-msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
-msgstr "en using-erklæring kan ikke angive en skabelons-id; prøv 'using %T::%D'"
-
-#: cp/decl2.c:4788
-msgid "namespace `%T' undeclared"
-msgstr "navnerummet '%T' er ikke erklæret"
-
-#: cp/decl2.c:4817
+#: cp/decl2.c:2960
msgid "default argument missing for parameter %P of `%+#D'"
msgstr "standardparameter mangler for parameter %P i '%+#D'"
-#: cp/decl2.c:4941
-msgid "extra qualification `%T::' on member `%D' ignored"
-msgstr "ekstra modifikation '%T::' af medlemmet '%D' ignoreret"
-
-#: cp/decl2.c:4945
-msgid "`%T' does not have a class or union named `%D'"
-msgstr "'%T' har ikke en klasse eller en union ved navn '%D'"
-
-#: cp/decl2.c:4963
-msgid "`%T' is not a class or union type"
-msgstr "'%T' er ikke af en klasse- eller union-type"
-
-#: cp/decl2.c:4977
-msgid "template argument is required for `%T'"
-msgstr "skabelonsparameter er påkrævet for '%T'"
-
-#: cp/decl2.c:4995
-msgid "declaration of `%D' in `%D' which does not enclose `%D'"
-msgstr "erklæring af '%D' i '%D' som ikke omgiver '%D'"
-
-#: cp/error.c:35
-#, c-format
-msgid "`%s' not supported by %s"
-msgstr "'%s' ikke understøttet af %s"
-
-#: cp/error.c:571
-#, c-format
-msgid "<anonymous %s>"
-msgstr "<anonym %s>"
-
-#: cp/error.c:810
-#, c-format
-msgid "(static %s for %s)"
-msgstr "(statisk %s for %s)"
-
-#: cp/error.c:1503
-#, c-format
-msgid "\\x%x"
-msgstr "\\x%x"
-
-#: cp/error.c:2473
-#, c-format
-msgid "In %s `%s':"
-msgstr "I %s '%s':"
-
-#: cp/error.c:2530
-#, c-format
-msgid "%s: In instantiation of `%s':\n"
-msgstr "%s: i instantiering af '%s':\n"
-
-#: cp/error.c:2554
-#, c-format
-msgid "%s:%d: instantiated from `%s'\n"
-msgstr "%s:%d: instantieret fra '%s'\n"
-
-#: cp/error.c:2559
-#, c-format
-msgid "%s:%d: instantiated from here\n"
-msgstr "%s:%d: instantieret herfra\n"
-
#. damn ICE suppression
-#: cp/error.c:2713
+#: cp/error.c:2374
#, c-format
msgid "unexpected letter `%c' in locate_error\n"
msgstr "uventet bogstav '%c' i locate_error\n"
@@ -16141,158 +15378,180 @@ msgstr "kald til Java 'catch' eller 'throw' mens 'jthrowable' ikke er defineret"
msgid "type `%T' is not derived from `java::lang::Throwable'"
msgstr "typen '%T' nedarver ikke fra 'java::lang::Throwable'"
-#: cp/except.c:322
+#: cp/except.c:321
msgid "mixing C++ and Java catches in a single translation unit"
msgstr "blander C++ og Java 'catch' i én oversættelsesenhed"
-#: cp/except.c:639
+#: cp/except.c:630
msgid "throwing NULL, which has integral, not pointer type"
msgstr "kaster NULL som har en heltals-, ikke en henvisningstype"
-#: cp/except.c:730
+#: cp/except.c:653 cp/init.c:2029
+#, fuzzy
+msgid "`%D' should never be overloaded"
+msgstr "'%D' skal returnere pr. værdi (ikke reference)"
+
+#: cp/except.c:722
msgid " in thrown expression"
msgstr " i kastet udtryk"
-#: cp/except.c:856
+#: cp/except.c:843
msgid "expression '%E' of abstract class type '%T' cannot be used in throw-expression"
msgstr "udtrykket '%E' med den abstrakte klassetype '%T' kan ikke bruges i throw-udtryk"
-#: cp/except.c:944
+#: cp/except.c:925
msgid "exception of type `%T' will be caught"
msgstr "undtagelse af typen '%T' vil blive fanget"
-#: cp/except.c:947
+#: cp/except.c:928
msgid " by earlier handler for `%T'"
msgstr " af tidligere håndtering af '%T'"
-#: cp/except.c:968
+#: cp/except.c:949
msgid "`...' handler must be the last handler for its try block"
msgstr "håndteringen '...' skal være den sidste håndtering i try-blokken"
-#: cp/friend.c:159
+#: cp/friend.c:151
msgid "`%D' is already a friend of class `%T'"
msgstr "'%D' er allerede en ven af klassen '%T'"
-#: cp/friend.c:161
-msgid "previous friend declaration of `%D'"
-msgstr "tidligere friend-erklæring af '%D'"
-
-#: cp/friend.c:206
+#: cp/friend.c:202
msgid "invalid type `%T' declared `friend'"
msgstr "ugyldig type '%T' erklæret 'friend'"
#. [temp.friend]
#. Friend declarations shall not declare partial
#. specializations.
-#: cp/friend.c:222
+#: cp/friend.c:218
msgid "partial specialization `%T' declared `friend'"
msgstr "partiel specialisering '%T' erklæret 'friend'"
-#: cp/friend.c:231
+#: cp/friend.c:228
msgid "class `%T' is implicitly friends with itself"
msgstr "klassen '%T' er underforstået ven med sig selv"
#. template <class T> friend typename S<T>::X;
-#: cp/friend.c:249
+#: cp/friend.c:246
msgid "typename type `%#T' declared `friend'"
msgstr "typename-type '%#T' erklæret 'friend'"
#. template <class T> friend class T;
-#: cp/friend.c:255
+#: cp/friend.c:252
msgid "template parameter type `%T' declared `friend'"
msgstr "skabelonsparametertypen '%T' erklæret 'friend'"
#. template <class T> friend class A; where A is not a template
-#: cp/friend.c:261
+#: cp/friend.c:258
msgid "`%#T' is not a template"
msgstr "'%#T' er ikke en skabelon"
-#: cp/friend.c:276
+#: cp/friend.c:277
+#, fuzzy
+msgid "`%D' is already a friend of `%T'"
+msgstr "'%T' er allerede en ven af '%T'"
+
+#: cp/friend.c:287
msgid "`%T' is already a friend of `%T'"
msgstr "'%T' er allerede en ven af '%T'"
-#: cp/friend.c:376
+#: cp/friend.c:413
msgid "member `%D' declared as friend before type `%T' defined"
msgstr "medlemmet '%D' erklæret som friend før typen '%T' er defineret"
-#: cp/friend.c:431
+#: cp/friend.c:470
msgid "friend declaration `%#D' declares a non-template function"
msgstr "friend-erklæring '%#D' erklærer en ikke-skabelonsfunktion"
-#: cp/friend.c:434
+#: cp/friend.c:473
msgid "(if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) -Wno-non-template-friend disables this warning"
msgstr "(hvis dette er hvad du ønsker, så sikr dig at funktionsskabelonen allerede er blevet erklæret og tilføj <> efter funktionsnavnet her) -Wno-non-template-friend deaktiverer denne advarsel"
-#: cp/g++spec.c:211 java/jvspec.c:423
+#: cp/g++spec.c:229 java/jvspec.c:415
#, c-format
msgid "argument to `%s' missing\n"
msgstr "en parameter til '%s' mangler\n"
-#: cp/init.c:334
+#: cp/init.c:318
msgid "`%D' should be initialized in the member initialization list"
msgstr "'%D' bør blive klargjort i medlemsklargøringslisten"
-#: cp/init.c:384
+#: cp/init.c:368
msgid "default-initialization of `%#D', which has reference type"
msgstr "standardklargøring af '%#D' som er af en referencetype"
-#: cp/init.c:389
+#: cp/init.c:373
msgid "uninitialized reference member `%D'"
msgstr "referencemedlem '%D' uden startværdi"
-#: cp/init.c:397
-msgid "initializer list treated as compound expression"
-msgstr "klargøringsliste behandlet som et sammensat udtryk"
-
-#: cp/init.c:538
+#: cp/init.c:511
msgid "`%D' will be initialized after"
msgstr "'%D' vil blive klargjort efter"
-#: cp/init.c:541
+#: cp/init.c:514
msgid "base `%T' will be initialized after"
msgstr "stamklasse '%T' vil blive klargjort efter"
-#: cp/init.c:544
+#: cp/init.c:517
msgid " `%#D'"
msgstr " '%#D'"
-#: cp/init.c:546
+#: cp/init.c:519
msgid " base `%T'"
msgstr " stamklasse '%T'"
-#: cp/init.c:564
+#: cp/init.c:520
+#, fuzzy
+msgid " when initialized here"
+msgstr "'%D' vil blive klargjort efter"
+
+#: cp/init.c:536
+msgid "multiple initializations given for `%D'"
+msgstr "flere startværdier angivet for '%D'"
+
+#: cp/init.c:538
msgid "multiple initializations given for base `%T'"
msgstr "flere startværdier angivet for stamklassen '%T'"
-#: cp/init.c:631
+#: cp/init.c:605
msgid "initializations for multiple members of `%T'"
msgstr "startværdier for flere medlemmer af '%T'"
-#: cp/init.c:688
+#: cp/init.c:662
msgid "base class `%#T' should be explicitly initialized in the copy constructor"
msgstr "stamklassen '%#T' bør eksplicit blive klargjort i kopikonstruktionsfunktionen"
-#: cp/init.c:926
+#: cp/init.c:892 cp/init.c:911
msgid "class `%T' does not have any field named `%D'"
msgstr "klassen '%T' har ikke et felt ved navn '%D'"
-#: cp/init.c:932
-msgid "field `%#D' is static; the only point of initialization is its definition"
+#: cp/init.c:898
+#, fuzzy
+msgid "`%#D' is a static data member; it can only be initialized at its definition"
msgstr "feltet '%#D' er statisk; det eneste sted det kan klargøres er ved dets definition"
-#: cp/init.c:965
+#: cp/init.c:905
+#, fuzzy
+msgid "`%#D' is not a non-static data member of `%T'"
+msgstr "'%#D' er ikke et statisk medlem af '%#T'"
+
+#: cp/init.c:944
msgid "unnamed initializer for `%T', which has no base classes"
msgstr "unavngiven klargøring af '%T' som ikke har nogen stamklasser"
-#: cp/init.c:972
+#: cp/init.c:951
msgid "unnamed initializer for `%T', which uses multiple inheritance"
msgstr "unavngiven klargøring af '%T' som benytter multipel nedarvning"
-#: cp/init.c:1007
+#: cp/init.c:1006
+#, fuzzy
+msgid "'%D' is both a direct base and an indirect virtual base"
+msgstr "typen '%D' er ikke en direkte eller en virtuel stamklasse til '%T'"
+
+#: cp/init.c:1014
msgid "type `%D' is not a direct or virtual base of `%T'"
msgstr "typen '%D' er ikke en direkte eller en virtuel stamklasse til '%T'"
-#: cp/init.c:1010
+#: cp/init.c:1017
msgid "type `%D' is not a direct base of `%T'"
msgstr "typen '%D' er ikke en direkte stamklasse til '%T'"
@@ -16308,535 +15567,861 @@ msgstr "typen '%D' er ikke en direkte stamklasse til '%T'"
#. COMPLEX zees(1.0, 0.0)[10];
#. }
#.
-#: cp/init.c:1104
+#: cp/init.c:1109
msgid "bad array initializer"
msgstr "ugyldig tildeling af startværdi til tabel"
-#: cp/init.c:1311
+#: cp/init.c:1303
msgid "`%T' is not an aggregate type"
msgstr "'%T' er ikke en sammensat type"
-#: cp/init.c:1334
+#: cp/init.c:1324
msgid "`%T' fails to be an aggregate typedef"
msgstr "'%T' er ikke en sammensat typedef"
-#: cp/init.c:1343
+#: cp/init.c:1333
msgid "type `%T' is of non-aggregate type"
msgstr "typen '%T' er ikke en sammensat type"
-#: cp/init.c:1446
-msgid "cannot call destructor `%T::~%T' without object"
-msgstr "kan ikke kalde destruktionsfunktion '%T::~%T' uden objekt"
-
-#: cp/init.c:1490
-msgid "invalid use of non-static field `%D'"
-msgstr "ugyldig brug af ikke-statisk felt '%D'"
-
-#. We can get here when processing a bad default
-#. argument, like:
-#. struct S { int a; void f(int i = a); }
-#: cp/init.c:1499 cp/method.c:160
-msgid "invalid use of member `%D'"
-msgstr "ugyldig brug af medlemmet '%D'"
-
-#: cp/init.c:1509
-msgid "no method `%T::%D'"
-msgstr "ingen metode ved navn '%T::%D'"
+#: cp/init.c:1425 cp/typeck.c:1798
+msgid "qualified type `%T' does not match destructor name `~%T'"
+msgstr "den modificerede type '%T' passer ikke til destruktionsfunktionsnavnet '~%T'"
-#: cp/init.c:1602
+#: cp/init.c:1433
msgid "incomplete type `%T' does not have member `%D'"
msgstr "ufuldstændig type '%T' har ikke medlemmet '%D'"
-#: cp/init.c:1676
+#: cp/init.c:1452
msgid "`%D' is not a member of type `%T'"
msgstr "'%D' er ikke et medlem af typen '%T'"
-#: cp/init.c:1695
+#: cp/init.c:1471
msgid "invalid pointer to bit-field `%D'"
msgstr "ugyldig henvisning til bitfeltet '%D'"
-#: cp/init.c:1734
-msgid "object missing in use of pointer-to-member construct"
-msgstr "der mangler et objekt i henvisning til medlem-konstruktion"
-
-#: cp/init.c:1774
-msgid "member `%D' is non-static but referenced as a static member"
-msgstr "medlemmet '%D' er ikke statisk, men refereres som et statisk medlem"
-
-#: cp/init.c:1776 cp/typeck.c:2826 cp/typeck.c:2930
-msgid "at this point in file"
-msgstr "ved dette sted i filen"
+#: cp/init.c:1573
+#, fuzzy
+msgid "invalid use of non-static member function `%D'"
+msgstr "ugyldig brug af ikke-statisk felt '%D'"
-#: cp/init.c:1813
-#, c-format
-msgid "object missing in `%E'"
-msgstr "objekt mangler i '%E'"
+#: cp/init.c:1579 cp/semantics.c:1236
+#, fuzzy
+msgid "invalid use of non-static data member `%D'"
+msgstr "ugyldig brug af ikke-statisk felt '%D'"
-#: cp/init.c:1944
+#: cp/init.c:1718
msgid "new of array type fails to specify size"
msgstr "new virkende på en tabeltype mangler at angive størrelsen"
-#: cp/init.c:1955
+#: cp/init.c:1729
msgid "size in array new must have integral type"
msgstr "størrelse i tabel-new skal være en heltalstype"
-#: cp/init.c:1961
+#: cp/init.c:1735
msgid "zero size array reserves no space"
msgstr "tabel med størrelsen nul reserverer ingen plads"
-#: cp/init.c:2026
+#: cp/init.c:1801
msgid "new cannot be applied to a reference type"
msgstr "new kan ikke bruges på en referencetype"
-#: cp/init.c:2032
+#: cp/init.c:1807
msgid "new cannot be applied to a function type"
msgstr "new kan ikke bruges på en funktionstype"
-#: cp/init.c:2079
+#: cp/init.c:1853
msgid "call to Java constructor, while `jclass' undefined"
msgstr "kald af Java-konstruktionsfunktion mens 'jclass' ikke er defineret"
-#: cp/init.c:2095
+#: cp/init.c:1869
msgid "can't find class$"
msgstr "kan ikke finde class$"
-#: cp/init.c:2209
+#: cp/init.c:1995
msgid "invalid type `void' for new"
msgstr "ugyldig type 'void' til new"
-#: cp/init.c:2261
+#: cp/init.c:2005
+msgid "uninitialized const in `new' of `%#T'"
+msgstr "konstant uden startværdi i 'new' af '%#T'"
+
+#: cp/init.c:2024
#, c-format
msgid "call to Java constructor with `%s' undefined"
msgstr "kald af Java-konstruktionsfunktion mens '%s' ikke er defineret"
-#: cp/init.c:2369
+#: cp/init.c:2065
+msgid "request for member `%D' is ambiguous"
+msgstr "forespørgsel efter medlemmet '%D' er tvetydigt"
+
+#: cp/init.c:2189
msgid "ISO C++ forbids initialization in array new"
msgstr "ISO C++ forbyder startværdier i tabel-new"
-#: cp/init.c:2391 cp/typeck2.c:367 cp/typeck2.c:1208
-msgid "initializer list being treated as compound expression"
-msgstr "klargøringsliste bliver behandlet som et sammensat udtryk"
-
-#: cp/init.c:2397
+#: cp/init.c:2213
msgid "ISO C++ forbids aggregate initializer to new"
msgstr "ISO C++ forbyder sammensat startværditildeling ved new"
-#: cp/init.c:2485
-msgid "uninitialized const in `new' of `%#T'"
-msgstr "konstant uden startværdi i 'new' af '%#T'"
-
-#: cp/init.c:2864
+#: cp/init.c:2658
msgid "initializer ends prematurely"
msgstr "startværdien slutter for tidligt"
-#: cp/init.c:2934
+#: cp/init.c:2715
msgid "cannot initialize multi-dimensional array with initializer"
msgstr "kan ikke klargøre multidimensional tabel med startværdi"
-#: cp/init.c:3124
+#: cp/init.c:2876
+msgid "possible problem detected in invocation of delete operator:"
+msgstr ""
+
+#: cp/init.c:2879
+msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined."
+msgstr ""
+
+#: cp/init.c:2900
msgid "unknown array size in delete"
msgstr "ukendt tabelstørrelse i delete"
-#: cp/init.c:3389
+#: cp/init.c:3165
msgid "type to vector delete is neither pointer or array type"
msgstr "variablen til tabel-delete er hverken af en henvisnings- eller en tabeltype"
-#: cp/lex.c:136
+#: cp/lex.c:99
msgid "type name expected before `*'"
msgstr "der forventedes et typenavn før '*'"
-#: cp/lex.c:158
-msgid "cannot declare references to references"
-msgstr "kan ikke erklære referencer til referencer"
-
-#: cp/lex.c:163
-msgid "cannot declare pointers to references"
-msgstr "kan ikke erklære henvisninger til referencer"
-
-#: cp/lex.c:167
-msgid "type name expected before `&'"
-msgstr "der forventedes et typenavn før '&'"
-
-#: cp/lex.c:894
-#, c-format
-msgid "semicolon missing after %s declaration"
-msgstr "semikolon mangler efter %s-erklæring"
-
-#: cp/lex.c:897
-msgid "semicolon missing after declaration of `%T'"
-msgstr "semikolon mangler efter erklæring af '%T'"
-
-#: cp/lex.c:945
+#: cp/lex.c:501
#, c-format
msgid "junk at end of #pragma %s"
msgstr "ragelse i slutningen 'af #pragma %s'"
-#: cp/lex.c:952
+#: cp/lex.c:508
#, c-format
msgid "invalid #pragma %s"
msgstr "ugyldig #pragma %s"
-#: cp/lex.c:961
+#: cp/lex.c:516
msgid "#pragma vtable no longer supported"
msgstr "'#pragma vtable' understøttes ikke længere"
-#: cp/lex.c:1038
+#: cp/lex.c:590
#, c-format
msgid "#pragma implementation for %s appears after file is included"
msgstr "'#pragma implementation' til %s optræder efter filen er inkluderet"
-#: cp/lex.c:1063
+#: cp/lex.c:614
msgid "junk at end of #pragma GCC java_exceptions"
msgstr "ragelse i slutningen af #pragma GCC java_exceptions"
-#: cp/lex.c:1107
+#: cp/lex.c:628
msgid "`%D' not defined"
msgstr "'%D' er ikke defineret"
-#: cp/lex.c:1110
+#: cp/lex.c:631
msgid "`%D' was not declared in this scope"
msgstr "'%D' blev ikke erklæret i dette virkefelt"
-#: cp/lex.c:1118
+#: cp/lex.c:639
msgid "`%D' undeclared (first use this function)"
msgstr "'%D' er ikke erklæret (først benyttet i denne funktion)"
# dækkende, og pænere end original i praktisk brug
-#: cp/lex.c:1122
+#: cp/lex.c:643
msgid "(Each undeclared identifier is reported only once for each function it appears in.)"
msgstr "(et kaldenavn der ikke er erklæret, rapporteres kun én gang per funktion)"
-#: cp/lex.c:1242
-msgid "`::%D' undeclared (first use here)"
-msgstr "'::%D' er ikke erklæret (først benyttet her)"
+#. In a template, it is invalid to write "f()" or "f(3)" if no
+#. declaration of "f" is available. Historically, G++ and most
+#. other compilers accepted that usage since they deferred all name
+#. lookup until instantiation time rather than doing unqualified
+#. name lookup at template definition time; explain to the user what
+#. is going wrong.
+#.
+#. Note that we have the exact wording of the following message in
+#. the manual (trouble.texi, node "Name lookup"), so they need to
+#. be kept in synch.
+#: cp/lex.c:674
+msgid "there are no arguments to `%D' that depend on a template parameter, so a declaration of `%D' must be available"
+msgstr ""
+
+#: cp/lex.c:683
+msgid "(if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)"
+msgstr ""
-#: cp/mangle.c:2051
+#: cp/mangle.c:2036
#, fuzzy
msgid "call_expr cannot be mangled due to a defect in the C++ ABI"
msgstr "new kan ikke bruges på en funktionstype"
-#: cp/mangle.c:2363
+#: cp/mangle.c:2089
+msgid "omitted middle operand to `?:' operand cannot be mangled"
+msgstr ""
+
+#: cp/mangle.c:2388
msgid "the mangled name of `%D' will change in a future version of GCC"
msgstr "det ABI-navnet for '%D' vil ændre sig i en fremtidig version af GCC"
-#: cp/method.c:154
-msgid "invalid use of member `%D' in static member function"
-msgstr "ugyldig brug af medlemmet '%D' i statisk medlemsfunktion"
-
-#: cp/method.c:216
-msgid "use of namespace `%D' as expression"
-msgstr "brug af navnerummet '%D' som udtryk"
-
-#: cp/method.c:221
-msgid "use of class template `%T' as expression"
-msgstr "brug af klasseskabelonen '%T' som udtryk"
-
-#: cp/method.c:234
-#, c-format
-msgid "use of %s from containing function"
-msgstr "brug af %s fra indeholdende funktion"
-
-#: cp/method.c:237
-msgid " `%#D' declared here"
-msgstr " '%#D' erklæret her"
-
-#: cp/method.c:255
-msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
-msgstr "forespørgsel efter medlemmet '%D' er tvetydigt i det multiple nedarvningsnet"
-
-#: cp/method.c:458
+#: cp/method.c:456
msgid "generic thunk code fails for method `%#D' which uses `...'"
msgstr "generel thunk-kode mislykkes for metoden '%#D' som bruger '...'"
-#: cp/method.c:697
+#: cp/method.c:681
msgid "non-static const member `%#D', can't use default assignment operator"
msgstr "ikke-statisk konstant medlem '%#D' kan ikke bruge standardtildelingsoperatoren"
-#: cp/method.c:702
+#: cp/method.c:686
msgid "non-static reference member `%#D', can't use default assignment operator"
msgstr "ikke-statisk referencemedlem '%#D' kan ikke bruge standardtildelingsoperatoren"
-#: parse.y:262
-msgid "`%s' tag used in naming `%#T'"
-msgstr "'%s'-mærke benyttet i navngivning af '%#T'"
+#: cp/name-lookup.c:649
+msgid "`%#D' used prior to declaration"
+msgstr "'%#D' benyttet før erklæring"
-#: parse.y:542
-msgid "keyword `export' not implemented, and will be ignored"
-msgstr "det reserverede ord 'export' er ikke implementeret og vil blive ignoreret"
+#: cp/name-lookup.c:680
+msgid "redeclaration of `wchar_t' as `%T'"
+msgstr "omerklæring af 'wchar_t' som '%T'"
+
+#. A redeclaration of main, but not a duplicate of the
+#. previous one.
+#.
+#. [basic.start.main]
+#.
+#. This function shall not be overloaded.
+#: cp/name-lookup.c:712
+msgid "invalid redeclaration of `%D'"
+msgstr "ugyldig omerklæring af '%D'"
-#: parse.y:646
-msgid "use of linkage spec `%D' is different from previous spec `%D'"
-msgstr "brug af kædningsangivelse '%D' er forskellig fra den tidligere angivelse '%D'"
+#: cp/name-lookup.c:713
+msgid "as `%D'"
+msgstr "som '%D'"
-#: parse.y:943
-msgid "no base or member initializers given following ':'"
-msgstr "ingen stamklasse- eller medlemsklargøringer er angivet efter ':'"
+#: cp/name-lookup.c:801
+#, fuzzy
+msgid "type mismatch with previous external decl of `%#D'"
+msgstr "typen passer ikke med tidligere ekstern erklæring"
-#: parse.y:984
-msgid "anachronistic old style base class initializer"
-msgstr "forældet stamklasseklargøring"
+#: cp/name-lookup.c:802
+msgid "previous external decl of `%#D'"
+msgstr "tidligere ekstern erklæring af '%#D'"
-#. Handle `Class<Class<Type>>' without space in the `>>'
-#: parse.y:1117
-msgid "`>>' should be `> >' in template class name"
-msgstr "'>>' skulle have været '> >' i skabelonsklassenavn"
+#: cp/name-lookup.c:844
+msgid "`%D' was previously implicitly declared to return `int'"
+msgstr "'%D' blev tidligere underforstået erklæret til at returnere 'int'"
+
+#: cp/name-lookup.c:902
+msgid "extern declaration of `%#D' doesn't match"
+msgstr "extern-erklæring af '%#D' passer ikke med"
-#: parse.y:1164
-msgid "use of template qualifier outside template"
-msgstr "brug af skabelonsmodifikation uden for skabelon"
+#: cp/name-lookup.c:903
+msgid "global declaration `%#D'"
+msgstr "global erklæring '%#D'"
+
+#: cp/name-lookup.c:939
+msgid "declaration of `%#D' shadows a parameter"
+msgstr "erklæring af '%#D' skygger for en parameter"
-#: parse.y:1193 parse.y:1202
+#: cp/name-lookup.c:960
#, c-format
-msgid "ISO C++ forbids an empty condition for `%s'"
-msgstr "ISO C++ forbyder en tom betingelse til '%s'"
+msgid "declaration of `%s' shadows a member of `this'"
+msgstr "erklæring af '%s' skygger for et medlem af 'this'"
+
+#: cp/name-lookup.c:1136
+msgid "name lookup of `%D' changed"
+msgstr "navneopslag for '%D' ændret"
-#: parse.y:1225
-msgid "definition of class `%T' in condition"
-msgstr "definition af klassen '%T' i betingelse"
+#: cp/name-lookup.c:1138
+msgid " matches this `%D' under ISO standard rules"
+msgstr " passer med '%D' under ISO-standardreglerne"
-#: parse.y:1227
-msgid "definition of enum `%T' in condition"
-msgstr "definition af enum '%T' i betingelse"
+#: cp/name-lookup.c:1140
+msgid " matches this `%D' under old rules"
+msgstr " passer med '%D' under tidligere regler"
-#: parse.y:1238
-msgid "definition of array `%#D' in condition"
-msgstr "definition af tabel '%#D' i betingelse"
+#: cp/name-lookup.c:1154 cp/name-lookup.c:1161
+msgid "name lookup of `%D' changed for new ISO `for' scoping"
+msgstr "navneopslaget af '%D' er ændret til ISO 'for'-virkefelt"
-#: parse.y:1351
-msgid "old style placement syntax, use () instead"
-msgstr "forældet placeringssyntaks, brug () i stedet"
+#: cp/name-lookup.c:1156
+msgid " cannot use obsolete binding at `%D' because it has a destructor"
+msgstr " kan ikke bruge forældet binding til '%D' fordi den har en destruktionsfunktion"
-#: parse.y:1362
-msgid "`%T' is not a valid expression"
-msgstr "'%T' er ikke et gyldigt udtryk"
+#: cp/name-lookup.c:1163
+msgid " using obsolete binding at `%D'"
+msgstr " bruger forældet binding til '%D'"
-#. This was previously allowed as an extension, but
-#. was removed in G++ 3.3.
-#: parse.y:1369
-msgid "initialization of new expression with `='"
-msgstr "tildeling af startværdi til new-udtryk med '='"
+#: cp/name-lookup.c:1216
+#, c-format
+msgid "%s %s(%E) %p %d\n"
+msgstr ""
-#: parse.y:1395
-msgid "ISO C++ forbids compound literals"
-msgstr "ISO C++ forbyder sammensatte konstanter"
+#: cp/name-lookup.c:1219
+#, fuzzy, c-format
+msgid "%s %s %p %d\n"
+msgstr "%s: %s: "
+
+#: cp/name-lookup.c:1338
+msgid "XXX is_class_level != (current_scope == class_scope)\n"
+msgstr ""
+
+#: cp/name-lookup.c:1975
+msgid "`%#D' hides constructor for `%#T'"
+msgstr "'%#D' skjuler konstruktionsfunktion for '%#T'"
+
+#: cp/name-lookup.c:1990
+msgid "`%#D' conflicts with previous using declaration `%#D'"
+msgstr "'%#D' strider mod tidligere using-erklæring '%#D'"
+
+#: cp/name-lookup.c:2002
+msgid "previous non-function declaration `%#D'"
+msgstr "tidligere ikke-funktionserklæring '%#D'"
+
+#: cp/name-lookup.c:2003
+msgid "conflicts with function declaration `%#D'"
+msgstr "strider mod funktionserklæring '%#D'"
+
+#. 7.3.3/5
+#. A using-declaration shall not name a template-id.
+#: cp/name-lookup.c:2080
+msgid "a using-declaration cannot specify a template-id. Try `using %D'"
+msgstr "en using-erklæring kan ikke angive en skabelons-id; prøv 'using %D'"
+
+#: cp/name-lookup.c:2086
+msgid "namespace `%D' not allowed in using-declaration"
+msgstr "navnerum '%D' ikke tilladt i using-erklæring"
+
+#. It's a nested name with template parameter dependent scope.
+#. This can only be using-declaration for class member.
+#: cp/name-lookup.c:2094 cp/name-lookup.c:2108 cp/name-lookup.c:3283
+msgid "`%T' is not a namespace"
+msgstr "'%T' er ikke et navnerum"
+
+#: cp/name-lookup.c:2132
+msgid "`%D' not declared"
+msgstr "'%D' ikke erklæret"
+
+#. If the OLD_FN was really declared, the
+#. declarations don't match.
+#: cp/name-lookup.c:2144 cp/name-lookup.c:2186 cp/name-lookup.c:2211
+msgid "`%D' is already declared in this scope"
+msgstr "'%D' er allerede erklæret i dette navnerum"
+
+#: cp/name-lookup.c:2217
+msgid "using declaration `%D' introduced ambiguous type `%T'"
+msgstr "using-erklæring '%D' introducerede tvetydig type '%T'"
+
+#. Definition isn't the kind we were looking for.
+#: cp/name-lookup.c:2376 cp/name-lookup.c:2395
+msgid "`%#D' redeclared as %C"
+msgstr "'%#D' omerklæret som %C"
+
+#: cp/name-lookup.c:2805
+msgid "using-declaration for non-member at class scope"
+msgstr "using-erklæring for ikke-medlem ved klassevirkefelt"
+
+#: cp/name-lookup.c:2812
+#, fuzzy
+msgid "using-declaration cannot name destructor"
+msgstr "using-erklæring for destruktionsfunktion"
+
+#: cp/name-lookup.c:2908
+msgid "declaration of `%D' not in a namespace surrounding `%D'"
+msgstr "erklæring af '%D' er ikke i et navnerum der omgiver '%D'"
+
+#: cp/name-lookup.c:2948
+msgid "`%D' should have been declared inside `%D'"
+msgstr "'%D' skulle have været erklæret inden i '%D'"
+
+#: cp/name-lookup.c:3012
+msgid "namespace alias `%D' not allowed here, assuming `%D'"
+msgstr "navnerumsalias '%D' er ikke tilladt her, antager '%D'"
+
+#. The parser did not find it, so it's not there.
+#: cp/name-lookup.c:3127
+msgid "unknown namespace `%D'"
+msgstr "ukendt navnerum '%D'"
+
+#: cp/name-lookup.c:3277
+msgid "namespace `%T' undeclared"
+msgstr "navnerummet '%T' er ikke erklæret"
+
+#: cp/name-lookup.c:3310
+msgid "strong using only meaningful at namespace scope"
+msgstr ""
+
+#: cp/name-lookup.c:3317
+#, fuzzy
+msgid "`%D' attribute directive ignored"
+msgstr "egenskabsdirektivet '%s' ignoreret"
+
+#: cp/name-lookup.c:3450
+msgid "use of `%D' is ambiguous"
+msgstr "brug af '%D' er tvetydigt"
+
+#: cp/name-lookup.c:3451
+msgid " first declared as `%#D' here"
+msgstr " først erklæret som '%#D' her"
+
+#: cp/name-lookup.c:3454
+msgid " also declared as `%#D' here"
+msgstr " også erklæret som '%#D' her"
+
+#: cp/name-lookup.c:3469
+msgid "`%D' denotes an ambiguous type"
+msgstr "'%D' angiver en tvetydig type"
+
+#: cp/name-lookup.c:3470
+#, fuzzy
+msgid "%J first type here"
+msgstr " første type her"
+
+#: cp/name-lookup.c:3471
+#, fuzzy
+msgid "%J other type here"
+msgstr " anden type her"
+
+#. This happens for A::B where B is a template, and there are no
+#. template arguments.
+#: cp/name-lookup.c:3536 cp/typeck.c:1773
+msgid "invalid use of `%D'"
+msgstr "ugyldig brug af '%D"
+
+#: cp/name-lookup.c:3577
+msgid "`%D::%D' is not a template"
+msgstr "'%D::%D' er ikke en skabelon"
+
+#: cp/name-lookup.c:3594
+msgid "`%D' undeclared in namespace `%D'"
+msgstr "'%D' ikke erklæret i navnerummet '%D'"
+
+#: cp/name-lookup.c:4055
+msgid "`%D' is not a function,"
+msgstr "'%s' er ikke en funktion,"
+
+#: cp/name-lookup.c:4056
+msgid " conflict with `%D'"
+msgstr " konflikt med '%D'"
+
+#: cp/name-lookup.c:4794
+msgid "XXX entering pop_everything ()\n"
+msgstr ""
+
+#: cp/name-lookup.c:4803
+msgid "XXX leaving pop_everything ()\n"
+msgstr ""
+
+#: cp/parser.c:609
+#, fuzzy
+msgid "invalid token"
+msgstr "ugyldig kode"
+
+#: cp/parser.c:1806
+#, fuzzy
+msgid "`%D::%D' has not been declared"
+msgstr "'%#D' kan ikke erklæres"
+
+#: cp/parser.c:1809 cp/semantics.c:2284
+#, fuzzy
+msgid "`::%D' has not been declared"
+msgstr "'%#D' kan ikke erklæres"
+
+#: cp/parser.c:1811
+#, fuzzy
+msgid "`%D' has not been declared"
+msgstr "'%#D' kan ikke erklæres"
+
+#: cp/parser.c:1814
+msgid "`%D::%D' %s"
+msgstr ""
+
+#: cp/parser.c:1816
+#, fuzzy
+msgid "`::%D' %s"
+msgstr "'%D'-tilgang"
+
+#: cp/parser.c:1818
+#, fuzzy
+msgid "`%D' %s"
+msgstr "'%D'-tilgang"
+
+#: cp/parser.c:1870
+#, fuzzy
+msgid "new types may not be defined in a return type"
+msgstr "new kan ikke bruges på en referencetype"
+
+#: cp/parser.c:1888 cp/pt.c:4185
+msgid "`%T' is not a template"
+msgstr "'%T' er ikke en skabelon"
+
+#: cp/parser.c:1890
+#, fuzzy, c-format
+msgid "`%s' is not a template"
+msgstr "'%T' er ikke en skabelon"
+
+#: cp/parser.c:1892
+#, fuzzy
+msgid "invalid template-id"
+msgstr "ugyldig roteringsinstruktion"
+
+#: cp/parser.c:1927
+#, fuzzy, c-format
+msgid "%s cannot appear in a constant-expression"
+msgstr "overløb i konstant udtryk"
-#: parse.y:1642
+#. Issue an error message.
+#: cp/parser.c:1954
+#, fuzzy, c-format
+msgid "`%s' does not name a type"
+msgstr "'%D' erklærer ikke en skabelonstype"
+
+#: cp/parser.c:1985
+#, fuzzy
+msgid "(perhaps `typename %T::%s' was intended)"
+msgstr " (benyt 'typename %T::%D' hvis det er hvad du mener)"
+
+#: cp/parser.c:2407
msgid "ISO C++ forbids braced-groups within expressions"
msgstr "ISO C++ forbyder krøllet parantes-grupper inden i udtryk"
-#: parse.y:1721
+#: cp/parser.c:2416
+#, fuzzy
+msgid "statement-expressions are allowed only inside functions"
+msgstr "sætningsblokke i udtryk er kun tilladt inde i en funktion"
+
+#: cp/parser.c:2467
+#, fuzzy
+msgid "`this' may not be used in this context"
+msgstr "'%D' blev ikke erklæret i dette virkefelt"
+
+#: cp/parser.c:2617
+#, fuzzy
+msgid "local variable `%D' may not appear in this context"
+msgstr "'%D' blev ikke erklæret i dette virkefelt"
+
+#: cp/parser.c:2982
+#, fuzzy
+msgid "typedef-name `%D' used as destructor declarator"
+msgstr "skabelons-id '%D' benyttet som erklærer"
+
+#: cp/parser.c:3627
+#, fuzzy
+msgid "ISO C++ forbids compound-literals"
+msgstr "ISO C++ forbyder sammensatte konstanter"
+
+#: cp/parser.c:4599
+#, fuzzy
+msgid "expression in new-declarator must have integral or enumeration type"
+msgstr "størrelse i tabel-new skal være en heltalstype"
+
+#: cp/parser.c:4775
+msgid "use of old-style cast"
+msgstr "brug af ældre type typeomtvingning"
+
+#: cp/parser.c:5528
+#, c-format
+msgid "case label `%E' not within a switch statement"
+msgstr "case-etiket '%E' befinder sig ikke inden i en switch-sætning"
+
+#: cp/parser.c:6070
+msgid "ISO C++ forbids computed gotos"
+msgstr "ISO C++ forbyder beregnede goto'er"
+
+#: cp/parser.c:6190
+msgid "extra `;'"
+msgstr ""
+
+#: cp/parser.c:6485
+msgid "mixing declarations and function-definitions is forbidden"
+msgstr ""
+
+#: cp/parser.c:6623
+#, fuzzy
+msgid "duplicate `friend'"
+msgstr "'%s' optræder mere end én gang"
+
+#: cp/parser.c:6772
+#, fuzzy
+msgid "class definition may not be declared a friend"
+msgstr "funktionen '%D' kan ikke erklæres friend"
+
+#: cp/parser.c:7086
+msgid "only constructors take base initializers"
+msgstr "kun konstruktionsfunktioner har stamklasseklargøringer"
+
+#: cp/parser.c:7137
+#, fuzzy
+msgid "anachronistic old-style base class initializer"
+msgstr "forældet stamklasseklargøring"
+
+#. Warn that we do not support `export'.
+#: cp/parser.c:7530
+msgid "keyword `export' not implemented, and will be ignored"
+msgstr "det reserverede ord 'export' er ikke implementeret og vil blive ignoreret"
+
+#. Otherwise, emit an error about the invalid digraph, but continue
+#. parsing because we got our argument list.
+#: cp/parser.c:7890
#, fuzzy
-msgid "invalid use of template `%D'"
-msgstr "ugyldig brug af medlemmet '%D'"
+msgid "`<::' cannot begin a template-argument list"
+msgstr "objektet '%E' kan ikke bruges som skabelonsparameter"
-#: parse.y:2053 parse.y:2068
-msgid "sigof type specifier"
-msgstr "sigof-typeangivelse"
+#: cp/parser.c:7891
+msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'"
+msgstr ""
-#: parse.y:2058
-msgid "`sigof' applied to non-aggregate expression"
-msgstr "'sigof' benyttet på et udtryk der ikke er af en sammensat type"
+#: cp/parser.c:7898
+msgid "(if you use `-fpermissive' G++ will accept your code)"
+msgstr ""
-#: parse.y:2073
-msgid "`sigof' applied to non-aggregate type"
-msgstr "'sigof' benyttet på en type der ikke er sammensat"
+#. Explain what went wrong.
+#: cp/parser.c:8070
+#, fuzzy
+msgid "non-template `%D' used as template"
+msgstr "ikke-skabelon benyttet som skabelon"
-#: parse.y:2339
+#: cp/parser.c:8071
+#, fuzzy
+msgid "(use `%T::template %D' to indicate that it is a template)"
+msgstr "skabelons-id '%D' i erklæring af primær skabelon"
+
+#: cp/parser.c:9000
msgid "using `typename' outside of template"
msgstr "bruger 'typename' uden for en skabelon"
-#: parse.y:2356
-msgid "qualified name does not name a class"
+#: cp/parser.c:9122
+#, fuzzy
+msgid "expected type-name"
+msgstr "uventet operand"
+
+#: cp/parser.c:9181
+#, fuzzy
+msgid "type attributes are honored only at type definition"
+msgstr "egenskaben '%s' kan kun anvendes med klassedefinitioner"
+
+#. [namespace.udecl]
+#.
+#. A using declaration shall not name a template-id.
+#: cp/parser.c:9565
+#, fuzzy
+msgid "a template-id may not appear in a using-declaration"
+msgstr "navnerum '%D' ikke tilladt i using-erklæring"
+
+#: cp/parser.c:9891
+msgid "an asm-specification is not allowed on a function-definition"
msgstr ""
-#: parse.y:2417
-#, c-format
-msgid "storage class specifier `%s' not allowed after struct or class"
-msgstr "lagringsklasseangivelsen '%s' er ikke tilladt efter struct eller class"
+#: cp/parser.c:9893
+#, fuzzy
+msgid "attributes are not allowed on a function-definition"
+msgstr "en global registervariabel følger en funktionsdefinition"
-#: parse.y:2419
-#, c-format
-msgid "type specifier `%s' not allowed after struct or class"
-msgstr "typeangivelsen '%s' er ikke tilladt efter struct eller class"
+#: cp/parser.c:10026
+#, fuzzy
+msgid "attributes after parenthesized initializer ignored"
+msgstr "egenskaber i parametertabelerklæring ignoreret"
-#: parse.y:2421
-#, c-format
-msgid "type qualifier `%s' not allowed after struct or class"
-msgstr "typemodifikationen '%s' er ikke tilladt efter struct eller class"
+#: cp/parser.c:11223
+#, fuzzy
+msgid "file ends in default argument"
+msgstr "%Hslutningen af filen læst inden i standardparameter"
-#: parse.y:2423
-msgid "no body nor ';' separates two class, struct or union declarations"
-msgstr "der er hverken en krop eller et semikolon mellem to class, struct eller union-erklæringer"
+#: cp/parser.c:11279
+#, fuzzy
+msgid "deprecated use of default argument for parameter of non-function"
+msgstr "standardparameter givet til %d. parameter for '%#D'"
-#: parse.y:2553
-msgid "no bases given following `:'"
-msgstr "ingen stamklasse er angivet efter ':'"
+#: cp/parser.c:11282
+#, fuzzy
+msgid "default arguments are only permitted for function parameters"
+msgstr "standardparameter givet til %d. parameter for '%#D'"
-#: parse.y:2584 parse.y:2599
-msgid "`%D' access"
-msgstr "'%D'-tilgang"
+#: cp/parser.c:12007
+msgid "declaration of `%D' in `%D' which does not enclose `%D'"
+msgstr "erklæring af '%D' i '%D' som ikke omgiver '%D'"
-#: parse.y:2589
-msgid "multiple access specifiers"
-msgstr "mere end én tilgangsangivelse"
+#: cp/parser.c:12020
+#, fuzzy
+msgid "extra qualification ignored"
+msgstr "ekstra modifikation '%T::' af medlemmet '%D' ignoreret"
-#: parse.y:2607
-msgid "multiple `virtual' specifiers"
-msgstr "mere end én 'virtual'-angivelse"
+#: cp/parser.c:12031
+#, fuzzy
+msgid "an explicit specialization must be preceded by 'template <>'"
+msgstr "eksplicit specialisering følger ikke efter 'template <>'"
-#: parse.y:2644
-msgid "missing ';' before right brace"
-msgstr "der mangler et semikolon før en højre krøllet parantes"
+#: cp/parser.c:12311
+msgid "extra semicolon"
+msgstr ""
-#: parse.y:2865
-msgid "ISO C++ forbids array dimensions with parenthesized type in new"
-msgstr "ISO C++ forbyder tabeldimensioner med parantetiseret type i new"
+#: cp/parser.c:12329
+msgid "a class-key must be used when declaring a friend"
+msgstr ""
-#: parse.y:3152 parse.y:3172 parse.y:3181 parse.y:3210
-msgid "`%T' is not a class or namespace"
-msgstr "'%T' er ikke en klasse eller et navnerum"
+#: cp/parser.c:12360
+#, fuzzy
+msgid "friend declaration does not name a class or function"
+msgstr "friend-erklæringen er ikke i klassedefinitionen"
-#: parse.y:3377
-msgid "ISO C++ forbids label declarations"
-msgstr "ISO C++ forbyder etiketerklæringer"
+#: cp/parser.c:12531
+msgid "pure-specifier on function-definition"
+msgstr ""
-#: parse.y:3537
-msgid "ISO C++ forbids computed gotos"
-msgstr "ISO C++ forbyder beregnede goto'er"
+#: cp/parser.c:12804
+#, fuzzy
+msgid "keyword `typename' not allowed outside of templates"
+msgstr "bruger 'typename' uden for en skabelon"
-#: parse.y:3545
-msgid "label must be followed by statement"
-msgstr "etiketten skal efterfølges af en sætning"
+#: cp/parser.c:12806
+msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)"
+msgstr ""
-#: parse.y:3590
-msgid "must have at least one catch per try block"
-msgstr "skal have mindst én catch pr. try-blok"
+#: cp/parser.c:13624
+#, fuzzy
+msgid "reference to `%D' is ambiguous"
+msgstr "brug af '%D' er tvetydigt"
-#: parse.y:3650
-msgid "ISO C++ forbids compound statements inside for initializations"
-msgstr "ISO C++ forbyder sammensatte sætninger inden i 'for'-klargøringer"
+#: cp/parser.c:13798
+#, fuzzy
+msgid "too few template-parameter-lists"
+msgstr "for få skabelonsparameterlister angivet i erklæring af '%D'"
-#. This helps us recover from really nasty
-#. parse errors, for example, a missing right
-#. parenthesis.
-#: parse.y:3737 parse.y:3747
-msgid "possibly missing ')'"
-msgstr "muligvis mangler en ')'"
+#. Otherwise, there are too many template parameter lists. We have
+#. something like:
+#.
+#. template <class T> template <class U> void S::f();
+#: cp/parser.c:13813
+#, fuzzy
+msgid "too many template-parameter-lists"
+msgstr "for mange skabelonsparameterlister angivet i erklæring af '%D'"
-#: parse.y:3840
-msgid "type specifier omitted for parameter"
-msgstr "typeangivelsen er ikke angivet for parameteren"
+#. If begin_function_definition didn't like the definition, skip
+#. the entire function.
+#: cp/parser.c:14090
+#, fuzzy
+msgid "invalid function declaration"
+msgstr "Ugyldig erklæring"
-#: parse.y:3849
-#, c-format
-msgid "`%E' is not a type, use `typename %E' to make it one"
-msgstr "'%E' er ikke en type, benyt 'typename %E' for at gøre den til en"
+#. Issue an error message.
+#: cp/parser.c:14127
+#, fuzzy
+msgid "named return values are no longer supported"
+msgstr "--driver understøttes ikke længere"
-#: parse.y:3851
-msgid "no type `%D' in `%T'"
-msgstr "ingen type '%D' i '%T'"
+#: cp/parser.c:14455
+#, fuzzy
+msgid "`>>' should be `> >' within a nested template argument list"
+msgstr "'>>' skulle have været '> >' i skabelonsklassenavn"
-#: parse.y:3854
-#, c-format
-msgid "type specifier omitted for parameter `%E'"
-msgstr "typeangivelse udeladt for parameteren '%E'"
+#. If this is not a nested template argument list, the '>>' is
+#. a typo for '>'. Emit an error message and continue.
+#: cp/parser.c:14463
+msgid "spurious `>>', use `>' to terminate a template argument list"
+msgstr ""
-#: parse.y:3862
-msgid "'%D' is used as a type, but is not defined as a type."
-msgstr "'%D' benyttes som en type, men er ikke defineret som en type"
+#: cp/parser.c:14950
+msgid "`%s' tag used in naming `%#T'"
+msgstr "'%s'-mærke benyttet i navngivning af '%#T'"
-#: cp/pt.c:284
+#: cp/parser.c:14970
+#, fuzzy
+msgid "%D redeclared with different access"
+msgstr "'%#D' omerklæret som en anden form for symbol"
+
+#: cp/parser.c:14987
+msgid "`template' (as a disambiguator) is only allowed within templates"
+msgstr ""
+
+#: cp/pt.c:243
msgid "data member `%D' cannot be a member template"
msgstr "datamedlem '%D' kan ikke være en medlemsskabelon"
-#: cp/pt.c:296
+#: cp/pt.c:255
msgid "invalid member template declaration `%D'"
msgstr "ugyldig medlemsskabelonerklæring '%D'"
-#: cp/pt.c:691
+#: cp/pt.c:637
msgid "explicit specialization in non-namespace scope `%D'"
msgstr "eksplicit specialisering i virkefeltet '%D' der ikke er et navnerum"
-#: cp/pt.c:703
+#: cp/pt.c:649
msgid "enclosing class templates are not explicitly specialized"
msgstr "omgivende klasseskabeloner er ikke eksplicit specialiserede"
-#: cp/pt.c:792 cp/pt.c:833
+#: cp/pt.c:739 cp/pt.c:780
msgid "specializing `%#T' in different namespace"
msgstr "specialiserer '%#T' i andet navnerum"
# hænger sammen med foregående tekst, derfor ikke 'fra'
-#: cp/pt.c:793 cp/pt.c:834
+#: cp/pt.c:740 cp/pt.c:781
msgid " from definition of `%#D'"
msgstr " i forhold til definition af '%#D'"
-#: cp/pt.c:801
+#: cp/pt.c:748
msgid "specialization of `%T' after instantiation"
msgstr "specialisering af '%T' efter instantiering"
-#: cp/pt.c:848
+#: cp/pt.c:795
msgid "specialization `%T' after instantiation `%T'"
msgstr "specialisering af '%T' efter instantiering '%T'"
-#: cp/pt.c:860
+#: cp/pt.c:807
msgid "explicit specialization of non-template `%T'"
msgstr "eksplicit specialisering af '%T' der ikke er en skabelon"
-#: cp/pt.c:992
+#: cp/pt.c:1067
msgid "specialization of %D after instantiation"
msgstr "specialisering af '%D' efter instantiering"
-#: cp/pt.c:1096
+#: cp/pt.c:1192
msgid "%s %+#D"
msgstr "%s %+#D"
-#: cp/pt.c:1147
+#: cp/pt.c:1241
msgid "`%D' is not a function template"
msgstr "'%D' er ikke en funktionsskabelon"
-#: cp/pt.c:1286
+#: cp/pt.c:1380
msgid "template-id `%D' for `%+D' does not match any template declaration"
msgstr "skabelons-id '%D' for '%+D' passer ikke til nogen skabelonserklæring"
-#: cp/pt.c:1294
+#: cp/pt.c:1388
msgid "ambiguous template specialization `%D' for `%+D'"
msgstr "tvetydig skabelonsspecialisering '%D' for '%+D'"
#. This case handles bogus declarations like template <>
#. template <class T> void f<int>();
-#: cp/pt.c:1521 cp/pt.c:1595
+#: cp/pt.c:1611 cp/pt.c:1685
msgid "template-id `%D' in declaration of primary template"
msgstr "skabelons-id '%D' i erklæring af primær skabelon"
-#: cp/pt.c:1534
+#: cp/pt.c:1624
msgid "template parameter list used in explicit instantiation"
msgstr "skabelonsparameterliste benyttet i eksplicit instantiering"
-#: cp/pt.c:1540
+#: cp/pt.c:1630
msgid "definition provided for explicit instantiation"
msgstr "definition angivet for eksplicit instantiering"
-#: cp/pt.c:1546
+#: cp/pt.c:1636
msgid "too many template parameter lists in declaration of `%D'"
msgstr "for mange skabelonsparameterlister angivet i erklæring af '%D'"
-#: cp/pt.c:1562
+#: cp/pt.c:1652
msgid "too few template parameter lists in declaration of `%D'"
msgstr "for få skabelonsparameterlister angivet i erklæring af '%D'"
-#: cp/pt.c:1579
+#: cp/pt.c:1669
msgid "explicit specialization not preceded by `template <>'"
msgstr "eksplicit specialisering følger ikke efter 'template <>'"
-#: cp/pt.c:1592
+#: cp/pt.c:1682
msgid "partial specialization `%D' of function template"
msgstr "partiel specialisering '%D' af funktionsskabelon"
-#: cp/pt.c:1624
+#: cp/pt.c:1714
msgid "default argument specified in explicit specialization"
msgstr "standardparameter angivet i eksplicit specialisering"
-#: cp/pt.c:1628
+#: cp/pt.c:1718
msgid "template specialization with C linkage"
msgstr "skabelonsspecialisering med C-kædning"
@@ -16848,102 +16433,110 @@ msgstr "skabelonsspecialisering med C-kædning"
#. program is ill-formed.
#.
#. Similar language is found in [temp.explicit].
-#: cp/pt.c:1715
+#: cp/pt.c:1802
msgid "specialization of implicitly-declared special member function"
msgstr "specialisering af underforstået erklæret speciel medlemsfunktion"
-#: cp/pt.c:1759
+#: cp/pt.c:1846
msgid "no member function `%D' declared in `%T'"
msgstr "ingen medlemsfunktion '%D' erklæret i '%T'"
#. There are two many template parameter lists.
-#: cp/pt.c:1909
+#: cp/pt.c:2001
msgid "too many template parameter lists in declaration of `%T'"
msgstr "for mange skabelonsparameterlister i erklæringen af '%T'"
-#: cp/pt.c:2005
+#: cp/pt.c:2094
msgid " shadows template parm `%#D'"
msgstr " skygger for skabelonsparameter '%#D'"
-#: cp/pt.c:2409
+#: cp/pt.c:2491
msgid "template parameters not used in partial specialization:"
msgstr "skabelonsparametre der ikke bruges i partiel specialisering:"
-#: cp/pt.c:2413
+#: cp/pt.c:2495
msgid " `%D'"
msgstr " '%D'"
-#: cp/pt.c:2425
+#: cp/pt.c:2507
msgid "partial specialization `%T' does not specialize any template arguments"
msgstr "den partielle specialisering '%T' specialiserer ikke nogen skabelonsparametre"
# flertalsform unødvendig
-#: cp/pt.c:2450
+#: cp/pt.c:2532
#, c-format
msgid "template argument `%E' involves template parameter(s)"
msgstr "skabelonsparameter '%E' involverer skabelonsparameter"
# flertalsform unødvendig
-#: cp/pt.c:2494
+#: cp/pt.c:2576
msgid "type `%T' of template argument `%E' depends on template parameter(s)"
msgstr "typen '%T' af skabelonsparameteren '%E' afhænger af skabelonsparameter"
-#: cp/pt.c:2582
+#: cp/pt.c:2661
msgid "no default argument for `%D'"
msgstr "ingen standardparameter til '%D'"
-#: cp/pt.c:2735
+#: cp/pt.c:2810
msgid "template with C linkage"
msgstr "skabelon med C-kædning"
-#: cp/pt.c:2738
+#: cp/pt.c:2813
msgid "template class without a name"
msgstr "skabelonsklasse uden et navn"
-#: cp/pt.c:2815
+#. [temp.mem]
+#.
+#. A destructor shall not be a member template.
+#: cp/pt.c:2820
+#, fuzzy
+msgid "destructor `%D' declared as member template"
+msgstr "datamedlem '%D' kan ikke være en medlemsskabelon"
+
+#: cp/pt.c:2900
msgid "`%D' does not declare a template type"
msgstr "'%D' erklærer ikke en skabelonstype"
-#: cp/pt.c:2821
+#: cp/pt.c:2906
msgid "template definition of non-template `%#D'"
msgstr "skabelonsdefinition af ikke-skabelon '%#D'"
-#: cp/pt.c:2862
+#: cp/pt.c:2947
msgid "expected %d levels of template parms for `%#D', got %d"
msgstr "forvented %d niveauer af skabelonsparametre for '%#D', modtog %d"
-#: cp/pt.c:2874
+#: cp/pt.c:2959
msgid "got %d template parameters for `%#D'"
msgstr "modtog %d skabelonsparametre for '%#D'"
-#: cp/pt.c:2877
+#: cp/pt.c:2962
msgid "got %d template parameters for `%#T'"
msgstr "modtog %d skabelonsparametre for '%#T'"
-#: cp/pt.c:2879
+#: cp/pt.c:2964
#, c-format
msgid " but %d required"
msgstr " men %d påkrævet"
-#: cp/pt.c:2962
+#: cp/pt.c:3042
msgid "`%T' is not a template type"
msgstr "'%T' er ikke en skabelonstype"
# hænger sammen med næste tekst
-#: cp/pt.c:2978
+#: cp/pt.c:3058
msgid "previous declaration `%D'"
msgstr "tidligere erklæring '%D'"
-#: cp/pt.c:2979
+#: cp/pt.c:3059
#, c-format
msgid "used %d template parameter%s instead of %d"
msgstr "benyttede %d skabelonsparameter%s i stedet for %d"
-#: cp/pt.c:2995
+#: cp/pt.c:3075
msgid "template parameter `%#D'"
msgstr "skabelonsparameter '%#D'"
-#: cp/pt.c:2996
+#: cp/pt.c:3076
msgid "redeclared here as `%#D'"
msgstr "omerklæret her som '%#D'"
@@ -16951,714 +16544,743 @@ msgstr "omerklæret her som '%#D'"
#.
#. A template-parameter may not be given default arguments
#. by two different declarations in the same scope.
-#: cp/pt.c:3006
+#: cp/pt.c:3086
msgid "redefinition of default argument for `%#D'"
msgstr "omdefinering af standardparameter for '%#D'"
-#: cp/pt.c:3007
-msgid " original definition appeared here"
+#: cp/pt.c:3087
+#, fuzzy
+msgid "%J original definition appeared here"
msgstr " oprindelig definition er her"
-#: cp/pt.c:3100
+#: cp/pt.c:3235
#, c-format
msgid "`%E' is not a valid template argument"
msgstr "'%E' er ikke en gyldig skabelonsparameter"
-#: cp/pt.c:3104
+#: cp/pt.c:3239
msgid "it must be the address of a function with external linkage"
msgstr "den skal være adressen af en funktion med ekstern kædning"
-#: cp/pt.c:3106
+#: cp/pt.c:3241
msgid "it must be the address of an object with external linkage"
msgstr "den skal være adressen af et objekt med ekstern kædning"
-#: cp/pt.c:3110
+#: cp/pt.c:3244
msgid "it must be a pointer-to-member of the form `&X::Y'"
msgstr "den skal være en henvisning til medlem på formen '&X::Y'"
-#: cp/pt.c:3121
+#: cp/pt.c:3255
#, c-format
msgid "string literal %E is not a valid template argument because it is the address of an object with static linkage"
msgstr "strengkonstanten %E er ikke en gyldig skabelonsparameter fordi den er adressen af et objekt med statisk kædning"
-#: cp/pt.c:3133
+#: cp/pt.c:3270
#, c-format
msgid "address of non-extern `%E' cannot be used as template argument"
msgstr "adresse på ikke-ekstern '%E' kan ikke bruges som skabelonsparameter"
-#: cp/pt.c:3144
+#: cp/pt.c:3279
#, c-format
msgid "non-constant `%E' cannot be used as template argument"
msgstr "ikke-konstant '%E' kan ikke bruges som skabelonsparameter"
-#: cp/pt.c:3151
-#, c-format
-msgid "object `%E' cannot be used as template argument"
+#: cp/pt.c:3287
+#, fuzzy
+msgid "type '%T' cannot be used as a value for a non-type template-parameter"
msgstr "objektet '%E' kan ikke bruges som skabelonsparameter"
-#: cp/pt.c:3526
+#: cp/pt.c:3290
+#, fuzzy
+msgid "invalid use of '%D' as a non-type template-argument"
+msgstr "ugyldig standardparameter i skabelon"
+
+#: cp/pt.c:3292
+#, fuzzy, c-format
+msgid "invalid use of '%E' as a non-type template-argument"
+msgstr "ugyldig standardparameter i skabelon"
+
+#: cp/pt.c:3657
#, c-format
msgid "to refer to a type member of a template parameter, use `typename %E'"
msgstr "benyt 'typename %E' for at referere til et typemedlem af en skabelonsparameter"
-#: cp/pt.c:3539 cp/pt.c:3555 cp/pt.c:3594
+#: cp/pt.c:3670 cp/pt.c:3688 cp/pt.c:3727
msgid "type/value mismatch at argument %d in template parameter list for `%D'"
msgstr "type/værdi-konflikt ved %d. parameter i skabelonsparameterliste for '%D'"
-#: cp/pt.c:3542
+#: cp/pt.c:3673
msgid " expected a constant of type `%T', got `%T'"
msgstr " forventede en konstant af typen '%T', modtog '%T'"
-#: cp/pt.c:3546
+#: cp/pt.c:3677
+#, fuzzy, c-format
+msgid " expected a class template, got `%E'"
+msgstr " forventede en klasseskabelon, modtog '%T'"
+
+#: cp/pt.c:3679
#, c-format
msgid " expected a type, got `%E'"
msgstr " forventede en type, modtog '%E'"
-#: cp/pt.c:3558
+#: cp/pt.c:3691
msgid " expected a type, got `%T'"
msgstr " forventede en type, modtog '%T'"
-#: cp/pt.c:3560
+#: cp/pt.c:3693
msgid " expected a class template, got `%T'"
msgstr " forventede en klasseskabelon, modtog '%T'"
-#: cp/pt.c:3596
+#: cp/pt.c:3729
msgid " expected a template of type `%D', got `%D'"
msgstr " forventede en skabelon af typen '%D', modtog '%D'"
-#: cp/pt.c:3618
-msgid "template-argument `%T' uses anonymous type"
-msgstr "skabelonsparameter '%T' benytter anonym type"
-
-#: cp/pt.c:3621
-msgid "template-argument `%T' uses local type `%T'"
-msgstr "skabelonsparameter '%T' benytter lokal type '%T'"
-
-#: cp/pt.c:3631
-msgid "template-argument `%T' is a variably modified type"
-msgstr "skabelonsparameter '%T' er en variabelt ændret type"
-
-#: cp/pt.c:3666
+#: cp/pt.c:3764
msgid "could not convert template argument `%E' to `%T'"
msgstr "kunne ikke konvertere skabelonsparameteren '%E' til '%T'"
-#: cp/pt.c:3710
+#: cp/pt.c:3804
#, c-format
msgid "wrong number of template arguments (%d, should be %d)"
msgstr "forkert antal skabelonsparametre (%d, skulle være %d)"
-#: cp/pt.c:3714
+#: cp/pt.c:3808
msgid "provided for `%D'"
msgstr "angivet for '%D'"
-#: cp/pt.c:3761
+#: cp/pt.c:3836
#, c-format
msgid "template argument %d is invalid"
msgstr "skabelonsparameter %d er ugyldig"
-#: cp/pt.c:3997
+#: cp/pt.c:4057
msgid "non-template used as template"
msgstr "ikke-skabelon benyttet som skabelon"
-#: cp/pt.c:4139
-msgid "`%T' is not a template"
-msgstr "'%T' er ikke en skabelon"
-
-#: cp/pt.c:4152
+#: cp/pt.c:4197
msgid "non-template type `%T' used as a template"
msgstr "ikke-skabelonstype '%T' benyttet som skabelon"
-#: cp/pt.c:4154
+#: cp/pt.c:4199
msgid "for template declaration `%D'"
msgstr "til skabelonserklæring '%D'"
-#: cp/pt.c:4770
+#: cp/pt.c:4846
msgid "template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN to increase the maximum) instantiating `%D'"
msgstr "skabelonsinstantieringsdybden overskrider maksimum på %d (benyt -ftemplate-depth-NN for at forøge maksimum) ved instantiering af '%D'"
-#: cp/pt.c:5247
+#: cp/pt.c:5286
msgid "ambiguous class template instantiation for `%#T'"
msgstr "tvetydig klasseskabelonsinstantiering for '%#T'"
-#: cp/pt.c:5254
+#: cp/pt.c:5292
msgid "%s %+#T"
msgstr "%s %+#T"
-#: cp/pt.c:6284 cp/pt.c:6396
+#: cp/pt.c:6291 cp/pt.c:6411
msgid "instantiation of `%D' as type `%T'"
msgstr "instantiering af '%D' som typen '%T'"
-#: cp/pt.c:6440
+#: cp/pt.c:6453
msgid "invalid parameter type `%T'"
msgstr "ugyldig parametertype '%T'"
-#: cp/pt.c:6442
+#: cp/pt.c:6455
msgid "in declaration `%D'"
msgstr "i erklæringen '%D'"
-#: cp/pt.c:6517
+#: cp/pt.c:6529
msgid "creating pointer to member function of non-class type `%T'"
msgstr "opretter henvisning til medlemsfunktion af typen '%T' der ikke er en klasse"
-#: cp/pt.c:6680
+#: cp/pt.c:6668
msgid "creating array with size zero"
msgstr "opretter tabel med størrelsen nul"
-#: cp/pt.c:6694
+#: cp/pt.c:6682
#, c-format
msgid "creating array with size zero (`%E')"
msgstr "opretter tabel med størrelsen nul ('%E')"
-#: cp/pt.c:6933
+#: cp/pt.c:6921
msgid "forming reference to void"
msgstr "danner reference til void"
-#: cp/pt.c:6935
+#: cp/pt.c:6923
msgid "forming %s to reference type `%T'"
msgstr "danner %s til referencetypen '%T'"
-#: cp/pt.c:6973
+#: cp/pt.c:6960
msgid "creating pointer to member of non-class type `%T'"
msgstr "opretter henvisning til medlem af typen '%T' der ikke er en klasse"
-#: cp/pt.c:6979
+#: cp/pt.c:6966
msgid "creating pointer to member reference type `%T'"
msgstr "opretter henvisning til medlemsreference af typen '%T'"
-#: cp/pt.c:7057
+#: cp/pt.c:7052
msgid "creating array of `%T'"
msgstr "opretter tabel af '%T'"
-#: cp/pt.c:7100
+#: cp/pt.c:7058
+#, fuzzy
+msgid "creating array of `%T', which is an abstract class type"
+msgstr "unavngiven klargøring af '%T' som ikke har nogen stamklasser"
+
+#: cp/pt.c:7102
msgid "`%T' is not a class, struct, or union type"
msgstr "'%T' er ikke en class-, struct- eller union-type"
-#: cp/pt.c:7213
+#: cp/pt.c:7215
#, c-format
msgid "use of `%s' in template"
msgstr "brug af '%s' i skabelon"
-#: cp/pt.c:7975
-msgid "type `%T' composed from a local class is not a valid template-argument"
-msgstr "typen '%T' sammensat fra lokal klasse er ikke en gyldig skabelonsparameter"
+#: cp/pt.c:7327
+#, fuzzy, c-format
+msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type"
+msgstr "'%D' benyttes som en type, men er ikke defineret som en type"
+
+#: cp/pt.c:7329
+#, fuzzy, c-format
+msgid "say `typename %E' if a type is meant"
+msgstr " (benyt 'typename %T::%D' hvis det er hvad du mener)"
+
+#: cp/pt.c:8586
+#, fuzzy
+msgid "`%T' uses anonymous type"
+msgstr "skabelonsparameter '%T' benytter anonym type"
+
+#: cp/pt.c:8588
+#, fuzzy
+msgid "`%T' uses local type `%T'"
+msgstr "skabelonsparameter '%T' benytter lokal type '%T'"
-#: cp/pt.c:7976
+#: cp/pt.c:8596
+#, fuzzy
+msgid "`%T' is a variably modified type"
+msgstr "skabelonsparameter '%T' er en variabelt ændret type"
+
+#: cp/pt.c:8607
+#, fuzzy, c-format
+msgid "integral expression `%E' is not constant"
+msgstr "størrelsen af medlemmet '%D' er ikke konstant"
+
+#: cp/pt.c:8612
msgid " trying to instantiate `%D'"
msgstr " ved forsøg på at instantiere '%D'"
-#: cp/pt.c:8421
+#: cp/pt.c:9125
msgid "incomplete type unification"
msgstr "ufuldstændig typeforening"
-#: cp/pt.c:9387
+#: cp/pt.c:10072
#, c-format
msgid "use of `%s' in template type unification"
msgstr "brug af '%s' i skabelonstypeforening"
-#: cp/pt.c:9821 cp/pt.c:9893
+#: cp/pt.c:10506 cp/pt.c:10578
msgid "explicit instantiation of non-template `%#D'"
msgstr "eksplicit instantiering af ikke-skabelon '%#D'"
-#: cp/pt.c:9837 cp/pt.c:9888
+#: cp/pt.c:10522 cp/pt.c:10573
msgid "no matching template for `%D' found"
msgstr "ingen passende skabelon for '%D' fundet"
-#: cp/pt.c:9843
+#: cp/pt.c:10528
msgid "explicit instantiation of `%#D'"
msgstr "eksplicit instantiering af '%#D'"
-#: cp/pt.c:9880
+#: cp/pt.c:10565
msgid "duplicate explicit instantiation of `%#D'"
msgstr "'%#D' er blevet eksplicit instantieret mere end én gang"
-#: cp/pt.c:9905
+#: cp/pt.c:10587
msgid "ISO C++ forbids the use of `extern' on explicit instantiations"
msgstr "ISO C++ forbyder brugen af 'extern' ved eksplicitte instantieringer"
-#: cp/pt.c:9909 cp/pt.c:9999
+#: cp/pt.c:10591 cp/pt.c:10672
msgid "storage class `%D' applied to template instantiation"
msgstr "lagringsklasse '%D' anvendt på skabelonsinstantiering"
-#: cp/pt.c:9966
+#: cp/pt.c:10644
msgid "explicit instantiation of non-template type `%T'"
msgstr "eksplicit instantiering af '%T' der ikke er en skabelonstype"
-#: cp/pt.c:9980
+#: cp/pt.c:10653
msgid "explicit instantiation of `%#T' before definition of template"
msgstr "eksplicit instantiering af '%T' før definering af skabelonen"
-#: cp/pt.c:9988
+#: cp/pt.c:10661
#, c-format
msgid "ISO C++ forbids the use of `%s' on explicit instantiations"
msgstr "ISO C++ forbyder brugen af '%s ved eksplicitte instantieringer"
-#: cp/pt.c:10032
+#: cp/pt.c:10705
msgid "duplicate explicit instantiation of `%#T'"
msgstr "'%#T' er blevet eksplicit instantieret mere end én gang"
-#: cp/pt.c:10412
+#: cp/pt.c:11086
msgid "explicit instantiation of `%D' but no definition available"
msgstr "eksplicit instantiering af '%D', men ingen definition tilgængelig"
-#: cp/pt.c:10815
+#: cp/pt.c:11520
msgid "`%#T' is not a valid type for a template constant parameter"
msgstr "'%#T' er ikke en gyldig type for en skabelonsparameterkonstant "
-#: cp/repo.c:271
+#: cp/repo.c:259
msgid "-frepo must be used with -c"
msgstr "-frepo skal bruges med -c"
-#: cp/repo.c:361
+#: cp/repo.c:346
#, c-format
msgid "mysterious repository information in %s"
msgstr "mystisk info om opbevaringssted i '%s'"
-#: cp/repo.c:376
+#: cp/repo.c:361
#, c-format
msgid "can't create repository information file `%s'"
msgstr "kan ikke oprette informationsfilen '%s' til opbevaringssted"
-#: cp/rtti.c:240
+#: cp/rtti.c:248
msgid "cannot use typeid with -fno-rtti"
msgstr "kan ikke bruge typeid med -fno-rtti"
-#: cp/rtti.c:246
+#: cp/rtti.c:254
msgid "must #include <typeinfo> before using typeid"
msgstr "'#include <typeinfo>' er nødvendig før typeid kan benyttes"
-#: cp/rtti.c:320
+#: cp/rtti.c:326
msgid "cannot create type information for type `%T' because its size is variable"
msgstr "kan ikke oprette typeinformation for typen '%T' fordi dens størrelse er variabel"
-#: cp/rtti.c:584 cp/rtti.c:598
+#: cp/rtti.c:580 cp/rtti.c:594
msgid "dynamic_cast of `%#D' to `%#T' can never succeed"
msgstr "dynamic_cast af '%#D' til '%#T' kan aldrig lykkes"
-#: cp/rtti.c:674
+#: cp/rtti.c:675
msgid "cannot dynamic_cast `%E' (of type `%#T') to type `%#T' (%s)"
msgstr "kan ikke anvende dynamic_cast på '%E' (af typen '%#T') til typen '%#T' (%s)"
-#: cp/search.c:332
+#: cp/search.c:306
msgid "`%T' is an ambiguous base of `%T'"
msgstr "'%T' er en tvetydig stamklasse til '%T'"
-#: cp/search.c:350
+#: cp/search.c:324
msgid "`%T' is an inaccessible base of `%T'"
msgstr "'%T' er en utilgængelig stamklasse til '%T'"
-#. At parse time, we don't want to give this error, since
-#. we won't have enough state to make this kind of
-#. decision properly. But there are times (e.g., with
-#. enums in nested classes) when we do need to call
-#. this fn at parse time. So, in those cases, we pass
-#. complain as a 0 and just return a NULL_TREE.
-#: cp/search.c:1638
-msgid "assignment to non-static member `%D' of enclosing class `%T'"
-msgstr "tildeling til ikke-statisk medlem '%D' af omgivende klasse '%T'"
-
-#: cp/search.c:2050
-msgid "adjusting pointers for covariant returns"
-msgstr "justerer henvisninger for kovariante returneringer"
-
-#: cp/search.c:2054 cp/search.c:2061
+#: cp/search.c:1756
msgid "invalid covariant return type for `%#D'"
msgstr "ugyldig kovariant returneringstype for '%#D'"
-#: cp/search.c:2055
-msgid " overriding `%#D' (must be pointer or reference to class)"
-msgstr " overskriver '%#D' (skal være en henvisning eller reference til klasse)"
-
-#: cp/search.c:2062
-msgid " overriding `%#D' (must use pointer or reference)"
-msgstr " overskriver '%#D' (skal være en henvisning eller reference)"
+#: cp/search.c:1757 cp/search.c:1763
+msgid " overriding `%#D'"
+msgstr " overskriver '%#D'"
-#: cp/search.c:2067
+#: cp/search.c:1761
msgid "conflicting return type specified for `%#D'"
msgstr "modstridende returtyper angivet for '%#D'"
-#: cp/search.c:2068
-msgid " overriding `%#D'"
-msgstr " overskriver '%#D'"
-
-#: cp/search.c:2077
+#: cp/search.c:1775
#, c-format
msgid "looser throw specifier for `%#F'"
msgstr "løsere throw-angivelse for '%#F'"
-#: cp/search.c:2078
+#: cp/search.c:1776
#, c-format
msgid " overriding `%#F'"
msgstr " overskriver '%#F'"
#. A static member function cannot match an inherited
#. virtual member function.
-#: cp/search.c:2167
+#: cp/search.c:1866
msgid "`%#D' cannot be declared"
msgstr "'%#D' kan ikke erklæres"
-#: cp/search.c:2168
+#: cp/search.c:1867
msgid " since `%#D' declared in base class"
msgstr " eftersom '%#D' er erklæret i stamklassen"
-#: cp/search.c:2309
+#: cp/search.c:1944
msgid "`%#D' needs a final overrider"
msgstr "'%#D' behøver en endelig overskrivning"
-#: cp/semantics.c:919
+#: cp/semantics.c:1092
#, c-format
msgid "type of asm operand `%E' could not be determined"
msgstr "typen af asm-operanden '%E' kunne ikke afgøres"
-#: cp/semantics.c:1051
-msgid "ISO C++ does not permit named return values"
-msgstr "ISO C++ tillader ikke navngivne returværdier"
+#: cp/semantics.c:1233
+msgid "invalid use of member `%D' in static member function"
+msgstr "ugyldig brug af medlemmet '%D' i statisk medlemsfunktion"
-#: cp/semantics.c:1060
-msgid "return identifier `%D' already in place"
-msgstr "returkaldenavn '%D' allerede på plads"
+#: cp/semantics.c:1237 cp/semantics.c:1276
+msgid "from this location"
+msgstr ""
-#: cp/semantics.c:1068
-msgid "can't redefine default return value for constructors"
-msgstr "kan ikke omdefinere standardreturværdi for konstruktionsfunktioner"
+#: cp/semantics.c:1275
+#, fuzzy
+msgid "object missing in reference to `%D'"
+msgstr "objekt mangler i brug af '%E'"
-#: cp/semantics.c:1100
-msgid "only constructors take base initializers"
-msgstr "kun konstruktionsfunktioner har stamklasseklargøringer"
+#: cp/semantics.c:1721
+#, fuzzy
+msgid "arguments to destructor are not allowed"
+msgstr "parameter til egenskaben '%s' er større end %d"
-#: cp/semantics.c:1343
+#: cp/semantics.c:1769
msgid "`this' is unavailable for static member functions"
msgstr "'this' er ikke tilgængelig for statiske medlemsfunktioner"
-#: cp/semantics.c:1349
+#: cp/semantics.c:1775
msgid "invalid use of `this' in non-member function"
msgstr "ugyldig brug af 'this' i ikke-medlemsfunktion"
-#: cp/semantics.c:1351
+#: cp/semantics.c:1777
msgid "invalid use of `this' at top level"
msgstr "ugyldig brug af 'this' ved øverste niveau"
-#: cp/semantics.c:1381
-msgid "calling type `%T' like a method"
-msgstr "kalder typen '%T' som en metode"
-
-#: cp/semantics.c:1419
-msgid "destructor specifier `%T::~%T()' must have matching names"
-msgstr "destruktionsangivelse '%T::~%T()' skal have ens navne"
+#: cp/semantics.c:1801
+#, fuzzy
+msgid "invalid qualifying scope in pseudo-destructor name"
+msgstr "ugyldige modifikationer for ikke-medlemsfunktionstype"
-#: cp/semantics.c:1425
+#: cp/semantics.c:1807
msgid "`%E' is not of type `%T'"
msgstr "'%E' er ikke af typen '%T'"
-#: cp/semantics.c:1613
+#: cp/semantics.c:1918
msgid "template type parameters must use the keyword `class' or `typename'"
msgstr "skabelonstypeparametre skal begynde med 'class' eller 'typename'"
-#: cp/semantics.c:1652
-msgid "invalid default template argument"
-msgstr "ugyldig standardparameter i skabelon"
+#: cp/semantics.c:1962
+#, fuzzy
+msgid "invalid use of type `%T' as a default value for a template template-parameter"
+msgstr "ugyldig brug af skabelonstypeparameter"
+
+#: cp/semantics.c:1965
+#, fuzzy
+msgid "invalid use of `%D' as a default value for a template template-parameter"
+msgstr "ugyldig brug af skabelonstypeparameter"
-#: cp/semantics.c:1694
+#: cp/semantics.c:1969
+#, fuzzy
+msgid "invalid default argument for a template template parameter"
+msgstr "ugyldig brug af skabelonstypeparameter"
+
+#: cp/semantics.c:2004
msgid "definition of `%#T' inside template parameter list"
msgstr "definition af '%#T' inden i skabelonsparameterliste"
-#: cp/semantics.c:1710
+#: cp/semantics.c:2015
msgid "invalid definition of qualified type `%T'"
msgstr "ugyldig definition af modificeret type '%T'"
-#: cp/semantics.c:2053
+#: cp/semantics.c:2030
+msgid "previous definition of `%#T'"
+msgstr "tidligere definition af '%#T'"
+
+#: cp/semantics.c:2225
msgid "invalid base-class specification"
msgstr "ugyldig stamklasseangivelse"
-#: cp/semantics.c:2062
+#: cp/semantics.c:2234
msgid "base class `%T' has cv qualifiers"
msgstr "stamklassen '%T' har const/volatile-modifikationer"
-#: cp/semantics.c:2093
+#: cp/semantics.c:2266
msgid "multiple declarators in template declaration"
msgstr "flere erklærerer i skabelonserklæring"
-#: cp/semantics.c:2120
-#, c-format
-msgid "type of `%E' is unknown"
-msgstr "typen af '%E' er ukendt"
-
-#: cp/spew.c:225
-#, c-format
-msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
-msgstr "kaldenavnet '%s' er i modstrid med den interne navngivningsstrategi i GNU c++"
-
-#: cp/spew.c:1002 cp/spew.c:1340
-msgid "parse error at end of saved function text"
-msgstr "tolkningsfejl ved slutningen af gemt funktionstekst"
+#: cp/semantics.c:2277
+#, fuzzy
+msgid "incomplete type `%T' used in nested name specifier"
+msgstr "ufuldstændig type '%T' kan ikke bruges til at navngive et virkefelt"
-#: cp/spew.c:1090 cp/spew.c:1178
-msgid "%Hend of file read inside definition"
-msgstr "%Hslutningen af filen læst inden i definition"
+#: cp/semantics.c:2279 cp/typeck.c:1616
+msgid "`%D' is not a member of `%T'"
+msgstr "'%D' er ikke et medlem af '%T'"
-#: cp/spew.c:1121
-msgid "parse error in method specification"
-msgstr "tolkningsfejl i medlemsfunktionsangivelsen"
+#: cp/semantics.c:2282
+#, fuzzy
+msgid "`%D' is not a member of `%D'"
+msgstr "'%D' er ikke et medlem af '%T'"
-#: cp/spew.c:1161
-msgid "function body for constructor missing"
-msgstr "kroppen til konstruktionsfunktionen mangler"
+#: cp/semantics.c:2400
+msgid "template parameter `%D' of type `%T' is not allowed in an integral constant expression because it is not of integral or enumeration type"
+msgstr ""
-#: cp/spew.c:1262
-msgid "%Hend of file read inside default argument"
-msgstr "%Hslutningen af filen læst inden i standardparameter"
+#: cp/semantics.c:2553
+#, fuzzy
+msgid "`%D' cannot appear in a constant-expression"
+msgstr "størrelsen af tabellen '%D' er ikke af et heltalligt konstantudtryk"
-#: cp/spew.c:1419
-msgid "circular dependency in default args of `%#D'"
-msgstr "cirkulær afhængighed i standardparametre til '%#D'"
+#: cp/semantics.c:2562
+msgid "use of namespace `%D' as expression"
+msgstr "brug af navnerummet '%D' som udtryk"
-#: cp/spew.c:1483
-msgid "invalid type `%T' for default argument to `%T'"
-msgstr "ugyldig type '%T' for standardparameter til '%T'"
+#: cp/semantics.c:2567
+msgid "use of class template `%T' as expression"
+msgstr "brug af klasseskabelonen '%T' som udtryk"
-#: cp/spew.c:1548
-#, c-format
-msgid "%s before `%s'"
-msgstr "%s før '%s'"
+#. Ambiguous reference to base members.
+#: cp/semantics.c:2573
+msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
+msgstr "forespørgsel efter medlemmet '%D' er tvetydigt i det multiple nedarvningsnet"
-#: cp/spew.c:1550
+#: cp/semantics.c:2633
#, c-format
-msgid "%s before `%c'"
-msgstr "%s før '%c'"
+msgid "use of %s from containing function"
+msgstr "brug af %s fra indeholdende funktion"
-#: cp/spew.c:1552
-#, c-format
-msgid "%s before `\\%o'"
-msgstr "%s før '\\%o'"
+#: cp/semantics.c:2636
+msgid " `%#D' declared here"
+msgstr " '%#D' erklæret her"
-#: cp/spew.c:1555
+#: cp/semantics.c:2687
#, c-format
-msgid "%s before `%s' token"
-msgstr "%s før symbolet '%s'"
+msgid "type of `%E' is unknown"
+msgstr "typen af '%E' er ukendt"
-#: cp/tree.c:263 cp/tree.c:275
+#: cp/tree.c:222
#, c-format
msgid "non-lvalue in %s"
msgstr "ikke-venstreværdi i %s"
-#: cp/tree.c:562
+#: cp/tree.c:539
msgid "`%V' qualifiers cannot be applied to `%T'"
msgstr "modifikationerne '%V' kan ikke anvendes på '%T'"
-#: cp/tree.c:1941
+#: cp/tree.c:1830
#, c-format
msgid "`%s' attribute can only be applied to Java class definitions"
msgstr "egenskaben '%s' kan kun anvendes med Java-klassedefinitioner"
-#: cp/tree.c:1971
+#: cp/tree.c:1859
#, c-format
msgid "`%s' attribute can only be applied to class definitions"
msgstr "egenskaben '%s' kan kun anvendes med klassedefinitioner"
-#: cp/tree.c:1977
+#: cp/tree.c:1865
#, c-format
msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default"
msgstr "'%s' er forældet; virtuelle tabeller i g++ er nu COM-kompatible som standard"
-#: cp/tree.c:2002
+#: cp/tree.c:1889
msgid "requested init_priority is not an integer constant"
msgstr "den udbedte init_priority er ikke en heltalskonstant"
-#: cp/tree.c:2023
+#: cp/tree.c:1910
#, c-format
msgid "can only use `%s' attribute on file-scope definitions of objects of class type"
msgstr "kan kun bruge egenskaben '%s' på filvirkefeltsdefinitioner af objekter af klassetype"
-#: cp/tree.c:2031
+#: cp/tree.c:1918
msgid "requested init_priority is out of range"
msgstr "den udbedte init_priority er uden for det gyldige interval"
-#: cp/tree.c:2041
+#: cp/tree.c:1928
msgid "requested init_priority is reserved for internal use"
msgstr "den udbedte init_priority er reserveret til intern brug"
-#: cp/tree.c:2051
+#: cp/tree.c:1938
#, c-format
msgid "`%s' attribute is not supported on this platform"
msgstr "egenskaben '%s' er ikke understøttet på denne platform"
-#: cp/tree.c:2588
+#: cp/tree.c:2459
#, c-format
msgid "lang_* check: failed in %s, at %s:%d"
msgstr "lang_*-kontrol: mislykkedes i %s, ved %s:%d"
-#: cp/typeck.c:524
+#: cp/typeck.c:438 cp/typeck.c:453 cp/typeck.c:543
+msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+msgstr "%s mellem forskellige henvisningstyper '%T' og '%T' mangler en typeomtvingelse"
+
+#: cp/typeck.c:513
#, c-format
msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
msgstr "ISO C++ forbyder %s mellem henvisning af typen 'void *' og henvisning til funktion"
-#: cp/typeck.c:545
-msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+#: cp/typeck.c:563
+#, fuzzy
+msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast"
msgstr "%s mellem forskellige henvisningstyper '%T' og '%T' mangler en typeomtvingelse"
-#: cp/typeck.c:1436
-msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
-msgstr "ISO C++ forbyder konvertering fra '%#T' til '(...)'"
-
-#: cp/typeck.c:1514
+#: cp/typeck.c:1235
#, c-format
msgid "invalid application of `%s' to a member function"
msgstr "ugyldig brug af '%s' på en medlemsfunktion"
-#: cp/typeck.c:1520
-#, c-format
-msgid "invalid application of `%s' to non-static member"
-msgstr "ugyldig brug af '%s' på et ikke-statisk medlem"
-
-#: cp/typeck.c:1538
-msgid "sizeof applied to a bit-field"
-msgstr "'sizeof' benyttet på et bitfelt"
+#: cp/typeck.c:1268
+#, fuzzy, c-format
+msgid "invalid application of `%s' to a bit-field"
+msgstr "ugyldig anvendelse af '%s' på en void-type"
-#: cp/typeck.c:1541
-msgid "ISO C++ forbids applying `sizeof' to an expression of function type"
+#: cp/typeck.c:1273
+#, fuzzy, c-format
+msgid "ISO C++ forbids applying `%s' to an expression of function type"
msgstr "ISO C++ forbyder anvendelse af 'sizeof' på et udtryk af en funktionstype"
-#: cp/typeck.c:1759
+#: cp/typeck.c:1342
+#, fuzzy
+msgid "invalid use of non-static member function"
+msgstr "ugyldig brug af medlemmet '%D' i statisk medlemsfunktion"
+
+#: cp/typeck.c:1476
msgid "deprecated conversion from string constant to `%T'"
msgstr "forældet konvertering fra strengkonstant til '%T'"
-#: cp/typeck.c:1890 cp/typeck.c:2122
+#: cp/typeck.c:1587 cp/typeck.c:1874
msgid "request for member `%D' in `%E', which is of non-class type `%T'"
msgstr "forespørgsel efter medlemmet '%D' i '%E' som er af en ikke-klassetype '%T'"
-#: cp/typeck.c:1916
-msgid "`%D' is not a member of `%T'"
-msgstr "'%D' er ikke et medlem af '%T'"
+#: cp/typeck.c:1614
+#, fuzzy, c-format
+msgid "invalid use of nonstatic data member '%E'"
+msgstr "ugyldig brug af ikke-statisk felt '%D'"
-#: cp/typeck.c:1957 cp/typeck.c:1978
+#: cp/typeck.c:1666 cp/typeck.c:1688
msgid "invalid access to non-static data member `%D' of NULL object"
msgstr "ugyldig tilgang til ikke-statisk datamedlem '%D' af NULL-objekt"
-#: cp/typeck.c:1959 cp/typeck.c:1980
+#: cp/typeck.c:1668 cp/typeck.c:1690
msgid "(perhaps the `offsetof' macro was used incorrectly)"
msgstr "(måske blev 'offsetof'-makroen benyttet forkert)"
-#: cp/typeck.c:2168
+#: cp/typeck.c:1804
+msgid "the type being destroyed is '%T', but the destructor refers to `%T'"
+msgstr ""
+
+#: cp/typeck.c:1924
msgid "`%D::%D' is not a member of `%T'"
msgstr "'%D::%D' er ikke et medlem af '%T'"
-#: cp/typeck.c:2179
+#: cp/typeck.c:1935
#, fuzzy
msgid "`%T' is not a base of `%T'"
msgstr "'%D' er ikke et medlem af '%T'"
-#: cp/typeck.c:2199
-msgid "destructor specifier `%T::~%T' must have matching names"
-msgstr "destruktionsangivelse '%T::~%T' skal have ens navne"
-
-#: cp/typeck.c:2205
-msgid "type `%T' has no destructor"
-msgstr "typen '%T' har ingen destruktionsfunktion"
+#: cp/typeck.c:1954
+msgid "'%D' has no member named '%E'"
+msgstr "'%D' har intet medlem ved navn '%E'"
-#: cp/typeck.c:2244
+#: cp/typeck.c:1969
msgid "`%D' is not a member template function"
msgstr "'%D' er ikke en medlemsskabelonfunktion"
#. A pointer to incomplete type (other than cv void) can be
#. dereferenced [expr.unary.op]/1
-#: cp/typeck.c:2338
+#: cp/typeck.c:2075
msgid "`%T' is not a pointer-to-object type"
msgstr "'%T' er ikke af en henvisning til objekt-type"
-#: cp/typeck.c:2365
+#: cp/typeck.c:2100
#, c-format
msgid "invalid use of `%s' on pointer to member"
msgstr "ugyldig brug af '%s' på henvisning til medlem"
-#: cp/typeck.c:2371
+#: cp/typeck.c:2106
msgid "invalid type argument"
msgstr "ugyldig typeparameter"
-#: cp/typeck.c:2474
+#: cp/typeck.c:2212
msgid "ISO C++ forbids subscripting non-lvalue array"
msgstr "ISO C++ forbyder indeksering af en ikke-venstreværdis tabel"
-#: cp/typeck.c:2485
+#: cp/typeck.c:2223
msgid "subscripting array declared `register'"
msgstr "indeksering af tabel som er erklæret 'register'"
-#: cp/typeck.c:2570
+#: cp/typeck.c:2306
#, c-format
msgid "object missing in use of `%E'"
msgstr "objekt mangler i brug af '%E'"
-#: cp/typeck.c:2674
+#: cp/typeck.c:2408
msgid "ISO C++ forbids calling `::main' from within program"
msgstr "ISO C++ forbyder kald af '::main' inde fra programmet"
-#: cp/typeck.c:2699
+#: cp/typeck.c:2433
#, c-format
msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'"
msgstr "brug .* eller ->* i kald af henvisning til medlemsfunktion i '%E (...)'"
-#: cp/typeck.c:2712
+#: cp/typeck.c:2446
#, c-format
msgid "`%E' cannot be used as a function"
msgstr "'%E' kan ikke bruges som en funktion"
-#: cp/typeck.c:2824
+#: cp/typeck.c:2539
msgid "too many arguments to %s `%+#D'"
msgstr "for mange parametre til %s '%+#D'"
-#: cp/typeck.c:2865
-msgid "parameter type of called function is incomplete"
-msgstr "parametertypen for den kaldte funktion er ufuldstændig"
+#: cp/typeck.c:2541 cp/typeck.c:2647
+msgid "at this point in file"
+msgstr "ved dette sted i filen"
-#: cp/typeck.c:2928
+#: cp/typeck.c:2578
+#, fuzzy
+msgid "parameter %P of `%D' has incomplete type `%T'"
+msgstr "parameteren '%s' er af en ufuldstændig type"
+
+#: cp/typeck.c:2581
+#, fuzzy
+msgid "parameter %P has incomplete type `%T'"
+msgstr "parameteren er af en ufuldstændig type"
+
+#: cp/typeck.c:2645
msgid "too few arguments to %s `%+#D'"
msgstr "for få parametre til %s '%+#D'"
-#: cp/typeck.c:3056 cp/typeck.c:3066
+#: cp/typeck.c:2790 cp/typeck.c:2800
msgid "assuming cast to type `%T' from overloaded function"
msgstr "antager typeomtvingning til typen '%T' fra flertydig funktion"
-#: cp/typeck.c:3126
+#: cp/typeck.c:2861
#, c-format
msgid "division by zero in `%E / 0'"
msgstr "division med nul i '%E / 0'"
-#: cp/typeck.c:3128
+#: cp/typeck.c:2863
#, c-format
msgid "division by zero in `%E / 0.'"
msgstr "division med nul i '%E / 0.'"
-#: cp/typeck.c:3158
+#: cp/typeck.c:2892
#, c-format
msgid "division by zero in `%E %% 0'"
msgstr "division med nul i '%E %% 0'"
-#: cp/typeck.c:3160
+#: cp/typeck.c:2894
#, c-format
msgid "division by zero in `%E %% 0.'"
msgstr "division med nul i '%E %% 0.'"
-#: cp/typeck.c:3240
+#: cp/typeck.c:2974
#, c-format
msgid "%s rotate count is negative"
msgstr "%s-roteringsantal er negativt"
-#: cp/typeck.c:3243
+#: cp/typeck.c:2977
#, c-format
msgid "%s rotate count >= width of type"
msgstr "%s-roteringsantal >= bredden af typen"
-#: cp/typeck.c:3274 cp/typeck.c:3279 cp/typeck.c:3370 cp/typeck.c:3375
+#: cp/typeck.c:3011 cp/typeck.c:3016 cp/typeck.c:3107 cp/typeck.c:3112
msgid "ISO C++ forbids comparison between pointer and integer"
msgstr "ISO C++ forbyder sammenligning mellem henvisningsvariabel og heltal"
-#: cp/typeck.c:3553
+#: cp/typeck.c:3293
msgid "comparison between types `%#T' and `%#T'"
msgstr "sammenligning mellem typerne '%#T' og '%#T'"
-#: cp/typeck.c:3589
+#: cp/typeck.c:3329
msgid "comparison between signed and unsigned integer expressions"
msgstr "sammenlign mellem signed og unsigned heltalsudtryk"
-#: cp/typeck.c:3654
+#: cp/typeck.c:3394
msgid "invalid operands of types `%T' and `%T' to binary `%O'"
msgstr "ugyldige operander af typerne '%T' og '%T' til binær '%O'"
@@ -17666,754 +17288,585 @@ msgstr "ugyldige operander af typerne '%T' og '%T' til binær '%O'"
#. performed. Note that pointer-difference and pointer-addition
#. have already been handled above, and so we don't end up here in
#. that case.
-#: cp/typeck.c:3676
+#: cp/typeck.c:3416
msgid "NULL used in arithmetic"
msgstr "NULL benyttet i udregning"
-#: cp/typeck.c:3743
+#: cp/typeck.c:3479
msgid "ISO C++ forbids using pointer of type `void *' in subtraction"
msgstr "ISO C++ forbyder brug af henvisning af typen 'void *' i fratrækning"
-#: cp/typeck.c:3745
+#: cp/typeck.c:3481
msgid "ISO C++ forbids using pointer to a function in subtraction"
msgstr "ISO C++ forbyder brug af henvisning til funktion i fratrækning"
-#: cp/typeck.c:3747
+#: cp/typeck.c:3483
msgid "ISO C++ forbids using pointer to a method in subtraction"
msgstr "ISO C++ forbyder brug af henvisning til medlemsfunktion i fratrækning"
-#: cp/typeck.c:3749
-msgid "ISO C++ forbids using pointer to a member in subtraction"
-msgstr "ISO C++ forbyder brug af henvisning til medlem i fratrækning"
-
-#: cp/typeck.c:3761
+#: cp/typeck.c:3495
msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
msgstr "ugyldig brug af en henvisning til en ufuldstændig type i henvisningsberegning"
-#: cp/typeck.c:3821
+#: cp/typeck.c:3550
#, c-format
msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id."
msgstr "ugyldig brug af '%E' til at danne en henvisning til medlemsfunktion; benyt et kaldenavn med klassepræfiks"
-#: cp/typeck.c:3827
+#: cp/typeck.c:3556
#, c-format
msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function"
msgstr "paranteser omkring '%E' kan ikke bruges til at danne en henvisning til medlemsfunktion"
-#: cp/typeck.c:3850
+#: cp/typeck.c:3578
msgid "taking address of temporary"
msgstr "tager adressen på midlertidig variabel"
-#: cp/typeck.c:4091
+#: cp/typeck.c:3813
#, c-format
msgid "ISO C++ forbids %sing an enum"
msgstr "ISO C++ forbyder %s af en enum"
-#: cp/typeck.c:4103
+#: cp/typeck.c:3824
msgid "cannot %s a pointer to incomplete type `%T'"
msgstr "kan ikke %s en henvisning til en ufuldstændig type '%T'"
-#: cp/typeck.c:4110
+#: cp/typeck.c:3830
msgid "ISO C++ forbids %sing a pointer of type `%T'"
msgstr "ISO C++ forbyder %s af en henvisning af typen '%T'"
-#: cp/typeck.c:4135
+#: cp/typeck.c:3855
msgid "cast to non-reference type used as lvalue"
msgstr "typeomtvingning til ikke-reference-type benyttet som venstreværdi"
-#: cp/typeck.c:4169
+#: cp/typeck.c:3889
msgid "invalid use of `--' on bool variable `%D'"
msgstr "ugyldig brug af '--' på den booleske variabel '%D'"
#. ARM $3.4
-#: cp/typeck.c:4202
+#: cp/typeck.c:3920
msgid "ISO C++ forbids taking address of function `::main'"
msgstr "ISO C++ forbyder at tage adressen på funktionen '::main'"
#. An expression like &memfn.
-#: cp/typeck.c:4269
-msgid "ISO C++ forbids taking the address of an unqualified non-static member function to form a pointer to member function. Say `&%T::%D'"
+#: cp/typeck.c:3991
+#, fuzzy
+msgid "ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function. Say `&%T::%D'"
msgstr "ISO C++ forbyder at tage adressen på en ikke-modificeret, ikke-statisk medlemsfunktion for at danne en henvisning til medlemsfunktion; brug '&%T::%D'"
-#: cp/typeck.c:4271
+#: cp/typeck.c:3996
msgid "ISO C++ forbids taking the address of a bound member function to form a pointer to member function. Say `&%T::%D'"
msgstr "ISO C++ forbyder at tage adressen på en bundet medlemsfunktion for at danne en henvisning til medlemsfunktion; brug '&%T::%D'"
-#: cp/typeck.c:4295
+#: cp/typeck.c:4024
msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression"
msgstr "ISO C++ forbyder at tage adressen på en typeomtvingning til et udtryk der ikke er en venstreværdi"
-#: cp/typeck.c:4324
+#: cp/typeck.c:4040
+msgid "unary `&'"
+msgstr "unær '&'"
+
+#: cp/typeck.c:4069
msgid "attempt to take address of bit-field structure member `%D'"
msgstr "forsøg på at finde adressen af bitfeltstrukturmedlemmet '%D'"
-#: cp/typeck.c:4444
+#: cp/typeck.c:4183
msgid "taking address of destructor"
msgstr "tager adressen på en destruktionsfunktion"
-#: cp/typeck.c:4457
+#: cp/typeck.c:4196
msgid "taking address of bound pointer-to-member expression"
msgstr "tager adressen på et bundet henvisning til medlem-udtryk"
-#: cp/typeck.c:4473
+#: cp/typeck.c:4204
msgid "cannot create pointer to reference member `%D'"
msgstr "kan ikke oprette henvisning til reference medlemmet '%D'"
-#: cp/typeck.c:4536
+#: cp/typeck.c:4266
msgid "cannot take the address of `this', which is an rvalue expression"
msgstr "kan ikke tage adressen af 'this' som er et højreværdiudtryk"
-#: cp/typeck.c:4555
+#: cp/typeck.c:4285
msgid "address requested for `%D', which is declared `register'"
msgstr "adresse forespurgt for '%D' som er erklæret 'register'"
-#: cp/typeck.c:4682
-msgid "static_cast from type `%T' to type `%T' casts away constness"
+#: cp/typeck.c:4353
+#, fuzzy, c-format
+msgid "%s expression list treated as compound expression"
+msgstr "klargøringsliste behandlet som et sammensat udtryk"
+
+#: cp/typeck.c:4426
+#, fuzzy
+msgid "%s from type `%T' to type `%T' casts away constness"
msgstr "static_cast fra typen '%T' til typen '%T' fjerner konstanthed"
-#: cp/typeck.c:4871
+#: cp/typeck.c:4618
msgid "invalid static_cast from type `%T' to type `%T'"
msgstr "ugyldig static_cast fra typen '%T' til typen '%T'"
-#: cp/typeck.c:4910
+#: cp/typeck.c:4658
msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'"
msgstr "ugyldig reinterpret_cast af et højreværdiudtryk fra typen '%T' til typen '%T'"
-#: cp/typeck.c:4930
+#: cp/typeck.c:4678
msgid "reinterpret_cast from `%T' to `%T' loses precision"
msgstr "reinterpret_cast fra '%T' til '%T' mister præcision"
-#: cp/typeck.c:4943
-msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
-msgstr "reinterpret_cast fra '%T' til '%T' fjerner const (eller volatile)"
-
-#: cp/typeck.c:4952
+#: cp/typeck.c:4697
msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object"
msgstr "ISO C++ forbyder sammenligninger mellem henvisning til funktion og henvisning til objekt"
-#: cp/typeck.c:4958
+#: cp/typeck.c:4703
msgid "invalid reinterpret_cast from type `%T' to type `%T'"
msgstr "ugyldig reinterpret_cast fra typen '%T' til typen '%T'"
-#: cp/typeck.c:4985
+#: cp/typeck.c:4731
msgid "invalid use of const_cast with type `%T', which is not a pointer, reference, nor a pointer-to-data-member type"
msgstr "ugyldig brug af const_cast med typen '%T' som ikke er en henvisnings-, reference- eller en henvisning til datamedlem-type"
-#: cp/typeck.c:4988
+#: cp/typeck.c:4734
msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type"
msgstr "ugyldig brug af const_cast med typen '%T' som er en henvisning eller reference til funktion"
-#: cp/typeck.c:5011
+#: cp/typeck.c:4757
msgid "invalid const_cast of an rvalue of type `%T' to type `%T'"
msgstr "ugyldig const_cast af en højreværdi fra typen '%T' til typen '%T'"
-#: cp/typeck.c:5027
+#: cp/typeck.c:4774
msgid "invalid const_cast from type `%T' to type `%T'"
msgstr "ugyldig const_cast fra typen '%T' til typen '%T'"
-#: cp/typeck.c:5069 cp/typeck.c:5074
+#: cp/typeck.c:4814 cp/typeck.c:4819
msgid "ISO C++ forbids casting to an array type `%T'"
msgstr "ISO C++ forbyder omtvingelse af typen til en tabeltype '%T'"
-#: cp/typeck.c:5082
+#: cp/typeck.c:4827
msgid "invalid cast to function type `%T'"
msgstr "ugyldig omtvingelse til funktionstypen '%T'"
-#: cp/typeck.c:5138
+#: cp/typeck.c:4883
msgid "cast from `%T' to `%T' discards qualifiers from pointer target type"
msgstr "typeomtvingning fra '%T' til '%T' kasserer modifikationer på henvisningsmålets type"
-#: cp/typeck.c:5184
+#: cp/typeck.c:4929
msgid "cast from `%T' to `%T' increases required alignment of target type"
msgstr "typeomtvingning fra '%T' til '%T' forøger den påkrævede justering af målets type"
-#: cp/typeck.c:5357
+#: cp/typeck.c:5093
msgid " in evaluation of `%Q(%#T, %#T)'"
msgstr " i evaluering af '%Q(%#T, %#T)'"
-#: cp/typeck.c:5399
+#: cp/typeck.c:5135
msgid "ISO C++ forbids cast to non-reference type used as lvalue"
msgstr "ISO C++ forbyder omtvingelse af typen til en ikke-reference-type benyttet som venstreværdi"
-#: cp/typeck.c:5463
+#: cp/typeck.c:5208
msgid "incompatible types in assignment of `%T' to `%T'"
msgstr "uforenelige typer i tildeling af '%T' til '%T'"
-#: cp/typeck.c:5470
+#: cp/typeck.c:5215
msgid "ISO C++ forbids assignment of arrays"
msgstr "ISO C++ forbyder tildeling af tabeller"
-#: cp/typeck.c:5577
+#: cp/typeck.c:5314
msgid " in pointer to member function conversion"
msgstr " i henvisning til medlemsfunktion-omdannelse"
-#: cp/typeck.c:5585
+#: cp/typeck.c:5322
msgid " in pointer to member conversion"
msgstr " i henvisning til medlem-omdannelse"
#. This is a reinterpret cast, we choose to do nothing.
-#: cp/typeck.c:5596 cp/typeck.c:5615
-msgid "pointer to member cast via virtual base `%T' of `%T'"
+#: cp/typeck.c:5332 cp/typeck.c:5347
+#, fuzzy
+msgid "pointer to member cast via virtual base `%T'"
msgstr "henvisning til medlem-typeomtvingning via den virtuelle stamklasse '%T' af '%T'"
-#: cp/typeck.c:5619
-msgid "pointer to member conversion via virtual base `%T' of `%T'"
+#: cp/typeck.c:5350
+#, fuzzy
+msgid "pointer to member conversion via virtual base `%T'"
msgstr "henvisning til medlem-omdannelse via den virtuelle stamklasse '%T' af '%T'"
-#: cp/typeck.c:5695
+#: cp/typeck.c:5420
msgid "invalid conversion to type `%T' from type `%T'"
msgstr "ugyldig omdannelse til typen '%T' fra typen '%T'"
# %s bliver til returnering eller tildeling eller noget i den retning
-#: cp/typeck.c:5860
+#: cp/typeck.c:5576
msgid "passing NULL used for non-pointer %s %P of `%D'"
msgstr "overbringelse af NULL benyttet for ikke-henvisnings%s %P af '%D'"
-#: cp/typeck.c:5863
+#: cp/typeck.c:5579
msgid "%s to non-pointer type `%T' from NULL"
msgstr "%s til ikke-henvisningstypen '%T' fra NULL"
-#: cp/typeck.c:5871
+#: cp/typeck.c:5587
msgid "passing `%T' for %s %P of `%D'"
msgstr "overbringelse af '%T' for ikke-henvisnings%s %P af '%D'"
-#: cp/typeck.c:5874
+#: cp/typeck.c:5590
msgid "%s to `%T' from `%T'"
msgstr "%s til '%T' fra '%T'"
-#: cp/typeck.c:5884
+#: cp/typeck.c:5600
msgid "passing negative value `%E' for %s %P of `%D'"
msgstr "overbringelse af negativ værdi '%E' for %s %P af '%D'"
-#: cp/typeck.c:5887
+#: cp/typeck.c:5603
msgid "%s of negative value `%E' to `%T'"
msgstr "%s af negativ værdi '%E' til `%T'"
-#: cp/typeck.c:5982
+#: cp/typeck.c:5691
msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'"
msgstr "kan ikke konvertere '%T' til '%T' for parameter '%P' til '%D'"
-#: cp/typeck.c:5985
+#: cp/typeck.c:5694
msgid "cannot convert `%T' to `%T' in %s"
msgstr "kan ikke konvertere '%T' til '%T' i %s"
-#: cp/typeck.c:6073 cp/typeck.c:6075
+#: cp/typeck.c:5771 cp/typeck.c:5773
msgid "in passing argument %P of `%+D'"
msgstr "i overbringelse af parameter %P af '%+D'"
-#: cp/typeck.c:6190
+#: cp/typeck.c:5880
msgid "returning reference to temporary"
msgstr "returnerer reference til midlertidig variabel"
-#: cp/typeck.c:6197
+#: cp/typeck.c:5887
msgid "reference to non-lvalue returned"
msgstr "reference til ikke-venstreværdi returneret"
-#: cp/typeck.c:6209
+#: cp/typeck.c:5899
msgid "reference to local variable `%D' returned"
msgstr "reference til den lokale variabel '%D' returneret"
-#: cp/typeck.c:6212
+#: cp/typeck.c:5902
msgid "address of local variable `%D' returned"
msgstr "adresse af den lokale variabel '%D' returneret"
-#: cp/typeck.c:6243
+#: cp/typeck.c:5932
msgid "returning a value from a destructor"
msgstr "returnerer en værdi fra en destruktionsfunktion"
#. If a return statement appears in a handler of the
#. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.c:6251
+#: cp/typeck.c:5940
msgid "cannot return from a handler of a function-try-block of a constructor"
msgstr "kan ikke returnere fra en håndtering af en funktions-try-blok i en konstruktionsfunktion"
#. You can't return a value from a constructor.
-#: cp/typeck.c:6254
+#: cp/typeck.c:5943
msgid "returning a value from a constructor"
msgstr "returnerer en værdi fra en konstruktionsfunktion"
-#: cp/typeck.c:6271
-msgid "return-statement with no value, in function declared with a non-void return type"
-msgstr "return-sætning uden en værdi i en funktion der er erklæret med en ikke-void returtype"
+#: cp/typeck.c:5966
+#, fuzzy
+msgid "return-statement with no value, in function returning '%T'"
+msgstr "'return' uden nogen værdi i en funktion der ikke returnerer void"
-#: cp/typeck.c:6287
-msgid "return-statement with a value, in function declared with a void return type"
-msgstr "return-sætning med en værdi i en funktion der er erklæret med en void returtype"
+#: cp/typeck.c:5983
+#, fuzzy
+msgid "return-statement with a value, in function returning 'void'"
+msgstr "'return' med en værdi i en funktion der returnerer void"
-#: cp/typeck.c:6308
+#: cp/typeck.c:6005
msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)"
msgstr "'operator new' må ikke returnere NULL medmindre den er erklæret 'throw()' (eller -fcheck-new er benyttet)"
-#: cp/typeck2.c:54
+#: cp/typeck2.c:55
msgid "type `%T' is not a base type for type `%T'"
msgstr "typen '%T' er ikke en grundtype for typen '%T'"
-#: cp/typeck2.c:157
+#: cp/typeck2.c:151
msgid "cannot declare variable `%D' to be of type `%T'"
msgstr "kan ikke erklære variablen '%D' til at være af typen '%T'"
-#: cp/typeck2.c:160
+#: cp/typeck2.c:154
msgid "cannot declare parameter `%D' to be of type `%T'"
msgstr "kan ikke erklære parameteren '%D' til at være af typen '%T'"
-#: cp/typeck2.c:163
+#: cp/typeck2.c:157
msgid "cannot declare field `%D' to be of type `%T'"
msgstr "kan ikke erklære feltet '%D' til at være af typen '%T'"
-#: cp/typeck2.c:167
+#: cp/typeck2.c:161
msgid "invalid return type for member function `%#D'"
msgstr "ugyldig returtype for medlemsfunktionen '%#D'"
-#: cp/typeck2.c:169
+#: cp/typeck2.c:163
msgid "invalid return type for function `%#D'"
msgstr "ugyldig returtype for funktionen '%#D'"
-#: cp/typeck2.c:172
+#: cp/typeck2.c:166
msgid "cannot allocate an object of type `%T'"
msgstr "kan ikke allokere et objekt af typen '%T'"
-#: cp/typeck2.c:179
+#: cp/typeck2.c:173
msgid " because the following virtual functions are abstract:"
msgstr " eftersom de følgende virtuelle funktioner er abstrakte:"
-#: cp/typeck2.c:181
+#: cp/typeck2.c:175
msgid "\t%#D"
msgstr "\t%#D"
-#: cp/typeck2.c:184
+#: cp/typeck2.c:178
msgid " since type `%T' has abstract virtual functions"
msgstr " eftersom typen '%T' har abstrakte virtuelle funktioner"
-#: cp/typeck2.c:338
+#: cp/typeck2.c:426
msgid "constructor syntax used, but no constructor declared for type `%T'"
msgstr "konstruktionsfunktionsyntaks benyttet, men ingen konstruktionsfunktion er erklæret for typen '%T'"
-#: cp/typeck2.c:349
-msgid "comma expression used to initialize return value"
-msgstr "kommaudtryk benyttet til at klargøre returværdi"
-
-#: cp/typeck2.c:358
+#: cp/typeck2.c:439
msgid "cannot initialize arrays using this syntax"
msgstr "kan ikke tildele tabeller startværdier med denne syntaks"
-#: cp/typeck2.c:473
+#: cp/typeck2.c:544
msgid "initializing array with parameter list"
msgstr "klargør tabel med en parameterliste"
-#: cp/typeck2.c:529
+#: cp/typeck2.c:599
msgid "initializer for scalar variable requires one element"
msgstr "startværdien for en skalarvariabel kan kun bestå af ét element"
-#: cp/typeck2.c:536
+#: cp/typeck2.c:606
msgid "braces around scalar initializer for `%T'"
msgstr "krøllede paranteser omkring skalarstartværdi for '%T'"
-#: cp/typeck2.c:539
+#: cp/typeck2.c:609
msgid "ignoring extra initializers for `%T'"
msgstr "ignorerer ekstra startværdier for '%T'"
-#: cp/typeck2.c:551
+#: cp/typeck2.c:621
msgid "variable-sized object of type `%T' may not be initialized"
msgstr "objekt af typen '%T' med variabel størrelse må ikke tildeles en startværdi"
-#: cp/typeck2.c:561
+#: cp/typeck2.c:631
msgid "subobject of type `%T' must be initialized by constructor, not by `%E'"
msgstr "underobjekt af typen '%T' skal klargøres af en konstruktionsfunktion, ikke af '%E'"
-#: cp/typeck2.c:627
+#: cp/typeck2.c:696
msgid "aggregate has a partly bracketed initializer"
msgstr "sammensat type har delvis indklammet startværdi"
-#: cp/typeck2.c:665 cp/typeck2.c:770
+#: cp/typeck2.c:734 cp/typeck2.c:839
msgid "non-trivial labeled initializers"
msgstr "ikke-trivielle navngivne startværdier"
-#: cp/typeck2.c:682
+#: cp/typeck2.c:751
msgid "non-empty initializer for array of empty elements"
msgstr "en startværdi der ikke er tom, tildeles til en tabel med tomme elementer"
-#: cp/typeck2.c:736
+#: cp/typeck2.c:805
msgid "initializer list for object of class with virtual base classes"
msgstr "klargøringsliste for objekt af en klasse med virtuelle stamklasser"
-#: cp/typeck2.c:742
+#: cp/typeck2.c:811
msgid "initializer list for object of class with base classes"
msgstr "klargøringsliste for objekt af en klasse med stamklasser"
-#: cp/typeck2.c:748
+#: cp/typeck2.c:817
msgid "initializer list for object using virtual functions"
msgstr "klargøringsliste for objekt med virtuelle funktioner"
-#: cp/typeck2.c:811 cp/typeck2.c:827
+#: cp/typeck2.c:879 cp/typeck2.c:895
msgid "missing initializer for member `%D'"
msgstr "manglende startværdi for medlemmet '%D'"
-#: cp/typeck2.c:816
+#: cp/typeck2.c:884
msgid "uninitialized const member `%D'"
msgstr "konstant medlem '%D' uden startværdi"
-#: cp/typeck2.c:818
+#: cp/typeck2.c:886
msgid "member `%D' with uninitialized const fields"
msgstr "medlem '%D' med konstante felter uden startværdi"
-#: cp/typeck2.c:821
+#: cp/typeck2.c:889
msgid "member `%D' is uninitialized reference"
msgstr "medlemmet '%D' er en reference uden startværdi"
-#: cp/typeck2.c:868
+#: cp/typeck2.c:936
msgid "index value instead of field name in union initializer"
msgstr "indeksværdi i stedet for feltnavn i union-startværdi"
-#: cp/typeck2.c:880
+#: cp/typeck2.c:948
msgid "no field `%D' in union being initialized"
msgstr "intet felt '%D' i union der tildeles startværdi"
-#: cp/typeck2.c:888
+#: cp/typeck2.c:956
msgid "union `%T' with no named members cannot be initialized"
msgstr "union '%T' uden navngivne elementer kan ikke tildeles startværdi"
-#: cp/typeck2.c:924
+#: cp/typeck2.c:992
msgid "excess elements in aggregate initializer"
msgstr "for mange elementer i startværdi til sammensat type"
-#: cp/typeck2.c:1038
+#: cp/typeck2.c:1100
msgid "circular pointer delegation detected"
msgstr "fundet en henvisningsefterfølgelse der går i ring"
-#: cp/typeck2.c:1051
+#: cp/typeck2.c:1113
msgid "base operand of `->' has non-pointer type `%T'"
msgstr "grundoperanden til '->' har en ikke-henvisningstype '%T'"
-#: cp/typeck2.c:1065
+#: cp/typeck2.c:1137
msgid "result of `operator->()' yields non-pointer result"
msgstr "resultatet af 'operator->()' er ikke en henvisning"
-#: cp/typeck2.c:1067
+#: cp/typeck2.c:1139
msgid "base operand of `->' is not a pointer"
msgstr "grundoperanden til '->' er ikke en henvisning"
-#: cp/typeck2.c:1133
+#: cp/typeck2.c:1162
msgid "`%E' cannot be used as a member pointer, since it is of type `%T'"
msgstr "'%E' kan ikke bruges som en medlemshenvisning eftersom udtrykkets type er '%T'"
-#: cp/typeck2.c:1140
+#: cp/typeck2.c:1170
msgid "cannot apply member pointer `%E' to `%E', which is of non-aggregate type `%T'"
msgstr "kan ikke anvende medlemshenvisning '%E' på '%E' som er af den ikke-sammensatte type '%T'"
-#: cp/typeck2.c:1149
+#: cp/typeck2.c:1180
msgid "member type `%T::' incompatible with object type `%T'"
msgstr "medlemstypen '%T::' uforenelige med objekttypen '%T'"
-#: cp/typeck2.c:1186
-msgid "`%T' fails to be a typedef or built-in type"
-msgstr "'%T' er hverken en typedef eller en indbygget type"
-
-#: cp/typeck2.c:1259
-#, c-format
-msgid "ISO C++ forbids defining types within %s"
-msgstr "ISO C++ forbyder definering af typer inden i %s"
-
-#: cp/typeck2.c:1384
+#: cp/typeck2.c:1396
msgid "call to function `%D' which throws incomplete type `%#T'"
msgstr "kald af en funktion '%D' som kaster en ufuldstændig type '%#T'"
-#: cp/typeck2.c:1387
+#: cp/typeck2.c:1399
msgid "call to function which throws incomplete type `%#T'"
msgstr "kald af en funktion som kaster en ufuldstændig type '%#T'"
#. XXX Not i18n clean.
-#: cp/cp-tree.h:3936
+#: cp/cp-tree.h:3756
#, c-format
msgid "%s is deprecated, please see the documentation for details"
msgstr "%s er forældet, se venligst dokumentationen for detaljer"
-#: cp/lang-options.h:29
-msgid "Do not obey access control semantics"
-msgstr "Adlyd ikke tilgangskontrolsemantikker"
-
-#: cp/lang-options.h:31
-msgid "Change when template instances are emitted"
-msgstr "Skift hvornår skabelonsinstanser udsendes"
-
-#: cp/lang-options.h:36
-msgid "Check the return value of new"
-msgstr "Kontrollér returværdien for new"
-
-#: cp/lang-options.h:39
-msgid "Reduce size of object files"
-msgstr "Reducér størrelsen af objektfiler"
-
-#: cp/lang-options.h:43
-msgid "Make string literals `char[]' instead of `const char[]'"
-msgstr "Gør strengkonstanter til 'char[]' i stedet for 'const char[]'"
-
-#: cp/lang-options.h:46
-msgid "Dump the entire translation unit to a file"
-msgstr "Anbring hele oversættelsesenheden i en fil"
-
-#: cp/lang-options.h:48
-msgid "Do not inline member functions by default"
-msgstr "Integrér ikke medlemsfunktioner som standard"
-
-#: cp/lang-options.h:51
-msgid "Do not generate run time type descriptor information"
-msgstr "Generér ikke typebeskrivelsesoplysninger til kørselstidspunktet"
-
-#: cp/lang-options.h:56
-msgid "Do not generate code to check exception specifications"
-msgstr "Generér ikke kode til at kontrollere undtagelsesspecifikationer"
-
-#: cp/lang-options.h:61
-msgid "Scope of for-init-statement vars extends outside"
-msgstr "Udvid virkefeltet for variabler i for-klargøringssætninger"
-
-#: cp/lang-options.h:64
-msgid "Do not recognize GNU defined keywords"
-msgstr "Genkend ikke GNU-definerede reserverede ord"
-
-#: cp/lang-options.h:68
-msgid "Enable support for huge objects"
-msgstr "Aktivér understøttelse af enorme objekter"
-
-#: cp/lang-options.h:72
-msgid "Export functions even if they can be inlined"
-msgstr "Eksportér funktioner også selvom de kan integreres"
-
-#: cp/lang-options.h:75
-msgid "Only emit explicit template instantiations"
-msgstr "Udsend kun eksplicitte skabelonsinstatieringer"
-
-#: cp/lang-options.h:78
-msgid "Only emit explicit instantiations of inline templates"
-msgstr "Udsend kun eksplicitte instatieringer af indlejrede skabeloner"
-
-#: cp/lang-options.h:84
-msgid "Don't pedwarn about uses of Microsoft extensions"
-msgstr "Udsend ikke pedantiske advarsler om brug af Microsoft-udvidelser"
-
-#: cp/lang-options.h:87
-msgid "Recognize and/bitand/bitor/compl/not/or/xor"
-msgstr "Genkend and/bitand/bitor/compl/not/or/xor"
-
-#: cp/lang-options.h:91
-msgid "Disable optional diagnostics"
-msgstr "Deaktivér valgfrie diagnosticeringer"
-
-#: cp/lang-options.h:93
-msgid "Downgrade conformance errors to warnings"
-msgstr "Nedgradér standardoverholdelsesfejl til advarsler"
-
-#: cp/lang-options.h:96
-msgid "Enable automatic template instantiation"
-msgstr "Aktivér automatisk skabelonsinstantiering"
-
-#: cp/lang-options.h:101
-msgid "Display statistics accumulated during compilation"
-msgstr "Vis statistik som indsamles under oversættelsen"
-
-#: cp/lang-options.h:104
-msgid "Specify maximum template instantiation depth"
-msgstr "Angiv maksimal skabelonsinstantieringsdybde"
-
-#: cp/lang-options.h:106
-msgid "Use __cxa_atexit to register destructors"
-msgstr "Benyt __cxa_atexit til at registrere destruktionsfunktioner"
-
-#: cp/lang-options.h:109
-msgid "Discard unused virtual functions"
-msgstr "Kassér ubrugte virtuelle funktioner"
-
-#: cp/lang-options.h:112
-msgid "Implement vtables using thunks"
-msgstr "Implementér virtuelle tabeller vha. thunk-kode"
-
-#: cp/lang-options.h:115
-msgid "Emit common-like symbols as weak symbols"
-msgstr "Udsend almindelige symboler som svage symboler"
-
-#: cp/lang-options.h:118
-msgid "Emit cross referencing information"
-msgstr "Udsend krydsreferenceoplysninger"
-
-#: cp/lang-options.h:122
-msgid "Warn about inconsistent return types"
-msgstr "Advar om inkonsistente returtyper"
-
-#: cp/lang-options.h:125
-msgid "Warn about overloaded virtual function names"
-msgstr "Advar om flertydige virtuelle funktionsnavne"
-
-#: cp/lang-options.h:129
-msgid "Don't warn when all ctors/dtors are private"
-msgstr "Advar ikke når alle konstruktions-/destruktionsfunktioner er private"
-
-#: cp/lang-options.h:131
-msgid "Warn about non virtual destructors"
-msgstr "Advar om ikke-virtuelle destruktionsfunktioner"
-
-#: cp/lang-options.h:134
-msgid "Warn when a function is declared extern, then inline"
-msgstr "Advar når en funktion erklæret extern erklæres inline"
-
-#: cp/lang-options.h:137
-msgid "Warn when the compiler reorders code"
-msgstr "Advar når oversætteren ændrer på ordenen af kode"
-
-#: cp/lang-options.h:140
-msgid "Warn when synthesis behavior differs from Cfront"
-msgstr "Advar når synteseopførslen adskiller sig fra Cfront"
-
-#: cp/lang-options.h:144
-msgid "Don't warn when type converting pointers to member functions"
-msgstr "Advar ikke ved typeomdannelse af henvisninger til medlemsfunktioner"
-
-#: cp/lang-options.h:146
-msgid "Warn about violations of Effective C++ style rules"
-msgstr "Advar om overtrædelser af stilreglerne fra Effective C++"
-
-#: cp/lang-options.h:149
-msgid "Warn when overload promotes from unsigned to signed"
-msgstr "Advar når flertydiggørelse forfremmer fra unsigned til signed"
-
-#: cp/lang-options.h:152
-msgid "Warn if a C style cast is used in a program"
-msgstr "Advar hvis en typeomtvingning i C-stil benyttes"
-
-#: cp/lang-options.h:156
-msgid "Don't warn when non-templatized friend functions are declared within a template"
-msgstr "Advar ikke når ikke-skabelonsvennefunktioner erklæres inde i en skabelon"
-
-#: cp/lang-options.h:159
-msgid "Don't announce deprecation of compiler features"
-msgstr "Annoncér ikke forældelse af oversætterfaciliteter"
-
-#: f/bad.c:387
+#: f/bad.c:388
msgid "note:"
msgstr "bemærk:"
-#: f/bad.c:391
+#: f/bad.c:392
msgid "warning:"
msgstr "advarsel: "
-#: f/bad.c:395
+#: f/bad.c:396
msgid "fatal:"
msgstr "fatal:"
-#: f/bad.c:437
+#: f/bad.c:438
msgid "(continued):"
msgstr "(fortsat):"
-#: f/bad.c:487 f/bad.c:505
+#: f/bad.c:488 f/bad.c:506
msgid "[REPORT BUG!!] %"
msgstr "[RAPPORTER FEJL!] %"
-#: f/bad.c:494 f/bad.c:526
+#: f/bad.c:495 f/bad.c:527
msgid "[REPORT BUG!!]"
msgstr "[RAPPORTER FEJL!]"
-#: f/com.c:3132
+#: f/com.c:3125
#, no-c-format
msgid "ASSIGN'ed label cannot fit into `%A' at %0 -- using wider sibling"
msgstr "ASSIGN'et etiket kan ikke passe i '%A' ved %0 - bruger bredere søskende"
-#: f/com.c:11623
+#: f/com.c:11565
msgid "no INTEGER type can hold a pointer on this configuration"
msgstr "ingen INTEGER-type kan opbevare en henvisning i denne konfiguration"
-#: f/com.c:11844
+#: f/com.c:11839
#, c-format
msgid "configuration: REAL, INTEGER, and LOGICAL are %d bits wide,"
msgstr "konfiguration: REAL, INTEGER og LOGICAL er %d bit brede,"
-#: f/com.c:11846
+#: f/com.c:11841
#, c-format
msgid "and pointers are %d bits wide, but g77 doesn't yet work"
msgstr "og henvisninger er %d bit brede, men g77 virker endnu ikke"
-#: f/com.c:11848
+#: f/com.c:11843
msgid "properly unless they all are 32 bits wide"
msgstr "ordentligt medmindre de alle er 32 bit brede"
-#: f/com.c:11849
+#: f/com.c:11844
msgid "Please keep this in mind before you report bugs."
msgstr "Husk venligst på dette før du rapporterer fejl."
#. I/O will probably crash.
-#: f/com.c:11857
+#: f/com.c:11852
#, c-format
msgid "configuration: char * holds %d bits, but ftnlen only %d"
msgstr "konfiguration: char * holder %d bit, men ftnlen kun %d"
#. ASSIGN 10 TO I will crash.
-#: f/com.c:11866
+#: f/com.c:11861
#, c-format
msgid ""
"configuration: char * holds %d bits, but INTEGER only %d --\n"
" ASSIGN statement might fail"
msgstr "konfiguration: char * holder %d bit, men INTEGER kun %d - ASSIGN-sætning kan mislykkes"
-#: f/com.c:13681
+#: f/com.c:13677
msgid "In statement function"
msgstr "I sætningsfunktion"
-#: f/com.c:13691
+#: f/com.c:13687
+#, c-format
msgid "Outside of any program unit:\n"
msgstr "Uden for nogen programenhed:\n"
-#: f/com.c:15320
+#: f/com.c:15283
#, no-c-format
msgid "%A from %B at %0%C"
msgstr "%A fra %B ved %0%C"
-#: f/com.c:15497
-msgid "directory name must immediately follow -I"
-msgstr "et katalognavn skal følge umiddelbart efter -I"
-
-#: f/com.c:15640
+#: f/com.c:15593
#, no-c-format
msgid "At %0, INCLUDE file %A exists, but is not readable"
msgstr "Ved %0 eksisterer INCLUDE-filen %A, men kan ikke læses"
-#: f/com.c:15675
+#: f/com.c:15628
#, no-c-format
msgid "At %0, INCLUDE nesting too deep"
msgstr "Ved %0 er INCLUDE-indlejring for dyb"
-#: f/expr.c:9614
+#: f/expr.c:8706
#, no-c-format
msgid "Two arithmetic operators in a row at %0 and %1 -- use parentheses"
msgstr "To aritmetiske operatorer efter hinanden ved %0 og %1 - benyt paranteser"
-#: f/expr.c:9664
+#: f/expr.c:8756
#, no-c-format
msgid "Operator at %0 has lower precedence than that at %1 -- use parentheses"
msgstr "Operatoren ved %0 har lavere prioritet end den ved %1 - benyt paranteser"
-#: f/expr.c:10525
+#: f/expr.c:9639
#, no-c-format
msgid "Use .EQV./.NEQV. instead of .EQ./.NE. at %0 for LOGICAL operands at %1 and %2"
msgstr "Benyt .EQV./.NEQV. i stedet for .EQ./.NE. ved %0 for LOGICAL-operander ved %1 og %2"
-#: f/expr.c:10896
+#: f/expr.c:10010
#, no-c-format
msgid "Unsupported operand for ** at %1 -- converting to default INTEGER"
msgstr "Ikke-understøttet operand for ** ved %1 - konverterer til standard-INTEGER"
-#: f/g77spec.c:234
+#: f/g77spec.c:230
#, c-format
msgid "overflowed output arg list for `%s'"
msgstr "overløb i uddataparameterlist for '%s'"
-#: f/g77spec.c:373
+#: f/g77spec.c:367
msgid "--driver no longer supported"
msgstr "--driver understøttes ikke længere"
-#: f/g77spec.c:386
+#: f/g77spec.c:380
#, c-format
msgid "argument to `%s' missing"
msgstr "parameter til '%s' mangler"
-#: f/g77spec.c:390
+#: f/g77spec.c:384
msgid "no input files; unwilling to write output files"
msgstr "ingen inputfiler; vil ikke skrive outputfiler"
@@ -18422,131 +17875,126 @@ msgstr "ingen inputfiler; vil ikke skrive outputfiler"
msgid "Implicit declaration of `%A' at %0"
msgstr "Implicit erklæring af '%A' ved %0"
-#: f/lex.c:326
+#: f/lex.c:321
#, no-c-format
msgid "Non-ISO-C-standard escape sequence `\\%A' at %0"
msgstr "Undvigesekvensen '\\%A' ved %0 følger ikke ISO C-standarden"
-#: f/lex.c:345
+#: f/lex.c:340
#, no-c-format
msgid "Unknown escape sequence `\\%A' at %0"
msgstr "Ukendt undvigesekvens '\\%A' ved %0"
-#: f/lex.c:354
+#: f/lex.c:349
#, no-c-format
msgid "Unterminated escape sequence `\\' at %0"
msgstr "Uafsluttet undvigsekvens '\\' ved %0"
-#: f/lex.c:365
+#: f/lex.c:360
#, no-c-format
msgid "Unknown escape sequence `\\' followed by char code 0x%A at %0"
msgstr "Ukendt undvigesekvens '\\' efterfulgt af tegnkode 0x%A ved %0"
-#: f/lex.c:393
+#: f/lex.c:388
#, no-c-format
msgid "\\x used at %0 with no following hex digits"
msgstr "\\x angivet ved %0 uden efterfølgende hexadecimale cifre"
-#: f/lex.c:407
+#: f/lex.c:402
#, no-c-format
msgid "Hex escape at %0 out of range"
msgstr "Hexadecimal undvigesekvens ved %0 er uden for det gyldige interval"
-#: f/lex.c:441
+#: f/lex.c:436
#, no-c-format
msgid "Escape sequence at %0 out of range for character"
msgstr "Undvigesekvens ved %0 er uden for det gyldig interval for tegn"
-#: f/lex.c:595
+#: f/lex.c:590
msgid "hex escape out of range"
msgstr "hexadecimal undvigesekvens er uden for det gyldige interval"
-#: f/lex.c:648
+#: f/lex.c:643
#, c-format
msgid "non-ANSI-standard escape sequence, `\\%c'"
msgstr "undvigesekvensen '\\%c' følger ikke ANSI-standarden"
-#: f/lex.c:661
+#: f/lex.c:656
#, c-format
msgid "non-ISO escape sequence `\\%c'"
msgstr "undvigesekvensen '\\%c' følger ikke ISO-standarden"
-#: f/lex.c:665
+#: f/lex.c:660
#, c-format
msgid "unknown escape sequence `\\%c'"
msgstr "ukendt undvigesekvens '\\%c'"
-#: f/lex.c:667
+#: f/lex.c:662
#, c-format
msgid "unknown escape sequence: `\\' followed by char code 0x%x"
msgstr "ukendt undvigesekvens: '\\' efterfulgt af tegnkoden 0x%x"
-#: f/lex.c:744
+#: f/lex.c:739
msgid "badly formed directive -- no closing quote"
msgstr "forkert udformet direktiv - intet afsluttende anførselstegn"
-#: f/lex.c:802
+#: f/lex.c:797
msgid "#-lines for entering and leaving files don't match"
msgstr "#-linjer til at træde ind og ud af filer passer ikke"
-#: f/lex.c:964
+#: f/lex.c:957
msgid "bad directive -- missing close-quote"
msgstr "forkert udformet direktiv - intet afsluttende anførselstegn"
-#: f/lex.c:1078
-#, c-format
-msgid "ignoring pragma: %s"
-msgstr "ignorerer pragma: %s"
-
-#: f/lex.c:1156
+#: f/lex.c:1096
msgid "invalid #ident"
msgstr "ugyldig #ident"
-#: f/lex.c:1173
+#: f/lex.c:1113
msgid "undefined or invalid # directive"
msgstr "ugyldigt eller ikke-defineret #-direktiv"
-#: f/lex.c:1229
+#: f/lex.c:1168
msgid "invalid #line"
msgstr "ugyldig #line"
-#: f/lex.c:1285 f/lex.c:1329
+#: f/lex.c:1224 f/lex.c:1268
msgid "use `#line ...' instead of `# ...' in first line"
msgstr "benyt '#line ...' i stedet for '# ...' i første linje"
-#: f/lex.c:1339
+#: f/lex.c:1278
msgid "invalid #-line"
msgstr "ugyldig #-linje"
-#: f/lex.c:1432
+#: f/lex.c:1371
#, no-c-format
msgid "Null character at %0 -- line ignored"
msgstr "Nultegn ved %0 - linje ignoreret"
-#: f/stb.c:12078
+#: f/stb.c:9177
#, no-c-format
msgid "INCLUDE at %0 not the only statement on the source line"
msgstr "INCLUDE ved %0 er ikke den eneste sætning på kildekodelinjen"
-#: f/ste.c:1400 f/ste.c:1747
+#: f/ste.c:1397 f/ste.c:1744
msgid "ASSIGNed FORMAT specifier is too small"
msgstr "ASSIGN'et FORMAT-angivelse er for lille"
#. ~~~Someday handle CHARACTER*1, CHARACTER*N
-#: f/ste.c:2624
+#: f/ste.c:2621
#, no-c-format
msgid "SELECT CASE on CHARACTER type (at %0) not supported -- sorry"
msgstr "SELECT CASE på CHARACTER-type (ved %0) er ikke understøttet - desværre"
-#: f/ste.c:2729
+#: f/ste.c:2725
msgid "SELECT (at %0) has duplicate cases -- check integer overflow of CASE(s)"
msgstr "SELECT (ved %0) har ens tilfælde -- tjek heltalsoverløb af CASEs"
-#: f/ste.c:2959
+#: f/ste.c:2957
msgid "ASSIGN to variable that is too small"
msgstr "ASSIGN til variabel der er for lille"
-#: f/ste.c:2987
+#: f/ste.c:2989
msgid "ASSIGNed GOTO target variable is too small"
msgstr "ASSIGN'et GOTO-målvariabel er for lille"
@@ -18555,335 +18003,25 @@ msgstr "ASSIGN'et GOTO-målvariabel er for lille"
msgid "Local adjustable symbol `%A' at %0"
msgstr "Lokalt justerbart symbol '%A' ved %0"
-#: f/target.c:2550
+#: f/target.c:2545
msgid "data initializer on host with different endianness"
msgstr "datastartværdi på vært med anden endethed"
-#: f/top.c:237
-#, c-format
-msgid "%s no longer supported -- try -fvxt"
+#: f/top.c:244
+#, fuzzy
+msgid "-fvxt-not-f90 no longer supported -- try -fvxt"
msgstr "%s er ikke længere understøttet - prøv -fvxt"
-#: f/top.c:239
-#, c-format
-msgid "%s no longer supported -- try -fno-vxt -ff90"
+#: f/top.c:248
+#, fuzzy
+msgid "-ff90-not-vxt no longer supported -- try -fno-vxt -ff90"
msgstr "%s er ikke længere understøttet - prøv -fno-vxt -ff90"
-#: f/top.c:307 f/top.c:309
-#, c-format
-msgid "%s disabled, use normal debugging flags"
+#: f/top.c:318
+#, fuzzy
+msgid "-fdebug-kludge is disabled, use normal debugging flags"
msgstr "%s deaktiveret, benyt normale fejlanalyseringstilvalg"
-#: f/lang-options.h:33
-msgid "Print g77-specific compiler version info, run internal tests"
-msgstr "Udskriv g77-specifik oversætterversioninfo, kør interne test"
-
-#: f/lang-options.h:37
-msgid "Program is written in typical FORTRAN 66 dialect"
-msgstr "Program er skrevet i typisk FORTRAN 66-dialekt"
-
-#: f/lang-options.h:40
-msgid "Program is written in typical Unix f77 dialect"
-msgstr "Program er skrevet i typisk Unix f77-dialekt"
-
-#: f/lang-options.h:42
-msgid "Program does not use Unix-f77 dialectal features"
-msgstr "Program benytter ikke Unix f77-dialektiske faciliteter"
-
-#: f/lang-options.h:44
-msgid "Program is written in Fortran-90-ish dialect"
-msgstr "Program er skrevet i Fortran 90-agtig dialekt"
-
-#: f/lang-options.h:48
-msgid "Treat local vars and COMMON blocks as if they were named in SAVE statements"
-msgstr "Behandl lokale variable og COMMON-blokke som om de var nævnt i SAVE-sætninger"
-
-#: f/lang-options.h:50
-msgid "Allow $ in symbol names"
-msgstr "Tillad $ i symbolnavne"
-
-#: f/lang-options.h:54
-msgid "f2c-compatible code need not be generated"
-msgstr "f2c-kompatibel kode behøver ikke at blive genereret"
-
-#: f/lang-options.h:57
-msgid "Unsupported; do not generate libf2c-calling code"
-msgstr "Ikke-understøttet; generér ikke libf2c-kaldende kode"
-
-#: f/lang-options.h:59
-msgid "Unsupported; affects code-generation of arrays"
-msgstr "Ikke-understøttet; påvirker kodegenerering af tabeller"
-
-#: f/lang-options.h:62
-msgid "Program is written in Fortran-90-ish free form"
-msgstr "Program er skrevet i Fortran 90-agtig fri stil"
-
-#: f/lang-options.h:67
-msgid "Warn about use of (only a few for now) Fortran extensions"
-msgstr "Advar om brug af (i øjeblikket kun nogle få) Fortran-udvidelser"
-
-#: f/lang-options.h:70
-msgid "Program is written in VXT (Digital-like) FORTRAN"
-msgstr "Program er skrevet i VXT (Digital-agtig) FORTRAN"
-
-#: f/lang-options.h:73
-msgid "Disallow all ugly features"
-msgstr "Forbyd alle grimme faciliteter"
-
-# hollerith?
-#: f/lang-options.h:76
-msgid "Hollerith and typeless constants not passed as arguments"
-msgstr "Hollerith og typeløse konstanter overbringes ikke som parametre"
-
-#: f/lang-options.h:78
-msgid "Allow ordinary copying of ASSIGN'ed vars"
-msgstr "Tillad almindelig kopiering af ASSIGN'ede variable"
-
-# RETMIG: ?
-#: f/lang-options.h:81
-msgid "Dummy array dimensioned to (1) is assumed-size"
-msgstr "Dummy-tabel dimensioneret til (1) er antaget størrelse"
-
-#: f/lang-options.h:84
-msgid "Trailing comma in procedure call denotes null argument"
-msgstr "Afsluttende komma i procedurekald angiver nulparameter"
-
-#: f/lang-options.h:87
-msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
-msgstr "Tillad REAL(Z) og AIMAG(Z) givet DOUBLE COMPLEX Z"
-
-#: f/lang-options.h:91
-msgid "Initialization via DATA and PARAMETER is type-compatible"
-msgstr "Klargøring via DATA og PARAMETER er type-kompatible"
-
-#: f/lang-options.h:93
-msgid "Allow INTEGER and LOGICAL interchangeability"
-msgstr "Tillad INTEGER og LOGICAL på hinandens plads"
-
-#: f/lang-options.h:96
-msgid "Print internal debugging-related info"
-msgstr "Udskriv intern fejlanalyseringsrelateret info"
-
-#: f/lang-options.h:99
-msgid "Initialize local vars and arrays to zero"
-msgstr "Klargør lokale variable og tabeller til nul"
-
-#: f/lang-options.h:103
-msgid "Backslashes in character/hollerith constants not special (C-style)"
-msgstr "Omvendte skråstreger i tegn/hollerith-konstanter er ikke specielle (C-stil)"
-
-#: f/lang-options.h:105
-msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
-msgstr "Lad forenden emulere COMPLEX-beregninger for at undgå fejl"
-
-#: f/lang-options.h:109
-msgid "Disable the appending of underscores to externals"
-msgstr "Deaktivér tilføjelse af understreger bag på eksterne variable"
-
-#: f/lang-options.h:112
-msgid "Never append a second underscore to externals"
-msgstr "Tilføj aldrig en anden understreg til eksterne variable"
-
-#: f/lang-options.h:114
-msgid "Intrinsics spelled as e.g. SqRt"
-msgstr "Indbyggede staves som f.eks. SqRt"
-
-#: f/lang-options.h:116
-msgid "Intrinsics in uppercase"
-msgstr "Indbyggede staves med store bogstaver"
-
-#: f/lang-options.h:119
-msgid "Intrinsics letters in arbitrary cases"
-msgstr "Der skelnes ikke mellem små og store bogstaver i indbyggede"
-
-#: f/lang-options.h:121
-msgid "Language keywords spelled as e.g. IOStat"
-msgstr "Sprognøgleord staves som f.eks. IOStat"
-
-#: f/lang-options.h:123
-msgid "Language keywords in uppercase"
-msgstr "Sprognøgleord staves med store bogstaver"
-
-#: f/lang-options.h:126
-msgid "Language keyword letters in arbitrary cases"
-msgstr "Der skelnes ikke mellem små og store bogstaver i sprognøgleord"
-
-#: f/lang-options.h:128
-msgid "Internally convert most source to uppercase"
-msgstr "Konvertér det meste kildekode til store bogstaver internt"
-
-#: f/lang-options.h:131
-msgid "Internally preserve source case"
-msgstr "Bevar de store/små bogstaver i kildekoden internt"
-
-#: f/lang-options.h:133
-msgid "Symbol names spelled in mixed case"
-msgstr "Symbolnavne staves med en blanding af store og små bogstaver"
-
-#: f/lang-options.h:135
-msgid "Symbol names in uppercase"
-msgstr "Symbolnavne staves med store bogstaver"
-
-#: f/lang-options.h:137
-msgid "Symbol names in lowercase"
-msgstr "Symbolnavne staves med små bogstaver"
-
-#: f/lang-options.h:140
-msgid "Program written in uppercase"
-msgstr "Program skrives med store bogstaver"
-
-#: f/lang-options.h:142
-msgid "Program written in lowercase"
-msgstr "Program skrives med små bogstaver"
-
-#: f/lang-options.h:144
-msgid "Program written in strict mixed-case"
-msgstr "Program skrives med streng blanding af store/små bogstaver"
-
-#: f/lang-options.h:146
-msgid "Compile as if program written in uppercase"
-msgstr "Oversæt som hvis programmet var skrevet med store bogstaver"
-
-#: f/lang-options.h:148
-msgid "Compile as if program written in lowercase"
-msgstr "Oversæt som hvis programmet var skrevet med små bogstaver"
-
-#: f/lang-options.h:150
-msgid "Preserve all spelling (case) used in program"
-msgstr "Bevar al stavning (store/små bogstaver) benyttet i programmet"
-
-#: f/lang-options.h:152
-msgid "Delete libU77 intrinsics with bad interfaces"
-msgstr "Slet libU77-indbyggede med dårlige grænseflader"
-
-#: f/lang-options.h:154
-msgid "Disable libU77 intrinsics with bad interfaces"
-msgstr "Deaktivér libU77-indbyggede med dårlige grænseflader"
-
-#: f/lang-options.h:157
-msgid "Hide libU77 intrinsics with bad interfaces"
-msgstr "Skjul libU77-indbyggede med dårlige grænseflader"
-
-#: f/lang-options.h:159
-msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
-msgstr "Slet f2c-understøttelse af ikke-FORTRAN-77-indbyggede"
-
-#: f/lang-options.h:161
-msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
-msgstr "Deaktivér f2c-understøttelse af ikke-FORTRAN-77-indbyggede"
-
-#: f/lang-options.h:164
-msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
-msgstr "Skjul f2c-understøttelse af ikke-FORTRAN-77-indbyggede"
-
-#: f/lang-options.h:166
-msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
-msgstr "Slet F90-understøttelse af ikke-FORTRAN-77-indbyggede "
-
-#: f/lang-options.h:168
-msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
-msgstr "Deaktivér F90-understøttelse af ikke-FORTRAN-77-indbyggede"
-
-#: f/lang-options.h:171
-msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
-msgstr "Skjul F90-understøttelse af ikke-FORTRAN-77-indbyggede"
-
-#: f/lang-options.h:173
-msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
-msgstr "Slet g77-understøttelse af ikke-FORTRAN-77-indbyggede "
-
-#: f/lang-options.h:175
-msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
-msgstr "Deaktivér g77-understøttelse af ikke-FORTRAN-77-indbyggede"
-
-#: f/lang-options.h:178
-msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
-msgstr "Skjul g77-understøttelse af ikke-FORTRAN-77-indbyggede"
-
-#: f/lang-options.h:180
-msgid "Delete MIL-STD 1753 intrinsics"
-msgstr "Slet MIL-STD 1753-indbyggede"
-
-#: f/lang-options.h:182
-msgid "Disable MIL-STD 1753 intrinsics"
-msgstr "Deaktivér MIL-STD 1753-indbyggede"
-
-#: f/lang-options.h:185
-msgid "Hide MIL-STD 1753 intrinsics"
-msgstr "Skjul MIL-STD 1753-indbyggede"
-
-#: f/lang-options.h:187
-msgid "Delete libU77 intrinsics"
-msgstr "Slet libU77-indbyggede"
-
-#: f/lang-options.h:189
-msgid "Disable libU77 intrinsics"
-msgstr "Deaktivér libU77-indbyggede"
-
-#: f/lang-options.h:192
-msgid "Hide libU77 intrinsics"
-msgstr "Skjul libU77-indbyggede"
-
-#: f/lang-options.h:194
-msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr "Slet VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede "
-
-#: f/lang-options.h:196
-msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr "Deaktivér VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede "
-
-#: f/lang-options.h:199
-msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr "Skjul VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede "
-
-#: f/lang-options.h:201
-msgid "Treat initial values of 0 like non-zero values"
-msgstr "Behandl begyndelsesværdier på 0 som værdier forskellig fra nul"
-
-#: f/lang-options.h:204
-msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
-msgstr "Udsend speciel fejlanalyseringsinfo for COMMON og EQUIVALENCE (deaktiveret)"
-
-#: f/lang-options.h:207
-msgid "Take at least one trip through each iterative DO loop"
-msgstr "Tag i det mindste et skridt gennem hver DO-løkke"
-
-#: f/lang-options.h:211
-msgid "Print names of program units as they are compiled"
-msgstr "Udskriv navne på programenheder efterhånden som de oversættes"
-
-#: f/lang-options.h:214
-msgid "Disable fatal diagnostics about inter-procedural problems"
-msgstr "Deaktivér fatale diagnosticeringer af interprocedurale procedurer"
-
-#: f/lang-options.h:216
-msgid "Make prefix-radix non-decimal constants be typeless"
-msgstr "Gør præfiks-grundtal ikke-decimale konstanter typeløse"
-
-#: f/lang-options.h:219
-msgid "Generate code to check subscript and substring bounds"
-msgstr "Generér kode for at tjekke indekserings- og understrengsgrænser"
-
-#: f/lang-options.h:222
-msgid "Fortran-specific form of -fbounds-check"
-msgstr "Fortran-specifik form for -fbounds-check"
-
-#: f/lang-options.h:226
-msgid "Disable warnings about inter-procedural problems"
-msgstr "Deaktivér advarsler om interprocedurale problemer"
-
-#: f/lang-options.h:230
-msgid "Warn about constructs with surprising meanings"
-msgstr "Advar om konstruktioner med overraskende betydninger"
-
-#: f/lang-options.h:235
-msgid "Add a directory for INCLUDE searching"
-msgstr "Tilføj et katalog til INCLUDE-søgning"
-
-#: f/lang-options.h:237
-msgid "Set the maximum line length"
-msgstr "Angiv den maksimale linjelængde"
-
#: f/bad.def:39
#, no-c-format
msgid "Missing first operand for binary operator at %0"
@@ -19786,320 +18924,350 @@ msgstr "I navnelisten"
msgid "In anything"
msgstr "I et eller andet"
-#: java/check-init.c:917
+#: java/check-init.c:905
#, c-format
msgid "internal error in check-init: tree code not implemented: %s"
msgstr "intern fejl i check-init: trækode ikke implementeret: %s"
-#: java/check-init.c:990
-#, c-format
-msgid "final field '%s' may not have been initialized"
+#: java/check-init.c:977
+#, fuzzy
+msgid "%Jfinal field '%D' may not have been initialized"
msgstr "slutfeltet '%s' bliver måske ikke klargjort"
-#: java/class.c:539 java/class.c:564
+#: java/class.c:592 java/class.c:616
msgid "internal error - too many interface type"
msgstr "intern fejl - for mange grænsefladetyper"
-#: java/class.c:677
+#: java/class.c:715
msgid "bad method signature"
msgstr "ugyldig metodesignatur"
-#: java/class.c:726
+#: java/class.c:759
msgid "misplaced ConstantValue attribute (not in any field)"
msgstr "forkert placeret ConstantValue-egenskab (ikke i noget felt)"
-#: java/class.c:728
+#: java/class.c:761
#, c-format
msgid "duplicate ConstantValue attribute for field '%s'"
msgstr "mere end én ConstantValue-egenskab for feltet '%s'"
-#: java/class.c:739
+#: java/class.c:772
#, c-format
msgid "ConstantValue attribute of field '%s' has wrong type"
msgstr "ConstantValue-egenskaben for feltet '%s' har forkert type"
-#: java/class.c:1103
+#: java/class.c:1067
#, c-format
msgid "field '%s' not found in class"
msgstr "feltet '%s' blev ikke fundet i klassen"
-#: java/class.c:1365
-msgid "abstract method in non-abstract class"
+#: java/class.c:1324
+#, fuzzy
+msgid "%Jabstract method in non-abstract class"
msgstr "abstrakt metode i ikke-abstrakt klasse"
-#: java/class.c:2078
-#, c-format
-msgid "non-static method '%s' overrides static method"
+#: java/class.c:2140
+#, fuzzy
+msgid "%Jnon-static method '%D' overrides static method"
msgstr "ikke-statisk metode '%s' overskriver statisk metode"
-#: java/decl.c:1541
+#: java/decl.c:1018
+#, fuzzy
+msgid "%J'%D' used prior to declaration"
+msgstr "'%#D' benyttet før erklæring"
+
+#: java/decl.c:1059
#, c-format
-msgid "In %s: overlapped variable and exception ranges at %d"
+msgid "declaration of `%s' shadows a parameter"
+msgstr "erklæring af '%s' skygger for en parameter"
+
+#: java/decl.c:1062
+#, c-format
+msgid "declaration of `%s' shadows a symbol from the parameter list"
+msgstr "erklæring af '%s' skygger for et symbol fra parameterlisten"
+
+#: java/decl.c:1361
+#, fuzzy
+msgid "%Jlabel '%D' used but not defined"
+msgstr "etiketten '%D' er benyttet, men ikke defineret"
+
+#: java/decl.c:1366
+#, fuzzy
+msgid "%Jlabel '%D' defined but not used"
+msgstr "etiketten '%D' er defineret, men ikke benyttet"
+
+#: java/decl.c:1494
+#, fuzzy
+msgid "%JIn %D: overlapped variable and exception ranges at %d"
msgstr "I %s: overlappende variabel- og undtagelsesintervaller ved %d"
-#: java/decl.c:1622
+#: java/decl.c:1572
msgid "bad type in parameter debug info"
msgstr "ugyldig type i parameterfejlanalyseringsinfo"
-#: java/decl.c:1632
-#, c-format
-msgid "bad PC range for debug info for local `%s'"
+#: java/decl.c:1581
+#, fuzzy
+msgid "%Jbad PC range for debug info for local '%D'"
msgstr "ugyldig PC-interval for fejlanalyseringsinfo for lokal '%s'"
-#: java/expr.c:530
+#: java/expr.c:519
msgid "stack underflow - dup* operation"
msgstr "stakunderløb - dup*-operation"
-#: java/expr.c:1534
+#: java/expr.c:1469
#, c-format
msgid "reference `%s' is ambiguous: appears in interface `%s' and interface `%s'"
msgstr "reference '%s' er tvetydig: den optræder i grænsefladen '%s' og grænsefladen '%s'"
-#: java/expr.c:1563
+#: java/expr.c:1497
#, c-format
msgid "field `%s' not found"
msgstr "feltet '%s' ikke fundet"
-#: java/expr.c:1715
+#: java/expr.c:1658
msgid "ret instruction not implemented"
msgstr "ret-instruktion ikke implementeret"
-#: java/expr.c:1857
+#: java/expr.c:1815
#, c-format
msgid "method '%s' not found in class"
msgstr "metoden '%s' ikke fundet i klassen"
-#: java/expr.c:2060
+#: java/expr.c:2020
#, c-format
msgid "failed to find class '%s'"
msgstr "kunne ikke finde klassen '%s'"
-#: java/expr.c:2070
+#: java/expr.c:2030
#, c-format
msgid "class '%s' has no method named '%s' matching signature '%s'"
msgstr "klassen '%s' har ingen metode ved navn '%s' der passer med signaturen '%s'"
-#: java/expr.c:2080
+#: java/expr.c:2040
msgid "invokestatic on non static method"
msgstr "invokestatic på en ikke-statisk metode"
-#: java/expr.c:2085
+#: java/expr.c:2045
msgid "invokestatic on abstract method"
msgstr "invokestatic på en abstrakt metode"
-#: java/expr.c:2093
+#: java/expr.c:2053
msgid "invoke[non-static] on static method"
msgstr "invoke[non-static] på en statisk metode"
-#: java/expr.c:2396
+#: java/expr.c:2352
#, c-format
msgid "missing field '%s' in '%s'"
msgstr "manglende felt '%s' i '%s'"
-#: java/expr.c:2402
+#: java/expr.c:2358
#, c-format
msgid "mismatching signature for field '%s' in '%s'"
msgstr "signatur passer ikke med feltet '%s' i '%s'"
-#: java/expr.c:2425
-#, c-format
-msgid "assignment to final field `%s' not in field's class"
+#: java/expr.c:2380
+#, fuzzy
+msgid "%Jassignment to final field '%D' not in field's class"
msgstr "tildeling til endeligt felt '%s' er ikke i feltets klasse"
-#: java/expr.c:2430
-#, c-format
-msgid "assignment to final static field `%s' not in class initializer"
+#: java/expr.c:2385
+#, fuzzy
+msgid "%Jassignment to final static field `%D' not in class initializer"
msgstr "tildeling til endeligt statisk felt '%s' er ikke i klassens klargøring"
-#: java/expr.c:2437
-#, c-format
-msgid "assignment to final field `%s' not in constructor"
+#: java/expr.c:2393
+#, fuzzy
+msgid "%Jassignment to final field '%D' not in constructor"
msgstr "tildeling til endeligt felt '%s' er ikke i konstruktionsfunktion"
-#: java/expr.c:2684
+#: java/expr.c:2636
#, c-format
msgid "can't expand %s"
msgstr "kan ikke udfolde %s"
-#: java/expr.c:2861
+#: java/expr.c:2808
msgid "invalid PC in line number table"
msgstr "ugyldig PC i linjetalstabel"
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2906
+#: java/expr.c:2854
#, c-format
msgid "unreachable bytecode from %d to before %d"
msgstr "kan ikke nå bytekode fra %d til før %d"
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2943
+#: java/expr.c:2892
#, c-format
msgid "unreachable bytecode from %d to the end of the method"
msgstr "kan ikke nå bytekode fra %d til slutningen af metoden"
#. duplicate code from LOAD macro
-#: java/expr.c:3261
+#: java/expr.c:3206
msgid "unrecogized wide sub-instruction"
msgstr "ukendt bred underinstruktion"
-#: java/jcf-io.c:543
+#: java/jcf-io.c:534
#, c-format
msgid "source file for class `%s' is newer than its matching class file. Source file `%s' used instead"
msgstr "kildekodefilen for klassen '%s' er nyere end dens tilsvarende klassefil; kildekodefilen '%s' benyttet i stedet"
-#: java/jcf-parse.c:338
+#: java/jcf-parse.c:330
msgid "bad string constant"
msgstr "ugyldig strengkonstant"
-#: java/jcf-parse.c:356
+#: java/jcf-parse.c:348
#, c-format
msgid "bad value constant type %d, index %d"
msgstr "ugyldig værdikonstanttype %d, indeks %d"
-#: java/jcf-parse.c:528
-#, c-format
-msgid "can't reopen %s"
+#: java/jcf-parse.c:514
+#, fuzzy, c-format
+msgid "can't reopen %s: %m"
msgstr "kan ikke genåbne %s"
-#: java/jcf-parse.c:533
-#, c-format
-msgid "can't close %s"
+#: java/jcf-parse.c:519
+#, fuzzy, c-format
+msgid "can't close %s: %m"
msgstr "kan ikke lukke %s"
-#: java/jcf-parse.c:619
+#: java/jcf-parse.c:604
#, c-format
msgid "cannot find file for class %s"
msgstr "kan ikke finde filen for klassen %s"
-#: java/jcf-parse.c:631
+#: java/jcf-parse.c:615
msgid "not a valid Java .class file"
msgstr "ikke en gyldig Java .class-fil"
-#: java/jcf-parse.c:634
+#: java/jcf-parse.c:618
msgid "error while parsing constant pool"
msgstr "fejl ved tolkning af konstant område"
-#: java/jcf-parse.c:637
+#: java/jcf-parse.c:621
#, c-format
msgid "error in constant pool entry #%d\n"
msgstr "fejl i konstantområdelement nr. %d\n"
#. FIXME - where was first time
-#: java/jcf-parse.c:649
+#: java/jcf-parse.c:633
#, c-format
msgid "reading class %s for the second time from %s"
msgstr "læser klassen %s for anden gang fra %s"
-#: java/jcf-parse.c:667
+#: java/jcf-parse.c:651
msgid "error while parsing fields"
msgstr "fejl ved tolkning af felter"
-#: java/jcf-parse.c:670
+#: java/jcf-parse.c:654
msgid "error while parsing methods"
msgstr "fejl ved tolkning af metoder"
-#: java/jcf-parse.c:673
+#: java/jcf-parse.c:657
msgid "error while parsing final attributes"
msgstr "fejl ved tolkning af endelige egenskaber"
-#: java/jcf-parse.c:687
+#: java/jcf-parse.c:671
#, c-format
msgid "the `java.lang.Object' that was found in `%s' didn't have the special zero-length `gnu.gcj.gcj-compiled' attribute. This generally means that your classpath is incorrectly set. Use `info gcj \"Input Options\"' to see the info page describing how to set the classpath"
msgstr "det 'java.lang.Object' som blev fundet i '%s' havde ikke den specielle nullængdes egenskab 'gnu.gcj.gcj-compiled'. Dette betyder som regel at din klassesti er angivet forkert. Prøv 'info gcj \"Input Options\"' for at se en infoside der beskriver hvordan man angiver klassestien"
-#: java/jcf-parse.c:777
+#: java/jcf-parse.c:749
msgid "missing Code attribute"
msgstr "manglende Code-egenskab"
-#: java/jcf-parse.c:1014
-msgid "source file seen twice on command line and will be compiled only once"
+#: java/jcf-parse.c:981
+#, fuzzy
+msgid "%Hsource file seen twice on command line and will be compiled only once"
msgstr "kildekodefil angivet to gange i kommandolinjen og vil kun blive oversat én gang"
-#: java/jcf-parse.c:1030
+#: java/jcf-parse.c:997
msgid "no input file specified"
msgstr "ingen inddatafiler angivet"
-#: java/jcf-parse.c:1059
-#, c-format
-msgid "can't close input file %s"
+#: java/jcf-parse.c:1026
+#, fuzzy, c-format
+msgid "can't close input file %s: %m"
msgstr "kan ikke lukke inddatafilen %s"
-#: java/jcf-parse.c:1096
+#: java/jcf-parse.c:1064
#, c-format
msgid "bad zip/jar file %s"
msgstr "ødelagt zip/jar-fil %s"
-#: java/jcf-write.c:2650
+#: java/jcf-parse.c:1236
+#, fuzzy, c-format
+msgid "error while reading %s from zip file"
+msgstr "fejl ved tolkning af felter"
+
+#: java/jcf-write.c:2602
#, c-format
msgid "internal error in generate_bytecode_insn - tree code not implemented: %s"
msgstr "intern fejl i generate_bytecode_insn - trækode er ikke implementeret: %s"
-#: java/jcf-write.c:2988
+#: java/jcf-write.c:2934
msgid "field initializer type mismatch"
msgstr "typen af startværdien for feltet passer ikke"
-#: java/jcf-write.c:3419
-#, c-format
-msgid "can't create directory %s"
+#: java/jcf-write.c:3389
+#, fuzzy, c-format
+msgid "can't create directory %s: %m"
msgstr "kan ikke oprette kataloget %s"
-#: java/jcf-write.c:3473
-#, c-format
-msgid "can't create %s"
+#: java/jcf-write.c:3442
+#, fuzzy, c-format
+msgid "can't create %s: %m"
msgstr "kan ikke oprette %s"
-#: java/jv-scan.c:187
+#: java/jv-scan.c:185
msgid "only one of `--print-main', `--list-class', and `--complexity' allowed"
msgstr "kun én af '--print-main', '--list-class' og '--complexity' tilladt"
-#: java/jv-scan.c:190
+#: java/jv-scan.c:188
#, c-format
msgid "can't open output file `%s'"
msgstr "kan ikke åbne uddatafilen '%s'"
-#: java/jv-scan.c:224
+#: java/jv-scan.c:222
#, c-format
msgid "file not found `%s'"
msgstr "filen '%s' blev ikke fundet"
-#: java/jvspec.c:426
+#: java/jvspec.c:418
msgid "can't specify `-D' without `--main'\n"
msgstr "kan ikke angive '-D' uden '--main'\n"
-#: java/jvspec.c:429
+#: java/jvspec.c:421
#, c-format
msgid "`%s' is not a valid class name"
msgstr "'%s' er et ugyldigt klassenavn"
-#: java/jvspec.c:435
+#: java/jvspec.c:427
msgid "--resource requires -o"
msgstr "--resource påkræver -o"
-#: java/jvspec.c:442
+#: java/jvspec.c:434
msgid "warning: already-compiled .class files ignored with -C"
msgstr "advarsel: allerede oversatte .class-filer ignoreret med -C"
-#: java/jvspec.c:449
+#: java/jvspec.c:441
msgid "cannot specify both -C and -o"
msgstr "-C og -o er indbyrdes uforenelige"
-#: java/jvspec.c:461
+#: java/jvspec.c:453
msgid "cannot create temporary file"
msgstr "kan ikke oprette midlertidig fil"
-#: java/jvspec.c:489
+#: java/jvspec.c:481
msgid "using both @FILE with multiple files not implemented"
msgstr "brug af @FILE med flere filer er ikke implementeret"
-#: java/jvspec.c:538
+#: java/jvspec.c:530
msgid "cannot specify `main' class when not linking"
msgstr "kan ikke angive 'main'-klassen når der ikke sammenkædes"
-#: java/lang.c:548
+#: java/lang.c:740
msgid "can't do dependency tracking with input from stdin"
msgstr "kan ikke udføre afhængighedsfølgning med inddata fra standard-ind"
-#: java/lang.c:564
+#: java/lang.c:756
msgid "couldn't determine target name for dependency tracking"
msgstr "kunne ikke bestemme målnavn for afhængighedsfølgning"
@@ -20118,300 +19286,210 @@ msgstr ""
"ikke ønske at bruge en bestemt kodning for dine inddatafiler, \n"
"så prøv tilvalget '--encoding=UTF-8'"
-#: java/mangle.c:85
+#: java/mangle.c:89
#, c-format
msgid "can't mangle %s"
msgstr "kan ikke sammensætte %s"
-#: java/mangle_name.c:144 java/mangle_name.c:216
+#: java/mangle_name.c:140 java/mangle_name.c:210
msgid "internal error - invalid Utf8 name"
msgstr "intern fejl - ugyldigt UTF-8-navn"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:881
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:962
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1303
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1364
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1574
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1796
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1805
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1816
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1827
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1839
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1854
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1871
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1873
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1945
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2116
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2178
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2330
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2342
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2349
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2356
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2367
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2369
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2407
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2409
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2411
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2432
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2434
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2436
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2452
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2454
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2475
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2477
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2479
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2507
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2509
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2511
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2513
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2531
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2533
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2555
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2566
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2577
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2588
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2601
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2605
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2607
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2620
+#: java/parse-scan.y:880 java/parse.y:949 java/parse.y:1290 java/parse.y:1351
+#: java/parse.y:1555 java/parse.y:1777 java/parse.y:1786 java/parse.y:1797
+#: java/parse.y:1808 java/parse.y:1820 java/parse.y:1835 java/parse.y:1852
+#: java/parse.y:1854 java/parse.y:1935 java/parse.y:2106 java/parse.y:2168
+#: java/parse.y:2320 java/parse.y:2332 java/parse.y:2339 java/parse.y:2346
+#: java/parse.y:2357 java/parse.y:2359 java/parse.y:2397 java/parse.y:2399
+#: java/parse.y:2401 java/parse.y:2422 java/parse.y:2424 java/parse.y:2426
+#: java/parse.y:2442 java/parse.y:2444 java/parse.y:2465 java/parse.y:2467
+#: java/parse.y:2469 java/parse.y:2497 java/parse.y:2499 java/parse.y:2501
+#: java/parse.y:2503 java/parse.y:2521 java/parse.y:2523 java/parse.y:2534
+#: java/parse.y:2545 java/parse.y:2556 java/parse.y:2567 java/parse.y:2578
+#: java/parse.y:2591 java/parse.y:2595 java/parse.y:2597 java/parse.y:2610
msgid "Missing term"
msgstr "Manglende term"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:883
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:734
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:772
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:797
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:983
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1338
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1550
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1552
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1781
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1807
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1818
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1829
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1841
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1856
+#: java/parse-scan.y:882 java/parse.y:721 java/parse.y:759 java/parse.y:784
+#: java/parse.y:970 java/parse.y:1325 java/parse.y:1531 java/parse.y:1533
+#: java/parse.y:1762 java/parse.y:1788 java/parse.y:1799 java/parse.y:1810
+#: java/parse.y:1822 java/parse.y:1837
msgid "';' expected"
msgstr "';' forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:732
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:770
+#: java/parse.y:719 java/parse.y:757
msgid "Missing name"
msgstr "Manglende navn"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:795
+#: java/parse.y:782
msgid "'*' expected"
msgstr "'*' forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:809
+#: java/parse.y:796
msgid "Class or interface declaration expected"
msgstr "Klasse- eller grænsefladeerklæring forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:846
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:848
+#: java/parse.y:833 java/parse.y:835
msgid "Missing class name"
msgstr "Manglende klassenavn"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:851
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:855
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:863
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1023
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1284
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1616
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1867
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1899
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1952
+#: java/parse.y:838 java/parse.y:842 java/parse.y:850 java/parse.y:1010
+#: java/parse.y:1271 java/parse.y:1273 java/parse.y:1597 java/parse.y:1848
+#: java/parse.y:1880 java/parse.y:1942
msgid "'{' expected"
msgstr "'{' forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:865
+#: java/parse.y:852
msgid "Missing super class name"
msgstr "Manglende superklassenavn"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:875
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:891
+#: java/parse.y:862 java/parse.y:878
msgid "Missing interface name"
msgstr "Manglende grænsefladenavn"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:977
+#: java/parse.y:964
msgid "Missing variable initializer"
msgstr "Manglende variabelstartværdi"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:994
+#: java/parse.y:981
msgid "Invalid declaration"
msgstr "Ugyldig erklæring"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:997
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1082
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2153
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2175
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2179
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2214
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2291
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2301
+#: java/parse.y:984 java/parse.y:1069 java/parse.y:2143 java/parse.y:2165
+#: java/parse.y:2169 java/parse.y:2204 java/parse.y:2281 java/parse.y:2291
msgid "']' expected"
msgstr "']' forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1001
+#: java/parse.y:988
msgid "Unbalanced ']'"
msgstr "Uafbalanceret ']'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1037
+#: java/parse.y:1024
msgid "Invalid method declaration, method name required"
msgstr "Ugyldig metodeerklæring, metodenavn påkrævet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1042
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1047
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1052
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2036
+#: java/parse.y:1029 java/parse.y:1034 java/parse.y:1039 java/parse.y:2026
msgid "Identifier expected"
msgstr "Kaldenavn forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1057
+#: java/parse.y:1044
msgid "Invalid method declaration, return type required"
msgstr "Ugyldig metodeerklæring, returtype påkrævet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1080
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1530
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1537
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1546
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1548
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1576
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1684
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1981
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2034
+#: java/parse.y:1067 java/parse.y:1511 java/parse.y:1518 java/parse.y:1527
+#: java/parse.y:1529 java/parse.y:1557 java/parse.y:1665 java/parse.y:1971
+#: java/parse.y:2024
msgid "')' expected"
msgstr "')' forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1096
+#: java/parse.y:1083
msgid "Missing formal parameter term"
msgstr "Manglende formel parameterterm"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1111
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1116
+#: java/parse.y:1098 java/parse.y:1103
msgid "Missing identifier"
msgstr "Manglende kaldenavn"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1136
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1145
+#: java/parse.y:1123 java/parse.y:1132
msgid "Missing class type term"
msgstr "Manglende klassetypeterm"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1301
+#: java/parse.y:1288
msgid "Invalid interface type"
msgstr "Ugyldig grænsefladetype"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1494
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1663
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1665
+#: java/parse.y:1475 java/parse.y:1644 java/parse.y:1646
msgid "':' expected"
msgstr "':' forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1516
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1521
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1526
+#: java/parse.y:1497 java/parse.y:1502 java/parse.y:1507
msgid "Invalid expression statement"
msgstr "Ugyldig udtrykssætning"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1572
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1612
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1680
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1748
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1869
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1938
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2028
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2030
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2038
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2274
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2276
+#: java/parse.y:1525 java/parse.y:1553 java/parse.y:1593 java/parse.y:1661
+#: java/parse.y:1729 java/parse.y:1850 java/parse.y:1928 java/parse.y:2018
+#: java/parse.y:2020 java/parse.y:2028 java/parse.y:2264 java/parse.y:2266
msgid "'(' expected"
msgstr "'(' forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1614
+#: java/parse.y:1595
msgid "Missing term or ')'"
msgstr "Manglende term eller ')'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1661
+#: java/parse.y:1642
msgid "Missing or invalid constant expression"
msgstr "Manglende eller ugyldigt konstant udtryk"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1682
+#: java/parse.y:1663
msgid "Missing term and ')' expected"
msgstr "Manglende term eller ')' forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1721
+#: java/parse.y:1702
msgid "Invalid control expression"
msgstr "Ugyldigt kontroludtryk"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1723
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1725
+#: java/parse.y:1704 java/parse.y:1706
msgid "Invalid update expression"
msgstr "Ugyldigt opdateringsudtryk"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1750
+#: java/parse.y:1731
msgid "Invalid init statement"
msgstr "Ugyldig klargøringssætning"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1941
+#: java/parse.y:1931
msgid "Missing term or ')' expected"
msgstr "Manglende term eller ')' forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1983
+#: java/parse.y:1973
msgid "'class' or 'this' expected"
msgstr "'class' eller 'this' forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1985
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1987
+#: java/parse.y:1975 java/parse.y:1977
msgid "'class' expected"
msgstr "'class' forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2032
+#: java/parse.y:2022
msgid "')' or term expected"
msgstr "')' eller term forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2151
+#: java/parse.y:2141
msgid "'[' expected"
msgstr "'[' forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2229
+#: java/parse.y:2219
msgid "Field expected"
msgstr "Felt forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2296
+#: java/parse.y:2276 java/parse.y:2286
msgid "Missing term and ']' expected"
msgstr "Manglende term og ']' forventet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2400
+#: java/parse.y:2390
msgid "']' expected, invalid type expression"
msgstr "']' forventet, ugyldigt typeudtryk"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2403
+#: java/parse.y:2393
msgid "Invalid type expression"
msgstr "Ugyldigt typeudtryk"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2515
+#: java/parse.y:2505
msgid "Invalid reference type"
msgstr "Ugyldig referencetype"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2993
+#: java/parse.y:2977
msgid "Constructor invocation must be first thing in a constructor"
msgstr "Konstruktionsfunktionskald skal være det første i en konstruktionsfunktion"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2995
+#: java/parse.y:2979
msgid "Only constructors can invoke constructors"
msgstr "Kun konstruktionsfunktioner kan kalde konstruktionsfunktioner"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3004
+#: java/parse.y:2987
#, c-format
msgid ": `%s' JDK1.1(TM) feature"
msgstr ": '%s' JDK1.1(TM)-facilitet"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3064
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3066
+#: java/parse.y:3046 java/parse.y:3048
#, c-format
msgid ""
"%s.\n"
@@ -20420,244 +19498,227 @@ msgstr ""
"%s.\n"
"%s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6879
+#: java/parse.y:6908
#, c-format
msgid "malformed .zip archive in CLASSPATH: %s"
msgstr "ugyldigt udformet .zip-arkiv i CLASSPATH: %s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6950
+#: java/parse.y:6979
#, c-format
msgid "Can't find default package `%s'. Check the CLASSPATH environment variable and the access to the archives"
msgstr "Kan ikke finde standardpakken '%s'. Kontrollér CLASSPATH-miljøvariablen og tilgangen til arkiverne"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12352
+#: java/parse.y:12192
#, c-format
msgid "missing static field `%s'"
msgstr "manglende statisk felt '%s'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12357
+#: java/parse.y:12197
#, c-format
msgid "not a static field `%s'"
msgstr "ikke et statisk felt '%s'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12400
+#: java/parse.y:12240
#, c-format
msgid "No case for %s"
msgstr "Ingen case for %s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:13365
+#: java/parse.y:13172
#, c-format
msgid "unregistered operator %s"
msgstr "ikke-registreret operator %s"
-#: java/typeck.c:553
+#: java/typeck.c:530
msgid "junk at end of signature string"
msgstr "ragelse i slutningen signaturstreng"
-#: java/verify.c:479
+#: java/verify.c:471
msgid "bad pc in exception_table"
msgstr "ugyldig pc i exception_table"
-#: java/verify.c:485
-msgid "exception handler inside code that is being protected"
-msgstr "undtagelseshåndtering inden i kode der bliver beskyttet"
-
-#: java/verify.c:1395
+#: java/verify.c:1384
#, c-format
msgid "unknown opcode %d@pc=%d during verification"
msgstr "ukendt kode %d@pc=%d under verifikation"
-#: java/verify.c:1465 java/verify.c:1478 java/verify.c:1482
+#: java/verify.c:1454 java/verify.c:1467 java/verify.c:1471
#, c-format
msgid "verification error at PC=%d"
msgstr "verifikationsfejl ved PC=%d"
-#: java/lang-options.h:32
-msgid "Disable automatic array bounds checking"
-msgstr "Deaktivér automatisk tabelgrænsekontrollering"
-
-#: java/lang-options.h:34
-msgid "Disable assignability checks for stores into object arrays"
-msgstr "Deaktivér tildelingstjek for lagringer i objekttabeller"
-
-#: java/lang-options.h:36
-msgid "Assume native functions are implemented using JNI"
-msgstr "Antag at indfødte funktioner er implementeret vha. JNI"
-
-#: java/lang-options.h:38
-msgid "Replace system path"
-msgstr "Erstat systemsti"
-
-#: java/lang-options.h:40
-msgid "Set class path"
-msgstr "Angiv klassesti"
-
-#: java/lang-options.h:42
-msgid "Set class path (deprecated: use --classpath instead)"
-msgstr "Angiv klassesti (forældet: benyt --classpath i stedet)"
-
-#: java/lang-options.h:44
-msgid "Choose class whose main method should be used"
-msgstr "Vælg klasse hvis main-metode skal bruges"
-
-#: java/lang-options.h:46
-msgid "Choose input encoding (default comes from locale)"
-msgstr "Vælg inddatakodning (standardværdi kommer fra regionalindstillinger)"
-
-#: java/lang-options.h:48
-msgid "Add directory to class path"
-msgstr "Tilføj katalog til klassesti"
-
-#: java/lang-options.h:50
-msgid "Directory where class files should be written"
-msgstr "Katalog som klassefiler skrives i"
-
-#: java/lang-options.h:52
-msgid "Warn if modifiers are specified when not necessary"
-msgstr "Advar hvis modifikationer angives når det ikke er nødvendigt"
-
-#: java/lang-options.h:54
-msgid "Warn if deprecated empty statements are found"
-msgstr "Advar hvis forældede tomme sætninger bliver fundet"
-
-#: java/lang-options.h:56
-msgid "Warn if .class files are out of date"
-msgstr "Advar hvis .class-filer er forældede"
-
-#: java/lang-options.h:58
-msgid "Always check for non gcj generated classes archives"
-msgstr "Kontrollér altid for ikke-GCJ-genererede klassearkiver"
-
-#: java/lang-options.h:60
-msgid "Never optimize static class initialization code"
-msgstr "Optimér aldrig statiske klassers klargøringskode"
-
-#: java/lang-options.h:62
-msgid "Use offset tables for virtual method calls"
-msgstr "Benyt afsætstabeller til virtuelle metodekald"
-
-#: objc/objc-act.c:651
+#: objc/objc-act.c:689
#, c-format
msgid "object does not conform to the `%s' protocol"
msgstr "objekt overholder ikke protokollen '%s'"
-#: objc/objc-act.c:737 objc/objc-act.c:810
+#: objc/objc-act.c:775 objc/objc-act.c:848
#, c-format
msgid "class `%s' does not implement the `%s' protocol"
msgstr "klassen '%s' implementerer ikke protokollen '%s'"
-#: objc/objc-act.c:914
-#, c-format
-msgid "`%s' cannot be statically allocated"
-msgstr "'%s' kan ikke allokeres statisk"
+#: objc/objc-act.c:951
+#, fuzzy, c-format
+msgid "statically allocated instance of Objective-C class `%s'"
+msgstr "statisk allokerede objekter understøttes ikke"
-#: objc/objc-act.c:963
+#: objc/objc-act.c:998
#, c-format
msgid "unexpected type for `id' (%s)"
msgstr "uventet type for 'id' (%s)"
-#: objc/objc-act.c:968
+#: objc/objc-act.c:1003
msgid "undefined type `id', please import <objc/objc.h>"
msgstr "typen 'id' er ikke defineret, importér venligst <objc/objc.h>"
-#: objc/objc-act.c:1019
+#: objc/objc-act.c:1052
#, c-format
msgid "protocol `%s' has circular dependency"
msgstr "protokollen '%s' har cirkulær afhængighed"
-#: objc/objc-act.c:1041 objc/objc-act.c:5301
+#: objc/objc-act.c:1074 objc/objc-act.c:5982
#, c-format
msgid "cannot find protocol declaration for `%s'"
msgstr "kan ikke finde protokolerklæringen af '%s'"
-#: objc/objc-act.c:1289 objc/objc-act.c:5877 objc/objc-act.c:6195
-#: objc/objc-act.c:6244 objc/objc-act.c:6280 objc-parse.y:1799
+#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6513
+#: objc/objc-act.c:6822 objc/objc-act.c:6875 objc/objc-act.c:6900
#, c-format
msgid "cannot find interface declaration for `%s'"
msgstr "kan ikke finde grænsefladeerklæringen af '%s'"
-#: objc/objc-act.c:1328
+#: objc/objc-act.c:1423
+#, fuzzy, c-format
+msgid "interface `%s' does not have valid constant string layout"
+msgstr "parameteren til 'asm' er ikke en konstant streng"
+
+#: objc/objc-act.c:1439
#, c-format
msgid "cannot find reference tag for class `%s'"
msgstr "kan ikke finde referencemærket for klassen '%s'"
-#: objc/objc-act.c:2050
+#: objc/objc-act.c:2179
#, c-format
msgid "creating selector for non existant method %s"
msgstr "opretter vælger for ikke-eksisterende metode '%s'"
-#: objc/objc-act.c:2364
+#: objc/objc-act.c:2389
+#, fuzzy, c-format
+msgid "`%s' is not an Objective-C class name or alias"
+msgstr "'%s' er et ugyldigt klassenavn"
+
+#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6769
+#: objc/objc-act.c:7059 objc/objc-act.c:7088
+msgid "Objective-C declarations may only appear in global scope"
+msgstr ""
+
+#: objc/objc-act.c:2505
#, c-format
msgid "cannot find class `%s'"
msgstr "kan ikke finde klassen '%s'"
-#: objc/objc-act.c:2366
+#: objc/objc-act.c:2507
#, c-format
msgid "class `%s' already exists"
msgstr "klassen '%s' eksisterer allerede"
+#: objc/objc-act.c:2532 objc/objc-act.c:6791
+#, c-format
+msgid "`%s' redeclared as different kind of symbol"
+msgstr "'%s' omerklæret som en anden form for symbol"
+
#. fatal did not work with 2 args...should fix
-#: objc/objc-act.c:2473
+#: objc/objc-act.c:2680
#, c-format
msgid "cannot find interface declaration for `%s', superclass of `%s'"
msgstr "kan ikke grænsefladeerklæringen af '%s', superklasse til '%s'"
-#: objc/objc-act.c:2480
+#: objc/objc-act.c:2687
#, c-format
msgid "circular inheritance in interface declaration for `%s'"
msgstr "cirkulær nedarvning i interface-erklæringen af '%s'"
-#: objc/objc-act.c:3566 objc/objc-act.c:3583
+#: objc/objc-act.c:2780 objc/objc-act.c:2924 objc/objc-act.c:3024
+#: objc/objc-act.c:3200 objc/objc-act.c:3240
+msgid "Use `-fobjc-exceptions' to enable Objective-C exception syntax"
+msgstr ""
+
+#: objc/objc-act.c:2787
+msgid "`@throw;' (rethrow) used outside of a `@catch' block"
+msgstr ""
+
+#: objc/objc-act.c:3027
+msgid "`@catch' parameter is not a known Objective-C class type"
+msgstr ""
+
+#: objc/objc-act.c:3036
+msgid "Exception already handled by preceding `@catch(id)'"
+msgstr ""
+
+#: objc/objc-act.c:3041
+#, fuzzy, c-format
+msgid "Exception of type `%s *' already handled by `@catch (%s *)'"
+msgstr "undtagelse af typen '%T' vil blive fanget"
+
+#: objc/objc-act.c:3206
+msgid "`@try' without `@catch' or `@finally'"
+msgstr ""
+
+#: objc/objc-act.c:3647
+msgid "%Jtype '%D' does not have a known size"
+msgstr ""
+
+#: objc/objc-act.c:4256
+#, fuzzy
+msgid "%J%s `%s'"
+msgstr "I %s '%s':"
+
+#: objc/objc-act.c:4281 objc/objc-act.c:4300
msgid "inconsistent instance variable specification"
msgstr "inkonsistent instansvariabelangivelse"
-#: objc/objc-act.c:4580
+#: objc/objc-act.c:5303
msgid "can not use an object as parameter to a method\n"
msgstr "kan ikke benytte et objekt som parameter til en metode\n"
-#: objc/objc-act.c:4780
-#, c-format
-msgid "multiple declarations for method `%s'"
-msgstr "mere end én erklæring af metoden '%s'"
+#: objc/objc-act.c:5504
+#, fuzzy, c-format
+msgid "multiple %s named `%c%s' found"
+msgstr "flere parametre ved navn '%s'"
-#: objc/objc-act.c:4946
+#: objc/objc-act.c:5721
+#, fuzzy, c-format
+msgid "no super class declared in @interface for `%s'"
+msgstr "ingen superklasse erklæret i grænsefladen for '%s'"
+
+#: objc/objc-act.c:5809
#, c-format
msgid "invalid receiver type `%s'"
msgstr "ugyldig modtagertype '%s'"
-#: objc/objc-act.c:4977 objc/objc-act.c:5003 objc/objc-act.c:5051
-#, c-format
-msgid "`%s' does not respond to `%s'"
+#: objc/objc-act.c:5820
+#, fuzzy, c-format
+msgid "`%s' may not respond to `%c%s'"
msgstr "'%s' svarer ikke på '%s'"
-#: objc/objc-act.c:4983 objc/objc-act.c:7318
-#, c-format
-msgid "no super class declared in interface for `%s'"
-msgstr "ingen superklasse erklæret i grænsefladen for '%s'"
-
-#: objc/objc-act.c:5081
-msgid "cannot find class (factory) method"
-msgstr "kan ikke finde klasse(fabriks)metode"
-
-#: objc/objc-act.c:5082 objc/objc-act.c:5126
-#, c-format
-msgid "return type for `%s' defaults to id"
-msgstr "returtypen for '%s' får standardværdien id"
-
-#: objc/objc-act.c:5099
-#, c-format
-msgid "method `%s' not implemented by protocol"
+#: objc/objc-act.c:5825
+#, fuzzy, c-format
+msgid "`%c%s' not implemented by protocol(s)"
msgstr "metoden '%s' er ikke implementeret af protokollen"
-#: objc/objc-act.c:5108
-msgid "return type defaults to id"
-msgstr "returtype får standardværdien id"
+#: objc/objc-act.c:5830
+msgid "(Messages without a matching method signature"
+msgstr ""
-#: objc/objc-act.c:5125
-msgid "cannot find method"
-msgstr "kan ikke finde metode"
+#: objc/objc-act.c:5831
+msgid "will be assumed to return `id' and accept"
+msgstr ""
-#: objc/objc-act.c:5399
+#: objc/objc-act.c:5832
+#, fuzzy
+msgid "`...' as arguments.)"
+msgstr "ingen parametre"
+
+#: objc/objc-act.c:6079
#, c-format
msgid "undeclared selector `%s'"
msgstr "uerklæret vælger '%s'"
@@ -20671,311 +19732,3249 @@ msgstr "uerklæret vælger '%s'"
#. to an instance variable. It's better to catch the cases
#. where this is done unknowingly than to support the above
#. paradigm.
-#: objc/objc-act.c:5443
+#: objc/objc-act.c:6121
#, c-format
msgid "instance variable `%s' accessed in class method"
msgstr "instansvariablen '%s' tilgået i klassemetode"
-#: objc/objc-act.c:5678
-#, c-format
-msgid "duplicate definition of class method `%s'"
-msgstr "mere end én definition af klassemetoden '%s'"
-
-#: objc/objc-act.c:5684
-#, c-format
-msgid "duplicate declaration of class method `%s'"
+#: objc/objc-act.c:6327
+#, fuzzy, c-format
+msgid "duplicate declaration of method `%c%s'"
msgstr "mere end én erklæring af klassemetoden '%s'"
-#: objc/objc-act.c:5720
-#, c-format
-msgid "duplicate definition of instance method `%s'"
-msgstr "mere end én definition af instansmetoden '%s'"
-
-#: objc/objc-act.c:5726
-#, c-format
-msgid "duplicate declaration of instance method `%s'"
-msgstr "mere end én erklæring af instansmetoden '%s'"
-
-#: objc/objc-act.c:5766
+#: objc/objc-act.c:6368
#, c-format
msgid "duplicate interface declaration for category `%s(%s)'"
msgstr "mere end én grænsefladeerklæring af kategorien '%s(%s)'"
-#: objc/objc-act.c:5852
+#: objc/objc-act.c:6398
+#, fuzzy, c-format
+msgid "illegal reference type specified for instance variable `%s'"
+msgstr "ignorerer asm-anvisning til den ikke-statiske, lokale variabel '%s'"
+
+#: objc/objc-act.c:6414
+#, fuzzy, c-format
+msgid "instance variable `%s' has unknown size"
+msgstr "instansvariablen '%s' er erklæret '%s'"
+
+#. vtable pointers are Real Bad(tm), since Obj-C cannot initialize them
+#: objc/objc-act.c:6428
+#, fuzzy, c-format
+msgid "type `%s' has virtual member functions"
+msgstr " eftersom typen '%T' har abstrakte virtuelle funktioner"
+
+#: objc/objc-act.c:6429
+#, fuzzy, c-format
+msgid "illegal aggregate type `%s' specified for instance variable `%s'"
+msgstr "ignorerer asm-anvisning til den ikke-statiske, lokale variabel '%s'"
+
+#: objc/objc-act.c:6437
+#, fuzzy, c-format
+msgid "type `%s' has a user-defined constructor"
+msgstr "typen '%T' har ingen destruktionsfunktion"
+
+#: objc/objc-act.c:6439
+#, fuzzy, c-format
+msgid "type `%s' has a user-defined destructor"
+msgstr "typen '%T' har ingen destruktionsfunktion"
+
+#: objc/objc-act.c:6440
+msgid "C++ constructors and destructors will not be invoked for Objective-C fields"
+msgstr ""
+
+#: objc/objc-act.c:6490
#, c-format
msgid "instance variable `%s' is declared private"
msgstr "instansvariablen '%s' er erklæret privat"
-#: objc/objc-act.c:5899
+#: objc/objc-act.c:6539
+#, fuzzy, c-format
+msgid "instance variable `%s' is %s; this will be a hard error in the future"
+msgstr "instansvariablen '%s' er erklæret privat"
+
+#: objc/objc-act.c:6546
#, c-format
msgid "instance variable `%s' is declared %s"
msgstr "instansvariablen '%s' er erklæret '%s'"
-#: objc/objc-act.c:5909
+#: objc/objc-act.c:6556
msgid "static access to object of type `id'"
msgstr "statisk tilgang til objekt af typen 'id'"
-#: objc/objc-act.c:5934 objc/objc-act.c:6027
+#: objc/objc-act.c:6578 objc/objc-act.c:6666
#, c-format
msgid "incomplete implementation of class `%s'"
msgstr "ufuldstændig implementering af klassen '%s'"
-#: objc/objc-act.c:5938 objc/objc-act.c:6032
+#: objc/objc-act.c:6582 objc/objc-act.c:6671
#, c-format
msgid "incomplete implementation of category `%s'"
msgstr "ufuldstændig implementering af kategorien '%s'"
-#: objc/objc-act.c:5943 objc/objc-act.c:6037
+#: objc/objc-act.c:6587 objc/objc-act.c:6676
#, c-format
msgid "method definition for `%c%s' not found"
msgstr "metodedefinitionen for '%c%s' ikke fundet"
-#: objc/objc-act.c:6081
+#: objc/objc-act.c:6717
#, c-format
msgid "%s `%s' does not fully implement the `%s' protocol"
msgstr "%s '%s' implementerer ikke helt protokollen '%s'"
-#: objc/objc-act.c:6139 objc/objc-act.c:8249
+#: objc/objc-act.c:6775 objc/objc-act.c:8803
msgid "`@end' missing in implementation context"
msgstr "'@end' mangler i implementationskontekst"
-#: objc/objc-act.c:6167
+#: objc/objc-act.c:6805
#, c-format
msgid "reimplementation of class `%s'"
msgstr "omimplementering af klassen '%s'"
-#: objc/objc-act.c:6209
+#: objc/objc-act.c:6836
#, c-format
msgid "conflicting super class name `%s'"
msgstr "modstridende superklassenavn '%s'"
-#: objc/objc-act.c:6224
+#: objc/objc-act.c:6838
+#, c-format
+msgid "previous declaration of `%s'"
+msgstr "'%s' er tidligere erklæret"
+
+#: objc/objc-act.c:6852 objc/objc-act.c:6854
#, c-format
msgid "duplicate interface declaration for class `%s'"
msgstr "mere end én grænsefladeerklæring af klassen '%s'"
-#: objc/objc-act.c:6506
+#: objc/objc-act.c:7121
#, c-format
msgid "duplicate declaration for protocol `%s'"
msgstr "mere end én erklæring af protokollen '%s'"
-#: objc/objc-act.c:7363
-msgid "[super ...] must appear in a method context"
-msgstr "[super ...] skal optræde i en metodekontekst"
+#. Add a readable method name to the warning.
+#: objc/objc-act.c:7613
+#, fuzzy
+msgid "%J%s `%c%s'"
+msgstr "I %s '%s':"
-#: objc/objc-act.c:8354 objc/objc-act.c:8370
+#: objc/objc-act.c:7908
#, c-format
-msgid "potential selector conflict for method `%s'"
-msgstr "potentiel vælgerkonflikt for metoden '%s'"
+msgid "no super class declared in interface for `%s'"
+msgstr "ingen superklasse erklæret i grænsefladen for '%s'"
+
+#: objc/objc-act.c:7956
+msgid "[super ...] must appear in a method context"
+msgstr "[super ...] skal optræde i en metodekontekst"
-#: objc-parse.y:2655
+#: objc/objc-parse.y:2700
msgid "`@end' must appear in an implementation context"
msgstr "'@end' skal optræde i en implementationskontekst"
-#: objc-parse.y:2931
+#: objc/objc-parse.y:2913
msgid "method definition not in class context"
msgstr "metodedefinitionen optræder ikke i en klassekontekst"
-#: objc/lang-options.h:27
-msgid "Dump decls to a .decl file"
-msgstr "Udskriv erklæringer i en .decl-fil"
+#: options.c:24
+#, fuzzy
+msgid "Display this information"
+msgstr " --help Vis disse oplysninger\n"
+
+#: options.c:30
+msgid "--param <param>=<value>\tSet paramter <param> to value. See below for a complete list of parameters"
+msgstr ""
+
+#: options.c:39
+msgid "-A<question>=<answer>\tAssert the <answer> to <question>. Putting '-' before <question> disables the <answer> to <question>"
+msgstr ""
+
+#: options.c:42
+#, fuzzy
+msgid "Do not discard comments"
+msgstr "Deaktivér ikke pladsregistre"
+
+#: options.c:45
+msgid "Do not discard comments in macro expansions"
+msgstr ""
-#: objc/lang-options.h:29
+#: options.c:48
+msgid "-D<macro>[=<val>]\tDefine a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1"
+msgstr ""
+
+#: options.c:54
+#, fuzzy
+msgid "-G<number>\tPut global and static data smaller than <number> bytes into a special section (on some targets)"
+msgstr " -G <str> Anbring globale og statiske data mindre end <tal> byte i en specialsektion (på nogle målarkitekturer)\n"
+
+#: options.c:57
+#, fuzzy
+msgid "Print the name of header files as they are used"
+msgstr "Udskriv navne på programenheder efterhånden som de oversættes"
+
+#: options.c:66
+#, fuzzy
+msgid "Generate make dependencies and compile"
+msgstr "Generér lilleendet kode"
+
+#: options.c:75
+msgid "Treat missing header files as generated files"
+msgstr ""
+
+#: options.c:81
+msgid "Like -MD but ignore system header files"
+msgstr ""
+
+#: options.c:90
+msgid "-MQ <target>\tAdd a MAKE-quoted target"
+msgstr ""
+
+#: options.c:96
+#, fuzzy
+msgid "-O<number>\tSet optimization level to <number>"
+msgstr " -O[tal] Sæt optimeringsniveauet til [tal]\n"
+
+#: options.c:99
+#, fuzzy
+msgid "Optimize for space rather than speed"
+msgstr " -Os Optimér mht. plads i stedet for hastighed\n"
+
+#: options.c:102
+#, fuzzy
+msgid "Do not generate #line directives"
+msgstr "Generér ikke .size-direktiver"
+
+#: options.c:105
+msgid "-U<macro>\tUndefine <macro>"
+msgstr ""
+
+#: options.c:108
+#, fuzzy
+msgid "This switch is deprecated; use -Wextra instead"
+msgstr "Angiv klassesti (forældet: benyt --classpath i stedet)"
+
+#: options.c:114
+msgid "Warn about returning structures, unions or arrays"
+msgstr "Advar om returnering af struct, union og tabeller"
+
+#: options.c:120
+msgid "Warn about casting functions to incompatible types"
+msgstr "Advar om omtvingning af funktioner til ikke-kompatible typer"
+
+#: options.c:123
+msgid "Warn about pointer casts which increase alignment"
+msgstr "Advar om typeomtvingning af henvisninger som forøger justeringen"
+
+#: options.c:126
+msgid "Warn about casts which discard qualifiers"
+msgstr "Advar om typeomtvingninger som forkaster modifikationer"
+
+#: options.c:129
+#, fuzzy
+msgid "Warn about subscripts whose type is \"char\""
+msgstr "Advar som tabelindeksering hvis type er 'char'"
+
+#: options.c:138
+msgid "Warn about possibly confusing type conversions"
+msgstr "Advar om typekonverteringer der kan være forvirrende"
+
+#: options.c:141
+#, fuzzy
+msgid "Warn when all constructors and destructors are private"
+msgstr "Advar ikke når alle konstruktions-/destruktionsfunktioner er private"
+
+#: options.c:144
+#, fuzzy
+msgid "Warn when a declaration is found after a statement"
+msgstr "Advar når en erklæring ikke angiver en type"
+
+#: options.c:147
+#, fuzzy
+msgid "Warn if deprecated class, method, or field is used"
+msgstr "Advar hvis forældede tomme sætninger bliver fundet"
+
+#: options.c:150
+msgid "Warn about uses of __attribute__((deprecated)) declarations"
+msgstr "Advar om brug af __attribute__((deprecated))-erklæringer"
+
+#: options.c:153
+msgid "Warn when an optimization pass is disabled"
+msgstr "Advar når en optimeringsfase deaktiveres"
+
+#: options.c:156
+#, fuzzy
+msgid "Warn about compile-time integer division by zero"
+msgstr "Advar ikke om heltalsdivision på oversættelsestidspunktet med nul"
+
+#: options.c:159
+msgid "Warn about violations of Effective C++ style rules"
+msgstr "Advar om overtrædelser af stilreglerne fra Effective C++"
+
+#: options.c:162
+msgid "Warn about stray tokens after #elif and #endif"
+msgstr ""
+
+#: options.c:165
+msgid "Treat all warnings as errors"
+msgstr "Behandl alle advarsler som fejl"
+
+#: options.c:168
+#, fuzzy
+msgid "Make implicit function declarations an error"
+msgstr "Advar om underforståede funktionserklæringer"
+
+#: options.c:171
+msgid "Print extra (possibly unwanted) warnings"
+msgstr ""
+
+#: options.c:174
+msgid "Warn if deprecated empty statements are found"
+msgstr "Advar hvis forældede tomme sætninger bliver fundet"
+
+#: options.c:177
+#, fuzzy
+msgid "Warn if testing floating point numbers for equality"
+msgstr "Advar om lighedssammenligninger mellem kommatal"
+
+#: options.c:180
+#, fuzzy
+msgid "Warn about printf/scanf/strftime/strfmon format string anomalies"
+msgstr "Advar om printf/scanf/strftime/strfmon-formateringsanormaliteter"
+
+#: options.c:183
+#, fuzzy
+msgid "Warn if passing too many arguments to a function for its format string"
+msgstr "for mange parametre til funktionen 'va_start'"
+
+#: options.c:186
+#, fuzzy
+msgid "Warn about format strings that are not literals"
+msgstr "Advar om brug af multitegnskonstanter"
+
+#: options.c:189
+msgid "Warn about possible security problems with format functions"
+msgstr "Advar om mulige sikkerhedsproblemer i forbindelse med formateringsfunktioner"
+
+#: options.c:192
+#, fuzzy
+msgid "Warn about strftime formats yielding 2-digit years"
+msgstr "Advar ikke om strftime-formateringer med 2-cifres år"
+
+#: options.c:201
+#, fuzzy
+msgid "Enable warnings about inter-procedural problems"
+msgstr "Deaktivér advarsler om interprocedurale problemer"
+
+#: options.c:207
+msgid "Warn about implicit function declarations"
+msgstr "Advar om underforståede funktionserklæringer"
+
+#: options.c:210
+msgid "Warn when a declaration does not specify a type"
+msgstr "Advar når en erklæring ikke angiver en type"
+
+#: options.c:216
+msgid "Warn about variables which are initialized to themselves."
+msgstr ""
+
+#: options.c:219
+msgid "Warn when an inlined function cannot be inlined"
+msgstr "Advar når en inline funktion ikke kan indbygges"
+
+#: options.c:222
+#, fuzzy
+msgid "Warn about invalid uses of the \"offsetof\" macro"
+msgstr "Advar om brug af #import-direktivet"
+
+#: options.c:225
+msgid "Warn about PCH files that are found but not used"
+msgstr ""
+
+#: options.c:228
+#, fuzzy
+msgid "-Wlarger-than-<number>\tWarn if an object is larger than <number> bytes"
+msgstr " -Wlarger-than-<tal> Advar hvis et objekt er større end <tal> byte\n"
+
+#: options.c:231
+#, fuzzy
+msgid "Do not warn about using \"long long\" when -pedantic"
+msgstr "Advar ikke om brug af 'long long' når -pedantic benyttes"
+
+#: options.c:234
+#, fuzzy
+msgid "Warn about suspicious declarations of \"main\""
+msgstr "Advar om mistænkelige erklæringer af main"
+
+#: options.c:237
+msgid "Warn about possibly missing braces around initializers"
+msgstr "Advar om mulige manglende krøllede paranteser omkring startværdier"
+
+#: options.c:240
+#, fuzzy
+msgid "Warn about global functions without previous declarations"
+msgstr "Advar om globale funktioner uden tidligere erklæringer"
+
+#: options.c:243
+msgid "Warn about functions which might be candidates for format attributes"
+msgstr "Advar om funktioner som kan være kandidater til formateringsegenskaber"
+
+#: options.c:246
+#, fuzzy
+msgid "Warn about functions which might be candidates for __attribute__((noreturn))"
+msgstr "Advar om funktioner som kan være kandidater til egenskaben noreturn"
+
+#: options.c:249
+#, fuzzy
+msgid "Warn about global functions without prototypes"
+msgstr "Advar om globale funktioner uden prototyper"
+
+#: options.c:252
+#, fuzzy
+msgid "Warn about use of multi-character character constants"
+msgstr "Advar om brug af multitegnskonstanter"
+
+#: options.c:255
+#, fuzzy
+msgid "Warn about \"extern\" declarations not at file scope"
+msgstr "Advar om extern-erklæringer som ikke er ved filvirkefeltsniveauet"
+
+#: options.c:258
+#, fuzzy
+msgid "Warn when non-templatized friend functions are declared within a template"
+msgstr "Advar ikke når ikke-skabelonsvennefunktioner erklæres inde i en skabelon"
+
+#: options.c:261
+#, fuzzy
+msgid "Warn about non-virtual destructors"
+msgstr "Advar om ikke-virtuelle destruktionsfunktioner"
+
+#: options.c:267
+#, fuzzy
+msgid "Warn if a C-style cast is used in a program"
+msgstr "Advar hvis en typeomtvingning i C-stil benyttes"
+
+#: options.c:270
+#, fuzzy
+msgid "Warn if an old-style parameter definition is used"
+msgstr "Advar når en funktionsparameter ikke benyttes"
+
+#: options.c:273
+msgid "Warn if .class files are out of date"
+msgstr "Advar hvis .class-filer er forældede"
+
+#: options.c:276
+msgid "Warn about overloaded virtual function names"
+msgstr "Advar om flertydige virtuelle funktionsnavne"
+
+#: options.c:279
+msgid "Warn when the packed attribute has no effect on struct layout"
+msgstr "Advar når packed-egenskaben ikke har nogen effekt på struct-layoutet"
+
+#: options.c:282
+#, fuzzy
+msgid "Warn when padding is required to align structure members"
+msgstr "Advar når udfyldning er påkrævet for at justere struct-medlemmer"
+
+#: options.c:285
+#, fuzzy
+msgid "Warn about possibly missing parentheses"
+msgstr "Advar om mulige manglende paranteser"
+
+#: options.c:288
+#, fuzzy
+msgid "Warn when converting the type of pointers to member functions"
+msgstr "Advar ikke ved typeomdannelse af henvisninger til medlemsfunktioner"
+
+#: options.c:291
+msgid "Warn about function pointer arithmetic"
+msgstr "Advar om beregninger på funktionshenvisninger"
+
+#: options.c:294
+#, fuzzy
+msgid "Warn if inherited methods are unimplemented"
+msgstr "Advar ikk hvis nedarvede metoder ikke implementeres"
+
+#: options.c:297
+msgid "Warn about multiple declarations of the same object"
+msgstr "Advar om flere erklæring af det samme objekt"
+
+#: options.c:300
+msgid "Warn if modifiers are specified when not necessary"
+msgstr "Advar hvis modifikationer angives når det ikke er nødvendigt"
+
+#: options.c:303
+msgid "Warn when the compiler reorders code"
+msgstr "Advar når oversætteren ændrer på ordenen af kode"
+
+#: options.c:306
+#, fuzzy
+msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)"
+msgstr "Advar når en funktions returtype antages at være int"
+
+#: options.c:309
+msgid "Warn if a selector has multiple methods"
+msgstr "Advar hvis en vælger har flere metoder"
+
+#: options.c:312
+msgid "Warn about possible violations of sequence point rules"
+msgstr "Advar om mulige brud på sekvenspunktreglerne"
+
+#: options.c:315
+msgid "Warn when one local variable shadows another"
+msgstr "Advar når en lokal variabel skygger for en anden"
+
+#: options.c:318
+#, fuzzy
+msgid "Warn about signed-unsigned comparisons"
+msgstr "Advar om sammenligninger mellem typer med og uden fortegn"
+
+#: options.c:321
+msgid "Warn when overload promotes from unsigned to signed"
+msgstr "Advar når flertydiggørelse forfremmer fra unsigned til signed"
+
+#: options.c:324
+#, fuzzy
+msgid "Warn about code which might break strict aliasing rules"
+msgstr "Advar om kode som kan bryde strenge aliasregler"
+
+#: options.c:327
+#, fuzzy
+msgid "Warn about unprototyped function declarations"
+msgstr "Advar om funktionserklæringer uden prototype"
+
+#: options.c:330
+msgid "Warn about constructs with surprising meanings"
+msgstr "Advar om konstruktioner med overraskende betydninger"
+
+#: options.c:333
+msgid "Warn about enumerated switches, with no default, missing a case"
+msgstr "Advar om switch-sætninger over enum-typer som mangler et tilfælde og ikke har default"
+
+#: options.c:336
+#, fuzzy
+msgid "Warn about enumerated switches missing a \"default:\" statement"
+msgstr "Advar om switch-sætninger over enum-typer som mangler default"
+
+#: options.c:339
+msgid "Warn about all enumerated switches missing a specific case"
+msgstr "Advar om alle switch-sætninger over enum-typer som mangler et bestemt tilfælde"
+
+#: options.c:342
+msgid "Warn when synthesis behavior differs from Cfront"
+msgstr "Advar når synteseopførslen adskiller sig fra Cfront"
+
+#: options.c:345
+msgid "Do not suppress warnings from system headers"
+msgstr "Undertryk ikke advarsler fra systeminkluderingsfiler"
+
+#: options.c:348
+#, fuzzy
+msgid "Warn about features not present in traditional C"
+msgstr "foreslår undladelse af brug af #elif i traditionel C"
+
+#: options.c:357
+#, fuzzy
+msgid "Warn if an undefined macro is used in an #if directive"
+msgstr "ugyldigt eller ikke-defineret #-direktiv"
+
+#: options.c:360
+msgid "Warn about uninitialized automatic variables"
+msgstr "Advar om ikke-klargjorte automatiske variabler"
+
+#: options.c:363
+msgid "Warn about unrecognized pragmas"
+msgstr "Advar om ukendte pragmaer"
+
+#: options.c:366
+msgid "Warn about code that will never be executed"
+msgstr "Advar om kode som aldrig bliver udført"
+
+#: options.c:369
+msgid "Enable all -Wunused- warnings"
+msgstr ""
+
+#: options.c:372
+msgid "Warn when a function is unused"
+msgstr "Advar når en funktion ikke benyttes"
+
+#: options.c:375
+msgid "Warn when a label is unused"
+msgstr "Advar når en etiket ikke benyttes"
+
+#: options.c:378
+msgid "Warn about macros defined in the main file that are not used"
+msgstr ""
+
+#: options.c:381
+msgid "Warn when a function parameter is unused"
+msgstr "Advar når en funktionsparameter ikke benyttes"
+
+#: options.c:384
+msgid "Warn when an expression value is unused"
+msgstr "Advar når værdien af et udtryk ikke benyttes"
+
+#: options.c:387
+msgid "Warn when a variable is unused"
+msgstr "Advar når en variabel ikke benyttes"
+
+#: options.c:390
+msgid "Give strings the type \"array of char\""
+msgstr ""
+
+#: options.c:393
+msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead"
+msgstr ""
+
+#: options.c:396
+#, fuzzy
+msgid "-aux-info <file>\tEmit declaration information into <file>"
+msgstr " -aux-info <fil> Udskriv erklæringsoplysninger til <fil>\n"
+
+#: options.c:408
+#, fuzzy
+msgid "-d<letters>\tEnable dumps from specific passes of the compiler"
+msgstr " -d[bogstaver] Aktivér dump fra specifikke faser i oversætteren\n"
+
+#: options.c:411
+#, fuzzy
+msgid "-dumpbase <file>\tSet the file basename to be used for dumps"
+msgstr " -dumpbase <fil> Basisnavn til brug for dump fra specifikke faser\n"
+
+#: options.c:414
+#, fuzzy
+msgid "--CLASSPATH\tDeprecated; use --classpath instead"
+msgstr "Angiv klassesti (forældet: benyt --classpath i stedet)"
+
+#: options.c:429
+#, fuzzy
+msgid "Enforce class member access control semantics"
+msgstr "Adlyd ikke tilgangskontrolsemantikker"
+
+#: options.c:432
+msgid "Align the start of functions"
+msgstr "Justér begyndelsen af funktioner"
+
+#: options.c:438
+msgid "Align labels which are only reached by jumping"
+msgstr "Justér etiketter som kun nås ved spring"
+
+#: options.c:444
+msgid "Align all labels"
+msgstr "Justér alle etiketter"
+
+#: options.c:450
+msgid "Align the start of loops"
+msgstr "Justér begyndelsen af løkker"
+
+#: options.c:459
+msgid "Change when template instances are emitted"
+msgstr "Skift hvornår skabelonsinstanser udsendes"
+
+#: options.c:462
+#, fuzzy
+msgid "Specify that arguments may alias each other and globals"
+msgstr "Angiv at parametre kan være aliaser for hinanden og for globale variable"
+
+#: options.c:465
+msgid "Assume arguments may alias globals but not each other"
+msgstr "Antag at parametre kan være aliaser for globale variable, men ikke for hinanden"
+
+#: options.c:468
+#, fuzzy
+msgid "Assume arguments alias neither each other nor globals"
+msgstr "Antag at parametre ikke er aliaser for hinanden eller for globale variable"
+
+#: options.c:471
+#, fuzzy
+msgid "Recognize the \"asm\" keyword"
+msgstr "Genkend ikke det reserverede ord 'asm'"
+
+#: options.c:483
+#, fuzzy
+msgid "Generate unwind tables that are exact at each instruction boundary"
+msgstr "Generér afvindingstabeller eksakt for hver instruktionsgrænse"
+
+#: options.c:486
+#, fuzzy
+msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements"
+msgstr "Behandl lokale variable og COMMON-blokke som om de var nævnt i SAVE-sætninger"
+
+#: options.c:489
+#, fuzzy
+msgid "Backslashes in character and hollerith constants are special (not C-style)"
+msgstr "Omvendte skråstreger i tegn/hollerith-konstanter er ikke specielle (C-stil)"
+
+#: options.c:492
+msgid "Delete libU77 intrinsics with bad interfaces"
+msgstr "Slet libU77-indbyggede med dårlige grænseflader"
+
+#: options.c:495
+msgid "Disable libU77 intrinsics with bad interfaces"
+msgstr "Deaktivér libU77-indbyggede med dårlige grænseflader"
+
+#: options.c:498
+#, fuzzy
+msgid "Enable libU77 intrinsics with bad interfaces"
+msgstr "Deaktivér libU77-indbyggede med dårlige grænseflader"
+
+#: options.c:501
+msgid "Hide libU77 intrinsics with bad interfaces"
+msgstr "Skjul libU77-indbyggede med dårlige grænseflader"
+
+#: options.c:504
+#, fuzzy
+msgid "--bootclasspath=<path>\tReplace system path"
+msgstr "Erstat systemsti"
+
+#: options.c:507
+msgid "Generate code to check bounds before indexing arrays"
+msgstr "Generér kode til at kontrollere grænserne før tabeller indekseres"
+
+# RETMIG: rigtig?
+#: options.c:510
+#, fuzzy
+msgid "Replace add, compare, branch with branch on count register"
+msgstr "Erstat tilføj,sammenlign,forgrening med forgrening på tælleregister"
+
+#: options.c:513
+msgid "Use profiling information for branch probabilities"
+msgstr "Benyt profileringsoplysninger til forgreningssandsynligheder"
+
+#: options.c:516
+msgid "Perform branch target load optimization before prologue / epilogue threading"
+msgstr ""
+
+#: options.c:519
+msgid "Perform branch target load optimization after prologue / epilogue threading"
+msgstr ""
+
+#: options.c:522
+#, fuzzy
+msgid "Recognize built-in functions"
+msgstr "Genkend ikke nogen indbyggede funktioner"
+
+#: options.c:528
+#, fuzzy
+msgid "-fcall-saved-<register>\tMark <register> as being preserved across functions"
+msgstr " -fcall-saved-<register> Markér <register> som værende bevaret over funktioner\n"
+
+#: options.c:531
+#, fuzzy
+msgid "-fcall-used-<register>\tMark <register> as being corrupted by function calls"
+msgstr " -fcall-used-<register> Markér <register> som værende benyttet af funktionskald\n"
+
+#: options.c:534
+#, fuzzy
+msgid "Save registers around function calls"
+msgstr "Aktivér gemning af registrer omkring funktionskald"
+
+#: options.c:537
+msgid "Program written in strict mixed-case"
+msgstr "Program skrives med streng blanding af store/små bogstaver"
+
+#: options.c:540
+msgid "Compile as if program written in lowercase"
+msgstr "Oversæt som hvis programmet var skrevet med små bogstaver"
+
+#: options.c:543
+#, fuzzy
+msgid "Preserve case used in program"
+msgstr "Bevar al stavning (store/små bogstaver) benyttet i programmet"
+
+#: options.c:546
+msgid "Program written in lowercase"
+msgstr "Program skrives med små bogstaver"
+
+#: options.c:549
+msgid "Program written in uppercase"
+msgstr "Program skrives med store bogstaver"
+
+#: options.c:552
+msgid "Compile as if program written in uppercase"
+msgstr "Oversæt som hvis programmet var skrevet med store bogstaver"
+
+#: options.c:555
+msgid "Check the return value of new"
+msgstr "Kontrollér returværdien for new"
+
+#: options.c:561
+msgid "--classpath=<path>\tSet class path"
+msgstr ""
+
+#: options.c:564
+msgid "Do not put uninitialized globals in the common section"
+msgstr "Anbring ikke uklargjorte globale variabler i den fælles sektion"
+
+#: options.c:570
+#, fuzzy
+msgid "Allow the arguments of the '?' operator to have different types"
+msgstr "operander til ?: har forskellige typer"
+
+#: options.c:573
+#, fuzzy
+msgid "Reduce the size of object files"
+msgstr "Reducér størrelsen af objektfiler"
+
+#: options.c:576
+#, fuzzy
+msgid "Make string literals \"const char[]\" not \"char[]\""
+msgstr "Gør strengkonstanter til 'char[]' i stedet for 'const char[]'"
+
+#: options.c:579
+msgid "-fconst-string-class=<name>\tUse class <name> for constant strings"
+msgstr ""
+
+#: options.c:582
+#, fuzzy
+msgid "Perform a register copy-propagation optimization pass"
+msgstr "Foretag registerkopipropageringsoptimering"
+
+#: options.c:585
+msgid "Perform cross-jumping optimization"
+msgstr "Udfør krydsspringsoptimering"
+
+# RETMIG: hvad er CSE?
+#: options.c:588
+msgid "When running CSE, follow jumps to their targets"
+msgstr "Ved kørsel af CSE følg spring til deres mål"
+
+#: options.c:591
+msgid "When running CSE, follow conditional jumps"
+msgstr "Ved kørsel af CSE følg betingede spring"
+
+#: options.c:594
+#, fuzzy
+msgid "Place data items into their own section"
+msgstr "placér dataelementer i deres egen sektion"
+
+#: options.c:597
+msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
+msgstr "Udsend speciel fejlanalyseringsinfo for COMMON og EQUIVALENCE (deaktiveret)"
+
+#: options.c:600
+#, fuzzy
+msgid "Inline member functions by default"
+msgstr "Integrér ikke medlemsfunktioner som standard"
+
+#: options.c:603
+msgid "Defer popping functions args from stack until later"
+msgstr "Vent med fjernelse af funktionsparametre fra stakken til senere"
+
+#: options.c:606
+msgid "Attempt to fill delay slots of branch instructions"
+msgstr "Forsøg at udfylde ventepladser med forgreningsinstruktioner"
+
+#: options.c:609
+msgid "Delete useless null pointer checks"
+msgstr "Fjern ubrugelige nul-henvisningstjek"
+
+#: options.c:612
+#, fuzzy
+msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics"
+msgstr " -fdiagnostics-show-location=[once | every-line] Indikerer hvor ofte kildeplaceringsoplysninger skal udsendes som præfiks til begyndelsen af meddelelserne ved linjeombrydning\n"
+
+#: options.c:615
+#, fuzzy
+msgid "Allow '$' in symbol names"
+msgstr "Tillad $ i symbolnavne"
+
+#: options.c:618
+#, fuzzy
+msgid "Permit '$' as an identifier character"
+msgstr "formatering er en bredtegnsstreng"
+
+#: options.c:624
+msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
+msgstr "Undtryk udskrift af instruktionstal og linjenummernoter i fejlfindingsdump"
+
+#: options.c:630
+msgid "Perform DWARF2 duplicate elimination"
+msgstr "Udfør DWARF2-eliminering af dubletter"
+
+#: options.c:633 options.c:636
+msgid "Perform unused type elimination in debug info"
+msgstr ""
+
+#: options.c:645
+msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
+msgstr "Lad forenden emulere COMPLEX-beregninger for at undgå fejl"
+
+#: options.c:648
+#, fuzzy
+msgid "--encoding=<encoding>\tChoose input encoding (defaults from your locale)"
+msgstr "Vælg inddatakodning (standardværdi kommer fra regionalindstillinger)"
+
+#: options.c:651
+#, fuzzy
+msgid "Generate code to check exception specifications"
+msgstr "Generér ikke kode til at kontrollere undtagelsesspecifikationer"
+
+#: options.c:657
+msgid "Enable exception handling"
+msgstr "Aktivér undtagelseshåndtering"
+
+#: options.c:660
+msgid "-fexec-charset=<cset>\tConvert all strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:663
+msgid "Perform a number of minor, expensive optimizations"
+msgstr "Udfør et antal mindre, dyre optimeringer"
+
+#: options.c:672
+#, fuzzy
+msgid "f2c-compatible code can be generated"
+msgstr "f2c-kompatibel kode behøver ikke at blive genereret"
+
+#: options.c:675
+msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Slet f2c-understøttelse af ikke-FORTRAN-77-indbyggede"
+
+#: options.c:678
+msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Deaktivér f2c-understøttelse af ikke-FORTRAN-77-indbyggede"
+
+#: options.c:681
+#, fuzzy
+msgid "Enable non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Deaktivér f2c-understøttelse af ikke-FORTRAN-77-indbyggede"
+
+#: options.c:684
+msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Skjul f2c-understøttelse af ikke-FORTRAN-77-indbyggede"
+
+#: options.c:687
+#, fuzzy
+msgid "Unsupported; generate libf2c-calling code"
+msgstr "Ikke-understøttet; generér ikke libf2c-kaldende kode"
+
+#: options.c:690
+msgid "Program is written in typical FORTRAN 66 dialect"
+msgstr "Program er skrevet i typisk FORTRAN 66-dialekt"
+
+#: options.c:693
+#, fuzzy
+msgid "Program is written in typical Unix-f77 dialect"
+msgstr "Program er skrevet i typisk Unix f77-dialekt"
+
+#: options.c:696
+msgid "Program is written in Fortran-90-ish dialect"
+msgstr "Program er skrevet i Fortran 90-agtig dialekt"
+
+#: options.c:699
+msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Slet F90-understøttelse af ikke-FORTRAN-77-indbyggede "
+
+#: options.c:702
+msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Deaktivér F90-understøttelse af ikke-FORTRAN-77-indbyggede"
+
+#: options.c:705
+#, fuzzy
+msgid "Enable non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Deaktivér F90-understøttelse af ikke-FORTRAN-77-indbyggede"
+
+#: options.c:708
+msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Skjul F90-understøttelse af ikke-FORTRAN-77-indbyggede"
+
+#: options.c:720
+#, fuzzy
+msgid "Assume no NaNs or infinities are generated"
+msgstr "Antag at ingen NaN eller +-Inf bliver genereret"
+
+#: options.c:723
+#, fuzzy
+msgid "-ffixed-<register>\tMark <register> as being unavailable to the compiler"
+msgstr " -ffixed-<register> Markér <register> som værende utilgængeligt for oversætteren\n"
+
+#: options.c:729
+#, fuzzy
+msgid "ffixed-line-length-<number>\tSet the maximum line length to <number>"
+msgstr " -finline-limit=<str> Begræns størrelsen af inlie funktion til <str>\n"
+
+#: options.c:732
+#, fuzzy
+msgid "Unsupported; affects code generation of arrays"
+msgstr "Ikke-understøttet; påvirker kodegenerering af tabeller"
+
+#: options.c:735
+msgid "Do not store floats in registers"
+msgstr "Lagr ikke kommatal i registre"
+
+#: options.c:738
+#, fuzzy
+msgid "Scope of for-init-statement variables is local to the loop"
+msgstr "Udvid virkefeltet for variabler i for-klargøringssætninger"
+
+#: options.c:741
+#, fuzzy
+msgid "Copy memory address constants into registers before use"
+msgstr "Kopiér hukommelsesadressekonstanter ind i registre før brug"
+
+#: options.c:744
+msgid "Always check for non gcj generated classes archives"
+msgstr "Kontrollér altid for ikke-GCJ-genererede klassearkiver"
+
+#: options.c:747
+#, fuzzy
+msgid "Copy memory operands into registers before use"
+msgstr "Kopiér hukommelsesoperander ind i registre før brug"
+
+#: options.c:750
+msgid "Generate code to check subscript and substring bounds"
+msgstr "Generér kode for at tjekke indekserings- og understrengsgrænser"
+
+#: options.c:753
+msgid "Program is written in Fortran-90-ish free form"
+msgstr "Program er skrevet i Fortran 90-agtig fri stil"
+
+#: options.c:756
+#, fuzzy
+msgid "Do not assume that standard C libraries and \"main\" exist"
+msgstr "Antag at standardbibliotekerne og main måske ikke eksisterer"
+
+#: options.c:759
+msgid "Allow function addresses to be held in registers"
+msgstr "Tillad funktionsadresser at blive opbevaret i registre"
+
+#: options.c:762
+#, fuzzy
+msgid "Place each function into its own section"
+msgstr "placér hver funktion i dens egen sektion"
+
+#: options.c:765
+#, fuzzy
+msgid "Perform global common subexpression elimination"
+msgstr "Udfør global eliminering af fælles underudtryk"
+
+#: options.c:768
+#, fuzzy
+msgid "Perform redundant load after store elimination in global common subexpression elimination"
+msgstr "Udfør forbedret indlæsningsbevægelse under eliminering af fælles underudtryk"
+
+#: options.c:771
+#, fuzzy
+msgid "Perform enhanced load motion during global common subexpression elimination"
+msgstr "Udfør forbedret indlæsningsbevægelse under eliminering af fælles underudtryk"
+
+#: options.c:774
+#, fuzzy
+msgid "Perform store motion after global common subexpression elimination"
+msgstr "Udfør lagringsbevægelse efter eliminering af fælles underudtryk"
+
+#: options.c:777
+#, fuzzy
+msgid "Enable fatal diagnostics about inter-procedural problems"
+msgstr "Deaktivér fatale diagnosticeringer af interprocedurale procedurer"
+
+#: options.c:780
+msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
+msgstr "Slet g77-understøttelse af ikke-FORTRAN-77-indbyggede "
+
+#: options.c:783
+msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
+msgstr "Deaktivér g77-understøttelse af ikke-FORTRAN-77-indbyggede"
+
+#: options.c:786
+#, fuzzy
+msgid "Enable non-FORTRAN 77 intrinsics F90 supports"
+msgstr "Deaktivér g77-understøttelse af ikke-FORTRAN-77-indbyggede"
+
+#: options.c:789
+msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
+msgstr "Skjul g77-understøttelse af ikke-FORTRAN-77-indbyggede"
+
+#: options.c:792
+#, fuzzy
+msgid "Recognize GNU-defined keywords"
+msgstr "Genkend ikke GNU-definerede reserverede ord"
+
+#: options.c:795
msgid "Generate code for GNU runtime environment"
msgstr "Generér kode til GNU-kørselmiljø"
-#: objc/lang-options.h:32
-msgid "Generate code for NeXT runtime environment"
+#: options.c:798
+#, fuzzy
+msgid "Enable guessing of branch probabilities"
+msgstr "Aktivér gæt af forgreningssandsynligheder"
+
+#: options.c:813
+msgid "Assume normal C execution environment"
+msgstr "Antag normalt C-kørselsmiljø"
+
+#: options.c:816
+msgid "Enable support for huge objects"
+msgstr "Aktivér understøttelse af enorme objekter"
+
+#: options.c:819
+msgid "Process #ident directives"
+msgstr "Behandl #ident-direktiver"
+
+#: options.c:822
+msgid "Perform conversion of conditional jumps to branchless equivalents"
+msgstr "Udfør konvertering af betingede spring til forgreningsløse ækvivalenter"
+
+#: options.c:825
+msgid "Perform conversion of conditional jumps to conditional execution"
+msgstr "Udfør konvertering af betingede spring til betinget udførsel"
+
+#: options.c:828
+msgid "Export functions even if they can be inlined"
+msgstr "Eksportér funktioner også selvom de kan integreres"
+
+#: options.c:831
+#, fuzzy
+msgid "Emit implicit instantiations of inline templates"
+msgstr "Udsend kun eksplicitte instatieringer af indlejrede skabeloner"
+
+#: options.c:834
+#, fuzzy
+msgid "Emit implicit instantiations of templates"
+msgstr "Udsend kun eksplicitte instatieringer af indlejrede skabeloner"
+
+#: options.c:837
+msgid "Use offset tables for virtual method calls"
+msgstr "Benyt afsætstabeller til virtuelle metodekald"
+
+#: options.c:840
+msgid "Do not generate .size directives"
+msgstr "Generér ikke .size-direktiver"
+
+#: options.c:843
+msgid "Initialize local vars and arrays to zero"
+msgstr "Klargør lokale variable og tabeller til nul"
+
+#: options.c:846
+#, fuzzy
+msgid "Pay attention to the \"inline\" keyword"
+msgstr "Læg mærke til 'inline'-nøgleordet"
+
+#: options.c:855
+#, fuzzy
+msgid "-finline-limit=<number>\tLimit the size of inlined functions to <number>"
+msgstr " -finline-limit=<str> Begræns størrelsen af inlie funktion til <str>\n"
+
+#: options.c:858
+msgid "-finput-charset=<cset> Specify the default character set for source files."
+msgstr ""
+
+#: options.c:861
+#, fuzzy
+msgid "Instrument function entry and exit with profiling calls"
+msgstr "Instrumentér funktionsindgange/-afslutninger med profileringskald"
+
+#: options.c:864
+msgid "Intrinsics letters in arbitrary cases"
+msgstr "Der skelnes ikke mellem små og store bogstaver i indbyggede"
+
+#: options.c:867
+msgid "Intrinsics spelled as e.g. SqRt"
+msgstr "Indbyggede staves som f.eks. SqRt"
+
+#: options.c:870
+#, fuzzy
+msgid "Intrinsics in lowercase"
+msgstr "Indbyggede staves med store bogstaver"
+
+#: options.c:873
+msgid "Intrinsics in uppercase"
+msgstr "Indbyggede staves med store bogstaver"
+
+#: options.c:876
+msgid "Assume native functions are implemented using JNI"
+msgstr "Antag at indfødte funktioner er implementeret vha. JNI"
+
+#: options.c:879
+#, fuzzy
+msgid "Generate code for functions even if they are fully inlined"
+msgstr "Generér kode for funktioner selv hvis de indlejres helt"
+
+#: options.c:882
+msgid "Emit static const variables even if they are not used"
+msgstr "Konstruér statiske, konstante variabler selv hvis de ikke bruges"
+
+#: options.c:888
+#, fuzzy
+msgid "Give external symbols a leading underscore"
+msgstr "Eksterne symboler har indledende understreg"
+
+#: options.c:891
+#, fuzzy
+msgid "Perform loop optimizations"
+msgstr "Udfør løkkeoptimeringerne"
+
+#: options.c:894
+msgid "Language keyword letters in arbitrary cases"
+msgstr "Der skelnes ikke mellem små og store bogstaver i sprognøgleord"
+
+#: options.c:897
+msgid "Language keywords spelled as e.g. IOStat"
+msgstr "Sprognøgleord staves som f.eks. IOStat"
+
+#: options.c:900
+#, fuzzy
+msgid "Language keywords in lowercase"
+msgstr "Sprognøgleord staves med store bogstaver"
+
+#: options.c:903
+msgid "Language keywords in uppercase"
+msgstr "Sprognøgleord staves med store bogstaver"
+
+#: options.c:906
+msgid "Set errno after built-in math functions"
+msgstr "Sæt errno efter indbyggede matematikfunktioner"
+
+#: options.c:909
+#, fuzzy
+msgid "Report on permanent memory allocation"
+msgstr "Rapportér om permanente hukommelsesallokering ved afslutningen af kørslen"
+
+#: options.c:912
+msgid "Attempt to merge identical constants and constant variables"
+msgstr "Forsøg at forene identiske konstanter og konstante variabler"
+
+#: options.c:915
+msgid "Attempt to merge identical constants across compilation units"
+msgstr "Forsøg at forene identiske konstanter over forskellige oversættelsesenheder"
+
+#: options.c:918
+#, fuzzy
+msgid "-fmessage-length=<number>\tLimit diagnostics to <number> characters per line. 0 suppresses line-wrapping"
+msgstr " -fmessage-length=<antal> Begræns længden af diagnosticeringmeddelelser til længden <antal> tegn/linje. 0 undertrykker linjeombrydning\n"
+
+#: options.c:921
+msgid "Delete MIL-STD 1753 intrinsics"
+msgstr "Slet MIL-STD 1753-indbyggede"
+
+#: options.c:924
+msgid "Disable MIL-STD 1753 intrinsics"
+msgstr "Deaktivér MIL-STD 1753-indbyggede"
+
+#: options.c:927
+#, fuzzy
+msgid "Enable MIL-STD 1753 intrinsics"
+msgstr "Deaktivér MIL-STD 1753-indbyggede"
+
+#: options.c:930
+msgid "Hide MIL-STD 1753 intrinsics"
+msgstr "Skjul MIL-STD 1753-indbyggede"
+
+#: options.c:933
+msgid "Force all loop invariant computations out of loops"
+msgstr "Tving alle løkkeinvariansberegninger ud af løkker"
+
+#: options.c:936
+#, fuzzy
+msgid "Don't warn about uses of Microsoft extensions"
+msgstr "Udsend ikke pedantiske advarsler om brug af Microsoft-udvidelser"
+
+#: options.c:945
+#, fuzzy
+msgid "Use graph-coloring register allocation"
+msgstr "Allokér registre vha. graffarvning"
+
+#: options.c:948
+#, fuzzy
+msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
msgstr "Generér kode til NeXT-kørselmiljø"
-#: objc/lang-options.h:35
-msgid "Warn if a selector has multiple methods"
-msgstr "Advar hvis en vælger har flere metoder"
+#: options.c:951
+msgid "Assume that receivers of Objective-C messages may be nil"
+msgstr ""
-#: objc/lang-options.h:39
-msgid "Do not warn if inherited methods are unimplemented"
-msgstr "Advar ikk hvis nedarvede metoder ikke implementeres"
+#: options.c:954
+msgid "Support synchronous non-call exceptions"
+msgstr "Understøt synkrone ikke-kaldende undtagelser"
+
+#: options.c:963
+msgid "Enable Objective-C exception and synchronization syntax"
+msgstr ""
+
+#: options.c:966 options.c:1290
+msgid "Perform loop unrolling for all loops"
+msgstr "Udfør løkkeudrulning for alle løkker"
+
+#: options.c:969 options.c:1293
+msgid "Perform loop unrolling when iteration count is known"
+msgstr "Udfør løkkeudrulning når iterationsantallet er kendt"
+
+#: options.c:972
+msgid "When possible do not generate stack frames"
+msgstr "Generér ikke stakrammer når det kan undgås"
+
+#: options.c:975
+msgid "Take at least one trip through each iterative DO loop"
+msgstr "Tag i det mindste et skridt gennem hver DO-løkke"
+
+#: options.c:978
+msgid "Recognize C++ kewords like \"compl\" and \"xor\""
+msgstr ""
+
+#: options.c:981
+#, fuzzy
+msgid "Do the full register move optimization pass"
+msgstr "Foretag en komplet registerflytningsoptimering"
+
+#: options.c:984
+msgid "Optimize sibling and tail recursive calls"
+msgstr "Optimér søskende- og halerekursive kald"
+
+#: options.c:987
+#, fuzzy
+msgid "Enable optimization of static class initialization code"
+msgstr "Optimér aldrig statiske klassers klargøringskode"
+
+#: options.c:990
+#, fuzzy
+msgid "Enable optional diagnostics"
+msgstr "Deaktivér valgfrie diagnosticeringer"
+
+#: options.c:996
+msgid "Pack structure members together without holes"
+msgstr "Pak strukturmedlemmer sammen uden mellemrum"
+
+#: options.c:999
+#, fuzzy
+msgid "Return small aggregates in memory, not registers"
+msgstr "Returnér små sammensatte værdier i hukommelsen, ikke i registre"
+
+#: options.c:1005
+msgid "Warn about use of (only a few for now) Fortran extensions"
+msgstr "Advar om brug af (i øjeblikket kun nogle få) Fortran-udvidelser"
+
+#: options.c:1008
+#, fuzzy
+msgid "Perform loop peeling"
+msgstr "Udfør løkkeoptimeringerne"
+
+#: options.c:1011
+msgid "Enable machine specific peephole optimizations"
+msgstr "Aktivér maskinspecifikke kighulsoptimeringer"
+
+#: options.c:1014
+#, fuzzy
+msgid "Enable an RTL peephole pass before sched2"
+msgstr "Aktivér en RTL-kikhulsfase før sched2"
+
+#: options.c:1017
+msgid "Downgrade conformance errors to warnings"
+msgstr "Nedgradér standardoverholdelsesfejl til advarsler"
+
+#: options.c:1020
+#, fuzzy
+msgid "Generate position-independent code if possible"
+msgstr "Generér placeringsuafhængig kode, om muligt"
+
+#: options.c:1023
+#, fuzzy
+msgid "Generate position-independent code for executables if possible"
+msgstr "Generér placeringsuafhængig kode, om muligt"
+
+#: options.c:1026
+msgid "Generate prefetch instructions, if available, for arrays in loops"
+msgstr "Generér præhentningsinstruktioner, hvis tilgængelige, for tabeller i løkker"
+
+#: options.c:1032
+msgid "Enable basic program profiling code"
+msgstr "Aktivér basal programprofileringskode"
+
+#: options.c:1035
+#, fuzzy
+msgid "Insert arc-based program profiling code"
+msgstr "Indsæt buebaseret programprofileringskode"
+
+#: options.c:1038
+msgid "Enable common options for generating profile info for profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1041
+msgid "Enable common options for performing profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1044
+msgid "Insert code to profile values of expressions"
+msgstr ""
+
+#: options.c:1050
+msgid "-frandom-seed=<string>\tMake compile reproducible using <string>"
+msgstr ""
+
+#: options.c:1053
+msgid "Strength reduce all loop general induction variables"
+msgstr "Styrkereducér alle generelle løkkeinduktionsvariabler"
+
+#: options.c:1056
+#, fuzzy
+msgid "Return small aggregates in registers"
+msgstr "Returnér små sammensatte værdier i registre"
+
+#: options.c:1059
+msgid "Enables a register move optimization"
+msgstr "Aktivér en registerflytningsoptimering"
+
+#: options.c:1062
+#, fuzzy
+msgid "Perform a register renaming optimization pass"
+msgstr "Foretag registeromdøbningsoptimering"
+
+#: options.c:1065
+msgid "Reorder basic blocks to improve code placement"
+msgstr "Omordn basisblokke for at forbedre kodeplacering"
+
+#: options.c:1068
+msgid "Reorder functions to improve code placement"
+msgstr "Omordn funktioner for at forbedre kodeplacering"
+
+#: options.c:1071
+msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime"
+msgstr ""
+
+#: options.c:1074
+msgid "Enable automatic template instantiation"
+msgstr "Aktivér automatisk skabelonsinstantiering"
+
+#: options.c:1077
+#, fuzzy
+msgid "Add a common subexpression elimination pass after loop optimizations"
+msgstr "Kør CSE-fase efter løkkeoptimeringer"
+
+#: options.c:1080
+msgid "Run the loop optimizer twice"
+msgstr "Kør løkkeoptimeringen to gange"
+
+#: options.c:1083
+msgid "Disable optimizations that assume default FP rounding behavior"
+msgstr ""
+
+#: options.c:1086
+#, fuzzy
+msgid "Generate run time type descriptor information"
+msgstr "Generér ikke typebeskrivelsesoplysninger til kørselstidspunktet"
+
+#: options.c:1089
+msgid "Enable scheduling across basic blocks"
+msgstr "Aktivér planlægning over basisblokke"
+
+#: options.c:1092
+msgid "Allow speculative motion of non-loads"
+msgstr "Tillad spekulativ bevægelse af ikke-indlæsninger"
+
+#: options.c:1095
+msgid "Allow speculative motion of some loads"
+msgstr "Tillad spekulativ bevægelse af nogle indlæsninger"
+
+#: options.c:1098
+msgid "Allow speculative motion of more loads"
+msgstr "Tillad spekulativ bevægelse af flere indlæsninger"
+
+#: options.c:1101
+msgid "Allow premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1104
+msgid "Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1107
+msgid "-fsched-stalled-insns-dep=<number> Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1110
+msgid "-fsched-stalled-insns=<number> Set number of queued insns that can be prematurely scheduled"
+msgstr ""
+
+#: options.c:1113
+#, fuzzy
+msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler"
+msgstr " -fsched-verbose=<tal> Angiv hvor meget planlæggeren skal fortælle\n"
+
+#: options.c:1116
+msgid "If scheduling post reload, do superblock scheduling"
+msgstr ""
+
+#: options.c:1119
+msgid "If scheduling post reload, do trace scheduling"
+msgstr ""
+
+#: options.c:1122
+msgid "Reschedule instructions before register allocation"
+msgstr "Omplanlæg instruktioner før registerallokering"
+
+#: options.c:1125
+msgid "Reschedule instructions after register allocation"
+msgstr "Omplanlæg instruktioner efter registerallokering"
+
+#: options.c:1128
+#, fuzzy
+msgid "Allow appending a second underscore to externals"
+msgstr "Tilføj aldrig en anden understreg til eksterne variable"
+
+#: options.c:1131
+msgid "Mark data as shared rather than private"
+msgstr "Markér data som delt snarere end privat"
+
+#: options.c:1134
+msgid "Use the same size for double as for float"
+msgstr "Benyt den samme størrelse til double som til float"
+
+#: options.c:1137
+msgid "Use the narrowest integer type possible for enumeration types"
+msgstr ""
+
+#: options.c:1140
+#, fuzzy
+msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\""
+msgstr "Overskriv den underliggende type af wchar_t til 'unsigned short'"
+
+#: options.c:1146
+msgid "Disable optimizations observable by IEEE signaling NaNs"
+msgstr "Deaktivér optimeringer som kan opdages ved IEEE-signalerende NaN'er"
+
+#: options.c:1149
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed"
+msgstr ""
+
+#: options.c:1152
+#, fuzzy
+msgid "Make \"char\" signed by default"
+msgstr "Lad 'char' være med fortegn som standard"
+
+#: options.c:1155
+#, fuzzy
+msgid "Do not print names of program units as they are compiled"
+msgstr "Udskriv navne på programenheder efterhånden som de oversættes"
+
+#: options.c:1158
+#, fuzzy
+msgid "Convert floating point constants to single precision constants"
+msgstr "Konvertér kommatalskonstanter til enkeltpræcisionskonstanter"
+
+#: options.c:1161
+#, fuzzy
+msgid "Internally convert most source to lowercase"
+msgstr "Konvertér det meste kildekode til store bogstaver internt"
+
+#: options.c:1164
+msgid "Internally preserve source case"
+msgstr "Bevar de store/små bogstaver i kildekoden internt"
+
+#: options.c:1167
+msgid "Internally convert most source to uppercase"
+msgstr "Konvertér det meste kildekode til store bogstaver internt"
+
+#: options.c:1173
+msgid "Insert stack checking code into the program"
+msgstr "Indsæt stakkontrolleringskode i programmet"
+
+#: options.c:1179
+msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>"
+msgstr ""
+
+#: options.c:1182
+msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>"
+msgstr ""
+
+#: options.c:1185
+msgid "Display statistics accumulated during compilation"
+msgstr "Vis statistik som indsamles under oversættelsen"
+
+#: options.c:1188
+#, fuzzy
+msgid "Enable assignability checks for stores into object arrays"
+msgstr "Deaktivér tildelingstjek for lagringer i objekttabeller"
+
+#: options.c:1191
+msgid "Perform strength reduction optimizations"
+msgstr "Udfør styrkereduceringsoptimeringer"
+
+#: options.c:1194
+msgid "Assume strict aliasing rules apply"
+msgstr "Antag at strenge aliasregler skal anvendes"
+
+#: options.c:1203
+msgid "Symbol names spelled in mixed case"
+msgstr "Symbolnavne staves med en blanding af store og små bogstaver"
+
+#: options.c:1206
+msgid "Symbol names in lowercase"
+msgstr "Symbolnavne staves med små bogstaver"
+
+#: options.c:1209
+msgid "Symbol names in uppercase"
+msgstr "Symbolnavne staves med store bogstaver"
+
+#: options.c:1212
+msgid "Check for syntax errors, then stop"
+msgstr "Kontrollér syntaks og stop derefter"
+
+#: options.c:1215
+msgid "-ftabstop=<number>\tDistance between tab stops for column reporting"
+msgstr ""
+
+#: options.c:1218
+#, fuzzy
+msgid "-ftemplate-depth-<number>\tSpecify maximum template instantiation depth"
+msgstr "Angiv maksimal skabelonsinstantieringsdybde"
+
+#: options.c:1221
+#, fuzzy
+msgid "Create data files needed by \"gcov\""
+msgstr "Opret datafiler som gcov har brug for"
+
+#: options.c:1227
+msgid "Perform jump threading optimizations"
+msgstr "Udfør springtrådningsoptimeringer"
+
+#: options.c:1230
+#, fuzzy
+msgid "Report the time taken by each compiler pass"
+msgstr "Rapportér den tid det tager for hver oversættelsesfase ved afslutningen af kørslen"
+
+#: options.c:1233
+#, fuzzy
+msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model"
+msgstr " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indikerer den forvalgte tråd-lokale lagringsmodel for kodegenerering\n"
+
+#: options.c:1236
+msgid "Perform superblock formation via tail duplication"
+msgstr "Udfør superbloksformering vha. haleduplikering"
+
+#: options.c:1239
+#, fuzzy
+msgid "Assume floating-point operations can trap"
+msgstr "Kommatalsoperationer kan fange"
+
+#: options.c:1242
+#, fuzzy
+msgid "Trap for signed overflow in addition, subtraction and multiplication"
+msgstr "Opsæt fælde for overløb med fortegn i addition/subtraktion/multiplikation"
+
+#: options.c:1245
+msgid "Make prefix-radix non-decimal constants be typeless"
+msgstr "Gør præfiks-grundtal ikke-decimale konstanter typeløse"
+
+#: options.c:1248
+#, fuzzy
+msgid "Allow all ugly features"
+msgstr "Forbyd alle grimme faciliteter"
+
+# hollerith?
+#: options.c:1251
+#, fuzzy
+msgid "Hollerith and typeless can be passed as arguments"
+msgstr "Hollerith og typeløse konstanter overbringes ikke som parametre"
+
+#: options.c:1254
+msgid "Allow ordinary copying of ASSIGN'ed vars"
+msgstr "Tillad almindelig kopiering af ASSIGN'ede variable"
+
+# RETMIG: ?
+#: options.c:1257
+msgid "Dummy array dimensioned to (1) is assumed-size"
+msgstr "Dummy-tabel dimensioneret til (1) er antaget størrelse"
+
+#: options.c:1260
+msgid "Trailing comma in procedure call denotes null argument"
+msgstr "Afsluttende komma i procedurekald angiver nulparameter"
+
+#: options.c:1263
+msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
+msgstr "Tillad REAL(Z) og AIMAG(Z) givet DOUBLE COMPLEX Z"
+
+#: options.c:1266
+#, fuzzy
+msgid "Initialization via DATA and PARAMETER is not type-compatible"
+msgstr "Klargøring via DATA og PARAMETER er type-kompatible"
+
+#: options.c:1269
+msgid "Allow INTEGER and LOGICAL interchangeability"
+msgstr "Tillad INTEGER og LOGICAL på hinandens plads"
+
+#: options.c:1272
+#, fuzzy
+msgid "Append underscores to externals"
+msgstr "Tilføj aldrig en anden understreg til eksterne variable"
+
+#: options.c:1275
+#, fuzzy
+msgid "Compile whole compilation unit at a time"
+msgstr "Anbring hele oversættelsesenheden i en fil"
+
+#: options.c:1278
+msgid "Delete libU77 intrinsics"
+msgstr "Slet libU77-indbyggede"
+
+#: options.c:1281
+msgid "Disable libU77 intrinsics"
+msgstr "Deaktivér libU77-indbyggede"
+
+#: options.c:1284
+#, fuzzy
+msgid "Enable libU77 intrinsics"
+msgstr "Deaktivér libU77-indbyggede"
+
+#: options.c:1287
+msgid "Hide libU77 intrinsics"
+msgstr "Skjul libU77-indbyggede"
+
+#: options.c:1296
+#, fuzzy
+msgid "Allow math optimizations that may violate IEEE or ISO standards"
+msgstr "Tillad matematikoptimeringer der kan overtræde IEEE- eller ANSI-standarderne"
+
+#: options.c:1299
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned"
+msgstr ""
+
+#: options.c:1302
+#, fuzzy
+msgid "Make \"char\" unsigned by default"
+msgstr "Lad 'char' være uden fortegn som standard"
+
+#: options.c:1305
+#, fuzzy
+msgid "Perform loop unswitching"
+msgstr "Udfør løkkeoptimeringerne"
+
+#: options.c:1308
+msgid "Just generate unwind tables for exception handling"
+msgstr "Generér blot afvindingstabeller for undtagelseshåndtering"
+
+#: options.c:1314
+msgid "Use __cxa_atexit to register destructors"
+msgstr "Benyt __cxa_atexit til at registrere destruktionsfunktioner"
+
+#: options.c:1320
+msgid "Add extra commentary to assembler output"
+msgstr "Tilføj ekstra kommentarer til menneskeligt læsbar maskinkodeuddata"
+
+#: options.c:1323
+#, fuzzy
+msgid "Print g77-specific version information and run internal tests"
+msgstr "Udskriv g77-specifik oversætterversioninfo, kør interne test"
+
+#: options.c:1326
+#, fuzzy
+msgid "Use expression value profiles in optimizations"
+msgstr "Aktivér sammenkæderoptimeringer"
+
+#: options.c:1329
+msgid "Discard unused virtual functions"
+msgstr "Kassér ubrugte virtuelle funktioner"
+
+#: options.c:1332
+msgid "Implement vtables using thunks"
+msgstr "Implementér virtuelle tabeller vha. thunk-kode"
+
+#: options.c:1335
+msgid "Program is written in VXT (Digital-like) FORTRAN"
+msgstr "Program er skrevet i VXT (Digital-agtig) FORTRAN"
+
+#: options.c:1338
+msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Slet VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede "
+
+#: options.c:1341
+msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Deaktivér VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede "
+
+#: options.c:1344
+#, fuzzy
+msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Deaktivér VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede "
-#: objc/lang-options.h:41
-msgid "Generate C header of platform specific features"
+#: options.c:1347
+msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Skjul VXT FORTRAN-understøttelse af ikke-FORTRAN-77-indbyggede "
+
+#: options.c:1353
+msgid "Emit common-like symbols as weak symbols"
+msgstr "Udsend almindelige symboler som svage symboler"
+
+#: options.c:1356
+msgid "Construct webs and split unrelated uses of single variable"
+msgstr ""
+
+#: options.c:1359
+msgid "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:1362
+msgid "Generate a #line directive pointing at the current working directory"
+msgstr ""
+
+#: options.c:1365
+msgid "Assume signed arithmetic overflow wraps around"
+msgstr ""
+
+#: options.c:1368
+msgid "Store strings in writable data section"
+msgstr "Gem strenge i en skrivbar datasektion"
+
+#: options.c:1371
+msgid "Emit cross referencing information"
+msgstr "Udsend krydsreferenceoplysninger"
+
+#: options.c:1374
+#, fuzzy
+msgid "Print internal debugging-related information"
+msgstr "Udskriv intern fejlanalyseringsrelateret info"
+
+#: options.c:1377
+msgid "Put zero initialized data in the bss section"
+msgstr "Anbring nul-klargjorte data i bss-sektionen"
+
+#: options.c:1380
+msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode"
+msgstr ""
+
+#: options.c:1383
+msgid "Treat initial values of 0 like non-zero values"
+msgstr "Behandl begyndelsesværdier på 0 som værdier forskellig fra nul"
+
+#: options.c:1386
+#, fuzzy
+msgid "Generate debug information in default format"
+msgstr "Generér fejlfindingsinfo i standardformat"
+
+#: options.c:1392
+#, fuzzy
+msgid "Generate debug information in COFF format"
+msgstr "Generér fejlfindingsinfo i standardformat"
+
+#: options.c:1395
+#, fuzzy
+msgid "Generate debug information in DWARF v2 format"
+msgstr "Generér fejlfindingsinfo i standardformat"
+
+#: options.c:1398
+#, fuzzy
+msgid "Dump declarations to a .decl file"
+msgstr "Udskriv erklæringer i en .decl-fil"
+
+#: options.c:1401
+#, fuzzy
+msgid "Generate debug information in default extended format"
+msgstr "Generér fejlfindingsinfo i udvidet standardformat"
+
+#: options.c:1404
+msgid "-gnat<options>\tSpecify options to GNAT"
+msgstr ""
+
+#: options.c:1407
+#, fuzzy
+msgid "Generate debug information in STABS format"
+msgstr "Generér fejlfindingsinfo i standardformat"
+
+#: options.c:1410
+#, fuzzy
+msgid "Generate debug information in extended STABS format"
+msgstr "Generér fejlfindingsinfo i udvidet standardformat"
+
+#: options.c:1413
+#, fuzzy
+msgid "Generate debug information in VMS format"
+msgstr "Generér fejlfindingsinfo i standardformat"
+
+#: options.c:1416
+#, fuzzy
+msgid "Generate debug information in XCOFF format"
+msgstr "Generér fejlfindingsinfo i standardformat"
+
+#: options.c:1419
+#, fuzzy
+msgid "Generate debug information in extended XCOFF format"
+msgstr "Generér fejlfindingsinfo i udvidet standardformat"
+
+#: options.c:1422
+msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1425
+msgid "-imacros <file>\tAccept definition of macros in <file>"
+msgstr ""
+
+#: options.c:1428
+msgid "-include <file>\tInclude the contents of <file> before other files"
+msgstr ""
+
+#: options.c:1431
+msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options"
+msgstr ""
+
+#: options.c:1434
+msgid "-isysroot <dir>\tSet <dir> to be the system root directory"
+msgstr ""
+
+#: options.c:1437
+msgid "-isystem <dir>\tAdd <dir> to the start of the system include path"
+msgstr ""
+
+#: options.c:1440
+msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1443
+msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path"
+msgstr ""
+
+#: options.c:1455
+msgid "Do not search standard system include directories (those specified with -isystem will still be used)"
+msgstr ""
+
+#: options.c:1458
+msgid "Do not search standard system include directories for C++"
+msgstr ""
+
+#: options.c:1464
+#, fuzzy
+msgid "-o <file>\tPlace output into <file>"
+msgstr " -o <fil> Anbring uddata i <fil>\n"
+
+#: options.c:1467
+#, fuzzy
+msgid "Enable function profiling"
+msgstr "MIPS16-funktionsprofilering"
+
+#: options.c:1470
+#, fuzzy
+msgid "Issue warnings needed for strict compliance to the standard"
+msgstr " -pedantic Udsend advarsler som er nødvendige for streng overholdelse af ISO C\n"
+
+#: options.c:1473
+msgid "Like -pedantic but issue them as errors"
+msgstr ""
+
+#: options.c:1476
+#, fuzzy
+msgid "Generate C header of platform-specific features"
msgstr "Generér C-inkluderingsfil med platformspecifikke faciliteter"
-#: objc/lang-options.h:43
-msgid "Specify the name of the class for constant strings"
-msgstr "Angiv navnet på klassen til konstante strenge"
+#: options.c:1479
+#, fuzzy
+msgid "Do not display functions compiled or elapsed time"
+msgstr " -quiet Vis ikke funktioner der oversættes eller forløbet tid\n"
-#. This is the contribution to the `lang_options' array in gcc.c for
-#. treelang.
-#: treelang/lang-options.h:26
-msgid "(debug) trace parsing process"
-msgstr "(fejlretning) følg fortolkningsprocessen"
+#: options.c:1482
+#, fuzzy
+msgid "Remap file names when including files"
+msgstr "tomt filnavn i #%s"
-#: treelang/lang-options.h:27
-msgid "(debug) trace lexical analysis"
-msgstr "(fejlretning) følg lexikalsk analyse"
+#: options.c:1485
+msgid "Conform to the ISO 1998 C++ standard"
+msgstr ""
-#: config/rs6000/darwin.h:62
-msgid " conflicting code gen style switches are used"
-msgstr " konfliktende kodegenereringstilvalg er benyttet"
+#: options.c:1488
+msgid "Conform to the ISO 1990 C standard"
+msgstr ""
-#: config/i386/mingw32.h:85 config/i386/cygwin.h:171
-msgid "shared and mdll are not compatible"
-msgstr "shared og mdll er indbyrdes uforenelige"
+#: options.c:1491
+msgid "Conform to the ISO 1999 C standard"
+msgstr ""
-#: java/lang-specs.h:33
-msgid "-fjni and -femit-class-files are incompatible"
-msgstr "-fjni og -femit-class-files er indbyrdes uforenelige"
+#: options.c:1494 options.c:1515 options.c:1518
+msgid "Deprecated in favor of -std=c99"
+msgstr ""
-#: java/lang-specs.h:34
-msgid "-fjni and -femit-class-file are incompatible"
-msgstr "-fjni og -femit-class-file er indbyrdes uforenelige"
+#: options.c:1497
+msgid "Conform to the ISO 1998 C++ standard with GNU extensions"
+msgstr ""
-#: java/lang-specs.h:35 java/lang-specs.h:36
-msgid "-femit-class-file should used along with -fsyntax-only"
-msgstr "-femit-class-file skal bruges sammen med -fsyntax-only"
+#: options.c:1500
+msgid "Conform to the ISO 1990 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1503
+msgid "Conform to the ISO 1999 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1506
+msgid "Deprecated in favor of -std=gnu99"
+msgstr ""
+
+#: options.c:1509
+msgid "Deprecated in favor of -std=c89"
+msgstr ""
+
+#: options.c:1512
+msgid "Conform to the ISO 1990 C standard as amended in 1994"
+msgstr ""
+
+#: options.c:1521
+#, fuzzy
+msgid "Enable traditional preprocessing"
+msgstr "Aktivér stakprøvning"
+
+#: options.c:1524
+msgid "-trigraphs\tSupport ISO C trigraphs"
+msgstr ""
+
+#: options.c:1527
+msgid "Do not predefine system-specific and GCC-specific macros"
+msgstr ""
+
+#: options.c:1530
+#, fuzzy
+msgid "Enable verbose output"
+msgstr "Aktivér fejlanalyseringsuddata"
-#: ada/lang-specs.h:38 java/jvspec.c:77 gcc.c:716
+#: options.c:1536
+#, fuzzy
+msgid "Suppress warnings"
+msgstr "%s: advarsel: "
+
+#: config/rs6000/darwin.h:98
+msgid " conflicting code gen style switches are used"
+msgstr " konfliktende kodegenereringstilvalg er benyttet"
+
+#: gcc.c:743
+#, fuzzy
+msgid "GCC does not support -C or -CC without -E"
+msgstr "GNU C understøtter ikke -CC uden -E"
+
+#: gcc.c:767 java/jvspec.c:80 ada/lang-specs.h:34
msgid "-pg and -fomit-frame-pointer are incompatible"
msgstr "-pg og -fomit-frame-pointer er indbyrdes uforenelige"
-#: ada/lang-specs.h:41
-msgid "-c or -S required for Ada"
-msgstr "-c eller -S kræves til Ada"
+#: gcc.c:915
+msgid "-E required when input is from standard input"
+msgstr "-E påkrævet når inddata kommer fra standardind"
+
+#: config/arm/arm.h:197
+msgid "-mapcs-26 and -mapcs-32 may not be used together"
+msgstr "-mapcs-26 og -mapcs-32 kan ikke bruges på samme tid"
+
+#: config/arm/arm.h:199
+msgid "-msoft-float and -mhard_float may not be used together"
+msgstr "-msoft-float og -mhard_float kan ikke bruges på samme tid"
+
+#: config/arm/arm.h:201
+msgid "-mbig-endian and -mlittle-endian may not be used together"
+msgstr "-mbig-endian og -mlittle-endian kan ikke bruges på samme tid"
+
+#: config/i386/mingw32.h:58 config/i386/cygwin.h:70
+msgid "shared and mdll are not compatible"
+msgstr "shared og mdll er indbyrdes uforenelige"
-#: config/darwin.h:212
+#: config/mips/mips.h:975
+msgid "-pipe is not supported"
+msgstr "-pipe understøttes ikke"
+
+#: config/mips/mips.h:1130 config/arc/arc.h:63
+msgid "may not use both -EB and -EL"
+msgstr "kan ikke bruge både -EB og -EL"
+
+#: config/darwin.h:215
msgid "-current_version only allowed with -dynamiclib"
msgstr "-current_version er kun tilladt med -dynamiclib"
-#: config/darwin.h:215
+#: config/darwin.h:218
msgid "-install_name only allowed with -dynamiclib"
msgstr "-install_name er kun tilladt med -dynamiclib"
-#: config/darwin.h:220
+#: config/darwin.h:223
msgid "-bundle not allowed with -dynamiclib"
msgstr "-bundle er ikke tilladt med -dynamiclib"
-#: config/darwin.h:221
+#: config/darwin.h:224
msgid "-bundle_loader not allowed with -dynamiclib"
msgstr "-bundle_loader er ikke tilladt med -dynamiclib"
-#: config/darwin.h:222
+#: config/darwin.h:225
msgid "-client_name not allowed with -dynamiclib"
msgstr "-client_name er ikke tilladt med -dynamiclib"
-#: config/darwin.h:225
+#: config/darwin.h:228
msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
msgstr "-force_cpusubtype_ALL er ikke tilladt med -dynamiclib"
-#: config/darwin.h:226
+#: config/darwin.h:229
msgid "-force_flat_namespace not allowed with -dynamiclib"
msgstr "-force_flat_namespace er ikke tilladt med -dynamiclib"
-#: config/darwin.h:228
+#: config/darwin.h:231
msgid "-keep_private_externs not allowed with -dynamiclib"
msgstr "-keep_private_externs er ikke tilladt med -dynamiclib"
-#: config/darwin.h:229
+#: config/darwin.h:232
msgid "-private_bundle not allowed with -dynamiclib"
msgstr "-private_bundle er ikke tilladt med -dynamiclib"
-#: config/sparc/freebsd.h:34 config/ia64/freebsd.h:23
-#: config/alpha/freebsd.h:44 config/rs6000/sysv4.h:1107
-#: config/i386/freebsd-aout.h:213
-msgid "`-p' not supported; use `-pg' and gprof(1)"
-msgstr "'-p' understøttes ikke; brug '-pg' og gprof(1)"
-
-#: config/sparc/linux64.h:197 config/sparc/linux64.h:208
-#: config/sparc/netbsd-elf.h:163 config/sparc/netbsd-elf.h:182
-#: config/sparc/sol2-bi.h:168 config/sparc/sol2-bi.h:178
-msgid "may not use both -m32 and -m64"
-msgstr "-m32 og -m64 er indbyrdes uforenelige"
-
-#: config/arm/arm.h:178
-msgid "-mapcs-26 and -mapcs-32 may not be used together"
-msgstr "-mapcs-26 og -mapcs-32 kan ikke bruges på samme tid"
-
-#: config/arm/arm.h:180
-msgid "-msoft-float and -mhard_float may not be used together"
-msgstr "-msoft-float og -mhard_float kan ikke bruges på samme tid"
-
-#: config/arm/arm.h:182
-msgid "-mbig-endian and -mlittle-endian may not be used together"
-msgstr "-mbig-endian og -mlittle-endian kan ikke bruges på samme tid"
+#: config/vax/netbsd-elf.h:42
+msgid "The -shared option is not currently supported for VAX ELF."
+msgstr "Tilvalget -shared understøttes i øjeblikket ikke for VAX ELF."
-#: config/i386/sco5.h:195
+#: config/i386/sco5.h:191
#, fuzzy
msgid "-pg not supported on this platform"
msgstr "egenskaben '%s' er ikke understøttet på denne platform"
-#: config/i386/sco5.h:196
+#: config/i386/sco5.h:192
#, fuzzy
msgid "-p and -pp specified - pick one"
msgstr "-I- er angivet to gange"
-#: config/i386/sco5.h:271
+#: config/i386/sco5.h:266
#, fuzzy
msgid "-G and -static are mutually exclusive"
msgstr "-pedantic og -traditional er indbyrdes uforenelige"
-#: f/lang-specs.h:38 gcc.c:689
-msgid "GNU C does not support -C without using -E"
+#: treelang/lang-specs.h:52
+msgid "-pg or -p and -fomit-frame-pointer are incompatible"
+msgstr "-pg eller -p og -fomit-frame-pointer er indbyrdes uforenelige"
+
+#: f/lang-specs.h:38
+#, fuzzy
+msgid "GCC does not support -C without using -E"
msgstr "GNU C understøtter ikke -C uden -E"
-#: f/lang-specs.h:39 gcc.c:690
-msgid "GNU C does not support -CC without using -E"
+#: f/lang-specs.h:39
+#, fuzzy
+msgid "GCC does not support -CC without using -E"
msgstr "GNU C understøtter ikke -CC uden -E"
-#: config/mcore/mcore.h:60
-msgid "choose either big or little endian, not both"
-msgstr "vælg enten stor- eller lilleendet, ikke begge"
+#: config/mips/r3900.h:35
+msgid "-mhard-float not supported"
+msgstr "-mhard-float understøttes ikke"
-#: config/mcore/mcore.h:63
-msgid "choose either m340 or m210 not both"
-msgstr "vælg enten m340 eller m210, ikke begge"
+#: config/mips/r3900.h:37
+msgid "-msingle-float and -msoft-float can not both be specified"
+msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
-#: config/mcore/mcore.h:64
-msgid "the m210 does not have little endian support"
-msgstr "m210 har ikke understøttelse for lilleendet"
+#: config/rs6000/sysv4.h:1094 config/i386/freebsd-aout.h:215
+msgid "`-p' not supported; use `-pg' and gprof(1)"
+msgstr "'-p' understøttes ikke; brug '-pg' og gprof(1)"
+
+#: config/sparc/linux64.h:208 config/sparc/linux64.h:219
+#: config/sparc/netbsd-elf.h:140 config/sparc/netbsd-elf.h:159
+#: config/sparc/sol2-bi.h:195 config/sparc/sol2-bi.h:205
+msgid "may not use both -m32 and -m64"
+msgstr "-m32 og -m64 er indbyrdes uforenelige"
+
+#: config/vax/vax.h:50 config/vax/vax.h:51
+msgid "profiling not supported with -mg\n"
+msgstr "profilgenerering understøttes ikke med -mg\n"
-#: config/i386/cygwin.h:115
+#: config/i386/cygwin.h:29
msgid "mno-cygwin and mno-win32 are not compatible"
msgstr "-mno-cygwin og -mnowin32 er indbyrdes uforenelige"
-#: config/vax/netbsd-elf.h:42
-msgid "The -shared option is not currently supported for VAX ELF."
-msgstr "Tilvalget -shared understøttes i øjeblikket ikke for VAX ELF."
+#: ada/lang-specs.h:36
+msgid "one of -c, -S, -gnatc, -gnatz, or -gnats is required for Ada"
+msgstr ""
-#: treelang/lang-specs.h:52
-msgid "-pg or -p and -fomit-frame-pointer are incompatible"
-msgstr "-pg eller -p og -fomit-frame-pointer er indbyrdes uforenelige"
+#: config/sparc/sol2-bi.h:167 config/sparc/sol2-bi.h:172
+#: config/sparc/sol2-gld-bi.h:17 config/sparc/sol2-gld-bi.h:22
+#, fuzzy
+msgid "does not support multilib"
+msgstr "%s understøtter ikke %s"
-#: gcc.c:847
-msgid "-E required when input is from standard input"
-msgstr "-E påkrævet når inddata kommer fra standardind"
+#: java/lang-specs.h:34
+msgid "-fjni and -femit-class-files are incompatible"
+msgstr "-fjni og -femit-class-files er indbyrdes uforenelige"
-#: gcc.c:851
-msgid "compilation of header file requested"
-msgstr "oversættelse af inkluderingsfil udbedt"
+#: java/lang-specs.h:35
+msgid "-fjni and -femit-class-file are incompatible"
+msgstr "-fjni og -femit-class-file er indbyrdes uforenelige"
-#: config/vax/vax.h:50 config/vax/vax.h:51
-msgid "profiling not supported with -mg\n"
-msgstr "profilgenerering understøttes ikke med -mg\n"
+#: java/lang-specs.h:36 java/lang-specs.h:37
+msgid "-femit-class-file should used along with -fsyntax-only"
+msgstr "-femit-class-file skal bruges sammen med -fsyntax-only"
-#: config/mips/mips.h:954
-msgid "-pipe is not supported"
-msgstr "-pipe understøttes ikke"
+#: config/mcore/mcore.h:65
+msgid "the m210 does not have little endian support"
+msgstr "m210 har ikke understøttelse for lilleendet"
-#: config/mips/mips.h:1156 config/arc/arc.h:63
-msgid "may not use both -EB and -EL"
-msgstr "kan ikke bruge både -EB og -EL"
+#~ msgid "concatenation of string literals with __FUNCTION__ is deprecated"
+#~ msgstr "sammensætning af strengkonstanter med __FUNCTION__ er forældet"
-#: config/mips/r3900.h:35
-msgid "-mhard-float not supported"
-msgstr "-mhard-float understøttes ikke"
+#~ msgid "ISO C++ forbids range expressions in switch statements"
+#~ msgstr "ISO C++ forbyder intervaludtryk i switch-sætninger"
-#: config/mips/r3900.h:37
-msgid "-msingle-float and -msoft-float can not both be specified"
-msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
+#~ msgid "ISO C++ forbids taking the address of a label"
+#~ msgstr "ISO C++ forbyder at tage adressen af en etiket"
+
+#~ msgid "declaration of `%s' shadows %s"
+#~ msgstr "erklæring af '%s' skygger for '%s'"
+
+#~ msgid "`struct %s' incomplete in scope ending here"
+#~ msgstr "'struct %s' er ufuldstændig ved virkefeltets afslutning her"
+
+#~ msgid "`union %s' incomplete in scope ending here"
+#~ msgstr "'union %s' er ufuldstændig ved virkefeltets afslutning her"
+
+#~ msgid "`enum %s' incomplete in scope ending here"
+#~ msgstr "'enum %s' er ufuldstændig ved virkefeltets afslutning her"
+
+#~ msgid "label `%s' defined but not used"
+#~ msgstr "etiketten '%s' er defineret, men ikke benyttet"
+
+#~ msgid "shadowing library function `%s'"
+#~ msgstr "skygger for biblioteksfunktionen '%s'"
+
+#~ msgid "library function `%s' declared as non-function"
+#~ msgstr "biblioteksfunktionen '%s' er erklæret som noget der ikke er en funktion"
+
+#~ msgid "conflicting types for `%s'"
+#~ msgstr "modstridende typer for '%s'"
+
+#~ msgid "redeclaration of `%s'"
+#~ msgstr "omerklæring af '%s'"
+
+#~ msgid "prototype for `%s' follows"
+#~ msgstr "prototypen for '%s' følger"
+
+#~ msgid "non-prototype definition here"
+#~ msgstr "definition uden prototype her"
+
+#~ msgid "prototype for `%s' follows and number of arguments doesn't match"
+#~ msgstr "prototypen for '%s' følger og antallet af parametre passer ikke"
+
+#~ msgid "prototype for `%s' follows and argument %d doesn't match"
+#~ msgstr "prototypen for '%s' følger og den %d. parameter passer ikke"
+
+#~ msgid "type qualifiers for `%s' conflict with previous decl"
+#~ msgstr "typemodifikationer for '%s' strider mod tidligere erklæring"
+
+#~ msgid "redundant redeclaration of `%s' in same scope"
+#~ msgstr "overflødig omerklæring af '%s' i samme virkefelt"
+
+#~ msgid "a parameter"
+#~ msgstr "en parameter"
+
+#~ msgid "a previous local"
+#~ msgstr "en tidligere lokal variabel"
+
+#~ msgid "a global declaration"
+#~ msgstr "en global erklæring"
+
+#~ msgid "`%s' used prior to declaration"
+#~ msgstr "'%s' benyttes før erklæringen"
+
+#~ msgid "`%s' was declared implicitly `extern' and later `static'"
+#~ msgstr "'%s' blev underforstået erklæret 'extern' og derefter 'static'"
+
+#~ msgid "previous external decl of `%s'"
+#~ msgstr "tidligere ekstern erklæring af '%s'"
+
+#~ msgid "type mismatch with previous implicit declaration"
+#~ msgstr "typen passer ikke med tidligere underforstået erklæring"
+
+#~ msgid "`%s' was previously implicitly declared to return `int'"
+#~ msgstr "'%s' blev tidligere underforstået erklæret til at returnere 'int'"
+
+#~ msgid "`%s' was declared `extern' and later `static'"
+#~ msgstr "'%s' blev erklæret 'extern' og derefter 'static'"
+
+#~ msgid "`%s' locally external but globally static"
+#~ msgstr "'%s' er lokalt ekstern, men globalt statisk"
+
+#~ msgid "function `%s' was previously declared within a block"
+#~ msgstr "funktionen '%s' blev tidligere erklæret inden for en blok"
+
+#~ msgid "declaration of `%s' has `extern' and is initialized"
+#~ msgstr "erklæringen af '%s' indeholder 'extern' og variablen bliver tildelt en startværdi"
+
+#~ msgid "initializer fails to determine size of `%s'"
+#~ msgstr "startværdien giver ikke størrelsen af '%s'"
+
+#~ msgid "array size missing in `%s'"
+#~ msgstr "tabelstørrelsen mangler i '%s'"
+
+#~ msgid "storage size of `%s' isn't known"
+#~ msgstr "lagringsstørrelsen af '%s' er ikke kendt"
+
+#~ msgid "storage size of `%s' isn't constant"
+#~ msgstr "lagringsstørrelsen af '%s' er ikke konstant"
+
+#~ msgid "ISO C forbids parameter `%s' shadowing typedef"
+#~ msgstr "ISO C forbyder at parameteren '%s' skygger for typedef"
+
+# engelsk original upræcis (hvordan kan man henvise til en type?)
+#~ msgid "parameter `%s' points to incomplete type"
+#~ msgstr "parameteren '%s' er en henvisning til en ufuldstændig type"
+
+#~ msgid "parameter points to incomplete type"
+#~ msgstr "parameteren er en henvisning til en ufuldstændig type"
+
+#~ msgid "`void' in parameter list must be the entire list"
+#~ msgstr "'void' i en parameterliste skal udgøre hele listen"
+
+#~ msgid "`union %s' declared inside parameter list"
+#~ msgstr "'union %s' erklæret inde i en parameterliste"
+
+#~ msgid "`enum %s' declared inside parameter list"
+#~ msgstr "'enum %s' erklæret inde i en parameterliste"
+
+#~ msgid "anonymous union declared inside parameter list"
+#~ msgstr "anonym union erklæret inde i en parameterliste"
+
+#~ msgid "anonymous enum declared inside parameter list"
+#~ msgstr "anonym enum erklæret inde i en parameterliste"
+
+#~ msgid "bit-field `%s' type invalid in ISO C"
+#~ msgstr "typen af bitfeltet '%s' er ugyldig i ISO C"
+
+#~ msgid "duplicate member `%s'"
+#~ msgstr "medlemmet '%s' optræder mere end én gang"
+
+#~ msgid "parm types given both in parmlist and separately"
+#~ msgstr "parametertyper angivet både i parameterliste og separat"
+
+#~ msgid "parameter `%s' declared void"
+#~ msgstr "parameteren '%s' erklæret void"
+
+#~ msgid "universal-character-name '\\u%04x' not valid in identifier"
+#~ msgstr "universelt tegn '\\u%04x' er ikke gyldigt i kaldenavne"
+
+#~ msgid "ignoring invalid multibyte character"
+#~ msgstr "ignorerer ugyldigt flerbyte-tegn"
+
+#~ msgid "options array incorrectly sorted: %s is before %s"
+#~ msgstr "tilvalgstabel sorteret forkert: %s er før %s"
+
+#~ msgid "-Wno-strict-prototypes is not supported in C++"
+#~ msgstr "-Wno-strict-prototypes er ikke understøttet i C++"
+
+# den fulde tekst til disse bidder findes også senere
+#~ msgid ""
+#~ "Switches:\n"
+#~ " -include <file> Include the contents of <file> before other files\n"
+#~ " -imacros <file> Accept definition of macros in <file>\n"
+#~ " -iprefix <path> Specify <path> as a prefix for next two options\n"
+#~ " -iwithprefix <dir> Add <dir> to the end of the system include path\n"
+#~ " -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
+#~ " -isystem <dir> Add <dir> to the start of the system include path\n"
+#~ msgstr ""
+#~ "Tilvalg:\n"
+#~ " -include <fil> Inkludér indholdet af <fil> før andre filer\n"
+#~ " -imacros <fil> Læs makrodefinitionerne i <fil>\n"
+#~ " -iprefix <sti> Angiv <sti> som et præfiks til de næste to tilvalg\n"
+#~ " -iwithprefix <ktlg> Føj <ktlg> til slutningen af systeminkluderingsstien\n"
+#~ " -withprefixbefore <ktlg> Føj <ktlg> til slutningen af den alm. inkluderingssti\n"
+#~ " -isystem <ktlg> Føj <ktlg> til begyndelsen af systeminkluderingsstien\n"
+
+#~ msgid ""
+#~ " -idirafter <dir> Add <dir> to the end of the system include path\n"
+#~ " -I <dir> Add <dir> to the end of the main include path\n"
+#~ " -I- Fine-grained include path control; see info docs\n"
+#~ " -nostdinc Do not search system include directories\n"
+#~ " (dirs specified with -isystem will still be used)\n"
+#~ " -nostdinc++ Do not search system include directories for C++\n"
+#~ " -o <file> Put output into <file>\n"
+#~ msgstr ""
+#~ " -idirafter <ktlg> Føj <ktlg> til slutningen af systeminkluderingsstien\n"
+#~ " -I <ktlg> Føj <ktlg> til slutningen af den alm. inkluderingssti\n"
+#~ " -I- Nøje kontrolleret inkluderingssti; se info-hjælpen\n"
+#~ " -nostdinc Søg ikke i systeminkluderingskataloger\n"
+#~ " (kataloger angivet med -isystem søges dog stadig)\n"
+#~ " -nostdinc++ Søg ikke i systeminkluderingskataloger til C++\n"
+#~ " -o <fil> Send uddata til <fil>\n"
+
+#~ msgid ""
+#~ " -trigraphs Support ISO C trigraphs\n"
+#~ " -std=<std name> Specify the conformance standard; one of:\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999, c++98\n"
+#~ " -w Inhibit warning messages\n"
+#~ " -W[no-]trigraphs Warn if trigraphs are encountered\n"
+#~ " -W[no-]comment{s} Warn if one comment starts inside another\n"
+#~ msgstr ""
+#~ " -trigraphs Understøt ISO C trigrafer\n"
+#~ " -std=<standardnavn> Angiv at koden retter sig efter en af standarderne:\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999, c++98\n"
+#~ " -w Undertryk advarselsmeddelelser\n"
+#~ " -W[no-]trigraphs Advar hvis trigrafer mødes\n"
+#~ " -W[no-]comment{s} Advar hvis en kommentar begynder inden i en anden\n"
+
+#~ msgid ""
+#~ " -W[no-]traditional Warn about features not present in traditional C\n"
+#~ " -W[no-]undef Warn if an undefined macro is used by #if\n"
+#~ " -W[no-]import Warn about the use of the #import directive\n"
+#~ msgstr ""
+#~ " -W[no-]traditional Advar om utilgængelige faciliteter i traditionel C\n"
+#~ " -W[no-]undef Advar hvis en ikkedefineret makro bruges med #if\n"
+#~ " -W[no-]import Advar om brug af #import-direktivet\n"
+
+#~ msgid ""
+#~ " -W[no-]error Treat all warnings as errors\n"
+#~ " -W[no-]system-headers Do not suppress warnings from system headers\n"
+#~ " -W[no-]all Enable most preprocessor warnings\n"
+#~ msgstr ""
+#~ " -W[no-]error Behandl alle advarsler som fejl\n"
+#~ " -W[no-]system-headers Undertryk ikke advarsler fra systeminkluderingsfiler\n"
+#~ " -W[no-]all Slå alle præprocessoradvarsler til\n"
+
+#~ msgid ""
+#~ " -M Generate make dependencies\n"
+#~ " -MM As -M, but ignore system header files\n"
+#~ " -MD Generate make dependencies and compile\n"
+#~ " -MMD As -MD, but ignore system header files\n"
+#~ " -MF <file> Write dependency output to the given file\n"
+#~ " -MG Treat missing header file as generated files\n"
+#~ msgstr ""
+#~ " -M Generér afhængigheder til make\n"
+#~ " -MM Som -M, men ignorér systeminkluderingsfiler\n"
+#~ " -MD Generer make-afhængigheder og oversæt\n"
+#~ " -MMD Som -MD, men ignorér systeminkluderingsfiler\n"
+#~ " -MF <fil> Skriv afhænghedsuddata til den givne fil\n"
+#~ " -MG Behandl manglende inkl.-filer som genererede filer\n"
+
+# make kalder phony targets for falske mål
+#~ msgid ""
+#~ " -MP\t\t\t Generate phony targets for all headers\n"
+#~ " -MQ <target> Add a MAKE-quoted target\n"
+#~ " -MT <target> Add an unquoted target\n"
+#~ msgstr ""
+#~ " -MP Generér \"falske\" mål for alle inkluderingsfiler\n"
+#~ " -MQ <mål> Tilføj et MAKE-mål i anførselstegn\n"
+#~ " -MT <mål> Tilføj et mål uden anførselstegn\n"
+
+#~ msgid ""
+#~ " -D<macro> Define a <macro> with string '1' as its value\n"
+#~ " -D<macro>=<val> Define a <macro> with <val> as its value\n"
+#~ " -A<question>=<answer> Assert the <answer> to <question>\n"
+#~ " -A-<question>=<answer> Disable the <answer> to <question>\n"
+#~ " -U<macro> Undefine <macro> \n"
+#~ " -v Display the version number\n"
+#~ msgstr ""
+#~ " -D<makro> Definér makroen <makro> med strengen '1' som værdi\n"
+#~ " -D<makro>=<værdi> Definér makroen <makro> med værdien <værdi>\n"
+#~ " -A<spørgsmål>=<svar> Angiv at <svar> er svar på <spørgsmål>\n"
+#~ " -A-<spørgsmål>=<svar> Angiv at <svar> ikke er svar på <spørgsmål>\n"
+#~ " -U<makro> Glem definitionen af <makro>\n"
+#~ " -v Skriv versionsnummeret\n"
+
+#~ msgid ""
+#~ " -H Print the name of header files as they are used\n"
+#~ " -C Do not discard comments\n"
+#~ " -dM Display a list of macro definitions active at end\n"
+#~ " -dD Preserve macro definitions in output\n"
+#~ " -dN As -dD except that only the names are preserved\n"
+#~ " -dI Include #include directives in the output\n"
+#~ msgstr ""
+#~ " -H Skriv navnene på inkluderingsfilerne når de bruges\n"
+#~ " -C Fjern ikke kommentarer\n"
+#~ " -dM Vis til sidst de aktive makrodefinitioner\n"
+#~ " -dD Bevar makrodefinitioner i uddata\n"
+#~ " -dN Som -dD bortset fra at kun navnene bevares\n"
+#~ " -dI Inkludér #include-anvisninger i uddata\n"
+
+#~ msgid ""
+#~ " -f[no-]preprocessed Treat the input file as already preprocessed\n"
+#~ " -ftabstop=<number> Distance between tab stops for column reporting\n"
+#~ " -P Do not generate #line directives\n"
+#~ " -remap Remap file names when including files\n"
+#~ " --help Display this information\n"
+#~ msgstr ""
+#~ " -f[no-]preprocessed Behandl inddatafilen som allerede præprocesseret\n"
+#~ " -ftabstop=<tal> Afstand mellem tabulatorstop i kolonnerapportering\n"
+#~ " -P Generér ikke #line-angivelser\n"
+#~ " -remap Omdan filnavne ved filinkludering\n"
+#~ " --help Vis denne vejledning\n"
+
+#~ msgid "parse error"
+#~ msgstr "tolkningsfejl"
+
+# RETMIG: hvad betyder dette?
+#~ msgid "ISO C forbids the address of a cast expression"
+#~ msgstr "ISO C forbyder adressen af et typeomtvingningsudtryk"
+
+#~ msgid "initializer for static variable is not constant"
+#~ msgstr "startværdien for den statiske variabel er ikke en konstant"
+
+#~ msgid "initializer for static variable uses complicated arithmetic"
+#~ msgstr "startværdien for den statiske variabel benytter komplicerede beregninger"
+
+#~ msgid "aggregate initializer is not constant"
+#~ msgstr "startværdi til variabel af en sammensat type er ikke en konstant"
+
+#~ msgid "aggregate initializer uses complicated arithmetic"
+#~ msgstr "startværdien til variabel af en sammensat type benytter komplicerede beregninger"
+
+#~ msgid "open %s"
+#~ msgstr "fejl ved åbning af %s"
+
+#~ msgid "incompatibilities between object file & expected values"
+#~ msgstr "uoverensstemmelser mellem objektfil og forventede værdier"
+
+#~ msgid ""
+#~ "\n"
+#~ "Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Behandler symboltabel nr. %d, forskydning = 0x%.8lx, form = %s\n"
+
+#~ msgid "string section missing"
+#~ msgstr "strengsektion mangler"
+
+#~ msgid "section pointer missing"
+#~ msgstr "sektionshenvisning mangler"
+
+#~ msgid "no symbol table found"
+#~ msgstr "ingen symboltabel fundet"
+
+#~ msgid ""
+#~ "\n"
+#~ "Updating header and load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Opdaterer hoved- og indlæsningskommandoer.\n"
+#~ "\n"
+
+#~ msgid "load command map, %d cmds, new size %ld.\n"
+#~ msgstr "indlæser kommandooversigt, %d kommandoer, ny størrelse %ld.\n"
+
+#~ msgid ""
+#~ "writing load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "skriver indlæsningskommandoer.\n"
+#~ "\n"
+
+#~ msgid "close %s"
+#~ msgstr "fejl ved lukning af %s"
+
+#~ msgid "could not convert 0x%l.8x into a region"
+#~ msgstr "kunne ikke konvertere 0x%l.8x til en region"
+
+#~ msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
+#~ msgstr "%s-funktion, region %d, forskydning = %ld (0x%.8lx)\n"
+
+#~ msgid "bad magic number"
+#~ msgstr "ugyldigt magisk tal"
+
+#~ msgid "bad header version"
+#~ msgstr "ugyldig version af hovedet"
+
+#~ msgid "bad raw header version"
+#~ msgstr "ugyldig version af råhovedet"
+
+#~ msgid "raw header buffer too small"
+#~ msgstr "råhoved-mellemlager for småt"
+
+#~ msgid "old raw header file"
+#~ msgstr "gammel råhovedfil"
+
+#~ msgid "unsupported version"
+#~ msgstr "versionen er ikke understøttet"
+
+#~ msgid "unknown {de,en}code_mach_o_hdr return value %d"
+#~ msgstr "ukendt {de,en}code_mach_o_hdr returneringsværdi %d"
+
+#~ msgid "fstat %s"
+#~ msgstr "fejl ved egenskabsundersøgelse af filen %s"
+
+#~ msgid "lseek %s 0"
+#~ msgstr "fejl ved søgning til begyndelsen i filen %s"
+
+#~ msgid "read %s"
+#~ msgstr "fejl ved læsning af %s"
+
+#~ msgid "read %ld bytes, expected %ld, from %s"
+#~ msgstr "læste %ld byte, forventede %ld, fra %s"
+
+#~ msgid "msync %s"
+#~ msgstr "fejl ved synkronisering mellem hukommelse og disk af %s"
+
+#~ msgid "munmap %s"
+#~ msgstr "fejl ved fjernelse af %s fra hukommelsen"
+
+#~ msgid "write %s"
+#~ msgstr "fejl ved skrivning til %s"
+
+#~ msgid "wrote %ld bytes, expected %ld, to %s"
+#~ msgstr "skrev %ld byte, forventede %ld, til %s"
+
+#~ msgid "ISO C++ does not permit \"%s\" in #if"
+#~ msgstr "ISO C++ tillader ikke \"%s\" i #if"
+
+#~ msgid "invalid character '%c' in #if"
+#~ msgstr "ugyldigt tegn '%c' i #if"
+
+#~ msgid "invalid character '\\%03o' in #if"
+#~ msgstr "ugyldigt tegn '\\%03o' i #if"
+
+#~ msgid "absolute file name in remap_filename"
+#~ msgstr "absolut filnavn i remap_filename"
+
+#~ msgid "%s: Not a directory"
+#~ msgstr "%s: ikke et katalog"
+
+#~ msgid "directory name missing after %s"
+#~ msgstr "et katalognavn mangler efter %s"
+
+#~ msgid "file name missing after %s"
+#~ msgstr "et filnavn mangler efter %s"
+
+#~ msgid "path name missing after %s"
+#~ msgstr "navnet på en sti mangler efter %s"
+
+#~ msgid "trigraph ??%c converted to %c"
+#~ msgstr "trigrafen ??%c konverteret til %c"
+
+#~ msgid "trigraph ??%c ignored"
+#~ msgstr "trigrafen ??%c ignoreret"
+
+#~ msgid "backslash and newline separated by space"
+#~ msgstr "omvendt skråstreg og linjeskift er adskilt af mellemrum"
+
+#~ msgid "backslash-newline at end of file"
+#~ msgstr "omvendt skråstreg efterfulgt af linjeskift ved slutningen af filen"
+
+#~ msgid "\"/*\" within comment"
+#~ msgstr "\"/*\" i en kommentar"
+
+#~ msgid "%s in preprocessing directive"
+#~ msgstr "%s i præprocessordirektiv"
+
+#~ msgid "no newline at end of file"
+#~ msgstr "ingen linjeskift ved slutningen af filen"
+
+#~ msgid "unknown string token %s\n"
+#~ msgstr "ukendt strengsymbol %s\n"
+
+#~ msgid "non-hex digit '%c' in universal-character-name"
+#~ msgstr "'%c' der ikke er et hexadecimalt ciffer, optræder i universelt tegnnavn"
+
+#~ msgid "universal-character-name on EBCDIC target"
+#~ msgstr "universelt tegnnavn på EBCDIC-mål"
+
+#~ msgid "universal-character-name out of range"
+#~ msgstr "universelt tegnnavn uden for det gyldige interval"
+
+#~ msgid "escape sequence out of range for its type"
+#~ msgstr "undvigesekvensen er uden for det gyldig interval for dens type"
+
+#~ msgid "#import is obsolete, use an #ifndef wrapper in the header file"
+#~ msgstr "#import er forældet, brug en #ifndef-indpakning i inkluderingsfilen"
+
+#~ msgid "#pragma once is obsolete"
+#~ msgstr "'#pragma once' er forældet"
+
+#~ msgid "the conditional began here"
+#~ msgstr "betingelsen begyndte her"
+
+#~ msgid "unterminated #%s"
+#~ msgstr "uafsluttet #%s"
+
+#~ msgid "macro \"%s\" is not used"
+#~ msgstr "makroen \"%s\" bliver ikke brugt"
+
+#~ msgid "\"%s\" redefined"
+#~ msgstr "\"%s\" omdefineret"
+
+#~ msgid "this is the location of the previous definition"
+#~ msgstr "den foregående definition er her"
+
+#~ msgid "((anonymous))"
+#~ msgstr "((anonym))"
+
+#~ msgid "%s: warnings being treated as errors\n"
+#~ msgstr "%s: advarsler bliver opfattet som fejl\n"
+
+#~ msgid "At top level:"
+#~ msgstr "Ved øverste niveau:"
+
+#~ msgid "In member function `%s':"
+#~ msgstr "I medlemsfunktionen '%s':"
+
+#~ msgid "In function `%s':"
+#~ msgstr "I funktionen '%s':"
+
+#~ msgid ""
+#~ "Please submit a full bug report,\n"
+#~ "with preprocessed source if appropriate.\n"
+#~ "See %s for instructions.\n"
+#~ msgstr ""
+#~ "Indsend venligst en komplet fejlrapport med\n"
+#~ "præprocesseret kildekode om nødvendigt.\n"
+#~ "Se %s for instruktioner.\n"
+
+#~ msgid "In file included from %s:%d"
+#~ msgstr "I filen inkluderet af %s:%d"
+
+# kommer til at stå neden under ovenstående, derfor "af"
+#~ msgid ""
+#~ ",\n"
+#~ " from %s:%d"
+#~ msgstr ""
+#~ ",\n"
+#~ " af %s:%d"
+
+#~ msgid "internal regno botch: `%s' has regno = %d\n"
+#~ msgstr "internt reg.nr.-problem: '%s' har reg.nr. = %d\n"
+
+#~ msgid "support for the DWARF1 debugging format is deprecated"
+#~ msgstr "understøttelse for DWARF1-fejlanalyseringsformatet er forældet"
+
+#~ msgid "can't get current directory"
+#~ msgstr "kan ikke få fat i det aktuelle katalog"
+
+#~ msgid "unsupported wide integer operation"
+#~ msgstr "bred heltalsoperation understøttes ikke"
+
+#~ msgid "mismatched braces in specs"
+#~ msgstr "uafbalancerede krøllede paranteser i specifikationer"
+
+#~ msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
+#~ msgstr "Copyright © 2001 Free Software Foundation, Inc.\n"
+
+#~ msgid "Could not open basic block file %s.\n"
+#~ msgstr "Kunne ikke åbne basisblokfilen %s.\n"
+
+#~ msgid "Could not open program flow graph file %s.\n"
+#~ msgstr "Kunne ikke åbne programstrømsgraffilen %s.\n"
+
+#~ msgid "Could not open data file %s.\n"
+#~ msgstr "Kunne ikke åbne datafilen %s.\n"
+
+#~ msgid "Assuming that all execution counts are zero.\n"
+#~ msgstr "Antager at alle kørselstællere er nul.\n"
+
+#~ msgid "No executable code associated with file %s.\n"
+#~ msgstr "Ingen kørbar kode associeret med filen %s.\n"
+
+#~ msgid "didn't use all bb entries of graph, function %s\n"
+#~ msgstr "brugte ikke alle grafens basisblokelementer, funktion %s\n"
+
+#~ msgid "block_num = %ld, num_blocks = %d\n"
+#~ msgstr "block_num = %ld, num_blocks = %d\n"
+
+#~ msgid "ERROR: unexpected line number %ld\n"
+#~ msgstr "Fejl: uventet linjenummer %ld\n"
+
+#~ msgid "ERROR: too many basic blocks in function %s\n"
+#~ msgstr "Fejl: for mange basisblokke i funktionen %s\n"
+
+#~ msgid "ERROR: out of range line number in function %s\n"
+#~ msgstr "Fejl: linjenummer uden for det gyldige interval i funktionen %s\n"
+
+#~ msgid "Could not open source file %s.\n"
+#~ msgstr "Kunne ikke åbne kildefilen %s.\n"
+
+#~ msgid "Unexpected EOF while reading source file %s.\n"
+#~ msgstr "Stødt på slutningen af kildefilen %s tidligere end forventet.\n"
+
+#~ msgid "Creating %s.\n"
+#~ msgstr "Opretter %s.\n"
+
+#~ msgid "Name `%s' contains quotes"
+#~ msgstr "Navnet '%s' indeholder citationstegn"
+
+#~ msgid "invalid string `%s' in define_cpu_unit"
+#~ msgstr "ugyldig streng '%s' i define_cpu_unit"
+
+#~ msgid "invalid string `%s' in define_query_cpu_unit"
+#~ msgstr "ugyldig streng '%s' i define_query_cpu_unit"
+
+#~ msgid "invalid string `%s' in define_bypass"
+#~ msgstr "ugyldig streng '%s' i define_bypass"
+
+#~ msgid "invalid first string `%s' in exclusion_set"
+#~ msgstr "ugyldig første streng '%s' i exclusion_set"
+
+#~ msgid "invalid second string `%s' in exclusion_set"
+#~ msgstr "ugyldig anden streng '%s' i exclusion_set"
+
+#~ msgid "invalid first string `%s' in presence_set"
+#~ msgstr "ugyldig første streng '%s' i presence_set"
+
+#~ msgid "invalid second string `%s' in presence_set"
+#~ msgstr "ugyldig anden streng '%s' i presence_set"
+
+#~ msgid "invalid first string `%s' in absence_set"
+#~ msgstr "ugyldig første streng '%s' i absence_set"
+
+#~ msgid "invalid second string `%s' in absence_set"
+#~ msgstr "ugyldig anden streng '%s' i absence_set"
+
+#~ msgid "invalid string `%s' in define_automaton"
+#~ msgstr "ugyldig streng '%s' i define_automaton"
+
+#~ msgid "invalid option `%s' in automata_option"
+#~ msgstr "ugyldigt tilvalg '%s' i automata_option"
+
+#~ msgid "garbage after ) in reservation `%s'"
+#~ msgstr "ragelse efter ) i reservering '%s'"
+
+#~ msgid "invalid `%s' in reservation `%s'"
+#~ msgstr "ugyldig '%s' i reservering '%s'"
+
+#~ msgid "repetition `%s' <= 1 in reservation `%s'"
+#~ msgstr "gentagelse '%s' <= 1 i reservering '%s'"
+
+#~ msgid "unit `%s' in exclusion is not declared"
+#~ msgstr "enhed '%s' i ekskludering er ikke erklæret"
+
+#~ msgid "`%s' in exclusion is not unit"
+#~ msgstr "'%s' i ekskludering er ikke enhed"
+
+#~ msgid "unit `%s' excludes itself"
+#~ msgstr "enheden '%s' ekskluderer sig selv"
+
+#~ msgid "units `%s' and `%s' in exclusion set belong to different automata"
+#~ msgstr "enhederne '%s' og '%s' i ekskluderingsmængde tilhører forskellige automater"
+
+#~ msgid "unit `%s' excludes and requires presence of `%s'"
+#~ msgstr "enheden '%s' ekskluderer og kræver tilstedeværelse af '%s'"
+
+#~ msgid "unit `%s' requires absence and presence of `%s'"
+#~ msgstr "enheden '%s' kræver tilstedeværelse og fravær af '%s'"
+
+#~ msgid "repeated declaration of automaton `%s'"
+#~ msgstr "gentaget erklæring af automaten '%s'"
+
+#~ msgid "define_insn_reservation `%s' has negative latency time"
+#~ msgstr "define_insn_reservation '%s' har negativ ventetid"
+
+#~ msgid "`%s' is already used as insn reservation name"
+#~ msgstr "`%s' bliver allerede benyttet som instruktionsreserveringsnavn"
+
+#~ msgid "define_bypass `%s - %s' has negative latency time"
+#~ msgstr "define_bypass '%s - %s' har negativ ventetid"
+
+#~ msgid "automaton `%s' is not declared"
+#~ msgstr "automaten '%s' er ikke erklæret"
+
+#~ msgid "define_unit `%s' without automaton when one defined"
+#~ msgstr "define_unit '%s' uden automat når en er defineret"
+
+#~ msgid "`%s' is declared as cpu unit"
+#~ msgstr "'%s' er erklæret som CPU-enhed"
+
+#~ msgid "`%s' is declared as cpu reservation"
+#~ msgstr "'%s' er erklæret som CPU-reservering"
+
+#~ msgid "repeated declaration of unit `%s'"
+#~ msgstr "gentaget erklæring af enheden '%s'"
+
+#~ msgid "repeated declaration of reservation `%s'"
+#~ msgstr "gentaget erklæring af reserveringen '%s'"
+
+#~ msgid "there is no insn reservation `%s'"
+#~ msgstr "der er ingen instruktionsreservering '%s'"
+
+#~ msgid "the same bypass `%s - %s' is already defined"
+#~ msgstr "den samme videreledning '%s - %s' er allerede defineret"
+
+#~ msgid "bypass `%s - %s' is already defined"
+#~ msgstr "videreledning '%s - %s' er allerede defineret"
+
+#~ msgid "undeclared unit or reservation `%s'"
+#~ msgstr "ikke-erklæret enhed eller reservering '%s'"
+
+#~ msgid "unit `%s' is not used"
+#~ msgstr "enhed '%s' bliver ikke benyttet"
+
+#~ msgid "reservation `%s' is not used"
+#~ msgstr "reservering '%s' bliver ikke benyttet"
+
+#~ msgid "cycle in definition of reservation `%s'"
+#~ msgstr "cyklus i definering af reservering '%s'"
+
+#~ msgid "Units `%s' and `%s' should be in the same automaton"
+#~ msgstr "Enhederne '%s' og '%s' skal være i den samme automat"
+
+#~ msgid "-split has no argument."
+#~ msgstr "-split uden parametre"
+
+#~ msgid "option `-split' has not been implemented yet\n"
+#~ msgstr "tilvalget '-split' understøttes ikke endnu\n"
+
+#~ msgid "Automaton `%s': Insn `%s' will never be issued"
+#~ msgstr "Automat '%s': instruktion '%s' vil aldrig blive udført"
+
+#~ msgid "Insn `%s' will never be issued"
+#~ msgstr "Instruktion '%s' vil aldrig blive udført"
+
+#~ msgid "Errors in DFA description"
+#~ msgstr "Fejl i DFA-beskrivelse"
+
+#~ msgid "Error in writing DFA description file %s"
+#~ msgstr "Fejl ved skrivning af DFA-beskrivelsesfil %s"
+
+#~ msgid "No input file name."
+#~ msgstr "Intet inddatafilnavn."
+
+#~ msgid "Profile does not match flowgraph of function %s (out of date?)"
+#~ msgstr "Profil passer ikke til flowgraph af funktionen %s (forældet?)"
+
+#~ msgid ".da file corrupted"
+#~ msgstr ".da-fil ødelagt"
+
+#~ msgid "Generate STABS format debug info"
+#~ msgstr "Generér fejlfindingsinfo i STABS-format"
+
+#~ msgid "Generate extended STABS format debug info"
+#~ msgstr "Generér fejlfindingsinfo i udvidet STABS-format"
+
+#~ msgid "Generate DWARF-1 format debug info"
+#~ msgstr "Generér fejlfindingsinfo i DWARF-1-format"
+
+#~ msgid "Generate extended DWARF-1 format debug info"
+#~ msgstr "Generér fejlfindingsinfo i udvidet DWARF-1-format"
+
+#~ msgid "Generate DWARF-2 debug info"
+#~ msgstr "Generér fejlfindingsinfo i DWARF-2-format"
+
+#~ msgid "Generate XCOFF format debug info"
+#~ msgstr "Generér fejlfindingsinfo i XCOFF-format"
+
+#~ msgid "Generate extended XCOFF format debug info"
+#~ msgstr "Generér fejlfindingsinfo i udvidet XCOFF-format"
+
+#~ msgid "Generate COFF format debug info"
+#~ msgstr "Generér fejlfindingsinfo i COFF-format"
+
+#~ msgid "Generate VMS format debug info"
+#~ msgstr "Generér fejlfindingsinfo i VMS-format"
+
+#~ msgid "Consider all mem refs through pointers as volatile"
+#~ msgstr "Betragt alle hukommelsesferencer gennem henvisninger som volatile"
+
+#~ msgid "Consider all mem refs to global data to be volatile"
+#~ msgstr "Betragt alle hukommelsesferencer til globale data som volatile"
+
+#~ msgid "Consider all mem refs to static data to be volatile"
+#~ msgstr "Betragt alle hukommelsesferencer til statiske data som volatile"
+
+#~ msgid "Integrate simple functions into their callers"
+#~ msgstr "Integrér simple funktioner i deres kaldere"
+
+#~ msgid "Output GNU ld formatted global initializers"
+#~ msgstr "Udskriv GNU ld-formaterede globale startværdier"
+
+#~ msgid "Enable SSA optimizations"
+#~ msgstr "Aktivér SSA-optimeringer"
+
+#~ msgid "Enable SSA conditional constant propagation"
+#~ msgstr "Aktivér betinget konstant SSA-propagering"
+
+#~ msgid "Enable aggressive SSA dead code elimination"
+#~ msgstr "Aktivér aggressiv SSA-eliminering af ubrugt kode"
+
+#~ msgid "Compile just for ISO C90"
+#~ msgstr "Oversæt kun til ISO C90"
+
+#~ msgid "Determine language standard"
+#~ msgstr "Bestem sprogstandarden"
+
+#~ msgid "Make bit-fields by unsigned by default"
+#~ msgstr "Lad bitfelter være uden fortegn som standard"
+
+#~ msgid "Allow different types as args of ? operator"
+#~ msgstr "Tillad forskellige typer som parametre til ?-operatoren"
+
+#~ msgid "Allow the use of $ inside identifiers"
+#~ msgstr "Tillad brug af $ inden i kaldenavne"
+
+#~ msgid "Use the smallest fitting integer to hold enums"
+#~ msgstr "Benyt den mindst mulige størrelse heltal til enum-værdier"
+
+#~ msgid "Enable most warning messages"
+#~ msgstr "Aktivér de fleste advarselsbeskeder"
+
+#~ msgid "Warn if nested comments are detected"
+#~ msgstr "Advar hvis indlejrede kommentarer mødes"
+
+#~ msgid "Don't warn about too many arguments to format functions"
+#~ msgstr "Advar ikke om for mange parametre til formateringsfunktioner"
+
+#~ msgid "Warn about non-string-literal format strings"
+#~ msgstr "Advar om formateringsstrenge der ikke er strengkonstanter"
+
+#~ msgid "Warn about constructs whose meanings change in ISO C"
+#~ msgstr "Advar om konstruktioner hvis betydning er ændret i ISO C"
+
+#~ msgid "Warn when trigraphs are encountered"
+#~ msgstr "Advar når trigrafer mødes"
+
+#~ msgid "Mark strings as 'const char *'"
+#~ msgstr "Markér strenge som 'const char *'"
+
+#~ msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
+#~ msgstr " -pedantic-errors Som -pedantic bortset fra at problemer bliver til fejl\n"
+
+#~ msgid " -w Suppress warnings\n"
+#~ msgstr " -w Undertryk advarsler\n"
+
+#~ msgid " -W Enable extra warnings\n"
+#~ msgstr " -W Aktivér ekstra advarsler\n"
+
+#~ msgid " -Wunused Enable unused warnings\n"
+#~ msgstr " -Wunused Aktivér ubrugthedsadvarsler\n"
+
+#~ msgid " -p Enable function profiling\n"
+#~ msgstr " -p Aktivér funktionsprofilering\n"
+
+#~ msgid " -version Display the compiler's version\n"
+#~ msgstr " -version Udskriv oversætterens version\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "Language specific options:\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Sprogspecifikke tilvalg:\n"
+
+#~ msgid " %-23.23s [undocumented]\n"
+#~ msgstr " %-23.23s [ikke dokumenteret]\n"
+
+# %s er et sprog
+#~ msgid ""
+#~ "\n"
+#~ "There are undocumented %s specific options as well.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Der er også ikke-dokumenterede specifikke tilvalg til %s.\n"
+
+#~ msgid ""
+#~ "\n"
+#~ " Options for %s:\n"
+#~ msgstr ""
+#~ "\n"
+#~ " Tilvalg til %s:\n"
+
+#~ msgid "unrecognized option `%s'"
+#~ msgstr "ukendt tilvalg '%s'"
+
+#~ msgid "-Wid-clash-LEN is no longer supported"
+#~ msgstr "-Wid-clash-LEN understøttes ikke længere"
+
+#~ msgid "use -gdwarf -g%d for DWARF v1, level %d"
+#~ msgstr "benyt - gdwarf -g%d til DWARF v1, niveau %d"
+
+#~ msgid "use -gdwarf-2 for DWARF v2"
+#~ msgstr "benyt -gdwarf-2 til DWARF v2"
+
+#~ msgid "ignoring option `%s' due to invalid debug level specification"
+#~ msgstr "ignorerer tilvalget '%s' på grund af ugyldig specifikation af fejlfindingsniveau"
+
+#~ msgid "`%s': unknown or unsupported -g option"
+#~ msgstr "'%s': ukendt eller ikke-understøttet '-g'-tilvalg"
+
+#~ msgid "`%s' ignored, conflicts with `-g%s'"
+#~ msgstr "'%s' ignoreret, er i konflikt med '-g%s'"
+
+#~ msgid "-param option missing argument"
+#~ msgstr "'-param'-tilvalg mangler parameter"
+
+#~ msgid "invalid --param option: %s"
+#~ msgstr "ugyldigt '--param'-tilvalg: %s"
+
+#~ msgid "(it is valid for %s but not the selected language)"
+#~ msgstr "(det er gyldigt for %s, men ikke for det valgte sprog)"
+
+#~ msgid "#`%s' not supported by %s#"
+#~ msgstr "#'%s' ikke understøttet af %s#"
+
+#~ msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
+#~ msgstr "Det maksimale antal instruktioner ved gentagen indbygning før GCC dæmper indbygningen"
+
+#~ msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
+#~ msgstr "Hældningen af den lineære funktion der dæmper indbygning efter at den rekursive indbygningsgrænse er nået, er givet ved den negative, reciprokke værdi af denne parameter"
+
+#~ msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
+#~ msgstr "Antallet af instruktioner i en enkelt funktion der stadig indbygges efter megen rekursiv indbygning"
+
+#~ msgid "Use Mingw32 interface"
+#~ msgstr "Benyt Mingw32-grænseflade"
+
+#~ msgid "Use Cygwin interface"
+#~ msgstr "Benyt Cygwin-grænseflade"
+
+#~ msgid "Use bare Windows interface"
+#~ msgstr "Benyt bar Windows-grænseflade"
+
+#~ msgid "const objects cannot go in .sdata/.sbss"
+#~ msgstr "konstante objekter kan ikke anbringes i .sdata/.sbss"
+
+#~ msgid "Generate code for a Sun FPA"
+#~ msgstr "Generér kode til en Sun FPA"
+
+#~ msgid "Do not generate code for a Sun FPA"
+#~ msgstr "Generér ikke kode til en Sun FPA"
+
+#~ msgid "Generate code for a Sun Sky board"
+#~ msgstr "Generér kode til et Sun Sky-kort"
+
+#~ msgid "Do not use Sky linkage convention"
+#~ msgstr "Benyt ikke Sky-kædningskonventionen"
+
+#~ msgid "Generate code for a 68881"
+#~ msgstr "Generér kode til en 68881"
+
+#~ msgid "internal gcc monitor: short-branch(%x)"
+#~ msgstr "intern GCC-overvågning: short-branch(%x)"
+
+#~ msgid "internal gcc error: Can't express symbolic location"
+#~ msgstr "intern GCC-fejl: Kan ikke udtrykke symbolsk placering"
+
+#~ msgid "argument #%d is a structure"
+#~ msgstr "%d. parameter er en struktur"
+
+#~ msgid "%%R not followed by %%B/C/D/E"
+#~ msgstr "%%R efterfølges ikke af %%B/C/D/E"
+
+#~ msgid "invalid %%Q value"
+#~ msgstr "ugyldig %%Q-værdi"
+
+#~ msgid "invalid %%o value"
+#~ msgstr "ugyldig %%o-værdi"
+
+#~ msgid "invalid %%s/S value"
+#~ msgstr "ugyldig %%s/S-værdi"
+
+#~ msgid "invalid %%B value"
+#~ msgstr "ugyldig %%B-værdi"
+
+#~ msgid "`%%d' operand isn't a register"
+#~ msgstr "operanden '%%d' er ikke et register"
+
+#~ msgid "operand is r0"
+#~ msgstr "operanden er r0"
+
+#~ msgid "operand is const_double"
+#~ msgstr "operanden er const_double"
+
+#~ msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
+#~ msgstr "-mtrap-large-shift og -mhandle-large-shift er indbyrdes uforenelige"
+
+#~ msgid "invalid option `-mshort-data-%s'"
+#~ msgstr "ugyldigt tilvalg '-mshort-data-%s'"
+
+#~ msgid "-mshort-data-%s is too large "
+#~ msgstr "-mshort-data-%s er for stor"
+
+#~ msgid "-mshort-data-%s and PIC are incompatible"
+#~ msgstr "-mshort-data-%s og PIC er indbyrdes uforenelige"
+
+#~ msgid "bad value (%s) for -mips switch"
+#~ msgstr "ugyldig værdi (%s) til tilvalget -mips"
+
+#~ msgid "invalid option `entry%s'"
+#~ msgstr "ugyldigt tilvalg 'entry%s'"
+
+#~ msgid "-mentry is only meaningful with -mips-16"
+#~ msgstr "-mentry giver kun mening sammen med -mips-16"
+
+#~ msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
+#~ msgstr "MIPS ECOFF-formatet tillader ikke skift af filnavne inden i funktioner med #line"
+
+#~ msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
+#~ msgstr "fp_offset (%ld) eller end_offset (%ld) er mindre end nul"
+
+#~ msgid "Trap on integer divide overflow"
+#~ msgstr "Forårsag undtagelse ved heltalsdivisionsoverløb"
+
+#~ msgid "Don't trap on integer divide overflow"
+#~ msgstr "Forårsag ikke undtagelse ved heltalsdivisionsoverløb"
+
+#~ msgid "Use mips16 entry/exit psuedo ops"
+#~ msgstr "Benyt MIPS16-indtrædelse-/afslutningspseudooperationer"
+
+#~ msgid "Don't use MIPS16 instructions"
+#~ msgstr "Benyt ikke MIPS16-instruktioner"
+
+#~ msgid "invalid %%z value"
+#~ msgstr "ugyldig %%z-værdi"
+
+#~ msgid "invalid %%Z value"
+#~ msgstr "ugyldig %%Z-værdi"
+
+#~ msgid "invalid %%j value"
+#~ msgstr "ugyldig %%j-værdi"
+
+#~ msgid "can't have varargs with -mfp-arg-in-fp-regs"
+#~ msgstr "kan ikke have variable parameterlister med -mfp-arg-in-fp-regs"
+
+#~ msgid "unknown -mvrsave= option specified: '%s'"
+#~ msgstr "ukendt tilvalg til -mvrsave= angivet: '%s'"
+
+#~ msgid "64 bit mode"
+#~ msgstr "64 bit-tilstand"
+
+#~ msgid "31 bit mode"
+#~ msgstr "31 bit-tilstand"
+
+#~ msgid "Use the Xtensa code density option"
+#~ msgstr "Benyt Xtensa-kodetæthedsindstillingen"
+
+#~ msgid "Do not use the Xtensa code density option"
+#~ msgstr "Benyt ikke Xtensa-kodetæthedsindstillingen"
+
+#~ msgid "Use the Xtensa MAC16 option"
+#~ msgstr "Benyt Xtensa-MAC16-indstillingen"
+
+#~ msgid "Do not use the Xtensa MAC16 option"
+#~ msgstr "Benyt ikke Xtensa-MAC16-indstillingen"
+
+#~ msgid "Use the Xtensa MUL16 option"
+#~ msgstr "Benyt Xtensa-MUL16-indstillingen"
+
+#~ msgid "Do not use the Xtensa MUL16 option"
+#~ msgstr "Benyt ikke Xtensa-MUL16-indstillingen"
+
+#~ msgid "Use the Xtensa MUL32 option"
+#~ msgstr "Benyt Xtensa-MUL32-indstillingen"
+
+#~ msgid "Do not use the Xtensa MUL32 option"
+#~ msgstr "Benyt ikke Xtensa-MUL32-indstillingen"
+
+#~ msgid "Use the Xtensa NSA option"
+#~ msgstr "Benyt Xtensa-NSA-indstillingen"
+
+#~ msgid "Do not use the Xtensa NSA option"
+#~ msgstr "Benyt ikke Xtensa-NSA-indstillingen"
+
+#~ msgid "Use the Xtensa MIN/MAX option"
+#~ msgstr "Benyt Xtensa-MIN/MAX-indstillingen"
+
+#~ msgid "Do not use the Xtensa MIN/MAX option"
+#~ msgstr "Benyt ikke Xtensa-MIN/MAX-indstillingen"
+
+#~ msgid "Use the Xtensa SEXT option"
+#~ msgstr "Benyt Xtensa-SEXT-indstillingen"
+
+#~ msgid "Do not use the Xtensa SEXT option"
+#~ msgstr "Benyt ikke Xtensa-SEXT-indstillingen"
+
+#~ msgid "Use the Xtensa boolean register option"
+#~ msgstr "Benyt Xtensa-indstillingen til booleske registre"
+
+#~ msgid "Do not use the Xtensa boolean register option"
+#~ msgstr "Benyt ikke Xtensa-indstillingen til booleske registre"
+
+#~ msgid "Use the Xtensa floating-point unit"
+#~ msgstr "Benyt kommatalsenheden til Xtensa"
+
+#~ msgid "Do not use the Xtensa floating-point unit"
+#~ msgstr "Benyt ikke kommatalsenheden til Xtensa"
+
+#~ msgid "Serialize volatile memory references with MEMW instructions"
+#~ msgstr "Serialisér volatile hukommelsesreference med MEMW-instruktioner"
+
+#~ msgid "Do not serialize volatile memory references with MEMW instructions"
+#~ msgstr "Serialisér ikke volatile hukommelsesreference med MEMW-instruktioner"
+
+#~ msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
+#~ msgstr "typen af '%E' passer ikke til destruktionsfunktionstypen '%T' (typen var '%T')"
+
+#~ msgid "`%D' is a namespace"
+#~ msgstr "'%D' er et navnerum"
+
+#~ msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
+#~ msgstr "stamobjektet '%E' fra metodekald forsynet med virkefelt er af en ikke-sammensat type '%T'"
+
+#~ msgid "destructors take no parameters"
+#~ msgstr "destruktionsfunktioner kan ikke have parametre"
+
+#~ msgid "destructor name `~%T' does not match type `%T' of expression"
+#~ msgstr "destruktionsfunktionsnavn '~T' passer ikke med typen '%T' for udtrykket"
+
+#~ msgid "%s %+#D%s"
+#~ msgstr "%s %+#D%s"
#~ msgid "%s for `%T ? %T : %T' operator"
#~ msgstr "%s for operatoren '%T ? %T : %T'"
@@ -20989,12 +22988,444 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "%s for `%s %T' operator"
#~ msgstr "%s for operatoren '%s %T'"
+#~ msgid "`%D' must be declared before use"
+#~ msgstr "'%D' skal erklæres før brug"
+
+#~ msgid " initializing argument %P of `%D' from result of `%D'"
+#~ msgstr " ved klargøring af parameteren %P til '%D' fra resultatet af '%D'"
+
+#~ msgid " initializing temporary from result of `%D'"
+#~ msgstr " ved klargøring af midlertidig variabel fra resultatet af '%D'"
+
+#~ msgid "cannot receive objects of non-POD type `%#T' through `...'"
+#~ msgstr "kan ikke modtage objekter af en ikke-POD type '%#T' gennem '...'"
+
+#~ msgid "field `%D' invalidly declared offset type"
+#~ msgstr "feltet '%D' er på ugyldig vis erklæret som en afstandstype"
+
+#~ msgid "lookup of `%D' finds `%#D'"
+#~ msgstr "opslag af '%D' finder '%#D'"
+
+#~ msgid " instead of `%D' from dependent base class"
+#~ msgstr " i stedet for '%D' fra afhængig stamklasse"
+
+#~ msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
+#~ msgstr "opslag af '%D' i virkefeltet for '%#T' ('%#D') passer ikke med opslaget i det aktuelle virkefelt ('%#D')"
+
+#~ msgid "invalid declarator"
+#~ msgstr "ugyldig erklærer"
+
+#~ msgid "`%T' is implicitly a typename"
+#~ msgstr "'%T' er underforstået et typenavn"
+
+#~ msgid "parameter `%D' invalidly declared offset type"
+#~ msgstr "parameteren '%D' er på ugyldig vis erklæret som af en offset-type"
+
+#~ msgid "`%s %T' declares a new type at namespace scope"
+#~ msgstr "'%s %T' erklærer en ny type ved navnerumsvirkefelt"
+
+#~ msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
+#~ msgstr " navne fra afhængige stamklasser er ikke synlige for umodificerede navneopslag - benyt '%s %T::%T' for at referere til den nedarvede type"
+
+#~ msgid "base class `%T' has incomplete type"
+#~ msgstr "stamklasse '%T' er af en ufuldstændig type"
+
+#~ msgid "semicolon missing after declaration of `%#T'"
+#~ msgstr "semikolon mangler efter erklæring af '%#T'"
+
+#~ msgid "template `%#D' instantiated in file without #pragma interface"
+#~ msgstr "skabelon '%#D' instantieret i fil uden #pragma interface"
+
+#~ msgid "template `%#D' defined in file without #pragma interface"
+#~ msgstr "skabelon '%#D' defineret i fil uden #pragma interface"
+
+#~ msgid "parser may be lost: is there a '{' missing somewhere?"
+#~ msgstr "fortolkeren kan være faret vild: mangler der en '{' et eller andet sted?"
+
+#~ msgid "invalid data member initialization"
+#~ msgstr "ugyldig tildeling af startværdi til datamedlem"
+
+#~ msgid "(use `=' to initialize static data members)"
+#~ msgstr "(brug '=' for at klargøre statiske datamedlemmer)"
+
+#~ msgid "too many initialization functions required"
+#~ msgstr "for mange klargøringsfunktioner påkrævet"
+
+#~ msgid "`%D' is not a namespace"
+#~ msgstr "'%D' er ikke et navnerum"
+
+#~ msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
+#~ msgstr "en using-erklæring kan ikke angive en skabelons-id; prøv 'using %T::%D'"
+
+#~ msgid "`%T' does not have a class or union named `%D'"
+#~ msgstr "'%T' har ikke en klasse eller en union ved navn '%D'"
+
+#~ msgid "`%T' is not a class or union type"
+#~ msgstr "'%T' er ikke af en klasse- eller union-type"
+
+#~ msgid "`%s' not supported by %s"
+#~ msgstr "'%s' ikke understøttet af %s"
+
+#~ msgid "(static %s for %s)"
+#~ msgstr "(statisk %s for %s)"
+
+#~ msgid "\\x%x"
+#~ msgstr "\\x%x"
+
+#~ msgid "%s: In instantiation of `%s':\n"
+#~ msgstr "%s: i instantiering af '%s':\n"
+
+#~ msgid "%s:%d: instantiated from `%s'\n"
+#~ msgstr "%s:%d: instantieret fra '%s'\n"
+
+#~ msgid "%s:%d: instantiated from here\n"
+#~ msgstr "%s:%d: instantieret herfra\n"
+
+#~ msgid "previous friend declaration of `%D'"
+#~ msgstr "tidligere friend-erklæring af '%D'"
+
+#~ msgid "cannot call destructor `%T::~%T' without object"
+#~ msgstr "kan ikke kalde destruktionsfunktion '%T::~%T' uden objekt"
+
+#~ msgid "invalid use of member `%D'"
+#~ msgstr "ugyldig brug af medlemmet '%D'"
+
+#~ msgid "no method `%T::%D'"
+#~ msgstr "ingen metode ved navn '%T::%D'"
+
+#~ msgid "object missing in use of pointer-to-member construct"
+#~ msgstr "der mangler et objekt i henvisning til medlem-konstruktion"
+
+#~ msgid "member `%D' is non-static but referenced as a static member"
+#~ msgstr "medlemmet '%D' er ikke statisk, men refereres som et statisk medlem"
+
+#~ msgid "object missing in `%E'"
+#~ msgstr "objekt mangler i '%E'"
+
+#~ msgid "initializer list being treated as compound expression"
+#~ msgstr "klargøringsliste bliver behandlet som et sammensat udtryk"
+
+#~ msgid "cannot declare references to references"
+#~ msgstr "kan ikke erklære referencer til referencer"
+
+#~ msgid "cannot declare pointers to references"
+#~ msgstr "kan ikke erklære henvisninger til referencer"
+
+#~ msgid "type name expected before `&'"
+#~ msgstr "der forventedes et typenavn før '&'"
+
+#~ msgid "semicolon missing after %s declaration"
+#~ msgstr "semikolon mangler efter %s-erklæring"
+
+#~ msgid "semicolon missing after declaration of `%T'"
+#~ msgstr "semikolon mangler efter erklæring af '%T'"
+
+#~ msgid "`::%D' undeclared (first use here)"
+#~ msgstr "'::%D' er ikke erklæret (først benyttet her)"
+
#~ msgid "real-valued template parameters when cross-compiling"
#~ msgstr "skabelonsparametre med reelle værdi ved krydsoversættelse"
#~ msgid "due to a defect in the G++ 3.2 ABI, G++ has assigned the same mangled name to two different types"
#~ msgstr "pga. en fejl i G++ 3.2-ABI'en har G++ tildelt det samme sammensatte navn til det to forskellige typer"
+#~ msgid "use of linkage spec `%D' is different from previous spec `%D'"
+#~ msgstr "brug af kædningsangivelse '%D' er forskellig fra den tidligere angivelse '%D'"
+
+#~ msgid "no base or member initializers given following ':'"
+#~ msgstr "ingen stamklasse- eller medlemsklargøringer er angivet efter ':'"
+
+#~ msgid "use of template qualifier outside template"
+#~ msgstr "brug af skabelonsmodifikation uden for skabelon"
+
+#~ msgid "ISO C++ forbids an empty condition for `%s'"
+#~ msgstr "ISO C++ forbyder en tom betingelse til '%s'"
+
+#~ msgid "definition of class `%T' in condition"
+#~ msgstr "definition af klassen '%T' i betingelse"
+
+#~ msgid "definition of enum `%T' in condition"
+#~ msgstr "definition af enum '%T' i betingelse"
+
+#~ msgid "definition of array `%#D' in condition"
+#~ msgstr "definition af tabel '%#D' i betingelse"
+
+#~ msgid "old style placement syntax, use () instead"
+#~ msgstr "forældet placeringssyntaks, brug () i stedet"
+
+#~ msgid "`%T' is not a valid expression"
+#~ msgstr "'%T' er ikke et gyldigt udtryk"
+
+#~ msgid "initialization of new expression with `='"
+#~ msgstr "tildeling af startværdi til new-udtryk med '='"
+
+#~ msgid "sigof type specifier"
+#~ msgstr "sigof-typeangivelse"
+
+#~ msgid "`sigof' applied to non-aggregate expression"
+#~ msgstr "'sigof' benyttet på et udtryk der ikke er af en sammensat type"
+
+#~ msgid "`sigof' applied to non-aggregate type"
+#~ msgstr "'sigof' benyttet på en type der ikke er sammensat"
+
+#~ msgid "storage class specifier `%s' not allowed after struct or class"
+#~ msgstr "lagringsklasseangivelsen '%s' er ikke tilladt efter struct eller class"
+
+#~ msgid "type specifier `%s' not allowed after struct or class"
+#~ msgstr "typeangivelsen '%s' er ikke tilladt efter struct eller class"
+
+#~ msgid "type qualifier `%s' not allowed after struct or class"
+#~ msgstr "typemodifikationen '%s' er ikke tilladt efter struct eller class"
+
+#~ msgid "no body nor ';' separates two class, struct or union declarations"
+#~ msgstr "der er hverken en krop eller et semikolon mellem to class, struct eller union-erklæringer"
+
+#~ msgid "no bases given following `:'"
+#~ msgstr "ingen stamklasse er angivet efter ':'"
+
+#~ msgid "multiple access specifiers"
+#~ msgstr "mere end én tilgangsangivelse"
+
+#~ msgid "multiple `virtual' specifiers"
+#~ msgstr "mere end én 'virtual'-angivelse"
+
+#~ msgid "missing ';' before right brace"
+#~ msgstr "der mangler et semikolon før en højre krøllet parantes"
+
+#~ msgid "ISO C++ forbids array dimensions with parenthesized type in new"
+#~ msgstr "ISO C++ forbyder tabeldimensioner med parantetiseret type i new"
+
+#~ msgid "`%T' is not a class or namespace"
+#~ msgstr "'%T' er ikke en klasse eller et navnerum"
+
+#~ msgid "ISO C++ forbids label declarations"
+#~ msgstr "ISO C++ forbyder etiketerklæringer"
+
+#~ msgid "label must be followed by statement"
+#~ msgstr "etiketten skal efterfølges af en sætning"
+
+#~ msgid "must have at least one catch per try block"
+#~ msgstr "skal have mindst én catch pr. try-blok"
+
+#~ msgid "ISO C++ forbids compound statements inside for initializations"
+#~ msgstr "ISO C++ forbyder sammensatte sætninger inden i 'for'-klargøringer"
+
+#~ msgid "possibly missing ')'"
+#~ msgstr "muligvis mangler en ')'"
+
+#~ msgid "type specifier omitted for parameter"
+#~ msgstr "typeangivelsen er ikke angivet for parameteren"
+
+#~ msgid "`%E' is not a type, use `typename %E' to make it one"
+#~ msgstr "'%E' er ikke en type, benyt 'typename %E' for at gøre den til en"
+
+#~ msgid "no type `%D' in `%T'"
+#~ msgstr "ingen type '%D' i '%T'"
+
+#~ msgid "type specifier omitted for parameter `%E'"
+#~ msgstr "typeangivelse udeladt for parameteren '%E'"
+
+#~ msgid "type `%T' composed from a local class is not a valid template-argument"
+#~ msgstr "typen '%T' sammensat fra lokal klasse er ikke en gyldig skabelonsparameter"
+
+#~ msgid "assignment to non-static member `%D' of enclosing class `%T'"
+#~ msgstr "tildeling til ikke-statisk medlem '%D' af omgivende klasse '%T'"
+
+#~ msgid "adjusting pointers for covariant returns"
+#~ msgstr "justerer henvisninger for kovariante returneringer"
+
+#~ msgid " overriding `%#D' (must be pointer or reference to class)"
+#~ msgstr " overskriver '%#D' (skal være en henvisning eller reference til klasse)"
+
+#~ msgid " overriding `%#D' (must use pointer or reference)"
+#~ msgstr " overskriver '%#D' (skal være en henvisning eller reference)"
+
+#~ msgid "ISO C++ does not permit named return values"
+#~ msgstr "ISO C++ tillader ikke navngivne returværdier"
+
+#~ msgid "return identifier `%D' already in place"
+#~ msgstr "returkaldenavn '%D' allerede på plads"
+
+#~ msgid "can't redefine default return value for constructors"
+#~ msgstr "kan ikke omdefinere standardreturværdi for konstruktionsfunktioner"
+
+#~ msgid "calling type `%T' like a method"
+#~ msgstr "kalder typen '%T' som en metode"
+
+#~ msgid "destructor specifier `%T::~%T()' must have matching names"
+#~ msgstr "destruktionsangivelse '%T::~%T()' skal have ens navne"
+
+#~ msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
+#~ msgstr "kaldenavnet '%s' er i modstrid med den interne navngivningsstrategi i GNU c++"
+
+#~ msgid "parse error at end of saved function text"
+#~ msgstr "tolkningsfejl ved slutningen af gemt funktionstekst"
+
+#~ msgid "%Hend of file read inside definition"
+#~ msgstr "%Hslutningen af filen læst inden i definition"
+
+#~ msgid "parse error in method specification"
+#~ msgstr "tolkningsfejl i medlemsfunktionsangivelsen"
+
+#~ msgid "function body for constructor missing"
+#~ msgstr "kroppen til konstruktionsfunktionen mangler"
+
+#~ msgid "circular dependency in default args of `%#D'"
+#~ msgstr "cirkulær afhængighed i standardparametre til '%#D'"
+
+#~ msgid "invalid type `%T' for default argument to `%T'"
+#~ msgstr "ugyldig type '%T' for standardparameter til '%T'"
+
+#~ msgid "%s before `%c'"
+#~ msgstr "%s før '%c'"
+
+#~ msgid "%s before `\\%o'"
+#~ msgstr "%s før '\\%o'"
+
+#~ msgid "%s before `%s' token"
+#~ msgstr "%s før symbolet '%s'"
+
+#~ msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
+#~ msgstr "ISO C++ forbyder konvertering fra '%#T' til '(...)'"
+
+#~ msgid "invalid application of `%s' to non-static member"
+#~ msgstr "ugyldig brug af '%s' på et ikke-statisk medlem"
+
+#~ msgid "sizeof applied to a bit-field"
+#~ msgstr "'sizeof' benyttet på et bitfelt"
+
+#~ msgid "destructor specifier `%T::~%T' must have matching names"
+#~ msgstr "destruktionsangivelse '%T::~%T' skal have ens navne"
+
+#~ msgid "parameter type of called function is incomplete"
+#~ msgstr "parametertypen for den kaldte funktion er ufuldstændig"
+
+#~ msgid "ISO C++ forbids using pointer to a member in subtraction"
+#~ msgstr "ISO C++ forbyder brug af henvisning til medlem i fratrækning"
+
+#~ msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
+#~ msgstr "reinterpret_cast fra '%T' til '%T' fjerner const (eller volatile)"
+
+#~ msgid "return-statement with no value, in function declared with a non-void return type"
+#~ msgstr "return-sætning uden en værdi i en funktion der er erklæret med en ikke-void returtype"
+
+#~ msgid "return-statement with a value, in function declared with a void return type"
+#~ msgstr "return-sætning med en værdi i en funktion der er erklæret med en void returtype"
+
+#~ msgid "comma expression used to initialize return value"
+#~ msgstr "kommaudtryk benyttet til at klargøre returværdi"
+
+#~ msgid "`%T' fails to be a typedef or built-in type"
+#~ msgstr "'%T' er hverken en typedef eller en indbygget type"
+
+#~ msgid "ISO C++ forbids defining types within %s"
+#~ msgstr "ISO C++ forbyder definering af typer inden i %s"
+
+#~ msgid "Only emit explicit template instantiations"
+#~ msgstr "Udsend kun eksplicitte skabelonsinstatieringer"
+
+#~ msgid "Recognize and/bitand/bitor/compl/not/or/xor"
+#~ msgstr "Genkend and/bitand/bitor/compl/not/or/xor"
+
+#~ msgid "Warn about inconsistent return types"
+#~ msgstr "Advar om inkonsistente returtyper"
+
+#~ msgid "Warn when a function is declared extern, then inline"
+#~ msgstr "Advar når en funktion erklæret extern erklæres inline"
+
+#~ msgid "Don't announce deprecation of compiler features"
+#~ msgstr "Annoncér ikke forældelse af oversætterfaciliteter"
+
+#~ msgid "directory name must immediately follow -I"
+#~ msgstr "et katalognavn skal følge umiddelbart efter -I"
+
+#~ msgid "ignoring pragma: %s"
+#~ msgstr "ignorerer pragma: %s"
+
+#~ msgid "Program does not use Unix-f77 dialectal features"
+#~ msgstr "Program benytter ikke Unix f77-dialektiske faciliteter"
+
+#~ msgid "Disable the appending of underscores to externals"
+#~ msgstr "Deaktivér tilføjelse af understreger bag på eksterne variable"
+
+#~ msgid "Fortran-specific form of -fbounds-check"
+#~ msgstr "Fortran-specifik form for -fbounds-check"
+
+#~ msgid "Add a directory for INCLUDE searching"
+#~ msgstr "Tilføj et katalog til INCLUDE-søgning"
+
+#~ msgid "Set the maximum line length"
+#~ msgstr "Angiv den maksimale linjelængde"
+
+#~ msgid "exception handler inside code that is being protected"
+#~ msgstr "undtagelseshåndtering inden i kode der bliver beskyttet"
+
+#~ msgid "Disable automatic array bounds checking"
+#~ msgstr "Deaktivér automatisk tabelgrænsekontrollering"
+
+#~ msgid "Set class path"
+#~ msgstr "Angiv klassesti"
+
+#~ msgid "Choose class whose main method should be used"
+#~ msgstr "Vælg klasse hvis main-metode skal bruges"
+
+#~ msgid "Add directory to class path"
+#~ msgstr "Tilføj katalog til klassesti"
+
+#~ msgid "Directory where class files should be written"
+#~ msgstr "Katalog som klassefiler skrives i"
+
+#~ msgid "`%s' cannot be statically allocated"
+#~ msgstr "'%s' kan ikke allokeres statisk"
+
+#~ msgid "multiple declarations for method `%s'"
+#~ msgstr "mere end én erklæring af metoden '%s'"
+
+#~ msgid "cannot find class (factory) method"
+#~ msgstr "kan ikke finde klasse(fabriks)metode"
+
+#~ msgid "return type for `%s' defaults to id"
+#~ msgstr "returtypen for '%s' får standardværdien id"
+
+#~ msgid "return type defaults to id"
+#~ msgstr "returtype får standardværdien id"
+
+#~ msgid "cannot find method"
+#~ msgstr "kan ikke finde metode"
+
+#~ msgid "duplicate definition of class method `%s'"
+#~ msgstr "mere end én definition af klassemetoden '%s'"
+
+#~ msgid "duplicate definition of instance method `%s'"
+#~ msgstr "mere end én definition af instansmetoden '%s'"
+
+#~ msgid "duplicate declaration of instance method `%s'"
+#~ msgstr "mere end én erklæring af instansmetoden '%s'"
+
+#~ msgid "potential selector conflict for method `%s'"
+#~ msgstr "potentiel vælgerkonflikt for metoden '%s'"
+
+#~ msgid "Specify the name of the class for constant strings"
+#~ msgstr "Angiv navnet på klassen til konstante strenge"
+
+#~ msgid "(debug) trace parsing process"
+#~ msgstr "(fejlretning) følg fortolkningsprocessen"
+
+#~ msgid "(debug) trace lexical analysis"
+#~ msgstr "(fejlretning) følg lexikalsk analyse"
+
+#~ msgid "compilation of header file requested"
+#~ msgstr "oversættelse af inkluderingsfil udbedt"
+
+#~ msgid "choose either big or little endian, not both"
+#~ msgstr "vælg enten stor- eller lilleendet, ikke begge"
+
+#~ msgid "choose either m340 or m210 not both"
+#~ msgstr "vælg enten m340 eller m210, ikke begge"
+
+#~ msgid "-c or -S required for Ada"
+#~ msgstr "-c eller -S kræves til Ada"
+
#~ msgid "-static not valid with -mcoff"
#~ msgstr "-static er ikke gyldig sammen med -mcoff"
@@ -21154,9 +23585,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "sizeof applied to a void type"
#~ msgstr "sizeof benyttet på en void-type"
-#~ msgid "sizeof applied to an incomplete type"
-#~ msgstr "sizeof benyttet på en ufuldstændig type"
-
#~ msgid "variable offset is passed partially in stack and in reg"
#~ msgstr "variabelafsæt bliver viderebragt delvis i stak og i register"
@@ -21254,12 +23682,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "the meaning of '\\x' varies with -traditional"
#~ msgstr "betydningen af '\\x' skifter med -traditional"
-#~ msgid "escape sequence out of range for character"
-#~ msgstr "undvigesekvens er uden for det gyldig interval for tegn"
-
-#~ msgid "\"%s\" cannot be used as a macro name"
-#~ msgstr "\"%s\" kan ikke bruges som et makronavn"
-
#~ msgid "directives may not be used inside a macro argument"
#~ msgstr "direktiver må ikke optræde inden i en makroparameter"
@@ -21269,15 +23691,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "%s:%d: warning: "
#~ msgstr "%s:%d: advarsel: "
-#~ msgid "%s: warning: "
-#~ msgstr "%s: advarsel: "
-
-#~ msgid "sorry, not implemented: "
-#~ msgstr "desværre, ikke implementeret: "
-
-#~ msgid "Internal compiler error in %s, at %s:%d"
-#~ msgstr "Intern oversætterfejl i %s ved %s:%d."
-
#~ msgid "Copyright (C) 2002 Free Software Foundation, Inc.\n"
#~ msgstr "Copyright © 2002 Free Software Foundation, Inc.\n"
@@ -21350,9 +23763,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "conversion from NaN to int"
#~ msgstr "konvertering fra NaN til int"
-#~ msgid "conversion from NaN to unsigned int"
-#~ msgstr "konvertering fra NaN til unsigned int"
-
#~ msgid "floating point overflow"
#~ msgstr "kommatalsoverløb"
@@ -21368,9 +23778,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "%s: function singularity"
#~ msgstr "%s: funktionssingularitet"
-#~ msgid "%s: overflow range error"
-#~ msgstr "%s: overløbsintervalfejl"
-
#~ msgid "%s: underflow range error"
#~ msgstr "%s: underløbsintervalfejl"
@@ -21428,9 +23835,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "octal character constant does not fit in a byte"
#~ msgstr "oktal tegnkonstant kan ikke være i en byte"
-#~ msgid "hex character constant does not fit in a byte"
-#~ msgstr "hexadecimal tegnkonstant kan ikke være i en byte"
-
#~ msgid "empty #if expression"
#~ msgstr "tomt #if-udtryk"
@@ -21584,9 +23988,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "Use VAX-C alignment"
#~ msgstr "Brug VAX-C-justering"
-#~ msgid "invalid %%V value"
-#~ msgstr "ugyldig %%V-værdi"
-
#~ msgid "Generate code assuming DW bit is set"
#~ msgstr "Generér kode der antager at DW-bitten er sat"
@@ -21749,12 +24150,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "Use mcount_ptr for profiling"
#~ msgstr "Benyt mcount_ptr til profilering"
-#~ msgid "Generate code which uses the FPU"
-#~ msgstr "Generér kode som bruger FPU'en"
-
-#~ msgid "Do not generate code which uses the FPU"
-#~ msgstr "Generér ikke kode som bruger FPU'en"
-
#~ msgid "the -mlong-double-64 option does not work yet"
#~ msgstr "tilvalget -mlong-double-64 virker ikke endnu"
@@ -21770,9 +24165,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "this target does not support the -mabi switch"
#~ msgstr "denne målarkitektur understøtter ikke tilvalget -mabi"
-#~ msgid "bad value (%s) for -mtune= switch"
-#~ msgstr "ugyldig værdi (%s) til tilvalget -mcpu="
-
#~ msgid "-mips%d does not support 64 bit fp registers"
#~ msgstr "-mips%d understøtter ikke 64-bit kommatalsregistre"
@@ -21851,9 +24243,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "`%D' as declarator"
#~ msgstr "'%D' som erklærer"
-#~ msgid "size of member `%D' is not constant"
-#~ msgstr "størrelsen af medlemmet '%D' er ikke konstant"
-
#~ msgid "cannot declare %s to references"
#~ msgstr "kan ikke erklære %s til referencer"
@@ -21866,9 +24255,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "-fname-mangling-version is no longer supported"
#~ msgstr "-fname-mangling-version understøttes ikke længere"
-#~ msgid "candidate%s: %+#D"
-#~ msgstr "candidate%s: %+#D"
-
#~ msgid " %#D"
#~ msgstr " %#D"
@@ -21950,9 +24336,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "invalid call to member function needing `this' in static member function scope"
#~ msgstr "ugyldigt kald af medlemsfunktion som har brug for 'this', i et statisk medlemsfunktionsvirkefelt"
-#~ msgid "unary `&'"
-#~ msgstr "unær '&'"
-
#~ msgid "invalid use of undefined type `%#T'"
#~ msgstr "ugyldig brug af en ikke-defineret type '%#T'"
@@ -21965,9 +24348,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "invalid use of member (did you forget the `&' ?)"
#~ msgstr "ugyldig brug af medlem (glemte du en '&'?)"
-#~ msgid "invalid use of template type parameter"
-#~ msgstr "ugyldig brug af skabelonstypeparameter"
-
#~ msgid "address of overloaded function with no contextual type information"
#~ msgstr "adresse af flertydig funktion uden kontekstuelle typeoplysninger"
@@ -22568,9 +24948,6 @@ msgstr "-msingle-float og -msoft-float er indbyrdes uforenelige"
#~ msgid "Objective-C text in C source file"
#~ msgstr "Objective C-tekst i C-kildekodefil"
-#~ msgid "statically allocated objects not supported"
-#~ msgstr "statisk allokerede objekter understøttes ikke"
-
#~ msgid "`asm' cannot be used in function where memory usage is checked"
#~ msgstr "'asm' kan ikke benyttes i funktioner hvor hukommelsesforbruget bliver tjekket"
diff --git a/gcc/po/de.po b/gcc/po/de.po
index be3a20555d0..31ea5cc93ca 100644
--- a/gcc/po/de.po
+++ b/gcc/po/de.po
@@ -1,1060 +1,1086 @@
# German translation of gcc messages.
-# Copyright © 2002, 2003 Free Software Foundation, Inc.
+# Copyright © 2002, 2003, 2004 Free Software Foundation, Inc.
# Karl Eichwalder <ke@suse.de>, 2002, 2003.
-# Roland Stigge <stigge@antcom.de>, 2003.
+# Roland Stigge <stigge@antcom.de>, 2003, 2004.
# This file is distributed under the same license as the gcc package.
#
msgid ""
msgstr ""
-"Project-Id-Version: gcc 3.3.2\n"
-"POT-Creation-Date: 2003-10-24 13:20+0200\n"
-"PO-Revision-Date: 2003-12-15 21:30+0100\n"
+"Project-Id-Version: gcc 3.4-b20040206\n"
+"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
+"POT-Creation-Date: 2004-02-06 01:40+0000\n"
+"PO-Revision-Date: 2004-02-15 12:14+0100\n"
"Last-Translator: Roland Stigge <stigge@antcom.de>\n"
"Language-Team: German <de@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: attribs.c:185
+#: attribs.c:178
#, c-format
msgid "`%s' attribute directive ignored"
msgstr "Attribut-Anweisung »%s« wird ignoriert"
-#: attribs.c:193
+#: attribs.c:186
#, c-format
msgid "wrong number of arguments specified for `%s' attribute"
msgstr "falsche Anzahl an Argumenten für das Attribut »%s« angegeben"
-#: attribs.c:210
+#: attribs.c:203
#, c-format
msgid "`%s' attribute does not apply to types"
msgstr "Attribut »%s« kann nicht auf Typen angewandt werden"
-#: attribs.c:247
+#: attribs.c:249
#, c-format
msgid "`%s' attribute only applies to function types"
msgstr "Attribut »%s« kann nur auf Funktionstypen angewandt werden"
-#: attribs.c:404 c-common.c:5275 c-common.c:5297 c-common.c:5319
-#: c-common.c:5350 c-common.c:5372 c-common.c:5397 c-common.c:5423
-#: c-common.c:5453 c-common.c:5491 c-common.c:5538 c-common.c:5568
-#: c-common.c:5598 c-common.c:5621 c-common.c:5878 c-common.c:5900
-#: c-common.c:5943 c-common.c:6020 c-common.c:6076 c-common.c:6103
-#: c-common.c:6186 c-common.c:6220 c-common.c:6574 config/arm/arm.c:2101
-#: config/arm/arm.c:2128 config/avr/avr.c:4774 config/h8300/h8300.c:3693
-#: config/h8300/h8300.c:3718 config/i386/i386.c:1403 config/i386/winnt.c:78
-#: config/ip2k/ip2k.c:3204
+#: attribs.c:416 c-common.c:4344 c-common.c:4363 c-common.c:4381
+#: c-common.c:4408 c-common.c:4427 c-common.c:4450 c-common.c:4473
+#: c-common.c:4499 c-common.c:4533 c-common.c:4577 c-common.c:4605
+#: c-common.c:4633 c-common.c:4652 c-common.c:4907 c-common.c:4929
+#: c-common.c:4964 c-common.c:5031 c-common.c:5077 c-common.c:5135
+#: c-common.c:5166 c-common.c:5512 c-common.c:5535 c-common.c:5574
+#: config/arm/arm.c:2278 config/arm/arm.c:2305 config/avr/avr.c:4539
+#: config/h8300/h8300.c:4281 config/h8300/h8300.c:4304 config/i386/i386.c:1599
+#: config/i386/i386.c:15299 config/i386/winnt.c:86 config/ia64/ia64.c:1053
+#: config/ip2k/ip2k.c:3151
#, c-format
msgid "`%s' attribute ignored"
msgstr "Attribut »%s« wird ignoriert"
-#: builtins.c:285
+#: builtins.c:318
msgid "offset outside bounds of constant string"
msgstr "Adressabstand ist außerhalb der Grenzen der konstanten Zeichenkette"
-#: builtins.c:765
+#: builtins.c:786
msgid "second arg to `__builtin_prefetch' must be a constant"
-msgstr "Zweites Argument für »__builtin_prefetch« muss eine Konstante sein"
+msgstr "zweites Argument für »__builtin_prefetch« muss eine Konstante sein"
-#: builtins.c:772
+#: builtins.c:793
msgid "invalid second arg to __builtin_prefetch; using zero"
-msgstr "Ungültiges zweites Argument für »__builtin_prefetch«; benutze Null"
+msgstr "ungültiges zweites Argument für »__builtin_prefetch«; es wird Null verwendet"
-#: builtins.c:779
+#: builtins.c:800
msgid "third arg to `__builtin_prefetch' must be a constant"
-msgstr "Drittes Argument für »__builtin_prefetch« muss eine Konstante sein"
+msgstr "drittes Argument für »__builtin_prefetch« muss eine Konstante sein"
-#: builtins.c:786
+#: builtins.c:807
msgid "invalid third arg to __builtin_prefetch; using zero"
-msgstr "Ungültiges drittes Argument für »__builtin_prefetch«; benutze Null"
-
-#. ??? We used to try and build up a call to the out of line function,
-#. guessing about what registers needed saving etc. This became much
-#. harder with __builtin_va_start, since we don't have a tree for a
-#. call to __builtin_saveregs to fall back on. There was exactly one
-#. port (i860) that used this code, and I'm unconvinced it could actually
-#. handle the general case. So we no longer try to handle anything
-#. weird and make the backend absorb the evil.
-#: builtins.c:2875
-msgid "__builtin_saveregs not supported by this target"
-msgstr "__builtin_saveregs wird von diesem Ziel nicht unterstützt"
+msgstr "ungültiges drittes Argument für »__builtin_prefetch«; es wird Null verwendet"
-#: builtins.c:2917
+#: builtins.c:3828
msgid "argument of `__builtin_args_info' must be constant"
msgstr "Argument von »__builtin_args_info« muss konstant sein"
-#: builtins.c:2923
+#: builtins.c:3834
msgid "argument of `__builtin_args_info' out of range"
msgstr "Argument von »__builtin_args_info« außerhalb des Wertebereichs"
-#: builtins.c:2929
+#: builtins.c:3840
msgid "missing argument in `__builtin_args_info'"
-msgstr "Fehlendes Argument in »__builtin_args_info«"
+msgstr "fehlendes Argument in »__builtin_args_info«"
-#: builtins.c:2960
+#: builtins.c:3856
msgid "`va_start' used in function with fixed args"
msgstr "»va_start« in Funktion mit fester Parameterzahl verwendet"
-#: builtins.c:2979
+#: builtins.c:3875
msgid "second parameter of `va_start' not last named argument"
-msgstr "Zweiter Parameter von »va_start« ist nicht letztgenanntes Argument"
+msgstr "zweiter Parameter von »va_start« ist nicht letztgenanntes Argument"
#. Evidently an out of date version of <stdarg.h>; can't validate
#. va_start's second argument, but can still work as intended.
-#: builtins.c:2984
+#: builtins.c:3880
msgid "`__builtin_next_arg' called without an argument"
msgstr "»__builtin_next_arg« ohne Argument gerufen"
-#: builtins.c:3070
+#: builtins.c:3969
msgid "too many arguments to function `va_start'"
-msgstr "Zu viele Argumente für »va_start«"
+msgstr "zu viele Argumente für »va_start«"
-#: builtins.c:3172
+#: builtins.c:4091
msgid "first argument to `va_arg' not of type `va_list'"
-msgstr "Erstes Argument für »va_arg« nicht vom Typ »va_list«"
+msgstr "erstes Argument für »va_arg« nicht vom Typ »va_list«"
#. Unfortunately, this is merely undefined, rather than a constraint
#. violation, so we cannot make this an error. If this call is never
#. executed, the program is still strictly conforming.
-#: builtins.c:3204
+#: builtins.c:4123
#, c-format
msgid "`%s' is promoted to `%s' when passed through `...'"
msgstr "»%s« auf »%s« gesetzt beim Durchlaufen von »...«"
-#: builtins.c:3209
+#: builtins.c:4128
#, c-format
msgid "(so you should pass `%s' not `%s' to `va_arg')"
msgstr "(Sie sollten also »%s« statt »%s« an »va_arg« übergeben)"
-#: builtins.c:3340
+#: builtins.c:4240
msgid "invalid arg to `__builtin_frame_address'"
-msgstr "Ungültiges Argument für »__builtin_frame_address«"
+msgstr "ungültiges Argument für »__builtin_frame_address«"
-#: builtins.c:3342
+#: builtins.c:4242
msgid "invalid arg to `__builtin_return_address'"
-msgstr "Ungültiges Argument für »__builtin_return_address«"
+msgstr "ungültiges Argument für »__builtin_return_address«"
-#: builtins.c:3356
+#: builtins.c:4256
msgid "unsupported arg to `__builtin_frame_address'"
-msgstr "Nicht unterstütztes Argument für »__builtin_frame_address«"
+msgstr "nicht unterstütztes Argument für »__builtin_frame_address«"
-#: builtins.c:3358
+#: builtins.c:4258
msgid "unsupported arg to `__builtin_return_address'"
-msgstr "Nicht unterstütztes Argument für »__builtin_return_address«"
+msgstr "nicht unterstütztes Argument für »__builtin_return_address«"
-#: builtins.c:3530
+#: builtins.c:4418
msgid "second arg to `__builtin_expect' must be a constant"
-msgstr "Zweites Argument für »__builtin_expect« muss eine Konstante sein"
+msgstr "zweites Argument für »__builtin_expect« muss eine Konstante sein"
-#: builtins.c:4028
+#: builtins.c:5359
msgid "__builtin_longjmp second argument must be 1"
-msgstr "Zweites Argument für __builtin_longjmp muss 1 sein"
+msgstr "zweites Argument für __builtin_longjmp muss 1 sein"
-#. just do library call, if unknown builtin
-#: builtins.c:4092 c-common.c:4459
+#: builtins.c:5454
#, c-format
msgid "built-in function `%s' not currently supported"
-msgstr "Eingebaute Funktion »%s« gegenwärtig nicht unterstützt"
+msgstr "eingebaute Funktion »%s« gegenwärtig nicht unterstützt"
-#: builtins.c:4165
+#: builtins.c:5594
msgid "target format does not support infinity"
msgstr "Zielformat unterstützt nicht »unendlich«"
-#: c-common.c:1168
-#, c-format
-msgid "`%s' is not defined outside of function scope"
-msgstr "»%s« ist außerhalb des Funktionsgültigkeitsbereiches undefiniert"
+#: c-common.c:934
+msgid "%Hsuggest explicit braces to avoid ambiguous `else'"
+msgstr "%Hes wird empfohlen, explizite geschweifte Klammern zu setzen, um mehrdeutiges »else« zu vermeiden"
+
+#: c-common.c:1158
+msgid "%J'%D' is not defined outside of function scope"
+msgstr "%J»%D« ist außerhalb des Funktionsgültigkeitsbereiches nicht definiert"
-#: c-common.c:1189
+#: c-common.c:1178
#, c-format
msgid "string length `%d' is greater than the length `%d' ISO C%d compilers are required to support"
msgstr "Zeichenkettenlänge »%d« ist größer als die Länge »%d«, die von ISO-C%d-Compilern unterstützt werden muss"
-#: c-common.c:1247
-msgid "concatenation of string literals with __FUNCTION__ is deprecated"
-msgstr "Verkettung von Zeichenkettenliteralen mit __FUNCTION__ ist veraltet"
-
-#: c-common.c:1343
+#: c-common.c:1218
msgid "overflow in constant expression"
msgstr "Ãœberlauf in Konstanten-Ausdruck"
-#: c-common.c:1364
+#: c-common.c:1238
msgid "integer overflow in expression"
msgstr "Ganzzahlüberlauf in Ausdruck"
-#: c-common.c:1373
+#: c-common.c:1247
msgid "floating point overflow in expression"
-msgstr "Fließkommaüberlauf in Ausdruck"
+msgstr "Gleitkommaüberlauf in Ausdruck"
-#: c-common.c:1379
+#: c-common.c:1253
msgid "vector overflow in expression"
msgstr "Vektorüberlauf in Ausdruck"
#. This detects cases like converting -129 or 256 to unsigned char.
-#: c-common.c:1402
+#: c-common.c:1275
msgid "large integer implicitly truncated to unsigned type"
-msgstr "Große Ganzzahl implizit auf vorzeichenlosen Typen abgeschnitten"
+msgstr "große Ganzzahl implizit auf vorzeichenlosen Typen abgeschnitten"
-#: c-common.c:1404
+#: c-common.c:1277
msgid "negative integer implicitly converted to unsigned type"
-msgstr "Negative Ganzzahl implizit in vorzeichenlosen Typen konvertiert"
+msgstr "negative Ganzzahl implizit in vorzeichenlosen Typen konvertiert"
-#: c-common.c:1452
+#: c-common.c:1323
msgid "overflow in implicit constant conversion"
msgstr "Ãœberlauf in impliziter Konstantenkonvertierung"
-#: c-common.c:1600
+#: c-common.c:1459
#, c-format
msgid "operation on `%s' may be undefined"
msgstr "Operation auf »%s« könnte undefiniert sein"
-#: c-common.c:1891
+#: c-common.c:1743
msgid "expression statement has incomplete type"
msgstr "Ausdrucksanweisung hat unvollständigen Typ"
-#: c-common.c:1924
+#: c-common.c:1775
msgid "case label does not reduce to an integer constant"
msgstr "case-Marke reduziert nicht auf Ganzzahlkonstante"
-#: c-common.c:2228
+#: c-common.c:2105
msgid "invalid truth-value expression"
-msgstr "Ungültiger Wahrheitswert-Ausdruck"
+msgstr "ungültiger Wahrheitswert-Ausdruck"
-#: c-common.c:2279
+#: c-common.c:2156
#, c-format
msgid "invalid operands to binary %s"
-msgstr "Ungültige Operanden für binäres %s"
+msgstr "ungültige Operanden für binäres %s"
-#: c-common.c:2513
+#: c-common.c:2390
msgid "comparison is always false due to limited range of data type"
msgstr "Vergleich ist durch beschränkten Wertebereich des Datentyps stets »unwahr«"
-#: c-common.c:2515
+#: c-common.c:2392
msgid "comparison is always true due to limited range of data type"
msgstr "Vergleich ist durch beschränkten Wertebereich des Datentyps stets »wahr«"
-#: c-common.c:2585
+#: c-common.c:2462
msgid "comparison of unsigned expression >= 0 is always true"
msgstr "Vergleich eines vorzeichenlosen Ausdrucks >= 0 ist stets »wahr«"
-#: c-common.c:2594
+#: c-common.c:2471
msgid "comparison of unsigned expression < 0 is always false"
msgstr "Vergleich eines vorzeichenlosen Ausdrucks < 0 ist stets »unwahr«"
-#: c-common.c:2641
+#: c-common.c:2516
msgid "pointer of type `void *' used in arithmetic"
msgstr "Zeiger auf Typen »void *« in Arithmetik verwendet"
-#: c-common.c:2647
+#: c-common.c:2522
msgid "pointer to a function used in arithmetic"
msgstr "Zeiger auf Funktion in Arithmetik verwendet"
-#: c-common.c:2653
+#: c-common.c:2528
msgid "pointer to member function used in arithmetic"
-msgstr "Zeiger auf member-Funktion in Arithmetik verwendet"
+msgstr "Zeiger auf Elementfunktion in Arithmetik verwendet"
-#: c-common.c:2659
+#: c-common.c:2534
msgid "pointer to a member used in arithmetic"
-msgstr "Zeiger auf member in Arithmetik verwendet"
+msgstr "Zeiger auf Element in Arithmetik verwendet"
-#: c-common.c:2746 f/com.c:14762
+#: c-common.c:2623 f/com.c:14734
msgid "struct type value used where scalar is required"
msgstr "Wert eines struct-Typs anstelle des geforderten Skalars verwendet"
-#: c-common.c:2750 f/com.c:14766
+#: c-common.c:2627 f/com.c:14738
msgid "union type value used where scalar is required"
msgstr "Wert eines union-Typs anstelle des geforderten Skalars verwendet"
-#: c-common.c:2754 f/com.c:14770
+#: c-common.c:2631 f/com.c:14742
msgid "array type value used where scalar is required"
msgstr "Wert eines array-Typs anstelle des geforderten Skalars verwendet"
-#: c-common.c:2874 f/com.c:14903
+#. Common Ada/Pascal programmer's mistake. We always warn
+#. about this since it is so bad.
+#: c-common.c:2668
+msgid "the address of `%D', will always evaluate as `true'"
+msgstr "die Adresse von »%D« wird immer zu »true« auswerten"
+
+#: c-common.c:2762 f/com.c:14874
msgid "suggest parentheses around assignment used as truth value"
-msgstr "Schlage Klammern um Zuweisung, die als Wahrheitswert verwendet wird, vor"
+msgstr "um Zuweisung, die als Wahrheitswert verwendet wird, werden Klammern vorgeschlagen"
-#: c-common.c:2918 c-common.c:2950
+#: c-common.c:2808 c-common.c:2848
msgid "invalid use of `restrict'"
-msgstr "Ungültige Verwendung von »restrict«"
+msgstr "ungültige Verwendung von »restrict«"
-#: c-common.c:3064
+#: c-common.c:2958
msgid "invalid application of `sizeof' to a function type"
-msgstr "Ungültige Anwendung von »sizeof« auf einen Funktionstypen"
+msgstr "ungültige Anwendung von »sizeof« auf einen Funktionstypen"
-#: c-common.c:3074
+#: c-common.c:2968
#, c-format
msgid "invalid application of `%s' to a void type"
-msgstr "Ungültige Anwendung von »%s« auf einen void-Typen"
+msgstr "ungültige Anwendung von »%s« auf einen void-Typen"
-#: c-common.c:3080
+#: c-common.c:2974
#, c-format
msgid "invalid application of `%s' to an incomplete type"
-msgstr "Ungültige Anwendung von »%s« auf einen unvollständigen Typen"
+msgstr "ungültige Anwendung von »%s« auf einen unvollständigen Typen"
-#: c-common.c:3121
+#: c-common.c:3014
msgid "`__alignof' applied to a bit-field"
msgstr "»__alignof« auf Bitfeld angewandt"
-#: c-common.c:3618
+#: c-common.c:3506
#, c-format
msgid "cannot disable built-in function `%s'"
-msgstr "Kann eingebaute Funktion »%s« nicht abschalten"
+msgstr "kann eingebaute Funktion »%s« nicht abschalten"
-#: c-common.c:3787 c-typeck.c:1748
+#: c-common.c:3667 c-typeck.c:1941
#, c-format
msgid "too few arguments to function `%s'"
-msgstr "Zu wenig Argumente für Funktion »%s«"
+msgstr "zu wenig Argumente für Funktion »%s«"
-#: c-common.c:3793 c-typeck.c:1601
+#: c-common.c:3673 c-typeck.c:1802
#, c-format
msgid "too many arguments to function `%s'"
-msgstr "Zu viele Argumente für Funktion »%s«"
+msgstr "zu viele Argumente für Funktion »%s«"
-#: c-common.c:3812
+#: c-common.c:3692
#, c-format
msgid "non-floating-point argument to function `%s'"
-msgstr "Nicht-Fließkomma-Argument für Funktion »%s«"
+msgstr "nicht-Gleitkomma-Argument für Funktion »%s«"
-#: c-common.c:4081
+#: c-common.c:3919
msgid "pointers are not permitted as case values"
msgstr "Zeiger sind nicht als case-Werte zugelassen"
-#: c-common.c:4087
-msgid "ISO C++ forbids range expressions in switch statements"
-msgstr "ISO-C++ verbietet Wertebereichsausdrücke in switch-Anweisungen"
-
-#: c-common.c:4089
-msgid "ISO C forbids range expressions in switch statements"
-msgstr "ISO-C verbietet Wertebereichsausdrücke in switch-Anweisungen"
+#: c-common.c:3923
+msgid "range expressions in switch statements are non-standard"
+msgstr "Wertebereichsausdrücke in switch-Anweisungen sind nicht standardkonform"
-#: c-common.c:4119
+#: c-common.c:3952
msgid "empty range specified"
-msgstr "Leerer Wertebereich angegeben"
+msgstr "leerer Wertebereich angegeben"
-#: c-common.c:4170
+#: c-common.c:4003
msgid "duplicate (or overlapping) case value"
-msgstr "Doppelte (oder sich überschneidende) case-Werte"
+msgstr "doppelte (oder sich überschneidende) case-Werte"
-#: c-common.c:4172
-msgid "this is the first entry overlapping that value"
-msgstr "Dies ist der erste Eintrag, der diesen Wert überschneidet"
+#: c-common.c:4004
+msgid "%Jthis is the first entry overlapping that value"
+msgstr "%Jdies ist der erste Eintrag, der diesen Wert überschneidet"
-#: c-common.c:4176
+#: c-common.c:4008
msgid "duplicate case value"
-msgstr "Doppelter case-Wert"
+msgstr "doppelter case-Wert"
-#: c-common.c:4177
-msgid "previously used here"
-msgstr "bereits hier verwendet"
+#: c-common.c:4009
+msgid "%Jpreviously used here"
+msgstr "%Jbereits hier verwendet"
-#: c-common.c:4181
+#: c-common.c:4013
msgid "multiple default labels in one switch"
-msgstr "Mehrere Standardmarken in einem »switch«"
+msgstr "mehrere Standardmarken in einem »switch«"
-#: c-common.c:4182
-msgid "this is the first default label"
-msgstr "Dies ist die erste Standardmarke"
+#: c-common.c:4014
+msgid "%Jthis is the first default label"
+msgstr "%Jdies ist die erste Standardmarke"
-#: c-common.c:4210
-msgid "ISO C++ forbids taking the address of a label"
-msgstr "ISO-C++ verbietet die Adresse einer Marke"
+#: c-common.c:4039
+msgid "taking the address of a label is non-standard"
+msgstr "das Ermitteln der Adresse einer Marke ist nicht standardkonform"
-#: c-common.c:4212
-msgid "ISO C forbids taking the address of a label"
-msgstr "ISO-C verbietet die Adresse einer Marke"
+#: c-common.c:4085
+msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr "%Hder Rückgabewert von »%D« mit dem Attribut warn_unused_result wird ignoriert"
-#: c-common.c:5235
+#: c-common.c:4090
+msgid "%Hignoring return value of function declared with attribute warn_unused_result"
+msgstr "%Hder Rückgabewert der Funktion, die mit dem Attribut warn_unused_result deklariert wurde, wird ignoriert"
+
+#. SW_PARAM
+#: c-common.c:4297
+#, c-format
+msgid "declaration of \"%s\" shadows a parameter"
+msgstr "Deklaration von »%s« überdeckt einen Parameter"
+
+#. SW_LOCAL
+#: c-common.c:4298
#, c-format
-msgid "declaration of `%s' shadows %s"
-msgstr "Deklaration von »%s« verdeckt %s"
+msgid "declaration of \"%s\" shadows a previous local"
+msgstr "Deklaration von »%s« überdeckt einen vorhergehenden lokalen Bezeichner"
-#: c-common.c:5654
+#. SW_GLOBAL
+#: c-common.c:4299
+#, c-format
+msgid "declaration of \"%s\" shadows a global declaration"
+msgstr "Deklaration von »%s« überdeckt eine globale Deklaration"
+
+#: c-common.c:4303
+msgid "%Jshadowed declaration is here"
+msgstr "%Jverdeckte Deklaration ist hier"
+
+#: c-common.c:4686
#, c-format
msgid "unknown machine mode `%s'"
-msgstr "Unbekannter Maschinenzustand »%s«"
+msgstr "unbekannter Maschinenzustand »%s«"
-#: c-common.c:5657
+#: c-common.c:4689
#, c-format
msgid "no data type for mode `%s'"
-msgstr "Kein Datentyp für Zustand »%s«"
+msgstr "kein Datentyp für Zustand »%s«"
+
+#: c-common.c:4693
+#, c-format
+msgid "invalid pointer mode `%s'"
+msgstr "ungültiger Zeigermodus »%s«"
-#: c-common.c:5666 c-common.c:6316
+#: c-common.c:4700 c-common.c:5263
#, c-format
msgid "unable to emulate '%s'"
msgstr "»%s« kann nicht emuliert werden"
-#: c-common.c:5702
-msgid "section attribute cannot be specified for local variables"
-msgstr "Abschnitts-Attribut kann nicht für lokale Variablen angegeben werden"
+#: c-common.c:4744
+msgid "%Jsection attribute cannot be specified for local variables"
+msgstr "%JAbschnitts-Attribut kann nicht für lokale Variablen angegeben werden"
-#: c-common.c:5713
-#, c-format
-msgid "section of `%s' conflicts with previous declaration"
-msgstr "Abschnitt von »%s« in Konflikt mit vorheriger Deklaration"
+#: c-common.c:4755
+msgid "%Jsection of '%D' conflicts with previous declaration"
+msgstr "%JAbschnitt von »%D« in Konflikt mit vorheriger Deklaration"
-#: c-common.c:5722
-#, c-format
-msgid "section attribute not allowed for `%s'"
-msgstr "Abschnitts-Attribute nicht erlaubt für »%s«"
+#: c-common.c:4764
+msgid "%Jsection attribute not allowed for '%D'"
+msgstr "%JAbschnitts-Attribute nicht erlaubt für »%D«"
-#: c-common.c:5729
-msgid "section attributes are not supported for this target"
-msgstr "Abschnitts-Attribute werden für dieses Ziel nicht unterstützt"
+#: c-common.c:4770
+msgid "%Jsection attributes are not supported for this target"
+msgstr "%JAbschnitts-Attribute werden für dieses Ziel nicht unterstützt"
-#: c-common.c:5771
+#: c-common.c:4808
msgid "requested alignment is not a constant"
-msgstr "Verlangte Ausrichtung ist keine Konstante"
+msgstr "verlangte Ausrichtung ist keine Konstante"
-#: c-common.c:5776
+#: c-common.c:4813
msgid "requested alignment is not a power of 2"
-msgstr "Verlangte Ausrichtung ist keine Zweierpotenz"
+msgstr "verlangte Ausrichtung ist keine Zweierpotenz"
-#: c-common.c:5781
+#: c-common.c:4818
msgid "requested alignment is too large"
-msgstr "Verlangte Ausrichtung ist zu groß"
+msgstr "verlangte Ausrichtung ist zu groß"
-#: c-common.c:5808
-#, c-format
-msgid "alignment may not be specified for `%s'"
-msgstr "Für »%s« darf keine Ausrichtung angegeben werden"
+#: c-common.c:4844
+msgid "%Jalignment may not be specified for '%D'"
+msgstr "%Jfür »%D« darf keine Ausrichtung angegeben werden"
-#: c-common.c:5853
-#, c-format
-msgid "`%s' defined both normally and as an alias"
-msgstr "»%s« sowohl normal als auch als Alias definiert"
+#: c-common.c:4882
+msgid "%J'%D' defined both normally and as an alias"
+msgstr "%J»%D« sowohl normal als auch als Alias definiert"
-#: c-common.c:5863
+#: c-common.c:4892
msgid "alias arg not a string"
msgstr "Alias-Argument ist keine Zeichenkette"
-#: c-common.c:5910
+#: c-common.c:4935
msgid "visibility arg not a string"
msgstr "Sichtbarkeitsargument ist keine Zeichenkette"
-#: c-common.c:5919
+#: c-common.c:4948
msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\""
msgstr "Sichtbarkeitsargument muss »default«, »hidden«, »protected« oder »internal« sein"
-#: c-common.c:5953
+#: c-common.c:4974
msgid "tls_model arg not a string"
msgstr "Argument für tls_model ist keine Zeichenkette"
-#: c-common.c:5962
+#: c-common.c:4983
msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\""
msgstr "Argument für tls_model muss »local-exec«, »initial-exec«, »local-dynamic« oder »global-dynamic« sein"
-#: c-common.c:5987 c-common.c:6043
-#, c-format
-msgid "`%s' attribute applies only to functions"
-msgstr "Attribut »%s« kann nur auf Funktionen angewandt werden"
+#: c-common.c:5005 c-common.c:5051
+msgid "%J'%E' attribute applies only to functions"
+msgstr "%JAttribut »%E« kann nur auf Funktionen angewandt werden"
-#: c-common.c:5994 c-common.c:6050
-#, c-format
-msgid "can't set `%s' attribute after definition"
-msgstr "Kann Attribut »%s« nicht nach der Definition setzen"
+#: c-common.c:5010 c-common.c:5056
+msgid "%Jcan't set '%E' attribute after definition"
+msgstr "%Jkann Attribut »%E« nicht nach der Definition setzen"
-#: c-common.c:6114
-msgid "cleanup arg not an identifier"
-msgstr "Argument für cleanup ist kein Bezeichner"
-
-#: c-common.c:6121
-msgid "cleanup arg not a function"
-msgstr "Argument für cleanup ist keine Funktion"
-
-#: c-common.c:6183
+#: c-common.c:5132
#, c-format
msgid "`%s' attribute ignored for `%s'"
msgstr "Attribut »%s« ignoriert für »%s«"
-#: c-common.c:6248
+#: c-common.c:5195
#, c-format
msgid "invalid vector type for attribute `%s'"
-msgstr "Ungültiger Vektortyp für Attribut »%s«"
+msgstr "ungültiger Vektortyp für Attribut »%s«"
-#: c-common.c:6272 c-common.c:6304
+#: c-common.c:5219 c-common.c:5251
msgid "no vector mode with the size and type specified could be found"
msgstr "Vektorzustand mit der angegebenen Größe und dem angegebenen Typ konnte nicht gefunden werden"
-#: c-common.c:6403
+#: c-common.c:5353
msgid "nonnull attribute without arguments on a non-prototype"
msgstr "Nicht-Null-Attribut ohne Argumente für einen Nicht-Prototyp"
-#: c-common.c:6418
+#: c-common.c:5368
#, c-format
msgid "nonnull argument has invalid operand number (arg %lu)"
msgstr "Nicht-Null-Argument hat ungültige Operandenzahl (Argument %lu)"
-#: c-common.c:6437
+#: c-common.c:5387
#, c-format
msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)"
msgstr "Nicht-Null-Argument mit Operandenzahl außerhalb des Wertebereiches (Argument %lu, Operand %lu)"
-#: c-common.c:6445
+#: c-common.c:5395
#, c-format
msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)"
msgstr "Nicht-Null-Argument referenziert Nicht-Zeiger-Operanden (Argument %lu, Operand %lu)"
-#: c-common.c:6531
+#: c-common.c:5475
#, c-format
msgid "null argument where non-null required (arg %lu)"
msgstr "Null-Argument, wo Nicht-Null erwartet (Argument %lu)"
-#: c-convert.c:80 c-typeck.c:988 c-typeck.c:4059 cp/typeck.c:1615
-#: cp/typeck.c:5939
-msgid "void value not ignored as it ought to be"
-msgstr "void-Wert nicht ignoriert wie es sein sollte"
-
-#: c-convert.c:112 java/typeck.c:150
-msgid "conversion to non-scalar type requested"
-msgstr "Konvertierung zu Nicht-Skalar-Typ verlangt"
-
-#: c-decl.c:340
-#, c-format
-msgid "array `%s' assumed to have one element"
-msgstr "Feld »%s« als einelementig betrachtet"
-
-#: c-decl.c:526
-#, c-format
-msgid "`struct %s' incomplete in scope ending here"
-msgstr "»struct %s« im Gültigkeitsbereich, der hier endet, unvollständig"
+#: c-common.c:5546
+msgid "cleanup arg not an identifier"
+msgstr "Argument für cleanup ist kein Bezeichner"
-#: c-decl.c:529
-#, c-format
-msgid "`union %s' incomplete in scope ending here"
-msgstr "»union %s« im Gültigkeitsbereich, der hier endet, unvollständig"
+#: c-common.c:5553
+msgid "cleanup arg not a function"
+msgstr "Argument für cleanup ist keine Funktion"
-#: c-decl.c:532
+#: c-common.c:5914
#, c-format
-msgid "`enum %s' incomplete in scope ending here"
-msgstr "»enum %s« im Gültigkeitsbereich, der hier endet, unvollständig"
+msgid "%s at end of input"
+msgstr "%s am Ende der Eingabe"
-#: c-decl.c:646 c-decl.c:771 java/decl.c:1403
+#: c-common.c:5920
#, c-format
-msgid "label `%s' used but not defined"
-msgstr "Marke »%s« verwendet, aber nicht definiert"
+msgid "%s before %s'%c'"
+msgstr "%s vor %s'%c'"
-#: c-decl.c:652 c-decl.c:778 java/decl.c:1409
+#: c-common.c:5922
#, c-format
-msgid "label `%s' defined but not used"
-msgstr "Marke »%s« definiert aber nicht verwendet"
+msgid "%s before %s'\\x%x'"
+msgstr "%s vor %s'\\x%x'"
-#: c-decl.c:893 cp/decl.c:3335
+#: c-common.c:5926
#, c-format
-msgid "function `%s' redeclared as inline"
-msgstr "Funktion »%s« als inline redeklariert"
+msgid "%s before string constant"
+msgstr "%s vor Zeichenkettenkonstante"
-#: c-decl.c:895 cp/decl.c:3337
+#: c-common.c:5928
#, c-format
-msgid "previous declaration of function `%s' with attribute noinline"
-msgstr "Vorherige Deklaration der Funktion »%s« mit Attribut noinline"
+msgid "%s before numeric constant"
+msgstr "%s vor numerischer Konstante"
-#: c-decl.c:902 cp/decl.c:3344
+#: c-common.c:5930
#, c-format
-msgid "function `%s' redeclared with attribute noinline"
-msgstr "Funktion »%s« redeklariert mit Attribut noinline"
+msgid "%s before \"%s\""
+msgstr "%s vor \"%s\""
-#: c-decl.c:904 cp/decl.c:3346
+#: c-common.c:5932
#, c-format
-msgid "previous declaration of function `%s' was inline"
-msgstr "Vorherige Deklaration der Funktion »%s« war inline"
+msgid "%s before '%s' token"
+msgstr "%s vor »%s«"
-#: c-decl.c:933 c-decl.c:979
+#. Use `%s' to print the string in case there are any escape
+#. characters in the message.
+#: c-common.c:5934 c-typeck.c:2578 c-typeck.c:3970 c-typeck.c:3985
+#: c-typeck.c:4000 final.c:2776 final.c:2778 gcc.c:4574 rtl-error.c:109
+#: toplev.c:1340 config/cris/cris.c:545 cp/parser.c:1848 cp/typeck.c:4111
+#: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472
#, c-format
-msgid "shadowing built-in function `%s'"
-msgstr "Eingebaute Funktion »%s« überdeckt"
+msgid "%s"
+msgstr "%s"
-#: c-decl.c:935
-#, c-format
-msgid "shadowing library function `%s'"
-msgstr "Bibliotheksfunktion »%s« überdeckt"
+#: c-convert.c:82 c-typeck.c:1193 c-typeck.c:3410 cp/typeck.c:1337
+#: cp/typeck.c:5648 treelang/tree-convert.c:79
+msgid "void value not ignored as it ought to be"
+msgstr "void-Wert nicht ignoriert wie es sein sollte"
-#: c-decl.c:941
-#, c-format
-msgid "library function `%s' declared as non-function"
-msgstr "Bibliotheksfunktion »%s« als Nicht-Funktion deklariert"
+#: c-convert.c:114 java/typeck.c:148 treelang/tree-convert.c:105
+msgid "conversion to non-scalar type requested"
+msgstr "Konvertierung zu Nicht-Skalar-Typ verlangt"
-#: c-decl.c:945 c-decl.c:948
-#, c-format
-msgid "built-in function `%s' declared as non-function"
-msgstr "Eingebaute Funktion »%s« als Nicht-Funktion deklariert"
+#: c-decl.c:371
+msgid "%Jarray '%D' assumed to have one element"
+msgstr "%JFeld »%D« als einelementig betrachtet"
-#: c-decl.c:952 objc/objc-act.c:2384 objc/objc-act.c:6154
-#, c-format
-msgid "`%s' redeclared as different kind of symbol"
-msgstr "»%s« redeklariert als andere Symbolart"
+#: c-decl.c:580
+msgid "%Jlabel `%D' used but not defined"
+msgstr "%JMarke »%D« verwendet, aber nicht definiert"
-#: c-decl.c:953 c-decl.c:1144 c-decl.c:1158 c-decl.c:1165 c-decl.c:1310
-#: objc/objc-act.c:2386 objc/objc-act.c:6156 objc/objc-act.c:6211
-#, c-format
-msgid "previous declaration of `%s'"
-msgstr "Vorherige Deklaration von »%s«"
+#: c-decl.c:586
+msgid "%Jlabel `%D' defined but not used"
+msgstr "%JMarke »%D« definiert aber nicht verwendet"
-#. If types don't match for a built-in, throw away the built-in.
-#: c-decl.c:1048
-#, c-format
-msgid "conflicting types for built-in function `%s'"
-msgstr "In Konflikt stehende Typen für eingebaute Funktion »%s«"
+#: c-decl.c:588
+msgid "%Jlabel `%D' declared but not defined"
+msgstr "%JMarke »%D« deklariert, aber nicht definiert"
-#: c-decl.c:1091 c-decl.c:1110
-#, c-format
-msgid "conflicting types for `%s'"
-msgstr "In Konflikt stehende Typen für »%s«"
+#: c-decl.c:613
+msgid "%Junused variable `%D'"
+msgstr "%JVariable »%D« wird nicht verwendet"
-#: c-decl.c:1133
+#: c-decl.c:821
msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
-msgstr "Eine Parameterliste mit Auslassung passt nicht zu einer leeren Parameternamenslistendeklaration"
+msgstr "eine Parameterliste mit Auslassung passt nicht zu einer leeren Parameternamenslistendeklaration"
-#: c-decl.c:1139
+#: c-decl.c:828
msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
-msgstr "Ein Argumenttyp mit Standard-promotion passt nicht zu leerer Parameternamenslistendeklaration"
-
-#: c-decl.c:1157
-#, c-format
-msgid "thread-local declaration of `%s' follows non thread-local declaration"
-msgstr "Thread-lokale Deklaration von »%s« folgt nicht-Thread-lokaler Deklaration"
+msgstr "ein Argumenttyp mit Standard-Promotion passt nicht zu leerer Parameternamenslistendeklaration"
+
+#: c-decl.c:864
+msgid "%Jprototype for '%D' declares more arguments than previous old-style definition"
+msgstr "%JPrototyp für »%D« deklariert mehr Argumente als vorherige Definition im alten Stil"
+
+#: c-decl.c:870
+msgid "%Jprototype for '%D' declares fewer arguments than previous old-style definition"
+msgstr "%JPrototyp für »%D« deklariert weniger Argumente als vorherige Definition im alten Stil"
+
+#: c-decl.c:879
+msgid "%Jprototype for '%D' declares arg %d with incompatible type"
+msgstr "%JPrototyp für »%D« deklariert Argument %d mit inkompatiblem Typen"
+
+#. If we get here, no errors were found, but do issue a warning
+#. for this poor-style construct.
+#: c-decl.c:891
+msgid "%Jprototype for '%D' follows non-prototype definition"
+msgstr "%JPrototyp für »%D« folgt einer Nicht-Prototyp-Definition"
+
+#: c-decl.c:906
+msgid "%Jprevious definition of '%D' was here"
+msgstr "%Jvorherige Definition von »%D« war hier"
+
+#: c-decl.c:908
+msgid "%Jprevious implicit declaration of '%D' was here"
+msgstr "%Jvorherige implizite Deklaration von »%D« war hier"
+
+#: c-decl.c:910
+msgid "%Jprevious declaration of '%D' was here"
+msgstr "%Jvorherige Deklaration von »%D« war hier"
+
+#: c-decl.c:944
+msgid "%J'%D' redeclared as different kind of symbol"
+msgstr "%J»%D« redeklariert als andere Symbolart"
-#: c-decl.c:1164
-#, c-format
-msgid "non thread-local declaration of `%s' follows thread-local declaration"
-msgstr "Nicht-Thread-lokale Deklaration von »%s« folgt Thread-lokaler Deklaration"
-
-#: c-decl.c:1175 c-decl.c:1198
-#, c-format
-msgid "redefinition of `%s'"
-msgstr "Redefinition von »%s«"
+#: c-decl.c:949
+msgid "%Jbuilt-in function '%D' declared as non-function"
+msgstr "%Jeingebaute Funktion »%D« als Nicht-Funktion deklariert"
-#: c-decl.c:1178
-#, c-format
-msgid "redeclaration of `%s'"
-msgstr "Redeklaration von »%s«"
+#: c-decl.c:952 c-decl.c:1042
+msgid "%Jshadowing built-in function '%D'"
+msgstr "%Jeingebaute Funktion »%D« überdeckt"
-#: c-decl.c:1181
-#, c-format
-msgid "conflicting declarations of `%s'"
-msgstr "In Konflikt stehende Deklarationen von »%s«"
+#. If types don't match for a built-in, throw away the
+#. built-in. No point in calling locate_old_decl here, it
+#. won't print anything.
+#: c-decl.c:972
+msgid "%Jconflicting types for built-in function '%D'"
+msgstr "%Jin Konflikt stehende Typen für eingebaute Funktion »%D«"
-#: c-decl.c:1225
-#, c-format
-msgid "prototype for `%s' follows"
-msgstr "Prototyp für »%s« folgt"
+#: c-decl.c:996 c-decl.c:1004
+msgid "%Jconflicting types for '%D'"
+msgstr "%Jin Konflikt stehende Typen für »%D«"
-#: c-decl.c:1226 c-decl.c:1234 c-decl.c:1245
-msgid "non-prototype definition here"
-msgstr "Nicht-Prototyp-Definition hier"
+#. allow OLDDECL to continue in use
+#: c-decl.c:1019
+msgid "%Jredefinition of typedef '%D'"
+msgstr "%JRedefinition des typedef »%D«"
-#: c-decl.c:1233
-#, c-format
-msgid "prototype for `%s' follows and number of arguments doesn't match"
-msgstr "Prototyp für »%s« folgt und Anzahl der Argumente passt nicht"
-
-#: c-decl.c:1243
-#, c-format
-msgid "prototype for `%s' follows and argument %d doesn't match"
-msgstr "Prototyp für »%s« folgt und Argument %d passt nicht"
-
-#: c-decl.c:1261
-#, c-format
-msgid "`%s' declared inline after being called"
-msgstr "»%s« als inline deklariert nachdem es aufgerufen wurde"
+#: c-decl.c:1055 c-decl.c:1119
+msgid "%Jredefinition of '%D'"
+msgstr "%JRedefinition von »%D«"
-#: c-decl.c:1267
-#, c-format
-msgid "`%s' declared inline after its definition"
-msgstr "»%s« nach der Definition als inline deklariert"
+#: c-decl.c:1086 c-decl.c:1136
+msgid "%Jstatic declaration of '%D' follows non-static declaration"
+msgstr "%Jstatische Deklaration von »%D« folgt Nicht-statischer Deklaration"
-#: c-decl.c:1274
-#, c-format
-msgid "static declaration for `%s' follows non-static"
-msgstr "Statische Deklaration für »%s« folgt Nicht-static"
+#: c-decl.c:1094 c-decl.c:1133
+msgid "%Jnon-static declaration of '%D' follows static declaration"
+msgstr "%JNicht-statische-Deklaration von »%D« folgt statischer Deklaration"
-#: c-decl.c:1282
-#, c-format
-msgid "non-static declaration for `%s' follows static"
-msgstr "Nicht-static-Deklaration für »%s« folgt static"
+#: c-decl.c:1106
+msgid "%Jthread-local declaration of '%D' follows non-thread-local declaration"
+msgstr "%JThread-lokale Deklaration von »%D« folgt nicht-Thread-lokaler Deklaration"
-#: c-decl.c:1289
-#, c-format
-msgid "const declaration for `%s' follows non-const"
-msgstr "const-Deklaration für »%s« folgt Nicht-const"
+#: c-decl.c:1109
+msgid "%Jnon-thread-local declaration of '%D' follows thread-local declaration"
+msgstr "%JNicht-Thread-lokale Deklaration von »%D« folgt Thread-lokaler Deklaration"
-#: c-decl.c:1296
-#, c-format
-msgid "type qualifiers for `%s' conflict with previous decl"
-msgstr "Typ-Kennzeichner für »%s« stehen in Konflikt mit vorheriger Deklaration"
+#: c-decl.c:1149
+msgid "%Jextern declaration of '%D' follows declaration with no linkage"
+msgstr "%Jextern-Deklaration von »%D« folgt Deklaration ohne Bindung"
-#: c-decl.c:1309
-#, c-format
-msgid "redundant redeclaration of `%s' in same scope"
-msgstr "Redundante Redeklaration von »%s« im selben Gültigkeitsbereich"
+#: c-decl.c:1152
+msgid "%Jdeclaration of '%D' with no linkage follows extern declaration"
+msgstr "%JDeklaration von »%D« ohne Bindung folgt einer externen Deklaration"
-#: c-decl.c:1619 java/decl.c:1102
-#, c-format
-msgid "declaration of `%s' shadows a parameter"
-msgstr "Deklaration von »%s« überdeckt einen Parameter"
+#: c-decl.c:1155
+msgid "%Jredeclaration of '%D' with no linkage"
+msgstr "%JRedeklarationen von »%D« ohne Bindung"
-#: c-decl.c:1622 java/decl.c:1105
-#, c-format
-msgid "declaration of `%s' shadows a symbol from the parameter list"
-msgstr "Deklaration von »%s« überdeckt ein Symbol aus der Parameterliste"
+#: c-decl.c:1169
+msgid "%Jredeclaration of '%D' with different visibility (old visibility preserved)"
+msgstr "%JRedeklaration von »%D« mit anderer Sichtbarkeit (alte Sichtbarkeit beibehalten)"
-#: c-decl.c:1643 cp/decl.c:4479
-msgid "a parameter"
-msgstr "Ein Parameter"
+#: c-decl.c:1180
+msgid "%Jinline declaration of '%D' follows declaration with attribute noinline"
+msgstr "%Jinline-Deklaration von »%D« folgt Deklaration mit Attribut noinline"
-#: c-decl.c:1645 cp/decl.c:4496
-msgid "a previous local"
-msgstr "Ein vorheriges »local«"
+#: c-decl.c:1187
+msgid "%Jdeclaration of '%D' with attribute noinline follows inline declaration "
+msgstr "%JDeklaration von »%D« mit Attribut noinline folgt inline-Deklaration "
-#. XXX shadow warnings in outer-more namespaces
-#: c-decl.c:1649 cp/decl.c:4500
-msgid "a global declaration"
-msgstr "Eine globale Deklaration"
+#: c-decl.c:1199
+msgid "%J'%D' declared inline after being called"
+msgstr "%J»%D« als inline deklariert nachdem es aufgerufen wurde"
-#: c-decl.c:1693
-#, c-format
-msgid "nested extern declaration of `%s'"
-msgstr "Geschachtelte extern-Deklaration von »%s«"
+#: c-decl.c:1205
+msgid "%J'%D' declared inline after its definition"
+msgstr "%J»%D« nach der Definition als inline deklariert"
-#: c-decl.c:1712 java/decl.c:1055
-#, c-format
-msgid "`%s' used prior to declaration"
-msgstr "»%s« bereits vor Deklaration benutzt"
+#: c-decl.c:1217
+msgid "%Jvolatile declaration of '%D' follows non-volatile declaration"
+msgstr "%J»volatile«-Deklaration von »%D« folgt nicht-»volatile«-Deklaration"
-#: c-decl.c:1726 c-decl.c:1901
-#, c-format
-msgid "`%s' was declared implicitly `extern' and later `static'"
-msgstr "»%s« wurde implizit als »extern« und später als »static« deklariert"
+#: c-decl.c:1220
+msgid "%Jnon-volatile declaration of '%D' follows volatile declaration"
+msgstr "%JNicht-»volatile«-Deklaration von »%D« folgt »volatile«-Deklaration"
-#: c-decl.c:1829 cp/decl.c:4336
-msgid "type mismatch with previous external decl"
-msgstr "Typen passen nicht zu vorheriger externer Deklaration"
+#: c-decl.c:1227
+msgid "%Jconst declaration of '%D' follows non-const declaration"
+msgstr "%Jconst-Deklaration für »%D« folgt Nicht-const Deklaration"
-#: c-decl.c:1830
-#, c-format
-msgid "previous external decl of `%s'"
-msgstr "Vorherige externe Deklaration von »%s«"
+#: c-decl.c:1230
+msgid "%Jnon-const declaration of '%D' follows const declaration"
+msgstr "%JNicht-const-Deklaration von »%D« folgt const-Deklaration"
-#: c-decl.c:1843
-msgid "type mismatch with previous implicit declaration"
-msgstr "Typen passen nicht zu vorheriger impliziter Deklaration"
+#: c-decl.c:1246
+msgid "%Jredundant redeclaration of '%D'"
+msgstr "%Jredundante Redeklaration von »%D«"
-#: c-decl.c:1845
+#: c-decl.c:1690
#, c-format
-msgid "previous implicit declaration of `%s'"
-msgstr "Vorherige implizite Deklaration von »%s«"
+msgid "nested extern declaration of `%s'"
+msgstr "geschachtelte extern-Deklaration von »%s«"
-#: c-decl.c:1880
-#, c-format
-msgid "`%s' was previously implicitly declared to return `int'"
-msgstr "»%s« wurde bereits implizit deklariert, »int« zurückzugeben"
+#: c-decl.c:1829 objc/objc-act.c:2534 objc/objc-act.c:6793
+msgid "%Jprevious declaration of '%D'"
+msgstr "%Jvorherige Deklaration von »%D«"
-#: c-decl.c:1905
+#: c-decl.c:1870 c-decl.c:1872
#, c-format
-msgid "`%s' was declared `extern' and later `static'"
-msgstr "»%s« wurde »extern« deklariert und später »static«"
+msgid "implicit declaration of function `%s'"
+msgstr "implizite Deklaration der Funktion »%s«"
-#: c-decl.c:1929
+#: c-decl.c:1888
#, c-format
-msgid "extern declaration of `%s' doesn't match global one"
-msgstr "extern-Deklaration von »%s« passt nicht zu globaler Deklaration"
+msgid "`%s' undeclared here (not in a function)"
+msgstr "»%s« ist hier nicht deklariert (nicht in einer Funktion)"
-#: c-decl.c:1971
+#: c-decl.c:1894
#, c-format
-msgid "`%s' locally external but globally static"
-msgstr "»%s« ist lokal extern, aber global »static«"
+msgid "`%s' undeclared (first use in this function)"
+msgstr "»%s« nicht deklariert (erste Benutzung in dieser Funktion)"
-#: c-decl.c:2095
-#, c-format
-msgid "function `%s' was previously declared within a block"
-msgstr "Funktion »%s« wurde bereits innerhalb eines Blockes deklariert"
+#: c-decl.c:1899
+msgid "(Each undeclared identifier is reported only once"
+msgstr "(Jeder nicht deklarierte Bezeichner wird nur einmal aufgeführt"
-#: c-decl.c:2115 c-decl.c:2117
-#, c-format
-msgid "implicit declaration of function `%s'"
-msgstr "Implizite Deklaration der Funktion »%s«"
+#: c-decl.c:1900
+msgid "for each function it appears in.)"
+msgstr "für jede Funktion in der er auftritt.)"
-#: c-decl.c:2196
+#: c-decl.c:1953
#, c-format
msgid "label %s referenced outside of any function"
msgstr "Marke %s außerhalb einer Funktion referenziert"
-#: c-decl.c:2253
+#: c-decl.c:2000
#, c-format
msgid "duplicate label declaration `%s'"
-msgstr "Doppelte Markendeklaration »%s«"
+msgstr "doppelte Markendeklaration »%s«"
+
+#: c-decl.c:2001
+msgid "%Jthis is a previous declaration"
+msgstr "%Jdies ist eine vorherige Deklaration"
+
+#: c-decl.c:2036
+msgid "%Hduplicate label `%D'"
+msgstr "%Hdoppelte Marke »%D«"
-#: c-decl.c:2256
-msgid "this is a previous declaration"
-msgstr "Dies ist eine vorherige Deklaration"
+#: c-decl.c:2038
+msgid "%J`%D' previously defined here"
+msgstr "%J»%D« bereits hier definiert"
-#: c-decl.c:2679
+#: c-decl.c:2040
+msgid "%J`%D' previously declared here"
+msgstr "%J»%D« bereits hier deklariert"
+
+#: c-decl.c:2060
+msgid "%Htraditional C lacks a separate namespace for labels, identifier `%s' conflicts"
+msgstr "%Htraditionelles C bietet keinen separaten Namespace für Marken an, Bezeichner »%s« steht in Konflikt"
+
+#: c-decl.c:2131
+msgid "%H`%s' defined as wrong kind of tag"
+msgstr "%H»%s« definiert als falsche Symbolart"
+
+#: c-decl.c:2369
msgid "unnamed struct/union that defines no instances"
-msgstr "Unbenannte struct/union, die keine Instanzen definiert"
+msgstr "unbenannte struct/union, die keine Instanzen definiert"
-#: c-decl.c:2698
+#: c-decl.c:2388
msgid "useless keyword or type name in empty declaration"
-msgstr "Nutzloses Schlüsselwort oder Typenname in leerer Deklaration"
+msgstr "nutzloses Schlüsselwort oder Typenname in leerer Deklaration"
-#: c-decl.c:2705
+#: c-decl.c:2395
msgid "two types specified in one empty declaration"
-msgstr "Zwei Typen in einer leeren Deklaration angegeben"
+msgstr "zwei Typen in einer leeren Deklaration angegeben"
-#: c-decl.c:2710 c-parse.y:753 c-parse.y:755 parse.y:766 parse.y:1853
-#: objc-parse.y:799 objc-parse.y:801 objc-parse.y:3042
+#: c-decl.c:2400 c-parse.y:735 c-parse.y:737 objc/objc-parse.y:776
+#: objc/objc-parse.y:778 objc/objc-parse.y:3016
msgid "empty declaration"
msgstr "leere Deklaration"
-#: c-decl.c:2740
+#: c-decl.c:2426
msgid "ISO C90 does not support `static' or type qualifiers in parameter array declarators"
msgstr "ISO-C90 unterstützt kein »static« oder Typkennzeichner in Parameterfelddeklaratoren"
-#: c-decl.c:2742
+#: c-decl.c:2428
msgid "ISO C90 does not support `[*]' array declarators"
msgstr "ISO-C90 unterstützt nicht »[*]«-Felddeklaratoren"
-#: c-decl.c:2745
+#: c-decl.c:2431
msgid "GCC does not yet properly implement `[*]' array declarators"
-msgstr "GCC implementiert nocht keine richtigen »[*]«-Felddeklaratoren"
+msgstr "GCC implementiert noch keine richtigen »[*]«-Felddeklaratoren"
-#: c-decl.c:2764
+#: c-decl.c:2447
msgid "static or type qualifiers in abstract declarator"
msgstr "static oder Typkennzeichner in abstraktem Deklarator"
-#: c-decl.c:2838
-#, c-format
-msgid "`%s' is usually a function"
-msgstr "»%s« ist üblicherweise eine Funktion"
+#: c-decl.c:2517
+msgid "%J'%D' is usually a function"
+msgstr "%J»%D« ist üblicherweise eine Funktion"
-#: c-decl.c:2847
+#: c-decl.c:2526
#, c-format
msgid "typedef `%s' is initialized (use __typeof__ instead)"
msgstr "typedef »%s« ist initialisiert (benutzen Sie stattdessen __typeof__)"
-#: c-decl.c:2853
+#: c-decl.c:2532
#, c-format
msgid "function `%s' is initialized like a variable"
msgstr "Funktion »%s« ist wie eine Variable initialisiert"
#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
-#: c-decl.c:2860
+#: c-decl.c:2539
#, c-format
msgid "parameter `%s' is initialized"
msgstr "Parameter »%s« ist initialisiert"
-#: c-decl.c:2880 c-typeck.c:4895
+#: c-decl.c:2559 c-typeck.c:4220
msgid "variable-sized object may not be initialized"
msgstr "Objekt variabler Größe darf nicht initialisiert werden"
-#: c-decl.c:2886
+#: c-decl.c:2565
#, c-format
msgid "variable `%s' has initializer but incomplete type"
-msgstr "Variable »%s« hat Initialisierung aber unvollständigen Typ"
+msgstr "Variable »%s« hat Initialisierung, aber unvollständigen Typ"
-#: c-decl.c:2892
+#: c-decl.c:2571
#, c-format
msgid "elements of array `%s' have incomplete type"
msgstr "Elemente des Feldes »%s« haben unvollständigen Typ"
-#: c-decl.c:2905
-#, c-format
-msgid "declaration of `%s' has `extern' and is initialized"
-msgstr "Deklaration von »%s« hat »extern« und ist initialisiert"
+#: c-decl.c:2640 c-decl.c:5426 cp/decl.c:3748 cp/decl.c:10156
+msgid "%Jinline function '%D' given attribute noinline"
+msgstr "%Jinline-Funktion »%D« wurde das Attribut »noinline« gegeben"
-#: c-decl.c:2954 c-decl.c:5828 cp/decl.c:7760 cp/decl.c:14339
-#, c-format
-msgid "inline function `%s' given attribute noinline"
-msgstr "inline-Funktion »%s« wurde das Attribut »noinline« gegeben"
+#: c-decl.c:2716
+msgid "%Jinitializer fails to determine size of '%D'"
+msgstr "%JInitialisierung scheitert an Größenbestimmung von »%D«"
+
+#: c-decl.c:2721
+msgid "%Jarray size missing in '%D'"
+msgstr "%JFeldgröße in »%D« fehlt"
+
+#: c-decl.c:2737
+msgid "%Jzero or negative size array '%D'"
+msgstr "%JFeldgröße von »%D« ist null oder negativ"
+
+#: c-decl.c:2765
+msgid "%Jstorage size of '%D' isn't known"
+msgstr "%JSpeichergröße von »%D« ist unbekannt"
+
+#: c-decl.c:2775
+msgid "%Jstorage size of '%D' isn't constant"
+msgstr "%JSpeichergröße von »%D« ist nicht konstant"
+
+#: c-decl.c:2858
+msgid "%Jignoring asm-specifier for non-static local variable '%D'"
+msgstr "%Jasm-Symbol für nicht-statische lokale Variable »%D« wird ignoriert"
-#: c-decl.c:3028
+#: c-decl.c:2969
+msgid "ISO C forbids forward parameter declarations"
+msgstr "ISO-C verbietet Vorwärtsdeklaration für Parameter"
+
+#: c-decl.c:3151
+msgid "<anonymous>"
+msgstr "<anonym>"
+
+#: c-decl.c:3160
#, c-format
-msgid "initializer fails to determine size of `%s'"
-msgstr "Initialisierung scheitert an Größenbestimmung von »%s«"
+msgid "bit-field `%s' width not an integer constant"
+msgstr "Breite des Bitfeldes »%s« ist keine Ganzzahlkonstante"
-#: c-decl.c:3033
+#: c-decl.c:3168
#, c-format
-msgid "array size missing in `%s'"
-msgstr "Feldgröße in »%s« fehlt"
+msgid "negative width in bit-field `%s'"
+msgstr "negative Breite in Bitfeld »%s«"
-#: c-decl.c:3049
+#: c-decl.c:3173
#, c-format
-msgid "zero or negative size array `%s'"
-msgstr "Feldgröße von »%s« ist null oder negativ"
+msgid "zero width for bit-field `%s'"
+msgstr "Breite null für Bitfeld »%s«"
-#: c-decl.c:3077
+#: c-decl.c:3183
#, c-format
-msgid "storage size of `%s' isn't known"
-msgstr "Speichergröße von »%s« unbekannt"
+msgid "bit-field `%s' has invalid type"
+msgstr "Bitfeld »%s« hat ungültigen Typen"
-#: c-decl.c:3087
+#: c-decl.c:3192
#, c-format
-msgid "storage size of `%s' isn't constant"
-msgstr "Speichergröße von »%s« unbekannt"
+msgid "type of bit-field `%s' is a GCC extension"
+msgstr "der Typ des Bitfeldes »%s« ist eine Erweiterung des GCC"
-#: c-decl.c:3147
+#: c-decl.c:3201
#, c-format
-msgid "ignoring asm-specifier for non-static local variable `%s'"
-msgstr "Ignoriere asm-Symbol für lokale Nicht-static Variable »%s«"
+msgid "width of `%s' exceeds its type"
+msgstr "Breite von »%s« überschreitet dessen Typen"
-#: c-decl.c:3247
+#: c-decl.c:3211
#, c-format
-msgid "ISO C forbids parameter `%s' shadowing typedef"
-msgstr "ISO-C verbietet typedef verdeckenden Parameter »%s«"
+msgid "`%s' is narrower than values of its type"
+msgstr "»%s« ist schmaler als die Werte seines Typs"
-#: c-decl.c:3592 cp/decl.c:10880
+#: c-decl.c:3361 cp/decl.c:6778
msgid "`long long long' is too long for GCC"
msgstr "»long long long« ist für GCC zu lang"
-#: c-decl.c:3597
+#: c-decl.c:3366
msgid "ISO C90 does not support `long long'"
msgstr "ISO-C90 unterstützt nicht »long long«"
-#: c-decl.c:3606 c-decl.c:3609 cp/decl.c:10885
+#: c-decl.c:3375 c-decl.c:3378 cp/decl.c:6783
#, c-format
msgid "duplicate `%s'"
-msgstr "Doppeltes »%s«"
+msgstr "doppeltes »%s«"
-#: c-decl.c:3619 cp/decl.c:10892
+#: c-decl.c:3388 cp/decl.c:6789
msgid "`__thread' before `extern'"
msgstr "»__thread« vor »extern«"
-#: c-decl.c:3621 cp/decl.c:10894
+#: c-decl.c:3390 cp/decl.c:6791
msgid "`__thread' before `static'"
msgstr "»__thread« vor »static«"
-#: c-decl.c:3629 cp/decl.c:10921
+#: c-decl.c:3398 cp/decl.c:6818
#, c-format
msgid "two or more data types in declaration of `%s'"
-msgstr "Zwei oder mehr Datentypen in Deklaration von »%s«"
+msgstr "zwei oder mehr Datentypen in Deklaration von »%s«"
-#: c-decl.c:3649 cp/decl.c:10926
+#: c-decl.c:3418 cp/decl.c:6823
#, c-format
msgid "`%s' fails to be a typedef or built in type"
msgstr "»%s« ist kein typedef oder eingebauter Typ"
-#: c-decl.c:3688
+#: c-decl.c:3457
#, c-format
msgid "type defaults to `int' in declaration of `%s'"
msgstr "»int« ist Standardtyp in Deklaration von »%s«"
-#: c-decl.c:3717
+#: c-decl.c:3486
#, c-format
msgid "both long and short specified for `%s'"
-msgstr "Sowohl »long« als auch »short« für »%s« angegeben"
+msgstr "sowohl »long« als auch »short« für »%s« angegeben"
-#: c-decl.c:3721 cp/decl.c:11041
+#: c-decl.c:3490 cp/decl.c:6923
#, c-format
msgid "long or short specified with char for `%s'"
msgstr "»long« oder »short« mit »char« für »%s« angegeben"
-#: c-decl.c:3728 cp/decl.c:11045
+#: c-decl.c:3497 cp/decl.c:6927
#, c-format
msgid "long or short specified with floating type for `%s'"
-msgstr "»long« oder »short« mit Fließkommatyp für »%s« angegeben"
+msgstr "»long« oder »short« mit Gleitkommatyp für »%s« angegeben"
-#: c-decl.c:3731
+#: c-decl.c:3500
msgid "the only valid combination is `long double'"
-msgstr "Die einzig gültige Kombination ist »long double«"
+msgstr "die einzig gültige Kombination ist »long double«"
-#: c-decl.c:3737
+#: c-decl.c:3506
#, c-format
msgid "both signed and unsigned specified for `%s'"
-msgstr "Sowohl »signed« als auch »unsigned« für »%s« angegeben"
+msgstr "sowohl »signed« als auch »unsigned« für »%s« angegeben"
-#: c-decl.c:3739 cp/decl.c:11034
+#: c-decl.c:3508 cp/decl.c:6916
#, c-format
msgid "long, short, signed or unsigned invalid for `%s'"
msgstr "long, short, signed oder unsigned ist ungültig für »%s«"
-#: c-decl.c:3745 cp/decl.c:11054
+#: c-decl.c:3514 cp/decl.c:6936
#, c-format
msgid "long, short, signed or unsigned used invalidly for `%s'"
msgstr "long, short, signed oder unsigned ungültig verwendet für »%s«"
-#: c-decl.c:3763 cp/decl.c:11075
+#: c-decl.c:3532 cp/decl.c:6957
#, c-format
msgid "complex invalid for `%s'"
msgstr "complex ungültig für »%s«"
-#: c-decl.c:3805
+#: c-decl.c:3574
msgid "ISO C90 does not support complex types"
msgstr "ISO-C90 unterstützt nicht komplexe Typen"
-#: c-decl.c:3817
+#: c-decl.c:3586
msgid "ISO C does not support plain `complex' meaning `double complex'"
msgstr "ISO-C unterstützt nicht »double complex« bedeutendes »complex«"
-#: c-decl.c:3823 c-decl.c:3835
+#: c-decl.c:3592 c-decl.c:3604
msgid "ISO C does not support complex integer types"
msgstr "ISO-C unterstützt keine komplexen Ganzzahltypen"
-#: c-decl.c:3850 c-decl.c:4316 cp/decl.c:11688
+#: c-decl.c:3632 c-decl.c:4090 cp/decl.c:7549
msgid "duplicate `const'"
-msgstr "Doppeltes »const«"
+msgstr "doppeltes »const«"
-#: c-decl.c:3852 c-decl.c:4320 cp/decl.c:11692
+#: c-decl.c:3634 c-decl.c:4094 cp/decl.c:7553
msgid "duplicate `restrict'"
-msgstr "Doppeltes »restrict«"
+msgstr "doppeltes »restrict«"
-#: c-decl.c:3854 c-decl.c:4318 cp/decl.c:11690
+#: c-decl.c:3636 c-decl.c:4092 cp/decl.c:7551
msgid "duplicate `volatile'"
-msgstr "Doppeltes »volatile«"
+msgstr "doppeltes »volatile«"
-#: c-decl.c:3882 cp/decl.c:11238
+#: c-decl.c:3664 cp/decl.c:7120
#, c-format
msgid "multiple storage classes in declaration of `%s'"
-msgstr "Mehrere Speicherklassen in Deklaration von »%s«"
+msgstr "mehrere Speicherklassen in Deklaration von »%s«"
-#: c-decl.c:3892
+#: c-decl.c:3674
msgid "function definition declared `auto'"
msgstr "Funktionsdefinition deklarierte »auto«"
-#: c-decl.c:3894
+#: c-decl.c:3676
msgid "function definition declared `register'"
msgstr "Funktionsdefinition deklarierte »register«"
-#: c-decl.c:3896
+#: c-decl.c:3678
msgid "function definition declared `typedef'"
msgstr "Funktionsdefinition deklarierte »typedef«"
-#: c-decl.c:3898
+#: c-decl.c:3680
msgid "function definition declared `__thread'"
msgstr "Funktionsdefinition deklarierte »__thread«"
-#: c-decl.c:3911
+#: c-decl.c:3693
#, c-format
msgid "storage class specified for structure field `%s'"
msgstr "Speicherklasse für Strukturfeld »%s« angegeben"
-#: c-decl.c:3915 cp/decl.c:11285
+#: c-decl.c:3697 cp/decl.c:7165
#, c-format
msgid "storage class specified for parameter `%s'"
msgstr "Speicherklasse für Parameter »%s« angegeben"
-#: c-decl.c:3918 cp/decl.c:11287
+#: c-decl.c:3700 cp/decl.c:7167
msgid "storage class specified for typename"
msgstr "Speicherklasse für Typnamen angegeben"
-#: c-decl.c:3930 cp/decl.c:11302
+#: c-decl.c:3712 cp/decl.c:7182
#, c-format
msgid "`%s' initialized and declared `extern'"
msgstr "»%s« initialisiert und als »extern« deklariert"
-#: c-decl.c:3932 cp/decl.c:11305
+#: c-decl.c:3714 cp/decl.c:7185
#, c-format
msgid "`%s' has both `extern' and initializer"
msgstr "»%s« hat sowohl »extern« als auch Initialisierung"
-#: c-decl.c:3937 cp/decl.c:11313
+#: c-decl.c:3719
#, c-format
-msgid "top-level declaration of `%s' specifies `auto'"
-msgstr "Deklaration höchster Ebene von »%s« spezifiziert »auto«"
+msgid "file-scope declaration of `%s' specifies `auto'"
+msgstr "Deklaration von »%s« in Datei-Sichtbarkeitsbereich spezifiziert »auto«"
-#: c-decl.c:3942 cp/decl.c:11309
+#: c-decl.c:3724 cp/decl.c:7189
#, c-format
msgid "nested function `%s' declared `extern'"
-msgstr "Geschachtelte Funktion »%s« als »extern« deklariert"
+msgstr "geschachtelte Funktion »%s« als »extern« deklariert"
-#: c-decl.c:3948 cp/decl.c:11319
+#: c-decl.c:3730 cp/decl.c:7199
#, c-format
msgid "function-scope `%s' implicitly auto and declared `__thread'"
msgstr "Funktions-Gültigkeitsbereich »%s« ist implizit auto und deklarierte »__thread«"
@@ -1062,4254 +1088,3969 @@ msgstr "Funktions-Gültigkeitsbereich »%s« ist implizit auto und deklarierte Â
#. Only the innermost declarator (making a parameter be of
#. array type which is converted to pointer type)
#. may have static or type qualifiers.
-#: c-decl.c:3987 c-decl.c:4188
+#: c-decl.c:3769 c-decl.c:3962
msgid "static or type qualifiers in non-parameter array declarator"
msgstr "»static« oder Typkennzeichner in Nicht-Parameter-Felddeklarator"
-#: c-decl.c:4031
+#: c-decl.c:3813
#, c-format
msgid "declaration of `%s' as array of voids"
msgstr "Deklaration von »%s« als Feld von voids"
-#: c-decl.c:4037
+#: c-decl.c:3819
#, c-format
msgid "declaration of `%s' as array of functions"
msgstr "Deklaration von »%s« als Feld von Funtionen"
-#: c-decl.c:4042 c-decl.c:5332
+#: c-decl.c:3824
msgid "invalid use of structure with flexible array member"
-msgstr "Ungültige Verwendung einer Struktur mit flexiblem Feld"
+msgstr "ungültige Verwendung einer Struktur mit flexiblem Feldelement"
-#: c-decl.c:4061
+#: c-decl.c:3843
#, c-format
msgid "size of array `%s' has non-integer type"
msgstr "Feldgröße von »%s« hat Nicht-Ganzzahltyp"
-#: c-decl.c:4066
+#: c-decl.c:3848
#, c-format
msgid "ISO C forbids zero-size array `%s'"
msgstr "ISO-C verbietet Feld »%s« der Größe null"
-#: c-decl.c:4073
+#: c-decl.c:3855
#, c-format
msgid "size of array `%s' is negative"
msgstr "Feldgröße von »%s« ist negativ"
-#: c-decl.c:4086
+#: c-decl.c:3868
#, c-format
msgid "ISO C90 forbids array `%s' whose size can't be evaluated"
msgstr "ISO-C90 verbietet Feld »%s«, dessen Größe nicht ausgewertet werden kann"
-#: c-decl.c:4089
+#: c-decl.c:3871
#, c-format
msgid "ISO C90 forbids variable-size array `%s'"
msgstr "ISO-C90 verbietet Feld »%s« variabler Größe"
-#: c-decl.c:4119 c-decl.c:4342 cp/decl.c:11897
+#: c-decl.c:3901 c-decl.c:4116 cp/decl.c:7723
#, c-format
msgid "size of array `%s' is too large"
msgstr "Feldgröße von »%s« ist zu groß"
-#: c-decl.c:4145
+#: c-decl.c:3927
msgid "ISO C90 does not support flexible array members"
-msgstr "ISO-C90 unterstützt keine flexiblen Felder als Mitglied"
+msgstr "ISO-C90 unterstützt keine flexiblen Felder als Elemente"
-#: c-decl.c:4155
+#: c-decl.c:3937
msgid "array type has incomplete element type"
msgstr "Feldtyp hat unvollständigen Elementtypen"
-#: c-decl.c:4162 c-decl.c:4392
-msgid "ISO C forbids const or volatile function types"
-msgstr "ISO-C verbietet const oder volatile Funktionstypen"
-
-#: c-decl.c:4208 cp/decl.c:11445
+#: c-decl.c:3982 cp/decl.c:7320
#, c-format
msgid "`%s' declared as function returning a function"
msgstr "»%s« als Funktion, die eine Funktion zurückgibt, deklariert"
-#: c-decl.c:4213 cp/decl.c:11450
+#: c-decl.c:3987 cp/decl.c:7325
#, c-format
msgid "`%s' declared as function returning an array"
msgstr "»%s« als Funktion, die ein Feld zurückgibt, deklariert"
-#: c-decl.c:4241
+#: c-decl.c:4015
msgid "ISO C forbids qualified void function return type"
msgstr "ISO-C verbietet qualifiziertes void als Funktions-Rückgabetypen"
-#: c-decl.c:4245
+#: c-decl.c:4019
msgid "type qualifiers ignored on function return type"
msgstr "Typkennzeichner ignoriert an Funktions-Rückgabewert"
-#: c-decl.c:4274 c-decl.c:4357 c-decl.c:4481 c-decl.c:4573
+#: c-decl.c:4048 c-decl.c:4131 c-decl.c:4255 c-decl.c:4341
msgid "ISO C forbids qualified function types"
msgstr "ISO-C verbietet qualifizierte Funktionstypen"
-#: c-decl.c:4314 cp/decl.c:11684
+#: c-decl.c:4088 cp/decl.c:7545
msgid "invalid type modifier within pointer declarator"
-msgstr "Ungültiger Typmodifizierer innerhalb Zeigerdeklarator"
+msgstr "ungültiger Typmodifizierer innerhalb Zeigerdeklarator"
-#: c-decl.c:4412 cp/decl.c:12182
+#: c-decl.c:4166
+msgid "ISO C forbids const or volatile function types"
+msgstr "ISO-C verbietet const- oder volatile-Funktionstypen"
+
+#: c-decl.c:4186 cp/decl.c:8005
#, c-format
msgid "variable or field `%s' declared void"
msgstr "Variable oder Feld »%s« als »void« deklariert"
-#: c-decl.c:4445
+#: c-decl.c:4219
msgid "attributes in parameter array declarator ignored"
-msgstr "Attribute in Parameterfeld ignoriert"
+msgstr "Attribute in Parameterfelddeklarator ignoriert"
-#: c-decl.c:4470
+#: c-decl.c:4244
msgid "invalid type modifier within array declarator"
-msgstr "Ungültiger Typmodifizierer in Felddeklarator"
+msgstr "ungültiger Typmodifizierer in Felddeklarator"
-#: c-decl.c:4515
+#: c-decl.c:4289
#, c-format
msgid "field `%s' declared as a function"
msgstr "Feld »%s« als Funktion deklariert"
-#: c-decl.c:4521
+#: c-decl.c:4295
#, c-format
msgid "field `%s' has incomplete type"
msgstr "Feld »%s« hat unvollständigen Typen"
-#: c-decl.c:4553 c-decl.c:4555 c-decl.c:4557 c-decl.c:4564
+#: c-decl.c:4321 c-decl.c:4323 c-decl.c:4325 c-decl.c:4332
#, c-format
msgid "invalid storage class for function `%s'"
-msgstr "Ungültige Speicherklasse für Funktion »%s«"
+msgstr "ungültige Speicherklasse für Funktion »%s«"
-#: c-decl.c:4579
+#: c-decl.c:4347
msgid "`noreturn' function returns non-void value"
msgstr "»noreturn«-Funktion gibt nicht-void-Wert zurück"
-#: c-decl.c:4594
+#: c-decl.c:4362
msgid "cannot inline function `main'"
msgstr "»main« ist nicht als »inline« möglich"
-#: c-decl.c:4649
-#, c-format
-msgid "variable `%s' declared `inline'"
-msgstr "Variable »%s« als »inline« deklariert"
+#: c-decl.c:4415
+msgid "variable previously declared `static' redeclared `extern'"
+msgstr "als »extern« redeklarierte Variable war bereits als »static« deklariert"
+
+#: c-decl.c:4424
+msgid "%Jvariable '%D' declared `inline'"
+msgstr "%JVariable »%D« als »inline« deklariert"
#. A mere warning is sure to result in improper semantics
#. at runtime. Don't bother to allow this to compile.
-#: c-decl.c:4677 cp/decl.c:9951
+#: c-decl.c:4452 cp/decl.c:5877
msgid "thread-local storage not supported for this target"
msgstr "Thread-lokaler Speicher wird für dieses Ziel nicht unterstützt"
-#: c-decl.c:4732 c-decl.c:5880
+#: c-decl.c:4513 c-decl.c:5470
msgid "function declaration isn't a prototype"
msgstr "Funktionsdeklaration ist kein Prototyp"
-#: c-decl.c:4738
+#: c-decl.c:4519
msgid "parameter names (without types) in function declaration"
msgstr "Parameternamen (ohne Typen) in Funktionsdeklaration"
-#: c-decl.c:4770 c-decl.c:6250
+#: c-decl.c:4547
#, c-format
msgid "parameter `%s' has incomplete type"
msgstr "Parameter »%s« hat unvollständigen Typen"
-#: c-decl.c:4773
+#: c-decl.c:4550
msgid "parameter has incomplete type"
msgstr "Parameter hat unvollständigen Typen"
-#: c-decl.c:4794
-#, c-format
-msgid "parameter `%s' points to incomplete type"
-msgstr "Parameter »%s« zeigt auf unvollständigen Typen"
-
-#: c-decl.c:4797
-msgid "parameter points to incomplete type"
-msgstr "Parameter zeigt auf unvollständigen Typen"
+#: c-decl.c:4599
+msgid "\"void\" as only parameter may not be qualified"
+msgstr "\"void\" kann als einziger Parameter nicht qualifiziert werden"
-#: c-decl.c:4862
-#, c-format
-msgid "parameter `%s' has just a forward declaration"
-msgstr "Parameter »%s« hat nur eine Vorwärtsdeklaration"
+#: c-decl.c:4620
+msgid "\"void\" must be the only parameter"
+msgstr "\"void\" muss der einzige Parameter sein"
-#: c-decl.c:4903
-msgid "`void' in parameter list must be the entire list"
-msgstr "»void« in Parameterliste muss die gesamte Liste sein"
+#: c-decl.c:4637
+msgid "%Jparameter \"%D\" has just a forward declaration"
+msgstr "%JParameter »%D« hat nur eine Vorwärtsdeklaration"
-#: c-decl.c:4934
+#. The first %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4665
#, c-format
-msgid "`struct %s' declared inside parameter list"
-msgstr "»struct %s« innerhalb Parameterliste deklariert"
+msgid "\"%s %s\" declared inside parameter list"
+msgstr "\"%s %s\" innerhalb Parameterliste deklariert"
-#: c-decl.c:4937
+#. The %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4669
#, c-format
-msgid "`union %s' declared inside parameter list"
-msgstr "»union %s« innerhalb Parameterliste deklariert"
+msgid "anonymous %s declared inside parameter list"
+msgstr "anonymes %s innerhalb Parameterliste deklariert"
-#: c-decl.c:4940
-#, c-format
-msgid "`enum %s' declared inside parameter list"
-msgstr "»enum %s« innerhalb Parameterliste deklariert"
-
-#: c-decl.c:4947
-msgid "anonymous struct declared inside parameter list"
-msgstr "Anonymes »struct« innerhalb Parameterliste deklariert"
-
-#: c-decl.c:4949
-msgid "anonymous union declared inside parameter list"
-msgstr "Anonymes »union« innerhalb Parameterliste deklariert"
-
-#: c-decl.c:4951
-msgid "anonymous enum declared inside parameter list"
-msgstr "Anonymes »enum« innerhalb Parameterliste deklariert"
-
-#: c-decl.c:4955
+#: c-decl.c:4673
msgid "its scope is only this definition or declaration, which is probably not what you want"
-msgstr "Sein Gültigkeitsbereich umfasst nur diese Definition bzw. Deklaration, was Sie wahrscheinlich nicht wollten"
+msgstr "sein Gültigkeitsbereich umfasst nur diese Definition bzw. Deklaration, was Sie wahrscheinlich nicht wollten"
-#: c-decl.c:5032
+#: c-decl.c:4758
#, c-format
msgid "redefinition of `union %s'"
msgstr "Redefinition von »union %s«"
-#: c-decl.c:5034
+#: c-decl.c:4760
#, c-format
msgid "redefinition of `struct %s'"
msgstr "Redefinition von »struct %s«"
-#: c-decl.c:5105 cp/decl.c:7532
+#: c-decl.c:4828 cp/decl.c:3521
msgid "declaration does not declare anything"
msgstr "Deklaration deklariert nichts"
-#: c-decl.c:5169 c-decl.c:5172
+#: c-decl.c:4873 c-decl.c:4889
+msgid "%Jduplicate member '%D'"
+msgstr "%Jdoppeltes Element »%D«"
+
+#: c-decl.c:4923 c-decl.c:4926
#, c-format
msgid "%s defined inside parms"
msgstr "%s innerhalb Parameter definiert"
-#: c-decl.c:5170 c-decl.c:5173 c-decl.c:5184
+#: c-decl.c:4924 c-decl.c:4927 c-decl.c:4938
msgid "union"
-msgstr "union"
+msgstr "Union"
-#: c-decl.c:5170 c-decl.c:5173
+#: c-decl.c:4924 c-decl.c:4927
msgid "structure"
msgstr "Struktur"
-#: c-decl.c:5183
+#: c-decl.c:4937
#, c-format
msgid "%s has no %s"
msgstr "%s hat kein %s"
-#: c-decl.c:5184
+#: c-decl.c:4938
msgid "struct"
msgstr "struct"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "named members"
-msgstr "benannte Member"
+msgstr "benannte Elemente"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "members"
-msgstr "Member"
+msgstr "Elemente"
-#: c-decl.c:5224
+#: c-decl.c:4978
#, c-format
msgid "nested redefinition of `%s'"
msgstr "Verschachtelte Redefinition von »%s«"
-#: c-decl.c:5237
-#, c-format
-msgid "bit-field `%s' width not an integer constant"
-msgstr "Breite des Bitfeldes »%s« ist keine Ganzzahlkonstante"
-
-#: c-decl.c:5248
-#, c-format
-msgid "bit-field `%s' has invalid type"
-msgstr "Bitfeld »%s« hat ungültigen Typen"
-
-#: c-decl.c:5260
-#, c-format
-msgid "bit-field `%s' type invalid in ISO C"
-msgstr "Typ des Bitfeldes »%s« ist ungültig in ISO-C"
-
-#: c-decl.c:5271
-#, c-format
-msgid "negative width in bit-field `%s'"
-msgstr "Negative Breite in Bitfeld »%s«"
-
-#: c-decl.c:5273
-#, c-format
-msgid "width of `%s' exceeds its type"
-msgstr "Breite von »%s« überschreitet dessen Typen"
-
-#: c-decl.c:5275
-#, c-format
-msgid "zero width for bit-field `%s'"
-msgstr "Breite null für Bitfeld »%s«"
-
-#: c-decl.c:5289
-#, c-format
-msgid "`%s' is narrower than values of its type"
-msgstr "»%s« ist schmaler als die Werte seines Typs"
+#: c-decl.c:4998
+msgid "%Jflexible array member in union"
+msgstr "%Jflexibles Feldelement in Union"
-#: c-decl.c:5323
-msgid "flexible array member in union"
-msgstr "Flexibler Feld-Member in union"
+#: c-decl.c:5000
+msgid "%Jflexible array member not at end of struct"
+msgstr "%Jflexibles Feld-Element nicht am Ende von struct"
-#: c-decl.c:5325
-msgid "flexible array member not at end of struct"
-msgstr "Flexibler Feld-Member nicht am Ende von struct"
+#: c-decl.c:5002
+msgid "%Jflexible array member in otherwise empty struct"
+msgstr "%Jlexibler Feld-Element in ansonsten leerem struct"
-#: c-decl.c:5327
-msgid "flexible array member in otherwise empty struct"
-msgstr "Flexibler Feld-Member in ansonsten leerem struct"
+#: c-decl.c:5007
+msgid "%Jinvalid use of structure with flexible array member"
+msgstr "%Jungültige Verwendung einer Struktur mit flexiblem Feld-Element"
-#: c-decl.c:5357
-#, c-format
-msgid "duplicate member `%s'"
-msgstr "Doppelter Member »%s«"
-
-#: c-decl.c:5448
+#: c-decl.c:5102
msgid "union cannot be made transparent"
msgstr "union kann nicht transparent gemacht werden"
#. This enum is a named one that has been declared already.
-#: c-decl.c:5558
+#: c-decl.c:5171
#, c-format
msgid "redeclaration of `enum %s'"
msgstr "Redeklaration von »enum %s«"
-#: c-decl.c:5592
+#: c-decl.c:5202
msgid "enum defined inside parms"
msgstr "enum innerhalb von Parametern definiert"
-#: c-decl.c:5625
+#: c-decl.c:5235
msgid "enumeration values exceed range of largest integer"
msgstr "Aufzählungswerte überschreiten Wertebereich des größten Ganzzahltypen"
-#: c-decl.c:5734
+#: c-decl.c:5338
#, c-format
msgid "enumerator value for `%s' not integer constant"
msgstr "Aufzählungswert für »%s« ist keine Ganzzahlkonstante"
-#: c-decl.c:5747
+#: c-decl.c:5351
msgid "overflow in enumeration values"
msgstr "Überlauf in Aufzählungswerten"
-#: c-decl.c:5752
+#: c-decl.c:5356
msgid "ISO C restricts enumerator values to range of `int'"
msgstr "ISO-C beschränkt Aufzählungswerte auf Bereich von »int«"
-#: c-decl.c:5834
+#: c-decl.c:5432
msgid "return type is an incomplete type"
msgstr "Rückgabetyp ist unvollständig"
-#: c-decl.c:5842
+#: c-decl.c:5440
msgid "return type defaults to `int'"
msgstr "Rückgabetyp ist auf »int« voreingestellt"
-#: c-decl.c:5889
-#, c-format
-msgid "no previous prototype for `%s'"
-msgstr "Kein vorheriger Prototyp für »%s«"
+#: c-decl.c:5476
+msgid "%Jno previous prototype for '%D'"
+msgstr "%Jkein vorheriger Prototyp für »%D«"
-#: c-decl.c:5896
-#, c-format
-msgid "`%s' was used with no prototype before its definition"
-msgstr "»%s« wurde vor seiner Definition ohne Prototyp verwendet"
+#: c-decl.c:5482
+msgid "%J'%D' was used with no prototype before its definition"
+msgstr "%J»%D« wurde vor seiner Definition ohne Prototyp verwendet"
-#: c-decl.c:5902
-#, c-format
-msgid "no previous declaration for `%s'"
-msgstr "Keine vorherige Deklaration für »%s«"
+#: c-decl.c:5489
+msgid "%Jno previous declaration for '%D'"
+msgstr "%Jkeine vorherige Deklaration für »%D«"
-#: c-decl.c:5909
-#, c-format
-msgid "`%s' was used with no declaration before its definition"
-msgstr "»%s« wurde vor seiner Definition ohne Deklaration verwendet"
+#: c-decl.c:5495
+msgid "%J`%D' was used with no declaration before its definition"
+msgstr "%J»%D« wurde vor seiner Definition ohne Deklaration verwendet"
-#: c-decl.c:5933 c-decl.c:6486
-#, c-format
-msgid "return type of `%s' is not `int'"
-msgstr "Rückgabetyp von »%s« ist nicht »int«"
+#: c-decl.c:5531 c-decl.c:6037
+msgid "%Jreturn type of '%D' is not `int'"
+msgstr "%JRückgabetyp von »%D« ist nicht »int«"
-#: c-decl.c:5949
-#, c-format
-msgid "first argument of `%s' should be `int'"
-msgstr "Erstes Argument von »%s« sollte »int« sein"
+#: c-decl.c:5546
+msgid "%Jfirst argument of '%D' should be `int'"
+msgstr "%Jerstes Argument von »%D« sollte »int« sein"
-#: c-decl.c:5958
-#, c-format
-msgid "second argument of `%s' should be `char **'"
-msgstr "Zweites Argument von »%s« sollte »char **« sein"
+#: c-decl.c:5555
+msgid "%Jsecond argument of '%D' should be 'char **'"
+msgstr "%Jzweites Argument von »%D« sollte »char **« sein"
-#: c-decl.c:5967
-#, c-format
-msgid "third argument of `%s' should probably be `char **'"
-msgstr "Drittes Argument von »%s« sollte wahrscheinlich »char **« sein"
+#: c-decl.c:5564
+msgid "%Jthird argument of '%D' should probably be 'char **'"
+msgstr "%Jdrittes Argument von »%D« sollte wahrscheinlich »char **« sein"
-#: c-decl.c:5976
-#, c-format
-msgid "`%s' takes only zero or two arguments"
-msgstr "»%s« benötigt entweder null oder zwei Argumente"
+#: c-decl.c:5574
+msgid "%J'%D' takes only zero or two arguments"
+msgstr "%J»%D« benötigt entweder null oder zwei Argumente"
-#: c-decl.c:5979
-#, c-format
-msgid "`%s' is normally a non-static function"
-msgstr "»%s« ist normalerweise eine Nicht-static-Funktion"
+#: c-decl.c:5577
+msgid "%J'%D' is normally a non-static function"
+msgstr "%J»%D« ist normalerweise eine Nicht-static-Funktion"
-#: c-decl.c:6077
-msgid "parm types given both in parmlist and separately"
-msgstr "Parametertypen sowohl in Parameterliste als auch separat angegeben"
+#: c-decl.c:5633
+msgid "%Jold-style parameter declarations in prototyped function definition"
+msgstr "%JParameterdeklarationen alten Stils in Prototyp-Funktionsdeklaration"
-#: c-decl.c:6098
-msgid "parameter name omitted"
-msgstr "Parametername ausgelassen"
+#: c-decl.c:5647
+msgid "%Jparameter name omitted"
+msgstr "%JParametername ausgelassen"
-#: c-decl.c:6102 c-decl.c:6204
-#, c-format
-msgid "parameter `%s' declared void"
-msgstr "Parameter »%s« als void deklariert"
+#: c-decl.c:5722
+msgid "%Jparameter name missing from parameter list"
+msgstr "%JParametername fehlt in Parameterliste"
-#: c-decl.c:6178
-msgid "parameter name missing from parameter list"
-msgstr "Parametername fehlt in Parameterliste"
+#: c-decl.c:5732
+msgid "%J\"%D\" declared as a non-parameter"
+msgstr "%J\"%D\" als Nicht-Parameter deklariert"
-#: c-decl.c:6197
-#, c-format
-msgid "multiple parameters named `%s'"
-msgstr "Mehrere Parameter wurden »%s« genannt"
+#: c-decl.c:5737
+msgid "%Jmultiple parameters named \"%D\""
+msgstr "%Jmehrere Parameter wurden »%D« genannt"
-#: c-decl.c:6219 c-decl.c:6221
-#, c-format
-msgid "type of `%s' defaults to `int'"
-msgstr "Typ von »%s« auf »int« voreingestellt"
+#: c-decl.c:5745
+msgid "%Jparameter \"%D\" declared void"
+msgstr "%JParameter »%D« als void deklariert"
-#: c-decl.c:6257
-#, c-format
-msgid "declaration for parameter `%s' but no such parameter"
-msgstr "Nicht vorhandener Parameter »%s« deklariert"
+#: c-decl.c:5760 c-decl.c:5762
+msgid "%Jtype of \"%D\" defaults to \"int\""
+msgstr "%JTyp von »%D« ist auf »int« voreingestellt"
+
+#: c-decl.c:5776
+msgid "%Jparameter \"%D\" has incomplete type"
+msgstr "%JParameter \"%D\" hat unvollständigen Typen"
+
+#: c-decl.c:5782
+msgid "%Jdeclaration for parameter \"%D\" but no such parameter"
+msgstr "%Jnicht vorhandener Parameter »%D« deklariert"
-#: c-decl.c:6305
+#: c-decl.c:5834
msgid "number of arguments doesn't match prototype"
msgstr "Anzahl der Argumente passt nicht zum Prototypen"
-#: c-decl.c:6335
-#, c-format
-msgid "promoted argument `%s' doesn't match prototype"
-msgstr "Weitergegebenes Argument »%s« passt nicht zum Prototypen"
+#: c-decl.c:5835 c-decl.c:5866 c-decl.c:5873
+msgid "%Hprototype declaration"
+msgstr "%HPrototyp-Deklaration"
-#: c-decl.c:6345
-#, c-format
-msgid "argument `%s' doesn't match prototype"
-msgstr "Argument »%s« passt nicht zum Prototypen"
+#: c-decl.c:5864
+msgid "promoted argument \"%D\" doesn't match prototype"
+msgstr "weitergegebenes Argument »%D« passt nicht zum Prototypen"
-#: c-decl.c:6518 cp/decl.c:15049
+#: c-decl.c:5872
+msgid "argument \"%D\" doesn't match prototype"
+msgstr "Argument »%D« passt nicht zum Prototypen"
+
+#: c-decl.c:6069 cp/decl.c:10876
msgid "no return statement in function returning non-void"
-msgstr "Keine return-Anweisung in nicht void zurückgebender Funktion"
+msgstr "keine return-Anweisung in nicht void zurückgebender Funktion"
-#: c-decl.c:6525
+#: c-decl.c:6076
msgid "this function may return with or without a value"
-msgstr "Diese Funktion kann mit oder ohne Wert zurückkehren"
-
-#: c-decl.c:6729
-#, c-format
-msgid "size of return value of `%s' is %u bytes"
-msgstr "Größe des Rückgabewertes von »%s« ist %u Bytes"
-
-#: c-decl.c:6733
-#, c-format
-msgid "size of return value of `%s' is larger than %d bytes"
-msgstr "Größe des Rückgabewertes von »%s« ist größer als %d Bytes"
+msgstr "diese Funktion kann mit oder ohne Wert zurückkehren"
#. If we get here, declarations have been used in a for loop without
#. the C99 for loop scope. This doesn't make much sense, so don't
#. allow it.
-#: c-decl.c:6791
-msgid "`for' loop initial declaration used outside C99 mode"
+#: c-decl.c:6175
+msgid "'for' loop initial declaration used outside C99 mode"
msgstr "Anfangsdeklaration in »for«-Schleife außerhalb C99-Modus verwendet"
-#: c-decl.c:6815
+#: c-decl.c:6199
#, c-format
-msgid "`struct %s' declared in `for' loop initial declaration"
+msgid "'struct %s' declared in 'for' loop initial declaration"
msgstr "»struct %s« in Anfangsdeklaration einer »for«-Schleife deklariert"
-#: c-decl.c:6818
+#: c-decl.c:6202
#, c-format
-msgid "`union %s' declared in `for' loop initial declaration"
+msgid "'union %s' declared in 'for' loop initial declaration"
msgstr "»union %s« in Anfangsdeklaration einer »for«-Schleife deklariert"
-#: c-decl.c:6821
+#: c-decl.c:6205
#, c-format
-msgid "`enum %s' declared in `for' loop initial declaration"
+msgid "'enum %s' declared in 'for' loop initial declaration"
msgstr "»enum %s« in Anfangsdeklaration einer »for«-Schleife deklariert"
-#: c-decl.c:6829
-#, c-format
-msgid "declaration of non-variable `%s' in `for' loop initial declaration"
-msgstr "Deklaration der Nicht-Variablen »%s« in Anfangsdeklaration einer »for«-Schleife"
-
-#: c-decl.c:6831
-#, c-format
-msgid "declaration of static variable `%s' in `for' loop initial declaration"
-msgstr "Deklaration der »static«-Variablen »%s« in Anfangsdeklaration einer »for«-Schleife"
+#: c-decl.c:6213
+msgid "%Jdeclaration of non-variable '%D' in 'for' loop initial declaration"
+msgstr "%JDeklaration der Nicht-Variablen »%D« in Anfangsdeklaration einer »for«-Schleife"
-#: c-decl.c:6833
-#, c-format
-msgid "declaration of `extern' variable `%s' in `for' loop initial declaration"
-msgstr "Deklaration der »extern«-Variablen »%s« in Anfangsdeklaration einer »for«-Schleife"
+#: c-decl.c:6216
+msgid "%Jdeclaration of static variable '%D' in 'for' loop initial declaration"
+msgstr "%JDeklaration der »static«-Variablen »%D« in Anfangsdeklaration einer »for«-Schleife"
-#: c-format.c:109 c-format.c:191
-msgid "format string arg not a string type"
-msgstr "Format-Zeichenkettenargument ist kein Zeichenkettentyp"
+#: c-decl.c:6219
+msgid "%Jdeclaration of 'extern' variable '%D' in 'for' loop initial declaration"
+msgstr "%JDeklaration der »extern«-Variablen »%D« in Anfangsdeklaration einer »for«-Schleife"
-#: c-format.c:124
-msgid "args to be formatted is not '...'"
-msgstr "Zu formatierendes Argument ist nicht »...«"
+#: c-decl.c:6532
+msgid "%Jredefinition of global '%D'"
+msgstr "%JRedefinition des globalen »%D«"
-#: c-format.c:133
-msgid "strftime formats cannot format arguments"
-msgstr "strftime-Formate können keine Argumente formatieren"
+#: c-decl.c:6533
+msgid "%J'%D' previously defined here"
+msgstr "%J»%D« bereits hier verwendet"
-#: c-format.c:168 c-format.c:270
+#: c-format.c:94 c-format.c:210
msgid "format string has invalid operand number"
msgstr "Formatzeichenkette hat ungültige Operandenzahl"
-#: c-format.c:202
+#: c-format.c:111
msgid "function does not return string type"
msgstr "Funktion gibt keinen Zeichenkettentypen zurück"
-#: c-format.c:233
+#: c-format.c:140
+msgid "format string arg not a string type"
+msgstr "Format-Zeichenkettenargument ist kein Zeichenkettentyp"
+
+#: c-format.c:190
msgid "unrecognized format specifier"
-msgstr "Unerkannte Formatangabe"
+msgstr "unerkannte Formatangabe"
-#: c-format.c:246
+#: c-format.c:203
#, c-format
msgid "`%s' is an unrecognized format function type"
msgstr "»%s« ist ein nicht erkannter Formatfunktionstyp"
-#: c-format.c:280
+#: c-format.c:216
+msgid "'...' has invalid operand number"
+msgstr "»...« hat ungültige Operandenzahl"
+
+#: c-format.c:224
msgid "format string arg follows the args to be formatted"
msgstr "Format-Zeichenkettenargument folgt den zu formatierenden Argumenten"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "` ' flag"
msgstr "» «-Kennzeichen"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "the ` ' printf flag"
-msgstr "Das » «-printf-Kennzeichen"
+msgstr "das » «-printf-Kennzeichen"
-#: c-format.c:602 c-format.c:673
+#: c-format.c:566 c-format.c:590 c-format.c:627 c-format.c:683
msgid "`+' flag"
msgstr "»+«-Kennzeichen"
-#: c-format.c:602
+#: c-format.c:566 c-format.c:590 c-format.c:627
msgid "the `+' printf flag"
-msgstr "Das »+«-printf-Kennzeichen"
+msgstr "das »+«-printf-Kennzeichen"
-#: c-format.c:603 c-format.c:649
+#: c-format.c:567 c-format.c:591 c-format.c:628 c-format.c:659
msgid "`#' flag"
msgstr "»#«-Kennzeichen"
-#: c-format.c:603
+#: c-format.c:567 c-format.c:591 c-format.c:628
msgid "the `#' printf flag"
-msgstr "Das »#«-printf-Kennzeichen"
+msgstr "das »#«-printf-Kennzeichen"
-#: c-format.c:604 c-format.c:647
+#: c-format.c:568 c-format.c:592 c-format.c:657
msgid "`0' flag"
msgstr "»0«-Kennzeichen"
-#: c-format.c:604
+#: c-format.c:568 c-format.c:592
msgid "the `0' printf flag"
-msgstr "Das »0«-printf-Kennzeichen"
+msgstr "das »0«-printf-Kennzeichen"
-#: c-format.c:605 c-format.c:646 c-format.c:676
+#: c-format.c:569 c-format.c:593 c-format.c:656 c-format.c:686
msgid "`-' flag"
msgstr "»-«-Kennzeichen"
-#: c-format.c:605
+#: c-format.c:569 c-format.c:593
msgid "the `-' printf flag"
-msgstr "Das »-«-printf-Kennzeichen"
+msgstr "das »-«-printf-Kennzeichen"
-#: c-format.c:606 c-format.c:630
+#: c-format.c:570 c-format.c:640
msgid "`'' flag"
msgstr "»'«-Kennzeichen"
-#: c-format.c:606
+#: c-format.c:570
msgid "the `'' printf flag"
-msgstr "Das »'«-printf-Kennzeichen"
+msgstr "das »'«-printf-Kennzeichen"
-#: c-format.c:607 c-format.c:631
+#: c-format.c:571 c-format.c:641
msgid "`I' flag"
msgstr "»I«-Kennzeichen"
-#: c-format.c:607
+#: c-format.c:571
msgid "the `I' printf flag"
-msgstr "Das »I«-printf-Kennzeichen"
+msgstr "das »I«-printf-Kennzeichen"
-#: c-format.c:608 c-format.c:628 c-format.c:650 c-format.c:677 c-format.c:1702
+#: c-format.c:572 c-format.c:594 c-format.c:638 c-format.c:660 c-format.c:687
+#: c-format.c:1802
msgid "field width"
msgstr "Feldbreite"
-#: c-format.c:608
+#: c-format.c:572 c-format.c:594
msgid "field width in printf format"
msgstr "Feldbreite im printf-Format"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision"
-msgstr "Präzision"
+msgstr "Genauigkeit"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision in printf format"
-msgstr "Präzision im printf-Format"
+msgstr "Genauigkeit im printf-Format"
-#: c-format.c:610 c-format.c:629 c-format.c:680
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630 c-format.c:639
+#: c-format.c:690
msgid "length modifier"
msgstr "Längenmodifizierer"
-#: c-format.c:610
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630
msgid "length modifier in printf format"
msgstr "Längenmodifizierer im printf-Format"
-#: c-format.c:626
+#: c-format.c:636
msgid "assignment suppression"
msgstr "Zuweisungsunterdrückung"
-#: c-format.c:626
+#: c-format.c:636
msgid "the assignment suppression scanf feature"
-msgstr "Das scanf-Merkmal der Zuweisungsunterdrückung"
+msgstr "das scanf-Merkmal der Zuweisungsunterdrückung"
-#: c-format.c:627
+#: c-format.c:637
msgid "`a' flag"
msgstr "»a«-Kennzeichen"
-#: c-format.c:627
+#: c-format.c:637
msgid "the `a' scanf flag"
-msgstr "Das »a«-scanf-Kennzeichen"
+msgstr "das »a«-scanf-Kennzeichen"
-#: c-format.c:628
+#: c-format.c:638
msgid "field width in scanf format"
msgstr "Feldbreite im scanf-Format"
-#: c-format.c:629
+#: c-format.c:639
msgid "length modifier in scanf format"
msgstr "Längenmodifizierer im scanf-Format"
-#: c-format.c:630
+#: c-format.c:640
msgid "the `'' scanf flag"
-msgstr "Das »'«-scanf-Kennzeichen"
+msgstr "das »'«-scanf-Kennzeichen"
-#: c-format.c:631
+#: c-format.c:641
msgid "the `I' scanf flag"
-msgstr "Das »I«-scanf-Kennzeichen"
+msgstr "das »I«-scanf-Kennzeichen"
-#: c-format.c:645
+#: c-format.c:655
msgid "`_' flag"
msgstr "»_«-Kennzeichen"
-#: c-format.c:645
+#: c-format.c:655
msgid "the `_' strftime flag"
-msgstr "Das »_«-strftime-Kennzeichen"
+msgstr "das »_«-strftime-Kennzeichen"
-#: c-format.c:646
+#: c-format.c:656
msgid "the `-' strftime flag"
-msgstr "Das »-«-strftime-Kennzeichen"
+msgstr "das »-«-strftime-Kennzeichen"
-#: c-format.c:647
+#: c-format.c:657
msgid "the `0' strftime flag"
-msgstr "Das »0«-strftime-Kennzeichen"
+msgstr "das »0«-strftime-Kennzeichen"
-#: c-format.c:648 c-format.c:672
+#: c-format.c:658 c-format.c:682
msgid "`^' flag"
msgstr "»^«-Kennzeichen"
-#: c-format.c:648
+#: c-format.c:658
msgid "the `^' strftime flag"
-msgstr "Das »^«-strftime-Kennzeichen"
+msgstr "das »^«-strftime-Kennzeichen"
-#: c-format.c:649
+#: c-format.c:659
msgid "the `#' strftime flag"
-msgstr "Das »#«-strftime-Kennzeichen"
+msgstr "das »#«-strftime-Kennzeichen"
-#: c-format.c:650
+#: c-format.c:660
msgid "field width in strftime format"
msgstr "Feldbreite im strftime-Format"
-#: c-format.c:651
+#: c-format.c:661
msgid "`E' modifier"
msgstr "»E«-Modifizierer"
-#: c-format.c:651
+#: c-format.c:661
msgid "the `E' strftime modifier"
-msgstr "Der »E«-strftime-Modifizierer"
+msgstr "der »E«-strftime-Modifizierer"
-#: c-format.c:652
+#: c-format.c:662
msgid "`O' modifier"
msgstr "»O«-Modifizierer"
-#: c-format.c:652
+#: c-format.c:662
msgid "the `O' strftime modifier"
-msgstr "Der »O«-strftime-Modifizierer"
+msgstr "der »O«-strftime-Modifizierer"
-#: c-format.c:653
+#: c-format.c:663
msgid "the `O' modifier"
-msgstr "Der »O«-Modifizierer"
+msgstr "der »O«-Modifizierer"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character"
msgstr "Füllzeichen"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character in strfmon format"
msgstr "Füllzeichen im strfmon-Format"
-#: c-format.c:672
+#: c-format.c:682
msgid "the `^' strfmon flag"
-msgstr "Das »^«-strfmon-Kennzeichen"
+msgstr "das »^«-strfmon-Kennzeichen"
-#: c-format.c:673
+#: c-format.c:683
msgid "the `+' strfmon flag"
-msgstr "Das »+«-strfmon-Kennzeichen"
+msgstr "das »+«-strfmon-Kennzeichen"
-#: c-format.c:674
+#: c-format.c:684
msgid "`(' flag"
msgstr "»(«-Kennzeichen"
-#: c-format.c:674
+#: c-format.c:684
msgid "the `(' strfmon flag"
-msgstr "Das »(«-strfmon-Kennzeichen"
+msgstr "das »(«-strfmon-Kennzeichen"
-#: c-format.c:675
+#: c-format.c:685
msgid "`!' flag"
msgstr "»!«-Kennzeichen"
-#: c-format.c:675
+#: c-format.c:685
msgid "the `!' strfmon flag"
-msgstr "Das »!«-strfmon-Kennzeichen"
+msgstr "das »!«-strfmon-Kennzeichen"
-#: c-format.c:676
+#: c-format.c:686
msgid "the `-' strfmon flag"
-msgstr "Das »-«-strfmon-Kennzeichen"
+msgstr "das »-«-strfmon-Kennzeichen"
-#: c-format.c:677
+#: c-format.c:687
msgid "field width in strfmon format"
msgstr "Feldbreite im strfmon-Format"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision"
-msgstr "Linke Präzision"
+msgstr "linke Präzision"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision in strfmon format"
-msgstr "Linke Präzision im strfmon-Format"
+msgstr "linke Präzision im strfmon-Format"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision"
-msgstr "Rechte Präzision"
+msgstr "rechte Präzision"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision in strfmon format"
-msgstr "Rechte Präzision im strfmon-Format"
+msgstr "rechte Präzision im strfmon-Format"
-#: c-format.c:680
+#: c-format.c:690
msgid "length modifier in strfmon format"
msgstr "Längenmodifizierer im strfmon-Format"
-#: c-format.c:983
+#: c-format.c:1107
#, c-format
msgid "function might be possible candidate for `%s' format attribute"
msgstr "Funktion könnte möglicher Kandidat für Formatattribut »%s« sein"
-#: c-format.c:1107 c-format.c:1128 c-format.c:2112
+#: c-format.c:1223 c-format.c:1244 c-format.c:2212
msgid "missing $ operand number in format"
-msgstr "Fehlende $-Operandennummer im Format"
+msgstr "fehlende $-Operandennummer im Format"
-#: c-format.c:1138
+#: c-format.c:1254
#, c-format
msgid "%s does not support %%n$ operand number formats"
msgstr "%s unterstützt nicht %%n$-Operandennummerformate"
-#: c-format.c:1145
+#: c-format.c:1261
msgid "operand number out of range in format"
msgstr "Operandennummer außerhalb des Wertebereiches im Format"
-#: c-format.c:1168
+#: c-format.c:1284
#, c-format
msgid "format argument %d used more than once in %s format"
msgstr "Formatargument %d mehr als einmal im %s-Format verwendet"
-#: c-format.c:1218
+#: c-format.c:1331
#, c-format
msgid "format argument %d unused before used argument %d in $-style format"
msgstr "Formatargument %d nicht verwendet vor benutztem Argument %d im $-Stil-Format"
-#: c-format.c:1322
+#: c-format.c:1429
msgid "format not a string literal, format string not checked"
msgstr "Format ist kein Zeichenkettenliteral, Formatzeichenkette ungeprüft"
-#: c-format.c:1336
+#: c-format.c:1443
msgid "format not a string literal and no format arguments"
msgstr "Format ist kein Zeichenkettenliteral, und keine Formatargumente"
-#: c-format.c:1338
+#: c-format.c:1445
msgid "format not a string literal, argument types not checked"
msgstr "Format ist kein Zeichenkettenliteral, Argumenttypen ungeprüft"
-#: c-format.c:1351
+#: c-format.c:1458
msgid "too many arguments for format"
-msgstr "Zu viele Argumente für Format"
+msgstr "zu viele Argumente für Format"
-#: c-format.c:1354
+#: c-format.c:1461
msgid "unused arguments in $-style format"
-msgstr "Unbenutzte Argumente in $-Stil-Format"
+msgstr "unbenutzte Argumente in $-Stil-Format"
-#: c-format.c:1357
+#: c-format.c:1464
#, c-format
msgid "zero-length %s format string"
msgstr "Format-Zeichenkette %s der Länge null"
-#: c-format.c:1361
+#: c-format.c:1468
msgid "format is a wide character string"
msgstr "Format ist »wide character«-Zeichenkette"
-#: c-format.c:1364
+#: c-format.c:1471
msgid "unterminated format string"
-msgstr "Unbeendete Formatzeichenkette"
+msgstr "unbeendete Formatzeichenkette"
-#: c-format.c:1581
+#: c-format.c:1681
msgid "embedded `\\0' in format"
-msgstr "Eingebettetes »\\0« im Format"
+msgstr "eingebettetes »\\0« im Format"
-#: c-format.c:1596
+#: c-format.c:1696
#, c-format
msgid "spurious trailing `%%' in format"
-msgstr "Störendes letztes »%%« im Format"
+msgstr "störendes letztes »%%« im Format"
-#: c-format.c:1635 c-format.c:1872
+#: c-format.c:1735 c-format.c:1972
#, c-format
msgid "repeated %s in format"
-msgstr "Wiederholtes %s im Format"
+msgstr "wiederholtes %s im Format"
-#: c-format.c:1648
+#: c-format.c:1748
msgid "missing fill character at end of strfmon format"
-msgstr "Fehlendes Füllzeichen am Ende des strfmon-Formates"
+msgstr "fehlendes Füllzeichen am Ende des strfmon-Formates"
-#: c-format.c:1687 c-format.c:1786 c-format.c:2066 c-format.c:2119
+#: c-format.c:1787 c-format.c:1886 c-format.c:2166 c-format.c:2219
msgid "too few arguments for format"
-msgstr "Zu wenig Argumente für Format"
+msgstr "zu wenig Argumente für Format"
-#: c-format.c:1728
+#: c-format.c:1828
#, c-format
msgid "zero width in %s format"
msgstr "Breite null im Format %s"
-#: c-format.c:1747
+#: c-format.c:1847
#, c-format
msgid "empty left precision in %s format"
-msgstr "Leere linke Präzision im Format %s"
+msgstr "leere linke Präzision im Format %s"
-#: c-format.c:1801
+#: c-format.c:1901
msgid "field precision"
msgstr "Feldpräzision"
-#: c-format.c:1816
+#: c-format.c:1916
#, c-format
msgid "empty precision in %s format"
-msgstr "Fehlende Präzision im Format %s"
+msgstr "fehlende Präzision im Format %s"
-#: c-format.c:1856
+#: c-format.c:1956
#, c-format
msgid "%s does not support the `%s' %s length modifier"
msgstr "%s unterstützt nicht den Längenmodifizierer »%s« %s"
-#: c-format.c:1906
+#: c-format.c:2006
msgid "conversion lacks type at end of format"
msgstr "Konvertierung fehlt der Typ am Ende des Formates"
-#: c-format.c:1917
+#: c-format.c:2017
#, c-format
msgid "unknown conversion type character `%c' in format"
-msgstr "Unbekanntes Konvertierungstyp-Zeichen »%c« im Format"
+msgstr "unbekanntes Konvertierungstyp-Zeichen »%c« im Format"
-#: c-format.c:1920
+#: c-format.c:2020
#, c-format
msgid "unknown conversion type character 0x%x in format"
-msgstr "Unbekanntes Konvertierungstyp-Zeichen 0x%x im Format"
+msgstr "unbekanntes Konvertierungstyp-Zeichen 0x%x im Format"
-#: c-format.c:1927
+#: c-format.c:2027
#, c-format
msgid "%s does not support the `%%%c' %s format"
msgstr "%s unterstützt nicht das Format »%%%c« %s"
-#: c-format.c:1943
+#: c-format.c:2043
#, c-format
msgid "%s used with `%%%c' %s format"
msgstr "%s verwendet mit Format »%%%c« %s"
-#: c-format.c:1952
+#: c-format.c:2052
#, c-format
msgid "%s does not support %s"
msgstr "%s unterstützt nicht %s"
-#: c-format.c:1961
+#: c-format.c:2061
#, c-format
msgid "%s does not support %s with the `%%%c' %s format"
msgstr "%s unterstützt nicht %s mit dem Format »%%%c« %s"
-#: c-format.c:1994
+#: c-format.c:2094
#, c-format
msgid "%s ignored with %s and `%%%c' %s format"
msgstr "%s ignoriert mit %s und Format »%%%c« %s"
-#: c-format.c:1998
+#: c-format.c:2098
#, c-format
msgid "%s ignored with %s in %s format"
msgstr "%s ignoriert mit %s im Format %s"
-#: c-format.c:2004
+#: c-format.c:2104
#, c-format
msgid "use of %s and %s together with `%%%c' %s format"
-msgstr "Verwendung von %s und %s zusammen mit »%%%c« %s Format"
+msgstr "Verwendung von %s und %s zusammen mit Format »%%%c« %s"
-#: c-format.c:2008
+#: c-format.c:2108
#, c-format
msgid "use of %s and %s together in %s format"
msgstr "Verwendung von %s und %s zusammen im Format %s"
-#: c-format.c:2027
+#: c-format.c:2127
#, c-format
msgid "`%%%c' yields only last 2 digits of year in some locales"
msgstr "»%%%c« liefert in manchen Locales nur die letzten 2 Ziffern des Jahres"
-#: c-format.c:2030
+#: c-format.c:2130
#, c-format
msgid "`%%%c' yields only last 2 digits of year"
msgstr "»%%%c« liefert nur die letzten 2 Ziffern des Jahres"
#. The end of the format string was reached.
-#: c-format.c:2046
+#: c-format.c:2146
#, c-format
msgid "no closing `]' for `%%[' format"
-msgstr "Kein schließendes »]« für »%%[«-Format"
+msgstr "kein schließendes »]« für »%%[«-Format"
-#: c-format.c:2059
+#: c-format.c:2159
#, c-format
msgid "use of `%s' length modifier with `%c' type character"
msgstr "Verwendung des »%s«-Längenmodifizierers mit »%c«-Typ-Zeichen"
-#: c-format.c:2080
+#: c-format.c:2180
#, c-format
msgid "%s does not support the `%%%s%c' %s format"
msgstr "%s unterstützt nicht das Format »%%%s%c« %s"
-#: c-format.c:2095
+#: c-format.c:2195
msgid "operand number specified with suppressed assignment"
msgstr "Operandennummer mit unterdrückter Zuweisung angegeben"
-#: c-format.c:2097
+#: c-format.c:2197
msgid "operand number specified for format taking no argument"
-msgstr "Operandennummer angegeben für Format ohne Argumente"
+msgstr "Operandennummer für Format ohne Argumente angegeben"
-#: c-format.c:2211
+#: c-format.c:2309
#, c-format
msgid "writing through null pointer (arg %d)"
msgstr "Schreiben mit Null-Zeiger (Argument %d)"
-#: c-format.c:2220
+#: c-format.c:2318
#, c-format
msgid "reading through null pointer (arg %d)"
msgstr "Lesen mit Null-Zeiger (Argument %d)"
-#: c-format.c:2240
+#: c-format.c:2338
#, c-format
msgid "writing into constant object (arg %d)"
msgstr "Schreiben in konstantes Objekt (Argument %d)"
-#: c-format.c:2250
+#: c-format.c:2348
#, c-format
msgid "extra type qualifiers in format argument (arg %d)"
-msgstr "Zusätzliche Typqualifizierer in Format-Argument (Argument %d)"
+msgstr "zusätzliche Typqualifizierer in Format-Argument (Argument %d)"
-#: c-format.c:2257
+#: c-format.c:2355
#, c-format
msgid "format argument is not a pointer (arg %d)"
msgstr "Format-Argument ist kein Zeiger (Argument %d)"
-#: c-format.c:2259
+#: c-format.c:2357
#, c-format
msgid "format argument is not a pointer to a pointer (arg %d)"
msgstr "Format-Argument ist kein Zeiger auf einen Zeiger (Argument %d)"
-#: c-format.c:2330
+#: c-format.c:2433
msgid "pointer"
msgstr "Zeiger"
-#: c-format.c:2332
+#: c-format.c:2435
msgid "different type"
msgstr "anderer Typ"
-#: c-format.c:2353
+#: c-format.c:2456
#, c-format
msgid "%s is not type %s (arg %d)"
msgstr "%s ist nicht vom Typ %s (Argument %d)"
-#: c-format.c:2356
+#: c-format.c:2459
#, c-format
msgid "%s format, %s arg (arg %d)"
msgstr "%s Format, %s Argument (Argument %d)"
-#: c-lex.c:153
-msgid "YYDEBUG not defined"
-msgstr "YYDEBUG ist nicht definiert"
+#: c-format.c:2704
+msgid "args to be formatted is not '...'"
+msgstr "zu formatierendes Argument ist nicht »...«"
+
+#: c-format.c:2713
+msgid "strftime formats cannot format arguments"
+msgstr "strftime-Formate können keine Argumente formatieren"
+
+#: c-incpath.c:68
+#, c-format
+msgid "ignoring duplicate directory \"%s\"\n"
+msgstr "doppeltes Verzeichnis »%s« wird ignoriert\n"
-#: c-lex.c:293
+#: c-incpath.c:71
+#, c-format
+msgid " as it is a non-system directory that duplicates a system directory\n"
+msgstr " da es ein Nicht-Systemverzeichnis ist, das ein Systemverzeichnis dupliziert\n"
+
+#: c-incpath.c:75
+#, c-format
+msgid "ignoring nonexistent directory \"%s\"\n"
+msgstr "nicht vorhandenes Verzeichnis »%s« wird ignoriert\n"
+
+#: c-incpath.c:273
+#, c-format
+msgid "#include \"...\" search starts here:\n"
+msgstr "#include \"...\" - Suche beginnt hier:\n"
+
+#: c-incpath.c:277
+#, c-format
+msgid "#include <...> search starts here:\n"
+msgstr "#include <...> - Suche beginnt hier:\n"
+
+#: c-incpath.c:282
+#, c-format
+msgid "End of search list.\n"
+msgstr "Ende der Suchliste.\n"
+
+#: c-lex.c:240
msgid "badly nested C headers from preprocessor"
-msgstr "Schlecht geschachtelte C-Header vom Präprozessor"
+msgstr "schlecht geschachtelte C-Header vom Präprozessor"
-#: c-lex.c:336
+#: c-lex.c:281
#, c-format
msgid "ignoring #pragma %s %s"
-msgstr "Ignoriere #pragma %s %s"
+msgstr "ignoriere #pragma %s %s"
-#: c-lex.c:386
-#, c-format
-msgid "universal-character-name '\\U%08x' not valid in identifier"
-msgstr "Universeller Zeichenname »\\U%08x« nicht gültig in Bezeichner"
+#. ... or not.
+#: c-lex.c:385
+msgid "%Hstray '@' in program"
+msgstr "%Hverirrtes »@« im Programm"
-#: c-lex.c:632
+#: c-lex.c:393
#, c-format
-msgid "universal-character-name '\\u%04x' not valid in identifier"
-msgstr "Universeller Zeichenname »\\u%04x« nicht gültig in Bezeichner"
+msgid "missing terminating %c character"
+msgstr "fehlendes abschließendes Zeichen %c"
-#: c-lex.c:695
+#: c-lex.c:395
#, c-format
msgid "stray '%c' in program"
-msgstr "Verirrtes »%c« im Programm"
+msgstr "verirrtes »%c« im Programm"
-#: c-lex.c:697
+#: c-lex.c:397
#, c-format
msgid "stray '\\%o' in program"
-msgstr "Verirrtes »\\%o« im Programm"
+msgstr "verirrtes »\\%o« im Programm"
-#: c-lex.c:854
+#: c-lex.c:535
msgid "this decimal constant is unsigned only in ISO C90"
-msgstr "Diese Dezimalkonstante ist nur in ISO-C90 vorzeichenlos"
+msgstr "diese Dezimalkonstante ist nur in ISO-C90 vorzeichenlos"
-#: c-lex.c:857
+#: c-lex.c:538
msgid "this decimal constant would be unsigned in ISO C90"
-msgstr "Diese Dezimalkonstante wäre in ISO-C90 vorzeichenlos"
+msgstr "diese Dezimalkonstante wäre in ISO-C90 vorzeichenlos"
-#: c-lex.c:873
+#: c-lex.c:554
#, c-format
msgid "integer constant is too large for \"%s\" type"
msgstr "Ganzzahlkonstante ist zu groß für »%s«-Typ"
-#: c-lex.c:941
+#: c-lex.c:620
#, c-format
msgid "floating constant exceeds range of \"%s\""
-msgstr "Fließkommakonstante überschreitet Wertebereich von »%s«"
+msgstr "Gleitkommakonstante überschreitet Wertebereich von »%s«"
+
+#: c-lex.c:696
+msgid "traditional C rejects string constant concatenation"
+msgstr "traditionelles C weist Stringkonstantenverkettung zurück"
+
+#: c-objc-common.c:82
+msgid "%Jfunction '%F' can never be inlined because it is supressed using -fno-inline"
+msgstr "%JFunktion »%F« kann nie inline sein, da dies mit -fno-inline unterdrückt wird"
+
+#: c-objc-common.c:92
+msgid "%Jfunction '%F' can never be inlined because it might not be bound within this unit of translation"
+msgstr "%JFunktion »%F« kann nie inline sein, da sie nicht in diese Übersetzungseinheit gebunden wird"
+
+#: c-objc-common.c:100
+msgid "%Jfunction '%F' can never be inlined because it uses attributes conflicting with inlining"
+msgstr "%JFunktion »%F« kann nie inline sein, da sie mit inline in Konflikt stehende Attribute hat"
-#: c-lex.c:977 cpplex.c:330 cpplex.c:668 cpplex.c:1942
-msgid "ignoring invalid multibyte character"
-msgstr "Ungültiges Multibyte-Zeichen wird ignoriert"
+#: c-objc-common.c:115
+msgid "%Jfunction '%F' can never be inlined because it has pending sizes"
+msgstr "%JFunktion »%F« kann nie inline sein, da sie noch offene Größen hat"
-#: c-opts.c:355
+#: c-objc-common.c:128
+msgid "%Jnested function '%F' can never be inlined because it has possibly saved pending sizes"
+msgstr "%Jdie geschachtelte Funktion »%F« kann nie inline sein, da sie möglicherweise gespeicherte, noch offene Größen hat"
+
+#: c-opts.c:141
#, c-format
-msgid "missing argument to \"-%s\""
-msgstr "Fehlendes Argument für »-%s«"
+msgid "no class name specified with \"%s\""
+msgstr "kein Klassenname mit \"%s\" angegeben"
-#: c-opts.c:359
+#: c-opts.c:145
#, c-format
-msgid "no class name specified with \"-%s\""
-msgstr "Kein Klassenname mit »-%s« angegeben"
+msgid "assertion missing after \"%s\""
+msgstr "Behauptung fehlt hinter \"%s\""
-#: c-opts.c:366
+#: c-opts.c:150
#, c-format
-msgid "missing filename after \"-%s\""
-msgstr "Fehlender Dateiname hinter »-%s«"
+msgid "macro name missing after \"%s\""
+msgstr "Makroname fehlt hinter \"%s\""
-#: c-opts.c:371
+#: c-opts.c:157
#, c-format
-msgid "missing target after \"-%s\""
-msgstr "Fehlendes Ziel hinter »-%s«"
+msgid "missing path after \"%s\""
+msgstr "fehlender Pfad hinter \"%s\""
-#: c-opts.c:505
+#: c-opts.c:166
#, c-format
-msgid "options array incorrectly sorted: %s is before %s"
-msgstr "Optionenliste falsch sortiert: %s kommt vor %s"
+msgid "missing filename after \"%s\""
+msgstr "fehlender Dateiname hinter \"%s\""
-#: c-opts.c:550
+#: c-opts.c:171
#, c-format
-msgid "too many filenames given. Type %s --help for usage"
-msgstr "Zu viele Dateinamen angegeben. Geben sie »%s --help« ein für Hilfe"
+msgid "missing makefile target after \"%s\""
+msgstr "fehlendes Makefile-Ziel hinter \"%s\""
-#: c-opts.c:937
-msgid "-Wno-strict-prototypes is not supported in C++"
-msgstr "-Wno-strict-prototypes wird in C++ nicht unterstützt"
+#: c-opts.c:291
+msgid "-I- specified twice"
+msgstr "-I- doppelt angegeben"
-#: c-opts.c:1017
+#: c-opts.c:692
#, c-format
msgid "switch \"%s\" is no longer supported"
msgstr "Option »%s« wird nicht mehr unterstützt"
-#: c-opts.c:1033
-#, c-format
-msgid "switch \"%s\" is deprecated, please see documentation for details"
-msgstr "Option »%s« ist veraltet, schauen sie in die Dokumentation für Details"
-
-#: c-opts.c:1153
-msgid "-fhandle-exceptions has been renamed to -fexceptions (and is now on by default)"
+#: c-opts.c:816
+msgid "-fhandle-exceptions has been renamed -fexceptions (and is now on by default)"
msgstr "-fhandle-exceptions wurde in -fexceptions umbenannt (und ist nun voreingestellt)"
-#: c-opts.c:1273
+#: c-opts.c:982
msgid "output filename specified twice"
msgstr "Ausgabedatei doppelt angegeben"
-#: c-opts.c:1387
+#: c-opts.c:1106
msgid "-Wformat-y2k ignored without -Wformat"
msgstr "-Wformat-y2k wird ohne -Wformat ignoriert"
-#: c-opts.c:1389
+#: c-opts.c:1108
msgid "-Wformat-extra-args ignored without -Wformat"
msgstr "-Wformat-extra-args wird ohne -Wformat ignoriert"
-#: c-opts.c:1391
+#: c-opts.c:1110
msgid "-Wformat-zero-length ignored without -Wformat"
msgstr "-Wformat-zero-length wird ohne -Wformat ignoriert"
-#: c-opts.c:1393
+#: c-opts.c:1112
msgid "-Wformat-nonliteral ignored without -Wformat"
msgstr "-Wformat-nonliteral wird ohne -Wformat ignoriert"
-#: c-opts.c:1395
+#: c-opts.c:1114
msgid "-Wformat-security ignored without -Wformat"
msgstr "-Wformat-security wird ohne -Wformat ignoriert"
-#: c-opts.c:1397
+#: c-opts.c:1116
msgid "-Wmissing-format-attribute ignored without -Wformat"
msgstr "-Wmissing-format-attribute wird ohne -Wformat ignoriert"
-#: c-opts.c:1419
+#: c-opts.c:1130
#, c-format
-msgid "opening output file %s"
-msgstr "Ausgabedatei »%s« wird geöffnet"
+msgid "opening output file %s: %m"
+msgstr "Ausgabedatei »%s« wird geöffnet: %m"
-#: c-opts.c:1474
+#: c-opts.c:1135
#, c-format
-msgid "opening dependency file %s"
-msgstr "Abhängigkeitsdatei »%s« wird geöffnet"
+msgid "too many filenames given. Type %s --help for usage"
+msgstr "zu viele Dateinamen angegeben. Geben sie »%s --help« für Hilfe ein"
-#: c-opts.c:1484
-#, c-format
-msgid "closing dependency file %s"
-msgstr "Abhängigkeitsdatei »%s« wird geschlossen"
+#: c-opts.c:1213
+msgid "YYDEBUG not defined"
+msgstr "YYDEBUG ist nicht definiert"
-#: c-opts.c:1487
+#: c-opts.c:1260
#, c-format
-msgid "when writing output to %s"
-msgstr "beim Schreiben der Ausgabe nach %s"
+msgid "opening dependency file %s: %m"
+msgstr "Abhängigkeitsdatei »%s« wird geöffnet: %m"
-#: c-opts.c:1567
-msgid "to generate dependencies you must specify either -M or -MM"
-msgstr "Um Abhängigkeiten zu erzeugen müssen Sie entweder -M oder -MM angeben"
+#: c-opts.c:1270
+#, c-format
+msgid "closing dependency file %s: %m"
+msgstr "Abhängigkeitsdatei »%s« wird geschlossen: %m"
-#: c-opts.c:1715
+#: c-opts.c:1273
#, c-format
-msgid "\"-%c%s%s\" is valid for %s but not for %s"
-msgstr "\"-%c%s%s\" ist gültig für %s, aber nicht für %s"
+msgid "when writing output to %s: %m"
+msgstr "beim Schreiben der Ausgabe nach %s: %m"
-#. To keep the lines from getting too long for some compilers, limit
-#. to about 500 characters (6 lines) per chunk.
-#: c-opts.c:1726
-msgid ""
-"Switches:\n"
-" -include <file> Include the contents of <file> before other files\n"
-" -imacros <file> Accept definition of macros in <file>\n"
-" -iprefix <path> Specify <path> as a prefix for next two options\n"
-" -iwithprefix <dir> Add <dir> to the end of the system include path\n"
-" -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
-" -isystem <dir> Add <dir> to the start of the system include path\n"
-msgstr ""
-"Optionen:\n"
-" -include <Datei> Inhalt von <Datei> vor anderen Dateien einfügen\n"
-" -imacros <Datei> Die Definition von Makros in <Datei> akzeptieren\n"
-" -iprefix <Pfad> <Pfad> als Präfix für die nächsten beiden Optionen\n"
-" angeben\n"
-" -iwithprefix <Verz> <Verz> zum Ende des System-Einfüge-Pfades\n"
-" hinzufügen\n"
-" -iwithprefixbefore <Verz> <Verz> zum das Ende des Haupt-Einfüge-Pfades\n"
-" hinzufügen\n"
-" -isystem <Verz> <Verz> zum Anfang des System-Einfüge-Pfades\n"
-" hinzufügen\n"
-
-#: c-opts.c:1735
-msgid ""
-" -idirafter <dir> Add <dir> to the end of the system include path\n"
-" -I <dir> Add <dir> to the end of the main include path\n"
-" -I- Fine-grained include path control; see info docs\n"
-" -nostdinc Do not search system include directories\n"
-" (dirs specified with -isystem will still be used)\n"
-" -nostdinc++ Do not search system include directories for C++\n"
-" -o <file> Put output into <file>\n"
-msgstr ""
-" -idirafter <Verz> <Verz> zum Ende des System-Einfüge-Pfades\n"
-" hinzufügen\n"
-" -I <Verz> <Verz> zum Anfang des Haupt-Einfüge-Pfades\n"
-" hinzufügen\n"
-" -I- Feineinstellung des Einfügepfades; siehe info-\n"
-" Seiten\n"
-" -nostdinc Keine System-Einfüge-Verzeichnisse durchsuchen\n"
-" (-isystem Verzeichnisse werden aber verwendet)\n"
-" -nostdinc++ Keine System-Einfüge-Verzeichnisse nach C++\n"
-" durchsuchen\n"
-" -o <Datei> Ausgabe in <Datei> leiten\n"
-
-#: c-opts.c:1744
-msgid ""
-" -trigraphs Support ISO C trigraphs\n"
-" -std=<std name> Specify the conformance standard; one of:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Inhibit warning messages\n"
-" -W[no-]trigraphs Warn if trigraphs are encountered\n"
-" -W[no-]comment{s} Warn if one comment starts inside another\n"
-msgstr ""
-" -trigraphs ISO-C-»Trigraphs« unterstützen\n"
-" -std=<Name> Standardkonformität angeben; eines von:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Warnungen unterdrücken\n"
-" -W[no-]trigraphs Warnungen bei »Trigraphs«\n"
-" -W[no-]comment{s} Warnungen bei geschachtelten Kommentaren\n"
-
-#: c-opts.c:1753
-msgid ""
-" -W[no-]traditional Warn about features not present in traditional C\n"
-" -W[no-]undef Warn if an undefined macro is used by #if\n"
-" -W[no-]import Warn about the use of the #import directive\n"
-msgstr ""
-" -W[no-]traditional Warnungen bei Merkmalen von traditionellem C\n"
-" -W[no-]undef Warnungen bei Verwendung undefinierter Makros\n"
-" mit #if\n"
-" -W[no-]import Warnungen über die Verwendung der Direktive\n"
-" #import\n"
+#: c-opts.c:1343
+msgid "to generate dependencies you must specify either -M or -MM"
+msgstr "um Abhängigkeiten zu erzeugen, müssen Sie entweder -M oder -MM angeben"
-#: c-opts.c:1758
-msgid ""
-" -W[no-]error Treat all warnings as errors\n"
-" -W[no-]system-headers Do not suppress warnings from system headers\n"
-" -W[no-]all Enable most preprocessor warnings\n"
-msgstr ""
-" -W[no-]error Alle Warnungen als Fehler behandeln\n"
-" -W[no-]system-headers Keine Warnungen von System-Headern unterdrücken\n"
-" -W[no-]all Die meisten Präprozessorwarnungen einschalten\n"
+#: c-opts.c:1403
+msgid "<built-in>"
+msgstr "<eingebaut>"
-#: c-opts.c:1763
-msgid ""
-" -M Generate make dependencies\n"
-" -MM As -M, but ignore system header files\n"
-" -MD Generate make dependencies and compile\n"
-" -MMD As -MD, but ignore system header files\n"
-" -MF <file> Write dependency output to the given file\n"
-" -MG Treat missing header file as generated files\n"
-msgstr ""
-" -M Make-Abhängigkeiten generieren\n"
-" -MM Wie -M, aber System-Header ignorieren\n"
-" -MD Make-Abhängigkeiten generieren und kompilieren\n"
-" -MMD Wie -MD, aber System-Header ignorieren\n"
-" -MF <Datei> Abhängigkeiten-Ausgabe in die angegebene Datei\n"
-" schreiben\n"
-" -MG Fehlende Header-Dateien als generierte Dateien\n"
-" behandeln\n"
-
-#: c-opts.c:1771
-msgid ""
-" -MP\t\t\t Generate phony targets for all headers\n"
-" -MQ <target> Add a MAKE-quoted target\n"
-" -MT <target> Add an unquoted target\n"
-msgstr ""
-" -MP\t\t\t Generiere falsche (phony) Ziele für Header\n"
-" -MQ <Ziel> MAKE-zitiertes Ziel hinzufügen\n"
-" -MT <Ziel> Ein unzitiertes Ziel hinzufügen\n"
+#: c-opts.c:1418
+msgid "<command line>"
+msgstr "<Kommandozeile>"
-#: c-opts.c:1776
-msgid ""
-" -D<macro> Define a <macro> with string '1' as its value\n"
-" -D<macro>=<val> Define a <macro> with <val> as its value\n"
-" -A<question>=<answer> Assert the <answer> to <question>\n"
-" -A-<question>=<answer> Disable the <answer> to <question>\n"
-" -U<macro> Undefine <macro> \n"
-" -v Display the version number\n"
-msgstr ""
-" -D<Makro> <Makro> mit Wert \"1\" definieren\n"
-" -D<Makro>=<Wert> <Makro> mit Wert <Wert> definieren\n"
-" -A<Frage>=<Antwort> Die <Antwort> auf <Frage> annehmen\n"
-" -A-<Frage>=<Antwort> Die <Antwort> auf <Frage> abschalten\n"
-" -U<Makro> <Makro> löschen\n"
-" -v Version anzeigen\n"
-
-#: c-opts.c:1784
-msgid ""
-" -H Print the name of header files as they are used\n"
-" -C Do not discard comments\n"
-" -dM Display a list of macro definitions active at end\n"
-" -dD Preserve macro definitions in output\n"
-" -dN As -dD except that only the names are preserved\n"
-" -dI Include #include directives in the output\n"
-msgstr ""
-" -H Namen von Header-Dateien anzeigen wenn sie\n"
-" verwendet werden\n"
-" -C Kommentare nicht streichen\n"
-" -dM Am Ende eine Liste von Makrodefinitionen anzeigen\n"
-" -dD Makrodefinitionen in der Ausgabe bewahren\n"
-" -dN Wie -dD nur dass die Namen bewahrt werden\n"
-" -dI #include-Anweisungen in die Ausgabe einfügen\n"
-
-#: c-opts.c:1792
-msgid ""
-" -f[no-]preprocessed Treat the input file as already preprocessed\n"
-" -ftabstop=<number> Distance between tab stops for column reporting\n"
-" -P Do not generate #line directives\n"
-" -remap Remap file names when including files\n"
-" --help Display this information\n"
-msgstr ""
-" -f[no-]preprocessed Eingabedatei als bereits vorverarbeitet behandeln\n"
-" -ftabstop=<Zahl> Tabulatorenabstand für Spaltenmeldungen\n"
-" -P Keine #line-Direktiven generieren\n"
-" -remap Dateinamen beim Einfügen neu abbilden\n"
-" --help Diese Information anzeigen\n"
+#: c-opts.c:1502
+msgid "too late for # directive to set debug directory"
+msgstr "zu spät für »#«-Direktive, um Debug-Verzeichnis festzulegen"
#. Like YYERROR but do call yyerror.
-#: c-parse.y:55 parse.y:48 objc-parse.y:55
+#: c-parse.y:54 c-parse.c:5381 gengtype-yacc.c:1514 java/parse-scan.c:3063
+#: java/parse.c:6067 objc/objc-parse.y:54 objc/objc-parse.c:6644
msgid "syntax error"
msgstr "Syntaxfehler"
-#: /usr/share/bison/bison.simple:179
+#: c-parse.c:2118 gengtype-yacc.c:545 java/parse-scan.c:1932 java/parse.c:2875
+#: objc/objc-parse.c:2717
msgid "syntax error: cannot back up"
-msgstr "Syntaxfehler: Kann nicht zurücksetzen"
+msgstr "Syntaxfehler: es kann nicht zurückgesetzt werden"
-#: c-parse.y:325 objc-parse.y:346
+#: c-parse.y:320 objc/objc-parse.y:344
msgid "ISO C forbids an empty source file"
msgstr "ISO-C erlaubt keine leeren Quelldateien"
-#: c-parse.y:366 c-typeck.c:6916 objc-parse.y:388
+#: c-parse.y:349 c-typeck.c:6217 objc/objc-parse.y:374
msgid "argument of `asm' is not a constant string"
msgstr "Argument von »asm« ist keine konstante Zeichenkette"
-#: c-parse.y:374 objc-parse.y:396
+#: c-parse.y:357 objc/objc-parse.y:382
msgid "ISO C forbids data definition with no type or storage class"
msgstr "ISO-C verbietet Datendefinition ohne Typ und Speicherklasse"
-#: c-parse.y:376 objc-parse.y:398
+#: c-parse.y:359 objc/objc-parse.y:384
msgid "data definition has no type or storage class"
msgstr "Datendefinition hat keinen Typ oder Speicherklasse"
-#: c-parse.y:389 objc-parse.y:411
+#: c-parse.y:372 objc/objc-parse.y:397
msgid "ISO C does not allow extra `;' outside of a function"
msgstr "ISO-C erlaubt kein extra »;« außerhalb einer Funktion"
-#: c-parse.y:449 cppexp.c:1312
+#: c-parse.y:429 cppexp.c:1253
msgid "traditional C rejects the unary plus operator"
-msgstr "Traditionelles C weist den unären Plus-Operator zurück"
+msgstr "traditionelles C weist den unären Plus-Operator zurück"
-#: c-parse.y:496 objc-parse.y:518
+#: c-parse.y:476 objc/objc-parse.y:501
msgid "`sizeof' applied to a bit-field"
-msgstr "»sizeof«-Operator auf ein Bitfeld angewendet"
+msgstr "»sizeof«-Operator auf ein Bitfeld angewandt"
-#: c-parse.y:583 objc-parse.y:605
+#: c-parse.y:563 objc/objc-parse.y:588
msgid "ISO C forbids omitting the middle term of a ?: expression"
msgstr "ISO-C verbietet das Weglassen des mittleren Terms eines ?:-Ausdruckes"
-#: c-parse.y:632 objc-parse.y:654
+#: c-parse.y:611 objc/objc-parse.y:636
msgid "ISO C89 forbids compound literals"
msgstr "ISO-C89 verbietet zusammengesetzte Literale"
-#: c-parse.y:646 objc-parse.y:668
+#: c-parse.y:625 objc/objc-parse.y:650
msgid "ISO C forbids braced-groups within expressions"
-msgstr "ISO-C verbietet geklammerte Gruppen innerhalb von Ausrücken"
+msgstr "ISO-C verbietet geklammerte Gruppen innerhalb von Ausdrücken"
-#: c-parse.y:677 objc-parse.y:699
+#: c-parse.y:653 objc/objc-parse.y:678
msgid "first argument to __builtin_choose_expr not a constant"
-msgstr "Das erste Argument für __builtin_choose_expr ist keine Konstante"
+msgstr "das erste Argument für __builtin_choose_expr ist keine Konstante"
-#: c-parse.y:721 objc-parse.y:767
+#: c-parse.y:696 objc/objc-parse.y:737
msgid "traditional C rejects ISO C style function definitions"
-msgstr "Traditionelles C weist Funktionsdefinitionen im ISO-C-Stil zurück"
-
-#: c-parse.y:985 c-parse.y:991 c-parse.y:997 c-parse.y:1003 c-parse.y:1024
-#: c-parse.y:1030 c-parse.y:1036 c-parse.y:1042 c-parse.y:1075 c-parse.y:1081
-#: c-parse.y:1087 c-parse.y:1093 c-parse.y:1138 c-parse.y:1144 c-parse.y:1150
-#: c-parse.y:1156 parse.y:1933 parse.y:1940 parse.y:1975 objc-parse.y:1031
-#: objc-parse.y:1037 objc-parse.y:1043 objc-parse.y:1049 objc-parse.y:1070
-#: objc-parse.y:1076 objc-parse.y:1082 objc-parse.y:1088 objc-parse.y:1121
-#: objc-parse.y:1127 objc-parse.y:1133 objc-parse.y:1139 objc-parse.y:1184
-#: objc-parse.y:1190 objc-parse.y:1196 objc-parse.y:1202
+msgstr "traditionelles C weist Funktionsdefinitionen im ISO-C-Stil zurück"
+
+#: c-parse.y:699 c-parse.y:705 objc/objc-parse.y:740 objc/objc-parse.y:746
+msgid "old-style parameter declaration"
+msgstr "Parameterdeklaration alten Stils"
+
+#: c-parse.y:967 c-parse.y:973 c-parse.y:979 c-parse.y:985 c-parse.y:1006
+#: c-parse.y:1012 c-parse.y:1018 c-parse.y:1024 c-parse.y:1057 c-parse.y:1063
+#: c-parse.y:1069 c-parse.y:1075 c-parse.y:1120 c-parse.y:1126 c-parse.y:1132
+#: c-parse.y:1138 objc/objc-parse.y:1008 objc/objc-parse.y:1014
+#: objc/objc-parse.y:1020 objc/objc-parse.y:1026 objc/objc-parse.y:1047
+#: objc/objc-parse.y:1053 objc/objc-parse.y:1059 objc/objc-parse.y:1065
+#: objc/objc-parse.y:1098 objc/objc-parse.y:1104 objc/objc-parse.y:1110
+#: objc/objc-parse.y:1116 objc/objc-parse.y:1161 objc/objc-parse.y:1167
+#: objc/objc-parse.y:1173 objc/objc-parse.y:1179
#, c-format
msgid "`%s' is not at beginning of declaration"
msgstr "»%s« ist nicht am Beginn einer Deklaration"
-#: c-parse.y:1441 objc-parse.y:1496
+#: c-parse.y:1300 objc/objc-parse.y:1350
+msgid "`typeof' applied to a bit-field"
+msgstr "»typeof« auf ein Bitfeld angewandt"
+
+#: c-parse.y:1427 objc/objc-parse.y:1477
msgid "ISO C forbids empty initializer braces"
msgstr "ISO-C verbietet leere Initialisierungsklammern"
-#: c-parse.y:1455 objc-parse.y:1510
+#: c-parse.y:1441 objc/objc-parse.y:1491
msgid "ISO C89 forbids specifying subobject to initialize"
msgstr "ISO-C89 verbietet die Angabe von zu initialisierenden Unterobjekten"
-#: c-parse.y:1458 objc-parse.y:1513
+#: c-parse.y:1444 objc/objc-parse.y:1494
msgid "obsolete use of designated initializer without `='"
-msgstr "Veraltete Verwendung einer bestimmten Initialisierung ohne »=«"
+msgstr "veraltete Verwendung einer bestimmten Initialisierung ohne »=«"
-#: c-parse.y:1462 objc-parse.y:1517
+#: c-parse.y:1448 objc/objc-parse.y:1498
msgid "obsolete use of designated initializer with `:'"
-msgstr "Veraltete Verwendung einer bestimmten Initialisierung mit »:«"
+msgstr "veraltete Verwendung einer bestimmten Initialisierung mit »:«"
-#: c-parse.y:1489 objc-parse.y:1544
+#: c-parse.y:1475 objc/objc-parse.y:1525
msgid "ISO C forbids specifying range of elements to initialize"
msgstr "ISO-C verbietet die Angabe eines zu initialisierenden Wertebereiches"
-#: c-parse.y:1497 c-parse.y:1528 objc-parse.y:1552 objc-parse.y:1583
+#: c-parse.y:1483 c-parse.y:1514 objc/objc-parse.y:1533 objc/objc-parse.y:1564
msgid "ISO C forbids nested functions"
msgstr "ISO-C verbietet verschachtelte Funktionen"
-#: c-parse.y:1703 objc-parse.y:1760
+#: c-parse.y:1691 objc/objc-parse.y:1743
msgid "ISO C forbids forward references to `enum' types"
msgstr "ISO-C verbietet Vorwärts-Referenzen auf »enum«-Typen"
-#: c-parse.y:1715 parse.y:2411 objc-parse.y:1772
+#: c-parse.y:1703 cp/parser.c:9282 objc/objc-parse.y:1755
msgid "comma at end of enumerator list"
msgstr "Komma am Ende der Aufzählungsliste"
-#: c-parse.y:1723 objc-parse.y:1780
+#: c-parse.y:1723 objc/objc-parse.y:1775
msgid "no semicolon at end of struct or union"
-msgstr "Kein Semikolon am Ende von »struct« oder »union«"
+msgstr "kein Semikolon am Ende von »struct« oder »union«"
-#: c-parse.y:1732 objc-parse.y:1789 objc-parse.y:2864
+#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846
msgid "extra semicolon in struct or union specified"
-msgstr "Zusätzliches Semikolon in »struct« oder »union« angegeben"
+msgstr "zusätzliches Semikolon in »struct« oder »union« angegeben"
-#: c-parse.y:1745 objc-parse.y:1816
+#: c-parse.y:1745 objc/objc-parse.y:1800
msgid "ISO C doesn't support unnamed structs/unions"
msgstr "ISO-C unterstützt keine namenlosen structs/unions"
-#: c-parse.y:1754 objc-parse.y:1825
+#: c-parse.y:1754 objc/objc-parse.y:1809
msgid "ISO C forbids member declarations with no members"
-msgstr "ISO-C verbietet Member-Deklarationen ohne Member"
+msgstr "ISO-C verbietet Elementdeklarationen ohne Elemente"
-#: c-parse.y:1913 objc-parse.y:1984
-msgid "deprecated use of label at end of compound statement"
-msgstr "Veraltete Verwendung einer Marke am Ende einer Verbundanweisung"
+#: c-parse.y:1915 objc/objc-parse.y:1970
+msgid "label at end of compound statement"
+msgstr "Marke am Ende einer Verbundanweisung"
-#: c-parse.y:1930 objc-parse.y:2001
-msgid "ISO C89 forbids mixed declarations and code"
-msgstr "ISO-C89 verbietet gemischte Deklarationen und Kode"
+#: c-parse.y:1934 objc/objc-parse.y:1989
+msgid "ISO C90 forbids mixed declarations and code"
+msgstr "ISO-C90 verbietet gemischte Deklarationen und Code"
-#: c-parse.y:2005 objc-parse.y:2080
+#: c-parse.y:2012 objc/objc-parse.y:2069
msgid "ISO C forbids label declarations"
msgstr "ISO-C verbietet Markendeklarationen"
-#: c-parse.y:2055 parse.y:1638 objc-parse.y:2130
+#: c-parse.y:2062 objc/objc-parse.y:2119
msgid "braced-group within expression allowed only inside a function"
-msgstr "Geklammerte Gruppe innerhalb Ausdruck nur in Funktion erlaubt"
+msgstr "geklammerte Gruppe innerhalb eines Ausdrucks nur in Funktion erlaubt"
-#: c-parse.y:2182 objc-parse.y:2257
+#: c-parse.y:2184 objc/objc-parse.y:2241
msgid "empty body in an else-statement"
-msgstr "Leerer Körper in einer else-Anweisung"
+msgstr "leerer Körper in einer else-Anweisung"
+
+#: c-parse.y:2192 objc/objc-parse.y:2249
+msgid "%Hempty body in an if-statement"
+msgstr "%Hleerer Körper in einer if-Anweisung"
-#: c-parse.y:2303 objc-parse.y:2378
+#: c-parse.y:2272 cp/parser.c:6028 objc/objc-parse.y:2329
+msgid "break statement not within loop or switch"
+msgstr "break-Anweisung nicht innerhalb einer Schleife oder »switch«"
+
+#: c-parse.y:2281 cp/parser.c:6039 objc/objc-parse.y:2338
+msgid "continue statement not within a loop"
+msgstr "continue-Anweisung nicht innerhalb einer Schleife"
+
+#: c-parse.y:2323 objc/objc-parse.y:2380
msgid "ISO C forbids `goto *expr;'"
msgstr "ISO-C verbietet »goto *expr;«"
-#: c-parse.y:2403 objc-parse.y:2478
-msgid "ISO C forbids forward parameter declarations"
-msgstr "ISO-C verbietet Vorwärtsdeklaration für Parameter"
-
#. Gcc used to allow this as an extension. However, it does
#. not work for all targets, and thus has been disabled.
#. Also, since func (...) and func () are indistinguishable,
#. it caused problems with the code in expand_builtin which
#. tries to verify that BUILT_IN_NEXT_ARG is being used
#. correctly.
-#: c-parse.y:2429 objc-parse.y:2504
+#: c-parse.y:2440 objc/objc-parse.y:2548
msgid "ISO C requires a named argument before `...'"
msgstr "ISO-C erfordert ein benanntes Argument vor »...«"
-#: c-parse.y:2526 objc-parse.y:2601
+#: c-parse.y:2538 objc/objc-parse.y:2646
msgid "`...' in old-style identifier list"
msgstr "»...« in einer Bezeichnerliste alten Stils"
-#: /usr/share/bison/bison.simple:795
-msgid "parse error; also virtual memory exhausted"
-msgstr "Fehler beim Parsen; auch virtueller Speicher verbraucht"
+#: c-parse.c:5377 gengtype-yacc.c:1510 java/parse-scan.c:3059
+#: java/parse.c:6063 objc/objc-parse.c:6640
+msgid "syntax error; also virtual memory exhausted"
+msgstr "Syntaxfehler; auch virtueller Speicher verbraucht"
-#: /usr/share/bison/bison.simple:799 cp/spew.c:364
-msgid "parse error"
-msgstr "Fehler beim Parsen"
-
-#: /usr/share/bison/bison.simple:924
+#: c-parse.c:5495 gengtype-yacc.c:1628 java/parse-scan.c:3177
+#: java/parse.c:6181 objc/objc-parse.c:6758
msgid "parser stack overflow"
msgstr "Parser-Keller-Ãœberlauf"
-#: c-parse.y:2838 cp/spew.c:1525 objc-parse.y:3537
+#: c-parse.y:2968 objc/objc-parse.y:3663
#, c-format
-msgid "%s at end of input"
-msgstr "%s am Ende der Eingabe"
+msgid "syntax error at '%s' token"
+msgstr "Syntaxfehler beim Token »%s«"
-#: c-parse.y:2844 cp/spew.c:1533 objc-parse.y:3543
+#: c-pch.c:112
#, c-format
-msgid "%s before %s'%c'"
-msgstr "%s vor %s'%c'"
+msgid "can't create precompiled header %s: %m"
+msgstr "der vorkompilierte Header »%s« kann nicht erzeugt werden: %m"
-#: c-parse.y:2846 cp/spew.c:1535 objc-parse.y:3545
+#: c-pch.c:132
#, c-format
-msgid "%s before %s'\\x%x'"
-msgstr "%s vor %s'\\x%x'"
+msgid "can't write to %s: %m"
+msgstr "in %s kann nicht geschrieben werden: %m"
-#: c-parse.y:2850 cp/spew.c:1542 objc-parse.y:3549
+#: c-pch.c:138
#, c-format
-msgid "%s before string constant"
-msgstr "%s vor Zeichenkettenkonstante"
+msgid "`%s' is not a valid output file"
+msgstr "»%s« ist keine gültige Ausgabedatei"
-#: c-parse.y:2852 cp/spew.c:1544 objc-parse.y:3551
+#: c-pch.c:167 c-pch.c:183 c-pch.c:195
#, c-format
-msgid "%s before numeric constant"
-msgstr "%s vor numerischer Konstante"
+msgid "can't write %s: %m"
+msgstr "%s kann nicht geschrieben werden: %m"
-#: c-parse.y:2854 objc-parse.y:3553
+#: c-pch.c:173
#, c-format
-msgid "%s before \"%s\""
-msgstr "%s vor \"%s\""
+msgid "can't seek in %s: %m"
+msgstr "in %s kann nicht positioniert werden: %m"
-#: c-parse.y:2856 objc-parse.y:3555
+#: c-pch.c:181 c-pch.c:221 c-pch.c:249 c-pch.c:254 c-pch.c:324
#, c-format
-msgid "%s before '%s' token"
-msgstr "%s vor »%s«"
+msgid "can't read %s: %m"
+msgstr "%s kann nicht gelesen werden: %m"
-#: c-parse.y:2921
-msgid "traditional C rejects string concatenation"
-msgstr "Traditionelles C weist Stringverkettung zurück"
+#: c-pch.c:234
+#, c-format
+msgid "%s: not compatible with this GCC version"
+msgstr "%s: nicht kompatibel mit dieser Version des GCC"
-#: c-parse.y:3047 objc-parse.y:3779
+#. It's a PCH for the wrong language.
+#: c-pch.c:237
#, c-format
-msgid "syntax error at '%s' token"
-msgstr "Syntaxfehler bei »%s«"
+msgid "%s: not for %s"
+msgstr "%s: nicht für %s"
+
+#. Not any kind of PCH.
+#: c-pch.c:241
+#, c-format
+msgid "%s: not a PCH file"
+msgstr "%s: keine PCH-Datei"
+
+#: c-pch.c:260
+#, c-format
+msgid "%s: created on host `%.*s', but used on host `%s'"
+msgstr "%s: auf Rechner »%.*s« erzeugt, aber auf Rechner »%s« verwendet"
+
+#: c-pch.c:270
+#, c-format
+msgid "%s: created for target `%.*s', but used for target `%s'"
+msgstr "%s: für das Ziel »%.*s« erzeugt, aber für das Ziel »%s« verwendet"
-#: c-pragma.c:107
+#: c-pch.c:283
+#, c-format
+msgid "%s: created by version `%.*s', but this is version `%s'"
+msgstr "%s: durch Version »%.*s« erzeugt, aber dies ist Version »%s«"
+
+#: c-pch.c:299
+#, c-format
+msgid "%s: created with -g%s, but used with -g%s"
+msgstr "%s: mit -g%s erzeugt, aber mit -g%s verwendet"
+
+#: c-pch.c:313
+#, c-format
+msgid "%s: had text segment at different address"
+msgstr "%s: Textsegment trat an anderer Adresse auf"
+
+#: c-pch.c:330 cpperror.c:176 gcc.c:6547
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: c-pch.c:361
+msgid "calling fdopen"
+msgstr "fdopen wird aufgerufen"
+
+#: c-pch.c:369 c-pch.c:381
+msgid "reading"
+msgstr "Lesen"
+
+#: c-pragma.c:106
msgid "#pragma pack (pop) encountered without matching #pragma pack (push, <n>)"
msgstr "#pragma pack (pop) gefunden ohne passendes #pragma pack (push, <n>)"
-#: c-pragma.c:125
+#: c-pragma.c:124
#, c-format
msgid "#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s, <n>)"
msgstr "#pragma pack(pop, %s) gefunden ohne passendes #pragma pack(push, %s, <n>)"
-#: c-pragma.c:145
+#: c-pragma.c:144
msgid "#pragma pack(push[, id], <n>) is not supported on this target"
msgstr "#pragma pack(push[, id], <n>) wird von diesem Ziel nicht unterstützt"
-#: c-pragma.c:147
+#: c-pragma.c:146
msgid "#pragma pack(pop[, id], <n>) is not supported on this target"
msgstr "#pragma pack(pop[, id], <n>) wird von diesem Ziel nicht unterstützt"
-#: c-pragma.c:167
+#: c-pragma.c:165
msgid "missing '(' after '#pragma pack' - ignored"
-msgstr "Fehlendes »(« hinter »#pragma pack« - ignoriert"
+msgstr "fehlendes »(« hinter »#pragma pack« - ignoriert"
-#: c-pragma.c:180 c-pragma.c:230
+#: c-pragma.c:178 c-pragma.c:228
msgid "malformed '#pragma pack' - ignored"
-msgstr "Falsch geformtes »#pragma pack« - ignoriert"
+msgstr "falsch geformtes »#pragma pack« - ignoriert"
-#: c-pragma.c:185
+#: c-pragma.c:183
msgid "malformed '#pragma pack(push[, id], <n>)' - ignored"
-msgstr "Falsch geformtes »#pragma pack(push[, id], <n>)« - ignoriert"
+msgstr "falsch geformtes »#pragma pack(push[, id], <n>)« - ignoriert"
-#: c-pragma.c:187
+#: c-pragma.c:185
msgid "malformed '#pragma pack(pop[, id])' - ignored"
-msgstr "Falsch geformtes »#pragma pack(pop[, id])« - ignoriert"
+msgstr "falsch geformtes »#pragma pack(pop[, id])« - ignoriert"
-#: c-pragma.c:196
+#: c-pragma.c:194
#, c-format
msgid "unknown action '%s' for '#pragma pack' - ignored"
-msgstr "Unbekannte Aktion »%s« für »#pragma pack« - ignoriert"
+msgstr "unbekannte Aktion »%s« für »#pragma pack« - ignoriert"
-#: c-pragma.c:233
+#: c-pragma.c:231
msgid "junk at end of '#pragma pack'"
msgstr "Ausschuss am Ende von »#pragma pack«"
-#: c-pragma.c:247
+#: c-pragma.c:245
#, c-format
msgid "alignment must be a small power of two, not %d"
msgstr "Ausrichtung muss eine kleine Zweierpotenz sein, nicht %d"
-#: c-pragma.c:280
-#, c-format
-msgid "applying #pragma weak `%s' after first use results in unspecified behavior"
-msgstr "Anwendung von #pragma weak »%s« nach erster Benutzung führt zu nicht spezifiziertem Verhalten"
+#: c-pragma.c:278
+msgid "%Japplying #pragma weak '%D' after first use results in unspecified behavior"
+msgstr "%JAnwendung von #pragma weak »%D« nach erster Benutzung führt zu nicht spezifiziertem Verhalten"
-#: c-pragma.c:328 c-pragma.c:333
+#: c-pragma.c:325 c-pragma.c:330
msgid "malformed #pragma weak, ignored"
-msgstr "Falsch geformtes #pragma weak, ignoriert"
+msgstr "falsch geformtes #pragma weak, ignoriert"
-#: c-pragma.c:337
+#: c-pragma.c:334
msgid "junk at end of #pragma weak"
msgstr "Ausschuss am Ende von #pragma weak"
-#: c-pragma.c:372 c-pragma.c:377
+#: c-pragma.c:367 c-pragma.c:372
msgid "malformed #pragma redefine_extname, ignored"
-msgstr "Falsch geformtes #pragma redefine_extname, ignoriert"
+msgstr "falsch geformtes #pragma redefine_extname, ignoriert"
-#: c-pragma.c:382
+#: c-pragma.c:377
msgid "junk at end of #pragma redefine_extname"
msgstr "Ausschuss am Ende von #pragma redefine_extname"
-#: c-pragma.c:389 c-pragma.c:470
+#: c-pragma.c:384 c-pragma.c:462
msgid "#pragma redefine_extname conflicts with declaration"
msgstr "#pragma redefine_extname steht in Konflikt mit Deklaration"
-#: c-pragma.c:420
+#: c-pragma.c:413
msgid "malformed #pragma extern_prefix, ignored"
-msgstr "Falsch geformtes #pragma extern_prefix, ignoriert"
+msgstr "falsch geformtes #pragma extern_prefix, ignoriert"
-#: c-pragma.c:425
+#: c-pragma.c:418
msgid "junk at end of #pragma extern_prefix"
msgstr "Ausschuss am Ende von #pragma extern_prefix"
-#: c-pragma.c:457
+#: c-pragma.c:449
msgid "asm declaration conflicts with previous rename"
msgstr "asm-Deklaration steht in Konflikt mit vorheriger Umbenennung"
-#: c-semantics.c:565
-msgid "break statement not within loop or switch"
-msgstr "break-Anweisung nicht innerhalb einer Schleife oder »switch«"
+#: c-semantics.c:697
+msgid "destructor needed for `%D'"
+msgstr "Destruktor für »%D« benötigt"
-#: c-semantics.c:583
-msgid "continue statement not within a loop"
-msgstr "continue-Anweisung nicht innerhalb einer Schleife"
-
-#: c-semantics.c:678
-msgid "destructor needed for `%#D'"
-msgstr "Destruktor für »%#D« benötigt"
-
-#: c-semantics.c:679
+#: c-semantics.c:698
msgid "where case label appears here"
msgstr "wobei die case-Marke hier auftritt"
-#: c-semantics.c:682
+#: c-semantics.c:701
msgid "(enclose actions of previous case statements requiring destructors in their own scope.)"
-msgstr "(schließen sie Aktionen vorheriger case-Anweisungen, die Destruktoren benötigen, in ihrem eigenen Gültigkeitsbereich ein)"
+msgstr "(schließen Sie Aktionen vorheriger case-Anweisungen, die Destruktoren benötigen, in ihrem eigenen Gültigkeitsbereich ein)"
-#: c-semantics.c:725 c-typeck.c:6942 cp/semantics.c:897
+#: c-semantics.c:737 c-typeck.c:6239 cp/semantics.c:1070
#, c-format
msgid "%s qualifier ignored on asm"
msgstr "%s-Qualifizierer für asm ignoriert"
-#: c-typeck.c:123
+#: c-semantics.c:991
+msgid "will never be executed"
+msgstr "wird niemals ausgeführt"
+
+#: c-typeck.c:120
#, c-format
msgid "`%s' has an incomplete type"
msgstr "»%s« hat unvollständigen Typ"
-#: c-typeck.c:145 cp/call.c:2865
+#: c-typeck.c:142 cp/call.c:2532
msgid "invalid use of void expression"
-msgstr "Falsche Benutzung eines void-Ausdruckes"
+msgstr "falsche Benutzung eines void-Ausdruckes"
-#: c-typeck.c:153
+#: c-typeck.c:150
msgid "invalid use of flexible array member"
-msgstr "Falsche Benutzung eines flexiblen Feld-Members"
+msgstr "falsche Benutzung eines flexiblen Feldelements"
-#: c-typeck.c:159
+#: c-typeck.c:156
msgid "invalid use of array with unspecified bounds"
-msgstr "Falsche Benutzung eines Feldes mit unbekannten Grenzen"
+msgstr "falsche Benutzung eines Feldes mit unbekannten Grenzen"
-#: c-typeck.c:167
+#: c-typeck.c:164
#, c-format
msgid "invalid use of undefined type `%s %s'"
-msgstr "Falsche Benutzung des undefinierten Typs »%s %s«"
+msgstr "falsche Benutzung des undefinierten Typs »%s %s«"
#. If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL.
-#: c-typeck.c:171
+#: c-typeck.c:168
#, c-format
msgid "invalid use of incomplete typedef `%s'"
-msgstr "Falsche Benutzung des unvollständigen typedef »%s«"
+msgstr "falsche Benutzung des unvollständigen typedef »%s«"
-#: c-typeck.c:424 c-typeck.c:438
+#: c-typeck.c:415 c-typeck.c:430
msgid "function types not truly compatible in ISO C"
msgstr "Funktionstypen nicht wirklich kompatibel in ISO-C"
-#: c-typeck.c:603
+#: c-typeck.c:611
msgid "types are not quite compatible"
msgstr "Typen nicht sehr kompatibel"
-#: c-typeck.c:757 c-typeck.c:2687
+#: c-typeck.c:820
+msgid "function return types not compatible due to `volatile'"
+msgstr "Funktionsrückgabetypen nicht kompatibel wegen »volatile«"
+
+#: c-typeck.c:966 c-typeck.c:2143
msgid "arithmetic on pointer to an incomplete type"
msgstr "Arithmetik mit Zeiger auf unvollständigen Typen"
-#: c-typeck.c:1136
+#: c-typeck.c:1339
#, c-format
msgid "%s has no member named `%s'"
-msgstr "%s hat keinen Member »%s«"
+msgstr "%s hat kein Element namens »%s«"
-#: c-typeck.c:1172
+#: c-typeck.c:1375
#, c-format
msgid "request for member `%s' in something not a structure or union"
-msgstr "Anfrage nach Member »%s« in etwas, was keine Struktur oder union ist"
+msgstr "Anfrage nach Element »%s« in etwas, was keine Struktur oder Variante ist"
-#: c-typeck.c:1204
+#: c-typeck.c:1404
msgid "dereferencing pointer to incomplete type"
msgstr "Dereferenzierung eines Zeigers auf unvollständigen Typen"
-#: c-typeck.c:1208
+#: c-typeck.c:1408
msgid "dereferencing `void *' pointer"
-msgstr "Dereferenzierung eines »void *« Zeigers"
+msgstr "Dereferenzierung eines »void *«-Zeigers"
-#: c-typeck.c:1225 cp/typeck.c:2369
+#: c-typeck.c:1425 cp/typeck.c:2104
#, c-format
msgid "invalid type argument of `%s'"
-msgstr "Falsches Typ-Argument von »%s«"
+msgstr "falsches Typ-Argument von »%s«"
-#: c-typeck.c:1244 cp/typeck.c:2395
+#: c-typeck.c:1443 cp/typeck.c:2129
msgid "subscript missing in array reference"
msgstr "Index fehlt in Feldreferenz"
-#: c-typeck.c:1265 cp/typeck.c:2437
+#: c-typeck.c:1464 cp/typeck.c:2171
msgid "array subscript has type `char'"
msgstr "Feldindex hat Typ »char«"
-#: c-typeck.c:1273 c-typeck.c:1362 cp/typeck.c:2444 cp/typeck.c:2523
+#: c-typeck.c:1472 c-typeck.c:1561 cp/typeck.c:2175 cp/typeck.c:2261
msgid "array subscript is not an integer"
msgstr "Feldindex ist keine Ganzzahl"
-#: c-typeck.c:1306
+#: c-typeck.c:1505
msgid "ISO C forbids subscripting `register' array"
msgstr "ISO-C verbietet, ein »register«-Array zu indizieren"
-#: c-typeck.c:1308
+#: c-typeck.c:1507
msgid "ISO C90 forbids subscripting non-lvalue array"
msgstr "ISO-C90 verbietet, ein Nicht-L-Wert-Feld zu indizieren"
-#: c-typeck.c:1341
+#: c-typeck.c:1540
msgid "subscript has type `char'"
msgstr "Index hat Typ »char«"
-#: c-typeck.c:1357 cp/typeck.c:2518
+#: c-typeck.c:1556 cp/typeck.c:2256
msgid "subscripted value is neither array nor pointer"
-msgstr "Indizierter Wert ist weder ein Feld noch ein Zeiger"
+msgstr "indizierter Wert ist weder ein Feld noch ein Zeiger"
-#: c-typeck.c:1411
-#, c-format
-msgid "`%s' undeclared here (not in a function)"
-msgstr "»%s« ist hier nicht deklariert (nicht in einer Funktion)"
-
-#: c-typeck.c:1418
-#, c-format
-msgid "`%s' undeclared (first use in this function)"
-msgstr "»%s« nicht deklariert (erste Benutzung in dieser Funktion)"
-
-#: c-typeck.c:1423
-msgid "(Each undeclared identifier is reported only once"
-msgstr "(Jeder nicht deklarierte Bezeichner wird nur einmal aufgeführt"
-
-#: c-typeck.c:1424
-msgid "for each function it appears in.)"
-msgstr "für jede Funktion in der er auftritt.)"
-
-#: c-typeck.c:1441
+#: c-typeck.c:1586
#, c-format
msgid "local declaration of `%s' hides instance variable"
-msgstr "Lokale Deklaration von »%s« versteckt Instanzvariable"
+msgstr "lokale Deklaration von »%s« verdeckt Instanzvariable"
-#: c-typeck.c:1518
+#: c-typeck.c:1679
msgid "called object is not a function"
-msgstr "Gerufenes Objekt ist keine Funktion"
+msgstr "gerufenes Objekt ist keine Funktion"
-#: c-typeck.c:1604 cp/typeck.c:2829
+#. This situation leads to run-time undefined behavior. We can't,
+#. therefore, simply error unless we can prove that all possible
+#. executions of the program must execute the code.
+#: c-typeck.c:1711
+msgid "function called through a non-compatible type"
+msgstr "Funktion über nicht kompatiblen Typen aufgerufen"
+
+#: c-typeck.c:1805 cp/typeck.c:2544
msgid "too many arguments to function"
-msgstr "Zu viele Argumente für Funktion"
+msgstr "zu viele Argumente für Funktion"
-#: c-typeck.c:1625
+#: c-typeck.c:1826
#, c-format
msgid "type of formal parameter %d is incomplete"
msgstr "Typ des formalen Parameters %d ist unvollständig"
-#: c-typeck.c:1638
+#: c-typeck.c:1839
#, c-format
msgid "%s as integer rather than floating due to prototype"
-msgstr "%s als Ganzzahl statt Fließkomma aufgrund des Prototyps"
+msgstr "%s als Ganzzahl statt Gleitkomma aufgrund des Prototyps"
-#: c-typeck.c:1641
+#: c-typeck.c:1842
#, c-format
msgid "%s as integer rather than complex due to prototype"
msgstr "%s als Ganzzahl statt komplex aufgrund des Prototyps"
-#: c-typeck.c:1644
+#: c-typeck.c:1845
#, c-format
msgid "%s as complex rather than floating due to prototype"
-msgstr "%s als komplex statt Fließkomma aufgrund des Prototyps"
+msgstr "%s als komplex statt Gleitkomma aufgrund des Prototyps"
-#: c-typeck.c:1647
+#: c-typeck.c:1848
#, c-format
msgid "%s as floating rather than integer due to prototype"
-msgstr "%s als Fließkomma statt Ganzzahl aufgrund des Prototyps"
+msgstr "%s als Gleitkomma statt Ganzzahl aufgrund des Prototyps"
-#: c-typeck.c:1650
+#: c-typeck.c:1851
#, c-format
msgid "%s as complex rather than integer due to prototype"
msgstr "%s als komplex statt Ganzzahl aufgrund des Prototyps"
-#: c-typeck.c:1653
+#: c-typeck.c:1854
#, c-format
msgid "%s as floating rather than complex due to prototype"
-msgstr "%s als Gließkomma statt komplex aufgrund des Prototyps"
+msgstr "%s als Gleitkomma statt komplex aufgrund des Prototyps"
-#: c-typeck.c:1663
+#: c-typeck.c:1864
#, c-format
msgid "%s as `float' rather than `double' due to prototype"
msgstr "%s als »float« statt »double« aufgrund des Prototyps"
-#: c-typeck.c:1681
+#: c-typeck.c:1882
#, c-format
msgid "%s with different width due to prototype"
msgstr "%s mit anderer Breite aufgrund des Prototyps"
-#: c-typeck.c:1715
+#: c-typeck.c:1908
#, c-format
msgid "%s as unsigned due to prototype"
msgstr "%s als vorzeichenlos aufgrund des Prototyps"
-#: c-typeck.c:1717
+#: c-typeck.c:1910
#, c-format
msgid "%s as signed due to prototype"
msgstr "%s als vorzeichenbehaftet aufgrund des Prototyps"
-#: c-typeck.c:1751 cp/typeck.c:2933
+#: c-typeck.c:1944 cp/typeck.c:2650
msgid "too few arguments to function"
-msgstr "Zu wenige Argumente für Funktion"
+msgstr "zu wenige Argumente für Funktion"
-#: c-typeck.c:1793
+#: c-typeck.c:1984
msgid "suggest parentheses around + or - inside shift"
msgstr "Klammern um + oder - innerhalb von Schiebeoperation empfohlen"
-#: c-typeck.c:1800
+#: c-typeck.c:1991
msgid "suggest parentheses around && within ||"
msgstr "Klammern um && innerhalb von || empfohlen"
-#: c-typeck.c:1809
+#: c-typeck.c:2000
msgid "suggest parentheses around arithmetic in operand of |"
msgstr "Klammern um Arithmetik in Operand von | empfohlen"
-#: c-typeck.c:1812
+#: c-typeck.c:2003
msgid "suggest parentheses around comparison in operand of |"
msgstr "Klammern um Vergleich in Operand von | empfohlen"
-#: c-typeck.c:1821
+#: c-typeck.c:2012
msgid "suggest parentheses around arithmetic in operand of ^"
msgstr "Klammern um Arithmetik in Operand von ^ empfohlen"
-#: c-typeck.c:1824
+#: c-typeck.c:2015
msgid "suggest parentheses around comparison in operand of ^"
msgstr "Klammern um Vergleich in Operand von ^ empfohlen"
-#: c-typeck.c:1831
+#: c-typeck.c:2022
msgid "suggest parentheses around + or - in operand of &"
msgstr "Klammern um + oder - in Operand von & empfohlen"
-#: c-typeck.c:1834
+#: c-typeck.c:2025
msgid "suggest parentheses around comparison in operand of &"
msgstr "Klammern um Vergleich in Operand von & empfohlen"
-#: c-typeck.c:1841
+#: c-typeck.c:2032
msgid "comparisons like X<=Y<=Z do not have their mathematical meaning"
msgstr "Vergleiche wie X<=Y<=Z haben nicht ihre mathematische Bedeutung"
-#: c-typeck.c:2001 c-typeck.c:2036
-msgid "division by zero"
-msgstr "Teilung durch Null"
-
-#: c-typeck.c:2081 cp/typeck.c:3194
-msgid "right shift count is negative"
-msgstr "Rechts-Schiebe-Weite ist negativ"
-
-#: c-typeck.c:2088 cp/typeck.c:3200
-msgid "right shift count >= width of type"
-msgstr "Rechts-Schiebe-Weite >= Breite des Typs"
-
-#: c-typeck.c:2109 cp/typeck.c:3219
-msgid "left shift count is negative"
-msgstr "Links-Schiebe-Weite ist negativ"
-
-#: c-typeck.c:2112 cp/typeck.c:3221
-msgid "left shift count >= width of type"
-msgstr "Links-Schiebe-Weite >= Breite des Typs"
-
-#: c-typeck.c:2133
-msgid "shift count is negative"
-msgstr "Schiebeweite ist negativ"
-
-#: c-typeck.c:2135
-msgid "shift count >= width of type"
-msgstr "Schiebeweite >= Breite des Typs"
-
-#: c-typeck.c:2152 cp/typeck.c:3256
-msgid "comparing floating point with == or != is unsafe"
-msgstr "Vergleich von Fließkomma mit == oder != ist unsicher"
-
-#: c-typeck.c:2178 c-typeck.c:2184
-msgid "ISO C forbids comparison of `void *' with function pointer"
-msgstr "ISO-C verbietet Vergleich von »void *« mit Funktionszeiger"
-
-#: c-typeck.c:2187 c-typeck.c:2227 c-typeck.c:2255
-msgid "comparison of distinct pointer types lacks a cast"
-msgstr "In Vergleich verschiedener Zeigertypen fehlt Typkonvertierung"
-
-#: c-typeck.c:2201 c-typeck.c:2206 c-typeck.c:2275 c-typeck.c:2280
-msgid "comparison between pointer and integer"
-msgstr "Vergleich zwischen Zeiger und Ganzzahl"
-
-#: c-typeck.c:2222 c-typeck.c:2250
-msgid "ISO C forbids ordered comparisons of pointers to functions"
-msgstr "ISO-C verbietet geordnete Vergleiche zwischen Zeigern auf Funktionen"
-
-#: c-typeck.c:2247
-msgid "comparison of complete and incomplete pointers"
-msgstr "Vergleich von vollständigen und unvollständigen Zeigern"
-
-#: c-typeck.c:2263 c-typeck.c:2270
-msgid "ordered comparison of pointer with integer zero"
-msgstr "Geordneter Vergleich von Zeiger mit Ganzzahlnull"
-
-#: c-typeck.c:2294 cp/typeck.c:3389
-msgid "unordered comparison on non-floating point argument"
-msgstr "Ungeordneter Vergleich mit Nicht-Fließkomma-Argument"
-
-#: c-typeck.c:2505
-msgid "comparison between signed and unsigned"
-msgstr "Vergleich zwischen vorzeichenbehaftet und vorzeichenlos"
-
-#: c-typeck.c:2551 cp/typeck.c:3633
-msgid "comparison of promoted ~unsigned with constant"
-msgstr "Vergleich von weitergegebenem ~unsigned mit Konstante"
-
-#: c-typeck.c:2559 cp/typeck.c:3641
-msgid "comparison of promoted ~unsigned with unsigned"
-msgstr "Vergleich von weitergegebenem ~unsigned mit unsigned"
-
-#: c-typeck.c:2639
+#: c-typeck.c:2095
msgid "pointer of type `void *' used in subtraction"
msgstr "Zeiger des Typs »void *« in Subtraktion verwendet"
-#: c-typeck.c:2641
+#: c-typeck.c:2097
msgid "pointer to a function used in subtraction"
msgstr "Zeiger auf eine Funktion in Subtraktion verwendet"
-#: c-typeck.c:2738
+#: c-typeck.c:2191
msgid "wrong type argument to unary plus"
msgstr "Argument falschen Typs für unäres Plus"
-#: c-typeck.c:2751
+#: c-typeck.c:2204
msgid "wrong type argument to unary minus"
msgstr "Argument falschen Typs für unäres Minus"
-#: c-typeck.c:2768
+#: c-typeck.c:2221
msgid "ISO C does not support `~' for complex conjugation"
msgstr "ISO-C unterstützt nicht »~« für komplexe Konjugation"
-#: c-typeck.c:2774
+#: c-typeck.c:2227
msgid "wrong type argument to bit-complement"
msgstr "Argument falschen Typs für Bit-Komplement"
-#: c-typeck.c:2783
+#: c-typeck.c:2235
msgid "wrong type argument to abs"
msgstr "Argument falschen Typs für abs"
-#: c-typeck.c:2795
+#: c-typeck.c:2247
msgid "wrong type argument to conjugation"
msgstr "Argument falschen Typs für Konjugation"
-#: c-typeck.c:2809
+#: c-typeck.c:2261
msgid "wrong type argument to unary exclamation mark"
msgstr "Argument falschen Typs für unäres Ausrufungszeichen"
-#: c-typeck.c:2852
+#: c-typeck.c:2304
msgid "ISO C does not support `++' and `--' on complex types"
msgstr "ISO-C unterstützt kein »++« und »--« für komplexe Typen"
-#: c-typeck.c:2867 c-typeck.c:2899
+#: c-typeck.c:2319 c-typeck.c:2351
msgid "wrong type argument to increment"
msgstr "Argument falschen Typs für Inkrementierung"
-#: c-typeck.c:2869 c-typeck.c:2901
+#: c-typeck.c:2321 c-typeck.c:2353
msgid "wrong type argument to decrement"
msgstr "Argument falschen Typs für Dekrementierung"
-#: c-typeck.c:2890
+#: c-typeck.c:2342
msgid "increment of pointer to unknown structure"
-msgstr ""
+msgstr "Erhöhung eines Zeigers auf unbekannte Struktur"
-#: c-typeck.c:2892
+#: c-typeck.c:2344
msgid "decrement of pointer to unknown structure"
-msgstr ""
+msgstr "Verminderung eines Zeigers auf unbekannte Struktur"
-#: c-typeck.c:3029
-msgid "ISO C forbids the address of a cast expression"
-msgstr ""
-
-#: c-typeck.c:3039
+#: c-typeck.c:2469
msgid "invalid lvalue in unary `&'"
-msgstr ""
+msgstr "ungültiger L-Wert in unärem »&«"
-#: c-typeck.c:3071
+#: c-typeck.c:2501
#, c-format
msgid "attempt to take address of bit-field structure member `%s'"
-msgstr ""
-
-#: c-typeck.c:3180 c-typeck.c:4651 c-typeck.c:4667 c-typeck.c:4683
-#: final.c:3146 final.c:3148 gcc.c:4381 rtl-error.c:122 toplev.c:1694
-#: config/cris/cris.c:545 cp/spew.c:1538 cp/typeck.c:4367 java/expr.c:364
-#: java/verify.c:1467 java/verify.c:1468 java/verify.c:1483
-#, c-format
-msgid "%s"
-msgstr ""
+msgstr "Versuch, die Adresse des Bitfeld-Element »%s« einer Struktur zu verwenden"
-#: c-typeck.c:3241
-msgid "ISO C forbids use of conditional expressions as lvalues"
-msgstr ""
+#: c-typeck.c:2634
+msgid "use of conditional expressions as lvalues is deprecated"
+msgstr "die Verwendung bedingter Ausdrücke als L-Werte ist veraltet"
-#: c-typeck.c:3244
-msgid "ISO C forbids use of compound expressions as lvalues"
-msgstr ""
+#: c-typeck.c:2637
+msgid "use of compound expressions as lvalues is deprecated"
+msgstr "Verwendung zusammengesetzter Ausdrücke als L-Werte ist veraltet"
-#: c-typeck.c:3247
-msgid "ISO C forbids use of cast expressions as lvalues"
-msgstr ""
+#: c-typeck.c:2640
+msgid "use of cast expressions as lvalues is deprecated"
+msgstr "die Verwendung von cast-Ausdrücken als L-Werte ist veraltet"
-#: c-typeck.c:3264
+#: c-typeck.c:2655
#, c-format
msgid "%s of read-only member `%s'"
-msgstr ""
+msgstr "%s des schreibgeschützten Elementes »%s«"
-#: c-typeck.c:3268
+#: c-typeck.c:2659
#, c-format
msgid "%s of read-only variable `%s'"
-msgstr ""
+msgstr "%s der schreibgeschützten Variable »%s«"
-#: c-typeck.c:3271
+#: c-typeck.c:2662
#, c-format
msgid "%s of read-only location"
-msgstr ""
+msgstr "%s der schreibgeschützten Speicherstelle"
-#: c-typeck.c:3290
+#: c-typeck.c:2680
#, c-format
msgid "cannot take address of bit-field `%s'"
-msgstr ""
+msgstr "die Adresse des Bit-Feldes »%s« kann nicht ermittelt werden"
-#: c-typeck.c:3318
+#: c-typeck.c:2708 treelang/treetree.c:946
#, c-format
msgid "global register variable `%s' used in nested function"
-msgstr ""
+msgstr "globale Register-Variable »%s« in verschachtelter Funktion verwendet"
-#: c-typeck.c:3322
+#: c-typeck.c:2712 treelang/treetree.c:950
#, c-format
msgid "register variable `%s' used in nested function"
-msgstr ""
+msgstr "Register-Variable »%s« in verschachtelter Funktion verwendet"
-#: c-typeck.c:3329
+#: c-typeck.c:2719 treelang/treetree.c:957
#, c-format
msgid "address of global register variable `%s' requested"
-msgstr ""
+msgstr "Adresse der globalen Variable »%s« angefordert"
-#: c-typeck.c:3341
+#: c-typeck.c:2731
msgid "cannot put object with volatile field into register"
-msgstr ""
+msgstr "kann kein Objekt mit volatile-Feld in Register laden"
-#: c-typeck.c:3345
+#: c-typeck.c:2735 treelang/treetree.c:962
#, c-format
msgid "address of register variable `%s' requested"
-msgstr ""
+msgstr "Adresse der Register-Variablen »%s« angefordert"
-#: c-typeck.c:3453
+#: c-typeck.c:2820
msgid "signed and unsigned type in conditional expression"
-msgstr ""
+msgstr "Vorzeichenloser und -behafteter Typ in bedingtem Ausdruck"
-#: c-typeck.c:3460
+#: c-typeck.c:2827
msgid "ISO C forbids conditional expr with only one void side"
-msgstr ""
+msgstr "ISO-C verbietet bedingten Ausdruck mit nur einer void-Seite"
-#: c-typeck.c:3476 c-typeck.c:3483
+#: c-typeck.c:2843 c-typeck.c:2850
msgid "ISO C forbids conditional expr between `void *' and function pointer"
-msgstr ""
+msgstr "ISO-C verbietet bedingten Ausdruck zwischen »void *« und Funktionszeiger"
-#: c-typeck.c:3489
+#: c-typeck.c:2856
msgid "pointer type mismatch in conditional expression"
-msgstr ""
+msgstr "Zeigertyp passt nicht in bedingtem Ausdruck"
-#: c-typeck.c:3496 c-typeck.c:3506
+#: c-typeck.c:2863 c-typeck.c:2873
msgid "pointer/integer type mismatch in conditional expression"
-msgstr ""
+msgstr "Zeiger-/Ganzzahltyp passt nicht in bedingtem Ausdruck"
-#: c-typeck.c:3520
+#: c-typeck.c:2887
msgid "type mismatch in conditional expression"
-msgstr ""
+msgstr "Typ passt nicht in bedingtem Ausdruck"
-#: c-typeck.c:3591 cp/typeck.c:4623
+#: c-typeck.c:2947
msgid "left-hand operand of comma expression has no effect"
-msgstr ""
+msgstr "linker Operand des Komma-Ausdrucks hat keinen Effekt"
-#: c-typeck.c:3635
+#: c-typeck.c:2978
msgid "cast specifies array type"
-msgstr ""
+msgstr "Typkonvertierung gibt Feldtyp an"
-#: c-typeck.c:3641
+#: c-typeck.c:2984
msgid "cast specifies function type"
-msgstr ""
+msgstr "Typkonvertierung gibt Funktionstyp an"
-#: c-typeck.c:3651
+#: c-typeck.c:2994
msgid "ISO C forbids casting nonscalar to the same type"
-msgstr ""
+msgstr "ISO-C verbietet Typkonvertierung von Nicht-Skalar auf selben Typen"
-#: c-typeck.c:3670
+#: c-typeck.c:3012
msgid "ISO C forbids casts to union type"
-msgstr ""
+msgstr "ISO-C verbietet Typkonvertierung auf union-Typ"
-#: c-typeck.c:3685
+#: c-typeck.c:3020
msgid "cast to union type from type not present in union"
-msgstr ""
+msgstr "Typkonvertierung in union-Typ von nicht in union vorhandenem Typen"
-#: c-typeck.c:3736
+#: c-typeck.c:3071
msgid "cast adds new qualifiers to function type"
-msgstr ""
+msgstr "Typkonvertierung fügt neue Typqualifizierer zu Funktionstypen hinzu"
#. There are qualifiers present in IN_OTYPE that are not
#. present in IN_TYPE.
-#: c-typeck.c:3741
+#: c-typeck.c:3076
msgid "cast discards qualifiers from pointer target type"
-msgstr ""
+msgstr "Typkonvertierung streicht Qualifizierer von Zeiger-Zieltyp"
-#: c-typeck.c:3756
+#: c-typeck.c:3091
msgid "cast increases required alignment of target type"
-msgstr ""
+msgstr "Typkonvertierung erfordert Ausrichtung des Zieltyps"
-#: c-typeck.c:3762 cp/typeck.c:5144
+#: c-typeck.c:3097 cp/typeck.c:4889
msgid "cast from pointer to integer of different size"
-msgstr ""
+msgstr "Typkonvertierung von Zeiger auf Ganzzahl anderer Breite"
-#: c-typeck.c:3767
+#: c-typeck.c:3102
msgid "cast does not match function type"
-msgstr ""
+msgstr "Typkonvertierung passt nicht zum Funktionstypen"
-#: c-typeck.c:3774 cp/typeck.c:5151
+#: c-typeck.c:3109 cp/typeck.c:4896
msgid "cast to pointer from integer of different size"
-msgstr ""
+msgstr "Typkonvertierung in Zeiger von Ganzzahl anderer Breite"
-#: c-typeck.c:3786
+#: c-typeck.c:3121
msgid "type-punning to incomplete type might break strict-aliasing rules"
-msgstr ""
+msgstr "Type-Punning auf unvollständigen Typen kann strict-aliasing-Regeln verletzen"
-#: c-typeck.c:3790
+#: c-typeck.c:3125
msgid "dereferencing type-punned pointer will break strict-aliasing rules"
-msgstr ""
+msgstr "Dereferenzierung eines Type-Pun-Zeigers verletzt strict-aliasing-Regeln"
+
+#: c-typeck.c:3136
+msgid "ISO C forbids conversion of function pointer to object pointer type"
+msgstr "ISO-C verbietet Konvertierung von Funktionszeigern in Objektzeigertyp"
+
+#: c-typeck.c:3145
+msgid "ISO C forbids conversion of object pointer to function pointer type"
+msgstr "ISO-C verbietet Konvertierung von Objektzeigertypen in Funktionszeigertyp"
#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
#. Reject anything strange now.
-#: c-typeck.c:3949
+#: c-typeck.c:3303
msgid "invalid lvalue in assignment"
-msgstr ""
+msgstr "ungültiger L-Wert in Zuweisung"
#. Convert new value to destination type.
-#: c-typeck.c:3958 c-typeck.c:3983 c-typeck.c:4000 cp/typeck.c:5266
-#: cp/typeck.c:5416
+#. Check this here to avoid odd errors when trying to convert
+#. a throw to the type of the COND_EXPR.
+#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
+#. Reject anything strange now.
+#: c-typeck.c:3312 c-typeck.c:3337 c-typeck.c:3354 cp/typeck.c:5008
+#: cp/typeck.c:5152
msgid "assignment"
-msgstr ""
+msgstr "Zuweisung"
-#: c-typeck.c:4070
+#: c-typeck.c:3421
msgid "cannot pass rvalue to reference parameter"
-msgstr ""
+msgstr "kann R-Wert nicht an Referenzparameter übergeben"
-#: c-typeck.c:4174 c-typeck.c:4241
+#: c-typeck.c:3530 c-typeck.c:3606
#, c-format
msgid "%s makes qualified function pointer from unqualified"
-msgstr ""
+msgstr "%s erzeugt aus unqualifiziertem einen qualifizierten Funktionszeiger"
-#: c-typeck.c:4178 c-typeck.c:4221
+#: c-typeck.c:3534 c-typeck.c:3586
#, c-format
msgid "%s discards qualifiers from pointer target type"
-msgstr ""
+msgstr "%s streicht Qualifizierer von Zeiger-Zieltypen"
-#: c-typeck.c:4184
+#: c-typeck.c:3540
msgid "ISO C prohibits argument conversion to union type"
-msgstr ""
+msgstr "ISO-C verbietet Argumentkonvertierung in union-Typ"
-#: c-typeck.c:4213
+#: c-typeck.c:3578
#, c-format
msgid "ISO C forbids %s between function pointer and `void *'"
-msgstr ""
+msgstr "ISO-C verbietet %s zwischen Funktionszeiger und »void *«"
-#: c-typeck.c:4230
+#: c-typeck.c:3595
#, c-format
msgid "pointer targets in %s differ in signedness"
-msgstr ""
+msgstr "Zeigerziele in %s unterscheiden sich im Vorzeichenbesitz"
-#: c-typeck.c:4246
+#: c-typeck.c:3611
#, c-format
msgid "%s from incompatible pointer type"
-msgstr ""
+msgstr "%s von inkompatiblem Zeigertyp"
-#: c-typeck.c:4252 c-typeck.c:4804 cp/typeck.c:1653
+#: c-typeck.c:3617 c-typeck.c:4124 cp/typeck.c:1366
msgid "invalid use of non-lvalue array"
-msgstr ""
+msgstr "ungültige Verwendung eines Nicht-L-Wert-Feldes"
-#: c-typeck.c:4267
+#: c-typeck.c:3631
#, c-format
msgid "%s makes pointer from integer without a cast"
-msgstr ""
+msgstr "%s erzeugt Zeiger von Ganzzahl ohne Typkonvertierung"
-#: c-typeck.c:4275
+#: c-typeck.c:3638
#, c-format
msgid "%s makes integer from pointer without a cast"
-msgstr ""
+msgstr "%s erzeugt Ganzzahl von Zeiger ohne Typkonvertierung"
-#: c-typeck.c:4289 c-typeck.c:4292
+#: c-typeck.c:3652 c-typeck.c:3655
#, c-format
msgid "incompatible type for argument %d of `%s'"
-msgstr ""
+msgstr "inkompatibler Typ für Argument %d von »%s«"
-#: c-typeck.c:4296
+#: c-typeck.c:3659
#, c-format
msgid "incompatible type for argument %d of indirect function call"
-msgstr ""
+msgstr "inkompatibler Typ für Argument %d eines indirekten Funktionsaufrufes"
-#: c-typeck.c:4300
+#: c-typeck.c:3663
#, c-format
msgid "incompatible types in %s"
-msgstr ""
+msgstr "inkompatible Typen in %s"
#. Function name is known; supply it.
-#: c-typeck.c:4358
+#: c-typeck.c:3719
#, c-format
msgid "passing arg of `%s'"
-msgstr ""
+msgstr "Verarbeiten des Argumentes von »%s«"
#. Function name unknown (call through ptr).
-#: c-typeck.c:4368
+#: c-typeck.c:3728
msgid "passing arg of pointer to function"
-msgstr ""
+msgstr "Verarbeiten des Zeigerargumentes an Funktion"
#. Function name is known; supply it.
-#: c-typeck.c:4376
+#: c-typeck.c:3736
#, c-format
msgid "passing arg %d of `%s'"
-msgstr ""
+msgstr "Verarbeiten des Argumentes %d von »%s«"
#. Function name unknown (call through ptr); just give arg number.
-#: c-typeck.c:4386
+#: c-typeck.c:3745
#, c-format
msgid "passing arg %d of pointer to function"
-msgstr ""
-
-#: c-typeck.c:4452
-msgid "initializer for static variable is not constant"
-msgstr ""
-
-#: c-typeck.c:4458
-msgid "initializer for static variable uses complicated arithmetic"
-msgstr ""
-
-#: c-typeck.c:4466
-msgid "aggregate initializer is not constant"
-msgstr ""
-
-#: c-typeck.c:4468
-msgid "aggregate initializer uses complicated arithmetic"
-msgstr ""
+msgstr "Verarbeiten des Argumentes %d von Zeiger auf Funktion"
-#: c-typeck.c:4475
+#: c-typeck.c:3802
msgid "traditional C rejects automatic aggregate initialization"
-msgstr ""
+msgstr "traditionelles C lehnt automatische Gesamt-Initialisierung ab"
-#: c-typeck.c:4654 c-typeck.c:4670 c-typeck.c:4686
+#: c-typeck.c:3973 c-typeck.c:3988 c-typeck.c:4003
#, c-format
msgid "(near initialization for `%s')"
-msgstr ""
+msgstr "(nahe der Initialisierung für »%s«)"
-#: c-typeck.c:4737 cp/typeck2.c:488
+#: c-typeck.c:4052 cp/typeck2.c:559
msgid "char-array initialized from wide string"
-msgstr ""
+msgstr "char-Feld mit wide-Zeichenkette initialisiert"
-#: c-typeck.c:4744 cp/typeck2.c:495
+#: c-typeck.c:4059 cp/typeck2.c:566
msgid "int-array initialized from non-wide string"
-msgstr ""
+msgstr "int-Feld mit Nicht-wide-Zeichenkette initialisiert"
-#: c-typeck.c:4762 cp/typeck2.c:511
+#: c-typeck.c:4077 cp/typeck2.c:581
msgid "initializer-string for array of chars is too long"
-msgstr ""
+msgstr "Initialisierungs-Zeichenkette für char-Feld ist zu lang"
-#: c-typeck.c:4822
+#: c-typeck.c:4147
msgid "array initialized from non-constant array expression"
-msgstr ""
+msgstr "Feld mit nicht konstantem Feldausdruck initialisiert"
-#: c-typeck.c:4839 c-typeck.c:4841 c-typeck.c:4857 c-typeck.c:4878
-#: c-typeck.c:6281
+#: c-typeck.c:4164 c-typeck.c:4166 c-typeck.c:4182 c-typeck.c:4203
+#: c-typeck.c:5585
msgid "initializer element is not constant"
-msgstr ""
+msgstr "Initialisierungselement ist nicht konstant"
-#: c-typeck.c:4873
+#: c-typeck.c:4198
msgid "initialization"
-msgstr ""
+msgstr "Initialisierung"
-#: c-typeck.c:4884 c-typeck.c:6286
+#: c-typeck.c:4209 c-typeck.c:5590
msgid "initializer element is not computable at load time"
-msgstr ""
+msgstr "Initialisierungs-Element ist zur Lade-Zeit nicht berechenbar"
-#: c-typeck.c:4899 cp/typeck2.c:588
+#: c-typeck.c:4224 cp/typeck2.c:658
msgid "invalid initializer"
-msgstr ""
+msgstr "ungültige Initialisierung"
+
+#: c-typeck.c:4509 cp/decl.c:4465
+msgid "opaque vector types cannot be initialized"
+msgstr "opake Vektortypen können nicht initialisiert werden"
-#: c-typeck.c:5393
+#: c-typeck.c:4703
msgid "extra brace group at end of initializer"
-msgstr ""
+msgstr "zusätzliche geschweifte Klammern am Ende der Initialisierung"
-#: c-typeck.c:5413
+#: c-typeck.c:4723
msgid "missing braces around initializer"
-msgstr ""
+msgstr "geschweifte Klammern fehlen um Initialisierung"
-#: c-typeck.c:5473
+#: c-typeck.c:4783
msgid "braces around scalar initializer"
-msgstr ""
+msgstr "geschweifte Klammern um Skalar-Initialisierung"
-#: c-typeck.c:5521
+#: c-typeck.c:4830
msgid "initialization of flexible array member in a nested context"
-msgstr ""
+msgstr "Initialisierung eines flexiblen Feld-Elements in geschachteltem Kontext"
-#: c-typeck.c:5523
+#: c-typeck.c:4832
msgid "initialization of a flexible array member"
-msgstr ""
+msgstr "Initialisierung eines flexiblen Feld-Elements"
-#: c-typeck.c:5554
+#: c-typeck.c:4863
msgid "missing initializer"
-msgstr ""
+msgstr "fehlende Initialisierung"
-#: c-typeck.c:5580
+#: c-typeck.c:4889
msgid "empty scalar initializer"
-msgstr ""
+msgstr "leere Skalar-Initialisierung"
-#: c-typeck.c:5585
+#: c-typeck.c:4894
msgid "extra elements in scalar initializer"
-msgstr ""
+msgstr "zusätzliche Elemente in Skalar-Initialisierung"
-#: c-typeck.c:5671
+#: c-typeck.c:4979
msgid "initialization designators may not nest"
-msgstr ""
+msgstr "Initialisierungs-Bezeichner dürfen nicht geschachtelt werden"
-#: c-typeck.c:5692 c-typeck.c:5763
+#: c-typeck.c:5000 c-typeck.c:5068
msgid "array index in non-array initializer"
-msgstr ""
+msgstr "Feldindex in Nicht-Feld-Initialisierung"
-#: c-typeck.c:5697 c-typeck.c:5817
+#: c-typeck.c:5005 c-typeck.c:5121
msgid "field name not in record or union initializer"
-msgstr ""
+msgstr "Feldname nicht in Datensatz- oder union-Initialisierung"
-#: c-typeck.c:5759 c-typeck.c:5761
+#: c-typeck.c:5064 c-typeck.c:5066
msgid "nonconstant array index in initializer"
-msgstr ""
+msgstr "nichtkonstanter Feldindex in Initialisierung"
-#: c-typeck.c:5765 c-typeck.c:5768
+#: c-typeck.c:5070 c-typeck.c:5073
msgid "array index in initializer exceeds array bounds"
-msgstr ""
+msgstr "Feldindex in Initialisierung überschreitet Feldgrenzen"
-#: c-typeck.c:5779
+#: c-typeck.c:5084
msgid "empty index range in initializer"
-msgstr ""
+msgstr "leerer Indexbereich in Initialisierung"
-#: c-typeck.c:5788
+#: c-typeck.c:5093
msgid "array index range in initializer exceeds array bounds"
-msgstr ""
+msgstr "Feldindexbereich in Initialisierung überschreitet Feldgrenzen"
-#: c-typeck.c:5829
+#: c-typeck.c:5133
#, c-format
msgid "unknown field `%s' specified in initializer"
-msgstr ""
+msgstr "unbekanntes Feld »%s« in Initialisierung angegeben"
-#: c-typeck.c:5866 c-typeck.c:5887 c-typeck.c:6348
+#: c-typeck.c:5169 c-typeck.c:5190 c-typeck.c:5652
msgid "initialized field with side-effects overwritten"
-msgstr ""
+msgstr "initialisiertes Feld mit Seiteneffekten überschrieben"
-#: c-typeck.c:6558
+#: c-typeck.c:5860
msgid "excess elements in char array initializer"
-msgstr ""
+msgstr "Elementüberschreitung in char-Feld-Initialisierung"
-#: c-typeck.c:6565 c-typeck.c:6611
+#: c-typeck.c:5867 c-typeck.c:5913
msgid "excess elements in struct initializer"
-msgstr ""
+msgstr "Elementüberschreitung in struct-Initialisierung"
-#: c-typeck.c:6626
+#: c-typeck.c:5928
msgid "non-static initialization of a flexible array member"
-msgstr ""
+msgstr "nicht-statische Initialisierung eines flexiblen Feldelements"
-#: c-typeck.c:6693
+#: c-typeck.c:5995
msgid "excess elements in union initializer"
-msgstr ""
+msgstr "Elementüberschreitung in union-Initialisierung"
-#: c-typeck.c:6714
+#: c-typeck.c:6016
msgid "traditional C rejects initialization of unions"
-msgstr ""
+msgstr "traditionelles C lehnt Initialisierung von unions ab"
-#: c-typeck.c:6777
+#: c-typeck.c:6079
msgid "excess elements in array initializer"
-msgstr ""
+msgstr "Elementüberschreitung in Feldinitialisierung"
-#: c-typeck.c:6806
+#: c-typeck.c:6108
msgid "excess elements in vector initializer"
-msgstr ""
+msgstr "Elementüberschreitung in Vektorinitialisierung"
-#: c-typeck.c:6828
+#: c-typeck.c:6130
msgid "excess elements in scalar initializer"
-msgstr ""
+msgstr "Elementüberschreitung in Skalar-Initialisierung"
-#: c-typeck.c:6935
+#: c-typeck.c:6232
msgid "asm template is not a string constant"
-msgstr ""
+msgstr "asm-Template ist keine Zeichenkettenkonstante"
-#: c-typeck.c:6967
+#: c-typeck.c:6264
msgid "invalid lvalue in asm statement"
-msgstr ""
+msgstr "ungültiger L-Wert in asm-Anweisung"
-#: c-typeck.c:7042
+#: c-typeck.c:6336
msgid "modification by `asm'"
-msgstr ""
+msgstr "Modifizierung durch »asm«"
-#: c-typeck.c:7061 cp/typeck.c:6237
+#: c-typeck.c:6354 cp/typeck.c:5926
msgid "function declared `noreturn' has a `return' statement"
-msgstr ""
+msgstr "als »noreturn« deklarierte Funktion hat »return«-Anweisung"
-#: c-typeck.c:7068
+#: c-typeck.c:6361
msgid "`return' with no value, in function returning non-void"
-msgstr ""
+msgstr "»return« ohne Wert in nicht void zurückgebender Funktion"
-#: c-typeck.c:7074
+#: c-typeck.c:6367
msgid "`return' with a value, in function returning void"
-msgstr ""
+msgstr "»return« mit Wert in void zurückgebender Funktion"
-#: c-typeck.c:7078
+#: c-typeck.c:6371
msgid "return"
-msgstr ""
+msgstr "return"
-#: c-typeck.c:7130
+#: c-typeck.c:6423
msgid "function returns address of local variable"
-msgstr ""
+msgstr "Funktion liefert Adresse einer lokalen Variablen zurück"
-#: c-typeck.c:7186 cp/semantics.c:555
+#: c-typeck.c:6478 cp/semantics.c:749
msgid "switch quantity not an integer"
-msgstr ""
+msgstr "switch-Größe keine Ganzzahl"
-#: c-typeck.c:7196
+#: c-typeck.c:6488
msgid "`long' switch expression not converted to `int' in ISO C"
-msgstr ""
+msgstr "»long« switch-Ausdruck nicht nach »int« konvertiert in ISO C"
-#: c-typeck.c:7231 cp/decl.c:5523
+#: c-typeck.c:6529 cp/parser.c:5538
msgid "case label not within a switch statement"
-msgstr ""
+msgstr "case-Marke nicht innerhalb einer switch-Anweisung"
-#: c-typeck.c:7233 cp/decl.c:5528
+#: c-typeck.c:6531
msgid "`default' label not within a switch statement"
-msgstr ""
+msgstr "»default«-Marke nicht innerhalb einer switch-Anweisung"
-#: calls.c:1934 tree-inline.c:1177
-#, c-format
-msgid "inlining failed in call to `%s'"
-msgstr ""
+#: c-typeck.c:6683 c-typeck.c:6717
+msgid "division by zero"
+msgstr "Teilung durch Null"
+
+#: c-typeck.c:6762 cp/typeck.c:2928
+msgid "right shift count is negative"
+msgstr "Rechts-Schiebe-Weite ist negativ"
+
+#: c-typeck.c:6769 cp/typeck.c:2934
+msgid "right shift count >= width of type"
+msgstr "Rechts-Schiebe-Weite >= Breite des Typs"
+
+#: c-typeck.c:6790 cp/typeck.c:2953
+msgid "left shift count is negative"
+msgstr "Links-Schiebe-Weite ist negativ"
+
+#: c-typeck.c:6793 cp/typeck.c:2955
+msgid "left shift count >= width of type"
+msgstr "Links-Schiebe-Weite >= Breite des Typs"
+
+#: c-typeck.c:6814
+msgid "shift count is negative"
+msgstr "Schiebeweite ist negativ"
+
+#: c-typeck.c:6816
+msgid "shift count >= width of type"
+msgstr "Schiebeweite >= Breite des Typs"
+
+#: c-typeck.c:6833 cp/typeck.c:2990
+msgid "comparing floating point with == or != is unsafe"
+msgstr "Vergleich von Gleitkomma mit == oder != ist unsicher"
+
+#: c-typeck.c:6859 c-typeck.c:6865
+msgid "ISO C forbids comparison of `void *' with function pointer"
+msgstr "ISO-C verbietet Vergleich von »void *« mit Funktionszeiger"
+
+#: c-typeck.c:6868 c-typeck.c:6908 c-typeck.c:6936
+msgid "comparison of distinct pointer types lacks a cast"
+msgstr "in Vergleich verschiedener Zeigertypen fehlt Typkonvertierung"
+
+#: c-typeck.c:6882 c-typeck.c:6887 c-typeck.c:6956 c-typeck.c:6961
+msgid "comparison between pointer and integer"
+msgstr "Vergleich zwischen Zeiger und Ganzzahl"
+
+#: c-typeck.c:6903 c-typeck.c:6931
+msgid "ISO C forbids ordered comparisons of pointers to functions"
+msgstr "ISO-C verbietet geordnete Vergleiche zwischen Zeigern auf Funktionen"
+
+#: c-typeck.c:6928
+msgid "comparison of complete and incomplete pointers"
+msgstr "Vergleich von vollständigen und unvollständigen Zeigern"
+
+#: c-typeck.c:6944 c-typeck.c:6951
+msgid "ordered comparison of pointer with integer zero"
+msgstr "geordneter Vergleich von Zeiger mit Ganzzahlnull"
+
+#: c-typeck.c:6975 cp/typeck.c:3126
+msgid "unordered comparison on non-floating point argument"
+msgstr "ungeordneter Vergleich mit Nicht-Gleitkomma-Argument"
+
+#: c-typeck.c:7185
+msgid "comparison between signed and unsigned"
+msgstr "Vergleich zwischen vorzeichenbehaftet und vorzeichenlos"
+
+#: c-typeck.c:7231 cp/typeck.c:3373
+msgid "comparison of promoted ~unsigned with constant"
+msgstr "Vergleich von weitergegebenem ~unsigned mit Konstante"
-#: calls.c:1935 calls.c:2271 tree-inline.c:1178
+#: c-typeck.c:7239 cp/typeck.c:3381
+msgid "comparison of promoted ~unsigned with unsigned"
+msgstr "Vergleich von weitergegebenem ~unsigned mit unsigned"
+
+#: calls.c:1838
+msgid "%Jinlining failed in call to '%F'"
+msgstr "%J»inline« beim Aufruf von »%F« gescheitert"
+
+#: calls.c:1839 calls.c:2208 tree-inline.c:1339 tree-inline.c:1346
msgid "called from here"
-msgstr ""
+msgstr "von hier aufgerufen"
-#: calls.c:2270
-#, c-format
-msgid "can't inline call to `%s'"
-msgstr ""
+#: calls.c:2207
+msgid "%Jcan't inline call to '%F'"
+msgstr "%JAufruf von »%F« kann nicht »inline« erfolgen"
+
+#: calls.c:2216
+msgid "ignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr "Rückgabewert von »%D«, das mit dem Attribut warn_unused_result definiert wurde, wird ignoriert"
+
+#: calls.c:2229
+msgid "ignoring return value of function declared with attribute warn_unused_result"
+msgstr "Rückgabewert der mit dem Attribut warn_unused_result definierten Funktion wird ignoriert"
-#: calls.c:2300
+#: calls.c:2239
msgid "function call has aggregate value"
-msgstr ""
+msgstr "Funktionsaufruf hat zusammengesetzten Wert"
-#: cfgloop.c:1107
+#: cfg.c:835
#, c-format
-msgid "Size of loop %d should be %d, not %d."
-msgstr ""
+msgid "bb %d on wrong place"
+msgstr "bb %d an falscher Stelle"
-#: cfgloop.c:1126
+#: cfg.c:841
#, c-format
-msgid "Bb %d do not belong to loop %d."
-msgstr ""
+msgid "prev_bb of %d should be %d, not %d"
+msgstr "prev_bb von %d sollte %d sein, nicht %d"
-#: cfgloop.c:1144
+#: cfg.c:857
#, c-format
-msgid "Loop %d's header does not have exactly 2 entries."
-msgstr ""
+msgid "verify_flow_info: Wrong count of block %i %i"
+msgstr "verify_flow_info: Falsche Blockzahl %i %i"
-#: cfgloop.c:1152
+#: cfg.c:863
#, c-format
-msgid "Loop %d's latch does not have exactly 1 successor."
-msgstr ""
+msgid "verify_flow_info: Wrong frequency of block %i %i"
+msgstr "verify_flow_info: Falsche Blockfrequenz %i %i"
-#: cfgloop.c:1157
+#: cfg.c:871
#, c-format
-msgid "Loop %d's latch does not have header as successor."
-msgstr ""
+msgid "verify_flow_info: Duplicate edge %i->%i"
+msgstr "verify_flow_info: Doppelte Kante %i->%i"
-#: cfgloop.c:1162
+#: cfg.c:877
#, c-format
-msgid "Loop %d's latch does not belong directly to it."
-msgstr ""
+msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+msgstr "verify_flow_info: Falsche Wahrscheinlichkeit der Kante %i->%i %i"
-#: cfgloop.c:1168
+#: cfg.c:883
#, c-format
-msgid "Loop %d's header does not belong directly to it."
-msgstr ""
+msgid "verify_flow_info: Wrong count of edge %i->%i %i"
+msgstr "verify_flow_info: Falsche Kantenzahl %i->%i %i"
-#: cfgrtl.c:1774
+#: cfg.c:895
#, c-format
-msgid "bb %d on wrong place"
-msgstr ""
+msgid "verify_flow_info: Basic block %d succ edge is corrupted"
+msgstr "verify_flow_info: Nachfolgekante des Basis-Blocks %d ist beschädigt"
-#: cfgrtl.c:1780
+#: cfg.c:909 cfgrtl.c:1971
#, c-format
-msgid "prev_bb of %d should be %d, not %d"
-msgstr ""
+msgid "Wrong amount of branch edges after unconditional jump %i"
+msgstr "Falsche Summe der Zweig-Kanten nach unbedingtem Sprung %i"
-#: cfgrtl.c:1800
+#: cfg.c:917
#, c-format
-msgid "end insn %d for block %d not found in the insn stream"
-msgstr ""
+msgid "basic block %d pred edge is corrupted"
+msgstr "Vorgänger des Basis-Blocks %d ist beschädigt"
-#: cfgrtl.c:1814
+#: cfg.c:943
#, c-format
-msgid "insn %d is in multiple basic blocks (%d and %d)"
-msgstr ""
+msgid "basic block %i edge lists are corrupted"
+msgstr "Kantenlisten des Basis-Blockes %i sind beschädigt"
+
+#: cfg.c:955
+msgid "verify_flow_info failed"
+msgstr "verify_flow_info gescheitert"
-#: cfgrtl.c:1826
+#: cfgloop.c:1134
#, c-format
-msgid "head insn %d for block %d not found in the insn stream"
-msgstr ""
+msgid "Size of loop %d should be %d, not %d."
+msgstr "Größe der Schleife %d sollte %d sein, nicht %d"
-#: cfgrtl.c:1848
+#: cfgloop.c:1153
#, c-format
-msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
-msgstr ""
+msgid "Bb %d do not belong to loop %d."
+msgstr "Bb %d gehört nicht zur Schleife %d."
-#: cfgrtl.c:1855
+#: cfgloop.c:1171
#, c-format
-msgid "verify_flow_info: Wrong count of block %i %i"
-msgstr ""
+msgid "Loop %d's header does not have exactly 2 entries."
+msgstr "Kopf der Schleife %d hat nicht genau 2 Einträge."
-#: cfgrtl.c:1861
+#: cfgloop.c:1179
#, c-format
-msgid "verify_flow_info: Wrong frequency of block %i %i"
-msgstr ""
+msgid "Loop %d's latch does not have exactly 1 successor."
+msgstr "Falle der Schleife %d hat nicht genau einen Nachfolger."
-#: cfgrtl.c:1869
+#: cfgloop.c:1184
#, c-format
-msgid "verify_flow_info: Duplicate edge %i->%i"
-msgstr ""
+msgid "Loop %d's latch does not have header as successor."
+msgstr "Falle der Schleife %d hat nicht den Kopf als Nachfolger."
-#: cfgrtl.c:1875
+#: cfgloop.c:1189
#, c-format
-msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
-msgstr ""
+msgid "Loop %d's latch does not belong directly to it."
+msgstr "Falle der Schleife %d gehört nicht direkt zu ihr."
-#: cfgrtl.c:1881
+#: cfgloop.c:1195
#, c-format
-msgid "verify_flow_info: Wrong count of edge %i->%i %i"
-msgstr ""
+msgid "Loop %d's header does not belong directly to it."
+msgstr "Kopf der Schleife %d gehört nicht direkt zu ihr."
-#: cfgrtl.c:1911
+#: cfgloop.c:1201
#, c-format
-msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
-msgstr ""
+msgid "Loop %d's latch is marked as part of irreducible region."
+msgstr "Falle der Schleife %d ist als Teil einer irreduziblen Region markiert."
-#: cfgrtl.c:1926
+#: cfgloop.c:1231
#, c-format
-msgid "verify_flow_info: Incorrect fallthru %i->%i"
-msgstr ""
+msgid "Basic block %d should be marked irreducible."
+msgstr "Basisblock %d sollte als irreduzibel markiert werden."
-#: cfgrtl.c:1928
-msgid "wrong insn in the fallthru edge"
-msgstr ""
+#: cfgloop.c:1237
+#, c-format
+msgid "Basic block %d should not be marked irreducible."
+msgstr "Basisblock %d sollte nicht als irreduzibel markiert werden."
-#: cfgrtl.c:1935
+#: cfgloop.c:1245
#, c-format
-msgid "verify_flow_info: Basic block %d succ edge is corrupted"
-msgstr ""
+msgid "Edge from %d to %d should be marked irreducible."
+msgstr "Kante von %d nach %d sollte als irreduzibel markiert werden."
-#: cfgrtl.c:1951
+#: cfgloop.c:1252
#, c-format
-msgid "Missing REG_EH_REGION note in the end of bb %i"
-msgstr ""
+msgid "Edge from %d to %d should not be marked irreducible."
+msgstr "Kante von %d nach %d sollte nicht als irreduzibel markiert werden."
-#: cfgrtl.c:1959
+#: cfgrtl.c:1877
#, c-format
-msgid "Too many outgoing branch edges from bb %i"
-msgstr ""
+msgid "end insn %d for block %d not found in the insn stream"
+msgstr "Ende-insn %d für Block %d nicht im insn-Stream gefunden"
-#: cfgrtl.c:1964
+#: cfgrtl.c:1891
#, c-format
-msgid "Fallthru edge after unconditional jump %i"
-msgstr ""
+msgid "insn %d is in multiple basic blocks (%d and %d)"
+msgstr "insn %d ist in mehreren Basisblöcken (%d und %d)"
-#: cfgrtl.c:1969
+#: cfgrtl.c:1903
#, c-format
-msgid "Wrong amount of branch edges after unconditional jump %i"
-msgstr ""
+msgid "head insn %d for block %d not found in the insn stream"
+msgstr "Kopf-insn %d für Block %d nicht im insn-Stream gefunden"
+
+#: cfgrtl.c:1925
+msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i"
+msgstr "verify_flow_info: REG_BR_PROB passt nicht zu cfg %wi %i"
-#: cfgrtl.c:1975
+#: cfgrtl.c:1953
#, c-format
-msgid "Wrong amount of branch edges after conditional jump %i"
-msgstr ""
+msgid "Missing REG_EH_REGION note in the end of bb %i"
+msgstr "Fehlender Vermerk von REG_EH_REGION am Ende vom bb %i"
-#: cfgrtl.c:1980
+#: cfgrtl.c:1961
#, c-format
-msgid "Call edges for non-call insn in bb %i"
-msgstr ""
+msgid "Too many outgoing branch edges from bb %i"
+msgstr "Zu viele abgehende Zweig-Kanten vom bb %i"
-#: cfgrtl.c:1989
+#: cfgrtl.c:1966
#, c-format
-msgid "Abnormal edges for no purpose in bb %i"
-msgstr ""
+msgid "Fallthru edge after unconditional jump %i"
+msgstr "Fallthru-Kante nach unbedingtem Sprung %i"
-#: cfgrtl.c:2004
+#: cfgrtl.c:1977
#, c-format
-msgid "missing barrier after block %i"
-msgstr ""
+msgid "Wrong amount of branch edges after conditional jump %i"
+msgstr "Falsche Summe der Zweig-Kanten nach bedingtem Sprung %i"
-#: cfgrtl.c:2014
+#: cfgrtl.c:1982
#, c-format
-msgid "basic block %d pred edge is corrupted"
-msgstr ""
+msgid "Call edges for non-call insn in bb %i"
+msgstr "Ruf-Kanten für Nicht-Aufruf-insn im bb %i"
+
+#: cfgrtl.c:1991
+#, c-format
+msgid "Abnormal edges for no purpose in bb %i"
+msgstr "Abnormale Kanten ohne Grund in bb %i"
-#: cfgrtl.c:2031
+#: cfgrtl.c:2001
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is NULL"
-msgstr ""
+msgstr "insn %d innerhalb des Basis-Blockes %d, aber block_for_insn ist NULL"
-#: cfgrtl.c:2035
+#: cfgrtl.c:2005
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is %i"
-msgstr ""
+msgstr "insn %d innerhalb Basis-Blockes %d, aber block_for_insn ist %i"
-#: cfgrtl.c:2049 cfgrtl.c:2059
+#: cfgrtl.c:2019 cfgrtl.c:2029
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
-msgstr ""
+msgstr "NOTE_INSN_BASIC_BLOCK fehlt für Block %d"
-#: cfgrtl.c:2072
+#: cfgrtl.c:2042
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
-msgstr ""
+msgstr "NOTE_INSN_BASIC_BLOCK %d in der Mitte des Basis-Blocks %d"
-#: cfgrtl.c:2084
+#: cfgrtl.c:2052
#, c-format
msgid "in basic block %d:"
-msgstr ""
+msgstr "im Basis-Block %d:"
-#: cfgrtl.c:2085
+#: cfgrtl.c:2053
msgid "flow control insn inside a basic block"
-msgstr ""
+msgstr "Flusskontroll-insn innerhalb eines Basis-Blockes"
-#: cfgrtl.c:2104
+#: cfgrtl.c:2099
#, c-format
-msgid "basic block %i edge lists are corrupted"
-msgstr ""
+msgid "missing barrier after block %i"
+msgstr "fehlende Sperre nach Block %i"
-#: cfgrtl.c:2119
-msgid "basic blocks not numbered consecutively"
-msgstr ""
+#: cfgrtl.c:2112
+#, c-format
+msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgstr "verify_flow_info: Falsche Blöcke für »fallthru« %i->%i"
+
+#: cfgrtl.c:2127
+#, c-format
+msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgstr "verify_flow_info: Falsches »fallthru« %i->%i"
+
+#: cfgrtl.c:2129
+msgid "wrong insn in the fallthru edge"
+msgstr "falsche insn in »fallthru«-Kante"
-#: cfgrtl.c:2144
+#: cfgrtl.c:2146
+msgid "basic blocks not laid down consecutively"
+msgstr "Basis-Blöcke sind nicht fortlaufend"
+
+#: cfgrtl.c:2171
msgid "insn outside basic block"
-msgstr ""
+msgstr "insn außerhalb eines Basis-Blockes"
-#: cfgrtl.c:2152
+#: cfgrtl.c:2179
msgid "return not followed by barrier"
-msgstr ""
+msgstr "»return« nicht gefolgt von Sperre"
-#: cfgrtl.c:2157
+#: cfgrtl.c:2186
#, c-format
msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
-msgstr ""
+msgstr "Anzahl der bb-Vermerke in insn-Kette (%d) != n_basic_blocks (%d)"
-#: cfgrtl.c:2161
-msgid "verify_flow_info failed"
-msgstr ""
+#: cgraph.c:161
+msgid "function body not available"
+msgstr "Funktionskörper nicht verfügbar"
+
+#: cgraph.c:163 cgraphunit.c:341
+msgid "redefined extern inline functions are not considered for inlining"
+msgstr "redefinierte »extern inline«-Funktionen kommen nicht als »inline« in Betracht"
+
+#: cgraph.c:166 cgraphunit.c:346
+msgid "function not considered for inlining"
+msgstr "Funktion kommt nicht für »inline« in Betracht"
+
+#: cgraph.c:168 cgraphunit.c:344
+msgid "function not inlinable"
+msgstr "Funktion kann nicht »inline« sein"
+
+#: cgraph.c:476
+msgid "%D renamed after being referenced in assembly"
+msgstr "%D nach Referenzierung in Assemblierung umbenannt"
+
+#: cgraphunit.c:1042
+msgid "--param large-function-growth limit reached"
+msgstr "--param large-function-growth: Limit erreicht"
-#: collect2.c:425
+#: cgraphunit.c:1055
+msgid "--param large-function-growth limit reached while inlining the caller"
+msgstr "--param large-function-growth: Limit bei »inline« des Aufrufers erreicht"
+
+#: cgraphunit.c:1120
+msgid "--param max-inline-insns-single limit reached"
+msgstr "--param max-inline-insns-single: Limit erreicht"
+
+#: cgraphunit.c:1144
+msgid "--param max-inline-insns-single limit reached after inlining into the callee"
+msgstr "--param max-inline-insns-single: Limit nach »inline« im Aufgerufenen erreicht"
+
+#: cgraphunit.c:1221
+msgid "--param inline-unit-growth limit reached"
+msgstr "--param inline-unit-growth: Limit erreicht"
+
+#: cgraphunit.c:1293 cgraphunit.c:1437
+msgid "recursive inlining"
+msgstr "rekursives inline"
+
+#: collect2.c:406
msgid "internal error"
-msgstr ""
+msgstr "interner Fehler"
-#: collect2.c:934
+#: collect2.c:894
msgid "no arguments"
-msgstr ""
+msgstr "Keiner Argumente"
-#: collect2.c:1263 collect2.c:1411 collect2.c:1444
+#: collect2.c:1226 collect2.c:1374 collect2.c:1407
#, c-format
msgid "fopen %s"
-msgstr ""
+msgstr "fopen %s"
-#: collect2.c:1266 collect2.c:1416 collect2.c:1447
+#: collect2.c:1229 collect2.c:1379 collect2.c:1410
#, c-format
msgid "fclose %s"
-msgstr ""
+msgstr "fclose %s"
-#: collect2.c:1275
+#: collect2.c:1238
#, c-format
msgid "collect2 version %s"
-msgstr ""
+msgstr "collect2-Version %s"
-#: collect2.c:1365
+#: collect2.c:1328
#, c-format
msgid "%d constructor(s) found\n"
-msgstr ""
+msgstr "%d Konstruktor(en) gefunden\n"
-#: collect2.c:1366
+#: collect2.c:1329
#, c-format
msgid "%d destructor(s) found\n"
-msgstr ""
+msgstr "%d Destruktor(en) gefunden\n"
-#: collect2.c:1367
+#: collect2.c:1330
#, c-format
msgid "%d frame table(s) found\n"
-msgstr ""
+msgstr "%d Rahmentabelle(n) gefunden\n"
-#: collect2.c:1508
+#: collect2.c:1470
#, c-format
msgid "%s terminated with signal %d [%s]%s"
-msgstr ""
+msgstr "%s mit Signal %d [%s]%s beendet"
-#: collect2.c:1527
+#: collect2.c:1488
#, c-format
msgid "%s returned %d exit status"
-msgstr ""
+msgstr "%s gab Ende-Status %d zurück"
-#: collect2.c:1555
+#: collect2.c:1513
#, c-format
msgid "[cannot find %s]"
-msgstr ""
+msgstr "[kann %s nicht finden]"
-#: collect2.c:1570
+#: collect2.c:1528
#, c-format
msgid "cannot find `%s'"
-msgstr ""
+msgstr "kann »%s« nicht finden"
-#: collect2.c:1581 collect2.c:1584
+#: collect2.c:1539 collect2.c:1542
#, c-format
msgid "redirecting stdout: %s"
-msgstr ""
+msgstr "leite Standardausgabe um: %s"
-#: collect2.c:1627
+#: collect2.c:1581
#, c-format
msgid "[Leaving %s]\n"
-msgstr ""
+msgstr "[Verlasse %s]\n"
-#: collect2.c:1870
+#: collect2.c:1801
#, c-format
msgid ""
"\n"
"write_c_file - output name is %s, prefix is %s\n"
msgstr ""
+"\n"
+"write_c_file - Ausgabename ist %s, Präfix ist %s\n"
-#: collect2.c:2082
+#: collect2.c:2005
msgid "cannot find `nm'"
-msgstr ""
+msgstr "kann »nm« nicht finden"
-#: collect2.c:2092 collect2.c:2533
+#: collect2.c:2015 collect2.c:2444
msgid "pipe"
-msgstr ""
+msgstr "Pipe"
-#: collect2.c:2096 collect2.c:2537
+#: collect2.c:2019 collect2.c:2448
msgid "fdopen"
-msgstr ""
+msgstr "fdopen"
-#: collect2.c:2122 collect2.c:2563
+#: collect2.c:2045 collect2.c:2474
#, c-format
msgid "dup2 %d 1"
-msgstr ""
+msgstr "dup2 %d 1"
-#: collect2.c:2125 collect2.c:2128 collect2.c:2141 collect2.c:2566
-#: collect2.c:2569 collect2.c:2582
+#: collect2.c:2048 collect2.c:2051 collect2.c:2064 collect2.c:2477
+#: collect2.c:2480 collect2.c:2493
#, c-format
msgid "close %d"
-msgstr ""
+msgstr "close %d"
-#: collect2.c:2131 collect2.c:2572
+#: collect2.c:2054 collect2.c:2483
#, c-format
msgid "execv %s"
-msgstr ""
+msgstr "execv %s"
-#: collect2.c:2185
+#: collect2.c:2108
#, c-format
msgid "init function found in object %s"
-msgstr ""
+msgstr "init-Funktion im Objekt %s gefunden"
-#: collect2.c:2193
+#: collect2.c:2116
#, c-format
msgid "fini function found in object %s"
-msgstr ""
+msgstr "fini-Funktion im Objekt %s gefunden"
-#: collect2.c:2216 collect2.c:2621
+#: collect2.c:2139 collect2.c:2532
msgid "fclose"
-msgstr ""
+msgstr "fclose"
-#: collect2.c:2261
+#: collect2.c:2181
#, c-format
msgid "unable to open file '%s'"
-msgstr ""
+msgstr "kann Datei »%s« nicht öffnen"
-#: collect2.c:2263
+#: collect2.c:2183
#, c-format
msgid "unable to stat file '%s'"
-msgstr ""
+msgstr "kann Dateistatus für »%s« nicht ermitteln"
-#: collect2.c:2269
+#: collect2.c:2189
#, c-format
msgid "unable to mmap file '%s'"
-msgstr ""
+msgstr "kann mmap nicht auf Datei »%s« anwenden"
-#: collect2.c:2422
+#: collect2.c:2335
msgid "not found\n"
-msgstr ""
+msgstr "nicht gefunden\n"
-#: collect2.c:2424 collect2.c:2600
+#: collect2.c:2337 collect2.c:2511
#, c-format
msgid "dynamic dependency %s not found"
-msgstr ""
+msgstr "dynamische Abhängigkeit %s nicht gefunden"
-#: collect2.c:2444
+#: collect2.c:2356
#, c-format
msgid "bad magic number in file '%s'"
-msgstr ""
+msgstr "Falsche magische Zahl in Datei »%s«"
-#: collect2.c:2466
+#: collect2.c:2378
msgid "dynamic dependencies.\n"
-msgstr ""
+msgstr "dynamische Abhängigkeiten.\n"
-#: collect2.c:2524
+#: collect2.c:2435
msgid "cannot find `ldd'"
-msgstr ""
+msgstr "kann »ldd« nicht finden"
-#: collect2.c:2585
+#: collect2.c:2496
msgid ""
"\n"
"ldd output with constructors/destructors.\n"
msgstr ""
+"\n"
+"Ausgabe von ldd mit Konstruktoren/Destruktoren.\n"
-#: collect2.c:2612
+#: collect2.c:2523
#, c-format
msgid "unable to open dynamic dependency '%s'"
-msgstr ""
+msgstr "kann dynamische Abhängigkeit »%s« nicht öffnen"
-#: collect2.c:2726
+#: collect2.c:2683
#, c-format
msgid "%s: not a COFF file"
-msgstr ""
+msgstr "%s: keine COFF-Datei"
-#: collect2.c:2845
+#: collect2.c:2802
#, c-format
msgid "%s: cannot open as COFF file"
-msgstr ""
+msgstr "kann %s nicht als COFF-Datei öffnen"
-#: collect2.c:2901
+#: collect2.c:2857
#, c-format
msgid "library lib%s not found"
-msgstr ""
+msgstr "Bibliothek lib%s nicht gefunden"
-#: collect2.c:3028
+#: combine.c:13027
#, c-format
-msgid "open %s"
-msgstr ""
-
-#: collect2.c:3051
-msgid "incompatibilities between object file & expected values"
+msgid ""
+";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
+"\n"
msgstr ""
+";; Kombinierer-Statistik: %d Versuche, %d Ersetzungen (%d benötigten neuen Platz),\n"
+";; %d Erfolge.\n"
+"\n"
-#: collect2.c:3124
+#: combine.c:13036
#, c-format
msgid ""
"\n"
-"Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
msgstr ""
+"\n"
+";; Kombinierer-Gesamtwerte: %d Versuche, %d Ersetzungen (%d benötigten neuen Platz),\n"
+";; %d Erfolge.\n"
-#: collect2.c:3133
-msgid "string section missing"
-msgstr ""
+#: convert.c:70
+msgid "cannot convert to a pointer type"
+msgstr "kann nicht in Zeigertyp konvertieren"
-#: collect2.c:3136
-msgid "section pointer missing"
-msgstr ""
+#: convert.c:267
+msgid "pointer value used where a floating point value was expected"
+msgstr "Zeigerwert verwendet, wo Gleitkommawert erwartet wurde"
-#: collect2.c:3184
-msgid "no symbol table found"
-msgstr ""
+#: convert.c:271
+msgid "aggregate value used where a float was expected"
+msgstr "zusammengesetzten Wert verwendet, wo Gleitkomma erwartet wurde"
-#: collect2.c:3197
-msgid "no cmd_strings found"
-msgstr ""
+#: convert.c:296
+msgid "conversion to incomplete type"
+msgstr "Konvertierung in unvollständigen Typen"
-#: collect2.c:3209
-msgid ""
-"\n"
-"Updating header and load commands.\n"
-"\n"
-msgstr ""
+#: convert.c:600 convert.c:678
+msgid "can't convert between vector values of different size"
+msgstr "kann nicht zwischen Vektorwerten verschiedener Größen konvertieren"
-#: collect2.c:3216
-#, c-format
-msgid "load command map, %d cmds, new size %ld.\n"
-msgstr ""
+#: convert.c:606
+msgid "aggregate value used where an integer was expected"
+msgstr "zusammengesetzter Wert verwendet, wo Ganzzahl erwartet wurde"
-#: collect2.c:3247
-msgid ""
-"writing load commands.\n"
-"\n"
-msgstr ""
+#: convert.c:657 f/com.c:1101
+msgid "pointer value used where a complex was expected"
+msgstr "Zeigerwert verwendet, wo »complex« erwartet wurde"
-#: collect2.c:3267
+#: convert.c:661 f/com.c:1103
+msgid "aggregate value used where a complex was expected"
+msgstr "zusammengesetzer Wert verwendet, wo »complex« erwartet wurde"
+
+#: convert.c:684
+msgid "can't convert value to a vector"
+msgstr "kann Wert nicht in Vektor konvertieren"
+
+#: coverage.c:164
#, c-format
-msgid "close %s"
-msgstr ""
+msgid "`%s' is not a gcov data file"
+msgstr "»%s« ist keine gcov-Datei"
-#: collect2.c:3341
-msgid "could not convert 0x%l.8x into a region"
-msgstr ""
+#: coverage.c:175
+#, c-format
+msgid "`%s' is version `%.4s', expected version `%.4s'"
+msgstr "»%s« hat Version »%.4s«, Version »%.4s« erwartet"
-#: collect2.c:3345
+#: coverage.c:255 coverage.c:263
#, c-format
-msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
-msgstr ""
+msgid "coverage mismatch for function %u while reading execution counters."
+msgstr "Überdeckung passt nicht für Funktion %u beim Lesen der Ausführungszähler."
-#: collect2.c:3472
-msgid "bad magic number"
-msgstr ""
+#: coverage.c:257 coverage.c:340
+#, c-format
+msgid "checksum is %x instead of %x"
+msgstr "Prüfsumme ist %x statt %x"
-#: collect2.c:3473
-msgid "bad header version"
-msgstr ""
+#: coverage.c:265 coverage.c:348
+#, c-format
+msgid "number of counters is %d instead of %d"
+msgstr "Zahl der Zähler ist %d statt %d"
-#: collect2.c:3474
-msgid "bad raw header version"
-msgstr ""
+#: coverage.c:271
+#, c-format
+msgid "cannot merge separate %s counters for function %u"
+msgstr "separate %s Zähler für die Funktion %u können nicht verschmolzen werden"
-#: collect2.c:3475
-msgid "raw header buffer too small"
-msgstr ""
+#: coverage.c:296
+#, c-format
+msgid "`%s' has overflowed"
+msgstr "»%s« übergelaufen"
-#: collect2.c:3476
-msgid "old raw header file"
-msgstr ""
+#: coverage.c:296
+#, c-format
+msgid "`%s' is corrupted"
+msgstr "»%s« ist beschädigt"
-#: collect2.c:3477
-msgid "unsupported version"
-msgstr ""
+#: coverage.c:319
+#, c-format
+msgid "file %s not found, execution counts assumed to be zero"
+msgstr "Datei %s nicht gefunden, Ausführungszähler als null angenommen"
-#: collect2.c:3479
+#: coverage.c:329
#, c-format
-msgid "unknown {de,en}code_mach_o_hdr return value %d"
-msgstr ""
+msgid "no coverage for function '%s' found."
+msgstr "keine Überdeckung für Funktion »%s« gefunden."
-#: collect2.c:3499
+#: coverage.c:337 coverage.c:345
#, c-format
-msgid "fstat %s"
-msgstr ""
+msgid "coverage mismatch for function '%s' while reading counter '%s'."
+msgstr "Überdeckung passt nicht bei Funktion »%s« beim Lesen des Zählers »%s«."
-#: collect2.c:3536 collect2.c:3584
+#: coverage.c:492
#, c-format
-msgid "lseek %s 0"
-msgstr ""
+msgid "cannot open %s"
+msgstr "Es ist nicht möglich, »%s« zu öffnen"
-#: collect2.c:3540
+#: coverage.c:527
#, c-format
-msgid "read %s"
-msgstr ""
+msgid "error writing `%s'"
+msgstr "Fehler beim Schreiben der Datei »%s«"
-#: collect2.c:3543
+#. XXX should be DL_SORRY
+#: cppcharset.c:653
#, c-format
-msgid "read %ld bytes, expected %ld, from %s"
-msgstr ""
+msgid "conversion from %s to %s not supported by iconv"
+msgstr "Konvertierung von %s nach %s wird von iconv nicht unterstützt"
+
+#: cppcharset.c:656
+msgid "iconv_open"
+msgstr "iconv_open"
-#: collect2.c:3564
+#. XXX should be DL_SORRY
+#: cppcharset.c:664
#, c-format
-msgid "msync %s"
-msgstr ""
+msgid "no iconv implementation, cannot convert from %s to %s"
+msgstr "keine Implementation für iconv, es kann nicht von %s nach %s konvertiert werden"
+
+#: cppcharset.c:808
+msgid "universal character names are only valid in C++ and C99"
+msgstr "universelle Zeichennamen sind nur in C++ und C99 gültig"
-#: collect2.c:3571
+#: cppcharset.c:811
#, c-format
-msgid "munmap %s"
-msgstr ""
+msgid "the meaning of '\\%c' is different in traditional C"
+msgstr "die Bedeutung von '\\%c' ist in traditionellem C anders"
-#: collect2.c:3588
+#: cppcharset.c:837
#, c-format
-msgid "write %s"
-msgstr ""
+msgid "incomplete universal character name %.*s"
+msgstr "unvollständiger Universal-Zeichenname %.*s"
-#: collect2.c:3591
+#: cppcharset.c:849
#, c-format
-msgid "wrote %ld bytes, expected %ld, to %s"
-msgstr ""
+msgid "%.*s is not a valid universal character"
+msgstr "»%.*s« ist kein gültiges universelles Zeichen"
-#: combine.c:13222
+#: cppcharset.c:859
#, c-format
-msgid ""
-";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
-"\n"
-msgstr ""
+msgid "universal character %.*s is not valid in an identifier"
+msgstr "universelles Zeichen %.*s ist nicht gültig in Bezeichner"
-#: combine.c:13232
+#: cppcharset.c:863
#, c-format
-msgid ""
-"\n"
-";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
-msgstr ""
+msgid "universal character %.*s is not valid at the start of an identifier"
+msgstr "universelles Zeichen %.*s ist nicht gültig am Anfang eines Bezeichners"
-#: convert.c:69
-msgid "cannot convert to a pointer type"
-msgstr ""
+#: cppcharset.c:898
+msgid "converting UCN to source character set"
+msgstr "UCN wird in Quellzeichensatz konvertiert"
-#: convert.c:102
-msgid "pointer value used where a floating point value was expected"
-msgstr ""
+#: cppcharset.c:902
+msgid "converting UCN to execution character set"
+msgstr "UCN wird in Ausführungszeichensatz konvertiert"
-#: convert.c:106
-msgid "aggregate value used where a float was expected"
-msgstr ""
+#: cppcharset.c:967
+msgid "the meaning of '\\x' is different in traditional C"
+msgstr "die Bedeutung von '\\x' ist in traditionellem C anders"
-#: convert.c:132
-msgid "conversion to incomplete type"
-msgstr ""
+#: cppcharset.c:984 f/lex.c:580
+msgid "\\x used with no following hex digits"
+msgstr "\\x ohne folgende Hex-Ziffern verwendet"
-#: convert.c:414 convert.c:494
-msgid "can't convert between vector values of different size"
-msgstr ""
+#: cppcharset.c:991
+msgid "hex escape sequence out of range"
+msgstr "Hex-Fluchtsequenz außerhalb des Wertebereiches"
-#: convert.c:420
-msgid "aggregate value used where an integer was expected"
-msgstr ""
+#: cppcharset.c:1030
+msgid "octal escape sequence out of range"
+msgstr "Oktal-Fluchtsequenz außerhalb des Wertebereiches"
-#: convert.c:472 f/com.c:1100
-msgid "pointer value used where a complex was expected"
-msgstr ""
+#: cppcharset.c:1098
+msgid "the meaning of '\\a' is different in traditional C"
+msgstr "die Bedeutung von '\\a' ist in traditionellem C anders"
-#: convert.c:476 f/com.c:1102
-msgid "aggregate value used where a complex was expected"
-msgstr ""
+#: cppcharset.c:1105
+#, c-format
+msgid "non-ISO-standard escape sequence, '\\%c'"
+msgstr "nicht-ISO-standardkonforme Fluchtsequenz '\\%c'"
-#: convert.c:500
-msgid "can't convert value to a vector"
-msgstr ""
+#: cppcharset.c:1113
+#, c-format
+msgid "unknown escape sequence '\\%c'"
+msgstr "unbekannte Fluchtsequenz '\\%c'"
+
+#: cppcharset.c:1116
+#, c-format
+msgid "unknown escape sequence: '\\%03o'"
+msgstr "unbekannte Fluchtsequenz: '\\%03o'"
+
+#: cppcharset.c:1122
+msgid "converting escape sequence to execution character set"
+msgstr "Fluchtsequenz wird in Zeichensatz der Ausführung konvertiert"
+
+#: cppcharset.c:1181
+msgid "converting to execution character set"
+msgstr "Konvertierung in Zeichensatz der Ausführung"
+
+#: cppcharset.c:1244 cppcharset.c:1307
+msgid "character constant too long for its type"
+msgstr "Zeichenkonstante zu lang für ihren Typ"
+
+#: cppcharset.c:1247
+msgid "multi-character character constant"
+msgstr "Zeichenkonstante mit mehreren Zeichen"
+
+#: cppcharset.c:1339
+msgid "empty character constant"
+msgstr "Leere Zeichenkonstante"
+
+#: cppcharset.c:1378
+#, c-format
+msgid "failure to convert %s to %s"
+msgstr "Fehler beim Konvertieren von %s in %s"
-#: cpperror.c:113
+#: cpperror.c:110 diagnostic.def:5
msgid "warning: "
msgstr "Warnung: "
-#: cpperror.c:115
+#: cpperror.c:112
msgid "internal error: "
msgstr "interner Fehler: "
-#: cpperror.c:189
+#: cpperror.c:174
msgid "stdout"
-msgstr ""
-
-#: cpperror.c:191 gcc.c:6428
-#, c-format
-msgid "%s: %s"
-msgstr ""
+msgstr "Standardausgabe"
-#: cppexp.c:199
+#: cppexp.c:192
msgid "too many decimal points in number"
-msgstr ""
+msgstr "zu viele Dezimalpunkte in Zahl"
-#: cppexp.c:219
+#: cppexp.c:212
#, c-format
msgid "invalid digit \"%c\" in octal constant"
-msgstr ""
+msgstr "ungültige Ziffer »%c« in Oktal-Konstante"
-#: cppexp.c:225
+#: cppexp.c:218
msgid "use of C99 hexadecimal floating constant"
-msgstr ""
+msgstr "Verwendung von C99 hexadezimaler Gleitkommakonstante"
-#: cppexp.c:234
+#: cppexp.c:227
msgid "exponent has no digits"
-msgstr ""
+msgstr "Exponent hat keine Ziffern"
-#: cppexp.c:241
+#: cppexp.c:234
msgid "hexadecimal floating constants require an exponent"
-msgstr ""
+msgstr "hexadezimale Gleitkommakonstanten benötigen Exponenten"
-#: cppexp.c:247
+#: cppexp.c:240
#, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
-msgstr ""
+msgstr "ungültiger Suffix »%.*s« an Gleitkommakonstante"
-#: cppexp.c:257 cppexp.c:282
+#: cppexp.c:250 cppexp.c:275
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
-msgstr ""
+msgstr "traditionelles C lehnt den Suffix »%.*s« ab"
-#: cppexp.c:268
+#: cppexp.c:261
#, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
-msgstr ""
+msgstr "ungültiger Suffix »%.*s« an Ganzzahlkonstante"
-#: cppexp.c:289
+#: cppexp.c:283
msgid "use of C99 long long integer constant"
-msgstr ""
+msgstr "C99 long long Ganzzahlkonstante verwendet"
-#: cppexp.c:295
+#: cppexp.c:290
msgid "imaginary constants are a GCC extension"
-msgstr ""
+msgstr "imaginäre Konstanten sind eine GCC-Erweiterung"
-#: cppexp.c:383
+#: cppexp.c:376
msgid "integer constant is too large for its type"
-msgstr ""
+msgstr "Ganzzahlkonstante ist zu groß für ihren Typ"
-#: cppexp.c:395
+#: cppexp.c:388
msgid "integer constant is so large that it is unsigned"
-msgstr ""
+msgstr "Ganzzahlkonstante ist so groß, dass sie vorzeichenlos ist"
-#: cppexp.c:482
+#: cppexp.c:470
msgid "missing ')' after \"defined\""
-msgstr ""
+msgstr "fehlendes ')' hinter »defined«"
-#: cppexp.c:489
+#: cppexp.c:477
msgid "operator \"defined\" requires an identifier"
-msgstr ""
+msgstr "Operator »defined« erfordert einen Bezeichner"
-#: cppexp.c:497
+#: cppexp.c:485
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
-msgstr ""
+msgstr "(»%s« ist ein alternatives Token for »%s« in C++)"
-#: cppexp.c:507
+#: cppexp.c:495
msgid "this use of \"defined\" may not be portable"
-msgstr ""
+msgstr "diese Verwendung von »defined« könnte nicht portierbar sein"
-#: cppexp.c:545
+#: cppexp.c:531
msgid "floating constant in preprocessor expression"
-msgstr ""
+msgstr "Gleitkommakonstante in Präprozessorausdruck"
-#: cppexp.c:551
+#: cppexp.c:537
msgid "imaginary number in preprocessor expression"
-msgstr ""
+msgstr "imaginäre Zahl in Präprozessorausdruck"
-#: cppexp.c:596
-#, c-format
-msgid "ISO C++ does not permit \"%s\" in #if"
-msgstr ""
-
-#: cppexp.c:604
+#: cppexp.c:582
#, c-format
msgid "\"%s\" is not defined"
-msgstr ""
+msgstr "»%s« ist nicht definiert"
-#: cppexp.c:737 cppexp.c:772
+#: cppexp.c:714 cppexp.c:743
#, c-format
msgid "missing binary operator before token \"%s\""
-msgstr ""
-
-#: cppexp.c:756
-#, c-format
-msgid "invalid character '%c' in #if"
-msgstr ""
-
-#: cppexp.c:758
-#, c-format
-msgid "invalid character '\\%03o' in #if"
-msgstr ""
+msgstr "fehlender binärer Operator vor Token »%s«"
-#: cppexp.c:763
+#: cppexp.c:734
#, c-format
msgid "token \"%s\" is not valid in preprocessor expressions"
-msgstr ""
+msgstr "Token »%s« ist nicht gültig in Präprozessorausdrücken"
-#: cppexp.c:782
+#: cppexp.c:753
msgid "void expression between '(' and ')'"
-msgstr ""
+msgstr "ungültiger Ausdruck zwischen '(' und ')'"
-#: cppexp.c:785
+#: cppexp.c:756
msgid "#if with no expression"
-msgstr ""
+msgstr "#if ohne Ausdruck"
-#: cppexp.c:787
+#: cppexp.c:758
#, c-format
msgid "operator '%s' has no right operand"
-msgstr ""
+msgstr "Operator »%s« hat keinen rechten Operanden"
-#: cppexp.c:813
+#: cppexp.c:784
msgid " ':' without preceding '?'"
-msgstr ""
+msgstr " ':' ohne vorangehendes '?'"
-#: cppexp.c:840
+#: cppexp.c:811
msgid "unbalanced stack in #if"
-msgstr ""
+msgstr "unausgeglichener Keller in #if"
-#: cppexp.c:862
+#: cppexp.c:830
#, c-format
msgid "impossible operator '%u'"
-msgstr ""
+msgstr "unmöglicher Operator '%u'"
-#: cppexp.c:954
+#: cppexp.c:922
msgid "missing ')' in expression"
-msgstr ""
+msgstr "fehlendes ')' in Ausdruck"
-#: cppexp.c:975
+#: cppexp.c:943
msgid "'?' without following ':'"
-msgstr ""
+msgstr "'?' ohne folgendes ':'"
-#: cppexp.c:985
+#: cppexp.c:953
msgid "integer overflow in preprocessor expression"
-msgstr ""
+msgstr "Ganzzahlüberlauf in Präprozessorausdruck"
-#: cppexp.c:990
+#: cppexp.c:958
msgid "missing '(' in expression"
-msgstr ""
+msgstr "fehlendes '(' in Ausdruck"
-#: cppexp.c:1026
+#: cppexp.c:990
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
-msgstr ""
+msgstr "der linke Operand von »%s« ändert bei der Weitergabe das Vorzeichen"
-#: cppexp.c:1031
+#: cppexp.c:995
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
-msgstr ""
+msgstr "der rechte Operand von »%s« ändert bei der Weitergabe das Vorzeichen"
-#: cppexp.c:1414
+#: cppexp.c:1352
msgid "comma operator in operand of #if"
-msgstr ""
+msgstr "Kommaoperator in Operand von #if"
-#: cppexp.c:1551
+#: cppexp.c:1483
msgid "division by zero in #if"
-msgstr ""
+msgstr "Division durch null in #if"
-#: cppfiles.c:411
-#, c-format
-msgid "%s is too large"
-msgstr "%s ist zu groß"
+#: cppfiles.c:370
+msgid "NULL directory in find_file"
+msgstr "NULL-Verzeichnis in find_file"
-#: cppfiles.c:447
-#, c-format
-msgid "%s is shorter than expected"
-msgstr ""
+#: cppfiles.c:397
+msgid "one or more PCH files were found, but they were invalid"
+msgstr "ein oder mehrere PCH-Dateien wurden gefunden, aber sie sind ungültig"
-#: cppfiles.c:461
-#, c-format
-msgid "%s is a block device"
-msgstr ""
+#: cppfiles.c:400
+msgid "use -Winvalid-pch for more information"
+msgstr "verwenden Sie -Winvalid-pch für mehr Informationen"
-#: cppfiles.c:594
+#: cppfiles.c:458
#, c-format
-msgid "no include path in which to find %s"
-msgstr ""
-
-#: cppfiles.c:668
-msgid "Multiple include guards may be useful for:\n"
-msgstr ""
-
-#: cppfiles.c:1014
-msgid "absolute file name in remap_filename"
-msgstr ""
+msgid "%s is a block device"
+msgstr "%s ist ein Block-Gerät"
-#: cppinit.c:224
+#: cppfiles.c:475
#, c-format
-msgid "ignoring nonexistent directory \"%s\"\n"
-msgstr "nicht vorhandenes Verzeichnis »%s« wird ignoriert\n"
+msgid "%s is too large"
+msgstr "%s ist zu groß"
-#: cppinit.c:231
+#: cppfiles.c:510
#, c-format
-msgid "%s: Not a directory"
-msgstr "%s: Kein Verzeichnis"
+msgid "%s is shorter than expected"
+msgstr "%s ist kürzer als erwartet"
-#: cppinit.c:287
+#: cppfiles.c:696
#, c-format
-msgid "ignoring duplicate directory \"%s\"\n"
-msgstr "doppeltes Verzeichnis »%s« wird ignoriert\n"
+msgid "no include path in which to search for %s"
+msgstr "kein Include-Pfad, um %s zu finden"
-#: cppinit.c:325
-msgid " as it is a non-system directory that duplicates a system directory\n"
-msgstr ""
+#: cppfiles.c:956
+msgid "Multiple include guards may be useful for:\n"
+msgstr "Mehrere Include-Wächter könnten nützlich sein für:\n"
-#: cppinit.c:891
+#: cppinit.c:387
msgid "cppchar_t must be an unsigned type"
-msgstr ""
+msgstr "cppchar_t muss ein vorzeichenloser Typ sein"
-#: cppinit.c:895
+#: cppinit.c:391
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
-msgstr ""
+msgstr "Präprozessorarithmetik hat maximale Präzision von %lu Bits; Ziel erfordert %lu Bits"
-#: cppinit.c:901
+#: cppinit.c:398
msgid "CPP arithmetic must be at least as precise as a target int"
-msgstr ""
+msgstr "CPP-Arithmetik muss mindestens so genau sein wie das Ziel int"
-#: cppinit.c:904
+#: cppinit.c:401
msgid "target char is less than 8 bits wide"
-msgstr ""
+msgstr "Ziel-char ist weniger als 8 Bits breit"
-#: cppinit.c:908
+#: cppinit.c:405
msgid "target wchar_t is narrower than target char"
-msgstr ""
+msgstr "Ziel-wchar_t ist schmaler als Ziel char"
-#: cppinit.c:912
+#: cppinit.c:409
msgid "target int is narrower than target char"
-msgstr ""
+msgstr "Ziel-int ist schmaler als Ziel-char"
-#: cppinit.c:916
+#: cppinit.c:414
msgid "CPP half-integer narrower than CPP character"
-msgstr ""
+msgstr "CPP Halb-Ganzzahl ist schmaler als CPP-Zeichen"
-#: cppinit.c:920
+#: cppinit.c:418
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
-msgstr ""
-
-#: cppinit.c:972
-msgid "#include \"...\" search starts here:\n"
-msgstr ""
-
-#: cppinit.c:976
-msgid "#include <...> search starts here:\n"
-msgstr ""
-
-#: cppinit.c:979
-msgid "End of search list.\n"
-msgstr ""
-
-#: cppinit.c:1057
-msgid "<built-in>"
-msgstr ""
-
-#: cppinit.c:1059
-msgid "<command line>"
-msgstr ""
-
-#. Irix6 "cc -n32" and OSF4 cc have problems with char foo[] = ("string");
-#. I.e. a const string initializer with parens around it. That is
-#. what N_("string") resolves to, so we make no_* be macros instead.
-#: cppinit.c:1164
-#, c-format
-msgid "assertion missing after %s"
-msgstr ""
-
-#: cppinit.c:1165
-#, c-format
-msgid "directory name missing after %s"
-msgstr ""
-
-#: cppinit.c:1166
-#, c-format
-msgid "file name missing after %s"
-msgstr ""
-
-#: cppinit.c:1167
-#, c-format
-msgid "macro name missing after %s"
-msgstr ""
-
-#: cppinit.c:1168
-#, c-format
-msgid "path name missing after %s"
-msgstr ""
-
-#: cppinit.c:1353
-msgid "-I- specified twice"
-msgstr ""
-
-#: cpplex.c:149
-#, c-format
-msgid "trigraph ??%c converted to %c"
-msgstr ""
-
-#: cpplex.c:157
-#, c-format
-msgid "trigraph ??%c ignored"
-msgstr ""
-
-#: cpplex.c:214
-msgid "backslash and newline separated by space"
-msgstr ""
-
-#: cpplex.c:221 cpptrad.c:158
-msgid "backslash-newline at end of file"
-msgstr ""
+msgstr "CPP kann auf diesem Computer keine Wide-Zeichenkonstanten über %lu Bits Breite behandeln, das Ziel benötigt %lu Bits"
-#: cpplex.c:287 cpptrad.c:199
-msgid "\"/*\" within comment"
-msgstr ""
-
-#: cpplex.c:395
+#: cpplex.c:410
msgid "null character(s) ignored"
-msgstr ""
+msgstr "Null-Zeichen ignoriert"
-#: cpplex.c:402
-#, c-format
-msgid "%s in preprocessing directive"
-msgstr ""
+#: cpplex.c:445
+msgid "'$' in identifier or number"
+msgstr "'$' in Bezeichner oder Zahl"
-#: cpplex.c:475
+#: cpplex.c:492
#, c-format
msgid "attempt to use poisoned \"%s\""
-msgstr ""
+msgstr "Versuch, schlechtes »%s« zu verwenden"
-#: cpplex.c:483
+#: cpplex.c:500
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
-msgstr ""
-
-#: cpplex.c:555
-msgid "'$' character(s) in identifier or number"
-msgstr ""
-
-#: cpplex.c:698
-#, c-format
-msgid "missing terminating %c character"
-msgstr ""
+msgstr "__VA_ARGS__ kann nur in Erweiterung eines variadischen C99-Makros auftreten"
-#: cpplex.c:711
+#: cpplex.c:596
msgid "null character(s) preserved in literal"
-msgstr ""
+msgstr "Null-Zeichen im Literal erhalten"
-#: cpplex.c:915 cpptrad.c:487
-msgid "no newline at end of file"
-msgstr ""
-
-#: cpplex.c:1092 cpptrad.c:213
+#: cpplex.c:916
msgid "unterminated comment"
msgstr "nicht beendeter Kommentar"
-#: cpplex.c:1103
+#: cpplex.c:927
msgid "C++ style comments are not allowed in ISO C90"
-msgstr ""
+msgstr "C++-Stil-Kommentare sind in ISO-C90 nicht erlaubt"
-#: cpplex.c:1105
+#: cpplex.c:929
msgid "(this will be reported only once per input file)"
-msgstr ""
+msgstr "(dies wird nur einmal pro Eingabedatei gemeldet)"
-#: cpplex.c:1110
+#: cpplex.c:934
msgid "multi-line comment"
msgstr "mehrzeiliger Kommentar"
-#: cpplex.c:1425
-#, c-format
-msgid "unknown string token %s\n"
-msgstr ""
-
-#: cpplex.c:1438
+#: cpplex.c:1198
#, c-format
msgid "unspellable token %s"
-msgstr ""
-
-#: cpplex.c:1695
-#, c-format
-msgid "the meaning of '\\%c' is different in traditional C"
-msgstr ""
-
-#: cpplex.c:1701
-msgid "incomplete universal-character-name"
-msgstr ""
-
-#: cpplex.c:1715
-#, c-format
-msgid "non-hex digit '%c' in universal-character-name"
-msgstr ""
-
-#: cpplex.c:1723
-msgid "universal-character-name on EBCDIC target"
-msgstr ""
-
-#: cpplex.c:1737
-msgid "universal-character-name out of range"
-msgstr ""
-
-#: cpplex.c:1791
-msgid "the meaning of '\\a' is different in traditional C"
-msgstr ""
-
-#: cpplex.c:1798
-#, c-format
-msgid "non-ISO-standard escape sequence, '\\%c'"
-msgstr ""
-
-#: cpplex.c:1809
-msgid "the meaning of '\\x' is different in traditional C"
-msgstr ""
-
-#: cpplex.c:1828 f/lex.c:585
-msgid "\\x used with no following hex digits"
-msgstr ""
-
-#: cpplex.c:1833
-msgid "hex escape sequence out of range"
-msgstr ""
-
-#: cpplex.c:1858
-msgid "octal escape sequence out of range"
-msgstr ""
-
-#: cpplex.c:1874
-#, c-format
-msgid "unknown escape sequence '\\%c'"
-msgstr ""
-
-#: cpplex.c:1877
-#, c-format
-msgid "unknown escape sequence: '\\%03o'"
-msgstr ""
-
-#: cpplex.c:1882
-msgid "escape sequence out of range for its type"
-msgstr ""
-
-#: cpplex.c:1973
-msgid "empty character constant"
-msgstr ""
+msgstr "nicht buchstabierbares Token %s"
-#: cpplex.c:1983
-msgid "character constant too long for its type"
-msgstr ""
-
-#: cpplex.c:1986
-msgid "multi-character character constant"
-msgstr ""
-
-#: cpplib.c:225
+#: cpplib.c:218
#, c-format
msgid "extra tokens at end of #%s directive"
-msgstr ""
+msgstr "mehrere Token am Ende der Direktive #%s"
-#: cpplib.c:315
+#: cpplib.c:304
#, c-format
msgid "#%s is a GCC extension"
msgstr "#%s ist eine Erweiterung des GCC"
-#: cpplib.c:327
+#: cpplib.c:316
msgid "suggest not using #elif in traditional C"
-msgstr ""
+msgstr "empfehle, in traditionellem C nicht #elif zu verwenden"
-#: cpplib.c:330
+#: cpplib.c:319
#, c-format
msgid "traditional C ignores #%s with the # indented"
-msgstr ""
+msgstr "traditionelles C ignoriert #%s mit eingerücktem #"
-#: cpplib.c:334
+#: cpplib.c:323
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
-msgstr ""
+msgstr "empfehle, #%s vor traditionellem C mit # zu verbergen"
-#: cpplib.c:358
+#: cpplib.c:345
msgid "embedding a directive within macro arguments is not portable"
-msgstr ""
+msgstr "das Einbetten einer Direktive innerhalb von Makroargumenten ist nicht portierbar"
-#: cpplib.c:378
+#: cpplib.c:365
msgid "style of line directive is a GCC extension"
-msgstr ""
+msgstr "der Stil der line-Direktive ist eine Erweiterung des GCC"
-#: cpplib.c:428
+#: cpplib.c:415
#, c-format
msgid "invalid preprocessing directive #%s"
-msgstr ""
+msgstr "ungültige Präprozessordirektive #%s"
-#: cpplib.c:500
+#: cpplib.c:484
msgid "\"defined\" cannot be used as a macro name"
-msgstr ""
+msgstr "»defined« kann nicht als Makroname verwendet werden"
-#: cpplib.c:506
+#: cpplib.c:490
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
-msgstr ""
+msgstr "»%s« kann nicht als Makroname verwendet werden, da es ein Operator in C++ ist"
-#: cpplib.c:509
+#: cpplib.c:493
#, c-format
msgid "no macro name given in #%s directive"
-msgstr ""
+msgstr "kein Makroname in Direktive #%s angegeben"
-#: cpplib.c:512
+#: cpplib.c:496
msgid "macro names must be identifiers"
-msgstr ""
+msgstr "Makronamen müssen Bezeichner sein"
-#: cpplib.c:552
+#: cpplib.c:537
#, c-format
msgid "undefining \"%s\""
-msgstr ""
+msgstr "un-definiere »%s«"
-#: cpplib.c:598
+#: cpplib.c:609
msgid "missing terminating > character"
-msgstr ""
+msgstr "fehlendes abschließendes »>«-Zeichen"
-#: cpplib.c:637
+#: cpplib.c:662
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
-msgstr ""
+msgstr "#%s erwartet \"DATEINAME\" oder <DATEINAME>"
-#: cpplib.c:648
-#, c-format
-msgid "empty file name in #%s"
-msgstr ""
+#: cpplib.c:685
+msgid "#include nested too deeply"
+msgstr "#include ist zu tief geschachtelt"
-#: cpplib.c:667
+#: cpplib.c:723
msgid "#include_next in primary source file"
-msgstr ""
-
-#: cpplib.c:674
-msgid "#import is obsolete, use an #ifndef wrapper in the header file"
-msgstr ""
-
-#: cpplib.c:682
-msgid "#include nested too deeply"
-msgstr ""
+msgstr "#include_next in erster Quelldatei"
-#: cpplib.c:739
+#: cpplib.c:749
#, c-format
msgid "invalid flag \"%s\" in line directive"
-msgstr ""
+msgstr "ungültiges Flag »%s« in line-Direktive"
-#: cpplib.c:814
+#: cpplib.c:794
#, c-format
msgid "\"%s\" after #line is not a positive integer"
-msgstr ""
+msgstr "»%s« hinter #line ist keine positive Ganzzahl"
-#: cpplib.c:820
+#: cpplib.c:800
msgid "line number out of range"
-msgstr ""
+msgstr "Zeilennummer ist außerhalb des Wertebereiches"
-#: cpplib.c:831 cpplib.c:902
+#: cpplib.c:812 cpplib.c:885
#, c-format
msgid "\"%s\" is not a valid filename"
-msgstr ""
+msgstr "»%s« ist kein gültiger Dateiname"
-#: cpplib.c:866
+#: cpplib.c:847
#, c-format
msgid "\"%s\" after # is not a positive integer"
-msgstr ""
+msgstr "»%s« hinter # ist keine positive Ganzzahl"
-#: cpplib.c:973
+#: cpplib.c:947
msgid "invalid #ident directive"
-msgstr ""
+msgstr "ungültige #ident-Direktive"
-#: cpplib.c:1061
+#: cpplib.c:1027
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
-msgstr ""
+msgstr "registriere »%s« sowohl als Pragma als auch als Pragma-Namespace"
-#: cpplib.c:1064
+#: cpplib.c:1030
#, c-format
msgid "#pragma %s %s is already registered"
-msgstr ""
+msgstr "#pragma %s %s ist bereits registriert"
-#: cpplib.c:1067
+#: cpplib.c:1033
#, c-format
msgid "#pragma %s is already registered"
-msgstr ""
-
-#: cpplib.c:1143
-msgid "#pragma once is obsolete"
-msgstr ""
+msgstr "#pragma %s ist bereits registriert"
-#: cpplib.c:1146
+#: cpplib.c:1178
msgid "#pragma once in main file"
-msgstr ""
+msgstr "#pragma once in Hauptdatei"
-#: cpplib.c:1170
+#: cpplib.c:1201
msgid "invalid #pragma GCC poison directive"
-msgstr ""
+msgstr "ungültige #pragma GCC Direktive"
-#: cpplib.c:1179
+#: cpplib.c:1210
#, c-format
msgid "poisoning existing macro \"%s\""
-msgstr ""
+msgstr "schlechtes existierendes Makro »%s«"
-#: cpplib.c:1201
+#: cpplib.c:1231
msgid "#pragma system_header ignored outside include file"
-msgstr ""
+msgstr "#pragma system_header außerhalb include-Datei ignoriert"
-#: cpplib.c:1226
+#: cpplib.c:1255
#, c-format
-msgid "cannot find source %s"
-msgstr ""
+msgid "cannot find source file %s"
+msgstr "Quelldatei %s kann nicht gefunden werden"
-#: cpplib.c:1230
+#: cpplib.c:1259
#, c-format
msgid "current file is older than %s"
-msgstr ""
+msgstr "aktuelle Datei ist älter als %s"
-#: cpplib.c:1346
+#: cpplib.c:1373
msgid "_Pragma takes a parenthesized string literal"
-msgstr ""
+msgstr "_Pragma nimmt ein geklammertes Zeichenkettenliteral"
-#: cpplib.c:1429
+#: cpplib.c:1451
msgid "#else without #if"
-msgstr ""
+msgstr "#else ohne #if"
-#: cpplib.c:1434
+#: cpplib.c:1456
msgid "#else after #else"
-msgstr ""
+msgstr "#else hinter #else"
-#: cpplib.c:1436 cpplib.c:1470
-msgid "the conditional began here"
-msgstr ""
-
-#: cpplib.c:1463
+#: cpplib.c:1484
msgid "#elif without #if"
-msgstr ""
+msgstr "#elif ohne #if"
-#: cpplib.c:1468
+#: cpplib.c:1489
msgid "#elif after #else"
-msgstr ""
+msgstr "#elif hinter #else"
-#: cpplib.c:1499
+#: cpplib.c:1519
msgid "#endif without #if"
-msgstr ""
+msgstr "#endif ohne #if"
-#: cpplib.c:1582
+#: cpplib.c:1596
msgid "missing '(' after predicate"
-msgstr ""
+msgstr "fehlendes '(' hinter Prädikat"
-#: cpplib.c:1597
+#: cpplib.c:1611
msgid "missing ')' to complete answer"
-msgstr ""
+msgstr "fehlendes ')', um Antwort abzuschließen"
-#: cpplib.c:1617
+#: cpplib.c:1631
msgid "predicate's answer is empty"
-msgstr ""
+msgstr "Prädikatantwort ist leer"
-#: cpplib.c:1647
+#: cpplib.c:1658
msgid "assertion without predicate"
-msgstr ""
+msgstr "Behauptung ohne Prädikat"
-#: cpplib.c:1649
+#: cpplib.c:1660
msgid "predicate must be an identifier"
-msgstr ""
+msgstr "Prädikat muss ein Bezeichner sein"
-#: cpplib.c:1738
+#: cpplib.c:1744
#, c-format
msgid "\"%s\" re-asserted"
-msgstr ""
+msgstr "»%s« wieder behauptet"
-#: cpplib.c:1968
-#, c-format
-msgid "unterminated #%s"
-msgstr ""
-
-#: cppmacro.c:94
-#, c-format
-msgid "macro \"%s\" is not used"
-msgstr ""
-
-#: cppmacro.c:139 cppmacro.c:294
+#: cppmacro.c:125 cppmacro.c:280
#, c-format
msgid "invalid built-in macro \"%s\""
-msgstr ""
+msgstr "ungültiges eingebautes Makro »%s«"
-#: cppmacro.c:234
+#: cppmacro.c:221
msgid "could not determine date and time"
-msgstr ""
+msgstr "Datum und Zeit konnten nicht bestimmt werden"
-#: cppmacro.c:407
+#: cppmacro.c:393
msgid "invalid string literal, ignoring final '\\'"
-msgstr ""
+msgstr "ungültiges Zeichenkettenliteral, ignoriere abschließendes '\\'"
-#: cppmacro.c:504
+#: cppmacro.c:476
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
-msgstr ""
+msgstr "das Einfügen von »%s« und »%s« ergibt kein gültiges Präprozessor-Token"
-#: cppmacro.c:546
+#: cppmacro.c:514
msgid "ISO C99 requires rest arguments to be used"
-msgstr ""
+msgstr "ISO-C99 erfordert, dass Restargumente verwendet werden"
-#: cppmacro.c:551
+#: cppmacro.c:519
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
-msgstr ""
+msgstr "Makro »%s« erfordert %u Argumente, aber nur %u wurden angegeben"
-#: cppmacro.c:556
+#: cppmacro.c:524
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
-msgstr ""
+msgstr "dem Makro »%s« wurden %u Argumente übergeben, aber es nimmt nur %u"
-#: cppmacro.c:669 cpptrad.c:774
+#: cppmacro.c:635
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
-msgstr ""
+msgstr "unvollendete Argumentliste beim Makroaufruf »%s«"
-#: cppmacro.c:776
+#: cppmacro.c:738
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
-msgstr ""
+msgstr "funktionsähnliches Makro »%s« muss mit Argumenten in traditionellem C verwendet werden"
-#: cppmacro.c:1314
+#: cppmacro.c:1241
#, c-format
msgid "duplicate macro parameter \"%s\""
-msgstr ""
+msgstr "doppelter Makroparameter »%s«"
-#: cppmacro.c:1351
+#: cppmacro.c:1286
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
-msgstr ""
+msgstr "»%s« darf nicht in Makroparameterliste auftreten"
-#: cppmacro.c:1359
+#: cppmacro.c:1294
msgid "macro parameters must be comma-separated"
-msgstr ""
+msgstr "Makroparameter müssen mit Komma getrennt sein"
-#: cppmacro.c:1376
+#: cppmacro.c:1311
msgid "parameter name missing"
-msgstr ""
+msgstr "Parametername fehlt"
-#: cppmacro.c:1391
+#: cppmacro.c:1326
msgid "anonymous variadic macros were introduced in C99"
-msgstr ""
+msgstr "anonyme variadische Makros wurden in C99 eingeführt"
-#: cppmacro.c:1395
+#: cppmacro.c:1330
msgid "ISO C does not permit named variadic macros"
-msgstr ""
+msgstr "ISO-C erlaubt keine benannten variadischen Makros"
-#: cppmacro.c:1404
+#: cppmacro.c:1339
msgid "missing ')' in macro parameter list"
-msgstr ""
+msgstr "fehlendes ')' in Makroparameterliste"
-#: cppmacro.c:1472
+#: cppmacro.c:1402
msgid "ISO C requires whitespace after the macro name"
-msgstr ""
+msgstr "ISO-C erfordert Whitespace hinter Makroname"
-#: cppmacro.c:1500
+#: cppmacro.c:1430
msgid "'#' is not followed by a macro parameter"
-msgstr ""
+msgstr "'#' wird nicht von einem Makroparameter gefolgt"
-#: cppmacro.c:1519
+#: cppmacro.c:1449
msgid "'##' cannot appear at either end of a macro expansion"
-msgstr ""
+msgstr "'##' kann nicht an den Enden einer Makroexpansion auftreten"
-#: cppmacro.c:1601
-#, c-format
-msgid "\"%s\" redefined"
-msgstr ""
-
-#: cppmacro.c:1606
-msgid "this is the location of the previous definition"
-msgstr ""
-
-#: cppmacro.c:1657
+#: cppmacro.c:1588
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
-msgstr ""
+msgstr "Makroargument »%s« würde in traditionellem C zum String gewandelt werden"
-#: cppmacro.c:1682
+#: cppmacro.c:1611
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
-msgstr ""
-
-#: cppspec.c:109
-#, c-format
-msgid "\"%s\" is not a valid option to the preprocessor"
-msgstr ""
+msgstr "ungültiger Hash-Typ %d in cpp_macro_definition"
-#: cppspec.c:133
-msgid "too many input files"
-msgstr "zu viele Eingabedateien"
+#: cpppch.c:84 cpppch.c:332 cpppch.c:356 cpppch.c:365
+msgid "while writing precompiled header"
+msgstr "beim Schreiben des vorkompilierten Headers"
-#: cpptrad.c:841
+#: cpppch.c:463
#, c-format
-msgid "detected recursion whilst expanding macro \"%s\""
-msgstr ""
-
-#: cse.c:7195
-#, c-format
-msgid ";; Processing block from %d to %d, %d sets.\n"
-msgstr ""
+msgid "%s: not used because `%.*s' not defined"
+msgstr "%s: nicht verwendet, da »%.*s« nicht definiert"
-#: diagnostic.c:714
-msgid "((anonymous))"
-msgstr ""
-
-#: diagnostic.c:928
+#: cpppch.c:475
#, c-format
-msgid "%s: warnings being treated as errors\n"
-msgstr ""
+msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
+msgstr "%s: nicht verwendet, da »%.*s« als »%s« statt als »%.*s« definiert wurde"
-#: diagnostic.c:963
+#: cpppch.c:516
#, c-format
-msgid "%s: %s: "
-msgstr ""
+msgid "%s: not used because `%s' is defined"
+msgstr "%s: nicht verwendet, da »%s« definiert ist"
-#: diagnostic.c:1054
-#, c-format
-msgid "%s "
-msgstr ""
+#: cpppch.c:529 cpppch.c:715
+msgid "while reading precompiled header"
+msgstr "beim Lesen des vorkompilierten Headers"
-#: diagnostic.c:1056
+#: cppspec.c:106
#, c-format
-msgid " %s"
-msgstr ""
+msgid "\"%s\" is not a valid option to the preprocessor"
+msgstr "»%s« ist keine gültige Präprozessoroption"
-#: diagnostic.c:1078
-msgid "At top level:"
-msgstr ""
+#: cppspec.c:128
+msgid "too many input files"
+msgstr "zu viele Eingabedateien"
-#: diagnostic.c:1083
+#: cpptrad.c:744
#, c-format
-msgid "In member function `%s':"
-msgstr ""
+msgid "detected recursion whilst expanding macro \"%s\""
+msgstr "Rekursion bei Expansion des Makros »%s« entdeckt"
-#: diagnostic.c:1087
-#, c-format
-msgid "In function `%s':"
-msgstr ""
+#: cpptrad.c:911
+msgid "syntax error in macro parameter list"
+msgstr "Syntaxfehler in Makroparameterliste"
-#: diagnostic.c:1175
-msgid "compilation terminated.\n"
-msgstr ""
+#: cse.c:7040
+#, c-format
+msgid ";; Processing block from %d to %d, %d sets.\n"
+msgstr ";; Bearbeite Block von %d bis %d, %d Sets.\n"
-#: diagnostic.c:1193
+#: diagnostic.c:209
#, c-format
msgid "%s:%d: confused by earlier errors, bailing out\n"
-msgstr ""
+msgstr "%s:%d: durch frühere Fehler verwirrt, Abbruch\n"
-#: diagnostic.c:1208 diagnostic.c:1316
-#, c-format
-msgid ""
-"Please submit a full bug report,\n"
-"with preprocessed source if appropriate.\n"
-"See %s for instructions.\n"
-msgstr ""
-"Bitte senden Sie einen vollständigen Fehlerbericht auf Englisch ein;\n"
-"bearbeiten Sie die Quellen zunächst mit einem Präprozessor, wenn es\n"
-"dienlich ist.\n"
-"Fehler in der deutschen Ãœbersetzung sind an de@li.org zu melden.\n"
-"\n"
-"Gehen Sie gemäß den Hinweisen in %s vor.\n"
+#: diagnostic.c:281
+msgid "compilation terminated.\n"
+msgstr "Kompilierung beendet.\n"
-#: diagnostic.c:1314
+#: diagnostic.c:572
msgid "Internal compiler error: Error reporting routines re-entered.\n"
-msgstr ""
+msgstr "Interner Compilerfehler: Fehlerbehandlungsroutinen doppelt betreten.\n"
-#: diagnostic.c:1376
+#: diagnostic.c:584
#, c-format
msgid "in %s, at %s:%d"
-msgstr ""
-
-#: diagnostic.c:1397
-#, c-format
-msgid "In file included from %s:%d"
-msgstr ""
-
-#: diagnostic.c:1400
-#, c-format
-msgid ""
-",\n"
-" from %s:%d"
-msgstr ""
-
-#: diagnostic.c:1401
-msgid ":\n"
-msgstr ""
-
-#: diagnostic.c:1445 diagnostic.c:1462
-#, c-format
-msgid "`%s' is deprecated (declared at %s:%d)"
-msgstr ""
+msgstr "in %s, bei %s:%d"
-#: diagnostic.c:1465
-#, c-format
-msgid "`%s' is deprecated"
-msgstr ""
-
-#: diagnostic.c:1468
-#, c-format
-msgid "type is deprecated (declared at %s:%d)"
-msgstr ""
-
-#: diagnostic.c:1471
-msgid "type is deprecated"
-msgstr ""
-
-#: dominance.c:728
+#: dominance.c:763
#, c-format
msgid "dominator of %d should be %d, not %d"
-msgstr ""
+msgstr "Herrscher über %d sollte %d sein, nicht %d"
-#: dwarf2out.c:3135
+#: dwarf2out.c:3228
#, c-format
msgid "DW_LOC_OP %s not implemented\n"
-msgstr ""
-
-#: dwarfout.c:2066
-#, c-format
-msgid "internal regno botch: `%s' has regno = %d\n"
-msgstr ""
-
-#: dwarfout.c:6181
-msgid "support for the DWARF1 debugging format is deprecated"
-msgstr ""
-
-#: dwarfout.c:6278
-msgid "can't get current directory"
-msgstr ""
+msgstr "DW_LOC_OP %s nicht implementiert\n"
#: emit-rtl.c:1155
msgid "can't access real part of complex value in hard register"
-msgstr ""
+msgstr "kann nicht auf realen Teil des komplexen Wertes im festen Register zugreifen"
-#: emit-rtl.c:1177
+#: emit-rtl.c:1182
msgid "can't access imaginary part of complex value in hard register"
-msgstr ""
+msgstr "kann nicht auf imaginären Teil des komplexen Wertes im festen Register zugreifen"
-#: emit-rtl.c:3402
+#: emit-rtl.c:2263
+msgid "Invalid rtl sharing found in the insn"
+msgstr "ungültige gemeinsame rtl-Benutzung in insn gefunden"
+
+#: emit-rtl.c:2265
+msgid "Shared rtx"
+msgstr "Gemeinsames rtx"
+
+#: emit-rtl.c:3400
msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
-msgstr ""
+msgstr "ICE: emit_insn verwendet, wo emit_jump_insn erforderlich:\n"
-#: errors.c:136
+#: errors.c:129
#, c-format
msgid "abort in %s, at %s:%d"
-msgstr ""
+msgstr "Abbruch in %s, bei %s:%d"
-#: except.c:369
+#: except.c:357
msgid "exception handling disabled, use -fexceptions to enable"
-msgstr ""
+msgstr "Ausnahmebehandlung ausgeschaltet, benutzen Sie -fexeptions zum Anschalten"
-#: except.c:2994
+#: except.c:2942
msgid "argument of `__builtin_eh_return_regno' must be constant"
-msgstr ""
+msgstr "Argument für »__builtin_eh_return_regno« muss konstant sein"
-#: except.c:3137
+#: except.c:3073
msgid "__builtin_eh_return not supported on this target"
-msgstr ""
+msgstr "__builtin_eh_return für dieses Ziel nicht unterstützt"
-#: explow.c:1408
+#: explow.c:1327
msgid "stack limits not supported on this target"
-msgstr ""
+msgstr "Kellergrenzen nicht für dieses Ziel unterstützt"
-#: expr.c:3355
+#: expr.c:2965
msgid "function using short complex types cannot be inline"
-msgstr ""
-
-#: expr.c:6272 expr.c:6281 expr.c:6290 expr.c:6295 expr.c:6604 expr.c:6620
-msgid "unsupported wide integer operation"
-msgstr ""
+msgstr "Funktion, die komplexe »short«-Typen verwendet, kann nicht »inline« sein"
-#: expr.c:6669
-#, c-format
-msgid "prior parameter's size depends on `%s'"
-msgstr ""
+#: expr.c:6311
+msgid "%Jprior parameter's size depends on '%D'"
+msgstr "%Jvorherige Parametergröße hängt von »%D« ab"
-#: expr.c:7005
+#: expr.c:6678
msgid "returned value in block_exit_expr"
-msgstr ""
+msgstr "zurückgelieferter Wert in block_exit_expr"
#. We can't make a bitwise copy of this object, so fail.
-#: expr.c:9202
+#: expr.c:8823
msgid "cannot take the address of an unaligned member"
-msgstr ""
+msgstr "die Adresse eines nicht ausgerichteten Elements kann nicht ermittelt werden"
-#: final.c:1342
+#: final.c:1058
msgid "negative insn length"
-msgstr ""
+msgstr "negative insn-Länge"
-#: final.c:2793
+#: final.c:2429
msgid "could not split insn"
-msgstr ""
+msgstr "insn kann nicht aufgeteilt werden"
-#: final.c:3141
+#: final.c:2771
msgid "invalid `asm': "
-msgstr ""
+msgstr "ungültiges »asm«: "
-#: final.c:3328
+#: final.c:2954
msgid "nested assembly dialect alternatives"
-msgstr ""
+msgstr "geschachtelte Assemblerdialekt-Alternativen"
-#: final.c:3345 final.c:3357
+#: final.c:2971 final.c:2983
msgid "unterminated assembly dialect alternative"
-msgstr ""
+msgstr "unbeendete Assemblerdialekt-Alternative"
-#: final.c:3401
+#: final.c:3027
#, c-format
msgid "operand number missing after %%-letter"
-msgstr ""
+msgstr "Operandenzahl fehlt hinter %%-Buchstabe"
-#: final.c:3404 final.c:3443
+#: final.c:3030 final.c:3069
msgid "operand number out of range"
-msgstr ""
+msgstr "Operandenzahl außerhalb des Wertebereiches"
-#: final.c:3462
+#: final.c:3088
#, c-format
msgid "invalid %%-code"
-msgstr ""
+msgstr "ungültiger %%-Code"
-#: final.c:3493
+#: final.c:3118
#, c-format
msgid "`%%l' operand isn't a label"
-msgstr ""
+msgstr "»%%l«-Operand ist keine Marke"
#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
-#: final.c:3600 vmsdbgout.c:466 config/i386/i386.c:6314
-#: config/pdp11/pdp11.c:1573
+#. We can't handle floating point constants; PRINT_OPERAND must
+#. handle them.
+#. We can't handle floating point constants;
+#. PRINT_OPERAND must handle them.
+#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6739
+#: config/pdp11/pdp11.c:1646
msgid "floating constant misused"
-msgstr ""
+msgstr "Gleitkommakonstante falsch benutzt"
-#: final.c:3656 vmsdbgout.c:523 config/i386/i386.c:6392
-#: config/pdp11/pdp11.c:1620
+#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6817
+#: config/pdp11/pdp11.c:1693
msgid "invalid expression as operand"
-msgstr ""
+msgstr "ungültiger Ausdruck als Operand"
-#: flow.c:352
+#: flow.c:329
msgid "function might be possible candidate for attribute `noreturn'"
-msgstr ""
+msgstr "Funktion könnte möglicher Kandidat für Attribut »noreturn« sein"
-#: flow.c:357
+#: flow.c:334
msgid "`noreturn' function does return"
-msgstr ""
+msgstr "»noreturn«-Funktion kehrt zurück"
-#: flow.c:378
+#: flow.c:355
msgid "control reaches end of non-void function"
-msgstr ""
+msgstr "Kontrollfluss erreicht Ende einer Nicht-void-Funktion"
-#: flow.c:1642
+#: flow.c:1582
msgid "Attempt to delete prologue/epilogue insn:"
-msgstr ""
+msgstr "Versuch, Prolog/Epilog-insn zu löschen"
-#: fold-const.c:2546 fold-const.c:2559
+#: fold-const.c:2759 fold-const.c:2772
#, c-format
msgid "comparison is always %d due to width of bit-field"
-msgstr ""
+msgstr "Vergleich ist immer %d wegen Breite des Bitfeldes"
-#: fold-const.c:3753 fold-const.c:3770
+#: fold-const.c:3967 fold-const.c:3984
#, c-format
msgid "comparison is always %d"
-msgstr ""
+msgstr "Vergleich ist immer %d"
-#: fold-const.c:3901
+#: fold-const.c:4115
msgid "`or' of unmatched not-equal tests is always 1"
-msgstr ""
+msgstr "»oder« nicht passender Ungleichheits-Tests ist immer 1"
-#: fold-const.c:3906
+#: fold-const.c:4120
msgid "`and' of mutually exclusive equal-tests is always 0"
-msgstr ""
+msgstr "»und« gegenseitig ausschließender Gleichheits-Tests ist immer 0"
-#: function.c:884 varasm.c:1503
-#, c-format
-msgid "size of variable `%s' is too large"
-msgstr ""
+#: fold-const.c:8340
+msgid "fold check: original tree changed by fold"
+msgstr "Faltungstest: ursprünglicher Baum durch Faltung geändert"
+
+#: function.c:884 varasm.c:1408
+msgid "%Jsize of variable '%D' is too large"
+msgstr "%JGröße der Variable »%D« ist zu hoch"
-#: function.c:3772
+#: function.c:3737
msgid "impossible constraint in `asm'"
-msgstr ""
+msgstr "unmögliche Bedingung in »asm«"
-#: function.c:5527
-#, c-format
-msgid "`%s' might be used uninitialized in this function"
-msgstr ""
+#: function.c:5697
+msgid "%J'%D' might be used uninitialized in this function"
+msgstr "%J»%D« könnte in dieser Funktion uninitialisiert bleiben"
-#: function.c:5534
-#, c-format
-msgid "variable `%s' might be clobbered by `longjmp' or `vfork'"
-msgstr ""
+#: function.c:5704
+msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'"
+msgstr "%JVariable »%D« könnte von »longjmp« oder »vfork« zerstört werden"
-#: function.c:5553
-#, c-format
-msgid "argument `%s' might be clobbered by `longjmp' or `vfork'"
-msgstr ""
+#: function.c:5723
+msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'"
+msgstr "%JArgument »%D« könnte von »longjmp« oder »vfork« zerstört werden"
-#: function.c:6420
+#: function.c:6497
msgid "function returns an aggregate"
-msgstr ""
+msgstr "Funktion gibt Aggregat zurück"
-#: function.c:6925
-#, c-format
-msgid "unused parameter `%s'"
-msgstr ""
+#: function.c:6980
+msgid "%Junused parameter '%D'"
+msgstr "%Jnicht benutzter Parameter »%D«"
-#: gcc.c:1107
+#: gcc.c:1191
#, c-format
msgid "ambiguous abbreviation %s"
-msgstr ""
+msgstr "mehrdeutige Abkürzung %s"
-#: gcc.c:1134
+#: gcc.c:1218
#, c-format
msgid "incomplete `%s' option"
-msgstr ""
+msgstr "unvollständige »%s«-Option"
-#: gcc.c:1145
+#: gcc.c:1229
#, c-format
msgid "missing argument to `%s' option"
-msgstr ""
+msgstr "fehlendes Argument für »%s«-Option"
-#: gcc.c:1158
+#: gcc.c:1242
#, c-format
msgid "extraneous argument to `%s' option"
-msgstr ""
+msgstr "zusätzliches (belangloses) Argument für »%s«-Option"
-#: gcc.c:1486
+#: gcc.c:1563
msgid "Using built-in specs.\n"
-msgstr ""
+msgstr "Benutze eingebaute Spezifikationen.\n"
-#: gcc.c:1667
+#: gcc.c:1748
#, c-format
msgid ""
"Setting spec %s to '%s'\n"
"\n"
msgstr ""
+"Setze Spezifikation %s auf '%s'\n"
+"\n"
-#: gcc.c:1774
+#: gcc.c:1850
#, c-format
msgid "Reading specs from %s\n"
-msgstr ""
+msgstr "Lese Spezifikationen von %s\n"
-#: gcc.c:1872 gcc.c:1891
+#: gcc.c:1946 gcc.c:1965
#, c-format
msgid "specs %%include syntax malformed after %ld characters"
-msgstr ""
+msgstr "falsche %%include-Syntax für Spezifikationen nach %ld Zeichen"
-#: gcc.c:1899
+#: gcc.c:1973
#, c-format
msgid "could not find specs file %s\n"
-msgstr ""
+msgstr "konnte Spezifikationsdatei %s nicht finden\n"
-#: gcc.c:1916 gcc.c:1924 gcc.c:1933 gcc.c:1942
+#: gcc.c:1990 gcc.c:1998 gcc.c:2007 gcc.c:2016
#, c-format
msgid "specs %%rename syntax malformed after %ld characters"
-msgstr ""
+msgstr "falsche %%rename-Syntax für Spezifikationen nach %ld Zeichen"
-#: gcc.c:1951
+#: gcc.c:2025
#, c-format
msgid "specs %s spec was not found to be renamed"
-msgstr ""
+msgstr "keine %s-Spezifikation zum Umbenennen gefunden"
-#: gcc.c:1958
+#: gcc.c:2032
#, c-format
msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
-msgstr ""
+msgstr "%s: Versuch, Spezifikation »%s« in bereits definierte Spezifikation »%s« umzubenennen"
-#: gcc.c:1963
+#: gcc.c:2037
#, c-format
msgid "rename spec %s to %s\n"
-msgstr ""
+msgstr "benenne Spezifikation %s nach %s um\n"
-#: gcc.c:1965
+#: gcc.c:2039
#, c-format
msgid ""
"spec is '%s'\n"
"\n"
msgstr ""
+"Spezifikation ist '%s'\n"
+"\n"
-#: gcc.c:1978
+#: gcc.c:2052
#, c-format
msgid "specs unknown %% command after %ld characters"
-msgstr ""
+msgstr "Spezifikation: unbekannter %%-Befehl nach %ld Zeichen"
-#: gcc.c:1989 gcc.c:2002
+#: gcc.c:2063 gcc.c:2076
#, c-format
msgid "specs file malformed after %ld characters"
-msgstr ""
+msgstr "Fehler in Spezifikationsdatei nach %ld Zeichen"
-#: gcc.c:2056
+#: gcc.c:2129
msgid "spec file has no spec for linking"
-msgstr ""
+msgstr "Spezifikationsdatei hat keine Spezifikation zum Binden"
-#: gcc.c:2554
+#: gcc.c:2634
msgid "-pipe not supported"
msgstr "-pipe wird nicht unterstützt"
# can we use j/n here, too?
# 2002-04-23 18:57:43 CEST -ke-
-#: gcc.c:2609
+#: gcc.c:2696
msgid ""
"\n"
"Go ahead? (y or n) "
@@ -5317,7 +5058,7 @@ msgstr ""
"\n"
"Fortfahren? (y oder n) "
-#: gcc.c:2735
+#: gcc.c:2822
#, c-format
msgid ""
"Internal error: %s (program %s)\n"
@@ -5330,159 +5071,184 @@ msgstr ""
"sind an de@li.org zu melden.\n"
"Gehen Sie gemäß den Hinweisen in %s vor."
-#: gcc.c:2753
+#: gcc.c:2840
#, c-format
msgid "# %s %.2f %.2f\n"
-msgstr ""
+msgstr "# %s %.2f %.2f\n"
-#: gcc.c:2883
+#: gcc.c:2973
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr "Aufruf: %s [Optionen] Datei...\n"
-#: gcc.c:2884
+#: gcc.c:2974
msgid "Options:\n"
msgstr "Optionen:\n"
-#: gcc.c:2886
+#: gcc.c:2976
msgid " -pass-exit-codes Exit with highest error code from a phase\n"
-msgstr ""
+msgstr " -pass-exit-codes Ende mit höchstem Rückgabe-Code einer Phase\n"
-#: gcc.c:2887
+#: gcc.c:2977
msgid " --help Display this information\n"
msgstr " --help Diese Informationen anzeigen\n"
-#: gcc.c:2888
+#: gcc.c:2978
msgid " --target-help Display target specific command line options\n"
-msgstr ""
+msgstr " --target-help Zielspezifische Kommandozeilenoptionen anzeigen\n"
-#: gcc.c:2890
+#: gcc.c:2980
msgid " (Use '-v --help' to display command line options of sub-processes)\n"
-msgstr ""
+msgstr " ('-v --help' zum Anzeigen der Kommandozeilenoptionen von Subprozessen verwenden)\n"
-#: gcc.c:2891
+#: gcc.c:2981
msgid " -dumpspecs Display all of the built in spec strings\n"
-msgstr ""
+msgstr " -dumpspecs Alle eingebauten Spezifikationszeichenketten anzeigen\n"
-#: gcc.c:2892
+#: gcc.c:2982
msgid " -dumpversion Display the version of the compiler\n"
-msgstr ""
+msgstr " -dumpversion Compilerversion anzeigen\n"
-#: gcc.c:2893
+#: gcc.c:2983
msgid " -dumpmachine Display the compiler's target processor\n"
-msgstr ""
+msgstr " -dumpmachine Zielprozessor des Compilers anzeigen\n"
-#: gcc.c:2894
+#: gcc.c:2984
msgid " -print-search-dirs Display the directories in the compiler's search path\n"
-msgstr ""
+msgstr " -print-search-dirs Verzeichnisse im Suchpfad des Compilers anzeigen\n"
-#: gcc.c:2895
+#: gcc.c:2985
msgid " -print-libgcc-file-name Display the name of the compiler's companion library\n"
-msgstr ""
+msgstr " -print-libgcc-file-name Name der Begleitbibliothek des Compilers anzeigen\n"
-#: gcc.c:2896
+#: gcc.c:2986
msgid " -print-file-name=<lib> Display the full path to library <lib>\n"
-msgstr ""
+msgstr " -print-file-name=<lib> Vollen Pfad zur Bibliothek <lib> anzeigen\n"
-#: gcc.c:2897
+#: gcc.c:2987
msgid " -print-prog-name=<prog> Display the full path to compiler component <prog>\n"
-msgstr ""
+msgstr " -print-prog-name=<prog> Vollen Pfad zur Compilerkomponente <prog> anzeigen\n"
-#: gcc.c:2898
+#: gcc.c:2988
msgid " -print-multi-directory Display the root directory for versions of libgcc\n"
-msgstr ""
+msgstr " -print-multi-directory Wurzelverzeichnis für Versionen von libgcc anzeigen\n"
-#: gcc.c:2899
+#: gcc.c:2989
msgid ""
" -print-multi-lib Display the mapping between command line options and\n"
" multiple library search directories\n"
msgstr ""
+" -print-multi-lib Abbildung zwischen Kommandozeilenoptionen und\n"
+" mehreren Suchverzeichnissen für Bibliotheken anzeigen\n"
-#: gcc.c:2902
+#: gcc.c:2992
msgid " -print-multi-os-directory Display the relative path to OS libraries\n"
msgstr ""
+" -print-multi-os-directory Relativen Pfad zu Betriebssystembibliotheken\n"
+" anzeigen\n"
-#: gcc.c:2903
+#: gcc.c:2993
msgid " -Wa,<options> Pass comma-separated <options> on to the assembler\n"
-msgstr ""
+msgstr " -Wa,<Optionen> Komma-getrennte <Optionen> an Assembler übergeben\n"
-#: gcc.c:2904
+#: gcc.c:2994
msgid " -Wp,<options> Pass comma-separated <options> on to the preprocessor\n"
-msgstr ""
+msgstr " -Wp,<Optionen> Komma-getrennte <Optionen> an Präprozessor übergeben\n"
-#: gcc.c:2905
+#: gcc.c:2995
msgid " -Wl,<options> Pass comma-separated <options> on to the linker\n"
-msgstr ""
+msgstr " -Wl,<Optionen> Komma-getrennte <Optionen> an Linker übergeben\n"
+
+#: gcc.c:2996
+msgid " -Xassembler <arg> Pass <arg> on to the assembler\n"
+msgstr " -Xassembler <arg> <arg> an den Assembler übergeben\n"
+
+#: gcc.c:2997
+msgid " -Xpreprocessor <arg> Pass <arg> on to the preprocessor\n"
+msgstr " -Xpreprocessor <arg> <arg> an den Präprozessor übergeben\n"
-#: gcc.c:2906
+#: gcc.c:2998
msgid " -Xlinker <arg> Pass <arg> on to the linker\n"
-msgstr ""
+msgstr " -Xlinker <arg> <arg> an den Linker übergeben\n"
-#: gcc.c:2907
+#: gcc.c:2999
msgid " -save-temps Do not delete intermediate files\n"
-msgstr ""
+msgstr " -save-temps Temporäre Dateien nicht löschen\n"
-#: gcc.c:2908
+#: gcc.c:3000
msgid " -pipe Use pipes rather than intermediate files\n"
-msgstr ""
+msgstr " -pipe Pipes statt temporärer Dateien verwenden\n"
-#: gcc.c:2909
+#: gcc.c:3001
msgid " -time Time the execution of each subprocess\n"
-msgstr ""
+msgstr " -time Zeit für Ausführung jedes Subprozesses stoppen\n"
-#: gcc.c:2910
+#: gcc.c:3002
msgid " -specs=<file> Override built-in specs with the contents of <file>\n"
msgstr ""
+" -specs=<Datei> Eingebaute Spezifikationen mit Inhalt der <Datei>\n"
+" überschreiben\n"
-#: gcc.c:2911
+#: gcc.c:3003
msgid " -std=<standard> Assume that the input sources are for <standard>\n"
-msgstr ""
+msgstr " -std=<Standard> Annehmen, dass die Eingabequellen für <Standard> sind\n"
-#: gcc.c:2912
+#: gcc.c:3004
msgid " -B <directory> Add <directory> to the compiler's search paths\n"
-msgstr ""
+msgstr " -B <Verzeichnis> <Verzeichnis> zum Suchpfad des Compilers hinzufügen\n"
-#: gcc.c:2913
+#: gcc.c:3005
msgid " -b <machine> Run gcc for target <machine>, if installed\n"
msgstr ""
+" -b <Maschine> GCC für die Ziel-<Maschine> laufen lassen, falls\n"
+" installiert\n"
-#: gcc.c:2914
+#: gcc.c:3006
msgid " -V <version> Run gcc version number <version>, if installed\n"
-msgstr ""
+msgstr " -V <Version> GCC <Version> laufen lassen, falls installiert\n"
-#: gcc.c:2915
+#: gcc.c:3007
msgid " -v Display the programs invoked by the compiler\n"
-msgstr ""
+msgstr " -v Vom Compiler aufgerufene Programme anzeigen\n"
-#: gcc.c:2916
+#: gcc.c:3008
msgid " -### Like -v but options quoted and commands not executed\n"
msgstr ""
+" -### Wie -v, aber mit zitierten Optionen und nicht\n"
+" ausgeführten Befehlen\n"
-#: gcc.c:2917
+#: gcc.c:3009
msgid " -E Preprocess only; do not compile, assemble or link\n"
msgstr ""
+" -E Nur Präprozessor, kein Compiler, Assembler oder\n"
+" Binder\n"
-#: gcc.c:2918
+#: gcc.c:3010
msgid " -S Compile only; do not assemble or link\n"
-msgstr ""
+msgstr " -S Nur kompilieren, nicht assemblieren oder binden\n"
-#: gcc.c:2919
+#: gcc.c:3011
msgid " -c Compile and assemble, but do not link\n"
-msgstr ""
+msgstr " -c Nur kompilieren und assemblieren, aber nicht binden\n"
-#: gcc.c:2920
+#: gcc.c:3012
msgid " -o <file> Place the output into <file>\n"
msgstr " -o <Datei> Ausgabe in <Datei> schreiben\n"
-#: gcc.c:2921
+#: gcc.c:3013
msgid ""
" -x <language> Specify the language of the following input files\n"
" Permissible languages include: c c++ assembler none\n"
" 'none' means revert to the default behavior of\n"
" guessing the language based on the file's extension\n"
msgstr ""
+" -x <Sprache> Sprache der folgenden Eingabedateien angeben\n"
+" Zulässige Sprachen sind: c c++ assembler none\n"
+" 'none' bedeutet den Rückfall auf das Standard-\n"
+" verhalten, die Sprache aufgrund der Dateinamens-\n"
+" erweiterung zu vermuten\n"
-#: gcc.c:2928
+#: gcc.c:3020
#, c-format
msgid ""
"\n"
@@ -5490,29 +5256,29 @@ msgid ""
" passed on to the various sub-processes invoked by %s. In order to pass\n"
" other options on to these processes the -W<letter> options must be used.\n"
msgstr ""
+"\n"
+"Optionen, die mit -g, -f, -m, -O, -W, oder --param beginnen, werden automatisch\n"
+" an die verschiedenen Subprozesse, die von %s aufgerufen werden, übergeben.\n"
+" Um andere Optionen an diese Prozesse zu übergeben, müssen die Optionen\n"
+" -W<Buchstabe> verwendet werden.\n"
-#: gcc.c:3063
+#: gcc.c:3141
#, c-format
msgid "`-%c' option must have argument"
-msgstr ""
+msgstr "Die Option »-%c« muss ein Argument haben"
-#: gcc.c:3085
+#: gcc.c:3163
#, c-format
msgid "couldn't run `%s': %s"
-msgstr ""
+msgstr "konnte »%s« nicht ausführen: %s"
#. translate_options () has turned --version into -fversion.
-#: gcc.c:3262
+#: gcc.c:3349
#, c-format
msgid "%s (GCC) %s\n"
msgstr "%s (GCC) %s\n"
-#: gcc.c:3263
-#, fuzzy
-msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
-msgstr "Copyright © 2001 Free Software Foundation, Inc.\n"
-
-#: gcc.c:3265 gcov.c:364
+#: gcc.c:3352
msgid ""
"This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
@@ -5522,137 +5288,146 @@ msgstr ""
"gibt KEINE Garantie; auch nicht für VERKAUFBARKEIT oder FÜR SPEZIELLE ZWECKE.\n"
"\n"
-#: gcc.c:3366
+#: gcc.c:3453
msgid "argument to `-Xlinker' is missing"
-msgstr ""
+msgstr "Argument für »-Xlinker« fehlt"
-#: gcc.c:3374
+#: gcc.c:3461
+msgid "argument to `-Xpreprocessor' is missing"
+msgstr "Argument für »-Xpreprocessor« fehlt"
+
+#: gcc.c:3468
+msgid "argument to `-Xassembler' is missing"
+msgstr "Argument für »-Xassembler« fehlt"
+
+#: gcc.c:3475
msgid "argument to `-l' is missing"
-msgstr ""
+msgstr "Argument für »-l« fehlt"
-#: gcc.c:3391
+#: gcc.c:3491
msgid "argument to `-specs' is missing"
-msgstr ""
+msgstr "Argument für »-specs« fehlt"
-#: gcc.c:3406
+#: gcc.c:3505
msgid "argument to `-specs=' is missing"
-msgstr ""
+msgstr "Argument für »-specs=« fehlt"
-#: gcc.c:3436
+#: gcc.c:3542
#, c-format
msgid "`-%c' must come at the start of the command line"
-msgstr ""
+msgstr "»-%c« muss am Anfang der Kommandozeile stehen"
-#: gcc.c:3445
+#: gcc.c:3551
msgid "argument to `-B' is missing"
-msgstr ""
-
-#: gcc.c:3618
-msgid "cannot specify -o with -c or -S and multiple compilations"
-msgstr ""
+msgstr "Argument für »-B« fehlt"
-#: gcc.c:3791
+#: gcc.c:3728
msgid "warning: -pipe ignored because -save-temps specified"
-msgstr ""
+msgstr "Warnung: -pipe ignoriert, da -save-temps angegeben"
-#: gcc.c:3795
+#: gcc.c:3732
msgid "warning: -pipe ignored because -time specified"
-msgstr ""
+msgstr "Warnung: -pipe ignoriert, da -time angegeben"
-#: gcc.c:3807
+#: gcc.c:3944
msgid "argument to `-x' is missing"
-msgstr ""
+msgstr "Argument für »-x« fehlt"
-#: gcc.c:3835
+#: gcc.c:3972
#, c-format
msgid "argument to `-%s' is missing"
-msgstr ""
+msgstr "Argument für »-%s« fehlt"
-#: gcc.c:3896
+#: gcc.c:4033
#, c-format
msgid "warning: `-x %s' after last input file has no effect"
-msgstr ""
+msgstr "Warnung: »-x %s« hinter letzter Eingabedatei hat keine Wirkung"
-#: gcc.c:4241
+#: gcc.c:4434
msgid "invalid specification! Bug in cc"
-msgstr ""
+msgstr "ungültige Spezifikation! Fehler in cc"
-#: gcc.c:4395
+#: gcc.c:4588
#, c-format
msgid "%s\n"
-msgstr ""
+msgstr "%s\n"
#. Catch the case where a spec string contains something like
#. '%{foo:%*}'. ie there is no * in the pattern on the left
#. hand side of the :.
-#: gcc.c:4955
+#: gcc.c:5092
#, c-format
msgid "spec failure: '%%*' has not been initialized by pattern match"
-msgstr ""
+msgstr "Spezifikationsfehler: »%%*« wurde nicht durch Mustererkennung initialisiert"
-#: gcc.c:4964
+#: gcc.c:5101
#, c-format
msgid "warning: use of obsolete %%[ operator in specs"
-msgstr ""
+msgstr "Warnung: Verwendung des veralteten Operators %%[ in Spezifikation"
-#: gcc.c:4982
+#: gcc.c:5119
#, c-format
msgid "Processing spec %c%s%c, which is '%s'\n"
-msgstr ""
+msgstr "Verarbeite Spezifikation %c%s%c, welche »%s« ist\n"
-#: gcc.c:5107
+#: gcc.c:5182
#, c-format
msgid "spec failure: unrecognized spec option '%c'"
-msgstr ""
+msgstr "Spezifikationsfehler: nicht erkannte Option »%c«"
-#: gcc.c:5188
+#: gcc.c:5261
#, c-format
msgid "unknown spec function `%s'"
-msgstr ""
+msgstr "unbekannte Spezifikationsfunktion »%s«"
-#: gcc.c:5207
+#: gcc.c:5280
#, c-format
msgid "error in args to spec function `%s'"
-msgstr ""
+msgstr "Fehler in Argumenten für Spezifikationsfunktion »%s«"
-#: gcc.c:5256
+#: gcc.c:5328
msgid "malformed spec function name"
-msgstr ""
+msgstr "schlechter Name für Spezifikationsfunktion"
#. )
-#: gcc.c:5259
+#: gcc.c:5331
msgid "no arguments for spec function"
-msgstr ""
+msgstr "keine Argumente für Spezifikationsfunktion"
-#: gcc.c:5278
+#: gcc.c:5350
msgid "malformed spec function arguments"
-msgstr ""
+msgstr "schlechte Argumente für Spezifikationsfunktion"
-#: gcc.c:5386
-msgid "mismatched braces in specs"
-msgstr ""
+#: gcc.c:6076
+msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC."
+msgstr "Spezifikationsfehler: mehr als ein Argument für SYSROOT_SUFFIX_SPEC."
+
+#: gcc.c:6086
+msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC."
+msgstr "Spezifikationsfehler: mehr als ein Argument für SYSROOT_HEADERS_SUFFIX_SPEC."
-#: gcc.c:6081
+#: gcc.c:6179
#, c-format
msgid "unrecognized option `-%s'"
-msgstr ""
+msgstr "nicht erkannte Option »-%s«"
-#: gcc.c:6087
+#: gcc.c:6185
#, c-format
msgid "install: %s%s\n"
-msgstr ""
+msgstr "installiere: %s%s\n"
-#: gcc.c:6088
+#: gcc.c:6186
#, c-format
msgid "programs: %s\n"
-msgstr ""
+msgstr "Programme: %s\n"
-#: gcc.c:6089
+#: gcc.c:6187
#, c-format
msgid "libraries: %s\n"
-msgstr ""
+msgstr "Bibliotheken: %s\n"
-#: gcc.c:6146
+#: gcc.c:6244
+#, c-format
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
@@ -5662,54 +5437,58 @@ msgstr ""
"folgenden Hinweise; Fehler in der deutschen Ãœbersetzung sind an de@li.org\n"
"zu melden:\n"
-#: gcc.c:6162
+#: gcc.c:6260
#, c-format
msgid "Configured with: %s\n"
msgstr "Konfiguriert mit: %s\n"
-#: gcc.c:6176
+#: gcc.c:6274
#, c-format
msgid "Thread model: %s\n"
-msgstr ""
+msgstr "Thread-Modell: %s\n"
-#: gcc.c:6187
+#: gcc.c:6285
#, c-format
msgid "gcc version %s\n"
msgstr "gcc-Version %s\n"
-#: gcc.c:6189
+#: gcc.c:6287
#, c-format
msgid "gcc driver version %s executing gcc version %s\n"
-msgstr ""
+msgstr "gcc-Treiberversion %s führt gcc Version %s aus\n"
-#: gcc.c:6197
+#: gcc.c:6295
msgid "no input files"
msgstr "keine Eingabedateien"
-#: gcc.c:6235
+#: gcc.c:6317 gcc.c:6436
#, c-format
-msgid "%s: %s compiler not installed on this system"
-msgstr "%s: %s-Compiler ist auf diesem System nicht installiert"
+msgid "%s: linker input file unused because linking not done"
+msgstr "%s: Eingabedateien des Binders unbenutzt, da keine Bindung geschieht"
-#: gcc.c:6310
+#: gcc.c:6320
+msgid "cannot specify -o with -c or -S and multiple languages"
+msgstr "-o kann nicht mit -c oder -S und mehreren Sprachen angegeben werden"
+
+#: gcc.c:6355
#, c-format
-msgid "%s: linker input file unused because linking not done"
-msgstr ""
+msgid "%s: %s compiler not installed on this system"
+msgstr "%s: %s-Compiler ist auf diesem System nicht installiert"
-#: gcc.c:6353
+#: gcc.c:6476
#, c-format
msgid "language %s not recognized"
msgstr "Sprache %s nicht erkannt"
-#: gcc.c:6456
+#: gcc.c:6573
msgid "internal gcc abort"
-msgstr ""
+msgstr "interner Abruch des gcc"
-#: gcov.c:325
+#: gcov.c:384
msgid "Internal gcov abort.\n"
-msgstr ""
+msgstr "Interner gcov-Abbruch.\n"
-#: gcov.c:338
+#: gcov.c:397
msgid ""
"Usage: gcov [OPTION]... SOURCEFILE\n"
"\n"
@@ -5717,53 +5496,67 @@ msgstr ""
"Aufruf: gcov [OPTION]... QUELLDATEI\n"
"\n"
-#: gcov.c:339
+#: gcov.c:398
msgid ""
"Print code coverage information.\n"
"\n"
msgstr ""
+"Information zur Code-Ãœberdeckung ausgeben.\n"
+"\n"
-#: gcov.c:340
+#: gcov.c:399
msgid " -h, --help Print this help, then exit\n"
msgstr " -h, --help Diese Hilfe anzeigen\n"
-#: gcov.c:341
+#: gcov.c:400
msgid " -v, --version Print version number, then exit\n"
msgstr " -v, --version Versionsnummer anzeigen\n"
-#: gcov.c:342
+#: gcov.c:401
+msgid " -a, --all-blocks Show information for every basic block\n"
+msgstr " -a, --all-blocks Informationen für jeden Basisblock zeigen\n"
+
+#: gcov.c:402
msgid " -b, --branch-probabilities Include branch probabilities in output\n"
-msgstr ""
+msgstr " -b, --branch-probabilities Zweigwahrscheinlichkeiten in Ausgabe aufnehmen\n"
-#: gcov.c:343
+#: gcov.c:403
msgid ""
" -c, --branch-counts Given counts of branches taken\n"
" rather than percentages\n"
-msgstr ""
+msgstr " -c, --branch-counts Angegebene Zweigzahlen statt Anteilen nehmen\n"
-#: gcov.c:345
+#: gcov.c:405
msgid " -n, --no-output Do not create an output file\n"
msgstr " -n, --no-output Keine Ausgabedatei erzeugen\n"
-#: gcov.c:346
+#: gcov.c:406
msgid ""
" -l, --long-file-names Use long output file names for included\n"
" source files\n"
msgstr ""
+" -l, --long-file-names Lange Dateinamen für Ausgabedateien für\n"
+" eingefügte Quelldateien verwenden\n"
-#: gcov.c:348
+#: gcov.c:408
msgid " -f, --function-summaries Output summaries for each function\n"
-msgstr ""
+msgstr " -f, --function-summaries Ausgabezusammenfassungen für jede Funktion\n"
-#: gcov.c:349
+#: gcov.c:409
msgid " -o, --object-directory DIR|FILE Search for object files in DIR or called FILE\n"
msgstr ""
+" -o, --object-directory DIR|FILE In DIR oder aufgerufener Datei FILE nach\n"
+" Objektdateien suchen\n"
-#: gcov.c:350
+#: gcov.c:410
msgid " -p, --preserve-paths Preserve all pathname components\n"
-msgstr ""
+msgstr " -p, --preserve-paths Alle Pfadnamenskomponenten bewahren\n"
+
+#: gcov.c:411
+msgid " -u, --unconditional-branches Show unconditional branch counts too\n"
+msgstr " -u, --unconditional-branches Auch unbedingte Zweigzähler zeigen\n"
-#: gcov.c:351
+#: gcov.c:412
#, c-format
msgid ""
"\n"
@@ -5775,474 +5568,368 @@ msgstr ""
"%s.\n"
"Fehler in der deutschen Ãœbersetzung sind an de@li.org zu melden.\n"
-#: gcov.c:361
+#: gcov.c:422
#, c-format
msgid "gcov (GCC) %s\n"
msgstr "gcov (GCC) %s\n"
-#: gcov.c:362
-msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
-msgstr "Copyright © 2001 Free Software Foundation, Inc.\n"
-
-#: gcov.c:500
-#, c-format
-msgid "Could not open basic block file %s.\n"
-msgstr ""
-
-#: gcov.c:507
-#, c-format
-msgid "Could not open program flow graph file %s.\n"
-msgstr ""
-
-#: gcov.c:524
-#, c-format
-msgid "Could not open data file %s.\n"
-msgstr ""
-
-#: gcov.c:525
-msgid "Assuming that all execution counts are zero.\n"
-msgstr ""
-
-#: gcov.c:534
-#, c-format
-msgid "No executable code associated with file %s.\n"
-msgstr ""
-
-#: gcov.c:1186
-#, c-format
-msgid "%s of %d lines executed in %s %s\n"
-msgstr ""
-
-#: gcov.c:1191
-#, c-format
-msgid "No executable lines in %s %s\n"
-msgstr ""
-
-#: gcov.c:1198
-#, c-format
-msgid "%s of %d branches executed in %s %s\n"
-msgstr ""
-
-#: gcov.c:1203
-#, c-format
-msgid "%s of %d branches taken at least once in %s %s\n"
-msgstr ""
-
-#: gcov.c:1209
-#, c-format
-msgid "No branches in %s %s\n"
-msgstr ""
-
-#: gcov.c:1211
-#, c-format
-msgid "%s of %d calls executed in %s %s\n"
-msgstr ""
-
-#: gcov.c:1216
-#, c-format
-msgid "No calls in %s %s\n"
-msgstr ""
-
-#: gcov.c:1351
-#, c-format
-msgid "didn't use all bb entries of graph, function %s\n"
-msgstr ""
-
-#: gcov.c:1353
-#, c-format
-msgid "block_num = %ld, num_blocks = %d\n"
-msgstr ""
-
-#: gcov.c:1367
-#, c-format
-msgid "ERROR: unexpected line number %ld\n"
-msgstr ""
-
-#: gcov.c:1383
-#, c-format
-msgid "ERROR: too many basic blocks in function %s\n"
-msgstr ""
-
-#: gcov.c:1398
-#, c-format
-msgid "ERROR: out of range line number in function %s\n"
-msgstr ""
-
-#: gcov.c:1470
-#, c-format
-msgid "Could not open source file %s.\n"
-msgstr ""
+#: gcov.c:423
+msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
+msgstr "Copyright © 2003 Free Software Foundation, Inc.\n"
-#: gcov.c:1480
-#, c-format
-msgid "Warning: source file %s is newer than %s\n"
+#: gcov.c:425
+msgid ""
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or \n"
+"FITNESS FOR A PARTICULAR PURPOSE.\n"
+"\n"
msgstr ""
+"Dies ist freie Software; die Kopierbedingungen stehen in den Quellen. Es\n"
+"gibt KEINE Garantie; auch nicht für VERKAUFBARKEIT oder FÜR SPEZIELLE ZWECKE.\n"
+"\n"
-#: gcov.c:1510
+#: gcov.c:515
#, c-format
-msgid "Unexpected EOF while reading source file %s.\n"
-msgstr ""
+msgid "%s:no functions found\n"
+msgstr "%s: keine Funktionen gefunden\n"
-#: gcov.c:1532
-#, c-format
-msgid "call %2d never executed\n"
-msgstr ""
+#: gcov.c:536 gcov.c:564
+msgid "\n"
+msgstr "\n"
-#: gcov.c:1535
+#: gcov.c:551
#, c-format
-msgid "call %2d returns %s\n"
-msgstr ""
+msgid "%s:creating `%s'\n"
+msgstr "%s: Erzeugen von »%s«\n"
-#: gcov.c:1543
+#: gcov.c:555
#, c-format
-msgid "branch %2d never executed\n"
-msgstr ""
+msgid "%s:error writing output file `%s'\n"
+msgstr "%s: Fehler beim Schreiben der Ausgabedatei »%s«\n"
-#: gcov.c:1546
+#: gcov.c:560
#, c-format
-msgid "branch %2d taken %s\n"
-msgstr ""
+msgid "%s:could not open output file `%s'\n"
+msgstr "%s: Ausgabedatei %s konnte nicht geöffnet werden\n"
-#: gcov.c:1610
+#: gcov.c:711
#, c-format
-msgid "Creating %s.\n"
-msgstr ""
+msgid "%s:cannot open graph file\n"
+msgstr "%s: Graph-Datei kann nicht geöffnet werden\n"
-#: gcov.c:1613
+#: gcov.c:717
#, c-format
-msgid "Error writing output file %s.\n"
-msgstr ""
+msgid "%s:not a gcov graph file\n"
+msgstr "%s: keine gcov-Graph-Datei\n"
-#: gcov.c:1618
+#: gcov.c:730
#, c-format
-msgid "Could not open output file %s.\n"
-msgstr ""
+msgid "%s:version `%.4s', prefer `%.4s'\n"
+msgstr "%s: Version »%.4s«, aber »%.4s« wird bevorzugt\n"
-#: gcse.c:763
+#: gcov.c:782
#, c-format
-msgid "GCSE disabled: %d > 1000 basic blocks and %d >= 20 edges/basic block"
-msgstr ""
+msgid "%s:already seen blocks for `%s'\n"
+msgstr "%s: bereits gesehene Blöcke für »%s«\n"
-#: gcse.c:775
+#: gcov.c:903 gcov.c:1062
#, c-format
-msgid "GCSE disabled: %d basic blocks and %d registers"
-msgstr ""
+msgid "%s:corrupted\n"
+msgstr "%s: beschädigt\n"
-#: genautomata.c:1490
+#: gcov.c:976
#, c-format
-msgid "Name `%s' contains quotes"
-msgstr ""
+msgid "%s:cannot open data file\n"
+msgstr "%s: kann nicht geöffnet werden\n"
-#: genautomata.c:1621
+#: gcov.c:981
#, c-format
-msgid "invalid string `%s' in define_cpu_unit"
-msgstr ""
+msgid "%s:not a gcov data file\n"
+msgstr "%s: keine gcov-Datei\n"
-#: genautomata.c:1650
+#: gcov.c:994
#, c-format
-msgid "invalid string `%s' in define_query_cpu_unit"
-msgstr ""
+msgid "%s:version `%.4s', prefer version `%.4s'\n"
+msgstr "%s: Version »%.4s«, aber Version »%.4s« wird bevorzugt\n"
-#: genautomata.c:1682 genautomata.c:1685
+#: gcov.c:1000
#, c-format
-msgid "invalid string `%s' in define_bypass"
-msgstr ""
+msgid "%s:stamp mismatch with graph file\n"
+msgstr "%s: Marke passt nicht zur Graph-Datei\n"
-#: genautomata.c:1720
+#: gcov.c:1026
#, c-format
-msgid "invalid first string `%s' in exclusion_set"
-msgstr ""
+msgid "%s:unknown function `%u'\n"
+msgstr "%s: unbekannte Funktion »%u«\n"
-#: genautomata.c:1724
+#: gcov.c:1039
#, c-format
-msgid "invalid second string `%s' in exclusion_set"
-msgstr ""
+msgid "%s:profile mismatch for `%s'\n"
+msgstr "%s: Profil passt nicht für `%s'\n"
-#: genautomata.c:1760
+#: gcov.c:1062
#, c-format
-msgid "invalid first string `%s' in presence_set"
-msgstr ""
+msgid "%s:overflowed\n"
+msgstr "%s: übergelaufen\n"
-#: genautomata.c:1764
+#: gcov.c:1085
#, c-format
-msgid "invalid second string `%s' in presence_set"
-msgstr ""
+msgid "%s:`%s' lacks entry and/or exit blocks\n"
+msgstr "%s: Eintrag und/oder Exit-Blöcke fehlen in »%s«\n"
-#: genautomata.c:1800
+#: gcov.c:1090
#, c-format
-msgid "invalid first string `%s' in absence_set"
-msgstr ""
+msgid "%s:`%s' has arcs to entry block\n"
+msgstr "%s: »%s« hat Bögen zum Eintrittsblock\n"
-#: genautomata.c:1804
+#: gcov.c:1098
#, c-format
-msgid "invalid second string `%s' in absence_set"
-msgstr ""
+msgid "%s:`%s' has arcs from exit block\n"
+msgstr "%s: »%s« hat Bögen vom Eintrittsblock\n"
-#: genautomata.c:1837
+#: gcov.c:1306
#, c-format
-msgid "invalid string `%s' in define_automaton"
-msgstr ""
+msgid "%s:graph is unsolvable for `%s'\n"
+msgstr "%s: Graph ist für »%s« unlösbar\n"
-#: genautomata.c:1868
+#: gcov.c:1386
#, c-format
-msgid "invalid option `%s' in automata_option"
-msgstr "ungültige Option »%s« in automata_option"
+msgid "%s `%s'\n"
+msgstr "%s: »%s«\n"
-#: genautomata.c:1890
+#: gcov.c:1389
#, c-format
-msgid "garbage after ) in reservation `%s'"
-msgstr ""
+msgid "Lines executed:%s of %d\n"
+msgstr "%s von %d Zeilen ausgeführt\n"
-#: genautomata.c:1921 genautomata.c:1954 genautomata.c:1981
-#, fuzzy, c-format
-msgid "invalid `%s' in reservation `%s'"
-msgstr "ungültige Option »%s«"
+#: gcov.c:1393
+msgid "No executable lines"
+msgstr "Keine ausführbaren Zeilen"
-#: genautomata.c:1932
+#: gcov.c:1399
#, c-format
-msgid "repetition `%s' <= 1 in reservation `%s'"
-msgstr ""
-
-#: genautomata.c:2425
-#, c-format
-msgid "unit `%s' in exclusion is not declared"
-msgstr ""
+msgid "Branches executed:%s of %d\n"
+msgstr "%s von %d Zweigen ausgeführt\n"
-#: genautomata.c:2427
+#: gcov.c:1403
#, c-format
-msgid "`%s' in exclusion is not unit"
-msgstr ""
+msgid "Taken at least once:%s of %d\n"
+msgstr "%s von %d Zweigen mindestens einmal genommen\n"
-#: genautomata.c:2465
-#, c-format
-msgid "unit `%s' excludes itself"
-msgstr ""
+#: gcov.c:1409
+msgid "No branches\n"
+msgstr "Keine Zweige\n"
-#: genautomata.c:2473
+#: gcov.c:1411
#, c-format
-msgid "units `%s' and `%s' in exclusion set belong to different automata"
-msgstr ""
+msgid "Calls executed:%s of %d\n"
+msgstr "%s von %d Aufrufe ausgeführt\n"
-#: genautomata.c:2603 genautomata.c:2609
-#, c-format
-msgid "unit `%s' excludes and requires presence of `%s'"
-msgstr ""
+#: gcov.c:1415
+msgid "No calls\n"
+msgstr "Keine Aufrufe\n"
-#: genautomata.c:2623 genautomata.c:2629
+#: gcov.c:1556
#, c-format
-msgid "unit `%s' requires absence and presence of `%s'"
-msgstr ""
-
-#: genautomata.c:2692 genautomata.c:2695
-#, fuzzy, c-format
-msgid "repeated declaration of automaton `%s'"
-msgstr "Deklaration von »%D« als %s"
+msgid "%s:no lines for `%s'\n"
+msgstr "%s: keine Zeilen für »%s«\n"
-#: genautomata.c:2711
+#: gcov.c:1751
#, c-format
-msgid "define_insn_reservation `%s' has negative latency time"
-msgstr ""
+msgid "call %2d returned %s\n"
+msgstr "Aufruf %2d gab %s zurück\n"
-#: genautomata.c:2717
+#: gcov.c:1756
#, c-format
-msgid "`%s' is already used as insn reservation name"
-msgstr ""
+msgid "call %2d never executed\n"
+msgstr "Aufruf %2d niemals ausgeführt\n"
-#: genautomata.c:2723
+#: gcov.c:1761
#, c-format
-msgid "define_bypass `%s - %s' has negative latency time"
-msgstr ""
+msgid "branch %2d taken %s%s\n"
+msgstr "Zweig %2d wurde genommen: %s%s\n"
-#: genautomata.c:2737
+#: gcov.c:1765
#, c-format
-msgid "automaton `%s' is not declared"
-msgstr ""
+msgid "branch %2d never executed\n"
+msgstr "Zweig %2d niemals ausgeführt\n"
-#: genautomata.c:2747
+#: gcov.c:1770
#, c-format
-msgid "define_unit `%s' without automaton when one defined"
-msgstr ""
+msgid "unconditional %2d taken %s\n"
+msgstr "unbedingtes %2d, genommen: %s\n"
-#: genautomata.c:2753
+#: gcov.c:1773
#, c-format
-msgid "`%s' is declared as cpu unit"
-msgstr ""
+msgid "unconditional %2d never executed\n"
+msgstr "unbedingtes %2d niemals ausgeführt\n"
-#: genautomata.c:2762
-#, fuzzy, c-format
-msgid "`%s' is declared as cpu reservation"
-msgstr "»%s« als »static« deklariert, aber nirgendwo definiert"
-
-#: genautomata.c:2772
+#: gcov.c:1805
#, c-format
-msgid "repeated declaration of unit `%s'"
-msgstr "wiederholte Deklaration von Unit »%s«"
+msgid "%s:cannot open source file\n"
+msgstr "%s: Quelldatei kann nicht geöffnet werden\n"
-#: genautomata.c:2775
+#: gcov.c:1815
#, c-format
-msgid "repeated declaration of reservation `%s'"
-msgstr ""
+msgid "%s:source file is newer than graph file `%s'\n"
+msgstr "%s: Quelldatei ist neuer als Graph-Datei »%s«\n"
-#: genautomata.c:2790 genautomata.c:2793
-#, c-format
-msgid "there is no insn reservation `%s'"
-msgstr ""
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:747
+msgid "GCSE disabled"
+msgstr "GCSE ausgeschaltet"
-#: genautomata.c:2810 genautomata.c:2815
-#, c-format
-msgid "the same bypass `%s - %s' is already defined"
-msgstr ""
+#: gcse.c:6108
+msgid "NULL pointer checks disabled"
+msgstr "NULL-Zeiger Tests ausgeschaltet"
-#: genautomata.c:2820
-#, c-format
-msgid "bypass `%s - %s' is already defined"
-msgstr ""
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:7994
+msgid "jump bypassing disabled"
+msgstr "Sprungumgehungen ausgeschaltet"
-#: genautomata.c:2925 genautomata.c:2927
+#: gcse.c:8055
#, c-format
-msgid "automaton `%s' is not used"
-msgstr ""
+msgid "%s: %d basic blocks and %d edges/basic block"
+msgstr "%s: %d Basis-Blöcke und %d Kanten/Basis-Blöcke"
-#: genautomata.c:2950
+#: gcse.c:8068
#, c-format
-msgid "undeclared unit or reservation `%s'"
-msgstr ""
+msgid "%s: %d basic blocks and %d registers"
+msgstr "%s: %d Basis-Blöcke und %d Register"
-#: genautomata.c:3028 genautomata.c:3030
+#: ggc-common.c:398 ggc-common.c:406 ggc-common.c:487 ggc-common.c:507
+#: ggc-page.c:2030 ggc-page.c:2062 ggc-page.c:2069 ggc-zone.c:1361
+#: ggc-zone.c:1367 ggc-zone.c:1372 ggc-zone.c:1379
#, c-format
-msgid "unit `%s' is not used"
-msgstr "Unit »%s« wird nicht verwendet"
+msgid "can't write PCH file: %m"
+msgstr "PCH-Datei kann nicht geschrieben werden: %m"
-#: genautomata.c:3035 genautomata.c:3037
+#: ggc-common.c:500
#, c-format
-msgid "reservation `%s' is not used"
-msgstr ""
+msgid "can't get position in PCH file: %m"
+msgstr "Position in PCH-Datei kann nicht ermittelt werden: %m"
-#: genautomata.c:3134
+#: ggc-common.c:510
#, c-format
-msgid "cycle in definition of reservation `%s'"
-msgstr ""
+msgid "can't write padding to PCH file: %m"
+msgstr "Auffüllung für PCH-Datei kann nicht geschrieben werden: %m"
-#: genautomata.c:5333
+#: ggc-common.c:563 ggc-common.c:571 ggc-common.c:578 ggc-common.c:581
+#: ggc-common.c:654 ggc-common.c:657 ggc-page.c:2157 ggc-zone.c:1389
#, c-format
-msgid "Units `%s' and `%s' should be in the same automaton"
-msgstr ""
+msgid "can't read PCH file: %m"
+msgstr "PCH-Datei kann nicht gelesen werden: %m"
-#: genautomata.c:9441
-msgid "-split has no argument."
-msgstr ""
-
-#: genautomata.c:9442
-msgid "option `-split' has not been implemented yet\n"
-msgstr ""
+#: ggc-common.c:681
+msgid "had to relocate PCH"
+msgstr "PCH musste verschoben werden"
-#: genautomata.c:9486 genautomata.c:9491
+#: ggc-page.c:1325
#, c-format
-msgid "Automaton `%s': Insn `%s' will never be issued"
-msgstr ""
+msgid "open /dev/zero: %m"
+msgstr "/dev/zero öffnen: %m"
-#: genautomata.c:9498 genautomata.c:9501
-#, c-format
-msgid "Insn `%s' will never be issued"
-msgstr ""
+#: ggc-page.c:2047 ggc-page.c:2053
+msgid "can't write PCH file"
+msgstr "PCH-Datei kann nicht geschrieben werden"
-#: genautomata.c:9649
-msgid "Errors in DFA description"
-msgstr ""
+#: ggc-simple.c:506
+msgid "Generating PCH files is not supported when using ggc-simple.c"
+msgstr "Das Erzeugen von PCH-Dateien wird bei Verwendung von ggc-simple.c nicht unterstützt"
-#: genautomata.c:9732
+#: global.c:356 global.c:369 global.c:383
#, c-format
-msgid "Error in writing DFA description file %s"
-msgstr ""
-
-#: genconditions.c:196
-msgid "No input file name."
-msgstr "Kein Eingabedateiname,"
+msgid "%s cannot be used in asm here"
+msgstr "%s kann nicht hier in »asm« verwendet werden"
-#: ggc-page.c:1265
-msgid "open /dev/zero"
-msgstr ""
-
-#: graph.c:420 profile.c:1204 profile.c:1211 toplev.c:1836 toplev.c:5168
-#: f/com.c:14210 java/jcf-parse.c:917 java/jcf-parse.c:1063 java/lex.c:1776
-#: objc/objc-act.c:449
+#: graph.c:403 toplev.c:1481 toplev.c:4408 f/com.c:14202 java/jcf-parse.c:883
+#: java/jcf-parse.c:1030 java/lex.c:1828 objc/objc-act.c:503
#, c-format
-msgid "can't open %s"
-msgstr "Es ist nicht möglich »%s« zu öffnen"
+msgid "can't open %s: %m"
+msgstr "%s kann nicht geöffnet werden: %m"
#: haifa-sched.c:196
#, c-format
msgid "fix_sched_param: unknown param: %s"
-msgstr ""
+msgstr "fix_sched_param: unbekannter Parameter: %s"
-#: integrate.c:174
+#: integrate.c:166
msgid "function cannot be inline"
-msgstr ""
+msgstr "Funktion kann nicht »inline« sein"
-#: integrate.c:178
+#: integrate.c:170
msgid "varargs function cannot be inline"
-msgstr ""
+msgstr "Varargs-Funktion kann nicht »inline« sein"
-#: integrate.c:181
+#: integrate.c:173
msgid "function using alloca cannot be inline"
-msgstr ""
+msgstr "alloca benutzende Funktion kann nicht »inline« sein"
+
+#: integrate.c:176
+msgid "function using longjmp cannot be inline"
+msgstr "longjmp benutzende Funktion kann nicht »inline« sein"
-#: integrate.c:184
+#: integrate.c:179
msgid "function using setjmp cannot be inline"
-msgstr ""
+msgstr "setjmp benutzende Funktion kann nicht »inline« sein"
-#: integrate.c:187
+#: integrate.c:182
msgid "function uses __builtin_eh_return"
-msgstr ""
+msgstr "Funktion verwendet __builtin_eh_return"
-#: integrate.c:190
+#: integrate.c:185
msgid "function with nested functions cannot be inline"
-msgstr ""
+msgstr "Funktion mit geschachtelten Funktionen kann nicht »inline« sein"
-#: integrate.c:194
+#: integrate.c:189
msgid "function with label addresses used in initializers cannot inline"
-msgstr ""
+msgstr "Funktion mit Markenadressen in Initialisierungen kann nicht »inline« sein"
-#: integrate.c:201 integrate.c:245
+#: integrate.c:196 integrate.c:240
msgid "function too large to be inline"
-msgstr ""
+msgstr "Funktion zu groß um »inline« sein zu können"
-#: integrate.c:211
+#: integrate.c:206
msgid "no prototype, and parameter address used; cannot be inline"
-msgstr ""
+msgstr "kein Prototyp, und Parameteradresse verwendet; kann nicht »inline« sein"
-#: integrate.c:218 integrate.c:263
+#: integrate.c:213 integrate.c:258
msgid "inline functions not supported for this return value type"
-msgstr ""
+msgstr "»inline«-Funktionen für diesen Rückgabetyp nicht unterstützt"
-#: integrate.c:223
+#: integrate.c:218
msgid "function with varying-size return value cannot be inline"
-msgstr ""
+msgstr "Funktion mit Rückgabetyp variabler Größe kann nicht »inline« sein"
-#: integrate.c:230
+#: integrate.c:225
msgid "function with varying-size parameter cannot be inline"
-msgstr ""
+msgstr "Funktion mit Parameter variabler Größe kann nicht »inline« sein"
-#: integrate.c:233
+#: integrate.c:228
msgid "function with transparent unit parameter cannot be inline"
-msgstr ""
+msgstr "Funktion mit transparentem Einheiten-Parameter kann nicht »inline« sein"
-#: integrate.c:252
+#: integrate.c:247
msgid "function with computed jump cannot inline"
-msgstr ""
+msgstr "Funktion mit berechnetem Sprung kann nicht »inline« sein"
-#: integrate.c:256
+#: integrate.c:251
msgid "function with nonlocal goto cannot be inline"
-msgstr ""
+msgstr "Funktion mit nichtlokalem Goto kann nicht »inline« sein"
-#: integrate.c:270
+#: integrate.c:265
msgid "function with target specific attribute(s) cannot be inlined"
-msgstr ""
+msgstr "Funktion mit zielspezifischen Attributen kann nicht »inline« sein"
+
+#: jump.c:1896
+msgid "%Hwill never be executed"
+msgstr "%Hwird niemals ausgeführt"
-#: line-map.c:198
+#: line-map.c:202
#, c-format
msgid "In file included from %s:%u"
-msgstr ""
+msgstr "In Datei, eingefügt von %s:%u"
#. Translators note: this message is used in conjunction
#. with "In file included from %s:%ld" and some other
@@ -6256,2261 +5943,1647 @@ msgstr ""
#. with all the "from"s lined up.
#. The trailing comma is at the beginning of this message,
#. and the trailing colon is not translated.
-#: line-map.c:216
+#: line-map.c:220
#, c-format
msgid ""
",\n"
" from %s:%u"
msgstr ""
+",\n"
+" von %s:%u"
-#. If we didn't find this parameter, issue an error message.
-#: params.c:80
+#. What to print when a switch has no documentation.
+#: opts.c:149
+msgid "This switch lacks documentation"
+msgstr "Dieser Schalter ist undokumentiert"
+
+#. Eventually this should become a hard error IMO.
+#: opts.c:318
#, c-format
-msgid "invalid parameter `%s'"
-msgstr ""
+msgid "command line option \"%s\" is valid for %s but not for %s"
+msgstr "Kommandozeilenoption \"%s\" ist gültig für %s, aber nicht für %s"
-#: profile.c:397
+#: opts.c:406
#, c-format
-msgid "Profile does not match flowgraph of function %s (out of date?)"
-msgstr ""
+msgid "missing argument to \"%s\""
+msgstr "fehlendes Argument für »%s«"
-#: profile.c:400
-msgid ".da file corrupted"
-msgstr ""
+#: opts.c:416
+#, c-format
+msgid "argument to \"%s\" should be a non-negative integer"
+msgstr "Argument von »%s« sollte eine nicht-negative Ganzzahl sein"
-#: profile.c:634
+#: opts.c:463
#, c-format
-msgid "corrupted profile info: prob for %d-%d thought to be %d"
-msgstr ""
+msgid "unrecognized command line option \"%s\""
+msgstr "nicht erkannte Kommandozeilenoption »%s«"
+
+#: opts.c:646
+msgid "-Wuninitialized is not supported without -O"
+msgstr "-Wuninitialized wird nicht ohne -O unterstützt"
-#: profile.c:1226
+#: opts.c:1350
#, c-format
-msgid "file %s not found, execution counts assumed to be zero"
+msgid "unrecognized register name \"%s\""
+msgstr "unbekannter Registername: \"%s\""
+
+#: opts.c:1394
+#, c-format
+msgid "unknown tls-model \"%s\""
+msgstr "unbekanntes tls-Modell »%s«"
+
+#: opts.c:1450
+msgid "-fwritable-strings is deprecated; see documentation for details"
+msgstr "-fwritable-strings veraltet, schauen Sie in die Dokumentation für Details"
+
+#: opts.c:1534
+#, c-format
+msgid "%s: --param arguments should be of the form NAME=VALUE"
+msgstr "%s: »--param«-Argumente sollten von der Form NAME=VALUE sein"
+
+#: opts.c:1539
+#, c-format
+msgid "invalid --param value `%s'"
+msgstr "ungültiger Wert für --param: »%s«"
+
+#: opts.c:1635
+msgid "target system does not support debug output"
+msgstr "Zielsystem unterstützt nicht Testausgaben"
+
+#: opts.c:1642
+#, c-format
+msgid "debug format \"%s\" conflicts with prior selection"
+msgstr "Testformat »%s« steht in Konflikt mit vorheriger Auswahl"
+
+#: opts.c:1658
+#, c-format
+msgid "unrecognised debug output level \"%s\""
+msgstr "Testausgabestufe »%s« nicht erkannt"
+
+#: opts.c:1660
+#, c-format
+msgid "debug output level %s is too high"
+msgstr "Testausgabestufe »%s« ist zu groß"
+
+#: opts.c:1679
+msgid "The following options are language-independent:\n"
+msgstr "Die folgenden Optionen sind sprach-unabhängig:\n"
+
+#: opts.c:1686
+#, c-format
+msgid ""
+"The %s front end recognizes the following options:\n"
+"\n"
msgstr ""
+"Das %s-Frontend erkennt die folgenden Optionen:\n"
+"\n"
+
+#: opts.c:1700
+msgid "The --param option recognizes the following as parameters:\n"
+msgstr "Die Option »--param« erkennt die folgenden Parameter:\n"
+
+#. If we didn't find this parameter, issue an error message.
+#: params.c:76
+#, c-format
+msgid "invalid parameter `%s'"
+msgstr "ungültiger Parameter »%s«"
+
+#: profile.c:288
+msgid "corrupted profile info: run_max * runs < sum_max"
+msgstr "beschädigte Profilinformation: run_max * runs < sum_max"
-#: protoize.c:542
+#: profile.c:294
+msgid "corrupted profile info: sum_all is smaller than sum_max"
+msgstr "beschädigte Profilinformation: sum_all ist kleiner als sum_max"
+
+#: profile.c:336
+#, c-format
+msgid "corrupted profile info: edge from %i to %i exceeds maximal count"
+msgstr "Info zum beschädigten Profil: Kante von %i nach %i überschreitet Höchstzahl"
+
+#: profile.c:499
+#, c-format
+msgid "corrupted profile info: number of iterations for basic block %d thought to be %i"
+msgstr "Info zum beschädigten Profil: Anzahl der Durchläufe des Basisblocks %d sollte %i sein"
+
+#: profile.c:526
+#, c-format
+msgid "corrupted profile info: number of executions for edge %d-%d thought to be %i"
+msgstr "Info zum beschädigten Profil: Anzahl der Ausführungen der Kante »%d-%d« sollte %i sein"
+
+#: protoize.c:534
#, c-format
msgid "%s: internal abort\n"
-msgstr ""
+msgstr "%s: interner Abbruch\n"
-#: protoize.c:633
+#: protoize.c:592
#, c-format
msgid "%s: error writing file `%s': %s\n"
-msgstr ""
+msgstr "%s: Fehler beim Schreiben der Datei »%s«: %s\n"
-#: protoize.c:678
+#: protoize.c:636
#, c-format
msgid "%s: usage '%s [ -VqfnkN ] [ -i <istring> ] [ filename ... ]'\n"
-msgstr ""
+msgstr "%s: Aufruf '%s [ -VqfnkN ] [ -i <istring> ] [ Dateiname ... ]'\n"
-#: protoize.c:681
+#: protoize.c:639
#, c-format
msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B <dirname> ] [ filename ... ]'\n"
-msgstr ""
+msgstr "%s: Aufruf '%s [ -VqfnkNlgC ] [ -B <VerzName> ] [ Dateiname ... ]'\n"
-#: protoize.c:788
+#: protoize.c:745
#, c-format
msgid "%s: warning: no read access for file `%s'\n"
-msgstr ""
+msgstr "%s: Warnung: kein Leserecht für Datei »%s«\n"
-#: protoize.c:796
+#: protoize.c:753
#, c-format
msgid "%s: warning: no write access for file `%s'\n"
-msgstr ""
+msgstr "%s: Warnung: kein Schreibrecht für Datei »%s«\n"
-#: protoize.c:804
+#: protoize.c:761
#, c-format
msgid "%s: warning: no write access for dir containing `%s'\n"
-msgstr ""
+msgstr "%s: Warnung: kein Schreibrecht für Verzeichnis von »%s«\n"
#. Catch cases like /.. where we try to backup to a
#. point above the absolute root of the logical file
#. system.
-#: protoize.c:1222
+#: protoize.c:1148
#, c-format
msgid "%s: invalid file name: %s\n"
-msgstr ""
+msgstr "%s: ungültiger Dateiname: %s\n"
-#: protoize.c:1374
+#: protoize.c:1296
#, c-format
msgid "%s: %s: can't get status: %s\n"
-msgstr ""
+msgstr "%s: %s: kann Status nicht ermitteln: %s\n"
-#: protoize.c:1395
+#: protoize.c:1317
#, c-format
msgid ""
"\n"
"%s: fatal error: aux info file corrupted at line %d\n"
msgstr ""
+"\n"
+"%s: kritischer Fehler: Datei mit Hilfsinformationen beschädigt in Zeile %d\n"
-#: protoize.c:1731
+#: protoize.c:1646
#, c-format
msgid "%s:%d: declaration of function `%s' takes different forms\n"
-msgstr ""
+msgstr "%s:%d: Deklaration der Funktion »%s« nimmt verschiedene Formen an\n"
-#: protoize.c:1989
+#: protoize.c:1901
#, c-format
msgid "%s: compiling `%s'\n"
-msgstr ""
+msgstr "%s: »%s« wird kompiliert\n"
-#: protoize.c:2012
+#: protoize.c:1924
#, c-format
msgid "%s: wait: %s\n"
-msgstr ""
+msgstr "%s: warten: %s\n"
-#: protoize.c:2017
+#: protoize.c:1929
#, c-format
msgid "%s: subprocess got fatal signal %d\n"
-msgstr ""
+msgstr "%s: Subprozess empfing kritischen Fehler %d\n"
-#: protoize.c:2025
+#: protoize.c:1937
#, c-format
msgid "%s: %s exited with status %d\n"
-msgstr ""
+msgstr "%s: %s beendet mit Status %d\n"
-#: protoize.c:2077
+#: protoize.c:1986
#, c-format
msgid "%s: warning: missing SYSCALLS file `%s'\n"
-msgstr ""
+msgstr "%s: Warnung: SYSCALLS-Datei »%s« fehlt\n"
-#: protoize.c:2086 protoize.c:2115
+#: protoize.c:1995 protoize.c:2024
#, c-format
msgid "%s: can't read aux info file `%s': %s\n"
-msgstr ""
+msgstr "%s: Datei mit Hilfsinformationen »%s« kann nicht gelesen werden: %s\n"
-#: protoize.c:2131 protoize.c:2159
+#: protoize.c:2040 protoize.c:2068
#, c-format
msgid "%s: can't get status of aux info file `%s': %s\n"
-msgstr ""
+msgstr "%s: Status der Datei mit Hilfsinformationen »%s« kann nicht ermittelt werden: %s\n"
-#: protoize.c:2187
+#: protoize.c:2096
#, c-format
msgid "%s: can't open aux info file `%s' for reading: %s\n"
-msgstr ""
+msgstr "%s: Datei mit Hilfsinformationen »%s« kann nicht zum Lesen geöffnet werden: %s\n"
-#: protoize.c:2205
+#: protoize.c:2114
#, c-format
msgid "%s: error reading aux info file `%s': %s\n"
-msgstr ""
+msgstr "%s: Fehler beim Lesen der Datei mit Hilfsinformationen »%s«: %s\n"
-#: protoize.c:2218
+#: protoize.c:2127
#, c-format
msgid "%s: error closing aux info file `%s': %s\n"
-msgstr ""
+msgstr "%s: Fehler beim Schließen der Datei mit Hilfsinformationen »%s«: %s\n"
-#: protoize.c:2234
+#: protoize.c:2143
#, c-format
msgid "%s: can't delete aux info file `%s': %s\n"
-msgstr ""
+msgstr "%s: Fehler beim Löschen der Datei mit Hilfsinformationen »%s«: %s\n"
-#: protoize.c:2316 protoize.c:4318
+#: protoize.c:2225 protoize.c:4195
#, c-format
msgid "%s: can't delete file `%s': %s\n"
-msgstr ""
+msgstr "%s: Fehler beim Löschen der Datei »%s«: %s\n"
-#: protoize.c:2395
+#: protoize.c:2303
#, c-format
msgid "%s: warning: can't rename file `%s' to `%s': %s\n"
-msgstr ""
+msgstr "%s: Warnung: Fehler beim Umbenennen der Datei »%s« in »%s«: %s\n"
-#: protoize.c:2520
+#: protoize.c:2425
#, c-format
msgid "%s: conflicting extern definitions of '%s'\n"
-msgstr ""
+msgstr "%s: externe Definitionen von »%s« stehen in Konflikt\n"
-#: protoize.c:2524
+#: protoize.c:2429
#, c-format
msgid "%s: declarations of '%s' will not be converted\n"
-msgstr ""
+msgstr "%s: Deklarationen von »%s« werden nicht konvertiert\n"
-#: protoize.c:2526
+#: protoize.c:2431
#, c-format
msgid "%s: conflict list for '%s' follows:\n"
-msgstr ""
+msgstr "%s: Konfliktliste für »%s« folgt:\n"
-#: protoize.c:2559
+#: protoize.c:2464
#, c-format
msgid "%s: warning: using formals list from %s(%d) for function `%s'\n"
-msgstr ""
+msgstr "%s: Warnung: Formalliste von %s(%d) für Funktion »%s« verwendet\n"
-#: protoize.c:2599
+#: protoize.c:2504
#, c-format
msgid "%s: %d: `%s' used but missing from SYSCALLS\n"
-msgstr ""
+msgstr "%s: %d: »%s« verwendet, fehlt jedoch in SYSCALLS\n"
-#: protoize.c:2605
+#: protoize.c:2510
#, c-format
msgid "%s: %d: warning: no extern definition for `%s'\n"
-msgstr ""
+msgstr "%s: %d: Warnung: keine externe Definition für »%s«\n"
-#: protoize.c:2636
+#: protoize.c:2540
#, c-format
msgid "%s: warning: no static definition for `%s' in file `%s'\n"
-msgstr ""
+msgstr "%s: Warnung: keine statische Definition für »%s« in Datei »%s«\n"
-#: protoize.c:2642
+#: protoize.c:2546
#, c-format
msgid "%s: multiple static defs of `%s' in file `%s'\n"
-msgstr ""
+msgstr "%s: mehrere statische Definitionen von »%s« in Datei »%s«\n"
-#: protoize.c:2815 protoize.c:2818
+#: protoize.c:2716 protoize.c:2719
#, c-format
msgid "%s: %d: warning: source too confusing\n"
-msgstr ""
+msgstr "%s: %d: Warnung: Quelle zu verworren\n"
-#: protoize.c:3024
+#: protoize.c:2915
#, c-format
msgid "%s: %d: warning: varargs function declaration not converted\n"
-msgstr ""
+msgstr "%s: %d: Warnung: Funktionsdeklaration mit variablen Argumenten nicht konvertiert\n"
-#: protoize.c:3039
+#: protoize.c:2930
#, c-format
msgid "%s: declaration of function `%s' not converted\n"
-msgstr ""
+msgstr "%s: Deklaration der Funktion »%s« nicht konvertiert\n"
-#: protoize.c:3162
+#: protoize.c:3053
#, c-format
msgid "%s: warning: too many parameter lists in declaration of `%s'\n"
-msgstr ""
+msgstr "%s: Warnung: zu viele Parameterlisten in Deklaration von »%s«\n"
-#: protoize.c:3183
+#: protoize.c:3074
#, c-format
msgid ""
"\n"
"%s: warning: too few parameter lists in declaration of `%s'\n"
msgstr ""
+"\n"
+"%s: Warnung: zu wenige Parameterlisten in Deklaration von »%s«\n"
-#: protoize.c:3281
+#: protoize.c:3170
#, c-format
msgid "%s: %d: warning: found `%s' but expected `%s'\n"
-msgstr ""
+msgstr "%s: %d: Warnung: »%s« gefunden, aber »%s« erwartet\n"
-#: protoize.c:3459
+#: protoize.c:3345
#, c-format
msgid "%s: local declaration for function `%s' not inserted\n"
-msgstr ""
+msgstr "%s: lokale Deklaration für Funktion »%s« nicht eingefügt\n"
-#: protoize.c:3486
+#: protoize.c:3372
#, c-format
msgid ""
"\n"
"%s: %d: warning: can't add declaration of `%s' into macro call\n"
msgstr ""
+"\n"
+"%s: %d: Warnung: kann Deklaration von »%s« nicht zu Makro-Aufruf hinzufügen\n"
-#: protoize.c:3560
+#: protoize.c:3444
#, c-format
msgid "%s: global declarations for file `%s' not inserted\n"
-msgstr ""
+msgstr "%s: globale Deklarationen für Datei »%s« wurden nicht eingefügt\n"
-#: protoize.c:3651 protoize.c:3681
+#: protoize.c:3533 protoize.c:3563
#, c-format
msgid "%s: definition of function `%s' not converted\n"
-msgstr ""
+msgstr "%s: Definition der Funktion »%s« nicht konvertiert\n"
-#: protoize.c:3670
+#: protoize.c:3552
#, c-format
msgid "%s: %d: warning: definition of %s not converted\n"
-msgstr ""
+msgstr "%s: %d: Warnung: Definition von %s nicht konvertiert\n"
-#: protoize.c:4000
+#: protoize.c:3878
#, c-format
msgid "%s: found definition of `%s' at %s(%d)\n"
-msgstr ""
+msgstr "%s: Definition von »%s« an Stelle %s(%d) gefunden\n"
#. If we make it here, then we did not know about this
#. function definition.
-#: protoize.c:4016
+#: protoize.c:3894
#, c-format
msgid "%s: %d: warning: `%s' excluded by preprocessing\n"
-msgstr ""
+msgstr "%s: %d: Warnung: »%s« durch Präprozessor ausgeschlossen\n"
-#: protoize.c:4019
+#: protoize.c:3897
#, c-format
msgid "%s: function definition not converted\n"
-msgstr ""
+msgstr "%s: Funktionsdefinition nicht konvertiert\n"
-#: protoize.c:4078
+#: protoize.c:3955
#, c-format
msgid "%s: `%s' not converted\n"
-msgstr ""
+msgstr "%s: »%s« nicht konvertiert\n"
-#: protoize.c:4086
+#: protoize.c:3963
#, c-format
msgid "%s: would convert file `%s'\n"
-msgstr ""
+msgstr "%s: würde Datei »%s« konvertieren\n"
-#: protoize.c:4089
+#: protoize.c:3966
#, c-format
msgid "%s: converting file `%s'\n"
-msgstr ""
+msgstr "%s: Datei »%s« wird konvertiert\n"
-#: protoize.c:4099
+#: protoize.c:3976
#, c-format
msgid "%s: can't get status for file `%s': %s\n"
-msgstr ""
+msgstr "%s: Status der Datei »%s« kann nicht ermittelt werden: %s\n"
-#: protoize.c:4141
+#: protoize.c:4018
#, c-format
msgid "%s: can't open file `%s' for reading: %s\n"
-msgstr ""
+msgstr "%s: Datei »%s« kann nicht zum Schreiben geöffnet werden: %s\n"
-#: protoize.c:4156
+#: protoize.c:4033
#, c-format
msgid ""
"\n"
"%s: error reading input file `%s': %s\n"
msgstr ""
+"\n"
+"%s: Fehler beim Lesen der Eingabedatei »%s«: %s\n"
-#: protoize.c:4190
+#: protoize.c:4067
#, c-format
msgid "%s: can't create/open clean file `%s': %s\n"
-msgstr ""
+msgstr "%s: die leere Datei »%s« kann nicht erzeugt oder geöffnet werden: %s\n"
-#: protoize.c:4295
+#: protoize.c:4172
#, c-format
msgid "%s: warning: file `%s' already saved in `%s'\n"
-msgstr ""
+msgstr "%s: Warnung: Datei »%s« bereits in »%s« gesichert\n"
-#: protoize.c:4303
+#: protoize.c:4180
#, c-format
msgid "%s: can't link file `%s' to `%s': %s\n"
-msgstr ""
+msgstr "%s: die Datei »%s« kann nicht mit »%s« verbunden werden (Link): %s\n"
-#: protoize.c:4333
+#: protoize.c:4210
#, c-format
msgid "%s: can't create/open output file `%s': %s\n"
-msgstr ""
+msgstr "%s: die Ausgabedatei »%s« kann nicht erzeugt oder geöffnet werden: %s\n"
-#: protoize.c:4366
+#: protoize.c:4243
#, c-format
msgid "%s: can't change mode of file `%s': %s\n"
-msgstr ""
+msgstr "%s: Rechte der Datei »%s« können nicht geändert werden: %s\n"
-#: protoize.c:4541
+#: protoize.c:4416
#, c-format
msgid "%s: cannot get working directory: %s\n"
-msgstr ""
+msgstr "%s: aktuelles Verzeichnis kann nicht ermittelt werden: %s\n"
-#: protoize.c:4639
+#: protoize.c:4514
#, c-format
msgid "%s: input file names must have .c suffixes: %s\n"
-msgstr ""
+msgstr "%s: Namen der Eingabedateien müssen Suffix ».c« haben: %s\n"
#: ra.c:750
msgid "Didn't find a coloring.\n"
-msgstr ""
+msgstr "Färbung konnte nicht gefunden werden.\n"
-#: reg-stack.c:673
+#: reg-stack.c:665
#, c-format
msgid "output constraint %d must specify a single register"
-msgstr ""
+msgstr "Ausgabebedingung %d muss ein einzelnes Register angeben"
-#: reg-stack.c:683
+#: reg-stack.c:675
#, c-format
msgid "output constraint %d cannot be specified together with \"%s\" clobber"
-msgstr ""
+msgstr "Ausgabebedingung %d kann nicht zusammen mit »%s« angegeben werden"
-#: reg-stack.c:706
+#: reg-stack.c:698
msgid "output regs must be grouped at top of stack"
-msgstr ""
+msgstr "Ausgaberegister müssen oben auf dem Stack gruppiert werden"
-#: reg-stack.c:743
+#: reg-stack.c:735
msgid "implicitly popped regs must be grouped at top of stack"
-msgstr ""
+msgstr "implizit geholte (»pop«) Register müssen oben auf dem Stack gruppiert werden"
-#: reg-stack.c:762
+#: reg-stack.c:754
#, c-format
msgid "output operand %d must use `&' constraint"
-msgstr ""
+msgstr "Ausgabeoperand %d muss »&«-Bedingung benutzen"
-#: regclass.c:756
+#: regclass.c:743
#, c-format
msgid "can't use '%s' as a %s register"
-msgstr ""
+msgstr "»%s« kann nicht als ein %s-Register verwendet werden"
-#: regclass.c:771 config/ia64/ia64.c:4304 config/ia64/ia64.c:4311
+#: regclass.c:758 config/ia64/ia64.c:4640 config/ia64/ia64.c:4647
#, c-format
msgid "unknown register name: %s"
-msgstr ""
+msgstr "unbekannter Registername: %s"
-#: regclass.c:782
+#: regclass.c:768
msgid "global register variable follows a function definition"
-msgstr ""
+msgstr "globale Registervariable folgt einer Funktionsdefinition"
-#: regclass.c:786
+#: regclass.c:772
msgid "register used for two global register variables"
-msgstr ""
+msgstr "Register für zwei globale Registervariablen verwendet"
-#: regclass.c:791
+#: regclass.c:777
msgid "call-clobbered register used for global register variable"
-msgstr ""
+msgstr "für Ruf vorgesehenes Register wurde für globale Registervariable verwendet"
-#: regrename.c:1899
+#: regrename.c:1846
#, c-format
msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)"
-msgstr ""
+msgstr "validate_value_data: [%u] Falsches next_regno für leere Kette (%u)"
-#: regrename.c:1911
+#: regrename.c:1858
#, c-format
msgid "validate_value_data: Loop in regno chain (%u)"
-msgstr ""
+msgstr "validate_value_data: Zyklus in regno-Kette (%u)"
-#: regrename.c:1914
+#: regrename.c:1861
#, c-format
msgid "validate_value_data: [%u] Bad oldest_regno (%u)"
-msgstr ""
+msgstr "validate_value_data: [%u] Falsches oldest_regno (%u)"
-#: regrename.c:1926
+#: regrename.c:1873
#, c-format
msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
-msgstr ""
+msgstr "validate_value_data: [%u] Nicht leeres Register in Kette (%s %u %i)"
-#: reload.c:1229
+#: reload.c:1254
msgid "cannot reload integer constant operand in `asm'"
-msgstr ""
+msgstr "Ganzzahlkonstantenoperand kann in »asm« nicht neu geladen werden"
-#: reload.c:1251
+#: reload.c:1276
msgid "impossible register constraint in `asm'"
-msgstr ""
+msgstr "unmögliche Registerbedingung in »asm«"
-#: reload.c:3461
+#: reload.c:3489
msgid "`&' constraint used with no register class"
-msgstr ""
+msgstr "»&«-Bedingung ohne Registerklasse verwendet"
-#: reload.c:3629
+#: reload.c:3657
msgid "unable to generate reloads for:"
-msgstr ""
+msgstr "Neuladungen konnten nicht generiert werden für:"
-#: reload.c:3630 reload.c:3844
+#: reload.c:3658 reload.c:3872
msgid "inconsistent operand constraints in an `asm'"
-msgstr ""
+msgstr "inkonsistente Operandenbedingungen in einem »asm«"
-#: reload1.c:1250
+#: reload1.c:1212
msgid "frame size too large for reliable stack checking"
-msgstr ""
+msgstr "Rahmengröße zu groß für zuverlässige Kellerüberprüfung"
-#: reload1.c:1253
+#: reload1.c:1215
msgid "try reducing the number of local variables"
-msgstr ""
+msgstr "versuchen Sie, die Anzahl der lokalen Variablen zu verringern"
-#: reload1.c:1909
+#: reload1.c:1868
#, c-format
msgid "can't find a register in class `%s' while reloading `asm'"
-msgstr ""
+msgstr "in der Klasse »%s« konnte während des Neuladens von »asm« kein Register gefunden werden"
-#: reload1.c:1913
+#: reload1.c:1872
#, c-format
msgid "unable to find a register to spill in class `%s'"
-msgstr ""
+msgstr "in Klasse »%s« konnte kein Register für Überlauf gefunden werden"
-#: reload1.c:1915
+#: reload1.c:1874
msgid "this is the insn:"
-msgstr ""
+msgstr "dies ist das insn:"
-#: reload1.c:3938
+#: reload1.c:3871
msgid "`asm' operand requires impossible reload"
-msgstr ""
+msgstr "»asm«-Operand erfordert unmögliches Neuladen"
#. It's the compiler's fault.
-#: reload1.c:5052
+#: reload1.c:4963
msgid "could not find a spill register"
-msgstr ""
+msgstr "es konnte kein Ãœberlaufregister gefunden werden"
-#: reload1.c:5057
+#: reload1.c:4968
msgid "`asm' operand constraint incompatible with operand size"
-msgstr ""
+msgstr "»asm«-Operandenbedingung inkompatibel mit Operandengröße"
#. It's the compiler's fault.
-#: reload1.c:6679
+#: reload1.c:6590
msgid "VOIDmode on an output"
-msgstr ""
+msgstr "VOIDmode bei einer Ausgabe"
-#: reload1.c:6680
+#: reload1.c:6591
msgid "output operand is constant in `asm'"
-msgstr ""
+msgstr "Ausgabeoperand ist in »asm« konstant"
-#: rtl-error.c:140
+#: rtl-error.c:124
msgid "unrecognizable insn:"
-msgstr ""
+msgstr "unerkennbares insn:"
-#: rtl-error.c:142
+#: rtl-error.c:126
msgid "insn does not satisfy its constraints:"
-msgstr ""
+msgstr "insn erfüllt nicht seine Bedingungen:"
-#: rtl.c:535
+#: rtl.c:477
#, c-format
msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d"
-msgstr ""
+msgstr "RTL-Überprüfung: Zugriff von Elt %d von »%s« mit letztem Elt %d in %s, bei %s:%d"
-#: rtl.c:550
+#: rtl.c:487
#, c-format
msgid "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
-msgstr ""
+msgstr "RTL-Überprüfung: Elt-%d-Typ %c erwartet, haben Typ %c (rtx %s) in %s, bei %s:%d"
-#: rtl.c:566
+#: rtl.c:497
#, c-format
msgid "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %s:%d"
-msgstr ""
+msgstr "RTL-Überprüfung: Elt-%d-Typ %c oder %c erwartet, haben Typ %c (rtx %s) in %s, bei %s:%d"
-#: rtl.c:579
+#: rtl.c:506
#, c-format
msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d"
-msgstr ""
+msgstr "RTL-Überprüfung: Code »%s« erwartet, haben »%s« in %s, bei %s:%d"
-#: rtl.c:593
+#: rtl.c:516
#, c-format
msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d"
-msgstr ""
+msgstr "RTL-Überprüfung: Code »%s« oder »%s« erwartet, haben »%s« in %s, bei %s:%d"
-#: rtl.c:608
+#: rtl.c:527
#, c-format
msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
-msgstr ""
+msgstr "RTL-Überprüfung: Zugriff von Elt %d von Vektor mit letztem Elt %d in %s, bei %s:%d"
-#: rtl.c:623
+#: rtl.c:538
#, c-format
msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d"
-msgstr ""
+msgstr "RTL-Kennzeichenüberprüfung: %s mit unerwartetem RTX-Code »%s« in %s bei %s:%d verwendet"
-#: stmt.c:766
+#: stmt.c:750
#, c-format
msgid "jump to `%s' invalidly jumps into binding contour"
-msgstr ""
+msgstr "Sprung zu »%s« springt ungültig in bindenden Querschnitt"
-#: stmt.c:1002 stmt.c:3766
-#, c-format
-msgid "label `%s' used before containing binding contour"
-msgstr ""
+#: stmt.c:977 stmt.c:3793
+msgid "%Jlabel '%D' used before containing binding contour"
+msgstr "%JMarke »%D« verwendet vor enthaltendem bindenden Querschnitt"
-#: stmt.c:1190
+#: stmt.c:1156
msgid "output operand constraint lacks `='"
-msgstr ""
+msgstr "Bedingung des Ausgabeoperanden erfordert »=«"
-#: stmt.c:1205
+#: stmt.c:1171
#, c-format
msgid "output constraint `%c' for operand %d is not at the beginning"
-msgstr ""
+msgstr "Ausgabebedingung »%c« für Operand %d steht nicht am Anfang"
-#: stmt.c:1227
+#: stmt.c:1193
msgid "operand constraint contains incorrectly positioned '+' or '='"
-msgstr ""
+msgstr "Operandenbedingung enthält falsch positioniertes »+« oder »=«"
-#: stmt.c:1233 stmt.c:1337
+#: stmt.c:1199 stmt.c:1301
#, c-format
msgid "`%%' constraint used with last operand"
-msgstr ""
+msgstr "»%%«-Bedingung mit letztem Operanden verwendet"
-#: stmt.c:1252
+#: stmt.c:1218
msgid "matching constraint not valid in output operand"
-msgstr ""
+msgstr "dazu passende Bedingung in Ausgabeoperanden ungültig"
-#: stmt.c:1328
+#: stmt.c:1260
+msgid "read-write constraint does not allow a register"
+msgstr "Schreib- und Lesebeschränkungen erlauben kein Register"
+
+#: stmt.c:1292
#, c-format
msgid "input operand constraint contains `%c'"
-msgstr ""
+msgstr "Bedingung für Eingabeoperanden enthält »%c«"
-#: stmt.c:1368
+#: stmt.c:1334
msgid "matching constraint references invalid operand number"
-msgstr ""
+msgstr "dazu passende Bedingung referenziert ungültige Operandennummer"
-#: stmt.c:1400
+#: stmt.c:1372
#, c-format
msgid "invalid punctuation `%c' in constraint"
-msgstr ""
+msgstr "ungültiges Zeichen »%c« in Bedingung"
+
+#: stmt.c:1396
+msgid "matching constraint does not allow a register"
+msgstr "dazu passende Bedingung erlaubt kein Register"
-#: stmt.c:1450
+#: stmt.c:1424
#, c-format
msgid "asm-specifier for variable `%s' conflicts with asm clobber list"
-msgstr ""
+msgstr "asm-Spezifizierer für Variable »%s« steht in Konflikt mit asm-Konflikt-Liste"
-#: stmt.c:1540
+#: stmt.c:1514
#, c-format
msgid "unknown register name `%s' in `asm'"
-msgstr ""
+msgstr "unbekannter Registername »%s« in »asm«"
+
+#: stmt.c:1522
+#, c-format
+msgid "PIC register `%s' clobbered in `asm'"
+msgstr "PIC-Register »%s« wird in »asm« zerstört"
-#: stmt.c:1588
+#: stmt.c:1571
#, c-format
msgid "more than %d operands in `asm'"
-msgstr ""
+msgstr "mehr als %d Operanden in »asm«"
-#: stmt.c:1650
+#: stmt.c:1633
#, c-format
msgid "output number %d not directly addressable"
-msgstr ""
+msgstr "Ausgabezahl %d nicht direkt adressierbar"
-#: stmt.c:1728
+#: stmt.c:1711
#, c-format
msgid "asm operand %d probably doesn't match constraints"
-msgstr ""
+msgstr "asm-Operand %d passt wahrscheinlich nicht zu den Bedingungen"
-#: stmt.c:1738
+#: stmt.c:1721
#, c-format
msgid "use of memory input without lvalue in asm operand %d is deprecated"
-msgstr ""
+msgstr "die Verwendung einer Speichereingabe ohne L-Wert in asm-Operand %d ist veraltet"
-#: stmt.c:1889
+#: stmt.c:1875
msgid "asm clobber conflict with output operand"
-msgstr ""
+msgstr "asm-Konflikt mit Ausgabeoperand"
-#: stmt.c:1894
+#: stmt.c:1880
msgid "asm clobber conflict with input operand"
-msgstr ""
+msgstr "asm-Konflikt mit Eingabeoperand"
-#: stmt.c:1929
+#: stmt.c:1914
msgid "too many alternatives in `asm'"
-msgstr ""
+msgstr "zu viele Alternativen in »asm«"
-#: stmt.c:1941
+#: stmt.c:1926
msgid "operand constraints for `asm' differ in number of alternatives"
-msgstr ""
+msgstr "Operandenbedingungen für »asm« unterscheiden sich in der Anzahl der Alternativen"
-#: stmt.c:1994
+#: stmt.c:1978
#, c-format
msgid "duplicate asm operand name '%s'"
-msgstr ""
+msgstr "doppelter asm-Operandenname »%s«"
-#: stmt.c:2081
+#: stmt.c:2076
msgid "missing close brace for named operand"
-msgstr ""
+msgstr "schließende geschweifte Klammer für benannten Operanden fehlt"
-#: stmt.c:2109
+#: stmt.c:2104
#, c-format
msgid "undefined named operand '%s'"
-msgstr ""
+msgstr "benannter Operand »%s« ist nicht definiert"
-#: stmt.c:3703
-#, c-format
-msgid "unused variable `%s'"
-msgstr ""
+#: stmt.c:2161
+msgid "%Hstatement with no effect"
+msgstr "%HAnweisung ohne Effekt"
+
+#: stmt.c:2317
+msgid "%Hvalue computed is not used"
+msgstr "%Hberechneter Wert ist unbenutzt"
+
+#: stmt.c:3733
+msgid "%Junused variable '%D'"
+msgstr "%JVariable »%D« wird nicht verwendet"
+
+#: stmt.c:4508
+msgid "%Hunreachable code at beginning of %s"
+msgstr "%Hunerreichbarer Code am Anfang von %s"
-#: stmt.c:5189
+#: stmt.c:5136
#, c-format
msgid "enumeration value `%s' not handled in switch"
-msgstr ""
+msgstr "Aufzählungswert »%s« wird nicht von switch behandelt"
-#: stmt.c:5214 stmt.c:5234
+#: stmt.c:5161 stmt.c:5181
#, c-format
msgid "case value `%ld' not in enumerated type"
-msgstr ""
+msgstr "case-Wert »%ld« nicht in Aufzählungstyp"
-#: stmt.c:5217 stmt.c:5237
+#: stmt.c:5164 stmt.c:5184
#, c-format
msgid "case value `%ld' not in enumerated type `%s'"
-msgstr ""
+msgstr "case-Wert »%ld« nicht in Aufzählungstyp »%s«"
-#: stmt.c:5310
+#: stmt.c:5401
msgid "switch missing default case"
-msgstr ""
+msgstr "die Standardfallbehandlung in switch fehlt"
-#: stor-layout.c:178
+#: stor-layout.c:183
msgid "type size can't be explicitly evaluated"
-msgstr ""
+msgstr "die Typgröße kann nicht explizit ausgewertet werden"
-#: stor-layout.c:180
+#: stor-layout.c:185
msgid "variable-size type declared outside of any function"
-msgstr ""
+msgstr "Typ mit variabler Größe wurde außerhalb einer Funktion definiert"
-#: stor-layout.c:487
-#, c-format
-msgid "size of `%s' is %d bytes"
-msgstr ""
+#: stor-layout.c:515
+msgid "%Jsize of '%D' is %d bytes"
+msgstr "%JGröße von »%Ds« ist %d Bytes"
-#: stor-layout.c:489
-#, c-format
-msgid "size of `%s' is larger than %d bytes"
-msgstr ""
+#: stor-layout.c:517
+msgid "%Jsize of '%D' is larger than %d bytes"
+msgstr "%JGröße von »%D« übertrifft %d Bytes"
+
+#: stor-layout.c:883
+msgid "%Jpacked attribute causes inefficient alignment for '%D'"
+msgstr "%Jgepacktes Attribut verursacht ineffiziente Ausrichtung für »%D«"
-#: stor-layout.c:909 stor-layout.c:1325
+#: stor-layout.c:886
+msgid "%Jpacked attribute is unnecessary for '%D'"
+msgstr "%Jgepacktes Attribut ist unnötig für »%D«"
+
+#: stor-layout.c:902
+msgid "%Jpadding struct to align '%D'"
+msgstr "%Jstruct wird aufgefüllt, um »%D« auszurichten"
+
+#: stor-layout.c:1245
+msgid "padding struct size to alignment boundary"
+msgstr "struct wird bis zur Ausrichtungsgrenze aufgefüllt"
+
+#: stor-layout.c:1275
#, c-format
msgid "packed attribute causes inefficient alignment for `%s'"
-msgstr ""
+msgstr "gepacktes Attribut verursacht ineffiziente Ausrichtung für »%s«"
-#: stor-layout.c:911 stor-layout.c:1327
+#: stor-layout.c:1277
#, c-format
msgid "packed attribute is unnecessary for `%s'"
-msgstr ""
-
-#: stor-layout.c:926
-#, c-format
-msgid "padding struct to align `%s'"
-msgstr ""
+msgstr "gepacktes Attribut ist unnötig für »%s«"
-#: stor-layout.c:1289
-msgid "padding struct size to alignment boundary"
-msgstr ""
-
-#: stor-layout.c:1332
+#: stor-layout.c:1282
msgid "packed attribute causes inefficient alignment"
-msgstr ""
+msgstr "gepacktes Attribut führt zu ineffizienter Ausrichtung"
-#: stor-layout.c:1334
+#: stor-layout.c:1284
msgid "packed attribute is unnecessary"
-msgstr ""
+msgstr "gepacktes Attribut ist unnötig"
+
+#: targhooks.c:154
+msgid "__builtin_saveregs not supported by this target"
+msgstr "__builtin_saveregs wird von diesem Ziel nicht unterstützt"
-#: timevar.c:322
+#: timevar.c:314
#, c-format
msgid "cannot timevar_pop '%s' when top of timevars stack is '%s'"
-msgstr ""
+msgstr "timevar_pop '%s' kann nicht ausgeführt werden, wenn am Anfang des timevars-Stacks '%s' steht"
-#: timevar.c:453
+#: timevar.c:440
msgid ""
"\n"
"Execution times (seconds)\n"
msgstr ""
+"\n"
+"Ausführungszeiten (Sekunden)\n"
#. Print total time.
-#: timevar.c:503
+#: timevar.c:490
msgid " TOTAL :"
-msgstr ""
+msgstr " GESAMT :"
-#: timevar.c:539
+#: timevar.c:513
#, c-format
msgid "time in %s: %ld.%06ld (%ld%%)\n"
-msgstr ""
+msgstr "Zeit in %s: %ld.%06ld (%ld%%)\n"
-#: tlink.c:399
+#: tlink.c:377
#, c-format
msgid "collect: reading %s\n"
-msgstr ""
+msgstr "sammeln: %s lesen\n"
-#: tlink.c:502
+#: tlink.c:478
#, c-format
msgid "collect: recompiling %s\n"
-msgstr ""
+msgstr "sammeln: %s neu kompilieren\n"
-#: tlink.c:674
+#: tlink.c:654
#, c-format
msgid "collect: tweaking %s in %s\n"
-msgstr ""
+msgstr "sammeln: %s wird in %s eingestellt\n"
-#: tlink.c:721
+#: tlink.c:700
+#, c-format
msgid "collect: relinking\n"
-msgstr ""
+msgstr "sammeln: neu binden\n"
-#: tlink.c:730
+#: tlink.c:709
#, c-format
msgid "ld returned %d exit status"
-msgstr ""
-
-#: toplev.c:920
-msgid "Generate debugging info in default format"
-msgstr ""
-
-#: toplev.c:921
-msgid "Generate debugging info in default extended format"
-msgstr ""
-
-#: toplev.c:923
-msgid "Generate STABS format debug info"
-msgstr ""
-
-#: toplev.c:924
-msgid "Generate extended STABS format debug info"
-msgstr ""
-
-#: toplev.c:927
-msgid "Generate DWARF-1 format debug info"
-msgstr ""
-
-#: toplev.c:929
-msgid "Generate extended DWARF-1 format debug info"
-msgstr ""
-
-#: toplev.c:932
-msgid "Generate DWARF-2 debug info"
-msgstr ""
-
-#: toplev.c:935
-msgid "Generate XCOFF format debug info"
-msgstr ""
-
-#: toplev.c:936
-msgid "Generate extended XCOFF format debug info"
-msgstr ""
-
-#: toplev.c:939
-msgid "Generate COFF format debug info"
-msgstr ""
-
-#: toplev.c:942
-msgid "Generate VMS format debug info"
-msgstr ""
-
-#: toplev.c:981
-msgid "Perform DWARF2 duplicate elimination"
-msgstr ""
-
-#: toplev.c:983
-msgid "Do not store floats in registers"
-msgstr ""
-
-#: toplev.c:985
-msgid "Consider all mem refs through pointers as volatile"
-msgstr ""
-
-#: toplev.c:987
-msgid "Consider all mem refs to global data to be volatile"
-msgstr ""
-
-#: toplev.c:989
-msgid "Consider all mem refs to static data to be volatile"
-msgstr ""
-
-#: toplev.c:991
-msgid "Defer popping functions args from stack until later"
-msgstr ""
-
-#: toplev.c:993
-msgid "When possible do not generate stack frames"
-msgstr ""
-
-#: toplev.c:995
-msgid "Optimize sibling and tail recursive calls"
-msgstr ""
-
-#: toplev.c:997
-msgid "Perform superblock formation via tail duplication"
-msgstr ""
-
-#: toplev.c:999
-msgid "When running CSE, follow jumps to their targets"
-msgstr ""
-
-#: toplev.c:1001
-msgid "When running CSE, follow conditional jumps"
-msgstr ""
-
-#: toplev.c:1003
-msgid "Perform a number of minor, expensive optimizations"
-msgstr ""
-
-#: toplev.c:1005
-msgid "Perform jump threading optimizations"
-msgstr ""
-
-#: toplev.c:1007
-msgid "Perform strength reduction optimizations"
-msgstr ""
-
-#: toplev.c:1009
-msgid "Perform loop unrolling when iteration count is known"
-msgstr ""
-
-#: toplev.c:1011
-msgid "Perform loop unrolling for all loops"
-msgstr ""
-
-#: toplev.c:1013
-msgid "Generate prefetch instructions, if available, for arrays in loops"
-msgstr ""
-
-#: toplev.c:1015
-msgid "Force all loop invariant computations out of loops"
-msgstr ""
-
-#: toplev.c:1017
-msgid "Strength reduce all loop general induction variables"
-msgstr ""
-
-#: toplev.c:1019
-msgid "Store strings in writable data section"
-msgstr ""
-
-#: toplev.c:1021
-msgid "Enable machine specific peephole optimizations"
-msgstr ""
-
-#: toplev.c:1023
-msgid "Copy memory operands into registers before using"
-msgstr ""
-
-#: toplev.c:1025
-msgid "Copy memory address constants into regs before using"
-msgstr ""
-
-#: toplev.c:1027
-msgid "Allow function addresses to be held in registers"
-msgstr ""
-
-#: toplev.c:1029
-msgid "Integrate simple functions into their callers"
-msgstr ""
-
-#: toplev.c:1031
-msgid "Generate code for funcs even if they are fully inlined"
-msgstr ""
-
-#: toplev.c:1033
-msgid "Pay attention to the 'inline' keyword"
-msgstr ""
-
-#: toplev.c:1035
-msgid "Emit static const variables even if they are not used"
-msgstr ""
-
-#: toplev.c:1037
-msgid "Check for syntax errors, then stop"
-msgstr ""
-
-#: toplev.c:1039
-msgid "Mark data as shared rather than private"
-msgstr ""
-
-#: toplev.c:1041
-msgid "Enable saving registers around function calls"
-msgstr ""
-
-#: toplev.c:1043
-msgid "Return 'short' aggregates in memory, not registers"
-msgstr ""
-
-#: toplev.c:1045
-msgid "Return 'short' aggregates in registers"
-msgstr ""
-
-#: toplev.c:1047
-msgid "Attempt to fill delay slots of branch instructions"
-msgstr ""
-
-#: toplev.c:1049
-msgid "Perform the global common subexpression elimination"
-msgstr ""
-
-#: toplev.c:1051
-msgid "Perform enhanced load motion during global subexpression elimination"
-msgstr ""
-
-#: toplev.c:1053
-msgid "Perform store motion after global subexpression elimination"
-msgstr ""
-
-#: toplev.c:1055
-msgid "Perform the loop optimizations"
-msgstr ""
-
-#: toplev.c:1057
-msgid "Perform cross-jumping optimization"
-msgstr ""
-
-#: toplev.c:1059
-msgid "Perform conversion of conditional jumps to branchless equivalents"
-msgstr ""
-
-#: toplev.c:1061
-msgid "Perform conversion of conditional jumps to conditional execution"
-msgstr ""
-
-#: toplev.c:1063
-msgid "Run CSE pass after loop optimizations"
-msgstr ""
-
-#: toplev.c:1065
-msgid "Run the loop optimizer twice"
-msgstr ""
-
-#: toplev.c:1067
-msgid "Delete useless null pointer checks"
-msgstr ""
-
-#: toplev.c:1069
-msgid "Reschedule instructions before register allocation"
-msgstr ""
-
-#: toplev.c:1071
-msgid "Reschedule instructions after register allocation"
-msgstr ""
-
-#: toplev.c:1073
-msgid "Enable scheduling across basic blocks"
-msgstr ""
-
-#: toplev.c:1075
-msgid "Allow speculative motion of non-loads"
-msgstr ""
-
-#: toplev.c:1077
-msgid "Allow speculative motion of some loads"
-msgstr ""
-
-#: toplev.c:1079
-msgid "Allow speculative motion of more loads"
-msgstr ""
-
-#: toplev.c:1081
-msgid "Replace add,compare,branch with branch on count reg"
-msgstr ""
-
-#: toplev.c:1083
-msgid "Generate position independent code, if possible"
-msgstr ""
-
-#: toplev.c:1086
-msgid "Enable exception handling"
-msgstr ""
-
-#: toplev.c:1088
-msgid "Just generate unwind tables for exception handling"
-msgstr ""
-
-#: toplev.c:1090
-msgid "Generate unwind tables exact at each instruction boundary"
-msgstr ""
-
-#: toplev.c:1092
-msgid "Support synchronous non-call exceptions"
-msgstr ""
-
-#: toplev.c:1094
-msgid "Insert arc based program profiling code"
-msgstr ""
-
-#: toplev.c:1096
-msgid "Create data files needed by gcov"
-msgstr ""
-
-#: toplev.c:1098
-msgid "Use profiling information for branch probabilities"
-msgstr ""
-
-#: toplev.c:1100
-msgid "Enable basic program profiling code"
-msgstr ""
-
-#: toplev.c:1102
-msgid "Reorder basic blocks to improve code placement"
-msgstr ""
-
-#: toplev.c:1104
-msgid "Reorder functions to improve code placement"
-msgstr ""
-
-#: toplev.c:1106
-msgid "Do the register renaming optimization pass"
-msgstr ""
-
-#: toplev.c:1108
-msgid "Do the register copy-propagation optimization pass"
-msgstr ""
-
-#: toplev.c:1110
-msgid "Do not put uninitialized globals in the common section"
-msgstr ""
-
-#: toplev.c:1112
-msgid "Do not generate .size directives"
-msgstr ""
-
-#: toplev.c:1114
-msgid "place each function into its own section"
-msgstr ""
-
-#: toplev.c:1116
-msgid "place data items into their own section"
-msgstr ""
-
-#: toplev.c:1118
-msgid "Add extra commentary to assembler output"
-msgstr ""
-
-#: toplev.c:1120
-msgid "Output GNU ld formatted global initializers"
-msgstr ""
-
-#: toplev.c:1122
-msgid "Enables a register move optimization"
-msgstr ""
-
-#: toplev.c:1124
-msgid "Do the full regmove optimization pass"
-msgstr ""
-
-#: toplev.c:1126
-msgid "Pack structure members together without holes"
-msgstr ""
-
-#: toplev.c:1128
-msgid "Insert stack checking code into the program"
-msgstr ""
-
-#: toplev.c:1130
-msgid "Specify that arguments may alias each other & globals"
-msgstr ""
-
-#: toplev.c:1132
-msgid "Assume arguments may alias globals but not each other"
-msgstr ""
-
-#: toplev.c:1134
-msgid "Assume arguments do not alias each other or globals"
-msgstr ""
-
-#: toplev.c:1136
-msgid "Assume strict aliasing rules apply"
-msgstr ""
-
-#: toplev.c:1138
-msgid "Align the start of loops"
-msgstr ""
-
-#: toplev.c:1140
-msgid "Align labels which are only reached by jumping"
-msgstr ""
-
-#: toplev.c:1142
-msgid "Align all labels"
-msgstr ""
-
-#: toplev.c:1144
-msgid "Align the start of functions"
-msgstr ""
-
-#: toplev.c:1146
-msgid "Attempt to merge identical constants across compilation units"
-msgstr ""
-
-#: toplev.c:1148
-msgid "Attempt to merge identical constants and constant variables"
-msgstr ""
-
-#: toplev.c:1150
-msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
-msgstr ""
-
-#: toplev.c:1152
-msgid "Instrument function entry/exit with profiling calls"
-msgstr ""
-
-#: toplev.c:1154
-msgid "Put zero initialized data in the bss section"
-msgstr ""
-
-#: toplev.c:1156
-msgid "Enable SSA optimizations"
-msgstr ""
-
-#: toplev.c:1158
-msgid "Enable SSA conditional constant propagation"
-msgstr ""
-
-#: toplev.c:1160
-msgid "Enable aggressive SSA dead code elimination"
-msgstr ""
-
-#: toplev.c:1162
-msgid "External symbols have a leading underscore"
-msgstr ""
-
-#: toplev.c:1164
-msgid "Process #ident directives"
-msgstr ""
-
-#: toplev.c:1166
-msgid "Enables an rtl peephole pass run before sched2"
-msgstr ""
-
-#: toplev.c:1168
-msgid "Assume no NaNs or +-Infs are generated"
-msgstr ""
-
-#: toplev.c:1170
-msgid "Enables guessing of branch probabilities"
-msgstr ""
-
-#: toplev.c:1172
-msgid "Set errno after built-in math functions"
-msgstr ""
-
-#: toplev.c:1174
-msgid "Floating-point operations can trap"
-msgstr ""
-
-#: toplev.c:1176
-msgid "Allow math optimizations that may violate IEEE or ANSI standards"
-msgstr ""
-
-#: toplev.c:1178
-msgid "Disable optimizations observable by IEEE signaling NaNs"
-msgstr ""
-
-#: toplev.c:1180
-msgid "Generate code to check bounds before indexing arrays"
-msgstr ""
-
-#: toplev.c:1182
-msgid "Convert floating point constant to single precision constant"
-msgstr ""
-
-#: toplev.c:1184
-msgid "Report time taken by each compiler pass at end of run"
-msgstr ""
-
-#: toplev.c:1186
-msgid "Report on permanent memory allocation at end of run"
-msgstr ""
-
-#: toplev.c:1188
-msgid "Trap for signed overflow in addition / subtraction / multiplication"
-msgstr ""
-
-#: toplev.c:1190
-msgid "Use graph coloring register allocation."
-msgstr ""
-
-#: toplev.c:1207
-msgid "Compile just for ISO C90"
-msgstr ""
-
-#: toplev.c:1209
-msgid "Determine language standard"
-msgstr ""
-
-#: toplev.c:1213
-msgid "Make bit-fields by unsigned by default"
-msgstr ""
-
-#: toplev.c:1217
-msgid "Make 'char' be signed by default"
-msgstr ""
-
-#: toplev.c:1219
-msgid "Make 'char' be unsigned by default"
-msgstr ""
-
-#: toplev.c:1225
-msgid "Do not recognize the 'asm' keyword"
-msgstr ""
-
-#: toplev.c:1228
-msgid "Do not recognize any built in functions"
-msgstr ""
-
-#: toplev.c:1230
-msgid "Assume normal C execution environment"
-msgstr ""
-
-#: toplev.c:1233
-msgid "Assume that standard libraries & main might not exist"
-msgstr ""
-
-#: toplev.c:1236
-msgid "Allow different types as args of ? operator"
-msgstr ""
-
-#: toplev.c:1239
-msgid "Allow the use of $ inside identifiers"
-msgstr ""
-
-#: toplev.c:1244
-msgid "Use the same size for double as for float"
-msgstr ""
-
-#: toplev.c:1247
-msgid "Use the smallest fitting integer to hold enums"
-msgstr ""
-
-#: toplev.c:1250
-msgid "Override the underlying type for wchar_t to `unsigned short'"
-msgstr ""
-
-#: toplev.c:1254
-msgid "Enable most warning messages"
-msgstr ""
-
-#: toplev.c:1256
-msgid "Warn about casting functions to incompatible types"
-msgstr ""
-
-#: toplev.c:1259
-msgid "Warn about functions which might be candidates for format attributes"
-msgstr ""
-
-#: toplev.c:1262
-msgid "Warn about casts which discard qualifiers"
-msgstr ""
-
-#: toplev.c:1265
-msgid "Warn about subscripts whose type is 'char'"
-msgstr ""
-
-#: toplev.c:1268 toplev.c:1271
-msgid "Warn if nested comments are detected"
-msgstr ""
-
-#: toplev.c:1274
-msgid "Warn about possibly confusing type conversions"
-msgstr ""
-
-#: toplev.c:1278
-msgid "Do not warn about compile-time integer division by zero"
-msgstr ""
-
-#: toplev.c:1280
-msgid "Warn about testing equality of floating point numbers"
-msgstr ""
-
-#: toplev.c:1283
-msgid "Warn about printf/scanf/strftime/strfmon format anomalies"
-msgstr ""
-
-#: toplev.c:1287
-msgid "Don't warn about too many arguments to format functions"
-msgstr ""
-
-#: toplev.c:1289
-msgid "Warn about non-string-literal format strings"
-msgstr ""
-
-#: toplev.c:1292
-msgid "Warn about possible security problems with format functions"
-msgstr ""
-
-#: toplev.c:1296
-msgid "Don't warn about strftime formats yielding 2 digit years"
-msgstr ""
-
-#: toplev.c:1298
-msgid "Warn about implicit function declarations"
-msgstr ""
-
-#: toplev.c:1302
-msgid "Warn when a declaration does not specify a type"
-msgstr ""
-
-#: toplev.c:1307
-msgid "Warn about the use of the #import directive"
-msgstr ""
-
-#: toplev.c:1311
-msgid "Do not warn about using 'long long' when -pedantic"
-msgstr ""
-
-#: toplev.c:1313
-msgid "Warn about suspicious declarations of main"
-msgstr ""
-
-#: toplev.c:1316
-msgid "Warn about possibly missing braces around initializers"
-msgstr ""
-
-#: toplev.c:1319
-msgid "Warn about global funcs without previous declarations"
-msgstr ""
-
-#: toplev.c:1322
-msgid "Warn about global funcs without prototypes"
-msgstr ""
-
-#: toplev.c:1325
-msgid "Warn about use of multicharacter literals"
-msgstr ""
-
-#: toplev.c:1328
-msgid "Warn about externs not at file scope level"
-msgstr ""
-
-#: toplev.c:1331
-msgid "Warn about possible missing parentheses"
-msgstr ""
-
-#: toplev.c:1334
-msgid "Warn about function pointer arithmetic"
-msgstr ""
-
-#: toplev.c:1337
-msgid "Warn about multiple declarations of the same object"
-msgstr ""
-
-#: toplev.c:1340
-msgid "Warn whenever a function's return-type defaults to int"
-msgstr ""
-
-#: toplev.c:1343
-msgid "Warn about possible violations of sequence point rules"
-msgstr ""
-
-#: toplev.c:1346
-msgid "Warn about signed/unsigned comparisons"
-msgstr ""
-
-#: toplev.c:1349
-msgid "Warn about non-prototyped function decls"
-msgstr ""
-
-#: toplev.c:1352
-msgid "Warn about constructs whose meanings change in ISO C"
-msgstr ""
-
-#: toplev.c:1355
-msgid "Warn when trigraphs are encountered"
-msgstr ""
-
-#: toplev.c:1360
-msgid "Warn about unrecognized pragmas"
-msgstr ""
-
-#: toplev.c:1363
-msgid "Mark strings as 'const char *'"
-msgstr ""
-
-#: toplev.c:1508
-msgid "Warn when a function is unused"
-msgstr ""
-
-#: toplev.c:1510
-msgid "Warn when a label is unused"
-msgstr ""
-
-#: toplev.c:1512
-msgid "Warn when a function parameter is unused"
-msgstr ""
-
-#: toplev.c:1514
-msgid "Warn when a variable is unused"
-msgstr ""
-
-#: toplev.c:1516
-msgid "Warn when an expression value is unused"
-msgstr ""
-
-#: toplev.c:1518
-msgid "Do not suppress warnings from system headers"
-msgstr ""
-
-#: toplev.c:1520
-msgid "Treat all warnings as errors"
-msgstr ""
-
-#: toplev.c:1522
-msgid "Warn when one local variable shadows another"
-msgstr ""
-
-#: toplev.c:1524
-msgid "Warn about enumerated switches, with no default, missing a case"
-msgstr ""
-
-#: toplev.c:1526
-msgid "Warn about enumerated switches missing a default case"
-msgstr ""
-
-#: toplev.c:1528
-msgid "Warn about all enumerated switches missing a specific case"
-msgstr ""
-
-#: toplev.c:1530
-msgid "Warn about returning structures, unions or arrays"
-msgstr ""
-
-#: toplev.c:1532
-msgid "Warn about pointer casts which increase alignment"
-msgstr ""
-
-#: toplev.c:1534
-msgid "Warn about code that will never be executed"
-msgstr ""
-
-#: toplev.c:1536
-msgid "Warn about uninitialized automatic variables"
-msgstr ""
-
-#: toplev.c:1538
-msgid "Warn when an inlined function cannot be inlined"
-msgstr ""
-
-#: toplev.c:1540
-msgid "Warn when the packed attribute has no effect on struct layout"
-msgstr ""
-
-#: toplev.c:1542
-msgid "Warn when padding is required to align struct members"
-msgstr ""
-
-#: toplev.c:1544
-msgid "Warn when an optimization pass is disabled"
-msgstr ""
-
-#: toplev.c:1546
-msgid "Warn about uses of __attribute__((deprecated)) declarations"
-msgstr ""
-
-#: toplev.c:1548
-msgid "Warn about functions which might be candidates for attribute noreturn"
-msgstr ""
-
-#: toplev.c:1550
-msgid "Warn about code which might break the strict aliasing rules"
-msgstr ""
+msgstr "ld gab %d als Ende-Status zurück"
-#: toplev.c:1627 toplev.c:4548 config/rs6000/rs6000.c:680
+#: toplev.c:1226
#, c-format
-msgid "invalid option `%s'"
-msgstr "ungültige Option »%s«"
+msgid "%s "
+msgstr "%s "
-#: toplev.c:2031
+#: toplev.c:1228
#, c-format
-msgid "`%s' used but never defined"
-msgstr "»%s« verwendet, aber nirgendwo definiert"
+msgid " %s"
+msgstr " %s"
-#: toplev.c:2034
+#: toplev.c:1293
#, c-format
-msgid "`%s' declared `static' but never defined"
-msgstr "»%s« als »static« deklariert, aber nirgendwo definiert"
+msgid "invalid option argument `%s'"
+msgstr "ungültiges Optionsargument »%s«"
-#: toplev.c:2057
+#: toplev.c:1356
#, c-format
-msgid "`%s' defined but not used"
-msgstr "»%s« definiert, aber nicht verwendet"
+msgid "getting core file size maximum limit: %m"
+msgstr "Kern-Dateigrößenlimit wird geholt: %m"
-#: toplev.c:2280
+#: toplev.c:1359
#, c-format
-msgid "invalid register name `%s' for register variable"
-msgstr ""
-
-#: toplev.c:3697
-msgid " -ffixed-<register> Mark <register> as being unavailable to the compiler\n"
-msgstr ""
-
-#: toplev.c:3698
-msgid " -fcall-used-<register> Mark <register> as being corrupted by function calls\n"
-msgstr ""
-
-#: toplev.c:3699
-msgid " -fcall-saved-<register> Mark <register> as being preserved across functions\n"
-msgstr ""
-
-#: toplev.c:3700
-msgid " -finline-limit=<number> Limits the size of inlined functions to <number>\n"
-msgstr ""
-
-#: toplev.c:3701
-msgid " -fmessage-length=<number> Limits diagnostics messages lengths to <number> characters per line. 0 suppresses line-wrapping\n"
-msgstr ""
-
-#: toplev.c:3702
-msgid " -fdiagnostics-show-location=[once | every-line] Indicates how often source location information should be emitted, as prefix, at the beginning of diagnostics when line-wrapping\n"
-msgstr ""
-
-#: toplev.c:3703
-msgid " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indicates the default thread-local storage code generation model\n"
-msgstr ""
-
-#: toplev.c:3704
-msgid " -fstack-limit-register=<register> Trap if the stack goes past <register>\n"
-msgstr ""
-
-#: toplev.c:3705
-msgid " -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>\n"
-msgstr ""
-
-#: toplev.c:3706
-msgid " -frandom-seed=<string> Make compile reproducible using <string>\n"
-msgstr ""
-
-#: toplev.c:3718
-msgid " -O[number] Set optimization level to [number]\n"
-msgstr ""
-
-#: toplev.c:3719
-msgid " -Os Optimize for space rather than speed\n"
-msgstr ""
-
-#: toplev.c:3731
-msgid " -pedantic Issue warnings needed by strict compliance to ISO C\n"
-msgstr ""
-
-#: toplev.c:3732
-msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
-msgstr ""
-
-#: toplev.c:3733
-msgid " -w Suppress warnings\n"
-msgstr ""
-
-#: toplev.c:3734
-msgid " -W Enable extra warnings\n"
-msgstr ""
-
-#: toplev.c:3745
-msgid " -Wunused Enable unused warnings\n"
-msgstr ""
-
-#: toplev.c:3746
-msgid " -Wlarger-than-<number> Warn if an object is larger than <number> bytes\n"
-msgstr ""
-
-#: toplev.c:3747
-msgid " -p Enable function profiling\n"
-msgstr ""
-
-#: toplev.c:3748
-msgid " -o <file> Place output into <file> \n"
-msgstr ""
+msgid "setting core file size limit to maximum: %m"
+msgstr "Kern-Dateigrößenlimit wird gesetzt: %m"
-#: toplev.c:3749
-msgid ""
-" -G <number> Put global and static data smaller than <number>\n"
-" bytes into a special section (on some targets)\n"
-msgstr ""
-
-#: toplev.c:3760
-msgid " -aux-info <file> Emit declaration info into <file>\n"
-msgstr ""
+#: toplev.c:1678
+msgid "%J'%F' used but never defined"
+msgstr "%J»%F« verwendet, aber nirgendwo definiert"
-#: toplev.c:3761
-msgid " -quiet Do not display functions compiled or elapsed time\n"
-msgstr ""
+#: toplev.c:1680
+msgid "%J'%F' declared `static' but never defined"
+msgstr "%J»%F« als »static« deklariert, aber nirgendwo definiert"
-#: toplev.c:3762
-msgid " -version Display the compiler's version\n"
-msgstr ""
+#: toplev.c:1705
+msgid "%J'%D' defined but not used"
+msgstr "%J»%D« definiert, aber nicht verwendet"
-#: toplev.c:3763
-msgid " -d[letters] Enable dumps from specific passes of the compiler\n"
-msgstr ""
-
-#: toplev.c:3764
-msgid " -dumpbase <file> Base name to be used for dumps from specific passes\n"
-msgstr ""
+#: toplev.c:1726 toplev.c:1743
+#, c-format
+msgid "`%s' is deprecated (declared at %s:%d)"
+msgstr "»%s« ist veraltet (deklariert bei %s:%d)"
-#: toplev.c:3766
-msgid " -fsched-verbose=<number> Set the verbosity level of the scheduler\n"
-msgstr ""
+#: toplev.c:1746
+#, c-format
+msgid "`%s' is deprecated"
+msgstr "»%s« ist veraltet"
-#: toplev.c:3768
-msgid " --help Display this information\n"
-msgstr ""
+#: toplev.c:1749
+#, c-format
+msgid "type is deprecated (declared at %s:%d)"
+msgstr "Typ ist veraltet (in %s:%d deklariert)"
-#: toplev.c:3783
-msgid ""
-"\n"
-"Language specific options:\n"
-msgstr ""
+#: toplev.c:1752
+msgid "type is deprecated"
+msgstr "Typ ist veraltet"
-#: toplev.c:3795
+#: toplev.c:1956
#, c-format
-msgid " %-23.23s [undocumented]\n"
-msgstr ""
+msgid "invalid register name `%s' for register variable"
+msgstr "ungültiger Registername »%s« für Registervariable"
-#: toplev.c:3803 toplev.c:3817
-#, c-format
-msgid ""
-"\n"
-"There are undocumented %s specific options as well.\n"
-msgstr ""
+#: toplev.c:3522
+msgid "branch target register load optimization is not intended to be run twice"
+msgstr "Ladeoptimierung für Zweig-Zielregister ist nicht dafür vorgesehen, mehrfach zu laufen"
-#: toplev.c:3807
+#: toplev.c:3689
#, c-format
msgid ""
"\n"
-" Options for %s:\n"
-msgstr ""
-
-#: toplev.c:3844
-msgid ""
-"\n"
"Target specific options:\n"
msgstr ""
+"\n"
+"Zielspezifische Optionen:\n"
-#: toplev.c:3858 toplev.c:3877
+#: toplev.c:3703 toplev.c:3722
#, c-format
-msgid " -m%-23.23s [undocumented]\n"
-msgstr ""
+msgid " -m%-23s [undocumented]\n"
+msgstr " -m%-23s [undokumentiert]\n"
-#: toplev.c:3886
+#: toplev.c:3731
+#, c-format
msgid ""
"\n"
"There are undocumented target specific options as well.\n"
msgstr ""
+"\n"
+"Es gibt auch undokumentierte zielspezifische Optionen.\n"
-#: toplev.c:3888
+#: toplev.c:3733
+#, c-format
msgid " They exist, but they are not documented.\n"
-msgstr ""
+msgstr " Es gibt sie, aber sie sind nicht dokumentiert.\n"
-#: toplev.c:3941
+#: toplev.c:3788
#, c-format
msgid "unrecognized gcc debugging option: %c"
-msgstr ""
-
-#: toplev.c:4007
-#, c-format
-msgid "`%s': unknown tls-model option"
-msgstr ""
-
-#: toplev.c:4034
-#, c-format
-msgid "unrecognized register name `%s'"
-msgstr ""
-
-#: toplev.c:4059 toplev.c:5012
-#, c-format
-msgid "unrecognized option `%s'"
-msgstr ""
-
-#: toplev.c:4107
-msgid "-Wid-clash-LEN is no longer supported"
-msgstr ""
-
-#: toplev.c:4184
-#, c-format
-msgid "use -gdwarf -g%d for DWARF v1, level %d"
-msgstr ""
-
-#: toplev.c:4187
-msgid "use -gdwarf-2 for DWARF v2"
-msgstr ""
-
-#: toplev.c:4192
-#, c-format
-msgid "ignoring option `%s' due to invalid debug level specification"
-msgstr ""
-
-#: toplev.c:4215 toplev.c:5010
-#, c-format
-msgid "`%s': unknown or unsupported -g option"
-msgstr ""
-
-#: toplev.c:4222
-#, c-format
-msgid "`%s' ignored, conflicts with `-g%s'"
-msgstr ""
-
-#: toplev.c:4304
-msgid "-param option missing argument"
-msgstr ""
-
-#: toplev.c:4313
-#, c-format
-msgid "invalid --param option: %s"
-msgstr ""
+msgstr "gcc-Debuggingoption nicht erkannt: %c"
-#: toplev.c:4325
+#: toplev.c:3850 config/rs6000/rs6000.c:909
#, c-format
-msgid "invalid parameter value `%s'"
-msgstr ""
+msgid "invalid option `%s'"
+msgstr "ungültige Option »%s«"
-#: toplev.c:4565
+#: toplev.c:3865
#, c-format
msgid ""
"%s%s%s version %s (%s)\n"
"%s\tcompiled by GNU C version %s.\n"
"%s%s%s version %s (%s) compiled by CC.\n"
msgstr ""
+"%s%s%s Version %s (%s)\n"
+"%s\tkompiliert von GNU-C-Version %s.\n"
+"%s%s%s Version %s (%s) kompiliert von CC.\n"
-#: toplev.c:4572
+#: toplev.c:3872
#, c-format
msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
-msgstr ""
+msgstr "%s%sGGC-Heuristik: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
-#: toplev.c:4630
+#: toplev.c:3924
msgid "options passed: "
-msgstr ""
+msgstr "angegebene Optionen: "
-#: toplev.c:4659
+#: toplev.c:3953
msgid "options enabled: "
-msgstr ""
+msgstr "angeschaltete Optionen: "
-#: toplev.c:4718 java/jcf-write.c:3453
+#: toplev.c:4011 java/jcf-write.c:3422
#, c-format
-msgid "can't open %s for writing"
-msgstr ""
+msgid "can't open %s for writing: %m"
+msgstr "Datei »%s« kann nicht zum Schreiben geöffnet werden: %m"
-#: toplev.c:5002
-#, c-format
-msgid "ignoring command line option '%s'"
-msgstr ""
+#: toplev.c:4094 config/sh/sh.c:6883
+msgid "created and used with different settings of -fpic"
+msgstr "erzeugt und mit anderen Einstellungen von -fpic verwendet"
+
+#: toplev.c:4096 config/sh/sh.c:6885
+msgid "created and used with different settings of -fpie"
+msgstr "erzeugt und mit anderen Einstellungen von -fpie verwendet"
-#: toplev.c:5005
+#: toplev.c:4147 config/sh/sh.c:6935
#, c-format
-msgid "(it is valid for %s but not the selected language)"
-msgstr ""
+msgid "created and used with differing settings of `-m%s'"
+msgstr "erzeugt und mit anderen Einstellungen von »-m%s« verwendet"
-#: toplev.c:5039
-msgid "-Wuninitialized is not supported without -O"
-msgstr ""
+#: toplev.c:4150 config/sh/sh.c:6938
+msgid "out of memory"
+msgstr "Platz im Hauptspeicher reicht nicht aus"
-#: toplev.c:5094
+#: toplev.c:4331
msgid "instruction scheduling not supported on this target machine"
-msgstr ""
+msgstr "Befehlsplanung wird von dieser Zielmaschine nicht unterstützt"
-#: toplev.c:5098
+#: toplev.c:4335
msgid "this target machine does not have delayed branches"
-msgstr ""
+msgstr "diese Zielmaschine hat keine verzögerten Zweige"
-#: toplev.c:5112
+#: toplev.c:4349
#, c-format
msgid "-f%sleading-underscore not supported on this target machine"
-msgstr ""
+msgstr "-f%sleading-underscore wird auf dieser Zielmaschine nicht unterstützt"
+
+#: toplev.c:4398
+#, c-format
+msgid "target system does not support the \"%s\" debug format"
+msgstr "Zielsystem unterstützt nicht das Testformat \"%s\""
-#: toplev.c:5175
+#: toplev.c:4415
msgid "-ffunction-sections not supported for this target"
-msgstr ""
+msgstr "-ffunction-sections wird für dieses Ziel nicht unterstützt"
-#: toplev.c:5180
+#: toplev.c:4420
msgid "-fdata-sections not supported for this target"
-msgstr ""
+msgstr "-fdata-sections wird für dieses Ziel nicht unterstützt"
-#: toplev.c:5187
+#: toplev.c:4427
msgid "-ffunction-sections disabled; it makes profiling impossible"
-msgstr ""
+msgstr "-ffunction-sections ausgeschaltet; das macht Profiling unmöglich"
-#: toplev.c:5194
+#: toplev.c:4434
msgid "-fprefetch-loop-arrays not supported for this target"
-msgstr ""
+msgstr "-fprefetch-loop-arrays wird für dieses Ziel nicht unterstützt"
-#: toplev.c:5200
+#: toplev.c:4440
msgid "-fprefetch-loop-arrays not supported for this target (try -march switches)"
-msgstr ""
+msgstr "-fprefetch-loop-arrays wird für dieses Ziel nicht unterstützt (versuchen Sie die »-march«-Schalter)"
-#: toplev.c:5209
+#: toplev.c:4449
msgid "-fprefetch-loop-arrays is not supported with -Os"
-msgstr ""
+msgstr "-fprefetch-loop-arrays wird nicht mit -Os unterstützt"
-#: toplev.c:5215
+#: toplev.c:4455
msgid "-ffunction-sections may affect debugging on some targets"
-msgstr ""
+msgstr "-ffunction-sections kann für verschiedene Ziele die Fehlersuche beeinträchtigen"
-#: toplev.c:5327
+#: toplev.c:4557
#, c-format
-msgid "error writing to %s"
-msgstr ""
+msgid "error writing to %s: %m"
+msgstr "Fehler beim Schreiben der Datei %s: %m"
-#: toplev.c:5329 java/jcf-parse.c:936 java/jcf-write.c:3460
+#: toplev.c:4559 java/jcf-parse.c:902 java/jcf-write.c:3429
#, c-format
-msgid "error closing %s"
-msgstr ""
+msgid "error closing %s: %m"
+msgstr "Fehler beim Schließen von %s: %m"
-#: tree-dump.c:702
+#: tree-dump.c:692
#, c-format
msgid "could not open dump file `%s'"
-msgstr ""
+msgstr "Abzugsdatei »%s« konnte nicht geöffnet werden"
-#: tree-dump.c:778
+#: tree-dump.c:763
#, c-format
-msgid "ignoring unknown option `%.*s' in `-f%s'"
-msgstr ""
+msgid "ignoring unknown option `%.*s' in `-fdump-%s'"
+msgstr "unbekannte Option »%.*s« in »-fdump-%s« wird ignoriert"
+
+#: tree-inline.c:1016
+msgid "%Jfunction '%F' can never be inlined because it uses alloca (override using the always_inline attribute)"
+msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie alloca verwendet (zum Aufheben: Attribut »always_inline« verwenden)"
+
+#: tree-inline.c:1029
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp"
+msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie setjmp verwendet"
+
+#: tree-inline.c:1044
+msgid "%Jfunction '%F' can never be inlined because it uses variable argument lists"
+msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie eine variable Argumentliste verwendet"
+
+#: tree-inline.c:1060
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp-longjmp exception handling"
+msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie »setjmp-longjmp«-Ausnahmebehandlung verwendet"
+
+#: tree-inline.c:1078
+msgid "%Jfunction '%F' can never be inlined because it contains a nested function"
+msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie eine geschachtelte Funktion enthält"
+
+#: tree-inline.c:1095
+msgid "%Jfunction '%F' can never be inlined because it contains a computed goto"
+msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie ein berechnetes »goto« enthält"
+
+#: tree-inline.c:1105
+msgid "%Jfunction '%F' can never be inlined because it contains a nonlocal goto"
+msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie ein nichtlokales »goto« enthält"
+
+#: tree-inline.c:1128
+msgid "%Jfunction '%F' can never be inlined because it uses variable sized variables"
+msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie Variablen variabler Größe verwendet"
+
+#: tree-inline.c:1338 tree-inline.c:1345
+msgid "%Jinlining failed in call to '%F': %s"
+msgstr "%J»inline« beim Aufruf von »%F« gescheitert: %s"
+
+#: tree-optimize.c:190
+msgid "%Jsize of return value of '%D' is %u bytes"
+msgstr "%JGröße des Rückgabewertes von »%D« ist %u Bytes"
+
+#: tree-optimize.c:193
+msgid "%Jsize of return value of '%D' is larger than %wd bytes"
+msgstr "%JGröße des Rückgabewertes von »%D« ist größer als %wd Bytes"
-#: tree.c:3645
+#: tree.c:3800
msgid "arrays of functions are not meaningful"
-msgstr ""
+msgstr "Felder von Funktionen sind sinnlos"
-#: tree.c:3702
+#: tree.c:3855
msgid "function return type cannot be function"
-msgstr ""
+msgstr "Rückgabetyp der Funktion kann keine Funktion sein"
-#: tree.c:4557
+#: tree.c:4684
msgid "invalid initializer for bit string"
-msgstr ""
+msgstr "ungültige Initialisierung für Bitstring"
-#: tree.c:4616
+#: tree.c:4736
#, c-format
msgid "tree check: expected %s, have %s in %s, at %s:%d"
-msgstr ""
+msgstr "Baumprüfung: %s erwartet, haben %s in %s, bei %s:%d"
-#: tree.c:4633
+#: tree.c:4749
#, c-format
msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d"
-msgstr ""
+msgstr "Baumprüfung: Klasse %c erwartet, haben '%c' (%s) in %s, bei %s:%d"
-#: tree.c:4650
+#: tree.c:4762
#, c-format
msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
-msgstr ""
+msgstr "Baumprüfung: auf Elt %d von tree_vec mit %d Elts in %s bei %s:%d zugegriffen"
-#: varasm.c:455 config/i386/winnt.c:611
+#: tree.c:4774
#, c-format
-msgid "%s causes a section type conflict"
-msgstr ""
+msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
+msgstr "Baumprüfung: auf Operand %d von %s mit %d Operanden in %s bei %s:%d zugegriffen"
-#: varasm.c:841
-#, c-format
-msgid "register name not specified for `%s'"
-msgstr ""
+#: varasm.c:434
+msgid "%J%D causes a section type conflict"
+msgstr "%J%D löst einen Abschnittstypkonflikt aus"
-#: varasm.c:843
-#, c-format
-msgid "invalid register name for `%s'"
-msgstr ""
+#: varasm.c:796
+msgid "%Jregister name not specified for '%D'"
+msgstr "%Jfür »%D« wurde kein Registername angegeben"
-#: varasm.c:846
-#, c-format
-msgid "data type of `%s' isn't suitable for a register"
-msgstr ""
+#: varasm.c:798
+msgid "%Jinvalid register name for '%D'"
+msgstr "%Jungültiger Registername für »%D«"
-#: varasm.c:849
-#, c-format
-msgid "register specified for `%s' isn't suitable for data type"
-msgstr ""
+#: varasm.c:800
+msgid "%Jdata type of '%D' isn't suitable for a register"
+msgstr "%JDatentyp von »%D« eignet sich nicht für Register"
+
+#: varasm.c:803
+msgid "%Jregister specified for '%D' isn't suitable for data type"
+msgstr "%Jfür »%D« angegebenes Register eignet sich nicht für Datentyp"
-#: varasm.c:858
+#: varasm.c:813
msgid "global register variable has initial value"
-msgstr ""
+msgstr "globle Registervariable hat Anfangswert"
-#: varasm.c:861
+#: varasm.c:816
msgid "volatile register variables don't work as you might wish"
-msgstr ""
+msgstr "»volatile«-Registervariablen funktionieren oft nicht so wie erhofft"
-#: varasm.c:894
-#, c-format
-msgid "register name given for non-register variable `%s'"
-msgstr ""
+#: varasm.c:848
+msgid "%Jregister name given for non-register variable '%D'"
+msgstr "%JRegistername für Nicht-Registervariable »%D« verwendet"
-#: varasm.c:1542
-#, c-format
-msgid "alignment of `%s' is greater than maximum object file alignment. Using %d"
-msgstr ""
+#: varasm.c:1380
+msgid "%Jstorage size of `%D' isn't known"
+msgstr "%JSpeichergröße von »%D« ist unbekannt"
-#: varasm.c:1584
+#: varasm.c:1434
+msgid "%Jalignment of '%D' is greater than maximum object file alignment. Using %d"
+msgstr "%JAusrichtung von »%D ist größer als maximale Objektdateiausrichtung. %d verwendet«"
+
+#: varasm.c:1480
msgid "thread-local COMMON data not implemented"
-msgstr ""
+msgstr "Thread-lokale COMMON-Daten nicht implementiert"
-#: varasm.c:1610
-#, c-format
-msgid "requested alignment for %s is greater than implemented alignment of %d"
-msgstr ""
+#: varasm.c:1505
+msgid "%Jrequested alignment for '%D' is greater than implemented alignment of %d"
+msgstr "%Jangeforderte Ausrichtung für »%D« ist größer als die implementierte Ausrichtung von %d"
-#: varasm.c:4048
+#: varasm.c:3787
msgid "initializer for integer value is too complicated"
-msgstr ""
+msgstr "Initialisierung für Ganzzahlwert ist zu kompliziert"
-#: varasm.c:4053
+#: varasm.c:3792
msgid "initializer for floating value is not a floating constant"
-msgstr ""
+msgstr "Initialisierung für Gleitkommawert ist keine Gleitkommakonstante"
-#: varasm.c:4120
+#: varasm.c:3858
msgid "unknown set constructor type"
-msgstr ""
+msgstr "unbekannter Mengenkonstruktortyp"
-#: varasm.c:4334
+#: varasm.c:4077
#, c-format
msgid "invalid initial value for member `%s'"
-msgstr ""
+msgstr "ungültiger Anfangswert für Element »%s«"
-#: varasm.c:4525 varasm.c:4568
-#, c-format
-msgid "weak declaration of `%s' must precede definition"
-msgstr ""
+#: varasm.c:4264 varasm.c:4308
+msgid "%Jweak declaration of '%D' must precede definition"
+msgstr "%Jschwache Deklaration von »%D« muss der Definition vorangehen"
-#: varasm.c:4532
-#, c-format
-msgid "weak declaration of `%s' after first use results in unspecified behavior"
-msgstr ""
+#: varasm.c:4272
+msgid "%Jweak declaration of '%D' after first use results in unspecified behavior"
+msgstr "%Jschwache Deklaration von »%D« nach erster Benutzung führt zu undefiniertem Verhalten"
-#: varasm.c:4566
-#, c-format
-msgid "weak declaration of `%s' must be public"
-msgstr ""
+#: varasm.c:4306
+msgid "%Jweak declaration of '%D' must be public"
+msgstr "%Jschwache Deklaration von »%D« muss öffentlich sein"
-#: varasm.c:4575
-#, c-format
-msgid "weak declaration of `%s' not supported"
-msgstr ""
+#: varasm.c:4315
+msgid "%Jweak declaration of '%D' not supported"
+msgstr "%Jschwache Deklaration von »%D« wird nicht unterstützt"
-#: varasm.c:4602 varasm.c:4677
+#: varasm.c:4344 varasm.c:4434
msgid "only weak aliases are supported in this configuration"
-msgstr ""
+msgstr "in dieser Konfiguration werden nur schwache Aliase unterstützt"
-#: varasm.c:4685
+#: varasm.c:4437
msgid "alias definitions not supported in this configuration; ignored"
-msgstr ""
+msgstr "Alias-Definitionen werden in dieser Konfiguration nicht unterstützt; ignoriert"
-#: varasm.c:4716
+#: varasm.c:4466
msgid "visibility attribute not supported in this configuration; ignored"
-msgstr ""
+msgstr "Sichtbarkeitsattribute werden in dieser Konfiguration nicht unterstützt; ignoriert"
-#: varray.c:134
+#: varray.c:194
#, c-format
msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d"
-msgstr ""
+msgstr "virtuelles Feld %s[%lu]: Element %lu außerhalb der Grenzen in %s, bei %s:%d"
+
+#: varray.c:204
+#, c-format
+msgid "underflowed virtual array %s in %s, at %s:%d"
+msgstr "Unterlauf im virtuellen Feld %s in %s bei %s:%d"
#. Print an error message for unrecognized stab codes.
-#: xcoffout.c:175
+#: xcoffout.c:173
#, c-format
msgid "no sclass for %s stab (0x%x)\n"
-msgstr ""
+msgstr "kein »sclass« für %s Stab (0x%x)\n"
-#: pretty-print.h:97
-#, c-format
-msgid "#`%s' not supported by %s#"
-msgstr "#»%s« wird von %s# nicht unterstützt"
+#.
+#. Local variables:
+#. mode:c
+#. End:
+#.
+#: diagnostic.def:1
+msgid "fatal error: "
+msgstr "schwerwiegender Fehler: "
+
+#: diagnostic.def:2
+msgid "internal compiler error: "
+msgstr "interner Compiler-Fehler: "
+
+#: diagnostic.def:3
+msgid "error: "
+msgstr "Fehler: "
+
+#: diagnostic.def:4
+msgid "sorry, unimplemented: "
+msgstr "nicht implementiert: "
+
+#: diagnostic.def:6
+msgid "anachronism: "
+msgstr "Anachronismus: "
+
+#: diagnostic.def:7
+msgid "note: "
+msgstr "Anmerkung: "
+
+#: diagnostic.def:8
+msgid "debug: "
+msgstr "zur Fehlersuche: "
#: params.def:53
msgid "The maximum number of instructions in a single function eligible for inlining"
-msgstr ""
+msgstr "Die Höchstzahl der Anweisungen in einer einzelnen für »inline« geeigneten Funktion"
#: params.def:65
msgid "The maximum number of instructions when automatically inlining"
-msgstr ""
-
-#: params.def:84
-msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
-msgstr ""
-
-#: params.def:97
-msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
-msgstr ""
+msgstr "Die Höchstzahl der Anweisungen für automatisches »inline«"
-#: params.def:110
-msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
-msgstr ""
-
-#: params.def:120
+#: params.def:75
msgid "The maximum number of instructions for the RTL inliner"
-msgstr ""
+msgstr "Die Höchstzahl der Anweisungen für RTL »inline«"
-#: params.def:131
+#: params.def:86
msgid "The maximum number of instructions to consider to fill a delay slot"
-msgstr ""
+msgstr "Die Höchstzahl der zu betrachtenden Anweisungen um Verzögerungsschlitz zu füllen"
-#: params.def:142
+#: params.def:97
msgid "The maximum number of instructions to consider to find accurate live register information"
-msgstr ""
+msgstr "Die Höchstzahl der zu betrachtenden Anweisungen um richtige aktive Registerinformationen zu finden"
-#: params.def:152
+#: params.def:107
msgid "The maximum length of scheduling's pending operations list"
-msgstr ""
+msgstr "Die Maximallänge der Liste der anhängigen geplanten Operationen"
-#: params.def:159
+#: params.def:112
+msgid "The size of function body to be considered large"
+msgstr "Die Größe eines als groß angesehenen Funktionskörpers"
+
+#: params.def:116
+msgid "Maximal growth due to inlining of large function (in percent)"
+msgstr "Maximales Wachstum durch »inline« einer großen Funktion (in Prozent)"
+
+#: params.def:120
+msgid "how much can given compilation unit grow because of the inlining (in percent)"
+msgstr "um wie viel eine Übersetzungseinheit durch »inline« wachsen kann (in Prozent)"
+
+#: params.def:127
msgid "The maximum amount of memory to be allocated by GCSE"
-msgstr ""
+msgstr "Maximalbetrag des von GCSE zu belegenden Speichers"
-#: params.def:164
+#: params.def:132
msgid "The maximum number of passes to make when doing GCSE"
-msgstr ""
+msgstr "Die Höchstzahl der Durchläufe für GCSE"
-#: params.def:171
+#: params.def:139
msgid "The maximum number of instructions to consider to unroll in a loop"
+msgstr "Die Höchstzahl der zum Aufrollen von Schleifen zu betrachtenden Anweisungen"
+
+#: params.def:145
+msgid "The maximum number of instructions to consider to unroll in a loop on average"
+msgstr "Die Höchstzahl der zum Aufrollen von Schleifen im Mittel zu betrachtenden Anweisungen"
+
+#: params.def:150
+msgid "The maximum number of unrollings of a single loop"
+msgstr "Die Höchstzahl der Iterationen zum Aufrollen in einzelner Schleife"
+
+#: params.def:155
+msgid "The maximum number of insns of a peeled loop"
+msgstr "Die Höchstzahl der insns einer geschälten Schleife"
+
+#: params.def:160
+msgid "The maximum number of peelings of a single loop"
+msgstr "Die Höchstzahl der Schälvorgänge einer einzelnen Schleife"
+
+#: params.def:165
+msgid "The maximum number of insns of a completely peeled loop"
+msgstr "Die Höchstzahl der insns einer vollständig geschälten Schleife"
+
+#: params.def:170
+msgid "The maximum number of peelings of a single loop that is peeled completely"
+msgstr "Die Höchstzahl der Schälvorgänge einer einzelnen Schleife, die vollständig geschält wird"
+
+#: params.def:175
+msgid "The maximum number of insns of a peeled loop that rolls only once"
+msgstr "Die Höchstzahl der insns einer geschälten Schleife, die nur einmal rollt"
+
+#: params.def:181
+msgid "The maximum number of insns of an unswitched loop"
msgstr ""
-#: params.def:176
+#: params.def:186
+msgid "The maximum number of unswitchings in a single loop"
+msgstr ""
+
+#: params.def:191
msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
msgstr ""
-#: params.def:181
+#: params.def:196
msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
msgstr ""
-#: params.def:186
+#: params.def:201
msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
msgstr ""
-#: params.def:191
+#: params.def:206
msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
msgstr ""
-#: params.def:196
-msgid "Maximal code growth caused by tail duplication (in percents)"
+#: params.def:211
+msgid "Maximal code growth caused by tail duplication (in percent)"
msgstr ""
-#: params.def:200
-msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percents)"
+#: params.def:215
+msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent)"
msgstr ""
-#: params.def:205
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is available"
+#: params.def:220
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is available"
msgstr ""
-#: params.def:210
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is not available"
+#: params.def:225
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is not available"
msgstr ""
-#: params.def:217
+#: params.def:232
msgid "The maximum number of incoming edges to consider for crossjumping"
msgstr ""
-#: params.def:230
-msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap."
+#: params.def:238
+msgid "The maximum length of path considered in cse"
+msgstr ""
+
+#: params.def:243
+msgid "The maximum memory locations recorded by cselib"
+msgstr ""
+
+#: params.def:256
+msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap"
+msgstr ""
+
+#: params.def:262
+msgid "Minimum heap size before we start collecting garbage, in kilobytes"
msgstr ""
-#: params.def:236
-msgid "Minimum heap size before we start collecting garbage, in kilobytes."
+#: params.def:270
+msgid "The maximum number of instructions to search backward when looking for equivalent reload"
msgstr ""
#: config/darwin-c.c:75
msgid "too many #pragma options align=reset"
msgstr ""
-#: config/darwin-c.c:97 config/darwin-c.c:100 config/darwin-c.c:102
-#: config/darwin-c.c:104
+#: config/darwin-c.c:95 config/darwin-c.c:98 config/darwin-c.c:100
+#: config/darwin-c.c:102
msgid "malformed '#pragma options', ignoring"
msgstr ""
-#: config/darwin-c.c:107
+#: config/darwin-c.c:105
msgid "junk at end of '#pragma options'"
msgstr ""
-#: config/darwin-c.c:117
+#: config/darwin-c.c:115
msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring"
msgstr ""
-#: config/darwin-c.c:130
+#: config/darwin-c.c:127
msgid "missing '(' after '#pragma unused', ignoring"
msgstr ""
-#: config/darwin-c.c:148
+#: config/darwin-c.c:145
msgid "missing ')' after '#pragma unused', ignoring"
msgstr ""
-#: config/darwin-c.c:151
+#: config/darwin-c.c:148
msgid "junk at end of '#pragma unused'"
msgstr ""
-#: config/lynx-ng.h:97 config/lynx.h:121 config/rs6000/lynx.h:100
+#: config/darwin.c:1347
+msgid "internal and protected visibility attributes not supportedin this configuration; ignored"
+msgstr ""
+
+#: config/lynx-ng.h:97 config/lynx.h:116 config/rs6000/lynx.h:73
msgid "-msystem-v and -p are incompatible"
msgstr ""
-#: config/lynx-ng.h:99 config/lynx.h:123 config/rs6000/lynx.h:102
+#: config/lynx-ng.h:99 config/lynx.h:118 config/rs6000/lynx.h:75
msgid "-msystem-v and -mthreads are incompatible"
msgstr ""
-#: config/alpha/alpha.c:342
+#: config/windiss.h:37
+msgid "profiler support for WindISS"
+msgstr ""
+
+#: config/alpha/alpha.c:231
#, c-format
msgid "-f%s ignored for Unicos/Mk (not supported)"
msgstr ""
-#: config/alpha/alpha.c:366
+#: config/alpha/alpha.c:255
msgid "-mieee not supported on Unicos/Mk"
msgstr ""
-#: config/alpha/alpha.c:377
+#: config/alpha/alpha.c:266
msgid "-mieee-with-inexact not supported on Unicos/Mk"
msgstr ""
-#: config/alpha/alpha.c:394
+#: config/alpha/alpha.c:283
#, c-format
msgid "bad value `%s' for -mtrap-precision switch"
msgstr ""
-#: config/alpha/alpha.c:408
+#: config/alpha/alpha.c:297
#, c-format
msgid "bad value `%s' for -mfp-rounding-mode switch"
msgstr ""
-#: config/alpha/alpha.c:423
+#: config/alpha/alpha.c:312
#, c-format
msgid "bad value `%s' for -mfp-trap-mode switch"
msgstr ""
-#: config/alpha/alpha.c:435
+#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1063
#, c-format
msgid "bad value `%s' for -mtls-size switch"
msgstr ""
-#: config/alpha/alpha.c:454 config/alpha/alpha.c:466
+#: config/alpha/alpha.c:343 config/alpha/alpha.c:355
#, c-format
msgid "bad value `%s' for -mcpu switch"
msgstr ""
-#: config/alpha/alpha.c:473
+#: config/alpha/alpha.c:362
msgid "trap mode not supported on Unicos/Mk"
msgstr ""
-#: config/alpha/alpha.c:480
+#: config/alpha/alpha.c:369
msgid "fp software completion requires -mtrap-precision=i"
msgstr ""
-#: config/alpha/alpha.c:496
+#: config/alpha/alpha.c:385
msgid "rounding mode not supported for VAX floats"
msgstr ""
-#: config/alpha/alpha.c:501
+#: config/alpha/alpha.c:390
msgid "trap mode not supported for VAX floats"
msgstr ""
-#: config/alpha/alpha.c:530
+#: config/alpha/alpha.c:419
#, c-format
msgid "L%d cache latency unknown for %s"
msgstr ""
-#: config/alpha/alpha.c:545
+#: config/alpha/alpha.c:434
#, c-format
msgid "bad value `%s' for -mmemory-latency"
msgstr ""
-#: config/alpha/alpha.c:5604 config/m88k/m88k.c:2889 config/romp/romp.c:754
-#: config/romp/romp.c:761
+#: config/alpha/alpha.c:5411
#, c-format
msgid "invalid %%H value"
msgstr ""
-#: config/alpha/alpha.c:5625
+#: config/alpha/alpha.c:5432
#, c-format
msgid "invalid %%J value"
msgstr ""
-#: config/alpha/alpha.c:5641 config/ia64/ia64.c:3970 config/m88k/m88k.c:3034
+#: config/alpha/alpha.c:5448 config/ia64/ia64.c:4243
#, c-format
msgid "invalid %%r value"
msgstr ""
-#: config/alpha/alpha.c:5651 config/rs6000/rs6000.c:7737
+#: config/alpha/alpha.c:5458 config/rs6000/rs6000.c:8944
+#: config/xtensa/xtensa.c:1999
#, c-format
msgid "invalid %%R value"
msgstr ""
-#: config/alpha/alpha.c:5657 config/rs6000/rs6000.c:7663
+#: config/alpha/alpha.c:5464 config/rs6000/rs6000.c:8863
+#: config/xtensa/xtensa.c:1966
#, c-format
msgid "invalid %%N value"
msgstr ""
-#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:7691
+#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:8891
#, c-format
msgid "invalid %%P value"
msgstr ""
-#: config/alpha/alpha.c:5673 config/m88k/m88k.c:2895 config/romp/romp.c:740
-#: config/romp/romp.c:747
+#: config/alpha/alpha.c:5480
#, c-format
msgid "invalid %%h value"
msgstr ""
-#: config/alpha/alpha.c:5681 config/romp/romp.c:698
+#: config/alpha/alpha.c:5488 config/xtensa/xtensa.c:1992
#, c-format
msgid "invalid %%L value"
msgstr ""
-#: config/alpha/alpha.c:5720 config/rs6000/rs6000.c:7645
+#: config/alpha/alpha.c:5527 config/rs6000/rs6000.c:8845
#, c-format
msgid "invalid %%m value"
msgstr ""
-#: config/alpha/alpha.c:5728 config/rs6000/rs6000.c:7653
+#: config/alpha/alpha.c:5535 config/rs6000/rs6000.c:8853
#, c-format
msgid "invalid %%M value"
msgstr ""
-#: config/alpha/alpha.c:5772
+#: config/alpha/alpha.c:5579
#, c-format
msgid "invalid %%U value"
msgstr ""
-#: config/alpha/alpha.c:5784 config/alpha/alpha.c:5798 config/romp/romp.c:706
-#: config/rs6000/rs6000.c:7745
+#: config/alpha/alpha.c:5591 config/alpha/alpha.c:5605
+#: config/rs6000/rs6000.c:8952
#, c-format
msgid "invalid %%s value"
msgstr ""
-#: config/alpha/alpha.c:5821 config/m88k/m88k.c:2997
+#: config/alpha/alpha.c:5628
#, c-format
msgid "invalid %%C value"
msgstr ""
-#: config/alpha/alpha.c:5858 config/m88k/m88k.c:3018
-#: config/rs6000/rs6000.c:7502
+#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:8702
#, c-format
msgid "invalid %%E value"
msgstr ""
-#: config/alpha/alpha.c:5883 config/alpha/alpha.c:5933
+#: config/alpha/alpha.c:5690 config/alpha/alpha.c:5738
msgid "unknown relocation unspec"
msgstr ""
-#: config/alpha/alpha.c:5892 config/romp/romp.c:981
-#: config/rs6000/rs6000.c:8052
+#: config/alpha/alpha.c:5699 config/rs6000/rs6000.c:9265
#, c-format
msgid "invalid %%xn code"
msgstr ""
-#: config/alpha/alpha.c:6618 config/alpha/alpha.c:6621 config/s390/s390.c:6069
-#: config/s390/s390.c:6072
+#: config/alpha/alpha.c:6634 config/alpha/alpha.c:6637 config/s390/s390.c:6572
+#: config/s390/s390.c:6575
msgid "bad builtin fcode"
msgstr ""
@@ -8519,87 +7592,98 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/alpha/alpha.h:279 config/i386/i386.h:294 config/i386/i386.h:296
-#: config/i386/i386.h:298 config/ns32k/ns32k.h:140 config/rs6000/rs6000.h:292
-#: config/s390/s390.h:68 config/sparc/sparc.h:522 config/sparc/sparc.h:527
+#. WARNING: Do not mark empty strings for translation, as calling
+#. gettext on an empty string does NOT return an empty
+#. string.
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/alpha/alpha.h:286 config/i386/i386.h:327 config/i386/i386.h:329
+#: config/i386/i386.h:331 config/ns32k/ns32k.h:140 config/s390/s390.h:124
+#: config/sparc/sparc.h:537 config/sparc/sparc.h:542
msgid "Use hardware fp"
msgstr ""
-#: config/alpha/alpha.h:280 config/i386/i386.h:295 config/i386/i386.h:297
-#: config/rs6000/rs6000.h:294 config/sparc/sparc.h:524
-#: config/sparc/sparc.h:529
+#: config/alpha/alpha.h:287 config/i386/i386.h:328 config/i386/i386.h:330
+#: config/sparc/sparc.h:539 config/sparc/sparc.h:544
msgid "Do not use hardware fp"
msgstr ""
-#: config/alpha/alpha.h:281
+#: config/alpha/alpha.h:288
msgid "Use fp registers"
msgstr ""
-#: config/alpha/alpha.h:283
+#: config/alpha/alpha.h:290
msgid "Do not use fp registers"
msgstr ""
-#: config/alpha/alpha.h:284
+#: config/alpha/alpha.h:291
msgid "Do not assume GAS"
msgstr ""
-#: config/alpha/alpha.h:285
+#: config/alpha/alpha.h:292
msgid "Assume GAS"
msgstr ""
-#: config/alpha/alpha.h:287
+#: config/alpha/alpha.h:294
msgid "Request IEEE-conformant math library routines (OSF/1)"
msgstr ""
-#: config/alpha/alpha.h:289
+#: config/alpha/alpha.h:296
msgid "Emit IEEE-conformant code, without inexact exceptions"
msgstr ""
-#: config/alpha/alpha.h:291
+#: config/alpha/alpha.h:298
msgid "Emit IEEE-conformant code, with inexact exceptions"
msgstr ""
-#: config/alpha/alpha.h:293
+#: config/alpha/alpha.h:300
msgid "Do not emit complex integer constants to read-only memory"
msgstr ""
-#: config/alpha/alpha.h:294
+#: config/alpha/alpha.h:301
msgid "Use VAX fp"
msgstr ""
-#: config/alpha/alpha.h:295
+#: config/alpha/alpha.h:302
msgid "Do not use VAX fp"
msgstr ""
-#: config/alpha/alpha.h:296
+#: config/alpha/alpha.h:303
msgid "Emit code for the byte/word ISA extension"
msgstr ""
-#: config/alpha/alpha.h:299
+#: config/alpha/alpha.h:306
msgid "Emit code for the motion video ISA extension"
msgstr ""
-#: config/alpha/alpha.h:302
+#: config/alpha/alpha.h:309
msgid "Emit code for the fp move and sqrt ISA extension"
msgstr ""
-#: config/alpha/alpha.h:304
+#: config/alpha/alpha.h:311
msgid "Emit code for the counting ISA extension"
msgstr ""
-#: config/alpha/alpha.h:307
+#: config/alpha/alpha.h:314
msgid "Emit code using explicit relocation directives"
msgstr ""
-#: config/alpha/alpha.h:310
+#: config/alpha/alpha.h:317
msgid "Emit 16-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:312
+#: config/alpha/alpha.h:319
msgid "Emit 32-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:314
+#: config/alpha/alpha.h:321
+msgid "Emit direct branches to local functions"
+msgstr ""
+
+#: config/alpha/alpha.h:324
msgid "Emit rdval instead of rduniq for thread pointer"
msgstr ""
@@ -8610,292 +7694,313 @@ msgstr ""
#. For -mtrap-precision=[p|f|i]
#. For -mmemory-latency=
#. For -mtls-size=
-#: config/alpha/alpha.h:343
+#: config/alpha/alpha.h:353
msgid "Use features of and schedule given CPU"
msgstr ""
-#: config/alpha/alpha.h:345
+#: config/alpha/alpha.h:355
msgid "Schedule given CPU"
msgstr ""
-#: config/alpha/alpha.h:347
+#: config/alpha/alpha.h:357
msgid "Control the generated fp rounding mode"
msgstr ""
-#: config/alpha/alpha.h:349
+#: config/alpha/alpha.h:359
msgid "Control the IEEE trap mode"
msgstr ""
-#: config/alpha/alpha.h:351
+#: config/alpha/alpha.h:361
msgid "Control the precision given to fp exceptions"
msgstr ""
-#: config/alpha/alpha.h:353
+#: config/alpha/alpha.h:363
msgid "Tune expected memory latency"
msgstr ""
-#: config/alpha/alpha.h:355 config/ia64/ia64.h:225
+#: config/alpha/alpha.h:365 config/ia64/ia64.h:267 config/rs6000/sysv4.h:90
msgid "Specify bit size of immediate TLS offsets"
msgstr ""
-#: config/arc/arc.c:135
+#: config/arc/arc.c:147
#, c-format
msgid "bad value (%s) for -mcpu switch"
msgstr ""
-#: config/arc/arc.c:362
+#: config/arc/arc.c:369
#, c-format
msgid "argument of `%s' attribute is not a string constant"
msgstr ""
-#: config/arc/arc.c:369
+#: config/arc/arc.c:376
#, c-format
msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\""
msgstr ""
-#: config/arc/arc.c:1708 config/m32r/m32r.c:2286
+#: config/arc/arc.c:1714 config/m32r/m32r.c:2325
#, c-format
msgid "invalid operand to %%R code"
msgstr ""
-#: config/arc/arc.c:1740 config/m32r/m32r.c:2309
+#: config/arc/arc.c:1746 config/m32r/m32r.c:2348
#, c-format
msgid "invalid operand to %%H/%%L code"
msgstr ""
-#: config/arc/arc.c:1763 config/m32r/m32r.c:2385
+#: config/arc/arc.c:1769 config/m32r/m32r.c:2419
#, c-format
msgid "invalid operand to %%U code"
msgstr ""
-#: config/arc/arc.c:1774
+#: config/arc/arc.c:1780
#, c-format
msgid "invalid operand to %%V code"
msgstr ""
#. Unknown flag.
-#: config/arc/arc.c:1781 config/m32r/m32r.c:2424 config/sparc/sparc.c:6533
+#. Undocumented flag.
+#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985
msgid "invalid operand output code"
msgstr ""
-#: config/arm/arm.c:458
+#: config/arm/arm.c:520
#, c-format
msgid "switch -mcpu=%s conflicts with -march= switch"
msgstr ""
-#: config/arm/arm.c:468 config/rs6000/rs6000.c:558 config/sparc/sparc.c:393
+#: config/arm/arm.c:530 config/rs6000/rs6000.c:759 config/sparc/sparc.c:424
#, c-format
msgid "bad value (%s) for %s switch"
msgstr ""
-#: config/arm/arm.c:604
+#: config/arm/arm.c:672
msgid "target CPU does not support APCS-32"
msgstr ""
-#: config/arm/arm.c:609
+#: config/arm/arm.c:677
msgid "target CPU does not support APCS-26"
msgstr ""
-#: config/arm/arm.c:615
+#: config/arm/arm.c:683
msgid "target CPU does not support interworking"
msgstr ""
-#: config/arm/arm.c:621
+#: config/arm/arm.c:689
msgid "target CPU does not support THUMB instructions"
msgstr ""
-#: config/arm/arm.c:635
+#: config/arm/arm.c:703
msgid "enabling backtrace support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:638
+#: config/arm/arm.c:706
msgid "enabling callee interworking support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:641
+#: config/arm/arm.c:709
msgid "enabling caller interworking support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:647
+#: config/arm/arm.c:715
msgid "interworking forces APCS-32 to be used"
msgstr ""
-#: config/arm/arm.c:653
+#: config/arm/arm.c:721
msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
msgstr ""
-#: config/arm/arm.c:661
+#: config/arm/arm.c:729
msgid "-fpic and -mapcs-reent are incompatible"
msgstr ""
-#: config/arm/arm.c:664
+#: config/arm/arm.c:732
msgid "APCS reentrant code not supported. Ignored"
msgstr ""
-#: config/arm/arm.c:672
+#: config/arm/arm.c:740
msgid "-g with -mno-apcs-frame may not give sensible debugging"
msgstr ""
-#: config/arm/arm.c:680
+#: config/arm/arm.c:748
msgid "passing floating point arguments in fp regs not yet supported"
msgstr ""
-#: config/arm/arm.c:709
+#: config/arm/arm.c:792
#, c-format
msgid "invalid floating point emulation option: -mfpe-%s"
msgstr ""
-#: config/arm/arm.c:733
+#: config/arm/arm.c:803
+msgid "-mfpe switch not supported by ep9312 target cpu - ignored."
+msgstr ""
+
+#: config/arm/arm.c:823
msgid "structure size boundary can only be set to 8 or 32"
msgstr ""
-#: config/arm/arm.c:741
+#: config/arm/arm.c:831
msgid "-mpic-register= is useless without -fpic"
msgstr ""
-#: config/arm/arm.c:748
+#: config/arm/arm.c:838
#, c-format
msgid "unable to use '%s' for PIC register"
msgstr ""
-#: config/arm/arm.c:2064 config/arm/arm.c:2087 config/avr/avr.c:4794
-#: config/c4x/c4x.c:4644 config/h8300/h8300.c:3667 config/i386/i386.c:1396
-#: config/i386/i386.c:1425 config/ip2k/ip2k.c:3224
-#: config/m68hc11/m68hc11.c:1267 config/mcore/mcore.c:3510
-#: config/ns32k/ns32k.c:1047 config/rs6000/rs6000.c:12538 config/sh/sh.c:5681
-#: config/sh/sh.c:5706 config/sh/sh.c:5745 config/stormy16/stormy16.c:2026
-#: config/v850/v850.c:2180
+#: config/arm/arm.c:2246 config/arm/arm.c:2264 config/avr/avr.c:4558
+#: config/c4x/c4x.c:4447 config/h8300/h8300.c:4257 config/i386/i386.c:1571
+#: config/i386/i386.c:1617 config/ip2k/ip2k.c:3169
+#: config/m68hc11/m68hc11.c:1227 config/m68k/m68k.c:333
+#: config/mcore/mcore.c:3375 config/ns32k/ns32k.c:1064
+#: config/rs6000/rs6000.c:14556 config/sh/sh.c:6737 config/sh/sh.c:6758
+#: config/sh/sh.c:6793 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173
#, c-format
msgid "`%s' attribute only applies to functions"
msgstr ""
-#: config/arm/arm.c:9459
+#: config/arm/arm.c:10573
msgid "unable to compute real location of stacked parameter"
msgstr ""
-#: config/arm/arm.c:10138
+#. @@@ better error message
+#: config/arm/arm.c:11201 config/arm/arm.c:11238
+msgid "selector must be an immediate"
+msgstr ""
+
+#. @@@ better error message
+#: config/arm/arm.c:11281 config/i386/i386.c:14219 config/i386/i386.c:14253
+msgid "mask must be an immediate"
+msgstr ""
+
+#: config/arm/arm.c:11976
msgid "no low registers available for popping high registers"
msgstr ""
-#: config/arm/arm.c:10389
+#: config/arm/arm.c:12226
msgid "interrupt Service Routines cannot be coded in Thumb mode"
msgstr ""
-#: config/arm/pe.c:168 config/mcore/mcore.c:3358
-#, c-format
-msgid "initialized variable `%s' is marked dllimport"
+#: config/arm/pe.c:170 config/mcore/mcore.c:3241
+msgid "%Jinitialized variable '%D' is marked dllimport"
msgstr ""
-#: config/arm/pe.c:177
-#, c-format
-msgid "static variable `%s' is marked dllimport"
+#: config/arm/pe.c:179
+msgid "%Jstatic variable '%D' is marked dllimport"
msgstr ""
-#: config/arm/arm.h:416
+#: config/arm/arm.h:450
msgid "Generate APCS conformant stack frames"
msgstr ""
-#: config/arm/arm.h:419
+#: config/arm/arm.h:453
msgid "Store function names in object code"
msgstr ""
-#: config/arm/arm.h:423
+#: config/arm/arm.h:457
msgid "Use the 32-bit version of the APCS"
msgstr ""
-#: config/arm/arm.h:425
+#: config/arm/arm.h:459
msgid "Use the 26-bit version of the APCS"
msgstr ""
-#: config/arm/arm.h:429
+#: config/arm/arm.h:463
msgid "Pass FP arguments in FP registers"
msgstr ""
-#: config/arm/arm.h:432
+#: config/arm/arm.h:466
msgid "Generate re-entrant, PIC code"
msgstr ""
-#: config/arm/arm.h:435
+#: config/arm/arm.h:469
msgid "The MMU will trap on unaligned accesses"
msgstr ""
-#: config/arm/arm.h:442
+#: config/arm/arm.h:476
msgid "Use library calls to perform FP operations"
msgstr ""
-#: config/arm/arm.h:444 config/i960/i960.h:281
+#: config/arm/arm.h:478 config/i960/i960.h:291
msgid "Use hardware floating point instructions"
msgstr ""
-#: config/arm/arm.h:446
+#: config/arm/arm.h:480
msgid "Assume target CPU is configured as big endian"
msgstr ""
-#: config/arm/arm.h:448
+#: config/arm/arm.h:482
msgid "Assume target CPU is configured as little endian"
msgstr ""
-#: config/arm/arm.h:450
+#: config/arm/arm.h:484
msgid "Assume big endian bytes, little endian words"
msgstr ""
-#: config/arm/arm.h:452
+#: config/arm/arm.h:486
msgid "Support calls between Thumb and ARM instruction sets"
msgstr ""
-#: config/arm/arm.h:455
+#: config/arm/arm.h:489
msgid "Generate a call to abort if a noreturn function returns"
msgstr ""
-#: config/arm/arm.h:458
+#: config/arm/arm.h:492
msgid "Do not move instructions into a function's prologue"
msgstr ""
-#: config/arm/arm.h:461
+#: config/arm/arm.h:495
msgid "Do not load the PIC register in function prologues"
msgstr ""
-#: config/arm/arm.h:464
+#: config/arm/arm.h:498
msgid "Generate call insns as indirect calls, if necessary"
msgstr ""
-#: config/arm/arm.h:467
+#: config/arm/arm.h:501
msgid "Compile for the Thumb not the ARM"
msgstr ""
-#: config/arm/arm.h:471
+#: config/arm/arm.h:505
msgid "Thumb: Generate (non-leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.h:474
+#: config/arm/arm.h:508
msgid "Thumb: Generate (leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.h:477
+#: config/arm/arm.h:511
msgid "Thumb: Assume non-static functions may be called from ARM code"
msgstr ""
-#: config/arm/arm.h:481
+#: config/arm/arm.h:515
msgid "Thumb: Assume function pointers may go to non-Thumb aware code"
msgstr ""
-#: config/arm/arm.h:491
+#: config/arm/arm.h:519
+msgid "Cirrus: Place NOPs to avoid invalid instruction combinations"
+msgstr ""
+
+#: config/arm/arm.h:521
+msgid "Cirrus: Do not break up invalid instruction combinations with NOPs"
+msgstr ""
+
+#: config/arm/arm.h:529
msgid "Specify the name of the target CPU"
msgstr ""
-#: config/arm/arm.h:493
+#: config/arm/arm.h:531
msgid "Specify the name of the target architecture"
msgstr ""
-#: config/arm/arm.h:497
+#: config/arm/arm.h:535
msgid "Specify the version of the floating point emulator"
msgstr ""
-#: config/arm/arm.h:499
+#: config/arm/arm.h:537
msgid "Specify the minimum bit alignment of structures"
msgstr ""
-#: config/arm/arm.h:501
+#: config/arm/arm.h:539
msgid "Specify the register to be used for PIC addressing"
msgstr ""
@@ -8903,92 +8008,92 @@ msgstr ""
msgid "Ignore dllimport attribute for functions"
msgstr ""
-#: config/avr/avr.c:528
+#: config/avr/avr.c:514
#, c-format
msgid "large frame pointer change (%d) with -mtiny-stack"
msgstr ""
-#: config/avr/avr.c:1135
+#: config/avr/avr.c:1101
msgid "bad address, not (reg+disp):"
msgstr ""
-#: config/avr/avr.c:1143
+#: config/avr/avr.c:1109
msgid "internal compiler error. Bad address:"
msgstr ""
-#: config/avr/avr.c:1156
+#: config/avr/avr.c:1122
msgid "internal compiler error. Unknown mode:"
msgstr ""
-#: config/avr/avr.c:1864 config/avr/avr.c:2576
+#: config/avr/avr.c:1744 config/avr/avr.c:2405
msgid "invalid insn:"
msgstr ""
-#: config/avr/avr.c:1901 config/avr/avr.c:1987 config/avr/avr.c:2036
-#: config/avr/avr.c:2045 config/avr/avr.c:2143 config/avr/avr.c:2315
-#: config/avr/avr.c:2613 config/avr/avr.c:2724
+#: config/avr/avr.c:1778 config/avr/avr.c:1861 config/avr/avr.c:1910
+#: config/avr/avr.c:1919 config/avr/avr.c:2014 config/avr/avr.c:2183
+#: config/avr/avr.c:2439 config/avr/avr.c:2547
msgid "incorrect insn:"
msgstr ""
-#: config/avr/avr.c:2064 config/avr/avr.c:2228 config/avr/avr.c:2386
-#: config/avr/avr.c:2768
+#: config/avr/avr.c:1938 config/avr/avr.c:2099 config/avr/avr.c:2254
+#: config/avr/avr.c:2591
msgid "unknown move insn:"
msgstr ""
-#: config/avr/avr.c:3003
+#: config/avr/avr.c:2814
msgid "bad shift insn:"
msgstr ""
-#: config/avr/avr.c:3119 config/avr/avr.c:3549 config/avr/avr.c:3929
+#: config/avr/avr.c:2927 config/avr/avr.c:3348 config/avr/avr.c:3719
msgid "internal compiler error. Incorrect shift:"
msgstr ""
-#: config/avr/avr.c:4767 config/ip2k/ip2k.c:3197
+#: config/avr/avr.c:4532 config/ip2k/ip2k.c:3144
msgid "only initialized variables can be placed into program memory area"
msgstr ""
-#: config/avr/avr.c:4866
+#: config/avr/avr.c:4626
msgid "only uninitialized variables can be placed in the .noinit section"
msgstr ""
-#: config/avr/avr.c:4881
+#: config/avr/avr.c:4640
#, c-format
msgid "MCU `%s' supported for assembler only"
msgstr ""
-#: config/avr/avr.h:78
+#: config/avr/avr.h:73
msgid "Assume int to be 8 bit integer"
msgstr ""
-#: config/avr/avr.h:80
+#: config/avr/avr.h:75
msgid "Change the stack pointer without disabling interrupts"
msgstr ""
-#: config/avr/avr.h:82
+#: config/avr/avr.h:77
msgid "Use subroutines for function prologue/epilogue"
msgstr ""
-#: config/avr/avr.h:84
+#: config/avr/avr.h:79
msgid "Change only the low 8 bits of the stack pointer"
msgstr ""
-#: config/avr/avr.h:86
+#: config/avr/avr.h:81
msgid "Do not generate tablejump insns"
msgstr ""
-#: config/avr/avr.h:88
+#: config/avr/avr.h:83
msgid "Use rjmp/rcall (limited range) on >8K devices"
msgstr ""
-#: config/avr/avr.h:91
+#: config/avr/avr.h:85
msgid "Output instruction sizes to the asm file"
msgstr ""
-#: config/avr/avr.h:108
+#: config/avr/avr.h:102
msgid "Specify the initial stack address"
msgstr ""
-#: config/avr/avr.h:109
+#: config/avr/avr.h:103
msgid "Specify the MCU name"
msgstr ""
@@ -9000,140 +8105,135 @@ msgstr ""
#. For instance, the SH target has only positive offsets in
#. addresses. Thus sorting to put the smallest address first allows
#. the most combinations to be found.
-#: config/avr/avr.h:2450
+#: config/avr/avr.h:2267
msgid "trampolines not supported"
msgstr ""
-#: config/c4x/c4x-c.c:69
+#: config/c4x/c4x-c.c:71
#, c-format
msgid "missing '(' after '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:72
+#: config/c4x/c4x-c.c:74
#, c-format
msgid "missing function name in '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:77
+#: config/c4x/c4x-c.c:79
#, c-format
msgid "malformed '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:79
+#: config/c4x/c4x-c.c:81
#, c-format
msgid "missing section name in '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:84
+#: config/c4x/c4x-c.c:86
#, c-format
msgid "missing ')' for '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:87
+#: config/c4x/c4x-c.c:89
#, c-format
msgid "junk at end of '#pragma %s'"
msgstr ""
-#: config/c4x/c4x.c:280
+#: config/c4x/c4x.c:300
#, c-format
msgid "unknown CPU version %d, using 40.\n"
msgstr ""
-#: config/c4x/c4x.c:853
+#: config/c4x/c4x.c:850
#, c-format
msgid "ISR %s requires %d words of local vars, max is 32767"
msgstr ""
-#: config/c4x/c4x.c:1602
+#: config/c4x/c4x.c:1571
msgid "using CONST_DOUBLE for address"
msgstr ""
-#: config/c4x/c4x.c:1742
+#: config/c4x/c4x.c:1709
msgid "c4x_address_cost: Invalid addressing mode"
msgstr ""
-#: config/c4x/c4x.c:1884
+#: config/c4x/c4x.c:1844
#, c-format
msgid "c4x_print_operand: %%L inconsistency"
msgstr ""
-#: config/c4x/c4x.c:1890
+#: config/c4x/c4x.c:1850
#, c-format
msgid "c4x_print_operand: %%N inconsistency"
msgstr ""
-#: config/c4x/c4x.c:1931
+#: config/c4x/c4x.c:1891
#, c-format
msgid "c4x_print_operand: %%O inconsistency"
msgstr ""
-#: config/c4x/c4x.c:2026
+#: config/c4x/c4x.c:1986
msgid "c4x_print_operand: Bad operand case"
msgstr ""
-#: config/c4x/c4x.c:2069
+#: config/c4x/c4x.c:2027
msgid "c4x_print_operand_address: Bad post_modify"
msgstr ""
-#: config/c4x/c4x.c:2091
+#: config/c4x/c4x.c:2049
msgid "c4x_print_operand_address: Bad pre_modify"
msgstr ""
-#: config/c4x/c4x.c:2139 config/c4x/c4x.c:2151 config/c4x/c4x.c:2166
+#: config/c4x/c4x.c:2097 config/c4x/c4x.c:2109 config/c4x/c4x.c:2124
msgid "c4x_print_operand_address: Bad operand case"
msgstr ""
-#: config/c4x/c4x.c:2422
+#: config/c4x/c4x.c:2375
msgid "c4x_rptb_insert: Cannot find start label"
msgstr ""
-#: config/c4x/c4x.c:3409 config/c4x/c4x.c:3429
+#: config/c4x/c4x.c:3292 config/c4x/c4x.c:3310
msgid "mode not QImode"
msgstr ""
-#: config/c4x/c4x.c:3514
+#: config/c4x/c4x.c:3380
msgid "invalid indirect memory address"
msgstr ""
-#: config/c4x/c4x.c:3603
+#: config/c4x/c4x.c:3469
msgid "invalid indirect (S) memory address"
msgstr ""
-#: config/c4x/c4x.c:3944
+#: config/c4x/c4x.c:3797
msgid "c4x_valid_operands: Internal error"
msgstr ""
-#: config/c4x/c4x.c:4424
+#: config/c4x/c4x.c:4216
msgid "c4x_operand_subword: invalid mode"
msgstr ""
-#: config/c4x/c4x.c:4427
+#: config/c4x/c4x.c:4219
msgid "c4x_operand_subword: invalid operand"
msgstr ""
#. We could handle these with some difficulty.
#. e.g., *p-- => *(p-=2); *(p+1).
-#: config/c4x/c4x.c:4453
+#: config/c4x/c4x.c:4245
msgid "c4x_operand_subword: invalid autoincrement"
msgstr ""
-#: config/c4x/c4x.c:4459
+#: config/c4x/c4x.c:4251
msgid "c4x_operand_subword: invalid address"
msgstr ""
-#: config/c4x/c4x.c:4470
+#: config/c4x/c4x.c:4262
msgid "c4x_operand_subword: address not offsettable"
msgstr ""
-#: config/c4x/c4x.c:4670
+#: config/c4x/c4x.c:4472
msgid "c4x_rptb_rpts_p: Repeat block top label moved\n"
msgstr ""
-#. Name of the c4x assembler.
-#. Name of the c4x linker.
-#. Define assembler options.
-#. Define linker options.
-#. Specify the end file to link with.
#. Target compilation option flags.
#. Small memory model.
#. Use 24-bit MPYI for C3x.
@@ -9352,158 +8452,158 @@ msgstr ""
msgid "Select CPU to generate code for"
msgstr ""
-#: config/cris/cris.c:599
+#: config/cris/cris.c:597
msgid "unexpected index-type in cris_print_index"
msgstr ""
-#: config/cris/cris.c:615
+#: config/cris/cris.c:611
msgid "unexpected base-type in cris_print_base"
msgstr ""
-#: config/cris/cris.c:908
+#: config/cris/cris.c:904
#, c-format
msgid "stackframe too big: %d bytes"
msgstr ""
-#: config/cris/cris.c:1223
+#: config/cris/cris.c:1215
msgid "allocated but unused delay list in epilogue"
msgstr ""
-#: config/cris/cris.c:1233
+#: config/cris/cris.c:1225
msgid "unexpected function type needing stack adjustment for __builtin_eh_return"
msgstr ""
-#: config/cris/cris.c:1312
+#: config/cris/cris.c:1301
msgid "invalid operand for 'b' modifier"
msgstr ""
-#: config/cris/cris.c:1324
+#: config/cris/cris.c:1314
msgid "invalid operand for 'v' modifier"
msgstr ""
-#: config/cris/cris.c:1334
+#: config/cris/cris.c:1324
msgid "invalid operand for 'P' modifier"
msgstr ""
-#: config/cris/cris.c:1341
+#: config/cris/cris.c:1331
msgid "invalid operand for 'p' modifier"
msgstr ""
-#: config/cris/cris.c:1380
+#: config/cris/cris.c:1370
msgid "invalid operand for 'z' modifier"
msgstr ""
-#: config/cris/cris.c:1411 config/cris/cris.c:1441
+#: config/cris/cris.c:1401 config/cris/cris.c:1431
msgid "invalid operand for 'H' modifier"
msgstr ""
-#: config/cris/cris.c:1417
+#: config/cris/cris.c:1407
msgid "bad register"
msgstr ""
-#: config/cris/cris.c:1455
+#: config/cris/cris.c:1445
msgid "invalid operand for 'e' modifier"
msgstr ""
-#: config/cris/cris.c:1472
+#: config/cris/cris.c:1462
msgid "invalid operand for 'm' modifier"
msgstr ""
-#: config/cris/cris.c:1497
+#: config/cris/cris.c:1487
msgid "invalid operand for 'A' modifier"
msgstr ""
-#: config/cris/cris.c:1505
+#: config/cris/cris.c:1495
msgid "invalid operand for 'D' modifier"
msgstr ""
-#: config/cris/cris.c:1519
+#: config/cris/cris.c:1509
msgid "invalid operand for 'T' modifier"
msgstr ""
-#: config/cris/cris.c:1528
+#: config/cris/cris.c:1518
msgid "invalid operand modifier letter"
msgstr ""
-#: config/cris/cris.c:1536
+#: config/cris/cris.c:1526
#, c-format
msgid "internal error: bad register: %d"
msgstr ""
-#: config/cris/cris.c:1584
+#: config/cris/cris.c:1574
msgid "unexpected multiplicative operand"
msgstr ""
-#: config/cris/cris.c:1604
+#: config/cris/cris.c:1594
msgid "unexpected operand"
msgstr ""
-#: config/cris/cris.c:1639 config/cris/cris.c:1649
+#: config/cris/cris.c:1627 config/cris/cris.c:1637
msgid "unrecognized address"
msgstr ""
-#: config/cris/cris.c:2005
+#: config/cris/cris.c:1987
msgid "internal error: sideeffect-insn affecting main effect"
msgstr ""
#. If we get here, the caller got its initial tests wrong.
-#: config/cris/cris.c:2292
+#: config/cris/cris.c:2380
msgid "internal error: cris_side_effect_mode_ok with bad operands"
msgstr ""
-#: config/cris/cris.c:2374 config/cris/cris.c:2432
+#: config/cris/cris.c:2457 config/cris/cris.c:2519
msgid "unrecognized supposed constant"
msgstr ""
-#: config/cris/cris.c:2473
+#: config/cris/cris.c:2564
msgid "unrecognized supposed constant in cris_global_pic_symbol"
msgstr ""
-#: config/cris/cris.c:2492
+#: config/cris/cris.c:2583
#, c-format
msgid "-max-stackframe=%d is not usable, not between 0 and %d"
msgstr ""
-#: config/cris/cris.c:2520
+#: config/cris/cris.c:2611
#, c-format
msgid "unknown CRIS version specification in -march= or -mcpu= : %s"
msgstr ""
-#: config/cris/cris.c:2556
+#: config/cris/cris.c:2647
#, c-format
msgid "unknown CRIS cpu version specification in -mtune= : %s"
msgstr ""
-#: config/cris/cris.c:2574
+#: config/cris/cris.c:2665
msgid "-fPIC and -fpic are not supported in this configuration"
msgstr ""
-#: config/cris/cris.c:2590
+#: config/cris/cris.c:2681
msgid "that particular -g option is invalid with -maout and -melinux"
msgstr ""
-#: config/cris/cris.c:2824 config/cris/cris.c:2869
+#: config/cris/cris.c:2936 config/cris/cris.c:2981
msgid "unexpected side-effects in address"
msgstr ""
#. Labels are never marked as global symbols.
-#: config/cris/cris.c:2966 config/cris/cris.c:2997
+#: config/cris/cris.c:3076 config/cris/cris.c:3107
msgid "unexpected PIC symbol"
msgstr ""
-#: config/cris/cris.c:2970
+#: config/cris/cris.c:3080
msgid "PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:2983 config/cris/cris.c:3066
+#: config/cris/cris.c:3093 config/cris/cris.c:3176
msgid "unexpected address expression"
msgstr ""
-#: config/cris/cris.c:3001
+#: config/cris/cris.c:3111
msgid "emitting PIC operand, but PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:3010
+#: config/cris/cris.c:3120
msgid "unexpected NOTE as addr_const:"
msgstr ""
@@ -9516,212 +8616,212 @@ msgid "For elinux, request a specified stack-size for this program"
msgstr ""
#. No "no-etrax" as it does not really imply any model. On the other hand, "etrax" implies the common (and large) subset matching all models.
-#: config/cris/cris.h:340
+#: config/cris/cris.h:334
msgid "Compile for ETRAX 4 (CRIS v3)"
msgstr ""
-#: config/cris/cris.h:345
+#: config/cris/cris.h:339
msgid "Compile for ETRAX 100 (CRIS v8)"
msgstr ""
-#: config/cris/cris.h:349
+#: config/cris/cris.h:343
msgid "Emit verbose debug information in assembly code"
msgstr ""
-#: config/cris/cris.h:352
+#: config/cris/cris.h:346
msgid "Do not use condition codes from normal instructions"
msgstr ""
-#: config/cris/cris.h:356
+#: config/cris/cris.h:350
msgid "Do not emit addressing modes with side-effect assignment"
msgstr ""
-#: config/cris/cris.h:359
+#: config/cris/cris.h:353
msgid "Do not tune stack alignment"
msgstr ""
-#: config/cris/cris.h:362
+#: config/cris/cris.h:356
msgid "Do not tune writable data alignment"
msgstr ""
-#: config/cris/cris.h:365
+#: config/cris/cris.h:359
msgid "Do not tune code and read-only data alignment"
msgstr ""
-#: config/cris/cris.h:374
+#: config/cris/cris.h:368
msgid "Align code and data to 32 bits"
msgstr ""
-#: config/cris/cris.h:387
+#: config/cris/cris.h:381
msgid "Don't align items in code or data"
msgstr ""
-#: config/cris/cris.h:390
+#: config/cris/cris.h:384
msgid "Do not emit function prologue or epilogue"
msgstr ""
#. We have to handle this m-option here since we can't wash it off in both CC1_SPEC and CC1PLUS_SPEC.
-#: config/cris/cris.h:394
+#: config/cris/cris.h:388
msgid "Use the most feature-enabling options allowed by other options"
msgstr ""
#. We must call it "override-" since calling it "no-" will cause gcc.c to forget it, if there's a "later" -mbest-lib-options. Kludgy, but needed for some multilibbed files.
-#: config/cris/cris.h:400
+#: config/cris/cris.h:394
msgid "Override -mbest-lib-options"
msgstr ""
-#: config/cris/cris.h:432
+#: config/cris/cris.h:426
msgid "Generate code for the specified chip or CPU version"
msgstr ""
-#: config/cris/cris.h:434
+#: config/cris/cris.h:428
msgid "Tune alignment for the specified chip or CPU version"
msgstr ""
-#: config/cris/cris.h:436
+#: config/cris/cris.h:430
msgid "Warn when a stackframe is larger than the specified size"
msgstr ""
#. Node: Profiling
-#: config/cris/cris.h:1022
+#: config/cris/cris.h:1016
msgid "no FUNCTION_PROFILER for CRIS"
msgstr ""
-#: config/cris/linux.h:71
+#: config/cris/linux.h:69
msgid "Together with -fpic and -fPIC, do not use GOTPLT references"
msgstr ""
-#: config/d30v/d30v.c:207
+#: config/d30v/d30v.c:218
#, c-format
msgid "bad modes_tieable_p for register %s, mode1 %s, mode2 %s"
msgstr ""
-#: config/d30v/d30v.c:2666
+#: config/d30v/d30v.c:2678
msgid "bad insn to d30v_print_operand_address:"
msgstr ""
-#: config/d30v/d30v.c:2683 config/d30v/d30v.c:2744 config/d30v/d30v.c:2765
-#: config/d30v/d30v.c:2783
+#: config/d30v/d30v.c:2695 config/d30v/d30v.c:2756 config/d30v/d30v.c:2777
+#: config/d30v/d30v.c:2795
msgid "bad insn to d30v_print_operand_memory_reference:"
msgstr ""
-#: config/d30v/d30v.c:2851
+#: config/d30v/d30v.c:2863
msgid "bad insn to d30v_print_operand, 'f' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2860
+#: config/d30v/d30v.c:2872
msgid "bad insn to d30v_print_operand, 'A' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2867
+#: config/d30v/d30v.c:2879
msgid "bad insn to d30v_print_operand, 'M' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2921
+#: config/d30v/d30v.c:2933
msgid "bad insn to print_operand, 'F' or 'T' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2932
+#: config/d30v/d30v.c:2944
msgid "bad insn to print_operand, 'B' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2939
+#: config/d30v/d30v.c:2951
msgid "bad insn to print_operand, 'E' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2957
+#: config/d30v/d30v.c:2969
msgid "bad insn to print_operand, 'R' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2966 config/d30v/d30v.c:2974
+#: config/d30v/d30v.c:2978 config/d30v/d30v.c:2986
msgid "bad insn to print_operand, 's' modifier:"
msgstr ""
-#: config/d30v/d30v.c:3003
+#: config/d30v/d30v.c:3015
msgid "bad insn in d30v_print_operand, 0 case"
msgstr ""
-#: config/d30v/d30v.c:3301
+#: config/d30v/d30v.c:3313
msgid "d30v_emit_comparison"
msgstr ""
-#: config/d30v/d30v.c:3345
+#: config/d30v/d30v.c:3357
msgid "bad call to d30v_move_2words"
msgstr ""
-#: config/d30v/d30v.h:114
+#: config/d30v/d30v.h:111
msgid "Enable use of conditional move instructions"
msgstr ""
-#: config/d30v/d30v.h:117
+#: config/d30v/d30v.h:114
msgid "Disable use of conditional move instructions"
msgstr ""
-#: config/d30v/d30v.h:120
+#: config/d30v/d30v.h:117
msgid "Debug argument support in compiler"
msgstr ""
-#: config/d30v/d30v.h:123
+#: config/d30v/d30v.h:120
msgid "Debug stack support in compiler"
msgstr ""
-#: config/d30v/d30v.h:126
+#: config/d30v/d30v.h:123
msgid "Debug memory address support in compiler"
msgstr ""
-#: config/d30v/d30v.h:129
+#: config/d30v/d30v.h:126
msgid "Make adjacent short instructions parallel if possible"
msgstr ""
-#: config/d30v/d30v.h:132
+#: config/d30v/d30v.h:129
msgid "Do not make adjacent short instructions parallel"
msgstr ""
-#: config/d30v/d30v.h:135 config/d30v/d30v.h:138
+#: config/d30v/d30v.h:132 config/d30v/d30v.h:135
msgid "Link programs/data to be in external memory by default"
msgstr ""
-#: config/d30v/d30v.h:141
+#: config/d30v/d30v.h:138
msgid "Link programs/data to be in onchip memory by default"
msgstr ""
-#: config/d30v/d30v.h:149
+#: config/d30v/d30v.h:146
msgid "Change the branch costs within the compiler"
msgstr ""
-#: config/d30v/d30v.h:152
+#: config/d30v/d30v.h:149
msgid "Change the threshold for conversion to conditional execution"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1446 config/dsp16xx/dsp16xx.c:1469
+#: config/dsp16xx/dsp16xx.c:1463 config/dsp16xx/dsp16xx.c:1486
msgid "stack size > 32k"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1678
+#: config/dsp16xx/dsp16xx.c:1695
msgid "invalid addressing mode"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1821
+#: config/dsp16xx/dsp16xx.c:1838
msgid "bad register extension code"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1921
+#: config/dsp16xx/dsp16xx.c:1938
msgid "invalid offset in ybase addressing"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1924
+#: config/dsp16xx/dsp16xx.c:1941
msgid "invalid register in ybase addressing"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:2099
+#: config/dsp16xx/dsp16xx.c:2116
msgid "invalid shift operator in emit_1600_core_shift"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:2428
+#: config/dsp16xx/dsp16xx.c:2406
msgid "invalid mode for gen_tst_reg"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:2500
+#: config/dsp16xx/dsp16xx.c:2478
msgid "invalid mode for integer comparison in gen_compare_reg"
msgstr ""
@@ -9816,58 +8916,62 @@ msgstr ""
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/dsp16xx/dsp16xx.h:1218 config/dsp16xx/dsp16xx.h:1772
-#: config/dsp16xx/dsp16xx.h:1777
+#. This is how to output an insn to push a register on the stack.
+#. It need not be very fast code since it is used only for profiling
+#. This is how to output an insn to pop a register from the stack.
+#. It need not be very fast code since it is used only for profiling
+#: config/dsp16xx/dsp16xx.h:1216 config/dsp16xx/dsp16xx.h:1667
+#: config/dsp16xx/dsp16xx.h:1672
msgid "profiling not implemented yet"
msgstr ""
#. Emit RTL insns to initialize the variable parts of a trampoline.
#. FNADDR is an RTX for the address of the function's pure code.
#. CXT is an RTX for the static chain value for the function.
-#: config/dsp16xx/dsp16xx.h:1228 config/dsp16xx/dsp16xx.h:1240
+#: config/dsp16xx/dsp16xx.h:1226 config/dsp16xx/dsp16xx.h:1238
msgid "trampolines not yet implemented"
msgstr ""
-#: config/fr30/fr30.c:453
+#: config/fr30/fr30.c:451
msgid "fr30_print_operand_address: unhandled address"
msgstr ""
-#: config/fr30/fr30.c:480
+#: config/fr30/fr30.c:475
#, c-format
msgid "fr30_print_operand: unrecognized %%p code"
msgstr ""
-#: config/fr30/fr30.c:500
+#: config/fr30/fr30.c:495
#, c-format
msgid "fr30_print_operand: unrecognized %%b code"
msgstr ""
-#: config/fr30/fr30.c:521
+#: config/fr30/fr30.c:516
#, c-format
msgid "fr30_print_operand: unrecognized %%B code"
msgstr ""
-#: config/fr30/fr30.c:529
+#: config/fr30/fr30.c:524
#, c-format
msgid "fr30_print_operand: invalid operand to %%A code"
msgstr ""
-#: config/fr30/fr30.c:546
+#: config/fr30/fr30.c:541
#, c-format
msgid "fr30_print_operand: invalid %%x code"
msgstr ""
-#: config/fr30/fr30.c:553
+#: config/fr30/fr30.c:548
#, c-format
msgid "fr30_print_operand: invalid %%F code"
msgstr ""
-#: config/fr30/fr30.c:570
+#: config/fr30/fr30.c:565
msgid "fr30_print_operand: unknown code"
msgstr ""
-#: config/fr30/fr30.c:599 config/fr30/fr30.c:608 config/fr30/fr30.c:619
-#: config/fr30/fr30.c:632
+#: config/fr30/fr30.c:594 config/fr30/fr30.c:603 config/fr30/fr30.c:614
+#: config/fr30/fr30.c:627
msgid "fr30_print_operand: unhandled MEM"
msgstr ""
@@ -9875,136 +8979,136 @@ msgstr ""
msgid "Assume small address space"
msgstr ""
-#: config/frv/frv.c:410 config/frv/frv.c:428
+#: config/frv/frv.c:392 config/frv/frv.c:410
#, c-format
msgid "Unknown cpu: -mcpu=%s"
msgstr ""
-#: config/frv/frv.c:451
+#: config/frv/frv.c:433
msgid "-fpic and -gdwarf are incompatible (-fpic and -g/-gdwarf-2 are fine)"
msgstr ""
-#: config/frv/frv.c:2520
+#: config/frv/frv.c:2397
msgid "Bad insn to frv_print_operand_address:"
msgstr ""
-#: config/frv/frv.c:2533
+#: config/frv/frv.c:2408
msgid "Bad register to frv_print_operand_memory_reference_reg:"
msgstr ""
-#: config/frv/frv.c:2574 config/frv/frv.c:2584 config/frv/frv.c:2593
-#: config/frv/frv.c:2621 config/frv/frv.c:2633 config/frv/frv.c:2637
+#: config/frv/frv.c:2446 config/frv/frv.c:2456 config/frv/frv.c:2465
+#: config/frv/frv.c:2493 config/frv/frv.c:2506 config/frv/frv.c:2510
msgid "Bad insn to frv_print_operand_memory_reference:"
msgstr ""
-#: config/frv/frv.c:2779
+#: config/frv/frv.c:2648
msgid "Bad insn in frv_print_operand, bad const_double"
msgstr ""
-#: config/frv/frv.c:2824
+#: config/frv/frv.c:2693
msgid "Bad insn to frv_print_operand, 'C' modifier:"
msgstr ""
-#: config/frv/frv.c:2847
+#: config/frv/frv.c:2716
msgid "Bad insn to frv_print_operand, 'c' modifier:"
msgstr ""
-#: config/frv/frv.c:2872
+#: config/frv/frv.c:2741
msgid "Bad insn to frv_print_operand, 'e' modifier:"
msgstr ""
-#: config/frv/frv.c:2880
+#: config/frv/frv.c:2749
msgid "Bad insn to frv_print_operand, 'F' modifier:"
msgstr ""
-#: config/frv/frv.c:2896
+#: config/frv/frv.c:2765
msgid "Bad insn to frv_print_operand, 'f' modifier:"
msgstr ""
-#: config/frv/frv.c:2949
+#: config/frv/frv.c:2818
msgid "Bad insn to frv_print_operand, 'L' modifier:"
msgstr ""
-#: config/frv/frv.c:2962
+#: config/frv/frv.c:2831
msgid "Bad insn to frv_print_operand, 'M/N' modifier:"
msgstr ""
-#: config/frv/frv.c:2983
+#: config/frv/frv.c:2852
msgid "Bad insn to frv_print_operand, 'O' modifier:"
msgstr ""
-#: config/frv/frv.c:3001
+#: config/frv/frv.c:2870
msgid "Bad insn to frv_print_operand, P modifier:"
msgstr ""
-#: config/frv/frv.c:3021
+#: config/frv/frv.c:2890
msgid "Bad insn in frv_print_operand, z case"
msgstr ""
-#: config/frv/frv.c:3049
+#: config/frv/frv.c:2918
msgid "Bad insn in frv_print_operand, 0 case"
msgstr ""
-#: config/frv/frv.c:3054
+#: config/frv/frv.c:2923
msgid "frv_print_operand: unknown code"
msgstr ""
-#: config/frv/frv.c:5737
+#: config/frv/frv.c:5474
msgid "Bad output_move_single operand"
msgstr ""
-#: config/frv/frv.c:5866
+#: config/frv/frv.c:5601
msgid "Bad output_move_double operand"
msgstr ""
-#: config/frv/frv.c:6010
+#: config/frv/frv.c:5743
msgid "Bad output_condmove_single operand"
msgstr ""
-#: config/frv/frv.c:8315
+#: config/frv/frv.c:8031
msgid "frv_registers_update"
msgstr ""
-#: config/frv/frv.c:8475
+#: config/frv/frv.c:8188
msgid "frv_registers_used_p"
msgstr ""
-#: config/frv/frv.c:8604
+#: config/frv/frv.c:8314
msgid "frv_registers_set_p"
msgstr ""
-#: config/frv/frv.c:9171
+#: config/frv/frv.c:8910
msgid "accumulator is not a constant integer"
msgstr ""
-#: config/frv/frv.c:9176
+#: config/frv/frv.c:8915
msgid "accumulator number is out of bounds"
msgstr ""
-#: config/frv/frv.c:9187
+#: config/frv/frv.c:8926
#, c-format
msgid "inappropriate accumulator for `%s'"
msgstr ""
-#: config/frv/frv.c:9253
+#: config/frv/frv.c:8986
#, c-format
msgid "`%s' expects a constant argument"
msgstr ""
-#: config/frv/frv.c:9258
+#: config/frv/frv.c:8991
#, c-format
msgid "constant argument out of range for `%s'"
msgstr ""
-#: config/frv/frv.c:9638
+#: config/frv/frv.c:9338
msgid "media functions are not available unless -mmedia is used"
msgstr ""
-#: config/frv/frv.c:9650
+#: config/frv/frv.c:9350
msgid "this media function is only available on the fr500"
msgstr ""
-#: config/frv/frv.c:9678
+#: config/frv/frv.c:9378
msgid "this media function is only available on the fr400"
msgstr ""
@@ -10017,15 +9121,16 @@ msgstr ""
#. #else
#. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)");
#. #endif
-#: config/frv/frv.h:512
+#: config/frv/frv.h:506
+#, c-format
msgid " (frv)"
msgstr ""
-#: config/h8300/h8300.c:314
+#: config/h8300/h8300.c:288
msgid "-ms2600 is used without -ms"
msgstr ""
-#: config/h8300/h8300.c:320
+#: config/h8300/h8300.c:294
msgid "-mn is used without -mh or -ms"
msgstr ""
@@ -10034,75 +9139,75 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/h8300/h8300.h:150
+#: config/h8300/h8300.h:145
msgid "Generate H8S code"
msgstr ""
-#: config/h8300/h8300.h:151
+#: config/h8300/h8300.h:146
msgid "Do not generate H8S code"
msgstr ""
-#: config/h8300/h8300.h:152
+#: config/h8300/h8300.h:147
msgid "Generate H8S/2600 code"
msgstr ""
-#: config/h8300/h8300.h:153
+#: config/h8300/h8300.h:148
msgid "Do not generate H8S/2600 code"
msgstr ""
-#: config/h8300/h8300.h:154
+#: config/h8300/h8300.h:149
msgid "Make integers 32 bits wide"
msgstr ""
-#: config/h8300/h8300.h:157
+#: config/h8300/h8300.h:152
msgid "Use registers for argument passing"
msgstr ""
-#: config/h8300/h8300.h:159
+#: config/h8300/h8300.h:154
msgid "Do not use registers for argument passing"
msgstr ""
-#: config/h8300/h8300.h:161
+#: config/h8300/h8300.h:156
msgid "Consider access to byte sized memory slow"
msgstr ""
-#: config/h8300/h8300.h:162
+#: config/h8300/h8300.h:157
msgid "Enable linker relaxing"
msgstr ""
-#: config/h8300/h8300.h:164
+#: config/h8300/h8300.h:158
msgid "Generate H8/300H code"
msgstr ""
-#: config/h8300/h8300.h:165
+#: config/h8300/h8300.h:159
msgid "Enable the normal mode"
msgstr ""
-#: config/h8300/h8300.h:166
+#: config/h8300/h8300.h:160
msgid "Do not generate H8/300H code"
msgstr ""
-#: config/h8300/h8300.h:167
+#: config/h8300/h8300.h:161
msgid "Use H8/300 alignment rules"
msgstr ""
-#: config/i370/i370-c.c:53
+#: config/i370/i370-c.c:55
msgid "junk at end of #pragma map"
msgstr ""
-#: config/i370/i370-c.c:59
+#: config/i370/i370-c.c:61
msgid "malformed #pragma map, ignored"
msgstr ""
-#: config/i370/i370.c:915
+#: config/i370/i370.c:784
msgid "real name is too long - alias ignored"
msgstr ""
-#: config/i370/i370.c:920
+#: config/i370/i370.c:789
msgid "alias name is too long - alias ignored"
msgstr ""
-#: config/i370/i370.c:1191
+#: config/i370/i370.c:1060
msgid "internal error--no jump follows compare:"
msgstr ""
@@ -10118,405 +9223,453 @@ msgstr ""
msgid "Do not generate char instructions"
msgstr ""
-#: config/i386/i386.c:1050
+#: config/i386/i386.c:1161
#, c-format
msgid "code model %s not supported in PIC mode"
msgstr ""
-#: config/i386/i386.c:1060 config/sparc/sparc.c:356
+#: config/i386/i386.c:1171 config/sparc/sparc.c:387
#, c-format
msgid "bad value (%s) for -mcmodel= switch"
msgstr ""
-#: config/i386/i386.c:1075
+#: config/i386/i386.c:1186
#, c-format
msgid "bad value (%s) for -masm= switch"
msgstr ""
-#: config/i386/i386.c:1078
+#: config/i386/i386.c:1189
#, c-format
msgid "code model `%s' not supported in the %s bit mode"
msgstr ""
-#: config/i386/i386.c:1081
+#: config/i386/i386.c:1192
msgid "code model `large' not supported yet"
msgstr ""
-#: config/i386/i386.c:1083
+#: config/i386/i386.c:1194
#, c-format
msgid "%i-bit mode not compiled in"
msgstr ""
-#: config/i386/i386.c:1113
+#: config/i386/i386.c:1221 config/i386/i386.c:1233
+msgid "CPU you selected does not support x86-64 instruction set"
+msgstr ""
+
+#: config/i386/i386.c:1226 config/iq2000/iq2000.c:1840
#, c-format
msgid "bad value (%s) for -march= switch"
msgstr ""
-#: config/i386/i386.c:1124
+#: config/i386/i386.c:1239
#, c-format
-msgid "bad value (%s) for -mcpu= switch"
+msgid "bad value (%s) for -mtune= switch"
msgstr ""
-#: config/i386/i386.c:1141
+#: config/i386/i386.c:1256
#, c-format
msgid "-mregparm=%d is not between 0 and %d"
msgstr ""
-#: config/i386/i386.c:1154
+#: config/i386/i386.c:1269
msgid "-malign-loops is obsolete, use -falign-loops"
msgstr ""
-#: config/i386/i386.c:1159 config/i386/i386.c:1172 config/i386/i386.c:1185
+#: config/i386/i386.c:1274 config/i386/i386.c:1287 config/i386/i386.c:1300
#, c-format
msgid "-malign-loops=%d is not between 0 and %d"
msgstr ""
-#: config/i386/i386.c:1167
+#: config/i386/i386.c:1282
msgid "-malign-jumps is obsolete, use -falign-jumps"
msgstr ""
-#: config/i386/i386.c:1180
+#: config/i386/i386.c:1295
msgid "-malign-functions is obsolete, use -falign-functions"
msgstr ""
-#: config/i386/i386.c:1218
+#: config/i386/i386.c:1333
#, c-format
msgid "-mpreferred-stack-boundary=%d is not between %d and 12"
msgstr ""
-#: config/i386/i386.c:1230
+#: config/i386/i386.c:1345
#, c-format
msgid "-mbranch-cost=%d is not between 0 and 5"
msgstr ""
-#: config/i386/i386.c:1242
+#: config/i386/i386.c:1357
#, c-format
msgid "bad value (%s) for -mtls-dialect= switch"
msgstr ""
-#: config/i386/i386.c:1263
+#: config/i386/i386.c:1386
msgid "-malign-double makes no sense in the 64bit mode"
msgstr ""
-#: config/i386/i386.c:1265
+#: config/i386/i386.c:1388
msgid "-mrtd calling convention not supported in the 64bit mode"
msgstr ""
-#: config/i386/i386.c:1281 config/i386/i386.c:1292
+#: config/i386/i386.c:1410 config/i386/i386.c:1421
msgid "SSE instruction set disabled, using 387 arithmetics"
msgstr ""
-#: config/i386/i386.c:1297
+#: config/i386/i386.c:1426
msgid "387 instruction set disabled, using SSE arithmetics"
msgstr ""
-#: config/i386/i386.c:1304
+#: config/i386/i386.c:1433
#, c-format
msgid "bad value (%s) for -mfpmath= switch"
msgstr ""
-#: config/i386/i386.c:1436
+#: config/i386/i386.c:1581 config/i386/i386.c:1592
+msgid "fastcall and stdcall attributes are not compatible"
+msgstr ""
+
+#: config/i386/i386.c:1585 config/i386/i386.c:1641
+msgid "fastcall and regparm attributes are not compatible"
+msgstr ""
+
+#: config/i386/i386.c:1628
#, c-format
msgid "`%s' attribute requires an integer constant argument"
msgstr ""
-#: config/i386/i386.c:1442
+#: config/i386/i386.c:1634
#, c-format
msgid "argument to `%s' attribute larger than %d"
msgstr ""
-#: config/i386/i386.c:2504
+#: config/i386/i386.c:2593
+msgid "SSE vector argument without SSE enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2609
+msgid "MMX vector argument without MMX enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2837
msgid "SSE vector return without SSE enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:6386
+#: config/i386/i386.c:6811
msgid "invalid UNSPEC as operand"
msgstr ""
-#: config/i386/i386.c:6648
+#: config/i386/i386.c:7069
msgid "extended registers have no high halves"
msgstr ""
-#: config/i386/i386.c:6663
+#: config/i386/i386.c:7084
msgid "unsupported operand size for extended register"
msgstr ""
-#: config/i386/i386.c:6978
+#: config/i386/i386.c:7399
msgid "operand is neither a constant nor a condition code, invalid operand code 'c'"
msgstr ""
-#: config/i386/i386.c:7024
+#: config/i386/i386.c:7445
#, c-format
msgid "invalid operand code `%c'"
msgstr ""
-#: config/i386/i386.c:7071
+#: config/i386/i386.c:7488
msgid "invalid constraints for operand"
msgstr ""
-#: config/i386/i386.c:11271
+#: config/i386/i386.c:11889
msgid "unknown insn mode"
msgstr ""
-#. @@@ better error message
-#: config/i386/i386.c:13391 config/i386/i386.c:13427
-msgid "selector must be an immediate"
-msgstr ""
-
-#. @@@ better error message
-#: config/i386/i386.c:13588 config/i386/i386.c:13622
-msgid "mask must be an immediate"
+#: config/i386/i386.c:14021 config/i386/i386.c:14057
+#, c-format
+msgid "selector must be an integer constant in the range 0..%i"
msgstr ""
-#: config/i386/i386.c:13654
+#: config/i386/i386.c:14285
msgid "shift must be an immediate"
msgstr ""
-#: config/i386/winnt.c:96
+#: config/i386/i386.c:15308
#, c-format
-msgid "function `%s' definition is marked dllimport."
-msgstr ""
+msgid "`%s' incompatible attribute ignored"
+msgstr "»%s«-inkompatibles Attribut wird ignoriert"
#: config/i386/winnt.c:104
-#, c-format
-msgid "variable `%s' definition is marked dllimport."
+msgid "%Jfunction `%D' definition is marked dllimport."
+msgstr "%JFunktionsdefinition von »%D« ist als »dllimport« markiert"
+
+#: config/i386/winnt.c:112
+msgid "%Jvariable `%D' definition is marked dllimport."
msgstr ""
-#: config/i386/winnt.c:123
-#, c-format
-msgid "external linkage required for symbol '%s' because of '%s' attribute."
+#: config/i386/winnt.c:132
+msgid "%Jexternal linkage required for symbol '%D' because of '%s' attribute."
msgstr ""
-#: config/i386/winnt.c:143
+#: config/i386/winnt.c:149
#, c-format
msgid "`%s' attribute only applies to variables"
msgstr ""
-#: config/i386/winnt.c:242
-#, c-format
-msgid "function '%s' is defined after prior declaration as dllimport: attribute ignored."
+#: config/i386/winnt.c:247
+msgid "%Jfunction '%D' is defined after prior declaration as dllimport: attribute ignored"
msgstr ""
-#: config/i386/winnt.c:252
-#, c-format
-msgid "inline function '%s' is declared as dllimport: attribute ignored."
-msgstr ""
+#: config/i386/winnt.c:258
+msgid "%Jinline function '%D' is declared as dllimport: attribute ignored."
+msgstr "%J»inline«-Funktion »%D« ist als »dllimport« deklariert: Attribute ignoriert."
-#: config/i386/winnt.c:263
-#, c-format
-msgid "definition of static data member '%s' of dllimport'd class."
+#: config/i386/winnt.c:270
+msgid "%Jdefinition of static data member '%D' of dllimport'd class."
msgstr ""
-#: config/i386/winnt.c:322
-#, c-format
-msgid "inconsistent dll linkage for '%s': dllexport assumed."
+#: config/i386/winnt.c:329
+msgid "%Jinconsistent dll linkage for '%D', dllexport assumed."
msgstr ""
-#: config/i386/winnt.c:364
+#: config/i386/winnt.c:371
#, c-format
msgid "`%s' declared as both exported to and imported from a DLL"
msgstr ""
-#: config/i386/winnt.c:373
-#, c-format
-msgid "failure in redeclaration of '%s': dllimport'd symbol lacks external linkage."
+#: config/i386/winnt.c:380
+msgid "%Jfailure in redeclaration of '%D': dllimport'd symbol lacks external linkage."
msgstr ""
-#: config/i386/winnt.c:479
-#, c-format
-msgid "'%s' %s after being referenced with dllimport linkage."
+#: config/i386/winnt.c:529
+msgid "%J'%D' defined locally after being referenced with dllimport linkage"
+msgstr ""
+
+#: config/i386/winnt.c:532
+msgid "%J'%D' redeclared without dllimport attribute after being referenced with dllimport linkage"
+msgstr ""
+
+#: config/i386/winnt.c:701
+msgid "%J'%D' causes a section type conflict"
msgstr ""
-#: config/i386/cygwin.h:45
+#: config/i386/cygming.h:40
msgid "Use the Cygwin interface"
msgstr ""
-#: config/i386/cygwin.h:46
+#: config/i386/cygming.h:41
msgid "Use the Mingw32 interface"
msgstr ""
-#: config/i386/cygwin.h:47
+#: config/i386/cygming.h:42
msgid "Create GUI application"
msgstr ""
-#: config/i386/cygwin.h:48
+#: config/i386/cygming.h:43
msgid "Don't set Windows defines"
msgstr ""
-#: config/i386/cygwin.h:49
+#: config/i386/cygming.h:44
msgid "Set Windows defines"
msgstr ""
-#: config/i386/cygwin.h:50
+#: config/i386/cygming.h:45
msgid "Create console application"
msgstr ""
-#: config/i386/cygwin.h:51 config/i386/win32.h:59
+#: config/i386/cygming.h:46
msgid "Generate code for a DLL"
msgstr ""
-#: config/i386/cygwin.h:53 config/i386/win32.h:61
+#: config/i386/cygming.h:48
msgid "Ignore dllimport for functions"
msgstr ""
-#: config/i386/cygwin.h:55
+#: config/i386/cygming.h:50
msgid "Use Mingw-specific thread support"
msgstr ""
-#: config/i386/cygwin.h:245
+#: config/i386/cygming.h:169
#, c-format
msgid "-f%s ignored for target (all code is position independent)"
msgstr ""
-#: config/i386/djgpp.h:206
+#: config/i386/djgpp.h:191
msgid "-mbnu210 is ignored (option is obsolete)"
msgstr ""
+#: config/i386/i386-interix.h:256
+msgid "ms-bitfields not supported for objc"
+msgstr "ms-Bitfelder nicht unterstützt für objc"
+
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
-#: config/i386/i386.h:306
+#: config/i386/i386.h:339
msgid "Alternate calling convention"
msgstr ""
-#: config/i386/i386.h:308 config/m68k/m68k.h:180 config/ns32k/ns32k.h:144
+#: config/i386/i386.h:341 config/m68k/m68k.h:344 config/ns32k/ns32k.h:144
msgid "Use normal calling convention"
msgstr ""
-#: config/i386/i386.h:310
+#: config/i386/i386.h:343
msgid "Align some doubles on dword boundary"
msgstr ""
-#: config/i386/i386.h:312
+#: config/i386/i386.h:345
msgid "Align doubles on word boundary"
msgstr ""
-#: config/i386/i386.h:314
+#: config/i386/i386.h:347
msgid "Uninitialized locals in .bss"
msgstr ""
-#: config/i386/i386.h:316
+#: config/i386/i386.h:349
msgid "Uninitialized locals in .data"
msgstr ""
-#: config/i386/i386.h:318 config/m68k/linux-aout.h:45 config/m68k/linux.h:50
-#: config/ns32k/ns32k.h:167
+#: config/i386/i386.h:351 config/m68k/linux.h:35 config/ns32k/ns32k.h:167
msgid "Use IEEE math for fp comparisons"
msgstr ""
-#: config/i386/i386.h:320 config/ns32k/ns32k.h:169
+#: config/i386/i386.h:353 config/ns32k/ns32k.h:169
msgid "Do not use IEEE math for fp comparisons"
msgstr ""
-#: config/i386/i386.h:322
+#: config/i386/i386.h:355
msgid "Return values of functions in FPU registers"
msgstr ""
-#: config/i386/i386.h:324
+#: config/i386/i386.h:357
msgid "Do not return values of functions in FPU registers"
msgstr ""
-#: config/i386/i386.h:326
+#: config/i386/i386.h:359
msgid "Do not generate sin, cos, sqrt for FPU"
msgstr ""
-#: config/i386/i386.h:328
+#: config/i386/i386.h:361
msgid "Generate sin, cos, sqrt for FPU"
msgstr ""
-#: config/i386/i386.h:330
+#: config/i386/i386.h:363
msgid "Omit the frame pointer in leaf functions"
msgstr ""
-#: config/i386/i386.h:333
+#: config/i386/i386.h:366
msgid "Enable stack probing"
msgstr ""
#. undocumented
#. undocumented
-#: config/i386/i386.h:338
+#: config/i386/i386.h:371
msgid "Align destination of the string operations"
msgstr ""
-#: config/i386/i386.h:340
+#: config/i386/i386.h:373
msgid "Do not align destination of the string operations"
msgstr ""
-#: config/i386/i386.h:342
+#: config/i386/i386.h:375
msgid "Inline all known string operations"
msgstr ""
-#: config/i386/i386.h:344
+#: config/i386/i386.h:377
msgid "Do not inline all known string operations"
msgstr ""
-#: config/i386/i386.h:346 config/i386/i386.h:350
+#: config/i386/i386.h:379 config/i386/i386.h:383
msgid "Use push instructions to save outgoing arguments"
msgstr ""
-#: config/i386/i386.h:348 config/i386/i386.h:352
+#: config/i386/i386.h:381 config/i386/i386.h:385
msgid "Do not use push instructions to save outgoing arguments"
msgstr ""
-#: config/i386/i386.h:354
+#: config/i386/i386.h:387
msgid "Support MMX built-in functions"
msgstr ""
-#: config/i386/i386.h:356
+#: config/i386/i386.h:389
msgid "Do not support MMX built-in functions"
msgstr ""
-#: config/i386/i386.h:358
+#: config/i386/i386.h:391
msgid "Support 3DNow! built-in functions"
msgstr ""
-#: config/i386/i386.h:360
+#: config/i386/i386.h:393
msgid "Do not support 3DNow! built-in functions"
msgstr ""
-#: config/i386/i386.h:362
+#: config/i386/i386.h:395
msgid "Support MMX and SSE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:364
+#: config/i386/i386.h:397
msgid "Do not support MMX and SSE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:366
+#: config/i386/i386.h:399
msgid "Support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:368
+#: config/i386/i386.h:401
msgid "Do not support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:370
+#: config/i386/i386.h:403
+msgid "Support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr ""
+
+#: config/i386/i386.h:405
+msgid "Do not support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr ""
+
+#: config/i386/i386.h:407
msgid "sizeof(long double) is 16"
msgstr ""
-#: config/i386/i386.h:372
+#: config/i386/i386.h:409
msgid "sizeof(long double) is 12"
msgstr ""
-#: config/i386/i386.h:374
+#: config/i386/i386.h:411
msgid "Generate 64bit x86-64 code"
msgstr ""
-#: config/i386/i386.h:376
+#: config/i386/i386.h:413
msgid "Generate 32bit i386 code"
msgstr ""
-#: config/i386/i386.h:378
+#: config/i386/i386.h:415
+msgid "Use native (MS) bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:417
+msgid "Use gcc default bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:419
msgid "Use red-zone in the x86-64 code"
msgstr ""
-#: config/i386/i386.h:380
+#: config/i386/i386.h:421
msgid "Do not use red-zone in the x86-64 code"
msgstr ""
+#: config/i386/i386.h:423
+#, c-format
+msgid "Use direct references against %gs when accessing tls data"
+msgstr ""
+
+#: config/i386/i386.h:425
+#, c-format
+msgid "Do not use direct references against %gs when accessing tls data"
+msgstr ""
+
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10526,23 +9679,24 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:409 config/rs6000/rs6000.h:393 config/sparc/sparc.h:635
+#: config/i386/i386.h:459 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437
+#: config/s390/s390.h:146 config/sparc/sparc.h:650
msgid "Schedule code for given CPU"
msgstr ""
-#: config/i386/i386.h:411
+#: config/i386/i386.h:461
msgid "Generate floating point mathematics using given instruction set"
msgstr ""
-#: config/i386/i386.h:413
+#: config/i386/i386.h:463 config/s390/s390.h:148
msgid "Generate code for given CPU"
msgstr ""
-#: config/i386/i386.h:415
+#: config/i386/i386.h:465
msgid "Number of registers used to pass integer arguments"
msgstr ""
-#. TARGET_DEFAULT is defined in sun*.h and isi.h, etc.
+#. TARGET_DEFAULT is defined in m68k-none.h, netbsd.h, etc.
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10552,97 +9706,98 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:417 config/m68k/m68k.h:263
+#: config/i386/i386.h:467 config/m68k/m68k.h:360
msgid "Loop code aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:419 config/m68k/m68k.h:265
+#: config/i386/i386.h:469 config/m68k/m68k.h:362
msgid "Jump targets are aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:421 config/m68k/m68k.h:267
+#: config/i386/i386.h:471 config/m68k/m68k.h:364
msgid "Function starts are aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:424
+#: config/i386/i386.h:474
msgid "Attempt to keep stack aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:426
+#: config/i386/i386.h:476
msgid "Branches are this expensive (1-5, arbitrary units)"
msgstr ""
-#: config/i386/i386.h:428
+#: config/i386/i386.h:478
msgid "Use given x86-64 code model"
msgstr ""
#. Undocumented.
#. Undocumented.
-#: config/i386/i386.h:434
+#: config/i386/i386.h:484
msgid "Use given assembler dialect"
msgstr ""
-#: config/i386/i386.h:436
+#: config/i386/i386.h:486
msgid "Use given thread-local storage dialect"
msgstr ""
-#: config/i386/sco5.h:297
+#: config/i386/sco5.h:292
msgid "Generate ELF output"
msgstr ""
-#: config/i386/win32.h:53
-msgid "Use Mingw32 interface"
-msgstr ""
-
-#: config/i386/win32.h:55
-msgid "Use Cygwin interface"
-msgstr ""
-
-#: config/i386/win32.h:57
-msgid "Use bare Windows interface"
-msgstr ""
-
#. If the environment variable DJDIR is not defined, then DJGPP is not installed correctly and GCC will quickly become confused with the default prefix settings. Report the problem now so the user doesn't receive deceptive "file not found" error messages later.
#. DJDIR is automatically defined by the DJGPP environment config file pointed to by the environment variable DJGPP. Examine DJGPP to try and figure out what's wrong.
-#: config/i386/xm-djgpp.h:71
+#: config/i386/xm-djgpp.h:64
msgid "environment variable DJGPP not defined"
msgstr ""
-#: config/i386/xm-djgpp.h:73
+#: config/i386/xm-djgpp.h:66
#, c-format
msgid "environment variable DJGPP points to missing file '%s'"
msgstr ""
-#: config/i386/xm-djgpp.h:76
+#: config/i386/xm-djgpp.h:69
#, c-format
msgid "environment variable DJGPP points to corrupt file '%s'"
msgstr ""
-#: config/i960/i960-c.c:66
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/i860/i860.h:60
+msgid "Generate code which uses the FPU"
+msgstr ""
+
+#: config/i860/i860.h:61 config/i860/i860.h:62
+msgid "Do not generate code which uses the FPU"
+msgstr ""
+
+#: config/i960/i960-c.c:68
msgid "sorry, not implemented: #pragma align NAME=SIZE"
msgstr ""
-#: config/i960/i960-c.c:71
+#: config/i960/i960-c.c:73
msgid "malformed #pragma align - ignored"
msgstr ""
-#: config/i960/i960-c.c:109
+#: config/i960/i960-c.c:111
msgid "sorry, not implemented: #pragma noalign NAME"
msgstr ""
-#: config/i960/i960.c:121 config/i960/i960.c:131
+#: config/i960/i960.c:134 config/i960/i960.c:144
msgid "conflicting architectures defined - using C series"
msgstr ""
-#: config/i960/i960.c:126
+#: config/i960/i960.c:139
msgid "conflicting architectures defined - using K series"
msgstr ""
-#: config/i960/i960.c:141
+#: config/i960/i960.c:154
msgid "iC2.0 and iC3.0 are incompatible - using iC3.0"
msgstr ""
-#: config/i960/i960.c:1448 config/m68k/m68k.c:559 config/rs6000/rs6000.c:9976
+#: config/i960/i960.c:1456 config/m68k/m68k.c:588 config/rs6000/rs6000.c:11296
msgid "stack limit expression is not supported"
msgstr ""
@@ -10653,394 +9808,536 @@ msgstr ""
#. An empty string NAME is used to identify the default VALUE.
#. ??? Not all ten of these architecture variations actually exist, but I
#. am not sure which are real and which aren't.
-#: config/i960/i960.h:240
+#: config/i960/i960.h:250
msgid "Generate SA code"
msgstr ""
-#: config/i960/i960.h:243
+#: config/i960/i960.h:253
msgid "Generate SB code"
msgstr ""
#. {"sc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate SC code")},
-#: config/i960/i960.h:248
+#: config/i960/i960.h:258
msgid "Generate KA code"
msgstr ""
-#: config/i960/i960.h:251
+#: config/i960/i960.h:261
msgid "Generate KB code"
msgstr ""
#. {"kc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate KC code")},
-#: config/i960/i960.h:256
+#: config/i960/i960.h:266
msgid "Generate JA code"
msgstr ""
-#: config/i960/i960.h:258
+#: config/i960/i960.h:268
msgid "Generate JD code"
msgstr ""
-#: config/i960/i960.h:261
+#: config/i960/i960.h:271
msgid "Generate JF code"
msgstr ""
-#: config/i960/i960.h:263
+#: config/i960/i960.h:273
msgid "generate RP code"
msgstr ""
-#: config/i960/i960.h:266
+#: config/i960/i960.h:276
msgid "Generate MC code"
msgstr ""
-#: config/i960/i960.h:269
+#: config/i960/i960.h:279
msgid "Generate CA code"
msgstr ""
#. {"cb", (TARGET_FLAG_NUMERICS|TARGET_FLAG_C_SERIES| TARGET_FLAG_BRANCH_PREDICT|TARGET_FLAG_CODE_ALIGN), N_("Generate CB code")}, {"cc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_C_SERIES|TARGET_FLAG_BRANCH_PREDICT| TARGET_FLAG_CODE_ALIGN), N_("Generate CC code")},
-#: config/i960/i960.h:279
+#: config/i960/i960.h:289
msgid "Generate CF code"
msgstr ""
-#: config/i960/i960.h:283 config/mips/mips.h:568 config/pa/pa.h:266
+#: config/i960/i960.h:293 config/mips/mips.h:539 config/pa/pa.h:266
msgid "Use software floating point"
msgstr ""
-#: config/i960/i960.h:285
+#: config/i960/i960.h:295
msgid "Use alternate leaf function entries"
msgstr ""
-#: config/i960/i960.h:287
+#: config/i960/i960.h:297
msgid "Do not use alternate leaf function entries"
msgstr ""
-#: config/i960/i960.h:289
+#: config/i960/i960.h:299
msgid "Perform tail call optimization"
msgstr ""
-#: config/i960/i960.h:291
+#: config/i960/i960.h:301
msgid "Do not perform tail call optimization"
msgstr ""
-#: config/i960/i960.h:293
+#: config/i960/i960.h:303
msgid "Use complex addressing modes"
msgstr ""
-#: config/i960/i960.h:295
+#: config/i960/i960.h:305
msgid "Do not use complex addressing modes"
msgstr ""
-#: config/i960/i960.h:297
+#: config/i960/i960.h:307
msgid "Align code to 8 byte boundary"
msgstr ""
-#: config/i960/i960.h:299
+#: config/i960/i960.h:309
msgid "Do not align code to 8 byte boundary"
msgstr ""
#. {"clean-linkage", (TARGET_FLAG_CLEAN_LINKAGE), N_("Force use of prototypes")}, {"no-clean-linkage", -(TARGET_FLAG_CLEAN_LINKAGE), N_("Do not force use of prototypes")},
-#: config/i960/i960.h:305 config/i960/i960.h:307
+#: config/i960/i960.h:315 config/i960/i960.h:317
msgid "Enable compatibility with iC960 v2.0"
msgstr ""
-#: config/i960/i960.h:309
+#: config/i960/i960.h:319
msgid "Enable compatibility with iC960 v3.0"
msgstr ""
-#: config/i960/i960.h:311 config/i960/i960.h:313
+#: config/i960/i960.h:321 config/i960/i960.h:323
msgid "Enable compatibility with ic960 assembler"
msgstr ""
-#: config/i960/i960.h:315
+#: config/i960/i960.h:325
msgid "Do not permit unaligned accesses"
msgstr ""
-#: config/i960/i960.h:317
+#: config/i960/i960.h:327
msgid "Permit unaligned accesses"
msgstr ""
-#: config/i960/i960.h:319
+#: config/i960/i960.h:329
msgid "Layout types like Intel's v1.3 gcc"
msgstr ""
-#: config/i960/i960.h:321
+#: config/i960/i960.h:331
msgid "Do not layout types like Intel's v1.3 gcc"
msgstr ""
-#: config/i960/i960.h:323 config/sparc/freebsd.h:80 config/sparc/linux.h:86
-#: config/sparc/linux64.h:88 config/sparc/netbsd-elf.h:238
+#: config/i960/i960.h:333 config/sparc/freebsd.h:76 config/sparc/linux.h:91
+#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215
msgid "Use 64 bit long doubles"
msgstr ""
-#: config/i960/i960.h:325
+#: config/i960/i960.h:335
msgid "Enable linker relaxation"
msgstr ""
-#: config/i960/i960.h:327
+#: config/i960/i960.h:337
msgid "Do not enable linker relaxation"
msgstr ""
-#: config/ia64/ia64-c.c:51
+#: config/ia64/ia64-c.c:52
msgid "malformed #pragma builtin"
msgstr ""
-#: config/ia64/ia64.c:4015
+#: config/ia64/ia64.c:1021 config/m32r/m32r.c:354
+#, c-format
+msgid "invalid argument of `%s' attribute"
+msgstr ""
+
+#: config/ia64/ia64.c:1033
+msgid "%Jan address area attribute cannot be specified for local variables"
+msgstr "%Jfür lokale Variablen kann kein Adressabschnittsattribut angegeben werden"
+
+#: config/ia64/ia64.c:1040
+msgid "%Jaddress area of '%s' conflicts with previous declaration"
+msgstr "%JAdressabschnitt von »%s« in Konflikt mit vorheriger Deklaration"
+
+#: config/ia64/ia64.c:1047
+msgid "%Jaddress area attribute cannot be specified for functions"
+msgstr "%JAdressabschnittsattribut kann nicht für Funktionen angegeben werden"
+
+#: config/ia64/ia64.c:4288
msgid "ia64_print_operand: unknown code"
msgstr ""
-#: config/ia64/ia64.c:4292
+#: config/ia64/ia64.c:4628
msgid "value of -mfixed-range must have form REG1-REG2"
msgstr ""
-#: config/ia64/ia64.c:4319
+#: config/ia64/ia64.c:4655
#, c-format
msgid "%s-%s is an empty range"
msgstr ""
-#: config/ia64/ia64.c:4350
+#: config/ia64/ia64.c:4703
msgid "cannot optimize floating point division for both latency and throughput"
msgstr ""
-#: config/ia64/ia64.c:4356
+#: config/ia64/ia64.c:4709
msgid "cannot optimize integer division for both latency and throughput"
msgstr ""
-#: config/ia64/ia64.c:4368
+#: config/ia64/ia64.c:4715
+msgid "cannot optimize square root for both latency and throughput"
+msgstr ""
+
+#: config/ia64/ia64.c:4721
+msgid "not yet implemented: latency-optimized inline square root"
+msgstr ""
+
+#: config/ia64/ia64.c:4733
#, c-format
msgid "bad value (%s) for -mtls-size= switch"
msgstr ""
+#: config/ia64/ia64.c:4749
+#, c-format
+msgid "bad value (%s) for -tune= switch"
+msgstr ""
+
#. This macro defines names of command options to set and clear bits in
#. `target_flags'. Its definition is an initializer with a subgrouping for
#. each command option.
-#: config/ia64/ia64.h:154
+#: config/ia64/ia64.h:172
msgid "Generate big endian code"
msgstr ""
-#: config/ia64/ia64.h:156 config/mcore/mcore.h:159
+#: config/ia64/ia64.h:174 config/mcore/mcore.h:154
msgid "Generate little endian code"
msgstr ""
-#: config/ia64/ia64.h:158
+#: config/ia64/ia64.h:176
msgid "Generate code for GNU as"
msgstr ""
-#: config/ia64/ia64.h:160
+#: config/ia64/ia64.h:178
msgid "Generate code for Intel as"
msgstr ""
-#: config/ia64/ia64.h:162
+#: config/ia64/ia64.h:180
msgid "Generate code for GNU ld"
msgstr ""
-#: config/ia64/ia64.h:164
+#: config/ia64/ia64.h:182
msgid "Generate code for Intel ld"
msgstr ""
-#: config/ia64/ia64.h:166
+#: config/ia64/ia64.h:184
msgid "Generate code without GP reg"
msgstr ""
-#: config/ia64/ia64.h:168
+#: config/ia64/ia64.h:186
msgid "Emit stop bits before and after volatile extended asms"
msgstr ""
-#: config/ia64/ia64.h:170
+#: config/ia64/ia64.h:188
msgid "Don't emit stop bits before and after volatile extended asms"
msgstr ""
-#: config/ia64/ia64.h:172
+#: config/ia64/ia64.h:190
msgid "Emit code for Itanium (TM) processor B step"
msgstr ""
-#: config/ia64/ia64.h:174
+#: config/ia64/ia64.h:192
msgid "Use in/loc/out register names"
msgstr ""
-#: config/ia64/ia64.h:176
+#: config/ia64/ia64.h:194
msgid "Disable use of sdata/scommon/sbss"
msgstr ""
-#: config/ia64/ia64.h:178
+#: config/ia64/ia64.h:196
msgid "Enable use of sdata/scommon/sbss"
msgstr ""
-#: config/ia64/ia64.h:180
+#: config/ia64/ia64.h:198
msgid "gp is constant (but save/restore gp on indirect calls)"
msgstr ""
-#: config/ia64/ia64.h:182
+#: config/ia64/ia64.h:200
msgid "Generate self-relocatable code"
msgstr ""
-#: config/ia64/ia64.h:184
+#: config/ia64/ia64.h:202
msgid "Generate inline floating point division, optimize for latency"
msgstr ""
-#: config/ia64/ia64.h:186
+#: config/ia64/ia64.h:204
msgid "Generate inline floating point division, optimize for throughput"
msgstr ""
-#: config/ia64/ia64.h:188
+#: config/ia64/ia64.h:206
msgid "Generate inline integer division, optimize for latency"
msgstr ""
-#: config/ia64/ia64.h:190
+#: config/ia64/ia64.h:208
msgid "Generate inline integer division, optimize for throughput"
msgstr ""
-#: config/ia64/ia64.h:192
+#: config/ia64/ia64.h:210
+msgid "Generate inline square root, optimize for latency"
+msgstr ""
+
+#: config/ia64/ia64.h:212
+msgid "Generate inline square root, optimize for throughput"
+msgstr ""
+
+#: config/ia64/ia64.h:214
msgid "Enable Dwarf 2 line debug info via GNU as"
msgstr ""
-#: config/ia64/ia64.h:194
+#: config/ia64/ia64.h:216
msgid "Disable Dwarf 2 line debug info via GNU as"
msgstr ""
-#: config/ia64/ia64.h:223
+#: config/ia64/ia64.h:218
+msgid "Enable earlier placing stop bits for better scheduling"
+msgstr ""
+
+#: config/ia64/ia64.h:220
+msgid "Disable earlier placing stop bits"
+msgstr ""
+
+#: config/ia64/ia64.h:265
msgid "Specify range of registers to make fixed"
msgstr ""
-#: config/ip2k/ip2k.c:1090
+#: config/ip2k/ip2k.c:1074
msgid "bad operand"
msgstr ""
-#: config/m32r/m32r.c:139
+#: config/iq2000/iq2000.c:1816
#, c-format
-msgid "bad value (%s) for -mmodel switch"
+msgid "bad value (%s) for -mcpu= switch"
msgstr ""
-#: config/m32r/m32r.c:148
+#: config/iq2000/iq2000.c:1845
#, c-format
-msgid "bad value (%s) for -msdata switch"
+msgid "The compiler does not support -march=%s."
+msgstr "Der Compiler unterstützt nicht -march=%s."
+
+#: config/iq2000/iq2000.c:2232
+#, c-format
+msgid "gp_offset (%ld) or end_offset (%ld) is less than zero."
msgstr ""
-#: config/m32r/m32r.c:319
+#: config/iq2000/iq2000.c:3023
#, c-format
-msgid "invalid argument of `%s' attribute"
+msgid "argument `%d' is not a constant"
+msgstr "Argument »%d« ist keine Konstante"
+
+#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2081
+msgid "PRINT_OPERAND_ADDRESS, null pointer"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3469
+#, c-format
+msgid "PRINT_OPERAND: Unknown punctuation '%c'"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3478 config/mips/mips.c:5457
+#: config/xtensa/xtensa.c:1935
+msgid "PRINT_OPERAND null pointer"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3547
+#, c-format
+msgid "invalid %%P operand"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8881
+#, c-format
+msgid "invalid %%p value"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3619 config/mips/mips.c:5587
+#, c-format
+msgid "invalid use of %%d, %%x, or %%X"
+msgstr ""
+
+#: config/iq2000/iq2000.h:72 config/mn10300/mn10300.h:74
+msgid "No default crt0.o"
+msgstr ""
+
+#: config/iq2000/iq2000.h:74
+msgid "Use GP relative sdata/sbss sections"
+msgstr ""
+
+#: config/iq2000/iq2000.h:76
+msgid "Don't use GP relative sdata/sbss sections"
+msgstr ""
+
+#: config/iq2000/iq2000.h:78 config/mips/mips.h:563
+msgid "Use ROM instead of RAM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:80 config/mips/mips.h:565
+msgid "Don't use ROM instead of RAM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:82 config/mips/mips.h:567
+msgid "Put uninitialized constants in ROM (needs -membedded-data)"
+msgstr ""
+
+#: config/iq2000/iq2000.h:84 config/mips/mips.h:569
+msgid "Don't put uninitialized constants in ROM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:106 config/mips/mips.h:731 config/pa/pa.h:310
+msgid "Specify CPU for scheduling purposes"
+msgstr ""
+
+#: config/iq2000/iq2000.h:108 config/mips/mips.h:733
+msgid "Specify CPU for code generation purposes"
+msgstr ""
+
+#: config/m32r/m32r.c:172
+#, c-format
+msgid "bad value (%s) for -mmodel switch"
+msgstr ""
+
+#: config/m32r/m32r.c:181
+#, c-format
+msgid "bad value (%s) for -msdata switch"
msgstr ""
-#: config/m32r/m32r.c:422
-msgid "const objects cannot go in .sdata/.sbss"
+#: config/m32r/m32r.c:188
+#, c-format
+msgid "bad value (%s) for -flush-trap=n (0=<n<=15)"
msgstr ""
-#: config/m32r/m32r.c:2256
+#: config/m32r/m32r.c:2295
#, c-format
msgid "invalid operand to %%s code"
msgstr ""
-#: config/m32r/m32r.c:2263
+#: config/m32r/m32r.c:2302
#, c-format
msgid "invalid operand to %%p code"
msgstr ""
-#: config/m32r/m32r.c:2318
+#: config/m32r/m32r.c:2357
msgid "bad insn for 'A'"
msgstr ""
-#: config/m32r/m32r.c:2370
+#: config/m32r/m32r.c:2404
#, c-format
msgid "invalid operand to %%T/%%B code"
msgstr ""
-#: config/m32r/m32r.c:2393
+#: config/m32r/m32r.c:2427
#, c-format
msgid "invalid operand to %%N code"
msgstr ""
-#: config/m32r/m32r.c:2438
+#: config/m32r/m32r.c:2460
msgid "pre-increment address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2445
+#: config/m32r/m32r.c:2467
msgid "pre-decrement address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2452
+#: config/m32r/m32r.c:2474
msgid "post-increment address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2530 config/m32r/m32r.c:2546
-#: config/rs6000/rs6000.c:12802
+#: config/m32r/m32r.c:2550 config/m32r/m32r.c:2566
+#: config/rs6000/rs6000.c:14753
msgid "bad address"
msgstr ""
-#: config/m32r/m32r.c:2551
+#: config/m32r/m32r.c:2571
msgid "lo_sum not of register"
msgstr ""
#. { "relax", TARGET_RELAX_MASK, "" }, { "no-relax", -TARGET_RELAX_MASK, "" },
-#: config/m32r/m32r.h:241
+#: config/m32r/m32r.h:277
msgid "Display compile time statistics"
msgstr ""
-#: config/m32r/m32r.h:243
+#: config/m32r/m32r.h:279
msgid "Align all loops to 32 byte boundary"
msgstr ""
-#: config/m32r/m32r.h:246
+#: config/m32r/m32r.h:282
msgid "Only issue one instruction per cycle"
msgstr ""
-#: config/m32r/m32r.h:249
+#: config/m32r/m32r.h:285
msgid "Prefer branches over conditional execution"
msgstr ""
-#: config/m32r/m32r.h:265
+#: config/m32r/m32r.h:306
msgid "Code size: small, medium or large"
msgstr ""
-#: config/m32r/m32r.h:267
+#: config/m32r/m32r.h:308
msgid "Small data area: none, sdata, use"
msgstr ""
-#: config/m68hc11/m68hc11.c:242
+#: config/m32r/m32r.h:310 config/mips/mips.h:739
+msgid "Don't call any cache flush functions"
+msgstr ""
+
+#: config/m32r/m32r.h:312 config/mips/mips.h:741
+msgid "Specify cache flush function"
+msgstr ""
+
+#: config/m32r/m32r.h:314
+msgid "Don't call any cache flush trap"
+msgstr ""
+
+#: config/m32r/m32r.h:316
+msgid "Specify cache flush trap number"
+msgstr ""
+
+#: config/m68hc11/m68hc11.c:269
#, c-format
msgid "-f%s ignored for 68HC11/68HC12 (not supported)"
msgstr ""
-#: config/m68hc11/m68hc11.c:1305
+#: config/m68hc11/m68hc11.c:1260
msgid "`trap' and `far' attributes are not compatible, ignoring `far'"
msgstr ""
-#: config/m68hc11/m68hc11.c:1311
-#, fuzzy
+#: config/m68hc11/m68hc11.c:1266
msgid "`trap' attribute is already used"
-msgstr "Attribut »%s« wird ignoriert"
+msgstr "»trap«-Attribut wird bereits verwendet"
#. !!!! SCz wrong here.
-#: config/m68hc11/m68hc11.c:3327 config/m68hc11/m68hc11.c:3733
+#: config/m68hc11/m68hc11.c:3222 config/m68hc11/m68hc11.c:3606
msgid "move insn not handled"
msgstr ""
-#: config/m68hc11/m68hc11.c:3579 config/m68hc11/m68hc11.c:3663
-#: config/m68hc11/m68hc11.c:3946
+#: config/m68hc11/m68hc11.c:3454 config/m68hc11/m68hc11.c:3538
+#: config/m68hc11/m68hc11.c:3809
msgid "invalid register in the move instruction"
msgstr ""
-#: config/m68hc11/m68hc11.c:3613
+#: config/m68hc11/m68hc11.c:3488
msgid "invalid operand in the instruction"
msgstr ""
-#: config/m68hc11/m68hc11.c:3920
+#: config/m68hc11/m68hc11.c:3783
msgid "invalid register in the instruction"
msgstr ""
-#: config/m68hc11/m68hc11.c:3953
+#: config/m68hc11/m68hc11.c:3816
msgid "operand 1 must be a hard register"
msgstr ""
-#: config/m68hc11/m68hc11.c:3970
+#: config/m68hc11/m68hc11.c:3830
msgid "invalid rotate insn"
msgstr ""
-#: config/m68hc11/m68hc11.c:4391
+#: config/m68hc11/m68hc11.c:4246
msgid "registers IX, IY and Z used in the same INSN"
msgstr ""
-#: config/m68hc11/m68hc11.c:4728 config/m68hc11/m68hc11.c:5031
+#: config/m68hc11/m68hc11.c:4583 config/m68hc11/m68hc11.c:4883
msgid "cannot do z-register replacement"
msgstr ""
-#: config/m68hc11/m68hc11.c:5094
+#: config/m68hc11/m68hc11.c:4946
msgid "invalid Z register replacement for insn"
msgstr ""
@@ -11048,55 +10345,55 @@ msgstr ""
#. pairs in braces, each pair being { "NAME", VALUE } where VALUE is the bits
#. to set or minus the bits to clear. An empty string NAME is used to
#. identify the default VALUE.
-#: config/m68hc11/m68hc11.h:172
+#: config/m68hc11/m68hc11.h:177
msgid "Compile with 16-bit integer mode"
msgstr ""
-#: config/m68hc11/m68hc11.h:174
+#: config/m68hc11/m68hc11.h:179
msgid "Compile with 32-bit integer mode"
msgstr ""
-#: config/m68hc11/m68hc11.h:176
+#: config/m68hc11/m68hc11.h:181
msgid "Auto pre/post decrement increment allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:178
+#: config/m68hc11/m68hc11.h:183
msgid "Auto pre/post decrement increment not allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:180
+#: config/m68hc11/m68hc11.h:185
msgid "Min/max instructions allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:182
+#: config/m68hc11/m68hc11.h:187
msgid "Min/max instructions not allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:184
+#: config/m68hc11/m68hc11.h:189
msgid "Use call and rtc for function calls and returns"
msgstr ""
-#: config/m68hc11/m68hc11.h:186
+#: config/m68hc11/m68hc11.h:191
msgid "Use jsr and rts for function calls and returns"
msgstr ""
-#: config/m68hc11/m68hc11.h:188
+#: config/m68hc11/m68hc11.h:193
msgid "Do not use direct addressing mode for soft registers"
msgstr ""
-#: config/m68hc11/m68hc11.h:190
+#: config/m68hc11/m68hc11.h:195
msgid "Use direct addressing mode for soft registers"
msgstr ""
-#: config/m68hc11/m68hc11.h:192 config/m68hc11/m68hc11.h:198
+#: config/m68hc11/m68hc11.h:197 config/m68hc11/m68hc11.h:203
msgid "Compile for a 68HC11"
msgstr ""
-#: config/m68hc11/m68hc11.h:194 config/m68hc11/m68hc11.h:200
+#: config/m68hc11/m68hc11.h:199 config/m68hc11/m68hc11.h:205
msgid "Compile for a 68HC12"
msgstr ""
-#: config/m68hc11/m68hc11.h:196 config/m68hc11/m68hc11.h:202
+#: config/m68hc11/m68hc11.h:201 config/m68hc11/m68hc11.h:207
msgid "Compile for a 68HCS12"
msgstr ""
@@ -11109,30 +10406,43 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/m68hc11/m68hc11.h:216
+#: config/m68hc11/m68hc11.h:221
msgid "Specify the register allocation order"
msgstr ""
-#: config/m68hc11/m68hc11.h:218
+#: config/m68hc11/m68hc11.h:223
msgid "Indicate the number of soft registers available"
msgstr ""
-#: config/m68k/m68k.c:158
+#: config/m68k/m68k.c:227
#, c-format
msgid "-malign-loops=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:169
+#: config/m68k/m68k.c:238
+msgid "-mshared-library-id= specified without -mid-shared-library"
+msgstr ""
+
+#: config/m68k/m68k.c:241
+#, c-format
+msgid "-mshared-library-id=%d is not between 0 and %d"
+msgstr ""
+
+#: config/m68k/m68k.c:255
+msgid "cannot specify both -msep-data and -mid-shared-library"
+msgstr "-msep-data und -mid-shared-library können nicht zusammen angegeben werden"
+
+#: config/m68k/m68k.c:270
#, c-format
msgid "-malign-jumps=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:180
+#: config/m68k/m68k.c:281
#, c-format
msgid "-malign-functions=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:189
+#: config/m68k/m68k.c:290
msgid "-fPIC is not currently supported on the 68000 or 68010\n"
msgstr ""
@@ -11141,503 +10451,431 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/m68k/m68k.h:162 config/m68k/m68k.h:164
+#: config/m68k/m68k.h:248 config/m68k/m68k.h:250
msgid "Generate code for a 68020"
msgstr ""
-#: config/m68k/m68k.h:169 config/m68k/m68k.h:172
+#: config/m68k/m68k.h:255 config/m68k/m68k.h:258
msgid "Generate code for a 68000"
msgstr ""
-#: config/m68k/m68k.h:174
+#: config/m68k/m68k.h:260
msgid "Use the bit-field instructions"
msgstr ""
-#: config/m68k/m68k.h:176
+#: config/m68k/m68k.h:262
msgid "Do not use the bit-field instructions"
msgstr ""
-#: config/m68k/m68k.h:178
-msgid "Use different calling convention using 'rtd'"
-msgstr ""
-
-#: config/m68k/m68k.h:182
+#: config/m68k/m68k.h:264
msgid "Consider type `int' to be 16 bits wide"
msgstr ""
-#: config/m68k/m68k.h:184
+#: config/m68k/m68k.h:266
msgid "Consider type `int' to be 32 bits wide"
msgstr ""
-#: config/m68k/m68k.h:186
-msgid "Generate code for a Sun FPA"
-msgstr ""
-
-#: config/m68k/m68k.h:189
-msgid "Do not generate code for a Sun FPA"
-msgstr ""
-
-#: config/m68k/m68k.h:191 config/m68k/m68k.h:193
-msgid "Generate code for a Sun Sky board"
-msgstr ""
-
-#: config/m68k/m68k.h:195
-msgid "Do not use Sky linkage convention"
-msgstr ""
-
-#: config/m68k/m68k.h:197
-msgid "Generate code for a 68881"
-msgstr ""
-
-#: config/m68k/m68k.h:200
+#: config/m68k/m68k.h:269
msgid "Generate code with library calls for floating point"
msgstr ""
-#: config/m68k/m68k.h:202
+#: config/m68k/m68k.h:271
msgid "Generate code for a 68040, without any new instructions"
-msgstr ""
+msgstr "Code für einen 68040 ohne neue Befehle erzeugen"
-#: config/m68k/m68k.h:205
+#: config/m68k/m68k.h:274
msgid "Generate code for a 68060, without any new instructions"
-msgstr ""
+msgstr "Code für einen 68060 ohne neue Befehle erzeugen"
-#: config/m68k/m68k.h:209
+#: config/m68k/m68k.h:278
msgid "Generate code for a 68030"
-msgstr ""
+msgstr "Code für einen 68030 erzeugen"
-#: config/m68k/m68k.h:212
+#: config/m68k/m68k.h:281
msgid "Generate code for a 68040"
-msgstr ""
+msgstr "Code für einen 68040 erzeugen"
-#: config/m68k/m68k.h:216
+#: config/m68k/m68k.h:285
msgid "Generate code for a 68060"
-msgstr ""
+msgstr "Code für einen 68060 erzeugen"
-#: config/m68k/m68k.h:221
+#: config/m68k/m68k.h:290
msgid "Generate code for a 520X"
-msgstr ""
+msgstr "Code für einen 520X erzeugen"
-#: config/m68k/m68k.h:224
+#: config/m68k/m68k.h:294
+msgid "Generate code for a 5206e"
+msgstr "Code für einen 5206e erzeugen"
+
+#: config/m68k/m68k.h:298
+msgid "Generate code for a 528x"
+msgstr "Code für einen 528x erzeugen"
+
+#: config/m68k/m68k.h:302
+msgid "Generate code for a 5307"
+msgstr "Code für einen 5307 erzeugen"
+
+#: config/m68k/m68k.h:306
+msgid "Generate code for a 5407"
+msgstr "Code für einen 5407 erzeugen"
+
+#: config/m68k/m68k.h:309
msgid "Generate code for a 68851"
-msgstr ""
+msgstr "Code für einen 68851 erzeugen"
-#: config/m68k/m68k.h:226
+#: config/m68k/m68k.h:311
msgid "Do no generate code for a 68851"
-msgstr ""
+msgstr "Code für einen 68851 erzeugen"
-#: config/m68k/m68k.h:229
+#: config/m68k/m68k.h:314
msgid "Generate code for a 68302"
-msgstr ""
+msgstr "Code für einen 68302 erzeugen"
-#: config/m68k/m68k.h:232
+#: config/m68k/m68k.h:317
msgid "Generate code for a 68332"
-msgstr ""
+msgstr "Code für einen 68332 erzeugen"
-#: config/m68k/m68k.h:236
+#: config/m68k/m68k.h:321
msgid "Generate code for a cpu32"
-msgstr ""
+msgstr "Code für eine cpu32 erzeugen"
-#: config/m68k/m68k.h:239
+#: config/m68k/m68k.h:324
msgid "Align variables on a 32-bit boundary"
msgstr ""
-#: config/m68k/m68k.h:241
+#: config/m68k/m68k.h:326
msgid "Align variables on a 16-bit boundary"
msgstr ""
-#: config/m68k/m68k.h:243
-msgid "Generate pc-relative code"
-msgstr ""
-
-#: config/m68k/m68k.h:245
-msgid "Do not use unaligned memory references"
-msgstr ""
-
-#: config/m68k/m68k.h:247
-msgid "Use unaligned memory references"
-msgstr ""
-
-#: config/m88k/m88k.c:903
-#, c-format
-msgid "internal gcc monitor: short-branch(%x)"
-msgstr ""
-
-#: config/m88k/m88k.c:2302
-msgid "internal gcc error: Can't express symbolic location"
-msgstr ""
-
-#: config/m88k/m88k.c:2517
-#, c-format
-msgid "argument #%d is a structure"
-msgstr ""
-
-#: config/m88k/m88k.c:2816
-#, c-format
-msgid "%%R not followed by %%B/C/D/E"
-msgstr ""
-
-#: config/m88k/m88k.c:2884
-#, c-format
-msgid "invalid %%x/X value"
-msgstr ""
-
-#: config/m88k/m88k.c:2901
-#, c-format
-msgid "invalid %%Q value"
-msgstr ""
-
-#: config/m88k/m88k.c:2907 config/rs6000/rs6000.c:7718
-#, c-format
-msgid "invalid %%q value"
-msgstr ""
-
-#: config/m88k/m88k.c:2913
-#, c-format
-msgid "invalid %%o value"
-msgstr ""
-
-#: config/m88k/m88k.c:2920 config/rs6000/rs6000.c:7681
-#, c-format
-msgid "invalid %%p value"
-msgstr ""
-
-#: config/m88k/m88k.c:2933 config/m88k/m88k.c:2938
-#, c-format
-msgid "invalid %%s/S value"
-msgstr ""
-
-#: config/m88k/m88k.c:2949
-#, c-format
-msgid "invalid %%P operand"
+#: config/m68k/m68k.h:328
+msgid "Enable separate data segment"
msgstr ""
-#: config/m88k/m88k.c:2980 config/romp/romp.c:690
-#, c-format
-msgid "invalid %%B value"
+#: config/m68k/m68k.h:330
+msgid "Disable separate data segment"
msgstr ""
-#: config/m88k/m88k.c:3010
-#, c-format
-msgid "invalid %%D value"
+#: config/m68k/m68k.h:332
+msgid "Enable ID based shared library"
msgstr ""
-#: config/m88k/m88k.c:3023
-#, c-format
-msgid "`%%d' operand isn't a register"
+#: config/m68k/m68k.h:334
+msgid "Disable ID based shared library"
msgstr ""
-#: config/m88k/m88k.c:3041
-msgid "operand is r0"
-msgstr ""
-
-#: config/m88k/m88k.c:3055
-msgid "operand is const_double"
-msgstr ""
-
-#: config/m88k/m88k.c:3074
-msgid "invalid code"
+#: config/m68k/m68k.h:336
+msgid "Generate pc-relative code"
msgstr ""
-#. Do any checking or such that is needed after processing the -m switches.
-#: config/m88k/m88k.h:277
-msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
+#: config/m68k/m68k.h:338
+msgid "Do not use unaligned memory references"
msgstr ""
-#: config/m88k/m88k.h:299
-#, c-format
-msgid "invalid option `-mshort-data-%s'"
+#: config/m68k/m68k.h:340
+msgid "Use unaligned memory references"
msgstr ""
-#: config/m88k/m88k.h:304
-#, c-format
-msgid "-mshort-data-%s is too large "
+#: config/m68k/m68k.h:342
+msgid "Use different calling convention using 'rtd'"
msgstr ""
-#: config/m88k/m88k.h:306
-#, c-format
-msgid "-mshort-data-%s and PIC are incompatible"
+#: config/m68k/m68k.h:366
+msgid "ID of shared library to build"
msgstr ""
-#: config/mcore/mcore.c:3078
+#: config/mcore/mcore.c:2973
#, c-format
msgid "invalid option `-mstack-increment=%s'"
msgstr ""
-#: config/mcore/mcore.h:126
+#: config/mcore/mcore.h:121
msgid "Inline constants if it can be done in 2 insns or less"
msgstr ""
-#: config/mcore/mcore.h:128
+#: config/mcore/mcore.h:123
msgid "Inline constants if it only takes 1 instruction"
msgstr ""
-#: config/mcore/mcore.h:130
+#: config/mcore/mcore.h:125
msgid "Set maximum alignment to 4"
msgstr ""
-#: config/mcore/mcore.h:132
+#: config/mcore/mcore.h:127
msgid "Set maximum alignment to 8"
msgstr ""
-#: config/mcore/mcore.h:136
+#: config/mcore/mcore.h:131
msgid "Do not use the divide instruction"
msgstr ""
-#: config/mcore/mcore.h:140
+#: config/mcore/mcore.h:135
msgid "Do not arbitrary sized immediates in bit operations"
msgstr ""
-#: config/mcore/mcore.h:142
+#: config/mcore/mcore.h:137
msgid "Always treat bit-field as int-sized"
msgstr ""
-#: config/mcore/mcore.h:146
+#: config/mcore/mcore.h:141
msgid "Force functions to be aligned to a 4 byte boundary"
msgstr ""
-#: config/mcore/mcore.h:148
+#: config/mcore/mcore.h:143
msgid "Force functions to be aligned to a 2 byte boundary"
msgstr ""
-#: config/mcore/mcore.h:150
+#: config/mcore/mcore.h:145
msgid "Emit call graph information"
msgstr ""
-#: config/mcore/mcore.h:154
+#: config/mcore/mcore.h:149
msgid "Prefer word accesses over byte accesses"
msgstr ""
-#: config/mcore/mcore.h:165
+#: config/mcore/mcore.h:160
msgid "Generate code for the M*Core M340"
msgstr ""
-#: config/mcore/mcore.h:178
+#: config/mcore/mcore.h:173
msgid "Maximum amount for a single stack increment operation"
msgstr ""
-#: config/mips/mips.c:5128
-#, c-format
-msgid "bad value (%s) for -mabi= switch"
+#: config/mips/mips.c:3115 config/xtensa/xtensa.c:992
+#: config/xtensa/xtensa.c:1024 config/xtensa/xtensa.c:1033
+msgid "bad test"
msgstr ""
-#: config/mips/mips.c:5158
+#: config/mips/mips.c:4593
#, c-format
-msgid "-mips%d conflicts with the other architecture options, which specify a MIPS%d processor"
+msgid "bad value (%s) for -mabi= switch"
msgstr ""
-#: config/mips/mips.c:5165
+#: config/mips/mips.c:4616
#, c-format
-msgid "bad value (%s) for -mips switch"
+msgid "-mips%s conflicts with the other architecture options, which specify a MIPS%d processor"
msgstr ""
-#: config/mips/mips.c:5180
+#: config/mips/mips.c:4635
#, c-format
msgid "-march=%s is not compatible with the selected ABI"
msgstr ""
-#: config/mips/mips.c:5192
+#: config/mips/mips.c:4650
msgid "-mgp64 used with a 32-bit processor"
msgstr ""
-#: config/mips/mips.c:5194
+#: config/mips/mips.c:4652
msgid "-mgp32 used with a 64-bit ABI"
msgstr ""
-#: config/mips/mips.c:5196
+#: config/mips/mips.c:4654
msgid "-mgp64 used with a 32-bit ABI"
msgstr ""
-#: config/mips/mips.c:5214 config/mips/mips.c:5216 config/mips/mips.c:5218
+#: config/mips/mips.c:4672 config/mips/mips.c:4674 config/mips/mips.c:4676
+#: config/mips/mips.c:4804
#, c-format
msgid "unsupported combination: %s"
msgstr ""
-#: config/mips/mips.c:5288
+#: config/mips/mips.c:4768
+msgid "-g is only supported using GNU as,"
+msgstr ""
+
+#: config/mips/mips.c:4770
+msgid "-g is only supported using GNU as with -mabi=32,"
+msgstr ""
+
+#: config/mips/mips.c:4771 config/pa/pa.c:353
+msgid "-g option disabled"
+msgstr ""
+
+#: config/mips/mips.c:4799
msgid "generation of Branch Likely instructions enabled, but not supported by architecture"
msgstr ""
-#: config/mips/mips.c:5299
+#: config/mips/mips.c:4816
msgid "-G is incompatible with PIC code which is the default"
msgstr ""
-#: config/mips/mips.c:5315
+#: config/mips/mips.c:4844
msgid "-membedded-pic and -mabicalls are incompatible"
msgstr ""
-#: config/mips/mips.c:5318
+#: config/mips/mips.c:4847
msgid "-G and -membedded-pic are incompatible"
msgstr ""
-#: config/mips/mips.c:5369
-#, c-format
-msgid "invalid option `entry%s'"
+#: config/mips/mips.c:4879
+msgid "non-PIC n64 with explicit relocations"
msgstr ""
-#: config/mips/mips.c:5372
-msgid "-mentry is only meaningful with -mips-16"
+#: config/mips/mips.c:5267
+msgid "mips_debugger_offset called with non stack/frame/arg pointer"
msgstr ""
-#: config/mips/mips.c:5781
+#: config/mips/mips.c:5394
#, c-format
msgid "internal error: %%) found without a %%( in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5795
+#: config/mips/mips.c:5408
#, c-format
msgid "internal error: %%] found without a %%[ in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5808
+#: config/mips/mips.c:5421
#, c-format
msgid "internal error: %%> found without a %%< in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5821
+#: config/mips/mips.c:5434
#, c-format
msgid "internal error: %%} found without a %%{ in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5835
+#: config/mips/mips.c:5448
#, c-format
msgid "PRINT_OPERAND: unknown punctuation '%c'"
msgstr ""
-#: config/mips/mips.c:5844 config/xtensa/xtensa.c:1939
-msgid "PRINT_OPERAND null pointer"
-msgstr ""
-
-#: config/mips/mips.c:5975
+#: config/mips/mips.c:5477
#, c-format
-msgid "invalid use of %%d, %%x, or %%X"
+msgid "PRINT_OPERAND, invalid insn for %%C"
msgstr ""
-#: config/mips/mips.c:6013 config/xtensa/xtensa.c:2033
-msgid "PRINT_OPERAND_ADDRESS, null pointer"
+#: config/mips/mips.c:5494
+#, c-format
+msgid "PRINT_OPERAND, invalid insn for %%N"
msgstr ""
-#: config/mips/mips.c:6242
-msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
+#: config/mips/mips.c:5503
+#, c-format
+msgid "PRINT_OPERAND, invalid insn for %%F"
msgstr ""
-#: config/mips/mips.c:6552
-msgid "can't rewind temp file"
+#: config/mips/mips.c:5512
+#, c-format
+msgid "PRINT_OPERAND, invalid insn for %%W"
msgstr ""
-#: config/mips/mips.c:6556
-msgid "can't write to output file"
+#: config/mips/mips.c:5618
+msgid "PRINT_OPERAND, invalid operand for relocation"
msgstr ""
-#: config/mips/mips.c:6559
-msgid "can't read from temp file"
+#: config/mips/mips.c:8252
+#, c-format
+msgid "can not handle inconsistent calls to `%s'"
msgstr ""
-#: config/mips/mips.c:6562
-msgid "can't close temp file"
+#: config/mips/mips.c:9258
+msgid "the cpu name must be lower case"
msgstr ""
-#: config/mips/mips.c:7003
+#: config/mips/mips.c:9280
#, c-format
-msgid "gp_offset (%ld) or end_offset (%ld) is less than zero"
+msgid "bad value (%s) for %s"
msgstr ""
-#: config/mips/mips.c:7112
+#: config/mips/mips.c:9549
#, c-format
-msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
-msgstr ""
+msgid "can't rewind temp file: %m"
+msgstr "temporäre Datei konnte nicht zurückgesetzt werden: %m"
-#: config/mips/mips.c:9335
+#: config/mips/mips.c:9553
#, c-format
-msgid "can not handle inconsistent calls to `%s'"
-msgstr ""
+msgid "can't write to output file: %m"
+msgstr "in die Ausgabedatei kann nicht geschrieben werden: %m"
-#: config/mips/mips.c:10467
-msgid "the cpu name must be lower case"
-msgstr ""
+#: config/mips/mips.c:9556
+#, c-format
+msgid "can't read from temp file: %m"
+msgstr "von der temporären Datei kann nicht gelesen werden: %m"
-#: config/mips/mips.c:10489
+#: config/mips/mips.c:9559
#, c-format
-msgid "bad value (%s) for %s"
+msgid "can't close temp file: %m"
+msgstr "die temporäre Datei kann nicht geschlossen werden: %m"
+
+#: config/mips/linux64.h:39
+msgid "Same as -mabi=32, just trickier"
msgstr ""
#. Target CPU builtins.
#. We do this here because __mips is defined below and so we can't use builtin_define_std.
#. Treat _R3000 and _R4000 like register-size defines, which is how they've historically been used.
#. Macros dependent on the C dialect.
-#. Bizzare, but needed at least for Irix.
+#. Bizarre, but needed at least for Irix.
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:528 config/mn10300/mn10300.h:64
-msgid "No default crt0.o"
-msgstr ""
-
-#: config/mips/mips.h:530
+#: config/mips/mips.h:501
msgid "Use 64-bit int type"
msgstr ""
-#: config/mips/mips.h:532
+#: config/mips/mips.h:503
msgid "Use 64-bit long type"
msgstr ""
-#: config/mips/mips.h:534
+#: config/mips/mips.h:505
msgid "Use 32-bit long type"
msgstr ""
-#: config/mips/mips.h:536
+#: config/mips/mips.h:507
msgid "Optimize lui/addiu address loads"
msgstr ""
-#: config/mips/mips.h:538
+#: config/mips/mips.h:509
msgid "Don't optimize lui/addiu address loads"
msgstr ""
-#: config/mips/mips.h:540
+#: config/mips/mips.h:511
msgid "Use MIPS as"
msgstr ""
-#: config/mips/mips.h:542
+#: config/mips/mips.h:513
msgid "Use GNU as"
msgstr ""
-#: config/mips/mips.h:544
+#: config/mips/mips.h:515
msgid "Use symbolic register names"
msgstr ""
-#: config/mips/mips.h:546
+#: config/mips/mips.h:517
msgid "Don't use symbolic register names"
msgstr ""
-#: config/mips/mips.h:548 config/mips/mips.h:550
-msgid "Use GP relative sdata/sbss sections"
+#: config/mips/mips.h:519 config/mips/mips.h:521
+msgid "Use GP relative sdata/sbss sections (now ignored)"
msgstr ""
-#: config/mips/mips.h:552 config/mips/mips.h:554
-msgid "Don't use GP relative sdata/sbss sections"
+#: config/mips/mips.h:523 config/mips/mips.h:525
+msgid "Don't use GP relative sdata/sbss sections (now ignored)"
msgstr ""
-#: config/mips/mips.h:556
-msgid "Output compiler statistics"
+#: config/mips/mips.h:527
+msgid "Output compiler statistics (now ignored)"
msgstr ""
-#: config/mips/mips.h:558
+#: config/mips/mips.h:529
msgid "Don't output compiler statistics"
msgstr ""
-#: config/mips/mips.h:560
+#: config/mips/mips.h:531
msgid "Don't optimize block moves"
msgstr ""
-#: config/mips/mips.h:562
+#: config/mips/mips.h:533
msgid "Optimize block moves"
msgstr ""
-#: config/mips/mips.h:564
+#: config/mips/mips.h:535
msgid "Use mips-tfile asm postpass"
msgstr ""
-#: config/mips/mips.h:566
+#: config/mips/mips.h:537
msgid "Don't use mips-tfile asm postpass"
msgstr ""
@@ -11647,271 +10885,237 @@ msgstr ""
#. where VALUE is the bits to set or minus the bits to clear and DOC
#. is the documentation for --help (NULL if intentionally undocumented).
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:570 config/pdp11/pdp11.h:56
+#: config/mips/mips.h:541 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:314
msgid "Use hardware floating point"
msgstr ""
-#: config/mips/mips.h:572
+#: config/mips/mips.h:543
msgid "Use 64-bit FP registers"
msgstr ""
-#: config/mips/mips.h:574
+#: config/mips/mips.h:545
msgid "Use 32-bit FP registers"
msgstr ""
-#: config/mips/mips.h:576
+#: config/mips/mips.h:547
msgid "Use 64-bit general registers"
msgstr ""
-#: config/mips/mips.h:578
+#: config/mips/mips.h:549
msgid "Use 32-bit general registers"
msgstr ""
-#: config/mips/mips.h:580
+#: config/mips/mips.h:551
msgid "Use Irix PIC"
msgstr ""
-#: config/mips/mips.h:582
+#: config/mips/mips.h:553
msgid "Don't use Irix PIC"
msgstr ""
-#: config/mips/mips.h:584
+#: config/mips/mips.h:555
msgid "Use indirect calls"
msgstr ""
-#: config/mips/mips.h:586
+#: config/mips/mips.h:557
msgid "Don't use indirect calls"
msgstr ""
-#: config/mips/mips.h:588
+#: config/mips/mips.h:559
msgid "Use embedded PIC"
msgstr ""
-#: config/mips/mips.h:590
+#: config/mips/mips.h:561
msgid "Don't use embedded PIC"
msgstr ""
-#: config/mips/mips.h:592
-msgid "Use ROM instead of RAM"
-msgstr ""
-
-#: config/mips/mips.h:594
-msgid "Don't use ROM instead of RAM"
-msgstr ""
-
-#: config/mips/mips.h:596
-msgid "Put uninitialized constants in ROM (needs -membedded-data)"
-msgstr ""
-
-#: config/mips/mips.h:598
-msgid "Don't put uninitialized constants in ROM"
-msgstr ""
-
-#. Macro to define tables used to set the flags.
-#: config/mips/mips.h:600 config/xtensa/xtensa.h:110
+#: config/mips/mips.h:571
msgid "Use big-endian byte order"
msgstr ""
-#: config/mips/mips.h:602 config/xtensa/xtensa.h:112
+#: config/mips/mips.h:573
msgid "Use little-endian byte order"
msgstr ""
-#: config/mips/mips.h:604
+#: config/mips/mips.h:575
msgid "Use single (32-bit) FP only"
msgstr ""
-#: config/mips/mips.h:606
+#: config/mips/mips.h:577
msgid "Don't use single (32-bit) FP only"
msgstr ""
-#: config/mips/mips.h:608
+#: config/mips/mips.h:579
msgid "Use multiply accumulate"
msgstr ""
-#: config/mips/mips.h:610
+#: config/mips/mips.h:581
msgid "Don't use multiply accumulate"
msgstr ""
-#: config/mips/mips.h:612 config/rs6000/rs6000.h:314
+#: config/mips/mips.h:583
msgid "Don't generate fused multiply/add instructions"
msgstr ""
-#: config/mips/mips.h:614 config/rs6000/rs6000.h:312
+#: config/mips/mips.h:585 config/rs6000/rs6000.h:330
msgid "Generate fused multiply/add instructions"
msgstr ""
-#: config/mips/mips.h:616
+#: config/mips/mips.h:587
msgid "Work around early 4300 hardware bug"
msgstr ""
-#: config/mips/mips.h:618
+#: config/mips/mips.h:589
msgid "Don't work around early 4300 hardware bug"
msgstr ""
-#: config/mips/mips.h:620
-msgid "Trap on integer divide by zero"
+#: config/mips/mips.h:591
+msgid "Work around errata for early SB-1 revision 2 cores"
msgstr ""
-#: config/mips/mips.h:622
-msgid "Don't trap on integer divide by zero"
+#: config/mips/mips.h:593
+msgid "Don't work around errata for early SB-1 revision 2 cores"
msgstr ""
-#: config/mips/mips.h:624
-msgid "Trap on integer divide overflow"
+#: config/mips/mips.h:595
+msgid "Trap on integer divide by zero"
msgstr ""
-#: config/mips/mips.h:626
-msgid "Don't trap on integer divide overflow"
+#: config/mips/mips.h:597
+msgid "Don't trap on integer divide by zero"
msgstr ""
-#: config/mips/mips.h:628
+#: config/mips/mips.h:599
msgid "Use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:630
+#: config/mips/mips.h:601
msgid "Don't use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:744 config/pa/pa.h:310
-msgid "Specify CPU for scheduling purposes"
+#: config/mips/mips.h:603
+msgid "Use NewABI-style %reloc() assembly operators"
msgstr ""
-#: config/mips/mips.h:746
-msgid "Specify CPU for code generation purposes"
+#: config/mips/mips.h:605
+msgid "Use assembler macros instead of relocation operators"
msgstr ""
-#: config/mips/mips.h:748
-msgid "Specify an ABI"
+#: config/mips/mips.h:607
+msgid "Generate mips16 code"
msgstr ""
-#: config/mips/mips.h:750
-msgid "Specify a Standard MIPS ISA"
+#: config/mips/mips.h:609
+msgid "Generate normal-mode code"
msgstr ""
-#: config/mips/mips.h:752
-msgid "Use mips16 entry/exit psuedo ops"
+#: config/mips/mips.h:611
+msgid "Lift restrictions on GOT size"
msgstr ""
-#: config/mips/mips.h:754
-msgid "Don't use MIPS16 instructions"
+#: config/mips/mips.h:613
+msgid "Do not lift restrictions on GOT size"
msgstr ""
-#: config/mips/mips.h:756
-msgid "Don't call any cache flush functions"
+#: config/mips/mips.h:735
+msgid "Specify an ABI"
msgstr ""
-#: config/mips/mips.h:758
-msgid "Specify cache flush function"
+#: config/mips/mips.h:737
+msgid "Specify a Standard MIPS ISA"
msgstr ""
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/mips/mips.h:2900
+#: config/mips/mips.h:2403
msgid "mips16 function profiling"
msgstr ""
-#: config/mmix/mmix.c:189
+#: config/mmix/mmix.c:207
#, c-format
msgid "-f%s not supported: ignored"
msgstr ""
-#: config/mmix/mmix.c:644
+#: config/mmix/mmix.c:633
#, c-format
msgid "too large function value type, needs %d registers, have only %d registers for this"
msgstr ""
-#: config/mmix/mmix.c:826
+#: config/mmix/mmix.c:803
msgid "function_profiler support for MMIX"
msgstr ""
-#: config/mmix/mmix.c:848
+#: config/mmix/mmix.c:823
msgid "MMIX Internal: Last named vararg would not fit in a register"
msgstr ""
-#: config/mmix/mmix.c:1639 config/mmix/mmix.c:1769
+#: config/mmix/mmix.c:1538 config/mmix/mmix.c:1668
msgid "MMIX Internal: Expected a CONST_INT, not this"
msgstr ""
-#: config/mmix/mmix.c:1647 config/mmix/mmix.c:1671 config/mmix/mmix.c:1787
+#: config/mmix/mmix.c:1546 config/mmix/mmix.c:1570 config/mmix/mmix.c:1686
#, c-format
msgid "MMIX Internal: Bad register: %d"
msgstr ""
-#: config/mmix/mmix.c:1718
+#: config/mmix/mmix.c:1617
msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
msgstr ""
-#: config/mmix/mmix.c:1737
+#: config/mmix/mmix.c:1636
msgid "MMIX Internal: Expected a register, not this"
msgstr ""
-#: config/mmix/mmix.c:1747
+#: config/mmix/mmix.c:1646
msgid "MMIX Internal: Expected a constant, not this"
msgstr ""
#. Presumably there's a missing case above if we get here.
-#: config/mmix/mmix.c:1779
+#: config/mmix/mmix.c:1678
#, c-format
msgid "MMIX Internal: Missing `%c' case in mmix_print_operand"
msgstr ""
#. We need the original here.
-#: config/mmix/mmix.c:1831
+#: config/mmix/mmix.c:1730
msgid "MMIX Internal: Cannot decode this operand"
msgstr ""
-#: config/mmix/mmix.c:1891
+#: config/mmix/mmix.c:1787
msgid "MMIX Internal: This is not a recognized address"
msgstr ""
-#: config/mmix/mmix.c:2082
+#: config/mmix/mmix.c:1964
#, c-format
msgid "stack frame not a multiple of 8 bytes: %d"
msgstr ""
-#: config/mmix/mmix.c:2321
+#: config/mmix/mmix.c:2203
#, c-format
msgid "stack frame not a multiple of octabyte: %d"
msgstr ""
-#: config/mmix/mmix.c:2818 config/mmix/mmix.c:2887
+#: config/mmix/mmix.c:2677 config/mmix/mmix.c:2741
#, c-format
msgid "MMIX Internal: %s is not a shiftable int"
msgstr ""
-#: config/mmix/mmix.c:3006
+#: config/mmix/mmix.c:2857
msgid "MMIX Internal: Trying to output invalidly reversed condition:"
msgstr ""
-#: config/mmix/mmix.c:3013
+#: config/mmix/mmix.c:2864
msgid "MMIX Internal: What's the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:3017
+#: config/mmix/mmix.c:2868
msgid "MMIX Internal: What is the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:3088
+#: config/mmix/mmix.c:2938
msgid "MMIX Internal: This is not a constant:"
msgstr ""
-#. For these target macros, there is no generic documentation here. You
-#. should read `Using and Porting GCC' for that. Only comments specific
-#. to the MMIX target are here.
-#.
-#. There are however references to the specific texinfo node (comments
-#. with "Node:"), so there should be little or nothing amiss. Probably
-#. the opposite, since we don't have to care about old littering and
-#. soon outdated generic comments.
-#. Node: Driver
-#. User symbols are in the same name-space as built-in symbols, but we
-#. don't need the built-in symbols, so remove those and instead apply
-#. stricter operand checking. Don't warn when expanding insns.
-#. Pass on -mset-program-start=N and -mset-data-start=M to the linker.
-#. Provide default program start 0x100 unless -mno-set-program-start.
-#. Don't do this if linking relocatably, with -r. For a final link,
-#. produce mmo, unless ELF is requested or when linking relocatably.
-#. Put unused option values here.
#: config/mmix/mmix.h:132
msgid "Set start-address of the program"
msgstr ""
@@ -11981,23 +11185,27 @@ msgstr ""
msgid "Do not generate a single exit point for each function"
msgstr ""
-#: config/mn10300/mn10300.h:59
-msgid "Work around hardware multiply bug"
+#: config/mn10300/linux.h:60 config/mn10300/mn10300.h:71
+msgid "Target the AM33 processor"
msgstr ""
-#: config/mn10300/mn10300.h:60
-msgid "Do not work around hardware multiply bug"
+#: config/mn10300/linux.h:61 config/mn10300/mn10300.h:75
+msgid "Target the AM33/2.0 processor"
msgstr ""
-#: config/mn10300/mn10300.h:61
-msgid "Target the AM33 processor"
+#: config/mn10300/linux.h:62 config/mn10300/mn10300.h:78
+msgid "Enable linker relaxations"
msgstr ""
-#: config/mn10300/mn10300.h:65
-msgid "Enable linker relaxations"
+#: config/mn10300/mn10300.h:69
+msgid "Work around hardware multiply bug"
+msgstr ""
+
+#: config/mn10300/mn10300.h:70
+msgid "Do not work around hardware multiply bug"
msgstr ""
-#: config/ns32k/ns32k.h:142 config/s390/s390.h:69
+#: config/ns32k/ns32k.h:142 config/s390/s390.h:125
msgid "Don't use hardware fp"
msgstr ""
@@ -12069,43 +11277,37 @@ msgstr ""
msgid "No \"Small register classes\" kludge"
msgstr ""
-#: config/pa/pa.c:261
+#: config/pa/pa.c:304
#, c-format
msgid ""
"unknown -mschedule= option (%s).\n"
"Valid options are 700, 7100, 7100LC, 7200, 7300, and 8000\n"
msgstr ""
-#: config/pa/pa.c:286
+#: config/pa/pa.c:329
#, c-format
msgid ""
"unknown -march= option (%s).\n"
"Valid options are 1.0, 1.1, and 2.0\n"
msgstr ""
-#: config/pa/pa.c:299
+#: config/pa/pa.c:342
msgid "PIC code generation is not supported in the portable runtime model\n"
msgstr ""
-#: config/pa/pa.c:304
+#: config/pa/pa.c:347
msgid "PIC code generation is not compatible with fast indirect calls\n"
msgstr ""
-#: config/pa/pa.c:309
+#: config/pa/pa.c:352
msgid "-g is only supported when using GAS on this processor,"
msgstr ""
-#: config/pa/pa.c:310
-msgid "-g option disabled"
-msgstr ""
-
-#: config/pa/pa-hiux.h:75 config/pa/pa-hpux.h:87 config/pa/pa-hpux7.h:81
-#: config/pa/pa64-hpux.h:25
+#: config/pa/pa-hpux.h:91 config/pa/pa64-hpux.h:25
msgid "Generate cpp defines for server IO"
msgstr ""
-#: config/pa/pa-hiux.h:76 config/pa/pa-hpux.h:88 config/pa/pa-hpux7.h:82
-#: config/pa/pa64-hpux.h:27
+#: config/pa/pa-hpux.h:92 config/pa/pa64-hpux.h:27
msgid "Generate cpp defines for workstation IO"
msgstr ""
@@ -12227,50 +11429,50 @@ msgstr ""
msgid "Assume code will be linked by HP ld"
msgstr ""
-#: config/pdp11/pdp11.h:57
+#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:316
msgid "Do not use hardware floating point"
msgstr ""
#. return float result in ac0
-#: config/pdp11/pdp11.h:59
+#: config/pdp11/pdp11.h:64
msgid "Return floating point results in ac0"
msgstr ""
-#: config/pdp11/pdp11.h:60
+#: config/pdp11/pdp11.h:65
msgid "Return floating point results in memory"
msgstr ""
#. is 11/40
-#: config/pdp11/pdp11.h:62
+#: config/pdp11/pdp11.h:67
msgid "Generate code for an 11/40"
msgstr ""
#. is 11/45
-#: config/pdp11/pdp11.h:65
+#: config/pdp11/pdp11.h:70
msgid "Generate code for an 11/45"
msgstr ""
#. is 11/10
-#: config/pdp11/pdp11.h:68
+#: config/pdp11/pdp11.h:73
msgid "Generate code for an 11/10"
msgstr ""
#. use movstrhi for bcopy
#. use 32 bit for int
-#: config/pdp11/pdp11.h:73 config/pdp11/pdp11.h:74
+#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
msgid "Use 32 bit int"
msgstr ""
-#: config/pdp11/pdp11.h:75 config/pdp11/pdp11.h:76
+#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
msgid "Use 16 bit int"
msgstr ""
#. use 32 bit for float
-#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
+#: config/pdp11/pdp11.h:83 config/pdp11/pdp11.h:84
msgid "Use 32 bit float"
msgstr ""
-#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
+#: config/pdp11/pdp11.h:85 config/pdp11/pdp11.h:86
msgid "Use 64 bit float"
msgstr ""
@@ -12278,69 +11480,53 @@ msgstr ""
#. is branching expensive - on a PDP, it's actually really cheap
#. this is just to play around and check what code gcc generates
#. split instruction and data memory?
-#: config/pdp11/pdp11.h:90
+#: config/pdp11/pdp11.h:95
msgid "Target has split I&D"
msgstr ""
-#: config/pdp11/pdp11.h:91
+#: config/pdp11/pdp11.h:96
msgid "Target does not have split I&D"
msgstr ""
#. UNIX assembler syntax?
-#: config/pdp11/pdp11.h:93
+#: config/pdp11/pdp11.h:98
msgid "Use UNIX assembler syntax"
msgstr ""
-#: config/pdp11/pdp11.h:94
+#: config/pdp11/pdp11.h:99
msgid "Use DEC assembler syntax"
msgstr ""
-#: config/romp/romp.c:717 config/rs6000/rs6000.c:7755
-#, c-format
-msgid "invalid %%S value"
+#: config/rs6000/host-darwin.c:52
+msgid "Segmentation Fault (code)"
msgstr ""
-#: config/romp/romp.c:726 config/romp/romp.c:733
-#, c-format
-msgid "invalid %%b value"
+#: config/rs6000/host-darwin.c:83
+msgid "Out of stack space.\n"
msgstr ""
-#: config/romp/romp.c:773 config/romp/romp.c:784
+#: config/rs6000/host-darwin.c:104
#, c-format
-msgid "invalid %%z value"
+msgid "Try running `%s' in the shell to raise its limit.\n"
msgstr ""
-#: config/romp/romp.c:792 config/romp/romp.c:800
-#, c-format
-msgid "invalid %%Z value"
+#: config/rs6000/host-darwin.c:117
+msgid "Segmentation Fault"
msgstr ""
-#: config/romp/romp.c:807 config/romp/romp.c:816 config/romp/romp.c:823
-#: config/rs6000/rs6000.c:7584
+#: config/rs6000/host-darwin.c:131
#, c-format
-msgid "invalid %%k value"
+msgid "While setting up signal stack: %m"
msgstr ""
-#: config/romp/romp.c:908 config/romp/romp.c:951
+#: config/rs6000/host-darwin.c:137
#, c-format
-msgid "invalid %%j value"
+msgid "While setting up signal handler: %m"
msgstr ""
-#. Perform any needed actions needed for a function that is receiving a
-#. variable number of arguments.
-#.
-#. CUM is as above.
-#.
-#. MODE and TYPE are the mode and type of the current parameter.
-#.
-#. PRETEND_SIZE is a variable that should be set to the amount of stack
-#. that must be pushed by the prolog to pretend that our caller pushed
-#. it.
-#.
-#. Normally, this macro will push all remaining incoming registers on the
-#. stack and set PRETEND_SIZE to the length of the registers pushed.
-#: config/romp/romp.h:648
-msgid "can't have varargs with -mfp-arg-in-fp-regs"
+#: config/rs6000/host-darwin.c:184
+#, c-format
+msgid "couldn't unmap pch_address_space: %m\n"
msgstr ""
#. Handle the machine specific pragma longcall. Its syntax is
@@ -12352,192 +11538,239 @@ msgstr ""
#. rs6000_default_long_calls is set to the value of TOGGLE, changing
#. whether or not new function declarations receive a longcall
#. attribute by default.
-#: config/rs6000/rs6000-c.c:44
+#: config/rs6000/rs6000-c.c:46
msgid "ignoring malformed #pragma longcall"
msgstr ""
-#: config/rs6000/rs6000-c.c:58
+#: config/rs6000/rs6000-c.c:59
msgid "missing open paren"
msgstr ""
-#: config/rs6000/rs6000-c.c:60
+#: config/rs6000/rs6000-c.c:61
msgid "missing number"
msgstr ""
-#: config/rs6000/rs6000-c.c:62
+#: config/rs6000/rs6000-c.c:63
msgid "missing close paren"
msgstr ""
-#: config/rs6000/rs6000-c.c:65
+#: config/rs6000/rs6000-c.c:66
msgid "number must be 0 or 1"
msgstr ""
-#: config/rs6000/rs6000-c.c:68
+#: config/rs6000/rs6000-c.c:69
msgid "junk at end of #pragma longcall"
msgstr ""
-#: config/rs6000/rs6000.c:592
+#: config/rs6000/rs6000.c:793
msgid "-mmultiple is not supported on little endian systems"
msgstr ""
-#: config/rs6000/rs6000.c:599
+#: config/rs6000/rs6000.c:800
msgid "-mstring is not supported on little endian systems"
msgstr ""
-#: config/rs6000/rs6000.c:623
+#: config/rs6000/rs6000.c:814
#, c-format
msgid "unknown -mdebug-%s switch"
msgstr ""
-#: config/rs6000/rs6000.c:635
+#: config/rs6000/rs6000.c:826
#, c-format
msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'"
msgstr ""
-#: config/rs6000/rs6000.c:646
+#: config/rs6000/rs6000.c:837
#, c-format
msgid "Unknown switch -mlong-double-%s"
msgstr ""
-#: config/rs6000/rs6000.c:738
+#: config/rs6000/rs6000.c:1008
#, c-format
-msgid "unknown -misel= option specified: '%s'"
+msgid "unknown -m%s= option specified: '%s'"
msgstr ""
-#: config/rs6000/rs6000.c:753
+#: config/rs6000/rs6000.c:1025
#, c-format
-msgid "unknown -mvrsave= option specified: '%s'"
+msgid "not configured for ABI: '%s'"
msgstr ""
-#: config/rs6000/rs6000.c:772
+#: config/rs6000/rs6000.c:1031
#, c-format
msgid "unknown ABI specified: '%s'"
msgstr ""
-#: config/rs6000/rs6000.c:4206
+#: config/rs6000/rs6000.c:1045
+#, c-format
+msgid "unknown -malign-XXXXX option specified: '%s'"
+msgstr ""
+
+#: config/rs6000/rs6000.c:5358
msgid "argument 1 must be a 5-bit signed literal"
msgstr ""
-#: config/rs6000/rs6000.c:4313 config/rs6000/rs6000.c:4903
+#: config/rs6000/rs6000.c:5460 config/rs6000/rs6000.c:6083
msgid "argument 2 must be a 5-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:4356
+#: config/rs6000/rs6000.c:5500
msgid "argument 1 of __builtin_altivec_predicate must be a constant"
msgstr ""
-#: config/rs6000/rs6000.c:4410
+#: config/rs6000/rs6000.c:5554
msgid "argument 1 of __builtin_altivec_predicate is out of range"
msgstr ""
-#: config/rs6000/rs6000.c:4489
+#: config/rs6000/rs6000.c:5682
msgid "argument 3 must be a 4-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:4666
+#: config/rs6000/rs6000.c:5852
#, c-format
msgid "argument to `%s' must be a 2-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:4782
+#: config/rs6000/rs6000.c:5965
msgid "argument to dss must be a 2-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:5013
+#: config/rs6000/rs6000.c:6203
msgid "argument 1 of __builtin_spe_predicate must be a constant"
msgstr ""
-#: config/rs6000/rs6000.c:5086
+#: config/rs6000/rs6000.c:6276
msgid "argument 1 of __builtin_spe_predicate is out of range"
msgstr ""
-#: config/rs6000/rs6000.c:7511
+#: config/rs6000/rs6000.c:8711
#, c-format
msgid "invalid %%f value"
msgstr ""
-#: config/rs6000/rs6000.c:7520
+#: config/rs6000/rs6000.c:8720
#, c-format
msgid "invalid %%F value"
msgstr ""
-#: config/rs6000/rs6000.c:7529
+#: config/rs6000/rs6000.c:8729
#, c-format
msgid "invalid %%G value"
msgstr ""
-#: config/rs6000/rs6000.c:7564
+#: config/rs6000/rs6000.c:8764
#, c-format
msgid "invalid %%j code"
msgstr ""
-#: config/rs6000/rs6000.c:7574
+#: config/rs6000/rs6000.c:8774
#, c-format
msgid "invalid %%J code"
msgstr ""
-#: config/rs6000/rs6000.c:7604
+#: config/rs6000/rs6000.c:8784
+#, c-format
+msgid "invalid %%k value"
+msgstr ""
+
+#: config/rs6000/rs6000.c:8804 config/xtensa/xtensa.c:1985
#, c-format
msgid "invalid %%K value"
msgstr ""
-#: config/rs6000/rs6000.c:7671
+#: config/rs6000/rs6000.c:8871
#, c-format
msgid "invalid %%O value"
msgstr ""
-#: config/rs6000/rs6000.c:7793
+#: config/rs6000/rs6000.c:8918
+#, c-format
+msgid "invalid %%q value"
+msgstr ""
+
+#: config/rs6000/rs6000.c:8962
+#, c-format
+msgid "invalid %%S value"
+msgstr ""
+
+#: config/rs6000/rs6000.c:9004
#, c-format
msgid "invalid %%T value"
msgstr ""
-#: config/rs6000/rs6000.c:7803
+#: config/rs6000/rs6000.c:9014
#, c-format
msgid "invalid %%u value"
msgstr ""
-#: config/rs6000/rs6000.c:7812
+#: config/rs6000/rs6000.c:9023 config/xtensa/xtensa.c:1955
#, c-format
msgid "invalid %%v value"
msgstr ""
-#: config/rs6000/rs6000.c:12242
+#: config/rs6000/rs6000.c:13513
msgid "no profiling of 64-bit code for this ABI"
msgstr ""
-#: config/rs6000/aix.h:160 config/rs6000/beos.h:32
+#: config/rs6000/aix.h:184 config/rs6000/beos.h:32
msgid "Always pass floating-point arguments in memory"
msgstr ""
-#: config/rs6000/aix.h:162 config/rs6000/beos.h:34
+#: config/rs6000/aix.h:186 config/rs6000/beos.h:34
msgid "Don't always pass floating-point arguments in memory"
msgstr ""
-#: config/rs6000/aix41.h:28 config/rs6000/aix43.h:32 config/rs6000/aix51.h:32
-#: config/rs6000/aix52.h:32
+#: config/rs6000/aix41.h:27 config/rs6000/aix43.h:31 config/rs6000/aix51.h:31
+#: config/rs6000/aix52.h:31
msgid "Support message passing with the Parallel Environment"
msgstr ""
-#: config/rs6000/aix43.h:28 config/rs6000/aix51.h:28 config/rs6000/aix52.h:28
+#: config/rs6000/aix43.h:27 config/rs6000/aix51.h:27 config/rs6000/aix52.h:27
msgid "Compile for 64-bit pointers"
msgstr ""
-#: config/rs6000/aix43.h:30 config/rs6000/aix51.h:30 config/rs6000/aix52.h:30
+#: config/rs6000/aix43.h:29 config/rs6000/aix51.h:29 config/rs6000/aix52.h:29
msgid "Compile for 32-bit pointers"
msgstr ""
-#: config/rs6000/aix43.h:49 config/rs6000/aix51.h:49 config/rs6000/aix52.h:49
+#: config/rs6000/aix43.h:48 config/rs6000/aix51.h:48 config/rs6000/aix52.h:48
msgid "-maix64 and POWER architecture are incompatible"
msgstr ""
-#: config/rs6000/aix43.h:54 config/rs6000/aix51.h:54 config/rs6000/aix52.h:54
+#: config/rs6000/aix43.h:53 config/rs6000/aix51.h:53 config/rs6000/aix52.h:53
msgid "-maix64 requires PowerPC64 architecture remain enabled"
msgstr ""
-#: config/rs6000/aix43.h:58 config/rs6000/aix51.h:58 config/rs6000/aix52.h:58
+#: config/rs6000/aix43.h:57 config/rs6000/aix51.h:57 config/rs6000/aix52.h:57
msgid "-maix64 required: 64-bit computation with 32-bit addressing not yet supported"
msgstr ""
+#: config/rs6000/darwin.h:64
+msgid "Generate code suitable for executables (NOT shared libs)"
+msgstr ""
+
+#. The Darwin ABI always includes AltiVec, can't be (validly) turned
+#. off.
+#: config/rs6000/darwin.h:80
+msgid "-mdynamic-no-pic overrides -fpic or -fPIC"
+msgstr ""
+
+#. Darwin doesn't support -fpic.
+#: config/rs6000/darwin.h:86
+msgid "-fpic is not supported; -fPIC assumed"
+msgstr "-fpic wird nicht unterstützt; -fPIC angenommen"
+
+#: config/rs6000/linux64.h:96
+msgid "-m64 requires a PowerPC64 cpu"
+msgstr ""
+
+#: config/rs6000/linux64.h:201
+msgid "Call mcount for profiling before a function prologue"
+msgstr ""
+
+#: config/rs6000/linux64.h:203
+msgid "Call mcount for profiling after a function prologue"
+msgstr ""
+
#. Run-time compilation parameters selecting different hardware subsets.
#.
#. Macro to define tables used to set the flags.
@@ -12545,162 +11778,198 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/rs6000/rs6000.h:240
+#: config/rs6000/rs6000.h:262
msgid "Use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:243
+#: config/rs6000/rs6000.h:265
msgid "Use POWER2 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:245
+#: config/rs6000/rs6000.h:267
msgid "Do not use POWER2 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:248
+#: config/rs6000/rs6000.h:270
msgid "Do not use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:250
+#: config/rs6000/rs6000.h:272
msgid "Use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:253
+#: config/rs6000/rs6000.h:275
msgid "Do not use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:255
+#: config/rs6000/rs6000.h:277
msgid "Use PowerPC General Purpose group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:257
-msgid "Don't use PowerPC General Purpose group optional instructions"
+#: config/rs6000/rs6000.h:279
+msgid "Do not use PowerPC General Purpose group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:259
+#: config/rs6000/rs6000.h:281
msgid "Use PowerPC Graphics group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:261
-msgid "Don't use PowerPC Graphics group optional instructions"
+#: config/rs6000/rs6000.h:283
+msgid "Do not use PowerPC Graphics group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:263
+#: config/rs6000/rs6000.h:285
msgid "Use PowerPC-64 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:265
-msgid "Don't use PowerPC-64 instruction set"
+#: config/rs6000/rs6000.h:287
+msgid "Do not use PowerPC-64 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:267
+#: config/rs6000/rs6000.h:289
msgid "Use AltiVec instructions"
msgstr ""
-#: config/rs6000/rs6000.h:269
-msgid "Don't use AltiVec instructions"
+#: config/rs6000/rs6000.h:291
+msgid "Do not use AltiVec instructions"
msgstr ""
-#: config/rs6000/rs6000.h:271
+#: config/rs6000/rs6000.h:293
msgid "Use new mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.h:273
+#: config/rs6000/rs6000.h:295
msgid "Use old mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.h:276
+#: config/rs6000/rs6000.h:298
msgid "Put everything in the regular TOC"
msgstr ""
-#: config/rs6000/rs6000.h:278
+#: config/rs6000/rs6000.h:300
msgid "Place floating point constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:280
-msgid "Don't place floating point constants in TOC"
+#: config/rs6000/rs6000.h:302
+msgid "Do not place floating point constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:282
+#: config/rs6000/rs6000.h:304
msgid "Place symbol+offset constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:284
-msgid "Don't place symbol+offset constants in TOC"
+#: config/rs6000/rs6000.h:306
+msgid "Do not place symbol+offset constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:290
+#: config/rs6000/rs6000.h:312
msgid "Place variable addresses in the regular TOC"
msgstr ""
-#: config/rs6000/rs6000.h:296
+#: config/rs6000/rs6000.h:318
msgid "Generate load/store multiple instructions"
msgstr ""
-#: config/rs6000/rs6000.h:298
+#: config/rs6000/rs6000.h:320
msgid "Do not generate load/store multiple instructions"
msgstr ""
-#: config/rs6000/rs6000.h:302
+#: config/rs6000/rs6000.h:322
msgid "Generate string instructions for block moves"
msgstr ""
-#: config/rs6000/rs6000.h:304
+#: config/rs6000/rs6000.h:324
msgid "Do not generate string instructions for block moves"
msgstr ""
-#: config/rs6000/rs6000.h:308
+#: config/rs6000/rs6000.h:326
msgid "Generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.h:310
+#: config/rs6000/rs6000.h:328
msgid "Do not generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.h:318
-msgid "Don't schedule the start and end of the procedure"
+#: config/rs6000/rs6000.h:332
+msgid "Do not generate fused multiply/add instructions"
msgstr ""
-#: config/rs6000/rs6000.h:324
+#: config/rs6000/rs6000.h:336
+msgid "Do not schedule the start and end of the procedure"
+msgstr ""
+
+#: config/rs6000/rs6000.h:342
msgid "Return all structures in memory (AIX default)"
msgstr ""
-#: config/rs6000/rs6000.h:326
+#: config/rs6000/rs6000.h:344
msgid "Return small structures in registers (SVR4 default)"
msgstr ""
-#: config/rs6000/rs6000.h:391 config/sparc/sparc.h:633
+#: config/rs6000/rs6000.h:350
+msgid "Generate single field mfcr instruction"
+msgstr ""
+
+#: config/rs6000/rs6000.h:352
+msgid "Do not generate single field mfcr instruction"
+msgstr ""
+
+#: config/rs6000/rs6000.h:435 config/sparc/sparc.h:648
msgid "Use features of and schedule code for given CPU"
msgstr ""
-#: config/rs6000/rs6000.h:394
+#: config/rs6000/rs6000.h:438
msgid "Enable debug output"
msgstr ""
-#: config/rs6000/rs6000.h:396
+#: config/rs6000/rs6000.h:440
msgid "Select full, part, or no traceback table"
msgstr ""
-#: config/rs6000/rs6000.h:397
+#: config/rs6000/rs6000.h:441
msgid "Specify ABI to use"
msgstr ""
-#: config/rs6000/rs6000.h:399
+#: config/rs6000/rs6000.h:443
msgid "Specify size of long double (64 or 128 bits)"
msgstr ""
-#: config/rs6000/rs6000.h:401
+#: config/rs6000/rs6000.h:445
msgid "Specify yes/no if isel instructions should be generated"
msgstr ""
-#: config/rs6000/rs6000.h:403
+#: config/rs6000/rs6000.h:447
+msgid "Specify yes/no if SPE SIMD instructions should be generated"
+msgstr ""
+
+#: config/rs6000/rs6000.h:449
+msgid "Specify yes/no if using floating point in the GPRs"
+msgstr ""
+
+#: config/rs6000/rs6000.h:451
msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec"
msgstr ""
-#: config/rs6000/rs6000.h:405
+#: config/rs6000/rs6000.h:453
msgid "Avoid all range limits on call instructions"
msgstr ""
+#: config/rs6000/rs6000.h:456
+msgid "Determine which dependences between insns are considered costly"
+msgstr ""
+
+#: config/rs6000/rs6000.h:458
+msgid "Specify which post scheduling nop insertion scheme to apply"
+msgstr ""
+
+#: config/rs6000/rs6000.h:460
+msgid "Specify alignment of structure fields default/natural"
+msgstr ""
+
+#: config/rs6000/rs6000.h:462
+msgid "Specify scheduling priority for dispatch slot restricted insns"
+msgstr ""
+
#. Definitions for __builtin_return_address and __builtin_frame_address.
#. __builtin_return_address (0) should give link register (65), enable
#. this.
@@ -12713,7 +11982,7 @@ msgstr ""
#. Number of bytes into the frame return addresses can be found. See
#. rs6000_stack_info in rs6000.c for more information on how the different
#. abi's store the return address.
-#: config/rs6000/rs6000.h:1884
+#: config/rs6000/rs6000.h:1926
msgid "RETURN_ADDRESS_OFFSET not supported"
msgstr ""
@@ -12725,91 +11994,98 @@ msgstr ""
msgid "Select method for sdata handling"
msgstr ""
-#: config/rs6000/sysv4.h:103
+#: config/rs6000/sysv4.h:100
msgid "Align to the base type of the bit-field"
msgstr ""
-#: config/rs6000/sysv4.h:105
+#: config/rs6000/sysv4.h:102
msgid "Don't align to the base type of the bit-field"
msgstr ""
-#: config/rs6000/sysv4.h:107
+#: config/rs6000/sysv4.h:104
msgid "Don't assume that unaligned accesses are handled by the system"
msgstr ""
-#: config/rs6000/sysv4.h:109
+#: config/rs6000/sysv4.h:106
msgid "Assume that unaligned accesses are handled by the system"
msgstr ""
-#: config/rs6000/sysv4.h:111 config/rs6000/sysv4.h:115
+#: config/rs6000/sysv4.h:108 config/rs6000/sysv4.h:112
msgid "Produce code relocatable at runtime"
msgstr ""
-#: config/rs6000/sysv4.h:113 config/rs6000/sysv4.h:117
+#: config/rs6000/sysv4.h:110 config/rs6000/sysv4.h:114
msgid "Don't produce code relocatable at runtime"
msgstr ""
-#: config/rs6000/sysv4.h:119 config/rs6000/sysv4.h:121
+#: config/rs6000/sysv4.h:116 config/rs6000/sysv4.h:118
msgid "Produce little endian code"
msgstr ""
-#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:125
+#: config/rs6000/sysv4.h:120 config/rs6000/sysv4.h:122
msgid "Produce big endian code"
msgstr ""
-#: config/rs6000/sysv4.h:126 config/rs6000/sysv4.h:127
-#: config/rs6000/sysv4.h:128 config/rs6000/sysv4.h:129
-#: config/rs6000/sysv4.h:130 config/rs6000/sysv4.h:131
-#: config/rs6000/sysv4.h:141 config/rs6000/sysv4.h:142
-#: config/rs6000/sysv4.h:153 config/rs6000/sysv4.h:155
-#: config/rs6000/sysv4.h:157
+#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:124
+#: config/rs6000/sysv4.h:125 config/rs6000/sysv4.h:126
+#: config/rs6000/sysv4.h:127 config/rs6000/sysv4.h:128
+#: config/rs6000/sysv4.h:138 config/rs6000/sysv4.h:139
+#: config/rs6000/sysv4.h:151 config/rs6000/sysv4.h:157
msgid "no description yet"
msgstr ""
-#: config/rs6000/sysv4.h:132
+#: config/rs6000/sysv4.h:129
msgid "Use EABI"
msgstr ""
-#: config/rs6000/sysv4.h:133
+#: config/rs6000/sysv4.h:130
msgid "Don't use EABI"
msgstr ""
-#: config/rs6000/sysv4.h:136
+#: config/rs6000/sysv4.h:133
msgid "Do not allow bit-fields to cross word boundaries"
msgstr ""
-#: config/rs6000/sysv4.h:138
+#: config/rs6000/sysv4.h:135
msgid "Use alternate register names"
msgstr ""
-#: config/rs6000/sysv4.h:140
+#: config/rs6000/sysv4.h:137
msgid "Don't use alternate register names"
msgstr ""
-#: config/rs6000/sysv4.h:144
+#: config/rs6000/sysv4.h:141
msgid "Link with libsim.a, libc.a and sim-crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:146
+#: config/rs6000/sysv4.h:143
msgid "Link with libads.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:148
+#: config/rs6000/sysv4.h:145
msgid "Link with libyk.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:150
+#: config/rs6000/sysv4.h:147
msgid "Link with libmvme.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:152
+#: config/rs6000/sysv4.h:149
msgid "Set the PPC_EMB bit in the ELF flags header"
msgstr ""
-#: config/rs6000/sysv4.h:154
+#: config/rs6000/sysv4.h:150
msgid "Use the WindISS simulator"
msgstr ""
+#: config/rs6000/sysv4.h:153
+msgid "Generate 64-bit code"
+msgstr ""
+
+#: config/rs6000/sysv4.h:155
+msgid "Generate 32-bit code"
+msgstr ""
+
#. Sometimes certain combinations of command options do not make sense
#. on a particular target machine. You can define a macro
#. `OVERRIDE_OPTIONS' to take account of this. This macro, if
@@ -12833,360 +12109,426 @@ msgstr ""
msgid "-mrelocatable and -msdata=%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:255
+#: config/rs6000/sysv4.h:256
#, c-format
msgid "-f%s and -msdata=%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:264
+#: config/rs6000/sysv4.h:265
#, c-format
msgid "-msdata=%s and -mcall-%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:273
+#: config/rs6000/sysv4.h:274
msgid "-mrelocatable and -mno-minimal-toc are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:279
+#: config/rs6000/sysv4.h:280
#, c-format
msgid "-mrelocatable and -mcall-%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:286
+#: config/rs6000/sysv4.h:287
#, c-format
msgid "-fPIC and -mcall-%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:293
+#: config/rs6000/sysv4.h:294
msgid "-mcall-aixdesc must be big endian"
msgstr ""
-#: config/s390/s390.c:3063
+#: config/rs6000/sysv4.h:309
+#, c-format
+msgid "-m%s not supported in this configuration"
+msgstr "-m%s wird in dieser Konfiguration nicht unterstützt"
+
+#: config/s390/s390.c:926
+#, c-format
+msgid "Unknown cpu used in -march=%s."
+msgstr ""
+
+#: config/s390/s390.c:945
+#, c-format
+msgid "Unknown cpu used in -mtune=%s."
+msgstr ""
+
+#: config/s390/s390.c:950
+#, c-format
+msgid "z/Architecture mode not supported on %s."
+msgstr ""
+
+#: config/s390/s390.c:952
+msgid "64-bit ABI not supported in ESA/390 mode."
+msgstr ""
+
+#: config/s390/s390.c:3337
msgid "invalid UNSPEC as operand (1)"
msgstr ""
-#: config/s390/s390.c:3123
+#: config/s390/s390.c:3385
msgid "invalid UNSPEC as operand (2)"
msgstr ""
-#: config/s390/s390.c:3129
+#: config/s390/s390.c:3391
msgid "UNKNOWN in s390_output_symbolic_const !?"
msgstr ""
-#: config/s390/s390.c:3147
+#: config/s390/s390.c:3407
msgid "Cannot decompose address."
msgstr ""
-#: config/s390/s390.c:3308
+#: config/s390/s390.c:3578
msgid "UNKNOWN in print_operand !?"
msgstr ""
-#: config/s390/s390.c:4961
+#: config/s390/s390.c:5301
msgid "Total size of local variables exceeds architecture limit."
msgstr ""
-#: config/s390/s390.h:70
+#: config/s390/s390.h:126
msgid "Set backchain"
msgstr ""
-#: config/s390/s390.h:71
+#: config/s390/s390.h:127
msgid "Don't set backchain (faster, but debug harder"
msgstr ""
-#: config/s390/s390.h:72
+#: config/s390/s390.h:128
msgid "Use bras for executable < 64k"
msgstr ""
-#: config/s390/s390.h:73
+#: config/s390/s390.h:129
msgid "Don't use bras"
msgstr ""
-#: config/s390/s390.h:74
+#: config/s390/s390.h:130
msgid "Additional debug prints"
msgstr ""
-#: config/s390/s390.h:75
+#: config/s390/s390.h:131
msgid "Don't print additional debug prints"
msgstr ""
-#: config/s390/s390.h:76
-msgid "64 bit mode"
+#: config/s390/s390.h:132
+msgid "64 bit ABI"
msgstr ""
-#: config/s390/s390.h:77
-msgid "31 bit mode"
+#: config/s390/s390.h:133
+msgid "31 bit ABI"
msgstr ""
-#: config/s390/s390.h:78
+#: config/s390/s390.h:134
+msgid "z/Architecture"
+msgstr ""
+
+#: config/s390/s390.h:135
+msgid "ESA/390 architecture"
+msgstr ""
+
+#: config/s390/s390.h:136
msgid "mvcle use"
msgstr ""
-#: config/s390/s390.h:79
+#: config/s390/s390.h:137
msgid "mvc&ex"
msgstr ""
-#: config/sh/sh.c:5137
+#: config/s390/s390.h:138
+msgid "enable tpf OS code"
+msgstr ""
+
+#: config/s390/s390.h:139
+msgid "disable tpf OS code"
+msgstr ""
+
+#: config/s390/s390.h:140
+msgid "disable fused multiply/add instructions"
+msgstr ""
+
+#: config/s390/s390.h:141
+msgid "enable fused multiply/add instructions"
+msgstr ""
+
+#: config/sh/sh.c:5841
msgid "__builtin_saveregs not supported by this subtarget"
msgstr ""
-#: config/sh/sh.c:5687
+#: config/sh/sh.c:6743
msgid "attribute interrupt_handler is not compatible with -m5-compact"
msgstr ""
#. The sp_switch attribute only has meaning for interrupt functions.
-#: config/sh/sh.c:5713 config/sh/sh.c:5752
+#. The trap_exit attribute only has meaning for interrupt functions.
+#: config/sh/sh.c:6765 config/sh/sh.c:6800
#, c-format
msgid "`%s' attribute only applies to interrupt functions"
msgstr ""
#. The argument must be a constant string.
-#: config/sh/sh.c:5720
+#: config/sh/sh.c:6772
#, c-format
msgid "`%s' attribute argument not a string constant"
msgstr ""
#. The argument must be a constant integer.
-#: config/sh/sh.c:5759
+#: config/sh/sh.c:6807
#, c-format
msgid "`%s' attribute argument not an integer constant"
msgstr ""
#. There are no delay slots on SHmedia.
#. Relaxation isn't yet supported for SHmedia
-#: config/sh/sh.h:437
+#. -fprofile-arcs needs a working libgcov . In unified tree configurations with newlib, this requires to configure with --with-newlib --with-headers. But there is no way to check here we have a working libgcov, so just assume that we have.
+#: config/sh/sh.h:478
msgid "Profiling is not supported on this target."
msgstr ""
-#: config/sparc/sparc.c:329
+#: config/sparc/sparc.c:360
#, c-format
msgid "%s is not supported by this configuration"
msgstr ""
-#: config/sparc/sparc.c:336
+#: config/sparc/sparc.c:367
msgid "-mlong-double-64 not allowed with -m64"
msgstr ""
-#: config/sparc/sparc.c:361
+#: config/sparc/sparc.c:392
msgid "-mcmodel= is not supported on 32 bit systems"
msgstr ""
-#: config/sparc/sparc.c:6341 config/sparc/sparc.c:6347
+#: config/sparc/sparc.c:6793 config/sparc/sparc.c:6799
#, c-format
msgid "invalid %%Y operand"
msgstr ""
-#: config/sparc/sparc.c:6417
+#: config/sparc/sparc.c:6869
#, c-format
msgid "invalid %%A operand"
msgstr ""
-#: config/sparc/sparc.c:6427
+#: config/sparc/sparc.c:6879
#, c-format
msgid "invalid %%B operand"
msgstr ""
-#: config/sparc/sparc.c:6466
+#: config/sparc/sparc.c:6918
#, c-format
msgid "invalid %%c operand"
msgstr ""
-#: config/sparc/sparc.c:6467
+#: config/sparc/sparc.c:6919
#, c-format
msgid "invalid %%C operand"
msgstr ""
-#: config/sparc/sparc.c:6488
+#: config/sparc/sparc.c:6940
#, c-format
msgid "invalid %%d operand"
msgstr ""
-#: config/sparc/sparc.c:6489
+#: config/sparc/sparc.c:6941
#, c-format
msgid "invalid %%D operand"
msgstr ""
-#: config/sparc/sparc.c:6505
+#: config/sparc/sparc.c:6957
#, c-format
msgid "invalid %%f operand"
msgstr ""
-#: config/sparc/sparc.c:6519
+#: config/sparc/sparc.c:6971
#, c-format
msgid "invalid %%s operand"
msgstr ""
-#: config/sparc/sparc.c:6573
+#: config/sparc/sparc.c:7025
msgid "long long constant not a valid immediate operand"
msgstr ""
-#: config/sparc/sparc.c:6576
+#: config/sparc/sparc.c:7028
msgid "floating point constant not a valid immediate operand"
msgstr ""
-#: config/sparc/freebsd.h:81 config/sparc/linux.h:87 config/sparc/linux64.h:89
-#: config/sparc/netbsd-elf.h:239
+#: config/sparc/freebsd.h:77 config/sparc/linux.h:92
+#: config/sparc/linux64.h:104 config/sparc/netbsd-elf.h:216
msgid "Use 128 bit long doubles"
msgstr ""
-#: config/sparc/sp64-elf.h:84 config/sparc/splet.h:29
+#: config/sparc/sp64-elf.h:90
msgid "Generate code for big endian"
msgstr ""
-#: config/sparc/sp64-elf.h:85 config/sparc/splet.h:30
+#: config/sparc/sp64-elf.h:91
msgid "Generate code for little endian"
msgstr ""
-#: config/sparc/sp86x-aout.h:51 config/sparc/sp86x-elf.h:65
+#: config/sparc/sp86x-elf.h:68
msgid "Use little-endian byte order for data"
msgstr ""
-#: config/sparc/sparc.h:532
+#: config/sparc/sparc.h:547
msgid "Assume possible double misalignment"
msgstr ""
-#: config/sparc/sparc.h:534
+#: config/sparc/sparc.h:549
msgid "Assume all doubles are aligned"
msgstr ""
-#: config/sparc/sparc.h:536
+#: config/sparc/sparc.h:551
msgid "Pass -assert pure-text to linker"
msgstr ""
-#: config/sparc/sparc.h:538
+#: config/sparc/sparc.h:553
msgid "Do not pass -assert pure-text to linker"
msgstr ""
-#: config/sparc/sparc.h:540
+#: config/sparc/sparc.h:555
msgid "Use flat register window model"
msgstr ""
-#: config/sparc/sparc.h:542
+#: config/sparc/sparc.h:557
msgid "Do not use flat register window model"
msgstr ""
-#: config/sparc/sparc.h:544
+#: config/sparc/sparc.h:559
msgid "Use ABI reserved registers"
msgstr ""
-#: config/sparc/sparc.h:546
+#: config/sparc/sparc.h:561
msgid "Do not use ABI reserved registers"
msgstr ""
-#: config/sparc/sparc.h:548
+#: config/sparc/sparc.h:563
msgid "Use hardware quad fp instructions"
msgstr ""
-#: config/sparc/sparc.h:550
+#: config/sparc/sparc.h:565
msgid "Do not use hardware quad fp instructions"
msgstr ""
-#: config/sparc/sparc.h:552
+#: config/sparc/sparc.h:567
msgid "Compile for v8plus ABI"
msgstr ""
-#: config/sparc/sparc.h:554
+#: config/sparc/sparc.h:569
msgid "Do not compile for v8plus ABI"
msgstr ""
-#: config/sparc/sparc.h:556
+#: config/sparc/sparc.h:571
msgid "Utilize Visual Instruction Set"
msgstr ""
-#: config/sparc/sparc.h:558
+#: config/sparc/sparc.h:573
msgid "Do not utilize Visual Instruction Set"
msgstr ""
#. ??? These are deprecated, coerced to -mcpu=. Delete in 2.9.
-#: config/sparc/sparc.h:561
+#: config/sparc/sparc.h:576
msgid "Optimize for Cypress processors"
msgstr ""
-#: config/sparc/sparc.h:563
+#: config/sparc/sparc.h:578
msgid "Optimize for SPARCLite processors"
msgstr ""
-#: config/sparc/sparc.h:565
+#: config/sparc/sparc.h:580
msgid "Optimize for F930 processors"
msgstr ""
-#: config/sparc/sparc.h:567
+#: config/sparc/sparc.h:582
msgid "Optimize for F934 processors"
msgstr ""
-#: config/sparc/sparc.h:569
+#: config/sparc/sparc.h:584
msgid "Use V8 SPARC ISA"
msgstr ""
-#: config/sparc/sparc.h:571
+#: config/sparc/sparc.h:586
msgid "Optimize for SuperSPARC processors"
msgstr ""
#. End of deprecated options.
-#: config/sparc/sparc.h:574
+#: config/sparc/sparc.h:589
msgid "Pointers are 64-bit"
msgstr ""
-#: config/sparc/sparc.h:576
+#: config/sparc/sparc.h:591
msgid "Pointers are 32-bit"
msgstr ""
-#: config/sparc/sparc.h:578
+#: config/sparc/sparc.h:593
msgid "Use 32-bit ABI"
msgstr ""
-#: config/sparc/sparc.h:580
+#: config/sparc/sparc.h:595
msgid "Use 64-bit ABI"
msgstr ""
-#: config/sparc/sparc.h:582
+#: config/sparc/sparc.h:597
msgid "Use stack bias"
msgstr ""
-#: config/sparc/sparc.h:584
+#: config/sparc/sparc.h:599
msgid "Do not use stack bias"
msgstr ""
-#: config/sparc/sparc.h:586
+#: config/sparc/sparc.h:601
msgid "Use structs on stronger alignment for double-word copies"
msgstr ""
-#: config/sparc/sparc.h:588
+#: config/sparc/sparc.h:603
msgid "Do not use structs on stronger alignment for double-word copies"
msgstr ""
-#: config/sparc/sparc.h:590
+#: config/sparc/sparc.h:605
msgid "Optimize tail call instructions in assembler and linker"
msgstr ""
-#: config/sparc/sparc.h:592
+#: config/sparc/sparc.h:607
msgid "Do not optimize tail call instructions in assembler or linker"
msgstr ""
-#: config/sparc/sparc.h:637
+#: config/sparc/sparc.h:652
msgid "Use given SPARC code model"
msgstr ""
-#: config/stormy16/stormy16.c:1192
+#: config/stormy16/stormy16.c:526
+msgid "Constant halfword load operand out of range."
+msgstr ""
+
+#: config/stormy16/stormy16.c:536
+msgid "Constant arithmetic operand out of range."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1027
+msgid "Local variable memory requirements exceed capacity."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1193
+msgid "function_profiler support"
+msgstr ""
+
+#: config/stormy16/stormy16.c:1292
msgid "cannot use va_start in interrupt function"
msgstr ""
-#: config/stormy16/stormy16.c:1552
+#: config/stormy16/stormy16.c:1624
msgid "`B' operand is not constant"
msgstr ""
-#: config/stormy16/stormy16.c:1558
+#: config/stormy16/stormy16.c:1630
msgid "`B' operand has multiple bits set"
msgstr ""
-#: config/stormy16/stormy16.c:1585
+#: config/stormy16/stormy16.c:1656
msgid "`o' operand is not constant"
msgstr ""
-#: config/stormy16/stormy16.c:1600
+#: config/stormy16/stormy16.c:1670
msgid "xstormy16_print_operand: unknown code"
msgstr ""
-#: config/stormy16/stormy16.c:1650
+#: config/stormy16/stormy16.c:1716
#, c-format
msgid "switch statement of size %lu entries too large"
msgstr ""
@@ -13207,105 +12549,104 @@ msgstr ""
msgid "cannot set interrupt attribute: no such identifier"
msgstr ""
-#: config/v850/v850-c.c:148
+#: config/v850/v850-c.c:147
msgid "junk at end of #pragma ghs section"
msgstr ""
-#: config/v850/v850-c.c:165
+#: config/v850/v850-c.c:164
#, c-format
msgid "unrecognized section name \"%s\""
msgstr ""
-#: config/v850/v850-c.c:180
+#: config/v850/v850-c.c:179
msgid "malformed #pragma ghs section"
msgstr ""
-#: config/v850/v850-c.c:200
+#: config/v850/v850-c.c:198
msgid "junk at end of #pragma ghs interrupt"
msgstr ""
-#: config/v850/v850-c.c:212
+#: config/v850/v850-c.c:209
msgid "junk at end of #pragma ghs starttda"
msgstr ""
-#: config/v850/v850-c.c:224
+#: config/v850/v850-c.c:220
msgid "junk at end of #pragma ghs startsda"
msgstr ""
-#: config/v850/v850-c.c:236
+#: config/v850/v850-c.c:231
msgid "junk at end of #pragma ghs startzda"
msgstr ""
-#: config/v850/v850-c.c:248
+#: config/v850/v850-c.c:242
msgid "junk at end of #pragma ghs endtda"
msgstr ""
-#: config/v850/v850-c.c:260
+#: config/v850/v850-c.c:253
msgid "junk at end of #pragma ghs endsda"
msgstr ""
-#: config/v850/v850-c.c:272
+#: config/v850/v850-c.c:264
msgid "junk at end of #pragma ghs endzda"
msgstr ""
-#: config/v850/v850.c:129
+#: config/v850/v850.c:142
#, c-format
msgid "%s=%s is not numeric"
msgstr ""
-#: config/v850/v850.c:136
+#: config/v850/v850.c:149
#, c-format
msgid "%s=%s is too large"
msgstr ""
-#: config/v850/v850.c:302
+#: config/v850/v850.c:301
msgid "const_double_split got a bad insn:"
msgstr ""
-#: config/v850/v850.c:837
+#: config/v850/v850.c:866
msgid "output_move_single:"
msgstr ""
-#: config/v850/v850.c:2217
-msgid "a data area attribute cannot be specified for local variables"
-msgstr ""
+#: config/v850/v850.c:2209
+msgid "%Jdata area attributes cannot be specified for local variables"
+msgstr "%JDatenabschnittsattribute können nicht für lokale Variablen angegeben werden"
-#: config/v850/v850.c:2228
-#, c-format
-msgid "data area of '%s' conflicts with previous declaration"
-msgstr ""
+#: config/v850/v850.c:2220
+msgid "%Jdata area of '%D' conflicts with previous declaration"
+msgstr "%JDatenabschnitt von »%D« in Konflikt mit vorheriger Deklaration"
-#: config/v850/v850.c:2447
+#: config/v850/v850.c:2419
#, c-format
msgid "bogus JR construction: %d\n"
msgstr ""
-#: config/v850/v850.c:2468 config/v850/v850.c:2670
+#: config/v850/v850.c:2440 config/v850/v850.c:2643
#, c-format
msgid "bad amount of stack space removal: %d"
msgstr ""
-#: config/v850/v850.c:2646
+#: config/v850/v850.c:2619
#, c-format
msgid "bogus JARL construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3026
+#: config/v850/v850.c:2989
#, c-format
msgid "Bogus DISPOSE construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3048
+#: config/v850/v850.c:3011
#, c-format
msgid "Too much stack space to dispose of: %d"
msgstr ""
-#: config/v850/v850.c:3224
+#: config/v850/v850.c:3184
#, c-format
msgid "Bogus PREPEARE construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3246
+#: config/v850/v850.c:3206
#, c-format
msgid "Too much stack space to prepare: %d"
msgstr ""
@@ -13315,796 +12656,738 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/v850/v850.h:158
+#: config/v850/v850.h:174
msgid "Support Green Hills ABI"
msgstr ""
-#: config/v850/v850.h:161
+#: config/v850/v850.h:177
msgid "Prohibit PC relative function calls"
msgstr ""
-#: config/v850/v850.h:164
+#: config/v850/v850.h:180
msgid "Reuse r30 on a per function basis"
msgstr ""
-#: config/v850/v850.h:167
+#: config/v850/v850.h:183
msgid "Use stubs for function prologues"
msgstr ""
-#: config/v850/v850.h:170
+#: config/v850/v850.h:186
msgid "Same as: -mep -mprolog-function"
msgstr ""
-#: config/v850/v850.h:171
+#: config/v850/v850.h:187
msgid "Enable backend debugging"
msgstr ""
-#: config/v850/v850.h:173
+#: config/v850/v850.h:189
msgid "Compile for the v850 processor"
msgstr ""
-#: config/v850/v850.h:175
+#: config/v850/v850.h:191
+msgid "Compile for v850e1 processor"
+msgstr ""
+
+#. Make sure that the other bits are cleared.
+#: config/v850/v850.h:193
msgid "Compile for v850e processor"
msgstr ""
#. Make sure that the other bits are cleared.
-#: config/v850/v850.h:177
+#: config/v850/v850.h:195
msgid "Enable the use of the short load instructions"
msgstr ""
-#: config/v850/v850.h:180
+#: config/v850/v850.h:198
msgid "Do not use the callt instruction"
msgstr ""
-#: config/v850/v850.h:187
+#: config/v850/v850.h:205
msgid "Do not use registers r2 and r5"
msgstr ""
-#: config/v850/v850.h:189
+#: config/v850/v850.h:207
msgid "Enforce strict alignment"
msgstr ""
-#: config/v850/v850.h:192
+#: config/v850/v850.h:210
msgid "Use 4 byte entries in switch tables"
msgstr ""
-#: config/v850/v850.h:218
+#: config/v850/v850.h:236
msgid "Set the max size of data eligible for the TDA area"
msgstr ""
-#: config/v850/v850.h:221
+#: config/v850/v850.h:239
msgid "Set the max size of data eligible for the SDA area"
msgstr ""
-#: config/v850/v850.h:224
+#: config/v850/v850.h:242
msgid "Set the max size of data eligible for the ZDA area"
msgstr ""
-#: config/xtensa/xtensa.c:1062 config/xtensa/xtensa.c:1096
-#: config/xtensa/xtensa.c:1105
-msgid "bad test"
-msgstr ""
-
-#: config/xtensa/xtensa.c:1824
+#: config/xtensa/xtensa.c:1814
msgid "boolean registers required for the floating-point option"
msgstr ""
-#: config/xtensa/xtensa.c:1991
-msgid "invalid mask"
-msgstr ""
-
-#: config/xtensa/xtensa.c:2038
-msgid "invalid address"
-msgstr ""
-
-#: config/xtensa/xtensa.c:2063
-msgid "no register in address"
-msgstr ""
-
-#: config/xtensa/xtensa.c:2071
-msgid "address offset not a constant"
-msgstr ""
-
-#: config/xtensa/xtensa.c:2794
-msgid "only uninitialized variables can be placed in a .bss section"
-msgstr ""
-
-#: config/xtensa/xtensa.h:114
-msgid "Use the Xtensa code density option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:116
-msgid "Do not use the Xtensa code density option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:118
-msgid "Use the Xtensa MAC16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:120
-msgid "Do not use the Xtensa MAC16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:122
-msgid "Use the Xtensa MUL16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:124
-msgid "Do not use the Xtensa MUL16 option"
+#: config/xtensa/xtensa.c:1868
+#, c-format
+msgid "-f%s is not supported with CONST16 instructions"
msgstr ""
-#: config/xtensa/xtensa.h:126
-msgid "Use the Xtensa MUL32 option"
+#: config/xtensa/xtensa.c:1873
+msgid "PIC is required but not supported with CONST16 instructions"
msgstr ""
-#: config/xtensa/xtensa.h:128
-msgid "Do not use the Xtensa MUL32 option"
+#: config/xtensa/xtensa.c:1943
+#, c-format
+msgid "invalid %%D value"
msgstr ""
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:134
-msgid "Use the Xtensa NSA option"
+#: config/xtensa/xtensa.c:1980
+msgid "invalid mask"
msgstr ""
-#: config/xtensa/xtensa.h:136
-msgid "Do not use the Xtensa NSA option"
-msgstr ""
+#: config/xtensa/xtensa.c:2006
+#, c-format
+msgid "invalid %%x value"
+msgstr "ungültiger %%x-Wert"
-#: config/xtensa/xtensa.h:138
-msgid "Use the Xtensa MIN/MAX option"
-msgstr ""
+#: config/xtensa/xtensa.c:2013
+#, c-format
+msgid "invalid %%d value"
+msgstr "ungültiger %%x-Wert"
-#: config/xtensa/xtensa.h:140
-msgid "Do not use the Xtensa MIN/MAX option"
-msgstr ""
+#: config/xtensa/xtensa.c:2034 config/xtensa/xtensa.c:2044
+#, c-format
+msgid "invalid %%t/%%b value"
+msgstr "ungültiger %%t/%%b-Wert"
-#: config/xtensa/xtensa.h:142
-msgid "Use the Xtensa SEXT option"
+#: config/xtensa/xtensa.c:2086
+msgid "invalid address"
msgstr ""
-#: config/xtensa/xtensa.h:144
-msgid "Do not use the Xtensa SEXT option"
+#: config/xtensa/xtensa.c:2111
+msgid "no register in address"
msgstr ""
-#: config/xtensa/xtensa.h:146
-msgid "Use the Xtensa boolean register option"
+#: config/xtensa/xtensa.c:2119
+msgid "address offset not a constant"
msgstr ""
-#: config/xtensa/xtensa.h:148
-msgid "Do not use the Xtensa boolean register option"
+#: config/xtensa/xtensa.c:2802
+msgid "only uninitialized variables can be placed in a .bss section"
msgstr ""
-#: config/xtensa/xtensa.h:150
-msgid "Use the Xtensa floating-point unit"
+#: config/xtensa/xtensa.h:79
+msgid "Use CONST16 instruction to load constants"
msgstr ""
-#: config/xtensa/xtensa.h:152
-msgid "Do not use the Xtensa floating-point unit"
+#: config/xtensa/xtensa.h:81
+msgid "Use PC-relative L32R instruction to load constants"
msgstr ""
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:170
+#: config/xtensa/xtensa.h:83
msgid "Disable fused multiply/add and multiply/subtract FP instructions"
msgstr ""
-#: config/xtensa/xtensa.h:172
+#: config/xtensa/xtensa.h:85
msgid "Enable fused multiply/add and multiply/subtract FP instructions"
msgstr ""
-#: config/xtensa/xtensa.h:174
-msgid "Serialize volatile memory references with MEMW instructions"
-msgstr ""
-
-#: config/xtensa/xtensa.h:176
-msgid "Do not serialize volatile memory references with MEMW instructions"
-msgstr ""
-
-#: config/xtensa/xtensa.h:178
+#: config/xtensa/xtensa.h:87
msgid "Intersperse literal pools with code in the text section"
msgstr ""
-#: config/xtensa/xtensa.h:180
+#: config/xtensa/xtensa.h:89
msgid "Put literal pools in a separate literal section"
msgstr ""
-#: config/xtensa/xtensa.h:182
+#: config/xtensa/xtensa.h:91
msgid "Automatically align branch targets to reduce branch penalties"
msgstr ""
-#: config/xtensa/xtensa.h:184
+#: config/xtensa/xtensa.h:93
msgid "Do not automatically align branch targets"
msgstr ""
-#: config/xtensa/xtensa.h:186
+#: config/xtensa/xtensa.h:95
msgid "Use indirect CALLXn instructions for large programs"
msgstr ""
-#: config/xtensa/xtensa.h:188
+#: config/xtensa/xtensa.h:97
msgid "Use direct CALLn instructions for fast calls"
msgstr ""
-#: ada/misc.c:233
-msgid "`-gnat' misspelled as `-gant'"
-msgstr ""
-
-#: cp/call.c:261 cp/init.c:1594
-msgid "qualified type `%T' does not match destructor name `~%T'"
-msgstr ""
-
-#: cp/call.c:270
-msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
-msgstr ""
-
-#: cp/call.c:279
-msgid "`%D' is a namespace"
-msgstr ""
+#: ada/misc.c:240
+#, c-format
+msgid "missing argument to \"-%s\""
+msgstr "fehlendes Argument für »-%s«"
-#: cp/call.c:287
-msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
+#: ada/misc.c:281
+msgid "`-gnat' misspelled as `-gant'"
msgstr ""
-#: cp/call.c:369
+#: cp/call.c:217
msgid "unable to call pointer to member function here"
msgstr ""
-#: cp/call.c:518
-msgid "destructors take no parameters"
-msgstr ""
-
-#: cp/call.c:522
-msgid "destructor name `~%T' does not match type `%T' of expression"
-msgstr ""
-
-#: cp/call.c:543 cp/call.c:5000
-msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
-msgstr ""
-
-#: cp/call.c:567
-msgid "request for member `%D' is ambiguous"
-msgstr ""
-
-#: cp/call.c:2537
+#: cp/call.c:2228
msgid "%s %D(%T, %T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2542
+#: cp/call.c:2233
msgid "%s %D(%T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2546
+#: cp/call.c:2237
msgid "%s %D(%T) <built-in>"
msgstr ""
-#: cp/call.c:2550
+#: cp/call.c:2241
msgid "%s %T <conversion>"
msgstr ""
-#: cp/call.c:2552
-msgid "%s %+#D%s"
+#: cp/call.c:2243
+msgid "%J%s %+#D <near match>"
msgstr ""
-#: cp/call.c:2726
-msgid "conversion from `%T' to `%T' is ambiguous"
+#: cp/call.c:2245
+msgid "%J%s %+#D"
msgstr ""
-#: cp/call.c:2803
-#, fuzzy
-msgid "`%T' is not a class type"
-msgstr "»%s« ist kein gültiger Klassenname"
-
-#: cp/call.c:2811
-msgid "incomplete type '%T' cannot be used to name a scope"
+#: cp/call.c:2280
+msgid "candidates are:"
msgstr ""
-#: cp/call.c:2831 cp/typeck.c:2188 cp/typeck.c:2217
-msgid "'%D' has no member named '%E'"
+#: cp/call.c:2468
+msgid "conversion from `%T' to `%T' is ambiguous"
msgstr ""
-#: cp/call.c:2933
+#: cp/call.c:2619 cp/call.c:2663
msgid "no matching function for call to `%D(%A)'"
msgstr ""
-#: cp/call.c:2944 cp/call.c:5087
+#: cp/call.c:2622 cp/call.c:2666
msgid "call of overloaded `%D(%A)' is ambiguous"
msgstr ""
#. It's no good looking for an overloaded operator() on a
#. pointer-to-member-function.
-#: cp/call.c:2971
+#: cp/call.c:2732
#, c-format
msgid "pointer-to-member function %E cannot be called without an object; consider using .* or ->*"
msgstr ""
-#: cp/call.c:3036
+#: cp/call.c:2798
msgid "no match for call to `(%T) (%A)'"
msgstr ""
-#: cp/call.c:3046
+#: cp/call.c:2806
msgid "call of `(%T) (%A)' is ambiguous"
msgstr ""
-#: cp/call.c:3081
+#: cp/call.c:2839
#, c-format
msgid "%s for ternary 'operator?:' in '%E ? %E : %E'"
msgstr ""
-#: cp/call.c:3087
+#: cp/call.c:2845
#, c-format
msgid "%s for 'operator%s' in '%E%s'"
msgstr ""
-#: cp/call.c:3091
+#: cp/call.c:2849
#, c-format
msgid "%s for 'operator[]' in '%E[%E]'"
msgstr ""
-#: cp/call.c:3096
+#: cp/call.c:2854
+#, c-format
+msgid "%s for '%s' in '%s %E'"
+msgstr "%s vor »%s« in »%s %E«"
+
+#: cp/call.c:2859
#, c-format
msgid "%s for 'operator%s' in '%E %s %E'"
msgstr ""
-#: cp/call.c:3099
+#: cp/call.c:2862
#, c-format
msgid "%s for 'operator%s' in '%s%E'"
msgstr ""
-#: cp/call.c:3191
+#: cp/call.c:2957
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
msgstr ""
-#: cp/call.c:3250
+#: cp/call.c:3018
#, c-format
msgid "`%E' has type `void' and is not a throw-expression"
msgstr ""
-#: cp/call.c:3283 cp/call.c:3475
+#: cp/call.c:3051 cp/call.c:3242
msgid "operands to ?: have different types"
msgstr ""
-#: cp/call.c:3428
+#: cp/call.c:3196
msgid "enumeral mismatch in conditional expression: `%T' vs `%T'"
msgstr ""
-#: cp/call.c:3435
+#: cp/call.c:3203
msgid "enumeral and non-enumeral type in conditional expression"
msgstr ""
-#: cp/call.c:3516
-msgid "`%D' must be declared before use"
-msgstr ""
-
-#: cp/call.c:3706
+#: cp/call.c:3487
msgid "no `%D(int)' declared for postfix `%s', trying prefix operator instead"
msgstr ""
-#: cp/call.c:3753
+#: cp/call.c:3532
msgid "using synthesized `%#D' for copy assignment"
msgstr ""
-#: cp/call.c:3755
+#: cp/call.c:3534
msgid " where cfront would use `%#D'"
msgstr ""
-#: cp/call.c:3782
+#: cp/call.c:3557
msgid "comparison between `%#T' and `%#T'"
msgstr ""
-#: cp/call.c:4021
-msgid "no suitable `operator delete' for `%T'"
-msgstr ""
+#: cp/call.c:3803
+msgid "no suitable `operator %s' for `%T'"
+msgstr "kein geeigneter »operator %s« für »%T«"
-#: cp/call.c:4040
+#: cp/call.c:3820
msgid "`%+#D' is private"
msgstr ""
-#: cp/call.c:4042
+#: cp/call.c:3822
msgid "`%+#D' is protected"
msgstr ""
-#: cp/call.c:4044
+#: cp/call.c:3824
msgid "`%+#D' is inaccessible"
msgstr ""
-#: cp/call.c:4045
+#: cp/call.c:3825
msgid "within this context"
msgstr ""
-#: cp/call.c:4088
+#: cp/call.c:3895
msgid "invalid conversion from `%T' to `%T'"
msgstr ""
-#: cp/call.c:4090 cp/call.c:4229 cp/call.c:4231
+#: cp/call.c:3897
msgid " initializing argument %P of `%D'"
msgstr ""
-#: cp/call.c:4152 cp/call.c:4156
-msgid " initializing argument %P of `%D' from result of `%D'"
-msgstr ""
+#: cp/call.c:4050
+msgid "cannot bind bitfield `%E' to `%T'"
+msgstr "das Bitfeld »%E« kann nicht mit »%T« verbunden werden"
-#: cp/call.c:4162 cp/call.c:4165
-msgid " initializing temporary from result of `%D'"
-msgstr ""
+#: cp/call.c:4053
+msgid "cannot bind packed field `%E' to `%T'"
+msgstr "das gepackte Feld »%E« kann nicht mit »%T« verbunden werden"
+
+#: cp/call.c:4056
+msgid "cannot bind rvalue `%E' to `%T'"
+msgstr "der R-Wert »%E« kann nicht mit »%T« verbunden werden"
-#. Undefined behavior [expr.call] 5.2.2/7. We used to just warn
-#. here and do a bitwise copy, but now cp_expr_size will abort if we
-#. try to do that.
-#: cp/call.c:4316
+#: cp/call.c:4144
msgid "cannot pass objects of non-POD type `%#T' through `...'; call will abort at runtime"
msgstr ""
#. Undefined behavior [expr.call] 5.2.2/7.
-#: cp/call.c:4343
-msgid "cannot receive objects of non-POD type `%#T' through `...'"
+#: cp/call.c:4168
+msgid "cannot receive objects of non-POD type `%#T' through `...'; call will abort at runtime"
msgstr ""
-#: cp/call.c:4523
+#: cp/call.c:4208
+msgid "the default argument for parameter %d of `%D' has not yet been parsed"
+msgstr ""
+
+#: cp/call.c:4403
msgid "passing `%T' as `this' argument of `%#D' discards qualifiers"
msgstr ""
-#: cp/call.c:4542
+#: cp/call.c:4422
msgid "`%T' is not an accessible base of `%T'"
msgstr ""
-#: cp/call.c:4786
+#: cp/call.c:4696
msgid "could not find class$ field in java interface type `%T'"
msgstr ""
-#: cp/call.c:4974
+#: cp/call.c:4951
msgid "call to non-function `%D'"
msgstr ""
-#: cp/call.c:5076
-msgid "no matching function for call to `%T::%D(%A)%#V'"
+#: cp/call.c:4977
+msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
+msgstr ""
+
+#: cp/call.c:5055
+msgid "no matching function for call to `%T::%s(%A)%#V'"
msgstr ""
-#: cp/call.c:5106
+#: cp/call.c:5072
+#, c-format
+msgid "call of overloaded `%s(%A)' is ambiguous"
+msgstr ""
+
+#: cp/call.c:5093
msgid "cannot call member function `%D' without object"
msgstr ""
-#: cp/call.c:5704
+#: cp/call.c:5678
msgid "passing `%T' chooses `%T' over `%T'"
msgstr ""
-#: cp/call.c:5706 cp/decl2.c:4154
+#: cp/call.c:5680 cp/name-lookup.c:4057
msgid " in call to `%D'"
msgstr ""
-#: cp/call.c:5755
+#: cp/call.c:5737
msgid "choosing `%D' over `%D'"
msgstr ""
-#: cp/call.c:5756
+#: cp/call.c:5738
msgid " for conversion from `%T' to `%T'"
msgstr ""
-#: cp/call.c:5758
+#: cp/call.c:5740
msgid " because conversion sequence for the argument is better"
msgstr ""
-#: cp/call.c:5879
-msgid "ISO C++ says that `%D' and `%D' are ambiguous even though the worst conversion for the former is better than the worst conversion for the latter"
+#: cp/call.c:5860
+msgid "ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:"
+msgstr ""
+
+#: cp/call.c:5864
+msgid "candidate 1:"
+msgstr ""
+
+#: cp/call.c:5865
+msgid "candidate 2:"
msgstr ""
-#: cp/call.c:5996
+#: cp/call.c:5974
msgid "could not convert `%E' to `%T'"
msgstr ""
-#: cp/call.c:6105
+#: cp/call.c:6079
msgid "invalid initialization of non-const reference of type '%T' from a temporary of type '%T'"
msgstr ""
-#: cp/call.c:6109
+#: cp/call.c:6083
msgid "invalid initialization of reference of type '%T' from expression of type '%T'"
msgstr ""
-#: cp/class.c:287
+#: cp/class.c:281
msgid "cannot convert from base `%T' to derived type `%T' via virtual base `%T'"
msgstr ""
-#: cp/class.c:992
+#: cp/class.c:764
+msgid "Java class '%T' cannot have an implicit non-trivial destructor"
+msgstr ""
+
+#: cp/class.c:765
+msgid "Java class '%T' cannot have a destructor"
+msgstr ""
+
+#: cp/class.c:933
msgid "`%#D' and `%#D' cannot be overloaded"
msgstr ""
-#: cp/class.c:1076
+#: cp/class.c:1016
msgid "duplicate enum value `%D'"
msgstr ""
-#: cp/class.c:1079
+#: cp/class.c:1019
msgid "duplicate field `%D' (as enum and non-enum)"
msgstr ""
-#: cp/class.c:1086
+#: cp/class.c:1026
msgid "duplicate nested type `%D'"
msgstr ""
-#: cp/class.c:1097
+#: cp/class.c:1037
msgid "duplicate field `%D' (as type and non-type)"
msgstr ""
-#: cp/class.c:1101
+#: cp/class.c:1041
msgid "duplicate member `%D'"
msgstr ""
-#: cp/class.c:1144
+#: cp/class.c:1079
msgid "conflicting access specifications for method `%D', ignored"
msgstr ""
-#: cp/class.c:1146
+#: cp/class.c:1081
#, c-format
msgid "conflicting access specifications for field `%s', ignored"
msgstr ""
-#: cp/class.c:1194
+#: cp/class.c:1131
msgid "`%D' names constructor"
msgstr ""
-#: cp/class.c:1199
+#: cp/class.c:1136
msgid "`%D' invalid in `%T'"
msgstr ""
-#: cp/class.c:1207
+#: cp/class.c:1144
msgid "no members matching `%D' in `%#T'"
msgstr ""
-#: cp/class.c:1239 cp/class.c:1247
+#: cp/class.c:1176 cp/class.c:1184
msgid "`%D' invalid in `%#T'"
msgstr ""
-#: cp/class.c:1240
+#: cp/class.c:1177
msgid " because of local method `%#D' with same name"
msgstr ""
-#: cp/class.c:1248
+#: cp/class.c:1185
msgid " because of local member `%#D' with same name"
msgstr ""
-#: cp/class.c:1320
+#: cp/class.c:1255
msgid "base class `%#T' has a non-virtual destructor"
msgstr ""
-#: cp/class.c:1340
+#: cp/class.c:1275
msgid "base `%T' with only non-default constructor in class without a constructor"
msgstr ""
-#: cp/class.c:1912
+#: cp/class.c:1659
msgid "all member functions in class `%T' are private"
msgstr ""
-#: cp/class.c:1926
+#: cp/class.c:1670
msgid "`%#T' only defines a private destructor and has no friends"
msgstr ""
-#: cp/class.c:1969
+#: cp/class.c:1712
msgid "`%#T' only defines private constructors and has no friends"
msgstr ""
-#: cp/class.c:2090 cp/class.c:5276
-msgid "redefinition of `%#T'"
-msgstr ""
-
-#: cp/class.c:2091
-msgid "previous definition of `%#T'"
-msgstr ""
-
-#: cp/class.c:2365
+#: cp/class.c:2097
msgid "no unique final overrider for `%D' in `%T'"
msgstr ""
#. Here we know it is a hider, and no overrider exists.
-#: cp/class.c:2712
+#: cp/class.c:2542
msgid "`%D' was hidden"
msgstr ""
-#: cp/class.c:2713
+#: cp/class.c:2543
msgid " by `%D'"
msgstr ""
-#: cp/class.c:2755
+#: cp/class.c:2584
msgid "ISO C++ forbids member `%D' with same name as enclosing class"
msgstr ""
-#: cp/class.c:2760 cp/decl2.c:1331
+#: cp/class.c:2589 cp/decl2.c:1167
msgid "`%#D' invalid; an anonymous union can only have non-static data members"
msgstr ""
-#: cp/class.c:2766 cp/decl2.c:1337
+#: cp/class.c:2595 cp/decl2.c:1174
msgid "private member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2769 cp/decl2.c:1339
+#: cp/class.c:2598 cp/decl2.c:1176
msgid "protected member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2894
+#: cp/class.c:2717
msgid "vtable layout for class `%T' may not be ABI-compliant and may change in a future version of GCC due to implicit virtual destructor"
msgstr ""
-#: cp/class.c:2958
+#: cp/class.c:2777
msgid "bit-field `%#D' with non-integral type"
msgstr ""
-#: cp/class.c:2978
+#: cp/class.c:2797
msgid "bit-field `%D' width not an integer constant"
msgstr ""
-#: cp/class.c:2984
+#: cp/class.c:2803
msgid "negative width in bit-field `%D'"
msgstr ""
-#: cp/class.c:2989
+#: cp/class.c:2808
msgid "zero width for bit-field `%D'"
msgstr ""
-#: cp/class.c:2995
+#: cp/class.c:2814
msgid "width of `%D' exceeds its type"
msgstr ""
-#: cp/class.c:3004
+#: cp/class.c:2823
msgid "`%D' is too small to hold all values of `%#T'"
msgstr ""
-#: cp/class.c:3088
+#: cp/class.c:2885
msgid "member `%#D' with constructor not allowed in union"
msgstr ""
-#: cp/class.c:3091
+#: cp/class.c:2888
msgid "member `%#D' with destructor not allowed in union"
msgstr ""
-#: cp/class.c:3094
+#: cp/class.c:2891
msgid "member `%#D' with copy assignment operator not allowed in union"
msgstr ""
-#: cp/class.c:3121
+#: cp/class.c:2918
msgid "multiple fields in union `%T' initialized"
msgstr ""
-#: cp/class.c:3234
+#: cp/class.c:2987
+msgid "ignoring packed attribute on unpacked non-POD field `%#D'"
+msgstr ""
+
+#: cp/class.c:3039
msgid "field `%D' in local class cannot be static"
msgstr ""
-#: cp/class.c:3240
+#: cp/class.c:3045
msgid "field `%D' invalidly declared function type"
msgstr ""
-#: cp/class.c:3247
+#: cp/class.c:3052
msgid "field `%D' invalidly declared method type"
msgstr ""
-#: cp/class.c:3253
-msgid "field `%D' invalidly declared offset type"
-msgstr ""
-
#. Unions cannot have static members.
-#: cp/class.c:3271
+#: cp/class.c:3070
msgid "field `%D' declared static in union"
msgstr ""
-#: cp/class.c:3298
+#: cp/class.c:3097
msgid "non-static reference `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3333
+#: cp/class.c:3132
msgid "non-static const member `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3349
+#: cp/class.c:3147
msgid "field `%#D' with same name as class"
msgstr ""
-#: cp/class.c:3367
+#: cp/class.c:3165
msgid "`%#T' has pointer data members"
msgstr ""
-#: cp/class.c:3371
+#: cp/class.c:3169
msgid " but does not override `%T(const %T&)'"
msgstr ""
-#: cp/class.c:3373
+#: cp/class.c:3171
msgid " or `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3376
+#: cp/class.c:3174
msgid " but does not override `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3826
+#: cp/class.c:3604
msgid "offset of empty base `%T' may not be ABI-compliant and maychange in a future version of GCC"
msgstr ""
-#: cp/class.c:3935
+#: cp/class.c:3714
msgid "class `%T' will be considered nearly empty in a future version of GCC"
msgstr ""
-#: cp/class.c:4025
+#: cp/class.c:3801
msgid "initializer specified for non-virtual method `%D'"
msgstr ""
-#: cp/class.c:4761
+#: cp/class.c:4489
msgid "offset of virtual base `%T' is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:4861
+#: cp/class.c:4579
msgid "direct base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:4874
+#: cp/class.c:4592
msgid "virtual base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:5030
+#: cp/class.c:4766
msgid "size assigned to `%T' may not be ABI-compliant and may change in a future version of GCC"
msgstr ""
#. Versions of G++ before G++ 3.4 did not reset the
#. DECL_MODE.
-#: cp/class.c:5053
+#: cp/class.c:4805
msgid "the offset of `%D' may not be ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5079
+#: cp/class.c:4828
msgid "offset of `%D' is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5088
+#: cp/class.c:4837
msgid "`%D' contains empty classes which may cause base classes to be placed at different locations in a future version of GCC"
msgstr ""
-#: cp/class.c:5147
+#: cp/class.c:4896
msgid "layout of classes derived from empty class `%T' may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5432
+#: cp/class.c:5026 cp/semantics.c:2029
+msgid "redefinition of `%#T'"
+msgstr ""
+
+#: cp/class.c:5196
msgid "`%#T' has virtual functions but non-virtual destructor"
msgstr ""
-#: cp/class.c:5516
+#: cp/class.c:5275
msgid "trying to finish struct, but kicked out due to previous parse errors"
msgstr ""
-#: cp/class.c:5982
+#: cp/class.c:5717
#, c-format
msgid "language string `\"%s\"' not recognized"
msgstr ""
-#: cp/class.c:6078
+#: cp/class.c:5805
msgid "cannot resolve overloaded function `%D' based on conversion to type `%T'"
msgstr ""
-#: cp/class.c:6203
+#: cp/class.c:5930
msgid "no matches converting function `%D' to type `%#T'"
msgstr ""
-#: cp/class.c:6226
+#: cp/class.c:5953
msgid "converting overloaded function `%D' to type `%#T' is ambiguous"
msgstr ""
-#: cp/class.c:6252
+#: cp/class.c:5979
msgid "assuming pointer to member `%D'"
msgstr ""
-#: cp/class.c:6255
+#: cp/class.c:5982
#, c-format
msgid "(a pointer to member can only be formed with `&%E')"
msgstr ""
-#: cp/class.c:6306 cp/class.c:6477 cp/class.c:6484
+#: cp/class.c:6027 cp/class.c:6209 cp/class.c:6216
msgid "not enough type information"
msgstr ""
-#: cp/class.c:6315
+#: cp/class.c:6044
msgid "argument of type `%T' does not match `%T'"
msgstr ""
-#: cp/class.c:6461
+#: cp/class.c:6193
msgid "invalid operation on uninstantiated type"
msgstr ""
@@ -14113,14 +13396,18 @@ msgstr ""
#. A name N used in a class S shall refer to the same declaration
#. in its context and when re-evaluated in the completed scope of
#. S.
-#: cp/class.c:6745 cp/decl.c:1254 cp/decl.c:3379 cp/pt.c:2004
+#: cp/class.c:6451 cp/decl.c:1225 cp/name-lookup.c:495 cp/pt.c:2093
msgid "declaration of `%#D'"
msgstr ""
-#: cp/class.c:6746
+#: cp/class.c:6452
msgid "changes meaning of `%D' from `%+#D'"
msgstr ""
+#: cp/cp-lang.c:398
+msgid "inter-module optimisations not implemented yet"
+msgstr ""
+
#: cp/cvt.c:88
msgid "can't convert from incomplete type `%T' to `%T'"
msgstr ""
@@ -14129,246 +13416,227 @@ msgstr ""
msgid "conversion of `%E' from `%T' to `%T' is ambiguous"
msgstr ""
-#: cp/cvt.c:126
+#: cp/cvt.c:113 cp/cvt.c:127
msgid "converting from `%T' to `%T'"
msgstr ""
-#: cp/cvt.c:203 cp/cvt.c:207
-msgid "pointer to member cast from `%T' to `%T' is via virtual base"
+#: cp/cvt.c:185 cp/cvt.c:253 cp/cvt.c:297
+msgid "cannot convert `%E' from type `%T' to type `%T'"
msgstr ""
-#: cp/cvt.c:225 cp/cvt.c:236 cp/cvt.c:283
-msgid "cannot convert `%E' from type `%T' to type `%T'"
+#: cp/cvt.c:214 cp/cvt.c:218
+msgid "pointer to member cast from `%T' to `%T' is via virtual base"
msgstr ""
-#: cp/cvt.c:262
+#: cp/cvt.c:276
msgid "invalid conversion from '%T' to '%T'"
msgstr ""
-#: cp/cvt.c:504
+#: cp/cvt.c:508
msgid "conversion from `%T' to `%T' discards qualifiers"
msgstr ""
-#: cp/cvt.c:522
+#: cp/cvt.c:526
msgid "casting `%T' to `%T' does not dereference pointer"
msgstr ""
-#: cp/cvt.c:551
+#: cp/cvt.c:553
msgid "cannot convert type `%T' to type `%T'"
msgstr ""
-#: cp/cvt.c:683
+#: cp/cvt.c:679
msgid "conversion from `%#T' to `%#T'"
msgstr ""
-#: cp/cvt.c:695
+#: cp/cvt.c:691
msgid "`%#T' used where a `%T' was expected"
msgstr ""
-#: cp/cvt.c:712
-msgid "the address of `%D', will always be `true'"
-msgstr ""
-
-#: cp/cvt.c:732
+#: cp/cvt.c:715
msgid "`%#T' used where a floating point value was expected"
msgstr ""
-#: cp/cvt.c:779
+#: cp/cvt.c:762
msgid "conversion from `%T' to non-scalar type `%T' requested"
msgstr ""
-#: cp/cvt.c:865
+#: cp/cvt.c:850
msgid "object of incomplete type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:868
+#: cp/cvt.c:853
msgid "object of type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:884
+#: cp/cvt.c:869
msgid "object `%E' of incomplete type `%T' will not be accessed in %s"
msgstr ""
#. [over.over] enumerates the places where we can take the address
#. of an overloaded function, and this is not one of them.
-#: cp/cvt.c:904
+#: cp/cvt.c:885
#, c-format
msgid "%s cannot resolve address of overloaded function"
msgstr ""
#. Only warn when there is no &.
-#: cp/cvt.c:909
+#: cp/cvt.c:891
#, c-format
msgid "%s is a reference, not call, to function `%E'"
msgstr ""
-#: cp/cvt.c:1039
+#: cp/cvt.c:898
+#, c-format
+msgid "%s has no effect"
+msgstr "%s hat keinen Effekt"
+
+#: cp/cvt.c:1009
msgid "converting NULL to non-pointer type"
msgstr ""
-#: cp/cvt.c:1115
+#: cp/cvt.c:1081
msgid "ambiguous default type conversion from `%T'"
msgstr ""
-#: cp/cvt.c:1117
+#: cp/cvt.c:1083
msgid " candidate conversions include `%D' and `%D'"
msgstr ""
-#: cp/decl.c:736
-#, c-format
-msgid "push %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:770
-#, c-format
-msgid "pop %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:776 cp/decl.c:814
-msgid "XXX is_class_level != (current_binding_level == class_binding_level)\n"
-msgstr ""
-
-#: cp/decl.c:808
-#, c-format
-msgid "suspend %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:837
-#, c-format
-msgid "resume %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:1255 cp/decl.c:3490
-msgid "conflicts with previous declaration `%#D'"
-msgstr ""
-
-#: cp/decl.c:1467
+#: cp/decl.c:374
msgid "label `%D' used but not defined"
msgstr ""
-#: cp/decl.c:1472
+#: cp/decl.c:381
msgid "label `%D' defined but not used"
msgstr ""
-#: cp/decl.c:2489
-msgid "namespace alias `%D' not allowed here, assuming `%D'"
+#: cp/decl.c:1133 cp/decl.c:1559
+msgid "previous declaration of `%D'"
msgstr ""
-#: cp/decl.c:2825
-msgid "XXX entering pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1181
+msgid "%Jfunction '%D' redeclared as inline"
+msgstr "%JFunktion »%D« als inline redeklariert"
-#: cp/decl.c:2834
-msgid "XXX leaving pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1182
+msgid "%Jprevious declaration of '%D' with attribute noinline"
+msgstr "%Jvorherige Deklaration von »%D« mit Attribut noinline"
-#: cp/decl.c:3285 cp/decl.c:3700
-msgid "previous declaration of `%D'"
-msgstr ""
+#: cp/decl.c:1189
+msgid "%Jfunction '%D' redeclared with attribute noinline"
+msgstr "%JFunktion »%D« redeklariert mit Attribut noinline"
+
+#: cp/decl.c:1191
+msgid "%Jprevious declaration of '%D' was inline"
+msgstr "%Jvorherige Deklaration von »%D« war inline"
-#: cp/decl.c:3366 cp/decl.c:3404
+#: cp/decl.c:1212 cp/decl.c:1250
msgid "shadowing %s function `%#D'"
msgstr ""
-#: cp/decl.c:3375
+#: cp/decl.c:1221
msgid "library function `%#D' redeclared as non-function `%#D'"
msgstr ""
-#: cp/decl.c:3380
+#: cp/decl.c:1226
msgid "conflicts with built-in declaration `%#D'"
msgstr ""
-#: cp/decl.c:3399 cp/decl.c:3504 cp/decl.c:3520
+#: cp/decl.c:1245 cp/decl.c:1357 cp/decl.c:1373
msgid "new declaration `%#D'"
msgstr ""
-#: cp/decl.c:3400
+#: cp/decl.c:1246
msgid "ambiguates built-in declaration `%#D'"
msgstr ""
-#: cp/decl.c:3464
+#: cp/decl.c:1317
msgid "`%#D' redeclared as different kind of symbol"
msgstr ""
-#: cp/decl.c:3467
+#: cp/decl.c:1320
msgid "previous declaration of `%#D'"
msgstr ""
-#: cp/decl.c:3489
+#: cp/decl.c:1342
msgid "declaration of template `%#D'"
msgstr ""
-#: cp/decl.c:3505 cp/decl.c:3521
+#: cp/decl.c:1343 cp/name-lookup.c:496
+msgid "conflicts with previous declaration `%#D'"
+msgstr ""
+
+#: cp/decl.c:1358 cp/decl.c:1374
msgid "ambiguates old declaration `%#D'"
msgstr ""
-#: cp/decl.c:3513
+#: cp/decl.c:1366
msgid "declaration of C function `%#D' conflicts with"
msgstr ""
-#: cp/decl.c:3515
+#: cp/decl.c:1368
msgid "previous declaration `%#D' here"
msgstr ""
-#: cp/decl.c:3533
-msgid "conflicting types for `%#D'"
-msgstr ""
+#: cp/decl.c:1384
+msgid "conflicting declaration '%#D'"
+msgstr "in Konflikt stehende Deklaration »%#D«"
-#: cp/decl.c:3534
-msgid "previous declaration as `%#D'"
-msgstr ""
+#: cp/decl.c:1385
+msgid "'%D' has a previous declaration as `%#D'"
+msgstr "»%D« hat eine vorherige Deklaration als »%#Ds«"
-#: cp/decl.c:3577
+#: cp/decl.c:1438
msgid "`%#D' previously defined here"
msgstr ""
-#: cp/decl.c:3578
+#: cp/decl.c:1439
msgid "`%#D' previously declared here"
msgstr ""
#. Prototype decl follows defn w/o prototype.
-#: cp/decl.c:3587
+#: cp/decl.c:1448
msgid "prototype for `%#D'"
msgstr ""
-#: cp/decl.c:3588
-msgid "follows non-prototype definition here"
-msgstr ""
+#: cp/decl.c:1449
+msgid "%Jfollows non-prototype definition here"
+msgstr "%Jfolgt Nicht-Prototyp-Definition hier"
-#: cp/decl.c:3600
+#: cp/decl.c:1461
msgid "previous declaration of `%#D' with %L linkage"
msgstr ""
-#: cp/decl.c:3602
+#: cp/decl.c:1463
msgid "conflicts with new declaration with %L linkage"
msgstr ""
-#: cp/decl.c:3625 cp/decl.c:3632
+#: cp/decl.c:1486 cp/decl.c:1493
msgid "default argument given for parameter %d of `%#D'"
msgstr ""
-#: cp/decl.c:3627 cp/decl.c:3634
+#: cp/decl.c:1488 cp/decl.c:1495
msgid "after previous specification in `%#D'"
msgstr ""
-#: cp/decl.c:3643
+#: cp/decl.c:1504
msgid "`%#D' was used before it was declared inline"
msgstr ""
-#: cp/decl.c:3645
-msgid "previous non-inline declaration here"
-msgstr ""
+#: cp/decl.c:1505
+msgid "%Jprevious non-inline declaration here"
+msgstr "%Jvorherige nicht-inline-Deklaration hier"
-#: cp/decl.c:3699
+#: cp/decl.c:1558
msgid "redundant redeclaration of `%D' in same scope"
msgstr ""
-#: cp/decl.c:3780
+#: cp/decl.c:1649
#, c-format
msgid "declaration of `%F' throws different exceptions"
msgstr ""
-#: cp/decl.c:3782
+#: cp/decl.c:1651
#, c-format
msgid "than previous declaration `%F'"
msgstr ""
@@ -14381,612 +13649,492 @@ msgstr ""
#. that specialization that would cause an implicit
#. instantiation to take place, in every translation unit in
#. which such a use occurs.
-#: cp/decl.c:3922
+#: cp/decl.c:1798
msgid "explicit specialization of %D after first use"
msgstr ""
-#: cp/decl.c:4187
-msgid "`%#D' used prior to declaration"
-msgstr ""
-
-#: cp/decl.c:4218
-msgid "redeclaration of `wchar_t' as `%T'"
-msgstr ""
-
-#. A redeclaration of main, but not a duplicate of the
-#. previous one.
-#.
-#. [basic.start.main]
-#.
-#. This function shall not be overloaded.
-#: cp/decl.c:4246
-msgid "invalid redeclaration of `%D'"
-msgstr ""
-
-#: cp/decl.c:4247
-msgid "as `%D'"
-msgstr ""
-
-#: cp/decl.c:4337
-msgid "previous external decl of `%#D'"
-msgstr ""
-
-#: cp/decl.c:4378
-msgid "`%D' was previously implicitly declared to return `int'"
-msgstr ""
-
-#: cp/decl.c:4438
-msgid "extern declaration of `%#D' doesn't match"
-msgstr ""
-
-#: cp/decl.c:4439
-msgid "global declaration `%#D'"
-msgstr ""
-
-#: cp/decl.c:4472
-msgid "declaration of `%#D' shadows a parameter"
-msgstr ""
-
-#: cp/decl.c:4492
-#, c-format
-msgid "declaration of `%s' shadows a member of `this'"
-msgstr ""
-
-#: cp/decl.c:4889
-msgid "`%#D' hides constructor for `%#T'"
-msgstr ""
-
-#: cp/decl.c:4904
-msgid "`%#D' conflicts with previous using declaration `%#D'"
-msgstr ""
-
-#: cp/decl.c:4916
-msgid "previous non-function declaration `%#D'"
+#: cp/decl.c:1880
+msgid "%J'%D': visibility attribute ignored because it"
msgstr ""
-#: cp/decl.c:4917
-msgid "conflicts with function declaration `%#D'"
-msgstr ""
+#: cp/decl.c:1882
+msgid "%Jconflicts with previous declaration here"
+msgstr "%Jin Konflikt mit vorheriger Deklaration hier"
-#: cp/decl.c:5007
+#: cp/decl.c:1976
msgid "implicit declaration of function `%#D'"
msgstr ""
-#: cp/decl.c:5167
+#: cp/decl.c:2124
#, c-format
msgid "label `%s' referenced outside of any function"
msgstr ""
-#: cp/decl.c:5270 cp/decl.c:5294 cp/decl.c:5387
+#: cp/decl.c:2221 cp/decl.c:2245 cp/decl.c:2333
msgid "jump to label `%D'"
msgstr ""
-#: cp/decl.c:5272 cp/decl.c:5296
+#: cp/decl.c:2223 cp/decl.c:2247
msgid "jump to case label"
msgstr ""
-#: cp/decl.c:5280
+#: cp/decl.c:2226 cp/decl.c:2250
+msgid "%H from here"
+msgstr "%H von hier"
+
+#: cp/decl.c:2231
msgid " crosses initialization of `%#D'"
msgstr ""
-#: cp/decl.c:5283 cp/decl.c:5403
+#: cp/decl.c:2234 cp/decl.c:2349
msgid " enters scope of non-POD `%#D'"
msgstr ""
-#: cp/decl.c:5303 cp/decl.c:5407
+#: cp/decl.c:2254 cp/decl.c:2353
msgid " enters try block"
msgstr ""
-#. Can't skip init of __exception_info.
-#: cp/decl.c:5305 cp/decl.c:5399 cp/decl.c:5409
+#: cp/decl.c:2256 cp/decl.c:2355
msgid " enters catch block"
msgstr ""
-#: cp/decl.c:5388
+#: cp/decl.c:2334
msgid " from here"
msgstr ""
-#: cp/decl.c:5401
+#. Can't skip init of __exception_info.
+#: cp/decl.c:2345
+msgid "%J enters catch block"
+msgstr ""
+
+#: cp/decl.c:2347
msgid " skips initialization of `%#D'"
msgstr ""
-#: cp/decl.c:5437
+#: cp/decl.c:2381
msgid "label named wchar_t"
msgstr ""
-#: cp/decl.c:5440
+#: cp/decl.c:2384
msgid "duplicate label `%D'"
msgstr ""
-#: cp/decl.c:5525
-#, c-format
-msgid "case label `%E' not within a switch statement"
-msgstr ""
-
-#. Definition isn't the kind we were looking for.
-#: cp/decl.c:5704 cp/decl.c:5723
-msgid "`%#D' redeclared as %C"
-msgstr ""
-
-#. This happens for A::B where B is a template, and there are no
-#. template arguments.
-#: cp/decl.c:5811 cp/typeck.c:2069 cp/typeck.c:2229
-msgid "invalid use of `%D'"
-msgstr ""
-
-#: cp/decl.c:5852
-msgid "`%D::%D' is not a template"
-msgstr ""
-
-#: cp/decl.c:5869
-msgid "`%D' undeclared in namespace `%D'"
-msgstr ""
-
-#: cp/decl.c:6002
+#: cp/decl.c:2612 cp/parser.c:3178
msgid "`%D' used without template parameters"
msgstr ""
-#: cp/decl.c:6013 cp/decl.c:6029 cp/decl.c:6139
+#: cp/decl.c:2622 cp/decl.c:2638 cp/decl.c:2726
msgid "no class template named `%#T' in `%#T'"
msgstr ""
-#: cp/decl.c:6055 cp/decl.c:6065 cp/decl.c:6100
+#: cp/decl.c:2659 cp/decl.c:2669 cp/decl.c:2689
msgid "no type named `%#T' in `%#T'"
msgstr ""
-#: cp/decl.c:6329
-msgid "lookup of `%D' finds `%#D'"
-msgstr ""
-
-#: cp/decl.c:6331
-msgid " instead of `%D' from dependent base class"
-msgstr ""
-
-#: cp/decl.c:6333
-msgid " (use `typename %T::%D' if that's what you meant)"
-msgstr ""
-
-#: cp/decl.c:6364
-msgid "name lookup of `%D' changed"
-msgstr ""
-
-#: cp/decl.c:6366
-msgid " matches this `%D' under ISO standard rules"
-msgstr ""
-
-#: cp/decl.c:6368
-msgid " matches this `%D' under old rules"
-msgstr ""
-
-#: cp/decl.c:6382 cp/decl.c:6389
-msgid "name lookup of `%D' changed for new ISO `for' scoping"
-msgstr ""
-
-#: cp/decl.c:6384
-msgid " cannot use obsolete binding at `%D' because it has a destructor"
-msgstr ""
-
-#: cp/decl.c:6391
-msgid " using obsolete binding at `%D'"
+#: cp/decl.c:3416
+msgid "%Jan anonymous union cannot have function members"
msgstr ""
-#: cp/decl.c:6609
-msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
-msgstr ""
-
-#: cp/decl.c:7432
-msgid "an anonymous union cannot have function members"
-msgstr ""
-
-#: cp/decl.c:7449
+#: cp/decl.c:3434
msgid "member %#D' with constructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7452
+#: cp/decl.c:3437
msgid "member %#D' with destructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7455
+#: cp/decl.c:3440
msgid "member %#D' with copy assignment operator not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7493
+#: cp/decl.c:3480
msgid "redeclaration of C++ built-in type `%T'"
msgstr ""
-#: cp/decl.c:7529
+#: cp/decl.c:3518
msgid "multiple types in one declaration"
msgstr ""
-#: cp/decl.c:7556
+#: cp/decl.c:3544
msgid "missing type-name in typedef-declaration"
msgstr ""
-#: cp/decl.c:7563
+#: cp/decl.c:3552
msgid "ISO C++ prohibits anonymous structs"
msgstr ""
-#: cp/decl.c:7570
+#: cp/decl.c:3559
msgid "`%D' can only be specified for functions"
msgstr ""
-#: cp/decl.c:7572
+#: cp/decl.c:3561
msgid "`%D' can only be specified inside a class"
msgstr ""
-#: cp/decl.c:7574
+#: cp/decl.c:3563
msgid "`%D' can only be specified for constructors"
msgstr ""
-#: cp/decl.c:7577
+#: cp/decl.c:3566
msgid "`%D' can only be specified for objects and functions"
msgstr ""
-#: cp/decl.c:7719 cp/decl2.c:936
+#: cp/decl.c:3708 cp/decl2.c:861
msgid "typedef `%D' is initialized (use __typeof__ instead)"
msgstr ""
-#: cp/decl.c:7724
+#: cp/decl.c:3713
msgid "function `%#D' is initialized like a variable"
msgstr ""
-#: cp/decl.c:7736
+#: cp/decl.c:3725
msgid "declaration of `%#D' has `extern' and is initialized"
msgstr ""
-#: cp/decl.c:7770
+#: cp/decl.c:3758
msgid "`%#D' is not a static member of `%#T'"
msgstr ""
-#: cp/decl.c:7775
+#: cp/decl.c:3764
msgid "ISO C++ does not permit `%T::%D' to be defined as `%T::%D'"
msgstr ""
-#: cp/decl.c:7786
+#: cp/decl.c:3775
msgid "duplicate initialization of %D"
msgstr ""
-#: cp/decl.c:7815
+#: cp/decl.c:3806
msgid "declaration of `%#D' outside of class is not definition"
msgstr ""
-#: cp/decl.c:7865
+#: cp/decl.c:3857
msgid "variable `%#D' has initializer but incomplete type"
msgstr ""
-#: cp/decl.c:7873 cp/decl.c:8432
+#: cp/decl.c:3865 cp/decl.c:4426
msgid "elements of array `%#D' have incomplete type"
msgstr ""
-#: cp/decl.c:7889
+#: cp/decl.c:3881
msgid "aggregate `%#D' has incomplete type and cannot be defined"
msgstr ""
-#: cp/decl.c:7931
+#: cp/decl.c:3923
msgid "`%D' declared as reference but not initialized"
msgstr ""
-#: cp/decl.c:7940
+#: cp/decl.c:3929
msgid "ISO C++ forbids use of initializer list to initialize reference `%D'"
msgstr ""
-#: cp/decl.c:7970
+#: cp/decl.c:3957
msgid "cannot initialize `%T' from `%T'"
msgstr ""
-#: cp/decl.c:8004
+#: cp/decl.c:3989
msgid "initializer fails to determine size of `%D'"
msgstr ""
-#: cp/decl.c:8009
+#: cp/decl.c:3994
msgid "array size missing in `%D'"
msgstr ""
-#: cp/decl.c:8021
+#: cp/decl.c:4006
msgid "zero-size array `%D'"
msgstr ""
#. An automatic variable with an incomplete type: that is an error.
#. Don't talk about array types here, since we took care of that
#. message in grokdeclarator.
-#: cp/decl.c:8059
+#: cp/decl.c:4043
msgid "storage size of `%D' isn't known"
msgstr ""
-#: cp/decl.c:8081
+#: cp/decl.c:4065
msgid "storage size of `%D' isn't constant"
msgstr ""
-#: cp/decl.c:8137
+#: cp/decl.c:4120
msgid "sorry: semantics of inline function static data `%#D' are wrong (you'll wind up with multiple copies)"
msgstr ""
-#: cp/decl.c:8138
-msgid " you can work around this by removing the initializer"
+#: cp/decl.c:4121
+msgid "%J you can work around this by removing the initializer"
msgstr ""
-#: cp/decl.c:8164
+#: cp/decl.c:4147
msgid "uninitialized const `%D'"
msgstr ""
-#: cp/decl.c:8249
+#: cp/decl.c:4226
msgid "brace-enclosed initializer used to initialize `%T'"
msgstr ""
-#: cp/decl.c:8313
+#: cp/decl.c:4290
msgid "initializer for `%T' must be brace-enclosed"
msgstr ""
-#: cp/decl.c:8328
+#: cp/decl.c:4307
msgid "ISO C++ does not allow designated initializers"
msgstr ""
-#: cp/decl.c:8332
+#: cp/decl.c:4311
msgid "`%T' has no non-static data member named `%D'"
msgstr ""
-#: cp/decl.c:8389
-#, fuzzy
+#: cp/decl.c:4359
+msgid "name `%D' used in a GNU-style designated initializer for an array"
+msgstr ""
+
+#: cp/decl.c:4382
msgid "too many initializers for `%T'"
-msgstr "zu viele Eingabedateien"
+msgstr "zu viele Initialisierer für »%T«"
-#: cp/decl.c:8426
+#: cp/decl.c:4420
msgid "variable-sized object `%D' may not be initialized"
msgstr ""
-#: cp/decl.c:8437
+#: cp/decl.c:4431
msgid "`%D' has incomplete type"
msgstr ""
-#: cp/decl.c:8486
+#: cp/decl.c:4486
msgid "`%D' must be initialized by constructor, not by `{...}'"
msgstr ""
-#: cp/decl.c:8527
+#: cp/decl.c:4530
msgid "structure `%D' with uninitialized const members"
msgstr ""
-#: cp/decl.c:8529
+#: cp/decl.c:4532
msgid "structure `%D' with uninitialized reference members"
msgstr ""
-#: cp/decl.c:8770
+#: cp/decl.c:4713
msgid "assignment (not initialization) in declaration"
msgstr ""
-#: cp/decl.c:8785
+#: cp/decl.c:4730
msgid "cannot initialize `%D' to namespace `%D'"
msgstr ""
-#: cp/decl.c:8836
+#: cp/decl.c:4780
msgid "shadowing previous type declaration of `%#D'"
msgstr ""
-#: cp/decl.c:8883
+#: cp/decl.c:4816
msgid "`%D' cannot be thread-local because it has non-POD type `%T'"
msgstr ""
-#: cp/decl.c:8898
+#: cp/decl.c:4831
msgid "`%D' is thread-local and so cannot be dynamically initialized"
msgstr ""
-#: cp/decl.c:9298 cp/init.c:562
-msgid "multiple initializations given for `%D'"
-msgstr ""
-
-#: cp/decl.c:9390
+#: cp/decl.c:5313
msgid "invalid catch parameter"
msgstr ""
-#: cp/decl.c:9508
+#: cp/decl.c:5427
msgid "destructor for alien class `%T' cannot be a member"
msgstr ""
-#: cp/decl.c:9511
+#: cp/decl.c:5430
msgid "constructor for alien class `%T' cannot be a member"
msgstr ""
-#: cp/decl.c:9530
+#: cp/decl.c:5452
msgid "`%D' declared as a `virtual' %s"
msgstr ""
-#: cp/decl.c:9532
+#: cp/decl.c:5454
msgid "`%D' declared as an `inline' %s"
msgstr ""
-#: cp/decl.c:9534
+#: cp/decl.c:5456
msgid "`const' and `volatile' function specifiers on `%D' invalid in %s declaration"
msgstr ""
-#: cp/decl.c:9537
+#: cp/decl.c:5459
msgid "`%D' declared as a friend"
msgstr ""
-#: cp/decl.c:9543
+#: cp/decl.c:5465
msgid "`%D' declared with an exception specification"
msgstr ""
-#: cp/decl.c:9618
+#: cp/decl.c:5544
msgid "cannot declare `::main' to be a template"
msgstr ""
-#: cp/decl.c:9620
+#: cp/decl.c:5546
msgid "cannot declare `::main' to be inline"
msgstr ""
-#: cp/decl.c:9622
+#: cp/decl.c:5548
msgid "cannot declare `::main' to be static"
msgstr ""
-#: cp/decl.c:9625
+#: cp/decl.c:5551
msgid "`main' must return `int'"
msgstr ""
-#: cp/decl.c:9653
+#: cp/decl.c:5579
msgid "non-local function `%#D' uses anonymous type"
msgstr ""
-#: cp/decl.c:9656
+#: cp/decl.c:5582
msgid "`%#D' does not refer to the unqualified type, so it is not used for linkage"
msgstr ""
-#: cp/decl.c:9662
+#: cp/decl.c:5588
msgid "non-local function `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:9691
+#: cp/decl.c:5612
msgid "%smember function `%D' cannot have `%T' method qualifier"
msgstr ""
-#: cp/decl.c:9715
+#: cp/decl.c:5636
msgid "defining explicit specialization `%D' in friend declaration"
msgstr ""
#. Something like `template <class T> friend void f<T>()'.
-#: cp/decl.c:9725
+#: cp/decl.c:5646
msgid "invalid use of template-id `%D' in declaration of primary template"
msgstr ""
-#: cp/decl.c:9753
+#: cp/decl.c:5673
msgid "default arguments are not allowed in declaration of friend template specialization `%D'"
msgstr ""
-#: cp/decl.c:9760
+#: cp/decl.c:5680
msgid "`inline' is not allowed in declaration of friend template specialization `%D'"
msgstr ""
-#: cp/decl.c:9822
+#: cp/decl.c:5741
msgid "definition of implicitly-declared `%D'"
msgstr ""
-#: cp/decl.c:9834 cp/decl2.c:785
+#: cp/decl.c:5759 cp/decl2.c:744
msgid "no `%#D' member function declared in class `%T'"
msgstr ""
-#: cp/decl.c:9967
+#: cp/decl.c:5893
msgid "non-local variable `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:10064
+#: cp/decl.c:6008
msgid "invalid in-class initialization of static data member of non-integral type `%T'"
msgstr ""
-#: cp/decl.c:10073
+#: cp/decl.c:6017
msgid "ISO C++ forbids in-class initialization of non-const static member `%D'"
msgstr ""
-#: cp/decl.c:10076
+#: cp/decl.c:6020
msgid "ISO C++ forbids initialization of member constant `%D' of non-integral type `%T'"
msgstr ""
-#: cp/decl.c:10126
-msgid "size of array `%D' has non-integer type"
-msgstr ""
+#: cp/decl.c:6039
+msgid "size of array `%D' has non-integral type `%T'"
+msgstr "Feldgröße von »%D« hat Nicht-Ganzzahltyp »%T«"
-#: cp/decl.c:10128
-msgid "size of array has non-integer type"
-msgstr ""
+#: cp/decl.c:6041
+msgid "size of array has non-integral type `%T'"
+msgstr "Feldgröße hat Nicht-Ganzzahltyp »%T«"
-#: cp/decl.c:10148
+#: cp/decl.c:6077
msgid "size of array `%D' is negative"
msgstr ""
-#: cp/decl.c:10150
+#: cp/decl.c:6079
msgid "size of array is negative"
msgstr ""
-#: cp/decl.c:10159
+#: cp/decl.c:6087
msgid "ISO C++ forbids zero-size array `%D'"
msgstr ""
-#: cp/decl.c:10161
+#: cp/decl.c:6089
msgid "ISO C++ forbids zero-size array"
msgstr ""
-#: cp/decl.c:10168
+#: cp/decl.c:6096
msgid "size of array `%D' is not an integral constant-expression"
msgstr ""
-#: cp/decl.c:10171
+#: cp/decl.c:6099
msgid "size of array is not an integral constant-expression"
msgstr ""
-#: cp/decl.c:10189
+#: cp/decl.c:6104
msgid "ISO C++ forbids variable-size array `%D'"
msgstr ""
-#: cp/decl.c:10192
+#: cp/decl.c:6106
msgid "ISO C++ forbids variable-size array"
msgstr ""
-#: cp/decl.c:10203
+#: cp/decl.c:6128
msgid "overflow in array dimension"
msgstr ""
-#: cp/decl.c:10262
+#: cp/decl.c:6222
msgid "declaration of `%D' as %s"
msgstr "Deklaration von »%D« als %s"
-#: cp/decl.c:10264
+#: cp/decl.c:6224
#, c-format
msgid "creating %s"
msgstr "Erzeugen von %s"
-#: cp/decl.c:10276
+#: cp/decl.c:6236
msgid "declaration of `%D' as multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:10279
+#: cp/decl.c:6239
msgid "multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:10308
+#: cp/decl.c:6267
msgid "return type specification for constructor invalid"
msgstr ""
-#: cp/decl.c:10315
+#: cp/decl.c:6274
msgid "return type specification for destructor invalid"
msgstr ""
-#: cp/decl.c:10321
+#: cp/decl.c:6280
msgid "operator `%T' declared to return `%T'"
msgstr ""
-#: cp/decl.c:10323
+#: cp/decl.c:6282
msgid "return type specified for `operator %T'"
msgstr ""
-#: cp/decl.c:10491
+#: cp/decl.c:6425
msgid "destructors must be member functions"
msgstr ""
-#: cp/decl.c:10510
+#: cp/decl.c:6444
msgid "destructor `%T' must match class name `%T'"
msgstr ""
-#: cp/decl.c:10539
-msgid "variable declaration is not allowed here"
-msgstr ""
-
-#: cp/decl.c:10566
-msgid "invalid declarator"
-msgstr ""
-
-#: cp/decl.c:10617
+#: cp/decl.c:6507
msgid "declarator-id missing; using reserved word `%D'"
msgstr ""
-#: cp/decl.c:10674
+#: cp/decl.c:6561
msgid "type `%T' is not derived from type `%T'"
msgstr ""
#. Parse error puts this typespec where
#. a declarator should go.
-#: cp/decl.c:10726
+#: cp/decl.c:6624
msgid "`%T' specified as declarator-id"
msgstr ""
-#: cp/decl.c:10728
+#: cp/decl.c:6626
msgid " perhaps you want `%T' for a constructor"
msgstr ""
@@ -14994,301 +14142,300 @@ msgstr ""
#. decl-specifier like in
#. std::allocator alloc;
#. Handle that gracefully.
-#: cp/decl.c:10750
+#: cp/decl.c:6648
#, c-format
msgid "invalid use of template-name '%E' in a declarator"
msgstr ""
-#: cp/decl.c:10770
+#: cp/decl.c:6668
msgid "declaration of `%D' as non-function"
msgstr ""
-#: cp/decl.c:10847
+#: cp/decl.c:6745
msgid "`bool' is now a keyword"
msgstr ""
-#: cp/decl.c:10849
+#: cp/decl.c:6747
msgid "extraneous `%T' ignored"
msgstr ""
-#: cp/decl.c:10865 cp/decl.c:10910
+#: cp/decl.c:6763 cp/decl.c:6807
msgid "multiple declarations `%T' and `%T'"
msgstr ""
-#: cp/decl.c:10878
+#: cp/decl.c:6776
msgid "ISO C++ does not support `long long'"
msgstr ""
-#: cp/decl.c:10983 cp/decl.c:10986
+#: cp/decl.c:6880 cp/decl.c:6883
#, c-format
msgid "ISO C++ forbids declaration of `%s' with no type"
msgstr ""
-#. The implicit typename extension is deprecated and will be
-#. removed. Warn about its use now.
-#: cp/decl.c:10996
-msgid "`%T' is implicitly a typename"
-msgstr ""
-
-#: cp/decl.c:11032
+#: cp/decl.c:6914
#, c-format
msgid "short, signed or unsigned invalid for `%s'"
msgstr ""
-#: cp/decl.c:11037
+#: cp/decl.c:6919
#, c-format
msgid "long and short specified together for `%s'"
msgstr ""
-#: cp/decl.c:11048
+#: cp/decl.c:6930
#, c-format
msgid "signed and unsigned given together for `%s'"
msgstr ""
-#: cp/decl.c:11157
+#: cp/decl.c:7039
msgid "qualifiers are not allowed on declaration of `operator %T'"
msgstr ""
-#: cp/decl.c:11179
+#: cp/decl.c:7061
msgid "member `%D' cannot be declared both virtual and static"
msgstr ""
-#: cp/decl.c:11188
+#: cp/decl.c:7070
msgid "`%T::%D' is not a valid declarator"
msgstr ""
-#: cp/decl.c:11200
+#: cp/decl.c:7082
msgid "storage class specifiers invalid in parameter declarations"
msgstr ""
-#: cp/decl.c:11204
+#: cp/decl.c:7086
msgid "typedef declaration invalid in parameter declaration"
msgstr ""
-#: cp/decl.c:11217
+#: cp/decl.c:7099
msgid "virtual outside class declaration"
msgstr ""
-#: cp/decl.c:11278
+#: cp/decl.c:7158
#, c-format
msgid "storage class specified for %s `%s'"
msgstr ""
-#: cp/decl.c:11325
+#: cp/decl.c:7193
+#, c-format
+msgid "top-level declaration of `%s' specifies `auto'"
+msgstr "Deklaration höchster Ebene von »%s« spezifiziert »auto«"
+
+#: cp/decl.c:7205
msgid "storage class specifiers invalid in friend function declarations"
msgstr ""
-#: cp/decl.c:11495
+#: cp/decl.c:7370
msgid "destructor cannot be static member function"
msgstr ""
-#: cp/decl.c:11498
+#: cp/decl.c:7373
#, c-format
msgid "destructors may not be `%s'"
msgstr ""
-#: cp/decl.c:11519
+#: cp/decl.c:7394
msgid "constructor cannot be static member function"
msgstr ""
-#: cp/decl.c:11522
+#: cp/decl.c:7397
msgid "constructors cannot be declared virtual"
msgstr ""
-#: cp/decl.c:11527
+#: cp/decl.c:7402
#, c-format
msgid "constructors may not be `%s'"
msgstr ""
-#: cp/decl.c:11537
+#: cp/decl.c:7412
msgid "return value type specifier for constructor ignored"
msgstr ""
-#: cp/decl.c:11556
+#: cp/decl.c:7431
#, c-format
msgid "can't initialize friend function `%s'"
msgstr ""
#. Cannot be both friend and virtual.
-#: cp/decl.c:11560
+#: cp/decl.c:7435
msgid "virtual functions cannot be friends"
msgstr ""
-#: cp/decl.c:11565
+#: cp/decl.c:7440
msgid "friend declaration not in class definition"
msgstr ""
-#: cp/decl.c:11567
+#: cp/decl.c:7442
#, c-format
msgid "can't define friend function `%s' in a local class definition"
msgstr ""
-#: cp/decl.c:11591
+#: cp/decl.c:7463
msgid "destructors may not have parameters"
msgstr ""
-#: cp/decl.c:11622 cp/decl.c:11629
+#: cp/decl.c:7483 cp/decl.c:7490
msgid "cannot declare reference to `%#T'"
msgstr ""
-#: cp/decl.c:11623
+#: cp/decl.c:7484
msgid "cannot declare pointer to `%#T'"
msgstr ""
-#: cp/decl.c:11628
+#: cp/decl.c:7489
msgid "cannot declare pointer to `%#T' member"
msgstr ""
-#: cp/decl.c:11804
+#: cp/decl.c:7627
msgid "extra qualification `%T::' on member `%s' ignored"
msgstr ""
-#: cp/decl.c:11814
+#: cp/decl.c:7639
msgid "cannot declare member function `%T::%s' within `%T'"
msgstr ""
-#: cp/decl.c:11829
+#: cp/decl.c:7654
msgid "cannot declare member `%T::%s' within `%T'"
msgstr ""
-#: cp/decl.c:11908
+#: cp/decl.c:7734
msgid "data member may not have variably modified type `%T'"
msgstr ""
-#: cp/decl.c:11910
+#: cp/decl.c:7736
msgid "parameter may not have variably modified type `%T'"
msgstr ""
#. [dcl.fct.spec] The explicit specifier shall only be used in
#. declarations of constructors within a class definition.
-#: cp/decl.c:11918
+#: cp/decl.c:7744
msgid "only declarations of constructors can be `explicit'"
msgstr ""
-#: cp/decl.c:11926
+#: cp/decl.c:7752
#, c-format
msgid "non-member `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11931
+#: cp/decl.c:7757
#, c-format
msgid "non-object member `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11937
+#: cp/decl.c:7763
#, c-format
msgid "function `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11942
+#: cp/decl.c:7768
#, c-format
msgid "static `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11947
+#: cp/decl.c:7773
#, c-format
msgid "const `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11960
+#: cp/decl.c:7786
msgid "template-id `%D' used as a declarator"
msgstr ""
-#: cp/decl.c:11981
+#: cp/decl.c:7807
msgid "ISO C++ forbids nested type `%D' with same name as enclosing class"
msgstr ""
-#: cp/decl.c:12030
-msgid "typedef name may not be class-qualified"
+#: cp/decl.c:7815
+msgid "%Jtypedef name may not be a nested-name-specifier"
msgstr ""
-#: cp/decl.c:12038
-msgid "invalid type qualifier for non-member function type"
-msgstr ""
+#: cp/decl.c:7861
+msgid "%Jinvalid type qualifier for non-member function type"
+msgstr "%Jungültiger Typkennzeichner für Nicht-Element-Funktionstyp"
-#: cp/decl.c:12101
+#: cp/decl.c:7925
msgid "type qualifiers specified for friend class declaration"
msgstr ""
-#: cp/decl.c:12106
+#: cp/decl.c:7930
msgid "`inline' specified for friend class declaration"
msgstr ""
-#: cp/decl.c:12114
+#: cp/decl.c:7938
msgid "template parameters cannot be friends"
msgstr ""
-#: cp/decl.c:12116
+#: cp/decl.c:7940
msgid "friend declaration requires class-key, i.e. `friend class %T::%D'"
msgstr ""
-#: cp/decl.c:12120
+#: cp/decl.c:7944
msgid "friend declaration requires class-key, i.e. `friend %#T'"
msgstr ""
-#: cp/decl.c:12134
+#: cp/decl.c:7957
msgid "trying to make class `%T' a friend of global scope"
msgstr ""
-#: cp/decl.c:12145
+#: cp/decl.c:7968
msgid "invalid qualifiers on non-member function type"
msgstr ""
-#: cp/decl.c:12164
+#: cp/decl.c:7987
msgid "abstract declarator `%T' used as declaration"
msgstr ""
-#: cp/decl.c:12176
+#: cp/decl.c:7999
msgid "unnamed variable or field declared void"
msgstr ""
-#: cp/decl.c:12185
+#: cp/decl.c:8008
msgid "variable or field declared void"
msgstr ""
-#: cp/decl.c:12195
+#: cp/decl.c:8018
msgid "cannot use `::' in parameter declaration"
msgstr ""
#. Something like struct S { int N::j; };
-#: cp/decl.c:12234
+#: cp/decl.c:8063
msgid "invalid use of `::'"
msgstr ""
-#: cp/decl.c:12246
+#: cp/decl.c:8075
msgid "function `%D' cannot be declared friend"
msgstr ""
-#: cp/decl.c:12258
+#: cp/decl.c:8087
msgid "can't make `%D' into a method -- not in a class"
msgstr ""
-#: cp/decl.c:12267
+#: cp/decl.c:8096
msgid "function `%D' declared virtual inside a union"
msgstr ""
-#: cp/decl.c:12279
+#: cp/decl.c:8108
msgid "`%D' cannot be declared virtual, since it is always static"
msgstr ""
-#: cp/decl.c:12355
+#: cp/decl.c:8185
msgid "field `%D' has incomplete type"
msgstr ""
-#: cp/decl.c:12357
+#: cp/decl.c:8187
msgid "name `%T' has incomplete type"
msgstr ""
-#: cp/decl.c:12366
+#: cp/decl.c:8196
msgid " in instantiation of template `%T'"
msgstr ""
-#: cp/decl.c:12376
+#: cp/decl.c:8206
#, c-format
msgid "`%s' is neither function nor member function; cannot be declared friend"
msgstr ""
-#: cp/decl.c:12387
+#: cp/decl.c:8217
msgid "member functions are implicitly friends of their class"
msgstr ""
@@ -15304,99 +14451,95 @@ msgstr ""
#. the rest of the compiler does not correctly
#. handle the initialization unless the member is
#. static so we make it static below.
-#: cp/decl.c:12434
+#: cp/decl.c:8258
msgid "ISO C++ forbids initialization of member `%D'"
msgstr ""
-#: cp/decl.c:12436
+#: cp/decl.c:8260
msgid "making `%D' static"
msgstr ""
-#: cp/decl.c:12460
+#: cp/decl.c:8283
msgid "ISO C++ forbids static data member `%D' with same name as enclosing class"
msgstr ""
-#: cp/decl.c:12501
+#: cp/decl.c:8323
#, c-format
msgid "storage class `auto' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:12503
+#: cp/decl.c:8325
#, c-format
msgid "storage class `register' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:12505
+#: cp/decl.c:8327
#, c-format
msgid "storage class `__thread' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:12516
+#: cp/decl.c:8338
#, c-format
msgid "storage class `static' invalid for function `%s' declared out of global scope"
msgstr ""
-#: cp/decl.c:12518
+#: cp/decl.c:8340
#, c-format
msgid "storage class `inline' invalid for function `%s' declared out of global scope"
msgstr ""
-#: cp/decl.c:12525
+#: cp/decl.c:8347
#, c-format
msgid "virtual non-class function `%s'"
msgstr ""
-#: cp/decl.c:12554
+#: cp/decl.c:8377
msgid "cannot declare member function `%D' to have static linkage"
msgstr ""
#. FIXME need arm citation
-#: cp/decl.c:12560
+#: cp/decl.c:8383
msgid "cannot declare static function inside another function"
msgstr ""
-#: cp/decl.c:12588
+#: cp/decl.c:8411
msgid "`static' may not be used when defining (as opposed to declaring) a static data member"
msgstr ""
-#: cp/decl.c:12594
+#: cp/decl.c:8417
msgid "static member `%D' declared `register'"
msgstr ""
-#: cp/decl.c:12599
+#: cp/decl.c:8422
msgid "cannot explicitly declare member `%#D' to have extern linkage"
msgstr ""
-#: cp/decl.c:12774
+#: cp/decl.c:8564
msgid "default argument for `%#D' has type `%T'"
msgstr ""
-#: cp/decl.c:12777
+#: cp/decl.c:8567
msgid "default argument for parameter of type `%T' has type `%T'"
msgstr ""
-#: cp/decl.c:12794
+#: cp/decl.c:8584
msgid "default argument `%E' uses local variable `%D'"
msgstr ""
-#: cp/decl.c:12839
+#: cp/decl.c:8628
#, c-format
msgid "invalid string constant `%E'"
msgstr ""
-#: cp/decl.c:12841
+#: cp/decl.c:8630
msgid "invalid integer constant in parameter list, did you forget to give parameter name?"
msgstr ""
-#: cp/decl.c:12879
+#: cp/decl.c:8668
msgid "parameter `%D' invalidly declared method type"
msgstr ""
-#: cp/decl.c:12885
-msgid "parameter `%D' invalidly declared offset type"
-msgstr ""
-
-#: cp/decl.c:12909
+#: cp/decl.c:8692
msgid "parameter `%D' includes %s to array of unknown bound `%T'"
msgstr ""
@@ -15415,510 +14558,345 @@ msgstr ""
#. or implicitly defined), there's no need to worry about their
#. existence. Theoretically, they should never even be
#. instantiated, but that's hard to forestall.
-#: cp/decl.c:13071
+#: cp/decl.c:8851
msgid "invalid constructor; you probably meant `%T (const %T&)'"
msgstr ""
-#: cp/decl.c:13222
+#: cp/decl.c:8991
msgid "`%D' must be a nonstatic member function"
msgstr ""
-#: cp/decl.c:13228
+#: cp/decl.c:8997
msgid "`%D' must be either a non-static member function or a non-member function"
msgstr ""
-#: cp/decl.c:13245
+#: cp/decl.c:9014
msgid "`%D' must have an argument of class or enumerated type"
msgstr ""
-#: cp/decl.c:13277
+#: cp/decl.c:9049
#, c-format
msgid "conversion to %s%s will never use a type conversion operator"
msgstr ""
#. 13.4.0.3
-#: cp/decl.c:13284
+#: cp/decl.c:9056
msgid "ISO C++ prohibits overloading operator ?:"
msgstr ""
-#: cp/decl.c:13334
+#: cp/decl.c:9106
msgid "postfix `%D' must take `int' as its argument"
msgstr ""
-#: cp/decl.c:13338
+#: cp/decl.c:9110
msgid "postfix `%D' must take `int' as its second argument"
msgstr ""
-#: cp/decl.c:13345
+#: cp/decl.c:9117
msgid "`%D' must take either zero or one argument"
msgstr ""
-#: cp/decl.c:13347
+#: cp/decl.c:9119
msgid "`%D' must take either one or two arguments"
msgstr ""
-#: cp/decl.c:13368
+#: cp/decl.c:9140
msgid "prefix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:13374
+#: cp/decl.c:9146
msgid "postfix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:13383
+#: cp/decl.c:9155
msgid "`%D' must take `void'"
msgstr ""
-#: cp/decl.c:13385 cp/decl.c:13393
+#: cp/decl.c:9157 cp/decl.c:9165
msgid "`%D' must take exactly one argument"
msgstr ""
-#: cp/decl.c:13395
+#: cp/decl.c:9167
msgid "`%D' must take exactly two arguments"
msgstr ""
-#: cp/decl.c:13403
+#: cp/decl.c:9175
msgid "user-defined `%D' always evaluates both arguments"
msgstr ""
-#: cp/decl.c:13417
+#: cp/decl.c:9189
msgid "`%D' should return by value"
msgstr ""
-#: cp/decl.c:13429 cp/decl.c:13432
+#: cp/decl.c:9201 cp/decl.c:9204
msgid "`%D' cannot have default arguments"
msgstr ""
-#: cp/decl.c:13475
+#: cp/decl.c:9264
msgid "using typedef-name `%D' after `%s'"
msgstr ""
-#: cp/decl.c:13481
+#: cp/decl.c:9270
msgid "using template type parameter `%T' after `%s'"
msgstr ""
-#: cp/decl.c:13542
-msgid "`%s %T' declares a new type at namespace scope"
+#: cp/decl.c:9278
+msgid "`%T' referred to as `%s'"
+msgstr ""
+
+#: cp/decl.c:9284
+msgid "`%T' referred to as enum"
msgstr ""
-#: cp/decl.c:13545
-msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
+#. If a class template appears as elaborated type specifier
+#. without a template header such as:
+#.
+#. template <class T> class C {};
+#. void f(class C); // No template header here
+#.
+#. then the required template argument is missing.
+#: cp/decl.c:9299
+msgid "template argument required for `%s %T'"
msgstr ""
-#: cp/decl.c:13663
+#: cp/decl.c:9445
msgid "use of enum `%#D' without previous declaration"
msgstr ""
-#: cp/decl.c:13749
+#: cp/decl.c:9530
msgid "derived union `%T' invalid"
msgstr ""
-#: cp/decl.c:13795
+#: cp/decl.c:9583
msgid "base type `%T' fails to be a struct or class type"
msgstr ""
-#: cp/decl.c:13805
-msgid "base class `%T' has incomplete type"
-msgstr ""
-
-#: cp/decl.c:13813
+#: cp/decl.c:9591
msgid "recursive type `%T' undefined"
msgstr ""
-#: cp/decl.c:13815
+#: cp/decl.c:9593
msgid "duplicate base type `%T' invalid"
msgstr ""
-#: cp/decl.c:13926
-msgid "multiple definition of `%#T'"
+#: cp/decl.c:9671
+msgid "Java class '%T' cannot have multiple bases"
msgstr ""
-#: cp/decl.c:13927
-msgid "previous definition here"
+#: cp/decl.c:9673
+msgid "Java class '%T' cannot have virtual bases"
msgstr ""
-#: cp/decl.c:14030
+#: cp/decl.c:9713
+msgid "multiple definition of `%#T'"
+msgstr ""
+
+#: cp/decl.c:9714
+msgid "%Jprevious definition here"
+msgstr "%Jvorherige Definition hier"
+
+#. DR 377
+#.
+#. IF no integral type can represent all the enumerator values, the
+#. enumeration is ill-formed.
+#: cp/decl.c:9849
msgid "no integral type can represent all of the enumerator values for `%T'"
msgstr ""
-#: cp/decl.c:14106
+#: cp/decl.c:9939
msgid "enumerator value for `%D' not integer constant"
msgstr ""
-#: cp/decl.c:14126
+#: cp/decl.c:9959
msgid "overflow in enumeration values at `%D'"
msgstr ""
-#: cp/decl.c:14195
+#: cp/decl.c:10028
msgid "return type `%#T' is incomplete"
msgstr ""
-#: cp/decl.c:14309
-msgid "semicolon missing after declaration of `%#T'"
-msgstr ""
-
-#: cp/decl.c:14330
+#: cp/decl.c:10148
msgid "return type for `main' changed to `int'"
msgstr ""
-#: cp/decl.c:14361
+#: cp/decl.c:10178
msgid "`%D' implicitly declared before its definition"
msgstr ""
-#: cp/decl.c:14383 cp/typeck.c:6314
+#: cp/decl.c:10200 cp/typeck.c:6011
msgid "`operator=' should return a reference to `*this'"
msgstr ""
-#: cp/decl.c:14643
+#: cp/decl.c:10472
msgid "parameter `%D' declared void"
msgstr ""
-#: cp/decl.c:15130
+#: cp/decl.c:10938
+msgid "invalid member function declaration"
+msgstr "ungültige Elementfunktionsdeklaration"
+
+#: cp/decl.c:10955
msgid "`%D' is already defined in class `%T'"
msgstr ""
-#: cp/decl.c:15348
+#: cp/decl.c:11168
msgid "static member function `%#D' declared with type qualifiers"
msgstr ""
-#: cp/decl2.c:153
+#: cp/decl2.c:143
#, c-format
msgid "duplicate type qualifiers in %s declaration"
msgstr ""
-#: cp/decl2.c:192
-msgid "template `%#D' instantiated in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:198
-msgid "template `%#D' defined in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:365
+#: cp/decl2.c:316
msgid "name missing for member function"
msgstr ""
-#. Something has gone very wrong. Assume we are mistakenly reducing
-#. an expression instead of a declaration.
-#: cp/decl2.c:428
-msgid "parser may be lost: is there a '{' missing somewhere?"
-msgstr ""
-
-#: cp/decl2.c:459 cp/decl2.c:473
+#: cp/decl2.c:408 cp/decl2.c:422
msgid "ambiguous conversion for array subscript"
msgstr ""
-#: cp/decl2.c:467
+#: cp/decl2.c:416
msgid "invalid types `%T[%T]' for array subscript"
msgstr ""
-#: cp/decl2.c:515
+#: cp/decl2.c:464
msgid "type `%#T' argument given to `delete', expected pointer"
msgstr ""
-#: cp/decl2.c:523
+#: cp/decl2.c:472
msgid "anachronistic use of array size in vector delete"
msgstr ""
-#: cp/decl2.c:533
+#: cp/decl2.c:482
msgid "cannot delete a function. Only pointer-to-objects are valid arguments to `delete'"
msgstr ""
-#: cp/decl2.c:540
+#: cp/decl2.c:489
msgid "deleting `%T' is undefined"
msgstr ""
-#: cp/decl2.c:548
+#: cp/decl2.c:497
msgid "deleting array `%#D'"
msgstr ""
#. 14.5.2.2 [temp.mem]
#.
#. A local class shall not have member templates.
-#: cp/decl2.c:582
+#: cp/decl2.c:530
msgid "invalid declaration of member template `%#D' in local class"
msgstr ""
-#: cp/decl2.c:591
+#: cp/decl2.c:539
msgid "invalid use of `virtual' in template declaration of `%#D'"
msgstr ""
-#: cp/decl2.c:601 cp/pt.c:2745
+#: cp/decl2.c:549 cp/pt.c:2830
msgid "template declaration of `%#D'"
msgstr ""
-#: cp/decl2.c:651
+#: cp/decl2.c:598
msgid "Java method '%D' has non-Java return type `%T'"
msgstr ""
-#: cp/decl2.c:660
+#: cp/decl2.c:614
msgid "Java method '%D' has non-Java parameter type `%T'"
msgstr ""
-#: cp/decl2.c:746
+#: cp/decl2.c:705
msgid "prototype for `%#D' does not match any in class `%T'"
msgstr ""
-#: cp/decl2.c:828
+#: cp/decl2.c:784
msgid "local class `%#T' shall not have static data member `%#D'"
msgstr ""
-#: cp/decl2.c:836
+#: cp/decl2.c:792
msgid "initializer invalid for static member with constructor"
msgstr ""
-#: cp/decl2.c:839
+#: cp/decl2.c:795
msgid "(an out of class initialization is required)"
msgstr ""
-#: cp/decl2.c:898
-msgid "invalid data member initialization"
-msgstr ""
-
-#: cp/decl2.c:901
-msgid "(use `=' to initialize static data members)"
-msgstr ""
-
-#: cp/decl2.c:947
+#: cp/decl2.c:878
msgid "member `%D' conflicts with virtual function table field name"
msgstr ""
-#: cp/decl2.c:967
+#: cp/decl2.c:895
msgid "`%D' is already defined in `%T'"
msgstr ""
-#: cp/decl2.c:1014
+#: cp/decl2.c:942
msgid "field initializer is not constant"
msgstr ""
-#: cp/decl2.c:1038
+#: cp/decl2.c:970
msgid "`asm' specifiers are not permitted on non-static data members"
msgstr ""
-#: cp/decl2.c:1090
+#: cp/decl2.c:1020
msgid "cannot declare `%D' to be a bit-field type"
msgstr ""
-#: cp/decl2.c:1100
+#: cp/decl2.c:1030
msgid "cannot declare bit-field `%D' with function type"
msgstr ""
-#: cp/decl2.c:1107
+#: cp/decl2.c:1037
msgid "`%D' is already defined in the class %T"
msgstr ""
-#: cp/decl2.c:1114
+#: cp/decl2.c:1044
msgid "static member `%D' cannot be a bit-field"
msgstr ""
-#: cp/decl2.c:1201
+#: cp/decl2.c:1103
msgid "initializer specified for non-member function `%D'"
msgstr ""
-#: cp/decl2.c:1205
+#: cp/decl2.c:1107
msgid "invalid initializer for virtual method `%D'"
msgstr ""
-#: cp/decl2.c:1319
+#: cp/decl2.c:1154
msgid "anonymous struct not inside named type"
msgstr ""
-#: cp/decl2.c:1415
+#: cp/decl2.c:1224
msgid "namespace-scope anonymous aggregates must be static"
msgstr ""
-#: cp/decl2.c:1428
-msgid "anonymous aggregate with no members"
-msgstr ""
+#: cp/decl2.c:1231
+msgid "anonymous union with no members"
+msgstr "anonymes union ohne Element"
-#: cp/decl2.c:1497
+#: cp/decl2.c:1265
msgid "`operator new' must return type `%T'"
msgstr ""
-#: cp/decl2.c:1505
+#: cp/decl2.c:1273
msgid "`operator new' takes type `size_t' (`%T') as first parameter"
msgstr ""
-#: cp/decl2.c:1532
+#: cp/decl2.c:1299
msgid "`operator delete' must return type `%T'"
msgstr ""
-#: cp/decl2.c:1540
+#: cp/decl2.c:1307
msgid "`operator delete' takes type `%T' as first parameter"
msgstr ""
-#. Overflow occurred. That means there are at least 4 billion
-#. initialization functions.
-#: cp/decl2.c:2282
-msgid "too many initialization functions required"
-msgstr ""
-
-#: cp/decl2.c:3006
-#, fuzzy
+#: cp/decl2.c:2814
msgid "inline function `%D' used but never defined"
-msgstr "»%s« verwendet, aber nirgendwo definiert"
-
-#: cp/decl2.c:3135
-msgid "use of old-style cast"
-msgstr ""
-
-#: cp/decl2.c:3860
-msgid "use of `%D' is ambiguous"
-msgstr ""
-
-#: cp/decl2.c:3861
-msgid " first declared as `%#D' here"
-msgstr ""
-
-#: cp/decl2.c:3864
-msgid " also declared as `%#D' here"
-msgstr ""
-
-#: cp/decl2.c:3879
-msgid "`%D' denotes an ambiguous type"
-msgstr ""
-
-#: cp/decl2.c:3880
-msgid " first type here"
-msgstr ""
-
-#: cp/decl2.c:3881
-msgid " other type here"
-msgstr ""
-
-#: cp/decl2.c:3982
-msgid "declaration of `%D' not in a namespace surrounding `%D'"
-msgstr ""
-
-#: cp/decl2.c:4016
-msgid "`%D' should have been declared inside `%D'"
-msgstr ""
-
-#: cp/decl2.c:4152
-msgid "`%D' is not a function,"
-msgstr ""
-
-#: cp/decl2.c:4153
-msgid " conflict with `%D'"
-msgstr ""
-
-#. The parser did not find it, so it's not there.
-#: cp/decl2.c:4473
-msgid "unknown namespace `%D'"
-msgstr ""
-
-#: cp/decl2.c:4507 cp/decl2.c:4794
-msgid "`%T' is not a namespace"
-msgstr ""
-
-#: cp/decl2.c:4509
-msgid "`%D' is not a namespace"
-msgstr ""
-
-#: cp/decl2.c:4518
-msgid "a using-declaration cannot specify a template-id. Try `using %D'"
-msgstr ""
-
-#: cp/decl2.c:4532
-msgid "namespace `%D' not allowed in using-declaration"
-msgstr ""
-
-#: cp/decl2.c:4561
-msgid "`%D' not declared"
-msgstr ""
+msgstr "inline-Funktion »%D«, aber nirgendwo definiert"
-#. If the OLD_FN was really declared, the
-#. declarations don't match.
-#: cp/decl2.c:4573 cp/decl2.c:4615 cp/decl2.c:4640
-msgid "`%D' is already declared in this scope"
-msgstr ""
-
-#: cp/decl2.c:4646
-msgid "using declaration `%D' introduced ambiguous type `%T'"
-msgstr ""
-
-#: cp/decl2.c:4740
-msgid "using-declaration for non-member at class scope"
-msgstr ""
-
-#: cp/decl2.c:4746
-msgid "using-declaration for destructor"
-msgstr ""
-
-#: cp/decl2.c:4752
-msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
-msgstr ""
-
-#: cp/decl2.c:4788
-msgid "namespace `%T' undeclared"
-msgstr ""
-
-#: cp/decl2.c:4817
+#: cp/decl2.c:2960
msgid "default argument missing for parameter %P of `%+#D'"
msgstr ""
-#: cp/decl2.c:4941
-msgid "extra qualification `%T::' on member `%D' ignored"
-msgstr ""
-
-#: cp/decl2.c:4945
-msgid "`%T' does not have a class or union named `%D'"
-msgstr ""
-
-#: cp/decl2.c:4963
-msgid "`%T' is not a class or union type"
-msgstr ""
-
-#: cp/decl2.c:4977
-msgid "template argument is required for `%T'"
-msgstr ""
-
-#: cp/decl2.c:4995
-msgid "declaration of `%D' in `%D' which does not enclose `%D'"
-msgstr ""
-
-#: cp/error.c:35
-#, c-format
-msgid "`%s' not supported by %s"
-msgstr ""
-
-#: cp/error.c:571
-#, c-format
-msgid "<anonymous %s>"
-msgstr ""
-
-#: cp/error.c:810
-#, c-format
-msgid "(static %s for %s)"
-msgstr ""
-
-#: cp/error.c:1503
-#, c-format
-msgid "\\x%x"
-msgstr ""
-
-#: cp/error.c:2473
-#, c-format
-msgid "In %s `%s':"
-msgstr ""
-
-#: cp/error.c:2530
-#, c-format
-msgid "%s: In instantiation of `%s':\n"
-msgstr ""
-
-#: cp/error.c:2554
-#, c-format
-msgid "%s:%d: instantiated from `%s'\n"
-msgstr ""
-
-#: cp/error.c:2559
-#, c-format
-msgid "%s:%d: instantiated from here\n"
-msgstr ""
-
#. damn ICE suppression
-#: cp/error.c:2713
+#: cp/error.c:2374
#, c-format
msgid "unexpected letter `%c' in locate_error\n"
msgstr ""
@@ -15937,158 +14915,174 @@ msgstr ""
msgid "type `%T' is not derived from `java::lang::Throwable'"
msgstr ""
-#: cp/except.c:322
+#: cp/except.c:321
msgid "mixing C++ and Java catches in a single translation unit"
msgstr ""
-#: cp/except.c:639
+#: cp/except.c:630
msgid "throwing NULL, which has integral, not pointer type"
msgstr ""
-#: cp/except.c:730
+#: cp/except.c:653 cp/init.c:2029
+msgid "`%D' should never be overloaded"
+msgstr ""
+
+#: cp/except.c:722
msgid " in thrown expression"
msgstr ""
-#: cp/except.c:856
+#: cp/except.c:843
msgid "expression '%E' of abstract class type '%T' cannot be used in throw-expression"
msgstr ""
-#: cp/except.c:944
+#: cp/except.c:925
msgid "exception of type `%T' will be caught"
msgstr ""
-#: cp/except.c:947
+#: cp/except.c:928
msgid " by earlier handler for `%T'"
msgstr ""
-#: cp/except.c:968
+#: cp/except.c:949
msgid "`...' handler must be the last handler for its try block"
msgstr ""
-#: cp/friend.c:159
+#: cp/friend.c:151
msgid "`%D' is already a friend of class `%T'"
msgstr ""
-#: cp/friend.c:161
-msgid "previous friend declaration of `%D'"
-msgstr ""
-
-#: cp/friend.c:206
+#: cp/friend.c:202
msgid "invalid type `%T' declared `friend'"
msgstr ""
#. [temp.friend]
#. Friend declarations shall not declare partial
#. specializations.
-#: cp/friend.c:222
+#: cp/friend.c:218
msgid "partial specialization `%T' declared `friend'"
msgstr ""
-#: cp/friend.c:231
+#: cp/friend.c:228
msgid "class `%T' is implicitly friends with itself"
msgstr ""
#. template <class T> friend typename S<T>::X;
-#: cp/friend.c:249
+#: cp/friend.c:246
msgid "typename type `%#T' declared `friend'"
msgstr ""
#. template <class T> friend class T;
-#: cp/friend.c:255
+#: cp/friend.c:252
msgid "template parameter type `%T' declared `friend'"
msgstr ""
#. template <class T> friend class A; where A is not a template
-#: cp/friend.c:261
+#: cp/friend.c:258
msgid "`%#T' is not a template"
msgstr ""
-#: cp/friend.c:276
+#: cp/friend.c:277
+msgid "`%D' is already a friend of `%T'"
+msgstr ""
+
+#: cp/friend.c:287
msgid "`%T' is already a friend of `%T'"
msgstr ""
-#: cp/friend.c:376
+#: cp/friend.c:413
msgid "member `%D' declared as friend before type `%T' defined"
msgstr ""
-#: cp/friend.c:431
+#: cp/friend.c:470
msgid "friend declaration `%#D' declares a non-template function"
msgstr ""
-#: cp/friend.c:434
+#: cp/friend.c:473
msgid "(if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) -Wno-non-template-friend disables this warning"
msgstr ""
-#: cp/g++spec.c:211 java/jvspec.c:423
+#: cp/g++spec.c:229 java/jvspec.c:415
#, c-format
msgid "argument to `%s' missing\n"
msgstr ""
-#: cp/init.c:334
+#: cp/init.c:318
msgid "`%D' should be initialized in the member initialization list"
msgstr ""
-#: cp/init.c:384
+#: cp/init.c:368
msgid "default-initialization of `%#D', which has reference type"
msgstr ""
-#: cp/init.c:389
+#: cp/init.c:373
msgid "uninitialized reference member `%D'"
msgstr ""
-#: cp/init.c:397
-msgid "initializer list treated as compound expression"
-msgstr ""
-
-#: cp/init.c:538
+#: cp/init.c:511
msgid "`%D' will be initialized after"
msgstr ""
-#: cp/init.c:541
+#: cp/init.c:514
msgid "base `%T' will be initialized after"
msgstr ""
-#: cp/init.c:544
+#: cp/init.c:517
msgid " `%#D'"
msgstr ""
-#: cp/init.c:546
+#: cp/init.c:519
msgid " base `%T'"
msgstr ""
-#: cp/init.c:564
+#: cp/init.c:520
+msgid " when initialized here"
+msgstr " während es hier initialisiert wurde"
+
+#: cp/init.c:536
+msgid "multiple initializations given for `%D'"
+msgstr ""
+
+#: cp/init.c:538
msgid "multiple initializations given for base `%T'"
msgstr ""
-#: cp/init.c:631
+#: cp/init.c:605
msgid "initializations for multiple members of `%T'"
msgstr ""
-#: cp/init.c:688
+#: cp/init.c:662
msgid "base class `%#T' should be explicitly initialized in the copy constructor"
msgstr ""
-#: cp/init.c:926
+#: cp/init.c:892 cp/init.c:911
msgid "class `%T' does not have any field named `%D'"
msgstr ""
-#: cp/init.c:932
-msgid "field `%#D' is static; the only point of initialization is its definition"
+#: cp/init.c:898
+msgid "`%#D' is a static data member; it can only be initialized at its definition"
msgstr ""
-#: cp/init.c:965
+#: cp/init.c:905
+msgid "`%#D' is not a non-static data member of `%T'"
+msgstr "»%#D« ist kein Nicht-static-Datenelement von »%T«"
+
+#: cp/init.c:944
msgid "unnamed initializer for `%T', which has no base classes"
msgstr ""
-#: cp/init.c:972
+#: cp/init.c:951
msgid "unnamed initializer for `%T', which uses multiple inheritance"
msgstr ""
-#: cp/init.c:1007
+#: cp/init.c:1006
+msgid "'%D' is both a direct base and an indirect virtual base"
+msgstr ""
+
+#: cp/init.c:1014
msgid "type `%D' is not a direct or virtual base of `%T'"
msgstr ""
-#: cp/init.c:1010
+#: cp/init.c:1017
msgid "type `%D' is not a direct base of `%T'"
msgstr ""
@@ -16104,532 +15098,811 @@ msgstr ""
#. COMPLEX zees(1.0, 0.0)[10];
#. }
#.
-#: cp/init.c:1104
+#: cp/init.c:1109
msgid "bad array initializer"
msgstr ""
-#: cp/init.c:1311
+#: cp/init.c:1303
msgid "`%T' is not an aggregate type"
msgstr ""
-#: cp/init.c:1334
+#: cp/init.c:1324
msgid "`%T' fails to be an aggregate typedef"
msgstr ""
-#: cp/init.c:1343
+#: cp/init.c:1333
msgid "type `%T' is of non-aggregate type"
msgstr ""
-#: cp/init.c:1446
-msgid "cannot call destructor `%T::~%T' without object"
-msgstr ""
-
-#: cp/init.c:1490
-msgid "invalid use of non-static field `%D'"
-msgstr ""
-
-#. We can get here when processing a bad default
-#. argument, like:
-#. struct S { int a; void f(int i = a); }
-#: cp/init.c:1499 cp/method.c:160
-msgid "invalid use of member `%D'"
-msgstr ""
-
-#: cp/init.c:1509
-msgid "no method `%T::%D'"
+#: cp/init.c:1425 cp/typeck.c:1798
+msgid "qualified type `%T' does not match destructor name `~%T'"
msgstr ""
-#: cp/init.c:1602
+#: cp/init.c:1433
msgid "incomplete type `%T' does not have member `%D'"
msgstr ""
-#: cp/init.c:1676
+#: cp/init.c:1452
msgid "`%D' is not a member of type `%T'"
msgstr ""
-#: cp/init.c:1695
+#: cp/init.c:1471
msgid "invalid pointer to bit-field `%D'"
msgstr ""
-#: cp/init.c:1734
-msgid "object missing in use of pointer-to-member construct"
-msgstr ""
-
-#: cp/init.c:1774
-msgid "member `%D' is non-static but referenced as a static member"
-msgstr ""
+#: cp/init.c:1573
+msgid "invalid use of non-static member function `%D'"
+msgstr "ungültige Verwendung der Nicht-static-Elementfunktion »%D«"
-#: cp/init.c:1776 cp/typeck.c:2826 cp/typeck.c:2930
-msgid "at this point in file"
-msgstr ""
+#: cp/init.c:1579 cp/semantics.c:1236
+msgid "invalid use of non-static data member `%D'"
+msgstr "ungültige Verwendung des Nicht-static-Datenelementes »%D«"
-#: cp/init.c:1813
-#, c-format
-msgid "object missing in `%E'"
-msgstr ""
-
-#: cp/init.c:1944
+#: cp/init.c:1718
msgid "new of array type fails to specify size"
msgstr ""
-#: cp/init.c:1955
+#: cp/init.c:1729
msgid "size in array new must have integral type"
msgstr ""
-#: cp/init.c:1961
+#: cp/init.c:1735
msgid "zero size array reserves no space"
msgstr ""
-#: cp/init.c:2026
+#: cp/init.c:1801
msgid "new cannot be applied to a reference type"
msgstr ""
-#: cp/init.c:2032
+#: cp/init.c:1807
msgid "new cannot be applied to a function type"
msgstr ""
-#: cp/init.c:2079
+#: cp/init.c:1853
msgid "call to Java constructor, while `jclass' undefined"
msgstr ""
-#: cp/init.c:2095
+#: cp/init.c:1869
msgid "can't find class$"
msgstr ""
-#: cp/init.c:2209
+#: cp/init.c:1995
msgid "invalid type `void' for new"
msgstr ""
-#: cp/init.c:2261
+#: cp/init.c:2005
+msgid "uninitialized const in `new' of `%#T'"
+msgstr ""
+
+#: cp/init.c:2024
#, c-format
msgid "call to Java constructor with `%s' undefined"
msgstr ""
-#: cp/init.c:2369
-msgid "ISO C++ forbids initialization in array new"
+#: cp/init.c:2065
+msgid "request for member `%D' is ambiguous"
msgstr ""
-#: cp/init.c:2391 cp/typeck2.c:367 cp/typeck2.c:1208
-msgid "initializer list being treated as compound expression"
+#: cp/init.c:2189
+msgid "ISO C++ forbids initialization in array new"
msgstr ""
-#: cp/init.c:2397
+#: cp/init.c:2213
msgid "ISO C++ forbids aggregate initializer to new"
msgstr ""
-#: cp/init.c:2485
-msgid "uninitialized const in `new' of `%#T'"
-msgstr ""
-
-#: cp/init.c:2864
+#: cp/init.c:2658
msgid "initializer ends prematurely"
msgstr ""
-#: cp/init.c:2934
+#: cp/init.c:2715
msgid "cannot initialize multi-dimensional array with initializer"
msgstr ""
-#: cp/init.c:3124
-msgid "unknown array size in delete"
-msgstr ""
-
-#: cp/init.c:3389
-msgid "type to vector delete is neither pointer or array type"
-msgstr ""
-
-#: cp/lex.c:136
-msgid "type name expected before `*'"
-msgstr ""
-
-#: cp/lex.c:158
-msgid "cannot declare references to references"
+#: cp/init.c:2876
+msgid "possible problem detected in invocation of delete operator:"
msgstr ""
-#: cp/lex.c:163
-msgid "cannot declare pointers to references"
+#: cp/init.c:2879
+msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined."
msgstr ""
-#: cp/lex.c:167
-msgid "type name expected before `&'"
+#: cp/init.c:2900
+msgid "unknown array size in delete"
msgstr ""
-#: cp/lex.c:894
-#, c-format
-msgid "semicolon missing after %s declaration"
+#: cp/init.c:3165
+msgid "type to vector delete is neither pointer or array type"
msgstr ""
-#: cp/lex.c:897
-msgid "semicolon missing after declaration of `%T'"
+#: cp/lex.c:99
+msgid "type name expected before `*'"
msgstr ""
-#: cp/lex.c:945
+#: cp/lex.c:501
#, c-format
msgid "junk at end of #pragma %s"
msgstr ""
-#: cp/lex.c:952
+#: cp/lex.c:508
#, c-format
msgid "invalid #pragma %s"
msgstr ""
-#: cp/lex.c:961
+#: cp/lex.c:516
msgid "#pragma vtable no longer supported"
msgstr ""
-#: cp/lex.c:1038
+#: cp/lex.c:590
#, c-format
msgid "#pragma implementation for %s appears after file is included"
msgstr ""
-#: cp/lex.c:1063
+#: cp/lex.c:614
msgid "junk at end of #pragma GCC java_exceptions"
msgstr ""
-#: cp/lex.c:1107
+#: cp/lex.c:628
msgid "`%D' not defined"
msgstr ""
-#: cp/lex.c:1110
+#: cp/lex.c:631
msgid "`%D' was not declared in this scope"
msgstr ""
-#: cp/lex.c:1118
+#: cp/lex.c:639
msgid "`%D' undeclared (first use this function)"
msgstr ""
-#: cp/lex.c:1122
+#: cp/lex.c:643
msgid "(Each undeclared identifier is reported only once for each function it appears in.)"
msgstr ""
-#: cp/lex.c:1242
-msgid "`::%D' undeclared (first use here)"
+#. In a template, it is invalid to write "f()" or "f(3)" if no
+#. declaration of "f" is available. Historically, G++ and most
+#. other compilers accepted that usage since they deferred all name
+#. lookup until instantiation time rather than doing unqualified
+#. name lookup at template definition time; explain to the user what
+#. is going wrong.
+#.
+#. Note that we have the exact wording of the following message in
+#. the manual (trouble.texi, node "Name lookup"), so they need to
+#. be kept in synch.
+#: cp/lex.c:674
+msgid "there are no arguments to `%D' that depend on a template parameter, so a declaration of `%D' must be available"
+msgstr ""
+
+#: cp/lex.c:683
+msgid "(if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)"
msgstr ""
-#: cp/mangle.c:2051
+#: cp/mangle.c:2036
msgid "call_expr cannot be mangled due to a defect in the C++ ABI"
msgstr ""
-#: cp/mangle.c:2363
+#: cp/mangle.c:2089
+msgid "omitted middle operand to `?:' operand cannot be mangled"
+msgstr ""
+
+#: cp/mangle.c:2388
msgid "the mangled name of `%D' will change in a future version of GCC"
msgstr ""
-#: cp/method.c:154
-msgid "invalid use of member `%D' in static member function"
+#: cp/method.c:456
+msgid "generic thunk code fails for method `%#D' which uses `...'"
msgstr ""
-#: cp/method.c:216
-msgid "use of namespace `%D' as expression"
+#: cp/method.c:681
+msgid "non-static const member `%#D', can't use default assignment operator"
msgstr ""
-#: cp/method.c:221
-msgid "use of class template `%T' as expression"
+#: cp/method.c:686
+msgid "non-static reference member `%#D', can't use default assignment operator"
msgstr ""
-#: cp/method.c:234
-#, c-format
-msgid "use of %s from containing function"
+#: cp/name-lookup.c:649
+msgid "`%#D' used prior to declaration"
msgstr ""
-#: cp/method.c:237
-msgid " `%#D' declared here"
+#: cp/name-lookup.c:680
+msgid "redeclaration of `wchar_t' as `%T'"
msgstr ""
-#: cp/method.c:255
-msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
+#. A redeclaration of main, but not a duplicate of the
+#. previous one.
+#.
+#. [basic.start.main]
+#.
+#. This function shall not be overloaded.
+#: cp/name-lookup.c:712
+msgid "invalid redeclaration of `%D'"
msgstr ""
-#: cp/method.c:458
-msgid "generic thunk code fails for method `%#D' which uses `...'"
+#: cp/name-lookup.c:713
+msgid "as `%D'"
msgstr ""
-#: cp/method.c:697
-msgid "non-static const member `%#D', can't use default assignment operator"
+#: cp/name-lookup.c:801
+msgid "type mismatch with previous external decl of `%#D'"
+msgstr "Typen passen nicht zu vorheriger externer Deklaration von »%#D«"
+
+#: cp/name-lookup.c:802
+msgid "previous external decl of `%#D'"
msgstr ""
-#: cp/method.c:702
-msgid "non-static reference member `%#D', can't use default assignment operator"
+#: cp/name-lookup.c:844
+msgid "`%D' was previously implicitly declared to return `int'"
msgstr ""
-#: parse.y:262
-msgid "`%s' tag used in naming `%#T'"
+#: cp/name-lookup.c:902
+msgid "extern declaration of `%#D' doesn't match"
msgstr ""
-#: parse.y:542
-msgid "keyword `export' not implemented, and will be ignored"
+#: cp/name-lookup.c:903
+msgid "global declaration `%#D'"
+msgstr ""
+
+#: cp/name-lookup.c:939
+msgid "declaration of `%#D' shadows a parameter"
+msgstr ""
+
+#: cp/name-lookup.c:960
+#, c-format
+msgid "declaration of `%s' shadows a member of `this'"
+msgstr ""
+
+#: cp/name-lookup.c:1136
+msgid "name lookup of `%D' changed"
+msgstr ""
+
+#: cp/name-lookup.c:1138
+msgid " matches this `%D' under ISO standard rules"
msgstr ""
-#: parse.y:646
-msgid "use of linkage spec `%D' is different from previous spec `%D'"
+#: cp/name-lookup.c:1140
+msgid " matches this `%D' under old rules"
msgstr ""
-#: parse.y:943
-msgid "no base or member initializers given following ':'"
+#: cp/name-lookup.c:1154 cp/name-lookup.c:1161
+msgid "name lookup of `%D' changed for new ISO `for' scoping"
msgstr ""
-#: parse.y:984
-msgid "anachronistic old style base class initializer"
+#: cp/name-lookup.c:1156
+msgid " cannot use obsolete binding at `%D' because it has a destructor"
msgstr ""
-#. Handle `Class<Class<Type>>' without space in the `>>'
-#: parse.y:1117
-msgid "`>>' should be `> >' in template class name"
+#: cp/name-lookup.c:1163
+msgid " using obsolete binding at `%D'"
msgstr ""
-#: parse.y:1164
-msgid "use of template qualifier outside template"
+#: cp/name-lookup.c:1216
+#, c-format
+msgid "%s %s(%E) %p %d\n"
msgstr ""
-#: parse.y:1193 parse.y:1202
+#: cp/name-lookup.c:1219
#, c-format
-msgid "ISO C++ forbids an empty condition for `%s'"
+msgid "%s %s %p %d\n"
+msgstr "%s %s %p %d\n"
+
+#: cp/name-lookup.c:1338
+msgid "XXX is_class_level != (current_scope == class_scope)\n"
msgstr ""
-#: parse.y:1225
-msgid "definition of class `%T' in condition"
+#: cp/name-lookup.c:1975
+msgid "`%#D' hides constructor for `%#T'"
msgstr ""
-#: parse.y:1227
-msgid "definition of enum `%T' in condition"
+#: cp/name-lookup.c:1990
+msgid "`%#D' conflicts with previous using declaration `%#D'"
msgstr ""
-#: parse.y:1238
-msgid "definition of array `%#D' in condition"
+#: cp/name-lookup.c:2002
+msgid "previous non-function declaration `%#D'"
msgstr ""
-#: parse.y:1351
-msgid "old style placement syntax, use () instead"
+#: cp/name-lookup.c:2003
+msgid "conflicts with function declaration `%#D'"
msgstr ""
-#: parse.y:1362
-msgid "`%T' is not a valid expression"
+#. 7.3.3/5
+#. A using-declaration shall not name a template-id.
+#: cp/name-lookup.c:2080
+msgid "a using-declaration cannot specify a template-id. Try `using %D'"
msgstr ""
-#. This was previously allowed as an extension, but
-#. was removed in G++ 3.3.
-#: parse.y:1369
-msgid "initialization of new expression with `='"
+#: cp/name-lookup.c:2086
+msgid "namespace `%D' not allowed in using-declaration"
msgstr ""
-#: parse.y:1395
-msgid "ISO C++ forbids compound literals"
+#. It's a nested name with template parameter dependent scope.
+#. This can only be using-declaration for class member.
+#: cp/name-lookup.c:2094 cp/name-lookup.c:2108 cp/name-lookup.c:3283
+msgid "`%T' is not a namespace"
msgstr ""
-#: parse.y:1642
-msgid "ISO C++ forbids braced-groups within expressions"
+#: cp/name-lookup.c:2132
+msgid "`%D' not declared"
msgstr ""
-#: parse.y:1721
-#, fuzzy
-msgid "invalid use of template `%D'"
-msgstr "ungültige Option »%s«"
+#. If the OLD_FN was really declared, the
+#. declarations don't match.
+#: cp/name-lookup.c:2144 cp/name-lookup.c:2186 cp/name-lookup.c:2211
+msgid "`%D' is already declared in this scope"
+msgstr ""
-#: parse.y:2053 parse.y:2068
-msgid "sigof type specifier"
+#: cp/name-lookup.c:2217
+msgid "using declaration `%D' introduced ambiguous type `%T'"
msgstr ""
-#: parse.y:2058
-msgid "`sigof' applied to non-aggregate expression"
+#. Definition isn't the kind we were looking for.
+#: cp/name-lookup.c:2376 cp/name-lookup.c:2395
+msgid "`%#D' redeclared as %C"
msgstr ""
-#: parse.y:2073
-msgid "`sigof' applied to non-aggregate type"
+#: cp/name-lookup.c:2805
+msgid "using-declaration for non-member at class scope"
msgstr ""
-#: parse.y:2339
-msgid "using `typename' outside of template"
+#: cp/name-lookup.c:2812
+msgid "using-declaration cannot name destructor"
msgstr ""
-#: parse.y:2356
-msgid "qualified name does not name a class"
+#: cp/name-lookup.c:2908
+msgid "declaration of `%D' not in a namespace surrounding `%D'"
msgstr ""
-#: parse.y:2417
-#, c-format
-msgid "storage class specifier `%s' not allowed after struct or class"
+#: cp/name-lookup.c:2948
+msgid "`%D' should have been declared inside `%D'"
msgstr ""
-#: parse.y:2419
-#, c-format
-msgid "type specifier `%s' not allowed after struct or class"
+#: cp/name-lookup.c:3012
+msgid "namespace alias `%D' not allowed here, assuming `%D'"
msgstr ""
-#: parse.y:2421
-#, c-format
-msgid "type qualifier `%s' not allowed after struct or class"
+#. The parser did not find it, so it's not there.
+#: cp/name-lookup.c:3127
+msgid "unknown namespace `%D'"
msgstr ""
-#: parse.y:2423
-msgid "no body nor ';' separates two class, struct or union declarations"
+#: cp/name-lookup.c:3277
+msgid "namespace `%T' undeclared"
msgstr ""
-#: parse.y:2553
-msgid "no bases given following `:'"
+#: cp/name-lookup.c:3310
+msgid "strong using only meaningful at namespace scope"
msgstr ""
-#: parse.y:2584 parse.y:2599
-msgid "`%D' access"
+#: cp/name-lookup.c:3317
+msgid "`%D' attribute directive ignored"
+msgstr "Attribut-Anweisung »%D« wird ignoriert"
+
+#: cp/name-lookup.c:3450
+msgid "use of `%D' is ambiguous"
msgstr ""
-#: parse.y:2589
-msgid "multiple access specifiers"
+#: cp/name-lookup.c:3451
+msgid " first declared as `%#D' here"
msgstr ""
-#: parse.y:2607
-msgid "multiple `virtual' specifiers"
+#: cp/name-lookup.c:3454
+msgid " also declared as `%#D' here"
msgstr ""
-#: parse.y:2644
-msgid "missing ';' before right brace"
+#: cp/name-lookup.c:3469
+msgid "`%D' denotes an ambiguous type"
msgstr ""
-#: parse.y:2865
-msgid "ISO C++ forbids array dimensions with parenthesized type in new"
+#: cp/name-lookup.c:3470
+msgid "%J first type here"
msgstr ""
-#: parse.y:3152 parse.y:3172 parse.y:3181 parse.y:3210
-msgid "`%T' is not a class or namespace"
+#: cp/name-lookup.c:3471
+msgid "%J other type here"
msgstr ""
-#: parse.y:3377
-msgid "ISO C++ forbids label declarations"
+#. This happens for A::B where B is a template, and there are no
+#. template arguments.
+#: cp/name-lookup.c:3536 cp/typeck.c:1773
+msgid "invalid use of `%D'"
msgstr ""
-#: parse.y:3537
-msgid "ISO C++ forbids computed gotos"
+#: cp/name-lookup.c:3577
+msgid "`%D::%D' is not a template"
+msgstr ""
+
+#: cp/name-lookup.c:3594
+msgid "`%D' undeclared in namespace `%D'"
+msgstr ""
+
+#: cp/name-lookup.c:4055
+msgid "`%D' is not a function,"
+msgstr ""
+
+#: cp/name-lookup.c:4056
+msgid " conflict with `%D'"
+msgstr ""
+
+#: cp/name-lookup.c:4794
+msgid "XXX entering pop_everything ()\n"
msgstr ""
-#: parse.y:3545
-msgid "label must be followed by statement"
+#: cp/name-lookup.c:4803
+msgid "XXX leaving pop_everything ()\n"
msgstr ""
-#: parse.y:3590
-msgid "must have at least one catch per try block"
+#: cp/parser.c:609
+msgid "invalid token"
+msgstr "ungültiges Token"
+
+#: cp/parser.c:1806
+msgid "`%D::%D' has not been declared"
+msgstr "»%D::%D« wurde nicht deklariert"
+
+#: cp/parser.c:1809 cp/semantics.c:2284
+msgid "`::%D' has not been declared"
+msgstr "»::%D« wurde nicht deklariert"
+
+#: cp/parser.c:1811
+msgid "`%D' has not been declared"
+msgstr "»%D« wurde nicht deklariert"
+
+#: cp/parser.c:1814
+msgid "`%D::%D' %s"
msgstr ""
-#: parse.y:3650
-msgid "ISO C++ forbids compound statements inside for initializations"
+#: cp/parser.c:1816
+msgid "`::%D' %s"
msgstr ""
-#. This helps us recover from really nasty
-#. parse errors, for example, a missing right
-#. parenthesis.
-#: parse.y:3737 parse.y:3747
-msgid "possibly missing ')'"
+#: cp/parser.c:1818
+msgid "`%D' %s"
+msgstr "»%D« %s"
+
+#: cp/parser.c:1870
+msgid "new types may not be defined in a return type"
msgstr ""
-#: parse.y:3840
-msgid "type specifier omitted for parameter"
+#: cp/parser.c:1888 cp/pt.c:4185
+msgid "`%T' is not a template"
msgstr ""
-#: parse.y:3849
+#: cp/parser.c:1890
+#, c-format
+msgid "`%s' is not a template"
+msgstr "»%s« ist kein Template"
+
+#: cp/parser.c:1892
+msgid "invalid template-id"
+msgstr "ungültige Template-ID"
+
+#: cp/parser.c:1927
+#, c-format
+msgid "%s cannot appear in a constant-expression"
+msgstr "%s kann nicht in einem Konstanten-Ausdruck auftreten"
+
+#. Issue an error message.
+#: cp/parser.c:1954
#, c-format
-msgid "`%E' is not a type, use `typename %E' to make it one"
+msgid "`%s' does not name a type"
+msgstr "»%s« bezeichnet keinen Typ"
+
+#: cp/parser.c:1985
+msgid "(perhaps `typename %T::%s' was intended)"
+msgstr ""
+
+#: cp/parser.c:2407
+msgid "ISO C++ forbids braced-groups within expressions"
+msgstr ""
+
+#: cp/parser.c:2416
+msgid "statement-expressions are allowed only inside functions"
+msgstr "Anweisungs-Ausdrücke sind nur innerhalb von Funktionen erlaubt"
+
+#: cp/parser.c:2467
+msgid "`this' may not be used in this context"
+msgstr ""
+
+#: cp/parser.c:2617
+msgid "local variable `%D' may not appear in this context"
+msgstr ""
+
+#: cp/parser.c:2982
+msgid "typedef-name `%D' used as destructor declarator"
msgstr ""
-#: parse.y:3851
-msgid "no type `%D' in `%T'"
+#: cp/parser.c:3627
+msgid "ISO C++ forbids compound-literals"
+msgstr "ISO-C++ verbietet zusammengesetzte Literale"
+
+#: cp/parser.c:4599
+msgid "expression in new-declarator must have integral or enumeration type"
msgstr ""
-#: parse.y:3854
+#: cp/parser.c:4775
+msgid "use of old-style cast"
+msgstr ""
+
+#: cp/parser.c:5528
#, c-format
-msgid "type specifier omitted for parameter `%E'"
+msgid "case label `%E' not within a switch statement"
+msgstr ""
+
+#: cp/parser.c:6070
+msgid "ISO C++ forbids computed gotos"
+msgstr ""
+
+#: cp/parser.c:6190
+msgid "extra `;'"
+msgstr ""
+
+#: cp/parser.c:6485
+msgid "mixing declarations and function-definitions is forbidden"
+msgstr ""
+
+#: cp/parser.c:6623
+msgid "duplicate `friend'"
+msgstr "doppeltes »friend«"
+
+#: cp/parser.c:6772
+msgid "class definition may not be declared a friend"
+msgstr ""
+
+#: cp/parser.c:7086
+msgid "only constructors take base initializers"
+msgstr ""
+
+#: cp/parser.c:7137
+msgid "anachronistic old-style base class initializer"
+msgstr ""
+
+#. Warn that we do not support `export'.
+#: cp/parser.c:7530
+msgid "keyword `export' not implemented, and will be ignored"
+msgstr ""
+
+#. Otherwise, emit an error about the invalid digraph, but continue
+#. parsing because we got our argument list.
+#: cp/parser.c:7890
+msgid "`<::' cannot begin a template-argument list"
+msgstr ""
+
+#: cp/parser.c:7891
+msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'"
+msgstr ""
+
+#: cp/parser.c:7898
+msgid "(if you use `-fpermissive' G++ will accept your code)"
+msgstr ""
+
+#. Explain what went wrong.
+#: cp/parser.c:8070
+msgid "non-template `%D' used as template"
+msgstr ""
+
+#: cp/parser.c:8071
+msgid "(use `%T::template %D' to indicate that it is a template)"
+msgstr ""
+
+#: cp/parser.c:9000
+msgid "using `typename' outside of template"
+msgstr ""
+
+#: cp/parser.c:9122
+msgid "expected type-name"
+msgstr ""
+
+#: cp/parser.c:9181
+msgid "type attributes are honored only at type definition"
+msgstr ""
+
+#. [namespace.udecl]
+#.
+#. A using declaration shall not name a template-id.
+#: cp/parser.c:9565
+msgid "a template-id may not appear in a using-declaration"
+msgstr ""
+
+#: cp/parser.c:9891
+msgid "an asm-specification is not allowed on a function-definition"
+msgstr ""
+
+#: cp/parser.c:9893
+msgid "attributes are not allowed on a function-definition"
+msgstr "bei einer Funktionsdefinition sind keine Attribute erlaubt"
+
+#: cp/parser.c:10026
+msgid "attributes after parenthesized initializer ignored"
+msgstr "Attribute hinter geklammerter Initialisierung werden ignoriert"
+
+#: cp/parser.c:11223
+msgid "file ends in default argument"
+msgstr ""
+
+#: cp/parser.c:11279
+msgid "deprecated use of default argument for parameter of non-function"
+msgstr ""
+
+#: cp/parser.c:11282
+msgid "default arguments are only permitted for function parameters"
+msgstr ""
+
+#: cp/parser.c:12007
+msgid "declaration of `%D' in `%D' which does not enclose `%D'"
+msgstr ""
+
+#: cp/parser.c:12020
+msgid "extra qualification ignored"
+msgstr ""
+
+#: cp/parser.c:12031
+msgid "an explicit specialization must be preceded by 'template <>'"
+msgstr ""
+
+#: cp/parser.c:12311
+msgid "extra semicolon"
+msgstr ""
+
+#: cp/parser.c:12329
+msgid "a class-key must be used when declaring a friend"
+msgstr ""
+
+#: cp/parser.c:12360
+msgid "friend declaration does not name a class or function"
+msgstr "»friend«-Deklaration benennt keine Klasse oder Funktion"
+
+#: cp/parser.c:12531
+msgid "pure-specifier on function-definition"
+msgstr ""
+
+#: cp/parser.c:12804
+msgid "keyword `typename' not allowed outside of templates"
+msgstr ""
+
+#: cp/parser.c:12806
+msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)"
+msgstr ""
+
+#: cp/parser.c:13624
+msgid "reference to `%D' is ambiguous"
+msgstr ""
+
+#: cp/parser.c:13798
+msgid "too few template-parameter-lists"
+msgstr ""
+
+#. Otherwise, there are too many template parameter lists. We have
+#. something like:
+#.
+#. template <class T> template <class U> void S::f();
+#: cp/parser.c:13813
+msgid "too many template-parameter-lists"
+msgstr ""
+
+#. If begin_function_definition didn't like the definition, skip
+#. the entire function.
+#: cp/parser.c:14090
+msgid "invalid function declaration"
+msgstr "ungültige Funktionsdeklaration"
+
+#. Issue an error message.
+#: cp/parser.c:14127
+msgid "named return values are no longer supported"
+msgstr "benannte Rückgabewerte werden nicht mehr unterstützt"
+
+#: cp/parser.c:14455
+msgid "`>>' should be `> >' within a nested template argument list"
+msgstr ""
+
+#. If this is not a nested template argument list, the '>>' is
+#. a typo for '>'. Emit an error message and continue.
+#: cp/parser.c:14463
+msgid "spurious `>>', use `>' to terminate a template argument list"
+msgstr ""
+
+#: cp/parser.c:14950
+msgid "`%s' tag used in naming `%#T'"
msgstr ""
-#: parse.y:3862
-msgid "'%D' is used as a type, but is not defined as a type."
+#: cp/parser.c:14970
+msgid "%D redeclared with different access"
+msgstr "%D mit anderem Zugriff redeklariert"
+
+#: cp/parser.c:14987
+msgid "`template' (as a disambiguator) is only allowed within templates"
msgstr ""
-#: cp/pt.c:284
+#: cp/pt.c:243
msgid "data member `%D' cannot be a member template"
msgstr ""
-#: cp/pt.c:296
+#: cp/pt.c:255
msgid "invalid member template declaration `%D'"
msgstr ""
-#: cp/pt.c:691
+#: cp/pt.c:637
msgid "explicit specialization in non-namespace scope `%D'"
msgstr ""
-#: cp/pt.c:703
+#: cp/pt.c:649
msgid "enclosing class templates are not explicitly specialized"
msgstr ""
-#: cp/pt.c:792 cp/pt.c:833
+#: cp/pt.c:739 cp/pt.c:780
msgid "specializing `%#T' in different namespace"
msgstr ""
-#: cp/pt.c:793 cp/pt.c:834
+#: cp/pt.c:740 cp/pt.c:781
msgid " from definition of `%#D'"
msgstr ""
-#: cp/pt.c:801
+#: cp/pt.c:748
msgid "specialization of `%T' after instantiation"
msgstr ""
-#: cp/pt.c:848
+#: cp/pt.c:795
msgid "specialization `%T' after instantiation `%T'"
msgstr ""
-#: cp/pt.c:860
+#: cp/pt.c:807
msgid "explicit specialization of non-template `%T'"
msgstr ""
-#: cp/pt.c:992
+#: cp/pt.c:1067
msgid "specialization of %D after instantiation"
msgstr ""
-#: cp/pt.c:1096
+#: cp/pt.c:1192
msgid "%s %+#D"
msgstr ""
-#: cp/pt.c:1147
+#: cp/pt.c:1241
msgid "`%D' is not a function template"
msgstr ""
-#: cp/pt.c:1286
+#: cp/pt.c:1380
msgid "template-id `%D' for `%+D' does not match any template declaration"
msgstr ""
-#: cp/pt.c:1294
+#: cp/pt.c:1388
msgid "ambiguous template specialization `%D' for `%+D'"
msgstr ""
#. This case handles bogus declarations like template <>
#. template <class T> void f<int>();
-#: cp/pt.c:1521 cp/pt.c:1595
+#: cp/pt.c:1611 cp/pt.c:1685
msgid "template-id `%D' in declaration of primary template"
msgstr ""
-#: cp/pt.c:1534
+#: cp/pt.c:1624
msgid "template parameter list used in explicit instantiation"
msgstr ""
-#: cp/pt.c:1540
+#: cp/pt.c:1630
msgid "definition provided for explicit instantiation"
msgstr ""
-#: cp/pt.c:1546
+#: cp/pt.c:1636
msgid "too many template parameter lists in declaration of `%D'"
msgstr ""
-#: cp/pt.c:1562
+#: cp/pt.c:1652
msgid "too few template parameter lists in declaration of `%D'"
msgstr ""
-#: cp/pt.c:1579
+#: cp/pt.c:1669
msgid "explicit specialization not preceded by `template <>'"
msgstr ""
-#: cp/pt.c:1592
+#: cp/pt.c:1682
msgid "partial specialization `%D' of function template"
msgstr ""
-#: cp/pt.c:1624
+#: cp/pt.c:1714
msgid "default argument specified in explicit specialization"
msgstr ""
-#: cp/pt.c:1628
+#: cp/pt.c:1718
msgid "template specialization with C linkage"
msgstr ""
@@ -16641,99 +15914,106 @@ msgstr ""
#. program is ill-formed.
#.
#. Similar language is found in [temp.explicit].
-#: cp/pt.c:1715
+#: cp/pt.c:1802
msgid "specialization of implicitly-declared special member function"
msgstr ""
-#: cp/pt.c:1759
+#: cp/pt.c:1846
msgid "no member function `%D' declared in `%T'"
msgstr ""
#. There are two many template parameter lists.
-#: cp/pt.c:1909
+#: cp/pt.c:2001
msgid "too many template parameter lists in declaration of `%T'"
msgstr ""
-#: cp/pt.c:2005
+#: cp/pt.c:2094
msgid " shadows template parm `%#D'"
msgstr ""
-#: cp/pt.c:2409
+#: cp/pt.c:2491
msgid "template parameters not used in partial specialization:"
msgstr ""
-#: cp/pt.c:2413
+#: cp/pt.c:2495
msgid " `%D'"
msgstr ""
-#: cp/pt.c:2425
+#: cp/pt.c:2507
msgid "partial specialization `%T' does not specialize any template arguments"
msgstr ""
-#: cp/pt.c:2450
+#: cp/pt.c:2532
#, c-format
msgid "template argument `%E' involves template parameter(s)"
msgstr ""
-#: cp/pt.c:2494
+#: cp/pt.c:2576
msgid "type `%T' of template argument `%E' depends on template parameter(s)"
msgstr ""
-#: cp/pt.c:2582
+#: cp/pt.c:2661
msgid "no default argument for `%D'"
msgstr ""
-#: cp/pt.c:2735
+#: cp/pt.c:2810
msgid "template with C linkage"
msgstr ""
-#: cp/pt.c:2738
+#: cp/pt.c:2813
msgid "template class without a name"
msgstr ""
-#: cp/pt.c:2815
+#. [temp.mem]
+#.
+#. A destructor shall not be a member template.
+#: cp/pt.c:2820
+msgid "destructor `%D' declared as member template"
+msgstr "Destruktor »%D« als Element-Template deklariert"
+
+#: cp/pt.c:2900
msgid "`%D' does not declare a template type"
msgstr ""
-#: cp/pt.c:2821
+#: cp/pt.c:2906
msgid "template definition of non-template `%#D'"
msgstr ""
-#: cp/pt.c:2862
+#: cp/pt.c:2947
msgid "expected %d levels of template parms for `%#D', got %d"
msgstr ""
-#: cp/pt.c:2874
+#: cp/pt.c:2959
msgid "got %d template parameters for `%#D'"
msgstr ""
-#: cp/pt.c:2877
+#: cp/pt.c:2962
msgid "got %d template parameters for `%#T'"
msgstr ""
-#: cp/pt.c:2879
+#: cp/pt.c:2964
#, c-format
msgid " but %d required"
msgstr ""
-#: cp/pt.c:2962
+#: cp/pt.c:3042
msgid "`%T' is not a template type"
msgstr ""
-#: cp/pt.c:2978
+#: cp/pt.c:3058
msgid "previous declaration `%D'"
msgstr ""
-#: cp/pt.c:2979
+#: cp/pt.c:3059
#, c-format
msgid "used %d template parameter%s instead of %d"
msgstr ""
-#: cp/pt.c:2995
+#: cp/pt.c:3075
msgid "template parameter `%#D'"
msgstr ""
-#: cp/pt.c:2996
+#: cp/pt.c:3076
msgid "redeclared here as `%#D'"
msgstr ""
@@ -16741,713 +16021,722 @@ msgstr ""
#.
#. A template-parameter may not be given default arguments
#. by two different declarations in the same scope.
-#: cp/pt.c:3006
+#: cp/pt.c:3086
msgid "redefinition of default argument for `%#D'"
msgstr ""
-#: cp/pt.c:3007
-msgid " original definition appeared here"
-msgstr ""
+#: cp/pt.c:3087
+msgid "%J original definition appeared here"
+msgstr "%J ursprüngliche Definition trat hier auf"
-#: cp/pt.c:3100
+#: cp/pt.c:3235
#, c-format
msgid "`%E' is not a valid template argument"
msgstr ""
-#: cp/pt.c:3104
+#: cp/pt.c:3239
msgid "it must be the address of a function with external linkage"
msgstr ""
-#: cp/pt.c:3106
+#: cp/pt.c:3241
msgid "it must be the address of an object with external linkage"
msgstr ""
-#: cp/pt.c:3110
+#: cp/pt.c:3244
msgid "it must be a pointer-to-member of the form `&X::Y'"
msgstr ""
-#: cp/pt.c:3121
+#: cp/pt.c:3255
#, c-format
msgid "string literal %E is not a valid template argument because it is the address of an object with static linkage"
msgstr ""
-#: cp/pt.c:3133
+#: cp/pt.c:3270
#, c-format
msgid "address of non-extern `%E' cannot be used as template argument"
msgstr ""
-#: cp/pt.c:3144
+#: cp/pt.c:3279
#, c-format
msgid "non-constant `%E' cannot be used as template argument"
msgstr ""
-#: cp/pt.c:3151
+#: cp/pt.c:3287
+msgid "type '%T' cannot be used as a value for a non-type template-parameter"
+msgstr ""
+
+#: cp/pt.c:3290
+msgid "invalid use of '%D' as a non-type template-argument"
+msgstr ""
+
+#: cp/pt.c:3292
#, c-format
-msgid "object `%E' cannot be used as template argument"
+msgid "invalid use of '%E' as a non-type template-argument"
msgstr ""
-#: cp/pt.c:3526
+#: cp/pt.c:3657
#, c-format
msgid "to refer to a type member of a template parameter, use `typename %E'"
msgstr ""
-#: cp/pt.c:3539 cp/pt.c:3555 cp/pt.c:3594
+#: cp/pt.c:3670 cp/pt.c:3688 cp/pt.c:3727
msgid "type/value mismatch at argument %d in template parameter list for `%D'"
msgstr ""
-#: cp/pt.c:3542
+#: cp/pt.c:3673
msgid " expected a constant of type `%T', got `%T'"
msgstr ""
-#: cp/pt.c:3546
+#: cp/pt.c:3677
+#, c-format
+msgid " expected a class template, got `%E'"
+msgstr ""
+
+#: cp/pt.c:3679
#, c-format
msgid " expected a type, got `%E'"
msgstr ""
-#: cp/pt.c:3558
+#: cp/pt.c:3691
msgid " expected a type, got `%T'"
msgstr ""
-#: cp/pt.c:3560
+#: cp/pt.c:3693
msgid " expected a class template, got `%T'"
msgstr ""
-#: cp/pt.c:3596
+#: cp/pt.c:3729
msgid " expected a template of type `%D', got `%D'"
msgstr ""
-#: cp/pt.c:3618
-msgid "template-argument `%T' uses anonymous type"
-msgstr ""
-
-#: cp/pt.c:3621
-msgid "template-argument `%T' uses local type `%T'"
-msgstr ""
-
-#: cp/pt.c:3631
-msgid "template-argument `%T' is a variably modified type"
-msgstr ""
-
-#: cp/pt.c:3666
+#: cp/pt.c:3764
msgid "could not convert template argument `%E' to `%T'"
msgstr ""
-#: cp/pt.c:3710
+#: cp/pt.c:3804
#, c-format
msgid "wrong number of template arguments (%d, should be %d)"
msgstr ""
-#: cp/pt.c:3714
+#: cp/pt.c:3808
msgid "provided for `%D'"
msgstr ""
-#: cp/pt.c:3761
+#: cp/pt.c:3836
#, c-format
msgid "template argument %d is invalid"
msgstr ""
-#: cp/pt.c:3997
+#: cp/pt.c:4057
msgid "non-template used as template"
msgstr ""
-#: cp/pt.c:4139
-msgid "`%T' is not a template"
-msgstr ""
-
-#: cp/pt.c:4152
+#: cp/pt.c:4197
msgid "non-template type `%T' used as a template"
msgstr ""
-#: cp/pt.c:4154
+#: cp/pt.c:4199
msgid "for template declaration `%D'"
msgstr ""
-#: cp/pt.c:4770
+#: cp/pt.c:4846
msgid "template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN to increase the maximum) instantiating `%D'"
msgstr ""
-#: cp/pt.c:5247
+#: cp/pt.c:5286
msgid "ambiguous class template instantiation for `%#T'"
msgstr ""
-#: cp/pt.c:5254
+#: cp/pt.c:5292
msgid "%s %+#T"
msgstr ""
-#: cp/pt.c:6284 cp/pt.c:6396
+#: cp/pt.c:6291 cp/pt.c:6411
msgid "instantiation of `%D' as type `%T'"
msgstr ""
-#: cp/pt.c:6440
+#: cp/pt.c:6453
msgid "invalid parameter type `%T'"
msgstr ""
-#: cp/pt.c:6442
+#: cp/pt.c:6455
msgid "in declaration `%D'"
msgstr ""
-#: cp/pt.c:6517
+#: cp/pt.c:6529
msgid "creating pointer to member function of non-class type `%T'"
msgstr ""
-#: cp/pt.c:6680
+#: cp/pt.c:6668
msgid "creating array with size zero"
msgstr ""
-#: cp/pt.c:6694
+#: cp/pt.c:6682
#, c-format
msgid "creating array with size zero (`%E')"
msgstr ""
-#: cp/pt.c:6933
+#: cp/pt.c:6921
msgid "forming reference to void"
msgstr ""
-#: cp/pt.c:6935
+#: cp/pt.c:6923
msgid "forming %s to reference type `%T'"
msgstr ""
-#: cp/pt.c:6973
+#: cp/pt.c:6960
msgid "creating pointer to member of non-class type `%T'"
msgstr ""
-#: cp/pt.c:6979
+#: cp/pt.c:6966
msgid "creating pointer to member reference type `%T'"
msgstr ""
-#: cp/pt.c:7057
+#: cp/pt.c:7052
msgid "creating array of `%T'"
msgstr ""
-#: cp/pt.c:7100
+#: cp/pt.c:7058
+msgid "creating array of `%T', which is an abstract class type"
+msgstr ""
+
+#: cp/pt.c:7102
msgid "`%T' is not a class, struct, or union type"
msgstr ""
-#: cp/pt.c:7213
+#: cp/pt.c:7215
#, c-format
msgid "use of `%s' in template"
msgstr ""
-#: cp/pt.c:7975
-msgid "type `%T' composed from a local class is not a valid template-argument"
+#: cp/pt.c:7327
+#, c-format
+msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type"
+msgstr ""
+
+#: cp/pt.c:7329
+#, c-format
+msgid "say `typename %E' if a type is meant"
+msgstr ""
+
+#: cp/pt.c:8586
+msgid "`%T' uses anonymous type"
+msgstr "»%T« verwendet anonymen Typen"
+
+#: cp/pt.c:8588
+msgid "`%T' uses local type `%T'"
+msgstr "»%T« verwendet lokalen Typen »%T«"
+
+#: cp/pt.c:8596
+msgid "`%T' is a variably modified type"
msgstr ""
-#: cp/pt.c:7976
+#: cp/pt.c:8607
+#, c-format
+msgid "integral expression `%E' is not constant"
+msgstr "Integralausdruck »%E« ist nicht konstant"
+
+#: cp/pt.c:8612
msgid " trying to instantiate `%D'"
msgstr ""
-#: cp/pt.c:8421
+#: cp/pt.c:9125
msgid "incomplete type unification"
msgstr ""
-#: cp/pt.c:9387
+#: cp/pt.c:10072
#, c-format
msgid "use of `%s' in template type unification"
msgstr ""
-#: cp/pt.c:9821 cp/pt.c:9893
+#: cp/pt.c:10506 cp/pt.c:10578
msgid "explicit instantiation of non-template `%#D'"
msgstr ""
-#: cp/pt.c:9837 cp/pt.c:9888
+#: cp/pt.c:10522 cp/pt.c:10573
msgid "no matching template for `%D' found"
msgstr ""
-#: cp/pt.c:9843
+#: cp/pt.c:10528
msgid "explicit instantiation of `%#D'"
msgstr ""
-#: cp/pt.c:9880
+#: cp/pt.c:10565
msgid "duplicate explicit instantiation of `%#D'"
msgstr ""
-#: cp/pt.c:9905
+#: cp/pt.c:10587
msgid "ISO C++ forbids the use of `extern' on explicit instantiations"
msgstr ""
-#: cp/pt.c:9909 cp/pt.c:9999
+#: cp/pt.c:10591 cp/pt.c:10672
msgid "storage class `%D' applied to template instantiation"
msgstr ""
-#: cp/pt.c:9966
+#: cp/pt.c:10644
msgid "explicit instantiation of non-template type `%T'"
msgstr ""
-#: cp/pt.c:9980
+#: cp/pt.c:10653
msgid "explicit instantiation of `%#T' before definition of template"
msgstr ""
-#: cp/pt.c:9988
+#: cp/pt.c:10661
#, c-format
msgid "ISO C++ forbids the use of `%s' on explicit instantiations"
msgstr ""
-#: cp/pt.c:10032
+#: cp/pt.c:10705
msgid "duplicate explicit instantiation of `%#T'"
msgstr ""
-#: cp/pt.c:10412
+#: cp/pt.c:11086
msgid "explicit instantiation of `%D' but no definition available"
msgstr ""
-#: cp/pt.c:10815
+#: cp/pt.c:11520
msgid "`%#T' is not a valid type for a template constant parameter"
msgstr ""
-#: cp/repo.c:271
+#: cp/repo.c:259
msgid "-frepo must be used with -c"
msgstr ""
-#: cp/repo.c:361
+#: cp/repo.c:346
#, c-format
msgid "mysterious repository information in %s"
msgstr ""
-#: cp/repo.c:376
+#: cp/repo.c:361
#, c-format
msgid "can't create repository information file `%s'"
msgstr ""
-#: cp/rtti.c:240
+#: cp/rtti.c:248
msgid "cannot use typeid with -fno-rtti"
msgstr ""
-#: cp/rtti.c:246
+#: cp/rtti.c:254
msgid "must #include <typeinfo> before using typeid"
msgstr ""
-#: cp/rtti.c:320
+#: cp/rtti.c:326
msgid "cannot create type information for type `%T' because its size is variable"
msgstr ""
-#: cp/rtti.c:584 cp/rtti.c:598
+#: cp/rtti.c:580 cp/rtti.c:594
msgid "dynamic_cast of `%#D' to `%#T' can never succeed"
msgstr ""
-#: cp/rtti.c:674
+#: cp/rtti.c:675
msgid "cannot dynamic_cast `%E' (of type `%#T') to type `%#T' (%s)"
msgstr ""
-#: cp/search.c:332
+#: cp/search.c:306
msgid "`%T' is an ambiguous base of `%T'"
msgstr ""
-#: cp/search.c:350
+#: cp/search.c:324
msgid "`%T' is an inaccessible base of `%T'"
msgstr ""
-#. At parse time, we don't want to give this error, since
-#. we won't have enough state to make this kind of
-#. decision properly. But there are times (e.g., with
-#. enums in nested classes) when we do need to call
-#. this fn at parse time. So, in those cases, we pass
-#. complain as a 0 and just return a NULL_TREE.
-#: cp/search.c:1638
-msgid "assignment to non-static member `%D' of enclosing class `%T'"
-msgstr ""
-
-#: cp/search.c:2050
-msgid "adjusting pointers for covariant returns"
-msgstr ""
-
-#: cp/search.c:2054 cp/search.c:2061
+#: cp/search.c:1756
msgid "invalid covariant return type for `%#D'"
msgstr ""
-#: cp/search.c:2055
-msgid " overriding `%#D' (must be pointer or reference to class)"
-msgstr ""
-
-#: cp/search.c:2062
-msgid " overriding `%#D' (must use pointer or reference)"
+#: cp/search.c:1757 cp/search.c:1763
+msgid " overriding `%#D'"
msgstr ""
-#: cp/search.c:2067
+#: cp/search.c:1761
msgid "conflicting return type specified for `%#D'"
msgstr ""
-#: cp/search.c:2068
-msgid " overriding `%#D'"
-msgstr ""
-
-#: cp/search.c:2077
+#: cp/search.c:1775
#, c-format
msgid "looser throw specifier for `%#F'"
msgstr ""
-#: cp/search.c:2078
+#: cp/search.c:1776
#, c-format
msgid " overriding `%#F'"
msgstr ""
#. A static member function cannot match an inherited
#. virtual member function.
-#: cp/search.c:2167
+#: cp/search.c:1866
msgid "`%#D' cannot be declared"
msgstr ""
-#: cp/search.c:2168
+#: cp/search.c:1867
msgid " since `%#D' declared in base class"
msgstr ""
-#: cp/search.c:2309
+#: cp/search.c:1944
msgid "`%#D' needs a final overrider"
msgstr ""
-#: cp/semantics.c:919
+#: cp/semantics.c:1092
#, c-format
msgid "type of asm operand `%E' could not be determined"
msgstr ""
-#: cp/semantics.c:1051
-msgid "ISO C++ does not permit named return values"
+#: cp/semantics.c:1233
+msgid "invalid use of member `%D' in static member function"
msgstr ""
-#: cp/semantics.c:1060
-msgid "return identifier `%D' already in place"
+#: cp/semantics.c:1237 cp/semantics.c:1276
+msgid "from this location"
msgstr ""
-#: cp/semantics.c:1068
-msgid "can't redefine default return value for constructors"
-msgstr ""
+#: cp/semantics.c:1275
+msgid "object missing in reference to `%D'"
+msgstr "Objekt fehlt in Referenz auf »%D«"
-#: cp/semantics.c:1100
-msgid "only constructors take base initializers"
+#: cp/semantics.c:1721
+msgid "arguments to destructor are not allowed"
msgstr ""
-#: cp/semantics.c:1343
+#: cp/semantics.c:1769
msgid "`this' is unavailable for static member functions"
msgstr ""
-#: cp/semantics.c:1349
+#: cp/semantics.c:1775
msgid "invalid use of `this' in non-member function"
msgstr ""
-#: cp/semantics.c:1351
+#: cp/semantics.c:1777
msgid "invalid use of `this' at top level"
msgstr ""
-#: cp/semantics.c:1381
-msgid "calling type `%T' like a method"
-msgstr ""
-
-#: cp/semantics.c:1419
-msgid "destructor specifier `%T::~%T()' must have matching names"
+#: cp/semantics.c:1801
+msgid "invalid qualifying scope in pseudo-destructor name"
msgstr ""
-#: cp/semantics.c:1425
+#: cp/semantics.c:1807
msgid "`%E' is not of type `%T'"
msgstr ""
-#: cp/semantics.c:1613
+#: cp/semantics.c:1918
msgid "template type parameters must use the keyword `class' or `typename'"
msgstr ""
-#: cp/semantics.c:1652
-msgid "invalid default template argument"
+#: cp/semantics.c:1962
+msgid "invalid use of type `%T' as a default value for a template template-parameter"
msgstr ""
-#: cp/semantics.c:1694
-msgid "definition of `%#T' inside template parameter list"
+#: cp/semantics.c:1965
+msgid "invalid use of `%D' as a default value for a template template-parameter"
msgstr ""
-#: cp/semantics.c:1710
-msgid "invalid definition of qualified type `%T'"
+#: cp/semantics.c:1969
+msgid "invalid default argument for a template template parameter"
msgstr ""
-#: cp/semantics.c:2053
-msgid "invalid base-class specification"
+#: cp/semantics.c:2004
+msgid "definition of `%#T' inside template parameter list"
msgstr ""
-#: cp/semantics.c:2062
-msgid "base class `%T' has cv qualifiers"
+#: cp/semantics.c:2015
+msgid "invalid definition of qualified type `%T'"
msgstr ""
-#: cp/semantics.c:2093
-msgid "multiple declarators in template declaration"
+#: cp/semantics.c:2030
+msgid "previous definition of `%#T'"
msgstr ""
-#: cp/semantics.c:2120
-#, c-format
-msgid "type of `%E' is unknown"
+#: cp/semantics.c:2225
+msgid "invalid base-class specification"
msgstr ""
-#: cp/spew.c:225
-#, c-format
-msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
+#: cp/semantics.c:2234
+msgid "base class `%T' has cv qualifiers"
msgstr ""
-#: cp/spew.c:1002 cp/spew.c:1340
-msgid "parse error at end of saved function text"
+#: cp/semantics.c:2266
+msgid "multiple declarators in template declaration"
msgstr ""
-#: cp/spew.c:1090 cp/spew.c:1178
-msgid "%Hend of file read inside definition"
+#: cp/semantics.c:2277
+msgid "incomplete type `%T' used in nested name specifier"
msgstr ""
-#: cp/spew.c:1121
-msgid "parse error in method specification"
+#: cp/semantics.c:2279 cp/typeck.c:1616
+msgid "`%D' is not a member of `%T'"
msgstr ""
-#: cp/spew.c:1161
-msgid "function body for constructor missing"
-msgstr ""
+#: cp/semantics.c:2282
+msgid "`%D' is not a member of `%D'"
+msgstr "»%D« ist kein Element von »%D«"
-#: cp/spew.c:1262
-msgid "%Hend of file read inside default argument"
+#: cp/semantics.c:2400
+msgid "template parameter `%D' of type `%T' is not allowed in an integral constant expression because it is not of integral or enumeration type"
msgstr ""
-#: cp/spew.c:1419
-msgid "circular dependency in default args of `%#D'"
+#: cp/semantics.c:2553
+msgid "`%D' cannot appear in a constant-expression"
+msgstr "»%D« kann nicht in Konstanten-Ausdruck auftreten"
+
+#: cp/semantics.c:2562
+msgid "use of namespace `%D' as expression"
msgstr ""
-#: cp/spew.c:1483
-msgid "invalid type `%T' for default argument to `%T'"
+#: cp/semantics.c:2567
+msgid "use of class template `%T' as expression"
msgstr ""
-#: cp/spew.c:1548
-#, c-format
-msgid "%s before `%s'"
+#. Ambiguous reference to base members.
+#: cp/semantics.c:2573
+msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
msgstr ""
-#: cp/spew.c:1550
+#: cp/semantics.c:2633
#, c-format
-msgid "%s before `%c'"
+msgid "use of %s from containing function"
msgstr ""
-#: cp/spew.c:1552
-#, c-format
-msgid "%s before `\\%o'"
+#: cp/semantics.c:2636
+msgid " `%#D' declared here"
msgstr ""
-#: cp/spew.c:1555
+#: cp/semantics.c:2687
#, c-format
-msgid "%s before `%s' token"
+msgid "type of `%E' is unknown"
msgstr ""
-#: cp/tree.c:263 cp/tree.c:275
+#: cp/tree.c:222
#, c-format
msgid "non-lvalue in %s"
msgstr ""
-#: cp/tree.c:562
+#: cp/tree.c:539
msgid "`%V' qualifiers cannot be applied to `%T'"
msgstr ""
-#: cp/tree.c:1941
+#: cp/tree.c:1830
#, c-format
msgid "`%s' attribute can only be applied to Java class definitions"
msgstr ""
-#: cp/tree.c:1971
+#: cp/tree.c:1859
#, c-format
msgid "`%s' attribute can only be applied to class definitions"
msgstr ""
-#: cp/tree.c:1977
+#: cp/tree.c:1865
#, c-format
msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default"
msgstr ""
-#: cp/tree.c:2002
+#: cp/tree.c:1889
msgid "requested init_priority is not an integer constant"
msgstr ""
-#: cp/tree.c:2023
+#: cp/tree.c:1910
#, c-format
msgid "can only use `%s' attribute on file-scope definitions of objects of class type"
msgstr ""
-#: cp/tree.c:2031
+#: cp/tree.c:1918
msgid "requested init_priority is out of range"
msgstr ""
-#: cp/tree.c:2041
+#: cp/tree.c:1928
msgid "requested init_priority is reserved for internal use"
msgstr ""
-#: cp/tree.c:2051
+#: cp/tree.c:1938
#, c-format
msgid "`%s' attribute is not supported on this platform"
msgstr ""
-#: cp/tree.c:2588
+#: cp/tree.c:2459
#, c-format
msgid "lang_* check: failed in %s, at %s:%d"
msgstr ""
-#: cp/typeck.c:524
-#, c-format
-msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
-msgstr ""
-
-#: cp/typeck.c:545
+#: cp/typeck.c:438 cp/typeck.c:453 cp/typeck.c:543
msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
msgstr ""
-#: cp/typeck.c:1436
-msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
+#: cp/typeck.c:513
+#, c-format
+msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
msgstr ""
-#: cp/typeck.c:1514
+#: cp/typeck.c:563
+msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast"
+msgstr "%s zwischen verschiedenen Zeiger-auf-Element-Typen »%T« und »%T« fehlt eine Typkonvertierung"
+
+#: cp/typeck.c:1235
#, c-format
msgid "invalid application of `%s' to a member function"
msgstr ""
-#: cp/typeck.c:1520
+#: cp/typeck.c:1268
#, c-format
-msgid "invalid application of `%s' to non-static member"
-msgstr ""
+msgid "invalid application of `%s' to a bit-field"
+msgstr "ungültige Anwendung von »%s« auf ein Bitfeld"
-#: cp/typeck.c:1538
-msgid "sizeof applied to a bit-field"
-msgstr ""
+#: cp/typeck.c:1273
+#, c-format
+msgid "ISO C++ forbids applying `%s' to an expression of function type"
+msgstr "ISO-C++ verbietet Anwendung von »%s« auf einen Ausdruck mit Funktionstyp"
-#: cp/typeck.c:1541
-msgid "ISO C++ forbids applying `sizeof' to an expression of function type"
-msgstr ""
+#: cp/typeck.c:1342
+msgid "invalid use of non-static member function"
+msgstr "falsche Benutzung einer nicht-statischen Elementfunktion"
-#: cp/typeck.c:1759
+#: cp/typeck.c:1476
msgid "deprecated conversion from string constant to `%T'"
msgstr ""
-#: cp/typeck.c:1890 cp/typeck.c:2122
+#: cp/typeck.c:1587 cp/typeck.c:1874
msgid "request for member `%D' in `%E', which is of non-class type `%T'"
msgstr ""
-#: cp/typeck.c:1916
-msgid "`%D' is not a member of `%T'"
-msgstr ""
+#: cp/typeck.c:1614
+#, c-format
+msgid "invalid use of nonstatic data member '%E'"
+msgstr "ungültige Benutzung des nicht-statischen Datenelements »%E«"
-#: cp/typeck.c:1957 cp/typeck.c:1978
+#: cp/typeck.c:1666 cp/typeck.c:1688
msgid "invalid access to non-static data member `%D' of NULL object"
msgstr ""
-#: cp/typeck.c:1959 cp/typeck.c:1980
+#: cp/typeck.c:1668 cp/typeck.c:1690
msgid "(perhaps the `offsetof' macro was used incorrectly)"
msgstr ""
-#: cp/typeck.c:2168
-msgid "`%D::%D' is not a member of `%T'"
+#: cp/typeck.c:1804
+msgid "the type being destroyed is '%T', but the destructor refers to `%T'"
msgstr ""
-#: cp/typeck.c:2179
-msgid "`%T' is not a base of `%T'"
+#: cp/typeck.c:1924
+msgid "`%D::%D' is not a member of `%T'"
msgstr ""
-#: cp/typeck.c:2199
-msgid "destructor specifier `%T::~%T' must have matching names"
+#: cp/typeck.c:1935
+msgid "`%T' is not a base of `%T'"
msgstr ""
-#: cp/typeck.c:2205
-msgid "type `%T' has no destructor"
+#: cp/typeck.c:1954
+msgid "'%D' has no member named '%E'"
msgstr ""
-#: cp/typeck.c:2244
+#: cp/typeck.c:1969
msgid "`%D' is not a member template function"
msgstr ""
#. A pointer to incomplete type (other than cv void) can be
#. dereferenced [expr.unary.op]/1
-#: cp/typeck.c:2338
+#: cp/typeck.c:2075
msgid "`%T' is not a pointer-to-object type"
msgstr ""
-#: cp/typeck.c:2365
+#: cp/typeck.c:2100
#, c-format
msgid "invalid use of `%s' on pointer to member"
msgstr ""
-#: cp/typeck.c:2371
+#: cp/typeck.c:2106
msgid "invalid type argument"
msgstr ""
-#: cp/typeck.c:2474
+#: cp/typeck.c:2212
msgid "ISO C++ forbids subscripting non-lvalue array"
msgstr ""
-#: cp/typeck.c:2485
+#: cp/typeck.c:2223
msgid "subscripting array declared `register'"
msgstr ""
-#: cp/typeck.c:2570
+#: cp/typeck.c:2306
#, c-format
msgid "object missing in use of `%E'"
msgstr ""
-#: cp/typeck.c:2674
+#: cp/typeck.c:2408
msgid "ISO C++ forbids calling `::main' from within program"
msgstr ""
-#: cp/typeck.c:2699
+#: cp/typeck.c:2433
#, c-format
msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'"
msgstr ""
-#: cp/typeck.c:2712
+#: cp/typeck.c:2446
#, c-format
msgid "`%E' cannot be used as a function"
msgstr ""
-#: cp/typeck.c:2824
+#: cp/typeck.c:2539
msgid "too many arguments to %s `%+#D'"
msgstr ""
-#: cp/typeck.c:2865
-msgid "parameter type of called function is incomplete"
+#: cp/typeck.c:2541 cp/typeck.c:2647
+msgid "at this point in file"
msgstr ""
-#: cp/typeck.c:2928
+#: cp/typeck.c:2578
+msgid "parameter %P of `%D' has incomplete type `%T'"
+msgstr "Parameter %P von »%D« hat unvollständigen Typen »%T«"
+
+#: cp/typeck.c:2581
+msgid "parameter %P has incomplete type `%T'"
+msgstr "Parameter %P hat unvollständigen Typen »%T«"
+
+#: cp/typeck.c:2645
msgid "too few arguments to %s `%+#D'"
msgstr ""
-#: cp/typeck.c:3056 cp/typeck.c:3066
+#: cp/typeck.c:2790 cp/typeck.c:2800
msgid "assuming cast to type `%T' from overloaded function"
msgstr ""
-#: cp/typeck.c:3126
+#: cp/typeck.c:2861
#, c-format
msgid "division by zero in `%E / 0'"
msgstr ""
-#: cp/typeck.c:3128
+#: cp/typeck.c:2863
#, c-format
msgid "division by zero in `%E / 0.'"
msgstr ""
-#: cp/typeck.c:3158
+#: cp/typeck.c:2892
#, c-format
msgid "division by zero in `%E %% 0'"
msgstr ""
-#: cp/typeck.c:3160
+#: cp/typeck.c:2894
#, c-format
msgid "division by zero in `%E %% 0.'"
msgstr ""
-#: cp/typeck.c:3240
+#: cp/typeck.c:2974
#, c-format
msgid "%s rotate count is negative"
msgstr ""
-#: cp/typeck.c:3243
+#: cp/typeck.c:2977
#, c-format
msgid "%s rotate count >= width of type"
msgstr ""
-#: cp/typeck.c:3274 cp/typeck.c:3279 cp/typeck.c:3370 cp/typeck.c:3375
+#: cp/typeck.c:3011 cp/typeck.c:3016 cp/typeck.c:3107 cp/typeck.c:3112
msgid "ISO C++ forbids comparison between pointer and integer"
msgstr ""
-#: cp/typeck.c:3553
+#: cp/typeck.c:3293
msgid "comparison between types `%#T' and `%#T'"
msgstr ""
-#: cp/typeck.c:3589
+#: cp/typeck.c:3329
msgid "comparison between signed and unsigned integer expressions"
msgstr ""
-#: cp/typeck.c:3654
+#: cp/typeck.c:3394
msgid "invalid operands of types `%T' and `%T' to binary `%O'"
msgstr ""
@@ -17455,753 +16744,578 @@ msgstr ""
#. performed. Note that pointer-difference and pointer-addition
#. have already been handled above, and so we don't end up here in
#. that case.
-#: cp/typeck.c:3676
+#: cp/typeck.c:3416
msgid "NULL used in arithmetic"
msgstr ""
-#: cp/typeck.c:3743
+#: cp/typeck.c:3479
msgid "ISO C++ forbids using pointer of type `void *' in subtraction"
msgstr ""
-#: cp/typeck.c:3745
+#: cp/typeck.c:3481
msgid "ISO C++ forbids using pointer to a function in subtraction"
msgstr ""
-#: cp/typeck.c:3747
+#: cp/typeck.c:3483
msgid "ISO C++ forbids using pointer to a method in subtraction"
msgstr ""
-#: cp/typeck.c:3749
-msgid "ISO C++ forbids using pointer to a member in subtraction"
-msgstr ""
-
-#: cp/typeck.c:3761
+#: cp/typeck.c:3495
msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
msgstr ""
-#: cp/typeck.c:3821
+#: cp/typeck.c:3550
#, c-format
msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id."
msgstr ""
-#: cp/typeck.c:3827
+#: cp/typeck.c:3556
#, c-format
msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function"
msgstr ""
-#: cp/typeck.c:3850
+#: cp/typeck.c:3578
msgid "taking address of temporary"
msgstr ""
-#: cp/typeck.c:4091
+#: cp/typeck.c:3813
#, c-format
msgid "ISO C++ forbids %sing an enum"
msgstr ""
-#: cp/typeck.c:4103
+#: cp/typeck.c:3824
msgid "cannot %s a pointer to incomplete type `%T'"
msgstr ""
-#: cp/typeck.c:4110
+#: cp/typeck.c:3830
msgid "ISO C++ forbids %sing a pointer of type `%T'"
msgstr ""
-#: cp/typeck.c:4135
+#: cp/typeck.c:3855
msgid "cast to non-reference type used as lvalue"
msgstr ""
-#: cp/typeck.c:4169
+#: cp/typeck.c:3889
msgid "invalid use of `--' on bool variable `%D'"
msgstr ""
#. ARM $3.4
-#: cp/typeck.c:4202
+#: cp/typeck.c:3920
msgid "ISO C++ forbids taking address of function `::main'"
msgstr ""
#. An expression like &memfn.
-#: cp/typeck.c:4269
-msgid "ISO C++ forbids taking the address of an unqualified non-static member function to form a pointer to member function. Say `&%T::%D'"
+#: cp/typeck.c:3991
+msgid "ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function. Say `&%T::%D'"
msgstr ""
-#: cp/typeck.c:4271
+#: cp/typeck.c:3996
msgid "ISO C++ forbids taking the address of a bound member function to form a pointer to member function. Say `&%T::%D'"
msgstr ""
-#: cp/typeck.c:4295
+#: cp/typeck.c:4024
msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression"
msgstr ""
-#: cp/typeck.c:4324
+#: cp/typeck.c:4040
+msgid "unary `&'"
+msgstr ""
+
+#: cp/typeck.c:4069
msgid "attempt to take address of bit-field structure member `%D'"
msgstr ""
-#: cp/typeck.c:4444
+#: cp/typeck.c:4183
msgid "taking address of destructor"
msgstr ""
-#: cp/typeck.c:4457
+#: cp/typeck.c:4196
msgid "taking address of bound pointer-to-member expression"
msgstr ""
-#: cp/typeck.c:4473
+#: cp/typeck.c:4204
msgid "cannot create pointer to reference member `%D'"
msgstr ""
-#: cp/typeck.c:4536
+#: cp/typeck.c:4266
msgid "cannot take the address of `this', which is an rvalue expression"
msgstr ""
-#: cp/typeck.c:4555
+#: cp/typeck.c:4285
msgid "address requested for `%D', which is declared `register'"
msgstr ""
-#: cp/typeck.c:4682
-msgid "static_cast from type `%T' to type `%T' casts away constness"
+#: cp/typeck.c:4353
+#, c-format
+msgid "%s expression list treated as compound expression"
+msgstr "%s Ausdrucksliste als zusammengesetzten Ausdruck behandelt"
+
+#: cp/typeck.c:4426
+msgid "%s from type `%T' to type `%T' casts away constness"
msgstr ""
-#: cp/typeck.c:4871
+#: cp/typeck.c:4618
msgid "invalid static_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4910
+#: cp/typeck.c:4658
msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4930
+#: cp/typeck.c:4678
msgid "reinterpret_cast from `%T' to `%T' loses precision"
msgstr ""
-#: cp/typeck.c:4943
-msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
-msgstr ""
-
-#: cp/typeck.c:4952
+#: cp/typeck.c:4697
msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object"
msgstr ""
-#: cp/typeck.c:4958
+#: cp/typeck.c:4703
msgid "invalid reinterpret_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4985
+#: cp/typeck.c:4731
msgid "invalid use of const_cast with type `%T', which is not a pointer, reference, nor a pointer-to-data-member type"
msgstr ""
-#: cp/typeck.c:4988
+#: cp/typeck.c:4734
msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type"
msgstr ""
-#: cp/typeck.c:5011
+#: cp/typeck.c:4757
msgid "invalid const_cast of an rvalue of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:5027
+#: cp/typeck.c:4774
msgid "invalid const_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:5069 cp/typeck.c:5074
+#: cp/typeck.c:4814 cp/typeck.c:4819
msgid "ISO C++ forbids casting to an array type `%T'"
msgstr ""
-#: cp/typeck.c:5082
+#: cp/typeck.c:4827
msgid "invalid cast to function type `%T'"
msgstr ""
-#: cp/typeck.c:5138
+#: cp/typeck.c:4883
msgid "cast from `%T' to `%T' discards qualifiers from pointer target type"
msgstr ""
-#: cp/typeck.c:5184
+#: cp/typeck.c:4929
msgid "cast from `%T' to `%T' increases required alignment of target type"
msgstr ""
-#: cp/typeck.c:5357
+#: cp/typeck.c:5093
msgid " in evaluation of `%Q(%#T, %#T)'"
msgstr ""
-#: cp/typeck.c:5399
+#: cp/typeck.c:5135
msgid "ISO C++ forbids cast to non-reference type used as lvalue"
msgstr ""
-#: cp/typeck.c:5463
+#: cp/typeck.c:5208
msgid "incompatible types in assignment of `%T' to `%T'"
msgstr ""
-#: cp/typeck.c:5470
+#: cp/typeck.c:5215
msgid "ISO C++ forbids assignment of arrays"
msgstr ""
-#: cp/typeck.c:5577
+#: cp/typeck.c:5314
msgid " in pointer to member function conversion"
msgstr ""
-#: cp/typeck.c:5585
+#: cp/typeck.c:5322
msgid " in pointer to member conversion"
msgstr ""
#. This is a reinterpret cast, we choose to do nothing.
-#: cp/typeck.c:5596 cp/typeck.c:5615
-msgid "pointer to member cast via virtual base `%T' of `%T'"
-msgstr ""
+#: cp/typeck.c:5332 cp/typeck.c:5347
+msgid "pointer to member cast via virtual base `%T'"
+msgstr "Typumwandlung von Zeiger in Element über virtuelle Basis »%T«"
-#: cp/typeck.c:5619
-msgid "pointer to member conversion via virtual base `%T' of `%T'"
-msgstr ""
+#: cp/typeck.c:5350
+msgid "pointer to member conversion via virtual base `%T'"
+msgstr "Konvertierung von Zeiger in Element über virtuelle Basis »%T«"
-#: cp/typeck.c:5695
+#: cp/typeck.c:5420
msgid "invalid conversion to type `%T' from type `%T'"
msgstr ""
-#: cp/typeck.c:5860
+#: cp/typeck.c:5576
msgid "passing NULL used for non-pointer %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5863
+#: cp/typeck.c:5579
msgid "%s to non-pointer type `%T' from NULL"
msgstr ""
-#: cp/typeck.c:5871
+#: cp/typeck.c:5587
msgid "passing `%T' for %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5874
+#: cp/typeck.c:5590
msgid "%s to `%T' from `%T'"
msgstr ""
-#: cp/typeck.c:5884
+#: cp/typeck.c:5600
msgid "passing negative value `%E' for %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5887
+#: cp/typeck.c:5603
msgid "%s of negative value `%E' to `%T'"
msgstr ""
-#: cp/typeck.c:5982
+#: cp/typeck.c:5691
msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'"
msgstr ""
-#: cp/typeck.c:5985
+#: cp/typeck.c:5694
msgid "cannot convert `%T' to `%T' in %s"
msgstr ""
-#: cp/typeck.c:6073 cp/typeck.c:6075
+#: cp/typeck.c:5771 cp/typeck.c:5773
msgid "in passing argument %P of `%+D'"
msgstr ""
-#: cp/typeck.c:6190
+#: cp/typeck.c:5880
msgid "returning reference to temporary"
msgstr ""
-#: cp/typeck.c:6197
+#: cp/typeck.c:5887
msgid "reference to non-lvalue returned"
msgstr ""
-#: cp/typeck.c:6209
+#: cp/typeck.c:5899
msgid "reference to local variable `%D' returned"
msgstr ""
-#: cp/typeck.c:6212
+#: cp/typeck.c:5902
msgid "address of local variable `%D' returned"
msgstr ""
-#: cp/typeck.c:6243
+#: cp/typeck.c:5932
msgid "returning a value from a destructor"
msgstr ""
#. If a return statement appears in a handler of the
#. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.c:6251
+#: cp/typeck.c:5940
msgid "cannot return from a handler of a function-try-block of a constructor"
msgstr ""
#. You can't return a value from a constructor.
-#: cp/typeck.c:6254
+#: cp/typeck.c:5943
msgid "returning a value from a constructor"
msgstr ""
-#: cp/typeck.c:6271
-msgid "return-statement with no value, in function declared with a non-void return type"
-msgstr ""
+#: cp/typeck.c:5966
+msgid "return-statement with no value, in function returning '%T'"
+msgstr "Return-Anweisung ohne Wert, in »%T« zurückgebender Funktion"
-#: cp/typeck.c:6287
-msgid "return-statement with a value, in function declared with a void return type"
-msgstr ""
+#: cp/typeck.c:5983
+msgid "return-statement with a value, in function returning 'void'"
+msgstr "Return-Anweisung mit Wert in »void« zurückgebender Funktion"
-#: cp/typeck.c:6308
+#: cp/typeck.c:6005
msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)"
msgstr ""
-#: cp/typeck2.c:54
+#: cp/typeck2.c:55
msgid "type `%T' is not a base type for type `%T'"
msgstr ""
-#: cp/typeck2.c:157
+#: cp/typeck2.c:151
msgid "cannot declare variable `%D' to be of type `%T'"
msgstr ""
-#: cp/typeck2.c:160
+#: cp/typeck2.c:154
msgid "cannot declare parameter `%D' to be of type `%T'"
msgstr ""
-#: cp/typeck2.c:163
+#: cp/typeck2.c:157
msgid "cannot declare field `%D' to be of type `%T'"
msgstr ""
-#: cp/typeck2.c:167
+#: cp/typeck2.c:161
msgid "invalid return type for member function `%#D'"
msgstr ""
-#: cp/typeck2.c:169
+#: cp/typeck2.c:163
msgid "invalid return type for function `%#D'"
msgstr ""
-#: cp/typeck2.c:172
+#: cp/typeck2.c:166
msgid "cannot allocate an object of type `%T'"
msgstr ""
-#: cp/typeck2.c:179
+#: cp/typeck2.c:173
msgid " because the following virtual functions are abstract:"
msgstr ""
-#: cp/typeck2.c:181
+#: cp/typeck2.c:175
msgid "\t%#D"
msgstr ""
-#: cp/typeck2.c:184
+#: cp/typeck2.c:178
msgid " since type `%T' has abstract virtual functions"
msgstr ""
-#: cp/typeck2.c:338
+#: cp/typeck2.c:426
msgid "constructor syntax used, but no constructor declared for type `%T'"
msgstr ""
-#: cp/typeck2.c:349
-msgid "comma expression used to initialize return value"
-msgstr ""
-
-#: cp/typeck2.c:358
+#: cp/typeck2.c:439
msgid "cannot initialize arrays using this syntax"
msgstr ""
-#: cp/typeck2.c:473
+#: cp/typeck2.c:544
msgid "initializing array with parameter list"
msgstr ""
-#: cp/typeck2.c:529
+#: cp/typeck2.c:599
msgid "initializer for scalar variable requires one element"
msgstr ""
-#: cp/typeck2.c:536
+#: cp/typeck2.c:606
msgid "braces around scalar initializer for `%T'"
msgstr ""
-#: cp/typeck2.c:539
+#: cp/typeck2.c:609
msgid "ignoring extra initializers for `%T'"
msgstr ""
-#: cp/typeck2.c:551
+#: cp/typeck2.c:621
msgid "variable-sized object of type `%T' may not be initialized"
msgstr ""
-#: cp/typeck2.c:561
+#: cp/typeck2.c:631
msgid "subobject of type `%T' must be initialized by constructor, not by `%E'"
msgstr ""
-#: cp/typeck2.c:627
+#: cp/typeck2.c:696
msgid "aggregate has a partly bracketed initializer"
msgstr ""
-#: cp/typeck2.c:665 cp/typeck2.c:770
+#: cp/typeck2.c:734 cp/typeck2.c:839
msgid "non-trivial labeled initializers"
msgstr ""
-#: cp/typeck2.c:682
+#: cp/typeck2.c:751
msgid "non-empty initializer for array of empty elements"
msgstr ""
-#: cp/typeck2.c:736
+#: cp/typeck2.c:805
msgid "initializer list for object of class with virtual base classes"
msgstr ""
-#: cp/typeck2.c:742
+#: cp/typeck2.c:811
msgid "initializer list for object of class with base classes"
msgstr ""
-#: cp/typeck2.c:748
+#: cp/typeck2.c:817
msgid "initializer list for object using virtual functions"
msgstr ""
-#: cp/typeck2.c:811 cp/typeck2.c:827
+#: cp/typeck2.c:879 cp/typeck2.c:895
msgid "missing initializer for member `%D'"
msgstr ""
-#: cp/typeck2.c:816
+#: cp/typeck2.c:884
msgid "uninitialized const member `%D'"
msgstr ""
-#: cp/typeck2.c:818
+#: cp/typeck2.c:886
msgid "member `%D' with uninitialized const fields"
msgstr ""
-#: cp/typeck2.c:821
+#: cp/typeck2.c:889
msgid "member `%D' is uninitialized reference"
msgstr ""
-#: cp/typeck2.c:868
+#: cp/typeck2.c:936
msgid "index value instead of field name in union initializer"
msgstr ""
-#: cp/typeck2.c:880
+#: cp/typeck2.c:948
msgid "no field `%D' in union being initialized"
msgstr ""
-#: cp/typeck2.c:888
+#: cp/typeck2.c:956
msgid "union `%T' with no named members cannot be initialized"
msgstr ""
-#: cp/typeck2.c:924
+#: cp/typeck2.c:992
msgid "excess elements in aggregate initializer"
msgstr ""
-#: cp/typeck2.c:1038
+#: cp/typeck2.c:1100
msgid "circular pointer delegation detected"
msgstr ""
-#: cp/typeck2.c:1051
+#: cp/typeck2.c:1113
msgid "base operand of `->' has non-pointer type `%T'"
msgstr ""
-#: cp/typeck2.c:1065
+#: cp/typeck2.c:1137
msgid "result of `operator->()' yields non-pointer result"
msgstr ""
-#: cp/typeck2.c:1067
+#: cp/typeck2.c:1139
msgid "base operand of `->' is not a pointer"
msgstr ""
-#: cp/typeck2.c:1133
+#: cp/typeck2.c:1162
msgid "`%E' cannot be used as a member pointer, since it is of type `%T'"
msgstr ""
-#: cp/typeck2.c:1140
+#: cp/typeck2.c:1170
msgid "cannot apply member pointer `%E' to `%E', which is of non-aggregate type `%T'"
msgstr ""
-#: cp/typeck2.c:1149
+#: cp/typeck2.c:1180
msgid "member type `%T::' incompatible with object type `%T'"
msgstr ""
-#: cp/typeck2.c:1186
-msgid "`%T' fails to be a typedef or built-in type"
-msgstr ""
-
-#: cp/typeck2.c:1259
-#, c-format
-msgid "ISO C++ forbids defining types within %s"
-msgstr ""
-
-#: cp/typeck2.c:1384
+#: cp/typeck2.c:1396
msgid "call to function `%D' which throws incomplete type `%#T'"
msgstr ""
-#: cp/typeck2.c:1387
+#: cp/typeck2.c:1399
msgid "call to function which throws incomplete type `%#T'"
msgstr ""
#. XXX Not i18n clean.
-#: cp/cp-tree.h:3936
+#: cp/cp-tree.h:3756
#, c-format
msgid "%s is deprecated, please see the documentation for details"
msgstr ""
-#: cp/lang-options.h:29
-msgid "Do not obey access control semantics"
-msgstr ""
-
-#: cp/lang-options.h:31
-msgid "Change when template instances are emitted"
-msgstr ""
-
-#: cp/lang-options.h:36
-msgid "Check the return value of new"
-msgstr ""
-
-#: cp/lang-options.h:39
-msgid "Reduce size of object files"
-msgstr ""
-
-#: cp/lang-options.h:43
-msgid "Make string literals `char[]' instead of `const char[]'"
-msgstr ""
-
-#: cp/lang-options.h:46
-msgid "Dump the entire translation unit to a file"
-msgstr ""
-
-#: cp/lang-options.h:48
-msgid "Do not inline member functions by default"
-msgstr ""
-
-#: cp/lang-options.h:51
-msgid "Do not generate run time type descriptor information"
-msgstr ""
-
-#: cp/lang-options.h:56
-msgid "Do not generate code to check exception specifications"
-msgstr ""
-
-#: cp/lang-options.h:61
-msgid "Scope of for-init-statement vars extends outside"
-msgstr ""
-
-#: cp/lang-options.h:64
-msgid "Do not recognize GNU defined keywords"
-msgstr ""
-
-#: cp/lang-options.h:68
-msgid "Enable support for huge objects"
-msgstr ""
-
-#: cp/lang-options.h:72
-msgid "Export functions even if they can be inlined"
-msgstr ""
-
-#: cp/lang-options.h:75
-msgid "Only emit explicit template instantiations"
-msgstr ""
-
-#: cp/lang-options.h:78
-msgid "Only emit explicit instantiations of inline templates"
-msgstr ""
-
-#: cp/lang-options.h:84
-msgid "Don't pedwarn about uses of Microsoft extensions"
-msgstr ""
-
-#: cp/lang-options.h:87
-msgid "Recognize and/bitand/bitor/compl/not/or/xor"
-msgstr ""
-
-#: cp/lang-options.h:91
-msgid "Disable optional diagnostics"
-msgstr ""
-
-#: cp/lang-options.h:93
-msgid "Downgrade conformance errors to warnings"
-msgstr ""
-
-#: cp/lang-options.h:96
-msgid "Enable automatic template instantiation"
-msgstr ""
-
-#: cp/lang-options.h:101
-msgid "Display statistics accumulated during compilation"
-msgstr ""
-
-#: cp/lang-options.h:104
-msgid "Specify maximum template instantiation depth"
-msgstr ""
-
-#: cp/lang-options.h:106
-msgid "Use __cxa_atexit to register destructors"
-msgstr ""
-
-#: cp/lang-options.h:109
-msgid "Discard unused virtual functions"
-msgstr ""
-
-#: cp/lang-options.h:112
-msgid "Implement vtables using thunks"
-msgstr ""
-
-#: cp/lang-options.h:115
-msgid "Emit common-like symbols as weak symbols"
-msgstr ""
-
-#: cp/lang-options.h:118
-msgid "Emit cross referencing information"
-msgstr ""
-
-#: cp/lang-options.h:122
-msgid "Warn about inconsistent return types"
-msgstr ""
-
-#: cp/lang-options.h:125
-msgid "Warn about overloaded virtual function names"
-msgstr ""
-
-#: cp/lang-options.h:129
-msgid "Don't warn when all ctors/dtors are private"
-msgstr ""
-
-#: cp/lang-options.h:131
-msgid "Warn about non virtual destructors"
-msgstr ""
-
-#: cp/lang-options.h:134
-msgid "Warn when a function is declared extern, then inline"
-msgstr ""
-
-#: cp/lang-options.h:137
-msgid "Warn when the compiler reorders code"
-msgstr ""
-
-#: cp/lang-options.h:140
-msgid "Warn when synthesis behavior differs from Cfront"
-msgstr ""
-
-#: cp/lang-options.h:144
-msgid "Don't warn when type converting pointers to member functions"
-msgstr ""
-
-#: cp/lang-options.h:146
-msgid "Warn about violations of Effective C++ style rules"
-msgstr ""
-
-#: cp/lang-options.h:149
-msgid "Warn when overload promotes from unsigned to signed"
-msgstr ""
-
-#: cp/lang-options.h:152
-msgid "Warn if a C style cast is used in a program"
-msgstr ""
-
-#: cp/lang-options.h:156
-msgid "Don't warn when non-templatized friend functions are declared within a template"
-msgstr ""
-
-#: cp/lang-options.h:159
-msgid "Don't announce deprecation of compiler features"
-msgstr ""
-
-#: f/bad.c:387
+#: f/bad.c:388
msgid "note:"
msgstr ""
-#: f/bad.c:391
+#: f/bad.c:392
msgid "warning:"
msgstr ""
-#: f/bad.c:395
+#: f/bad.c:396
msgid "fatal:"
msgstr ""
-#: f/bad.c:437
+#: f/bad.c:438
msgid "(continued):"
msgstr ""
-#: f/bad.c:487 f/bad.c:505
+#: f/bad.c:488 f/bad.c:506
msgid "[REPORT BUG!!] %"
msgstr ""
-#: f/bad.c:494 f/bad.c:526
+#: f/bad.c:495 f/bad.c:527
msgid "[REPORT BUG!!]"
msgstr ""
-#: f/com.c:3132
+#: f/com.c:3125
#, no-c-format
msgid "ASSIGN'ed label cannot fit into `%A' at %0 -- using wider sibling"
msgstr ""
-#: f/com.c:11623
+#: f/com.c:11565
msgid "no INTEGER type can hold a pointer on this configuration"
msgstr ""
-#: f/com.c:11844
+#: f/com.c:11839
#, c-format
msgid "configuration: REAL, INTEGER, and LOGICAL are %d bits wide,"
msgstr ""
-#: f/com.c:11846
+#: f/com.c:11841
#, c-format
msgid "and pointers are %d bits wide, but g77 doesn't yet work"
msgstr ""
-#: f/com.c:11848
+#: f/com.c:11843
msgid "properly unless they all are 32 bits wide"
msgstr ""
-#: f/com.c:11849
+#: f/com.c:11844
msgid "Please keep this in mind before you report bugs."
msgstr "Bitte bedenken Sie dies, wenn Sie einen Fehlerbericht einsenden."
#. I/O will probably crash.
-#: f/com.c:11857
+#: f/com.c:11852
#, c-format
msgid "configuration: char * holds %d bits, but ftnlen only %d"
msgstr ""
#. ASSIGN 10 TO I will crash.
-#: f/com.c:11866
+#: f/com.c:11861
#, c-format
msgid ""
"configuration: char * holds %d bits, but INTEGER only %d --\n"
" ASSIGN statement might fail"
msgstr ""
-#: f/com.c:13681
+#: f/com.c:13677
msgid "In statement function"
msgstr ""
-#: f/com.c:13691
+#: f/com.c:13687
+#, c-format
msgid "Outside of any program unit:\n"
msgstr ""
-#: f/com.c:15320
+#: f/com.c:15283
#, no-c-format
msgid "%A from %B at %0%C"
msgstr ""
-#: f/com.c:15497
-msgid "directory name must immediately follow -I"
-msgstr ""
-
-#: f/com.c:15640
+#: f/com.c:15593
#, no-c-format
msgid "At %0, INCLUDE file %A exists, but is not readable"
msgstr ""
-#: f/com.c:15675
+#: f/com.c:15628
#, no-c-format
msgid "At %0, INCLUDE nesting too deep"
msgstr ""
-#: f/expr.c:9614
+#: f/expr.c:8706
#, no-c-format
msgid "Two arithmetic operators in a row at %0 and %1 -- use parentheses"
msgstr ""
-#: f/expr.c:9664
+#: f/expr.c:8756
#, no-c-format
msgid "Operator at %0 has lower precedence than that at %1 -- use parentheses"
msgstr ""
-#: f/expr.c:10525
+#: f/expr.c:9639
#, no-c-format
msgid "Use .EQV./.NEQV. instead of .EQ./.NE. at %0 for LOGICAL operands at %1 and %2"
msgstr ""
-#: f/expr.c:10896
+#: f/expr.c:10010
#, no-c-format
msgid "Unsupported operand for ** at %1 -- converting to default INTEGER"
msgstr ""
-#: f/g77spec.c:234
+#: f/g77spec.c:230
#, c-format
msgid "overflowed output arg list for `%s'"
msgstr ""
-#: f/g77spec.c:373
+#: f/g77spec.c:367
msgid "--driver no longer supported"
msgstr ""
-#: f/g77spec.c:386
+#: f/g77spec.c:380
#, c-format
msgid "argument to `%s' missing"
msgstr ""
-#: f/g77spec.c:390
+#: f/g77spec.c:384
msgid "no input files; unwilling to write output files"
msgstr ""
@@ -18210,131 +17324,126 @@ msgstr ""
msgid "Implicit declaration of `%A' at %0"
msgstr ""
-#: f/lex.c:326
+#: f/lex.c:321
#, no-c-format
msgid "Non-ISO-C-standard escape sequence `\\%A' at %0"
msgstr ""
-#: f/lex.c:345
+#: f/lex.c:340
#, no-c-format
msgid "Unknown escape sequence `\\%A' at %0"
msgstr ""
-#: f/lex.c:354
+#: f/lex.c:349
#, no-c-format
msgid "Unterminated escape sequence `\\' at %0"
msgstr ""
-#: f/lex.c:365
+#: f/lex.c:360
#, no-c-format
msgid "Unknown escape sequence `\\' followed by char code 0x%A at %0"
msgstr ""
-#: f/lex.c:393
+#: f/lex.c:388
#, no-c-format
msgid "\\x used at %0 with no following hex digits"
msgstr ""
-#: f/lex.c:407
+#: f/lex.c:402
#, no-c-format
msgid "Hex escape at %0 out of range"
msgstr ""
-#: f/lex.c:441
+#: f/lex.c:436
#, no-c-format
msgid "Escape sequence at %0 out of range for character"
msgstr ""
-#: f/lex.c:595
+#: f/lex.c:590
msgid "hex escape out of range"
msgstr ""
-#: f/lex.c:648
+#: f/lex.c:643
#, c-format
msgid "non-ANSI-standard escape sequence, `\\%c'"
msgstr ""
-#: f/lex.c:661
+#: f/lex.c:656
#, c-format
msgid "non-ISO escape sequence `\\%c'"
msgstr ""
-#: f/lex.c:665
+#: f/lex.c:660
#, c-format
msgid "unknown escape sequence `\\%c'"
msgstr ""
-#: f/lex.c:667
+#: f/lex.c:662
#, c-format
msgid "unknown escape sequence: `\\' followed by char code 0x%x"
msgstr ""
-#: f/lex.c:744
+#: f/lex.c:739
msgid "badly formed directive -- no closing quote"
msgstr ""
-#: f/lex.c:802
+#: f/lex.c:797
msgid "#-lines for entering and leaving files don't match"
msgstr ""
-#: f/lex.c:964
+#: f/lex.c:957
msgid "bad directive -- missing close-quote"
msgstr ""
-#: f/lex.c:1078
-#, c-format
-msgid "ignoring pragma: %s"
-msgstr ""
-
-#: f/lex.c:1156
+#: f/lex.c:1096
msgid "invalid #ident"
msgstr ""
-#: f/lex.c:1173
+#: f/lex.c:1113
msgid "undefined or invalid # directive"
msgstr ""
-#: f/lex.c:1229
+#: f/lex.c:1168
msgid "invalid #line"
msgstr ""
-#: f/lex.c:1285 f/lex.c:1329
+#: f/lex.c:1224 f/lex.c:1268
msgid "use `#line ...' instead of `# ...' in first line"
msgstr ""
-#: f/lex.c:1339
+#: f/lex.c:1278
msgid "invalid #-line"
msgstr ""
-#: f/lex.c:1432
+#: f/lex.c:1371
#, no-c-format
msgid "Null character at %0 -- line ignored"
msgstr ""
-#: f/stb.c:12078
+#: f/stb.c:9177
#, no-c-format
msgid "INCLUDE at %0 not the only statement on the source line"
msgstr ""
-#: f/ste.c:1400 f/ste.c:1747
+#: f/ste.c:1397 f/ste.c:1744
msgid "ASSIGNed FORMAT specifier is too small"
msgstr ""
#. ~~~Someday handle CHARACTER*1, CHARACTER*N
-#: f/ste.c:2624
+#: f/ste.c:2621
#, no-c-format
msgid "SELECT CASE on CHARACTER type (at %0) not supported -- sorry"
msgstr ""
-#: f/ste.c:2729
+#: f/ste.c:2725
msgid "SELECT (at %0) has duplicate cases -- check integer overflow of CASE(s)"
msgstr ""
-#: f/ste.c:2959
+#: f/ste.c:2957
msgid "ASSIGN to variable that is too small"
msgstr ""
-#: f/ste.c:2987
+#: f/ste.c:2989
msgid "ASSIGNed GOTO target variable is too small"
msgstr ""
@@ -18343,331 +17452,20 @@ msgstr ""
msgid "Local adjustable symbol `%A' at %0"
msgstr ""
-#: f/target.c:2550
+#: f/target.c:2545
msgid "data initializer on host with different endianness"
msgstr ""
-#: f/top.c:237
-#, c-format
-msgid "%s no longer supported -- try -fvxt"
-msgstr ""
-
-#: f/top.c:239
-#, c-format
-msgid "%s no longer supported -- try -fno-vxt -ff90"
-msgstr ""
-
-#: f/top.c:307 f/top.c:309
-#, c-format
-msgid "%s disabled, use normal debugging flags"
-msgstr ""
-
-#: f/lang-options.h:33
-msgid "Print g77-specific compiler version info, run internal tests"
-msgstr ""
-
-#: f/lang-options.h:37
-msgid "Program is written in typical FORTRAN 66 dialect"
-msgstr ""
-
-#: f/lang-options.h:40
-msgid "Program is written in typical Unix f77 dialect"
-msgstr ""
-
-#: f/lang-options.h:42
-msgid "Program does not use Unix-f77 dialectal features"
-msgstr ""
-
-#: f/lang-options.h:44
-msgid "Program is written in Fortran-90-ish dialect"
-msgstr ""
-
-#: f/lang-options.h:48
-msgid "Treat local vars and COMMON blocks as if they were named in SAVE statements"
-msgstr ""
-
-#: f/lang-options.h:50
-msgid "Allow $ in symbol names"
-msgstr ""
-
-#: f/lang-options.h:54
-msgid "f2c-compatible code need not be generated"
-msgstr ""
-
-#: f/lang-options.h:57
-msgid "Unsupported; do not generate libf2c-calling code"
-msgstr ""
-
-#: f/lang-options.h:59
-msgid "Unsupported; affects code-generation of arrays"
-msgstr ""
-
-#: f/lang-options.h:62
-msgid "Program is written in Fortran-90-ish free form"
-msgstr ""
-
-#: f/lang-options.h:67
-msgid "Warn about use of (only a few for now) Fortran extensions"
-msgstr ""
-
-#: f/lang-options.h:70
-msgid "Program is written in VXT (Digital-like) FORTRAN"
-msgstr ""
-
-#: f/lang-options.h:73
-msgid "Disallow all ugly features"
-msgstr ""
-
-#: f/lang-options.h:76
-msgid "Hollerith and typeless constants not passed as arguments"
-msgstr ""
-
-#: f/lang-options.h:78
-msgid "Allow ordinary copying of ASSIGN'ed vars"
-msgstr ""
-
-#: f/lang-options.h:81
-msgid "Dummy array dimensioned to (1) is assumed-size"
-msgstr ""
-
-#: f/lang-options.h:84
-msgid "Trailing comma in procedure call denotes null argument"
-msgstr ""
-
-#: f/lang-options.h:87
-msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
-msgstr ""
-
-#: f/lang-options.h:91
-msgid "Initialization via DATA and PARAMETER is type-compatible"
-msgstr ""
-
-#: f/lang-options.h:93
-msgid "Allow INTEGER and LOGICAL interchangeability"
-msgstr ""
-
-#: f/lang-options.h:96
-msgid "Print internal debugging-related info"
-msgstr ""
-
-#: f/lang-options.h:99
-msgid "Initialize local vars and arrays to zero"
-msgstr ""
-
-#: f/lang-options.h:103
-msgid "Backslashes in character/hollerith constants not special (C-style)"
-msgstr ""
-
-#: f/lang-options.h:105
-msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
-msgstr ""
-
-#: f/lang-options.h:109
-msgid "Disable the appending of underscores to externals"
-msgstr ""
-
-#: f/lang-options.h:112
-msgid "Never append a second underscore to externals"
-msgstr ""
-
-#: f/lang-options.h:114
-msgid "Intrinsics spelled as e.g. SqRt"
-msgstr ""
-
-#: f/lang-options.h:116
-msgid "Intrinsics in uppercase"
-msgstr ""
-
-#: f/lang-options.h:119
-msgid "Intrinsics letters in arbitrary cases"
-msgstr ""
-
-#: f/lang-options.h:121
-msgid "Language keywords spelled as e.g. IOStat"
-msgstr ""
-
-#: f/lang-options.h:123
-msgid "Language keywords in uppercase"
-msgstr ""
-
-#: f/lang-options.h:126
-msgid "Language keyword letters in arbitrary cases"
-msgstr ""
-
-#: f/lang-options.h:128
-msgid "Internally convert most source to uppercase"
-msgstr ""
-
-#: f/lang-options.h:131
-msgid "Internally preserve source case"
-msgstr ""
-
-#: f/lang-options.h:133
-msgid "Symbol names spelled in mixed case"
-msgstr ""
-
-#: f/lang-options.h:135
-msgid "Symbol names in uppercase"
-msgstr ""
-
-#: f/lang-options.h:137
-msgid "Symbol names in lowercase"
-msgstr ""
-
-#: f/lang-options.h:140
-msgid "Program written in uppercase"
-msgstr ""
-
-#: f/lang-options.h:142
-msgid "Program written in lowercase"
-msgstr ""
-
-#: f/lang-options.h:144
-msgid "Program written in strict mixed-case"
-msgstr ""
-
-#: f/lang-options.h:146
-msgid "Compile as if program written in uppercase"
-msgstr ""
-
-#: f/lang-options.h:148
-msgid "Compile as if program written in lowercase"
-msgstr ""
-
-#: f/lang-options.h:150
-msgid "Preserve all spelling (case) used in program"
-msgstr ""
-
-#: f/lang-options.h:152
-msgid "Delete libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:154
-msgid "Disable libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:157
-msgid "Hide libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:159
-msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:161
-msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:164
-msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:166
-msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:168
-msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:171
-msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:173
-msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
-msgstr ""
-
-#: f/lang-options.h:175
-msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:178
-msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:180
-msgid "Delete MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:182
-msgid "Disable MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:185
-msgid "Hide MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:187
-msgid "Delete libU77 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:189
-msgid "Disable libU77 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:192
-msgid "Hide libU77 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:194
-msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:196
-msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:199
-msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:201
-msgid "Treat initial values of 0 like non-zero values"
-msgstr ""
-
-#: f/lang-options.h:204
-msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
-msgstr ""
-
-#: f/lang-options.h:207
-msgid "Take at least one trip through each iterative DO loop"
-msgstr ""
-
-#: f/lang-options.h:211
-msgid "Print names of program units as they are compiled"
+#: f/top.c:244
+msgid "-fvxt-not-f90 no longer supported -- try -fvxt"
msgstr ""
-#: f/lang-options.h:214
-msgid "Disable fatal diagnostics about inter-procedural problems"
+#: f/top.c:248
+msgid "-ff90-not-vxt no longer supported -- try -fno-vxt -ff90"
msgstr ""
-#: f/lang-options.h:216
-msgid "Make prefix-radix non-decimal constants be typeless"
-msgstr ""
-
-#: f/lang-options.h:219
-msgid "Generate code to check subscript and substring bounds"
-msgstr ""
-
-#: f/lang-options.h:222
-msgid "Fortran-specific form of -fbounds-check"
-msgstr ""
-
-#: f/lang-options.h:226
-msgid "Disable warnings about inter-procedural problems"
-msgstr ""
-
-#: f/lang-options.h:230
-msgid "Warn about constructs with surprising meanings"
-msgstr ""
-
-#: f/lang-options.h:235
-msgid "Add a directory for INCLUDE searching"
-msgstr ""
-
-#: f/lang-options.h:237
-msgid "Set the maximum line length"
+#: f/top.c:318
+msgid "-fdebug-kludge is disabled, use normal debugging flags"
msgstr ""
#: f/bad.def:39
@@ -19572,320 +18370,338 @@ msgstr ""
msgid "In anything"
msgstr ""
-#: java/check-init.c:917
+#: java/check-init.c:905
#, c-format
msgid "internal error in check-init: tree code not implemented: %s"
msgstr ""
-#: java/check-init.c:990
-#, c-format
-msgid "final field '%s' may not have been initialized"
-msgstr ""
+#: java/check-init.c:977
+msgid "%Jfinal field '%D' may not have been initialized"
+msgstr "%Jletztes Feld »%D« könnte nicht initialisiert worden sein"
-#: java/class.c:539 java/class.c:564
+#: java/class.c:592 java/class.c:616
msgid "internal error - too many interface type"
msgstr ""
-#: java/class.c:677
+#: java/class.c:715
msgid "bad method signature"
msgstr ""
-#: java/class.c:726
+#: java/class.c:759
msgid "misplaced ConstantValue attribute (not in any field)"
msgstr ""
-#: java/class.c:728
+#: java/class.c:761
#, c-format
msgid "duplicate ConstantValue attribute for field '%s'"
msgstr ""
-#: java/class.c:739
+#: java/class.c:772
#, c-format
msgid "ConstantValue attribute of field '%s' has wrong type"
msgstr ""
-#: java/class.c:1103
+#: java/class.c:1067
#, c-format
msgid "field '%s' not found in class"
msgstr ""
-#: java/class.c:1365
-msgid "abstract method in non-abstract class"
+#: java/class.c:1324
+msgid "%Jabstract method in non-abstract class"
msgstr ""
-#: java/class.c:2078
-#, c-format
-msgid "non-static method '%s' overrides static method"
+#: java/class.c:2140
+msgid "%Jnon-static method '%D' overrides static method"
msgstr ""
-#: java/decl.c:1541
+#: java/decl.c:1018
+msgid "%J'%D' used prior to declaration"
+msgstr "%J»%D« bereits vor Deklaration benutzt"
+
+#: java/decl.c:1059
+#, c-format
+msgid "declaration of `%s' shadows a parameter"
+msgstr "Deklaration von »%s« überdeckt einen Parameter"
+
+#: java/decl.c:1062
#, c-format
-msgid "In %s: overlapped variable and exception ranges at %d"
+msgid "declaration of `%s' shadows a symbol from the parameter list"
+msgstr "Deklaration von »%s« überdeckt ein Symbol aus der Parameterliste"
+
+#: java/decl.c:1361
+msgid "%Jlabel '%D' used but not defined"
+msgstr "%JMarke »%D« verwendet, aber nicht definiert"
+
+#: java/decl.c:1366
+msgid "%Jlabel '%D' defined but not used"
+msgstr "%JMarke »%D« definiert, aber nicht verwendet"
+
+#: java/decl.c:1494
+msgid "%JIn %D: overlapped variable and exception ranges at %d"
msgstr ""
-#: java/decl.c:1622
+#: java/decl.c:1572
msgid "bad type in parameter debug info"
msgstr ""
-#: java/decl.c:1632
-#, c-format
-msgid "bad PC range for debug info for local `%s'"
+#: java/decl.c:1581
+msgid "%Jbad PC range for debug info for local '%D'"
msgstr ""
-#: java/expr.c:530
+#: java/expr.c:519
msgid "stack underflow - dup* operation"
msgstr ""
-#: java/expr.c:1534
+#: java/expr.c:1469
#, c-format
msgid "reference `%s' is ambiguous: appears in interface `%s' and interface `%s'"
msgstr ""
-#: java/expr.c:1563
+#: java/expr.c:1497
#, c-format
msgid "field `%s' not found"
msgstr ""
-#: java/expr.c:1715
+#: java/expr.c:1658
msgid "ret instruction not implemented"
msgstr ""
-#: java/expr.c:1857
+#: java/expr.c:1815
#, c-format
msgid "method '%s' not found in class"
msgstr ""
-#: java/expr.c:2060
+#: java/expr.c:2020
#, c-format
msgid "failed to find class '%s'"
msgstr ""
-#: java/expr.c:2070
+#: java/expr.c:2030
#, c-format
msgid "class '%s' has no method named '%s' matching signature '%s'"
msgstr ""
-#: java/expr.c:2080
+#: java/expr.c:2040
msgid "invokestatic on non static method"
msgstr ""
-#: java/expr.c:2085
+#: java/expr.c:2045
msgid "invokestatic on abstract method"
msgstr ""
-#: java/expr.c:2093
+#: java/expr.c:2053
msgid "invoke[non-static] on static method"
msgstr ""
-#: java/expr.c:2396
+#: java/expr.c:2352
#, c-format
msgid "missing field '%s' in '%s'"
msgstr ""
-#: java/expr.c:2402
+#: java/expr.c:2358
#, c-format
msgid "mismatching signature for field '%s' in '%s'"
msgstr ""
-#: java/expr.c:2425
-#, c-format
-msgid "assignment to final field `%s' not in field's class"
+#: java/expr.c:2380
+msgid "%Jassignment to final field '%D' not in field's class"
msgstr ""
-#: java/expr.c:2430
-#, c-format
-msgid "assignment to final static field `%s' not in class initializer"
+#: java/expr.c:2385
+msgid "%Jassignment to final static field `%D' not in class initializer"
msgstr ""
-#: java/expr.c:2437
-#, c-format
-msgid "assignment to final field `%s' not in constructor"
+#: java/expr.c:2393
+msgid "%Jassignment to final field '%D' not in constructor"
msgstr ""
-#: java/expr.c:2684
+#: java/expr.c:2636
#, c-format
msgid "can't expand %s"
msgstr ""
-#: java/expr.c:2861
+#: java/expr.c:2808
msgid "invalid PC in line number table"
msgstr ""
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2906
+#: java/expr.c:2854
#, c-format
msgid "unreachable bytecode from %d to before %d"
msgstr ""
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2943
+#: java/expr.c:2892
#, c-format
msgid "unreachable bytecode from %d to the end of the method"
msgstr ""
#. duplicate code from LOAD macro
-#: java/expr.c:3261
+#: java/expr.c:3206
msgid "unrecogized wide sub-instruction"
msgstr ""
-#: java/jcf-io.c:543
+#: java/jcf-io.c:534
#, c-format
msgid "source file for class `%s' is newer than its matching class file. Source file `%s' used instead"
msgstr ""
-#: java/jcf-parse.c:338
+#: java/jcf-parse.c:330
msgid "bad string constant"
msgstr ""
-#: java/jcf-parse.c:356
+#: java/jcf-parse.c:348
#, c-format
msgid "bad value constant type %d, index %d"
msgstr ""
-#: java/jcf-parse.c:528
+#: java/jcf-parse.c:514
#, c-format
-msgid "can't reopen %s"
-msgstr ""
+msgid "can't reopen %s: %m"
+msgstr "Es ist nicht möglich, »%s« erneut zu öffnen: %m"
-#: java/jcf-parse.c:533
+#: java/jcf-parse.c:519
#, c-format
-msgid "can't close %s"
-msgstr ""
+msgid "can't close %s: %m"
+msgstr "Es ist nicht möglich, »%s« zu schließen: %m"
-#: java/jcf-parse.c:619
+#: java/jcf-parse.c:604
#, c-format
msgid "cannot find file for class %s"
msgstr ""
-#: java/jcf-parse.c:631
+#: java/jcf-parse.c:615
msgid "not a valid Java .class file"
msgstr ""
-#: java/jcf-parse.c:634
+#: java/jcf-parse.c:618
msgid "error while parsing constant pool"
msgstr ""
-#: java/jcf-parse.c:637
+#: java/jcf-parse.c:621
#, c-format
msgid "error in constant pool entry #%d\n"
msgstr ""
#. FIXME - where was first time
-#: java/jcf-parse.c:649
+#: java/jcf-parse.c:633
#, c-format
msgid "reading class %s for the second time from %s"
msgstr ""
-#: java/jcf-parse.c:667
+#: java/jcf-parse.c:651
msgid "error while parsing fields"
msgstr ""
-#: java/jcf-parse.c:670
+#: java/jcf-parse.c:654
msgid "error while parsing methods"
msgstr ""
-#: java/jcf-parse.c:673
+#: java/jcf-parse.c:657
msgid "error while parsing final attributes"
msgstr ""
-#: java/jcf-parse.c:687
+#: java/jcf-parse.c:671
#, c-format
msgid "the `java.lang.Object' that was found in `%s' didn't have the special zero-length `gnu.gcj.gcj-compiled' attribute. This generally means that your classpath is incorrectly set. Use `info gcj \"Input Options\"' to see the info page describing how to set the classpath"
msgstr ""
-#: java/jcf-parse.c:777
+#: java/jcf-parse.c:749
msgid "missing Code attribute"
msgstr ""
-#: java/jcf-parse.c:1014
-msgid "source file seen twice on command line and will be compiled only once"
+#: java/jcf-parse.c:981
+msgid "%Hsource file seen twice on command line and will be compiled only once"
msgstr ""
-#: java/jcf-parse.c:1030
+#: java/jcf-parse.c:997
msgid "no input file specified"
msgstr ""
-#: java/jcf-parse.c:1059
+#: java/jcf-parse.c:1026
#, c-format
-msgid "can't close input file %s"
-msgstr ""
+msgid "can't close input file %s: %m"
+msgstr "die Eingabedatei »%s« kann nicht geschlossen werden: %m"
-#: java/jcf-parse.c:1096
+#: java/jcf-parse.c:1064
#, c-format
msgid "bad zip/jar file %s"
msgstr ""
-#: java/jcf-write.c:2650
+#: java/jcf-parse.c:1236
+#, c-format
+msgid "error while reading %s from zip file"
+msgstr ""
+
+#: java/jcf-write.c:2602
#, c-format
msgid "internal error in generate_bytecode_insn - tree code not implemented: %s"
msgstr ""
-#: java/jcf-write.c:2988
+#: java/jcf-write.c:2934
msgid "field initializer type mismatch"
msgstr ""
-#: java/jcf-write.c:3419
+#: java/jcf-write.c:3389
#, c-format
-msgid "can't create directory %s"
-msgstr ""
+msgid "can't create directory %s: %m"
+msgstr "das Verzeichnis %s kann nicht erzeugt werden: %m"
-#: java/jcf-write.c:3473
+#: java/jcf-write.c:3442
#, c-format
-msgid "can't create %s"
-msgstr "Es ist nicht möglich %s zu erzeugen"
+msgid "can't create %s: %m"
+msgstr "Es ist nicht möglich, %s zu erzeugen: %m"
-#: java/jv-scan.c:187
+#: java/jv-scan.c:185
msgid "only one of `--print-main', `--list-class', and `--complexity' allowed"
msgstr ""
-#: java/jv-scan.c:190
+#: java/jv-scan.c:188
#, c-format
msgid "can't open output file `%s'"
msgstr ""
-#: java/jv-scan.c:224
+#: java/jv-scan.c:222
#, c-format
msgid "file not found `%s'"
msgstr ""
-#: java/jvspec.c:426
+#: java/jvspec.c:418
msgid "can't specify `-D' without `--main'\n"
msgstr ""
-#: java/jvspec.c:429
+#: java/jvspec.c:421
#, c-format
msgid "`%s' is not a valid class name"
msgstr "»%s« ist kein gültiger Klassenname"
-#: java/jvspec.c:435
+#: java/jvspec.c:427
msgid "--resource requires -o"
msgstr "--resource erfordert -o"
-#: java/jvspec.c:442
+#: java/jvspec.c:434
msgid "warning: already-compiled .class files ignored with -C"
msgstr ""
-#: java/jvspec.c:449
+#: java/jvspec.c:441
msgid "cannot specify both -C and -o"
msgstr "-C und -o können nicht zusammen angegeben werden"
-#: java/jvspec.c:461
+#: java/jvspec.c:453
msgid "cannot create temporary file"
msgstr "temporäre Datei konnte nicht angelegt werden"
-#: java/jvspec.c:489
+#: java/jvspec.c:481
msgid "using both @FILE with multiple files not implemented"
msgstr ""
-#: java/jvspec.c:538
+#: java/jvspec.c:530
msgid "cannot specify `main' class when not linking"
msgstr ""
-#: java/lang.c:548
+#: java/lang.c:740
msgid "can't do dependency tracking with input from stdin"
msgstr ""
-#: java/lang.c:564
+#: java/lang.c:756
msgid "couldn't determine target name for dependency tracking"
msgstr ""
@@ -19899,544 +18715,435 @@ msgid ""
"`--encoding=UTF-8' option"
msgstr ""
-#: java/mangle.c:85
+#: java/mangle.c:89
#, c-format
msgid "can't mangle %s"
msgstr ""
-#: java/mangle_name.c:144 java/mangle_name.c:216
+#: java/mangle_name.c:140 java/mangle_name.c:210
msgid "internal error - invalid Utf8 name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:881
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:962
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1303
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1364
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1574
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1796
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1805
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1816
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1827
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1839
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1854
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1871
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1873
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1945
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2116
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2178
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2330
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2342
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2349
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2356
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2367
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2369
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2407
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2409
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2411
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2432
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2434
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2436
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2452
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2454
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2475
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2477
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2479
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2507
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2509
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2511
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2513
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2531
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2533
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2555
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2566
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2577
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2588
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2601
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2605
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2607
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2620
+#: java/parse-scan.y:880 java/parse.y:949 java/parse.y:1290 java/parse.y:1351
+#: java/parse.y:1555 java/parse.y:1777 java/parse.y:1786 java/parse.y:1797
+#: java/parse.y:1808 java/parse.y:1820 java/parse.y:1835 java/parse.y:1852
+#: java/parse.y:1854 java/parse.y:1935 java/parse.y:2106 java/parse.y:2168
+#: java/parse.y:2320 java/parse.y:2332 java/parse.y:2339 java/parse.y:2346
+#: java/parse.y:2357 java/parse.y:2359 java/parse.y:2397 java/parse.y:2399
+#: java/parse.y:2401 java/parse.y:2422 java/parse.y:2424 java/parse.y:2426
+#: java/parse.y:2442 java/parse.y:2444 java/parse.y:2465 java/parse.y:2467
+#: java/parse.y:2469 java/parse.y:2497 java/parse.y:2499 java/parse.y:2501
+#: java/parse.y:2503 java/parse.y:2521 java/parse.y:2523 java/parse.y:2534
+#: java/parse.y:2545 java/parse.y:2556 java/parse.y:2567 java/parse.y:2578
+#: java/parse.y:2591 java/parse.y:2595 java/parse.y:2597 java/parse.y:2610
msgid "Missing term"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:883
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:734
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:772
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:797
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:983
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1338
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1550
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1552
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1781
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1807
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1818
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1829
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1841
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1856
+#: java/parse-scan.y:882 java/parse.y:721 java/parse.y:759 java/parse.y:784
+#: java/parse.y:970 java/parse.y:1325 java/parse.y:1531 java/parse.y:1533
+#: java/parse.y:1762 java/parse.y:1788 java/parse.y:1799 java/parse.y:1810
+#: java/parse.y:1822 java/parse.y:1837
msgid "';' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:732
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:770
+#: java/parse.y:719 java/parse.y:757
msgid "Missing name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:795
+#: java/parse.y:782
msgid "'*' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:809
+#: java/parse.y:796
msgid "Class or interface declaration expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:846
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:848
+#: java/parse.y:833 java/parse.y:835
msgid "Missing class name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:851
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:855
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:863
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1023
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1284
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1616
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1867
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1899
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1952
+#: java/parse.y:838 java/parse.y:842 java/parse.y:850 java/parse.y:1010
+#: java/parse.y:1271 java/parse.y:1273 java/parse.y:1597 java/parse.y:1848
+#: java/parse.y:1880 java/parse.y:1942
msgid "'{' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:865
+#: java/parse.y:852
msgid "Missing super class name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:875
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:891
+#: java/parse.y:862 java/parse.y:878
msgid "Missing interface name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:977
+#: java/parse.y:964
msgid "Missing variable initializer"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:994
+#: java/parse.y:981
msgid "Invalid declaration"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:997
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1082
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2153
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2175
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2179
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2214
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2291
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2301
+#: java/parse.y:984 java/parse.y:1069 java/parse.y:2143 java/parse.y:2165
+#: java/parse.y:2169 java/parse.y:2204 java/parse.y:2281 java/parse.y:2291
msgid "']' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1001
+#: java/parse.y:988
msgid "Unbalanced ']'"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1037
+#: java/parse.y:1024
msgid "Invalid method declaration, method name required"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1042
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1047
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1052
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2036
+#: java/parse.y:1029 java/parse.y:1034 java/parse.y:1039 java/parse.y:2026
msgid "Identifier expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1057
+#: java/parse.y:1044
msgid "Invalid method declaration, return type required"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1080
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1530
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1537
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1546
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1548
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1576
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1684
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1981
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2034
+#: java/parse.y:1067 java/parse.y:1511 java/parse.y:1518 java/parse.y:1527
+#: java/parse.y:1529 java/parse.y:1557 java/parse.y:1665 java/parse.y:1971
+#: java/parse.y:2024
msgid "')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1096
+#: java/parse.y:1083
msgid "Missing formal parameter term"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1111
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1116
+#: java/parse.y:1098 java/parse.y:1103
msgid "Missing identifier"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1136
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1145
+#: java/parse.y:1123 java/parse.y:1132
msgid "Missing class type term"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1301
+#: java/parse.y:1288
msgid "Invalid interface type"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1494
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1663
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1665
+#: java/parse.y:1475 java/parse.y:1644 java/parse.y:1646
msgid "':' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1516
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1521
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1526
+#: java/parse.y:1497 java/parse.y:1502 java/parse.y:1507
msgid "Invalid expression statement"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1572
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1612
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1680
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1748
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1869
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1938
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2028
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2030
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2038
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2274
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2276
+#: java/parse.y:1525 java/parse.y:1553 java/parse.y:1593 java/parse.y:1661
+#: java/parse.y:1729 java/parse.y:1850 java/parse.y:1928 java/parse.y:2018
+#: java/parse.y:2020 java/parse.y:2028 java/parse.y:2264 java/parse.y:2266
msgid "'(' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1614
+#: java/parse.y:1595
msgid "Missing term or ')'"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1661
+#: java/parse.y:1642
msgid "Missing or invalid constant expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1682
+#: java/parse.y:1663
msgid "Missing term and ')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1721
+#: java/parse.y:1702
msgid "Invalid control expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1723
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1725
+#: java/parse.y:1704 java/parse.y:1706
msgid "Invalid update expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1750
+#: java/parse.y:1731
msgid "Invalid init statement"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1941
+#: java/parse.y:1931
msgid "Missing term or ')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1983
+#: java/parse.y:1973
msgid "'class' or 'this' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1985
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1987
+#: java/parse.y:1975 java/parse.y:1977
msgid "'class' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2032
+#: java/parse.y:2022
msgid "')' or term expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2151
+#: java/parse.y:2141
msgid "'[' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2229
+#: java/parse.y:2219
msgid "Field expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2296
+#: java/parse.y:2276 java/parse.y:2286
msgid "Missing term and ']' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2400
+#: java/parse.y:2390
msgid "']' expected, invalid type expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2403
+#: java/parse.y:2393
msgid "Invalid type expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2515
+#: java/parse.y:2505
msgid "Invalid reference type"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2993
+#: java/parse.y:2977
msgid "Constructor invocation must be first thing in a constructor"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2995
+#: java/parse.y:2979
msgid "Only constructors can invoke constructors"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3004
+#: java/parse.y:2987
#, c-format
msgid ": `%s' JDK1.1(TM) feature"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3064
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3066
+#: java/parse.y:3046 java/parse.y:3048
#, c-format
msgid ""
"%s.\n"
"%s"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6879
+#: java/parse.y:6908
#, c-format
msgid "malformed .zip archive in CLASSPATH: %s"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6950
+#: java/parse.y:6979
#, c-format
msgid "Can't find default package `%s'. Check the CLASSPATH environment variable and the access to the archives"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12352
+#: java/parse.y:12192
#, c-format
msgid "missing static field `%s'"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12357
+#: java/parse.y:12197
#, c-format
msgid "not a static field `%s'"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12400
+#: java/parse.y:12240
#, c-format
msgid "No case for %s"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:13365
+#: java/parse.y:13172
#, c-format
msgid "unregistered operator %s"
msgstr ""
-#: java/typeck.c:553
+#: java/typeck.c:530
msgid "junk at end of signature string"
msgstr ""
-#: java/verify.c:479
+#: java/verify.c:471
msgid "bad pc in exception_table"
msgstr ""
-#: java/verify.c:485
-msgid "exception handler inside code that is being protected"
-msgstr ""
-
-#: java/verify.c:1395
+#: java/verify.c:1384
#, c-format
msgid "unknown opcode %d@pc=%d during verification"
msgstr ""
-#: java/verify.c:1465 java/verify.c:1478 java/verify.c:1482
+#: java/verify.c:1454 java/verify.c:1467 java/verify.c:1471
#, c-format
msgid "verification error at PC=%d"
msgstr ""
-#: java/lang-options.h:32
-msgid "Disable automatic array bounds checking"
-msgstr ""
-
-#: java/lang-options.h:34
-msgid "Disable assignability checks for stores into object arrays"
-msgstr ""
-
-#: java/lang-options.h:36
-msgid "Assume native functions are implemented using JNI"
-msgstr ""
-
-#: java/lang-options.h:38
-msgid "Replace system path"
-msgstr ""
-
-#: java/lang-options.h:40
-msgid "Set class path"
-msgstr ""
-
-#: java/lang-options.h:42
-msgid "Set class path (deprecated: use --classpath instead)"
-msgstr ""
-
-#: java/lang-options.h:44
-msgid "Choose class whose main method should be used"
-msgstr ""
-
-#: java/lang-options.h:46
-msgid "Choose input encoding (default comes from locale)"
-msgstr ""
-
-#: java/lang-options.h:48
-msgid "Add directory to class path"
-msgstr ""
-
-#: java/lang-options.h:50
-msgid "Directory where class files should be written"
-msgstr ""
-
-#: java/lang-options.h:52
-msgid "Warn if modifiers are specified when not necessary"
-msgstr ""
-
-#: java/lang-options.h:54
-msgid "Warn if deprecated empty statements are found"
-msgstr ""
-
-#: java/lang-options.h:56
-msgid "Warn if .class files are out of date"
-msgstr ""
-
-#: java/lang-options.h:58
-msgid "Always check for non gcj generated classes archives"
-msgstr ""
-
-#: java/lang-options.h:60
-msgid "Never optimize static class initialization code"
-msgstr ""
-
-#: java/lang-options.h:62
-msgid "Use offset tables for virtual method calls"
-msgstr ""
-
-#: objc/objc-act.c:651
+#: objc/objc-act.c:689
#, c-format
msgid "object does not conform to the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:737 objc/objc-act.c:810
+#: objc/objc-act.c:775 objc/objc-act.c:848
#, c-format
msgid "class `%s' does not implement the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:914
+#: objc/objc-act.c:951
#, c-format
-msgid "`%s' cannot be statically allocated"
+msgid "statically allocated instance of Objective-C class `%s'"
msgstr ""
-#: objc/objc-act.c:963
+#: objc/objc-act.c:998
#, c-format
msgid "unexpected type for `id' (%s)"
msgstr ""
-#: objc/objc-act.c:968
+#: objc/objc-act.c:1003
msgid "undefined type `id', please import <objc/objc.h>"
msgstr ""
-#: objc/objc-act.c:1019
+#: objc/objc-act.c:1052
#, c-format
msgid "protocol `%s' has circular dependency"
msgstr ""
-#: objc/objc-act.c:1041 objc/objc-act.c:5301
+#: objc/objc-act.c:1074 objc/objc-act.c:5982
#, c-format
msgid "cannot find protocol declaration for `%s'"
msgstr ""
-#: objc/objc-act.c:1289 objc/objc-act.c:5877 objc/objc-act.c:6195
-#: objc/objc-act.c:6244 objc/objc-act.c:6280 objc-parse.y:1799
+#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6513
+#: objc/objc-act.c:6822 objc/objc-act.c:6875 objc/objc-act.c:6900
#, c-format
msgid "cannot find interface declaration for `%s'"
msgstr ""
-#: objc/objc-act.c:1328
+#: objc/objc-act.c:1423
+#, c-format
+msgid "interface `%s' does not have valid constant string layout"
+msgstr "die Schnittstelle »%s« hat nicht die Form einer konstanten Zeichenkette"
+
+#: objc/objc-act.c:1439
#, c-format
msgid "cannot find reference tag for class `%s'"
msgstr ""
-#: objc/objc-act.c:2050
+#: objc/objc-act.c:2179
#, c-format
msgid "creating selector for non existant method %s"
msgstr ""
-#: objc/objc-act.c:2364
+#: objc/objc-act.c:2389
+#, c-format
+msgid "`%s' is not an Objective-C class name or alias"
+msgstr "»%s« ist kein Klassenname oder Alias in Objective-C"
+
+#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6769
+#: objc/objc-act.c:7059 objc/objc-act.c:7088
+msgid "Objective-C declarations may only appear in global scope"
+msgstr ""
+
+#: objc/objc-act.c:2505
#, c-format
msgid "cannot find class `%s'"
msgstr ""
-#: objc/objc-act.c:2366
+#: objc/objc-act.c:2507
#, c-format
msgid "class `%s' already exists"
msgstr ""
+#: objc/objc-act.c:2532 objc/objc-act.c:6791
+#, c-format
+msgid "`%s' redeclared as different kind of symbol"
+msgstr "»%s« redeklariert als andere Symbolart"
+
#. fatal did not work with 2 args...should fix
-#: objc/objc-act.c:2473
+#: objc/objc-act.c:2680
#, c-format
msgid "cannot find interface declaration for `%s', superclass of `%s'"
msgstr ""
-#: objc/objc-act.c:2480
+#: objc/objc-act.c:2687
#, c-format
msgid "circular inheritance in interface declaration for `%s'"
msgstr ""
-#: objc/objc-act.c:3566 objc/objc-act.c:3583
-msgid "inconsistent instance variable specification"
+#: objc/objc-act.c:2780 objc/objc-act.c:2924 objc/objc-act.c:3024
+#: objc/objc-act.c:3200 objc/objc-act.c:3240
+msgid "Use `-fobjc-exceptions' to enable Objective-C exception syntax"
msgstr ""
-#: objc/objc-act.c:4580
-msgid "can not use an object as parameter to a method\n"
+#: objc/objc-act.c:2787
+msgid "`@throw;' (rethrow) used outside of a `@catch' block"
msgstr ""
-#: objc/objc-act.c:4780
-#, c-format
-msgid "multiple declarations for method `%s'"
+#: objc/objc-act.c:3027
+msgid "`@catch' parameter is not a known Objective-C class type"
msgstr ""
-#: objc/objc-act.c:4946
-#, c-format
-msgid "invalid receiver type `%s'"
+#: objc/objc-act.c:3036
+msgid "Exception already handled by preceding `@catch(id)'"
msgstr ""
-#: objc/objc-act.c:4977 objc/objc-act.c:5003 objc/objc-act.c:5051
+#: objc/objc-act.c:3041
#, c-format
-msgid "`%s' does not respond to `%s'"
+msgid "Exception of type `%s *' already handled by `@catch (%s *)'"
msgstr ""
-#: objc/objc-act.c:4983 objc/objc-act.c:7318
-#, c-format
-msgid "no super class declared in interface for `%s'"
+#: objc/objc-act.c:3206
+msgid "`@try' without `@catch' or `@finally'"
msgstr ""
-#: objc/objc-act.c:5081
-msgid "cannot find class (factory) method"
+#: objc/objc-act.c:3647
+msgid "%Jtype '%D' does not have a known size"
msgstr ""
-#: objc/objc-act.c:5082 objc/objc-act.c:5126
-#, c-format
-msgid "return type for `%s' defaults to id"
+#: objc/objc-act.c:4256
+msgid "%J%s `%s'"
+msgstr "%J%s: »%s«"
+
+#: objc/objc-act.c:4281 objc/objc-act.c:4300
+msgid "inconsistent instance variable specification"
msgstr ""
-#: objc/objc-act.c:5099
+#: objc/objc-act.c:5303
+msgid "can not use an object as parameter to a method\n"
+msgstr ""
+
+#: objc/objc-act.c:5504
#, c-format
-msgid "method `%s' not implemented by protocol"
+msgid "multiple %s named `%c%s' found"
+msgstr "mehrere %s namens »%c%s« gefunden"
+
+#: objc/objc-act.c:5721
+#, c-format
+msgid "no super class declared in @interface for `%s'"
+msgstr "keine Superklasse im @interface für »%s« deklariert"
+
+#: objc/objc-act.c:5809
+#, c-format
+msgid "invalid receiver type `%s'"
msgstr ""
-#: objc/objc-act.c:5108
-msgid "return type defaults to id"
+#: objc/objc-act.c:5820
+#, c-format
+msgid "`%s' may not respond to `%c%s'"
+msgstr "»%s« antwortet möglicherweise nicht auf »%c%s«"
+
+#: objc/objc-act.c:5825
+#, c-format
+msgid "`%c%s' not implemented by protocol(s)"
+msgstr "»%c%s« nicht von Protokoll(en) implementiert"
+
+#: objc/objc-act.c:5830
+msgid "(Messages without a matching method signature"
msgstr ""
-#: objc/objc-act.c:5125
-msgid "cannot find method"
+#: objc/objc-act.c:5831
+msgid "will be assumed to return `id' and accept"
msgstr ""
-#: objc/objc-act.c:5399
+#: objc/objc-act.c:5832
+msgid "`...' as arguments.)"
+msgstr "»...« als Argumente.)"
+
+#: objc/objc-act.c:6079
#, c-format
msgid "undeclared selector `%s'"
msgstr ""
@@ -20450,310 +19157,2653 @@ msgstr ""
#. to an instance variable. It's better to catch the cases
#. where this is done unknowingly than to support the above
#. paradigm.
-#: objc/objc-act.c:5443
+#: objc/objc-act.c:6121
#, c-format
msgid "instance variable `%s' accessed in class method"
msgstr ""
-#: objc/objc-act.c:5678
+#: objc/objc-act.c:6327
#, c-format
-msgid "duplicate definition of class method `%s'"
-msgstr ""
+msgid "duplicate declaration of method `%c%s'"
+msgstr "doppelte Deklaration der Methode »%c%s«"
-#: objc/objc-act.c:5684
+#: objc/objc-act.c:6368
#, c-format
-msgid "duplicate declaration of class method `%s'"
+msgid "duplicate interface declaration for category `%s(%s)'"
msgstr ""
-#: objc/objc-act.c:5720
+#: objc/objc-act.c:6398
#, c-format
-msgid "duplicate definition of instance method `%s'"
-msgstr ""
+msgid "illegal reference type specified for instance variable `%s'"
+msgstr "unzulässiger Referenztyp für Instanzvariable »%s« angegeben"
+
+#: objc/objc-act.c:6414
+#, c-format
+msgid "instance variable `%s' has unknown size"
+msgstr "Instanzvariable »%s« hat unbekannte Größe"
+
+#. vtable pointers are Real Bad(tm), since Obj-C cannot initialize them
+#: objc/objc-act.c:6428
+#, c-format
+msgid "type `%s' has virtual member functions"
+msgstr "der Typ »%s« hat virtuelle Elementfunktionen"
+
+#: objc/objc-act.c:6429
+#, c-format
+msgid "illegal aggregate type `%s' specified for instance variable `%s'"
+msgstr "unzulässiger Aggregattyp »%s« für Instanzvariable »%s« angegeben"
-#: objc/objc-act.c:5726
+#: objc/objc-act.c:6437
#, c-format
-msgid "duplicate declaration of instance method `%s'"
+msgid "type `%s' has a user-defined constructor"
msgstr ""
-#: objc/objc-act.c:5766
+#: objc/objc-act.c:6439
#, c-format
-msgid "duplicate interface declaration for category `%s(%s)'"
+msgid "type `%s' has a user-defined destructor"
+msgstr ""
+
+#: objc/objc-act.c:6440
+msgid "C++ constructors and destructors will not be invoked for Objective-C fields"
msgstr ""
-#: objc/objc-act.c:5852
+#: objc/objc-act.c:6490
#, c-format
msgid "instance variable `%s' is declared private"
msgstr ""
-#: objc/objc-act.c:5899
+#: objc/objc-act.c:6539
+#, c-format
+msgid "instance variable `%s' is %s; this will be a hard error in the future"
+msgstr ""
+
+#: objc/objc-act.c:6546
#, c-format
msgid "instance variable `%s' is declared %s"
msgstr ""
-#: objc/objc-act.c:5909
+#: objc/objc-act.c:6556
msgid "static access to object of type `id'"
msgstr ""
-#: objc/objc-act.c:5934 objc/objc-act.c:6027
+#: objc/objc-act.c:6578 objc/objc-act.c:6666
#, c-format
msgid "incomplete implementation of class `%s'"
msgstr ""
-#: objc/objc-act.c:5938 objc/objc-act.c:6032
+#: objc/objc-act.c:6582 objc/objc-act.c:6671
#, c-format
msgid "incomplete implementation of category `%s'"
msgstr ""
-#: objc/objc-act.c:5943 objc/objc-act.c:6037
+#: objc/objc-act.c:6587 objc/objc-act.c:6676
#, c-format
msgid "method definition for `%c%s' not found"
msgstr ""
-#: objc/objc-act.c:6081
+#: objc/objc-act.c:6717
#, c-format
msgid "%s `%s' does not fully implement the `%s' protocol"
msgstr "%s »%s« implementiert das »%s«-Protokoll nicht vollständig"
-#: objc/objc-act.c:6139 objc/objc-act.c:8249
+#: objc/objc-act.c:6775 objc/objc-act.c:8803
msgid "`@end' missing in implementation context"
msgstr ""
-#: objc/objc-act.c:6167
+#: objc/objc-act.c:6805
#, c-format
msgid "reimplementation of class `%s'"
msgstr ""
-#: objc/objc-act.c:6209
+#: objc/objc-act.c:6836
#, c-format
msgid "conflicting super class name `%s'"
msgstr ""
-#: objc/objc-act.c:6224
+#: objc/objc-act.c:6838
+#, c-format
+msgid "previous declaration of `%s'"
+msgstr "vorherige Deklaration von »%s«"
+
+#: objc/objc-act.c:6852 objc/objc-act.c:6854
#, c-format
msgid "duplicate interface declaration for class `%s'"
msgstr ""
-#: objc/objc-act.c:6506
+#: objc/objc-act.c:7121
#, c-format
msgid "duplicate declaration for protocol `%s'"
msgstr ""
-#: objc/objc-act.c:7363
-msgid "[super ...] must appear in a method context"
+#. Add a readable method name to the warning.
+#: objc/objc-act.c:7613
+msgid "%J%s `%c%s'"
msgstr ""
-#: objc/objc-act.c:8354 objc/objc-act.c:8370
+#: objc/objc-act.c:7908
#, c-format
-msgid "potential selector conflict for method `%s'"
+msgid "no super class declared in interface for `%s'"
msgstr ""
-#: objc-parse.y:2655
+#: objc/objc-act.c:7956
+msgid "[super ...] must appear in a method context"
+msgstr ""
+
+#: objc/objc-parse.y:2700
msgid "`@end' must appear in an implementation context"
msgstr ""
-#: objc-parse.y:2931
+#: objc/objc-parse.y:2913
msgid "method definition not in class context"
msgstr ""
-#: objc/lang-options.h:27
-msgid "Dump decls to a .decl file"
+#: options.c:24
+msgid "Display this information"
+msgstr "Diese Informationen anzeigen"
+
+#: options.c:30
+msgid "--param <param>=<value>\tSet paramter <param> to value. See below for a complete list of parameters"
+msgstr ""
+
+#: options.c:39
+msgid "-A<question>=<answer>\tAssert the <answer> to <question>. Putting '-' before <question> disables the <answer> to <question>"
+msgstr ""
+
+#: options.c:42
+msgid "Do not discard comments"
+msgstr "Kommentare nicht verwerfen"
+
+#: options.c:45
+msgid "Do not discard comments in macro expansions"
+msgstr ""
+
+#: options.c:48
+msgid "-D<macro>[=<val>]\tDefine a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1"
+msgstr ""
+
+#: options.c:54
+msgid "-G<number>\tPut global and static data smaller than <number> bytes into a special section (on some targets)"
+msgstr ""
+
+#: options.c:57
+msgid "Print the name of header files as they are used"
+msgstr ""
+
+#: options.c:66
+msgid "Generate make dependencies and compile"
+msgstr ""
+
+#: options.c:75
+msgid "Treat missing header files as generated files"
+msgstr ""
+
+#: options.c:81
+msgid "Like -MD but ignore system header files"
+msgstr ""
+
+#: options.c:90
+msgid "-MQ <target>\tAdd a MAKE-quoted target"
+msgstr ""
+
+#: options.c:96
+msgid "-O<number>\tSet optimization level to <number>"
+msgstr ""
+
+#: options.c:99
+msgid "Optimize for space rather than speed"
+msgstr ""
+
+#: options.c:102
+msgid "Do not generate #line directives"
+msgstr ""
+
+#: options.c:105
+msgid "-U<macro>\tUndefine <macro>"
+msgstr ""
+
+#: options.c:108
+msgid "This switch is deprecated; use -Wextra instead"
+msgstr ""
+
+#: options.c:114
+msgid "Warn about returning structures, unions or arrays"
+msgstr ""
+
+#: options.c:120
+msgid "Warn about casting functions to incompatible types"
+msgstr ""
+
+#: options.c:123
+msgid "Warn about pointer casts which increase alignment"
+msgstr ""
+
+#: options.c:126
+msgid "Warn about casts which discard qualifiers"
+msgstr ""
+
+#: options.c:129
+msgid "Warn about subscripts whose type is \"char\""
+msgstr "Vor Indizes mit Typ \"char\" warnen"
+
+#: options.c:138
+msgid "Warn about possibly confusing type conversions"
+msgstr ""
+
+#: options.c:141
+msgid "Warn when all constructors and destructors are private"
+msgstr ""
+
+#: options.c:144
+msgid "Warn when a declaration is found after a statement"
+msgstr ""
+
+#: options.c:147
+msgid "Warn if deprecated class, method, or field is used"
+msgstr ""
+
+#: options.c:150
+msgid "Warn about uses of __attribute__((deprecated)) declarations"
+msgstr ""
+
+#: options.c:153
+msgid "Warn when an optimization pass is disabled"
+msgstr ""
+
+#: options.c:156
+msgid "Warn about compile-time integer division by zero"
+msgstr ""
+
+#: options.c:159
+msgid "Warn about violations of Effective C++ style rules"
+msgstr ""
+
+#: options.c:162
+msgid "Warn about stray tokens after #elif and #endif"
+msgstr ""
+
+#: options.c:165
+msgid "Treat all warnings as errors"
+msgstr ""
+
+#: options.c:168
+msgid "Make implicit function declarations an error"
+msgstr "Fehler bei impliziten Funktionsdeklaration erzeugen"
+
+#: options.c:171
+msgid "Print extra (possibly unwanted) warnings"
+msgstr ""
+
+#: options.c:174
+msgid "Warn if deprecated empty statements are found"
+msgstr ""
+
+#: options.c:177
+msgid "Warn if testing floating point numbers for equality"
+msgstr ""
+
+#: options.c:180
+msgid "Warn about printf/scanf/strftime/strfmon format string anomalies"
+msgstr ""
+
+#: options.c:183
+msgid "Warn if passing too many arguments to a function for its format string"
+msgstr "Bei zu vielen Argumenten für eine Funktion (anhand Formatzeichenkette) warnen"
+
+#: options.c:186
+msgid "Warn about format strings that are not literals"
+msgstr ""
+
+#: options.c:189
+msgid "Warn about possible security problems with format functions"
+msgstr ""
+
+#: options.c:192
+msgid "Warn about strftime formats yielding 2-digit years"
+msgstr ""
+
+#: options.c:201
+msgid "Enable warnings about inter-procedural problems"
+msgstr ""
+
+#: options.c:207
+msgid "Warn about implicit function declarations"
+msgstr ""
+
+#: options.c:210
+msgid "Warn when a declaration does not specify a type"
+msgstr ""
+
+#: options.c:216
+msgid "Warn about variables which are initialized to themselves."
+msgstr ""
+
+#: options.c:219
+msgid "Warn when an inlined function cannot be inlined"
+msgstr ""
+
+#: options.c:222
+msgid "Warn about invalid uses of the \"offsetof\" macro"
+msgstr ""
+
+#: options.c:225
+msgid "Warn about PCH files that are found but not used"
+msgstr ""
+
+#: options.c:228
+msgid "-Wlarger-than-<number>\tWarn if an object is larger than <number> bytes"
+msgstr ""
+
+#: options.c:231
+msgid "Do not warn about using \"long long\" when -pedantic"
+msgstr ""
+
+#: options.c:234
+msgid "Warn about suspicious declarations of \"main\""
+msgstr "Vor verdächtigen Deklarationen von \"main\" warnen"
+
+#: options.c:237
+msgid "Warn about possibly missing braces around initializers"
+msgstr ""
+
+#: options.c:240
+msgid "Warn about global functions without previous declarations"
+msgstr "Vor globalen Funktionen ohne vorherige Deklaration warnen"
+
+#: options.c:243
+msgid "Warn about functions which might be candidates for format attributes"
+msgstr ""
+
+#: options.c:246
+msgid "Warn about functions which might be candidates for __attribute__((noreturn))"
+msgstr "Vor Funktionen, die Kandidaten für __attribute__((noreturn)) sind, warnen"
+
+#: options.c:249
+msgid "Warn about global functions without prototypes"
+msgstr ""
+
+#: options.c:252
+msgid "Warn about use of multi-character character constants"
+msgstr "Bei Verwendung von Zeichenkonstanten mit mehreren Zeichen warnen"
+
+#: options.c:255
+msgid "Warn about \"extern\" declarations not at file scope"
+msgstr "Vor \"extern\"-Deklarationen außerhalb des Dateisichtbarkeitsbereiches warnen"
+
+#: options.c:258
+msgid "Warn when non-templatized friend functions are declared within a template"
+msgstr ""
+
+#: options.c:261
+msgid "Warn about non-virtual destructors"
+msgstr ""
+
+#: options.c:267
+msgid "Warn if a C-style cast is used in a program"
+msgstr ""
+
+#: options.c:270
+msgid "Warn if an old-style parameter definition is used"
+msgstr ""
+
+#: options.c:273
+msgid "Warn if .class files are out of date"
+msgstr ""
+
+#: options.c:276
+msgid "Warn about overloaded virtual function names"
+msgstr ""
+
+#: options.c:279
+msgid "Warn when the packed attribute has no effect on struct layout"
+msgstr ""
+
+#: options.c:282
+msgid "Warn when padding is required to align structure members"
+msgstr ""
+
+#: options.c:285
+msgid "Warn about possibly missing parentheses"
+msgstr ""
+
+#: options.c:288
+msgid "Warn when converting the type of pointers to member functions"
+msgstr ""
+
+#: options.c:291
+msgid "Warn about function pointer arithmetic"
+msgstr ""
+
+#: options.c:294
+msgid "Warn if inherited methods are unimplemented"
+msgstr ""
+
+#: options.c:297
+msgid "Warn about multiple declarations of the same object"
+msgstr ""
+
+#: options.c:300
+msgid "Warn if modifiers are specified when not necessary"
+msgstr ""
+
+#: options.c:303
+msgid "Warn when the compiler reorders code"
+msgstr ""
+
+#: options.c:306
+msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)"
+msgstr ""
+
+#: options.c:309
+msgid "Warn if a selector has multiple methods"
+msgstr ""
+
+#: options.c:312
+msgid "Warn about possible violations of sequence point rules"
+msgstr ""
+
+#: options.c:315
+msgid "Warn when one local variable shadows another"
+msgstr ""
+
+#: options.c:318
+msgid "Warn about signed-unsigned comparisons"
+msgstr ""
+
+#: options.c:321
+msgid "Warn when overload promotes from unsigned to signed"
+msgstr ""
+
+#: options.c:324
+msgid "Warn about code which might break strict aliasing rules"
+msgstr "Vor Code warnen, der strict-aliasing-Regeln verletzen könnte"
+
+#: options.c:327
+msgid "Warn about unprototyped function declarations"
+msgstr "Vor Funktionsdeklarationen ohne Prototyp warnen"
+
+#: options.c:330
+msgid "Warn about constructs with surprising meanings"
+msgstr ""
+
+#: options.c:333
+msgid "Warn about enumerated switches, with no default, missing a case"
+msgstr ""
+
+#: options.c:336
+msgid "Warn about enumerated switches missing a \"default:\" statement"
+msgstr ""
+
+#: options.c:339
+msgid "Warn about all enumerated switches missing a specific case"
+msgstr ""
+
+#: options.c:342
+msgid "Warn when synthesis behavior differs from Cfront"
+msgstr ""
+
+#: options.c:345
+msgid "Do not suppress warnings from system headers"
+msgstr ""
+
+#: options.c:348
+msgid "Warn about features not present in traditional C"
+msgstr "Vor Sprachmerkmalen, die in traditionellem C nicht verfügbar sind, warnen"
+
+#: options.c:357
+msgid "Warn if an undefined macro is used in an #if directive"
+msgstr ""
+
+#: options.c:360
+msgid "Warn about uninitialized automatic variables"
+msgstr ""
+
+#: options.c:363
+msgid "Warn about unrecognized pragmas"
+msgstr ""
+
+#: options.c:366
+msgid "Warn about code that will never be executed"
+msgstr ""
+
+#: options.c:369
+msgid "Enable all -Wunused- warnings"
+msgstr ""
+
+#: options.c:372
+msgid "Warn when a function is unused"
+msgstr ""
+
+#: options.c:375
+msgid "Warn when a label is unused"
+msgstr ""
+
+#: options.c:378
+msgid "Warn about macros defined in the main file that are not used"
+msgstr ""
+
+#: options.c:381
+msgid "Warn when a function parameter is unused"
+msgstr ""
+
+#: options.c:384
+msgid "Warn when an expression value is unused"
+msgstr ""
+
+#: options.c:387
+msgid "Warn when a variable is unused"
+msgstr ""
+
+#: options.c:390
+msgid "Give strings the type \"array of char\""
+msgstr ""
+
+#: options.c:393
+msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead"
+msgstr ""
+
+#: options.c:396
+msgid "-aux-info <file>\tEmit declaration information into <file>"
+msgstr ""
+
+#: options.c:408
+msgid "-d<letters>\tEnable dumps from specific passes of the compiler"
+msgstr ""
+
+#: options.c:411
+msgid "-dumpbase <file>\tSet the file basename to be used for dumps"
+msgstr ""
+
+#: options.c:414
+msgid "--CLASSPATH\tDeprecated; use --classpath instead"
+msgstr ""
+
+#: options.c:429
+msgid "Enforce class member access control semantics"
+msgstr ""
+
+#: options.c:432
+msgid "Align the start of functions"
+msgstr ""
+
+#: options.c:438
+msgid "Align labels which are only reached by jumping"
+msgstr ""
+
+#: options.c:444
+msgid "Align all labels"
+msgstr ""
+
+#: options.c:450
+msgid "Align the start of loops"
+msgstr ""
+
+#: options.c:459
+msgid "Change when template instances are emitted"
+msgstr ""
+
+#: options.c:462
+msgid "Specify that arguments may alias each other and globals"
+msgstr ""
+
+#: options.c:465
+msgid "Assume arguments may alias globals but not each other"
+msgstr ""
+
+#: options.c:468
+msgid "Assume arguments alias neither each other nor globals"
+msgstr ""
+
+#: options.c:471
+msgid "Recognize the \"asm\" keyword"
+msgstr ""
+
+#: options.c:483
+msgid "Generate unwind tables that are exact at each instruction boundary"
+msgstr ""
+
+#: options.c:486
+msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements"
+msgstr ""
+
+#: options.c:489
+msgid "Backslashes in character and hollerith constants are special (not C-style)"
+msgstr ""
+
+#: options.c:492
+msgid "Delete libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:495
+msgid "Disable libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:498
+msgid "Enable libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:501
+msgid "Hide libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:504
+msgid "--bootclasspath=<path>\tReplace system path"
+msgstr ""
+
+#: options.c:507
+msgid "Generate code to check bounds before indexing arrays"
+msgstr ""
+
+#: options.c:510
+msgid "Replace add, compare, branch with branch on count register"
+msgstr ""
+
+#: options.c:513
+msgid "Use profiling information for branch probabilities"
+msgstr ""
+
+#: options.c:516
+msgid "Perform branch target load optimization before prologue / epilogue threading"
+msgstr ""
+
+#: options.c:519
+msgid "Perform branch target load optimization after prologue / epilogue threading"
+msgstr ""
+
+#: options.c:522
+msgid "Recognize built-in functions"
+msgstr "Eingebaute Funktionen erkennen"
+
+#: options.c:528
+msgid "-fcall-saved-<register>\tMark <register> as being preserved across functions"
+msgstr ""
+
+#: options.c:531
+msgid "-fcall-used-<register>\tMark <register> as being corrupted by function calls"
+msgstr ""
+
+#: options.c:534
+msgid "Save registers around function calls"
+msgstr ""
+
+#: options.c:537
+msgid "Program written in strict mixed-case"
+msgstr ""
+
+#: options.c:540
+msgid "Compile as if program written in lowercase"
+msgstr ""
+
+#: options.c:543
+msgid "Preserve case used in program"
+msgstr "Im Programm verwendete Groß-/Kleinschreibung beibehalten"
+
+#: options.c:546
+msgid "Program written in lowercase"
+msgstr ""
+
+#: options.c:549
+msgid "Program written in uppercase"
+msgstr ""
+
+#: options.c:552
+msgid "Compile as if program written in uppercase"
+msgstr ""
+
+#: options.c:555
+msgid "Check the return value of new"
+msgstr ""
+
+#: options.c:561
+msgid "--classpath=<path>\tSet class path"
+msgstr ""
+
+#: options.c:564
+msgid "Do not put uninitialized globals in the common section"
+msgstr ""
+
+#: options.c:570
+msgid "Allow the arguments of the '?' operator to have different types"
+msgstr ""
+
+#: options.c:573
+msgid "Reduce the size of object files"
+msgstr ""
+
+#: options.c:576
+msgid "Make string literals \"const char[]\" not \"char[]\""
+msgstr ""
+
+#: options.c:579
+msgid "-fconst-string-class=<name>\tUse class <name> for constant strings"
+msgstr ""
+
+#: options.c:582
+msgid "Perform a register copy-propagation optimization pass"
+msgstr ""
+
+#: options.c:585
+msgid "Perform cross-jumping optimization"
+msgstr ""
+
+#: options.c:588
+msgid "When running CSE, follow jumps to their targets"
+msgstr ""
+
+#: options.c:591
+msgid "When running CSE, follow conditional jumps"
+msgstr ""
+
+#: options.c:594
+msgid "Place data items into their own section"
+msgstr ""
+
+#: options.c:597
+msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
+msgstr ""
+
+#: options.c:600
+msgid "Inline member functions by default"
+msgstr "Standardmäßig »inline«-Elementfunktionen"
+
+#: options.c:603
+msgid "Defer popping functions args from stack until later"
+msgstr ""
+
+#: options.c:606
+msgid "Attempt to fill delay slots of branch instructions"
+msgstr ""
+
+#: options.c:609
+msgid "Delete useless null pointer checks"
+msgstr ""
+
+#: options.c:612
+msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics"
+msgstr ""
+
+#: options.c:615
+msgid "Allow '$' in symbol names"
+msgstr ""
+
+#: options.c:618
+msgid "Permit '$' as an identifier character"
+msgstr "'$' als Bezeichnerzeichen zulassen"
+
+#: options.c:624
+msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
+msgstr ""
+
+#: options.c:630
+msgid "Perform DWARF2 duplicate elimination"
+msgstr ""
+
+#: options.c:633 options.c:636
+msgid "Perform unused type elimination in debug info"
+msgstr ""
+
+#: options.c:645
+msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
+msgstr ""
+
+#: options.c:648
+msgid "--encoding=<encoding>\tChoose input encoding (defaults from your locale)"
+msgstr ""
+
+#: options.c:651
+msgid "Generate code to check exception specifications"
+msgstr "Code zur Überprüfung von Exception-Spezifikationen erzeugen"
+
+#: options.c:657
+msgid "Enable exception handling"
+msgstr ""
+
+#: options.c:660
+msgid "-fexec-charset=<cset>\tConvert all strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:663
+msgid "Perform a number of minor, expensive optimizations"
+msgstr ""
+
+#: options.c:672
+msgid "f2c-compatible code can be generated"
+msgstr ""
+
+#: options.c:675
+msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:678
+msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:681
+msgid "Enable non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:684
+msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:687
+msgid "Unsupported; generate libf2c-calling code"
+msgstr ""
+
+#: options.c:690
+msgid "Program is written in typical FORTRAN 66 dialect"
+msgstr ""
+
+#: options.c:693
+msgid "Program is written in typical Unix-f77 dialect"
+msgstr ""
+
+#: options.c:696
+msgid "Program is written in Fortran-90-ish dialect"
+msgstr ""
+
+#: options.c:699
+msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:702
+msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:705
+msgid "Enable non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:708
+msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:720
+msgid "Assume no NaNs or infinities are generated"
+msgstr ""
+
+#: options.c:723
+msgid "-ffixed-<register>\tMark <register> as being unavailable to the compiler"
+msgstr ""
+
+#: options.c:729
+msgid "ffixed-line-length-<number>\tSet the maximum line length to <number>"
+msgstr ""
+
+#: options.c:732
+msgid "Unsupported; affects code generation of arrays"
+msgstr ""
+
+#: options.c:735
+msgid "Do not store floats in registers"
+msgstr ""
+
+#: options.c:738
+msgid "Scope of for-init-statement variables is local to the loop"
+msgstr ""
+
+#: options.c:741
+msgid "Copy memory address constants into registers before use"
+msgstr ""
+
+#: options.c:744
+msgid "Always check for non gcj generated classes archives"
+msgstr ""
+
+#: options.c:747
+msgid "Copy memory operands into registers before use"
+msgstr ""
+
+#: options.c:750
+msgid "Generate code to check subscript and substring bounds"
+msgstr ""
+
+#: options.c:753
+msgid "Program is written in Fortran-90-ish free form"
+msgstr ""
+
+#: options.c:756
+msgid "Do not assume that standard C libraries and \"main\" exist"
+msgstr ""
+
+#: options.c:759
+msgid "Allow function addresses to be held in registers"
+msgstr ""
+
+#: options.c:762
+msgid "Place each function into its own section"
+msgstr "Jede Funktion in ihren eigenen Abschnitt platzieren"
+
+#: options.c:765
+msgid "Perform global common subexpression elimination"
+msgstr ""
+
+#: options.c:768
+msgid "Perform redundant load after store elimination in global common subexpression elimination"
+msgstr ""
+
+#: options.c:771
+msgid "Perform enhanced load motion during global common subexpression elimination"
+msgstr ""
+
+#: options.c:774
+msgid "Perform store motion after global common subexpression elimination"
+msgstr ""
+
+#: options.c:777
+msgid "Enable fatal diagnostics about inter-procedural problems"
+msgstr ""
+
+#: options.c:780
+msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
+msgstr ""
+
+#: options.c:783
+msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:786
+msgid "Enable non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:789
+msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:792
+msgid "Recognize GNU-defined keywords"
msgstr ""
-#: objc/lang-options.h:29
+#: options.c:795
msgid "Generate code for GNU runtime environment"
msgstr "Code für die GNU-Laufzeitumgebung erzeugen"
-#: objc/lang-options.h:32
-msgid "Generate code for NeXT runtime environment"
+#: options.c:798
+msgid "Enable guessing of branch probabilities"
msgstr ""
-#: objc/lang-options.h:35
-msgid "Warn if a selector has multiple methods"
+#: options.c:813
+msgid "Assume normal C execution environment"
msgstr ""
-#: objc/lang-options.h:39
-msgid "Do not warn if inherited methods are unimplemented"
+#: options.c:816
+msgid "Enable support for huge objects"
msgstr ""
-#: objc/lang-options.h:41
-msgid "Generate C header of platform specific features"
-msgstr "C-Header mit Plattform-spezifischen Merkmalen erzeugen"
+#: options.c:819
+msgid "Process #ident directives"
+msgstr ""
-#: objc/lang-options.h:43
-msgid "Specify the name of the class for constant strings"
+#: options.c:822
+msgid "Perform conversion of conditional jumps to branchless equivalents"
msgstr ""
-#. This is the contribution to the `lang_options' array in gcc.c for
-#. treelang.
-#: treelang/lang-options.h:26
-msgid "(debug) trace parsing process"
+#: options.c:825
+msgid "Perform conversion of conditional jumps to conditional execution"
msgstr ""
-#: treelang/lang-options.h:27
-msgid "(debug) trace lexical analysis"
+#: options.c:828
+msgid "Export functions even if they can be inlined"
msgstr ""
-#: config/rs6000/darwin.h:62
-msgid " conflicting code gen style switches are used"
+#: options.c:831
+msgid "Emit implicit instantiations of inline templates"
msgstr ""
-#: config/i386/mingw32.h:85 config/i386/cygwin.h:171
-msgid "shared and mdll are not compatible"
+#: options.c:834
+msgid "Emit implicit instantiations of templates"
msgstr ""
-#: java/lang-specs.h:33
-msgid "-fjni and -femit-class-files are incompatible"
+#: options.c:837
+msgid "Use offset tables for virtual method calls"
msgstr ""
-#: java/lang-specs.h:34
-msgid "-fjni and -femit-class-file are incompatible"
+#: options.c:840
+msgid "Do not generate .size directives"
msgstr ""
-#: java/lang-specs.h:35 java/lang-specs.h:36
-msgid "-femit-class-file should used along with -fsyntax-only"
+#: options.c:843
+msgid "Initialize local vars and arrays to zero"
msgstr ""
-#: ada/lang-specs.h:38 java/jvspec.c:77 gcc.c:716
-msgid "-pg and -fomit-frame-pointer are incompatible"
+#: options.c:846
+msgid "Pay attention to the \"inline\" keyword"
msgstr ""
-#: ada/lang-specs.h:41
-msgid "-c or -S required for Ada"
+#: options.c:855
+msgid "-finline-limit=<number>\tLimit the size of inlined functions to <number>"
msgstr ""
-#: config/darwin.h:212
-msgid "-current_version only allowed with -dynamiclib"
+#: options.c:858
+msgid "-finput-charset=<cset> Specify the default character set for source files."
msgstr ""
-#: config/darwin.h:215
-msgid "-install_name only allowed with -dynamiclib"
+#: options.c:861
+msgid "Instrument function entry and exit with profiling calls"
msgstr ""
-#: config/darwin.h:220
-msgid "-bundle not allowed with -dynamiclib"
+#: options.c:864
+msgid "Intrinsics letters in arbitrary cases"
msgstr ""
-#: config/darwin.h:221
-msgid "-bundle_loader not allowed with -dynamiclib"
+#: options.c:867
+msgid "Intrinsics spelled as e.g. SqRt"
msgstr ""
-#: config/darwin.h:222
-msgid "-client_name not allowed with -dynamiclib"
+#: options.c:870
+msgid "Intrinsics in lowercase"
msgstr ""
-#: config/darwin.h:225
-msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
+#: options.c:873
+msgid "Intrinsics in uppercase"
msgstr ""
-#: config/darwin.h:226
-msgid "-force_flat_namespace not allowed with -dynamiclib"
+#: options.c:876
+msgid "Assume native functions are implemented using JNI"
msgstr ""
-#: config/darwin.h:228
-msgid "-keep_private_externs not allowed with -dynamiclib"
-msgstr "-keep_private_externs ist mit -dynamiclib nicht erlaubt"
+#: options.c:879
+msgid "Generate code for functions even if they are fully inlined"
+msgstr ""
-#: config/darwin.h:229
-msgid "-private_bundle not allowed with -dynamiclib"
-msgstr "-private_bundle ist mit -dynamiclib nicht erlaubt"
+#: options.c:882
+msgid "Emit static const variables even if they are not used"
+msgstr ""
-#: config/sparc/freebsd.h:34 config/ia64/freebsd.h:23
-#: config/alpha/freebsd.h:44 config/rs6000/sysv4.h:1107
-#: config/i386/freebsd-aout.h:213
-msgid "`-p' not supported; use `-pg' and gprof(1)"
-msgstr "»-p« wird nicht unterstützt; verwenden Sie »-pg« und gprof(1)"
+#: options.c:888
+msgid "Give external symbols a leading underscore"
+msgstr ""
-#: config/sparc/linux64.h:197 config/sparc/linux64.h:208
-#: config/sparc/netbsd-elf.h:163 config/sparc/netbsd-elf.h:182
-#: config/sparc/sol2-bi.h:168 config/sparc/sol2-bi.h:178
-msgid "may not use both -m32 and -m64"
-msgstr "-m32 und -m64 können nicht zusammen angegeben werden"
+#: options.c:891
+msgid "Perform loop optimizations"
+msgstr ""
+
+#: options.c:894
+msgid "Language keyword letters in arbitrary cases"
+msgstr ""
+
+#: options.c:897
+msgid "Language keywords spelled as e.g. IOStat"
+msgstr ""
+
+#: options.c:900
+msgid "Language keywords in lowercase"
+msgstr ""
+
+#: options.c:903
+msgid "Language keywords in uppercase"
+msgstr ""
+
+#: options.c:906
+msgid "Set errno after built-in math functions"
+msgstr ""
+
+#: options.c:909
+msgid "Report on permanent memory allocation"
+msgstr ""
+
+#: options.c:912
+msgid "Attempt to merge identical constants and constant variables"
+msgstr ""
+
+#: options.c:915
+msgid "Attempt to merge identical constants across compilation units"
+msgstr ""
+
+#: options.c:918
+msgid "-fmessage-length=<number>\tLimit diagnostics to <number> characters per line. 0 suppresses line-wrapping"
+msgstr ""
+
+#: options.c:921
+msgid "Delete MIL-STD 1753 intrinsics"
+msgstr ""
-#: config/arm/arm.h:178
+#: options.c:924
+msgid "Disable MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:927
+msgid "Enable MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:930
+msgid "Hide MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:933
+msgid "Force all loop invariant computations out of loops"
+msgstr ""
+
+#: options.c:936
+msgid "Don't warn about uses of Microsoft extensions"
+msgstr ""
+
+#: options.c:945
+msgid "Use graph-coloring register allocation"
+msgstr ""
+
+#: options.c:948
+msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
+msgstr "Code für die NeXT (Apple Mac OS X) Laufzeitumgebung erzeugen"
+
+#: options.c:951
+msgid "Assume that receivers of Objective-C messages may be nil"
+msgstr ""
+
+#: options.c:954
+msgid "Support synchronous non-call exceptions"
+msgstr ""
+
+#: options.c:963
+msgid "Enable Objective-C exception and synchronization syntax"
+msgstr ""
+
+#: options.c:966 options.c:1290
+msgid "Perform loop unrolling for all loops"
+msgstr ""
+
+#: options.c:969 options.c:1293
+msgid "Perform loop unrolling when iteration count is known"
+msgstr ""
+
+#: options.c:972
+msgid "When possible do not generate stack frames"
+msgstr ""
+
+#: options.c:975
+msgid "Take at least one trip through each iterative DO loop"
+msgstr ""
+
+#: options.c:978
+msgid "Recognize C++ kewords like \"compl\" and \"xor\""
+msgstr ""
+
+#: options.c:981
+msgid "Do the full register move optimization pass"
+msgstr ""
+
+#: options.c:984
+msgid "Optimize sibling and tail recursive calls"
+msgstr ""
+
+#: options.c:987
+msgid "Enable optimization of static class initialization code"
+msgstr ""
+
+#: options.c:990
+msgid "Enable optional diagnostics"
+msgstr ""
+
+#: options.c:996
+msgid "Pack structure members together without holes"
+msgstr ""
+
+#: options.c:999
+msgid "Return small aggregates in memory, not registers"
+msgstr ""
+
+#: options.c:1005
+msgid "Warn about use of (only a few for now) Fortran extensions"
+msgstr ""
+
+#: options.c:1008
+msgid "Perform loop peeling"
+msgstr ""
+
+#: options.c:1011
+msgid "Enable machine specific peephole optimizations"
+msgstr ""
+
+#: options.c:1014
+msgid "Enable an RTL peephole pass before sched2"
+msgstr ""
+
+#: options.c:1017
+msgid "Downgrade conformance errors to warnings"
+msgstr ""
+
+#: options.c:1020
+msgid "Generate position-independent code if possible"
+msgstr ""
+
+#: options.c:1023
+msgid "Generate position-independent code for executables if possible"
+msgstr ""
+
+#: options.c:1026
+msgid "Generate prefetch instructions, if available, for arrays in loops"
+msgstr ""
+
+#: options.c:1032
+msgid "Enable basic program profiling code"
+msgstr ""
+
+#: options.c:1035
+msgid "Insert arc-based program profiling code"
+msgstr ""
+
+#: options.c:1038
+msgid "Enable common options for generating profile info for profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1041
+msgid "Enable common options for performing profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1044
+msgid "Insert code to profile values of expressions"
+msgstr ""
+
+#: options.c:1050
+msgid "-frandom-seed=<string>\tMake compile reproducible using <string>"
+msgstr ""
+
+#: options.c:1053
+msgid "Strength reduce all loop general induction variables"
+msgstr ""
+
+#: options.c:1056
+msgid "Return small aggregates in registers"
+msgstr ""
+
+#: options.c:1059
+msgid "Enables a register move optimization"
+msgstr ""
+
+#: options.c:1062
+msgid "Perform a register renaming optimization pass"
+msgstr ""
+
+#: options.c:1065
+msgid "Reorder basic blocks to improve code placement"
+msgstr ""
+
+#: options.c:1068
+msgid "Reorder functions to improve code placement"
+msgstr ""
+
+#: options.c:1071
+msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime"
+msgstr ""
+
+#: options.c:1074
+msgid "Enable automatic template instantiation"
+msgstr ""
+
+#: options.c:1077
+msgid "Add a common subexpression elimination pass after loop optimizations"
+msgstr ""
+
+#: options.c:1080
+msgid "Run the loop optimizer twice"
+msgstr ""
+
+#: options.c:1083
+msgid "Disable optimizations that assume default FP rounding behavior"
+msgstr ""
+
+#: options.c:1086
+msgid "Generate run time type descriptor information"
+msgstr ""
+
+#: options.c:1089
+msgid "Enable scheduling across basic blocks"
+msgstr ""
+
+#: options.c:1092
+msgid "Allow speculative motion of non-loads"
+msgstr ""
+
+#: options.c:1095
+msgid "Allow speculative motion of some loads"
+msgstr ""
+
+#: options.c:1098
+msgid "Allow speculative motion of more loads"
+msgstr ""
+
+#: options.c:1101
+msgid "Allow premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1104
+msgid "Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1107
+msgid "-fsched-stalled-insns-dep=<number> Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1110
+msgid "-fsched-stalled-insns=<number> Set number of queued insns that can be prematurely scheduled"
+msgstr ""
+
+#: options.c:1113
+msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler"
+msgstr ""
+
+#: options.c:1116
+msgid "If scheduling post reload, do superblock scheduling"
+msgstr ""
+
+#: options.c:1119
+msgid "If scheduling post reload, do trace scheduling"
+msgstr ""
+
+#: options.c:1122
+msgid "Reschedule instructions before register allocation"
+msgstr ""
+
+#: options.c:1125
+msgid "Reschedule instructions after register allocation"
+msgstr ""
+
+#: options.c:1128
+msgid "Allow appending a second underscore to externals"
+msgstr ""
+
+#: options.c:1131
+msgid "Mark data as shared rather than private"
+msgstr ""
+
+#: options.c:1134
+msgid "Use the same size for double as for float"
+msgstr ""
+
+#: options.c:1137
+msgid "Use the narrowest integer type possible for enumeration types"
+msgstr ""
+
+#: options.c:1140
+msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\""
+msgstr ""
+
+#: options.c:1146
+msgid "Disable optimizations observable by IEEE signaling NaNs"
+msgstr ""
+
+#: options.c:1149
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed"
+msgstr ""
+
+#: options.c:1152
+msgid "Make \"char\" signed by default"
+msgstr ""
+
+#: options.c:1155
+msgid "Do not print names of program units as they are compiled"
+msgstr ""
+
+#: options.c:1158
+msgid "Convert floating point constants to single precision constants"
+msgstr "Fließkommakonstanten in Konstanten einfacher Genauigkeit konvertieren"
+
+#: options.c:1161
+msgid "Internally convert most source to lowercase"
+msgstr ""
+
+#: options.c:1164
+msgid "Internally preserve source case"
+msgstr ""
+
+#: options.c:1167
+msgid "Internally convert most source to uppercase"
+msgstr ""
+
+#: options.c:1173
+msgid "Insert stack checking code into the program"
+msgstr ""
+
+#: options.c:1179
+msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>"
+msgstr ""
+
+#: options.c:1182
+msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>"
+msgstr ""
+
+#: options.c:1185
+msgid "Display statistics accumulated during compilation"
+msgstr ""
+
+#: options.c:1188
+msgid "Enable assignability checks for stores into object arrays"
+msgstr ""
+
+#: options.c:1191
+msgid "Perform strength reduction optimizations"
+msgstr ""
+
+#: options.c:1194
+msgid "Assume strict aliasing rules apply"
+msgstr ""
+
+#: options.c:1203
+msgid "Symbol names spelled in mixed case"
+msgstr ""
+
+#: options.c:1206
+msgid "Symbol names in lowercase"
+msgstr ""
+
+#: options.c:1209
+msgid "Symbol names in uppercase"
+msgstr ""
+
+#: options.c:1212
+msgid "Check for syntax errors, then stop"
+msgstr ""
+
+#: options.c:1215
+msgid "-ftabstop=<number>\tDistance between tab stops for column reporting"
+msgstr ""
+
+#: options.c:1218
+msgid "-ftemplate-depth-<number>\tSpecify maximum template instantiation depth"
+msgstr ""
+
+#: options.c:1221
+msgid "Create data files needed by \"gcov\""
+msgstr ""
+
+#: options.c:1227
+msgid "Perform jump threading optimizations"
+msgstr ""
+
+#: options.c:1230
+msgid "Report the time taken by each compiler pass"
+msgstr ""
+
+#: options.c:1233
+msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model"
+msgstr ""
+
+#: options.c:1236
+msgid "Perform superblock formation via tail duplication"
+msgstr ""
+
+#: options.c:1239
+msgid "Assume floating-point operations can trap"
+msgstr ""
+
+#: options.c:1242
+msgid "Trap for signed overflow in addition, subtraction and multiplication"
+msgstr ""
+
+#: options.c:1245
+msgid "Make prefix-radix non-decimal constants be typeless"
+msgstr ""
+
+#: options.c:1248
+msgid "Allow all ugly features"
+msgstr ""
+
+#: options.c:1251
+msgid "Hollerith and typeless can be passed as arguments"
+msgstr ""
+
+#: options.c:1254
+msgid "Allow ordinary copying of ASSIGN'ed vars"
+msgstr ""
+
+#: options.c:1257
+msgid "Dummy array dimensioned to (1) is assumed-size"
+msgstr ""
+
+#: options.c:1260
+msgid "Trailing comma in procedure call denotes null argument"
+msgstr ""
+
+#: options.c:1263
+msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
+msgstr ""
+
+#: options.c:1266
+msgid "Initialization via DATA and PARAMETER is not type-compatible"
+msgstr ""
+
+#: options.c:1269
+msgid "Allow INTEGER and LOGICAL interchangeability"
+msgstr ""
+
+#: options.c:1272
+msgid "Append underscores to externals"
+msgstr ""
+
+#: options.c:1275
+msgid "Compile whole compilation unit at a time"
+msgstr ""
+
+#: options.c:1278
+msgid "Delete libU77 intrinsics"
+msgstr ""
+
+#: options.c:1281
+msgid "Disable libU77 intrinsics"
+msgstr ""
+
+#: options.c:1284
+msgid "Enable libU77 intrinsics"
+msgstr ""
+
+#: options.c:1287
+msgid "Hide libU77 intrinsics"
+msgstr ""
+
+#: options.c:1296
+msgid "Allow math optimizations that may violate IEEE or ISO standards"
+msgstr ""
+
+#: options.c:1299
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned"
+msgstr ""
+
+#: options.c:1302
+msgid "Make \"char\" unsigned by default"
+msgstr ""
+
+#: options.c:1305
+msgid "Perform loop unswitching"
+msgstr ""
+
+#: options.c:1308
+msgid "Just generate unwind tables for exception handling"
+msgstr ""
+
+#: options.c:1314
+msgid "Use __cxa_atexit to register destructors"
+msgstr ""
+
+#: options.c:1320
+msgid "Add extra commentary to assembler output"
+msgstr ""
+
+#: options.c:1323
+msgid "Print g77-specific version information and run internal tests"
+msgstr ""
+
+#: options.c:1326
+msgid "Use expression value profiles in optimizations"
+msgstr ""
+
+#: options.c:1329
+msgid "Discard unused virtual functions"
+msgstr ""
+
+#: options.c:1332
+msgid "Implement vtables using thunks"
+msgstr ""
+
+#: options.c:1335
+msgid "Program is written in VXT (Digital-like) FORTRAN"
+msgstr ""
+
+#: options.c:1338
+msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1341
+msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1344
+msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1347
+msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1353
+msgid "Emit common-like symbols as weak symbols"
+msgstr ""
+
+#: options.c:1356
+msgid "Construct webs and split unrelated uses of single variable"
+msgstr ""
+
+#: options.c:1359
+msgid "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:1362
+msgid "Generate a #line directive pointing at the current working directory"
+msgstr ""
+
+#: options.c:1365
+msgid "Assume signed arithmetic overflow wraps around"
+msgstr ""
+
+#: options.c:1368
+msgid "Store strings in writable data section"
+msgstr ""
+
+#: options.c:1371
+msgid "Emit cross referencing information"
+msgstr ""
+
+#: options.c:1374
+msgid "Print internal debugging-related information"
+msgstr "Interne Testinformationen ausgeben"
+
+#: options.c:1377
+msgid "Put zero initialized data in the bss section"
+msgstr ""
+
+#: options.c:1380
+msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode"
+msgstr ""
+
+#: options.c:1383
+msgid "Treat initial values of 0 like non-zero values"
+msgstr ""
+
+#: options.c:1386
+msgid "Generate debug information in default format"
+msgstr ""
+
+#: options.c:1392
+msgid "Generate debug information in COFF format"
+msgstr ""
+
+#: options.c:1395
+msgid "Generate debug information in DWARF v2 format"
+msgstr ""
+
+#: options.c:1398
+msgid "Dump declarations to a .decl file"
+msgstr "Deklaration in .decl-Datei ausgeben"
+
+#: options.c:1401
+msgid "Generate debug information in default extended format"
+msgstr ""
+
+#: options.c:1404
+msgid "-gnat<options>\tSpecify options to GNAT"
+msgstr ""
+
+#: options.c:1407
+msgid "Generate debug information in STABS format"
+msgstr ""
+
+#: options.c:1410
+msgid "Generate debug information in extended STABS format"
+msgstr ""
+
+#: options.c:1413
+msgid "Generate debug information in VMS format"
+msgstr ""
+
+#: options.c:1416
+msgid "Generate debug information in XCOFF format"
+msgstr ""
+
+#: options.c:1419
+msgid "Generate debug information in extended XCOFF format"
+msgstr ""
+
+#: options.c:1422
+msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1425
+msgid "-imacros <file>\tAccept definition of macros in <file>"
+msgstr ""
+
+#: options.c:1428
+msgid "-include <file>\tInclude the contents of <file> before other files"
+msgstr ""
+
+#: options.c:1431
+msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options"
+msgstr ""
+
+#: options.c:1434
+msgid "-isysroot <dir>\tSet <dir> to be the system root directory"
+msgstr ""
+
+#: options.c:1437
+msgid "-isystem <dir>\tAdd <dir> to the start of the system include path"
+msgstr ""
+
+#: options.c:1440
+msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1443
+msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path"
+msgstr ""
+
+#: options.c:1455
+msgid "Do not search standard system include directories (those specified with -isystem will still be used)"
+msgstr ""
+
+#: options.c:1458
+msgid "Do not search standard system include directories for C++"
+msgstr ""
+
+#: options.c:1464
+msgid "-o <file>\tPlace output into <file>"
+msgstr "-o <Datei>\tAusgabe in <Datei> schreiben"
+
+#: options.c:1467
+msgid "Enable function profiling"
+msgstr ""
+
+#: options.c:1470
+msgid "Issue warnings needed for strict compliance to the standard"
+msgstr ""
+
+#: options.c:1473
+msgid "Like -pedantic but issue them as errors"
+msgstr ""
+
+#: options.c:1476
+msgid "Generate C header of platform-specific features"
+msgstr "C-Header mit Plattform-spezifischen Merkmalen erzeugen"
+
+#: options.c:1479
+msgid "Do not display functions compiled or elapsed time"
+msgstr ""
+
+#: options.c:1482
+msgid "Remap file names when including files"
+msgstr "Dateinamen beim Einfügen von Dateien neu abbilden"
+
+#: options.c:1485
+msgid "Conform to the ISO 1998 C++ standard"
+msgstr ""
+
+#: options.c:1488
+msgid "Conform to the ISO 1990 C standard"
+msgstr ""
+
+#: options.c:1491
+msgid "Conform to the ISO 1999 C standard"
+msgstr ""
+
+#: options.c:1494 options.c:1515 options.c:1518
+msgid "Deprecated in favor of -std=c99"
+msgstr ""
+
+#: options.c:1497
+msgid "Conform to the ISO 1998 C++ standard with GNU extensions"
+msgstr ""
+
+#: options.c:1500
+msgid "Conform to the ISO 1990 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1503
+msgid "Conform to the ISO 1999 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1506
+msgid "Deprecated in favor of -std=gnu99"
+msgstr ""
+
+#: options.c:1509
+msgid "Deprecated in favor of -std=c89"
+msgstr ""
+
+#: options.c:1512
+msgid "Conform to the ISO 1990 C standard as amended in 1994"
+msgstr ""
+
+#: options.c:1521
+msgid "Enable traditional preprocessing"
+msgstr ""
+
+#: options.c:1524
+msgid "-trigraphs\tSupport ISO C trigraphs"
+msgstr ""
+
+#: options.c:1527
+msgid "Do not predefine system-specific and GCC-specific macros"
+msgstr ""
+
+#: options.c:1530
+msgid "Enable verbose output"
+msgstr ""
+
+#: options.c:1536
+msgid "Suppress warnings"
+msgstr ""
+
+#: config/rs6000/darwin.h:98
+msgid " conflicting code gen style switches are used"
+msgstr ""
+
+#: gcc.c:743
+msgid "GCC does not support -C or -CC without -E"
+msgstr "GCC unterstützt nicht -C oder -CC ohne -E"
+
+#: gcc.c:767 java/jvspec.c:80 ada/lang-specs.h:34
+msgid "-pg and -fomit-frame-pointer are incompatible"
+msgstr ""
+
+#: gcc.c:915
+msgid "-E required when input is from standard input"
+msgstr ""
+
+#: config/arm/arm.h:197
msgid "-mapcs-26 and -mapcs-32 may not be used together"
msgstr ""
-#: config/arm/arm.h:180
+#: config/arm/arm.h:199
msgid "-msoft-float and -mhard_float may not be used together"
msgstr ""
-#: config/arm/arm.h:182
+#: config/arm/arm.h:201
msgid "-mbig-endian and -mlittle-endian may not be used together"
msgstr ""
-#: config/i386/sco5.h:195
-#, fuzzy
-msgid "-pg not supported on this platform"
-msgstr "Profiling wird mit -mg nicht unterstützt\n"
+#: config/i386/mingw32.h:58 config/i386/cygwin.h:70
+msgid "shared and mdll are not compatible"
+msgstr ""
-#: config/i386/sco5.h:196
-msgid "-p and -pp specified - pick one"
+#: config/mips/mips.h:975
+msgid "-pipe is not supported"
+msgstr "-pipe wird nicht unterstützt"
+
+#: config/mips/mips.h:1130 config/arc/arc.h:63
+msgid "may not use both -EB and -EL"
msgstr ""
-#: config/i386/sco5.h:271
-msgid "-G and -static are mutually exclusive"
+#: config/darwin.h:215
+msgid "-current_version only allowed with -dynamiclib"
msgstr ""
-#: f/lang-specs.h:38 gcc.c:689
-msgid "GNU C does not support -C without using -E"
-msgstr "GNU C unterstützt nicht -C ohne -E"
+#: config/darwin.h:218
+msgid "-install_name only allowed with -dynamiclib"
+msgstr ""
-#: f/lang-specs.h:39 gcc.c:690
-msgid "GNU C does not support -CC without using -E"
-msgstr "GNU C unterstützt nicht -CC ohne -E"
+#: config/darwin.h:223
+msgid "-bundle not allowed with -dynamiclib"
+msgstr ""
-#: config/mcore/mcore.h:60
-msgid "choose either big or little endian, not both"
+#: config/darwin.h:224
+msgid "-bundle_loader not allowed with -dynamiclib"
msgstr ""
-#: config/mcore/mcore.h:63
-msgid "choose either m340 or m210 not both"
+#: config/darwin.h:225
+msgid "-client_name not allowed with -dynamiclib"
msgstr ""
-#: config/mcore/mcore.h:64
-msgid "the m210 does not have little endian support"
+#: config/darwin.h:228
+msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
msgstr ""
-#: config/i386/cygwin.h:115
-msgid "mno-cygwin and mno-win32 are not compatible"
+#: config/darwin.h:229
+msgid "-force_flat_namespace not allowed with -dynamiclib"
msgstr ""
+#: config/darwin.h:231
+msgid "-keep_private_externs not allowed with -dynamiclib"
+msgstr "-keep_private_externs ist mit -dynamiclib nicht erlaubt"
+
+#: config/darwin.h:232
+msgid "-private_bundle not allowed with -dynamiclib"
+msgstr "-private_bundle ist mit -dynamiclib nicht erlaubt"
+
#: config/vax/netbsd-elf.h:42
msgid "The -shared option is not currently supported for VAX ELF."
msgstr ""
+#: config/i386/sco5.h:191
+msgid "-pg not supported on this platform"
+msgstr "-pg wird auf dieser Plattform nicht unterstützt"
+
+#: config/i386/sco5.h:192
+msgid "-p and -pp specified - pick one"
+msgstr ""
+
+#: config/i386/sco5.h:266
+msgid "-G and -static are mutually exclusive"
+msgstr ""
+
#: treelang/lang-specs.h:52
msgid "-pg or -p and -fomit-frame-pointer are incompatible"
msgstr ""
-#: gcc.c:847
-msgid "-E required when input is from standard input"
+#: f/lang-specs.h:38
+msgid "GCC does not support -C without using -E"
+msgstr "GCC unterstützt nicht -C ohne -E"
+
+#: f/lang-specs.h:39
+msgid "GCC does not support -CC without using -E"
+msgstr "GCC unterstützt nicht -CC ohne -E"
+
+#: config/mips/r3900.h:35
+msgid "-mhard-float not supported"
msgstr ""
-#: gcc.c:851
-msgid "compilation of header file requested"
+#: config/mips/r3900.h:37
+msgid "-msingle-float and -msoft-float can not both be specified"
msgstr ""
+#: config/rs6000/sysv4.h:1094 config/i386/freebsd-aout.h:215
+msgid "`-p' not supported; use `-pg' and gprof(1)"
+msgstr "»-p« wird nicht unterstützt; verwenden Sie »-pg« und gprof(1)"
+
+#: config/sparc/linux64.h:208 config/sparc/linux64.h:219
+#: config/sparc/netbsd-elf.h:140 config/sparc/netbsd-elf.h:159
+#: config/sparc/sol2-bi.h:195 config/sparc/sol2-bi.h:205
+msgid "may not use both -m32 and -m64"
+msgstr "-m32 und -m64 können nicht zusammen angegeben werden"
+
#: config/vax/vax.h:50 config/vax/vax.h:51
msgid "profiling not supported with -mg\n"
msgstr "Profiling wird mit -mg nicht unterstützt\n"
-#: config/mips/mips.h:954
-msgid "-pipe is not supported"
-msgstr "-pipe wird nicht unterstützt"
+#: config/i386/cygwin.h:29
+msgid "mno-cygwin and mno-win32 are not compatible"
+msgstr ""
-#: config/mips/mips.h:1156 config/arc/arc.h:63
-msgid "may not use both -EB and -EL"
+#: ada/lang-specs.h:36
+msgid "one of -c, -S, -gnatc, -gnatz, or -gnats is required for Ada"
msgstr ""
-#: config/mips/r3900.h:35
-msgid "-mhard-float not supported"
+#: config/sparc/sol2-bi.h:167 config/sparc/sol2-bi.h:172
+#: config/sparc/sol2-gld-bi.h:17 config/sparc/sol2-gld-bi.h:22
+msgid "does not support multilib"
+msgstr "unterstützt nicht multilib"
+
+#: java/lang-specs.h:34
+msgid "-fjni and -femit-class-files are incompatible"
msgstr ""
-#: config/mips/r3900.h:37
-msgid "-msingle-float and -msoft-float can not both be specified"
+#: java/lang-specs.h:35
+msgid "-fjni and -femit-class-file are incompatible"
+msgstr ""
+
+#: java/lang-specs.h:36 java/lang-specs.h:37
+msgid "-femit-class-file should used along with -fsyntax-only"
+msgstr ""
+
+#: config/mcore/mcore.h:65
+msgid "the m210 does not have little endian support"
msgstr ""
+#~ msgid "concatenation of string literals with __FUNCTION__ is deprecated"
+#~ msgstr "Verkettung von Zeichenkettenliteralen mit __FUNCTION__ ist veraltet"
+
+#~ msgid "ISO C++ forbids range expressions in switch statements"
+#~ msgstr "ISO-C++ verbietet Wertebereichsausdrücke in switch-Anweisungen"
+
+#~ msgid "ISO C++ forbids taking the address of a label"
+#~ msgstr "ISO-C++ verbietet die Adresse einer Marke"
+
+#~ msgid "declaration of `%s' shadows %s"
+#~ msgstr "Deklaration von »%s« verdeckt %s"
+
+#~ msgid "`struct %s' incomplete in scope ending here"
+#~ msgstr "»struct %s« im Gültigkeitsbereich, der hier endet, unvollständig"
+
+#~ msgid "`union %s' incomplete in scope ending here"
+#~ msgstr "»union %s« im Gültigkeitsbereich, der hier endet, unvollständig"
+
+#~ msgid "`enum %s' incomplete in scope ending here"
+#~ msgstr "»enum %s« im Gültigkeitsbereich, der hier endet, unvollständig"
+
+#~ msgid "shadowing library function `%s'"
+#~ msgstr "Bibliotheksfunktion »%s« überdeckt"
+
+#~ msgid "library function `%s' declared as non-function"
+#~ msgstr "Bibliotheksfunktion »%s« als Nicht-Funktion deklariert"
+
+#~ msgid "redeclaration of `%s'"
+#~ msgstr "Redeklaration von »%s«"
+
+#~ msgid "prototype for `%s' follows and number of arguments doesn't match"
+#~ msgstr "Prototyp für »%s« folgt und Anzahl der Argumente passt nicht"
+
+#~ msgid "prototype for `%s' follows and argument %d doesn't match"
+#~ msgstr "Prototyp für »%s« folgt und Argument %d passt nicht"
+
+#~ msgid "type qualifiers for `%s' conflict with previous decl"
+#~ msgstr "Typ-Kennzeichner für »%s« stehen in Konflikt mit vorheriger Deklaration"
+
+#~ msgid "a parameter"
+#~ msgstr "ein Parameter"
+
+#~ msgid "a previous local"
+#~ msgstr "ein vorheriges »local«"
+
+#~ msgid "a global declaration"
+#~ msgstr "eine globale Deklaration"
+
+#~ msgid "`%s' was declared implicitly `extern' and later `static'"
+#~ msgstr "»%s« wurde implizit als »extern« und später als »static« deklariert"
+
+#~ msgid "previous external decl of `%s'"
+#~ msgstr "vorherige externe Deklaration von »%s«"
+
+#~ msgid "type mismatch with previous implicit declaration"
+#~ msgstr "Typen passen nicht zu vorheriger impliziter Deklaration"
+
+#~ msgid "`%s' was previously implicitly declared to return `int'"
+#~ msgstr "»%s« wurde bereits implizit deklariert, »int« zurückzugeben"
+
+#~ msgid "`%s' was declared `extern' and later `static'"
+#~ msgstr "»%s« wurde »extern« deklariert und später »static«"
+
+#~ msgid "`%s' locally external but globally static"
+#~ msgstr "»%s« ist lokal extern, aber global »static«"
+
+#~ msgid "function `%s' was previously declared within a block"
+#~ msgstr "Funktion »%s« wurde bereits innerhalb eines Blockes deklariert"
+
+#~ msgid "declaration of `%s' has `extern' and is initialized"
+#~ msgstr "Deklaration von »%s« hat »extern« und ist initialisiert"
+
+#~ msgid "ISO C forbids parameter `%s' shadowing typedef"
+#~ msgstr "ISO-C verbietet typedef verdeckenden Parameter »%s«"
+
+#~ msgid "parameter `%s' points to incomplete type"
+#~ msgstr "Parameter »%s« zeigt auf unvollständigen Typen"
+
+#~ msgid "parameter points to incomplete type"
+#~ msgstr "Parameter zeigt auf unvollständigen Typen"
+
+#~ msgid "`void' in parameter list must be the entire list"
+#~ msgstr "»void« in Parameterliste muss die gesamte Liste sein"
+
+#~ msgid "`union %s' declared inside parameter list"
+#~ msgstr "»union %s« innerhalb Parameterliste deklariert"
+
+#~ msgid "`enum %s' declared inside parameter list"
+#~ msgstr "»enum %s« innerhalb Parameterliste deklariert"
+
+#~ msgid "anonymous enum declared inside parameter list"
+#~ msgstr "anonymes »enum« innerhalb Parameterliste deklariert"
+
+#~ msgid "bit-field `%s' type invalid in ISO C"
+#~ msgstr "Typ des Bitfeldes »%s« ist ungültig in ISO-C"
+
+#~ msgid "parm types given both in parmlist and separately"
+#~ msgstr "Parametertypen sowohl in Parameterliste als auch separat angegeben"
+
+#~ msgid "universal-character-name '\\u%04x' not valid in identifier"
+#~ msgstr "universeller Zeichenname »\\u%04x« nicht gültig in Bezeichner"
+
+#~ msgid "ignoring invalid multibyte character"
+#~ msgstr "ungültiges Multibyte-Zeichen wird ignoriert"
+
+#~ msgid "options array incorrectly sorted: %s is before %s"
+#~ msgstr "Optionenliste falsch sortiert: %s kommt vor %s"
+
+#~ msgid "-Wno-strict-prototypes is not supported in C++"
+#~ msgstr "-Wno-strict-prototypes wird in C++ nicht unterstützt"
+
+#~ msgid ""
+#~ "Switches:\n"
+#~ " -include <file> Include the contents of <file> before other files\n"
+#~ " -imacros <file> Accept definition of macros in <file>\n"
+#~ " -iprefix <path> Specify <path> as a prefix for next two options\n"
+#~ " -iwithprefix <dir> Add <dir> to the end of the system include path\n"
+#~ " -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
+#~ " -isystem <dir> Add <dir> to the start of the system include path\n"
+#~ msgstr ""
+#~ "Optionen:\n"
+#~ " -include <Datei> Inhalt von <Datei> vor anderen Dateien einfügen\n"
+#~ " -imacros <Datei> die Definition von Makros in <Datei> akzeptieren\n"
+#~ " -iprefix <Pfad> <Pfad> als Präfix für die nächsten beiden Optionen\n"
+#~ " angeben\n"
+#~ " -iwithprefix <Verz> <Verz> zum Ende des System-Einfüge-Pfades\n"
+#~ " hinzufügen\n"
+#~ " -iwithprefixbefore <Verz> <Verz> zum das Ende des Haupt-Einfüge-Pfades\n"
+#~ " hinzufügen\n"
+#~ " -isystem <Verz> <Verz> zum Anfang des System-Einfüge-Pfades\n"
+#~ " hinzufügen\n"
+
+#~ msgid ""
+#~ " -idirafter <dir> Add <dir> to the end of the system include path\n"
+#~ " -I <dir> Add <dir> to the end of the main include path\n"
+#~ " -I- Fine-grained include path control; see info docs\n"
+#~ " -nostdinc Do not search system include directories\n"
+#~ " (dirs specified with -isystem will still be used)\n"
+#~ " -nostdinc++ Do not search system include directories for C++\n"
+#~ " -o <file> Put output into <file>\n"
+#~ msgstr ""
+#~ " -idirafter <Verz> <Verz> zum Ende des System-Einfüge-Pfades\n"
+#~ " hinzufügen\n"
+#~ " -I <Verz> <Verz> zum Anfang des Haupt-Einfüge-Pfades\n"
+#~ " hinzufügen\n"
+#~ " -I- Feineinstellung des Einfügepfades; siehe info-\n"
+#~ " Seiten\n"
+#~ " -nostdinc keine System-Einfüge-Verzeichnisse durchsuchen\n"
+#~ " (-isystem Verzeichnisse werden aber verwendet)\n"
+#~ " -nostdinc++ keine System-Einfüge-Verzeichnisse nach C++\n"
+#~ " durchsuchen\n"
+#~ " -o <Datei> Ausgabe in <Datei> leiten\n"
+
+#~ msgid ""
+#~ " -trigraphs Support ISO C trigraphs\n"
+#~ " -std=<std name> Specify the conformance standard; one of:\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999, c++98\n"
+#~ " -w Inhibit warning messages\n"
+#~ " -W[no-]trigraphs Warn if trigraphs are encountered\n"
+#~ " -W[no-]comment{s} Warn if one comment starts inside another\n"
+#~ msgstr ""
+#~ " -trigraphs ISO-C-»Trigraphs« unterstützen\n"
+#~ " -std=<Name> Standardkonformität angeben; eines von:\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999, c++98\n"
+#~ " -w Warnungen unterdrücken\n"
+#~ " -W[no-]trigraphs Warnungen bei »Trigraphs«\n"
+#~ " -W[no-]comment{s} Warnungen bei geschachtelten Kommentaren\n"
+
+#~ msgid ""
+#~ " -W[no-]traditional Warn about features not present in traditional C\n"
+#~ " -W[no-]undef Warn if an undefined macro is used by #if\n"
+#~ " -W[no-]import Warn about the use of the #import directive\n"
+#~ msgstr ""
+#~ " -W[no-]traditional Warnungen bei Merkmalen von traditionellem C\n"
+#~ " -W[no-]undef Warnungen bei Verwendung undefinierter Makros\n"
+#~ " mit #if\n"
+#~ " -W[no-]import Warnungen über die Verwendung der Direktive\n"
+#~ " #import\n"
+
+#~ msgid ""
+#~ " -W[no-]error Treat all warnings as errors\n"
+#~ " -W[no-]system-headers Do not suppress warnings from system headers\n"
+#~ " -W[no-]all Enable most preprocessor warnings\n"
+#~ msgstr ""
+#~ " -W[no-]error alle Warnungen als Fehler behandeln\n"
+#~ " -W[no-]system-headers keine Warnungen von System-Headern unterdrücken\n"
+#~ " -W[no-]all die meisten Präprozessorwarnungen einschalten\n"
+
+#~ msgid ""
+#~ " -M Generate make dependencies\n"
+#~ " -MM As -M, but ignore system header files\n"
+#~ " -MD Generate make dependencies and compile\n"
+#~ " -MMD As -MD, but ignore system header files\n"
+#~ " -MF <file> Write dependency output to the given file\n"
+#~ " -MG Treat missing header file as generated files\n"
+#~ msgstr ""
+#~ " -M make-Abhängigkeiten generieren\n"
+#~ " -MM wie -M, aber System-Header ignorieren\n"
+#~ " -MD make-Abhängigkeiten generieren und kompilieren\n"
+#~ " -MMD wie -MD, aber System-Header ignorieren\n"
+#~ " -MF <Datei> Abhängigkeiten-Ausgabe in die angegebene Datei\n"
+#~ " schreiben\n"
+#~ " -MG fehlende Header-Dateien als generierte Dateien\n"
+#~ " behandeln\n"
+
+#~ msgid ""
+#~ " -MP\t\t\t Generate phony targets for all headers\n"
+#~ " -MQ <target> Add a MAKE-quoted target\n"
+#~ " -MT <target> Add an unquoted target\n"
+#~ msgstr ""
+#~ " -MP\t\t\t Generiere falsche (phony) Ziele für Header\n"
+#~ " -MQ <Ziel> MAKE-zitiertes Ziel hinzufügen\n"
+#~ " -MT <Ziel> ein unzitiertes Ziel hinzufügen\n"
+
+#~ msgid ""
+#~ " -D<macro> Define a <macro> with string '1' as its value\n"
+#~ " -D<macro>=<val> Define a <macro> with <val> as its value\n"
+#~ " -A<question>=<answer> Assert the <answer> to <question>\n"
+#~ " -A-<question>=<answer> Disable the <answer> to <question>\n"
+#~ " -U<macro> Undefine <macro> \n"
+#~ " -v Display the version number\n"
+#~ msgstr ""
+#~ " -D<Makro> <Makro> mit Wert \"1\" definieren\n"
+#~ " -D<Makro>=<Wert> <Makro> mit Wert <Wert> definieren\n"
+#~ " -A<Frage>=<Antwort> die <Antwort> auf <Frage> annehmen\n"
+#~ " -A-<Frage>=<Antwort> die <Antwort> auf <Frage> abschalten\n"
+#~ " -U<Makro> <Makro> löschen\n"
+#~ " -v Version anzeigen\n"
+
+#~ msgid ""
+#~ " -H Print the name of header files as they are used\n"
+#~ " -C Do not discard comments\n"
+#~ " -dM Display a list of macro definitions active at end\n"
+#~ " -dD Preserve macro definitions in output\n"
+#~ " -dN As -dD except that only the names are preserved\n"
+#~ " -dI Include #include directives in the output\n"
+#~ msgstr ""
+#~ " -H Namen von Header-Dateien anzeigen wenn sie\n"
+#~ " verwendet werden\n"
+#~ " -C Kommentare nicht streichen\n"
+#~ " -dM am Ende eine Liste von Makrodefinitionen anzeigen\n"
+#~ " -dD Makrodefinitionen in der Ausgabe bewahren\n"
+#~ " -dN wie -dD nur dass die Namen bewahrt werden\n"
+#~ " -dI #include-Anweisungen in die Ausgabe einfügen\n"
+
+#~ msgid ""
+#~ " -f[no-]preprocessed Treat the input file as already preprocessed\n"
+#~ " -ftabstop=<number> Distance between tab stops for column reporting\n"
+#~ " -P Do not generate #line directives\n"
+#~ " -remap Remap file names when including files\n"
+#~ " --help Display this information\n"
+#~ msgstr ""
+#~ " -f[no-]preprocessed Eingabedatei als bereits vorverarbeitet behandeln\n"
+#~ " -ftabstop=<Zahl> Tabulatorenabstand für Spaltenmeldungen\n"
+#~ " -P keine #line-Direktiven generieren\n"
+#~ " -remap Dateinamen beim Einfügen neu abbilden\n"
+#~ " --help diese Information anzeigen\n"
+
+#~ msgid "parse error"
+#~ msgstr "Fehler beim Parsen"
+
+#~ msgid "ISO C forbids the address of a cast expression"
+#~ msgstr "ISO-C verbietet die Adresse eines cast-Ausdruckes"
+
+#~ msgid "initializer for static variable is not constant"
+#~ msgstr "Initialisierer für statische Variable ist nicht konstant"
+
+#~ msgid "initializer for static variable uses complicated arithmetic"
+#~ msgstr "Initialisierer für statische Variable verwendet komplizierte Arithmetik"
+
+#~ msgid "aggregate initializer is not constant"
+#~ msgstr "Gesamt-Initialisierer ist nicht konstant"
+
+#~ msgid "aggregate initializer uses complicated arithmetic"
+#~ msgstr "Gesamt-Initialisierer verwendet komplizierte Arithmetik"
+
+#~ msgid "open %s"
+#~ msgstr "öffne %s"
+
+#~ msgid "incompatibilities between object file & expected values"
+#~ msgstr "Inkompatibilitäten zwischen Objektdatei und erwarteten Werten"
+
+#~ msgid ""
+#~ "\n"
+#~ "Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Verarbeite Symboltabelle #%d, Versatz = 0x%.8lx, Art = %s\n"
+
+#~ msgid "string section missing"
+#~ msgstr "Zeichenkettenabschnitt fehlt"
+
+#~ msgid "section pointer missing"
+#~ msgstr "Abschnittszeiger fehlt"
+
+#~ msgid "no symbol table found"
+#~ msgstr "keine Symboltabelle gefunden"
+
+#~ msgid ""
+#~ "\n"
+#~ "Updating header and load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Aktualisiere Kopf und lokale Befehle.\n"
+#~ "\n"
+
+#~ msgid "load command map, %d cmds, new size %ld.\n"
+#~ msgstr "lade Befehlstabelle, %d Befehle, neue Größe: %ld.\n"
+
+#~ msgid ""
+#~ "writing load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "schreibe Ladebefehle.\n"
+#~ "\n"
+
+#~ msgid "close %s"
+#~ msgstr "schließe %s"
+
+#~ msgid "could not convert 0x%l.8x into a region"
+#~ msgstr "konnte 0x%l.8x nicht in eine Region konvertieren"
+
+#~ msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
+#~ msgstr "Funktion %s, Region %d, Versatz = %ld (0x%.8lx)\n"
+
+#~ msgid "bad magic number"
+#~ msgstr "falsche magische Zahl"
+
+#~ msgid "bad header version"
+#~ msgstr "falsche Kopf-Version"
+
+#~ msgid "bad raw header version"
+#~ msgstr "falsche Version des Original-Kopfes"
+
+#~ msgid "raw header buffer too small"
+#~ msgstr "Original-Kopf-Puffer zu klein"
+
+#~ msgid "old raw header file"
+#~ msgstr "alte Original-Kopf-Datei"
+
+#~ msgid "unsupported version"
+#~ msgstr "nicht unterstützte Version"
+
+#~ msgid "unknown {de,en}code_mach_o_hdr return value %d"
+#~ msgstr "unbekannter Rückgabewert %d für {de,en}code_mach_o_hdr"
+
+#~ msgid "fstat %s"
+#~ msgstr "fstat %s"
+
+#~ msgid "lseek %s 0"
+#~ msgstr "lseek %s 0"
+
+#~ msgid "read %s"
+#~ msgstr "Lese %s"
+
+#~ msgid "read %ld bytes, expected %ld, from %s"
+#~ msgstr "%ld Bytes gelesen, %ld erwartet, von %s"
+
+#~ msgid "msync %s"
+#~ msgstr "msync %s"
+
+#~ msgid "munmap %s"
+#~ msgstr "munmap %s"
+
+#~ msgid "write %s"
+#~ msgstr "schreibe %s"
+
+#~ msgid "wrote %ld bytes, expected %ld, to %s"
+#~ msgstr "%ld Bytes geschrieben, %ld erwartet, nach %s"
+
+#~ msgid "ISO C++ does not permit \"%s\" in #if"
+#~ msgstr "ISO-C++ lässt nicht »%s« in #if zu"
+
+#~ msgid "invalid character '%c' in #if"
+#~ msgstr "ungültiges Zeichen '%c' in #if"
+
+#~ msgid "invalid character '\\%03o' in #if"
+#~ msgstr "ungültiges Zeichen '\\%03o' in #if"
+
+#~ msgid "absolute file name in remap_filename"
+#~ msgstr "absoluter Dateiname in remap_filename"
+
+#~ msgid "%s: Not a directory"
+#~ msgstr "%s: Kein Verzeichnis"
+
+#~ msgid "directory name missing after %s"
+#~ msgstr "Verzeichnisname fehlt hinter %s"
+
+#~ msgid "file name missing after %s"
+#~ msgstr "Dateiname fehlt hinter %s"
+
+#~ msgid "path name missing after %s"
+#~ msgstr "Pfadname fehlt hinter %s"
+
+#~ msgid "trigraph ??%c converted to %c"
+#~ msgstr "Trigraph ??%c in %c konvertiert"
+
+#~ msgid "trigraph ??%c ignored"
+#~ msgstr "Trigraph ??%c ignoriert"
+
+#~ msgid "backslash and newline separated by space"
+#~ msgstr "Backslash und Newline durch Leerzeichen getrennt"
+
+#~ msgid "backslash-newline at end of file"
+#~ msgstr "Backslash-Newline am Dateiende"
+
+#~ msgid "\"/*\" within comment"
+#~ msgstr "»/*« innerhalb des Kommentars"
+
+#~ msgid "%s in preprocessing directive"
+#~ msgstr "%s in Präprozessordirektive"
+
+#~ msgid "no newline at end of file"
+#~ msgstr "Kein Newline am Dateiende"
+
+#~ msgid "unknown string token %s\n"
+#~ msgstr "Unbekanntes Zeichenketten-Token %s\n"
+
+#~ msgid "non-hex digit '%c' in universal-character-name"
+#~ msgstr "Nicht-Hex-Ziffer '%c' in Universal-Zeichen-Name"
+
+#~ msgid "universal-character-name on EBCDIC target"
+#~ msgstr "Universal-Zeichen-Name auf EBCDIC Ziel"
+
+#~ msgid "universal-character-name out of range"
+#~ msgstr "Universal-Zeichen-Name außerhalb des Wertebereiches"
+
+#~ msgid "escape sequence out of range for its type"
+#~ msgstr "Fluchtsequenz außerhalb des Wertebereiches seines Typs"
+
+#~ msgid "#import is obsolete, use an #ifndef wrapper in the header file"
+#~ msgstr "#import ist veraltet, benutzen Sie einen #ifndef-Wrapper in der Header-Datei"
+
+#~ msgid "#pragma once is obsolete"
+#~ msgstr "#pragma once ist veraltet"
+
+#~ msgid "the conditional began here"
+#~ msgstr "die Bedingung begann hier"
+
+#~ msgid "unterminated #%s"
+#~ msgstr "unbeendetes #%s"
+
+#~ msgid "macro \"%s\" is not used"
+#~ msgstr "Makro »%s« wird nicht benutzt"
+
+#~ msgid "\"%s\" redefined"
+#~ msgstr "»%s« redefiniert"
+
+#~ msgid "this is the location of the previous definition"
+#~ msgstr "dies ist die Stelle der vorherigen Definition"
+
+#~ msgid "%s: warnings being treated as errors\n"
+#~ msgstr "%s: Warnungen als Fehler behandelt\n"
+
+#~ msgid "At top level:"
+#~ msgstr "Auf höchster Ebene:"
+
+#~ msgid "In function `%s':"
+#~ msgstr "In Funktion »%s«:"
+
+#~ msgid ""
+#~ "Please submit a full bug report,\n"
+#~ "with preprocessed source if appropriate.\n"
+#~ "See %s for instructions.\n"
+#~ msgstr ""
+#~ "Bitte senden Sie einen vollständigen Fehlerbericht auf Englisch ein;\n"
+#~ "bearbeiten Sie die Quellen zunächst mit einem Präprozessor, wenn es\n"
+#~ "dienlich ist.\n"
+#~ "Fehler in der deutschen Ãœbersetzung sind an de@li.org zu melden.\n"
+#~ "\n"
+#~ "Gehen Sie gemäß den Hinweisen in %s vor.\n"
+
+#~ msgid "In file included from %s:%d"
+#~ msgstr "In von %s:%d eingefügter Datei"
+
+#~ msgid ""
+#~ ",\n"
+#~ " from %s:%d"
+#~ msgstr ""
+#~ ",\n"
+#~ " von %s:%d"
+
+#~ msgid "internal regno botch: `%s' has regno = %d\n"
+#~ msgstr "interner RegNr-Fehler: »%s« hat RegNr = %d\n"
+
+#~ msgid "support for the DWARF1 debugging format is deprecated"
+#~ msgstr "Unterstützung für das DWARF1-Debugging-Format ist veraltet"
+
+#~ msgid "unsupported wide integer operation"
+#~ msgstr "breite Ganzzahloperation nicht unterstützt"
+
+#~ msgid "mismatched braces in specs"
+#~ msgstr "unpassende geschweifte Klammern in Spezifikation"
+
+#~ msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
+#~ msgstr "Copyright © 2001 Free Software Foundation, Inc.\n"
+
+#~ msgid "Could not open basic block file %s.\n"
+#~ msgstr "Konnte einfache Blockdatei %s nicht öffnen.\n"
+
+#~ msgid "Could not open program flow graph file %s.\n"
+#~ msgstr "Konnte Programmflussgraphdatei %s nicht öffnen.\n"
+
+#~ msgid "Could not open data file %s.\n"
+#~ msgstr "Konnte Datei %s nicht öffnen.\n"
+
+#~ msgid "Assuming that all execution counts are zero.\n"
+#~ msgstr "Angenommen, dass alle Ausführungszähler null sind.\n"
+
+#~ msgid "No executable code associated with file %s.\n"
+#~ msgstr "Kein ausführbarer Code mit Datei %s verbunden.\n"
+
+#~ msgid "didn't use all bb entries of graph, function %s\n"
+#~ msgstr "nicht alle bb-Einträge des Graphen wurden benutzt, Funktion %s\n"
+
+#~ msgid "block_num = %ld, num_blocks = %d\n"
+#~ msgstr "block_num = %ld, num_blocks = %d\n"
+
+#~ msgid "ERROR: unexpected line number %ld\n"
+#~ msgstr "FEHLER: nicht erwartete Zeilennummer %ld\n"
+
+#~ msgid "ERROR: too many basic blocks in function %s\n"
+#~ msgstr "FEHLER: zu viele Basis-Blöcke in Funktion %s\n"
+
+#~ msgid "ERROR: out of range line number in function %s\n"
+#~ msgstr "FEHLER: Zeilennummer außerhalb des Wertebereiches in Funktion %s\n"
+
+#~ msgid "Could not open source file %s.\n"
+#~ msgstr "Konnte Quelldatei %s nicht öffnen.\n"
+
+#~ msgid "Unexpected EOF while reading source file %s.\n"
+#~ msgstr "Unerwartetes Dateiende beim Lesen der Quelldatei %s.\n"
+
+#~ msgid "Creating %s.\n"
+#~ msgstr "Erzeuge %s.\n"
+
+#~ msgid "Name `%s' contains quotes"
+#~ msgstr "Name »%s« enthält Anführungszeichen"
+
+#~ msgid "invalid string `%s' in define_cpu_unit"
+#~ msgstr "ungültige Zeichenkette »%s« in define_cpu_unit"
+
+#~ msgid "invalid string `%s' in define_query_cpu_unit"
+#~ msgstr "ungültige Zeichenkette »%s« in define_query_cpu_unit"
+
+#~ msgid "invalid string `%s' in define_bypass"
+#~ msgstr "ungültige Zeichenkette »%s« in define_bypass"
+
+#~ msgid "invalid second string `%s' in exclusion_set"
+#~ msgstr "ungültige zweite Zeichenkette »%s« in exclusion_set"
+
+#~ msgid "invalid first string `%s' in presence_set"
+#~ msgstr "ungültige erste Zeichenkette »%s« in presence_set"
+
+#~ msgid "invalid second string `%s' in presence_set"
+#~ msgstr "ungültige zweite Zeichenkette »%s« in presence_set"
+
+#~ msgid "invalid first string `%s' in absence_set"
+#~ msgstr "ungültige erste Zeichenkette »%s« in absence_set"
+
+#~ msgid "invalid second string `%s' in absence_set"
+#~ msgstr "ungültige zweite Zeichenkette »%s« in absence_set"
+
+#~ msgid "invalid string `%s' in define_automaton"
+#~ msgstr "ungültige Zeichenkette »%s« in define_automaton"
+
+#~ msgid "invalid option `%s' in automata_option"
+#~ msgstr "ungültige Option »%s« in automata_option"
+
+#~ msgid "garbage after ) in reservation `%s'"
+#~ msgstr "Müll hinter ) in Reservierung »%s«"
+
+#~ msgid "invalid `%s' in reservation `%s'"
+#~ msgstr "ungültiges »%s« in Reservierung »%s«"
+
+#~ msgid "repetition `%s' <= 1 in reservation `%s'"
+#~ msgstr "Wiederholung »%s« <= 1 in Reservierung »%s«"
+
+#~ msgid "unit `%s' in exclusion is not declared"
+#~ msgstr "Einheit »%s« ist nicht im Ausschluss deklariert"
+
+#~ msgid "`%s' in exclusion is not unit"
+#~ msgstr "»%s« im Ausschluss ist keine Einheit"
+
+#~ msgid "unit `%s' excludes itself"
+#~ msgstr "Einheit »%s« schließt sich selbst aus"
+
+#~ msgid "units `%s' and `%s' in exclusion set belong to different automata"
+#~ msgstr "Einheiten »%s« und »%s« in Ausschlussmenge gehören zu verschiedenen Automaten"
+
+#~ msgid "unit `%s' excludes and requires presence of `%s'"
+#~ msgstr "Einheit »%s« schließt »%s« aus und erfordert dessen Anwesenheit"
+
+#~ msgid "unit `%s' requires absence and presence of `%s'"
+#~ msgstr "Einheit »%s« erfordert die An- und Abwesenheit von »%s«"
+
+#~ msgid "repeated declaration of automaton `%s'"
+#~ msgstr "wiederholte Deklaration des Automaten %s"
+
+#~ msgid "define_insn_reservation `%s' has negative latency time"
+#~ msgstr "define_insn_reservation »%s« hat negative Latenzzeit"
+
+#~ msgid "`%s' is already used as insn reservation name"
+#~ msgstr "»%s« wurde bereits als insn Reservierungsname verwendet"
+
+#~ msgid "define_bypass `%s - %s' has negative latency time"
+#~ msgstr "define_bypass »%s - %s« hat negative Latenzzeit"
+
+#~ msgid "define_unit `%s' without automaton when one defined"
+#~ msgstr "define_unit »%s« ohne Automat trotz Automatendefinition"
+
+#~ msgid "`%s' is declared as cpu unit"
+#~ msgstr "»%s« wurde als CPU-Einheit deklariert"
+
+#~ msgid "`%s' is declared as cpu reservation"
+#~ msgstr "»%s« wurde als CPU-Reservierung deklariert"
+
+#~ msgid "repeated declaration of unit `%s'"
+#~ msgstr "wiederholte Deklaration der Einheit »%s«"
+
+#~ msgid "repeated declaration of reservation `%s'"
+#~ msgstr "wiederholte Deklaration der Reservierung »%s«"
+
+#~ msgid "there is no insn reservation `%s'"
+#~ msgstr "es gibt keine insn-Reservierung »%s«"
+
+#~ msgid "the same bypass `%s - %s' is already defined"
+#~ msgstr "die selbe Überbrückung »%s - %s« wurde bereits definiert"
+
+#~ msgid "bypass `%s - %s' is already defined"
+#~ msgstr "Überbrückung »%s - %s« wurde bereits definiert"
+
+#~ msgid "undeclared unit or reservation `%s'"
+#~ msgstr "nicht deklarierte Einheit oder Reservierung »%s«"
+
+#~ msgid "unit `%s' is not used"
+#~ msgstr "Einheit »%s« wird nicht verwendet"
+
+#~ msgid "reservation `%s' is not used"
+#~ msgstr "Reservierung »%s« ist unbenutzt"
+
+#~ msgid "cycle in definition of reservation `%s'"
+#~ msgstr "Zyklus in Definition der Reservierung »%s«"
+
+#~ msgid "Units `%s' and `%s' should be in the same automaton"
+#~ msgstr "Einheiten »%s« und »%s« sollten im selben Automat sein"
+
+#~ msgid "-split has no argument."
+#~ msgstr "-split hat kein Argument."
+
+#~ msgid "option `-split' has not been implemented yet\n"
+#~ msgstr "Option »-split« wurde noch nicht implementiert\n"
+
+#~ msgid "Automaton `%s': Insn `%s' will never be issued"
+#~ msgstr "Automat »%s«: Insn »%s« wird nie verwendet"
+
+#~ msgid "Insn `%s' will never be issued"
+#~ msgstr "Insn »%s« wird nie verwendet"
+
+#~ msgid "Errors in DFA description"
+#~ msgstr "Fehler in DFA-Beschreibung"
+
+#~ msgid "Error in writing DFA description file %s"
+#~ msgstr "Fehler beim Schreiben der DFA-Definitionsdatei %s"
+
+#~ msgid "No input file name."
+#~ msgstr "Kein Eingabedateiname."
+
+#~ msgid "Profile does not match flowgraph of function %s (out of date?)"
+#~ msgstr "Profil passt nicht zum Flussgraphen der Funktion %s (veraltet?)"
+
+#~ msgid ".da file corrupted"
+#~ msgstr ".da-Datei beschädigt"
+
+#~ msgid "#`%s' not supported by %s#"
+#~ msgstr "#»%s« wird von %s# nicht unterstützt"
+
#~ msgid "Copyright (C) 2002 Free Software Foundation, Inc.\n"
#~ msgstr "Copyright © 2002 Free Software Foundation, Inc.\n"
diff --git a/gcc/po/el.po b/gcc/po/el.po
index ac6a109df25..bb957fb1ca0 100644
--- a/gcc/po/el.po
+++ b/gcc/po/el.po
@@ -5,7 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: gcc 3.2\n"
-"POT-Creation-Date: 2003-10-24 13:20+0200\n"
+"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
+"POT-Creation-Date: 2004-02-06 01:40+0000\n"
"PO-Revision-Date: 2002-08-18 15:46+0100\n"
"Last-Translator: Simos Xenitellis <simos@hellug.gr>\n"
"Language-Team: Greek <nls@tux.hellug.gr>\n"
@@ -13,1070 +14,1124 @@ msgstr ""
"Content-Type: text/plain; charset=iso-8859-7\n"
"Content-Transfer-Encoding: 8bit\n"
-#: attribs.c:185
+#: attribs.c:178
#, c-format
msgid "`%s' attribute directive ignored"
msgstr ""
-#: attribs.c:193
+#: attribs.c:186
#, fuzzy, c-format
msgid "wrong number of arguments specified for `%s' attribute"
msgstr "ëÜèïò áñéèìüò ïñéóìÜôùí"
-#: attribs.c:210
+#: attribs.c:203
#, c-format
msgid "`%s' attribute does not apply to types"
msgstr ""
-#: attribs.c:247
+#: attribs.c:249
#, c-format
msgid "`%s' attribute only applies to function types"
msgstr ""
-#: attribs.c:404 c-common.c:5275 c-common.c:5297 c-common.c:5319
-#: c-common.c:5350 c-common.c:5372 c-common.c:5397 c-common.c:5423
-#: c-common.c:5453 c-common.c:5491 c-common.c:5538 c-common.c:5568
-#: c-common.c:5598 c-common.c:5621 c-common.c:5878 c-common.c:5900
-#: c-common.c:5943 c-common.c:6020 c-common.c:6076 c-common.c:6103
-#: c-common.c:6186 c-common.c:6220 c-common.c:6574 config/arm/arm.c:2101
-#: config/arm/arm.c:2128 config/avr/avr.c:4774 config/h8300/h8300.c:3693
-#: config/h8300/h8300.c:3718 config/i386/i386.c:1403 config/i386/winnt.c:78
-#: config/ip2k/ip2k.c:3204
+#: attribs.c:416 c-common.c:4344 c-common.c:4363 c-common.c:4381
+#: c-common.c:4408 c-common.c:4427 c-common.c:4450 c-common.c:4473
+#: c-common.c:4499 c-common.c:4533 c-common.c:4577 c-common.c:4605
+#: c-common.c:4633 c-common.c:4652 c-common.c:4907 c-common.c:4929
+#: c-common.c:4964 c-common.c:5031 c-common.c:5077 c-common.c:5135
+#: c-common.c:5166 c-common.c:5512 c-common.c:5535 c-common.c:5574
+#: config/arm/arm.c:2278 config/arm/arm.c:2305 config/avr/avr.c:4539
+#: config/h8300/h8300.c:4281 config/h8300/h8300.c:4304 config/i386/i386.c:1599
+#: config/i386/i386.c:15299 config/i386/winnt.c:86 config/ia64/ia64.c:1053
+#: config/ip2k/ip2k.c:3151
#, c-format
msgid "`%s' attribute ignored"
msgstr ""
-#: builtins.c:285
+#: builtins.c:318
msgid "offset outside bounds of constant string"
msgstr ""
-#: builtins.c:765
+#: builtins.c:786
msgid "second arg to `__builtin_prefetch' must be a constant"
msgstr ""
-#: builtins.c:772
+#: builtins.c:793
msgid "invalid second arg to __builtin_prefetch; using zero"
msgstr ""
-#: builtins.c:779
+#: builtins.c:800
msgid "third arg to `__builtin_prefetch' must be a constant"
msgstr ""
-#: builtins.c:786
+#: builtins.c:807
msgid "invalid third arg to __builtin_prefetch; using zero"
msgstr ""
-#. ??? We used to try and build up a call to the out of line function,
-#. guessing about what registers needed saving etc. This became much
-#. harder with __builtin_va_start, since we don't have a tree for a
-#. call to __builtin_saveregs to fall back on. There was exactly one
-#. port (i860) that used this code, and I'm unconvinced it could actually
-#. handle the general case. So we no longer try to handle anything
-#. weird and make the backend absorb the evil.
-#: builtins.c:2875
-#, fuzzy
-msgid "__builtin_saveregs not supported by this target"
-msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
-
-#: builtins.c:2917
+#: builtins.c:3828
msgid "argument of `__builtin_args_info' must be constant"
msgstr ""
-#: builtins.c:2923
+#: builtins.c:3834
msgid "argument of `__builtin_args_info' out of range"
msgstr ""
-#: builtins.c:2929
+#: builtins.c:3840
#, fuzzy
msgid "missing argument in `__builtin_args_info'"
msgstr "Ëåßðåé ðáñÜìåôñïò ãéá `%s'"
-#: builtins.c:2960
+#: builtins.c:3856
msgid "`va_start' used in function with fixed args"
msgstr ""
-#: builtins.c:2979
+#: builtins.c:3875
msgid "second parameter of `va_start' not last named argument"
msgstr ""
#. Evidently an out of date version of <stdarg.h>; can't validate
#. va_start's second argument, but can still work as intended.
-#: builtins.c:2984
+#: builtins.c:3880
msgid "`__builtin_next_arg' called without an argument"
msgstr ""
-#: builtins.c:3070
+#: builtins.c:3969
#, fuzzy
msgid "too many arguments to function `va_start'"
msgstr "ðÜñá ðïëëÜ ïñßóìáôá"
-#: builtins.c:3172
+#: builtins.c:4091
msgid "first argument to `va_arg' not of type `va_list'"
msgstr ""
#. Unfortunately, this is merely undefined, rather than a constraint
#. violation, so we cannot make this an error. If this call is never
#. executed, the program is still strictly conforming.
-#: builtins.c:3204
+#: builtins.c:4123
#, c-format
msgid "`%s' is promoted to `%s' when passed through `...'"
msgstr ""
-#: builtins.c:3209
+#: builtins.c:4128
#, c-format
msgid "(so you should pass `%s' not `%s' to `va_arg')"
msgstr ""
-#: builtins.c:3340
+#: builtins.c:4240
msgid "invalid arg to `__builtin_frame_address'"
msgstr ""
-#: builtins.c:3342
+#: builtins.c:4242
msgid "invalid arg to `__builtin_return_address'"
msgstr ""
-#: builtins.c:3356
+#: builtins.c:4256
msgid "unsupported arg to `__builtin_frame_address'"
msgstr ""
-#: builtins.c:3358
+#: builtins.c:4258
msgid "unsupported arg to `__builtin_return_address'"
msgstr ""
-#: builtins.c:3530
+#: builtins.c:4418
msgid "second arg to `__builtin_expect' must be a constant"
msgstr ""
-#: builtins.c:4028
+#: builtins.c:5359
msgid "__builtin_longjmp second argument must be 1"
msgstr ""
-#. just do library call, if unknown builtin
-#: builtins.c:4092 c-common.c:4459
+#: builtins.c:5454
#, c-format
msgid "built-in function `%s' not currently supported"
msgstr ""
-#: builtins.c:4165
+#: builtins.c:5594
msgid "target format does not support infinity"
msgstr ""
-#: c-common.c:1168
-#, c-format
-msgid "`%s' is not defined outside of function scope"
+#: c-common.c:934
+msgid "%Hsuggest explicit braces to avoid ambiguous `else'"
msgstr ""
-#: c-common.c:1189
-#, c-format
-msgid "string length `%d' is greater than the length `%d' ISO C%d compilers are required to support"
+#: c-common.c:1158
+msgid "%J'%D' is not defined outside of function scope"
msgstr ""
-#: c-common.c:1247
-msgid "concatenation of string literals with __FUNCTION__ is deprecated"
+#: c-common.c:1178
+#, c-format
+msgid "string length `%d' is greater than the length `%d' ISO C%d compilers are required to support"
msgstr ""
-#: c-common.c:1343
+#: c-common.c:1218
msgid "overflow in constant expression"
msgstr ""
-#: c-common.c:1364
+#: c-common.c:1238
msgid "integer overflow in expression"
msgstr ""
-#: c-common.c:1373
+#: c-common.c:1247
#, fuzzy
msgid "floating point overflow in expression"
msgstr "Åîáßñåóç êéíçôÞò õðïäéáóôïëÞò"
-#: c-common.c:1379
+#: c-common.c:1253
#, fuzzy
msgid "vector overflow in expression"
msgstr "Åîáßñåóç êéíçôÞò õðïäéáóôïëÞò"
#. This detects cases like converting -129 or 256 to unsigned char.
-#: c-common.c:1402
+#: c-common.c:1275
msgid "large integer implicitly truncated to unsigned type"
msgstr ""
-#: c-common.c:1404
+#: c-common.c:1277
msgid "negative integer implicitly converted to unsigned type"
msgstr ""
-#: c-common.c:1452
+#: c-common.c:1323
msgid "overflow in implicit constant conversion"
msgstr ""
-#: c-common.c:1600
+#: c-common.c:1459
#, c-format
msgid "operation on `%s' may be undefined"
msgstr ""
-#: c-common.c:1891
+#: c-common.c:1743
msgid "expression statement has incomplete type"
msgstr ""
-#: c-common.c:1924
+#: c-common.c:1775
msgid "case label does not reduce to an integer constant"
msgstr ""
-#: c-common.c:2228
+#: c-common.c:2105
#, fuzzy
msgid "invalid truth-value expression"
msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç"
-#: c-common.c:2279
+#: c-common.c:2156
#, fuzzy, c-format
msgid "invalid operands to binary %s"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: c-common.c:2513
+#: c-common.c:2390
msgid "comparison is always false due to limited range of data type"
msgstr ""
-#: c-common.c:2515
+#: c-common.c:2392
msgid "comparison is always true due to limited range of data type"
msgstr ""
-#: c-common.c:2585
+#: c-common.c:2462
msgid "comparison of unsigned expression >= 0 is always true"
msgstr ""
-#: c-common.c:2594
+#: c-common.c:2471
msgid "comparison of unsigned expression < 0 is always false"
msgstr ""
-#: c-common.c:2641
+#: c-common.c:2516
msgid "pointer of type `void *' used in arithmetic"
msgstr ""
-#: c-common.c:2647
+#: c-common.c:2522
msgid "pointer to a function used in arithmetic"
msgstr ""
-#: c-common.c:2653
+#: c-common.c:2528
msgid "pointer to member function used in arithmetic"
msgstr ""
-#: c-common.c:2659
+#: c-common.c:2534
msgid "pointer to a member used in arithmetic"
msgstr ""
-#: c-common.c:2746 f/com.c:14762
+#: c-common.c:2623 f/com.c:14734
msgid "struct type value used where scalar is required"
msgstr ""
-#: c-common.c:2750 f/com.c:14766
+#: c-common.c:2627 f/com.c:14738
msgid "union type value used where scalar is required"
msgstr ""
-#: c-common.c:2754 f/com.c:14770
+#: c-common.c:2631 f/com.c:14742
msgid "array type value used where scalar is required"
msgstr ""
-#: c-common.c:2874 f/com.c:14903
+#. Common Ada/Pascal programmer's mistake. We always warn
+#. about this since it is so bad.
+#: c-common.c:2668
+msgid "the address of `%D', will always evaluate as `true'"
+msgstr ""
+
+#: c-common.c:2762 f/com.c:14874
msgid "suggest parentheses around assignment used as truth value"
msgstr ""
-#: c-common.c:2918 c-common.c:2950
+#: c-common.c:2808 c-common.c:2848
#, fuzzy
msgid "invalid use of `restrict'"
msgstr "ìç Ýãêõñïò áñéèìüò áðü ãñáììÝò"
-#: c-common.c:3064
+#: c-common.c:2958
#, fuzzy
msgid "invalid application of `sizeof' to a function type"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: c-common.c:3074
+#: c-common.c:2968
#, fuzzy, c-format
msgid "invalid application of `%s' to a void type"
msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò `%c' óôï ôýðï áëöáñéèìçôéêïý `%s'"
-#: c-common.c:3080
+#: c-common.c:2974
#, fuzzy, c-format
msgid "invalid application of `%s' to an incomplete type"
msgstr "ìç Ýãêõñïò äåýôåñïò ôåëåóôÞò óå êáôÜóôáóç óõìâáôüôçôáò `%s'"
-#: c-common.c:3121
+#: c-common.c:3014
msgid "`__alignof' applied to a bit-field"
msgstr ""
-#: c-common.c:3618
+#: c-common.c:3506
#, fuzzy, c-format
msgid "cannot disable built-in function `%s'"
msgstr "áäõíáìßá åêôÝëåóçò ioctl óôï `%s'"
-#: c-common.c:3787 c-typeck.c:1748
+#: c-common.c:3667 c-typeck.c:1941
#, fuzzy, c-format
msgid "too few arguments to function `%s'"
msgstr "Ðñïåéäïðïßçóç: Ðïëý ëßãá ïñßóìáôá óôï åóùäïìçìÝíï `%s'"
-#: c-common.c:3793 c-typeck.c:1601
+#: c-common.c:3673 c-typeck.c:1802
#, fuzzy, c-format
msgid "too many arguments to function `%s'"
msgstr "ðÜñá ðïëëÜ ïñßóìáôá"
-#: c-common.c:3812
+#: c-common.c:3692
#, fuzzy, c-format
msgid "non-floating-point argument to function `%s'"
msgstr "ðÜñá ðïëëÜ ïñßóìáôá"
-#: c-common.c:4081
+#: c-common.c:3919
msgid "pointers are not permitted as case values"
msgstr ""
-#: c-common.c:4087
-msgid "ISO C++ forbids range expressions in switch statements"
+#: c-common.c:3923
+msgid "range expressions in switch statements are non-standard"
msgstr ""
-#: c-common.c:4089
-msgid "ISO C forbids range expressions in switch statements"
-msgstr ""
-
-#: c-common.c:4119
+#: c-common.c:3952
#, fuzzy
msgid "empty range specified"
msgstr "ìç ïñéóìÝíï"
-#: c-common.c:4170
+#: c-common.c:4003
msgid "duplicate (or overlapping) case value"
msgstr ""
-#: c-common.c:4172
+#: c-common.c:4004
#, fuzzy
-msgid "this is the first entry overlapping that value"
+msgid "%Jthis is the first entry overlapping that value"
msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò"
-#: c-common.c:4176
+#: c-common.c:4008
#, fuzzy
msgid "duplicate case value"
msgstr "äéðëüò áñéèìüò ìçíýìáôïò"
-#: c-common.c:4177
-msgid "previously used here"
-msgstr ""
+#: c-common.c:4009
+#, fuzzy
+msgid "%Jpreviously used here"
+msgstr "Äåí õðÜñ÷åé ðñïçãïýìåíç êáíïíéêÞ Ýêöñáóç"
-#: c-common.c:4181
+#: c-common.c:4013
msgid "multiple default labels in one switch"
msgstr ""
-#: c-common.c:4182
+#: c-common.c:4014
#, fuzzy
-msgid "this is the first default label"
+msgid "%Jthis is the first default label"
msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò"
-#: c-common.c:4210
-msgid "ISO C++ forbids taking the address of a label"
+#: c-common.c:4039
+msgid "taking the address of a label is non-standard"
+msgstr ""
+
+#: c-common.c:4085
+msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
+
+#: c-common.c:4090
+msgid "%Hignoring return value of function declared with attribute warn_unused_result"
msgstr ""
-#: c-common.c:4212
-msgid "ISO C forbids taking the address of a label"
+#. SW_PARAM
+#: c-common.c:4297
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a parameter"
+msgstr "Ç ëåéôïõñãßá äåí õðïóôçñßæåôáé"
+
+#. SW_LOCAL
+#: c-common.c:4298
+#, c-format
+msgid "declaration of \"%s\" shadows a previous local"
msgstr ""
-#: c-common.c:5235
+#. SW_GLOBAL
+#: c-common.c:4299
#, c-format
-msgid "declaration of `%s' shadows %s"
+msgid "declaration of \"%s\" shadows a global declaration"
+msgstr ""
+
+#: c-common.c:4303
+msgid "%Jshadowed declaration is here"
msgstr ""
-#: c-common.c:5654
+#: c-common.c:4686
#, fuzzy, c-format
msgid "unknown machine mode `%s'"
msgstr "Üãíùóôï óåô `%s'"
-#: c-common.c:5657
+#: c-common.c:4689
#, fuzzy, c-format
msgid "no data type for mode `%s'"
msgstr "äåí ïñßóôçêå âáñýôçôá ãéá ôï óýìâïëï `%s'"
-#: c-common.c:5666 c-common.c:6316
+#: c-common.c:4693
+#, fuzzy, c-format
+msgid "invalid pointer mode `%s'"
+msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
+
+#: c-common.c:4700 c-common.c:5263
#, fuzzy, c-format
msgid "unable to emulate '%s'"
msgstr "Äåí ìðüñåóá íá áíïßîù ôï áñ÷åßï %s"
-#: c-common.c:5702
-msgid "section attribute cannot be specified for local variables"
-msgstr ""
+#: c-common.c:4744
+#, fuzzy
+msgid "%Jsection attribute cannot be specified for local variables"
+msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
-#: c-common.c:5713
-#, c-format
-msgid "section of `%s' conflicts with previous declaration"
-msgstr ""
+#: c-common.c:4755
+#, fuzzy
+msgid "%Jsection of '%D' conflicts with previous declaration"
+msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò"
-#: c-common.c:5722
-#, c-format
-msgid "section attribute not allowed for `%s'"
-msgstr ""
+#: c-common.c:4764
+#, fuzzy
+msgid "%Jsection attribute not allowed for '%D'"
+msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#: c-common.c:5729
+#: c-common.c:4770
#, fuzzy
-msgid "section attributes are not supported for this target"
+msgid "%Jsection attributes are not supported for this target"
msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
-#: c-common.c:5771
+#: c-common.c:4808
msgid "requested alignment is not a constant"
msgstr ""
-#: c-common.c:5776
+#: c-common.c:4813
msgid "requested alignment is not a power of 2"
msgstr ""
-#: c-common.c:5781
+#: c-common.c:4818
#, fuzzy
msgid "requested alignment is too large"
msgstr "ÊáêÞ áßôçóç ðáñáìÝôñùí"
-#: c-common.c:5808
-#, fuzzy, c-format
-msgid "alignment may not be specified for `%s'"
+#: c-common.c:4844
+#, fuzzy
+msgid "%Jalignment may not be specified for '%D'"
msgstr "ìüíï Ýíá üñéóìá ìðïñåß íá äçëùèåß"
-#: c-common.c:5853
-#, c-format
-msgid "`%s' defined both normally and as an alias"
+#: c-common.c:4882
+msgid "%J'%D' defined both normally and as an alias"
msgstr ""
-#: c-common.c:5863
+#: c-common.c:4892
msgid "alias arg not a string"
msgstr ""
-#: c-common.c:5910
+#: c-common.c:4935
msgid "visibility arg not a string"
msgstr ""
-#: c-common.c:5919
+#: c-common.c:4948
msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\""
msgstr ""
-#: c-common.c:5953
+#: c-common.c:4974
msgid "tls_model arg not a string"
msgstr ""
-#: c-common.c:5962
+#: c-common.c:4983
msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\""
msgstr ""
-#: c-common.c:5987 c-common.c:6043
-#, c-format
-msgid "`%s' attribute applies only to functions"
+#: c-common.c:5005 c-common.c:5051
+msgid "%J'%E' attribute applies only to functions"
msgstr ""
-#: c-common.c:5994 c-common.c:6050
-#, fuzzy, c-format
-msgid "can't set `%s' attribute after definition"
-msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò"
-
-#: c-common.c:6114
-#, fuzzy
-msgid "cleanup arg not an identifier"
-msgstr "äéðëüò ðñïóäéïñéóôÞò ìçíýìáôïò"
-
-#: c-common.c:6121
+#: c-common.c:5010 c-common.c:5056
#, fuzzy
-msgid "cleanup arg not a function"
-msgstr "Ôï åðþíõìï áíôéêåßìåíï äåí åßíáé áíáæçôÞóéìï"
+msgid "%Jcan't set '%E' attribute after definition"
+msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò"
-#: c-common.c:6183
+#: c-common.c:5132
#, fuzzy, c-format
msgid "`%s' attribute ignored for `%s'"
msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#: c-common.c:6248
+#: c-common.c:5195
#, fuzzy, c-format
msgid "invalid vector type for attribute `%s'"
msgstr "ìç Ýãêõñï åßäïò áëöáñéèìçôéêïý `%s'"
-#: c-common.c:6272 c-common.c:6304
+#: c-common.c:5219 c-common.c:5251
msgid "no vector mode with the size and type specified could be found"
msgstr ""
-#: c-common.c:6403
+#: c-common.c:5353
msgid "nonnull attribute without arguments on a non-prototype"
msgstr ""
-#: c-common.c:6418
+#: c-common.c:5368
#, c-format
msgid "nonnull argument has invalid operand number (arg %lu)"
msgstr ""
-#: c-common.c:6437
+#: c-common.c:5387
#, c-format
msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)"
msgstr ""
-#: c-common.c:6445
+#: c-common.c:5395
#, c-format
msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)"
msgstr ""
-#: c-common.c:6531
+#: c-common.c:5475
#, c-format
msgid "null argument where non-null required (arg %lu)"
msgstr ""
-#: c-convert.c:80 c-typeck.c:988 c-typeck.c:4059 cp/typeck.c:1615
-#: cp/typeck.c:5939
-msgid "void value not ignored as it ought to be"
-msgstr ""
+#: c-common.c:5546
+#, fuzzy
+msgid "cleanup arg not an identifier"
+msgstr "äéðëüò ðñïóäéïñéóôÞò ìçíýìáôïò"
-#: c-convert.c:112 java/typeck.c:150
-msgid "conversion to non-scalar type requested"
-msgstr ""
+#: c-common.c:5553
+#, fuzzy
+msgid "cleanup arg not a function"
+msgstr "Ôï åðþíõìï áíôéêåßìåíï äåí åßíáé áíáæçôÞóéìï"
-#: c-decl.c:340
+#: c-common.c:5914
#, c-format
-msgid "array `%s' assumed to have one element"
-msgstr ""
+msgid "%s at end of input"
+msgstr "%s óôï ôÝëïò ôçò åéóüäïõ"
-#: c-decl.c:526
+#: c-common.c:5920
#, c-format
-msgid "`struct %s' incomplete in scope ending here"
-msgstr ""
+msgid "%s before %s'%c'"
+msgstr "%s ðñéí áðü %s'%c'"
-#: c-decl.c:529
+#: c-common.c:5922
#, c-format
-msgid "`union %s' incomplete in scope ending here"
-msgstr ""
+msgid "%s before %s'\\x%x'"
+msgstr "%s ðñéí áðü %s'\\x%x'"
-#: c-decl.c:532
-#, c-format
-msgid "`enum %s' incomplete in scope ending here"
-msgstr ""
+#: c-common.c:5926
+#, fuzzy, c-format
+msgid "%s before string constant"
+msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò"
-#: c-decl.c:646 c-decl.c:771 java/decl.c:1403
+#: c-common.c:5928
#, c-format
-msgid "label `%s' used but not defined"
-msgstr ""
+msgid "%s before numeric constant"
+msgstr "%s ðñéí áðü áñéèìçôéêÞ óôáèåñÜ"
-#: c-decl.c:652 c-decl.c:778 java/decl.c:1409
+# src/request.c:37
+#: c-common.c:5930
#, c-format
-msgid "label `%s' defined but not used"
-msgstr ""
+msgid "%s before \"%s\""
+msgstr "%s ðñéí áðü \"%s\""
-#: c-decl.c:893 cp/decl.c:3335
+#: c-common.c:5932
#, c-format
-msgid "function `%s' redeclared as inline"
-msgstr ""
+msgid "%s before '%s' token"
+msgstr "%s ðñéí áðü ôï óýìâïëï '%s'"
-#: c-decl.c:895 cp/decl.c:3337
+#. Use `%s' to print the string in case there are any escape
+#. characters in the message.
+#: c-common.c:5934 c-typeck.c:2578 c-typeck.c:3970 c-typeck.c:3985
+#: c-typeck.c:4000 final.c:2776 final.c:2778 gcc.c:4574 rtl-error.c:109
+#: toplev.c:1340 config/cris/cris.c:545 cp/parser.c:1848 cp/typeck.c:4111
+#: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472
#, c-format
-msgid "previous declaration of function `%s' with attribute noinline"
-msgstr ""
+msgid "%s"
+msgstr "%s"
-#: c-decl.c:902 cp/decl.c:3344
-#, c-format
-msgid "function `%s' redeclared with attribute noinline"
+#: c-convert.c:82 c-typeck.c:1193 c-typeck.c:3410 cp/typeck.c:1337
+#: cp/typeck.c:5648 treelang/tree-convert.c:79
+msgid "void value not ignored as it ought to be"
msgstr ""
-#: c-decl.c:904 cp/decl.c:3346
-#, c-format
-msgid "previous declaration of function `%s' was inline"
+#: c-convert.c:114 java/typeck.c:148 treelang/tree-convert.c:105
+msgid "conversion to non-scalar type requested"
msgstr ""
-#: c-decl.c:933 c-decl.c:979
-#, c-format
-msgid "shadowing built-in function `%s'"
+#: c-decl.c:371
+msgid "%Jarray '%D' assumed to have one element"
msgstr ""
-#: c-decl.c:935
-#, c-format
-msgid "shadowing library function `%s'"
-msgstr ""
+#: c-decl.c:580
+#, fuzzy
+msgid "%Jlabel `%D' used but not defined"
+msgstr "áüñéóôï"
-#: c-decl.c:941
-#, c-format
-msgid "library function `%s' declared as non-function"
+#: c-decl.c:586
+msgid "%Jlabel `%D' defined but not used"
msgstr ""
-#: c-decl.c:945 c-decl.c:948
-#, c-format
-msgid "built-in function `%s' declared as non-function"
-msgstr ""
+#: c-decl.c:588
+#, fuzzy
+msgid "%Jlabel `%D' declared but not defined"
+msgstr "áüñéóôï"
-#: c-decl.c:952 objc/objc-act.c:2384 objc/objc-act.c:6154
-#, c-format
-msgid "`%s' redeclared as different kind of symbol"
-msgstr ""
+#: c-decl.c:613
+#, fuzzy
+msgid "%Junused variable `%D'"
+msgstr "á÷ñçóéìïðïßçôç ìåôáâëçôÞ `%s'"
-#: c-decl.c:953 c-decl.c:1144 c-decl.c:1158 c-decl.c:1165 c-decl.c:1310
-#: objc/objc-act.c:2386 objc/objc-act.c:6156 objc/objc-act.c:6211
-#, c-format
-msgid "previous declaration of `%s'"
+#: c-decl.c:821
+msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
msgstr ""
-#. If types don't match for a built-in, throw away the built-in.
-#: c-decl.c:1048
-#, c-format
-msgid "conflicting types for built-in function `%s'"
+#: c-decl.c:828
+msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
msgstr ""
-#: c-decl.c:1091 c-decl.c:1110
-#, fuzzy, c-format
-msgid "conflicting types for `%s'"
-msgstr "ìç Ýãêõñï åßäïò áëöáñéèìçôéêïý `%s'"
-
-#: c-decl.c:1133
-msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
+#: c-decl.c:864
+msgid "%Jprototype for '%D' declares more arguments than previous old-style definition"
msgstr ""
-#: c-decl.c:1139
-msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
+#: c-decl.c:870
+msgid "%Jprototype for '%D' declares fewer arguments than previous old-style definition"
msgstr ""
-#: c-decl.c:1157
-#, c-format
-msgid "thread-local declaration of `%s' follows non thread-local declaration"
+#: c-decl.c:879
+msgid "%Jprototype for '%D' declares arg %d with incompatible type"
msgstr ""
-#: c-decl.c:1164
-#, c-format
-msgid "non thread-local declaration of `%s' follows thread-local declaration"
+#. If we get here, no errors were found, but do issue a warning
+#. for this poor-style construct.
+#: c-decl.c:891
+msgid "%Jprototype for '%D' follows non-prototype definition"
msgstr ""
-#: c-decl.c:1175 c-decl.c:1198
-#, fuzzy, c-format
-msgid "redefinition of `%s'"
+#: c-decl.c:906
+#, fuzzy
+msgid "%Jprevious definition of '%D' was here"
msgstr "êáíÝíáò ïñéóìüò ôïõ `UNDEFINED'"
-#: c-decl.c:1178
-#, fuzzy, c-format
-msgid "redeclaration of `%s'"
-msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n"
+#: c-decl.c:908
+#, fuzzy
+msgid "%Jprevious implicit declaration of '%D' was here"
+msgstr "ðñïçãïýìåíç áõôïíüçôç äéáêýñçîç ôïõ `%s'"
-#: c-decl.c:1181
-#, c-format
-msgid "conflicting declarations of `%s'"
-msgstr ""
+#: c-decl.c:910
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was here"
+msgstr "ðñïçãïýìåíç áõôïíüçôç äéáêýñçîç ôïõ `%s'"
-#: c-decl.c:1225
-#, c-format
-msgid "prototype for `%s' follows"
+#: c-decl.c:944
+msgid "%J'%D' redeclared as different kind of symbol"
msgstr ""
-#: c-decl.c:1226 c-decl.c:1234 c-decl.c:1245
-msgid "non-prototype definition here"
+#: c-decl.c:949
+msgid "%Jbuilt-in function '%D' declared as non-function"
msgstr ""
-#: c-decl.c:1233
-#, c-format
-msgid "prototype for `%s' follows and number of arguments doesn't match"
-msgstr ""
+#: c-decl.c:952 c-decl.c:1042
+#, fuzzy
+msgid "%Jshadowing built-in function '%D'"
+msgstr "áäõíáìßá åêôÝëåóçò ioctl óôï `%s'"
-#: c-decl.c:1243
-#, c-format
-msgid "prototype for `%s' follows and argument %d doesn't match"
-msgstr ""
+#. If types don't match for a built-in, throw away the
+#. built-in. No point in calling locate_old_decl here, it
+#. won't print anything.
+#: c-decl.c:972
+#, fuzzy
+msgid "%Jconflicting types for built-in function '%D'"
+msgstr "ìç Ýãêõñï åßäïò áëöáñéèìçôéêïý `%s'"
-#: c-decl.c:1261
-#, c-format
-msgid "`%s' declared inline after being called"
-msgstr ""
+#: c-decl.c:996 c-decl.c:1004
+#, fuzzy
+msgid "%Jconflicting types for '%D'"
+msgstr "ìç Ýãêõñï åßäïò áëöáñéèìçôéêïý `%s'"
-#: c-decl.c:1267
-#, fuzzy, c-format
-msgid "`%s' declared inline after its definition"
-msgstr "%s: äéðëüò ïñéóìüò Ýêäïóçò êáôçãïñßáò"
+#. allow OLDDECL to continue in use
+#: c-decl.c:1019
+#, fuzzy
+msgid "%Jredefinition of typedef '%D'"
+msgstr "êáíÝíáò ïñéóìüò ôïõ `UNDEFINED'"
-#: c-decl.c:1274
-#, c-format
-msgid "static declaration for `%s' follows non-static"
-msgstr ""
+#: c-decl.c:1055 c-decl.c:1119
+#, fuzzy
+msgid "%Jredefinition of '%D'"
+msgstr "êáíÝíáò ïñéóìüò ôïõ `UNDEFINED'"
-#: c-decl.c:1282
-#, c-format
-msgid "non-static declaration for `%s' follows static"
+#: c-decl.c:1086 c-decl.c:1136
+msgid "%Jstatic declaration of '%D' follows non-static declaration"
msgstr ""
-#: c-decl.c:1289
-#, c-format
-msgid "const declaration for `%s' follows non-const"
+#: c-decl.c:1094 c-decl.c:1133
+msgid "%Jnon-static declaration of '%D' follows static declaration"
msgstr ""
-#: c-decl.c:1296
-#, c-format
-msgid "type qualifiers for `%s' conflict with previous decl"
+#: c-decl.c:1106
+msgid "%Jthread-local declaration of '%D' follows non-thread-local declaration"
msgstr ""
-#: c-decl.c:1309
-#, c-format
-msgid "redundant redeclaration of `%s' in same scope"
+#: c-decl.c:1109
+msgid "%Jnon-thread-local declaration of '%D' follows thread-local declaration"
msgstr ""
-#: c-decl.c:1619 java/decl.c:1102
-#, c-format
-msgid "declaration of `%s' shadows a parameter"
+#: c-decl.c:1149
+msgid "%Jextern declaration of '%D' follows declaration with no linkage"
msgstr ""
-#: c-decl.c:1622 java/decl.c:1105
-#, c-format
-msgid "declaration of `%s' shadows a symbol from the parameter list"
+#: c-decl.c:1152
+msgid "%Jdeclaration of '%D' with no linkage follows extern declaration"
msgstr ""
-#: c-decl.c:1643 cp/decl.c:4479
+#: c-decl.c:1155
#, fuzzy
-msgid "a parameter"
-msgstr "êáêü üñéóìá"
+msgid "%Jredeclaration of '%D' with no linkage"
+msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n"
-#: c-decl.c:1645 cp/decl.c:4496
-msgid "a previous local"
+#: c-decl.c:1169
+msgid "%Jredeclaration of '%D' with different visibility (old visibility preserved)"
msgstr ""
-#. XXX shadow warnings in outer-more namespaces
-#: c-decl.c:1649 cp/decl.c:4500
-msgid "a global declaration"
+#: c-decl.c:1180
+msgid "%Jinline declaration of '%D' follows declaration with attribute noinline"
msgstr ""
-#: c-decl.c:1693
-#, c-format
-msgid "nested extern declaration of `%s'"
+#: c-decl.c:1187
+msgid "%Jdeclaration of '%D' with attribute noinline follows inline declaration "
msgstr ""
-#: c-decl.c:1712 java/decl.c:1055
-#, c-format
-msgid "`%s' used prior to declaration"
+#: c-decl.c:1199
+#, fuzzy
+msgid "%J'%D' declared inline after being called"
+msgstr "%s: äéðëüò ïñéóìüò Ýêäïóçò êáôçãïñßáò"
+
+#: c-decl.c:1205
+#, fuzzy
+msgid "%J'%D' declared inline after its definition"
+msgstr "%s: äéðëüò ïñéóìüò Ýêäïóçò êáôçãïñßáò"
+
+#: c-decl.c:1217
+msgid "%Jvolatile declaration of '%D' follows non-volatile declaration"
msgstr ""
-#: c-decl.c:1726 c-decl.c:1901
-#, c-format
-msgid "`%s' was declared implicitly `extern' and later `static'"
+#: c-decl.c:1220
+msgid "%Jnon-volatile declaration of '%D' follows volatile declaration"
msgstr ""
-#: c-decl.c:1829 cp/decl.c:4336
-msgid "type mismatch with previous external decl"
+#: c-decl.c:1227
+msgid "%Jconst declaration of '%D' follows non-const declaration"
msgstr ""
-#: c-decl.c:1830
-#, c-format
-msgid "previous external decl of `%s'"
+#: c-decl.c:1230
+msgid "%Jnon-const declaration of '%D' follows const declaration"
msgstr ""
-#: c-decl.c:1843
-msgid "type mismatch with previous implicit declaration"
-msgstr "óöÜëìá ôáéñéÜóìáôïò ôýðïõ ìå ðñïçãïýìåíç áõôïíüçôç äéáêýñçîç"
+#: c-decl.c:1246
+#, fuzzy
+msgid "%Jredundant redeclaration of '%D'"
+msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: c-decl.c:1845
+#: c-decl.c:1690
#, c-format
-msgid "previous implicit declaration of `%s'"
+msgid "nested extern declaration of `%s'"
+msgstr ""
+
+#: c-decl.c:1829 objc/objc-act.c:2534 objc/objc-act.c:6793
+#, fuzzy
+msgid "%Jprevious declaration of '%D'"
msgstr "ðñïçãïýìåíç áõôïíüçôç äéáêýñçîç ôïõ `%s'"
-#: c-decl.c:1880
+#: c-decl.c:1870 c-decl.c:1872
#, c-format
-msgid "`%s' was previously implicitly declared to return `int'"
-msgstr ""
+msgid "implicit declaration of function `%s'"
+msgstr "áõôïíüçôç äéáêýñçîç ôçò óõíÜñôçóçò `%s'"
-#: c-decl.c:1905
+#: c-decl.c:1888
#, c-format
-msgid "`%s' was declared `extern' and later `static'"
+msgid "`%s' undeclared here (not in a function)"
msgstr ""
-#: c-decl.c:1929
+#: c-decl.c:1894
#, c-format
-msgid "extern declaration of `%s' doesn't match global one"
+msgid "`%s' undeclared (first use in this function)"
msgstr ""
-#: c-decl.c:1971
-#, c-format
-msgid "`%s' locally external but globally static"
+#: c-decl.c:1899
+msgid "(Each undeclared identifier is reported only once"
msgstr ""
-#: c-decl.c:2095
-#, c-format
-msgid "function `%s' was previously declared within a block"
+#: c-decl.c:1900
+msgid "for each function it appears in.)"
msgstr ""
-#: c-decl.c:2115 c-decl.c:2117
-#, c-format
-msgid "implicit declaration of function `%s'"
-msgstr "áõôïíüçôç äéáêýñçîç ôçò óõíÜñôçóçò `%s'"
-
-#: c-decl.c:2196
+#: c-decl.c:1953
#, c-format
msgid "label %s referenced outside of any function"
msgstr ""
-#: c-decl.c:2253
+#: c-decl.c:2000
#, fuzzy, c-format
msgid "duplicate label declaration `%s'"
msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
-#: c-decl.c:2256
+#: c-decl.c:2001
#, fuzzy
-msgid "this is a previous declaration"
+msgid "%Jthis is a previous declaration"
msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò"
-#: c-decl.c:2679
+#: c-decl.c:2036
+#, fuzzy
+msgid "%Hduplicate label `%D'"
+msgstr "äéðëü êëåéäß"
+
+#: c-decl.c:2038
+#, fuzzy
+msgid "%J`%D' previously defined here"
+msgstr "Äåí õðÜñ÷åé ðñïçãïýìåíç êáíïíéêÞ Ýêöñáóç"
+
+#: c-decl.c:2040
+#, fuzzy
+msgid "%J`%D' previously declared here"
+msgstr "Äåí õðÜñ÷åé ðñïçãïýìåíç êáíïíéêÞ Ýêöñáóç"
+
+#: c-decl.c:2060
+msgid "%Htraditional C lacks a separate namespace for labels, identifier `%s' conflicts"
+msgstr ""
+
+#: c-decl.c:2131
+msgid "%H`%s' defined as wrong kind of tag"
+msgstr ""
+
+#: c-decl.c:2369
msgid "unnamed struct/union that defines no instances"
msgstr ""
-#: c-decl.c:2698
+#: c-decl.c:2388
msgid "useless keyword or type name in empty declaration"
msgstr ""
-#: c-decl.c:2705
+#: c-decl.c:2395
msgid "two types specified in one empty declaration"
msgstr ""
-#: c-decl.c:2710 c-parse.y:753 c-parse.y:755 parse.y:766 parse.y:1853
-#: objc-parse.y:799 objc-parse.y:801 objc-parse.y:3042
+#: c-decl.c:2400 c-parse.y:735 c-parse.y:737 objc/objc-parse.y:776
+#: objc/objc-parse.y:778 objc/objc-parse.y:3016
#, fuzzy
msgid "empty declaration"
msgstr "êåíü áëöáñéèìçôéêü"
-#: c-decl.c:2740
+#: c-decl.c:2426
msgid "ISO C90 does not support `static' or type qualifiers in parameter array declarators"
msgstr ""
-#: c-decl.c:2742
+#: c-decl.c:2428
msgid "ISO C90 does not support `[*]' array declarators"
msgstr ""
-#: c-decl.c:2745
+#: c-decl.c:2431
msgid "GCC does not yet properly implement `[*]' array declarators"
msgstr ""
-#: c-decl.c:2764
+#: c-decl.c:2447
msgid "static or type qualifiers in abstract declarator"
msgstr ""
-#: c-decl.c:2838
-#, c-format
-msgid "`%s' is usually a function"
-msgstr ""
+#: c-decl.c:2517
+#, fuzzy
+msgid "%J'%D' is usually a function"
+msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
-#: c-decl.c:2847
+#: c-decl.c:2526
#, c-format
msgid "typedef `%s' is initialized (use __typeof__ instead)"
msgstr ""
-#: c-decl.c:2853
+#: c-decl.c:2532
#, c-format
msgid "function `%s' is initialized like a variable"
msgstr ""
#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
-#: c-decl.c:2860
+#: c-decl.c:2539
#, c-format
msgid "parameter `%s' is initialized"
msgstr ""
-#: c-decl.c:2880 c-typeck.c:4895
+#: c-decl.c:2559 c-typeck.c:4220
msgid "variable-sized object may not be initialized"
msgstr ""
-#: c-decl.c:2886
+#: c-decl.c:2565
#, c-format
msgid "variable `%s' has initializer but incomplete type"
msgstr ""
-#: c-decl.c:2892
+#: c-decl.c:2571
#, c-format
msgid "elements of array `%s' have incomplete type"
msgstr ""
-#: c-decl.c:2905
-#, c-format
-msgid "declaration of `%s' has `extern' and is initialized"
+#: c-decl.c:2640 c-decl.c:5426 cp/decl.c:3748 cp/decl.c:10156
+msgid "%Jinline function '%D' given attribute noinline"
msgstr ""
-#: c-decl.c:2954 c-decl.c:5828 cp/decl.c:7760 cp/decl.c:14339
-#, c-format
-msgid "inline function `%s' given attribute noinline"
+#: c-decl.c:2716
+msgid "%Jinitializer fails to determine size of '%D'"
msgstr ""
-#: c-decl.c:3028
-#, c-format
-msgid "initializer fails to determine size of `%s'"
+#: c-decl.c:2721
+#, fuzzy
+msgid "%Jarray size missing in '%D'"
+msgstr "óöÜëìá êáôÜ ôï êëåßóéìï ôçò åéóüäïõ `%s'"
+
+#: c-decl.c:2737
+msgid "%Jzero or negative size array '%D'"
msgstr ""
-#: c-decl.c:3033
-#, fuzzy, c-format
-msgid "array size missing in `%s'"
-msgstr "óöÜëìá êáôÜ ôï êëåßóéìï ôçò åéóüäïõ `%s'"
+#: c-decl.c:2765
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't known"
+msgstr "Ôï üíïìá `%s' åßíáé Üãíùóôï\n"
+
+#: c-decl.c:2775
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't constant"
+msgstr "Ôï üíïìá `%s' åßíáé Üãíùóôï\n"
+
+#: c-decl.c:2858
+msgid "%Jignoring asm-specifier for non-static local variable '%D'"
+msgstr ""
-#: c-decl.c:3049
+#: c-decl.c:2969
+msgid "ISO C forbids forward parameter declarations"
+msgstr ""
+
+#: c-decl.c:3151
+#, fuzzy
+msgid "<anonymous>"
+msgstr "((áíþíõìï))"
+
+#: c-decl.c:3160
#, c-format
-msgid "zero or negative size array `%s'"
+msgid "bit-field `%s' width not an integer constant"
msgstr ""
-#: c-decl.c:3077
+#: c-decl.c:3168
#, fuzzy, c-format
-msgid "storage size of `%s' isn't known"
-msgstr "Ôï üíïìá `%s' åßíáé Üãíùóôï\n"
+msgid "negative width in bit-field `%s'"
+msgstr "Áñíçôéêü ðëÜôïò óôçí áðïôßìçóç"
-#: c-decl.c:3087
+#: c-decl.c:3173
#, c-format
-msgid "storage size of `%s' isn't constant"
+msgid "zero width for bit-field `%s'"
msgstr ""
-#: c-decl.c:3147
+#: c-decl.c:3183
#, c-format
-msgid "ignoring asm-specifier for non-static local variable `%s'"
+msgid "bit-field `%s' has invalid type"
msgstr ""
-#: c-decl.c:3247
+#: c-decl.c:3192
#, c-format
-msgid "ISO C forbids parameter `%s' shadowing typedef"
+msgid "type of bit-field `%s' is a GCC extension"
msgstr ""
-#: c-decl.c:3592 cp/decl.c:10880
+#: c-decl.c:3201
+#, c-format
+msgid "width of `%s' exceeds its type"
+msgstr ""
+
+#: c-decl.c:3211
+#, fuzzy, c-format
+msgid "`%s' is narrower than values of its type"
+msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
+
+#: c-decl.c:3361 cp/decl.c:6778
msgid "`long long long' is too long for GCC"
msgstr ""
-#: c-decl.c:3597
+#: c-decl.c:3366
#, fuzzy
msgid "ISO C90 does not support `long long'"
msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
-#: c-decl.c:3606 c-decl.c:3609 cp/decl.c:10885
+#: c-decl.c:3375 c-decl.c:3378 cp/decl.c:6783
#, fuzzy, c-format
msgid "duplicate `%s'"
msgstr "äéðëü êëåéäß"
-#: c-decl.c:3619 cp/decl.c:10892
+#: c-decl.c:3388 cp/decl.c:6789
msgid "`__thread' before `extern'"
msgstr ""
-#: c-decl.c:3621 cp/decl.c:10894
+#: c-decl.c:3390 cp/decl.c:6791
msgid "`__thread' before `static'"
msgstr ""
-#: c-decl.c:3629 cp/decl.c:10921
+#: c-decl.c:3398 cp/decl.c:6818
#, c-format
msgid "two or more data types in declaration of `%s'"
msgstr ""
-#: c-decl.c:3649 cp/decl.c:10926
+#: c-decl.c:3418 cp/decl.c:6823
#, c-format
msgid "`%s' fails to be a typedef or built in type"
msgstr ""
-#: c-decl.c:3688
+#: c-decl.c:3457
#, c-format
msgid "type defaults to `int' in declaration of `%s'"
msgstr ""
-#: c-decl.c:3717
+#: c-decl.c:3486
#, c-format
msgid "both long and short specified for `%s'"
msgstr ""
-#: c-decl.c:3721 cp/decl.c:11041
+#: c-decl.c:3490 cp/decl.c:6923
#, c-format
msgid "long or short specified with char for `%s'"
msgstr ""
-#: c-decl.c:3728 cp/decl.c:11045
+#: c-decl.c:3497 cp/decl.c:6927
#, c-format
msgid "long or short specified with floating type for `%s'"
msgstr ""
-#: c-decl.c:3731
+#: c-decl.c:3500
msgid "the only valid combination is `long double'"
msgstr ""
-#: c-decl.c:3737
+#: c-decl.c:3506
#, fuzzy, c-format
msgid "both signed and unsigned specified for `%s'"
msgstr "ìç Ýãêõñïò äçëùôÞò ðåäßïõ: `%s'"
-#: c-decl.c:3739 cp/decl.c:11034
+#: c-decl.c:3508 cp/decl.c:6916
#, c-format
msgid "long, short, signed or unsigned invalid for `%s'"
msgstr ""
-#: c-decl.c:3745 cp/decl.c:11054
+#: c-decl.c:3514 cp/decl.c:6936
#, c-format
msgid "long, short, signed or unsigned used invalidly for `%s'"
msgstr ""
-#: c-decl.c:3763 cp/decl.c:11075
+#: c-decl.c:3532 cp/decl.c:6957
#, fuzzy, c-format
msgid "complex invalid for `%s'"
msgstr "Ìç Ýãêõñç ðñïôåñáéüôçôá `%s'"
-#: c-decl.c:3805
+#: c-decl.c:3574
#, fuzzy
msgid "ISO C90 does not support complex types"
msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
-#: c-decl.c:3817
+#: c-decl.c:3586
msgid "ISO C does not support plain `complex' meaning `double complex'"
msgstr ""
-#: c-decl.c:3823 c-decl.c:3835
+#: c-decl.c:3592 c-decl.c:3604
msgid "ISO C does not support complex integer types"
msgstr ""
-#: c-decl.c:3850 c-decl.c:4316 cp/decl.c:11688
+#: c-decl.c:3632 c-decl.c:4090 cp/decl.c:7549
#, fuzzy
msgid "duplicate `const'"
msgstr "äéðëü êëåéäß"
-#: c-decl.c:3852 c-decl.c:4320 cp/decl.c:11692
+#: c-decl.c:3634 c-decl.c:4094 cp/decl.c:7553
#, fuzzy
msgid "duplicate `restrict'"
msgstr "äéðëü êëåéäß"
-#: c-decl.c:3854 c-decl.c:4318 cp/decl.c:11690
+#: c-decl.c:3636 c-decl.c:4092 cp/decl.c:7551
#, fuzzy
msgid "duplicate `volatile'"
msgstr "äéðëü êëåéäß"
-#: c-decl.c:3882 cp/decl.c:11238
+#: c-decl.c:3664 cp/decl.c:7120
#, c-format
msgid "multiple storage classes in declaration of `%s'"
msgstr ""
-#: c-decl.c:3892
+#: c-decl.c:3674
msgid "function definition declared `auto'"
msgstr ""
-#: c-decl.c:3894
+#: c-decl.c:3676
msgid "function definition declared `register'"
msgstr ""
-#: c-decl.c:3896
+#: c-decl.c:3678
msgid "function definition declared `typedef'"
msgstr ""
-#: c-decl.c:3898
+#: c-decl.c:3680
msgid "function definition declared `__thread'"
msgstr ""
-#: c-decl.c:3911
+#: c-decl.c:3693
#, c-format
msgid "storage class specified for structure field `%s'"
msgstr ""
-#: c-decl.c:3915 cp/decl.c:11285
+#: c-decl.c:3697 cp/decl.c:7165
#, c-format
msgid "storage class specified for parameter `%s'"
msgstr ""
-#: c-decl.c:3918 cp/decl.c:11287
+#: c-decl.c:3700 cp/decl.c:7167
msgid "storage class specified for typename"
msgstr ""
-#: c-decl.c:3930 cp/decl.c:11302
+#: c-decl.c:3712 cp/decl.c:7182
#, c-format
msgid "`%s' initialized and declared `extern'"
msgstr ""
-#: c-decl.c:3932 cp/decl.c:11305
+#: c-decl.c:3714 cp/decl.c:7185
#, c-format
msgid "`%s' has both `extern' and initializer"
msgstr ""
-#: c-decl.c:3937 cp/decl.c:11313
+#: c-decl.c:3719
#, c-format
-msgid "top-level declaration of `%s' specifies `auto'"
+msgid "file-scope declaration of `%s' specifies `auto'"
msgstr ""
-#: c-decl.c:3942 cp/decl.c:11309
+#: c-decl.c:3724 cp/decl.c:7189
#, c-format
msgid "nested function `%s' declared `extern'"
msgstr ""
-#: c-decl.c:3948 cp/decl.c:11319
+#: c-decl.c:3730 cp/decl.c:7199
#, c-format
msgid "function-scope `%s' implicitly auto and declared `__thread'"
msgstr ""
@@ -1084,1416 +1139,1368 @@ msgstr ""
#. Only the innermost declarator (making a parameter be of
#. array type which is converted to pointer type)
#. may have static or type qualifiers.
-#: c-decl.c:3987 c-decl.c:4188
+#: c-decl.c:3769 c-decl.c:3962
msgid "static or type qualifiers in non-parameter array declarator"
msgstr ""
-#: c-decl.c:4031
+#: c-decl.c:3813
#, c-format
msgid "declaration of `%s' as array of voids"
msgstr ""
-#: c-decl.c:4037
+#: c-decl.c:3819
#, c-format
msgid "declaration of `%s' as array of functions"
msgstr ""
-#: c-decl.c:4042 c-decl.c:5332
+#: c-decl.c:3824
#, fuzzy
msgid "invalid use of structure with flexible array member"
msgstr "ìç Ýãêõñç þñá ôçò ìÝñáò"
-#: c-decl.c:4061
+#: c-decl.c:3843
#, c-format
msgid "size of array `%s' has non-integer type"
msgstr ""
-#: c-decl.c:4066
+#: c-decl.c:3848
#, c-format
msgid "ISO C forbids zero-size array `%s'"
msgstr ""
-#: c-decl.c:4073
+#: c-decl.c:3855
#, c-format
msgid "size of array `%s' is negative"
msgstr ""
-#: c-decl.c:4086
+#: c-decl.c:3868
#, c-format
msgid "ISO C90 forbids array `%s' whose size can't be evaluated"
msgstr ""
-#: c-decl.c:4089
+#: c-decl.c:3871
#, c-format
msgid "ISO C90 forbids variable-size array `%s'"
msgstr ""
-#: c-decl.c:4119 c-decl.c:4342 cp/decl.c:11897
+#: c-decl.c:3901 c-decl.c:4116 cp/decl.c:7723
#, fuzzy, c-format
msgid "size of array `%s' is too large"
msgstr "Ï êáôÜëïãïò `%s' äåí åßíáé ðñïóéôüò."
-#: c-decl.c:4145
+#: c-decl.c:3927
#, fuzzy
msgid "ISO C90 does not support flexible array members"
msgstr "ìç Ýãêõñç þñá ôçò ìÝñáò"
-#: c-decl.c:4155
+#: c-decl.c:3937
msgid "array type has incomplete element type"
msgstr ""
-#: c-decl.c:4162 c-decl.c:4392
-msgid "ISO C forbids const or volatile function types"
-msgstr ""
-
-#: c-decl.c:4208 cp/decl.c:11445
+#: c-decl.c:3982 cp/decl.c:7320
#, c-format
msgid "`%s' declared as function returning a function"
msgstr ""
-#: c-decl.c:4213 cp/decl.c:11450
+#: c-decl.c:3987 cp/decl.c:7325
#, c-format
msgid "`%s' declared as function returning an array"
msgstr ""
-#: c-decl.c:4241
+#: c-decl.c:4015
msgid "ISO C forbids qualified void function return type"
msgstr ""
-#: c-decl.c:4245
+#: c-decl.c:4019
msgid "type qualifiers ignored on function return type"
msgstr ""
-#: c-decl.c:4274 c-decl.c:4357 c-decl.c:4481 c-decl.c:4573
+#: c-decl.c:4048 c-decl.c:4131 c-decl.c:4255 c-decl.c:4341
msgid "ISO C forbids qualified function types"
msgstr ""
-#: c-decl.c:4314 cp/decl.c:11684
+#: c-decl.c:4088 cp/decl.c:7545
msgid "invalid type modifier within pointer declarator"
msgstr ""
-#: c-decl.c:4412 cp/decl.c:12182
+#: c-decl.c:4166
+msgid "ISO C forbids const or volatile function types"
+msgstr ""
+
+#: c-decl.c:4186 cp/decl.c:8005
#, c-format
msgid "variable or field `%s' declared void"
msgstr ""
-#: c-decl.c:4445
+#: c-decl.c:4219
msgid "attributes in parameter array declarator ignored"
msgstr ""
-#: c-decl.c:4470
+#: c-decl.c:4244
msgid "invalid type modifier within array declarator"
msgstr ""
-#: c-decl.c:4515
+#: c-decl.c:4289
#, c-format
msgid "field `%s' declared as a function"
msgstr ""
-#: c-decl.c:4521
+#: c-decl.c:4295
#, c-format
msgid "field `%s' has incomplete type"
msgstr ""
-#: c-decl.c:4553 c-decl.c:4555 c-decl.c:4557 c-decl.c:4564
+#: c-decl.c:4321 c-decl.c:4323 c-decl.c:4325 c-decl.c:4332
#, fuzzy, c-format
msgid "invalid storage class for function `%s'"
msgstr "ìç Ýãêõñç ôÜîç ÷áñáêôÞñùí `%s'"
-#: c-decl.c:4579
+#: c-decl.c:4347
msgid "`noreturn' function returns non-void value"
msgstr ""
-#: c-decl.c:4594
+#: c-decl.c:4362
#, fuzzy
msgid "cannot inline function `main'"
msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï áñ÷åßï fifo `%s'"
-#: c-decl.c:4649
-#, c-format
-msgid "variable `%s' declared `inline'"
+#: c-decl.c:4415
+msgid "variable previously declared `static' redeclared `extern'"
+msgstr ""
+
+#: c-decl.c:4424
+msgid "%Jvariable '%D' declared `inline'"
msgstr ""
#. A mere warning is sure to result in improper semantics
#. at runtime. Don't bother to allow this to compile.
-#: c-decl.c:4677 cp/decl.c:9951
+#: c-decl.c:4452 cp/decl.c:5877
#, fuzzy
msgid "thread-local storage not supported for this target"
msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
-#: c-decl.c:4732 c-decl.c:5880
+#: c-decl.c:4513 c-decl.c:5470
msgid "function declaration isn't a prototype"
msgstr ""
-#: c-decl.c:4738
+#: c-decl.c:4519
msgid "parameter names (without types) in function declaration"
msgstr ""
-#: c-decl.c:4770 c-decl.c:6250
+#: c-decl.c:4547
#, c-format
msgid "parameter `%s' has incomplete type"
msgstr ""
-#: c-decl.c:4773
+#: c-decl.c:4550
#, fuzzy
msgid "parameter has incomplete type"
msgstr "ìç ðëÞñçò åããñáöÞ"
-#: c-decl.c:4794
-#, c-format
-msgid "parameter `%s' points to incomplete type"
-msgstr ""
-
-#: c-decl.c:4797
-msgid "parameter points to incomplete type"
-msgstr ""
-
-#: c-decl.c:4862
-#, c-format
-msgid "parameter `%s' has just a forward declaration"
-msgstr ""
-
-#: c-decl.c:4903
-msgid "`void' in parameter list must be the entire list"
-msgstr ""
-
-#: c-decl.c:4934
-#, c-format
-msgid "`struct %s' declared inside parameter list"
-msgstr ""
-
-#: c-decl.c:4937
-#, c-format
-msgid "`union %s' declared inside parameter list"
+#: c-decl.c:4599
+msgid "\"void\" as only parameter may not be qualified"
msgstr ""
-#: c-decl.c:4940
-#, c-format
-msgid "`enum %s' declared inside parameter list"
+#: c-decl.c:4620
+msgid "\"void\" must be the only parameter"
msgstr ""
-#: c-decl.c:4947
-msgid "anonymous struct declared inside parameter list"
+#: c-decl.c:4637
+msgid "%Jparameter \"%D\" has just a forward declaration"
msgstr ""
-#: c-decl.c:4949
-msgid "anonymous union declared inside parameter list"
-msgstr ""
+#. The first %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4665
+#, fuzzy, c-format
+msgid "\"%s %s\" declared inside parameter list"
+msgstr "óõíå÷ßæåôáé óôï ôìÞìá"
-#: c-decl.c:4951
-msgid "anonymous enum declared inside parameter list"
-msgstr ""
+#. The %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4669
+#, fuzzy, c-format
+msgid "anonymous %s declared inside parameter list"
+msgstr "óõíå÷ßæåôáé óôï ôìÞìá"
-#: c-decl.c:4955
+#: c-decl.c:4673
msgid "its scope is only this definition or declaration, which is probably not what you want"
msgstr ""
-#: c-decl.c:5032
+#: c-decl.c:4758
#, fuzzy, c-format
msgid "redefinition of `union %s'"
msgstr "Ïé ïñéóìïß ðçãÞ âñßóêïíôáé óôï ÁÑ×ÅÉÏ"
-#: c-decl.c:5034
+#: c-decl.c:4760
#, c-format
msgid "redefinition of `struct %s'"
msgstr ""
-#: c-decl.c:5105 cp/decl.c:7532
+#: c-decl.c:4828 cp/decl.c:3521
msgid "declaration does not declare anything"
msgstr ""
-#: c-decl.c:5169 c-decl.c:5172
+#: c-decl.c:4873 c-decl.c:4889
+#, fuzzy
+msgid "%Jduplicate member '%D'"
+msgstr "äéðëüò áñéèìüò ìçíýìáôïò"
+
+#: c-decl.c:4923 c-decl.c:4926
#, fuzzy, c-format
msgid "%s defined inside parms"
msgstr "óõíå÷ßæåôáé óôï ôìÞìá"
-#: c-decl.c:5170 c-decl.c:5173 c-decl.c:5184
+#: c-decl.c:4924 c-decl.c:4927 c-decl.c:4938
msgid "union"
msgstr "Ýíùóç"
-#: c-decl.c:5170 c-decl.c:5173
+#: c-decl.c:4924 c-decl.c:4927
msgid "structure"
msgstr "äïìÞ"
# src/request.c:37
-#: c-decl.c:5183
+#: c-decl.c:4937
#, fuzzy, c-format
msgid "%s has no %s"
msgstr "%s óå %s"
-#: c-decl.c:5184
+#: c-decl.c:4938
msgid "struct"
msgstr "äïìÞ"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "named members"
msgstr "åðþíõìá ìÝëç"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "members"
msgstr "ìÝëç"
-#: c-decl.c:5224
+#: c-decl.c:4978
#, fuzzy, c-format
msgid "nested redefinition of `%s'"
msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïñéóìïý locale `%s'"
-#: c-decl.c:5237
-#, c-format
-msgid "bit-field `%s' width not an integer constant"
-msgstr ""
-
-#: c-decl.c:5248
-#, c-format
-msgid "bit-field `%s' has invalid type"
-msgstr ""
-
-#: c-decl.c:5260
-#, c-format
-msgid "bit-field `%s' type invalid in ISO C"
-msgstr ""
-
-#: c-decl.c:5271
-#, fuzzy, c-format
-msgid "negative width in bit-field `%s'"
-msgstr "Áñíçôéêü ðëÜôïò óôçí áðïôßìçóç"
-
-#: c-decl.c:5273
-#, c-format
-msgid "width of `%s' exceeds its type"
-msgstr ""
-
-#: c-decl.c:5275
-#, c-format
-msgid "zero width for bit-field `%s'"
-msgstr ""
-
-#: c-decl.c:5289
-#, fuzzy, c-format
-msgid "`%s' is narrower than values of its type"
-msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-
-#: c-decl.c:5323
-msgid "flexible array member in union"
-msgstr ""
+#: c-decl.c:4998
+#, fuzzy
+msgid "%Jflexible array member in union"
+msgstr "ìç Ýãêõñç þñá ôçò ìÝñáò"
-#: c-decl.c:5325
-msgid "flexible array member not at end of struct"
+#: c-decl.c:5000
+msgid "%Jflexible array member not at end of struct"
msgstr ""
-#: c-decl.c:5327
-msgid "flexible array member in otherwise empty struct"
+#: c-decl.c:5002
+msgid "%Jflexible array member in otherwise empty struct"
msgstr ""
-#: c-decl.c:5357
-#, fuzzy, c-format
-msgid "duplicate member `%s'"
-msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
+#: c-decl.c:5007
+#, fuzzy
+msgid "%Jinvalid use of structure with flexible array member"
+msgstr "ìç Ýãêõñç þñá ôçò ìÝñáò"
-#: c-decl.c:5448
+#: c-decl.c:5102
msgid "union cannot be made transparent"
msgstr ""
#. This enum is a named one that has been declared already.
-#: c-decl.c:5558
+#: c-decl.c:5171
#, c-format
msgid "redeclaration of `enum %s'"
msgstr ""
-#: c-decl.c:5592
+#: c-decl.c:5202
#, fuzzy
msgid "enum defined inside parms"
msgstr "Ìç ïñéóìÝíï üíïìá %s"
-#: c-decl.c:5625
+#: c-decl.c:5235
msgid "enumeration values exceed range of largest integer"
msgstr ""
-#: c-decl.c:5734
+#: c-decl.c:5338
#, c-format
msgid "enumerator value for `%s' not integer constant"
msgstr ""
-#: c-decl.c:5747
+#: c-decl.c:5351
msgid "overflow in enumeration values"
msgstr ""
-#: c-decl.c:5752
+#: c-decl.c:5356
msgid "ISO C restricts enumerator values to range of `int'"
msgstr ""
-#: c-decl.c:5834
+#: c-decl.c:5432
msgid "return type is an incomplete type"
msgstr ""
-#: c-decl.c:5842
+#: c-decl.c:5440
msgid "return type defaults to `int'"
msgstr "ï åðéóôñåöüìåíïò ôýðïò ðñïêáèïñßæåôáé óå `int'"
-#: c-decl.c:5889
-#, c-format
-msgid "no previous prototype for `%s'"
-msgstr ""
+#: c-decl.c:5476
+#, fuzzy
+msgid "%Jno previous prototype for '%D'"
+msgstr "äéáôÞñçóç ùñþí óôï %s"
-#: c-decl.c:5896
-#, c-format
-msgid "`%s' was used with no prototype before its definition"
-msgstr ""
+#: c-decl.c:5482
+#, fuzzy
+msgid "%J'%D' was used with no prototype before its definition"
+msgstr "áõôÞ åßíáé ç èÝóç ôïõ ðñþôïõ ïñéóìïý"
-#: c-decl.c:5902
-#, c-format
-msgid "no previous declaration for `%s'"
-msgstr ""
+#: c-decl.c:5489
+#, fuzzy
+msgid "%Jno previous declaration for '%D'"
+msgstr "ðñïçãïýìåíç áõôïíüçôç äéáêýñçîç ôïõ `%s'"
-#: c-decl.c:5909
-#, fuzzy, c-format
-msgid "`%s' was used with no declaration before its definition"
+#: c-decl.c:5495
+#, fuzzy
+msgid "%J`%D' was used with no declaration before its definition"
msgstr "áõôÞ åßíáé ç èÝóç ôïõ ðñþôïõ ïñéóìïý"
-#: c-decl.c:5933 c-decl.c:6486
-#, c-format
-msgid "return type of `%s' is not `int'"
+#: c-decl.c:5531 c-decl.c:6037
+#, fuzzy
+msgid "%Jreturn type of '%D' is not `int'"
msgstr "ç åðéóôñåöüìåíç ôéìÞ ôçò `%s' äåí åßíáé `int'"
-#: c-decl.c:5949
-#, c-format
-msgid "first argument of `%s' should be `int'"
+#: c-decl.c:5546
+#, fuzzy
+msgid "%Jfirst argument of '%D' should be `int'"
msgstr "ôï ðñþôï üñéóìá ôçò `%s' ðñÝðåé íá åßíáé `int'"
-#: c-decl.c:5958
-#, c-format
-msgid "second argument of `%s' should be `char **'"
+#: c-decl.c:5555
+#, fuzzy
+msgid "%Jsecond argument of '%D' should be 'char **'"
msgstr "ôï äåýôåñï üñéóìá ôçò `%s' ðñÝðåé íá åßíáé `char **'"
-#: c-decl.c:5967
-#, c-format
-msgid "third argument of `%s' should probably be `char **'"
+#: c-decl.c:5564
+#, fuzzy
+msgid "%Jthird argument of '%D' should probably be 'char **'"
msgstr "ôï ôñßôï üñéóìá ôçò `%s' ðñÝðåé íá åßíáé `char **'"
-#: c-decl.c:5976
-#, c-format
-msgid "`%s' takes only zero or two arguments"
+#: c-decl.c:5574
+#, fuzzy
+msgid "%J'%D' takes only zero or two arguments"
msgstr "ç `%s' ðáßñíåé åßôå êáíÝíá åßôå äýï ïñßóìáôá"
-#: c-decl.c:5979
-#, c-format
-msgid "`%s' is normally a non-static function"
+#: c-decl.c:5577
+#, fuzzy
+msgid "%J'%D' is normally a non-static function"
msgstr "ç `%s' åßíáé óõíÞèùò ìç-óôáôéêÞ óõíÜñôçóç"
-#: c-decl.c:6077
-msgid "parm types given both in parmlist and separately"
+#: c-decl.c:5633
+msgid "%Jold-style parameter declarations in prototyped function definition"
msgstr ""
-#: c-decl.c:6098
-msgid "parameter name omitted"
+#: c-decl.c:5647
+#, fuzzy
+msgid "%Jparameter name omitted"
msgstr "Ý÷åé ðáñáëçöèåß ôï üíïìá ôçò ðáñáìÝôñïõ"
-#: c-decl.c:6102 c-decl.c:6204
-#, fuzzy, c-format
-msgid "parameter `%s' declared void"
-msgstr "ï ÷Üñôçò ÷áñáêôÞñùí `%s' ïñßóôçêå Þäç"
+#: c-decl.c:5722
+#, fuzzy
+msgid "%Jparameter name missing from parameter list"
+msgstr "ÅëëéðÞò Þ êáêïó÷çìáôéóìÝíç éäéüôçôá"
-#: c-decl.c:6178
-msgid "parameter name missing from parameter list"
+#: c-decl.c:5732
+msgid "%J\"%D\" declared as a non-parameter"
msgstr ""
-#: c-decl.c:6197
-#, fuzzy, c-format
-msgid "multiple parameters named `%s'"
+#: c-decl.c:5737
+#, fuzzy
+msgid "%Jmultiple parameters named \"%D\""
msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
-#: c-decl.c:6219 c-decl.c:6221
-#, c-format
-msgid "type of `%s' defaults to `int'"
-msgstr ""
+#: c-decl.c:5745
+#, fuzzy
+msgid "%Jparameter \"%D\" declared void"
+msgstr "ï ÷Üñôçò ÷áñáêôÞñùí `%s' ïñßóôçêå Þäç"
-#: c-decl.c:6257
-#, c-format
-msgid "declaration for parameter `%s' but no such parameter"
+#: c-decl.c:5760 c-decl.c:5762
+#, fuzzy
+msgid "%Jtype of \"%D\" defaults to \"int\""
+msgstr "ï åðéóôñåöüìåíïò ôýðïò ðñïêáèïñßæåôáé óå `int'"
+
+#: c-decl.c:5776
+#, fuzzy
+msgid "%Jparameter \"%D\" has incomplete type"
+msgstr "ìç ðëÞñçò åããñáöÞ"
+
+#: c-decl.c:5782
+msgid "%Jdeclaration for parameter \"%D\" but no such parameter"
msgstr ""
-#: c-decl.c:6305
+#: c-decl.c:5834
msgid "number of arguments doesn't match prototype"
msgstr ""
-#: c-decl.c:6335
-#, c-format
-msgid "promoted argument `%s' doesn't match prototype"
+#: c-decl.c:5835 c-decl.c:5866 c-decl.c:5873
+#, fuzzy
+msgid "%Hprototype declaration"
+msgstr "êåíü áëöáñéèìçôéêü"
+
+#: c-decl.c:5864
+msgid "promoted argument \"%D\" doesn't match prototype"
msgstr ""
-#: c-decl.c:6345
-#, c-format
-msgid "argument `%s' doesn't match prototype"
+#: c-decl.c:5872
+msgid "argument \"%D\" doesn't match prototype"
msgstr ""
-#: c-decl.c:6518 cp/decl.c:15049
+#: c-decl.c:6069 cp/decl.c:10876
#, fuzzy
msgid "no return statement in function returning non-void"
msgstr "`return' ÷ùñßò ôéìÞ, óå óõíÜñôçóç ðïõ åðéóôñÝöåé ìç-êåíü"
-#: c-decl.c:6525
+#: c-decl.c:6076
msgid "this function may return with or without a value"
msgstr ""
-#: c-decl.c:6729
-#, c-format
-msgid "size of return value of `%s' is %u bytes"
-msgstr ""
-
-#: c-decl.c:6733
-#, fuzzy, c-format
-msgid "size of return value of `%s' is larger than %d bytes"
-msgstr "%s: ïé ôéìÝò ôïõ ðåäßïõ `%s' äåí ðñÝðåé íá åßíáé ìåãáëýôåñåò áðü %d"
-
#. If we get here, declarations have been used in a for loop without
#. the C99 for loop scope. This doesn't make much sense, so don't
#. allow it.
-#: c-decl.c:6791
-msgid "`for' loop initial declaration used outside C99 mode"
+#: c-decl.c:6175
+msgid "'for' loop initial declaration used outside C99 mode"
msgstr ""
-#: c-decl.c:6815
+#: c-decl.c:6199
#, c-format
-msgid "`struct %s' declared in `for' loop initial declaration"
+msgid "'struct %s' declared in 'for' loop initial declaration"
msgstr ""
-#: c-decl.c:6818
+#: c-decl.c:6202
#, c-format
-msgid "`union %s' declared in `for' loop initial declaration"
+msgid "'union %s' declared in 'for' loop initial declaration"
msgstr ""
-#: c-decl.c:6821
-#, c-format
-msgid "`enum %s' declared in `for' loop initial declaration"
-msgstr ""
+#: c-decl.c:6205
+#, fuzzy, c-format
+msgid "'enum %s' declared in 'for' loop initial declaration"
+msgstr "%s: äéðëüò ïñéóìüò Ýêäïóçò êáôçãïñßáò"
-#: c-decl.c:6829
-#, c-format
-msgid "declaration of non-variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6213
+msgid "%Jdeclaration of non-variable '%D' in 'for' loop initial declaration"
msgstr ""
-#: c-decl.c:6831
-#, c-format
-msgid "declaration of static variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6216
+msgid "%Jdeclaration of static variable '%D' in 'for' loop initial declaration"
msgstr ""
-#: c-decl.c:6833
-#, c-format
-msgid "declaration of `extern' variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6219
+msgid "%Jdeclaration of 'extern' variable '%D' in 'for' loop initial declaration"
msgstr ""
-#: c-format.c:109 c-format.c:191
-msgid "format string arg not a string type"
-msgstr ""
-
-#: c-format.c:124
-msgid "args to be formatted is not '...'"
-msgstr ""
+#: c-decl.c:6532
+#, fuzzy
+msgid "%Jredefinition of global '%D'"
+msgstr "êáíÝíáò ïñéóìüò ôïõ `UNDEFINED'"
-#: c-format.c:133
-msgid "strftime formats cannot format arguments"
-msgstr ""
+#: c-decl.c:6533
+#, fuzzy
+msgid "%J'%D' previously defined here"
+msgstr "Äåí õðÜñ÷åé ðñïçãïýìåíç êáíïíéêÞ Ýêöñáóç"
-#: c-format.c:168 c-format.c:270
+#: c-format.c:94 c-format.c:210
msgid "format string has invalid operand number"
msgstr ""
-#: c-format.c:202
+#: c-format.c:111
msgid "function does not return string type"
msgstr ""
-#: c-format.c:233
+#: c-format.c:140
+msgid "format string arg not a string type"
+msgstr ""
+
+#: c-format.c:190
#, fuzzy
msgid "unrecognized format specifier"
msgstr "Üãíùóôï ðñüèåìá: %s"
-#: c-format.c:246
+#: c-format.c:203
#, c-format
msgid "`%s' is an unrecognized format function type"
msgstr ""
-#: c-format.c:280
+#: c-format.c:216
+#, fuzzy
+msgid "'...' has invalid operand number"
+msgstr "Ìç Ýãêõñïò êþäéêáò áßôçóçò"
+
+#: c-format.c:224
msgid "format string arg follows the args to be formatted"
msgstr ""
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "` ' flag"
msgstr ""
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "the ` ' printf flag"
msgstr ""
-#: c-format.c:602 c-format.c:673
+#: c-format.c:566 c-format.c:590 c-format.c:627 c-format.c:683
msgid "`+' flag"
msgstr ""
-#: c-format.c:602
+#: c-format.c:566 c-format.c:590 c-format.c:627
msgid "the `+' printf flag"
msgstr ""
-#: c-format.c:603 c-format.c:649
+#: c-format.c:567 c-format.c:591 c-format.c:628 c-format.c:659
msgid "`#' flag"
msgstr ""
-#: c-format.c:603
+#: c-format.c:567 c-format.c:591 c-format.c:628
msgid "the `#' printf flag"
msgstr ""
-#: c-format.c:604 c-format.c:647
+#: c-format.c:568 c-format.c:592 c-format.c:657
msgid "`0' flag"
msgstr ""
-#: c-format.c:604
+#: c-format.c:568 c-format.c:592
msgid "the `0' printf flag"
msgstr ""
-#: c-format.c:605 c-format.c:646 c-format.c:676
+#: c-format.c:569 c-format.c:593 c-format.c:656 c-format.c:686
msgid "`-' flag"
msgstr ""
-#: c-format.c:605
+#: c-format.c:569 c-format.c:593
msgid "the `-' printf flag"
msgstr ""
-#: c-format.c:606 c-format.c:630
+#: c-format.c:570 c-format.c:640
msgid "`'' flag"
msgstr ""
-#: c-format.c:606
+#: c-format.c:570
msgid "the `'' printf flag"
msgstr ""
-#: c-format.c:607 c-format.c:631
+#: c-format.c:571 c-format.c:641
msgid "`I' flag"
msgstr ""
-#: c-format.c:607
+#: c-format.c:571
msgid "the `I' printf flag"
msgstr ""
-#: c-format.c:608 c-format.c:628 c-format.c:650 c-format.c:677 c-format.c:1702
+#: c-format.c:572 c-format.c:594 c-format.c:638 c-format.c:660 c-format.c:687
+#: c-format.c:1802
msgid "field width"
msgstr "ìÝãåèïò ðåäßïõ"
-#: c-format.c:608
+#: c-format.c:572 c-format.c:594
msgid "field width in printf format"
msgstr ""
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision"
msgstr "áêñßâåéá"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision in printf format"
msgstr ""
-#: c-format.c:610 c-format.c:629 c-format.c:680
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630 c-format.c:639
+#: c-format.c:690
msgid "length modifier"
msgstr ""
-#: c-format.c:610
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630
msgid "length modifier in printf format"
msgstr ""
-#: c-format.c:626
+#: c-format.c:636
msgid "assignment suppression"
msgstr ""
-#: c-format.c:626
+#: c-format.c:636
msgid "the assignment suppression scanf feature"
msgstr ""
-#: c-format.c:627
+#: c-format.c:637
msgid "`a' flag"
msgstr ""
-#: c-format.c:627
+#: c-format.c:637
msgid "the `a' scanf flag"
msgstr ""
-#: c-format.c:628
+#: c-format.c:638
msgid "field width in scanf format"
msgstr ""
-#: c-format.c:629
+#: c-format.c:639
msgid "length modifier in scanf format"
msgstr ""
-#: c-format.c:630
+#: c-format.c:640
msgid "the `'' scanf flag"
msgstr ""
-#: c-format.c:631
+#: c-format.c:641
msgid "the `I' scanf flag"
msgstr ""
-#: c-format.c:645
+#: c-format.c:655
msgid "`_' flag"
msgstr ""
-#: c-format.c:645
+#: c-format.c:655
msgid "the `_' strftime flag"
msgstr ""
-#: c-format.c:646
+#: c-format.c:656
msgid "the `-' strftime flag"
msgstr ""
-#: c-format.c:647
+#: c-format.c:657
msgid "the `0' strftime flag"
msgstr ""
-#: c-format.c:648 c-format.c:672
+#: c-format.c:658 c-format.c:682
msgid "`^' flag"
msgstr ""
-#: c-format.c:648
+#: c-format.c:658
msgid "the `^' strftime flag"
msgstr ""
-#: c-format.c:649
+#: c-format.c:659
msgid "the `#' strftime flag"
msgstr ""
-#: c-format.c:650
+#: c-format.c:660
msgid "field width in strftime format"
msgstr ""
-#: c-format.c:651
+#: c-format.c:661
msgid "`E' modifier"
msgstr ""
-#: c-format.c:651
+#: c-format.c:661
msgid "the `E' strftime modifier"
msgstr ""
-#: c-format.c:652
+#: c-format.c:662
msgid "`O' modifier"
msgstr ""
-#: c-format.c:652
+#: c-format.c:662
msgid "the `O' strftime modifier"
msgstr ""
-#: c-format.c:653
+#: c-format.c:663
msgid "the `O' modifier"
msgstr ""
-#: c-format.c:671
+#: c-format.c:681
#, fuzzy
msgid "fill character"
msgstr "Ìç Ýãêõñïò ÷áñáêôÞñáò ðáñáâïëÞò"
-#: c-format.c:671
+#: c-format.c:681
#, fuzzy
msgid "fill character in strfmon format"
msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò óôï áñ÷åßï: "
-#: c-format.c:672
+#: c-format.c:682
msgid "the `^' strfmon flag"
msgstr ""
-#: c-format.c:673
+#: c-format.c:683
msgid "the `+' strfmon flag"
msgstr ""
-#: c-format.c:674
+#: c-format.c:684
msgid "`(' flag"
msgstr ""
-#: c-format.c:674
+#: c-format.c:684
msgid "the `(' strfmon flag"
msgstr ""
-#: c-format.c:675
+#: c-format.c:685
msgid "`!' flag"
msgstr ""
-#: c-format.c:675
+#: c-format.c:685
msgid "the `!' strfmon flag"
msgstr ""
-#: c-format.c:676
+#: c-format.c:686
msgid "the `-' strfmon flag"
msgstr ""
-#: c-format.c:677
+#: c-format.c:687
msgid "field width in strfmon format"
msgstr ""
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision"
msgstr ""
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision in strfmon format"
msgstr ""
-#: c-format.c:679
+#: c-format.c:689
#, fuzzy
msgid "right precision"
msgstr "ÅìöÜíéóç Ýêäïóçò ðñïãñÜììáôïò"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision in strfmon format"
msgstr ""
-#: c-format.c:680
+#: c-format.c:690
msgid "length modifier in strfmon format"
msgstr ""
-#: c-format.c:983
+#: c-format.c:1107
#, c-format
msgid "function might be possible candidate for `%s' format attribute"
msgstr ""
-#: c-format.c:1107 c-format.c:1128 c-format.c:2112
+#: c-format.c:1223 c-format.c:1244 c-format.c:2212
#, fuzzy
msgid "missing $ operand number in format"
msgstr "Ëåßðåé ï äåêáåîáäéêüò áñéèìüò óôïí ÷áñáêôÞñá äéáöõãÞò."
-#: c-format.c:1138
+#: c-format.c:1254
#, c-format
msgid "%s does not support %%n$ operand number formats"
msgstr ""
-#: c-format.c:1145
+#: c-format.c:1261
#, fuzzy
msgid "operand number out of range in format"
msgstr "Ï áñéèìüò óýíäåóìïõ åßíáé Ýîù áðü ôï üñéï"
-#: c-format.c:1168
+#: c-format.c:1284
#, c-format
msgid "format argument %d used more than once in %s format"
msgstr ""
-#: c-format.c:1218
+#: c-format.c:1331
#, c-format
msgid "format argument %d unused before used argument %d in $-style format"
msgstr ""
-#: c-format.c:1322
+#: c-format.c:1429
msgid "format not a string literal, format string not checked"
msgstr ""
-#: c-format.c:1336
+#: c-format.c:1443
msgid "format not a string literal and no format arguments"
msgstr ""
-#: c-format.c:1338
+#: c-format.c:1445
msgid "format not a string literal, argument types not checked"
msgstr ""
-#: c-format.c:1351
+#: c-format.c:1458
#, fuzzy
msgid "too many arguments for format"
msgstr "ðÜñá ðïëëÜ ïñßóìáôá"
-#: c-format.c:1354
+#: c-format.c:1461
msgid "unused arguments in $-style format"
msgstr ""
-#: c-format.c:1357
+#: c-format.c:1464
#, fuzzy, c-format
msgid "zero-length %s format string"
msgstr "ìç ôåñìáôéæüìåío áëöáñéèìçôéêü"
-#: c-format.c:1361
+#: c-format.c:1468
#, fuzzy
msgid "format is a wide character string"
msgstr "ëßóôá ìå üëá ôá ãíùóôÜ óýíïëá ÷áñáêôÞñùí"
-#: c-format.c:1364
+#: c-format.c:1471
#, fuzzy
msgid "unterminated format string"
msgstr "ìç ôåñìáôéæüìåío áëöáñéèìçôéêü"
-#: c-format.c:1581
+#: c-format.c:1681
msgid "embedded `\\0' in format"
msgstr ""
-#: c-format.c:1596
+#: c-format.c:1696
#, c-format
msgid "spurious trailing `%%' in format"
msgstr ""
-#: c-format.c:1635 c-format.c:1872
+#: c-format.c:1735 c-format.c:1972
#, fuzzy, c-format
msgid "repeated %s in format"
msgstr "repeated leap second moment"
-#: c-format.c:1648
+#: c-format.c:1748
msgid "missing fill character at end of strfmon format"
msgstr ""
-#: c-format.c:1687 c-format.c:1786 c-format.c:2066 c-format.c:2119
+#: c-format.c:1787 c-format.c:1886 c-format.c:2166 c-format.c:2219
#, fuzzy
msgid "too few arguments for format"
msgstr "ðïëý ëßãá ïñßóìáôá"
-#: c-format.c:1728
+#: c-format.c:1828
#, fuzzy, c-format
msgid "zero width in %s format"
msgstr "óöÜëìá åããñáöÞò %s"
-#: c-format.c:1747
+#: c-format.c:1847
#, c-format
msgid "empty left precision in %s format"
msgstr ""
-#: c-format.c:1801
+#: c-format.c:1901
msgid "field precision"
msgstr ""
-#: c-format.c:1816
+#: c-format.c:1916
#, c-format
msgid "empty precision in %s format"
msgstr ""
-#: c-format.c:1856
+#: c-format.c:1956
#, c-format
msgid "%s does not support the `%s' %s length modifier"
msgstr ""
-#: c-format.c:1906
+#: c-format.c:2006
msgid "conversion lacks type at end of format"
msgstr ""
-#: c-format.c:1917
+#: c-format.c:2017
#, fuzzy, c-format
msgid "unknown conversion type character `%c' in format"
msgstr "Üãíùóôïò ÷áñáêôÞñáò `%s'"
-#: c-format.c:1920
+#: c-format.c:2020
#, c-format
msgid "unknown conversion type character 0x%x in format"
msgstr ""
-#: c-format.c:1927
+#: c-format.c:2027
#, c-format
msgid "%s does not support the `%%%c' %s format"
msgstr ""
-#: c-format.c:1943
+#: c-format.c:2043
#, c-format
msgid "%s used with `%%%c' %s format"
msgstr ""
-#: c-format.c:1952
+#: c-format.c:2052
#, fuzzy, c-format
msgid "%s does not support %s"
msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
-#: c-format.c:1961
+#: c-format.c:2061
#, c-format
msgid "%s does not support %s with the `%%%c' %s format"
msgstr ""
-#: c-format.c:1994
+#: c-format.c:2094
#, c-format
msgid "%s ignored with %s and `%%%c' %s format"
msgstr ""
-#: c-format.c:1998
+#: c-format.c:2098
#, c-format
msgid "%s ignored with %s in %s format"
msgstr ""
-#: c-format.c:2004
+#: c-format.c:2104
#, c-format
msgid "use of %s and %s together with `%%%c' %s format"
msgstr ""
-#: c-format.c:2008
+#: c-format.c:2108
#, c-format
msgid "use of %s and %s together in %s format"
msgstr ""
-#: c-format.c:2027
+#: c-format.c:2127
#, c-format
msgid "`%%%c' yields only last 2 digits of year in some locales"
msgstr ""
-#: c-format.c:2030
+#: c-format.c:2130
#, c-format
msgid "`%%%c' yields only last 2 digits of year"
msgstr ""
#. The end of the format string was reached.
-#: c-format.c:2046
+#: c-format.c:2146
#, c-format
msgid "no closing `]' for `%%[' format"
msgstr ""
-#: c-format.c:2059
+#: c-format.c:2159
#, c-format
msgid "use of `%s' length modifier with `%c' type character"
msgstr ""
-#: c-format.c:2080
+#: c-format.c:2180
#, c-format
msgid "%s does not support the `%%%s%c' %s format"
msgstr ""
-#: c-format.c:2095
+#: c-format.c:2195
msgid "operand number specified with suppressed assignment"
msgstr ""
-#: c-format.c:2097
+#: c-format.c:2197
msgid "operand number specified for format taking no argument"
msgstr ""
-#: c-format.c:2211
+#: c-format.c:2309
#, c-format
msgid "writing through null pointer (arg %d)"
msgstr ""
-#: c-format.c:2220
+#: c-format.c:2318
#, c-format
msgid "reading through null pointer (arg %d)"
msgstr ""
-#: c-format.c:2240
+#: c-format.c:2338
#, c-format
msgid "writing into constant object (arg %d)"
msgstr ""
-#: c-format.c:2250
+#: c-format.c:2348
#, c-format
msgid "extra type qualifiers in format argument (arg %d)"
msgstr ""
-#: c-format.c:2257
+#: c-format.c:2355
#, c-format
msgid "format argument is not a pointer (arg %d)"
msgstr ""
-#: c-format.c:2259
+#: c-format.c:2357
#, c-format
msgid "format argument is not a pointer to a pointer (arg %d)"
msgstr ""
-#: c-format.c:2330
+#: c-format.c:2433
msgid "pointer"
msgstr ""
-#: c-format.c:2332
+#: c-format.c:2435
#, fuzzy
msgid "different type"
msgstr "åßäïò ìïñöÞò"
-#: c-format.c:2353
+#: c-format.c:2456
#, c-format
msgid "%s is not type %s (arg %d)"
msgstr ""
-#: c-format.c:2356
+#: c-format.c:2459
#, c-format
msgid "%s format, %s arg (arg %d)"
msgstr ""
-#: c-lex.c:153
-msgid "YYDEBUG not defined"
+#: c-format.c:2704
+msgid "args to be formatted is not '...'"
msgstr ""
-#: c-lex.c:293
-msgid "badly nested C headers from preprocessor"
+#: c-format.c:2713
+msgid "strftime formats cannot format arguments"
msgstr ""
-#: c-lex.c:336
+#: c-incpath.c:68
+#, fuzzy, c-format
+msgid "ignoring duplicate directory \"%s\"\n"
+msgstr "áäõíáìßá áëëáãÞò óôï êáôÜëïãï \"%s\""
+
+#: c-incpath.c:71
#, c-format
-msgid "ignoring #pragma %s %s"
+msgid " as it is a non-system directory that duplicates a system directory\n"
msgstr ""
-#: c-lex.c:386
+#: c-incpath.c:75
+#, fuzzy, c-format
+msgid "ignoring nonexistent directory \"%s\"\n"
+msgstr "äéáãñáöÞ ìç-êáôáëüãïõ `%s'\n"
+
+#: c-incpath.c:273
#, c-format
-msgid "universal-character-name '\\U%08x' not valid in identifier"
+msgid "#include \"...\" search starts here:\n"
msgstr ""
-#: c-lex.c:632
+#: c-incpath.c:277
#, c-format
-msgid "universal-character-name '\\u%04x' not valid in identifier"
+msgid "#include <...> search starts here:\n"
msgstr ""
-#: c-lex.c:695
+#: c-incpath.c:282
+#, fuzzy, c-format
+msgid "End of search list.\n"
+msgstr "ÔÝëïò ôìÞìáôïò"
+
+#: c-lex.c:240
+msgid "badly nested C headers from preprocessor"
+msgstr ""
+
+#: c-lex.c:281
+#, c-format
+msgid "ignoring #pragma %s %s"
+msgstr ""
+
+#. ... or not.
+#: c-lex.c:385
+msgid "%Hstray '@' in program"
+msgstr ""
+
+#: c-lex.c:393
+#, c-format
+msgid "missing terminating %c character"
+msgstr "Ý÷åé ðáñáëçöèåß ôåñìáôéêüò ÷áñáêôÞñáò %c"
+
+#: c-lex.c:395
#, c-format
msgid "stray '%c' in program"
msgstr ""
-#: c-lex.c:697
+#: c-lex.c:397
#, c-format
msgid "stray '\\%o' in program"
msgstr ""
-#: c-lex.c:854
+#: c-lex.c:535
msgid "this decimal constant is unsigned only in ISO C90"
msgstr ""
-#: c-lex.c:857
+#: c-lex.c:538
msgid "this decimal constant would be unsigned in ISO C90"
msgstr ""
-#: c-lex.c:873
+#: c-lex.c:554
#, fuzzy, c-format
msgid "integer constant is too large for \"%s\" type"
msgstr "%s: ôï %s åßíáé ôüóï ìåãÜëï ðïõ äå ìðïñåß íá áíáðáñáóôáèåß"
-#: c-lex.c:941
+#: c-lex.c:620
#, fuzzy, c-format
msgid "floating constant exceeds range of \"%s\""
msgstr "ó÷åôéêÞ èÝóç áñ÷åßïõ åßíáé åêôüò ïñßùí"
-#: c-lex.c:977 cpplex.c:330 cpplex.c:668 cpplex.c:1942
-#, fuzzy
-msgid "ignoring invalid multibyte character"
-msgstr "Ìç Ýãêõñï Þ áóõìðëÞñùôï multibyte Þ ðëáôýò ÷áñáêôÞñáò"
+#: c-lex.c:696
+msgid "traditional C rejects string constant concatenation"
+msgstr ""
-#: c-opts.c:355
-#, fuzzy, c-format
-msgid "missing argument to \"-%s\""
-msgstr "Ëåßðåé ðáñÜìåôñïò ãéá `%s'"
+#: c-objc-common.c:82
+msgid "%Jfunction '%F' can never be inlined because it is supressed using -fno-inline"
+msgstr ""
-#: c-opts.c:359
-#, c-format
-msgid "no class name specified with \"-%s\""
+#: c-objc-common.c:92
+msgid "%Jfunction '%F' can never be inlined because it might not be bound within this unit of translation"
msgstr ""
-#: c-opts.c:366
-#, fuzzy, c-format
-msgid "missing filename after \"-%s\""
-msgstr "ðáñÜëçøç ïñßóìáôïò áñ÷åßïõ"
+#: c-objc-common.c:100
+msgid "%Jfunction '%F' can never be inlined because it uses attributes conflicting with inlining"
+msgstr ""
-#: c-opts.c:371
-#, fuzzy, c-format
-msgid "missing target after \"-%s\""
-msgstr "Ý÷åé ðáñáëçöèåß ç ëßóôá ìå ôá ðåäßá"
+#: c-objc-common.c:115
+msgid "%Jfunction '%F' can never be inlined because it has pending sizes"
+msgstr ""
-#: c-opts.c:505
-#, c-format
-msgid "options array incorrectly sorted: %s is before %s"
+#: c-objc-common.c:128
+msgid "%Jnested function '%F' can never be inlined because it has possibly saved pending sizes"
msgstr ""
-#: c-opts.c:550
+#: c-opts.c:141
#, c-format
-msgid "too many filenames given. Type %s --help for usage"
+msgid "no class name specified with \"%s\""
msgstr ""
-#: c-opts.c:937
-msgid "-Wno-strict-prototypes is not supported in C++"
-msgstr ""
+#: c-opts.c:145
+#, fuzzy, c-format
+msgid "assertion missing after \"%s\""
+msgstr "ïñéóìüò äéêáéùìÜôùí óôï %s"
+
+#: c-opts.c:150
+#, fuzzy, c-format
+msgid "macro name missing after \"%s\""
+msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
+
+#: c-opts.c:157
+#, fuzzy, c-format
+msgid "missing path after \"%s\""
+msgstr "Áñ÷Þ áñ÷åßïõ %s\n"
-#: c-opts.c:1017
+#: c-opts.c:166
+#, fuzzy, c-format
+msgid "missing filename after \"%s\""
+msgstr "ðáñÜëçøç ïñßóìáôïò áñ÷åßïõ"
+
+#: c-opts.c:171
+#, fuzzy, c-format
+msgid "missing makefile target after \"%s\""
+msgstr "ÅëëéðÞò Þ êáêïó÷çìáôéóìÝíç éäéüôçôá"
+
+#: c-opts.c:291
+#, fuzzy
+msgid "-I- specified twice"
+msgstr "ìç ïñéóìÝíï"
+
+#: c-opts.c:692
#, fuzzy, c-format
msgid "switch \"%s\" is no longer supported"
msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
-#: c-opts.c:1033
-#, c-format
-msgid "switch \"%s\" is deprecated, please see documentation for details"
+#: c-opts.c:816
+msgid "-fhandle-exceptions has been renamed -fexceptions (and is now on by default)"
msgstr ""
-#: c-opts.c:1153
-msgid "-fhandle-exceptions has been renamed to -fexceptions (and is now on by default)"
-msgstr ""
-
-#: c-opts.c:1273
+#: c-opts.c:982
msgid "output filename specified twice"
msgstr ""
-#: c-opts.c:1387
+#: c-opts.c:1106
msgid "-Wformat-y2k ignored without -Wformat"
msgstr ""
-#: c-opts.c:1389
+#: c-opts.c:1108
msgid "-Wformat-extra-args ignored without -Wformat"
msgstr ""
-#: c-opts.c:1391
+#: c-opts.c:1110
msgid "-Wformat-zero-length ignored without -Wformat"
msgstr ""
-#: c-opts.c:1393
+#: c-opts.c:1112
msgid "-Wformat-nonliteral ignored without -Wformat"
msgstr ""
-#: c-opts.c:1395
+#: c-opts.c:1114
msgid "-Wformat-security ignored without -Wformat"
msgstr ""
-#: c-opts.c:1397
+#: c-opts.c:1116
msgid "-Wmissing-format-attribute ignored without -Wformat"
msgstr ""
-#: c-opts.c:1419
+#: c-opts.c:1130
#, fuzzy, c-format
-msgid "opening output file %s"
+msgid "opening output file %s: %m"
msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ `%s'"
-#: c-opts.c:1474
-#, fuzzy, c-format
-msgid "opening dependency file %s"
-msgstr "äõíáìéêÝò åîáñôÞóåéò.\n"
-
-#: c-opts.c:1484
-#, fuzzy, c-format
-msgid "closing dependency file %s"
-msgstr "Äåí ìðüñåóá íá áíïßîù ôï áñ÷åßï %s"
-
-#: c-opts.c:1487
-#, fuzzy, c-format
-msgid "when writing output to %s"
-msgstr "óöÜëìá åããñáöÞò %s"
-
-#: c-opts.c:1567
-msgid "to generate dependencies you must specify either -M or -MM"
-msgstr ""
-
-#: c-opts.c:1715
+#: c-opts.c:1135
#, c-format
-msgid "\"-%c%s%s\" is valid for %s but not for %s"
-msgstr ""
-
-#. To keep the lines from getting too long for some compilers, limit
-#. to about 500 characters (6 lines) per chunk.
-#: c-opts.c:1726
-msgid ""
-"Switches:\n"
-" -include <file> Include the contents of <file> before other files\n"
-" -imacros <file> Accept definition of macros in <file>\n"
-" -iprefix <path> Specify <path> as a prefix for next two options\n"
-" -iwithprefix <dir> Add <dir> to the end of the system include path\n"
-" -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
-" -isystem <dir> Add <dir> to the start of the system include path\n"
-msgstr ""
-
-#: c-opts.c:1735
-msgid ""
-" -idirafter <dir> Add <dir> to the end of the system include path\n"
-" -I <dir> Add <dir> to the end of the main include path\n"
-" -I- Fine-grained include path control; see info docs\n"
-" -nostdinc Do not search system include directories\n"
-" (dirs specified with -isystem will still be used)\n"
-" -nostdinc++ Do not search system include directories for C++\n"
-" -o <file> Put output into <file>\n"
+msgid "too many filenames given. Type %s --help for usage"
msgstr ""
-#: c-opts.c:1744
-msgid ""
-" -trigraphs Support ISO C trigraphs\n"
-" -std=<std name> Specify the conformance standard; one of:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Inhibit warning messages\n"
-" -W[no-]trigraphs Warn if trigraphs are encountered\n"
-" -W[no-]comment{s} Warn if one comment starts inside another\n"
+#: c-opts.c:1213
+msgid "YYDEBUG not defined"
msgstr ""
-#: c-opts.c:1753
-msgid ""
-" -W[no-]traditional Warn about features not present in traditional C\n"
-" -W[no-]undef Warn if an undefined macro is used by #if\n"
-" -W[no-]import Warn about the use of the #import directive\n"
+#: c-opts.c:1260
+#, c-format
+msgid "opening dependency file %s: %m"
msgstr ""
-#: c-opts.c:1758
-msgid ""
-" -W[no-]error Treat all warnings as errors\n"
-" -W[no-]system-headers Do not suppress warnings from system headers\n"
-" -W[no-]all Enable most preprocessor warnings\n"
+#: c-opts.c:1270
+#, c-format
+msgid "closing dependency file %s: %m"
msgstr ""
-#: c-opts.c:1763
-msgid ""
-" -M Generate make dependencies\n"
-" -MM As -M, but ignore system header files\n"
-" -MD Generate make dependencies and compile\n"
-" -MMD As -MD, but ignore system header files\n"
-" -MF <file> Write dependency output to the given file\n"
-" -MG Treat missing header file as generated files\n"
-msgstr ""
+#: c-opts.c:1273
+#, fuzzy, c-format
+msgid "when writing output to %s: %m"
+msgstr "óöÜëìá åããñáöÞò %s"
-#: c-opts.c:1771
-msgid ""
-" -MP\t\t\t Generate phony targets for all headers\n"
-" -MQ <target> Add a MAKE-quoted target\n"
-" -MT <target> Add an unquoted target\n"
+#: c-opts.c:1343
+msgid "to generate dependencies you must specify either -M or -MM"
msgstr ""
-#: c-opts.c:1776
-msgid ""
-" -D<macro> Define a <macro> with string '1' as its value\n"
-" -D<macro>=<val> Define a <macro> with <val> as its value\n"
-" -A<question>=<answer> Assert the <answer> to <question>\n"
-" -A-<question>=<answer> Disable the <answer> to <question>\n"
-" -U<macro> Undefine <macro> \n"
-" -v Display the version number\n"
+#: c-opts.c:1403
+msgid "<built-in>"
msgstr ""
-#: c-opts.c:1784
-msgid ""
-" -H Print the name of header files as they are used\n"
-" -C Do not discard comments\n"
-" -dM Display a list of macro definitions active at end\n"
-" -dD Preserve macro definitions in output\n"
-" -dN As -dD except that only the names are preserved\n"
-" -dI Include #include directives in the output\n"
+#: c-opts.c:1418
+msgid "<command line>"
msgstr ""
-#: c-opts.c:1792
-msgid ""
-" -f[no-]preprocessed Treat the input file as already preprocessed\n"
-" -ftabstop=<number> Distance between tab stops for column reporting\n"
-" -P Do not generate #line directives\n"
-" -remap Remap file names when including files\n"
-" --help Display this information\n"
+#: c-opts.c:1502
+msgid "too late for # directive to set debug directory"
msgstr ""
#. Like YYERROR but do call yyerror.
-#: c-parse.y:55 parse.y:48 objc-parse.y:55
+#: c-parse.y:54 c-parse.c:5381 gengtype-yacc.c:1514 java/parse-scan.c:3063
+#: java/parse.c:6067 objc/objc-parse.y:54 objc/objc-parse.c:6644
msgid "syntax error"
msgstr "óöÜëìá óýíôáîçò"
-#: /usr/share/bison/bison.simple:179
+#: c-parse.c:2118 gengtype-yacc.c:545 java/parse-scan.c:1932 java/parse.c:2875
+#: objc/objc-parse.c:2717
#, fuzzy
msgid "syntax error: cannot back up"
msgstr "ï äéá÷ùñéóôÞò äå ìðïñåß íá åßíáé êåíüò"
-#: c-parse.y:325 objc-parse.y:346
+#: c-parse.y:320 objc/objc-parse.y:344
msgid "ISO C forbids an empty source file"
msgstr ""
-#: c-parse.y:366 c-typeck.c:6916 objc-parse.y:388
+#: c-parse.y:349 c-typeck.c:6217 objc/objc-parse.y:374
msgid "argument of `asm' is not a constant string"
msgstr ""
-#: c-parse.y:374 objc-parse.y:396
+#: c-parse.y:357 objc/objc-parse.y:382
msgid "ISO C forbids data definition with no type or storage class"
msgstr ""
-#: c-parse.y:376 objc-parse.y:398
+#: c-parse.y:359 objc/objc-parse.y:384
msgid "data definition has no type or storage class"
msgstr ""
-#: c-parse.y:389 objc-parse.y:411
+#: c-parse.y:372 objc/objc-parse.y:397
msgid "ISO C does not allow extra `;' outside of a function"
msgstr ""
-#: c-parse.y:449 cppexp.c:1312
+#: c-parse.y:429 cppexp.c:1253
msgid "traditional C rejects the unary plus operator"
msgstr ""
-#: c-parse.y:496 objc-parse.y:518
+#: c-parse.y:476 objc/objc-parse.y:501
msgid "`sizeof' applied to a bit-field"
msgstr ""
-#: c-parse.y:583 objc-parse.y:605
+#: c-parse.y:563 objc/objc-parse.y:588
msgid "ISO C forbids omitting the middle term of a ?: expression"
msgstr ""
-#: c-parse.y:632 objc-parse.y:654
+#: c-parse.y:611 objc/objc-parse.y:636
msgid "ISO C89 forbids compound literals"
msgstr ""
-#: c-parse.y:646 objc-parse.y:668
+#: c-parse.y:625 objc/objc-parse.y:650
msgid "ISO C forbids braced-groups within expressions"
msgstr ""
-#: c-parse.y:677 objc-parse.y:699
+#: c-parse.y:653 objc/objc-parse.y:678
msgid "first argument to __builtin_choose_expr not a constant"
msgstr ""
-#: c-parse.y:721 objc-parse.y:767
+#: c-parse.y:696 objc/objc-parse.y:737
msgid "traditional C rejects ISO C style function definitions"
msgstr ""
-#: c-parse.y:985 c-parse.y:991 c-parse.y:997 c-parse.y:1003 c-parse.y:1024
-#: c-parse.y:1030 c-parse.y:1036 c-parse.y:1042 c-parse.y:1075 c-parse.y:1081
-#: c-parse.y:1087 c-parse.y:1093 c-parse.y:1138 c-parse.y:1144 c-parse.y:1150
-#: c-parse.y:1156 parse.y:1933 parse.y:1940 parse.y:1975 objc-parse.y:1031
-#: objc-parse.y:1037 objc-parse.y:1043 objc-parse.y:1049 objc-parse.y:1070
-#: objc-parse.y:1076 objc-parse.y:1082 objc-parse.y:1088 objc-parse.y:1121
-#: objc-parse.y:1127 objc-parse.y:1133 objc-parse.y:1139 objc-parse.y:1184
-#: objc-parse.y:1190 objc-parse.y:1196 objc-parse.y:1202
+#: c-parse.y:699 c-parse.y:705 objc/objc-parse.y:740 objc/objc-parse.y:746
+#, fuzzy
+msgid "old-style parameter declaration"
+msgstr "êåíü áëöáñéèìçôéêü"
+
+#: c-parse.y:967 c-parse.y:973 c-parse.y:979 c-parse.y:985 c-parse.y:1006
+#: c-parse.y:1012 c-parse.y:1018 c-parse.y:1024 c-parse.y:1057 c-parse.y:1063
+#: c-parse.y:1069 c-parse.y:1075 c-parse.y:1120 c-parse.y:1126 c-parse.y:1132
+#: c-parse.y:1138 objc/objc-parse.y:1008 objc/objc-parse.y:1014
+#: objc/objc-parse.y:1020 objc/objc-parse.y:1026 objc/objc-parse.y:1047
+#: objc/objc-parse.y:1053 objc/objc-parse.y:1059 objc/objc-parse.y:1065
+#: objc/objc-parse.y:1098 objc/objc-parse.y:1104 objc/objc-parse.y:1110
+#: objc/objc-parse.y:1116 objc/objc-parse.y:1161 objc/objc-parse.y:1167
+#: objc/objc-parse.y:1173 objc/objc-parse.y:1179
#, fuzzy, c-format
msgid "`%s' is not at beginning of declaration"
msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-#: c-parse.y:1441 objc-parse.y:1496
+#: c-parse.y:1300 objc/objc-parse.y:1350
+msgid "`typeof' applied to a bit-field"
+msgstr ""
+
+#: c-parse.y:1427 objc/objc-parse.y:1477
msgid "ISO C forbids empty initializer braces"
msgstr ""
-#: c-parse.y:1455 objc-parse.y:1510
+#: c-parse.y:1441 objc/objc-parse.y:1491
msgid "ISO C89 forbids specifying subobject to initialize"
msgstr ""
-#: c-parse.y:1458 objc-parse.y:1513
+#: c-parse.y:1444 objc/objc-parse.y:1494
msgid "obsolete use of designated initializer without `='"
msgstr ""
-#: c-parse.y:1462 objc-parse.y:1517
+#: c-parse.y:1448 objc/objc-parse.y:1498
msgid "obsolete use of designated initializer with `:'"
msgstr ""
-#: c-parse.y:1489 objc-parse.y:1544
+#: c-parse.y:1475 objc/objc-parse.y:1525
msgid "ISO C forbids specifying range of elements to initialize"
msgstr ""
-#: c-parse.y:1497 c-parse.y:1528 objc-parse.y:1552 objc-parse.y:1583
+#: c-parse.y:1483 c-parse.y:1514 objc/objc-parse.y:1533 objc/objc-parse.y:1564
msgid "ISO C forbids nested functions"
msgstr ""
-#: c-parse.y:1703 objc-parse.y:1760
+#: c-parse.y:1691 objc/objc-parse.y:1743
msgid "ISO C forbids forward references to `enum' types"
msgstr ""
-#: c-parse.y:1715 parse.y:2411 objc-parse.y:1772
+#: c-parse.y:1703 cp/parser.c:9282 objc/objc-parse.y:1755
#, fuzzy
msgid "comma at end of enumerator list"
msgstr "óêïõðßäéá óôï ôÝëïò ôïõ áñéèìïý"
-#: c-parse.y:1723 objc-parse.y:1780
+#: c-parse.y:1723 objc/objc-parse.y:1775
msgid "no semicolon at end of struct or union"
msgstr ""
-#: c-parse.y:1732 objc-parse.y:1789 objc-parse.y:2864
+#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846
msgid "extra semicolon in struct or union specified"
msgstr ""
-#: c-parse.y:1745 objc-parse.y:1816
+#: c-parse.y:1745 objc/objc-parse.y:1800
msgid "ISO C doesn't support unnamed structs/unions"
msgstr ""
-#: c-parse.y:1754 objc-parse.y:1825
+#: c-parse.y:1754 objc/objc-parse.y:1809
msgid "ISO C forbids member declarations with no members"
msgstr ""
-#: c-parse.y:1913 objc-parse.y:1984
-msgid "deprecated use of label at end of compound statement"
+#: c-parse.y:1915 objc/objc-parse.y:1970
+msgid "label at end of compound statement"
msgstr ""
-#: c-parse.y:1930 objc-parse.y:2001
-msgid "ISO C89 forbids mixed declarations and code"
+#: c-parse.y:1934 objc/objc-parse.y:1989
+msgid "ISO C90 forbids mixed declarations and code"
msgstr ""
-#: c-parse.y:2005 objc-parse.y:2080
+#: c-parse.y:2012 objc/objc-parse.y:2069
msgid "ISO C forbids label declarations"
msgstr ""
-#: c-parse.y:2055 parse.y:1638 objc-parse.y:2130
+#: c-parse.y:2062 objc/objc-parse.y:2119
msgid "braced-group within expression allowed only inside a function"
msgstr ""
-#: c-parse.y:2182 objc-parse.y:2257
+#: c-parse.y:2184 objc/objc-parse.y:2241
msgid "empty body in an else-statement"
msgstr ""
-#: c-parse.y:2303 objc-parse.y:2378
-msgid "ISO C forbids `goto *expr;'"
+#: c-parse.y:2192 objc/objc-parse.y:2249
+msgid "%Hempty body in an if-statement"
msgstr ""
-#: c-parse.y:2403 objc-parse.y:2478
-msgid "ISO C forbids forward parameter declarations"
+#: c-parse.y:2272 cp/parser.c:6028 objc/objc-parse.y:2329
+msgid "break statement not within loop or switch"
+msgstr ""
+
+#: c-parse.y:2281 cp/parser.c:6039 objc/objc-parse.y:2338
+msgid "continue statement not within a loop"
+msgstr ""
+
+#: c-parse.y:2323 objc/objc-parse.y:2380
+msgid "ISO C forbids `goto *expr;'"
msgstr ""
#. Gcc used to allow this as an extension. However, it does
@@ -2502,2885 +2509,2727 @@ msgstr ""
#. it caused problems with the code in expand_builtin which
#. tries to verify that BUILT_IN_NEXT_ARG is being used
#. correctly.
-#: c-parse.y:2429 objc-parse.y:2504
+#: c-parse.y:2440 objc/objc-parse.y:2548
msgid "ISO C requires a named argument before `...'"
msgstr ""
-#: c-parse.y:2526 objc-parse.y:2601
+#: c-parse.y:2538 objc/objc-parse.y:2646
msgid "`...' in old-style identifier list"
msgstr ""
-#: /usr/share/bison/bison.simple:795
+#: c-parse.c:5377 gengtype-yacc.c:1510 java/parse-scan.c:3059
+#: java/parse.c:6063 objc/objc-parse.c:6640
#, fuzzy
-msgid "parse error; also virtual memory exhausted"
+msgid "syntax error; also virtual memory exhausted"
msgstr "óöÜëìá åðåîåñãáóßáò· åðßóçò ç ìíÞìç åîáíôëÞèçêå"
-#: /usr/share/bison/bison.simple:799 cp/spew.c:364
-msgid "parse error"
-msgstr "óöÜëìá åðåîåñãáóßáò"
-
-#: /usr/share/bison/bison.simple:924
+#: c-parse.c:5495 gengtype-yacc.c:1628 java/parse-scan.c:3177
+#: java/parse.c:6181 objc/objc-parse.c:6758
#, fuzzy
msgid "parser stack overflow"
msgstr "Õðåñ÷åßëéóç ðßíáêá áñ÷åßïõ"
-#: c-parse.y:2838 cp/spew.c:1525 objc-parse.y:3537
+#: c-parse.y:2968 objc/objc-parse.y:3663
#, c-format
-msgid "%s at end of input"
-msgstr "%s óôï ôÝëïò ôçò åéóüäïõ"
+msgid "syntax error at '%s' token"
+msgstr "óõíôáêôéêü óöÜëìá óôï óýìâïëï '%s'"
-#: c-parse.y:2844 cp/spew.c:1533 objc-parse.y:3543
-#, c-format
-msgid "%s before %s'%c'"
-msgstr "%s ðñéí áðü %s'%c'"
+#: c-pch.c:112
+#, fuzzy, c-format
+msgid "can't create precompiled header %s: %m"
+msgstr "%s: Äåí åßíáé äõíáôüí íá äçìéïõñãçèåß ï êáôÜëïãïò %s: %s\n"
+
+#: c-pch.c:132
+#, fuzzy, c-format
+msgid "can't write to %s: %m"
+msgstr "áäõíáìßá åããñáöÞò áðïôåëÝóìáôïò: %s"
+
+#: c-pch.c:138
+#, fuzzy, c-format
+msgid "`%s' is not a valid output file"
+msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-#: c-parse.y:2846 cp/spew.c:1535 objc-parse.y:3545
+#: c-pch.c:167 c-pch.c:183 c-pch.c:195
+#, fuzzy, c-format
+msgid "can't write %s: %m"
+msgstr "áäõíáìßá åããñáöÞò áðïôåëÝóìáôïò: %s"
+
+#: c-pch.c:173
+#, fuzzy, c-format
+msgid "can't seek in %s: %m"
+msgstr "áäõíáìßá áíïßãìáôïò ôïõ `%s'"
+
+#: c-pch.c:181 c-pch.c:221 c-pch.c:249 c-pch.c:254 c-pch.c:324
+#, fuzzy, c-format
+msgid "can't read %s: %m"
+msgstr "%s: áäõíáìßá óôçí áíÜãíùóç %s: %s\n"
+
+#: c-pch.c:234
#, c-format
-msgid "%s before %s'\\x%x'"
-msgstr "%s ðñéí áðü %s'\\x%x'"
+msgid "%s: not compatible with this GCC version"
+msgstr ""
-#: c-parse.y:2850 cp/spew.c:1542 objc-parse.y:3549
+#. It's a PCH for the wrong language.
+#: c-pch.c:237
#, fuzzy, c-format
-msgid "%s before string constant"
-msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò"
+msgid "%s: not for %s"
+msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
+
+#. Not any kind of PCH.
+#: c-pch.c:241
+#, fuzzy, c-format
+msgid "%s: not a PCH file"
+msgstr "%s: Äåí åßíáé êáíïíéêü áñ÷åßï"
-#: c-parse.y:2852 cp/spew.c:1544 objc-parse.y:3551
+#: c-pch.c:260
#, c-format
-msgid "%s before numeric constant"
-msgstr "%s ðñéí áðü áñéèìçôéêÞ óôáèåñÜ"
+msgid "%s: created on host `%.*s', but used on host `%s'"
+msgstr ""
-# src/request.c:37
-#: c-parse.y:2854 objc-parse.y:3553
+#: c-pch.c:270
#, c-format
-msgid "%s before \"%s\""
-msgstr "%s ðñéí áðü \"%s\""
+msgid "%s: created for target `%.*s', but used for target `%s'"
+msgstr ""
-#: c-parse.y:2856 objc-parse.y:3555
+#: c-pch.c:283
#, c-format
-msgid "%s before '%s' token"
-msgstr "%s ðñéí áðü ôï óýìâïëï '%s'"
+msgid "%s: created by version `%.*s', but this is version `%s'"
+msgstr ""
-#: c-parse.y:2921
-msgid "traditional C rejects string concatenation"
+#: c-pch.c:299
+#, c-format
+msgid "%s: created with -g%s, but used with -g%s"
msgstr ""
-#: c-parse.y:3047 objc-parse.y:3779
+#: c-pch.c:313
#, c-format
-msgid "syntax error at '%s' token"
-msgstr "óõíôáêôéêü óöÜëìá óôï óýìâïëï '%s'"
+msgid "%s: had text segment at different address"
+msgstr ""
+
+# src/request.c:37
+#: c-pch.c:330 cpperror.c:176 gcc.c:6547
+#, c-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: c-pch.c:361
+#, fuzzy
+msgid "calling fdopen"
+msgstr "fdopen"
+
+#: c-pch.c:369 c-pch.c:381
+#, fuzzy
+msgid "reading"
+msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n"
-#: c-pragma.c:107
+#: c-pragma.c:106
msgid "#pragma pack (pop) encountered without matching #pragma pack (push, <n>)"
msgstr ""
-#: c-pragma.c:125
+#: c-pragma.c:124
#, c-format
msgid "#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s, <n>)"
msgstr ""
-#: c-pragma.c:145
+#: c-pragma.c:144
#, fuzzy
msgid "#pragma pack(push[, id], <n>) is not supported on this target"
msgstr "ðñïåéäïðïßçóç: ôï --pid=PID äåí õðïóôçñßæåôáé óå áõôü ôï óýóôçìá"
-#: c-pragma.c:147
+#: c-pragma.c:146
#, fuzzy
msgid "#pragma pack(pop[, id], <n>) is not supported on this target"
msgstr "ðñïåéäïðïßçóç: ôï --pid=PID äåí õðïóôçñßæåôáé óå áõôü ôï óýóôçìá"
-#: c-pragma.c:167
+#: c-pragma.c:165
msgid "missing '(' after '#pragma pack' - ignored"
msgstr ""
-#: c-pragma.c:180 c-pragma.c:230
+#: c-pragma.c:178 c-pragma.c:228
#, fuzzy
msgid "malformed '#pragma pack' - ignored"
msgstr "êáêïäéáìïñöùìÝíç ãñáììÞ áãíïÞèçêå"
-#: c-pragma.c:185
+#: c-pragma.c:183
msgid "malformed '#pragma pack(push[, id], <n>)' - ignored"
msgstr ""
-#: c-pragma.c:187
+#: c-pragma.c:185
msgid "malformed '#pragma pack(pop[, id])' - ignored"
msgstr ""
-#: c-pragma.c:196
+#: c-pragma.c:194
#, c-format
msgid "unknown action '%s' for '#pragma pack' - ignored"
msgstr ""
-#: c-pragma.c:233
+#: c-pragma.c:231
msgid "junk at end of '#pragma pack'"
msgstr ""
-#: c-pragma.c:247
+#: c-pragma.c:245
#, c-format
msgid "alignment must be a small power of two, not %d"
msgstr ""
-#: c-pragma.c:280
-#, c-format
-msgid "applying #pragma weak `%s' after first use results in unspecified behavior"
-msgstr ""
+#: c-pragma.c:278
+#, fuzzy
+msgid "%Japplying #pragma weak '%D' after first use results in unspecified behavior"
+msgstr "Ç ëåéôïõñãßá äåí õðïóôçñßæåôáé"
-#: c-pragma.c:328 c-pragma.c:333
+#: c-pragma.c:325 c-pragma.c:330
#, fuzzy
msgid "malformed #pragma weak, ignored"
msgstr "êáêïäéáìïñöùìÝíç ãñáììÞ áãíïÞèçêå"
-#: c-pragma.c:337
+#: c-pragma.c:334
msgid "junk at end of #pragma weak"
msgstr ""
-#: c-pragma.c:372 c-pragma.c:377
+#: c-pragma.c:367 c-pragma.c:372
#, fuzzy
msgid "malformed #pragma redefine_extname, ignored"
msgstr "êáêïäéáìïñöùìÝíç ãñáììÞ áãíïÞèçêå"
-#: c-pragma.c:382
+#: c-pragma.c:377
#, fuzzy
msgid "junk at end of #pragma redefine_extname"
msgstr "ìç ôåñìáôéæüìåío áëöáñéèìçôéêü"
-#: c-pragma.c:389 c-pragma.c:470
+#: c-pragma.c:384 c-pragma.c:462
msgid "#pragma redefine_extname conflicts with declaration"
msgstr ""
-#: c-pragma.c:420
+#: c-pragma.c:413
#, fuzzy
msgid "malformed #pragma extern_prefix, ignored"
msgstr "êáêïäéáìïñöùìÝíç ãñáììÞ áãíïÞèçêå"
-#: c-pragma.c:425
+#: c-pragma.c:418
#, fuzzy
msgid "junk at end of #pragma extern_prefix"
msgstr "ìç ôåñìáôéæüìåío áëöáñéèìçôéêü"
-#: c-pragma.c:457
+#: c-pragma.c:449
msgid "asm declaration conflicts with previous rename"
msgstr ""
-#: c-semantics.c:565
-msgid "break statement not within loop or switch"
-msgstr ""
-
-#: c-semantics.c:583
-msgid "continue statement not within a loop"
-msgstr ""
-
-#: c-semantics.c:678
-msgid "destructor needed for `%#D'"
-msgstr ""
+#: c-semantics.c:697
+#, fuzzy
+msgid "destructor needed for `%D'"
+msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#: c-semantics.c:679
+#: c-semantics.c:698
msgid "where case label appears here"
msgstr ""
-#: c-semantics.c:682
+#: c-semantics.c:701
msgid "(enclose actions of previous case statements requiring destructors in their own scope.)"
msgstr ""
-#: c-semantics.c:725 c-typeck.c:6942 cp/semantics.c:897
+#: c-semantics.c:737 c-typeck.c:6239 cp/semantics.c:1070
#, c-format
msgid "%s qualifier ignored on asm"
msgstr ""
-#: c-typeck.c:123
+#: c-semantics.c:991
+msgid "will never be executed"
+msgstr ""
+
+#: c-typeck.c:120
#, c-format
msgid "`%s' has an incomplete type"
msgstr ""
-#: c-typeck.c:145 cp/call.c:2865
+#: c-typeck.c:142 cp/call.c:2532
#, fuzzy
msgid "invalid use of void expression"
msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç"
-#: c-typeck.c:153
+#: c-typeck.c:150
#, fuzzy
msgid "invalid use of flexible array member"
msgstr "ìç Ýãêõñç þñá ôçò ìÝñáò"
-#: c-typeck.c:159
+#: c-typeck.c:156
msgid "invalid use of array with unspecified bounds"
msgstr ""
-#: c-typeck.c:167
+#: c-typeck.c:164
#, fuzzy, c-format
msgid "invalid use of undefined type `%s %s'"
msgstr "ìç Ýãêõñïò áñéèìüò áðü êåíÝò ãñáììÝò: `%s'"
#. If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL.
-#: c-typeck.c:171
+#: c-typeck.c:168
#, fuzzy, c-format
msgid "invalid use of incomplete typedef `%s'"
msgstr "ìç Ýãêõñïò äåýôåñïò ôåëåóôÞò óå êáôÜóôáóç óõìâáôüôçôáò `%s'"
-#: c-typeck.c:424 c-typeck.c:438
+#: c-typeck.c:415 c-typeck.c:430
msgid "function types not truly compatible in ISO C"
msgstr ""
-#: c-typeck.c:603
+#: c-typeck.c:611
msgid "types are not quite compatible"
msgstr ""
-#: c-typeck.c:757 c-typeck.c:2687
+#: c-typeck.c:820
+msgid "function return types not compatible due to `volatile'"
+msgstr ""
+
+#: c-typeck.c:966 c-typeck.c:2143
msgid "arithmetic on pointer to an incomplete type"
msgstr ""
-#: c-typeck.c:1136
+#: c-typeck.c:1339
#, c-format
msgid "%s has no member named `%s'"
msgstr ""
-#: c-typeck.c:1172
+#: c-typeck.c:1375
#, c-format
msgid "request for member `%s' in something not a structure or union"
msgstr ""
-#: c-typeck.c:1204
+#: c-typeck.c:1404
msgid "dereferencing pointer to incomplete type"
msgstr ""
-#: c-typeck.c:1208
+#: c-typeck.c:1408
msgid "dereferencing `void *' pointer"
msgstr ""
-#: c-typeck.c:1225 cp/typeck.c:2369
+#: c-typeck.c:1425 cp/typeck.c:2104
#, fuzzy, c-format
msgid "invalid type argument of `%s'"
msgstr "Ç ðáñÜìåôñïò `%s' äåí åßíáé Ýãêõñç."
-#: c-typeck.c:1244 cp/typeck.c:2395
+#: c-typeck.c:1443 cp/typeck.c:2129
msgid "subscript missing in array reference"
msgstr ""
-#: c-typeck.c:1265 cp/typeck.c:2437
+#: c-typeck.c:1464 cp/typeck.c:2171
msgid "array subscript has type `char'"
msgstr ""
-#: c-typeck.c:1273 c-typeck.c:1362 cp/typeck.c:2444 cp/typeck.c:2523
+#: c-typeck.c:1472 c-typeck.c:1561 cp/typeck.c:2175 cp/typeck.c:2261
msgid "array subscript is not an integer"
msgstr ""
-#: c-typeck.c:1306
+#: c-typeck.c:1505
msgid "ISO C forbids subscripting `register' array"
msgstr ""
-#: c-typeck.c:1308
+#: c-typeck.c:1507
msgid "ISO C90 forbids subscripting non-lvalue array"
msgstr ""
-#: c-typeck.c:1341
+#: c-typeck.c:1540
msgid "subscript has type `char'"
msgstr ""
-#: c-typeck.c:1357 cp/typeck.c:2518
+#: c-typeck.c:1556 cp/typeck.c:2256
msgid "subscripted value is neither array nor pointer"
msgstr ""
-#: c-typeck.c:1411
-#, c-format
-msgid "`%s' undeclared here (not in a function)"
-msgstr ""
-
-#: c-typeck.c:1418
-#, c-format
-msgid "`%s' undeclared (first use in this function)"
-msgstr ""
-
-#: c-typeck.c:1423
-msgid "(Each undeclared identifier is reported only once"
-msgstr ""
-
-#: c-typeck.c:1424
-msgid "for each function it appears in.)"
-msgstr ""
-
-#: c-typeck.c:1441
+#: c-typeck.c:1586
#, c-format
msgid "local declaration of `%s' hides instance variable"
msgstr ""
-#: c-typeck.c:1518
+#: c-typeck.c:1679
#, fuzzy
msgid "called object is not a function"
msgstr "Ôï åðþíõìï áíôéêåßìåíï äåí åßíáé áíáæçôÞóéìï"
-#: c-typeck.c:1604 cp/typeck.c:2829
+#. This situation leads to run-time undefined behavior. We can't,
+#. therefore, simply error unless we can prove that all possible
+#. executions of the program must execute the code.
+#: c-typeck.c:1711
+msgid "function called through a non-compatible type"
+msgstr ""
+
+#: c-typeck.c:1805 cp/typeck.c:2544
#, fuzzy
msgid "too many arguments to function"
msgstr "ðÜñá ðïëëÜ ïñßóìáôá"
-#: c-typeck.c:1625
+#: c-typeck.c:1826
#, c-format
msgid "type of formal parameter %d is incomplete"
msgstr ""
-#: c-typeck.c:1638
+#: c-typeck.c:1839
#, c-format
msgid "%s as integer rather than floating due to prototype"
msgstr ""
-#: c-typeck.c:1641
+#: c-typeck.c:1842
#, c-format
msgid "%s as integer rather than complex due to prototype"
msgstr ""
-#: c-typeck.c:1644
+#: c-typeck.c:1845
#, c-format
msgid "%s as complex rather than floating due to prototype"
msgstr ""
-#: c-typeck.c:1647
+#: c-typeck.c:1848
#, c-format
msgid "%s as floating rather than integer due to prototype"
msgstr ""
-#: c-typeck.c:1650
+#: c-typeck.c:1851
#, c-format
msgid "%s as complex rather than integer due to prototype"
msgstr ""
-#: c-typeck.c:1653
+#: c-typeck.c:1854
#, c-format
msgid "%s as floating rather than complex due to prototype"
msgstr ""
-#: c-typeck.c:1663
+#: c-typeck.c:1864
#, c-format
msgid "%s as `float' rather than `double' due to prototype"
msgstr ""
-#: c-typeck.c:1681
+#: c-typeck.c:1882
#, c-format
msgid "%s with different width due to prototype"
msgstr ""
-#: c-typeck.c:1715
+#: c-typeck.c:1908
#, c-format
msgid "%s as unsigned due to prototype"
msgstr ""
-#: c-typeck.c:1717
+#: c-typeck.c:1910
#, c-format
msgid "%s as signed due to prototype"
msgstr ""
-#: c-typeck.c:1751 cp/typeck.c:2933
+#: c-typeck.c:1944 cp/typeck.c:2650
#, fuzzy
msgid "too few arguments to function"
msgstr "ðïëý ëßãá ïñßóìáôá"
-#: c-typeck.c:1793
+#: c-typeck.c:1984
msgid "suggest parentheses around + or - inside shift"
msgstr ""
-#: c-typeck.c:1800
+#: c-typeck.c:1991
msgid "suggest parentheses around && within ||"
msgstr ""
-#: c-typeck.c:1809
+#: c-typeck.c:2000
msgid "suggest parentheses around arithmetic in operand of |"
msgstr ""
-#: c-typeck.c:1812
+#: c-typeck.c:2003
msgid "suggest parentheses around comparison in operand of |"
msgstr ""
-#: c-typeck.c:1821
+#: c-typeck.c:2012
msgid "suggest parentheses around arithmetic in operand of ^"
msgstr ""
-#: c-typeck.c:1824
+#: c-typeck.c:2015
msgid "suggest parentheses around comparison in operand of ^"
msgstr ""
-#: c-typeck.c:1831
+#: c-typeck.c:2022
msgid "suggest parentheses around + or - in operand of &"
msgstr ""
-#: c-typeck.c:1834
+#: c-typeck.c:2025
msgid "suggest parentheses around comparison in operand of &"
msgstr ""
-#: c-typeck.c:1841
+#: c-typeck.c:2032
msgid "comparisons like X<=Y<=Z do not have their mathematical meaning"
msgstr ""
-#: c-typeck.c:2001 c-typeck.c:2036
-msgid "division by zero"
-msgstr "äéáßñåóç ìå ìçäÝí"
-
-#: c-typeck.c:2081 cp/typeck.c:3194
-msgid "right shift count is negative"
-msgstr ""
-
-#: c-typeck.c:2088 cp/typeck.c:3200
-msgid "right shift count >= width of type"
-msgstr ""
-
-#: c-typeck.c:2109 cp/typeck.c:3219
-msgid "left shift count is negative"
-msgstr ""
-
-#: c-typeck.c:2112 cp/typeck.c:3221
-msgid "left shift count >= width of type"
-msgstr ""
-
-#: c-typeck.c:2133
-msgid "shift count is negative"
-msgstr ""
-
-#: c-typeck.c:2135
-msgid "shift count >= width of type"
-msgstr ""
-
-#: c-typeck.c:2152 cp/typeck.c:3256
-msgid "comparing floating point with == or != is unsafe"
-msgstr ""
-
-#: c-typeck.c:2178 c-typeck.c:2184
-msgid "ISO C forbids comparison of `void *' with function pointer"
-msgstr ""
-
-#: c-typeck.c:2187 c-typeck.c:2227 c-typeck.c:2255
-msgid "comparison of distinct pointer types lacks a cast"
-msgstr ""
-
-#: c-typeck.c:2201 c-typeck.c:2206 c-typeck.c:2275 c-typeck.c:2280
-msgid "comparison between pointer and integer"
-msgstr ""
-
-#: c-typeck.c:2222 c-typeck.c:2250
-msgid "ISO C forbids ordered comparisons of pointers to functions"
-msgstr ""
-
-#: c-typeck.c:2247
-msgid "comparison of complete and incomplete pointers"
-msgstr ""
-
-#: c-typeck.c:2263 c-typeck.c:2270
-msgid "ordered comparison of pointer with integer zero"
-msgstr ""
-
-#: c-typeck.c:2294 cp/typeck.c:3389
-#, fuzzy
-msgid "unordered comparison on non-floating point argument"
-msgstr "Ç ðáñÜìåôñïò êéíçôÞò õðïäéáóôïëÞò äåí åßíáé Ýãêõñç: %s"
-
-#: c-typeck.c:2505
-msgid "comparison between signed and unsigned"
-msgstr ""
-
-#: c-typeck.c:2551 cp/typeck.c:3633
-msgid "comparison of promoted ~unsigned with constant"
-msgstr ""
-
-#: c-typeck.c:2559 cp/typeck.c:3641
-msgid "comparison of promoted ~unsigned with unsigned"
-msgstr ""
-
-#: c-typeck.c:2639
+#: c-typeck.c:2095
msgid "pointer of type `void *' used in subtraction"
msgstr ""
-#: c-typeck.c:2641
+#: c-typeck.c:2097
msgid "pointer to a function used in subtraction"
msgstr ""
-#: c-typeck.c:2738
+#: c-typeck.c:2191
msgid "wrong type argument to unary plus"
msgstr ""
-#: c-typeck.c:2751
+#: c-typeck.c:2204
msgid "wrong type argument to unary minus"
msgstr ""
-#: c-typeck.c:2768
+#: c-typeck.c:2221
msgid "ISO C does not support `~' for complex conjugation"
msgstr ""
-#: c-typeck.c:2774
+#: c-typeck.c:2227
msgid "wrong type argument to bit-complement"
msgstr ""
-#: c-typeck.c:2783
+#: c-typeck.c:2235
#, fuzzy
msgid "wrong type argument to abs"
msgstr "ëÜèïò áñéèìüò ïñéóìÜôùí"
-#: c-typeck.c:2795
+#: c-typeck.c:2247
msgid "wrong type argument to conjugation"
msgstr ""
-#: c-typeck.c:2809
+#: c-typeck.c:2261
msgid "wrong type argument to unary exclamation mark"
msgstr ""
-#: c-typeck.c:2852
+#: c-typeck.c:2304
msgid "ISO C does not support `++' and `--' on complex types"
msgstr ""
-#: c-typeck.c:2867 c-typeck.c:2899
+#: c-typeck.c:2319 c-typeck.c:2351
msgid "wrong type argument to increment"
msgstr ""
-#: c-typeck.c:2869 c-typeck.c:2901
+#: c-typeck.c:2321 c-typeck.c:2353
msgid "wrong type argument to decrement"
msgstr ""
-#: c-typeck.c:2890
+#: c-typeck.c:2342
msgid "increment of pointer to unknown structure"
msgstr ""
-#: c-typeck.c:2892
+#: c-typeck.c:2344
msgid "decrement of pointer to unknown structure"
msgstr ""
-#: c-typeck.c:3029
-msgid "ISO C forbids the address of a cast expression"
-msgstr ""
-
-#: c-typeck.c:3039
+#: c-typeck.c:2469
#, fuzzy
msgid "invalid lvalue in unary `&'"
msgstr "ìç Ýãêõñïò ÷ñüíïò áíáðÞäçò"
-#: c-typeck.c:3071
+#: c-typeck.c:2501
#, c-format
msgid "attempt to take address of bit-field structure member `%s'"
msgstr ""
-#: c-typeck.c:3180 c-typeck.c:4651 c-typeck.c:4667 c-typeck.c:4683
-#: final.c:3146 final.c:3148 gcc.c:4381 rtl-error.c:122 toplev.c:1694
-#: config/cris/cris.c:545 cp/spew.c:1538 cp/typeck.c:4367 java/expr.c:364
-#: java/verify.c:1467 java/verify.c:1468 java/verify.c:1483
-#, c-format
-msgid "%s"
-msgstr "%s"
-
-#: c-typeck.c:3241
-msgid "ISO C forbids use of conditional expressions as lvalues"
-msgstr ""
+#: c-typeck.c:2634
+#, fuzzy
+msgid "use of conditional expressions as lvalues is deprecated"
+msgstr "ËÜèïò Ýêöñáóç óôçí áðïôßìçóç (ëÜèïò åßóïäïò): %s"
-#: c-typeck.c:3244
-msgid "ISO C forbids use of compound expressions as lvalues"
+#: c-typeck.c:2637
+msgid "use of compound expressions as lvalues is deprecated"
msgstr ""
-#: c-typeck.c:3247
-msgid "ISO C forbids use of cast expressions as lvalues"
+#: c-typeck.c:2640
+msgid "use of cast expressions as lvalues is deprecated"
msgstr ""
-#: c-typeck.c:3264
+#: c-typeck.c:2655
#, c-format
msgid "%s of read-only member `%s'"
msgstr ""
-#: c-typeck.c:3268
+#: c-typeck.c:2659
#, fuzzy, c-format
msgid "%s of read-only variable `%s'"
msgstr "Ìç áíáãíùñßóéìç ìåôáâëçôÞ `%s'"
-#: c-typeck.c:3271
+#: c-typeck.c:2662
#, c-format
msgid "%s of read-only location"
msgstr ""
-#: c-typeck.c:3290
+#: c-typeck.c:2680
#, fuzzy, c-format
msgid "cannot take address of bit-field `%s'"
msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï áñ÷åßï fifo `%s'"
-#: c-typeck.c:3318
+#: c-typeck.c:2708 treelang/treetree.c:946
#, c-format
msgid "global register variable `%s' used in nested function"
msgstr ""
-#: c-typeck.c:3322
+#: c-typeck.c:2712 treelang/treetree.c:950
#, c-format
msgid "register variable `%s' used in nested function"
msgstr ""
-#: c-typeck.c:3329
+#: c-typeck.c:2719 treelang/treetree.c:957
#, c-format
msgid "address of global register variable `%s' requested"
msgstr ""
-#: c-typeck.c:3341
+#: c-typeck.c:2731
msgid "cannot put object with volatile field into register"
msgstr ""
-#: c-typeck.c:3345
+#: c-typeck.c:2735 treelang/treetree.c:962
#, c-format
msgid "address of register variable `%s' requested"
msgstr ""
-#: c-typeck.c:3453
+#: c-typeck.c:2820
msgid "signed and unsigned type in conditional expression"
msgstr ""
-#: c-typeck.c:3460
+#: c-typeck.c:2827
msgid "ISO C forbids conditional expr with only one void side"
msgstr ""
-#: c-typeck.c:3476 c-typeck.c:3483
+#: c-typeck.c:2843 c-typeck.c:2850
msgid "ISO C forbids conditional expr between `void *' and function pointer"
msgstr ""
-#: c-typeck.c:3489
+#: c-typeck.c:2856
msgid "pointer type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:3496 c-typeck.c:3506
+#: c-typeck.c:2863 c-typeck.c:2873
msgid "pointer/integer type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:3520
+#: c-typeck.c:2887
msgid "type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:3591 cp/typeck.c:4623
+#: c-typeck.c:2947
msgid "left-hand operand of comma expression has no effect"
msgstr ""
-#: c-typeck.c:3635
+#: c-typeck.c:2978
msgid "cast specifies array type"
msgstr ""
-#: c-typeck.c:3641
+#: c-typeck.c:2984
msgid "cast specifies function type"
msgstr ""
-#: c-typeck.c:3651
+#: c-typeck.c:2994
msgid "ISO C forbids casting nonscalar to the same type"
msgstr ""
-#: c-typeck.c:3670
+#: c-typeck.c:3012
msgid "ISO C forbids casts to union type"
msgstr ""
-#: c-typeck.c:3685
+#: c-typeck.c:3020
msgid "cast to union type from type not present in union"
msgstr ""
-#: c-typeck.c:3736
+#: c-typeck.c:3071
msgid "cast adds new qualifiers to function type"
msgstr ""
#. There are qualifiers present in IN_OTYPE that are not
#. present in IN_TYPE.
-#: c-typeck.c:3741
+#: c-typeck.c:3076
msgid "cast discards qualifiers from pointer target type"
msgstr ""
-#: c-typeck.c:3756
+#: c-typeck.c:3091
msgid "cast increases required alignment of target type"
msgstr ""
-#: c-typeck.c:3762 cp/typeck.c:5144
+#: c-typeck.c:3097 cp/typeck.c:4889
msgid "cast from pointer to integer of different size"
msgstr ""
-#: c-typeck.c:3767
+#: c-typeck.c:3102
msgid "cast does not match function type"
msgstr ""
-#: c-typeck.c:3774 cp/typeck.c:5151
+#: c-typeck.c:3109 cp/typeck.c:4896
msgid "cast to pointer from integer of different size"
msgstr ""
-#: c-typeck.c:3786
+#: c-typeck.c:3121
msgid "type-punning to incomplete type might break strict-aliasing rules"
msgstr ""
-#: c-typeck.c:3790
+#: c-typeck.c:3125
msgid "dereferencing type-punned pointer will break strict-aliasing rules"
msgstr ""
+#: c-typeck.c:3136
+msgid "ISO C forbids conversion of function pointer to object pointer type"
+msgstr ""
+
+#: c-typeck.c:3145
+msgid "ISO C forbids conversion of object pointer to function pointer type"
+msgstr ""
+
#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
#. Reject anything strange now.
-#: c-typeck.c:3949
+#: c-typeck.c:3303
#, fuzzy
msgid "invalid lvalue in assignment"
msgstr "Ç ðáñÜìåôñïò êéíçôÞò õðïäéáóôïëÞò äåí åßíáé Ýãêõñç: %s"
#. Convert new value to destination type.
-#: c-typeck.c:3958 c-typeck.c:3983 c-typeck.c:4000 cp/typeck.c:5266
-#: cp/typeck.c:5416
+#. Check this here to avoid odd errors when trying to convert
+#. a throw to the type of the COND_EXPR.
+#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
+#. Reject anything strange now.
+#: c-typeck.c:3312 c-typeck.c:3337 c-typeck.c:3354 cp/typeck.c:5008
+#: cp/typeck.c:5152
#, fuzzy
msgid "assignment"
msgstr "ðñïóðÝñáóìá ïñßóìáôïò"
-#: c-typeck.c:4070
+#: c-typeck.c:3421
#, fuzzy
msgid "cannot pass rvalue to reference parameter"
msgstr "äåí åßíáé äõíáôüí íá ãßíåé `stat' ôï locale áñ÷åßï `%s'"
-#: c-typeck.c:4174 c-typeck.c:4241
+#: c-typeck.c:3530 c-typeck.c:3606
#, c-format
msgid "%s makes qualified function pointer from unqualified"
msgstr ""
-#: c-typeck.c:4178 c-typeck.c:4221
+#: c-typeck.c:3534 c-typeck.c:3586
#, c-format
msgid "%s discards qualifiers from pointer target type"
msgstr ""
-#: c-typeck.c:4184
+#: c-typeck.c:3540
msgid "ISO C prohibits argument conversion to union type"
msgstr ""
-#: c-typeck.c:4213
+#: c-typeck.c:3578
#, c-format
msgid "ISO C forbids %s between function pointer and `void *'"
msgstr ""
-#: c-typeck.c:4230
+#: c-typeck.c:3595
#, c-format
msgid "pointer targets in %s differ in signedness"
msgstr ""
-#: c-typeck.c:4246
+#: c-typeck.c:3611
#, c-format
msgid "%s from incompatible pointer type"
msgstr ""
-#: c-typeck.c:4252 c-typeck.c:4804 cp/typeck.c:1653
+#: c-typeck.c:3617 c-typeck.c:4124 cp/typeck.c:1366
#, fuzzy
msgid "invalid use of non-lvalue array"
msgstr "ìç Ýãêõñç þñá ôçò ìÝñáò"
-#: c-typeck.c:4267
+#: c-typeck.c:3631
#, c-format
msgid "%s makes pointer from integer without a cast"
msgstr "%s ìåôáôñÝðåé áêÝñáéï óå äåßêôç ÷ùñßò ìåôáôñïðÝá"
-#: c-typeck.c:4275
+#: c-typeck.c:3638
#, c-format
msgid "%s makes integer from pointer without a cast"
msgstr ""
-#: c-typeck.c:4289 c-typeck.c:4292
+#: c-typeck.c:3652 c-typeck.c:3655
#, fuzzy, c-format
msgid "incompatible type for argument %d of `%s'"
msgstr "Ìç Ýãêõñç áêÝñáéá ðáñÜìåôñïò `%s'"
-#: c-typeck.c:4296
+#: c-typeck.c:3659
#, c-format
msgid "incompatible type for argument %d of indirect function call"
msgstr ""
-#: c-typeck.c:4300
+#: c-typeck.c:3663
#, fuzzy, c-format
msgid "incompatible types in %s"
msgstr "ìç Ýãêõñï åßäïò áëöáñéèìçôéêïý `%s'"
#. Function name is known; supply it.
-#: c-typeck.c:4358
+#: c-typeck.c:3719
#, fuzzy, c-format
msgid "passing arg of `%s'"
msgstr "ôï ðÝñáóìá ôïõ ïñßóìáôïò %d áðü `%s'"
#. Function name unknown (call through ptr).
-#: c-typeck.c:4368
+#: c-typeck.c:3728
#, fuzzy
msgid "passing arg of pointer to function"
msgstr "ôï ðÝñáóìá ôïõ ïñßóìáôïò %d ôïõ äåßêôç óôç óõíÜñôçóç"
#. Function name is known; supply it.
-#: c-typeck.c:4376
+#: c-typeck.c:3736
#, c-format
msgid "passing arg %d of `%s'"
msgstr "ôï ðÝñáóìá ôïõ ïñßóìáôïò %d áðü `%s'"
#. Function name unknown (call through ptr); just give arg number.
-#: c-typeck.c:4386
+#: c-typeck.c:3745
#, c-format
msgid "passing arg %d of pointer to function"
msgstr "ôï ðÝñáóìá ôïõ ïñßóìáôïò %d ôïõ äåßêôç óôç óõíÜñôçóç"
-#: c-typeck.c:4452
-msgid "initializer for static variable is not constant"
-msgstr ""
-
-#: c-typeck.c:4458
-msgid "initializer for static variable uses complicated arithmetic"
-msgstr ""
-
-#: c-typeck.c:4466
-msgid "aggregate initializer is not constant"
-msgstr ""
-
-#: c-typeck.c:4468
-msgid "aggregate initializer uses complicated arithmetic"
-msgstr ""
-
-#: c-typeck.c:4475
+#: c-typeck.c:3802
msgid "traditional C rejects automatic aggregate initialization"
msgstr ""
# src/request.c:263
-#: c-typeck.c:4654 c-typeck.c:4670 c-typeck.c:4686
+#: c-typeck.c:3973 c-typeck.c:3988 c-typeck.c:4003
#, fuzzy, c-format
msgid "(near initialization for `%s')"
msgstr "Ôï âÞìá áñ÷éêïðïßçóçò áðÝôõ÷å"
-#: c-typeck.c:4737 cp/typeck2.c:488
+#: c-typeck.c:4052 cp/typeck2.c:559
msgid "char-array initialized from wide string"
msgstr ""
-#: c-typeck.c:4744 cp/typeck2.c:495
+#: c-typeck.c:4059 cp/typeck2.c:566
msgid "int-array initialized from non-wide string"
msgstr ""
-#: c-typeck.c:4762 cp/typeck2.c:511
+#: c-typeck.c:4077 cp/typeck2.c:581
msgid "initializer-string for array of chars is too long"
msgstr ""
-#: c-typeck.c:4822
+#: c-typeck.c:4147
msgid "array initialized from non-constant array expression"
msgstr ""
-#: c-typeck.c:4839 c-typeck.c:4841 c-typeck.c:4857 c-typeck.c:4878
-#: c-typeck.c:6281
+#: c-typeck.c:4164 c-typeck.c:4166 c-typeck.c:4182 c-typeck.c:4203
+#: c-typeck.c:5585
#, fuzzy
msgid "initializer element is not constant"
msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò"
# src/request.c:263
-#: c-typeck.c:4873
+#: c-typeck.c:4198
msgid "initialization"
msgstr "áñ÷éêïðïßçóç"
-#: c-typeck.c:4884 c-typeck.c:6286
+#: c-typeck.c:4209 c-typeck.c:5590
msgid "initializer element is not computable at load time"
msgstr ""
-#: c-typeck.c:4899 cp/typeck2.c:588
+#: c-typeck.c:4224 cp/typeck2.c:658
#, fuzzy
msgid "invalid initializer"
msgstr "ìç Ýãêõñï ìÝãåèïò ïñéæüíôéïõ óôçëïèÝôç: %s"
-#: c-typeck.c:5393
+#: c-typeck.c:4509 cp/decl.c:4465
+#, fuzzy
+msgid "opaque vector types cannot be initialized"
+msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
+
+#: c-typeck.c:4703
#, fuzzy
msgid "extra brace group at end of initializer"
msgstr "áêïëïõèïýí óêïõðßäéá óôï ôÝëïò ôçò ãñáììÞò"
-#: c-typeck.c:5413
+#: c-typeck.c:4723
msgid "missing braces around initializer"
msgstr ""
-#: c-typeck.c:5473
+#: c-typeck.c:4783
msgid "braces around scalar initializer"
msgstr ""
-#: c-typeck.c:5521
+#: c-typeck.c:4830
msgid "initialization of flexible array member in a nested context"
msgstr ""
-#: c-typeck.c:5523
+#: c-typeck.c:4832
msgid "initialization of a flexible array member"
msgstr ""
-#: c-typeck.c:5554
+#: c-typeck.c:4863
#, fuzzy
msgid "missing initializer"
msgstr "Ý÷åé ðáñáëçöèåß ôï áñ÷åßï ðñïïñéóìïý"
-#: c-typeck.c:5580
+#: c-typeck.c:4889
msgid "empty scalar initializer"
msgstr ""
-#: c-typeck.c:5585
+#: c-typeck.c:4894
msgid "extra elements in scalar initializer"
msgstr ""
-#: c-typeck.c:5671
+#: c-typeck.c:4979
msgid "initialization designators may not nest"
msgstr ""
-#: c-typeck.c:5692 c-typeck.c:5763
+#: c-typeck.c:5000 c-typeck.c:5068
msgid "array index in non-array initializer"
msgstr ""
-#: c-typeck.c:5697 c-typeck.c:5817
+#: c-typeck.c:5005 c-typeck.c:5121
msgid "field name not in record or union initializer"
msgstr ""
-#: c-typeck.c:5759 c-typeck.c:5761
+#: c-typeck.c:5064 c-typeck.c:5066
msgid "nonconstant array index in initializer"
msgstr ""
-#: c-typeck.c:5765 c-typeck.c:5768
+#: c-typeck.c:5070 c-typeck.c:5073
msgid "array index in initializer exceeds array bounds"
msgstr ""
-#: c-typeck.c:5779
+#: c-typeck.c:5084
msgid "empty index range in initializer"
msgstr ""
-#: c-typeck.c:5788
+#: c-typeck.c:5093
msgid "array index range in initializer exceeds array bounds"
msgstr ""
-#: c-typeck.c:5829
+#: c-typeck.c:5133
#, c-format
msgid "unknown field `%s' specified in initializer"
msgstr ""
-#: c-typeck.c:5866 c-typeck.c:5887 c-typeck.c:6348
+#: c-typeck.c:5169 c-typeck.c:5190 c-typeck.c:5652
msgid "initialized field with side-effects overwritten"
msgstr ""
-#: c-typeck.c:6558
+#: c-typeck.c:5860
msgid "excess elements in char array initializer"
msgstr ""
-#: c-typeck.c:6565 c-typeck.c:6611
+#: c-typeck.c:5867 c-typeck.c:5913
msgid "excess elements in struct initializer"
msgstr ""
-#: c-typeck.c:6626
+#: c-typeck.c:5928
msgid "non-static initialization of a flexible array member"
msgstr ""
-#: c-typeck.c:6693
+#: c-typeck.c:5995
msgid "excess elements in union initializer"
msgstr ""
-#: c-typeck.c:6714
+#: c-typeck.c:6016
msgid "traditional C rejects initialization of unions"
msgstr ""
-#: c-typeck.c:6777
+#: c-typeck.c:6079
msgid "excess elements in array initializer"
msgstr ""
-#: c-typeck.c:6806
+#: c-typeck.c:6108
msgid "excess elements in vector initializer"
msgstr ""
-#: c-typeck.c:6828
+#: c-typeck.c:6130
msgid "excess elements in scalar initializer"
msgstr ""
-#: c-typeck.c:6935
+#: c-typeck.c:6232
#, fuzzy
msgid "asm template is not a string constant"
msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò"
-#: c-typeck.c:6967
+#: c-typeck.c:6264
msgid "invalid lvalue in asm statement"
msgstr ""
-#: c-typeck.c:7042
+#: c-typeck.c:6336
#, fuzzy
msgid "modification by `asm'"
msgstr "Ç ôñïðïðïßçóç áðÝôõ÷å"
-#: c-typeck.c:7061 cp/typeck.c:6237
+#: c-typeck.c:6354 cp/typeck.c:5926
msgid "function declared `noreturn' has a `return' statement"
msgstr ""
-#: c-typeck.c:7068
+#: c-typeck.c:6361
msgid "`return' with no value, in function returning non-void"
msgstr "`return' ÷ùñßò ôéìÞ, óå óõíÜñôçóç ðïõ åðéóôñÝöåé ìç-êåíü"
-#: c-typeck.c:7074
+#: c-typeck.c:6367
msgid "`return' with a value, in function returning void"
msgstr ""
-#: c-typeck.c:7078
+#: c-typeck.c:6371
msgid "return"
msgstr "åðéóôñïöÞ"
-#: c-typeck.c:7130
+#: c-typeck.c:6423
msgid "function returns address of local variable"
msgstr ""
-#: c-typeck.c:7186 cp/semantics.c:555
+#: c-typeck.c:6478 cp/semantics.c:749
msgid "switch quantity not an integer"
msgstr ""
-#: c-typeck.c:7196
+#: c-typeck.c:6488
msgid "`long' switch expression not converted to `int' in ISO C"
msgstr ""
-#: c-typeck.c:7231 cp/decl.c:5523
+#: c-typeck.c:6529 cp/parser.c:5538
msgid "case label not within a switch statement"
msgstr ""
-#: c-typeck.c:7233 cp/decl.c:5528
+#: c-typeck.c:6531
msgid "`default' label not within a switch statement"
msgstr ""
-#: calls.c:1934 tree-inline.c:1177
-#, c-format
-msgid "inlining failed in call to `%s'"
+#: c-typeck.c:6683 c-typeck.c:6717
+msgid "division by zero"
+msgstr "äéáßñåóç ìå ìçäÝí"
+
+#: c-typeck.c:6762 cp/typeck.c:2928
+msgid "right shift count is negative"
msgstr ""
-#: calls.c:1935 calls.c:2271 tree-inline.c:1178
+#: c-typeck.c:6769 cp/typeck.c:2934
+msgid "right shift count >= width of type"
+msgstr ""
+
+#: c-typeck.c:6790 cp/typeck.c:2953
+msgid "left shift count is negative"
+msgstr ""
+
+#: c-typeck.c:6793 cp/typeck.c:2955
+msgid "left shift count >= width of type"
+msgstr ""
+
+#: c-typeck.c:6814
+msgid "shift count is negative"
+msgstr ""
+
+#: c-typeck.c:6816
+msgid "shift count >= width of type"
+msgstr ""
+
+#: c-typeck.c:6833 cp/typeck.c:2990
+msgid "comparing floating point with == or != is unsafe"
+msgstr ""
+
+#: c-typeck.c:6859 c-typeck.c:6865
+msgid "ISO C forbids comparison of `void *' with function pointer"
+msgstr ""
+
+#: c-typeck.c:6868 c-typeck.c:6908 c-typeck.c:6936
+msgid "comparison of distinct pointer types lacks a cast"
+msgstr ""
+
+#: c-typeck.c:6882 c-typeck.c:6887 c-typeck.c:6956 c-typeck.c:6961
+msgid "comparison between pointer and integer"
+msgstr ""
+
+#: c-typeck.c:6903 c-typeck.c:6931
+msgid "ISO C forbids ordered comparisons of pointers to functions"
+msgstr ""
+
+#: c-typeck.c:6928
+msgid "comparison of complete and incomplete pointers"
+msgstr ""
+
+#: c-typeck.c:6944 c-typeck.c:6951
+msgid "ordered comparison of pointer with integer zero"
+msgstr ""
+
+#: c-typeck.c:6975 cp/typeck.c:3126
+#, fuzzy
+msgid "unordered comparison on non-floating point argument"
+msgstr "Ç ðáñÜìåôñïò êéíçôÞò õðïäéáóôïëÞò äåí åßíáé Ýãêõñç: %s"
+
+#: c-typeck.c:7185
+msgid "comparison between signed and unsigned"
+msgstr ""
+
+#: c-typeck.c:7231 cp/typeck.c:3373
+msgid "comparison of promoted ~unsigned with constant"
+msgstr ""
+
+#: c-typeck.c:7239 cp/typeck.c:3381
+msgid "comparison of promoted ~unsigned with unsigned"
+msgstr ""
+
+#: calls.c:1838
+#, fuzzy
+msgid "%Jinlining failed in call to '%F'"
+msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
+
+#: calls.c:1839 calls.c:2208 tree-inline.c:1339 tree-inline.c:1346
msgid "called from here"
msgstr ""
-#: calls.c:2270
-#, fuzzy, c-format
-msgid "can't inline call to `%s'"
+#: calls.c:2207
+#, fuzzy
+msgid "%Jcan't inline call to '%F'"
msgstr "áäõíáìßá åêôÝëåóçò ioctl óôï `%s'"
-#: calls.c:2300
+#: calls.c:2216
+msgid "ignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2229
+msgid "ignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2239
msgid "function call has aggregate value"
msgstr ""
-#: cfgloop.c:1107
+#: cfg.c:835
#, c-format
-msgid "Size of loop %d should be %d, not %d."
+msgid "bb %d on wrong place"
msgstr ""
-#: cfgloop.c:1126
+#: cfg.c:841
#, c-format
-msgid "Bb %d do not belong to loop %d."
+msgid "prev_bb of %d should be %d, not %d"
msgstr ""
-#: cfgloop.c:1144
+#: cfg.c:857
#, c-format
-msgid "Loop %d's header does not have exactly 2 entries."
+msgid "verify_flow_info: Wrong count of block %i %i"
msgstr ""
-#: cfgloop.c:1152
+#: cfg.c:863
#, c-format
-msgid "Loop %d's latch does not have exactly 1 successor."
+msgid "verify_flow_info: Wrong frequency of block %i %i"
msgstr ""
-#: cfgloop.c:1157
+#: cfg.c:871
#, c-format
-msgid "Loop %d's latch does not have header as successor."
+msgid "verify_flow_info: Duplicate edge %i->%i"
msgstr ""
-#: cfgloop.c:1162
+#: cfg.c:877
#, c-format
-msgid "Loop %d's latch does not belong directly to it."
+msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
msgstr ""
-#: cfgloop.c:1168
+#: cfg.c:883
#, c-format
-msgid "Loop %d's header does not belong directly to it."
+msgid "verify_flow_info: Wrong count of edge %i->%i %i"
msgstr ""
-#: cfgrtl.c:1774
+#: cfg.c:895
#, c-format
-msgid "bb %d on wrong place"
+msgid "verify_flow_info: Basic block %d succ edge is corrupted"
msgstr ""
-#: cfgrtl.c:1780
+#: cfg.c:909 cfgrtl.c:1971
#, c-format
-msgid "prev_bb of %d should be %d, not %d"
+msgid "Wrong amount of branch edges after unconditional jump %i"
msgstr ""
-#: cfgrtl.c:1800
+#: cfg.c:917
#, c-format
-msgid "end insn %d for block %d not found in the insn stream"
+msgid "basic block %d pred edge is corrupted"
msgstr ""
-#: cfgrtl.c:1814
+#: cfg.c:943
#, c-format
-msgid "insn %d is in multiple basic blocks (%d and %d)"
+msgid "basic block %i edge lists are corrupted"
msgstr ""
-#: cfgrtl.c:1826
+#: cfg.c:955
+msgid "verify_flow_info failed"
+msgstr ""
+
+#: cfgloop.c:1134
#, c-format
-msgid "head insn %d for block %d not found in the insn stream"
+msgid "Size of loop %d should be %d, not %d."
msgstr ""
-#: cfgrtl.c:1848
+#: cfgloop.c:1153
#, c-format
-msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
+msgid "Bb %d do not belong to loop %d."
msgstr ""
-#: cfgrtl.c:1855
+#: cfgloop.c:1171
#, c-format
-msgid "verify_flow_info: Wrong count of block %i %i"
+msgid "Loop %d's header does not have exactly 2 entries."
msgstr ""
-#: cfgrtl.c:1861
+#: cfgloop.c:1179
#, c-format
-msgid "verify_flow_info: Wrong frequency of block %i %i"
+msgid "Loop %d's latch does not have exactly 1 successor."
msgstr ""
-#: cfgrtl.c:1869
+#: cfgloop.c:1184
#, c-format
-msgid "verify_flow_info: Duplicate edge %i->%i"
+msgid "Loop %d's latch does not have header as successor."
msgstr ""
-#: cfgrtl.c:1875
+#: cfgloop.c:1189
#, c-format
-msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+msgid "Loop %d's latch does not belong directly to it."
msgstr ""
-#: cfgrtl.c:1881
+#: cfgloop.c:1195
#, c-format
-msgid "verify_flow_info: Wrong count of edge %i->%i %i"
+msgid "Loop %d's header does not belong directly to it."
msgstr ""
-#: cfgrtl.c:1911
+#: cfgloop.c:1201
#, c-format
-msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgid "Loop %d's latch is marked as part of irreducible region."
msgstr ""
-#: cfgrtl.c:1926
+#: cfgloop.c:1231
#, c-format
-msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgid "Basic block %d should be marked irreducible."
msgstr ""
-#: cfgrtl.c:1928
-msgid "wrong insn in the fallthru edge"
+#: cfgloop.c:1237
+#, c-format
+msgid "Basic block %d should not be marked irreducible."
msgstr ""
-#: cfgrtl.c:1935
+#: cfgloop.c:1245
#, c-format
-msgid "verify_flow_info: Basic block %d succ edge is corrupted"
+msgid "Edge from %d to %d should be marked irreducible."
msgstr ""
-#: cfgrtl.c:1951
+#: cfgloop.c:1252
#, c-format
-msgid "Missing REG_EH_REGION note in the end of bb %i"
+msgid "Edge from %d to %d should not be marked irreducible."
msgstr ""
-#: cfgrtl.c:1959
+#: cfgrtl.c:1877
#, c-format
-msgid "Too many outgoing branch edges from bb %i"
+msgid "end insn %d for block %d not found in the insn stream"
msgstr ""
-#: cfgrtl.c:1964
+#: cfgrtl.c:1891
#, c-format
-msgid "Fallthru edge after unconditional jump %i"
+msgid "insn %d is in multiple basic blocks (%d and %d)"
msgstr ""
-#: cfgrtl.c:1969
+#: cfgrtl.c:1903
#, c-format
-msgid "Wrong amount of branch edges after unconditional jump %i"
+msgid "head insn %d for block %d not found in the insn stream"
+msgstr ""
+
+#: cfgrtl.c:1925
+msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i"
msgstr ""
-#: cfgrtl.c:1975
+#: cfgrtl.c:1953
#, c-format
-msgid "Wrong amount of branch edges after conditional jump %i"
+msgid "Missing REG_EH_REGION note in the end of bb %i"
msgstr ""
-#: cfgrtl.c:1980
+#: cfgrtl.c:1961
#, c-format
-msgid "Call edges for non-call insn in bb %i"
+msgid "Too many outgoing branch edges from bb %i"
msgstr ""
-#: cfgrtl.c:1989
+#: cfgrtl.c:1966
#, c-format
-msgid "Abnormal edges for no purpose in bb %i"
+msgid "Fallthru edge after unconditional jump %i"
msgstr ""
-#: cfgrtl.c:2004
+#: cfgrtl.c:1977
#, c-format
-msgid "missing barrier after block %i"
+msgid "Wrong amount of branch edges after conditional jump %i"
msgstr ""
-#: cfgrtl.c:2014
+#: cfgrtl.c:1982
#, c-format
-msgid "basic block %d pred edge is corrupted"
+msgid "Call edges for non-call insn in bb %i"
+msgstr ""
+
+#: cfgrtl.c:1991
+#, c-format
+msgid "Abnormal edges for no purpose in bb %i"
msgstr ""
-#: cfgrtl.c:2031
+#: cfgrtl.c:2001
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is NULL"
msgstr ""
-#: cfgrtl.c:2035
+#: cfgrtl.c:2005
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is %i"
msgstr ""
-#: cfgrtl.c:2049 cfgrtl.c:2059
+#: cfgrtl.c:2019 cfgrtl.c:2029
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
msgstr ""
-#: cfgrtl.c:2072
+#: cfgrtl.c:2042
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
msgstr ""
-#: cfgrtl.c:2084
+#: cfgrtl.c:2052
#, c-format
msgid "in basic block %d:"
msgstr ""
-#: cfgrtl.c:2085
+#: cfgrtl.c:2053
msgid "flow control insn inside a basic block"
msgstr ""
-#: cfgrtl.c:2104
+#: cfgrtl.c:2099
#, c-format
-msgid "basic block %i edge lists are corrupted"
+msgid "missing barrier after block %i"
msgstr ""
-#: cfgrtl.c:2119
-msgid "basic blocks not numbered consecutively"
+#: cfgrtl.c:2112
+#, c-format
+msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgstr ""
+
+#: cfgrtl.c:2127
+#, c-format
+msgid "verify_flow_info: Incorrect fallthru %i->%i"
msgstr ""
-#: cfgrtl.c:2144
+#: cfgrtl.c:2129
+msgid "wrong insn in the fallthru edge"
+msgstr ""
+
+#: cfgrtl.c:2146
+msgid "basic blocks not laid down consecutively"
+msgstr ""
+
+#: cfgrtl.c:2171
msgid "insn outside basic block"
msgstr ""
-#: cfgrtl.c:2152
+#: cfgrtl.c:2179
msgid "return not followed by barrier"
msgstr ""
-#: cfgrtl.c:2157
+#: cfgrtl.c:2186
#, c-format
msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr ""
-#: cfgrtl.c:2161
-msgid "verify_flow_info failed"
+#: cgraph.c:161
+#, fuzzy
+msgid "function body not available"
+msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
+
+#: cgraph.c:163 cgraphunit.c:341
+msgid "redefined extern inline functions are not considered for inlining"
+msgstr ""
+
+#: cgraph.c:166 cgraphunit.c:346
+#, fuzzy
+msgid "function not considered for inlining"
+msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
+
+#: cgraph.c:168 cgraphunit.c:344
+#, fuzzy
+msgid "function not inlinable"
+msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
+
+#: cgraph.c:476
+msgid "%D renamed after being referenced in assembly"
+msgstr ""
+
+#: cgraphunit.c:1042
+msgid "--param large-function-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1055
+msgid "--param large-function-growth limit reached while inlining the caller"
+msgstr ""
+
+#: cgraphunit.c:1120
+msgid "--param max-inline-insns-single limit reached"
+msgstr ""
+
+#: cgraphunit.c:1144
+msgid "--param max-inline-insns-single limit reached after inlining into the callee"
+msgstr ""
+
+#: cgraphunit.c:1221
+msgid "--param inline-unit-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1293 cgraphunit.c:1437
+msgid "recursive inlining"
msgstr ""
-#: collect2.c:425
+#: collect2.c:406
msgid "internal error"
msgstr "åóùôåñéêü óöÜëìá"
-#: collect2.c:934
+#: collect2.c:894
msgid "no arguments"
msgstr "÷ùñßò ïñßóìáôá"
# src/getopt1.c:132
# src/getopt1.c:132
-#: collect2.c:1263 collect2.c:1411 collect2.c:1444
+#: collect2.c:1226 collect2.c:1374 collect2.c:1407
#, c-format
msgid "fopen %s"
msgstr "fopen %s"
-#: collect2.c:1266 collect2.c:1416 collect2.c:1447
+#: collect2.c:1229 collect2.c:1379 collect2.c:1410
#, c-format
msgid "fclose %s"
msgstr "fclose %s"
-#: collect2.c:1275
+#: collect2.c:1238
#, c-format
msgid "collect2 version %s"
msgstr ""
-#: collect2.c:1365
+#: collect2.c:1328
#, c-format
msgid "%d constructor(s) found\n"
msgstr ""
-#: collect2.c:1366
+#: collect2.c:1329
#, c-format
msgid "%d destructor(s) found\n"
msgstr ""
-#: collect2.c:1367
+#: collect2.c:1330
#, c-format
msgid "%d frame table(s) found\n"
msgstr ""
-#: collect2.c:1508
+#: collect2.c:1470
#, fuzzy, c-format
msgid "%s terminated with signal %d [%s]%s"
msgstr "%s: Ï ðñïåðåîåñãáóôÞò C áðÝôõ÷å ìå óÞìá %d\n"
-#: collect2.c:1527
+#: collect2.c:1488
#, c-format
msgid "%s returned %d exit status"
msgstr ""
-#: collect2.c:1555
+#: collect2.c:1513
#, fuzzy, c-format
msgid "[cannot find %s]"
msgstr "Äåí åßíáé äõíáôüí íá åêôåëåóôåß ôï %s"
-#: collect2.c:1570
+#: collect2.c:1528
#, fuzzy, c-format
msgid "cannot find `%s'"
msgstr "áäõíáìßá áíïßãìáôïò ôïõ `%s'"
-#: collect2.c:1581 collect2.c:1584
+#: collect2.c:1539 collect2.c:1542
#, c-format
msgid "redirecting stdout: %s"
msgstr ""
-#: collect2.c:1627
+#: collect2.c:1581
#, fuzzy, c-format
msgid "[Leaving %s]\n"
msgstr "äéáãñáöÞ êáôáëüãïõ %s\n"
-#: collect2.c:1870
+#: collect2.c:1801
#, c-format
msgid ""
"\n"
"write_c_file - output name is %s, prefix is %s\n"
msgstr ""
-#: collect2.c:2082
+#: collect2.c:2005
#, fuzzy
msgid "cannot find `nm'"
msgstr "áäõíáìßá áíïßãìáôïò ôïõ `%s'"
-#: collect2.c:2092 collect2.c:2533
+#: collect2.c:2015 collect2.c:2444
msgid "pipe"
msgstr "óùëÞíùóç"
-#: collect2.c:2096 collect2.c:2537
+#: collect2.c:2019 collect2.c:2448
msgid "fdopen"
msgstr "fdopen"
-#: collect2.c:2122 collect2.c:2563
+#: collect2.c:2045 collect2.c:2474
#, c-format
msgid "dup2 %d 1"
msgstr "dup2 %d 1"
-#: collect2.c:2125 collect2.c:2128 collect2.c:2141 collect2.c:2566
-#: collect2.c:2569 collect2.c:2582
+#: collect2.c:2048 collect2.c:2051 collect2.c:2064 collect2.c:2477
+#: collect2.c:2480 collect2.c:2493
#, c-format
msgid "close %d"
msgstr "close %d"
-#: collect2.c:2131 collect2.c:2572
+#: collect2.c:2054 collect2.c:2483
#, c-format
msgid "execv %s"
msgstr "execv %s"
-#: collect2.c:2185
+#: collect2.c:2108
#, c-format
msgid "init function found in object %s"
msgstr ""
-#: collect2.c:2193
+#: collect2.c:2116
#, c-format
msgid "fini function found in object %s"
msgstr ""
-#: collect2.c:2216 collect2.c:2621
+#: collect2.c:2139 collect2.c:2532
msgid "fclose"
msgstr "fclose"
-#: collect2.c:2261
+#: collect2.c:2181
#, fuzzy, c-format
msgid "unable to open file '%s'"
msgstr "Äåí ìðüñåóá íá áíïßîù ôï áñ÷åßï %s"
-#: collect2.c:2263
+#: collect2.c:2183
#, fuzzy, c-format
msgid "unable to stat file '%s'"
msgstr "áäõíáìßá ðñïóðÝëáóçò(stat()) áñ÷åßïõ `%s': %s"
-#: collect2.c:2269
+#: collect2.c:2189
#, fuzzy, c-format
msgid "unable to mmap file '%s'"
msgstr "Áäõíáìßá ìåôáöïñÜò óôç ìíÞìç (mmap) ôïõ áñ÷åßïõ %s.\n"
-#: collect2.c:2422
+#: collect2.c:2335
msgid "not found\n"
msgstr "äå âñÝèçêå\n"
-#: collect2.c:2424 collect2.c:2600
+#: collect2.c:2337 collect2.c:2511
#, c-format
msgid "dynamic dependency %s not found"
msgstr ""
-#: collect2.c:2444
+#: collect2.c:2356
#, fuzzy, c-format
msgid "bad magic number in file '%s'"
msgstr "ìç Ýãêõñïò áñéèìüò áñ÷åßïõ óôç äÞëùóç ðåäßïõ: `%s'"
-#: collect2.c:2466
+#: collect2.c:2378
msgid "dynamic dependencies.\n"
msgstr "äõíáìéêÝò åîáñôÞóåéò.\n"
-#: collect2.c:2524
+#: collect2.c:2435
#, fuzzy
msgid "cannot find `ldd'"
msgstr "áäõíáìßá áíïßãìáôïò ôïõ `%s'"
-#: collect2.c:2585
+#: collect2.c:2496
msgid ""
"\n"
"ldd output with constructors/destructors.\n"
msgstr ""
-#: collect2.c:2612
+#: collect2.c:2523
#, c-format
msgid "unable to open dynamic dependency '%s'"
msgstr ""
-#: collect2.c:2726
+#: collect2.c:2683
#, fuzzy, c-format
msgid "%s: not a COFF file"
msgstr "%s: Äåí åßíáé êáíïíéêü áñ÷åßï"
-#: collect2.c:2845
+#: collect2.c:2802
#, fuzzy, c-format
msgid "%s: cannot open as COFF file"
msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ"
-#: collect2.c:2901
+#: collect2.c:2857
#, fuzzy, c-format
msgid "library lib%s not found"
msgstr "Ðéèáíüí äå âñÝèçêå"
-# src/getopt1.c:132
-# src/getopt1.c:132
-#: collect2.c:3028
+#: combine.c:13027
#, c-format
-msgid "open %s"
-msgstr "open %s"
-
-#: collect2.c:3051
-msgid "incompatibilities between object file & expected values"
+msgid ""
+";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
+"\n"
msgstr ""
-#: collect2.c:3124
+#: combine.c:13036
#, c-format
msgid ""
"\n"
-"Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
-msgstr ""
-
-#: collect2.c:3133
-msgid "string section missing"
+";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
msgstr ""
-#: collect2.c:3136
+#: convert.c:70
#, fuzzy
-msgid "section pointer missing"
-msgstr "ïñéóìüò äéêáéùìÜôùí óôï %s"
-
-#: collect2.c:3184
-#, fuzzy
-msgid "no symbol table found"
-msgstr "äåí äþèçêå óõìâïëéêü üíïìá"
-
-#: collect2.c:3197
-#, fuzzy
-msgid "no cmd_strings found"
-msgstr "Äåí âñÝèçêå ìÝóï"
+msgid "cannot convert to a pointer type"
+msgstr "Äåí åßíáé äõíáôüí íá âñåèåß ï ôýðïò ôïõ åðåîåñãáóôÞ."
-#: collect2.c:3209
-msgid ""
-"\n"
-"Updating header and load commands.\n"
-"\n"
+#: convert.c:267
+msgid "pointer value used where a floating point value was expected"
msgstr ""
-#: collect2.c:3216
-#, c-format
-msgid "load command map, %d cmds, new size %ld.\n"
+#: convert.c:271
+msgid "aggregate value used where a float was expected"
msgstr ""
-#: collect2.c:3247
+#: convert.c:296
#, fuzzy
-msgid ""
-"writing load commands.\n"
-"\n"
-msgstr "¸÷åé ðáñáëçöèåß åíôïëÞ"
-
-#: collect2.c:3267
-#, c-format
-msgid "close %s"
-msgstr "close %s"
+msgid "conversion to incomplete type"
+msgstr "ìç ðëÞñçò åããñáöÞ"
-#: collect2.c:3341
-msgid "could not convert 0x%l.8x into a region"
+#: convert.c:600 convert.c:678
+msgid "can't convert between vector values of different size"
msgstr ""
-#: collect2.c:3345
-#, c-format
-msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
+#: convert.c:606
+msgid "aggregate value used where an integer was expected"
msgstr ""
-#: collect2.c:3472
-#, fuzzy
-msgid "bad magic number"
-msgstr "ÅóöáëìÝíïò áñéèìüò áñ÷åßïõ"
-
-#: collect2.c:3473
-msgid "bad header version"
-msgstr "åóöáëìÝíç Ýêäïóç êåöáëßäáò"
+#: convert.c:657 f/com.c:1101
+msgid "pointer value used where a complex was expected"
+msgstr ""
-#: collect2.c:3474
-msgid "bad raw header version"
+#: convert.c:661 f/com.c:1103
+msgid "aggregate value used where a complex was expected"
msgstr ""
-#: collect2.c:3475
-msgid "raw header buffer too small"
+#: convert.c:684
+msgid "can't convert value to a vector"
msgstr ""
-#: collect2.c:3476
-#, fuzzy
-msgid "old raw header file"
-msgstr "Äåí åßíáé åðþíõìï áñ÷åßï"
+#: coverage.c:164
+#, fuzzy, c-format
+msgid "`%s' is not a gcov data file"
+msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-#: collect2.c:3477
-#, fuzzy
-msgid "unsupported version"
-msgstr "ÅìöÜíéóç Ýêäïóçò ðñïãñÜììáôïò"
+#: coverage.c:175
+#, fuzzy, c-format
+msgid "`%s' is version `%.4s', expected version `%.4s'"
+msgstr "Ýêäïóç ïäçãïý gcc %s åêôåëåß ôçí Ýêäïóç gcc %s\n"
-#: collect2.c:3479
+#: coverage.c:255 coverage.c:263
#, c-format
-msgid "unknown {de,en}code_mach_o_hdr return value %d"
+msgid "coverage mismatch for function %u while reading execution counters."
msgstr ""
-# src/request.c:37
-#: collect2.c:3499
+#: coverage.c:257 coverage.c:340
#, c-format
-msgid "fstat %s"
-msgstr "fstat %s"
+msgid "checksum is %x instead of %x"
+msgstr ""
-#: collect2.c:3536 collect2.c:3584
+#: coverage.c:265 coverage.c:348
#, c-format
-msgid "lseek %s 0"
-msgstr "lseek %s 0"
+msgid "number of counters is %d instead of %d"
+msgstr ""
-#: collect2.c:3540
+#: coverage.c:271
#, c-format
-msgid "read %s"
-msgstr "read %s"
+msgid "cannot merge separate %s counters for function %u"
+msgstr ""
+
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' has overflowed"
+msgstr "Õðåñ÷åßëéóç ðßíáêá áñ÷åßïõ"
-#: collect2.c:3543
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' is corrupted"
+msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+
+#: coverage.c:319
#, c-format
-msgid "read %ld bytes, expected %ld, from %s"
+msgid "file %s not found, execution counts assumed to be zero"
msgstr ""
-#: collect2.c:3564
+#: coverage.c:329
+#, fuzzy, c-format
+msgid "no coverage for function '%s' found."
+msgstr "ìç Ýãêõñç ôÜîç ÷áñáêôÞñùí `%s'"
+
+#: coverage.c:337 coverage.c:345
#, c-format
-msgid "msync %s"
-msgstr "msync %s"
+msgid "coverage mismatch for function '%s' while reading counter '%s'."
+msgstr ""
+
+#: coverage.c:492
+#, fuzzy, c-format
+msgid "cannot open %s"
+msgstr "áäõíáìßá áíïßãìáôïò ôïõ `%s'"
+
+#: coverage.c:527
+#, fuzzy, c-format
+msgid "error writing `%s'"
+msgstr "óöÜëìá åããñáöÞò %s"
+
+#. XXX should be DL_SORRY
+#: cppcharset.c:653
+#, fuzzy, c-format
+msgid "conversion from %s to %s not supported by iconv"
+msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå"
+
+#: cppcharset.c:656
+msgid "iconv_open"
+msgstr ""
-#: collect2.c:3571
+#. XXX should be DL_SORRY
+#: cppcharset.c:664
#, c-format
-msgid "munmap %s"
-msgstr "munmap %s"
+msgid "no iconv implementation, cannot convert from %s to %s"
+msgstr ""
+
+#: cppcharset.c:808
+#, fuzzy
+msgid "universal character names are only valid in C++ and C99"
+msgstr "U+%04X: åêôüò ïñßùí ÷áñáêôÞñáò"
-#: collect2.c:3588
+#: cppcharset.c:811
#, c-format
-msgid "write %s"
-msgstr "write %s"
+msgid "the meaning of '\\%c' is different in traditional C"
+msgstr ""
-#: collect2.c:3591
+#: cppcharset.c:837
#, c-format
-msgid "wrote %ld bytes, expected %ld, to %s"
+msgid "incomplete universal character name %.*s"
msgstr ""
-#: combine.c:13222
+#: cppcharset.c:849
+#, fuzzy, c-format
+msgid "%.*s is not a valid universal character"
+msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
+
+#: cppcharset.c:859
#, c-format
-msgid ""
-";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
-"\n"
+msgid "universal character %.*s is not valid in an identifier"
msgstr ""
-#: combine.c:13232
+#: cppcharset.c:863
#, c-format
-msgid ""
-"\n"
-";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
+msgid "universal character %.*s is not valid at the start of an identifier"
msgstr ""
-#: convert.c:69
-#, fuzzy
-msgid "cannot convert to a pointer type"
-msgstr "Äåí åßíáé äõíáôüí íá âñåèåß ï ôýðïò ôïõ åðåîåñãáóôÞ."
+#: cppcharset.c:898
+msgid "converting UCN to source character set"
+msgstr ""
-#: convert.c:102
-msgid "pointer value used where a floating point value was expected"
+#: cppcharset.c:902
+msgid "converting UCN to execution character set"
msgstr ""
-#: convert.c:106
-msgid "aggregate value used where a float was expected"
+#: cppcharset.c:967
+msgid "the meaning of '\\x' is different in traditional C"
+msgstr ""
+
+#: cppcharset.c:984 f/lex.c:580
+msgid "\\x used with no following hex digits"
msgstr ""
-#: convert.c:132
+#: cppcharset.c:991
#, fuzzy
-msgid "conversion to incomplete type"
-msgstr "ìç ðëÞñçò åããñáöÞ"
+msgid "hex escape sequence out of range"
+msgstr "ìç Ýãêõñç äéáäéêáóßá äéáöõãÞò óôï ôÝëïò ôïõ áëöáñéèìéôéêïý"
-#: convert.c:414 convert.c:494
-msgid "can't convert between vector values of different size"
-msgstr ""
+#: cppcharset.c:1030
+#, fuzzy
+msgid "octal escape sequence out of range"
+msgstr "ìç Ýãêõñç äéáäéêáóßá äéáöõãÞò óôï ôÝëïò ôïõ áëöáñéèìéôéêïý"
-#: convert.c:420
-msgid "aggregate value used where an integer was expected"
+#: cppcharset.c:1098
+msgid "the meaning of '\\a' is different in traditional C"
msgstr ""
-#: convert.c:472 f/com.c:1100
-msgid "pointer value used where a complex was expected"
+#: cppcharset.c:1105
+#, c-format
+msgid "non-ISO-standard escape sequence, '\\%c'"
msgstr ""
-#: convert.c:476 f/com.c:1102
-msgid "aggregate value used where a complex was expected"
-msgstr ""
+# src/main.c:663
+#: cppcharset.c:1113
+#, fuzzy, c-format
+msgid "unknown escape sequence '\\%c'"
+msgstr "¶ãíùóôç óõìâïëïóåéñÜ `%s'"
-#: convert.c:500
-msgid "can't convert value to a vector"
+# src/main.c:663
+#: cppcharset.c:1116
+#, fuzzy, c-format
+msgid "unknown escape sequence: '\\%03o'"
+msgstr "¶ãíùóôç óõìâïëïóåéñÜ `%s'"
+
+#: cppcharset.c:1122
+#, fuzzy
+msgid "converting escape sequence to execution character set"
+msgstr "ìç Ýãêõñç äéáäéêáóßá äéáöõãÞò óôï ôÝëïò ôïõ áëöáñéèìéôéêïý"
+
+#: cppcharset.c:1181
+msgid "converting to execution character set"
msgstr ""
-#: cpperror.c:113
+#: cppcharset.c:1244 cppcharset.c:1307
+#, fuzzy
+msgid "character constant too long for its type"
+msgstr "ìç Ýãêõñïò óôáèåñüò ÷áñáêôÞñáò óôï áëöáñéèìéôéêü"
+
+#: cppcharset.c:1247
+#, fuzzy
+msgid "multi-character character constant"
+msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
+
+#: cppcharset.c:1339
+#, fuzzy
+msgid "empty character constant"
+msgstr "êåíü áëöáñéèìçôéêü"
+
+#: cppcharset.c:1378
+#, fuzzy, c-format
+msgid "failure to convert %s to %s"
+msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï %s `%s' óôï `%s'"
+
+#: cpperror.c:110 diagnostic.def:5
msgid "warning: "
msgstr "ðñïåéäïðïßçóç: "
-#: cpperror.c:115
+#: cpperror.c:112
msgid "internal error: "
msgstr "åóùôåñéêü óöÜëìá: "
-#: cpperror.c:189
+#: cpperror.c:174
#, fuzzy
msgid "stdout"
msgstr "äïìÞ"
-# src/request.c:37
-#: cpperror.c:191 gcc.c:6428
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
-#: cppexp.c:199
+#: cppexp.c:192
#, fuzzy
msgid "too many decimal points in number"
msgstr "Õðåñâïëéêá ðïëëÜ áíïéêôÜ áñ÷åßá óôï óýóôçìá"
-#: cppexp.c:219
+#: cppexp.c:212
#, fuzzy, c-format
msgid "invalid digit \"%c\" in octal constant"
msgstr "Ìç Ýãêõñç áêÝñáéá ðáñÜìåôñïò `%s'"
-#: cppexp.c:225
+#: cppexp.c:218
msgid "use of C99 hexadecimal floating constant"
msgstr ""
-#: cppexp.c:234
+#: cppexp.c:227
msgid "exponent has no digits"
msgstr ""
-#: cppexp.c:241
+#: cppexp.c:234
msgid "hexadecimal floating constants require an exponent"
msgstr ""
-#: cppexp.c:247
+#: cppexp.c:240
#, fuzzy, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "Ç ðáñÜìåôñïò êéíçôÞò õðïäéáóôïëÞò äåí åßíáé Ýãêõñç: %s"
-#: cppexp.c:257 cppexp.c:282
+#: cppexp.c:250 cppexp.c:275
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr ""
-#: cppexp.c:268
+#: cppexp.c:261
#, fuzzy, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "Ìç Ýãêõñç áêÝñáéá ðáñÜìåôñïò `%s'"
-#: cppexp.c:289
+#: cppexp.c:283
#, fuzzy
msgid "use of C99 long long integer constant"
msgstr "Ìç Ýãêõñç áêÝñáéá ðáñÜìåôñïò `%s'"
-#: cppexp.c:295
+#: cppexp.c:290
msgid "imaginary constants are a GCC extension"
msgstr ""
-#: cppexp.c:383
+#: cppexp.c:376
#, fuzzy
msgid "integer constant is too large for its type"
msgstr "%s: ôï %s åßíáé ôüóï ìåãÜëï ðïõ äå ìðïñåß íá áíáðáñáóôáèåß"
-#: cppexp.c:395
+#: cppexp.c:388
#, fuzzy
msgid "integer constant is so large that it is unsigned"
msgstr "%s: ôï %s åßíáé ôüóï ìåãÜëï ðïõ äå ìðïñåß íá áíáðáñáóôáèåß"
-#: cppexp.c:482
+#: cppexp.c:470
#, fuzzy
msgid "missing ')' after \"defined\""
msgstr "Ý÷åé ðáñáëçöèåß ç ëßóôá ìå ôá ðåäßá"
-#: cppexp.c:489
+#: cppexp.c:477
msgid "operator \"defined\" requires an identifier"
msgstr ""
-#: cppexp.c:497
+#: cppexp.c:485
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr ""
-#: cppexp.c:507
+#: cppexp.c:495
msgid "this use of \"defined\" may not be portable"
msgstr ""
-#: cppexp.c:545
+#: cppexp.c:531
#, fuzzy
msgid "floating constant in preprocessor expression"
msgstr "Åîáßñåóç êéíçôÞò õðïäéáóôïëÞò"
-#: cppexp.c:551
+#: cppexp.c:537
#, fuzzy
msgid "imaginary number in preprocessor expression"
msgstr "ìç Ýãêõñïò áñéèìüò áðü ãñáììÝò"
-#: cppexp.c:596
-#, c-format
-msgid "ISO C++ does not permit \"%s\" in #if"
-msgstr ""
-
-#: cppexp.c:604
+#: cppexp.c:582
#, fuzzy, c-format
msgid "\"%s\" is not defined"
msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-#: cppexp.c:737 cppexp.c:772
+#: cppexp.c:714 cppexp.c:743
#, fuzzy, c-format
msgid "missing binary operator before token \"%s\""
msgstr "%s: Áíáìåíüôáí äõáäéêüò ÷åéñéóôÞò.\n"
-#: cppexp.c:756
-#, fuzzy, c-format
-msgid "invalid character '%c' in #if"
-msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò `%c' óôï ôýðï áëöáñéèìçôéêïý `%s'"
-
-#: cppexp.c:758
-#, fuzzy, c-format
-msgid "invalid character '\\%03o' in #if"
-msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò `%c' óôï ôýðï áëöáñéèìçôéêïý `%s'"
-
-#: cppexp.c:763
+#: cppexp.c:734
#, fuzzy, c-format
msgid "token \"%s\" is not valid in preprocessor expressions"
msgstr "%s: ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç: %s"
-#: cppexp.c:782
+#: cppexp.c:753
msgid "void expression between '(' and ')'"
msgstr ""
-#: cppexp.c:785
+#: cppexp.c:756
msgid "#if with no expression"
msgstr ""
-#: cppexp.c:787
+#: cppexp.c:758
#, c-format
msgid "operator '%s' has no right operand"
msgstr ""
-#: cppexp.c:813
+#: cppexp.c:784
msgid " ':' without preceding '?'"
msgstr ""
-#: cppexp.c:840
+#: cppexp.c:811
msgid "unbalanced stack in #if"
msgstr ""
-#: cppexp.c:862
+#: cppexp.c:830
#, fuzzy, c-format
msgid "impossible operator '%u'"
msgstr "RPC: Ìç óõìâáôÝò åêäüóåéò ôïõ RPC"
-#: cppexp.c:954
+#: cppexp.c:922
#, fuzzy
msgid "missing ')' in expression"
msgstr "Ý÷åé ðáñáëçöèåß ç ëßóôá ìå ôéò èÝóåéò"
-#: cppexp.c:975
+#: cppexp.c:943
#, fuzzy
msgid "'?' without following ':'"
msgstr "óõíôáêôéêü óöÜëìá óôïí ðñüëïãï: %s"
-#: cppexp.c:985
+#: cppexp.c:953
msgid "integer overflow in preprocessor expression"
msgstr ""
-#: cppexp.c:990
+#: cppexp.c:958
#, fuzzy
msgid "missing '(' in expression"
msgstr "Ý÷åé ðáñáëçöèåß ç ëßóôá ìå ôéò èÝóåéò"
-#: cppexp.c:1026
+#: cppexp.c:990
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr ""
-#: cppexp.c:1031
+#: cppexp.c:995
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr ""
-#: cppexp.c:1414
+#: cppexp.c:1352
msgid "comma operator in operand of #if"
msgstr ""
-#: cppexp.c:1551
+#: cppexp.c:1483
#, fuzzy
msgid "division by zero in #if"
msgstr "Äéáßñåóç ìå ìçäÝí óôçí áðïôßìçóç: %s"
+#: cppfiles.c:370
+msgid "NULL directory in find_file"
+msgstr ""
+
+#: cppfiles.c:397
+msgid "one or more PCH files were found, but they were invalid"
+msgstr ""
+
+#: cppfiles.c:400
+msgid "use -Winvalid-pch for more information"
+msgstr ""
+
+#: cppfiles.c:458
+#, fuzzy, c-format
+msgid "%s is a block device"
+msgstr "Äåí Ýìåéíå êáèüëïõ ÷þñïò óôç óõóêåõÞ"
+
# src/shred.c:1134
-#: cppfiles.c:411
+#: cppfiles.c:475
#, fuzzy, c-format
msgid "%s is too large"
msgstr "%s: ôï áñ÷åßï åßíáé ðïëý ìåãÜëï"
-#: cppfiles.c:447
+#: cppfiles.c:510
#, fuzzy, c-format
msgid "%s is shorter than expected"
msgstr "%s: Áíáìåíüôáí äõáäéêüò ÷åéñéóôÞò.\n"
-#: cppfiles.c:461
-#, fuzzy, c-format
-msgid "%s is a block device"
-msgstr "Äåí Ýìåéíå êáèüëïõ ÷þñïò óôç óõóêåõÞ"
-
-#: cppfiles.c:594
+#: cppfiles.c:696
#, c-format
-msgid "no include path in which to find %s"
+msgid "no include path in which to search for %s"
msgstr ""
-#: cppfiles.c:668
+#: cppfiles.c:956
msgid "Multiple include guards may be useful for:\n"
msgstr ""
-#: cppfiles.c:1014
-msgid "absolute file name in remap_filename"
-msgstr ""
-
-#: cppinit.c:224
-#, fuzzy, c-format
-msgid "ignoring nonexistent directory \"%s\"\n"
-msgstr "äéáãñáöÞ ìç-êáôáëüãïõ `%s'\n"
-
-#: cppinit.c:231
-#, fuzzy, c-format
-msgid "%s: Not a directory"
-msgstr "Äåí åßíáé êáôÜëïãïò"
-
-#: cppinit.c:287
-#, fuzzy, c-format
-msgid "ignoring duplicate directory \"%s\"\n"
-msgstr "áäõíáìßá áëëáãÞò óôï êáôÜëïãï \"%s\""
-
-#: cppinit.c:325
-msgid " as it is a non-system directory that duplicates a system directory\n"
-msgstr ""
-
-#: cppinit.c:891
+#: cppinit.c:387
#, fuzzy
msgid "cppchar_t must be an unsigned type"
msgstr "äéðëüò ðñïóäéïñéóôÞò ìçíýìáôïò"
-#: cppinit.c:895
+#: cppinit.c:391
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr ""
-#: cppinit.c:901
+#: cppinit.c:398
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr ""
-#: cppinit.c:904
+#: cppinit.c:401
msgid "target char is less than 8 bits wide"
msgstr ""
-#: cppinit.c:908
+#: cppinit.c:405
msgid "target wchar_t is narrower than target char"
msgstr ""
-#: cppinit.c:912
+#: cppinit.c:409
msgid "target int is narrower than target char"
msgstr ""
-#: cppinit.c:916
+#: cppinit.c:414
msgid "CPP half-integer narrower than CPP character"
msgstr ""
-#: cppinit.c:920
+#: cppinit.c:418
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
msgstr ""
-#: cppinit.c:972
-msgid "#include \"...\" search starts here:\n"
-msgstr ""
-
-#: cppinit.c:976
-msgid "#include <...> search starts here:\n"
-msgstr ""
-
-#: cppinit.c:979
-#, fuzzy
-msgid "End of search list.\n"
-msgstr "ÔÝëïò ôìÞìáôïò"
-
-#: cppinit.c:1057
-msgid "<built-in>"
-msgstr ""
-
-#: cppinit.c:1059
-msgid "<command line>"
-msgstr ""
-
-#. Irix6 "cc -n32" and OSF4 cc have problems with char foo[] = ("string");
-#. I.e. a const string initializer with parens around it. That is
-#. what N_("string") resolves to, so we make no_* be macros instead.
-#: cppinit.c:1164
-#, fuzzy, c-format
-msgid "assertion missing after %s"
-msgstr "ïñéóìüò äéêáéùìÜôùí óôï %s"
-
-#: cppinit.c:1165
-#, c-format
-msgid "directory name missing after %s"
-msgstr ""
-
-#: cppinit.c:1166
-#, fuzzy, c-format
-msgid "file name missing after %s"
-msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-
-#: cppinit.c:1167
-#, c-format
-msgid "macro name missing after %s"
-msgstr ""
-
-#: cppinit.c:1168
-#, c-format
-msgid "path name missing after %s"
-msgstr ""
-
-#: cppinit.c:1353
-#, fuzzy
-msgid "-I- specified twice"
-msgstr "ìç ïñéóìÝíï"
-
-#: cpplex.c:149
-#, c-format
-msgid "trigraph ??%c converted to %c"
-msgstr ""
-
-#: cpplex.c:157
-#, c-format
-msgid "trigraph ??%c ignored"
-msgstr ""
-
-#: cpplex.c:214
-msgid "backslash and newline separated by space"
-msgstr ""
-
-#: cpplex.c:221 cpptrad.c:158
-#, fuzzy
-msgid "backslash-newline at end of file"
-msgstr "ìç Ýãêõñç äéáöõãÞ ìå ðéóùêÜèåôï óôï ôÝëïò ôïõ áëöáñéèìçôéêïý"
-
-#: cpplex.c:287 cpptrad.c:199
-msgid "\"/*\" within comment"
-msgstr ""
-
-#: cpplex.c:395
+#: cpplex.c:410
#, fuzzy
msgid "null character(s) ignored"
msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò óôï áñ÷åßï: "
-#: cpplex.c:402
-#, c-format
-msgid "%s in preprocessing directive"
+#: cpplex.c:445
+msgid "'$' in identifier or number"
msgstr ""
-#: cpplex.c:475
+#: cpplex.c:492
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr ""
-#: cpplex.c:483
+#: cpplex.c:500
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr ""
-#: cpplex.c:555
-msgid "'$' character(s) in identifier or number"
-msgstr ""
-
-#: cpplex.c:698
-#, c-format
-msgid "missing terminating %c character"
-msgstr "Ý÷åé ðáñáëçöèåß ôåñìáôéêüò ÷áñáêôÞñáò %c"
-
-#: cpplex.c:711
+#: cpplex.c:596
msgid "null character(s) preserved in literal"
msgstr ""
-#: cpplex.c:915 cpptrad.c:487
-#, fuzzy
-msgid "no newline at end of file"
-msgstr "%s: ðñüùñï ôÝëïò áñ÷åßïõ"
-
-#: cpplex.c:1092 cpptrad.c:213
+#: cpplex.c:916
#, fuzzy
msgid "unterminated comment"
msgstr "Ìç ôåñìáôéóìÝíç åíôïëÞ `s'"
-#: cpplex.c:1103
+#: cpplex.c:927
msgid "C++ style comments are not allowed in ISO C90"
msgstr ""
-#: cpplex.c:1105
+#: cpplex.c:929
msgid "(this will be reported only once per input file)"
msgstr ""
-#: cpplex.c:1110
+#: cpplex.c:934
msgid "multi-line comment"
msgstr ""
-#: cpplex.c:1425
-#, fuzzy, c-format
-msgid "unknown string token %s\n"
-msgstr "¶ãíùóôÞ åðéëïãÞ ãéá ôï `s'"
-
-#: cpplex.c:1438
+#: cpplex.c:1198
#, fuzzy, c-format
msgid "unspellable token %s"
msgstr "%s: áäýíáôï ôï Üíïéãìá ôïõ %s: %m\n"
-#: cpplex.c:1695
-#, c-format
-msgid "the meaning of '\\%c' is different in traditional C"
-msgstr ""
-
-#: cpplex.c:1701
-msgid "incomplete universal-character-name"
-msgstr ""
-
-#: cpplex.c:1715
-#, c-format
-msgid "non-hex digit '%c' in universal-character-name"
-msgstr ""
-
-#: cpplex.c:1723
-msgid "universal-character-name on EBCDIC target"
-msgstr ""
-
-#: cpplex.c:1737
-#, fuzzy
-msgid "universal-character-name out of range"
-msgstr "U+%04X: åêôüò ïñßùí ÷áñáêôÞñáò"
-
-#: cpplex.c:1791
-msgid "the meaning of '\\a' is different in traditional C"
-msgstr ""
-
-#: cpplex.c:1798
-#, c-format
-msgid "non-ISO-standard escape sequence, '\\%c'"
-msgstr ""
-
-#: cpplex.c:1809
-msgid "the meaning of '\\x' is different in traditional C"
-msgstr ""
-
-#: cpplex.c:1828 f/lex.c:585
-msgid "\\x used with no following hex digits"
-msgstr ""
-
-#: cpplex.c:1833
-#, fuzzy
-msgid "hex escape sequence out of range"
-msgstr "ìç Ýãêõñç äéáäéêáóßá äéáöõãÞò óôï ôÝëïò ôïõ áëöáñéèìéôéêïý"
-
-#: cpplex.c:1858
-#, fuzzy
-msgid "octal escape sequence out of range"
-msgstr "ìç Ýãêõñç äéáäéêáóßá äéáöõãÞò óôï ôÝëïò ôïõ áëöáñéèìéôéêïý"
-
-# src/main.c:663
-#: cpplex.c:1874
-#, fuzzy, c-format
-msgid "unknown escape sequence '\\%c'"
-msgstr "¶ãíùóôç óõìâïëïóåéñÜ `%s'"
-
-# src/main.c:663
-#: cpplex.c:1877
-#, fuzzy, c-format
-msgid "unknown escape sequence: '\\%03o'"
-msgstr "¶ãíùóôç óõìâïëïóåéñÜ `%s'"
-
-#: cpplex.c:1882
-#, fuzzy
-msgid "escape sequence out of range for its type"
-msgstr "ìç Ýãêõñç äéáäéêáóßá äéáöõãÞò óôï ôÝëïò ôïõ áëöáñéèìéôéêïý"
-
-#: cpplex.c:1973
-#, fuzzy
-msgid "empty character constant"
-msgstr "êåíü áëöáñéèìçôéêü"
-
-#: cpplex.c:1983
-#, fuzzy
-msgid "character constant too long for its type"
-msgstr "ìç Ýãêõñïò óôáèåñüò ÷áñáêôÞñáò óôï áëöáñéèìéôéêü"
-
-#: cpplex.c:1986
-#, fuzzy
-msgid "multi-character character constant"
-msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
-
-#: cpplib.c:225
+#: cpplib.c:218
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr ""
-#: cpplib.c:315
+#: cpplib.c:304
#, c-format
msgid "#%s is a GCC extension"
msgstr ""
-#: cpplib.c:327
+#: cpplib.c:316
msgid "suggest not using #elif in traditional C"
msgstr ""
-#: cpplib.c:330
+#: cpplib.c:319
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr ""
-#: cpplib.c:334
+#: cpplib.c:323
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr ""
-#: cpplib.c:358
+#: cpplib.c:345
msgid "embedding a directive within macro arguments is not portable"
msgstr ""
-#: cpplib.c:378
+#: cpplib.c:365
msgid "style of line directive is a GCC extension"
msgstr ""
-#: cpplib.c:428
+#: cpplib.c:415
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr ""
-#: cpplib.c:500
+#: cpplib.c:484
msgid "\"defined\" cannot be used as a macro name"
msgstr ""
-#: cpplib.c:506
+#: cpplib.c:490
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr ""
-#: cpplib.c:509
+#: cpplib.c:493
#, c-format
msgid "no macro name given in #%s directive"
msgstr ""
-#: cpplib.c:512
+#: cpplib.c:496
#, fuzzy
msgid "macro names must be identifiers"
msgstr "äéðëüò ðñïóäéïñéóôÞò ìçíýìáôïò"
-#: cpplib.c:552
+#: cpplib.c:537
#, fuzzy, c-format
msgid "undefining \"%s\""
msgstr "Ìç ïñéóìÝíï üíïìá %s"
-#: cpplib.c:598
+#: cpplib.c:609
#, fuzzy
msgid "missing terminating > character"
msgstr "Ý÷åé ðáñáëçöèåß ôï áñ÷åßï ðñïïñéóìïý"
-#: cpplib.c:637
+#: cpplib.c:662
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr ""
-#: cpplib.c:648
-#, fuzzy, c-format
-msgid "empty file name in #%s"
-msgstr "Ìç ïñéóìÝíï üíïìá %s"
-
-#: cpplib.c:667
-msgid "#include_next in primary source file"
-msgstr ""
-
-#: cpplib.c:674
-msgid "#import is obsolete, use an #ifndef wrapper in the header file"
+#: cpplib.c:685
+msgid "#include nested too deeply"
msgstr ""
-#: cpplib.c:682
-msgid "#include nested too deeply"
+#: cpplib.c:723
+msgid "#include_next in primary source file"
msgstr ""
-#: cpplib.c:739
+#: cpplib.c:749
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr ""
-#: cpplib.c:814
+#: cpplib.c:794
#, fuzzy, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-#: cpplib.c:820
+#: cpplib.c:800
#, fuzzy
msgid "line number out of range"
msgstr "%s: áñéèìüò ãñáììÞò Ýîù áðü ôá üñéá"
-#: cpplib.c:831 cpplib.c:902
+#: cpplib.c:812 cpplib.c:885
#, fuzzy, c-format
msgid "\"%s\" is not a valid filename"
msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-#: cpplib.c:866
+#: cpplib.c:847
#, fuzzy, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-#: cpplib.c:973
+#: cpplib.c:947
#, fuzzy
msgid "invalid #ident directive"
msgstr "%%%c: êáôåõèõíôÞñéïò ãñáììÞ ìç Ýãêõñç."
-#: cpplib.c:1061
+#: cpplib.c:1027
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr ""
-#: cpplib.c:1064
+#: cpplib.c:1030
#, c-format
msgid "#pragma %s %s is already registered"
msgstr ""
-#: cpplib.c:1067
+#: cpplib.c:1033
#, fuzzy, c-format
msgid "#pragma %s is already registered"
msgstr "ï ÷Üñôçò ÷áñáêôÞñùí `%s' ïñßóôçêå Þäç"
-#: cpplib.c:1143
-msgid "#pragma once is obsolete"
-msgstr ""
-
-#: cpplib.c:1146
+#: cpplib.c:1178
msgid "#pragma once in main file"
msgstr ""
-#: cpplib.c:1170
+#: cpplib.c:1201
msgid "invalid #pragma GCC poison directive"
msgstr ""
-#: cpplib.c:1179
+#: cpplib.c:1210
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr ""
-#: cpplib.c:1201
+#: cpplib.c:1231
msgid "#pragma system_header ignored outside include file"
msgstr ""
-#: cpplib.c:1226
+#: cpplib.c:1255
#, fuzzy, c-format
-msgid "cannot find source %s"
+msgid "cannot find source file %s"
msgstr "áäõíáìßá áíïßãìáôïò õðïäï÷Þò: %s"
-#: cpplib.c:1230
+#: cpplib.c:1259
#, c-format
msgid "current file is older than %s"
msgstr ""
-#: cpplib.c:1346
+#: cpplib.c:1373
msgid "_Pragma takes a parenthesized string literal"
msgstr ""
-#: cpplib.c:1429
+#: cpplib.c:1451
msgid "#else without #if"
msgstr ""
-#: cpplib.c:1434
+#: cpplib.c:1456
msgid "#else after #else"
msgstr "#else ìåôÜ áðü #else"
-#: cpplib.c:1436 cpplib.c:1470
-msgid "the conditional began here"
-msgstr ""
-
-#: cpplib.c:1463
+#: cpplib.c:1484
msgid "#elif without #if"
msgstr ""
-#: cpplib.c:1468
+#: cpplib.c:1489
msgid "#elif after #else"
msgstr "#elif ìåôÜ áðü #else"
-#: cpplib.c:1499
+#: cpplib.c:1519
msgid "#endif without #if"
msgstr ""
-#: cpplib.c:1582
+#: cpplib.c:1596
msgid "missing '(' after predicate"
msgstr ""
-#: cpplib.c:1597
+#: cpplib.c:1611
msgid "missing ')' to complete answer"
msgstr ""
-#: cpplib.c:1617
+#: cpplib.c:1631
msgid "predicate's answer is empty"
msgstr ""
-#: cpplib.c:1647
+#: cpplib.c:1658
#, fuzzy
msgid "assertion without predicate"
msgstr "Ç ëåéôïõñãßá äåí åðéôñÝðåôáé"
-#: cpplib.c:1649
+#: cpplib.c:1660
#, fuzzy
msgid "predicate must be an identifier"
msgstr "äéðëüò ðñïóäéïñéóôÞò ìçíýìáôïò"
-#: cpplib.c:1738
+#: cpplib.c:1744
#, c-format
msgid "\"%s\" re-asserted"
msgstr ""
-#: cpplib.c:1968
-#, fuzzy, c-format
-msgid "unterminated #%s"
-msgstr "ìç ôåñìáôéæüìåío áëöáñéèìçôéêü"
-
-#: cppmacro.c:94
-#, fuzzy, c-format
-msgid "macro \"%s\" is not used"
-msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-
-#: cppmacro.c:139 cppmacro.c:294
+#: cppmacro.c:125 cppmacro.c:280
#, fuzzy, c-format
msgid "invalid built-in macro \"%s\""
msgstr "ìç Ýãêõñï ìÞêïò ãñáììÞò: %s"
-#: cppmacro.c:234
+#: cppmacro.c:221
#, fuzzy
msgid "could not determine date and time"
msgstr "Äåí ìðüñåóá íá áíïßîù ôï áñ÷åßï %s"
-#: cppmacro.c:407
+#: cppmacro.c:393
#, fuzzy
msgid "invalid string literal, ignoring final '\\'"
msgstr "ìç Ýãêõñïò áñ÷éêüò áñéèìüò ãñáììÞò: `%s'"
-#: cppmacro.c:504
+#: cppmacro.c:476
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr ""
-#: cppmacro.c:546
+#: cppmacro.c:514
#, fuzzy
msgid "ISO C99 requires rest arguments to be used"
msgstr "ÊáêÞ áßôçóç ðáñáìÝôñùí"
-#: cppmacro.c:551
+#: cppmacro.c:519
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr ""
-#: cppmacro.c:556
+#: cppmacro.c:524
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr ""
-#: cppmacro.c:669 cpptrad.c:774
+#: cppmacro.c:635
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr ""
-#: cppmacro.c:776
+#: cppmacro.c:738
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr ""
-#: cppmacro.c:1314
+#: cppmacro.c:1241
#, fuzzy, c-format
msgid "duplicate macro parameter \"%s\""
msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
-#: cppmacro.c:1351
+#: cppmacro.c:1286
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr ""
-#: cppmacro.c:1359
+#: cppmacro.c:1294
msgid "macro parameters must be comma-separated"
msgstr ""
-#: cppmacro.c:1376
+#: cppmacro.c:1311
msgid "parameter name missing"
msgstr ""
-#: cppmacro.c:1391
+#: cppmacro.c:1326
msgid "anonymous variadic macros were introduced in C99"
msgstr ""
-#: cppmacro.c:1395
+#: cppmacro.c:1330
msgid "ISO C does not permit named variadic macros"
msgstr ""
-#: cppmacro.c:1404
+#: cppmacro.c:1339
msgid "missing ')' in macro parameter list"
msgstr ""
-#: cppmacro.c:1472
+#: cppmacro.c:1402
msgid "ISO C requires whitespace after the macro name"
msgstr ""
-#: cppmacro.c:1500
+#: cppmacro.c:1430
msgid "'#' is not followed by a macro parameter"
msgstr ""
-#: cppmacro.c:1519
+#: cppmacro.c:1449
msgid "'##' cannot appear at either end of a macro expansion"
msgstr ""
-#: cppmacro.c:1601
-#, fuzzy, c-format
-msgid "\"%s\" redefined"
-msgstr "áüñéóôï"
-
-#: cppmacro.c:1606
-#, fuzzy
-msgid "this is the location of the previous definition"
-msgstr "áõôÞ åßíáé ç èÝóç ôïõ ðñþôïõ ïñéóìïý"
-
-#: cppmacro.c:1657
+#: cppmacro.c:1588
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr ""
-#: cppmacro.c:1682
+#: cppmacro.c:1611
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr ""
-#: cppspec.c:109
-#, fuzzy, c-format
-msgid "\"%s\" is not a valid option to the preprocessor"
-msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-
-#: cppspec.c:133
-msgid "too many input files"
-msgstr "õðåñâïëéêÜ ðïëëÜ áñ÷åßá åéóüäïõ"
-
-#: cpptrad.c:841
-#, c-format
-msgid "detected recursion whilst expanding macro \"%s\""
+#: cpppch.c:84 cpppch.c:332 cpppch.c:356 cpppch.c:365
+msgid "while writing precompiled header"
msgstr ""
-#: cse.c:7195
+#: cpppch.c:463
#, c-format
-msgid ";; Processing block from %d to %d, %d sets.\n"
+msgid "%s: not used because `%.*s' not defined"
msgstr ""
-#: diagnostic.c:714
-msgid "((anonymous))"
-msgstr "((áíþíõìï))"
-
-#: diagnostic.c:928
+#: cpppch.c:475
#, c-format
-msgid "%s: warnings being treated as errors\n"
+msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
msgstr ""
-# src/request.c:37
-#: diagnostic.c:963
-#, c-format
-msgid "%s: %s: "
-msgstr "%s: %s: "
-
-#: diagnostic.c:1054
+#: cpppch.c:516
#, c-format
-msgid "%s "
-msgstr "%s "
-
-#: diagnostic.c:1056
-#, c-format
-msgid " %s"
-msgstr " %s"
-
-#: diagnostic.c:1078
-msgid "At top level:"
+msgid "%s: not used because `%s' is defined"
msgstr ""
-#: diagnostic.c:1083
-#, c-format
-msgid "In member function `%s':"
-msgstr "Óôç óõíÜñôçóç ìÝëïò `%s':"
-
-#: diagnostic.c:1087
-#, c-format
-msgid "In function `%s':"
-msgstr "Óôç óõíÜñôçóç `%s':"
-
-#: diagnostic.c:1175
-#, fuzzy
-msgid "compilation terminated.\n"
-msgstr "Ç ëåéôïõñãßá äåí åðéôñÝðåôáé"
-
-#: diagnostic.c:1193
-#, c-format
-msgid "%s:%d: confused by earlier errors, bailing out\n"
+#: cpppch.c:529 cpppch.c:715
+msgid "while reading precompiled header"
msgstr ""
-#: diagnostic.c:1208 diagnostic.c:1316
-#, c-format
-msgid ""
-"Please submit a full bug report,\n"
-"with preprocessed source if appropriate.\n"
-"See %s for instructions.\n"
-msgstr ""
+#: cppspec.c:106
+#, fuzzy, c-format
+msgid "\"%s\" is not a valid option to the preprocessor"
+msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-#: diagnostic.c:1314
-msgid "Internal compiler error: Error reporting routines re-entered.\n"
-msgstr ""
+#: cppspec.c:128
+msgid "too many input files"
+msgstr "õðåñâïëéêÜ ðïëëÜ áñ÷åßá åéóüäïõ"
-#: diagnostic.c:1376
+#: cpptrad.c:744
#, c-format
-msgid "in %s, at %s:%d"
+msgid "detected recursion whilst expanding macro \"%s\""
msgstr ""
-#: diagnostic.c:1397
-#, c-format
-msgid "In file included from %s:%d"
-msgstr ""
+#: cpptrad.c:911
+#, fuzzy
+msgid "syntax error in macro parameter list"
+msgstr "óõíôáêôéêü óöÜëìá óôïí ïñéóìü êëÜóçò ÷áñáêôÞñùí"
-#: diagnostic.c:1400
+#: cse.c:7040
#, c-format
-msgid ""
-",\n"
-" from %s:%d"
+msgid ";; Processing block from %d to %d, %d sets.\n"
msgstr ""
-#: diagnostic.c:1401
-msgid ":\n"
-msgstr ":\n"
-
-#: diagnostic.c:1445 diagnostic.c:1462
+#: diagnostic.c:209
#, c-format
-msgid "`%s' is deprecated (declared at %s:%d)"
+msgid "%s:%d: confused by earlier errors, bailing out\n"
msgstr ""
-#: diagnostic.c:1465
-#, fuzzy, c-format
-msgid "`%s' is deprecated"
-msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+#: diagnostic.c:281
+#, fuzzy
+msgid "compilation terminated.\n"
+msgstr "Ç ëåéôïõñãßá äåí åðéôñÝðåôáé"
-#: diagnostic.c:1468
-#, c-format
-msgid "type is deprecated (declared at %s:%d)"
+#: diagnostic.c:572
+msgid "Internal compiler error: Error reporting routines re-entered.\n"
msgstr ""
-#: diagnostic.c:1471
-msgid "type is deprecated"
+#: diagnostic.c:584
+#, c-format
+msgid "in %s, at %s:%d"
msgstr ""
-#: dominance.c:728
+#: dominance.c:763
#, c-format
msgid "dominator of %d should be %d, not %d"
msgstr ""
-#: dwarf2out.c:3135
+#: dwarf2out.c:3228
#, fuzzy, c-format
msgid "DW_LOC_OP %s not implemented\n"
msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
-#: dwarfout.c:2066
-#, c-format
-msgid "internal regno botch: `%s' has regno = %d\n"
+#: emit-rtl.c:1155
+msgid "can't access real part of complex value in hard register"
msgstr ""
-#: dwarfout.c:6181
-msgid "support for the DWARF1 debugging format is deprecated"
+#: emit-rtl.c:1182
+msgid "can't access imaginary part of complex value in hard register"
msgstr ""
-#: dwarfout.c:6278
+#: emit-rtl.c:2263
#, fuzzy
-msgid "can't get current directory"
-msgstr "Äåí åßíáé äõíáôüí íá ëçöèåß ï ôñÝ÷ùí êáôÜëïãïò."
-
-#: emit-rtl.c:1155
-msgid "can't access real part of complex value in hard register"
-msgstr ""
+msgid "Invalid rtl sharing found in the insn"
+msgstr "ìç Ýãêõñç ìÝôñçóç åðáíÜëçøçò `%s' óôç êáôáóêåõÞ [c*n]"
-#: emit-rtl.c:1177
-msgid "can't access imaginary part of complex value in hard register"
+#: emit-rtl.c:2265
+msgid "Shared rtx"
msgstr ""
-#: emit-rtl.c:3402
+#: emit-rtl.c:3400
msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
msgstr ""
-#: errors.c:136
+#: errors.c:129
#, c-format
msgid "abort in %s, at %s:%d"
msgstr ""
-#: except.c:369
+#: except.c:357
msgid "exception handling disabled, use -fexceptions to enable"
msgstr ""
-#: except.c:2994
+#: except.c:2942
msgid "argument of `__builtin_eh_return_regno' must be constant"
msgstr ""
-#: except.c:3137
+#: except.c:3073
#, fuzzy
msgid "__builtin_eh_return not supported on this target"
msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
-#: explow.c:1408
+#: explow.c:1327
#, fuzzy
msgid "stack limits not supported on this target"
msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
-#: expr.c:3355
+#: expr.c:2965
msgid "function using short complex types cannot be inline"
msgstr ""
-#: expr.c:6272 expr.c:6281 expr.c:6290 expr.c:6295 expr.c:6604 expr.c:6620
-msgid "unsupported wide integer operation"
-msgstr ""
-
-#: expr.c:6669
-#, c-format
-msgid "prior parameter's size depends on `%s'"
+#: expr.c:6311
+msgid "%Jprior parameter's size depends on '%D'"
msgstr ""
-#: expr.c:7005
+#: expr.c:6678
msgid "returned value in block_exit_expr"
msgstr ""
#. We can't make a bitwise copy of this object, so fail.
-#: expr.c:9202
+#: expr.c:8823
#, fuzzy
msgid "cannot take the address of an unaligned member"
msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï áñ÷åßï fifo `%s'"
-#: final.c:1342
+#: final.c:1058
msgid "negative insn length"
msgstr ""
-#: final.c:2793
+#: final.c:2429
#, fuzzy
msgid "could not split insn"
msgstr "áäõíáìßá åýñåóçò âñü÷ïõ"
-#: final.c:3141
+#: final.c:2771
#, fuzzy
msgid "invalid `asm': "
msgstr "ìç Ýãêõñï ìÝãåèïò ïñéæüíôéïõ óôçëïèÝôç: %s"
-#: final.c:3328
+#: final.c:2954
msgid "nested assembly dialect alternatives"
msgstr ""
-#: final.c:3345 final.c:3357
+#: final.c:2971 final.c:2983
#, fuzzy
msgid "unterminated assembly dialect alternative"
msgstr "ìç ôåñìáôéæüìåíï óõìâïëéêü üíïìá"
-#: final.c:3401
+#: final.c:3027
#, fuzzy, c-format
msgid "operand number missing after %%-letter"
msgstr "ïñéóìüò äéêáéùìÜôùí óôï %s"
-#: final.c:3404 final.c:3443
+#: final.c:3030 final.c:3069
#, fuzzy
msgid "operand number out of range"
msgstr "Ï áñéèìüò óýíäåóìïõ åßíáé Ýîù áðü ôï üñéï"
-#: final.c:3462
+#: final.c:3088
#, fuzzy, c-format
msgid "invalid %%-code"
msgstr "ìç Ýãêõñï äéêáßùìá"
-#: final.c:3493
+#: final.c:3118
#, c-format
msgid "`%%l' operand isn't a label"
msgstr ""
#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
-#: final.c:3600 vmsdbgout.c:466 config/i386/i386.c:6314
-#: config/pdp11/pdp11.c:1573
+#. We can't handle floating point constants; PRINT_OPERAND must
+#. handle them.
+#. We can't handle floating point constants;
+#. PRINT_OPERAND must handle them.
+#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6739
+#: config/pdp11/pdp11.c:1646
msgid "floating constant misused"
msgstr ""
-#: final.c:3656 vmsdbgout.c:523 config/i386/i386.c:6392
-#: config/pdp11/pdp11.c:1620
+#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6817
+#: config/pdp11/pdp11.c:1693
#, fuzzy
msgid "invalid expression as operand"
msgstr "%s: ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç: %s"
-#: flow.c:352
+#: flow.c:329
msgid "function might be possible candidate for attribute `noreturn'"
msgstr ""
-#: flow.c:357
+#: flow.c:334
msgid "`noreturn' function does return"
msgstr ""
-#: flow.c:378
+#: flow.c:355
msgid "control reaches end of non-void function"
msgstr "ï Ýëåã÷ïò öèÜíåé óôï ôÝëïò ìç-êåíÞò óõíÜñôçóçò"
-#: flow.c:1642
+#: flow.c:1582
msgid "Attempt to delete prologue/epilogue insn:"
msgstr ""
-#: fold-const.c:2546 fold-const.c:2559
+#: fold-const.c:2759 fold-const.c:2772
#, c-format
msgid "comparison is always %d due to width of bit-field"
msgstr ""
-#: fold-const.c:3753 fold-const.c:3770
+#: fold-const.c:3967 fold-const.c:3984
#, c-format
msgid "comparison is always %d"
msgstr ""
-#: fold-const.c:3901
+#: fold-const.c:4115
msgid "`or' of unmatched not-equal tests is always 1"
msgstr ""
-#: fold-const.c:3906
+#: fold-const.c:4120
msgid "`and' of mutually exclusive equal-tests is always 0"
msgstr ""
+#: fold-const.c:8340
+msgid "fold check: original tree changed by fold"
+msgstr ""
+
# src/shred.c:1134
-#: function.c:884 varasm.c:1503
-#, fuzzy, c-format
-msgid "size of variable `%s' is too large"
+#: function.c:884 varasm.c:1408
+#, fuzzy
+msgid "%Jsize of variable '%D' is too large"
msgstr "%s: ôï áñ÷åßï åßíáé ðïëý ìåãÜëï"
-#: function.c:3772
+#: function.c:3737
msgid "impossible constraint in `asm'"
msgstr ""
-#: function.c:5527
-#, c-format
-msgid "`%s' might be used uninitialized in this function"
+#: function.c:5697
+msgid "%J'%D' might be used uninitialized in this function"
msgstr ""
-#: function.c:5534
-#, c-format
-msgid "variable `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5704
+msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'"
msgstr ""
-#: function.c:5553
-#, c-format
-msgid "argument `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5723
+msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'"
msgstr ""
-#: function.c:6420
+#: function.c:6497
msgid "function returns an aggregate"
msgstr ""
-#: function.c:6925
-#, fuzzy, c-format
-msgid "unused parameter `%s'"
+#: function.c:6980
+#, fuzzy
+msgid "%Junused parameter '%D'"
msgstr "Üãíùóôïò ÷áñáêôÞñáò `%s'"
# src/main.c:785
-#: gcc.c:1107
+#: gcc.c:1191
#, fuzzy, c-format
msgid "ambiguous abbreviation %s"
msgstr "ÁóáöÞò ìïñöÞ `%s'"
-#: gcc.c:1134
+#: gcc.c:1218
#, c-format
msgid "incomplete `%s' option"
msgstr ""
-#: gcc.c:1145
+#: gcc.c:1229
#, fuzzy, c-format
msgid "missing argument to `%s' option"
msgstr "Ëåßðåé ðáñÜìåôñïò ãéá `%s'"
-#: gcc.c:1158
+#: gcc.c:1242
#, fuzzy, c-format
msgid "extraneous argument to `%s' option"
msgstr "Ëåßðåé ðáñÜìåôñïò ãéá `%s'"
-#: gcc.c:1486
+#: gcc.c:1563
msgid "Using built-in specs.\n"
msgstr ""
-#: gcc.c:1667
+#: gcc.c:1748
#, fuzzy, c-format
msgid ""
"Setting spec %s to '%s'\n"
"\n"
msgstr "äçìéïõñãßá %s %s óôï %s"
-#: gcc.c:1774
+#: gcc.c:1850
#, c-format
msgid "Reading specs from %s\n"
msgstr ""
-#: gcc.c:1872 gcc.c:1891
+#: gcc.c:1946 gcc.c:1965
#, c-format
msgid "specs %%include syntax malformed after %ld characters"
msgstr ""
-#: gcc.c:1899
+#: gcc.c:1973
#, fuzzy, c-format
msgid "could not find specs file %s\n"
msgstr "Äåí ìðüñåóá íá áíïßîù ôï áñ÷åßï %s"
-#: gcc.c:1916 gcc.c:1924 gcc.c:1933 gcc.c:1942
+#: gcc.c:1990 gcc.c:1998 gcc.c:2007 gcc.c:2016
#, c-format
msgid "specs %%rename syntax malformed after %ld characters"
msgstr ""
-#: gcc.c:1951
+#: gcc.c:2025
#, c-format
msgid "specs %s spec was not found to be renamed"
msgstr ""
-#: gcc.c:1958
+#: gcc.c:2032
#, c-format
msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
msgstr ""
-#: gcc.c:1963
+#: gcc.c:2037
#, fuzzy, c-format
msgid "rename spec %s to %s\n"
msgstr "äçìéïõñãßá %s %s óôï %s"
-#: gcc.c:1965
+#: gcc.c:2039
#, c-format
msgid ""
"spec is '%s'\n"
"\n"
msgstr ""
-#: gcc.c:1978
+#: gcc.c:2052
#, fuzzy, c-format
msgid "specs unknown %% command after %ld characters"
msgstr "ëßóôá ìå üëá ôá ãíùóôÜ óýíïëá ÷áñáêôÞñùí"
-#: gcc.c:1989 gcc.c:2002
+#: gcc.c:2063 gcc.c:2076
#, c-format
msgid "specs file malformed after %ld characters"
msgstr ""
-#: gcc.c:2056
+#: gcc.c:2129
msgid "spec file has no spec for linking"
msgstr ""
-#: gcc.c:2554
+#: gcc.c:2634
msgid "-pipe not supported"
msgstr "ôï -pipe äåí õðïóôçñßæåôáé"
-#: gcc.c:2609
+#: gcc.c:2696
msgid ""
"\n"
"Go ahead? (y or n) "
@@ -5388,7 +5237,7 @@ msgstr ""
"\n"
"Íá óõíå÷ßóåôå; (y Þ n) "
-#: gcc.c:2735
+#: gcc.c:2822
#, c-format
msgid ""
"Internal error: %s (program %s)\n"
@@ -5396,69 +5245,69 @@ msgid ""
"See %s for instructions."
msgstr ""
-#: gcc.c:2753
+#: gcc.c:2840
#, c-format
msgid "# %s %.2f %.2f\n"
msgstr "# %s %.2f %.2f\n"
-#: gcc.c:2883
+#: gcc.c:2973
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr "÷ñÞóç: %s [åðéëïãÝò] áñ÷åßï...\n"
-#: gcc.c:2884
+#: gcc.c:2974
msgid "Options:\n"
msgstr "ÅðéëïãÝò:\n"
-#: gcc.c:2886
+#: gcc.c:2976
msgid " -pass-exit-codes Exit with highest error code from a phase\n"
msgstr " -pass-exit-codes ¸îïäïò ìå ôï õøçëüôåñï êùäéêü óöÜëìáôïò ôçò öÜóçò\n"
-#: gcc.c:2887
+#: gcc.c:2977
msgid " --help Display this information\n"
msgstr " --help ÅìöÜíéóç áõôþí ôùí ðëçñïöïñéþí\n"
-#: gcc.c:2888
+#: gcc.c:2978
msgid " --target-help Display target specific command line options\n"
msgstr " --target-help ÅìöÜíéóç åðéëïãÝò ãñáììþí åíôïëÞò ó÷åôéêÝò ìå ôï óôü÷ï\n"
-#: gcc.c:2890
+#: gcc.c:2980
msgid " (Use '-v --help' to display command line options of sub-processes)\n"
msgstr " (×ñÞóç '-v --help' ãéá ôçí åìöÜíéóç åðéëïãþí ãñáììÞò åíôïëÞò õðïäéåñãáóéþí)\n"
-#: gcc.c:2891
+#: gcc.c:2981
msgid " -dumpspecs Display all of the built in spec strings\n"
msgstr " -dumpspecs ÅìöÜíéóç üëùí ôùí ðñïêáèïñéóìÝíùí áëöáñéèìçôéêþí ôùí ðñïóäéïñéóìþí\n"
-#: gcc.c:2892
+#: gcc.c:2982
msgid " -dumpversion Display the version of the compiler\n"
msgstr " -dumpversion ÅìöÜíéóç ôçò Ýêäïóçò ôïõ ìåôáãëùôôéóôÞ\n"
-#: gcc.c:2893
+#: gcc.c:2983
msgid " -dumpmachine Display the compiler's target processor\n"
msgstr " -dumpmachine ÅìöÜíéóç ôïõ åðåîåñãáóôÞ óôü÷ïõ ôïõ ìåôáãëùôôéóôÞ\n"
-#: gcc.c:2894
+#: gcc.c:2984
msgid " -print-search-dirs Display the directories in the compiler's search path\n"
msgstr " -print-search-dirs ÅìöÜíéóç ôùí êáôáëüãùí óôéò äéáäñïìÝò áíáæÞôçóçò ôïõ ìåôáãëùôôéóôÞ\n"
-#: gcc.c:2895
+#: gcc.c:2985
msgid " -print-libgcc-file-name Display the name of the compiler's companion library\n"
msgstr " -print-libgcc-file-name ÅìöÜíéóç ôïõ ïíüìáôïò ôçò óõíïäåõôéêÞò âéâëéïèÞêçò ôïõ ìåôáãëùôôéóôÞ\n"
-#: gcc.c:2896
+#: gcc.c:2986
msgid " -print-file-name=<lib> Display the full path to library <lib>\n"
msgstr " -print-file-name=<âéâëéïè> ÅìöÜíéóç ôçò ðëÞñçò äéáäñïìÞò óôç âéâëéïèÞêç <âéâëéïè>\n"
-#: gcc.c:2897
+#: gcc.c:2987
msgid " -print-prog-name=<prog> Display the full path to compiler component <prog>\n"
msgstr " -print-prog-name=<ðñüãñ> ÅìöÜíéóç ôçò ðëÞñçò äéáäñïìÞò óôï óõóôáôéêü ìåôáãëùôôéóôÞ <ðñüãñ>\n"
-#: gcc.c:2898
+#: gcc.c:2988
msgid " -print-multi-directory Display the root directory for versions of libgcc\n"
msgstr " -print-multi-directory ÅìöÜíéóç ôïõ ñéæéêïý êáôáëüãïõ ãéá åêäüóåéò ôçò libgcc\n"
-#: gcc.c:2899
+#: gcc.c:2989
msgid ""
" -print-multi-lib Display the mapping between command line options and\n"
" multiple library search directories\n"
@@ -5467,86 +5316,96 @@ msgstr ""
" åíôïëÞò êáé êáôáëüãùí áíáæÞôçóçò ðïëëáðëþí\n"
" âéâëéïèçêþí\n"
-#: gcc.c:2902
+#: gcc.c:2992
#, fuzzy
msgid " -print-multi-os-directory Display the relative path to OS libraries\n"
msgstr " -print-multi-directory ÅìöÜíéóç ôïõ ñéæéêïý êáôáëüãïõ ãéá åêäüóåéò ôçò libgcc\n"
-#: gcc.c:2903
+#: gcc.c:2993
msgid " -Wa,<options> Pass comma-separated <options> on to the assembler\n"
msgstr " -Wa,<åðéëïãÝò> ÐÝñáóìá <åðéëïãþí> äéá÷ùñéóìÝíùí ìå êüììá óôï óõíáñìïëïãçôÞ\n"
-#: gcc.c:2904
+#: gcc.c:2994
msgid " -Wp,<options> Pass comma-separated <options> on to the preprocessor\n"
msgstr " -Wp,<åðéëïãÝò> ÐÝñáóìá <åðéëïãþí> äéá÷ùñéóìÝíùí ìå êüììá óôïí ðñï-åðåîåñãáóôÞ\n"
-#: gcc.c:2905
+#: gcc.c:2995
msgid " -Wl,<options> Pass comma-separated <options> on to the linker\n"
msgstr " -Wl,<åðéëïãÝò> ÐÝñáóìá <åðéëïãþí> äéá÷ùñéóìÝíùí ìå êüììá óôï óõíäÝôç\n"
-#: gcc.c:2906
+#: gcc.c:2996
+#, fuzzy
+msgid " -Xassembler <arg> Pass <arg> on to the assembler\n"
+msgstr " -Xlinker <üñéóìá> ÐÝñáóìá <ïñßóìáôïò> óôï óõíäÝôç\n"
+
+#: gcc.c:2997
+#, fuzzy
+msgid " -Xpreprocessor <arg> Pass <arg> on to the preprocessor\n"
+msgstr " -Xlinker <üñéóìá> ÐÝñáóìá <ïñßóìáôïò> óôï óõíäÝôç\n"
+
+#: gcc.c:2998
msgid " -Xlinker <arg> Pass <arg> on to the linker\n"
msgstr " -Xlinker <üñéóìá> ÐÝñáóìá <ïñßóìáôïò> óôï óõíäÝôç\n"
-#: gcc.c:2907
+#: gcc.c:2999
msgid " -save-temps Do not delete intermediate files\n"
msgstr " -save-temps Íá ìç äéáãñáöïýí ôá åíäéÜìåóá áñ÷åßá\n"
-#: gcc.c:2908
+#: gcc.c:3000
msgid " -pipe Use pipes rather than intermediate files\n"
msgstr " -pipe ×ñÞóç óùëçíþóåùí áíôß åíäéÜìåóùí áñ÷åßùí\n"
-#: gcc.c:2909
+#: gcc.c:3001
msgid " -time Time the execution of each subprocess\n"
msgstr " -time ÌÝôñçóç ôïõ ÷ñüíïõ åêôÝëåóçò êÜèå õðïäéåñãáóßáò\n"
-#: gcc.c:2910
+#: gcc.c:3002
msgid " -specs=<file> Override built-in specs with the contents of <file>\n"
msgstr " -specs=<áñ÷åßï> ×ñÞóç ôïõ ðåñéå÷ïìÝíïõ ôïõ <áñ÷åßïõ> áíôß ôùí ðñïêáèïñéóìÝíùí ðñïóäéïñéóìþí\n"
-#: gcc.c:2911
+#: gcc.c:3003
msgid " -std=<standard> Assume that the input sources are for <standard>\n"
msgstr ""
" -std=<ðñüôõðï> Èåþñçóå üôé ïé ðçãÝò êþäéêá åßíáé ãéá ôï <ðñüôõðï>\n"
"\n"
-#: gcc.c:2912
+#: gcc.c:3004
msgid " -B <directory> Add <directory> to the compiler's search paths\n"
msgstr " -B <êáôÜëïãïò> ÐñïóèÞêç ôïõ <êáôáëüãïõ> óôéò äéáäñïìÝò áíáæÞôçóçò ôïõ ìåôáãëùôôéóôÞ\n"
-#: gcc.c:2913
+#: gcc.c:3005
msgid " -b <machine> Run gcc for target <machine>, if installed\n"
msgstr " -b <ìç÷áíÞ> ÅêôÝëåóç ôïõ gcc ãéá ôï óôü÷ï <ìç÷áíÞ>, áí åßíáé åãêáôåóôçìÝíïò\n"
-#: gcc.c:2914
+#: gcc.c:3006
msgid " -V <version> Run gcc version number <version>, if installed\n"
msgstr " -V <Ýêäïóç> ÅêôÝëåóç ôçò Ýêäïóçò <Ýêäïóç> ôïõ gcc, áí åßíáé åãêáôåóôçìÝíç\n"
-#: gcc.c:2915
+#: gcc.c:3007
msgid " -v Display the programs invoked by the compiler\n"
msgstr " -v ÅìöÜíéóç ôùí ðñïãñáììÜôùí ðïõ êáëåß ï ìåôáãëùôôéóôÞò\n"
-#: gcc.c:2916
+#: gcc.c:3008
msgid " -### Like -v but options quoted and commands not executed\n"
msgstr ""
-#: gcc.c:2917
+#: gcc.c:3009
msgid " -E Preprocess only; do not compile, assemble or link\n"
msgstr " -E Ðñïåðåîåñãáóßá ìüíï· ü÷é ìåôáãëþôôéóç, óõíáñìïëüãçóç Þ óýíäåóç\n"
-#: gcc.c:2918
+#: gcc.c:3010
msgid " -S Compile only; do not assemble or link\n"
msgstr " -S Ìåôáãëþôôéóç ìüíï· ü÷é óõíáñìïëüãçóç Þóýíäåóç\n"
-#: gcc.c:2919
+#: gcc.c:3011
msgid " -c Compile and assemble, but do not link\n"
msgstr " -c Ìåôáãëþôôéóç êáé óõíáñìïëüãçóç, ü÷éüìùò óýíäåóç\n"
-#: gcc.c:2920
+#: gcc.c:3012
msgid " -o <file> Place the output into <file>\n"
msgstr " -o <áñ÷åßï> ÔïðïèÝôçóç ôçò åîüäïõ óôï <áñ÷åßï>\n"
-#: gcc.c:2921
+#: gcc.c:3013
#, fuzzy
msgid ""
" -x <language> Specify the language of the following input files\n"
@@ -5560,7 +5419,7 @@ msgstr ""
" óõìðåñéöïñÜ åýñåóçò ôçò ãëþóóáò âÜóåé ôçò åðÝêôáóçò\n"
" ôïõ áñ÷åßïõ\n"
-#: gcc.c:2928
+#: gcc.c:3020
#, c-format
msgid ""
"\n"
@@ -5574,29 +5433,24 @@ msgstr ""
" åðéëïãÝò óå áõôÝò ôéò äéåñãáóßåò, ðñÝðåé íá ÷ñçóéìïðïéÞóåôå ôéò åðéëïãÝò\n"
" -W<ãñÜììá>.\n"
-#: gcc.c:3063
+#: gcc.c:3141
#, fuzzy, c-format
msgid "`-%c' option must have argument"
msgstr "ðáñÜëçøç ïñßóìáôïò áñ÷åßïõ"
-#: gcc.c:3085
+#: gcc.c:3163
#, c-format
msgid "couldn't run `%s': %s"
msgstr ""
#. translate_options () has turned --version into -fversion.
-#: gcc.c:3262
+#: gcc.c:3349
#, c-format
msgid "%s (GCC) %s\n"
msgstr "%s (GCC) %s\n"
-#: gcc.c:3263
-#, fuzzy
-msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
-msgstr "ÐíåõìáôéêÜ Äéêáéþìáôá (C) 2001 Free Software Foundation, Inc.\n"
-
# src/main.c:850
-#: gcc.c:3265 gcov.c:364
+#: gcc.c:3352
#, fuzzy
msgid ""
"This is free software; see the source for copying conditions. There is NO\n"
@@ -5607,69 +5461,75 @@ msgstr ""
"áíôéãñáöÞò. Äåí õðÜñ÷åé ÊÁÌÉÁ åããýçóç· ïýôå áêüìá ãéá ËÅÉÔÏÕÑÃÉÊÏÔÇÔÁ Þ \n"
"ÊÁÔÁËËÇËÏÔÇÔÁ ÃÉÁ ÅÍÁ ÓÕÃÊÅÊÑÉÌÅÍÏ ÓÊÏÐÏ.\n"
-#: gcc.c:3366
+#: gcc.c:3453
#, fuzzy
msgid "argument to `-Xlinker' is missing"
msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-#: gcc.c:3374
+#: gcc.c:3461
+#, fuzzy
+msgid "argument to `-Xpreprocessor' is missing"
+msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
+
+#: gcc.c:3468
+#, fuzzy
+msgid "argument to `-Xassembler' is missing"
+msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
+
+#: gcc.c:3475
#, fuzzy
msgid "argument to `-l' is missing"
msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-#: gcc.c:3391
+#: gcc.c:3491
#, fuzzy
msgid "argument to `-specs' is missing"
msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-#: gcc.c:3406
+#: gcc.c:3505
#, fuzzy
msgid "argument to `-specs=' is missing"
msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-#: gcc.c:3436
+#: gcc.c:3542
#, c-format
msgid "`-%c' must come at the start of the command line"
msgstr ""
-#: gcc.c:3445
+#: gcc.c:3551
#, fuzzy
msgid "argument to `-B' is missing"
msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-#: gcc.c:3618
-msgid "cannot specify -o with -c or -S and multiple compilations"
-msgstr ""
-
-#: gcc.c:3791
+#: gcc.c:3728
msgid "warning: -pipe ignored because -save-temps specified"
msgstr ""
-#: gcc.c:3795
+#: gcc.c:3732
msgid "warning: -pipe ignored because -time specified"
msgstr ""
-#: gcc.c:3807
+#: gcc.c:3944
#, fuzzy
msgid "argument to `-x' is missing"
msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-#: gcc.c:3835
+#: gcc.c:3972
#, fuzzy, c-format
msgid "argument to `-%s' is missing"
msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-#: gcc.c:3896
+#: gcc.c:4033
#, c-format
msgid "warning: `-x %s' after last input file has no effect"
msgstr ""
-#: gcc.c:4241
+#: gcc.c:4434
#, fuzzy
msgid "invalid specification! Bug in cc"
msgstr "Ìç Ýãêõñç ñýèìéóç èýñáò (port)"
-#: gcc.c:4395
+#: gcc.c:4588
#, c-format
msgid "%s\n"
msgstr ""
@@ -5677,75 +5537,80 @@ msgstr ""
#. Catch the case where a spec string contains something like
#. '%{foo:%*}'. ie there is no * in the pattern on the left
#. hand side of the :.
-#: gcc.c:4955
+#: gcc.c:5092
#, c-format
msgid "spec failure: '%%*' has not been initialized by pattern match"
msgstr ""
-#: gcc.c:4964
+#: gcc.c:5101
#, c-format
msgid "warning: use of obsolete %%[ operator in specs"
msgstr ""
-#: gcc.c:4982
+#: gcc.c:5119
#, c-format
msgid "Processing spec %c%s%c, which is '%s'\n"
msgstr ""
-#: gcc.c:5107
+#: gcc.c:5182
#, fuzzy, c-format
msgid "spec failure: unrecognized spec option '%c'"
msgstr "%s: ìç áíáãíùñßóéìç åðéëïãÞ `-%c'\n"
-#: gcc.c:5188
+#: gcc.c:5261
#, fuzzy, c-format
msgid "unknown spec function `%s'"
msgstr "Óôç óõíÜñôçóç `%s':"
-#: gcc.c:5207
+#: gcc.c:5280
#, fuzzy, c-format
msgid "error in args to spec function `%s'"
msgstr "ðÜñá ðïëëÜ ïñßóìáôá"
-#: gcc.c:5256
+#: gcc.c:5328
msgid "malformed spec function name"
msgstr ""
#. )
-#: gcc.c:5259
+#: gcc.c:5331
#, fuzzy
msgid "no arguments for spec function"
msgstr "ðïëý ëßãá ïñßóìáôá"
-#: gcc.c:5278
+#: gcc.c:5350
msgid "malformed spec function arguments"
msgstr ""
-#: gcc.c:5386
-msgid "mismatched braces in specs"
+#: gcc.c:6076
+msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC."
msgstr ""
-#: gcc.c:6081
+#: gcc.c:6086
+msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC."
+msgstr ""
+
+#: gcc.c:6179
#, c-format
msgid "unrecognized option `-%s'"
msgstr "ìç áíáãíùñßóçìç åðéëïãÞ `-%s'"
-#: gcc.c:6087
+#: gcc.c:6185
#, c-format
msgid "install: %s%s\n"
msgstr "åãêáôÜóôáóç: %s%s\n"
-#: gcc.c:6088
+#: gcc.c:6186
#, c-format
msgid "programs: %s\n"
msgstr "ðñïãñÜììáôá: %s\n"
-#: gcc.c:6089
+#: gcc.c:6187
#, c-format
msgid "libraries: %s\n"
msgstr "âéâëéïèÞêåò: %s\n"
-#: gcc.c:6146
+#: gcc.c:6244
+#, c-format
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
@@ -5753,56 +5618,61 @@ msgstr ""
"\n"
"Ãéá ïäçãßåò ãéá áíáöïñÝò óöáëìÜôùí. ðáñáêáëþ äåßôå:\n"
-#: gcc.c:6162
+#: gcc.c:6260
#, c-format
msgid "Configured with: %s\n"
msgstr "¸÷åé ñõèìéóôåß ìå: %s\n"
-#: gcc.c:6176
+#: gcc.c:6274
#, c-format
msgid "Thread model: %s\n"
msgstr "ÌïíôÝëï íçìÜôùí: %s\n"
-#: gcc.c:6187
+#: gcc.c:6285
#, c-format
msgid "gcc version %s\n"
msgstr "Ýêäïóç gcc %s\n"
-#: gcc.c:6189
+#: gcc.c:6287
#, c-format
msgid "gcc driver version %s executing gcc version %s\n"
msgstr "Ýêäïóç ïäçãïý gcc %s åêôåëåß ôçí Ýêäïóç gcc %s\n"
-#: gcc.c:6197
+#: gcc.c:6295
msgid "no input files"
msgstr "äåí õðÜñ÷ïõí áñ÷åßá åéóüäïõ"
-#: gcc.c:6235
-#, c-format
-msgid "%s: %s compiler not installed on this system"
-msgstr "%s: ï ìåôáãëùôôéóôÞò %s äåí Ý÷åé åãêáôáóôáèåß óôï óýóôçìá áõôü"
-
-#: gcc.c:6310
+#: gcc.c:6317 gcc.c:6436
#, c-format
msgid "%s: linker input file unused because linking not done"
msgstr ""
-#: gcc.c:6353
+#: gcc.c:6320
+#, fuzzy
+msgid "cannot specify -o with -c or -S and multiple languages"
+msgstr "äåí åßíáé äõíáôü íá ðáñáëçöèåß ï ÷ñÞóôçò êáé ç ïìÜäá"
+
+#: gcc.c:6355
+#, c-format
+msgid "%s: %s compiler not installed on this system"
+msgstr "%s: ï ìåôáãëùôôéóôÞò %s äåí Ý÷åé åãêáôáóôáèåß óôï óýóôçìá áõôü"
+
+#: gcc.c:6476
#, c-format
msgid "language %s not recognized"
msgstr ""
-#: gcc.c:6456
+#: gcc.c:6573
msgid "internal gcc abort"
msgstr "åóùôåñéêü óöÜëìá gcc"
# src/main.c:178
-#: gcov.c:325
+#: gcov.c:384
#, fuzzy
msgid "Internal gcov abort.\n"
msgstr "Åóùôåñéêü óöÜëìá (recoding)"
-#: gcov.c:338
+#: gcov.c:397
msgid ""
"Usage: gcov [OPTION]... SOURCEFILE\n"
"\n"
@@ -5810,7 +5680,7 @@ msgstr ""
"×ñÞóç: gcov [ÅÐÉËÏÃÇ]... [ÁÑןÏÐÇÃÇÓ]\n"
"\n"
-#: gcov.c:339
+#: gcov.c:398
msgid ""
"Print code coverage information.\n"
"\n"
@@ -5818,47 +5688,55 @@ msgstr ""
"EìöÜíéóç ðëçñïöïñéþí êÜëõøçò êþäéêá.\n"
"\n"
-#: gcov.c:340
+#: gcov.c:399
msgid " -h, --help Print this help, then exit\n"
msgstr " -h, --help ÅìöÜíéóç áõôÞò ôçò âïÞèåéáò, ìåôÜ Ýîïäïò\n"
-#: gcov.c:341
+#: gcov.c:400
msgid " -v, --version Print version number, then exit\n"
msgstr " -v, --version ÅìöÜíéóç áñéèìïý Ýêäïóçò, ìåôÜ Ýîïäïò\n"
-#: gcov.c:342
+#: gcov.c:401
+msgid " -a, --all-blocks Show information for every basic block\n"
+msgstr ""
+
+#: gcov.c:402
msgid " -b, --branch-probabilities Include branch probabilities in output\n"
msgstr ""
-#: gcov.c:343
+#: gcov.c:403
msgid ""
" -c, --branch-counts Given counts of branches taken\n"
" rather than percentages\n"
msgstr ""
-#: gcov.c:345
+#: gcov.c:405
msgid " -n, --no-output Do not create an output file\n"
msgstr ""
-#: gcov.c:346
+#: gcov.c:406
msgid ""
" -l, --long-file-names Use long output file names for included\n"
" source files\n"
msgstr ""
-#: gcov.c:348
+#: gcov.c:408
msgid " -f, --function-summaries Output summaries for each function\n"
msgstr ""
-#: gcov.c:349
+#: gcov.c:409
msgid " -o, --object-directory DIR|FILE Search for object files in DIR or called FILE\n"
msgstr ""
-#: gcov.c:350
+#: gcov.c:410
msgid " -p, --preserve-paths Preserve all pathname components\n"
msgstr ""
-#: gcov.c:351
+#: gcov.c:411
+msgid " -u, --unconditional-branches Show unconditional branch counts too\n"
+msgstr ""
+
+#: gcov.c:412
#, c-format
msgid ""
"\n"
@@ -5869,409 +5747,296 @@ msgstr ""
"Ãéá ïäçãßåò óôéò áíáöïñÝò óöáëìÜôùí, ðáñáêáëþ äåßôå:\n"
"%s.\n"
-#: gcov.c:361
+#: gcov.c:422
#, c-format
msgid "gcov (GCC) %s\n"
msgstr "gcov (GCC) %s\n"
-#: gcov.c:362
-msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
+#: gcov.c:423
+#, fuzzy
+msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
msgstr "ÐíåõìáôéêÜ Äéêáéþìáôá (C) 2001 Free Software Foundation, Inc.\n"
-#: gcov.c:500
-#, fuzzy, c-format
-msgid "Could not open basic block file %s.\n"
-msgstr "Äåí ìðüñåóá íá áíïßîù ôï áñ÷åßï %s"
-
-#: gcov.c:507
-#, fuzzy, c-format
-msgid "Could not open program flow graph file %s.\n"
-msgstr "Áäýíáôç ç äçìéïõñãßá áñ÷åßïõ êáôáãñáöþí \"%s\""
-
-#: gcov.c:524
-#, fuzzy, c-format
-msgid "Could not open data file %s.\n"
-msgstr "Äåí ìðüñåóá íá áíïßîù ôï áñ÷åßï %s"
-
-#: gcov.c:525
-msgid "Assuming that all execution counts are zero.\n"
-msgstr ""
-
-#: gcov.c:534
-#, fuzzy, c-format
-msgid "No executable code associated with file %s.\n"
-msgstr "ÊáìéÜ äéåýèõíóç äåí óõíäÝåôáé ìå ôï üíïìá"
-
-#: gcov.c:1186
-#, c-format
-msgid "%s of %d lines executed in %s %s\n"
-msgstr ""
-
-#: gcov.c:1191
-#, fuzzy, c-format
-msgid "No executable lines in %s %s\n"
-msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n"
-
-#: gcov.c:1198
-#, fuzzy, c-format
-msgid "%s of %d branches executed in %s %s\n"
-msgstr ""
-"Äåí õðÜñ÷åé áñ÷åßï `%s'.\n"
+# src/main.c:850
+#: gcov.c:425
+#, fuzzy
+msgid ""
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or \n"
+"FITNESS FOR A PARTICULAR PURPOSE.\n"
"\n"
-
-#: gcov.c:1203
-#, c-format
-msgid "%s of %d branches taken at least once in %s %s\n"
msgstr ""
+"Áõôü åßíáé åëåýèåñï ëïãéóìéêü· äåßôå ôïí ðçãáßï êþäéêá ãéá ôïõò êáíïíéóìïýò\n"
+"áíôéãñáöÞò. Äåí õðÜñ÷åé ÊÁÌÉÁ åããýçóç· ïýôå áêüìá ãéá ËÅÉÔÏÕÑÃÉÊÏÔÇÔÁ Þ \n"
+"ÊÁÔÁËËÇËÏÔÇÔÁ ÃÉÁ ÅÍÁ ÓÕÃÊÅÊÑÉÌÅÍÏ ÓÊÏÐÏ.\n"
-#: gcov.c:1209
+#: gcov.c:515
#, fuzzy, c-format
-msgid "No branches in %s %s\n"
-msgstr ""
-"Äåí õðÜñ÷åé áñ÷åßï `%s'.\n"
-"\n"
+msgid "%s:no functions found\n"
+msgstr "Äåí âñÝèçêå ìÝóï"
-#: gcov.c:1211
-#, c-format
-msgid "%s of %d calls executed in %s %s\n"
-msgstr ""
+#: gcov.c:536 gcov.c:564
+#, fuzzy
+msgid "\n"
+msgstr ":\n"
-#: gcov.c:1216
+#: gcov.c:551
#, fuzzy, c-format
-msgid "No calls in %s %s\n"
+msgid "%s:creating `%s'\n"
msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n"
-#: gcov.c:1351
+#: gcov.c:555
#, fuzzy, c-format
-msgid "didn't use all bb entries of graph, function %s\n"
-msgstr "äéáãñáöÞ üëùí ôùí åããñáöþí ôïõ êáôáëüãïõ %s\n"
-
-#: gcov.c:1353
-#, c-format
-msgid "block_num = %ld, num_blocks = %d\n"
-msgstr ""
-
-#: gcov.c:1367
-#, c-format
-msgid "ERROR: unexpected line number %ld\n"
-msgstr ""
+msgid "%s:error writing output file `%s'\n"
+msgstr "%s: ÓöÜëìá êáôÜ ôçí åããñáöÞ ôïõ %s\n"
-#: gcov.c:1383
+#: gcov.c:560
#, fuzzy, c-format
-msgid "ERROR: too many basic blocks in function %s\n"
-msgstr "ðÜñá ðïëëÜ ïñßóìáôá"
-
-#: gcov.c:1398
-#, c-format
-msgid "ERROR: out of range line number in function %s\n"
-msgstr ""
+msgid "%s:could not open output file `%s'\n"
+msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ `%s'"
-#: gcov.c:1470
+#: gcov.c:711
#, fuzzy, c-format
-msgid "Could not open source file %s.\n"
-msgstr "Äåí ìðüñåóá íá áíïßîù ôï áñ÷åßï %s"
+msgid "%s:cannot open graph file\n"
+msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ"
-#: gcov.c:1480
-#, c-format
-msgid "Warning: source file %s is newer than %s\n"
-msgstr ""
+#: gcov.c:717
+#, fuzzy, c-format
+msgid "%s:not a gcov graph file\n"
+msgstr "%s: Äåí åßíáé êáíïíéêü áñ÷åßï"
-#: gcov.c:1510
+#: gcov.c:730
#, c-format
-msgid "Unexpected EOF while reading source file %s.\n"
+msgid "%s:version `%.4s', prefer `%.4s'\n"
msgstr ""
-#: gcov.c:1532
+#: gcov.c:782
#, c-format
-msgid "call %2d never executed\n"
+msgid "%s:already seen blocks for `%s'\n"
msgstr ""
-#: gcov.c:1535
+#: gcov.c:903 gcov.c:1062
#, c-format
-msgid "call %2d returns %s\n"
+msgid "%s:corrupted\n"
msgstr ""
-#: gcov.c:1543
-#, c-format
-msgid "branch %2d never executed\n"
-msgstr ""
-
-#: gcov.c:1546
+#: gcov.c:976
#, fuzzy, c-format
-msgid "branch %2d taken %s\n"
-msgstr ""
-"Äåí õðÜñ÷åé áñ÷åßï `%s'.\n"
-"\n"
-
-#: gcov.c:1610
-#, c-format
-msgid "Creating %s.\n"
-msgstr "Äçìéïõñãßá ôïõ %s.\n"
-
-#: gcov.c:1613
-#, fuzzy, c-format
-msgid "Error writing output file %s.\n"
-msgstr "óöÜëìá åããñáöÞò %s"
+msgid "%s:cannot open data file\n"
+msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ"
-#: gcov.c:1618
+#: gcov.c:981
#, fuzzy, c-format
-msgid "Could not open output file %s.\n"
-msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ `%s'"
-
-#: gcse.c:763
-#, c-format
-msgid "GCSE disabled: %d > 1000 basic blocks and %d >= 20 edges/basic block"
-msgstr ""
-
-#: gcse.c:775
-#, c-format
-msgid "GCSE disabled: %d basic blocks and %d registers"
-msgstr ""
+msgid "%s:not a gcov data file\n"
+msgstr "%s: Äåí åßíáé êáíïíéêü áñ÷åßï"
-#: genautomata.c:1490
+#: gcov.c:994
#, c-format
-msgid "Name `%s' contains quotes"
+msgid "%s:version `%.4s', prefer version `%.4s'\n"
msgstr ""
-#: genautomata.c:1621
-#, fuzzy, c-format
-msgid "invalid string `%s' in define_cpu_unit"
-msgstr "ìç Ýãêõñç ìÝôñçóç åðáíÜëçøçò `%s' óôç êáôáóêåõÞ [c*n]"
-
-#: genautomata.c:1650
+#: gcov.c:1000
#, c-format
-msgid "invalid string `%s' in define_query_cpu_unit"
+msgid "%s:stamp mismatch with graph file\n"
msgstr ""
-#: genautomata.c:1682 genautomata.c:1685
+#: gcov.c:1026
#, fuzzy, c-format
-msgid "invalid string `%s' in define_bypass"
-msgstr "ìç Ýãêõñïò áñéèìüò áðü êåíÝò ãñáììÝò: `%s'"
+msgid "%s:unknown function `%u'\n"
+msgstr "Óôç óõíÜñôçóç `%s':"
-#: genautomata.c:1720
+#: gcov.c:1039
#, fuzzy, c-format
-msgid "invalid first string `%s' in exclusion_set"
-msgstr "ìç Ýãêõñç ìÝôñçóç åðáíÜëçøçò `%s' óôç êáôáóêåõÞ [c*n]"
+msgid "%s:profile mismatch for `%s'\n"
+msgstr "äéáôÞñçóç ùñþí óôï %s"
-#: genautomata.c:1724
+#: gcov.c:1062
#, fuzzy, c-format
-msgid "invalid second string `%s' in exclusion_set"
-msgstr "ìç Ýãêõñç ìÝôñçóç åðáíÜëçøçò `%s' óôç êáôáóêåõÞ [c*n]"
+msgid "%s:overflowed\n"
+msgstr "%s: óöÜëìá åããñáöÞò"
-#: genautomata.c:1760
+#: gcov.c:1085
#, c-format
-msgid "invalid first string `%s' in presence_set"
+msgid "%s:`%s' lacks entry and/or exit blocks\n"
msgstr ""
-#: genautomata.c:1764
-#, fuzzy, c-format
-msgid "invalid second string `%s' in presence_set"
-msgstr "ìç Ýãêõñï üíïìá ìÞíá"
-
-#: genautomata.c:1800
+#: gcov.c:1090
#, c-format
-msgid "invalid first string `%s' in absence_set"
+msgid "%s:`%s' has arcs to entry block\n"
msgstr ""
-#: genautomata.c:1804
+#: gcov.c:1098
#, c-format
-msgid "invalid second string `%s' in absence_set"
+msgid "%s:`%s' has arcs from exit block\n"
msgstr ""
-#: genautomata.c:1837
+#: gcov.c:1306
#, c-format
-msgid "invalid string `%s' in define_automaton"
+msgid "%s:graph is unsolvable for `%s'\n"
msgstr ""
-#: genautomata.c:1868
+# src/request.c:37
+#: gcov.c:1386
#, fuzzy, c-format
-msgid "invalid option `%s' in automata_option"
-msgstr "ìç Ýãêõñç ìÝôñçóç åðáíÜëçøçò `%s' óôç êáôáóêåõÞ [c*n]"
+msgid "%s `%s'\n"
+msgstr "%s: %s"
-#: genautomata.c:1890
+#: gcov.c:1389
#, c-format
-msgid "garbage after ) in reservation `%s'"
+msgid "Lines executed:%s of %d\n"
msgstr ""
-#: genautomata.c:1921 genautomata.c:1954 genautomata.c:1981
-#, fuzzy, c-format
-msgid "invalid `%s' in reservation `%s'"
-msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-
-#: genautomata.c:1932
-#, c-format
-msgid "repetition `%s' <= 1 in reservation `%s'"
+#: gcov.c:1393
+msgid "No executable lines"
msgstr ""
-#: genautomata.c:2425
+#: gcov.c:1399
#, c-format
-msgid "unit `%s' in exclusion is not declared"
+msgid "Branches executed:%s of %d\n"
msgstr ""
-#: genautomata.c:2427
+#: gcov.c:1403
#, c-format
-msgid "`%s' in exclusion is not unit"
+msgid "Taken at least once:%s of %d\n"
msgstr ""
-#: genautomata.c:2465
-#, c-format
-msgid "unit `%s' excludes itself"
+#: gcov.c:1409
+#, fuzzy
+msgid "No branches\n"
msgstr ""
+"Äåí õðÜñ÷åé áñ÷åßï `%s'.\n"
+"\n"
-#: genautomata.c:2473
+#: gcov.c:1411
#, c-format
-msgid "units `%s' and `%s' in exclusion set belong to different automata"
+msgid "Calls executed:%s of %d\n"
msgstr ""
-#: genautomata.c:2603 genautomata.c:2609
-#, c-format
-msgid "unit `%s' excludes and requires presence of `%s'"
-msgstr ""
+#: gcov.c:1415
+#, fuzzy
+msgid "No calls\n"
+msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n"
-#: genautomata.c:2623 genautomata.c:2629
-#, c-format
-msgid "unit `%s' requires absence and presence of `%s'"
-msgstr ""
+#: gcov.c:1556
+#, fuzzy, c-format
+msgid "%s:no lines for `%s'\n"
+msgstr "%s ðñéí áðü `%s'"
-#: genautomata.c:2692 genautomata.c:2695
+#: gcov.c:1751
#, fuzzy, c-format
-msgid "repeated declaration of automaton `%s'"
-msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
+msgid "call %2d returned %s\n"
+msgstr " áëëÜ %d áðáéôïýíôáé"
-#: genautomata.c:2711
+#: gcov.c:1756
#, c-format
-msgid "define_insn_reservation `%s' has negative latency time"
+msgid "call %2d never executed\n"
msgstr ""
-#: genautomata.c:2717
+#: gcov.c:1761
#, c-format
-msgid "`%s' is already used as insn reservation name"
+msgid "branch %2d taken %s%s\n"
msgstr ""
-#: genautomata.c:2723
+#: gcov.c:1765
#, c-format
-msgid "define_bypass `%s - %s' has negative latency time"
+msgid "branch %2d never executed\n"
msgstr ""
-#: genautomata.c:2737
+#: gcov.c:1770
#, fuzzy, c-format
-msgid "automaton `%s' is not declared"
-msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+msgid "unconditional %2d taken %s\n"
+msgstr "¶ãíùóôÞ åðéëïãÞ ãéá ôï `s'"
-#: genautomata.c:2747
+#: gcov.c:1773
#, c-format
-msgid "define_unit `%s' without automaton when one defined"
+msgid "unconditional %2d never executed\n"
msgstr ""
-#: genautomata.c:2753
+#: gcov.c:1805
#, fuzzy, c-format
-msgid "`%s' is declared as cpu unit"
-msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+msgid "%s:cannot open source file\n"
+msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ"
-#: genautomata.c:2762
+#: gcov.c:1815
#, fuzzy, c-format
-msgid "`%s' is declared as cpu reservation"
-msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+msgid "%s:source file is newer than graph file `%s'\n"
+msgstr "%s: ç Ýîïäïò èá åðéêáëýøåé ôï %s\n"
-#: genautomata.c:2772
-#, fuzzy, c-format
-msgid "repeated declaration of unit `%s'"
-msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n"
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:747
+msgid "GCSE disabled"
+msgstr ""
-#: genautomata.c:2775
-#, fuzzy, c-format
-msgid "repeated declaration of reservation `%s'"
-msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
+#: gcse.c:6108
+msgid "NULL pointer checks disabled"
+msgstr ""
+
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:7994
+#, fuzzy
+msgid "jump bypassing disabled"
+msgstr "Ç ëåéôïõñãßá NIS+ áðÝôõ÷å"
-#: genautomata.c:2790 genautomata.c:2793
+#: gcse.c:8055
#, c-format
-msgid "there is no insn reservation `%s'"
+msgid "%s: %d basic blocks and %d edges/basic block"
msgstr ""
-#: genautomata.c:2810 genautomata.c:2815
+#: gcse.c:8068
#, c-format
-msgid "the same bypass `%s - %s' is already defined"
+msgid "%s: %d basic blocks and %d registers"
msgstr ""
-#: genautomata.c:2820
+#: ggc-common.c:398 ggc-common.c:406 ggc-common.c:487 ggc-common.c:507
+#: ggc-page.c:2030 ggc-page.c:2062 ggc-page.c:2069 ggc-zone.c:1361
+#: ggc-zone.c:1367 ggc-zone.c:1372 ggc-zone.c:1379
#, fuzzy, c-format
-msgid "bypass `%s - %s' is already defined"
-msgstr "(ôï áñ÷åßï Þäç õðÜñ÷åé)"
+msgid "can't write PCH file: %m"
+msgstr "áäõíáìßá åããñáöÞò áðïôåëÝóìáôïò: %s"
-#: genautomata.c:2925 genautomata.c:2927
+#: ggc-common.c:500
#, fuzzy, c-format
-msgid "automaton `%s' is not used"
-msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
-
-#: genautomata.c:2950
-#, fuzzy, c-format
-msgid "undeclared unit or reservation `%s'"
-msgstr "ìç Ýãêõñïò äçëùôÞò ðåäßïõ: `%s'"
+msgid "can't get position in PCH file: %m"
+msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïñéóìïý locale `%s'"
-#: genautomata.c:3028 genautomata.c:3030
+#: ggc-common.c:510
#, fuzzy, c-format
-msgid "unit `%s' is not used"
-msgstr "ôï áñ÷åßï ÷Üñôç ÷áñáêôÞñùí `%s' äåí âñÝèçêå"
+msgid "can't write padding to PCH file: %m"
+msgstr "áäõíáìßá åããñáöÞò áñ÷åßùí åîüäïõ óôï `%s'"
-#: genautomata.c:3035 genautomata.c:3037
+#: ggc-common.c:563 ggc-common.c:571 ggc-common.c:578 ggc-common.c:581
+#: ggc-common.c:654 ggc-common.c:657 ggc-page.c:2157 ggc-zone.c:1389
#, fuzzy, c-format
-msgid "reservation `%s' is not used"
-msgstr "Ç ëåéôïõñãßá äåí õðïóôçñßæåôáé"
+msgid "can't read PCH file: %m"
+msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ"
-#: genautomata.c:3134
-#, fuzzy, c-format
-msgid "cycle in definition of reservation `%s'"
-msgstr "Ïé ïñéóìïß ðçãÞ âñßóêïíôáé óôï ÁÑ×ÅÉÏ"
+#: ggc-common.c:681
+msgid "had to relocate PCH"
+msgstr ""
-#: genautomata.c:5333
+#: ggc-page.c:1325
#, c-format
-msgid "Units `%s' and `%s' should be in the same automaton"
+msgid "open /dev/zero: %m"
msgstr ""
-#: genautomata.c:9441
+#: ggc-page.c:2047 ggc-page.c:2053
#, fuzzy
-msgid "-split has no argument."
-msgstr "÷ùñßò ïñßóìáôá"
-
-#: genautomata.c:9442
-#, fuzzy
-msgid "option `-split' has not been implemented yet\n"
-msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
-
-#: genautomata.c:9486 genautomata.c:9491
-#, c-format
-msgid "Automaton `%s': Insn `%s' will never be issued"
-msgstr ""
+msgid "can't write PCH file"
+msgstr "áäõíáìßá åããñáöÞò áñ÷åßùí åîüäïõ óôï `%s'"
-#: genautomata.c:9498 genautomata.c:9501
-#, c-format
-msgid "Insn `%s' will never be issued"
+#: ggc-simple.c:506
+msgid "Generating PCH files is not supported when using ggc-simple.c"
msgstr ""
-#: genautomata.c:9649
-#, fuzzy
-msgid "Errors in DFA description"
-msgstr "(÷ùñßò ðåñéãñáöÞ)"
-
-#: genautomata.c:9732
+#: global.c:356 global.c:369 global.c:383
#, fuzzy, c-format
-msgid "Error in writing DFA description file %s"
-msgstr "óöÜëìá åããñáöÞò %s"
-
-#: genconditions.c:196
-#, fuzzy
-msgid "No input file name."
-msgstr "äåí õðÜñ÷ïõí áñ÷åßá åéóüäïõ"
-
-#: ggc-page.c:1265
-msgid "open /dev/zero"
-msgstr ""
+msgid "%s cannot be used in asm here"
+msgstr "Äåí ìðïñåß íá ôåèåß ç çìåñïìçíßá."
-#: graph.c:420 profile.c:1204 profile.c:1211 toplev.c:1836 toplev.c:5168
-#: f/com.c:14210 java/jcf-parse.c:917 java/jcf-parse.c:1063 java/lex.c:1776
-#: objc/objc-act.c:449
+#: graph.c:403 toplev.c:1481 toplev.c:4408 f/com.c:14202 java/jcf-parse.c:883
+#: java/jcf-parse.c:1030 java/lex.c:1828 objc/objc-act.c:503
#, fuzzy, c-format
-msgid "can't open %s"
+msgid "can't open %s: %m"
msgstr "áäõíáìßá áíïßãìáôïò ôïõ `%s'"
#: haifa-sched.c:196
@@ -6279,72 +6044,81 @@ msgstr "áäõíáìßá áíïßãìáôïò ôïõ `%s'"
msgid "fix_sched_param: unknown param: %s"
msgstr ""
-#: integrate.c:174
+#: integrate.c:166
#, fuzzy
msgid "function cannot be inline"
msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
-#: integrate.c:178
+#: integrate.c:170
msgid "varargs function cannot be inline"
msgstr ""
-#: integrate.c:181
+#: integrate.c:173
msgid "function using alloca cannot be inline"
msgstr ""
-#: integrate.c:184
+#: integrate.c:176
+#, fuzzy
+msgid "function using longjmp cannot be inline"
+msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
+
+#: integrate.c:179
msgid "function using setjmp cannot be inline"
msgstr ""
-#: integrate.c:187
+#: integrate.c:182
msgid "function uses __builtin_eh_return"
msgstr ""
-#: integrate.c:190
+#: integrate.c:185
msgid "function with nested functions cannot be inline"
msgstr ""
-#: integrate.c:194
+#: integrate.c:189
msgid "function with label addresses used in initializers cannot inline"
msgstr ""
-#: integrate.c:201 integrate.c:245
+#: integrate.c:196 integrate.c:240
msgid "function too large to be inline"
msgstr ""
-#: integrate.c:211
+#: integrate.c:206
msgid "no prototype, and parameter address used; cannot be inline"
msgstr ""
-#: integrate.c:218 integrate.c:263
+#: integrate.c:213 integrate.c:258
msgid "inline functions not supported for this return value type"
msgstr ""
-#: integrate.c:223
+#: integrate.c:218
msgid "function with varying-size return value cannot be inline"
msgstr ""
-#: integrate.c:230
+#: integrate.c:225
msgid "function with varying-size parameter cannot be inline"
msgstr ""
-#: integrate.c:233
+#: integrate.c:228
msgid "function with transparent unit parameter cannot be inline"
msgstr ""
-#: integrate.c:252
+#: integrate.c:247
msgid "function with computed jump cannot inline"
msgstr ""
-#: integrate.c:256
+#: integrate.c:251
msgid "function with nonlocal goto cannot be inline"
msgstr ""
-#: integrate.c:270
+#: integrate.c:265
msgid "function with target specific attribute(s) cannot be inlined"
msgstr ""
-#: line-map.c:198
+#: jump.c:1896
+msgid "%Hwill never be executed"
+msgstr ""
+
+#: line-map.c:202
#, c-format
msgid "In file included from %s:%u"
msgstr ""
@@ -6361,69 +6135,164 @@ msgstr ""
#. with all the "from"s lined up.
#. The trailing comma is at the beginning of this message,
#. and the trailing colon is not translated.
-#: line-map.c:216
+#: line-map.c:220
#, c-format
msgid ""
",\n"
" from %s:%u"
msgstr ""
+#. What to print when a switch has no documentation.
+#: opts.c:149
+msgid "This switch lacks documentation"
+msgstr ""
+
+#. Eventually this should become a hard error IMO.
+#: opts.c:318
+#, c-format
+msgid "command line option \"%s\" is valid for %s but not for %s"
+msgstr ""
+
+#: opts.c:406
+#, fuzzy, c-format
+msgid "missing argument to \"%s\""
+msgstr "Ëåßðåé ðáñÜìåôñïò ãéá `%s'"
+
+#: opts.c:416
+#, fuzzy, c-format
+msgid "argument to \"%s\" should be a non-negative integer"
+msgstr "ôï ðñþôï üñéóìá ôçò `%s' ðñÝðåé íá åßíáé `int'"
+
+#: opts.c:463
+#, fuzzy, c-format
+msgid "unrecognized command line option \"%s\""
+msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
+
+#: opts.c:646
+msgid "-Wuninitialized is not supported without -O"
+msgstr ""
+
+# src/request.c:806 src/request.c:912
+#: opts.c:1350
+#, fuzzy, c-format
+msgid "unrecognized register name \"%s\""
+msgstr "Ìç áíáãíùñßóçìï üíïìá åðéöÜíåéáò `%s'"
+
+# src/grep.c:1133
+#: opts.c:1394
+#, fuzzy, c-format
+msgid "unknown tls-model \"%s\""
+msgstr "Üãíùóôç ìÝèïäïò êáôáëüãùí"
+
+#: opts.c:1450
+msgid "-fwritable-strings is deprecated; see documentation for details"
+msgstr ""
+
+#: opts.c:1534
+#, c-format
+msgid "%s: --param arguments should be of the form NAME=VALUE"
+msgstr ""
+
+#: opts.c:1539
+#, fuzzy, c-format
+msgid "invalid --param value `%s'"
+msgstr "Ìç Ýãêõñï äéÜóôçìá ÷ñüíïõ `%s'"
+
+#: opts.c:1635
+msgid "target system does not support debug output"
+msgstr ""
+
+#: opts.c:1642
+#, c-format
+msgid "debug format \"%s\" conflicts with prior selection"
+msgstr ""
+
+# src/request.c:806 src/request.c:912
+#: opts.c:1658
+#, fuzzy, c-format
+msgid "unrecognised debug output level \"%s\""
+msgstr "Ìç áíáãíùñßóçìï üíïìá åðéöÜíåéáò `%s'"
+
+#: opts.c:1660
+#, c-format
+msgid "debug output level %s is too high"
+msgstr ""
+
+#: opts.c:1679
+msgid "The following options are language-independent:\n"
+msgstr ""
+
+#: opts.c:1686
+#, c-format
+msgid ""
+"The %s front end recognizes the following options:\n"
+"\n"
+msgstr ""
+
+#: opts.c:1700
+msgid "The --param option recognizes the following as parameters:\n"
+msgstr ""
+
#. If we didn't find this parameter, issue an error message.
-#: params.c:80
+#: params.c:76
#, fuzzy, c-format
msgid "invalid parameter `%s'"
msgstr "Ç ðáñÜìåôñïò `%s' äåí åßíáé Ýãêõñç."
-#: profile.c:397
-#, c-format
-msgid "Profile does not match flowgraph of function %s (out of date?)"
+#: profile.c:288
+msgid "corrupted profile info: run_max * runs < sum_max"
msgstr ""
-#: profile.c:400
-msgid ".da file corrupted"
+#: profile.c:294
+msgid "corrupted profile info: sum_all is smaller than sum_max"
msgstr ""
-#: profile.c:634
+#: profile.c:336
#, c-format
-msgid "corrupted profile info: prob for %d-%d thought to be %d"
+msgid "corrupted profile info: edge from %i to %i exceeds maximal count"
msgstr ""
-#: profile.c:1226
+#: profile.c:499
#, c-format
-msgid "file %s not found, execution counts assumed to be zero"
+msgid "corrupted profile info: number of iterations for basic block %d thought to be %i"
msgstr ""
-#: protoize.c:542
+#: profile.c:526
+#, c-format
+msgid "corrupted profile info: number of executions for edge %d-%d thought to be %i"
+msgstr ""
+
+#: protoize.c:534
#, fuzzy, c-format
msgid "%s: internal abort\n"
msgstr "Åóùôåñéêü óöÜëìá ôïõ áíáëõôÞ äéåõèýíóåùí"
-#: protoize.c:633
+#: protoize.c:592
#, fuzzy, c-format
msgid "%s: error writing file `%s': %s\n"
msgstr "%s: ÓöÜëìá êáôÜ ôçí åããñáöÞ ôïõ %s\n"
-#: protoize.c:678
+#: protoize.c:636
#, fuzzy, c-format
msgid "%s: usage '%s [ -VqfnkN ] [ -i <istring> ] [ filename ... ]'\n"
msgstr "%s: ç ÷ñÞóç åßíáé %s [ -v ] [ -c äéáêïðÞ ] ïíïìáóßá æþíçò ...\n"
-#: protoize.c:681
+#: protoize.c:639
#, fuzzy, c-format
msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B <dirname> ] [ filename ... ]'\n"
msgstr "%s: ç ÷ñÞóç åßíáé %s [ -v ] [ -c äéáêïðÞ ] ïíïìáóßá æþíçò ...\n"
-#: protoize.c:788
+#: protoize.c:745
#, fuzzy, c-format
msgid "%s: warning: no read access for file `%s'\n"
msgstr "%s: Ðñïåéäïðïßçóç: ç uname áðÝôõ÷å: %s\n"
-#: protoize.c:796
+#: protoize.c:753
#, fuzzy, c-format
msgid "%s: warning: no write access for file `%s'\n"
msgstr "%s: Ðñïåéäïðïßçóç: ç uname áðÝôõ÷å: %s\n"
-#: protoize.c:804
+#: protoize.c:761
#, c-format
msgid "%s: warning: no write access for dir containing `%s'\n"
msgstr ""
@@ -6431,274 +6300,274 @@ msgstr ""
#. Catch cases like /.. where we try to backup to a
#. point above the absolute root of the logical file
#. system.
-#: protoize.c:1222
+#: protoize.c:1148
#, fuzzy, c-format
msgid "%s: invalid file name: %s\n"
msgstr "%s: ìç Ýãêõñï åßäïò áñ÷åßïõ"
-#: protoize.c:1374
+#: protoize.c:1296
#, fuzzy, c-format
msgid "%s: %s: can't get status: %s\n"
msgstr "%s: áäõíáìßá ðñüóâáóçò óôï %s: %s\n"
-#: protoize.c:1395
+#: protoize.c:1317
#, c-format
msgid ""
"\n"
"%s: fatal error: aux info file corrupted at line %d\n"
msgstr ""
-#: protoize.c:1731
+#: protoize.c:1646
#, c-format
msgid "%s:%d: declaration of function `%s' takes different forms\n"
msgstr ""
-#: protoize.c:1989
+#: protoize.c:1901
#, fuzzy, c-format
msgid "%s: compiling `%s'\n"
msgstr "%s: ÓöÜëìá êáôÜ ôçí åããñáöÞ ôïõ %s\n"
# src/request.c:37
-#: protoize.c:2012
+#: protoize.c:1924
#, fuzzy, c-format
msgid "%s: wait: %s\n"
msgstr "%s óå %s"
-#: protoize.c:2017
+#: protoize.c:1929
#, fuzzy, c-format
msgid "%s: subprocess got fatal signal %d\n"
msgstr "%s: Ï ðñïåðåîåñãáóôÞò C áðÝôõ÷å ìå óÞìá %d\n"
-#: protoize.c:2025
+#: protoize.c:1937
#, fuzzy, c-format
msgid "%s: %s exited with status %d\n"
msgstr "%s: Ï ðñïåðåîåñãáóôÞò C áðÝôõ÷å ìå óÞìá %d\n"
-#: protoize.c:2077
+#: protoize.c:1986
#, fuzzy, c-format
msgid "%s: warning: missing SYSCALLS file `%s'\n"
msgstr "%s: Ðñïåéäïðïßçóç: ç uname áðÝôõ÷å: %s\n"
-#: protoize.c:2086 protoize.c:2115
+#: protoize.c:1995 protoize.c:2024
#, fuzzy, c-format
msgid "%s: can't read aux info file `%s': %s\n"
msgstr "%s: áäõíáìßá óôçí áíÜãíùóç %s: %s\n"
-#: protoize.c:2131 protoize.c:2159
+#: protoize.c:2040 protoize.c:2068
#, fuzzy, c-format
msgid "%s: can't get status of aux info file `%s': %s\n"
msgstr "áäõíáìßá ðñïóðÝëáóçò(stat()) áñ÷åßïõ `%s': %s"
-#: protoize.c:2187
+#: protoize.c:2096
#, fuzzy, c-format
msgid "%s: can't open aux info file `%s' for reading: %s\n"
msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäï `%s' ãéá ôçí êáôçãïñßá `%s'"
# src/shred.c:1103
-#: protoize.c:2205
+#: protoize.c:2114
#, fuzzy, c-format
msgid "%s: error reading aux info file `%s': %s\n"
msgstr "%s: óöÜëìá åããñáöÞò óôç èÝóç %s"
-#: protoize.c:2218
+#: protoize.c:2127
#, fuzzy, c-format
msgid "%s: error closing aux info file `%s': %s\n"
msgstr "%s: ÓöÜëìá êáôÜ ôï êëåßóéìï ôïõ %s: %s\n"
-#: protoize.c:2234
+#: protoize.c:2143
#, fuzzy, c-format
msgid "%s: can't delete aux info file `%s': %s\n"
msgstr "%s: Äå ìðïñåß íá äéáãñáöåß ôï %s: %s\n"
-#: protoize.c:2316 protoize.c:4318
+#: protoize.c:2225 protoize.c:4195
#, fuzzy, c-format
msgid "%s: can't delete file `%s': %s\n"
msgstr "%s: Äåí åßíáé äõíáôüí íá äçìéïõñãçèåß %s: %s\n"
-#: protoize.c:2395
+#: protoize.c:2303
#, fuzzy, c-format
msgid "%s: warning: can't rename file `%s' to `%s': %s\n"
msgstr "%s: Ðñïåéäïðïßçóç: ç uname áðÝôõ÷å: %s\n"
-#: protoize.c:2520
+#: protoize.c:2425
#, c-format
msgid "%s: conflicting extern definitions of '%s'\n"
msgstr ""
-#: protoize.c:2524
+#: protoize.c:2429
#, c-format
msgid "%s: declarations of '%s' will not be converted\n"
msgstr ""
-#: protoize.c:2526
+#: protoize.c:2431
#, c-format
msgid "%s: conflict list for '%s' follows:\n"
msgstr ""
-#: protoize.c:2559
+#: protoize.c:2464
#, c-format
msgid "%s: warning: using formals list from %s(%d) for function `%s'\n"
msgstr ""
-#: protoize.c:2599
+#: protoize.c:2504
#, c-format
msgid "%s: %d: `%s' used but missing from SYSCALLS\n"
msgstr ""
-#: protoize.c:2605
+#: protoize.c:2510
#, fuzzy, c-format
msgid "%s: %d: warning: no extern definition for `%s'\n"
msgstr "%s: ðñïåéäïðïßçóç: äå âñÝèçêå áñ÷Þ êåöáëßäáò"
-#: protoize.c:2636
+#: protoize.c:2540
#, c-format
msgid "%s: warning: no static definition for `%s' in file `%s'\n"
msgstr ""
-#: protoize.c:2642
+#: protoize.c:2546
#, c-format
msgid "%s: multiple static defs of `%s' in file `%s'\n"
msgstr ""
-#: protoize.c:2815 protoize.c:2818
+#: protoize.c:2716 protoize.c:2719
#, c-format
msgid "%s: %d: warning: source too confusing\n"
msgstr ""
-#: protoize.c:3024
+#: protoize.c:2915
#, c-format
msgid "%s: %d: warning: varargs function declaration not converted\n"
msgstr ""
-#: protoize.c:3039
+#: protoize.c:2930
#, c-format
msgid "%s: declaration of function `%s' not converted\n"
msgstr ""
-#: protoize.c:3162
+#: protoize.c:3053
#, c-format
msgid "%s: warning: too many parameter lists in declaration of `%s'\n"
msgstr ""
-#: protoize.c:3183
+#: protoize.c:3074
#, fuzzy, c-format
msgid ""
"\n"
"%s: warning: too few parameter lists in declaration of `%s'\n"
msgstr "Ðñïåéäïðïßçóç: Ðïëý ëßãá ïñßóìáôá óôï åóùäïìçìÝíï `%s'"
-#: protoize.c:3281
+#: protoize.c:3170
#, c-format
msgid "%s: %d: warning: found `%s' but expected `%s'\n"
msgstr ""
-#: protoize.c:3459
+#: protoize.c:3345
#, c-format
msgid "%s: local declaration for function `%s' not inserted\n"
msgstr ""
-#: protoize.c:3486
+#: protoize.c:3372
#, c-format
msgid ""
"\n"
"%s: %d: warning: can't add declaration of `%s' into macro call\n"
msgstr ""
-#: protoize.c:3560
+#: protoize.c:3444
#, c-format
msgid "%s: global declarations for file `%s' not inserted\n"
msgstr ""
-#: protoize.c:3651 protoize.c:3681
+#: protoize.c:3533 protoize.c:3563
#, c-format
msgid "%s: definition of function `%s' not converted\n"
msgstr ""
-#: protoize.c:3670
+#: protoize.c:3552
#, c-format
msgid "%s: %d: warning: definition of %s not converted\n"
msgstr ""
-#: protoize.c:4000
+#: protoize.c:3878
#, c-format
msgid "%s: found definition of `%s' at %s(%d)\n"
msgstr ""
#. If we make it here, then we did not know about this
#. function definition.
-#: protoize.c:4016
+#: protoize.c:3894
#, c-format
msgid "%s: %d: warning: `%s' excluded by preprocessing\n"
msgstr ""
-#: protoize.c:4019
+#: protoize.c:3897
#, c-format
msgid "%s: function definition not converted\n"
msgstr ""
-#: protoize.c:4078
+#: protoize.c:3955
#, fuzzy, c-format
msgid "%s: `%s' not converted\n"
msgstr "%s: `%s': äåí âñÝèçêå ôáßñéáóìá"
-#: protoize.c:4086
+#: protoize.c:3963
#, fuzzy, c-format
msgid "%s: would convert file `%s'\n"
msgstr "%s: ç Ýîïäïò èá åðéêáëýøåé ôï %s\n"
-#: protoize.c:4089
+#: protoize.c:3966
#, fuzzy, c-format
msgid "%s: converting file `%s'\n"
msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n"
-#: protoize.c:4099
+#: protoize.c:3976
#, fuzzy, c-format
msgid "%s: can't get status for file `%s': %s\n"
msgstr "áäõíáìßá ðñïóðÝëáóçò(stat()) áñ÷åßïõ `%s': %s"
-#: protoize.c:4141
+#: protoize.c:4018
#, fuzzy, c-format
msgid "%s: can't open file `%s' for reading: %s\n"
msgstr "%s: Äåí åßíáé äõíáôüí íá áíïé÷ôåß ôï %s: %s\n"
-#: protoize.c:4156
+#: protoize.c:4033
#, fuzzy, c-format
msgid ""
"\n"
"%s: error reading input file `%s': %s\n"
msgstr "%s: ÓöÜëìá êáôÜ ôçí áíÜãíùóç ôïõ %s\n"
-#: protoize.c:4190
+#: protoize.c:4067
#, fuzzy, c-format
msgid "%s: can't create/open clean file `%s': %s\n"
msgstr "%s: Äåí åßíáé äõíáôüí íá äçìéïõñãçèåß %s: %s\n"
-#: protoize.c:4295
+#: protoize.c:4172
#, c-format
msgid "%s: warning: file `%s' already saved in `%s'\n"
msgstr ""
-#: protoize.c:4303
+#: protoize.c:4180
#, fuzzy, c-format
msgid "%s: can't link file `%s' to `%s': %s\n"
msgstr "%s: Äåí åßíáé äõíáôüí íá óõíäåèåß ôï %s ìå ôï %s: %s\n"
-#: protoize.c:4333
+#: protoize.c:4210
#, fuzzy, c-format
msgid "%s: can't create/open output file `%s': %s\n"
msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ `%s'"
-#: protoize.c:4366
+#: protoize.c:4243
#, fuzzy, c-format
msgid "%s: can't change mode of file `%s': %s\n"
msgstr "%s: Äåí åßíáé äõíáôüí íá áöáéñåèåß ôï %s: %s\n"
-#: protoize.c:4541
+#: protoize.c:4416
#, fuzzy, c-format
msgid "%s: cannot get working directory: %s\n"
msgstr "%s: äåí åßíáé äõíáôü íá ãñáöôåß ðÜíù óå êáôÜëïãï"
-#: protoize.c:4639
+#: protoize.c:4514
#, fuzzy, c-format
msgid "%s: input file names must have .c suffixes: %s\n"
msgstr "%s: ôï áñ÷åßï åéóüäïõ åßíáé ôï áñ÷åßï åîüäïõ"
@@ -6707,1408 +6576,544 @@ msgstr "%s: ôï áñ÷åßï åéóüäïõ åßíáé ôï áñ÷åßï åîüäïõ"
msgid "Didn't find a coloring.\n"
msgstr ""
-#: reg-stack.c:673
+#: reg-stack.c:665
#, c-format
msgid "output constraint %d must specify a single register"
msgstr ""
-#: reg-stack.c:683
+#: reg-stack.c:675
#, c-format
msgid "output constraint %d cannot be specified together with \"%s\" clobber"
msgstr ""
-#: reg-stack.c:706
+#: reg-stack.c:698
msgid "output regs must be grouped at top of stack"
msgstr ""
-#: reg-stack.c:743
+#: reg-stack.c:735
msgid "implicitly popped regs must be grouped at top of stack"
msgstr ""
-#: reg-stack.c:762
+#: reg-stack.c:754
#, c-format
msgid "output operand %d must use `&' constraint"
msgstr ""
-#: regclass.c:756
+#: regclass.c:743
#, c-format
msgid "can't use '%s' as a %s register"
msgstr ""
-#: regclass.c:771 config/ia64/ia64.c:4304 config/ia64/ia64.c:4311
+#: regclass.c:758 config/ia64/ia64.c:4640 config/ia64/ia64.c:4647
#, fuzzy, c-format
msgid "unknown register name: %s"
msgstr "Üãíùóôïò ÷áñáêôÞñáò `%s'"
-#: regclass.c:782
+#: regclass.c:768
msgid "global register variable follows a function definition"
msgstr ""
-#: regclass.c:786
+#: regclass.c:772
msgid "register used for two global register variables"
msgstr ""
-#: regclass.c:791
+#: regclass.c:777
msgid "call-clobbered register used for global register variable"
msgstr ""
-#: regrename.c:1899
+#: regrename.c:1846
#, c-format
msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)"
msgstr ""
-#: regrename.c:1911
+#: regrename.c:1858
#, c-format
msgid "validate_value_data: Loop in regno chain (%u)"
msgstr ""
-#: regrename.c:1914
+#: regrename.c:1861
#, c-format
msgid "validate_value_data: [%u] Bad oldest_regno (%u)"
msgstr ""
-#: regrename.c:1926
+#: regrename.c:1873
#, c-format
msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
msgstr ""
-#: reload.c:1229
+#: reload.c:1254
msgid "cannot reload integer constant operand in `asm'"
msgstr ""
-#: reload.c:1251
+#: reload.c:1276
msgid "impossible register constraint in `asm'"
msgstr ""
-#: reload.c:3461
+#: reload.c:3489
msgid "`&' constraint used with no register class"
msgstr ""
-#: reload.c:3629
+#: reload.c:3657
#, fuzzy
msgid "unable to generate reloads for:"
msgstr "Áäýíáôç ç äçìéïõñãßá äéåñãáóßáò óôïí åîõðçñåôçôÞ"
-#: reload.c:3630 reload.c:3844
+#: reload.c:3658 reload.c:3872
msgid "inconsistent operand constraints in an `asm'"
msgstr ""
-#: reload1.c:1250
+#: reload1.c:1212
msgid "frame size too large for reliable stack checking"
msgstr ""
-#: reload1.c:1253
+#: reload1.c:1215
msgid "try reducing the number of local variables"
msgstr ""
-#: reload1.c:1909
+#: reload1.c:1868
#, c-format
msgid "can't find a register in class `%s' while reloading `asm'"
msgstr ""
-#: reload1.c:1913
+#: reload1.c:1872
#, c-format
msgid "unable to find a register to spill in class `%s'"
msgstr ""
-#: reload1.c:1915
+#: reload1.c:1874
#, fuzzy
msgid "this is the insn:"
msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò"
-#: reload1.c:3938
+#: reload1.c:3871
msgid "`asm' operand requires impossible reload"
msgstr ""
#. It's the compiler's fault.
-#: reload1.c:5052
+#: reload1.c:4963
#, fuzzy
msgid "could not find a spill register"
msgstr "áäõíáìßá åýñåóçò âñü÷ïõ"
-#: reload1.c:5057
+#: reload1.c:4968
msgid "`asm' operand constraint incompatible with operand size"
msgstr ""
#. It's the compiler's fault.
-#: reload1.c:6679
+#: reload1.c:6590
msgid "VOIDmode on an output"
msgstr ""
-#: reload1.c:6680
+#: reload1.c:6591
msgid "output operand is constant in `asm'"
msgstr ""
-#: rtl-error.c:140
+#: rtl-error.c:124
#, fuzzy
msgid "unrecognizable insn:"
msgstr "Ìç áíáãíùñßóéìç ìåôáâëçôÞ `%s'"
-#: rtl-error.c:142
+#: rtl-error.c:126
msgid "insn does not satisfy its constraints:"
msgstr ""
-#: rtl.c:535
+#: rtl.c:477
#, c-format
msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d"
msgstr ""
-#: rtl.c:550
+#: rtl.c:487
#, c-format
msgid "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr ""
-#: rtl.c:566
+#: rtl.c:497
#, c-format
msgid "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr ""
-#: rtl.c:579
+#: rtl.c:506
#, c-format
msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d"
msgstr ""
-#: rtl.c:593
+#: rtl.c:516
#, c-format
msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d"
msgstr ""
-#: rtl.c:608
+#: rtl.c:527
#, c-format
msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
msgstr ""
-#: rtl.c:623
+#: rtl.c:538
#, c-format
msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d"
msgstr ""
-#: stmt.c:766
+#: stmt.c:750
#, c-format
msgid "jump to `%s' invalidly jumps into binding contour"
msgstr ""
-#: stmt.c:1002 stmt.c:3766
-#, c-format
-msgid "label `%s' used before containing binding contour"
+#: stmt.c:977 stmt.c:3793
+msgid "%Jlabel '%D' used before containing binding contour"
msgstr ""
-#: stmt.c:1190
+#: stmt.c:1156
msgid "output operand constraint lacks `='"
msgstr ""
-#: stmt.c:1205
+#: stmt.c:1171
#, c-format
msgid "output constraint `%c' for operand %d is not at the beginning"
msgstr ""
-#: stmt.c:1227
+#: stmt.c:1193
msgid "operand constraint contains incorrectly positioned '+' or '='"
msgstr ""
-#: stmt.c:1233 stmt.c:1337
+#: stmt.c:1199 stmt.c:1301
#, c-format
msgid "`%%' constraint used with last operand"
msgstr ""
-#: stmt.c:1252
+#: stmt.c:1218
msgid "matching constraint not valid in output operand"
msgstr ""
-#: stmt.c:1328
+#: stmt.c:1260
+#, fuzzy
+msgid "read-write constraint does not allow a register"
+msgstr "ìç Ýãêõñïò óôáèåñüò ÷áñáêôÞñáò óôï áëöáñéèìéôéêü"
+
+#: stmt.c:1292
#, c-format
msgid "input operand constraint contains `%c'"
msgstr ""
-#: stmt.c:1368
+#: stmt.c:1334
msgid "matching constraint references invalid operand number"
msgstr ""
-#: stmt.c:1400
+#: stmt.c:1372
#, fuzzy, c-format
msgid "invalid punctuation `%c' in constraint"
msgstr "ìç Ýãêõñç ìÝôñçóç åðáíÜëçøçò `%s' óôç êáôáóêåõÞ [c*n]"
-#: stmt.c:1450
+#: stmt.c:1396
+#, fuzzy
+msgid "matching constraint does not allow a register"
+msgstr "ó÷åôéêÞ èÝóç áñ÷åßïõ åßíáé åêôüò ïñßùí"
+
+#: stmt.c:1424
#, c-format
msgid "asm-specifier for variable `%s' conflicts with asm clobber list"
msgstr ""
-#: stmt.c:1540
+#: stmt.c:1514
#, fuzzy, c-format
msgid "unknown register name `%s' in `asm'"
msgstr "Üãíùóôïò ÷áñáêôÞñáò óôï ðåäßï `%s' ôçò êáôçãïñßáò `%s'"
-#: stmt.c:1588
+#: stmt.c:1522
+#, fuzzy, c-format
+msgid "PIC register `%s' clobbered in `asm'"
+msgstr "Üãíùóôïò ÷áñáêôÞñáò óôï ðåäßï `%s' ôçò êáôçãïñßáò `%s'"
+
+#: stmt.c:1571
#, c-format
msgid "more than %d operands in `asm'"
msgstr ""
-#: stmt.c:1650
+#: stmt.c:1633
#, c-format
msgid "output number %d not directly addressable"
msgstr ""
-#: stmt.c:1728
+#: stmt.c:1711
#, c-format
msgid "asm operand %d probably doesn't match constraints"
msgstr ""
-#: stmt.c:1738
+#: stmt.c:1721
#, c-format
msgid "use of memory input without lvalue in asm operand %d is deprecated"
msgstr ""
-#: stmt.c:1889
+#: stmt.c:1875
msgid "asm clobber conflict with output operand"
msgstr ""
-#: stmt.c:1894
+#: stmt.c:1880
msgid "asm clobber conflict with input operand"
msgstr ""
-#: stmt.c:1929
+#: stmt.c:1914
#, fuzzy
msgid "too many alternatives in `asm'"
msgstr "Õðåñâïëéêá ðïëëÜ áíïéêôÜ áñ÷åßá óôï óýóôçìá"
-#: stmt.c:1941
+#: stmt.c:1926
msgid "operand constraints for `asm' differ in number of alternatives"
msgstr ""
-#: stmt.c:1994
+#: stmt.c:1978
#, fuzzy, c-format
msgid "duplicate asm operand name '%s'"
msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
-#: stmt.c:2081
+#: stmt.c:2076
msgid "missing close brace for named operand"
msgstr ""
-#: stmt.c:2109
+#: stmt.c:2104
#, fuzzy, c-format
msgid "undefined named operand '%s'"
msgstr "Ìç ïñéóìÝíï üíïìá %s"
-#: stmt.c:3703
-#, c-format
-msgid "unused variable `%s'"
+#: stmt.c:2161
+msgid "%Hstatement with no effect"
+msgstr ""
+
+#: stmt.c:2317
+msgid "%Hvalue computed is not used"
+msgstr ""
+
+#: stmt.c:3733
+#, fuzzy
+msgid "%Junused variable '%D'"
msgstr "á÷ñçóéìïðïßçôç ìåôáâëçôÞ `%s'"
-#: stmt.c:5189
+#: stmt.c:4508
+msgid "%Hunreachable code at beginning of %s"
+msgstr ""
+
+#: stmt.c:5136
#, c-format
msgid "enumeration value `%s' not handled in switch"
msgstr ""
-#: stmt.c:5214 stmt.c:5234
+#: stmt.c:5161 stmt.c:5181
#, c-format
msgid "case value `%ld' not in enumerated type"
msgstr ""
-#: stmt.c:5217 stmt.c:5237
+#: stmt.c:5164 stmt.c:5184
#, c-format
msgid "case value `%ld' not in enumerated type `%s'"
msgstr ""
-#: stmt.c:5310
+#: stmt.c:5401
#, fuzzy
msgid "switch missing default case"
msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò"
-#: stor-layout.c:178
+#: stor-layout.c:183
msgid "type size can't be explicitly evaluated"
msgstr ""
-#: stor-layout.c:180
+#: stor-layout.c:185
msgid "variable-size type declared outside of any function"
msgstr ""
-#: stor-layout.c:487
-#, c-format
-msgid "size of `%s' is %d bytes"
-msgstr ""
+#: stor-layout.c:515
+#, fuzzy
+msgid "%Jsize of '%D' is %d bytes"
+msgstr "%s: ïé ôéìÝò ôïõ ðåäßïõ `%s' äåí ðñÝðåé íá åßíáé ìåãáëýôåñåò áðü %d"
-#: stor-layout.c:489
-#, fuzzy, c-format
-msgid "size of `%s' is larger than %d bytes"
+#: stor-layout.c:517
+#, fuzzy
+msgid "%Jsize of '%D' is larger than %d bytes"
msgstr "%s: ïé ôéìÝò ôïõ ðåäßïõ `%s' äåí ðñÝðåé íá åßíáé ìåãáëýôåñåò áðü %d"
-#: stor-layout.c:909 stor-layout.c:1325
-#, c-format
-msgid "packed attribute causes inefficient alignment for `%s'"
+#: stor-layout.c:883
+msgid "%Jpacked attribute causes inefficient alignment for '%D'"
msgstr ""
-#: stor-layout.c:911 stor-layout.c:1327
-#, c-format
-msgid "packed attribute is unnecessary for `%s'"
+#: stor-layout.c:886
+#, fuzzy
+msgid "%Jpacked attribute is unnecessary for '%D'"
+msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
+
+#: stor-layout.c:902
+msgid "%Jpadding struct to align '%D'"
msgstr ""
-#: stor-layout.c:926
+#: stor-layout.c:1245
+msgid "padding struct size to alignment boundary"
+msgstr ""
+
+#: stor-layout.c:1275
#, c-format
-msgid "padding struct to align `%s'"
+msgid "packed attribute causes inefficient alignment for `%s'"
msgstr ""
-#: stor-layout.c:1289
-msgid "padding struct size to alignment boundary"
+#: stor-layout.c:1277
+#, c-format
+msgid "packed attribute is unnecessary for `%s'"
msgstr ""
-#: stor-layout.c:1332
+#: stor-layout.c:1282
msgid "packed attribute causes inefficient alignment"
msgstr ""
-#: stor-layout.c:1334
+#: stor-layout.c:1284
msgid "packed attribute is unnecessary"
msgstr ""
-#: timevar.c:322
+#: targhooks.c:154
+#, fuzzy
+msgid "__builtin_saveregs not supported by this target"
+msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
+
+#: timevar.c:314
#, c-format
msgid "cannot timevar_pop '%s' when top of timevars stack is '%s'"
msgstr ""
-#: timevar.c:453
+#: timevar.c:440
msgid ""
"\n"
"Execution times (seconds)\n"
msgstr ""
#. Print total time.
-#: timevar.c:503
+#: timevar.c:490
msgid " TOTAL :"
msgstr " ÓÕÍÏËÉÊÁ :"
-#: timevar.c:539
+#: timevar.c:513
#, c-format
msgid "time in %s: %ld.%06ld (%ld%%)\n"
msgstr ""
-#: tlink.c:399
+#: tlink.c:377
#, fuzzy, c-format
msgid "collect: reading %s\n"
msgstr "óöÜëìá áíÜãíùóçò %s"
-#: tlink.c:502
+#: tlink.c:478
#, c-format
msgid "collect: recompiling %s\n"
msgstr ""
-#: tlink.c:674
+#: tlink.c:654
#, c-format
msgid "collect: tweaking %s in %s\n"
msgstr ""
-#: tlink.c:721
+#: tlink.c:700
+#, c-format
msgid "collect: relinking\n"
msgstr ""
-#: tlink.c:730
+#: tlink.c:709
#, c-format
msgid "ld returned %d exit status"
msgstr "ç ld åðÝóôñåøå êáôÜóôáóç åîüäïõ %d"
-#: toplev.c:920
-msgid "Generate debugging info in default format"
-msgstr ""
-
-#: toplev.c:921
-msgid "Generate debugging info in default extended format"
-msgstr ""
-
-#: toplev.c:923
-msgid "Generate STABS format debug info"
-msgstr ""
-
-#: toplev.c:924
-msgid "Generate extended STABS format debug info"
-msgstr ""
-
-#: toplev.c:927
-msgid "Generate DWARF-1 format debug info"
-msgstr ""
-
-#: toplev.c:929
-msgid "Generate extended DWARF-1 format debug info"
-msgstr ""
-
-#: toplev.c:932
-msgid "Generate DWARF-2 debug info"
-msgstr ""
-
-#: toplev.c:935
-msgid "Generate XCOFF format debug info"
-msgstr ""
-
-#: toplev.c:936
-msgid "Generate extended XCOFF format debug info"
-msgstr ""
-
-#: toplev.c:939
-msgid "Generate COFF format debug info"
-msgstr ""
-
-#: toplev.c:942
-msgid "Generate VMS format debug info"
-msgstr ""
-
-#: toplev.c:981
-msgid "Perform DWARF2 duplicate elimination"
-msgstr ""
-
-#: toplev.c:983
-msgid "Do not store floats in registers"
-msgstr ""
-
-#: toplev.c:985
-msgid "Consider all mem refs through pointers as volatile"
-msgstr ""
-
-#: toplev.c:987
-msgid "Consider all mem refs to global data to be volatile"
-msgstr ""
-
-#: toplev.c:989
-msgid "Consider all mem refs to static data to be volatile"
-msgstr ""
-
-#: toplev.c:991
-msgid "Defer popping functions args from stack until later"
-msgstr ""
-
-#: toplev.c:993
-msgid "When possible do not generate stack frames"
-msgstr ""
-
-#: toplev.c:995
-msgid "Optimize sibling and tail recursive calls"
-msgstr ""
-
-#: toplev.c:997
-msgid "Perform superblock formation via tail duplication"
-msgstr ""
-
-#: toplev.c:999
-msgid "When running CSE, follow jumps to their targets"
-msgstr ""
-
-#: toplev.c:1001
-msgid "When running CSE, follow conditional jumps"
-msgstr ""
-
-#: toplev.c:1003
-msgid "Perform a number of minor, expensive optimizations"
-msgstr ""
-
-#: toplev.c:1005
-msgid "Perform jump threading optimizations"
-msgstr ""
-
-#: toplev.c:1007
-msgid "Perform strength reduction optimizations"
-msgstr ""
-
-#: toplev.c:1009
-msgid "Perform loop unrolling when iteration count is known"
-msgstr ""
-
-#: toplev.c:1011
-msgid "Perform loop unrolling for all loops"
-msgstr ""
-
-#: toplev.c:1013
-msgid "Generate prefetch instructions, if available, for arrays in loops"
-msgstr ""
-
-#: toplev.c:1015
-msgid "Force all loop invariant computations out of loops"
-msgstr ""
-
-#: toplev.c:1017
-msgid "Strength reduce all loop general induction variables"
-msgstr ""
-
-#: toplev.c:1019
-msgid "Store strings in writable data section"
-msgstr ""
-
-#: toplev.c:1021
-msgid "Enable machine specific peephole optimizations"
-msgstr ""
-
-#: toplev.c:1023
-msgid "Copy memory operands into registers before using"
-msgstr ""
-
-#: toplev.c:1025
-msgid "Copy memory address constants into regs before using"
-msgstr ""
-
-#: toplev.c:1027
-msgid "Allow function addresses to be held in registers"
-msgstr ""
-
-#: toplev.c:1029
-msgid "Integrate simple functions into their callers"
-msgstr ""
-
-#: toplev.c:1031
-msgid "Generate code for funcs even if they are fully inlined"
-msgstr ""
-
-#: toplev.c:1033
-msgid "Pay attention to the 'inline' keyword"
-msgstr ""
-
-#: toplev.c:1035
-msgid "Emit static const variables even if they are not used"
-msgstr ""
-
-#: toplev.c:1037
-msgid "Check for syntax errors, then stop"
-msgstr ""
-
-#: toplev.c:1039
-msgid "Mark data as shared rather than private"
-msgstr ""
-
-#: toplev.c:1041
-msgid "Enable saving registers around function calls"
-msgstr ""
-
-#: toplev.c:1043
-msgid "Return 'short' aggregates in memory, not registers"
-msgstr ""
-
-#: toplev.c:1045
-msgid "Return 'short' aggregates in registers"
-msgstr ""
-
-#: toplev.c:1047
-msgid "Attempt to fill delay slots of branch instructions"
-msgstr ""
-
-#: toplev.c:1049
-msgid "Perform the global common subexpression elimination"
-msgstr ""
-
-#: toplev.c:1051
-msgid "Perform enhanced load motion during global subexpression elimination"
-msgstr ""
-
-#: toplev.c:1053
-msgid "Perform store motion after global subexpression elimination"
-msgstr ""
-
-#: toplev.c:1055
-msgid "Perform the loop optimizations"
-msgstr ""
-
-#: toplev.c:1057
-msgid "Perform cross-jumping optimization"
-msgstr ""
-
-#: toplev.c:1059
-msgid "Perform conversion of conditional jumps to branchless equivalents"
-msgstr ""
-
-#: toplev.c:1061
-msgid "Perform conversion of conditional jumps to conditional execution"
-msgstr ""
-
-#: toplev.c:1063
-msgid "Run CSE pass after loop optimizations"
-msgstr ""
-
-#: toplev.c:1065
-msgid "Run the loop optimizer twice"
-msgstr ""
-
-#: toplev.c:1067
-msgid "Delete useless null pointer checks"
-msgstr ""
-
-#: toplev.c:1069
-msgid "Reschedule instructions before register allocation"
-msgstr ""
-
-#: toplev.c:1071
-msgid "Reschedule instructions after register allocation"
-msgstr ""
-
-#: toplev.c:1073
-msgid "Enable scheduling across basic blocks"
-msgstr ""
-
-#: toplev.c:1075
-msgid "Allow speculative motion of non-loads"
-msgstr ""
-
-#: toplev.c:1077
-msgid "Allow speculative motion of some loads"
-msgstr ""
-
-#: toplev.c:1079
-msgid "Allow speculative motion of more loads"
-msgstr ""
-
-#: toplev.c:1081
-msgid "Replace add,compare,branch with branch on count reg"
-msgstr ""
-
-#: toplev.c:1083
-msgid "Generate position independent code, if possible"
-msgstr ""
-
-#: toplev.c:1086
-msgid "Enable exception handling"
-msgstr ""
-
-#: toplev.c:1088
-msgid "Just generate unwind tables for exception handling"
-msgstr ""
-
-#: toplev.c:1090
-msgid "Generate unwind tables exact at each instruction boundary"
-msgstr ""
-
-#: toplev.c:1092
-msgid "Support synchronous non-call exceptions"
-msgstr ""
-
-#: toplev.c:1094
-msgid "Insert arc based program profiling code"
-msgstr ""
-
-#: toplev.c:1096
-msgid "Create data files needed by gcov"
-msgstr ""
-
-#: toplev.c:1098
-msgid "Use profiling information for branch probabilities"
-msgstr ""
-
-#: toplev.c:1100
-msgid "Enable basic program profiling code"
-msgstr ""
-
-#: toplev.c:1102
-msgid "Reorder basic blocks to improve code placement"
-msgstr ""
-
-#: toplev.c:1104
-msgid "Reorder functions to improve code placement"
-msgstr ""
-
-#: toplev.c:1106
-msgid "Do the register renaming optimization pass"
-msgstr ""
-
-#: toplev.c:1108
-msgid "Do the register copy-propagation optimization pass"
-msgstr ""
-
-#: toplev.c:1110
-msgid "Do not put uninitialized globals in the common section"
-msgstr ""
-
-#: toplev.c:1112
-msgid "Do not generate .size directives"
-msgstr ""
-
-#: toplev.c:1114
-msgid "place each function into its own section"
-msgstr ""
-
-#: toplev.c:1116
-msgid "place data items into their own section"
-msgstr ""
-
-#: toplev.c:1118
-msgid "Add extra commentary to assembler output"
-msgstr ""
-
-#: toplev.c:1120
-msgid "Output GNU ld formatted global initializers"
-msgstr ""
-
-#: toplev.c:1122
-msgid "Enables a register move optimization"
-msgstr ""
-
-#: toplev.c:1124
-msgid "Do the full regmove optimization pass"
-msgstr ""
-
-#: toplev.c:1126
-msgid "Pack structure members together without holes"
-msgstr ""
-
-#: toplev.c:1128
-msgid "Insert stack checking code into the program"
-msgstr ""
-
-#: toplev.c:1130
-msgid "Specify that arguments may alias each other & globals"
-msgstr ""
-
-#: toplev.c:1132
-msgid "Assume arguments may alias globals but not each other"
-msgstr ""
-
-#: toplev.c:1134
-msgid "Assume arguments do not alias each other or globals"
-msgstr ""
-
-#: toplev.c:1136
-msgid "Assume strict aliasing rules apply"
-msgstr ""
-
-#: toplev.c:1138
-msgid "Align the start of loops"
-msgstr ""
-
-#: toplev.c:1140
-msgid "Align labels which are only reached by jumping"
-msgstr ""
-
-#: toplev.c:1142
-msgid "Align all labels"
-msgstr ""
-
-#: toplev.c:1144
-msgid "Align the start of functions"
-msgstr ""
-
-#: toplev.c:1146
-msgid "Attempt to merge identical constants across compilation units"
-msgstr ""
-
-#: toplev.c:1148
-msgid "Attempt to merge identical constants and constant variables"
-msgstr ""
-
-#: toplev.c:1150
-msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
-msgstr ""
-
-#: toplev.c:1152
-msgid "Instrument function entry/exit with profiling calls"
-msgstr ""
-
-#: toplev.c:1154
-msgid "Put zero initialized data in the bss section"
-msgstr ""
-
-#: toplev.c:1156
-msgid "Enable SSA optimizations"
-msgstr ""
-
-#: toplev.c:1158
-msgid "Enable SSA conditional constant propagation"
-msgstr ""
-
-#: toplev.c:1160
-msgid "Enable aggressive SSA dead code elimination"
-msgstr ""
-
-#: toplev.c:1162
-msgid "External symbols have a leading underscore"
-msgstr ""
-
-#: toplev.c:1164
-msgid "Process #ident directives"
-msgstr ""
-
-#: toplev.c:1166
-msgid "Enables an rtl peephole pass run before sched2"
-msgstr ""
-
-#: toplev.c:1168
-msgid "Assume no NaNs or +-Infs are generated"
-msgstr ""
-
-#: toplev.c:1170
-msgid "Enables guessing of branch probabilities"
-msgstr ""
-
-#: toplev.c:1172
-msgid "Set errno after built-in math functions"
-msgstr ""
-
-#: toplev.c:1174
-#, fuzzy
-msgid "Floating-point operations can trap"
-msgstr "Åîáßñåóç êéíçôÞò õðïäéáóôïëÞò"
-
-#: toplev.c:1176
-msgid "Allow math optimizations that may violate IEEE or ANSI standards"
-msgstr ""
-
-#: toplev.c:1178
-msgid "Disable optimizations observable by IEEE signaling NaNs"
-msgstr ""
-
-#: toplev.c:1180
-#, fuzzy
-msgid "Generate code to check bounds before indexing arrays"
-msgstr "×ñÞóç îå÷ùñéóôÞò ëáíèÜíïõóáò ìíÞìçò ãéá êÜèå ÷ñÞóôç"
-
-#: toplev.c:1182
-msgid "Convert floating point constant to single precision constant"
-msgstr ""
-
-#: toplev.c:1184
-msgid "Report time taken by each compiler pass at end of run"
-msgstr ""
-
-#: toplev.c:1186
-msgid "Report on permanent memory allocation at end of run"
-msgstr ""
-
-#: toplev.c:1188
-msgid "Trap for signed overflow in addition / subtraction / multiplication"
-msgstr ""
-
-#: toplev.c:1190
-#, fuzzy
-msgid "Use graph coloring register allocation."
-msgstr "ìç ôåñìáôéæüìåíï üíïìá âÜñïõò"
-
-#: toplev.c:1207
-msgid "Compile just for ISO C90"
-msgstr ""
-
-#: toplev.c:1209
-msgid "Determine language standard"
-msgstr ""
-
-#: toplev.c:1213
-msgid "Make bit-fields by unsigned by default"
-msgstr ""
-
-#: toplev.c:1217
-msgid "Make 'char' be signed by default"
-msgstr ""
-
-#: toplev.c:1219
-msgid "Make 'char' be unsigned by default"
-msgstr ""
-
-#: toplev.c:1225
-msgid "Do not recognize the 'asm' keyword"
-msgstr ""
-
-#: toplev.c:1228
-msgid "Do not recognize any built in functions"
-msgstr ""
-
-#: toplev.c:1230
-msgid "Assume normal C execution environment"
-msgstr ""
-
-#: toplev.c:1233
-msgid "Assume that standard libraries & main might not exist"
-msgstr ""
-
-#: toplev.c:1236
-msgid "Allow different types as args of ? operator"
-msgstr ""
-
-#: toplev.c:1239
-msgid "Allow the use of $ inside identifiers"
-msgstr ""
-
-#: toplev.c:1244
-msgid "Use the same size for double as for float"
-msgstr ""
-
-#: toplev.c:1247
-msgid "Use the smallest fitting integer to hold enums"
-msgstr ""
-
-#: toplev.c:1250
-msgid "Override the underlying type for wchar_t to `unsigned short'"
-msgstr ""
-
-#: toplev.c:1254
-msgid "Enable most warning messages"
-msgstr ""
-
-#: toplev.c:1256
-msgid "Warn about casting functions to incompatible types"
-msgstr ""
-
-#: toplev.c:1259
-msgid "Warn about functions which might be candidates for format attributes"
-msgstr ""
-
-#: toplev.c:1262
-msgid "Warn about casts which discard qualifiers"
-msgstr ""
-
-#: toplev.c:1265
-msgid "Warn about subscripts whose type is 'char'"
-msgstr ""
-
-#: toplev.c:1268 toplev.c:1271
-msgid "Warn if nested comments are detected"
-msgstr ""
-
-#: toplev.c:1274
-msgid "Warn about possibly confusing type conversions"
-msgstr ""
-
-#: toplev.c:1278
-msgid "Do not warn about compile-time integer division by zero"
-msgstr ""
-
-#: toplev.c:1280
-msgid "Warn about testing equality of floating point numbers"
-msgstr ""
-
-#: toplev.c:1283
-msgid "Warn about printf/scanf/strftime/strfmon format anomalies"
-msgstr ""
-
-#: toplev.c:1287
-msgid "Don't warn about too many arguments to format functions"
-msgstr ""
-
-#: toplev.c:1289
-msgid "Warn about non-string-literal format strings"
-msgstr ""
-
-#: toplev.c:1292
-msgid "Warn about possible security problems with format functions"
-msgstr ""
-
-#: toplev.c:1296
-msgid "Don't warn about strftime formats yielding 2 digit years"
-msgstr ""
-
-#: toplev.c:1298
-msgid "Warn about implicit function declarations"
-msgstr ""
-
-#: toplev.c:1302
-msgid "Warn when a declaration does not specify a type"
-msgstr ""
-
-#: toplev.c:1307
-msgid "Warn about the use of the #import directive"
-msgstr ""
-
-#: toplev.c:1311
-msgid "Do not warn about using 'long long' when -pedantic"
-msgstr ""
-
-#: toplev.c:1313
-msgid "Warn about suspicious declarations of main"
-msgstr ""
-
-#: toplev.c:1316
-msgid "Warn about possibly missing braces around initializers"
-msgstr ""
-
-#: toplev.c:1319
-msgid "Warn about global funcs without previous declarations"
-msgstr ""
-
-#: toplev.c:1322
-msgid "Warn about global funcs without prototypes"
-msgstr ""
-
-#: toplev.c:1325
-msgid "Warn about use of multicharacter literals"
-msgstr ""
-
-#: toplev.c:1328
-msgid "Warn about externs not at file scope level"
-msgstr ""
-
-#: toplev.c:1331
-msgid "Warn about possible missing parentheses"
-msgstr ""
-
-#: toplev.c:1334
-msgid "Warn about function pointer arithmetic"
-msgstr ""
-
-#: toplev.c:1337
-msgid "Warn about multiple declarations of the same object"
-msgstr ""
-
-#: toplev.c:1340
-#, fuzzy
-msgid "Warn whenever a function's return-type defaults to int"
-msgstr "ï åðéóôñåöüìåíïò ôýðïò ðñïêáèïñßæåôáé óå `int'"
-
-#: toplev.c:1343
-msgid "Warn about possible violations of sequence point rules"
-msgstr ""
-
-#: toplev.c:1346
-msgid "Warn about signed/unsigned comparisons"
-msgstr ""
-
-#: toplev.c:1349
-msgid "Warn about non-prototyped function decls"
-msgstr ""
-
-#: toplev.c:1352
-msgid "Warn about constructs whose meanings change in ISO C"
-msgstr ""
-
-#: toplev.c:1355
-msgid "Warn when trigraphs are encountered"
-msgstr ""
-
-#: toplev.c:1360
-msgid "Warn about unrecognized pragmas"
-msgstr ""
-
-#: toplev.c:1363
-msgid "Mark strings as 'const char *'"
-msgstr ""
-
-#: toplev.c:1508
-msgid "Warn when a function is unused"
-msgstr ""
-
-#: toplev.c:1510
-msgid "Warn when a label is unused"
-msgstr ""
-
-#: toplev.c:1512
-msgid "Warn when a function parameter is unused"
-msgstr ""
-
-#: toplev.c:1514
-msgid "Warn when a variable is unused"
-msgstr ""
-
-#: toplev.c:1516
-msgid "Warn when an expression value is unused"
-msgstr ""
-
-#: toplev.c:1518
-#, fuzzy
-msgid "Do not suppress warnings from system headers"
-msgstr "Áðïóéþðçóç ðñïçäïðïéÞóåùí êáé ìçíõìÜôùí ðëçñïöüñçóçò"
-
-#: toplev.c:1520
-msgid "Treat all warnings as errors"
-msgstr ""
-
-#: toplev.c:1522
-msgid "Warn when one local variable shadows another"
-msgstr ""
-
-#: toplev.c:1524
-msgid "Warn about enumerated switches, with no default, missing a case"
-msgstr ""
-
-#: toplev.c:1526
-msgid "Warn about enumerated switches missing a default case"
-msgstr ""
-
-#: toplev.c:1528
-msgid "Warn about all enumerated switches missing a specific case"
-msgstr ""
-
-#: toplev.c:1530
-msgid "Warn about returning structures, unions or arrays"
-msgstr ""
-
-#: toplev.c:1532
-msgid "Warn about pointer casts which increase alignment"
-msgstr ""
-
-#: toplev.c:1534
-msgid "Warn about code that will never be executed"
-msgstr ""
-
-#: toplev.c:1536
-msgid "Warn about uninitialized automatic variables"
-msgstr ""
-
-#: toplev.c:1538
-msgid "Warn when an inlined function cannot be inlined"
-msgstr ""
-
-#: toplev.c:1540
-msgid "Warn when the packed attribute has no effect on struct layout"
-msgstr ""
-
-#: toplev.c:1542
-msgid "Warn when padding is required to align struct members"
-msgstr ""
-
-#: toplev.c:1544
-msgid "Warn when an optimization pass is disabled"
-msgstr ""
-
-#: toplev.c:1546
-msgid "Warn about uses of __attribute__((deprecated)) declarations"
-msgstr ""
-
-#: toplev.c:1548
-msgid "Warn about functions which might be candidates for attribute noreturn"
-msgstr ""
-
-#: toplev.c:1550
-msgid "Warn about code which might break the strict aliasing rules"
-msgstr ""
-
-#: toplev.c:1627 toplev.c:4548 config/rs6000/rs6000.c:680
+#: toplev.c:1226
#, c-format
-msgid "invalid option `%s'"
-msgstr "ìç Ýãêõñç åðéëïãÞ `%s'"
+msgid "%s "
+msgstr "%s "
-#: toplev.c:2031
+#: toplev.c:1228
#, c-format
-msgid "`%s' used but never defined"
-msgstr ""
+msgid " %s"
+msgstr " %s"
-#: toplev.c:2034
-#, c-format
-msgid "`%s' declared `static' but never defined"
-msgstr ""
+#: toplev.c:1293
+#, fuzzy, c-format
+msgid "invalid option argument `%s'"
+msgstr "ìç Ýãêõñç åðéëïãÞ `%s'"
-#: toplev.c:2057
+#: toplev.c:1356
#, c-format
-msgid "`%s' defined but not used"
+msgid "getting core file size maximum limit: %m"
msgstr ""
-#: toplev.c:2280
+#: toplev.c:1359
#, c-format
-msgid "invalid register name `%s' for register variable"
-msgstr ""
-
-#: toplev.c:3697
-msgid " -ffixed-<register> Mark <register> as being unavailable to the compiler\n"
-msgstr ""
-
-#: toplev.c:3698
-msgid " -fcall-used-<register> Mark <register> as being corrupted by function calls\n"
+msgid "setting core file size limit to maximum: %m"
msgstr ""
-#: toplev.c:3699
-msgid " -fcall-saved-<register> Mark <register> as being preserved across functions\n"
+#: toplev.c:1678
+msgid "%J'%F' used but never defined"
msgstr ""
-#: toplev.c:3700
-msgid " -finline-limit=<number> Limits the size of inlined functions to <number>\n"
+#: toplev.c:1680
+msgid "%J'%F' declared `static' but never defined"
msgstr ""
-#: toplev.c:3701
-msgid " -fmessage-length=<number> Limits diagnostics messages lengths to <number> characters per line. 0 suppresses line-wrapping\n"
+#: toplev.c:1705
+msgid "%J'%D' defined but not used"
msgstr ""
-#: toplev.c:3702
-msgid " -fdiagnostics-show-location=[once | every-line] Indicates how often source location information should be emitted, as prefix, at the beginning of diagnostics when line-wrapping\n"
-msgstr ""
-
-#: toplev.c:3703
-msgid " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indicates the default thread-local storage code generation model\n"
-msgstr ""
-
-#: toplev.c:3704
-msgid " -fstack-limit-register=<register> Trap if the stack goes past <register>\n"
-msgstr ""
-
-#: toplev.c:3705
-msgid " -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>\n"
-msgstr ""
-
-#: toplev.c:3706
-msgid " -frandom-seed=<string> Make compile reproducible using <string>\n"
-msgstr ""
-
-#: toplev.c:3718
-msgid " -O[number] Set optimization level to [number]\n"
-msgstr ""
-
-#: toplev.c:3719
-msgid " -Os Optimize for space rather than speed\n"
-msgstr ""
-
-#: toplev.c:3731
-msgid " -pedantic Issue warnings needed by strict compliance to ISO C\n"
-msgstr ""
-
-#: toplev.c:3732
-msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
-msgstr ""
-
-#: toplev.c:3733
-msgid " -w Suppress warnings\n"
-msgstr ""
-
-#: toplev.c:3734
-msgid " -W Enable extra warnings\n"
-msgstr ""
-
-#: toplev.c:3745
-msgid " -Wunused Enable unused warnings\n"
-msgstr ""
-
-#: toplev.c:3746
-msgid " -Wlarger-than-<number> Warn if an object is larger than <number> bytes\n"
-msgstr ""
-
-#: toplev.c:3747
-msgid " -p Enable function profiling\n"
-msgstr ""
-
-#: toplev.c:3748
-msgid " -o <file> Place output into <file> \n"
-msgstr ""
-
-#: toplev.c:3749
-msgid ""
-" -G <number> Put global and static data smaller than <number>\n"
-" bytes into a special section (on some targets)\n"
-msgstr ""
-
-#: toplev.c:3760
-msgid " -aux-info <file> Emit declaration info into <file>\n"
-msgstr ""
-
-#: toplev.c:3761
-msgid " -quiet Do not display functions compiled or elapsed time\n"
-msgstr ""
-
-#: toplev.c:3762
-msgid " -version Display the compiler's version\n"
-msgstr ""
-
-#: toplev.c:3763
-msgid " -d[letters] Enable dumps from specific passes of the compiler\n"
-msgstr ""
-
-#: toplev.c:3764
-msgid " -dumpbase <file> Base name to be used for dumps from specific passes\n"
-msgstr ""
-
-#: toplev.c:3766
-msgid " -fsched-verbose=<number> Set the verbosity level of the scheduler\n"
+#: toplev.c:1726 toplev.c:1743
+#, c-format
+msgid "`%s' is deprecated (declared at %s:%d)"
msgstr ""
-#: toplev.c:3768
-msgid " --help Display this information\n"
-msgstr ""
+#: toplev.c:1746
+#, fuzzy, c-format
+msgid "`%s' is deprecated"
+msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-#: toplev.c:3783
-msgid ""
-"\n"
-"Language specific options:\n"
+#: toplev.c:1749
+#, c-format
+msgid "type is deprecated (declared at %s:%d)"
msgstr ""
-#: toplev.c:3795
-#, c-format
-msgid " %-23.23s [undocumented]\n"
+#: toplev.c:1752
+msgid "type is deprecated"
msgstr ""
-#: toplev.c:3803 toplev.c:3817
+#: toplev.c:1956
#, c-format
-msgid ""
-"\n"
-"There are undocumented %s specific options as well.\n"
+msgid "invalid register name `%s' for register variable"
msgstr ""
-#: toplev.c:3807
-#, c-format
-msgid ""
-"\n"
-" Options for %s:\n"
+#: toplev.c:3522
+msgid "branch target register load optimization is not intended to be run twice"
msgstr ""
-#: toplev.c:3844
-#, fuzzy
+#: toplev.c:3689
+#, fuzzy, c-format
msgid ""
"\n"
"Target specific options:\n"
msgstr "äÞëùóç ðëÜôïõò"
-#: toplev.c:3858 toplev.c:3877
+#: toplev.c:3703 toplev.c:3722
#, c-format
-msgid " -m%-23.23s [undocumented]\n"
+msgid " -m%-23s [undocumented]\n"
msgstr ""
-#: toplev.c:3886
+#: toplev.c:3731
+#, c-format
msgid ""
"\n"
"There are undocumented target specific options as well.\n"
msgstr ""
-#: toplev.c:3888
+#: toplev.c:3733
+#, c-format
msgid " They exist, but they are not documented.\n"
msgstr ""
-#: toplev.c:3941
+#: toplev.c:3788
#, fuzzy, c-format
msgid "unrecognized gcc debugging option: %c"
msgstr "ìç áíáãíùñßóçìç åðéëïãÞ `-%c'"
-#: toplev.c:4007
-#, fuzzy, c-format
-msgid "`%s': unknown tls-model option"
-msgstr "%s: Üãíùóôï/ìç õðïóôçñéæüìåíï åßäïò áñ÷åßïõ.\n"
-
-# src/request.c:806 src/request.c:912
-#: toplev.c:4034
-#, fuzzy, c-format
-msgid "unrecognized register name `%s'"
-msgstr "Ìç áíáãíùñßóçìï üíïìá åðéöÜíåéáò `%s'"
-
-#: toplev.c:4059 toplev.c:5012
-#, fuzzy, c-format
-msgid "unrecognized option `%s'"
-msgstr "ìç áíáãíùñßóçìç åðéëïãÞ `-%c'"
-
-#: toplev.c:4107
-msgid "-Wid-clash-LEN is no longer supported"
-msgstr ""
-
-#: toplev.c:4184
+#: toplev.c:3850 config/rs6000/rs6000.c:909
#, c-format
-msgid "use -gdwarf -g%d for DWARF v1, level %d"
-msgstr ""
-
-#: toplev.c:4187
-msgid "use -gdwarf-2 for DWARF v2"
-msgstr ""
-
-#: toplev.c:4192
-#, c-format
-msgid "ignoring option `%s' due to invalid debug level specification"
-msgstr ""
-
-#: toplev.c:4215 toplev.c:5010
-#, fuzzy, c-format
-msgid "`%s': unknown or unsupported -g option"
-msgstr "%s: Üãíùóôï/ìç õðïóôçñéæüìåíï åßäïò áñ÷åßïõ.\n"
-
-#: toplev.c:4222
-#, c-format
-msgid "`%s' ignored, conflicts with `-g%s'"
-msgstr ""
-
-#: toplev.c:4304
-#, fuzzy
-msgid "-param option missing argument"
-msgstr "ðáñÜëçøç ïñßóìáôïò áñ÷åßïõ"
-
-#: toplev.c:4313
-#, fuzzy, c-format
-msgid "invalid --param option: %s"
-msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-
-#: toplev.c:4325
-#, fuzzy, c-format
-msgid "invalid parameter value `%s'"
-msgstr "Ìç Ýãêõñï äéÜóôçìá ÷ñüíïõ `%s'"
+msgid "invalid option `%s'"
+msgstr "ìç Ýãêõñç åðéëïãÞ `%s'"
-#: toplev.c:4565
+#: toplev.c:3865
#, c-format
msgid ""
"%s%s%s version %s (%s)\n"
@@ -8116,256 +7121,352 @@ msgid ""
"%s%s%s version %s (%s) compiled by CC.\n"
msgstr ""
-#: toplev.c:4572
+#: toplev.c:3872
#, c-format
msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
msgstr ""
# src/getopt1.c:132
# src/getopt1.c:132
-#: toplev.c:4630
+#: toplev.c:3924
#, fuzzy
msgid "options passed: "
msgstr "åðéëïãÞ %s"
# src/getopt1.c:155
# src/getopt1.c:155
-#: toplev.c:4659
+#: toplev.c:3953
#, fuzzy
msgid "options enabled: "
msgstr "åðéëïãÞ á\n"
-#: toplev.c:4718 java/jcf-write.c:3453
+#: toplev.c:4011 java/jcf-write.c:3422
#, fuzzy, c-format
-msgid "can't open %s for writing"
+msgid "can't open %s for writing: %m"
msgstr "%s: ÓöÜëìá åããñáöÞò "
-#: toplev.c:5002
-#, fuzzy, c-format
-msgid "ignoring command line option '%s'"
-msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
+#: toplev.c:4094 config/sh/sh.c:6883
+msgid "created and used with different settings of -fpic"
+msgstr ""
+
+#: toplev.c:4096 config/sh/sh.c:6885
+msgid "created and used with different settings of -fpie"
+msgstr ""
-#: toplev.c:5005
+#: toplev.c:4147 config/sh/sh.c:6935
#, c-format
-msgid "(it is valid for %s but not the selected language)"
+msgid "created and used with differing settings of `-m%s'"
msgstr ""
-#: toplev.c:5039
-msgid "-Wuninitialized is not supported without -O"
+#: toplev.c:4150 config/sh/sh.c:6938
+msgid "out of memory"
msgstr ""
-#: toplev.c:5094
+#: toplev.c:4331
#, fuzzy
msgid "instruction scheduling not supported on this target machine"
msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
-#: toplev.c:5098
+#: toplev.c:4335
msgid "this target machine does not have delayed branches"
msgstr ""
-#: toplev.c:5112
+#: toplev.c:4349
#, fuzzy, c-format
msgid "-f%sleading-underscore not supported on this target machine"
msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
-#: toplev.c:5175
+#: toplev.c:4398
+#, c-format
+msgid "target system does not support the \"%s\" debug format"
+msgstr ""
+
+#: toplev.c:4415
#, fuzzy
msgid "-ffunction-sections not supported for this target"
msgstr "ôï --no-dereference (-h) äåí õðïóôçñßæåôáé óå áõôü ôï óýóôçìá"
-#: toplev.c:5180
+#: toplev.c:4420
#, fuzzy
msgid "-fdata-sections not supported for this target"
msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
-#: toplev.c:5187
+#: toplev.c:4427
msgid "-ffunction-sections disabled; it makes profiling impossible"
msgstr ""
-#: toplev.c:5194
+#: toplev.c:4434
#, fuzzy
msgid "-fprefetch-loop-arrays not supported for this target"
msgstr "ôï --no-dereference (-h) äåí õðïóôçñßæåôáé óå áõôü ôï óýóôçìá"
-#: toplev.c:5200
+#: toplev.c:4440
msgid "-fprefetch-loop-arrays not supported for this target (try -march switches)"
msgstr ""
-#: toplev.c:5209
+#: toplev.c:4449
#, fuzzy
msgid "-fprefetch-loop-arrays is not supported with -Os"
msgstr "ôï --no-dereference (-h) äåí õðïóôçñßæåôáé óå áõôü ôï óýóôçìá"
-#: toplev.c:5215
+#: toplev.c:4455
msgid "-ffunction-sections may affect debugging on some targets"
msgstr ""
-#: toplev.c:5327
+#: toplev.c:4557
#, fuzzy, c-format
-msgid "error writing to %s"
+msgid "error writing to %s: %m"
msgstr "óöÜëìá åããñáöÞò %s"
-#: toplev.c:5329 java/jcf-parse.c:936 java/jcf-write.c:3460
+#: toplev.c:4559 java/jcf-parse.c:902 java/jcf-write.c:3429
#, fuzzy, c-format
-msgid "error closing %s"
+msgid "error closing %s: %m"
msgstr "óöÜëìá áíÜãíùóçò %s"
-#: tree-dump.c:702
+#: tree-dump.c:692
#, fuzzy, c-format
msgid "could not open dump file `%s'"
msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ `%s'"
-#: tree-dump.c:778
+#: tree-dump.c:763
#, fuzzy, c-format
-msgid "ignoring unknown option `%.*s' in `-f%s'"
+msgid "ignoring unknown option `%.*s' in `-fdump-%s'"
msgstr "¶ãíùóôç åðéëïãÞ: %s %s %s"
-#: tree.c:3645
+#: tree-inline.c:1016
+msgid "%Jfunction '%F' can never be inlined because it uses alloca (override using the always_inline attribute)"
+msgstr ""
+
+#: tree-inline.c:1029
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp"
+msgstr ""
+
+#: tree-inline.c:1044
+msgid "%Jfunction '%F' can never be inlined because it uses variable argument lists"
+msgstr ""
+
+#: tree-inline.c:1060
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp-longjmp exception handling"
+msgstr ""
+
+#: tree-inline.c:1078
+msgid "%Jfunction '%F' can never be inlined because it contains a nested function"
+msgstr ""
+
+#: tree-inline.c:1095
+msgid "%Jfunction '%F' can never be inlined because it contains a computed goto"
+msgstr ""
+
+#: tree-inline.c:1105
+msgid "%Jfunction '%F' can never be inlined because it contains a nonlocal goto"
+msgstr ""
+
+#: tree-inline.c:1128
+msgid "%Jfunction '%F' can never be inlined because it uses variable sized variables"
+msgstr ""
+
+#: tree-inline.c:1338 tree-inline.c:1345
+msgid "%Jinlining failed in call to '%F': %s"
+msgstr ""
+
+#: tree-optimize.c:190
+#, fuzzy
+msgid "%Jsize of return value of '%D' is %u bytes"
+msgstr "%s: ïé ôéìÝò ôïõ ðåäßïõ `%s' äåí ðñÝðåé íá åßíáé ìåãáëýôåñåò áðü %d"
+
+#: tree-optimize.c:193
+#, fuzzy
+msgid "%Jsize of return value of '%D' is larger than %wd bytes"
+msgstr "%s: ïé ôéìÝò ôïõ ðåäßïõ `%s' äåí ðñÝðåé íá åßíáé ìåãáëýôåñåò áðü %d"
+
+#: tree.c:3800
msgid "arrays of functions are not meaningful"
msgstr ""
-#: tree.c:3702
+#: tree.c:3855
msgid "function return type cannot be function"
msgstr ""
-#: tree.c:4557
+#: tree.c:4684
#, fuzzy
msgid "invalid initializer for bit string"
msgstr "Ç áëõóßäá ìïñöÞò äåí åßíáé Ýãêõñç: `%s'"
-#: tree.c:4616
+#: tree.c:4736
#, c-format
msgid "tree check: expected %s, have %s in %s, at %s:%d"
msgstr ""
-#: tree.c:4633
+#: tree.c:4749
#, c-format
msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d"
msgstr ""
-#: tree.c:4650
+#: tree.c:4762
#, c-format
msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
msgstr ""
-#: varasm.c:455 config/i386/winnt.c:611
+#: tree.c:4774
#, c-format
-msgid "%s causes a section type conflict"
+msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
msgstr ""
-#: varasm.c:841
-#, fuzzy, c-format
-msgid "register name not specified for `%s'"
+#: varasm.c:434
+msgid "%J%D causes a section type conflict"
+msgstr ""
+
+#: varasm.c:796
+#, fuzzy
+msgid "%Jregister name not specified for '%D'"
msgstr "ÅããñáöÞ ïíïìÜôùí ôùí åðéëåãìÝíùí ëÝîåùí-êëåéäéþí"
-#: varasm.c:843
-#, fuzzy, c-format
-msgid "invalid register name for `%s'"
+#: varasm.c:798
+#, fuzzy
+msgid "%Jinvalid register name for '%D'"
msgstr "ìç Ýãêõñïò áñéèìüò ðåäßïõ: `%s'"
-#: varasm.c:846
-#, c-format
-msgid "data type of `%s' isn't suitable for a register"
+#: varasm.c:800
+msgid "%Jdata type of '%D' isn't suitable for a register"
msgstr ""
-#: varasm.c:849
-#, c-format
-msgid "register specified for `%s' isn't suitable for data type"
+#: varasm.c:803
+msgid "%Jregister specified for '%D' isn't suitable for data type"
msgstr ""
-#: varasm.c:858
+#: varasm.c:813
msgid "global register variable has initial value"
msgstr ""
-#: varasm.c:861
+#: varasm.c:816
msgid "volatile register variables don't work as you might wish"
msgstr ""
-#: varasm.c:894
-#, c-format
-msgid "register name given for non-register variable `%s'"
+#: varasm.c:848
+msgid "%Jregister name given for non-register variable '%D'"
msgstr ""
-#: varasm.c:1542
-#, c-format
-msgid "alignment of `%s' is greater than maximum object file alignment. Using %d"
+#: varasm.c:1380
+#, fuzzy
+msgid "%Jstorage size of `%D' isn't known"
+msgstr "Ôï üíïìá `%s' åßíáé Üãíùóôï\n"
+
+#: varasm.c:1434
+msgid "%Jalignment of '%D' is greater than maximum object file alignment. Using %d"
msgstr ""
-#: varasm.c:1584
+#: varasm.c:1480
msgid "thread-local COMMON data not implemented"
msgstr ""
-#: varasm.c:1610
-#, c-format
-msgid "requested alignment for %s is greater than implemented alignment of %d"
+#: varasm.c:1505
+msgid "%Jrequested alignment for '%D' is greater than implemented alignment of %d"
msgstr ""
-#: varasm.c:4048
+#: varasm.c:3787
msgid "initializer for integer value is too complicated"
msgstr ""
-#: varasm.c:4053
+#: varasm.c:3792
msgid "initializer for floating value is not a floating constant"
msgstr ""
-#: varasm.c:4120
+#: varasm.c:3858
#, fuzzy
msgid "unknown set constructor type"
msgstr "Äåí åßíáé äõíáôüí íá âñåèåß ï ôýðïò ôïõ åðåîåñãáóôÞ."
-#: varasm.c:4334
+#: varasm.c:4077
#, fuzzy, c-format
msgid "invalid initial value for member `%s'"
msgstr "ìç Ýãêõñïò áñéèìüò ðåäßïõ: `%s'"
-#: varasm.c:4525 varasm.c:4568
-#, c-format
-msgid "weak declaration of `%s' must precede definition"
-msgstr ""
+#: varasm.c:4264 varasm.c:4308
+#, fuzzy
+msgid "%Jweak declaration of '%D' must precede definition"
+msgstr "Ç ëåéôïõñãßá äåí õðïóôçñßæåôáé"
-#: varasm.c:4532
-#, fuzzy, c-format
-msgid "weak declaration of `%s' after first use results in unspecified behavior"
+#: varasm.c:4272
+#, fuzzy
+msgid "%Jweak declaration of '%D' after first use results in unspecified behavior"
msgstr "Ç ëåéôïõñãßá äåí õðïóôçñßæåôáé"
-#: varasm.c:4566
-#, c-format
-msgid "weak declaration of `%s' must be public"
-msgstr ""
+#: varasm.c:4306
+#, fuzzy
+msgid "%Jweak declaration of '%D' must be public"
+msgstr "Ç ëåéôïõñãßá äåí õðïóôçñßæåôáé"
-#: varasm.c:4575
-#, fuzzy, c-format
-msgid "weak declaration of `%s' not supported"
+#: varasm.c:4315
+#, fuzzy
+msgid "%Jweak declaration of '%D' not supported"
msgstr "Ç ëåéôïõñãßá äåí õðïóôçñßæåôáé"
-#: varasm.c:4602 varasm.c:4677
+#: varasm.c:4344 varasm.c:4434
msgid "only weak aliases are supported in this configuration"
msgstr ""
-#: varasm.c:4685
+#: varasm.c:4437
msgid "alias definitions not supported in this configuration; ignored"
msgstr ""
-#: varasm.c:4716
+#: varasm.c:4466
#, fuzzy
msgid "visibility attribute not supported in this configuration; ignored"
msgstr "Ç ïéêïãÝíåéá äéåõèýíóåùí äåí õðïóôçñßæåôáé áðü ôçí ïéêïãÝíåéá ðñùôïêüëëïõ"
-#: varray.c:134
+#: varray.c:194
#, c-format
msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d"
msgstr ""
+#: varray.c:204
+#, fuzzy, c-format
+msgid "underflowed virtual array %s in %s, at %s:%d"
+msgstr "åóùôåñéêü óöÜëìá óôï %s, ãñáììÞ %u"
+
#. Print an error message for unrecognized stab codes.
-#: xcoffout.c:175
+#: xcoffout.c:173
#, c-format
msgid "no sclass for %s stab (0x%x)\n"
msgstr ""
-#: pretty-print.h:97
-#, fuzzy, c-format
-msgid "#`%s' not supported by %s#"
-msgstr "Äåí õðïóôçñßæåôáé"
+#.
+#. Local variables:
+#. mode:c
+#. End:
+#.
+#: diagnostic.def:1
+#, fuzzy
+msgid "fatal error: "
+msgstr "åóùôåñéêü óöÜëìá: "
+
+#: diagnostic.def:2
+#, fuzzy
+msgid "internal compiler error: "
+msgstr "åóùôåñéêü óöÜëìá: "
+
+#: diagnostic.def:3
+#, fuzzy
+msgid "error: "
+msgstr "åóùôåñéêü óöÜëìá: "
+
+#: diagnostic.def:4
+#, fuzzy
+msgid "sorry, unimplemented: "
+msgstr "óõããíþìç, ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß: "
+
+#: diagnostic.def:6
+msgid "anachronism: "
+msgstr ""
+
+#: diagnostic.def:7
+#, fuzzy
+msgid "note: "
+msgstr "óçìåßùóç:"
+
+#: diagnostic.def:8
+msgid "debug: "
+msgstr ""
#: params.def:53
msgid "The maximum number of instructions in a single function eligible for inlining"
@@ -8375,88 +7476,136 @@ msgstr ""
msgid "The maximum number of instructions when automatically inlining"
msgstr ""
-#: params.def:84
-msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
+#: params.def:75
+msgid "The maximum number of instructions for the RTL inliner"
msgstr ""
-#: params.def:97
-msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
+#: params.def:86
+msgid "The maximum number of instructions to consider to fill a delay slot"
msgstr ""
-#: params.def:110
-msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
+#: params.def:97
+msgid "The maximum number of instructions to consider to find accurate live register information"
msgstr ""
-#: params.def:120
-msgid "The maximum number of instructions for the RTL inliner"
+#: params.def:107
+msgid "The maximum length of scheduling's pending operations list"
msgstr ""
-#: params.def:131
-msgid "The maximum number of instructions to consider to fill a delay slot"
+#: params.def:112
+msgid "The size of function body to be considered large"
msgstr ""
-#: params.def:142
-msgid "The maximum number of instructions to consider to find accurate live register information"
+#: params.def:116
+msgid "Maximal growth due to inlining of large function (in percent)"
msgstr ""
-#: params.def:152
-msgid "The maximum length of scheduling's pending operations list"
+#: params.def:120
+msgid "how much can given compilation unit grow because of the inlining (in percent)"
msgstr ""
-#: params.def:159
+#: params.def:127
msgid "The maximum amount of memory to be allocated by GCSE"
msgstr ""
-#: params.def:164
+#: params.def:132
msgid "The maximum number of passes to make when doing GCSE"
msgstr ""
-#: params.def:171
+#: params.def:139
msgid "The maximum number of instructions to consider to unroll in a loop"
msgstr ""
-#: params.def:176
-msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
+#: params.def:145
+msgid "The maximum number of instructions to consider to unroll in a loop on average"
+msgstr ""
+
+#: params.def:150
+msgid "The maximum number of unrollings of a single loop"
+msgstr ""
+
+#: params.def:155
+msgid "The maximum number of insns of a peeled loop"
+msgstr ""
+
+#: params.def:160
+msgid "The maximum number of peelings of a single loop"
+msgstr ""
+
+#: params.def:165
+msgid "The maximum number of insns of a completely peeled loop"
+msgstr ""
+
+#: params.def:170
+msgid "The maximum number of peelings of a single loop that is peeled completely"
+msgstr ""
+
+#: params.def:175
+msgid "The maximum number of insns of a peeled loop that rolls only once"
msgstr ""
#: params.def:181
-msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
+msgid "The maximum number of insns of an unswitched loop"
msgstr ""
#: params.def:186
-msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
+msgid "The maximum number of unswitchings in a single loop"
msgstr ""
#: params.def:191
-msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
+msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
msgstr ""
#: params.def:196
-msgid "Maximal code growth caused by tail duplication (in percents)"
+msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
+msgstr ""
+
+#: params.def:201
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
msgstr ""
-#: params.def:200
-msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percents)"
+#: params.def:206
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
msgstr ""
-#: params.def:205
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is available"
+#: params.def:211
+msgid "Maximal code growth caused by tail duplication (in percent)"
msgstr ""
-#: params.def:210
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is not available"
+#: params.def:215
+msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent)"
msgstr ""
-#: params.def:217
+#: params.def:220
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is available"
+msgstr ""
+
+#: params.def:225
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is not available"
+msgstr ""
+
+#: params.def:232
msgid "The maximum number of incoming edges to consider for crossjumping"
msgstr ""
-#: params.def:230
-msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap."
+#: params.def:238
+msgid "The maximum length of path considered in cse"
+msgstr ""
+
+#: params.def:243
+msgid "The maximum memory locations recorded by cselib"
msgstr ""
-#: params.def:236
-msgid "Minimum heap size before we start collecting garbage, in kilobytes."
+#: params.def:256
+msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap"
+msgstr ""
+
+#: params.def:262
+msgid "Minimum heap size before we start collecting garbage, in kilobytes"
+msgstr ""
+
+#: params.def:270
+msgid "The maximum number of instructions to search backward when looking for equivalent reload"
msgstr ""
#: config/darwin-c.c:75
@@ -8464,195 +7613,202 @@ msgstr ""
msgid "too many #pragma options align=reset"
msgstr "ÕðåñâïëéêÝò ðáñÜìåôñïé ðïõ äåí åßíáé åðéëïãÝò."
-#: config/darwin-c.c:97 config/darwin-c.c:100 config/darwin-c.c:102
-#: config/darwin-c.c:104
+#: config/darwin-c.c:95 config/darwin-c.c:98 config/darwin-c.c:100
+#: config/darwin-c.c:102
#, fuzzy
msgid "malformed '#pragma options', ignoring"
msgstr "êáêïäéáìïñöùìÝíç ãñáììÞ áãíïÞèçêå"
-#: config/darwin-c.c:107
+#: config/darwin-c.c:105
msgid "junk at end of '#pragma options'"
msgstr ""
-#: config/darwin-c.c:117
+#: config/darwin-c.c:115
msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring"
msgstr ""
-#: config/darwin-c.c:130
+#: config/darwin-c.c:127
msgid "missing '(' after '#pragma unused', ignoring"
msgstr ""
-#: config/darwin-c.c:148
+#: config/darwin-c.c:145
msgid "missing ')' after '#pragma unused', ignoring"
msgstr ""
-#: config/darwin-c.c:151
+#: config/darwin-c.c:148
msgid "junk at end of '#pragma unused'"
msgstr ""
-#: config/lynx-ng.h:97 config/lynx.h:121 config/rs6000/lynx.h:100
+#: config/darwin.c:1347
+#, fuzzy
+msgid "internal and protected visibility attributes not supportedin this configuration; ignored"
+msgstr "Ç ïéêïãÝíåéá äéåõèýíóåùí äåí õðïóôçñßæåôáé áðü ôçí ïéêïãÝíåéá ðñùôïêüëëïõ"
+
+#: config/lynx-ng.h:97 config/lynx.h:116 config/rs6000/lynx.h:73
msgid "-msystem-v and -p are incompatible"
msgstr ""
-#: config/lynx-ng.h:99 config/lynx.h:123 config/rs6000/lynx.h:102
+#: config/lynx-ng.h:99 config/lynx.h:118 config/rs6000/lynx.h:75
msgid "-msystem-v and -mthreads are incompatible"
msgstr ""
-#: config/alpha/alpha.c:342
+#: config/windiss.h:37
+msgid "profiler support for WindISS"
+msgstr ""
+
+#: config/alpha/alpha.c:231
#, fuzzy, c-format
msgid "-f%s ignored for Unicos/Mk (not supported)"
msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
-#: config/alpha/alpha.c:366
+#: config/alpha/alpha.c:255
#, fuzzy
msgid "-mieee not supported on Unicos/Mk"
msgstr "Ôï servname äåí õðïóôçñßæåôáé áðü ôï ai_socktype"
-#: config/alpha/alpha.c:377
+#: config/alpha/alpha.c:266
msgid "-mieee-with-inexact not supported on Unicos/Mk"
msgstr ""
-#: config/alpha/alpha.c:394
+#: config/alpha/alpha.c:283
#, c-format
msgid "bad value `%s' for -mtrap-precision switch"
msgstr ""
-#: config/alpha/alpha.c:408
+#: config/alpha/alpha.c:297
#, c-format
msgid "bad value `%s' for -mfp-rounding-mode switch"
msgstr ""
-#: config/alpha/alpha.c:423
+#: config/alpha/alpha.c:312
#, c-format
msgid "bad value `%s' for -mfp-trap-mode switch"
msgstr ""
-#: config/alpha/alpha.c:435
+#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1063
#, fuzzy, c-format
msgid "bad value `%s' for -mtls-size switch"
msgstr "ÁêáôÜëëçëç ôéìÞ óôï ai_flags"
-#: config/alpha/alpha.c:454 config/alpha/alpha.c:466
+#: config/alpha/alpha.c:343 config/alpha/alpha.c:355
#, c-format
msgid "bad value `%s' for -mcpu switch"
msgstr ""
-#: config/alpha/alpha.c:473
+#: config/alpha/alpha.c:362
#, fuzzy
msgid "trap mode not supported on Unicos/Mk"
msgstr "Ôï servname äåí õðïóôçñßæåôáé áðü ôï ai_socktype"
-#: config/alpha/alpha.c:480
+#: config/alpha/alpha.c:369
msgid "fp software completion requires -mtrap-precision=i"
msgstr ""
-#: config/alpha/alpha.c:496
+#: config/alpha/alpha.c:385
#, fuzzy
msgid "rounding mode not supported for VAX floats"
msgstr "Ôï servname äåí õðïóôçñßæåôáé áðü ôï ai_socktype"
-#: config/alpha/alpha.c:501
+#: config/alpha/alpha.c:390
#, fuzzy
msgid "trap mode not supported for VAX floats"
msgstr "Ôï servname äåí õðïóôçñßæåôáé áðü ôï ai_socktype"
-#: config/alpha/alpha.c:530
+#: config/alpha/alpha.c:419
#, c-format
msgid "L%d cache latency unknown for %s"
msgstr ""
-#: config/alpha/alpha.c:545
+#: config/alpha/alpha.c:434
#, c-format
msgid "bad value `%s' for -mmemory-latency"
msgstr ""
-#: config/alpha/alpha.c:5604 config/m88k/m88k.c:2889 config/romp/romp.c:754
-#: config/romp/romp.c:761
+#: config/alpha/alpha.c:5411
#, fuzzy, c-format
msgid "invalid %%H value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5625
+#: config/alpha/alpha.c:5432
#, fuzzy, c-format
msgid "invalid %%J value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5641 config/ia64/ia64.c:3970 config/m88k/m88k.c:3034
+#: config/alpha/alpha.c:5448 config/ia64/ia64.c:4243
#, fuzzy, c-format
msgid "invalid %%r value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5651 config/rs6000/rs6000.c:7737
+#: config/alpha/alpha.c:5458 config/rs6000/rs6000.c:8944
+#: config/xtensa/xtensa.c:1999
#, fuzzy, c-format
msgid "invalid %%R value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5657 config/rs6000/rs6000.c:7663
+#: config/alpha/alpha.c:5464 config/rs6000/rs6000.c:8863
+#: config/xtensa/xtensa.c:1966
#, fuzzy, c-format
msgid "invalid %%N value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:7691
+#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:8891
#, fuzzy, c-format
msgid "invalid %%P value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5673 config/m88k/m88k.c:2895 config/romp/romp.c:740
-#: config/romp/romp.c:747
+#: config/alpha/alpha.c:5480
#, fuzzy, c-format
msgid "invalid %%h value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5681 config/romp/romp.c:698
+#: config/alpha/alpha.c:5488 config/xtensa/xtensa.c:1992
#, fuzzy, c-format
msgid "invalid %%L value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5720 config/rs6000/rs6000.c:7645
+#: config/alpha/alpha.c:5527 config/rs6000/rs6000.c:8845
#, fuzzy, c-format
msgid "invalid %%m value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5728 config/rs6000/rs6000.c:7653
+#: config/alpha/alpha.c:5535 config/rs6000/rs6000.c:8853
#, fuzzy, c-format
msgid "invalid %%M value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5772
+#: config/alpha/alpha.c:5579
#, fuzzy, c-format
msgid "invalid %%U value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5784 config/alpha/alpha.c:5798 config/romp/romp.c:706
-#: config/rs6000/rs6000.c:7745
+#: config/alpha/alpha.c:5591 config/alpha/alpha.c:5605
+#: config/rs6000/rs6000.c:8952
#, fuzzy, c-format
msgid "invalid %%s value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5821 config/m88k/m88k.c:2997
+#: config/alpha/alpha.c:5628
#, fuzzy, c-format
msgid "invalid %%C value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5858 config/m88k/m88k.c:3018
-#: config/rs6000/rs6000.c:7502
+#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:8702
#, fuzzy, c-format
msgid "invalid %%E value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/alpha/alpha.c:5883 config/alpha/alpha.c:5933
+#: config/alpha/alpha.c:5690 config/alpha/alpha.c:5738
#, fuzzy
msgid "unknown relocation unspec"
msgstr "Äåí åßíáé äõíáôüí íá âñåèåß ï ôýðïò ôïõ åðåîåñãáóôÞ."
-#: config/alpha/alpha.c:5892 config/romp/romp.c:981
-#: config/rs6000/rs6000.c:8052
+#: config/alpha/alpha.c:5699 config/rs6000/rs6000.c:9265
#, fuzzy, c-format
msgid "invalid %%xn code"
msgstr "ìç Ýãêõñï äéêáßùìá"
-#: config/alpha/alpha.c:6618 config/alpha/alpha.c:6621 config/s390/s390.c:6069
-#: config/s390/s390.c:6072
+#: config/alpha/alpha.c:6634 config/alpha/alpha.c:6637 config/s390/s390.c:6572
+#: config/s390/s390.c:6575
msgid "bad builtin fcode"
msgstr ""
@@ -8661,87 +7817,99 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/alpha/alpha.h:279 config/i386/i386.h:294 config/i386/i386.h:296
-#: config/i386/i386.h:298 config/ns32k/ns32k.h:140 config/rs6000/rs6000.h:292
-#: config/s390/s390.h:68 config/sparc/sparc.h:522 config/sparc/sparc.h:527
+#. WARNING: Do not mark empty strings for translation, as calling
+#. gettext on an empty string does NOT return an empty
+#. string.
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/alpha/alpha.h:286 config/i386/i386.h:327 config/i386/i386.h:329
+#: config/i386/i386.h:331 config/ns32k/ns32k.h:140 config/s390/s390.h:124
+#: config/sparc/sparc.h:537 config/sparc/sparc.h:542
msgid "Use hardware fp"
msgstr ""
-#: config/alpha/alpha.h:280 config/i386/i386.h:295 config/i386/i386.h:297
-#: config/rs6000/rs6000.h:294 config/sparc/sparc.h:524
-#: config/sparc/sparc.h:529
+#: config/alpha/alpha.h:287 config/i386/i386.h:328 config/i386/i386.h:330
+#: config/sparc/sparc.h:539 config/sparc/sparc.h:544
msgid "Do not use hardware fp"
msgstr ""
-#: config/alpha/alpha.h:281
+#: config/alpha/alpha.h:288
msgid "Use fp registers"
msgstr ""
-#: config/alpha/alpha.h:283
+#: config/alpha/alpha.h:290
msgid "Do not use fp registers"
msgstr ""
-#: config/alpha/alpha.h:284
+#: config/alpha/alpha.h:291
msgid "Do not assume GAS"
msgstr ""
-#: config/alpha/alpha.h:285
+#: config/alpha/alpha.h:292
msgid "Assume GAS"
msgstr ""
-#: config/alpha/alpha.h:287
+#: config/alpha/alpha.h:294
msgid "Request IEEE-conformant math library routines (OSF/1)"
msgstr ""
-#: config/alpha/alpha.h:289
+#: config/alpha/alpha.h:296
msgid "Emit IEEE-conformant code, without inexact exceptions"
msgstr ""
-#: config/alpha/alpha.h:291
+#: config/alpha/alpha.h:298
msgid "Emit IEEE-conformant code, with inexact exceptions"
msgstr ""
-#: config/alpha/alpha.h:293
+#: config/alpha/alpha.h:300
msgid "Do not emit complex integer constants to read-only memory"
msgstr ""
-#: config/alpha/alpha.h:294
+#: config/alpha/alpha.h:301
msgid "Use VAX fp"
msgstr ""
-#: config/alpha/alpha.h:295
+#: config/alpha/alpha.h:302
msgid "Do not use VAX fp"
msgstr ""
-#: config/alpha/alpha.h:296
+#: config/alpha/alpha.h:303
msgid "Emit code for the byte/word ISA extension"
msgstr ""
-#: config/alpha/alpha.h:299
+#: config/alpha/alpha.h:306
msgid "Emit code for the motion video ISA extension"
msgstr ""
-#: config/alpha/alpha.h:302
+#: config/alpha/alpha.h:309
msgid "Emit code for the fp move and sqrt ISA extension"
msgstr ""
-#: config/alpha/alpha.h:304
+#: config/alpha/alpha.h:311
msgid "Emit code for the counting ISA extension"
msgstr ""
-#: config/alpha/alpha.h:307
+#: config/alpha/alpha.h:314
msgid "Emit code using explicit relocation directives"
msgstr ""
-#: config/alpha/alpha.h:310
+#: config/alpha/alpha.h:317
msgid "Emit 16-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:312
+#: config/alpha/alpha.h:319
msgid "Emit 32-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:314
+#: config/alpha/alpha.h:321
+#, fuzzy
+msgid "Emit direct branches to local functions"
+msgstr "Äåí âñÝèçêáí ôáéñéÜóìáôá óôç ìïñöÞ `%s'.\n"
+
+#: config/alpha/alpha.h:324
msgid "Emit rdval instead of rduniq for thread pointer"
msgstr ""
@@ -8752,293 +7920,316 @@ msgstr ""
#. For -mtrap-precision=[p|f|i]
#. For -mmemory-latency=
#. For -mtls-size=
-#: config/alpha/alpha.h:343
+#: config/alpha/alpha.h:353
msgid "Use features of and schedule given CPU"
msgstr ""
-#: config/alpha/alpha.h:345
+#: config/alpha/alpha.h:355
msgid "Schedule given CPU"
msgstr ""
-#: config/alpha/alpha.h:347
+#: config/alpha/alpha.h:357
msgid "Control the generated fp rounding mode"
msgstr ""
-#: config/alpha/alpha.h:349
+#: config/alpha/alpha.h:359
msgid "Control the IEEE trap mode"
msgstr ""
-#: config/alpha/alpha.h:351
+#: config/alpha/alpha.h:361
msgid "Control the precision given to fp exceptions"
msgstr ""
-#: config/alpha/alpha.h:353
+#: config/alpha/alpha.h:363
msgid "Tune expected memory latency"
msgstr ""
-#: config/alpha/alpha.h:355 config/ia64/ia64.h:225
+#: config/alpha/alpha.h:365 config/ia64/ia64.h:267 config/rs6000/sysv4.h:90
msgid "Specify bit size of immediate TLS offsets"
msgstr ""
-#: config/arc/arc.c:135
+#: config/arc/arc.c:147
#, c-format
msgid "bad value (%s) for -mcpu switch"
msgstr ""
-#: config/arc/arc.c:362
+#: config/arc/arc.c:369
#, fuzzy, c-format
msgid "argument of `%s' attribute is not a string constant"
msgstr "Ç ðáñÜìåôñïò óôï `%s' ðñÝðåé íá åßíáé Ýíáò áðëüò ÷áñáêôÞñáò"
-#: config/arc/arc.c:369
+#: config/arc/arc.c:376
#, c-format
msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\""
msgstr ""
-#: config/arc/arc.c:1708 config/m32r/m32r.c:2286
+#: config/arc/arc.c:1714 config/m32r/m32r.c:2325
#, fuzzy, c-format
msgid "invalid operand to %%R code"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/arc/arc.c:1740 config/m32r/m32r.c:2309
+#: config/arc/arc.c:1746 config/m32r/m32r.c:2348
#, fuzzy, c-format
msgid "invalid operand to %%H/%%L code"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/arc/arc.c:1763 config/m32r/m32r.c:2385
+#: config/arc/arc.c:1769 config/m32r/m32r.c:2419
#, fuzzy, c-format
msgid "invalid operand to %%U code"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/arc/arc.c:1774
+#: config/arc/arc.c:1780
#, fuzzy, c-format
msgid "invalid operand to %%V code"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
#. Unknown flag.
-#: config/arc/arc.c:1781 config/m32r/m32r.c:2424 config/sparc/sparc.c:6533
+#. Undocumented flag.
+#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985
#, fuzzy
msgid "invalid operand output code"
msgstr "Ìç Ýãêõñïò êþäéêáò áßôçóçò"
-#: config/arm/arm.c:458
+#: config/arm/arm.c:520
#, c-format
msgid "switch -mcpu=%s conflicts with -march= switch"
msgstr ""
-#: config/arm/arm.c:468 config/rs6000/rs6000.c:558 config/sparc/sparc.c:393
+#: config/arm/arm.c:530 config/rs6000/rs6000.c:759 config/sparc/sparc.c:424
#, c-format
msgid "bad value (%s) for %s switch"
msgstr ""
-#: config/arm/arm.c:604
+#: config/arm/arm.c:672
msgid "target CPU does not support APCS-32"
msgstr ""
-#: config/arm/arm.c:609
+#: config/arm/arm.c:677
msgid "target CPU does not support APCS-26"
msgstr ""
-#: config/arm/arm.c:615
+#: config/arm/arm.c:683
msgid "target CPU does not support interworking"
msgstr ""
-#: config/arm/arm.c:621
+#: config/arm/arm.c:689
msgid "target CPU does not support THUMB instructions"
msgstr ""
-#: config/arm/arm.c:635
+#: config/arm/arm.c:703
msgid "enabling backtrace support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:638
+#: config/arm/arm.c:706
msgid "enabling callee interworking support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:641
+#: config/arm/arm.c:709
msgid "enabling caller interworking support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:647
+#: config/arm/arm.c:715
msgid "interworking forces APCS-32 to be used"
msgstr ""
-#: config/arm/arm.c:653
+#: config/arm/arm.c:721
msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
msgstr ""
-#: config/arm/arm.c:661
+#: config/arm/arm.c:729
msgid "-fpic and -mapcs-reent are incompatible"
msgstr ""
-#: config/arm/arm.c:664
+#: config/arm/arm.c:732
msgid "APCS reentrant code not supported. Ignored"
msgstr ""
-#: config/arm/arm.c:672
+#: config/arm/arm.c:740
msgid "-g with -mno-apcs-frame may not give sensible debugging"
msgstr ""
-#: config/arm/arm.c:680
+#: config/arm/arm.c:748
msgid "passing floating point arguments in fp regs not yet supported"
msgstr ""
-#: config/arm/arm.c:709
+#: config/arm/arm.c:792
#, fuzzy, c-format
msgid "invalid floating point emulation option: -mfpe-%s"
msgstr "Ç ðáñÜìåôñïò êéíçôÞò õðïäéáóôïëÞò äåí åßíáé Ýãêõñç: %s"
-#: config/arm/arm.c:733
+#: config/arm/arm.c:803
+msgid "-mfpe switch not supported by ep9312 target cpu - ignored."
+msgstr ""
+
+#: config/arm/arm.c:823
msgid "structure size boundary can only be set to 8 or 32"
msgstr ""
-#: config/arm/arm.c:741
+#: config/arm/arm.c:831
msgid "-mpic-register= is useless without -fpic"
msgstr ""
-#: config/arm/arm.c:748
+#: config/arm/arm.c:838
#, c-format
msgid "unable to use '%s' for PIC register"
msgstr ""
-#: config/arm/arm.c:2064 config/arm/arm.c:2087 config/avr/avr.c:4794
-#: config/c4x/c4x.c:4644 config/h8300/h8300.c:3667 config/i386/i386.c:1396
-#: config/i386/i386.c:1425 config/ip2k/ip2k.c:3224
-#: config/m68hc11/m68hc11.c:1267 config/mcore/mcore.c:3510
-#: config/ns32k/ns32k.c:1047 config/rs6000/rs6000.c:12538 config/sh/sh.c:5681
-#: config/sh/sh.c:5706 config/sh/sh.c:5745 config/stormy16/stormy16.c:2026
-#: config/v850/v850.c:2180
+#: config/arm/arm.c:2246 config/arm/arm.c:2264 config/avr/avr.c:4558
+#: config/c4x/c4x.c:4447 config/h8300/h8300.c:4257 config/i386/i386.c:1571
+#: config/i386/i386.c:1617 config/ip2k/ip2k.c:3169
+#: config/m68hc11/m68hc11.c:1227 config/m68k/m68k.c:333
+#: config/mcore/mcore.c:3375 config/ns32k/ns32k.c:1064
+#: config/rs6000/rs6000.c:14556 config/sh/sh.c:6737 config/sh/sh.c:6758
+#: config/sh/sh.c:6793 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173
#, c-format
msgid "`%s' attribute only applies to functions"
msgstr ""
-#: config/arm/arm.c:9459
+#: config/arm/arm.c:10573
msgid "unable to compute real location of stacked parameter"
msgstr ""
-#: config/arm/arm.c:10138
+#. @@@ better error message
+#: config/arm/arm.c:11201 config/arm/arm.c:11238
+#, fuzzy
+msgid "selector must be an immediate"
+msgstr "ç ôéìÞ ãéá ôï %s ðñÝðåé íá åßíáé áêÝñáéïò"
+
+#. @@@ better error message
+#: config/arm/arm.c:11281 config/i386/i386.c:14219 config/i386/i386.c:14253
+#, fuzzy
+msgid "mask must be an immediate"
+msgstr "ç ôéìÞ ãéá ôï %s ðñÝðåé íá åßíáé áêÝñáéïò"
+
+#: config/arm/arm.c:11976
msgid "no low registers available for popping high registers"
msgstr ""
-#: config/arm/arm.c:10389
+#: config/arm/arm.c:12226
msgid "interrupt Service Routines cannot be coded in Thumb mode"
msgstr ""
-#: config/arm/pe.c:168 config/mcore/mcore.c:3358
-#, c-format
-msgid "initialized variable `%s' is marked dllimport"
+#: config/arm/pe.c:170 config/mcore/mcore.c:3241
+msgid "%Jinitialized variable '%D' is marked dllimport"
msgstr ""
-#: config/arm/pe.c:177
-#, c-format
-msgid "static variable `%s' is marked dllimport"
+#: config/arm/pe.c:179
+msgid "%Jstatic variable '%D' is marked dllimport"
msgstr ""
-#: config/arm/arm.h:416
+#: config/arm/arm.h:450
msgid "Generate APCS conformant stack frames"
msgstr ""
-#: config/arm/arm.h:419
+#: config/arm/arm.h:453
msgid "Store function names in object code"
msgstr ""
-#: config/arm/arm.h:423
+#: config/arm/arm.h:457
msgid "Use the 32-bit version of the APCS"
msgstr ""
-#: config/arm/arm.h:425
+#: config/arm/arm.h:459
msgid "Use the 26-bit version of the APCS"
msgstr ""
-#: config/arm/arm.h:429
+#: config/arm/arm.h:463
msgid "Pass FP arguments in FP registers"
msgstr ""
-#: config/arm/arm.h:432
+#: config/arm/arm.h:466
msgid "Generate re-entrant, PIC code"
msgstr ""
-#: config/arm/arm.h:435
+#: config/arm/arm.h:469
msgid "The MMU will trap on unaligned accesses"
msgstr ""
-#: config/arm/arm.h:442
+#: config/arm/arm.h:476
msgid "Use library calls to perform FP operations"
msgstr ""
-#: config/arm/arm.h:444 config/i960/i960.h:281
+#: config/arm/arm.h:478 config/i960/i960.h:291
msgid "Use hardware floating point instructions"
msgstr ""
-#: config/arm/arm.h:446
+#: config/arm/arm.h:480
msgid "Assume target CPU is configured as big endian"
msgstr ""
-#: config/arm/arm.h:448
+#: config/arm/arm.h:482
msgid "Assume target CPU is configured as little endian"
msgstr ""
-#: config/arm/arm.h:450
+#: config/arm/arm.h:484
msgid "Assume big endian bytes, little endian words"
msgstr ""
-#: config/arm/arm.h:452
+#: config/arm/arm.h:486
msgid "Support calls between Thumb and ARM instruction sets"
msgstr ""
-#: config/arm/arm.h:455
+#: config/arm/arm.h:489
msgid "Generate a call to abort if a noreturn function returns"
msgstr ""
-#: config/arm/arm.h:458
+#: config/arm/arm.h:492
msgid "Do not move instructions into a function's prologue"
msgstr ""
-#: config/arm/arm.h:461
+#: config/arm/arm.h:495
msgid "Do not load the PIC register in function prologues"
msgstr ""
-#: config/arm/arm.h:464
+#: config/arm/arm.h:498
msgid "Generate call insns as indirect calls, if necessary"
msgstr ""
-#: config/arm/arm.h:467
+#: config/arm/arm.h:501
msgid "Compile for the Thumb not the ARM"
msgstr ""
-#: config/arm/arm.h:471
+#: config/arm/arm.h:505
msgid "Thumb: Generate (non-leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.h:474
+#: config/arm/arm.h:508
msgid "Thumb: Generate (leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.h:477
+#: config/arm/arm.h:511
msgid "Thumb: Assume non-static functions may be called from ARM code"
msgstr ""
-#: config/arm/arm.h:481
+#: config/arm/arm.h:515
msgid "Thumb: Assume function pointers may go to non-Thumb aware code"
msgstr ""
-#: config/arm/arm.h:491
+#: config/arm/arm.h:519
+msgid "Cirrus: Place NOPs to avoid invalid instruction combinations"
+msgstr ""
+
+#: config/arm/arm.h:521
+msgid "Cirrus: Do not break up invalid instruction combinations with NOPs"
+msgstr ""
+
+#: config/arm/arm.h:529
msgid "Specify the name of the target CPU"
msgstr ""
-#: config/arm/arm.h:493
+#: config/arm/arm.h:531
msgid "Specify the name of the target architecture"
msgstr ""
-#: config/arm/arm.h:497
+#: config/arm/arm.h:535
msgid "Specify the version of the floating point emulator"
msgstr ""
-#: config/arm/arm.h:499
+#: config/arm/arm.h:537
msgid "Specify the minimum bit alignment of structures"
msgstr ""
-#: config/arm/arm.h:501
+#: config/arm/arm.h:539
msgid "Specify the register to be used for PIC addressing"
msgstr ""
@@ -9046,95 +8237,95 @@ msgstr ""
msgid "Ignore dllimport attribute for functions"
msgstr ""
-#: config/avr/avr.c:528
+#: config/avr/avr.c:514
#, c-format
msgid "large frame pointer change (%d) with -mtiny-stack"
msgstr ""
-#: config/avr/avr.c:1135
+#: config/avr/avr.c:1101
msgid "bad address, not (reg+disp):"
msgstr ""
-#: config/avr/avr.c:1143
+#: config/avr/avr.c:1109
msgid "internal compiler error. Bad address:"
msgstr ""
-#: config/avr/avr.c:1156
+#: config/avr/avr.c:1122
msgid "internal compiler error. Unknown mode:"
msgstr ""
-#: config/avr/avr.c:1864 config/avr/avr.c:2576
+#: config/avr/avr.c:1744 config/avr/avr.c:2405
#, fuzzy
msgid "invalid insn:"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/avr/avr.c:1901 config/avr/avr.c:1987 config/avr/avr.c:2036
-#: config/avr/avr.c:2045 config/avr/avr.c:2143 config/avr/avr.c:2315
-#: config/avr/avr.c:2613 config/avr/avr.c:2724
+#: config/avr/avr.c:1778 config/avr/avr.c:1861 config/avr/avr.c:1910
+#: config/avr/avr.c:1919 config/avr/avr.c:2014 config/avr/avr.c:2183
+#: config/avr/avr.c:2439 config/avr/avr.c:2547
#, fuzzy
msgid "incorrect insn:"
msgstr "ëÜèïò óõíèçìáôéêü"
-#: config/avr/avr.c:2064 config/avr/avr.c:2228 config/avr/avr.c:2386
-#: config/avr/avr.c:2768
+#: config/avr/avr.c:1938 config/avr/avr.c:2099 config/avr/avr.c:2254
+#: config/avr/avr.c:2591
#, fuzzy
msgid "unknown move insn:"
msgstr "Üãíùóôï óåô `%s'"
-#: config/avr/avr.c:3003
+#: config/avr/avr.c:2814
msgid "bad shift insn:"
msgstr ""
-#: config/avr/avr.c:3119 config/avr/avr.c:3549 config/avr/avr.c:3929
+#: config/avr/avr.c:2927 config/avr/avr.c:3348 config/avr/avr.c:3719
msgid "internal compiler error. Incorrect shift:"
msgstr ""
-#: config/avr/avr.c:4767 config/ip2k/ip2k.c:3197
+#: config/avr/avr.c:4532 config/ip2k/ip2k.c:3144
msgid "only initialized variables can be placed into program memory area"
msgstr ""
-#: config/avr/avr.c:4866
+#: config/avr/avr.c:4626
msgid "only uninitialized variables can be placed in the .noinit section"
msgstr ""
-#: config/avr/avr.c:4881
+#: config/avr/avr.c:4640
#, fuzzy, c-format
msgid "MCU `%s' supported for assembler only"
msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
-#: config/avr/avr.h:78
+#: config/avr/avr.h:73
msgid "Assume int to be 8 bit integer"
msgstr ""
-#: config/avr/avr.h:80
+#: config/avr/avr.h:75
msgid "Change the stack pointer without disabling interrupts"
msgstr ""
-#: config/avr/avr.h:82
+#: config/avr/avr.h:77
msgid "Use subroutines for function prologue/epilogue"
msgstr ""
-#: config/avr/avr.h:84
+#: config/avr/avr.h:79
msgid "Change only the low 8 bits of the stack pointer"
msgstr ""
-#: config/avr/avr.h:86
+#: config/avr/avr.h:81
msgid "Do not generate tablejump insns"
msgstr ""
-#: config/avr/avr.h:88
+#: config/avr/avr.h:83
msgid "Use rjmp/rcall (limited range) on >8K devices"
msgstr ""
-#: config/avr/avr.h:91
+#: config/avr/avr.h:85
msgid "Output instruction sizes to the asm file"
msgstr ""
-#: config/avr/avr.h:108
+#: config/avr/avr.h:102
msgid "Specify the initial stack address"
msgstr ""
-#: config/avr/avr.h:109
+#: config/avr/avr.h:103
#, fuzzy
msgid "Specify the MCU name"
msgstr "Ïñéóìüò ïíüìáôïò ðñïãñÜììáôïò"
@@ -9147,143 +8338,138 @@ msgstr "Ïñéóìüò ïíüìáôïò ðñïãñÜììáôïò"
#. For instance, the SH target has only positive offsets in
#. addresses. Thus sorting to put the smallest address first allows
#. the most combinations to be found.
-#: config/avr/avr.h:2450
+#: config/avr/avr.h:2267
#, fuzzy
msgid "trampolines not supported"
msgstr "Ç ëåéôïõñãßá äåí õðïóôçñßæåôáé"
-#: config/c4x/c4x-c.c:69
+#: config/c4x/c4x-c.c:71
#, c-format
msgid "missing '(' after '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:72
+#: config/c4x/c4x-c.c:74
#, c-format
msgid "missing function name in '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:77
+#: config/c4x/c4x-c.c:79
#, fuzzy, c-format
msgid "malformed '#pragma %s' - ignored"
msgstr "êáêïäéáìïñöùìÝíç ãñáììÞ áãíïÞèçêå"
-#: config/c4x/c4x-c.c:79
+#: config/c4x/c4x-c.c:81
#, c-format
msgid "missing section name in '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:84
+#: config/c4x/c4x-c.c:86
#, c-format
msgid "missing ')' for '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:87
+#: config/c4x/c4x-c.c:89
#, c-format
msgid "junk at end of '#pragma %s'"
msgstr ""
-#: config/c4x/c4x.c:280
+#: config/c4x/c4x.c:300
#, c-format
msgid "unknown CPU version %d, using 40.\n"
msgstr ""
-#: config/c4x/c4x.c:853
+#: config/c4x/c4x.c:850
#, c-format
msgid "ISR %s requires %d words of local vars, max is 32767"
msgstr ""
-#: config/c4x/c4x.c:1602
+#: config/c4x/c4x.c:1571
msgid "using CONST_DOUBLE for address"
msgstr ""
-#: config/c4x/c4x.c:1742
+#: config/c4x/c4x.c:1709
msgid "c4x_address_cost: Invalid addressing mode"
msgstr ""
-#: config/c4x/c4x.c:1884
+#: config/c4x/c4x.c:1844
#, c-format
msgid "c4x_print_operand: %%L inconsistency"
msgstr ""
-#: config/c4x/c4x.c:1890
+#: config/c4x/c4x.c:1850
#, c-format
msgid "c4x_print_operand: %%N inconsistency"
msgstr ""
-#: config/c4x/c4x.c:1931
+#: config/c4x/c4x.c:1891
#, c-format
msgid "c4x_print_operand: %%O inconsistency"
msgstr ""
-#: config/c4x/c4x.c:2026
+#: config/c4x/c4x.c:1986
msgid "c4x_print_operand: Bad operand case"
msgstr ""
-#: config/c4x/c4x.c:2069
+#: config/c4x/c4x.c:2027
msgid "c4x_print_operand_address: Bad post_modify"
msgstr ""
-#: config/c4x/c4x.c:2091
+#: config/c4x/c4x.c:2049
msgid "c4x_print_operand_address: Bad pre_modify"
msgstr ""
-#: config/c4x/c4x.c:2139 config/c4x/c4x.c:2151 config/c4x/c4x.c:2166
+#: config/c4x/c4x.c:2097 config/c4x/c4x.c:2109 config/c4x/c4x.c:2124
msgid "c4x_print_operand_address: Bad operand case"
msgstr ""
-#: config/c4x/c4x.c:2422
+#: config/c4x/c4x.c:2375
msgid "c4x_rptb_insert: Cannot find start label"
msgstr ""
-#: config/c4x/c4x.c:3409 config/c4x/c4x.c:3429
+#: config/c4x/c4x.c:3292 config/c4x/c4x.c:3310
#, fuzzy
msgid "mode not QImode"
msgstr "íåá_êáôÜóôáóç: êáôÜóôáóç ëåéôïõñãßáò\n"
-#: config/c4x/c4x.c:3514
+#: config/c4x/c4x.c:3380
#, fuzzy
msgid "invalid indirect memory address"
msgstr "ìç Ýãêõñïò ÷ñüíïò ëÞîçò"
-#: config/c4x/c4x.c:3603
+#: config/c4x/c4x.c:3469
msgid "invalid indirect (S) memory address"
msgstr ""
-#: config/c4x/c4x.c:3944
+#: config/c4x/c4x.c:3797
msgid "c4x_valid_operands: Internal error"
msgstr ""
-#: config/c4x/c4x.c:4424
+#: config/c4x/c4x.c:4216
msgid "c4x_operand_subword: invalid mode"
msgstr ""
-#: config/c4x/c4x.c:4427
+#: config/c4x/c4x.c:4219
msgid "c4x_operand_subword: invalid operand"
msgstr ""
#. We could handle these with some difficulty.
#. e.g., *p-- => *(p-=2); *(p+1).
-#: config/c4x/c4x.c:4453
+#: config/c4x/c4x.c:4245
msgid "c4x_operand_subword: invalid autoincrement"
msgstr ""
-#: config/c4x/c4x.c:4459
+#: config/c4x/c4x.c:4251
msgid "c4x_operand_subword: invalid address"
msgstr ""
-#: config/c4x/c4x.c:4470
+#: config/c4x/c4x.c:4262
msgid "c4x_operand_subword: address not offsettable"
msgstr ""
-#: config/c4x/c4x.c:4670
+#: config/c4x/c4x.c:4472
msgid "c4x_rptb_rpts_p: Repeat block top label moved\n"
msgstr ""
-#. Name of the c4x assembler.
-#. Name of the c4x linker.
-#. Define assembler options.
-#. Define linker options.
-#. Specify the end file to link with.
#. Target compilation option flags.
#. Small memory model.
#. Use 24-bit MPYI for C3x.
@@ -9505,177 +8691,177 @@ msgstr ""
msgid "Select CPU to generate code for"
msgstr ""
-#: config/cris/cris.c:599
+#: config/cris/cris.c:597
msgid "unexpected index-type in cris_print_index"
msgstr ""
-#: config/cris/cris.c:615
+#: config/cris/cris.c:611
msgid "unexpected base-type in cris_print_base"
msgstr ""
-#: config/cris/cris.c:908
+#: config/cris/cris.c:904
#, c-format
msgid "stackframe too big: %d bytes"
msgstr ""
-#: config/cris/cris.c:1223
+#: config/cris/cris.c:1215
msgid "allocated but unused delay list in epilogue"
msgstr ""
-#: config/cris/cris.c:1233
+#: config/cris/cris.c:1225
msgid "unexpected function type needing stack adjustment for __builtin_eh_return"
msgstr ""
-#: config/cris/cris.c:1312
+#: config/cris/cris.c:1301
#, fuzzy
msgid "invalid operand for 'b' modifier"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/cris/cris.c:1324
+#: config/cris/cris.c:1314
#, fuzzy
msgid "invalid operand for 'v' modifier"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/cris/cris.c:1334
+#: config/cris/cris.c:1324
#, fuzzy
msgid "invalid operand for 'P' modifier"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/cris/cris.c:1341
+#: config/cris/cris.c:1331
#, fuzzy
msgid "invalid operand for 'p' modifier"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/cris/cris.c:1380
+#: config/cris/cris.c:1370
#, fuzzy
msgid "invalid operand for 'z' modifier"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/cris/cris.c:1411 config/cris/cris.c:1441
+#: config/cris/cris.c:1401 config/cris/cris.c:1431
#, fuzzy
msgid "invalid operand for 'H' modifier"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/cris/cris.c:1417
+#: config/cris/cris.c:1407
#, fuzzy
msgid "bad register"
msgstr "Äåí åßíáé äõíáôÞ ç êáôá÷þñçóç ôçò õðçñåóßáò"
-#: config/cris/cris.c:1455
+#: config/cris/cris.c:1445
#, fuzzy
msgid "invalid operand for 'e' modifier"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/cris/cris.c:1472
+#: config/cris/cris.c:1462
#, fuzzy
msgid "invalid operand for 'm' modifier"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/cris/cris.c:1497
+#: config/cris/cris.c:1487
#, fuzzy
msgid "invalid operand for 'A' modifier"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/cris/cris.c:1505
+#: config/cris/cris.c:1495
#, fuzzy
msgid "invalid operand for 'D' modifier"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/cris/cris.c:1519
+#: config/cris/cris.c:1509
#, fuzzy
msgid "invalid operand for 'T' modifier"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/cris/cris.c:1528
+#: config/cris/cris.c:1518
#, fuzzy
msgid "invalid operand modifier letter"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/cris/cris.c:1536
+#: config/cris/cris.c:1526
#, fuzzy, c-format
msgid "internal error: bad register: %d"
msgstr "åóùôåñéêü óöÜëìá óôï %s, ãñáììÞ %u"
-#: config/cris/cris.c:1584
+#: config/cris/cris.c:1574
msgid "unexpected multiplicative operand"
msgstr ""
-#: config/cris/cris.c:1604
+#: config/cris/cris.c:1594
#, fuzzy
msgid "unexpected operand"
msgstr "Ìç ïñéóìÝíï üíïìá %s"
# src/request.c:806 src/request.c:912
-#: config/cris/cris.c:1639 config/cris/cris.c:1649
+#: config/cris/cris.c:1627 config/cris/cris.c:1637
#, fuzzy
msgid "unrecognized address"
msgstr "Ìç áíáãíùñßóçìï üíïìá åðéöÜíåéáò `%s'"
-#: config/cris/cris.c:2005
+#: config/cris/cris.c:1987
msgid "internal error: sideeffect-insn affecting main effect"
msgstr ""
#. If we get here, the caller got its initial tests wrong.
-#: config/cris/cris.c:2292
+#: config/cris/cris.c:2380
msgid "internal error: cris_side_effect_mode_ok with bad operands"
msgstr ""
-#: config/cris/cris.c:2374 config/cris/cris.c:2432
+#: config/cris/cris.c:2457 config/cris/cris.c:2519
#, fuzzy
msgid "unrecognized supposed constant"
msgstr "Üãíùóôï ðñüèåìá: %s"
-#: config/cris/cris.c:2473
+#: config/cris/cris.c:2564
msgid "unrecognized supposed constant in cris_global_pic_symbol"
msgstr ""
-#: config/cris/cris.c:2492
+#: config/cris/cris.c:2583
#, c-format
msgid "-max-stackframe=%d is not usable, not between 0 and %d"
msgstr ""
-#: config/cris/cris.c:2520
+#: config/cris/cris.c:2611
#, c-format
msgid "unknown CRIS version specification in -march= or -mcpu= : %s"
msgstr ""
-#: config/cris/cris.c:2556
+#: config/cris/cris.c:2647
#, fuzzy, c-format
msgid "unknown CRIS cpu version specification in -mtune= : %s"
msgstr "ðÜñá ðïëëÝò äçëþóåéò ìåôáôñïðÞò óôçí êáôÜëçîç"
-#: config/cris/cris.c:2574
+#: config/cris/cris.c:2665
#, fuzzy
msgid "-fPIC and -fpic are not supported in this configuration"
msgstr "Ç ïéêïãÝíåéá äéåõèýíóåùí äåí õðïóôçñßæåôáé áðü ôçí ïéêïãÝíåéá ðñùôïêüëëïõ"
-#: config/cris/cris.c:2590
+#: config/cris/cris.c:2681
msgid "that particular -g option is invalid with -maout and -melinux"
msgstr ""
-#: config/cris/cris.c:2824 config/cris/cris.c:2869
+#: config/cris/cris.c:2936 config/cris/cris.c:2981
msgid "unexpected side-effects in address"
msgstr ""
#. Labels are never marked as global symbols.
-#: config/cris/cris.c:2966 config/cris/cris.c:2997
+#: config/cris/cris.c:3076 config/cris/cris.c:3107
msgid "unexpected PIC symbol"
msgstr ""
-#: config/cris/cris.c:2970
+#: config/cris/cris.c:3080
msgid "PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:2983 config/cris/cris.c:3066
+#: config/cris/cris.c:3093 config/cris/cris.c:3176
#, fuzzy
msgid "unexpected address expression"
msgstr "Ìç Ýãêõñç ðñïðïñåõüìåíç êáíïíéêÞ Ýêöñáóç"
-#: config/cris/cris.c:3001
+#: config/cris/cris.c:3111
msgid "emitting PIC operand, but PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:3010
+#: config/cris/cris.c:3120
msgid "unexpected NOTE as addr_const:"
msgstr ""
@@ -9688,219 +8874,219 @@ msgid "For elinux, request a specified stack-size for this program"
msgstr ""
#. No "no-etrax" as it does not really imply any model. On the other hand, "etrax" implies the common (and large) subset matching all models.
-#: config/cris/cris.h:340
+#: config/cris/cris.h:334
msgid "Compile for ETRAX 4 (CRIS v3)"
msgstr ""
-#: config/cris/cris.h:345
+#: config/cris/cris.h:339
msgid "Compile for ETRAX 100 (CRIS v8)"
msgstr ""
-#: config/cris/cris.h:349
+#: config/cris/cris.h:343
msgid "Emit verbose debug information in assembly code"
msgstr ""
-#: config/cris/cris.h:352
+#: config/cris/cris.h:346
msgid "Do not use condition codes from normal instructions"
msgstr ""
-#: config/cris/cris.h:356
+#: config/cris/cris.h:350
msgid "Do not emit addressing modes with side-effect assignment"
msgstr ""
-#: config/cris/cris.h:359
+#: config/cris/cris.h:353
msgid "Do not tune stack alignment"
msgstr ""
-#: config/cris/cris.h:362
+#: config/cris/cris.h:356
msgid "Do not tune writable data alignment"
msgstr ""
-#: config/cris/cris.h:365
+#: config/cris/cris.h:359
msgid "Do not tune code and read-only data alignment"
msgstr ""
-#: config/cris/cris.h:374
+#: config/cris/cris.h:368
msgid "Align code and data to 32 bits"
msgstr ""
-#: config/cris/cris.h:387
+#: config/cris/cris.h:381
msgid "Don't align items in code or data"
msgstr ""
-#: config/cris/cris.h:390
+#: config/cris/cris.h:384
msgid "Do not emit function prologue or epilogue"
msgstr ""
#. We have to handle this m-option here since we can't wash it off in both CC1_SPEC and CC1PLUS_SPEC.
-#: config/cris/cris.h:394
+#: config/cris/cris.h:388
msgid "Use the most feature-enabling options allowed by other options"
msgstr ""
#. We must call it "override-" since calling it "no-" will cause gcc.c to forget it, if there's a "later" -mbest-lib-options. Kludgy, but needed for some multilibbed files.
-#: config/cris/cris.h:400
+#: config/cris/cris.h:394
msgid "Override -mbest-lib-options"
msgstr ""
-#: config/cris/cris.h:432
+#: config/cris/cris.h:426
msgid "Generate code for the specified chip or CPU version"
msgstr ""
-#: config/cris/cris.h:434
+#: config/cris/cris.h:428
msgid "Tune alignment for the specified chip or CPU version"
msgstr ""
-#: config/cris/cris.h:436
+#: config/cris/cris.h:430
msgid "Warn when a stackframe is larger than the specified size"
msgstr ""
#. Node: Profiling
-#: config/cris/cris.h:1022
+#: config/cris/cris.h:1016
msgid "no FUNCTION_PROFILER for CRIS"
msgstr ""
-#: config/cris/linux.h:71
+#: config/cris/linux.h:69
msgid "Together with -fpic and -fPIC, do not use GOTPLT references"
msgstr ""
-#: config/d30v/d30v.c:207
+#: config/d30v/d30v.c:218
#, c-format
msgid "bad modes_tieable_p for register %s, mode1 %s, mode2 %s"
msgstr ""
-#: config/d30v/d30v.c:2666
+#: config/d30v/d30v.c:2678
msgid "bad insn to d30v_print_operand_address:"
msgstr ""
-#: config/d30v/d30v.c:2683 config/d30v/d30v.c:2744 config/d30v/d30v.c:2765
-#: config/d30v/d30v.c:2783
+#: config/d30v/d30v.c:2695 config/d30v/d30v.c:2756 config/d30v/d30v.c:2777
+#: config/d30v/d30v.c:2795
msgid "bad insn to d30v_print_operand_memory_reference:"
msgstr ""
-#: config/d30v/d30v.c:2851
+#: config/d30v/d30v.c:2863
msgid "bad insn to d30v_print_operand, 'f' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2860
+#: config/d30v/d30v.c:2872
msgid "bad insn to d30v_print_operand, 'A' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2867
+#: config/d30v/d30v.c:2879
msgid "bad insn to d30v_print_operand, 'M' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2921
+#: config/d30v/d30v.c:2933
msgid "bad insn to print_operand, 'F' or 'T' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2932
+#: config/d30v/d30v.c:2944
msgid "bad insn to print_operand, 'B' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2939
+#: config/d30v/d30v.c:2951
msgid "bad insn to print_operand, 'E' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2957
+#: config/d30v/d30v.c:2969
msgid "bad insn to print_operand, 'R' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2966 config/d30v/d30v.c:2974
+#: config/d30v/d30v.c:2978 config/d30v/d30v.c:2986
msgid "bad insn to print_operand, 's' modifier:"
msgstr ""
-#: config/d30v/d30v.c:3003
+#: config/d30v/d30v.c:3015
msgid "bad insn in d30v_print_operand, 0 case"
msgstr ""
-#: config/d30v/d30v.c:3301
+#: config/d30v/d30v.c:3313
msgid "d30v_emit_comparison"
msgstr ""
-#: config/d30v/d30v.c:3345
+#: config/d30v/d30v.c:3357
msgid "bad call to d30v_move_2words"
msgstr ""
-#: config/d30v/d30v.h:114
+#: config/d30v/d30v.h:111
msgid "Enable use of conditional move instructions"
msgstr ""
-#: config/d30v/d30v.h:117
+#: config/d30v/d30v.h:114
msgid "Disable use of conditional move instructions"
msgstr ""
-#: config/d30v/d30v.h:120
+#: config/d30v/d30v.h:117
#, fuzzy
msgid "Debug argument support in compiler"
msgstr "%s: ç õðïóôÞñéîç åêóöáëìÜôùóçò äåí Ý÷åé óõìðåñéëçöèåß óôç ìåôáãëþôôéóç.\n"
-#: config/d30v/d30v.h:123
+#: config/d30v/d30v.h:120
#, fuzzy
msgid "Debug stack support in compiler"
msgstr "%s: ç õðïóôÞñéîç åêóöáëìÜôùóçò äåí Ý÷åé óõìðåñéëçöèåß óôç ìåôáãëþôôéóç.\n"
-#: config/d30v/d30v.h:126
+#: config/d30v/d30v.h:123
msgid "Debug memory address support in compiler"
msgstr ""
-#: config/d30v/d30v.h:129
+#: config/d30v/d30v.h:126
msgid "Make adjacent short instructions parallel if possible"
msgstr ""
-#: config/d30v/d30v.h:132
+#: config/d30v/d30v.h:129
msgid "Do not make adjacent short instructions parallel"
msgstr ""
-#: config/d30v/d30v.h:135 config/d30v/d30v.h:138
+#: config/d30v/d30v.h:132 config/d30v/d30v.h:135
msgid "Link programs/data to be in external memory by default"
msgstr ""
-#: config/d30v/d30v.h:141
+#: config/d30v/d30v.h:138
msgid "Link programs/data to be in onchip memory by default"
msgstr ""
-#: config/d30v/d30v.h:149
+#: config/d30v/d30v.h:146
msgid "Change the branch costs within the compiler"
msgstr ""
-#: config/d30v/d30v.h:152
+#: config/d30v/d30v.h:149
msgid "Change the threshold for conversion to conditional execution"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1446 config/dsp16xx/dsp16xx.c:1469
+#: config/dsp16xx/dsp16xx.c:1463 config/dsp16xx/dsp16xx.c:1486
msgid "stack size > 32k"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1678
+#: config/dsp16xx/dsp16xx.c:1695
#, fuzzy
msgid "invalid addressing mode"
msgstr "ÁêáôÜëëçëç ÷ñÞóç ôïõ äéáìïñöùôÞ äéåýèõíóçò"
-#: config/dsp16xx/dsp16xx.c:1821
+#: config/dsp16xx/dsp16xx.c:1838
#, fuzzy
msgid "bad register extension code"
msgstr "Äåí åßíáé äõíáôÞ ç êáôá÷þñçóç ôçò õðçñåóßáò"
-#: config/dsp16xx/dsp16xx.c:1921
+#: config/dsp16xx/dsp16xx.c:1938
#, fuzzy
msgid "invalid offset in ybase addressing"
msgstr "ìç Ýãêõñïò ÷ñüíïò Ýíáñîçò"
-#: config/dsp16xx/dsp16xx.c:1924
+#: config/dsp16xx/dsp16xx.c:1941
#, fuzzy
msgid "invalid register in ybase addressing"
msgstr "ìç Ýãêõñïò ÷ñüíïò Ýíáñîçò"
-#: config/dsp16xx/dsp16xx.c:2099
+#: config/dsp16xx/dsp16xx.c:2116
msgid "invalid shift operator in emit_1600_core_shift"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:2428
+#: config/dsp16xx/dsp16xx.c:2406
#, fuzzy
msgid "invalid mode for gen_tst_reg"
msgstr "ìç Ýãêõñç êáôÜóôáóç ãéá ôçí dlopen()"
-#: config/dsp16xx/dsp16xx.c:2500
+#: config/dsp16xx/dsp16xx.c:2478
msgid "invalid mode for integer comparison in gen_compare_reg"
msgstr ""
@@ -9997,8 +9183,12 @@ msgstr ""
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/dsp16xx/dsp16xx.h:1218 config/dsp16xx/dsp16xx.h:1772
-#: config/dsp16xx/dsp16xx.h:1777
+#. This is how to output an insn to push a register on the stack.
+#. It need not be very fast code since it is used only for profiling
+#. This is how to output an insn to pop a register from the stack.
+#. It need not be very fast code since it is used only for profiling
+#: config/dsp16xx/dsp16xx.h:1216 config/dsp16xx/dsp16xx.h:1667
+#: config/dsp16xx/dsp16xx.h:1672
#, fuzzy
msgid "profiling not implemented yet"
msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
@@ -10006,51 +9196,51 @@ msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
#. Emit RTL insns to initialize the variable parts of a trampoline.
#. FNADDR is an RTX for the address of the function's pure code.
#. CXT is an RTX for the static chain value for the function.
-#: config/dsp16xx/dsp16xx.h:1228 config/dsp16xx/dsp16xx.h:1240
+#: config/dsp16xx/dsp16xx.h:1226 config/dsp16xx/dsp16xx.h:1238
#, fuzzy
msgid "trampolines not yet implemented"
msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
-#: config/fr30/fr30.c:453
+#: config/fr30/fr30.c:451
msgid "fr30_print_operand_address: unhandled address"
msgstr ""
-#: config/fr30/fr30.c:480
+#: config/fr30/fr30.c:475
#, c-format
msgid "fr30_print_operand: unrecognized %%p code"
msgstr ""
-#: config/fr30/fr30.c:500
+#: config/fr30/fr30.c:495
#, c-format
msgid "fr30_print_operand: unrecognized %%b code"
msgstr ""
-#: config/fr30/fr30.c:521
+#: config/fr30/fr30.c:516
#, c-format
msgid "fr30_print_operand: unrecognized %%B code"
msgstr ""
-#: config/fr30/fr30.c:529
+#: config/fr30/fr30.c:524
#, fuzzy, c-format
msgid "fr30_print_operand: invalid operand to %%A code"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/fr30/fr30.c:546
+#: config/fr30/fr30.c:541
#, fuzzy, c-format
msgid "fr30_print_operand: invalid %%x code"
msgstr "ìç Ýãêõñï äéêáßùìá"
-#: config/fr30/fr30.c:553
+#: config/fr30/fr30.c:548
#, c-format
msgid "fr30_print_operand: invalid %%F code"
msgstr ""
-#: config/fr30/fr30.c:570
+#: config/fr30/fr30.c:565
msgid "fr30_print_operand: unknown code"
msgstr ""
-#: config/fr30/fr30.c:599 config/fr30/fr30.c:608 config/fr30/fr30.c:619
-#: config/fr30/fr30.c:632
+#: config/fr30/fr30.c:594 config/fr30/fr30.c:603 config/fr30/fr30.c:614
+#: config/fr30/fr30.c:627
msgid "fr30_print_operand: unhandled MEM"
msgstr ""
@@ -10058,147 +9248,147 @@ msgstr ""
msgid "Assume small address space"
msgstr ""
-#: config/frv/frv.c:410 config/frv/frv.c:428
+#: config/frv/frv.c:392 config/frv/frv.c:410
#, c-format
msgid "Unknown cpu: -mcpu=%s"
msgstr ""
-#: config/frv/frv.c:451
+#: config/frv/frv.c:433
msgid "-fpic and -gdwarf are incompatible (-fpic and -g/-gdwarf-2 are fine)"
msgstr ""
-#: config/frv/frv.c:2520
+#: config/frv/frv.c:2397
msgid "Bad insn to frv_print_operand_address:"
msgstr ""
-#: config/frv/frv.c:2533
+#: config/frv/frv.c:2408
msgid "Bad register to frv_print_operand_memory_reference_reg:"
msgstr ""
-#: config/frv/frv.c:2574 config/frv/frv.c:2584 config/frv/frv.c:2593
-#: config/frv/frv.c:2621 config/frv/frv.c:2633 config/frv/frv.c:2637
+#: config/frv/frv.c:2446 config/frv/frv.c:2456 config/frv/frv.c:2465
+#: config/frv/frv.c:2493 config/frv/frv.c:2506 config/frv/frv.c:2510
msgid "Bad insn to frv_print_operand_memory_reference:"
msgstr ""
-#: config/frv/frv.c:2779
+#: config/frv/frv.c:2648
msgid "Bad insn in frv_print_operand, bad const_double"
msgstr ""
-#: config/frv/frv.c:2824
+#: config/frv/frv.c:2693
#, fuzzy
msgid "Bad insn to frv_print_operand, 'C' modifier:"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/frv/frv.c:2847
+#: config/frv/frv.c:2716
#, fuzzy
msgid "Bad insn to frv_print_operand, 'c' modifier:"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/frv/frv.c:2872
+#: config/frv/frv.c:2741
#, fuzzy
msgid "Bad insn to frv_print_operand, 'e' modifier:"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/frv/frv.c:2880
+#: config/frv/frv.c:2749
#, fuzzy
msgid "Bad insn to frv_print_operand, 'F' modifier:"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/frv/frv.c:2896
+#: config/frv/frv.c:2765
#, fuzzy
msgid "Bad insn to frv_print_operand, 'f' modifier:"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/frv/frv.c:2949
+#: config/frv/frv.c:2818
#, fuzzy
msgid "Bad insn to frv_print_operand, 'L' modifier:"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/frv/frv.c:2962
+#: config/frv/frv.c:2831
msgid "Bad insn to frv_print_operand, 'M/N' modifier:"
msgstr ""
-#: config/frv/frv.c:2983
+#: config/frv/frv.c:2852
#, fuzzy
msgid "Bad insn to frv_print_operand, 'O' modifier:"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/frv/frv.c:3001
+#: config/frv/frv.c:2870
msgid "Bad insn to frv_print_operand, P modifier:"
msgstr ""
-#: config/frv/frv.c:3021
+#: config/frv/frv.c:2890
msgid "Bad insn in frv_print_operand, z case"
msgstr ""
-#: config/frv/frv.c:3049
+#: config/frv/frv.c:2918
msgid "Bad insn in frv_print_operand, 0 case"
msgstr ""
-#: config/frv/frv.c:3054
+#: config/frv/frv.c:2923
#, fuzzy
msgid "frv_print_operand: unknown code"
msgstr "ìç Ýãêõñï äéêáßùìá"
-#: config/frv/frv.c:5737
+#: config/frv/frv.c:5474
#, fuzzy
msgid "Bad output_move_single operand"
msgstr "áñ÷åßï åîüäïõ"
-#: config/frv/frv.c:5866
+#: config/frv/frv.c:5601
msgid "Bad output_move_double operand"
msgstr ""
-#: config/frv/frv.c:6010
+#: config/frv/frv.c:5743
#, fuzzy
msgid "Bad output_condmove_single operand"
msgstr "áñ÷åßï åîüäïõ"
-#: config/frv/frv.c:8315
+#: config/frv/frv.c:8031
msgid "frv_registers_update"
msgstr ""
-#: config/frv/frv.c:8475
+#: config/frv/frv.c:8188
msgid "frv_registers_used_p"
msgstr ""
-#: config/frv/frv.c:8604
+#: config/frv/frv.c:8314
msgid "frv_registers_set_p"
msgstr ""
-#: config/frv/frv.c:9171
+#: config/frv/frv.c:8910
#, fuzzy
msgid "accumulator is not a constant integer"
msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-#: config/frv/frv.c:9176
+#: config/frv/frv.c:8915
msgid "accumulator number is out of bounds"
msgstr ""
-#: config/frv/frv.c:9187
+#: config/frv/frv.c:8926
#, c-format
msgid "inappropriate accumulator for `%s'"
msgstr ""
-#: config/frv/frv.c:9253
+#: config/frv/frv.c:8986
#, c-format
msgid "`%s' expects a constant argument"
msgstr ""
-#: config/frv/frv.c:9258
+#: config/frv/frv.c:8991
#, fuzzy, c-format
msgid "constant argument out of range for `%s'"
msgstr "ðÜñá ðïëëÜ ïñßóìáôá óôç ñïõôßíá `%s'"
-#: config/frv/frv.c:9638
+#: config/frv/frv.c:9338
msgid "media functions are not available unless -mmedia is used"
msgstr ""
-#: config/frv/frv.c:9650
+#: config/frv/frv.c:9350
msgid "this media function is only available on the fr500"
msgstr ""
-#: config/frv/frv.c:9678
+#: config/frv/frv.c:9378
msgid "this media function is only available on the fr400"
msgstr ""
@@ -10211,15 +9401,16 @@ msgstr ""
#. #else
#. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)");
#. #endif
-#: config/frv/frv.h:512
+#: config/frv/frv.h:506
+#, c-format
msgid " (frv)"
msgstr ""
-#: config/h8300/h8300.c:314
+#: config/h8300/h8300.c:288
msgid "-ms2600 is used without -ms"
msgstr ""
-#: config/h8300/h8300.c:320
+#: config/h8300/h8300.c:294
msgid "-mn is used without -mh or -ms"
msgstr ""
@@ -10228,78 +9419,78 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/h8300/h8300.h:150
+#: config/h8300/h8300.h:145
msgid "Generate H8S code"
msgstr ""
-#: config/h8300/h8300.h:151
+#: config/h8300/h8300.h:146
msgid "Do not generate H8S code"
msgstr ""
-#: config/h8300/h8300.h:152
+#: config/h8300/h8300.h:147
msgid "Generate H8S/2600 code"
msgstr ""
-#: config/h8300/h8300.h:153
+#: config/h8300/h8300.h:148
msgid "Do not generate H8S/2600 code"
msgstr ""
-#: config/h8300/h8300.h:154
+#: config/h8300/h8300.h:149
msgid "Make integers 32 bits wide"
msgstr ""
-#: config/h8300/h8300.h:157
+#: config/h8300/h8300.h:152
#, fuzzy
msgid "Use registers for argument passing"
msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-#: config/h8300/h8300.h:159
+#: config/h8300/h8300.h:154
msgid "Do not use registers for argument passing"
msgstr ""
-#: config/h8300/h8300.h:161
+#: config/h8300/h8300.h:156
msgid "Consider access to byte sized memory slow"
msgstr ""
-#: config/h8300/h8300.h:162
+#: config/h8300/h8300.h:157
msgid "Enable linker relaxing"
msgstr ""
-#: config/h8300/h8300.h:164
+#: config/h8300/h8300.h:158
msgid "Generate H8/300H code"
msgstr ""
-#: config/h8300/h8300.h:165
+#: config/h8300/h8300.h:159
#, fuzzy
msgid "Enable the normal mode"
msgstr "ìçäåíéóìÝíç åããñáöÞ êáé ãñÜøéìï ðÜíù óå áõôÞ (truncated)"
-#: config/h8300/h8300.h:166
+#: config/h8300/h8300.h:160
msgid "Do not generate H8/300H code"
msgstr ""
-#: config/h8300/h8300.h:167
+#: config/h8300/h8300.h:161
msgid "Use H8/300 alignment rules"
msgstr ""
-#: config/i370/i370-c.c:53
+#: config/i370/i370-c.c:55
msgid "junk at end of #pragma map"
msgstr ""
-#: config/i370/i370-c.c:59
+#: config/i370/i370-c.c:61
#, fuzzy
msgid "malformed #pragma map, ignored"
msgstr "êáêïäéáìïñöùìÝíç ãñáììÞ áãíïÞèçêå"
-#: config/i370/i370.c:915
+#: config/i370/i370.c:784
msgid "real name is too long - alias ignored"
msgstr ""
-#: config/i370/i370.c:920
+#: config/i370/i370.c:789
msgid "alias name is too long - alias ignored"
msgstr ""
-#: config/i370/i370.c:1191
+#: config/i370/i370.c:1060
msgid "internal error--no jump follows compare:"
msgstr ""
@@ -10316,414 +9507,461 @@ msgstr "ÁêáôÜëëçëç åíôïëÞ"
msgid "Do not generate char instructions"
msgstr ""
-#: config/i386/i386.c:1050
+#: config/i386/i386.c:1161
#, c-format
msgid "code model %s not supported in PIC mode"
msgstr ""
-#: config/i386/i386.c:1060 config/sparc/sparc.c:356
+#: config/i386/i386.c:1171 config/sparc/sparc.c:387
#, c-format
msgid "bad value (%s) for -mcmodel= switch"
msgstr ""
-#: config/i386/i386.c:1075
+#: config/i386/i386.c:1186
#, c-format
msgid "bad value (%s) for -masm= switch"
msgstr ""
-#: config/i386/i386.c:1078
+#: config/i386/i386.c:1189
#, c-format
msgid "code model `%s' not supported in the %s bit mode"
msgstr ""
-#: config/i386/i386.c:1081
+#: config/i386/i386.c:1192
#, fuzzy
msgid "code model `large' not supported yet"
msgstr "åéäéêÜ áñ÷åßá ìðëïê äåí õðïóôçñßæïíôáé"
-#: config/i386/i386.c:1083
+#: config/i386/i386.c:1194
#, fuzzy, c-format
msgid "%i-bit mode not compiled in"
msgstr "%s: ç õðïóôÞñéîç åêóöáëìÜôùóçò äåí Ý÷åé óõìðåñéëçöèåß óôç ìåôáãëþôôéóç.\n"
-#: config/i386/i386.c:1113
+#: config/i386/i386.c:1221 config/i386/i386.c:1233
+msgid "CPU you selected does not support x86-64 instruction set"
+msgstr ""
+
+#: config/i386/i386.c:1226 config/iq2000/iq2000.c:1840
#, c-format
msgid "bad value (%s) for -march= switch"
msgstr ""
-#: config/i386/i386.c:1124
+#: config/i386/i386.c:1239
#, c-format
-msgid "bad value (%s) for -mcpu= switch"
+msgid "bad value (%s) for -mtune= switch"
msgstr ""
-#: config/i386/i386.c:1141
+#: config/i386/i386.c:1256
#, c-format
msgid "-mregparm=%d is not between 0 and %d"
msgstr ""
-#: config/i386/i386.c:1154
+#: config/i386/i386.c:1269
msgid "-malign-loops is obsolete, use -falign-loops"
msgstr ""
-#: config/i386/i386.c:1159 config/i386/i386.c:1172 config/i386/i386.c:1185
+#: config/i386/i386.c:1274 config/i386/i386.c:1287 config/i386/i386.c:1300
#, c-format
msgid "-malign-loops=%d is not between 0 and %d"
msgstr ""
-#: config/i386/i386.c:1167
+#: config/i386/i386.c:1282
msgid "-malign-jumps is obsolete, use -falign-jumps"
msgstr ""
-#: config/i386/i386.c:1180
+#: config/i386/i386.c:1295
msgid "-malign-functions is obsolete, use -falign-functions"
msgstr ""
-#: config/i386/i386.c:1218
+#: config/i386/i386.c:1333
#, c-format
msgid "-mpreferred-stack-boundary=%d is not between %d and 12"
msgstr ""
-#: config/i386/i386.c:1230
+#: config/i386/i386.c:1345
#, c-format
msgid "-mbranch-cost=%d is not between 0 and 5"
msgstr ""
-#: config/i386/i386.c:1242
+#: config/i386/i386.c:1357
#, fuzzy, c-format
msgid "bad value (%s) for -mtls-dialect= switch"
msgstr "ÁêáôÜëëçëç ôéìÞ óôï ai_flags"
-#: config/i386/i386.c:1263
+#: config/i386/i386.c:1386
msgid "-malign-double makes no sense in the 64bit mode"
msgstr ""
-#: config/i386/i386.c:1265
+#: config/i386/i386.c:1388
msgid "-mrtd calling convention not supported in the 64bit mode"
msgstr ""
-#: config/i386/i386.c:1281 config/i386/i386.c:1292
+#: config/i386/i386.c:1410 config/i386/i386.c:1421
msgid "SSE instruction set disabled, using 387 arithmetics"
msgstr ""
-#: config/i386/i386.c:1297
+#: config/i386/i386.c:1426
msgid "387 instruction set disabled, using SSE arithmetics"
msgstr ""
-#: config/i386/i386.c:1304
+#: config/i386/i386.c:1433
#, c-format
msgid "bad value (%s) for -mfpmath= switch"
msgstr ""
-#: config/i386/i386.c:1436
+#: config/i386/i386.c:1581 config/i386/i386.c:1592
+msgid "fastcall and stdcall attributes are not compatible"
+msgstr ""
+
+#: config/i386/i386.c:1585 config/i386/i386.c:1641
+msgid "fastcall and regparm attributes are not compatible"
+msgstr ""
+
+#: config/i386/i386.c:1628
#, c-format
msgid "`%s' attribute requires an integer constant argument"
msgstr ""
-#: config/i386/i386.c:1442
+#: config/i386/i386.c:1634
#, fuzzy, c-format
msgid "argument to `%s' attribute larger than %d"
msgstr "%s: ïé ôéìÝò ôïõ ðåäßïõ `%s' äåí ðñÝðåé íá åßíáé ìåãáëýôåñåò áðü %d"
-#: config/i386/i386.c:2504
+#: config/i386/i386.c:2593
+msgid "SSE vector argument without SSE enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2609
+msgid "MMX vector argument without MMX enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2837
msgid "SSE vector return without SSE enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:6386
+#: config/i386/i386.c:6811
#, fuzzy
msgid "invalid UNSPEC as operand"
msgstr "ìç Ýãêõñç ìåôáôüðéóç UTC"
-#: config/i386/i386.c:6648
+#: config/i386/i386.c:7069
msgid "extended registers have no high halves"
msgstr ""
-#: config/i386/i386.c:6663
+#: config/i386/i386.c:7084
msgid "unsupported operand size for extended register"
msgstr ""
-#: config/i386/i386.c:6978
+#: config/i386/i386.c:7399
msgid "operand is neither a constant nor a condition code, invalid operand code 'c'"
msgstr ""
-#: config/i386/i386.c:7024
+#: config/i386/i386.c:7445
#, fuzzy, c-format
msgid "invalid operand code `%c'"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/i386/i386.c:7071
+#: config/i386/i386.c:7488
#, fuzzy
msgid "invalid constraints for operand"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
# src/grep.c:1133
-#: config/i386/i386.c:11271
+#: config/i386/i386.c:11889
#, fuzzy
msgid "unknown insn mode"
msgstr "Üãíùóôç ìÝèïäïò êáôáëüãùí"
-#. @@@ better error message
-#: config/i386/i386.c:13391 config/i386/i386.c:13427
-#, fuzzy
-msgid "selector must be an immediate"
-msgstr "ç ôéìÞ ãéá ôï %s ðñÝðåé íá åßíáé áêÝñáéïò"
-
-#. @@@ better error message
-#: config/i386/i386.c:13588 config/i386/i386.c:13622
-#, fuzzy
-msgid "mask must be an immediate"
+#: config/i386/i386.c:14021 config/i386/i386.c:14057
+#, fuzzy, c-format
+msgid "selector must be an integer constant in the range 0..%i"
msgstr "ç ôéìÞ ãéá ôï %s ðñÝðåé íá åßíáé áêÝñáéïò"
-#: config/i386/i386.c:13654
+#: config/i386/i386.c:14285
#, fuzzy
msgid "shift must be an immediate"
msgstr "ç ôéìÞ ãéá ôï %s ðñÝðåé íá åßíáé áêÝñáéïò"
-#: config/i386/winnt.c:96
-#, c-format
-msgid "function `%s' definition is marked dllimport."
-msgstr ""
+#: config/i386/i386.c:15308
+#, fuzzy, c-format
+msgid "`%s' incompatible attribute ignored"
+msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
#: config/i386/winnt.c:104
-#, c-format
-msgid "variable `%s' definition is marked dllimport."
+msgid "%Jfunction `%D' definition is marked dllimport."
msgstr ""
-#: config/i386/winnt.c:123
-#, c-format
-msgid "external linkage required for symbol '%s' because of '%s' attribute."
+#: config/i386/winnt.c:112
+msgid "%Jvariable `%D' definition is marked dllimport."
+msgstr ""
+
+#: config/i386/winnt.c:132
+msgid "%Jexternal linkage required for symbol '%D' because of '%s' attribute."
msgstr ""
-#: config/i386/winnt.c:143
+#: config/i386/winnt.c:149
#, c-format
msgid "`%s' attribute only applies to variables"
msgstr ""
-#: config/i386/winnt.c:242
-#, c-format
-msgid "function '%s' is defined after prior declaration as dllimport: attribute ignored."
+#: config/i386/winnt.c:247
+msgid "%Jfunction '%D' is defined after prior declaration as dllimport: attribute ignored"
msgstr ""
-#: config/i386/winnt.c:252
-#, c-format
-msgid "inline function '%s' is declared as dllimport: attribute ignored."
+#: config/i386/winnt.c:258
+msgid "%Jinline function '%D' is declared as dllimport: attribute ignored."
msgstr ""
-#: config/i386/winnt.c:263
-#, c-format
-msgid "definition of static data member '%s' of dllimport'd class."
+#: config/i386/winnt.c:270
+msgid "%Jdefinition of static data member '%D' of dllimport'd class."
msgstr ""
-#: config/i386/winnt.c:322
-#, c-format
-msgid "inconsistent dll linkage for '%s': dllexport assumed."
+#: config/i386/winnt.c:329
+msgid "%Jinconsistent dll linkage for '%D', dllexport assumed."
msgstr ""
-#: config/i386/winnt.c:364
+#: config/i386/winnt.c:371
#, c-format
msgid "`%s' declared as both exported to and imported from a DLL"
msgstr ""
-#: config/i386/winnt.c:373
-#, c-format
-msgid "failure in redeclaration of '%s': dllimport'd symbol lacks external linkage."
+#: config/i386/winnt.c:380
+msgid "%Jfailure in redeclaration of '%D': dllimport'd symbol lacks external linkage."
msgstr ""
-#: config/i386/winnt.c:479
-#, c-format
-msgid "'%s' %s after being referenced with dllimport linkage."
+#: config/i386/winnt.c:529
+msgid "%J'%D' defined locally after being referenced with dllimport linkage"
+msgstr ""
+
+#: config/i386/winnt.c:532
+msgid "%J'%D' redeclared without dllimport attribute after being referenced with dllimport linkage"
+msgstr ""
+
+#: config/i386/winnt.c:701
+msgid "%J'%D' causes a section type conflict"
msgstr ""
-#: config/i386/cygwin.h:45
+#: config/i386/cygming.h:40
msgid "Use the Cygwin interface"
msgstr ""
-#: config/i386/cygwin.h:46
+#: config/i386/cygming.h:41
msgid "Use the Mingw32 interface"
msgstr ""
-#: config/i386/cygwin.h:47
+#: config/i386/cygming.h:42
msgid "Create GUI application"
msgstr ""
-#: config/i386/cygwin.h:48
+#: config/i386/cygming.h:43
msgid "Don't set Windows defines"
msgstr ""
-#: config/i386/cygwin.h:49
+#: config/i386/cygming.h:44
msgid "Set Windows defines"
msgstr ""
-#: config/i386/cygwin.h:50
+#: config/i386/cygming.h:45
msgid "Create console application"
msgstr ""
-#: config/i386/cygwin.h:51 config/i386/win32.h:59
+#: config/i386/cygming.h:46
msgid "Generate code for a DLL"
msgstr ""
-#: config/i386/cygwin.h:53 config/i386/win32.h:61
+#: config/i386/cygming.h:48
msgid "Ignore dllimport for functions"
msgstr ""
-#: config/i386/cygwin.h:55
+#: config/i386/cygming.h:50
msgid "Use Mingw-specific thread support"
msgstr ""
-#: config/i386/cygwin.h:245
+#: config/i386/cygming.h:169
#, c-format
msgid "-f%s ignored for target (all code is position independent)"
msgstr ""
-#: config/i386/djgpp.h:206
+#: config/i386/djgpp.h:191
msgid "-mbnu210 is ignored (option is obsolete)"
msgstr ""
+#: config/i386/i386-interix.h:256
+#, fuzzy
+msgid "ms-bitfields not supported for objc"
+msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
+
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
-#: config/i386/i386.h:306
+#: config/i386/i386.h:339
#, fuzzy
msgid "Alternate calling convention"
msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò"
-#: config/i386/i386.h:308 config/m68k/m68k.h:180 config/ns32k/ns32k.h:144
+#: config/i386/i386.h:341 config/m68k/m68k.h:344 config/ns32k/ns32k.h:144
msgid "Use normal calling convention"
msgstr ""
-#: config/i386/i386.h:310
+#: config/i386/i386.h:343
msgid "Align some doubles on dword boundary"
msgstr ""
-#: config/i386/i386.h:312
+#: config/i386/i386.h:345
msgid "Align doubles on word boundary"
msgstr ""
-#: config/i386/i386.h:314
+#: config/i386/i386.h:347
msgid "Uninitialized locals in .bss"
msgstr ""
-#: config/i386/i386.h:316
+#: config/i386/i386.h:349
msgid "Uninitialized locals in .data"
msgstr ""
-#: config/i386/i386.h:318 config/m68k/linux-aout.h:45 config/m68k/linux.h:50
-#: config/ns32k/ns32k.h:167
+#: config/i386/i386.h:351 config/m68k/linux.h:35 config/ns32k/ns32k.h:167
msgid "Use IEEE math for fp comparisons"
msgstr ""
-#: config/i386/i386.h:320 config/ns32k/ns32k.h:169
+#: config/i386/i386.h:353 config/ns32k/ns32k.h:169
msgid "Do not use IEEE math for fp comparisons"
msgstr ""
-#: config/i386/i386.h:322
+#: config/i386/i386.h:355
msgid "Return values of functions in FPU registers"
msgstr ""
-#: config/i386/i386.h:324
+#: config/i386/i386.h:357
msgid "Do not return values of functions in FPU registers"
msgstr ""
-#: config/i386/i386.h:326
+#: config/i386/i386.h:359
msgid "Do not generate sin, cos, sqrt for FPU"
msgstr ""
-#: config/i386/i386.h:328
+#: config/i386/i386.h:361
msgid "Generate sin, cos, sqrt for FPU"
msgstr ""
-#: config/i386/i386.h:330
+#: config/i386/i386.h:363
msgid "Omit the frame pointer in leaf functions"
msgstr ""
-#: config/i386/i386.h:333
+#: config/i386/i386.h:366
msgid "Enable stack probing"
msgstr ""
#. undocumented
#. undocumented
-#: config/i386/i386.h:338
+#: config/i386/i386.h:371
msgid "Align destination of the string operations"
msgstr ""
-#: config/i386/i386.h:340
+#: config/i386/i386.h:373
msgid "Do not align destination of the string operations"
msgstr ""
-#: config/i386/i386.h:342
+#: config/i386/i386.h:375
msgid "Inline all known string operations"
msgstr ""
-#: config/i386/i386.h:344
+#: config/i386/i386.h:377
msgid "Do not inline all known string operations"
msgstr ""
-#: config/i386/i386.h:346 config/i386/i386.h:350
+#: config/i386/i386.h:379 config/i386/i386.h:383
msgid "Use push instructions to save outgoing arguments"
msgstr ""
-#: config/i386/i386.h:348 config/i386/i386.h:352
+#: config/i386/i386.h:381 config/i386/i386.h:385
msgid "Do not use push instructions to save outgoing arguments"
msgstr ""
-#: config/i386/i386.h:354
+#: config/i386/i386.h:387
msgid "Support MMX built-in functions"
msgstr ""
-#: config/i386/i386.h:356
+#: config/i386/i386.h:389
msgid "Do not support MMX built-in functions"
msgstr ""
-#: config/i386/i386.h:358
+#: config/i386/i386.h:391
msgid "Support 3DNow! built-in functions"
msgstr ""
-#: config/i386/i386.h:360
+#: config/i386/i386.h:393
msgid "Do not support 3DNow! built-in functions"
msgstr ""
-#: config/i386/i386.h:362
+#: config/i386/i386.h:395
msgid "Support MMX and SSE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:364
+#: config/i386/i386.h:397
msgid "Do not support MMX and SSE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:366
+#: config/i386/i386.h:399
msgid "Support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:368
+#: config/i386/i386.h:401
msgid "Do not support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:370
+#: config/i386/i386.h:403
+msgid "Support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr ""
+
+#: config/i386/i386.h:405
+msgid "Do not support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr ""
+
+#: config/i386/i386.h:407
msgid "sizeof(long double) is 16"
msgstr ""
-#: config/i386/i386.h:372
+#: config/i386/i386.h:409
msgid "sizeof(long double) is 12"
msgstr ""
-#: config/i386/i386.h:374
+#: config/i386/i386.h:411
msgid "Generate 64bit x86-64 code"
msgstr ""
-#: config/i386/i386.h:376
+#: config/i386/i386.h:413
msgid "Generate 32bit i386 code"
msgstr ""
-#: config/i386/i386.h:378
+#: config/i386/i386.h:415
+msgid "Use native (MS) bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:417
+msgid "Use gcc default bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:419
msgid "Use red-zone in the x86-64 code"
msgstr ""
-#: config/i386/i386.h:380
+#: config/i386/i386.h:421
msgid "Do not use red-zone in the x86-64 code"
msgstr ""
+#: config/i386/i386.h:423
+#, c-format
+msgid "Use direct references against %gs when accessing tls data"
+msgstr ""
+
+#: config/i386/i386.h:425
+#, c-format
+msgid "Do not use direct references against %gs when accessing tls data"
+msgstr ""
+
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10733,23 +9971,24 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:409 config/rs6000/rs6000.h:393 config/sparc/sparc.h:635
+#: config/i386/i386.h:459 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437
+#: config/s390/s390.h:146 config/sparc/sparc.h:650
msgid "Schedule code for given CPU"
msgstr ""
-#: config/i386/i386.h:411
+#: config/i386/i386.h:461
msgid "Generate floating point mathematics using given instruction set"
msgstr ""
-#: config/i386/i386.h:413
+#: config/i386/i386.h:463 config/s390/s390.h:148
msgid "Generate code for given CPU"
msgstr ""
-#: config/i386/i386.h:415
+#: config/i386/i386.h:465
msgid "Number of registers used to pass integer arguments"
msgstr ""
-#. TARGET_DEFAULT is defined in sun*.h and isi.h, etc.
+#. TARGET_DEFAULT is defined in m68k-none.h, netbsd.h, etc.
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10759,98 +9998,99 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:417 config/m68k/m68k.h:263
+#: config/i386/i386.h:467 config/m68k/m68k.h:360
msgid "Loop code aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:419 config/m68k/m68k.h:265
+#: config/i386/i386.h:469 config/m68k/m68k.h:362
msgid "Jump targets are aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:421 config/m68k/m68k.h:267
+#: config/i386/i386.h:471 config/m68k/m68k.h:364
msgid "Function starts are aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:424
+#: config/i386/i386.h:474
msgid "Attempt to keep stack aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:426
+#: config/i386/i386.h:476
msgid "Branches are this expensive (1-5, arbitrary units)"
msgstr ""
-#: config/i386/i386.h:428
+#: config/i386/i386.h:478
msgid "Use given x86-64 code model"
msgstr ""
#. Undocumented.
#. Undocumented.
-#: config/i386/i386.h:434
+#: config/i386/i386.h:484
msgid "Use given assembler dialect"
msgstr ""
-#: config/i386/i386.h:436
+#: config/i386/i386.h:486
msgid "Use given thread-local storage dialect"
msgstr ""
-#: config/i386/sco5.h:297
+#: config/i386/sco5.h:292
msgid "Generate ELF output"
msgstr ""
-#: config/i386/win32.h:53
-msgid "Use Mingw32 interface"
-msgstr ""
-
-#: config/i386/win32.h:55
-msgid "Use Cygwin interface"
-msgstr ""
-
-#: config/i386/win32.h:57
-msgid "Use bare Windows interface"
-msgstr ""
-
#. If the environment variable DJDIR is not defined, then DJGPP is not installed correctly and GCC will quickly become confused with the default prefix settings. Report the problem now so the user doesn't receive deceptive "file not found" error messages later.
#. DJDIR is automatically defined by the DJGPP environment config file pointed to by the environment variable DJGPP. Examine DJGPP to try and figure out what's wrong.
-#: config/i386/xm-djgpp.h:71
+#: config/i386/xm-djgpp.h:64
msgid "environment variable DJGPP not defined"
msgstr ""
-#: config/i386/xm-djgpp.h:73
+#: config/i386/xm-djgpp.h:66
#, c-format
msgid "environment variable DJGPP points to missing file '%s'"
msgstr ""
-#: config/i386/xm-djgpp.h:76
+#: config/i386/xm-djgpp.h:69
#, c-format
msgid "environment variable DJGPP points to corrupt file '%s'"
msgstr ""
-#: config/i960/i960-c.c:66
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/i860/i860.h:60
+msgid "Generate code which uses the FPU"
+msgstr ""
+
+#: config/i860/i860.h:61 config/i860/i860.h:62
+msgid "Do not generate code which uses the FPU"
+msgstr ""
+
+#: config/i960/i960-c.c:68
msgid "sorry, not implemented: #pragma align NAME=SIZE"
msgstr ""
-#: config/i960/i960-c.c:71
+#: config/i960/i960-c.c:73
#, fuzzy
msgid "malformed #pragma align - ignored"
msgstr "êáêïäéáìïñöùìÝíç ãñáììÞ áãíïÞèçêå"
-#: config/i960/i960-c.c:109
+#: config/i960/i960-c.c:111
msgid "sorry, not implemented: #pragma noalign NAME"
msgstr ""
-#: config/i960/i960.c:121 config/i960/i960.c:131
+#: config/i960/i960.c:134 config/i960/i960.c:144
msgid "conflicting architectures defined - using C series"
msgstr ""
-#: config/i960/i960.c:126
+#: config/i960/i960.c:139
msgid "conflicting architectures defined - using K series"
msgstr ""
-#: config/i960/i960.c:141
+#: config/i960/i960.c:154
msgid "iC2.0 and iC3.0 are incompatible - using iC3.0"
msgstr ""
-#: config/i960/i960.c:1448 config/m68k/m68k.c:559 config/rs6000/rs6000.c:9976
+#: config/i960/i960.c:1456 config/m68k/m68k.c:588 config/rs6000/rs6000.c:11296
#, fuzzy
msgid "stack limit expression is not supported"
msgstr "åéäéêÜ áñ÷åßá ìðëïê äåí õðïóôçñßæïíôáé"
@@ -10862,405 +10102,549 @@ msgstr "åéäéêÜ áñ÷åßá ìðëïê äåí õðïóôçñßæïíôáé"
#. An empty string NAME is used to identify the default VALUE.
#. ??? Not all ten of these architecture variations actually exist, but I
#. am not sure which are real and which aren't.
-#: config/i960/i960.h:240
+#: config/i960/i960.h:250
msgid "Generate SA code"
msgstr ""
-#: config/i960/i960.h:243
+#: config/i960/i960.h:253
msgid "Generate SB code"
msgstr ""
#. {"sc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate SC code")},
-#: config/i960/i960.h:248
+#: config/i960/i960.h:258
msgid "Generate KA code"
msgstr ""
-#: config/i960/i960.h:251
+#: config/i960/i960.h:261
msgid "Generate KB code"
msgstr ""
#. {"kc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate KC code")},
-#: config/i960/i960.h:256
+#: config/i960/i960.h:266
msgid "Generate JA code"
msgstr ""
-#: config/i960/i960.h:258
+#: config/i960/i960.h:268
msgid "Generate JD code"
msgstr ""
-#: config/i960/i960.h:261
+#: config/i960/i960.h:271
msgid "Generate JF code"
msgstr ""
-#: config/i960/i960.h:263
+#: config/i960/i960.h:273
msgid "generate RP code"
msgstr ""
-#: config/i960/i960.h:266
+#: config/i960/i960.h:276
msgid "Generate MC code"
msgstr ""
-#: config/i960/i960.h:269
+#: config/i960/i960.h:279
msgid "Generate CA code"
msgstr ""
#. {"cb", (TARGET_FLAG_NUMERICS|TARGET_FLAG_C_SERIES| TARGET_FLAG_BRANCH_PREDICT|TARGET_FLAG_CODE_ALIGN), N_("Generate CB code")}, {"cc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_C_SERIES|TARGET_FLAG_BRANCH_PREDICT| TARGET_FLAG_CODE_ALIGN), N_("Generate CC code")},
-#: config/i960/i960.h:279
+#: config/i960/i960.h:289
msgid "Generate CF code"
msgstr ""
-#: config/i960/i960.h:283 config/mips/mips.h:568 config/pa/pa.h:266
+#: config/i960/i960.h:293 config/mips/mips.h:539 config/pa/pa.h:266
msgid "Use software floating point"
msgstr ""
-#: config/i960/i960.h:285
+#: config/i960/i960.h:295
msgid "Use alternate leaf function entries"
msgstr ""
-#: config/i960/i960.h:287
+#: config/i960/i960.h:297
msgid "Do not use alternate leaf function entries"
msgstr ""
-#: config/i960/i960.h:289
+#: config/i960/i960.h:299
msgid "Perform tail call optimization"
msgstr ""
-#: config/i960/i960.h:291
+#: config/i960/i960.h:301
msgid "Do not perform tail call optimization"
msgstr ""
-#: config/i960/i960.h:293
+#: config/i960/i960.h:303
msgid "Use complex addressing modes"
msgstr ""
-#: config/i960/i960.h:295
+#: config/i960/i960.h:305
#, fuzzy
msgid "Do not use complex addressing modes"
msgstr "ÁêáôÜëëçëç ÷ñÞóç ôïõ äéáìïñöùôÞ äéåýèõíóçò"
-#: config/i960/i960.h:297
+#: config/i960/i960.h:307
msgid "Align code to 8 byte boundary"
msgstr ""
-#: config/i960/i960.h:299
+#: config/i960/i960.h:309
msgid "Do not align code to 8 byte boundary"
msgstr ""
#. {"clean-linkage", (TARGET_FLAG_CLEAN_LINKAGE), N_("Force use of prototypes")}, {"no-clean-linkage", -(TARGET_FLAG_CLEAN_LINKAGE), N_("Do not force use of prototypes")},
-#: config/i960/i960.h:305 config/i960/i960.h:307
+#: config/i960/i960.h:315 config/i960/i960.h:317
msgid "Enable compatibility with iC960 v2.0"
msgstr ""
-#: config/i960/i960.h:309
+#: config/i960/i960.h:319
msgid "Enable compatibility with iC960 v3.0"
msgstr ""
-#: config/i960/i960.h:311 config/i960/i960.h:313
+#: config/i960/i960.h:321 config/i960/i960.h:323
msgid "Enable compatibility with ic960 assembler"
msgstr ""
-#: config/i960/i960.h:315
+#: config/i960/i960.h:325
msgid "Do not permit unaligned accesses"
msgstr ""
-#: config/i960/i960.h:317
+#: config/i960/i960.h:327
msgid "Permit unaligned accesses"
msgstr ""
-#: config/i960/i960.h:319
+#: config/i960/i960.h:329
msgid "Layout types like Intel's v1.3 gcc"
msgstr ""
-#: config/i960/i960.h:321
+#: config/i960/i960.h:331
msgid "Do not layout types like Intel's v1.3 gcc"
msgstr ""
-#: config/i960/i960.h:323 config/sparc/freebsd.h:80 config/sparc/linux.h:86
-#: config/sparc/linux64.h:88 config/sparc/netbsd-elf.h:238
+#: config/i960/i960.h:333 config/sparc/freebsd.h:76 config/sparc/linux.h:91
+#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215
msgid "Use 64 bit long doubles"
msgstr ""
-#: config/i960/i960.h:325
+#: config/i960/i960.h:335
msgid "Enable linker relaxation"
msgstr ""
-#: config/i960/i960.h:327
+#: config/i960/i960.h:337
msgid "Do not enable linker relaxation"
msgstr ""
# src/dfa.c:569 src/dfa.c:583 src/dfa.c:587
# src/dfa.c:577 src/dfa.c:591 src/dfa.c:595
-#: config/ia64/ia64-c.c:51
+#: config/ia64/ia64-c.c:52
#, fuzzy
msgid "malformed #pragma builtin"
msgstr "êáêïó÷çìáôéóìÝíïò ìåôñçôÞò åðáíÜëçøçò"
-#: config/ia64/ia64.c:4015
+#: config/ia64/ia64.c:1021 config/m32r/m32r.c:354
+#, fuzzy, c-format
+msgid "invalid argument of `%s' attribute"
+msgstr "Ç ðáñÜìåôñïò `%s' äåí åßíáé Ýãêõñç."
+
+#: config/ia64/ia64.c:1033
+msgid "%Jan address area attribute cannot be specified for local variables"
+msgstr ""
+
+#: config/ia64/ia64.c:1040
+msgid "%Jaddress area of '%s' conflicts with previous declaration"
+msgstr ""
+
+#: config/ia64/ia64.c:1047
+msgid "%Jaddress area attribute cannot be specified for functions"
+msgstr ""
+
+#: config/ia64/ia64.c:4288
msgid "ia64_print_operand: unknown code"
msgstr ""
-#: config/ia64/ia64.c:4292
+#: config/ia64/ia64.c:4628
msgid "value of -mfixed-range must have form REG1-REG2"
msgstr ""
-#: config/ia64/ia64.c:4319
+#: config/ia64/ia64.c:4655
#, c-format
msgid "%s-%s is an empty range"
msgstr ""
-#: config/ia64/ia64.c:4350
+#: config/ia64/ia64.c:4703
msgid "cannot optimize floating point division for both latency and throughput"
msgstr ""
-#: config/ia64/ia64.c:4356
+#: config/ia64/ia64.c:4709
msgid "cannot optimize integer division for both latency and throughput"
msgstr ""
-#: config/ia64/ia64.c:4368
+#: config/ia64/ia64.c:4715
+msgid "cannot optimize square root for both latency and throughput"
+msgstr ""
+
+#: config/ia64/ia64.c:4721
+msgid "not yet implemented: latency-optimized inline square root"
+msgstr ""
+
+#: config/ia64/ia64.c:4733
#, fuzzy, c-format
msgid "bad value (%s) for -mtls-size= switch"
msgstr "ÁêáôÜëëçëç ôéìÞ óôï ai_flags"
+#: config/ia64/ia64.c:4749
+#, fuzzy, c-format
+msgid "bad value (%s) for -tune= switch"
+msgstr "ÁêáôÜëëçëç ôéìÞ óôï ai_flags"
+
#. This macro defines names of command options to set and clear bits in
#. `target_flags'. Its definition is an initializer with a subgrouping for
#. each command option.
-#: config/ia64/ia64.h:154
+#: config/ia64/ia64.h:172
msgid "Generate big endian code"
msgstr ""
-#: config/ia64/ia64.h:156 config/mcore/mcore.h:159
+#: config/ia64/ia64.h:174 config/mcore/mcore.h:154
msgid "Generate little endian code"
msgstr ""
-#: config/ia64/ia64.h:158
+#: config/ia64/ia64.h:176
msgid "Generate code for GNU as"
msgstr ""
-#: config/ia64/ia64.h:160
+#: config/ia64/ia64.h:178
msgid "Generate code for Intel as"
msgstr ""
-#: config/ia64/ia64.h:162
+#: config/ia64/ia64.h:180
msgid "Generate code for GNU ld"
msgstr ""
-#: config/ia64/ia64.h:164
+#: config/ia64/ia64.h:182
msgid "Generate code for Intel ld"
msgstr ""
-#: config/ia64/ia64.h:166
+#: config/ia64/ia64.h:184
msgid "Generate code without GP reg"
msgstr ""
-#: config/ia64/ia64.h:168
+#: config/ia64/ia64.h:186
msgid "Emit stop bits before and after volatile extended asms"
msgstr ""
-#: config/ia64/ia64.h:170
+#: config/ia64/ia64.h:188
msgid "Don't emit stop bits before and after volatile extended asms"
msgstr ""
-#: config/ia64/ia64.h:172
+#: config/ia64/ia64.h:190
msgid "Emit code for Itanium (TM) processor B step"
msgstr ""
-#: config/ia64/ia64.h:174
+#: config/ia64/ia64.h:192
msgid "Use in/loc/out register names"
msgstr ""
-#: config/ia64/ia64.h:176
+#: config/ia64/ia64.h:194
msgid "Disable use of sdata/scommon/sbss"
msgstr ""
-#: config/ia64/ia64.h:178
+#: config/ia64/ia64.h:196
msgid "Enable use of sdata/scommon/sbss"
msgstr ""
-#: config/ia64/ia64.h:180
+#: config/ia64/ia64.h:198
msgid "gp is constant (but save/restore gp on indirect calls)"
msgstr ""
-#: config/ia64/ia64.h:182
+#: config/ia64/ia64.h:200
msgid "Generate self-relocatable code"
msgstr ""
-#: config/ia64/ia64.h:184
+#: config/ia64/ia64.h:202
msgid "Generate inline floating point division, optimize for latency"
msgstr ""
-#: config/ia64/ia64.h:186
+#: config/ia64/ia64.h:204
msgid "Generate inline floating point division, optimize for throughput"
msgstr ""
-#: config/ia64/ia64.h:188
+#: config/ia64/ia64.h:206
msgid "Generate inline integer division, optimize for latency"
msgstr ""
-#: config/ia64/ia64.h:190
+#: config/ia64/ia64.h:208
msgid "Generate inline integer division, optimize for throughput"
msgstr ""
-#: config/ia64/ia64.h:192
+#: config/ia64/ia64.h:210
+msgid "Generate inline square root, optimize for latency"
+msgstr ""
+
+#: config/ia64/ia64.h:212
+msgid "Generate inline square root, optimize for throughput"
+msgstr ""
+
+#: config/ia64/ia64.h:214
msgid "Enable Dwarf 2 line debug info via GNU as"
msgstr ""
-#: config/ia64/ia64.h:194
+#: config/ia64/ia64.h:216
msgid "Disable Dwarf 2 line debug info via GNU as"
msgstr ""
-#: config/ia64/ia64.h:223
+#: config/ia64/ia64.h:218
+msgid "Enable earlier placing stop bits for better scheduling"
+msgstr ""
+
+#: config/ia64/ia64.h:220
+#, fuzzy
+msgid "Disable earlier placing stop bits"
+msgstr "ÁêáôÜëëçëç åíôïëÞ"
+
+#: config/ia64/ia64.h:265
msgid "Specify range of registers to make fixed"
msgstr ""
-#: config/ip2k/ip2k.c:1090
+#: config/ip2k/ip2k.c:1074
#, fuzzy
msgid "bad operand"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/m32r/m32r.c:139
+#: config/iq2000/iq2000.c:1816
#, c-format
-msgid "bad value (%s) for -mmodel switch"
+msgid "bad value (%s) for -mcpu= switch"
msgstr ""
-#: config/m32r/m32r.c:148
+#: config/iq2000/iq2000.c:1845
+#, fuzzy, c-format
+msgid "The compiler does not support -march=%s."
+msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
+
+#: config/iq2000/iq2000.c:2232
#, c-format
-msgid "bad value (%s) for -msdata switch"
+msgid "gp_offset (%ld) or end_offset (%ld) is less than zero."
msgstr ""
-#: config/m32r/m32r.c:319
+#: config/iq2000/iq2000.c:3023
#, fuzzy, c-format
-msgid "invalid argument of `%s' attribute"
-msgstr "Ç ðáñÜìåôñïò `%s' äåí åßíáé Ýãêõñç."
+msgid "argument `%d' is not a constant"
+msgstr "Ç ðáñÜìåôñïò óôï `%s' ðñÝðåé íá åßíáé Ýíáò áðëüò ÷áñáêôÞñáò"
+
+#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2081
+msgid "PRINT_OPERAND_ADDRESS, null pointer"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3469
+#, c-format
+msgid "PRINT_OPERAND: Unknown punctuation '%c'"
+msgstr ""
-#: config/m32r/m32r.c:422
-msgid "const objects cannot go in .sdata/.sbss"
+#: config/iq2000/iq2000.c:3478 config/mips/mips.c:5457
+#: config/xtensa/xtensa.c:1935
+msgid "PRINT_OPERAND null pointer"
msgstr ""
-#: config/m32r/m32r.c:2256
+#: config/iq2000/iq2000.c:3547
+#, fuzzy, c-format
+msgid "invalid %%P operand"
+msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8881
+#, fuzzy, c-format
+msgid "invalid %%p value"
+msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#: config/iq2000/iq2000.c:3619 config/mips/mips.c:5587
+#, c-format
+msgid "invalid use of %%d, %%x, or %%X"
+msgstr ""
+
+#: config/iq2000/iq2000.h:72 config/mn10300/mn10300.h:74
+msgid "No default crt0.o"
+msgstr ""
+
+#: config/iq2000/iq2000.h:74
+msgid "Use GP relative sdata/sbss sections"
+msgstr ""
+
+#: config/iq2000/iq2000.h:76
+msgid "Don't use GP relative sdata/sbss sections"
+msgstr ""
+
+#: config/iq2000/iq2000.h:78 config/mips/mips.h:563
+msgid "Use ROM instead of RAM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:80 config/mips/mips.h:565
+msgid "Don't use ROM instead of RAM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:82 config/mips/mips.h:567
+msgid "Put uninitialized constants in ROM (needs -membedded-data)"
+msgstr ""
+
+#: config/iq2000/iq2000.h:84 config/mips/mips.h:569
+msgid "Don't put uninitialized constants in ROM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:106 config/mips/mips.h:731 config/pa/pa.h:310
+msgid "Specify CPU for scheduling purposes"
+msgstr ""
+
+#: config/iq2000/iq2000.h:108 config/mips/mips.h:733
+msgid "Specify CPU for code generation purposes"
+msgstr ""
+
+#: config/m32r/m32r.c:172
+#, c-format
+msgid "bad value (%s) for -mmodel switch"
+msgstr ""
+
+#: config/m32r/m32r.c:181
+#, c-format
+msgid "bad value (%s) for -msdata switch"
+msgstr ""
+
+#: config/m32r/m32r.c:188
+#, c-format
+msgid "bad value (%s) for -flush-trap=n (0=<n<=15)"
+msgstr ""
+
+#: config/m32r/m32r.c:2295
#, fuzzy, c-format
msgid "invalid operand to %%s code"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/m32r/m32r.c:2263
+#: config/m32r/m32r.c:2302
#, fuzzy, c-format
msgid "invalid operand to %%p code"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/m32r/m32r.c:2318
+#: config/m32r/m32r.c:2357
msgid "bad insn for 'A'"
msgstr ""
-#: config/m32r/m32r.c:2370
+#: config/m32r/m32r.c:2404
#, fuzzy, c-format
msgid "invalid operand to %%T/%%B code"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/m32r/m32r.c:2393
+#: config/m32r/m32r.c:2427
#, fuzzy, c-format
msgid "invalid operand to %%N code"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/m32r/m32r.c:2438
+#: config/m32r/m32r.c:2460
msgid "pre-increment address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2445
+#: config/m32r/m32r.c:2467
msgid "pre-decrement address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2452
+#: config/m32r/m32r.c:2474
msgid "post-increment address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2530 config/m32r/m32r.c:2546
-#: config/rs6000/rs6000.c:12802
+#: config/m32r/m32r.c:2550 config/m32r/m32r.c:2566
+#: config/rs6000/rs6000.c:14753
#, fuzzy
msgid "bad address"
msgstr "ÅóöáëìÝíç äéåýèõíóç"
-#: config/m32r/m32r.c:2551
+#: config/m32r/m32r.c:2571
#, fuzzy
msgid "lo_sum not of register"
msgstr "RPC: Ôï ðñüãñáììá äåí Ý÷åé êáôá÷ùñçèåß"
#. { "relax", TARGET_RELAX_MASK, "" }, { "no-relax", -TARGET_RELAX_MASK, "" },
-#: config/m32r/m32r.h:241
+#: config/m32r/m32r.h:277
msgid "Display compile time statistics"
msgstr ""
-#: config/m32r/m32r.h:243
+#: config/m32r/m32r.h:279
msgid "Align all loops to 32 byte boundary"
msgstr ""
-#: config/m32r/m32r.h:246
+#: config/m32r/m32r.h:282
msgid "Only issue one instruction per cycle"
msgstr ""
-#: config/m32r/m32r.h:249
+#: config/m32r/m32r.h:285
msgid "Prefer branches over conditional execution"
msgstr ""
-#: config/m32r/m32r.h:265
+#: config/m32r/m32r.h:306
msgid "Code size: small, medium or large"
msgstr ""
-#: config/m32r/m32r.h:267
+#: config/m32r/m32r.h:308
msgid "Small data area: none, sdata, use"
msgstr ""
-#: config/m68hc11/m68hc11.c:242
+#: config/m32r/m32r.h:310 config/mips/mips.h:739
+msgid "Don't call any cache flush functions"
+msgstr ""
+
+#: config/m32r/m32r.h:312 config/mips/mips.h:741
+msgid "Specify cache flush function"
+msgstr ""
+
+#: config/m32r/m32r.h:314
+msgid "Don't call any cache flush trap"
+msgstr ""
+
+#: config/m32r/m32r.h:316
+msgid "Specify cache flush trap number"
+msgstr ""
+
+#: config/m68hc11/m68hc11.c:269
#, c-format
msgid "-f%s ignored for 68HC11/68HC12 (not supported)"
msgstr ""
-#: config/m68hc11/m68hc11.c:1305
+#: config/m68hc11/m68hc11.c:1260
msgid "`trap' and `far' attributes are not compatible, ignoring `far'"
msgstr ""
-#: config/m68hc11/m68hc11.c:1311
+#: config/m68hc11/m68hc11.c:1266
#, fuzzy
msgid "`trap' attribute is already used"
msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
#. !!!! SCz wrong here.
-#: config/m68hc11/m68hc11.c:3327 config/m68hc11/m68hc11.c:3733
+#: config/m68hc11/m68hc11.c:3222 config/m68hc11/m68hc11.c:3606
msgid "move insn not handled"
msgstr ""
-#: config/m68hc11/m68hc11.c:3579 config/m68hc11/m68hc11.c:3663
-#: config/m68hc11/m68hc11.c:3946
+#: config/m68hc11/m68hc11.c:3454 config/m68hc11/m68hc11.c:3538
+#: config/m68hc11/m68hc11.c:3809
msgid "invalid register in the move instruction"
msgstr ""
-#: config/m68hc11/m68hc11.c:3613
+#: config/m68hc11/m68hc11.c:3488
#, fuzzy
msgid "invalid operand in the instruction"
msgstr "ìç Ýãêõñç ìÝôñçóç åðáíÜëçøçò `%s' óôç êáôáóêåõÞ [c*n]"
-#: config/m68hc11/m68hc11.c:3920
+#: config/m68hc11/m68hc11.c:3783
#, fuzzy
msgid "invalid register in the instruction"
msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò `%c' óôï ôýðï áëöáñéèìçôéêïý `%s'"
-#: config/m68hc11/m68hc11.c:3953
+#: config/m68hc11/m68hc11.c:3816
msgid "operand 1 must be a hard register"
msgstr ""
-#: config/m68hc11/m68hc11.c:3970
+#: config/m68hc11/m68hc11.c:3830
#, fuzzy
msgid "invalid rotate insn"
msgstr "Ìç Ýãêõñç çìåñïìçíßá `%s'."
-#: config/m68hc11/m68hc11.c:4391
+#: config/m68hc11/m68hc11.c:4246
msgid "registers IX, IY and Z used in the same INSN"
msgstr ""
-#: config/m68hc11/m68hc11.c:4728 config/m68hc11/m68hc11.c:5031
+#: config/m68hc11/m68hc11.c:4583 config/m68hc11/m68hc11.c:4883
#, fuzzy
msgid "cannot do z-register replacement"
msgstr "Äåí åßíáé äõíáôÞ ç êáôá÷þñçóç ôçò õðçñåóßáò"
-#: config/m68hc11/m68hc11.c:5094
+#: config/m68hc11/m68hc11.c:4946
msgid "invalid Z register replacement for insn"
msgstr ""
@@ -11268,58 +10652,58 @@ msgstr ""
#. pairs in braces, each pair being { "NAME", VALUE } where VALUE is the bits
#. to set or minus the bits to clear. An empty string NAME is used to
#. identify the default VALUE.
-#: config/m68hc11/m68hc11.h:172
+#: config/m68hc11/m68hc11.h:177
msgid "Compile with 16-bit integer mode"
msgstr ""
-#: config/m68hc11/m68hc11.h:174
+#: config/m68hc11/m68hc11.h:179
msgid "Compile with 32-bit integer mode"
msgstr ""
-#: config/m68hc11/m68hc11.h:176
+#: config/m68hc11/m68hc11.h:181
msgid "Auto pre/post decrement increment allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:178
+#: config/m68hc11/m68hc11.h:183
msgid "Auto pre/post decrement increment not allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:180
+#: config/m68hc11/m68hc11.h:185
msgid "Min/max instructions allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:182
+#: config/m68hc11/m68hc11.h:187
#, fuzzy
msgid "Min/max instructions not allowed"
msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
-#: config/m68hc11/m68hc11.h:184
+#: config/m68hc11/m68hc11.h:189
msgid "Use call and rtc for function calls and returns"
msgstr ""
-#: config/m68hc11/m68hc11.h:186
+#: config/m68hc11/m68hc11.h:191
msgid "Use jsr and rts for function calls and returns"
msgstr ""
-#: config/m68hc11/m68hc11.h:188
+#: config/m68hc11/m68hc11.h:193
#, fuzzy
msgid "Do not use direct addressing mode for soft registers"
msgstr "ÁêáôÜëëçëç ÷ñÞóç ôïõ äéáìïñöùôÞ äéåýèõíóçò"
-#: config/m68hc11/m68hc11.h:190
+#: config/m68hc11/m68hc11.h:195
#, fuzzy
msgid "Use direct addressing mode for soft registers"
msgstr "ÁêáôÜëëçëç ÷ñÞóç ôïõ äéáìïñöùôÞ äéåýèõíóçò"
-#: config/m68hc11/m68hc11.h:192 config/m68hc11/m68hc11.h:198
+#: config/m68hc11/m68hc11.h:197 config/m68hc11/m68hc11.h:203
msgid "Compile for a 68HC11"
msgstr ""
-#: config/m68hc11/m68hc11.h:194 config/m68hc11/m68hc11.h:200
+#: config/m68hc11/m68hc11.h:199 config/m68hc11/m68hc11.h:205
msgid "Compile for a 68HC12"
msgstr ""
-#: config/m68hc11/m68hc11.h:196 config/m68hc11/m68hc11.h:202
+#: config/m68hc11/m68hc11.h:201 config/m68hc11/m68hc11.h:207
msgid "Compile for a 68HCS12"
msgstr ""
@@ -11332,31 +10716,45 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/m68hc11/m68hc11.h:216
+#: config/m68hc11/m68hc11.h:221
#, fuzzy
msgid "Specify the register allocation order"
msgstr "Áðïôõ÷ßá äÝóìåõóçò ðüñùí óõóôÞìáôïò"
-#: config/m68hc11/m68hc11.h:218
+#: config/m68hc11/m68hc11.h:223
msgid "Indicate the number of soft registers available"
msgstr ""
-#: config/m68k/m68k.c:158
+#: config/m68k/m68k.c:227
#, c-format
msgid "-malign-loops=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:169
+#: config/m68k/m68k.c:238
+msgid "-mshared-library-id= specified without -mid-shared-library"
+msgstr ""
+
+#: config/m68k/m68k.c:241
+#, c-format
+msgid "-mshared-library-id=%d is not between 0 and %d"
+msgstr ""
+
+#: config/m68k/m68k.c:255
+#, fuzzy
+msgid "cannot specify both -msep-data and -mid-shared-library"
+msgstr "äåí åßíáé äõíáôü íá ðáñáëçöèåß ï ÷ñÞóôçò êáé ç ïìÜäá"
+
+#: config/m68k/m68k.c:270
#, c-format
msgid "-malign-jumps=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:180
+#: config/m68k/m68k.c:281
#, c-format
msgid "-malign-functions=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:189
+#: config/m68k/m68k.c:290
msgid "-fPIC is not currently supported on the 68000 or 68010\n"
msgstr ""
@@ -11365,513 +10763,442 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/m68k/m68k.h:162 config/m68k/m68k.h:164
+#: config/m68k/m68k.h:248 config/m68k/m68k.h:250
msgid "Generate code for a 68020"
msgstr ""
-#: config/m68k/m68k.h:169 config/m68k/m68k.h:172
+#: config/m68k/m68k.h:255 config/m68k/m68k.h:258
msgid "Generate code for a 68000"
msgstr ""
-#: config/m68k/m68k.h:174
+#: config/m68k/m68k.h:260
msgid "Use the bit-field instructions"
msgstr ""
-#: config/m68k/m68k.h:176
+#: config/m68k/m68k.h:262
msgid "Do not use the bit-field instructions"
msgstr ""
-#: config/m68k/m68k.h:178
-msgid "Use different calling convention using 'rtd'"
-msgstr ""
-
-#: config/m68k/m68k.h:182
+#: config/m68k/m68k.h:264
msgid "Consider type `int' to be 16 bits wide"
msgstr ""
-#: config/m68k/m68k.h:184
+#: config/m68k/m68k.h:266
msgid "Consider type `int' to be 32 bits wide"
msgstr ""
-#: config/m68k/m68k.h:186
-msgid "Generate code for a Sun FPA"
-msgstr ""
-
-#: config/m68k/m68k.h:189
-msgid "Do not generate code for a Sun FPA"
-msgstr ""
-
-#: config/m68k/m68k.h:191 config/m68k/m68k.h:193
-msgid "Generate code for a Sun Sky board"
-msgstr ""
-
-#: config/m68k/m68k.h:195
-msgid "Do not use Sky linkage convention"
-msgstr ""
-
-#: config/m68k/m68k.h:197
-msgid "Generate code for a 68881"
-msgstr ""
-
-#: config/m68k/m68k.h:200
+#: config/m68k/m68k.h:269
msgid "Generate code with library calls for floating point"
msgstr ""
-#: config/m68k/m68k.h:202
+#: config/m68k/m68k.h:271
msgid "Generate code for a 68040, without any new instructions"
msgstr ""
-#: config/m68k/m68k.h:205
+#: config/m68k/m68k.h:274
msgid "Generate code for a 68060, without any new instructions"
msgstr ""
-#: config/m68k/m68k.h:209
+#: config/m68k/m68k.h:278
msgid "Generate code for a 68030"
msgstr ""
-#: config/m68k/m68k.h:212
+#: config/m68k/m68k.h:281
msgid "Generate code for a 68040"
msgstr ""
-#: config/m68k/m68k.h:216
+#: config/m68k/m68k.h:285
msgid "Generate code for a 68060"
msgstr ""
-#: config/m68k/m68k.h:221
+#: config/m68k/m68k.h:290
msgid "Generate code for a 520X"
msgstr ""
-#: config/m68k/m68k.h:224
+#: config/m68k/m68k.h:294
+#, fuzzy
+msgid "Generate code for a 5206e"
+msgstr "×ñÞóç îå÷ùñéóôÞò ëáíèÜíïõóáò ìíÞìçò ãéá êÜèå ÷ñÞóôç"
+
+#: config/m68k/m68k.h:298
+#, fuzzy
+msgid "Generate code for a 528x"
+msgstr "×ñÞóç îå÷ùñéóôÞò ëáíèÜíïõóáò ìíÞìçò ãéá êÜèå ÷ñÞóôç"
+
+#: config/m68k/m68k.h:302
+#, fuzzy
+msgid "Generate code for a 5307"
+msgstr "×ñÞóç îå÷ùñéóôÞò ëáíèÜíïõóáò ìíÞìçò ãéá êÜèå ÷ñÞóôç"
+
+#: config/m68k/m68k.h:306
+#, fuzzy
+msgid "Generate code for a 5407"
+msgstr "×ñÞóç îå÷ùñéóôÞò ëáíèÜíïõóáò ìíÞìçò ãéá êÜèå ÷ñÞóôç"
+
+#: config/m68k/m68k.h:309
msgid "Generate code for a 68851"
msgstr ""
-#: config/m68k/m68k.h:226
+#: config/m68k/m68k.h:311
msgid "Do no generate code for a 68851"
msgstr ""
-#: config/m68k/m68k.h:229
+#: config/m68k/m68k.h:314
msgid "Generate code for a 68302"
msgstr ""
-#: config/m68k/m68k.h:232
+#: config/m68k/m68k.h:317
msgid "Generate code for a 68332"
msgstr ""
-#: config/m68k/m68k.h:236
+#: config/m68k/m68k.h:321
msgid "Generate code for a cpu32"
msgstr ""
-#: config/m68k/m68k.h:239
+#: config/m68k/m68k.h:324
msgid "Align variables on a 32-bit boundary"
msgstr ""
-#: config/m68k/m68k.h:241
+#: config/m68k/m68k.h:326
msgid "Align variables on a 16-bit boundary"
msgstr ""
-#: config/m68k/m68k.h:243
-msgid "Generate pc-relative code"
+#: config/m68k/m68k.h:328
+msgid "Enable separate data segment"
msgstr ""
-#: config/m68k/m68k.h:245
-msgid "Do not use unaligned memory references"
+#: config/m68k/m68k.h:330
+msgid "Disable separate data segment"
msgstr ""
-#: config/m68k/m68k.h:247
-#, fuzzy
-msgid "Use unaligned memory references"
-msgstr "Ìç Ýãêõñç ðéóù-ðáñáðïìðÞ"
-
-#: config/m88k/m88k.c:903
-#, c-format
-msgid "internal gcc monitor: short-branch(%x)"
+#: config/m68k/m68k.h:332
+msgid "Enable ID based shared library"
msgstr ""
-#: config/m88k/m88k.c:2302
-msgid "internal gcc error: Can't express symbolic location"
-msgstr ""
-
-#: config/m88k/m88k.c:2517
-#, c-format
-msgid "argument #%d is a structure"
+#: config/m68k/m68k.h:334
+msgid "Disable ID based shared library"
msgstr ""
-#: config/m88k/m88k.c:2816
-#, c-format
-msgid "%%R not followed by %%B/C/D/E"
-msgstr ""
-
-#: config/m88k/m88k.c:2884
-#, fuzzy, c-format
-msgid "invalid %%x/X value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-
-#: config/m88k/m88k.c:2901
-#, fuzzy, c-format
-msgid "invalid %%Q value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-
-#: config/m88k/m88k.c:2907 config/rs6000/rs6000.c:7718
-#, fuzzy, c-format
-msgid "invalid %%q value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-
-#: config/m88k/m88k.c:2913
-#, fuzzy, c-format
-msgid "invalid %%o value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-
-#: config/m88k/m88k.c:2920 config/rs6000/rs6000.c:7681
-#, fuzzy, c-format
-msgid "invalid %%p value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-
-#: config/m88k/m88k.c:2933 config/m88k/m88k.c:2938
-#, fuzzy, c-format
-msgid "invalid %%s/S value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-
-#: config/m88k/m88k.c:2949
-#, fuzzy, c-format
-msgid "invalid %%P operand"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-
-#: config/m88k/m88k.c:2980 config/romp/romp.c:690
-#, fuzzy, c-format
-msgid "invalid %%B value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-
-#: config/m88k/m88k.c:3010
-#, fuzzy, c-format
-msgid "invalid %%D value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-
-#: config/m88k/m88k.c:3023
-#, c-format
-msgid "`%%d' operand isn't a register"
-msgstr ""
-
-#: config/m88k/m88k.c:3041
-msgid "operand is r0"
+#: config/m68k/m68k.h:336
+msgid "Generate pc-relative code"
msgstr ""
-#: config/m88k/m88k.c:3055
-msgid "operand is const_double"
+#: config/m68k/m68k.h:338
+msgid "Do not use unaligned memory references"
msgstr ""
-#: config/m88k/m88k.c:3074
+#: config/m68k/m68k.h:340
#, fuzzy
-msgid "invalid code"
-msgstr "ìç Ýãêõñï äéêáßùìá"
-
-#. Do any checking or such that is needed after processing the -m switches.
-#: config/m88k/m88k.h:277
-msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
-msgstr ""
-
-#: config/m88k/m88k.h:299
-#, fuzzy, c-format
-msgid "invalid option `-mshort-data-%s'"
-msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
+msgid "Use unaligned memory references"
+msgstr "Ìç Ýãêõñç ðéóù-ðáñáðïìðÞ"
-#: config/m88k/m88k.h:304
-#, c-format
-msgid "-mshort-data-%s is too large "
+#: config/m68k/m68k.h:342
+msgid "Use different calling convention using 'rtd'"
msgstr ""
-#: config/m88k/m88k.h:306
-#, c-format
-msgid "-mshort-data-%s and PIC are incompatible"
+#: config/m68k/m68k.h:366
+msgid "ID of shared library to build"
msgstr ""
-#: config/mcore/mcore.c:3078
+#: config/mcore/mcore.c:2973
#, fuzzy, c-format
msgid "invalid option `-mstack-increment=%s'"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: config/mcore/mcore.h:126
+#: config/mcore/mcore.h:121
msgid "Inline constants if it can be done in 2 insns or less"
msgstr ""
-#: config/mcore/mcore.h:128
+#: config/mcore/mcore.h:123
msgid "Inline constants if it only takes 1 instruction"
msgstr ""
-#: config/mcore/mcore.h:130
+#: config/mcore/mcore.h:125
msgid "Set maximum alignment to 4"
msgstr ""
-#: config/mcore/mcore.h:132
+#: config/mcore/mcore.h:127
msgid "Set maximum alignment to 8"
msgstr ""
-#: config/mcore/mcore.h:136
+#: config/mcore/mcore.h:131
msgid "Do not use the divide instruction"
msgstr ""
-#: config/mcore/mcore.h:140
+#: config/mcore/mcore.h:135
msgid "Do not arbitrary sized immediates in bit operations"
msgstr ""
-#: config/mcore/mcore.h:142
+#: config/mcore/mcore.h:137
msgid "Always treat bit-field as int-sized"
msgstr ""
-#: config/mcore/mcore.h:146
+#: config/mcore/mcore.h:141
msgid "Force functions to be aligned to a 4 byte boundary"
msgstr ""
-#: config/mcore/mcore.h:148
+#: config/mcore/mcore.h:143
msgid "Force functions to be aligned to a 2 byte boundary"
msgstr ""
-#: config/mcore/mcore.h:150
+#: config/mcore/mcore.h:145
#, fuzzy
msgid "Emit call graph information"
msgstr "åìöÜíéóç ðëçñïöïñéþí ðñïüäïõ"
-#: config/mcore/mcore.h:154
+#: config/mcore/mcore.h:149
msgid "Prefer word accesses over byte accesses"
msgstr ""
-#: config/mcore/mcore.h:165
+#: config/mcore/mcore.h:160
msgid "Generate code for the M*Core M340"
msgstr ""
-#: config/mcore/mcore.h:178
+#: config/mcore/mcore.h:173
msgid "Maximum amount for a single stack increment operation"
msgstr ""
-#: config/mips/mips.c:5128
-#, c-format
-msgid "bad value (%s) for -mabi= switch"
-msgstr ""
+#: config/mips/mips.c:3115 config/xtensa/xtensa.c:992
+#: config/xtensa/xtensa.c:1024 config/xtensa/xtensa.c:1033
+#, fuzzy
+msgid "bad test"
+msgstr "ÅóöáëìÝíç äéåýèõíóç"
-#: config/mips/mips.c:5158
+#: config/mips/mips.c:4593
#, c-format
-msgid "-mips%d conflicts with the other architecture options, which specify a MIPS%d processor"
+msgid "bad value (%s) for -mabi= switch"
msgstr ""
-#: config/mips/mips.c:5165
+#: config/mips/mips.c:4616
#, c-format
-msgid "bad value (%s) for -mips switch"
+msgid "-mips%s conflicts with the other architecture options, which specify a MIPS%d processor"
msgstr ""
-#: config/mips/mips.c:5180
+#: config/mips/mips.c:4635
#, c-format
msgid "-march=%s is not compatible with the selected ABI"
msgstr ""
-#: config/mips/mips.c:5192
+#: config/mips/mips.c:4650
msgid "-mgp64 used with a 32-bit processor"
msgstr ""
-#: config/mips/mips.c:5194
+#: config/mips/mips.c:4652
#, fuzzy
msgid "-mgp32 used with a 64-bit ABI"
msgstr "×ñÞóç ABI 64-bit"
-#: config/mips/mips.c:5196
+#: config/mips/mips.c:4654
#, fuzzy
msgid "-mgp64 used with a 32-bit ABI"
msgstr "×ñÞóç ABI 32-bit"
-#: config/mips/mips.c:5214 config/mips/mips.c:5216 config/mips/mips.c:5218
+#: config/mips/mips.c:4672 config/mips/mips.c:4674 config/mips/mips.c:4676
+#: config/mips/mips.c:4804
#, fuzzy, c-format
msgid "unsupported combination: %s"
msgstr "ÅìöÜíéóç Ýêäïóçò ðñïãñÜììáôïò"
-#: config/mips/mips.c:5288
+#: config/mips/mips.c:4768
+msgid "-g is only supported using GNU as,"
+msgstr ""
+
+#: config/mips/mips.c:4770
+msgid "-g is only supported using GNU as with -mabi=32,"
+msgstr ""
+
+#: config/mips/mips.c:4771 config/pa/pa.c:353
+#, fuzzy
+msgid "-g option disabled"
+msgstr "Ç ëåéôïõñãßá NIS+ áðÝôõ÷å"
+
+#: config/mips/mips.c:4799
msgid "generation of Branch Likely instructions enabled, but not supported by architecture"
msgstr ""
-#: config/mips/mips.c:5299
+#: config/mips/mips.c:4816
msgid "-G is incompatible with PIC code which is the default"
msgstr ""
-#: config/mips/mips.c:5315
+#: config/mips/mips.c:4844
msgid "-membedded-pic and -mabicalls are incompatible"
msgstr ""
-#: config/mips/mips.c:5318
+#: config/mips/mips.c:4847
msgid "-G and -membedded-pic are incompatible"
msgstr ""
-#: config/mips/mips.c:5369
-#, fuzzy, c-format
-msgid "invalid option `entry%s'"
-msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
+#: config/mips/mips.c:4879
+msgid "non-PIC n64 with explicit relocations"
+msgstr ""
-#: config/mips/mips.c:5372
-msgid "-mentry is only meaningful with -mips-16"
+#: config/mips/mips.c:5267
+msgid "mips_debugger_offset called with non stack/frame/arg pointer"
msgstr ""
-#: config/mips/mips.c:5781
+#: config/mips/mips.c:5394
#, c-format
msgid "internal error: %%) found without a %%( in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5795
+#: config/mips/mips.c:5408
#, c-format
msgid "internal error: %%] found without a %%[ in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5808
+#: config/mips/mips.c:5421
#, c-format
msgid "internal error: %%> found without a %%< in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5821
+#: config/mips/mips.c:5434
#, c-format
msgid "internal error: %%} found without a %%{ in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5835
+#: config/mips/mips.c:5448
#, c-format
msgid "PRINT_OPERAND: unknown punctuation '%c'"
msgstr ""
-#: config/mips/mips.c:5844 config/xtensa/xtensa.c:1939
-msgid "PRINT_OPERAND null pointer"
-msgstr ""
-
-#: config/mips/mips.c:5975
+#: config/mips/mips.c:5477
#, c-format
-msgid "invalid use of %%d, %%x, or %%X"
+msgid "PRINT_OPERAND, invalid insn for %%C"
msgstr ""
-#: config/mips/mips.c:6013 config/xtensa/xtensa.c:2033
-msgid "PRINT_OPERAND_ADDRESS, null pointer"
+#: config/mips/mips.c:5494
+#, c-format
+msgid "PRINT_OPERAND, invalid insn for %%N"
msgstr ""
-#: config/mips/mips.c:6242
-msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
+#: config/mips/mips.c:5503
+#, c-format
+msgid "PRINT_OPERAND, invalid insn for %%F"
msgstr ""
-#: config/mips/mips.c:6552
-#, fuzzy
-msgid "can't rewind temp file"
-msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ"
-
-#: config/mips/mips.c:6556
-#, fuzzy
-msgid "can't write to output file"
-msgstr "áäõíáìßá åããñáöÞò áñ÷åßùí åîüäïõ óôï `%s'"
-
-#: config/mips/mips.c:6559
-#, fuzzy
-msgid "can't read from temp file"
-msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ"
-
-#: config/mips/mips.c:6562
-#, fuzzy
-msgid "can't close temp file"
-msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ"
-
-#: config/mips/mips.c:7003
+#: config/mips/mips.c:5512
#, c-format
-msgid "gp_offset (%ld) or end_offset (%ld) is less than zero"
+msgid "PRINT_OPERAND, invalid insn for %%W"
msgstr ""
-#: config/mips/mips.c:7112
-#, c-format
-msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
+#: config/mips/mips.c:5618
+msgid "PRINT_OPERAND, invalid operand for relocation"
msgstr ""
-#: config/mips/mips.c:9335
+#: config/mips/mips.c:8252
#, fuzzy, c-format
msgid "can not handle inconsistent calls to `%s'"
msgstr "áäõíáìßá åêôÝëåóçò ioctl óôï `%s'"
-#: config/mips/mips.c:10467
+#: config/mips/mips.c:9258
msgid "the cpu name must be lower case"
msgstr ""
-#: config/mips/mips.c:10489
+#: config/mips/mips.c:9280
#, fuzzy, c-format
msgid "bad value (%s) for %s"
msgstr "ÁêáôÜëëçëç ôéìÞ óôï ai_flags"
+#: config/mips/mips.c:9549
+#, fuzzy, c-format
+msgid "can't rewind temp file: %m"
+msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ"
+
+#: config/mips/mips.c:9553
+#, fuzzy, c-format
+msgid "can't write to output file: %m"
+msgstr "áäõíáìßá åããñáöÞò áñ÷åßùí åîüäïõ óôï `%s'"
+
+#: config/mips/mips.c:9556
+#, fuzzy, c-format
+msgid "can't read from temp file: %m"
+msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ"
+
+#: config/mips/mips.c:9559
+#, fuzzy, c-format
+msgid "can't close temp file: %m"
+msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ"
+
+#: config/mips/linux64.h:39
+msgid "Same as -mabi=32, just trickier"
+msgstr ""
+
#. Target CPU builtins.
#. We do this here because __mips is defined below and so we can't use builtin_define_std.
#. Treat _R3000 and _R4000 like register-size defines, which is how they've historically been used.
#. Macros dependent on the C dialect.
-#. Bizzare, but needed at least for Irix.
+#. Bizarre, but needed at least for Irix.
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:528 config/mn10300/mn10300.h:64
-msgid "No default crt0.o"
-msgstr ""
-
-#: config/mips/mips.h:530
+#: config/mips/mips.h:501
msgid "Use 64-bit int type"
msgstr ""
-#: config/mips/mips.h:532
+#: config/mips/mips.h:503
msgid "Use 64-bit long type"
msgstr ""
-#: config/mips/mips.h:534
+#: config/mips/mips.h:505
msgid "Use 32-bit long type"
msgstr ""
-#: config/mips/mips.h:536
+#: config/mips/mips.h:507
msgid "Optimize lui/addiu address loads"
msgstr ""
-#: config/mips/mips.h:538
+#: config/mips/mips.h:509
msgid "Don't optimize lui/addiu address loads"
msgstr ""
-#: config/mips/mips.h:540
+#: config/mips/mips.h:511
msgid "Use MIPS as"
msgstr ""
-#: config/mips/mips.h:542
+#: config/mips/mips.h:513
msgid "Use GNU as"
msgstr ""
-#: config/mips/mips.h:544
+#: config/mips/mips.h:515
#, fuzzy
msgid "Use symbolic register names"
msgstr "äåí äþèçêå óõìâïëéêü üíïìá"
-#: config/mips/mips.h:546
+#: config/mips/mips.h:517
msgid "Don't use symbolic register names"
msgstr ""
-#: config/mips/mips.h:548 config/mips/mips.h:550
-msgid "Use GP relative sdata/sbss sections"
+#: config/mips/mips.h:519 config/mips/mips.h:521
+msgid "Use GP relative sdata/sbss sections (now ignored)"
msgstr ""
-#: config/mips/mips.h:552 config/mips/mips.h:554
-msgid "Don't use GP relative sdata/sbss sections"
+#: config/mips/mips.h:523 config/mips/mips.h:525
+msgid "Don't use GP relative sdata/sbss sections (now ignored)"
msgstr ""
-#: config/mips/mips.h:556
-msgid "Output compiler statistics"
+#: config/mips/mips.h:527
+msgid "Output compiler statistics (now ignored)"
msgstr ""
-#: config/mips/mips.h:558
+#: config/mips/mips.h:529
msgid "Don't output compiler statistics"
msgstr ""
-#: config/mips/mips.h:560
+#: config/mips/mips.h:531
msgid "Don't optimize block moves"
msgstr ""
-#: config/mips/mips.h:562
+#: config/mips/mips.h:533
msgid "Optimize block moves"
msgstr ""
-#: config/mips/mips.h:564
+#: config/mips/mips.h:535
msgid "Use mips-tfile asm postpass"
msgstr ""
-#: config/mips/mips.h:566
+#: config/mips/mips.h:537
msgid "Don't use mips-tfile asm postpass"
msgstr ""
@@ -11881,271 +11208,237 @@ msgstr ""
#. where VALUE is the bits to set or minus the bits to clear and DOC
#. is the documentation for --help (NULL if intentionally undocumented).
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:570 config/pdp11/pdp11.h:56
+#: config/mips/mips.h:541 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:314
msgid "Use hardware floating point"
msgstr ""
-#: config/mips/mips.h:572
+#: config/mips/mips.h:543
msgid "Use 64-bit FP registers"
msgstr ""
-#: config/mips/mips.h:574
+#: config/mips/mips.h:545
msgid "Use 32-bit FP registers"
msgstr ""
-#: config/mips/mips.h:576
+#: config/mips/mips.h:547
msgid "Use 64-bit general registers"
msgstr ""
-#: config/mips/mips.h:578
+#: config/mips/mips.h:549
msgid "Use 32-bit general registers"
msgstr ""
-#: config/mips/mips.h:580
+#: config/mips/mips.h:551
msgid "Use Irix PIC"
msgstr ""
-#: config/mips/mips.h:582
+#: config/mips/mips.h:553
msgid "Don't use Irix PIC"
msgstr ""
-#: config/mips/mips.h:584
+#: config/mips/mips.h:555
msgid "Use indirect calls"
msgstr ""
-#: config/mips/mips.h:586
+#: config/mips/mips.h:557
msgid "Don't use indirect calls"
msgstr ""
-#: config/mips/mips.h:588
+#: config/mips/mips.h:559
msgid "Use embedded PIC"
msgstr ""
-#: config/mips/mips.h:590
+#: config/mips/mips.h:561
msgid "Don't use embedded PIC"
msgstr ""
-#: config/mips/mips.h:592
-msgid "Use ROM instead of RAM"
-msgstr ""
-
-#: config/mips/mips.h:594
-msgid "Don't use ROM instead of RAM"
-msgstr ""
-
-#: config/mips/mips.h:596
-msgid "Put uninitialized constants in ROM (needs -membedded-data)"
-msgstr ""
-
-#: config/mips/mips.h:598
-msgid "Don't put uninitialized constants in ROM"
-msgstr ""
-
-#. Macro to define tables used to set the flags.
-#: config/mips/mips.h:600 config/xtensa/xtensa.h:110
+#: config/mips/mips.h:571
msgid "Use big-endian byte order"
msgstr ""
-#: config/mips/mips.h:602 config/xtensa/xtensa.h:112
+#: config/mips/mips.h:573
msgid "Use little-endian byte order"
msgstr ""
-#: config/mips/mips.h:604
+#: config/mips/mips.h:575
msgid "Use single (32-bit) FP only"
msgstr ""
-#: config/mips/mips.h:606
+#: config/mips/mips.h:577
msgid "Don't use single (32-bit) FP only"
msgstr ""
-#: config/mips/mips.h:608
+#: config/mips/mips.h:579
msgid "Use multiply accumulate"
msgstr ""
-#: config/mips/mips.h:610
+#: config/mips/mips.h:581
msgid "Don't use multiply accumulate"
msgstr ""
-#: config/mips/mips.h:612 config/rs6000/rs6000.h:314
+#: config/mips/mips.h:583
msgid "Don't generate fused multiply/add instructions"
msgstr ""
-#: config/mips/mips.h:614 config/rs6000/rs6000.h:312
+#: config/mips/mips.h:585 config/rs6000/rs6000.h:330
msgid "Generate fused multiply/add instructions"
msgstr ""
-#: config/mips/mips.h:616
+#: config/mips/mips.h:587
msgid "Work around early 4300 hardware bug"
msgstr ""
-#: config/mips/mips.h:618
+#: config/mips/mips.h:589
msgid "Don't work around early 4300 hardware bug"
msgstr ""
-#: config/mips/mips.h:620
-msgid "Trap on integer divide by zero"
+#: config/mips/mips.h:591
+msgid "Work around errata for early SB-1 revision 2 cores"
msgstr ""
-#: config/mips/mips.h:622
-msgid "Don't trap on integer divide by zero"
+#: config/mips/mips.h:593
+msgid "Don't work around errata for early SB-1 revision 2 cores"
msgstr ""
-#: config/mips/mips.h:624
-msgid "Trap on integer divide overflow"
+#: config/mips/mips.h:595
+msgid "Trap on integer divide by zero"
msgstr ""
-#: config/mips/mips.h:626
-msgid "Don't trap on integer divide overflow"
+#: config/mips/mips.h:597
+msgid "Don't trap on integer divide by zero"
msgstr ""
-#: config/mips/mips.h:628
+#: config/mips/mips.h:599
msgid "Use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:630
+#: config/mips/mips.h:601
msgid "Don't use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:744 config/pa/pa.h:310
-msgid "Specify CPU for scheduling purposes"
+#: config/mips/mips.h:603
+msgid "Use NewABI-style %reloc() assembly operators"
msgstr ""
-#: config/mips/mips.h:746
-msgid "Specify CPU for code generation purposes"
+#: config/mips/mips.h:605
+msgid "Use assembler macros instead of relocation operators"
msgstr ""
-#: config/mips/mips.h:748
-msgid "Specify an ABI"
+#: config/mips/mips.h:607
+msgid "Generate mips16 code"
msgstr ""
-#: config/mips/mips.h:750
-msgid "Specify a Standard MIPS ISA"
+#: config/mips/mips.h:609
+msgid "Generate normal-mode code"
msgstr ""
-#: config/mips/mips.h:752
-msgid "Use mips16 entry/exit psuedo ops"
+#: config/mips/mips.h:611
+msgid "Lift restrictions on GOT size"
msgstr ""
-#: config/mips/mips.h:754
-msgid "Don't use MIPS16 instructions"
+#: config/mips/mips.h:613
+msgid "Do not lift restrictions on GOT size"
msgstr ""
-#: config/mips/mips.h:756
-msgid "Don't call any cache flush functions"
+#: config/mips/mips.h:735
+msgid "Specify an ABI"
msgstr ""
-#: config/mips/mips.h:758
-msgid "Specify cache flush function"
+#: config/mips/mips.h:737
+msgid "Specify a Standard MIPS ISA"
msgstr ""
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/mips/mips.h:2900
+#: config/mips/mips.h:2403
msgid "mips16 function profiling"
msgstr ""
-#: config/mmix/mmix.c:189
+#: config/mmix/mmix.c:207
#, fuzzy, c-format
msgid "-f%s not supported: ignored"
msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
-#: config/mmix/mmix.c:644
+#: config/mmix/mmix.c:633
#, c-format
msgid "too large function value type, needs %d registers, have only %d registers for this"
msgstr ""
-#: config/mmix/mmix.c:826
+#: config/mmix/mmix.c:803
msgid "function_profiler support for MMIX"
msgstr ""
-#: config/mmix/mmix.c:848
+#: config/mmix/mmix.c:823
msgid "MMIX Internal: Last named vararg would not fit in a register"
msgstr ""
-#: config/mmix/mmix.c:1639 config/mmix/mmix.c:1769
+#: config/mmix/mmix.c:1538 config/mmix/mmix.c:1668
msgid "MMIX Internal: Expected a CONST_INT, not this"
msgstr ""
-#: config/mmix/mmix.c:1647 config/mmix/mmix.c:1671 config/mmix/mmix.c:1787
+#: config/mmix/mmix.c:1546 config/mmix/mmix.c:1570 config/mmix/mmix.c:1686
#, c-format
msgid "MMIX Internal: Bad register: %d"
msgstr ""
-#: config/mmix/mmix.c:1718
+#: config/mmix/mmix.c:1617
msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
msgstr ""
-#: config/mmix/mmix.c:1737
+#: config/mmix/mmix.c:1636
msgid "MMIX Internal: Expected a register, not this"
msgstr ""
-#: config/mmix/mmix.c:1747
+#: config/mmix/mmix.c:1646
msgid "MMIX Internal: Expected a constant, not this"
msgstr ""
#. Presumably there's a missing case above if we get here.
-#: config/mmix/mmix.c:1779
+#: config/mmix/mmix.c:1678
#, c-format
msgid "MMIX Internal: Missing `%c' case in mmix_print_operand"
msgstr ""
#. We need the original here.
-#: config/mmix/mmix.c:1831
+#: config/mmix/mmix.c:1730
msgid "MMIX Internal: Cannot decode this operand"
msgstr ""
-#: config/mmix/mmix.c:1891
+#: config/mmix/mmix.c:1787
msgid "MMIX Internal: This is not a recognized address"
msgstr ""
-#: config/mmix/mmix.c:2082
+#: config/mmix/mmix.c:1964
#, fuzzy, c-format
msgid "stack frame not a multiple of 8 bytes: %d"
msgstr "ï ßäéïò êáíüíáò óå ðïëëáðëÜ áñ÷åßá"
-#: config/mmix/mmix.c:2321
+#: config/mmix/mmix.c:2203
#, c-format
msgid "stack frame not a multiple of octabyte: %d"
msgstr ""
-#: config/mmix/mmix.c:2818 config/mmix/mmix.c:2887
+#: config/mmix/mmix.c:2677 config/mmix/mmix.c:2741
#, c-format
msgid "MMIX Internal: %s is not a shiftable int"
msgstr ""
-#: config/mmix/mmix.c:3006
+#: config/mmix/mmix.c:2857
msgid "MMIX Internal: Trying to output invalidly reversed condition:"
msgstr ""
-#: config/mmix/mmix.c:3013
+#: config/mmix/mmix.c:2864
msgid "MMIX Internal: What's the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:3017
+#: config/mmix/mmix.c:2868
msgid "MMIX Internal: What is the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:3088
+#: config/mmix/mmix.c:2938
msgid "MMIX Internal: This is not a constant:"
msgstr ""
-#. For these target macros, there is no generic documentation here. You
-#. should read `Using and Porting GCC' for that. Only comments specific
-#. to the MMIX target are here.
-#.
-#. There are however references to the specific texinfo node (comments
-#. with "Node:"), so there should be little or nothing amiss. Probably
-#. the opposite, since we don't have to care about old littering and
-#. soon outdated generic comments.
-#. Node: Driver
-#. User symbols are in the same name-space as built-in symbols, but we
-#. don't need the built-in symbols, so remove those and instead apply
-#. stricter operand checking. Don't warn when expanding insns.
-#. Pass on -mset-program-start=N and -mset-data-start=M to the linker.
-#. Provide default program start 0x100 unless -mno-set-program-start.
-#. Don't do this if linking relocatably, with -r. For a final link,
-#. produce mmo, unless ELF is requested or when linking relocatably.
-#. Put unused option values here.
#: config/mmix/mmix.h:132
msgid "Set start-address of the program"
msgstr ""
@@ -12216,23 +11509,27 @@ msgstr ""
msgid "Do not generate a single exit point for each function"
msgstr ""
-#: config/mn10300/mn10300.h:59
-msgid "Work around hardware multiply bug"
+#: config/mn10300/linux.h:60 config/mn10300/mn10300.h:71
+msgid "Target the AM33 processor"
msgstr ""
-#: config/mn10300/mn10300.h:60
-msgid "Do not work around hardware multiply bug"
+#: config/mn10300/linux.h:61 config/mn10300/mn10300.h:75
+msgid "Target the AM33/2.0 processor"
msgstr ""
-#: config/mn10300/mn10300.h:61
-msgid "Target the AM33 processor"
+#: config/mn10300/linux.h:62 config/mn10300/mn10300.h:78
+msgid "Enable linker relaxations"
msgstr ""
-#: config/mn10300/mn10300.h:65
-msgid "Enable linker relaxations"
+#: config/mn10300/mn10300.h:69
+msgid "Work around hardware multiply bug"
+msgstr ""
+
+#: config/mn10300/mn10300.h:70
+msgid "Do not work around hardware multiply bug"
msgstr ""
-#: config/ns32k/ns32k.h:142 config/s390/s390.h:69
+#: config/ns32k/ns32k.h:142 config/s390/s390.h:125
msgid "Don't use hardware fp"
msgstr ""
@@ -12306,45 +11603,38 @@ msgstr ""
msgid "No \"Small register classes\" kludge"
msgstr ""
-#: config/pa/pa.c:261
+#: config/pa/pa.c:304
#, c-format
msgid ""
"unknown -mschedule= option (%s).\n"
"Valid options are 700, 7100, 7100LC, 7200, 7300, and 8000\n"
msgstr ""
-#: config/pa/pa.c:286
+#: config/pa/pa.c:329
#, c-format
msgid ""
"unknown -march= option (%s).\n"
"Valid options are 1.0, 1.1, and 2.0\n"
msgstr ""
-#: config/pa/pa.c:299
+#: config/pa/pa.c:342
msgid "PIC code generation is not supported in the portable runtime model\n"
msgstr ""
-#: config/pa/pa.c:304
+#: config/pa/pa.c:347
msgid "PIC code generation is not compatible with fast indirect calls\n"
msgstr ""
-#: config/pa/pa.c:309
+#: config/pa/pa.c:352
msgid "-g is only supported when using GAS on this processor,"
msgstr ""
-#: config/pa/pa.c:310
-#, fuzzy
-msgid "-g option disabled"
-msgstr "Ç ëåéôïõñãßá NIS+ áðÝôõ÷å"
-
-#: config/pa/pa-hiux.h:75 config/pa/pa-hpux.h:87 config/pa/pa-hpux7.h:81
-#: config/pa/pa64-hpux.h:25
+#: config/pa/pa-hpux.h:91 config/pa/pa64-hpux.h:25
#, fuzzy
msgid "Generate cpp defines for server IO"
msgstr "×ñÞóç îå÷ùñéóôÞò ëáíèÜíïõóáò ìíÞìçò ãéá êÜèå ÷ñÞóôç"
-#: config/pa/pa-hiux.h:76 config/pa/pa-hpux.h:88 config/pa/pa-hpux7.h:82
-#: config/pa/pa64-hpux.h:27
+#: config/pa/pa-hpux.h:92 config/pa/pa64-hpux.h:27
msgid "Generate cpp defines for workstation IO"
msgstr ""
@@ -12474,51 +11764,51 @@ msgstr ""
msgid "Assume code will be linked by HP ld"
msgstr ""
-#: config/pdp11/pdp11.h:57
+#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:316
msgid "Do not use hardware floating point"
msgstr ""
#. return float result in ac0
-#: config/pdp11/pdp11.h:59
+#: config/pdp11/pdp11.h:64
#, fuzzy
msgid "Return floating point results in ac0"
msgstr "Åîáßñåóç êéíçôÞò õðïäéáóôïëÞò"
-#: config/pdp11/pdp11.h:60
+#: config/pdp11/pdp11.h:65
msgid "Return floating point results in memory"
msgstr ""
#. is 11/40
-#: config/pdp11/pdp11.h:62
+#: config/pdp11/pdp11.h:67
msgid "Generate code for an 11/40"
msgstr ""
#. is 11/45
-#: config/pdp11/pdp11.h:65
+#: config/pdp11/pdp11.h:70
msgid "Generate code for an 11/45"
msgstr ""
#. is 11/10
-#: config/pdp11/pdp11.h:68
+#: config/pdp11/pdp11.h:73
msgid "Generate code for an 11/10"
msgstr ""
#. use movstrhi for bcopy
#. use 32 bit for int
-#: config/pdp11/pdp11.h:73 config/pdp11/pdp11.h:74
+#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
msgid "Use 32 bit int"
msgstr ""
-#: config/pdp11/pdp11.h:75 config/pdp11/pdp11.h:76
+#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
msgid "Use 16 bit int"
msgstr ""
#. use 32 bit for float
-#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
+#: config/pdp11/pdp11.h:83 config/pdp11/pdp11.h:84
msgid "Use 32 bit float"
msgstr ""
-#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
+#: config/pdp11/pdp11.h:85 config/pdp11/pdp11.h:86
msgid "Use 64 bit float"
msgstr ""
@@ -12526,70 +11816,54 @@ msgstr ""
#. is branching expensive - on a PDP, it's actually really cheap
#. this is just to play around and check what code gcc generates
#. split instruction and data memory?
-#: config/pdp11/pdp11.h:90
+#: config/pdp11/pdp11.h:95
msgid "Target has split I&D"
msgstr ""
-#: config/pdp11/pdp11.h:91
+#: config/pdp11/pdp11.h:96
#, fuzzy
msgid "Target does not have split I&D"
msgstr "-nt äåí äÝ÷åôáé -l\n"
#. UNIX assembler syntax?
-#: config/pdp11/pdp11.h:93
+#: config/pdp11/pdp11.h:98
msgid "Use UNIX assembler syntax"
msgstr ""
-#: config/pdp11/pdp11.h:94
+#: config/pdp11/pdp11.h:99
msgid "Use DEC assembler syntax"
msgstr ""
-#: config/romp/romp.c:717 config/rs6000/rs6000.c:7755
-#, fuzzy, c-format
-msgid "invalid %%S value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+#: config/rs6000/host-darwin.c:52
+msgid "Segmentation Fault (code)"
+msgstr ""
-#: config/romp/romp.c:726 config/romp/romp.c:733
-#, fuzzy, c-format
-msgid "invalid %%b value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+#: config/rs6000/host-darwin.c:83
+msgid "Out of stack space.\n"
+msgstr ""
-#: config/romp/romp.c:773 config/romp/romp.c:784
-#, fuzzy, c-format
-msgid "invalid %%z value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+#: config/rs6000/host-darwin.c:104
+#, c-format
+msgid "Try running `%s' in the shell to raise its limit.\n"
+msgstr ""
-#: config/romp/romp.c:792 config/romp/romp.c:800
-#, fuzzy, c-format
-msgid "invalid %%Z value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+#: config/rs6000/host-darwin.c:117
+msgid "Segmentation Fault"
+msgstr ""
-#: config/romp/romp.c:807 config/romp/romp.c:816 config/romp/romp.c:823
-#: config/rs6000/rs6000.c:7584
-#, fuzzy, c-format
-msgid "invalid %%k value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+#: config/rs6000/host-darwin.c:131
+#, c-format
+msgid "While setting up signal stack: %m"
+msgstr ""
-#: config/romp/romp.c:908 config/romp/romp.c:951
-#, fuzzy, c-format
-msgid "invalid %%j value"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+#: config/rs6000/host-darwin.c:137
+#, c-format
+msgid "While setting up signal handler: %m"
+msgstr ""
-#. Perform any needed actions needed for a function that is receiving a
-#. variable number of arguments.
-#.
-#. CUM is as above.
-#.
-#. MODE and TYPE are the mode and type of the current parameter.
-#.
-#. PRETEND_SIZE is a variable that should be set to the amount of stack
-#. that must be pushed by the prolog to pretend that our caller pushed
-#. it.
-#.
-#. Normally, this macro will push all remaining incoming registers on the
-#. stack and set PRETEND_SIZE to the length of the registers pushed.
-#: config/romp/romp.h:648
-msgid "can't have varargs with -mfp-arg-in-fp-regs"
+#: config/rs6000/host-darwin.c:184
+#, c-format
+msgid "couldn't unmap pch_address_space: %m\n"
msgstr ""
#. Handle the machine specific pragma longcall. Its syntax is
@@ -12601,206 +11875,254 @@ msgstr ""
#. rs6000_default_long_calls is set to the value of TOGGLE, changing
#. whether or not new function declarations receive a longcall
#. attribute by default.
-#: config/rs6000/rs6000-c.c:44
+#: config/rs6000/rs6000-c.c:46
#, fuzzy
msgid "ignoring malformed #pragma longcall"
msgstr "áãíïïýíôáé üëá ôá ïñßóìáôá"
-#: config/rs6000/rs6000-c.c:58
+#: config/rs6000/rs6000-c.c:59
#, fuzzy
msgid "missing open paren"
msgstr "ÅëëéðÞò Þ êáêïó÷çìáôéóìÝíç éäéüôçôá"
-#: config/rs6000/rs6000-c.c:60
+#: config/rs6000/rs6000-c.c:61
#, fuzzy
msgid "missing number"
msgstr "¸÷åé ðáñáëçöèåß åíôïëÞ"
-#: config/rs6000/rs6000-c.c:62
+#: config/rs6000/rs6000-c.c:63
#, fuzzy
msgid "missing close paren"
msgstr "¸÷åé ðáñáëçöèåß åíôïëÞ"
-#: config/rs6000/rs6000-c.c:65
+#: config/rs6000/rs6000-c.c:66
msgid "number must be 0 or 1"
msgstr ""
-#: config/rs6000/rs6000-c.c:68
+#: config/rs6000/rs6000-c.c:69
#, fuzzy
msgid "junk at end of #pragma longcall"
msgstr "ìç ôåñìáôéæüìåío áëöáñéèìçôéêü"
-#: config/rs6000/rs6000.c:592
+#: config/rs6000/rs6000.c:793
#, fuzzy
msgid "-mmultiple is not supported on little endian systems"
msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
-#: config/rs6000/rs6000.c:599
+#: config/rs6000/rs6000.c:800
#, fuzzy
msgid "-mstring is not supported on little endian systems"
msgstr "ðñïåéäïðïßçóç: ôï --pid=PID äåí õðïóôçñßæåôáé óå áõôü ôï óýóôçìá"
-#: config/rs6000/rs6000.c:623
+#: config/rs6000/rs6000.c:814
#, c-format
msgid "unknown -mdebug-%s switch"
msgstr ""
-#: config/rs6000/rs6000.c:635
+#: config/rs6000/rs6000.c:826
#, c-format
msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'"
msgstr ""
-#: config/rs6000/rs6000.c:646
+#: config/rs6000/rs6000.c:837
#, c-format
msgid "Unknown switch -mlong-double-%s"
msgstr ""
-#: config/rs6000/rs6000.c:738
+#: config/rs6000/rs6000.c:1008
#, fuzzy, c-format
-msgid "unknown -misel= option specified: '%s'"
+msgid "unknown -m%s= option specified: '%s'"
msgstr "Üãíùóôï óåô `%s'"
-#: config/rs6000/rs6000.c:753
+#: config/rs6000/rs6000.c:1025
+#, c-format
+msgid "not configured for ABI: '%s'"
+msgstr ""
+
+#: config/rs6000/rs6000.c:1031
#, fuzzy, c-format
-msgid "unknown -mvrsave= option specified: '%s'"
+msgid "unknown ABI specified: '%s'"
msgstr "Üãíùóôï óåô `%s'"
-#: config/rs6000/rs6000.c:772
+#: config/rs6000/rs6000.c:1045
#, fuzzy, c-format
-msgid "unknown ABI specified: '%s'"
+msgid "unknown -malign-XXXXX option specified: '%s'"
msgstr "Üãíùóôï óåô `%s'"
-#: config/rs6000/rs6000.c:4206
+#: config/rs6000/rs6000.c:5358
#, fuzzy
msgid "argument 1 must be a 5-bit signed literal"
msgstr "Ç ðáñÜìåôñïò óôï `%s' ðñÝðåé íá åßíáé Ýíáò áðëüò ÷áñáêôÞñáò"
-#: config/rs6000/rs6000.c:4313 config/rs6000/rs6000.c:4903
+#: config/rs6000/rs6000.c:5460 config/rs6000/rs6000.c:6083
#, fuzzy
msgid "argument 2 must be a 5-bit unsigned literal"
msgstr "Ç ðáñÜìåôñïò óôï `%s' ðñÝðåé íá åßíáé Ýíáò áðëüò ÷áñáêôÞñáò"
-#: config/rs6000/rs6000.c:4356
+#: config/rs6000/rs6000.c:5500
msgid "argument 1 of __builtin_altivec_predicate must be a constant"
msgstr ""
-#: config/rs6000/rs6000.c:4410
+#: config/rs6000/rs6000.c:5554
msgid "argument 1 of __builtin_altivec_predicate is out of range"
msgstr ""
-#: config/rs6000/rs6000.c:4489
+#: config/rs6000/rs6000.c:5682
#, fuzzy
msgid "argument 3 must be a 4-bit unsigned literal"
msgstr "Ç ðáñÜìåôñïò óôï `%s' ðñÝðåé íá åßíáé Ýíáò áðëüò ÷áñáêôÞñáò"
-#: config/rs6000/rs6000.c:4666
+#: config/rs6000/rs6000.c:5852
#, fuzzy, c-format
msgid "argument to `%s' must be a 2-bit unsigned literal"
msgstr "Ç ðáñÜìåôñïò óôï `%s' ðñÝðåé íá åßíáé Ýíáò áðëüò ÷áñáêôÞñáò"
-#: config/rs6000/rs6000.c:4782
+#: config/rs6000/rs6000.c:5965
#, fuzzy
msgid "argument to dss must be a 2-bit unsigned literal"
msgstr "Ç ðáñÜìåôñïò óôï `%s' ðñÝðåé íá åßíáé Ýíáò áðëüò ÷áñáêôÞñáò"
-#: config/rs6000/rs6000.c:5013
+#: config/rs6000/rs6000.c:6203
#, fuzzy
msgid "argument 1 of __builtin_spe_predicate must be a constant"
msgstr "Ç ðáñÜìåôñïò óôï <%s> ðñÝðåé íá åßíáé Ýíáò áðëüò ÷áñáêôÞñáò"
-#: config/rs6000/rs6000.c:5086
+#: config/rs6000/rs6000.c:6276
msgid "argument 1 of __builtin_spe_predicate is out of range"
msgstr ""
-#: config/rs6000/rs6000.c:7511
+#: config/rs6000/rs6000.c:8711
#, fuzzy, c-format
msgid "invalid %%f value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/rs6000/rs6000.c:7520
+#: config/rs6000/rs6000.c:8720
#, fuzzy, c-format
msgid "invalid %%F value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/rs6000/rs6000.c:7529
+#: config/rs6000/rs6000.c:8729
#, fuzzy, c-format
msgid "invalid %%G value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/rs6000/rs6000.c:7564
+#: config/rs6000/rs6000.c:8764
#, fuzzy, c-format
msgid "invalid %%j code"
msgstr "ìç Ýãêõñï äéêáßùìá"
-#: config/rs6000/rs6000.c:7574
+#: config/rs6000/rs6000.c:8774
#, fuzzy, c-format
msgid "invalid %%J code"
msgstr "ìç Ýãêõñï äéêáßùìá"
-#: config/rs6000/rs6000.c:7604
+#: config/rs6000/rs6000.c:8784
+#, fuzzy, c-format
+msgid "invalid %%k value"
+msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#: config/rs6000/rs6000.c:8804 config/xtensa/xtensa.c:1985
#, fuzzy, c-format
msgid "invalid %%K value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/rs6000/rs6000.c:7671
+#: config/rs6000/rs6000.c:8871
#, fuzzy, c-format
msgid "invalid %%O value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/rs6000/rs6000.c:7793
+#: config/rs6000/rs6000.c:8918
+#, fuzzy, c-format
+msgid "invalid %%q value"
+msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#: config/rs6000/rs6000.c:8962
+#, fuzzy, c-format
+msgid "invalid %%S value"
+msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#: config/rs6000/rs6000.c:9004
#, fuzzy, c-format
msgid "invalid %%T value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/rs6000/rs6000.c:7803
+#: config/rs6000/rs6000.c:9014
#, fuzzy, c-format
msgid "invalid %%u value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/rs6000/rs6000.c:7812
+#: config/rs6000/rs6000.c:9023 config/xtensa/xtensa.c:1955
#, fuzzy, c-format
msgid "invalid %%v value"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/rs6000/rs6000.c:12242
+#: config/rs6000/rs6000.c:13513
msgid "no profiling of 64-bit code for this ABI"
msgstr ""
-#: config/rs6000/aix.h:160 config/rs6000/beos.h:32
+#: config/rs6000/aix.h:184 config/rs6000/beos.h:32
#, fuzzy
msgid "Always pass floating-point arguments in memory"
msgstr "Ç ðáñÜìåôñïò êéíçôÞò õðïäéáóôïëÞò äåí åßíáé Ýãêõñç: %s"
-#: config/rs6000/aix.h:162 config/rs6000/beos.h:34
+#: config/rs6000/aix.h:186 config/rs6000/beos.h:34
#, fuzzy
msgid "Don't always pass floating-point arguments in memory"
msgstr "Ç ðáñÜìåôñïò êéíçôÞò õðïäéáóôïëÞò äåí åßíáé Ýãêõñç: %s"
-#: config/rs6000/aix41.h:28 config/rs6000/aix43.h:32 config/rs6000/aix51.h:32
-#: config/rs6000/aix52.h:32
+#: config/rs6000/aix41.h:27 config/rs6000/aix43.h:31 config/rs6000/aix51.h:31
+#: config/rs6000/aix52.h:31
msgid "Support message passing with the Parallel Environment"
msgstr ""
-#: config/rs6000/aix43.h:28 config/rs6000/aix51.h:28 config/rs6000/aix52.h:28
+#: config/rs6000/aix43.h:27 config/rs6000/aix51.h:27 config/rs6000/aix52.h:27
msgid "Compile for 64-bit pointers"
msgstr ""
-#: config/rs6000/aix43.h:30 config/rs6000/aix51.h:30 config/rs6000/aix52.h:30
+#: config/rs6000/aix43.h:29 config/rs6000/aix51.h:29 config/rs6000/aix52.h:29
msgid "Compile for 32-bit pointers"
msgstr ""
-#: config/rs6000/aix43.h:49 config/rs6000/aix51.h:49 config/rs6000/aix52.h:49
+#: config/rs6000/aix43.h:48 config/rs6000/aix51.h:48 config/rs6000/aix52.h:48
msgid "-maix64 and POWER architecture are incompatible"
msgstr ""
-#: config/rs6000/aix43.h:54 config/rs6000/aix51.h:54 config/rs6000/aix52.h:54
+#: config/rs6000/aix43.h:53 config/rs6000/aix51.h:53 config/rs6000/aix52.h:53
msgid "-maix64 requires PowerPC64 architecture remain enabled"
msgstr ""
-#: config/rs6000/aix43.h:58 config/rs6000/aix51.h:58 config/rs6000/aix52.h:58
+#: config/rs6000/aix43.h:57 config/rs6000/aix51.h:57 config/rs6000/aix52.h:57
msgid "-maix64 required: 64-bit computation with 32-bit addressing not yet supported"
msgstr ""
+#: config/rs6000/darwin.h:64
+msgid "Generate code suitable for executables (NOT shared libs)"
+msgstr ""
+
+#. The Darwin ABI always includes AltiVec, can't be (validly) turned
+#. off.
+#: config/rs6000/darwin.h:80
+msgid "-mdynamic-no-pic overrides -fpic or -fPIC"
+msgstr ""
+
+#. Darwin doesn't support -fpic.
+#: config/rs6000/darwin.h:86
+#, fuzzy
+msgid "-fpic is not supported; -fPIC assumed"
+msgstr "ôï -pipe äåí õðïóôçñßæåôáé"
+
+#: config/rs6000/linux64.h:96
+msgid "-m64 requires a PowerPC64 cpu"
+msgstr ""
+
+#: config/rs6000/linux64.h:201
+msgid "Call mcount for profiling before a function prologue"
+msgstr ""
+
+#: config/rs6000/linux64.h:203
+msgid "Call mcount for profiling after a function prologue"
+msgstr ""
+
#. Run-time compilation parameters selecting different hardware subsets.
#.
#. Macro to define tables used to set the flags.
@@ -12808,164 +12130,206 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/rs6000/rs6000.h:240
+#: config/rs6000/rs6000.h:262
msgid "Use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:243
+#: config/rs6000/rs6000.h:265
msgid "Use POWER2 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:245
+#: config/rs6000/rs6000.h:267
msgid "Do not use POWER2 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:248
+#: config/rs6000/rs6000.h:270
msgid "Do not use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:250
+#: config/rs6000/rs6000.h:272
msgid "Use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:253
+#: config/rs6000/rs6000.h:275
msgid "Do not use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:255
+#: config/rs6000/rs6000.h:277
msgid "Use PowerPC General Purpose group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:257
-msgid "Don't use PowerPC General Purpose group optional instructions"
+#: config/rs6000/rs6000.h:279
+msgid "Do not use PowerPC General Purpose group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:259
+#: config/rs6000/rs6000.h:281
msgid "Use PowerPC Graphics group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:261
-msgid "Don't use PowerPC Graphics group optional instructions"
+#: config/rs6000/rs6000.h:283
+msgid "Do not use PowerPC Graphics group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:263
+#: config/rs6000/rs6000.h:285
msgid "Use PowerPC-64 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:265
-msgid "Don't use PowerPC-64 instruction set"
-msgstr ""
+#: config/rs6000/rs6000.h:287
+#, fuzzy
+msgid "Do not use PowerPC-64 instruction set"
+msgstr "Äåí åßíáé äõíáôÞ ç êáôá÷þñçóç ôçò õðçñåóßáò"
-#: config/rs6000/rs6000.h:267
+#: config/rs6000/rs6000.h:289
#, fuzzy
msgid "Use AltiVec instructions"
msgstr "ÁêáôÜëëçëç åíôïëÞ"
-#: config/rs6000/rs6000.h:269
-msgid "Don't use AltiVec instructions"
-msgstr ""
+#: config/rs6000/rs6000.h:291
+#, fuzzy
+msgid "Do not use AltiVec instructions"
+msgstr "ÁêáôÜëëçëç åíôïëÞ"
-#: config/rs6000/rs6000.h:271
+#: config/rs6000/rs6000.h:293
msgid "Use new mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.h:273
+#: config/rs6000/rs6000.h:295
msgid "Use old mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.h:276
+#: config/rs6000/rs6000.h:298
msgid "Put everything in the regular TOC"
msgstr ""
-#: config/rs6000/rs6000.h:278
+#: config/rs6000/rs6000.h:300
msgid "Place floating point constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:280
-msgid "Don't place floating point constants in TOC"
-msgstr ""
+#: config/rs6000/rs6000.h:302
+#, fuzzy
+msgid "Do not place floating point constants in TOC"
+msgstr "Ç ðáñÜìåôñïò êéíçôÞò õðïäéáóôïëÞò äåí åßíáé Ýãêõñç: %s"
-#: config/rs6000/rs6000.h:282
+#: config/rs6000/rs6000.h:304
msgid "Place symbol+offset constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:284
-msgid "Don't place symbol+offset constants in TOC"
+#: config/rs6000/rs6000.h:306
+msgid "Do not place symbol+offset constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:290
+#: config/rs6000/rs6000.h:312
msgid "Place variable addresses in the regular TOC"
msgstr ""
-#: config/rs6000/rs6000.h:296
+#: config/rs6000/rs6000.h:318
msgid "Generate load/store multiple instructions"
msgstr ""
-#: config/rs6000/rs6000.h:298
+#: config/rs6000/rs6000.h:320
msgid "Do not generate load/store multiple instructions"
msgstr ""
-#: config/rs6000/rs6000.h:302
+#: config/rs6000/rs6000.h:322
msgid "Generate string instructions for block moves"
msgstr ""
-#: config/rs6000/rs6000.h:304
+#: config/rs6000/rs6000.h:324
msgid "Do not generate string instructions for block moves"
msgstr ""
-#: config/rs6000/rs6000.h:308
+#: config/rs6000/rs6000.h:326
msgid "Generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.h:310
+#: config/rs6000/rs6000.h:328
msgid "Do not generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.h:318
-msgid "Don't schedule the start and end of the procedure"
+#: config/rs6000/rs6000.h:332
+#, fuzzy
+msgid "Do not generate fused multiply/add instructions"
+msgstr "ÁêáôÜëëçëç åíôïëÞ"
+
+#: config/rs6000/rs6000.h:336
+msgid "Do not schedule the start and end of the procedure"
msgstr ""
-#: config/rs6000/rs6000.h:324
+#: config/rs6000/rs6000.h:342
msgid "Return all structures in memory (AIX default)"
msgstr ""
-#: config/rs6000/rs6000.h:326
+#: config/rs6000/rs6000.h:344
msgid "Return small structures in registers (SVR4 default)"
msgstr ""
-#: config/rs6000/rs6000.h:391 config/sparc/sparc.h:633
+#: config/rs6000/rs6000.h:350
+#, fuzzy
+msgid "Generate single field mfcr instruction"
+msgstr "ÁêáôÜëëçëç åíôïëÞ"
+
+#: config/rs6000/rs6000.h:352
+#, fuzzy
+msgid "Do not generate single field mfcr instruction"
+msgstr "ÁêáôÜëëçëç åíôïëÞ"
+
+#: config/rs6000/rs6000.h:435 config/sparc/sparc.h:648
msgid "Use features of and schedule code for given CPU"
msgstr ""
-#: config/rs6000/rs6000.h:394
+#: config/rs6000/rs6000.h:438
msgid "Enable debug output"
msgstr ""
-#: config/rs6000/rs6000.h:396
+#: config/rs6000/rs6000.h:440
msgid "Select full, part, or no traceback table"
msgstr ""
-#: config/rs6000/rs6000.h:397
+#: config/rs6000/rs6000.h:441
msgid "Specify ABI to use"
msgstr ""
-#: config/rs6000/rs6000.h:399
+#: config/rs6000/rs6000.h:443
msgid "Specify size of long double (64 or 128 bits)"
msgstr ""
-#: config/rs6000/rs6000.h:401
+#: config/rs6000/rs6000.h:445
msgid "Specify yes/no if isel instructions should be generated"
msgstr ""
-#: config/rs6000/rs6000.h:403
+#: config/rs6000/rs6000.h:447
+msgid "Specify yes/no if SPE SIMD instructions should be generated"
+msgstr ""
+
+#: config/rs6000/rs6000.h:449
+msgid "Specify yes/no if using floating point in the GPRs"
+msgstr ""
+
+#: config/rs6000/rs6000.h:451
msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec"
msgstr ""
-#: config/rs6000/rs6000.h:405
+#: config/rs6000/rs6000.h:453
#, fuzzy
msgid "Avoid all range limits on call instructions"
msgstr "ÁêáôÜëëçëç åíôïëÞ"
+#: config/rs6000/rs6000.h:456
+msgid "Determine which dependences between insns are considered costly"
+msgstr ""
+
+#: config/rs6000/rs6000.h:458
+msgid "Specify which post scheduling nop insertion scheme to apply"
+msgstr ""
+
+#: config/rs6000/rs6000.h:460
+msgid "Specify alignment of structure fields default/natural"
+msgstr ""
+
+#: config/rs6000/rs6000.h:462
+msgid "Specify scheduling priority for dispatch slot restricted insns"
+msgstr ""
+
#. Definitions for __builtin_return_address and __builtin_frame_address.
#. __builtin_return_address (0) should give link register (65), enable
#. this.
@@ -12978,7 +12342,7 @@ msgstr "ÁêáôÜëëçëç åíôïëÞ"
#. Number of bytes into the frame return addresses can be found. See
#. rs6000_stack_info in rs6000.c for more information on how the different
#. abi's store the return address.
-#: config/rs6000/rs6000.h:1884
+#: config/rs6000/rs6000.h:1926
msgid "RETURN_ADDRESS_OFFSET not supported"
msgstr ""
@@ -12990,93 +12354,100 @@ msgstr ""
msgid "Select method for sdata handling"
msgstr ""
-#: config/rs6000/sysv4.h:103
+#: config/rs6000/sysv4.h:100
msgid "Align to the base type of the bit-field"
msgstr ""
-#: config/rs6000/sysv4.h:105
+#: config/rs6000/sysv4.h:102
msgid "Don't align to the base type of the bit-field"
msgstr ""
-#: config/rs6000/sysv4.h:107
+#: config/rs6000/sysv4.h:104
msgid "Don't assume that unaligned accesses are handled by the system"
msgstr ""
-#: config/rs6000/sysv4.h:109
+#: config/rs6000/sysv4.h:106
msgid "Assume that unaligned accesses are handled by the system"
msgstr ""
-#: config/rs6000/sysv4.h:111 config/rs6000/sysv4.h:115
+#: config/rs6000/sysv4.h:108 config/rs6000/sysv4.h:112
msgid "Produce code relocatable at runtime"
msgstr ""
-#: config/rs6000/sysv4.h:113 config/rs6000/sysv4.h:117
+#: config/rs6000/sysv4.h:110 config/rs6000/sysv4.h:114
msgid "Don't produce code relocatable at runtime"
msgstr ""
-#: config/rs6000/sysv4.h:119 config/rs6000/sysv4.h:121
+#: config/rs6000/sysv4.h:116 config/rs6000/sysv4.h:118
msgid "Produce little endian code"
msgstr ""
-#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:125
+#: config/rs6000/sysv4.h:120 config/rs6000/sysv4.h:122
msgid "Produce big endian code"
msgstr ""
-#: config/rs6000/sysv4.h:126 config/rs6000/sysv4.h:127
-#: config/rs6000/sysv4.h:128 config/rs6000/sysv4.h:129
-#: config/rs6000/sysv4.h:130 config/rs6000/sysv4.h:131
-#: config/rs6000/sysv4.h:141 config/rs6000/sysv4.h:142
-#: config/rs6000/sysv4.h:153 config/rs6000/sysv4.h:155
-#: config/rs6000/sysv4.h:157
+#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:124
+#: config/rs6000/sysv4.h:125 config/rs6000/sysv4.h:126
+#: config/rs6000/sysv4.h:127 config/rs6000/sysv4.h:128
+#: config/rs6000/sysv4.h:138 config/rs6000/sysv4.h:139
+#: config/rs6000/sysv4.h:151 config/rs6000/sysv4.h:157
#, fuzzy
msgid "no description yet"
msgstr "(÷ùñßò ðåñéãñáöÞ)"
-#: config/rs6000/sysv4.h:132
+#: config/rs6000/sysv4.h:129
msgid "Use EABI"
msgstr ""
-#: config/rs6000/sysv4.h:133
+#: config/rs6000/sysv4.h:130
msgid "Don't use EABI"
msgstr ""
-#: config/rs6000/sysv4.h:136
+#: config/rs6000/sysv4.h:133
msgid "Do not allow bit-fields to cross word boundaries"
msgstr ""
-#: config/rs6000/sysv4.h:138
+#: config/rs6000/sysv4.h:135
#, fuzzy
msgid "Use alternate register names"
msgstr "ìç ôåñìáôéæüìåíï üíïìá âÜñïõò"
-#: config/rs6000/sysv4.h:140
+#: config/rs6000/sysv4.h:137
msgid "Don't use alternate register names"
msgstr ""
-#: config/rs6000/sysv4.h:144
+#: config/rs6000/sysv4.h:141
msgid "Link with libsim.a, libc.a and sim-crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:146
+#: config/rs6000/sysv4.h:143
msgid "Link with libads.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:148
+#: config/rs6000/sysv4.h:145
msgid "Link with libyk.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:150
+#: config/rs6000/sysv4.h:147
msgid "Link with libmvme.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:152
+#: config/rs6000/sysv4.h:149
msgid "Set the PPC_EMB bit in the ELF flags header"
msgstr ""
-#: config/rs6000/sysv4.h:154
+#: config/rs6000/sysv4.h:150
msgid "Use the WindISS simulator"
msgstr ""
+#: config/rs6000/sysv4.h:153
+msgid "Generate 64-bit code"
+msgstr ""
+
+#: config/rs6000/sysv4.h:155
+msgid "Generate 32-bit code"
+msgstr ""
+
#. Sometimes certain combinations of command options do not make sense
#. on a particular target machine. You can define a macro
#. `OVERRIDE_OPTIONS' to take account of this. This macro, if
@@ -13100,367 +12471,437 @@ msgstr "ÁêáôÜëëçëç ôéìÞ óôï ai_flags"
msgid "-mrelocatable and -msdata=%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:255
+#: config/rs6000/sysv4.h:256
#, c-format
msgid "-f%s and -msdata=%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:264
+#: config/rs6000/sysv4.h:265
#, c-format
msgid "-msdata=%s and -mcall-%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:273
+#: config/rs6000/sysv4.h:274
msgid "-mrelocatable and -mno-minimal-toc are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:279
+#: config/rs6000/sysv4.h:280
#, c-format
msgid "-mrelocatable and -mcall-%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:286
+#: config/rs6000/sysv4.h:287
#, c-format
msgid "-fPIC and -mcall-%s are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:293
+#: config/rs6000/sysv4.h:294
#, fuzzy
msgid "-mcall-aixdesc must be big endian"
msgstr "ôá ìåãÝèç ôïõ óôçëïãíþìïíá ðñÝðåé íá åßíáé êáôÜ áýîïõóá óåéñÜ"
-#: config/s390/s390.c:3063
+#: config/rs6000/sysv4.h:309
+#, fuzzy, c-format
+msgid "-m%s not supported in this configuration"
+msgstr "Ç ïéêïãÝíåéá äéåõèýíóåùí äåí õðïóôçñßæåôáé áðü ôçí ïéêïãÝíåéá ðñùôïêüëëïõ"
+
+#: config/s390/s390.c:926
+#, c-format
+msgid "Unknown cpu used in -march=%s."
+msgstr ""
+
+#: config/s390/s390.c:945
+#, fuzzy, c-format
+msgid "Unknown cpu used in -mtune=%s."
+msgstr "ðÜñá ðïëëÝò äçëþóåéò ìåôáôñïðÞò óôçí êáôÜëçîç"
+
+#: config/s390/s390.c:950
+#, fuzzy, c-format
+msgid "z/Architecture mode not supported on %s."
+msgstr "Ôï servname äåí õðïóôçñßæåôáé áðü ôï ai_socktype"
+
+#: config/s390/s390.c:952
+msgid "64-bit ABI not supported in ESA/390 mode."
+msgstr ""
+
+#: config/s390/s390.c:3337
msgid "invalid UNSPEC as operand (1)"
msgstr ""
-#: config/s390/s390.c:3123
+#: config/s390/s390.c:3385
msgid "invalid UNSPEC as operand (2)"
msgstr ""
-#: config/s390/s390.c:3129
+#: config/s390/s390.c:3391
msgid "UNKNOWN in s390_output_symbolic_const !?"
msgstr ""
-#: config/s390/s390.c:3147
+#: config/s390/s390.c:3407
#, fuzzy
msgid "Cannot decompose address."
msgstr "Äåí åßíáé äõíáôÞ ç åê÷þñçóç ôçò æçôçèÞóáò äéåýèõíóçò"
-#: config/s390/s390.c:3308
+#: config/s390/s390.c:3578
msgid "UNKNOWN in print_operand !?"
msgstr ""
-#: config/s390/s390.c:4961
+#: config/s390/s390.c:5301
msgid "Total size of local variables exceeds architecture limit."
msgstr ""
-#: config/s390/s390.h:70
+#: config/s390/s390.h:126
msgid "Set backchain"
msgstr ""
-#: config/s390/s390.h:71
+#: config/s390/s390.h:127
msgid "Don't set backchain (faster, but debug harder"
msgstr ""
-#: config/s390/s390.h:72
+#: config/s390/s390.h:128
msgid "Use bras for executable < 64k"
msgstr ""
-#: config/s390/s390.h:73
+#: config/s390/s390.h:129
msgid "Don't use bras"
msgstr ""
-#: config/s390/s390.h:74
+#: config/s390/s390.h:130
msgid "Additional debug prints"
msgstr ""
-#: config/s390/s390.h:75
+#: config/s390/s390.h:131
msgid "Don't print additional debug prints"
msgstr ""
-#: config/s390/s390.h:76
-msgid "64 bit mode"
-msgstr "êáôÜóôáóç 64 bit"
+#: config/s390/s390.h:132
+#, fuzzy
+msgid "64 bit ABI"
+msgstr "×ñÞóç ABI 64-bit"
+
+#: config/s390/s390.h:133
+#, fuzzy
+msgid "31 bit ABI"
+msgstr "×ñÞóç ABI 64-bit"
+
+#: config/s390/s390.h:134
+msgid "z/Architecture"
+msgstr ""
-#: config/s390/s390.h:77
-msgid "31 bit mode"
-msgstr "êáôÜóôáóç 31 bit"
+#: config/s390/s390.h:135
+msgid "ESA/390 architecture"
+msgstr ""
-#: config/s390/s390.h:78
+#: config/s390/s390.h:136
#, fuzzy
msgid "mvcle use"
msgstr "Ç óõóêåõÞ åßíáé áðáó÷ïëçìÝíç"
-#: config/s390/s390.h:79
+#: config/s390/s390.h:137
msgid "mvc&ex"
msgstr ""
-#: config/sh/sh.c:5137
+#: config/s390/s390.h:138
+msgid "enable tpf OS code"
+msgstr ""
+
+#: config/s390/s390.h:139
+msgid "disable tpf OS code"
+msgstr ""
+
+#: config/s390/s390.h:140
+#, fuzzy
+msgid "disable fused multiply/add instructions"
+msgstr "ÁêáôÜëëçëç åíôïëÞ"
+
+#: config/s390/s390.h:141
+#, fuzzy
+msgid "enable fused multiply/add instructions"
+msgstr "ÁêáôÜëëçëç åíôïëÞ"
+
+#: config/sh/sh.c:5841
#, fuzzy
msgid "__builtin_saveregs not supported by this subtarget"
msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
-#: config/sh/sh.c:5687
+#: config/sh/sh.c:6743
msgid "attribute interrupt_handler is not compatible with -m5-compact"
msgstr ""
#. The sp_switch attribute only has meaning for interrupt functions.
-#: config/sh/sh.c:5713 config/sh/sh.c:5752
+#. The trap_exit attribute only has meaning for interrupt functions.
+#: config/sh/sh.c:6765 config/sh/sh.c:6800
#, c-format
msgid "`%s' attribute only applies to interrupt functions"
msgstr ""
#. The argument must be a constant string.
-#: config/sh/sh.c:5720
+#: config/sh/sh.c:6772
#, fuzzy, c-format
msgid "`%s' attribute argument not a string constant"
msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò"
#. The argument must be a constant integer.
-#: config/sh/sh.c:5759
+#: config/sh/sh.c:6807
#, c-format
msgid "`%s' attribute argument not an integer constant"
msgstr ""
#. There are no delay slots on SHmedia.
#. Relaxation isn't yet supported for SHmedia
-#: config/sh/sh.h:437
+#. -fprofile-arcs needs a working libgcov . In unified tree configurations with newlib, this requires to configure with --with-newlib --with-headers. But there is no way to check here we have a working libgcov, so just assume that we have.
+#: config/sh/sh.h:478
#, fuzzy
msgid "Profiling is not supported on this target."
msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
-#: config/sparc/sparc.c:329
+#: config/sparc/sparc.c:360
#, fuzzy, c-format
msgid "%s is not supported by this configuration"
msgstr "Ç ïéêïãÝíåéá äéåõèýíóåùí äåí õðïóôçñßæåôáé áðü ôçí ïéêïãÝíåéá ðñùôïêüëëïõ"
-#: config/sparc/sparc.c:336
+#: config/sparc/sparc.c:367
msgid "-mlong-double-64 not allowed with -m64"
msgstr ""
-#: config/sparc/sparc.c:361
+#: config/sparc/sparc.c:392
#, fuzzy
msgid "-mcmodel= is not supported on 32 bit systems"
msgstr "óõìâïëéêïß óýíäåóìïé äåí õðïóôçñßæïíôáé óôï óýóôçìá áõôü"
-#: config/sparc/sparc.c:6341 config/sparc/sparc.c:6347
+#: config/sparc/sparc.c:6793 config/sparc/sparc.c:6799
#, fuzzy, c-format
msgid "invalid %%Y operand"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/sparc/sparc.c:6417
+#: config/sparc/sparc.c:6869
#, fuzzy, c-format
msgid "invalid %%A operand"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/sparc/sparc.c:6427
+#: config/sparc/sparc.c:6879
#, fuzzy, c-format
msgid "invalid %%B operand"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/sparc/sparc.c:6466
+#: config/sparc/sparc.c:6918
#, fuzzy, c-format
msgid "invalid %%c operand"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/sparc/sparc.c:6467
+#: config/sparc/sparc.c:6919
#, fuzzy, c-format
msgid "invalid %%C operand"
msgstr "ìç Ýãêõñç ìåôáôüðéóç UTC"
-#: config/sparc/sparc.c:6488
+#: config/sparc/sparc.c:6940
#, fuzzy, c-format
msgid "invalid %%d operand"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/sparc/sparc.c:6489
+#: config/sparc/sparc.c:6941
#, fuzzy, c-format
msgid "invalid %%D operand"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/sparc/sparc.c:6505
+#: config/sparc/sparc.c:6957
#, fuzzy, c-format
msgid "invalid %%f operand"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/sparc/sparc.c:6519
+#: config/sparc/sparc.c:6971
#, fuzzy, c-format
msgid "invalid %%s operand"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/sparc/sparc.c:6573
+#: config/sparc/sparc.c:7025
msgid "long long constant not a valid immediate operand"
msgstr ""
-#: config/sparc/sparc.c:6576
+#: config/sparc/sparc.c:7028
msgid "floating point constant not a valid immediate operand"
msgstr ""
-#: config/sparc/freebsd.h:81 config/sparc/linux.h:87 config/sparc/linux64.h:89
-#: config/sparc/netbsd-elf.h:239
+#: config/sparc/freebsd.h:77 config/sparc/linux.h:92
+#: config/sparc/linux64.h:104 config/sparc/netbsd-elf.h:216
msgid "Use 128 bit long doubles"
msgstr ""
-#: config/sparc/sp64-elf.h:84 config/sparc/splet.h:29
+#: config/sparc/sp64-elf.h:90
msgid "Generate code for big endian"
msgstr ""
-#: config/sparc/sp64-elf.h:85 config/sparc/splet.h:30
+#: config/sparc/sp64-elf.h:91
msgid "Generate code for little endian"
msgstr ""
-#: config/sparc/sp86x-aout.h:51 config/sparc/sp86x-elf.h:65
+#: config/sparc/sp86x-elf.h:68
msgid "Use little-endian byte order for data"
msgstr ""
-#: config/sparc/sparc.h:532
+#: config/sparc/sparc.h:547
msgid "Assume possible double misalignment"
msgstr ""
-#: config/sparc/sparc.h:534
+#: config/sparc/sparc.h:549
msgid "Assume all doubles are aligned"
msgstr ""
-#: config/sparc/sparc.h:536
+#: config/sparc/sparc.h:551
msgid "Pass -assert pure-text to linker"
msgstr ""
-#: config/sparc/sparc.h:538
+#: config/sparc/sparc.h:553
msgid "Do not pass -assert pure-text to linker"
msgstr ""
-#: config/sparc/sparc.h:540
+#: config/sparc/sparc.h:555
msgid "Use flat register window model"
msgstr ""
-#: config/sparc/sparc.h:542
+#: config/sparc/sparc.h:557
msgid "Do not use flat register window model"
msgstr ""
-#: config/sparc/sparc.h:544
+#: config/sparc/sparc.h:559
msgid "Use ABI reserved registers"
msgstr ""
-#: config/sparc/sparc.h:546
+#: config/sparc/sparc.h:561
msgid "Do not use ABI reserved registers"
msgstr ""
-#: config/sparc/sparc.h:548
+#: config/sparc/sparc.h:563
msgid "Use hardware quad fp instructions"
msgstr ""
-#: config/sparc/sparc.h:550
+#: config/sparc/sparc.h:565
msgid "Do not use hardware quad fp instructions"
msgstr ""
-#: config/sparc/sparc.h:552
+#: config/sparc/sparc.h:567
msgid "Compile for v8plus ABI"
msgstr ""
-#: config/sparc/sparc.h:554
+#: config/sparc/sparc.h:569
msgid "Do not compile for v8plus ABI"
msgstr ""
-#: config/sparc/sparc.h:556
+#: config/sparc/sparc.h:571
#, fuzzy
msgid "Utilize Visual Instruction Set"
msgstr "ÐáñÜíïìç ÅíôïëÞ"
-#: config/sparc/sparc.h:558
+#: config/sparc/sparc.h:573
msgid "Do not utilize Visual Instruction Set"
msgstr ""
#. ??? These are deprecated, coerced to -mcpu=. Delete in 2.9.
-#: config/sparc/sparc.h:561
+#: config/sparc/sparc.h:576
msgid "Optimize for Cypress processors"
msgstr ""
-#: config/sparc/sparc.h:563
+#: config/sparc/sparc.h:578
msgid "Optimize for SPARCLite processors"
msgstr ""
-#: config/sparc/sparc.h:565
+#: config/sparc/sparc.h:580
msgid "Optimize for F930 processors"
msgstr ""
-#: config/sparc/sparc.h:567
+#: config/sparc/sparc.h:582
msgid "Optimize for F934 processors"
msgstr ""
-#: config/sparc/sparc.h:569
+#: config/sparc/sparc.h:584
msgid "Use V8 SPARC ISA"
msgstr ""
-#: config/sparc/sparc.h:571
+#: config/sparc/sparc.h:586
msgid "Optimize for SuperSPARC processors"
msgstr ""
#. End of deprecated options.
-#: config/sparc/sparc.h:574
+#: config/sparc/sparc.h:589
msgid "Pointers are 64-bit"
msgstr ""
-#: config/sparc/sparc.h:576
+#: config/sparc/sparc.h:591
msgid "Pointers are 32-bit"
msgstr ""
-#: config/sparc/sparc.h:578
+#: config/sparc/sparc.h:593
msgid "Use 32-bit ABI"
msgstr "×ñÞóç ABI 32-bit"
-#: config/sparc/sparc.h:580
+#: config/sparc/sparc.h:595
msgid "Use 64-bit ABI"
msgstr "×ñÞóç ABI 64-bit"
-#: config/sparc/sparc.h:582
+#: config/sparc/sparc.h:597
msgid "Use stack bias"
msgstr ""
-#: config/sparc/sparc.h:584
+#: config/sparc/sparc.h:599
msgid "Do not use stack bias"
msgstr ""
-#: config/sparc/sparc.h:586
+#: config/sparc/sparc.h:601
msgid "Use structs on stronger alignment for double-word copies"
msgstr ""
-#: config/sparc/sparc.h:588
+#: config/sparc/sparc.h:603
msgid "Do not use structs on stronger alignment for double-word copies"
msgstr ""
-#: config/sparc/sparc.h:590
+#: config/sparc/sparc.h:605
msgid "Optimize tail call instructions in assembler and linker"
msgstr ""
-#: config/sparc/sparc.h:592
+#: config/sparc/sparc.h:607
msgid "Do not optimize tail call instructions in assembler or linker"
msgstr ""
-#: config/sparc/sparc.h:637
+#: config/sparc/sparc.h:652
msgid "Use given SPARC code model"
msgstr ""
-#: config/stormy16/stormy16.c:1192
+#: config/stormy16/stormy16.c:526
+msgid "Constant halfword load operand out of range."
+msgstr ""
+
+#: config/stormy16/stormy16.c:536
+msgid "Constant arithmetic operand out of range."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1027
+msgid "Local variable memory requirements exceed capacity."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1193
+msgid "function_profiler support"
+msgstr ""
+
+#: config/stormy16/stormy16.c:1292
msgid "cannot use va_start in interrupt function"
msgstr ""
-#: config/stormy16/stormy16.c:1552
+#: config/stormy16/stormy16.c:1624
msgid "`B' operand is not constant"
msgstr ""
-#: config/stormy16/stormy16.c:1558
+#: config/stormy16/stormy16.c:1630
msgid "`B' operand has multiple bits set"
msgstr ""
-#: config/stormy16/stormy16.c:1585
+#: config/stormy16/stormy16.c:1656
msgid "`o' operand is not constant"
msgstr ""
-#: config/stormy16/stormy16.c:1600
+#: config/stormy16/stormy16.c:1670
msgid "xstormy16_print_operand: unknown code"
msgstr ""
-#: config/stormy16/stormy16.c:1650
+#: config/stormy16/stormy16.c:1716
#, c-format
msgid "switch statement of size %lu entries too large"
msgstr ""
@@ -13481,111 +12922,111 @@ msgstr ""
msgid "cannot set interrupt attribute: no such identifier"
msgstr ""
-#: config/v850/v850-c.c:148
+#: config/v850/v850-c.c:147
msgid "junk at end of #pragma ghs section"
msgstr ""
# src/request.c:806 src/request.c:912
-#: config/v850/v850-c.c:165
+#: config/v850/v850-c.c:164
#, fuzzy, c-format
msgid "unrecognized section name \"%s\""
msgstr "Ìç áíáãíùñßóçìï üíïìá åðéöÜíåéáò `%s'"
# src/dfa.c:569 src/dfa.c:583 src/dfa.c:587
# src/dfa.c:577 src/dfa.c:591 src/dfa.c:595
-#: config/v850/v850-c.c:180
+#: config/v850/v850-c.c:179
#, fuzzy
msgid "malformed #pragma ghs section"
msgstr "êáêïó÷çìáôéóìÝíïò ìåôñçôÞò åðáíÜëçøçò"
-#: config/v850/v850-c.c:200
+#: config/v850/v850-c.c:198
msgid "junk at end of #pragma ghs interrupt"
msgstr ""
-#: config/v850/v850-c.c:212
+#: config/v850/v850-c.c:209
msgid "junk at end of #pragma ghs starttda"
msgstr ""
-#: config/v850/v850-c.c:224
+#: config/v850/v850-c.c:220
msgid "junk at end of #pragma ghs startsda"
msgstr ""
-#: config/v850/v850-c.c:236
+#: config/v850/v850-c.c:231
msgid "junk at end of #pragma ghs startzda"
msgstr ""
-#: config/v850/v850-c.c:248
+#: config/v850/v850-c.c:242
msgid "junk at end of #pragma ghs endtda"
msgstr ""
-#: config/v850/v850-c.c:260
+#: config/v850/v850-c.c:253
msgid "junk at end of #pragma ghs endsda"
msgstr ""
-#: config/v850/v850-c.c:272
+#: config/v850/v850-c.c:264
msgid "junk at end of #pragma ghs endzda"
msgstr ""
-#: config/v850/v850.c:129
+#: config/v850/v850.c:142
#, c-format
msgid "%s=%s is not numeric"
msgstr ""
# src/shred.c:1134
-#: config/v850/v850.c:136
+#: config/v850/v850.c:149
#, fuzzy, c-format
msgid "%s=%s is too large"
msgstr "%s: ôï áñ÷åßï åßíáé ðïëý ìåãÜëï"
-#: config/v850/v850.c:302
+#: config/v850/v850.c:301
msgid "const_double_split got a bad insn:"
msgstr ""
-#: config/v850/v850.c:837
+#: config/v850/v850.c:866
#, fuzzy
msgid "output_move_single:"
msgstr "áñ÷åßï åîüäïõ"
-#: config/v850/v850.c:2217
-msgid "a data area attribute cannot be specified for local variables"
+#: config/v850/v850.c:2209
+msgid "%Jdata area attributes cannot be specified for local variables"
msgstr ""
-#: config/v850/v850.c:2228
-#, c-format
-msgid "data area of '%s' conflicts with previous declaration"
-msgstr ""
+#: config/v850/v850.c:2220
+#, fuzzy
+msgid "%Jdata area of '%D' conflicts with previous declaration"
+msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò"
-#: config/v850/v850.c:2447
+#: config/v850/v850.c:2419
#, c-format
msgid "bogus JR construction: %d\n"
msgstr ""
-#: config/v850/v850.c:2468 config/v850/v850.c:2670
+#: config/v850/v850.c:2440 config/v850/v850.c:2643
#, c-format
msgid "bad amount of stack space removal: %d"
msgstr ""
-#: config/v850/v850.c:2646
+#: config/v850/v850.c:2619
#, c-format
msgid "bogus JARL construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3026
+#: config/v850/v850.c:2989
#, c-format
msgid "Bogus DISPOSE construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3048
+#: config/v850/v850.c:3011
#, c-format
msgid "Too much stack space to dispose of: %d"
msgstr ""
-#: config/v850/v850.c:3224
+#: config/v850/v850.c:3184
#, c-format
msgid "Bogus PREPEARE construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3246
+#: config/v850/v850.c:3206
#, c-format
msgid "Too much stack space to prepare: %d"
msgstr ""
@@ -13595,831 +13036,772 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/v850/v850.h:158
+#: config/v850/v850.h:174
msgid "Support Green Hills ABI"
msgstr ""
-#: config/v850/v850.h:161
+#: config/v850/v850.h:177
msgid "Prohibit PC relative function calls"
msgstr ""
-#: config/v850/v850.h:164
+#: config/v850/v850.h:180
msgid "Reuse r30 on a per function basis"
msgstr ""
-#: config/v850/v850.h:167
+#: config/v850/v850.h:183
msgid "Use stubs for function prologues"
msgstr ""
-#: config/v850/v850.h:170
+#: config/v850/v850.h:186
msgid "Same as: -mep -mprolog-function"
msgstr ""
-#: config/v850/v850.h:171
+#: config/v850/v850.h:187
msgid "Enable backend debugging"
msgstr ""
-#: config/v850/v850.h:173
+#: config/v850/v850.h:189
msgid "Compile for the v850 processor"
msgstr ""
-#: config/v850/v850.h:175
+#: config/v850/v850.h:191
+msgid "Compile for v850e1 processor"
+msgstr ""
+
+#. Make sure that the other bits are cleared.
+#: config/v850/v850.h:193
msgid "Compile for v850e processor"
msgstr ""
#. Make sure that the other bits are cleared.
-#: config/v850/v850.h:177
+#: config/v850/v850.h:195
#, fuzzy
msgid "Enable the use of the short load instructions"
msgstr "ÁêáôÜëëçëç åíôïëÞ"
-#: config/v850/v850.h:180
+#: config/v850/v850.h:198
#, fuzzy
msgid "Do not use the callt instruction"
msgstr "ÁêáôÜëëçëç åíôïëÞ"
-#: config/v850/v850.h:187
+#: config/v850/v850.h:205
#, fuzzy
msgid "Do not use registers r2 and r5"
msgstr "Äåí åßíáé äõíáôÞ ç êáôá÷þñçóç ôçò õðçñåóßáò"
-#: config/v850/v850.h:189
+#: config/v850/v850.h:207
msgid "Enforce strict alignment"
msgstr ""
-#: config/v850/v850.h:192
+#: config/v850/v850.h:210
msgid "Use 4 byte entries in switch tables"
msgstr ""
-#: config/v850/v850.h:218
+#: config/v850/v850.h:236
msgid "Set the max size of data eligible for the TDA area"
msgstr ""
-#: config/v850/v850.h:221
+#: config/v850/v850.h:239
msgid "Set the max size of data eligible for the SDA area"
msgstr ""
-#: config/v850/v850.h:224
+#: config/v850/v850.h:242
msgid "Set the max size of data eligible for the ZDA area"
msgstr ""
-#: config/xtensa/xtensa.c:1062 config/xtensa/xtensa.c:1096
-#: config/xtensa/xtensa.c:1105
-#, fuzzy
-msgid "bad test"
-msgstr "ÅóöáëìÝíç äéåýèõíóç"
-
-#: config/xtensa/xtensa.c:1824
+#: config/xtensa/xtensa.c:1814
msgid "boolean registers required for the floating-point option"
msgstr ""
-#: config/xtensa/xtensa.c:1991
+#: config/xtensa/xtensa.c:1868
+#, fuzzy, c-format
+msgid "-f%s is not supported with CONST16 instructions"
+msgstr "Ç ïéêïãÝíåéá äéåõèýíóåùí äåí õðïóôçñßæåôáé áðü ôçí ïéêïãÝíåéá ðñùôïêüëëïõ"
+
+#: config/xtensa/xtensa.c:1873
+msgid "PIC is required but not supported with CONST16 instructions"
+msgstr ""
+
+#: config/xtensa/xtensa.c:1943
+#, fuzzy, c-format
+msgid "invalid %%D value"
+msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#: config/xtensa/xtensa.c:1980
#, fuzzy
msgid "invalid mask"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: config/xtensa/xtensa.c:2038
+#: config/xtensa/xtensa.c:2006
+#, fuzzy, c-format
+msgid "invalid %%x value"
+msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#: config/xtensa/xtensa.c:2013
+#, fuzzy, c-format
+msgid "invalid %%d value"
+msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#: config/xtensa/xtensa.c:2034 config/xtensa/xtensa.c:2044
+#, fuzzy, c-format
+msgid "invalid %%t/%%b value"
+msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#: config/xtensa/xtensa.c:2086
#, fuzzy
msgid "invalid address"
msgstr "ÁêáôÜëëçëç ÷ñÞóç ôïõ äéáìïñöùôÞ äéåýèõíóçò"
-#: config/xtensa/xtensa.c:2063
+#: config/xtensa/xtensa.c:2111
#, fuzzy
msgid "no register in address"
msgstr "ìç Ýãêõñïò ÷ñüíïò Ýíáñîçò"
-#: config/xtensa/xtensa.c:2071
+#: config/xtensa/xtensa.c:2119
#, fuzzy
msgid "address offset not a constant"
msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-#: config/xtensa/xtensa.c:2794
+#: config/xtensa/xtensa.c:2802
msgid "only uninitialized variables can be placed in a .bss section"
msgstr ""
-#: config/xtensa/xtensa.h:114
-msgid "Use the Xtensa code density option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:116
-msgid "Do not use the Xtensa code density option"
+#: config/xtensa/xtensa.h:79
+msgid "Use CONST16 instruction to load constants"
msgstr ""
-#: config/xtensa/xtensa.h:118
-msgid "Use the Xtensa MAC16 option"
+#: config/xtensa/xtensa.h:81
+msgid "Use PC-relative L32R instruction to load constants"
msgstr ""
-#: config/xtensa/xtensa.h:120
-msgid "Do not use the Xtensa MAC16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:122
-msgid "Use the Xtensa MUL16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:124
-msgid "Do not use the Xtensa MUL16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:126
-msgid "Use the Xtensa MUL32 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:128
-msgid "Do not use the Xtensa MUL32 option"
-msgstr ""
-
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:134
-msgid "Use the Xtensa NSA option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:136
-msgid "Do not use the Xtensa NSA option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:138
-msgid "Use the Xtensa MIN/MAX option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:140
-msgid "Do not use the Xtensa MIN/MAX option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:142
-msgid "Use the Xtensa SEXT option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:144
-msgid "Do not use the Xtensa SEXT option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:146
-#, fuzzy
-msgid "Use the Xtensa boolean register option"
-msgstr "ìç ôåñìáôéæüìåíï üíïìá âÜñïõò"
-
-#: config/xtensa/xtensa.h:148
-msgid "Do not use the Xtensa boolean register option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:150
-msgid "Use the Xtensa floating-point unit"
-msgstr ""
-
-#: config/xtensa/xtensa.h:152
-msgid "Do not use the Xtensa floating-point unit"
-msgstr ""
-
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:170
+#: config/xtensa/xtensa.h:83
msgid "Disable fused multiply/add and multiply/subtract FP instructions"
msgstr ""
-#: config/xtensa/xtensa.h:172
+#: config/xtensa/xtensa.h:85
msgid "Enable fused multiply/add and multiply/subtract FP instructions"
msgstr ""
-#: config/xtensa/xtensa.h:174
-msgid "Serialize volatile memory references with MEMW instructions"
-msgstr ""
-
-#: config/xtensa/xtensa.h:176
-msgid "Do not serialize volatile memory references with MEMW instructions"
-msgstr ""
-
-#: config/xtensa/xtensa.h:178
+#: config/xtensa/xtensa.h:87
msgid "Intersperse literal pools with code in the text section"
msgstr ""
-#: config/xtensa/xtensa.h:180
+#: config/xtensa/xtensa.h:89
msgid "Put literal pools in a separate literal section"
msgstr ""
-#: config/xtensa/xtensa.h:182
+#: config/xtensa/xtensa.h:91
msgid "Automatically align branch targets to reduce branch penalties"
msgstr ""
-#: config/xtensa/xtensa.h:184
+#: config/xtensa/xtensa.h:93
msgid "Do not automatically align branch targets"
msgstr ""
-#: config/xtensa/xtensa.h:186
+#: config/xtensa/xtensa.h:95
msgid "Use indirect CALLXn instructions for large programs"
msgstr ""
-#: config/xtensa/xtensa.h:188
+#: config/xtensa/xtensa.h:97
msgid "Use direct CALLn instructions for fast calls"
msgstr ""
-#: ada/misc.c:233
-msgid "`-gnat' misspelled as `-gant'"
-msgstr ""
-
-#: cp/call.c:261 cp/init.c:1594
-msgid "qualified type `%T' does not match destructor name `~%T'"
-msgstr ""
-
-#: cp/call.c:270
-msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
-msgstr ""
-
-#: cp/call.c:279
-msgid "`%D' is a namespace"
-msgstr ""
+#: ada/misc.c:240
+#, fuzzy, c-format
+msgid "missing argument to \"-%s\""
+msgstr "Ëåßðåé ðáñÜìåôñïò ãéá `%s'"
-#: cp/call.c:287
-msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
+#: ada/misc.c:281
+msgid "`-gnat' misspelled as `-gant'"
msgstr ""
-#: cp/call.c:369
+#: cp/call.c:217
msgid "unable to call pointer to member function here"
msgstr ""
-#: cp/call.c:518
-msgid "destructors take no parameters"
-msgstr ""
-
-#: cp/call.c:522
-msgid "destructor name `~%T' does not match type `%T' of expression"
-msgstr ""
-
-#: cp/call.c:543 cp/call.c:5000
-msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
-msgstr ""
-
-# src/getopt.c:628
-# src/getopt.c:628
-#: cp/call.c:567
-#, fuzzy
-msgid "request for member `%D' is ambiguous"
-msgstr "%s: ç åðéëïãÞ `%s' åßíáé áóáöÞò\n"
-
-#: cp/call.c:2537
+#: cp/call.c:2228
msgid "%s %D(%T, %T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2542
+#: cp/call.c:2233
msgid "%s %D(%T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2546
+#: cp/call.c:2237
msgid "%s %D(%T) <built-in>"
msgstr ""
-#: cp/call.c:2550
+#: cp/call.c:2241
msgid "%s %T <conversion>"
msgstr ""
-#: cp/call.c:2552
-msgid "%s %+#D%s"
+#: cp/call.c:2243
+msgid "%J%s %+#D <near match>"
msgstr ""
-#: cp/call.c:2726
-#, fuzzy
-msgid "conversion from `%T' to `%T' is ambiguous"
-msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå"
-
-#: cp/call.c:2803
-#, fuzzy
-msgid "`%T' is not a class type"
-msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+#: cp/call.c:2245
+msgid "%J%s %+#D"
+msgstr ""
-#: cp/call.c:2811
-msgid "incomplete type '%T' cannot be used to name a scope"
+#: cp/call.c:2280
+msgid "candidates are:"
msgstr ""
-#: cp/call.c:2831 cp/typeck.c:2188 cp/typeck.c:2217
+#: cp/call.c:2468
#, fuzzy
-msgid "'%D' has no member named '%E'"
-msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'"
+msgid "conversion from `%T' to `%T' is ambiguous"
+msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå"
-#: cp/call.c:2933
+#: cp/call.c:2619 cp/call.c:2663
msgid "no matching function for call to `%D(%A)'"
msgstr ""
-#: cp/call.c:2944 cp/call.c:5087
+#: cp/call.c:2622 cp/call.c:2666
msgid "call of overloaded `%D(%A)' is ambiguous"
msgstr ""
#. It's no good looking for an overloaded operator() on a
#. pointer-to-member-function.
-#: cp/call.c:2971
+#: cp/call.c:2732
#, c-format
msgid "pointer-to-member function %E cannot be called without an object; consider using .* or ->*"
msgstr ""
-#: cp/call.c:3036
+#: cp/call.c:2798
msgid "no match for call to `(%T) (%A)'"
msgstr ""
# src/getopt.c:813
# src/getopt.c:813
-#: cp/call.c:3046
+#: cp/call.c:2806
#, fuzzy
msgid "call of `(%T) (%A)' is ambiguous"
msgstr "%s: ç åðéëïãÞ `-W %s' åßíáé äéöïñïýìåíç\n"
-#: cp/call.c:3081
+#: cp/call.c:2839
#, c-format
msgid "%s for ternary 'operator?:' in '%E ? %E : %E'"
msgstr ""
-#: cp/call.c:3087
+#: cp/call.c:2845
#, c-format
msgid "%s for 'operator%s' in '%E%s'"
msgstr ""
-#: cp/call.c:3091
+#: cp/call.c:2849
#, c-format
msgid "%s for 'operator[]' in '%E[%E]'"
msgstr ""
-#: cp/call.c:3096
+#: cp/call.c:2854
+#, fuzzy, c-format
+msgid "%s for '%s' in '%s %E'"
+msgstr "%s ðñéí áðü %s'%c'"
+
+#: cp/call.c:2859
#, c-format
msgid "%s for 'operator%s' in '%E %s %E'"
msgstr ""
-#: cp/call.c:3099
+#: cp/call.c:2862
#, c-format
msgid "%s for 'operator%s' in '%s%E'"
msgstr ""
-#: cp/call.c:3191
+#: cp/call.c:2957
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
msgstr ""
-#: cp/call.c:3250
+#: cp/call.c:3018
#, c-format
msgid "`%E' has type `void' and is not a throw-expression"
msgstr ""
-#: cp/call.c:3283 cp/call.c:3475
+#: cp/call.c:3051 cp/call.c:3242
msgid "operands to ?: have different types"
msgstr ""
-#: cp/call.c:3428
+#: cp/call.c:3196
msgid "enumeral mismatch in conditional expression: `%T' vs `%T'"
msgstr ""
-#: cp/call.c:3435
+#: cp/call.c:3203
msgid "enumeral and non-enumeral type in conditional expression"
msgstr ""
-#: cp/call.c:3516
-msgid "`%D' must be declared before use"
-msgstr ""
-
-#: cp/call.c:3706
+#: cp/call.c:3487
msgid "no `%D(int)' declared for postfix `%s', trying prefix operator instead"
msgstr ""
-#: cp/call.c:3753
+#: cp/call.c:3532
msgid "using synthesized `%#D' for copy assignment"
msgstr ""
-#: cp/call.c:3755
+#: cp/call.c:3534
msgid " where cfront would use `%#D'"
msgstr ""
-#: cp/call.c:3782
+#: cp/call.c:3557
msgid "comparison between `%#T' and `%#T'"
msgstr ""
-#: cp/call.c:4021
-msgid "no suitable `operator delete' for `%T'"
-msgstr ""
+#: cp/call.c:3803
+#, fuzzy
+msgid "no suitable `operator %s' for `%T'"
+msgstr "äåí åßíáé äõíáôü íá ìåôáíïìáóôåß ôï `.' Þ ôï `..'"
-#: cp/call.c:4040
+#: cp/call.c:3820
msgid "`%+#D' is private"
msgstr ""
-#: cp/call.c:4042
+#: cp/call.c:3822
msgid "`%+#D' is protected"
msgstr ""
-#: cp/call.c:4044
+#: cp/call.c:3824
#, fuzzy
msgid "`%+#D' is inaccessible"
msgstr "ôï `%s' åßíáé ìç-ðñïóðåëÜóéìï"
-#: cp/call.c:4045
+#: cp/call.c:3825
msgid "within this context"
msgstr ""
-#: cp/call.c:4088
+#: cp/call.c:3895
#, fuzzy
msgid "invalid conversion from `%T' to `%T'"
msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå"
-#: cp/call.c:4090 cp/call.c:4229 cp/call.c:4231
+#: cp/call.c:3897
#, fuzzy
msgid " initializing argument %P of `%D'"
msgstr "Ìç Ýãêõñç áêÝñáéá ðáñÜìåôñïò `%s'"
-#: cp/call.c:4152 cp/call.c:4156
-msgid " initializing argument %P of `%D' from result of `%D'"
-msgstr ""
+#: cp/call.c:4050
+#, fuzzy
+msgid "cannot bind bitfield `%E' to `%T'"
+msgstr "äåí åßíáé äõíáôü íá ìåôáíïìáóôåß ôï `.' Þ ôï `..'"
-#: cp/call.c:4162 cp/call.c:4165
-msgid " initializing temporary from result of `%D'"
-msgstr ""
+#: cp/call.c:4053
+#, fuzzy
+msgid "cannot bind packed field `%E' to `%T'"
+msgstr "Üãíùóôïò ÷áñáêôÞñáò óôï ðåäßï `%s' ôçò êáôçãïñßáò `%s'"
+
+#: cp/call.c:4056
+#, fuzzy
+msgid "cannot bind rvalue `%E' to `%T'"
+msgstr "äåí åßíáé äõíáôü íá ìåôáíïìáóôåß ôï `.' Þ ôï `..'"
-#. Undefined behavior [expr.call] 5.2.2/7. We used to just warn
-#. here and do a bitwise copy, but now cp_expr_size will abort if we
-#. try to do that.
-#: cp/call.c:4316
+#: cp/call.c:4144
msgid "cannot pass objects of non-POD type `%#T' through `...'; call will abort at runtime"
msgstr ""
#. Undefined behavior [expr.call] 5.2.2/7.
-#: cp/call.c:4343
-msgid "cannot receive objects of non-POD type `%#T' through `...'"
+#: cp/call.c:4168
+msgid "cannot receive objects of non-POD type `%#T' through `...'; call will abort at runtime"
+msgstr ""
+
+#: cp/call.c:4208
+msgid "the default argument for parameter %d of `%D' has not yet been parsed"
msgstr ""
-#: cp/call.c:4523
+#: cp/call.c:4403
msgid "passing `%T' as `this' argument of `%#D' discards qualifiers"
msgstr ""
-#: cp/call.c:4542
+#: cp/call.c:4422
#, fuzzy
msgid "`%T' is not an accessible base of `%T'"
msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#: cp/call.c:4786
+#: cp/call.c:4696
msgid "could not find class$ field in java interface type `%T'"
msgstr ""
-#: cp/call.c:4974
+#: cp/call.c:4951
#, fuzzy
msgid "call to non-function `%D'"
msgstr "Äåí âñÝèçêáí URL óôï %s.\n"
-#: cp/call.c:5076
-msgid "no matching function for call to `%T::%D(%A)%#V'"
+#: cp/call.c:4977
+msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
msgstr ""
-#: cp/call.c:5106
+#: cp/call.c:5055
+msgid "no matching function for call to `%T::%s(%A)%#V'"
+msgstr ""
+
+# src/getopt.c:813
+# src/getopt.c:813
+#: cp/call.c:5072
+#, fuzzy, c-format
+msgid "call of overloaded `%s(%A)' is ambiguous"
+msgstr "%s: ç åðéëïãÞ `-W %s' åßíáé äéöïñïýìåíç\n"
+
+#: cp/call.c:5093
msgid "cannot call member function `%D' without object"
msgstr ""
-#: cp/call.c:5704
+#: cp/call.c:5678
msgid "passing `%T' chooses `%T' over `%T'"
msgstr ""
-#: cp/call.c:5706 cp/decl2.c:4154
+#: cp/call.c:5680 cp/name-lookup.c:4057
#, fuzzy
msgid " in call to `%D'"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: cp/call.c:5755
+#: cp/call.c:5737
msgid "choosing `%D' over `%D'"
msgstr ""
-#: cp/call.c:5756
+#: cp/call.c:5738
#, fuzzy
msgid " for conversion from `%T' to `%T'"
msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå"
-#: cp/call.c:5758
+#: cp/call.c:5740
msgid " because conversion sequence for the argument is better"
msgstr ""
-#: cp/call.c:5879
-msgid "ISO C++ says that `%D' and `%D' are ambiguous even though the worst conversion for the former is better than the worst conversion for the latter"
+#: cp/call.c:5860
+msgid "ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:"
msgstr ""
-#: cp/call.c:5996
+#: cp/call.c:5864
+msgid "candidate 1:"
+msgstr ""
+
+#: cp/call.c:5865
+msgid "candidate 2:"
+msgstr ""
+
+#: cp/call.c:5974
#, fuzzy
msgid "could not convert `%E' to `%T'"
msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï %s `%s' óôï `%s'"
-#: cp/call.c:6105
+#: cp/call.c:6079
msgid "invalid initialization of non-const reference of type '%T' from a temporary of type '%T'"
msgstr ""
-#: cp/call.c:6109
+#: cp/call.c:6083
msgid "invalid initialization of reference of type '%T' from expression of type '%T'"
msgstr ""
-#: cp/class.c:287
+#: cp/class.c:281
msgid "cannot convert from base `%T' to derived type `%T' via virtual base `%T'"
msgstr ""
-#: cp/class.c:992
+#: cp/class.c:764
+msgid "Java class '%T' cannot have an implicit non-trivial destructor"
+msgstr ""
+
+#: cp/class.c:765
+msgid "Java class '%T' cannot have a destructor"
+msgstr ""
+
+#: cp/class.c:933
msgid "`%#D' and `%#D' cannot be overloaded"
msgstr ""
-#: cp/class.c:1076
+#: cp/class.c:1016
#, fuzzy
msgid "duplicate enum value `%D'"
msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
-#: cp/class.c:1079
+#: cp/class.c:1019
msgid "duplicate field `%D' (as enum and non-enum)"
msgstr ""
-#: cp/class.c:1086
+#: cp/class.c:1026
#, fuzzy
msgid "duplicate nested type `%D'"
msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
-#: cp/class.c:1097
+#: cp/class.c:1037
msgid "duplicate field `%D' (as type and non-type)"
msgstr ""
-#: cp/class.c:1101
+#: cp/class.c:1041
#, fuzzy
msgid "duplicate member `%D'"
msgstr "äéðëüò áñéèìüò ìçíýìáôïò"
-#: cp/class.c:1144
+#: cp/class.c:1079
msgid "conflicting access specifications for method `%D', ignored"
msgstr ""
-#: cp/class.c:1146
+#: cp/class.c:1081
#, c-format
msgid "conflicting access specifications for field `%s', ignored"
msgstr ""
-#: cp/class.c:1194
+#: cp/class.c:1131
msgid "`%D' names constructor"
msgstr ""
-#: cp/class.c:1199
+#: cp/class.c:1136
#, fuzzy
msgid "`%D' invalid in `%T'"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: cp/class.c:1207
+#: cp/class.c:1144
msgid "no members matching `%D' in `%#T'"
msgstr ""
-#: cp/class.c:1239 cp/class.c:1247
+#: cp/class.c:1176 cp/class.c:1184
#, fuzzy
msgid "`%D' invalid in `%#T'"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: cp/class.c:1240
+#: cp/class.c:1177
msgid " because of local method `%#D' with same name"
msgstr ""
-#: cp/class.c:1248
+#: cp/class.c:1185
msgid " because of local member `%#D' with same name"
msgstr ""
-#: cp/class.c:1320
+#: cp/class.c:1255
msgid "base class `%#T' has a non-virtual destructor"
msgstr ""
-#: cp/class.c:1340
+#: cp/class.c:1275
msgid "base `%T' with only non-default constructor in class without a constructor"
msgstr ""
-#: cp/class.c:1912
+#: cp/class.c:1659
msgid "all member functions in class `%T' are private"
msgstr ""
-#: cp/class.c:1926
+#: cp/class.c:1670
msgid "`%#T' only defines a private destructor and has no friends"
msgstr ""
-#: cp/class.c:1969
+#: cp/class.c:1712
msgid "`%#T' only defines private constructors and has no friends"
msgstr ""
-#: cp/class.c:2090 cp/class.c:5276
-#, fuzzy
-msgid "redefinition of `%#T'"
-msgstr "êáíÝíáò ïñéóìüò ôïõ `UNDEFINED'"
-
-#: cp/class.c:2091
-#, fuzzy
-msgid "previous definition of `%#T'"
-msgstr "êáíÝíáò ïñéóìüò ôïõ `UNDEFINED'"
-
-#: cp/class.c:2365
+#: cp/class.c:2097
msgid "no unique final overrider for `%D' in `%T'"
msgstr ""
#. Here we know it is a hider, and no overrider exists.
-#: cp/class.c:2712
+#: cp/class.c:2542
msgid "`%D' was hidden"
msgstr ""
-#: cp/class.c:2713
+#: cp/class.c:2543
msgid " by `%D'"
msgstr " êáôÜ `%D'"
-#: cp/class.c:2755
+#: cp/class.c:2584
msgid "ISO C++ forbids member `%D' with same name as enclosing class"
msgstr ""
-#: cp/class.c:2760 cp/decl2.c:1331
+#: cp/class.c:2589 cp/decl2.c:1167
msgid "`%#D' invalid; an anonymous union can only have non-static data members"
msgstr ""
-#: cp/class.c:2766 cp/decl2.c:1337
+#: cp/class.c:2595 cp/decl2.c:1174
msgid "private member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2769 cp/decl2.c:1339
+#: cp/class.c:2598 cp/decl2.c:1176
msgid "protected member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2894
+#: cp/class.c:2717
msgid "vtable layout for class `%T' may not be ABI-compliant and may change in a future version of GCC due to implicit virtual destructor"
msgstr ""
-#: cp/class.c:2958
+#: cp/class.c:2777
msgid "bit-field `%#D' with non-integral type"
msgstr ""
-#: cp/class.c:2978
+#: cp/class.c:2797
msgid "bit-field `%D' width not an integer constant"
msgstr ""
-#: cp/class.c:2984
+#: cp/class.c:2803
#, fuzzy
msgid "negative width in bit-field `%D'"
msgstr "Áñíçôéêü ðëÜôïò óôçí áðïôßìçóç"
-#: cp/class.c:2989
+#: cp/class.c:2808
msgid "zero width for bit-field `%D'"
msgstr ""
-#: cp/class.c:2995
+#: cp/class.c:2814
msgid "width of `%D' exceeds its type"
msgstr ""
-#: cp/class.c:3004
+#: cp/class.c:2823
msgid "`%D' is too small to hold all values of `%#T'"
msgstr ""
-#: cp/class.c:3088
+#: cp/class.c:2885
msgid "member `%#D' with constructor not allowed in union"
msgstr ""
-#: cp/class.c:3091
+#: cp/class.c:2888
msgid "member `%#D' with destructor not allowed in union"
msgstr ""
-#: cp/class.c:3094
+#: cp/class.c:2891
msgid "member `%#D' with copy assignment operator not allowed in union"
msgstr ""
-#: cp/class.c:3121
+#: cp/class.c:2918
msgid "multiple fields in union `%T' initialized"
msgstr ""
-#: cp/class.c:3234
+#: cp/class.c:2987
+msgid "ignoring packed attribute on unpacked non-POD field `%#D'"
+msgstr ""
+
+#: cp/class.c:3039
msgid "field `%D' in local class cannot be static"
msgstr ""
-#: cp/class.c:3240
+#: cp/class.c:3045
msgid "field `%D' invalidly declared function type"
msgstr ""
-#: cp/class.c:3247
+#: cp/class.c:3052
msgid "field `%D' invalidly declared method type"
msgstr ""
-#: cp/class.c:3253
-msgid "field `%D' invalidly declared offset type"
-msgstr ""
-
#. Unions cannot have static members.
-#: cp/class.c:3271
+#: cp/class.c:3070
msgid "field `%D' declared static in union"
msgstr ""
-#: cp/class.c:3298
+#: cp/class.c:3097
msgid "non-static reference `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3333
+#: cp/class.c:3132
msgid "non-static const member `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3349
+#: cp/class.c:3147
#, fuzzy
msgid "field `%#D' with same name as class"
msgstr "ÕðÜñ÷åé áíôéêåßìåíï ìå ôï ßäéï üíïìá"
-#: cp/class.c:3367
+#: cp/class.c:3165
msgid "`%#T' has pointer data members"
msgstr ""
-#: cp/class.c:3371
+#: cp/class.c:3169
msgid " but does not override `%T(const %T&)'"
msgstr ""
-#: cp/class.c:3373
+#: cp/class.c:3171
msgid " or `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3376
+#: cp/class.c:3174
msgid " but does not override `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3826
+#: cp/class.c:3604
msgid "offset of empty base `%T' may not be ABI-compliant and maychange in a future version of GCC"
msgstr ""
-#: cp/class.c:3935
+#: cp/class.c:3714
msgid "class `%T' will be considered nearly empty in a future version of GCC"
msgstr ""
-#: cp/class.c:4025
+#: cp/class.c:3801
msgid "initializer specified for non-virtual method `%D'"
msgstr ""
-#: cp/class.c:4761
+#: cp/class.c:4489
msgid "offset of virtual base `%T' is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:4861
+#: cp/class.c:4579
msgid "direct base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:4874
+#: cp/class.c:4592
msgid "virtual base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:5030
+#: cp/class.c:4766
msgid "size assigned to `%T' may not be ABI-compliant and may change in a future version of GCC"
msgstr ""
#. Versions of G++ before G++ 3.4 did not reset the
#. DECL_MODE.
-#: cp/class.c:5053
+#: cp/class.c:4805
msgid "the offset of `%D' may not be ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5079
+#: cp/class.c:4828
msgid "offset of `%D' is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5088
+#: cp/class.c:4837
msgid "`%D' contains empty classes which may cause base classes to be placed at different locations in a future version of GCC"
msgstr ""
-#: cp/class.c:5147
+#: cp/class.c:4896
msgid "layout of classes derived from empty class `%T' may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5432
+#: cp/class.c:5026 cp/semantics.c:2029
+#, fuzzy
+msgid "redefinition of `%#T'"
+msgstr "êáíÝíáò ïñéóìüò ôïõ `UNDEFINED'"
+
+#: cp/class.c:5196
msgid "`%#T' has virtual functions but non-virtual destructor"
msgstr ""
-#: cp/class.c:5516
+#: cp/class.c:5275
msgid "trying to finish struct, but kicked out due to previous parse errors"
msgstr ""
-#: cp/class.c:5982
+#: cp/class.c:5717
#, c-format
msgid "language string `\"%s\"' not recognized"
msgstr ""
-#: cp/class.c:6078
+#: cp/class.c:5805
msgid "cannot resolve overloaded function `%D' based on conversion to type `%T'"
msgstr ""
-#: cp/class.c:6203
+#: cp/class.c:5930
msgid "no matches converting function `%D' to type `%#T'"
msgstr ""
-#: cp/class.c:6226
+#: cp/class.c:5953
msgid "converting overloaded function `%D' to type `%#T' is ambiguous"
msgstr ""
-#: cp/class.c:6252
+#: cp/class.c:5979
msgid "assuming pointer to member `%D'"
msgstr ""
-#: cp/class.c:6255
+#: cp/class.c:5982
#, c-format
msgid "(a pointer to member can only be formed with `&%E')"
msgstr ""
-#: cp/class.c:6306 cp/class.c:6477 cp/class.c:6484
+#: cp/class.c:6027 cp/class.c:6209 cp/class.c:6216
#, fuzzy
msgid "not enough type information"
msgstr "åìöÜíéóç ðëçñïöïñéþí ðñïüäïõ"
-#: cp/class.c:6315
+#: cp/class.c:6044
msgid "argument of type `%T' does not match `%T'"
msgstr ""
-#: cp/class.c:6461
+#: cp/class.c:6193
msgid "invalid operation on uninstantiated type"
msgstr ""
@@ -14428,15 +13810,20 @@ msgstr ""
#. A name N used in a class S shall refer to the same declaration
#. in its context and when re-evaluated in the completed scope of
#. S.
-#: cp/class.c:6745 cp/decl.c:1254 cp/decl.c:3379 cp/pt.c:2004
+#: cp/class.c:6451 cp/decl.c:1225 cp/name-lookup.c:495 cp/pt.c:2093
#, fuzzy
msgid "declaration of `%#D'"
msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n"
-#: cp/class.c:6746
+#: cp/class.c:6452
msgid "changes meaning of `%D' from `%+#D'"
msgstr ""
+#: cp/cp-lang.c:398
+#, fuzzy
+msgid "inter-module optimisations not implemented yet"
+msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
+
#: cp/cvt.c:88
msgid "can't convert from incomplete type `%T' to `%T'"
msgstr ""
@@ -14446,255 +13833,242 @@ msgstr ""
msgid "conversion of `%E' from `%T' to `%T' is ambiguous"
msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå"
-#: cp/cvt.c:126
+#: cp/cvt.c:113 cp/cvt.c:127
#, fuzzy
msgid "converting from `%T' to `%T'"
msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå"
-#: cp/cvt.c:203 cp/cvt.c:207
-msgid "pointer to member cast from `%T' to `%T' is via virtual base"
-msgstr ""
-
-#: cp/cvt.c:225 cp/cvt.c:236 cp/cvt.c:283
+#: cp/cvt.c:185 cp/cvt.c:253 cp/cvt.c:297
#, fuzzy
msgid "cannot convert `%E' from type `%T' to type `%T'"
msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï %s `%s' óôï `%s'"
-#: cp/cvt.c:262
+#: cp/cvt.c:214 cp/cvt.c:218
+msgid "pointer to member cast from `%T' to `%T' is via virtual base"
+msgstr ""
+
+#: cp/cvt.c:276
#, fuzzy
msgid "invalid conversion from '%T' to '%T'"
msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå"
-#: cp/cvt.c:504
+#: cp/cvt.c:508
#, fuzzy
msgid "conversion from `%T' to `%T' discards qualifiers"
msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå"
-#: cp/cvt.c:522
+#: cp/cvt.c:526
msgid "casting `%T' to `%T' does not dereference pointer"
msgstr ""
-#: cp/cvt.c:551
+#: cp/cvt.c:553
#, fuzzy
msgid "cannot convert type `%T' to type `%T'"
msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï %s `%s' óôï `%s'"
-#: cp/cvt.c:683
+#: cp/cvt.c:679
#, fuzzy
msgid "conversion from `%#T' to `%#T'"
msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå"
-#: cp/cvt.c:695
+#: cp/cvt.c:691
msgid "`%#T' used where a `%T' was expected"
msgstr ""
-#: cp/cvt.c:712
-msgid "the address of `%D', will always be `true'"
-msgstr ""
-
-#: cp/cvt.c:732
+#: cp/cvt.c:715
msgid "`%#T' used where a floating point value was expected"
msgstr ""
-#: cp/cvt.c:779
+#: cp/cvt.c:762
#, fuzzy
msgid "conversion from `%T' to non-scalar type `%T' requested"
msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå"
-#: cp/cvt.c:865
+#: cp/cvt.c:850
msgid "object of incomplete type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:868
+#: cp/cvt.c:853
msgid "object of type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:884
+#: cp/cvt.c:869
msgid "object `%E' of incomplete type `%T' will not be accessed in %s"
msgstr ""
#. [over.over] enumerates the places where we can take the address
#. of an overloaded function, and this is not one of them.
-#: cp/cvt.c:904
+#: cp/cvt.c:885
#, c-format
msgid "%s cannot resolve address of overloaded function"
msgstr ""
#. Only warn when there is no &.
-#: cp/cvt.c:909
+#: cp/cvt.c:891
#, c-format
msgid "%s is a reference, not call, to function `%E'"
msgstr ""
-#: cp/cvt.c:1039
+# src/request.c:37
+#: cp/cvt.c:898
+#, fuzzy, c-format
+msgid "%s has no effect"
+msgstr "%s óå %s"
+
+#: cp/cvt.c:1009
msgid "converting NULL to non-pointer type"
msgstr ""
-#: cp/cvt.c:1115
+#: cp/cvt.c:1081
msgid "ambiguous default type conversion from `%T'"
msgstr ""
-#: cp/cvt.c:1117
+#: cp/cvt.c:1083
msgid " candidate conversions include `%D' and `%D'"
msgstr ""
-#: cp/decl.c:736
-#, c-format
-msgid "push %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:770
-#, c-format
-msgid "pop %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:776 cp/decl.c:814
-msgid "XXX is_class_level != (current_binding_level == class_binding_level)\n"
-msgstr ""
-
-#: cp/decl.c:808
-#, c-format
-msgid "suspend %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:837
-#, c-format
-msgid "resume %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:1255 cp/decl.c:3490
-msgid "conflicts with previous declaration `%#D'"
-msgstr ""
-
-#: cp/decl.c:1467
+#: cp/decl.c:374
msgid "label `%D' used but not defined"
msgstr ""
-#: cp/decl.c:1472
+#: cp/decl.c:381
msgid "label `%D' defined but not used"
msgstr ""
-#: cp/decl.c:2489
-msgid "namespace alias `%D' not allowed here, assuming `%D'"
+#: cp/decl.c:1133 cp/decl.c:1559
+msgid "previous declaration of `%D'"
msgstr ""
-#: cp/decl.c:2825
-msgid "XXX entering pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1181
+#, fuzzy
+msgid "%Jfunction '%D' redeclared as inline"
+msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
-#: cp/decl.c:2834
-msgid "XXX leaving pop_everything ()\n"
+#: cp/decl.c:1182
+msgid "%Jprevious declaration of '%D' with attribute noinline"
msgstr ""
-#: cp/decl.c:3285 cp/decl.c:3700
-msgid "previous declaration of `%D'"
+#: cp/decl.c:1189
+msgid "%Jfunction '%D' redeclared with attribute noinline"
msgstr ""
-#: cp/decl.c:3366 cp/decl.c:3404
+#: cp/decl.c:1191
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was inline"
+msgstr "ðñïçãïýìåíç áõôïíüçôç äéáêýñçîç ôïõ `%s'"
+
+#: cp/decl.c:1212 cp/decl.c:1250
msgid "shadowing %s function `%#D'"
msgstr ""
-#: cp/decl.c:3375
+#: cp/decl.c:1221
msgid "library function `%#D' redeclared as non-function `%#D'"
msgstr ""
-#: cp/decl.c:3380
+#: cp/decl.c:1226
msgid "conflicts with built-in declaration `%#D'"
msgstr ""
-#: cp/decl.c:3399 cp/decl.c:3504 cp/decl.c:3520
+#: cp/decl.c:1245 cp/decl.c:1357 cp/decl.c:1373
msgid "new declaration `%#D'"
msgstr ""
-#: cp/decl.c:3400
+#: cp/decl.c:1246
msgid "ambiguates built-in declaration `%#D'"
msgstr ""
-#: cp/decl.c:3464
+#: cp/decl.c:1317
msgid "`%#D' redeclared as different kind of symbol"
msgstr ""
-#: cp/decl.c:3467
+#: cp/decl.c:1320
msgid "previous declaration of `%#D'"
msgstr ""
-#: cp/decl.c:3489
+#: cp/decl.c:1342
msgid "declaration of template `%#D'"
msgstr ""
-#: cp/decl.c:3505 cp/decl.c:3521
+#: cp/decl.c:1343 cp/name-lookup.c:496
+msgid "conflicts with previous declaration `%#D'"
+msgstr ""
+
+#: cp/decl.c:1358 cp/decl.c:1374
msgid "ambiguates old declaration `%#D'"
msgstr ""
-#: cp/decl.c:3513
+#: cp/decl.c:1366
msgid "declaration of C function `%#D' conflicts with"
msgstr ""
-#: cp/decl.c:3515
+#: cp/decl.c:1368
msgid "previous declaration `%#D' here"
msgstr ""
-#: cp/decl.c:3533
-msgid "conflicting types for `%#D'"
-msgstr ""
+#: cp/decl.c:1384
+#, fuzzy
+msgid "conflicting declaration '%#D'"
+msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: cp/decl.c:3534
-msgid "previous declaration as `%#D'"
-msgstr ""
+#: cp/decl.c:1385
+#, fuzzy
+msgid "'%D' has a previous declaration as `%#D'"
+msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò"
-#: cp/decl.c:3577
+#: cp/decl.c:1438
msgid "`%#D' previously defined here"
msgstr ""
-#: cp/decl.c:3578
+#: cp/decl.c:1439
#, fuzzy
msgid "`%#D' previously declared here"
msgstr "Äåí õðÜñ÷åé ðñïçãïýìåíç êáíïíéêÞ Ýêöñáóç"
#. Prototype decl follows defn w/o prototype.
-#: cp/decl.c:3587
+#: cp/decl.c:1448
msgid "prototype for `%#D'"
msgstr ""
-#: cp/decl.c:3588
-msgid "follows non-prototype definition here"
+#: cp/decl.c:1449
+msgid "%Jfollows non-prototype definition here"
msgstr ""
-#: cp/decl.c:3600
+#: cp/decl.c:1461
msgid "previous declaration of `%#D' with %L linkage"
msgstr ""
-#: cp/decl.c:3602
+#: cp/decl.c:1463
msgid "conflicts with new declaration with %L linkage"
msgstr ""
-#: cp/decl.c:3625 cp/decl.c:3632
+#: cp/decl.c:1486 cp/decl.c:1493
msgid "default argument given for parameter %d of `%#D'"
msgstr ""
-#: cp/decl.c:3627 cp/decl.c:3634
+#: cp/decl.c:1488 cp/decl.c:1495
#, fuzzy
msgid "after previous specification in `%#D'"
msgstr "%s: Ìç Ýãêõñç ñýèìéóç `%s'.\n"
-#: cp/decl.c:3643
+#: cp/decl.c:1504
msgid "`%#D' was used before it was declared inline"
msgstr ""
-#: cp/decl.c:3645
-msgid "previous non-inline declaration here"
-msgstr ""
+#: cp/decl.c:1505
+#, fuzzy
+msgid "%Jprevious non-inline declaration here"
+msgstr "ðñïçãïýìåíç áõôïíüçôç äéáêýñçîç ôïõ `%s'"
-#: cp/decl.c:3699
+#: cp/decl.c:1558
msgid "redundant redeclaration of `%D' in same scope"
msgstr ""
-#: cp/decl.c:3780
+#: cp/decl.c:1649
#, c-format
msgid "declaration of `%F' throws different exceptions"
msgstr ""
-#: cp/decl.c:3782
+#: cp/decl.c:1651
#, c-format
msgid "than previous declaration `%F'"
msgstr ""
@@ -14707,629 +14081,505 @@ msgstr ""
#. that specialization that would cause an implicit
#. instantiation to take place, in every translation unit in
#. which such a use occurs.
-#: cp/decl.c:3922
+#: cp/decl.c:1798
msgid "explicit specialization of %D after first use"
msgstr ""
-#: cp/decl.c:4187
-msgid "`%#D' used prior to declaration"
-msgstr ""
-
-#: cp/decl.c:4218
-msgid "redeclaration of `wchar_t' as `%T'"
-msgstr ""
-
-#. A redeclaration of main, but not a duplicate of the
-#. previous one.
-#.
-#. [basic.start.main]
-#.
-#. This function shall not be overloaded.
-#: cp/decl.c:4246
-#, fuzzy
-msgid "invalid redeclaration of `%D'"
-msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-
-#: cp/decl.c:4247
-msgid "as `%D'"
-msgstr ""
-
-#: cp/decl.c:4337
-msgid "previous external decl of `%#D'"
-msgstr ""
-
-#: cp/decl.c:4378
-msgid "`%D' was previously implicitly declared to return `int'"
-msgstr ""
-
-#: cp/decl.c:4438
-msgid "extern declaration of `%#D' doesn't match"
-msgstr ""
-
-#: cp/decl.c:4439
-msgid "global declaration `%#D'"
-msgstr ""
-
-#: cp/decl.c:4472
-msgid "declaration of `%#D' shadows a parameter"
-msgstr ""
-
-#: cp/decl.c:4492
-#, c-format
-msgid "declaration of `%s' shadows a member of `this'"
+#: cp/decl.c:1880
+msgid "%J'%D': visibility attribute ignored because it"
msgstr ""
-#: cp/decl.c:4889
+#: cp/decl.c:1882
#, fuzzy
-msgid "`%#D' hides constructor for `%#T'"
-msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-
-#: cp/decl.c:4904
-msgid "`%#D' conflicts with previous using declaration `%#D'"
-msgstr ""
-
-#: cp/decl.c:4916
-msgid "previous non-function declaration `%#D'"
-msgstr ""
-
-#: cp/decl.c:4917
-msgid "conflicts with function declaration `%#D'"
-msgstr ""
+msgid "%Jconflicts with previous declaration here"
+msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò"
-#: cp/decl.c:5007
+#: cp/decl.c:1976
msgid "implicit declaration of function `%#D'"
msgstr "áõôïíüçôç äéáêýñçîç ôçò óõíÜñôçóçò `%#D'"
-#: cp/decl.c:5167
+#: cp/decl.c:2124
#, c-format
msgid "label `%s' referenced outside of any function"
msgstr ""
-#: cp/decl.c:5270 cp/decl.c:5294 cp/decl.c:5387
+#: cp/decl.c:2221 cp/decl.c:2245 cp/decl.c:2333
msgid "jump to label `%D'"
msgstr ""
-#: cp/decl.c:5272 cp/decl.c:5296
+#: cp/decl.c:2223 cp/decl.c:2247
msgid "jump to case label"
msgstr ""
-#: cp/decl.c:5280
+#: cp/decl.c:2226 cp/decl.c:2250
+msgid "%H from here"
+msgstr ""
+
+#: cp/decl.c:2231
msgid " crosses initialization of `%#D'"
msgstr ""
-#: cp/decl.c:5283 cp/decl.c:5403
+#: cp/decl.c:2234 cp/decl.c:2349
msgid " enters scope of non-POD `%#D'"
msgstr ""
-#: cp/decl.c:5303 cp/decl.c:5407
+#: cp/decl.c:2254 cp/decl.c:2353
msgid " enters try block"
msgstr ""
-#. Can't skip init of __exception_info.
-#: cp/decl.c:5305 cp/decl.c:5399 cp/decl.c:5409
+#: cp/decl.c:2256 cp/decl.c:2355
msgid " enters catch block"
msgstr ""
-#: cp/decl.c:5388
+#: cp/decl.c:2334
msgid " from here"
msgstr ""
-#: cp/decl.c:5401
+#. Can't skip init of __exception_info.
+#: cp/decl.c:2345
+msgid "%J enters catch block"
+msgstr ""
+
+#: cp/decl.c:2347
msgid " skips initialization of `%#D'"
msgstr ""
-#: cp/decl.c:5437
+#: cp/decl.c:2381
msgid "label named wchar_t"
msgstr ""
-#: cp/decl.c:5440
+#: cp/decl.c:2384
#, fuzzy
msgid "duplicate label `%D'"
msgstr "äéðëü êëåéäß"
-#: cp/decl.c:5525
-#, c-format
-msgid "case label `%E' not within a switch statement"
-msgstr ""
-
-#. Definition isn't the kind we were looking for.
-#: cp/decl.c:5704 cp/decl.c:5723
-msgid "`%#D' redeclared as %C"
-msgstr ""
-
-#. This happens for A::B where B is a template, and there are no
-#. template arguments.
-#: cp/decl.c:5811 cp/typeck.c:2069 cp/typeck.c:2229
-#, fuzzy
-msgid "invalid use of `%D'"
-msgstr "Ìç Ýãêõñç çìåñïìçíßá `%s'."
-
-#: cp/decl.c:5852
-#, fuzzy
-msgid "`%D::%D' is not a template"
-msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-
-#: cp/decl.c:5869
-msgid "`%D' undeclared in namespace `%D'"
-msgstr ""
-
-#: cp/decl.c:6002
+#: cp/decl.c:2612 cp/parser.c:3178
msgid "`%D' used without template parameters"
msgstr ""
-#: cp/decl.c:6013 cp/decl.c:6029 cp/decl.c:6139
+#: cp/decl.c:2622 cp/decl.c:2638 cp/decl.c:2726
msgid "no class template named `%#T' in `%#T'"
msgstr ""
-#: cp/decl.c:6055 cp/decl.c:6065 cp/decl.c:6100
+#: cp/decl.c:2659 cp/decl.c:2669 cp/decl.c:2689
msgid "no type named `%#T' in `%#T'"
msgstr ""
-#: cp/decl.c:6329
-msgid "lookup of `%D' finds `%#D'"
-msgstr ""
-
-#: cp/decl.c:6331
-msgid " instead of `%D' from dependent base class"
-msgstr ""
-
-#: cp/decl.c:6333
-msgid " (use `typename %T::%D' if that's what you meant)"
+#: cp/decl.c:3416
+msgid "%Jan anonymous union cannot have function members"
msgstr ""
-#: cp/decl.c:6364
-#, fuzzy
-msgid "name lookup of `%D' changed"
-msgstr "ç ïìÜäá ôïõ %s Üëëáîå óå %s\n"
-
-#: cp/decl.c:6366
-msgid " matches this `%D' under ISO standard rules"
-msgstr ""
-
-#: cp/decl.c:6368
-msgid " matches this `%D' under old rules"
-msgstr ""
-
-#: cp/decl.c:6382 cp/decl.c:6389
-#, fuzzy
-msgid "name lookup of `%D' changed for new ISO `for' scoping"
-msgstr "ç ïìÜäá ôïõ %s Üëëáîå óå %s\n"
-
-#: cp/decl.c:6384
-msgid " cannot use obsolete binding at `%D' because it has a destructor"
-msgstr ""
-
-#: cp/decl.c:6391
-msgid " using obsolete binding at `%D'"
-msgstr ""
-
-#: cp/decl.c:6609
-msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
-msgstr ""
-
-#: cp/decl.c:7432
-msgid "an anonymous union cannot have function members"
-msgstr ""
-
-#: cp/decl.c:7449
+#: cp/decl.c:3434
msgid "member %#D' with constructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7452
+#: cp/decl.c:3437
msgid "member %#D' with destructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7455
+#: cp/decl.c:3440
msgid "member %#D' with copy assignment operator not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7493
+#: cp/decl.c:3480
msgid "redeclaration of C++ built-in type `%T'"
msgstr ""
-#: cp/decl.c:7529
+#: cp/decl.c:3518
msgid "multiple types in one declaration"
msgstr ""
-#: cp/decl.c:7556
+#: cp/decl.c:3544
msgid "missing type-name in typedef-declaration"
msgstr ""
-#: cp/decl.c:7563
+#: cp/decl.c:3552
msgid "ISO C++ prohibits anonymous structs"
msgstr ""
-#: cp/decl.c:7570
+#: cp/decl.c:3559
msgid "`%D' can only be specified for functions"
msgstr ""
-#: cp/decl.c:7572
+#: cp/decl.c:3561
msgid "`%D' can only be specified inside a class"
msgstr ""
-#: cp/decl.c:7574
+#: cp/decl.c:3563
msgid "`%D' can only be specified for constructors"
msgstr ""
-#: cp/decl.c:7577
+#: cp/decl.c:3566
msgid "`%D' can only be specified for objects and functions"
msgstr ""
-#: cp/decl.c:7719 cp/decl2.c:936
+#: cp/decl.c:3708 cp/decl2.c:861
msgid "typedef `%D' is initialized (use __typeof__ instead)"
msgstr ""
-#: cp/decl.c:7724
+#: cp/decl.c:3713
msgid "function `%#D' is initialized like a variable"
msgstr ""
-#: cp/decl.c:7736
+#: cp/decl.c:3725
msgid "declaration of `%#D' has `extern' and is initialized"
msgstr ""
-#: cp/decl.c:7770
+#: cp/decl.c:3758
#, fuzzy
msgid "`%#D' is not a static member of `%#T'"
msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#: cp/decl.c:7775
+#: cp/decl.c:3764
msgid "ISO C++ does not permit `%T::%D' to be defined as `%T::%D'"
msgstr ""
# src/request.c:263
-#: cp/decl.c:7786
+#: cp/decl.c:3775
#, fuzzy
msgid "duplicate initialization of %D"
msgstr "Ôï âÞìá áñ÷éêïðïßçóçò áðÝôõ÷å"
-#: cp/decl.c:7815
+#: cp/decl.c:3806
msgid "declaration of `%#D' outside of class is not definition"
msgstr ""
-#: cp/decl.c:7865
+#: cp/decl.c:3857
msgid "variable `%#D' has initializer but incomplete type"
msgstr ""
-#: cp/decl.c:7873 cp/decl.c:8432
+#: cp/decl.c:3865 cp/decl.c:4426
msgid "elements of array `%#D' have incomplete type"
msgstr ""
-#: cp/decl.c:7889
+#: cp/decl.c:3881
msgid "aggregate `%#D' has incomplete type and cannot be defined"
msgstr ""
-#: cp/decl.c:7931
+#: cp/decl.c:3923
msgid "`%D' declared as reference but not initialized"
msgstr ""
-#: cp/decl.c:7940
+#: cp/decl.c:3929
msgid "ISO C++ forbids use of initializer list to initialize reference `%D'"
msgstr ""
-#: cp/decl.c:7970
+#: cp/decl.c:3957
#, fuzzy
msgid "cannot initialize `%T' from `%T'"
msgstr "äåí åßíáé äõíáôü íá ìåôáíïìáóôåß ôï `.' Þ ôï `..'"
-#: cp/decl.c:8004
+#: cp/decl.c:3989
msgid "initializer fails to determine size of `%D'"
msgstr ""
-#: cp/decl.c:8009
+#: cp/decl.c:3994
#, fuzzy
msgid "array size missing in `%D'"
msgstr "óöÜëìá êáôÜ ôï êëåßóéìï ôçò åéóüäïõ `%s'"
-#: cp/decl.c:8021
+#: cp/decl.c:4006
msgid "zero-size array `%D'"
msgstr ""
#. An automatic variable with an incomplete type: that is an error.
#. Don't talk about array types here, since we took care of that
#. message in grokdeclarator.
-#: cp/decl.c:8059
+#: cp/decl.c:4043
msgid "storage size of `%D' isn't known"
msgstr ""
-#: cp/decl.c:8081
+#: cp/decl.c:4065
msgid "storage size of `%D' isn't constant"
msgstr ""
-#: cp/decl.c:8137
+#: cp/decl.c:4120
msgid "sorry: semantics of inline function static data `%#D' are wrong (you'll wind up with multiple copies)"
msgstr ""
-#: cp/decl.c:8138
-msgid " you can work around this by removing the initializer"
+#: cp/decl.c:4121
+msgid "%J you can work around this by removing the initializer"
msgstr ""
-#: cp/decl.c:8164
+#: cp/decl.c:4147
#, fuzzy
msgid "uninitialized const `%D'"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: cp/decl.c:8249
+#: cp/decl.c:4226
#, fuzzy
msgid "brace-enclosed initializer used to initialize `%T'"
msgstr "ìç Ýãêõñï byte Þ ëßóôá ðåäßùí"
-#: cp/decl.c:8313
+#: cp/decl.c:4290
msgid "initializer for `%T' must be brace-enclosed"
msgstr ""
-#: cp/decl.c:8328
+#: cp/decl.c:4307
msgid "ISO C++ does not allow designated initializers"
msgstr ""
-#: cp/decl.c:8332
+#: cp/decl.c:4311
#, fuzzy
msgid "`%T' has no non-static data member named `%D'"
msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#: cp/decl.c:8389
+#: cp/decl.c:4359
+msgid "name `%D' used in a GNU-style designated initializer for an array"
+msgstr ""
+
+#: cp/decl.c:4382
#, fuzzy
msgid "too many initializers for `%T'"
msgstr "ìç Ýãêõñï byte Þ ëßóôá ðåäßùí"
-#: cp/decl.c:8426
+#: cp/decl.c:4420
msgid "variable-sized object `%D' may not be initialized"
msgstr ""
-#: cp/decl.c:8437
+#: cp/decl.c:4431
msgid "`%D' has incomplete type"
msgstr ""
-#: cp/decl.c:8486
+#: cp/decl.c:4486
msgid "`%D' must be initialized by constructor, not by `{...}'"
msgstr ""
-#: cp/decl.c:8527
+#: cp/decl.c:4530
msgid "structure `%D' with uninitialized const members"
msgstr ""
-#: cp/decl.c:8529
+#: cp/decl.c:4532
msgid "structure `%D' with uninitialized reference members"
msgstr ""
-#: cp/decl.c:8770
+#: cp/decl.c:4713
msgid "assignment (not initialization) in declaration"
msgstr ""
-#: cp/decl.c:8785
+#: cp/decl.c:4730
msgid "cannot initialize `%D' to namespace `%D'"
msgstr ""
-#: cp/decl.c:8836
+#: cp/decl.c:4780
msgid "shadowing previous type declaration of `%#D'"
msgstr ""
-#: cp/decl.c:8883
+#: cp/decl.c:4816
msgid "`%D' cannot be thread-local because it has non-POD type `%T'"
msgstr ""
-#: cp/decl.c:8898
+#: cp/decl.c:4831
msgid "`%D' is thread-local and so cannot be dynamically initialized"
msgstr ""
-#: cp/decl.c:9298 cp/init.c:562
-msgid "multiple initializations given for `%D'"
-msgstr ""
-
-#: cp/decl.c:9390
+#: cp/decl.c:5313
#, fuzzy
msgid "invalid catch parameter"
msgstr "Ìç Ýãêõñïò ÷áñáêôÞñáò ðáñáâïëÞò"
-#: cp/decl.c:9508
+#: cp/decl.c:5427
msgid "destructor for alien class `%T' cannot be a member"
msgstr ""
-#: cp/decl.c:9511
+#: cp/decl.c:5430
msgid "constructor for alien class `%T' cannot be a member"
msgstr ""
-#: cp/decl.c:9530
+#: cp/decl.c:5452
msgid "`%D' declared as a `virtual' %s"
msgstr ""
-#: cp/decl.c:9532
+#: cp/decl.c:5454
msgid "`%D' declared as an `inline' %s"
msgstr ""
-#: cp/decl.c:9534
+#: cp/decl.c:5456
msgid "`const' and `volatile' function specifiers on `%D' invalid in %s declaration"
msgstr ""
-#: cp/decl.c:9537
+#: cp/decl.c:5459
msgid "`%D' declared as a friend"
msgstr ""
-#: cp/decl.c:9543
+#: cp/decl.c:5465
msgid "`%D' declared with an exception specification"
msgstr ""
-#: cp/decl.c:9618
+#: cp/decl.c:5544
msgid "cannot declare `::main' to be a template"
msgstr ""
-#: cp/decl.c:9620
+#: cp/decl.c:5546
msgid "cannot declare `::main' to be inline"
msgstr ""
-#: cp/decl.c:9622
+#: cp/decl.c:5548
msgid "cannot declare `::main' to be static"
msgstr ""
-#: cp/decl.c:9625
+#: cp/decl.c:5551
msgid "`main' must return `int'"
msgstr ""
-#: cp/decl.c:9653
+#: cp/decl.c:5579
msgid "non-local function `%#D' uses anonymous type"
msgstr ""
-#: cp/decl.c:9656
+#: cp/decl.c:5582
msgid "`%#D' does not refer to the unqualified type, so it is not used for linkage"
msgstr ""
-#: cp/decl.c:9662
+#: cp/decl.c:5588
msgid "non-local function `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:9691
+#: cp/decl.c:5612
msgid "%smember function `%D' cannot have `%T' method qualifier"
msgstr ""
-#: cp/decl.c:9715
+#: cp/decl.c:5636
msgid "defining explicit specialization `%D' in friend declaration"
msgstr ""
#. Something like `template <class T> friend void f<T>()'.
-#: cp/decl.c:9725
+#: cp/decl.c:5646
msgid "invalid use of template-id `%D' in declaration of primary template"
msgstr ""
-#: cp/decl.c:9753
+#: cp/decl.c:5673
msgid "default arguments are not allowed in declaration of friend template specialization `%D'"
msgstr ""
-#: cp/decl.c:9760
+#: cp/decl.c:5680
msgid "`inline' is not allowed in declaration of friend template specialization `%D'"
msgstr ""
-#: cp/decl.c:9822
+#: cp/decl.c:5741
msgid "definition of implicitly-declared `%D'"
msgstr ""
-#: cp/decl.c:9834 cp/decl2.c:785
+#: cp/decl.c:5759 cp/decl2.c:744
msgid "no `%#D' member function declared in class `%T'"
msgstr ""
-#: cp/decl.c:9967
+#: cp/decl.c:5893
msgid "non-local variable `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:10064
+#: cp/decl.c:6008
msgid "invalid in-class initialization of static data member of non-integral type `%T'"
msgstr ""
-#: cp/decl.c:10073
+#: cp/decl.c:6017
msgid "ISO C++ forbids in-class initialization of non-const static member `%D'"
msgstr ""
-#: cp/decl.c:10076
+#: cp/decl.c:6020
msgid "ISO C++ forbids initialization of member constant `%D' of non-integral type `%T'"
msgstr ""
-#: cp/decl.c:10126
-msgid "size of array `%D' has non-integer type"
-msgstr ""
+#: cp/decl.c:6039
+#, fuzzy
+msgid "size of array `%D' has non-integral type `%T'"
+msgstr "Ï êáôÜëïãïò `%s' äåí åßíáé ðñïóéôüò."
-#: cp/decl.c:10128
-msgid "size of array has non-integer type"
+#: cp/decl.c:6041
+msgid "size of array has non-integral type `%T'"
msgstr ""
-#: cp/decl.c:10148
+#: cp/decl.c:6077
msgid "size of array `%D' is negative"
msgstr ""
-#: cp/decl.c:10150
+#: cp/decl.c:6079
msgid "size of array is negative"
msgstr ""
-#: cp/decl.c:10159
+#: cp/decl.c:6087
msgid "ISO C++ forbids zero-size array `%D'"
msgstr ""
-#: cp/decl.c:10161
+#: cp/decl.c:6089
msgid "ISO C++ forbids zero-size array"
msgstr ""
-#: cp/decl.c:10168
+#: cp/decl.c:6096
msgid "size of array `%D' is not an integral constant-expression"
msgstr ""
-#: cp/decl.c:10171
+#: cp/decl.c:6099
msgid "size of array is not an integral constant-expression"
msgstr ""
-#: cp/decl.c:10189
+#: cp/decl.c:6104
msgid "ISO C++ forbids variable-size array `%D'"
msgstr ""
-#: cp/decl.c:10192
+#: cp/decl.c:6106
msgid "ISO C++ forbids variable-size array"
msgstr ""
-#: cp/decl.c:10203
+#: cp/decl.c:6128
msgid "overflow in array dimension"
msgstr ""
-#: cp/decl.c:10262
+#: cp/decl.c:6222
msgid "declaration of `%D' as %s"
msgstr ""
-#: cp/decl.c:10264
+#: cp/decl.c:6224
#, fuzzy, c-format
msgid "creating %s"
msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n"
-#: cp/decl.c:10276
+#: cp/decl.c:6236
msgid "declaration of `%D' as multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:10279
+#: cp/decl.c:6239
msgid "multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:10308
+#: cp/decl.c:6267
msgid "return type specification for constructor invalid"
msgstr ""
-#: cp/decl.c:10315
+#: cp/decl.c:6274
msgid "return type specification for destructor invalid"
msgstr ""
-#: cp/decl.c:10321
+#: cp/decl.c:6280
msgid "operator `%T' declared to return `%T'"
msgstr ""
-#: cp/decl.c:10323
+#: cp/decl.c:6282
msgid "return type specified for `operator %T'"
msgstr ""
-#: cp/decl.c:10491
+#: cp/decl.c:6425
msgid "destructors must be member functions"
msgstr ""
-#: cp/decl.c:10510
+#: cp/decl.c:6444
msgid "destructor `%T' must match class name `%T'"
msgstr ""
-#: cp/decl.c:10539
-msgid "variable declaration is not allowed here"
-msgstr ""
-
-#: cp/decl.c:10566
-#, fuzzy
-msgid "invalid declarator"
-msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-
-#: cp/decl.c:10617
+#: cp/decl.c:6507
msgid "declarator-id missing; using reserved word `%D'"
msgstr ""
-#: cp/decl.c:10674
+#: cp/decl.c:6561
msgid "type `%T' is not derived from type `%T'"
msgstr ""
#. Parse error puts this typespec where
#. a declarator should go.
-#: cp/decl.c:10726
+#: cp/decl.c:6624
msgid "`%T' specified as declarator-id"
msgstr ""
-#: cp/decl.c:10728
+#: cp/decl.c:6626
msgid " perhaps you want `%T' for a constructor"
msgstr ""
@@ -15337,310 +14587,309 @@ msgstr ""
#. decl-specifier like in
#. std::allocator alloc;
#. Handle that gracefully.
-#: cp/decl.c:10750
+#: cp/decl.c:6648
#, fuzzy, c-format
msgid "invalid use of template-name '%E' in a declarator"
msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç"
-#: cp/decl.c:10770
+#: cp/decl.c:6668
msgid "declaration of `%D' as non-function"
msgstr ""
-#: cp/decl.c:10847
+#: cp/decl.c:6745
#, fuzzy
msgid "`bool' is now a keyword"
msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
-#: cp/decl.c:10849
+#: cp/decl.c:6747
msgid "extraneous `%T' ignored"
msgstr ""
-#: cp/decl.c:10865 cp/decl.c:10910
+#: cp/decl.c:6763 cp/decl.c:6807
#, fuzzy
msgid "multiple declarations `%T' and `%T'"
msgstr "ðïëëáðëüò áñéèìüò åðéëïãþí ôçí åíôïëÞ `s'"
-#: cp/decl.c:10878
+#: cp/decl.c:6776
msgid "ISO C++ does not support `long long'"
msgstr ""
-#: cp/decl.c:10983 cp/decl.c:10986
+#: cp/decl.c:6880 cp/decl.c:6883
#, c-format
msgid "ISO C++ forbids declaration of `%s' with no type"
msgstr ""
-#. The implicit typename extension is deprecated and will be
-#. removed. Warn about its use now.
-#: cp/decl.c:10996
-msgid "`%T' is implicitly a typename"
-msgstr ""
-
-#: cp/decl.c:11032
+#: cp/decl.c:6914
#, c-format
msgid "short, signed or unsigned invalid for `%s'"
msgstr ""
-#: cp/decl.c:11037
+#: cp/decl.c:6919
#, c-format
msgid "long and short specified together for `%s'"
msgstr ""
-#: cp/decl.c:11048
+#: cp/decl.c:6930
#, c-format
msgid "signed and unsigned given together for `%s'"
msgstr ""
-#: cp/decl.c:11157
+#: cp/decl.c:7039
msgid "qualifiers are not allowed on declaration of `operator %T'"
msgstr ""
-#: cp/decl.c:11179
+#: cp/decl.c:7061
msgid "member `%D' cannot be declared both virtual and static"
msgstr ""
-#: cp/decl.c:11188
+#: cp/decl.c:7070
#, fuzzy
msgid "`%T::%D' is not a valid declarator"
msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
-#: cp/decl.c:11200
+#: cp/decl.c:7082
msgid "storage class specifiers invalid in parameter declarations"
msgstr ""
-#: cp/decl.c:11204
+#: cp/decl.c:7086
msgid "typedef declaration invalid in parameter declaration"
msgstr ""
-#: cp/decl.c:11217
+#: cp/decl.c:7099
msgid "virtual outside class declaration"
msgstr ""
-#: cp/decl.c:11278
+#: cp/decl.c:7158
#, c-format
msgid "storage class specified for %s `%s'"
msgstr ""
-#: cp/decl.c:11325
+#: cp/decl.c:7193
+#, c-format
+msgid "top-level declaration of `%s' specifies `auto'"
+msgstr ""
+
+#: cp/decl.c:7205
msgid "storage class specifiers invalid in friend function declarations"
msgstr ""
-#: cp/decl.c:11495
+#: cp/decl.c:7370
msgid "destructor cannot be static member function"
msgstr ""
-#: cp/decl.c:11498
+#: cp/decl.c:7373
#, c-format
msgid "destructors may not be `%s'"
msgstr ""
-#: cp/decl.c:11519
+#: cp/decl.c:7394
msgid "constructor cannot be static member function"
msgstr ""
-#: cp/decl.c:11522
+#: cp/decl.c:7397
msgid "constructors cannot be declared virtual"
msgstr ""
-#: cp/decl.c:11527
+#: cp/decl.c:7402
#, c-format
msgid "constructors may not be `%s'"
msgstr ""
-#: cp/decl.c:11537
+#: cp/decl.c:7412
msgid "return value type specifier for constructor ignored"
msgstr ""
-#: cp/decl.c:11556
+#: cp/decl.c:7431
#, fuzzy, c-format
msgid "can't initialize friend function `%s'"
msgstr "Äåí Þôáí äõíáôÞ ç åýñåóç åôéêÝôôáò ãéá ìåôáãùãÞ óôï `%s'"
#. Cannot be both friend and virtual.
-#: cp/decl.c:11560
+#: cp/decl.c:7435
msgid "virtual functions cannot be friends"
msgstr ""
-#: cp/decl.c:11565
+#: cp/decl.c:7440
#, fuzzy
msgid "friend declaration not in class definition"
msgstr "óõíôáêôéêü óöÜëìá óôïí ïñéóìü êëÜóçò ÷áñáêôÞñùí"
-#: cp/decl.c:11567
+#: cp/decl.c:7442
#, c-format
msgid "can't define friend function `%s' in a local class definition"
msgstr ""
-#: cp/decl.c:11591
+#: cp/decl.c:7463
msgid "destructors may not have parameters"
msgstr ""
-#: cp/decl.c:11622 cp/decl.c:11629
+#: cp/decl.c:7483 cp/decl.c:7490
#, fuzzy
msgid "cannot declare reference to `%#T'"
msgstr "áäõíáìßá áëëáãÞò óôï êáôÜëïãï %s"
-#: cp/decl.c:11623
+#: cp/decl.c:7484
#, fuzzy
msgid "cannot declare pointer to `%#T'"
msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï %s `%s' óôï `%s'"
-#: cp/decl.c:11628
+#: cp/decl.c:7489
msgid "cannot declare pointer to `%#T' member"
msgstr ""
-#: cp/decl.c:11804
+#: cp/decl.c:7627
msgid "extra qualification `%T::' on member `%s' ignored"
msgstr ""
-#: cp/decl.c:11814
+#: cp/decl.c:7639
msgid "cannot declare member function `%T::%s' within `%T'"
msgstr ""
-#: cp/decl.c:11829
+#: cp/decl.c:7654
#, fuzzy
msgid "cannot declare member `%T::%s' within `%T'"
msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï %s `%s' óôï `%s'"
-#: cp/decl.c:11908
+#: cp/decl.c:7734
msgid "data member may not have variably modified type `%T'"
msgstr ""
-#: cp/decl.c:11910
+#: cp/decl.c:7736
msgid "parameter may not have variably modified type `%T'"
msgstr ""
#. [dcl.fct.spec] The explicit specifier shall only be used in
#. declarations of constructors within a class definition.
-#: cp/decl.c:11918
+#: cp/decl.c:7744
msgid "only declarations of constructors can be `explicit'"
msgstr ""
-#: cp/decl.c:11926
+#: cp/decl.c:7752
#, c-format
msgid "non-member `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11931
+#: cp/decl.c:7757
#, c-format
msgid "non-object member `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11937
+#: cp/decl.c:7763
#, c-format
msgid "function `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11942
+#: cp/decl.c:7768
#, c-format
msgid "static `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11947
+#: cp/decl.c:7773
#, c-format
msgid "const `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11960
+#: cp/decl.c:7786
msgid "template-id `%D' used as a declarator"
msgstr ""
-#: cp/decl.c:11981
+#: cp/decl.c:7807
msgid "ISO C++ forbids nested type `%D' with same name as enclosing class"
msgstr ""
-#: cp/decl.c:12030
-msgid "typedef name may not be class-qualified"
+#: cp/decl.c:7815
+msgid "%Jtypedef name may not be a nested-name-specifier"
msgstr ""
-#: cp/decl.c:12038
-msgid "invalid type qualifier for non-member function type"
+#: cp/decl.c:7861
+msgid "%Jinvalid type qualifier for non-member function type"
msgstr ""
-#: cp/decl.c:12101
+#: cp/decl.c:7925
msgid "type qualifiers specified for friend class declaration"
msgstr ""
-#: cp/decl.c:12106
+#: cp/decl.c:7930
msgid "`inline' specified for friend class declaration"
msgstr ""
-#: cp/decl.c:12114
+#: cp/decl.c:7938
#, fuzzy
msgid "template parameters cannot be friends"
msgstr "ï äéá÷ùñéóôÞò äå ìðïñåß íá åßíáé êåíüò"
-#: cp/decl.c:12116
+#: cp/decl.c:7940
msgid "friend declaration requires class-key, i.e. `friend class %T::%D'"
msgstr ""
-#: cp/decl.c:12120
+#: cp/decl.c:7944
msgid "friend declaration requires class-key, i.e. `friend %#T'"
msgstr ""
-#: cp/decl.c:12134
+#: cp/decl.c:7957
msgid "trying to make class `%T' a friend of global scope"
msgstr ""
-#: cp/decl.c:12145
+#: cp/decl.c:7968
msgid "invalid qualifiers on non-member function type"
msgstr ""
-#: cp/decl.c:12164
+#: cp/decl.c:7987
msgid "abstract declarator `%T' used as declaration"
msgstr ""
-#: cp/decl.c:12176
+#: cp/decl.c:7999
msgid "unnamed variable or field declared void"
msgstr ""
-#: cp/decl.c:12185
+#: cp/decl.c:8008
msgid "variable or field declared void"
msgstr ""
-#: cp/decl.c:12195
+#: cp/decl.c:8018
msgid "cannot use `::' in parameter declaration"
msgstr ""
#. Something like struct S { int N::j; };
-#: cp/decl.c:12234
+#: cp/decl.c:8063
#, fuzzy
msgid "invalid use of `::'"
msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
-#: cp/decl.c:12246
+#: cp/decl.c:8075
msgid "function `%D' cannot be declared friend"
msgstr ""
-#: cp/decl.c:12258
+#: cp/decl.c:8087
msgid "can't make `%D' into a method -- not in a class"
msgstr ""
-#: cp/decl.c:12267
+#: cp/decl.c:8096
msgid "function `%D' declared virtual inside a union"
msgstr ""
-#: cp/decl.c:12279
+#: cp/decl.c:8108
msgid "`%D' cannot be declared virtual, since it is always static"
msgstr ""
-#: cp/decl.c:12355
+#: cp/decl.c:8185
msgid "field `%D' has incomplete type"
msgstr ""
-#: cp/decl.c:12357
+#: cp/decl.c:8187
msgid "name `%T' has incomplete type"
msgstr ""
-#: cp/decl.c:12366
+#: cp/decl.c:8196
msgid " in instantiation of template `%T'"
msgstr ""
-#: cp/decl.c:12376
+#: cp/decl.c:8206
#, c-format
msgid "`%s' is neither function nor member function; cannot be declared friend"
msgstr ""
-#: cp/decl.c:12387
+#: cp/decl.c:8217
msgid "member functions are implicitly friends of their class"
msgstr ""
@@ -15656,99 +14905,95 @@ msgstr ""
#. the rest of the compiler does not correctly
#. handle the initialization unless the member is
#. static so we make it static below.
-#: cp/decl.c:12434
+#: cp/decl.c:8258
msgid "ISO C++ forbids initialization of member `%D'"
msgstr ""
-#: cp/decl.c:12436
+#: cp/decl.c:8260
msgid "making `%D' static"
msgstr ""
-#: cp/decl.c:12460
+#: cp/decl.c:8283
msgid "ISO C++ forbids static data member `%D' with same name as enclosing class"
msgstr ""
-#: cp/decl.c:12501
+#: cp/decl.c:8323
#, c-format
msgid "storage class `auto' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:12503
+#: cp/decl.c:8325
#, c-format
msgid "storage class `register' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:12505
+#: cp/decl.c:8327
#, fuzzy, c-format
msgid "storage class `__thread' invalid for function `%s'"
msgstr "ìç Ýãêõñç ôÜîç ÷áñáêôÞñùí `%s'"
-#: cp/decl.c:12516
+#: cp/decl.c:8338
#, c-format
msgid "storage class `static' invalid for function `%s' declared out of global scope"
msgstr ""
-#: cp/decl.c:12518
+#: cp/decl.c:8340
#, c-format
msgid "storage class `inline' invalid for function `%s' declared out of global scope"
msgstr ""
-#: cp/decl.c:12525
+#: cp/decl.c:8347
#, c-format
msgid "virtual non-class function `%s'"
msgstr ""
-#: cp/decl.c:12554
+#: cp/decl.c:8377
msgid "cannot declare member function `%D' to have static linkage"
msgstr ""
#. FIXME need arm citation
-#: cp/decl.c:12560
+#: cp/decl.c:8383
msgid "cannot declare static function inside another function"
msgstr ""
-#: cp/decl.c:12588
+#: cp/decl.c:8411
msgid "`static' may not be used when defining (as opposed to declaring) a static data member"
msgstr ""
-#: cp/decl.c:12594
+#: cp/decl.c:8417
msgid "static member `%D' declared `register'"
msgstr ""
-#: cp/decl.c:12599
+#: cp/decl.c:8422
msgid "cannot explicitly declare member `%#D' to have extern linkage"
msgstr ""
-#: cp/decl.c:12774
+#: cp/decl.c:8564
msgid "default argument for `%#D' has type `%T'"
msgstr ""
-#: cp/decl.c:12777
+#: cp/decl.c:8567
msgid "default argument for parameter of type `%T' has type `%T'"
msgstr ""
-#: cp/decl.c:12794
+#: cp/decl.c:8584
msgid "default argument `%E' uses local variable `%D'"
msgstr ""
-#: cp/decl.c:12839
+#: cp/decl.c:8628
#, fuzzy, c-format
msgid "invalid string constant `%E'"
msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò"
-#: cp/decl.c:12841
+#: cp/decl.c:8630
msgid "invalid integer constant in parameter list, did you forget to give parameter name?"
msgstr ""
-#: cp/decl.c:12879
+#: cp/decl.c:8668
msgid "parameter `%D' invalidly declared method type"
msgstr ""
-#: cp/decl.c:12885
-msgid "parameter `%D' invalidly declared offset type"
-msgstr ""
-
-#: cp/decl.c:12909
+#: cp/decl.c:8692
msgid "parameter `%D' includes %s to array of unknown bound `%T'"
msgstr ""
@@ -15767,526 +15012,354 @@ msgstr ""
#. or implicitly defined), there's no need to worry about their
#. existence. Theoretically, they should never even be
#. instantiated, but that's hard to forestall.
-#: cp/decl.c:13071
+#: cp/decl.c:8851
msgid "invalid constructor; you probably meant `%T (const %T&)'"
msgstr ""
-#: cp/decl.c:13222
+#: cp/decl.c:8991
msgid "`%D' must be a nonstatic member function"
msgstr ""
-#: cp/decl.c:13228
+#: cp/decl.c:8997
msgid "`%D' must be either a non-static member function or a non-member function"
msgstr ""
-#: cp/decl.c:13245
+#: cp/decl.c:9014
msgid "`%D' must have an argument of class or enumerated type"
msgstr ""
-#: cp/decl.c:13277
+#: cp/decl.c:9049
#, c-format
msgid "conversion to %s%s will never use a type conversion operator"
msgstr ""
#. 13.4.0.3
-#: cp/decl.c:13284
+#: cp/decl.c:9056
msgid "ISO C++ prohibits overloading operator ?:"
msgstr ""
-#: cp/decl.c:13334
+#: cp/decl.c:9106
msgid "postfix `%D' must take `int' as its argument"
msgstr ""
-#: cp/decl.c:13338
+#: cp/decl.c:9110
msgid "postfix `%D' must take `int' as its second argument"
msgstr ""
-#: cp/decl.c:13345
+#: cp/decl.c:9117
msgid "`%D' must take either zero or one argument"
msgstr ""
-#: cp/decl.c:13347
+#: cp/decl.c:9119
msgid "`%D' must take either one or two arguments"
msgstr ""
-#: cp/decl.c:13368
+#: cp/decl.c:9140
msgid "prefix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:13374
+#: cp/decl.c:9146
msgid "postfix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:13383
+#: cp/decl.c:9155
msgid "`%D' must take `void'"
msgstr ""
-#: cp/decl.c:13385 cp/decl.c:13393
+#: cp/decl.c:9157 cp/decl.c:9165
msgid "`%D' must take exactly one argument"
msgstr ""
-#: cp/decl.c:13395
+#: cp/decl.c:9167
msgid "`%D' must take exactly two arguments"
msgstr ""
-#: cp/decl.c:13403
+#: cp/decl.c:9175
msgid "user-defined `%D' always evaluates both arguments"
msgstr ""
-#: cp/decl.c:13417
+#: cp/decl.c:9189
msgid "`%D' should return by value"
msgstr ""
-#: cp/decl.c:13429 cp/decl.c:13432
+#: cp/decl.c:9201 cp/decl.c:9204
msgid "`%D' cannot have default arguments"
msgstr ""
-#: cp/decl.c:13475
+#: cp/decl.c:9264
msgid "using typedef-name `%D' after `%s'"
msgstr ""
-#: cp/decl.c:13481
+#: cp/decl.c:9270
msgid "using template type parameter `%T' after `%s'"
msgstr ""
-#: cp/decl.c:13542
-msgid "`%s %T' declares a new type at namespace scope"
-msgstr ""
+#: cp/decl.c:9278
+#, fuzzy
+msgid "`%T' referred to as `%s'"
+msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#: cp/decl.c:13545
-msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
+#: cp/decl.c:9284
+msgid "`%T' referred to as enum"
msgstr ""
-#: cp/decl.c:13663
+#. If a class template appears as elaborated type specifier
+#. without a template header such as:
+#.
+#. template <class T> class C {};
+#. void f(class C); // No template header here
+#.
+#. then the required template argument is missing.
+#: cp/decl.c:9299
+#, fuzzy
+msgid "template argument required for `%s %T'"
+msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
+
+#: cp/decl.c:9445
msgid "use of enum `%#D' without previous declaration"
msgstr ""
-#: cp/decl.c:13749
+#: cp/decl.c:9530
msgid "derived union `%T' invalid"
msgstr ""
-#: cp/decl.c:13795
+#: cp/decl.c:9583
msgid "base type `%T' fails to be a struct or class type"
msgstr ""
-#: cp/decl.c:13805
-msgid "base class `%T' has incomplete type"
-msgstr ""
-
-#: cp/decl.c:13813
+#: cp/decl.c:9591
msgid "recursive type `%T' undefined"
msgstr ""
-#: cp/decl.c:13815
+#: cp/decl.c:9593
#, fuzzy
msgid "duplicate base type `%T' invalid"
msgstr "äéðëüò ïñéóìüò óõíüëïõ"
-#: cp/decl.c:13926
+#: cp/decl.c:9671
+msgid "Java class '%T' cannot have multiple bases"
+msgstr ""
+
+#: cp/decl.c:9673
+msgid "Java class '%T' cannot have virtual bases"
+msgstr ""
+
+#: cp/decl.c:9713
#, fuzzy
msgid "multiple definition of `%#T'"
msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïñéóìïý locale `%s'"
-#: cp/decl.c:13927
-msgid "previous definition here"
-msgstr ""
+#: cp/decl.c:9714
+#, fuzzy
+msgid "%Jprevious definition here"
+msgstr "êáíÝíáò ïñéóìüò ôïõ `UNDEFINED'"
-#: cp/decl.c:14030
+#. DR 377
+#.
+#. IF no integral type can represent all the enumerator values, the
+#. enumeration is ill-formed.
+#: cp/decl.c:9849
msgid "no integral type can represent all of the enumerator values for `%T'"
msgstr ""
-#: cp/decl.c:14106
+#: cp/decl.c:9939
msgid "enumerator value for `%D' not integer constant"
msgstr ""
-#: cp/decl.c:14126
+#: cp/decl.c:9959
msgid "overflow in enumeration values at `%D'"
msgstr ""
-#: cp/decl.c:14195
+#: cp/decl.c:10028
msgid "return type `%#T' is incomplete"
msgstr ""
-#: cp/decl.c:14309
-msgid "semicolon missing after declaration of `%#T'"
-msgstr ""
-
-#: cp/decl.c:14330
+#: cp/decl.c:10148
msgid "return type for `main' changed to `int'"
msgstr ""
-#: cp/decl.c:14361
+#: cp/decl.c:10178
msgid "`%D' implicitly declared before its definition"
msgstr ""
-#: cp/decl.c:14383 cp/typeck.c:6314
+#: cp/decl.c:10200 cp/typeck.c:6011
msgid "`operator=' should return a reference to `*this'"
msgstr ""
-#: cp/decl.c:14643
+#: cp/decl.c:10472
msgid "parameter `%D' declared void"
msgstr ""
-#: cp/decl.c:15130
+#: cp/decl.c:10938
+#, fuzzy
+msgid "invalid member function declaration"
+msgstr "ìç Ýãêõñïò áñéèìüò áðü êåíÝò ãñáììÝò: `%s'"
+
+#: cp/decl.c:10955
msgid "`%D' is already defined in class `%T'"
msgstr ""
-#: cp/decl.c:15348
+#: cp/decl.c:11168
msgid "static member function `%#D' declared with type qualifiers"
msgstr ""
-#: cp/decl2.c:153
+#: cp/decl2.c:143
#, c-format
msgid "duplicate type qualifiers in %s declaration"
msgstr ""
-#: cp/decl2.c:192
-msgid "template `%#D' instantiated in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:198
-msgid "template `%#D' defined in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:365
+#: cp/decl2.c:316
msgid "name missing for member function"
msgstr ""
-#. Something has gone very wrong. Assume we are mistakenly reducing
-#. an expression instead of a declaration.
-#: cp/decl2.c:428
-msgid "parser may be lost: is there a '{' missing somewhere?"
-msgstr ""
-
-#: cp/decl2.c:459 cp/decl2.c:473
+#: cp/decl2.c:408 cp/decl2.c:422
msgid "ambiguous conversion for array subscript"
msgstr ""
-#: cp/decl2.c:467
+#: cp/decl2.c:416
msgid "invalid types `%T[%T]' for array subscript"
msgstr ""
-#: cp/decl2.c:515
+#: cp/decl2.c:464
msgid "type `%#T' argument given to `delete', expected pointer"
msgstr ""
-#: cp/decl2.c:523
+#: cp/decl2.c:472
msgid "anachronistic use of array size in vector delete"
msgstr ""
-#: cp/decl2.c:533
+#: cp/decl2.c:482
msgid "cannot delete a function. Only pointer-to-objects are valid arguments to `delete'"
msgstr ""
-#: cp/decl2.c:540
+#: cp/decl2.c:489
msgid "deleting `%T' is undefined"
msgstr ""
-#: cp/decl2.c:548
+#: cp/decl2.c:497
msgid "deleting array `%#D'"
msgstr ""
#. 14.5.2.2 [temp.mem]
#.
#. A local class shall not have member templates.
-#: cp/decl2.c:582
+#: cp/decl2.c:530
msgid "invalid declaration of member template `%#D' in local class"
msgstr ""
-#: cp/decl2.c:591
+#: cp/decl2.c:539
msgid "invalid use of `virtual' in template declaration of `%#D'"
msgstr ""
-#: cp/decl2.c:601 cp/pt.c:2745
+#: cp/decl2.c:549 cp/pt.c:2830
msgid "template declaration of `%#D'"
msgstr ""
-#: cp/decl2.c:651
+#: cp/decl2.c:598
msgid "Java method '%D' has non-Java return type `%T'"
msgstr ""
-#: cp/decl2.c:660
+#: cp/decl2.c:614
msgid "Java method '%D' has non-Java parameter type `%T'"
msgstr ""
-#: cp/decl2.c:746
+#: cp/decl2.c:705
#, fuzzy
msgid "prototype for `%#D' does not match any in class `%T'"
msgstr "ôï áñ÷åßï äåäïìÝíùí ðñïößë `%s' äåí ôáéñéÜæåé ìå ôï äéáìïéñáæüìåíï áíôéêåßìåíï `%s'"
-#: cp/decl2.c:828
+#: cp/decl2.c:784
#, fuzzy
msgid "local class `%#T' shall not have static data member `%#D'"
msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#: cp/decl2.c:836
+#: cp/decl2.c:792
msgid "initializer invalid for static member with constructor"
msgstr ""
-#: cp/decl2.c:839
+#: cp/decl2.c:795
msgid "(an out of class initialization is required)"
msgstr ""
-#: cp/decl2.c:898
-msgid "invalid data member initialization"
-msgstr ""
-
-#: cp/decl2.c:901
-msgid "(use `=' to initialize static data members)"
-msgstr ""
-
-#: cp/decl2.c:947
+#: cp/decl2.c:878
msgid "member `%D' conflicts with virtual function table field name"
msgstr ""
-#: cp/decl2.c:967
+#: cp/decl2.c:895
msgid "`%D' is already defined in `%T'"
msgstr ""
-#: cp/decl2.c:1014
+#: cp/decl2.c:942
msgid "field initializer is not constant"
msgstr ""
-#: cp/decl2.c:1038
+#: cp/decl2.c:970
msgid "`asm' specifiers are not permitted on non-static data members"
msgstr ""
-#: cp/decl2.c:1090
+#: cp/decl2.c:1020
msgid "cannot declare `%D' to be a bit-field type"
msgstr ""
-#: cp/decl2.c:1100
+#: cp/decl2.c:1030
msgid "cannot declare bit-field `%D' with function type"
msgstr ""
-#: cp/decl2.c:1107
+#: cp/decl2.c:1037
msgid "`%D' is already defined in the class %T"
msgstr ""
-#: cp/decl2.c:1114
+#: cp/decl2.c:1044
msgid "static member `%D' cannot be a bit-field"
msgstr ""
-#: cp/decl2.c:1201
+#: cp/decl2.c:1103
msgid "initializer specified for non-member function `%D'"
msgstr ""
-#: cp/decl2.c:1205
+#: cp/decl2.c:1107
#, fuzzy
msgid "invalid initializer for virtual method `%D'"
msgstr "Ìç Ýãêõñç áêÝñáéá ðáñÜìåôñïò `%s'"
-#: cp/decl2.c:1319
+#: cp/decl2.c:1154
msgid "anonymous struct not inside named type"
msgstr ""
-#: cp/decl2.c:1415
+#: cp/decl2.c:1224
msgid "namespace-scope anonymous aggregates must be static"
msgstr ""
-#: cp/decl2.c:1428
-msgid "anonymous aggregate with no members"
+#: cp/decl2.c:1231
+msgid "anonymous union with no members"
msgstr ""
-#: cp/decl2.c:1497
+#: cp/decl2.c:1265
msgid "`operator new' must return type `%T'"
msgstr ""
-#: cp/decl2.c:1505
+#: cp/decl2.c:1273
msgid "`operator new' takes type `size_t' (`%T') as first parameter"
msgstr ""
-#: cp/decl2.c:1532
+#: cp/decl2.c:1299
msgid "`operator delete' must return type `%T'"
msgstr ""
-#: cp/decl2.c:1540
+#: cp/decl2.c:1307
msgid "`operator delete' takes type `%T' as first parameter"
msgstr ""
-#. Overflow occurred. That means there are at least 4 billion
-#. initialization functions.
-#: cp/decl2.c:2282
-msgid "too many initialization functions required"
-msgstr ""
-
-#: cp/decl2.c:3006
+#: cp/decl2.c:2814
msgid "inline function `%D' used but never defined"
msgstr ""
-#: cp/decl2.c:3135
-#, fuzzy
-msgid "use of old-style cast"
-msgstr "ðáëáéïý åßäïõò èÝóç"
-
-# src/getopt.c:628
-# src/getopt.c:628
-#: cp/decl2.c:3860
-#, fuzzy
-msgid "use of `%D' is ambiguous"
-msgstr "%s: ç åðéëïãÞ `%s' åßíáé áóáöÞò\n"
-
-#: cp/decl2.c:3861
-msgid " first declared as `%#D' here"
-msgstr ""
-
-#: cp/decl2.c:3864
-msgid " also declared as `%#D' here"
-msgstr ""
-
-#: cp/decl2.c:3879
-msgid "`%D' denotes an ambiguous type"
-msgstr ""
-
-#: cp/decl2.c:3880
-msgid " first type here"
-msgstr ""
-
-#: cp/decl2.c:3881
-msgid " other type here"
-msgstr ""
-
-#: cp/decl2.c:3982
-msgid "declaration of `%D' not in a namespace surrounding `%D'"
-msgstr ""
-
-#: cp/decl2.c:4016
-msgid "`%D' should have been declared inside `%D'"
-msgstr ""
-
-#: cp/decl2.c:4152
-#, fuzzy
-msgid "`%D' is not a function,"
-msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
-
-#: cp/decl2.c:4153
-msgid " conflict with `%D'"
-msgstr ""
-
-#. The parser did not find it, so it's not there.
-#: cp/decl2.c:4473
-#, fuzzy
-msgid "unknown namespace `%D'"
-msgstr "Üãíùóôï óåô `%s'"
-
-#: cp/decl2.c:4507 cp/decl2.c:4794
-#, fuzzy
-msgid "`%T' is not a namespace"
-msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-
-#: cp/decl2.c:4509
-#, fuzzy
-msgid "`%D' is not a namespace"
-msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-
-#: cp/decl2.c:4518
-msgid "a using-declaration cannot specify a template-id. Try `using %D'"
-msgstr ""
-
-#: cp/decl2.c:4532
-msgid "namespace `%D' not allowed in using-declaration"
-msgstr ""
-
-#: cp/decl2.c:4561
-#, fuzzy
-msgid "`%D' not declared"
-msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-
-#. If the OLD_FN was really declared, the
-#. declarations don't match.
-#: cp/decl2.c:4573 cp/decl2.c:4615 cp/decl2.c:4640
-msgid "`%D' is already declared in this scope"
-msgstr ""
-
-#: cp/decl2.c:4646
-msgid "using declaration `%D' introduced ambiguous type `%T'"
-msgstr ""
-
-#: cp/decl2.c:4740
-msgid "using-declaration for non-member at class scope"
-msgstr ""
-
-#: cp/decl2.c:4746
-msgid "using-declaration for destructor"
-msgstr ""
-
-#: cp/decl2.c:4752
-msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
-msgstr ""
-
-#: cp/decl2.c:4788
-msgid "namespace `%T' undeclared"
-msgstr ""
-
-#: cp/decl2.c:4817
+#: cp/decl2.c:2960
msgid "default argument missing for parameter %P of `%+#D'"
msgstr ""
-#: cp/decl2.c:4941
-msgid "extra qualification `%T::' on member `%D' ignored"
-msgstr ""
-
-#: cp/decl2.c:4945
-#, fuzzy
-msgid "`%T' does not have a class or union named `%D'"
-msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-
-#: cp/decl2.c:4963
-#, fuzzy
-msgid "`%T' is not a class or union type"
-msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-
-#: cp/decl2.c:4977
-#, fuzzy
-msgid "template argument is required for `%T'"
-msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-
-#: cp/decl2.c:4995
-msgid "declaration of `%D' in `%D' which does not enclose `%D'"
-msgstr ""
-
-#: cp/error.c:35
-#, fuzzy, c-format
-msgid "`%s' not supported by %s"
-msgstr "Äåí õðïóôçñßæåôáé"
-
-#: cp/error.c:571
-#, c-format
-msgid "<anonymous %s>"
-msgstr ""
-
-#: cp/error.c:810
-#, c-format
-msgid "(static %s for %s)"
-msgstr ""
-
-#: cp/error.c:1503
-#, c-format
-msgid "\\x%x"
-msgstr ""
-
-#: cp/error.c:2473
-#, c-format
-msgid "In %s `%s':"
-msgstr ""
-
-#: cp/error.c:2530
-#, fuzzy, c-format
-msgid "%s: In instantiation of `%s':\n"
-msgstr "%s: Ìç Ýãêõñç ñýèìéóç `%s'.\n"
-
-#: cp/error.c:2554
-#, c-format
-msgid "%s:%d: instantiated from `%s'\n"
-msgstr ""
-
-#: cp/error.c:2559
-#, c-format
-msgid "%s:%d: instantiated from here\n"
-msgstr ""
-
#. damn ICE suppression
-#: cp/error.c:2713
+#: cp/error.c:2374
#, c-format
msgid "unexpected letter `%c' in locate_error\n"
msgstr ""
@@ -16305,165 +15378,184 @@ msgstr ""
msgid "type `%T' is not derived from `java::lang::Throwable'"
msgstr ""
-#: cp/except.c:322
+#: cp/except.c:321
msgid "mixing C++ and Java catches in a single translation unit"
msgstr ""
-#: cp/except.c:639
+#: cp/except.c:630
msgid "throwing NULL, which has integral, not pointer type"
msgstr ""
-#: cp/except.c:730
+#: cp/except.c:653 cp/init.c:2029
+msgid "`%D' should never be overloaded"
+msgstr ""
+
+#: cp/except.c:722
msgid " in thrown expression"
msgstr ""
-#: cp/except.c:856
+#: cp/except.c:843
msgid "expression '%E' of abstract class type '%T' cannot be used in throw-expression"
msgstr ""
-#: cp/except.c:944
+#: cp/except.c:925
msgid "exception of type `%T' will be caught"
msgstr ""
-#: cp/except.c:947
+#: cp/except.c:928
msgid " by earlier handler for `%T'"
msgstr ""
-#: cp/except.c:968
+#: cp/except.c:949
msgid "`...' handler must be the last handler for its try block"
msgstr ""
-#: cp/friend.c:159
+#: cp/friend.c:151
msgid "`%D' is already a friend of class `%T'"
msgstr ""
-#: cp/friend.c:161
-msgid "previous friend declaration of `%D'"
-msgstr ""
-
-#: cp/friend.c:206
+#: cp/friend.c:202
msgid "invalid type `%T' declared `friend'"
msgstr ""
#. [temp.friend]
#. Friend declarations shall not declare partial
#. specializations.
-#: cp/friend.c:222
+#: cp/friend.c:218
msgid "partial specialization `%T' declared `friend'"
msgstr ""
-#: cp/friend.c:231
+#: cp/friend.c:228
msgid "class `%T' is implicitly friends with itself"
msgstr ""
#. template <class T> friend typename S<T>::X;
-#: cp/friend.c:249
+#: cp/friend.c:246
msgid "typename type `%#T' declared `friend'"
msgstr ""
#. template <class T> friend class T;
-#: cp/friend.c:255
+#: cp/friend.c:252
msgid "template parameter type `%T' declared `friend'"
msgstr ""
#. template <class T> friend class A; where A is not a template
-#: cp/friend.c:261
+#: cp/friend.c:258
#, fuzzy
msgid "`%#T' is not a template"
msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-#: cp/friend.c:276
+#: cp/friend.c:277
+#, fuzzy
+msgid "`%D' is already a friend of `%T'"
+msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
+
+#: cp/friend.c:287
#, fuzzy
msgid "`%T' is already a friend of `%T'"
msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#: cp/friend.c:376
+#: cp/friend.c:413
msgid "member `%D' declared as friend before type `%T' defined"
msgstr ""
-#: cp/friend.c:431
+#: cp/friend.c:470
msgid "friend declaration `%#D' declares a non-template function"
msgstr ""
-#: cp/friend.c:434
+#: cp/friend.c:473
msgid "(if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) -Wno-non-template-friend disables this warning"
msgstr ""
-#: cp/g++spec.c:211 java/jvspec.c:423
+#: cp/g++spec.c:229 java/jvspec.c:415
#, fuzzy, c-format
msgid "argument to `%s' missing\n"
msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-#: cp/init.c:334
+#: cp/init.c:318
msgid "`%D' should be initialized in the member initialization list"
msgstr ""
-#: cp/init.c:384
+#: cp/init.c:368
msgid "default-initialization of `%#D', which has reference type"
msgstr ""
-#: cp/init.c:389
+#: cp/init.c:373
msgid "uninitialized reference member `%D'"
msgstr ""
-#: cp/init.c:397
-msgid "initializer list treated as compound expression"
-msgstr ""
-
-#: cp/init.c:538
+#: cp/init.c:511
msgid "`%D' will be initialized after"
msgstr ""
-#: cp/init.c:541
+#: cp/init.c:514
#, fuzzy
msgid "base `%T' will be initialized after"
msgstr "ç êëÜóç ÷áñáêôÞñùí `%s' ïñßóôçêå Þäç"
-#: cp/init.c:544
+#: cp/init.c:517
#, fuzzy
msgid " `%#D'"
msgstr " `%s'"
-#: cp/init.c:546
+#: cp/init.c:519
#, fuzzy
msgid " base `%T'"
msgstr " êáôÜ `%D'"
+#: cp/init.c:520
+#, fuzzy
+msgid " when initialized here"
+msgstr "ìç Ýãêõñï ìÝãåèïò ïñéæüíôéïõ óôçëïèÝôç: %s"
+
+#: cp/init.c:536
+msgid "multiple initializations given for `%D'"
+msgstr ""
+
# src/request.c:263
-#: cp/init.c:564
+#: cp/init.c:538
#, fuzzy
msgid "multiple initializations given for base `%T'"
msgstr "Ôï âÞìá áñ÷éêïðïßçóçò áðÝôõ÷å"
-#: cp/init.c:631
+#: cp/init.c:605
msgid "initializations for multiple members of `%T'"
msgstr ""
-#: cp/init.c:688
+#: cp/init.c:662
msgid "base class `%#T' should be explicitly initialized in the copy constructor"
msgstr ""
-#: cp/init.c:926
+#: cp/init.c:892 cp/init.c:911
msgid "class `%T' does not have any field named `%D'"
msgstr ""
-#: cp/init.c:932
-msgid "field `%#D' is static; the only point of initialization is its definition"
+#: cp/init.c:898
+msgid "`%#D' is a static data member; it can only be initialized at its definition"
msgstr ""
-#: cp/init.c:965
+#: cp/init.c:905
+#, fuzzy
+msgid "`%#D' is not a non-static data member of `%T'"
+msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
+
+#: cp/init.c:944
msgid "unnamed initializer for `%T', which has no base classes"
msgstr ""
-#: cp/init.c:972
+#: cp/init.c:951
msgid "unnamed initializer for `%T', which uses multiple inheritance"
msgstr ""
-#: cp/init.c:1007
+#: cp/init.c:1006
+msgid "'%D' is both a direct base and an indirect virtual base"
+msgstr ""
+
+#: cp/init.c:1014
msgid "type `%D' is not a direct or virtual base of `%T'"
msgstr ""
-#: cp/init.c:1010
+#: cp/init.c:1017
#, fuzzy
msgid "type `%D' is not a direct base of `%T'"
msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
@@ -16480,552 +15572,865 @@ msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
#. COMPLEX zees(1.0, 0.0)[10];
#. }
#.
-#: cp/init.c:1104
+#: cp/init.c:1109
msgid "bad array initializer"
msgstr ""
-#: cp/init.c:1311
+#: cp/init.c:1303
#, fuzzy
msgid "`%T' is not an aggregate type"
msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-#: cp/init.c:1334
+#: cp/init.c:1324
msgid "`%T' fails to be an aggregate typedef"
msgstr ""
-#: cp/init.c:1343
+#: cp/init.c:1333
msgid "type `%T' is of non-aggregate type"
msgstr ""
-#: cp/init.c:1446
-msgid "cannot call destructor `%T::~%T' without object"
-msgstr ""
-
-#: cp/init.c:1490
-#, fuzzy
-msgid "invalid use of non-static field `%D'"
-msgstr "ìç Ýãêõñïò áñéèìüò áðü óôÞëåò: `%s'"
-
-#. We can get here when processing a bad default
-#. argument, like:
-#. struct S { int a; void f(int i = a); }
-#: cp/init.c:1499 cp/method.c:160
-#, fuzzy
-msgid "invalid use of member `%D'"
-msgstr "ìç Ýãêõñïò áñéèìüò ðåäßïõ: `%s'"
-
-#: cp/init.c:1509
-msgid "no method `%T::%D'"
+#: cp/init.c:1425 cp/typeck.c:1798
+msgid "qualified type `%T' does not match destructor name `~%T'"
msgstr ""
-#: cp/init.c:1602
+#: cp/init.c:1433
msgid "incomplete type `%T' does not have member `%D'"
msgstr ""
-#: cp/init.c:1676
+#: cp/init.c:1452
#, fuzzy
msgid "`%D' is not a member of type `%T'"
msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'"
-#: cp/init.c:1695
+#: cp/init.c:1471
#, fuzzy
msgid "invalid pointer to bit-field `%D'"
msgstr "áêáôÜëëçëïò ôýðïò äéêôýïõ :`%s'\n"
-#: cp/init.c:1734
-msgid "object missing in use of pointer-to-member construct"
-msgstr ""
-
-#: cp/init.c:1774
-msgid "member `%D' is non-static but referenced as a static member"
-msgstr ""
-
-#: cp/init.c:1776 cp/typeck.c:2826 cp/typeck.c:2930
-msgid "at this point in file"
-msgstr ""
+#: cp/init.c:1573
+#, fuzzy
+msgid "invalid use of non-static member function `%D'"
+msgstr "ìç Ýãêõñïò áñéèìüò áðü óôÞëåò: `%s'"
-#: cp/init.c:1813
-#, c-format
-msgid "object missing in `%E'"
-msgstr ""
+#: cp/init.c:1579 cp/semantics.c:1236
+#, fuzzy
+msgid "invalid use of non-static data member `%D'"
+msgstr "ìç Ýãêõñïò áñéèìüò áðü óôÞëåò: `%s'"
-#: cp/init.c:1944
+#: cp/init.c:1718
msgid "new of array type fails to specify size"
msgstr ""
-#: cp/init.c:1955
+#: cp/init.c:1729
msgid "size in array new must have integral type"
msgstr ""
-#: cp/init.c:1961
+#: cp/init.c:1735
msgid "zero size array reserves no space"
msgstr ""
-#: cp/init.c:2026
+#: cp/init.c:1801
msgid "new cannot be applied to a reference type"
msgstr ""
-#: cp/init.c:2032
+#: cp/init.c:1807
msgid "new cannot be applied to a function type"
msgstr ""
-#: cp/init.c:2079
+#: cp/init.c:1853
msgid "call to Java constructor, while `jclass' undefined"
msgstr ""
-#: cp/init.c:2095
+#: cp/init.c:1869
msgid "can't find class$"
msgstr ""
-#: cp/init.c:2209
+#: cp/init.c:1995
#, fuzzy
msgid "invalid type `void' for new"
msgstr "ìç Ýãêõñç êáôÜóôáóç ãéá ôçí dlopen()"
-#: cp/init.c:2261
+#: cp/init.c:2005
+msgid "uninitialized const in `new' of `%#T'"
+msgstr ""
+
+#: cp/init.c:2024
#, c-format
msgid "call to Java constructor with `%s' undefined"
msgstr ""
-#: cp/init.c:2369
-msgid "ISO C++ forbids initialization in array new"
-msgstr ""
+# src/getopt.c:628
+# src/getopt.c:628
+#: cp/init.c:2065
+#, fuzzy
+msgid "request for member `%D' is ambiguous"
+msgstr "%s: ç åðéëïãÞ `%s' åßíáé áóáöÞò\n"
-#: cp/init.c:2391 cp/typeck2.c:367 cp/typeck2.c:1208
-msgid "initializer list being treated as compound expression"
+#: cp/init.c:2189
+msgid "ISO C++ forbids initialization in array new"
msgstr ""
-#: cp/init.c:2397
+#: cp/init.c:2213
msgid "ISO C++ forbids aggregate initializer to new"
msgstr ""
-#: cp/init.c:2485
-msgid "uninitialized const in `new' of `%#T'"
-msgstr ""
-
-#: cp/init.c:2864
+#: cp/init.c:2658
msgid "initializer ends prematurely"
msgstr ""
-#: cp/init.c:2934
+#: cp/init.c:2715
msgid "cannot initialize multi-dimensional array with initializer"
msgstr ""
-#: cp/init.c:3124
-msgid "unknown array size in delete"
+#: cp/init.c:2876
+msgid "possible problem detected in invocation of delete operator:"
msgstr ""
-#: cp/init.c:3389
-msgid "type to vector delete is neither pointer or array type"
+#: cp/init.c:2879
+msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined."
msgstr ""
-#: cp/lex.c:136
-#, fuzzy
-msgid "type name expected before `*'"
-msgstr "ÅããñáöÞ ïíïìÜôùí ôùí åðéëåãìÝíùí êáôçãïñéþí"
-
-#: cp/lex.c:158
-msgid "cannot declare references to references"
+#: cp/init.c:2900
+msgid "unknown array size in delete"
msgstr ""
-#: cp/lex.c:163
-msgid "cannot declare pointers to references"
+#: cp/init.c:3165
+msgid "type to vector delete is neither pointer or array type"
msgstr ""
-#: cp/lex.c:167
+#: cp/lex.c:99
#, fuzzy
-msgid "type name expected before `&'"
+msgid "type name expected before `*'"
msgstr "ÅããñáöÞ ïíïìÜôùí ôùí åðéëåãìÝíùí êáôçãïñéþí"
-#: cp/lex.c:894
-#, c-format
-msgid "semicolon missing after %s declaration"
-msgstr ""
-
-#: cp/lex.c:897
-msgid "semicolon missing after declaration of `%T'"
-msgstr ""
-
-#: cp/lex.c:945
+#: cp/lex.c:501
#, c-format
msgid "junk at end of #pragma %s"
msgstr ""
-#: cp/lex.c:952
+#: cp/lex.c:508
#, fuzzy, c-format
msgid "invalid #pragma %s"
msgstr "Ç ðáñÜìåôñïò `%s' äåí åßíáé Ýãêõñç."
-#: cp/lex.c:961
+#: cp/lex.c:516
msgid "#pragma vtable no longer supported"
msgstr ""
-#: cp/lex.c:1038
+#: cp/lex.c:590
#, c-format
msgid "#pragma implementation for %s appears after file is included"
msgstr ""
-#: cp/lex.c:1063
+#: cp/lex.c:614
msgid "junk at end of #pragma GCC java_exceptions"
msgstr ""
-#: cp/lex.c:1107
+#: cp/lex.c:628
#, fuzzy
msgid "`%D' not defined"
msgstr "áüñéóôï"
-#: cp/lex.c:1110
+#: cp/lex.c:631
msgid "`%D' was not declared in this scope"
msgstr ""
-#: cp/lex.c:1118
+#: cp/lex.c:639
msgid "`%D' undeclared (first use this function)"
msgstr ""
-#: cp/lex.c:1122
+#: cp/lex.c:643
msgid "(Each undeclared identifier is reported only once for each function it appears in.)"
msgstr ""
-#: cp/lex.c:1242
-msgid "`::%D' undeclared (first use here)"
+#. In a template, it is invalid to write "f()" or "f(3)" if no
+#. declaration of "f" is available. Historically, G++ and most
+#. other compilers accepted that usage since they deferred all name
+#. lookup until instantiation time rather than doing unqualified
+#. name lookup at template definition time; explain to the user what
+#. is going wrong.
+#.
+#. Note that we have the exact wording of the following message in
+#. the manual (trouble.texi, node "Name lookup"), so they need to
+#. be kept in synch.
+#: cp/lex.c:674
+msgid "there are no arguments to `%D' that depend on a template parameter, so a declaration of `%D' must be available"
+msgstr ""
+
+#: cp/lex.c:683
+msgid "(if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)"
msgstr ""
-#: cp/mangle.c:2051
+#: cp/mangle.c:2036
msgid "call_expr cannot be mangled due to a defect in the C++ ABI"
msgstr ""
-#: cp/mangle.c:2363
+#: cp/mangle.c:2089
+msgid "omitted middle operand to `?:' operand cannot be mangled"
+msgstr ""
+
+#: cp/mangle.c:2388
msgid "the mangled name of `%D' will change in a future version of GCC"
msgstr ""
-#: cp/method.c:154
-msgid "invalid use of member `%D' in static member function"
+#: cp/method.c:456
+msgid "generic thunk code fails for method `%#D' which uses `...'"
msgstr ""
-#: cp/method.c:216
-msgid "use of namespace `%D' as expression"
+#: cp/method.c:681
+msgid "non-static const member `%#D', can't use default assignment operator"
msgstr ""
-#: cp/method.c:221
-msgid "use of class template `%T' as expression"
+#: cp/method.c:686
+msgid "non-static reference member `%#D', can't use default assignment operator"
msgstr ""
-#: cp/method.c:234
-#, c-format
-msgid "use of %s from containing function"
+#: cp/name-lookup.c:649
+msgid "`%#D' used prior to declaration"
msgstr ""
-#: cp/method.c:237
-msgid " `%#D' declared here"
+#: cp/name-lookup.c:680
+msgid "redeclaration of `wchar_t' as `%T'"
msgstr ""
-#: cp/method.c:255
-msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
+#. A redeclaration of main, but not a duplicate of the
+#. previous one.
+#.
+#. [basic.start.main]
+#.
+#. This function shall not be overloaded.
+#: cp/name-lookup.c:712
+#, fuzzy
+msgid "invalid redeclaration of `%D'"
+msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
+
+#: cp/name-lookup.c:713
+msgid "as `%D'"
msgstr ""
-#: cp/method.c:458
-msgid "generic thunk code fails for method `%#D' which uses `...'"
+#: cp/name-lookup.c:801
+#, fuzzy
+msgid "type mismatch with previous external decl of `%#D'"
+msgstr "óöÜëìá ôáéñéÜóìáôïò ôýðïõ ìå ðñïçãïýìåíç áõôïíüçôç äéáêýñçîç"
+
+#: cp/name-lookup.c:802
+msgid "previous external decl of `%#D'"
msgstr ""
-#: cp/method.c:697
-msgid "non-static const member `%#D', can't use default assignment operator"
+#: cp/name-lookup.c:844
+msgid "`%D' was previously implicitly declared to return `int'"
msgstr ""
-#: cp/method.c:702
-msgid "non-static reference member `%#D', can't use default assignment operator"
+#: cp/name-lookup.c:902
+msgid "extern declaration of `%#D' doesn't match"
msgstr ""
-#: parse.y:262
-#, fuzzy
-msgid "`%s' tag used in naming `%#T'"
-msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
+#: cp/name-lookup.c:903
+msgid "global declaration `%#D'"
+msgstr ""
-#: parse.y:542
-msgid "keyword `export' not implemented, and will be ignored"
+#: cp/name-lookup.c:939
+msgid "declaration of `%#D' shadows a parameter"
msgstr ""
-#: parse.y:646
-msgid "use of linkage spec `%D' is different from previous spec `%D'"
+#: cp/name-lookup.c:960
+#, c-format
+msgid "declaration of `%s' shadows a member of `this'"
msgstr ""
-#: parse.y:943
-msgid "no base or member initializers given following ':'"
+#: cp/name-lookup.c:1136
+#, fuzzy
+msgid "name lookup of `%D' changed"
+msgstr "ç ïìÜäá ôïõ %s Üëëáîå óå %s\n"
+
+#: cp/name-lookup.c:1138
+msgid " matches this `%D' under ISO standard rules"
msgstr ""
-#: parse.y:984
-msgid "anachronistic old style base class initializer"
+#: cp/name-lookup.c:1140
+msgid " matches this `%D' under old rules"
msgstr ""
-#. Handle `Class<Class<Type>>' without space in the `>>'
-#: parse.y:1117
-msgid "`>>' should be `> >' in template class name"
+#: cp/name-lookup.c:1154 cp/name-lookup.c:1161
+#, fuzzy
+msgid "name lookup of `%D' changed for new ISO `for' scoping"
+msgstr "ç ïìÜäá ôïõ %s Üëëáîå óå %s\n"
+
+#: cp/name-lookup.c:1156
+msgid " cannot use obsolete binding at `%D' because it has a destructor"
msgstr ""
-#: parse.y:1164
-msgid "use of template qualifier outside template"
+#: cp/name-lookup.c:1163
+msgid " using obsolete binding at `%D'"
msgstr ""
-#: parse.y:1193 parse.y:1202
+#: cp/name-lookup.c:1216
#, c-format
-msgid "ISO C++ forbids an empty condition for `%s'"
+msgid "%s %s(%E) %p %d\n"
+msgstr ""
+
+# src/request.c:37
+#: cp/name-lookup.c:1219
+#, fuzzy, c-format
+msgid "%s %s %p %d\n"
+msgstr "%s: %s: "
+
+#: cp/name-lookup.c:1338
+msgid "XXX is_class_level != (current_scope == class_scope)\n"
msgstr ""
-#: parse.y:1225
-msgid "definition of class `%T' in condition"
+#: cp/name-lookup.c:1975
+#, fuzzy
+msgid "`%#D' hides constructor for `%#T'"
+msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
+
+#: cp/name-lookup.c:1990
+msgid "`%#D' conflicts with previous using declaration `%#D'"
+msgstr ""
+
+#: cp/name-lookup.c:2002
+msgid "previous non-function declaration `%#D'"
msgstr ""
-#: parse.y:1227
-msgid "definition of enum `%T' in condition"
+#: cp/name-lookup.c:2003
+msgid "conflicts with function declaration `%#D'"
msgstr ""
-#: parse.y:1238
-msgid "definition of array `%#D' in condition"
+#. 7.3.3/5
+#. A using-declaration shall not name a template-id.
+#: cp/name-lookup.c:2080
+msgid "a using-declaration cannot specify a template-id. Try `using %D'"
msgstr ""
-#: parse.y:1351
-msgid "old style placement syntax, use () instead"
+#: cp/name-lookup.c:2086
+msgid "namespace `%D' not allowed in using-declaration"
msgstr ""
-#: parse.y:1362
+#. It's a nested name with template parameter dependent scope.
+#. This can only be using-declaration for class member.
+#: cp/name-lookup.c:2094 cp/name-lookup.c:2108 cp/name-lookup.c:3283
#, fuzzy
-msgid "`%T' is not a valid expression"
-msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
+msgid "`%T' is not a namespace"
+msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-#. This was previously allowed as an extension, but
-#. was removed in G++ 3.3.
-#: parse.y:1369
+#: cp/name-lookup.c:2132
#, fuzzy
-msgid "initialization of new expression with `='"
-msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç"
+msgid "`%D' not declared"
+msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-#: parse.y:1395
-msgid "ISO C++ forbids compound literals"
+#. If the OLD_FN was really declared, the
+#. declarations don't match.
+#: cp/name-lookup.c:2144 cp/name-lookup.c:2186 cp/name-lookup.c:2211
+msgid "`%D' is already declared in this scope"
msgstr ""
-#: parse.y:1642
-msgid "ISO C++ forbids braced-groups within expressions"
+#: cp/name-lookup.c:2217
+msgid "using declaration `%D' introduced ambiguous type `%T'"
+msgstr ""
+
+#. Definition isn't the kind we were looking for.
+#: cp/name-lookup.c:2376 cp/name-lookup.c:2395
+msgid "`%#D' redeclared as %C"
+msgstr ""
+
+#: cp/name-lookup.c:2805
+msgid "using-declaration for non-member at class scope"
msgstr ""
-#: parse.y:1721
+#: cp/name-lookup.c:2812
#, fuzzy
-msgid "invalid use of template `%D'"
-msgstr "ìç Ýãêõñïò áñéèìüò ðåäßïõ: `%s'"
+msgid "using-declaration cannot name destructor"
+msgstr "óõíôáêôéêü óöÜëìá óôïí ïñéóìü êëÜóçò ÷áñáêôÞñùí"
-# src/dfa.c:962
-# src/dfa.c:970
-#: parse.y:2053 parse.y:2068
+#: cp/name-lookup.c:2908
+msgid "declaration of `%D' not in a namespace surrounding `%D'"
+msgstr ""
+
+#: cp/name-lookup.c:2948
+msgid "`%D' should have been declared inside `%D'"
+msgstr ""
+
+#: cp/name-lookup.c:3012
+msgid "namespace alias `%D' not allowed here, assuming `%D'"
+msgstr ""
+
+#. The parser did not find it, so it's not there.
+#: cp/name-lookup.c:3127
#, fuzzy
-msgid "sigof type specifier"
-msgstr "Äåí ïñßóôçêå óõíôáêôéêü"
+msgid "unknown namespace `%D'"
+msgstr "Üãíùóôï óåô `%s'"
-#: parse.y:2058
-msgid "`sigof' applied to non-aggregate expression"
+#: cp/name-lookup.c:3277
+msgid "namespace `%T' undeclared"
msgstr ""
-#: parse.y:2073
-msgid "`sigof' applied to non-aggregate type"
+#: cp/name-lookup.c:3310
+msgid "strong using only meaningful at namespace scope"
msgstr ""
-#: parse.y:2339
-msgid "using `typename' outside of template"
+#: cp/name-lookup.c:3317
+#, fuzzy
+msgid "`%D' attribute directive ignored"
+msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
+
+# src/getopt.c:628
+# src/getopt.c:628
+#: cp/name-lookup.c:3450
+#, fuzzy
+msgid "use of `%D' is ambiguous"
+msgstr "%s: ç åðéëïãÞ `%s' åßíáé áóáöÞò\n"
+
+#: cp/name-lookup.c:3451
+msgid " first declared as `%#D' here"
msgstr ""
-#: parse.y:2356
-msgid "qualified name does not name a class"
+#: cp/name-lookup.c:3454
+msgid " also declared as `%#D' here"
msgstr ""
-#: parse.y:2417
-#, c-format
-msgid "storage class specifier `%s' not allowed after struct or class"
+#: cp/name-lookup.c:3469
+msgid "`%D' denotes an ambiguous type"
msgstr ""
-#: parse.y:2419
-#, c-format
-msgid "type specifier `%s' not allowed after struct or class"
+#: cp/name-lookup.c:3470
+msgid "%J first type here"
msgstr ""
-#: parse.y:2421
-#, c-format
-msgid "type qualifier `%s' not allowed after struct or class"
+#: cp/name-lookup.c:3471
+msgid "%J other type here"
msgstr ""
-#: parse.y:2423
-msgid "no body nor ';' separates two class, struct or union declarations"
+#. This happens for A::B where B is a template, and there are no
+#. template arguments.
+#: cp/name-lookup.c:3536 cp/typeck.c:1773
+#, fuzzy
+msgid "invalid use of `%D'"
+msgstr "Ìç Ýãêõñç çìåñïìçíßá `%s'."
+
+#: cp/name-lookup.c:3577
+#, fuzzy
+msgid "`%D::%D' is not a template"
+msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+
+#: cp/name-lookup.c:3594
+msgid "`%D' undeclared in namespace `%D'"
msgstr ""
-#: parse.y:2553
-msgid "no bases given following `:'"
+#: cp/name-lookup.c:4055
+#, fuzzy
+msgid "`%D' is not a function,"
+msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
+
+#: cp/name-lookup.c:4056
+msgid " conflict with `%D'"
msgstr ""
-#: parse.y:2584 parse.y:2599
-msgid "`%D' access"
+#: cp/name-lookup.c:4794
+msgid "XXX entering pop_everything ()\n"
msgstr ""
-#: parse.y:2589
-msgid "multiple access specifiers"
+#: cp/name-lookup.c:4803
+msgid "XXX leaving pop_everything ()\n"
msgstr ""
-#: parse.y:2607
-msgid "multiple `virtual' specifiers"
+#: cp/parser.c:609
+#, fuzzy
+msgid "invalid token"
+msgstr "ìç Ýãêõñï äéêáßùìá"
+
+#: cp/parser.c:1806
+#, fuzzy
+msgid "`%D::%D' has not been declared"
+msgstr "Äåí ìðïñåß íá ôåèåß ç çìåñïìçíßá."
+
+#: cp/parser.c:1809 cp/semantics.c:2284
+#, fuzzy
+msgid "`::%D' has not been declared"
+msgstr "Äåí ìðïñåß íá ôåèåß ç çìåñïìçíßá."
+
+#: cp/parser.c:1811
+#, fuzzy
+msgid "`%D' has not been declared"
+msgstr "Äåí ìðïñåß íá ôåèåß ç çìåñïìçíßá."
+
+#: cp/parser.c:1814
+msgid "`%D::%D' %s"
msgstr ""
-#: parse.y:2644
-msgid "missing ';' before right brace"
+#: cp/parser.c:1816
+msgid "`::%D' %s"
msgstr ""
-#: parse.y:2865
-msgid "ISO C++ forbids array dimensions with parenthesized type in new"
+# src/request.c:37
+#: cp/parser.c:1818
+#, fuzzy
+msgid "`%D' %s"
+msgstr "%s: %s"
+
+#: cp/parser.c:1870
+msgid "new types may not be defined in a return type"
msgstr ""
-#: parse.y:3152 parse.y:3172 parse.y:3181 parse.y:3210
+#: cp/parser.c:1888 cp/pt.c:4185
#, fuzzy
-msgid "`%T' is not a class or namespace"
+msgid "`%T' is not a template"
+msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+
+#: cp/parser.c:1890
+#, fuzzy, c-format
+msgid "`%s' is not a template"
msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-#: parse.y:3377
-msgid "ISO C++ forbids label declarations"
+#: cp/parser.c:1892
+#, fuzzy
+msgid "invalid template-id"
+msgstr "Ìç Ýãêõñç çìåñïìçíßá `%s'."
+
+#: cp/parser.c:1927
+#, fuzzy, c-format
+msgid "%s cannot appear in a constant-expression"
+msgstr "%s: ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç: %s"
+
+#. Issue an error message.
+#: cp/parser.c:1954
+#, fuzzy, c-format
+msgid "`%s' does not name a type"
+msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+
+#: cp/parser.c:1985
+msgid "(perhaps `typename %T::%s' was intended)"
msgstr ""
-#: parse.y:3537
-msgid "ISO C++ forbids computed gotos"
+#: cp/parser.c:2407
+msgid "ISO C++ forbids braced-groups within expressions"
+msgstr ""
+
+#: cp/parser.c:2416
+msgid "statement-expressions are allowed only inside functions"
msgstr ""
-#: parse.y:3545
-msgid "label must be followed by statement"
+#: cp/parser.c:2467
+msgid "`this' may not be used in this context"
msgstr ""
-#: parse.y:3590
-msgid "must have at least one catch per try block"
+#: cp/parser.c:2617
+msgid "local variable `%D' may not appear in this context"
msgstr ""
-#: parse.y:3650
-msgid "ISO C++ forbids compound statements inside for initializations"
+#: cp/parser.c:2982
+msgid "typedef-name `%D' used as destructor declarator"
msgstr ""
-#. This helps us recover from really nasty
-#. parse errors, for example, a missing right
-#. parenthesis.
-#: parse.y:3737 parse.y:3747
-msgid "possibly missing ')'"
+#: cp/parser.c:3627
+msgid "ISO C++ forbids compound-literals"
msgstr ""
-#: parse.y:3840
-msgid "type specifier omitted for parameter"
+#: cp/parser.c:4599
+msgid "expression in new-declarator must have integral or enumeration type"
msgstr ""
-#: parse.y:3849
+#: cp/parser.c:4775
+#, fuzzy
+msgid "use of old-style cast"
+msgstr "ðáëáéïý åßäïõò èÝóç"
+
+#: cp/parser.c:5528
#, c-format
-msgid "`%E' is not a type, use `typename %E' to make it one"
+msgid "case label `%E' not within a switch statement"
+msgstr ""
+
+#: cp/parser.c:6070
+msgid "ISO C++ forbids computed gotos"
+msgstr ""
+
+#: cp/parser.c:6190
+msgid "extra `;'"
+msgstr ""
+
+#: cp/parser.c:6485
+msgid "mixing declarations and function-definitions is forbidden"
+msgstr ""
+
+#: cp/parser.c:6623
+#, fuzzy
+msgid "duplicate `friend'"
+msgstr "äéðëü êëåéäß"
+
+#: cp/parser.c:6772
+msgid "class definition may not be declared a friend"
+msgstr ""
+
+#: cp/parser.c:7086
+msgid "only constructors take base initializers"
+msgstr ""
+
+#: cp/parser.c:7137
+msgid "anachronistic old-style base class initializer"
+msgstr ""
+
+#. Warn that we do not support `export'.
+#: cp/parser.c:7530
+msgid "keyword `export' not implemented, and will be ignored"
msgstr ""
-#: parse.y:3851
+#. Otherwise, emit an error about the invalid digraph, but continue
+#. parsing because we got our argument list.
+#: cp/parser.c:7890
#, fuzzy
-msgid "no type `%D' in `%T'"
+msgid "`<::' cannot begin a template-argument list"
+msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
+
+#: cp/parser.c:7891
+msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'"
+msgstr ""
+
+#: cp/parser.c:7898
+msgid "(if you use `-fpermissive' G++ will accept your code)"
+msgstr ""
+
+#. Explain what went wrong.
+#: cp/parser.c:8070
+msgid "non-template `%D' used as template"
+msgstr ""
+
+#: cp/parser.c:8071
+msgid "(use `%T::template %D' to indicate that it is a template)"
+msgstr ""
+
+#: cp/parser.c:9000
+msgid "using `typename' outside of template"
+msgstr ""
+
+#: cp/parser.c:9122
+#, fuzzy
+msgid "expected type-name"
+msgstr "%s: áíáìåíüôáí áñéèìçôéêÞ ôéìÞ."
+
+#: cp/parser.c:9181
+msgid "type attributes are honored only at type definition"
+msgstr ""
+
+#. [namespace.udecl]
+#.
+#. A using declaration shall not name a template-id.
+#: cp/parser.c:9565
+msgid "a template-id may not appear in a using-declaration"
+msgstr ""
+
+#: cp/parser.c:9891
+msgid "an asm-specification is not allowed on a function-definition"
+msgstr ""
+
+#: cp/parser.c:9893
+msgid "attributes are not allowed on a function-definition"
+msgstr ""
+
+#: cp/parser.c:10026
+msgid "attributes after parenthesized initializer ignored"
+msgstr ""
+
+# src/grep.c:785 src/grep.c:792
+# src/grep.c:1060 src/grep.c:1067 src/grep.c:1076
+#: cp/parser.c:11223
+#, fuzzy
+msgid "file ends in default argument"
+msgstr "ìç Ýãêõñï üñéóìá ìÞêïõò ðåñéå÷ïìÝíïõ"
+
+#: cp/parser.c:11279
+msgid "deprecated use of default argument for parameter of non-function"
+msgstr ""
+
+#: cp/parser.c:11282
+msgid "default arguments are only permitted for function parameters"
+msgstr ""
+
+#: cp/parser.c:12007
+msgid "declaration of `%D' in `%D' which does not enclose `%D'"
+msgstr ""
+
+#: cp/parser.c:12020
+msgid "extra qualification ignored"
+msgstr ""
+
+#: cp/parser.c:12031
+msgid "an explicit specialization must be preceded by 'template <>'"
+msgstr ""
+
+#: cp/parser.c:12311
+msgid "extra semicolon"
+msgstr ""
+
+#: cp/parser.c:12329
+msgid "a class-key must be used when declaring a friend"
+msgstr ""
+
+#: cp/parser.c:12360
+#, fuzzy
+msgid "friend declaration does not name a class or function"
+msgstr "óõíôáêôéêü óöÜëìá óôïí ïñéóìü êëÜóçò ÷áñáêôÞñùí"
+
+#: cp/parser.c:12531
+msgid "pure-specifier on function-definition"
+msgstr ""
+
+#: cp/parser.c:12804
+msgid "keyword `typename' not allowed outside of templates"
+msgstr ""
+
+#: cp/parser.c:12806
+msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)"
+msgstr ""
+
+# src/getopt.c:628
+# src/getopt.c:628
+#: cp/parser.c:13624
+#, fuzzy
+msgid "reference to `%D' is ambiguous"
+msgstr "%s: ç åðéëïãÞ `%s' åßíáé áóáöÞò\n"
+
+#: cp/parser.c:13798
+#, fuzzy
+msgid "too few template-parameter-lists"
+msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
+
+#. Otherwise, there are too many template parameter lists. We have
+#. something like:
+#.
+#. template <class T> template <class U> void S::f();
+#: cp/parser.c:13813
+msgid "too many template-parameter-lists"
+msgstr ""
+
+#. If begin_function_definition didn't like the definition, skip
+#. the entire function.
+#: cp/parser.c:14090
+#, fuzzy
+msgid "invalid function declaration"
+msgstr "Ìç Ýãêõñç áíôáëëáãÞ"
+
+#. Issue an error message.
+#: cp/parser.c:14127
+#, fuzzy
+msgid "named return values are no longer supported"
+msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
+
+#: cp/parser.c:14455
+msgid "`>>' should be `> >' within a nested template argument list"
+msgstr ""
+
+#. If this is not a nested template argument list, the '>>' is
+#. a typo for '>'. Emit an error message and continue.
+#: cp/parser.c:14463
+msgid "spurious `>>', use `>' to terminate a template argument list"
+msgstr ""
+
+#: cp/parser.c:14950
+#, fuzzy
+msgid "`%s' tag used in naming `%#T'"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: parse.y:3854
-#, c-format
-msgid "type specifier omitted for parameter `%E'"
+#: cp/parser.c:14970
+msgid "%D redeclared with different access"
msgstr ""
-#: parse.y:3862
-msgid "'%D' is used as a type, but is not defined as a type."
+#: cp/parser.c:14987
+msgid "`template' (as a disambiguator) is only allowed within templates"
msgstr ""
-#: cp/pt.c:284
+#: cp/pt.c:243
msgid "data member `%D' cannot be a member template"
msgstr ""
-#: cp/pt.c:296
+#: cp/pt.c:255
#, fuzzy
msgid "invalid member template declaration `%D'"
msgstr "ìç Ýãêõñïò áñéèìüò áðü êåíÝò ãñáììÝò: `%s'"
-#: cp/pt.c:691
+#: cp/pt.c:637
msgid "explicit specialization in non-namespace scope `%D'"
msgstr ""
-#: cp/pt.c:703
+#: cp/pt.c:649
msgid "enclosing class templates are not explicitly specialized"
msgstr ""
-#: cp/pt.c:792 cp/pt.c:833
+#: cp/pt.c:739 cp/pt.c:780
msgid "specializing `%#T' in different namespace"
msgstr ""
-#: cp/pt.c:793 cp/pt.c:834
+#: cp/pt.c:740 cp/pt.c:781
#, fuzzy
msgid " from definition of `%#D'"
msgstr "êáíÝíáò ïñéóìüò ôïõ `UNDEFINED'"
-#: cp/pt.c:801
+#: cp/pt.c:748
msgid "specialization of `%T' after instantiation"
msgstr ""
-#: cp/pt.c:848
+#: cp/pt.c:795
#, fuzzy
msgid "specialization `%T' after instantiation `%T'"
msgstr "äéðëüò ïñéóìüò óõíüëïõ"
-#: cp/pt.c:860
+#: cp/pt.c:807
msgid "explicit specialization of non-template `%T'"
msgstr ""
-#: cp/pt.c:992
+#: cp/pt.c:1067
msgid "specialization of %D after instantiation"
msgstr ""
-#: cp/pt.c:1096
+#: cp/pt.c:1192
msgid "%s %+#D"
msgstr ""
-#: cp/pt.c:1147
+#: cp/pt.c:1241
msgid "`%D' is not a function template"
msgstr ""
-#: cp/pt.c:1286
+#: cp/pt.c:1380
msgid "template-id `%D' for `%+D' does not match any template declaration"
msgstr ""
-#: cp/pt.c:1294
+#: cp/pt.c:1388
msgid "ambiguous template specialization `%D' for `%+D'"
msgstr ""
#. This case handles bogus declarations like template <>
#. template <class T> void f<int>();
-#: cp/pt.c:1521 cp/pt.c:1595
+#: cp/pt.c:1611 cp/pt.c:1685
msgid "template-id `%D' in declaration of primary template"
msgstr ""
-#: cp/pt.c:1534
+#: cp/pt.c:1624
msgid "template parameter list used in explicit instantiation"
msgstr ""
-#: cp/pt.c:1540
+#: cp/pt.c:1630
msgid "definition provided for explicit instantiation"
msgstr ""
-#: cp/pt.c:1546
+#: cp/pt.c:1636
msgid "too many template parameter lists in declaration of `%D'"
msgstr ""
-#: cp/pt.c:1562
+#: cp/pt.c:1652
msgid "too few template parameter lists in declaration of `%D'"
msgstr ""
-#: cp/pt.c:1579
+#: cp/pt.c:1669
msgid "explicit specialization not preceded by `template <>'"
msgstr ""
-#: cp/pt.c:1592
+#: cp/pt.c:1682
msgid "partial specialization `%D' of function template"
msgstr ""
-#: cp/pt.c:1624
+#: cp/pt.c:1714
msgid "default argument specified in explicit specialization"
msgstr ""
-#: cp/pt.c:1628
+#: cp/pt.c:1718
msgid "template specialization with C linkage"
msgstr ""
@@ -17037,104 +16442,111 @@ msgstr ""
#. program is ill-formed.
#.
#. Similar language is found in [temp.explicit].
-#: cp/pt.c:1715
+#: cp/pt.c:1802
msgid "specialization of implicitly-declared special member function"
msgstr ""
-#: cp/pt.c:1759
+#: cp/pt.c:1846
msgid "no member function `%D' declared in `%T'"
msgstr ""
#. There are two many template parameter lists.
-#: cp/pt.c:1909
+#: cp/pt.c:2001
msgid "too many template parameter lists in declaration of `%T'"
msgstr ""
-#: cp/pt.c:2005
+#: cp/pt.c:2094
msgid " shadows template parm `%#D'"
msgstr ""
-#: cp/pt.c:2409
+#: cp/pt.c:2491
msgid "template parameters not used in partial specialization:"
msgstr ""
-#: cp/pt.c:2413
+#: cp/pt.c:2495
msgid " `%D'"
msgstr " `%D'"
-#: cp/pt.c:2425
+#: cp/pt.c:2507
msgid "partial specialization `%T' does not specialize any template arguments"
msgstr ""
-#: cp/pt.c:2450
+#: cp/pt.c:2532
#, c-format
msgid "template argument `%E' involves template parameter(s)"
msgstr ""
-#: cp/pt.c:2494
+#: cp/pt.c:2576
msgid "type `%T' of template argument `%E' depends on template parameter(s)"
msgstr ""
-#: cp/pt.c:2582
+#: cp/pt.c:2661
#, fuzzy
msgid "no default argument for `%D'"
msgstr "Ç ðáñÜìåôñïò `%s' äåí åßíáé Ýãêõñç."
-#: cp/pt.c:2735
+#: cp/pt.c:2810
msgid "template with C linkage"
msgstr ""
-#: cp/pt.c:2738
+#: cp/pt.c:2813
#, fuzzy
msgid "template class without a name"
msgstr "ìç ôåñìáôéæüìåíï üíïìá âÜñïõò"
-#: cp/pt.c:2815
+#. [temp.mem]
+#.
+#. A destructor shall not be a member template.
+#: cp/pt.c:2820
+msgid "destructor `%D' declared as member template"
+msgstr ""
+
+#: cp/pt.c:2900
msgid "`%D' does not declare a template type"
msgstr ""
-#: cp/pt.c:2821
+#: cp/pt.c:2906
#, fuzzy
msgid "template definition of non-template `%#D'"
msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïñéóìïý locale `%s'"
-#: cp/pt.c:2862
+#: cp/pt.c:2947
msgid "expected %d levels of template parms for `%#D', got %d"
msgstr ""
-#: cp/pt.c:2874
+#: cp/pt.c:2959
msgid "got %d template parameters for `%#D'"
msgstr ""
-#: cp/pt.c:2877
+#: cp/pt.c:2962
msgid "got %d template parameters for `%#T'"
msgstr ""
-#: cp/pt.c:2879
+#: cp/pt.c:2964
#, c-format
msgid " but %d required"
msgstr " áëëÜ %d áðáéôïýíôáé"
-#: cp/pt.c:2962
+#: cp/pt.c:3042
#, fuzzy
msgid "`%T' is not a template type"
msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-#: cp/pt.c:2978
+#: cp/pt.c:3058
msgid "previous declaration `%D'"
msgstr ""
-#: cp/pt.c:2979
+#: cp/pt.c:3059
#, c-format
msgid "used %d template parameter%s instead of %d"
msgstr ""
-#: cp/pt.c:2995
+#: cp/pt.c:3075
#, fuzzy
msgid "template parameter `%#D'"
msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
-#: cp/pt.c:2996
+#: cp/pt.c:3076
msgid "redeclared here as `%#D'"
msgstr ""
@@ -17142,749 +16554,768 @@ msgstr ""
#.
#. A template-parameter may not be given default arguments
#. by two different declarations in the same scope.
-#: cp/pt.c:3006
+#: cp/pt.c:3086
msgid "redefinition of default argument for `%#D'"
msgstr ""
-#: cp/pt.c:3007
-msgid " original definition appeared here"
+#: cp/pt.c:3087
+msgid "%J original definition appeared here"
msgstr ""
-#: cp/pt.c:3100
+#: cp/pt.c:3235
#, fuzzy, c-format
msgid "`%E' is not a valid template argument"
msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-#: cp/pt.c:3104
+#: cp/pt.c:3239
msgid "it must be the address of a function with external linkage"
msgstr ""
-#: cp/pt.c:3106
+#: cp/pt.c:3241
msgid "it must be the address of an object with external linkage"
msgstr ""
-#: cp/pt.c:3110
+#: cp/pt.c:3244
msgid "it must be a pointer-to-member of the form `&X::Y'"
msgstr ""
-#: cp/pt.c:3121
+#: cp/pt.c:3255
#, c-format
msgid "string literal %E is not a valid template argument because it is the address of an object with static linkage"
msgstr ""
-#: cp/pt.c:3133
+#: cp/pt.c:3270
#, c-format
msgid "address of non-extern `%E' cannot be used as template argument"
msgstr ""
-#: cp/pt.c:3144
+#: cp/pt.c:3279
#, c-format
msgid "non-constant `%E' cannot be used as template argument"
msgstr ""
-#: cp/pt.c:3151
-#, c-format
-msgid "object `%E' cannot be used as template argument"
+#: cp/pt.c:3287
+msgid "type '%T' cannot be used as a value for a non-type template-parameter"
msgstr ""
-#: cp/pt.c:3526
+# src/grep.c:785 src/grep.c:792
+# src/grep.c:1060 src/grep.c:1067 src/grep.c:1076
+#: cp/pt.c:3290
+#, fuzzy
+msgid "invalid use of '%D' as a non-type template-argument"
+msgstr "ìç Ýãêõñï üñéóìá ìÞêïõò ðåñéå÷ïìÝíïõ"
+
+# src/grep.c:785 src/grep.c:792
+# src/grep.c:1060 src/grep.c:1067 src/grep.c:1076
+#: cp/pt.c:3292
+#, fuzzy, c-format
+msgid "invalid use of '%E' as a non-type template-argument"
+msgstr "ìç Ýãêõñï üñéóìá ìÞêïõò ðåñéå÷ïìÝíïõ"
+
+#: cp/pt.c:3657
#, c-format
msgid "to refer to a type member of a template parameter, use `typename %E'"
msgstr ""
-#: cp/pt.c:3539 cp/pt.c:3555 cp/pt.c:3594
+#: cp/pt.c:3670 cp/pt.c:3688 cp/pt.c:3727
msgid "type/value mismatch at argument %d in template parameter list for `%D'"
msgstr ""
-#: cp/pt.c:3542
+#: cp/pt.c:3673
msgid " expected a constant of type `%T', got `%T'"
msgstr ""
-#: cp/pt.c:3546
+#: cp/pt.c:3677
+#, fuzzy, c-format
+msgid " expected a class template, got `%E'"
+msgstr "%s: áíáìåíüôáí áêÝñáéïò ìåôÜ ôï `%c'"
+
+#: cp/pt.c:3679
#, fuzzy, c-format
msgid " expected a type, got `%E'"
msgstr "%s: áíáìåíüôáí áêÝñáéïò ìåôÜ ôï `%c'"
-#: cp/pt.c:3558
+#: cp/pt.c:3691
#, fuzzy
msgid " expected a type, got `%T'"
msgstr "%s: áíáìåíüôáí áêÝñáéïò ìåôÜ ôï `%c'"
-#: cp/pt.c:3560
+#: cp/pt.c:3693
msgid " expected a class template, got `%T'"
msgstr ""
-#: cp/pt.c:3596
+#: cp/pt.c:3729
msgid " expected a template of type `%D', got `%D'"
msgstr ""
-#: cp/pt.c:3618
-msgid "template-argument `%T' uses anonymous type"
-msgstr ""
-
-#: cp/pt.c:3621
-msgid "template-argument `%T' uses local type `%T'"
-msgstr ""
-
-#: cp/pt.c:3631
-#, fuzzy
-msgid "template-argument `%T' is a variably modified type"
-msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-
-#: cp/pt.c:3666
+#: cp/pt.c:3764
msgid "could not convert template argument `%E' to `%T'"
msgstr ""
-#: cp/pt.c:3710
+#: cp/pt.c:3804
#, fuzzy, c-format
msgid "wrong number of template arguments (%d, should be %d)"
msgstr "ëÜèïò áñéèìüò ïñéóìÜôùí"
-#: cp/pt.c:3714
+#: cp/pt.c:3808
msgid "provided for `%D'"
msgstr ""
-#: cp/pt.c:3761
+#: cp/pt.c:3836
#, fuzzy, c-format
msgid "template argument %d is invalid"
msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-#: cp/pt.c:3997
+#: cp/pt.c:4057
msgid "non-template used as template"
msgstr ""
-#: cp/pt.c:4139
-#, fuzzy
-msgid "`%T' is not a template"
-msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
-
-#: cp/pt.c:4152
+#: cp/pt.c:4197
msgid "non-template type `%T' used as a template"
msgstr ""
-#: cp/pt.c:4154
+#: cp/pt.c:4199
msgid "for template declaration `%D'"
msgstr ""
-#: cp/pt.c:4770
+#: cp/pt.c:4846
msgid "template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN to increase the maximum) instantiating `%D'"
msgstr ""
-#: cp/pt.c:5247
+#: cp/pt.c:5286
msgid "ambiguous class template instantiation for `%#T'"
msgstr ""
-#: cp/pt.c:5254
+#: cp/pt.c:5292
msgid "%s %+#T"
msgstr ""
-#: cp/pt.c:6284 cp/pt.c:6396
+#: cp/pt.c:6291 cp/pt.c:6411
msgid "instantiation of `%D' as type `%T'"
msgstr ""
-#: cp/pt.c:6440
+#: cp/pt.c:6453
#, fuzzy
msgid "invalid parameter type `%T'"
msgstr "Ìç Ýãêõñç ðñïôåñáéüôçôá `%s'"
-#: cp/pt.c:6442
+#: cp/pt.c:6455
msgid "in declaration `%D'"
msgstr ""
-#: cp/pt.c:6517
+#: cp/pt.c:6529
msgid "creating pointer to member function of non-class type `%T'"
msgstr ""
-#: cp/pt.c:6680
+#: cp/pt.c:6668
msgid "creating array with size zero"
msgstr ""
-#: cp/pt.c:6694
+#: cp/pt.c:6682
#, c-format
msgid "creating array with size zero (`%E')"
msgstr ""
-#: cp/pt.c:6933
+#: cp/pt.c:6921
msgid "forming reference to void"
msgstr ""
-#: cp/pt.c:6935
+#: cp/pt.c:6923
msgid "forming %s to reference type `%T'"
msgstr ""
-#: cp/pt.c:6973
+#: cp/pt.c:6960
msgid "creating pointer to member of non-class type `%T'"
msgstr ""
-#: cp/pt.c:6979
+#: cp/pt.c:6966
#, fuzzy
msgid "creating pointer to member reference type `%T'"
msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'"
-#: cp/pt.c:7057
+#: cp/pt.c:7052
#, fuzzy
msgid "creating array of `%T'"
msgstr "äçìéïõñãßá áñ÷åßïõ `%s'\n"
-#: cp/pt.c:7100
+#: cp/pt.c:7058
+msgid "creating array of `%T', which is an abstract class type"
+msgstr ""
+
+#: cp/pt.c:7102
msgid "`%T' is not a class, struct, or union type"
msgstr ""
-#: cp/pt.c:7213
+#: cp/pt.c:7215
#, c-format
msgid "use of `%s' in template"
msgstr ""
-#: cp/pt.c:7975
-msgid "type `%T' composed from a local class is not a valid template-argument"
+#: cp/pt.c:7327
+#, c-format
+msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type"
+msgstr ""
+
+#: cp/pt.c:7329
+#, c-format
+msgid "say `typename %E' if a type is meant"
+msgstr ""
+
+#: cp/pt.c:8586
+msgid "`%T' uses anonymous type"
msgstr ""
-#: cp/pt.c:7976
+#: cp/pt.c:8588
+#, fuzzy
+msgid "`%T' uses local type `%T'"
+msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
+
+#: cp/pt.c:8596
+#, fuzzy
+msgid "`%T' is a variably modified type"
+msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+
+#: cp/pt.c:8607
+#, fuzzy, c-format
+msgid "integral expression `%E' is not constant"
+msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò"
+
+#: cp/pt.c:8612
msgid " trying to instantiate `%D'"
msgstr ""
-#: cp/pt.c:8421
+#: cp/pt.c:9125
#, fuzzy
msgid "incomplete type unification"
msgstr "Ìåôáãëùôôéóìüò ðñïäéáãñáöþí ôïðéêþí ñõèìßóåùí"
-#: cp/pt.c:9387
+#: cp/pt.c:10072
#, c-format
msgid "use of `%s' in template type unification"
msgstr ""
-#: cp/pt.c:9821 cp/pt.c:9893
+#: cp/pt.c:10506 cp/pt.c:10578
msgid "explicit instantiation of non-template `%#D'"
msgstr ""
-#: cp/pt.c:9837 cp/pt.c:9888
+#: cp/pt.c:10522 cp/pt.c:10573
#, fuzzy
msgid "no matching template for `%D' found"
msgstr "Ï Ýëåã÷ïò ìïíïðáôéïý ãéá ôï `%s' âñÞêå `%s'"
-#: cp/pt.c:9843
+#: cp/pt.c:10528
msgid "explicit instantiation of `%#D'"
msgstr ""
-#: cp/pt.c:9880
+#: cp/pt.c:10565
#, fuzzy
msgid "duplicate explicit instantiation of `%#D'"
msgstr "äéðëüò ïñéóìüò óõíüëïõ"
-#: cp/pt.c:9905
+#: cp/pt.c:10587
msgid "ISO C++ forbids the use of `extern' on explicit instantiations"
msgstr ""
-#: cp/pt.c:9909 cp/pt.c:9999
+#: cp/pt.c:10591 cp/pt.c:10672
msgid "storage class `%D' applied to template instantiation"
msgstr ""
-#: cp/pt.c:9966
+#: cp/pt.c:10644
msgid "explicit instantiation of non-template type `%T'"
msgstr ""
-#: cp/pt.c:9980
+#: cp/pt.c:10653
msgid "explicit instantiation of `%#T' before definition of template"
msgstr ""
-#: cp/pt.c:9988
+#: cp/pt.c:10661
#, c-format
msgid "ISO C++ forbids the use of `%s' on explicit instantiations"
msgstr ""
-#: cp/pt.c:10032
+#: cp/pt.c:10705
#, fuzzy
msgid "duplicate explicit instantiation of `%#T'"
msgstr "äéðëüò ïñéóìüò óõíüëïõ"
-#: cp/pt.c:10412
+#: cp/pt.c:11086
msgid "explicit instantiation of `%D' but no definition available"
msgstr ""
-#: cp/pt.c:10815
+#: cp/pt.c:11520
#, fuzzy
msgid "`%#T' is not a valid type for a template constant parameter"
msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-#: cp/repo.c:271
+#: cp/repo.c:259
msgid "-frepo must be used with -c"
msgstr ""
-#: cp/repo.c:361
+#: cp/repo.c:346
#, c-format
msgid "mysterious repository information in %s"
msgstr ""
-#: cp/repo.c:376
+#: cp/repo.c:361
#, fuzzy, c-format
msgid "can't create repository information file `%s'"
msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïñéóìïý locale `%s'"
-#: cp/rtti.c:240
+#: cp/rtti.c:248
#, fuzzy
msgid "cannot use typeid with -fno-rtti"
msgstr "Äåí åßíáé äõíáôü íá ÷ñçóéìïðïéçèåß ç åðéëïãÞ -a ÷ùñßò ôï -n"
-#: cp/rtti.c:246
+#: cp/rtti.c:254
msgid "must #include <typeinfo> before using typeid"
msgstr ""
-#: cp/rtti.c:320
+#: cp/rtti.c:326
msgid "cannot create type information for type `%T' because its size is variable"
msgstr ""
-#: cp/rtti.c:584 cp/rtti.c:598
+#: cp/rtti.c:580 cp/rtti.c:594
msgid "dynamic_cast of `%#D' to `%#T' can never succeed"
msgstr ""
-#: cp/rtti.c:674
+#: cp/rtti.c:675
msgid "cannot dynamic_cast `%E' (of type `%#T') to type `%#T' (%s)"
msgstr ""
-#: cp/search.c:332
+#: cp/search.c:306
#, fuzzy
msgid "`%T' is an ambiguous base of `%T'"
msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#: cp/search.c:350
+#: cp/search.c:324
#, fuzzy
msgid "`%T' is an inaccessible base of `%T'"
msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#. At parse time, we don't want to give this error, since
-#. we won't have enough state to make this kind of
-#. decision properly. But there are times (e.g., with
-#. enums in nested classes) when we do need to call
-#. this fn at parse time. So, in those cases, we pass
-#. complain as a 0 and just return a NULL_TREE.
-#: cp/search.c:1638
-msgid "assignment to non-static member `%D' of enclosing class `%T'"
-msgstr ""
-
-#: cp/search.c:2050
-msgid "adjusting pointers for covariant returns"
-msgstr ""
-
-#: cp/search.c:2054 cp/search.c:2061
+#: cp/search.c:1756
#, fuzzy
msgid "invalid covariant return type for `%#D'"
msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò `%c' óôï ôýðï áëöáñéèìçôéêïý `%s'"
-#: cp/search.c:2055
-msgid " overriding `%#D' (must be pointer or reference to class)"
-msgstr ""
-
-#: cp/search.c:2062
-msgid " overriding `%#D' (must use pointer or reference)"
-msgstr ""
-
-#: cp/search.c:2067
-msgid "conflicting return type specified for `%#D'"
-msgstr ""
-
-#: cp/search.c:2068
+#: cp/search.c:1757 cp/search.c:1763
#, fuzzy
msgid " overriding `%#D'"
msgstr "áíôéãñÜöåôáé áðü ðÜíù"
-#: cp/search.c:2077
+#: cp/search.c:1761
+msgid "conflicting return type specified for `%#D'"
+msgstr ""
+
+#: cp/search.c:1775
#, c-format
msgid "looser throw specifier for `%#F'"
msgstr ""
-#: cp/search.c:2078
+#: cp/search.c:1776
#, fuzzy, c-format
msgid " overriding `%#F'"
msgstr "áíôéãñÜöåôáé áðü ðÜíù"
#. A static member function cannot match an inherited
#. virtual member function.
-#: cp/search.c:2167
+#: cp/search.c:1866
#, fuzzy
msgid "`%#D' cannot be declared"
msgstr "Äåí ìðïñåß íá ôåèåß ç çìåñïìçíßá."
-#: cp/search.c:2168
+#: cp/search.c:1867
msgid " since `%#D' declared in base class"
msgstr ""
-#: cp/search.c:2309
+#: cp/search.c:1944
msgid "`%#D' needs a final overrider"
msgstr ""
-#: cp/semantics.c:919
+#: cp/semantics.c:1092
#, c-format
msgid "type of asm operand `%E' could not be determined"
msgstr ""
-#: cp/semantics.c:1051
-msgid "ISO C++ does not permit named return values"
+#: cp/semantics.c:1233
+msgid "invalid use of member `%D' in static member function"
msgstr ""
-#: cp/semantics.c:1060
-msgid "return identifier `%D' already in place"
+#: cp/semantics.c:1237 cp/semantics.c:1276
+msgid "from this location"
msgstr ""
-#: cp/semantics.c:1068
-msgid "can't redefine default return value for constructors"
+#: cp/semantics.c:1275
+msgid "object missing in reference to `%D'"
msgstr ""
-#: cp/semantics.c:1100
-msgid "only constructors take base initializers"
-msgstr ""
+#: cp/semantics.c:1721
+#, fuzzy
+msgid "arguments to destructor are not allowed"
+msgstr "%s: ïé ôéìÝò ôïõ ðåäßïõ `%s' äåí ðñÝðåé íá åßíáé ìåãáëýôåñåò áðü %d"
-#: cp/semantics.c:1343
+#: cp/semantics.c:1769
msgid "`this' is unavailable for static member functions"
msgstr ""
-#: cp/semantics.c:1349
+#: cp/semantics.c:1775
msgid "invalid use of `this' in non-member function"
msgstr ""
-#: cp/semantics.c:1351
+#: cp/semantics.c:1777
msgid "invalid use of `this' at top level"
msgstr ""
-#: cp/semantics.c:1381
-msgid "calling type `%T' like a method"
-msgstr ""
-
-#: cp/semantics.c:1419
-msgid "destructor specifier `%T::~%T()' must have matching names"
+#: cp/semantics.c:1801
+msgid "invalid qualifying scope in pseudo-destructor name"
msgstr ""
-#: cp/semantics.c:1425
+#: cp/semantics.c:1807
#, fuzzy
msgid "`%E' is not of type `%T'"
msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#: cp/semantics.c:1613
+#: cp/semantics.c:1918
msgid "template type parameters must use the keyword `class' or `typename'"
msgstr ""
-# src/grep.c:785 src/grep.c:792
-# src/grep.c:1060 src/grep.c:1067 src/grep.c:1076
-#: cp/semantics.c:1652
+#: cp/semantics.c:1962
#, fuzzy
-msgid "invalid default template argument"
-msgstr "ìç Ýãêõñï üñéóìá ìÞêïõò ðåñéå÷ïìÝíïõ"
+msgid "invalid use of type `%T' as a default value for a template template-parameter"
+msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-#: cp/semantics.c:1694
+#: cp/semantics.c:1965
+#, fuzzy
+msgid "invalid use of `%D' as a default value for a template template-parameter"
+msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
+
+#: cp/semantics.c:1969
+#, fuzzy
+msgid "invalid default argument for a template template parameter"
+msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
+
+#: cp/semantics.c:2004
msgid "definition of `%#T' inside template parameter list"
msgstr ""
-#: cp/semantics.c:1710
+#: cp/semantics.c:2015
#, fuzzy
msgid "invalid definition of qualified type `%T'"
msgstr "ìç Ýãêõñïò áñéèìüò áñ÷åßïõ óôç äÞëùóç ðåäßïõ: `%s'"
-#: cp/semantics.c:2053
+#: cp/semantics.c:2030
+#, fuzzy
+msgid "previous definition of `%#T'"
+msgstr "êáíÝíáò ïñéóìüò ôïõ `UNDEFINED'"
+
+#: cp/semantics.c:2225
#, fuzzy
msgid "invalid base-class specification"
msgstr "Ìç Ýãêõñç ñýèìéóç èýñáò (port)"
-#: cp/semantics.c:2062
+#: cp/semantics.c:2234
msgid "base class `%T' has cv qualifiers"
msgstr ""
-#: cp/semantics.c:2093
+#: cp/semantics.c:2266
msgid "multiple declarators in template declaration"
msgstr ""
-#: cp/semantics.c:2120
-#, fuzzy, c-format
-msgid "type of `%E' is unknown"
-msgstr "ç åðéóôñåöüìåíç ôéìÞ ôçò `%s' äåí åßíáé `int'"
-
-#: cp/spew.c:225
-#, c-format
-msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
+#: cp/semantics.c:2277
+msgid "incomplete type `%T' used in nested name specifier"
msgstr ""
-#: cp/spew.c:1002 cp/spew.c:1340
-msgid "parse error at end of saved function text"
-msgstr ""
+#: cp/semantics.c:2279 cp/typeck.c:1616
+#, fuzzy
+msgid "`%D' is not a member of `%T'"
+msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'"
+
+#: cp/semantics.c:2282
+#, fuzzy
+msgid "`%D' is not a member of `%D'"
+msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'"
-#: cp/spew.c:1090 cp/spew.c:1178
-msgid "%Hend of file read inside definition"
+#: cp/semantics.c:2400
+msgid "template parameter `%D' of type `%T' is not allowed in an integral constant expression because it is not of integral or enumeration type"
msgstr ""
-#: cp/spew.c:1121
+#: cp/semantics.c:2553
#, fuzzy
-msgid "parse error in method specification"
-msgstr "óõíôáêôéêü óöÜëìá óôïí êáèïñéóìü óåéñÜò"
+msgid "`%D' cannot appear in a constant-expression"
+msgstr "%s: ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç: %s"
-#: cp/spew.c:1161
-msgid "function body for constructor missing"
+#: cp/semantics.c:2562
+msgid "use of namespace `%D' as expression"
msgstr ""
-#: cp/spew.c:1262
-msgid "%Hend of file read inside default argument"
+#: cp/semantics.c:2567
+msgid "use of class template `%T' as expression"
msgstr ""
-#: cp/spew.c:1419
-msgid "circular dependency in default args of `%#D'"
+#. Ambiguous reference to base members.
+#: cp/semantics.c:2573
+msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
msgstr ""
-#: cp/spew.c:1483
-#, fuzzy
-msgid "invalid type `%T' for default argument to `%T'"
-msgstr "Ìç Ýãêõñç áêÝñáéá ðáñÜìåôñïò `%s'"
-
-#: cp/spew.c:1548
-#, c-format
-msgid "%s before `%s'"
-msgstr "%s ðñéí áðü `%s'"
-
-#: cp/spew.c:1550
+#: cp/semantics.c:2633
#, c-format
-msgid "%s before `%c'"
-msgstr "%s ðñéí áðü `%c'"
+msgid "use of %s from containing function"
+msgstr ""
-#: cp/spew.c:1552
-#, c-format
-msgid "%s before `\\%o'"
-msgstr "%s ðñéí áðü `\\%o'"
+#: cp/semantics.c:2636
+msgid " `%#D' declared here"
+msgstr ""
-#: cp/spew.c:1555
+#: cp/semantics.c:2687
#, fuzzy, c-format
-msgid "%s before `%s' token"
-msgstr "%s (ãéá êáíïíéêÞ Ýêöñáóç `%s')"
+msgid "type of `%E' is unknown"
+msgstr "ç åðéóôñåöüìåíç ôéìÞ ôçò `%s' äåí åßíáé `int'"
-#: cp/tree.c:263 cp/tree.c:275
+#: cp/tree.c:222
#, c-format
msgid "non-lvalue in %s"
msgstr ""
-#: cp/tree.c:562
+#: cp/tree.c:539
#, fuzzy
msgid "`%V' qualifiers cannot be applied to `%T'"
msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#: cp/tree.c:1941
+#: cp/tree.c:1830
#, c-format
msgid "`%s' attribute can only be applied to Java class definitions"
msgstr ""
-#: cp/tree.c:1971
+#: cp/tree.c:1859
#, c-format
msgid "`%s' attribute can only be applied to class definitions"
msgstr ""
-#: cp/tree.c:1977
+#: cp/tree.c:1865
#, c-format
msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default"
msgstr ""
-#: cp/tree.c:2002
+#: cp/tree.c:1889
msgid "requested init_priority is not an integer constant"
msgstr ""
-#: cp/tree.c:2023
+#: cp/tree.c:1910
#, c-format
msgid "can only use `%s' attribute on file-scope definitions of objects of class type"
msgstr ""
-#: cp/tree.c:2031
+#: cp/tree.c:1918
msgid "requested init_priority is out of range"
msgstr ""
-#: cp/tree.c:2041
+#: cp/tree.c:1928
msgid "requested init_priority is reserved for internal use"
msgstr ""
-#: cp/tree.c:2051
+#: cp/tree.c:1938
#, fuzzy, c-format
msgid "`%s' attribute is not supported on this platform"
msgstr "ðñïåéäïðïßçóç: ôï --pid=PID äåí õðïóôçñßæåôáé óå áõôü ôï óýóôçìá"
-#: cp/tree.c:2588
+#: cp/tree.c:2459
#, c-format
msgid "lang_* check: failed in %s, at %s:%d"
msgstr ""
-#: cp/typeck.c:524
-#, c-format
-msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
+#: cp/typeck.c:438 cp/typeck.c:453 cp/typeck.c:543
+msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
msgstr ""
-#: cp/typeck.c:545
-msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+#: cp/typeck.c:513
+#, c-format
+msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
msgstr ""
-#: cp/typeck.c:1436
-msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
+#: cp/typeck.c:563
+msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast"
msgstr ""
-#: cp/typeck.c:1514
+#: cp/typeck.c:1235
#, c-format
msgid "invalid application of `%s' to a member function"
msgstr ""
-#: cp/typeck.c:1520
+#: cp/typeck.c:1268
#, fuzzy, c-format
-msgid "invalid application of `%s' to non-static member"
-msgstr "ìç Ýãêõñç ìÝôñçóç åðáíÜëçøçò `%s' óôç êáôáóêåõÞ [c*n]"
+msgid "invalid application of `%s' to a bit-field"
+msgstr "Ç ðáñÜìåôñïò `%s' äåí åßíáé Ýãêõñç."
-#: cp/typeck.c:1538
-msgid "sizeof applied to a bit-field"
+#: cp/typeck.c:1273
+#, c-format
+msgid "ISO C++ forbids applying `%s' to an expression of function type"
msgstr ""
-#: cp/typeck.c:1541
-msgid "ISO C++ forbids applying `sizeof' to an expression of function type"
-msgstr ""
+#: cp/typeck.c:1342
+#, fuzzy
+msgid "invalid use of non-static member function"
+msgstr "ìç Ýãêõñïò áñéèìüò áðü óôÞëåò: `%s'"
-#: cp/typeck.c:1759
+#: cp/typeck.c:1476
msgid "deprecated conversion from string constant to `%T'"
msgstr ""
-#: cp/typeck.c:1890 cp/typeck.c:2122
+#: cp/typeck.c:1587 cp/typeck.c:1874
msgid "request for member `%D' in `%E', which is of non-class type `%T'"
msgstr ""
-#: cp/typeck.c:1916
-#, fuzzy
-msgid "`%D' is not a member of `%T'"
-msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'"
+#: cp/typeck.c:1614
+#, fuzzy, c-format
+msgid "invalid use of nonstatic data member '%E'"
+msgstr "ìç Ýãêõñïò áñéèìüò áðü óôÞëåò: `%s'"
-#: cp/typeck.c:1957 cp/typeck.c:1978
+#: cp/typeck.c:1666 cp/typeck.c:1688
#, fuzzy
msgid "invalid access to non-static data member `%D' of NULL object"
msgstr "ìç Ýãêõñïò áñéèìüò áðü óôÞëåò: `%s'"
-#: cp/typeck.c:1959 cp/typeck.c:1980
+#: cp/typeck.c:1668 cp/typeck.c:1690
msgid "(perhaps the `offsetof' macro was used incorrectly)"
msgstr ""
-#: cp/typeck.c:2168
+#: cp/typeck.c:1804
+msgid "the type being destroyed is '%T', but the destructor refers to `%T'"
+msgstr ""
+
+#: cp/typeck.c:1924
#, fuzzy
msgid "`%D::%D' is not a member of `%T'"
msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'"
-#: cp/typeck.c:2179
+#: cp/typeck.c:1935
#, fuzzy
msgid "`%T' is not a base of `%T'"
msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-#: cp/typeck.c:2199
-msgid "destructor specifier `%T::~%T' must have matching names"
-msgstr ""
-
-#: cp/typeck.c:2205
+#: cp/typeck.c:1954
#, fuzzy
-msgid "type `%T' has no destructor"
-msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
+msgid "'%D' has no member named '%E'"
+msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'"
-#: cp/typeck.c:2244
+#: cp/typeck.c:1969
#, fuzzy
msgid "`%D' is not a member template function"
msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
#. A pointer to incomplete type (other than cv void) can be
#. dereferenced [expr.unary.op]/1
-#: cp/typeck.c:2338
+#: cp/typeck.c:2075
#, fuzzy
msgid "`%T' is not a pointer-to-object type"
msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
-#: cp/typeck.c:2365
+#: cp/typeck.c:2100
#, c-format
msgid "invalid use of `%s' on pointer to member"
msgstr ""
-#: cp/typeck.c:2371
+#: cp/typeck.c:2106
#, fuzzy
msgid "invalid type argument"
msgstr "Ìç Ýãêõñç ðáñÜìåôñïò"
-#: cp/typeck.c:2474
+#: cp/typeck.c:2212
msgid "ISO C++ forbids subscripting non-lvalue array"
msgstr ""
-#: cp/typeck.c:2485
+#: cp/typeck.c:2223
msgid "subscripting array declared `register'"
msgstr ""
-#: cp/typeck.c:2570
+#: cp/typeck.c:2306
#, c-format
msgid "object missing in use of `%E'"
msgstr ""
-#: cp/typeck.c:2674
+#: cp/typeck.c:2408
msgid "ISO C++ forbids calling `::main' from within program"
msgstr ""
-#: cp/typeck.c:2699
+#: cp/typeck.c:2433
#, c-format
msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'"
msgstr ""
-#: cp/typeck.c:2712
+#: cp/typeck.c:2446
#, c-format
msgid "`%E' cannot be used as a function"
msgstr ""
-#: cp/typeck.c:2824
+#: cp/typeck.c:2539
#, fuzzy
msgid "too many arguments to %s `%+#D'"
msgstr "ðÜñá ðïëëÜ ïñßóìáôá"
-#: cp/typeck.c:2865
-msgid "parameter type of called function is incomplete"
+#: cp/typeck.c:2541 cp/typeck.c:2647
+msgid "at this point in file"
msgstr ""
-#: cp/typeck.c:2928
+#: cp/typeck.c:2578
+#, fuzzy
+msgid "parameter %P of `%D' has incomplete type `%T'"
+msgstr "ìç ðëÞñçò åããñáöÞ"
+
+#: cp/typeck.c:2581
+#, fuzzy
+msgid "parameter %P has incomplete type `%T'"
+msgstr "ìç ðëÞñçò åããñáöÞ"
+
+#: cp/typeck.c:2645
#, fuzzy
msgid "too few arguments to %s `%+#D'"
msgstr "ðïëý ëßãá ïñßóìáôá"
-#: cp/typeck.c:3056 cp/typeck.c:3066
+#: cp/typeck.c:2790 cp/typeck.c:2800
msgid "assuming cast to type `%T' from overloaded function"
msgstr ""
-#: cp/typeck.c:3126
+#: cp/typeck.c:2861
#, c-format
msgid "division by zero in `%E / 0'"
msgstr ""
-#: cp/typeck.c:3128
+#: cp/typeck.c:2863
#, c-format
msgid "division by zero in `%E / 0.'"
msgstr ""
-#: cp/typeck.c:3158
+#: cp/typeck.c:2892
#, fuzzy, c-format
msgid "division by zero in `%E %% 0'"
msgstr "Äéáßñåóç ìå ìçäÝí óôçí áðïôßìçóç: %s"
-#: cp/typeck.c:3160
+#: cp/typeck.c:2894
#, fuzzy, c-format
msgid "division by zero in `%E %% 0.'"
msgstr "Äéáßñåóç ìå ìçäÝí óôçí áðïôßìçóç: %s"
-#: cp/typeck.c:3240
+#: cp/typeck.c:2974
#, c-format
msgid "%s rotate count is negative"
msgstr ""
-#: cp/typeck.c:3243
+#: cp/typeck.c:2977
#, c-format
msgid "%s rotate count >= width of type"
msgstr ""
-#: cp/typeck.c:3274 cp/typeck.c:3279 cp/typeck.c:3370 cp/typeck.c:3375
+#: cp/typeck.c:3011 cp/typeck.c:3016 cp/typeck.c:3107 cp/typeck.c:3112
msgid "ISO C++ forbids comparison between pointer and integer"
msgstr ""
-#: cp/typeck.c:3553
+#: cp/typeck.c:3293
msgid "comparison between types `%#T' and `%#T'"
msgstr ""
-#: cp/typeck.c:3589
+#: cp/typeck.c:3329
msgid "comparison between signed and unsigned integer expressions"
msgstr ""
-#: cp/typeck.c:3654
+#: cp/typeck.c:3394
msgid "invalid operands of types `%T' and `%T' to binary `%O'"
msgstr ""
@@ -17892,772 +17323,598 @@ msgstr ""
#. performed. Note that pointer-difference and pointer-addition
#. have already been handled above, and so we don't end up here in
#. that case.
-#: cp/typeck.c:3676
+#: cp/typeck.c:3416
msgid "NULL used in arithmetic"
msgstr ""
-#: cp/typeck.c:3743
+#: cp/typeck.c:3479
msgid "ISO C++ forbids using pointer of type `void *' in subtraction"
msgstr ""
-#: cp/typeck.c:3745
+#: cp/typeck.c:3481
msgid "ISO C++ forbids using pointer to a function in subtraction"
msgstr ""
-#: cp/typeck.c:3747
+#: cp/typeck.c:3483
msgid "ISO C++ forbids using pointer to a method in subtraction"
msgstr ""
-#: cp/typeck.c:3749
-msgid "ISO C++ forbids using pointer to a member in subtraction"
-msgstr ""
-
-#: cp/typeck.c:3761
+#: cp/typeck.c:3495
msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
msgstr ""
-#: cp/typeck.c:3821
+#: cp/typeck.c:3550
#, c-format
msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id."
msgstr ""
-#: cp/typeck.c:3827
+#: cp/typeck.c:3556
#, c-format
msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function"
msgstr ""
-#: cp/typeck.c:3850
+#: cp/typeck.c:3578
msgid "taking address of temporary"
msgstr ""
-#: cp/typeck.c:4091
+#: cp/typeck.c:3813
#, c-format
msgid "ISO C++ forbids %sing an enum"
msgstr ""
-#: cp/typeck.c:4103
+#: cp/typeck.c:3824
msgid "cannot %s a pointer to incomplete type `%T'"
msgstr ""
-#: cp/typeck.c:4110
+#: cp/typeck.c:3830
msgid "ISO C++ forbids %sing a pointer of type `%T'"
msgstr ""
-#: cp/typeck.c:4135
+#: cp/typeck.c:3855
msgid "cast to non-reference type used as lvalue"
msgstr ""
-#: cp/typeck.c:4169
+#: cp/typeck.c:3889
#, fuzzy
msgid "invalid use of `--' on bool variable `%D'"
msgstr "ìç Ýãêõñïò áñéèìüò áðü êåíÝò ãñáììÝò: `%s'"
#. ARM $3.4
-#: cp/typeck.c:4202
+#: cp/typeck.c:3920
msgid "ISO C++ forbids taking address of function `::main'"
msgstr ""
#. An expression like &memfn.
-#: cp/typeck.c:4269
-msgid "ISO C++ forbids taking the address of an unqualified non-static member function to form a pointer to member function. Say `&%T::%D'"
+#: cp/typeck.c:3991
+msgid "ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function. Say `&%T::%D'"
msgstr ""
-#: cp/typeck.c:4271
+#: cp/typeck.c:3996
msgid "ISO C++ forbids taking the address of a bound member function to form a pointer to member function. Say `&%T::%D'"
msgstr ""
-#: cp/typeck.c:4295
+#: cp/typeck.c:4024
msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression"
msgstr ""
-#: cp/typeck.c:4324
+#: cp/typeck.c:4040
+msgid "unary `&'"
+msgstr ""
+
+#: cp/typeck.c:4069
msgid "attempt to take address of bit-field structure member `%D'"
msgstr ""
-#: cp/typeck.c:4444
+#: cp/typeck.c:4183
msgid "taking address of destructor"
msgstr ""
-#: cp/typeck.c:4457
+#: cp/typeck.c:4196
msgid "taking address of bound pointer-to-member expression"
msgstr ""
-#: cp/typeck.c:4473
+#: cp/typeck.c:4204
#, fuzzy
msgid "cannot create pointer to reference member `%D'"
msgstr "äåí åßíáé äõíáôüí íá ãßíåé `stat' ôï locale áñ÷åßï `%s'"
-#: cp/typeck.c:4536
+#: cp/typeck.c:4266
msgid "cannot take the address of `this', which is an rvalue expression"
msgstr ""
-#: cp/typeck.c:4555
+#: cp/typeck.c:4285
msgid "address requested for `%D', which is declared `register'"
msgstr ""
-#: cp/typeck.c:4682
-msgid "static_cast from type `%T' to type `%T' casts away constness"
+#: cp/typeck.c:4353
+#, fuzzy, c-format
+msgid "%s expression list treated as compound expression"
+msgstr "ËÜèïò Ýêöñáóç óôçí áðïôßìçóç: %s"
+
+#: cp/typeck.c:4426
+msgid "%s from type `%T' to type `%T' casts away constness"
msgstr ""
-#: cp/typeck.c:4871
+#: cp/typeck.c:4618
#, fuzzy
msgid "invalid static_cast from type `%T' to type `%T'"
msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò `%c' óôï ôýðï áëöáñéèìçôéêïý `%s'"
-#: cp/typeck.c:4910
+#: cp/typeck.c:4658
msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4930
+#: cp/typeck.c:4678
msgid "reinterpret_cast from `%T' to `%T' loses precision"
msgstr ""
-#: cp/typeck.c:4943
-msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
-msgstr ""
-
-#: cp/typeck.c:4952
+#: cp/typeck.c:4697
msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object"
msgstr ""
-#: cp/typeck.c:4958
+#: cp/typeck.c:4703
msgid "invalid reinterpret_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4985
+#: cp/typeck.c:4731
msgid "invalid use of const_cast with type `%T', which is not a pointer, reference, nor a pointer-to-data-member type"
msgstr ""
-#: cp/typeck.c:4988
+#: cp/typeck.c:4734
msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type"
msgstr ""
-#: cp/typeck.c:5011
+#: cp/typeck.c:4757
msgid "invalid const_cast of an rvalue of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:5027
+#: cp/typeck.c:4774
#, fuzzy
msgid "invalid const_cast from type `%T' to type `%T'"
msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò `%c' óôï ôýðï áëöáñéèìçôéêïý `%s'"
-#: cp/typeck.c:5069 cp/typeck.c:5074
+#: cp/typeck.c:4814 cp/typeck.c:4819
msgid "ISO C++ forbids casting to an array type `%T'"
msgstr ""
-#: cp/typeck.c:5082
+#: cp/typeck.c:4827
#, fuzzy
msgid "invalid cast to function type `%T'"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: cp/typeck.c:5138
+#: cp/typeck.c:4883
msgid "cast from `%T' to `%T' discards qualifiers from pointer target type"
msgstr ""
-#: cp/typeck.c:5184
+#: cp/typeck.c:4929
msgid "cast from `%T' to `%T' increases required alignment of target type"
msgstr ""
-#: cp/typeck.c:5357
+#: cp/typeck.c:5093
msgid " in evaluation of `%Q(%#T, %#T)'"
msgstr ""
-#: cp/typeck.c:5399
+#: cp/typeck.c:5135
msgid "ISO C++ forbids cast to non-reference type used as lvalue"
msgstr ""
-#: cp/typeck.c:5463
+#: cp/typeck.c:5208
msgid "incompatible types in assignment of `%T' to `%T'"
msgstr ""
-#: cp/typeck.c:5470
+#: cp/typeck.c:5215
msgid "ISO C++ forbids assignment of arrays"
msgstr ""
-#: cp/typeck.c:5577
+#: cp/typeck.c:5314
msgid " in pointer to member function conversion"
msgstr ""
-#: cp/typeck.c:5585
+#: cp/typeck.c:5322
msgid " in pointer to member conversion"
msgstr ""
#. This is a reinterpret cast, we choose to do nothing.
-#: cp/typeck.c:5596 cp/typeck.c:5615
-msgid "pointer to member cast via virtual base `%T' of `%T'"
-msgstr ""
+#: cp/typeck.c:5332 cp/typeck.c:5347
+#, fuzzy
+msgid "pointer to member cast via virtual base `%T'"
+msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'"
-#: cp/typeck.c:5619
-msgid "pointer to member conversion via virtual base `%T' of `%T'"
-msgstr ""
+#: cp/typeck.c:5350
+#, fuzzy
+msgid "pointer to member conversion via virtual base `%T'"
+msgstr "äåí åßóôå ìÝëïò ôçò ïìÜäáò `%s'"
-#: cp/typeck.c:5695
+#: cp/typeck.c:5420
msgid "invalid conversion to type `%T' from type `%T'"
msgstr ""
-#: cp/typeck.c:5860
+#: cp/typeck.c:5576
msgid "passing NULL used for non-pointer %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5863
+#: cp/typeck.c:5579
msgid "%s to non-pointer type `%T' from NULL"
msgstr ""
-#: cp/typeck.c:5871
+#: cp/typeck.c:5587
msgid "passing `%T' for %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5874
+#: cp/typeck.c:5590
msgid "%s to `%T' from `%T'"
msgstr ""
-#: cp/typeck.c:5884
+#: cp/typeck.c:5600
msgid "passing negative value `%E' for %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5887
+#: cp/typeck.c:5603
msgid "%s of negative value `%E' to `%T'"
msgstr ""
-#: cp/typeck.c:5982
+#: cp/typeck.c:5691
msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'"
msgstr ""
-#: cp/typeck.c:5985
+#: cp/typeck.c:5694
#, fuzzy
msgid "cannot convert `%T' to `%T' in %s"
msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï %s `%s' óôï `%s'"
-#: cp/typeck.c:6073 cp/typeck.c:6075
+#: cp/typeck.c:5771 cp/typeck.c:5773
#, fuzzy
msgid "in passing argument %P of `%+D'"
msgstr "Ëåßðåé ðáñÜìåôñïò ãéá `%s'"
-#: cp/typeck.c:6190
+#: cp/typeck.c:5880
#, fuzzy
msgid "returning reference to temporary"
msgstr "xdr_reference: ç ìíÞìç åîáíôëÞèçêå\n"
-#: cp/typeck.c:6197
+#: cp/typeck.c:5887
msgid "reference to non-lvalue returned"
msgstr ""
-#: cp/typeck.c:6209
+#: cp/typeck.c:5899
msgid "reference to local variable `%D' returned"
msgstr ""
-#: cp/typeck.c:6212
+#: cp/typeck.c:5902
msgid "address of local variable `%D' returned"
msgstr ""
-#: cp/typeck.c:6243
+#: cp/typeck.c:5932
msgid "returning a value from a destructor"
msgstr ""
#. If a return statement appears in a handler of the
#. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.c:6251
+#: cp/typeck.c:5940
msgid "cannot return from a handler of a function-try-block of a constructor"
msgstr ""
#. You can't return a value from a constructor.
-#: cp/typeck.c:6254
+#: cp/typeck.c:5943
msgid "returning a value from a constructor"
msgstr ""
-#: cp/typeck.c:6271
-msgid "return-statement with no value, in function declared with a non-void return type"
-msgstr ""
+#: cp/typeck.c:5966
+#, fuzzy
+msgid "return-statement with no value, in function returning '%T'"
+msgstr "`return' ÷ùñßò ôéìÞ, óå óõíÜñôçóç ðïõ åðéóôñÝöåé ìç-êåíü"
-#: cp/typeck.c:6287
-msgid "return-statement with a value, in function declared with a void return type"
-msgstr ""
+#: cp/typeck.c:5983
+#, fuzzy
+msgid "return-statement with a value, in function returning 'void'"
+msgstr "`return' ÷ùñßò ôéìÞ, óå óõíÜñôçóç ðïõ åðéóôñÝöåé ìç-êåíü"
-#: cp/typeck.c:6308
+#: cp/typeck.c:6005
msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)"
msgstr ""
-#: cp/typeck2.c:54
+#: cp/typeck2.c:55
msgid "type `%T' is not a base type for type `%T'"
msgstr ""
-#: cp/typeck2.c:157
+#: cp/typeck2.c:151
#, fuzzy
msgid "cannot declare variable `%D' to be of type `%T'"
msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï %s `%s' óôï `%s'"
-#: cp/typeck2.c:160
+#: cp/typeck2.c:154
#, fuzzy
msgid "cannot declare parameter `%D' to be of type `%T'"
msgstr "äåí åßíáé äõíáôü íá äçìéïõñãçèåß ôï %s `%s' óôï `%s'"
-#: cp/typeck2.c:163
+#: cp/typeck2.c:157
#, fuzzy
msgid "cannot declare field `%D' to be of type `%T'"
msgstr "Üãíùóôïò ÷áñáêôÞñáò óôï ðåäßï `%s' ôçò êáôçãïñßáò `%s'"
-#: cp/typeck2.c:167
+#: cp/typeck2.c:161
msgid "invalid return type for member function `%#D'"
msgstr ""
-#: cp/typeck2.c:169
+#: cp/typeck2.c:163
#, fuzzy
msgid "invalid return type for function `%#D'"
msgstr "ìç Ýãêõñï åßäïò áëöáñéèìçôéêïý `%s'"
-#: cp/typeck2.c:172
+#: cp/typeck2.c:166
#, fuzzy
msgid "cannot allocate an object of type `%T'"
msgstr "áäõíáìßá áíÜãíùóçò êáôáëüãïõ locale `%s'"
-#: cp/typeck2.c:179
+#: cp/typeck2.c:173
msgid " because the following virtual functions are abstract:"
msgstr ""
-#: cp/typeck2.c:181
+#: cp/typeck2.c:175
msgid "\t%#D"
msgstr ""
-#: cp/typeck2.c:184
+#: cp/typeck2.c:178
msgid " since type `%T' has abstract virtual functions"
msgstr ""
-#: cp/typeck2.c:338
+#: cp/typeck2.c:426
msgid "constructor syntax used, but no constructor declared for type `%T'"
msgstr ""
-#: cp/typeck2.c:349
-msgid "comma expression used to initialize return value"
-msgstr ""
-
-#: cp/typeck2.c:358
+#: cp/typeck2.c:439
msgid "cannot initialize arrays using this syntax"
msgstr ""
-#: cp/typeck2.c:473
+#: cp/typeck2.c:544
msgid "initializing array with parameter list"
msgstr ""
-#: cp/typeck2.c:529
+#: cp/typeck2.c:599
msgid "initializer for scalar variable requires one element"
msgstr ""
-#: cp/typeck2.c:536
+#: cp/typeck2.c:606
msgid "braces around scalar initializer for `%T'"
msgstr ""
-#: cp/typeck2.c:539
+#: cp/typeck2.c:609
msgid "ignoring extra initializers for `%T'"
msgstr ""
-#: cp/typeck2.c:551
+#: cp/typeck2.c:621
msgid "variable-sized object of type `%T' may not be initialized"
msgstr ""
-#: cp/typeck2.c:561
+#: cp/typeck2.c:631
msgid "subobject of type `%T' must be initialized by constructor, not by `%E'"
msgstr ""
-#: cp/typeck2.c:627
+#: cp/typeck2.c:696
msgid "aggregate has a partly bracketed initializer"
msgstr ""
-#: cp/typeck2.c:665 cp/typeck2.c:770
+#: cp/typeck2.c:734 cp/typeck2.c:839
msgid "non-trivial labeled initializers"
msgstr ""
-#: cp/typeck2.c:682
+#: cp/typeck2.c:751
msgid "non-empty initializer for array of empty elements"
msgstr ""
-#: cp/typeck2.c:736
+#: cp/typeck2.c:805
msgid "initializer list for object of class with virtual base classes"
msgstr ""
-#: cp/typeck2.c:742
+#: cp/typeck2.c:811
msgid "initializer list for object of class with base classes"
msgstr ""
-#: cp/typeck2.c:748
+#: cp/typeck2.c:817
msgid "initializer list for object using virtual functions"
msgstr ""
-#: cp/typeck2.c:811 cp/typeck2.c:827
+#: cp/typeck2.c:879 cp/typeck2.c:895
msgid "missing initializer for member `%D'"
msgstr ""
-#: cp/typeck2.c:816
+#: cp/typeck2.c:884
msgid "uninitialized const member `%D'"
msgstr ""
-#: cp/typeck2.c:818
+#: cp/typeck2.c:886
msgid "member `%D' with uninitialized const fields"
msgstr ""
-#: cp/typeck2.c:821
+#: cp/typeck2.c:889
msgid "member `%D' is uninitialized reference"
msgstr ""
-#: cp/typeck2.c:868
+#: cp/typeck2.c:936
msgid "index value instead of field name in union initializer"
msgstr ""
-#: cp/typeck2.c:880
+#: cp/typeck2.c:948
msgid "no field `%D' in union being initialized"
msgstr ""
-#: cp/typeck2.c:888
+#: cp/typeck2.c:956
msgid "union `%T' with no named members cannot be initialized"
msgstr ""
-#: cp/typeck2.c:924
+#: cp/typeck2.c:992
msgid "excess elements in aggregate initializer"
msgstr ""
-#: cp/typeck2.c:1038
+#: cp/typeck2.c:1100
msgid "circular pointer delegation detected"
msgstr ""
-#: cp/typeck2.c:1051
+#: cp/typeck2.c:1113
msgid "base operand of `->' has non-pointer type `%T'"
msgstr ""
-#: cp/typeck2.c:1065
+#: cp/typeck2.c:1137
msgid "result of `operator->()' yields non-pointer result"
msgstr ""
-#: cp/typeck2.c:1067
+#: cp/typeck2.c:1139
msgid "base operand of `->' is not a pointer"
msgstr ""
-#: cp/typeck2.c:1133
+#: cp/typeck2.c:1162
msgid "`%E' cannot be used as a member pointer, since it is of type `%T'"
msgstr ""
-#: cp/typeck2.c:1140
+#: cp/typeck2.c:1170
msgid "cannot apply member pointer `%E' to `%E', which is of non-aggregate type `%T'"
msgstr ""
-#: cp/typeck2.c:1149
+#: cp/typeck2.c:1180
msgid "member type `%T::' incompatible with object type `%T'"
msgstr ""
-#: cp/typeck2.c:1186
-msgid "`%T' fails to be a typedef or built-in type"
-msgstr ""
-
-#: cp/typeck2.c:1259
-#, c-format
-msgid "ISO C++ forbids defining types within %s"
-msgstr ""
-
-#: cp/typeck2.c:1384
+#: cp/typeck2.c:1396
msgid "call to function `%D' which throws incomplete type `%#T'"
msgstr ""
-#: cp/typeck2.c:1387
+#: cp/typeck2.c:1399
#, fuzzy
msgid "call to function which throws incomplete type `%#T'"
msgstr "ìç ðëÞñçò åããñáöÞ"
#. XXX Not i18n clean.
-#: cp/cp-tree.h:3936
+#: cp/cp-tree.h:3756
#, c-format
msgid "%s is deprecated, please see the documentation for details"
msgstr ""
-#: cp/lang-options.h:29
-msgid "Do not obey access control semantics"
-msgstr ""
-
-#: cp/lang-options.h:31
-msgid "Change when template instances are emitted"
-msgstr ""
-
-#: cp/lang-options.h:36
-msgid "Check the return value of new"
-msgstr ""
-
-#: cp/lang-options.h:39
-msgid "Reduce size of object files"
-msgstr ""
-
-#: cp/lang-options.h:43
-msgid "Make string literals `char[]' instead of `const char[]'"
-msgstr ""
-
-#: cp/lang-options.h:46
-msgid "Dump the entire translation unit to a file"
-msgstr ""
-
-#: cp/lang-options.h:48
-msgid "Do not inline member functions by default"
-msgstr ""
-
-#: cp/lang-options.h:51
-msgid "Do not generate run time type descriptor information"
-msgstr ""
-
-#: cp/lang-options.h:56
-msgid "Do not generate code to check exception specifications"
-msgstr ""
-
-#: cp/lang-options.h:61
-msgid "Scope of for-init-statement vars extends outside"
-msgstr ""
-
-#: cp/lang-options.h:64
-msgid "Do not recognize GNU defined keywords"
-msgstr ""
-
-#: cp/lang-options.h:68
-msgid "Enable support for huge objects"
-msgstr ""
-
-#: cp/lang-options.h:72
-msgid "Export functions even if they can be inlined"
-msgstr ""
-
-#: cp/lang-options.h:75
-#, fuzzy
-msgid "Only emit explicit template instantiations"
-msgstr "äéðëüò ïñéóìüò óõíüëïõ"
-
-#: cp/lang-options.h:78
-#, fuzzy
-msgid "Only emit explicit instantiations of inline templates"
-msgstr "äéðëüò ïñéóìüò óõíüëïõ"
-
-#: cp/lang-options.h:84
-msgid "Don't pedwarn about uses of Microsoft extensions"
-msgstr ""
-
-#: cp/lang-options.h:87
-msgid "Recognize and/bitand/bitor/compl/not/or/xor"
-msgstr ""
-
-#: cp/lang-options.h:91
-msgid "Disable optional diagnostics"
-msgstr ""
-
-#: cp/lang-options.h:93
-msgid "Downgrade conformance errors to warnings"
-msgstr ""
-
-#: cp/lang-options.h:96
-msgid "Enable automatic template instantiation"
-msgstr ""
-
-#: cp/lang-options.h:101
-msgid "Display statistics accumulated during compilation"
-msgstr ""
-
-#: cp/lang-options.h:104
-msgid "Specify maximum template instantiation depth"
-msgstr ""
-
-#: cp/lang-options.h:106
-msgid "Use __cxa_atexit to register destructors"
-msgstr ""
-
-#: cp/lang-options.h:109
-msgid "Discard unused virtual functions"
-msgstr ""
-
-#: cp/lang-options.h:112
-msgid "Implement vtables using thunks"
-msgstr ""
-
-#: cp/lang-options.h:115
-msgid "Emit common-like symbols as weak symbols"
-msgstr ""
-
-#: cp/lang-options.h:118
-#, fuzzy
-msgid "Emit cross referencing information"
-msgstr "åìöÜíéóç ðëçñïöïñéþí ðñïüäïõ"
-
-#: cp/lang-options.h:122
-msgid "Warn about inconsistent return types"
-msgstr ""
-
-#: cp/lang-options.h:125
-msgid "Warn about overloaded virtual function names"
-msgstr ""
-
-#: cp/lang-options.h:129
-msgid "Don't warn when all ctors/dtors are private"
-msgstr ""
-
-#: cp/lang-options.h:131
-msgid "Warn about non virtual destructors"
-msgstr ""
-
-#: cp/lang-options.h:134
-msgid "Warn when a function is declared extern, then inline"
-msgstr ""
-
-#: cp/lang-options.h:137
-msgid "Warn when the compiler reorders code"
-msgstr ""
-
-#: cp/lang-options.h:140
-msgid "Warn when synthesis behavior differs from Cfront"
-msgstr ""
-
-#: cp/lang-options.h:144
-msgid "Don't warn when type converting pointers to member functions"
-msgstr ""
-
-#: cp/lang-options.h:146
-msgid "Warn about violations of Effective C++ style rules"
-msgstr ""
-
-#: cp/lang-options.h:149
-msgid "Warn when overload promotes from unsigned to signed"
-msgstr ""
-
-#: cp/lang-options.h:152
-msgid "Warn if a C style cast is used in a program"
-msgstr ""
-
-#: cp/lang-options.h:156
-msgid "Don't warn when non-templatized friend functions are declared within a template"
-msgstr ""
-
-#: cp/lang-options.h:159
-msgid "Don't announce deprecation of compiler features"
-msgstr ""
-
-#: f/bad.c:387
+#: f/bad.c:388
msgid "note:"
msgstr "óçìåßùóç:"
-#: f/bad.c:391
+#: f/bad.c:392
#, fuzzy
msgid "warning:"
msgstr "ðñïåéäïðïßçóç: "
-#: f/bad.c:395
+#: f/bad.c:396
msgid "fatal:"
msgstr "ìïéñáßï:"
-#: f/bad.c:437
+#: f/bad.c:438
msgid "(continued):"
msgstr "(óõíå÷ßæåôáé):"
-#: f/bad.c:487 f/bad.c:505
+#: f/bad.c:488 f/bad.c:506
msgid "[REPORT BUG!!] %"
msgstr "[ÁÍÁÖ¸ÑÅÔÅ ÔÏ ÓÖ¶ËÌÁ!!] %"
-#: f/bad.c:494 f/bad.c:526
+#: f/bad.c:495 f/bad.c:527
msgid "[REPORT BUG!!]"
msgstr "[ÁÍÁÖ¸ÑÅÔÅ ÔÏ ÓÖÁËÌÁ!!]"
-#: f/com.c:3132
+#: f/com.c:3125
#, no-c-format
msgid "ASSIGN'ed label cannot fit into `%A' at %0 -- using wider sibling"
msgstr ""
-#: f/com.c:11623
+#: f/com.c:11565
msgid "no INTEGER type can hold a pointer on this configuration"
msgstr ""
-#: f/com.c:11844
+#: f/com.c:11839
#, c-format
msgid "configuration: REAL, INTEGER, and LOGICAL are %d bits wide,"
msgstr ""
-#: f/com.c:11846
+#: f/com.c:11841
#, c-format
msgid "and pointers are %d bits wide, but g77 doesn't yet work"
msgstr ""
-#: f/com.c:11848
+#: f/com.c:11843
msgid "properly unless they all are 32 bits wide"
msgstr ""
-#: f/com.c:11849
+#: f/com.c:11844
msgid "Please keep this in mind before you report bugs."
msgstr ""
#. I/O will probably crash.
-#: f/com.c:11857
+#: f/com.c:11852
#, c-format
msgid "configuration: char * holds %d bits, but ftnlen only %d"
msgstr ""
#. ASSIGN 10 TO I will crash.
-#: f/com.c:11866
+#: f/com.c:11861
#, c-format
msgid ""
"configuration: char * holds %d bits, but INTEGER only %d --\n"
" ASSIGN statement might fail"
msgstr ""
-#: f/com.c:13681
+#: f/com.c:13677
#, fuzzy
msgid "In statement function"
msgstr "ðÜñá ðïëëÜ ïñßóìáôá"
-#: f/com.c:13691
+#: f/com.c:13687
+#, c-format
msgid "Outside of any program unit:\n"
msgstr ""
-#: f/com.c:15320
+#: f/com.c:15283
#, no-c-format
msgid "%A from %B at %0%C"
msgstr ""
-#: f/com.c:15497
-msgid "directory name must immediately follow -I"
-msgstr ""
-
-#: f/com.c:15640
+#: f/com.c:15593
#, no-c-format
msgid "At %0, INCLUDE file %A exists, but is not readable"
msgstr ""
-#: f/com.c:15675
+#: f/com.c:15628
#, no-c-format
msgid "At %0, INCLUDE nesting too deep"
msgstr ""
-#: f/expr.c:9614
+#: f/expr.c:8706
#, no-c-format
msgid "Two arithmetic operators in a row at %0 and %1 -- use parentheses"
msgstr ""
-#: f/expr.c:9664
+#: f/expr.c:8756
#, no-c-format
msgid "Operator at %0 has lower precedence than that at %1 -- use parentheses"
msgstr ""
-#: f/expr.c:10525
+#: f/expr.c:9639
#, no-c-format
msgid "Use .EQV./.NEQV. instead of .EQ./.NE. at %0 for LOGICAL operands at %1 and %2"
msgstr ""
-#: f/expr.c:10896
+#: f/expr.c:10010
#, no-c-format
msgid "Unsupported operand for ** at %1 -- converting to default INTEGER"
msgstr ""
-#: f/g77spec.c:234
+#: f/g77spec.c:230
#, c-format
msgid "overflowed output arg list for `%s'"
msgstr ""
-#: f/g77spec.c:373
+#: f/g77spec.c:367
msgid "--driver no longer supported"
msgstr ""
-#: f/g77spec.c:386
+#: f/g77spec.c:380
#, fuzzy, c-format
msgid "argument to `%s' missing"
msgstr "Ý÷ïõí ðáñáëçöèåß ïñßóìáôá"
-#: f/g77spec.c:390
+#: f/g77spec.c:384
#, fuzzy
msgid "no input files; unwilling to write output files"
msgstr "%s: ôï áñ÷åßï åéóüäïõ åßíáé ôï áñ÷åßï åîüäïõ"
@@ -18668,139 +17925,134 @@ msgid "Implicit declaration of `%A' at %0"
msgstr "ðñïçãïýìåíç áõôïíüçôç äéáêýñçîç ôïõ `%s'"
# src/main.c:663
-#: f/lex.c:326
+#: f/lex.c:321
#, fuzzy, no-c-format
msgid "Non-ISO-C-standard escape sequence `\\%A' at %0"
msgstr "¶ãíùóôç óõìâïëïóåéñÜ `%s'"
# src/main.c:663
-#: f/lex.c:345
+#: f/lex.c:340
#, fuzzy, no-c-format
msgid "Unknown escape sequence `\\%A' at %0"
msgstr "¶ãíùóôç óõìâïëïóåéñÜ `%s'"
-#: f/lex.c:354
+#: f/lex.c:349
#, fuzzy, no-c-format
msgid "Unterminated escape sequence `\\' at %0"
msgstr "ìç ôåñìáôéæüìåío áëöáñéèìçôéêü"
-#: f/lex.c:365
+#: f/lex.c:360
#, no-c-format
msgid "Unknown escape sequence `\\' followed by char code 0x%A at %0"
msgstr ""
-#: f/lex.c:393
+#: f/lex.c:388
#, no-c-format
msgid "\\x used at %0 with no following hex digits"
msgstr ""
-#: f/lex.c:407
+#: f/lex.c:402
#, fuzzy, no-c-format
msgid "Hex escape at %0 out of range"
msgstr "ó÷åôéêÞ èÝóç áñ÷åßïõ åßíáé åêôüò ïñßùí"
-#: f/lex.c:441
+#: f/lex.c:436
#, fuzzy, no-c-format
msgid "Escape sequence at %0 out of range for character"
msgstr "ìç Ýãêõñç äéáäéêáóßá äéáöõãÞò óôï ôÝëïò ôïõ áëöáñéèìéôéêïý"
-#: f/lex.c:595
+#: f/lex.c:590
#, fuzzy
msgid "hex escape out of range"
msgstr "ó÷åôéêÞ èÝóç áñ÷åßïõ åßíáé åêôüò ïñßùí"
-#: f/lex.c:648
+#: f/lex.c:643
#, c-format
msgid "non-ANSI-standard escape sequence, `\\%c'"
msgstr ""
# src/main.c:663
-#: f/lex.c:661
+#: f/lex.c:656
#, fuzzy, c-format
msgid "non-ISO escape sequence `\\%c'"
msgstr "¶ãíùóôç óõìâïëïóåéñÜ `%s'"
# src/main.c:663
-#: f/lex.c:665
+#: f/lex.c:660
#, fuzzy, c-format
msgid "unknown escape sequence `\\%c'"
msgstr "¶ãíùóôç óõìâïëïóåéñÜ `%s'"
-#: f/lex.c:667
+#: f/lex.c:662
#, c-format
msgid "unknown escape sequence: `\\' followed by char code 0x%x"
msgstr ""
-#: f/lex.c:744
+#: f/lex.c:739
msgid "badly formed directive -- no closing quote"
msgstr ""
-#: f/lex.c:802
+#: f/lex.c:797
msgid "#-lines for entering and leaving files don't match"
msgstr ""
-#: f/lex.c:964
+#: f/lex.c:957
msgid "bad directive -- missing close-quote"
msgstr ""
-#: f/lex.c:1078
-#, fuzzy, c-format
-msgid "ignoring pragma: %s"
-msgstr "áãíïïýíôáé üëá ôá ïñßóìáôá"
-
-#: f/lex.c:1156
+#: f/lex.c:1096
#, fuzzy
msgid "invalid #ident"
msgstr "ìç Ýãêõñï äéêáßùìá"
-#: f/lex.c:1173
+#: f/lex.c:1113
#, fuzzy
msgid "undefined or invalid # directive"
msgstr "%%%c: êáôåõèõíôÞñéïò ãñáììÞ ìç Ýãêõñç."
-#: f/lex.c:1229
+#: f/lex.c:1168
#, fuzzy
msgid "invalid #line"
msgstr "ìç Ýãêõñïò áñéèìüò"
-#: f/lex.c:1285 f/lex.c:1329
+#: f/lex.c:1224 f/lex.c:1268
msgid "use `#line ...' instead of `# ...' in first line"
msgstr ""
-#: f/lex.c:1339
+#: f/lex.c:1278
#, fuzzy
msgid "invalid #-line"
msgstr "ìç Ýãêõñïò áñéèìüò"
-#: f/lex.c:1432
+#: f/lex.c:1371
#, fuzzy, no-c-format
msgid "Null character at %0 -- line ignored"
msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò óôï áñ÷åßï: "
-#: f/stb.c:12078
+#: f/stb.c:9177
#, no-c-format
msgid "INCLUDE at %0 not the only statement on the source line"
msgstr ""
-#: f/ste.c:1400 f/ste.c:1747
+#: f/ste.c:1397 f/ste.c:1744
msgid "ASSIGNed FORMAT specifier is too small"
msgstr ""
#. ~~~Someday handle CHARACTER*1, CHARACTER*N
-#: f/ste.c:2624
+#: f/ste.c:2621
#, no-c-format
msgid "SELECT CASE on CHARACTER type (at %0) not supported -- sorry"
msgstr ""
-#: f/ste.c:2729
+#: f/ste.c:2725
msgid "SELECT (at %0) has duplicate cases -- check integer overflow of CASE(s)"
msgstr ""
-#: f/ste.c:2959
+#: f/ste.c:2957
msgid "ASSIGN to variable that is too small"
msgstr ""
-#: f/ste.c:2987
+#: f/ste.c:2989
msgid "ASSIGNed GOTO target variable is too small"
msgstr ""
@@ -18809,334 +18061,23 @@ msgstr ""
msgid "Local adjustable symbol `%A' at %0"
msgstr ""
-#: f/target.c:2550
+#: f/target.c:2545
msgid "data initializer on host with different endianness"
msgstr ""
-#: f/top.c:237
-#, c-format
-msgid "%s no longer supported -- try -fvxt"
-msgstr ""
-
-#: f/top.c:239
-#, c-format
-msgid "%s no longer supported -- try -fno-vxt -ff90"
-msgstr ""
-
-#: f/top.c:307 f/top.c:309
-#, c-format
-msgid "%s disabled, use normal debugging flags"
-msgstr ""
-
-#: f/lang-options.h:33
-msgid "Print g77-specific compiler version info, run internal tests"
-msgstr ""
-
-#: f/lang-options.h:37
-msgid "Program is written in typical FORTRAN 66 dialect"
-msgstr ""
-
-#: f/lang-options.h:40
-msgid "Program is written in typical Unix f77 dialect"
-msgstr ""
-
-#: f/lang-options.h:42
-msgid "Program does not use Unix-f77 dialectal features"
-msgstr ""
-
-#: f/lang-options.h:44
-msgid "Program is written in Fortran-90-ish dialect"
-msgstr ""
-
-#: f/lang-options.h:48
-msgid "Treat local vars and COMMON blocks as if they were named in SAVE statements"
-msgstr ""
-
-#: f/lang-options.h:50
-msgid "Allow $ in symbol names"
-msgstr ""
-
-#: f/lang-options.h:54
-msgid "f2c-compatible code need not be generated"
-msgstr ""
-
-#: f/lang-options.h:57
-msgid "Unsupported; do not generate libf2c-calling code"
-msgstr ""
-
-#: f/lang-options.h:59
-msgid "Unsupported; affects code-generation of arrays"
-msgstr ""
-
-#: f/lang-options.h:62
-msgid "Program is written in Fortran-90-ish free form"
-msgstr ""
-
-#: f/lang-options.h:67
-msgid "Warn about use of (only a few for now) Fortran extensions"
-msgstr ""
-
-#: f/lang-options.h:70
-msgid "Program is written in VXT (Digital-like) FORTRAN"
-msgstr ""
-
-#: f/lang-options.h:73
-msgid "Disallow all ugly features"
-msgstr ""
-
-#: f/lang-options.h:76
-msgid "Hollerith and typeless constants not passed as arguments"
-msgstr ""
-
-#: f/lang-options.h:78
-msgid "Allow ordinary copying of ASSIGN'ed vars"
-msgstr ""
-
-#: f/lang-options.h:81
-msgid "Dummy array dimensioned to (1) is assumed-size"
-msgstr ""
-
-#: f/lang-options.h:84
-msgid "Trailing comma in procedure call denotes null argument"
-msgstr ""
-
-#: f/lang-options.h:87
-msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
-msgstr ""
-
-#: f/lang-options.h:91
-msgid "Initialization via DATA and PARAMETER is type-compatible"
-msgstr ""
-
-#: f/lang-options.h:93
-msgid "Allow INTEGER and LOGICAL interchangeability"
-msgstr ""
-
-#: f/lang-options.h:96
-msgid "Print internal debugging-related info"
-msgstr ""
-
-#: f/lang-options.h:99
-msgid "Initialize local vars and arrays to zero"
-msgstr ""
-
-#: f/lang-options.h:103
-msgid "Backslashes in character/hollerith constants not special (C-style)"
-msgstr ""
-
-#: f/lang-options.h:105
-msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
-msgstr ""
-
-#: f/lang-options.h:109
-msgid "Disable the appending of underscores to externals"
-msgstr ""
-
-#: f/lang-options.h:112
-msgid "Never append a second underscore to externals"
-msgstr ""
-
-#: f/lang-options.h:114
-msgid "Intrinsics spelled as e.g. SqRt"
-msgstr ""
-
-#: f/lang-options.h:116
-msgid "Intrinsics in uppercase"
-msgstr ""
-
-#: f/lang-options.h:119
-msgid "Intrinsics letters in arbitrary cases"
-msgstr ""
-
-#: f/lang-options.h:121
-msgid "Language keywords spelled as e.g. IOStat"
-msgstr ""
-
-#: f/lang-options.h:123
-msgid "Language keywords in uppercase"
-msgstr ""
-
-#: f/lang-options.h:126
-msgid "Language keyword letters in arbitrary cases"
-msgstr ""
-
-#: f/lang-options.h:128
-msgid "Internally convert most source to uppercase"
-msgstr ""
-
-#: f/lang-options.h:131
-msgid "Internally preserve source case"
-msgstr ""
-
-#: f/lang-options.h:133
-msgid "Symbol names spelled in mixed case"
-msgstr ""
-
-#: f/lang-options.h:135
-msgid "Symbol names in uppercase"
-msgstr ""
-
-#: f/lang-options.h:137
-msgid "Symbol names in lowercase"
-msgstr ""
-
-#: f/lang-options.h:140
-msgid "Program written in uppercase"
-msgstr ""
-
-#: f/lang-options.h:142
-msgid "Program written in lowercase"
-msgstr ""
-
-#: f/lang-options.h:144
-msgid "Program written in strict mixed-case"
-msgstr ""
-
-#: f/lang-options.h:146
-msgid "Compile as if program written in uppercase"
-msgstr ""
-
-#: f/lang-options.h:148
-msgid "Compile as if program written in lowercase"
-msgstr ""
-
-#: f/lang-options.h:150
-msgid "Preserve all spelling (case) used in program"
-msgstr ""
-
-#: f/lang-options.h:152
-msgid "Delete libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:154
-msgid "Disable libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:157
-msgid "Hide libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:159
-msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:161
-msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:164
-msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:166
-msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:168
-msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:171
-msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:173
-msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
-msgstr ""
-
-#: f/lang-options.h:175
-msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:178
-msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:180
-msgid "Delete MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:182
-msgid "Disable MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:185
-msgid "Hide MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:187
-msgid "Delete libU77 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:189
-msgid "Disable libU77 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:192
-msgid "Hide libU77 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:194
-msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:196
-msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:199
-msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:201
-msgid "Treat initial values of 0 like non-zero values"
-msgstr ""
-
-#: f/lang-options.h:204
-msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
-msgstr ""
-
-#: f/lang-options.h:207
-msgid "Take at least one trip through each iterative DO loop"
-msgstr ""
-
-#: f/lang-options.h:211
-msgid "Print names of program units as they are compiled"
-msgstr ""
-
-#: f/lang-options.h:214
-msgid "Disable fatal diagnostics about inter-procedural problems"
-msgstr ""
-
-#: f/lang-options.h:216
-msgid "Make prefix-radix non-decimal constants be typeless"
-msgstr ""
-
-#: f/lang-options.h:219
-msgid "Generate code to check subscript and substring bounds"
-msgstr ""
-
-#: f/lang-options.h:222
-msgid "Fortran-specific form of -fbounds-check"
-msgstr ""
-
-#: f/lang-options.h:226
-msgid "Disable warnings about inter-procedural problems"
-msgstr ""
+#: f/top.c:244
+#, fuzzy
+msgid "-fvxt-not-f90 no longer supported -- try -fvxt"
+msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
-#: f/lang-options.h:230
-msgid "Warn about constructs with surprising meanings"
+#: f/top.c:248
+msgid "-ff90-not-vxt no longer supported -- try -fno-vxt -ff90"
msgstr ""
-#: f/lang-options.h:235
-msgid "Add a directory for INCLUDE searching"
+#: f/top.c:318
+msgid "-fdebug-kludge is disabled, use normal debugging flags"
msgstr ""
-#: f/lang-options.h:237
-#, fuzzy
-msgid "Set the maximum line length"
-msgstr "åëÜ÷éóôï ìÝãåèïò áëöáñéèìçôéêïý"
-
#: f/bad.def:39
#, fuzzy, no-c-format
msgid "Missing first operand for binary operator at %0"
@@ -20041,336 +18982,356 @@ msgstr ""
msgid "In anything"
msgstr ""
-#: java/check-init.c:917
+#: java/check-init.c:905
#, c-format
msgid "internal error in check-init: tree code not implemented: %s"
msgstr ""
-#: java/check-init.c:990
-#, c-format
-msgid "final field '%s' may not have been initialized"
+#: java/check-init.c:977
+msgid "%Jfinal field '%D' may not have been initialized"
msgstr ""
-#: java/class.c:539 java/class.c:564
+#: java/class.c:592 java/class.c:616
#, fuzzy
msgid "internal error - too many interface type"
msgstr "åóùôåñéêü óöÜëìá óôï %s, ãñáììÞ %u"
-#: java/class.c:677
+#: java/class.c:715
msgid "bad method signature"
msgstr ""
-#: java/class.c:726
+#: java/class.c:759
msgid "misplaced ConstantValue attribute (not in any field)"
msgstr ""
-#: java/class.c:728
+#: java/class.c:761
#, c-format
msgid "duplicate ConstantValue attribute for field '%s'"
msgstr ""
-#: java/class.c:739
+#: java/class.c:772
#, c-format
msgid "ConstantValue attribute of field '%s' has wrong type"
msgstr ""
-#: java/class.c:1103
+#: java/class.c:1067
#, c-format
msgid "field '%s' not found in class"
msgstr ""
-#: java/class.c:1365
-msgid "abstract method in non-abstract class"
+#: java/class.c:1324
+msgid "%Jabstract method in non-abstract class"
+msgstr ""
+
+#: java/class.c:2140
+msgid "%Jnon-static method '%D' overrides static method"
msgstr ""
-#: java/class.c:2078
+#: java/decl.c:1018
+#, fuzzy
+msgid "%J'%D' used prior to declaration"
+msgstr "áõôüò åßíáé ï ðñþôïò ïñéóìüò"
+
+#: java/decl.c:1059
#, c-format
-msgid "non-static method '%s' overrides static method"
+msgid "declaration of `%s' shadows a parameter"
msgstr ""
-#: java/decl.c:1541
+#: java/decl.c:1062
#, c-format
-msgid "In %s: overlapped variable and exception ranges at %d"
+msgid "declaration of `%s' shadows a symbol from the parameter list"
+msgstr ""
+
+#: java/decl.c:1361
+#, fuzzy
+msgid "%Jlabel '%D' used but not defined"
+msgstr "áüñéóôï"
+
+#: java/decl.c:1366
+msgid "%Jlabel '%D' defined but not used"
msgstr ""
-#: java/decl.c:1622
+#: java/decl.c:1494
+msgid "%JIn %D: overlapped variable and exception ranges at %d"
+msgstr ""
+
+#: java/decl.c:1572
msgid "bad type in parameter debug info"
msgstr ""
-#: java/decl.c:1632
-#, c-format
-msgid "bad PC range for debug info for local `%s'"
+#: java/decl.c:1581
+msgid "%Jbad PC range for debug info for local '%D'"
msgstr ""
-#: java/expr.c:530
+#: java/expr.c:519
msgid "stack underflow - dup* operation"
msgstr ""
-#: java/expr.c:1534
+#: java/expr.c:1469
#, c-format
msgid "reference `%s' is ambiguous: appears in interface `%s' and interface `%s'"
msgstr ""
-#: java/expr.c:1563
+#: java/expr.c:1497
#, fuzzy, c-format
msgid "field `%s' not found"
msgstr "ôï áñ÷åßï ÷Üñôç ÷áñáêôÞñùí `%s' äåí âñÝèçêå"
-#: java/expr.c:1715
+#: java/expr.c:1658
#, fuzzy
msgid "ret instruction not implemented"
msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
-#: java/expr.c:1857
+#: java/expr.c:1815
#, c-format
msgid "method '%s' not found in class"
msgstr ""
-#: java/expr.c:2060
+#: java/expr.c:2020
#, c-format
msgid "failed to find class '%s'"
msgstr ""
-#: java/expr.c:2070
+#: java/expr.c:2030
#, c-format
msgid "class '%s' has no method named '%s' matching signature '%s'"
msgstr ""
-#: java/expr.c:2080
+#: java/expr.c:2040
msgid "invokestatic on non static method"
msgstr ""
-#: java/expr.c:2085
+#: java/expr.c:2045
msgid "invokestatic on abstract method"
msgstr ""
-#: java/expr.c:2093
+#: java/expr.c:2053
msgid "invoke[non-static] on static method"
msgstr ""
-#: java/expr.c:2396
+#: java/expr.c:2352
#, c-format
msgid "missing field '%s' in '%s'"
msgstr ""
-#: java/expr.c:2402
+#: java/expr.c:2358
#, c-format
msgid "mismatching signature for field '%s' in '%s'"
msgstr ""
-#: java/expr.c:2425
-#, c-format
-msgid "assignment to final field `%s' not in field's class"
+#: java/expr.c:2380
+msgid "%Jassignment to final field '%D' not in field's class"
msgstr ""
-#: java/expr.c:2430
-#, c-format
-msgid "assignment to final static field `%s' not in class initializer"
+#: java/expr.c:2385
+msgid "%Jassignment to final static field `%D' not in class initializer"
msgstr ""
-#: java/expr.c:2437
-#, c-format
-msgid "assignment to final field `%s' not in constructor"
+#: java/expr.c:2393
+msgid "%Jassignment to final field '%D' not in constructor"
msgstr ""
-#: java/expr.c:2684
+#: java/expr.c:2636
#, fuzzy, c-format
msgid "can't expand %s"
msgstr "%s: áäõíáìßá óôçí áíÜãíùóç %s: %s\n"
-#: java/expr.c:2861
+#: java/expr.c:2808
#, fuzzy
msgid "invalid PC in line number table"
msgstr "ìç Ýãêõñïò áñ÷éêüò áñéèìüò ãñáììÞò: `%s'"
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2906
+#: java/expr.c:2854
#, c-format
msgid "unreachable bytecode from %d to before %d"
msgstr ""
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2943
+#: java/expr.c:2892
#, c-format
msgid "unreachable bytecode from %d to the end of the method"
msgstr ""
#. duplicate code from LOAD macro
-#: java/expr.c:3261
+#: java/expr.c:3206
msgid "unrecogized wide sub-instruction"
msgstr ""
-#: java/jcf-io.c:543
+#: java/jcf-io.c:534
#, c-format
msgid "source file for class `%s' is newer than its matching class file. Source file `%s' used instead"
msgstr ""
-#: java/jcf-parse.c:338
+#: java/jcf-parse.c:330
#, fuzzy
msgid "bad string constant"
msgstr "ìç ôåñìáôéæìÝíï áëöáñéèìçôéêü óôáèåñÜò"
-#: java/jcf-parse.c:356
+#: java/jcf-parse.c:348
#, c-format
msgid "bad value constant type %d, index %d"
msgstr ""
-#: java/jcf-parse.c:528
+#: java/jcf-parse.c:514
#, fuzzy, c-format
-msgid "can't reopen %s"
+msgid "can't reopen %s: %m"
msgstr "áäõíáìßá áíïßãìáôïò ôïõ `%s'"
-#: java/jcf-parse.c:533
+#: java/jcf-parse.c:519
#, fuzzy, c-format
-msgid "can't close %s"
+msgid "can't close %s: %m"
msgstr "äåí åßíáé äõíáôü íá áëëá÷ôïýí ôá äéêáéþìáôá ôïõ `%s'"
-#: java/jcf-parse.c:619
+#: java/jcf-parse.c:604
#, fuzzy, c-format
msgid "cannot find file for class %s"
msgstr "äå âñÝèçêå ï ðñïåðåîåñãáóôÞò C: %s \n"
-#: java/jcf-parse.c:631
+#: java/jcf-parse.c:615
#, fuzzy
msgid "not a valid Java .class file"
msgstr "Ìç Ýãêõñïò ÷áñáêôÞñáò ïíüìáôïò êëÜóçò"
-#: java/jcf-parse.c:634
+#: java/jcf-parse.c:618
#, fuzzy
msgid "error while parsing constant pool"
msgstr "óöÜëìá êáôÜ ôï êëåßóéìï ôïõ áñ÷åßïõ åîüäïõ"
-#: java/jcf-parse.c:637
+#: java/jcf-parse.c:621
#, c-format
msgid "error in constant pool entry #%d\n"
msgstr ""
#. FIXME - where was first time
-#: java/jcf-parse.c:649
+#: java/jcf-parse.c:633
#, c-format
msgid "reading class %s for the second time from %s"
msgstr ""
-#: java/jcf-parse.c:667
+#: java/jcf-parse.c:651
#, fuzzy
msgid "error while parsing fields"
msgstr "óöÜëìá êáôÜ ôï êëåßóéìï ôïõ áñ÷åßïõ åîüäïõ"
-#: java/jcf-parse.c:670
+#: java/jcf-parse.c:654
#, fuzzy
msgid "error while parsing methods"
msgstr "óöÜëìá êáôÜ ôçí áíÜãíùóç ôçò åéóüäïõ"
-#: java/jcf-parse.c:673
+#: java/jcf-parse.c:657
#, fuzzy
msgid "error while parsing final attributes"
msgstr "óöÜëìá êáôÜ ôï êëåßóéìï ôçò åéóüäïõ `%s'"
-#: java/jcf-parse.c:687
+#: java/jcf-parse.c:671
#, c-format
msgid "the `java.lang.Object' that was found in `%s' didn't have the special zero-length `gnu.gcj.gcj-compiled' attribute. This generally means that your classpath is incorrectly set. Use `info gcj \"Input Options\"' to see the info page describing how to set the classpath"
msgstr ""
-#: java/jcf-parse.c:777
+#: java/jcf-parse.c:749
#, fuzzy
msgid "missing Code attribute"
msgstr "ÅëëéðÞò Þ êáêïó÷çìáôéóìÝíç éäéüôçôá"
-#: java/jcf-parse.c:1014
-msgid "source file seen twice on command line and will be compiled only once"
+#: java/jcf-parse.c:981
+msgid "%Hsource file seen twice on command line and will be compiled only once"
msgstr ""
-#: java/jcf-parse.c:1030
+#: java/jcf-parse.c:997
#, fuzzy
msgid "no input file specified"
msgstr "Äåí õðÜñ÷ïõí áñ÷åßá åéóüäïõ"
-#: java/jcf-parse.c:1059
+#: java/jcf-parse.c:1026
#, fuzzy, c-format
-msgid "can't close input file %s"
+msgid "can't close input file %s: %m"
msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åéóüäïõ `%s'"
-#: java/jcf-parse.c:1096
+#: java/jcf-parse.c:1064
#, c-format
msgid "bad zip/jar file %s"
msgstr ""
-#: java/jcf-write.c:2650
+#: java/jcf-parse.c:1236
+#, fuzzy, c-format
+msgid "error while reading %s from zip file"
+msgstr "óöÜëìá êáôÜ ôï êëåßóéìï ôïõ áñ÷åßïõ åîüäïõ"
+
+#: java/jcf-write.c:2602
#, c-format
msgid "internal error in generate_bytecode_insn - tree code not implemented: %s"
msgstr ""
-#: java/jcf-write.c:2988
+#: java/jcf-write.c:2934
#, fuzzy
msgid "field initializer type mismatch"
msgstr "Êáêïóõíôáßñéáóìá ôýðùí êáôá÷þñçóçò/ðßíáêá"
-#: java/jcf-write.c:3419
+#: java/jcf-write.c:3389
#, fuzzy, c-format
-msgid "can't create directory %s"
+msgid "can't create directory %s: %m"
msgstr "%s: Äåí åßíáé äõíáôüí íá äçìéïõñãçèåß ï êáôÜëïãïò %s: %s\n"
-#: java/jcf-write.c:3473
+#: java/jcf-write.c:3442
#, fuzzy, c-format
-msgid "can't create %s"
+msgid "can't create %s: %m"
msgstr "áäõíáìßá áíïßãìáôïò ôïõ `%s'"
-#: java/jv-scan.c:187
+#: java/jv-scan.c:185
msgid "only one of `--print-main', `--list-class', and `--complexity' allowed"
msgstr ""
-#: java/jv-scan.c:190
+#: java/jv-scan.c:188
#, fuzzy, c-format
msgid "can't open output file `%s'"
msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ åîüäïõ `%s'"
-#: java/jv-scan.c:224
+#: java/jv-scan.c:222
#, fuzzy, c-format
msgid "file not found `%s'"
msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
-#: java/jvspec.c:426
+#: java/jvspec.c:418
msgid "can't specify `-D' without `--main'\n"
msgstr ""
-#: java/jvspec.c:429
+#: java/jvspec.c:421
#, fuzzy, c-format
msgid "`%s' is not a valid class name"
msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
-#: java/jvspec.c:435
+#: java/jvspec.c:427
#, fuzzy
msgid "--resource requires -o"
msgstr "ÅóöáëìÝíïò êþäéêáò áßôçóçò"
-#: java/jvspec.c:442
+#: java/jvspec.c:434
msgid "warning: already-compiled .class files ignored with -C"
msgstr ""
-#: java/jvspec.c:449
+#: java/jvspec.c:441
#, fuzzy
msgid "cannot specify both -C and -o"
msgstr "äåí åßíáé äõíáôü íá ðáñáëçöèåß ï ÷ñÞóôçò êáé ç ïìÜäá"
-#: java/jvspec.c:461
+#: java/jvspec.c:453
#, fuzzy
msgid "cannot create temporary file"
msgstr "ÓÖÁËÌÁ: Áäõíáìßá äçìéïõñãßáò ðñïóùñéíïý áñ÷åßïõ ãéá áëëáãÞ"
-#: java/jvspec.c:489
+#: java/jvspec.c:481
msgid "using both @FILE with multiple files not implemented"
msgstr ""
-#: java/jvspec.c:538
+#: java/jvspec.c:530
#, fuzzy
msgid "cannot specify `main' class when not linking"
msgstr "Äåí åßíáé äõíáôü íá äçëùèåß áñéèìüò óôçëþí óôçí ðáñÜëëçëç åêôýðùóç."
-#: java/lang.c:548
+#: java/lang.c:740
msgid "can't do dependency tracking with input from stdin"
msgstr ""
-#: java/lang.c:564
+#: java/lang.c:756
msgid "couldn't determine target name for dependency tracking"
msgstr ""
@@ -20384,145 +19345,83 @@ msgid ""
"`--encoding=UTF-8' option"
msgstr ""
-#: java/mangle.c:85
+#: java/mangle.c:89
#, fuzzy, c-format
msgid "can't mangle %s"
msgstr "Äåí åßíáé äõíáôüí íá åêôåëåóôåß ôï %s"
-#: java/mangle_name.c:144 java/mangle_name.c:216
+#: java/mangle_name.c:140 java/mangle_name.c:210
#, fuzzy
msgid "internal error - invalid Utf8 name"
msgstr "åóùôåñéêü óöÜëìá óôï %s, ãñáììÞ %u"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:881
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:962
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1303
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1364
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1574
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1796
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1805
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1816
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1827
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1839
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1854
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1871
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1873
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1945
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2116
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2178
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2330
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2342
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2349
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2356
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2367
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2369
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2407
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2409
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2411
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2432
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2434
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2436
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2452
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2454
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2475
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2477
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2479
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2507
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2509
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2511
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2513
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2531
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2533
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2555
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2566
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2577
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2588
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2601
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2605
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2607
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2620
+#: java/parse-scan.y:880 java/parse.y:949 java/parse.y:1290 java/parse.y:1351
+#: java/parse.y:1555 java/parse.y:1777 java/parse.y:1786 java/parse.y:1797
+#: java/parse.y:1808 java/parse.y:1820 java/parse.y:1835 java/parse.y:1852
+#: java/parse.y:1854 java/parse.y:1935 java/parse.y:2106 java/parse.y:2168
+#: java/parse.y:2320 java/parse.y:2332 java/parse.y:2339 java/parse.y:2346
+#: java/parse.y:2357 java/parse.y:2359 java/parse.y:2397 java/parse.y:2399
+#: java/parse.y:2401 java/parse.y:2422 java/parse.y:2424 java/parse.y:2426
+#: java/parse.y:2442 java/parse.y:2444 java/parse.y:2465 java/parse.y:2467
+#: java/parse.y:2469 java/parse.y:2497 java/parse.y:2499 java/parse.y:2501
+#: java/parse.y:2503 java/parse.y:2521 java/parse.y:2523 java/parse.y:2534
+#: java/parse.y:2545 java/parse.y:2556 java/parse.y:2567 java/parse.y:2578
+#: java/parse.y:2591 java/parse.y:2595 java/parse.y:2597 java/parse.y:2610
#, fuzzy
msgid "Missing term"
msgstr "¸÷åé ðáñáëçöèåß åíôïëÞ"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:883
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:734
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:772
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:797
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:983
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1338
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1550
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1552
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1781
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1807
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1818
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1829
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1841
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1856
+#: java/parse-scan.y:882 java/parse.y:721 java/parse.y:759 java/parse.y:784
+#: java/parse.y:970 java/parse.y:1325 java/parse.y:1531 java/parse.y:1533
+#: java/parse.y:1762 java/parse.y:1788 java/parse.y:1799 java/parse.y:1810
+#: java/parse.y:1822 java/parse.y:1837
msgid "';' expected"
msgstr "áíáìåíüôáí ';'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:732
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:770
+#: java/parse.y:719 java/parse.y:757
#, fuzzy
msgid "Missing name"
msgstr "¸÷åé ðáñáëçöèåß åíôïëÞ"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:795
+#: java/parse.y:782
msgid "'*' expected"
msgstr "áíáìåíüôáí '*'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:809
+#: java/parse.y:796
msgid "Class or interface declaration expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:846
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:848
+#: java/parse.y:833 java/parse.y:835
#, fuzzy
msgid "Missing class name"
msgstr "¸÷åé ðáñáëçöèåß åíôïëÞ"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:851
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:855
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:863
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1023
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1284
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1616
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1867
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1899
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1952
+#: java/parse.y:838 java/parse.y:842 java/parse.y:850 java/parse.y:1010
+#: java/parse.y:1271 java/parse.y:1273 java/parse.y:1597 java/parse.y:1848
+#: java/parse.y:1880 java/parse.y:1942
msgid "'{' expected"
msgstr "áíáìåíüôáí '{'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:865
+#: java/parse.y:852
msgid "Missing super class name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:875
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:891
+#: java/parse.y:862 java/parse.y:878
#, fuzzy
msgid "Missing interface name"
msgstr "ðáñÜëçøç ïñßóìáôïò áñ÷åßïõ"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:977
+#: java/parse.y:964
msgid "Missing variable initializer"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:994
+#: java/parse.y:981
#, fuzzy
msgid "Invalid declaration"
msgstr "Ìç Ýãêõñç áíôáëëáãÞ"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:997
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1082
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2153
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2175
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2179
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2214
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2291
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2301
+#: java/parse.y:984 java/parse.y:1069 java/parse.y:2143 java/parse.y:2165
+#: java/parse.y:2169 java/parse.y:2204 java/parse.y:2281 java/parse.y:2291
msgid "']' expected"
msgstr "áíáìåíüôáí ']'"
@@ -20530,181 +19429,153 @@ msgstr "áíáìåíüôáí ']'"
# src/dfa.c:690 src/dfa.c:703 src/dfa.c:704
# src/dfa.c:660 src/dfa.c:663 src/dfa.c:690 src/dfa.c:694 src/dfa.c:695
# src/dfa.c:698 src/dfa.c:711 src/dfa.c:712
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1001
+#: java/parse.y:988
#, fuzzy
msgid "Unbalanced ']'"
msgstr "Ìç éóóïñïðçìÝíï ["
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1037
+#: java/parse.y:1024
msgid "Invalid method declaration, method name required"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1042
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1047
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1052
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2036
+#: java/parse.y:1029 java/parse.y:1034 java/parse.y:1039 java/parse.y:2026
#, fuzzy
msgid "Identifier expected"
msgstr "ÐñïóäéïñéóôÞò áöáéñÝèçêå"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1057
+#: java/parse.y:1044
msgid "Invalid method declaration, return type required"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1080
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1530
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1537
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1546
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1548
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1576
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1684
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1981
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2034
+#: java/parse.y:1067 java/parse.y:1511 java/parse.y:1518 java/parse.y:1527
+#: java/parse.y:1529 java/parse.y:1557 java/parse.y:1665 java/parse.y:1971
+#: java/parse.y:2024
msgid "')' expected"
msgstr "áíáìåíüôáí '('"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1096
+#: java/parse.y:1083
#, fuzzy
msgid "Missing formal parameter term"
msgstr "ÅëëéðÞò Þ êáêïó÷çìáôéóìÝíç éäéüôçôá"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1111
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1116
+#: java/parse.y:1098 java/parse.y:1103
#, fuzzy
msgid "Missing identifier"
msgstr "Ý÷åé ðáñáëçöèåß ôï áñ÷åßï ðñïïñéóìïý"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1136
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1145
+#: java/parse.y:1123 java/parse.y:1132
msgid "Missing class type term"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1301
+#: java/parse.y:1288
#, fuzzy
msgid "Invalid interface type"
msgstr "Ìç Ýãêõñïò åîáêñéâùôÞò(verifier) åîõðçñåôïýìåíïõ"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1494
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1663
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1665
+#: java/parse.y:1475 java/parse.y:1644 java/parse.y:1646
msgid "':' expected"
msgstr "áíáìåíüôáí ':'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1516
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1521
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1526
+#: java/parse.y:1497 java/parse.y:1502 java/parse.y:1507
#, fuzzy
msgid "Invalid expression statement"
msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1572
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1612
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1680
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1748
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1869
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1938
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2028
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2030
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2038
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2274
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2276
+#: java/parse.y:1525 java/parse.y:1553 java/parse.y:1593 java/parse.y:1661
+#: java/parse.y:1729 java/parse.y:1850 java/parse.y:1928 java/parse.y:2018
+#: java/parse.y:2020 java/parse.y:2028 java/parse.y:2264 java/parse.y:2266
msgid "'(' expected"
msgstr "áíáìåíüôáí '('"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1614
+#: java/parse.y:1595
#, fuzzy
msgid "Missing term or ')'"
msgstr "Ëåßðåé ðáñÜìåôñïò ãéá `%s'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1661
+#: java/parse.y:1642
#, fuzzy
msgid "Missing or invalid constant expression"
msgstr "%s: ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç: %s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1682
+#: java/parse.y:1663
msgid "Missing term and ')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1721
+#: java/parse.y:1702
#, fuzzy
msgid "Invalid control expression"
msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1723
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1725
+#: java/parse.y:1704 java/parse.y:1706
#, fuzzy
msgid "Invalid update expression"
msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1750
+#: java/parse.y:1731
#, fuzzy
msgid "Invalid init statement"
msgstr "Ìç Ýãêõñç ðáñÜìåôñïò"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1941
+#: java/parse.y:1931
msgid "Missing term or ')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1983
+#: java/parse.y:1973
msgid "'class' or 'this' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1985
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1987
+#: java/parse.y:1975 java/parse.y:1977
#, fuzzy
msgid "'class' expected"
msgstr "áíáìåíüôáí ')'\n"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2032
+#: java/parse.y:2022
#, fuzzy
msgid "')' or term expected"
msgstr "áíáìåíüôáí ')'\n"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2151
+#: java/parse.y:2141
msgid "'[' expected"
msgstr "áíáìåíüôáí '['"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2229
+#: java/parse.y:2219
#, fuzzy
msgid "Field expected"
msgstr "Ç èõãáôñéêÞ äéåñãáóßá ôåñìáôßóôçêå"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2296
+#: java/parse.y:2276 java/parse.y:2286
msgid "Missing term and ']' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2400
+#: java/parse.y:2390
#, fuzzy
msgid "']' expected, invalid type expression"
msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2403
+#: java/parse.y:2393
#, fuzzy
msgid "Invalid type expression"
msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2515
+#: java/parse.y:2505
#, fuzzy
msgid "Invalid reference type"
msgstr "Ìç Ýãêõñç ðéóù-ðáñáðïìðÞ"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2993
+#: java/parse.y:2977
msgid "Constructor invocation must be first thing in a constructor"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2995
+#: java/parse.y:2979
msgid "Only constructors can invoke constructors"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3004
+#: java/parse.y:2987
#, c-format
msgid ": `%s' JDK1.1(TM) feature"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3064
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3066
+#: java/parse.y:3046 java/parse.y:3048
#, c-format
msgid ""
"%s.\n"
@@ -20713,251 +19584,231 @@ msgstr ""
"%s.\n"
"%s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6879
+#: java/parse.y:6908
#, c-format
msgid "malformed .zip archive in CLASSPATH: %s"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6950
+#: java/parse.y:6979
#, c-format
msgid "Can't find default package `%s'. Check the CLASSPATH environment variable and the access to the archives"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12352
+#: java/parse.y:12192
#, fuzzy, c-format
msgid "missing static field `%s'"
msgstr "Ý÷åé ðáñáëçöèåß ç ëßóôá ìå ôá ðåäßá"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12357
+#: java/parse.y:12197
#, fuzzy, c-format
msgid "not a static field `%s'"
msgstr "áäõíáìßá ðñïóðÝëáóçò(stat()) áñ÷åßïõ `%s': %s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12400
+#: java/parse.y:12240
#, fuzzy, c-format
msgid "No case for %s"
msgstr "ÓöÜëìá åðåîåñãáóßáò: %s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:13365
+#: java/parse.y:13172
#, fuzzy, c-format
msgid "unregistered operator %s"
msgstr "ðïôÝ äåí äçëþèçêå ôï ðñüãñáììá %d\n"
-#: java/typeck.c:553
+#: java/typeck.c:530
#, fuzzy
msgid "junk at end of signature string"
msgstr "ìç ôåñìáôéæüìåío áëöáñéèìçôéêü"
-#: java/verify.c:479
+#: java/verify.c:471
#, fuzzy
msgid "bad pc in exception_table"
msgstr "Åîáßñåóç êéíçôÞò õðïäéáóôïëÞò"
-#: java/verify.c:485
-msgid "exception handler inside code that is being protected"
-msgstr ""
-
-#: java/verify.c:1395
+#: java/verify.c:1384
#, c-format
msgid "unknown opcode %d@pc=%d during verification"
msgstr ""
-#: java/verify.c:1465 java/verify.c:1478 java/verify.c:1482
+#: java/verify.c:1454 java/verify.c:1467 java/verify.c:1471
#, c-format
msgid "verification error at PC=%d"
msgstr ""
-#: java/lang-options.h:32
-msgid "Disable automatic array bounds checking"
-msgstr ""
-
-#: java/lang-options.h:34
-msgid "Disable assignability checks for stores into object arrays"
-msgstr ""
-
-#: java/lang-options.h:36
-msgid "Assume native functions are implemented using JNI"
-msgstr ""
-
-#: java/lang-options.h:38
-msgid "Replace system path"
-msgstr ""
-
-#: java/lang-options.h:40
-msgid "Set class path"
-msgstr ""
-
-#: java/lang-options.h:42
-msgid "Set class path (deprecated: use --classpath instead)"
-msgstr ""
-
-#: java/lang-options.h:44
-msgid "Choose class whose main method should be used"
-msgstr ""
-
-#: java/lang-options.h:46
-msgid "Choose input encoding (default comes from locale)"
-msgstr ""
-
-#: java/lang-options.h:48
-msgid "Add directory to class path"
-msgstr ""
-
-#: java/lang-options.h:50
-msgid "Directory where class files should be written"
-msgstr ""
-
-#: java/lang-options.h:52
-#, fuzzy
-msgid "Warn if modifiers are specified when not necessary"
-msgstr "äå ìðïñïýí íá äçëþíïíôáé áñ÷åßá üôáí ãßíåôáé ÷ñÞóç ôïõ --string"
-
-#: java/lang-options.h:54
-msgid "Warn if deprecated empty statements are found"
-msgstr ""
-
-#: java/lang-options.h:56
-msgid "Warn if .class files are out of date"
-msgstr ""
-
-#: java/lang-options.h:58
-msgid "Always check for non gcj generated classes archives"
-msgstr ""
-
-#: java/lang-options.h:60
-msgid "Never optimize static class initialization code"
-msgstr ""
-
-#: java/lang-options.h:62
-msgid "Use offset tables for virtual method calls"
-msgstr ""
-
-#: objc/objc-act.c:651
+#: objc/objc-act.c:689
#, c-format
msgid "object does not conform to the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:737 objc/objc-act.c:810
+#: objc/objc-act.c:775 objc/objc-act.c:848
#, c-format
msgid "class `%s' does not implement the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:914
+#: objc/objc-act.c:951
#, c-format
-msgid "`%s' cannot be statically allocated"
+msgid "statically allocated instance of Objective-C class `%s'"
msgstr ""
-#: objc/objc-act.c:963
+#: objc/objc-act.c:998
#, c-format
msgid "unexpected type for `id' (%s)"
msgstr ""
-#: objc/objc-act.c:968
+#: objc/objc-act.c:1003
msgid "undefined type `id', please import <objc/objc.h>"
msgstr ""
-#: objc/objc-act.c:1019
+#: objc/objc-act.c:1052
#, c-format
msgid "protocol `%s' has circular dependency"
msgstr ""
-#: objc/objc-act.c:1041 objc/objc-act.c:5301
+#: objc/objc-act.c:1074 objc/objc-act.c:5982
#, fuzzy, c-format
msgid "cannot find protocol declaration for `%s'"
msgstr "áäõíáìßá åéóáãùãÞò óôïé÷åßï ðáñáâïëÞò `%.*s'"
-#: objc/objc-act.c:1289 objc/objc-act.c:5877 objc/objc-act.c:6195
-#: objc/objc-act.c:6244 objc/objc-act.c:6280 objc-parse.y:1799
+#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6513
+#: objc/objc-act.c:6822 objc/objc-act.c:6875 objc/objc-act.c:6900
#, fuzzy, c-format
msgid "cannot find interface declaration for `%s'"
msgstr "áäõíáìßá áíÜãíùóçò êåöáëßäáò áðü ôï `%s'"
-#: objc/objc-act.c:1328
+#: objc/objc-act.c:1423
+#, c-format
+msgid "interface `%s' does not have valid constant string layout"
+msgstr ""
+
+#: objc/objc-act.c:1439
#, fuzzy, c-format
msgid "cannot find reference tag for class `%s'"
msgstr "äå âñÝèçêå ï ðñïåðåîåñãáóôÞò C: %s \n"
-#: objc/objc-act.c:2050
+#: objc/objc-act.c:2179
#, c-format
msgid "creating selector for non existant method %s"
msgstr ""
-#: objc/objc-act.c:2364
+#: objc/objc-act.c:2389
+#, fuzzy, c-format
+msgid "`%s' is not an Objective-C class name or alias"
+msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
+
+#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6769
+#: objc/objc-act.c:7059 objc/objc-act.c:7088
+msgid "Objective-C declarations may only appear in global scope"
+msgstr ""
+
+#: objc/objc-act.c:2505
#, fuzzy, c-format
msgid "cannot find class `%s'"
msgstr "áäõíáìßá åêôÝëåóçò ioctl óôï `%s'"
-#: objc/objc-act.c:2366
+#: objc/objc-act.c:2507
#, fuzzy, c-format
msgid "class `%s' already exists"
msgstr "(ôï áñ÷åßï Þäç õðÜñ÷åé)"
+#: objc/objc-act.c:2532 objc/objc-act.c:6791
+#, c-format
+msgid "`%s' redeclared as different kind of symbol"
+msgstr ""
+
#. fatal did not work with 2 args...should fix
-#: objc/objc-act.c:2473
+#: objc/objc-act.c:2680
#, c-format
msgid "cannot find interface declaration for `%s', superclass of `%s'"
msgstr ""
-#: objc/objc-act.c:2480
+#: objc/objc-act.c:2687
#, c-format
msgid "circular inheritance in interface declaration for `%s'"
msgstr ""
-#: objc/objc-act.c:3566 objc/objc-act.c:3583
+#: objc/objc-act.c:2780 objc/objc-act.c:2924 objc/objc-act.c:3024
+#: objc/objc-act.c:3200 objc/objc-act.c:3240
+msgid "Use `-fobjc-exceptions' to enable Objective-C exception syntax"
+msgstr ""
+
+#: objc/objc-act.c:2787
+msgid "`@throw;' (rethrow) used outside of a `@catch' block"
+msgstr ""
+
+#: objc/objc-act.c:3027
+msgid "`@catch' parameter is not a known Objective-C class type"
+msgstr ""
+
+#: objc/objc-act.c:3036
+msgid "Exception already handled by preceding `@catch(id)'"
+msgstr ""
+
+#: objc/objc-act.c:3041
+#, c-format
+msgid "Exception of type `%s *' already handled by `@catch (%s *)'"
+msgstr ""
+
+#: objc/objc-act.c:3206
+msgid "`@try' without `@catch' or `@finally'"
+msgstr ""
+
+#: objc/objc-act.c:3647
+msgid "%Jtype '%D' does not have a known size"
+msgstr ""
+
+#: objc/objc-act.c:4256
+#, fuzzy
+msgid "%J%s `%s'"
+msgstr " `%s'"
+
+#: objc/objc-act.c:4281 objc/objc-act.c:4300
#, fuzzy
msgid "inconsistent instance variable specification"
msgstr "Ìåôáãëùôôéóìüò ðñïäéáãñáöþí ôïðéêþí ñõèìßóåùí"
-#: objc/objc-act.c:4580
+#: objc/objc-act.c:5303
msgid "can not use an object as parameter to a method\n"
msgstr ""
-#: objc/objc-act.c:4780
+#: objc/objc-act.c:5504
#, fuzzy, c-format
-msgid "multiple declarations for method `%s'"
-msgstr "ðïëëáðëüò áñéèìüò åðéëïãþí ôçí åíôïëÞ `s'"
+msgid "multiple %s named `%c%s' found"
+msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
-#: objc/objc-act.c:4946
+# src/outer.c:102
+#: objc/objc-act.c:5721
+#, fuzzy, c-format
+msgid "no super class declared in @interface for `%s'"
+msgstr "Ï áíôéôïðïèåôçôÞò åðéöÜíåéáò Ý÷åé ôåèåß ðåñéóóüôåñï áðü ìéá öïñÜ ãéá ôï `%s'"
+
+#: objc/objc-act.c:5809
#, fuzzy, c-format
msgid "invalid receiver type `%s'"
msgstr "Ìç Ýãêõñç ðñïôåñáéüôçôá `%s'"
-#: objc/objc-act.c:4977 objc/objc-act.c:5003 objc/objc-act.c:5051
+#: objc/objc-act.c:5820
#, fuzzy, c-format
-msgid "`%s' does not respond to `%s'"
+msgid "`%s' may not respond to `%c%s'"
msgstr "ôï `%s' åßíáé ðñüãïíïò ôïõ `%s'"
-# src/outer.c:102
-#: objc/objc-act.c:4983 objc/objc-act.c:7318
+#: objc/objc-act.c:5825
#, fuzzy, c-format
-msgid "no super class declared in interface for `%s'"
-msgstr "Ï áíôéôïðïèåôçôÞò åðéöÜíåéáò Ý÷åé ôåèåß ðåñéóóüôåñï áðü ìéá öïñÜ ãéá ôï `%s'"
-
-#: objc/objc-act.c:5081
-msgid "cannot find class (factory) method"
-msgstr ""
+msgid "`%c%s' not implemented by protocol(s)"
+msgstr "Ç ëåéôïõñãßá äåí õðïóôçñßæåôáé áðü ôï ðñùôüêïëëï"
-#: objc/objc-act.c:5082 objc/objc-act.c:5126
-#, c-format
-msgid "return type for `%s' defaults to id"
+#: objc/objc-act.c:5830
+msgid "(Messages without a matching method signature"
msgstr ""
-#: objc/objc-act.c:5099
-#, fuzzy, c-format
-msgid "method `%s' not implemented by protocol"
-msgstr "Ç ëåéôïõñãßá äåí õðïóôçñßæåôáé áðü ôï ðñùôüêïëëï"
-
-#: objc/objc-act.c:5108
-msgid "return type defaults to id"
+#: objc/objc-act.c:5831
+msgid "will be assumed to return `id' and accept"
msgstr ""
-# src/install.c:562
-#: objc/objc-act.c:5125
+#: objc/objc-act.c:5832
#, fuzzy
-msgid "cannot find method"
-msgstr "áäõíáìßá äéêñÜíùóçò"
+msgid "`...' as arguments.)"
+msgstr "÷ùñßò ïñßóìáôá"
-#: objc/objc-act.c:5399
+#: objc/objc-act.c:6079
#, fuzzy, c-format
msgid "undeclared selector `%s'"
msgstr "ìç Ýãêõñïò äçëùôÞò ðåäßïõ: `%s'"
@@ -20971,323 +19822,2019 @@ msgstr "ìç Ýãêõñïò äçëùôÞò ðåäßïõ: `%s'"
#. to an instance variable. It's better to catch the cases
#. where this is done unknowingly than to support the above
#. paradigm.
-#: objc/objc-act.c:5443
+#: objc/objc-act.c:6121
#, c-format
msgid "instance variable `%s' accessed in class method"
msgstr ""
-#: objc/objc-act.c:5678
-#, fuzzy, c-format
-msgid "duplicate definition of class method `%s'"
-msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïñéóìïý locale `%s'"
-
-#: objc/objc-act.c:5684
+#: objc/objc-act.c:6327
#, fuzzy, c-format
-msgid "duplicate declaration of class method `%s'"
+msgid "duplicate declaration of method `%c%s'"
msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
-#: objc/objc-act.c:5720
+#: objc/objc-act.c:6368
+#, c-format
+msgid "duplicate interface declaration for category `%s(%s)'"
+msgstr ""
+
+#: objc/objc-act.c:6398
+#, c-format
+msgid "illegal reference type specified for instance variable `%s'"
+msgstr ""
+
+# src/shred.c:1134
+#: objc/objc-act.c:6414
#, fuzzy, c-format
-msgid "duplicate definition of instance method `%s'"
-msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïñéóìïý locale `%s'"
+msgid "instance variable `%s' has unknown size"
+msgstr "%s: ôï áñ÷åßï åßíáé ðïëý ìåãÜëï"
-#: objc/objc-act.c:5726
+#. vtable pointers are Real Bad(tm), since Obj-C cannot initialize them
+#: objc/objc-act.c:6428
#, fuzzy, c-format
-msgid "duplicate declaration of instance method `%s'"
-msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
+msgid "type `%s' has virtual member functions"
+msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
-#: objc/objc-act.c:5766
+#: objc/objc-act.c:6429
#, c-format
-msgid "duplicate interface declaration for category `%s(%s)'"
+msgid "illegal aggregate type `%s' specified for instance variable `%s'"
+msgstr ""
+
+#: objc/objc-act.c:6437
+#, fuzzy, c-format
+msgid "type `%s' has a user-defined constructor"
+msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
+
+#: objc/objc-act.c:6439
+#, fuzzy, c-format
+msgid "type `%s' has a user-defined destructor"
+msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
+
+#: objc/objc-act.c:6440
+msgid "C++ constructors and destructors will not be invoked for Objective-C fields"
msgstr ""
-#: objc/objc-act.c:5852
+#: objc/objc-act.c:6490
#, c-format
msgid "instance variable `%s' is declared private"
msgstr ""
-#: objc/objc-act.c:5899
+#: objc/objc-act.c:6539
+#, c-format
+msgid "instance variable `%s' is %s; this will be a hard error in the future"
+msgstr ""
+
+#: objc/objc-act.c:6546
#, c-format
msgid "instance variable `%s' is declared %s"
msgstr ""
-#: objc/objc-act.c:5909
+#: objc/objc-act.c:6556
msgid "static access to object of type `id'"
msgstr ""
-#: objc/objc-act.c:5934 objc/objc-act.c:6027
+#: objc/objc-act.c:6578 objc/objc-act.c:6666
#, c-format
msgid "incomplete implementation of class `%s'"
msgstr ""
-#: objc/objc-act.c:5938 objc/objc-act.c:6032
+#: objc/objc-act.c:6582 objc/objc-act.c:6671
#, fuzzy, c-format
msgid "incomplete implementation of category `%s'"
msgstr "áðïôõ÷ßá êáôÜ ôçí åããñáöÞ äåäïìÝíùí ãéá ôçí êáôçãïñßá `%s'"
-#: objc/objc-act.c:5943 objc/objc-act.c:6037
+#: objc/objc-act.c:6587 objc/objc-act.c:6676
#, c-format
msgid "method definition for `%c%s' not found"
msgstr ""
-#: objc/objc-act.c:6081
+#: objc/objc-act.c:6717
#, c-format
msgid "%s `%s' does not fully implement the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:6139 objc/objc-act.c:8249
+#: objc/objc-act.c:6775 objc/objc-act.c:8803
msgid "`@end' missing in implementation context"
msgstr ""
-#: objc/objc-act.c:6167
+#: objc/objc-act.c:6805
#, c-format
msgid "reimplementation of class `%s'"
msgstr ""
# src/request.c:806 src/request.c:912
-#: objc/objc-act.c:6209
+#: objc/objc-act.c:6836
#, fuzzy, c-format
msgid "conflicting super class name `%s'"
msgstr "Ìç áíáãíùñßóçìï üíïìá åðéöÜíåéáò `%s'"
-#: objc/objc-act.c:6224
+#: objc/objc-act.c:6838
+#, c-format
+msgid "previous declaration of `%s'"
+msgstr ""
+
+#: objc/objc-act.c:6852 objc/objc-act.c:6854
#, fuzzy, c-format
msgid "duplicate interface declaration for class `%s'"
msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
-#: objc/objc-act.c:6506
+#: objc/objc-act.c:7121
#, fuzzy, c-format
msgid "duplicate declaration for protocol `%s'"
msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
-#: objc/objc-act.c:7363
-msgid "[super ...] must appear in a method context"
+#. Add a readable method name to the warning.
+#: objc/objc-act.c:7613
+msgid "%J%s `%c%s'"
msgstr ""
-#: objc/objc-act.c:8354 objc/objc-act.c:8370
-#, c-format
-msgid "potential selector conflict for method `%s'"
+# src/outer.c:102
+#: objc/objc-act.c:7908
+#, fuzzy, c-format
+msgid "no super class declared in interface for `%s'"
+msgstr "Ï áíôéôïðïèåôçôÞò åðéöÜíåéáò Ý÷åé ôåèåß ðåñéóóüôåñï áðü ìéá öïñÜ ãéá ôï `%s'"
+
+#: objc/objc-act.c:7956
+msgid "[super ...] must appear in a method context"
msgstr ""
-#: objc-parse.y:2655
+#: objc/objc-parse.y:2700
msgid "`@end' must appear in an implementation context"
msgstr ""
-#: objc-parse.y:2931
+#: objc/objc-parse.y:2913
msgid "method definition not in class context"
msgstr ""
-#: objc/lang-options.h:27
-msgid "Dump decls to a .decl file"
+#: options.c:24
+#, fuzzy
+msgid "Display this information"
+msgstr " --help ÅìöÜíéóç áõôþí ôùí ðëçñïöïñéþí\n"
+
+#: options.c:30
+msgid "--param <param>=<value>\tSet paramter <param> to value. See below for a complete list of parameters"
msgstr ""
-#: objc/lang-options.h:29
-msgid "Generate code for GNU runtime environment"
+#: options.c:39
+msgid "-A<question>=<answer>\tAssert the <answer> to <question>. Putting '-' before <question> disables the <answer> to <question>"
+msgstr ""
+
+#: options.c:42
+#, fuzzy
+msgid "Do not discard comments"
+msgstr "Ìç ôåñìáôéóìÝíç åíôïëÞ `s'"
+
+#: options.c:45
+msgid "Do not discard comments in macro expansions"
msgstr ""
-#: objc/lang-options.h:32
-msgid "Generate code for NeXT runtime environment"
+#: options.c:48
+msgid "-D<macro>[=<val>]\tDefine a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1"
msgstr ""
-#: objc/lang-options.h:35
+#: options.c:54
+msgid "-G<number>\tPut global and static data smaller than <number> bytes into a special section (on some targets)"
+msgstr ""
+
+#: options.c:57
+msgid "Print the name of header files as they are used"
+msgstr ""
+
+#: options.c:66
+msgid "Generate make dependencies and compile"
+msgstr ""
+
+#: options.c:75
+msgid "Treat missing header files as generated files"
+msgstr ""
+
+#: options.c:81
+msgid "Like -MD but ignore system header files"
+msgstr ""
+
+#: options.c:90
+msgid "-MQ <target>\tAdd a MAKE-quoted target"
+msgstr ""
+
+#: options.c:96
+msgid "-O<number>\tSet optimization level to <number>"
+msgstr ""
+
+#: options.c:99
+msgid "Optimize for space rather than speed"
+msgstr ""
+
+#: options.c:102
+msgid "Do not generate #line directives"
+msgstr ""
+
+#: options.c:105
+msgid "-U<macro>\tUndefine <macro>"
+msgstr ""
+
+#: options.c:108
+msgid "This switch is deprecated; use -Wextra instead"
+msgstr ""
+
+#: options.c:114
+msgid "Warn about returning structures, unions or arrays"
+msgstr ""
+
+#: options.c:120
+msgid "Warn about casting functions to incompatible types"
+msgstr ""
+
+#: options.c:123
+msgid "Warn about pointer casts which increase alignment"
+msgstr ""
+
+#: options.c:126
+msgid "Warn about casts which discard qualifiers"
+msgstr ""
+
+#: options.c:129
+msgid "Warn about subscripts whose type is \"char\""
+msgstr ""
+
+#: options.c:138
+msgid "Warn about possibly confusing type conversions"
+msgstr ""
+
+#: options.c:141
+msgid "Warn when all constructors and destructors are private"
+msgstr ""
+
+#: options.c:144
+msgid "Warn when a declaration is found after a statement"
+msgstr ""
+
+#: options.c:147
+msgid "Warn if deprecated class, method, or field is used"
+msgstr ""
+
+#: options.c:150
+msgid "Warn about uses of __attribute__((deprecated)) declarations"
+msgstr ""
+
+#: options.c:153
+msgid "Warn when an optimization pass is disabled"
+msgstr ""
+
+#: options.c:156
+msgid "Warn about compile-time integer division by zero"
+msgstr ""
+
+#: options.c:159
+msgid "Warn about violations of Effective C++ style rules"
+msgstr ""
+
+#: options.c:162
+msgid "Warn about stray tokens after #elif and #endif"
+msgstr ""
+
+#: options.c:165
+msgid "Treat all warnings as errors"
+msgstr ""
+
+#: options.c:168
+msgid "Make implicit function declarations an error"
+msgstr ""
+
+#: options.c:171
+msgid "Print extra (possibly unwanted) warnings"
+msgstr ""
+
+#: options.c:174
+msgid "Warn if deprecated empty statements are found"
+msgstr ""
+
+#: options.c:177
+msgid "Warn if testing floating point numbers for equality"
+msgstr ""
+
+#: options.c:180
+msgid "Warn about printf/scanf/strftime/strfmon format string anomalies"
+msgstr ""
+
+#: options.c:183
+#, fuzzy
+msgid "Warn if passing too many arguments to a function for its format string"
+msgstr "ðÜñá ðïëëÜ ïñßóìáôá óå áõôü ôï áëöáñéèìçôéêü ìïñöÞò"
+
+#: options.c:186
+msgid "Warn about format strings that are not literals"
+msgstr ""
+
+#: options.c:189
+msgid "Warn about possible security problems with format functions"
+msgstr ""
+
+#: options.c:192
+msgid "Warn about strftime formats yielding 2-digit years"
+msgstr ""
+
+#: options.c:201
+msgid "Enable warnings about inter-procedural problems"
+msgstr ""
+
+#: options.c:207
+msgid "Warn about implicit function declarations"
+msgstr ""
+
+#: options.c:210
+msgid "Warn when a declaration does not specify a type"
+msgstr ""
+
+#: options.c:216
+msgid "Warn about variables which are initialized to themselves."
+msgstr ""
+
+#: options.c:219
+msgid "Warn when an inlined function cannot be inlined"
+msgstr ""
+
+#: options.c:222
+msgid "Warn about invalid uses of the \"offsetof\" macro"
+msgstr ""
+
+#: options.c:225
+msgid "Warn about PCH files that are found but not used"
+msgstr ""
+
+#: options.c:228
+msgid "-Wlarger-than-<number>\tWarn if an object is larger than <number> bytes"
+msgstr ""
+
+#: options.c:231
+msgid "Do not warn about using \"long long\" when -pedantic"
+msgstr ""
+
+#: options.c:234
+msgid "Warn about suspicious declarations of \"main\""
+msgstr ""
+
+#: options.c:237
+msgid "Warn about possibly missing braces around initializers"
+msgstr ""
+
+#: options.c:240
+msgid "Warn about global functions without previous declarations"
+msgstr ""
+
+#: options.c:243
+msgid "Warn about functions which might be candidates for format attributes"
+msgstr ""
+
+#: options.c:246
+msgid "Warn about functions which might be candidates for __attribute__((noreturn))"
+msgstr ""
+
+#: options.c:249
+msgid "Warn about global functions without prototypes"
+msgstr ""
+
+#: options.c:252
+#, fuzzy
+msgid "Warn about use of multi-character character constants"
+msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
+
+#: options.c:255
+msgid "Warn about \"extern\" declarations not at file scope"
+msgstr ""
+
+#: options.c:258
+msgid "Warn when non-templatized friend functions are declared within a template"
+msgstr ""
+
+#: options.c:261
+msgid "Warn about non-virtual destructors"
+msgstr ""
+
+#: options.c:267
+msgid "Warn if a C-style cast is used in a program"
+msgstr ""
+
+#: options.c:270
+msgid "Warn if an old-style parameter definition is used"
+msgstr ""
+
+#: options.c:273
+msgid "Warn if .class files are out of date"
+msgstr ""
+
+#: options.c:276
+msgid "Warn about overloaded virtual function names"
+msgstr ""
+
+#: options.c:279
+msgid "Warn when the packed attribute has no effect on struct layout"
+msgstr ""
+
+#: options.c:282
+msgid "Warn when padding is required to align structure members"
+msgstr ""
+
+#: options.c:285
+msgid "Warn about possibly missing parentheses"
+msgstr ""
+
+#: options.c:288
+msgid "Warn when converting the type of pointers to member functions"
+msgstr ""
+
+#: options.c:291
+msgid "Warn about function pointer arithmetic"
+msgstr ""
+
+#: options.c:294
+msgid "Warn if inherited methods are unimplemented"
+msgstr ""
+
+#: options.c:297
+msgid "Warn about multiple declarations of the same object"
+msgstr ""
+
+#: options.c:300
+#, fuzzy
+msgid "Warn if modifiers are specified when not necessary"
+msgstr "äå ìðïñïýí íá äçëþíïíôáé áñ÷åßá üôáí ãßíåôáé ÷ñÞóç ôïõ --string"
+
+#: options.c:303
+msgid "Warn when the compiler reorders code"
+msgstr ""
+
+#: options.c:306
+msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)"
+msgstr ""
+
+#: options.c:309
msgid "Warn if a selector has multiple methods"
msgstr ""
-#: objc/lang-options.h:39
-msgid "Do not warn if inherited methods are unimplemented"
+#: options.c:312
+msgid "Warn about possible violations of sequence point rules"
msgstr ""
-#: objc/lang-options.h:41
-msgid "Generate C header of platform specific features"
+#: options.c:315
+msgid "Warn when one local variable shadows another"
msgstr ""
-#: objc/lang-options.h:43
-msgid "Specify the name of the class for constant strings"
+#: options.c:318
+msgid "Warn about signed-unsigned comparisons"
msgstr ""
-#. This is the contribution to the `lang_options' array in gcc.c for
-#. treelang.
-#: treelang/lang-options.h:26
-msgid "(debug) trace parsing process"
+#: options.c:321
+msgid "Warn when overload promotes from unsigned to signed"
msgstr ""
-#: treelang/lang-options.h:27
-msgid "(debug) trace lexical analysis"
+#: options.c:324
+msgid "Warn about code which might break strict aliasing rules"
msgstr ""
-#: config/rs6000/darwin.h:62
-msgid " conflicting code gen style switches are used"
+#: options.c:327
+#, fuzzy
+msgid "Warn about unprototyped function declarations"
+msgstr "áäõíáìßá åéóáãùãÞò óôïé÷åßï ðáñáâïëÞò `%.*s'"
+
+#: options.c:330
+msgid "Warn about constructs with surprising meanings"
msgstr ""
-#: config/i386/mingw32.h:85 config/i386/cygwin.h:171
-msgid "shared and mdll are not compatible"
+#: options.c:333
+msgid "Warn about enumerated switches, with no default, missing a case"
msgstr ""
-#: java/lang-specs.h:33
-msgid "-fjni and -femit-class-files are incompatible"
+#: options.c:336
+msgid "Warn about enumerated switches missing a \"default:\" statement"
msgstr ""
-#: java/lang-specs.h:34
-msgid "-fjni and -femit-class-file are incompatible"
+#: options.c:339
+msgid "Warn about all enumerated switches missing a specific case"
msgstr ""
-#: java/lang-specs.h:35 java/lang-specs.h:36
-msgid "-femit-class-file should used along with -fsyntax-only"
+#: options.c:342
+msgid "Warn when synthesis behavior differs from Cfront"
msgstr ""
-#: ada/lang-specs.h:38 java/jvspec.c:77 gcc.c:716
-msgid "-pg and -fomit-frame-pointer are incompatible"
+#: options.c:345
+#, fuzzy
+msgid "Do not suppress warnings from system headers"
+msgstr "Áðïóéþðçóç ðñïçäïðïéÞóåùí êáé ìçíõìÜôùí ðëçñïöüñçóçò"
+
+#: options.c:348
+msgid "Warn about features not present in traditional C"
msgstr ""
-#: ada/lang-specs.h:41
-msgid "-c or -S required for Ada"
+#: options.c:357
+#, fuzzy
+msgid "Warn if an undefined macro is used in an #if directive"
+msgstr "%%%c: êáôåõèõíôÞñéïò ãñáììÞ ìç Ýãêõñç."
+
+#: options.c:360
+msgid "Warn about uninitialized automatic variables"
msgstr ""
-#: config/darwin.h:212
-msgid "-current_version only allowed with -dynamiclib"
+#: options.c:363
+msgid "Warn about unrecognized pragmas"
msgstr ""
-#: config/darwin.h:215
-msgid "-install_name only allowed with -dynamiclib"
+#: options.c:366
+msgid "Warn about code that will never be executed"
msgstr ""
-#: config/darwin.h:220
-msgid "-bundle not allowed with -dynamiclib"
+#: options.c:369
+msgid "Enable all -Wunused- warnings"
msgstr ""
-#: config/darwin.h:221
-msgid "-bundle_loader not allowed with -dynamiclib"
+#: options.c:372
+msgid "Warn when a function is unused"
msgstr ""
-#: config/darwin.h:222
-msgid "-client_name not allowed with -dynamiclib"
+#: options.c:375
+msgid "Warn when a label is unused"
msgstr ""
-#: config/darwin.h:225
-msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
+#: options.c:378
+msgid "Warn about macros defined in the main file that are not used"
msgstr ""
-#: config/darwin.h:226
-msgid "-force_flat_namespace not allowed with -dynamiclib"
+#: options.c:381
+msgid "Warn when a function parameter is unused"
msgstr ""
-#: config/darwin.h:228
-msgid "-keep_private_externs not allowed with -dynamiclib"
+#: options.c:384
+msgid "Warn when an expression value is unused"
msgstr ""
-#: config/darwin.h:229
-msgid "-private_bundle not allowed with -dynamiclib"
+#: options.c:387
+msgid "Warn when a variable is unused"
msgstr ""
-#: config/sparc/freebsd.h:34 config/ia64/freebsd.h:23
-#: config/alpha/freebsd.h:44 config/rs6000/sysv4.h:1107
-#: config/i386/freebsd-aout.h:213
-msgid "`-p' not supported; use `-pg' and gprof(1)"
+#: options.c:390
+msgid "Give strings the type \"array of char\""
+msgstr ""
+
+#: options.c:393
+msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead"
+msgstr ""
+
+#: options.c:396
+msgid "-aux-info <file>\tEmit declaration information into <file>"
+msgstr ""
+
+#: options.c:408
+msgid "-d<letters>\tEnable dumps from specific passes of the compiler"
+msgstr ""
+
+#: options.c:411
+msgid "-dumpbase <file>\tSet the file basename to be used for dumps"
+msgstr ""
+
+#: options.c:414
+msgid "--CLASSPATH\tDeprecated; use --classpath instead"
+msgstr ""
+
+#: options.c:429
+msgid "Enforce class member access control semantics"
+msgstr ""
+
+#: options.c:432
+msgid "Align the start of functions"
+msgstr ""
+
+#: options.c:438
+msgid "Align labels which are only reached by jumping"
+msgstr ""
+
+#: options.c:444
+msgid "Align all labels"
+msgstr ""
+
+#: options.c:450
+msgid "Align the start of loops"
+msgstr ""
+
+#: options.c:459
+msgid "Change when template instances are emitted"
+msgstr ""
+
+#: options.c:462
+msgid "Specify that arguments may alias each other and globals"
+msgstr ""
+
+#: options.c:465
+msgid "Assume arguments may alias globals but not each other"
msgstr ""
-#: config/sparc/linux64.h:197 config/sparc/linux64.h:208
-#: config/sparc/netbsd-elf.h:163 config/sparc/netbsd-elf.h:182
-#: config/sparc/sol2-bi.h:168 config/sparc/sol2-bi.h:178
+#: options.c:468
+msgid "Assume arguments alias neither each other nor globals"
+msgstr ""
+
+#: options.c:471
+msgid "Recognize the \"asm\" keyword"
+msgstr ""
+
+#: options.c:483
+msgid "Generate unwind tables that are exact at each instruction boundary"
+msgstr ""
+
+#: options.c:486
+msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements"
+msgstr ""
+
+#: options.c:489
+msgid "Backslashes in character and hollerith constants are special (not C-style)"
+msgstr ""
+
+#: options.c:492
+msgid "Delete libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:495
+msgid "Disable libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:498
+msgid "Enable libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:501
+msgid "Hide libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:504
+msgid "--bootclasspath=<path>\tReplace system path"
+msgstr ""
+
+#: options.c:507
#, fuzzy
-msgid "may not use both -m32 and -m64"
-msgstr "äåí åßíáé äõíáôü íá ðáñáëçöèåß ï ÷ñÞóôçò êáé ç ïìÜäá"
+msgid "Generate code to check bounds before indexing arrays"
+msgstr "×ñÞóç îå÷ùñéóôÞò ëáíèÜíïõóáò ìíÞìçò ãéá êÜèå ÷ñÞóôç"
+
+#: options.c:510
+msgid "Replace add, compare, branch with branch on count register"
+msgstr ""
-#: config/arm/arm.h:178
+#: options.c:513
+msgid "Use profiling information for branch probabilities"
+msgstr ""
+
+#: options.c:516
+msgid "Perform branch target load optimization before prologue / epilogue threading"
+msgstr ""
+
+#: options.c:519
+msgid "Perform branch target load optimization after prologue / epilogue threading"
+msgstr ""
+
+#: options.c:522
+#, fuzzy
+msgid "Recognize built-in functions"
+msgstr "áäõíáìßá åêôÝëåóçò ioctl óôï `%s'"
+
+#: options.c:528
+msgid "-fcall-saved-<register>\tMark <register> as being preserved across functions"
+msgstr ""
+
+#: options.c:531
+msgid "-fcall-used-<register>\tMark <register> as being corrupted by function calls"
+msgstr ""
+
+#: options.c:534
+msgid "Save registers around function calls"
+msgstr ""
+
+#: options.c:537
+msgid "Program written in strict mixed-case"
+msgstr ""
+
+#: options.c:540
+msgid "Compile as if program written in lowercase"
+msgstr ""
+
+#: options.c:543
+msgid "Preserve case used in program"
+msgstr ""
+
+#: options.c:546
+msgid "Program written in lowercase"
+msgstr ""
+
+#: options.c:549
+msgid "Program written in uppercase"
+msgstr ""
+
+#: options.c:552
+msgid "Compile as if program written in uppercase"
+msgstr ""
+
+#: options.c:555
+msgid "Check the return value of new"
+msgstr ""
+
+#: options.c:561
+msgid "--classpath=<path>\tSet class path"
+msgstr ""
+
+#: options.c:564
+msgid "Do not put uninitialized globals in the common section"
+msgstr ""
+
+#: options.c:570
+msgid "Allow the arguments of the '?' operator to have different types"
+msgstr ""
+
+#: options.c:573
+msgid "Reduce the size of object files"
+msgstr ""
+
+#: options.c:576
+msgid "Make string literals \"const char[]\" not \"char[]\""
+msgstr ""
+
+#: options.c:579
+msgid "-fconst-string-class=<name>\tUse class <name> for constant strings"
+msgstr ""
+
+#: options.c:582
+msgid "Perform a register copy-propagation optimization pass"
+msgstr ""
+
+#: options.c:585
+msgid "Perform cross-jumping optimization"
+msgstr ""
+
+#: options.c:588
+msgid "When running CSE, follow jumps to their targets"
+msgstr ""
+
+#: options.c:591
+msgid "When running CSE, follow conditional jumps"
+msgstr ""
+
+#: options.c:594
+msgid "Place data items into their own section"
+msgstr ""
+
+#: options.c:597
+msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
+msgstr ""
+
+#: options.c:600
+#, fuzzy
+msgid "Inline member functions by default"
+msgstr "Óôç óõíÜñôçóç ìÝëïò `%s':"
+
+#: options.c:603
+msgid "Defer popping functions args from stack until later"
+msgstr ""
+
+#: options.c:606
+msgid "Attempt to fill delay slots of branch instructions"
+msgstr ""
+
+#: options.c:609
+msgid "Delete useless null pointer checks"
+msgstr ""
+
+#: options.c:612
+msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics"
+msgstr ""
+
+#: options.c:615
+msgid "Allow '$' in symbol names"
+msgstr ""
+
+#: options.c:618
+#, fuzzy
+msgid "Permit '$' as an identifier character"
+msgstr "ëßóôá ìå üëá ôá ãíùóôÜ óýíïëá ÷áñáêôÞñùí"
+
+#: options.c:624
+msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
+msgstr ""
+
+#: options.c:630
+msgid "Perform DWARF2 duplicate elimination"
+msgstr ""
+
+#: options.c:633 options.c:636
+msgid "Perform unused type elimination in debug info"
+msgstr ""
+
+#: options.c:645
+msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
+msgstr ""
+
+#: options.c:648
+msgid "--encoding=<encoding>\tChoose input encoding (defaults from your locale)"
+msgstr ""
+
+#: options.c:651
+msgid "Generate code to check exception specifications"
+msgstr ""
+
+#: options.c:657
+msgid "Enable exception handling"
+msgstr ""
+
+#: options.c:660
+msgid "-fexec-charset=<cset>\tConvert all strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:663
+msgid "Perform a number of minor, expensive optimizations"
+msgstr ""
+
+#: options.c:672
+msgid "f2c-compatible code can be generated"
+msgstr ""
+
+#: options.c:675
+msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:678
+msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:681
+msgid "Enable non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:684
+msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:687
+msgid "Unsupported; generate libf2c-calling code"
+msgstr ""
+
+#: options.c:690
+msgid "Program is written in typical FORTRAN 66 dialect"
+msgstr ""
+
+#: options.c:693
+msgid "Program is written in typical Unix-f77 dialect"
+msgstr ""
+
+#: options.c:696
+msgid "Program is written in Fortran-90-ish dialect"
+msgstr ""
+
+#: options.c:699
+msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:702
+msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:705
+msgid "Enable non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:708
+msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:720
+msgid "Assume no NaNs or infinities are generated"
+msgstr ""
+
+#: options.c:723
+msgid "-ffixed-<register>\tMark <register> as being unavailable to the compiler"
+msgstr ""
+
+#: options.c:729
+msgid "ffixed-line-length-<number>\tSet the maximum line length to <number>"
+msgstr ""
+
+#: options.c:732
+msgid "Unsupported; affects code generation of arrays"
+msgstr ""
+
+#: options.c:735
+msgid "Do not store floats in registers"
+msgstr ""
+
+#: options.c:738
+msgid "Scope of for-init-statement variables is local to the loop"
+msgstr ""
+
+#: options.c:741
+msgid "Copy memory address constants into registers before use"
+msgstr ""
+
+#: options.c:744
+msgid "Always check for non gcj generated classes archives"
+msgstr ""
+
+#: options.c:747
+msgid "Copy memory operands into registers before use"
+msgstr ""
+
+#: options.c:750
+msgid "Generate code to check subscript and substring bounds"
+msgstr ""
+
+#: options.c:753
+msgid "Program is written in Fortran-90-ish free form"
+msgstr ""
+
+#: options.c:756
+msgid "Do not assume that standard C libraries and \"main\" exist"
+msgstr ""
+
+#: options.c:759
+msgid "Allow function addresses to be held in registers"
+msgstr ""
+
+#: options.c:762
+msgid "Place each function into its own section"
+msgstr ""
+
+#: options.c:765
+msgid "Perform global common subexpression elimination"
+msgstr ""
+
+#: options.c:768
+msgid "Perform redundant load after store elimination in global common subexpression elimination"
+msgstr ""
+
+#: options.c:771
+msgid "Perform enhanced load motion during global common subexpression elimination"
+msgstr ""
+
+#: options.c:774
+msgid "Perform store motion after global common subexpression elimination"
+msgstr ""
+
+#: options.c:777
+msgid "Enable fatal diagnostics about inter-procedural problems"
+msgstr ""
+
+#: options.c:780
+msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
+msgstr ""
+
+#: options.c:783
+msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:786
+msgid "Enable non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:789
+msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:792
+msgid "Recognize GNU-defined keywords"
+msgstr ""
+
+#: options.c:795
+msgid "Generate code for GNU runtime environment"
+msgstr ""
+
+#: options.c:798
+msgid "Enable guessing of branch probabilities"
+msgstr ""
+
+#: options.c:813
+msgid "Assume normal C execution environment"
+msgstr ""
+
+#: options.c:816
+msgid "Enable support for huge objects"
+msgstr ""
+
+#: options.c:819
+msgid "Process #ident directives"
+msgstr ""
+
+#: options.c:822
+msgid "Perform conversion of conditional jumps to branchless equivalents"
+msgstr ""
+
+#: options.c:825
+msgid "Perform conversion of conditional jumps to conditional execution"
+msgstr ""
+
+#: options.c:828
+msgid "Export functions even if they can be inlined"
+msgstr ""
+
+#: options.c:831
+#, fuzzy
+msgid "Emit implicit instantiations of inline templates"
+msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïñéóìïý locale `%s'"
+
+#: options.c:834
+#, fuzzy
+msgid "Emit implicit instantiations of templates"
+msgstr "äéðëüò ïñéóìüò óõíüëïõ"
+
+#: options.c:837
+msgid "Use offset tables for virtual method calls"
+msgstr ""
+
+#: options.c:840
+msgid "Do not generate .size directives"
+msgstr ""
+
+#: options.c:843
+msgid "Initialize local vars and arrays to zero"
+msgstr ""
+
+#: options.c:846
+msgid "Pay attention to the \"inline\" keyword"
+msgstr ""
+
+#: options.c:855
+msgid "-finline-limit=<number>\tLimit the size of inlined functions to <number>"
+msgstr ""
+
+#: options.c:858
+msgid "-finput-charset=<cset> Specify the default character set for source files."
+msgstr ""
+
+#: options.c:861
+msgid "Instrument function entry and exit with profiling calls"
+msgstr ""
+
+#: options.c:864
+msgid "Intrinsics letters in arbitrary cases"
+msgstr ""
+
+#: options.c:867
+msgid "Intrinsics spelled as e.g. SqRt"
+msgstr ""
+
+#: options.c:870
+msgid "Intrinsics in lowercase"
+msgstr ""
+
+#: options.c:873
+msgid "Intrinsics in uppercase"
+msgstr ""
+
+#: options.c:876
+msgid "Assume native functions are implemented using JNI"
+msgstr ""
+
+#: options.c:879
+msgid "Generate code for functions even if they are fully inlined"
+msgstr ""
+
+#: options.c:882
+msgid "Emit static const variables even if they are not used"
+msgstr ""
+
+#: options.c:888
+msgid "Give external symbols a leading underscore"
+msgstr ""
+
+#: options.c:891
+msgid "Perform loop optimizations"
+msgstr ""
+
+#: options.c:894
+msgid "Language keyword letters in arbitrary cases"
+msgstr ""
+
+#: options.c:897
+msgid "Language keywords spelled as e.g. IOStat"
+msgstr ""
+
+#: options.c:900
+msgid "Language keywords in lowercase"
+msgstr ""
+
+#: options.c:903
+msgid "Language keywords in uppercase"
+msgstr ""
+
+#: options.c:906
+msgid "Set errno after built-in math functions"
+msgstr ""
+
+#: options.c:909
+msgid "Report on permanent memory allocation"
+msgstr ""
+
+#: options.c:912
+msgid "Attempt to merge identical constants and constant variables"
+msgstr ""
+
+#: options.c:915
+msgid "Attempt to merge identical constants across compilation units"
+msgstr ""
+
+#: options.c:918
+msgid "-fmessage-length=<number>\tLimit diagnostics to <number> characters per line. 0 suppresses line-wrapping"
+msgstr ""
+
+#: options.c:921
+msgid "Delete MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:924
+msgid "Disable MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:927
+msgid "Enable MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:930
+msgid "Hide MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:933
+msgid "Force all loop invariant computations out of loops"
+msgstr ""
+
+#: options.c:936
+msgid "Don't warn about uses of Microsoft extensions"
+msgstr ""
+
+#: options.c:945
+#, fuzzy
+msgid "Use graph-coloring register allocation"
+msgstr "Áðïôõ÷ßá äÝóìåõóçò ðüñùí óõóôÞìáôïò"
+
+#: options.c:948
+msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
+msgstr ""
+
+#: options.c:951
+msgid "Assume that receivers of Objective-C messages may be nil"
+msgstr ""
+
+#: options.c:954
+msgid "Support synchronous non-call exceptions"
+msgstr ""
+
+#: options.c:963
+msgid "Enable Objective-C exception and synchronization syntax"
+msgstr ""
+
+#: options.c:966 options.c:1290
+msgid "Perform loop unrolling for all loops"
+msgstr ""
+
+#: options.c:969 options.c:1293
+msgid "Perform loop unrolling when iteration count is known"
+msgstr ""
+
+#: options.c:972
+msgid "When possible do not generate stack frames"
+msgstr ""
+
+#: options.c:975
+msgid "Take at least one trip through each iterative DO loop"
+msgstr ""
+
+#: options.c:978
+msgid "Recognize C++ kewords like \"compl\" and \"xor\""
+msgstr ""
+
+#: options.c:981
+msgid "Do the full register move optimization pass"
+msgstr ""
+
+#: options.c:984
+msgid "Optimize sibling and tail recursive calls"
+msgstr ""
+
+#: options.c:987
+msgid "Enable optimization of static class initialization code"
+msgstr ""
+
+#: options.c:990
+#, fuzzy
+msgid "Enable optional diagnostics"
+msgstr "ÁêáôÜëëçëç åíôïëÞ"
+
+#: options.c:996
+msgid "Pack structure members together without holes"
+msgstr ""
+
+#: options.c:999
+msgid "Return small aggregates in memory, not registers"
+msgstr ""
+
+#: options.c:1005
+msgid "Warn about use of (only a few for now) Fortran extensions"
+msgstr ""
+
+#: options.c:1008
+msgid "Perform loop peeling"
+msgstr ""
+
+#: options.c:1011
+msgid "Enable machine specific peephole optimizations"
+msgstr ""
+
+#: options.c:1014
+msgid "Enable an RTL peephole pass before sched2"
+msgstr ""
+
+#: options.c:1017
+msgid "Downgrade conformance errors to warnings"
+msgstr ""
+
+#: options.c:1020
+msgid "Generate position-independent code if possible"
+msgstr ""
+
+#: options.c:1023
+msgid "Generate position-independent code for executables if possible"
+msgstr ""
+
+#: options.c:1026
+msgid "Generate prefetch instructions, if available, for arrays in loops"
+msgstr ""
+
+#: options.c:1032
+msgid "Enable basic program profiling code"
+msgstr ""
+
+#: options.c:1035
+msgid "Insert arc-based program profiling code"
+msgstr ""
+
+#: options.c:1038
+msgid "Enable common options for generating profile info for profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1041
+msgid "Enable common options for performing profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1044
+msgid "Insert code to profile values of expressions"
+msgstr ""
+
+#: options.c:1050
+msgid "-frandom-seed=<string>\tMake compile reproducible using <string>"
+msgstr ""
+
+#: options.c:1053
+msgid "Strength reduce all loop general induction variables"
+msgstr ""
+
+#: options.c:1056
+msgid "Return small aggregates in registers"
+msgstr ""
+
+#: options.c:1059
+msgid "Enables a register move optimization"
+msgstr ""
+
+#: options.c:1062
+msgid "Perform a register renaming optimization pass"
+msgstr ""
+
+#: options.c:1065
+msgid "Reorder basic blocks to improve code placement"
+msgstr ""
+
+#: options.c:1068
+msgid "Reorder functions to improve code placement"
+msgstr ""
+
+#: options.c:1071
+msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime"
+msgstr ""
+
+#: options.c:1074
+msgid "Enable automatic template instantiation"
+msgstr ""
+
+#: options.c:1077
+msgid "Add a common subexpression elimination pass after loop optimizations"
+msgstr ""
+
+#: options.c:1080
+msgid "Run the loop optimizer twice"
+msgstr ""
+
+#: options.c:1083
+msgid "Disable optimizations that assume default FP rounding behavior"
+msgstr ""
+
+#: options.c:1086
+msgid "Generate run time type descriptor information"
+msgstr ""
+
+#: options.c:1089
+msgid "Enable scheduling across basic blocks"
+msgstr ""
+
+#: options.c:1092
+msgid "Allow speculative motion of non-loads"
+msgstr ""
+
+#: options.c:1095
+msgid "Allow speculative motion of some loads"
+msgstr ""
+
+#: options.c:1098
+msgid "Allow speculative motion of more loads"
+msgstr ""
+
+#: options.c:1101
+msgid "Allow premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1104
+msgid "Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1107
+msgid "-fsched-stalled-insns-dep=<number> Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1110
+msgid "-fsched-stalled-insns=<number> Set number of queued insns that can be prematurely scheduled"
+msgstr ""
+
+#: options.c:1113
+msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler"
+msgstr ""
+
+#: options.c:1116
+msgid "If scheduling post reload, do superblock scheduling"
+msgstr ""
+
+#: options.c:1119
+msgid "If scheduling post reload, do trace scheduling"
+msgstr ""
+
+#: options.c:1122
+msgid "Reschedule instructions before register allocation"
+msgstr ""
+
+#: options.c:1125
+msgid "Reschedule instructions after register allocation"
+msgstr ""
+
+#: options.c:1128
+msgid "Allow appending a second underscore to externals"
+msgstr ""
+
+#: options.c:1131
+msgid "Mark data as shared rather than private"
+msgstr ""
+
+#: options.c:1134
+msgid "Use the same size for double as for float"
+msgstr ""
+
+#: options.c:1137
+msgid "Use the narrowest integer type possible for enumeration types"
+msgstr ""
+
+#: options.c:1140
+msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\""
+msgstr ""
+
+#: options.c:1146
+msgid "Disable optimizations observable by IEEE signaling NaNs"
+msgstr ""
+
+#: options.c:1149
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed"
+msgstr ""
+
+#: options.c:1152
+msgid "Make \"char\" signed by default"
+msgstr ""
+
+#: options.c:1155
+msgid "Do not print names of program units as they are compiled"
+msgstr ""
+
+#: options.c:1158
+msgid "Convert floating point constants to single precision constants"
+msgstr ""
+
+#: options.c:1161
+msgid "Internally convert most source to lowercase"
+msgstr ""
+
+#: options.c:1164
+msgid "Internally preserve source case"
+msgstr ""
+
+#: options.c:1167
+msgid "Internally convert most source to uppercase"
+msgstr ""
+
+#: options.c:1173
+msgid "Insert stack checking code into the program"
+msgstr ""
+
+#: options.c:1179
+msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>"
+msgstr ""
+
+#: options.c:1182
+msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>"
+msgstr ""
+
+#: options.c:1185
+msgid "Display statistics accumulated during compilation"
+msgstr ""
+
+#: options.c:1188
+msgid "Enable assignability checks for stores into object arrays"
+msgstr ""
+
+#: options.c:1191
+msgid "Perform strength reduction optimizations"
+msgstr ""
+
+#: options.c:1194
+msgid "Assume strict aliasing rules apply"
+msgstr ""
+
+#: options.c:1203
+msgid "Symbol names spelled in mixed case"
+msgstr ""
+
+#: options.c:1206
+msgid "Symbol names in lowercase"
+msgstr ""
+
+#: options.c:1209
+msgid "Symbol names in uppercase"
+msgstr ""
+
+#: options.c:1212
+msgid "Check for syntax errors, then stop"
+msgstr ""
+
+#: options.c:1215
+msgid "-ftabstop=<number>\tDistance between tab stops for column reporting"
+msgstr ""
+
+#: options.c:1218
+msgid "-ftemplate-depth-<number>\tSpecify maximum template instantiation depth"
+msgstr ""
+
+#: options.c:1221
+msgid "Create data files needed by \"gcov\""
+msgstr ""
+
+#: options.c:1227
+msgid "Perform jump threading optimizations"
+msgstr ""
+
+#: options.c:1230
+msgid "Report the time taken by each compiler pass"
+msgstr ""
+
+#: options.c:1233
+msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model"
+msgstr ""
+
+#: options.c:1236
+msgid "Perform superblock formation via tail duplication"
+msgstr ""
+
+#: options.c:1239
+#, fuzzy
+msgid "Assume floating-point operations can trap"
+msgstr "Åîáßñåóç êéíçôÞò õðïäéáóôïëÞò"
+
+#: options.c:1242
+msgid "Trap for signed overflow in addition, subtraction and multiplication"
+msgstr ""
+
+#: options.c:1245
+msgid "Make prefix-radix non-decimal constants be typeless"
+msgstr ""
+
+#: options.c:1248
+msgid "Allow all ugly features"
+msgstr ""
+
+#: options.c:1251
+msgid "Hollerith and typeless can be passed as arguments"
+msgstr ""
+
+#: options.c:1254
+msgid "Allow ordinary copying of ASSIGN'ed vars"
+msgstr ""
+
+#: options.c:1257
+msgid "Dummy array dimensioned to (1) is assumed-size"
+msgstr ""
+
+#: options.c:1260
+msgid "Trailing comma in procedure call denotes null argument"
+msgstr ""
+
+#: options.c:1263
+msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
+msgstr ""
+
+#: options.c:1266
+msgid "Initialization via DATA and PARAMETER is not type-compatible"
+msgstr ""
+
+#: options.c:1269
+msgid "Allow INTEGER and LOGICAL interchangeability"
+msgstr ""
+
+#: options.c:1272
+msgid "Append underscores to externals"
+msgstr ""
+
+#: options.c:1275
+msgid "Compile whole compilation unit at a time"
+msgstr ""
+
+#: options.c:1278
+msgid "Delete libU77 intrinsics"
+msgstr ""
+
+#: options.c:1281
+msgid "Disable libU77 intrinsics"
+msgstr ""
+
+#: options.c:1284
+#, fuzzy
+msgid "Enable libU77 intrinsics"
+msgstr "ÁêáôÜëëçëç åíôïëÞ"
+
+#: options.c:1287
+msgid "Hide libU77 intrinsics"
+msgstr ""
+
+#: options.c:1296
+msgid "Allow math optimizations that may violate IEEE or ISO standards"
+msgstr ""
+
+#: options.c:1299
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned"
+msgstr ""
+
+#: options.c:1302
+msgid "Make \"char\" unsigned by default"
+msgstr ""
+
+#: options.c:1305
+msgid "Perform loop unswitching"
+msgstr ""
+
+#: options.c:1308
+msgid "Just generate unwind tables for exception handling"
+msgstr ""
+
+#: options.c:1314
+msgid "Use __cxa_atexit to register destructors"
+msgstr ""
+
+#: options.c:1320
+msgid "Add extra commentary to assembler output"
+msgstr ""
+
+#: options.c:1323
+msgid "Print g77-specific version information and run internal tests"
+msgstr ""
+
+#: options.c:1326
+#, fuzzy
+msgid "Use expression value profiles in optimizations"
+msgstr "ËÜèïò Ýêöñáóç óôçí áðïôßìçóç: %s"
+
+#: options.c:1329
+msgid "Discard unused virtual functions"
+msgstr ""
+
+#: options.c:1332
+msgid "Implement vtables using thunks"
+msgstr ""
+
+#: options.c:1335
+msgid "Program is written in VXT (Digital-like) FORTRAN"
+msgstr ""
+
+#: options.c:1338
+msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1341
+msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1344
+msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1347
+msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1353
+msgid "Emit common-like symbols as weak symbols"
+msgstr ""
+
+#: options.c:1356
+msgid "Construct webs and split unrelated uses of single variable"
+msgstr ""
+
+#: options.c:1359
+msgid "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:1362
+msgid "Generate a #line directive pointing at the current working directory"
+msgstr ""
+
+#: options.c:1365
+msgid "Assume signed arithmetic overflow wraps around"
+msgstr ""
+
+#: options.c:1368
+msgid "Store strings in writable data section"
+msgstr ""
+
+#: options.c:1371
+#, fuzzy
+msgid "Emit cross referencing information"
+msgstr "åìöÜíéóç ðëçñïöïñéþí ðñïüäïõ"
+
+#: options.c:1374
+#, fuzzy
+msgid "Print internal debugging-related information"
+msgstr ""
+"EìöÜíéóç ðëçñïöïñéþí êÜëõøçò êþäéêá.\n"
+"\n"
+
+#: options.c:1377
+msgid "Put zero initialized data in the bss section"
+msgstr ""
+
+#: options.c:1380
+msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode"
+msgstr ""
+
+#: options.c:1383
+msgid "Treat initial values of 0 like non-zero values"
+msgstr ""
+
+#: options.c:1386
+msgid "Generate debug information in default format"
+msgstr ""
+
+#: options.c:1392
+msgid "Generate debug information in COFF format"
+msgstr ""
+
+#: options.c:1395
+msgid "Generate debug information in DWARF v2 format"
+msgstr ""
+
+#: options.c:1398
+msgid "Dump declarations to a .decl file"
+msgstr ""
+
+#: options.c:1401
+msgid "Generate debug information in default extended format"
+msgstr ""
+
+#: options.c:1404
+msgid "-gnat<options>\tSpecify options to GNAT"
+msgstr ""
+
+#: options.c:1407
+msgid "Generate debug information in STABS format"
+msgstr ""
+
+#: options.c:1410
+msgid "Generate debug information in extended STABS format"
+msgstr ""
+
+#: options.c:1413
+msgid "Generate debug information in VMS format"
+msgstr ""
+
+#: options.c:1416
+msgid "Generate debug information in XCOFF format"
+msgstr ""
+
+#: options.c:1419
+msgid "Generate debug information in extended XCOFF format"
+msgstr ""
+
+#: options.c:1422
+msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1425
+msgid "-imacros <file>\tAccept definition of macros in <file>"
+msgstr ""
+
+#: options.c:1428
+msgid "-include <file>\tInclude the contents of <file> before other files"
+msgstr ""
+
+#: options.c:1431
+msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options"
+msgstr ""
+
+#: options.c:1434
+msgid "-isysroot <dir>\tSet <dir> to be the system root directory"
+msgstr ""
+
+#: options.c:1437
+msgid "-isystem <dir>\tAdd <dir> to the start of the system include path"
+msgstr ""
+
+#: options.c:1440
+msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1443
+msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path"
+msgstr ""
+
+#: options.c:1455
+msgid "Do not search standard system include directories (those specified with -isystem will still be used)"
+msgstr ""
+
+#: options.c:1458
+msgid "Do not search standard system include directories for C++"
+msgstr ""
+
+#: options.c:1464
+#, fuzzy
+msgid "-o <file>\tPlace output into <file>"
+msgstr " -o <áñ÷åßï> ÔïðïèÝôçóç ôçò åîüäïõ óôï <áñ÷åßï>\n"
+
+#: options.c:1467
+#, fuzzy
+msgid "Enable function profiling"
+msgstr "áäýíáôç ç öüñôùóç äåäïìÝíùí ðñïößë"
+
+#: options.c:1470
+msgid "Issue warnings needed for strict compliance to the standard"
+msgstr ""
+
+#: options.c:1473
+msgid "Like -pedantic but issue them as errors"
+msgstr ""
+
+#: options.c:1476
+msgid "Generate C header of platform-specific features"
+msgstr ""
+
+#: options.c:1479
+msgid "Do not display functions compiled or elapsed time"
+msgstr ""
+
+#: options.c:1482
+#, fuzzy
+msgid "Remap file names when including files"
+msgstr "Ìç ïñéóìÝíï üíïìá %s"
+
+#: options.c:1485
+msgid "Conform to the ISO 1998 C++ standard"
+msgstr ""
+
+#: options.c:1488
+msgid "Conform to the ISO 1990 C standard"
+msgstr ""
+
+#: options.c:1491
+msgid "Conform to the ISO 1999 C standard"
+msgstr ""
+
+#: options.c:1494 options.c:1515 options.c:1518
+msgid "Deprecated in favor of -std=c99"
+msgstr ""
+
+#: options.c:1497
+msgid "Conform to the ISO 1998 C++ standard with GNU extensions"
+msgstr ""
+
+#: options.c:1500
+msgid "Conform to the ISO 1990 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1503
+msgid "Conform to the ISO 1999 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1506
+msgid "Deprecated in favor of -std=gnu99"
+msgstr ""
+
+#: options.c:1509
+msgid "Deprecated in favor of -std=c89"
+msgstr ""
+
+#: options.c:1512
+msgid "Conform to the ISO 1990 C standard as amended in 1994"
+msgstr ""
+
+#: options.c:1521
+msgid "Enable traditional preprocessing"
+msgstr ""
+
+#: options.c:1524
+msgid "-trigraphs\tSupport ISO C trigraphs"
+msgstr ""
+
+#: options.c:1527
+msgid "Do not predefine system-specific and GCC-specific macros"
+msgstr ""
+
+#: options.c:1530
+msgid "Enable verbose output"
+msgstr ""
+
+#: options.c:1536
+#, fuzzy
+msgid "Suppress warnings"
+msgstr "%s: ðñïåéäïðïßçóç: "
+
+#: config/rs6000/darwin.h:98
+msgid " conflicting code gen style switches are used"
+msgstr ""
+
+#: gcc.c:743
+msgid "GCC does not support -C or -CC without -E"
+msgstr ""
+
+#: gcc.c:767 java/jvspec.c:80 ada/lang-specs.h:34
+msgid "-pg and -fomit-frame-pointer are incompatible"
+msgstr ""
+
+#: gcc.c:915
+msgid "-E required when input is from standard input"
+msgstr ""
+
+#: config/arm/arm.h:197
#, fuzzy
msgid "-mapcs-26 and -mapcs-32 may not be used together"
msgstr ""
"Ïé åðéëïãÝò ãéá íá åêôõðùèåß êáé íá ïñéóôåß ç þñá äåí ìðïñïýí íá\n"
"÷ñçóéìïðïéçèïýí ðáñÜëëçëá."
-#: config/arm/arm.h:180
+#: config/arm/arm.h:199
#, fuzzy
msgid "-msoft-float and -mhard_float may not be used together"
msgstr ""
"Ïé åðéëïãÝò ãéá íá åêôõðùèåß êáé íá ïñéóôåß ç þñá äåí ìðïñïýí íá\n"
"÷ñçóéìïðïéçèïýí ðáñÜëëçëá."
-#: config/arm/arm.h:182
+#: config/arm/arm.h:201
#, fuzzy
msgid "-mbig-endian and -mlittle-endian may not be used together"
msgstr ""
"Ïé åðéëïãÝò ãéá íá åêôõðùèåß êáé íá ïñéóôåß ç þñá äåí ìðïñïýí íá\n"
"÷ñçóéìïðïéçèïýí ðáñÜëëçëá."
-#: config/i386/sco5.h:195
-#, fuzzy
-msgid "-pg not supported on this platform"
-msgstr "ðñïåéäïðïßçóç: ôï --pid=PID äåí õðïóôçñßæåôáé óå áõôü ôï óýóôçìá"
+#: config/i386/mingw32.h:58 config/i386/cygwin.h:70
+msgid "shared and mdll are not compatible"
+msgstr ""
-#: config/i386/sco5.h:196
-#, fuzzy
-msgid "-p and -pp specified - pick one"
-msgstr "ìç ïñéóìÝíï"
+#: config/mips/mips.h:975
+msgid "-pipe is not supported"
+msgstr "ôï -pipe äåí õðïóôçñßæåôáé"
-#: config/i386/sco5.h:271
-#, fuzzy
-msgid "-G and -static are mutually exclusive"
-msgstr "\"Æþíç %s\" ãñáììÞ êáé åðéëïãÞ -l åßíáé áìïéâáßùò áðïêëåéüìåíá"
+#: config/mips/mips.h:1130 config/arc/arc.h:63
+msgid "may not use both -EB and -EL"
+msgstr ""
-#: f/lang-specs.h:38 gcc.c:689
-msgid "GNU C does not support -C without using -E"
+#: config/darwin.h:215
+msgid "-current_version only allowed with -dynamiclib"
msgstr ""
-#: f/lang-specs.h:39 gcc.c:690
-msgid "GNU C does not support -CC without using -E"
+#: config/darwin.h:218
+msgid "-install_name only allowed with -dynamiclib"
msgstr ""
-#: config/mcore/mcore.h:60
-msgid "choose either big or little endian, not both"
+#: config/darwin.h:223
+msgid "-bundle not allowed with -dynamiclib"
msgstr ""
-#: config/mcore/mcore.h:63
-msgid "choose either m340 or m210 not both"
+#: config/darwin.h:224
+msgid "-bundle_loader not allowed with -dynamiclib"
msgstr ""
-#: config/mcore/mcore.h:64
-msgid "the m210 does not have little endian support"
+#: config/darwin.h:225
+msgid "-client_name not allowed with -dynamiclib"
msgstr ""
-#: config/i386/cygwin.h:115
-msgid "mno-cygwin and mno-win32 are not compatible"
+#: config/darwin.h:228
+msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:229
+msgid "-force_flat_namespace not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:231
+msgid "-keep_private_externs not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:232
+msgid "-private_bundle not allowed with -dynamiclib"
msgstr ""
#: config/vax/netbsd-elf.h:42
msgid "The -shared option is not currently supported for VAX ELF."
msgstr ""
+#: config/i386/sco5.h:191
+#, fuzzy
+msgid "-pg not supported on this platform"
+msgstr "ðñïåéäïðïßçóç: ôï --pid=PID äåí õðïóôçñßæåôáé óå áõôü ôï óýóôçìá"
+
+#: config/i386/sco5.h:192
+#, fuzzy
+msgid "-p and -pp specified - pick one"
+msgstr "ìç ïñéóìÝíï"
+
+#: config/i386/sco5.h:266
+#, fuzzy
+msgid "-G and -static are mutually exclusive"
+msgstr "\"Æþíç %s\" ãñáììÞ êáé åðéëïãÞ -l åßíáé áìïéâáßùò áðïêëåéüìåíá"
+
#: treelang/lang-specs.h:52
msgid "-pg or -p and -fomit-frame-pointer are incompatible"
msgstr ""
-#: gcc.c:847
-msgid "-E required when input is from standard input"
+#: f/lang-specs.h:38
+#, fuzzy
+msgid "GCC does not support -C without using -E"
+msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
+
+#: f/lang-specs.h:39
+#, fuzzy
+msgid "GCC does not support -CC without using -E"
+msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
+
+#: config/mips/r3900.h:35
+#, fuzzy
+msgid "-mhard-float not supported"
+msgstr "Ôï ðñùôüêïëëï äåí õðïóôçñßæåôáé"
+
+#: config/mips/r3900.h:37
+msgid "-msingle-float and -msoft-float can not both be specified"
msgstr ""
-#: gcc.c:851
-msgid "compilation of header file requested"
+#: config/rs6000/sysv4.h:1094 config/i386/freebsd-aout.h:215
+msgid "`-p' not supported; use `-pg' and gprof(1)"
msgstr ""
+#: config/sparc/linux64.h:208 config/sparc/linux64.h:219
+#: config/sparc/netbsd-elf.h:140 config/sparc/netbsd-elf.h:159
+#: config/sparc/sol2-bi.h:195 config/sparc/sol2-bi.h:205
+#, fuzzy
+msgid "may not use both -m32 and -m64"
+msgstr "äåí åßíáé äõíáôü íá ðáñáëçöèåß ï ÷ñÞóôçò êáé ç ïìÜäá"
+
#: config/vax/vax.h:50 config/vax/vax.h:51
#, fuzzy
msgid "profiling not supported with -mg\n"
msgstr "Ç ëåéôïõñãßá äåí õðïóôçñßæåôáé"
-#: config/mips/mips.h:954
-msgid "-pipe is not supported"
-msgstr "ôï -pipe äåí õðïóôçñßæåôáé"
+#: config/i386/cygwin.h:29
+msgid "mno-cygwin and mno-win32 are not compatible"
+msgstr ""
-#: config/mips/mips.h:1156 config/arc/arc.h:63
-msgid "may not use both -EB and -EL"
+#: ada/lang-specs.h:36
+msgid "one of -c, -S, -gnatc, -gnatz, or -gnats is required for Ada"
msgstr ""
-#: config/mips/r3900.h:35
+#: config/sparc/sol2-bi.h:167 config/sparc/sol2-bi.h:172
+#: config/sparc/sol2-gld-bi.h:17 config/sparc/sol2-gld-bi.h:22
#, fuzzy
-msgid "-mhard-float not supported"
-msgstr "Ôï ðñùôüêïëëï äåí õðïóôçñßæåôáé"
+msgid "does not support multilib"
+msgstr "áñ÷åßá fifo äåí õðïóôçñßæïíôáé"
-#: config/mips/r3900.h:37
-msgid "-msingle-float and -msoft-float can not both be specified"
+#: java/lang-specs.h:34
+msgid "-fjni and -femit-class-files are incompatible"
+msgstr ""
+
+#: java/lang-specs.h:35
+msgid "-fjni and -femit-class-file are incompatible"
+msgstr ""
+
+#: java/lang-specs.h:36 java/lang-specs.h:37
+msgid "-femit-class-file should used along with -fsyntax-only"
+msgstr ""
+
+#: config/mcore/mcore.h:65
+msgid "the m210 does not have little endian support"
msgstr ""
#, fuzzy
@@ -21295,6 +21842,18 @@ msgstr ""
#~ msgstr "Üãíùóôï óåô `%s'"
#, fuzzy
+#~ msgid "a parameter"
+#~ msgstr "êáêü üñéóìá"
+
+#, fuzzy
+#~ msgid "array size missing in `%s'"
+#~ msgstr "óöÜëìá êáôÜ ôï êëåßóéìï ôçò åéóüäïõ `%s'"
+
+#, fuzzy
+#~ msgid "duplicate member `%s'"
+#~ msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
+
+#, fuzzy
#~ msgid "null format string"
#~ msgstr "Ç áëõóßäá ìïñöÞò äåí åßíáé Ýãêõñç: `%s'"
@@ -21312,18 +21871,89 @@ msgstr ""
#~ "ï äçëùìÝíïò áñéèìüò bytes `%s' åßíáé ìåãáëýôåñïò áðü ôï ìÝãéóôï\n"
#~ "ðïõ ìðïñåß íá áíáðáñáóôáèåß áðü ôï ôýðï äåäïìÝíùí `long'"
+#, fuzzy
+#~ msgid "ignoring invalid multibyte character"
+#~ msgstr "Ìç Ýãêõñï Þ áóõìðëÞñùôï multibyte Þ ðëáôýò ÷áñáêôÞñáò"
+
+#~ msgid "parse error"
+#~ msgstr "óöÜëìá åðåîåñãáóßáò"
+
#~ msgid "execvp %s"
#~ msgstr "execvp %s"
+# src/getopt1.c:132
+# src/getopt1.c:132
+#~ msgid "open %s"
+#~ msgstr "open %s"
+
+#, fuzzy
+#~ msgid "section pointer missing"
+#~ msgstr "ïñéóìüò äéêáéùìÜôùí óôï %s"
+
+#, fuzzy
+#~ msgid "no symbol table found"
+#~ msgstr "äåí äþèçêå óõìâïëéêü üíïìá"
+
+#, fuzzy
+#~ msgid ""
+#~ "writing load commands.\n"
+#~ "\n"
+#~ msgstr "¸÷åé ðáñáëçöèåß åíôïëÞ"
+
+#~ msgid "close %s"
+#~ msgstr "close %s"
+
+#, fuzzy
+#~ msgid "bad magic number"
+#~ msgstr "ÅóöáëìÝíïò áñéèìüò áñ÷åßïõ"
+
+#~ msgid "bad header version"
+#~ msgstr "åóöáëìÝíç Ýêäïóç êåöáëßäáò"
+
+#, fuzzy
+#~ msgid "old raw header file"
+#~ msgstr "Äåí åßíáé åðþíõìï áñ÷åßï"
+
+# src/request.c:37
+#~ msgid "fstat %s"
+#~ msgstr "fstat %s"
+
+#~ msgid "lseek %s 0"
+#~ msgstr "lseek %s 0"
+
+#~ msgid "read %s"
+#~ msgstr "read %s"
+
+#~ msgid "msync %s"
+#~ msgstr "msync %s"
+
+#~ msgid "munmap %s"
+#~ msgstr "munmap %s"
+
+#~ msgid "write %s"
+#~ msgstr "write %s"
+
#, fuzzy
#~ msgid "integer constant out of range"
#~ msgstr "ó÷åôéêÞ èÝóç áñ÷åßïõ åßíáé åêôüò ïñßùí"
#, fuzzy
+#~ msgid "invalid character '%c' in #if"
+#~ msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò `%c' óôï ôýðï áëöáñéèìçôéêïý `%s'"
+
+#, fuzzy
+#~ msgid "invalid character '\\%03o' in #if"
+#~ msgstr "ìç Ýãêõñïò ÷áñáêôÞñáò `%c' óôï ôýðï áëöáñéèìçôéêïý `%s'"
+
+#, fuzzy
#~ msgid "missing binary operator"
#~ msgstr "Áãíùóôïò äõáäéêüò ÷åéñéóôÞò."
#, fuzzy
+#~ msgid "%s: Not a directory"
+#~ msgstr "Äåí åßíáé êáôÜëïãïò"
+
+#, fuzzy
#~ msgid "changing search order for system directory \"%s\""
#~ msgstr "áäõíáìßá áëëáãÞò óôï êáôÜëïãï \"%s\""
@@ -21340,8 +21970,8 @@ msgstr ""
#~ msgstr "ïñéóìüò äéêáéùìÜôùí óôï %s"
#, fuzzy
-#~ msgid "target missing after %s"
-#~ msgstr "Áñ÷Þ áñ÷åßïõ %s\n"
+#~ msgid "backslash-newline at end of file"
+#~ msgstr "ìç Ýãêõñç äéáöõãÞ ìå ðéóùêÜèåôï óôï ôÝëïò ôïõ áëöáñéèìçôéêïý"
#, fuzzy
#~ msgid "possible start of unterminated string literal"
@@ -21350,21 +21980,31 @@ msgstr ""
#~ msgid "multi-line string literals are deprecated"
#~ msgstr "äå óõíßóôáôáé ðéá ç ÷ñÞóç áëöáñéèìçôéêþí óôáèåñþí ðïëëáðëþí ãñáììþí"
+#, fuzzy
+#~ msgid "no newline at end of file"
+#~ msgstr "%s: ðñüùñï ôÝëïò áñ÷åßïõ"
+
+#, fuzzy
+#~ msgid "unterminated #%s"
+#~ msgstr "ìç ôåñìáôéæüìåío áëöáñéèìçôéêü"
+
+#, fuzzy
+#~ msgid "\"%s\" redefined"
+#~ msgstr "áüñéóôï"
+
+#, fuzzy
+#~ msgid "this is the location of the previous definition"
+#~ msgstr "áõôÞ åßíáé ç èÝóç ôïõ ðñþôïõ ïñéóìïý"
+
#~ msgid "invalid option %s"
#~ msgstr "ìç Ýãêõñç åðéëïãÞ %s"
#~ msgid "%s:%d: warning: "
#~ msgstr "%s:%d: ðñïåéäïðïßçóç: "
-#~ msgid "%s: warning: "
-#~ msgstr "%s: ðñïåéäïðïßçóç: "
-
-#~ msgid "sorry, not implemented: "
-#~ msgstr "óõããíþìç, ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß: "
-
#, fuzzy
-#~ msgid "Internal compiler error in %s, at %s:%d"
-#~ msgstr "åóùôåñéêü óöÜëìá óôï %s, ãñáììÞ %u"
+#~ msgid "can't get current directory"
+#~ msgstr "Äåí åßíáé äõíáôüí íá ëçöèåß ï ôñÝ÷ùí êáôÜëïãïò."
#~ msgid "Copyright (C) 2002 Free Software Foundation, Inc.\n"
#~ msgstr "ÐíåõìáôéêÜ Äéêáéþìáôá (C) 2002 Free Software Foundation, Inc.\n"
@@ -21382,15 +22022,30 @@ msgstr ""
#~ msgstr "ìç Ýãêõñç äéáìüñöùóç óõíôüìåõóçò"
#, fuzzy
-#~ msgid "No branches in function %s\n"
-#~ msgstr "Äåí âñÝèçêáí ôáéñéÜóìáôá óôç ìïñöÞ `%s'.\n"
+#~ msgid "Could not open basic block file %s.\n"
+#~ msgstr "Äåí ìðüñåóá íá áíïßîù ôï áñ÷åßï %s"
#, fuzzy
-#~ msgid "conversion from NaN to int"
-#~ msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå"
+#~ msgid "Could not open program flow graph file %s.\n"
+#~ msgstr "Áäýíáôç ç äçìéïõñãßá áñ÷åßïõ êáôáãñáöþí \"%s\""
#, fuzzy
-#~ msgid "conversion from NaN to unsigned int"
+#~ msgid "No executable code associated with file %s.\n"
+#~ msgstr "ÊáìéÜ äéåýèõíóç äåí óõíäÝåôáé ìå ôï üíïìá"
+
+#, fuzzy
+#~ msgid "didn't use all bb entries of graph, function %s\n"
+#~ msgstr "äéáãñáöÞ üëùí ôùí åããñáöþí ôïõ êáôáëüãïõ %s\n"
+
+#, fuzzy
+#~ msgid "Could not open source file %s.\n"
+#~ msgstr "Äåí ìðüñåóá íá áíïßîù ôï áñ÷åßï %s"
+
+#~ msgid "Creating %s.\n"
+#~ msgstr "Äçìéïõñãßá ôïõ %s.\n"
+
+#, fuzzy
+#~ msgid "conversion from NaN to int"
#~ msgstr "ç ìåôáôñïðÞ áðü `%s' óå `%s' äåí õðïóôçñßæåôå"
#, fuzzy
@@ -21402,10 +22057,6 @@ msgstr ""
#~ msgstr "%s: óöÜëìá áíÜãíùóçò"
#, fuzzy
-#~ msgid "%s: overflow range error"
-#~ msgstr "%s: óöÜëìá åããñáöÞò"
-
-#, fuzzy
#~ msgid "%s: underflow range error"
#~ msgstr "%s: óöÜëìá åããñáöÞò"
@@ -21414,15 +22065,27 @@ msgstr ""
#~ msgstr "óöÜëìá óôçí áíÜãíùóç åéóüäïõ: %s"
#, fuzzy
+#~ msgid "unrecognized option `%s'"
+#~ msgstr "ìç áíáãíùñßóçìç åðéëïãÞ `-%c'"
+
+#, fuzzy
+#~ msgid "`%s': unknown or unsupported -g option"
+#~ msgstr "%s: Üãíùóôï/ìç õðïóôçñéæüìåíï åßäïò áñ÷åßïõ.\n"
+
+#, fuzzy
+#~ msgid "invalid --param option: %s"
+#~ msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
+
+#, fuzzy
#~ msgid "invalid character constant in #if"
#~ msgstr "ìç Ýãêõñïò óôáèåñüò ÷áñáêôÞñáò óôï áëöáñéèìéôéêü"
#, fuzzy
-#~ msgid "octal character constant does not fit in a byte"
-#~ msgstr "ìç Ýãêõñïò óôáèåñüò ÷áñáêôÞñáò óôï áëöáñéèìéôéêü"
+#~ msgid "invalid token in expression"
+#~ msgstr "Ìç Ýãêõñç êáíïíéêÞ Ýêöñáóç"
#, fuzzy
-#~ msgid "hex character constant does not fit in a byte"
+#~ msgid "octal character constant does not fit in a byte"
#~ msgstr "ìç Ýãêõñïò óôáèåñüò ÷áñáêôÞñáò óôï áëöáñéèìéôéêü"
#, fuzzy
@@ -21498,6 +22161,10 @@ msgstr ""
#~ msgstr "Üãíùóôïò ÷áñáêôÞñáò `%s'"
#, fuzzy
+#~ msgid "invalid %%Q value"
+#~ msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#, fuzzy
#~ msgid "invalid %%V value"
#~ msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
@@ -21519,8 +22186,20 @@ msgstr ""
#~ msgstr "¸ãêõñá ïñßóìáôá åßíáé:"
#, fuzzy
-#~ msgid "Use mcount for profiling"
-#~ msgstr "áäýíáôç ç öüñôùóç äåäïìÝíùí ðñïößë"
+#~ msgid "invalid %%o value"
+#~ msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#, fuzzy
+#~ msgid "invalid %%s/S value"
+#~ msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#, fuzzy
+#~ msgid "invalid %%B value"
+#~ msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#, fuzzy
+#~ msgid "invalid option `-mshort-data-%s'"
+#~ msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
#, fuzzy
#~ msgid "-mips%d not supported"
@@ -21531,9 +22210,39 @@ msgstr ""
#~ msgstr "Ôï ai_socktype äåí õðïóôçñßæåôáé"
#, fuzzy
+#~ msgid "invalid option `entry%s'"
+#~ msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
+
+#, fuzzy
+#~ msgid "invalid %%z value"
+#~ msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#, fuzzy
+#~ msgid "invalid %%Z value"
+#~ msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#, fuzzy
+#~ msgid "invalid %%j value"
+#~ msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
+#, fuzzy
#~ msgid "-fdata-sections not supported on AIX"
#~ msgstr "Ç ëåéôïõñãßá äåí õðïóôçñßæåôáé"
+#~ msgid "64 bit mode"
+#~ msgstr "êáôÜóôáóç 64 bit"
+
+#~ msgid "31 bit mode"
+#~ msgstr "êáôÜóôáóç 31 bit"
+
+#, fuzzy
+#~ msgid "Use the Xtensa boolean register option"
+#~ msgstr "ìç ôåñìáôéæüìåíï üíïìá âÜñïõò"
+
+#, fuzzy
+#~ msgid "invalid declarator"
+#~ msgstr "ìç Ýãêõñïò ÷ñÞóôçò"
+
#, fuzzy
#~ msgid "`%D' as declarator"
#~ msgstr "ôï `%s' åßíáé êáôÜëïãïò"
@@ -21546,6 +22255,70 @@ msgstr ""
#~ msgstr " %#D"
#, fuzzy
+#~ msgid "`%D' is not a namespace"
+#~ msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+
+#, fuzzy
+#~ msgid "`%T' does not have a class or union named `%D'"
+#~ msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+
+#, fuzzy
+#~ msgid "`%T' is not a class or union type"
+#~ msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+
+#, fuzzy
+#~ msgid "`%s' not supported by %s"
+#~ msgstr "Äåí õðïóôçñßæåôáé"
+
+#, fuzzy
+#~ msgid "%s: In instantiation of `%s':\n"
+#~ msgstr "%s: Ìç Ýãêõñç ñýèìéóç `%s'.\n"
+
+#, fuzzy
+#~ msgid "invalid use of member `%D'"
+#~ msgstr "ìç Ýãêõñïò áñéèìüò ðåäßïõ: `%s'"
+
+#, fuzzy
+#~ msgid "type name expected before `&'"
+#~ msgstr "ÅããñáöÞ ïíïìÜôùí ôùí åðéëåãìÝíùí êáôçãïñéþí"
+
+#, fuzzy
+#~ msgid "`%T' is not a valid expression"
+#~ msgstr "%s' äåí åßíáé éó÷ýùí èåôéêüò áêÝñáéïò."
+
+# src/dfa.c:962
+# src/dfa.c:970
+#, fuzzy
+#~ msgid "sigof type specifier"
+#~ msgstr "Äåí ïñßóôçêå óõíôáêôéêü"
+
+#, fuzzy
+#~ msgid "`%T' is not a class or namespace"
+#~ msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+
+#, fuzzy
+#~ msgid "no type `%D' in `%T'"
+#~ msgstr "Ìç Ýãêõñç åðéëïãÞ `%s'"
+
+#, fuzzy
+#~ msgid "parse error in method specification"
+#~ msgstr "óõíôáêôéêü óöÜëìá óôïí êáèïñéóìü óåéñÜò"
+
+#, fuzzy
+#~ msgid "invalid type `%T' for default argument to `%T'"
+#~ msgstr "Ìç Ýãêõñç áêÝñáéá ðáñÜìåôñïò `%s'"
+
+#~ msgid "%s before `%c'"
+#~ msgstr "%s ðñéí áðü `%c'"
+
+#~ msgid "%s before `\\%o'"
+#~ msgstr "%s ðñéí áðü `\\%o'"
+
+#, fuzzy
+#~ msgid "%s before `%s' token"
+#~ msgstr "%s (ãéá êáíïíéêÞ Ýêöñáóç `%s')"
+
+#, fuzzy
#~ msgid "invalid use of type decl `%#D' as expression"
#~ msgstr "Ìç Ýãêõñç ðñïðïñåõüìåíç êáíïíéêÞ Ýêöñáóç"
@@ -21562,10 +22335,39 @@ msgstr ""
#~ msgstr "Ìç Ýãêõñç çìåñïìçíßá `%s'."
#, fuzzy
+#~ msgid "ignoring pragma: %s"
+#~ msgstr "áãíïïýíôáé üëá ôá ïñßóìáôá"
+
+#, fuzzy
+#~ msgid "Set the maximum line length"
+#~ msgstr "åëÜ÷éóôï ìÝãåèïò áëöáñéèìçôéêïý"
+
+#, fuzzy
#~ msgid "internal error - use of undefined type"
#~ msgstr "åóùôåñéêü óöÜëìá óôï %s, ãñáììÞ %u"
#, fuzzy
+#~ msgid "multiple declarations for method `%s'"
+#~ msgstr "ðïëëáðëüò áñéèìüò åðéëïãþí ôçí åíôïëÞ `s'"
+
+# src/install.c:562
+#, fuzzy
+#~ msgid "cannot find method"
+#~ msgstr "áäõíáìßá äéêñÜíùóçò"
+
+#, fuzzy
+#~ msgid "duplicate definition of class method `%s'"
+#~ msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïñéóìïý locale `%s'"
+
+#, fuzzy
+#~ msgid "duplicate definition of instance method `%s'"
+#~ msgstr "áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïñéóìïý locale `%s'"
+
+#, fuzzy
+#~ msgid "duplicate declaration of instance method `%s'"
+#~ msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
+
+#, fuzzy
#~ msgid "-p option not supported: use -pg instead"
#~ msgstr "ôï -C äåí óõíßóôáôáé ðéá, ÷ñçóéìïðïéÞóôå -Z"
@@ -21686,6 +22488,10 @@ msgstr ""
#~ msgid "missing array tuple elements %s : %s"
#~ msgstr "Ëåßðåé ðáñÜìåôñïò ãéá `%s'"
+#, fuzzy
+#~ msgid "`%s' must not be declared readonly"
+#~ msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
+
# src/request.c:263
#, fuzzy
#~ msgid "no initialization allowed for `%s'"
@@ -21708,21 +22514,17 @@ msgstr ""
#~ msgstr "äéðëü êëåéäß"
#, fuzzy
-#~ msgid "duplicate grant for `%s'"
-#~ msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
+#~ msgid "mode of `%s' is not a mode"
+#~ msgstr "Ôï `%s' äåí åßíáé êáôÜëïãïò."
#, fuzzy
-#~ msgid "previous grant for `%s'"
-#~ msgstr "äéáôÞñçóç ùñþí óôï %s"
+#~ msgid "duplicate grant for `%s'"
+#~ msgstr "äéðëü üíïìá ÷áñáêôÞñá `%s'"
#, fuzzy
#~ msgid "duplicate definition `%s'"
#~ msgstr "äéðëüò ïñéóìüò óõíüëïõ"
-#, fuzzy
-#~ msgid "previous definition of `%s'"
-#~ msgstr "êáíÝíáò ïñéóìüò ôïõ `UNDEFINED'"
-
# src/main.c:785
#, fuzzy
#~ msgid "ambiguous choice for seize `%s' -"
@@ -21733,10 +22535,6 @@ msgstr ""
#~ msgstr "ÅÓÙÔÅÑÉÊÏ ÓÖÁËÌÁ: ËÜèïò åßäïò áíôéêåéìÝíïõ óôï expand_token ()"
#, fuzzy
-#~ msgid "conditional expression not allowed in %s"
-#~ msgstr "ËÜèïò Ýêöñáóç óôçí áðïôßìçóç (ëÜèïò åßóïäïò): %s"
-
-#, fuzzy
#~ msgid "internal error: unknown expression mode in %s"
#~ msgstr "åóùôåñéêü óöÜëìá óôï %s, ãñáììÞ %u"
@@ -21826,10 +22624,6 @@ msgstr ""
#~ msgstr "ôï `%s' äåí åßíáé êáíïíéêü áñ÷åßï"
#, fuzzy
-#~ msgid "can't write to %s"
-#~ msgstr "áäõíáìßá åããñáöÞò áðïôåëÝóìáôïò: %s"
-
-#, fuzzy
#~ msgid "FORBID is not yet implemented"
#~ msgstr "Ç ëåéôïõñãßá äåí Ý÷åé õëïðïéçèåß"
@@ -21903,10 +22697,6 @@ msgstr ""
#~ msgstr "ÊáíÝíáò ÷áñáêôÞñáò äåí ìåôáôñÝðåôáé óå %3d"
#, fuzzy
-#~ msgid "too many arguments for this format string"
-#~ msgstr "ðÜñá ðïëëÜ ïñßóìáôá óå áõôü ôï áëöáñéèìçôéêü ìïñöÞò"
-
-#, fuzzy
#~ msgid "missing index expression"
#~ msgstr "ðáñÜëçøç ïñßóìáôïò áñ÷åßïõ"
@@ -21931,6 +22721,10 @@ msgstr ""
#~ msgstr "ìç áíáãíùñßóçìç åðéëïãÞ `-%c'"
#, fuzzy
+#~ msgid "invalid control sequence"
+#~ msgstr "ìç Ýãêõñï üíïìá ìÞíá"
+
+#, fuzzy
#~ msgid "unterminated string literal"
#~ msgstr "ìç ôåñìáôéæüìåío áëöáñéèìçôéêü"
@@ -21951,18 +22745,10 @@ msgstr ""
#~ msgstr "áíáìåíüôáí óôáèåñÜ Þ ðñïóäéïñéóôÞò"
#, fuzzy
-#~ msgid "BY expression is negative or zero"
-#~ msgstr "ËÜèïò Ýêöñáóç óôçí áðïôßìçóç: %s"
-
-#, fuzzy
#~ msgid "start label '%s' does not match end label '%s'"
#~ msgstr "ôï áñ÷åßï äåäïìÝíùí ðñïößë `%s' äåí ôáéñéÜæåé ìå ôï äéáìïéñáæüìåíï áíôéêåßìåíï `%s'"
#, fuzzy
-#~ msgid "expected a name here"
-#~ msgstr "%s: áíáìåíüôáí áñéèìçôéêÞ ôéìÞ."
-
-#, fuzzy
#~ msgid "expected a name string here"
#~ msgstr "%s: áíáìåíüôáí áñéèìçôéêÞ ôéìÞ."
@@ -21987,18 +22773,10 @@ msgstr ""
#~ msgstr "%s: áíáìåíüôáí áñéèìçôéêÞ ôéìÞ."
#, fuzzy
-#~ msgid "syntax error in parameter name list"
-#~ msgstr "óõíôáêôéêü óöÜëìá óôïí ïñéóìü êëÜóçò ÷áñáêôÞñùí"
-
-#, fuzzy
#~ msgid "syntax error while parsing signal definition statement"
#~ msgstr "óõíôáêôéêü óöÜëìá óôï ïñéóìü ôïõ %s: %s"
#, fuzzy
-#~ msgid "expression is not an action"
-#~ msgstr "ËÜèïò Ýêöñáóç óôçí áðïôßìçóç: %s"
-
-#, fuzzy
#~ msgid "syntax error in action"
#~ msgstr "óõíôáêôéêü óöÜëìá óôïí êáèïñéóìü óåéñÜò"
@@ -22095,10 +22873,6 @@ msgstr ""
#~ msgstr "ç ôéìÞ ãéá ôï %s ðñÝðåé íá åßíáé áêÝñáéïò"
#, fuzzy
-#~ msgid "length in POS must be an integer constant"
-#~ msgstr "ç ôéìÞ ãéá ôï %s ðñÝðåé íá åßíáé áêÝñáéïò"
-
-#, fuzzy
#~ msgid "end bit in POS must be an integer constant"
#~ msgstr "ç ôéìÞ ãéá ôï %s ðñÝðåé íá åßíáé áêÝñáéïò"
diff --git a/gcc/po/es.po b/gcc/po/es.po
index d2e9bd0cb3b..98dd4f09730 100644
--- a/gcc/po/es.po
+++ b/gcc/po/es.po
@@ -5,7 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: gcc 3.3\n"
-"POT-Creation-Date: 2003-10-24 13:20+0200\n"
+"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
+"POT-Creation-Date: 2004-02-06 01:40+0000\n"
"PO-Revision-Date: 2003-06-29 15:48-0500\n"
"Last-Translator: Cristian Othón Martínez Vera <cfuga@itam.mx>\n"
"Language-Team: Spanish <es@li.org>\n"
@@ -13,1048 +14,1136 @@ msgstr ""
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
-#: attribs.c:185
+#: attribs.c:178
#, c-format
msgid "`%s' attribute directive ignored"
msgstr "se ignora la directiva de atributo `%s'"
-#: attribs.c:193
+#: attribs.c:186
#, c-format
msgid "wrong number of arguments specified for `%s' attribute"
msgstr "se especificó el número equivocado de argumentos para el atributo `%s'"
-#: attribs.c:210
+#: attribs.c:203
#, c-format
msgid "`%s' attribute does not apply to types"
msgstr "el atributo `%s' no se aplica a tipos"
-#: attribs.c:247
+#: attribs.c:249
#, c-format
msgid "`%s' attribute only applies to function types"
msgstr "el atributo `%s' se aplica solamente a tipos de funciones"
-#: attribs.c:404 c-common.c:5275 c-common.c:5297 c-common.c:5319
-#: c-common.c:5350 c-common.c:5372 c-common.c:5397 c-common.c:5423
-#: c-common.c:5453 c-common.c:5491 c-common.c:5538 c-common.c:5568
-#: c-common.c:5598 c-common.c:5621 c-common.c:5878 c-common.c:5900
-#: c-common.c:5943 c-common.c:6020 c-common.c:6076 c-common.c:6103
-#: c-common.c:6186 c-common.c:6220 c-common.c:6574 config/arm/arm.c:2101
-#: config/arm/arm.c:2128 config/avr/avr.c:4774 config/h8300/h8300.c:3693
-#: config/h8300/h8300.c:3718 config/i386/i386.c:1403 config/i386/winnt.c:78
-#: config/ip2k/ip2k.c:3204
+#: attribs.c:416 c-common.c:4344 c-common.c:4363 c-common.c:4381
+#: c-common.c:4408 c-common.c:4427 c-common.c:4450 c-common.c:4473
+#: c-common.c:4499 c-common.c:4533 c-common.c:4577 c-common.c:4605
+#: c-common.c:4633 c-common.c:4652 c-common.c:4907 c-common.c:4929
+#: c-common.c:4964 c-common.c:5031 c-common.c:5077 c-common.c:5135
+#: c-common.c:5166 c-common.c:5512 c-common.c:5535 c-common.c:5574
+#: config/arm/arm.c:2278 config/arm/arm.c:2305 config/avr/avr.c:4539
+#: config/h8300/h8300.c:4281 config/h8300/h8300.c:4304 config/i386/i386.c:1599
+#: config/i386/i386.c:15299 config/i386/winnt.c:86 config/ia64/ia64.c:1053
+#: config/ip2k/ip2k.c:3151
#, c-format
msgid "`%s' attribute ignored"
msgstr "se ignora el atributo `%s'"
-#: builtins.c:285
+#: builtins.c:318
msgid "offset outside bounds of constant string"
msgstr "el desplazamiento fuera de los límites de la constante de cadena"
-#: builtins.c:765
+#: builtins.c:786
msgid "second arg to `__builtin_prefetch' must be a constant"
msgstr "el segundo argumento de `__builtin_prefetch' debe ser una constante"
-#: builtins.c:772
+#: builtins.c:793
msgid "invalid second arg to __builtin_prefetch; using zero"
msgstr "el segundo argumento para __builtin_prefetch es inválido; se usará cero"
-#: builtins.c:779
+#: builtins.c:800
msgid "third arg to `__builtin_prefetch' must be a constant"
msgstr "el tercer argumento de `__builtin_prefetch' debe ser una constante"
-#: builtins.c:786
+#: builtins.c:807
msgid "invalid third arg to __builtin_prefetch; using zero"
msgstr "el tercer argumento para __builtin_prefetch es inválido; se usará cero"
-#. ??? We used to try and build up a call to the out of line function,
-#. guessing about what registers needed saving etc. This became much
-#. harder with __builtin_va_start, since we don't have a tree for a
-#. call to __builtin_saveregs to fall back on. There was exactly one
-#. port (i860) that used this code, and I'm unconvinced it could actually
-#. handle the general case. So we no longer try to handle anything
-#. weird and make the backend absorb the evil.
-#: builtins.c:2875
-msgid "__builtin_saveregs not supported by this target"
-msgstr "no se da soporte a __builtin_saveregs en este objetivo"
-
-#: builtins.c:2917
+#: builtins.c:3828
msgid "argument of `__builtin_args_info' must be constant"
msgstr "el argumento de `__builtin_args_info' debe ser constante"
-#: builtins.c:2923
+#: builtins.c:3834
msgid "argument of `__builtin_args_info' out of range"
msgstr "el argumento de `__builtin_args_info' está fuera de rango"
-#: builtins.c:2929
+#: builtins.c:3840
msgid "missing argument in `__builtin_args_info'"
msgstr "falta un argumento en `__builtin_args_info'"
-#: builtins.c:2960
+#: builtins.c:3856
msgid "`va_start' used in function with fixed args"
msgstr "se usó `va_start' en una función con argumentos fijos"
-#: builtins.c:2979
+#: builtins.c:3875
msgid "second parameter of `va_start' not last named argument"
msgstr "el segundo parámetro de `va_start' no es el último argumento nombrado"
#. Evidently an out of date version of <stdarg.h>; can't validate
#. va_start's second argument, but can still work as intended.
-#: builtins.c:2984
+#: builtins.c:3880
msgid "`__builtin_next_arg' called without an argument"
msgstr "se llamó a `__builtin_next_arg' sin un argumento"
-#: builtins.c:3070
+#: builtins.c:3969
msgid "too many arguments to function `va_start'"
msgstr "demasiados argumentos para la función `va_start'"
-#: builtins.c:3172
+#: builtins.c:4091
msgid "first argument to `va_arg' not of type `va_list'"
msgstr "el primer argumento para `va_arg' no es del tipo `va_list'"
#. Unfortunately, this is merely undefined, rather than a constraint
#. violation, so we cannot make this an error. If this call is never
#. executed, the program is still strictly conforming.
-#: builtins.c:3204
+#: builtins.c:4123
#, c-format
msgid "`%s' is promoted to `%s' when passed through `...'"
msgstr "`%s' se promueve a `%s' cuando pasa a través de `...'"
-#: builtins.c:3209
+#: builtins.c:4128
#, c-format
msgid "(so you should pass `%s' not `%s' to `va_arg')"
msgstr "(así que debe pasar `%s' y no `%s' a `va_arg')"
-#: builtins.c:3340
+#: builtins.c:4240
msgid "invalid arg to `__builtin_frame_address'"
msgstr "argumento inválido para `__builtin_frame_address'"
-#: builtins.c:3342
+#: builtins.c:4242
msgid "invalid arg to `__builtin_return_address'"
msgstr "argumento inválido para `__builtin_return_address'"
-#: builtins.c:3356
+#: builtins.c:4256
msgid "unsupported arg to `__builtin_frame_address'"
msgstr "argumento sin soporte para `__builtin_frame_address'"
-#: builtins.c:3358
+#: builtins.c:4258
msgid "unsupported arg to `__builtin_return_address'"
msgstr "argumento no soportado para `__builtin_return_address'"
-#: builtins.c:3530
+#: builtins.c:4418
msgid "second arg to `__builtin_expect' must be a constant"
msgstr "el segundo argumento de `__builtin_expect' debe ser una constante"
-#: builtins.c:4028
+#: builtins.c:5359
msgid "__builtin_longjmp second argument must be 1"
msgstr "el segundo argumento de __builtin_longjump debe ser 1"
-#. just do library call, if unknown builtin
-#: builtins.c:4092 c-common.c:4459
+#: builtins.c:5454
#, c-format
msgid "built-in function `%s' not currently supported"
msgstr "no se soporta actualmente la función interna `%s'"
-#: builtins.c:4165
+#: builtins.c:5594
msgid "target format does not support infinity"
msgstr "el formato objetivo no tiene soporte para infinito"
-#: c-common.c:1168
-#, c-format
-msgid "`%s' is not defined outside of function scope"
+#: c-common.c:934
+msgid "%Hsuggest explicit braces to avoid ambiguous `else'"
+msgstr ""
+
+#: c-common.c:1158
+#, fuzzy
+msgid "%J'%D' is not defined outside of function scope"
msgstr "`%s' no está definido fuera del ámbito de la función"
-#: c-common.c:1189
+#: c-common.c:1178
#, c-format
msgid "string length `%d' is greater than the length `%d' ISO C%d compilers are required to support"
msgstr "la longitud de la cadena `%d' es mayor que la longitud `%d', la máxima que los compiladores ISO C%d deben soportar"
-#: c-common.c:1247
-msgid "concatenation of string literals with __FUNCTION__ is deprecated"
-msgstr "la concatenación de literales de cadena con __FUNCTION__ es obsoleta"
-
-#: c-common.c:1343
+#: c-common.c:1218
msgid "overflow in constant expression"
msgstr "desbordamiento en la expresión constante"
-#: c-common.c:1364
+#: c-common.c:1238
msgid "integer overflow in expression"
msgstr "desbordamiento entero en la expresión"
-#: c-common.c:1373
+#: c-common.c:1247
msgid "floating point overflow in expression"
msgstr "desbordamiento de coma flotante en la expresión"
-#: c-common.c:1379
+#: c-common.c:1253
msgid "vector overflow in expression"
msgstr "desbordamiento vectorial en la expresión"
#. This detects cases like converting -129 or 256 to unsigned char.
-#: c-common.c:1402
+#: c-common.c:1275
msgid "large integer implicitly truncated to unsigned type"
msgstr "entero grande truncado implícitamente al tipo unsigned"
-#: c-common.c:1404
+#: c-common.c:1277
msgid "negative integer implicitly converted to unsigned type"
msgstr "entero negativo truncado implícitamente al tipo unsigned"
-#: c-common.c:1452
+#: c-common.c:1323
msgid "overflow in implicit constant conversion"
msgstr "desbordamiento en la conversión implícita de constante"
-#: c-common.c:1600
+#: c-common.c:1459
#, c-format
msgid "operation on `%s' may be undefined"
msgstr "la operación sobre `%s' puede no estar definida"
-#: c-common.c:1891
+#: c-common.c:1743
msgid "expression statement has incomplete type"
msgstr "la declaración de la expresión tiene tipo de dato incompleto"
-#: c-common.c:1924
+#: c-common.c:1775
msgid "case label does not reduce to an integer constant"
msgstr "la etiqueta de `case' no se reduce a una constante entera"
-#: c-common.c:2228
+#: c-common.c:2105
msgid "invalid truth-value expression"
msgstr "expresión de valor verdadero inválida"
-#: c-common.c:2279
+#: c-common.c:2156
#, c-format
msgid "invalid operands to binary %s"
msgstr "operadores inválidos para el binario %s"
-#: c-common.c:2513
+#: c-common.c:2390
msgid "comparison is always false due to limited range of data type"
msgstr "la comparación siempre es falsa debido al rango limitado del tipo de datos"
-#: c-common.c:2515
+#: c-common.c:2392
msgid "comparison is always true due to limited range of data type"
msgstr "la comparación siempre es verdadera debido al rango limitado del tipo de datos"
-#: c-common.c:2585
+#: c-common.c:2462
msgid "comparison of unsigned expression >= 0 is always true"
msgstr "la comparación de una expresión unsigned >= 0 siempre es verdadera"
-#: c-common.c:2594
+#: c-common.c:2471
msgid "comparison of unsigned expression < 0 is always false"
msgstr "la comparación de una expresión unsigned < 0 siempre es falsa"
-#: c-common.c:2641
+#: c-common.c:2516
msgid "pointer of type `void *' used in arithmetic"
msgstr "se usó un puntero de tipo `void *' en la aritmética"
-#: c-common.c:2647
+#: c-common.c:2522
msgid "pointer to a function used in arithmetic"
msgstr "se usó un puntero a una función en la aritmética"
-#: c-common.c:2653
+#: c-common.c:2528
msgid "pointer to member function used in arithmetic"
msgstr "se usó un puntero a una función miembro en la aritmética"
-#: c-common.c:2659
+#: c-common.c:2534
msgid "pointer to a member used in arithmetic"
msgstr "se usó un puntero a un miembro en la aritmética"
-#: c-common.c:2746 f/com.c:14762
+#: c-common.c:2623 f/com.c:14734
msgid "struct type value used where scalar is required"
msgstr "se usa un valor de tipo struct cuando se requiere un escalar"
-#: c-common.c:2750 f/com.c:14766
+#: c-common.c:2627 f/com.c:14738
msgid "union type value used where scalar is required"
msgstr "se usa un valor de tipo union cuando se requiere un escalar"
-#: c-common.c:2754 f/com.c:14770
+#: c-common.c:2631 f/com.c:14742
msgid "array type value used where scalar is required"
msgstr "se usa un valor de tipo matriz cuando se requiere un escalar"
-#: c-common.c:2874 f/com.c:14903
+#. Common Ada/Pascal programmer's mistake. We always warn
+#. about this since it is so bad.
+#: c-common.c:2668
+#, fuzzy
+msgid "the address of `%D', will always evaluate as `true'"
+msgstr "la dirección de `%D', siempre será `true'"
+
+#: c-common.c:2762 f/com.c:14874
msgid "suggest parentheses around assignment used as truth value"
msgstr "se sugieren paréntesis alrededor de la asignación usada como valor verdadero"
-#: c-common.c:2918 c-common.c:2950
+#: c-common.c:2808 c-common.c:2848
msgid "invalid use of `restrict'"
msgstr "uso inválido de `restrict'"
-#: c-common.c:3064
+#: c-common.c:2958
msgid "invalid application of `sizeof' to a function type"
msgstr "aplicación inválida de `sizeof' a un tipo de función"
-#: c-common.c:3074
+#: c-common.c:2968
#, c-format
msgid "invalid application of `%s' to a void type"
msgstr "aplicación inválida de `%s' a un tipo void"
-#: c-common.c:3080
+#: c-common.c:2974
#, c-format
msgid "invalid application of `%s' to an incomplete type"
msgstr "aplicación inválida de `%s' a un tipo de dato incompleto"
-#: c-common.c:3121
+#: c-common.c:3014
msgid "`__alignof' applied to a bit-field"
msgstr "`__alignof' applicado a un campo de bits"
-#: c-common.c:3618
+#: c-common.c:3506
#, c-format
msgid "cannot disable built-in function `%s'"
msgstr "no se puede desactivar la función interna `%s'"
-#: c-common.c:3787 c-typeck.c:1748
+#: c-common.c:3667 c-typeck.c:1941
#, c-format
msgid "too few arguments to function `%s'"
msgstr "muy pocos argumentos para la función `%s'"
-#: c-common.c:3793 c-typeck.c:1601
+#: c-common.c:3673 c-typeck.c:1802
#, c-format
msgid "too many arguments to function `%s'"
msgstr "demasiados argumentos para la función `%s'"
-#: c-common.c:3812
+#: c-common.c:3692
#, c-format
msgid "non-floating-point argument to function `%s'"
msgstr "argumentos que no son de coma flotante para la función `%s'"
-#: c-common.c:4081
+#: c-common.c:3919
msgid "pointers are not permitted as case values"
msgstr "no se permite usar punteros como valores case"
-#: c-common.c:4087
-msgid "ISO C++ forbids range expressions in switch statements"
-msgstr "ISO C++ prohíbe un rango de expresiones en las declaraciones switch"
-
-#: c-common.c:4089
-msgid "ISO C forbids range expressions in switch statements"
+#: c-common.c:3923
+#, fuzzy
+msgid "range expressions in switch statements are non-standard"
msgstr "ISO C prohíbe un rango de expresiones en las declaraciones switch"
-#: c-common.c:4119
+#: c-common.c:3952
msgid "empty range specified"
msgstr "se especificó un rango vacío"
-#: c-common.c:4170
+#: c-common.c:4003
msgid "duplicate (or overlapping) case value"
msgstr "valor case duplicado (o con solapamiento de rangos)"
-#: c-common.c:4172
-msgid "this is the first entry overlapping that value"
+#: c-common.c:4004
+#, fuzzy
+msgid "%Jthis is the first entry overlapping that value"
msgstr "esta es la primera entrada que solapa ese valor"
-#: c-common.c:4176
+#: c-common.c:4008
msgid "duplicate case value"
msgstr "valor de case duplicado"
-#: c-common.c:4177
-msgid "previously used here"
+#: c-common.c:4009
+#, fuzzy
+msgid "%Jpreviously used here"
msgstr "se usó previamente aquí"
-#: c-common.c:4181
+#: c-common.c:4013
msgid "multiple default labels in one switch"
msgstr "múltiples etiquetas por defecto en un solo switch"
-#: c-common.c:4182
-msgid "this is the first default label"
+#: c-common.c:4014
+#, fuzzy
+msgid "%Jthis is the first default label"
msgstr "esta es la primera etiqueta por defecto"
-#: c-common.c:4210
-msgid "ISO C++ forbids taking the address of a label"
-msgstr "ISO C++ prohíbe tomar la dirección de una etiqueta"
+#: c-common.c:4039
+#, fuzzy
+msgid "taking the address of a label is non-standard"
+msgstr "tomar la dirección de una literal de cadena no es estándard"
-#: c-common.c:4212
-msgid "ISO C forbids taking the address of a label"
-msgstr "ISO C prohíbe tomar la dirección de una etiqueta"
+#: c-common.c:4085
+msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
-#: c-common.c:5235
-#, c-format
-msgid "declaration of `%s' shadows %s"
-msgstr "la declaración de `%s' oscurece a %s"
+#: c-common.c:4090
+msgid "%Hignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
+
+#. SW_PARAM
+#: c-common.c:4297
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a parameter"
+msgstr "la declaración de `%s' oscurece un parámetro"
+
+#. SW_LOCAL
+#: c-common.c:4298
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a previous local"
+msgstr "la declaración de `%s' obscurece a una declaración local previa"
-#: c-common.c:5654
+#. SW_GLOBAL
+#: c-common.c:4299
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a global declaration"
+msgstr "la declaración de `%s' oscurece un parámetro"
+
+#: c-common.c:4303
+#, fuzzy
+msgid "%Jshadowed declaration is here"
+msgstr "no se permite aquí la declaración de variables"
+
+#: c-common.c:4686
#, c-format
msgid "unknown machine mode `%s'"
msgstr "se desconoce el modo de máquina `%s'"
-#: c-common.c:5657
+#: c-common.c:4689
#, c-format
msgid "no data type for mode `%s'"
msgstr "no hay tipo de datos para el modo `%s'"
-#: c-common.c:5666 c-common.c:6316
+#: c-common.c:4693
+#, fuzzy, c-format
+msgid "invalid pointer mode `%s'"
+msgstr "código de operando `%c' inválido"
+
+#: c-common.c:4700 c-common.c:5263
#, c-format
msgid "unable to emulate '%s'"
msgstr "no se puede emular '%s'"
-#: c-common.c:5702
-msgid "section attribute cannot be specified for local variables"
+#: c-common.c:4744
+#, fuzzy
+msgid "%Jsection attribute cannot be specified for local variables"
msgstr "no se puede especificar el atributo de sección para las variables locales"
-#: c-common.c:5713
-#, c-format
-msgid "section of `%s' conflicts with previous declaration"
+#: c-common.c:4755
+#, fuzzy
+msgid "%Jsection of '%D' conflicts with previous declaration"
msgstr "la sección de `%s' causa conflictos con la declaración previa"
-#: c-common.c:5722
-#, c-format
-msgid "section attribute not allowed for `%s'"
+#: c-common.c:4764
+#, fuzzy
+msgid "%Jsection attribute not allowed for '%D'"
msgstr "no se permite un atributo de sección para `%s'"
-#: c-common.c:5729
-msgid "section attributes are not supported for this target"
+#: c-common.c:4770
+#, fuzzy
+msgid "%Jsection attributes are not supported for this target"
msgstr "no se soportan atributos de sección en este objetivo"
-#: c-common.c:5771
+#: c-common.c:4808
msgid "requested alignment is not a constant"
msgstr "la alineación solicitada no es una constante"
-#: c-common.c:5776
+#: c-common.c:4813
msgid "requested alignment is not a power of 2"
msgstr "la alineación solicitada no es una potencia de 2"
-#: c-common.c:5781
+#: c-common.c:4818
msgid "requested alignment is too large"
msgstr "la alineación solicitada es demasiado grande"
-#: c-common.c:5808
-#, c-format
-msgid "alignment may not be specified for `%s'"
+#: c-common.c:4844
+#, fuzzy
+msgid "%Jalignment may not be specified for '%D'"
msgstr "la alineación no puede ser especificada para `%s'"
-#: c-common.c:5853
-#, c-format
-msgid "`%s' defined both normally and as an alias"
+#: c-common.c:4882
+#, fuzzy
+msgid "%J'%D' defined both normally and as an alias"
msgstr "`%s' definido normalmente y como un alias"
-#: c-common.c:5863
+#: c-common.c:4892
msgid "alias arg not a string"
msgstr "el argumento de alias no es una cadena"
-#: c-common.c:5910
+#: c-common.c:4935
msgid "visibility arg not a string"
msgstr "el argumento de visibilidad no es una cadena"
-#: c-common.c:5919
+#: c-common.c:4948
msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\""
msgstr "el argumento de visibilidad debe ser \"default\", \"hidden\", \"protected\" o \"internal\""
-#: c-common.c:5953
+#: c-common.c:4974
msgid "tls_model arg not a string"
msgstr "el argumento de tls_model no es una cadena"
-#: c-common.c:5962
+#: c-common.c:4983
msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\""
msgstr "el argumento de tls_model debe ser uno de \"local-exec\", \"initial-exec\", \"local-dynamic\" ó \"global-dynamic\""
-#: c-common.c:5987 c-common.c:6043
-#, c-format
-msgid "`%s' attribute applies only to functions"
-msgstr "el atributo `%s' se aplica solamente a funciones"
-
-#: c-common.c:5994 c-common.c:6050
-#, c-format
-msgid "can't set `%s' attribute after definition"
-msgstr "no se puede establecer el atributo `%s' después de la definición"
-
-#: c-common.c:6114
+#: c-common.c:5005 c-common.c:5051
#, fuzzy
-msgid "cleanup arg not an identifier"
-msgstr "la longitud de la rebanada no es un entero"
+msgid "%J'%E' attribute applies only to functions"
+msgstr "el atributo `%s' se aplica solamente a funciones"
-#: c-common.c:6121
+#: c-common.c:5010 c-common.c:5056
#, fuzzy
-msgid "cleanup arg not a function"
-msgstr "el objeto llamado no es una función"
+msgid "%Jcan't set '%E' attribute after definition"
+msgstr "no se puede establecer el atributo `%s' después de la definición"
-#: c-common.c:6183
+#: c-common.c:5132
#, c-format
msgid "`%s' attribute ignored for `%s'"
msgstr "se ignora el atributo `%s' para `%s'"
-#: c-common.c:6248
+#: c-common.c:5195
#, c-format
msgid "invalid vector type for attribute `%s'"
msgstr "tipo vector inválido para el atributo `%s'"
-#: c-common.c:6272 c-common.c:6304
+#: c-common.c:5219 c-common.c:5251
msgid "no vector mode with the size and type specified could be found"
msgstr "no se puede encontrar un modo vector con el tamaño y tipo especificados"
-#: c-common.c:6403
+#: c-common.c:5353
msgid "nonnull attribute without arguments on a non-prototype"
msgstr "atributo que no es nulo sin argumentos en uno que no es prototipo"
-#: c-common.c:6418
+#: c-common.c:5368
#, c-format
msgid "nonnull argument has invalid operand number (arg %lu)"
msgstr "un argumento que no es nulo tiene un número inválido de operandos (arg %lu)"
-#: c-common.c:6437
+#: c-common.c:5387
#, c-format
msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)"
msgstr "un argumento que no es nulo con un número de operandos fuera de rango (arg %lu, operando %lu)"
-#: c-common.c:6445
+#: c-common.c:5395
#, c-format
msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)"
msgstr "un argumento que no es nulo hace referencia a un operando que no es puntero (arg %lu, operando %lu)"
-#: c-common.c:6531
+#: c-common.c:5475
#, c-format
msgid "null argument where non-null required (arg %lu)"
msgstr "un argumento nulo donde se requiere uno que no sea nulo (arg %lu)"
-#: c-convert.c:80 c-typeck.c:988 c-typeck.c:4059 cp/typeck.c:1615
-#: cp/typeck.c:5939
-msgid "void value not ignored as it ought to be"
-msgstr "valor void no ignorado como debería de ser"
-
-#: c-convert.c:112 java/typeck.c:150
-msgid "conversion to non-scalar type requested"
-msgstr "se solicitó conversión a tipo no escalar"
-
-#: c-decl.c:340
-#, c-format
-msgid "array `%s' assumed to have one element"
-msgstr "se asume que la matriz `%s' tiene un elemento"
-
-#: c-decl.c:526
-#, c-format
-msgid "`struct %s' incomplete in scope ending here"
-msgstr "el `struct %s' incompleto en el ámbito termina aquí"
+#: c-common.c:5546
+#, fuzzy
+msgid "cleanup arg not an identifier"
+msgstr "la longitud de la rebanada no es un entero"
-#: c-decl.c:529
-#, c-format
-msgid "`union %s' incomplete in scope ending here"
-msgstr "el `union %s' incompleto en el ámbito termina aquí"
+#: c-common.c:5553
+#, fuzzy
+msgid "cleanup arg not a function"
+msgstr "el objeto llamado no es una función"
-#: c-decl.c:532
+#: c-common.c:5914
#, c-format
-msgid "`enum %s' incomplete in scope ending here"
-msgstr "el `enum %s' incompleto en el ámbito termina aquí"
+msgid "%s at end of input"
+msgstr "%s al final de la entrada"
-#: c-decl.c:646 c-decl.c:771 java/decl.c:1403
+#: c-common.c:5920
#, c-format
-msgid "label `%s' used but not defined"
-msgstr "se usa la etiqueta `%s' pero no está definida"
+msgid "%s before %s'%c'"
+msgstr "%s antes de %s'%c'"
-#: c-decl.c:652 c-decl.c:778 java/decl.c:1409
+#: c-common.c:5922
#, c-format
-msgid "label `%s' defined but not used"
-msgstr "la etiqueta `%s' está definida pero no se usa"
+msgid "%s before %s'\\x%x'"
+msgstr "%s antes de %s'\\x%x'"
-#: c-decl.c:893 cp/decl.c:3335
+#: c-common.c:5926
#, c-format
-msgid "function `%s' redeclared as inline"
-msgstr "la función `%s' es redeclarada como inline"
+msgid "%s before string constant"
+msgstr "%s antes de una constante de cadena"
-#: c-decl.c:895 cp/decl.c:3337
+#: c-common.c:5928
#, c-format
-msgid "previous declaration of function `%s' with attribute noinline"
-msgstr "declaración previa de la función `%s' con el atributo noinline"
+msgid "%s before numeric constant"
+msgstr "%s antes de una constante numérica"
-#: c-decl.c:902 cp/decl.c:3344
+#: c-common.c:5930
#, c-format
-msgid "function `%s' redeclared with attribute noinline"
-msgstr "la función `%s' redeclarada con el atributo noinline"
+msgid "%s before \"%s\""
+msgstr "%s antes de \"%s\""
-#: c-decl.c:904 cp/decl.c:3346
+#: c-common.c:5932
#, c-format
-msgid "previous declaration of function `%s' was inline"
-msgstr "la declaración previa de la función `%s' era inline"
+msgid "%s before '%s' token"
+msgstr "%s antes del elemento '%s'"
-#: c-decl.c:933 c-decl.c:979
+#. Use `%s' to print the string in case there are any escape
+#. characters in the message.
+#: c-common.c:5934 c-typeck.c:2578 c-typeck.c:3970 c-typeck.c:3985
+#: c-typeck.c:4000 final.c:2776 final.c:2778 gcc.c:4574 rtl-error.c:109
+#: toplev.c:1340 config/cris/cris.c:545 cp/parser.c:1848 cp/typeck.c:4111
+#: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472
#, c-format
-msgid "shadowing built-in function `%s'"
-msgstr "oscureciendo la función interna `%s'"
+msgid "%s"
+msgstr "%s"
-#: c-decl.c:935
-#, c-format
-msgid "shadowing library function `%s'"
-msgstr "oscureciendo la función de biblioteca `%s'"
+#: c-convert.c:82 c-typeck.c:1193 c-typeck.c:3410 cp/typeck.c:1337
+#: cp/typeck.c:5648 treelang/tree-convert.c:79
+msgid "void value not ignored as it ought to be"
+msgstr "valor void no ignorado como debería de ser"
-#: c-decl.c:941
-#, c-format
-msgid "library function `%s' declared as non-function"
-msgstr "la función de biblioteca `%s' no es declarada como función"
+#: c-convert.c:114 java/typeck.c:148 treelang/tree-convert.c:105
+msgid "conversion to non-scalar type requested"
+msgstr "se solicitó conversión a tipo no escalar"
-#: c-decl.c:945 c-decl.c:948
-#, c-format
-msgid "built-in function `%s' declared as non-function"
-msgstr "la función interna `%s' no es declarada como función"
+#: c-decl.c:371
+#, fuzzy
+msgid "%Jarray '%D' assumed to have one element"
+msgstr "se asume que la matriz `%s' tiene un elemento"
-#: c-decl.c:952 objc/objc-act.c:2384 objc/objc-act.c:6154
-#, c-format
-msgid "`%s' redeclared as different kind of symbol"
-msgstr "`%s' redeclarado como un tipo diferente de símbolo"
+#: c-decl.c:580
+#, fuzzy
+msgid "%Jlabel `%D' used but not defined"
+msgstr "se usa la etiqueta `%D' pero no está definida"
-#: c-decl.c:953 c-decl.c:1144 c-decl.c:1158 c-decl.c:1165 c-decl.c:1310
-#: objc/objc-act.c:2386 objc/objc-act.c:6156 objc/objc-act.c:6211
-#, c-format
-msgid "previous declaration of `%s'"
-msgstr "declaración previa de `%s'"
+#: c-decl.c:586
+#, fuzzy
+msgid "%Jlabel `%D' defined but not used"
+msgstr "la etiqueta `%D' está definida pero no se usa"
-#. If types don't match for a built-in, throw away the built-in.
-#: c-decl.c:1048
-#, c-format
-msgid "conflicting types for built-in function `%s'"
-msgstr "tipos en conflicto para la función interna `%s'"
+#: c-decl.c:588
+#, fuzzy
+msgid "%Jlabel `%D' declared but not defined"
+msgstr "se usa la etiqueta `%D' pero no está definida"
-#: c-decl.c:1091 c-decl.c:1110
-#, c-format
-msgid "conflicting types for `%s'"
-msgstr "tipos en conflicto para `%s'"
+#: c-decl.c:613
+#, fuzzy
+msgid "%Junused variable `%D'"
+msgstr "variable `%s' sin uso"
-#: c-decl.c:1133
+#: c-decl.c:821
msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
msgstr "una lista de parámetros con una elipsis no puede coincidir con una declaración de nombre de lista de parámetros vacía."
-#: c-decl.c:1139
+#: c-decl.c:828
msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
msgstr "un tipo de argumento que tiene una promoción por defecto no puede coincidir con una declaración de nombre de lista de parámetros vacía."
-#: c-decl.c:1157
-#, c-format
-msgid "thread-local declaration of `%s' follows non thread-local declaration"
-msgstr "la declaración thread-local para `%s' a continuación de una que no es thread-local"
+#: c-decl.c:864
+msgid "%Jprototype for '%D' declares more arguments than previous old-style definition"
+msgstr ""
-#: c-decl.c:1164
-#, c-format
-msgid "non thread-local declaration of `%s' follows thread-local declaration"
-msgstr "la declaración que no es thread-local para `%s' a continuación de una thread-local"
+#: c-decl.c:870
+msgid "%Jprototype for '%D' declares fewer arguments than previous old-style definition"
+msgstr ""
-#: c-decl.c:1175 c-decl.c:1198
-#, c-format
-msgid "redefinition of `%s'"
-msgstr "redefinición de `%s'"
+#: c-decl.c:879
+msgid "%Jprototype for '%D' declares arg %d with incompatible type"
+msgstr ""
-#: c-decl.c:1178
-#, c-format
-msgid "redeclaration of `%s'"
-msgstr "redeclaración de `%s'"
+#. If we get here, no errors were found, but do issue a warning
+#. for this poor-style construct.
+#: c-decl.c:891
+#, fuzzy
+msgid "%Jprototype for '%D' follows non-prototype definition"
+msgstr "a continuación la definición del no prototipo aquí"
-#: c-decl.c:1181
-#, c-format
-msgid "conflicting declarations of `%s'"
-msgstr "declaraciones de `%s' en conflicto"
+#: c-decl.c:906
+#, fuzzy
+msgid "%Jprevious definition of '%D' was here"
+msgstr "definición previa aquí"
-#: c-decl.c:1225
-#, c-format
-msgid "prototype for `%s' follows"
-msgstr "el prototipo para '%s' a continuación"
+#: c-decl.c:908
+#, fuzzy
+msgid "%Jprevious implicit declaration of '%D' was here"
+msgstr "declaración implícita previa de `%s'"
-#: c-decl.c:1226 c-decl.c:1234 c-decl.c:1245
-msgid "non-prototype definition here"
-msgstr "la definición del no prototipo aquí"
+#: c-decl.c:910
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was here"
+msgstr "declaración previa de `%#D' aquí"
-#: c-decl.c:1233
-#, c-format
-msgid "prototype for `%s' follows and number of arguments doesn't match"
-msgstr "el prototipo para `%s' continúa y el número de argumentos no coincide"
+#: c-decl.c:944
+#, fuzzy
+msgid "%J'%D' redeclared as different kind of symbol"
+msgstr "`%#D' redeclarado como un tipo diferente de símbolo"
-#: c-decl.c:1243
-#, c-format
-msgid "prototype for `%s' follows and argument %d doesn't match"
-msgstr "el prototipo para `%s' a continuación y el argumento %d no coinciden"
+#: c-decl.c:949
+#, fuzzy
+msgid "%Jbuilt-in function '%D' declared as non-function"
+msgstr "la función interna `%s' no es declarada como función"
-#: c-decl.c:1261
-#, c-format
-msgid "`%s' declared inline after being called"
-msgstr "`%s' declarado inline antes de ser llamado"
+#: c-decl.c:952 c-decl.c:1042
+#, fuzzy
+msgid "%Jshadowing built-in function '%D'"
+msgstr "oscureciendo la función interna `%s'"
-#: c-decl.c:1267
-#, c-format
-msgid "`%s' declared inline after its definition"
-msgstr "`%s' declarado inline después de su definición"
+#. If types don't match for a built-in, throw away the
+#. built-in. No point in calling locate_old_decl here, it
+#. won't print anything.
+#: c-decl.c:972
+#, fuzzy
+msgid "%Jconflicting types for built-in function '%D'"
+msgstr "tipos en conflicto para la función interna `%s'"
-#: c-decl.c:1274
-#, c-format
-msgid "static declaration for `%s' follows non-static"
+#: c-decl.c:996 c-decl.c:1004
+#, fuzzy
+msgid "%Jconflicting types for '%D'"
+msgstr "tipos en conflicto para `%#D'"
+
+#. allow OLDDECL to continue in use
+#: c-decl.c:1019
+#, fuzzy
+msgid "%Jredefinition of typedef '%D'"
+msgstr "redefinición de `%s'"
+
+#: c-decl.c:1055 c-decl.c:1119
+#, fuzzy
+msgid "%Jredefinition of '%D'"
+msgstr "redefinición de `%s'"
+
+#: c-decl.c:1086 c-decl.c:1136
+#, fuzzy
+msgid "%Jstatic declaration of '%D' follows non-static declaration"
msgstr "la declaración static para `%s' a continuación de una no static"
-#: c-decl.c:1282
-#, c-format
-msgid "non-static declaration for `%s' follows static"
+#: c-decl.c:1094 c-decl.c:1133
+#, fuzzy
+msgid "%Jnon-static declaration of '%D' follows static declaration"
msgstr "la declaración no static para `%s' a continuación de una static"
-#: c-decl.c:1289
-#, c-format
-msgid "const declaration for `%s' follows non-const"
-msgstr "la declaración const para '%s' a continuación de una no const"
+#: c-decl.c:1106
+#, fuzzy
+msgid "%Jthread-local declaration of '%D' follows non-thread-local declaration"
+msgstr "la declaración thread-local para `%s' a continuación de una que no es thread-local"
-#: c-decl.c:1296
-#, c-format
-msgid "type qualifiers for `%s' conflict with previous decl"
-msgstr "los calificadores de tipo para `%s' generan conflicto con la declaración previa"
+#: c-decl.c:1109
+#, fuzzy
+msgid "%Jnon-thread-local declaration of '%D' follows thread-local declaration"
+msgstr "la declaración que no es thread-local para `%s' a continuación de una thread-local"
-#: c-decl.c:1309
-#, c-format
-msgid "redundant redeclaration of `%s' in same scope"
-msgstr "declaración redundante de `%s' en el mismo ámbito"
+#: c-decl.c:1149
+#, fuzzy
+msgid "%Jextern declaration of '%D' follows declaration with no linkage"
+msgstr "la declaración externa de `%s' no coincide con la global"
-#: c-decl.c:1619 java/decl.c:1102
-#, c-format
-msgid "declaration of `%s' shadows a parameter"
-msgstr "la declaración de `%s' oscurece un parámetro"
+#: c-decl.c:1152
+#, fuzzy
+msgid "%Jdeclaration of '%D' with no linkage follows extern declaration"
+msgstr "la declaración de `%F' arroja excepciones diferentes"
-#: c-decl.c:1622 java/decl.c:1105
-#, c-format
-msgid "declaration of `%s' shadows a symbol from the parameter list"
-msgstr "la declaración de `%s' oscurece un símbolo de la lista de parámetros"
+#: c-decl.c:1155
+#, fuzzy
+msgid "%Jredeclaration of '%D' with no linkage"
+msgstr "declaración previa de `%#D' con el enlace %L"
-#: c-decl.c:1643 cp/decl.c:4479
-msgid "a parameter"
-msgstr "un parámetro"
+#: c-decl.c:1169
+msgid "%Jredeclaration of '%D' with different visibility (old visibility preserved)"
+msgstr ""
-#: c-decl.c:1645 cp/decl.c:4496
-msgid "a previous local"
-msgstr "un local previo"
+#: c-decl.c:1180
+#, fuzzy
+msgid "%Jinline declaration of '%D' follows declaration with attribute noinline"
+msgstr "declaración previa de la función `%s' con el atributo noinline"
-#. XXX shadow warnings in outer-more namespaces
-#: c-decl.c:1649 cp/decl.c:4500
-msgid "a global declaration"
-msgstr "una declaración global"
+#: c-decl.c:1187
+#, fuzzy
+msgid "%Jdeclaration of '%D' with attribute noinline follows inline declaration "
+msgstr "declaración de la variable static `%s' en la declaración inicial del ciclo `for'"
-#: c-decl.c:1693
-#, c-format
-msgid "nested extern declaration of `%s'"
-msgstr "declaración externa anidada de `%s'"
+#: c-decl.c:1199
+#, fuzzy
+msgid "%J'%D' declared inline after being called"
+msgstr "`%s' declarado inline antes de ser llamado"
-#: c-decl.c:1712 java/decl.c:1055
-#, c-format
-msgid "`%s' used prior to declaration"
-msgstr "se usa `%s' previo a la declaración"
+#: c-decl.c:1205
+#, fuzzy
+msgid "%J'%D' declared inline after its definition"
+msgstr "`%s' declarado inline después de su definición"
-#: c-decl.c:1726 c-decl.c:1901
-#, c-format
-msgid "`%s' was declared implicitly `extern' and later `static'"
-msgstr "`%s' se declaró implícitamente `extern' y después `static'"
+#: c-decl.c:1217
+#, fuzzy
+msgid "%Jvolatile declaration of '%D' follows non-volatile declaration"
+msgstr "la declaración thread-local para `%s' a continuación de una que no es thread-local"
-#: c-decl.c:1829 cp/decl.c:4336
-msgid "type mismatch with previous external decl"
-msgstr "no coinciden los tipos con la declaración externa previa"
+#: c-decl.c:1220
+#, fuzzy
+msgid "%Jnon-volatile declaration of '%D' follows volatile declaration"
+msgstr "la declaración que no es thread-local para `%s' a continuación de una thread-local"
-#: c-decl.c:1830
-#, c-format
-msgid "previous external decl of `%s'"
-msgstr "declaración externa previa de `%s'"
+#: c-decl.c:1227
+#, fuzzy
+msgid "%Jconst declaration of '%D' follows non-const declaration"
+msgstr "la declaración const para '%s' a continuación de una no const"
-#: c-decl.c:1843
-msgid "type mismatch with previous implicit declaration"
-msgstr "no coinciden los tipos con la declaración implícita previa"
+#: c-decl.c:1230
+#, fuzzy
+msgid "%Jnon-const declaration of '%D' follows const declaration"
+msgstr "la declaración no static para `%s' a continuación de una static"
-#: c-decl.c:1845
-#, c-format
-msgid "previous implicit declaration of `%s'"
-msgstr "declaración implícita previa de `%s'"
+#: c-decl.c:1246
+#, fuzzy
+msgid "%Jredundant redeclaration of '%D'"
+msgstr "declaración redundante de `%D' en el mismo ámbito"
-#: c-decl.c:1880
+#: c-decl.c:1690
#, c-format
-msgid "`%s' was previously implicitly declared to return `int'"
-msgstr "`%s' fue declarado previa e implícitamente para devolver `int'"
+msgid "nested extern declaration of `%s'"
+msgstr "declaración externa anidada de `%s'"
-#: c-decl.c:1905
-#, c-format
-msgid "`%s' was declared `extern' and later `static'"
-msgstr "`%s' fue declarado `extern' y después `static'"
+#: c-decl.c:1829 objc/objc-act.c:2534 objc/objc-act.c:6793
+#, fuzzy
+msgid "%Jprevious declaration of '%D'"
+msgstr "declaración previa de `%D'"
-#: c-decl.c:1929
+#: c-decl.c:1870 c-decl.c:1872
#, c-format
-msgid "extern declaration of `%s' doesn't match global one"
-msgstr "la declaración externa de `%s' no coincide con la global"
+msgid "implicit declaration of function `%s'"
+msgstr "declaración implícita de la función `%s'"
-#: c-decl.c:1971
+#: c-decl.c:1888
#, c-format
-msgid "`%s' locally external but globally static"
-msgstr "`%s' es externa localmente pero estática globalmente"
+msgid "`%s' undeclared here (not in a function)"
+msgstr "`%s' no se declaró aquí (no en una función)"
-#: c-decl.c:2095
+#: c-decl.c:1894
#, c-format
-msgid "function `%s' was previously declared within a block"
-msgstr "la función `%s' fue declarada previamente dentro de un bloque"
+msgid "`%s' undeclared (first use in this function)"
+msgstr "`%s' no se declaró aquí (primer uso en esta función)"
-#: c-decl.c:2115 c-decl.c:2117
-#, c-format
-msgid "implicit declaration of function `%s'"
-msgstr "declaración implícita de la función `%s'"
+#: c-decl.c:1899
+msgid "(Each undeclared identifier is reported only once"
+msgstr "(Cada identificador no declarado solamente se reporta una vez"
+
+#: c-decl.c:1900
+msgid "for each function it appears in.)"
+msgstr "para cada funcion en la que aparece.)"
-#: c-decl.c:2196
+#: c-decl.c:1953
#, c-format
msgid "label %s referenced outside of any function"
msgstr "la etiqueta %s es referenciada fuera de cualquier función"
-#: c-decl.c:2253
+#: c-decl.c:2000
#, c-format
msgid "duplicate label declaration `%s'"
msgstr "declaración de la etiqueta `%s' duplicada"
-#: c-decl.c:2256
-msgid "this is a previous declaration"
+#: c-decl.c:2001
+#, fuzzy
+msgid "%Jthis is a previous declaration"
msgstr "esta es una declaración previa"
-#: c-decl.c:2679
+#: c-decl.c:2036
+#, fuzzy
+msgid "%Hduplicate label `%D'"
+msgstr "etiqueta duplicada `%D'"
+
+#: c-decl.c:2038
+#, fuzzy
+msgid "%J`%D' previously defined here"
+msgstr "se definió `%#D' previamente aquí"
+
+#: c-decl.c:2040
+#, fuzzy
+msgid "%J`%D' previously declared here"
+msgstr "se declaró `%#D' previamente aquí"
+
+#: c-decl.c:2060
+msgid "%Htraditional C lacks a separate namespace for labels, identifier `%s' conflicts"
+msgstr ""
+
+#: c-decl.c:2131
+#, fuzzy
+msgid "%H`%s' defined as wrong kind of tag"
+msgstr "`%s' redeclarado como un tipo diferente de símbolo"
+
+#: c-decl.c:2369
msgid "unnamed struct/union that defines no instances"
msgstr "struct/union sin nombre que no define ninguna instancia"
-#: c-decl.c:2698
+#: c-decl.c:2388
msgid "useless keyword or type name in empty declaration"
msgstr "palabras claves inútiles o nombres de tipos en una declaración vacía"
-#: c-decl.c:2705
+#: c-decl.c:2395
msgid "two types specified in one empty declaration"
msgstr "se especificaron dos tipos en una declaración vacía"
-#: c-decl.c:2710 c-parse.y:753 c-parse.y:755 parse.y:766 parse.y:1853
-#: objc-parse.y:799 objc-parse.y:801 objc-parse.y:3042
+#: c-decl.c:2400 c-parse.y:735 c-parse.y:737 objc/objc-parse.y:776
+#: objc/objc-parse.y:778 objc/objc-parse.y:3016
msgid "empty declaration"
msgstr "declaración vacía"
-#: c-decl.c:2740
+#: c-decl.c:2426
msgid "ISO C90 does not support `static' or type qualifiers in parameter array declarators"
msgstr "ISO C90 no tiene soporte para `static' o calificadores de tipo en los declaradores de parámetros de matrices"
-#: c-decl.c:2742
+#: c-decl.c:2428
msgid "ISO C90 does not support `[*]' array declarators"
msgstr "ISO C90 no tiene soporte para declaradores de matriz `[*]'"
-#: c-decl.c:2745
+#: c-decl.c:2431
msgid "GCC does not yet properly implement `[*]' array declarators"
msgstr "GCC aún no implementa adecuadamente los declaradores de matriz `[*]'"
-#: c-decl.c:2764
+#: c-decl.c:2447
msgid "static or type qualifiers in abstract declarator"
msgstr "static o calificador de tipo en un declarador abstracto"
-#: c-decl.c:2838
-#, c-format
-msgid "`%s' is usually a function"
+#: c-decl.c:2517
+#, fuzzy
+msgid "%J'%D' is usually a function"
msgstr "`%s' generalmente es una función"
-#: c-decl.c:2847
+#: c-decl.c:2526
#, c-format
msgid "typedef `%s' is initialized (use __typeof__ instead)"
msgstr "typedef `%s' está inicializado (utilice __typeof__ en su lugar)"
-#: c-decl.c:2853
+#: c-decl.c:2532
#, c-format
msgid "function `%s' is initialized like a variable"
msgstr "la función `%s' está inicializada como una variable"
#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
-#: c-decl.c:2860
+#: c-decl.c:2539
#, c-format
msgid "parameter `%s' is initialized"
msgstr "el parámetro `%s' está inicializado"
-#: c-decl.c:2880 c-typeck.c:4895
+#: c-decl.c:2559 c-typeck.c:4220
msgid "variable-sized object may not be initialized"
msgstr "un objeto de tamaño variable no puede ser inicializado"
-#: c-decl.c:2886
+#: c-decl.c:2565
#, c-format
msgid "variable `%s' has initializer but incomplete type"
msgstr "la variable `%s' tiene un inicializador, pero es de tipo de dato incompleto"
-#: c-decl.c:2892
+#: c-decl.c:2571
#, c-format
msgid "elements of array `%s' have incomplete type"
msgstr "algunos elementos de la matriz `%s' tienen tipo de dato incompleto"
-#: c-decl.c:2905
-#, c-format
-msgid "declaration of `%s' has `extern' and is initialized"
-msgstr "la declaración de `%s' tiene `extern' y está inicializada"
-
-#: c-decl.c:2954 c-decl.c:5828 cp/decl.c:7760 cp/decl.c:14339
-#, c-format
-msgid "inline function `%s' given attribute noinline"
+#: c-decl.c:2640 c-decl.c:5426 cp/decl.c:3748 cp/decl.c:10156
+#, fuzzy
+msgid "%Jinline function '%D' given attribute noinline"
msgstr "se le dió a la función inline `%s' un atributo noinline"
-#: c-decl.c:3028
-#, c-format
-msgid "initializer fails to determine size of `%s'"
-msgstr "el inicializador no puede determinar el tamaño de `%s'"
+#: c-decl.c:2716
+#, fuzzy
+msgid "%Jinitializer fails to determine size of '%D'"
+msgstr "el inicializador no puede determinar el tamaño de `%D'"
+
+#: c-decl.c:2721
+#, fuzzy
+msgid "%Jarray size missing in '%D'"
+msgstr "falta el tamaño de la matriz en `%D'"
-#: c-decl.c:3033
+#: c-decl.c:2737
+#, fuzzy
+msgid "%Jzero or negative size array '%D'"
+msgstr "matriz `%s' de tamaño cero o negativo"
+
+#: c-decl.c:2765
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't known"
+msgstr "no se conoce el tamaño de almacenamiento de `%D'"
+
+#: c-decl.c:2775
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't constant"
+msgstr "el tamaño de almacenamiento de `%D' no es constante"
+
+#: c-decl.c:2858
+#, fuzzy
+msgid "%Jignoring asm-specifier for non-static local variable '%D'"
+msgstr "se ignora el especificador asm para la variable local no estática `%s'"
+
+#: c-decl.c:2969
+msgid "ISO C forbids forward parameter declarations"
+msgstr "ISO C prohíbe declaraciones adelantadas de parámetros"
+
+#: c-decl.c:3151
+#, fuzzy
+msgid "<anonymous>"
+msgstr "<%s anónimo>"
+
+#: c-decl.c:3160
#, c-format
-msgid "array size missing in `%s'"
-msgstr "falta el tamaño de la matriz en %s"
+msgid "bit-field `%s' width not an integer constant"
+msgstr "la anchura del campo de bits `%s' no es una constante entera"
-#: c-decl.c:3049
+#: c-decl.c:3168
#, c-format
-msgid "zero or negative size array `%s'"
-msgstr "matriz `%s' de tamaño cero o negativo"
+msgid "negative width in bit-field `%s'"
+msgstr "anchura negativa en el campo de bit `%s'"
-#: c-decl.c:3077
+#: c-decl.c:3173
#, c-format
-msgid "storage size of `%s' isn't known"
-msgstr "no se conoce el tamaño de almacenamiento de `%s'"
+msgid "zero width for bit-field `%s'"
+msgstr "anchura cero para el campo de bits `%s'"
-#: c-decl.c:3087
+#: c-decl.c:3183
#, c-format
-msgid "storage size of `%s' isn't constant"
-msgstr "el tamaño de almacenamiento de `%s' no es constante"
+msgid "bit-field `%s' has invalid type"
+msgstr "el campo de bits `%s' tiene un tipo inválido"
+
+#: c-decl.c:3192
+#, fuzzy, c-format
+msgid "type of bit-field `%s' is a GCC extension"
+msgstr "la directiva de estilo de línea es una extensión de GCC"
-#: c-decl.c:3147
+#: c-decl.c:3201
#, c-format
-msgid "ignoring asm-specifier for non-static local variable `%s'"
-msgstr "se ignora el especificador asm para la variable local no estática `%s'"
+msgid "width of `%s' exceeds its type"
+msgstr "la anchura de `%s' excede su tipo"
-#: c-decl.c:3247
+#: c-decl.c:3211
#, c-format
-msgid "ISO C forbids parameter `%s' shadowing typedef"
-msgstr "ISO C prohíbe el oscurecimiento del parámetro `%s' de typedef"
+msgid "`%s' is narrower than values of its type"
+msgstr "`%s' es más estrecho que los valores de su tipo"
-#: c-decl.c:3592 cp/decl.c:10880
+#: c-decl.c:3361 cp/decl.c:6778
msgid "`long long long' is too long for GCC"
msgstr "`long long long' es demasiado largo para GCC"
-#: c-decl.c:3597
+#: c-decl.c:3366
msgid "ISO C90 does not support `long long'"
msgstr "ISO C90 no da soporte a `long long'"
-#: c-decl.c:3606 c-decl.c:3609 cp/decl.c:10885
+#: c-decl.c:3375 c-decl.c:3378 cp/decl.c:6783
#, c-format
msgid "duplicate `%s'"
msgstr "`%s' duplicado"
-#: c-decl.c:3619 cp/decl.c:10892
+#: c-decl.c:3388 cp/decl.c:6789
msgid "`__thread' before `extern'"
msgstr "`__thread' antes de `extern'"
-#: c-decl.c:3621 cp/decl.c:10894
+#: c-decl.c:3390 cp/decl.c:6791
msgid "`__thread' before `static'"
msgstr "`__thread' antes de `static'"
-#: c-decl.c:3629 cp/decl.c:10921
+#: c-decl.c:3398 cp/decl.c:6818
#, c-format
msgid "two or more data types in declaration of `%s'"
msgstr "dos o más tipos de datos en la declaración de `%s'"
-#: c-decl.c:3649 cp/decl.c:10926
+#: c-decl.c:3418 cp/decl.c:6823
#, c-format
msgid "`%s' fails to be a typedef or built in type"
msgstr "`%s' falla al ser un typedef o un tipo interno del compilador"
-#: c-decl.c:3688
+#: c-decl.c:3457
#, c-format
msgid "type defaults to `int' in declaration of `%s'"
msgstr "el tipo de dato por defecto es `int' en la declaración de `%s'"
-#: c-decl.c:3717
+#: c-decl.c:3486
#, c-format
msgid "both long and short specified for `%s'"
msgstr "se especifica long y short al mismo tiempo para `%s'"
-#: c-decl.c:3721 cp/decl.c:11041
+#: c-decl.c:3490 cp/decl.c:6923
#, c-format
msgid "long or short specified with char for `%s'"
msgstr "se especifica long ó short con char para `%s'"
-#: c-decl.c:3728 cp/decl.c:11045
+#: c-decl.c:3497 cp/decl.c:6927
#, c-format
msgid "long or short specified with floating type for `%s'"
msgstr "se especifica long ó short con tipo floating para `%s'"
-#: c-decl.c:3731
+#: c-decl.c:3500
msgid "the only valid combination is `long double'"
msgstr "la única combinación válida es `long double'"
-#: c-decl.c:3737
+#: c-decl.c:3506
#, c-format
msgid "both signed and unsigned specified for `%s'"
msgstr "se especifica signed y unsigned al mismo tiempo para `%s'"
-#: c-decl.c:3739 cp/decl.c:11034
+#: c-decl.c:3508 cp/decl.c:6916
#, c-format
msgid "long, short, signed or unsigned invalid for `%s'"
msgstr "long, short, signed ó unsigned inválidos para `%s'"
-#: c-decl.c:3745 cp/decl.c:11054
+#: c-decl.c:3514 cp/decl.c:6936
#, c-format
msgid "long, short, signed or unsigned used invalidly for `%s'"
msgstr "uso inválido de long, short, signed ó unsigned para `%s'"
-#: c-decl.c:3763 cp/decl.c:11075
+#: c-decl.c:3532 cp/decl.c:6957
#, c-format
msgid "complex invalid for `%s'"
msgstr "complex inválido para `%s'"
-#: c-decl.c:3805
+#: c-decl.c:3574
msgid "ISO C90 does not support complex types"
msgstr "ISO C90 no tiene soporte para tipos complejos"
-#: c-decl.c:3817
+#: c-decl.c:3586
msgid "ISO C does not support plain `complex' meaning `double complex'"
msgstr "ISO C no tiene soporte para `complex' simples que significan `double complex'"
-#: c-decl.c:3823 c-decl.c:3835
+#: c-decl.c:3592 c-decl.c:3604
msgid "ISO C does not support complex integer types"
msgstr "ISO C no da soporte a tipos enteros complejos"
-#: c-decl.c:3850 c-decl.c:4316 cp/decl.c:11688
+#: c-decl.c:3632 c-decl.c:4090 cp/decl.c:7549
msgid "duplicate `const'"
msgstr "`const' duplicado"
-#: c-decl.c:3852 c-decl.c:4320 cp/decl.c:11692
+#: c-decl.c:3634 c-decl.c:4094 cp/decl.c:7553
msgid "duplicate `restrict'"
msgstr "`restrict' duplicado"
-#: c-decl.c:3854 c-decl.c:4318 cp/decl.c:11690
+#: c-decl.c:3636 c-decl.c:4092 cp/decl.c:7551
msgid "duplicate `volatile'"
msgstr "`volatile' duplicado"
-#: c-decl.c:3882 cp/decl.c:11238
+#: c-decl.c:3664 cp/decl.c:7120
#, c-format
msgid "multiple storage classes in declaration of `%s'"
msgstr "múltiples clases de almacenamiento en la declaración de `%s'"
-#: c-decl.c:3892
+#: c-decl.c:3674
msgid "function definition declared `auto'"
msgstr "la definición de la función se declaró como `auto'"
-#: c-decl.c:3894
+#: c-decl.c:3676
msgid "function definition declared `register'"
msgstr "la definición de la función se declaró como `register'"
-#: c-decl.c:3896
+#: c-decl.c:3678
msgid "function definition declared `typedef'"
msgstr "la definición de la función se declaró como `typedef'"
-#: c-decl.c:3898
+#: c-decl.c:3680
msgid "function definition declared `__thread'"
msgstr "la definición de la función se declaró como `__thread'"
-#: c-decl.c:3911
+#: c-decl.c:3693
#, c-format
msgid "storage class specified for structure field `%s'"
msgstr "se especificó una clase de almacenamiento para el campo de la estructura `%s'"
-#: c-decl.c:3915 cp/decl.c:11285
+#: c-decl.c:3697 cp/decl.c:7165
#, c-format
msgid "storage class specified for parameter `%s'"
msgstr "se especificó una clase de almacenamiento para el parámetro `%s'"
-#: c-decl.c:3918 cp/decl.c:11287
+#: c-decl.c:3700 cp/decl.c:7167
msgid "storage class specified for typename"
msgstr "se especificó una clase de almacenamiento para el nombre de tipo"
-#: c-decl.c:3930 cp/decl.c:11302
+#: c-decl.c:3712 cp/decl.c:7182
#, c-format
msgid "`%s' initialized and declared `extern'"
msgstr "`%s' inicializado y declarado como `extern'"
-#: c-decl.c:3932 cp/decl.c:11305
+#: c-decl.c:3714 cp/decl.c:7185
#, c-format
msgid "`%s' has both `extern' and initializer"
msgstr "`%s' tiene `extern' e inicializador al mismo tiempo"
-#: c-decl.c:3937 cp/decl.c:11313
-#, c-format
-msgid "top-level declaration of `%s' specifies `auto'"
+#: c-decl.c:3719
+#, fuzzy, c-format
+msgid "file-scope declaration of `%s' specifies `auto'"
msgstr "la declaración del nivel superior de `%s' especifica `auto'"
-#: c-decl.c:3942 cp/decl.c:11309
+#: c-decl.c:3724 cp/decl.c:7189
#, c-format
msgid "nested function `%s' declared `extern'"
msgstr "la función anidada `%s' se declaró `extern'"
-#: c-decl.c:3948 cp/decl.c:11319
+#: c-decl.c:3730 cp/decl.c:7199
#, c-format
msgid "function-scope `%s' implicitly auto and declared `__thread'"
msgstr "el ámbito de la función `%s' es implícitamente auto y declarada `__thread'"
@@ -1062,2735 +1151,2771 @@ msgstr "el ámbito de la función `%s' es implícitamente auto y declarada `__threa
#. Only the innermost declarator (making a parameter be of
#. array type which is converted to pointer type)
#. may have static or type qualifiers.
-#: c-decl.c:3987 c-decl.c:4188
+#: c-decl.c:3769 c-decl.c:3962
msgid "static or type qualifiers in non-parameter array declarator"
msgstr "static o calificadores de tipo en un declarador de matriz que no es parámetro"
-#: c-decl.c:4031
+#: c-decl.c:3813
#, c-format
msgid "declaration of `%s' as array of voids"
msgstr "la declaración de `%s' como una matriz de voids"
-#: c-decl.c:4037
+#: c-decl.c:3819
#, c-format
msgid "declaration of `%s' as array of functions"
msgstr "la declaración de `%s' como una matriz de funciones"
-#: c-decl.c:4042 c-decl.c:5332
+#: c-decl.c:3824
msgid "invalid use of structure with flexible array member"
msgstr "uso inválido de una estructura con un miembro de matriz flexible"
-#: c-decl.c:4061
+#: c-decl.c:3843
#, c-format
msgid "size of array `%s' has non-integer type"
msgstr "el tamaño de la matriz `%s' tiene un tipo no entero"
-#: c-decl.c:4066
+#: c-decl.c:3848
#, c-format
msgid "ISO C forbids zero-size array `%s'"
msgstr "ISO C prohíbe la matriz `%s' de tamaño cero"
-#: c-decl.c:4073
+#: c-decl.c:3855
#, c-format
msgid "size of array `%s' is negative"
msgstr "el tamaño de la matriz `%s' es negativo"
-#: c-decl.c:4086
+#: c-decl.c:3868
#, c-format
msgid "ISO C90 forbids array `%s' whose size can't be evaluated"
msgstr "ISO C90 prohíbe la matriz `%s' cuyo tamaño no se puede evaluar"
-#: c-decl.c:4089
+#: c-decl.c:3871
#, c-format
msgid "ISO C90 forbids variable-size array `%s'"
msgstr "ISO C90 prohíbe la matriz `%s' de tamaño variable"
-#: c-decl.c:4119 c-decl.c:4342 cp/decl.c:11897
+#: c-decl.c:3901 c-decl.c:4116 cp/decl.c:7723
#, c-format
msgid "size of array `%s' is too large"
msgstr "el tamaño de la matriz `%s' es demasiado grande"
-#: c-decl.c:4145
+#: c-decl.c:3927
msgid "ISO C90 does not support flexible array members"
msgstr "ISO C90 no tiene soporte para miembros de matriz flexibles"
-#: c-decl.c:4155
+#: c-decl.c:3937
msgid "array type has incomplete element type"
msgstr "el tipo matriz tiene tipo de elemento incompleto"
-#: c-decl.c:4162 c-decl.c:4392
-msgid "ISO C forbids const or volatile function types"
-msgstr "ISO C prohíbe los tipos de función const o volatile"
-
-#: c-decl.c:4208 cp/decl.c:11445
+#: c-decl.c:3982 cp/decl.c:7320
#, c-format
msgid "`%s' declared as function returning a function"
msgstr "`%s' que es declarado como función devuelve una función"
-#: c-decl.c:4213 cp/decl.c:11450
+#: c-decl.c:3987 cp/decl.c:7325
#, c-format
msgid "`%s' declared as function returning an array"
msgstr "`%s' que es declarado como función devuelve una matriz"
-#: c-decl.c:4241
+#: c-decl.c:4015
msgid "ISO C forbids qualified void function return type"
msgstr "ISO C prohíbe el tipo calificado de devolución de una función void"
-#: c-decl.c:4245
+#: c-decl.c:4019
msgid "type qualifiers ignored on function return type"
msgstr "se ignoran los calificadores de tipo en el tipo de devolución de la función"
-#: c-decl.c:4274 c-decl.c:4357 c-decl.c:4481 c-decl.c:4573
+#: c-decl.c:4048 c-decl.c:4131 c-decl.c:4255 c-decl.c:4341
msgid "ISO C forbids qualified function types"
msgstr "ISO C prohíbe los tipos de función calificados"
-#: c-decl.c:4314 cp/decl.c:11684
+#: c-decl.c:4088 cp/decl.c:7545
msgid "invalid type modifier within pointer declarator"
msgstr "modificador de tipo inválido dentro de la declaración del puntero"
-#: c-decl.c:4412 cp/decl.c:12182
+#: c-decl.c:4166
+msgid "ISO C forbids const or volatile function types"
+msgstr "ISO C prohíbe los tipos de función const o volatile"
+
+#: c-decl.c:4186 cp/decl.c:8005
#, c-format
msgid "variable or field `%s' declared void"
msgstr "variable o campo `%s' declarado void"
-#: c-decl.c:4445
+#: c-decl.c:4219
msgid "attributes in parameter array declarator ignored"
msgstr "se ignoran los atributos en los declaradores de parámetros de matriz"
-#: c-decl.c:4470
+#: c-decl.c:4244
msgid "invalid type modifier within array declarator"
msgstr "modificador de tipo inválido dentro de un declarador de matriz"
-#: c-decl.c:4515
+#: c-decl.c:4289
#, c-format
msgid "field `%s' declared as a function"
msgstr "el campo `%s' declarado como una función"
-#: c-decl.c:4521
+#: c-decl.c:4295
#, c-format
msgid "field `%s' has incomplete type"
msgstr "el campo `%s' tiene tipo de dato incompleto"
-#: c-decl.c:4553 c-decl.c:4555 c-decl.c:4557 c-decl.c:4564
+#: c-decl.c:4321 c-decl.c:4323 c-decl.c:4325 c-decl.c:4332
#, c-format
msgid "invalid storage class for function `%s'"
msgstr "clase de almacenamiento inválida para la función `%s'"
-#: c-decl.c:4579
+#: c-decl.c:4347
msgid "`noreturn' function returns non-void value"
msgstr "la función `no return' devuelve un valor que no es void"
-#: c-decl.c:4594
+#: c-decl.c:4362
msgid "cannot inline function `main'"
msgstr "no se puede hacer inline la función `main'"
-#: c-decl.c:4649
-#, c-format
-msgid "variable `%s' declared `inline'"
+#: c-decl.c:4415
+#, fuzzy
+msgid "variable previously declared `static' redeclared `extern'"
+msgstr "variable o campo `%s' declarado void"
+
+#: c-decl.c:4424
+#, fuzzy
+msgid "%Jvariable '%D' declared `inline'"
msgstr "la variable `%s' fue declarada como `inline'"
#. A mere warning is sure to result in improper semantics
#. at runtime. Don't bother to allow this to compile.
-#: c-decl.c:4677 cp/decl.c:9951
+#: c-decl.c:4452 cp/decl.c:5877
msgid "thread-local storage not supported for this target"
msgstr "no se da soporte a almacenamiento thread-local para este objetivo"
-#: c-decl.c:4732 c-decl.c:5880
+#: c-decl.c:4513 c-decl.c:5470
msgid "function declaration isn't a prototype"
msgstr "la declaración de la función no es un prototipo"
-#: c-decl.c:4738
+#: c-decl.c:4519
msgid "parameter names (without types) in function declaration"
msgstr "nombres de parámetros (sin tipos) en la declaración de la función"
-#: c-decl.c:4770 c-decl.c:6250
+#: c-decl.c:4547
#, c-format
msgid "parameter `%s' has incomplete type"
msgstr "el parámetro `%s' tiene tipo de dato incompleto"
-#: c-decl.c:4773
+#: c-decl.c:4550
msgid "parameter has incomplete type"
msgstr "el parámetro tiene tipo incompleto"
-#: c-decl.c:4794
-#, c-format
-msgid "parameter `%s' points to incomplete type"
-msgstr "el parámetro `%s' apunta a un tipo incompleto"
+#: c-decl.c:4599
+#, fuzzy
+msgid "\"void\" as only parameter may not be qualified"
+msgstr "el nombre de la definición de tipo puede no ser calificada para la clase"
-#: c-decl.c:4797
-msgid "parameter points to incomplete type"
-msgstr "el parámetro apunta a un tipo incompleto"
+#: c-decl.c:4620
+#, fuzzy
+msgid "\"void\" must be the only parameter"
+msgstr "no coincide el modo en el parámetro 1"
-#: c-decl.c:4862
-#, c-format
-msgid "parameter `%s' has just a forward declaration"
+#: c-decl.c:4637
+#, fuzzy
+msgid "%Jparameter \"%D\" has just a forward declaration"
msgstr "el parámetro `%s' sólo tiene una declaración posterior"
-#: c-decl.c:4903
-msgid "`void' in parameter list must be the entire list"
-msgstr "`void' en la lista de parámetros debe ser la lista completa"
-
-#: c-decl.c:4934
-#, c-format
-msgid "`struct %s' declared inside parameter list"
+#. The first %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4665
+#, fuzzy, c-format
+msgid "\"%s %s\" declared inside parameter list"
msgstr "se declaró `struct %s' dentro de la lista de parámetros"
-#: c-decl.c:4937
-#, c-format
-msgid "`union %s' declared inside parameter list"
-msgstr "se declaró `union %s' dentro de la lista de parámetros"
-
-#: c-decl.c:4940
-#, c-format
-msgid "`enum %s' declared inside parameter list"
-msgstr "se declaró `enum %s' dentro de la lista de parámetros"
-
-#: c-decl.c:4947
-msgid "anonymous struct declared inside parameter list"
+#. The %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4669
+#, fuzzy, c-format
+msgid "anonymous %s declared inside parameter list"
msgstr "struct anónimo declarado dentro de una lista de parámetros"
-#: c-decl.c:4949
-msgid "anonymous union declared inside parameter list"
-msgstr "union anónimo declarado dentro de una lista de parámetros"
-
-#: c-decl.c:4951
-msgid "anonymous enum declared inside parameter list"
-msgstr "enum anónimo declarado dentro de una lista de parámetros"
-
-#: c-decl.c:4955
+#: c-decl.c:4673
msgid "its scope is only this definition or declaration, which is probably not what you want"
msgstr "su ámbito es solamente esta definición o declaración, lo cual probablemente no sea lo que desea"
-#: c-decl.c:5032
+#: c-decl.c:4758
#, c-format
msgid "redefinition of `union %s'"
msgstr "redefinición de `union %s'"
-#: c-decl.c:5034
+#: c-decl.c:4760
#, c-format
msgid "redefinition of `struct %s'"
msgstr "redefinición de `struct %s'"
-#: c-decl.c:5105 cp/decl.c:7532
+#: c-decl.c:4828 cp/decl.c:3521
msgid "declaration does not declare anything"
msgstr "la declaración no declara nada}"
-#: c-decl.c:5169 c-decl.c:5172
+#: c-decl.c:4873 c-decl.c:4889
+#, fuzzy
+msgid "%Jduplicate member '%D'"
+msgstr "miembro duplicado `%D'"
+
+#: c-decl.c:4923 c-decl.c:4926
#, c-format
msgid "%s defined inside parms"
msgstr "se definió %s dentro de los parámetros"
-#: c-decl.c:5170 c-decl.c:5173 c-decl.c:5184
+#: c-decl.c:4924 c-decl.c:4927 c-decl.c:4938
msgid "union"
msgstr "unión"
-#: c-decl.c:5170 c-decl.c:5173
+#: c-decl.c:4924 c-decl.c:4927
msgid "structure"
msgstr "estructura"
-#: c-decl.c:5183
+#: c-decl.c:4937
#, c-format
msgid "%s has no %s"
msgstr "%s no tiene %s"
-#: c-decl.c:5184
+#: c-decl.c:4938
msgid "struct"
msgstr "struct"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "named members"
msgstr "miembros nombrados"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "members"
msgstr "miembros"
-#: c-decl.c:5224
+#: c-decl.c:4978
#, c-format
msgid "nested redefinition of `%s'"
msgstr "redefinición anidada de `%s'"
-#: c-decl.c:5237
-#, c-format
-msgid "bit-field `%s' width not an integer constant"
-msgstr "la anchura del campo de bits `%s' no es una constante entera"
-
-#: c-decl.c:5248
-#, c-format
-msgid "bit-field `%s' has invalid type"
-msgstr "el campo de bits `%s' tiene un tipo inválido"
-
-#: c-decl.c:5260
-#, c-format
-msgid "bit-field `%s' type invalid in ISO C"
-msgstr "el tipo de campo de bit `%s' es inválido en ISO C"
-
-#: c-decl.c:5271
-#, c-format
-msgid "negative width in bit-field `%s'"
-msgstr "anchura negativa en el campo de bit `%s'"
-
-#: c-decl.c:5273
-#, c-format
-msgid "width of `%s' exceeds its type"
-msgstr "la anchura de `%s' excede su tipo"
-
-#: c-decl.c:5275
-#, c-format
-msgid "zero width for bit-field `%s'"
-msgstr "anchura cero para el campo de bits `%s'"
-
-#: c-decl.c:5289
-#, c-format
-msgid "`%s' is narrower than values of its type"
-msgstr "`%s' es más estrecho que los valores de su tipo"
-
-#: c-decl.c:5323
-msgid "flexible array member in union"
+#: c-decl.c:4998
+#, fuzzy
+msgid "%Jflexible array member in union"
msgstr "miembro de matriz flexible en el union"
-#: c-decl.c:5325
-msgid "flexible array member not at end of struct"
+#: c-decl.c:5000
+#, fuzzy
+msgid "%Jflexible array member not at end of struct"
msgstr "el miembro de matriz flexible no está al final del struct"
-#: c-decl.c:5327
-msgid "flexible array member in otherwise empty struct"
+#: c-decl.c:5002
+#, fuzzy
+msgid "%Jflexible array member in otherwise empty struct"
msgstr "el miembro de matriz flexible sería de otra manera un struct vacío"
-#: c-decl.c:5357
-#, c-format
-msgid "duplicate member `%s'"
-msgstr "miembro duplicado `%s'"
+#: c-decl.c:5007
+#, fuzzy
+msgid "%Jinvalid use of structure with flexible array member"
+msgstr "uso inválido de una estructura con un miembro de matriz flexible"
-#: c-decl.c:5448
+#: c-decl.c:5102
msgid "union cannot be made transparent"
msgstr "union no se puede hacer transparente"
#. This enum is a named one that has been declared already.
-#: c-decl.c:5558
+#: c-decl.c:5171
#, c-format
msgid "redeclaration of `enum %s'"
msgstr "redeclaración de `enum %s'"
-#: c-decl.c:5592
+#: c-decl.c:5202
msgid "enum defined inside parms"
msgstr "enum definido dentro de los parámetros"
-#: c-decl.c:5625
+#: c-decl.c:5235
msgid "enumeration values exceed range of largest integer"
msgstr "los valores de enumeración exceden el rango del entero más grande"
-#: c-decl.c:5734
+#: c-decl.c:5338
#, c-format
msgid "enumerator value for `%s' not integer constant"
msgstr "el valor de enumerador para `%s' no es una constante entera"
-#: c-decl.c:5747
+#: c-decl.c:5351
msgid "overflow in enumeration values"
msgstr "desbordamiento en valores de enumeración"
-#: c-decl.c:5752
+#: c-decl.c:5356
msgid "ISO C restricts enumerator values to range of `int'"
msgstr "ISO C restringe los valores de enumeración al rango de `int'"
-#: c-decl.c:5834
+#: c-decl.c:5432
msgid "return type is an incomplete type"
msgstr "el tipo de devolución es un tipo de dato incompleto"
-#: c-decl.c:5842
+#: c-decl.c:5440
msgid "return type defaults to `int'"
msgstr "el tipo de devolución por defecto es `int'"
-#: c-decl.c:5889
-#, c-format
-msgid "no previous prototype for `%s'"
+#: c-decl.c:5476
+#, fuzzy
+msgid "%Jno previous prototype for '%D'"
msgstr "no hay un prototipo previo para `%s'"
-#: c-decl.c:5896
-#, c-format
-msgid "`%s' was used with no prototype before its definition"
+#: c-decl.c:5482
+#, fuzzy
+msgid "%J'%D' was used with no prototype before its definition"
msgstr "se usó `%s' sin prototipo antes de su definición"
-#: c-decl.c:5902
-#, c-format
-msgid "no previous declaration for `%s'"
+#: c-decl.c:5489
+#, fuzzy
+msgid "%Jno previous declaration for '%D'"
msgstr "no hay declaración previa para `%s'"
-#: c-decl.c:5909
-#, c-format
-msgid "`%s' was used with no declaration before its definition"
+#: c-decl.c:5495
+#, fuzzy
+msgid "%J`%D' was used with no declaration before its definition"
msgstr "se usó `%s' sin declaración antes de su definición"
-#: c-decl.c:5933 c-decl.c:6486
-#, c-format
-msgid "return type of `%s' is not `int'"
+#: c-decl.c:5531 c-decl.c:6037
+#, fuzzy
+msgid "%Jreturn type of '%D' is not `int'"
msgstr "el tipo de devolución de `%s' no es `int'"
-#: c-decl.c:5949
-#, c-format
-msgid "first argument of `%s' should be `int'"
+#: c-decl.c:5546
+#, fuzzy
+msgid "%Jfirst argument of '%D' should be `int'"
msgstr "el primer argumento de `%s' debe ser `int'"
-#: c-decl.c:5958
-#, c-format
-msgid "second argument of `%s' should be `char **'"
+#: c-decl.c:5555
+#, fuzzy
+msgid "%Jsecond argument of '%D' should be 'char **'"
msgstr "el segundo argumento de `%s' debe ser `char **'"
-#: c-decl.c:5967
-#, c-format
-msgid "third argument of `%s' should probably be `char **'"
+#: c-decl.c:5564
+#, fuzzy
+msgid "%Jthird argument of '%D' should probably be 'char **'"
msgstr "el tercer argumento de `%s' debería ser `char **'"
-#: c-decl.c:5976
-#, c-format
-msgid "`%s' takes only zero or two arguments"
+#: c-decl.c:5574
+#, fuzzy
+msgid "%J'%D' takes only zero or two arguments"
msgstr "`%s' sólo toma cero o dos argumentos"
-#: c-decl.c:5979
-#, c-format
-msgid "`%s' is normally a non-static function"
+#: c-decl.c:5577
+#, fuzzy
+msgid "%J'%D' is normally a non-static function"
msgstr "`%s' generalmente es una función no estática"
-#: c-decl.c:6077
-msgid "parm types given both in parmlist and separately"
-msgstr "se dieron los tipos de los parámetros en la lista de parámetros y por separado"
+#: c-decl.c:5633
+msgid "%Jold-style parameter declarations in prototyped function definition"
+msgstr ""
-#: c-decl.c:6098
-msgid "parameter name omitted"
+#: c-decl.c:5647
+#, fuzzy
+msgid "%Jparameter name omitted"
msgstr "se omitió el nombre del parámetro"
-#: c-decl.c:6102 c-decl.c:6204
-#, c-format
-msgid "parameter `%s' declared void"
-msgstr "el parámetro `%s' se declaró void"
-
-#: c-decl.c:6178
-msgid "parameter name missing from parameter list"
+#: c-decl.c:5722
+#, fuzzy
+msgid "%Jparameter name missing from parameter list"
msgstr "falta el nombre del parámetro de la lista de parámetros"
-#: c-decl.c:6197
-#, c-format
-msgid "multiple parameters named `%s'"
+#: c-decl.c:5732
+#, fuzzy
+msgid "%J\"%D\" declared as a non-parameter"
+msgstr "`%D' declarado como un friend"
+
+#: c-decl.c:5737
+#, fuzzy
+msgid "%Jmultiple parameters named \"%D\""
msgstr "múltiples parámetros nombrados `%s'"
-#: c-decl.c:6219 c-decl.c:6221
-#, c-format
-msgid "type of `%s' defaults to `int'"
+#: c-decl.c:5745
+#, fuzzy
+msgid "%Jparameter \"%D\" declared void"
+msgstr "el parámetro `%D' se declaró void"
+
+#: c-decl.c:5760 c-decl.c:5762
+#, fuzzy
+msgid "%Jtype of \"%D\" defaults to \"int\""
msgstr "el tipo de `%s' es `int' por defecto"
-#: c-decl.c:6257
-#, c-format
-msgid "declaration for parameter `%s' but no such parameter"
+#: c-decl.c:5776
+#, fuzzy
+msgid "%Jparameter \"%D\" has incomplete type"
+msgstr "el parámetro tiene tipo incompleto"
+
+#: c-decl.c:5782
+#, fuzzy
+msgid "%Jdeclaration for parameter \"%D\" but no such parameter"
msgstr "existe la declaración para el parámetro `%s' pero no hay tal parámetro"
-#: c-decl.c:6305
+#: c-decl.c:5834
msgid "number of arguments doesn't match prototype"
msgstr "el número de argumentos no coinciden con el prototipo"
-#: c-decl.c:6335
-#, c-format
-msgid "promoted argument `%s' doesn't match prototype"
+#: c-decl.c:5835 c-decl.c:5866 c-decl.c:5873
+#, fuzzy
+msgid "%Hprototype declaration"
+msgstr "declaración vacía"
+
+#: c-decl.c:5864
+#, fuzzy
+msgid "promoted argument \"%D\" doesn't match prototype"
msgstr "el argumento promovido `%s' no coincide con el prototipo"
-#: c-decl.c:6345
-#, c-format
-msgid "argument `%s' doesn't match prototype"
+#: c-decl.c:5872
+#, fuzzy
+msgid "argument \"%D\" doesn't match prototype"
msgstr "el argumento `%s' no coincide con el prototipo"
-#: c-decl.c:6518 cp/decl.c:15049
+#: c-decl.c:6069 cp/decl.c:10876
msgid "no return statement in function returning non-void"
msgstr "no hay una declaración de devolución en una función que no devuelve void"
-#: c-decl.c:6525
+#: c-decl.c:6076
msgid "this function may return with or without a value"
msgstr "esta función puede devolver con o sin un valor"
-#: c-decl.c:6729
-#, c-format
-msgid "size of return value of `%s' is %u bytes"
-msgstr "el tamaño del valor de devolución de `%s' es de %u bytes"
-
-#: c-decl.c:6733
-#, c-format
-msgid "size of return value of `%s' is larger than %d bytes"
-msgstr "el tamaño del valor de devolución de `%s' es más grande que %d bytes"
-
#. If we get here, declarations have been used in a for loop without
#. the C99 for loop scope. This doesn't make much sense, so don't
#. allow it.
-#: c-decl.c:6791
-msgid "`for' loop initial declaration used outside C99 mode"
+#: c-decl.c:6175
+#, fuzzy
+msgid "'for' loop initial declaration used outside C99 mode"
msgstr "se usó la declaración inicial del ciclo `for' fuera del modo C99"
-#: c-decl.c:6815
-#, c-format
-msgid "`struct %s' declared in `for' loop initial declaration"
+#: c-decl.c:6199
+#, fuzzy, c-format
+msgid "'struct %s' declared in 'for' loop initial declaration"
msgstr "`struct %s' declarado en la declaración inicial del ciclo `for'"
-#: c-decl.c:6818
-#, c-format
-msgid "`union %s' declared in `for' loop initial declaration"
+#: c-decl.c:6202
+#, fuzzy, c-format
+msgid "'union %s' declared in 'for' loop initial declaration"
msgstr "`union %s' declarado en la declaración inicial del ciclo `for'"
-#: c-decl.c:6821
-#, c-format
-msgid "`enum %s' declared in `for' loop initial declaration"
+#: c-decl.c:6205
+#, fuzzy, c-format
+msgid "'enum %s' declared in 'for' loop initial declaration"
msgstr "`enum %s' declarado en la declaración inicial del ciclo `for'"
-#: c-decl.c:6829
-#, c-format
-msgid "declaration of non-variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6213
+#, fuzzy
+msgid "%Jdeclaration of non-variable '%D' in 'for' loop initial declaration"
msgstr "declaración de `%s' que no es variable en la declaración inicial del ciclo `for'"
-#: c-decl.c:6831
-#, c-format
-msgid "declaration of static variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6216
+#, fuzzy
+msgid "%Jdeclaration of static variable '%D' in 'for' loop initial declaration"
msgstr "declaración de la variable static `%s' en la declaración inicial del ciclo `for'"
-#: c-decl.c:6833
-#, c-format
-msgid "declaration of `extern' variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6219
+#, fuzzy
+msgid "%Jdeclaration of 'extern' variable '%D' in 'for' loop initial declaration"
msgstr "declaración de la variable `extern' `%s' en la declaración inicial del ciclo `for'"
-#: c-format.c:109 c-format.c:191
-msgid "format string arg not a string type"
-msgstr "el argumento de la cadena de formato no es del tipo cadena de texto"
-
-#: c-format.c:124
-msgid "args to be formatted is not '...'"
-msgstr "los argumentos que recibirán formato no son '...'"
+#: c-decl.c:6532
+#, fuzzy
+msgid "%Jredefinition of global '%D'"
+msgstr "redefinición de `%s'"
-#: c-format.c:133
-msgid "strftime formats cannot format arguments"
-msgstr "los formatos de strftime no pueden dar formato a los argumentos"
+#: c-decl.c:6533
+#, fuzzy
+msgid "%J'%D' previously defined here"
+msgstr "se definió `%#D' previamente aquí"
-#: c-format.c:168 c-format.c:270
+#: c-format.c:94 c-format.c:210
msgid "format string has invalid operand number"
msgstr "la cadena de formato tiene un número de operadores inválido"
-#: c-format.c:202
+#: c-format.c:111
msgid "function does not return string type"
msgstr "la función no devuelve valores de tipo cadena"
-#: c-format.c:233
+#: c-format.c:140
+msgid "format string arg not a string type"
+msgstr "el argumento de la cadena de formato no es del tipo cadena de texto"
+
+#: c-format.c:190
msgid "unrecognized format specifier"
msgstr "no se reconoce el especificador de formato"
-#: c-format.c:246
+#: c-format.c:203
#, c-format
msgid "`%s' is an unrecognized format function type"
msgstr "`%s' es un formato de tipo de función no reconocido"
-#: c-format.c:280
+#: c-format.c:216
+#, fuzzy
+msgid "'...' has invalid operand number"
+msgstr "la cadena de formato tiene un número de operadores inválido"
+
+#: c-format.c:224
msgid "format string arg follows the args to be formatted"
msgstr "el argumento de la cadena de formato sigue a los argumentos que recibirán formato"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "` ' flag"
msgstr "opción ` '"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "the ` ' printf flag"
msgstr "la opción de printf ` '"
-#: c-format.c:602 c-format.c:673
+#: c-format.c:566 c-format.c:590 c-format.c:627 c-format.c:683
msgid "`+' flag"
msgstr "opción `+'"
-#: c-format.c:602
+#: c-format.c:566 c-format.c:590 c-format.c:627
msgid "the `+' printf flag"
msgstr "la opción de printf `+'"
-#: c-format.c:603 c-format.c:649
+#: c-format.c:567 c-format.c:591 c-format.c:628 c-format.c:659
msgid "`#' flag"
msgstr "opción `#'"
-#: c-format.c:603
+#: c-format.c:567 c-format.c:591 c-format.c:628
msgid "the `#' printf flag"
msgstr "la opción de printf `#'"
-#: c-format.c:604 c-format.c:647
+#: c-format.c:568 c-format.c:592 c-format.c:657
msgid "`0' flag"
msgstr "opción `0'"
-#: c-format.c:604
+#: c-format.c:568 c-format.c:592
msgid "the `0' printf flag"
msgstr "la opción de printf `0'"
-#: c-format.c:605 c-format.c:646 c-format.c:676
+#: c-format.c:569 c-format.c:593 c-format.c:656 c-format.c:686
msgid "`-' flag"
msgstr "opción `-'"
-#: c-format.c:605
+#: c-format.c:569 c-format.c:593
msgid "the `-' printf flag"
msgstr "la opción de printf `-'"
-#: c-format.c:606 c-format.c:630
+#: c-format.c:570 c-format.c:640
msgid "`'' flag"
msgstr "opción `''"
-#: c-format.c:606
+#: c-format.c:570
msgid "the `'' printf flag"
msgstr "la opción de printf `''"
-#: c-format.c:607 c-format.c:631
+#: c-format.c:571 c-format.c:641
msgid "`I' flag"
msgstr "opción `I'"
-#: c-format.c:607
+#: c-format.c:571
msgid "the `I' printf flag"
msgstr "la opción de printf `I'"
-#: c-format.c:608 c-format.c:628 c-format.c:650 c-format.c:677 c-format.c:1702
+#: c-format.c:572 c-format.c:594 c-format.c:638 c-format.c:660 c-format.c:687
+#: c-format.c:1802
msgid "field width"
msgstr "anchura de campo"
-#: c-format.c:608
+#: c-format.c:572 c-format.c:594
msgid "field width in printf format"
msgstr "anchura de campo en formato printf"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision"
msgstr "precisión"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision in printf format"
msgstr "precisión en formato printf"
-#: c-format.c:610 c-format.c:629 c-format.c:680
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630 c-format.c:639
+#: c-format.c:690
msgid "length modifier"
msgstr "modificador de longitud"
-#: c-format.c:610
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630
msgid "length modifier in printf format"
msgstr "modificador de longitud en formato printf"
-#: c-format.c:626
+#: c-format.c:636
msgid "assignment suppression"
msgstr "supresión de la asignación"
-#: c-format.c:626
+#: c-format.c:636
msgid "the assignment suppression scanf feature"
msgstr "la supresión de la asignación es una característica de scanf"
-#: c-format.c:627
+#: c-format.c:637
msgid "`a' flag"
msgstr "opción `a'"
-#: c-format.c:627
+#: c-format.c:637
msgid "the `a' scanf flag"
msgstr "la opción de scanf `a'"
-#: c-format.c:628
+#: c-format.c:638
msgid "field width in scanf format"
msgstr "anchura de campo en formato scanf"
-#: c-format.c:629
+#: c-format.c:639
msgid "length modifier in scanf format"
msgstr "modificador de longitud en formato scanf"
-#: c-format.c:630
+#: c-format.c:640
msgid "the `'' scanf flag"
msgstr "la opción de scanf `''"
-#: c-format.c:631
+#: c-format.c:641
msgid "the `I' scanf flag"
msgstr "la opción de scanf `I'"
-#: c-format.c:645
+#: c-format.c:655
msgid "`_' flag"
msgstr "opción `_'"
-#: c-format.c:645
+#: c-format.c:655
msgid "the `_' strftime flag"
msgstr "la opción de strftime `_'"
-#: c-format.c:646
+#: c-format.c:656
msgid "the `-' strftime flag"
msgstr "la opción de strftime `-'"
-#: c-format.c:647
+#: c-format.c:657
msgid "the `0' strftime flag"
msgstr "la opción de strftime `0'"
-#: c-format.c:648 c-format.c:672
+#: c-format.c:658 c-format.c:682
msgid "`^' flag"
msgstr "opción `^'"
-#: c-format.c:648
+#: c-format.c:658
msgid "the `^' strftime flag"
msgstr "la opción de strftime `^'"
-#: c-format.c:649
+#: c-format.c:659
msgid "the `#' strftime flag"
msgstr "la opción de strftime `#'"
-#: c-format.c:650
+#: c-format.c:660
msgid "field width in strftime format"
msgstr "anchura de campo en formato strftime"
-#: c-format.c:651
+#: c-format.c:661
msgid "`E' modifier"
msgstr "modificador `E'"
-#: c-format.c:651
+#: c-format.c:661
msgid "the `E' strftime modifier"
msgstr "el modificador de strftime `E'"
-#: c-format.c:652
+#: c-format.c:662
msgid "`O' modifier"
msgstr "modificador `O'"
-#: c-format.c:652
+#: c-format.c:662
msgid "the `O' strftime modifier"
msgstr "el modificador de strftime `O'"
-#: c-format.c:653
+#: c-format.c:663
msgid "the `O' modifier"
msgstr "el modificador `O'"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character"
msgstr "carácter de relleno"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character in strfmon format"
msgstr "carácter de relleno en el formato de strfmon"
-#: c-format.c:672
+#: c-format.c:682
msgid "the `^' strfmon flag"
msgstr "la opción de strfmon `^'"
-#: c-format.c:673
+#: c-format.c:683
msgid "the `+' strfmon flag"
msgstr "la opción de strfmon `+'"
-#: c-format.c:674
+#: c-format.c:684
msgid "`(' flag"
msgstr "opción `('"
-#: c-format.c:674
+#: c-format.c:684
msgid "the `(' strfmon flag"
msgstr "la opción de strfmon `('"
-#: c-format.c:675
+#: c-format.c:685
msgid "`!' flag"
msgstr "opción `!'"
-#: c-format.c:675
+#: c-format.c:685
msgid "the `!' strfmon flag"
msgstr "la opción de strfmon `!'"
-#: c-format.c:676
+#: c-format.c:686
msgid "the `-' strfmon flag"
msgstr "la opción de strfmon `-'"
-#: c-format.c:677
+#: c-format.c:687
msgid "field width in strfmon format"
msgstr "anchura de campo en formato strfmon"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision"
msgstr "precisión izquierda"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision in strfmon format"
msgstr "precisión izquierda en formato strfmon"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision"
msgstr "precisión derecha"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision in strfmon format"
msgstr "precisión derecha en formato strfmon"
-#: c-format.c:680
+#: c-format.c:690
msgid "length modifier in strfmon format"
msgstr "modificador de longitud en formato strfmon"
-#: c-format.c:983
+#: c-format.c:1107
#, c-format
msgid "function might be possible candidate for `%s' format attribute"
msgstr "la función puede ser un candidato posible para el atributo de formato `%s'"
-#: c-format.c:1107 c-format.c:1128 c-format.c:2112
+#: c-format.c:1223 c-format.c:1244 c-format.c:2212
msgid "missing $ operand number in format"
msgstr "falta el operando numérico $ en el formato"
-#: c-format.c:1138
+#: c-format.c:1254
#, c-format
msgid "%s does not support %%n$ operand number formats"
msgstr "%s no tiene soporte para el operando de formato de número %%n$"
-#: c-format.c:1145
+#: c-format.c:1261
msgid "operand number out of range in format"
msgstr "operando numérico fuera de rango en el formato"
-#: c-format.c:1168
+#: c-format.c:1284
#, c-format
msgid "format argument %d used more than once in %s format"
msgstr "se usa más de una vez el argumento de formato %d en el formato %s"
-#: c-format.c:1218
+#: c-format.c:1331
#, c-format
msgid "format argument %d unused before used argument %d in $-style format"
msgstr "no se usa el argumento de formato %d antes de usar el argumento %d en el formato de estilo-$"
-#: c-format.c:1322
+#: c-format.c:1429
msgid "format not a string literal, format string not checked"
msgstr "el formato no es una cadena literal, no se revisó la cadena de formato"
-#: c-format.c:1336
+#: c-format.c:1443
msgid "format not a string literal and no format arguments"
msgstr "el formato no es una cadena literal y no tiene argumentos de formato"
-#: c-format.c:1338
+#: c-format.c:1445
msgid "format not a string literal, argument types not checked"
msgstr "el formato no es una cadena literal, no se revisaron los tipos de argumento"
-#: c-format.c:1351
+#: c-format.c:1458
msgid "too many arguments for format"
msgstr "demasiados argumentos para el formato"
-#: c-format.c:1354
+#: c-format.c:1461
msgid "unused arguments in $-style format"
msgstr "no se usaron argumentos en el formato de estilo-$"
-#: c-format.c:1357
+#: c-format.c:1464
#, c-format
msgid "zero-length %s format string"
msgstr "cadena de formato %s de longitud cero"
-#: c-format.c:1361
+#: c-format.c:1468
msgid "format is a wide character string"
msgstr "el formato es una cadena de carácter ancha"
-#: c-format.c:1364
+#: c-format.c:1471
msgid "unterminated format string"
msgstr "constante de formato sin terminar"
-#: c-format.c:1581
+#: c-format.c:1681
msgid "embedded `\\0' in format"
msgstr "`\\0' incrustado en el formato"
-#: c-format.c:1596
+#: c-format.c:1696
#, c-format
msgid "spurious trailing `%%' in format"
msgstr "`%%' final espurio en el formato"
-#: c-format.c:1635 c-format.c:1872
+#: c-format.c:1735 c-format.c:1972
#, c-format
msgid "repeated %s in format"
msgstr "se repitió %s en el formato"
-#: c-format.c:1648
+#: c-format.c:1748
msgid "missing fill character at end of strfmon format"
msgstr "falta el carácter de relleno al final del formato strfmon"
-#: c-format.c:1687 c-format.c:1786 c-format.c:2066 c-format.c:2119
+#: c-format.c:1787 c-format.c:1886 c-format.c:2166 c-format.c:2219
msgid "too few arguments for format"
msgstr "muy pocos argumentos para el formato"
-#: c-format.c:1728
+#: c-format.c:1828
#, c-format
msgid "zero width in %s format"
msgstr "anchura cero en el formato %s"
-#: c-format.c:1747
+#: c-format.c:1847
#, c-format
msgid "empty left precision in %s format"
msgstr "precisión izquierda vacía en el formato %s"
-#: c-format.c:1801
+#: c-format.c:1901
msgid "field precision"
msgstr "precisión del campo"
-#: c-format.c:1816
+#: c-format.c:1916
#, c-format
msgid "empty precision in %s format"
msgstr "precisión vacía en el formato %s"
-#: c-format.c:1856
+#: c-format.c:1956
#, c-format
msgid "%s does not support the `%s' %s length modifier"
msgstr "%1$s no tiene soporte para el modificador de longitud %3$s `%2$s'"
-#: c-format.c:1906
+#: c-format.c:2006
msgid "conversion lacks type at end of format"
msgstr "la conversión carece de tipo al final del formato"
-#: c-format.c:1917
+#: c-format.c:2017
#, c-format
msgid "unknown conversion type character `%c' in format"
msgstr "se desconoce el carácter de tipo de conversión `%c' en el formato"
-#: c-format.c:1920
+#: c-format.c:2020
#, c-format
msgid "unknown conversion type character 0x%x in format"
msgstr "se desconoce el carácter de tipo de conversión 0x%x en el formato"
-#: c-format.c:1927
+#: c-format.c:2027
#, c-format
msgid "%s does not support the `%%%c' %s format"
msgstr "%1$s no tiene soporte para el formato %3$s `%%%2$c'"
-#: c-format.c:1943
+#: c-format.c:2043
#, c-format
msgid "%s used with `%%%c' %s format"
msgstr "se usó %1$s con el formato %3$s `%%%2$c'"
-#: c-format.c:1952
+#: c-format.c:2052
#, c-format
msgid "%s does not support %s"
msgstr "%s no tiene soporte para %s"
-#: c-format.c:1961
+#: c-format.c:2061
#, c-format
msgid "%s does not support %s with the `%%%c' %s format"
msgstr "%1$s no tiene soporte para %2$s con el formato %4$s `%%%3$c'"
-#: c-format.c:1994
+#: c-format.c:2094
#, c-format
msgid "%s ignored with %s and `%%%c' %s format"
msgstr "se ignora %1$s con %2$s y el formato %4$s `%%%3$c'"
-#: c-format.c:1998
+#: c-format.c:2098
#, c-format
msgid "%s ignored with %s in %s format"
msgstr "se ignora %s con %s en el formato %s"
-#: c-format.c:2004
+#: c-format.c:2104
#, c-format
msgid "use of %s and %s together with `%%%c' %s format"
msgstr "uso de %1$s y %2$s junto con el formato %4$s `%%%3$c'"
-#: c-format.c:2008
+#: c-format.c:2108
#, c-format
msgid "use of %s and %s together in %s format"
msgstr "uso de %s y %s juntos en el formato %s"
-#: c-format.c:2027
+#: c-format.c:2127
#, c-format
msgid "`%%%c' yields only last 2 digits of year in some locales"
msgstr "`%%%c' sólo produce los dos últimos dígitos del año en algunos lugares"
-#: c-format.c:2030
+#: c-format.c:2130
#, c-format
msgid "`%%%c' yields only last 2 digits of year"
msgstr "`%%%c' sólo produce los dos últimos dígitos del año"
#. The end of the format string was reached.
-#: c-format.c:2046
+#: c-format.c:2146
#, c-format
msgid "no closing `]' for `%%[' format"
msgstr "no hay un `]' que cierre para el formato `%%['"
-#: c-format.c:2059
+#: c-format.c:2159
#, c-format
msgid "use of `%s' length modifier with `%c' type character"
msgstr "uso del modificador de longitud `%s' con el carácter de tipo `%c'"
-#: c-format.c:2080
+#: c-format.c:2180
#, c-format
msgid "%s does not support the `%%%s%c' %s format"
msgstr "%1$s no tiene soporte para el formato %4$s `%%%2$s%3$c'"
-#: c-format.c:2095
+#: c-format.c:2195
msgid "operand number specified with suppressed assignment"
msgstr "número de operandos especificado con asignación suprimida"
-#: c-format.c:2097
+#: c-format.c:2197
msgid "operand number specified for format taking no argument"
msgstr "el número de operandos especificados para el formato no toma argumentos"
-#: c-format.c:2211
+#: c-format.c:2309
#, c-format
msgid "writing through null pointer (arg %d)"
msgstr "escribiendo a través de un puntero nulo (argumento %d)"
-#: c-format.c:2220
+#: c-format.c:2318
#, c-format
msgid "reading through null pointer (arg %d)"
msgstr "leyendo a través de un puntero nulo (argumento %d)"
-#: c-format.c:2240
+#: c-format.c:2338
#, c-format
msgid "writing into constant object (arg %d)"
msgstr "escribiendo en un objeto constante (argumento %d)"
-#: c-format.c:2250
+#: c-format.c:2348
#, c-format
msgid "extra type qualifiers in format argument (arg %d)"
msgstr "calificadores de tipo extra en el argumento de formato (argumento %d)"
-#: c-format.c:2257
+#: c-format.c:2355
#, c-format
msgid "format argument is not a pointer (arg %d)"
msgstr "el argumento de formato no es un puntero (argumento %d)"
-#: c-format.c:2259
+#: c-format.c:2357
#, c-format
msgid "format argument is not a pointer to a pointer (arg %d)"
msgstr "el argumento de formato no es un puntero a un puntero (argumento %d)"
-#: c-format.c:2330
+#: c-format.c:2433
msgid "pointer"
msgstr "puntero"
-#: c-format.c:2332
+#: c-format.c:2435
msgid "different type"
msgstr "tipo diferente"
-#: c-format.c:2353
+#: c-format.c:2456
#, c-format
msgid "%s is not type %s (arg %d)"
msgstr "%s no es del tipo %s (argumento %d)"
-#: c-format.c:2356
+#: c-format.c:2459
#, c-format
msgid "%s format, %s arg (arg %d)"
msgstr "formato %s, argumento %s (argumento %d)"
-#: c-lex.c:153
-msgid "YYDEBUG not defined"
-msgstr "no se definió YYDEBUG"
+#: c-format.c:2704
+msgid "args to be formatted is not '...'"
+msgstr "los argumentos que recibirán formato no son '...'"
+
+#: c-format.c:2713
+msgid "strftime formats cannot format arguments"
+msgstr "los formatos de strftime no pueden dar formato a los argumentos"
+
+#: c-incpath.c:68
+#, c-format
+msgid "ignoring duplicate directory \"%s\"\n"
+msgstr "ignorando el directorio duplicado \"%s\"\n"
+
+#: c-incpath.c:71
+#, c-format
+msgid " as it is a non-system directory that duplicates a system directory\n"
+msgstr " porque es un directorio que no es del sistema que duplica un directorio del sistema\n"
+
+#: c-incpath.c:75
+#, c-format
+msgid "ignoring nonexistent directory \"%s\"\n"
+msgstr "ignorando el directorio inexistente \"%s\"\n"
+
+#: c-incpath.c:273
+#, c-format
+msgid "#include \"...\" search starts here:\n"
+msgstr "la búsqueda de #include \"...\" inicia aquí:\n"
-#: c-lex.c:293
+#: c-incpath.c:277
+#, c-format
+msgid "#include <...> search starts here:\n"
+msgstr "la búsqueda de #include <...> inicia aquí:\n"
+
+#: c-incpath.c:282
+#, c-format
+msgid "End of search list.\n"
+msgstr "Fin de la lista de búsqueda.\n"
+
+#: c-lex.c:240
msgid "badly nested C headers from preprocessor"
msgstr "encabezados C mal anidados del preprocesador"
-#: c-lex.c:336
+#: c-lex.c:281
#, c-format
msgid "ignoring #pragma %s %s"
msgstr "ignorando el #pragma %s %s"
-#: c-lex.c:386
-#, c-format
-msgid "universal-character-name '\\U%08x' not valid in identifier"
-msgstr "universal-character-name `\\U%08x' no es válido en el identificador"
+#. ... or not.
+#: c-lex.c:385
+#, fuzzy
+msgid "%Hstray '@' in program"
+msgstr "'%c' parásito en el programa"
-#: c-lex.c:632
+#: c-lex.c:393
#, c-format
-msgid "universal-character-name '\\u%04x' not valid in identifier"
-msgstr "universal-character-name `\\u%04x' no es válido en el identificador"
+msgid "missing terminating %c character"
+msgstr "falta carácter terminando %c"
-#: c-lex.c:695
+#: c-lex.c:395
#, c-format
msgid "stray '%c' in program"
msgstr "'%c' parásito en el programa"
-#: c-lex.c:697
+#: c-lex.c:397
#, c-format
msgid "stray '\\%o' in program"
msgstr "'\\%o' parásito en el programa"
-#: c-lex.c:854
+#: c-lex.c:535
msgid "this decimal constant is unsigned only in ISO C90"
msgstr "esta constante decimal sólo es unsigned en ISO C90"
-#: c-lex.c:857
+#: c-lex.c:538
msgid "this decimal constant would be unsigned in ISO C90"
msgstr "esta constante decimal será unsigned en ISO C90"
-#: c-lex.c:873
+#: c-lex.c:554
#, c-format
msgid "integer constant is too large for \"%s\" type"
msgstr "la constante entera es demasiado grande para el tipo \"%s\""
-#: c-lex.c:941
+#: c-lex.c:620
#, c-format
msgid "floating constant exceeds range of \"%s\""
msgstr "el número de coma flotante excede el rango de \"%s\""
-#: c-lex.c:977 cpplex.c:330 cpplex.c:668 cpplex.c:1942
-msgid "ignoring invalid multibyte character"
-msgstr "ignorando los carácteres multibyte inválidos"
+#: c-lex.c:696
+#, fuzzy
+msgid "traditional C rejects string constant concatenation"
+msgstr "C tradicional rechaza la concatenación de cadenas"
-#: c-opts.c:355
-#, c-format
-msgid "missing argument to \"-%s\""
-msgstr "faltan argumentos para \"-%s\""
+#: c-objc-common.c:82
+msgid "%Jfunction '%F' can never be inlined because it is supressed using -fno-inline"
+msgstr ""
-#: c-opts.c:359
-#, c-format
-msgid "no class name specified with \"-%s\""
+#: c-objc-common.c:92
+msgid "%Jfunction '%F' can never be inlined because it might not be bound within this unit of translation"
+msgstr ""
+
+#: c-objc-common.c:100
+msgid "%Jfunction '%F' can never be inlined because it uses attributes conflicting with inlining"
+msgstr ""
+
+#: c-objc-common.c:115
+msgid "%Jfunction '%F' can never be inlined because it has pending sizes"
+msgstr ""
+
+#: c-objc-common.c:128
+msgid "%Jnested function '%F' can never be inlined because it has possibly saved pending sizes"
+msgstr ""
+
+#: c-opts.c:141
+#, fuzzy, c-format
+msgid "no class name specified with \"%s\""
msgstr "no se especificó un nombre de clase con \"-%s\""
-#: c-opts.c:366
-#, c-format
-msgid "missing filename after \"-%s\""
-msgstr "falta un nombre de fichero después de \"-%s\""
+#: c-opts.c:145
+#, fuzzy, c-format
+msgid "assertion missing after \"%s\""
+msgstr "falta una aserción después de %s"
-#: c-opts.c:371
-#, c-format
-msgid "missing target after \"-%s\""
+#: c-opts.c:150
+#, fuzzy, c-format
+msgid "macro name missing after \"%s\""
+msgstr "falta el nombre de macro después de %s"
+
+#: c-opts.c:157
+#, fuzzy, c-format
+msgid "missing path after \"%s\""
msgstr "falta un objetivo después de \"-%s\""
-#: c-opts.c:505
-#, c-format
-msgid "options array incorrectly sorted: %s is before %s"
-msgstr "opciones de matriz ordenadas incorrectamente: %s está antes de %s"
+#: c-opts.c:166
+#, fuzzy, c-format
+msgid "missing filename after \"%s\""
+msgstr "falta un nombre de fichero después de \"-%s\""
-#: c-opts.c:550
-#, c-format
-msgid "too many filenames given. Type %s --help for usage"
-msgstr "demasiados nombres de ficheros. Teclee %s --help para información de modo de empleo"
+#: c-opts.c:171
+#, fuzzy, c-format
+msgid "missing makefile target after \"%s\""
+msgstr "falta un objetivo después de \"-%s\""
-#: c-opts.c:937
-msgid "-Wno-strict-prototypes is not supported in C++"
-msgstr "-Wno-strict-prototypes no tiene soporte en C++"
+#: c-opts.c:291
+msgid "-I- specified twice"
+msgstr "se especificó -I- dos veces"
-#: c-opts.c:1017
+#: c-opts.c:692
#, c-format
msgid "switch \"%s\" is no longer supported"
msgstr "la opción \"%s\" ya no tiene soporte"
-#: c-opts.c:1033
-#, c-format
-msgid "switch \"%s\" is deprecated, please see documentation for details"
-msgstr "la opción \"%s\" es obsoleta, por favor vea la documentación para más detalles"
-
-#: c-opts.c:1153
-msgid "-fhandle-exceptions has been renamed to -fexceptions (and is now on by default)"
+#: c-opts.c:816
+#, fuzzy
+msgid "-fhandle-exceptions has been renamed -fexceptions (and is now on by default)"
msgstr "se renombró -fhandle-exceptions a -fexceptions (y ahora está activado por defecto)"
-#: c-opts.c:1273
+#: c-opts.c:982
msgid "output filename specified twice"
msgstr "se especificó dos veces el nombre del fichero de salida"
-#: c-opts.c:1387
+#: c-opts.c:1106
msgid "-Wformat-y2k ignored without -Wformat"
msgstr "se ignora -Wformat-y2k sin -Wformat"
-#: c-opts.c:1389
+#: c-opts.c:1108
msgid "-Wformat-extra-args ignored without -Wformat"
msgstr "se ignora -Wformat-extra-args sin -Wformat"
-#: c-opts.c:1391
+#: c-opts.c:1110
msgid "-Wformat-zero-length ignored without -Wformat"
msgstr "se ignora -Wformat-zero-lenght sin -Wformat"
-#: c-opts.c:1393
+#: c-opts.c:1112
msgid "-Wformat-nonliteral ignored without -Wformat"
msgstr "se ignora -Wformat-nonliteral sin -Wformat"
-#: c-opts.c:1395
+#: c-opts.c:1114
msgid "-Wformat-security ignored without -Wformat"
msgstr "se ignora -Wformat-security sin -Wformat"
-#: c-opts.c:1397
+#: c-opts.c:1116
msgid "-Wmissing-format-attribute ignored without -Wformat"
msgstr "se ignora -Wformat-attribute sin -Wformat"
-#: c-opts.c:1419
-#, c-format
-msgid "opening output file %s"
+#: c-opts.c:1130
+#, fuzzy, c-format
+msgid "opening output file %s: %m"
msgstr "abriendo el fichero de salida %s"
-#: c-opts.c:1474
+#: c-opts.c:1135
#, c-format
-msgid "opening dependency file %s"
+msgid "too many filenames given. Type %s --help for usage"
+msgstr "demasiados nombres de ficheros. Teclee %s --help para información de modo de empleo"
+
+#: c-opts.c:1213
+msgid "YYDEBUG not defined"
+msgstr "no se definió YYDEBUG"
+
+#: c-opts.c:1260
+#, fuzzy, c-format
+msgid "opening dependency file %s: %m"
msgstr "abriendo el fichero de dependencias %s"
-#: c-opts.c:1484
-#, c-format
-msgid "closing dependency file %s"
+#: c-opts.c:1270
+#, fuzzy, c-format
+msgid "closing dependency file %s: %m"
msgstr "cerrando el fichero de dependencias %s"
-#: c-opts.c:1487
-#, c-format
-msgid "when writing output to %s"
+#: c-opts.c:1273
+#, fuzzy, c-format
+msgid "when writing output to %s: %m"
msgstr "al escribir la salida a %s"
-#: c-opts.c:1567
+#: c-opts.c:1343
msgid "to generate dependencies you must specify either -M or -MM"
msgstr "para generar dependencias debe especificar -M ó -MM"
-#: c-opts.c:1715
-#, fuzzy, c-format
-msgid "\"-%c%s%s\" is valid for %s but not for %s"
-msgstr "\"-%s\" es válido para %s pero no para %s"
-
-#. To keep the lines from getting too long for some compilers, limit
-#. to about 500 characters (6 lines) per chunk.
-#: c-opts.c:1726
-msgid ""
-"Switches:\n"
-" -include <file> Include the contents of <file> before other files\n"
-" -imacros <file> Accept definition of macros in <file>\n"
-" -iprefix <path> Specify <path> as a prefix for next two options\n"
-" -iwithprefix <dir> Add <dir> to the end of the system include path\n"
-" -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
-" -isystem <dir> Add <dir> to the start of the system include path\n"
-msgstr ""
-"Interruptores:\n"
-" -include <fichero> Incluye el contenido del <fichero> antes de otros ficheros\n"
-" -imacros <fichero> Aceptar definiciones de macros en el <fichero>\n"
-" -iprefix <ruta> Especificar la <ruta> como un prefijo para las siguientes dos opciones\n"
-" -iwithprefix <dir> Agregar el <dir>ectorio al final de la ruta de inclusión del sistema\n"
-" -iwithprefixbefore <dir> Agregar el <dir>ectorio al final de la ruta de inclusión principal\n"
-" -isystem <dir> Agregar el <dir>ectorio al inicio de la ruta de inclusión del sistema\n"
-
-#: c-opts.c:1735
-msgid ""
-" -idirafter <dir> Add <dir> to the end of the system include path\n"
-" -I <dir> Add <dir> to the end of the main include path\n"
-" -I- Fine-grained include path control; see info docs\n"
-" -nostdinc Do not search system include directories\n"
-" (dirs specified with -isystem will still be used)\n"
-" -nostdinc++ Do not search system include directories for C++\n"
-" -o <file> Put output into <file>\n"
-msgstr ""
-" -idirafter <dir> Agregar el <dir>ectorio al final de la ruta de inclusión del sistema\n"
-" -I <dir> Agregar el <dir>ectorio al final de la ruta de inclusión principal\n"
-" -I- Control granula de la ruta de inclusión; vea los documentos info\n"
-" -nostdinc No buscar en los directorios de inclusión del sistema\n"
-" (aún se usarán los directorios especificados con -isystem)\n"
-" -nostdinc++ No buscar en los directorios de inclusión del sistema para C++\n"
-" -o <fichero> Poner la salida en el <fichero>\n"
-
-#: c-opts.c:1744
-msgid ""
-" -trigraphs Support ISO C trigraphs\n"
-" -std=<std name> Specify the conformance standard; one of:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Inhibit warning messages\n"
-" -W[no-]trigraphs Warn if trigraphs are encountered\n"
-" -W[no-]comment{s} Warn if one comment starts inside another\n"
-msgstr ""
-" -trigraphs Permitir trigrafos ISO C\n"
-" -std=<nombre std> Especificar la concordancia con estándard; una de:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Inhibir los mensajes de aviso\n"
-" -W[no-]trigraphs Avisar si se encuentran trigrafos\n"
-" -W[no-]comment{s} Avisar si un comentario inicia dentro de otro\n"
-
-#: c-opts.c:1753
-msgid ""
-" -W[no-]traditional Warn about features not present in traditional C\n"
-" -W[no-]undef Warn if an undefined macro is used by #if\n"
-" -W[no-]import Warn about the use of the #import directive\n"
-msgstr ""
-" -W[no-]traditional Avisar sobre características no presentes en C tradicional\n"
-" -W[no-]undef Avisar si una macro sin definir es usada por #if\n"
-" -W[no-]import Avisar sobre el uso de la directiva #import\n"
-
-#: c-opts.c:1758
-msgid ""
-" -W[no-]error Treat all warnings as errors\n"
-" -W[no-]system-headers Do not suppress warnings from system headers\n"
-" -W[no-]all Enable most preprocessor warnings\n"
-msgstr ""
-" -W[no-]error Tratar todos los avisos como errores\n"
-" -W[no-]system-headers No suprimir los avisos de los encabezados del sistema\n"
-" -W[no-]all Activar casi todos los avisos del preprocesador\n"
+#: c-opts.c:1403
+msgid "<built-in>"
+msgstr "<interno>"
-#: c-opts.c:1763
-msgid ""
-" -M Generate make dependencies\n"
-" -MM As -M, but ignore system header files\n"
-" -MD Generate make dependencies and compile\n"
-" -MMD As -MD, but ignore system header files\n"
-" -MF <file> Write dependency output to the given file\n"
-" -MG Treat missing header file as generated files\n"
-msgstr ""
-" -M Genera dependencias para make\n"
-" -MM Como -M, pero ignora los ficheros de encabezado del sistema\n"
-" -MD Genera dependencias para make y compila\n"
-" -MMD Como -MD, pero ignora los ficheros de encabezado del sistema\n"
-" -MF <fichero> Escribe la salida de la dependencia en el fichero dado\n"
-" -MG Trata los ficheros de encabezado faltantes como ficheros generados\n"
+#: c-opts.c:1418
+msgid "<command line>"
+msgstr "<línea de orden>"
-# ¿Estoy usando la traducción correcta de 'quoted'? cfuga
-#: c-opts.c:1771
-msgid ""
-" -MP\t\t\t Generate phony targets for all headers\n"
-" -MQ <target> Add a MAKE-quoted target\n"
-" -MT <target> Add an unquoted target\n"
+#: c-opts.c:1502
+msgid "too late for # directive to set debug directory"
msgstr ""
-" -MP\t\t\t Generar objetivos falsos para todos los encabezados\n"
-" -MQ <objetivo> Agregar un objetivo entrecomillado para MAKE\n"
-" -MT <objetivo> Agregar un objetivo sin comillas\n"
-
-#: c-opts.c:1776
-msgid ""
-" -D<macro> Define a <macro> with string '1' as its value\n"
-" -D<macro>=<val> Define a <macro> with <val> as its value\n"
-" -A<question>=<answer> Assert the <answer> to <question>\n"
-" -A-<question>=<answer> Disable the <answer> to <question>\n"
-" -U<macro> Undefine <macro> \n"
-" -v Display the version number\n"
-msgstr ""
-" -D<macro> Define una <macro> con la cadena '1' como su valor\n"
-" -D<macro>=<valor> Define una <macro> con <valor> como su valor\n"
-" -A<pregunta>=<resp> Define la <resp>uesta para la <pregunta>\n"
-" -A-<pregunta>=<resp> Desactiva la <resp>uesta a la <pregunta>\n"
-" -U<macro> Borra la definición de <macro> \n"
-" -v Muestra el número de la versión\n"
-
-#: c-opts.c:1784
-msgid ""
-" -H Print the name of header files as they are used\n"
-" -C Do not discard comments\n"
-" -dM Display a list of macro definitions active at end\n"
-" -dD Preserve macro definitions in output\n"
-" -dN As -dD except that only the names are preserved\n"
-" -dI Include #include directives in the output\n"
-msgstr ""
-" -H Muestra el nombre de los ficheros de encabezado cada vez que se usan\n"
-" -C No descarta los comentarios\n"
-" -dM Muestra una lista de definiciones de macro activas al final\n"
-" -dD Preserva las definiciones de macro en la salida\n"
-" -dN Como -dD excepto que sólo se preservan los nombres\n"
-" -dI Incluye directivas #include en la salida\n"
-
-#: c-opts.c:1792
-msgid ""
-" -f[no-]preprocessed Treat the input file as already preprocessed\n"
-" -ftabstop=<number> Distance between tab stops for column reporting\n"
-" -P Do not generate #line directives\n"
-" -remap Remap file names when including files\n"
-" --help Display this information\n"
-msgstr ""
-" -f[no-]preprocessed Trata el fichero de entrada como si ya fuera preprocesado\n"
-" -ftabstop=<número> Distancia entre los topes de tabulador para el reporte en columnas\n"
-" -P No genera directivas #line\n"
-" -remap Remapea los nombres de fichero cuando se incluyan ficheros\n"
-" --help Muestra esta información\n"
#. Like YYERROR but do call yyerror.
-#: c-parse.y:55 parse.y:48 objc-parse.y:55
+#: c-parse.y:54 c-parse.c:5381 gengtype-yacc.c:1514 java/parse-scan.c:3063
+#: java/parse.c:6067 objc/objc-parse.y:54 objc/objc-parse.c:6644
msgid "syntax error"
msgstr "error sintáctico"
-#: /usr/share/bison/bison.simple:179
+#: c-parse.c:2118 gengtype-yacc.c:545 java/parse-scan.c:1932 java/parse.c:2875
+#: objc/objc-parse.c:2717
msgid "syntax error: cannot back up"
msgstr "error sintáctico: no se puede regresar"
-#: c-parse.y:325 objc-parse.y:346
+#: c-parse.y:320 objc/objc-parse.y:344
msgid "ISO C forbids an empty source file"
msgstr "ISO C prohíbe un fichero fuente vacío"
-#: c-parse.y:366 c-typeck.c:6916 objc-parse.y:388
+#: c-parse.y:349 c-typeck.c:6217 objc/objc-parse.y:374
msgid "argument of `asm' is not a constant string"
msgstr "el argumento de `asm' no es una cadena constante"
-#: c-parse.y:374 objc-parse.y:396
+#: c-parse.y:357 objc/objc-parse.y:382
msgid "ISO C forbids data definition with no type or storage class"
msgstr "ISO C prohíbe la definición de datos sin tipo o clase de almacenamiento"
-#: c-parse.y:376 objc-parse.y:398
+#: c-parse.y:359 objc/objc-parse.y:384
msgid "data definition has no type or storage class"
msgstr "la definición de datos no tiene tipo o clase de almacenamiento"
-#: c-parse.y:389 objc-parse.y:411
+#: c-parse.y:372 objc/objc-parse.y:397
msgid "ISO C does not allow extra `;' outside of a function"
msgstr "ISO C no permite ';' extra fuera de una función"
-#: c-parse.y:449 cppexp.c:1312
+#: c-parse.y:429 cppexp.c:1253
msgid "traditional C rejects the unary plus operator"
msgstr "C tradicional rechaza el operador unario mas"
-#: c-parse.y:496 objc-parse.y:518
+#: c-parse.y:476 objc/objc-parse.y:501
msgid "`sizeof' applied to a bit-field"
msgstr "`sizeof' aplicado a un campo de bits"
-#: c-parse.y:583 objc-parse.y:605
+#: c-parse.y:563 objc/objc-parse.y:588
msgid "ISO C forbids omitting the middle term of a ?: expression"
msgstr "ISO C prohíbe la omisión del término medio de una expresión ?:"
-#: c-parse.y:632 objc-parse.y:654
+#: c-parse.y:611 objc/objc-parse.y:636
msgid "ISO C89 forbids compound literals"
msgstr "ISO C89 prohíbe las literales compuestas"
-#: c-parse.y:646 objc-parse.y:668
+#: c-parse.y:625 objc/objc-parse.y:650
msgid "ISO C forbids braced-groups within expressions"
msgstr "ISO C prohíbe grupos de llaves dentro de expresiones"
-#: c-parse.y:677 objc-parse.y:699
+#: c-parse.y:653 objc/objc-parse.y:678
msgid "first argument to __builtin_choose_expr not a constant"
msgstr "el primer argumento de __builtin_choose_expr no es una constante"
-#: c-parse.y:721 objc-parse.y:767
+#: c-parse.y:696 objc/objc-parse.y:737
msgid "traditional C rejects ISO C style function definitions"
msgstr "C tradicional rechaza la definición de funciones de estilo ISO C"
-#: c-parse.y:985 c-parse.y:991 c-parse.y:997 c-parse.y:1003 c-parse.y:1024
-#: c-parse.y:1030 c-parse.y:1036 c-parse.y:1042 c-parse.y:1075 c-parse.y:1081
-#: c-parse.y:1087 c-parse.y:1093 c-parse.y:1138 c-parse.y:1144 c-parse.y:1150
-#: c-parse.y:1156 parse.y:1933 parse.y:1940 parse.y:1975 objc-parse.y:1031
-#: objc-parse.y:1037 objc-parse.y:1043 objc-parse.y:1049 objc-parse.y:1070
-#: objc-parse.y:1076 objc-parse.y:1082 objc-parse.y:1088 objc-parse.y:1121
-#: objc-parse.y:1127 objc-parse.y:1133 objc-parse.y:1139 objc-parse.y:1184
-#: objc-parse.y:1190 objc-parse.y:1196 objc-parse.y:1202
+#: c-parse.y:699 c-parse.y:705 objc/objc-parse.y:740 objc/objc-parse.y:746
+#, fuzzy
+msgid "old-style parameter declaration"
+msgstr "no se puede usar `::' en la declaración de parámetros"
+
+#: c-parse.y:967 c-parse.y:973 c-parse.y:979 c-parse.y:985 c-parse.y:1006
+#: c-parse.y:1012 c-parse.y:1018 c-parse.y:1024 c-parse.y:1057 c-parse.y:1063
+#: c-parse.y:1069 c-parse.y:1075 c-parse.y:1120 c-parse.y:1126 c-parse.y:1132
+#: c-parse.y:1138 objc/objc-parse.y:1008 objc/objc-parse.y:1014
+#: objc/objc-parse.y:1020 objc/objc-parse.y:1026 objc/objc-parse.y:1047
+#: objc/objc-parse.y:1053 objc/objc-parse.y:1059 objc/objc-parse.y:1065
+#: objc/objc-parse.y:1098 objc/objc-parse.y:1104 objc/objc-parse.y:1110
+#: objc/objc-parse.y:1116 objc/objc-parse.y:1161 objc/objc-parse.y:1167
+#: objc/objc-parse.y:1173 objc/objc-parse.y:1179
#, c-format
msgid "`%s' is not at beginning of declaration"
msgstr "`%s' no está en el inicio de la declaración"
-#: c-parse.y:1441 objc-parse.y:1496
+#: c-parse.y:1300 objc/objc-parse.y:1350
+#, fuzzy
+msgid "`typeof' applied to a bit-field"
+msgstr "`sizeof' aplicado a un campo de bits"
+
+#: c-parse.y:1427 objc/objc-parse.y:1477
msgid "ISO C forbids empty initializer braces"
msgstr "ISO C prohíbe las llaves de inicializador vacías"
-#: c-parse.y:1455 objc-parse.y:1510
+#: c-parse.y:1441 objc/objc-parse.y:1491
msgid "ISO C89 forbids specifying subobject to initialize"
msgstr "ISO C89 prohíbe la especificación de subobjetos a inicializar"
-#: c-parse.y:1458 objc-parse.y:1513
+#: c-parse.y:1444 objc/objc-parse.y:1494
msgid "obsolete use of designated initializer without `='"
msgstr "uso obsoleto del inicializador designado sin `='"
-#: c-parse.y:1462 objc-parse.y:1517
+#: c-parse.y:1448 objc/objc-parse.y:1498
msgid "obsolete use of designated initializer with `:'"
msgstr "uso obsoleto del inicializador asignado con `:'"
-#: c-parse.y:1489 objc-parse.y:1544
+#: c-parse.y:1475 objc/objc-parse.y:1525
msgid "ISO C forbids specifying range of elements to initialize"
msgstr "ISO C prohíbe la especificación de rangos de elementos a inicializar"
-#: c-parse.y:1497 c-parse.y:1528 objc-parse.y:1552 objc-parse.y:1583
+#: c-parse.y:1483 c-parse.y:1514 objc/objc-parse.y:1533 objc/objc-parse.y:1564
msgid "ISO C forbids nested functions"
msgstr "ISO C prohíbe las funciones anidadas"
-#: c-parse.y:1703 objc-parse.y:1760
+#: c-parse.y:1691 objc/objc-parse.y:1743
msgid "ISO C forbids forward references to `enum' types"
msgstr "ISO C prohíbe las declaraciones posteriores para tipos `enum'"
-#: c-parse.y:1715 parse.y:2411 objc-parse.y:1772
+#: c-parse.y:1703 cp/parser.c:9282 objc/objc-parse.y:1755
msgid "comma at end of enumerator list"
msgstr "coma al final de la lista de enumeradores"
-#: c-parse.y:1723 objc-parse.y:1780
+#: c-parse.y:1723 objc/objc-parse.y:1775
msgid "no semicolon at end of struct or union"
msgstr "no hay punto y coma al final del struct o union"
-#: c-parse.y:1732 objc-parse.y:1789 objc-parse.y:2864
+#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846
msgid "extra semicolon in struct or union specified"
msgstr "se especificó un punto y coma extra en un struct o union"
-#: c-parse.y:1745 objc-parse.y:1816
+#: c-parse.y:1745 objc/objc-parse.y:1800
msgid "ISO C doesn't support unnamed structs/unions"
msgstr "ISO C no tiene soporte para structs/unions sin nombre"
-#: c-parse.y:1754 objc-parse.y:1825
+#: c-parse.y:1754 objc/objc-parse.y:1809
msgid "ISO C forbids member declarations with no members"
msgstr "ISO C prohíbe declaraciones de miembros con no miembros"
-#: c-parse.y:1913 objc-parse.y:1984
-msgid "deprecated use of label at end of compound statement"
+#: c-parse.y:1915 objc/objc-parse.y:1970
+#, fuzzy
+msgid "label at end of compound statement"
msgstr "uso obsoleto de la etiqueta al final de la declaración compuesta"
-#: c-parse.y:1930 objc-parse.y:2001
-msgid "ISO C89 forbids mixed declarations and code"
+#: c-parse.y:1934 objc/objc-parse.y:1989
+#, fuzzy
+msgid "ISO C90 forbids mixed declarations and code"
msgstr "ISO C89 prohíbe las declaraciones mezcladas y código"
-#: c-parse.y:2005 objc-parse.y:2080
+#: c-parse.y:2012 objc/objc-parse.y:2069
msgid "ISO C forbids label declarations"
msgstr "ISO C prohíbe las declaraciones etiquetadas"
-#: c-parse.y:2055 parse.y:1638 objc-parse.y:2130
+#: c-parse.y:2062 objc/objc-parse.y:2119
msgid "braced-group within expression allowed only inside a function"
msgstr "un grupo de llaves dentro de una expresión sólo se permite dentro de una función"
-#: c-parse.y:2182 objc-parse.y:2257
+#: c-parse.y:2184 objc/objc-parse.y:2241
msgid "empty body in an else-statement"
msgstr "cuerpo vacío en una declaración else"
-#: c-parse.y:2303 objc-parse.y:2378
+#: c-parse.y:2192 objc/objc-parse.y:2249
+#, fuzzy
+msgid "%Hempty body in an if-statement"
+msgstr "cuerpo vacío en una declaración else"
+
+#: c-parse.y:2272 cp/parser.c:6028 objc/objc-parse.y:2329
+msgid "break statement not within loop or switch"
+msgstr "la declaración break no está dentro de un ciclo o switch"
+
+#: c-parse.y:2281 cp/parser.c:6039 objc/objc-parse.y:2338
+msgid "continue statement not within a loop"
+msgstr "la declaración continue no está dentro dentro de un ciclo"
+
+#: c-parse.y:2323 objc/objc-parse.y:2380
msgid "ISO C forbids `goto *expr;'"
msgstr "ISO C prohíbe `goto *expr;'"
-#: c-parse.y:2403 objc-parse.y:2478
-msgid "ISO C forbids forward parameter declarations"
-msgstr "ISO C prohíbe declaraciones adelantadas de parámetros"
-
#. Gcc used to allow this as an extension. However, it does
#. not work for all targets, and thus has been disabled.
#. Also, since func (...) and func () are indistinguishable,
#. it caused problems with the code in expand_builtin which
#. tries to verify that BUILT_IN_NEXT_ARG is being used
#. correctly.
-#: c-parse.y:2429 objc-parse.y:2504
+#: c-parse.y:2440 objc/objc-parse.y:2548
msgid "ISO C requires a named argument before `...'"
msgstr "ISO C requiere un argumento con nombre antes de `...'"
-#: c-parse.y:2526 objc-parse.y:2601
+#: c-parse.y:2538 objc/objc-parse.y:2646
msgid "`...' in old-style identifier list"
msgstr "`...' en una lista de identificadores de estilo antiguo"
-#: /usr/share/bison/bison.simple:795
-msgid "parse error; also virtual memory exhausted"
+#: c-parse.c:5377 gengtype-yacc.c:1510 java/parse-scan.c:3059
+#: java/parse.c:6063 objc/objc-parse.c:6640
+#, fuzzy
+msgid "syntax error; also virtual memory exhausted"
msgstr "error de decodificación; también se agotó la memoria"
-#: /usr/share/bison/bison.simple:799 cp/spew.c:364
-msgid "parse error"
-msgstr "error de decodificación"
-
-#: /usr/share/bison/bison.simple:924
+#: c-parse.c:5495 gengtype-yacc.c:1628 java/parse-scan.c:3177
+#: java/parse.c:6181 objc/objc-parse.c:6758
msgid "parser stack overflow"
msgstr "desbordamiento de la pila del decodificador"
-#: c-parse.y:2838 cp/spew.c:1525 objc-parse.y:3537
+#: c-parse.y:2968 objc/objc-parse.y:3663
#, c-format
-msgid "%s at end of input"
-msgstr "%s al final de la entrada"
+msgid "syntax error at '%s' token"
+msgstr "error sintáctico en el elemento '%s'"
+
+#: c-pch.c:112
+#, fuzzy, c-format
+msgid "can't create precompiled header %s: %m"
+msgstr "no se puede crear el directorio %s"
+
+#: c-pch.c:132
+#, fuzzy, c-format
+msgid "can't write to %s: %m"
+msgstr "no se puede escribir a %s"
-#: c-parse.y:2844 cp/spew.c:1533 objc-parse.y:3543
+#: c-pch.c:138
+#, fuzzy, c-format
+msgid "`%s' is not a valid output file"
+msgstr "\"%s\" no es un nombre de fichero válido"
+
+#: c-pch.c:167 c-pch.c:183 c-pch.c:195
+#, fuzzy, c-format
+msgid "can't write %s: %m"
+msgstr "no se puede escribir a %s"
+
+#: c-pch.c:173
+#, fuzzy, c-format
+msgid "can't seek in %s: %m"
+msgstr "no se puede reabrir %s"
+
+#: c-pch.c:181 c-pch.c:221 c-pch.c:249 c-pch.c:254 c-pch.c:324
+#, fuzzy, c-format
+msgid "can't read %s: %m"
+msgstr "no se puede expandir %s"
+
+#: c-pch.c:234
+#, fuzzy, c-format
+msgid "%s: not compatible with this GCC version"
+msgstr "el índice no es compatible con el modo de índice"
+
+#. It's a PCH for the wrong language.
+#: c-pch.c:237
+#, fuzzy, c-format
+msgid "%s: not for %s"
+msgstr "%s no tiene soporte para %s"
+
+#. Not any kind of PCH.
+#: c-pch.c:241
+#, fuzzy, c-format
+msgid "%s: not a PCH file"
+msgstr "%s: no es un fichero COFF"
+
+#: c-pch.c:260
#, c-format
-msgid "%s before %s'%c'"
-msgstr "%s antes de %s'%c'"
+msgid "%s: created on host `%.*s', but used on host `%s'"
+msgstr ""
-#: c-parse.y:2846 cp/spew.c:1535 objc-parse.y:3545
+#: c-pch.c:270
#, c-format
-msgid "%s before %s'\\x%x'"
-msgstr "%s antes de %s'\\x%x'"
+msgid "%s: created for target `%.*s', but used for target `%s'"
+msgstr ""
-#: c-parse.y:2850 cp/spew.c:1542 objc-parse.y:3549
+#: c-pch.c:283
#, c-format
-msgid "%s before string constant"
-msgstr "%s antes de una constante de cadena"
+msgid "%s: created by version `%.*s', but this is version `%s'"
+msgstr ""
-#: c-parse.y:2852 cp/spew.c:1544 objc-parse.y:3551
+#: c-pch.c:299
#, c-format
-msgid "%s before numeric constant"
-msgstr "%s antes de una constante numérica"
+msgid "%s: created with -g%s, but used with -g%s"
+msgstr ""
-#: c-parse.y:2854 objc-parse.y:3553
+#: c-pch.c:313
#, c-format
-msgid "%s before \"%s\""
-msgstr "%s antes de \"%s\""
+msgid "%s: had text segment at different address"
+msgstr ""
-#: c-parse.y:2856 objc-parse.y:3555
+#: c-pch.c:330 cpperror.c:176 gcc.c:6547
#, c-format
-msgid "%s before '%s' token"
-msgstr "%s antes del elemento '%s'"
+msgid "%s: %s"
+msgstr "%s: %s"
-#: c-parse.y:2921
-msgid "traditional C rejects string concatenation"
-msgstr "C tradicional rechaza la concatenación de cadenas"
+#: c-pch.c:361
+#, fuzzy
+msgid "calling fdopen"
+msgstr "fdopen"
-#: c-parse.y:3047 objc-parse.y:3779
-#, c-format
-msgid "syntax error at '%s' token"
-msgstr "error sintáctico en el elemento '%s'"
+#: c-pch.c:369 c-pch.c:381
+#, fuzzy
+msgid "reading"
+msgstr "creando %s"
-#: c-pragma.c:107
+#: c-pragma.c:106
msgid "#pragma pack (pop) encountered without matching #pragma pack (push, <n>)"
msgstr "se encontró un #pragma pack (pop) sin un #pragma pack (push, <n>) coincidente"
-#: c-pragma.c:125
+#: c-pragma.c:124
#, c-format
msgid "#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s, <n>)"
msgstr "se encontró un #pragma pack (pop, %s) sin un #pragma pack (push, %s, <n>) coincidente"
-#: c-pragma.c:145
+#: c-pragma.c:144
msgid "#pragma pack(push[, id], <n>) is not supported on this target"
msgstr "#pragma pack(push[, id], <n>) no tiene soporte en este objetivo"
-#: c-pragma.c:147
+#: c-pragma.c:146
msgid "#pragma pack(pop[, id], <n>) is not supported on this target"
msgstr "#pragma pack(pop[, id], <n>) no tiene soporte en este objetivo"
-#: c-pragma.c:167
+#: c-pragma.c:165
msgid "missing '(' after '#pragma pack' - ignored"
msgstr "falta un '(' después de '#pragma pack' - ignorado"
-#: c-pragma.c:180 c-pragma.c:230
+#: c-pragma.c:178 c-pragma.c:228
msgid "malformed '#pragma pack' - ignored"
msgstr "'#pragma pack' mal formado - ignorado"
-#: c-pragma.c:185
+#: c-pragma.c:183
msgid "malformed '#pragma pack(push[, id], <n>)' - ignored"
msgstr "'#pragma pack(push[, id], <n>)' mal formado - ignorado"
-#: c-pragma.c:187
+#: c-pragma.c:185
msgid "malformed '#pragma pack(pop[, id])' - ignored"
msgstr "'#pragma pack(pop[, id], <n>)' mal formado - ignorado"
-#: c-pragma.c:196
+#: c-pragma.c:194
#, c-format
msgid "unknown action '%s' for '#pragma pack' - ignored"
msgstr "acción desconocida '%s' para '#pragma pack' - ignorado"
-#: c-pragma.c:233
+#: c-pragma.c:231
msgid "junk at end of '#pragma pack'"
msgstr "basura al final de '#pragma pack'"
-#: c-pragma.c:247
+#: c-pragma.c:245
#, c-format
msgid "alignment must be a small power of two, not %d"
msgstr "la alineación debe ser una potencia pequeña de dos, no %d"
-#: c-pragma.c:280
-#, c-format
-msgid "applying #pragma weak `%s' after first use results in unspecified behavior"
+#: c-pragma.c:278
+#, fuzzy
+msgid "%Japplying #pragma weak '%D' after first use results in unspecified behavior"
msgstr "la aplicación del #pragma weak `%s' después del primer uso resulta en conducta no especificada"
-#: c-pragma.c:328 c-pragma.c:333
+#: c-pragma.c:325 c-pragma.c:330
msgid "malformed #pragma weak, ignored"
msgstr "#pragma weak malformado, ignorado"
-#: c-pragma.c:337
+#: c-pragma.c:334
msgid "junk at end of #pragma weak"
msgstr "basura al final de #pragma weak"
-#: c-pragma.c:372 c-pragma.c:377
+#: c-pragma.c:367 c-pragma.c:372
msgid "malformed #pragma redefine_extname, ignored"
msgstr "#pragma redefine_extname malformado, ignorado"
-#: c-pragma.c:382
+#: c-pragma.c:377
msgid "junk at end of #pragma redefine_extname"
msgstr "basura al final de #pragma redefine_extname"
-#: c-pragma.c:389 c-pragma.c:470
+#: c-pragma.c:384 c-pragma.c:462
msgid "#pragma redefine_extname conflicts with declaration"
msgstr "#pragma redefine_extname tiene conflictos con la declaración"
-#: c-pragma.c:420
+#: c-pragma.c:413
msgid "malformed #pragma extern_prefix, ignored"
msgstr "#pragma extern_prefix malformado, ignorado"
-#: c-pragma.c:425
+#: c-pragma.c:418
msgid "junk at end of #pragma extern_prefix"
msgstr "basura al final de #pragma extern_prefix"
-#: c-pragma.c:457
+#: c-pragma.c:449
msgid "asm declaration conflicts with previous rename"
msgstr "la declaración asm causa conflictos con el renombrado previo"
-#: c-semantics.c:565
-msgid "break statement not within loop or switch"
-msgstr "la declaración break no está dentro de un ciclo o switch"
-
-#: c-semantics.c:583
-msgid "continue statement not within a loop"
-msgstr "la declaración continue no está dentro dentro de un ciclo"
-
-#: c-semantics.c:678
-msgid "destructor needed for `%#D'"
+#: c-semantics.c:697
+#, fuzzy
+msgid "destructor needed for `%D'"
msgstr "se necesita un destructor para `%#D'"
-#: c-semantics.c:679
+#: c-semantics.c:698
msgid "where case label appears here"
msgstr "donde la etiqueta case aparece aquí"
-#: c-semantics.c:682
+#: c-semantics.c:701
msgid "(enclose actions of previous case statements requiring destructors in their own scope.)"
msgstr "(las acciones adjuntas de declaraciones case previas requieren destructores en su propio ámbito.)"
-#: c-semantics.c:725 c-typeck.c:6942 cp/semantics.c:897
+#: c-semantics.c:737 c-typeck.c:6239 cp/semantics.c:1070
#, c-format
msgid "%s qualifier ignored on asm"
msgstr "se ignora el calificador %s en asm"
-#: c-typeck.c:123
+#: c-semantics.c:991
+#, fuzzy
+msgid "will never be executed"
+msgstr "la llamada %2d nunca se ejecuta\n"
+
+#: c-typeck.c:120
#, c-format
msgid "`%s' has an incomplete type"
msgstr "`%s' tiene un tipo de dato incompleto"
-#: c-typeck.c:145 cp/call.c:2865
+#: c-typeck.c:142 cp/call.c:2532
msgid "invalid use of void expression"
msgstr "uso inválido de la expresión void"
-#: c-typeck.c:153
+#: c-typeck.c:150
msgid "invalid use of flexible array member"
msgstr "uso inválido de un miembro de matriz flexible"
-#: c-typeck.c:159
+#: c-typeck.c:156
msgid "invalid use of array with unspecified bounds"
msgstr "uso inválido de matrices con límites sin especificar"
-#: c-typeck.c:167
+#: c-typeck.c:164
#, c-format
msgid "invalid use of undefined type `%s %s'"
msgstr "uso inválido del tipo indefinido `%s %s'"
#. If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL.
-#: c-typeck.c:171
+#: c-typeck.c:168
#, c-format
msgid "invalid use of incomplete typedef `%s'"
msgstr "uso inválido del typedef incompleto `%s'"
-#: c-typeck.c:424 c-typeck.c:438
+#: c-typeck.c:415 c-typeck.c:430
msgid "function types not truly compatible in ISO C"
msgstr "los tipos de función no son totalmente compatibles en ISO C"
-#: c-typeck.c:603
+#: c-typeck.c:611
msgid "types are not quite compatible"
msgstr "los tipos no son totalmente compatibles"
-#: c-typeck.c:757 c-typeck.c:2687
+#: c-typeck.c:820
+#, fuzzy
+msgid "function return types not compatible due to `volatile'"
+msgstr "el tipo de devolución de función no puede ser función"
+
+#: c-typeck.c:966 c-typeck.c:2143
msgid "arithmetic on pointer to an incomplete type"
msgstr "aritmética en puntero a un tipo de dato incompleto"
-#: c-typeck.c:1136
+#: c-typeck.c:1339
#, c-format
msgid "%s has no member named `%s'"
msgstr "%s no tiene un miembro llamado `%s'"
-#: c-typeck.c:1172
+#: c-typeck.c:1375
#, c-format
msgid "request for member `%s' in something not a structure or union"
msgstr "petición del miembro `%s' en algo que no es estructura ó unión"
-#: c-typeck.c:1204
+#: c-typeck.c:1404
msgid "dereferencing pointer to incomplete type"
msgstr "puntero deferenciado a tipo de dato incompleto"
-#: c-typeck.c:1208
+#: c-typeck.c:1408
msgid "dereferencing `void *' pointer"
msgstr "deferenciando el puntero `void *'"
-#: c-typeck.c:1225 cp/typeck.c:2369
+#: c-typeck.c:1425 cp/typeck.c:2104
#, c-format
msgid "invalid type argument of `%s'"
msgstr "argumento de tipo inválido de `%s'"
-#: c-typeck.c:1244 cp/typeck.c:2395
+#: c-typeck.c:1443 cp/typeck.c:2129
msgid "subscript missing in array reference"
msgstr "falta subíndice en la referencia de la matriz"
-#: c-typeck.c:1265 cp/typeck.c:2437
+#: c-typeck.c:1464 cp/typeck.c:2171
msgid "array subscript has type `char'"
msgstr "el subíndice de la matriz tiene tipo `char'"
-#: c-typeck.c:1273 c-typeck.c:1362 cp/typeck.c:2444 cp/typeck.c:2523
+#: c-typeck.c:1472 c-typeck.c:1561 cp/typeck.c:2175 cp/typeck.c:2261
msgid "array subscript is not an integer"
msgstr "el subíndice de la matriz no es un entero"
-#: c-typeck.c:1306
+#: c-typeck.c:1505
msgid "ISO C forbids subscripting `register' array"
msgstr "ISO C prohíbe el subíndice de una matriz `register'"
-#: c-typeck.c:1308
+#: c-typeck.c:1507
msgid "ISO C90 forbids subscripting non-lvalue array"
msgstr "ISO C90 prohíbe el subíndice de una matriz no-lvaluada"
-#: c-typeck.c:1341
+#: c-typeck.c:1540
msgid "subscript has type `char'"
msgstr "el subíndice es de tipo `char'"
-#: c-typeck.c:1357 cp/typeck.c:2518
+#: c-typeck.c:1556 cp/typeck.c:2256
msgid "subscripted value is neither array nor pointer"
msgstr "el valor indicado por el subíndice no es ni matriz ni puntero"
-#: c-typeck.c:1411
-#, c-format
-msgid "`%s' undeclared here (not in a function)"
-msgstr "`%s' no se declaró aquí (no en una función)"
-
-#: c-typeck.c:1418
-#, c-format
-msgid "`%s' undeclared (first use in this function)"
-msgstr "`%s' no se declaró aquí (primer uso en esta función)"
-
-#: c-typeck.c:1423
-msgid "(Each undeclared identifier is reported only once"
-msgstr "(Cada identificador no declarado solamente se reporta una vez"
-
-#: c-typeck.c:1424
-msgid "for each function it appears in.)"
-msgstr "para cada funcion en la que aparece.)"
-
-#: c-typeck.c:1441
+#: c-typeck.c:1586
#, c-format
msgid "local declaration of `%s' hides instance variable"
msgstr "la declaración local de `%s' oculta la variable de instancia"
-#: c-typeck.c:1518
+#: c-typeck.c:1679
msgid "called object is not a function"
msgstr "el objeto llamado no es una función"
-#: c-typeck.c:1604 cp/typeck.c:2829
+#. This situation leads to run-time undefined behavior. We can't,
+#. therefore, simply error unless we can prove that all possible
+#. executions of the program must execute the code.
+#: c-typeck.c:1711
+#, fuzzy
+msgid "function called through a non-compatible type"
+msgstr "sizeof aplicado a un tipo de dato incompleto"
+
+#: c-typeck.c:1805 cp/typeck.c:2544
msgid "too many arguments to function"
msgstr "demasiados argumentos para la función"
-#: c-typeck.c:1625
+#: c-typeck.c:1826
#, c-format
msgid "type of formal parameter %d is incomplete"
msgstr "el tipo de dato del parámetro formal %d está incompleto"
-#: c-typeck.c:1638
+#: c-typeck.c:1839
#, c-format
msgid "%s as integer rather than floating due to prototype"
msgstr "%s como entero en lugar de coma flotante debido al prototipo"
-#: c-typeck.c:1641
+#: c-typeck.c:1842
#, c-format
msgid "%s as integer rather than complex due to prototype"
msgstr "%s como entero en lugar de complejo debido al prototipo"
-#: c-typeck.c:1644
+#: c-typeck.c:1845
#, c-format
msgid "%s as complex rather than floating due to prototype"
msgstr "%s como complejo en lugar de coma flotante debido al prototipo"
-#: c-typeck.c:1647
+#: c-typeck.c:1848
#, c-format
msgid "%s as floating rather than integer due to prototype"
msgstr "%s como coma flotante en lugar de entero debido al prototipo"
-#: c-typeck.c:1650
+#: c-typeck.c:1851
#, c-format
msgid "%s as complex rather than integer due to prototype"
msgstr "%s como complejo en lugar de entero debido al prototipo"
-#: c-typeck.c:1653
+#: c-typeck.c:1854
#, c-format
msgid "%s as floating rather than complex due to prototype"
msgstr "%s como coma flotante en lugar de complejo debido al prototipo"
-#: c-typeck.c:1663
+#: c-typeck.c:1864
#, c-format
msgid "%s as `float' rather than `double' due to prototype"
msgstr "%s como `float' en lugar de `double' debido al prototipo"
-#: c-typeck.c:1681
+#: c-typeck.c:1882
#, c-format
msgid "%s with different width due to prototype"
msgstr "%s con anchura diferente debido al prototipo"
-#: c-typeck.c:1715
+#: c-typeck.c:1908
#, c-format
msgid "%s as unsigned due to prototype"
msgstr "%s como unsigned debido al prototipo"
-#: c-typeck.c:1717
+#: c-typeck.c:1910
#, c-format
msgid "%s as signed due to prototype"
msgstr "%s como signed debido al prototipo"
-#: c-typeck.c:1751 cp/typeck.c:2933
+#: c-typeck.c:1944 cp/typeck.c:2650
msgid "too few arguments to function"
msgstr "muy pocos argumentos para la función"
-#: c-typeck.c:1793
+#: c-typeck.c:1984
msgid "suggest parentheses around + or - inside shift"
msgstr "se sugieren paréntesis alrededor de + o - dentro de un desplazamiento"
-#: c-typeck.c:1800
+#: c-typeck.c:1991
msgid "suggest parentheses around && within ||"
msgstr "se sugieren paréntesis alrededor de && junto con ||"
-#: c-typeck.c:1809
+#: c-typeck.c:2000
msgid "suggest parentheses around arithmetic in operand of |"
msgstr "se sugieren paréntesis alrededor de la aritmética para operandos de |"
-#: c-typeck.c:1812
+#: c-typeck.c:2003
msgid "suggest parentheses around comparison in operand of |"
msgstr "se sugieren paréntesis alrededor de las comparaciones para operandos de |"
-#: c-typeck.c:1821
+#: c-typeck.c:2012
msgid "suggest parentheses around arithmetic in operand of ^"
msgstr "se sugieren paréntesis alrededor de la aritmética para operandos de ^"
-#: c-typeck.c:1824
+#: c-typeck.c:2015
msgid "suggest parentheses around comparison in operand of ^"
msgstr "se sugieren paréntesis alrededor de las comparaciones para operandos de ^"
-#: c-typeck.c:1831
+#: c-typeck.c:2022
msgid "suggest parentheses around + or - in operand of &"
msgstr "se sugieren paréntesis alrededor de + o - para operandos de &"
-#: c-typeck.c:1834
+#: c-typeck.c:2025
msgid "suggest parentheses around comparison in operand of &"
msgstr "se sugieren paréntesis alrededor de las comparaciones para operandos de &"
-#: c-typeck.c:1841
+#: c-typeck.c:2032
msgid "comparisons like X<=Y<=Z do not have their mathematical meaning"
msgstr "las comparaciones como X<=Y<=Z no tienen su significado matemático"
-#: c-typeck.c:2001 c-typeck.c:2036
-msgid "division by zero"
-msgstr "división por cero"
-
-#: c-typeck.c:2081 cp/typeck.c:3194
-msgid "right shift count is negative"
-msgstr "la cuenta de desplazamiento a la derecha es negativa"
-
-#: c-typeck.c:2088 cp/typeck.c:3200
-msgid "right shift count >= width of type"
-msgstr "cuenta de desplazamiento a la derecha >= anchura del tipo"
-
-#: c-typeck.c:2109 cp/typeck.c:3219
-msgid "left shift count is negative"
-msgstr "la cuenta de desplazamiento a la izquierda es negativa"
-
-#: c-typeck.c:2112 cp/typeck.c:3221
-msgid "left shift count >= width of type"
-msgstr "cuenta de desplazamiento a la izquierda >= anchura del tipo"
-
-#: c-typeck.c:2133
-msgid "shift count is negative"
-msgstr "la cuenta de desplazamiento es negativa"
-
-#: c-typeck.c:2135
-msgid "shift count >= width of type"
-msgstr "cuenta de desplazamiento >= anchura del tipo"
-
-#: c-typeck.c:2152 cp/typeck.c:3256
-msgid "comparing floating point with == or != is unsafe"
-msgstr "no es segura la comparacion de coma flotante con == o !="
-
-#: c-typeck.c:2178 c-typeck.c:2184
-msgid "ISO C forbids comparison of `void *' with function pointer"
-msgstr "ISO C prohíbe la comparación de `void *' con un puntero de función"
-
-#: c-typeck.c:2187 c-typeck.c:2227 c-typeck.c:2255
-msgid "comparison of distinct pointer types lacks a cast"
-msgstr "la comparación de diferentes tipos de puntero carece de una conversión"
-
-#: c-typeck.c:2201 c-typeck.c:2206 c-typeck.c:2275 c-typeck.c:2280
-msgid "comparison between pointer and integer"
-msgstr "comparación entre puntero y entero"
-
-#: c-typeck.c:2222 c-typeck.c:2250
-msgid "ISO C forbids ordered comparisons of pointers to functions"
-msgstr "ISO C prohíbe la comparación entre punteros a funciones"
-
-#: c-typeck.c:2247
-msgid "comparison of complete and incomplete pointers"
-msgstr "comparación de punteros completos e incompletos"
-
-#: c-typeck.c:2263 c-typeck.c:2270
-msgid "ordered comparison of pointer with integer zero"
-msgstr "comparación ordenada de puntero con el entero cero"
-
-#: c-typeck.c:2294 cp/typeck.c:3389
-msgid "unordered comparison on non-floating point argument"
-msgstr "comparación sin orden en argumento de coma no flotante"
-
-#: c-typeck.c:2505
-msgid "comparison between signed and unsigned"
-msgstr "comparación entre signed y unsigned"
-
-#: c-typeck.c:2551 cp/typeck.c:3633
-msgid "comparison of promoted ~unsigned with constant"
-msgstr "comparación de un ~unsigned promovido con una constante"
-
-#: c-typeck.c:2559 cp/typeck.c:3641
-msgid "comparison of promoted ~unsigned with unsigned"
-msgstr "comparación de un ~unsigned promovido con unsigned"
-
-#: c-typeck.c:2639
+#: c-typeck.c:2095
msgid "pointer of type `void *' used in subtraction"
msgstr "se usó un puntero de tipo `void *' en la sustracción"
-#: c-typeck.c:2641
+#: c-typeck.c:2097
msgid "pointer to a function used in subtraction"
msgstr "se utilizó un puntero a una función en la sustracción"
-#: c-typeck.c:2738
+#: c-typeck.c:2191
msgid "wrong type argument to unary plus"
msgstr "argumento de tipo erróneo para el incremento unario"
-#: c-typeck.c:2751
+#: c-typeck.c:2204
msgid "wrong type argument to unary minus"
msgstr "argumento de tipo erróneo para el decremento unario"
-#: c-typeck.c:2768
+#: c-typeck.c:2221
msgid "ISO C does not support `~' for complex conjugation"
msgstr "ISO C no tiene soporte de `~' para conjugaciones complejas"
-#: c-typeck.c:2774
+#: c-typeck.c:2227
msgid "wrong type argument to bit-complement"
msgstr "argumento de tipo erróneo para complemento de bits"
-#: c-typeck.c:2783
+#: c-typeck.c:2235
msgid "wrong type argument to abs"
msgstr "argumento de tipo erróneo para abs"
-#: c-typeck.c:2795
+#: c-typeck.c:2247
msgid "wrong type argument to conjugation"
msgstr "argumento de tipo erróneo para la conjugación"
-#: c-typeck.c:2809
+#: c-typeck.c:2261
msgid "wrong type argument to unary exclamation mark"
msgstr "argumento de tipo erróneo para el signo de exclamación unario"
-#: c-typeck.c:2852
+#: c-typeck.c:2304
msgid "ISO C does not support `++' and `--' on complex types"
msgstr "ISO C no tiene soporte para `++' y `--' en tipos complejos"
-#: c-typeck.c:2867 c-typeck.c:2899
+#: c-typeck.c:2319 c-typeck.c:2351
msgid "wrong type argument to increment"
msgstr "argumento de tipo erróneo para el incremento"
-#: c-typeck.c:2869 c-typeck.c:2901
+#: c-typeck.c:2321 c-typeck.c:2353
msgid "wrong type argument to decrement"
msgstr "argumento de tipo erróneo para el decremento"
-#: c-typeck.c:2890
+#: c-typeck.c:2342
msgid "increment of pointer to unknown structure"
msgstr "incremento de puntero a estructura desconocida"
-#: c-typeck.c:2892
+#: c-typeck.c:2344
msgid "decrement of pointer to unknown structure"
msgstr "decremento de puntero a estructura desconocida"
-#: c-typeck.c:3029
-msgid "ISO C forbids the address of a cast expression"
-msgstr "ISO C prohíbe la dirección de una expresión cast"
-
-#: c-typeck.c:3039
+#: c-typeck.c:2469
msgid "invalid lvalue in unary `&'"
msgstr "l-valor inválido en `&' unario"
-#: c-typeck.c:3071
+#: c-typeck.c:2501
#, c-format
msgid "attempt to take address of bit-field structure member `%s'"
msgstr "se intentó tomar la dirección del miembro de la estructura de campos de bits `%s'"
-#: c-typeck.c:3180 c-typeck.c:4651 c-typeck.c:4667 c-typeck.c:4683
-#: final.c:3146 final.c:3148 gcc.c:4381 rtl-error.c:122 toplev.c:1694
-#: config/cris/cris.c:545 cp/spew.c:1538 cp/typeck.c:4367 java/expr.c:364
-#: java/verify.c:1467 java/verify.c:1468 java/verify.c:1483
-#, c-format
-msgid "%s"
-msgstr "%s"
-
-#: c-typeck.c:3241
-msgid "ISO C forbids use of conditional expressions as lvalues"
+#: c-typeck.c:2634
+#, fuzzy
+msgid "use of conditional expressions as lvalues is deprecated"
msgstr "ISO C prohíbe el uso de expresiones condicionales como l-valores"
-#: c-typeck.c:3244
-msgid "ISO C forbids use of compound expressions as lvalues"
+#: c-typeck.c:2637
+#, fuzzy
+msgid "use of compound expressions as lvalues is deprecated"
msgstr "ISO C prohíbe el uso de expresiones compuestas como l-valores"
-#: c-typeck.c:3247
-msgid "ISO C forbids use of cast expressions as lvalues"
+#: c-typeck.c:2640
+#, fuzzy
+msgid "use of cast expressions as lvalues is deprecated"
msgstr "ISO C prohíbe el uso de expresiones de conversión como l-valores"
-#: c-typeck.c:3264
+#: c-typeck.c:2655
#, c-format
msgid "%s of read-only member `%s'"
msgstr "%s del miembro de sólo lectura `%s'"
-#: c-typeck.c:3268
+#: c-typeck.c:2659
#, c-format
msgid "%s of read-only variable `%s'"
msgstr "%s de la variable de sólo lectura `%s'"
-#: c-typeck.c:3271
+#: c-typeck.c:2662
#, c-format
msgid "%s of read-only location"
msgstr "%s de la ubicación de sólo lectura"
-#: c-typeck.c:3290
+#: c-typeck.c:2680
#, c-format
msgid "cannot take address of bit-field `%s'"
msgstr "no se puede tomar la dirección del campo de bits `%s'"
-#: c-typeck.c:3318
+#: c-typeck.c:2708 treelang/treetree.c:946
#, c-format
msgid "global register variable `%s' used in nested function"
msgstr "se usó la variable de registro global `%s' en funciones anidadas"
-#: c-typeck.c:3322
+#: c-typeck.c:2712 treelang/treetree.c:950
#, c-format
msgid "register variable `%s' used in nested function"
msgstr "se usó la variable de registro `%s' en funciones anidadas"
-#: c-typeck.c:3329
+#: c-typeck.c:2719 treelang/treetree.c:957
#, c-format
msgid "address of global register variable `%s' requested"
msgstr "se solicitó la dirección de la variable de registro global `%s'"
-#: c-typeck.c:3341
+#: c-typeck.c:2731
msgid "cannot put object with volatile field into register"
msgstr "no se puede poner objeto con campo volatile en register"
-#: c-typeck.c:3345
+#: c-typeck.c:2735 treelang/treetree.c:962
#, c-format
msgid "address of register variable `%s' requested"
msgstr "se solicitó la dirección de la variable register `%s'"
-#: c-typeck.c:3453
+#: c-typeck.c:2820
msgid "signed and unsigned type in conditional expression"
msgstr "tipos signed y unsigned en la expresión condicional"
-#: c-typeck.c:3460
+#: c-typeck.c:2827
msgid "ISO C forbids conditional expr with only one void side"
msgstr "ISO C prohíbe una expresión condicional con sólo un lado void"
-#: c-typeck.c:3476 c-typeck.c:3483
+#: c-typeck.c:2843 c-typeck.c:2850
msgid "ISO C forbids conditional expr between `void *' and function pointer"
msgstr "ISO C prohíbe expresiones condicionales entre `void *' y punteros de función"
-#: c-typeck.c:3489
+#: c-typeck.c:2856
msgid "pointer type mismatch in conditional expression"
msgstr "los tipos de datos punteros no coinciden en la expresión condicional"
-#: c-typeck.c:3496 c-typeck.c:3506
+#: c-typeck.c:2863 c-typeck.c:2873
msgid "pointer/integer type mismatch in conditional expression"
msgstr "los tipos de datos punteros/enteros no coinciden en la expresión condicional"
-#: c-typeck.c:3520
+#: c-typeck.c:2887
msgid "type mismatch in conditional expression"
msgstr "los tipos de datos no coinciden en la expresión condicional"
-#: c-typeck.c:3591 cp/typeck.c:4623
+#: c-typeck.c:2947
msgid "left-hand operand of comma expression has no effect"
msgstr "el operador del lado izquierdo de la expresión coma no tiene efecto"
-#: c-typeck.c:3635
+#: c-typeck.c:2978
msgid "cast specifies array type"
msgstr "la conversión especifica el tipo matriz"
-#: c-typeck.c:3641
+#: c-typeck.c:2984
msgid "cast specifies function type"
msgstr "la conversión especifica el tipo función"
-#: c-typeck.c:3651
+#: c-typeck.c:2994
msgid "ISO C forbids casting nonscalar to the same type"
msgstr "ISO C prohíbe la conversión de un no escalar al mismo tipo"
-#: c-typeck.c:3670
+#: c-typeck.c:3012
msgid "ISO C forbids casts to union type"
msgstr "ISO C prohíbe la conversión al tipo union"
-#: c-typeck.c:3685
+#: c-typeck.c:3020
msgid "cast to union type from type not present in union"
msgstr "conversión a tipo union desde un tipo no presente en union"
-#: c-typeck.c:3736
+#: c-typeck.c:3071
msgid "cast adds new qualifiers to function type"
msgstr "la conversión agrega calificadores nuevos al tipo función"
#. There are qualifiers present in IN_OTYPE that are not
#. present in IN_TYPE.
-#: c-typeck.c:3741
+#: c-typeck.c:3076
msgid "cast discards qualifiers from pointer target type"
msgstr "la conversión descarta los calificadores del tipo del destino del puntero"
-#: c-typeck.c:3756
+#: c-typeck.c:3091
msgid "cast increases required alignment of target type"
msgstr "la conversión incrementa la alineación requerida del tipo del destino"
-#: c-typeck.c:3762 cp/typeck.c:5144
+#: c-typeck.c:3097 cp/typeck.c:4889
msgid "cast from pointer to integer of different size"
msgstr "conversión de puntero a entero de tamaño diferente"
-#: c-typeck.c:3767
+#: c-typeck.c:3102
msgid "cast does not match function type"
msgstr "la conversión no coincide con el tipo de la función"
-#: c-typeck.c:3774 cp/typeck.c:5151
+#: c-typeck.c:3109 cp/typeck.c:4896
msgid "cast to pointer from integer of different size"
msgstr "conversión a puntero desde un entero de tamaño diferente"
-#: c-typeck.c:3786
+#: c-typeck.c:3121
msgid "type-punning to incomplete type might break strict-aliasing rules"
msgstr "el castigo de tipo a tipo incompleto puede romper las reglas de alias estricto"
-#: c-typeck.c:3790
+#: c-typeck.c:3125
msgid "dereferencing type-punned pointer will break strict-aliasing rules"
msgstr "la dereferencia de punteros de tipo castigado romperá las reglas de alias estricto"
+#: c-typeck.c:3136
+#, fuzzy
+msgid "ISO C forbids conversion of function pointer to object pointer type"
+msgstr "ISO C++ prohíbe el uso de un apuntador a una función miembro en la aritmética de apuntadores"
+
+#: c-typeck.c:3145
+#, fuzzy
+msgid "ISO C forbids conversion of object pointer to function pointer type"
+msgstr "ISO C prohíbe la comparación de `void *' con un puntero de función"
+
#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
#. Reject anything strange now.
-#: c-typeck.c:3949
+#: c-typeck.c:3303
msgid "invalid lvalue in assignment"
msgstr "l-valor inválido en la asignación"
#. Convert new value to destination type.
-#: c-typeck.c:3958 c-typeck.c:3983 c-typeck.c:4000 cp/typeck.c:5266
-#: cp/typeck.c:5416
+#. Check this here to avoid odd errors when trying to convert
+#. a throw to the type of the COND_EXPR.
+#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
+#. Reject anything strange now.
+#: c-typeck.c:3312 c-typeck.c:3337 c-typeck.c:3354 cp/typeck.c:5008
+#: cp/typeck.c:5152
msgid "assignment"
msgstr "asignación"
-#: c-typeck.c:4070
+#: c-typeck.c:3421
msgid "cannot pass rvalue to reference parameter"
msgstr "no se puede pasar un valor-r a un parámetro de referencia"
-#: c-typeck.c:4174 c-typeck.c:4241
+#: c-typeck.c:3530 c-typeck.c:3606
#, c-format
msgid "%s makes qualified function pointer from unqualified"
msgstr "%s hace que la función calificada apunte desde una no calificada"
-#: c-typeck.c:4178 c-typeck.c:4221
+#: c-typeck.c:3534 c-typeck.c:3586
#, c-format
msgid "%s discards qualifiers from pointer target type"
msgstr "%s descarta calificadores del tipo del destino del puntero"
-#: c-typeck.c:4184
+#: c-typeck.c:3540
msgid "ISO C prohibits argument conversion to union type"
msgstr "ISO C prohíbe la conversión de argumentos a tipo union"
-#: c-typeck.c:4213
+#: c-typeck.c:3578
#, c-format
msgid "ISO C forbids %s between function pointer and `void *'"
msgstr "ISO C prohíbe %s entre punteros a función y `void *'"
-#: c-typeck.c:4230
+#: c-typeck.c:3595
#, c-format
msgid "pointer targets in %s differ in signedness"
msgstr "el puntero que apunta a %s difiere en signo"
-#: c-typeck.c:4246
+#: c-typeck.c:3611
#, c-format
msgid "%s from incompatible pointer type"
msgstr "%s de tipo de puntero incompatible"
-#: c-typeck.c:4252 c-typeck.c:4804 cp/typeck.c:1653
+#: c-typeck.c:3617 c-typeck.c:4124 cp/typeck.c:1366
msgid "invalid use of non-lvalue array"
msgstr "uso inválido de matriz no-lvaluada"
-#: c-typeck.c:4267
+#: c-typeck.c:3631
#, c-format
msgid "%s makes pointer from integer without a cast"
msgstr "%s se crea un puntero desde un entero sin una conversión"
-#: c-typeck.c:4275
+#: c-typeck.c:3638
#, c-format
msgid "%s makes integer from pointer without a cast"
msgstr "%s se crea un entero desde un puntero sin una conversión"
-#: c-typeck.c:4289 c-typeck.c:4292
+#: c-typeck.c:3652 c-typeck.c:3655
#, c-format
msgid "incompatible type for argument %d of `%s'"
msgstr "tipo incompatible para el argumento %d de `%s'"
-#: c-typeck.c:4296
+#: c-typeck.c:3659
#, c-format
msgid "incompatible type for argument %d of indirect function call"
msgstr "tipo incompatible para el argumento %d de la llamada indirecta a función"
-#: c-typeck.c:4300
+#: c-typeck.c:3663
#, c-format
msgid "incompatible types in %s"
msgstr "tipos incompatibles en %s"
#. Function name is known; supply it.
-#: c-typeck.c:4358
+#: c-typeck.c:3719
#, c-format
msgid "passing arg of `%s'"
msgstr "al pasar un argumento de `%s'"
#. Function name unknown (call through ptr).
-#: c-typeck.c:4368
+#: c-typeck.c:3728
msgid "passing arg of pointer to function"
msgstr "al pasar un argumento de puntero a la función"
#. Function name is known; supply it.
-#: c-typeck.c:4376
+#: c-typeck.c:3736
#, c-format
msgid "passing arg %d of `%s'"
msgstr "al pasar el argumento %d de `%s'"
#. Function name unknown (call through ptr); just give arg number.
-#: c-typeck.c:4386
+#: c-typeck.c:3745
#, c-format
msgid "passing arg %d of pointer to function"
msgstr "al pasar el argumento %d del puntero a la función"
-#: c-typeck.c:4452
-msgid "initializer for static variable is not constant"
-msgstr "el inicializador para la variable estática no es una constante"
-
-#: c-typeck.c:4458
-msgid "initializer for static variable uses complicated arithmetic"
-msgstr "el inicializador para la variable estática usa aritmética complicada"
-
-#: c-typeck.c:4466
-msgid "aggregate initializer is not constant"
-msgstr "el inicializador agregado no es una constante"
-
-#: c-typeck.c:4468
-msgid "aggregate initializer uses complicated arithmetic"
-msgstr "el inicializador agregado usa aritmética complicada"
-
-#: c-typeck.c:4475
+#: c-typeck.c:3802
msgid "traditional C rejects automatic aggregate initialization"
msgstr "C tradicional rechaza la inicialización automática de agregados"
-#: c-typeck.c:4654 c-typeck.c:4670 c-typeck.c:4686
+#: c-typeck.c:3973 c-typeck.c:3988 c-typeck.c:4003
#, c-format
msgid "(near initialization for `%s')"
msgstr "(cerca de la inicialización de `%s')"
-#: c-typeck.c:4737 cp/typeck2.c:488
+#: c-typeck.c:4052 cp/typeck2.c:559
msgid "char-array initialized from wide string"
msgstr "matriz de caracteres inicializada con una cadena ancha"
# no ancha -> angosta? cfuga
-#: c-typeck.c:4744 cp/typeck2.c:495
+#: c-typeck.c:4059 cp/typeck2.c:566
msgid "int-array initialized from non-wide string"
msgstr "matriz de enteros inicializada con una cadena no ancha"
-#: c-typeck.c:4762 cp/typeck2.c:511
+#: c-typeck.c:4077 cp/typeck2.c:581
msgid "initializer-string for array of chars is too long"
msgstr "la cadena del inicializador para la matriz de caracteres es demasiado larga"
-#: c-typeck.c:4822
+#: c-typeck.c:4147
msgid "array initialized from non-constant array expression"
msgstr "matriz inicializada con una expresión matrizal que no es constante"
-#: c-typeck.c:4839 c-typeck.c:4841 c-typeck.c:4857 c-typeck.c:4878
-#: c-typeck.c:6281
+#: c-typeck.c:4164 c-typeck.c:4166 c-typeck.c:4182 c-typeck.c:4203
+#: c-typeck.c:5585
msgid "initializer element is not constant"
msgstr "el elemento inicializador no es constante"
-#: c-typeck.c:4873
+#: c-typeck.c:4198
msgid "initialization"
msgstr "inicialización"
-#: c-typeck.c:4884 c-typeck.c:6286
+#: c-typeck.c:4209 c-typeck.c:5590
msgid "initializer element is not computable at load time"
msgstr "el elemento inicializador no es calculable al momento de la carga"
-#: c-typeck.c:4899 cp/typeck2.c:588
+#: c-typeck.c:4224 cp/typeck2.c:658
msgid "invalid initializer"
msgstr "inicializador inválido"
-#: c-typeck.c:5393
+#: c-typeck.c:4509 cp/decl.c:4465
+#, fuzzy
+msgid "opaque vector types cannot be initialized"
+msgstr "un objeto de tamaño variable de tipo `%T' no puede ser inicializado"
+
+#: c-typeck.c:4703
msgid "extra brace group at end of initializer"
msgstr "grupo extra de llaves al final del inicializador"
-#: c-typeck.c:5413
+#: c-typeck.c:4723
msgid "missing braces around initializer"
msgstr "faltan llaves alrededor del inicializador"
-#: c-typeck.c:5473
+#: c-typeck.c:4783
msgid "braces around scalar initializer"
msgstr "llaves alrededor del inicializador escalar"
-#: c-typeck.c:5521
+#: c-typeck.c:4830
msgid "initialization of flexible array member in a nested context"
msgstr "inicialización de un miembro de matriz flexible en un contexto anidado"
-#: c-typeck.c:5523
+#: c-typeck.c:4832
msgid "initialization of a flexible array member"
msgstr "inicialización de un miembro de matriz flexible"
-#: c-typeck.c:5554
+#: c-typeck.c:4863
msgid "missing initializer"
msgstr "falta el inicializador"
-#: c-typeck.c:5580
+#: c-typeck.c:4889
msgid "empty scalar initializer"
msgstr "inicializador escalar vacío"
-#: c-typeck.c:5585
+#: c-typeck.c:4894
msgid "extra elements in scalar initializer"
msgstr "elementos extras en el inicializador escalar"
-#: c-typeck.c:5671
+#: c-typeck.c:4979
msgid "initialization designators may not nest"
msgstr "no se pueden anidar los designadores de inicialización"
-#: c-typeck.c:5692 c-typeck.c:5763
+#: c-typeck.c:5000 c-typeck.c:5068
msgid "array index in non-array initializer"
msgstr "índice de matriz en el inicializador que no es matriz"
-#: c-typeck.c:5697 c-typeck.c:5817
+#: c-typeck.c:5005 c-typeck.c:5121
msgid "field name not in record or union initializer"
msgstr "el nombre del campo no está en el inicializador de record o union"
-#: c-typeck.c:5759 c-typeck.c:5761
+#: c-typeck.c:5064 c-typeck.c:5066
msgid "nonconstant array index in initializer"
msgstr "índice de matriz no constante en el inicializador"
-#: c-typeck.c:5765 c-typeck.c:5768
+#: c-typeck.c:5070 c-typeck.c:5073
msgid "array index in initializer exceeds array bounds"
msgstr "el índice de matriz en el inicializador excede los límites de la matriz"
-#: c-typeck.c:5779
+#: c-typeck.c:5084
msgid "empty index range in initializer"
msgstr "rango de índices vacío en el inicializador"
-#: c-typeck.c:5788
+#: c-typeck.c:5093
msgid "array index range in initializer exceeds array bounds"
msgstr "el rango de índices de la matriz en el inicializador excede los límites de la matriz"
-#: c-typeck.c:5829
+#: c-typeck.c:5133
#, c-format
msgid "unknown field `%s' specified in initializer"
msgstr "campo `%s' desconocido especificado en el inicializador"
-#: c-typeck.c:5866 c-typeck.c:5887 c-typeck.c:6348
+#: c-typeck.c:5169 c-typeck.c:5190 c-typeck.c:5652
msgid "initialized field with side-effects overwritten"
msgstr "campo inicializado con efectos laterales sobreescritos"
-#: c-typeck.c:6558
+#: c-typeck.c:5860
msgid "excess elements in char array initializer"
msgstr "exceso de elementos en el inicializador de matriz de caracteres"
-#: c-typeck.c:6565 c-typeck.c:6611
+#: c-typeck.c:5867 c-typeck.c:5913
msgid "excess elements in struct initializer"
msgstr "exceso de elementos en el inicializador de struct"
-#: c-typeck.c:6626
+#: c-typeck.c:5928
msgid "non-static initialization of a flexible array member"
msgstr "inicialización no estática de un miembro de matriz flexible"
-#: c-typeck.c:6693
+#: c-typeck.c:5995
msgid "excess elements in union initializer"
msgstr "exceso de elementos en el inicializador de union"
-#: c-typeck.c:6714
+#: c-typeck.c:6016
msgid "traditional C rejects initialization of unions"
msgstr "C tradicional rechaza la inicialización de unions"
-#: c-typeck.c:6777
+#: c-typeck.c:6079
msgid "excess elements in array initializer"
msgstr "exceso de elementos en el inicializador de matriz"
-#: c-typeck.c:6806
+#: c-typeck.c:6108
msgid "excess elements in vector initializer"
msgstr "exceso de elementos en el inicializador de vector"
-#: c-typeck.c:6828
+#: c-typeck.c:6130
msgid "excess elements in scalar initializer"
msgstr "exceso de elementos en el inicializador de escalar"
-#: c-typeck.c:6935
+#: c-typeck.c:6232
msgid "asm template is not a string constant"
msgstr "la plantilla asm no es una cadena constante"
-#: c-typeck.c:6967
+#: c-typeck.c:6264
msgid "invalid lvalue in asm statement"
msgstr "l-valor inválido en la declaración asm"
-#: c-typeck.c:7042
+#: c-typeck.c:6336
msgid "modification by `asm'"
msgstr "modificación por `asm'"
-#: c-typeck.c:7061 cp/typeck.c:6237
+#: c-typeck.c:6354 cp/typeck.c:5926
msgid "function declared `noreturn' has a `return' statement"
msgstr "la función declarada `noreturn' tiene una declaración `return'"
-#: c-typeck.c:7068
+#: c-typeck.c:6361
msgid "`return' with no value, in function returning non-void"
msgstr "`return' sin valores, en una función que no devuelve void"
-#: c-typeck.c:7074
+#: c-typeck.c:6367
msgid "`return' with a value, in function returning void"
msgstr "`return' con valor, en una función que devuelve void"
-#: c-typeck.c:7078
+#: c-typeck.c:6371
msgid "return"
msgstr "return"
-#: c-typeck.c:7130
+#: c-typeck.c:6423
msgid "function returns address of local variable"
msgstr "la función devuelve la dirección de una variable local"
-#: c-typeck.c:7186 cp/semantics.c:555
+#: c-typeck.c:6478 cp/semantics.c:749
msgid "switch quantity not an integer"
msgstr "la cantidad de switch no es un entero"
-#: c-typeck.c:7196
+#: c-typeck.c:6488
msgid "`long' switch expression not converted to `int' in ISO C"
msgstr "no se convierte la expresión de switch `long' a `int' en ISO C"
-#: c-typeck.c:7231 cp/decl.c:5523
+#: c-typeck.c:6529 cp/parser.c:5538
msgid "case label not within a switch statement"
msgstr "la etiqueta case no se encuentra dentro de una declaración switch"
-#: c-typeck.c:7233 cp/decl.c:5528
+#: c-typeck.c:6531
msgid "`default' label not within a switch statement"
msgstr "la etiqueta `default' no está dentro de una declaración switch"
+#: c-typeck.c:6683 c-typeck.c:6717
+msgid "division by zero"
+msgstr "división por cero"
+
+#: c-typeck.c:6762 cp/typeck.c:2928
+msgid "right shift count is negative"
+msgstr "la cuenta de desplazamiento a la derecha es negativa"
+
+#: c-typeck.c:6769 cp/typeck.c:2934
+msgid "right shift count >= width of type"
+msgstr "cuenta de desplazamiento a la derecha >= anchura del tipo"
+
+#: c-typeck.c:6790 cp/typeck.c:2953
+msgid "left shift count is negative"
+msgstr "la cuenta de desplazamiento a la izquierda es negativa"
+
+#: c-typeck.c:6793 cp/typeck.c:2955
+msgid "left shift count >= width of type"
+msgstr "cuenta de desplazamiento a la izquierda >= anchura del tipo"
+
+#: c-typeck.c:6814
+msgid "shift count is negative"
+msgstr "la cuenta de desplazamiento es negativa"
+
+#: c-typeck.c:6816
+msgid "shift count >= width of type"
+msgstr "cuenta de desplazamiento >= anchura del tipo"
+
+#: c-typeck.c:6833 cp/typeck.c:2990
+msgid "comparing floating point with == or != is unsafe"
+msgstr "no es segura la comparacion de coma flotante con == o !="
+
+#: c-typeck.c:6859 c-typeck.c:6865
+msgid "ISO C forbids comparison of `void *' with function pointer"
+msgstr "ISO C prohíbe la comparación de `void *' con un puntero de función"
+
+#: c-typeck.c:6868 c-typeck.c:6908 c-typeck.c:6936
+msgid "comparison of distinct pointer types lacks a cast"
+msgstr "la comparación de diferentes tipos de puntero carece de una conversión"
+
+#: c-typeck.c:6882 c-typeck.c:6887 c-typeck.c:6956 c-typeck.c:6961
+msgid "comparison between pointer and integer"
+msgstr "comparación entre puntero y entero"
+
+#: c-typeck.c:6903 c-typeck.c:6931
+msgid "ISO C forbids ordered comparisons of pointers to functions"
+msgstr "ISO C prohíbe la comparación entre punteros a funciones"
+
+#: c-typeck.c:6928
+msgid "comparison of complete and incomplete pointers"
+msgstr "comparación de punteros completos e incompletos"
+
+#: c-typeck.c:6944 c-typeck.c:6951
+msgid "ordered comparison of pointer with integer zero"
+msgstr "comparación ordenada de puntero con el entero cero"
+
+#: c-typeck.c:6975 cp/typeck.c:3126
+msgid "unordered comparison on non-floating point argument"
+msgstr "comparación sin orden en argumento de coma no flotante"
+
+#: c-typeck.c:7185
+msgid "comparison between signed and unsigned"
+msgstr "comparación entre signed y unsigned"
+
+#: c-typeck.c:7231 cp/typeck.c:3373
+msgid "comparison of promoted ~unsigned with constant"
+msgstr "comparación de un ~unsigned promovido con una constante"
+
+#: c-typeck.c:7239 cp/typeck.c:3381
+msgid "comparison of promoted ~unsigned with unsigned"
+msgstr "comparación de un ~unsigned promovido con unsigned"
+
# ¿Cómo traducir inlining de forma correcta? cfuga
-#: calls.c:1934 tree-inline.c:1177
-#, c-format
-msgid "inlining failed in call to `%s'"
+#: calls.c:1838
+#, fuzzy
+msgid "%Jinlining failed in call to '%F'"
msgstr "el `inlining' falló en la llamada a `%s'"
-#: calls.c:1935 calls.c:2271 tree-inline.c:1178
+#: calls.c:1839 calls.c:2208 tree-inline.c:1339 tree-inline.c:1346
msgid "called from here"
msgstr "llamado desde aquí"
-#: calls.c:2270
-#, c-format
-msgid "can't inline call to `%s'"
+#: calls.c:2207
+#, fuzzy
+msgid "%Jcan't inline call to '%F'"
msgstr "no se pueden hacer la llamada inline a `%s'"
-#: calls.c:2300
+#: calls.c:2216
+msgid "ignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2229
+msgid "ignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2239
msgid "function call has aggregate value"
msgstr "la llamada a la función tiene valor agregado"
-#: cfgloop.c:1107
+#: cfg.c:835
+#, c-format
+msgid "bb %d on wrong place"
+msgstr "bb %d en el lugar equivocado"
+
+#: cfg.c:841
+#, c-format
+msgid "prev_bb of %d should be %d, not %d"
+msgstr "el prev_bb de %d debe ser %d, no %d"
+
+#: cfg.c:857
+#, c-format
+msgid "verify_flow_info: Wrong count of block %i %i"
+msgstr "verify_flow_info: Cuenta errónea del bloque %i %i"
+
+#: cfg.c:863
+#, c-format
+msgid "verify_flow_info: Wrong frequency of block %i %i"
+msgstr "verify_flow_info: Frecuencia errónea del bloque %i %i"
+
+#: cfg.c:871
+#, c-format
+msgid "verify_flow_info: Duplicate edge %i->%i"
+msgstr "verify_flow_info: Borde duplicado %i->%i"
+
+#: cfg.c:877
+#, c-format
+msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+msgstr "verify_flow_info: Probabilidad errónea del borde %i->%i %i"
+
+#: cfg.c:883
+#, c-format
+msgid "verify_flow_info: Wrong count of edge %i->%i %i"
+msgstr "verify_flow_info: Cuenta errónea del borde %i->%i %i"
+
+#: cfg.c:895
+#, c-format
+msgid "verify_flow_info: Basic block %d succ edge is corrupted"
+msgstr "verify_flow_info: El bloque básico %d succ edge está corrupto"
+
+#: cfg.c:909 cfgrtl.c:1971
+#, c-format
+msgid "Wrong amount of branch edges after unconditional jump %i"
+msgstr "Cantidad errónea de bordes de ramificación después del salto incondicional %i"
+
+#: cfg.c:917
+#, c-format
+msgid "basic block %d pred edge is corrupted"
+msgstr "el bloque básico %d pred edge está corrupto"
+
+#: cfg.c:943
+#, c-format
+msgid "basic block %i edge lists are corrupted"
+msgstr "las listas de borde del bloque básico %i están corruptas"
+
+#: cfg.c:955
+msgid "verify_flow_info failed"
+msgstr "falló verify_flow_info"
+
+#: cfgloop.c:1134
#, c-format
msgid "Size of loop %d should be %d, not %d."
msgstr "El tamaño del ciclo %d debe ser %d, no %d."
-#: cfgloop.c:1126
+#: cfgloop.c:1153
#, c-format
msgid "Bb %d do not belong to loop %d."
msgstr "Bb %d no pertenece al ciclo %d."
-#: cfgloop.c:1144
+#: cfgloop.c:1171
#, c-format
msgid "Loop %d's header does not have exactly 2 entries."
msgstr "El encabezado del ciclo %d no tiene exactamente 2 entradas."
-#: cfgloop.c:1152
+#: cfgloop.c:1179
#, c-format
msgid "Loop %d's latch does not have exactly 1 successor."
msgstr "El cerrojo del ciclo %d no tiene 1 sucesor exactamente."
-#: cfgloop.c:1157
+#: cfgloop.c:1184
#, c-format
msgid "Loop %d's latch does not have header as successor."
msgstr "El cerrojo del ciclo %d no tiene un encabezado como sucesor."
-#: cfgloop.c:1162
+#: cfgloop.c:1189
#, c-format
msgid "Loop %d's latch does not belong directly to it."
msgstr "El cerrojo del ciclo %d no pertenece directamente a él."
-#: cfgloop.c:1168
+#: cfgloop.c:1195
#, c-format
msgid "Loop %d's header does not belong directly to it."
msgstr "El encabezado del ciclo %d no pertenece directamente a él."
-#: cfgrtl.c:1774
+#: cfgloop.c:1201
+#, fuzzy, c-format
+msgid "Loop %d's latch is marked as part of irreducible region."
+msgstr "El cerrojo del ciclo %d no pertenece directamente a él."
+
+#: cfgloop.c:1231
#, c-format
-msgid "bb %d on wrong place"
-msgstr "bb %d en el lugar equivocado"
+msgid "Basic block %d should be marked irreducible."
+msgstr ""
-#: cfgrtl.c:1780
+#: cfgloop.c:1237
#, c-format
-msgid "prev_bb of %d should be %d, not %d"
-msgstr "el prev_bb de %d debe ser %d, no %d"
+msgid "Basic block %d should not be marked irreducible."
+msgstr ""
-#: cfgrtl.c:1800
+#: cfgloop.c:1245
+#, c-format
+msgid "Edge from %d to %d should be marked irreducible."
+msgstr ""
+
+#: cfgloop.c:1252
+#, c-format
+msgid "Edge from %d to %d should not be marked irreducible."
+msgstr ""
+
+#: cfgrtl.c:1877
#, c-format
msgid "end insn %d for block %d not found in the insn stream"
msgstr "el insn final %d para el bloque %d no se encuentra en el flujo insn"
-#: cfgrtl.c:1814
+#: cfgrtl.c:1891
#, c-format
msgid "insn %d is in multiple basic blocks (%d and %d)"
msgstr "insn %d está en múltiples bloques básicos (%d y %d)"
-#: cfgrtl.c:1826
+#: cfgrtl.c:1903
#, c-format
msgid "head insn %d for block %d not found in the insn stream"
msgstr "la cabeza insn %d para el bloque %d no se encuentra en el flujo insn"
-#: cfgrtl.c:1848
-#, c-format
-msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
+#: cfgrtl.c:1925
+#, fuzzy
+msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i"
msgstr "verify_flow_info: REG_BR_PROB no coincide con la configuración %i %i"
-#: cfgrtl.c:1855
-#, c-format
-msgid "verify_flow_info: Wrong count of block %i %i"
-msgstr "verify_flow_info: Cuenta errónea del bloque %i %i"
-
-#: cfgrtl.c:1861
-#, c-format
-msgid "verify_flow_info: Wrong frequency of block %i %i"
-msgstr "verify_flow_info: Frecuencia errónea del bloque %i %i"
-
-#: cfgrtl.c:1869
-#, c-format
-msgid "verify_flow_info: Duplicate edge %i->%i"
-msgstr "verify_flow_info: Borde duplicado %i->%i"
-
-#: cfgrtl.c:1875
-#, c-format
-msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
-msgstr "verify_flow_info: Probabilidad errónea del borde %i->%i %i"
-
-#: cfgrtl.c:1881
-#, c-format
-msgid "verify_flow_info: Wrong count of edge %i->%i %i"
-msgstr "verify_flow_info: Cuenta errónea del borde %i->%i %i"
-
-#: cfgrtl.c:1911
-#, c-format
-msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
-msgstr "verify_flow_info: Bloques incorrectos para el respaldo %i->%i"
-
-#: cfgrtl.c:1926
-#, c-format
-msgid "verify_flow_info: Incorrect fallthru %i->%i"
-msgstr "verify_flow_info: Respaldo incorrecto %i->%i"
-
-#: cfgrtl.c:1928
-msgid "wrong insn in the fallthru edge"
-msgstr "insn erróneo en el borde del respaldo"
-
-#: cfgrtl.c:1935
-#, c-format
-msgid "verify_flow_info: Basic block %d succ edge is corrupted"
-msgstr "verify_flow_info: El bloque básico %d succ edge está corrupto"
-
-#: cfgrtl.c:1951
+#: cfgrtl.c:1953
#, c-format
msgid "Missing REG_EH_REGION note in the end of bb %i"
msgstr "Falta la nota REG_EH_REGION al final de bb %i"
-#: cfgrtl.c:1959
+#: cfgrtl.c:1961
#, c-format
msgid "Too many outgoing branch edges from bb %i"
msgstr "Demasiados bordes de ramificación de salida de bb %i"
-#: cfgrtl.c:1964
+#: cfgrtl.c:1966
#, c-format
msgid "Fallthru edge after unconditional jump %i"
msgstr "Borde de caída después del salto incondicional %i"
-#: cfgrtl.c:1969
-#, c-format
-msgid "Wrong amount of branch edges after unconditional jump %i"
-msgstr "Cantidad errónea de bordes de ramificación después del salto incondicional %i"
-
-#: cfgrtl.c:1975
+#: cfgrtl.c:1977
#, c-format
msgid "Wrong amount of branch edges after conditional jump %i"
msgstr "Cantidad errónea de bordes de ramificación después del salto condicional %i"
-#: cfgrtl.c:1980
+#: cfgrtl.c:1982
#, c-format
msgid "Call edges for non-call insn in bb %i"
msgstr "Bordes de llamada para una insn que no es llamada en bb %i"
-#: cfgrtl.c:1989
+#: cfgrtl.c:1991
#, c-format
msgid "Abnormal edges for no purpose in bb %i"
msgstr "Bordes anormales sin ningún propósito en bb %i"
-#: cfgrtl.c:2004
-#, c-format
-msgid "missing barrier after block %i"
-msgstr "falta una barrera después del bloque %i"
-
-#: cfgrtl.c:2014
-#, c-format
-msgid "basic block %d pred edge is corrupted"
-msgstr "el bloque básico %d pred edge está corrupto"
-
-#: cfgrtl.c:2031
+#: cfgrtl.c:2001
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is NULL"
msgstr "insn %d está dentro del bloque básico %d pero block_for_insn es NULL"
-#: cfgrtl.c:2035
+#: cfgrtl.c:2005
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is %i"
msgstr "insn %d está dentro del bloque básico %d pero block_for_insn es %i"
-#: cfgrtl.c:2049 cfgrtl.c:2059
+#: cfgrtl.c:2019 cfgrtl.c:2029
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
msgstr "NOTE_INSN_BASIC_BLOCK falta para el bloque %d"
-#: cfgrtl.c:2072
+#: cfgrtl.c:2042
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
msgstr "NOTE_INSN_BASIC_BLOCK %d en el medio del bloque básico %d"
-#: cfgrtl.c:2084
+#: cfgrtl.c:2052
#, c-format
msgid "in basic block %d:"
msgstr "en el bloque básico %d:"
-#: cfgrtl.c:2085
+#: cfgrtl.c:2053
msgid "flow control insn inside a basic block"
msgstr "control de flujo insn dentro de un bloque básico"
-#: cfgrtl.c:2104
+#: cfgrtl.c:2099
#, c-format
-msgid "basic block %i edge lists are corrupted"
-msgstr "las listas de borde del bloque básico %i están corruptas"
+msgid "missing barrier after block %i"
+msgstr "falta una barrera después del bloque %i"
+
+#: cfgrtl.c:2112
+#, c-format
+msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgstr "verify_flow_info: Bloques incorrectos para el respaldo %i->%i"
-#: cfgrtl.c:2119
-msgid "basic blocks not numbered consecutively"
+#: cfgrtl.c:2127
+#, c-format
+msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgstr "verify_flow_info: Respaldo incorrecto %i->%i"
+
+#: cfgrtl.c:2129
+msgid "wrong insn in the fallthru edge"
+msgstr "insn erróneo en el borde del respaldo"
+
+#: cfgrtl.c:2146
+#, fuzzy
+msgid "basic blocks not laid down consecutively"
msgstr "los bloques básicos no están numerados consecutivamente"
-#: cfgrtl.c:2144
+#: cfgrtl.c:2171
msgid "insn outside basic block"
msgstr "insn fuera del bloque básico"
-#: cfgrtl.c:2152
+#: cfgrtl.c:2179
msgid "return not followed by barrier"
msgstr "return no es seguido por una barrera"
-#: cfgrtl.c:2157
+#: cfgrtl.c:2186
#, c-format
msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr "el número de notas bb en la cadena insn (%d) != n_basic_blocks (%d)"
-#: cfgrtl.c:2161
-msgid "verify_flow_info failed"
-msgstr "falló verify_flow_info"
+#: cgraph.c:161
+#, fuzzy
+msgid "function body not available"
+msgstr "la función no puede ser inline"
+
+#: cgraph.c:163 cgraphunit.c:341
+#, fuzzy
+msgid "redefined extern inline functions are not considered for inlining"
+msgstr "Avisar cuando una función inline no puede ser inline"
+
+#: cgraph.c:166 cgraphunit.c:346
+#, fuzzy
+msgid "function not considered for inlining"
+msgstr "la función no puede ser inline"
+
+#: cgraph.c:168 cgraphunit.c:344
+#, fuzzy
+msgid "function not inlinable"
+msgstr "la función no puede ser inline"
+
+#: cgraph.c:476
+msgid "%D renamed after being referenced in assembly"
+msgstr ""
+
+#: cgraphunit.c:1042
+msgid "--param large-function-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1055
+msgid "--param large-function-growth limit reached while inlining the caller"
+msgstr ""
+
+#: cgraphunit.c:1120
+msgid "--param max-inline-insns-single limit reached"
+msgstr ""
+
+#: cgraphunit.c:1144
+msgid "--param max-inline-insns-single limit reached after inlining into the callee"
+msgstr ""
+
+#: cgraphunit.c:1221
+msgid "--param inline-unit-growth limit reached"
+msgstr ""
-#: collect2.c:425
+#: cgraphunit.c:1293 cgraphunit.c:1437
+msgid "recursive inlining"
+msgstr ""
+
+#: collect2.c:406
msgid "internal error"
msgstr "error interno"
-#: collect2.c:934
+#: collect2.c:894
msgid "no arguments"
msgstr "sin argumentos"
-#: collect2.c:1263 collect2.c:1411 collect2.c:1444
+#: collect2.c:1226 collect2.c:1374 collect2.c:1407
#, c-format
msgid "fopen %s"
msgstr "fopen %s"
-#: collect2.c:1266 collect2.c:1416 collect2.c:1447
+#: collect2.c:1229 collect2.c:1379 collect2.c:1410
#, c-format
msgid "fclose %s"
msgstr "fclose %s"
-#: collect2.c:1275
+#: collect2.c:1238
#, c-format
msgid "collect2 version %s"
msgstr "collect2 versión %s"
-#: collect2.c:1365
+#: collect2.c:1328
#, c-format
msgid "%d constructor(s) found\n"
msgstr "se encuentra(n) %d constructor(es)\n"
-#: collect2.c:1366
+#: collect2.c:1329
#, c-format
msgid "%d destructor(s) found\n"
msgstr "se encuentra(n) %d destructor(es)\n"
-#: collect2.c:1367
+#: collect2.c:1330
#, c-format
msgid "%d frame table(s) found\n"
msgstr "se encuentra(n) %d marcos de tabla(s)\n"
-#: collect2.c:1508
+#: collect2.c:1470
#, c-format
msgid "%s terminated with signal %d [%s]%s"
msgstr "%s terminado con la señal %d [%s]%s"
-#: collect2.c:1527
+#: collect2.c:1488
#, c-format
msgid "%s returned %d exit status"
msgstr "%s devolvió el estado de salida %d"
-#: collect2.c:1555
+#: collect2.c:1513
#, c-format
msgid "[cannot find %s]"
msgstr "[no se puede encontrar %s]"
-#: collect2.c:1570
+#: collect2.c:1528
#, c-format
msgid "cannot find `%s'"
msgstr "no se puede encontrar `%s'"
-#: collect2.c:1581 collect2.c:1584
+#: collect2.c:1539 collect2.c:1542
#, c-format
msgid "redirecting stdout: %s"
msgstr "redirigiendo salida estándard: %s"
-#: collect2.c:1627
+#: collect2.c:1581
#, c-format
msgid "[Leaving %s]\n"
msgstr "[Dejando %s]\n"
-#: collect2.c:1870
+#: collect2.c:1801
#, c-format
msgid ""
"\n"
@@ -3799,86 +3924,86 @@ msgstr ""
"\n"
"write_c_file - el nombre de salida es %s, el prefijo es %s\n"
-#: collect2.c:2082
+#: collect2.c:2005
msgid "cannot find `nm'"
msgstr "no se puede encontrar `nm'"
-#: collect2.c:2092 collect2.c:2533
+#: collect2.c:2015 collect2.c:2444
msgid "pipe"
msgstr "pipe"
-#: collect2.c:2096 collect2.c:2537
+#: collect2.c:2019 collect2.c:2448
msgid "fdopen"
msgstr "fdopen"
-#: collect2.c:2122 collect2.c:2563
+#: collect2.c:2045 collect2.c:2474
#, c-format
msgid "dup2 %d 1"
msgstr "dup2 %d 1"
-#: collect2.c:2125 collect2.c:2128 collect2.c:2141 collect2.c:2566
-#: collect2.c:2569 collect2.c:2582
+#: collect2.c:2048 collect2.c:2051 collect2.c:2064 collect2.c:2477
+#: collect2.c:2480 collect2.c:2493
#, c-format
msgid "close %d"
msgstr "close %d"
-#: collect2.c:2131 collect2.c:2572
+#: collect2.c:2054 collect2.c:2483
#, c-format
msgid "execv %s"
msgstr "execv %s"
-#: collect2.c:2185
+#: collect2.c:2108
#, c-format
msgid "init function found in object %s"
msgstr "se encontró la función init en el objeto %s"
-#: collect2.c:2193
+#: collect2.c:2116
#, c-format
msgid "fini function found in object %s"
msgstr "se encontró la función fini en el objeto %s"
-#: collect2.c:2216 collect2.c:2621
+#: collect2.c:2139 collect2.c:2532
msgid "fclose"
msgstr "fclose"
-#: collect2.c:2261
+#: collect2.c:2181
#, c-format
msgid "unable to open file '%s'"
msgstr "no se puede abrir el fichero '%s'"
-#: collect2.c:2263
+#: collect2.c:2183
#, c-format
msgid "unable to stat file '%s'"
msgstr "no se puede evaluar el fichero '%s'"
-#: collect2.c:2269
+#: collect2.c:2189
#, c-format
msgid "unable to mmap file '%s'"
msgstr "no se puede hacer mmap al fichero '%s'"
-#: collect2.c:2422
+#: collect2.c:2335
msgid "not found\n"
msgstr "no se encuentra\n"
-#: collect2.c:2424 collect2.c:2600
+#: collect2.c:2337 collect2.c:2511
#, c-format
msgid "dynamic dependency %s not found"
msgstr "no se encuentra la dependencia dinámica %s"
-#: collect2.c:2444
+#: collect2.c:2356
#, c-format
msgid "bad magic number in file '%s'"
msgstr "número mágico erróneo en el fichero '%s'"
-#: collect2.c:2466
+#: collect2.c:2378
msgid "dynamic dependencies.\n"
msgstr "dependencias dinámicas.\n"
-#: collect2.c:2524
+#: collect2.c:2435
msgid "cannot find `ldd'"
msgstr "no se encuentra `ldd'"
-#: collect2.c:2585
+#: collect2.c:2496
msgid ""
"\n"
"ldd output with constructors/destructors.\n"
@@ -3886,1367 +4011,1119 @@ msgstr ""
"\n"
"salida de ldd con constructores/destructores.\n"
-#: collect2.c:2612
+#: collect2.c:2523
#, c-format
msgid "unable to open dynamic dependency '%s'"
msgstr "no se puede abrir la dependencia dinámica '%s'"
-#: collect2.c:2726
+#: collect2.c:2683
#, c-format
msgid "%s: not a COFF file"
msgstr "%s: no es un fichero COFF"
-#: collect2.c:2845
+#: collect2.c:2802
#, c-format
msgid "%s: cannot open as COFF file"
msgstr "%s: no se puede abrir como un fichero COFF"
-#: collect2.c:2901
+#: collect2.c:2857
#, c-format
msgid "library lib%s not found"
msgstr "no se encuentra la biblioteca lib%s"
-#: collect2.c:3028
-#, c-format
-msgid "open %s"
-msgstr "abrir %s"
-
-#: collect2.c:3051
-msgid "incompatibilities between object file & expected values"
-msgstr "incompatibilidades entre el fichero objeto y los valores esperados"
-
-#: collect2.c:3124
+#: combine.c:13027
#, c-format
msgid ""
+";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
"\n"
-"Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
msgstr ""
+";; Estadísticas del combinador: %d intentos, %d sustituciones (%d requirieron espacio nuevo),\n"
+";; %d éxitos.\n"
"\n"
-"Procesando la tabla de símbolos #%d, desfase = 0x%.8lx, tipo = %s\n"
-
-#: collect2.c:3133
-msgid "string section missing"
-msgstr "falta la sección de cadenas"
-#: collect2.c:3136
-msgid "section pointer missing"
-msgstr "falta la sección de punteros"
-
-#: collect2.c:3184
-msgid "no symbol table found"
-msgstr "no se encuentra la tabla de símbolos"
-
-#: collect2.c:3197
-msgid "no cmd_strings found"
-msgstr "no se encuentran cmd_strings"
-
-#: collect2.c:3209
+#: combine.c:13036
+#, c-format
msgid ""
"\n"
-"Updating header and load commands.\n"
-"\n"
+";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
msgstr ""
"\n"
-"Actualizando las órdenes de encabezado y carga.\n"
-"\n"
+";; Totales del combinador: %d intentos, %d sustituciones (%d requirieron espacio nuevo),\n"
+";; %d éxitos.\n"
-#: collect2.c:3216
-#, c-format
-msgid "load command map, %d cmds, new size %ld.\n"
-msgstr "cargar mapa de órdenes, %d órdenes, nuevo tamaño %ld.\n"
+#: convert.c:70
+msgid "cannot convert to a pointer type"
+msgstr "no se puede convertir a un tipo puntero"
-#: collect2.c:3247
-msgid ""
-"writing load commands.\n"
-"\n"
-msgstr ""
-"escribiendo las órdenes de carga.\n"
-"\n"
+#: convert.c:267
+msgid "pointer value used where a floating point value was expected"
+msgstr "se usó un valor de puntero donde se esperaba un valor de coma flotante"
-#: collect2.c:3267
-#, c-format
-msgid "close %s"
-msgstr "cerrar %s"
+#: convert.c:271
+msgid "aggregate value used where a float was expected"
+msgstr "se usó un valor agregado donde se esperaba un float"
-#: collect2.c:3341
-msgid "could not convert 0x%l.8x into a region"
-msgstr "no se puede convertir 0x%l.8x en una región"
+#: convert.c:296
+msgid "conversion to incomplete type"
+msgstr "conversión a tipo de dato incompleto"
-#: collect2.c:3345
-#, c-format
-msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
-msgstr "función %s, región %d, desfase = %ld (0x%.8lx)\n"
+#: convert.c:600 convert.c:678
+msgid "can't convert between vector values of different size"
+msgstr "no se puede convertir entre valores vectoriales de tamaños diferentes"
-#: collect2.c:3472
-msgid "bad magic number"
-msgstr "número mágico erróneo"
+#: convert.c:606
+msgid "aggregate value used where an integer was expected"
+msgstr "se usó un valor agregado donde se esperaba un entero"
-#: collect2.c:3473
-msgid "bad header version"
-msgstr "versión de encabezado errónea"
+#: convert.c:657 f/com.c:1101
+msgid "pointer value used where a complex was expected"
+msgstr "se usó un valor de puntero donde se esperaba un complejo"
-#: collect2.c:3474
-msgid "bad raw header version"
-msgstr "versión de encabezado textual errónea"
+#: convert.c:661 f/com.c:1103
+msgid "aggregate value used where a complex was expected"
+msgstr "se usó un valor agregado donde se esperaba un complejo"
-#: collect2.c:3475
-msgid "raw header buffer too small"
-msgstr "almacenamiento temporal de encabezado textual demasiado pequeño"
+#: convert.c:684
+msgid "can't convert value to a vector"
+msgstr "no se puede convertir el valor a un vector"
-#: collect2.c:3476
-msgid "old raw header file"
-msgstr "fichero de encabezado textual antiguo"
+#: coverage.c:164
+#, fuzzy, c-format
+msgid "`%s' is not a gcov data file"
+msgstr "\"%s\" no es un nombre de fichero válido"
-#: collect2.c:3477
-msgid "unsupported version"
-msgstr "versión sin soporte"
+#: coverage.c:175
+#, fuzzy, c-format
+msgid "`%s' is version `%.4s', expected version `%.4s'"
+msgstr "controlador gcc versión %s ejecutando gcc version %s\n"
-#: collect2.c:3479
+#: coverage.c:255 coverage.c:263
#, c-format
-msgid "unknown {de,en}code_mach_o_hdr return value %d"
-msgstr "valor de devolución {de,en}code_mach_o_hdr %d desconocido"
+msgid "coverage mismatch for function %u while reading execution counters."
+msgstr ""
-#: collect2.c:3499
+#: coverage.c:257 coverage.c:340
#, c-format
-msgid "fstat %s"
-msgstr "fstat %s"
+msgid "checksum is %x instead of %x"
+msgstr ""
-#: collect2.c:3536 collect2.c:3584
+#: coverage.c:265 coverage.c:348
#, c-format
-msgid "lseek %s 0"
-msgstr "lseek %s 0"
+msgid "number of counters is %d instead of %d"
+msgstr ""
-#: collect2.c:3540
-#, c-format
-msgid "read %s"
-msgstr "read %s"
+#: coverage.c:271
+#, fuzzy, c-format
+msgid "cannot merge separate %s counters for function %u"
+msgstr "no se puede usar va_start en una función de interrupción"
-#: collect2.c:3543
-#, c-format
-msgid "read %ld bytes, expected %ld, from %s"
-msgstr "%ld bytes leídos, se esperaban %ld, de %s"
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' has overflowed"
+msgstr "desbordamiento de la pila del decodificador"
-#: collect2.c:3564
-#, c-format
-msgid "msync %s"
-msgstr "msync %s"
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' is corrupted"
+msgstr "`%s' es obsoleto"
-#: collect2.c:3571
+#: coverage.c:319
#, c-format
-msgid "munmap %s"
-msgstr "munmap %s"
+msgid "file %s not found, execution counts assumed to be zero"
+msgstr "no se encuentra el fichero %s, se asume que la cuenta de ejecución es cero"
-#: collect2.c:3588
-#, c-format
-msgid "write %s"
-msgstr "write %s"
+#: coverage.c:329
+#, fuzzy, c-format
+msgid "no coverage for function '%s' found."
+msgstr "clase de almacenamiento inválida para la función `%s'"
-#: collect2.c:3591
+#: coverage.c:337 coverage.c:345
#, c-format
-msgid "wrote %ld bytes, expected %ld, to %s"
-msgstr "%ld bytes escritos, se esperaban %ld, a %s"
+msgid "coverage mismatch for function '%s' while reading counter '%s'."
+msgstr ""
-#: combine.c:13222
-#, c-format
-msgid ""
-";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
-"\n"
+#: coverage.c:492
+#, fuzzy, c-format
+msgid "cannot open %s"
+msgstr "no se puede abrir %s"
+
+#: coverage.c:527
+#, fuzzy, c-format
+msgid "error writing `%s'"
+msgstr "error al escribir a %s"
+
+#. XXX should be DL_SORRY
+#: cppcharset.c:653
+#, fuzzy, c-format
+msgid "conversion from %s to %s not supported by iconv"
+msgstr "conversión de NaNa a unsigned int"
+
+#: cppcharset.c:656
+msgid "iconv_open"
msgstr ""
-";; Estadísticas del combinador: %d intentos, %d sustituciones (%d requirieron espacio nuevo),\n"
-";; %d éxitos.\n"
-"\n"
-#: combine.c:13232
+#. XXX should be DL_SORRY
+#: cppcharset.c:664
#, c-format
-msgid ""
-"\n"
-";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
+msgid "no iconv implementation, cannot convert from %s to %s"
msgstr ""
-"\n"
-";; Totales del combinador: %d intentos, %d sustituciones (%d requirieron espacio nuevo),\n"
-";; %d éxitos.\n"
-#: convert.c:69
-msgid "cannot convert to a pointer type"
-msgstr "no se puede convertir a un tipo puntero"
+#: cppcharset.c:808
+#, fuzzy
+msgid "universal character names are only valid in C++ and C99"
+msgstr "universal-character-name `\\U%08x' no es válido en el identificador"
-#: convert.c:102
-msgid "pointer value used where a floating point value was expected"
-msgstr "se usó un valor de puntero donde se esperaba un valor de coma flotante"
+#: cppcharset.c:811
+#, c-format
+msgid "the meaning of '\\%c' is different in traditional C"
+msgstr "el significado de '\\%c' es diferente en C tradicional"
-#: convert.c:106
-msgid "aggregate value used where a float was expected"
-msgstr "se usó un valor agregado donde se esperaba un float"
+#: cppcharset.c:837
+#, fuzzy, c-format
+msgid "incomplete universal character name %.*s"
+msgstr "universal-character-name incompleto"
-#: convert.c:132
-msgid "conversion to incomplete type"
-msgstr "conversión a tipo de dato incompleto"
+#: cppcharset.c:849
+#, fuzzy, c-format
+msgid "%.*s is not a valid universal character"
+msgstr "`%T::%D' no es una declaración válida"
-#: convert.c:414 convert.c:494
-msgid "can't convert between vector values of different size"
-msgstr "no se puede convertir entre valores vectoriales de tamaños diferentes"
+#: cppcharset.c:859
+#, fuzzy, c-format
+msgid "universal character %.*s is not valid in an identifier"
+msgstr "universal-character-name `\\U%08x' no es válido en el identificador"
-#: convert.c:420
-msgid "aggregate value used where an integer was expected"
-msgstr "se usó un valor agregado donde se esperaba un entero"
+#: cppcharset.c:863
+#, fuzzy, c-format
+msgid "universal character %.*s is not valid at the start of an identifier"
+msgstr "universal-character-name `\\U%08x' no es válido en el identificador"
-#: convert.c:472 f/com.c:1100
-msgid "pointer value used where a complex was expected"
-msgstr "se usó un valor de puntero donde se esperaba un complejo"
+#: cppcharset.c:898
+#, fuzzy
+msgid "converting UCN to source character set"
+msgstr "convirtiendo NULL a un tipo que no es puntero"
-#: convert.c:476 f/com.c:1102
-msgid "aggregate value used where a complex was expected"
-msgstr "se usó un valor agregado donde se esperaba un complejo"
+#: cppcharset.c:902
+#, fuzzy
+msgid "converting UCN to execution character set"
+msgstr "convirtiendo NULL a un tipo que no es puntero"
-#: convert.c:500
-msgid "can't convert value to a vector"
-msgstr "no se puede convertir el valor a un vector"
+#: cppcharset.c:967
+msgid "the meaning of '\\x' is different in traditional C"
+msgstr "el significado de '\\x' es diferente en C tradicional"
+
+#: cppcharset.c:984 f/lex.c:580
+msgid "\\x used with no following hex digits"
+msgstr "se usó \\x sin dígitos hexadecimales a continuación"
+
+#: cppcharset.c:991
+msgid "hex escape sequence out of range"
+msgstr "secuencia de escape hexadecimal fuera de rango"
+
+#: cppcharset.c:1030
+msgid "octal escape sequence out of range"
+msgstr "secuencia de escape octal fuera de rango"
+
+#: cppcharset.c:1098
+msgid "the meaning of '\\a' is different in traditional C"
+msgstr "el significado de '\\a' es diferente en C tradicional"
+
+#: cppcharset.c:1105
+#, c-format
+msgid "non-ISO-standard escape sequence, '\\%c'"
+msgstr "secuencia de escape que no es estándard ISO, '\\%c'"
+
+#: cppcharset.c:1113
+#, c-format
+msgid "unknown escape sequence '\\%c'"
+msgstr "secuencia de escape desconocida, '\\%c'"
+
+#: cppcharset.c:1116
+#, c-format
+msgid "unknown escape sequence: '\\%03o'"
+msgstr "secuencia de escape desconocida: '\\%03o'"
+
+#: cppcharset.c:1122
+#, fuzzy
+msgid "converting escape sequence to execution character set"
+msgstr "secuencia de escape fuera de rango para el carácter"
+
+#: cppcharset.c:1181
+msgid "converting to execution character set"
+msgstr ""
+
+#: cppcharset.c:1244 cppcharset.c:1307
+msgid "character constant too long for its type"
+msgstr "constante de carácter demasiado grande para su tipo"
-#: cpperror.c:113
+#: cppcharset.c:1247
+msgid "multi-character character constant"
+msgstr "constante de carácter con múltiples caracteres"
+
+#: cppcharset.c:1339
+msgid "empty character constant"
+msgstr "constante de carácter vacía"
+
+#: cppcharset.c:1378
+#, fuzzy, c-format
+msgid "failure to convert %s to %s"
+msgstr "no se puede convertir `%E' a `%T'"
+
+#: cpperror.c:110 diagnostic.def:5
msgid "warning: "
msgstr "aviso: "
-#: cpperror.c:115
+#: cpperror.c:112
msgid "internal error: "
msgstr "error interno: "
-#: cpperror.c:189
+#: cpperror.c:174
msgid "stdout"
msgstr "salida estándard"
-#: cpperror.c:191 gcc.c:6428
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
-#: cppexp.c:199
+#: cppexp.c:192
msgid "too many decimal points in number"
msgstr "demasiados puntos decimales en el número"
-#: cppexp.c:219
+#: cppexp.c:212
#, c-format
msgid "invalid digit \"%c\" in octal constant"
msgstr "dígito \"%c\" inválido en la constante octal"
-#: cppexp.c:225
+#: cppexp.c:218
msgid "use of C99 hexadecimal floating constant"
msgstr "uso de una constante de coma flotante hexadecimal C99"
-#: cppexp.c:234
+#: cppexp.c:227
msgid "exponent has no digits"
msgstr "el exponente no tiene dígitos"
-#: cppexp.c:241
+#: cppexp.c:234
msgid "hexadecimal floating constants require an exponent"
msgstr "las constantes de coma flotante hexadecimal requieren un exponente"
-#: cppexp.c:247
+#: cppexp.c:240
#, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "sufijo \"%.*s\" inválido en la constante de coma flotante"
-#: cppexp.c:257 cppexp.c:282
+#: cppexp.c:250 cppexp.c:275
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr "C tradicional rechaza el sufijo \"%.*s\""
-#: cppexp.c:268
+#: cppexp.c:261
#, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "sufijo \"%.*s\" inválido en la constante entera"
-#: cppexp.c:289
+#: cppexp.c:283
msgid "use of C99 long long integer constant"
msgstr "uso de una constante entera long long C99"
-#: cppexp.c:295
+#: cppexp.c:290
msgid "imaginary constants are a GCC extension"
msgstr "las constantes imaginarias son una extensión GCC"
-#: cppexp.c:383
+#: cppexp.c:376
msgid "integer constant is too large for its type"
msgstr "la constante entera es demasiado grande para su tipo"
-#: cppexp.c:395
+#: cppexp.c:388
msgid "integer constant is so large that it is unsigned"
msgstr "la constante entera es tan grande que es unsigned"
-#: cppexp.c:482
+#: cppexp.c:470
msgid "missing ')' after \"defined\""
msgstr "falta `)' después de \"defined\""
-#: cppexp.c:489
+#: cppexp.c:477
msgid "operator \"defined\" requires an identifier"
msgstr "el operador \"defined\" requiere un identificador"
-#: cppexp.c:497
+#: cppexp.c:485
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr "(\"%s\" es un elemento alternativo para \"%s\" en C++)"
-#: cppexp.c:507
+#: cppexp.c:495
msgid "this use of \"defined\" may not be portable"
msgstr "este uso de \"defined\" puede no ser transportable"
-#: cppexp.c:545
+#: cppexp.c:531
msgid "floating constant in preprocessor expression"
msgstr "constante de coma flotante en una expresión del preprocesador"
-#: cppexp.c:551
+#: cppexp.c:537
msgid "imaginary number in preprocessor expression"
msgstr "número imaginario en una expresión del preprocesador"
-#: cppexp.c:596
-#, c-format
-msgid "ISO C++ does not permit \"%s\" in #if"
-msgstr "ISO C++ no permite \"%s\" en #if"
-
-#: cppexp.c:604
+#: cppexp.c:582
#, c-format
msgid "\"%s\" is not defined"
msgstr "\"%s\" no está definido"
-#: cppexp.c:737 cppexp.c:772
+#: cppexp.c:714 cppexp.c:743
#, c-format
msgid "missing binary operator before token \"%s\""
msgstr "falta un operador binario antes del elemento \"%s\""
-#: cppexp.c:756
-#, c-format
-msgid "invalid character '%c' in #if"
-msgstr "Carácter inválido '%c' en #if"
-
-#: cppexp.c:758
-#, c-format
-msgid "invalid character '\\%03o' in #if"
-msgstr "Carácter inválido '\\%03o' en #if"
-
-#: cppexp.c:763
+#: cppexp.c:734
#, c-format
msgid "token \"%s\" is not valid in preprocessor expressions"
msgstr "el elemento \"%s\" no es válido en las expresiones del preprocesador"
-#: cppexp.c:782
+#: cppexp.c:753
msgid "void expression between '(' and ')'"
msgstr "expresión void entre '(' y ')'"
-#: cppexp.c:785
+#: cppexp.c:756
msgid "#if with no expression"
msgstr "#if sin expresión"
-#: cppexp.c:787
+#: cppexp.c:758
#, c-format
msgid "operator '%s' has no right operand"
msgstr "el operador '%s' no tiene operando derecho"
-#: cppexp.c:813
+#: cppexp.c:784
msgid " ':' without preceding '?'"
msgstr " ':' sin una '?' precedente"
-#: cppexp.c:840
+#: cppexp.c:811
msgid "unbalanced stack in #if"
msgstr "pila desbalanceada en #if"
-#: cppexp.c:862
+#: cppexp.c:830
#, c-format
msgid "impossible operator '%u'"
msgstr "operador '%u' imposible"
-#: cppexp.c:954
+#: cppexp.c:922
msgid "missing ')' in expression"
msgstr "falta un ')' en la expresión"
-#: cppexp.c:975
+#: cppexp.c:943
msgid "'?' without following ':'"
msgstr "'?' sin ':' a continuación"
-#: cppexp.c:985
+#: cppexp.c:953
msgid "integer overflow in preprocessor expression"
msgstr "desbordamiento entero en expresión del preprocesador"
-#: cppexp.c:990
+#: cppexp.c:958
msgid "missing '(' in expression"
msgstr "falta un '(' en la expresión"
-#: cppexp.c:1026
+#: cppexp.c:990
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr "el operando izquierdo de \"%s\" cambia el signo cuando es promovido"
-#: cppexp.c:1031
+#: cppexp.c:995
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr "el operando derecho de \"%s\" cambia el signo cuando es promovido"
-#: cppexp.c:1414
+#: cppexp.c:1352
msgid "comma operator in operand of #if"
msgstr "operador coma en operando de #if"
-#: cppexp.c:1551
+#: cppexp.c:1483
msgid "division by zero in #if"
msgstr "división por cero en #if"
-#: cppfiles.c:411
+#: cppfiles.c:370
+msgid "NULL directory in find_file"
+msgstr ""
+
+#: cppfiles.c:397
+msgid "one or more PCH files were found, but they were invalid"
+msgstr ""
+
+#: cppfiles.c:400
+msgid "use -Winvalid-pch for more information"
+msgstr ""
+
+#: cppfiles.c:458
+#, c-format
+msgid "%s is a block device"
+msgstr "%s es un dispositivo de bloques"
+
+#: cppfiles.c:475
#, c-format
msgid "%s is too large"
msgstr "%s es demasiado grande"
-#: cppfiles.c:447
+#: cppfiles.c:510
#, c-format
msgid "%s is shorter than expected"
msgstr "%s es más corto de lo esperado"
-#: cppfiles.c:461
-#, c-format
-msgid "%s is a block device"
-msgstr "%s es un dispositivo de bloques"
-
-#: cppfiles.c:594
-#, c-format
-msgid "no include path in which to find %s"
+#: cppfiles.c:696
+#, fuzzy, c-format
+msgid "no include path in which to search for %s"
msgstr "no hay ruta de inclusión en la cual se encuentre %s"
-#: cppfiles.c:668
+#: cppfiles.c:956
msgid "Multiple include guards may be useful for:\n"
msgstr "Guardias múltiples de include pueden ser útiles para:\n"
-#: cppfiles.c:1014
-msgid "absolute file name in remap_filename"
-msgstr "nombre de fichero absoluto en remap_filename"
-
-#: cppinit.c:224
-#, c-format
-msgid "ignoring nonexistent directory \"%s\"\n"
-msgstr "ignorando el directorio inexistente \"%s\"\n"
-
-#: cppinit.c:231
-#, c-format
-msgid "%s: Not a directory"
-msgstr "%s: No es un directorio"
-
-#: cppinit.c:287
-#, c-format
-msgid "ignoring duplicate directory \"%s\"\n"
-msgstr "ignorando el directorio duplicado \"%s\"\n"
-
-#: cppinit.c:325
-msgid " as it is a non-system directory that duplicates a system directory\n"
-msgstr " porque es un directorio que no es del sistema que duplica un directorio del sistema\n"
-
-#: cppinit.c:891
+#: cppinit.c:387
msgid "cppchar_t must be an unsigned type"
msgstr "cppchar_t debe ser de un tipo unsigned"
-#: cppinit.c:895
+#: cppinit.c:391
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr "la aritmética del preprocesador tiene una precisión máxima de %lu bits; el objetivo requiere de %lu bits"
-#: cppinit.c:901
+#: cppinit.c:398
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr "la aritmética de CPP debe se al menos tan precisa como un int del objetivo"
-#: cppinit.c:904
+#: cppinit.c:401
msgid "target char is less than 8 bits wide"
msgstr "el char del objetivo tiene menos de 8 bits de ancho"
-#: cppinit.c:908
+#: cppinit.c:405
msgid "target wchar_t is narrower than target char"
msgstr "el wchar_t del objetivo es más estrecho que el char del objetivo"
-#: cppinit.c:912
+#: cppinit.c:409
msgid "target int is narrower than target char"
msgstr "el int del objetivo es más estrecho que el char del objetivo"
-#: cppinit.c:916
+#: cppinit.c:414
msgid "CPP half-integer narrower than CPP character"
msgstr "el medio-entero de CPP es más estrecho que el carácter de CPP"
-#: cppinit.c:920
+#: cppinit.c:418
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
msgstr "CPP no puede manejar constantes de carácter anchas más allá de %lu bits en este objetivo, pero el objetivo requiere %lu bits"
-#: cppinit.c:972
-msgid "#include \"...\" search starts here:\n"
-msgstr "la búsqueda de #include \"...\" inicia aquí:\n"
-
-#: cppinit.c:976
-msgid "#include <...> search starts here:\n"
-msgstr "la búsqueda de #include <...> inicia aquí:\n"
-
-#: cppinit.c:979
-msgid "End of search list.\n"
-msgstr "Fin de la lista de búsqueda.\n"
-
-#: cppinit.c:1057
-msgid "<built-in>"
-msgstr "<interno>"
-
-#: cppinit.c:1059
-msgid "<command line>"
-msgstr "<línea de orden>"
-
-#. Irix6 "cc -n32" and OSF4 cc have problems with char foo[] = ("string");
-#. I.e. a const string initializer with parens around it. That is
-#. what N_("string") resolves to, so we make no_* be macros instead.
-#: cppinit.c:1164
-#, c-format
-msgid "assertion missing after %s"
-msgstr "falta una aserción después de %s"
-
-#: cppinit.c:1165
-#, c-format
-msgid "directory name missing after %s"
-msgstr "falta el nombre de directorio después de %s"
-
-#: cppinit.c:1166
-#, c-format
-msgid "file name missing after %s"
-msgstr "falta el nombre de fichero después de %s"
-
-#: cppinit.c:1167
-#, c-format
-msgid "macro name missing after %s"
-msgstr "falta el nombre de macro después de %s"
-
-#: cppinit.c:1168
-#, c-format
-msgid "path name missing after %s"
-msgstr "falta el nombre de la ruta después de %s"
-
-#: cppinit.c:1353
-msgid "-I- specified twice"
-msgstr "se especificó -I- dos veces"
-
-#: cpplex.c:149
-#, c-format
-msgid "trigraph ??%c converted to %c"
-msgstr "trigrafo ??%c convertido a %c"
-
-#: cpplex.c:157
-#, c-format
-msgid "trigraph ??%c ignored"
-msgstr "se ignora el trigrafo ??%c"
-
-#: cpplex.c:214
-msgid "backslash and newline separated by space"
-msgstr "caracteres de barra invertida y fin de línea separados por espacio"
-
-#: cpplex.c:221 cpptrad.c:158
-msgid "backslash-newline at end of file"
-msgstr "no hay caractér de barra invertida o fin de línea al final del fichero"
-
-#: cpplex.c:287 cpptrad.c:199
-msgid "\"/*\" within comment"
-msgstr "\"/*\" dentro de un comentario"
-
-#: cpplex.c:395
+#: cpplex.c:410
msgid "null character(s) ignored"
msgstr "caracter(es) nulo(s) ignorados"
-#: cpplex.c:402
-#, c-format
-msgid "%s in preprocessing directive"
-msgstr "%s en la directiva de preprocesamiento"
+#: cpplex.c:445
+#, fuzzy
+msgid "'$' in identifier or number"
+msgstr "caracter(es) '$' en el identificador o número"
-#: cpplex.c:475
+#: cpplex.c:492
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr "intento de usar \"%s\" envenenado"
-#: cpplex.c:483
+#: cpplex.c:500
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr "__VA_ARGS__ solamente puede aparecer en la expansión de una macro variadic C99"
-#: cpplex.c:555
-msgid "'$' character(s) in identifier or number"
-msgstr "caracter(es) '$' en el identificador o número"
-
-#: cpplex.c:698
-#, c-format
-msgid "missing terminating %c character"
-msgstr "falta carácter terminando %c"
-
-#: cpplex.c:711
+#: cpplex.c:596
msgid "null character(s) preserved in literal"
msgstr "caracter(es) nulo(s) preservados en la literal"
-#: cpplex.c:915 cpptrad.c:487
-msgid "no newline at end of file"
-msgstr "no hay caractér de fin de línea al final del fichero"
-
-#: cpplex.c:1092 cpptrad.c:213
+#: cpplex.c:916
msgid "unterminated comment"
msgstr "comentario sin terminar"
-#: cpplex.c:1103
+#: cpplex.c:927
msgid "C++ style comments are not allowed in ISO C90"
msgstr "los comentarios de estilo C++ no se permiten en ISO C90"
-#: cpplex.c:1105
+#: cpplex.c:929
msgid "(this will be reported only once per input file)"
msgstr "(esto se reportará solamente una vez por cada fichero de entrada)"
-#: cpplex.c:1110
+#: cpplex.c:934
msgid "multi-line comment"
msgstr "comentario en múltiples líneas"
-#: cpplex.c:1425
-#, c-format
-msgid "unknown string token %s\n"
-msgstr "cadena de elemento %s desconocida\n"
-
-#: cpplex.c:1438
+#: cpplex.c:1198
#, c-format
msgid "unspellable token %s"
msgstr "elemento %s impronunciable"
-#: cpplex.c:1695
-#, c-format
-msgid "the meaning of '\\%c' is different in traditional C"
-msgstr "el significado de '\\%c' es diferente en C tradicional"
-
-#: cpplex.c:1701
-msgid "incomplete universal-character-name"
-msgstr "universal-character-name incompleto"
-
-#: cpplex.c:1715
-#, c-format
-msgid "non-hex digit '%c' in universal-character-name"
-msgstr "dígito no hexadecimal '%c' en universal-character-name"
-
-#: cpplex.c:1723
-msgid "universal-character-name on EBCDIC target"
-msgstr "universal-character-name en el objetivo EBCDIC"
-
-#: cpplex.c:1737
-msgid "universal-character-name out of range"
-msgstr "universal-character-name fuera de rango"
-
-#: cpplex.c:1791
-msgid "the meaning of '\\a' is different in traditional C"
-msgstr "el significado de '\\a' es diferente en C tradicional"
-
-#: cpplex.c:1798
-#, c-format
-msgid "non-ISO-standard escape sequence, '\\%c'"
-msgstr "secuencia de escape que no es estándard ISO, '\\%c'"
-
-#: cpplex.c:1809
-msgid "the meaning of '\\x' is different in traditional C"
-msgstr "el significado de '\\x' es diferente en C tradicional"
-
-#: cpplex.c:1828 f/lex.c:585
-msgid "\\x used with no following hex digits"
-msgstr "se usó \\x sin dígitos hexadecimales a continuación"
-
-#: cpplex.c:1833
-msgid "hex escape sequence out of range"
-msgstr "secuencia de escape hexadecimal fuera de rango"
-
-#: cpplex.c:1858
-msgid "octal escape sequence out of range"
-msgstr "secuencia de escape octal fuera de rango"
-
-#: cpplex.c:1874
-#, c-format
-msgid "unknown escape sequence '\\%c'"
-msgstr "secuencia de escape desconocida, '\\%c'"
-
-#: cpplex.c:1877
-#, c-format
-msgid "unknown escape sequence: '\\%03o'"
-msgstr "secuencia de escape desconocida: '\\%03o'"
-
-#: cpplex.c:1882
-msgid "escape sequence out of range for its type"
-msgstr "secuencia de escape fuera de rango por su tipo"
-
-#: cpplex.c:1973
-msgid "empty character constant"
-msgstr "constante de carácter vacía"
-
-#: cpplex.c:1983
-msgid "character constant too long for its type"
-msgstr "constante de carácter demasiado grande para su tipo"
-
-#: cpplex.c:1986
-msgid "multi-character character constant"
-msgstr "constante de carácter con múltiples caracteres"
-
-#: cpplib.c:225
+#: cpplib.c:218
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr "elementos extra al final de la directiva #%s"
-#: cpplib.c:315
+#: cpplib.c:304
#, c-format
msgid "#%s is a GCC extension"
msgstr "#%s es una extensión de GCC"
-#: cpplib.c:327
+#: cpplib.c:316
msgid "suggest not using #elif in traditional C"
msgstr "se sugiere no usar #elif en C tradicional"
-#: cpplib.c:330
+#: cpplib.c:319
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr "C tradicional ignora #%s con el # indentado"
-#: cpplib.c:334
+#: cpplib.c:323
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr "se sugiere ocultar #%s de C tradicional con un # indentado"
-#: cpplib.c:358
+#: cpplib.c:345
msgid "embedding a directive within macro arguments is not portable"
msgstr "imbuir una directiva dentro de los argumentos de una macro no es transportable"
-#: cpplib.c:378
+#: cpplib.c:365
msgid "style of line directive is a GCC extension"
msgstr "la directiva de estilo de línea es una extensión de GCC"
-#: cpplib.c:428
+#: cpplib.c:415
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr "directiva de preprocesamiento #%s inválida"
-#: cpplib.c:500
+#: cpplib.c:484
msgid "\"defined\" cannot be used as a macro name"
msgstr "\"defined\" no se puede usar como un nombre de macro"
-#: cpplib.c:506
+#: cpplib.c:490
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr "no se puede usar \"%s\" como un nombre de macro porque es un operador en C++"
-#: cpplib.c:509
+#: cpplib.c:493
#, c-format
msgid "no macro name given in #%s directive"
msgstr "no se dio un nombre de macro en la directiva #%s"
-#: cpplib.c:512
+#: cpplib.c:496
msgid "macro names must be identifiers"
msgstr "los nombres de macro deben ser identificadores"
-#: cpplib.c:552
+#: cpplib.c:537
#, c-format
msgid "undefining \"%s\""
msgstr "borrando la definición de \"%s\""
-#: cpplib.c:598
+#: cpplib.c:609
msgid "missing terminating > character"
msgstr "falta el carácter de terminación >"
-#: cpplib.c:637
+#: cpplib.c:662
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr "#%s espera \"NOMBRE_ARCHIVO\" ó <NOMBRE_ARCHIVO>"
-#: cpplib.c:648
-#, c-format
-msgid "empty file name in #%s"
-msgstr "nombre de fichero vacío en #%s"
+#: cpplib.c:685
+msgid "#include nested too deeply"
+msgstr "#include anidado con demasiada profundidad"
-#: cpplib.c:667
+#: cpplib.c:723
msgid "#include_next in primary source file"
msgstr "#include_next en fichero primario de código fuente"
-#: cpplib.c:674
-msgid "#import is obsolete, use an #ifndef wrapper in the header file"
-msgstr "#import es obsoleto, use una envoltura #ifndef en el fichero de encabezado"
-
-#: cpplib.c:682
-msgid "#include nested too deeply"
-msgstr "#include anidado con demasiada profundidad"
-
-#: cpplib.c:739
+#: cpplib.c:749
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr "indicador \"%s\" inválido en la línea de la directiva"
-#: cpplib.c:814
+#: cpplib.c:794
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "\"%s\" después de #line no es un entero positivo"
-#: cpplib.c:820
+#: cpplib.c:800
msgid "line number out of range"
msgstr "número de línea fuera de rango"
-#: cpplib.c:831 cpplib.c:902
+#: cpplib.c:812 cpplib.c:885
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr "\"%s\" no es un nombre de fichero válido"
-#: cpplib.c:866
+#: cpplib.c:847
#, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "\"%s\" después de # no es un entero positivo"
-#: cpplib.c:973
+#: cpplib.c:947
msgid "invalid #ident directive"
msgstr "directiva #ident inválida"
-#: cpplib.c:1061
+#: cpplib.c:1027
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr "registrando \"%s\" como un pragma y como un espacio de nombres de pragma"
-#: cpplib.c:1064
+#: cpplib.c:1030
#, c-format
msgid "#pragma %s %s is already registered"
msgstr "#pragma %s %s ya está registrado"
-#: cpplib.c:1067
+#: cpplib.c:1033
#, c-format
msgid "#pragma %s is already registered"
msgstr "#pragma %s ya está registrado"
-#: cpplib.c:1143
-msgid "#pragma once is obsolete"
-msgstr "#pragma una vez es obsoleto"
-
-#: cpplib.c:1146
+#: cpplib.c:1178
msgid "#pragma once in main file"
msgstr "#pragma una vez en el fichero principal"
-#: cpplib.c:1170
+#: cpplib.c:1201
msgid "invalid #pragma GCC poison directive"
msgstr "directiva #pragma de GCC envenenada inválida"
-#: cpplib.c:1179
+#: cpplib.c:1210
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr "envenenando la macro existente \"%s\""
-#: cpplib.c:1201
+#: cpplib.c:1231
msgid "#pragma system_header ignored outside include file"
msgstr "#pragma system_header ignorado fuera del fichero a incluir"
-#: cpplib.c:1226
-#, c-format
-msgid "cannot find source %s"
+#: cpplib.c:1255
+#, fuzzy, c-format
+msgid "cannot find source file %s"
msgstr "no se puede encontrar la fuente %s"
-#: cpplib.c:1230
+#: cpplib.c:1259
#, c-format
msgid "current file is older than %s"
msgstr "el fichero actual es más antiguo que %s"
-#: cpplib.c:1346
+#: cpplib.c:1373
msgid "_Pragma takes a parenthesized string literal"
msgstr "_Pragma lleva una cadena literal entre paréntesis"
-#: cpplib.c:1429
+#: cpplib.c:1451
msgid "#else without #if"
msgstr "#else sin #if"
-#: cpplib.c:1434
+#: cpplib.c:1456
msgid "#else after #else"
msgstr "#else después de #else"
-#: cpplib.c:1436 cpplib.c:1470
-msgid "the conditional began here"
-msgstr "el condicional empezó aquí"
-
-#: cpplib.c:1463
+#: cpplib.c:1484
msgid "#elif without #if"
msgstr "#elif sin #if"
-#: cpplib.c:1468
+#: cpplib.c:1489
msgid "#elif after #else"
msgstr "#elif después de #else"
-#: cpplib.c:1499
+#: cpplib.c:1519
msgid "#endif without #if"
msgstr "#endif sin #if"
-#: cpplib.c:1582
+#: cpplib.c:1596
msgid "missing '(' after predicate"
msgstr "falta '(' antes del predicado"
-#: cpplib.c:1597
+#: cpplib.c:1611
msgid "missing ')' to complete answer"
msgstr "falta ')' para completar la respuesta"
-#: cpplib.c:1617
+#: cpplib.c:1631
msgid "predicate's answer is empty"
msgstr "el predicado de la respuesta está vacío"
-#: cpplib.c:1647
+#: cpplib.c:1658
msgid "assertion without predicate"
msgstr "afirmación sin predicado"
-#: cpplib.c:1649
+#: cpplib.c:1660
msgid "predicate must be an identifier"
msgstr "el predicado debe ser un identificador"
-#: cpplib.c:1738
+#: cpplib.c:1744
#, c-format
msgid "\"%s\" re-asserted"
msgstr "\"%s\" reafirmado"
-#: cpplib.c:1968
-#, c-format
-msgid "unterminated #%s"
-msgstr "#%s sin terminar"
-
-#: cppmacro.c:94
-#, c-format
-msgid "macro \"%s\" is not used"
-msgstr "la macro \"%s\" no se utiliza"
-
-#: cppmacro.c:139 cppmacro.c:294
+#: cppmacro.c:125 cppmacro.c:280
#, c-format
msgid "invalid built-in macro \"%s\""
msgstr "macro interna \"%s\" inválida"
-#: cppmacro.c:234
+#: cppmacro.c:221
msgid "could not determine date and time"
msgstr "no se puede determinar la fecha y la hora"
-#: cppmacro.c:407
+#: cppmacro.c:393
msgid "invalid string literal, ignoring final '\\'"
msgstr "cadena literal inválida, se ignora el '\\' finales"
-#: cppmacro.c:504
+#: cppmacro.c:476
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr "pegar \"%s\" y \"%s\" no da un elemento válido de preprocesamiento"
-#: cppmacro.c:546
+#: cppmacro.c:514
msgid "ISO C99 requires rest arguments to be used"
msgstr "ISO C99 requiere que el resto de los argumentos sea usado"
-#: cppmacro.c:551
+#: cppmacro.c:519
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr "la macro \"%s\" requiere %u argumentos, pero solo se proporcionan %u"
-#: cppmacro.c:556
+#: cppmacro.c:524
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr "la macro \"%s\" recibió %u argumentos, pero solamente tomó %u"
-#: cppmacro.c:669 cpptrad.c:774
+#: cppmacro.c:635
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr "lista de argumentos sin terminar al invocar la macro \"%s\""
-#: cppmacro.c:776
+#: cppmacro.c:738
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr "la función de macro \"%s\" se debe usar con argumentos en C tradicional"
-#: cppmacro.c:1314
+#: cppmacro.c:1241
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr "parámetro de macro \"%s\" duplicado"
-#: cppmacro.c:1351
+#: cppmacro.c:1286
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr "\"%s\" podría faltar en la lista de parámetro de macro"
-#: cppmacro.c:1359
+#: cppmacro.c:1294
msgid "macro parameters must be comma-separated"
msgstr "los parámetros de macro deben ser separados por comas"
-#: cppmacro.c:1376
+#: cppmacro.c:1311
msgid "parameter name missing"
msgstr "falta el nombre del parámetro"
-#: cppmacro.c:1391
+#: cppmacro.c:1326
msgid "anonymous variadic macros were introduced in C99"
msgstr "los macros variadic anónimos se introdujeron en C99"
-#: cppmacro.c:1395
+#: cppmacro.c:1330
msgid "ISO C does not permit named variadic macros"
msgstr "ISO C no permite macros variadic nombrados"
-#: cppmacro.c:1404
+#: cppmacro.c:1339
msgid "missing ')' in macro parameter list"
msgstr "falta paréntesis derecho en la lista de parámetros de macro"
-#: cppmacro.c:1472
+#: cppmacro.c:1402
msgid "ISO C requires whitespace after the macro name"
msgstr "ISO C requiere espacios en blanco después del nombre de macro"
-#: cppmacro.c:1500
+#: cppmacro.c:1430
msgid "'#' is not followed by a macro parameter"
msgstr "'#' no es seguido por un parámetro de macro"
-#: cppmacro.c:1519
+#: cppmacro.c:1449
msgid "'##' cannot appear at either end of a macro expansion"
msgstr "'##' no puede aparece en o al final de una expansión de macro"
-#: cppmacro.c:1601
-#, c-format
-msgid "\"%s\" redefined"
-msgstr "se redefinió \"%s\""
-
-#: cppmacro.c:1606
-msgid "this is the location of the previous definition"
-msgstr "esta es la ubicación de la definición previa"
-
-#: cppmacro.c:1657
+#: cppmacro.c:1588
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr "el argumento de macro \"%s\" debería ser convertido a cadena en C tradicional"
-#: cppmacro.c:1682
+#: cppmacro.c:1611
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr "tipo de hash %d inválido en cpp_macro_definition"
-#: cppspec.c:109
+#: cpppch.c:84 cpppch.c:332 cpppch.c:356 cpppch.c:365
+msgid "while writing precompiled header"
+msgstr ""
+
+#: cpppch.c:463
+#, fuzzy, c-format
+msgid "%s: not used because `%.*s' not defined"
+msgstr "se usa la etiqueta `%s' pero no está definida"
+
+#: cpppch.c:475
+#, c-format
+msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
+msgstr ""
+
+#: cpppch.c:516
+#, fuzzy, c-format
+msgid "%s: not used because `%s' is defined"
+msgstr "se usa `%s' pero nunca se definió"
+
+#: cpppch.c:529 cpppch.c:715
+msgid "while reading precompiled header"
+msgstr ""
+
+#: cppspec.c:106
#, c-format
msgid "\"%s\" is not a valid option to the preprocessor"
msgstr "\"%s\" no es una opción válida para el preprocesador"
-#: cppspec.c:133
+#: cppspec.c:128
msgid "too many input files"
msgstr "demasiados ficheros de entrada"
-#: cpptrad.c:841
+#: cpptrad.c:744
#, c-format
msgid "detected recursion whilst expanding macro \"%s\""
msgstr "se detectó recursión al expandir la macro \"%s\""
-#: cse.c:7195
+#: cpptrad.c:911
+#, fuzzy
+msgid "syntax error in macro parameter list"
+msgstr "error de sintaxis en la lista nombres de parámetros"
+
+#: cse.c:7040
#, c-format
msgid ";; Processing block from %d to %d, %d sets.\n"
msgstr ";; Procesando el bloque de %d a %d, %d establecido.\n"
-#: diagnostic.c:714
-msgid "((anonymous))"
-msgstr "((anónimo))"
-
-#: diagnostic.c:928
-#, c-format
-msgid "%s: warnings being treated as errors\n"
-msgstr "%s: los avisos son tratados como errores\n"
-
-#: diagnostic.c:963
-#, c-format
-msgid "%s: %s: "
-msgstr "%s: %s: "
-
-#: diagnostic.c:1054
-#, c-format
-msgid "%s "
-msgstr "%s "
-
-#: diagnostic.c:1056
-#, c-format
-msgid " %s"
-msgstr " %s"
-
-#: diagnostic.c:1078
-msgid "At top level:"
-msgstr "En el nivel principal:"
-
-#: diagnostic.c:1083
-#, c-format
-msgid "In member function `%s':"
-msgstr "En la función miembro `%s':"
-
-#: diagnostic.c:1087
-#, c-format
-msgid "In function `%s':"
-msgstr "En la función `%s':"
-
-#: diagnostic.c:1175
-msgid "compilation terminated.\n"
-msgstr "compilación terminada.\n"
-
-#: diagnostic.c:1193
+#: diagnostic.c:209
#, c-format
msgid "%s:%d: confused by earlier errors, bailing out\n"
msgstr "%s:%d: confusión por errores previos, saliendo\n"
-#: diagnostic.c:1208 diagnostic.c:1316
-#, c-format
-msgid ""
-"Please submit a full bug report,\n"
-"with preprocessed source if appropriate.\n"
-"See %s for instructions.\n"
-msgstr ""
-"Por favor envíe un reporte completo de `bugs',\n"
-"con el código preprocesado si es apropiado.\n"
-"Vea %s para más instrucciones.\n"
+#: diagnostic.c:281
+msgid "compilation terminated.\n"
+msgstr "compilación terminada.\n"
-#: diagnostic.c:1314
+#: diagnostic.c:572
msgid "Internal compiler error: Error reporting routines re-entered.\n"
msgstr "Error interno del compilador: Error al reportar rutinas reentradas.\n"
-#: diagnostic.c:1376
+#: diagnostic.c:584
#, c-format
msgid "in %s, at %s:%d"
msgstr "en %s, en %s:%d"
-#: diagnostic.c:1397
-#, c-format
-msgid "In file included from %s:%d"
-msgstr "En el fichero incluído de %s:%d"
-
-#: diagnostic.c:1400
-#, c-format
-msgid ""
-",\n"
-" from %s:%d"
-msgstr ""
-",\n"
-" de %s:%d"
-
-#: diagnostic.c:1401
-msgid ":\n"
-msgstr ":\n"
-
-#: diagnostic.c:1445 diagnostic.c:1462
-#, c-format
-msgid "`%s' is deprecated (declared at %s:%d)"
-msgstr "`%s' es obsoleto (declarado en %s:%d)"
-
-#: diagnostic.c:1465
-#, c-format
-msgid "`%s' is deprecated"
-msgstr "`%s' es obsoleto"
-
-#: diagnostic.c:1468
-#, c-format
-msgid "type is deprecated (declared at %s:%d)"
-msgstr "el tipo es obsoleto (declarado en %s:%d)"
-
-#: diagnostic.c:1471
-msgid "type is deprecated"
-msgstr "el tipo es obsoleto"
-
-#: dominance.c:728
+#: dominance.c:763
#, c-format
msgid "dominator of %d should be %d, not %d"
msgstr "el dominador de %d debería ser %d, no %d"
-#: dwarf2out.c:3135
+#: dwarf2out.c:3228
#, c-format
msgid "DW_LOC_OP %s not implemented\n"
msgstr "DW_LOC_OP %s no está implementado\n"
-#: dwarfout.c:2066
-#, c-format
-msgid "internal regno botch: `%s' has regno = %d\n"
-msgstr "regno interno fastidiado: `%s' tiene regno = %d\n"
-
-#: dwarfout.c:6181
-msgid "support for the DWARF1 debugging format is deprecated"
-msgstr "el soporte para el formato de depuración DWARF1 es obsoleto"
-
-#: dwarfout.c:6278
-msgid "can't get current directory"
-msgstr "no se puede obtener el directorio actual"
-
#: emit-rtl.c:1155
msgid "can't access real part of complex value in hard register"
msgstr "no se puede accesar a la parte real de un valor complejo en un registro fijo"
-#: emit-rtl.c:1177
+#: emit-rtl.c:1182
msgid "can't access imaginary part of complex value in hard register"
msgstr "no se puede accesar a la parte imaginaria de un valor complejo en un registro fijo"
-#: emit-rtl.c:3402
+#: emit-rtl.c:2263
+#, fuzzy
+msgid "Invalid rtl sharing found in the insn"
+msgstr "operando inválido en la instrucción"
+
+#: emit-rtl.c:2265
+msgid "Shared rtx"
+msgstr ""
+
+#: emit-rtl.c:3400
msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
msgstr "ICE: se usa emit_insn donde se necesita emit_jump_insn:\n"
-#: errors.c:136
+#: errors.c:129
#, c-format
msgid "abort in %s, at %s:%d"
msgstr "aborto en %s, en %s:%d"
-#: except.c:369
+#: except.c:357
msgid "exception handling disabled, use -fexceptions to enable"
msgstr "manejo de excepciones desactivado, use -fexceptions para activar"
-#: except.c:2994
+#: except.c:2942
msgid "argument of `__builtin_eh_return_regno' must be constant"
msgstr "el argumento de `builtin_eh_return_regno' debe ser constante"
-#: except.c:3137
+#: except.c:3073
msgid "__builtin_eh_return not supported on this target"
msgstr "no se da soporte a __builtin_eh_return en este objetivo"
-#: explow.c:1408
+#: explow.c:1327
msgid "stack limits not supported on this target"
msgstr "no se da soporte a límites de la pila en este objetivo"
-#: expr.c:3355
+#: expr.c:2965
msgid "function using short complex types cannot be inline"
msgstr "las funciones que usan tipos short complex no pueden ser inline"
-#: expr.c:6272 expr.c:6281 expr.c:6290 expr.c:6295 expr.c:6604 expr.c:6620
-msgid "unsupported wide integer operation"
-msgstr "operación de enteros anchos sin soporte"
-
-#: expr.c:6669
-#, c-format
-msgid "prior parameter's size depends on `%s'"
+#: expr.c:6311
+#, fuzzy
+msgid "%Jprior parameter's size depends on '%D'"
msgstr "el tamaño del parámetro previo depende de `%s'"
-#: expr.c:7005
+#: expr.c:6678
msgid "returned value in block_exit_expr"
msgstr "se regresó un valor en block_exit_expr"
#. We can't make a bitwise copy of this object, so fail.
-#: expr.c:9202
+#: expr.c:8823
msgid "cannot take the address of an unaligned member"
msgstr "no se puede tomar la dirección de un miembro desalineado"
-#: final.c:1342
+#: final.c:1058
msgid "negative insn length"
msgstr "longitud de insn negativa"
-#: final.c:2793
+#: final.c:2429
msgid "could not split insn"
msgstr "no se puede dividir insn"
-#: final.c:3141
+#: final.c:2771
msgid "invalid `asm': "
msgstr "`asm' inválido: "
-#: final.c:3328
+#: final.c:2954
msgid "nested assembly dialect alternatives"
msgstr "alternativas de dialecto ensamblador anidadas"
-#: final.c:3345 final.c:3357
+#: final.c:2971 final.c:2983
msgid "unterminated assembly dialect alternative"
msgstr "alternativa de dialecto ensamblador sin terminar"
-#: final.c:3401
+#: final.c:3027
#, c-format
msgid "operand number missing after %%-letter"
msgstr "falta un número operando después de %%-letra"
-#: final.c:3404 final.c:3443
+#: final.c:3030 final.c:3069
msgid "operand number out of range"
msgstr "número operando fuera de rango"
-#: final.c:3462
+#: final.c:3088
#, c-format
msgid "invalid %%-code"
msgstr "%%-código inválido"
-#: final.c:3493
+#: final.c:3118
#, c-format
msgid "`%%l' operand isn't a label"
msgstr "el operando `%%l' no es una etiqueta"
#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
-#: final.c:3600 vmsdbgout.c:466 config/i386/i386.c:6314
-#: config/pdp11/pdp11.c:1573
+#. We can't handle floating point constants; PRINT_OPERAND must
+#. handle them.
+#. We can't handle floating point constants;
+#. PRINT_OPERAND must handle them.
+#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6739
+#: config/pdp11/pdp11.c:1646
msgid "floating constant misused"
msgstr "constante de coma flotante mal usada"
-#: final.c:3656 vmsdbgout.c:523 config/i386/i386.c:6392
-#: config/pdp11/pdp11.c:1620
+#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6817
+#: config/pdp11/pdp11.c:1693
msgid "invalid expression as operand"
msgstr "expresión inválida como operando"
-#: flow.c:352
+#: flow.c:329
msgid "function might be possible candidate for attribute `noreturn'"
msgstr "la función puede ser un posible candidato para el atributo `noreturn'"
-#: flow.c:357
+#: flow.c:334
msgid "`noreturn' function does return"
msgstr "la función `noreturn' devuelve"
-#: flow.c:378
+#: flow.c:355
msgid "control reaches end of non-void function"
msgstr "el control alcanza el final de una función que no es void"
-#: flow.c:1642
+#: flow.c:1582
msgid "Attempt to delete prologue/epilogue insn:"
msgstr "Se intentó borrar el insn de prólogo/epílogo"
-#: fold-const.c:2546 fold-const.c:2559
+#: fold-const.c:2759 fold-const.c:2772
#, c-format
msgid "comparison is always %d due to width of bit-field"
msgstr "la comparación siempre es %d debido a la anchura del campo de bit"
-#: fold-const.c:3753 fold-const.c:3770
+#: fold-const.c:3967 fold-const.c:3984
#, c-format
msgid "comparison is always %d"
msgstr "la comparación siempre es %d"
-#: fold-const.c:3901
+#: fold-const.c:4115
msgid "`or' of unmatched not-equal tests is always 1"
msgstr "un `or' de pruebas no equivalentes sin coincidencia siempre es 1"
-#: fold-const.c:3906
+#: fold-const.c:4120
msgid "`and' of mutually exclusive equal-tests is always 0"
msgstr "un `and' de pruebas equivalentes mutuamente exclusivas siempre es 0"
-#: function.c:884 varasm.c:1503
-#, c-format
-msgid "size of variable `%s' is too large"
+#: fold-const.c:8340
+msgid "fold check: original tree changed by fold"
+msgstr ""
+
+#: function.c:884 varasm.c:1408
+#, fuzzy
+msgid "%Jsize of variable '%D' is too large"
msgstr "el tamaño de la variable `%s' es demasiado grande"
-#: function.c:3772
+#: function.c:3737
msgid "impossible constraint in `asm'"
msgstr "restricción imposible en `asm'"
-#: function.c:5527
-#, c-format
-msgid "`%s' might be used uninitialized in this function"
+#: function.c:5697
+#, fuzzy
+msgid "%J'%D' might be used uninitialized in this function"
msgstr "puede ser que se utilice `%s' sin inicializar en esta función"
-#: function.c:5534
-#, c-format
-msgid "variable `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5704
+#, fuzzy
+msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'"
msgstr "la variable `%s' puede ser sobreescrita por `longjmp' o `vfork'"
-#: function.c:5553
-#, c-format
-msgid "argument `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5723
+#, fuzzy
+msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'"
msgstr "el argumento `%s' puede ser sobreescrito por `longjmp' o `vfork'"
-#: function.c:6420
+#: function.c:6497
msgid "function returns an aggregate"
msgstr "la función devuelve un agregado"
-#: function.c:6925
-#, c-format
-msgid "unused parameter `%s'"
+#: function.c:6980
+#, fuzzy
+msgid "%Junused parameter '%D'"
msgstr "parámetro `%s' sin uso"
-#: gcc.c:1107
+#: gcc.c:1191
#, c-format
msgid "ambiguous abbreviation %s"
msgstr "abreviación ambigua %s"
-#: gcc.c:1134
+#: gcc.c:1218
#, c-format
msgid "incomplete `%s' option"
msgstr "opción `%s' incompleta"
-#: gcc.c:1145
+#: gcc.c:1229
#, c-format
msgid "missing argument to `%s' option"
msgstr "faltan argumentos para la opción `%s'"
-#: gcc.c:1158
+#: gcc.c:1242
#, c-format
msgid "extraneous argument to `%s' option"
msgstr "argumento extraño para la opción `%s'"
-#: gcc.c:1486
+#: gcc.c:1563
msgid "Using built-in specs.\n"
msgstr "Usando especificaciones internas.\n"
-#: gcc.c:1667
+#: gcc.c:1748
#, c-format
msgid ""
"Setting spec %s to '%s'\n"
@@ -5255,42 +5132,42 @@ msgstr ""
"Cambiando la especificación de %s a '%s'\n"
"\n"
-#: gcc.c:1774
+#: gcc.c:1850
#, c-format
msgid "Reading specs from %s\n"
msgstr "Leyendo especificaciones de %s\n"
-#: gcc.c:1872 gcc.c:1891
+#: gcc.c:1946 gcc.c:1965
#, c-format
msgid "specs %%include syntax malformed after %ld characters"
msgstr "specs sintaxis mal formada de %%include después de %ld caracteres"
-#: gcc.c:1899
+#: gcc.c:1973
#, c-format
msgid "could not find specs file %s\n"
msgstr "no se puede encontrar el fichero de especificaciones %s\n"
-#: gcc.c:1916 gcc.c:1924 gcc.c:1933 gcc.c:1942
+#: gcc.c:1990 gcc.c:1998 gcc.c:2007 gcc.c:2016
#, c-format
msgid "specs %%rename syntax malformed after %ld characters"
msgstr "specs sintaxis mal formada de %%rename después de %ld caracteres"
-#: gcc.c:1951
+#: gcc.c:2025
#, c-format
msgid "specs %s spec was not found to be renamed"
msgstr "specs la especificación %s no se encontró para ser renombrada"
-#: gcc.c:1958
+#: gcc.c:2032
#, c-format
msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
msgstr "%s: se intentó renombrar la especificación '%s' a la especificación '%s' que ya estaba definida"
-#: gcc.c:1963
+#: gcc.c:2037
#, c-format
msgid "rename spec %s to %s\n"
msgstr "renombrando especificación %s a %s\n"
-#: gcc.c:1965
+#: gcc.c:2039
#, c-format
msgid ""
"spec is '%s'\n"
@@ -5299,25 +5176,25 @@ msgstr ""
"la especificacion es '%s'\n"
"\n"
-#: gcc.c:1978
+#: gcc.c:2052
#, c-format
msgid "specs unknown %% command after %ld characters"
msgstr "specs comando %% desconocido después de %ld caracteres"
-#: gcc.c:1989 gcc.c:2002
+#: gcc.c:2063 gcc.c:2076
#, c-format
msgid "specs file malformed after %ld characters"
msgstr "specs fichero mal formado después de %ld caracteres"
-#: gcc.c:2056
+#: gcc.c:2129
msgid "spec file has no spec for linking"
msgstr "el fichero de especificaciones no tiene especificaciones para enlazar"
-#: gcc.c:2554
+#: gcc.c:2634
msgid "-pipe not supported"
msgstr "-pipe no tiene soporte"
-#: gcc.c:2609
+#: gcc.c:2696
msgid ""
"\n"
"Go ahead? (y or n) "
@@ -5325,7 +5202,7 @@ msgstr ""
"\n"
"¿Continuar? (s ó n) "
-#: gcc.c:2735
+#: gcc.c:2822
#, c-format
msgid ""
"Internal error: %s (program %s)\n"
@@ -5336,69 +5213,69 @@ msgstr ""
"Por favor envíe un reporte completo de error.\n"
"Vea %s para más instrucciones."
-#: gcc.c:2753
+#: gcc.c:2840
#, c-format
msgid "# %s %.2f %.2f\n"
msgstr "# %s %.2f %.2f\n"
-#: gcc.c:2883
+#: gcc.c:2973
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr "Modo de empleo: %s [opciones] fichero...\n"
-#: gcc.c:2884
+#: gcc.c:2974
msgid "Options:\n"
msgstr "Opciones:\n"
-#: gcc.c:2886
+#: gcc.c:2976
msgid " -pass-exit-codes Exit with highest error code from a phase\n"
msgstr " -pass-exit-codes Salir con el código de error más alto de una fase\n"
-#: gcc.c:2887
+#: gcc.c:2977
msgid " --help Display this information\n"
msgstr " --help Muestra esta información\n"
-#: gcc.c:2888
+#: gcc.c:2978
msgid " --target-help Display target specific command line options\n"
msgstr " --target-help Muestra opciones de línea de comando específicas del objetivo\n"
-#: gcc.c:2890
+#: gcc.c:2980
msgid " (Use '-v --help' to display command line options of sub-processes)\n"
msgstr " (Use '-v --help' para mostrar las opciones de línea de comando de los subprocesos)\n"
-#: gcc.c:2891
+#: gcc.c:2981
msgid " -dumpspecs Display all of the built in spec strings\n"
msgstr " -dumpspecs Muestra todas las cadenas internas de especificación\n"
-#: gcc.c:2892
+#: gcc.c:2982
msgid " -dumpversion Display the version of the compiler\n"
msgstr " -dumpversion Muestra la versión del compilador\n"
-#: gcc.c:2893
+#: gcc.c:2983
msgid " -dumpmachine Display the compiler's target processor\n"
msgstr " -dumpmachine Muestra el procesador objetivo del compilador\n"
-#: gcc.c:2894
+#: gcc.c:2984
msgid " -print-search-dirs Display the directories in the compiler's search path\n"
msgstr " -print-search-dirs Muestra los directorios en la ruta de búsqueda del compilador\n"
-#: gcc.c:2895
+#: gcc.c:2985
msgid " -print-libgcc-file-name Display the name of the compiler's companion library\n"
msgstr " -print-libgcc-file-name Muestra el nombre de la biblioteca que acompaña al compilador\n"
-#: gcc.c:2896
+#: gcc.c:2986
msgid " -print-file-name=<lib> Display the full path to library <lib>\n"
msgstr " -print-file-name=<bib> Muestra la ruta completa a la biblioteca <bib>\n"
-#: gcc.c:2897
+#: gcc.c:2987
msgid " -print-prog-name=<prog> Display the full path to compiler component <prog>\n"
msgstr " -print-prog-name=<prog> Muestra la ruta completa del programa componente del compilador <prog>\n"
-#: gcc.c:2898
+#: gcc.c:2988
msgid " -print-multi-directory Display the root directory for versions of libgcc\n"
msgstr " -print-multi-directory Muestra el directorio raíz para las versiones de libgcc\n"
-#: gcc.c:2899
+#: gcc.c:2989
msgid ""
" -print-multi-lib Display the mapping between command line options and\n"
" multiple library search directories\n"
@@ -5406,83 +5283,93 @@ msgstr ""
" -print-multi-lib Muestra el mapeo entre las opciones de línea de comando\n"
" y los múltiples directorios de la búsqueda de bibliotecas\n"
-#: gcc.c:2902
+#: gcc.c:2992
msgid " -print-multi-os-directory Display the relative path to OS libraries\n"
msgstr " -print-multi-os-directory Muestra la ruta relativa para las bibliotecas del SO\n"
-#: gcc.c:2903
+#: gcc.c:2993
msgid " -Wa,<options> Pass comma-separated <options> on to the assembler\n"
msgstr " -Wa,<opciones> Pasa <opciones> separadas por coma al ensamblador\n"
-#: gcc.c:2904
+#: gcc.c:2994
msgid " -Wp,<options> Pass comma-separated <options> on to the preprocessor\n"
msgstr " -Wp,<opciones> Pasa <opciones> separadas por coma al preprocesador\n"
-#: gcc.c:2905
+#: gcc.c:2995
msgid " -Wl,<options> Pass comma-separated <options> on to the linker\n"
msgstr " -Wl,<opciones> Pasa <opciones> separadas por coma al enlazador\n"
-#: gcc.c:2906
+#: gcc.c:2996
+#, fuzzy
+msgid " -Xassembler <arg> Pass <arg> on to the assembler\n"
+msgstr " -Xlinker <argumento> Pasa el <argumento> al enlazador\n"
+
+#: gcc.c:2997
+#, fuzzy
+msgid " -Xpreprocessor <arg> Pass <arg> on to the preprocessor\n"
+msgstr " -Xlinker <argumento> Pasa el <argumento> al enlazador\n"
+
+#: gcc.c:2998
msgid " -Xlinker <arg> Pass <arg> on to the linker\n"
msgstr " -Xlinker <argumento> Pasa el <argumento> al enlazador\n"
-#: gcc.c:2907
+#: gcc.c:2999
msgid " -save-temps Do not delete intermediate files\n"
msgstr " -save-temps No borra los ficheros intermedios\n"
-#: gcc.c:2908
+#: gcc.c:3000
msgid " -pipe Use pipes rather than intermediate files\n"
msgstr " -pipe Usa tuberías en lugar de ficheros intermedios\n"
-#: gcc.c:2909
+#: gcc.c:3001
msgid " -time Time the execution of each subprocess\n"
msgstr " -time Obtiene el tiempo de ejecución de cada subproceso\n"
-#: gcc.c:2910
+#: gcc.c:3002
msgid " -specs=<file> Override built-in specs with the contents of <file>\n"
msgstr " -specs=<fichero> Sobrepone las especificaciones internas con el contenido del <fichero>\n"
-#: gcc.c:2911
+#: gcc.c:3003
msgid " -std=<standard> Assume that the input sources are for <standard>\n"
msgstr " -std=<estándard> Asume que los ficheros de entrada son para el <estándard>\n"
-#: gcc.c:2912
+#: gcc.c:3004
msgid " -B <directory> Add <directory> to the compiler's search paths\n"
msgstr " -B <directorio> Agrega el <directorio> a las rutas de búsqueda del compilador\n"
-#: gcc.c:2913
+#: gcc.c:3005
msgid " -b <machine> Run gcc for target <machine>, if installed\n"
msgstr " -b <máquina> Ejecuta gcc para el objetivo <máquina>, si se instaló\n"
-#: gcc.c:2914
+#: gcc.c:3006
msgid " -V <version> Run gcc version number <version>, if installed\n"
msgstr " -V <versión> Ejecuta el gcc con número de versión <versión>, si se instaló\n"
-#: gcc.c:2915
+#: gcc.c:3007
msgid " -v Display the programs invoked by the compiler\n"
msgstr " -v Muestra los programas invocados por el compilador\n"
-#: gcc.c:2916
+#: gcc.c:3008
msgid " -### Like -v but options quoted and commands not executed\n"
msgstr " -### Como -v pero no se ejecutan las opciones entre comillas y los comandos\n"
-#: gcc.c:2917
+#: gcc.c:3009
msgid " -E Preprocess only; do not compile, assemble or link\n"
msgstr " -E Solamente preprocesa; no compila, ensambla o enlaza\n"
-#: gcc.c:2918
+#: gcc.c:3010
msgid " -S Compile only; do not assemble or link\n"
msgstr " -S Solamente compila; no ensambla o enlaza\n"
-#: gcc.c:2919
+#: gcc.c:3011
msgid " -c Compile and assemble, but do not link\n"
msgstr " -c Compila y ensambla, pero no enlaza\n"
-#: gcc.c:2920
+#: gcc.c:3012
msgid " -o <file> Place the output into <file>\n"
msgstr " -o <fichero> Coloca la salida en el <fichero>\n"
-#: gcc.c:2921
+#: gcc.c:3013
msgid ""
" -x <language> Specify the language of the following input files\n"
" Permissible languages include: c c++ assembler none\n"
@@ -5494,7 +5381,7 @@ msgstr ""
" 'none' significa revertir a la conducta habitual de\n"
" adivinar el lenguaje basado en la extensión del fichero\n"
-#: gcc.c:2928
+#: gcc.c:3020
#, c-format
msgid ""
"\n"
@@ -5507,27 +5394,23 @@ msgstr ""
" automáticamente a los varios subprocesos invocados por %s. Para pasar\n"
" otras opciones a estos procesos se deben usar las opciones -W<letra>.\n"
-#: gcc.c:3063
+#: gcc.c:3141
#, c-format
msgid "`-%c' option must have argument"
msgstr "la opción `-%c' debe tener argumentos"
-#: gcc.c:3085
+#: gcc.c:3163
#, c-format
msgid "couldn't run `%s': %s"
msgstr "no se puede ejecutar `%s': %s"
#. translate_options () has turned --version into -fversion.
-#: gcc.c:3262
+#: gcc.c:3349
#, c-format
msgid "%s (GCC) %s\n"
msgstr "%s (GCC) %s\n"
-#: gcc.c:3263
-msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
-msgstr "Copyright (C) 2003 Free Software Foundation, Inc.\n"
-
-#: gcc.c:3265 gcov.c:364
+#: gcc.c:3352
msgid ""
"This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
@@ -5538,62 +5421,68 @@ msgstr ""
"PARTICULAR\n"
"\n"
-#: gcc.c:3366
+#: gcc.c:3453
msgid "argument to `-Xlinker' is missing"
msgstr "falta el argumento para `-Xlinker'"
-#: gcc.c:3374
+#: gcc.c:3461
+#, fuzzy
+msgid "argument to `-Xpreprocessor' is missing"
+msgstr "falta el argumento para `-specs'"
+
+#: gcc.c:3468
+#, fuzzy
+msgid "argument to `-Xassembler' is missing"
+msgstr "falta el argumento para `-Xlinker'"
+
+#: gcc.c:3475
msgid "argument to `-l' is missing"
msgstr "falta el argumento para `-l'"
-#: gcc.c:3391
+#: gcc.c:3491
msgid "argument to `-specs' is missing"
msgstr "falta el argumento para `-specs'"
-#: gcc.c:3406
+#: gcc.c:3505
msgid "argument to `-specs=' is missing"
msgstr "falta el argumento para `-specs='"
-#: gcc.c:3436
+#: gcc.c:3542
#, c-format
msgid "`-%c' must come at the start of the command line"
msgstr "`-%c' debe estar al inicio de la línea de comandos"
-#: gcc.c:3445
+#: gcc.c:3551
msgid "argument to `-B' is missing"
msgstr "falta el argumento para `-B'"
-#: gcc.c:3618
-msgid "cannot specify -o with -c or -S and multiple compilations"
-msgstr "no se puede especificar -o con -c ó -S y con múltiples compilaciones"
-
-#: gcc.c:3791
+#: gcc.c:3728
msgid "warning: -pipe ignored because -save-temps specified"
msgstr "aviso: se ignora -pipe porque se especificó -save-temps"
-#: gcc.c:3795
+#: gcc.c:3732
msgid "warning: -pipe ignored because -time specified"
msgstr "aviso: se ignora -pipe porque se especificó -time"
-#: gcc.c:3807
+#: gcc.c:3944
msgid "argument to `-x' is missing"
msgstr "falta el argumento para `-x'"
-#: gcc.c:3835
+#: gcc.c:3972
#, c-format
msgid "argument to `-%s' is missing"
msgstr "falta el argumento para `-%s'"
-#: gcc.c:3896
+#: gcc.c:4033
#, c-format
msgid "warning: `-x %s' after last input file has no effect"
msgstr "aviso: `-x %s' después del último fichero de entrada no tiene efecto"
-#: gcc.c:4241
+#: gcc.c:4434
msgid "invalid specification! Bug in cc"
msgstr "¡Especificación inválida! `Bug' en cc"
-#: gcc.c:4395
+#: gcc.c:4588
#, c-format
msgid "%s\n"
msgstr "%s\n"
@@ -5601,74 +5490,79 @@ msgstr "%s\n"
#. Catch the case where a spec string contains something like
#. '%{foo:%*}'. ie there is no * in the pattern on the left
#. hand side of the :.
-#: gcc.c:4955
+#: gcc.c:5092
#, c-format
msgid "spec failure: '%%*' has not been initialized by pattern match"
msgstr "falla en spec: '%%*' no ha sido inicializado por coincidencia de patrón"
-#: gcc.c:4964
+#: gcc.c:5101
#, c-format
msgid "warning: use of obsolete %%[ operator in specs"
msgstr "aviso: uso del operador obsoleto %%[ en especificación"
-#: gcc.c:4982
+#: gcc.c:5119
#, c-format
msgid "Processing spec %c%s%c, which is '%s'\n"
msgstr "Procesando la especificación %c%s%c, el cual es '%s'\n"
-#: gcc.c:5107
+#: gcc.c:5182
#, c-format
msgid "spec failure: unrecognized spec option '%c'"
msgstr "falla en spec: opción de especificación '%c' no reconocida"
-#: gcc.c:5188
+#: gcc.c:5261
#, c-format
msgid "unknown spec function `%s'"
msgstr "función de especificación `%s' desconocida"
-#: gcc.c:5207
+#: gcc.c:5280
#, c-format
msgid "error in args to spec function `%s'"
msgstr "error en los argumentos para la función de especificación `%s'"
-#: gcc.c:5256
+#: gcc.c:5328
msgid "malformed spec function name"
msgstr "nombre de la función de especificación malformado"
#. )
-#: gcc.c:5259
+#: gcc.c:5331
msgid "no arguments for spec function"
msgstr "no hay argumentos para la función de especificación"
-#: gcc.c:5278
+#: gcc.c:5350
msgid "malformed spec function arguments"
msgstr "argumentos de la función de especificación malformados"
-#: gcc.c:5386
-msgid "mismatched braces in specs"
-msgstr "llaves sin coincidencia en especificación"
+#: gcc.c:6076
+msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC."
+msgstr ""
+
+#: gcc.c:6086
+msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC."
+msgstr ""
-#: gcc.c:6081
+#: gcc.c:6179
#, c-format
msgid "unrecognized option `-%s'"
msgstr "opción `-%s' no reconocida"
-#: gcc.c:6087
+#: gcc.c:6185
#, c-format
msgid "install: %s%s\n"
msgstr "instalar: %s%s\n"
-#: gcc.c:6088
+#: gcc.c:6186
#, c-format
msgid "programs: %s\n"
msgstr "programas: %s\n"
-#: gcc.c:6089
+#: gcc.c:6187
#, c-format
msgid "libraries: %s\n"
msgstr "bibliotecas: %s\n"
-#: gcc.c:6146
+#: gcc.c:6244
+#, c-format
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
@@ -5676,54 +5570,59 @@ msgstr ""
"\n"
"Para instrucciones de reporte de `bugs', por favor vea:\n"
-#: gcc.c:6162
+#: gcc.c:6260
#, c-format
msgid "Configured with: %s\n"
msgstr "Configurado con: %s\n"
-#: gcc.c:6176
+#: gcc.c:6274
#, c-format
msgid "Thread model: %s\n"
msgstr "Modelo de hilos: %s\n"
-#: gcc.c:6187
+#: gcc.c:6285
#, c-format
msgid "gcc version %s\n"
msgstr "gcc versión %s\n"
-#: gcc.c:6189
+#: gcc.c:6287
#, c-format
msgid "gcc driver version %s executing gcc version %s\n"
msgstr "controlador gcc versión %s ejecutando gcc version %s\n"
-#: gcc.c:6197
+#: gcc.c:6295
msgid "no input files"
msgstr "no hay ficheros de entrada"
-#: gcc.c:6235
-#, c-format
-msgid "%s: %s compiler not installed on this system"
-msgstr "%s: el compilador %s no está instalado en este sistema"
-
-#: gcc.c:6310
+#: gcc.c:6317 gcc.c:6436
#, c-format
msgid "%s: linker input file unused because linking not done"
msgstr "%s: no se usó el fichero de entrada del enlazador porque no se hizo enlace"
-#: gcc.c:6353
+#: gcc.c:6320
+#, fuzzy
+msgid "cannot specify -o with -c or -S and multiple languages"
+msgstr "no se puede especificar -o con -c ó -S y con múltiples compilaciones"
+
+#: gcc.c:6355
+#, c-format
+msgid "%s: %s compiler not installed on this system"
+msgstr "%s: el compilador %s no está instalado en este sistema"
+
+#: gcc.c:6476
#, c-format
msgid "language %s not recognized"
msgstr "no se reconoce el lenguaje %s"
-#: gcc.c:6456
+#: gcc.c:6573
msgid "internal gcc abort"
msgstr "aborto interno de gcc"
-#: gcov.c:325
+#: gcov.c:384
msgid "Internal gcov abort.\n"
msgstr "Aborto interno de gcov.\n"
-#: gcov.c:338
+#: gcov.c:397
msgid ""
"Usage: gcov [OPTION]... SOURCEFILE\n"
"\n"
@@ -5731,7 +5630,7 @@ msgstr ""
"Modo de empleo: gcov [OPCIÓN]... FICHERO-FUENTE\n"
"\n"
-#: gcov.c:339
+#: gcov.c:398
msgid ""
"Print code coverage information.\n"
"\n"
@@ -5739,19 +5638,23 @@ msgstr ""
"Mostrar información de cobertura de código.\n"
"\n"
-#: gcov.c:340
+#: gcov.c:399
msgid " -h, --help Print this help, then exit\n"
msgstr " -h, --help Muestra esta información, y finaliza\n"
-#: gcov.c:341
+#: gcov.c:400
msgid " -v, --version Print version number, then exit\n"
msgstr " -v, --version Muestra el número de versión, y finaliza\n"
-#: gcov.c:342
+#: gcov.c:401
+msgid " -a, --all-blocks Show information for every basic block\n"
+msgstr ""
+
+#: gcov.c:402
msgid " -b, --branch-probabilities Include branch probabilities in output\n"
msgstr " -b, --branch-probabilities Incluye las probabilidades de ramificación en la salida\n"
-#: gcov.c:343
+#: gcov.c:403
msgid ""
" -c, --branch-counts Given counts of branches taken\n"
" rather than percentages\n"
@@ -5759,11 +5662,11 @@ msgstr ""
" -c, --branch-counts Se muestra el número de ramificaciones\n"
" en lugar de los porcentajes\n"
-#: gcov.c:345
+#: gcov.c:405
msgid " -n, --no-output Do not create an output file\n"
msgstr " -n, --no-output No crea un fichero de salida\n"
-#: gcov.c:346
+#: gcov.c:406
msgid ""
" -l, --long-file-names Use long output file names for included\n"
" source files\n"
@@ -5771,19 +5674,23 @@ msgstr ""
" -l, --long-file-names Usar nombres largos de ficheros para los\n"
" ficheros fuentes incluidos\n"
-#: gcov.c:348
+#: gcov.c:408
msgid " -f, --function-summaries Output summaries for each function\n"
msgstr " -f, --function-summaries Mostrar sumarios para cada función\n"
-#: gcov.c:349
+#: gcov.c:409
msgid " -o, --object-directory DIR|FILE Search for object files in DIR or called FILE\n"
msgstr " -o, --object-directory DIR|FICH Buscar ficheros objeto en el DIRectorio o en el FICHero nombrado\n"
-#: gcov.c:350
+#: gcov.c:410
msgid " -p, --preserve-paths Preserve all pathname components\n"
msgstr " -p, --preserve-paths Preserva todos los nombres de ruta de los componentes\n"
-#: gcov.c:351
+#: gcov.c:411
+msgid " -u, --unconditional-branches Show unconditional branch counts too\n"
+msgstr ""
+
+#: gcov.c:412
#, c-format
msgid ""
"\n"
@@ -5794,399 +5701,293 @@ msgstr ""
"Para instrucciones de reporte de `bugs', por favor vea:\n"
"%s.\n"
-#: gcov.c:361
+#: gcov.c:422
#, c-format
msgid "gcov (GCC) %s\n"
msgstr "gcov (GCC) %s\n"
-#: gcov.c:362
-msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
-msgstr "Copyright (C) 2001 Free Software Foundation, Inc.\n"
-
-#: gcov.c:500
-#, c-format
-msgid "Could not open basic block file %s.\n"
-msgstr "No se puede abrir fichero de bloque básico %s.\n"
-
-#: gcov.c:507
-#, c-format
-msgid "Could not open program flow graph file %s.\n"
-msgstr "No se puede abrir el fichero del grafo de flujo del programa %s.\n"
-
-#: gcov.c:524
-#, c-format
-msgid "Could not open data file %s.\n"
-msgstr "No se puede abrir fichero de datos %s.\n"
-
-#: gcov.c:525
-msgid "Assuming that all execution counts are zero.\n"
-msgstr "Asumiendo que todas las cuentas de ejecución son cero.\n"
-
-#: gcov.c:534
-#, c-format
-msgid "No executable code associated with file %s.\n"
-msgstr "No hay código ejecutable asociado al fichero %s.\n"
-
-#: gcov.c:1186
-#, c-format
-msgid "%s of %d lines executed in %s %s\n"
-msgstr "se ejecutaron %s de %d líneas en %s %s\n"
-
-#: gcov.c:1191
-#, c-format
-msgid "No executable lines in %s %s\n"
-msgstr "No hay líneas de código ejecutables en %s %s\n"
-
-#: gcov.c:1198
-#, c-format
-msgid "%s of %d branches executed in %s %s\n"
-msgstr "se ejecutaron %s de %d ramificaciones en %s %s\n"
-
-#: gcov.c:1203
-#, c-format
-msgid "%s of %d branches taken at least once in %s %s\n"
-msgstr "se visitaron %s de %d ramificaciones al menos una vez en %s %s\n"
-
-#: gcov.c:1209
-#, c-format
-msgid "No branches in %s %s\n"
-msgstr "No hay ramificaciones en %s %s\n"
-
-#: gcov.c:1211
-#, c-format
-msgid "%s of %d calls executed in %s %s\n"
-msgstr "se ejecutaron %s de %d llamadas en %s %s\n"
-
-#: gcov.c:1216
-#, c-format
-msgid "No calls in %s %s\n"
-msgstr "No hay llamadas en %s %s\n"
-
-#: gcov.c:1351
-#, c-format
-msgid "didn't use all bb entries of graph, function %s\n"
-msgstr "no se usaron todas las entradas bb del grafo, función %s\n"
-
-#: gcov.c:1353
-#, c-format
-msgid "block_num = %ld, num_blocks = %d\n"
-msgstr "block_num = %ld, num_blocks = %d\n"
-
-#: gcov.c:1367
-#, c-format
-msgid "ERROR: unexpected line number %ld\n"
-msgstr "ERROR: número de línea %ld inesperado\n"
-
-#: gcov.c:1383
-#, c-format
-msgid "ERROR: too many basic blocks in function %s\n"
-msgstr "ERROR: demasiados bloques básicos en la función %s\n"
-
-#: gcov.c:1398
-#, c-format
-msgid "ERROR: out of range line number in function %s\n"
-msgstr "ERROR: número de líneas fuera de rango en la función %s\n"
-
-#: gcov.c:1470
-#, c-format
-msgid "Could not open source file %s.\n"
-msgstr "No se puede abrir el fichero de código fuente %s.\n"
-
-#: gcov.c:1480
-#, c-format
-msgid "Warning: source file %s is newer than %s\n"
-msgstr "Aviso: el fichero fuente %s es más nuevo que %s\n"
-
-#: gcov.c:1510
-#, c-format
-msgid "Unexpected EOF while reading source file %s.\n"
-msgstr "EOF inesperado mientras se leía el fichero de código fuente %s.\n"
-
-#: gcov.c:1532
-#, c-format
-msgid "call %2d never executed\n"
-msgstr "la llamada %2d nunca se ejecuta\n"
+#: gcov.c:423
+msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
+msgstr "Copyright (C) 2003 Free Software Foundation, Inc.\n"
-#: gcov.c:1535
-#, c-format
-msgid "call %2d returns %s\n"
-msgstr "la llamada %2d devuelve %s\n"
+#: gcov.c:425
+#, fuzzy
+msgid ""
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or \n"
+"FITNESS FOR A PARTICULAR PURPOSE.\n"
+"\n"
+msgstr ""
+"Esto es software libre; vea el código para las condiciones de copia. NO hay\n"
+"garantía; ni siquiera para MERCANTIBILIDAD o IDONEIDAD PARA UN PROPÓSITO EN\n"
+"PARTICULAR\n"
+"\n"
-#: gcov.c:1543
-#, c-format
-msgid "branch %2d never executed\n"
-msgstr "la ramificacion %2d nunca se ejecuta\n"
+#: gcov.c:515
+#, fuzzy, c-format
+msgid "%s:no functions found\n"
+msgstr "no se encuentran cmd_strings"
-#: gcov.c:1546
-#, c-format
-msgid "branch %2d taken %s\n"
-msgstr "ramificación %2d tomada %s\n"
+#: gcov.c:536 gcov.c:564
+#, fuzzy
+msgid "\n"
+msgstr ":\n"
-#: gcov.c:1610
-#, c-format
-msgid "Creating %s.\n"
-msgstr "Creando %s.\n"
+#: gcov.c:551
+#, fuzzy, c-format
+msgid "%s:creating `%s'\n"
+msgstr "creando %s"
-#: gcov.c:1613
-#, c-format
-msgid "Error writing output file %s.\n"
+#: gcov.c:555
+#, fuzzy, c-format
+msgid "%s:error writing output file `%s'\n"
msgstr "Error al escribir el fichero de salida %s.\n"
-#: gcov.c:1618
-#, c-format
-msgid "Could not open output file %s.\n"
+#: gcov.c:560
+#, fuzzy, c-format
+msgid "%s:could not open output file `%s'\n"
msgstr "No se puede abrir el fichero de salida %s.\n"
-#: gcse.c:763
-#, c-format
-msgid "GCSE disabled: %d > 1000 basic blocks and %d >= 20 edges/basic block"
-msgstr "GCSE desactivado: %d > 1000 bloques básicos y %d >= 20 bloques borde/básicos"
-
-#: gcse.c:775
-#, c-format
-msgid "GCSE disabled: %d basic blocks and %d registers"
-msgstr "GCSE desactivado: %d bloques básicos y %d registros"
-
-#: genautomata.c:1490
-#, c-format
-msgid "Name `%s' contains quotes"
-msgstr "El nombre `%s' contiene comillas"
-
-#: genautomata.c:1621
-#, c-format
-msgid "invalid string `%s' in define_cpu_unit"
-msgstr "cadena `%s' inválida en define_cpu_unit"
-
-#: genautomata.c:1650
-#, c-format
-msgid "invalid string `%s' in define_query_cpu_unit"
-msgstr "cadena `%s' inválida en define_query_cpu_unit"
+#: gcov.c:711
+#, fuzzy, c-format
+msgid "%s:cannot open graph file\n"
+msgstr "%s: no se puede abrir como un fichero COFF"
-#: genautomata.c:1682 genautomata.c:1685
-#, c-format
-msgid "invalid string `%s' in define_bypass"
-msgstr "cadena `%s' inválida en define_bypass"
+#: gcov.c:717
+#, fuzzy, c-format
+msgid "%s:not a gcov graph file\n"
+msgstr "%s: no es un fichero COFF"
-#: genautomata.c:1720
+#: gcov.c:730
#, c-format
-msgid "invalid first string `%s' in exclusion_set"
-msgstr "primera cadena `%s' inválida en exclusion_set"
+msgid "%s:version `%.4s', prefer `%.4s'\n"
+msgstr ""
-#: genautomata.c:1724
+#: gcov.c:782
#, c-format
-msgid "invalid second string `%s' in exclusion_set"
-msgstr "segunda cadena `%s' inválida en exclusion_set"
+msgid "%s:already seen blocks for `%s'\n"
+msgstr ""
-#: genautomata.c:1760
+#: gcov.c:903 gcov.c:1062
#, c-format
-msgid "invalid first string `%s' in presence_set"
-msgstr "primera cadena `%s' inválida en presence_set"
+msgid "%s:corrupted\n"
+msgstr ""
-#: genautomata.c:1764
-#, c-format
-msgid "invalid second string `%s' in presence_set"
-msgstr "segunda cadena `%s' inválida en presence_set"
+#: gcov.c:976
+#, fuzzy, c-format
+msgid "%s:cannot open data file\n"
+msgstr "%s: no se puede abrir como un fichero COFF"
-#: genautomata.c:1800
-#, c-format
-msgid "invalid first string `%s' in absence_set"
-msgstr "primera cadena `%s' inválida en absence_set"
+#: gcov.c:981
+#, fuzzy, c-format
+msgid "%s:not a gcov data file\n"
+msgstr "%s: no es un fichero COFF"
-#: genautomata.c:1804
+#: gcov.c:994
#, c-format
-msgid "invalid second string `%s' in absence_set"
-msgstr "segunda cadena `%s' inválida en absence_set"
+msgid "%s:version `%.4s', prefer version `%.4s'\n"
+msgstr ""
-#: genautomata.c:1837
+#: gcov.c:1000
#, c-format
-msgid "invalid string `%s' in define_automaton"
-msgstr "cadena `%s' inválida en define_automaton"
+msgid "%s:stamp mismatch with graph file\n"
+msgstr ""
-#: genautomata.c:1868
-#, c-format
-msgid "invalid option `%s' in automata_option"
-msgstr "opción `%s' inválida en automata_option"
+#: gcov.c:1026
+#, fuzzy, c-format
+msgid "%s:unknown function `%u'\n"
+msgstr "función de especificación `%s' desconocida"
-#: genautomata.c:1890
-#, c-format
-msgid "garbage after ) in reservation `%s'"
-msgstr "basura después de ) en la reservación `%s'"
+#: gcov.c:1039
+#, fuzzy, c-format
+msgid "%s:profile mismatch for `%s'\n"
+msgstr "concesión previa para `%s'"
-#: genautomata.c:1921 genautomata.c:1954 genautomata.c:1981
-#, c-format
-msgid "invalid `%s' in reservation `%s'"
-msgstr "`%s' inválido en la reservación `%s'"
+#: gcov.c:1062
+#, fuzzy, c-format
+msgid "%s:overflowed\n"
+msgstr "%s: desbordamiento del error de rango"
-#: genautomata.c:1932
+#: gcov.c:1085
#, c-format
-msgid "repetition `%s' <= 1 in reservation `%s'"
-msgstr "repetición `%s' <= 1 en la reservación `%s'"
+msgid "%s:`%s' lacks entry and/or exit blocks\n"
+msgstr ""
-#: genautomata.c:2425
+#: gcov.c:1090
#, c-format
-msgid "unit `%s' in exclusion is not declared"
-msgstr "no se declaró la unidad `%s' en la exclusión"
+msgid "%s:`%s' has arcs to entry block\n"
+msgstr ""
-#: genautomata.c:2427
+#: gcov.c:1098
#, c-format
-msgid "`%s' in exclusion is not unit"
-msgstr "`%s' en la exclusión no es una unidad"
+msgid "%s:`%s' has arcs from exit block\n"
+msgstr ""
-#: genautomata.c:2465
+#: gcov.c:1306
#, c-format
-msgid "unit `%s' excludes itself"
-msgstr "la unidad `%s' se excluye a sí misma"
+msgid "%s:graph is unsolvable for `%s'\n"
+msgstr ""
-#: genautomata.c:2473
-#, c-format
-msgid "units `%s' and `%s' in exclusion set belong to different automata"
-msgstr "las unidades `%s' y `%s' en el conjunto de exclusión pertenece a autómatas diferentes"
+#: gcov.c:1386
+#, fuzzy, c-format
+msgid "%s `%s'\n"
+msgstr "En %s `%s':"
-#: genautomata.c:2603 genautomata.c:2609
-#, c-format
-msgid "unit `%s' excludes and requires presence of `%s'"
-msgstr "la unidad `%s' excluye y requiere la presencia de `%s'"
+#: gcov.c:1389
+#, fuzzy, c-format
+msgid "Lines executed:%s of %d\n"
+msgstr "se ejecutaron %s de %d líneas en %s %s\n"
-#: genautomata.c:2623 genautomata.c:2629
-#, c-format
-msgid "unit `%s' requires absence and presence of `%s'"
-msgstr "la unidad `%s' requiere la ausencia y la presencia de `%s'"
+#: gcov.c:1393
+#, fuzzy
+msgid "No executable lines"
+msgstr "No hay líneas de código ejecutables en %s %s\n"
-#: genautomata.c:2692 genautomata.c:2695
-#, c-format
-msgid "repeated declaration of automaton `%s'"
-msgstr "declaración repetida del autómata `%s'"
+#: gcov.c:1399
+#, fuzzy, c-format
+msgid "Branches executed:%s of %d\n"
+msgstr "se ejecutaron %s de %d ramificaciones en %s %s\n"
-#: genautomata.c:2711
-#, c-format
-msgid "define_insn_reservation `%s' has negative latency time"
-msgstr "define_insn_reservation `%s' tiene un tiempo de latencia negativo"
+#: gcov.c:1403
+#, fuzzy, c-format
+msgid "Taken at least once:%s of %d\n"
+msgstr "se visitaron %s de %d ramificaciones al menos una vez en %s %s\n"
-#: genautomata.c:2717
-#, c-format
-msgid "`%s' is already used as insn reservation name"
-msgstr "`%s' ya se utilizó como un nombre de reservación de insn"
+#: gcov.c:1409
+#, fuzzy
+msgid "No branches\n"
+msgstr "No hay ramificaciones en %s %s\n"
-#: genautomata.c:2723
-#, c-format
-msgid "define_bypass `%s - %s' has negative latency time"
-msgstr "define_bypass `%s - %s' tiene un tiempo de latencia negativo"
+#: gcov.c:1411
+#, fuzzy, c-format
+msgid "Calls executed:%s of %d\n"
+msgstr "se ejecutaron %s de %d llamadas en %s %s\n"
-#: genautomata.c:2737
-#, c-format
-msgid "automaton `%s' is not declared"
-msgstr "el autómata `%s' no se declaró"
+#: gcov.c:1415
+#, fuzzy
+msgid "No calls\n"
+msgstr "No hay llamadas en %s %s\n"
-#: genautomata.c:2747
-#, c-format
-msgid "define_unit `%s' without automaton when one defined"
-msgstr "define_unit `%s' sin un autómata cuando uno está definido"
+#: gcov.c:1556
+#, fuzzy, c-format
+msgid "%s:no lines for `%s'\n"
+msgstr "%s antes de `%s'"
-#: genautomata.c:2753
-#, c-format
-msgid "`%s' is declared as cpu unit"
-msgstr "`%s' está declarado como una unidad de cpu"
+#: gcov.c:1751
+#, fuzzy, c-format
+msgid "call %2d returned %s\n"
+msgstr "la llamada %2d devuelve %s\n"
-#: genautomata.c:2762
+#: gcov.c:1756
#, c-format
-msgid "`%s' is declared as cpu reservation"
-msgstr "`%s' está declarado como una reservación de cpu"
+msgid "call %2d never executed\n"
+msgstr "la llamada %2d nunca se ejecuta\n"
-#: genautomata.c:2772
-#, c-format
-msgid "repeated declaration of unit `%s'"
-msgstr "declaración repetida de la unidad `%s'"
+#: gcov.c:1761
+#, fuzzy, c-format
+msgid "branch %2d taken %s%s\n"
+msgstr "ramificación %2d tomada %s\n"
-#: genautomata.c:2775
+#: gcov.c:1765
#, c-format
-msgid "repeated declaration of reservation `%s'"
-msgstr "declaración repetida de la reservación `%s'"
+msgid "branch %2d never executed\n"
+msgstr "la ramificacion %2d nunca se ejecuta\n"
-#: genautomata.c:2790 genautomata.c:2793
-#, c-format
-msgid "there is no insn reservation `%s'"
-msgstr "no hay reservación de insn `%s' previa"
+#: gcov.c:1770
+#, fuzzy, c-format
+msgid "unconditional %2d taken %s\n"
+msgstr "ramificación %2d tomada %s\n"
-#: genautomata.c:2810 genautomata.c:2815
-#, c-format
-msgid "the same bypass `%s - %s' is already defined"
-msgstr "el mismo bypass `%s - %s' ya está definido"
+#: gcov.c:1773
+#, fuzzy, c-format
+msgid "unconditional %2d never executed\n"
+msgstr "la llamada %2d nunca se ejecuta\n"
-#: genautomata.c:2820
-#, c-format
-msgid "bypass `%s - %s' is already defined"
-msgstr "el bypass `%s - %s' ya está definido"
+#: gcov.c:1805
+#, fuzzy, c-format
+msgid "%s:cannot open source file\n"
+msgstr "%s: no se puede abrir como un fichero COFF"
-#: genautomata.c:2925 genautomata.c:2927
-#, c-format
-msgid "automaton `%s' is not used"
-msgstr "el autómata `%s' no se utiliza"
+#: gcov.c:1815
+#, fuzzy, c-format
+msgid "%s:source file is newer than graph file `%s'\n"
+msgstr "Aviso: el fichero fuente %s es más nuevo que %s\n"
-#: genautomata.c:2950
-#, c-format
-msgid "undeclared unit or reservation `%s'"
-msgstr "unidad o reservación `%s' sin declarar"
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:747
+msgid "GCSE disabled"
+msgstr ""
-#: genautomata.c:3028 genautomata.c:3030
-#, c-format
-msgid "unit `%s' is not used"
-msgstr "la unidad `%s' no se utiliza"
+#: gcse.c:6108
+msgid "NULL pointer checks disabled"
+msgstr ""
-#: genautomata.c:3035 genautomata.c:3037
-#, c-format
-msgid "reservation `%s' is not used"
-msgstr "la reservación `%s' no se utiliza"
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:7994
+#, fuzzy
+msgid "jump bypassing disabled"
+msgstr "opción -g desactivada"
-#: genautomata.c:3134
-#, c-format
-msgid "cycle in definition of reservation `%s'"
-msgstr "ciclo en la definición de la reservación `%s'"
+#: gcse.c:8055
+#, fuzzy, c-format
+msgid "%s: %d basic blocks and %d edges/basic block"
+msgstr "GCSE desactivado: %d > 1000 bloques básicos y %d >= 20 bloques borde/básicos"
-#: genautomata.c:5333
-#, c-format
-msgid "Units `%s' and `%s' should be in the same automaton"
-msgstr "Las unidades `%s' y `%s' deben estar en el mismo autómata"
+#: gcse.c:8068
+#, fuzzy, c-format
+msgid "%s: %d basic blocks and %d registers"
+msgstr "GCSE desactivado: %d bloques básicos y %d registros"
-#: genautomata.c:9441
-msgid "-split has no argument."
-msgstr "-split no tiene argumentos."
+#: ggc-common.c:398 ggc-common.c:406 ggc-common.c:487 ggc-common.c:507
+#: ggc-page.c:2030 ggc-page.c:2062 ggc-page.c:2069 ggc-zone.c:1361
+#: ggc-zone.c:1367 ggc-zone.c:1372 ggc-zone.c:1379
+#, fuzzy, c-format
+msgid "can't write PCH file: %m"
+msgstr "no se puede escribir a %s"
-#: genautomata.c:9442
-msgid "option `-split' has not been implemented yet\n"
-msgstr "la opción `-split' aún no se ha implementado\n"
+#: ggc-common.c:500
+#, fuzzy, c-format
+msgid "can't get position in PCH file: %m"
+msgstr "no se puede crear el fichero de información de repositorio `%s'"
-#: genautomata.c:9486 genautomata.c:9491
-#, c-format
-msgid "Automaton `%s': Insn `%s' will never be issued"
-msgstr "Autómata `%s': Insn `%s' nunca se utilizará"
+#: ggc-common.c:510
+#, fuzzy, c-format
+msgid "can't write padding to PCH file: %m"
+msgstr "no se puede escribir al fichero de salida"
-#: genautomata.c:9498 genautomata.c:9501
-#, c-format
-msgid "Insn `%s' will never be issued"
-msgstr "Insn `%s' nunca se utilizará"
+#: ggc-common.c:563 ggc-common.c:571 ggc-common.c:578 ggc-common.c:581
+#: ggc-common.c:654 ggc-common.c:657 ggc-page.c:2157 ggc-zone.c:1389
+#, fuzzy, c-format
+msgid "can't read PCH file: %m"
+msgstr "no se puede leer desde el fichero temporal"
-#: genautomata.c:9649
-msgid "Errors in DFA description"
-msgstr "Errores en la descripción DFA"
+#: ggc-common.c:681
+msgid "had to relocate PCH"
+msgstr ""
-#: genautomata.c:9732
+#: ggc-page.c:1325
#, c-format
-msgid "Error in writing DFA description file %s"
-msgstr "Error al escribir el fichero de descripción DFA %s"
+msgid "open /dev/zero: %m"
+msgstr ""
-#: genconditions.c:196
-msgid "No input file name."
-msgstr "No hay nombre de fichero de entrada."
+#: ggc-page.c:2047 ggc-page.c:2053
+#, fuzzy
+msgid "can't write PCH file"
+msgstr "no se puede escribir al fichero de salida"
-#: ggc-page.c:1265
-msgid "open /dev/zero"
+#: ggc-simple.c:506
+msgid "Generating PCH files is not supported when using ggc-simple.c"
msgstr ""
-#: graph.c:420 profile.c:1204 profile.c:1211 toplev.c:1836 toplev.c:5168
-#: f/com.c:14210 java/jcf-parse.c:917 java/jcf-parse.c:1063 java/lex.c:1776
-#: objc/objc-act.c:449
-#, c-format
-msgid "can't open %s"
+#: global.c:356 global.c:369 global.c:383
+#, fuzzy, c-format
+msgid "%s cannot be used in asm here"
+msgstr "no se puede usar \"%s\" como un nombre de macro"
+
+#: graph.c:403 toplev.c:1481 toplev.c:4408 f/com.c:14202 java/jcf-parse.c:883
+#: java/jcf-parse.c:1030 java/lex.c:1828 objc/objc-act.c:503
+#, fuzzy, c-format
+msgid "can't open %s: %m"
msgstr "no se puede abrir %s"
#: haifa-sched.c:196
@@ -6194,71 +5995,81 @@ msgstr "no se puede abrir %s"
msgid "fix_sched_param: unknown param: %s"
msgstr "fix_sched_param: parámetro desconocido: %s"
-#: integrate.c:174
+#: integrate.c:166
msgid "function cannot be inline"
msgstr "la función no puede ser inline"
-#: integrate.c:178
+#: integrate.c:170
msgid "varargs function cannot be inline"
msgstr "la función varargs no puede ser inline"
-#: integrate.c:181
+#: integrate.c:173
msgid "function using alloca cannot be inline"
msgstr "la función que usa alloca no puede ser inline"
-#: integrate.c:184
+#: integrate.c:176
+#, fuzzy
+msgid "function using longjmp cannot be inline"
+msgstr "la función que usa setjmp no puede ser inline"
+
+#: integrate.c:179
msgid "function using setjmp cannot be inline"
msgstr "la función que usa setjmp no puede ser inline"
-#: integrate.c:187
+#: integrate.c:182
msgid "function uses __builtin_eh_return"
msgstr "la función usa __builtin_eh_return"
-#: integrate.c:190
+#: integrate.c:185
msgid "function with nested functions cannot be inline"
msgstr "la función con funciones anidadas no puede ser inline"
-#: integrate.c:194
+#: integrate.c:189
msgid "function with label addresses used in initializers cannot inline"
msgstr "la función con direcciones de etiquetas usada en los inicializadores no puede ser inline"
-#: integrate.c:201 integrate.c:245
+#: integrate.c:196 integrate.c:240
msgid "function too large to be inline"
msgstr "la función es demasiado grande para ser inline"
-#: integrate.c:211
+#: integrate.c:206
msgid "no prototype, and parameter address used; cannot be inline"
msgstr "no hay prototipo, y se usan direcciones de parámetro; no puede ser inline"
-#: integrate.c:218 integrate.c:263
+#: integrate.c:213 integrate.c:258
msgid "inline functions not supported for this return value type"
msgstr "no se da soport a funciones inline para este tipo de valor de devoluciòn"
-#: integrate.c:223
+#: integrate.c:218
msgid "function with varying-size return value cannot be inline"
msgstr "la función con valor de devolución de tamaño variable no puede ser inline"
-#: integrate.c:230
+#: integrate.c:225
msgid "function with varying-size parameter cannot be inline"
msgstr "la función con parámetro de tamaño variable no puede ser inline"
-#: integrate.c:233
+#: integrate.c:228
msgid "function with transparent unit parameter cannot be inline"
msgstr "la función con parámetro de unidad transparente no puede ser inline"
-#: integrate.c:252
+#: integrate.c:247
msgid "function with computed jump cannot inline"
msgstr "la función con salto calculado no puede ser inline"
-#: integrate.c:256
+#: integrate.c:251
msgid "function with nonlocal goto cannot be inline"
msgstr "la función con goto no local no puede ser inline"
-#: integrate.c:270
+#: integrate.c:265
msgid "function with target specific attribute(s) cannot be inlined"
msgstr "la función con atributo(s) específicos del objetivo no puede ser inline"
-#: line-map.c:198
+#: jump.c:1896
+#, fuzzy
+msgid "%Hwill never be executed"
+msgstr "la llamada %2d nunca se ejecuta\n"
+
+#: line-map.c:202
#, c-format
msgid "In file included from %s:%u"
msgstr "En el fichero incluído de %s:%u"
@@ -6275,7 +6086,7 @@ msgstr "En el fichero incluído de %s:%u"
#. with all the "from"s lined up.
#. The trailing comma is at the beginning of this message,
#. and the trailing colon is not translated.
-#: line-map.c:216
+#: line-map.c:220
#, c-format
msgid ""
",\n"
@@ -6284,62 +6095,156 @@ msgstr ""
",\n"
" de %s:%u"
+#. What to print when a switch has no documentation.
+#: opts.c:149
+msgid "This switch lacks documentation"
+msgstr ""
+
+#. Eventually this should become a hard error IMO.
+#: opts.c:318
+#, fuzzy, c-format
+msgid "command line option \"%s\" is valid for %s but not for %s"
+msgstr "\"-%s\" es válido para %s pero no para %s"
+
+#: opts.c:406
+#, fuzzy, c-format
+msgid "missing argument to \"%s\""
+msgstr "faltan argumentos para \"-%s\""
+
+#: opts.c:416
+#, fuzzy, c-format
+msgid "argument to \"%s\" should be a non-negative integer"
+msgstr "el operando para bin debe ser una literal entera no negativa"
+
+#: opts.c:463
+#, fuzzy, c-format
+msgid "unrecognized command line option \"%s\""
+msgstr "ignorando la opción de línea de comando '%s'"
+
+#: opts.c:646
+msgid "-Wuninitialized is not supported without -O"
+msgstr "-Wuninitialized no tiene soporte sin -O"
+
+#: opts.c:1350
+#, fuzzy, c-format
+msgid "unrecognized register name \"%s\""
+msgstr "no se reconoce el nombre de registro `%s'"
+
+#: opts.c:1394
+#, fuzzy, c-format
+msgid "unknown tls-model \"%s\""
+msgstr "`%s': opción de tls-model desconocida"
+
+#: opts.c:1450
+#, fuzzy
+msgid "-fwritable-strings is deprecated; see documentation for details"
+msgstr "la opción \"%s\" es obsoleta, por favor vea la documentación para más detalles"
+
+#: opts.c:1534
+#, c-format
+msgid "%s: --param arguments should be of the form NAME=VALUE"
+msgstr ""
+
+#: opts.c:1539
+#, fuzzy, c-format
+msgid "invalid --param value `%s'"
+msgstr "valor de parámetro `%s' inválido"
+
+#: opts.c:1635
+#, fuzzy
+msgid "target system does not support debug output"
+msgstr "el formato objetivo no tiene soporte para infinito"
+
+#: opts.c:1642
+#, fuzzy, c-format
+msgid "debug format \"%s\" conflicts with prior selection"
+msgstr "el área de datos de '%s' en conflicto con una declaración previa"
+
+#: opts.c:1658
+#, fuzzy, c-format
+msgid "unrecognised debug output level \"%s\""
+msgstr "no se reconoce el nombre de sección \"%s\""
+
+#: opts.c:1660
+#, c-format
+msgid "debug output level %s is too high"
+msgstr ""
+
+#: opts.c:1679
+msgid "The following options are language-independent:\n"
+msgstr ""
+
+#: opts.c:1686
+#, c-format
+msgid ""
+"The %s front end recognizes the following options:\n"
+"\n"
+msgstr ""
+
+#: opts.c:1700
+msgid "The --param option recognizes the following as parameters:\n"
+msgstr ""
+
#. If we didn't find this parameter, issue an error message.
-#: params.c:80
+#: params.c:76
#, c-format
msgid "invalid parameter `%s'"
msgstr "el parámetro `%s' es inválido"
-#: profile.c:397
-#, c-format
-msgid "Profile does not match flowgraph of function %s (out of date?)"
-msgstr "El análisis de perfil no coincide con la gráfica de flujo de la función %s (¿desactualizado?)"
+#: profile.c:288
+msgid "corrupted profile info: run_max * runs < sum_max"
+msgstr ""
+
+#: profile.c:294
+msgid "corrupted profile info: sum_all is smaller than sum_max"
+msgstr ""
-#: profile.c:400
-msgid ".da file corrupted"
-msgstr "fichero .da corrupto"
+#: profile.c:336
+#, fuzzy, c-format
+msgid "corrupted profile info: edge from %i to %i exceeds maximal count"
+msgstr "información de análisis de perfil corrupta: la prueba para %d-%d debería ser %d"
-#: profile.c:634
-#, c-format
-msgid "corrupted profile info: prob for %d-%d thought to be %d"
+#: profile.c:499
+#, fuzzy, c-format
+msgid "corrupted profile info: number of iterations for basic block %d thought to be %i"
msgstr "información de análisis de perfil corrupta: la prueba para %d-%d debería ser %d"
-#: profile.c:1226
-#, c-format
-msgid "file %s not found, execution counts assumed to be zero"
-msgstr "no se encuentra el fichero %s, se asume que la cuenta de ejecución es cero"
+#: profile.c:526
+#, fuzzy, c-format
+msgid "corrupted profile info: number of executions for edge %d-%d thought to be %i"
+msgstr "información de análisis de perfil corrupta: la prueba para %d-%d debería ser %d"
-#: protoize.c:542
+#: protoize.c:534
#, c-format
msgid "%s: internal abort\n"
msgstr "%s: aborto interno\n"
-#: protoize.c:633
+#: protoize.c:592
#, c-format
msgid "%s: error writing file `%s': %s\n"
msgstr "%s: error al escribir al fichero `%s': %s\n"
-#: protoize.c:678
+#: protoize.c:636
#, c-format
msgid "%s: usage '%s [ -VqfnkN ] [ -i <istring> ] [ filename ... ]'\n"
msgstr "%s: modo de empleo '%s [ -VqfnkN ] [ -i <cadena-i> ] [ nombre_fichero ... ]'\n"
-#: protoize.c:681
+#: protoize.c:639
#, c-format
msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B <dirname> ] [ filename ... ]'\n"
msgstr "%s: modo de empleo '%s [ -VqufnkNlgC ] [ -B <nombre_directorio> ] [ nombre_fichero ... ]'\n"
-#: protoize.c:788
+#: protoize.c:745
#, c-format
msgid "%s: warning: no read access for file `%s'\n"
msgstr "%s: aviso: no hay acceso de lectura para el fichero `%s'\n"
-#: protoize.c:796
+#: protoize.c:753
#, c-format
msgid "%s: warning: no write access for file `%s'\n"
msgstr "%s: aviso: no hay acceso de escritura para el fichero `%s'\n"
-#: protoize.c:804
+#: protoize.c:761
#, c-format
msgid "%s: warning: no write access for dir containing `%s'\n"
msgstr "%s: aviso: no hay acceso de escritura para el directorio que contiene a `%s'\n"
@@ -6347,17 +6252,17 @@ msgstr "%s: aviso: no hay acceso de escritura para el directorio que contiene a
#. Catch cases like /.. where we try to backup to a
#. point above the absolute root of the logical file
#. system.
-#: protoize.c:1222
+#: protoize.c:1148
#, c-format
msgid "%s: invalid file name: %s\n"
msgstr "%s: nombre de fichero inválido: %s\n"
-#: protoize.c:1374
+#: protoize.c:1296
#, c-format
msgid "%s: %s: can't get status: %s\n"
msgstr "%s: %s: no se puede obtener el estado: %s\n"
-#: protoize.c:1395
+#: protoize.c:1317
#, c-format
msgid ""
"\n"
@@ -6366,137 +6271,137 @@ msgstr ""
"\n"
"%s: error fatal: fichero de información auxiliar corrupto en la línea %d\n"
-#: protoize.c:1731
+#: protoize.c:1646
#, c-format
msgid "%s:%d: declaration of function `%s' takes different forms\n"
msgstr "%s:%d: la declaración de la función `%s' toma formas diferentes\n"
-#: protoize.c:1989
+#: protoize.c:1901
#, c-format
msgid "%s: compiling `%s'\n"
msgstr "%s: compilando `%s'\n"
-#: protoize.c:2012
+#: protoize.c:1924
#, c-format
msgid "%s: wait: %s\n"
msgstr "%s: esperar: %s\n"
-#: protoize.c:2017
+#: protoize.c:1929
#, c-format
msgid "%s: subprocess got fatal signal %d\n"
msgstr "%s: el subproceso recibió la señal fatal %d\n"
-#: protoize.c:2025
+#: protoize.c:1937
#, c-format
msgid "%s: %s exited with status %d\n"
msgstr "%s: %s terminó con estado %d\n"
-#: protoize.c:2077
+#: protoize.c:1986
#, c-format
msgid "%s: warning: missing SYSCALLS file `%s'\n"
msgstr "%s: aviso: falta el fichero SYSCALLS `%s'\n"
-#: protoize.c:2086 protoize.c:2115
+#: protoize.c:1995 protoize.c:2024
#, c-format
msgid "%s: can't read aux info file `%s': %s\n"
msgstr "%s: no se puede leer el fichero de información auxiliar `%s': %s\n"
-#: protoize.c:2131 protoize.c:2159
+#: protoize.c:2040 protoize.c:2068
#, c-format
msgid "%s: can't get status of aux info file `%s': %s\n"
msgstr "%s: no se puede obtener el estado del fichero de información auxiliar `%s': %s\n"
-#: protoize.c:2187
+#: protoize.c:2096
#, c-format
msgid "%s: can't open aux info file `%s' for reading: %s\n"
msgstr "%s: no se puede abrir el fichero de información auxiliar `%s' para lectura: %s\n"
-#: protoize.c:2205
+#: protoize.c:2114
#, c-format
msgid "%s: error reading aux info file `%s': %s\n"
msgstr "%s: error al leer el fichero de información auxiliar `%s': %s\n"
-#: protoize.c:2218
+#: protoize.c:2127
#, c-format
msgid "%s: error closing aux info file `%s': %s\n"
msgstr "%s: error al cerrar el fichero de información auxiliar `%s': %s\n"
-#: protoize.c:2234
+#: protoize.c:2143
#, c-format
msgid "%s: can't delete aux info file `%s': %s\n"
msgstr "%s: no se puede borrar el fichero de información auxiliar `%s': %s\n"
-#: protoize.c:2316 protoize.c:4318
+#: protoize.c:2225 protoize.c:4195
#, c-format
msgid "%s: can't delete file `%s': %s\n"
msgstr "%s: no se puede borrar el fichero `%s': %s\n"
-#: protoize.c:2395
+#: protoize.c:2303
#, c-format
msgid "%s: warning: can't rename file `%s' to `%s': %s\n"
msgstr "%s: aviso: no se puede renombrar el fichero `%s' a `%s': %s\n"
-#: protoize.c:2520
+#: protoize.c:2425
#, c-format
msgid "%s: conflicting extern definitions of '%s'\n"
msgstr "%s: definiciones extern de '%s' en conflicto\n"
-#: protoize.c:2524
+#: protoize.c:2429
#, c-format
msgid "%s: declarations of '%s' will not be converted\n"
msgstr "%s: las declaraciones de '%s' no se convertirán\n"
-#: protoize.c:2526
+#: protoize.c:2431
#, c-format
msgid "%s: conflict list for '%s' follows:\n"
msgstr "%s: listas de conflictos para '%s' a continuación:\n"
-#: protoize.c:2559
+#: protoize.c:2464
#, c-format
msgid "%s: warning: using formals list from %s(%d) for function `%s'\n"
msgstr "%s: aviso: usando listas formales de %s(%d) para la función `%s'\n"
-#: protoize.c:2599
+#: protoize.c:2504
#, c-format
msgid "%s: %d: `%s' used but missing from SYSCALLS\n"
msgstr "%s: %d: se usa `%s' pero falta en SYSCALLS\n"
-#: protoize.c:2605
+#: protoize.c:2510
#, c-format
msgid "%s: %d: warning: no extern definition for `%s'\n"
msgstr "%s: %d: aviso: no hay definición extern para `%s'\n"
-#: protoize.c:2636
+#: protoize.c:2540
#, c-format
msgid "%s: warning: no static definition for `%s' in file `%s'\n"
msgstr "%s: aviso: no hay definición static para `%s' en el fichero `%s'\n"
-#: protoize.c:2642
+#: protoize.c:2546
#, c-format
msgid "%s: multiple static defs of `%s' in file `%s'\n"
msgstr "%s: definiciones static múltiples de `%s' en el fichero `%s'\n"
-#: protoize.c:2815 protoize.c:2818
+#: protoize.c:2716 protoize.c:2719
#, c-format
msgid "%s: %d: warning: source too confusing\n"
msgstr "%s: %d: aviso: código fuente demasiado confuso\n"
-#: protoize.c:3024
+#: protoize.c:2915
#, c-format
msgid "%s: %d: warning: varargs function declaration not converted\n"
msgstr "%s: %d: aviso: no se convirtió la declaración de la función varargs\n"
-#: protoize.c:3039
+#: protoize.c:2930
#, c-format
msgid "%s: declaration of function `%s' not converted\n"
msgstr "%s: no se convirtió la declaración de la función `%s'\n"
-#: protoize.c:3162
+#: protoize.c:3053
#, c-format
msgid "%s: warning: too many parameter lists in declaration of `%s'\n"
msgstr "%s: aviso: demasiadas listas de parámetros en la declaración de `%s'\n"
-#: protoize.c:3183
+#: protoize.c:3074
#, c-format
msgid ""
"\n"
@@ -6505,17 +6410,17 @@ msgstr ""
"\n"
"%s: aviso: muy pocas listas de parámetros en la declaración de `%s'\n"
-#: protoize.c:3281
+#: protoize.c:3170
#, c-format
msgid "%s: %d: warning: found `%s' but expected `%s'\n"
msgstr "%s: %d: aviso: se encontró `%s' pero se esperaba `%s'\n"
-#: protoize.c:3459
+#: protoize.c:3345
#, c-format
msgid "%s: local declaration for function `%s' not inserted\n"
msgstr "%s: no se insertó la declaración local para la función `%s'\n"
-#: protoize.c:3486
+#: protoize.c:3372
#, c-format
msgid ""
"\n"
@@ -6524,64 +6429,64 @@ msgstr ""
"\n"
"%s: %d: aviso: no se puede agregar la declaración de `%s' en la llamada a macro\n"
-#: protoize.c:3560
+#: protoize.c:3444
#, c-format
msgid "%s: global declarations for file `%s' not inserted\n"
msgstr "%s: no se insertaron las declaraciones globales para el fichero `%s'\n"
-#: protoize.c:3651 protoize.c:3681
+#: protoize.c:3533 protoize.c:3563
#, c-format
msgid "%s: definition of function `%s' not converted\n"
msgstr "%s: no se convirtió la definición de la función `%s'\n"
-#: protoize.c:3670
+#: protoize.c:3552
#, c-format
msgid "%s: %d: warning: definition of %s not converted\n"
msgstr "%s: %d: aviso: no se convirtió la definición de %s\n"
-#: protoize.c:4000
+#: protoize.c:3878
#, c-format
msgid "%s: found definition of `%s' at %s(%d)\n"
msgstr "%s: se encontró la definición de `%s' en %s(%d)\n"
#. If we make it here, then we did not know about this
#. function definition.
-#: protoize.c:4016
+#: protoize.c:3894
#, c-format
msgid "%s: %d: warning: `%s' excluded by preprocessing\n"
msgstr "%s: %d: aviso: `%s' fue excluído por el preprocesamiento\n"
-#: protoize.c:4019
+#: protoize.c:3897
#, c-format
msgid "%s: function definition not converted\n"
msgstr "%s: no se convirtió la definición de la función\n"
-#: protoize.c:4078
+#: protoize.c:3955
#, c-format
msgid "%s: `%s' not converted\n"
msgstr "%s: no se convirtió `%s'\n"
-#: protoize.c:4086
+#: protoize.c:3963
#, c-format
msgid "%s: would convert file `%s'\n"
msgstr "%s: se podría convertir el fichero `%s'\n"
-#: protoize.c:4089
+#: protoize.c:3966
#, c-format
msgid "%s: converting file `%s'\n"
msgstr "%s: convirtiendo el fichero `%s'\n"
-#: protoize.c:4099
+#: protoize.c:3976
#, c-format
msgid "%s: can't get status for file `%s': %s\n"
msgstr "%s: no se puede obtener el estado del fichero `%s': %s\n"
-#: protoize.c:4141
+#: protoize.c:4018
#, c-format
msgid "%s: can't open file `%s' for reading: %s\n"
msgstr "%s: no se puede abrir el fichero `%s' para lectura: %s\n"
-#: protoize.c:4156
+#: protoize.c:4033
#, c-format
msgid ""
"\n"
@@ -6590,37 +6495,37 @@ msgstr ""
"\n"
"%s: error al leer el fichero de entrada `%s': %s\n"
-#: protoize.c:4190
+#: protoize.c:4067
#, c-format
msgid "%s: can't create/open clean file `%s': %s\n"
msgstr "%s: no se puede crear/abrir el fichero limpio `%s': %s\n"
-#: protoize.c:4295
+#: protoize.c:4172
#, c-format
msgid "%s: warning: file `%s' already saved in `%s'\n"
msgstr "%s: aviso: el fichero `%s' ya había sido guardado en `%s'\n"
-#: protoize.c:4303
+#: protoize.c:4180
#, c-format
msgid "%s: can't link file `%s' to `%s': %s\n"
msgstr "%s: no se puede enlazar el fichero `%s' a `%s': %s\n"
-#: protoize.c:4333
+#: protoize.c:4210
#, c-format
msgid "%s: can't create/open output file `%s': %s\n"
msgstr "%s: no se puede crear/abrir el fichero de salida `%s': %s\n"
-#: protoize.c:4366
+#: protoize.c:4243
#, c-format
msgid "%s: can't change mode of file `%s': %s\n"
msgstr "%s: no se puede cambiar el modo del fichero `%s': %s\n"
-#: protoize.c:4541
+#: protoize.c:4416
#, c-format
msgid "%s: cannot get working directory: %s\n"
msgstr "%s: no se puede obtener el directorio de trabajo: %s\n"
-#: protoize.c:4639
+#: protoize.c:4514
#, c-format
msgid "%s: input file names must have .c suffixes: %s\n"
msgstr "%s: los nombres de fichero de entrada deben tener sufijos .c: %s\n"
@@ -6629,361 +6534,404 @@ msgstr "%s: los nombres de fichero de entrada deben tener sufijos .c: %s\n"
msgid "Didn't find a coloring.\n"
msgstr "No se puede encontrar un coloreado.\n"
-#: reg-stack.c:673
+#: reg-stack.c:665
#, c-format
msgid "output constraint %d must specify a single register"
msgstr "la restricción de salida %d debe especificar un solo registro"
# ¿Cómo traducir 'clobber'? cfuga
-#: reg-stack.c:683
+#: reg-stack.c:675
#, c-format
msgid "output constraint %d cannot be specified together with \"%s\" clobber"
msgstr "la restricción de salida %d no puede ser usada junto con el ataque \"%s\""
-#: reg-stack.c:706
+#: reg-stack.c:698
msgid "output regs must be grouped at top of stack"
msgstr "los registros de salida deben ser agrupados en la parte superior de la pila"
-#: reg-stack.c:743
+#: reg-stack.c:735
msgid "implicitly popped regs must be grouped at top of stack"
msgstr "los registros extraídos implícitamente deben ser agrupados en la parte superior de la pila"
-#: reg-stack.c:762
+#: reg-stack.c:754
#, c-format
msgid "output operand %d must use `&' constraint"
msgstr "el operando de salida %d debe usar la restricción `&'"
-#: regclass.c:756
+#: regclass.c:743
#, c-format
msgid "can't use '%s' as a %s register"
msgstr "no se puede usar '%s' como un registro %s"
-#: regclass.c:771 config/ia64/ia64.c:4304 config/ia64/ia64.c:4311
+#: regclass.c:758 config/ia64/ia64.c:4640 config/ia64/ia64.c:4647
#, c-format
msgid "unknown register name: %s"
msgstr "nombre de registro desconocido: %s"
-#: regclass.c:782
+#: regclass.c:768
msgid "global register variable follows a function definition"
msgstr "la variable de registro global sigue a una definiciónd de función"
-#: regclass.c:786
+#: regclass.c:772
msgid "register used for two global register variables"
msgstr "nombre de registro usado por dos variables de registro globales"
-#: regclass.c:791
+#: regclass.c:777
msgid "call-clobbered register used for global register variable"
msgstr "registro de llamada alterada usado para una variable de registro global"
-#: regrename.c:1899
+#: regrename.c:1846
#, c-format
msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)"
msgstr "validate_value_data: [%u] next_regno erróneo para la cadena vacía (%u)"
-#: regrename.c:1911
+#: regrename.c:1858
#, c-format
msgid "validate_value_data: Loop in regno chain (%u)"
msgstr "validate_value_data: Ciclo en la cadena regno (%u)"
-#: regrename.c:1914
+#: regrename.c:1861
#, c-format
msgid "validate_value_data: [%u] Bad oldest_regno (%u)"
msgstr "validate_value_data: [%u] oldest_regno erróneo (%u)"
-#: regrename.c:1926
+#: regrename.c:1873
#, c-format
msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
msgstr "validate_value_data: [%u] Registro no vacío en la cadena (%s %u %i)"
-#: reload.c:1229
+#: reload.c:1254
msgid "cannot reload integer constant operand in `asm'"
msgstr "no se puede recargar operandos constantes enteros en `asm'"
-#: reload.c:1251
+#: reload.c:1276
msgid "impossible register constraint in `asm'"
msgstr "es imposible inicio la restricción de registros en `asm'"
-#: reload.c:3461
+#: reload.c:3489
msgid "`&' constraint used with no register class"
msgstr "se usó la restricción `&' sin una clase de registro"
-#: reload.c:3629
+#: reload.c:3657
msgid "unable to generate reloads for:"
msgstr "no se pueden generar recargas para:"
-#: reload.c:3630 reload.c:3844
+#: reload.c:3658 reload.c:3872
msgid "inconsistent operand constraints in an `asm'"
msgstr "restricciones de operandos inconsistentes en un `asm'"
-#: reload1.c:1250
+#: reload1.c:1212
msgid "frame size too large for reliable stack checking"
msgstr "el tamaño del marco es demasiado grande para una revisión confiable de la pila"
-#: reload1.c:1253
+#: reload1.c:1215
msgid "try reducing the number of local variables"
msgstr "intente reducir el número de variables locales"
-#: reload1.c:1909
+#: reload1.c:1868
#, c-format
msgid "can't find a register in class `%s' while reloading `asm'"
msgstr "no se puede encontrar un registro en la clase `%s' mientras se recarga `asm'"
-#: reload1.c:1913
+#: reload1.c:1872
#, c-format
msgid "unable to find a register to spill in class `%s'"
msgstr "no se puede encontrar un registro para vaciar la clase `%s'"
-#: reload1.c:1915
+#: reload1.c:1874
msgid "this is the insn:"
msgstr "este es el insn:"
-#: reload1.c:3938
+#: reload1.c:3871
msgid "`asm' operand requires impossible reload"
msgstr "el operando `asm' requiere una recarga imposible"
#. It's the compiler's fault.
-#: reload1.c:5052
+#: reload1.c:4963
msgid "could not find a spill register"
msgstr "no se puede encontrar un registro de vaciado"
-#: reload1.c:5057
+#: reload1.c:4968
msgid "`asm' operand constraint incompatible with operand size"
msgstr "la restricción del operando `asm' es incompatible con el tamaño del operando"
#. It's the compiler's fault.
-#: reload1.c:6679
+#: reload1.c:6590
msgid "VOIDmode on an output"
msgstr "modoVOID en una salida"
-#: reload1.c:6680
+#: reload1.c:6591
msgid "output operand is constant in `asm'"
msgstr "el operando de salida es constante en `asm'"
-#: rtl-error.c:140
+#: rtl-error.c:124
msgid "unrecognizable insn:"
msgstr "insn no reconocible:"
-#: rtl-error.c:142
+#: rtl-error.c:126
msgid "insn does not satisfy its constraints:"
msgstr "insn no satisface sus restricciones:"
-#: rtl.c:535
+#: rtl.c:477
#, c-format
msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d"
msgstr "Revisión RTL: acceso de elt %d de `%s' con el último elt %d en %s, en %s:%d"
-#: rtl.c:550
+#: rtl.c:487
#, c-format
msgid "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr "Revisión RTL: se esperaba el tipo elt %d '%c', se tiene '%c' (rtx %s) en %s, en %s:%d"
-#: rtl.c:566
+#: rtl.c:497
#, c-format
msgid "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr "Revisión RTL: se esperaba el tipo elt %d '%c' ó '%c', se tiene '%c' (rtx %s) en %s, en%s:%d"
-#: rtl.c:579
+#: rtl.c:506
#, c-format
msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d"
msgstr "Revisión RTL: se esperaba el código `%s', se tiene `%s' en %s, en %s:%d"
-#: rtl.c:593
+#: rtl.c:516
#, c-format
msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d"
msgstr "Revisión RTL: se esperaba el código `%s' ó ``%s', se tiene `%s' en %s, en %s:%d"
-#: rtl.c:608
+#: rtl.c:527
#, c-format
msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
msgstr "Revisión RTL: acceso de elt %d de vector con el último elt %d en %s, en %s:%d"
-#: rtl.c:623
+#: rtl.c:538
#, c-format
msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d"
msgstr "Revisión de opción RTL: se usó %s con el código rtx inesperado `%s' en %s, en %s:%d"
-#: stmt.c:766
+#: stmt.c:750
#, c-format
msgid "jump to `%s' invalidly jumps into binding contour"
msgstr "el salto a `%s' salta de forma inválida a un contorno de unión"
-#: stmt.c:1002 stmt.c:3766
-#, c-format
-msgid "label `%s' used before containing binding contour"
+#: stmt.c:977 stmt.c:3793
+#, fuzzy
+msgid "%Jlabel '%D' used before containing binding contour"
msgstr "se usó antes la etiqueta `%s' que contenía un contorno de unión"
-#: stmt.c:1190
+#: stmt.c:1156
msgid "output operand constraint lacks `='"
msgstr "la restricción de operando de salida carece de `='"
-#: stmt.c:1205
+#: stmt.c:1171
#, c-format
msgid "output constraint `%c' for operand %d is not at the beginning"
msgstr "la restricción de salida `%c' para el operando %d no está al principio"
-#: stmt.c:1227
+#: stmt.c:1193
msgid "operand constraint contains incorrectly positioned '+' or '='"
msgstr "la restriccion de operando contiene '+' ó '=' en una posición ilegal"
-#: stmt.c:1233 stmt.c:1337
+#: stmt.c:1199 stmt.c:1301
#, c-format
msgid "`%%' constraint used with last operand"
msgstr "se usó la restricción `%%' con el último operando"
-#: stmt.c:1252
+#: stmt.c:1218
msgid "matching constraint not valid in output operand"
msgstr "la restricción coincidente no es válida en el operando de salida"
-#: stmt.c:1328
+#: stmt.c:1260
+#, fuzzy
+msgid "read-write constraint does not allow a register"
+msgstr "la constante de carácter hexadecimal no cabe en un byte"
+
+#: stmt.c:1292
#, c-format
msgid "input operand constraint contains `%c'"
msgstr "la restrcción de operando de entrada contiene `%c'"
-#: stmt.c:1368
+#: stmt.c:1334
msgid "matching constraint references invalid operand number"
msgstr "la restricción de coincidencia hace referencia a un número de operando no válido"
-#: stmt.c:1400
+#: stmt.c:1372
#, c-format
msgid "invalid punctuation `%c' in constraint"
msgstr "puntuación inválida `%c' en la restricción"
+#: stmt.c:1396
+#, fuzzy
+msgid "matching constraint does not allow a register"
+msgstr "la restricción coincidente no es válida en el operando de salida"
+
# FIXME: encontrar una mejor traducción para `clobber' en este contexto. cfuga
-#: stmt.c:1450
+#: stmt.c:1424
#, c-format
msgid "asm-specifier for variable `%s' conflicts with asm clobber list"
msgstr "los calificadores asm para la variable `%s' generan conflicto con la liasta de agrupación asm"
-#: stmt.c:1540
+#: stmt.c:1514
#, c-format
msgid "unknown register name `%s' in `asm'"
msgstr "nombre de registro `%s' desconocido en `asm'"
-#: stmt.c:1588
+#: stmt.c:1522
+#, fuzzy, c-format
+msgid "PIC register `%s' clobbered in `asm'"
+msgstr "nombre de registro `%s' desconocido en `asm'"
+
+#: stmt.c:1571
#, c-format
msgid "more than %d operands in `asm'"
msgstr "más de %d operandos en `asm'"
-#: stmt.c:1650
+#: stmt.c:1633
#, c-format
msgid "output number %d not directly addressable"
msgstr "el número de salida %d no es directamente direccionable"
-#: stmt.c:1728
+#: stmt.c:1711
#, c-format
msgid "asm operand %d probably doesn't match constraints"
msgstr "el operando asm %d probablemente no coincide con las restricciones"
-#: stmt.c:1738
+#: stmt.c:1721
#, c-format
msgid "use of memory input without lvalue in asm operand %d is deprecated"
msgstr ""
-#: stmt.c:1889
+#: stmt.c:1875
msgid "asm clobber conflict with output operand"
msgstr "la agrupación asm causa conflictos con el operando de salida"
-#: stmt.c:1894
+#: stmt.c:1880
msgid "asm clobber conflict with input operand"
msgstr "la agrupación asm causa conflictos con el operando de entrada"
-#: stmt.c:1929
+#: stmt.c:1914
msgid "too many alternatives in `asm'"
msgstr "demasiadas alternativas en `asm'"
-#: stmt.c:1941
+#: stmt.c:1926
msgid "operand constraints for `asm' differ in number of alternatives"
msgstr "las restricciones de operandos para `asm' difieren en el número de alternativas"
-#: stmt.c:1994
+#: stmt.c:1978
#, c-format
msgid "duplicate asm operand name '%s'"
msgstr "nombre `%s' de operando asm duplicado"
-#: stmt.c:2081
+#: stmt.c:2076
msgid "missing close brace for named operand"
msgstr "falta la llave final para el operando nombrado"
-#: stmt.c:2109
+#: stmt.c:2104
#, c-format
msgid "undefined named operand '%s'"
msgstr "operador '%s' nombrado sin definir"
-#: stmt.c:3703
-#, c-format
-msgid "unused variable `%s'"
+#: stmt.c:2161
+msgid "%Hstatement with no effect"
+msgstr ""
+
+#: stmt.c:2317
+#, fuzzy
+msgid "%Hvalue computed is not used"
+msgstr "el autómata `%s' no se utiliza"
+
+#: stmt.c:3733
+#, fuzzy
+msgid "%Junused variable '%D'"
msgstr "variable `%s' sin uso"
-#: stmt.c:5189
+#: stmt.c:4508
+#, fuzzy
+msgid "%Hunreachable code at beginning of %s"
+msgstr "bytecode inalcanzable desde %d hasta antes de %d"
+
+#: stmt.c:5136
#, c-format
msgid "enumeration value `%s' not handled in switch"
msgstr "el valor de enumeración `%s' no se maneja en un switch"
-#: stmt.c:5214 stmt.c:5234
+#: stmt.c:5161 stmt.c:5181
#, c-format
msgid "case value `%ld' not in enumerated type"
msgstr "el valor de case `%ld' no es un tipo enumerado"
-#: stmt.c:5217 stmt.c:5237
+#: stmt.c:5164 stmt.c:5184
#, c-format
msgid "case value `%ld' not in enumerated type `%s'"
msgstr "el valor de case `%ld' no es un tipo enumerado `%s'"
-#: stmt.c:5310
+#: stmt.c:5401
msgid "switch missing default case"
msgstr "falta el case por defecto para un switch"
-#: stor-layout.c:178
+#: stor-layout.c:183
msgid "type size can't be explicitly evaluated"
msgstr "el tamaño del tipo no se puede evaluar explícitamente"
-#: stor-layout.c:180
+#: stor-layout.c:185
msgid "variable-size type declared outside of any function"
msgstr "tipo de tamaño variable declarado fuera de cualquier función"
-#: stor-layout.c:487
-#, c-format
-msgid "size of `%s' is %d bytes"
+#: stor-layout.c:515
+#, fuzzy
+msgid "%Jsize of '%D' is %d bytes"
msgstr "el tamaño de `%s' es de %d bytes"
-#: stor-layout.c:489
-#, c-format
-msgid "size of `%s' is larger than %d bytes"
+#: stor-layout.c:517
+#, fuzzy
+msgid "%Jsize of '%D' is larger than %d bytes"
msgstr "el tamaño de `%s' es mayor que %d bytes"
-#: stor-layout.c:909 stor-layout.c:1325
-#, c-format
-msgid "packed attribute causes inefficient alignment for `%s'"
+#: stor-layout.c:883
+#, fuzzy
+msgid "%Jpacked attribute causes inefficient alignment for '%D'"
msgstr "el atributo packed causa una alineación ineficiente para `%s'"
-#: stor-layout.c:911 stor-layout.c:1327
-#, c-format
-msgid "packed attribute is unnecessary for `%s'"
+#: stor-layout.c:886
+#, fuzzy
+msgid "%Jpacked attribute is unnecessary for '%D'"
msgstr "no es necesario el atributo packed para `%s'"
-#: stor-layout.c:926
-#, c-format
-msgid "padding struct to align `%s'"
+#: stor-layout.c:902
+#, fuzzy
+msgid "%Jpadding struct to align '%D'"
msgstr "estructura de relleno para alinear `%s'"
-#: stor-layout.c:1289
+#: stor-layout.c:1245
msgid "padding struct size to alignment boundary"
msgstr "tamaño de la estructura de relleno para los límites de alineación"
-#: stor-layout.c:1332
+#: stor-layout.c:1275
+#, c-format
+msgid "packed attribute causes inefficient alignment for `%s'"
+msgstr "el atributo packed causa una alineación ineficiente para `%s'"
+
+#: stor-layout.c:1277
+#, c-format
+msgid "packed attribute is unnecessary for `%s'"
+msgstr "no es necesario el atributo packed para `%s'"
+
+#: stor-layout.c:1282
msgid "packed attribute causes inefficient alignment"
msgstr "el atributo packed causa una alineación ineficiente"
-#: stor-layout.c:1334
+#: stor-layout.c:1284
msgid "packed attribute is unnecessary"
msgstr "no es necesario el atributo packed"
-#: timevar.c:322
+#: targhooks.c:154
+msgid "__builtin_saveregs not supported by this target"
+msgstr "no se da soporte a __builtin_saveregs en este objetivo"
+
+#: timevar.c:314
#, c-format
msgid "cannot timevar_pop '%s' when top of timevars stack is '%s'"
msgstr "no se puede hacer timevar_pop '%s' cuando el tope de la pila timevars es '%s'"
-#: timevar.c:453
+#: timevar.c:440
msgid ""
"\n"
"Execution times (seconds)\n"
@@ -6992,973 +6940,124 @@ msgstr ""
"Tiempos de ejecución (segundos)\n"
#. Print total time.
-#: timevar.c:503
+#: timevar.c:490
msgid " TOTAL :"
msgstr " TOTAL :"
-#: timevar.c:539
+#: timevar.c:513
#, c-format
msgid "time in %s: %ld.%06ld (%ld%%)\n"
msgstr "tiempo en %s: %ld.%06ld (%ld%%)\n"
-#: tlink.c:399
+#: tlink.c:377
#, c-format
msgid "collect: reading %s\n"
msgstr "collect: leyendo %s\n"
-#: tlink.c:502
+#: tlink.c:478
#, c-format
msgid "collect: recompiling %s\n"
msgstr "collect: recompilando %s\n"
-#: tlink.c:674
+#: tlink.c:654
#, c-format
msgid "collect: tweaking %s in %s\n"
msgstr "collect: alterando %s en %s\n"
-#: tlink.c:721
+#: tlink.c:700
+#, c-format
msgid "collect: relinking\n"
msgstr "collect: reenlazando\n"
-#: tlink.c:730
+#: tlink.c:709
#, c-format
msgid "ld returned %d exit status"
msgstr "ld devolvió el estado de salida %d"
-#: toplev.c:920
-msgid "Generate debugging info in default format"
-msgstr "Generar información de depuración en el formato por defecto"
-
-#: toplev.c:921
-msgid "Generate debugging info in default extended format"
-msgstr "Generar información de depuración en el formato extendido por defecto"
-
-#: toplev.c:923
-msgid "Generate STABS format debug info"
-msgstr "Generar información de depuración en el formato STABS"
-
-#: toplev.c:924
-msgid "Generate extended STABS format debug info"
-msgstr "Generar información de depuración en el formato STABS extendido"
-
-#: toplev.c:927
-msgid "Generate DWARF-1 format debug info"
-msgstr "Generar información de depuración en el formato DWARF-1"
-
-#: toplev.c:929
-msgid "Generate extended DWARF-1 format debug info"
-msgstr "Generar información de depuración en el formato DWARF-1 extendido"
-
-#: toplev.c:932
-msgid "Generate DWARF-2 debug info"
-msgstr "Generar información de depuración en el formato DWARF-2"
-
-#: toplev.c:935
-msgid "Generate XCOFF format debug info"
-msgstr "Generar información de depuración en el formato XCOFF"
-
-#: toplev.c:936
-msgid "Generate extended XCOFF format debug info"
-msgstr "Generar información de depuración en el formato XCOFF extendido"
-
-#: toplev.c:939
-msgid "Generate COFF format debug info"
-msgstr "Generar información de depuración en el formato XCOFF"
-
-#: toplev.c:942
-msgid "Generate VMS format debug info"
-msgstr "Generar información de depuración en el formato VMS"
-
-#: toplev.c:981
-msgid "Perform DWARF2 duplicate elimination"
-msgstr "Realizar la eliminación de DWARF2 duplicados"
-
-#: toplev.c:983
-msgid "Do not store floats in registers"
-msgstr "No guardar floats en registros"
-
-#: toplev.c:985
-msgid "Consider all mem refs through pointers as volatile"
-msgstr "Considerar todas las referencias a memoria a través de punteros como volatile"
-
-#: toplev.c:987
-msgid "Consider all mem refs to global data to be volatile"
-msgstr "Considerar todas las referencias a datos globales como volatile"
-
-#: toplev.c:989
-msgid "Consider all mem refs to static data to be volatile"
-msgstr "Considerar todas las referencias a datos static como volatile"
-
-#: toplev.c:991
-msgid "Defer popping functions args from stack until later"
-msgstr "Postergar la extracción de argumentos de funciones de la pila hasta más tarde"
-
-#: toplev.c:993
-msgid "When possible do not generate stack frames"
-msgstr "Cuando sea posible no generar marcos de pila"
-
-#: toplev.c:995
-msgid "Optimize sibling and tail recursive calls"
-msgstr "Optimizar las llamadas recursivas hermanadas y de extremo"
-
-#: toplev.c:997
-msgid "Perform superblock formation via tail duplication"
-msgstr "Realizar la formación de superbloques a través de la duplicación de colas"
-
-#: toplev.c:999
-msgid "When running CSE, follow jumps to their targets"
-msgstr "Cuando se esté ejecutando CSE, seguir a los saltos a sus objetivos"
-
-#: toplev.c:1001
-msgid "When running CSE, follow conditional jumps"
-msgstr "Cuando se esté ejecutando CSE, seguir a los saltos condicionales"
-
-#: toplev.c:1003
-msgid "Perform a number of minor, expensive optimizations"
-msgstr "Realizar un número de optimizaciones menores y costosas"
-
-#: toplev.c:1005
-msgid "Perform jump threading optimizations"
-msgstr "Realizar optimizaciones de hilado de saltos"
-
-#: toplev.c:1007
-msgid "Perform strength reduction optimizations"
-msgstr "Realizar optimizaciones de reducción de fuerza"
-
-#: toplev.c:1009
-msgid "Perform loop unrolling when iteration count is known"
-msgstr "Realizar el desenrollamiento del ciclo cuando se conoce la cuenta de iteración"
-
-#: toplev.c:1011
-msgid "Perform loop unrolling for all loops"
-msgstr "Realizar el desenrollamiento del ciclo para todos los ciclos"
-
-#: toplev.c:1013
-msgid "Generate prefetch instructions, if available, for arrays in loops"
-msgstr "Generar instrucciones de precargado, si están disponibles, para matrices en ciclos"
-
-#: toplev.c:1015
-msgid "Force all loop invariant computations out of loops"
-msgstr "Forzar que todas las computaciones invariantes del ciclo sean fuera del ciclo"
-
-#: toplev.c:1017
-msgid "Strength reduce all loop general induction variables"
-msgstr "Reducir la fuerza de todas las variables generales de inducción de ciclo"
-
-#: toplev.c:1019
-msgid "Store strings in writable data section"
-msgstr "Guardar las cadenas en la sección de datos modificables"
-
-#: toplev.c:1021
-msgid "Enable machine specific peephole optimizations"
-msgstr "Activar las optimizaciones de mirilla específicas de la máquina"
-
-#: toplev.c:1023
-msgid "Copy memory operands into registers before using"
-msgstr "Copiar los operandos de memoria en registros antes de usarlos"
-
-#: toplev.c:1025
-msgid "Copy memory address constants into regs before using"
-msgstr "Copiar las constantes de direcciones de memoria en registros antes de usarlos"
-
-#: toplev.c:1027
-msgid "Allow function addresses to be held in registers"
-msgstr "Permitir que las direcciones de las funciones se conservern en registros"
-
-#: toplev.c:1029
-msgid "Integrate simple functions into their callers"
-msgstr "Integrar las funciones simples en sus invocadores"
-
-#: toplev.c:1031
-msgid "Generate code for funcs even if they are fully inlined"
-msgstr "Generar códio para las funciones aún si están completamente inline"
-
-#: toplev.c:1033
-msgid "Pay attention to the 'inline' keyword"
-msgstr "Poner atención a la palabra clave 'inline'"
-
-#: toplev.c:1035
-msgid "Emit static const variables even if they are not used"
-msgstr "Emitir variables static const aún si no se usan"
-
-#: toplev.c:1037
-msgid "Check for syntax errors, then stop"
-msgstr "Buscar errores de sintaxis, y entonces detenerse"
-
-#: toplev.c:1039
-msgid "Mark data as shared rather than private"
-msgstr "Marcar datos como compartidos en lugar de privados"
-
-#: toplev.c:1041
-msgid "Enable saving registers around function calls"
-msgstr "Permitir guardar registros alrededor de llamadas de función"
-
-#: toplev.c:1043
-msgid "Return 'short' aggregates in memory, not registers"
-msgstr "Devolver los agregados 'short' en memoria, no en registros"
-
-#: toplev.c:1045
-msgid "Return 'short' aggregates in registers"
-msgstr "Devolver los agregados 'short' en registros"
-
-#: toplev.c:1047
-msgid "Attempt to fill delay slots of branch instructions"
-msgstr "Intentar rellenar las ranuras de retraso de las instrucciones de ramificación"
-
-#: toplev.c:1049
-msgid "Perform the global common subexpression elimination"
-msgstr "Realizar la eliminación de subexpresiones comunes globales"
-
-#: toplev.c:1051
-msgid "Perform enhanced load motion during global subexpression elimination"
-msgstr "Realizar el movimiento de la carga mejorada durante la eliminación de subexpresiones globales"
-
-#: toplev.c:1053
-msgid "Perform store motion after global subexpression elimination"
-msgstr "Realizar el movimiento de guardado después de la eliminación de subexpresiones globales"
-
-#: toplev.c:1055
-msgid "Perform the loop optimizations"
-msgstr "Realizar las optimizaciones de ciclo"
-
-#: toplev.c:1057
-msgid "Perform cross-jumping optimization"
-msgstr "Realizar optimizaciones de saltos cruzados"
-
-#: toplev.c:1059
-msgid "Perform conversion of conditional jumps to branchless equivalents"
-msgstr "Realizar la conversión de saltos condicionales a equivalentes sin ramificación"
-
-#: toplev.c:1061
-msgid "Perform conversion of conditional jumps to conditional execution"
-msgstr "Realizar la conversión de saltos condicionales a ejecución condicional"
-
-#: toplev.c:1063
-msgid "Run CSE pass after loop optimizations"
-msgstr "Ejecutar un paso CSE después de las optimizaciones de ciclos"
-
-#: toplev.c:1065
-msgid "Run the loop optimizer twice"
-msgstr "Ejecutar el optimizador de ciclos dos veces"
-
-#: toplev.c:1067
-msgid "Delete useless null pointer checks"
-msgstr "Borrar las revisiones de punteros nulos sin uso"
-
-#: toplev.c:1069
-msgid "Reschedule instructions before register allocation"
-msgstr "Recalendarizar las instrucciones antes del alojamiento de registros"
-
-#: toplev.c:1071
-msgid "Reschedule instructions after register allocation"
-msgstr "Recalendarizar las instrucciones después del alojamiento de registros"
-
-#: toplev.c:1073
-msgid "Enable scheduling across basic blocks"
-msgstr "Activar la calendarización entre bloques básicos"
-
-#: toplev.c:1075
-msgid "Allow speculative motion of non-loads"
-msgstr "Permitir el movimiento especulativo de ninguna carga"
-
-#: toplev.c:1077
-msgid "Allow speculative motion of some loads"
-msgstr "Permitir el movimiento especulativo de algunas cargas"
-
-#: toplev.c:1079
-msgid "Allow speculative motion of more loads"
-msgstr "Permitir el movimiento especulativo de más cargas"
-
-#: toplev.c:1081
-msgid "Replace add,compare,branch with branch on count reg"
-msgstr "Reemplazar add,compare,branch con branch en la cuenta de registros"
-
-#: toplev.c:1083
-msgid "Generate position independent code, if possible"
-msgstr "Generar código independiente de posición, si es posible"
-
-#: toplev.c:1086
-msgid "Enable exception handling"
-msgstr "Activar el manejo de excepciones"
-
-#: toplev.c:1088
-msgid "Just generate unwind tables for exception handling"
-msgstr "Sólo generar tablas de desenredo para manejo de excepciones"
-
-#: toplev.c:1090
-msgid "Generate unwind tables exact at each instruction boundary"
-msgstr "Generar tablas de desenredo exactamente en cada límite de instrucción"
-
-#: toplev.c:1092
-msgid "Support synchronous non-call exceptions"
-msgstr "Soporte para excepciones síncronas no de llamadas"
-
-#: toplev.c:1094
-msgid "Insert arc based program profiling code"
-msgstr "Insertar código de análisis de perfil basado en el programa arc"
-
-#: toplev.c:1096
-msgid "Create data files needed by gcov"
-msgstr "Crear ficheros de datos necesarios para gcov"
-
-#: toplev.c:1098
-msgid "Use profiling information for branch probabilities"
-msgstr "Usar la información de análisis de perfil para las probabilidades de ramificación"
-
-#: toplev.c:1100
-msgid "Enable basic program profiling code"
-msgstr "Activar el código básico de análisis de perfil del programa"
-
-#: toplev.c:1102
-msgid "Reorder basic blocks to improve code placement"
-msgstr "Reordenar los bloques básicos para mejorar la ubicación del código"
-
-#: toplev.c:1104
-msgid "Reorder functions to improve code placement"
-msgstr "Reordenar las funciones para mejorar la ubicación del código"
-
-#: toplev.c:1106
-msgid "Do the register renaming optimization pass"
-msgstr "Hacer el paso de optimización de renombrado de registros"
-
-#: toplev.c:1108
-msgid "Do the register copy-propagation optimization pass"
-msgstr "Hacer el paso de optimización de copia-propagación de registros"
-
-#: toplev.c:1110
-msgid "Do not put uninitialized globals in the common section"
-msgstr "No poner globales sin inicializar en la sección común"
-
-#: toplev.c:1112
-msgid "Do not generate .size directives"
-msgstr "No generar directivas .size"
-
-#: toplev.c:1114
-msgid "place each function into its own section"
-msgstr "colocar cada función en su propia sección"
-
-#: toplev.c:1116
-msgid "place data items into their own section"
-msgstr "colocar los elementos de datos en su propia sección"
-
-#: toplev.c:1118
-msgid "Add extra commentary to assembler output"
-msgstr "Agregar comentarios extra a la salida de ensamblador"
-
-#: toplev.c:1120
-msgid "Output GNU ld formatted global initializers"
-msgstr "Obtener inicializadores globales con formato para ld de GNU"
-
-#: toplev.c:1122
-msgid "Enables a register move optimization"
-msgstr "Permite una optimización de movimiento de registros"
-
-#: toplev.c:1124
-msgid "Do the full regmove optimization pass"
-msgstr "Hace el paso completo de optimización de movimiento de registros"
-
-#: toplev.c:1126
-msgid "Pack structure members together without holes"
-msgstr "Empaqueta juntos a los miembros de la estructura sin agujeros"
-
-#: toplev.c:1128
-msgid "Insert stack checking code into the program"
-msgstr "Inserta código de revisión de la pila en el programa"
-
-#: toplev.c:1130
-msgid "Specify that arguments may alias each other & globals"
-msgstr "Especifica que los argumentos pueden ser alias de cada otro y de los globales"
-
-#: toplev.c:1132
-msgid "Assume arguments may alias globals but not each other"
-msgstr "Asumir que los argumentos pueden ser alias de globales pero no de cada otro"
-
-#: toplev.c:1134
-msgid "Assume arguments do not alias each other or globals"
-msgstr "Asumir que los argumentos no pueden ser alias de globales o de cada otro"
-
-#: toplev.c:1136
-msgid "Assume strict aliasing rules apply"
-msgstr "Asumir que se aplican las reglas estrictas de alias"
-
-#: toplev.c:1138
-msgid "Align the start of loops"
-msgstr "Alinear el inicio de los ciclos"
-
-#: toplev.c:1140
-msgid "Align labels which are only reached by jumping"
-msgstr "Alinear las etiquetas que solamente se alcanzan saltando"
-
-#: toplev.c:1142
-msgid "Align all labels"
-msgstr "Alinear todas las etiquetas"
-
-#: toplev.c:1144
-msgid "Align the start of functions"
-msgstr "Alinear el inicio de las funciones"
-
-#: toplev.c:1146
-msgid "Attempt to merge identical constants across compilation units"
-msgstr "Intentar mezclar constantes idénticas a través de las unidades de compilación"
-
-#: toplev.c:1148
-msgid "Attempt to merge identical constants and constant variables"
-msgstr "Intentar mezclar constantes idénticas y variables constantes"
-
-#: toplev.c:1150
-msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
-msgstr "Suprimir la salida de notas de números de instrucción y números de linea en los volcados de depuración"
-
-#: toplev.c:1152
-msgid "Instrument function entry/exit with profiling calls"
-msgstr "Instrumentar funciones entrada/salida con llamadas de análisis de perfil"
-
-#: toplev.c:1154
-msgid "Put zero initialized data in the bss section"
-msgstr "Poner datos inicializados a cero en la sección bss"
-
-#: toplev.c:1156
-msgid "Enable SSA optimizations"
-msgstr "Activar las optimizaciones SSA"
-
-#: toplev.c:1158
-msgid "Enable SSA conditional constant propagation"
-msgstr "Activar la propagación de las constantes condicionales SSA"
-
-#: toplev.c:1160
-msgid "Enable aggressive SSA dead code elimination"
-msgstr "Activar la eliminación agresiva de código muerto SSA"
-
-#: toplev.c:1162
-msgid "External symbols have a leading underscore"
-msgstr "Los símbolos externos tienen un subrayado inicial"
-
-#: toplev.c:1164
-msgid "Process #ident directives"
-msgstr "Procesar directivas #ident"
-
-#: toplev.c:1166
-msgid "Enables an rtl peephole pass run before sched2"
-msgstr "Activa una ejecución de paso de mirilla rtl antes de sched2"
-
-#: toplev.c:1168
-msgid "Assume no NaNs or +-Infs are generated"
-msgstr "Asumir que no se generan NaNs ó +-Infs"
-
-#: toplev.c:1170
-msgid "Enables guessing of branch probabilities"
-msgstr "Activar la predicción de probabilidades de ramificación"
-
-#: toplev.c:1172
-msgid "Set errno after built-in math functions"
-msgstr "Establecer errno después de las funciones matemáticas internas"
-
-#: toplev.c:1174
-msgid "Floating-point operations can trap"
-msgstr "Las operaciones de coma flotante pueden capturar"
-
-#: toplev.c:1176
-msgid "Allow math optimizations that may violate IEEE or ANSI standards"
-msgstr "Permitir optimizaciones matemáticas que pueden violar los estándares IEEE ó ANSI"
-
-#: toplev.c:1178
-msgid "Disable optimizations observable by IEEE signaling NaNs"
-msgstr "Desactivar optimizaciones observables con IEEE señalando NaNs"
-
-#: toplev.c:1180
-msgid "Generate code to check bounds before indexing arrays"
-msgstr "Generar código para revisar los límites antes de indizar matrices"
-
-#: toplev.c:1182
-msgid "Convert floating point constant to single precision constant"
-msgstr "Convertir constantes de coma flotante a constantes de precisión simple"
-
-#: toplev.c:1184
-msgid "Report time taken by each compiler pass at end of run"
-msgstr "Reportar el tiempo tomado por cada paso del compilador al final de la ejecución"
-
-#: toplev.c:1186
-msgid "Report on permanent memory allocation at end of run"
-msgstr "Reportar el alojamiento en memoria permanente al final de la ejecución"
-
-#: toplev.c:1188
-msgid "Trap for signed overflow in addition / subtraction / multiplication"
-msgstr "Atrapar desbordamientos signed en adición / sustracción / multiplicación"
-
-#: toplev.c:1190
-msgid "Use graph coloring register allocation."
-msgstr "Utilizar coloración de grafos para el alojamiento de registros."
-
-#: toplev.c:1207
-msgid "Compile just for ISO C90"
-msgstr "Compilar sólo para ISO C90"
-
-#: toplev.c:1209
-msgid "Determine language standard"
-msgstr "Determinar el estándard de lenguaje"
-
-#: toplev.c:1213
-msgid "Make bit-fields by unsigned by default"
-msgstr "Hacer por defecto unsigned los campos de bit"
-
-#: toplev.c:1217
-msgid "Make 'char' be signed by default"
-msgstr "Hacer que 'char' sea signed por defecto"
-
-#: toplev.c:1219
-msgid "Make 'char' be unsigned by default"
-msgstr "Hacer que 'char' sea unsigned por defecto"
-
-#: toplev.c:1225
-msgid "Do not recognize the 'asm' keyword"
-msgstr "No reconocer la palabra clave 'asm'"
+#: toplev.c:1226
+#, c-format
+msgid "%s "
+msgstr "%s "
#: toplev.c:1228
-msgid "Do not recognize any built in functions"
-msgstr "No reconocer ninguna función interna"
-
-#: toplev.c:1230
-msgid "Assume normal C execution environment"
-msgstr "Asumir el ambiente normal de ejecución C"
-
-#: toplev.c:1233
-msgid "Assume that standard libraries & main might not exist"
-msgstr "Asumir que pueden no existir las bibliotecas estándard y main"
-
-#: toplev.c:1236
-msgid "Allow different types as args of ? operator"
-msgstr "Permitir tipos diferentes como argumentos del operador ?"
-
-#: toplev.c:1239
-msgid "Allow the use of $ inside identifiers"
-msgstr "Permitir el uso de $ dentro de los identificadores"
-
-#: toplev.c:1244
-msgid "Use the same size for double as for float"
-msgstr "Usar el mismo tamaño para double que para float"
-
-#: toplev.c:1247
-msgid "Use the smallest fitting integer to hold enums"
-msgstr "Usar el entero adecuado más pequeño para contener enumerados"
-
-#: toplev.c:1250
-msgid "Override the underlying type for wchar_t to `unsigned short'"
-msgstr "Hacer de lado el tipo debajo de wchar_t por `unsigned short'"
-
-#: toplev.c:1254
-msgid "Enable most warning messages"
-msgstr "Activar casi todos los mensajes de aviso"
-
-#: toplev.c:1256
-msgid "Warn about casting functions to incompatible types"
-msgstr "Avisar por funciones de conversión a tipos incompatibles"
-
-#: toplev.c:1259
-msgid "Warn about functions which might be candidates for format attributes"
-msgstr "Avisar por funciones que pueden ser candidatas para atributos de formato"
-
-#: toplev.c:1262
-msgid "Warn about casts which discard qualifiers"
-msgstr "Avisar sobre conversiones que descartan calificadores"
-
-#: toplev.c:1265
-msgid "Warn about subscripts whose type is 'char'"
-msgstr "Avisar sobre subíndices cuyo tipo es 'char'"
-
-#: toplev.c:1268 toplev.c:1271
-msgid "Warn if nested comments are detected"
-msgstr "Avisar si se detectan comentarios anidados"
-
-#: toplev.c:1274
-msgid "Warn about possibly confusing type conversions"
-msgstr "Avisar sobre la posibilidad de conversión de tipos confusas"
-
-#: toplev.c:1278
-msgid "Do not warn about compile-time integer division by zero"
-msgstr "No avisar sobre la división entera por cero en tiempo de compilación"
-
-#: toplev.c:1280
-msgid "Warn about testing equality of floating point numbers"
-msgstr "Avisar sobre la equidad de pruebas de números de coma flotante"
-
-#: toplev.c:1283
-msgid "Warn about printf/scanf/strftime/strfmon format anomalies"
-msgstr "Avisar sobre anomalías de formato de printf/scanf/strftime/strfmon"
-
-#: toplev.c:1287
-msgid "Don't warn about too many arguments to format functions"
-msgstr "No avisar sobre demasiados argumentos para las funciones de formato"
-
-#: toplev.c:1289
-msgid "Warn about non-string-literal format strings"
-msgstr "Avisar sobre cadenas de formato que no son cadenas literales"
-
-#: toplev.c:1292
-msgid "Warn about possible security problems with format functions"
-msgstr "Avisar sobre posibles problemas de seguridad con funciones de formato"
-
-#: toplev.c:1296
-msgid "Don't warn about strftime formats yielding 2 digit years"
-msgstr "No avisar sobre formatos de strftime que producen dos dígitos para el año"
-
-#: toplev.c:1298
-msgid "Warn about implicit function declarations"
-msgstr "Avisar sobre la declaración implícita de funciones"
-
-#: toplev.c:1302
-msgid "Warn when a declaration does not specify a type"
-msgstr "Avisar cuando una declaración no especifique un tipo"
-
-#: toplev.c:1307
-msgid "Warn about the use of the #import directive"
-msgstr "Avisar sobre el uso de la directiva #import"
-
-#: toplev.c:1311
-msgid "Do not warn about using 'long long' when -pedantic"
-msgstr "No avisar sobre el uso de 'long long' cuando se use -pedantic"
-
-#: toplev.c:1313
-msgid "Warn about suspicious declarations of main"
-msgstr "Avisar sobre declaraciones sospechosas de main"
-
-#: toplev.c:1316
-msgid "Warn about possibly missing braces around initializers"
-msgstr "Avisar sobre posibles llaves faltantes alrededor de los inicializadores"
-
-#: toplev.c:1319
-msgid "Warn about global funcs without previous declarations"
-msgstr "Avisar sobre funciones globales sin declaraciones previas"
-
-#: toplev.c:1322
-msgid "Warn about global funcs without prototypes"
-msgstr "Avisar sobre funciones globales sin prototipos"
-
-#: toplev.c:1325
-msgid "Warn about use of multicharacter literals"
-msgstr "Avisar sobre el uso de literales multicaracteres"
-
-#: toplev.c:1328
-msgid "Warn about externs not at file scope level"
-msgstr "Avisar sobre externs que no están en el nivel del alcance del fichero"
-
-#: toplev.c:1331
-msgid "Warn about possible missing parentheses"
-msgstr "Avisar sobre posibles paréntesis faltantes"
-
-#: toplev.c:1334
-msgid "Warn about function pointer arithmetic"
-msgstr "Avisar sobre la aritmética de punteros de funciones"
-
-#: toplev.c:1337
-msgid "Warn about multiple declarations of the same object"
-msgstr "Avisar sobre declaraciones múltiples del mismo objeto"
-
-#: toplev.c:1340
-msgid "Warn whenever a function's return-type defaults to int"
-msgstr "Avisar cuando el tipo de devolución por defecto de una función cambia a int"
-
-#: toplev.c:1343
-msgid "Warn about possible violations of sequence point rules"
-msgstr "Avisar sobre posibles violaciones a las reglas de secuencia de punto"
-
-#: toplev.c:1346
-msgid "Warn about signed/unsigned comparisons"
-msgstr "Avisar sobre comparaciones signed/unsigned"
-
-#: toplev.c:1349
-msgid "Warn about non-prototyped function decls"
-msgstr "Avisar sobre declaraciones de función sin prototipo"
-
-#: toplev.c:1352
-msgid "Warn about constructs whose meanings change in ISO C"
-msgstr "Avisar sobre construcciones cuyos significados cambian en ISO C"
-
-#: toplev.c:1355
-msgid "Warn when trigraphs are encountered"
-msgstr "Avisar si se encuentran trigrafos"
-
-#: toplev.c:1360
-msgid "Warn about unrecognized pragmas"
-msgstr "Avisar sobre pragmas no reconocidos"
-
-#: toplev.c:1363
-msgid "Mark strings as 'const char *'"
-msgstr "Marcar las cadenas como 'const char *'"
-
-#: toplev.c:1508
-msgid "Warn when a function is unused"
-msgstr "Avisar cuando no se use una función"
-
-#: toplev.c:1510
-msgid "Warn when a label is unused"
-msgstr "Avisar cuando no se use una etiqueta"
-
-#: toplev.c:1512
-msgid "Warn when a function parameter is unused"
-msgstr "Avisar cuando no se use un parámetro de una función"
-
-#: toplev.c:1514
-msgid "Warn when a variable is unused"
-msgstr "Avisar cuando no se use una variable"
-
-#: toplev.c:1516
-msgid "Warn when an expression value is unused"
-msgstr "Avisar cuando no se use un valor de una expresión"
-
-#: toplev.c:1518
-msgid "Do not suppress warnings from system headers"
-msgstr "No suprimir los avisos de los encabezados del sistema"
-
-#: toplev.c:1520
-msgid "Treat all warnings as errors"
-msgstr "Tratar todos los avisos como errores"
-
-#: toplev.c:1522
-msgid "Warn when one local variable shadows another"
-msgstr "Avisar cuando una variable local oscurece otra"
-
-#: toplev.c:1524
-msgid "Warn about enumerated switches, with no default, missing a case"
-msgstr "Avisar sobre switches enumerados, sin valor por defecto, que carezcan de un case"
-
-#: toplev.c:1526
-msgid "Warn about enumerated switches missing a default case"
-msgstr "Avisar sobre switches enumerados que carezcan de un case por defecto"
-
-#: toplev.c:1528
-msgid "Warn about all enumerated switches missing a specific case"
-msgstr "Avisar sobre todos los switches enumerados que carezcan de un case específico"
-
-#: toplev.c:1530
-msgid "Warn about returning structures, unions or arrays"
-msgstr "Avisar sobre la devolución de estructuras, unions o matrices"
-
-#: toplev.c:1532
-msgid "Warn about pointer casts which increase alignment"
-msgstr "Avisar sobre conversión de punteros que incremente la alineación"
-
-#: toplev.c:1534
-msgid "Warn about code that will never be executed"
-msgstr "Avisar sobre código que nunca se ejecutará"
-
-#: toplev.c:1536
-msgid "Warn about uninitialized automatic variables"
-msgstr "Avisar sobre variables automáticas sin inicializar"
-
-#: toplev.c:1538
-msgid "Warn when an inlined function cannot be inlined"
-msgstr "Avisar cuando una función inline no puede ser inline"
-
-#: toplev.c:1540
-msgid "Warn when the packed attribute has no effect on struct layout"
-msgstr "Avisar cuando el atributo packed no tiene efecto en la disposición de un struct"
-
-#: toplev.c:1542
-msgid "Warn when padding is required to align struct members"
-msgstr "Avisar cuando se requiere relleno para alinear a los miembros de un struct"
-
-#: toplev.c:1544
-msgid "Warn when an optimization pass is disabled"
-msgstr "Avisar cuando se desactivó un paso de optimización"
-
-#: toplev.c:1546
-msgid "Warn about uses of __attribute__((deprecated)) declarations"
-msgstr "Avisar sobre usos de declaraciones __attribute__((obsoleto))"
-
-#: toplev.c:1548
-msgid "Warn about functions which might be candidates for attribute noreturn"
-msgstr "Avisar sobre funciones que pueden ser candidatas para el atributo noreturn"
+#, c-format
+msgid " %s"
+msgstr " %s"
-#: toplev.c:1550
-msgid "Warn about code which might break the strict aliasing rules"
-msgstr "Avisar sobre código que pueda romper las reglas estrictas de aliases"
+#: toplev.c:1293
+#, fuzzy, c-format
+msgid "invalid option argument `%s'"
+msgstr "opción `%s' inválida"
-#: toplev.c:1627 toplev.c:4548 config/rs6000/rs6000.c:680
+#: toplev.c:1356
#, c-format
-msgid "invalid option `%s'"
-msgstr "opción `%s' inválida"
+msgid "getting core file size maximum limit: %m"
+msgstr ""
-#: toplev.c:2031
+#: toplev.c:1359
#, c-format
-msgid "`%s' used but never defined"
+msgid "setting core file size limit to maximum: %m"
+msgstr ""
+
+#: toplev.c:1678
+#, fuzzy
+msgid "%J'%F' used but never defined"
msgstr "se usa `%s' pero nunca se definió"
-#: toplev.c:2034
-#, c-format
-msgid "`%s' declared `static' but never defined"
+#: toplev.c:1680
+#, fuzzy
+msgid "%J'%F' declared `static' but never defined"
msgstr "`%s' declarado `static' pero nunca se definió"
-#: toplev.c:2057
-#, c-format
-msgid "`%s' defined but not used"
+#: toplev.c:1705
+#, fuzzy
+msgid "%J'%D' defined but not used"
msgstr "se definió `%s' pero no se usó"
-#: toplev.c:2280
+#: toplev.c:1726 toplev.c:1743
#, c-format
-msgid "invalid register name `%s' for register variable"
-msgstr "el nombre de registro `%s' no es válido para variable de registro"
-
-#: toplev.c:3697
-msgid " -ffixed-<register> Mark <register> as being unavailable to the compiler\n"
-msgstr " -ffixed-<registro> Marca el <registro> como no disponible para el compilador\n"
-
-#: toplev.c:3698
-msgid " -fcall-used-<register> Mark <register> as being corrupted by function calls\n"
-msgstr " -fcall-used-<registro> Marca el <registro> como corrupto para llamadas de función\n"
-
-#: toplev.c:3699
-msgid " -fcall-saved-<register> Mark <register> as being preserved across functions\n"
-msgstr " -fcall-saved-<registro> Marcar el <registro> como preservado entre funciones\n"
-
-#: toplev.c:3700
-msgid " -finline-limit=<number> Limits the size of inlined functions to <number>\n"
-msgstr " -finline-limit=<número> Limita el tamaño de funciones inline a <número>\n"
-
-#: toplev.c:3701
-msgid " -fmessage-length=<number> Limits diagnostics messages lengths to <number> characters per line. 0 suppresses line-wrapping\n"
-msgstr " -fmessage-length=<número> Limita la longitud de los mensajes de diagnóstico a <número> caracteres por línea. 0 suprime el corte de línea\n"
-
-#: toplev.c:3702
-msgid " -fdiagnostics-show-location=[once | every-line] Indicates how often source location information should be emitted, as prefix, at the beginning of diagnostics when line-wrapping\n"
-msgstr " -fdiagnostics-show-location=[once | every-line] Indica que tan seguido se debe emitir la información de ubicación del código, como prefijo, al inicio de los diagnósticos cuando está activado el corte de línea\n"
-
-#: toplev.c:3703
-msgid " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indicates the default thread-local storage code generation model\n"
-msgstr " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indica el modelo de generación de código por defecto para almacenamiento thread-local\n"
-
-#: toplev.c:3704
-msgid " -fstack-limit-register=<register> Trap if the stack goes past <register>\n"
-msgstr ""
-
-#: toplev.c:3705
-msgid " -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>\n"
-msgstr ""
-
-#: toplev.c:3706
-msgid " -frandom-seed=<string> Make compile reproducible using <string>\n"
-msgstr ""
-
-#: toplev.c:3718
-msgid " -O[number] Set optimization level to [number]\n"
-msgstr " -O[número] Establecer el nivel de optimización a [número]\n"
-
-#: toplev.c:3719
-msgid " -Os Optimize for space rather than speed\n"
-msgstr " -Os Optimizar para espacio en lugar de velocidad\n"
-
-#: toplev.c:3731
-msgid " -pedantic Issue warnings needed by strict compliance to ISO C\n"
-msgstr " -pedantic Activar los avisos necesarios para cumplir estrictamente con ISO C\n"
-
-#: toplev.c:3732
-msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
-msgstr " -pedantic-errors Como -pedantic excepto que se producen errores\n"
-
-#: toplev.c:3733
-msgid " -w Suppress warnings\n"
-msgstr " -w Suprimir avisos\n"
-
-#: toplev.c:3734
-msgid " -W Enable extra warnings\n"
-msgstr " -W Activar avisos extra\n"
-
-#: toplev.c:3745
-msgid " -Wunused Enable unused warnings\n"
-msgstr " -Wunused Activar avisos sin usar\n"
-
-#: toplev.c:3746
-msgid " -Wlarger-than-<number> Warn if an object is larger than <number> bytes\n"
-msgstr " -Wlarger-than-<número> Avisar si un objeto es más grande que <número> bytes\n"
-
-#: toplev.c:3747
-msgid " -p Enable function profiling\n"
-msgstr " -p Activar el análisis de perfil de funciones\n"
-
-#: toplev.c:3748
-msgid " -o <file> Place output into <file> \n"
-msgstr " -o <fichero> Ubicar la salida en el <fichero>\n"
-
-#: toplev.c:3749
-msgid ""
-" -G <number> Put global and static data smaller than <number>\n"
-" bytes into a special section (on some targets)\n"
-msgstr ""
-" -G <número> Colocar los datos globales y estáticos más pequeños que <número>\n"
-" bytes en una sección especial (en algunos objetivos)\n"
-
-#: toplev.c:3760
-msgid " -aux-info <file> Emit declaration info into <file>\n"
-msgstr " -aux-info <fichero> Emitir la información de declaraciones en el <fichero>\n"
-
-#: toplev.c:3761
-msgid " -quiet Do not display functions compiled or elapsed time\n"
-msgstr " -quiet No mostrar las funciones compiladas o el tiempo transcurrido\n"
-
-#: toplev.c:3762
-msgid " -version Display the compiler's version\n"
-msgstr " -version Muestra la versión del compilador\n"
-
-#: toplev.c:3763
-msgid " -d[letters] Enable dumps from specific passes of the compiler\n"
-msgstr " -d[letras] Activa los volcados desde pasos específicos del compilador\n"
-
-#: toplev.c:3764
-msgid " -dumpbase <file> Base name to be used for dumps from specific passes\n"
-msgstr " -dumpbase <fichero> Nombre base a usar para los volcados desde pasos específicos\n"
+msgid "`%s' is deprecated (declared at %s:%d)"
+msgstr "`%s' es obsoleto (declarado en %s:%d)"
-#: toplev.c:3766
-msgid " -fsched-verbose=<number> Set the verbosity level of the scheduler\n"
-msgstr " -fsched-verbose=<número> Establece el nivel detalle del calendarizador\n"
+#: toplev.c:1746
+#, c-format
+msgid "`%s' is deprecated"
+msgstr "`%s' es obsoleto"
-#: toplev.c:3768
-msgid " --help Display this information\n"
-msgstr " --help Muestra esta información\n"
+#: toplev.c:1749
+#, c-format
+msgid "type is deprecated (declared at %s:%d)"
+msgstr "el tipo es obsoleto (declarado en %s:%d)"
-#: toplev.c:3783
-msgid ""
-"\n"
-"Language specific options:\n"
-msgstr ""
-"\n"
-"Opciones específicas del lenguaje:\n"
+#: toplev.c:1752
+msgid "type is deprecated"
+msgstr "el tipo es obsoleto"
-#: toplev.c:3795
+#: toplev.c:1956
#, c-format
-msgid " %-23.23s [undocumented]\n"
-msgstr " %-23.23s [sin documentar]\n"
+msgid "invalid register name `%s' for register variable"
+msgstr "el nombre de registro `%s' no es válido para variable de registro"
-#: toplev.c:3803 toplev.c:3817
-#, c-format
-msgid ""
-"\n"
-"There are undocumented %s specific options as well.\n"
+#: toplev.c:3522
+msgid "branch target register load optimization is not intended to be run twice"
msgstr ""
-"\n"
-"Además hay opciones específicas de %s sin documentar.\n"
-#: toplev.c:3807
+#: toplev.c:3689
#, c-format
msgid ""
"\n"
-" Options for %s:\n"
-msgstr ""
-"\n"
-" Opciones para %s:\n"
-
-#: toplev.c:3844
-msgid ""
-"\n"
"Target specific options:\n"
msgstr ""
"\n"
"Opciones específicas del objetivo:\n"
-#: toplev.c:3858 toplev.c:3877
-#, c-format
-msgid " -m%-23.23s [undocumented]\n"
+#: toplev.c:3703 toplev.c:3722
+#, fuzzy, c-format
+msgid " -m%-23s [undocumented]\n"
msgstr " -m%-23.23s [sin documentar]\n"
-#: toplev.c:3886
+#: toplev.c:3731
+#, c-format
msgid ""
"\n"
"There are undocumented target specific options as well.\n"
@@ -7966,73 +7065,22 @@ msgstr ""
"\n"
"Además hay opciones específicas del objetivo sin documentar.\n"
-#: toplev.c:3888
+#: toplev.c:3733
+#, c-format
msgid " They exist, but they are not documented.\n"
msgstr " Existen, pero no están documentadas.\n"
-#: toplev.c:3941
+#: toplev.c:3788
#, c-format
msgid "unrecognized gcc debugging option: %c"
msgstr "opción de depuración de gcc no reconocida: %c"
-#: toplev.c:4007
-#, c-format
-msgid "`%s': unknown tls-model option"
-msgstr "`%s': opción de tls-model desconocida"
-
-#: toplev.c:4034
-#, c-format
-msgid "unrecognized register name `%s'"
-msgstr "no se reconoce el nombre de registro `%s'"
-
-#: toplev.c:4059 toplev.c:5012
-#, c-format
-msgid "unrecognized option `%s'"
-msgstr "opción `-%s' no reconocida"
-
-#: toplev.c:4107
-msgid "-Wid-clash-LEN is no longer supported"
-msgstr "-Wid-clash-LEN ya no tiene soporte"
-
-#: toplev.c:4184
-#, c-format
-msgid "use -gdwarf -g%d for DWARF v1, level %d"
-msgstr "use -gdwarf -g%d para DWARF v1, nivel %d"
-
-#: toplev.c:4187
-msgid "use -gdwarf-2 for DWARF v2"
-msgstr "use -dwarf-2 para DWARF v2"
-
-#: toplev.c:4192
-#, c-format
-msgid "ignoring option `%s' due to invalid debug level specification"
-msgstr "ignorando la opción `%s' debido a la especificación de un nivel de depuración inválido"
-
-#: toplev.c:4215 toplev.c:5010
-#, c-format
-msgid "`%s': unknown or unsupported -g option"
-msgstr "`%s': opción -g desconocida o sin soporte"
-
-#: toplev.c:4222
-#, c-format
-msgid "`%s' ignored, conflicts with `-g%s'"
-msgstr "`%s' ignorado, tiene conflicto con `-g%s'"
-
-#: toplev.c:4304
-msgid "-param option missing argument"
-msgstr "falta el argumento para la opción -param"
-
-#: toplev.c:4313
-#, c-format
-msgid "invalid --param option: %s"
-msgstr "opción de --param inválida: %s"
-
-#: toplev.c:4325
+#: toplev.c:3850 config/rs6000/rs6000.c:909
#, c-format
-msgid "invalid parameter value `%s'"
-msgstr "valor de parámetro `%s' inválido"
+msgid "invalid option `%s'"
+msgstr "opción `%s' inválida"
-#: toplev.c:4565
+#: toplev.c:3865
#, c-format
msgid ""
"%s%s%s version %s (%s)\n"
@@ -8043,242 +7091,346 @@ msgstr ""
"%s\t compilado por GNU C versión %s.\n"
"%s%s%s versión %s (%s) compilado por CC.\n"
-#: toplev.c:4572
+#: toplev.c:3872
#, c-format
msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
msgstr "%s%sGGC heurísticas: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
-#: toplev.c:4630
+#: toplev.c:3924
msgid "options passed: "
msgstr "opciones pasadas: "
-#: toplev.c:4659
+#: toplev.c:3953
msgid "options enabled: "
msgstr "opciones activadas: "
-#: toplev.c:4718 java/jcf-write.c:3453
-#, c-format
-msgid "can't open %s for writing"
+#: toplev.c:4011 java/jcf-write.c:3422
+#, fuzzy, c-format
+msgid "can't open %s for writing: %m"
msgstr "no se puede abrir %s para escritura"
-#: toplev.c:5002
-#, c-format
-msgid "ignoring command line option '%s'"
-msgstr "ignorando la opción de línea de comando '%s'"
+#: toplev.c:4094 config/sh/sh.c:6883
+msgid "created and used with different settings of -fpic"
+msgstr ""
+
+#: toplev.c:4096 config/sh/sh.c:6885
+msgid "created and used with different settings of -fpie"
+msgstr ""
-#: toplev.c:5005
+#: toplev.c:4147 config/sh/sh.c:6935
#, c-format
-msgid "(it is valid for %s but not the selected language)"
-msgstr "(es válida para %s pero no para el lenguaje seleccionado)"
+msgid "created and used with differing settings of `-m%s'"
+msgstr ""
-#: toplev.c:5039
-msgid "-Wuninitialized is not supported without -O"
-msgstr "-Wuninitialized no tiene soporte sin -O"
+#: toplev.c:4150 config/sh/sh.c:6938
+msgid "out of memory"
+msgstr ""
-#: toplev.c:5094
+#: toplev.c:4331
msgid "instruction scheduling not supported on this target machine"
msgstr "no se da soporte a la calendarización de instrucciones en este objetivo"
-#: toplev.c:5098
+#: toplev.c:4335
msgid "this target machine does not have delayed branches"
msgstr "esta máquina objetivo no tiene ramificaciones retardadas"
-#: toplev.c:5112
+#: toplev.c:4349
#, c-format
msgid "-f%sleading-underscore not supported on this target machine"
msgstr "no se da soporte a -f%sleading-underscore en este objetivo"
-#: toplev.c:5175
+#: toplev.c:4398
+#, fuzzy, c-format
+msgid "target system does not support the \"%s\" debug format"
+msgstr "%1$s no tiene soporte para el formato %4$s `%%%2$s%3$c'"
+
+#: toplev.c:4415
msgid "-ffunction-sections not supported for this target"
msgstr "no se da soporte a -ffunction-sections para este objetivo"
-#: toplev.c:5180
+#: toplev.c:4420
msgid "-fdata-sections not supported for this target"
msgstr "no se da soporte a -fdata-sections para este objetivo"
-#: toplev.c:5187
+#: toplev.c:4427
msgid "-ffunction-sections disabled; it makes profiling impossible"
msgstr "-ffunction-sections desactivado; hace imposible el análisis de perfil"
-#: toplev.c:5194
+#: toplev.c:4434
msgid "-fprefetch-loop-arrays not supported for this target"
msgstr "no se da soporte a -fprefetch-loop-arrays para este objetivo"
-#: toplev.c:5200
+#: toplev.c:4440
msgid "-fprefetch-loop-arrays not supported for this target (try -march switches)"
msgstr "no se da soporte a -fprefetch-loop-arrays para este objetivo (intente los interruptores -march)"
-#: toplev.c:5209
+#: toplev.c:4449
msgid "-fprefetch-loop-arrays is not supported with -Os"
msgstr "-fprefetch-loop-arrays no tiene soporte con -Os"
-#: toplev.c:5215
+#: toplev.c:4455
msgid "-ffunction-sections may affect debugging on some targets"
msgstr "-ffunction-sections podría afectar la depuración en algunos objetivos"
-#: toplev.c:5327
-#, c-format
-msgid "error writing to %s"
+#: toplev.c:4557
+#, fuzzy, c-format
+msgid "error writing to %s: %m"
msgstr "error al escribir a %s"
-#: toplev.c:5329 java/jcf-parse.c:936 java/jcf-write.c:3460
-#, c-format
-msgid "error closing %s"
+#: toplev.c:4559 java/jcf-parse.c:902 java/jcf-write.c:3429
+#, fuzzy, c-format
+msgid "error closing %s: %m"
msgstr "error al cerrar %s"
-#: tree-dump.c:702
+#: tree-dump.c:692
#, c-format
msgid "could not open dump file `%s'"
msgstr "no se puede abrir el fichero de volcado `%s'"
-#: tree-dump.c:778
-#, c-format
-msgid "ignoring unknown option `%.*s' in `-f%s'"
+#: tree-dump.c:763
+#, fuzzy, c-format
+msgid "ignoring unknown option `%.*s' in `-fdump-%s'"
msgstr "ignorando la opción desconocida `%.*s' al final de `-f%s'"
-#: tree.c:3645
+#: tree-inline.c:1016
+msgid "%Jfunction '%F' can never be inlined because it uses alloca (override using the always_inline attribute)"
+msgstr ""
+
+#: tree-inline.c:1029
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp"
+msgstr ""
+
+#: tree-inline.c:1044
+msgid "%Jfunction '%F' can never be inlined because it uses variable argument lists"
+msgstr ""
+
+#: tree-inline.c:1060
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp-longjmp exception handling"
+msgstr ""
+
+#: tree-inline.c:1078
+msgid "%Jfunction '%F' can never be inlined because it contains a nested function"
+msgstr ""
+
+#: tree-inline.c:1095
+msgid "%Jfunction '%F' can never be inlined because it contains a computed goto"
+msgstr ""
+
+#: tree-inline.c:1105
+msgid "%Jfunction '%F' can never be inlined because it contains a nonlocal goto"
+msgstr ""
+
+#: tree-inline.c:1128
+msgid "%Jfunction '%F' can never be inlined because it uses variable sized variables"
+msgstr ""
+
+# ¿Cómo traducir inlining de forma correcta? cfuga
+#: tree-inline.c:1338 tree-inline.c:1345
+#, fuzzy
+msgid "%Jinlining failed in call to '%F': %s"
+msgstr "el `inlining' falló en la llamada a `%s'"
+
+#: tree-optimize.c:190
+#, fuzzy
+msgid "%Jsize of return value of '%D' is %u bytes"
+msgstr "el tamaño del valor de devolución de `%s' es de %u bytes"
+
+#: tree-optimize.c:193
+#, fuzzy
+msgid "%Jsize of return value of '%D' is larger than %wd bytes"
+msgstr "el tamaño del valor de devolución de `%s' es más grande que %d bytes"
+
+#: tree.c:3800
msgid "arrays of functions are not meaningful"
msgstr "las matrices de funciones no tienen significado"
-#: tree.c:3702
+#: tree.c:3855
msgid "function return type cannot be function"
msgstr "el tipo de devolución de función no puede ser función"
-#: tree.c:4557
+#: tree.c:4684
msgid "invalid initializer for bit string"
msgstr "inicializador inválido para la cadena de bits"
-#: tree.c:4616
+#: tree.c:4736
#, c-format
msgid "tree check: expected %s, have %s in %s, at %s:%d"
msgstr "revisión de árbol: se esperaba %s, se tiene %s en %s, en %s:%d"
-#: tree.c:4633
+#: tree.c:4749
#, c-format
msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d"
msgstr "revisión de árbol: es esperaba la clase '%c', se tiene '%c' (%s) en %s, en %s:%d"
-#: tree.c:4650
+#: tree.c:4762
#, c-format
msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
msgstr "revisión de árbol: acceso de elt %d de tree_vec con %d elts en %s, en %s:%d"
-#: varasm.c:455 config/i386/winnt.c:611
-#, c-format
-msgid "%s causes a section type conflict"
+#: tree.c:4774
+#, fuzzy, c-format
+msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
+msgstr "revisión de árbol: acceso de elt %d de tree_vec con %d elts en %s, en %s:%d"
+
+#: varasm.c:434
+#, fuzzy
+msgid "%J%D causes a section type conflict"
msgstr "%s causa un conflicto de tipo de sección"
-#: varasm.c:841
-#, c-format
-msgid "register name not specified for `%s'"
+#: varasm.c:796
+#, fuzzy
+msgid "%Jregister name not specified for '%D'"
msgstr "no se especifica nombre de registro para `%s'"
-#: varasm.c:843
-#, c-format
-msgid "invalid register name for `%s'"
+#: varasm.c:798
+#, fuzzy
+msgid "%Jinvalid register name for '%D'"
msgstr "nombre de registro inválido para `%s'"
-#: varasm.c:846
-#, c-format
-msgid "data type of `%s' isn't suitable for a register"
+#: varasm.c:800
+#, fuzzy
+msgid "%Jdata type of '%D' isn't suitable for a register"
msgstr "el tipo de datos de `%s' no es adecuado para un registro"
-#: varasm.c:849
-#, c-format
-msgid "register specified for `%s' isn't suitable for data type"
+#: varasm.c:803
+#, fuzzy
+msgid "%Jregister specified for '%D' isn't suitable for data type"
msgstr "el registro especificado por `%s' no es adecuado para el tipo de datos"
-#: varasm.c:858
+#: varasm.c:813
msgid "global register variable has initial value"
msgstr "la variable de registro global tiene el valor inicial"
-#: varasm.c:861
+#: varasm.c:816
msgid "volatile register variables don't work as you might wish"
msgstr "las variables de registro volatile no funcionan como usted quisiera"
-#: varasm.c:894
-#, c-format
-msgid "register name given for non-register variable `%s'"
+#: varasm.c:848
+#, fuzzy
+msgid "%Jregister name given for non-register variable '%D'"
msgstr "nombre de registro dado para una variable `%s' que no es registro"
-#: varasm.c:1542
-#, c-format
-msgid "alignment of `%s' is greater than maximum object file alignment. Using %d"
+#: varasm.c:1380
+#, fuzzy
+msgid "%Jstorage size of `%D' isn't known"
+msgstr "no se conoce el tamaño de almacenamiento de `%D'"
+
+#: varasm.c:1434
+#, fuzzy
+msgid "%Jalignment of '%D' is greater than maximum object file alignment. Using %d"
msgstr "la alineación de `%s' es mayor que la alineación máxima del fichero objeto. Se usa %d"
-#: varasm.c:1584
+#: varasm.c:1480
msgid "thread-local COMMON data not implemented"
msgstr "los datos COMMON thread-local no están implentados"
-#: varasm.c:1610
-#, c-format
-msgid "requested alignment for %s is greater than implemented alignment of %d"
+#: varasm.c:1505
+#, fuzzy
+msgid "%Jrequested alignment for '%D' is greater than implemented alignment of %d"
msgstr "la alineación solicitada para %s es mayor que la alineación implementada de %d"
-#: varasm.c:4048
+#: varasm.c:3787
msgid "initializer for integer value is too complicated"
msgstr "el inicializador para un valor entero es demasiado complicado"
-#: varasm.c:4053
+#: varasm.c:3792
msgid "initializer for floating value is not a floating constant"
msgstr "el inicializador para un valor de coma flotante no es una constante de coma flotante"
-#: varasm.c:4120
+#: varasm.c:3858
msgid "unknown set constructor type"
msgstr "conjunto de tipo constructor desconocido"
-#: varasm.c:4334
+#: varasm.c:4077
#, c-format
msgid "invalid initial value for member `%s'"
msgstr "valor inicial inválido para el miembro `%s'"
-#: varasm.c:4525 varasm.c:4568
-#, c-format
-msgid "weak declaration of `%s' must precede definition"
+#: varasm.c:4264 varasm.c:4308
+#, fuzzy
+msgid "%Jweak declaration of '%D' must precede definition"
msgstr "la declaración débil de `%s' debe preceder a la definición"
-#: varasm.c:4532
-#, c-format
-msgid "weak declaration of `%s' after first use results in unspecified behavior"
+#: varasm.c:4272
+#, fuzzy
+msgid "%Jweak declaration of '%D' after first use results in unspecified behavior"
msgstr "la declaración débil de `%s' después del primer uso resulta en una conducta no especificada"
-#: varasm.c:4566
-#, c-format
-msgid "weak declaration of `%s' must be public"
+#: varasm.c:4306
+#, fuzzy
+msgid "%Jweak declaration of '%D' must be public"
msgstr "la declaración débil de `%s' debe ser public"
-#: varasm.c:4575
-#, c-format
-msgid "weak declaration of `%s' not supported"
+#: varasm.c:4315
+#, fuzzy
+msgid "%Jweak declaration of '%D' not supported"
msgstr "la declaración débil de `%s' no tiene soporte"
-#: varasm.c:4602 varasm.c:4677
+#: varasm.c:4344 varasm.c:4434
msgid "only weak aliases are supported in this configuration"
msgstr "sólo los aliases débiles tienen soporte en esta configuración"
-#: varasm.c:4685
+#: varasm.c:4437
msgid "alias definitions not supported in this configuration; ignored"
msgstr "las definiciones de alias no tienen soporte en esta configuración; ignoradas"
-#: varasm.c:4716
+#: varasm.c:4466
msgid "visibility attribute not supported in this configuration; ignored"
msgstr "los atributos de visibilidad no tienen soporte en esta configuración; ignorados"
-#: varray.c:134
+#: varray.c:194
#, c-format
msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d"
msgstr "matriz virtual %s[%lu]: el elemento %lu está fuera del límite en %s, en %s:%d"
+#: varray.c:204
+#, fuzzy, c-format
+msgid "underflowed virtual array %s in %s, at %s:%d"
+msgstr "Error interno del compilador %s, en %s:%d"
+
#. Print an error message for unrecognized stab codes.
-#: xcoffout.c:175
+#: xcoffout.c:173
#, c-format
msgid "no sclass for %s stab (0x%x)\n"
msgstr "no hay sclass para el stab %s (0x%x)\n"
-#: pretty-print.h:97
-#, c-format
-msgid "#`%s' not supported by %s#"
-msgstr "#`%s' no tiene soporte para %s#"
+#.
+#. Local variables:
+#. mode:c
+#. End:
+#.
+#: diagnostic.def:1
+#, fuzzy
+msgid "fatal error: "
+msgstr "error interno: "
+
+#: diagnostic.def:2
+#, fuzzy
+msgid "internal compiler error: "
+msgstr "error interno: "
+
+#: diagnostic.def:3
+#, fuzzy
+msgid "error: "
+msgstr "error interno: "
+
+#: diagnostic.def:4
+#, fuzzy
+msgid "sorry, unimplemented: "
+msgstr "lo sentimos, sin implementar: "
+
+#: diagnostic.def:6
+msgid "anachronism: "
+msgstr ""
+
+#: diagnostic.def:7
+#, fuzzy
+msgid "note: "
+msgstr "nota:"
+
+#: diagnostic.def:8
+msgid "debug: "
+msgstr ""
#: params.def:53
msgid "The maximum number of instructions in a single function eligible for inlining"
@@ -8288,277 +7440,352 @@ msgstr "El número máximo de instrucciones en una sola función elegible para inli
msgid "The maximum number of instructions when automatically inlining"
msgstr "El número máximo de instrucciones cuando se hace inlining automáticamente"
-#: params.def:84
-msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
-msgstr "El número máximo de instrucciones por inlining repetido antes de que gcc comience a descartar inlining"
-
-#: params.def:97
-msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
-msgstr "La pendiente de la función lineal de descarte de inlining antes de que se alcance el límite de inlining recursivo es dada por el valor recíproco negativo de este parámetro"
-
-#: params.def:110
-msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
-msgstr "El número de instrucciones en una sola función para ser aún elegible para inlining después de mucho inlining recursivo"
-
-#: params.def:120
+#: params.def:75
msgid "The maximum number of instructions for the RTL inliner"
msgstr "El número máximo de instrucciones para el inlineador de RTL"
-#: params.def:131
+#: params.def:86
msgid "The maximum number of instructions to consider to fill a delay slot"
msgstr "El número máximo de instrucciones para considerar el llenado de una ranura de retraso"
-#: params.def:142
+#: params.def:97
msgid "The maximum number of instructions to consider to find accurate live register information"
msgstr "El número máximo de instruccions para considerar la búsqueda de información de registros en vivo exacta"
-#: params.def:152
+#: params.def:107
msgid "The maximum length of scheduling's pending operations list"
msgstr "La longitud máxima de la lista de operaciones pendientes del calendarizador"
-#: params.def:159
+#: params.def:112
+msgid "The size of function body to be considered large"
+msgstr ""
+
+#: params.def:116
+#, fuzzy
+msgid "Maximal growth due to inlining of large function (in percent)"
+msgstr "Crecimiento de código maximal causado por duplicación de colas (en porcentajes)"
+
+#: params.def:120
+msgid "how much can given compilation unit grow because of the inlining (in percent)"
+msgstr ""
+
+#: params.def:127
msgid "The maximum amount of memory to be allocated by GCSE"
msgstr "La cantidad máxima de memoria a ser asignada por GCSE"
-#: params.def:164
+#: params.def:132
msgid "The maximum number of passes to make when doing GCSE"
msgstr "El número máximo de pasos a realizar cuando se hace GCSE"
-#: params.def:171
+#: params.def:139
msgid "The maximum number of instructions to consider to unroll in a loop"
msgstr "El número máximo de instrucciones para considerar el desenrollo en un ciclo"
-#: params.def:176
+#: params.def:145
+#, fuzzy
+msgid "The maximum number of instructions to consider to unroll in a loop on average"
+msgstr "El número máximo de instrucciones para considerar el desenrollo en un ciclo"
+
+#: params.def:150
+#, fuzzy
+msgid "The maximum number of unrollings of a single loop"
+msgstr "El número máximo de instrucciones para el inlineador de RTL"
+
+#: params.def:155
+#, fuzzy
+msgid "The maximum number of insns of a peeled loop"
+msgstr "El número máximo de instrucciones para considerar el llenado de una ranura de retraso"
+
+#: params.def:160
+#, fuzzy
+msgid "The maximum number of peelings of a single loop"
+msgstr "El número máximo de pasos a realizar cuando se hace GCSE"
+
+#: params.def:165
+#, fuzzy
+msgid "The maximum number of insns of a completely peeled loop"
+msgstr "El número máximo de instrucciones para considerar el desenrollo en un ciclo"
+
+#: params.def:170
+#, fuzzy
+msgid "The maximum number of peelings of a single loop that is peeled completely"
+msgstr "El número máximo de instrucciones en una sola función elegible para inlining"
+
+#: params.def:175
+#, fuzzy
+msgid "The maximum number of insns of a peeled loop that rolls only once"
+msgstr "El número máximo de instrucciones para el inlineador de RTL"
+
+#: params.def:181
+#, fuzzy
+msgid "The maximum number of insns of an unswitched loop"
+msgstr "El número máximo de instrucciones para considerar el desenrollo en un ciclo"
+
+#: params.def:186
+#, fuzzy
+msgid "The maximum number of unswitchings in a single loop"
+msgstr "El número máximo de instrucciones en una sola función elegible para inlining"
+
+#: params.def:191
msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
msgstr "Seleccionar la fracción de la cuenta maximal de repeticiones del bloque básico en el programa dado el bloque básico necesita ser considerado caliente"
-#: params.def:181
+#: params.def:196
msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
msgstr "Seleccionar la fracción de la frecuencia maximal de ejecuciones de bloque básico en la función dado el bloque básico necesita ser considerado caliente"
-#: params.def:186
+#: params.def:201
msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
msgstr "El porcentaje de la función, evaluado por la frecuencia de ejecución, que debe ser cubierto por la información de rastreo. Se utiliza cuando está disponible la retroalimentación del análisis de perfil"
-#: params.def:191
+#: params.def:206
msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
msgstr "El porcentaje de la función, evaluado por la frecuencia de ejecución, que debe ser cubierto por la información de rastreo. Se utiliza cuando la retroalimentación de análisis de perfil no está disponible"
-#: params.def:196
-msgid "Maximal code growth caused by tail duplication (in percents)"
+#: params.def:211
+#, fuzzy
+msgid "Maximal code growth caused by tail duplication (in percent)"
msgstr "Crecimiento de código maximal causado por duplicación de colas (en porcentajes)"
-#: params.def:200
-msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percents)"
+#: params.def:215
+#, fuzzy
+msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent)"
msgstr "Detener el crecimiento inverso si la probabilidad reversa del mejor borde es menor a este intervalo (en porcentajes)"
-#: params.def:205
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is available"
+#: params.def:220
+#, fuzzy
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is available"
msgstr "Detener el crecimiento hacia adelante si la probabilidad del mejor borde es menor que este intervalo. Se utiliza cuando la retroalimentación de análisis de perfil está disponible"
-#: params.def:210
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is not available"
+#: params.def:225
+#, fuzzy
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is not available"
msgstr "Detener el crecimiento hacia adelante si la probabilidad del mejor borde es menor a este intervalo. Se utiliza cuando la retroalimentación de análisis de perfil no está disponible"
-#: params.def:217
+#: params.def:232
msgid "The maximum number of incoming edges to consider for crossjumping"
msgstr "El número máximo de bordes de entrada para considerar el salto cruzado"
-#: params.def:230
-msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap."
+#: params.def:238
+#, fuzzy
+msgid "The maximum length of path considered in cse"
+msgstr "La longitud máxima de la lista de operaciones pendientes del calendarizador"
+
+#: params.def:243
+#, fuzzy
+msgid "The maximum memory locations recorded by cselib"
+msgstr "El número máximo de instrucciones para el inlineador de RTL"
+
+#: params.def:256
+#, fuzzy
+msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap"
msgstr "Expansión mínima de la pila para iniciar la recolección de basura, como un porcentaje del tamaño total de la pila."
-#: params.def:236
-msgid "Minimum heap size before we start collecting garbage, in kilobytes."
+#: params.def:262
+#, fuzzy
+msgid "Minimum heap size before we start collecting garbage, in kilobytes"
msgstr "Tamaño mínimo de la pila antes de comenzar a recolectar basura, en kilobytes."
+#: params.def:270
+#, fuzzy
+msgid "The maximum number of instructions to search backward when looking for equivalent reload"
+msgstr "El número máximo de instrucciones para considerar el desenrollo en un ciclo"
+
#: config/darwin-c.c:75
msgid "too many #pragma options align=reset"
msgstr "demasiadas opciones #pragma align=reset"
-#: config/darwin-c.c:97 config/darwin-c.c:100 config/darwin-c.c:102
-#: config/darwin-c.c:104
+#: config/darwin-c.c:95 config/darwin-c.c:98 config/darwin-c.c:100
+#: config/darwin-c.c:102
msgid "malformed '#pragma options', ignoring"
msgstr "'#pragma options' malformado, ignorando"
-#: config/darwin-c.c:107
+#: config/darwin-c.c:105
msgid "junk at end of '#pragma options'"
msgstr "basura al final de '#pragma options'"
-#: config/darwin-c.c:117
+#: config/darwin-c.c:115
msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring"
msgstr "'#pragma options align={mac68k|power|reset}' malformado, ignorando"
-#: config/darwin-c.c:130
+#: config/darwin-c.c:127
msgid "missing '(' after '#pragma unused', ignoring"
msgstr "falta un '(' después de '#pragma unused', ignorando"
-#: config/darwin-c.c:148
+#: config/darwin-c.c:145
msgid "missing ')' after '#pragma unused', ignoring"
msgstr "falta un '(' después de '#pragma unused', ignorando"
-#: config/darwin-c.c:151
+#: config/darwin-c.c:148
msgid "junk at end of '#pragma unused'"
msgstr "basura al final de '#pragma unused'"
-#: config/lynx-ng.h:97 config/lynx.h:121 config/rs6000/lynx.h:100
+#: config/darwin.c:1347
+#, fuzzy
+msgid "internal and protected visibility attributes not supportedin this configuration; ignored"
+msgstr "los atributos de visibilidad no tienen soporte en esta configuración; ignorados"
+
+#: config/lynx-ng.h:97 config/lynx.h:116 config/rs6000/lynx.h:73
msgid "-msystem-v and -p are incompatible"
msgstr "-msystem-v y -p son incompatibles"
-#: config/lynx-ng.h:99 config/lynx.h:123 config/rs6000/lynx.h:102
+#: config/lynx-ng.h:99 config/lynx.h:118 config/rs6000/lynx.h:75
msgid "-msystem-v and -mthreads are incompatible"
msgstr "-msystem-v y -mthreads son incompatibles"
-#: config/alpha/alpha.c:342
+#: config/windiss.h:37
+#, fuzzy
+msgid "profiler support for WindISS"
+msgstr "soporte para function_profiler para MMIX"
+
+#: config/alpha/alpha.c:231
#, c-format
msgid "-f%s ignored for Unicos/Mk (not supported)"
msgstr "se ignora -f%s para Unicos/Mk (sin soporte)"
-#: config/alpha/alpha.c:366
+#: config/alpha/alpha.c:255
msgid "-mieee not supported on Unicos/Mk"
msgstr "-mieee no tiene soporte en Unicos/Mk"
-#: config/alpha/alpha.c:377
+#: config/alpha/alpha.c:266
msgid "-mieee-with-inexact not supported on Unicos/Mk"
msgstr "-mieee-with-inexact no tiene soporte en Unicos/Mk"
-#: config/alpha/alpha.c:394
+#: config/alpha/alpha.c:283
#, c-format
msgid "bad value `%s' for -mtrap-precision switch"
msgstr "valor erróneo `%s' para el interruptor -mtrap-precision"
-#: config/alpha/alpha.c:408
+#: config/alpha/alpha.c:297
#, c-format
msgid "bad value `%s' for -mfp-rounding-mode switch"
msgstr "valor erróneo `%s' para el interruptor -mfp-rounding-mode"
-#: config/alpha/alpha.c:423
+#: config/alpha/alpha.c:312
#, c-format
msgid "bad value `%s' for -mfp-trap-mode switch"
msgstr "valor erróneo `%s' para el interruptor -mfp-trap-mode"
-#: config/alpha/alpha.c:435
+#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1063
#, c-format
msgid "bad value `%s' for -mtls-size switch"
msgstr "valor erróneo `%s' para el interruptor -mtls-size"
-#: config/alpha/alpha.c:454 config/alpha/alpha.c:466
+#: config/alpha/alpha.c:343 config/alpha/alpha.c:355
#, c-format
msgid "bad value `%s' for -mcpu switch"
msgstr "valor erróneo `%s' para el interruptor -mcpu"
-#: config/alpha/alpha.c:473
+#: config/alpha/alpha.c:362
msgid "trap mode not supported on Unicos/Mk"
msgstr "el modo de captura no tiene soporte en Unicos/Mk"
-#: config/alpha/alpha.c:480
+#: config/alpha/alpha.c:369
msgid "fp software completion requires -mtrap-precision=i"
msgstr "el completado por software de fp requiere una opción -mtrap-precision=i"
-#: config/alpha/alpha.c:496
+#: config/alpha/alpha.c:385
msgid "rounding mode not supported for VAX floats"
msgstr "el modo de redondeo no tiene soporte para floats de VAX"
-#: config/alpha/alpha.c:501
+#: config/alpha/alpha.c:390
msgid "trap mode not supported for VAX floats"
msgstr "el modo de captura no tiene soporte para valores de coma flotante VAX"
-#: config/alpha/alpha.c:530
+#: config/alpha/alpha.c:419
#, c-format
msgid "L%d cache latency unknown for %s"
msgstr "latencia de caché L%d desconocida para %s"
-#: config/alpha/alpha.c:545
+#: config/alpha/alpha.c:434
#, c-format
msgid "bad value `%s' for -mmemory-latency"
msgstr "valor erróneo `%s' para -mmemory-latency"
-#: config/alpha/alpha.c:5604 config/m88k/m88k.c:2889 config/romp/romp.c:754
-#: config/romp/romp.c:761
+#: config/alpha/alpha.c:5411
#, c-format
msgid "invalid %%H value"
msgstr "valor %%H inválido"
-#: config/alpha/alpha.c:5625
+#: config/alpha/alpha.c:5432
#, c-format
msgid "invalid %%J value"
msgstr "valor %%J inválido"
-#: config/alpha/alpha.c:5641 config/ia64/ia64.c:3970 config/m88k/m88k.c:3034
+#: config/alpha/alpha.c:5448 config/ia64/ia64.c:4243
#, c-format
msgid "invalid %%r value"
msgstr "valor %%r inválido"
-#: config/alpha/alpha.c:5651 config/rs6000/rs6000.c:7737
+#: config/alpha/alpha.c:5458 config/rs6000/rs6000.c:8944
+#: config/xtensa/xtensa.c:1999
#, c-format
msgid "invalid %%R value"
msgstr "valor %%R inválido"
-#: config/alpha/alpha.c:5657 config/rs6000/rs6000.c:7663
+#: config/alpha/alpha.c:5464 config/rs6000/rs6000.c:8863
+#: config/xtensa/xtensa.c:1966
#, c-format
msgid "invalid %%N value"
msgstr "valor %%N inválido"
-#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:7691
+#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:8891
#, c-format
msgid "invalid %%P value"
msgstr "valor %%P inválido"
-#: config/alpha/alpha.c:5673 config/m88k/m88k.c:2895 config/romp/romp.c:740
-#: config/romp/romp.c:747
+#: config/alpha/alpha.c:5480
#, c-format
msgid "invalid %%h value"
msgstr "valor %%h inválido"
-#: config/alpha/alpha.c:5681 config/romp/romp.c:698
+#: config/alpha/alpha.c:5488 config/xtensa/xtensa.c:1992
#, c-format
msgid "invalid %%L value"
msgstr "valor %%L inválido"
-#: config/alpha/alpha.c:5720 config/rs6000/rs6000.c:7645
+#: config/alpha/alpha.c:5527 config/rs6000/rs6000.c:8845
#, c-format
msgid "invalid %%m value"
msgstr "valor %%m inválido"
-#: config/alpha/alpha.c:5728 config/rs6000/rs6000.c:7653
+#: config/alpha/alpha.c:5535 config/rs6000/rs6000.c:8853
#, c-format
msgid "invalid %%M value"
msgstr "valor %%M inválido"
-#: config/alpha/alpha.c:5772
+#: config/alpha/alpha.c:5579
#, c-format
msgid "invalid %%U value"
msgstr "valor %%U inválido"
-#: config/alpha/alpha.c:5784 config/alpha/alpha.c:5798 config/romp/romp.c:706
-#: config/rs6000/rs6000.c:7745
+#: config/alpha/alpha.c:5591 config/alpha/alpha.c:5605
+#: config/rs6000/rs6000.c:8952
#, c-format
msgid "invalid %%s value"
msgstr "valor %%s inválido"
-#: config/alpha/alpha.c:5821 config/m88k/m88k.c:2997
+#: config/alpha/alpha.c:5628
#, c-format
msgid "invalid %%C value"
msgstr "valor %%C inválido"
-#: config/alpha/alpha.c:5858 config/m88k/m88k.c:3018
-#: config/rs6000/rs6000.c:7502
+#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:8702
#, c-format
msgid "invalid %%E value"
msgstr "valor %%E inválido"
-#: config/alpha/alpha.c:5883 config/alpha/alpha.c:5933
+#: config/alpha/alpha.c:5690 config/alpha/alpha.c:5738
msgid "unknown relocation unspec"
msgstr "reubicación unspec desconocida"
-#: config/alpha/alpha.c:5892 config/romp/romp.c:981
-#: config/rs6000/rs6000.c:8052
+#: config/alpha/alpha.c:5699 config/rs6000/rs6000.c:9265
#, c-format
msgid "invalid %%xn code"
msgstr "código %%xn inválido"
-#: config/alpha/alpha.c:6618 config/alpha/alpha.c:6621 config/s390/s390.c:6069
-#: config/s390/s390.c:6072
+#: config/alpha/alpha.c:6634 config/alpha/alpha.c:6637 config/s390/s390.c:6572
+#: config/s390/s390.c:6575
msgid "bad builtin fcode"
msgstr "fcode interno erróneo"
@@ -8567,87 +7794,99 @@ msgstr "fcode interno erróneo"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/alpha/alpha.h:279 config/i386/i386.h:294 config/i386/i386.h:296
-#: config/i386/i386.h:298 config/ns32k/ns32k.h:140 config/rs6000/rs6000.h:292
-#: config/s390/s390.h:68 config/sparc/sparc.h:522 config/sparc/sparc.h:527
+#. WARNING: Do not mark empty strings for translation, as calling
+#. gettext on an empty string does NOT return an empty
+#. string.
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/alpha/alpha.h:286 config/i386/i386.h:327 config/i386/i386.h:329
+#: config/i386/i386.h:331 config/ns32k/ns32k.h:140 config/s390/s390.h:124
+#: config/sparc/sparc.h:537 config/sparc/sparc.h:542
msgid "Use hardware fp"
msgstr "Usar fp de hardware"
-#: config/alpha/alpha.h:280 config/i386/i386.h:295 config/i386/i386.h:297
-#: config/rs6000/rs6000.h:294 config/sparc/sparc.h:524
-#: config/sparc/sparc.h:529
+#: config/alpha/alpha.h:287 config/i386/i386.h:328 config/i386/i386.h:330
+#: config/sparc/sparc.h:539 config/sparc/sparc.h:544
msgid "Do not use hardware fp"
msgstr "No usar fp de hardware"
-#: config/alpha/alpha.h:281
+#: config/alpha/alpha.h:288
msgid "Use fp registers"
msgstr "Usar registros fp"
-#: config/alpha/alpha.h:283
+#: config/alpha/alpha.h:290
msgid "Do not use fp registers"
msgstr "No usar registros fp"
-#: config/alpha/alpha.h:284
+#: config/alpha/alpha.h:291
msgid "Do not assume GAS"
msgstr "No asumir GAS"
-#: config/alpha/alpha.h:285
+#: config/alpha/alpha.h:292
msgid "Assume GAS"
msgstr "Asumir GAS"
-#: config/alpha/alpha.h:287
+#: config/alpha/alpha.h:294
msgid "Request IEEE-conformant math library routines (OSF/1)"
msgstr "Requerir rutinas de biblioteca matemática que cumplan con IEEE (OSF/1)"
-#: config/alpha/alpha.h:289
+#: config/alpha/alpha.h:296
msgid "Emit IEEE-conformant code, without inexact exceptions"
msgstr "Emitir código que cumpla con IEEE, sin excepciones inexactas"
-#: config/alpha/alpha.h:291
+#: config/alpha/alpha.h:298
msgid "Emit IEEE-conformant code, with inexact exceptions"
msgstr "Emitir código que cumpla con IEEE, con excepciones inexactas"
-#: config/alpha/alpha.h:293
+#: config/alpha/alpha.h:300
msgid "Do not emit complex integer constants to read-only memory"
msgstr "No emitir constantes enteras complejas a memoria de sólo lectura"
-#: config/alpha/alpha.h:294
+#: config/alpha/alpha.h:301
msgid "Use VAX fp"
msgstr "Usar fp VAX"
-#: config/alpha/alpha.h:295
+#: config/alpha/alpha.h:302
msgid "Do not use VAX fp"
msgstr "No usar fp VAX"
-#: config/alpha/alpha.h:296
+#: config/alpha/alpha.h:303
msgid "Emit code for the byte/word ISA extension"
msgstr "Emitir código para la extensión ISA byte/word"
-#: config/alpha/alpha.h:299
+#: config/alpha/alpha.h:306
msgid "Emit code for the motion video ISA extension"
msgstr "Emitir código para la extensión ISA de video en movimiento"
-#: config/alpha/alpha.h:302
+#: config/alpha/alpha.h:309
msgid "Emit code for the fp move and sqrt ISA extension"
msgstr "Emitir código para la extensión ISA de move y sqrt de fp"
-#: config/alpha/alpha.h:304
+#: config/alpha/alpha.h:311
msgid "Emit code for the counting ISA extension"
msgstr "Emitir código para la extensión ISA de conteo"
-#: config/alpha/alpha.h:307
+#: config/alpha/alpha.h:314
msgid "Emit code using explicit relocation directives"
msgstr "Emitir código usando directivas explícitas de reubicación"
-#: config/alpha/alpha.h:310
+#: config/alpha/alpha.h:317
msgid "Emit 16-bit relocations to the small data areas"
msgstr "Emitir reubicaciones de 16-bit a las áreas de datos small"
-#: config/alpha/alpha.h:312
+#: config/alpha/alpha.h:319
msgid "Emit 32-bit relocations to the small data areas"
msgstr "Emitir reubicaciones de 32-bit a las áreas de datos small"
-#: config/alpha/alpha.h:314
+#: config/alpha/alpha.h:321
+#, fuzzy
+msgid "Emit direct branches to local functions"
+msgstr "Omitir el marco de referencia para las funciones hojas"
+
+#: config/alpha/alpha.h:324
msgid "Emit rdval instead of rduniq for thread pointer"
msgstr "Emitir rdval en lugar de rduniq para un puntero thread"
@@ -8658,293 +7897,316 @@ msgstr "Emitir rdval en lugar de rduniq para un puntero thread"
#. For -mtrap-precision=[p|f|i]
#. For -mmemory-latency=
#. For -mtls-size=
-#: config/alpha/alpha.h:343
+#: config/alpha/alpha.h:353
msgid "Use features of and schedule given CPU"
msgstr "Usar las características de y el calendarizador del CPU dado"
-#: config/alpha/alpha.h:345
+#: config/alpha/alpha.h:355
msgid "Schedule given CPU"
msgstr "Calendarizador para el CPU dado"
-#: config/alpha/alpha.h:347
+#: config/alpha/alpha.h:357
msgid "Control the generated fp rounding mode"
msgstr "Controlar el modo de redondeo generado de fp"
-#: config/alpha/alpha.h:349
+#: config/alpha/alpha.h:359
msgid "Control the IEEE trap mode"
msgstr "Controlar el modo de captura IEEE"
-#: config/alpha/alpha.h:351
+#: config/alpha/alpha.h:361
msgid "Control the precision given to fp exceptions"
msgstr "Controlar la precisión dada a las excepciones de fp"
-#: config/alpha/alpha.h:353
+#: config/alpha/alpha.h:363
msgid "Tune expected memory latency"
msgstr "Ajustar la latencia esperada de memoria"
-#: config/alpha/alpha.h:355 config/ia64/ia64.h:225
+#: config/alpha/alpha.h:365 config/ia64/ia64.h:267 config/rs6000/sysv4.h:90
msgid "Specify bit size of immediate TLS offsets"
msgstr "Especificar el tamaño de bit para los desplazamientos TLS inmediatos"
-#: config/arc/arc.c:135
+#: config/arc/arc.c:147
#, c-format
msgid "bad value (%s) for -mcpu switch"
msgstr "valor erróneo (%s) para el interruptor -mcpu"
-#: config/arc/arc.c:362
+#: config/arc/arc.c:369
#, c-format
msgid "argument of `%s' attribute is not a string constant"
msgstr "el argumento del atributo `%s' no es una cadena constante"
-#: config/arc/arc.c:369
+#: config/arc/arc.c:376
#, c-format
msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\""
msgstr "el argumento del atributo `%s' no es \"ilink1\" o \"ilink2\""
-#: config/arc/arc.c:1708 config/m32r/m32r.c:2286
+#: config/arc/arc.c:1714 config/m32r/m32r.c:2325
#, c-format
msgid "invalid operand to %%R code"
msgstr "operando inválido para el código %%R"
-#: config/arc/arc.c:1740 config/m32r/m32r.c:2309
+#: config/arc/arc.c:1746 config/m32r/m32r.c:2348
#, c-format
msgid "invalid operand to %%H/%%L code"
msgstr "operando inválido para el código %%H%%L"
-#: config/arc/arc.c:1763 config/m32r/m32r.c:2385
+#: config/arc/arc.c:1769 config/m32r/m32r.c:2419
#, c-format
msgid "invalid operand to %%U code"
msgstr "operando inválido para el código %%U"
-#: config/arc/arc.c:1774
+#: config/arc/arc.c:1780
#, c-format
msgid "invalid operand to %%V code"
msgstr "operando inválido para el código %%V"
#. Unknown flag.
-#: config/arc/arc.c:1781 config/m32r/m32r.c:2424 config/sparc/sparc.c:6533
+#. Undocumented flag.
+#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985
msgid "invalid operand output code"
msgstr "operando inválido para el código de salida"
-#: config/arm/arm.c:458
+#: config/arm/arm.c:520
#, c-format
msgid "switch -mcpu=%s conflicts with -march= switch"
msgstr "el interruptor -mcpu=%s genera conflictos con el switch -march="
-#: config/arm/arm.c:468 config/rs6000/rs6000.c:558 config/sparc/sparc.c:393
+#: config/arm/arm.c:530 config/rs6000/rs6000.c:759 config/sparc/sparc.c:424
#, c-format
msgid "bad value (%s) for %s switch"
msgstr "valor erróneo (%s) para el interruptor %s"
-#: config/arm/arm.c:604
+#: config/arm/arm.c:672
msgid "target CPU does not support APCS-32"
msgstr "el CPU objetivo no tiene soporte para APCS-32"
-#: config/arm/arm.c:609
+#: config/arm/arm.c:677
msgid "target CPU does not support APCS-26"
msgstr "el CPU objetivo no tiene soporte para APCS-26"
-#: config/arm/arm.c:615
+#: config/arm/arm.c:683
msgid "target CPU does not support interworking"
msgstr "el CPU objetivo no tiene soporte para trabajo interno"
-#: config/arm/arm.c:621
+#: config/arm/arm.c:689
msgid "target CPU does not support THUMB instructions"
msgstr "el CPU objetivo no tiene soporte para las instrucciones THUMB"
-#: config/arm/arm.c:635
+#: config/arm/arm.c:703
msgid "enabling backtrace support is only meaningful when compiling for the Thumb"
msgstr "habilitar el soporte de rastreo hacia atrás sólo tiene significado cuando se compila para el Thumb"
# ¿callee? cfuga
-#: config/arm/arm.c:638
+#: config/arm/arm.c:706
msgid "enabling callee interworking support is only meaningful when compiling for the Thumb"
msgstr "habilitar el soporte de trabajo interno de llamadas sólo tiene significado cuando se compila para el Thumb"
-#: config/arm/arm.c:641
+#: config/arm/arm.c:709
msgid "enabling caller interworking support is only meaningful when compiling for the Thumb"
msgstr "habilitar el soporte de trabajo interno de llamado sólo tiene significado cuando se compila para el Thumb"
-#: config/arm/arm.c:647
+#: config/arm/arm.c:715
msgid "interworking forces APCS-32 to be used"
msgstr "el trabajo interno forza el uso de APCS-32"
-#: config/arm/arm.c:653
+#: config/arm/arm.c:721
msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
msgstr "-mapcs-stack-check es incompatible con -mno-apcs-frame"
-#: config/arm/arm.c:661
+#: config/arm/arm.c:729
msgid "-fpic and -mapcs-reent are incompatible"
msgstr "-fpic y -mapcs-reent son incompatibles"
-#: config/arm/arm.c:664
+#: config/arm/arm.c:732
msgid "APCS reentrant code not supported. Ignored"
msgstr "no se soporta el código reentrante APCS. Ignorado"
-#: config/arm/arm.c:672
+#: config/arm/arm.c:740
msgid "-g with -mno-apcs-frame may not give sensible debugging"
msgstr "-g con -mno-apcs-frame no permite una depuración sensible"
-#: config/arm/arm.c:680
+#: config/arm/arm.c:748
msgid "passing floating point arguments in fp regs not yet supported"
msgstr "aún no se soporta pasar argumentos de coma flotante en registros fp"
-#: config/arm/arm.c:709
+#: config/arm/arm.c:792
#, c-format
msgid "invalid floating point emulation option: -mfpe-%s"
msgstr "opción de emulación de coma flotante inválida: -mfpe-%s"
-#: config/arm/arm.c:733
+#: config/arm/arm.c:803
+msgid "-mfpe switch not supported by ep9312 target cpu - ignored."
+msgstr ""
+
+#: config/arm/arm.c:823
msgid "structure size boundary can only be set to 8 or 32"
msgstr "el límite del tamaño de la estructura sólo puede establecerse a 8 o 32"
-#: config/arm/arm.c:741
+#: config/arm/arm.c:831
msgid "-mpic-register= is useless without -fpic"
msgstr "-mpic-register= es inútil sin -fpic"
-#: config/arm/arm.c:748
+#: config/arm/arm.c:838
#, c-format
msgid "unable to use '%s' for PIC register"
msgstr "no se puede usar '%s' para registro PIC"
-#: config/arm/arm.c:2064 config/arm/arm.c:2087 config/avr/avr.c:4794
-#: config/c4x/c4x.c:4644 config/h8300/h8300.c:3667 config/i386/i386.c:1396
-#: config/i386/i386.c:1425 config/ip2k/ip2k.c:3224
-#: config/m68hc11/m68hc11.c:1267 config/mcore/mcore.c:3510
-#: config/ns32k/ns32k.c:1047 config/rs6000/rs6000.c:12538 config/sh/sh.c:5681
-#: config/sh/sh.c:5706 config/sh/sh.c:5745 config/stormy16/stormy16.c:2026
-#: config/v850/v850.c:2180
+#: config/arm/arm.c:2246 config/arm/arm.c:2264 config/avr/avr.c:4558
+#: config/c4x/c4x.c:4447 config/h8300/h8300.c:4257 config/i386/i386.c:1571
+#: config/i386/i386.c:1617 config/ip2k/ip2k.c:3169
+#: config/m68hc11/m68hc11.c:1227 config/m68k/m68k.c:333
+#: config/mcore/mcore.c:3375 config/ns32k/ns32k.c:1064
+#: config/rs6000/rs6000.c:14556 config/sh/sh.c:6737 config/sh/sh.c:6758
+#: config/sh/sh.c:6793 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173
#, c-format
msgid "`%s' attribute only applies to functions"
msgstr "el atributo `%s' se aplica solamente a funciones"
-#: config/arm/arm.c:9459
+#: config/arm/arm.c:10573
msgid "unable to compute real location of stacked parameter"
msgstr "no se puede calcular la ubicación real del parámetro apilado"
-#: config/arm/arm.c:10138
+#. @@@ better error message
+#: config/arm/arm.c:11201 config/arm/arm.c:11238
+msgid "selector must be an immediate"
+msgstr "el selector debe ser un inmediato"
+
+#. @@@ better error message
+#: config/arm/arm.c:11281 config/i386/i386.c:14219 config/i386/i386.c:14253
+msgid "mask must be an immediate"
+msgstr "la máscara debe ser un inmediato"
+
+#: config/arm/arm.c:11976
msgid "no low registers available for popping high registers"
msgstr "no hay registros inferiores disponibles para almacenar registros superiores"
-#: config/arm/arm.c:10389
+#: config/arm/arm.c:12226
msgid "interrupt Service Routines cannot be coded in Thumb mode"
msgstr "no se pueden codificar las Rutinas de Servicios de Interrupción en el modo Thumb"
-#: config/arm/pe.c:168 config/mcore/mcore.c:3358
-#, c-format
-msgid "initialized variable `%s' is marked dllimport"
+#: config/arm/pe.c:170 config/mcore/mcore.c:3241
+#, fuzzy
+msgid "%Jinitialized variable '%D' is marked dllimport"
msgstr "la variable inicializada `%s' está marcada como dllimport"
-#: config/arm/pe.c:177
-#, c-format
-msgid "static variable `%s' is marked dllimport"
+#: config/arm/pe.c:179
+#, fuzzy
+msgid "%Jstatic variable '%D' is marked dllimport"
msgstr "la variable estática `%s' está marcada como dllimport"
-#: config/arm/arm.h:416
+#: config/arm/arm.h:450
msgid "Generate APCS conformant stack frames"
msgstr "Generar marcos de pila que cumplan con APCS"
-#: config/arm/arm.h:419
+#: config/arm/arm.h:453
msgid "Store function names in object code"
msgstr "Almacenar nombres de función en el código objeto"
-#: config/arm/arm.h:423
+#: config/arm/arm.h:457
msgid "Use the 32-bit version of the APCS"
msgstr "Usar la versión 32-bit del APCS"
-#: config/arm/arm.h:425
+#: config/arm/arm.h:459
msgid "Use the 26-bit version of the APCS"
msgstr "Usar la versión 26-bit del APCS"
-#: config/arm/arm.h:429
+#: config/arm/arm.h:463
msgid "Pass FP arguments in FP registers"
msgstr "Pasar los argumentos FP en los registros FP"
-#: config/arm/arm.h:432
+#: config/arm/arm.h:466
msgid "Generate re-entrant, PIC code"
msgstr "Generar código PIC reentrante"
-#: config/arm/arm.h:435
+#: config/arm/arm.h:469
msgid "The MMU will trap on unaligned accesses"
msgstr "La MMU atrapará los accesos no alineados"
-#: config/arm/arm.h:442
+#: config/arm/arm.h:476
msgid "Use library calls to perform FP operations"
msgstr "Usar llamadas a bibliotecas para realizar las operaciones de FP"
-#: config/arm/arm.h:444 config/i960/i960.h:281
+#: config/arm/arm.h:478 config/i960/i960.h:291
msgid "Use hardware floating point instructions"
msgstr "Usar instrucciones de hardware para coma flotante"
-#: config/arm/arm.h:446
+#: config/arm/arm.h:480
msgid "Assume target CPU is configured as big endian"
msgstr "Asumir que el CPU destino está configurado como big endian"
-#: config/arm/arm.h:448
+#: config/arm/arm.h:482
msgid "Assume target CPU is configured as little endian"
msgstr "Asumir que el CPU destino está configurado como little endian"
-#: config/arm/arm.h:450
+#: config/arm/arm.h:484
msgid "Assume big endian bytes, little endian words"
msgstr "Asumir bytes big endian, words little endian"
-#: config/arm/arm.h:452
+#: config/arm/arm.h:486
msgid "Support calls between Thumb and ARM instruction sets"
msgstr "Soporte a llamadas entre los conjuntos de instrucciones Thumb y ARM"
-#: config/arm/arm.h:455
+#: config/arm/arm.h:489
msgid "Generate a call to abort if a noreturn function returns"
msgstr "Generar una llamada a abortar si una funcion noreturn devuelve"
-#: config/arm/arm.h:458
+#: config/arm/arm.h:492
msgid "Do not move instructions into a function's prologue"
msgstr "No mover las instrucciones al prólogo de una función"
-#: config/arm/arm.h:461
+#: config/arm/arm.h:495
msgid "Do not load the PIC register in function prologues"
msgstr "No cargar el registro PIC en los prólogos de función"
-#: config/arm/arm.h:464
+#: config/arm/arm.h:498
msgid "Generate call insns as indirect calls, if necessary"
msgstr "Generar las llamadas insns como llamadas indirectas, si es necesario"
-#: config/arm/arm.h:467
+#: config/arm/arm.h:501
msgid "Compile for the Thumb not the ARM"
msgstr "Compilar para el Thumb on para el ARM"
-#: config/arm/arm.h:471
+#: config/arm/arm.h:505
msgid "Thumb: Generate (non-leaf) stack frames even if not needed"
msgstr "Thumb: Generar marcos de pila (no-hojas) aún si no es necesario"
-#: config/arm/arm.h:474
+#: config/arm/arm.h:508
msgid "Thumb: Generate (leaf) stack frames even if not needed"
msgstr "Thumb: Generar marcos de pila (hojas) aún si no es necesario"
-#: config/arm/arm.h:477
+#: config/arm/arm.h:511
msgid "Thumb: Assume non-static functions may be called from ARM code"
msgstr "Thumb: Asumir que las funciones no static pueden ser llamadas desde código ARM"
-#: config/arm/arm.h:481
+#: config/arm/arm.h:515
msgid "Thumb: Assume function pointers may go to non-Thumb aware code"
msgstr "Thumb: Asumir que los punteros de función pueden ir a código no informado sobre Thumb"
-#: config/arm/arm.h:491
+#: config/arm/arm.h:519
+msgid "Cirrus: Place NOPs to avoid invalid instruction combinations"
+msgstr ""
+
+#: config/arm/arm.h:521
+msgid "Cirrus: Do not break up invalid instruction combinations with NOPs"
+msgstr ""
+
+#: config/arm/arm.h:529
msgid "Specify the name of the target CPU"
msgstr "Especificar el nombre del CPU destino"
-#: config/arm/arm.h:493
+#: config/arm/arm.h:531
msgid "Specify the name of the target architecture"
msgstr "Especificar el nombre de la arquitectura destino"
-#: config/arm/arm.h:497
+#: config/arm/arm.h:535
msgid "Specify the version of the floating point emulator"
msgstr "Especificar la versión del emulador de coma flotante"
-#: config/arm/arm.h:499
+#: config/arm/arm.h:537
msgid "Specify the minimum bit alignment of structures"
msgstr "Especificar la alineación mínima de bit de las estructuras"
-#: config/arm/arm.h:501
+#: config/arm/arm.h:539
msgid "Specify the register to be used for PIC addressing"
msgstr "Especificar el registro a usar para el direccionamiento PIC"
@@ -8952,92 +8214,92 @@ msgstr "Especificar el registro a usar para el direccionamiento PIC"
msgid "Ignore dllimport attribute for functions"
msgstr "Ignorar el atributo dllimport para las funciones"
-#: config/avr/avr.c:528
+#: config/avr/avr.c:514
#, c-format
msgid "large frame pointer change (%d) with -mtiny-stack"
msgstr "cambio de puntero de marco grande (%d) con -mtiny-stack"
-#: config/avr/avr.c:1135
+#: config/avr/avr.c:1101
msgid "bad address, not (reg+disp):"
msgstr "dirección errónea, no (reg+disp)"
-#: config/avr/avr.c:1143
+#: config/avr/avr.c:1109
msgid "internal compiler error. Bad address:"
msgstr "error interno del compilador. Dirección errónea:"
-#: config/avr/avr.c:1156
+#: config/avr/avr.c:1122
msgid "internal compiler error. Unknown mode:"
msgstr "error interno del compilador. Modo desconocido:"
-#: config/avr/avr.c:1864 config/avr/avr.c:2576
+#: config/avr/avr.c:1744 config/avr/avr.c:2405
msgid "invalid insn:"
msgstr "insn inválido:"
-#: config/avr/avr.c:1901 config/avr/avr.c:1987 config/avr/avr.c:2036
-#: config/avr/avr.c:2045 config/avr/avr.c:2143 config/avr/avr.c:2315
-#: config/avr/avr.c:2613 config/avr/avr.c:2724
+#: config/avr/avr.c:1778 config/avr/avr.c:1861 config/avr/avr.c:1910
+#: config/avr/avr.c:1919 config/avr/avr.c:2014 config/avr/avr.c:2183
+#: config/avr/avr.c:2439 config/avr/avr.c:2547
msgid "incorrect insn:"
msgstr "insn incorrecto:"
-#: config/avr/avr.c:2064 config/avr/avr.c:2228 config/avr/avr.c:2386
-#: config/avr/avr.c:2768
+#: config/avr/avr.c:1938 config/avr/avr.c:2099 config/avr/avr.c:2254
+#: config/avr/avr.c:2591
msgid "unknown move insn:"
msgstr "movimiento insn desconocido:"
-#: config/avr/avr.c:3003
+#: config/avr/avr.c:2814
msgid "bad shift insn:"
msgstr "desplazamiento insn erróneo:"
-#: config/avr/avr.c:3119 config/avr/avr.c:3549 config/avr/avr.c:3929
+#: config/avr/avr.c:2927 config/avr/avr.c:3348 config/avr/avr.c:3719
msgid "internal compiler error. Incorrect shift:"
msgstr "error interno del compilador. Desplazamiento incorrecto:"
-#: config/avr/avr.c:4767 config/ip2k/ip2k.c:3197
+#: config/avr/avr.c:4532 config/ip2k/ip2k.c:3144
msgid "only initialized variables can be placed into program memory area"
msgstr "sólo las variables inicializadas se pueden ubicar en el área de memoria del programa"
-#: config/avr/avr.c:4866
+#: config/avr/avr.c:4626
msgid "only uninitialized variables can be placed in the .noinit section"
msgstr "Sólo las variables sin inicializar se pueden colocar en la sección .noinit"
-#: config/avr/avr.c:4881
+#: config/avr/avr.c:4640
#, c-format
msgid "MCU `%s' supported for assembler only"
msgstr "MCU `%s' sólo tiene soporte para ensamblador"
-#: config/avr/avr.h:78
+#: config/avr/avr.h:73
msgid "Assume int to be 8 bit integer"
msgstr "Asumir que int sea entero de 8 bit"
-#: config/avr/avr.h:80
+#: config/avr/avr.h:75
msgid "Change the stack pointer without disabling interrupts"
msgstr "Cambiar el puntero de la pila sin desactivar las interrupciones"
-#: config/avr/avr.h:82
+#: config/avr/avr.h:77
msgid "Use subroutines for function prologue/epilogue"
msgstr "Usar subrutinas para el prólogo/epílogo de función"
-#: config/avr/avr.h:84
+#: config/avr/avr.h:79
msgid "Change only the low 8 bits of the stack pointer"
msgstr "Cambiar sólo los 8 bits bajos del puntero de pila"
-#: config/avr/avr.h:86
+#: config/avr/avr.h:81
msgid "Do not generate tablejump insns"
msgstr "No generar insns de salto de tabla"
-#: config/avr/avr.h:88
+#: config/avr/avr.h:83
msgid "Use rjmp/rcall (limited range) on >8K devices"
msgstr "Usar rjmp/rcall (rango limitado) en dispositivos >8K"
-#: config/avr/avr.h:91
+#: config/avr/avr.h:85
msgid "Output instruction sizes to the asm file"
msgstr "Tamaños de instrucción de salida al fichero asm"
-#: config/avr/avr.h:108
+#: config/avr/avr.h:102
msgid "Specify the initial stack address"
msgstr "Especificar la dirección inicial de la pila"
-#: config/avr/avr.h:109
+#: config/avr/avr.h:103
msgid "Specify the MCU name"
msgstr "Especificar el nombre MCU"
@@ -9049,144 +8311,139 @@ msgstr "Especificar el nombre MCU"
#. For instance, the SH target has only positive offsets in
#. addresses. Thus sorting to put the smallest address first allows
#. the most combinations to be found.
-#: config/avr/avr.h:2450
+#: config/avr/avr.h:2267
msgid "trampolines not supported"
msgstr "los trampolines no tienen soporte"
-#: config/c4x/c4x-c.c:69
+#: config/c4x/c4x-c.c:71
#, c-format
msgid "missing '(' after '#pragma %s' - ignored"
msgstr "falta un '(' después de '#pragma %s' - ignorado"
-#: config/c4x/c4x-c.c:72
+#: config/c4x/c4x-c.c:74
#, c-format
msgid "missing function name in '#pragma %s' - ignored"
msgstr "falta el nombre de la función en '#pragma %s' - ignorado"
-#: config/c4x/c4x-c.c:77
+#: config/c4x/c4x-c.c:79
#, c-format
msgid "malformed '#pragma %s' - ignored"
msgstr "'#pragma %s' malformado - ignorado"
-#: config/c4x/c4x-c.c:79
+#: config/c4x/c4x-c.c:81
#, c-format
msgid "missing section name in '#pragma %s' - ignored"
msgstr "falta el nombre de la sección en '#pragma %s' - ignorado"
-#: config/c4x/c4x-c.c:84
+#: config/c4x/c4x-c.c:86
#, c-format
msgid "missing ')' for '#pragma %s' - ignored"
msgstr "falta un ')' para '#pragma %s' - ignorado"
-#: config/c4x/c4x-c.c:87
+#: config/c4x/c4x-c.c:89
#, c-format
msgid "junk at end of '#pragma %s'"
msgstr "basura al final de '#pragma %s'"
-#: config/c4x/c4x.c:280
+#: config/c4x/c4x.c:300
#, c-format
msgid "unknown CPU version %d, using 40.\n"
msgstr "versión desconocida de CPU %d, usando 40.\n"
-#: config/c4x/c4x.c:853
+#: config/c4x/c4x.c:850
#, c-format
msgid "ISR %s requires %d words of local vars, max is 32767"
msgstr "el ISR %s requiere de %d words de variables locales, el máximo es 32767"
-#: config/c4x/c4x.c:1602
+#: config/c4x/c4x.c:1571
msgid "using CONST_DOUBLE for address"
msgstr "usando CONST_DOUBLE para las direcciones"
-#: config/c4x/c4x.c:1742
+#: config/c4x/c4x.c:1709
msgid "c4x_address_cost: Invalid addressing mode"
msgstr "c4x_address_cost: Modo inválido de direccionamiento"
-#: config/c4x/c4x.c:1884
+#: config/c4x/c4x.c:1844
#, c-format
msgid "c4x_print_operand: %%L inconsistency"
msgstr "c4x_print_operand: inconsistencia %%L"
-#: config/c4x/c4x.c:1890
+#: config/c4x/c4x.c:1850
#, c-format
msgid "c4x_print_operand: %%N inconsistency"
msgstr "c4x_print_operand: inconsistencia %%N"
-#: config/c4x/c4x.c:1931
+#: config/c4x/c4x.c:1891
#, c-format
msgid "c4x_print_operand: %%O inconsistency"
msgstr "c4x_print_operand: inconsistencia %%O"
-#: config/c4x/c4x.c:2026
+#: config/c4x/c4x.c:1986
msgid "c4x_print_operand: Bad operand case"
msgstr "c4x_print_operand: Operando case erróneo"
# FIXME: Revisar si post_modify es una instrucción en el código de
# gcc. cfuga
-#: config/c4x/c4x.c:2069
+#: config/c4x/c4x.c:2027
msgid "c4x_print_operand_address: Bad post_modify"
msgstr "c4x_print_operand_address: post_modify erróneo"
# FIXME: Revisar si pre_modify es una instrucción en el código de
# gcc. cfuga
-#: config/c4x/c4x.c:2091
+#: config/c4x/c4x.c:2049
msgid "c4x_print_operand_address: Bad pre_modify"
msgstr "c4x_print_operand_address: pre_modify erróneo"
-#: config/c4x/c4x.c:2139 config/c4x/c4x.c:2151 config/c4x/c4x.c:2166
+#: config/c4x/c4x.c:2097 config/c4x/c4x.c:2109 config/c4x/c4x.c:2124
msgid "c4x_print_operand_address: Bad operand case"
msgstr "c4x_print_operand_address: Operando case erróneo"
-#: config/c4x/c4x.c:2422
+#: config/c4x/c4x.c:2375
msgid "c4x_rptb_insert: Cannot find start label"
msgstr "c4x_rptb_insert: No se puede encontrar la etiqueta de inicio"
-#: config/c4x/c4x.c:3409 config/c4x/c4x.c:3429
+#: config/c4x/c4x.c:3292 config/c4x/c4x.c:3310
msgid "mode not QImode"
msgstr "el modo no es QImode"
-#: config/c4x/c4x.c:3514
+#: config/c4x/c4x.c:3380
msgid "invalid indirect memory address"
msgstr "dirección indirecta de memoria inválida"
-#: config/c4x/c4x.c:3603
+#: config/c4x/c4x.c:3469
msgid "invalid indirect (S) memory address"
msgstr "dirección (S) indirecta de memoria inválida"
-#: config/c4x/c4x.c:3944
+#: config/c4x/c4x.c:3797
msgid "c4x_valid_operands: Internal error"
msgstr "c4x_valid_operands: Error interno"
-#: config/c4x/c4x.c:4424
+#: config/c4x/c4x.c:4216
msgid "c4x_operand_subword: invalid mode"
msgstr "c4x_operand_subword: modo inválido"
-#: config/c4x/c4x.c:4427
+#: config/c4x/c4x.c:4219
msgid "c4x_operand_subword: invalid operand"
msgstr "c4x_operand_subword: operando inválido"
#. We could handle these with some difficulty.
#. e.g., *p-- => *(p-=2); *(p+1).
-#: config/c4x/c4x.c:4453
+#: config/c4x/c4x.c:4245
msgid "c4x_operand_subword: invalid autoincrement"
msgstr "c4x_operand_subword: autoincremento inválido"
-#: config/c4x/c4x.c:4459
+#: config/c4x/c4x.c:4251
msgid "c4x_operand_subword: invalid address"
msgstr "c4x_operand_subword: dirección inválida"
-#: config/c4x/c4x.c:4470
+#: config/c4x/c4x.c:4262
msgid "c4x_operand_subword: address not offsettable"
msgstr "c4x_operand_subword: dirección no desplazable"
-#: config/c4x/c4x.c:4670
+#: config/c4x/c4x.c:4472
msgid "c4x_rptb_rpts_p: Repeat block top label moved\n"
msgstr "c4x_rptb_rpts_p: Se movió la etiqueta princiapl del bloque de repetición\n"
-#. Name of the c4x assembler.
-#. Name of the c4x linker.
-#. Define assembler options.
-#. Define linker options.
-#. Specify the end file to link with.
#. Target compilation option flags.
#. Small memory model.
#. Use 24-bit MPYI for C3x.
@@ -9405,158 +8662,158 @@ msgstr "Especificar el número máximo de iteraciones para RPTS"
msgid "Select CPU to generate code for"
msgstr "Seleccionar el CPU para el cual se genera código"
-#: config/cris/cris.c:599
+#: config/cris/cris.c:597
msgid "unexpected index-type in cris_print_index"
msgstr "tipo-índice inesperado en cris_print_index"
-#: config/cris/cris.c:615
+#: config/cris/cris.c:611
msgid "unexpected base-type in cris_print_base"
msgstr "tipo-base inesperado en cris_print_base"
-#: config/cris/cris.c:908
+#: config/cris/cris.c:904
#, c-format
msgid "stackframe too big: %d bytes"
msgstr "marco de la pila demasiado grande: %d bytes"
-#: config/cris/cris.c:1223
+#: config/cris/cris.c:1215
msgid "allocated but unused delay list in epilogue"
msgstr "lista de retardo asignada pero sin uso en el epílogo"
-#: config/cris/cris.c:1233
+#: config/cris/cris.c:1225
msgid "unexpected function type needing stack adjustment for __builtin_eh_return"
msgstr "el tipo de función inesperado necesita un ajuste de pila para __builtin_eh_return"
-#: config/cris/cris.c:1312
+#: config/cris/cris.c:1301
msgid "invalid operand for 'b' modifier"
msgstr "operando inválido para el modificador 'b'"
-#: config/cris/cris.c:1324
+#: config/cris/cris.c:1314
msgid "invalid operand for 'v' modifier"
msgstr "operando inválido para el modificador 'v'"
-#: config/cris/cris.c:1334
+#: config/cris/cris.c:1324
msgid "invalid operand for 'P' modifier"
msgstr "operando inválido para el modificador 'P'"
-#: config/cris/cris.c:1341
+#: config/cris/cris.c:1331
msgid "invalid operand for 'p' modifier"
msgstr "operador inválido para el modificador 'p'"
-#: config/cris/cris.c:1380
+#: config/cris/cris.c:1370
msgid "invalid operand for 'z' modifier"
msgstr "operando inválido para el modificador 'z'"
-#: config/cris/cris.c:1411 config/cris/cris.c:1441
+#: config/cris/cris.c:1401 config/cris/cris.c:1431
msgid "invalid operand for 'H' modifier"
msgstr "operando inválido para el modificador 'H'"
-#: config/cris/cris.c:1417
+#: config/cris/cris.c:1407
msgid "bad register"
msgstr "registro erróneo"
-#: config/cris/cris.c:1455
+#: config/cris/cris.c:1445
msgid "invalid operand for 'e' modifier"
msgstr "operando inválido para el modificador 'e'"
-#: config/cris/cris.c:1472
+#: config/cris/cris.c:1462
msgid "invalid operand for 'm' modifier"
msgstr "operando inválido para el modificador 'm'"
-#: config/cris/cris.c:1497
+#: config/cris/cris.c:1487
msgid "invalid operand for 'A' modifier"
msgstr "operando inválido para el modificador 'A'"
-#: config/cris/cris.c:1505
+#: config/cris/cris.c:1495
msgid "invalid operand for 'D' modifier"
msgstr "operando inválido para el modificador 'D'"
-#: config/cris/cris.c:1519
+#: config/cris/cris.c:1509
msgid "invalid operand for 'T' modifier"
msgstr "operando inválido para el modificador 'T'"
-#: config/cris/cris.c:1528
+#: config/cris/cris.c:1518
msgid "invalid operand modifier letter"
msgstr "modificador de letra de operando inválido"
-#: config/cris/cris.c:1536
+#: config/cris/cris.c:1526
#, c-format
msgid "internal error: bad register: %d"
msgstr "error interno: registro erróneo: %d"
-#: config/cris/cris.c:1584
+#: config/cris/cris.c:1574
msgid "unexpected multiplicative operand"
msgstr "operando multiplicativo inesperado"
-#: config/cris/cris.c:1604
+#: config/cris/cris.c:1594
msgid "unexpected operand"
msgstr "operando inesperado"
-#: config/cris/cris.c:1639 config/cris/cris.c:1649
+#: config/cris/cris.c:1627 config/cris/cris.c:1637
msgid "unrecognized address"
msgstr "no se reconoce la dirección"
-#: config/cris/cris.c:2005
+#: config/cris/cris.c:1987
msgid "internal error: sideeffect-insn affecting main effect"
msgstr "error interno: insn colateral afectando al efecto principal"
#. If we get here, the caller got its initial tests wrong.
-#: config/cris/cris.c:2292
+#: config/cris/cris.c:2380
msgid "internal error: cris_side_effect_mode_ok with bad operands"
msgstr "error interno: cris_side_effect_mode_ok con operandos erróneos"
-#: config/cris/cris.c:2374 config/cris/cris.c:2432
+#: config/cris/cris.c:2457 config/cris/cris.c:2519
msgid "unrecognized supposed constant"
msgstr "supuesta constante no reconocida"
-#: config/cris/cris.c:2473
+#: config/cris/cris.c:2564
msgid "unrecognized supposed constant in cris_global_pic_symbol"
msgstr "supuesta constante no reconocida en cris_global_pic_symbol"
-#: config/cris/cris.c:2492
+#: config/cris/cris.c:2583
#, c-format
msgid "-max-stackframe=%d is not usable, not between 0 and %d"
msgstr "no se puede usar -max-stackframe=%d, no está entre 0 y %d"
-#: config/cris/cris.c:2520
+#: config/cris/cris.c:2611
#, c-format
msgid "unknown CRIS version specification in -march= or -mcpu= : %s"
msgstr "especificación de versión CRIS desconocida en -march= o -mcpu= : %s"
-#: config/cris/cris.c:2556
+#: config/cris/cris.c:2647
#, c-format
msgid "unknown CRIS cpu version specification in -mtune= : %s"
msgstr "especificación de versión de cpu CRIS desconocida en -mtune= : %s"
-#: config/cris/cris.c:2574
+#: config/cris/cris.c:2665
msgid "-fPIC and -fpic are not supported in this configuration"
msgstr "-fPIC y -fpic no tienen soporte en esta configuración"
-#: config/cris/cris.c:2590
+#: config/cris/cris.c:2681
msgid "that particular -g option is invalid with -maout and -melinux"
msgstr "esa opción -g en particular es inválida con -maout y -melinux"
-#: config/cris/cris.c:2824 config/cris/cris.c:2869
+#: config/cris/cris.c:2936 config/cris/cris.c:2981
msgid "unexpected side-effects in address"
msgstr "efectos colaterales inesperados en la dirección"
#. Labels are never marked as global symbols.
-#: config/cris/cris.c:2966 config/cris/cris.c:2997
+#: config/cris/cris.c:3076 config/cris/cris.c:3107
msgid "unexpected PIC symbol"
msgstr "símbolo PIC inesperado"
-#: config/cris/cris.c:2970
+#: config/cris/cris.c:3080
msgid "PIC register isn't set up"
msgstr "el registro PIC aún no está preparado"
-#: config/cris/cris.c:2983 config/cris/cris.c:3066
+#: config/cris/cris.c:3093 config/cris/cris.c:3176
msgid "unexpected address expression"
msgstr "expresión de dirección inesperada"
-#: config/cris/cris.c:3001
+#: config/cris/cris.c:3111
msgid "emitting PIC operand, but PIC register isn't set up"
msgstr "emitiendo un operando PIC, pero el registro PIC aún no está preparado"
-#: config/cris/cris.c:3010
+#: config/cris/cris.c:3120
msgid "unexpected NOTE as addr_const:"
msgstr "NOTE inesperado como addr_const:"
@@ -9569,212 +8826,212 @@ msgid "For elinux, request a specified stack-size for this program"
msgstr "Para elinux, solicitar un tamaño de pila especificado para este programa"
#. No "no-etrax" as it does not really imply any model. On the other hand, "etrax" implies the common (and large) subset matching all models.
-#: config/cris/cris.h:340
+#: config/cris/cris.h:334
msgid "Compile for ETRAX 4 (CRIS v3)"
msgstr "Compilar para ETRAX 4 (CRIS v3)"
-#: config/cris/cris.h:345
+#: config/cris/cris.h:339
msgid "Compile for ETRAX 100 (CRIS v8)"
msgstr "Compilar para ETRAX 100 (CRIS v8)"
-#: config/cris/cris.h:349
+#: config/cris/cris.h:343
msgid "Emit verbose debug information in assembly code"
msgstr "Emitir información de depuración detallada en el código ensamblador"
-#: config/cris/cris.h:352
+#: config/cris/cris.h:346
msgid "Do not use condition codes from normal instructions"
msgstr "No usar códigos de condición para las instrucciones normales"
-#: config/cris/cris.h:356
+#: config/cris/cris.h:350
msgid "Do not emit addressing modes with side-effect assignment"
msgstr "No emitir modos de direccionamiento con asignaciones colaterales"
-#: config/cris/cris.h:359
+#: config/cris/cris.h:353
msgid "Do not tune stack alignment"
msgstr "No ajustar la alineación de la pila"
-#: config/cris/cris.h:362
+#: config/cris/cris.h:356
msgid "Do not tune writable data alignment"
msgstr "No ajustar la alineación de los datos modificables"
-#: config/cris/cris.h:365
+#: config/cris/cris.h:359
msgid "Do not tune code and read-only data alignment"
msgstr "No ajustar la alineación del código y de datos de sólo lectura"
-#: config/cris/cris.h:374
+#: config/cris/cris.h:368
msgid "Align code and data to 32 bits"
msgstr "Alinear código y datos a 32 bits"
-#: config/cris/cris.h:387
+#: config/cris/cris.h:381
msgid "Don't align items in code or data"
msgstr "No alinear elementos en el código o los datos"
-#: config/cris/cris.h:390
+#: config/cris/cris.h:384
msgid "Do not emit function prologue or epilogue"
msgstr "No emitir prólogo o epílogo de funciones"
#. We have to handle this m-option here since we can't wash it off in both CC1_SPEC and CC1PLUS_SPEC.
-#: config/cris/cris.h:394
+#: config/cris/cris.h:388
msgid "Use the most feature-enabling options allowed by other options"
msgstr "Usar la mayor cantidad de características permitidas por otras opciones"
#. We must call it "override-" since calling it "no-" will cause gcc.c to forget it, if there's a "later" -mbest-lib-options. Kludgy, but needed for some multilibbed files.
-#: config/cris/cris.h:400
+#: config/cris/cris.h:394
msgid "Override -mbest-lib-options"
msgstr "Anular -mbest-lib-options"
-#: config/cris/cris.h:432
+#: config/cris/cris.h:426
msgid "Generate code for the specified chip or CPU version"
msgstr "Generar código para el chip especificado o la versión de CPU"
-#: config/cris/cris.h:434
+#: config/cris/cris.h:428
msgid "Tune alignment for the specified chip or CPU version"
msgstr "Ajustar alineación para el chip especificado o la versión de CPU"
-#: config/cris/cris.h:436
+#: config/cris/cris.h:430
msgid "Warn when a stackframe is larger than the specified size"
msgstr "Avisar cuando un marco de pila sea más grande que el tamaño especificado"
#. Node: Profiling
-#: config/cris/cris.h:1022
+#: config/cris/cris.h:1016
msgid "no FUNCTION_PROFILER for CRIS"
msgstr "no hay FUNCTION_PROFILER para CRIS"
-#: config/cris/linux.h:71
+#: config/cris/linux.h:69
msgid "Together with -fpic and -fPIC, do not use GOTPLT references"
msgstr "Junto con -fpic y -fPIC, no utilizar referencias GOTPLT"
-#: config/d30v/d30v.c:207
+#: config/d30v/d30v.c:218
#, c-format
msgid "bad modes_tieable_p for register %s, mode1 %s, mode2 %s"
msgstr "modes_tieable_p erróneos para el registro %s, modo1 %s, modo2 %s"
-#: config/d30v/d30v.c:2666
+#: config/d30v/d30v.c:2678
msgid "bad insn to d30v_print_operand_address:"
msgstr "insn errónea para d30v_print_operand_address:"
-#: config/d30v/d30v.c:2683 config/d30v/d30v.c:2744 config/d30v/d30v.c:2765
-#: config/d30v/d30v.c:2783
+#: config/d30v/d30v.c:2695 config/d30v/d30v.c:2756 config/d30v/d30v.c:2777
+#: config/d30v/d30v.c:2795
msgid "bad insn to d30v_print_operand_memory_reference:"
msgstr "insn erróneo para d30v_print_operand_memory_reference:"
-#: config/d30v/d30v.c:2851
+#: config/d30v/d30v.c:2863
msgid "bad insn to d30v_print_operand, 'f' modifier:"
msgstr "insn erróneo para d30v_print_operand, modificador 'f':"
-#: config/d30v/d30v.c:2860
+#: config/d30v/d30v.c:2872
msgid "bad insn to d30v_print_operand, 'A' modifier:"
msgstr "insn erróneo para d30v_print_operand, modificador 'A':"
-#: config/d30v/d30v.c:2867
+#: config/d30v/d30v.c:2879
msgid "bad insn to d30v_print_operand, 'M' modifier:"
msgstr "insn erróneo para d30v_print_operand, modificador 'M':"
-#: config/d30v/d30v.c:2921
+#: config/d30v/d30v.c:2933
msgid "bad insn to print_operand, 'F' or 'T' modifier:"
msgstr "insn erróneo para print_operand, modificador 'F' o 'T':"
-#: config/d30v/d30v.c:2932
+#: config/d30v/d30v.c:2944
msgid "bad insn to print_operand, 'B' modifier:"
msgstr "insn erróneo para print_operand, modificador 'B':"
-#: config/d30v/d30v.c:2939
+#: config/d30v/d30v.c:2951
msgid "bad insn to print_operand, 'E' modifier:"
msgstr "insn erróneo para print_operand, modificador 'E':"
-#: config/d30v/d30v.c:2957
+#: config/d30v/d30v.c:2969
msgid "bad insn to print_operand, 'R' modifier:"
msgstr "insn erróneo para print_operand, modificador 'R':"
-#: config/d30v/d30v.c:2966 config/d30v/d30v.c:2974
+#: config/d30v/d30v.c:2978 config/d30v/d30v.c:2986
msgid "bad insn to print_operand, 's' modifier:"
msgstr "insn erróneo para print_operand, modificador 's':"
-#: config/d30v/d30v.c:3003
+#: config/d30v/d30v.c:3015
msgid "bad insn in d30v_print_operand, 0 case"
msgstr "insn erróneo en d30v_print_operand, caso 0"
-#: config/d30v/d30v.c:3301
+#: config/d30v/d30v.c:3313
msgid "d30v_emit_comparison"
msgstr "d30v_emit_comparison"
-#: config/d30v/d30v.c:3345
+#: config/d30v/d30v.c:3357
msgid "bad call to d30v_move_2words"
msgstr "llamada errónea a d30v_move_2words"
-#: config/d30v/d30v.h:114
+#: config/d30v/d30v.h:111
msgid "Enable use of conditional move instructions"
msgstr "Activar el uso de las instrucciones condicionales move"
-#: config/d30v/d30v.h:117
+#: config/d30v/d30v.h:114
msgid "Disable use of conditional move instructions"
msgstr "Desactivar el uso de las instrucciones condicionales move"
-#: config/d30v/d30v.h:120
+#: config/d30v/d30v.h:117
msgid "Debug argument support in compiler"
msgstr "Soporte para depuración de argumentos en el compilador"
-#: config/d30v/d30v.h:123
+#: config/d30v/d30v.h:120
msgid "Debug stack support in compiler"
msgstr "Soporte para depuración de pila en el compilador"
-#: config/d30v/d30v.h:126
+#: config/d30v/d30v.h:123
msgid "Debug memory address support in compiler"
msgstr "Soporte para depuración de direcciones de memoria en el compilador"
-#: config/d30v/d30v.h:129
+#: config/d30v/d30v.h:126
msgid "Make adjacent short instructions parallel if possible"
msgstr "Hacer paralelas las instrucciones adyacentes cortas si es posible"
-#: config/d30v/d30v.h:132
+#: config/d30v/d30v.h:129
msgid "Do not make adjacent short instructions parallel"
msgstr "No hacer paralelas las instrucciones adyacentes"
-#: config/d30v/d30v.h:135 config/d30v/d30v.h:138
+#: config/d30v/d30v.h:132 config/d30v/d30v.h:135
msgid "Link programs/data to be in external memory by default"
msgstr "Enlazar programas/datos para estar en la memoria externa por defecto"
-#: config/d30v/d30v.h:141
+#: config/d30v/d30v.h:138
msgid "Link programs/data to be in onchip memory by default"
msgstr "Enlazar programas/datos para estar en la memoria del chip por defecto"
-#: config/d30v/d30v.h:149
+#: config/d30v/d30v.h:146
msgid "Change the branch costs within the compiler"
msgstr "Cambiar los costos de ramificación dentro del compilador"
-#: config/d30v/d30v.h:152
+#: config/d30v/d30v.h:149
msgid "Change the threshold for conversion to conditional execution"
msgstr "Cambiar el umbral para la conversión a ejecución condicional"
-#: config/dsp16xx/dsp16xx.c:1446 config/dsp16xx/dsp16xx.c:1469
+#: config/dsp16xx/dsp16xx.c:1463 config/dsp16xx/dsp16xx.c:1486
msgid "stack size > 32k"
msgstr "tamaño de la pila > 32k"
-#: config/dsp16xx/dsp16xx.c:1678
+#: config/dsp16xx/dsp16xx.c:1695
msgid "invalid addressing mode"
msgstr "modo de direccionamiento inválido"
-#: config/dsp16xx/dsp16xx.c:1821
+#: config/dsp16xx/dsp16xx.c:1838
msgid "bad register extension code"
msgstr "código de extensión de registro erróneo"
-#: config/dsp16xx/dsp16xx.c:1921
+#: config/dsp16xx/dsp16xx.c:1938
msgid "invalid offset in ybase addressing"
msgstr "desplazamiento inválido en el direccionamiento de ybase"
-#: config/dsp16xx/dsp16xx.c:1924
+#: config/dsp16xx/dsp16xx.c:1941
msgid "invalid register in ybase addressing"
msgstr "registro inválido en el direccionamiento de ybase"
-#: config/dsp16xx/dsp16xx.c:2099
+#: config/dsp16xx/dsp16xx.c:2116
msgid "invalid shift operator in emit_1600_core_shift"
msgstr "operador de desplazamiento inválido en emit_1600_core_shift"
-#: config/dsp16xx/dsp16xx.c:2428
+#: config/dsp16xx/dsp16xx.c:2406
msgid "invalid mode for gen_tst_reg"
msgstr "modo inválido para gen_tst_reg"
-#: config/dsp16xx/dsp16xx.c:2500
+#: config/dsp16xx/dsp16xx.c:2478
msgid "invalid mode for integer comparison in gen_compare_reg"
msgstr "modo inválido para la comparación entera en gen_compare_reg"
@@ -9869,58 +9126,62 @@ msgstr "Especificar un nombre alternativo para el chip dsp16xx"
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/dsp16xx/dsp16xx.h:1218 config/dsp16xx/dsp16xx.h:1772
-#: config/dsp16xx/dsp16xx.h:1777
+#. This is how to output an insn to push a register on the stack.
+#. It need not be very fast code since it is used only for profiling
+#. This is how to output an insn to pop a register from the stack.
+#. It need not be very fast code since it is used only for profiling
+#: config/dsp16xx/dsp16xx.h:1216 config/dsp16xx/dsp16xx.h:1667
+#: config/dsp16xx/dsp16xx.h:1672
msgid "profiling not implemented yet"
msgstr "aún no se ha implementado el análisis de perfil"
#. Emit RTL insns to initialize the variable parts of a trampoline.
#. FNADDR is an RTX for the address of the function's pure code.
#. CXT is an RTX for the static chain value for the function.
-#: config/dsp16xx/dsp16xx.h:1228 config/dsp16xx/dsp16xx.h:1240
+#: config/dsp16xx/dsp16xx.h:1226 config/dsp16xx/dsp16xx.h:1238
msgid "trampolines not yet implemented"
msgstr "aún no se han implementado trampolines"
-#: config/fr30/fr30.c:453
+#: config/fr30/fr30.c:451
msgid "fr30_print_operand_address: unhandled address"
msgstr "fr30_print_operand_address: dirección sin manejar"
-#: config/fr30/fr30.c:480
+#: config/fr30/fr30.c:475
#, c-format
msgid "fr30_print_operand: unrecognized %%p code"
msgstr "fr30_print_operand: no se reconoce el código %%p"
-#: config/fr30/fr30.c:500
+#: config/fr30/fr30.c:495
#, c-format
msgid "fr30_print_operand: unrecognized %%b code"
msgstr "fr30_print_operand: no se reconoce el código %%b"
-#: config/fr30/fr30.c:521
+#: config/fr30/fr30.c:516
#, c-format
msgid "fr30_print_operand: unrecognized %%B code"
msgstr "fr30_print_operand: no se reconoce el código %%B"
-#: config/fr30/fr30.c:529
+#: config/fr30/fr30.c:524
#, c-format
msgid "fr30_print_operand: invalid operand to %%A code"
msgstr "fr30_print_operand: operando inválido para el código %%A"
-#: config/fr30/fr30.c:546
+#: config/fr30/fr30.c:541
#, c-format
msgid "fr30_print_operand: invalid %%x code"
msgstr "fr30_print_operand: código %%x inválido"
-#: config/fr30/fr30.c:553
+#: config/fr30/fr30.c:548
#, c-format
msgid "fr30_print_operand: invalid %%F code"
msgstr "fr30_print_operand: código %%F inválido"
-#: config/fr30/fr30.c:570
+#: config/fr30/fr30.c:565
msgid "fr30_print_operand: unknown code"
msgstr "fr30_print_operand: código desconocido"
-#: config/fr30/fr30.c:599 config/fr30/fr30.c:608 config/fr30/fr30.c:619
-#: config/fr30/fr30.c:632
+#: config/fr30/fr30.c:594 config/fr30/fr30.c:603 config/fr30/fr30.c:614
+#: config/fr30/fr30.c:627
msgid "fr30_print_operand: unhandled MEM"
msgstr "fr30_print_operand: MEM sin manejar"
@@ -9928,136 +9189,136 @@ msgstr "fr30_print_operand: MEM sin manejar"
msgid "Assume small address space"
msgstr "Asumiendo espacio de direcciones pequeño"
-#: config/frv/frv.c:410 config/frv/frv.c:428
+#: config/frv/frv.c:392 config/frv/frv.c:410
#, c-format
msgid "Unknown cpu: -mcpu=%s"
msgstr "cpu desconocido: -mcpu=%s"
-#: config/frv/frv.c:451
+#: config/frv/frv.c:433
msgid "-fpic and -gdwarf are incompatible (-fpic and -g/-gdwarf-2 are fine)"
msgstr "-fpic y -gdwarf son incompatibles (-fpic y -g/-gdwarf-2 están bien)"
-#: config/frv/frv.c:2520
+#: config/frv/frv.c:2397
msgid "Bad insn to frv_print_operand_address:"
msgstr "insn errónea para frv_print_operand_address:"
-#: config/frv/frv.c:2533
+#: config/frv/frv.c:2408
msgid "Bad register to frv_print_operand_memory_reference_reg:"
msgstr "Registro erróneo para frv_print_operand_memory_reference_reg:"
-#: config/frv/frv.c:2574 config/frv/frv.c:2584 config/frv/frv.c:2593
-#: config/frv/frv.c:2621 config/frv/frv.c:2633 config/frv/frv.c:2637
+#: config/frv/frv.c:2446 config/frv/frv.c:2456 config/frv/frv.c:2465
+#: config/frv/frv.c:2493 config/frv/frv.c:2506 config/frv/frv.c:2510
msgid "Bad insn to frv_print_operand_memory_reference:"
msgstr "insn erróneo para frv_print_operand_memory_reference:"
-#: config/frv/frv.c:2779
+#: config/frv/frv.c:2648
msgid "Bad insn in frv_print_operand, bad const_double"
msgstr "insn erróneo en frv_print_operand, const_double errónea"
-#: config/frv/frv.c:2824
+#: config/frv/frv.c:2693
msgid "Bad insn to frv_print_operand, 'C' modifier:"
msgstr "insn erróneo para frv_print_operand, modificador 'C':"
-#: config/frv/frv.c:2847
+#: config/frv/frv.c:2716
msgid "Bad insn to frv_print_operand, 'c' modifier:"
msgstr "insn erróneo para frv_print_operand, modificador 'c':"
-#: config/frv/frv.c:2872
+#: config/frv/frv.c:2741
msgid "Bad insn to frv_print_operand, 'e' modifier:"
msgstr "insn erróneo para frv_print_operand, modificador 'e':"
-#: config/frv/frv.c:2880
+#: config/frv/frv.c:2749
msgid "Bad insn to frv_print_operand, 'F' modifier:"
msgstr "insn erróneo para frv_print_operand, modificador 'F':"
-#: config/frv/frv.c:2896
+#: config/frv/frv.c:2765
msgid "Bad insn to frv_print_operand, 'f' modifier:"
msgstr "insn erróneo para frv_print_operand, modificador 'f':"
-#: config/frv/frv.c:2949
+#: config/frv/frv.c:2818
msgid "Bad insn to frv_print_operand, 'L' modifier:"
msgstr "insn erróneo para frv_print_operand, modificador 'L':"
-#: config/frv/frv.c:2962
+#: config/frv/frv.c:2831
msgid "Bad insn to frv_print_operand, 'M/N' modifier:"
msgstr "insn erróneo para frv_print_operand, modificador 'M/N':"
-#: config/frv/frv.c:2983
+#: config/frv/frv.c:2852
msgid "Bad insn to frv_print_operand, 'O' modifier:"
msgstr "insn erróneo para frv_print_operand, modificador 'O':"
-#: config/frv/frv.c:3001
+#: config/frv/frv.c:2870
msgid "Bad insn to frv_print_operand, P modifier:"
msgstr "insn erróneo para frv_print_operand, modificador 'P':"
-#: config/frv/frv.c:3021
+#: config/frv/frv.c:2890
msgid "Bad insn in frv_print_operand, z case"
msgstr "insn erróneo en frv_print_operand, caso z"
-#: config/frv/frv.c:3049
+#: config/frv/frv.c:2918
msgid "Bad insn in frv_print_operand, 0 case"
msgstr "insn erróneo en frv_print_operand, caso 0"
-#: config/frv/frv.c:3054
+#: config/frv/frv.c:2923
msgid "frv_print_operand: unknown code"
msgstr "frv_print_operand: código desconocido"
-#: config/frv/frv.c:5737
+#: config/frv/frv.c:5474
msgid "Bad output_move_single operand"
msgstr "Operando output_move_single erróneo"
-#: config/frv/frv.c:5866
+#: config/frv/frv.c:5601
msgid "Bad output_move_double operand"
msgstr "Operando output_move_double erróneo"
-#: config/frv/frv.c:6010
+#: config/frv/frv.c:5743
msgid "Bad output_condmove_single operand"
msgstr "Operando output_condmove_single erróneo"
-#: config/frv/frv.c:8315
+#: config/frv/frv.c:8031
msgid "frv_registers_update"
msgstr "frv_registers_update"
-#: config/frv/frv.c:8475
+#: config/frv/frv.c:8188
msgid "frv_registers_used_p"
msgstr "frv_registers_used_p"
-#: config/frv/frv.c:8604
+#: config/frv/frv.c:8314
msgid "frv_registers_set_p"
msgstr "frv_registers_set_p"
-#: config/frv/frv.c:9171
+#: config/frv/frv.c:8910
msgid "accumulator is not a constant integer"
msgstr "el acumulador no es una constante entera"
-#: config/frv/frv.c:9176
+#: config/frv/frv.c:8915
msgid "accumulator number is out of bounds"
msgstr "el número del acumulador está fuera de los límites"
-#: config/frv/frv.c:9187
+#: config/frv/frv.c:8926
#, c-format
msgid "inappropriate accumulator for `%s'"
msgstr "acumulador inapropiado para `%s'"
-#: config/frv/frv.c:9253
+#: config/frv/frv.c:8986
#, c-format
msgid "`%s' expects a constant argument"
msgstr "el atributo `%s' espera una constante como argumento"
-#: config/frv/frv.c:9258
+#: config/frv/frv.c:8991
#, c-format
msgid "constant argument out of range for `%s'"
msgstr "el argumento constante está fuera de rango para `%s'"
-#: config/frv/frv.c:9638
+#: config/frv/frv.c:9338
msgid "media functions are not available unless -mmedia is used"
msgstr "las funciones de medios no están disponibles a menos que se use -mmedia"
-#: config/frv/frv.c:9650
+#: config/frv/frv.c:9350
msgid "this media function is only available on the fr500"
msgstr "esta función de medios sólo está disponible en el fr500"
-#: config/frv/frv.c:9678
+#: config/frv/frv.c:9378
msgid "this media function is only available on the fr400"
msgstr "esta función de medios sólo está disponible en el fr400"
@@ -10070,15 +9331,16 @@ msgstr "esta función de medios sólo está disponible en el fr400"
#. #else
#. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)");
#. #endif
-#: config/frv/frv.h:512
+#: config/frv/frv.h:506
+#, c-format
msgid " (frv)"
msgstr " (frv)"
-#: config/h8300/h8300.c:314
+#: config/h8300/h8300.c:288
msgid "-ms2600 is used without -ms"
msgstr "se usó -ms2600 sin -ms"
-#: config/h8300/h8300.c:320
+#: config/h8300/h8300.c:294
msgid "-mn is used without -mh or -ms"
msgstr "se usó -mn sin -mh ó -ms"
@@ -10087,75 +9349,75 @@ msgstr "se usó -mn sin -mh ó -ms"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/h8300/h8300.h:150
+#: config/h8300/h8300.h:145
msgid "Generate H8S code"
msgstr "Generar código H8S"
-#: config/h8300/h8300.h:151
+#: config/h8300/h8300.h:146
msgid "Do not generate H8S code"
msgstr "No generar código H8S"
-#: config/h8300/h8300.h:152
+#: config/h8300/h8300.h:147
msgid "Generate H8S/2600 code"
msgstr "Generar código H8S/2600"
-#: config/h8300/h8300.h:153
+#: config/h8300/h8300.h:148
msgid "Do not generate H8S/2600 code"
msgstr "No generar código H8S/2600"
-#: config/h8300/h8300.h:154
+#: config/h8300/h8300.h:149
msgid "Make integers 32 bits wide"
msgstr "Hacer enteros de 32 bits de anchura"
-#: config/h8300/h8300.h:157
+#: config/h8300/h8300.h:152
msgid "Use registers for argument passing"
msgstr "Usar registros para paso de parámetros"
-#: config/h8300/h8300.h:159
+#: config/h8300/h8300.h:154
msgid "Do not use registers for argument passing"
msgstr "No usar registros para paso de parámetros"
-#: config/h8300/h8300.h:161
+#: config/h8300/h8300.h:156
msgid "Consider access to byte sized memory slow"
msgstr "Considerar lento el acceso a la memoria de tamaño byte"
-#: config/h8300/h8300.h:162
+#: config/h8300/h8300.h:157
msgid "Enable linker relaxing"
msgstr "Activar el relajamiento del enlazador"
-#: config/h8300/h8300.h:164
+#: config/h8300/h8300.h:158
msgid "Generate H8/300H code"
msgstr "Generar código H8/300H"
-#: config/h8300/h8300.h:165
+#: config/h8300/h8300.h:159
msgid "Enable the normal mode"
msgstr "Activar el modo normal"
-#: config/h8300/h8300.h:166
+#: config/h8300/h8300.h:160
msgid "Do not generate H8/300H code"
msgstr "No generar código H8/300H"
-#: config/h8300/h8300.h:167
+#: config/h8300/h8300.h:161
msgid "Use H8/300 alignment rules"
msgstr "Usar reglas de alineación H8/300"
-#: config/i370/i370-c.c:53
+#: config/i370/i370-c.c:55
msgid "junk at end of #pragma map"
msgstr "basura al final de #pragma map"
-#: config/i370/i370-c.c:59
+#: config/i370/i370-c.c:61
msgid "malformed #pragma map, ignored"
msgstr "#pragma map malformado, ignorado"
-#: config/i370/i370.c:915
+#: config/i370/i370.c:784
msgid "real name is too long - alias ignored"
msgstr "el nombre real es demasiado largo - se ignora el alias"
-#: config/i370/i370.c:920
+#: config/i370/i370.c:789
msgid "alias name is too long - alias ignored"
msgstr "el nombre de alias es demasiado largo - se ignora el alias"
-#: config/i370/i370.c:1191
+#: config/i370/i370.c:1060
msgid "internal error--no jump follows compare:"
msgstr "error interno--no hay saltos a continuación de la comparación:"
@@ -10171,405 +9433,463 @@ msgstr "Generar instrucciones char"
msgid "Do not generate char instructions"
msgstr "No generar instrucciones char"
-#: config/i386/i386.c:1050
+#: config/i386/i386.c:1161
#, c-format
msgid "code model %s not supported in PIC mode"
msgstr "el modelo de código %s no tiene soporte en el modo PIC"
-#: config/i386/i386.c:1060 config/sparc/sparc.c:356
+#: config/i386/i386.c:1171 config/sparc/sparc.c:387
#, c-format
msgid "bad value (%s) for -mcmodel= switch"
msgstr "valor erróneo (%s) para el interruptor -mcmodel="
-#: config/i386/i386.c:1075
+#: config/i386/i386.c:1186
#, c-format
msgid "bad value (%s) for -masm= switch"
msgstr "valor erróneo (%s) para el interruptor -masm="
-#: config/i386/i386.c:1078
+#: config/i386/i386.c:1189
#, c-format
msgid "code model `%s' not supported in the %s bit mode"
msgstr "el modelo de código `%s' no tiene soporte en el modo de bit %s"
-#: config/i386/i386.c:1081
+#: config/i386/i386.c:1192
msgid "code model `large' not supported yet"
msgstr "aún no hay soporte para el modelo de código `large'"
-#: config/i386/i386.c:1083
+#: config/i386/i386.c:1194
#, c-format
msgid "%i-bit mode not compiled in"
msgstr "no está compilado el modo bit-%i"
-#: config/i386/i386.c:1113
+#: config/i386/i386.c:1221 config/i386/i386.c:1233
+#, fuzzy
+msgid "CPU you selected does not support x86-64 instruction set"
+msgstr "el CPU objetivo no tiene soporte para las instrucciones THUMB"
+
+#: config/i386/i386.c:1226 config/iq2000/iq2000.c:1840
#, c-format
msgid "bad value (%s) for -march= switch"
msgstr "valor erróneo (%s) para el interruptor -march="
-#: config/i386/i386.c:1124
+#: config/i386/i386.c:1239
#, c-format
-msgid "bad value (%s) for -mcpu= switch"
-msgstr "valor erróneo (%s) para el interruptor -mcpu="
+msgid "bad value (%s) for -mtune= switch"
+msgstr "valor erróneo (%s) para el interruptor -mtune="
-#: config/i386/i386.c:1141
+#: config/i386/i386.c:1256
#, c-format
msgid "-mregparm=%d is not between 0 and %d"
msgstr "-mregparm=%d no está entre 0 y %d"
-#: config/i386/i386.c:1154
+#: config/i386/i386.c:1269
msgid "-malign-loops is obsolete, use -falign-loops"
msgstr "-malign-loops es obsoleto, use -falign-loops"
-#: config/i386/i386.c:1159 config/i386/i386.c:1172 config/i386/i386.c:1185
+#: config/i386/i386.c:1274 config/i386/i386.c:1287 config/i386/i386.c:1300
#, c-format
msgid "-malign-loops=%d is not between 0 and %d"
msgstr "-malign-loops=%d no está entre 0 y %d"
-#: config/i386/i386.c:1167
+#: config/i386/i386.c:1282
msgid "-malign-jumps is obsolete, use -falign-jumps"
msgstr "-malign-jumps es obsoleto, use -falign-jumps"
-#: config/i386/i386.c:1180
+#: config/i386/i386.c:1295
msgid "-malign-functions is obsolete, use -falign-functions"
msgstr "-malign-functions es obsoleto, use -falign-functions"
-#: config/i386/i386.c:1218
+#: config/i386/i386.c:1333
#, c-format
msgid "-mpreferred-stack-boundary=%d is not between %d and 12"
msgstr "-mpreferred-stack-boundary=%d no está entre %d y 12"
-#: config/i386/i386.c:1230
+#: config/i386/i386.c:1345
#, c-format
msgid "-mbranch-cost=%d is not between 0 and 5"
msgstr "-mbranch-cost=%d no está entre 0 y 5"
-#: config/i386/i386.c:1242
+#: config/i386/i386.c:1357
#, c-format
msgid "bad value (%s) for -mtls-dialect= switch"
msgstr "valor erróneo (%s) para el interruptor -mtls-dialect="
-#: config/i386/i386.c:1263
+#: config/i386/i386.c:1386
msgid "-malign-double makes no sense in the 64bit mode"
msgstr "-malign-double no tiene sentido en el modo 64bit"
-#: config/i386/i386.c:1265
+#: config/i386/i386.c:1388
msgid "-mrtd calling convention not supported in the 64bit mode"
msgstr "la convención de llamadas -mrtd no tiene soporte en el modo de 64 bit"
-#: config/i386/i386.c:1281 config/i386/i386.c:1292
+#: config/i386/i386.c:1410 config/i386/i386.c:1421
msgid "SSE instruction set disabled, using 387 arithmetics"
msgstr "el conjunto de instrucciones SSE está desactivado, usando la aritmética 387"
-#: config/i386/i386.c:1297
+#: config/i386/i386.c:1426
msgid "387 instruction set disabled, using SSE arithmetics"
msgstr "el conjunto de instrucciones 387 está desactivado, usando la aritmética SSE"
-#: config/i386/i386.c:1304
+#: config/i386/i386.c:1433
#, c-format
msgid "bad value (%s) for -mfpmath= switch"
msgstr "valor erróneo (%s) para el interruptor -mfpmath="
-#: config/i386/i386.c:1436
+#: config/i386/i386.c:1581 config/i386/i386.c:1592
+#, fuzzy
+msgid "fastcall and stdcall attributes are not compatible"
+msgstr "shared y mdll no son compatibles."
+
+#: config/i386/i386.c:1585 config/i386/i386.c:1641
+#, fuzzy
+msgid "fastcall and regparm attributes are not compatible"
+msgstr "los atributos `trap' y `far' no son compatibles, se ignora `far'"
+
+#: config/i386/i386.c:1628
#, c-format
msgid "`%s' attribute requires an integer constant argument"
msgstr "el atributo `%s' requiere una constante entera como argumento"
-#: config/i386/i386.c:1442
+#: config/i386/i386.c:1634
#, c-format
msgid "argument to `%s' attribute larger than %d"
msgstr "el argumento para el atributo `%s' es más grande que %d"
-#: config/i386/i386.c:2504
+#: config/i386/i386.c:2593
+msgid "SSE vector argument without SSE enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2609
+msgid "MMX vector argument without MMX enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2837
msgid "SSE vector return without SSE enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:6386
+#: config/i386/i386.c:6811
msgid "invalid UNSPEC as operand"
msgstr "UNSPEC inválido como operando"
-#: config/i386/i386.c:6648
+#: config/i386/i386.c:7069
msgid "extended registers have no high halves"
msgstr "los registros extendidos no tiene mitades superiores"
-#: config/i386/i386.c:6663
+#: config/i386/i386.c:7084
msgid "unsupported operand size for extended register"
msgstr "tamaño de operando sin soporte para el registro extendido"
-#: config/i386/i386.c:6978
+#: config/i386/i386.c:7399
msgid "operand is neither a constant nor a condition code, invalid operand code 'c'"
msgstr "el operando no es una constante ni un código de condición, código de operando 'c' inválido"
-#: config/i386/i386.c:7024
+#: config/i386/i386.c:7445
#, c-format
msgid "invalid operand code `%c'"
msgstr "código de operando `%c' inválido"
-#: config/i386/i386.c:7071
+#: config/i386/i386.c:7488
msgid "invalid constraints for operand"
msgstr "restricciones inválidas para el operando"
-#: config/i386/i386.c:11271
+#: config/i386/i386.c:11889
msgid "unknown insn mode"
msgstr "modo insn desconocido"
-#. @@@ better error message
-#: config/i386/i386.c:13391 config/i386/i386.c:13427
-msgid "selector must be an immediate"
-msgstr "el selector debe ser un inmediato"
-
-#. @@@ better error message
-#: config/i386/i386.c:13588 config/i386/i386.c:13622
-msgid "mask must be an immediate"
-msgstr "la máscara debe ser un inmediato"
+#: config/i386/i386.c:14021 config/i386/i386.c:14057
+#, fuzzy, c-format
+msgid "selector must be an integer constant in the range 0..%i"
+msgstr "la longitud en POS debe ser una constante entera"
-#: config/i386/i386.c:13654
+#: config/i386/i386.c:14285
msgid "shift must be an immediate"
msgstr "el desplazamiento debe ser un inmediato"
-#: config/i386/winnt.c:96
+#: config/i386/i386.c:15308
#, fuzzy, c-format
-msgid "function `%s' definition is marked dllimport."
-msgstr "la definición de la función se declaró como `auto'"
+msgid "`%s' incompatible attribute ignored"
+msgstr "se ignora el atributo `%s'"
#: config/i386/winnt.c:104
-#, fuzzy, c-format
-msgid "variable `%s' definition is marked dllimport."
+#, fuzzy
+msgid "%Jfunction `%D' definition is marked dllimport."
+msgstr "la definición de la función se declaró como `auto'"
+
+#: config/i386/winnt.c:112
+#, fuzzy
+msgid "%Jvariable `%D' definition is marked dllimport."
msgstr "la variable estática `%s' está marcada como dllimport"
-#: config/i386/winnt.c:123
-#, c-format
-msgid "external linkage required for symbol '%s' because of '%s' attribute."
+#: config/i386/winnt.c:132
+msgid "%Jexternal linkage required for symbol '%D' because of '%s' attribute."
msgstr ""
-#: config/i386/winnt.c:143
+#: config/i386/winnt.c:149
#, c-format
msgid "`%s' attribute only applies to variables"
msgstr "el atributo `%s' solamente se aplica a variables"
-#: config/i386/winnt.c:242
-#, c-format
-msgid "function '%s' is defined after prior declaration as dllimport: attribute ignored."
+#: config/i386/winnt.c:247
+msgid "%Jfunction '%D' is defined after prior declaration as dllimport: attribute ignored"
msgstr ""
-#: config/i386/winnt.c:252
-#, fuzzy, c-format
-msgid "inline function '%s' is declared as dllimport: attribute ignored."
+#: config/i386/winnt.c:258
+#, fuzzy
+msgid "%Jinline function '%D' is declared as dllimport: attribute ignored."
msgstr "la función `%s' redeclarada con el atributo noinline"
-#: config/i386/winnt.c:263
-#, c-format
-msgid "definition of static data member '%s' of dllimport'd class."
+#: config/i386/winnt.c:270
+msgid "%Jdefinition of static data member '%D' of dllimport'd class."
msgstr ""
-#: config/i386/winnt.c:322
-#, c-format
-msgid "inconsistent dll linkage for '%s': dllexport assumed."
+#: config/i386/winnt.c:329
+msgid "%Jinconsistent dll linkage for '%D', dllexport assumed."
msgstr ""
-#: config/i386/winnt.c:364
+#: config/i386/winnt.c:371
#, c-format
msgid "`%s' declared as both exported to and imported from a DLL"
msgstr "`%s' es declarado como exportado a e importado de una DLL al mismo tiempo"
-#: config/i386/winnt.c:373
-#, c-format
-msgid "failure in redeclaration of '%s': dllimport'd symbol lacks external linkage."
+#: config/i386/winnt.c:380
+msgid "%Jfailure in redeclaration of '%D': dllimport'd symbol lacks external linkage."
msgstr ""
-#: config/i386/winnt.c:479
-#, c-format
-msgid "'%s' %s after being referenced with dllimport linkage."
+#: config/i386/winnt.c:529
+msgid "%J'%D' defined locally after being referenced with dllimport linkage"
msgstr ""
-#: config/i386/cygwin.h:45
+#: config/i386/winnt.c:532
+msgid "%J'%D' redeclared without dllimport attribute after being referenced with dllimport linkage"
+msgstr ""
+
+#: config/i386/winnt.c:701
+#, fuzzy
+msgid "%J'%D' causes a section type conflict"
+msgstr "%s causa un conflicto de tipo de sección"
+
+#: config/i386/cygming.h:40
msgid "Use the Cygwin interface"
msgstr "Usar la interfaz Cygwin"
-#: config/i386/cygwin.h:46
+#: config/i386/cygming.h:41
msgid "Use the Mingw32 interface"
msgstr "Usar la interfaz Mingw32"
-#: config/i386/cygwin.h:47
+#: config/i386/cygming.h:42
msgid "Create GUI application"
msgstr "Crear una aplicación con interfaz gráfica de usuario (GUI)"
-#: config/i386/cygwin.h:48
+#: config/i386/cygming.h:43
msgid "Don't set Windows defines"
msgstr "No establecer las definiciones de Windows"
-#: config/i386/cygwin.h:49
+#: config/i386/cygming.h:44
msgid "Set Windows defines"
msgstr "Establecer las definiciones de Windows"
-#: config/i386/cygwin.h:50
+#: config/i386/cygming.h:45
msgid "Create console application"
msgstr "Crear una aplicación de consola"
-#: config/i386/cygwin.h:51 config/i386/win32.h:59
+#: config/i386/cygming.h:46
msgid "Generate code for a DLL"
msgstr "Generar código para una DLL"
-#: config/i386/cygwin.h:53 config/i386/win32.h:61
+#: config/i386/cygming.h:48
msgid "Ignore dllimport for functions"
msgstr "Ignorar dllimport para funciones"
-#: config/i386/cygwin.h:55
+#: config/i386/cygming.h:50
msgid "Use Mingw-specific thread support"
msgstr "Usar soporte de hilos específico de Mingw"
-#: config/i386/cygwin.h:245
+#: config/i386/cygming.h:169
#, c-format
msgid "-f%s ignored for target (all code is position independent)"
msgstr "se ignora -f%s para el objetivo (todo el código es independiente de posición)"
-#: config/i386/djgpp.h:206
+#: config/i386/djgpp.h:191
msgid "-mbnu210 is ignored (option is obsolete)"
msgstr "se ignora -mbnu210 (la opción es obsoleta)"
+#: config/i386/i386-interix.h:256
+#, fuzzy
+msgid "ms-bitfields not supported for objc"
+msgstr "-f%s no tiene soporte: ignorado"
+
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
-#: config/i386/i386.h:306
+#: config/i386/i386.h:339
msgid "Alternate calling convention"
msgstr "Convención de llamada alternativa"
-#: config/i386/i386.h:308 config/m68k/m68k.h:180 config/ns32k/ns32k.h:144
+#: config/i386/i386.h:341 config/m68k/m68k.h:344 config/ns32k/ns32k.h:144
msgid "Use normal calling convention"
msgstr "Usar convención de llamada normal"
-#: config/i386/i386.h:310
+#: config/i386/i386.h:343
msgid "Align some doubles on dword boundary"
msgstr "Alinear algunos doubles en límites de dword"
-#: config/i386/i386.h:312
+#: config/i386/i386.h:345
msgid "Align doubles on word boundary"
msgstr "Alinear doubles en límites de word"
-#: config/i386/i386.h:314
+#: config/i386/i386.h:347
msgid "Uninitialized locals in .bss"
msgstr "Locales sin inicializar en .bss"
-#: config/i386/i386.h:316
+#: config/i386/i386.h:349
msgid "Uninitialized locals in .data"
msgstr "Locales sin inicializar en .data"
-#: config/i386/i386.h:318 config/m68k/linux-aout.h:45 config/m68k/linux.h:50
-#: config/ns32k/ns32k.h:167
+#: config/i386/i386.h:351 config/m68k/linux.h:35 config/ns32k/ns32k.h:167
msgid "Use IEEE math for fp comparisons"
msgstr "Usar matemática IEEE para comparaciones fp"
-#: config/i386/i386.h:320 config/ns32k/ns32k.h:169
+#: config/i386/i386.h:353 config/ns32k/ns32k.h:169
msgid "Do not use IEEE math for fp comparisons"
msgstr "No usar matemática IEEE para comparaciones fp"
-#: config/i386/i386.h:322
+#: config/i386/i386.h:355
msgid "Return values of functions in FPU registers"
msgstr "Devolver valores de funciones en registros FPU"
-#: config/i386/i386.h:324
+#: config/i386/i386.h:357
msgid "Do not return values of functions in FPU registers"
msgstr "No devolver valores de funciones en registros FPU"
-#: config/i386/i386.h:326
+#: config/i386/i386.h:359
msgid "Do not generate sin, cos, sqrt for FPU"
msgstr "No generar sin, cos, sqrt para FPU"
-#: config/i386/i386.h:328
+#: config/i386/i386.h:361
msgid "Generate sin, cos, sqrt for FPU"
msgstr "Generar sin, cos, sqrt para FPU"
-#: config/i386/i386.h:330
+#: config/i386/i386.h:363
msgid "Omit the frame pointer in leaf functions"
msgstr "Omitir el marco de referencia para las funciones hojas"
-#: config/i386/i386.h:333
+#: config/i386/i386.h:366
msgid "Enable stack probing"
msgstr "Habilitar la prueba de la pila"
#. undocumented
#. undocumented
-#: config/i386/i386.h:338
+#: config/i386/i386.h:371
msgid "Align destination of the string operations"
msgstr "Alinear destino de las operaciones de cadenas"
-#: config/i386/i386.h:340
+#: config/i386/i386.h:373
msgid "Do not align destination of the string operations"
msgstr "No alinear destino de las operaciones de cadenas"
-#: config/i386/i386.h:342
+#: config/i386/i386.h:375
msgid "Inline all known string operations"
msgstr "Convertir a inline todas las operaciones de cadenas conocidas"
-#: config/i386/i386.h:344
+#: config/i386/i386.h:377
msgid "Do not inline all known string operations"
msgstr "No convertir a inline todas las operaciones de cadenas conocidas"
-#: config/i386/i386.h:346 config/i386/i386.h:350
+#: config/i386/i386.h:379 config/i386/i386.h:383
msgid "Use push instructions to save outgoing arguments"
msgstr "Usar instrucciones push para guardar los argumentos de salida"
-#: config/i386/i386.h:348 config/i386/i386.h:352
+#: config/i386/i386.h:381 config/i386/i386.h:385
msgid "Do not use push instructions to save outgoing arguments"
msgstr "No usar instrucciones push para guardar los argumentos de salida"
-#: config/i386/i386.h:354
+#: config/i386/i386.h:387
msgid "Support MMX built-in functions"
msgstr "Dar soporte para funciones internas MMX"
-#: config/i386/i386.h:356
+#: config/i386/i386.h:389
msgid "Do not support MMX built-in functions"
msgstr "No dar soporte para funciones internas MMX"
-#: config/i386/i386.h:358
+#: config/i386/i386.h:391
msgid "Support 3DNow! built-in functions"
msgstr "Dar soporte para funciones internas 3DNow!"
-#: config/i386/i386.h:360
+#: config/i386/i386.h:393
msgid "Do not support 3DNow! built-in functions"
msgstr "No dar soporte para funciones internas 3DNow!"
-#: config/i386/i386.h:362
+#: config/i386/i386.h:395
msgid "Support MMX and SSE built-in functions and code generation"
msgstr "Dar soporte para funciones internas y generación de código MMX y SSE"
-#: config/i386/i386.h:364
+#: config/i386/i386.h:397
msgid "Do not support MMX and SSE built-in functions and code generation"
msgstr "No dar soporte para funciones internas y generación de código MMX y SSE"
-#: config/i386/i386.h:366
+#: config/i386/i386.h:399
msgid "Support MMX, SSE and SSE2 built-in functions and code generation"
msgstr "Dar soporte para funciones internas y generación de código MMX, SSE y SSE2"
-#: config/i386/i386.h:368
+#: config/i386/i386.h:401
msgid "Do not support MMX, SSE and SSE2 built-in functions and code generation"
msgstr "No dar soporte para funciones internas y generación de código MMX, SSE y SSE2"
-#: config/i386/i386.h:370
+#: config/i386/i386.h:403
+#, fuzzy
+msgid "Support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr "Dar soporte para funciones internas y generación de código MMX, SSE y SSE2"
+
+#: config/i386/i386.h:405
+#, fuzzy
+msgid "Do not support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr "No dar soporte para funciones internas y generación de código MMX, SSE y SSE2"
+
+#: config/i386/i386.h:407
msgid "sizeof(long double) is 16"
msgstr "sizeof(long double) es 16"
-#: config/i386/i386.h:372
+#: config/i386/i386.h:409
msgid "sizeof(long double) is 12"
msgstr "sizeof(long double) es 12"
-#: config/i386/i386.h:374
+#: config/i386/i386.h:411
msgid "Generate 64bit x86-64 code"
msgstr "Generar código x86-64 de 64bit"
-#: config/i386/i386.h:376
+#: config/i386/i386.h:413
msgid "Generate 32bit i386 code"
msgstr "Generar código i386 de 32bit"
-#: config/i386/i386.h:378
+#: config/i386/i386.h:415
+msgid "Use native (MS) bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:417
+msgid "Use gcc default bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:419
msgid "Use red-zone in the x86-64 code"
msgstr "Usar la zona roja en el código x86-64"
-#: config/i386/i386.h:380
+#: config/i386/i386.h:421
msgid "Do not use red-zone in the x86-64 code"
msgstr "No usar la zona roja en el código x86-64"
+#: config/i386/i386.h:423
+#, c-format
+msgid "Use direct references against %gs when accessing tls data"
+msgstr ""
+
+#: config/i386/i386.h:425
+#, c-format
+msgid "Do not use direct references against %gs when accessing tls data"
+msgstr ""
+
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10579,23 +9899,24 @@ msgstr "No usar la zona roja en el código x86-64"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:409 config/rs6000/rs6000.h:393 config/sparc/sparc.h:635
+#: config/i386/i386.h:459 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437
+#: config/s390/s390.h:146 config/sparc/sparc.h:650
msgid "Schedule code for given CPU"
msgstr "Código de calendarizador para el CPU dado"
-#: config/i386/i386.h:411
+#: config/i386/i386.h:461
msgid "Generate floating point mathematics using given instruction set"
msgstr "Generar matemáticas de coma flotante usando el conjunto de instrucciones dado"
-#: config/i386/i386.h:413
+#: config/i386/i386.h:463 config/s390/s390.h:148
msgid "Generate code for given CPU"
msgstr "Generar código para el CPU dado"
-#: config/i386/i386.h:415
+#: config/i386/i386.h:465
msgid "Number of registers used to pass integer arguments"
msgstr "Número de registros usados para pasar argumentos enteros"
-#. TARGET_DEFAULT is defined in sun*.h and isi.h, etc.
+#. TARGET_DEFAULT is defined in m68k-none.h, netbsd.h, etc.
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10605,97 +9926,98 @@ msgstr "Número de registros usados para pasar argumentos enteros"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:417 config/m68k/m68k.h:263
+#: config/i386/i386.h:467 config/m68k/m68k.h:360
msgid "Loop code aligned to this power of 2"
msgstr "El código de ciclo es alineado a esta potencia de 2"
-#: config/i386/i386.h:419 config/m68k/m68k.h:265
+#: config/i386/i386.h:469 config/m68k/m68k.h:362
msgid "Jump targets are aligned to this power of 2"
msgstr "Los objetivos de salto son alineados a esta potencia de 2"
-#: config/i386/i386.h:421 config/m68k/m68k.h:267
+#: config/i386/i386.h:471 config/m68k/m68k.h:364
msgid "Function starts are aligned to this power of 2"
msgstr "Los inicios de las funciones son alineados a esta potencia de 2"
-#: config/i386/i386.h:424
+#: config/i386/i386.h:474
msgid "Attempt to keep stack aligned to this power of 2"
msgstr "Se trata de mantenter la pila alineada a esta potencia de 2"
-#: config/i386/i386.h:426
+#: config/i386/i386.h:476
msgid "Branches are this expensive (1-5, arbitrary units)"
msgstr "Las ramificaciones son así de caras (1-5, unidades arbitrarias)"
-#: config/i386/i386.h:428
+#: config/i386/i386.h:478
msgid "Use given x86-64 code model"
msgstr "Usar el modelo de código del x86-64 dado"
#. Undocumented.
#. Undocumented.
-#: config/i386/i386.h:434
+#: config/i386/i386.h:484
msgid "Use given assembler dialect"
msgstr "Usar el dialecto del ensamblador dado"
-#: config/i386/i386.h:436
+#: config/i386/i386.h:486
msgid "Use given thread-local storage dialect"
msgstr "Usar el dialecto de almacenamiento thread-local dado"
-#: config/i386/sco5.h:297
+#: config/i386/sco5.h:292
msgid "Generate ELF output"
msgstr "Generar salida ELF"
-#: config/i386/win32.h:53
-msgid "Use Mingw32 interface"
-msgstr "Usar la interfaz Mingw32"
-
-#: config/i386/win32.h:55
-msgid "Use Cygwin interface"
-msgstr "Usar la interfaz Cygwin"
-
-#: config/i386/win32.h:57
-msgid "Use bare Windows interface"
-msgstr "Usar la interfaz desnuda Windows"
-
#. If the environment variable DJDIR is not defined, then DJGPP is not installed correctly and GCC will quickly become confused with the default prefix settings. Report the problem now so the user doesn't receive deceptive "file not found" error messages later.
#. DJDIR is automatically defined by the DJGPP environment config file pointed to by the environment variable DJGPP. Examine DJGPP to try and figure out what's wrong.
-#: config/i386/xm-djgpp.h:71
+#: config/i386/xm-djgpp.h:64
msgid "environment variable DJGPP not defined"
msgstr "no se definió la variable de ambiente DJGPP"
-#: config/i386/xm-djgpp.h:73
+#: config/i386/xm-djgpp.h:66
#, c-format
msgid "environment variable DJGPP points to missing file '%s'"
msgstr "la variable de ambiente DJGPP apunta al fichero faltante '%s'"
-#: config/i386/xm-djgpp.h:76
+#: config/i386/xm-djgpp.h:69
#, c-format
msgid "environment variable DJGPP points to corrupt file '%s'"
msgstr "la variable de ambiente DJGPP apunta al fichero corrupto '%s'"
-#: config/i960/i960-c.c:66
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/i860/i860.h:60
+msgid "Generate code which uses the FPU"
+msgstr "Generar código que use el FPU"
+
+#: config/i860/i860.h:61 config/i860/i860.h:62
+msgid "Do not generate code which uses the FPU"
+msgstr "No generar código que use el FPU"
+
+#: config/i960/i960-c.c:68
msgid "sorry, not implemented: #pragma align NAME=SIZE"
msgstr "disculpe, no se ha implementado: #pragma align NOMBRE=TAMAÑO"
-#: config/i960/i960-c.c:71
+#: config/i960/i960-c.c:73
msgid "malformed #pragma align - ignored"
msgstr "#pragma align mal formado - ignorado"
-#: config/i960/i960-c.c:109
+#: config/i960/i960-c.c:111
msgid "sorry, not implemented: #pragma noalign NAME"
msgstr "disculpe, no se ha implementado: #pragma noalign NOMBRE"
-#: config/i960/i960.c:121 config/i960/i960.c:131
+#: config/i960/i960.c:134 config/i960/i960.c:144
msgid "conflicting architectures defined - using C series"
msgstr "se definieron arquitecturas en conflicto - usando las series C"
-#: config/i960/i960.c:126
+#: config/i960/i960.c:139
msgid "conflicting architectures defined - using K series"
msgstr "se definieron arquitecturas en conflicto - usando las series K"
-#: config/i960/i960.c:141
+#: config/i960/i960.c:154
msgid "iC2.0 and iC3.0 are incompatible - using iC3.0"
msgstr "iC2.0 e iC3.0 son incompatibles - usando iC3.0"
-#: config/i960/i960.c:1448 config/m68k/m68k.c:559 config/rs6000/rs6000.c:9976
+#: config/i960/i960.c:1456 config/m68k/m68k.c:588 config/rs6000/rs6000.c:11296
msgid "stack limit expression is not supported"
msgstr "no se da soporte a la expresión del límite de la pila"
@@ -10706,395 +10028,547 @@ msgstr "no se da soporte a la expresión del límite de la pila"
#. An empty string NAME is used to identify the default VALUE.
#. ??? Not all ten of these architecture variations actually exist, but I
#. am not sure which are real and which aren't.
-#: config/i960/i960.h:240
+#: config/i960/i960.h:250
msgid "Generate SA code"
msgstr "Generar código SA"
-#: config/i960/i960.h:243
+#: config/i960/i960.h:253
msgid "Generate SB code"
msgstr "Generar código SB"
#. {"sc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate SC code")},
-#: config/i960/i960.h:248
+#: config/i960/i960.h:258
msgid "Generate KA code"
msgstr "Generar código KA"
-#: config/i960/i960.h:251
+#: config/i960/i960.h:261
msgid "Generate KB code"
msgstr "Generar código KB"
#. {"kc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate KC code")},
-#: config/i960/i960.h:256
+#: config/i960/i960.h:266
msgid "Generate JA code"
msgstr "Generar código JA"
-#: config/i960/i960.h:258
+#: config/i960/i960.h:268
msgid "Generate JD code"
msgstr "Generar código JD"
-#: config/i960/i960.h:261
+#: config/i960/i960.h:271
msgid "Generate JF code"
msgstr "Generar código JF"
-#: config/i960/i960.h:263
+#: config/i960/i960.h:273
msgid "generate RP code"
msgstr "generar código RP"
-#: config/i960/i960.h:266
+#: config/i960/i960.h:276
msgid "Generate MC code"
msgstr "Generar código MC"
-#: config/i960/i960.h:269
+#: config/i960/i960.h:279
msgid "Generate CA code"
msgstr "Generar código CA"
#. {"cb", (TARGET_FLAG_NUMERICS|TARGET_FLAG_C_SERIES| TARGET_FLAG_BRANCH_PREDICT|TARGET_FLAG_CODE_ALIGN), N_("Generate CB code")}, {"cc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_C_SERIES|TARGET_FLAG_BRANCH_PREDICT| TARGET_FLAG_CODE_ALIGN), N_("Generate CC code")},
-#: config/i960/i960.h:279
+#: config/i960/i960.h:289
msgid "Generate CF code"
msgstr "Generar código CF"
-#: config/i960/i960.h:283 config/mips/mips.h:568 config/pa/pa.h:266
+#: config/i960/i960.h:293 config/mips/mips.h:539 config/pa/pa.h:266
msgid "Use software floating point"
msgstr "Usar coma flotante de software"
-#: config/i960/i960.h:285
+#: config/i960/i960.h:295
msgid "Use alternate leaf function entries"
msgstr "Usar entradas de función hojas alternadas"
-#: config/i960/i960.h:287
+#: config/i960/i960.h:297
msgid "Do not use alternate leaf function entries"
msgstr "No usar entradas de función hojas alternadas"
# ¿O mejor "llamada de la cola"? cfuga
-#: config/i960/i960.h:289
+#: config/i960/i960.h:299
msgid "Perform tail call optimization"
msgstr "Realizar optimización de la llamada del extremo"
-#: config/i960/i960.h:291
+#: config/i960/i960.h:301
msgid "Do not perform tail call optimization"
msgstr "No realizar optimización de la llamada del extremo"
-#: config/i960/i960.h:293
+#: config/i960/i960.h:303
msgid "Use complex addressing modes"
msgstr "Usar modos de direccionamiento complejos"
-#: config/i960/i960.h:295
+#: config/i960/i960.h:305
msgid "Do not use complex addressing modes"
msgstr "No usar modos de direccionamiento complejos"
-#: config/i960/i960.h:297
+#: config/i960/i960.h:307
msgid "Align code to 8 byte boundary"
msgstr "Alinear el código a límites de 8 byte"
-#: config/i960/i960.h:299
+#: config/i960/i960.h:309
msgid "Do not align code to 8 byte boundary"
msgstr "No alinear el código a límites de 8 byte"
#. {"clean-linkage", (TARGET_FLAG_CLEAN_LINKAGE), N_("Force use of prototypes")}, {"no-clean-linkage", -(TARGET_FLAG_CLEAN_LINKAGE), N_("Do not force use of prototypes")},
-#: config/i960/i960.h:305 config/i960/i960.h:307
+#: config/i960/i960.h:315 config/i960/i960.h:317
msgid "Enable compatibility with iC960 v2.0"
msgstr "Activar la compatibilidad con iC960 v2.0"
-#: config/i960/i960.h:309
+#: config/i960/i960.h:319
msgid "Enable compatibility with iC960 v3.0"
msgstr "Activar la compatibilidad con iC960 v3.0"
-#: config/i960/i960.h:311 config/i960/i960.h:313
+#: config/i960/i960.h:321 config/i960/i960.h:323
msgid "Enable compatibility with ic960 assembler"
msgstr "Activar la compatibilidad con el ensamblador ic960"
-#: config/i960/i960.h:315
+#: config/i960/i960.h:325
msgid "Do not permit unaligned accesses"
msgstr "No permitir accessos sin alinear"
-#: config/i960/i960.h:317
+#: config/i960/i960.h:327
msgid "Permit unaligned accesses"
msgstr "Permitir accessos sin alinear"
-#: config/i960/i960.h:319
+#: config/i960/i960.h:329
msgid "Layout types like Intel's v1.3 gcc"
msgstr "Presentar tipos como en el gcc v1.3 de Intel"
-#: config/i960/i960.h:321
+#: config/i960/i960.h:331
msgid "Do not layout types like Intel's v1.3 gcc"
msgstr "No presentar tipos como en el gcc v1.3 de Intel"
-#: config/i960/i960.h:323 config/sparc/freebsd.h:80 config/sparc/linux.h:86
-#: config/sparc/linux64.h:88 config/sparc/netbsd-elf.h:238
+#: config/i960/i960.h:333 config/sparc/freebsd.h:76 config/sparc/linux.h:91
+#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215
msgid "Use 64 bit long doubles"
msgstr "Usar long doubles de 64 bit"
-#: config/i960/i960.h:325
+#: config/i960/i960.h:335
msgid "Enable linker relaxation"
msgstr "Activar la relajación del enlazador"
-#: config/i960/i960.h:327
+#: config/i960/i960.h:337
msgid "Do not enable linker relaxation"
msgstr "Desactivar la relajación del enlazador"
-#: config/ia64/ia64-c.c:51
+#: config/ia64/ia64-c.c:52
msgid "malformed #pragma builtin"
msgstr "#pragma interno malformado"
-#: config/ia64/ia64.c:4015
+#: config/ia64/ia64.c:1021 config/m32r/m32r.c:354
+#, c-format
+msgid "invalid argument of `%s' attribute"
+msgstr "argumento inválido del atributo `%s'"
+
+#: config/ia64/ia64.c:1033
+#, fuzzy
+msgid "%Jan address area attribute cannot be specified for local variables"
+msgstr "no se puede especificar un atributo de área de datos para variables locales"
+
+#: config/ia64/ia64.c:1040
+#, fuzzy
+msgid "%Jaddress area of '%s' conflicts with previous declaration"
+msgstr "el área de datos de '%s' en conflicto con una declaración previa"
+
+#: config/ia64/ia64.c:1047
+#, fuzzy
+msgid "%Jaddress area attribute cannot be specified for functions"
+msgstr "no se puede especificar un atributo de área de datos para variables locales"
+
+#: config/ia64/ia64.c:4288
msgid "ia64_print_operand: unknown code"
msgstr "ia64_print_operand: código desconocido"
-#: config/ia64/ia64.c:4292
+#: config/ia64/ia64.c:4628
msgid "value of -mfixed-range must have form REG1-REG2"
msgstr "el valor de -mfixed-range debe ser de la forma REG1-REG2"
-#: config/ia64/ia64.c:4319
+#: config/ia64/ia64.c:4655
#, c-format
msgid "%s-%s is an empty range"
msgstr "%s-%s es un rango vacío"
-#: config/ia64/ia64.c:4350
+#: config/ia64/ia64.c:4703
msgid "cannot optimize floating point division for both latency and throughput"
msgstr "no se puede optimizar la división de coma flotante para latencia y salida al mismo tiempo"
-#: config/ia64/ia64.c:4356
+#: config/ia64/ia64.c:4709
msgid "cannot optimize integer division for both latency and throughput"
msgstr "no se puede optimizar la división entera para latencia y salida al mismo tiempo"
-#: config/ia64/ia64.c:4368
+#: config/ia64/ia64.c:4715
+#, fuzzy
+msgid "cannot optimize square root for both latency and throughput"
+msgstr "no se puede optimizar la división entera para latencia y salida al mismo tiempo"
+
+#: config/ia64/ia64.c:4721
+msgid "not yet implemented: latency-optimized inline square root"
+msgstr ""
+
+#: config/ia64/ia64.c:4733
#, c-format
msgid "bad value (%s) for -mtls-size= switch"
msgstr "valor erróneo (%s) para el interruptor -mtls-size="
+#: config/ia64/ia64.c:4749
+#, fuzzy, c-format
+msgid "bad value (%s) for -tune= switch"
+msgstr "valor erróneo (%s) para el interruptor -mtune="
+
#. This macro defines names of command options to set and clear bits in
#. `target_flags'. Its definition is an initializer with a subgrouping for
#. each command option.
-#: config/ia64/ia64.h:154
+#: config/ia64/ia64.h:172
msgid "Generate big endian code"
msgstr "Generar código big endian"
-#: config/ia64/ia64.h:156 config/mcore/mcore.h:159
+#: config/ia64/ia64.h:174 config/mcore/mcore.h:154
msgid "Generate little endian code"
msgstr "Generar código little endian"
-#: config/ia64/ia64.h:158
+#: config/ia64/ia64.h:176
msgid "Generate code for GNU as"
msgstr "Generar código para as de GNU"
-#: config/ia64/ia64.h:160
+#: config/ia64/ia64.h:178
msgid "Generate code for Intel as"
msgstr "Generar código as de Intel"
-#: config/ia64/ia64.h:162
+#: config/ia64/ia64.h:180
msgid "Generate code for GNU ld"
msgstr "Generar código para ld de GNU"
-#: config/ia64/ia64.h:164
+#: config/ia64/ia64.h:182
msgid "Generate code for Intel ld"
msgstr "Generar código para ld de Intel"
-#: config/ia64/ia64.h:166
+#: config/ia64/ia64.h:184
msgid "Generate code without GP reg"
msgstr "Generar código sin registro GP"
-#: config/ia64/ia64.h:168
+#: config/ia64/ia64.h:186
msgid "Emit stop bits before and after volatile extended asms"
msgstr "Emitir bits de parada antes y después de asms extendidos con volatile"
-#: config/ia64/ia64.h:170
+#: config/ia64/ia64.h:188
msgid "Don't emit stop bits before and after volatile extended asms"
msgstr "No emitir bits de parada antes y después de asms extendidos con volatile"
-#: config/ia64/ia64.h:172
+#: config/ia64/ia64.h:190
msgid "Emit code for Itanium (TM) processor B step"
msgstr "Emitir código para el procesador Itanium (TM) paso B"
-#: config/ia64/ia64.h:174
+#: config/ia64/ia64.h:192
msgid "Use in/loc/out register names"
msgstr "Usar nombres de registro in/loc/out"
-#: config/ia64/ia64.h:176
+#: config/ia64/ia64.h:194
msgid "Disable use of sdata/scommon/sbss"
msgstr "Desactivar el uso de sdata/scommon/sbss"
-#: config/ia64/ia64.h:178
+#: config/ia64/ia64.h:196
msgid "Enable use of sdata/scommon/sbss"
msgstr "Activar el uso de sdata/scommon/sbss"
-#: config/ia64/ia64.h:180
+#: config/ia64/ia64.h:198
msgid "gp is constant (but save/restore gp on indirect calls)"
msgstr "gp es constante (pero hay save/restore de gp en llamadas indirectas)"
-#: config/ia64/ia64.h:182
+#: config/ia64/ia64.h:200
msgid "Generate self-relocatable code"
msgstr "Generar código auto-reubicable"
-#: config/ia64/ia64.h:184
+#: config/ia64/ia64.h:202
msgid "Generate inline floating point division, optimize for latency"
msgstr "Generar división de coma flotante inline, optimizada para latencia"
-#: config/ia64/ia64.h:186
+#: config/ia64/ia64.h:204
msgid "Generate inline floating point division, optimize for throughput"
msgstr "Generar división de coma flotante inline, optimizada para salida"
-#: config/ia64/ia64.h:188
+#: config/ia64/ia64.h:206
msgid "Generate inline integer division, optimize for latency"
msgstr "Generar división entera inline, optimizada para latencia"
-#: config/ia64/ia64.h:190
+#: config/ia64/ia64.h:208
msgid "Generate inline integer division, optimize for throughput"
msgstr "Generar división entera inline, optimizada para salida"
-#: config/ia64/ia64.h:192
+#: config/ia64/ia64.h:210
+#, fuzzy
+msgid "Generate inline square root, optimize for latency"
+msgstr "Generar división entera inline, optimizada para latencia"
+
+#: config/ia64/ia64.h:212
+#, fuzzy
+msgid "Generate inline square root, optimize for throughput"
+msgstr "Generar división entera inline, optimizada para salida"
+
+#: config/ia64/ia64.h:214
msgid "Enable Dwarf 2 line debug info via GNU as"
msgstr "Activar la información de la línea de depuración Dwarf 2 a través de as de GNU"
-#: config/ia64/ia64.h:194
+#: config/ia64/ia64.h:216
msgid "Disable Dwarf 2 line debug info via GNU as"
msgstr "Desactivar la información de la línea de depuración Dwarf 2 a través de as de GNU"
-#: config/ia64/ia64.h:223
+#: config/ia64/ia64.h:218
+msgid "Enable earlier placing stop bits for better scheduling"
+msgstr ""
+
+#: config/ia64/ia64.h:220
+#, fuzzy
+msgid "Disable earlier placing stop bits"
+msgstr "Desactivar las funciones paralelas"
+
+#: config/ia64/ia64.h:265
msgid "Specify range of registers to make fixed"
msgstr "Especifica el rango de registros a convertir en fijos"
-#: config/ip2k/ip2k.c:1090
+#: config/ip2k/ip2k.c:1074
msgid "bad operand"
msgstr "operando erróneo"
-#: config/m32r/m32r.c:139
+#: config/iq2000/iq2000.c:1816
+#, c-format
+msgid "bad value (%s) for -mcpu= switch"
+msgstr "valor erróneo (%s) para el interruptor -mcpu="
+
+#: config/iq2000/iq2000.c:1845
+#, fuzzy, c-format
+msgid "The compiler does not support -march=%s."
+msgstr "%s no tiene soporte para %s"
+
+#: config/iq2000/iq2000.c:2232
+#, fuzzy, c-format
+msgid "gp_offset (%ld) or end_offset (%ld) is less than zero."
+msgstr "gp_offset (%ld) o end_offset (%ld) es menor a cero"
+
+#: config/iq2000/iq2000.c:3023
+#, fuzzy, c-format
+msgid "argument `%d' is not a constant"
+msgstr "el argumento de `asm' no es una cadena constante"
+
+#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2081
+msgid "PRINT_OPERAND_ADDRESS, null pointer"
+msgstr "PRINT_OPERAND_ADDRESS, puntero nulo"
+
+#: config/iq2000/iq2000.c:3469
+#, fuzzy, c-format
+msgid "PRINT_OPERAND: Unknown punctuation '%c'"
+msgstr "PRINT_OPERAND: puntuación desconocida '%c'"
+
+#: config/iq2000/iq2000.c:3478 config/mips/mips.c:5457
+#: config/xtensa/xtensa.c:1935
+msgid "PRINT_OPERAND null pointer"
+msgstr "PRINT_OPERAND puntero nulo"
+
+#: config/iq2000/iq2000.c:3547
+#, c-format
+msgid "invalid %%P operand"
+msgstr "operando %%P inválido"
+
+#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8881
+#, c-format
+msgid "invalid %%p value"
+msgstr "valor %%p inválido"
+
+#: config/iq2000/iq2000.c:3619 config/mips/mips.c:5587
+#, c-format
+msgid "invalid use of %%d, %%x, or %%X"
+msgstr "uso inválido de %%d, %%x, o %%X"
+
+#: config/iq2000/iq2000.h:72 config/mn10300/mn10300.h:74
+msgid "No default crt0.o"
+msgstr "No está el crt0.o por defecto"
+
+#: config/iq2000/iq2000.h:74
+msgid "Use GP relative sdata/sbss sections"
+msgstr "Utilizar secciones sdata/sbss relativas a GP"
+
+#: config/iq2000/iq2000.h:76
+msgid "Don't use GP relative sdata/sbss sections"
+msgstr "No utilizar secciones sdata/sbss relativas a GP"
+
+#: config/iq2000/iq2000.h:78 config/mips/mips.h:563
+msgid "Use ROM instead of RAM"
+msgstr "Usar la ROM en lugar de la RAM"
+
+#: config/iq2000/iq2000.h:80 config/mips/mips.h:565
+msgid "Don't use ROM instead of RAM"
+msgstr "No usar la ROM en lugar de la RAM"
+
+#: config/iq2000/iq2000.h:82 config/mips/mips.h:567
+msgid "Put uninitialized constants in ROM (needs -membedded-data)"
+msgstr "Poner las constantes sin inicializar en ROM (necesita -membedded-data)"
+
+#: config/iq2000/iq2000.h:84 config/mips/mips.h:569
+msgid "Don't put uninitialized constants in ROM"
+msgstr "No poner las constantes sin inicializar en ROM"
+
+#: config/iq2000/iq2000.h:106 config/mips/mips.h:731 config/pa/pa.h:310
+msgid "Specify CPU for scheduling purposes"
+msgstr "Especificar el CPU para propósitos de calendarización"
+
+#: config/iq2000/iq2000.h:108 config/mips/mips.h:733
+msgid "Specify CPU for code generation purposes"
+msgstr "Especificar el CPU para propósitos de generación de código"
+
+#: config/m32r/m32r.c:172
#, c-format
msgid "bad value (%s) for -mmodel switch"
msgstr "valor erróneo (%s) para el interruptor -mmodel"
-#: config/m32r/m32r.c:148
+#: config/m32r/m32r.c:181
#, c-format
msgid "bad value (%s) for -msdata switch"
msgstr "valor erróneo (%s) para el interruptor -msdata"
-#: config/m32r/m32r.c:319
-#, c-format
-msgid "invalid argument of `%s' attribute"
-msgstr "argumento inválido del atributo `%s'"
-
-#: config/m32r/m32r.c:422
-msgid "const objects cannot go in .sdata/.sbss"
-msgstr "los objetos const no pueden ir en .sdata/.sbss"
+#: config/m32r/m32r.c:188
+#, fuzzy, c-format
+msgid "bad value (%s) for -flush-trap=n (0=<n<=15)"
+msgstr "valor erróneo (%s) para el interruptor -msdata"
-#: config/m32r/m32r.c:2256
+#: config/m32r/m32r.c:2295
#, c-format
msgid "invalid operand to %%s code"
msgstr "operando inválido para el código %%s"
-#: config/m32r/m32r.c:2263
+#: config/m32r/m32r.c:2302
#, c-format
msgid "invalid operand to %%p code"
msgstr "operador inválido para el código %%p"
-#: config/m32r/m32r.c:2318
+#: config/m32r/m32r.c:2357
msgid "bad insn for 'A'"
msgstr "insn erróneo para 'A'"
-#: config/m32r/m32r.c:2370
+#: config/m32r/m32r.c:2404
#, c-format
msgid "invalid operand to %%T/%%B code"
msgstr "operador inválido para el código %%T/%%B"
-#: config/m32r/m32r.c:2393
+#: config/m32r/m32r.c:2427
#, c-format
msgid "invalid operand to %%N code"
msgstr "operando inválido para el código %%N"
-#: config/m32r/m32r.c:2438
+#: config/m32r/m32r.c:2460
msgid "pre-increment address is not a register"
msgstr "la dirección de pre-incremento no es un registro"
-#: config/m32r/m32r.c:2445
+#: config/m32r/m32r.c:2467
msgid "pre-decrement address is not a register"
msgstr "la dirección de pre-decremento no es un registro"
-#: config/m32r/m32r.c:2452
+#: config/m32r/m32r.c:2474
msgid "post-increment address is not a register"
msgstr "la dirección de post-incremento no es un registro"
-#: config/m32r/m32r.c:2530 config/m32r/m32r.c:2546
-#: config/rs6000/rs6000.c:12802
+#: config/m32r/m32r.c:2550 config/m32r/m32r.c:2566
+#: config/rs6000/rs6000.c:14753
msgid "bad address"
msgstr "dirección errónea"
-#: config/m32r/m32r.c:2551
+#: config/m32r/m32r.c:2571
msgid "lo_sum not of register"
msgstr "lo_sum no de un registro"
#. { "relax", TARGET_RELAX_MASK, "" }, { "no-relax", -TARGET_RELAX_MASK, "" },
-#: config/m32r/m32r.h:241
+#: config/m32r/m32r.h:277
msgid "Display compile time statistics"
msgstr "Mostrar estadísticas de tiempo de compilación"
-#: config/m32r/m32r.h:243
+#: config/m32r/m32r.h:279
msgid "Align all loops to 32 byte boundary"
msgstr "Alinear todos los ciclose al límite de 32 byte"
-#: config/m32r/m32r.h:246
+#: config/m32r/m32r.h:282
msgid "Only issue one instruction per cycle"
msgstr "Sólo ejecutar una instrucción por ciclo"
-#: config/m32r/m32r.h:249
+#: config/m32r/m32r.h:285
msgid "Prefer branches over conditional execution"
msgstr "Preferir las ramas sobre la ejecución condicional"
-#: config/m32r/m32r.h:265
+#: config/m32r/m32r.h:306
msgid "Code size: small, medium or large"
msgstr "Tamaño del código: small, medium o large"
-#: config/m32r/m32r.h:267
+#: config/m32r/m32r.h:308
msgid "Small data area: none, sdata, use"
msgstr "Área de datos small: none, sdata, use"
-#: config/m68hc11/m68hc11.c:242
+#: config/m32r/m32r.h:310 config/mips/mips.h:739
+msgid "Don't call any cache flush functions"
+msgstr "No llamar ninguna función de limpieza de caché"
+
+#: config/m32r/m32r.h:312 config/mips/mips.h:741
+msgid "Specify cache flush function"
+msgstr "Especificar la función de limpieza de caché"
+
+#: config/m32r/m32r.h:314
+#, fuzzy
+msgid "Don't call any cache flush trap"
+msgstr "No llamar ninguna función de limpieza de caché"
+
+#: config/m32r/m32r.h:316
+#, fuzzy
+msgid "Specify cache flush trap number"
+msgstr "Especificar la función de limpieza de caché"
+
+#: config/m68hc11/m68hc11.c:269
#, c-format
msgid "-f%s ignored for 68HC11/68HC12 (not supported)"
msgstr "se ignora -f%s para 68HC11/68HC12 (sin soporte)"
-#: config/m68hc11/m68hc11.c:1305
+#: config/m68hc11/m68hc11.c:1260
msgid "`trap' and `far' attributes are not compatible, ignoring `far'"
msgstr "los atributos `trap' y `far' no son compatibles, se ignora `far'"
-#: config/m68hc11/m68hc11.c:1311
+#: config/m68hc11/m68hc11.c:1266
msgid "`trap' attribute is already used"
msgstr "el atributo `trap' ya está en uso"
#. !!!! SCz wrong here.
-#: config/m68hc11/m68hc11.c:3327 config/m68hc11/m68hc11.c:3733
+#: config/m68hc11/m68hc11.c:3222 config/m68hc11/m68hc11.c:3606
msgid "move insn not handled"
msgstr "no se maneja move insn"
-#: config/m68hc11/m68hc11.c:3579 config/m68hc11/m68hc11.c:3663
-#: config/m68hc11/m68hc11.c:3946
+#: config/m68hc11/m68hc11.c:3454 config/m68hc11/m68hc11.c:3538
+#: config/m68hc11/m68hc11.c:3809
msgid "invalid register in the move instruction"
msgstr "registro inválido en la instrucción move"
-#: config/m68hc11/m68hc11.c:3613
+#: config/m68hc11/m68hc11.c:3488
msgid "invalid operand in the instruction"
msgstr "operando inválido en la instrucción"
-#: config/m68hc11/m68hc11.c:3920
+#: config/m68hc11/m68hc11.c:3783
msgid "invalid register in the instruction"
msgstr "registro inválido en la instrucción"
-#: config/m68hc11/m68hc11.c:3953
+#: config/m68hc11/m68hc11.c:3816
msgid "operand 1 must be a hard register"
msgstr "el operando 1 debe ser un registro fijo"
# FIXME: ¿O 'rotación de insn inválida'? Revisar en el código. cfuga
-#: config/m68hc11/m68hc11.c:3970
+#: config/m68hc11/m68hc11.c:3830
msgid "invalid rotate insn"
msgstr "rotate insn inválido"
-#: config/m68hc11/m68hc11.c:4391
+#: config/m68hc11/m68hc11.c:4246
msgid "registers IX, IY and Z used in the same INSN"
msgstr "se usaron los registros IX, IY y Z en el mismo INSN"
-#: config/m68hc11/m68hc11.c:4728 config/m68hc11/m68hc11.c:5031
+#: config/m68hc11/m68hc11.c:4583 config/m68hc11/m68hc11.c:4883
msgid "cannot do z-register replacement"
msgstr "no se puede reemplazar el registro-z"
-#: config/m68hc11/m68hc11.c:5094
+#: config/m68hc11/m68hc11.c:4946
msgid "invalid Z register replacement for insn"
msgstr "reemplazo de registro Z inválido para el insn"
@@ -11102,59 +10576,59 @@ msgstr "reemplazo de registro Z inválido para el insn"
#. pairs in braces, each pair being { "NAME", VALUE } where VALUE is the bits
#. to set or minus the bits to clear. An empty string NAME is used to
#. identify the default VALUE.
-#: config/m68hc11/m68hc11.h:172
+#: config/m68hc11/m68hc11.h:177
msgid "Compile with 16-bit integer mode"
msgstr "Compilar con el modo entero de 16-bit"
-#: config/m68hc11/m68hc11.h:174
+#: config/m68hc11/m68hc11.h:179
msgid "Compile with 32-bit integer mode"
msgstr "Compilar con el modo entero de 32-bit"
-#: config/m68hc11/m68hc11.h:176
+#: config/m68hc11/m68hc11.h:181
msgid "Auto pre/post decrement increment allowed"
msgstr "Se permite el auto pre/post decremento incremento"
-#: config/m68hc11/m68hc11.h:178
+#: config/m68hc11/m68hc11.h:183
msgid "Auto pre/post decrement increment not allowed"
msgstr "No se permite el auto pre/post decremento incremento"
-#: config/m68hc11/m68hc11.h:180
+#: config/m68hc11/m68hc11.h:185
msgid "Min/max instructions allowed"
msgstr "Se permiten las instrucciones min/max"
-#: config/m68hc11/m68hc11.h:182
+#: config/m68hc11/m68hc11.h:187
msgid "Min/max instructions not allowed"
msgstr "No se permiten las instrucciones min/max"
-#: config/m68hc11/m68hc11.h:184
+#: config/m68hc11/m68hc11.h:189
msgid "Use call and rtc for function calls and returns"
msgstr "Usar call y rtc para llamadas y devoluciones de función"
-#: config/m68hc11/m68hc11.h:186
+#: config/m68hc11/m68hc11.h:191
msgid "Use jsr and rts for function calls and returns"
msgstr "Usar jsr y rts para llamadas y devoluciones de función"
# Ya sé que "soft" se refiere a un tipo de dato no fijo, pero no se me
# ocurre en este momento una mejor traducción. cfuga
-#: config/m68hc11/m68hc11.h:188
+#: config/m68hc11/m68hc11.h:193
msgid "Do not use direct addressing mode for soft registers"
msgstr "No usar modo de direccionamiento directo para los registros suaves"
# Ya sé que "soft" se refiere a un tipo de dato no fijo, pero no se me
# ocurre en este momento una mejor traducción. cfuga
-#: config/m68hc11/m68hc11.h:190
+#: config/m68hc11/m68hc11.h:195
msgid "Use direct addressing mode for soft registers"
msgstr "Usar modo de direccionamiento directo para los registros suaves"
-#: config/m68hc11/m68hc11.h:192 config/m68hc11/m68hc11.h:198
+#: config/m68hc11/m68hc11.h:197 config/m68hc11/m68hc11.h:203
msgid "Compile for a 68HC11"
msgstr "Compilar para un 68HC11"
-#: config/m68hc11/m68hc11.h:194 config/m68hc11/m68hc11.h:200
+#: config/m68hc11/m68hc11.h:199 config/m68hc11/m68hc11.h:205
msgid "Compile for a 68HC12"
msgstr "Compilar para un 68HC12"
-#: config/m68hc11/m68hc11.h:196 config/m68hc11/m68hc11.h:202
+#: config/m68hc11/m68hc11.h:201 config/m68hc11/m68hc11.h:207
msgid "Compile for a 68HCS12"
msgstr "Compilar para un 68HCS12"
@@ -11167,30 +10641,44 @@ msgstr "Compilar para un 68HCS12"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/m68hc11/m68hc11.h:216
+#: config/m68hc11/m68hc11.h:221
msgid "Specify the register allocation order"
msgstr "Especificar el orden de asignación de registros"
-#: config/m68hc11/m68hc11.h:218
+#: config/m68hc11/m68hc11.h:223
msgid "Indicate the number of soft registers available"
msgstr "Indicar el número de registros suaves disponibles"
-#: config/m68k/m68k.c:158
+#: config/m68k/m68k.c:227
#, c-format
msgid "-malign-loops=%d is not between 1 and %d"
msgstr "-malign-loops=%d no está entre 1 y %d"
-#: config/m68k/m68k.c:169
+#: config/m68k/m68k.c:238
+msgid "-mshared-library-id= specified without -mid-shared-library"
+msgstr ""
+
+#: config/m68k/m68k.c:241
+#, fuzzy, c-format
+msgid "-mshared-library-id=%d is not between 0 and %d"
+msgstr "-mregparm=%d no está entre 0 y %d"
+
+#: config/m68k/m68k.c:255
+#, fuzzy
+msgid "cannot specify both -msep-data and -mid-shared-library"
+msgstr "no se pueden especificar -C y -o al mismo tiempo"
+
+#: config/m68k/m68k.c:270
#, c-format
msgid "-malign-jumps=%d is not between 1 and %d"
msgstr "-malign-jumps=%d no está entre 1 y %d"
-#: config/m68k/m68k.c:180
+#: config/m68k/m68k.c:281
#, c-format
msgid "-malign-functions=%d is not between 1 and %d"
msgstr "-malign-functions=%d no está entre 1 y %d"
-#: config/m68k/m68k.c:189
+#: config/m68k/m68k.c:290
msgid "-fPIC is not currently supported on the 68000 or 68010\n"
msgstr "-fPIC actualmente no tiene soporte en el 68000 o 68010\n"
@@ -11199,504 +10687,442 @@ msgstr "-fPIC actualmente no tiene soporte en el 68000 o 68010\n"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/m68k/m68k.h:162 config/m68k/m68k.h:164
+#: config/m68k/m68k.h:248 config/m68k/m68k.h:250
msgid "Generate code for a 68020"
msgstr "Generar código para un 68020"
-#: config/m68k/m68k.h:169 config/m68k/m68k.h:172
+#: config/m68k/m68k.h:255 config/m68k/m68k.h:258
msgid "Generate code for a 68000"
msgstr "Generar código para un 68000"
-#: config/m68k/m68k.h:174
+#: config/m68k/m68k.h:260
msgid "Use the bit-field instructions"
msgstr "Usar las instrucciones de campos de bit"
-#: config/m68k/m68k.h:176
+#: config/m68k/m68k.h:262
msgid "Do not use the bit-field instructions"
msgstr "No usar las instrucciones de campos de bit"
-#: config/m68k/m68k.h:178
-msgid "Use different calling convention using 'rtd'"
-msgstr "Usar la convención de llamada diferente usando 'rtd'"
-
-#: config/m68k/m68k.h:182
+#: config/m68k/m68k.h:264
msgid "Consider type `int' to be 16 bits wide"
msgstr "Considerar que el tipo `int' es de 16 bits de anchura"
-#: config/m68k/m68k.h:184
+#: config/m68k/m68k.h:266
msgid "Consider type `int' to be 32 bits wide"
msgstr "Considerar que el tipo `int' es de 32 bits de anchura"
-#: config/m68k/m68k.h:186
-msgid "Generate code for a Sun FPA"
-msgstr "Generar código para un FPA de Sun"
-
-#: config/m68k/m68k.h:189
-msgid "Do not generate code for a Sun FPA"
-msgstr "No generar código para un FPA de Sun"
-
-#: config/m68k/m68k.h:191 config/m68k/m68k.h:193
-msgid "Generate code for a Sun Sky board"
-msgstr "Generar código para una tarjeta Sun Sky"
-
-#: config/m68k/m68k.h:195
-msgid "Do not use Sky linkage convention"
-msgstr "No generar código para una tarjeta Sun Sky"
-
-#: config/m68k/m68k.h:197
-msgid "Generate code for a 68881"
-msgstr "Generar código para un 68881"
-
-#: config/m68k/m68k.h:200
+#: config/m68k/m68k.h:269
msgid "Generate code with library calls for floating point"
msgstr "Generar código con llamadas a bibliotecas para coma flotante"
-#: config/m68k/m68k.h:202
+#: config/m68k/m68k.h:271
msgid "Generate code for a 68040, without any new instructions"
msgstr "Generar código para un 68040, sin ninguna instrucción nueva"
-#: config/m68k/m68k.h:205
+#: config/m68k/m68k.h:274
msgid "Generate code for a 68060, without any new instructions"
msgstr "Generar código para un 68060, sin ninguna instrucción nueva"
-#: config/m68k/m68k.h:209
+#: config/m68k/m68k.h:278
msgid "Generate code for a 68030"
msgstr "Generar código para un 68030"
-#: config/m68k/m68k.h:212
+#: config/m68k/m68k.h:281
msgid "Generate code for a 68040"
msgstr "Generar código para un 68040"
-#: config/m68k/m68k.h:216
+#: config/m68k/m68k.h:285
msgid "Generate code for a 68060"
msgstr "Generar código para un 68060"
-#: config/m68k/m68k.h:221
+#: config/m68k/m68k.h:290
msgid "Generate code for a 520X"
msgstr "Generar código para un 520X"
-#: config/m68k/m68k.h:224
+#: config/m68k/m68k.h:294
+#, fuzzy
+msgid "Generate code for a 5206e"
+msgstr "Generar código para un 520X"
+
+#: config/m68k/m68k.h:298
+#, fuzzy
+msgid "Generate code for a 528x"
+msgstr "Generar código para un 520X"
+
+#: config/m68k/m68k.h:302
+#, fuzzy
+msgid "Generate code for a 5307"
+msgstr "Generar código para un 520X"
+
+#: config/m68k/m68k.h:306
+#, fuzzy
+msgid "Generate code for a 5407"
+msgstr "Generar código para un 520X"
+
+#: config/m68k/m68k.h:309
msgid "Generate code for a 68851"
msgstr "Generar código para un 68851"
-#: config/m68k/m68k.h:226
+#: config/m68k/m68k.h:311
msgid "Do no generate code for a 68851"
msgstr "No generar código para un 68851"
-#: config/m68k/m68k.h:229
+#: config/m68k/m68k.h:314
msgid "Generate code for a 68302"
msgstr "Generar código para un 68302"
-#: config/m68k/m68k.h:232
+#: config/m68k/m68k.h:317
msgid "Generate code for a 68332"
msgstr "Generar código para un 68332"
-#: config/m68k/m68k.h:236
+#: config/m68k/m68k.h:321
msgid "Generate code for a cpu32"
msgstr "Generar código para un cpu32"
-#: config/m68k/m68k.h:239
+#: config/m68k/m68k.h:324
msgid "Align variables on a 32-bit boundary"
msgstr "Alinear las variables en un límite de 32-bit"
-#: config/m68k/m68k.h:241
+#: config/m68k/m68k.h:326
msgid "Align variables on a 16-bit boundary"
msgstr "Alinear las variables en un límite de 16-bit"
+#: config/m68k/m68k.h:328
+msgid "Enable separate data segment"
+msgstr ""
+
+#: config/m68k/m68k.h:330
+#, fuzzy
+msgid "Disable separate data segment"
+msgstr "Desactivar registros de espacio"
+
+#: config/m68k/m68k.h:332
+msgid "Enable ID based shared library"
+msgstr ""
+
+#: config/m68k/m68k.h:334
+msgid "Disable ID based shared library"
+msgstr ""
+
# pc = program counter. cfuga
-#: config/m68k/m68k.h:243
+#: config/m68k/m68k.h:336
msgid "Generate pc-relative code"
msgstr "Generar código relativo al pc"
-#: config/m68k/m68k.h:245
+#: config/m68k/m68k.h:338
msgid "Do not use unaligned memory references"
msgstr "No permitir referencias a memoria sin alinear"
-#: config/m68k/m68k.h:247
+#: config/m68k/m68k.h:340
msgid "Use unaligned memory references"
msgstr "Usar referencias a memoria sin alinear"
-#: config/m88k/m88k.c:903
-#, c-format
-msgid "internal gcc monitor: short-branch(%x)"
-msgstr "monitor interno de gcc: short-branch(%x)"
-
-#: config/m88k/m88k.c:2302
-msgid "internal gcc error: Can't express symbolic location"
-msgstr "error interno de gcc: No se puede expresar la ubicación simbólica"
-
-#: config/m88k/m88k.c:2517
-#, c-format
-msgid "argument #%d is a structure"
-msgstr "el argumento #%d es una estructura"
-
-#: config/m88k/m88k.c:2816
-#, c-format
-msgid "%%R not followed by %%B/C/D/E"
-msgstr "%%R no es seguido por %%B/C/D/E"
-
-#: config/m88k/m88k.c:2884
-#, c-format
-msgid "invalid %%x/X value"
-msgstr "valor %%x/X inválido"
-
-#: config/m88k/m88k.c:2901
-#, c-format
-msgid "invalid %%Q value"
-msgstr "valor %%Q inválido"
-
-#: config/m88k/m88k.c:2907 config/rs6000/rs6000.c:7718
-#, c-format
-msgid "invalid %%q value"
-msgstr "valor %%q inválido"
-
-#: config/m88k/m88k.c:2913
-#, c-format
-msgid "invalid %%o value"
-msgstr "valor %%o inválido"
-
-#: config/m88k/m88k.c:2920 config/rs6000/rs6000.c:7681
-#, c-format
-msgid "invalid %%p value"
-msgstr "valor %%p inválido"
-
-#: config/m88k/m88k.c:2933 config/m88k/m88k.c:2938
-#, c-format
-msgid "invalid %%s/S value"
-msgstr "valor %%s/S inválido"
-
-#: config/m88k/m88k.c:2949
-#, c-format
-msgid "invalid %%P operand"
-msgstr "operando %%P inválido"
-
-#: config/m88k/m88k.c:2980 config/romp/romp.c:690
-#, c-format
-msgid "invalid %%B value"
-msgstr "valor %%B inválido"
-
-#: config/m88k/m88k.c:3010
-#, c-format
-msgid "invalid %%D value"
-msgstr "valor %%D inválido"
-
-#: config/m88k/m88k.c:3023
-#, c-format
-msgid "`%%d' operand isn't a register"
-msgstr "el operando `%%d' no es un registro"
-
-#: config/m88k/m88k.c:3041
-msgid "operand is r0"
-msgstr "el operando es r0"
-
-#: config/m88k/m88k.c:3055
-msgid "operand is const_double"
-msgstr "el operando es const_double"
-
-#: config/m88k/m88k.c:3074
-msgid "invalid code"
-msgstr "código inválido"
-
-#. Do any checking or such that is needed after processing the -m switches.
-#: config/m88k/m88k.h:277
-msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
-msgstr "-mtrap-large-shift y -mhandle-large-shift son incompatibles"
-
-#: config/m88k/m88k.h:299
-#, c-format
-msgid "invalid option `-mshort-data-%s'"
-msgstr "opción inválida `-mshort-data-%s'"
-
-#: config/m88k/m88k.h:304
-#, c-format
-msgid "-mshort-data-%s is too large "
-msgstr "-mshort-data-%s es demasiado grande "
+#: config/m68k/m68k.h:342
+msgid "Use different calling convention using 'rtd'"
+msgstr "Usar la convención de llamada diferente usando 'rtd'"
-#: config/m88k/m88k.h:306
-#, c-format
-msgid "-mshort-data-%s and PIC are incompatible"
-msgstr "-mshort-data-%s y PIC son incompatibles"
+#: config/m68k/m68k.h:366
+msgid "ID of shared library to build"
+msgstr ""
-#: config/mcore/mcore.c:3078
+#: config/mcore/mcore.c:2973
#, c-format
msgid "invalid option `-mstack-increment=%s'"
msgstr "opción inválida `-mstack-increment=%s'"
-#: config/mcore/mcore.h:126
+#: config/mcore/mcore.h:121
msgid "Inline constants if it can be done in 2 insns or less"
msgstr "Constantes inline si pueden ser hechas en 2 insns o menos"
-#: config/mcore/mcore.h:128
+#: config/mcore/mcore.h:123
msgid "Inline constants if it only takes 1 instruction"
msgstr "Constantes inline si sólo toman 1 instrucción"
-#: config/mcore/mcore.h:130
+#: config/mcore/mcore.h:125
msgid "Set maximum alignment to 4"
msgstr "Establecer la alineación máxima a 4"
-#: config/mcore/mcore.h:132
+#: config/mcore/mcore.h:127
msgid "Set maximum alignment to 8"
msgstr "Establecer la alineación máxima a 8"
-#: config/mcore/mcore.h:136
+#: config/mcore/mcore.h:131
msgid "Do not use the divide instruction"
msgstr "No usar la instrucción divide"
-#: config/mcore/mcore.h:140
+#: config/mcore/mcore.h:135
msgid "Do not arbitrary sized immediates in bit operations"
msgstr "No mediar en inmediatos de tamaños arbitrarios en operaciones de bit"
-#: config/mcore/mcore.h:142
+#: config/mcore/mcore.h:137
msgid "Always treat bit-field as int-sized"
msgstr "Tratar siempre a los campos de bit como de tamaño int"
-#: config/mcore/mcore.h:146
+#: config/mcore/mcore.h:141
msgid "Force functions to be aligned to a 4 byte boundary"
msgstr "Forzar que las funciones se alineen a un límite de 4 byte"
-#: config/mcore/mcore.h:148
+#: config/mcore/mcore.h:143
msgid "Force functions to be aligned to a 2 byte boundary"
msgstr "Forzar que las funciones se alineen a un límite de 2 byte"
-#: config/mcore/mcore.h:150
+#: config/mcore/mcore.h:145
msgid "Emit call graph information"
msgstr "Emitir información de grafo de llamadas"
-#: config/mcore/mcore.h:154
+#: config/mcore/mcore.h:149
msgid "Prefer word accesses over byte accesses"
msgstr "Preferir accesos word sobre accessos byte"
-#: config/mcore/mcore.h:165
+#: config/mcore/mcore.h:160
msgid "Generate code for the M*Core M340"
msgstr "Generar código para el M*Core M340"
-#: config/mcore/mcore.h:178
+#: config/mcore/mcore.h:173
msgid "Maximum amount for a single stack increment operation"
msgstr "Cantidad máxima para una sola operación de incremento de pila"
-#: config/mips/mips.c:5128
+#: config/mips/mips.c:3115 config/xtensa/xtensa.c:992
+#: config/xtensa/xtensa.c:1024 config/xtensa/xtensa.c:1033
+msgid "bad test"
+msgstr "prueba errónea"
+
+#: config/mips/mips.c:4593
#, c-format
msgid "bad value (%s) for -mabi= switch"
msgstr "valor erróneo (%s) para el interruptor -mabi="
-#: config/mips/mips.c:5158
-#, c-format
-msgid "-mips%d conflicts with the other architecture options, which specify a MIPS%d processor"
+#: config/mips/mips.c:4616
+#, fuzzy, c-format
+msgid "-mips%s conflicts with the other architecture options, which specify a MIPS%d processor"
msgstr "-mips%d tiene conflictos con las otras opciones de la arquitectura, las cuales especifican un procesador MIPS%d"
-#: config/mips/mips.c:5165
-#, c-format
-msgid "bad value (%s) for -mips switch"
-msgstr "valor erróneo (%s) para el interruptor -mips"
-
-#: config/mips/mips.c:5180
+#: config/mips/mips.c:4635
#, c-format
msgid "-march=%s is not compatible with the selected ABI"
msgstr "-march=%s no es compatible con la ABI seleccionada"
-#: config/mips/mips.c:5192
+#: config/mips/mips.c:4650
msgid "-mgp64 used with a 32-bit processor"
msgstr "se utiliza -mgp64 con un procesador de 32-bit"
-#: config/mips/mips.c:5194
+#: config/mips/mips.c:4652
msgid "-mgp32 used with a 64-bit ABI"
msgstr "se utiliza -mgp32 cun una ABI de 64-bit"
-#: config/mips/mips.c:5196
+#: config/mips/mips.c:4654
msgid "-mgp64 used with a 32-bit ABI"
msgstr "se utiliza -mgp64 con una ABI de 32-bit"
-#: config/mips/mips.c:5214 config/mips/mips.c:5216 config/mips/mips.c:5218
+#: config/mips/mips.c:4672 config/mips/mips.c:4674 config/mips/mips.c:4676
+#: config/mips/mips.c:4804
#, c-format
msgid "unsupported combination: %s"
msgstr "combinación sin soporte: %s"
-#: config/mips/mips.c:5288
+#: config/mips/mips.c:4768
+#, fuzzy
+msgid "-g is only supported using GNU as,"
+msgstr "-g sólo tiene soporte cuando se usa GAS en este procesador,"
+
+#: config/mips/mips.c:4770
+#, fuzzy
+msgid "-g is only supported using GNU as with -mabi=32,"
+msgstr "-g sólo tiene soporte cuando se usa GAS en este procesador,"
+
+#: config/mips/mips.c:4771 config/pa/pa.c:353
+msgid "-g option disabled"
+msgstr "opción -g desactivada"
+
+#: config/mips/mips.c:4799
msgid "generation of Branch Likely instructions enabled, but not supported by architecture"
msgstr "la generación de instrucciones Probables a Ramificar está activada, pero no tiene soporte por la arquitectura"
-#: config/mips/mips.c:5299
+#: config/mips/mips.c:4816
msgid "-G is incompatible with PIC code which is the default"
msgstr "-G es incompatible con el código PIC el cual es por defecto"
-#: config/mips/mips.c:5315
+#: config/mips/mips.c:4844
msgid "-membedded-pic and -mabicalls are incompatible"
msgstr "-membedded-pic y -mabicalls son incompatibles"
-#: config/mips/mips.c:5318
+#: config/mips/mips.c:4847
msgid "-G and -membedded-pic are incompatible"
msgstr "-G y -membedded-pic son incompatibles"
-#: config/mips/mips.c:5369
-#, c-format
-msgid "invalid option `entry%s'"
-msgstr "opción inválida `entry%s'"
+#: config/mips/mips.c:4879
+msgid "non-PIC n64 with explicit relocations"
+msgstr ""
-#: config/mips/mips.c:5372
-msgid "-mentry is only meaningful with -mips-16"
-msgstr "-mentry sólo tiene significado con -mips-16"
+#: config/mips/mips.c:5267
+msgid "mips_debugger_offset called with non stack/frame/arg pointer"
+msgstr ""
-#: config/mips/mips.c:5781
+#: config/mips/mips.c:5394
#, c-format
msgid "internal error: %%) found without a %%( in assembler pattern"
msgstr "error interno: se encontró %%) sin un %%( en el patrón del ensamblador"
-#: config/mips/mips.c:5795
+#: config/mips/mips.c:5408
#, c-format
msgid "internal error: %%] found without a %%[ in assembler pattern"
msgstr "error interno: se encontró %%] sin un %%[ en el patrón del ensamblador"
-#: config/mips/mips.c:5808
+#: config/mips/mips.c:5421
#, c-format
msgid "internal error: %%> found without a %%< in assembler pattern"
msgstr "error interno: se encontró %%> sin un %%< en el patrón del ensamblador"
-#: config/mips/mips.c:5821
+#: config/mips/mips.c:5434
#, c-format
msgid "internal error: %%} found without a %%{ in assembler pattern"
msgstr "error interno: se encontró %%} sin un %%{ en el patrón del ensamblador"
-#: config/mips/mips.c:5835
+#: config/mips/mips.c:5448
#, c-format
msgid "PRINT_OPERAND: unknown punctuation '%c'"
msgstr "PRINT_OPERAND: puntuación desconocida '%c'"
-#: config/mips/mips.c:5844 config/xtensa/xtensa.c:1939
-msgid "PRINT_OPERAND null pointer"
+#: config/mips/mips.c:5477
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%C"
msgstr "PRINT_OPERAND puntero nulo"
-#: config/mips/mips.c:5975
-#, c-format
-msgid "invalid use of %%d, %%x, or %%X"
-msgstr "uso inválido de %%d, %%x, o %%X"
-
-#: config/mips/mips.c:6013 config/xtensa/xtensa.c:2033
-msgid "PRINT_OPERAND_ADDRESS, null pointer"
-msgstr "PRINT_OPERAND_ADDRESS, puntero nulo"
-
-#: config/mips/mips.c:6242
-msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
-msgstr "el formato ECOFF de MIPS no permite el cambio de nombres de fichero dentro de funciones con #line"
-
-#: config/mips/mips.c:6552
-msgid "can't rewind temp file"
-msgstr "no se puede rebobinar el fichero temporal"
-
-#: config/mips/mips.c:6556
-msgid "can't write to output file"
-msgstr "no se puede escribir al fichero de salida"
-
-#: config/mips/mips.c:6559
-msgid "can't read from temp file"
-msgstr "no se puede leer desde el fichero temporal"
+#: config/mips/mips.c:5494
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%N"
+msgstr "PRINT_OPERAND puntero nulo"
-#: config/mips/mips.c:6562
-msgid "can't close temp file"
-msgstr "no se puede cerrar el fichero temporal"
+#: config/mips/mips.c:5503
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%F"
+msgstr "PRINT_OPERAND puntero nulo"
-#: config/mips/mips.c:7003
-#, c-format
-msgid "gp_offset (%ld) or end_offset (%ld) is less than zero"
-msgstr "gp_offset (%ld) o end_offset (%ld) es menor a cero"
+#: config/mips/mips.c:5512
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%W"
+msgstr "PRINT_OPERAND puntero nulo"
-#: config/mips/mips.c:7112
-#, c-format
-msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
-msgstr "fp_offset (%ld) o end_offset (%ld) es menor a cero"
+#: config/mips/mips.c:5618
+msgid "PRINT_OPERAND, invalid operand for relocation"
+msgstr ""
-#: config/mips/mips.c:9335
+#: config/mips/mips.c:8252
#, c-format
msgid "can not handle inconsistent calls to `%s'"
msgstr "no se pueden manejar llamadas inconsistentes a `%s'"
-#: config/mips/mips.c:10467
+#: config/mips/mips.c:9258
msgid "the cpu name must be lower case"
msgstr "el nombre de cpu debe estar en minúsculas"
-#: config/mips/mips.c:10489
+#: config/mips/mips.c:9280
#, c-format
msgid "bad value (%s) for %s"
msgstr "valor erróneo (%s) para %s"
+#: config/mips/mips.c:9549
+#, fuzzy, c-format
+msgid "can't rewind temp file: %m"
+msgstr "no se puede rebobinar el fichero temporal"
+
+#: config/mips/mips.c:9553
+#, fuzzy, c-format
+msgid "can't write to output file: %m"
+msgstr "no se puede escribir al fichero de salida"
+
+#: config/mips/mips.c:9556
+#, fuzzy, c-format
+msgid "can't read from temp file: %m"
+msgstr "no se puede leer desde el fichero temporal"
+
+#: config/mips/mips.c:9559
+#, fuzzy, c-format
+msgid "can't close temp file: %m"
+msgstr "no se puede cerrar el fichero temporal"
+
+#: config/mips/linux64.h:39
+msgid "Same as -mabi=32, just trickier"
+msgstr ""
+
#. Target CPU builtins.
#. We do this here because __mips is defined below and so we can't use builtin_define_std.
#. Treat _R3000 and _R4000 like register-size defines, which is how they've historically been used.
#. Macros dependent on the C dialect.
-#. Bizzare, but needed at least for Irix.
+#. Bizarre, but needed at least for Irix.
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:528 config/mn10300/mn10300.h:64
-msgid "No default crt0.o"
-msgstr "No está el crt0.o por defecto"
-
-#: config/mips/mips.h:530
+#: config/mips/mips.h:501
msgid "Use 64-bit int type"
msgstr "Usar tipo int de 64-bit"
-#: config/mips/mips.h:532
+#: config/mips/mips.h:503
msgid "Use 64-bit long type"
msgstr "Usar tipo long de 64-bit"
-#: config/mips/mips.h:534
+#: config/mips/mips.h:505
msgid "Use 32-bit long type"
msgstr "Usar tipo long de 32-bit"
-#: config/mips/mips.h:536
+#: config/mips/mips.h:507
msgid "Optimize lui/addiu address loads"
msgstr "Optimizar las cargas de las direcciones lui/addiu"
-#: config/mips/mips.h:538
+#: config/mips/mips.h:509
msgid "Don't optimize lui/addiu address loads"
msgstr "No ptimizar las cargas de las direcciones lui/addiu"
-#: config/mips/mips.h:540
+#: config/mips/mips.h:511
msgid "Use MIPS as"
msgstr "Utilizar el as de MIPS"
-#: config/mips/mips.h:542
+#: config/mips/mips.h:513
msgid "Use GNU as"
msgstr "Utilizar el as de GNU"
-#: config/mips/mips.h:544
+#: config/mips/mips.h:515
msgid "Use symbolic register names"
msgstr "Usar nombres simbólicos de registro"
-#: config/mips/mips.h:546
+#: config/mips/mips.h:517
msgid "Don't use symbolic register names"
msgstr "No usar nombres simbólicos de registro"
-#: config/mips/mips.h:548 config/mips/mips.h:550
-msgid "Use GP relative sdata/sbss sections"
+#: config/mips/mips.h:519 config/mips/mips.h:521
+#, fuzzy
+msgid "Use GP relative sdata/sbss sections (now ignored)"
msgstr "Utilizar secciones sdata/sbss relativas a GP"
-#: config/mips/mips.h:552 config/mips/mips.h:554
-msgid "Don't use GP relative sdata/sbss sections"
+#: config/mips/mips.h:523 config/mips/mips.h:525
+#, fuzzy
+msgid "Don't use GP relative sdata/sbss sections (now ignored)"
msgstr "No utilizar secciones sdata/sbss relativas a GP"
-#: config/mips/mips.h:556
-msgid "Output compiler statistics"
+#: config/mips/mips.h:527
+#, fuzzy
+msgid "Output compiler statistics (now ignored)"
msgstr "Mostrar la salida de estadísticas del compilador"
-#: config/mips/mips.h:558
+#: config/mips/mips.h:529
msgid "Don't output compiler statistics"
msgstr "No mostrar la salida de estadísticas del compilador"
-#: config/mips/mips.h:560
+#: config/mips/mips.h:531
msgid "Don't optimize block moves"
msgstr "No optimizar los movimientos de bloques"
-#: config/mips/mips.h:562
+#: config/mips/mips.h:533
msgid "Optimize block moves"
msgstr "Optimizar los movimientos de bloques"
-#: config/mips/mips.h:564
+#: config/mips/mips.h:535
msgid "Use mips-tfile asm postpass"
msgstr "Usar el postpase asm mips-tfile"
-#: config/mips/mips.h:566
+#: config/mips/mips.h:537
msgid "Don't use mips-tfile asm postpass"
msgstr "No usar el postpase asm mips-tfile"
@@ -11706,272 +11132,239 @@ msgstr "No usar el postpase asm mips-tfile"
#. where VALUE is the bits to set or minus the bits to clear and DOC
#. is the documentation for --help (NULL if intentionally undocumented).
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:570 config/pdp11/pdp11.h:56
+#: config/mips/mips.h:541 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:314
msgid "Use hardware floating point"
msgstr "Usar coma flotante de hardware"
-#: config/mips/mips.h:572
+#: config/mips/mips.h:543
msgid "Use 64-bit FP registers"
msgstr "Usar registros FP de 64-bit"
-#: config/mips/mips.h:574
+#: config/mips/mips.h:545
msgid "Use 32-bit FP registers"
msgstr "Usar registros FP de 32-bit"
-#: config/mips/mips.h:576
+#: config/mips/mips.h:547
msgid "Use 64-bit general registers"
msgstr "Usar registros generales de 64-bit"
-#: config/mips/mips.h:578
+#: config/mips/mips.h:549
msgid "Use 32-bit general registers"
msgstr "Usar registros generales de 32-bit"
-#: config/mips/mips.h:580
+#: config/mips/mips.h:551
msgid "Use Irix PIC"
msgstr "Usar PIC de Irix"
-#: config/mips/mips.h:582
+#: config/mips/mips.h:553
msgid "Don't use Irix PIC"
msgstr "No usar PIC de Irix"
-#: config/mips/mips.h:584
+#: config/mips/mips.h:555
msgid "Use indirect calls"
msgstr "Usar llamadas indirectas"
-#: config/mips/mips.h:586
+#: config/mips/mips.h:557
msgid "Don't use indirect calls"
msgstr "No usar llamadas indirectas"
-#: config/mips/mips.h:588
+#: config/mips/mips.h:559
msgid "Use embedded PIC"
msgstr "Usar PIC imbuído"
-#: config/mips/mips.h:590
+#: config/mips/mips.h:561
msgid "Don't use embedded PIC"
msgstr "No usar PIC imbuído"
-#: config/mips/mips.h:592
-msgid "Use ROM instead of RAM"
-msgstr "Usar la ROM en lugar de la RAM"
-
-#: config/mips/mips.h:594
-msgid "Don't use ROM instead of RAM"
-msgstr "No usar la ROM en lugar de la RAM"
-
-#: config/mips/mips.h:596
-msgid "Put uninitialized constants in ROM (needs -membedded-data)"
-msgstr "Poner las constantes sin inicializar en ROM (necesita -membedded-data)"
-
-#: config/mips/mips.h:598
-msgid "Don't put uninitialized constants in ROM"
-msgstr "No poner las constantes sin inicializar en ROM"
-
-#. Macro to define tables used to set the flags.
-#: config/mips/mips.h:600 config/xtensa/xtensa.h:110
+#: config/mips/mips.h:571
msgid "Use big-endian byte order"
msgstr "Usar el orden de byte big-endian"
-#: config/mips/mips.h:602 config/xtensa/xtensa.h:112
+#: config/mips/mips.h:573
msgid "Use little-endian byte order"
msgstr "Usar el orden de byte little-endian"
-#: config/mips/mips.h:604
+#: config/mips/mips.h:575
msgid "Use single (32-bit) FP only"
msgstr "Usar únicamente una sola FP (32-bit)"
-#: config/mips/mips.h:606
+#: config/mips/mips.h:577
msgid "Don't use single (32-bit) FP only"
msgstr "No usar únicamente una sola FP (32-bit)"
-#: config/mips/mips.h:608
+#: config/mips/mips.h:579
msgid "Use multiply accumulate"
msgstr "Usar el acumulador de multiplicación"
-#: config/mips/mips.h:610
+#: config/mips/mips.h:581
msgid "Don't use multiply accumulate"
msgstr "No usar el acumulador de multiplicación"
-#: config/mips/mips.h:612 config/rs6000/rs6000.h:314
+#: config/mips/mips.h:583
msgid "Don't generate fused multiply/add instructions"
msgstr "No generar instrucciones multiply/add de corto circuito"
-#: config/mips/mips.h:614 config/rs6000/rs6000.h:312
+#: config/mips/mips.h:585 config/rs6000/rs6000.h:330
msgid "Generate fused multiply/add instructions"
msgstr "Generar instrucciones multiply/add de corto circuito"
-#: config/mips/mips.h:616
+#: config/mips/mips.h:587
msgid "Work around early 4300 hardware bug"
msgstr "Evitar el bug del primer hardware 4300"
-#: config/mips/mips.h:618
+#: config/mips/mips.h:589
msgid "Don't work around early 4300 hardware bug"
msgstr "No evitar el bug del primer hardware 4300"
-#: config/mips/mips.h:620
+#: config/mips/mips.h:591
+msgid "Work around errata for early SB-1 revision 2 cores"
+msgstr ""
+
+#: config/mips/mips.h:593
+msgid "Don't work around errata for early SB-1 revision 2 cores"
+msgstr ""
+
+#: config/mips/mips.h:595
msgid "Trap on integer divide by zero"
msgstr "Atrapar la división entera por cero"
-#: config/mips/mips.h:622
+#: config/mips/mips.h:597
msgid "Don't trap on integer divide by zero"
msgstr "No atrapar la división entera por cero"
-#: config/mips/mips.h:624
-msgid "Trap on integer divide overflow"
-msgstr "Atrapar desbordamientos en la división entera"
-
-#: config/mips/mips.h:626
-msgid "Don't trap on integer divide overflow"
-msgstr "No atrapar desbordamientos en la división entera"
-
-#: config/mips/mips.h:628
+#: config/mips/mips.h:599
msgid "Use Branch Likely instructions, overriding default for arch"
msgstr "Usar instrucciones Propensas a Ramificar, sobreponiendo el valor por defecto para la arquitectura"
-#: config/mips/mips.h:630
+#: config/mips/mips.h:601
msgid "Don't use Branch Likely instructions, overriding default for arch"
msgstr "No utilizar instrucciones Propensas a Ramificar, sobreponiendo el valor por defecto para la arquitectura"
-#: config/mips/mips.h:744 config/pa/pa.h:310
-msgid "Specify CPU for scheduling purposes"
-msgstr "Especificar el CPU para propósitos de calendarización"
+#: config/mips/mips.h:603
+msgid "Use NewABI-style %reloc() assembly operators"
+msgstr ""
-#: config/mips/mips.h:746
-msgid "Specify CPU for code generation purposes"
-msgstr "Especificar el CPU para propósitos de generación de código"
+#: config/mips/mips.h:605
+msgid "Use assembler macros instead of relocation operators"
+msgstr ""
-#: config/mips/mips.h:748
-msgid "Specify an ABI"
-msgstr "Especificar un ABI"
+#: config/mips/mips.h:607
+#, fuzzy
+msgid "Generate mips16 code"
+msgstr "Generar código SA"
-#: config/mips/mips.h:750
-msgid "Specify a Standard MIPS ISA"
-msgstr "Especificar el ISA de MIPS Standard"
+#: config/mips/mips.h:609
+#, fuzzy
+msgid "Generate normal-mode code"
+msgstr "Generar código SA"
-# Error de dedo de los desarrolladores originales. Avisar. cfuga
-#: config/mips/mips.h:752
-msgid "Use mips16 entry/exit psuedo ops"
-msgstr "Usar pseudo ops mips16 de entry/exit"
+#: config/mips/mips.h:611
+msgid "Lift restrictions on GOT size"
+msgstr ""
-#: config/mips/mips.h:754
-msgid "Don't use MIPS16 instructions"
-msgstr "No usar instrucciones MIPS16"
+#: config/mips/mips.h:613
+msgid "Do not lift restrictions on GOT size"
+msgstr ""
-#: config/mips/mips.h:756
-msgid "Don't call any cache flush functions"
-msgstr "No llamar ninguna función de limpieza de caché"
+#: config/mips/mips.h:735
+msgid "Specify an ABI"
+msgstr "Especificar un ABI"
-#: config/mips/mips.h:758
-msgid "Specify cache flush function"
-msgstr "Especificar la función de limpieza de caché"
+#: config/mips/mips.h:737
+msgid "Specify a Standard MIPS ISA"
+msgstr "Especificar el ISA de MIPS Standard"
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/mips/mips.h:2900
+#: config/mips/mips.h:2403
msgid "mips16 function profiling"
msgstr "análisis de perfil de las funciones mips16"
-#: config/mmix/mmix.c:189
+#: config/mmix/mmix.c:207
#, c-format
msgid "-f%s not supported: ignored"
msgstr "-f%s no tiene soporte: ignorado"
-#: config/mmix/mmix.c:644
+#: config/mmix/mmix.c:633
#, c-format
msgid "too large function value type, needs %d registers, have only %d registers for this"
msgstr "el valor del tipo de la función es demasiado grande, necesita %d registros, sólo se tienen %d registros para esto"
-#: config/mmix/mmix.c:826
+#: config/mmix/mmix.c:803
msgid "function_profiler support for MMIX"
msgstr "soporte para function_profiler para MMIX"
-#: config/mmix/mmix.c:848
+#: config/mmix/mmix.c:823
msgid "MMIX Internal: Last named vararg would not fit in a register"
msgstr "MMIX Interno: El último vararg nombrado no cabe en un registro"
-#: config/mmix/mmix.c:1639 config/mmix/mmix.c:1769
+#: config/mmix/mmix.c:1538 config/mmix/mmix.c:1668
msgid "MMIX Internal: Expected a CONST_INT, not this"
msgstr "MMIX Interno: Se esperaba un CONST_INT, no esto"
-#: config/mmix/mmix.c:1647 config/mmix/mmix.c:1671 config/mmix/mmix.c:1787
+#: config/mmix/mmix.c:1546 config/mmix/mmix.c:1570 config/mmix/mmix.c:1686
#, c-format
msgid "MMIX Internal: Bad register: %d"
msgstr "MMIX Interno: Registro erróneo: %d"
-#: config/mmix/mmix.c:1718
+#: config/mmix/mmix.c:1617
msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
msgstr "MMIX Interno: Valor erróneo para 'm', no es un CONST_INT"
-#: config/mmix/mmix.c:1737
+#: config/mmix/mmix.c:1636
msgid "MMIX Internal: Expected a register, not this"
msgstr "MMIX Interno: Se esperaba un registro, no esto"
-#: config/mmix/mmix.c:1747
+#: config/mmix/mmix.c:1646
msgid "MMIX Internal: Expected a constant, not this"
msgstr "MMIX Interno: Se esperaba una constante, no esto"
#. Presumably there's a missing case above if we get here.
-#: config/mmix/mmix.c:1779
+#: config/mmix/mmix.c:1678
#, c-format
msgid "MMIX Internal: Missing `%c' case in mmix_print_operand"
msgstr "MMIX Interno: Falta un case `%c' en mmix_print_operand"
#. We need the original here.
-#: config/mmix/mmix.c:1831
+#: config/mmix/mmix.c:1730
msgid "MMIX Internal: Cannot decode this operand"
msgstr "MMIX Interno: No se puede decodificar este operando"
-#: config/mmix/mmix.c:1891
+#: config/mmix/mmix.c:1787
msgid "MMIX Internal: This is not a recognized address"
msgstr "MMIX Interno: Esta no es una dirección reconocida"
-#: config/mmix/mmix.c:2082
+#: config/mmix/mmix.c:1964
#, c-format
msgid "stack frame not a multiple of 8 bytes: %d"
msgstr "el marco de pila no es un múltiplo de 8 bytes: %d"
-#: config/mmix/mmix.c:2321
+#: config/mmix/mmix.c:2203
#, c-format
msgid "stack frame not a multiple of octabyte: %d"
msgstr "el marco de pila no es un múltiplo de octabyte: %d"
-#: config/mmix/mmix.c:2818 config/mmix/mmix.c:2887
+#: config/mmix/mmix.c:2677 config/mmix/mmix.c:2741
#, c-format
msgid "MMIX Internal: %s is not a shiftable int"
msgstr "MMIX Interno: %s no es un int desplazable"
-#: config/mmix/mmix.c:3006
+#: config/mmix/mmix.c:2857
msgid "MMIX Internal: Trying to output invalidly reversed condition:"
msgstr "MMIX Interno: Tratando de mostrar una condición invertida de forma inválida:"
-#: config/mmix/mmix.c:3013
+#: config/mmix/mmix.c:2864
msgid "MMIX Internal: What's the CC of this?"
msgstr "MMIX Interno: ¿Cuál es el CC de esto?"
-#: config/mmix/mmix.c:3017
+#: config/mmix/mmix.c:2868
msgid "MMIX Internal: What is the CC of this?"
msgstr "MMIX Interno: ¿Cuál es el CC de esto?"
-#: config/mmix/mmix.c:3088
+#: config/mmix/mmix.c:2938
msgid "MMIX Internal: This is not a constant:"
msgstr "MMIX Interno: Esto no es una constante:"
-#. For these target macros, there is no generic documentation here. You
-#. should read `Using and Porting GCC' for that. Only comments specific
-#. to the MMIX target are here.
-#.
-#. There are however references to the specific texinfo node (comments
-#. with "Node:"), so there should be little or nothing amiss. Probably
-#. the opposite, since we don't have to care about old littering and
-#. soon outdated generic comments.
-#. Node: Driver
-#. User symbols are in the same name-space as built-in symbols, but we
-#. don't need the built-in symbols, so remove those and instead apply
-#. stricter operand checking. Don't warn when expanding insns.
-#. Pass on -mset-program-start=N and -mset-data-start=M to the linker.
-#. Provide default program start 0x100 unless -mno-set-program-start.
-#. Don't do this if linking relocatably, with -r. For a final link,
-#. produce mmo, unless ELF is requested or when linking relocatably.
-#. Put unused option values here.
#: config/mmix/mmix.h:132
msgid "Set start-address of the program"
msgstr "Estableciendo la dirección de inicio del programa"
@@ -12041,23 +11434,28 @@ msgstr "Generar un sólo punto de salida para cada función"
msgid "Do not generate a single exit point for each function"
msgstr "No generar un sólo punto de salida para cada función"
-#: config/mn10300/mn10300.h:59
-msgid "Work around hardware multiply bug"
-msgstr "Evitar el bug de multiplicación de hardware"
-
-#: config/mn10300/mn10300.h:60
-msgid "Do not work around hardware multiply bug"
-msgstr "No evitar el bug de multiplicación de hardware"
-
-#: config/mn10300/mn10300.h:61
+#: config/mn10300/linux.h:60 config/mn10300/mn10300.h:71
msgid "Target the AM33 processor"
msgstr "Apuntar al procesador AM33"
-#: config/mn10300/mn10300.h:65
+#: config/mn10300/linux.h:61 config/mn10300/mn10300.h:75
+#, fuzzy
+msgid "Target the AM33/2.0 processor"
+msgstr "Apuntar al procesador AM33"
+
+#: config/mn10300/linux.h:62 config/mn10300/mn10300.h:78
msgid "Enable linker relaxations"
msgstr "Activar la relajación del enlazador"
-#: config/ns32k/ns32k.h:142 config/s390/s390.h:69
+#: config/mn10300/mn10300.h:69
+msgid "Work around hardware multiply bug"
+msgstr "Evitar el bug de multiplicación de hardware"
+
+#: config/mn10300/mn10300.h:70
+msgid "Do not work around hardware multiply bug"
+msgstr "No evitar el bug de multiplicación de hardware"
+
+#: config/ns32k/ns32k.h:142 config/s390/s390.h:125
msgid "Don't use hardware fp"
msgstr "No usar fp de hardware"
@@ -12129,7 +11527,7 @@ msgstr "Con truco sucio \"Clases de registro pequeñas\""
msgid "No \"Small register classes\" kludge"
msgstr "Sin truco sucio \"Clases de registro pequeñas\""
-#: config/pa/pa.c:261
+#: config/pa/pa.c:304
#, c-format
msgid ""
"unknown -mschedule= option (%s).\n"
@@ -12138,7 +11536,7 @@ msgstr ""
"opción -mschedule= desconocida (%s).\n"
"Las opciones válidas son 700, 7100, 7100LC, 7200, 7300, y 8000\n"
-#: config/pa/pa.c:286
+#: config/pa/pa.c:329
#, c-format
msgid ""
"unknown -march= option (%s).\n"
@@ -12147,29 +11545,23 @@ msgstr ""
"opción -march= desconocida (%s).\n"
"Las opciones válidas son 1.0, 1.1, y 2.0\n"
-#: config/pa/pa.c:299
+#: config/pa/pa.c:342
msgid "PIC code generation is not supported in the portable runtime model\n"
msgstr "La generación de código PIC no tiene soporte en el modelo transportable de tiempo de ejecución\n"
-#: config/pa/pa.c:304
+#: config/pa/pa.c:347
msgid "PIC code generation is not compatible with fast indirect calls\n"
msgstr "La generación de código PIC no es compatible con las llamadas rápidas indirectas\n"
-#: config/pa/pa.c:309
+#: config/pa/pa.c:352
msgid "-g is only supported when using GAS on this processor,"
msgstr "-g sólo tiene soporte cuando se usa GAS en este procesador,"
-#: config/pa/pa.c:310
-msgid "-g option disabled"
-msgstr "opción -g desactivada"
-
-#: config/pa/pa-hiux.h:75 config/pa/pa-hpux.h:87 config/pa/pa-hpux7.h:81
-#: config/pa/pa64-hpux.h:25
+#: config/pa/pa-hpux.h:91 config/pa/pa64-hpux.h:25
msgid "Generate cpp defines for server IO"
msgstr "Generar definiciones cpp para ES de servidor"
-#: config/pa/pa-hiux.h:76 config/pa/pa-hpux.h:88 config/pa/pa-hpux7.h:82
-#: config/pa/pa64-hpux.h:27
+#: config/pa/pa-hpux.h:92 config/pa/pa64-hpux.h:27
msgid "Generate cpp defines for workstation IO"
msgstr "Generar definiciones cpp para ES de estación de trabajo"
@@ -12292,50 +11684,50 @@ msgstr "Asumir que el código será enlazado por ld de GNU"
msgid "Assume code will be linked by HP ld"
msgstr "Asumir que el código será enlazado por ld de HP"
-#: config/pdp11/pdp11.h:57
+#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:316
msgid "Do not use hardware floating point"
msgstr "No usar coma flotante de hardware"
#. return float result in ac0
-#: config/pdp11/pdp11.h:59
+#: config/pdp11/pdp11.h:64
msgid "Return floating point results in ac0"
msgstr "Devolución de resultados de coma flotante en ac0"
-#: config/pdp11/pdp11.h:60
+#: config/pdp11/pdp11.h:65
msgid "Return floating point results in memory"
msgstr "Devolución de resultados de coma flotante en memoria"
#. is 11/40
-#: config/pdp11/pdp11.h:62
+#: config/pdp11/pdp11.h:67
msgid "Generate code for an 11/40"
msgstr "Generar código para un 11/40"
#. is 11/45
-#: config/pdp11/pdp11.h:65
+#: config/pdp11/pdp11.h:70
msgid "Generate code for an 11/45"
msgstr "Generar código para un 11/45"
#. is 11/10
-#: config/pdp11/pdp11.h:68
+#: config/pdp11/pdp11.h:73
msgid "Generate code for an 11/10"
msgstr "Generar código para un 11/10"
#. use movstrhi for bcopy
#. use 32 bit for int
-#: config/pdp11/pdp11.h:73 config/pdp11/pdp11.h:74
+#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
msgid "Use 32 bit int"
msgstr "Usar int de 32 bit"
-#: config/pdp11/pdp11.h:75 config/pdp11/pdp11.h:76
+#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
msgid "Use 16 bit int"
msgstr "Usar int de 16 bit"
#. use 32 bit for float
-#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
+#: config/pdp11/pdp11.h:83 config/pdp11/pdp11.h:84
msgid "Use 32 bit float"
msgstr "Usar float de 32 bit"
-#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
+#: config/pdp11/pdp11.h:85 config/pdp11/pdp11.h:86
msgid "Use 64 bit float"
msgstr "Usar float de 64 bit"
@@ -12343,70 +11735,54 @@ msgstr "Usar float de 64 bit"
#. is branching expensive - on a PDP, it's actually really cheap
#. this is just to play around and check what code gcc generates
#. split instruction and data memory?
-#: config/pdp11/pdp11.h:90
+#: config/pdp11/pdp11.h:95
msgid "Target has split I&D"
msgstr "El objetivo tiene I&D dividido"
-#: config/pdp11/pdp11.h:91
+#: config/pdp11/pdp11.h:96
msgid "Target does not have split I&D"
msgstr "El objetivo no tiene I&D dividido"
#. UNIX assembler syntax?
-#: config/pdp11/pdp11.h:93
+#: config/pdp11/pdp11.h:98
msgid "Use UNIX assembler syntax"
msgstr "Usar sintaxis de ensamblador UNIX"
-#: config/pdp11/pdp11.h:94
+#: config/pdp11/pdp11.h:99
msgid "Use DEC assembler syntax"
msgstr "Usar sintaxis de ensamblador DEC"
-#: config/romp/romp.c:717 config/rs6000/rs6000.c:7755
-#, c-format
-msgid "invalid %%S value"
-msgstr "valor %%S inválido"
+#: config/rs6000/host-darwin.c:52
+msgid "Segmentation Fault (code)"
+msgstr ""
-#: config/romp/romp.c:726 config/romp/romp.c:733
-#, c-format
-msgid "invalid %%b value"
-msgstr "valor %%b inválido"
+#: config/rs6000/host-darwin.c:83
+msgid "Out of stack space.\n"
+msgstr ""
-#: config/romp/romp.c:773 config/romp/romp.c:784
+#: config/rs6000/host-darwin.c:104
#, c-format
-msgid "invalid %%z value"
-msgstr "valor %%z inválido"
+msgid "Try running `%s' in the shell to raise its limit.\n"
+msgstr ""
-#: config/romp/romp.c:792 config/romp/romp.c:800
-#, c-format
-msgid "invalid %%Z value"
-msgstr "valor %%Z inválido"
+#: config/rs6000/host-darwin.c:117
+msgid "Segmentation Fault"
+msgstr ""
-#: config/romp/romp.c:807 config/romp/romp.c:816 config/romp/romp.c:823
-#: config/rs6000/rs6000.c:7584
+#: config/rs6000/host-darwin.c:131
#, c-format
-msgid "invalid %%k value"
-msgstr "valor %%k inválido"
+msgid "While setting up signal stack: %m"
+msgstr ""
-#: config/romp/romp.c:908 config/romp/romp.c:951
+#: config/rs6000/host-darwin.c:137
#, c-format
-msgid "invalid %%j value"
-msgstr "valor %%j inválido"
+msgid "While setting up signal handler: %m"
+msgstr ""
-#. Perform any needed actions needed for a function that is receiving a
-#. variable number of arguments.
-#.
-#. CUM is as above.
-#.
-#. MODE and TYPE are the mode and type of the current parameter.
-#.
-#. PRETEND_SIZE is a variable that should be set to the amount of stack
-#. that must be pushed by the prolog to pretend that our caller pushed
-#. it.
-#.
-#. Normally, this macro will push all remaining incoming registers on the
-#. stack and set PRETEND_SIZE to the length of the registers pushed.
-#: config/romp/romp.h:648
-msgid "can't have varargs with -mfp-arg-in-fp-regs"
-msgstr "no se puede tener varargs con -mfp-arg-in-fp-regs"
+#: config/rs6000/host-darwin.c:184
+#, c-format
+msgid "couldn't unmap pch_address_space: %m\n"
+msgstr ""
#. Handle the machine specific pragma longcall. Its syntax is
#.
@@ -12417,193 +11793,244 @@ msgstr "no se puede tener varargs con -mfp-arg-in-fp-regs"
#. rs6000_default_long_calls is set to the value of TOGGLE, changing
#. whether or not new function declarations receive a longcall
#. attribute by default.
-#: config/rs6000/rs6000-c.c:44
+#: config/rs6000/rs6000-c.c:46
msgid "ignoring malformed #pragma longcall"
msgstr "ignorando el #pragma longcall malformado"
-#: config/rs6000/rs6000-c.c:58
+#: config/rs6000/rs6000-c.c:59
msgid "missing open paren"
msgstr "falta el paréntesis que abre"
-#: config/rs6000/rs6000-c.c:60
+#: config/rs6000/rs6000-c.c:61
msgid "missing number"
msgstr "falta el número"
-#: config/rs6000/rs6000-c.c:62
+#: config/rs6000/rs6000-c.c:63
msgid "missing close paren"
msgstr "falta el paréntesis que cierra"
-#: config/rs6000/rs6000-c.c:65
+#: config/rs6000/rs6000-c.c:66
msgid "number must be 0 or 1"
msgstr "el número debe ser 0 ó 1"
-#: config/rs6000/rs6000-c.c:68
+#: config/rs6000/rs6000-c.c:69
msgid "junk at end of #pragma longcall"
msgstr "basura al final de #pragma longcall"
# FIXME: ¿Traducción correcta al español de little endian? cfuga
-#: config/rs6000/rs6000.c:592
+#: config/rs6000/rs6000.c:793
msgid "-mmultiple is not supported on little endian systems"
msgstr "-mmultiple no tiene soporte en sistemas little endian"
-#: config/rs6000/rs6000.c:599
+#: config/rs6000/rs6000.c:800
msgid "-mstring is not supported on little endian systems"
msgstr "-mstring no tiene soporte en sistemas little endian"
-#: config/rs6000/rs6000.c:623
+#: config/rs6000/rs6000.c:814
#, c-format
msgid "unknown -mdebug-%s switch"
msgstr "interruptor -mdebug-%s desconocido"
-#: config/rs6000/rs6000.c:635
+#: config/rs6000/rs6000.c:826
#, c-format
msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'"
msgstr "argumento de -mtraceback `%s' desconocido; se esperaba `full', `partial' o `none'"
-#: config/rs6000/rs6000.c:646
+#: config/rs6000/rs6000.c:837
#, c-format
msgid "Unknown switch -mlong-double-%s"
msgstr "Interruptor -mlong-double-%s desconocido"
-#: config/rs6000/rs6000.c:738
-#, c-format
-msgid "unknown -misel= option specified: '%s'"
+#: config/rs6000/rs6000.c:1008
+#, fuzzy, c-format
+msgid "unknown -m%s= option specified: '%s'"
msgstr "opción -misel= especificada desconocida: '%s'"
-#: config/rs6000/rs6000.c:753
+#: config/rs6000/rs6000.c:1025
#, c-format
-msgid "unknown -mvrsave= option specified: '%s'"
-msgstr "opción -mvrsave= especificada desconocida: '%s'"
+msgid "not configured for ABI: '%s'"
+msgstr ""
-#: config/rs6000/rs6000.c:772
+#: config/rs6000/rs6000.c:1031
#, c-format
msgid "unknown ABI specified: '%s'"
msgstr "ABI especificada desconocida: '%s'"
-#: config/rs6000/rs6000.c:4206
+#: config/rs6000/rs6000.c:1045
+#, fuzzy, c-format
+msgid "unknown -malign-XXXXX option specified: '%s'"
+msgstr "opción -misel= especificada desconocida: '%s'"
+
+#: config/rs6000/rs6000.c:5358
msgid "argument 1 must be a 5-bit signed literal"
msgstr "el argumento 1 debe ser una literal con signo de 5-bit"
-#: config/rs6000/rs6000.c:4313 config/rs6000/rs6000.c:4903
+#: config/rs6000/rs6000.c:5460 config/rs6000/rs6000.c:6083
msgid "argument 2 must be a 5-bit unsigned literal"
msgstr "el argumento 2 debe ser una literal sin signo de 5-bit"
-#: config/rs6000/rs6000.c:4356
+#: config/rs6000/rs6000.c:5500
msgid "argument 1 of __builtin_altivec_predicate must be a constant"
msgstr "el argumento 1 de __builtin_altivec_predicate debe ser una constante"
-#: config/rs6000/rs6000.c:4410
+#: config/rs6000/rs6000.c:5554
msgid "argument 1 of __builtin_altivec_predicate is out of range"
msgstr "el argumento 1 de __builtin_altivec_predicate está fuera de rango"
-#: config/rs6000/rs6000.c:4489
+#: config/rs6000/rs6000.c:5682
msgid "argument 3 must be a 4-bit unsigned literal"
msgstr "el argumento 3 debe ser una literal sin signo de 4-bit"
-#: config/rs6000/rs6000.c:4666
+#: config/rs6000/rs6000.c:5852
#, c-format
msgid "argument to `%s' must be a 2-bit unsigned literal"
msgstr "el argumento para `%s' debe ser una literal sin signo de 2-bit"
-#: config/rs6000/rs6000.c:4782
+#: config/rs6000/rs6000.c:5965
msgid "argument to dss must be a 2-bit unsigned literal"
msgstr "el argumento para dss debe ser una literal sin signo de 2-bit"
-#: config/rs6000/rs6000.c:5013
+#: config/rs6000/rs6000.c:6203
msgid "argument 1 of __builtin_spe_predicate must be a constant"
msgstr "el argumento 1 de __builtin_spe_predicate debe ser una constante"
-#: config/rs6000/rs6000.c:5086
+#: config/rs6000/rs6000.c:6276
msgid "argument 1 of __builtin_spe_predicate is out of range"
msgstr "el argumento 1 de __builtin_spe_predicate está fuera de rango"
-#: config/rs6000/rs6000.c:7511
+#: config/rs6000/rs6000.c:8711
#, c-format
msgid "invalid %%f value"
msgstr "valor %%f inválido"
-#: config/rs6000/rs6000.c:7520
+#: config/rs6000/rs6000.c:8720
#, c-format
msgid "invalid %%F value"
msgstr "valor %%F inválido"
-#: config/rs6000/rs6000.c:7529
+#: config/rs6000/rs6000.c:8729
#, c-format
msgid "invalid %%G value"
msgstr "valor %%G inválido"
-#: config/rs6000/rs6000.c:7564
+#: config/rs6000/rs6000.c:8764
#, c-format
msgid "invalid %%j code"
msgstr "código %%j inválido"
-#: config/rs6000/rs6000.c:7574
+#: config/rs6000/rs6000.c:8774
#, c-format
msgid "invalid %%J code"
msgstr "código %%J inválido"
-#: config/rs6000/rs6000.c:7604
+#: config/rs6000/rs6000.c:8784
+#, c-format
+msgid "invalid %%k value"
+msgstr "valor %%k inválido"
+
+#: config/rs6000/rs6000.c:8804 config/xtensa/xtensa.c:1985
#, c-format
msgid "invalid %%K value"
msgstr "valor %%K inválido"
-#: config/rs6000/rs6000.c:7671
+#: config/rs6000/rs6000.c:8871
#, c-format
msgid "invalid %%O value"
msgstr "valor %%O inválido"
-#: config/rs6000/rs6000.c:7793
+#: config/rs6000/rs6000.c:8918
+#, c-format
+msgid "invalid %%q value"
+msgstr "valor %%q inválido"
+
+#: config/rs6000/rs6000.c:8962
+#, c-format
+msgid "invalid %%S value"
+msgstr "valor %%S inválido"
+
+#: config/rs6000/rs6000.c:9004
#, c-format
msgid "invalid %%T value"
msgstr "valor %%T inválido"
-#: config/rs6000/rs6000.c:7803
+#: config/rs6000/rs6000.c:9014
#, c-format
msgid "invalid %%u value"
msgstr "valor %%u inválido"
-#: config/rs6000/rs6000.c:7812
+#: config/rs6000/rs6000.c:9023 config/xtensa/xtensa.c:1955
#, c-format
msgid "invalid %%v value"
msgstr "valor %%v inválido"
-#: config/rs6000/rs6000.c:12242
+#: config/rs6000/rs6000.c:13513
msgid "no profiling of 64-bit code for this ABI"
msgstr "no hay análisis de perfil del código de 64-bit para esta ABI"
-#: config/rs6000/aix.h:160 config/rs6000/beos.h:32
+#: config/rs6000/aix.h:184 config/rs6000/beos.h:32
msgid "Always pass floating-point arguments in memory"
msgstr "Pasar siempre los argumentos de coma flotante en memoria"
-#: config/rs6000/aix.h:162 config/rs6000/beos.h:34
+#: config/rs6000/aix.h:186 config/rs6000/beos.h:34
msgid "Don't always pass floating-point arguments in memory"
msgstr "No pasar siempre los argumentos de coma flotante en memoria"
-#: config/rs6000/aix41.h:28 config/rs6000/aix43.h:32 config/rs6000/aix51.h:32
-#: config/rs6000/aix52.h:32
+#: config/rs6000/aix41.h:27 config/rs6000/aix43.h:31 config/rs6000/aix51.h:31
+#: config/rs6000/aix52.h:31
msgid "Support message passing with the Parallel Environment"
msgstr "Soporte para el paso de mensajes con el Ambiente Paralelo"
-#: config/rs6000/aix43.h:28 config/rs6000/aix51.h:28 config/rs6000/aix52.h:28
+#: config/rs6000/aix43.h:27 config/rs6000/aix51.h:27 config/rs6000/aix52.h:27
msgid "Compile for 64-bit pointers"
msgstr "Compilar para punteros de 64-bit"
-#: config/rs6000/aix43.h:30 config/rs6000/aix51.h:30 config/rs6000/aix52.h:30
+#: config/rs6000/aix43.h:29 config/rs6000/aix51.h:29 config/rs6000/aix52.h:29
msgid "Compile for 32-bit pointers"
msgstr "Compilar para punteros de 32-bit"
-#: config/rs6000/aix43.h:49 config/rs6000/aix51.h:49 config/rs6000/aix52.h:49
+#: config/rs6000/aix43.h:48 config/rs6000/aix51.h:48 config/rs6000/aix52.h:48
msgid "-maix64 and POWER architecture are incompatible"
msgstr "-maix64 y la arquitectura POWER son incompatibles"
-#: config/rs6000/aix43.h:54 config/rs6000/aix51.h:54 config/rs6000/aix52.h:54
+#: config/rs6000/aix43.h:53 config/rs6000/aix51.h:53 config/rs6000/aix52.h:53
msgid "-maix64 requires PowerPC64 architecture remain enabled"
msgstr "-maix64 requiere que la arquitectura PowerPC64 permanezca activada"
-#: config/rs6000/aix43.h:58 config/rs6000/aix51.h:58 config/rs6000/aix52.h:58
+#: config/rs6000/aix43.h:57 config/rs6000/aix51.h:57 config/rs6000/aix52.h:57
msgid "-maix64 required: 64-bit computation with 32-bit addressing not yet supported"
msgstr "se requiere -maix64: cálculo de 64 bits con direccionamiento de 32 bits no tiene soporte aún"
+#: config/rs6000/darwin.h:64
+msgid "Generate code suitable for executables (NOT shared libs)"
+msgstr ""
+
+#. The Darwin ABI always includes AltiVec, can't be (validly) turned
+#. off.
+#: config/rs6000/darwin.h:80
+msgid "-mdynamic-no-pic overrides -fpic or -fPIC"
+msgstr ""
+
+#. Darwin doesn't support -fpic.
+#: config/rs6000/darwin.h:86
+#, fuzzy
+msgid "-fpic is not supported; -fPIC assumed"
+msgstr "-pipe no tiene soporte"
+
+#: config/rs6000/linux64.h:96
+#, fuzzy
+msgid "-m64 requires a PowerPC64 cpu"
+msgstr "-maix64 requiere que la arquitectura PowerPC64 permanezca activada"
+
+#: config/rs6000/linux64.h:201
+#, fuzzy
+msgid "Call mcount for profiling before a function prologue"
+msgstr "No mover las instrucciones al prólogo de una función"
+
+#: config/rs6000/linux64.h:203
+#, fuzzy
+msgid "Call mcount for profiling after a function prologue"
+msgstr "No mover las instrucciones al prólogo de una función"
+
#. Run-time compilation parameters selecting different hardware subsets.
#.
#. Macro to define tables used to set the flags.
@@ -12611,162 +12038,211 @@ msgstr "se requiere -maix64: cálculo de 64 bits con direccionamiento de 32 bits
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/rs6000/rs6000.h:240
+#: config/rs6000/rs6000.h:262
msgid "Use POWER instruction set"
msgstr "Usar el conjunto de instrucciones POWER"
-#: config/rs6000/rs6000.h:243
+#: config/rs6000/rs6000.h:265
msgid "Use POWER2 instruction set"
msgstr "Usar el conjunto de instrucciones POWER2"
-#: config/rs6000/rs6000.h:245
+#: config/rs6000/rs6000.h:267
msgid "Do not use POWER2 instruction set"
msgstr "No usar el conjunto de instrucciones POWER2"
-#: config/rs6000/rs6000.h:248
+#: config/rs6000/rs6000.h:270
msgid "Do not use POWER instruction set"
msgstr "No usar el conjunto de instrucciones POWER"
-#: config/rs6000/rs6000.h:250
+#: config/rs6000/rs6000.h:272
msgid "Use PowerPC instruction set"
msgstr "Usar el conjunto de instrucciones PowerPC"
-#: config/rs6000/rs6000.h:253
+#: config/rs6000/rs6000.h:275
msgid "Do not use PowerPC instruction set"
msgstr "No usar el conjunto de instrucciones PowerPC"
-#: config/rs6000/rs6000.h:255
+#: config/rs6000/rs6000.h:277
msgid "Use PowerPC General Purpose group optional instructions"
msgstr "Usar el grupo opcional de instrucciones PowerPC de Propósito General"
-#: config/rs6000/rs6000.h:257
-msgid "Don't use PowerPC General Purpose group optional instructions"
+#: config/rs6000/rs6000.h:279
+#, fuzzy
+msgid "Do not use PowerPC General Purpose group optional instructions"
msgstr "No usar el grupo opcional de instrucciones PowerPC de Propósito General"
-#: config/rs6000/rs6000.h:259
+#: config/rs6000/rs6000.h:281
msgid "Use PowerPC Graphics group optional instructions"
msgstr "Usar el grupo opcional de instrucciones PowerPC de Gráficas"
-#: config/rs6000/rs6000.h:261
-msgid "Don't use PowerPC Graphics group optional instructions"
+#: config/rs6000/rs6000.h:283
+#, fuzzy
+msgid "Do not use PowerPC Graphics group optional instructions"
msgstr "No usar el grupo opcional de instrucciones PowerPC de Gráficas"
-#: config/rs6000/rs6000.h:263
+#: config/rs6000/rs6000.h:285
msgid "Use PowerPC-64 instruction set"
msgstr "Usar el conjunto de instrucciones PowerPC-64"
-#: config/rs6000/rs6000.h:265
-msgid "Don't use PowerPC-64 instruction set"
+#: config/rs6000/rs6000.h:287
+#, fuzzy
+msgid "Do not use PowerPC-64 instruction set"
msgstr "No usar el conjunto de instrucciones PowerPC-64"
-#: config/rs6000/rs6000.h:267
+#: config/rs6000/rs6000.h:289
msgid "Use AltiVec instructions"
msgstr "Usar instrucciones AltiVec"
-#: config/rs6000/rs6000.h:269
-msgid "Don't use AltiVec instructions"
+#: config/rs6000/rs6000.h:291
+#, fuzzy
+msgid "Do not use AltiVec instructions"
msgstr "No usar instrucciones AltiVec"
-#: config/rs6000/rs6000.h:271
+#: config/rs6000/rs6000.h:293
msgid "Use new mnemonics for PowerPC architecture"
msgstr "Usar los mnemónicos nuevos para la arquitectura PowerPC"
-#: config/rs6000/rs6000.h:273
+#: config/rs6000/rs6000.h:295
msgid "Use old mnemonics for PowerPC architecture"
msgstr "Usar los mnemónicos antiguos para la arquitectura PowerPC"
-#: config/rs6000/rs6000.h:276
+#: config/rs6000/rs6000.h:298
msgid "Put everything in the regular TOC"
msgstr "Colocar todo en el TOC normal"
-#: config/rs6000/rs6000.h:278
+#: config/rs6000/rs6000.h:300
msgid "Place floating point constants in TOC"
msgstr "Colocar las constantes de coma flotante en TOC"
-#: config/rs6000/rs6000.h:280
-msgid "Don't place floating point constants in TOC"
+#: config/rs6000/rs6000.h:302
+#, fuzzy
+msgid "Do not place floating point constants in TOC"
msgstr "No colocar las constantes de coma flotante en TOC"
-#: config/rs6000/rs6000.h:282
+#: config/rs6000/rs6000.h:304
msgid "Place symbol+offset constants in TOC"
msgstr "Colocar las constantes símbolo+desplazamiento en TOC"
-#: config/rs6000/rs6000.h:284
-msgid "Don't place symbol+offset constants in TOC"
+#: config/rs6000/rs6000.h:306
+#, fuzzy
+msgid "Do not place symbol+offset constants in TOC"
msgstr "No colocar las constantes símbolo+desplazamiento en TOC"
-#: config/rs6000/rs6000.h:290
+#: config/rs6000/rs6000.h:312
msgid "Place variable addresses in the regular TOC"
msgstr "Colocar las direcciones variables en el TOC normal"
-#: config/rs6000/rs6000.h:296
+#: config/rs6000/rs6000.h:318
msgid "Generate load/store multiple instructions"
msgstr "Generar múltiples instrucciones load/store"
-#: config/rs6000/rs6000.h:298
+#: config/rs6000/rs6000.h:320
msgid "Do not generate load/store multiple instructions"
msgstr "No generar múltiples instrucciones load/store"
-#: config/rs6000/rs6000.h:302
+#: config/rs6000/rs6000.h:322
msgid "Generate string instructions for block moves"
msgstr "Generar instrucciones de cadena para movimiento de bloques"
-#: config/rs6000/rs6000.h:304
+#: config/rs6000/rs6000.h:324
msgid "Do not generate string instructions for block moves"
msgstr "No generar instrucciones de cadena para movimiento de bloques"
-#: config/rs6000/rs6000.h:308
+#: config/rs6000/rs6000.h:326
msgid "Generate load/store with update instructions"
msgstr "Generar load/store con instrucciones de actualización"
-#: config/rs6000/rs6000.h:310
+#: config/rs6000/rs6000.h:328
msgid "Do not generate load/store with update instructions"
msgstr "No generar load/store con instrucciones de actualización"
-#: config/rs6000/rs6000.h:318
-msgid "Don't schedule the start and end of the procedure"
+#: config/rs6000/rs6000.h:332
+#, fuzzy
+msgid "Do not generate fused multiply/add instructions"
+msgstr "No generar instrucciones multiply/add de corto circuito"
+
+#: config/rs6000/rs6000.h:336
+#, fuzzy
+msgid "Do not schedule the start and end of the procedure"
msgstr "No calendarizar el inicio y el final del procedimiento"
-#: config/rs6000/rs6000.h:324
+#: config/rs6000/rs6000.h:342
msgid "Return all structures in memory (AIX default)"
msgstr "Devolver todas las estructuras en memoria (por defecto en AIX)"
-#: config/rs6000/rs6000.h:326
+#: config/rs6000/rs6000.h:344
msgid "Return small structures in registers (SVR4 default)"
msgstr "Devolver las estructuras pequeñas en registros (por defecto en SVR4)"
-#: config/rs6000/rs6000.h:391 config/sparc/sparc.h:633
+#: config/rs6000/rs6000.h:350
+#, fuzzy
+msgid "Generate single field mfcr instruction"
+msgstr "Generar instrucciones char"
+
+#: config/rs6000/rs6000.h:352
+#, fuzzy
+msgid "Do not generate single field mfcr instruction"
+msgstr "No generar instrucciones char"
+
+#: config/rs6000/rs6000.h:435 config/sparc/sparc.h:648
msgid "Use features of and schedule code for given CPU"
msgstr "Usar características del código de calendarizador and para el CPU dado"
-#: config/rs6000/rs6000.h:394
+#: config/rs6000/rs6000.h:438
msgid "Enable debug output"
msgstr "Activar la salida de depuración"
-#: config/rs6000/rs6000.h:396
+#: config/rs6000/rs6000.h:440
msgid "Select full, part, or no traceback table"
msgstr "Seleccionar la tabla full, part, ó sin traceback"
-#: config/rs6000/rs6000.h:397
+#: config/rs6000/rs6000.h:441
msgid "Specify ABI to use"
msgstr "Especificar el ABI a utilizar"
-#: config/rs6000/rs6000.h:399
+#: config/rs6000/rs6000.h:443
msgid "Specify size of long double (64 or 128 bits)"
msgstr "Especificar el tamaño de long double (64 ó 128 bits)"
-#: config/rs6000/rs6000.h:401
+#: config/rs6000/rs6000.h:445
msgid "Specify yes/no if isel instructions should be generated"
msgstr "Especificar sí/no si se deben generar las instrucciones isel"
-#: config/rs6000/rs6000.h:403
+#: config/rs6000/rs6000.h:447
+#, fuzzy
+msgid "Specify yes/no if SPE SIMD instructions should be generated"
+msgstr "Especificar sí/no si se deben generar las instrucciones isel"
+
+#: config/rs6000/rs6000.h:449
+#, fuzzy
+msgid "Specify yes/no if using floating point in the GPRs"
+msgstr "Especificar la versión del emulador de coma flotante"
+
+#: config/rs6000/rs6000.h:451
msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec"
msgstr "Especificar sí/no si se deben generar las instrucciones VRSAVE para AltiVec"
-#: config/rs6000/rs6000.h:405
+#: config/rs6000/rs6000.h:453
msgid "Avoid all range limits on call instructions"
msgstr "Evitar todos los límites de rango en las instrucciones de llamadas"
+#: config/rs6000/rs6000.h:456
+msgid "Determine which dependences between insns are considered costly"
+msgstr ""
+
+#: config/rs6000/rs6000.h:458
+msgid "Specify which post scheduling nop insertion scheme to apply"
+msgstr ""
+
+#: config/rs6000/rs6000.h:460
+#, fuzzy
+msgid "Specify alignment of structure fields default/natural"
+msgstr "Especificar la alineación mínima de bit de las estructuras"
+
+#: config/rs6000/rs6000.h:462
+msgid "Specify scheduling priority for dispatch slot restricted insns"
+msgstr ""
+
#. Definitions for __builtin_return_address and __builtin_frame_address.
#. __builtin_return_address (0) should give link register (65), enable
#. this.
@@ -12779,7 +12255,7 @@ msgstr "Evitar todos los límites de rango en las instrucciones de llamadas"
#. Number of bytes into the frame return addresses can be found. See
#. rs6000_stack_info in rs6000.c for more information on how the different
#. abi's store the return address.
-#: config/rs6000/rs6000.h:1884
+#: config/rs6000/rs6000.h:1926
msgid "RETURN_ADDRESS_OFFSET not supported"
msgstr "RETURN_ADDRESS_OFFSET no tiene soporte"
@@ -12791,91 +12267,100 @@ msgstr "Seleccionar la convención de llamada ABI"
msgid "Select method for sdata handling"
msgstr "Seleccionar el método para el manejo de sdata"
-#: config/rs6000/sysv4.h:103
+#: config/rs6000/sysv4.h:100
msgid "Align to the base type of the bit-field"
msgstr "Alinear al tipo base del campo de bit"
-#: config/rs6000/sysv4.h:105
+#: config/rs6000/sysv4.h:102
msgid "Don't align to the base type of the bit-field"
msgstr "No alinear al tipo base del campo de bit"
-#: config/rs6000/sysv4.h:107
+#: config/rs6000/sysv4.h:104
msgid "Don't assume that unaligned accesses are handled by the system"
msgstr "No asumir que los accesos sin alinear son manejados por el sistema"
-#: config/rs6000/sysv4.h:109
+#: config/rs6000/sysv4.h:106
msgid "Assume that unaligned accesses are handled by the system"
msgstr "Asumir que los accesos sin alinear son manejados por el sistema"
-#: config/rs6000/sysv4.h:111 config/rs6000/sysv4.h:115
+#: config/rs6000/sysv4.h:108 config/rs6000/sysv4.h:112
msgid "Produce code relocatable at runtime"
msgstr "Producir código reubicable en el momento de ejecución"
-#: config/rs6000/sysv4.h:113 config/rs6000/sysv4.h:117
+#: config/rs6000/sysv4.h:110 config/rs6000/sysv4.h:114
msgid "Don't produce code relocatable at runtime"
msgstr "No producir código reubicable en el momento de ejecución"
-#: config/rs6000/sysv4.h:119 config/rs6000/sysv4.h:121
+#: config/rs6000/sysv4.h:116 config/rs6000/sysv4.h:118
msgid "Produce little endian code"
msgstr "Producir código little endian"
-#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:125
+#: config/rs6000/sysv4.h:120 config/rs6000/sysv4.h:122
msgid "Produce big endian code"
msgstr "Producir código big endian"
-#: config/rs6000/sysv4.h:126 config/rs6000/sysv4.h:127
-#: config/rs6000/sysv4.h:128 config/rs6000/sysv4.h:129
-#: config/rs6000/sysv4.h:130 config/rs6000/sysv4.h:131
-#: config/rs6000/sysv4.h:141 config/rs6000/sysv4.h:142
-#: config/rs6000/sysv4.h:153 config/rs6000/sysv4.h:155
-#: config/rs6000/sysv4.h:157
+#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:124
+#: config/rs6000/sysv4.h:125 config/rs6000/sysv4.h:126
+#: config/rs6000/sysv4.h:127 config/rs6000/sysv4.h:128
+#: config/rs6000/sysv4.h:138 config/rs6000/sysv4.h:139
+#: config/rs6000/sysv4.h:151 config/rs6000/sysv4.h:157
msgid "no description yet"
msgstr "sin descripción aún"
-#: config/rs6000/sysv4.h:132
+#: config/rs6000/sysv4.h:129
msgid "Use EABI"
msgstr "Usar EABI"
-#: config/rs6000/sysv4.h:133
+#: config/rs6000/sysv4.h:130
msgid "Don't use EABI"
msgstr "No usar EABI"
-#: config/rs6000/sysv4.h:136
+#: config/rs6000/sysv4.h:133
msgid "Do not allow bit-fields to cross word boundaries"
msgstr "No permitir que los campos de bits crucen los límites de word"
-#: config/rs6000/sysv4.h:138
+#: config/rs6000/sysv4.h:135
msgid "Use alternate register names"
msgstr "Usar nombres de registro alternados"
-#: config/rs6000/sysv4.h:140
+#: config/rs6000/sysv4.h:137
msgid "Don't use alternate register names"
msgstr "No usar nombres de registro alternados"
-#: config/rs6000/sysv4.h:144
+#: config/rs6000/sysv4.h:141
msgid "Link with libsim.a, libc.a and sim-crt0.o"
msgstr "Enlazar con libsim.a, libc.a y sim-crt0.o"
-#: config/rs6000/sysv4.h:146
+#: config/rs6000/sysv4.h:143
msgid "Link with libads.a, libc.a and crt0.o"
msgstr "Enlazar con libads.a, libc.a y crt0.o"
-#: config/rs6000/sysv4.h:148
+#: config/rs6000/sysv4.h:145
msgid "Link with libyk.a, libc.a and crt0.o"
msgstr "Enlazar con libyk.a, libc.a y crt0.o"
-#: config/rs6000/sysv4.h:150
+#: config/rs6000/sysv4.h:147
msgid "Link with libmvme.a, libc.a and crt0.o"
msgstr "Enlazar con libmvme.a, libc.a y crt0.o"
-#: config/rs6000/sysv4.h:152
+#: config/rs6000/sysv4.h:149
msgid "Set the PPC_EMB bit in the ELF flags header"
msgstr "Establecer el bit PPC_EMB en los interruptores del encabezado ELF"
-#: config/rs6000/sysv4.h:154
+#: config/rs6000/sysv4.h:150
msgid "Use the WindISS simulator"
msgstr "Usar el simulador WindISS"
+#: config/rs6000/sysv4.h:153
+#, fuzzy
+msgid "Generate 64-bit code"
+msgstr "Generar código x86-64 de 64bit"
+
+#: config/rs6000/sysv4.h:155
+#, fuzzy
+msgid "Generate 32-bit code"
+msgstr "Generar código i386 de 32bit"
+
#. Sometimes certain combinations of command options do not make sense
#. on a particular target machine. You can define a macro
#. `OVERRIDE_OPTIONS' to take account of this. This macro, if
@@ -12899,360 +12384,435 @@ msgstr "valor erróneo para -msdata=%s"
msgid "-mrelocatable and -msdata=%s are incompatible"
msgstr "-mrelocatable y -msdata=%s son incompatibles"
-#: config/rs6000/sysv4.h:255
+#: config/rs6000/sysv4.h:256
#, c-format
msgid "-f%s and -msdata=%s are incompatible"
msgstr "-f%s y -msdata=%s son incompatibles"
-#: config/rs6000/sysv4.h:264
+#: config/rs6000/sysv4.h:265
#, c-format
msgid "-msdata=%s and -mcall-%s are incompatible"
msgstr "-msdata=%s y -mcall-%s son incompatibles"
-#: config/rs6000/sysv4.h:273
+#: config/rs6000/sysv4.h:274
msgid "-mrelocatable and -mno-minimal-toc are incompatible"
msgstr "-mrelocatable y -mno-minimal-toc son incompatibles"
-#: config/rs6000/sysv4.h:279
+#: config/rs6000/sysv4.h:280
#, c-format
msgid "-mrelocatable and -mcall-%s are incompatible"
msgstr "-mrelocatable y -mcall-%s son incompatibles"
-#: config/rs6000/sysv4.h:286
+#: config/rs6000/sysv4.h:287
#, c-format
msgid "-fPIC and -mcall-%s are incompatible"
msgstr "-fPIC y -mcall-%s son incompatibles"
-#: config/rs6000/sysv4.h:293
+#: config/rs6000/sysv4.h:294
msgid "-mcall-aixdesc must be big endian"
msgstr "-mcall-aixdesc debe ser big endian"
-#: config/s390/s390.c:3063
+#: config/rs6000/sysv4.h:309
+#, fuzzy, c-format
+msgid "-m%s not supported in this configuration"
+msgstr "%s no tiene soporte en esta configuración"
+
+#: config/s390/s390.c:926
+#, fuzzy, c-format
+msgid "Unknown cpu used in -march=%s."
+msgstr "cpu desconocido: -mcpu=%s"
+
+#: config/s390/s390.c:945
+#, fuzzy, c-format
+msgid "Unknown cpu used in -mtune=%s."
+msgstr "cpu desconocido: -mcpu=%s"
+
+#: config/s390/s390.c:950
+#, fuzzy, c-format
+msgid "z/Architecture mode not supported on %s."
+msgstr "el modo de captura no tiene soporte en Unicos/Mk"
+
+#: config/s390/s390.c:952
+#, fuzzy
+msgid "64-bit ABI not supported in ESA/390 mode."
+msgstr "el modelo de código %s no tiene soporte en el modo PIC"
+
+#: config/s390/s390.c:3337
msgid "invalid UNSPEC as operand (1)"
msgstr "UNSPEC inválido como operando (1)"
-#: config/s390/s390.c:3123
+#: config/s390/s390.c:3385
msgid "invalid UNSPEC as operand (2)"
msgstr "UNSPEC inválido como operando (2)"
-#: config/s390/s390.c:3129
+#: config/s390/s390.c:3391
msgid "UNKNOWN in s390_output_symbolic_const !?"
msgstr "UNKNOWN en s390_output_symbolic_const !?"
-#: config/s390/s390.c:3147
+#: config/s390/s390.c:3407
msgid "Cannot decompose address."
msgstr "No se puede descomponer la dirección."
-#: config/s390/s390.c:3308
+#: config/s390/s390.c:3578
msgid "UNKNOWN in print_operand !?"
msgstr "UNKNOWN en print_operand !?"
-#: config/s390/s390.c:4961
+#: config/s390/s390.c:5301
msgid "Total size of local variables exceeds architecture limit."
msgstr "El tamaño total de las variables locales excede el límite de la arquitectura."
-#: config/s390/s390.h:70
+#: config/s390/s390.h:126
msgid "Set backchain"
msgstr "Establecer la cadena hacia atrás"
-#: config/s390/s390.h:71
+#: config/s390/s390.h:127
msgid "Don't set backchain (faster, but debug harder"
msgstr "No establecer la cadena hacia atrás (más rápido, pero más difícil de depurar"
-#: config/s390/s390.h:72
+#: config/s390/s390.h:128
msgid "Use bras for executable < 64k"
msgstr "Usar bras para el ejecutable < 64k"
-#: config/s390/s390.h:73
+#: config/s390/s390.h:129
msgid "Don't use bras"
msgstr "No usar bras"
-#: config/s390/s390.h:74
+#: config/s390/s390.h:130
msgid "Additional debug prints"
msgstr "Impresiones adicionales de depuración"
-#: config/s390/s390.h:75
+#: config/s390/s390.h:131
msgid "Don't print additional debug prints"
msgstr "No mostrar impresiones adicionales de depuración"
-#: config/s390/s390.h:76
-msgid "64 bit mode"
-msgstr "modo de 64 bit"
+#: config/s390/s390.h:132
+#, fuzzy
+msgid "64 bit ABI"
+msgstr "Usar ABI de 64-bit"
+
+#: config/s390/s390.h:133
+#, fuzzy
+msgid "31 bit ABI"
+msgstr "Usar ABI de 64-bit"
+
+#: config/s390/s390.h:134
+msgid "z/Architecture"
+msgstr ""
-#: config/s390/s390.h:77
-msgid "31 bit mode"
-msgstr "modo de 31 bit"
+#: config/s390/s390.h:135
+msgid "ESA/390 architecture"
+msgstr ""
-#: config/s390/s390.h:78
+#: config/s390/s390.h:136
msgid "mvcle use"
msgstr "uso de mvcle"
-#: config/s390/s390.h:79
+#: config/s390/s390.h:137
msgid "mvc&ex"
msgstr "mvc&ex"
-#: config/sh/sh.c:5137
+#: config/s390/s390.h:138
+#, fuzzy
+msgid "enable tpf OS code"
+msgstr "Generar código SA"
+
+#: config/s390/s390.h:139
+msgid "disable tpf OS code"
+msgstr ""
+
+#: config/s390/s390.h:140
+#, fuzzy
+msgid "disable fused multiply/add instructions"
+msgstr "Generar instrucciones multiply/add de corto circuito"
+
+#: config/s390/s390.h:141
+#, fuzzy
+msgid "enable fused multiply/add instructions"
+msgstr "Generar instrucciones multiply/add de corto circuito"
+
+#: config/sh/sh.c:5841
msgid "__builtin_saveregs not supported by this subtarget"
msgstr "no se da soporte a __builtin_saveregs en este subobjetivo"
-#: config/sh/sh.c:5687
+#: config/sh/sh.c:6743
msgid "attribute interrupt_handler is not compatible with -m5-compact"
msgstr "el atributo interrupt_handler no es compatible con -m5-compact"
#. The sp_switch attribute only has meaning for interrupt functions.
-#: config/sh/sh.c:5713 config/sh/sh.c:5752
+#. The trap_exit attribute only has meaning for interrupt functions.
+#: config/sh/sh.c:6765 config/sh/sh.c:6800
#, c-format
msgid "`%s' attribute only applies to interrupt functions"
msgstr "el atributo `%s' se aplica solamente a funciones de interrupción"
#. The argument must be a constant string.
-#: config/sh/sh.c:5720
+#: config/sh/sh.c:6772
#, c-format
msgid "`%s' attribute argument not a string constant"
msgstr "el argumento del atributo `%s' no es una cadena constante"
#. The argument must be a constant integer.
-#: config/sh/sh.c:5759
+#: config/sh/sh.c:6807
#, c-format
msgid "`%s' attribute argument not an integer constant"
msgstr "el argumento del atributo `%s' no es una constante entera"
#. There are no delay slots on SHmedia.
#. Relaxation isn't yet supported for SHmedia
-#: config/sh/sh.h:437
+#. -fprofile-arcs needs a working libgcov . In unified tree configurations with newlib, this requires to configure with --with-newlib --with-headers. But there is no way to check here we have a working libgcov, so just assume that we have.
+#: config/sh/sh.h:478
msgid "Profiling is not supported on this target."
msgstr "No se da soporte a análisis de perfil en este objetivo."
-#: config/sparc/sparc.c:329
+#: config/sparc/sparc.c:360
#, c-format
msgid "%s is not supported by this configuration"
msgstr "%s no tiene soporte en esta configuración"
-#: config/sparc/sparc.c:336
+#: config/sparc/sparc.c:367
msgid "-mlong-double-64 not allowed with -m64"
msgstr "no se permite -mlong-double-64 con -m64"
-#: config/sparc/sparc.c:361
+#: config/sparc/sparc.c:392
msgid "-mcmodel= is not supported on 32 bit systems"
msgstr "-mcmodel= no tiene soporte en sistemas de 32 bit"
-#: config/sparc/sparc.c:6341 config/sparc/sparc.c:6347
+#: config/sparc/sparc.c:6793 config/sparc/sparc.c:6799
#, c-format
msgid "invalid %%Y operand"
msgstr "operando %%Y inválido"
-#: config/sparc/sparc.c:6417
+#: config/sparc/sparc.c:6869
#, c-format
msgid "invalid %%A operand"
msgstr "operando %%A inválido"
-#: config/sparc/sparc.c:6427
+#: config/sparc/sparc.c:6879
#, c-format
msgid "invalid %%B operand"
msgstr "operando %%B inválido"
-#: config/sparc/sparc.c:6466
+#: config/sparc/sparc.c:6918
#, c-format
msgid "invalid %%c operand"
msgstr "operando %%c inválido"
-#: config/sparc/sparc.c:6467
+#: config/sparc/sparc.c:6919
#, c-format
msgid "invalid %%C operand"
msgstr "operando %%C inválido"
-#: config/sparc/sparc.c:6488
+#: config/sparc/sparc.c:6940
#, c-format
msgid "invalid %%d operand"
msgstr "operando %%d inválido"
-#: config/sparc/sparc.c:6489
+#: config/sparc/sparc.c:6941
#, c-format
msgid "invalid %%D operand"
msgstr "operando %%D inválido"
-#: config/sparc/sparc.c:6505
+#: config/sparc/sparc.c:6957
#, c-format
msgid "invalid %%f operand"
msgstr "operando %%f inválido"
-#: config/sparc/sparc.c:6519
+#: config/sparc/sparc.c:6971
#, c-format
msgid "invalid %%s operand"
msgstr "operando %%s inválido"
-#: config/sparc/sparc.c:6573
+#: config/sparc/sparc.c:7025
msgid "long long constant not a valid immediate operand"
msgstr "la constante long long no es un operando inmediato válido"
-#: config/sparc/sparc.c:6576
+#: config/sparc/sparc.c:7028
msgid "floating point constant not a valid immediate operand"
msgstr "la constante de coma flotante no es un operando inmediato válido"
-#: config/sparc/freebsd.h:81 config/sparc/linux.h:87 config/sparc/linux64.h:89
-#: config/sparc/netbsd-elf.h:239
+#: config/sparc/freebsd.h:77 config/sparc/linux.h:92
+#: config/sparc/linux64.h:104 config/sparc/netbsd-elf.h:216
msgid "Use 128 bit long doubles"
msgstr "Usar long doubles de 128 bit"
-#: config/sparc/sp64-elf.h:84 config/sparc/splet.h:29
+#: config/sparc/sp64-elf.h:90
msgid "Generate code for big endian"
msgstr "Generar código para big endian"
-#: config/sparc/sp64-elf.h:85 config/sparc/splet.h:30
+#: config/sparc/sp64-elf.h:91
msgid "Generate code for little endian"
msgstr "Generar código para little endian"
-#: config/sparc/sp86x-aout.h:51 config/sparc/sp86x-elf.h:65
+#: config/sparc/sp86x-elf.h:68
msgid "Use little-endian byte order for data"
msgstr "Usar el orden de byte little-endian para los datos"
-#: config/sparc/sparc.h:532
+#: config/sparc/sparc.h:547
msgid "Assume possible double misalignment"
msgstr "Asumir desalineación de double posible"
-#: config/sparc/sparc.h:534
+#: config/sparc/sparc.h:549
msgid "Assume all doubles are aligned"
msgstr "Asumir que todos los doubles están alineados"
-#: config/sparc/sparc.h:536
+#: config/sparc/sparc.h:551
msgid "Pass -assert pure-text to linker"
msgstr "Pasar el texto puro de -assert al enlazador"
-#: config/sparc/sparc.h:538
+#: config/sparc/sparc.h:553
msgid "Do not pass -assert pure-text to linker"
msgstr "No pasar el texto puro de -assert al enlazador"
-#: config/sparc/sparc.h:540
+#: config/sparc/sparc.h:555
msgid "Use flat register window model"
msgstr "Usar el modelo plano de ventana de registro"
-#: config/sparc/sparc.h:542
+#: config/sparc/sparc.h:557
msgid "Do not use flat register window model"
msgstr "No usar el modelo plano de ventana de registro"
-#: config/sparc/sparc.h:544
+#: config/sparc/sparc.h:559
msgid "Use ABI reserved registers"
msgstr "Usar los registros ABI reservados"
-#: config/sparc/sparc.h:546
+#: config/sparc/sparc.h:561
msgid "Do not use ABI reserved registers"
msgstr "No usar los registros ABI reservados"
-#: config/sparc/sparc.h:548
+#: config/sparc/sparc.h:563
msgid "Use hardware quad fp instructions"
msgstr "Usar instrucciones de fp quad de hardware"
-#: config/sparc/sparc.h:550
+#: config/sparc/sparc.h:565
msgid "Do not use hardware quad fp instructions"
msgstr "No usar instrucciones de fp quad de hardware"
-#: config/sparc/sparc.h:552
+#: config/sparc/sparc.h:567
msgid "Compile for v8plus ABI"
msgstr "Compilar para el ABI de v8plus"
-#: config/sparc/sparc.h:554
+#: config/sparc/sparc.h:569
msgid "Do not compile for v8plus ABI"
msgstr "No compilar para el ABI de v8plus"
-#: config/sparc/sparc.h:556
+#: config/sparc/sparc.h:571
msgid "Utilize Visual Instruction Set"
msgstr "Utilizar el Conjunto de Instrucciones Visuales"
-#: config/sparc/sparc.h:558
+#: config/sparc/sparc.h:573
msgid "Do not utilize Visual Instruction Set"
msgstr "No utilizar el Conjunto de Instrucciones Visuales"
#. ??? These are deprecated, coerced to -mcpu=. Delete in 2.9.
-#: config/sparc/sparc.h:561
+#: config/sparc/sparc.h:576
msgid "Optimize for Cypress processors"
msgstr "Optimizar para los procesadores Cypress"
-#: config/sparc/sparc.h:563
+#: config/sparc/sparc.h:578
msgid "Optimize for SPARCLite processors"
msgstr "Optimizar para los procesadores SPARCLite"
-#: config/sparc/sparc.h:565
+#: config/sparc/sparc.h:580
msgid "Optimize for F930 processors"
msgstr "Optimizar para los procesadores F930"
-#: config/sparc/sparc.h:567
+#: config/sparc/sparc.h:582
msgid "Optimize for F934 processors"
msgstr "Optimizar para los procesadores F934"
-#: config/sparc/sparc.h:569
+#: config/sparc/sparc.h:584
msgid "Use V8 SPARC ISA"
msgstr "Usar el ISA V8 de SPARC"
-#: config/sparc/sparc.h:571
+#: config/sparc/sparc.h:586
msgid "Optimize for SuperSPARC processors"
msgstr "Optimizar para procesadores SuperSPARC"
#. End of deprecated options.
-#: config/sparc/sparc.h:574
+#: config/sparc/sparc.h:589
msgid "Pointers are 64-bit"
msgstr "Los punteros son de 64-bit"
-#: config/sparc/sparc.h:576
+#: config/sparc/sparc.h:591
msgid "Pointers are 32-bit"
msgstr "Los punteros son de 32-bit"
-#: config/sparc/sparc.h:578
+#: config/sparc/sparc.h:593
msgid "Use 32-bit ABI"
msgstr "Usar ABI de 32-bit"
-#: config/sparc/sparc.h:580
+#: config/sparc/sparc.h:595
msgid "Use 64-bit ABI"
msgstr "Usar ABI de 64-bit"
-#: config/sparc/sparc.h:582
+#: config/sparc/sparc.h:597
msgid "Use stack bias"
msgstr "Usar tendencia de la pila"
-#: config/sparc/sparc.h:584
+#: config/sparc/sparc.h:599
msgid "Do not use stack bias"
msgstr "No usar la tendencia de la pila"
-#: config/sparc/sparc.h:586
+#: config/sparc/sparc.h:601
msgid "Use structs on stronger alignment for double-word copies"
msgstr "Usar structs en alineación más fuerte para copias double-word"
-#: config/sparc/sparc.h:588
+#: config/sparc/sparc.h:603
msgid "Do not use structs on stronger alignment for double-word copies"
msgstr "No usar structs en alineación más fuerte para copias double-word"
-#: config/sparc/sparc.h:590
+#: config/sparc/sparc.h:605
msgid "Optimize tail call instructions in assembler and linker"
msgstr "Optimizar las instrucciones de la llamada del extremo en el ensamblador y el enlazador"
-#: config/sparc/sparc.h:592
+#: config/sparc/sparc.h:607
msgid "Do not optimize tail call instructions in assembler or linker"
msgstr "No optimizar las instrucciones de la llamada del extremo en el ensamblador y el enlazador"
-#: config/sparc/sparc.h:637
+#: config/sparc/sparc.h:652
msgid "Use given SPARC code model"
msgstr "Usar el modelo de código del SPARC dado"
-#: config/stormy16/stormy16.c:1192
+#: config/stormy16/stormy16.c:526
+#, fuzzy
+msgid "Constant halfword load operand out of range."
+msgstr "el argumento constante está fuera de rango para `%s'"
+
+#: config/stormy16/stormy16.c:536
+#, fuzzy
+msgid "Constant arithmetic operand out of range."
+msgstr "el argumento constante está fuera de rango para `%s'"
+
+#: config/stormy16/stormy16.c:1027
+msgid "Local variable memory requirements exceed capacity."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1193
+#, fuzzy
+msgid "function_profiler support"
+msgstr "soporte para function_profiler para MMIX"
+
+#: config/stormy16/stormy16.c:1292
msgid "cannot use va_start in interrupt function"
msgstr "no se puede usar va_start en una función de interrupción"
-#: config/stormy16/stormy16.c:1552
+#: config/stormy16/stormy16.c:1624
msgid "`B' operand is not constant"
msgstr "el operando `B' no es una constante"
-#: config/stormy16/stormy16.c:1558
+#: config/stormy16/stormy16.c:1630
msgid "`B' operand has multiple bits set"
msgstr "el operando `B' tiene establecidos múltiples bits"
-#: config/stormy16/stormy16.c:1585
+#: config/stormy16/stormy16.c:1656
msgid "`o' operand is not constant"
msgstr "el operando `o' no es una constante"
-#: config/stormy16/stormy16.c:1600
+#: config/stormy16/stormy16.c:1670
msgid "xstormy16_print_operand: unknown code"
msgstr "xstormy16_print_operand: código desconocido"
-#: config/stormy16/stormy16.c:1650
+#: config/stormy16/stormy16.c:1716
#, c-format
msgid "switch statement of size %lu entries too large"
msgstr "la declaración switch de tamaño de %lu entradas es demasiado grande"
@@ -13273,105 +12833,106 @@ msgstr "no se puede establecer el atributo de interrupción: no hay función actua
msgid "cannot set interrupt attribute: no such identifier"
msgstr "no se puede establecer el atributo de interrupción: no hay tal identificador"
-#: config/v850/v850-c.c:148
+#: config/v850/v850-c.c:147
msgid "junk at end of #pragma ghs section"
msgstr "basura al final de la sección #pragma ghs"
-#: config/v850/v850-c.c:165
+#: config/v850/v850-c.c:164
#, c-format
msgid "unrecognized section name \"%s\""
msgstr "no se reconoce el nombre de sección \"%s\""
-#: config/v850/v850-c.c:180
+#: config/v850/v850-c.c:179
msgid "malformed #pragma ghs section"
msgstr "sección #pragma ghs malformada"
-#: config/v850/v850-c.c:200
+#: config/v850/v850-c.c:198
msgid "junk at end of #pragma ghs interrupt"
msgstr "basura al final del #pragma ghs interrupt"
-#: config/v850/v850-c.c:212
+#: config/v850/v850-c.c:209
msgid "junk at end of #pragma ghs starttda"
msgstr "basura al final del #pragma ghs starttda"
-#: config/v850/v850-c.c:224
+#: config/v850/v850-c.c:220
msgid "junk at end of #pragma ghs startsda"
msgstr "basura al final del #pragma ghs startsda"
-#: config/v850/v850-c.c:236
+#: config/v850/v850-c.c:231
msgid "junk at end of #pragma ghs startzda"
msgstr "basura al final del #pragma ghs startzda"
-#: config/v850/v850-c.c:248
+#: config/v850/v850-c.c:242
msgid "junk at end of #pragma ghs endtda"
msgstr "basura al final del #pragma ghs endtda"
-#: config/v850/v850-c.c:260
+#: config/v850/v850-c.c:253
msgid "junk at end of #pragma ghs endsda"
msgstr "basura al final del #pragma ghs endsda"
-#: config/v850/v850-c.c:272
+#: config/v850/v850-c.c:264
msgid "junk at end of #pragma ghs endzda"
msgstr "basura al final del #pragma ghs endzda"
-#: config/v850/v850.c:129
+#: config/v850/v850.c:142
#, c-format
msgid "%s=%s is not numeric"
msgstr "%s=%s no es numérico"
-#: config/v850/v850.c:136
+#: config/v850/v850.c:149
#, c-format
msgid "%s=%s is too large"
msgstr "%s=%s es demasiado grande"
-#: config/v850/v850.c:302
+#: config/v850/v850.c:301
msgid "const_double_split got a bad insn:"
msgstr "const_double_split recibió un insn erróneo:"
-#: config/v850/v850.c:837
+#: config/v850/v850.c:866
msgid "output_move_single:"
msgstr "output_move_single:"
-#: config/v850/v850.c:2217
-msgid "a data area attribute cannot be specified for local variables"
+#: config/v850/v850.c:2209
+#, fuzzy
+msgid "%Jdata area attributes cannot be specified for local variables"
msgstr "no se puede especificar un atributo de área de datos para variables locales"
-#: config/v850/v850.c:2228
-#, c-format
-msgid "data area of '%s' conflicts with previous declaration"
+#: config/v850/v850.c:2220
+#, fuzzy
+msgid "%Jdata area of '%D' conflicts with previous declaration"
msgstr "el área de datos de '%s' en conflicto con una declaración previa"
-#: config/v850/v850.c:2447
+#: config/v850/v850.c:2419
#, c-format
msgid "bogus JR construction: %d\n"
msgstr "construcción JR ambigua: %d\n"
-#: config/v850/v850.c:2468 config/v850/v850.c:2670
+#: config/v850/v850.c:2440 config/v850/v850.c:2643
#, c-format
msgid "bad amount of stack space removal: %d"
msgstr "cantidad errónea de eliminación de espacio de pila: %d"
-#: config/v850/v850.c:2646
+#: config/v850/v850.c:2619
#, c-format
msgid "bogus JARL construction: %d\n"
msgstr "construcción JARL ambigua: %d\n"
-#: config/v850/v850.c:3026
+#: config/v850/v850.c:2989
#, c-format
msgid "Bogus DISPOSE construction: %d\n"
msgstr "construcción DISPOSE ambigua: %d\n"
-#: config/v850/v850.c:3048
+#: config/v850/v850.c:3011
#, c-format
msgid "Too much stack space to dispose of: %d"
msgstr "Demasiado espacio de pila para disponer de él: %d"
-#: config/v850/v850.c:3224
+#: config/v850/v850.c:3184
#, c-format
msgid "Bogus PREPEARE construction: %d\n"
msgstr "construcción PREPARE ambigua: %d\n"
-#: config/v850/v850.c:3246
+#: config/v850/v850.c:3206
#, c-format
msgid "Too much stack space to prepare: %d"
msgstr "Demasiado espacio de pila para preparar: %d"
@@ -13381,802 +12942,761 @@ msgstr "Demasiado espacio de pila para preparar: %d"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/v850/v850.h:158
+#: config/v850/v850.h:174
msgid "Support Green Hills ABI"
msgstr "Soporte para el ABI Green Hills"
-#: config/v850/v850.h:161
+#: config/v850/v850.h:177
msgid "Prohibit PC relative function calls"
msgstr "Prohibir la llamada a funciones relativas al PC"
-#: config/v850/v850.h:164
+#: config/v850/v850.h:180
msgid "Reuse r30 on a per function basis"
msgstr "Reusar r30 basado por función"
-#: config/v850/v850.h:167
+#: config/v850/v850.h:183
msgid "Use stubs for function prologues"
msgstr "Usar cabos para los prólogos de función"
-#: config/v850/v850.h:170
+#: config/v850/v850.h:186
msgid "Same as: -mep -mprolog-function"
msgstr "Igual que: -mep -mprolog-function"
# No me gusta mucho esta traducción. cfuga
-#: config/v850/v850.h:171
+#: config/v850/v850.h:187
msgid "Enable backend debugging"
msgstr "Habilitar la depuración del extremo trasero"
-#: config/v850/v850.h:173
+#: config/v850/v850.h:189
msgid "Compile for the v850 processor"
msgstr "Compilar para el procesador v850"
-#: config/v850/v850.h:175
+#: config/v850/v850.h:191
+#, fuzzy
+msgid "Compile for v850e1 processor"
+msgstr "Compilar para el procesador v850e"
+
+#. Make sure that the other bits are cleared.
+#: config/v850/v850.h:193
msgid "Compile for v850e processor"
msgstr "Compilar para el procesador v850e"
#. Make sure that the other bits are cleared.
-#: config/v850/v850.h:177
+#: config/v850/v850.h:195
msgid "Enable the use of the short load instructions"
msgstr "Activar el uso de las instrucciones short load"
-#: config/v850/v850.h:180
+#: config/v850/v850.h:198
msgid "Do not use the callt instruction"
msgstr "No usar la instrucción callt"
-#: config/v850/v850.h:187
+#: config/v850/v850.h:205
msgid "Do not use registers r2 and r5"
msgstr "No usar los registros r2 y r5"
-#: config/v850/v850.h:189
+#: config/v850/v850.h:207
msgid "Enforce strict alignment"
msgstr "Reforzar la alineación estricta"
-#: config/v850/v850.h:192
+#: config/v850/v850.h:210
msgid "Use 4 byte entries in switch tables"
msgstr "Usar entradas de 4 byte en las tablas de switch"
-#: config/v850/v850.h:218
+#: config/v850/v850.h:236
msgid "Set the max size of data eligible for the TDA area"
msgstr "Establecer el tamaño máximo de datos elegibles para el área TDA"
-#: config/v850/v850.h:221
+#: config/v850/v850.h:239
msgid "Set the max size of data eligible for the SDA area"
msgstr "Establecer el tamaño máximo de datos elegibles para el área SDA"
-#: config/v850/v850.h:224
+#: config/v850/v850.h:242
msgid "Set the max size of data eligible for the ZDA area"
msgstr "Establecer el tamaño máximo de datos elegibles para el área ZDA"
-#: config/xtensa/xtensa.c:1062 config/xtensa/xtensa.c:1096
-#: config/xtensa/xtensa.c:1105
-msgid "bad test"
-msgstr "prueba errónea"
-
-#: config/xtensa/xtensa.c:1824
+#: config/xtensa/xtensa.c:1814
msgid "boolean registers required for the floating-point option"
msgstr "se requieren registros booleanos para la opción de coma flotante"
-#: config/xtensa/xtensa.c:1991
+#: config/xtensa/xtensa.c:1868
+#, fuzzy, c-format
+msgid "-f%s is not supported with CONST16 instructions"
+msgstr "%s no tiene soporte en esta configuración"
+
+#: config/xtensa/xtensa.c:1873
+msgid "PIC is required but not supported with CONST16 instructions"
+msgstr ""
+
+#: config/xtensa/xtensa.c:1943
+#, c-format
+msgid "invalid %%D value"
+msgstr "valor %%D inválido"
+
+#: config/xtensa/xtensa.c:1980
msgid "invalid mask"
msgstr "máscara inválida"
-#: config/xtensa/xtensa.c:2038
+#: config/xtensa/xtensa.c:2006
+#, fuzzy, c-format
+msgid "invalid %%x value"
+msgstr "valor %%x/X inválido"
+
+#: config/xtensa/xtensa.c:2013
+#, fuzzy, c-format
+msgid "invalid %%d value"
+msgstr "valor %%V inválido"
+
+#: config/xtensa/xtensa.c:2034 config/xtensa/xtensa.c:2044
+#, fuzzy, c-format
+msgid "invalid %%t/%%b value"
+msgstr "valor %%b inválido"
+
+#: config/xtensa/xtensa.c:2086
msgid "invalid address"
msgstr "dirección inválida"
-#: config/xtensa/xtensa.c:2063
+#: config/xtensa/xtensa.c:2111
msgid "no register in address"
msgstr "no hay registro en la dirección"
-#: config/xtensa/xtensa.c:2071
+#: config/xtensa/xtensa.c:2119
msgid "address offset not a constant"
msgstr "el desplazamiento de dirección no es una constante"
-#: config/xtensa/xtensa.c:2794
+#: config/xtensa/xtensa.c:2802
msgid "only uninitialized variables can be placed in a .bss section"
msgstr "sólo las variables sin inicializar se pueden colocar en una sección .bss"
-#: config/xtensa/xtensa.h:114
-msgid "Use the Xtensa code density option"
-msgstr "Usar la opción de densidad del código Xtensa"
-
-#: config/xtensa/xtensa.h:116
-msgid "Do not use the Xtensa code density option"
-msgstr "No usar la opción de densidad del código Xtensa"
-
-#: config/xtensa/xtensa.h:118
-msgid "Use the Xtensa MAC16 option"
-msgstr "Usar la opción MAC16 de Xtensa"
-
-#: config/xtensa/xtensa.h:120
-msgid "Do not use the Xtensa MAC16 option"
-msgstr "No usar la opción MAC16 de Xtensa"
-
-#: config/xtensa/xtensa.h:122
-msgid "Use the Xtensa MUL16 option"
-msgstr "Usar la opción MUL16 de Xtensa"
-
-#: config/xtensa/xtensa.h:124
-msgid "Do not use the Xtensa MUL16 option"
-msgstr "No usar la opción MUL16 de Xtensa"
-
-#: config/xtensa/xtensa.h:126
-msgid "Use the Xtensa MUL32 option"
-msgstr "Usar la opción MUL32 de Xtensa"
-
-#: config/xtensa/xtensa.h:128
-msgid "Do not use the Xtensa MUL32 option"
-msgstr "No usar la opción MUL32 de Xtensa"
-
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:134
-msgid "Use the Xtensa NSA option"
-msgstr "Usar la opción NSA de Xtensa"
-
-#: config/xtensa/xtensa.h:136
-msgid "Do not use the Xtensa NSA option"
-msgstr "No usar la opción NSA de Xtensa"
-
-#: config/xtensa/xtensa.h:138
-msgid "Use the Xtensa MIN/MAX option"
-msgstr "Usar la opción MIN/MAX de Xtensa"
-
-#: config/xtensa/xtensa.h:140
-msgid "Do not use the Xtensa MIN/MAX option"
-msgstr "No usar la opción MIN/MAX de Xtensa"
-
-#: config/xtensa/xtensa.h:142
-msgid "Use the Xtensa SEXT option"
-msgstr "Usar la opción SEXT de Xtensa"
-
-#: config/xtensa/xtensa.h:144
-msgid "Do not use the Xtensa SEXT option"
-msgstr "No usar la opción SEXT de Xtensa"
-
-#: config/xtensa/xtensa.h:146
-msgid "Use the Xtensa boolean register option"
-msgstr "Usar la opción de registro booleano de Xtensa"
-
-#: config/xtensa/xtensa.h:148
-msgid "Do not use the Xtensa boolean register option"
-msgstr "No usar la opción de registro booleano de Xtensa"
-
-#: config/xtensa/xtensa.h:150
-msgid "Use the Xtensa floating-point unit"
-msgstr "Usar la unidad de coma flotante de Xtensa"
+#: config/xtensa/xtensa.h:79
+#, fuzzy
+msgid "Use CONST16 instruction to load constants"
+msgstr "Usar instrucciones push para guardar los argumentos de salida"
-#: config/xtensa/xtensa.h:152
-msgid "Do not use the Xtensa floating-point unit"
-msgstr "No usar la unidad de coma flotante de Xtensa"
+#: config/xtensa/xtensa.h:81
+#, fuzzy
+msgid "Use PC-relative L32R instruction to load constants"
+msgstr "Usar instrucciones CALLn directas para llamadas rápidas"
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:170
+#: config/xtensa/xtensa.h:83
msgid "Disable fused multiply/add and multiply/subtract FP instructions"
msgstr "Desactivar las instrucciones FP multiply/add y multiply/substract de corto circuito"
-#: config/xtensa/xtensa.h:172
+#: config/xtensa/xtensa.h:85
msgid "Enable fused multiply/add and multiply/subtract FP instructions"
msgstr "Activar las instrucciones FP multiply/add y multiply/substract de corto circuito"
-#: config/xtensa/xtensa.h:174
-msgid "Serialize volatile memory references with MEMW instructions"
-msgstr "Serializar las referencias a memoria volátil con instrucciones MEMW"
-
-#: config/xtensa/xtensa.h:176
-msgid "Do not serialize volatile memory references with MEMW instructions"
-msgstr "No serializar las referencias a memoria volátil con instrucciones MEMW"
-
-#: config/xtensa/xtensa.h:178
+#: config/xtensa/xtensa.h:87
msgid "Intersperse literal pools with code in the text section"
msgstr "Entremezclar los conjuntos de literales con código en la sección de texto"
-#: config/xtensa/xtensa.h:180
+#: config/xtensa/xtensa.h:89
msgid "Put literal pools in a separate literal section"
msgstr "Poner los conjuntos de literales en una sección literal separada"
-#: config/xtensa/xtensa.h:182
+#: config/xtensa/xtensa.h:91
msgid "Automatically align branch targets to reduce branch penalties"
msgstr "Alinear automáticamente los objetivos de las ramificaciones para reducir las faltas de ramificación"
-#: config/xtensa/xtensa.h:184
+#: config/xtensa/xtensa.h:93
msgid "Do not automatically align branch targets"
msgstr "No alinear automáticamente los objetivos de las ramificaciones"
-#: config/xtensa/xtensa.h:186
+#: config/xtensa/xtensa.h:95
msgid "Use indirect CALLXn instructions for large programs"
msgstr "Usar instrucciones CALLXn indirectas para programas grandes"
-#: config/xtensa/xtensa.h:188
+#: config/xtensa/xtensa.h:97
msgid "Use direct CALLn instructions for fast calls"
msgstr "Usar instrucciones CALLn directas para llamadas rápidas"
-#: ada/misc.c:233
+#: ada/misc.c:240
+#, c-format
+msgid "missing argument to \"-%s\""
+msgstr "faltan argumentos para \"-%s\""
+
+#: ada/misc.c:281
msgid "`-gnat' misspelled as `-gant'"
msgstr "`-gnat' mal deletreado como `-gant'"
-#: cp/call.c:261 cp/init.c:1594
-msgid "qualified type `%T' does not match destructor name `~%T'"
-msgstr "el tipo calificado `%T' no coincide con el nombre del destructor `~%T'"
-
-#: cp/call.c:270
-msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
-msgstr "el tipo de `%E' no coincide con el tipo del destructor `%T' (el tipo era `%T')"
-
-#: cp/call.c:279
-msgid "`%D' is a namespace"
-msgstr "`%D' es un nombre de espacio"
-
-#: cp/call.c:287
-msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
-msgstr "el objeto base `%E' de la llamada de método del ambiente es del tipo no agregado `%T'"
-
-#: cp/call.c:369
+#: cp/call.c:217
msgid "unable to call pointer to member function here"
msgstr "no se puede llamar un puntero a una función miembro aquí"
-#: cp/call.c:518
-msgid "destructors take no parameters"
-msgstr "los destructores no tienen parámetros"
-
-#: cp/call.c:522
-msgid "destructor name `~%T' does not match type `%T' of expression"
-msgstr "el nombre del destructor `~%T' no coincide con el tipo `%T' de la expresión"
-
-#: cp/call.c:543 cp/call.c:5000
-msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
-msgstr "solicitud por el miembro `%D' en `%E' el cual es del tipo no agregado `%T'"
-
-#: cp/call.c:567
-msgid "request for member `%D' is ambiguous"
-msgstr "la petición para el miembro `%D' es ambigua"
-
-#: cp/call.c:2537
+#: cp/call.c:2228
msgid "%s %D(%T, %T, %T) <built-in>"
msgstr "%s %D(%T, %T, %T) <interno>"
-#: cp/call.c:2542
+#: cp/call.c:2233
msgid "%s %D(%T, %T) <built-in>"
msgstr "%s %D(%T, %T) <interno>"
-#: cp/call.c:2546
+#: cp/call.c:2237
msgid "%s %D(%T) <built-in>"
msgstr "%s %D(%T) <interno>"
-#: cp/call.c:2550
+#: cp/call.c:2241
msgid "%s %T <conversion>"
msgstr "%s %T <conversión>"
-#: cp/call.c:2552
-msgid "%s %+#D%s"
-msgstr "%s %+#D%s"
-
-#: cp/call.c:2726
-msgid "conversion from `%T' to `%T' is ambiguous"
-msgstr "la conversión de `%T' a `%T' es ambigua"
+#: cp/call.c:2243
+msgid "%J%s %+#D <near match>"
+msgstr ""
-#: cp/call.c:2803
+#: cp/call.c:2245
#, fuzzy
-msgid "`%T' is not a class type"
-msgstr "%T no es un tipo de clase"
+msgid "%J%s %+#D"
+msgstr "%s %+#D"
-#: cp/call.c:2811
-msgid "incomplete type '%T' cannot be used to name a scope"
-msgstr "el tipo incompleto `%T' no se puede utilizar para nombrar un ámbito"
+#: cp/call.c:2280
+#, fuzzy
+msgid "candidates are:"
+msgstr "candidato%s: %+#D"
-#: cp/call.c:2831 cp/typeck.c:2188 cp/typeck.c:2217
-msgid "'%D' has no member named '%E'"
-msgstr "'%D' no tiene un miembro llamado '%E'"
+#: cp/call.c:2468
+msgid "conversion from `%T' to `%T' is ambiguous"
+msgstr "la conversión de `%T' a `%T' es ambigua"
-#: cp/call.c:2933
+#: cp/call.c:2619 cp/call.c:2663
msgid "no matching function for call to `%D(%A)'"
msgstr "no hay una función coincidente para la llamada a `%D(%A)'"
-#: cp/call.c:2944 cp/call.c:5087
+#: cp/call.c:2622 cp/call.c:2666
msgid "call of overloaded `%D(%A)' is ambiguous"
msgstr "la llamada del `%D(%A)' sobrecargado es ambigua"
#. It's no good looking for an overloaded operator() on a
#. pointer-to-member-function.
-#: cp/call.c:2971
+#: cp/call.c:2732
#, c-format
msgid "pointer-to-member function %E cannot be called without an object; consider using .* or ->*"
msgstr "la función puntero-a-miembro %E no se puede llamar dentro de un objeto; considere utilizar .* o ->*"
-#: cp/call.c:3036
+#: cp/call.c:2798
msgid "no match for call to `(%T) (%A)'"
msgstr "no hay coincidencia para la llamada a `(%T) (%A)'"
-#: cp/call.c:3046
+#: cp/call.c:2806
msgid "call of `(%T) (%A)' is ambiguous"
msgstr "la llamada de `(%T) (%A)' es ambigua"
-#: cp/call.c:3081
+#: cp/call.c:2839
#, c-format
msgid "%s for ternary 'operator?:' in '%E ? %E : %E'"
msgstr ""
-#: cp/call.c:3087
+#: cp/call.c:2845
#, fuzzy, c-format
msgid "%s for 'operator%s' in '%E%s'"
msgstr "%s para el operador `%T %s'"
-#: cp/call.c:3091
+#: cp/call.c:2849
#, c-format
msgid "%s for 'operator[]' in '%E[%E]'"
msgstr ""
-#: cp/call.c:3096
+#: cp/call.c:2854
+#, fuzzy, c-format
+msgid "%s for '%s' in '%s %E'"
+msgstr "falta el campo '%s' en '%s'"
+
+#: cp/call.c:2859
#, c-format
msgid "%s for 'operator%s' in '%E %s %E'"
msgstr ""
-#: cp/call.c:3099
+#: cp/call.c:2862
#, fuzzy, c-format
msgid "%s for 'operator%s' in '%s%E'"
msgstr "%s para el operador `%T %s'"
-#: cp/call.c:3191
+#: cp/call.c:2957
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
msgstr "ISO C++ prohíbe la omisión del término medio de una expresión ?:"
-#: cp/call.c:3250
+#: cp/call.c:3018
#, c-format
msgid "`%E' has type `void' and is not a throw-expression"
msgstr "`%E' tiene tipo `void' y no es una expresión throw"
-#: cp/call.c:3283 cp/call.c:3475
+#: cp/call.c:3051 cp/call.c:3242
msgid "operands to ?: have different types"
msgstr "los operandos de ?: tienen tipos diferentes"
-#: cp/call.c:3428
+#: cp/call.c:3196
msgid "enumeral mismatch in conditional expression: `%T' vs `%T'"
msgstr "no coincide el enumeral en la expresión condicional: `%T' vs `%T'"
-#: cp/call.c:3435
+#: cp/call.c:3203
msgid "enumeral and non-enumeral type in conditional expression"
msgstr "tipos enumeral y no enumeral en la expresión condicional"
-#: cp/call.c:3516
-msgid "`%D' must be declared before use"
-msgstr "se debe declarar `%D' antes de su uso"
-
-#: cp/call.c:3706
+#: cp/call.c:3487
msgid "no `%D(int)' declared for postfix `%s', trying prefix operator instead"
msgstr "no se declaró `%D(int)' para el `%s' postfijo, intentando en su lugar el operador prefijo"
-#: cp/call.c:3753
+#: cp/call.c:3532
msgid "using synthesized `%#D' for copy assignment"
msgstr "usando `%#D' sintetizado para asignación de copia"
-#: cp/call.c:3755
+#: cp/call.c:3534
msgid " where cfront would use `%#D'"
msgstr " donde cfront podría usar `%#D'"
-#: cp/call.c:3782
+#: cp/call.c:3557
msgid "comparison between `%#T' and `%#T'"
msgstr "comparación entre `%#T' y `%#T'"
-#: cp/call.c:4021
-msgid "no suitable `operator delete' for `%T'"
+#: cp/call.c:3803
+#, fuzzy
+msgid "no suitable `operator %s' for `%T'"
msgstr "no hay un operador `operator delete' adecuado para `%T'"
-#: cp/call.c:4040
+#: cp/call.c:3820
msgid "`%+#D' is private"
msgstr "`%+#D' es privado"
-#: cp/call.c:4042
+#: cp/call.c:3822
msgid "`%+#D' is protected"
msgstr "`%+#D' está protegido"
-#: cp/call.c:4044
+#: cp/call.c:3824
msgid "`%+#D' is inaccessible"
msgstr "`%+#D' es inaccesible"
-#: cp/call.c:4045
+#: cp/call.c:3825
msgid "within this context"
msgstr "desde este contexto"
-#: cp/call.c:4088
+#: cp/call.c:3895
msgid "invalid conversion from `%T' to `%T'"
msgstr "conversión inválida de `%T' a `%T'"
-#: cp/call.c:4090 cp/call.c:4229 cp/call.c:4231
+#: cp/call.c:3897
msgid " initializing argument %P of `%D'"
msgstr " argumento de inicialización %P de `%D'"
-#: cp/call.c:4152 cp/call.c:4156
-msgid " initializing argument %P of `%D' from result of `%D'"
-msgstr " argumento de inicialización %P de `%D' a partir del resultado de `%D'"
+#: cp/call.c:4050
+#, fuzzy
+msgid "cannot bind bitfield `%E' to `%T'"
+msgstr "no se pueden inicializar `%T' desde `%T'"
-#: cp/call.c:4162 cp/call.c:4165
-msgid " initializing temporary from result of `%D'"
-msgstr " inicializando el temporal a partir del resultado de `%D'"
+#: cp/call.c:4053
+#, fuzzy
+msgid "cannot bind packed field `%E' to `%T'"
+msgstr "no se puede declarar que el campo `%D' sea de tipo `%T'"
+
+#: cp/call.c:4056
+#, fuzzy
+msgid "cannot bind rvalue `%E' to `%T'"
+msgstr "no se pueden inicializar `%T' desde `%T'"
-#. Undefined behavior [expr.call] 5.2.2/7. We used to just warn
-#. here and do a bitwise copy, but now cp_expr_size will abort if we
-#. try to do that.
-#: cp/call.c:4316
+#: cp/call.c:4144
msgid "cannot pass objects of non-POD type `%#T' through `...'; call will abort at runtime"
msgstr "no se puede pasar objetos de tipo `%#T' que no es POD a través de `...'; la llamada abortará en tiempo de ejecución"
#. Undefined behavior [expr.call] 5.2.2/7.
-#: cp/call.c:4343
-msgid "cannot receive objects of non-POD type `%#T' through `...'"
-msgstr "no se puede recibir objetos de tipo `%#T' que no es POD a través de `...'"
+#: cp/call.c:4168
+#, fuzzy
+msgid "cannot receive objects of non-POD type `%#T' through `...'; call will abort at runtime"
+msgstr "no se puede pasar objetos de tipo `%#T' que no es POD a través de `...'; la llamada abortará en tiempo de ejecución"
-#: cp/call.c:4523
+#: cp/call.c:4208
+#, fuzzy
+msgid "the default argument for parameter %d of `%D' has not yet been parsed"
+msgstr "el argumento por defecto para el parámetro del tipo `%T' tiene el tipo `%T'"
+
+#: cp/call.c:4403
msgid "passing `%T' as `this' argument of `%#D' discards qualifiers"
msgstr "pasar `%T' como el argumento `this' de `%#D' descarta a los calificadores"
-#: cp/call.c:4542
+#: cp/call.c:4422
#, fuzzy
msgid "`%T' is not an accessible base of `%T'"
msgstr "`%T' es una base inaccesible de `%T'"
-#: cp/call.c:4786
+#: cp/call.c:4696
msgid "could not find class$ field in java interface type `%T'"
msgstr "no se pudo encontrar un campo class$ en el tipo de interfaz java `%T'"
-#: cp/call.c:4974
+#: cp/call.c:4951
msgid "call to non-function `%D'"
msgstr "llamada a `%D' que no es función"
-#: cp/call.c:5076
-msgid "no matching function for call to `%T::%D(%A)%#V'"
+#: cp/call.c:4977
+msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
+msgstr "solicitud por el miembro `%D' en `%E' el cual es del tipo no agregado `%T'"
+
+#: cp/call.c:5055
+#, fuzzy
+msgid "no matching function for call to `%T::%s(%A)%#V'"
msgstr "no se encuentra una función coincidente para la llamada a `%T::%D(%A)%#V'"
-#: cp/call.c:5106
+#: cp/call.c:5072
+#, fuzzy, c-format
+msgid "call of overloaded `%s(%A)' is ambiguous"
+msgstr "la llamada del `%D(%A)' sobrecargado es ambigua"
+
+#: cp/call.c:5093
msgid "cannot call member function `%D' without object"
msgstr "no se puede llamar a la función miembro `%D' sin un objeto"
-#: cp/call.c:5704
+#: cp/call.c:5678
msgid "passing `%T' chooses `%T' over `%T'"
msgstr "pasar `%T' escoge `%T'n sobre `%T'"
-#: cp/call.c:5706 cp/decl2.c:4154
+#: cp/call.c:5680 cp/name-lookup.c:4057
msgid " in call to `%D'"
msgstr " en la llamada a `%D'"
-#: cp/call.c:5755
+#: cp/call.c:5737
msgid "choosing `%D' over `%D'"
msgstr "escogiendo `%D' sobre `%D'"
-#: cp/call.c:5756
+#: cp/call.c:5738
msgid " for conversion from `%T' to `%T'"
msgstr " para la conversión de `%T' a `%T'"
-#: cp/call.c:5758
+#: cp/call.c:5740
msgid " because conversion sequence for the argument is better"
msgstr " porque la secuencia de conversión para el argumento es mejor"
-#: cp/call.c:5879
-msgid "ISO C++ says that `%D' and `%D' are ambiguous even though the worst conversion for the former is better than the worst conversion for the latter"
+#: cp/call.c:5860
+#, fuzzy
+msgid "ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:"
msgstr "ISO C++ dice que `%D' y `%D' son ambiguos aún cuando la peor conversión para el primero es mejor que la peor conversión para el segundo"
-#: cp/call.c:5996
+#: cp/call.c:5864
+#, fuzzy
+msgid "candidate 1:"
+msgstr "candidato%s: %+#D"
+
+#: cp/call.c:5865
+#, fuzzy
+msgid "candidate 2:"
+msgstr "candidato%s: %+#D"
+
+#: cp/call.c:5974
msgid "could not convert `%E' to `%T'"
msgstr "no se puede convertir `%E' a `%T'"
-#: cp/call.c:6105
+#: cp/call.c:6079
#, fuzzy
msgid "invalid initialization of non-const reference of type '%T' from a temporary of type '%T'"
msgstr "const_cast inválido de un valor-r de tipo `%T' al tipo `%T'"
-#: cp/call.c:6109
+#: cp/call.c:6083
#, fuzzy
msgid "invalid initialization of reference of type '%T' from expression of type '%T'"
msgstr "conversión inválida del tipo `%T' a partir del tipo `%T'"
-#: cp/class.c:287
+#: cp/class.c:281
msgid "cannot convert from base `%T' to derived type `%T' via virtual base `%T'"
msgstr "no se puede convertir de la base `%T' al tipo derivado `%T' a través de la base virtual `%T'"
-#: cp/class.c:992
+#: cp/class.c:764
+#, fuzzy
+msgid "Java class '%T' cannot have an implicit non-trivial destructor"
+msgstr "la clase base `%#T' tiene un destructor no virtual"
+
+#: cp/class.c:765
+#, fuzzy
+msgid "Java class '%T' cannot have a destructor"
+msgstr "la clase base `%#T' tiene un destructor no virtual"
+
+#: cp/class.c:933
msgid "`%#D' and `%#D' cannot be overloaded"
msgstr "no se pueden sobrecargar `%#D' y `%#D'"
-#: cp/class.c:1076
+#: cp/class.c:1016
msgid "duplicate enum value `%D'"
msgstr "valor enum duplicado `%D'"
-#: cp/class.c:1079
+#: cp/class.c:1019
msgid "duplicate field `%D' (as enum and non-enum)"
msgstr "campo duplicado `%D' (como enum y no enum)"
-#: cp/class.c:1086
+#: cp/class.c:1026
msgid "duplicate nested type `%D'"
msgstr "tipo anidado duplicado `%D'"
-#: cp/class.c:1097
+#: cp/class.c:1037
msgid "duplicate field `%D' (as type and non-type)"
msgstr "campo duplicado `%D' (como tipo y no tipo)"
-#: cp/class.c:1101
+#: cp/class.c:1041
msgid "duplicate member `%D'"
msgstr "miembro duplicado `%D'"
-#: cp/class.c:1144
+#: cp/class.c:1079
msgid "conflicting access specifications for method `%D', ignored"
msgstr "especificaciones de acceso en conflicto para el método `%D', ignorado"
-#: cp/class.c:1146
+#: cp/class.c:1081
#, c-format
msgid "conflicting access specifications for field `%s', ignored"
msgstr "especificaciones de acceso en conflicto para el campo `%s', ignorado"
-#: cp/class.c:1194
+#: cp/class.c:1131
msgid "`%D' names constructor"
msgstr "`%D' nombra al constructor"
-#: cp/class.c:1199
+#: cp/class.c:1136
msgid "`%D' invalid in `%T'"
msgstr "`%D' inválido en `%T'"
-#: cp/class.c:1207
+#: cp/class.c:1144
msgid "no members matching `%D' in `%#T'"
msgstr "no hay miembros que coincidan con `%D' en `%#T'"
-#: cp/class.c:1239 cp/class.c:1247
+#: cp/class.c:1176 cp/class.c:1184
msgid "`%D' invalid in `%#T'"
msgstr "`%D' inválido en `%#T'"
-#: cp/class.c:1240
+#: cp/class.c:1177
msgid " because of local method `%#D' with same name"
msgstr " debido al método local `%#D' con el mismo nombre"
-#: cp/class.c:1248
+#: cp/class.c:1185
msgid " because of local member `%#D' with same name"
msgstr " debido al miembro local `%#D' con el mismo nombre"
-#: cp/class.c:1320
+#: cp/class.c:1255
msgid "base class `%#T' has a non-virtual destructor"
msgstr "la clase base `%#T' tiene un destructor no virtual"
-#: cp/class.c:1340
+#: cp/class.c:1275
msgid "base `%T' with only non-default constructor in class without a constructor"
msgstr "base `%T' con sólo un constructor que no es por defecto en una clase sin un constructor"
-#: cp/class.c:1912
+#: cp/class.c:1659
msgid "all member functions in class `%T' are private"
msgstr "todos las funciones miembros en la clase `%T' son privadas"
-#: cp/class.c:1926
+#: cp/class.c:1670
msgid "`%#T' only defines a private destructor and has no friends"
msgstr "`%#T' solamente define un destructor privado y no tiene friends"
-#: cp/class.c:1969
+#: cp/class.c:1712
msgid "`%#T' only defines private constructors and has no friends"
msgstr "`%#T' solamente define constructores privados y no tiene friends"
-#: cp/class.c:2090 cp/class.c:5276
-msgid "redefinition of `%#T'"
-msgstr "redefinición de `%#T'"
-
-#: cp/class.c:2091
-msgid "previous definition of `%#T'"
-msgstr "definición previa de `%#T'"
-
# Ojo, no es impostor, sino impositor, el que impone. cfuga
-#: cp/class.c:2365
+#: cp/class.c:2097
msgid "no unique final overrider for `%D' in `%T'"
msgstr "no hay un impositor único final para `%D' en `%T'"
#. Here we know it is a hider, and no overrider exists.
-#: cp/class.c:2712
+#: cp/class.c:2542
msgid "`%D' was hidden"
msgstr "`%D' estaba escondido"
-#: cp/class.c:2713
+#: cp/class.c:2543
msgid " by `%D'"
msgstr " por `%D'"
-#: cp/class.c:2755
+#: cp/class.c:2584
msgid "ISO C++ forbids member `%D' with same name as enclosing class"
msgstr "ISO C++ prohíbe que el miembro `%D' tenga el mismo nombre que la clase que lo contiene"
-#: cp/class.c:2760 cp/decl2.c:1331
+#: cp/class.c:2589 cp/decl2.c:1167
msgid "`%#D' invalid; an anonymous union can only have non-static data members"
msgstr "`%#D' inválido; un union anónimo sólo puede tener miembros con datos no estáticos"
-#: cp/class.c:2766 cp/decl2.c:1337
+#: cp/class.c:2595 cp/decl2.c:1174
msgid "private member `%#D' in anonymous union"
msgstr "miembro privado `%#D' en union anónima"
-#: cp/class.c:2769 cp/decl2.c:1339
+#: cp/class.c:2598 cp/decl2.c:1176
msgid "protected member `%#D' in anonymous union"
msgstr "miembro protegido `%#D' en union anónima"
-#: cp/class.c:2894
+#: cp/class.c:2717
msgid "vtable layout for class `%T' may not be ABI-compliant and may change in a future version of GCC due to implicit virtual destructor"
msgstr "la disposición vtable para la clase `%T' puede no cumplir con la ABI y puede cambiar en una versión futura de GCC debido al destructor virtual implícito"
-#: cp/class.c:2958
+#: cp/class.c:2777
msgid "bit-field `%#D' with non-integral type"
msgstr "campo de bits `%#D' con tipo no entero"
-#: cp/class.c:2978
+#: cp/class.c:2797
msgid "bit-field `%D' width not an integer constant"
msgstr "la anchura del campo de bits `%D' no es una constante entera"
-#: cp/class.c:2984
+#: cp/class.c:2803
msgid "negative width in bit-field `%D'"
msgstr "anchura negativa en el campo de bit `%D'"
-#: cp/class.c:2989
+#: cp/class.c:2808
msgid "zero width for bit-field `%D'"
msgstr "anchura cero para el campo de bits `%D'"
-#: cp/class.c:2995
+#: cp/class.c:2814
msgid "width of `%D' exceeds its type"
msgstr "la anchura de `%D' excede su tipo"
-#: cp/class.c:3004
+#: cp/class.c:2823
msgid "`%D' is too small to hold all values of `%#T'"
msgstr "`%D' es demasiado pequeño para guardar todos los valores de `%#T'"
-#: cp/class.c:3088
+#: cp/class.c:2885
msgid "member `%#D' with constructor not allowed in union"
msgstr "no se permite el miembro `%#D' con constructor en la union"
-#: cp/class.c:3091
+#: cp/class.c:2888
msgid "member `%#D' with destructor not allowed in union"
msgstr "no se permite el miembro `%#D' con destructor en la union"
-#: cp/class.c:3094
+#: cp/class.c:2891
msgid "member `%#D' with copy assignment operator not allowed in union"
msgstr "no se permite el miembro `%#D' con operador de asignación de copia en la union"
-#: cp/class.c:3121
+#: cp/class.c:2918
msgid "multiple fields in union `%T' initialized"
msgstr "múltiples campos inicializados en la unión `%T'"
-#: cp/class.c:3234
+#: cp/class.c:2987
+msgid "ignoring packed attribute on unpacked non-POD field `%#D'"
+msgstr ""
+
+#: cp/class.c:3039
msgid "field `%D' in local class cannot be static"
msgstr "el campo `%D' en la clase local no puede ser static"
-#: cp/class.c:3240
+#: cp/class.c:3045
msgid "field `%D' invalidly declared function type"
msgstr "el campo `%D' es declarado inválidamente como un tipo de función"
-#: cp/class.c:3247
+#: cp/class.c:3052
msgid "field `%D' invalidly declared method type"
msgstr "el campo `%D' es declarado inválidamente como un tipo de método"
-#: cp/class.c:3253
-msgid "field `%D' invalidly declared offset type"
-msgstr "el campo `%D' es declarado inválidamente como un tipo de desplazamiento"
-
#. Unions cannot have static members.
-#: cp/class.c:3271
+#: cp/class.c:3070
msgid "field `%D' declared static in union"
msgstr "el campo `%s' es declarado como static en la unión"
-#: cp/class.c:3298
+#: cp/class.c:3097
msgid "non-static reference `%#D' in class without a constructor"
msgstr "referencia `%#D' que no es static en una clase sin un constructor"
-#: cp/class.c:3333
+#: cp/class.c:3132
msgid "non-static const member `%#D' in class without a constructor"
msgstr "miembro const `%#D' que no es static en una clase sin un constructor"
-#: cp/class.c:3349
+#: cp/class.c:3147
msgid "field `%#D' with same name as class"
msgstr "campo `%#D' con el mismo nombre que la clase"
-#: cp/class.c:3367
+#: cp/class.c:3165
msgid "`%#T' has pointer data members"
msgstr "`%#T' tiene miembros punteros a datos"
-#: cp/class.c:3371
+#: cp/class.c:3169
msgid " but does not override `%T(const %T&)'"
msgstr " pero no se impone a `%T(const %T&)'"
-#: cp/class.c:3373
+#: cp/class.c:3171
msgid " or `operator=(const %T&)'"
msgstr " o a `operator=(cont %T&)'"
-#: cp/class.c:3376
+#: cp/class.c:3174
msgid " but does not override `operator=(const %T&)'"
msgstr " pero no se impone a `operator=(const %T&)'"
-#: cp/class.c:3826
+#: cp/class.c:3604
msgid "offset of empty base `%T' may not be ABI-compliant and maychange in a future version of GCC"
msgstr "el desplazamiento de la base vacía `%T' puede no cumplir con la ABI y puede cambiar en una versión futura de GCC"
-#: cp/class.c:3935
+#: cp/class.c:3714
msgid "class `%T' will be considered nearly empty in a future version of GCC"
msgstr "la clase `%T' se considerará casi vacía en una versión futura de GCC"
-#: cp/class.c:4025
+#: cp/class.c:3801
msgid "initializer specified for non-virtual method `%D'"
msgstr "se especificó un inicializador para el método no virtual `%D'"
-#: cp/class.c:4761
+#: cp/class.c:4489
msgid "offset of virtual base `%T' is not ABI-compliant and may change in a future version of GCC"
msgstr "el desplazamiento de la base virtual `%T' no cumple con la ABI y puede cambiar en una versión futura de GCC"
-#: cp/class.c:4861
+#: cp/class.c:4579
msgid "direct base `%T' inaccessible in `%T' due to ambiguity"
msgstr "base directa `%T' inaccesible en `%T' debido a ambigüedad"
-#: cp/class.c:4874
+#: cp/class.c:4592
msgid "virtual base `%T' inaccessible in `%T' due to ambiguity"
msgstr "base virtual `%T' inaccesible en `%T' debido a ambigüedad"
-#: cp/class.c:5030
+#: cp/class.c:4766
msgid "size assigned to `%T' may not be ABI-compliant and may change in a future version of GCC"
msgstr "el tamaño asignado a `%T' puede no cumplir con la ABI y puede cambiar en una versión futura de GCC"
#. Versions of G++ before G++ 3.4 did not reset the
#. DECL_MODE.
-#: cp/class.c:5053
+#: cp/class.c:4805
#, fuzzy
msgid "the offset of `%D' may not be ABI-compliant and may change in a future version of GCC"
msgstr "el desplazamiento de `%D' no cumple con la ABI y puede cambiar en una versión futura de GCC"
-#: cp/class.c:5079
+#: cp/class.c:4828
msgid "offset of `%D' is not ABI-compliant and may change in a future version of GCC"
msgstr "el desplazamiento de `%D' no cumple con la ABI y puede cambiar en una versión futura de GCC"
-#: cp/class.c:5088
+#: cp/class.c:4837
msgid "`%D' contains empty classes which may cause base classes to be placed at different locations in a future version of GCC"
msgstr "`%D' contiene clases vacías las cuales pueden causar que las clases base se coloquen en diferentes ubicaciones en una versión futura de GCC"
-#: cp/class.c:5147
+#: cp/class.c:4896
msgid "layout of classes derived from empty class `%T' may change in a future version of GCC"
msgstr "la disposición de clases derivadas de la clase vacía `%T' puede cambiar en una versión futura de GCC"
-#: cp/class.c:5432
+#: cp/class.c:5026 cp/semantics.c:2029
+msgid "redefinition of `%#T'"
+msgstr "redefinición de `%#T'"
+
+#: cp/class.c:5196
msgid "`%#T' has virtual functions but non-virtual destructor"
msgstr "`%#T' tiene funciones virtuales pero destructores no virtuales"
-#: cp/class.c:5516
+#: cp/class.c:5275
msgid "trying to finish struct, but kicked out due to previous parse errors"
msgstr "se trató de terminar struct, pero fue sacado debido a errores previos de decodificación"
-#: cp/class.c:5982
+#: cp/class.c:5717
#, c-format
msgid "language string `\"%s\"' not recognized"
msgstr "cadena de lenguaje `\"%s\"' no se reconocen"
-#: cp/class.c:6078
+#: cp/class.c:5805
msgid "cannot resolve overloaded function `%D' based on conversion to type `%T'"
msgstr "no se puede resolver la función sobrecargada `%D' basándose en la conversión al tipo `%T'"
-#: cp/class.c:6203
+#: cp/class.c:5930
msgid "no matches converting function `%D' to type `%#T'"
msgstr "no hay coincidencias al convertir la función `%D' al tipo `%#T'"
-#: cp/class.c:6226
+#: cp/class.c:5953
msgid "converting overloaded function `%D' to type `%#T' is ambiguous"
msgstr "la conversión de la función sobrecargada `%D' al tipo `%#T' es ambigua"
-#: cp/class.c:6252
+#: cp/class.c:5979
msgid "assuming pointer to member `%D'"
msgstr "asumiendo el puntero a miembro `%D'"
-#: cp/class.c:6255
+#: cp/class.c:5982
#, c-format
msgid "(a pointer to member can only be formed with `&%E')"
msgstr "(un puntero a miembro solamente se puede formar con `&%E')"
-#: cp/class.c:6306 cp/class.c:6477 cp/class.c:6484
+#: cp/class.c:6027 cp/class.c:6209 cp/class.c:6216
msgid "not enough type information"
msgstr "no hay suficiente información de tipo"
-#: cp/class.c:6315
+#: cp/class.c:6044
msgid "argument of type `%T' does not match `%T'"
msgstr "el argumento de tipo `%T' no coincide con `%T'"
-#: cp/class.c:6461
+#: cp/class.c:6193
msgid "invalid operation on uninstantiated type"
msgstr "operación inválida en tipo no instanciado"
@@ -14185,14 +13705,19 @@ msgstr "operación inválida en tipo no instanciado"
#. A name N used in a class S shall refer to the same declaration
#. in its context and when re-evaluated in the completed scope of
#. S.
-#: cp/class.c:6745 cp/decl.c:1254 cp/decl.c:3379 cp/pt.c:2004
+#: cp/class.c:6451 cp/decl.c:1225 cp/name-lookup.c:495 cp/pt.c:2093
msgid "declaration of `%#D'"
msgstr "la declaración de `%#D'"
-#: cp/class.c:6746
+#: cp/class.c:6452
msgid "changes meaning of `%D' from `%+#D'"
msgstr "cambia el significado de `%D' a partir de `%+#D'"
+#: cp/cp-lang.c:398
+#, fuzzy
+msgid "inter-module optimisations not implemented yet"
+msgstr "aún no se ha implementado el análisis de perfil"
+
#: cp/cvt.c:88
msgid "can't convert from incomplete type `%T' to `%T'"
msgstr "no se puede convertir desde el tipo de dato incompleto `%T' a `%T'"
@@ -14201,246 +13726,235 @@ msgstr "no se puede convertir desde el tipo de dato incompleto `%T' a `%T'"
msgid "conversion of `%E' from `%T' to `%T' is ambiguous"
msgstr "la conversión de `%E' desde `%T' a `%T' es ambigua"
-#: cp/cvt.c:126
+#: cp/cvt.c:113 cp/cvt.c:127
msgid "converting from `%T' to `%T'"
msgstr "convirtiendo de `%T' a `%T'"
-#: cp/cvt.c:203 cp/cvt.c:207
-msgid "pointer to member cast from `%T' to `%T' is via virtual base"
-msgstr "puntero a la conversión de miembro de `%T' a `%T' es a través de una base virtual"
-
-#: cp/cvt.c:225 cp/cvt.c:236 cp/cvt.c:283
+#: cp/cvt.c:185 cp/cvt.c:253 cp/cvt.c:297
msgid "cannot convert `%E' from type `%T' to type `%T'"
msgstr "no se puede convertir `%E' desde el tipo `%T' al tipo `%T'"
-#: cp/cvt.c:262
+#: cp/cvt.c:214 cp/cvt.c:218
+msgid "pointer to member cast from `%T' to `%T' is via virtual base"
+msgstr "puntero a la conversión de miembro de `%T' a `%T' es a través de una base virtual"
+
+#: cp/cvt.c:276
msgid "invalid conversion from '%T' to '%T'"
msgstr "conversión inválida de '%T' a '%T'"
-#: cp/cvt.c:504
+#: cp/cvt.c:508
msgid "conversion from `%T' to `%T' discards qualifiers"
msgstr "la conversión de `%T' a `%T' descarta los calificadores"
-#: cp/cvt.c:522
+#: cp/cvt.c:526
msgid "casting `%T' to `%T' does not dereference pointer"
msgstr "la conversión de `%T' a `%T' no dereferencía a los punteros"
-#: cp/cvt.c:551
+#: cp/cvt.c:553
msgid "cannot convert type `%T' to type `%T'"
msgstr "no se puede convertir del tipo `%T' al tipo `%T'"
-#: cp/cvt.c:683
+#: cp/cvt.c:679
msgid "conversion from `%#T' to `%#T'"
msgstr "conversión de `%#T' a `%#T'"
-#: cp/cvt.c:695
+#: cp/cvt.c:691
msgid "`%#T' used where a `%T' was expected"
msgstr "se usó un `%#T' donde se esperaba un `%T'"
-#: cp/cvt.c:712
-msgid "the address of `%D', will always be `true'"
-msgstr "la dirección de `%D', siempre será `true'"
-
-#: cp/cvt.c:732
+#: cp/cvt.c:715
msgid "`%#T' used where a floating point value was expected"
msgstr "se usó un `%#T' donde se esperaba un valor de coma flotante"
-#: cp/cvt.c:779
+#: cp/cvt.c:762
msgid "conversion from `%T' to non-scalar type `%T' requested"
msgstr "se solicitó la conversión desde `%T' al tipo no escalar `%T'"
-#: cp/cvt.c:865
+#: cp/cvt.c:850
msgid "object of incomplete type `%T' will not be accessed in %s"
msgstr "el objeto de tipo incompleto `%T' no se accesará en %s"
-#: cp/cvt.c:868
+#: cp/cvt.c:853
msgid "object of type `%T' will not be accessed in %s"
msgstr "el objeto de tipo `%T' no se accesará en %s"
-#: cp/cvt.c:884
+#: cp/cvt.c:869
msgid "object `%E' of incomplete type `%T' will not be accessed in %s"
msgstr "el objeto `%E' de tipo incompleto `%T' no se accesará en %s"
#. [over.over] enumerates the places where we can take the address
#. of an overloaded function, and this is not one of them.
-#: cp/cvt.c:904
+#: cp/cvt.c:885
#, c-format
msgid "%s cannot resolve address of overloaded function"
msgstr "%s no se puede resolver la dirección de la función sobrecargada"
#. Only warn when there is no &.
-#: cp/cvt.c:909
+#: cp/cvt.c:891
#, c-format
msgid "%s is a reference, not call, to function `%E'"
msgstr "%s es una referencia, no una llamada, a la función `%E'"
-#: cp/cvt.c:1039
+#: cp/cvt.c:898
+#, fuzzy, c-format
+msgid "%s has no effect"
+msgstr "%s no tiene %s"
+
+#: cp/cvt.c:1009
msgid "converting NULL to non-pointer type"
msgstr "convirtiendo NULL a un tipo que no es puntero"
-#: cp/cvt.c:1115
+#: cp/cvt.c:1081
msgid "ambiguous default type conversion from `%T'"
msgstr "conversión de tipo por defecto ambigua desde `%T'"
-#: cp/cvt.c:1117
+#: cp/cvt.c:1083
msgid " candidate conversions include `%D' and `%D'"
msgstr " las conversiones candidatas incluyen `%D' y `%D'"
-#: cp/decl.c:736
-#, c-format
-msgid "push %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:770
-#, c-format
-msgid "pop %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:776 cp/decl.c:814
-msgid "XXX is_class_level != (current_binding_level == class_binding_level)\n"
-msgstr ""
-
-#: cp/decl.c:808
-#, c-format
-msgid "suspend %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:837
-#, c-format
-msgid "resume %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:1255 cp/decl.c:3490
-msgid "conflicts with previous declaration `%#D'"
-msgstr "causa conflictos con la declaración previa `%#D'"
-
-#: cp/decl.c:1467
+#: cp/decl.c:374
msgid "label `%D' used but not defined"
msgstr "se usa la etiqueta `%D' pero no está definida"
-#: cp/decl.c:1472
+#: cp/decl.c:381
msgid "label `%D' defined but not used"
msgstr "la etiqueta `%D' está definida pero no se usa"
-#: cp/decl.c:2489
-msgid "namespace alias `%D' not allowed here, assuming `%D'"
-msgstr "no se permite aquí el alias del espacio de nombres `%D', asumiendo que es `%D'"
+#: cp/decl.c:1133 cp/decl.c:1559
+msgid "previous declaration of `%D'"
+msgstr "declaración previa de `%D'"
-#: cp/decl.c:2825
-msgid "XXX entering pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1181
+#, fuzzy
+msgid "%Jfunction '%D' redeclared as inline"
+msgstr "la función `%s' es redeclarada como inline"
-#: cp/decl.c:2834
-msgid "XXX leaving pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1182
+#, fuzzy
+msgid "%Jprevious declaration of '%D' with attribute noinline"
+msgstr "declaración previa de la función `%s' con el atributo noinline"
-#: cp/decl.c:3285 cp/decl.c:3700
-msgid "previous declaration of `%D'"
-msgstr "declaración previa de `%D'"
+#: cp/decl.c:1189
+#, fuzzy
+msgid "%Jfunction '%D' redeclared with attribute noinline"
+msgstr "la función `%s' redeclarada con el atributo noinline"
+
+#: cp/decl.c:1191
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was inline"
+msgstr "la declaración previa de la función `%s' era inline"
-#: cp/decl.c:3366 cp/decl.c:3404
+#: cp/decl.c:1212 cp/decl.c:1250
msgid "shadowing %s function `%#D'"
msgstr "oscureciendo la función de biblioteca `%#D'"
-#: cp/decl.c:3375
+#: cp/decl.c:1221
msgid "library function `%#D' redeclared as non-function `%#D'"
msgstr "la función de biblioteca `%#D' es redeclarada como `%#D' que no es función"
-#: cp/decl.c:3380
+#: cp/decl.c:1226
msgid "conflicts with built-in declaration `%#D'"
msgstr "causa conflicto con la declaración interna `%#D'"
-#: cp/decl.c:3399 cp/decl.c:3504 cp/decl.c:3520
+#: cp/decl.c:1245 cp/decl.c:1357 cp/decl.c:1373
msgid "new declaration `%#D'"
msgstr "declaración nueva `%#D'"
-#: cp/decl.c:3400
+#: cp/decl.c:1246
msgid "ambiguates built-in declaration `%#D'"
msgstr "hace ambigua la declaración interna `%#D'"
-#: cp/decl.c:3464
+#: cp/decl.c:1317
msgid "`%#D' redeclared as different kind of symbol"
msgstr "`%#D' redeclarado como un tipo diferente de símbolo"
-#: cp/decl.c:3467
+#: cp/decl.c:1320
msgid "previous declaration of `%#D'"
msgstr "declaración previa de `%#D'"
-#: cp/decl.c:3489
+#: cp/decl.c:1342
msgid "declaration of template `%#D'"
msgstr "redeclaración de la plantilla `%#D'"
-#: cp/decl.c:3505 cp/decl.c:3521
+#: cp/decl.c:1343 cp/name-lookup.c:496
+msgid "conflicts with previous declaration `%#D'"
+msgstr "causa conflictos con la declaración previa `%#D'"
+
+#: cp/decl.c:1358 cp/decl.c:1374
msgid "ambiguates old declaration `%#D'"
msgstr "hace ambigua la declaración antigua `%#D'"
-#: cp/decl.c:3513
+#: cp/decl.c:1366
msgid "declaration of C function `%#D' conflicts with"
msgstr "la declaración de la función C `%#D' tiene conflictos con"
-#: cp/decl.c:3515
+#: cp/decl.c:1368
msgid "previous declaration `%#D' here"
msgstr "declaración previa de `%#D' aquí"
-#: cp/decl.c:3533
-msgid "conflicting types for `%#D'"
-msgstr "tipos en conflicto para `%#D'"
+#: cp/decl.c:1384
+#, fuzzy
+msgid "conflicting declaration '%#D'"
+msgstr "declaraciones de `%s' en conflicto"
-#: cp/decl.c:3534
-msgid "previous declaration as `%#D'"
+#: cp/decl.c:1385
+#, fuzzy
+msgid "'%D' has a previous declaration as `%#D'"
msgstr "declaración previa como `%#D'"
-#: cp/decl.c:3577
+#: cp/decl.c:1438
msgid "`%#D' previously defined here"
msgstr "se definió `%#D' previamente aquí"
-#: cp/decl.c:3578
+#: cp/decl.c:1439
msgid "`%#D' previously declared here"
msgstr "se declaró `%#D' previamente aquí"
#. Prototype decl follows defn w/o prototype.
-#: cp/decl.c:3587
+#: cp/decl.c:1448
msgid "prototype for `%#D'"
msgstr "el prototipo para '%#D'"
-#: cp/decl.c:3588
-msgid "follows non-prototype definition here"
+#: cp/decl.c:1449
+#, fuzzy
+msgid "%Jfollows non-prototype definition here"
msgstr "a continuación la definición del no prototipo aquí"
-#: cp/decl.c:3600
+#: cp/decl.c:1461
msgid "previous declaration of `%#D' with %L linkage"
msgstr "declaración previa de `%#D' con el enlace %L"
-#: cp/decl.c:3602
+#: cp/decl.c:1463
msgid "conflicts with new declaration with %L linkage"
msgstr "tiene conflictos con la declaración nueva con el enlace %L"
-#: cp/decl.c:3625 cp/decl.c:3632
+#: cp/decl.c:1486 cp/decl.c:1493
msgid "default argument given for parameter %d of `%#D'"
msgstr "argumento por defecto dado para el parámetro %d de `%#D'"
-#: cp/decl.c:3627 cp/decl.c:3634
+#: cp/decl.c:1488 cp/decl.c:1495
msgid "after previous specification in `%#D'"
msgstr "después de la especificación previa en `%#D'"
-#: cp/decl.c:3643
+#: cp/decl.c:1504
msgid "`%#D' was used before it was declared inline"
msgstr "se usó `%#D' antes de que fuera declarado inline"
-#: cp/decl.c:3645
-msgid "previous non-inline declaration here"
+#: cp/decl.c:1505
+#, fuzzy
+msgid "%Jprevious non-inline declaration here"
msgstr "declaración previa no inline aquí"
-#: cp/decl.c:3699
+#: cp/decl.c:1558
msgid "redundant redeclaration of `%D' in same scope"
msgstr "declaración redundante de `%D' en el mismo ámbito"
-#: cp/decl.c:3780
+#: cp/decl.c:1649
#, c-format
msgid "declaration of `%F' throws different exceptions"
msgstr "la declaración de `%F' arroja excepciones diferentes"
-#: cp/decl.c:3782
+#: cp/decl.c:1651
#, c-format
msgid "than previous declaration `%F'"
msgstr "que la declaración previa `%F'"
@@ -14453,611 +13967,499 @@ msgstr "que la declaración previa `%F'"
#. that specialization that would cause an implicit
#. instantiation to take place, in every translation unit in
#. which such a use occurs.
-#: cp/decl.c:3922
+#: cp/decl.c:1798
msgid "explicit specialization of %D after first use"
msgstr "especialización explícita de %D después del primer uso"
-#: cp/decl.c:4187
-msgid "`%#D' used prior to declaration"
-msgstr "se usa `%#D' previo a la declaración"
-
-#: cp/decl.c:4218
-msgid "redeclaration of `wchar_t' as `%T'"
-msgstr "redeclaración de `wchar_t' como `%T'"
-
-#. A redeclaration of main, but not a duplicate of the
-#. previous one.
-#.
-#. [basic.start.main]
-#.
-#. This function shall not be overloaded.
-#: cp/decl.c:4246
-msgid "invalid redeclaration of `%D'"
-msgstr "redeclaración inválida de `%D'"
-
-#: cp/decl.c:4247
-msgid "as `%D'"
-msgstr "como `%D'"
-
-#: cp/decl.c:4337
-msgid "previous external decl of `%#D'"
-msgstr "declaración externa previa de `%#D'"
-
-#: cp/decl.c:4378
-msgid "`%D' was previously implicitly declared to return `int'"
-msgstr "`%D' fue declarado previa e implícitamente para devolver `int'"
-
-#: cp/decl.c:4438
-msgid "extern declaration of `%#D' doesn't match"
-msgstr "la declaración externa de `%#D' no coincide"
-
-#: cp/decl.c:4439
-msgid "global declaration `%#D'"
-msgstr "con la declaración global `%#D'"
-
-#: cp/decl.c:4472
-msgid "declaration of `%#D' shadows a parameter"
-msgstr "la declaración de `%#D' oscurece un parámetro"
-
-#: cp/decl.c:4492
-#, c-format
-msgid "declaration of `%s' shadows a member of `this'"
-msgstr "la declaración de `%s' oscurece a un miembro de `this'"
-
-#: cp/decl.c:4889
-msgid "`%#D' hides constructor for `%#T'"
-msgstr "`%#D' esconde el destructor para `%#T'"
-
-#: cp/decl.c:4904
-msgid "`%#D' conflicts with previous using declaration `%#D'"
-msgstr "`%#D' causa conflicto con la declaración previa en uso `%#D'"
-
-#: cp/decl.c:4916
-msgid "previous non-function declaration `%#D'"
-msgstr "la declaración previa `%#D' que no es función"
+#: cp/decl.c:1880
+msgid "%J'%D': visibility attribute ignored because it"
+msgstr ""
-#: cp/decl.c:4917
-msgid "conflicts with function declaration `%#D'"
-msgstr "causa conflicto con la declaración de la función `%#D'"
+#: cp/decl.c:1882
+#, fuzzy
+msgid "%Jconflicts with previous declaration here"
+msgstr "causa conflictos con la declaración previa `%#D'"
-#: cp/decl.c:5007
+#: cp/decl.c:1976
msgid "implicit declaration of function `%#D'"
msgstr "declaración implícita de la función `%#D'"
-#: cp/decl.c:5167
+#: cp/decl.c:2124
#, c-format
msgid "label `%s' referenced outside of any function"
msgstr "la etiqueta `%s' se referenció fuera de cualquier función"
-#: cp/decl.c:5270 cp/decl.c:5294 cp/decl.c:5387
+#: cp/decl.c:2221 cp/decl.c:2245 cp/decl.c:2333
msgid "jump to label `%D'"
msgstr "salto a la etiqueta `%D'"
-#: cp/decl.c:5272 cp/decl.c:5296
+#: cp/decl.c:2223 cp/decl.c:2247
msgid "jump to case label"
msgstr "salto a la etiqueta case"
-#: cp/decl.c:5280
+#: cp/decl.c:2226 cp/decl.c:2250
+#, fuzzy
+msgid "%H from here"
+msgstr " desde aquí"
+
+#: cp/decl.c:2231
msgid " crosses initialization of `%#D'"
msgstr " cruza la inicialización de `%#D'"
-#: cp/decl.c:5283 cp/decl.c:5403
+#: cp/decl.c:2234 cp/decl.c:2349
msgid " enters scope of non-POD `%#D'"
msgstr " entra en el ámbito de `%#D' que no es POD"
-#: cp/decl.c:5303 cp/decl.c:5407
+#: cp/decl.c:2254 cp/decl.c:2353
msgid " enters try block"
msgstr " entra intento de bloque"
-#. Can't skip init of __exception_info.
-#: cp/decl.c:5305 cp/decl.c:5399 cp/decl.c:5409
+#: cp/decl.c:2256 cp/decl.c:2355
msgid " enters catch block"
msgstr " entra captura de bloque"
-#: cp/decl.c:5388
+#: cp/decl.c:2334
msgid " from here"
msgstr " desde aquí"
-#: cp/decl.c:5401
+#. Can't skip init of __exception_info.
+#: cp/decl.c:2345
+#, fuzzy
+msgid "%J enters catch block"
+msgstr " entra captura de bloque"
+
+#: cp/decl.c:2347
msgid " skips initialization of `%#D'"
msgstr " salta la inicialización de `%#D'"
-#: cp/decl.c:5437
+#: cp/decl.c:2381
msgid "label named wchar_t"
msgstr "etiqueta nombrada wchar_t"
-#: cp/decl.c:5440
+#: cp/decl.c:2384
msgid "duplicate label `%D'"
msgstr "etiqueta duplicada `%D'"
-#: cp/decl.c:5525
-#, c-format
-msgid "case label `%E' not within a switch statement"
-msgstr "la etiqueta case `%E' no se encuentra dentro de una declaración switch"
-
-#. Definition isn't the kind we were looking for.
-#: cp/decl.c:5704 cp/decl.c:5723
-msgid "`%#D' redeclared as %C"
-msgstr "`%#D' redeclarado como %C"
-
-#. This happens for A::B where B is a template, and there are no
-#. template arguments.
-#: cp/decl.c:5811 cp/typeck.c:2069 cp/typeck.c:2229
-msgid "invalid use of `%D'"
-msgstr "uso inválido de `%D'"
-
-#: cp/decl.c:5852
-msgid "`%D::%D' is not a template"
-msgstr "`%D::%D' no es una plantilla"
-
-#: cp/decl.c:5869
-msgid "`%D' undeclared in namespace `%D'"
-msgstr "`%D' no declarado en el espacio de nombres `%D'"
-
-#: cp/decl.c:6002
+#: cp/decl.c:2612 cp/parser.c:3178
msgid "`%D' used without template parameters"
msgstr "se usa `%D' sin parámetros de plantilla"
-#: cp/decl.c:6013 cp/decl.c:6029 cp/decl.c:6139
+#: cp/decl.c:2622 cp/decl.c:2638 cp/decl.c:2726
msgid "no class template named `%#T' in `%#T'"
msgstr "no hay una plantilla de clase llamada `%#T' en `%#T'"
-#: cp/decl.c:6055 cp/decl.c:6065 cp/decl.c:6100
+#: cp/decl.c:2659 cp/decl.c:2669 cp/decl.c:2689
msgid "no type named `%#T' in `%#T'"
msgstr "no hay un tipo llamado `%#T' en `%#T'"
-#: cp/decl.c:6329
-msgid "lookup of `%D' finds `%#D'"
-msgstr "la búsqueda de `%D' encuentra a `%#D'"
-
-#: cp/decl.c:6331
-msgid " instead of `%D' from dependent base class"
-msgstr " en lugar de `%D' de la clase base dependiente"
-
-#: cp/decl.c:6333
-msgid " (use `typename %T::%D' if that's what you meant)"
-msgstr " (use `typename %T::%D' si eso es lo que quería)"
-
-#: cp/decl.c:6364
-msgid "name lookup of `%D' changed"
-msgstr "la búsqueda de nombre de `%D' cambió"
-
-#: cp/decl.c:6366
-msgid " matches this `%D' under ISO standard rules"
-msgstr " coincide con este `%D' bajo las reglas de ISO estándard"
-
-#: cp/decl.c:6368
-msgid " matches this `%D' under old rules"
-msgstr " coincide con este `%D' bajo las reglas antiguas"
-
-#: cp/decl.c:6382 cp/decl.c:6389
-msgid "name lookup of `%D' changed for new ISO `for' scoping"
-msgstr "la búsqueda de nombre de `%D' cambió por el nuevo alcance ISO de `for'"
-
-#: cp/decl.c:6384
-msgid " cannot use obsolete binding at `%D' because it has a destructor"
-msgstr " no se puede usar la asignación obsoleta en `%D' porque tiene un destructor"
-
-#: cp/decl.c:6391
-msgid " using obsolete binding at `%D'"
-msgstr " usando la asignación obsoleta en `%D'"
-
-#: cp/decl.c:6609
-msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
-msgstr "la búsqueda de `%D' en el ámbito de `%#T' (`%#D') no coincide con la búsqueda en el ámbito actual (`%#D')"
-
-#: cp/decl.c:7432
-msgid "an anonymous union cannot have function members"
+#: cp/decl.c:3416
+#, fuzzy
+msgid "%Jan anonymous union cannot have function members"
msgstr "un union anónimo no puede tener funciones miembro"
-#: cp/decl.c:7449
+#: cp/decl.c:3434
msgid "member %#D' with constructor not allowed in anonymous aggregate"
msgstr "no se permite el miembro %#D' con constructor en un agregado anónimo"
-#: cp/decl.c:7452
+#: cp/decl.c:3437
msgid "member %#D' with destructor not allowed in anonymous aggregate"
msgstr "no se permite el miembro %#D' con destructor en un agregado anónimo"
-#: cp/decl.c:7455
+#: cp/decl.c:3440
msgid "member %#D' with copy assignment operator not allowed in anonymous aggregate"
msgstr "no se permite el miembro %#D' con operador de asignación de copia en un agregado anónimo"
-#: cp/decl.c:7493
+#: cp/decl.c:3480
msgid "redeclaration of C++ built-in type `%T'"
msgstr "redeclaración del tipo interno de C++ `%T'"
-#: cp/decl.c:7529
+#: cp/decl.c:3518
msgid "multiple types in one declaration"
msgstr "tipos múltiples en una declaración"
-#: cp/decl.c:7556
+#: cp/decl.c:3544
msgid "missing type-name in typedef-declaration"
msgstr "falta el nombre del tipo en la declaración typedef"
-#: cp/decl.c:7563
+#: cp/decl.c:3552
msgid "ISO C++ prohibits anonymous structs"
msgstr "ISO C++ prohíbe structs anónimos"
-#: cp/decl.c:7570
+#: cp/decl.c:3559
msgid "`%D' can only be specified for functions"
msgstr "`%D' sólo puede ser especificado para funciones"
-#: cp/decl.c:7572
+#: cp/decl.c:3561
msgid "`%D' can only be specified inside a class"
msgstr "`%D' sólo puede ser especificado dentro de una clase"
-#: cp/decl.c:7574
+#: cp/decl.c:3563
msgid "`%D' can only be specified for constructors"
msgstr "`%D' sólo puede ser especificado para constructores"
-#: cp/decl.c:7577
+#: cp/decl.c:3566
msgid "`%D' can only be specified for objects and functions"
msgstr "`%D' sólo puede ser especificado para objetos y funciones"
-#: cp/decl.c:7719 cp/decl2.c:936
+#: cp/decl.c:3708 cp/decl2.c:861
msgid "typedef `%D' is initialized (use __typeof__ instead)"
msgstr "typedef `%D' está inicializado (utilice __typeof__ en su lugar)"
-#: cp/decl.c:7724
+#: cp/decl.c:3713
msgid "function `%#D' is initialized like a variable"
msgstr "la función `%#D' está inicializada como una variable"
-#: cp/decl.c:7736
+#: cp/decl.c:3725
msgid "declaration of `%#D' has `extern' and is initialized"
msgstr "la declaración de `%#D' tiene `extern' y está inicializada"
-#: cp/decl.c:7770
+#: cp/decl.c:3758
msgid "`%#D' is not a static member of `%#T'"
msgstr "`%#D' no es un miembro static de `%#T'"
-#: cp/decl.c:7775
+#: cp/decl.c:3764
msgid "ISO C++ does not permit `%T::%D' to be defined as `%T::%D'"
msgstr "ISO C++ no permite que `%T::%D' se defina como `%T::%D'"
-#: cp/decl.c:7786
+#: cp/decl.c:3775
msgid "duplicate initialization of %D"
msgstr "inicialización duplicada de %D"
-#: cp/decl.c:7815
+#: cp/decl.c:3806
msgid "declaration of `%#D' outside of class is not definition"
msgstr "la declaración de `%#D' fuera de la clase no es una definición"
-#: cp/decl.c:7865
+#: cp/decl.c:3857
msgid "variable `%#D' has initializer but incomplete type"
msgstr "la variable `%#D' tiene inicializador pero de tipo de dato incompleto"
-#: cp/decl.c:7873 cp/decl.c:8432
+#: cp/decl.c:3865 cp/decl.c:4426
msgid "elements of array `%#D' have incomplete type"
msgstr "algunos elementos de la matriz `%#D' tienen tipo de dato incompleto"
-#: cp/decl.c:7889
+#: cp/decl.c:3881
msgid "aggregate `%#D' has incomplete type and cannot be defined"
msgstr "el agregado `%#D' tiene un tipo incompleto y no se puede definir"
-#: cp/decl.c:7931
+#: cp/decl.c:3923
msgid "`%D' declared as reference but not initialized"
msgstr "`%D' declarado como referencia pero no está inicializado"
-#: cp/decl.c:7940
+#: cp/decl.c:3929
msgid "ISO C++ forbids use of initializer list to initialize reference `%D'"
msgstr "ISO C++ prohíbe el uso de una lista de inicializadores para inicializar la referencia `%D'"
-#: cp/decl.c:7970
+#: cp/decl.c:3957
msgid "cannot initialize `%T' from `%T'"
msgstr "no se pueden inicializar `%T' desde `%T'"
-#: cp/decl.c:8004
+#: cp/decl.c:3989
msgid "initializer fails to determine size of `%D'"
msgstr "el inicializador no puede determinar el tamaño de `%D'"
-#: cp/decl.c:8009
+#: cp/decl.c:3994
msgid "array size missing in `%D'"
msgstr "falta el tamaño de la matriz en `%D'"
-#: cp/decl.c:8021
+#: cp/decl.c:4006
msgid "zero-size array `%D'"
msgstr "matriz `%D' de tamaño cero"
#. An automatic variable with an incomplete type: that is an error.
#. Don't talk about array types here, since we took care of that
#. message in grokdeclarator.
-#: cp/decl.c:8059
+#: cp/decl.c:4043
msgid "storage size of `%D' isn't known"
msgstr "no se conoce el tamaño de almacenamiento de `%D'"
-#: cp/decl.c:8081
+#: cp/decl.c:4065
msgid "storage size of `%D' isn't constant"
msgstr "el tamaño de almacenamiento de `%D' no es constante"
-#: cp/decl.c:8137
+#: cp/decl.c:4120
msgid "sorry: semantics of inline function static data `%#D' are wrong (you'll wind up with multiple copies)"
msgstr "perdón: la semántica de los datos static de la función inline `%#D' es errónea (terminará con múltiples copias)"
-#: cp/decl.c:8138
-msgid " you can work around this by removing the initializer"
+#: cp/decl.c:4121
+#, fuzzy
+msgid "%J you can work around this by removing the initializer"
msgstr " puede evitar esto eliminando el inicializador"
-#: cp/decl.c:8164
+#: cp/decl.c:4147
msgid "uninitialized const `%D'"
msgstr "const `%D' sin inicializar"
-#: cp/decl.c:8249
+#: cp/decl.c:4226
msgid "brace-enclosed initializer used to initialize `%T'"
msgstr "se utilizó un inicializador encerrado entre llaves para inicializar a `%T'"
-#: cp/decl.c:8313
+#: cp/decl.c:4290
msgid "initializer for `%T' must be brace-enclosed"
msgstr "el inicializador para `%T' debe estar encerrado entre llaves"
-#: cp/decl.c:8328
+#: cp/decl.c:4307
msgid "ISO C++ does not allow designated initializers"
msgstr "ISO C++ no permite inicializadores designados"
-#: cp/decl.c:8332
+#: cp/decl.c:4311
msgid "`%T' has no non-static data member named `%D'"
msgstr "`%T' no tiene un dato miembro que no es static llamado `%D'"
-#: cp/decl.c:8389
+#: cp/decl.c:4359
+msgid "name `%D' used in a GNU-style designated initializer for an array"
+msgstr ""
+
+#: cp/decl.c:4382
msgid "too many initializers for `%T'"
msgstr "demasiados inicializadores para `%T'"
-#: cp/decl.c:8426
+#: cp/decl.c:4420
msgid "variable-sized object `%D' may not be initialized"
msgstr "el objeto de tamaño variable `%D' no puede ser inicializado"
-#: cp/decl.c:8437
+#: cp/decl.c:4431
msgid "`%D' has incomplete type"
msgstr "`%D' tiene un tipo de dato incompleto"
-#: cp/decl.c:8486
+#: cp/decl.c:4486
msgid "`%D' must be initialized by constructor, not by `{...}'"
msgstr "`%D' debe ser inicializado por un constructor, no por `{...}'"
-#: cp/decl.c:8527
+#: cp/decl.c:4530
msgid "structure `%D' with uninitialized const members"
msgstr "estructura `%D' con miembros const sin inicializar"
-#: cp/decl.c:8529
+#: cp/decl.c:4532
msgid "structure `%D' with uninitialized reference members"
msgstr "estructura `%D' con miembros de referencia sin inicializar"
-#: cp/decl.c:8770
+#: cp/decl.c:4713
msgid "assignment (not initialization) in declaration"
msgstr "asignación (no inicialización) en la declaración"
-#: cp/decl.c:8785
+#: cp/decl.c:4730
msgid "cannot initialize `%D' to namespace `%D'"
msgstr "no se pueden inicializar `%D' para el espacio de nombres `%D'"
-#: cp/decl.c:8836
+#: cp/decl.c:4780
msgid "shadowing previous type declaration of `%#D'"
msgstr "oscureciendo la declaración de tipo previa de `%#D'"
-#: cp/decl.c:8883
+#: cp/decl.c:4816
msgid "`%D' cannot be thread-local because it has non-POD type `%T'"
msgstr "`%D' no puede ser thread-local porque es de tipo `%T' que no es POD"
-#: cp/decl.c:8898
+#: cp/decl.c:4831
msgid "`%D' is thread-local and so cannot be dynamically initialized"
msgstr "`%D' es thread-local y por lo tanto no se puede inicializar dinámicamente"
-#: cp/decl.c:9298 cp/init.c:562
-msgid "multiple initializations given for `%D'"
-msgstr "se dieron inicializaciones múltiples para `%D'"
-
-#: cp/decl.c:9390
+#: cp/decl.c:5313
msgid "invalid catch parameter"
msgstr "parámetro de captura inválido"
-#: cp/decl.c:9508
+#: cp/decl.c:5427
msgid "destructor for alien class `%T' cannot be a member"
msgstr "el destructor para la clase extranjera `%T' no puede ser un miembro"
-#: cp/decl.c:9511
+#: cp/decl.c:5430
msgid "constructor for alien class `%T' cannot be a member"
msgstr "el constructor para la clase extranjera `%T' no puede ser un miembro"
-#: cp/decl.c:9530
+#: cp/decl.c:5452
msgid "`%D' declared as a `virtual' %s"
msgstr "`%D' fue declarado como un %s `virtual'"
-#: cp/decl.c:9532
+#: cp/decl.c:5454
msgid "`%D' declared as an `inline' %s"
msgstr "`%D' fue declarado como un %s `inline'"
-#: cp/decl.c:9534
+#: cp/decl.c:5456
msgid "`const' and `volatile' function specifiers on `%D' invalid in %s declaration"
msgstr "especificadores de función `const' y `volatile' en `%D' inválidos en la declaración %s"
-#: cp/decl.c:9537
+#: cp/decl.c:5459
msgid "`%D' declared as a friend"
msgstr "`%D' declarado como un friend"
-#: cp/decl.c:9543
+#: cp/decl.c:5465
msgid "`%D' declared with an exception specification"
msgstr "`%D' declarado con una excepción de especificación"
-#: cp/decl.c:9618
+#: cp/decl.c:5544
msgid "cannot declare `::main' to be a template"
msgstr "no se puede declarar `::main' como template"
-#: cp/decl.c:9620
+#: cp/decl.c:5546
msgid "cannot declare `::main' to be inline"
msgstr "no se puede declarar `::main' como inline"
-#: cp/decl.c:9622
+#: cp/decl.c:5548
msgid "cannot declare `::main' to be static"
msgstr "no se puede declarar `::main' como static"
-#: cp/decl.c:9625
+#: cp/decl.c:5551
msgid "`main' must return `int'"
msgstr "`main' debe devolver `int'"
-#: cp/decl.c:9653
+#: cp/decl.c:5579
msgid "non-local function `%#D' uses anonymous type"
msgstr "la función `%#D' que no es local usa un tipo anónimo"
-#: cp/decl.c:9656
+#: cp/decl.c:5582
msgid "`%#D' does not refer to the unqualified type, so it is not used for linkage"
msgstr "`%#D' no se refiere al tipo sin calificar, así que no se usa para el enlazado"
-#: cp/decl.c:9662
+#: cp/decl.c:5588
msgid "non-local function `%#D' uses local type `%T'"
msgstr "la función `%#D' que no es local utiliza el tipo local `%T'"
-#: cp/decl.c:9691
+#: cp/decl.c:5612
msgid "%smember function `%D' cannot have `%T' method qualifier"
msgstr "%sfunción miembro `%D' no puede tener el calificador de método `%T'"
-#: cp/decl.c:9715
+#: cp/decl.c:5636
msgid "defining explicit specialization `%D' in friend declaration"
msgstr "definiendo la especialización explícita `%D' en la declaración friend"
#. Something like `template <class T> friend void f<T>()'.
-#: cp/decl.c:9725
+#: cp/decl.c:5646
msgid "invalid use of template-id `%D' in declaration of primary template"
msgstr "uso inválido del id de plantilla `%D' en la declaración de la plantilla primaria"
-#: cp/decl.c:9753
+#: cp/decl.c:5673
msgid "default arguments are not allowed in declaration of friend template specialization `%D'"
msgstr "no se permiten los argumentos por defecto en la declaración de la especialización friend de la plantilla `%D'"
-#: cp/decl.c:9760
+#: cp/decl.c:5680
msgid "`inline' is not allowed in declaration of friend template specialization `%D'"
msgstr "no se permiten `inline' en la declaración de la especialización friend de la plantilla `%D'"
-#: cp/decl.c:9822
+#: cp/decl.c:5741
msgid "definition of implicitly-declared `%D'"
msgstr "la definición de `%D' declarado implícitamente"
-#: cp/decl.c:9834 cp/decl2.c:785
+#: cp/decl.c:5759 cp/decl2.c:744
msgid "no `%#D' member function declared in class `%T'"
msgstr "no hay una función miembro `%#D' declarada en la clase `%T'"
-#: cp/decl.c:9967
+#: cp/decl.c:5893
msgid "non-local variable `%#D' uses local type `%T'"
msgstr "la variable `%#D' que no es local usa el tipo local `%T'"
-#: cp/decl.c:10064
+#: cp/decl.c:6008
msgid "invalid in-class initialization of static data member of non-integral type `%T'"
msgstr "inicialización en la clase inválida para el miembro de datos static de tipo `%T' que no es integral"
-#: cp/decl.c:10073
+#: cp/decl.c:6017
msgid "ISO C++ forbids in-class initialization of non-const static member `%D'"
msgstr "ISO C++ prohíbe la inicialización en la clase del miembro static `%D' que no es constante"
-#: cp/decl.c:10076
+#: cp/decl.c:6020
msgid "ISO C++ forbids initialization of member constant `%D' of non-integral type `%T'"
msgstr "ISO C++ prohíbe la inicialización del miembro constante `%D' del tipo `%T' que no es entero"
-#: cp/decl.c:10126
-msgid "size of array `%D' has non-integer type"
+#: cp/decl.c:6039
+#, fuzzy
+msgid "size of array `%D' has non-integral type `%T'"
msgstr "el tamaño de la matriz `%D' tiene un tipo no entero"
-#: cp/decl.c:10128
-msgid "size of array has non-integer type"
+#: cp/decl.c:6041
+#, fuzzy
+msgid "size of array has non-integral type `%T'"
msgstr "el tamaño de la matriz tiene un tipo no entero"
-#: cp/decl.c:10148
+#: cp/decl.c:6077
msgid "size of array `%D' is negative"
msgstr "el tamaño de la matriz `%D' es negativo"
-#: cp/decl.c:10150
+#: cp/decl.c:6079
msgid "size of array is negative"
msgstr "el tamaño de la matriz es negativo"
-#: cp/decl.c:10159
+#: cp/decl.c:6087
msgid "ISO C++ forbids zero-size array `%D'"
msgstr "ISO C++ prohíbe la matriz `%D' de tamaño cero"
-#: cp/decl.c:10161
+#: cp/decl.c:6089
msgid "ISO C++ forbids zero-size array"
msgstr "ISO C++ prohíbe una matriz de tamaño cero"
-#: cp/decl.c:10168
+#: cp/decl.c:6096
msgid "size of array `%D' is not an integral constant-expression"
msgstr "el tamaño de la matriz `%D' no es una expresion constante integral"
-#: cp/decl.c:10171
+#: cp/decl.c:6099
msgid "size of array is not an integral constant-expression"
msgstr "el tamaño de la matriz no es una expresion constante integral"
-#: cp/decl.c:10189
+#: cp/decl.c:6104
msgid "ISO C++ forbids variable-size array `%D'"
msgstr "ISO C++ prohíbe la matriz `%D' de tamaño variable"
-#: cp/decl.c:10192
+#: cp/decl.c:6106
msgid "ISO C++ forbids variable-size array"
msgstr "ISO C++ prohíbe la matriz de tamaño variable"
-#: cp/decl.c:10203
+#: cp/decl.c:6128
msgid "overflow in array dimension"
msgstr "desbordamiento en la dimensión de la matriz"
-#: cp/decl.c:10262
+#: cp/decl.c:6222
msgid "declaration of `%D' as %s"
msgstr "redeclaración de `%D' como %s"
-#: cp/decl.c:10264
+#: cp/decl.c:6224
#, c-format
msgid "creating %s"
msgstr "creando %s"
-#: cp/decl.c:10276
+#: cp/decl.c:6236
msgid "declaration of `%D' as multidimensional array must have bounds for all dimensions except the first"
msgstr "la declaración de `%D' como una matriz multidimensional debe tener límites para todas las dimensiones excepto la primera"
-#: cp/decl.c:10279
+#: cp/decl.c:6239
msgid "multidimensional array must have bounds for all dimensions except the first"
msgstr "una matriz multidimensional debe tener límites para todas las dimensiones excepto para la primera"
-#: cp/decl.c:10308
+#: cp/decl.c:6267
msgid "return type specification for constructor invalid"
msgstr "la especificación del tipo de devolución para el constructor es inválido"
-#: cp/decl.c:10315
+#: cp/decl.c:6274
msgid "return type specification for destructor invalid"
msgstr "la especificación del tipo de devolución para el destructor es inválido"
-#: cp/decl.c:10321
+#: cp/decl.c:6280
msgid "operator `%T' declared to return `%T'"
msgstr "el operador `%T' se declaró para devolver `%T'"
-#: cp/decl.c:10323
+#: cp/decl.c:6282
msgid "return type specified for `operator %T'"
msgstr "se especificó un tipo de devolución para `operator %T'"
-#: cp/decl.c:10491
+#: cp/decl.c:6425
msgid "destructors must be member functions"
msgstr "los destructores deben ser funciones miembro"
-#: cp/decl.c:10510
+#: cp/decl.c:6444
msgid "destructor `%T' must match class name `%T'"
msgstr "el destructor `%T' debe coincidir con el nombre de la clase `%T'"
-#: cp/decl.c:10539
-msgid "variable declaration is not allowed here"
-msgstr "no se permite aquí la declaración de variables"
-
-#: cp/decl.c:10566
-msgid "invalid declarator"
-msgstr "declarador inválido"
-
-#: cp/decl.c:10617
+#: cp/decl.c:6507
msgid "declarator-id missing; using reserved word `%D'"
msgstr "falta el id del declarador; utilizando la palabra reservada `%D'"
-#: cp/decl.c:10674
+#: cp/decl.c:6561
msgid "type `%T' is not derived from type `%T'"
msgstr "el tipo `%T' no es derivado del tipo `%T'"
#. Parse error puts this typespec where
#. a declarator should go.
-#: cp/decl.c:10726
+#: cp/decl.c:6624
msgid "`%T' specified as declarator-id"
msgstr "`%T' especificado como id de declarador"
-#: cp/decl.c:10728
+#: cp/decl.c:6626
msgid " perhaps you want `%T' for a constructor"
msgstr " tal vez quiere `%T' para un constructor"
@@ -15065,301 +14467,302 @@ msgstr " tal vez quiere `%T' para un constructor"
#. decl-specifier like in
#. std::allocator alloc;
#. Handle that gracefully.
-#: cp/decl.c:10750
+#: cp/decl.c:6648
#, c-format
msgid "invalid use of template-name '%E' in a declarator"
msgstr "uso inválido del nombre de plantilla `%E' en un declarador"
-#: cp/decl.c:10770
+#: cp/decl.c:6668
msgid "declaration of `%D' as non-function"
msgstr "la declaración de `%D' como una no función"
-#: cp/decl.c:10847
+#: cp/decl.c:6745
msgid "`bool' is now a keyword"
msgstr "`bool' ahora es una palabra clave"
-#: cp/decl.c:10849
+#: cp/decl.c:6747
msgid "extraneous `%T' ignored"
msgstr "`%T' extra ignorado"
-#: cp/decl.c:10865 cp/decl.c:10910
+#: cp/decl.c:6763 cp/decl.c:6807
msgid "multiple declarations `%T' and `%T'"
msgstr "declaraciones múltiples `%T' y `%T'"
-#: cp/decl.c:10878
+#: cp/decl.c:6776
msgid "ISO C++ does not support `long long'"
msgstr "ISO C++ no da soporte a `long long'"
-#: cp/decl.c:10983 cp/decl.c:10986
+#: cp/decl.c:6880 cp/decl.c:6883
#, c-format
msgid "ISO C++ forbids declaration of `%s' with no type"
msgstr "ISO C++ prohíbe la declaración de `%s' sin tipo"
-#. The implicit typename extension is deprecated and will be
-#. removed. Warn about its use now.
-#: cp/decl.c:10996
-msgid "`%T' is implicitly a typename"
-msgstr "`%T' implícitamente es un nombre de tipo"
-
-#: cp/decl.c:11032
+#: cp/decl.c:6914
#, c-format
msgid "short, signed or unsigned invalid for `%s'"
msgstr "short, signed ó unsigned inválido para `%s'"
-#: cp/decl.c:11037
+#: cp/decl.c:6919
#, c-format
msgid "long and short specified together for `%s'"
msgstr "long y short especificados juntos para `%s'"
-#: cp/decl.c:11048
+#: cp/decl.c:6930
#, c-format
msgid "signed and unsigned given together for `%s'"
msgstr "se dieron juntos signed y unsigned para `%s'"
-#: cp/decl.c:11157
+#: cp/decl.c:7039
msgid "qualifiers are not allowed on declaration of `operator %T'"
msgstr "no se permiten calificadores en la declaración de `operator %T'"
-#: cp/decl.c:11179
+#: cp/decl.c:7061
msgid "member `%D' cannot be declared both virtual and static"
msgstr "el miembro `%D' no puede ser declarado como virtual y static al mismo tiempo"
-#: cp/decl.c:11188
+#: cp/decl.c:7070
msgid "`%T::%D' is not a valid declarator"
msgstr "`%T::%D' no es una declaración válida"
-#: cp/decl.c:11200
+#: cp/decl.c:7082
msgid "storage class specifiers invalid in parameter declarations"
msgstr "especificadores de clase de almacenamiento inválidos en las declaraciones de parámetros"
-#: cp/decl.c:11204
+#: cp/decl.c:7086
msgid "typedef declaration invalid in parameter declaration"
msgstr "declaración typedef inválida en la declaración de parámetros"
-#: cp/decl.c:11217
+#: cp/decl.c:7099
msgid "virtual outside class declaration"
msgstr "declaración de virtual fuera de class"
-#: cp/decl.c:11278
+#: cp/decl.c:7158
#, c-format
msgid "storage class specified for %s `%s'"
msgstr "clase de almacenamiento especificada por %s `%s'"
-#: cp/decl.c:11325
+#: cp/decl.c:7193
+#, c-format
+msgid "top-level declaration of `%s' specifies `auto'"
+msgstr "la declaración del nivel superior de `%s' especifica `auto'"
+
+#: cp/decl.c:7205
msgid "storage class specifiers invalid in friend function declarations"
msgstr "especificadores de clase de almacenamiento inválidos en las declaraciones de funciones friend"
-#: cp/decl.c:11495
+#: cp/decl.c:7370
msgid "destructor cannot be static member function"
msgstr "el destructor no puede ser una función miembro de tipo static"
-#: cp/decl.c:11498
+#: cp/decl.c:7373
#, c-format
msgid "destructors may not be `%s'"
msgstr "los destructores no pueden ser `%s'"
-#: cp/decl.c:11519
+#: cp/decl.c:7394
msgid "constructor cannot be static member function"
msgstr "el constructor no puede ser una función miembro de tipo static"
-#: cp/decl.c:11522
+#: cp/decl.c:7397
msgid "constructors cannot be declared virtual"
msgstr "los constructores no pueden ser declarados virtual"
-#: cp/decl.c:11527
+#: cp/decl.c:7402
#, c-format
msgid "constructors may not be `%s'"
msgstr "los constructores no pueden ser `%s'"
-#: cp/decl.c:11537
+#: cp/decl.c:7412
msgid "return value type specifier for constructor ignored"
msgstr "el especificador de tipo del valor devuelto para el constructor es ignorado"
-#: cp/decl.c:11556
+#: cp/decl.c:7431
#, c-format
msgid "can't initialize friend function `%s'"
msgstr "no se puede inicializar la función friend `%s'"
#. Cannot be both friend and virtual.
-#: cp/decl.c:11560
+#: cp/decl.c:7435
msgid "virtual functions cannot be friends"
msgstr "las funciones virtual no pueden ser friend"
-#: cp/decl.c:11565
+#: cp/decl.c:7440
msgid "friend declaration not in class definition"
msgstr "la declaración friend no está en una definición de clase"
-#: cp/decl.c:11567
+#: cp/decl.c:7442
#, c-format
msgid "can't define friend function `%s' in a local class definition"
msgstr "no se puede definir la función friend `%s' en una definición de clase local"
-#: cp/decl.c:11591
+#: cp/decl.c:7463
msgid "destructors may not have parameters"
msgstr "los destructores no pueden tener parámetros"
-#: cp/decl.c:11622 cp/decl.c:11629
+#: cp/decl.c:7483 cp/decl.c:7490
msgid "cannot declare reference to `%#T'"
msgstr "no se pueden declarar referencias a `%#T'"
-#: cp/decl.c:11623
+#: cp/decl.c:7484
msgid "cannot declare pointer to `%#T'"
msgstr "no se pueden declarar punteros a `%#T'"
-#: cp/decl.c:11628
+#: cp/decl.c:7489
msgid "cannot declare pointer to `%#T' member"
msgstr "no se pueden declarar un puntero al miembro `%#T'"
-#: cp/decl.c:11804
+#: cp/decl.c:7627
msgid "extra qualification `%T::' on member `%s' ignored"
msgstr "se ignora la calificación extra `%T::' en el miembro `%s'"
-#: cp/decl.c:11814
+#: cp/decl.c:7639
msgid "cannot declare member function `%T::%s' within `%T'"
msgstr "no se puede declarar la función miembro `%T::%s' dentro de `%T'"
-#: cp/decl.c:11829
+#: cp/decl.c:7654
msgid "cannot declare member `%T::%s' within `%T'"
msgstr "no se puede declarar el miembro `%T::%s' dentro de `%T'"
-#: cp/decl.c:11908
+#: cp/decl.c:7734
msgid "data member may not have variably modified type `%T'"
msgstr "los datos miembro pueden no tener el tipo modificado variablemente `%T'"
-#: cp/decl.c:11910
+#: cp/decl.c:7736
msgid "parameter may not have variably modified type `%T'"
msgstr "el parámetro puede no tener el tipo modificado variablemente `%T'"
#. [dcl.fct.spec] The explicit specifier shall only be used in
#. declarations of constructors within a class definition.
-#: cp/decl.c:11918
+#: cp/decl.c:7744
msgid "only declarations of constructors can be `explicit'"
msgstr "solamente las declaraciones de constructores pueden ser `explicit'"
-#: cp/decl.c:11926
+#: cp/decl.c:7752
#, c-format
msgid "non-member `%s' cannot be declared `mutable'"
msgstr "el no-miembro `%s' no puede ser declarado `mutable'"
-#: cp/decl.c:11931
+#: cp/decl.c:7757
#, c-format
msgid "non-object member `%s' cannot be declared `mutable'"
msgstr "el miembro no-objeto `%s' no puede ser declarado `mutable'"
-#: cp/decl.c:11937
+#: cp/decl.c:7763
#, c-format
msgid "function `%s' cannot be declared `mutable'"
msgstr "la función `%s' no puede ser declarada `mutable'"
-#: cp/decl.c:11942
+#: cp/decl.c:7768
#, c-format
msgid "static `%s' cannot be declared `mutable'"
msgstr "static `%s' no puede ser declarado `mutable'"
-#: cp/decl.c:11947
+#: cp/decl.c:7773
#, c-format
msgid "const `%s' cannot be declared `mutable'"
msgstr "const `%s' no puede ser declarado `mutable'"
-#: cp/decl.c:11960
+#: cp/decl.c:7786
msgid "template-id `%D' used as a declarator"
msgstr "el id de plantilla `%D' se usa como un declarador"
-#: cp/decl.c:11981
+#: cp/decl.c:7807
msgid "ISO C++ forbids nested type `%D' with same name as enclosing class"
msgstr "ISO C++ prohíbe el tipo anidado `%D' con el mismo nombre que la clase que lo contiene"
-#: cp/decl.c:12030
-msgid "typedef name may not be class-qualified"
+#: cp/decl.c:7815
+#, fuzzy
+msgid "%Jtypedef name may not be a nested-name-specifier"
msgstr "el nombre de la definición de tipo puede no ser calificada para la clase"
-#: cp/decl.c:12038
-msgid "invalid type qualifier for non-member function type"
+#: cp/decl.c:7861
+#, fuzzy
+msgid "%Jinvalid type qualifier for non-member function type"
msgstr "calificador de tipo inválido para el tipo de función no miembro"
-#: cp/decl.c:12101
+#: cp/decl.c:7925
msgid "type qualifiers specified for friend class declaration"
msgstr "se especificaron calificadores de tipo en una declaración de clase friend"
-#: cp/decl.c:12106
+#: cp/decl.c:7930
msgid "`inline' specified for friend class declaration"
msgstr "se especificó `inline' para la declaración de clase friend"
-#: cp/decl.c:12114
+#: cp/decl.c:7938
msgid "template parameters cannot be friends"
msgstr "los parámetros de la plantilla no pueden ser friends"
-#: cp/decl.c:12116
+#: cp/decl.c:7940
msgid "friend declaration requires class-key, i.e. `friend class %T::%D'"
msgstr "la declaración friend requere una llave de clase, p.e. `friend class %T::%D'"
-#: cp/decl.c:12120
+#: cp/decl.c:7944
msgid "friend declaration requires class-key, i.e. `friend %#T'"
msgstr "la declaración friend requiere una llave de clase, p.e. `friend %#T'"
-#: cp/decl.c:12134
+#: cp/decl.c:7957
msgid "trying to make class `%T' a friend of global scope"
msgstr "tratando hacer que la clase `%T' sea un friend de ámbito global"
-#: cp/decl.c:12145
+#: cp/decl.c:7968
msgid "invalid qualifiers on non-member function type"
msgstr "calificadores inválidos en el tipo de función no miembro"
-#: cp/decl.c:12164
+#: cp/decl.c:7987
msgid "abstract declarator `%T' used as declaration"
msgstr "el declarador abstracto `%T' se utilizó como una declaración"
-#: cp/decl.c:12176
+#: cp/decl.c:7999
msgid "unnamed variable or field declared void"
msgstr "variable sin nombre o campo declarado void"
-#: cp/decl.c:12185
+#: cp/decl.c:8008
msgid "variable or field declared void"
msgstr "variable o campo declarado void"
-#: cp/decl.c:12195
+#: cp/decl.c:8018
msgid "cannot use `::' in parameter declaration"
msgstr "no se puede usar `::' en la declaración de parámetros"
#. Something like struct S { int N::j; };
-#: cp/decl.c:12234
+#: cp/decl.c:8063
msgid "invalid use of `::'"
msgstr "uso inválido de `::'"
-#: cp/decl.c:12246
+#: cp/decl.c:8075
msgid "function `%D' cannot be declared friend"
msgstr "la función `%D' no puede ser declarada friend"
-#: cp/decl.c:12258
+#: cp/decl.c:8087
msgid "can't make `%D' into a method -- not in a class"
msgstr "no se puede hacer `%D' en un método -- no está en una clase"
-#: cp/decl.c:12267
+#: cp/decl.c:8096
msgid "function `%D' declared virtual inside a union"
msgstr "la función `%s' se declaró virtual dentro de un union"
-#: cp/decl.c:12279
+#: cp/decl.c:8108
msgid "`%D' cannot be declared virtual, since it is always static"
msgstr "`%D' no se puede declarar virtual, ya que siempre es static"
-#: cp/decl.c:12355
+#: cp/decl.c:8185
msgid "field `%D' has incomplete type"
msgstr "el campo `%D' tiene tipo de dato incompleto"
-#: cp/decl.c:12357
+#: cp/decl.c:8187
msgid "name `%T' has incomplete type"
msgstr "el nombre `%T' tiene tipo de dato incompleto"
-#: cp/decl.c:12366
+#: cp/decl.c:8196
msgid " in instantiation of template `%T'"
msgstr " en la instanciación de la plantilla `%T'"
-#: cp/decl.c:12376
+#: cp/decl.c:8206
#, c-format
msgid "`%s' is neither function nor member function; cannot be declared friend"
msgstr "`%s' no es ni función ni función miembro; no puede ser declarado friend"
-#: cp/decl.c:12387
+#: cp/decl.c:8217
msgid "member functions are implicitly friends of their class"
msgstr "las funciones miembros son implícitamente friends de su clase"
@@ -15375,99 +14778,95 @@ msgstr "las funciones miembros son implícitamente friends de su clase"
#. the rest of the compiler does not correctly
#. handle the initialization unless the member is
#. static so we make it static below.
-#: cp/decl.c:12434
+#: cp/decl.c:8258
msgid "ISO C++ forbids initialization of member `%D'"
msgstr "ISO C++ prohíbe la inicialización del miembro `%D'"
-#: cp/decl.c:12436
+#: cp/decl.c:8260
msgid "making `%D' static"
msgstr "haciendo a `%D' static"
-#: cp/decl.c:12460
+#: cp/decl.c:8283
msgid "ISO C++ forbids static data member `%D' with same name as enclosing class"
msgstr "ISO C++ prohíbe que el miembro de datos static `%D' tenga el mismo nombre que la clase que lo contiene"
-#: cp/decl.c:12501
+#: cp/decl.c:8323
#, c-format
msgid "storage class `auto' invalid for function `%s'"
msgstr "la clase de almacenamiento `auto' es inválida para la función `%s'"
-#: cp/decl.c:12503
+#: cp/decl.c:8325
#, c-format
msgid "storage class `register' invalid for function `%s'"
msgstr "la clase de almacenamiento `register' es inválida para la función `%s'"
-#: cp/decl.c:12505
+#: cp/decl.c:8327
#, c-format
msgid "storage class `__thread' invalid for function `%s'"
msgstr "la clase de almacenamiento `__thread' es inválida para la función `%s'"
-#: cp/decl.c:12516
+#: cp/decl.c:8338
#, c-format
msgid "storage class `static' invalid for function `%s' declared out of global scope"
msgstr "la clase de almacenamiento `static' es inválida para la función `%s' declarada fuera del ámbito global"
-#: cp/decl.c:12518
+#: cp/decl.c:8340
#, c-format
msgid "storage class `inline' invalid for function `%s' declared out of global scope"
msgstr "la clase de almacenamiento `inline' es inválida para la función `%s' declarada fuera del ámbito global"
-#: cp/decl.c:12525
+#: cp/decl.c:8347
#, c-format
msgid "virtual non-class function `%s'"
msgstr "la función virtual `%s' no es clase"
-#: cp/decl.c:12554
+#: cp/decl.c:8377
msgid "cannot declare member function `%D' to have static linkage"
msgstr "no se puede declarar que la función miembro `%D' tenga enlazado estático"
#. FIXME need arm citation
-#: cp/decl.c:12560
+#: cp/decl.c:8383
msgid "cannot declare static function inside another function"
msgstr "no se puede declarar una función static dentro de otra función"
-#: cp/decl.c:12588
+#: cp/decl.c:8411
msgid "`static' may not be used when defining (as opposed to declaring) a static data member"
msgstr "`static' puede no ser utilizado cuando se define (opuesto a la declaración) un dato miembro static"
-#: cp/decl.c:12594
+#: cp/decl.c:8417
msgid "static member `%D' declared `register'"
msgstr "se declaró el miembro static `%D' como `register'"
-#: cp/decl.c:12599
+#: cp/decl.c:8422
msgid "cannot explicitly declare member `%#D' to have extern linkage"
msgstr "no se puede declarar explícitamente que el miembro `%#D' tenga un enlazado externo"
-#: cp/decl.c:12774
+#: cp/decl.c:8564
msgid "default argument for `%#D' has type `%T'"
msgstr "el argumento por defecto de `%#D' tiene tipo `%T'"
-#: cp/decl.c:12777
+#: cp/decl.c:8567
msgid "default argument for parameter of type `%T' has type `%T'"
msgstr "el argumento por defecto para el parámetro del tipo `%T' tiene el tipo `%T'"
-#: cp/decl.c:12794
+#: cp/decl.c:8584
msgid "default argument `%E' uses local variable `%D'"
msgstr "el argumento por defecto `%E' usa la variable local `%D'"
-#: cp/decl.c:12839
+#: cp/decl.c:8628
#, c-format
msgid "invalid string constant `%E'"
msgstr "constante de cadena inválida `%E'"
-#: cp/decl.c:12841
+#: cp/decl.c:8630
msgid "invalid integer constant in parameter list, did you forget to give parameter name?"
msgstr "constante entera inválida en la lista de parámetros, ¿olvidó proporcionar nombre(s) de parámetro(s)?"
-#: cp/decl.c:12879
+#: cp/decl.c:8668
msgid "parameter `%D' invalidly declared method type"
msgstr "el parámetro `%D' se declaró inválidamente como tipo de método"
-#: cp/decl.c:12885
-msgid "parameter `%D' invalidly declared offset type"
-msgstr "el parámetro `%D' se declaró inválidamente como tipo de desplazamiento"
-
-#: cp/decl.c:12909
+#: cp/decl.c:8692
msgid "parameter `%D' includes %s to array of unknown bound `%T'"
msgstr "el parámetro `%D' incluye %s para la matriz `%T' de límite desconocido"
@@ -15486,509 +14885,352 @@ msgstr "el parámetro `%D' incluye %s para la matriz `%T' de límite desconocido"
#. or implicitly defined), there's no need to worry about their
#. existence. Theoretically, they should never even be
#. instantiated, but that's hard to forestall.
-#: cp/decl.c:13071
+#: cp/decl.c:8851
msgid "invalid constructor; you probably meant `%T (const %T&)'"
msgstr "constructor inválido; tal vez quiso decir `%T (const %T&)'"
-#: cp/decl.c:13222
+#: cp/decl.c:8991
msgid "`%D' must be a nonstatic member function"
msgstr "`%D' debe ser una función miembro que no sea static"
-#: cp/decl.c:13228
+#: cp/decl.c:8997
msgid "`%D' must be either a non-static member function or a non-member function"
msgstr "`%D' debe ser una función miembro no estático o una función no miembro"
-#: cp/decl.c:13245
+#: cp/decl.c:9014
msgid "`%D' must have an argument of class or enumerated type"
msgstr "`%D' debe tener un argumento de tipo clase o enumerado"
-#: cp/decl.c:13277
+#: cp/decl.c:9049
#, c-format
msgid "conversion to %s%s will never use a type conversion operator"
msgstr "la conversión a %s%s nunca usará un operador de conversión de tipo"
#. 13.4.0.3
-#: cp/decl.c:13284
+#: cp/decl.c:9056
msgid "ISO C++ prohibits overloading operator ?:"
msgstr "ISO C++ prohíbe la sobrecarga del operador ?:"
-#: cp/decl.c:13334
+#: cp/decl.c:9106
msgid "postfix `%D' must take `int' as its argument"
msgstr "el postfijo `%D' debe tomar `int' como su argumento"
-#: cp/decl.c:13338
+#: cp/decl.c:9110
msgid "postfix `%D' must take `int' as its second argument"
msgstr "el postfijo `%D' debe tomar `int' como su segundo argumento"
-#: cp/decl.c:13345
+#: cp/decl.c:9117
msgid "`%D' must take either zero or one argument"
msgstr "`%D' debe tomar cero o un argumentos"
-#: cp/decl.c:13347
+#: cp/decl.c:9119
msgid "`%D' must take either one or two arguments"
msgstr "`%D' debe tomar uno o dos argumentos"
-#: cp/decl.c:13368
+#: cp/decl.c:9140
msgid "prefix `%D' should return `%T'"
msgstr "el prefijo `%D' debe regresar `%T'"
-#: cp/decl.c:13374
+#: cp/decl.c:9146
msgid "postfix `%D' should return `%T'"
msgstr "el postfijo `%D' debe regresar `%T'"
-#: cp/decl.c:13383
+#: cp/decl.c:9155
msgid "`%D' must take `void'"
msgstr "`%D' debe tomar `void'"
-#: cp/decl.c:13385 cp/decl.c:13393
+#: cp/decl.c:9157 cp/decl.c:9165
msgid "`%D' must take exactly one argument"
msgstr "`%D' debe tomar cero o un argumentos exactamente"
-#: cp/decl.c:13395
+#: cp/decl.c:9167
msgid "`%D' must take exactly two arguments"
msgstr "`%s' debe tomar cero o dos argumentos exactamente"
-#: cp/decl.c:13403
+#: cp/decl.c:9175
msgid "user-defined `%D' always evaluates both arguments"
msgstr "el `%D' definido por el usuario siempre evalúa ambos argumentos"
-#: cp/decl.c:13417
+#: cp/decl.c:9189
msgid "`%D' should return by value"
msgstr "`%D' debe regresar por valor"
-#: cp/decl.c:13429 cp/decl.c:13432
+#: cp/decl.c:9201 cp/decl.c:9204
msgid "`%D' cannot have default arguments"
msgstr "`%D' no puede tener argumentos por defecto"
-#: cp/decl.c:13475
+#: cp/decl.c:9264
msgid "using typedef-name `%D' after `%s'"
msgstr " usando el nombre de definición de tipo `%D' después de `%s'"
-#: cp/decl.c:13481
+#: cp/decl.c:9270
msgid "using template type parameter `%T' after `%s'"
msgstr "usando el parámetro de tipo plantilla `%T' después de `%s'"
-#: cp/decl.c:13542
-msgid "`%s %T' declares a new type at namespace scope"
-msgstr "`%s %T' declara un tipo nuevo en el ámbito del nombre de espacio"
+#: cp/decl.c:9278
+#, fuzzy
+msgid "`%T' referred to as `%s'"
+msgstr "`%#D' redeclarado como %C"
-#: cp/decl.c:13545
-msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
-msgstr " los nombres de las clases bases dependientes no son visibles para la búsqueda de nombres sin calificar - para referirse al tipo heredado, utilice `%s %T::%T'"
+#: cp/decl.c:9284
+#, fuzzy
+msgid "`%T' referred to as enum"
+msgstr "`%#D' redeclarado como %C"
+
+#. If a class template appears as elaborated type specifier
+#. without a template header such as:
+#.
+#. template <class T> class C {};
+#. void f(class C); // No template header here
+#.
+#. then the required template argument is missing.
+#: cp/decl.c:9299
+#, fuzzy
+msgid "template argument required for `%s %T'"
+msgstr "se requiere un argumento de plantilla para `%T'"
-#: cp/decl.c:13663
+#: cp/decl.c:9445
msgid "use of enum `%#D' without previous declaration"
msgstr "uso del enum `%#D' sin declaración previa"
-#: cp/decl.c:13749
+#: cp/decl.c:9530
msgid "derived union `%T' invalid"
msgstr "union derivada `%T' inválida"
-#: cp/decl.c:13795
+#: cp/decl.c:9583
msgid "base type `%T' fails to be a struct or class type"
msgstr "el tipo base `%T' falla en ser un tipo struct o clase"
-#: cp/decl.c:13805
-msgid "base class `%T' has incomplete type"
-msgstr "la clase base `%T' tiene tipo de dato incompleto"
-
-#: cp/decl.c:13813
+#: cp/decl.c:9591
msgid "recursive type `%T' undefined"
msgstr "tipo recursivo `%T' sin definir"
-#: cp/decl.c:13815
+#: cp/decl.c:9593
msgid "duplicate base type `%T' invalid"
msgstr "tipo base duplicado `%T' inválido"
-#: cp/decl.c:13926
+#: cp/decl.c:9671
+msgid "Java class '%T' cannot have multiple bases"
+msgstr ""
+
+#: cp/decl.c:9673
+#, fuzzy
+msgid "Java class '%T' cannot have virtual bases"
+msgstr "la clase base `%#T' tiene un destructor no virtual"
+
+#: cp/decl.c:9713
msgid "multiple definition of `%#T'"
msgstr "definición múltiple de `%#T'"
-#: cp/decl.c:13927
-msgid "previous definition here"
+#: cp/decl.c:9714
+#, fuzzy
+msgid "%Jprevious definition here"
msgstr "definición previa aquí"
-#: cp/decl.c:14030
+#. DR 377
+#.
+#. IF no integral type can represent all the enumerator values, the
+#. enumeration is ill-formed.
+#: cp/decl.c:9849
msgid "no integral type can represent all of the enumerator values for `%T'"
msgstr ""
-#: cp/decl.c:14106
+#: cp/decl.c:9939
msgid "enumerator value for `%D' not integer constant"
msgstr "el valor de enumerador para `%D' no es una constante entera"
-#: cp/decl.c:14126
+#: cp/decl.c:9959
msgid "overflow in enumeration values at `%D'"
msgstr "desbordamiento en valores de enumeración en `%D'"
-#: cp/decl.c:14195
+#: cp/decl.c:10028
msgid "return type `%#T' is incomplete"
msgstr "el tipo de devolución `%#T' es un tipo de dato incompleto"
-#: cp/decl.c:14309
-msgid "semicolon missing after declaration of `%#T'"
-msgstr "falta punto y coma después de la declaración de `%#T'"
-
-#: cp/decl.c:14330
+#: cp/decl.c:10148
msgid "return type for `main' changed to `int'"
msgstr "el tipo de devolución para `main' cambió a `int'"
-#: cp/decl.c:14361
+#: cp/decl.c:10178
msgid "`%D' implicitly declared before its definition"
msgstr "`%D' declarado implícitamente antes de su definición"
-#: cp/decl.c:14383 cp/typeck.c:6314
+#: cp/decl.c:10200 cp/typeck.c:6011
msgid "`operator=' should return a reference to `*this'"
msgstr "`operator=' debe devolver una referencia a `*this'"
-#: cp/decl.c:14643
+#: cp/decl.c:10472
msgid "parameter `%D' declared void"
msgstr "el parámetro `%D' se declaró void"
-#: cp/decl.c:15130
+#: cp/decl.c:10938
+#, fuzzy
+msgid "invalid member function declaration"
+msgstr "declaración de la plantilla miembro `%D' inválida"
+
+#: cp/decl.c:10955
msgid "`%D' is already defined in class `%T'"
msgstr "`%D' ya se definió en la clase `%T'"
-#: cp/decl.c:15348
+#: cp/decl.c:11168
msgid "static member function `%#D' declared with type qualifiers"
msgstr "la función miembro static `%#D' es declarada con calificadores de tipo"
-#: cp/decl2.c:153
+#: cp/decl2.c:143
#, c-format
msgid "duplicate type qualifiers in %s declaration"
msgstr "calificadores de tipo duplicados en la declaración %s"
-#: cp/decl2.c:192
-msgid "template `%#D' instantiated in file without #pragma interface"
-msgstr "se instanció la plantilla `%#D' en el fichero sin #pragma interface"
-
-#: cp/decl2.c:198
-msgid "template `%#D' defined in file without #pragma interface"
-msgstr "se definió la plantilla `%#D' en el fichero sin #pragma interface"
-
-#: cp/decl2.c:365
+#: cp/decl2.c:316
msgid "name missing for member function"
msgstr "falta el nombre para la función miembro"
-#. Something has gone very wrong. Assume we are mistakenly reducing
-#. an expression instead of a declaration.
-#: cp/decl2.c:428
-msgid "parser may be lost: is there a '{' missing somewhere?"
-msgstr "el decodificador tal vez se perdió: ¿falta algún '{' en algún lugar?"
-
-#: cp/decl2.c:459 cp/decl2.c:473
+#: cp/decl2.c:408 cp/decl2.c:422
msgid "ambiguous conversion for array subscript"
msgstr "conversión ambigua para índice de matriz"
-#: cp/decl2.c:467
+#: cp/decl2.c:416
msgid "invalid types `%T[%T]' for array subscript"
msgstr "tipos inválidos `%T[%T]' para índice de matriz"
-#: cp/decl2.c:515
+#: cp/decl2.c:464
msgid "type `%#T' argument given to `delete', expected pointer"
msgstr "se dió un argumento de tipo `%#T' a `delete', se esperaba un puntero"
-#: cp/decl2.c:523
+#: cp/decl2.c:472
msgid "anachronistic use of array size in vector delete"
msgstr "uso anacrónico del tamaño de la matriz desconocida en vector delete"
-#: cp/decl2.c:533
+#: cp/decl2.c:482
msgid "cannot delete a function. Only pointer-to-objects are valid arguments to `delete'"
msgstr "no se puede borrar una función. Solamente los punteros a objetos son argumentos válidos para `delete'"
-#: cp/decl2.c:540
+#: cp/decl2.c:489
msgid "deleting `%T' is undefined"
msgstr "el borrar `%T' está indefinido"
-#: cp/decl2.c:548
+#: cp/decl2.c:497
msgid "deleting array `%#D'"
msgstr "borrando la matriz `%#D'"
#. 14.5.2.2 [temp.mem]
#.
#. A local class shall not have member templates.
-#: cp/decl2.c:582
+#: cp/decl2.c:530
msgid "invalid declaration of member template `%#D' in local class"
msgstr "declaración inválida de la plantilla miembro `%#D' en la clase local"
-#: cp/decl2.c:591
+#: cp/decl2.c:539
msgid "invalid use of `virtual' in template declaration of `%#D'"
msgstr "uso inválido de `virtual' en la declaración de plantilla de `%#D'"
-#: cp/decl2.c:601 cp/pt.c:2745
+#: cp/decl2.c:549 cp/pt.c:2830
msgid "template declaration of `%#D'"
msgstr "redeclaración en plantilla de `%#D'"
-#: cp/decl2.c:651
+#: cp/decl2.c:598
msgid "Java method '%D' has non-Java return type `%T'"
msgstr "el método Java `%D' tiene un tipo de devolución `%T' que no es de Java"
-#: cp/decl2.c:660
+#: cp/decl2.c:614
msgid "Java method '%D' has non-Java parameter type `%T'"
msgstr "el método Java `%D' tiene un tipo de parámetro `%T' que no es de Java"
-#: cp/decl2.c:746
+#: cp/decl2.c:705
msgid "prototype for `%#D' does not match any in class `%T'"
msgstr "el prototipo para `%#D' no coincide con ningún otro en la clase `%T'"
-#: cp/decl2.c:828
+#: cp/decl2.c:784
msgid "local class `%#T' shall not have static data member `%#D'"
msgstr "la clase local `%#T' no debe tener el miembro static `%#D'"
-#: cp/decl2.c:836
+#: cp/decl2.c:792
msgid "initializer invalid for static member with constructor"
msgstr "inicializador inválido para el miembro static con constructor"
-#: cp/decl2.c:839
+#: cp/decl2.c:795
msgid "(an out of class initialization is required)"
msgstr "(se requiere una inicialización fuera de la clase)"
-#: cp/decl2.c:898
-msgid "invalid data member initialization"
-msgstr "inicialización del dato miembro inválida"
-
-#: cp/decl2.c:901
-msgid "(use `=' to initialize static data members)"
-msgstr "(use `=' para inicializar miembros de datos static)"
-
-#: cp/decl2.c:947
+#: cp/decl2.c:878
msgid "member `%D' conflicts with virtual function table field name"
msgstr "el miembro `%D' tiene conflictos con el nombre de campo de la tabla de funciones virtuales"
-#: cp/decl2.c:967
+#: cp/decl2.c:895
msgid "`%D' is already defined in `%T'"
msgstr "`%D' ya está definido en `%T'"
-#: cp/decl2.c:1014
+#: cp/decl2.c:942
msgid "field initializer is not constant"
msgstr "el inicializador del campo no es constante"
-#: cp/decl2.c:1038
+#: cp/decl2.c:970
msgid "`asm' specifiers are not permitted on non-static data members"
msgstr "no se permiten los especificadores `asm' en miembros de datos no estáticos"
-#: cp/decl2.c:1090
+#: cp/decl2.c:1020
msgid "cannot declare `%D' to be a bit-field type"
msgstr "no se puede declarar `%D' que sea un tipo de campo de bits"
-#: cp/decl2.c:1100
+#: cp/decl2.c:1030
msgid "cannot declare bit-field `%D' with function type"
msgstr "no se puede declarar el campo de bits `%D' con un tipo de función"
-#: cp/decl2.c:1107
+#: cp/decl2.c:1037
msgid "`%D' is already defined in the class %T"
msgstr "`%D' ya está definido en la clase %T"
-#: cp/decl2.c:1114
+#: cp/decl2.c:1044
msgid "static member `%D' cannot be a bit-field"
msgstr "el miembro static `%D' no puede ser un campo de bits"
-#: cp/decl2.c:1201
+#: cp/decl2.c:1103
msgid "initializer specified for non-member function `%D'"
msgstr "se especificó un inicializador para la función no-miembro `%D'"
-#: cp/decl2.c:1205
+#: cp/decl2.c:1107
msgid "invalid initializer for virtual method `%D'"
msgstr "inicializador inválido para el método virtual `%D'"
-#: cp/decl2.c:1319
+#: cp/decl2.c:1154
msgid "anonymous struct not inside named type"
msgstr "struct anónimo no se encuentra dentro de un tipo nombrado"
-#: cp/decl2.c:1415
+#: cp/decl2.c:1224
msgid "namespace-scope anonymous aggregates must be static"
msgstr "los agregados anónimos de alcance de nombre de espacio deben ser static"
-#: cp/decl2.c:1428
-msgid "anonymous aggregate with no members"
+#: cp/decl2.c:1231
+#, fuzzy
+msgid "anonymous union with no members"
msgstr "agregado anónimo sin miembros"
-#: cp/decl2.c:1497
+#: cp/decl2.c:1265
msgid "`operator new' must return type `%T'"
msgstr "`operator new' debe devolver el tipo `%T'"
-#: cp/decl2.c:1505
+#: cp/decl2.c:1273
msgid "`operator new' takes type `size_t' (`%T') as first parameter"
msgstr "`operator new' toma el tipo `size_t' (`%T') como primer argumento"
-#: cp/decl2.c:1532
+#: cp/decl2.c:1299
msgid "`operator delete' must return type `%T'"
msgstr "`operator delete' debe devolver el tipo `%T'"
-#: cp/decl2.c:1540
+#: cp/decl2.c:1307
msgid "`operator delete' takes type `%T' as first parameter"
msgstr "`operator delete' toma el tipo `%T' como primer argumento"
-#. Overflow occurred. That means there are at least 4 billion
-#. initialization functions.
-#: cp/decl2.c:2282
-msgid "too many initialization functions required"
-msgstr "se requieren demasiadas funciones de inicialización"
-
-#: cp/decl2.c:3006
+#: cp/decl2.c:2814
msgid "inline function `%D' used but never defined"
msgstr "se usa la función inline `%D' pero nunca se definió"
-#: cp/decl2.c:3135
-msgid "use of old-style cast"
-msgstr "uso de la conversión de estilo antiguo"
-
-#: cp/decl2.c:3860
-msgid "use of `%D' is ambiguous"
-msgstr "el uso de `%D' es ambiguo"
-
-#: cp/decl2.c:3861
-msgid " first declared as `%#D' here"
-msgstr " declarado inicialmente como `%#D' aquí"
-
-#: cp/decl2.c:3864
-msgid " also declared as `%#D' here"
-msgstr " también declarado como `%#D' aquí"
-
-#: cp/decl2.c:3879
-msgid "`%D' denotes an ambiguous type"
-msgstr "`%D' denota un tipo ambiguo"
-
-#: cp/decl2.c:3880
-msgid " first type here"
-msgstr " primer tipo aquí"
-
-#: cp/decl2.c:3881
-msgid " other type here"
-msgstr " otro tipo aquí"
-
-#: cp/decl2.c:3982
-msgid "declaration of `%D' not in a namespace surrounding `%D'"
-msgstr "la declaración de `%D' no está en un espacio de nombres alrededor de `%D'"
-
-#: cp/decl2.c:4016
-msgid "`%D' should have been declared inside `%D'"
-msgstr "`%D' debería ser declarado dentro de `%D'"
-
-#: cp/decl2.c:4152
-msgid "`%D' is not a function,"
-msgstr "`%D' no es una función,"
-
-#: cp/decl2.c:4153
-msgid " conflict with `%D'"
-msgstr " tiene conflicto con `%D'"
-
-#. The parser did not find it, so it's not there.
-#: cp/decl2.c:4473
-msgid "unknown namespace `%D'"
-msgstr "espacio de nombres `%D' desconocido"
-
-#: cp/decl2.c:4507 cp/decl2.c:4794
-msgid "`%T' is not a namespace"
-msgstr "`%T' no es un nombre de espacio"
-
-#: cp/decl2.c:4509
-msgid "`%D' is not a namespace"
-msgstr "`%D' no es un nombre de espacio"
-
-#: cp/decl2.c:4518
-msgid "a using-declaration cannot specify a template-id. Try `using %D'"
-msgstr "una declaración de uso no puede especificar un id de plantilla. Intente `using %D'"
-
-#: cp/decl2.c:4532
-msgid "namespace `%D' not allowed in using-declaration"
-msgstr "no se permite el espacio de nombres `%D' en la declaración de uso"
-
-#: cp/decl2.c:4561
-msgid "`%D' not declared"
-msgstr "no se declaró `%D'"
-
-#. If the OLD_FN was really declared, the
-#. declarations don't match.
-#: cp/decl2.c:4573 cp/decl2.c:4615 cp/decl2.c:4640
-msgid "`%D' is already declared in this scope"
-msgstr "`%D' ya se declaró en este ámbito"
-
-#: cp/decl2.c:4646
-msgid "using declaration `%D' introduced ambiguous type `%T'"
-msgstr "el uso de la declaración `%D' introdujo el tipo ambiguo `%T'"
-
-#: cp/decl2.c:4740
-msgid "using-declaration for non-member at class scope"
-msgstr "declaración de uso para un no miembro en el ámbito de la clase"
-
-#: cp/decl2.c:4746
-msgid "using-declaration for destructor"
-msgstr "declaración de uso para el destructor"
-
-#: cp/decl2.c:4752
-msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
-msgstr "una declaración de uso no puede especificar un id de plantilla. Intente `using %T::%D'"
-
-#: cp/decl2.c:4788
-msgid "namespace `%T' undeclared"
-msgstr "espacio de nombres `%T' sin declarar"
-
-#: cp/decl2.c:4817
+#: cp/decl2.c:2960
msgid "default argument missing for parameter %P of `%+#D'"
msgstr "falta el argumento por defecto para el parámetro %P de `%+#D'"
-#: cp/decl2.c:4941
-msgid "extra qualification `%T::' on member `%D' ignored"
-msgstr "se ignora la calificación extra `%T::' en el miembro `%D'"
-
-#: cp/decl2.c:4945
-msgid "`%T' does not have a class or union named `%D'"
-msgstr "`%T' no tiene una clase o union llamado `%D'"
-
-#: cp/decl2.c:4963
-msgid "`%T' is not a class or union type"
-msgstr "`%T' no es una clase o tipo union"
-
-#: cp/decl2.c:4977
-msgid "template argument is required for `%T'"
-msgstr "se requiere un argumento de plantilla para `%T'"
-
-#: cp/decl2.c:4995
-msgid "declaration of `%D' in `%D' which does not enclose `%D'"
-msgstr "la declaración de `%D' en `%D' la cual no incluye a `%D'"
-
-#: cp/error.c:35
-#, c-format
-msgid "`%s' not supported by %s"
-msgstr "`%s' no tiene soporte para %s"
-
-#: cp/error.c:571
-#, c-format
-msgid "<anonymous %s>"
-msgstr "<%s anónimo>"
-
-#: cp/error.c:810
-#, c-format
-msgid "(static %s for %s)"
-msgstr "(% static para %s)"
-
-#: cp/error.c:1503
-#, c-format
-msgid "\\x%x"
-msgstr "\\x%x"
-
-#: cp/error.c:2473
-#, c-format
-msgid "In %s `%s':"
-msgstr "En %s `%s':"
-
-#: cp/error.c:2530
-#, c-format
-msgid "%s: In instantiation of `%s':\n"
-msgstr "%s: En la instanciación de `%s':\n"
-
-#: cp/error.c:2554
-#, c-format
-msgid "%s:%d: instantiated from `%s'\n"
-msgstr "%s:%d: instanciado desde `%s'\n"
-
-#: cp/error.c:2559
-#, c-format
-msgid "%s:%d: instantiated from here\n"
-msgstr "%s:%d: instanciado desde aquí\n"
-
#. damn ICE suppression
-#: cp/error.c:2713
+#: cp/error.c:2374
#, c-format
msgid "unexpected letter `%c' in locate_error\n"
msgstr "letra `%c' inesperada en locate_error\n"
@@ -16007,158 +15249,180 @@ msgstr "llamada a `catch' ó `throw' de Java con `jthrowable' sin definir"
msgid "type `%T' is not derived from `java::lang::Throwable'"
msgstr "el tipo `%T' no es derivado de `java::lang::Throwable'"
-#: cp/except.c:322
+#: cp/except.c:321
msgid "mixing C++ and Java catches in a single translation unit"
msgstr "mezclando `catch'es de C++ y Java en una sola unidad de traducción"
-#: cp/except.c:639
+#: cp/except.c:630
msgid "throwing NULL, which has integral, not pointer type"
msgstr "arrojando NULL, que tiene un tipo integral, que no es puntero"
-#: cp/except.c:730
+#: cp/except.c:653 cp/init.c:2029
+#, fuzzy
+msgid "`%D' should never be overloaded"
+msgstr "`%D' debe regresar por valor"
+
+#: cp/except.c:722
msgid " in thrown expression"
msgstr " en la expresión thrown"
-#: cp/except.c:856
+#: cp/except.c:843
msgid "expression '%E' of abstract class type '%T' cannot be used in throw-expression"
msgstr "no se puede usar la expresión '%E' del tipo de clase abstracta '%T' en las expresiones thrown"
-#: cp/except.c:944
+#: cp/except.c:925
msgid "exception of type `%T' will be caught"
msgstr "la excepción del tipo `%T' será atrapada"
-#: cp/except.c:947
+#: cp/except.c:928
msgid " by earlier handler for `%T'"
msgstr " por un manejador anterior para `%T'"
-#: cp/except.c:968
+#: cp/except.c:949
msgid "`...' handler must be the last handler for its try block"
msgstr "el manejador `...' debe ser el último manejador para su bloque try"
-#: cp/friend.c:159
+#: cp/friend.c:151
msgid "`%D' is already a friend of class `%T'"
msgstr "`%D' ya es un friend de la clase `%T'"
-#: cp/friend.c:161
-msgid "previous friend declaration of `%D'"
-msgstr "declaración friend previa de `%D'"
-
-#: cp/friend.c:206
+#: cp/friend.c:202
msgid "invalid type `%T' declared `friend'"
msgstr "el tipo inválido `%T' fue declarado `friend'"
#. [temp.friend]
#. Friend declarations shall not declare partial
#. specializations.
-#: cp/friend.c:222
+#: cp/friend.c:218
msgid "partial specialization `%T' declared `friend'"
msgstr "la especialización parcial `%T' se declaró `friend'"
-#: cp/friend.c:231
+#: cp/friend.c:228
msgid "class `%T' is implicitly friends with itself"
msgstr "la clase `%T' es implícitamente friend con sí misma"
#. template <class T> friend typename S<T>::X;
-#: cp/friend.c:249
+#: cp/friend.c:246
msgid "typename type `%#T' declared `friend'"
msgstr "el tipo de nombre de tipo `%#T' se declaró `friend'"
#. template <class T> friend class T;
-#: cp/friend.c:255
+#: cp/friend.c:252
msgid "template parameter type `%T' declared `friend'"
msgstr "el tipo de parámetro de plantilla `%T' se declaró `friend'"
#. template <class T> friend class A; where A is not a template
-#: cp/friend.c:261
+#: cp/friend.c:258
msgid "`%#T' is not a template"
msgstr "`%#T' no es una plantilla"
-#: cp/friend.c:276
+#: cp/friend.c:277
+#, fuzzy
+msgid "`%D' is already a friend of `%T'"
+msgstr "`%T' ya es un friend de `%T'"
+
+#: cp/friend.c:287
msgid "`%T' is already a friend of `%T'"
msgstr "`%T' ya es un friend de `%T'"
-#: cp/friend.c:376
+#: cp/friend.c:413
msgid "member `%D' declared as friend before type `%T' defined"
msgstr "el miembro `%D' es declarado friend antes que se defina el tipo `%T'"
-#: cp/friend.c:431
+#: cp/friend.c:470
msgid "friend declaration `%#D' declares a non-template function"
msgstr "la declaración friend `%#D' declara una función que no es plantilla"
-#: cp/friend.c:434
+#: cp/friend.c:473
msgid "(if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) -Wno-non-template-friend disables this warning"
msgstr "(si esta no es su intención, asegúrese que la plantilla de la función ya ha sido declarada y agregue <> aquí después del nombre de la función) -Wno-non-template-friend desactiva este aviso"
-#: cp/g++spec.c:211 java/jvspec.c:423
+#: cp/g++spec.c:229 java/jvspec.c:415
#, c-format
msgid "argument to `%s' missing\n"
msgstr "falta el argumento para `%s'\n"
-#: cp/init.c:334
+#: cp/init.c:318
msgid "`%D' should be initialized in the member initialization list"
msgstr "`%D' se debe inicializar en la lista de inicialización de miembros"
-#: cp/init.c:384
+#: cp/init.c:368
msgid "default-initialization of `%#D', which has reference type"
msgstr "la inicialización por defecto de `%#D', el cual tiene el tipo de referencia"
-#: cp/init.c:389
+#: cp/init.c:373
msgid "uninitialized reference member `%D'"
msgstr "miembro referencia `%D' sin inicializar"
-#: cp/init.c:397
-msgid "initializer list treated as compound expression"
-msgstr "la lista de inicializadores se trata como una expresión compuesta"
-
-#: cp/init.c:538
+#: cp/init.c:511
msgid "`%D' will be initialized after"
msgstr "`%D' se inicializará después de"
-#: cp/init.c:541
+#: cp/init.c:514
msgid "base `%T' will be initialized after"
msgstr "la base `%T' se inicializará después de"
-#: cp/init.c:544
+#: cp/init.c:517
msgid " `%#D'"
msgstr " `%#D'"
-#: cp/init.c:546
+#: cp/init.c:519
msgid " base `%T'"
msgstr " base `%T'"
-#: cp/init.c:564
+#: cp/init.c:520
+#, fuzzy
+msgid " when initialized here"
+msgstr "`%D' se inicializará después de"
+
+#: cp/init.c:536
+msgid "multiple initializations given for `%D'"
+msgstr "se dieron inicializaciones múltiples para `%D'"
+
+#: cp/init.c:538
msgid "multiple initializations given for base `%T'"
msgstr "se dieron inicializaciones múltiples para la base `%T'"
-#: cp/init.c:631
+#: cp/init.c:605
msgid "initializations for multiple members of `%T'"
msgstr "inicializaciones para múltiples miembros de `%T'"
-#: cp/init.c:688
+#: cp/init.c:662
msgid "base class `%#T' should be explicitly initialized in the copy constructor"
msgstr "la clase base `%#T' debe ser inicializada explícitamente en la copia del constructor"
-#: cp/init.c:926
+#: cp/init.c:892 cp/init.c:911
msgid "class `%T' does not have any field named `%D'"
msgstr "la clase `%T' no tiene ningún campo llamado `%D'"
-#: cp/init.c:932
-msgid "field `%#D' is static; the only point of initialization is its definition"
+#: cp/init.c:898
+#, fuzzy
+msgid "`%#D' is a static data member; it can only be initialized at its definition"
msgstr "el campo `%#D' es static; el único punto de inicialización es su definición"
-#: cp/init.c:965
+#: cp/init.c:905
+#, fuzzy
+msgid "`%#D' is not a non-static data member of `%T'"
+msgstr "`%#D' no es un miembro static de `%#T'"
+
+#: cp/init.c:944
msgid "unnamed initializer for `%T', which has no base classes"
msgstr "inicializador sin nombre para `%T', el cual no tiene una clase base"
-#: cp/init.c:972
+#: cp/init.c:951
msgid "unnamed initializer for `%T', which uses multiple inheritance"
msgstr "inicializador sin nombre para `%T', el cual usa herencia múltiple"
-#: cp/init.c:1007
+#: cp/init.c:1006
+#, fuzzy
+msgid "'%D' is both a direct base and an indirect virtual base"
+msgstr "el tipo `%D' no es una base directa o virtual de `%T'"
+
+#: cp/init.c:1014
msgid "type `%D' is not a direct or virtual base of `%T'"
msgstr "el tipo `%D' no es una base directa o virtual de `%T'"
-#: cp/init.c:1010
+#: cp/init.c:1017
msgid "type `%D' is not a direct base of `%T'"
msgstr "el tipo `%D' no es una base directa de `%T'"
@@ -16174,533 +15438,860 @@ msgstr "el tipo `%D' no es una base directa de `%T'"
#. COMPLEX zees(1.0, 0.0)[10];
#. }
#.
-#: cp/init.c:1104
+#: cp/init.c:1109
msgid "bad array initializer"
msgstr "inicializador de matriz erróneo"
-#: cp/init.c:1311
+#: cp/init.c:1303
msgid "`%T' is not an aggregate type"
msgstr "`%T' no es un tipo agregado"
-#: cp/init.c:1334
+#: cp/init.c:1324
msgid "`%T' fails to be an aggregate typedef"
msgstr "`%T' falla en ser un tipo agregado"
-#: cp/init.c:1343
+#: cp/init.c:1333
msgid "type `%T' is of non-aggregate type"
msgstr "el tipo `%T' es de un tipo no agregado"
-#: cp/init.c:1446
-msgid "cannot call destructor `%T::~%T' without object"
-msgstr "no se puede llamar al destructor `%T::~%T' sin un objeto"
-
-#: cp/init.c:1490
-msgid "invalid use of non-static field `%D'"
-msgstr "uso inválido del campo no static `%D'"
-
-#. We can get here when processing a bad default
-#. argument, like:
-#. struct S { int a; void f(int i = a); }
-#: cp/init.c:1499 cp/method.c:160
-msgid "invalid use of member `%D'"
-msgstr "uso inválido del miembro `%D'"
-
-#: cp/init.c:1509
-msgid "no method `%T::%D'"
-msgstr "no hay un método `%T::%D'"
+#: cp/init.c:1425 cp/typeck.c:1798
+msgid "qualified type `%T' does not match destructor name `~%T'"
+msgstr "el tipo calificado `%T' no coincide con el nombre del destructor `~%T'"
-#: cp/init.c:1602
+#: cp/init.c:1433
msgid "incomplete type `%T' does not have member `%D'"
msgstr "el tipo incompleto `%T' no tiene al miembro `%D'"
-#: cp/init.c:1676
+#: cp/init.c:1452
msgid "`%D' is not a member of type `%T'"
msgstr "`%D' no es un miembro de tipo `%T'"
-#: cp/init.c:1695
+#: cp/init.c:1471
msgid "invalid pointer to bit-field `%D'"
msgstr "puntero inválido al campo de bit `%D'"
-#: cp/init.c:1734
-msgid "object missing in use of pointer-to-member construct"
-msgstr "falta objeto en el uso de una consctrucción que apunta a miembros"
-
-#: cp/init.c:1774
-msgid "member `%D' is non-static but referenced as a static member"
-msgstr "el miembro `%D' no es static pero es referenciado como un miembro static"
-
-#: cp/init.c:1776 cp/typeck.c:2826 cp/typeck.c:2930
-msgid "at this point in file"
-msgstr "en este punto en el fichero"
+#: cp/init.c:1573
+#, fuzzy
+msgid "invalid use of non-static member function `%D'"
+msgstr "uso inválido del campo no static `%D'"
-#: cp/init.c:1813
-#, c-format
-msgid "object missing in `%E'"
-msgstr "falta un objeto en `%E'"
+#: cp/init.c:1579 cp/semantics.c:1236
+#, fuzzy
+msgid "invalid use of non-static data member `%D'"
+msgstr "uso inválido del campo no static `%D'"
-#: cp/init.c:1944
+#: cp/init.c:1718
msgid "new of array type fails to specify size"
msgstr "new de matriz falla al especificar el tamaño"
-#: cp/init.c:1955
+#: cp/init.c:1729
msgid "size in array new must have integral type"
msgstr "el tamaño de la matriz nueva debe tener un tipo integral"
-#: cp/init.c:1961
+#: cp/init.c:1735
msgid "zero size array reserves no space"
msgstr "la matriz de tamaño cero no reserva espacio"
-#: cp/init.c:2026
+#: cp/init.c:1801
msgid "new cannot be applied to a reference type"
msgstr "new no se puede aplicar a un tipo de referencia"
-#: cp/init.c:2032
+#: cp/init.c:1807
msgid "new cannot be applied to a function type"
msgstr "new no se puede aplicar a un tipo de función"
-#: cp/init.c:2079
+#: cp/init.c:1853
msgid "call to Java constructor, while `jclass' undefined"
msgstr "llamado a constructor Java, mientras `jclass' está indefinido"
-#: cp/init.c:2095
+#: cp/init.c:1869
msgid "can't find class$"
msgstr "no se puede encontrar class$"
-#: cp/init.c:2209
+#: cp/init.c:1995
msgid "invalid type `void' for new"
msgstr "tipo `void' inválido para new"
-#: cp/init.c:2261
+#: cp/init.c:2005
+msgid "uninitialized const in `new' of `%#T'"
+msgstr "const sin inicializar en `new' de `%#T'"
+
+#: cp/init.c:2024
#, c-format
msgid "call to Java constructor with `%s' undefined"
msgstr "llamado a constructor Java con `%s' sin definir"
-#: cp/init.c:2369
+#: cp/init.c:2065
+msgid "request for member `%D' is ambiguous"
+msgstr "la petición para el miembro `%D' es ambigua"
+
+#: cp/init.c:2189
msgid "ISO C++ forbids initialization in array new"
msgstr "ISO C++ prohíbe la inicialización en la matriz new"
-#: cp/init.c:2391 cp/typeck2.c:367 cp/typeck2.c:1208
-msgid "initializer list being treated as compound expression"
-msgstr "se trata la lista de inicializadores como una expresión compuesta"
-
-#: cp/init.c:2397
+#: cp/init.c:2213
msgid "ISO C++ forbids aggregate initializer to new"
msgstr "ISO C++ prohíbe un inicializador agregado para new"
-#: cp/init.c:2485
-msgid "uninitialized const in `new' of `%#T'"
-msgstr "const sin inicializar en `new' de `%#T'"
-
-#: cp/init.c:2864
+#: cp/init.c:2658
msgid "initializer ends prematurely"
msgstr "el inicializador termina prematuramente"
-#: cp/init.c:2934
+#: cp/init.c:2715
msgid "cannot initialize multi-dimensional array with initializer"
msgstr "no se pueden inicializar matrices multidimensionales con el inicializador"
-#: cp/init.c:3124
+#: cp/init.c:2876
+msgid "possible problem detected in invocation of delete operator:"
+msgstr ""
+
+#: cp/init.c:2879
+msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined."
+msgstr ""
+
+#: cp/init.c:2900
msgid "unknown array size in delete"
msgstr "tamaño de matriz desconocida en delete"
-#: cp/init.c:3389
+#: cp/init.c:3165
msgid "type to vector delete is neither pointer or array type"
msgstr "el tipo de vector delete no es del tipo puntero ni matriz"
-#: cp/lex.c:136
+#: cp/lex.c:99
msgid "type name expected before `*'"
msgstr "se esperaba un nombre de tipo antes de `*'"
-#: cp/lex.c:158
-msgid "cannot declare references to references"
-msgstr "no se pueden declarar referencias a referencias"
-
-#: cp/lex.c:163
-msgid "cannot declare pointers to references"
-msgstr "no se pueden declarar punteros a referencias"
-
-#: cp/lex.c:167
-msgid "type name expected before `&'"
-msgstr "se esperaba un nombre de tipo antes de `&'"
-
-#: cp/lex.c:894
-#, c-format
-msgid "semicolon missing after %s declaration"
-msgstr "falta punto y coma después de la declaración %s"
-
-#: cp/lex.c:897
-msgid "semicolon missing after declaration of `%T'"
-msgstr "falta punto y coma después de la declaración de `%T'"
-
-#: cp/lex.c:945
+#: cp/lex.c:501
#, c-format
msgid "junk at end of #pragma %s"
msgstr "basura al final de #pragma %s"
-#: cp/lex.c:952
+#: cp/lex.c:508
#, c-format
msgid "invalid #pragma %s"
msgstr "#pragma %s inválida"
-#: cp/lex.c:961
+#: cp/lex.c:516
msgid "#pragma vtable no longer supported"
msgstr "#pragma vtable ya no tiene soporte"
-#: cp/lex.c:1038
+#: cp/lex.c:590
#, c-format
msgid "#pragma implementation for %s appears after file is included"
msgstr "implementación de #pragma para %s aparece después de que el fichero es incluído"
-#: cp/lex.c:1063
+#: cp/lex.c:614
msgid "junk at end of #pragma GCC java_exceptions"
msgstr "basura al final del #pragma GCC java_exceptions"
-#: cp/lex.c:1107
+#: cp/lex.c:628
msgid "`%D' not defined"
msgstr "`%D' no está definido"
-#: cp/lex.c:1110
+#: cp/lex.c:631
msgid "`%D' was not declared in this scope"
msgstr "`%D' no se declaró en este ámbito"
-#: cp/lex.c:1118
+#: cp/lex.c:639
msgid "`%D' undeclared (first use this function)"
msgstr "`%D' sin declarar (primer uso en esta función)"
-#: cp/lex.c:1122
+#: cp/lex.c:643
msgid "(Each undeclared identifier is reported only once for each function it appears in.)"
msgstr "(Cada identificador sin declarar es reportado sólo una vez para cada función en el que aparece.)"
-#: cp/lex.c:1242
-msgid "`::%D' undeclared (first use here)"
-msgstr "`::%D' sin declarar (primer uso aquí)"
+#. In a template, it is invalid to write "f()" or "f(3)" if no
+#. declaration of "f" is available. Historically, G++ and most
+#. other compilers accepted that usage since they deferred all name
+#. lookup until instantiation time rather than doing unqualified
+#. name lookup at template definition time; explain to the user what
+#. is going wrong.
+#.
+#. Note that we have the exact wording of the following message in
+#. the manual (trouble.texi, node "Name lookup"), so they need to
+#. be kept in synch.
+#: cp/lex.c:674
+msgid "there are no arguments to `%D' that depend on a template parameter, so a declaration of `%D' must be available"
+msgstr ""
-#: cp/mangle.c:2051
+#: cp/lex.c:683
+msgid "(if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)"
+msgstr ""
+
+#: cp/mangle.c:2036
#, fuzzy
msgid "call_expr cannot be mangled due to a defect in the C++ ABI"
msgstr "new no se puede aplicar a un tipo de función"
-#: cp/mangle.c:2363
+#: cp/mangle.c:2089
+msgid "omitted middle operand to `?:' operand cannot be mangled"
+msgstr ""
+
+#: cp/mangle.c:2388
msgid "the mangled name of `%D' will change in a future version of GCC"
msgstr "el nombre revuelto de `%D' cambiará en una versión futura de GCC"
-#: cp/method.c:154
-msgid "invalid use of member `%D' in static member function"
-msgstr "uso inválido del miembro `%D' en la función miembro static"
-
-#: cp/method.c:216
-msgid "use of namespace `%D' as expression"
-msgstr "uso del espacio de nombres `%D' como una expresión"
-
-#: cp/method.c:221
-msgid "use of class template `%T' as expression"
-msgstr "uso de la plantilla de clase `%T' como una expresión"
-
-#: cp/method.c:234
-#, c-format
-msgid "use of %s from containing function"
-msgstr "uso de %s desde una función contenedora"
-
-#: cp/method.c:237
-msgid " `%#D' declared here"
-msgstr " `%#D' declarado aquí"
-
-#: cp/method.c:255
-msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
-msgstr "la petición por el miembro `%D' es ambigua en la red de herencia múltiple"
-
-#: cp/method.c:458
+#: cp/method.c:456
msgid "generic thunk code fails for method `%#D' which uses `...'"
msgstr "el código de thunk genérico falló para el método `%#D' que utiliza `...'"
-#: cp/method.c:697
+#: cp/method.c:681
msgid "non-static const member `%#D', can't use default assignment operator"
msgstr "el miembro const `%#D' que no es static, no puede usar el operador de asignación por defecto"
-#: cp/method.c:702
+#: cp/method.c:686
msgid "non-static reference member `%#D', can't use default assignment operator"
msgstr "el miembro de referencia `%#D' que no es static, no puede usar el operador de asignación por defecto"
-#: parse.y:262
-msgid "`%s' tag used in naming `%#T'"
-msgstr "se usó la marca `%s' al nombrar a`%#T'"
+#: cp/name-lookup.c:649
+msgid "`%#D' used prior to declaration"
+msgstr "se usa `%#D' previo a la declaración"
-#: parse.y:542
-msgid "keyword `export' not implemented, and will be ignored"
-msgstr "la palabra clave `export' no está implementada, y será ignorada"
+#: cp/name-lookup.c:680
+msgid "redeclaration of `wchar_t' as `%T'"
+msgstr "redeclaración de `wchar_t' como `%T'"
-#: parse.y:646
-msgid "use of linkage spec `%D' is different from previous spec `%D'"
-msgstr "el uso de la especificación de enlazado `%D' es diferente de la especificación previa `%D'"
+#. A redeclaration of main, but not a duplicate of the
+#. previous one.
+#.
+#. [basic.start.main]
+#.
+#. This function shall not be overloaded.
+#: cp/name-lookup.c:712
+msgid "invalid redeclaration of `%D'"
+msgstr "redeclaración inválida de `%D'"
-#: parse.y:943
-msgid "no base or member initializers given following ':'"
-msgstr "no hay inicializadores de base o miembros dados después de ':'"
+#: cp/name-lookup.c:713
+msgid "as `%D'"
+msgstr "como `%D'"
-#: parse.y:984
-msgid "anachronistic old style base class initializer"
-msgstr "inicializador de clase base de estilo antiguo anacrónico"
+#: cp/name-lookup.c:801
+#, fuzzy
+msgid "type mismatch with previous external decl of `%#D'"
+msgstr "no coinciden los tipos con la declaración externa previa"
-#. Handle `Class<Class<Type>>' without space in the `>>'
-#: parse.y:1117
-msgid "`>>' should be `> >' in template class name"
-msgstr "`>>' debe ser `> >' en el nombre de clase de la plantilla"
+#: cp/name-lookup.c:802
+msgid "previous external decl of `%#D'"
+msgstr "declaración externa previa de `%#D'"
-#: parse.y:1164
-msgid "use of template qualifier outside template"
-msgstr "uso del calificador de plantilla fuera de la plantilla"
+#: cp/name-lookup.c:844
+msgid "`%D' was previously implicitly declared to return `int'"
+msgstr "`%D' fue declarado previa e implícitamente para devolver `int'"
-#: parse.y:1193 parse.y:1202
+#: cp/name-lookup.c:902
+msgid "extern declaration of `%#D' doesn't match"
+msgstr "la declaración externa de `%#D' no coincide"
+
+#: cp/name-lookup.c:903
+msgid "global declaration `%#D'"
+msgstr "con la declaración global `%#D'"
+
+#: cp/name-lookup.c:939
+msgid "declaration of `%#D' shadows a parameter"
+msgstr "la declaración de `%#D' oscurece un parámetro"
+
+#: cp/name-lookup.c:960
#, c-format
-msgid "ISO C++ forbids an empty condition for `%s'"
-msgstr "ISO C++ prohíbe una condición vacía para `%s'"
+msgid "declaration of `%s' shadows a member of `this'"
+msgstr "la declaración de `%s' oscurece a un miembro de `this'"
-#: parse.y:1225
-msgid "definition of class `%T' in condition"
-msgstr "definición de la clase `%T' en una condición"
+#: cp/name-lookup.c:1136
+msgid "name lookup of `%D' changed"
+msgstr "la búsqueda de nombre de `%D' cambió"
-#: parse.y:1227
-msgid "definition of enum `%T' in condition"
-msgstr "definición del enum `%T' en una condición"
+#: cp/name-lookup.c:1138
+msgid " matches this `%D' under ISO standard rules"
+msgstr " coincide con este `%D' bajo las reglas de ISO estándard"
-#: parse.y:1238
-msgid "definition of array `%#D' in condition"
-msgstr "definición de la matriz `%#D' en una condición"
+#: cp/name-lookup.c:1140
+msgid " matches this `%D' under old rules"
+msgstr " coincide con este `%D' bajo las reglas antiguas"
-#: parse.y:1351
-msgid "old style placement syntax, use () instead"
-msgstr "sintaxis de ubicación de estilo antiguo, use en su lugar ()"
+#: cp/name-lookup.c:1154 cp/name-lookup.c:1161
+msgid "name lookup of `%D' changed for new ISO `for' scoping"
+msgstr "la búsqueda de nombre de `%D' cambió por el nuevo alcance ISO de `for'"
-#: parse.y:1362
-msgid "`%T' is not a valid expression"
-msgstr "`%T' no es una expresión válida"
+#: cp/name-lookup.c:1156
+msgid " cannot use obsolete binding at `%D' because it has a destructor"
+msgstr " no se puede usar la asignación obsoleta en `%D' porque tiene un destructor"
-#. This was previously allowed as an extension, but
-#. was removed in G++ 3.3.
-#: parse.y:1369
-msgid "initialization of new expression with `='"
-msgstr "inicialización de la expresión new con `='"
+#: cp/name-lookup.c:1163
+msgid " using obsolete binding at `%D'"
+msgstr " usando la asignación obsoleta en `%D'"
-#: parse.y:1395
-msgid "ISO C++ forbids compound literals"
-msgstr "ISO C++ prohíbe literales compuestos"
+#: cp/name-lookup.c:1216
+#, c-format
+msgid "%s %s(%E) %p %d\n"
+msgstr ""
+
+#: cp/name-lookup.c:1219
+#, fuzzy, c-format
+msgid "%s %s %p %d\n"
+msgstr "%s: %s: "
+
+#: cp/name-lookup.c:1338
+msgid "XXX is_class_level != (current_scope == class_scope)\n"
+msgstr ""
+
+#: cp/name-lookup.c:1975
+msgid "`%#D' hides constructor for `%#T'"
+msgstr "`%#D' esconde el destructor para `%#T'"
+
+#: cp/name-lookup.c:1990
+msgid "`%#D' conflicts with previous using declaration `%#D'"
+msgstr "`%#D' causa conflicto con la declaración previa en uso `%#D'"
+
+#: cp/name-lookup.c:2002
+msgid "previous non-function declaration `%#D'"
+msgstr "la declaración previa `%#D' que no es función"
+
+#: cp/name-lookup.c:2003
+msgid "conflicts with function declaration `%#D'"
+msgstr "causa conflicto con la declaración de la función `%#D'"
+
+#. 7.3.3/5
+#. A using-declaration shall not name a template-id.
+#: cp/name-lookup.c:2080
+msgid "a using-declaration cannot specify a template-id. Try `using %D'"
+msgstr "una declaración de uso no puede especificar un id de plantilla. Intente `using %D'"
+
+#: cp/name-lookup.c:2086
+msgid "namespace `%D' not allowed in using-declaration"
+msgstr "no se permite el espacio de nombres `%D' en la declaración de uso"
+
+#. It's a nested name with template parameter dependent scope.
+#. This can only be using-declaration for class member.
+#: cp/name-lookup.c:2094 cp/name-lookup.c:2108 cp/name-lookup.c:3283
+msgid "`%T' is not a namespace"
+msgstr "`%T' no es un nombre de espacio"
+
+#: cp/name-lookup.c:2132
+msgid "`%D' not declared"
+msgstr "no se declaró `%D'"
+
+#. If the OLD_FN was really declared, the
+#. declarations don't match.
+#: cp/name-lookup.c:2144 cp/name-lookup.c:2186 cp/name-lookup.c:2211
+msgid "`%D' is already declared in this scope"
+msgstr "`%D' ya se declaró en este ámbito"
+
+#: cp/name-lookup.c:2217
+msgid "using declaration `%D' introduced ambiguous type `%T'"
+msgstr "el uso de la declaración `%D' introdujo el tipo ambiguo `%T'"
+
+#. Definition isn't the kind we were looking for.
+#: cp/name-lookup.c:2376 cp/name-lookup.c:2395
+msgid "`%#D' redeclared as %C"
+msgstr "`%#D' redeclarado como %C"
+
+#: cp/name-lookup.c:2805
+msgid "using-declaration for non-member at class scope"
+msgstr "declaración de uso para un no miembro en el ámbito de la clase"
+
+#: cp/name-lookup.c:2812
+#, fuzzy
+msgid "using-declaration cannot name destructor"
+msgstr "declaración de uso para el destructor"
+
+#: cp/name-lookup.c:2908
+msgid "declaration of `%D' not in a namespace surrounding `%D'"
+msgstr "la declaración de `%D' no está en un espacio de nombres alrededor de `%D'"
+
+#: cp/name-lookup.c:2948
+msgid "`%D' should have been declared inside `%D'"
+msgstr "`%D' debería ser declarado dentro de `%D'"
+
+#: cp/name-lookup.c:3012
+msgid "namespace alias `%D' not allowed here, assuming `%D'"
+msgstr "no se permite aquí el alias del espacio de nombres `%D', asumiendo que es `%D'"
+
+#. The parser did not find it, so it's not there.
+#: cp/name-lookup.c:3127
+msgid "unknown namespace `%D'"
+msgstr "espacio de nombres `%D' desconocido"
+
+#: cp/name-lookup.c:3277
+msgid "namespace `%T' undeclared"
+msgstr "espacio de nombres `%T' sin declarar"
+
+#: cp/name-lookup.c:3310
+msgid "strong using only meaningful at namespace scope"
+msgstr ""
+
+#: cp/name-lookup.c:3317
+#, fuzzy
+msgid "`%D' attribute directive ignored"
+msgstr "se ignora la directiva de atributo `%s'"
+
+#: cp/name-lookup.c:3450
+msgid "use of `%D' is ambiguous"
+msgstr "el uso de `%D' es ambiguo"
+
+#: cp/name-lookup.c:3451
+msgid " first declared as `%#D' here"
+msgstr " declarado inicialmente como `%#D' aquí"
-#: parse.y:1642
+#: cp/name-lookup.c:3454
+msgid " also declared as `%#D' here"
+msgstr " también declarado como `%#D' aquí"
+
+#: cp/name-lookup.c:3469
+msgid "`%D' denotes an ambiguous type"
+msgstr "`%D' denota un tipo ambiguo"
+
+#: cp/name-lookup.c:3470
+#, fuzzy
+msgid "%J first type here"
+msgstr " primer tipo aquí"
+
+#: cp/name-lookup.c:3471
+#, fuzzy
+msgid "%J other type here"
+msgstr " otro tipo aquí"
+
+#. This happens for A::B where B is a template, and there are no
+#. template arguments.
+#: cp/name-lookup.c:3536 cp/typeck.c:1773
+msgid "invalid use of `%D'"
+msgstr "uso inválido de `%D'"
+
+#: cp/name-lookup.c:3577
+msgid "`%D::%D' is not a template"
+msgstr "`%D::%D' no es una plantilla"
+
+#: cp/name-lookup.c:3594
+msgid "`%D' undeclared in namespace `%D'"
+msgstr "`%D' no declarado en el espacio de nombres `%D'"
+
+#: cp/name-lookup.c:4055
+msgid "`%D' is not a function,"
+msgstr "`%D' no es una función,"
+
+#: cp/name-lookup.c:4056
+msgid " conflict with `%D'"
+msgstr " tiene conflicto con `%D'"
+
+#: cp/name-lookup.c:4794
+msgid "XXX entering pop_everything ()\n"
+msgstr ""
+
+#: cp/name-lookup.c:4803
+msgid "XXX leaving pop_everything ()\n"
+msgstr ""
+
+#: cp/parser.c:609
+#, fuzzy
+msgid "invalid token"
+msgstr "código inválido"
+
+#: cp/parser.c:1806
+#, fuzzy
+msgid "`%D::%D' has not been declared"
+msgstr "`%#D' no puede ser declarado"
+
+#: cp/parser.c:1809 cp/semantics.c:2284
+#, fuzzy
+msgid "`::%D' has not been declared"
+msgstr "`%#D' no puede ser declarado"
+
+#: cp/parser.c:1811
+#, fuzzy
+msgid "`%D' has not been declared"
+msgstr "`%#D' no puede ser declarado"
+
+#: cp/parser.c:1814
+msgid "`%D::%D' %s"
+msgstr ""
+
+#: cp/parser.c:1816
+#, fuzzy
+msgid "`::%D' %s"
+msgstr "acceso `%D'"
+
+#: cp/parser.c:1818
+#, fuzzy
+msgid "`%D' %s"
+msgstr "acceso `%D'"
+
+#: cp/parser.c:1870
+#, fuzzy
+msgid "new types may not be defined in a return type"
+msgstr "new no se puede aplicar a un tipo de referencia"
+
+#: cp/parser.c:1888 cp/pt.c:4185
+msgid "`%T' is not a template"
+msgstr "`%T' no es una plantilla"
+
+#: cp/parser.c:1890
+#, fuzzy, c-format
+msgid "`%s' is not a template"
+msgstr "`%T' no es una plantilla"
+
+# FIXME: ¿O 'rotación de insn inválida'? Revisar en el código. cfuga
+#: cp/parser.c:1892
+#, fuzzy
+msgid "invalid template-id"
+msgstr "rotate insn inválido"
+
+#: cp/parser.c:1927
+#, fuzzy, c-format
+msgid "%s cannot appear in a constant-expression"
+msgstr "desbordamiento en la expresión constante"
+
+#. Issue an error message.
+#: cp/parser.c:1954
+#, fuzzy, c-format
+msgid "`%s' does not name a type"
+msgstr "`%D' no declara un tipo de plantilla"
+
+#: cp/parser.c:1985
+#, fuzzy
+msgid "(perhaps `typename %T::%s' was intended)"
+msgstr " tal vez quiere `typename %T::%D' para hacerlo un tipo"
+
+#: cp/parser.c:2407
msgid "ISO C++ forbids braced-groups within expressions"
msgstr "ISO C++ prohíbe grupos de llaves dentro de las expresiones"
-#: parse.y:1721
+#: cp/parser.c:2416
+#, fuzzy
+msgid "statement-expressions are allowed only inside functions"
+msgstr "un grupo de llaves dentro de una expresión sólo se permite dentro de una función"
+
+#: cp/parser.c:2467
+#, fuzzy
+msgid "`this' may not be used in this context"
+msgstr "`%D' no se declaró en este ámbito"
+
+#: cp/parser.c:2617
+#, fuzzy
+msgid "local variable `%D' may not appear in this context"
+msgstr "`%D' no se declaró en este ámbito"
+
+#: cp/parser.c:2982
+#, fuzzy
+msgid "typedef-name `%D' used as destructor declarator"
+msgstr "el id de plantilla `%D' se usa como un declarador"
+
+#: cp/parser.c:3627
+#, fuzzy
+msgid "ISO C++ forbids compound-literals"
+msgstr "ISO C++ prohíbe literales compuestos"
+
+#: cp/parser.c:4599
+#, fuzzy
+msgid "expression in new-declarator must have integral or enumeration type"
+msgstr "el tamaño de la matriz nueva debe tener un tipo integral"
+
+#: cp/parser.c:4775
+msgid "use of old-style cast"
+msgstr "uso de la conversión de estilo antiguo"
+
+#: cp/parser.c:5528
+#, c-format
+msgid "case label `%E' not within a switch statement"
+msgstr "la etiqueta case `%E' no se encuentra dentro de una declaración switch"
+
+#: cp/parser.c:6070
+msgid "ISO C++ forbids computed gotos"
+msgstr "ISO C++ prohíbe gotos calculados"
+
+#: cp/parser.c:6190
+msgid "extra `;'"
+msgstr ""
+
+#: cp/parser.c:6485
+msgid "mixing declarations and function-definitions is forbidden"
+msgstr ""
+
+#: cp/parser.c:6623
+#, fuzzy
+msgid "duplicate `friend'"
+msgstr "`%s' duplicado"
+
+#: cp/parser.c:6772
+#, fuzzy
+msgid "class definition may not be declared a friend"
+msgstr "la función `%D' no puede ser declarada friend"
+
+#: cp/parser.c:7086
+msgid "only constructors take base initializers"
+msgstr "solamente los constructores toman inicializadores base"
+
+#: cp/parser.c:7137
#, fuzzy
-msgid "invalid use of template `%D'"
-msgstr "uso inválido del miembro `%D'"
+msgid "anachronistic old-style base class initializer"
+msgstr "inicializador de clase base de estilo antiguo anacrónico"
-#: parse.y:2053 parse.y:2068
-msgid "sigof type specifier"
-msgstr "especificador de tipo sigof"
+#. Warn that we do not support `export'.
+#: cp/parser.c:7530
+msgid "keyword `export' not implemented, and will be ignored"
+msgstr "la palabra clave `export' no está implementada, y será ignorada"
-#: parse.y:2058
-msgid "`sigof' applied to non-aggregate expression"
-msgstr "`sigof' aplicado a una expresión no agregada"
+#. Otherwise, emit an error about the invalid digraph, but continue
+#. parsing because we got our argument list.
+#: cp/parser.c:7890
+#, fuzzy
+msgid "`<::' cannot begin a template-argument list"
+msgstr "el objeto `%E' no se puede usar como un argumento de plantilla"
-#: parse.y:2073
-msgid "`sigof' applied to non-aggregate type"
-msgstr "`sigof' aplicado a un tipo no agregado"
+#: cp/parser.c:7891
+msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'"
+msgstr ""
+
+#: cp/parser.c:7898
+msgid "(if you use `-fpermissive' G++ will accept your code)"
+msgstr ""
+
+#. Explain what went wrong.
+#: cp/parser.c:8070
+#, fuzzy
+msgid "non-template `%D' used as template"
+msgstr "se usa una no plantilla como plantilla"
-#: parse.y:2339
+#: cp/parser.c:8071
+#, fuzzy
+msgid "(use `%T::template %D' to indicate that it is a template)"
+msgstr "id de plantilla `%D' en la declaración de la plantilla primaria"
+
+#: cp/parser.c:9000
msgid "using `typename' outside of template"
msgstr "usando `typename' fuera de la plantilla"
-#: parse.y:2356
-msgid "qualified name does not name a class"
+#: cp/parser.c:9122
+#, fuzzy
+msgid "expected type-name"
+msgstr "se esperaba un nombre aquí"
+
+#: cp/parser.c:9181
+#, fuzzy
+msgid "type attributes are honored only at type definition"
+msgstr "el atributo `%s' sólo se puede aplicar a definiciones de clase"
+
+#. [namespace.udecl]
+#.
+#. A using declaration shall not name a template-id.
+#: cp/parser.c:9565
+#, fuzzy
+msgid "a template-id may not appear in a using-declaration"
+msgstr "no se permite el espacio de nombres `%D' en la declaración de uso"
+
+#: cp/parser.c:9891
+msgid "an asm-specification is not allowed on a function-definition"
msgstr ""
-#: parse.y:2417
-#, c-format
-msgid "storage class specifier `%s' not allowed after struct or class"
-msgstr "no se permite el especificador de clase de almacenamiento `%s' después de struct ó class"
+#: cp/parser.c:9893
+#, fuzzy
+msgid "attributes are not allowed on a function-definition"
+msgstr "la variable de registro global sigue a una definiciónd de función"
-#: parse.y:2419
-#, c-format
-msgid "type specifier `%s' not allowed after struct or class"
-msgstr "no se permite el especificador de tipo `%s' después de struct ó class"
+#: cp/parser.c:10026
+#, fuzzy
+msgid "attributes after parenthesized initializer ignored"
+msgstr "se ignoran los atributos en los declaradores de parámetros de matriz"
-#: parse.y:2421
-#, c-format
-msgid "type qualifier `%s' not allowed after struct or class"
-msgstr "no se permite el calificador de tipo `%s' después de struct ó class"
+#: cp/parser.c:11223
+#, fuzzy
+msgid "file ends in default argument"
+msgstr "%Hlectura de final de fichero dentro del argumento por defecto"
+
+#: cp/parser.c:11279
+#, fuzzy
+msgid "deprecated use of default argument for parameter of non-function"
+msgstr "argumento por defecto dado para el parámetro %d de `%#D'"
+
+#: cp/parser.c:11282
+#, fuzzy
+msgid "default arguments are only permitted for function parameters"
+msgstr "argumento por defecto dado para el parámetro %d de `%#D'"
-#: parse.y:2423
-msgid "no body nor ';' separates two class, struct or union declarations"
-msgstr "no hay cuerpo ni ';' separa dos declaraciones class, struct ó union"
+#: cp/parser.c:12007
+msgid "declaration of `%D' in `%D' which does not enclose `%D'"
+msgstr "la declaración de `%D' en `%D' la cual no incluye a `%D'"
-#: parse.y:2553
-msgid "no bases given following `:'"
-msgstr "no hay bases dado el siguiente `:'"
+#: cp/parser.c:12020
+#, fuzzy
+msgid "extra qualification ignored"
+msgstr "se ignora la calificación extra `%T::' en el miembro `%D'"
-#: parse.y:2584 parse.y:2599
-msgid "`%D' access"
-msgstr "acceso `%D'"
+#: cp/parser.c:12031
+#, fuzzy
+msgid "an explicit specialization must be preceded by 'template <>'"
+msgstr "especialización explícita no precedida por `template <>'"
-#: parse.y:2589
-msgid "multiple access specifiers"
-msgstr "especificadores de acceso múltiples"
+#: cp/parser.c:12311
+msgid "extra semicolon"
+msgstr ""
-#: parse.y:2607
-msgid "multiple `virtual' specifiers"
-msgstr "especificadores `virtual' múltiples"
+#: cp/parser.c:12329
+msgid "a class-key must be used when declaring a friend"
+msgstr ""
-#: parse.y:2644
-msgid "missing ';' before right brace"
-msgstr "falta ';' antes de la llave derecha"
+#: cp/parser.c:12360
+#, fuzzy
+msgid "friend declaration does not name a class or function"
+msgstr "la declaración friend no está en una definición de clase"
-#: parse.y:2865
-msgid "ISO C++ forbids array dimensions with parenthesized type in new"
-msgstr "ISO C++ prohíbe las dimensiones de matriz con tipos con paréntesis en new"
+#: cp/parser.c:12531
+msgid "pure-specifier on function-definition"
+msgstr ""
-#: parse.y:3152 parse.y:3172 parse.y:3181 parse.y:3210
-msgid "`%T' is not a class or namespace"
-msgstr "`%T' no es una claso o un espacio de nombres"
+#: cp/parser.c:12804
+#, fuzzy
+msgid "keyword `typename' not allowed outside of templates"
+msgstr "usando `typename' fuera de la plantilla"
-#: parse.y:3377
-msgid "ISO C++ forbids label declarations"
-msgstr "ISO C++ prohíbe declaraciones etiquetadas"
+#: cp/parser.c:12806
+msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)"
+msgstr ""
-#: parse.y:3537
-msgid "ISO C++ forbids computed gotos"
-msgstr "ISO C++ prohíbe gotos calculados"
+#: cp/parser.c:13624
+#, fuzzy
+msgid "reference to `%D' is ambiguous"
+msgstr "el uso de `%D' es ambiguo"
-#: parse.y:3545
-msgid "label must be followed by statement"
-msgstr "la etiqueta debe ser seguida de una declaración"
+#: cp/parser.c:13798
+#, fuzzy
+msgid "too few template-parameter-lists"
+msgstr "muy pocas listas de parámetros de plantilla en la declaración de `%D'"
-#: parse.y:3590
-msgid "must have at least one catch per try block"
-msgstr "se debe tener por lo menos un catch por cada bloque try"
+#. Otherwise, there are too many template parameter lists. We have
+#. something like:
+#.
+#. template <class T> template <class U> void S::f();
+#: cp/parser.c:13813
+#, fuzzy
+msgid "too many template-parameter-lists"
+msgstr "demasiadas listas de parámetros de plantilla en la declaración de `%D'"
-#: parse.y:3650
-msgid "ISO C++ forbids compound statements inside for initializations"
-msgstr "ISO C++ prohíbe las declaraciones compuestas internas para inicializaciones"
+#. If begin_function_definition didn't like the definition, skip
+#. the entire function.
+#: cp/parser.c:14090
+#, fuzzy
+msgid "invalid function declaration"
+msgstr "Declaración inválida"
-#. This helps us recover from really nasty
-#. parse errors, for example, a missing right
-#. parenthesis.
-#: parse.y:3737 parse.y:3747
-msgid "possibly missing ')'"
-msgstr "posible ')' faltante"
+#. Issue an error message.
+#: cp/parser.c:14127
+#, fuzzy
+msgid "named return values are no longer supported"
+msgstr "--driver ya no tiene soporte"
-#: parse.y:3840
-msgid "type specifier omitted for parameter"
-msgstr "especificador de tipo omitido para el parámetro"
+#: cp/parser.c:14455
+#, fuzzy
+msgid "`>>' should be `> >' within a nested template argument list"
+msgstr "`>>' debe ser `> >' en el nombre de clase de la plantilla"
-#: parse.y:3849
-#, c-format
-msgid "`%E' is not a type, use `typename %E' to make it one"
-msgstr "`%E' no es un tipo, use `typename %E' para hacerlo un tipo"
+#. If this is not a nested template argument list, the '>>' is
+#. a typo for '>'. Emit an error message and continue.
+#: cp/parser.c:14463
+msgid "spurious `>>', use `>' to terminate a template argument list"
+msgstr ""
-#: parse.y:3851
-msgid "no type `%D' in `%T'"
-msgstr "no hay un tipo `%D' en `%T'"
+#: cp/parser.c:14950
+msgid "`%s' tag used in naming `%#T'"
+msgstr "se usó la marca `%s' al nombrar a`%#T'"
-#: parse.y:3854
-#, c-format
-msgid "type specifier omitted for parameter `%E'"
-msgstr "se omitió el especificador para el parámetro `%E'"
+#: cp/parser.c:14970
+#, fuzzy
+msgid "%D redeclared with different access"
+msgstr "`%#D' redeclarado como un tipo diferente de símbolo"
-#: parse.y:3862
-msgid "'%D' is used as a type, but is not defined as a type."
-msgstr "se usa '%D' como un tipo, pero no está definido como un tipo."
+#: cp/parser.c:14987
+msgid "`template' (as a disambiguator) is only allowed within templates"
+msgstr ""
-#: cp/pt.c:284
+#: cp/pt.c:243
msgid "data member `%D' cannot be a member template"
msgstr "los datos miembros `%D' no puede ser una plantilla miembro"
-#: cp/pt.c:296
+#: cp/pt.c:255
msgid "invalid member template declaration `%D'"
msgstr "declaración de la plantilla miembro `%D' inválida"
-#: cp/pt.c:691
+#: cp/pt.c:637
msgid "explicit specialization in non-namespace scope `%D'"
msgstr "especialización explícita en el ámbito `%D' que no es espacio de nombres"
-#: cp/pt.c:703
+#: cp/pt.c:649
msgid "enclosing class templates are not explicitly specialized"
msgstr "las plantillas de clase contenidas no son especializadas explícitamente"
-#: cp/pt.c:792 cp/pt.c:833
+#: cp/pt.c:739 cp/pt.c:780
msgid "specializing `%#T' in different namespace"
msgstr "especializando `%#T' en diferentes espacios de nombres"
-#: cp/pt.c:793 cp/pt.c:834
+#: cp/pt.c:740 cp/pt.c:781
msgid " from definition of `%#D'"
msgstr " de la definición de `%#D'"
-#: cp/pt.c:801
+#: cp/pt.c:748
msgid "specialization of `%T' after instantiation"
msgstr "especialización de `%T' después de la instanciación"
-#: cp/pt.c:848
+#: cp/pt.c:795
msgid "specialization `%T' after instantiation `%T'"
msgstr "especialización de `%T' después de la instanciación `%T'"
-#: cp/pt.c:860
+#: cp/pt.c:807
msgid "explicit specialization of non-template `%T'"
msgstr "especialización explícita de `%T' que no es plantilla"
-#: cp/pt.c:992
+#: cp/pt.c:1067
msgid "specialization of %D after instantiation"
msgstr "especialización de %D después de la instanciación"
-#: cp/pt.c:1096
+#: cp/pt.c:1192
msgid "%s %+#D"
msgstr "%s %+#D"
-#: cp/pt.c:1147
+#: cp/pt.c:1241
msgid "`%D' is not a function template"
msgstr "`%D' no es una plantilla de función"
-#: cp/pt.c:1286
+#: cp/pt.c:1380
msgid "template-id `%D' for `%+D' does not match any template declaration"
msgstr "el id de plantilla `%D' para `%+D' no coincide con ninguna declaración de plantilla"
-#: cp/pt.c:1294
+#: cp/pt.c:1388
msgid "ambiguous template specialization `%D' for `%+D'"
msgstr "especialización de plantilla ambigua `%D' para `%+D'"
#. This case handles bogus declarations like template <>
#. template <class T> void f<int>();
-#: cp/pt.c:1521 cp/pt.c:1595
+#: cp/pt.c:1611 cp/pt.c:1685
msgid "template-id `%D' in declaration of primary template"
msgstr "id de plantilla `%D' en la declaración de la plantilla primaria"
-#: cp/pt.c:1534
+#: cp/pt.c:1624
msgid "template parameter list used in explicit instantiation"
msgstr "se usó una lista de parámetros de plantilla en una instanciación explícita"
-#: cp/pt.c:1540
+#: cp/pt.c:1630
msgid "definition provided for explicit instantiation"
msgstr "se provee una definición para instanciación explícita"
-#: cp/pt.c:1546
+#: cp/pt.c:1636
msgid "too many template parameter lists in declaration of `%D'"
msgstr "demasiadas listas de parámetros de plantilla en la declaración de `%D'"
-#: cp/pt.c:1562
+#: cp/pt.c:1652
msgid "too few template parameter lists in declaration of `%D'"
msgstr "muy pocas listas de parámetros de plantilla en la declaración de `%D'"
-#: cp/pt.c:1579
+#: cp/pt.c:1669
msgid "explicit specialization not preceded by `template <>'"
msgstr "especialización explícita no precedida por `template <>'"
-#: cp/pt.c:1592
+#: cp/pt.c:1682
msgid "partial specialization `%D' of function template"
msgstr "especialización parcial `%D' de la plantilla de función"
-#: cp/pt.c:1624
+#: cp/pt.c:1714
msgid "default argument specified in explicit specialization"
msgstr "se especificó un argumento por defecto en la especialización explícita"
-#: cp/pt.c:1628
+#: cp/pt.c:1718
msgid "template specialization with C linkage"
msgstr "especialización de plantilla con enlace C"
@@ -16712,99 +16303,107 @@ msgstr "especialización de plantilla con enlace C"
#. program is ill-formed.
#.
#. Similar language is found in [temp.explicit].
-#: cp/pt.c:1715
+#: cp/pt.c:1802
msgid "specialization of implicitly-declared special member function"
msgstr "especialización de la función miembro especial declarada implícitamente"
-#: cp/pt.c:1759
+#: cp/pt.c:1846
msgid "no member function `%D' declared in `%T'"
msgstr "la función no miembro `%D' se declaró en `%T'"
#. There are two many template parameter lists.
-#: cp/pt.c:1909
+#: cp/pt.c:2001
msgid "too many template parameter lists in declaration of `%T'"
msgstr "demasiadas listas de parámetros de plantilla en la declaración de `%T'"
-#: cp/pt.c:2005
+#: cp/pt.c:2094
msgid " shadows template parm `%#D'"
msgstr " oscurece el parámetro de plantilla `%#D'"
-#: cp/pt.c:2409
+#: cp/pt.c:2491
msgid "template parameters not used in partial specialization:"
msgstr "no se usan los parámetros de plantilla en la especialización parcial:"
-#: cp/pt.c:2413
+#: cp/pt.c:2495
msgid " `%D'"
msgstr " `%D'"
-#: cp/pt.c:2425
+#: cp/pt.c:2507
msgid "partial specialization `%T' does not specialize any template arguments"
msgstr "la especialización parcial `%T' no especializa ningún argumento de plantilla"
-#: cp/pt.c:2450
+#: cp/pt.c:2532
#, c-format
msgid "template argument `%E' involves template parameter(s)"
msgstr "el argumento de plantilla `%E' involucra a el(los) parámetro(s) de plantilla"
-#: cp/pt.c:2494
+#: cp/pt.c:2576
msgid "type `%T' of template argument `%E' depends on template parameter(s)"
msgstr "el tipo `%T' del argumento de plantilla `%E' depende de el(los) parámetro(s) de plantilla"
-#: cp/pt.c:2582
+#: cp/pt.c:2661
msgid "no default argument for `%D'"
msgstr "no hay un argumento por defecto para `%D'"
-#: cp/pt.c:2735
+#: cp/pt.c:2810
msgid "template with C linkage"
msgstr "plantilla con enlace C"
-#: cp/pt.c:2738
+#: cp/pt.c:2813
msgid "template class without a name"
msgstr "clase de plantilla sin nombre"
-#: cp/pt.c:2815
+#. [temp.mem]
+#.
+#. A destructor shall not be a member template.
+#: cp/pt.c:2820
+#, fuzzy
+msgid "destructor `%D' declared as member template"
+msgstr "los datos miembros `%D' no puede ser una plantilla miembro"
+
+#: cp/pt.c:2900
msgid "`%D' does not declare a template type"
msgstr "`%D' no declara un tipo de plantilla"
-#: cp/pt.c:2821
+#: cp/pt.c:2906
msgid "template definition of non-template `%#D'"
msgstr "definición de plantilla de `%#D' que no es plantilla"
-#: cp/pt.c:2862
+#: cp/pt.c:2947
msgid "expected %d levels of template parms for `%#D', got %d"
msgstr "se esperaban %d niveles de parámetros de plantilla para `%#D', se obtuvieron %d"
-#: cp/pt.c:2874
+#: cp/pt.c:2959
msgid "got %d template parameters for `%#D'"
msgstr "se obtuvieron %d parámetros de plantilla para `%#D'"
-#: cp/pt.c:2877
+#: cp/pt.c:2962
msgid "got %d template parameters for `%#T'"
msgstr "se obtuvieron %d parámetros de plantilla para `%#T'"
-#: cp/pt.c:2879
+#: cp/pt.c:2964
#, c-format
msgid " but %d required"
msgstr " pero se requieren %d"
-#: cp/pt.c:2962
+#: cp/pt.c:3042
msgid "`%T' is not a template type"
msgstr "`%T' no es un tipo plantilla"
-#: cp/pt.c:2978
+#: cp/pt.c:3058
msgid "previous declaration `%D'"
msgstr "declaración previa de `%D'"
-#: cp/pt.c:2979
+#: cp/pt.c:3059
#, c-format
msgid "used %d template parameter%s instead of %d"
msgstr "se usaron %d parámetro%s de plantilla en lugar de %d"
-#: cp/pt.c:2995
+#: cp/pt.c:3075
msgid "template parameter `%#D'"
msgstr "parámetro de plantilla `%#D'"
-#: cp/pt.c:2996
+#: cp/pt.c:3076
msgid "redeclared here as `%#D'"
msgstr "redeclarado aquí como `%#D'"
@@ -16812,716 +16411,743 @@ msgstr "redeclarado aquí como `%#D'"
#.
#. A template-parameter may not be given default arguments
#. by two different declarations in the same scope.
-#: cp/pt.c:3006
+#: cp/pt.c:3086
msgid "redefinition of default argument for `%#D'"
msgstr "redefinición del argumento por defecto para `%#D'"
-#: cp/pt.c:3007
-msgid " original definition appeared here"
+#: cp/pt.c:3087
+#, fuzzy
+msgid "%J original definition appeared here"
msgstr " la definición original apareció aquí"
-#: cp/pt.c:3100
+#: cp/pt.c:3235
#, c-format
msgid "`%E' is not a valid template argument"
msgstr "`%E' no es un argumento de plantilla válido"
-#: cp/pt.c:3104
+#: cp/pt.c:3239
msgid "it must be the address of a function with external linkage"
msgstr "debe ser la dirección de una función con enlace externo"
-#: cp/pt.c:3106
+#: cp/pt.c:3241
msgid "it must be the address of an object with external linkage"
msgstr "debe ser la dirección de un objeto con enlace externo"
-#: cp/pt.c:3110
+#: cp/pt.c:3244
msgid "it must be a pointer-to-member of the form `&X::Y'"
msgstr "debe ser un puntero-a-miembro de la forma `&X::Y'"
-#: cp/pt.c:3121
+#: cp/pt.c:3255
#, c-format
msgid "string literal %E is not a valid template argument because it is the address of an object with static linkage"
msgstr "la cadena literal %E no es un argumento válido de plantilla porque es la dirección de un objeto con enlace estático"
-#: cp/pt.c:3133
+#: cp/pt.c:3270
#, c-format
msgid "address of non-extern `%E' cannot be used as template argument"
msgstr "no se puede usar la dirección de `%E' que no es externo como un argumento de plantilla"
-#: cp/pt.c:3144
+#: cp/pt.c:3279
#, c-format
msgid "non-constant `%E' cannot be used as template argument"
msgstr "`%E' que no es constante no se puede usar como un argumento de plantilla"
-#: cp/pt.c:3151
-#, c-format
-msgid "object `%E' cannot be used as template argument"
+#: cp/pt.c:3287
+#, fuzzy
+msgid "type '%T' cannot be used as a value for a non-type template-parameter"
msgstr "el objeto `%E' no se puede usar como un argumento de plantilla"
-#: cp/pt.c:3526
+#: cp/pt.c:3290
+#, fuzzy
+msgid "invalid use of '%D' as a non-type template-argument"
+msgstr "argumento de la plantilla por defecto inválido"
+
+#: cp/pt.c:3292
+#, fuzzy, c-format
+msgid "invalid use of '%E' as a non-type template-argument"
+msgstr "argumento de la plantilla por defecto inválido"
+
+#: cp/pt.c:3657
#, c-format
msgid "to refer to a type member of a template parameter, use `typename %E'"
msgstr "para hacer referencia a un tipo miembro de un parámetro de plantilla, use `typename %E'"
-#: cp/pt.c:3539 cp/pt.c:3555 cp/pt.c:3594
+#: cp/pt.c:3670 cp/pt.c:3688 cp/pt.c:3727
msgid "type/value mismatch at argument %d in template parameter list for `%D'"
msgstr "no coincide el tipo/valor en el argumento %d en la lista de parámetros de plantilla para `%D'"
-#: cp/pt.c:3542
+#: cp/pt.c:3673
msgid " expected a constant of type `%T', got `%T'"
msgstr " se esperaba una constante de tipo `%T', se obtuvo `%T'"
-#: cp/pt.c:3546
+#: cp/pt.c:3677
+#, fuzzy, c-format
+msgid " expected a class template, got `%E'"
+msgstr " se esperaba una plantilla de clase, se obtuvo `%T'"
+
+#: cp/pt.c:3679
#, c-format
msgid " expected a type, got `%E'"
msgstr " se esperaba un tipo, se obtuvo `%E'"
-#: cp/pt.c:3558
+#: cp/pt.c:3691
msgid " expected a type, got `%T'"
msgstr " se esperaba un tipo, se obtuvo `%T'"
-#: cp/pt.c:3560
+#: cp/pt.c:3693
msgid " expected a class template, got `%T'"
msgstr " se esperaba una plantilla de clase, se obtuvo `%T'"
-#: cp/pt.c:3596
+#: cp/pt.c:3729
msgid " expected a template of type `%D', got `%D'"
msgstr " se esperaba una plantilla de tipo `%D', se obtuvo `%D'"
-#: cp/pt.c:3618
-msgid "template-argument `%T' uses anonymous type"
-msgstr "el argumento de plantilla `%T' usa un tipo anónimo"
-
-#: cp/pt.c:3621
-msgid "template-argument `%T' uses local type `%T'"
-msgstr "el argumento de plantilla `%T' usa el tipo local `%T'"
-
-#: cp/pt.c:3631
-msgid "template-argument `%T' is a variably modified type"
-msgstr "el argumento de plantilla `%T' es un tipo modificado variablemente"
-
-#: cp/pt.c:3666
+#: cp/pt.c:3764
msgid "could not convert template argument `%E' to `%T'"
msgstr "no se puede convertir el argumento de plantilla `%E' a `%T'"
-#: cp/pt.c:3710
+#: cp/pt.c:3804
#, c-format
msgid "wrong number of template arguments (%d, should be %d)"
msgstr "número erróneo de argumentos de plantilla (%d, debería ser %d)"
-#: cp/pt.c:3714
+#: cp/pt.c:3808
msgid "provided for `%D'"
msgstr "provisto por `%D'"
-#: cp/pt.c:3761
+#: cp/pt.c:3836
#, c-format
msgid "template argument %d is invalid"
msgstr "el argumento de plantilla %d es inválido"
-#: cp/pt.c:3997
+#: cp/pt.c:4057
msgid "non-template used as template"
msgstr "se usa una no plantilla como plantilla"
-#: cp/pt.c:4139
-msgid "`%T' is not a template"
-msgstr "`%T' no es una plantilla"
-
-#: cp/pt.c:4152
+#: cp/pt.c:4197
msgid "non-template type `%T' used as a template"
msgstr "se usa el tipo `%T' que no es plantilla como una plantilla"
-#: cp/pt.c:4154
+#: cp/pt.c:4199
msgid "for template declaration `%D'"
msgstr "para la declaración de plantilla `%D'"
-#: cp/pt.c:4770
+#: cp/pt.c:4846
msgid "template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN to increase the maximum) instantiating `%D'"
msgstr "la profundidad de instanciación de la plantilla excede el máximo de %d (use -ftemplate-depth-NN para incrementar el máximo) al instanciar `%D'"
-#: cp/pt.c:5247
+#: cp/pt.c:5286
msgid "ambiguous class template instantiation for `%#T'"
msgstr "instanciación de plantilla clase ambigua para `%#T'"
-#: cp/pt.c:5254
+#: cp/pt.c:5292
msgid "%s %+#T"
msgstr "%s %+#T"
-#: cp/pt.c:6284 cp/pt.c:6396
+#: cp/pt.c:6291 cp/pt.c:6411
msgid "instantiation of `%D' as type `%T'"
msgstr "instanciación de `%D' como tipo `%T'"
-#: cp/pt.c:6440
+#: cp/pt.c:6453
msgid "invalid parameter type `%T'"
msgstr "tipo de parámetro `%T' inválido"
-#: cp/pt.c:6442
+#: cp/pt.c:6455
msgid "in declaration `%D'"
msgstr "en la declaración `%D'"
-#: cp/pt.c:6517
+#: cp/pt.c:6529
msgid "creating pointer to member function of non-class type `%T'"
msgstr "creando un puntero a función miembro del tipo `%T' que no es clase"
-#: cp/pt.c:6680
+#: cp/pt.c:6668
msgid "creating array with size zero"
msgstr "creando la matriz con tamaño cero"
-#: cp/pt.c:6694
+#: cp/pt.c:6682
#, c-format
msgid "creating array with size zero (`%E')"
msgstr "creando la matriz con tamaño cero (`%E')"
-#: cp/pt.c:6933
+#: cp/pt.c:6921
msgid "forming reference to void"
msgstr "formando la referencia a void"
-#: cp/pt.c:6935
+#: cp/pt.c:6923
msgid "forming %s to reference type `%T'"
msgstr "formando %s para referenciar al tipo `%T'"
-#: cp/pt.c:6973
+#: cp/pt.c:6960
msgid "creating pointer to member of non-class type `%T'"
msgstr "creando un puntero al miembro del tipo `%T' que no es clase"
-#: cp/pt.c:6979
+#: cp/pt.c:6966
msgid "creating pointer to member reference type `%T'"
msgstr "creando un puntero al miembro de referencia de tipo `%T'"
-#: cp/pt.c:7057
+#: cp/pt.c:7052
msgid "creating array of `%T'"
msgstr "creando la matriz de `%T'"
-#: cp/pt.c:7100
+#: cp/pt.c:7058
+#, fuzzy
+msgid "creating array of `%T', which is an abstract class type"
+msgstr "inicializador sin nombre para `%T', el cual no tiene una clase base"
+
+#: cp/pt.c:7102
msgid "`%T' is not a class, struct, or union type"
msgstr "`%T' no es de tipo clase, struct o union"
-#: cp/pt.c:7213
+#: cp/pt.c:7215
#, c-format
msgid "use of `%s' in template"
msgstr "uso de `%s' en la plantilla"
-#: cp/pt.c:7975
-msgid "type `%T' composed from a local class is not a valid template-argument"
-msgstr "el tipo `%T' compuesto desde una clase local no es un argumento de plantilla válido"
+#: cp/pt.c:7327
+#, fuzzy, c-format
+msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type"
+msgstr "se usa '%D' como un tipo, pero no está definido como un tipo."
+
+#: cp/pt.c:7329
+#, fuzzy, c-format
+msgid "say `typename %E' if a type is meant"
+msgstr " (use `typename %T::%D' si eso es lo que quería)"
+
+#: cp/pt.c:8586
+#, fuzzy
+msgid "`%T' uses anonymous type"
+msgstr "el argumento de plantilla `%T' usa un tipo anónimo"
+
+#: cp/pt.c:8588
+#, fuzzy
+msgid "`%T' uses local type `%T'"
+msgstr "el argumento de plantilla `%T' usa el tipo local `%T'"
-#: cp/pt.c:7976
+#: cp/pt.c:8596
+#, fuzzy
+msgid "`%T' is a variably modified type"
+msgstr "el argumento de plantilla `%T' es un tipo modificado variablemente"
+
+#: cp/pt.c:8607
+#, fuzzy, c-format
+msgid "integral expression `%E' is not constant"
+msgstr "el tamaño del miembro `%D' no es constante"
+
+#: cp/pt.c:8612
msgid " trying to instantiate `%D'"
msgstr " tratando de instanciar `%D'"
-#: cp/pt.c:8421
+#: cp/pt.c:9125
msgid "incomplete type unification"
msgstr "unificación de tipo incompleto"
-#: cp/pt.c:9387
+#: cp/pt.c:10072
#, c-format
msgid "use of `%s' in template type unification"
msgstr "uso de `%s' en la unificación de tipo de la plantilla"
-#: cp/pt.c:9821 cp/pt.c:9893
+#: cp/pt.c:10506 cp/pt.c:10578
msgid "explicit instantiation of non-template `%#D'"
msgstr "instanciación explícita de `%#D' que no es plantilla"
-#: cp/pt.c:9837 cp/pt.c:9888
+#: cp/pt.c:10522 cp/pt.c:10573
msgid "no matching template for `%D' found"
msgstr "no se encuentra una plantilla coincidente para `%D'"
-#: cp/pt.c:9843
+#: cp/pt.c:10528
msgid "explicit instantiation of `%#D'"
msgstr "instanciación explícita de `%#D'"
-#: cp/pt.c:9880
+#: cp/pt.c:10565
msgid "duplicate explicit instantiation of `%#D'"
msgstr "instanciación explícita duplicada de `%#D'"
-#: cp/pt.c:9905
+#: cp/pt.c:10587
msgid "ISO C++ forbids the use of `extern' on explicit instantiations"
msgstr "ISO C++ prohíbe el uso de `extern' en instanciaciones explícitas"
-#: cp/pt.c:9909 cp/pt.c:9999
+#: cp/pt.c:10591 cp/pt.c:10672
msgid "storage class `%D' applied to template instantiation"
msgstr "clase de almacenamiento `%D' aplicada a la instanciación de una plantilla"
-#: cp/pt.c:9966
+#: cp/pt.c:10644
msgid "explicit instantiation of non-template type `%T'"
msgstr "instanciación explícita del tipo `%T' del tipo no plantilla"
-#: cp/pt.c:9980
+#: cp/pt.c:10653
msgid "explicit instantiation of `%#T' before definition of template"
msgstr "instanciación explícita de `%#T' antes de la definición de la plantilla"
-#: cp/pt.c:9988
+#: cp/pt.c:10661
#, c-format
msgid "ISO C++ forbids the use of `%s' on explicit instantiations"
msgstr "ISO C++ prohíbe el uso de `%s' en las instanciaciones explícitas"
-#: cp/pt.c:10032
+#: cp/pt.c:10705
msgid "duplicate explicit instantiation of `%#T'"
msgstr "instanciación explícita duplicada de `%#T'"
-#: cp/pt.c:10412
+#: cp/pt.c:11086
msgid "explicit instantiation of `%D' but no definition available"
msgstr "instanciación explícita de `%D' pero no hay una definición disponible"
-#: cp/pt.c:10815
+#: cp/pt.c:11520
msgid "`%#T' is not a valid type for a template constant parameter"
msgstr "`%#T' no es un tipo válido para un parámetro constante de plantilla"
-#: cp/repo.c:271
+#: cp/repo.c:259
msgid "-frepo must be used with -c"
msgstr "-frepo debe ser usado con -c"
-#: cp/repo.c:361
+#: cp/repo.c:346
#, c-format
msgid "mysterious repository information in %s"
msgstr "información de repositorio misteriosa en %s"
-#: cp/repo.c:376
+#: cp/repo.c:361
#, c-format
msgid "can't create repository information file `%s'"
msgstr "no se puede crear el fichero de información de repositorio `%s'"
-#: cp/rtti.c:240
+#: cp/rtti.c:248
msgid "cannot use typeid with -fno-rtti"
msgstr "no se puede usar typeid sin -fno-rtti"
-#: cp/rtti.c:246
+#: cp/rtti.c:254
msgid "must #include <typeinfo> before using typeid"
msgstr "debe hacer #include <typeinfo> antes de usar typeid"
-#: cp/rtti.c:320
+#: cp/rtti.c:326
msgid "cannot create type information for type `%T' because its size is variable"
msgstr "no se puede crear la información de tipo para el tipo `%T' porque su tamaño es variable"
-#: cp/rtti.c:584 cp/rtti.c:598
+#: cp/rtti.c:580 cp/rtti.c:594
msgid "dynamic_cast of `%#D' to `%#T' can never succeed"
msgstr "dynamic_cast de `%#D' a `%#T' nunca podrá tener éxito"
-#: cp/rtti.c:674
+#: cp/rtti.c:675
msgid "cannot dynamic_cast `%E' (of type `%#T') to type `%#T' (%s)"
msgstr "no se puede hacer dynamic_cast `%E' (de tipo `%#T') al tipo `%#T' (%s)"
-#: cp/search.c:332
+#: cp/search.c:306
msgid "`%T' is an ambiguous base of `%T'"
msgstr "`%T' es una base ambigua de `%T'"
-#: cp/search.c:350
+#: cp/search.c:324
msgid "`%T' is an inaccessible base of `%T'"
msgstr "`%T' es una base inaccesible de `%T'"
-# No me gusta mucho esta traducción. - cfuga
-#
-#. At parse time, we don't want to give this error, since
-#. we won't have enough state to make this kind of
-#. decision properly. But there are times (e.g., with
-#. enums in nested classes) when we do need to call
-#. this fn at parse time. So, in those cases, we pass
-#. complain as a 0 and just return a NULL_TREE.
-#: cp/search.c:1638
-msgid "assignment to non-static member `%D' of enclosing class `%T'"
-msgstr "asignación al miembro `%D' que no es static de la clase incluyente `%T'"
-
-#: cp/search.c:2050
-msgid "adjusting pointers for covariant returns"
-msgstr "ajustando los punteros para devoluciones covariantes"
-
-#: cp/search.c:2054 cp/search.c:2061
+#: cp/search.c:1756
msgid "invalid covariant return type for `%#D'"
msgstr "tipo de devolución covariante inválido para `%#D'"
-#: cp/search.c:2055
-msgid " overriding `%#D' (must be pointer or reference to class)"
-msgstr " sustituyendo a `%#D' (debe ser puntero o referencia a una clase)"
-
-#: cp/search.c:2062
-msgid " overriding `%#D' (must use pointer or reference)"
-msgstr " sustituyendo a `%#D' (debe ser puntero o referencia)"
+#: cp/search.c:1757 cp/search.c:1763
+msgid " overriding `%#D'"
+msgstr " sustituyendo `%#D'"
-#: cp/search.c:2067
+#: cp/search.c:1761
msgid "conflicting return type specified for `%#D'"
msgstr "tipos de devolución en conflicto especificados para `%#D'"
-#: cp/search.c:2068
-msgid " overriding `%#D'"
-msgstr " sustituyendo `%#D'"
-
-#: cp/search.c:2077
+#: cp/search.c:1775
#, c-format
msgid "looser throw specifier for `%#F'"
msgstr "especificador thrown más flexible para `%#F'"
-#: cp/search.c:2078
+#: cp/search.c:1776
#, c-format
msgid " overriding `%#F'"
msgstr " sustituyendo `%#F'"
#. A static member function cannot match an inherited
#. virtual member function.
-#: cp/search.c:2167
+#: cp/search.c:1866
msgid "`%#D' cannot be declared"
msgstr "`%#D' no puede ser declarado"
-#: cp/search.c:2168
+#: cp/search.c:1867
msgid " since `%#D' declared in base class"
msgstr " ya que se declaró `%#D' en la clase base"
-#: cp/search.c:2309
+#: cp/search.c:1944
msgid "`%#D' needs a final overrider"
msgstr "`%#D' necesita un impositor final"
-#: cp/semantics.c:919
+#: cp/semantics.c:1092
#, c-format
msgid "type of asm operand `%E' could not be determined"
msgstr "no se puede determinar el tipo del operando asm `%E'"
-#: cp/semantics.c:1051
-msgid "ISO C++ does not permit named return values"
-msgstr "ISO C++ no permite valores nombrados de devolución"
+#: cp/semantics.c:1233
+msgid "invalid use of member `%D' in static member function"
+msgstr "uso inválido del miembro `%D' en la función miembro static"
-#: cp/semantics.c:1060
-msgid "return identifier `%D' already in place"
-msgstr "el identificador de devolución `%D' ya está en su lugar"
+#: cp/semantics.c:1237 cp/semantics.c:1276
+msgid "from this location"
+msgstr ""
-#: cp/semantics.c:1068
-msgid "can't redefine default return value for constructors"
-msgstr "no se puede redefinir el valor por defecto de devoluciòn para los constructores"
+#: cp/semantics.c:1275
+#, fuzzy
+msgid "object missing in reference to `%D'"
+msgstr "falta un objeto en el uso de `%E'"
-#: cp/semantics.c:1100
-msgid "only constructors take base initializers"
-msgstr "solamente los constructores toman inicializadores base"
+#: cp/semantics.c:1721
+#, fuzzy
+msgid "arguments to destructor are not allowed"
+msgstr "el argumento para el atributo `%s' es más grande que %d"
-#: cp/semantics.c:1343
+#: cp/semantics.c:1769
msgid "`this' is unavailable for static member functions"
msgstr "`this' no está disponible para funciones miembro static"
-#: cp/semantics.c:1349
+#: cp/semantics.c:1775
msgid "invalid use of `this' in non-member function"
msgstr "uso inválido de `this' en la función no miembro"
-#: cp/semantics.c:1351
+#: cp/semantics.c:1777
msgid "invalid use of `this' at top level"
msgstr "uso inválido de `this' en el nivel principal"
-#: cp/semantics.c:1381
-msgid "calling type `%T' like a method"
-msgstr "llamando al tipo `%T' como un método"
-
-#: cp/semantics.c:1419
-msgid "destructor specifier `%T::~%T()' must have matching names"
-msgstr "el especificador del destructor `%T::~%T()' debe tener nombres coincidentes"
+#: cp/semantics.c:1801
+#, fuzzy
+msgid "invalid qualifying scope in pseudo-destructor name"
+msgstr "calificadores inválidos en el tipo de función no miembro"
-#: cp/semantics.c:1425
+#: cp/semantics.c:1807
msgid "`%E' is not of type `%T'"
msgstr "`%E' no es de tipo `%T'"
-#: cp/semantics.c:1613
+#: cp/semantics.c:1918
msgid "template type parameters must use the keyword `class' or `typename'"
msgstr "los parámetros de tipo plantilla debe usar la palabra clave `class' o `typename'"
-#: cp/semantics.c:1652
-msgid "invalid default template argument"
-msgstr "argumento de la plantilla por defecto inválido"
+#: cp/semantics.c:1962
+#, fuzzy
+msgid "invalid use of type `%T' as a default value for a template template-parameter"
+msgstr "uso inválido del parámetro de tipo plantilla"
+
+#: cp/semantics.c:1965
+#, fuzzy
+msgid "invalid use of `%D' as a default value for a template template-parameter"
+msgstr "uso inválido del parámetro de tipo plantilla"
+
+#: cp/semantics.c:1969
+#, fuzzy
+msgid "invalid default argument for a template template parameter"
+msgstr "uso inválido del parámetro de tipo plantilla"
-#: cp/semantics.c:1694
+#: cp/semantics.c:2004
msgid "definition of `%#T' inside template parameter list"
msgstr "la definición de `%#T' dentro de la lista de parámetros de plantilla"
-#: cp/semantics.c:1710
+#: cp/semantics.c:2015
msgid "invalid definition of qualified type `%T'"
msgstr "definición inválida del tipo calificado `%T'"
-#: cp/semantics.c:2053
+#: cp/semantics.c:2030
+msgid "previous definition of `%#T'"
+msgstr "definición previa de `%#T'"
+
+#: cp/semantics.c:2225
msgid "invalid base-class specification"
msgstr "especificación de clase base inválida"
-#: cp/semantics.c:2062
+#: cp/semantics.c:2234
msgid "base class `%T' has cv qualifiers"
msgstr "la clase base `%T' tiene calificadores cv"
-#: cp/semantics.c:2093
+#: cp/semantics.c:2266
msgid "multiple declarators in template declaration"
msgstr "múltiples declaradores en una declaración de plantilla"
-#: cp/semantics.c:2120
-#, c-format
-msgid "type of `%E' is unknown"
-msgstr "el tipo de '%E' es desconocido"
-
-#: cp/spew.c:225
-#, c-format
-msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
-msgstr "el nombre de identificador `%s' causa conflictos con la estrategia interna de nombrado del C++ de GNU"
-
-#: cp/spew.c:1002 cp/spew.c:1340
-msgid "parse error at end of saved function text"
-msgstr "error de decodificación al final del texto de la función guardada"
+#: cp/semantics.c:2277
+#, fuzzy
+msgid "incomplete type `%T' used in nested name specifier"
+msgstr "el tipo incompleto `%T' no se puede utilizar para nombrar un ámbito"
-#: cp/spew.c:1090 cp/spew.c:1178
-msgid "%Hend of file read inside definition"
-msgstr "%Hlectura de final de fichero dentro de la definición"
+#: cp/semantics.c:2279 cp/typeck.c:1616
+msgid "`%D' is not a member of `%T'"
+msgstr "`%D' no es un miembro de `%T'"
-#: cp/spew.c:1121
-msgid "parse error in method specification"
-msgstr "error de decodificación en la especificación del método"
+#: cp/semantics.c:2282
+#, fuzzy
+msgid "`%D' is not a member of `%D'"
+msgstr "`%D' no es un miembro de `%T'"
-#: cp/spew.c:1161
-msgid "function body for constructor missing"
-msgstr "falta el cuerpo de la función para el constructor"
+#: cp/semantics.c:2400
+msgid "template parameter `%D' of type `%T' is not allowed in an integral constant expression because it is not of integral or enumeration type"
+msgstr ""
-#: cp/spew.c:1262
-msgid "%Hend of file read inside default argument"
-msgstr "%Hlectura de final de fichero dentro del argumento por defecto"
+#: cp/semantics.c:2553
+#, fuzzy
+msgid "`%D' cannot appear in a constant-expression"
+msgstr "el tamaño de la matriz `%D' no es una expresion constante integral"
-#: cp/spew.c:1419
-msgid "circular dependency in default args of `%#D'"
-msgstr "dependencia circular en los argumentos por defecto de `%#D'"
+#: cp/semantics.c:2562
+msgid "use of namespace `%D' as expression"
+msgstr "uso del espacio de nombres `%D' como una expresión"
-#: cp/spew.c:1483
-msgid "invalid type `%T' for default argument to `%T'"
-msgstr "tipo `%T' inválido para el argumento por defecto de `%T'"
+#: cp/semantics.c:2567
+msgid "use of class template `%T' as expression"
+msgstr "uso de la plantilla de clase `%T' como una expresión"
-#: cp/spew.c:1548
-#, c-format
-msgid "%s before `%s'"
-msgstr "%s antes de `%s'"
+#. Ambiguous reference to base members.
+#: cp/semantics.c:2573
+msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
+msgstr "la petición por el miembro `%D' es ambigua en la red de herencia múltiple"
-#: cp/spew.c:1550
+#: cp/semantics.c:2633
#, c-format
-msgid "%s before `%c'"
-msgstr "%s antes de `%c'"
+msgid "use of %s from containing function"
+msgstr "uso de %s desde una función contenedora"
-#: cp/spew.c:1552
-#, c-format
-msgid "%s before `\\%o'"
-msgstr "%s antes de `\\%o'"
+#: cp/semantics.c:2636
+msgid " `%#D' declared here"
+msgstr " `%#D' declarado aquí"
-#: cp/spew.c:1555
+#: cp/semantics.c:2687
#, c-format
-msgid "%s before `%s' token"
-msgstr "%s antes del elemento `%s'"
+msgid "type of `%E' is unknown"
+msgstr "el tipo de '%E' es desconocido"
-#: cp/tree.c:263 cp/tree.c:275
+#: cp/tree.c:222
#, c-format
msgid "non-lvalue in %s"
msgstr "no es valor-l en %s"
-#: cp/tree.c:562
+#: cp/tree.c:539
msgid "`%V' qualifiers cannot be applied to `%T'"
msgstr "los calificadores `%V' no se pueden aplicar a `%T'"
-#: cp/tree.c:1941
+#: cp/tree.c:1830
#, c-format
msgid "`%s' attribute can only be applied to Java class definitions"
msgstr "el atributo `%s' sólo se puede aplicar a definiciones de clases Java"
-#: cp/tree.c:1971
+#: cp/tree.c:1859
#, c-format
msgid "`%s' attribute can only be applied to class definitions"
msgstr "el atributo `%s' sólo se puede aplicar a definiciones de clase"
-#: cp/tree.c:1977
+#: cp/tree.c:1865
#, c-format
msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default"
msgstr "`%s' es obsoleto; las vtables de g++ ahora son compatibles con COM por defecto"
-#: cp/tree.c:2002
+#: cp/tree.c:1889
msgid "requested init_priority is not an integer constant"
msgstr "la init_priority solicitada no es una constante entera"
-#: cp/tree.c:2023
+#: cp/tree.c:1910
#, c-format
msgid "can only use `%s' attribute on file-scope definitions of objects of class type"
msgstr "solo se puede usar el atributo `%s' en definiciones de rango de fichero de objetos de tipo class"
-#: cp/tree.c:2031
+#: cp/tree.c:1918
msgid "requested init_priority is out of range"
msgstr "la init_priority solicitada está fuera de rango"
-#: cp/tree.c:2041
+#: cp/tree.c:1928
msgid "requested init_priority is reserved for internal use"
msgstr "la init_priority solicitada está reservada para uso interno"
-#: cp/tree.c:2051
+#: cp/tree.c:1938
#, c-format
msgid "`%s' attribute is not supported on this platform"
msgstr "el atributo `%s' no tiene soporte en esta plataforma"
-#: cp/tree.c:2588
+#: cp/tree.c:2459
#, c-format
msgid "lang_* check: failed in %s, at %s:%d"
msgstr "revisión lang_*: falló en %s, en %s:%d"
-#: cp/typeck.c:524
+#: cp/typeck.c:438 cp/typeck.c:453 cp/typeck.c:543
+msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+msgstr "%s entre diferentes tipos de punteros `%T' y `%T' carece de una conversión"
+
+#: cp/typeck.c:513
#, c-format
msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
msgstr "ISO C++ prohíbe %s entre punteros de tipo `void *' y punteros a funciones"
-#: cp/typeck.c:545
-msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+#: cp/typeck.c:563
+#, fuzzy
+msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast"
msgstr "%s entre diferentes tipos de punteros `%T' y `%T' carece de una conversión"
-#: cp/typeck.c:1436
-msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
-msgstr "ISO C++ prohíbe la conversión de `%#T' a `(...)'"
-
-#: cp/typeck.c:1514
+#: cp/typeck.c:1235
#, c-format
msgid "invalid application of `%s' to a member function"
msgstr "aplicación inválida de `%s' a una función miembro"
-#: cp/typeck.c:1520
-#, c-format
-msgid "invalid application of `%s' to non-static member"
-msgstr "aplicación inválida de `%s' a un miembro que no es static"
-
-#: cp/typeck.c:1538
-msgid "sizeof applied to a bit-field"
-msgstr "sizeof aplicado a un campo de bits"
+#: cp/typeck.c:1268
+#, fuzzy, c-format
+msgid "invalid application of `%s' to a bit-field"
+msgstr "aplicación inválida de `%s' a un tipo void"
-#: cp/typeck.c:1541
-msgid "ISO C++ forbids applying `sizeof' to an expression of function type"
+#: cp/typeck.c:1273
+#, fuzzy, c-format
+msgid "ISO C++ forbids applying `%s' to an expression of function type"
msgstr "ISO C++ prohíbe la aplicación de `sizeof' a una expresión de tipo de función"
-#: cp/typeck.c:1759
+#: cp/typeck.c:1342
+#, fuzzy
+msgid "invalid use of non-static member function"
+msgstr "uso inválido del miembro `%D' en la función miembro static"
+
+#: cp/typeck.c:1476
msgid "deprecated conversion from string constant to `%T'"
msgstr "conversión obsoleta de una constante de cadena a `%T'"
-#: cp/typeck.c:1890 cp/typeck.c:2122
+#: cp/typeck.c:1587 cp/typeck.c:1874
msgid "request for member `%D' in `%E', which is of non-class type `%T'"
msgstr "solicitud por el miembro `%D' en `%E', el cual es del tipo `%T' que no es clase"
-#: cp/typeck.c:1916
-msgid "`%D' is not a member of `%T'"
-msgstr "`%D' no es un miembro de `%T'"
+#: cp/typeck.c:1614
+#, fuzzy, c-format
+msgid "invalid use of nonstatic data member '%E'"
+msgstr "uso inválido del campo no static `%D'"
-#: cp/typeck.c:1957 cp/typeck.c:1978
+#: cp/typeck.c:1666 cp/typeck.c:1688
msgid "invalid access to non-static data member `%D' of NULL object"
msgstr "acceso inválido a datos del miembro que no es static `%D' del objeto NULL"
-#: cp/typeck.c:1959 cp/typeck.c:1980
+#: cp/typeck.c:1668 cp/typeck.c:1690
msgid "(perhaps the `offsetof' macro was used incorrectly)"
msgstr "(tal vez se utilizó incorrectamente la macro `offsetof')"
-#: cp/typeck.c:2168
+#: cp/typeck.c:1804
+msgid "the type being destroyed is '%T', but the destructor refers to `%T'"
+msgstr ""
+
+#: cp/typeck.c:1924
msgid "`%D::%D' is not a member of `%T'"
msgstr "`%D::%D' no es un miembro de `%T'"
-#: cp/typeck.c:2179
+#: cp/typeck.c:1935
#, fuzzy
msgid "`%T' is not a base of `%T'"
msgstr "`%D' no es un miembro de `%T'"
-#: cp/typeck.c:2199
-msgid "destructor specifier `%T::~%T' must have matching names"
-msgstr "el especificador del destructor `%T::~%T' debe tener nombres coincidentes"
-
-#: cp/typeck.c:2205
-msgid "type `%T' has no destructor"
-msgstr "el tipo `%T' no tiene destructor"
+#: cp/typeck.c:1954
+msgid "'%D' has no member named '%E'"
+msgstr "'%D' no tiene un miembro llamado '%E'"
-#: cp/typeck.c:2244
+#: cp/typeck.c:1969
msgid "`%D' is not a member template function"
msgstr "`%D' no es una función plantilla miembro"
#. A pointer to incomplete type (other than cv void) can be
#. dereferenced [expr.unary.op]/1
-#: cp/typeck.c:2338
+#: cp/typeck.c:2075
msgid "`%T' is not a pointer-to-object type"
msgstr "`%T' no es de tipo puntero-a-objeto"
-#: cp/typeck.c:2365
+#: cp/typeck.c:2100
#, c-format
msgid "invalid use of `%s' on pointer to member"
msgstr "uso inválido de `%s' en puntero a miembro"
-#: cp/typeck.c:2371
+#: cp/typeck.c:2106
msgid "invalid type argument"
msgstr "argumento de tipo inválido"
-#: cp/typeck.c:2474
+#: cp/typeck.c:2212
msgid "ISO C++ forbids subscripting non-lvalue array"
msgstr "ISO C++ prohíbe el subíndice de una matriz de l-valores"
-#: cp/typeck.c:2485
+#: cp/typeck.c:2223
msgid "subscripting array declared `register'"
msgstr "se declaró el subíndice de la matriz como `register'"
-#: cp/typeck.c:2570
+#: cp/typeck.c:2306
#, c-format
msgid "object missing in use of `%E'"
msgstr "falta un objeto en el uso de `%E'"
-#: cp/typeck.c:2674
+#: cp/typeck.c:2408
msgid "ISO C++ forbids calling `::main' from within program"
msgstr "ISO C++ prohíbe la llamada `::main' dentro del mismo programa"
-#: cp/typeck.c:2699
+#: cp/typeck.c:2433
#, c-format
msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'"
msgstr "se debe usar .* o ->* en la llamada a la función puntero-a-miembro en `%E (...)'"
-#: cp/typeck.c:2712
+#: cp/typeck.c:2446
#, c-format
msgid "`%E' cannot be used as a function"
msgstr "no se puede usar `%E' como una función"
-#: cp/typeck.c:2824
+#: cp/typeck.c:2539
msgid "too many arguments to %s `%+#D'"
msgstr "demasiados argumentos para %s `%+#D'"
-#: cp/typeck.c:2865
-msgid "parameter type of called function is incomplete"
-msgstr "el tipo del parámetro de la función llamada es incompleto"
+#: cp/typeck.c:2541 cp/typeck.c:2647
+msgid "at this point in file"
+msgstr "en este punto en el fichero"
+
+#: cp/typeck.c:2578
+#, fuzzy
+msgid "parameter %P of `%D' has incomplete type `%T'"
+msgstr "el parámetro `%s' tiene tipo de dato incompleto"
-#: cp/typeck.c:2928
+#: cp/typeck.c:2581
+#, fuzzy
+msgid "parameter %P has incomplete type `%T'"
+msgstr "el parámetro tiene tipo incompleto"
+
+#: cp/typeck.c:2645
msgid "too few arguments to %s `%+#D'"
msgstr "muy pocos argumentos para %s `%+#D'"
-#: cp/typeck.c:3056 cp/typeck.c:3066
+#: cp/typeck.c:2790 cp/typeck.c:2800
msgid "assuming cast to type `%T' from overloaded function"
msgstr "asumiendo la conversión al tipo `%T' desde la función sobrecargada"
-#: cp/typeck.c:3126
+#: cp/typeck.c:2861
#, c-format
msgid "division by zero in `%E / 0'"
msgstr "división por cero en `%E / 0'"
-#: cp/typeck.c:3128
+#: cp/typeck.c:2863
#, c-format
msgid "division by zero in `%E / 0.'"
msgstr "división por cero en `%E / 0.'"
-#: cp/typeck.c:3158
+#: cp/typeck.c:2892
#, c-format
msgid "division by zero in `%E %% 0'"
msgstr "división por cero en `%E %% 0'"
-#: cp/typeck.c:3160
+#: cp/typeck.c:2894
#, c-format
msgid "division by zero in `%E %% 0.'"
msgstr "división por cero en `%E %% 0.'"
-#: cp/typeck.c:3240
+#: cp/typeck.c:2974
#, c-format
msgid "%s rotate count is negative"
msgstr "la cuenta de rotación %s es negativa"
-#: cp/typeck.c:3243
+#: cp/typeck.c:2977
#, c-format
msgid "%s rotate count >= width of type"
msgstr "la cuenta de rotación %s >= anchura del tipo"
-#: cp/typeck.c:3274 cp/typeck.c:3279 cp/typeck.c:3370 cp/typeck.c:3375
+#: cp/typeck.c:3011 cp/typeck.c:3016 cp/typeck.c:3107 cp/typeck.c:3112
msgid "ISO C++ forbids comparison between pointer and integer"
msgstr "ISO C++ prohíbe la comparación entre puntero y entero"
-#: cp/typeck.c:3553
+#: cp/typeck.c:3293
msgid "comparison between types `%#T' and `%#T'"
msgstr "comparación entre los tipos `%#T' y `%#T'"
-#: cp/typeck.c:3589
+#: cp/typeck.c:3329
msgid "comparison between signed and unsigned integer expressions"
msgstr "comparación entre expresiones enteras signed y unsigned"
-#: cp/typeck.c:3654
+#: cp/typeck.c:3394
msgid "invalid operands of types `%T' and `%T' to binary `%O'"
msgstr "operadores inválidos de tipos `%T' y `%T' para el binario `%O'"
@@ -17529,688 +17155,522 @@ msgstr "operadores inválidos de tipos `%T' y `%T' para el binario `%O'"
#. performed. Note that pointer-difference and pointer-addition
#. have already been handled above, and so we don't end up here in
#. that case.
-#: cp/typeck.c:3676
+#: cp/typeck.c:3416
msgid "NULL used in arithmetic"
msgstr "se usó NULL en la aritmética"
-#: cp/typeck.c:3743
+#: cp/typeck.c:3479
msgid "ISO C++ forbids using pointer of type `void *' in subtraction"
msgstr "ISO C++ prohíbe el uso de un puntero de tipo `void *' en la sustracción"
-#: cp/typeck.c:3745
+#: cp/typeck.c:3481
msgid "ISO C++ forbids using pointer to a function in subtraction"
msgstr "ISO C++ prohíbe el uso de un puntero a una función en la sustracción"
-#: cp/typeck.c:3747
+#: cp/typeck.c:3483
msgid "ISO C++ forbids using pointer to a method in subtraction"
msgstr "ISO C++ prohíbe el uso de un puntero a un método en la sustracción"
-#: cp/typeck.c:3749
-msgid "ISO C++ forbids using pointer to a member in subtraction"
-msgstr "ISO C++ prohíbe el uso de un puntero a un miembro en la sustracción"
-
-#: cp/typeck.c:3761
+#: cp/typeck.c:3495
msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
msgstr "uso inválido de un puntero a un tipo incompleto en aritmética de punteros"
-#: cp/typeck.c:3821
+#: cp/typeck.c:3550
#, c-format
msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id."
msgstr "uso inválido de '%E' para formar una función puntero a miembro. Use un identificador calificado."
-#: cp/typeck.c:3827
+#: cp/typeck.c:3556
#, c-format
msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function"
msgstr "no se pueden usar paréntesis alrededor de '%E' para formar una función puntero a miembro"
-#: cp/typeck.c:3850
+#: cp/typeck.c:3578
msgid "taking address of temporary"
msgstr "tomando la dirección del temporal"
# Esta cadena solamente funciona bien en inglés. cfuga
-#: cp/typeck.c:4091
+#: cp/typeck.c:3813
#, c-format
msgid "ISO C++ forbids %sing an enum"
msgstr "ISO C++ prohíbe %sing un enum"
-#: cp/typeck.c:4103
+#: cp/typeck.c:3824
msgid "cannot %s a pointer to incomplete type `%T'"
msgstr "no se puede %s un puntero a un tipo incompleto `%T'"
-#: cp/typeck.c:4110
+#: cp/typeck.c:3830
msgid "ISO C++ forbids %sing a pointer of type `%T'"
msgstr "ISO C++ prohíbe el %s un puntero de tipo `%T'"
-#: cp/typeck.c:4135
+#: cp/typeck.c:3855
msgid "cast to non-reference type used as lvalue"
msgstr "se usa la conversión a un tipo no referenciado como un l-valor"
-#: cp/typeck.c:4169
+#: cp/typeck.c:3889
msgid "invalid use of `--' on bool variable `%D'"
msgstr "uso inválido de `--' en la variable booleana `%D'"
#. ARM $3.4
-#: cp/typeck.c:4202
+#: cp/typeck.c:3920
msgid "ISO C++ forbids taking address of function `::main'"
msgstr "ISO C++ prohíbe tomar la dirección de la función `::main'"
#. An expression like &memfn.
-#: cp/typeck.c:4269
-msgid "ISO C++ forbids taking the address of an unqualified non-static member function to form a pointer to member function. Say `&%T::%D'"
+#: cp/typeck.c:3991
+#, fuzzy
+msgid "ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function. Say `&%T::%D'"
msgstr "ISO C++ prohíbe tomar la dirección de una función miembro no estática sin calificar para formar un puntero a la función miembro. Como `&%T::%D'"
-#: cp/typeck.c:4271
+#: cp/typeck.c:3996
msgid "ISO C++ forbids taking the address of a bound member function to form a pointer to member function. Say `&%T::%D'"
msgstr "ISO C++ prohíbe tomar la dirección de una función miembro limitada para formar un puntero a la función miembro. Como `&%T::%D'"
-#: cp/typeck.c:4295
+#: cp/typeck.c:4024
msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression"
msgstr "ISO C++ prohíbe tomar la dirección de una conversión a una expresión no l-valuada"
-#: cp/typeck.c:4324
+#: cp/typeck.c:4040
+msgid "unary `&'"
+msgstr "`&' unario"
+
+#: cp/typeck.c:4069
msgid "attempt to take address of bit-field structure member `%D'"
msgstr "se intentó tomar la dirección del miembro de la estructura de campos de bits `%D'"
-#: cp/typeck.c:4444
+#: cp/typeck.c:4183
msgid "taking address of destructor"
msgstr "tomando la dirección del destructor"
# FIXME
# ¿bound se utiliza aquí como 'limitada' o 'sujeta'? Revisar el código. cfuga
-#: cp/typeck.c:4457
+#: cp/typeck.c:4196
msgid "taking address of bound pointer-to-member expression"
msgstr "tomando la dirección de la expresión limitada puntero-a-miembro"
-#: cp/typeck.c:4473
+#: cp/typeck.c:4204
msgid "cannot create pointer to reference member `%D'"
msgstr "no se puede crear un puntero al miembro referencia `%D'"
-#: cp/typeck.c:4536
+#: cp/typeck.c:4266
msgid "cannot take the address of `this', which is an rvalue expression"
msgstr "no se puede tomar la dirección de `this' que es una expresión rvalue"
-#: cp/typeck.c:4555
+#: cp/typeck.c:4285
msgid "address requested for `%D', which is declared `register'"
msgstr "se solicitó la dirección de `%D', el cual se declaró como `register'"
-#: cp/typeck.c:4682
-msgid "static_cast from type `%T' to type `%T' casts away constness"
+#: cp/typeck.c:4353
+#, fuzzy, c-format
+msgid "%s expression list treated as compound expression"
+msgstr "la lista de inicializadores se trata como una expresión compuesta"
+
+#: cp/typeck.c:4426
+#, fuzzy
+msgid "%s from type `%T' to type `%T' casts away constness"
msgstr "static_cast del tipo `%T' al tipo `%T' proscribe la constancia"
-#: cp/typeck.c:4871
+#: cp/typeck.c:4618
msgid "invalid static_cast from type `%T' to type `%T'"
msgstr "static_cast inválido del tipo `%T' al tipo `%T'"
-#: cp/typeck.c:4910
+#: cp/typeck.c:4658
msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'"
msgstr "reinterpret_cast inválido de una expresión valor-r del tipo `%T' al tipo `%T'"
-#: cp/typeck.c:4930
+#: cp/typeck.c:4678
msgid "reinterpret_cast from `%T' to `%T' loses precision"
msgstr "reinterpret_cast de `%T' a `%T' pierde precisión"
-#: cp/typeck.c:4943
-msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
-msgstr "reinterpret_cast de `%T' a `%T' proscribe a const (o volatile)"
-
-#: cp/typeck.c:4952
+#: cp/typeck.c:4697
msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object"
msgstr "ISO C++ prohíbe la conversión entre entre puntero a función y puntero a objeto"
-#: cp/typeck.c:4958
+#: cp/typeck.c:4703
msgid "invalid reinterpret_cast from type `%T' to type `%T'"
msgstr "reinterpret_cast inválido del tipo `%T' al tipo `%T'"
-#: cp/typeck.c:4985
+#: cp/typeck.c:4731
msgid "invalid use of const_cast with type `%T', which is not a pointer, reference, nor a pointer-to-data-member type"
msgstr "uso inválido de const_cast con tipo `%T', que no es puntero, referencia, ni un tipo puntero-a-datos-miembros"
-#: cp/typeck.c:4988
+#: cp/typeck.c:4734
msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type"
msgstr "uso inválido de const_cast con tipo `%T', el cual es un puntero o referencia a un tipo de función"
-#: cp/typeck.c:5011
+#: cp/typeck.c:4757
msgid "invalid const_cast of an rvalue of type `%T' to type `%T'"
msgstr "const_cast inválido de un valor-r de tipo `%T' al tipo `%T'"
-#: cp/typeck.c:5027
+#: cp/typeck.c:4774
msgid "invalid const_cast from type `%T' to type `%T'"
msgstr "const_cast inválido del tipo `%T' al tipo `%T'"
-#: cp/typeck.c:5069 cp/typeck.c:5074
+#: cp/typeck.c:4814 cp/typeck.c:4819
msgid "ISO C++ forbids casting to an array type `%T'"
msgstr "ISO C++ prohíbe la conversión a un tipo de matriz `%T'"
-#: cp/typeck.c:5082
+#: cp/typeck.c:4827
msgid "invalid cast to function type `%T'"
msgstr "conversión inválida al tipo de función `%T'"
-#: cp/typeck.c:5138
+#: cp/typeck.c:4883
msgid "cast from `%T' to `%T' discards qualifiers from pointer target type"
msgstr "la conversión de `%T' a `%T' descarta los calificadores del tipo del destino del puntero"
-#: cp/typeck.c:5184
+#: cp/typeck.c:4929
msgid "cast from `%T' to `%T' increases required alignment of target type"
msgstr "la conversión de `%T' a `%T' incrementa la alineación requerida del tipo del destino"
-#: cp/typeck.c:5357
+#: cp/typeck.c:5093
msgid " in evaluation of `%Q(%#T, %#T)'"
msgstr " en la evaluación de `%Q(%#T, %#T)'"
-#: cp/typeck.c:5399
+#: cp/typeck.c:5135
msgid "ISO C++ forbids cast to non-reference type used as lvalue"
msgstr "ISO C++ prohíbe la conversión a un tipo no referente usado como l-valor"
-#: cp/typeck.c:5463
+#: cp/typeck.c:5208
msgid "incompatible types in assignment of `%T' to `%T'"
msgstr "tipos incompatible en la asignación de `%T' a `%T'"
-#: cp/typeck.c:5470
+#: cp/typeck.c:5215
msgid "ISO C++ forbids assignment of arrays"
msgstr "ISO C++ prohíbe la asignación de matrices"
-#: cp/typeck.c:5577
+#: cp/typeck.c:5314
msgid " in pointer to member function conversion"
msgstr " en la conversión del puntero a función miembro"
-#: cp/typeck.c:5585
+#: cp/typeck.c:5322
msgid " in pointer to member conversion"
msgstr " en la conversión del puntero a miembro"
#. This is a reinterpret cast, we choose to do nothing.
-#: cp/typeck.c:5596 cp/typeck.c:5615
-msgid "pointer to member cast via virtual base `%T' of `%T'"
+#: cp/typeck.c:5332 cp/typeck.c:5347
+#, fuzzy
+msgid "pointer to member cast via virtual base `%T'"
msgstr "puntero a la conversión miembro a través de la base virtual `%T' de `%T'"
-#: cp/typeck.c:5619
-msgid "pointer to member conversion via virtual base `%T' of `%T'"
+#: cp/typeck.c:5350
+#, fuzzy
+msgid "pointer to member conversion via virtual base `%T'"
msgstr "puntero a la conversión miembro a través de la base virtual `%T' de `%T'"
-#: cp/typeck.c:5695
+#: cp/typeck.c:5420
msgid "invalid conversion to type `%T' from type `%T'"
msgstr "conversión inválida del tipo `%T' a partir del tipo `%T'"
-#: cp/typeck.c:5860
+#: cp/typeck.c:5576
msgid "passing NULL used for non-pointer %s %P of `%D'"
msgstr "pasando NULL usado para el no puntero %s %P de `%D'"
-#: cp/typeck.c:5863
+#: cp/typeck.c:5579
msgid "%s to non-pointer type `%T' from NULL"
msgstr "%s al tipo `%T' que no es puntero desde NULL"
-#: cp/typeck.c:5871
+#: cp/typeck.c:5587
msgid "passing `%T' for %s %P of `%D'"
msgstr "pasando `%T' para %s %P de `%D'"
-#: cp/typeck.c:5874
+#: cp/typeck.c:5590
msgid "%s to `%T' from `%T'"
msgstr "%s a `%T' desde `%T'"
-#: cp/typeck.c:5884
+#: cp/typeck.c:5600
msgid "passing negative value `%E' for %s %P of `%D'"
msgstr "pasando el valor negativo `%E' para %s %P de `%D'"
-#: cp/typeck.c:5887
+#: cp/typeck.c:5603
msgid "%s of negative value `%E' to `%T'"
msgstr "%s de valor negatio `%E' a `%T'"
-#: cp/typeck.c:5982
+#: cp/typeck.c:5691
msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'"
msgstr "no se puede convertir `%T' a `%T' para el argumento `%P' para `%D'"
-#: cp/typeck.c:5985
+#: cp/typeck.c:5694
msgid "cannot convert `%T' to `%T' in %s"
msgstr "no se puede convertir `%T' a `%T' en %s"
-#: cp/typeck.c:6073 cp/typeck.c:6075
+#: cp/typeck.c:5771 cp/typeck.c:5773
msgid "in passing argument %P of `%+D'"
msgstr "en el paso del argumento %P de `%+D'"
-#: cp/typeck.c:6190
+#: cp/typeck.c:5880
msgid "returning reference to temporary"
msgstr "devolviendo la referencia al temporal"
-#: cp/typeck.c:6197
+#: cp/typeck.c:5887
msgid "reference to non-lvalue returned"
msgstr "se devolvió una referencia a un valor que no es l-valor"
-#: cp/typeck.c:6209
+#: cp/typeck.c:5899
msgid "reference to local variable `%D' returned"
msgstr "se devolvió una referencia a la variable local `%D'"
-#: cp/typeck.c:6212
+#: cp/typeck.c:5902
msgid "address of local variable `%D' returned"
msgstr "se devolvió la dirección de la variable local `%D'"
-#: cp/typeck.c:6243
+#: cp/typeck.c:5932
msgid "returning a value from a destructor"
msgstr "devolviendo un valor de un destructor"
#. If a return statement appears in a handler of the
#. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.c:6251
+#: cp/typeck.c:5940
msgid "cannot return from a handler of a function-try-block of a constructor"
msgstr "no se puede regresar de un manejador de una función-intenta-bloque de un constructor"
#. You can't return a value from a constructor.
-#: cp/typeck.c:6254
+#: cp/typeck.c:5943
msgid "returning a value from a constructor"
msgstr "devolviendo un valor de un constructor"
-#: cp/typeck.c:6271
-msgid "return-statement with no value, in function declared with a non-void return type"
-msgstr "sentencia de devolución sin valor, en una función declarada con un tipo de devolución que no es void"
+#: cp/typeck.c:5966
+#, fuzzy
+msgid "return-statement with no value, in function returning '%T'"
+msgstr "`return' sin valores, en una función que no devuelve void"
-#: cp/typeck.c:6287
-msgid "return-statement with a value, in function declared with a void return type"
-msgstr "declaración de devolución con un valor, en una función declarada con un tipo de devolución void"
+#: cp/typeck.c:5983
+#, fuzzy
+msgid "return-statement with a value, in function returning 'void'"
+msgstr "`return' con valor, en una función que devuelve void"
-#: cp/typeck.c:6308
+#: cp/typeck.c:6005
msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)"
msgstr "`operator new' no debe regresar NULL a menos que se declare `throw()' (o -fcheck-new esté en efecto)"
-#: cp/typeck2.c:54
+#: cp/typeck2.c:55
msgid "type `%T' is not a base type for type `%T'"
msgstr "el tipo `%T' no es un tipo base para el tipo `%T'"
-#: cp/typeck2.c:157
+#: cp/typeck2.c:151
msgid "cannot declare variable `%D' to be of type `%T'"
msgstr "no se puede declarar que la variable `%D' sea de tipo `%T'"
-#: cp/typeck2.c:160
+#: cp/typeck2.c:154
msgid "cannot declare parameter `%D' to be of type `%T'"
msgstr "no se puede declarar que el parámetro `%D' sea de tipo `%T'"
-#: cp/typeck2.c:163
+#: cp/typeck2.c:157
msgid "cannot declare field `%D' to be of type `%T'"
msgstr "no se puede declarar que el campo `%D' sea de tipo `%T'"
-#: cp/typeck2.c:167
+#: cp/typeck2.c:161
msgid "invalid return type for member function `%#D'"
msgstr "tipo de devolución inválido para la función miembro `%#D'"
-#: cp/typeck2.c:169
+#: cp/typeck2.c:163
msgid "invalid return type for function `%#D'"
msgstr "tipo de devolución inválido para la función `%#D'"
-#: cp/typeck2.c:172
+#: cp/typeck2.c:166
msgid "cannot allocate an object of type `%T'"
msgstr "no se puede asignar un objeto de tipo `%T'"
-#: cp/typeck2.c:179
+#: cp/typeck2.c:173
msgid " because the following virtual functions are abstract:"
msgstr " porque las siguientes funciones virtual son abstractas:"
-#: cp/typeck2.c:181
+#: cp/typeck2.c:175
msgid "\t%#D"
msgstr "\t%#D"
-#: cp/typeck2.c:184
+#: cp/typeck2.c:178
msgid " since type `%T' has abstract virtual functions"
msgstr " ya que el tipo `%T' tiene funciones virtuales abstractas"
-#: cp/typeck2.c:338
+#: cp/typeck2.c:426
msgid "constructor syntax used, but no constructor declared for type `%T'"
msgstr "se usó la sintaxis de constructor, pero no se declaró un constructor para el tipo `%T'"
-#: cp/typeck2.c:349
-msgid "comma expression used to initialize return value"
-msgstr "se usó una expresión coma para inicializar el valor de devolución"
-
-#: cp/typeck2.c:358
+#: cp/typeck2.c:439
msgid "cannot initialize arrays using this syntax"
msgstr "no se pueden inicializar matrices usando esta sintaxis"
-#: cp/typeck2.c:473
+#: cp/typeck2.c:544
msgid "initializing array with parameter list"
msgstr "inicializando una matriz con una lista de parámetros"
-#: cp/typeck2.c:529
+#: cp/typeck2.c:599
msgid "initializer for scalar variable requires one element"
msgstr "inicializador para una variable escalar requiere un elemento"
-#: cp/typeck2.c:536
+#: cp/typeck2.c:606
msgid "braces around scalar initializer for `%T'"
msgstr "llaves alrededor del inicializador para `%T'"
-#: cp/typeck2.c:539
+#: cp/typeck2.c:609
msgid "ignoring extra initializers for `%T'"
msgstr "ignorando los inicializadores extra para `%T'"
-#: cp/typeck2.c:551
+#: cp/typeck2.c:621
msgid "variable-sized object of type `%T' may not be initialized"
msgstr "un objeto de tamaño variable de tipo `%T' no puede ser inicializado"
-#: cp/typeck2.c:561
+#: cp/typeck2.c:631
msgid "subobject of type `%T' must be initialized by constructor, not by `%E'"
msgstr "el subobjeto de tipo `%T' debe ser inicializado por un constructor, no por `%E'"
-#: cp/typeck2.c:627
+#: cp/typeck2.c:696
msgid "aggregate has a partly bracketed initializer"
msgstr "el agregado tiene un inicializador con llaves parciales"
-#: cp/typeck2.c:665 cp/typeck2.c:770
+#: cp/typeck2.c:734 cp/typeck2.c:839
msgid "non-trivial labeled initializers"
msgstr "inicializadores etiquetados como no triviales"
-#: cp/typeck2.c:682
+#: cp/typeck2.c:751
msgid "non-empty initializer for array of empty elements"
msgstr "inicializador no-vacío para una matriz de elementos vacíos"
-#: cp/typeck2.c:736
+#: cp/typeck2.c:805
msgid "initializer list for object of class with virtual base classes"
msgstr "lista de inicializadores para un objeto de una clase con clases base virtual"
-#: cp/typeck2.c:742
+#: cp/typeck2.c:811
msgid "initializer list for object of class with base classes"
msgstr "lista de inicializadores para un objeto de una clase con clases base"
-#: cp/typeck2.c:748
+#: cp/typeck2.c:817
msgid "initializer list for object using virtual functions"
msgstr "lista de inicializadores para un objeto que usa funciones virtuales"
-#: cp/typeck2.c:811 cp/typeck2.c:827
+#: cp/typeck2.c:879 cp/typeck2.c:895
msgid "missing initializer for member `%D'"
msgstr "falta el inicializador para el miembro `%D'"
-#: cp/typeck2.c:816
+#: cp/typeck2.c:884
msgid "uninitialized const member `%D'"
msgstr "miembro const `%D' sin inicializar"
-#: cp/typeck2.c:818
+#: cp/typeck2.c:886
msgid "member `%D' with uninitialized const fields"
msgstr "miembro `%D' con campos const sin inicializar"
-#: cp/typeck2.c:821
+#: cp/typeck2.c:889
msgid "member `%D' is uninitialized reference"
msgstr "el miembro `%D' es una referencia sin inicializar"
-#: cp/typeck2.c:868
+#: cp/typeck2.c:936
msgid "index value instead of field name in union initializer"
msgstr "valor de índice en lugar del nombre del campo en el inicializador de union"
-#: cp/typeck2.c:880
+#: cp/typeck2.c:948
msgid "no field `%D' in union being initialized"
msgstr "no existe el campo `%D' en la union que se está inicializando"
-#: cp/typeck2.c:888
+#: cp/typeck2.c:956
msgid "union `%T' with no named members cannot be initialized"
msgstr "no se puede inicializar la union `%T' sin miembros nombrados"
-#: cp/typeck2.c:924
+#: cp/typeck2.c:992
msgid "excess elements in aggregate initializer"
msgstr "exceso de elementos en el inicializador agregado"
-#: cp/typeck2.c:1038
+#: cp/typeck2.c:1100
msgid "circular pointer delegation detected"
msgstr "se detectó una delegación de puntero circular"
-#: cp/typeck2.c:1051
+#: cp/typeck2.c:1113
msgid "base operand of `->' has non-pointer type `%T'"
msgstr "el operando base de `->' tiene el tipo `%T' que no es puntero"
-#: cp/typeck2.c:1065
+#: cp/typeck2.c:1137
msgid "result of `operator->()' yields non-pointer result"
msgstr "el resultado de `operator->()' produce un resultado que no es puntero"
-#: cp/typeck2.c:1067
+#: cp/typeck2.c:1139
msgid "base operand of `->' is not a pointer"
msgstr "el operando base de `->' no es un puntero"
-#: cp/typeck2.c:1133
+#: cp/typeck2.c:1162
msgid "`%E' cannot be used as a member pointer, since it is of type `%T'"
msgstr "no se puede usar `%E' como un puntero miembro, porque es de tipo `%T'"
-#: cp/typeck2.c:1140
+#: cp/typeck2.c:1170
msgid "cannot apply member pointer `%E' to `%E', which is of non-aggregate type `%T'"
msgstr "no se puede aplicar el puntero a miembro `%E' a `%E', el cual es del tipo no agregado `%T'"
-#: cp/typeck2.c:1149
+#: cp/typeck2.c:1180
msgid "member type `%T::' incompatible with object type `%T'"
msgstr "el tipo de miembro `%T::' es incompatible con el tipo objeto `%T'"
-#: cp/typeck2.c:1186
-msgid "`%T' fails to be a typedef or built-in type"
-msgstr "`%T' falla al ser un typedef o un tipo interno"
-
-#: cp/typeck2.c:1259
-#, c-format
-msgid "ISO C++ forbids defining types within %s"
-msgstr "ISO C++ prohíbe la definición de tipos dentro de %s"
-
-#: cp/typeck2.c:1384
+#: cp/typeck2.c:1396
msgid "call to function `%D' which throws incomplete type `%#T'"
msgstr "llamada a la función `%D' la cual arroja el tipo incompleto `%#T'"
-#: cp/typeck2.c:1387
+#: cp/typeck2.c:1399
msgid "call to function which throws incomplete type `%#T'"
msgstr "llamada a una función la cual arroja el tipo incompleto `%#T'"
#. XXX Not i18n clean.
-#: cp/cp-tree.h:3936
+#: cp/cp-tree.h:3756
#, c-format
msgid "%s is deprecated, please see the documentation for details"
msgstr "%s es obsoleto, por favor vea la documentación para más detalles"
-#: cp/lang-options.h:29
-msgid "Do not obey access control semantics"
-msgstr "No obedecer las semánticas de control de acceso"
-
-#: cp/lang-options.h:31
-msgid "Change when template instances are emitted"
-msgstr "Cambiar cuando se emitan las instancias de la plantilla"
-
-#: cp/lang-options.h:36
-msgid "Check the return value of new"
-msgstr "Revisar el valor de devolución de new"
-
-#: cp/lang-options.h:39
-msgid "Reduce size of object files"
-msgstr "Reducir el tamaño de los ficheros objeto"
-
-#: cp/lang-options.h:43
-msgid "Make string literals `char[]' instead of `const char[]'"
-msgstr "Hacer que las cadenas literales sean `char[]' en lugar de `const char[]'"
-
-#: cp/lang-options.h:46
-msgid "Dump the entire translation unit to a file"
-msgstr "Volcar la unidad de traducción completa a un fichero"
-
-#: cp/lang-options.h:48
-msgid "Do not inline member functions by default"
-msgstr "No hacer inline por defecto a las funciones miembro"
-
-#: cp/lang-options.h:51
-msgid "Do not generate run time type descriptor information"
-msgstr "No generar información del tipo de descriptor en tiempo de ejecución"
-
-#: cp/lang-options.h:56
-msgid "Do not generate code to check exception specifications"
-msgstr "No generar código para revisar excepciones de especificaciones"
-
-#: cp/lang-options.h:61
-msgid "Scope of for-init-statement vars extends outside"
-msgstr "El ámbito de las variables de la declaración de inicio de for se extiende hacia afuera"
-
-#: cp/lang-options.h:64
-msgid "Do not recognize GNU defined keywords"
-msgstr "No reconocer las palabras claves definidas por GNU"
-
-#: cp/lang-options.h:68
-msgid "Enable support for huge objects"
-msgstr "Activar el soporte para objetos enormes"
-
-#: cp/lang-options.h:72
-msgid "Export functions even if they can be inlined"
-msgstr "Exportar funciones aún si pueden ser inline"
-
-#: cp/lang-options.h:75
-msgid "Only emit explicit template instantiations"
-msgstr "Emitir solamente instanciaciones explícitas de plantillas"
-
-#: cp/lang-options.h:78
-msgid "Only emit explicit instantiations of inline templates"
-msgstr "Emitir solamente instanciaciones explícitas de plantillas inline"
-
-#: cp/lang-options.h:84
-msgid "Don't pedwarn about uses of Microsoft extensions"
-msgstr "No avisar pedantemente sobre los usos de extensiones Microsoft"
-
-#: cp/lang-options.h:87
-msgid "Recognize and/bitand/bitor/compl/not/or/xor"
-msgstr "Reconocer and/bitand/bitor/compl/not/or/xor"
-
-#: cp/lang-options.h:91
-msgid "Disable optional diagnostics"
-msgstr "Desactivar los diagnósticos opcionales"
-
-#: cp/lang-options.h:93
-msgid "Downgrade conformance errors to warnings"
-msgstr "Degradar los errores de concordancia a advertencias"
-
-#: cp/lang-options.h:96
-msgid "Enable automatic template instantiation"
-msgstr "Activar la instanciación automática de plantillas"
-
-#: cp/lang-options.h:101
-msgid "Display statistics accumulated during compilation"
-msgstr "Mostrar las estadísticas acumuladas durante la compilación"
-
-#: cp/lang-options.h:104
-msgid "Specify maximum template instantiation depth"
-msgstr "Especificar la profundidad máxima de instanciación de plantillas"
-
-#: cp/lang-options.h:106
-msgid "Use __cxa_atexit to register destructors"
-msgstr "Usar __cxa_atexit para registrar destructores"
-
-#: cp/lang-options.h:109
-msgid "Discard unused virtual functions"
-msgstr "Descartar funciones virtual sin usar"
-
-#: cp/lang-options.h:112
-msgid "Implement vtables using thunks"
-msgstr "Implementar vtables usando thunks"
-
-#: cp/lang-options.h:115
-msgid "Emit common-like symbols as weak symbols"
-msgstr "Emitir símbolos comunes como símbolos débiles"
-
-#: cp/lang-options.h:118
-msgid "Emit cross referencing information"
-msgstr "Emitir información de referencia cruzada"
-
-#: cp/lang-options.h:122
-msgid "Warn about inconsistent return types"
-msgstr "Avisar sobre tipos inconsistentes de devolución"
-
-#: cp/lang-options.h:125
-msgid "Warn about overloaded virtual function names"
-msgstr "Avisar sobre nombres de funciones virtual sobrecargadas"
-
-#: cp/lang-options.h:129
-msgid "Don't warn when all ctors/dtors are private"
-msgstr "No avisar cuando todos los ctors/dtors son privados"
-
-#: cp/lang-options.h:131
-msgid "Warn about non virtual destructors"
-msgstr "Avisar sobre destructores no virtuales"
-
-#: cp/lang-options.h:134
-msgid "Warn when a function is declared extern, then inline"
-msgstr "Avisar cuando una función es declarada extern y luego inline"
-
-#: cp/lang-options.h:137
-msgid "Warn when the compiler reorders code"
-msgstr "Avisar cuando el compilador reordene código"
-
-#: cp/lang-options.h:140
-msgid "Warn when synthesis behavior differs from Cfront"
-msgstr "Avisar cuando el comportamiento de síntesis difiera de Cfront"
-
-#: cp/lang-options.h:144
-msgid "Don't warn when type converting pointers to member functions"
-msgstr "No avisar sobre punteros a funciones miembro que conviertan tipos de datos"
-
-#: cp/lang-options.h:146
-msgid "Warn about violations of Effective C++ style rules"
-msgstr "Avisar violaciones de reglas de estilo de Effective C++"
-
-#: cp/lang-options.h:149
-msgid "Warn when overload promotes from unsigned to signed"
-msgstr "Avisar cuando la sobrecarga promueva de unsigned a signed"
-
-#: cp/lang-options.h:152
-msgid "Warn if a C style cast is used in a program"
-msgstr "Avisar cuando se use una conversión de estilo C en un programa"
-
-#: cp/lang-options.h:156
-msgid "Don't warn when non-templatized friend functions are declared within a template"
-msgstr "No avisar cuando las funciones friend sin plantillas son declaradas dentro de una plantilla"
-
-#: cp/lang-options.h:159
-msgid "Don't announce deprecation of compiler features"
-msgstr "No anunciar características obsoletas del compilador"
-
-#: f/bad.c:387
+#: f/bad.c:388
msgid "note:"
msgstr "nota:"
-#: f/bad.c:391
+#: f/bad.c:392
msgid "warning:"
msgstr "aviso:"
-#: f/bad.c:395
+#: f/bad.c:396
msgid "fatal:"
msgstr "fatal:"
-#: f/bad.c:437
+#: f/bad.c:438
msgid "(continued):"
msgstr "(continuado):"
-#: f/bad.c:487 f/bad.c:505
+#: f/bad.c:488 f/bad.c:506
msgid "[REPORT BUG!!] %"
msgstr "[¡¡REPORTAR BICHO!!] %"
-#: f/bad.c:494 f/bad.c:526
+#: f/bad.c:495 f/bad.c:527
msgid "[REPORT BUG!!]"
msgstr "[¡¡REPORTAR BICHO!!]"
-#: f/com.c:3132
+#: f/com.c:3125
#, no-c-format
msgid "ASSIGN'ed label cannot fit into `%A' at %0 -- using wider sibling"
msgstr "la etiqueta ASSIGNada no cabe en `%A' en %0 -- utilizando una similar más ancho"
-#: f/com.c:11623
+#: f/com.c:11565
msgid "no INTEGER type can hold a pointer on this configuration"
msgstr "ningún tipo INTEGER puede guardar un puntero en esta configuración"
-#: f/com.c:11844
+#: f/com.c:11839
#, c-format
msgid "configuration: REAL, INTEGER, and LOGICAL are %d bits wide,"
msgstr "configuration: REAL, INTEGER, y LOGICAL son de %d bits de anchura,"
-#: f/com.c:11846
+#: f/com.c:11841
#, c-format
msgid "and pointers are %d bits wide, but g77 doesn't yet work"
msgstr "y los punteros son de %d bits de anchura, pero g77 aún no trabaja"
-#: f/com.c:11848
+#: f/com.c:11843
msgid "properly unless they all are 32 bits wide"
msgstr "de forma adecuada a menos que todos sean de 32 bits de anchura"
-#: f/com.c:11849
+#: f/com.c:11844
msgid "Please keep this in mind before you report bugs."
msgstr "Por favor tenga esto presente antes de reportar `bugs'."
#. I/O will probably crash.
-#: f/com.c:11857
+#: f/com.c:11852
#, c-format
msgid "configuration: char * holds %d bits, but ftnlen only %d"
msgstr "configuration: char * guarda %d bits, pero ftnlen sólo %d"
#. ASSIGN 10 TO I will crash.
-#: f/com.c:11866
+#: f/com.c:11861
#, c-format
msgid ""
"configuration: char * holds %d bits, but INTEGER only %d --\n"
@@ -18219,68 +17679,65 @@ msgstr ""
"configuration: char * guarda %d bits, pero INTEGER sólo %d --\n"
" la declaración ASSIGN puede fallar"
-#: f/com.c:13681
+#: f/com.c:13677
msgid "In statement function"
msgstr "En la declaración de la función"
-#: f/com.c:13691
+#: f/com.c:13687
+#, c-format
msgid "Outside of any program unit:\n"
msgstr "Fuera de cualquier unidad de programa:\n"
-#: f/com.c:15320
+#: f/com.c:15283
#, no-c-format
msgid "%A from %B at %0%C"
msgstr "%A desde %B en %0%C"
-#: f/com.c:15497
-msgid "directory name must immediately follow -I"
-msgstr "el nombre del directorio debe seguir inmediatamente a -I"
-
-#: f/com.c:15640
+#: f/com.c:15593
#, no-c-format
msgid "At %0, INCLUDE file %A exists, but is not readable"
msgstr "En %0, el fichero INCLUDE %A existe, pero no es legible"
-#: f/com.c:15675
+#: f/com.c:15628
#, no-c-format
msgid "At %0, INCLUDE nesting too deep"
msgstr "En %0, la anidación de INCLUDE es demasiado profunda"
-#: f/expr.c:9614
+#: f/expr.c:8706
#, no-c-format
msgid "Two arithmetic operators in a row at %0 and %1 -- use parentheses"
msgstr "Dos operadores aritméticos en una fila en %0 y %1 -- use paréntesis"
-#: f/expr.c:9664
+#: f/expr.c:8756
#, no-c-format
msgid "Operator at %0 has lower precedence than that at %1 -- use parentheses"
msgstr "El operador en %0 tiene una preferencia menor que aquél en %1 -- use paréntesis"
-#: f/expr.c:10525
+#: f/expr.c:9639
#, no-c-format
msgid "Use .EQV./.NEQV. instead of .EQ./.NE. at %0 for LOGICAL operands at %1 and %2"
msgstr "Use .EQV./.NEQV. en lugar de .EQ./.NE. en %0 para los operandos LOGICAL en %1 y %2"
-#: f/expr.c:10896
+#: f/expr.c:10010
#, no-c-format
msgid "Unsupported operand for ** at %1 -- converting to default INTEGER"
msgstr "Operando sin soporte para ** en %1 -- se convirtió a INTEGER por defecto"
-#: f/g77spec.c:234
+#: f/g77spec.c:230
#, c-format
msgid "overflowed output arg list for `%s'"
msgstr "lista de argumentos de salida desbordada para `%s'"
-#: f/g77spec.c:373
+#: f/g77spec.c:367
msgid "--driver no longer supported"
msgstr "--driver ya no tiene soporte"
-#: f/g77spec.c:386
+#: f/g77spec.c:380
#, c-format
msgid "argument to `%s' missing"
msgstr "falta el argumento para `%s'"
-#: f/g77spec.c:390
+#: f/g77spec.c:384
msgid "no input files; unwilling to write output files"
msgstr "no hay ficheros de entrada; incapaz de escribir ficheros de salida"
@@ -18289,131 +17746,126 @@ msgstr "no hay ficheros de entrada; incapaz de escribir ficheros de salida"
msgid "Implicit declaration of `%A' at %0"
msgstr "Declaración implícita de `%A' en %0"
-#: f/lex.c:326
+#: f/lex.c:321
#, no-c-format
msgid "Non-ISO-C-standard escape sequence `\\%A' at %0"
msgstr "Secuencia de escape que no es estándard ISO `\\%A' en %0"
-#: f/lex.c:345
+#: f/lex.c:340
#, no-c-format
msgid "Unknown escape sequence `\\%A' at %0"
msgstr "Secuencia de escape desconocida `\\%A' en %0"
-#: f/lex.c:354
+#: f/lex.c:349
#, no-c-format
msgid "Unterminated escape sequence `\\' at %0"
msgstr "Secuencia de escape sin terminar `\\' en %0"
-#: f/lex.c:365
+#: f/lex.c:360
#, no-c-format
msgid "Unknown escape sequence `\\' followed by char code 0x%A at %0"
msgstr "Secuencia de escape desconocida: `\\' seguida por el código de caracter 0x%A en %0"
-#: f/lex.c:393
+#: f/lex.c:388
#, no-c-format
msgid "\\x used at %0 with no following hex digits"
msgstr "se usó \\x en %0 sin dígitos hexadecimales a continuación"
-#: f/lex.c:407
+#: f/lex.c:402
#, no-c-format
msgid "Hex escape at %0 out of range"
msgstr "Secuencia de escape hexadecimal en %0 fuera de rango"
-#: f/lex.c:441
+#: f/lex.c:436
#, no-c-format
msgid "Escape sequence at %0 out of range for character"
msgstr "Secuencia de escape en %0 fuera de rango para el carácter"
-#: f/lex.c:595
+#: f/lex.c:590
msgid "hex escape out of range"
msgstr "secuencia de escape hexadecimal fuera de rango"
-#: f/lex.c:648
+#: f/lex.c:643
#, c-format
msgid "non-ANSI-standard escape sequence, `\\%c'"
msgstr "secuencia de escape que no es estándar ANSI, `\\%c'"
-#: f/lex.c:661
+#: f/lex.c:656
#, c-format
msgid "non-ISO escape sequence `\\%c'"
msgstr "secuencia de escape que no es ISO, `\\%c'"
-#: f/lex.c:665
+#: f/lex.c:660
#, c-format
msgid "unknown escape sequence `\\%c'"
msgstr "secuencia de escape desconocida, `\\%c'"
-#: f/lex.c:667
+#: f/lex.c:662
#, c-format
msgid "unknown escape sequence: `\\' followed by char code 0x%x"
msgstr "secuencia de escape desconocida: `\\' seguida por el código de caracter 0x%x"
-#: f/lex.c:744
+#: f/lex.c:739
msgid "badly formed directive -- no closing quote"
msgstr "directiva mal formada -- comilla sin cerrar"
-#: f/lex.c:802
+#: f/lex.c:797
msgid "#-lines for entering and leaving files don't match"
msgstr "el número de #-lines para entrar y salir de los ficheros no coinciden"
-#: f/lex.c:964
+#: f/lex.c:957
msgid "bad directive -- missing close-quote"
msgstr "directiva errónea -- falta una comilla que cierre"
-#: f/lex.c:1078
-#, c-format
-msgid "ignoring pragma: %s"
-msgstr "ignorando el pragma: %s"
-
-#: f/lex.c:1156
+#: f/lex.c:1096
msgid "invalid #ident"
msgstr "instrucción #ident inválida"
-#: f/lex.c:1173
+#: f/lex.c:1113
msgid "undefined or invalid # directive"
msgstr "directiva # no definida o inválida"
-#: f/lex.c:1229
+#: f/lex.c:1168
msgid "invalid #line"
msgstr "instrucción #line inválida"
-#: f/lex.c:1285 f/lex.c:1329
+#: f/lex.c:1224 f/lex.c:1268
msgid "use `#line ...' instead of `# ...' in first line"
msgstr "use `#line ...' en lugar de `# ...' en la primera línea"
-#: f/lex.c:1339
+#: f/lex.c:1278
msgid "invalid #-line"
msgstr "instrucción #-line inválida"
-#: f/lex.c:1432
+#: f/lex.c:1371
#, no-c-format
msgid "Null character at %0 -- line ignored"
msgstr "Carácter nulo en %0 -- línea ignorada"
-#: f/stb.c:12078
+#: f/stb.c:9177
#, no-c-format
msgid "INCLUDE at %0 not the only statement on the source line"
msgstr "INCLUDE en %0 no es la primera declaración en la línea de código"
-#: f/ste.c:1400 f/ste.c:1747
+#: f/ste.c:1397 f/ste.c:1744
msgid "ASSIGNed FORMAT specifier is too small"
msgstr "el especificador de FORMATo ASSIGNado es demasiado pequeño"
#. ~~~Someday handle CHARACTER*1, CHARACTER*N
-#: f/ste.c:2624
+#: f/ste.c:2621
#, no-c-format
msgid "SELECT CASE on CHARACTER type (at %0) not supported -- sorry"
msgstr "SELECT CASE en el tipo CHARACTER (en %0) no tiene soporte -- perdón"
-#: f/ste.c:2729
+#: f/ste.c:2725
msgid "SELECT (at %0) has duplicate cases -- check integer overflow of CASE(s)"
msgstr "SELECT (en %0) tiene casos duplicados -- revise el desbordamiento entero de los CASE(s)"
-#: f/ste.c:2959
+#: f/ste.c:2957
msgid "ASSIGN to variable that is too small"
msgstr "ASSIGN a una variable que es demasiado pequeña"
-#: f/ste.c:2987
+#: f/ste.c:2989
msgid "ASSIGNed GOTO target variable is too small"
msgstr "la variable ASSIGNada del objetivo GOTO es demasiado pequeña"
@@ -18422,333 +17874,25 @@ msgstr "la variable ASSIGNada del objetivo GOTO es demasiado pequeña"
msgid "Local adjustable symbol `%A' at %0"
msgstr "Símbolo local ajustable `%A' en %0"
-#: f/target.c:2550
+#: f/target.c:2545
msgid "data initializer on host with different endianness"
msgstr "inicializador de datos en el anfitrión con `endianness' diferente"
-#: f/top.c:237
-#, c-format
-msgid "%s no longer supported -- try -fvxt"
+#: f/top.c:244
+#, fuzzy
+msgid "-fvxt-not-f90 no longer supported -- try -fvxt"
msgstr "%s ya no tiene soporte -- intente -fvxt"
-#: f/top.c:239
-#, c-format
-msgid "%s no longer supported -- try -fno-vxt -ff90"
+#: f/top.c:248
+#, fuzzy
+msgid "-ff90-not-vxt no longer supported -- try -fno-vxt -ff90"
msgstr "%s ya no tiene soporte -- intente -fno-vxt -ff90"
-#: f/top.c:307 f/top.c:309
-#, c-format
-msgid "%s disabled, use normal debugging flags"
+#: f/top.c:318
+#, fuzzy
+msgid "-fdebug-kludge is disabled, use normal debugging flags"
msgstr "%s desactivado, use los interruptores normales de depuración"
-#: f/lang-options.h:33
-msgid "Print g77-specific compiler version info, run internal tests"
-msgstr "Imprime información de la versión específica del compilador g77, ejecuta pruebas internas"
-
-#: f/lang-options.h:37
-msgid "Program is written in typical FORTRAN 66 dialect"
-msgstr "El programa está escrito en el dialecto típico FORTRAN 66"
-
-#: f/lang-options.h:40
-msgid "Program is written in typical Unix f77 dialect"
-msgstr "El programa está escrito en el dialecto típico Unix f77"
-
-#: f/lang-options.h:42
-msgid "Program does not use Unix-f77 dialectal features"
-msgstr "El programa no utiliza las características del dialecto Unix-f77"
-
-#: f/lang-options.h:44
-msgid "Program is written in Fortran-90-ish dialect"
-msgstr "El programa en un dialecto cercano a Fortran-90"
-
-#: f/lang-options.h:48
-msgid "Treat local vars and COMMON blocks as if they were named in SAVE statements"
-msgstr "Tratar las variables locales y los bloques COMMON como si fueran nombrados en declaraciones SAVE"
-
-#: f/lang-options.h:50
-msgid "Allow $ in symbol names"
-msgstr "Permitir $ en los nombres de símbolos"
-
-#: f/lang-options.h:54
-msgid "f2c-compatible code need not be generated"
-msgstr "No se necesita generar código compatible con f2c"
-
-#: f/lang-options.h:57
-msgid "Unsupported; do not generate libf2c-calling code"
-msgstr "Sin soporte; no genera código de llamada a libf2c"
-
-#: f/lang-options.h:59
-msgid "Unsupported; affects code-generation of arrays"
-msgstr "Sin soporte; afecta la generación de código de las matrices"
-
-#: f/lang-options.h:62
-msgid "Program is written in Fortran-90-ish free form"
-msgstr "El programa está escrito en una forma libre cercana a Fortran-90"
-
-#: f/lang-options.h:67
-msgid "Warn about use of (only a few for now) Fortran extensions"
-msgstr "Avisar sobre el uso de (sólo algunas por ahora) extensiones Fortran"
-
-#: f/lang-options.h:70
-msgid "Program is written in VXT (Digital-like) FORTRAN"
-msgstr "El programa está escrito en VXT (como Digital) FORTRAN"
-
-#: f/lang-options.h:73
-msgid "Disallow all ugly features"
-msgstr "Desactiva todas las características feas"
-
-#: f/lang-options.h:76
-msgid "Hollerith and typeless constants not passed as arguments"
-msgstr "No se pasan las constantes hollerith y sin tipo como argumentos"
-
-#: f/lang-options.h:78
-msgid "Allow ordinary copying of ASSIGN'ed vars"
-msgstr "Permite la copia ordinaria de variables ASSIGNadas"
-
-#: f/lang-options.h:81
-msgid "Dummy array dimensioned to (1) is assumed-size"
-msgstr "La matriz falsa dimensionada a (1) es de tamaño asumido"
-
-#: f/lang-options.h:84
-msgid "Trailing comma in procedure call denotes null argument"
-msgstr "Coma al final de la llamada al procedimiento denota un argumento nulo"
-
-#: f/lang-options.h:87
-msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
-msgstr "Permite que REAL(Z) y AIMAG(Z) reciban DOUBLE COMPLEX Z"
-
-#: f/lang-options.h:91
-msgid "Initialization via DATA and PARAMETER is type-compatible"
-msgstr "La inicialización a través de DATA y PARAMETER es de tipos compatibles"
-
-#: f/lang-options.h:93
-msgid "Allow INTEGER and LOGICAL interchangeability"
-msgstr "Permite el intercambio entre INTEGER y LOGICAL"
-
-#: f/lang-options.h:96
-msgid "Print internal debugging-related info"
-msgstr "Muestra la información interna relacionada con la depuración"
-
-#: f/lang-options.h:99
-msgid "Initialize local vars and arrays to zero"
-msgstr "Inicializa las variables locales y matrices a cero"
-
-#: f/lang-options.h:103
-msgid "Backslashes in character/hollerith constants not special (C-style)"
-msgstr "Las barras invertidas en constantes de caracter/hollerith no son especiales (estilo C)"
-
-#: f/lang-options.h:105
-msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
-msgstr "Hace que el frente emule aritmética COMPLEX para evitar `bugs'"
-
-#: f/lang-options.h:109
-msgid "Disable the appending of underscores to externals"
-msgstr "Desactiva la agregación de subrayados a los externos"
-
-#: f/lang-options.h:112
-msgid "Never append a second underscore to externals"
-msgstr "Nunca agregar un segundo subrayado a los externos"
-
-#: f/lang-options.h:114
-msgid "Intrinsics spelled as e.g. SqRt"
-msgstr "Intrínsecos deletreados como p.e. SqRt"
-
-#: f/lang-options.h:116
-msgid "Intrinsics in uppercase"
-msgstr "Intrínsecos en mayúsculas"
-
-#: f/lang-options.h:119
-msgid "Intrinsics letters in arbitrary cases"
-msgstr "Letras de intrínsecos con mayúsculas/minúsculas indistintas"
-
-#: f/lang-options.h:121
-msgid "Language keywords spelled as e.g. IOStat"
-msgstr "Palabras claves del lenguaje deletreadas como p.e. IOStat"
-
-#: f/lang-options.h:123
-msgid "Language keywords in uppercase"
-msgstr "Palabras claves del lenguaje en mayúsculas"
-
-#: f/lang-options.h:126
-msgid "Language keyword letters in arbitrary cases"
-msgstr "Palabras claves del lenguaje con mayúsculas/minúsculas indistintas"
-
-#: f/lang-options.h:128
-msgid "Internally convert most source to uppercase"
-msgstr "Convertir internamente casi todo el código a mayúsculas"
-
-#: f/lang-options.h:131
-msgid "Internally preserve source case"
-msgstr "Preservar internamente las mayúsculas y minúsculas del código fuente"
-
-#: f/lang-options.h:133
-msgid "Symbol names spelled in mixed case"
-msgstr "Nombres de símbolo deletreados con mayúsculas/minúsculas mezcladas"
-
-#: f/lang-options.h:135
-msgid "Symbol names in uppercase"
-msgstr "Nombres de símbolo en mayúsculas"
-
-#: f/lang-options.h:137
-msgid "Symbol names in lowercase"
-msgstr "Nombres de símbolo en minúsculas"
-
-#: f/lang-options.h:140
-msgid "Program written in uppercase"
-msgstr "Programa escrito en mayúsculas"
-
-#: f/lang-options.h:142
-msgid "Program written in lowercase"
-msgstr "Programa escrito en minúsculas"
-
-#: f/lang-options.h:144
-msgid "Program written in strict mixed-case"
-msgstr "Programa escrito estrictamente con mayúsculas y minúsculas mezcladas"
-
-#: f/lang-options.h:146
-msgid "Compile as if program written in uppercase"
-msgstr "Compilar como si el programa estuviera escrito en mayúsculas"
-
-#: f/lang-options.h:148
-msgid "Compile as if program written in lowercase"
-msgstr "Compilar como si el programa estuviera escrito en minúsculas"
-
-#: f/lang-options.h:150
-msgid "Preserve all spelling (case) used in program"
-msgstr "Preservar todo el deletreo (mayúsculas/minúsculas) usado en el programa"
-
-#: f/lang-options.h:152
-msgid "Delete libU77 intrinsics with bad interfaces"
-msgstr "Borrar los intrínsecos libU77 con interfaces erróneas"
-
-#: f/lang-options.h:154
-msgid "Disable libU77 intrinsics with bad interfaces"
-msgstr "Desactivar los intrínsecos libU77 con interfaces erróneas"
-
-#: f/lang-options.h:157
-msgid "Hide libU77 intrinsics with bad interfaces"
-msgstr "Esconder los intrínsecos libU77 con interfaces erróneas"
-
-#: f/lang-options.h:159
-msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
-msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que f2c soporta"
-
-#: f/lang-options.h:161
-msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
-msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que f2c soporta"
-
-#: f/lang-options.h:164
-msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
-msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que f2c soporta"
-
-#: f/lang-options.h:166
-msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
-msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que F90 soporta"
-
-#: f/lang-options.h:168
-msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
-msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que F90 soporta"
-
-#: f/lang-options.h:171
-msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
-msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que F90 soporta"
-
-#: f/lang-options.h:173
-msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
-msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que g77 soporta"
-
-#: f/lang-options.h:175
-msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
-msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que g77 soporta"
-
-#: f/lang-options.h:178
-msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
-msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que g77 soporta"
-
-#: f/lang-options.h:180
-msgid "Delete MIL-STD 1753 intrinsics"
-msgstr "Borrar los intrínsecos MIL-STD 1753"
-
-#: f/lang-options.h:182
-msgid "Disable MIL-STD 1753 intrinsics"
-msgstr "Desactivar los intrínsecos MIL-STD 1753"
-
-#: f/lang-options.h:185
-msgid "Hide MIL-STD 1753 intrinsics"
-msgstr "Esconder los intrínsecos MIL-STD 1753"
-
-#: f/lang-options.h:187
-msgid "Delete libU77 intrinsics"
-msgstr "Borrar los intrínsecos libU77"
-
-#: f/lang-options.h:189
-msgid "Disable libU77 intrinsics"
-msgstr "Desactivar los intrínsecos libU77"
-
-#: f/lang-options.h:192
-msgid "Hide libU77 intrinsics"
-msgstr "Borrar los intrínsecos libU77"
-
-#: f/lang-options.h:194
-msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que VXT FORTRAN soporta"
-
-#: f/lang-options.h:196
-msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que VXT FORTRAN soporta"
-
-#: f/lang-options.h:199
-msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que VXT FORTRAN soporta"
-
-#: f/lang-options.h:201
-msgid "Treat initial values of 0 like non-zero values"
-msgstr "Tratar los valores iniciales de 0 como valores que no son cero"
-
-#: f/lang-options.h:204
-msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
-msgstr "Emitir información especial de depuración para COMMON y EQUIVALENCE (desactivado)"
-
-#: f/lang-options.h:207
-msgid "Take at least one trip through each iterative DO loop"
-msgstr "Tomar al menos un viaje a través de cada ciclo DO iterativo"
-
-#: f/lang-options.h:211
-msgid "Print names of program units as they are compiled"
-msgstr "Mostrar los nombres de las unidades de programa mientras son compiladas"
-
-#: f/lang-options.h:214
-msgid "Disable fatal diagnostics about inter-procedural problems"
-msgstr "Desactivar los diagnósticos fatales sobre problemas interprocedurales"
-
-#: f/lang-options.h:216
-msgid "Make prefix-radix non-decimal constants be typeless"
-msgstr "Hacer que no tengan tipo las constantes con prefijo-radical que no es decimal"
-
-#: f/lang-options.h:219
-msgid "Generate code to check subscript and substring bounds"
-msgstr "Generar código para revisar los límites de subíndices y subcadenas"
-
-#: f/lang-options.h:222
-msgid "Fortran-specific form of -fbounds-check"
-msgstr "Forma específica de Fortran de -fbounds-check"
-
-#: f/lang-options.h:226
-msgid "Disable warnings about inter-procedural problems"
-msgstr "Desactivar los avisos sobre problemas interprocedurales"
-
-#: f/lang-options.h:230
-msgid "Warn about constructs with surprising meanings"
-msgstr "Avisar acerca de constructores con significados sorprendentes"
-
-#: f/lang-options.h:235
-msgid "Add a directory for INCLUDE searching"
-msgstr "Agregar un directorio para la búsqueda de INCLUDE"
-
-#: f/lang-options.h:237
-msgid "Set the maximum line length"
-msgstr "Establecer la longitud máxima de línea"
-
#: f/bad.def:39
#, no-c-format
msgid "Missing first operand for binary operator at %0"
@@ -19656,320 +18800,350 @@ msgstr "En la lista de nombres"
msgid "In anything"
msgstr "En cualquier"
-#: java/check-init.c:917
+#: java/check-init.c:905
#, c-format
msgid "internal error in check-init: tree code not implemented: %s"
msgstr "error interno en check-init: árbol de código no implementado: %s"
-#: java/check-init.c:990
-#, c-format
-msgid "final field '%s' may not have been initialized"
+#: java/check-init.c:977
+#, fuzzy
+msgid "%Jfinal field '%D' may not have been initialized"
msgstr "el campo final '%s' puede no haber sido inicializado"
-#: java/class.c:539 java/class.c:564
+#: java/class.c:592 java/class.c:616
msgid "internal error - too many interface type"
msgstr "error interno - demasiados tipos de interfaz"
-#: java/class.c:677
+#: java/class.c:715
msgid "bad method signature"
msgstr "firma de método errónea"
-#: java/class.c:726
+#: java/class.c:759
msgid "misplaced ConstantValue attribute (not in any field)"
msgstr "atributo ConstantValue mal colocado (no está en ningún campo)"
-#: java/class.c:728
+#: java/class.c:761
#, c-format
msgid "duplicate ConstantValue attribute for field '%s'"
msgstr "atributo ConstantValue duplicado para el campo '%s'"
-#: java/class.c:739
+#: java/class.c:772
#, c-format
msgid "ConstantValue attribute of field '%s' has wrong type"
msgstr "el atributo ConstantValue del campo '%s' tiene un tipo erróneo"
-#: java/class.c:1103
+#: java/class.c:1067
#, c-format
msgid "field '%s' not found in class"
msgstr "no se encuentra el campo '%s' en la clase"
-#: java/class.c:1365
-msgid "abstract method in non-abstract class"
+#: java/class.c:1324
+#, fuzzy
+msgid "%Jabstract method in non-abstract class"
msgstr "método abstracto en la clase que no es abstracta"
-#: java/class.c:2078
-#, c-format
-msgid "non-static method '%s' overrides static method"
+#: java/class.c:2140
+#, fuzzy
+msgid "%Jnon-static method '%D' overrides static method"
msgstr "el método '%s' que no es estático anula al método estático"
-#: java/decl.c:1541
+#: java/decl.c:1018
+#, fuzzy
+msgid "%J'%D' used prior to declaration"
+msgstr "se usa `%#D' previo a la declaración"
+
+#: java/decl.c:1059
+#, c-format
+msgid "declaration of `%s' shadows a parameter"
+msgstr "la declaración de `%s' oscurece un parámetro"
+
+#: java/decl.c:1062
#, c-format
-msgid "In %s: overlapped variable and exception ranges at %d"
+msgid "declaration of `%s' shadows a symbol from the parameter list"
+msgstr "la declaración de `%s' oscurece un símbolo de la lista de parámetros"
+
+#: java/decl.c:1361
+#, fuzzy
+msgid "%Jlabel '%D' used but not defined"
+msgstr "se usa la etiqueta `%D' pero no está definida"
+
+#: java/decl.c:1366
+#, fuzzy
+msgid "%Jlabel '%D' defined but not used"
+msgstr "la etiqueta `%D' está definida pero no se usa"
+
+#: java/decl.c:1494
+#, fuzzy
+msgid "%JIn %D: overlapped variable and exception ranges at %d"
msgstr "En %s: variable sobreescrita y rangos de excepción en %d"
-#: java/decl.c:1622
+#: java/decl.c:1572
msgid "bad type in parameter debug info"
msgstr "tipo erróneo en la información de parámetros de depuración"
-#: java/decl.c:1632
-#, c-format
-msgid "bad PC range for debug info for local `%s'"
+#: java/decl.c:1581
+#, fuzzy
+msgid "%Jbad PC range for debug info for local '%D'"
msgstr "rango de PC erróneo para la información de depuración para `%s' local"
-#: java/expr.c:530
+#: java/expr.c:519
msgid "stack underflow - dup* operation"
msgstr "desbordamiento de la pila - operación dup*"
-#: java/expr.c:1534
+#: java/expr.c:1469
#, c-format
msgid "reference `%s' is ambiguous: appears in interface `%s' and interface `%s'"
msgstr "la referencia `%s' es ambigua: aparece en la interfaz `%s' y en la interfaz `%s'"
-#: java/expr.c:1563
+#: java/expr.c:1497
#, c-format
msgid "field `%s' not found"
msgstr "no se encuentra el campo `%s'"
-#: java/expr.c:1715
+#: java/expr.c:1658
msgid "ret instruction not implemented"
msgstr "no se ha implementado aún la instrucción ret"
-#: java/expr.c:1857
+#: java/expr.c:1815
#, c-format
msgid "method '%s' not found in class"
msgstr "no se encuentra el método '%s' en la clase"
-#: java/expr.c:2060
+#: java/expr.c:2020
#, c-format
msgid "failed to find class '%s'"
msgstr "no se encontró la clase '%s'"
-#: java/expr.c:2070
+#: java/expr.c:2030
#, c-format
msgid "class '%s' has no method named '%s' matching signature '%s'"
msgstr "la clase '%s' no tiene un método llamado '%s' que coincida con la firma '%s'"
-#: java/expr.c:2080
+#: java/expr.c:2040
msgid "invokestatic on non static method"
msgstr "invokestatic en un método no estático"
-#: java/expr.c:2085
+#: java/expr.c:2045
msgid "invokestatic on abstract method"
msgstr "invokestatic en un método abstracto"
-#: java/expr.c:2093
+#: java/expr.c:2053
msgid "invoke[non-static] on static method"
msgstr "invoke[no-estático] en un método estático"
-#: java/expr.c:2396
+#: java/expr.c:2352
#, c-format
msgid "missing field '%s' in '%s'"
msgstr "falta el campo '%s' en '%s'"
-#: java/expr.c:2402
+#: java/expr.c:2358
#, c-format
msgid "mismatching signature for field '%s' in '%s'"
msgstr "no coincide la firma para el campo '%s' en '%s'"
-#: java/expr.c:2425
-#, c-format
-msgid "assignment to final field `%s' not in field's class"
+#: java/expr.c:2380
+#, fuzzy
+msgid "%Jassignment to final field '%D' not in field's class"
msgstr "la asignación para el campo final `%s' no está en el campo de la clase"
-#: java/expr.c:2430
-#, c-format
-msgid "assignment to final static field `%s' not in class initializer"
+#: java/expr.c:2385
+#, fuzzy
+msgid "%Jassignment to final static field `%D' not in class initializer"
msgstr "la asignación para el campo final estático `%s' no está en el inicializador de la clase"
-#: java/expr.c:2437
-#, c-format
-msgid "assignment to final field `%s' not in constructor"
+#: java/expr.c:2393
+#, fuzzy
+msgid "%Jassignment to final field '%D' not in constructor"
msgstr "la asignación al campo final `%s' no está en el constructor"
-#: java/expr.c:2684
+#: java/expr.c:2636
#, c-format
msgid "can't expand %s"
msgstr "no se puede expandir %s"
-#: java/expr.c:2861
+#: java/expr.c:2808
msgid "invalid PC in line number table"
msgstr "PC inválido en la tabla de números de línea"
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2906
+#: java/expr.c:2854
#, c-format
msgid "unreachable bytecode from %d to before %d"
msgstr "bytecode inalcanzable desde %d hasta antes de %d"
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2943
+#: java/expr.c:2892
#, c-format
msgid "unreachable bytecode from %d to the end of the method"
msgstr "bytecode inalcanzable desde %d hasta el final del método"
#. duplicate code from LOAD macro
-#: java/expr.c:3261
+#: java/expr.c:3206
msgid "unrecogized wide sub-instruction"
msgstr "no se reconoce la sub-instrucción ancha"
-#: java/jcf-io.c:543
+#: java/jcf-io.c:534
#, c-format
msgid "source file for class `%s' is newer than its matching class file. Source file `%s' used instead"
msgstr "el fichero fuente para la clase `%s' es más nuevo que su fichero de clase coincidente. Se usa entonces el fichero fuente `%s'"
-#: java/jcf-parse.c:338
+#: java/jcf-parse.c:330
msgid "bad string constant"
msgstr "constante de cadena errónea"
-#: java/jcf-parse.c:356
+#: java/jcf-parse.c:348
#, c-format
msgid "bad value constant type %d, index %d"
msgstr "valor erróneo del tipo constante %d, índice %d"
-#: java/jcf-parse.c:528
-#, c-format
-msgid "can't reopen %s"
+#: java/jcf-parse.c:514
+#, fuzzy, c-format
+msgid "can't reopen %s: %m"
msgstr "no se puede reabrir %s"
-#: java/jcf-parse.c:533
-#, c-format
-msgid "can't close %s"
+#: java/jcf-parse.c:519
+#, fuzzy, c-format
+msgid "can't close %s: %m"
msgstr "no se puede cerrar %s"
-#: java/jcf-parse.c:619
+#: java/jcf-parse.c:604
#, c-format
msgid "cannot find file for class %s"
msgstr "no se puede encontrar el fichero para la clase %s"
-#: java/jcf-parse.c:631
+#: java/jcf-parse.c:615
msgid "not a valid Java .class file"
msgstr "no es un fichero .class de Java válido"
-#: java/jcf-parse.c:634
+#: java/jcf-parse.c:618
msgid "error while parsing constant pool"
msgstr "error mientras se analizaba el conjunto de constantes"
-#: java/jcf-parse.c:637
+#: java/jcf-parse.c:621
#, c-format
msgid "error in constant pool entry #%d\n"
msgstr "error en la entrada de #%d del conjunto de constantes\n"
#. FIXME - where was first time
-#: java/jcf-parse.c:649
+#: java/jcf-parse.c:633
#, c-format
msgid "reading class %s for the second time from %s"
msgstr "leyendo la clase %s por segunda vez desde %s"
-#: java/jcf-parse.c:667
+#: java/jcf-parse.c:651
msgid "error while parsing fields"
msgstr "error mientras se analizaban los campos"
-#: java/jcf-parse.c:670
+#: java/jcf-parse.c:654
msgid "error while parsing methods"
msgstr "error mientras se analizaban los métodos"
-#: java/jcf-parse.c:673
+#: java/jcf-parse.c:657
msgid "error while parsing final attributes"
msgstr "error mientras se analizaban los atributos finales"
-#: java/jcf-parse.c:687
+#: java/jcf-parse.c:671
#, c-format
msgid "the `java.lang.Object' that was found in `%s' didn't have the special zero-length `gnu.gcj.gcj-compiled' attribute. This generally means that your classpath is incorrectly set. Use `info gcj \"Input Options\"' to see the info page describing how to set the classpath"
msgstr "el `java.lang.Object' que se encontró en `%s' no tiene el atributo especial de longitud cero `gnu.gcj.gcj-compiled'. Esto significa generalmente que su ruta de clases está establecida incorrectamente. Use `info gcj \"Input Options\"' para ver la página de info que describe cómo establecer la ruta de clases"
-#: java/jcf-parse.c:777
+#: java/jcf-parse.c:749
msgid "missing Code attribute"
msgstr "falta el atributo Code"
-#: java/jcf-parse.c:1014
-msgid "source file seen twice on command line and will be compiled only once"
+#: java/jcf-parse.c:981
+#, fuzzy
+msgid "%Hsource file seen twice on command line and will be compiled only once"
msgstr "el fichero fuente se vio dos veces en la línea de comando y se compilará solo una vez"
-#: java/jcf-parse.c:1030
+#: java/jcf-parse.c:997
msgid "no input file specified"
msgstr "no se especificaron ficheros de entrada"
-#: java/jcf-parse.c:1059
-#, c-format
-msgid "can't close input file %s"
+#: java/jcf-parse.c:1026
+#, fuzzy, c-format
+msgid "can't close input file %s: %m"
msgstr "no se puede cerrar el fichero de entrada %s"
-#: java/jcf-parse.c:1096
+#: java/jcf-parse.c:1064
#, c-format
msgid "bad zip/jar file %s"
msgstr "fichero zip/jar %s erróneo"
-#: java/jcf-write.c:2650
+#: java/jcf-parse.c:1236
+#, fuzzy, c-format
+msgid "error while reading %s from zip file"
+msgstr "error mientras se analizaban los campos"
+
+#: java/jcf-write.c:2602
#, c-format
msgid "internal error in generate_bytecode_insn - tree code not implemented: %s"
msgstr "error interno en generate_bytecode_insn - no se ha implementado el árbol de código: %s"
-#: java/jcf-write.c:2988
+#: java/jcf-write.c:2934
msgid "field initializer type mismatch"
msgstr "no coincide el tipo del inicializador del campo"
-#: java/jcf-write.c:3419
-#, c-format
-msgid "can't create directory %s"
+#: java/jcf-write.c:3389
+#, fuzzy, c-format
+msgid "can't create directory %s: %m"
msgstr "no se puede crear el directorio %s"
-#: java/jcf-write.c:3473
-#, c-format
-msgid "can't create %s"
+#: java/jcf-write.c:3442
+#, fuzzy, c-format
+msgid "can't create %s: %m"
msgstr "no se puede crear %s"
-#: java/jv-scan.c:187
+#: java/jv-scan.c:185
msgid "only one of `--print-main', `--list-class', and `--complexity' allowed"
msgstr "sólo se permite uno de `--print-main', `--list-class' y `--complexity'"
-#: java/jv-scan.c:190
+#: java/jv-scan.c:188
#, c-format
msgid "can't open output file `%s'"
msgstr "no se puede abrir el fichero de salida `%s'"
-#: java/jv-scan.c:224
+#: java/jv-scan.c:222
#, c-format
msgid "file not found `%s'"
msgstr "no se puede encontrar el fichero `%s'"
-#: java/jvspec.c:426
+#: java/jvspec.c:418
msgid "can't specify `-D' without `--main'\n"
msgstr "no se puede especificar `-D' sin `--main'\n"
-#: java/jvspec.c:429
+#: java/jvspec.c:421
#, c-format
msgid "`%s' is not a valid class name"
msgstr "`%s' no es un nombre de clase válido"
-#: java/jvspec.c:435
+#: java/jvspec.c:427
msgid "--resource requires -o"
msgstr "--resource requiere -o"
-#: java/jvspec.c:442
+#: java/jvspec.c:434
msgid "warning: already-compiled .class files ignored with -C"
msgstr "aviso: se ignoraron los ficheros .class que ya fueron compilados con -C"
-#: java/jvspec.c:449
+#: java/jvspec.c:441
msgid "cannot specify both -C and -o"
msgstr "no se pueden especificar -C y -o al mismo tiempo"
-#: java/jvspec.c:461
+#: java/jvspec.c:453
msgid "cannot create temporary file"
msgstr "no se puede crear el fichero temporal"
-#: java/jvspec.c:489
+#: java/jvspec.c:481
msgid "using both @FILE with multiple files not implemented"
msgstr "no está implementado usar ambos @FILE con ficheros múltiples"
-#: java/jvspec.c:538
+#: java/jvspec.c:530
msgid "cannot specify `main' class when not linking"
msgstr "no se puede especificar la clase `main' cuando no se está enlazando"
-#: java/lang.c:548
+#: java/lang.c:740
msgid "can't do dependency tracking with input from stdin"
msgstr "no se puede hacer la revisión de dependencias con entrada desde entrada estándard"
-#: java/lang.c:564
+#: java/lang.c:756
msgid "couldn't determine target name for dependency tracking"
msgstr "no se puede determinar el nombre del objetivo para la revisión de dependencias"
@@ -19988,300 +19162,210 @@ msgstr ""
"Si no está intentando usar una codificación particular para su\n"
"fichero de entrada, utilice la opción `--encoding=UTF-8'"
-#: java/mangle.c:85
+#: java/mangle.c:89
#, c-format
msgid "can't mangle %s"
msgstr "no se puede deshacer %s"
-#: java/mangle_name.c:144 java/mangle_name.c:216
+#: java/mangle_name.c:140 java/mangle_name.c:210
msgid "internal error - invalid Utf8 name"
msgstr "error interno - nombre Utf8 inválido"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:881
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:962
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1303
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1364
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1574
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1796
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1805
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1816
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1827
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1839
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1854
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1871
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1873
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1945
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2116
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2178
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2330
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2342
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2349
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2356
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2367
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2369
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2407
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2409
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2411
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2432
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2434
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2436
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2452
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2454
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2475
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2477
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2479
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2507
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2509
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2511
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2513
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2531
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2533
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2555
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2566
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2577
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2588
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2601
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2605
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2607
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2620
+#: java/parse-scan.y:880 java/parse.y:949 java/parse.y:1290 java/parse.y:1351
+#: java/parse.y:1555 java/parse.y:1777 java/parse.y:1786 java/parse.y:1797
+#: java/parse.y:1808 java/parse.y:1820 java/parse.y:1835 java/parse.y:1852
+#: java/parse.y:1854 java/parse.y:1935 java/parse.y:2106 java/parse.y:2168
+#: java/parse.y:2320 java/parse.y:2332 java/parse.y:2339 java/parse.y:2346
+#: java/parse.y:2357 java/parse.y:2359 java/parse.y:2397 java/parse.y:2399
+#: java/parse.y:2401 java/parse.y:2422 java/parse.y:2424 java/parse.y:2426
+#: java/parse.y:2442 java/parse.y:2444 java/parse.y:2465 java/parse.y:2467
+#: java/parse.y:2469 java/parse.y:2497 java/parse.y:2499 java/parse.y:2501
+#: java/parse.y:2503 java/parse.y:2521 java/parse.y:2523 java/parse.y:2534
+#: java/parse.y:2545 java/parse.y:2556 java/parse.y:2567 java/parse.y:2578
+#: java/parse.y:2591 java/parse.y:2595 java/parse.y:2597 java/parse.y:2610
msgid "Missing term"
msgstr "Falta el término"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:883
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:734
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:772
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:797
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:983
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1338
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1550
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1552
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1781
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1807
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1818
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1829
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1841
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1856
+#: java/parse-scan.y:882 java/parse.y:721 java/parse.y:759 java/parse.y:784
+#: java/parse.y:970 java/parse.y:1325 java/parse.y:1531 java/parse.y:1533
+#: java/parse.y:1762 java/parse.y:1788 java/parse.y:1799 java/parse.y:1810
+#: java/parse.y:1822 java/parse.y:1837
msgid "';' expected"
msgstr "se esperaba ';'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:732
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:770
+#: java/parse.y:719 java/parse.y:757
msgid "Missing name"
msgstr "Falta el nombre"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:795
+#: java/parse.y:782
msgid "'*' expected"
msgstr "se esperaba '*'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:809
+#: java/parse.y:796
msgid "Class or interface declaration expected"
msgstr "se esperaba una declaración de clase o interfaz"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:846
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:848
+#: java/parse.y:833 java/parse.y:835
msgid "Missing class name"
msgstr "Falta el nombre de la clase"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:851
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:855
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:863
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1023
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1284
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1616
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1867
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1899
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1952
+#: java/parse.y:838 java/parse.y:842 java/parse.y:850 java/parse.y:1010
+#: java/parse.y:1271 java/parse.y:1273 java/parse.y:1597 java/parse.y:1848
+#: java/parse.y:1880 java/parse.y:1942
msgid "'{' expected"
msgstr "Se esperaba '{'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:865
+#: java/parse.y:852
msgid "Missing super class name"
msgstr "No se encuentra el nombre de la super clase"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:875
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:891
+#: java/parse.y:862 java/parse.y:878
msgid "Missing interface name"
msgstr "No se encuentra el nombre de la interfaz"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:977
+#: java/parse.y:964
msgid "Missing variable initializer"
msgstr "Falta el inicializador de la variable"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:994
+#: java/parse.y:981
msgid "Invalid declaration"
msgstr "Declaración inválida"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:997
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1082
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2153
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2175
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2179
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2214
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2291
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2301
+#: java/parse.y:984 java/parse.y:1069 java/parse.y:2143 java/parse.y:2165
+#: java/parse.y:2169 java/parse.y:2204 java/parse.y:2281 java/parse.y:2291
msgid "']' expected"
msgstr "Se esperaba ']'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1001
+#: java/parse.y:988
msgid "Unbalanced ']'"
msgstr "']' desbalanceado"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1037
+#: java/parse.y:1024
msgid "Invalid method declaration, method name required"
msgstr "Declaración de método inválida, se requiere un nombre de método"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1042
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1047
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1052
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2036
+#: java/parse.y:1029 java/parse.y:1034 java/parse.y:1039 java/parse.y:2026
msgid "Identifier expected"
msgstr "Se esperaba un identificador"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1057
+#: java/parse.y:1044
msgid "Invalid method declaration, return type required"
msgstr "Declaración de método inválida, se requiere un tipo de devolución"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1080
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1530
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1537
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1546
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1548
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1576
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1684
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1981
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2034
+#: java/parse.y:1067 java/parse.y:1511 java/parse.y:1518 java/parse.y:1527
+#: java/parse.y:1529 java/parse.y:1557 java/parse.y:1665 java/parse.y:1971
+#: java/parse.y:2024
msgid "')' expected"
msgstr "Se esperaba ')'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1096
+#: java/parse.y:1083
msgid "Missing formal parameter term"
msgstr "Falta el término de parámetro formal"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1111
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1116
+#: java/parse.y:1098 java/parse.y:1103
msgid "Missing identifier"
msgstr "Falta el identificador"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1136
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1145
+#: java/parse.y:1123 java/parse.y:1132
msgid "Missing class type term"
msgstr "Falta el término de tipo de clase"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1301
+#: java/parse.y:1288
msgid "Invalid interface type"
msgstr "Tipo de interfaz inválido"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1494
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1663
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1665
+#: java/parse.y:1475 java/parse.y:1644 java/parse.y:1646
msgid "':' expected"
msgstr "Se esperaba ':'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1516
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1521
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1526
+#: java/parse.y:1497 java/parse.y:1502 java/parse.y:1507
msgid "Invalid expression statement"
msgstr "Declaración de expresión inválida"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1572
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1612
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1680
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1748
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1869
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1938
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2028
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2030
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2038
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2274
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2276
+#: java/parse.y:1525 java/parse.y:1553 java/parse.y:1593 java/parse.y:1661
+#: java/parse.y:1729 java/parse.y:1850 java/parse.y:1928 java/parse.y:2018
+#: java/parse.y:2020 java/parse.y:2028 java/parse.y:2264 java/parse.y:2266
msgid "'(' expected"
msgstr "Se esperaba '('"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1614
+#: java/parse.y:1595
msgid "Missing term or ')'"
msgstr "Falta término o ')'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1661
+#: java/parse.y:1642
msgid "Missing or invalid constant expression"
msgstr "Expresión constante faltante o inválida"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1682
+#: java/parse.y:1663
msgid "Missing term and ')' expected"
msgstr "Faltan término y ')' esperados"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1721
+#: java/parse.y:1702
msgid "Invalid control expression"
msgstr "Expresión de control inválida"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1723
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1725
+#: java/parse.y:1704 java/parse.y:1706
msgid "Invalid update expression"
msgstr "Expresión de actualización inválida"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1750
+#: java/parse.y:1731
msgid "Invalid init statement"
msgstr "Declaración de inicio inválida"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1941
+#: java/parse.y:1931
msgid "Missing term or ')' expected"
msgstr "Faltan término o ')' esperados"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1983
+#: java/parse.y:1973
msgid "'class' or 'this' expected"
msgstr "Se esperaba 'class' o 'this'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1985
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1987
+#: java/parse.y:1975 java/parse.y:1977
msgid "'class' expected"
msgstr "Se esperaba 'class'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2032
+#: java/parse.y:2022
msgid "')' or term expected"
msgstr "Se esperaba ')' o término"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2151
+#: java/parse.y:2141
msgid "'[' expected"
msgstr "Se esperaba '['"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2229
+#: java/parse.y:2219
msgid "Field expected"
msgstr "Se esperaba un campo"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2296
+#: java/parse.y:2276 java/parse.y:2286
msgid "Missing term and ']' expected"
msgstr "Faltan término y ']' esperados"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2400
+#: java/parse.y:2390
msgid "']' expected, invalid type expression"
msgstr "Se esperaba ']', expresión de tipo inválida"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2403
+#: java/parse.y:2393
msgid "Invalid type expression"
msgstr "Expresión de tipo inválida"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2515
+#: java/parse.y:2505
msgid "Invalid reference type"
msgstr "Tipo de referencia inválido"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2993
+#: java/parse.y:2977
msgid "Constructor invocation must be first thing in a constructor"
msgstr "La invocación del constructor debe ser el primer elemento en un constructor"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2995
+#: java/parse.y:2979
msgid "Only constructors can invoke constructors"
msgstr "Solamente los constructores pueden invocar constructores"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3004
+#: java/parse.y:2987
#, c-format
msgid ": `%s' JDK1.1(TM) feature"
msgstr ": `%s' es una característica de JDK1.1(MR)"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3064
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3066
+#: java/parse.y:3046 java/parse.y:3048
#, c-format
msgid ""
"%s.\n"
@@ -20290,244 +19374,227 @@ msgstr ""
"%s.\n"
"%s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6879
+#: java/parse.y:6908
#, c-format
msgid "malformed .zip archive in CLASSPATH: %s"
msgstr "archivo .zip malformado en CLASSPATH: %s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6950
+#: java/parse.y:6979
#, c-format
msgid "Can't find default package `%s'. Check the CLASSPATH environment variable and the access to the archives"
msgstr "No se puede encontrar el paquete por defecto `%s'. Revise la variable de ambiente CLASSPATH y el acceso a los archivos"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12352
+#: java/parse.y:12192
#, c-format
msgid "missing static field `%s'"
msgstr "falta el campo static `%s'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12357
+#: java/parse.y:12197
#, c-format
msgid "not a static field `%s'"
msgstr "'%s' no es un campo static"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12400
+#: java/parse.y:12240
#, c-format
msgid "No case for %s"
msgstr "No hay case para %s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:13365
+#: java/parse.y:13172
#, c-format
msgid "unregistered operator %s"
msgstr "operador %s sin registrar"
-#: java/typeck.c:553
+#: java/typeck.c:530
msgid "junk at end of signature string"
msgstr "basura al final de la cadena de firma"
-#: java/verify.c:479
+#: java/verify.c:471
msgid "bad pc in exception_table"
msgstr "pc erróneo en exception_table"
-#: java/verify.c:485
-msgid "exception handler inside code that is being protected"
-msgstr "manejador de excepciones dentro del código que se está protegiendo"
-
-#: java/verify.c:1395
+#: java/verify.c:1384
#, c-format
msgid "unknown opcode %d@pc=%d during verification"
msgstr "opcode desconocido %d@pc=%d durante la verificación"
-#: java/verify.c:1465 java/verify.c:1478 java/verify.c:1482
+#: java/verify.c:1454 java/verify.c:1467 java/verify.c:1471
#, c-format
msgid "verification error at PC=%d"
msgstr "error de verificación en PC=%d"
-#: java/lang-options.h:32
-msgid "Disable automatic array bounds checking"
-msgstr "Desactivar la revisión automática de límites de matrices"
-
-#: java/lang-options.h:34
-msgid "Disable assignability checks for stores into object arrays"
-msgstr "Desactivar revisiones de asignabilidad para almacenamientos en matrices de objetos"
-
-#: java/lang-options.h:36
-msgid "Assume native functions are implemented using JNI"
-msgstr "Asumir que las funciones nativas se implementan usando JNI"
-
-#: java/lang-options.h:38
-msgid "Replace system path"
-msgstr "Reemplazar la ruta del sistema"
-
-#: java/lang-options.h:40
-msgid "Set class path"
-msgstr "Establecer la ruta de clases"
-
-#: java/lang-options.h:42
-msgid "Set class path (deprecated: use --classpath instead)"
-msgstr "Establecer la ruta de clases (obsoleto: utilice en su lugar --classpath)"
-
-#: java/lang-options.h:44
-msgid "Choose class whose main method should be used"
-msgstr "Escoger la clase cuyo método main debería ser usado"
-
-#: java/lang-options.h:46
-msgid "Choose input encoding (default comes from locale)"
-msgstr "Escoger la codificación de entrada (por defecto viene del local)"
-
-#: java/lang-options.h:48
-msgid "Add directory to class path"
-msgstr "Agregar el directorio a la ruta de clases"
-
-#: java/lang-options.h:50
-msgid "Directory where class files should be written"
-msgstr "Directorio donde se escribirán los ficheros de clase"
-
-#: java/lang-options.h:52
-msgid "Warn if modifiers are specified when not necessary"
-msgstr "Avisar si se especifican modificadores cuando no son necesarios"
-
-#: java/lang-options.h:54
-msgid "Warn if deprecated empty statements are found"
-msgstr "Avisar si se encuentran declaraciones vacías obsoletas"
-
-#: java/lang-options.h:56
-msgid "Warn if .class files are out of date"
-msgstr "Avisar si los ficheros .class están desactualizados"
-
-#: java/lang-options.h:58
-msgid "Always check for non gcj generated classes archives"
-msgstr "Revisar siempre por archivos de clases no generados por gcj"
-
-#: java/lang-options.h:60
-msgid "Never optimize static class initialization code"
-msgstr "Nunca optimizar el código de inicialización de las clases static"
-
-#: java/lang-options.h:62
-msgid "Use offset tables for virtual method calls"
-msgstr "Utilizar tablas de desplazamiento para llamadas a métodos virtuales"
-
-#: objc/objc-act.c:651
+#: objc/objc-act.c:689
#, c-format
msgid "object does not conform to the `%s' protocol"
msgstr "el objeto no es conforme con el protocolo `%s'"
-#: objc/objc-act.c:737 objc/objc-act.c:810
+#: objc/objc-act.c:775 objc/objc-act.c:848
#, c-format
msgid "class `%s' does not implement the `%s' protocol"
msgstr "la clase `%s' no implementa el protocolo `%s'"
-#: objc/objc-act.c:914
+#: objc/objc-act.c:951
#, c-format
-msgid "`%s' cannot be statically allocated"
-msgstr "`%s' no se puede ubicar estáticamente"
+msgid "statically allocated instance of Objective-C class `%s'"
+msgstr ""
-#: objc/objc-act.c:963
+#: objc/objc-act.c:998
#, c-format
msgid "unexpected type for `id' (%s)"
msgstr "tipo inesperado para `id' (%s)"
-#: objc/objc-act.c:968
+#: objc/objc-act.c:1003
msgid "undefined type `id', please import <objc/objc.h>"
msgstr "tipo `id' indefinido, por favor importe <objc/objc.h>"
-#: objc/objc-act.c:1019
+#: objc/objc-act.c:1052
#, c-format
msgid "protocol `%s' has circular dependency"
msgstr "el protocolo `%s' tiene una dependencia circular"
-#: objc/objc-act.c:1041 objc/objc-act.c:5301
+#: objc/objc-act.c:1074 objc/objc-act.c:5982
#, c-format
msgid "cannot find protocol declaration for `%s'"
msgstr "no se puede encontrar la declaración de protocolo para `%s'"
-#: objc/objc-act.c:1289 objc/objc-act.c:5877 objc/objc-act.c:6195
-#: objc/objc-act.c:6244 objc/objc-act.c:6280 objc-parse.y:1799
+#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6513
+#: objc/objc-act.c:6822 objc/objc-act.c:6875 objc/objc-act.c:6900
#, c-format
msgid "cannot find interface declaration for `%s'"
msgstr "no se puede encontrar la declaración de interfaz para `%s'"
-#: objc/objc-act.c:1328
+#: objc/objc-act.c:1423
+#, fuzzy, c-format
+msgid "interface `%s' does not have valid constant string layout"
+msgstr "el argumento de `asm' no es una cadena constante"
+
+#: objc/objc-act.c:1439
#, c-format
msgid "cannot find reference tag for class `%s'"
msgstr "no se puede encontrar la marca de referencia para la clase %s"
-#: objc/objc-act.c:2050
+#: objc/objc-act.c:2179
#, c-format
msgid "creating selector for non existant method %s"
msgstr "creaundo un selector para el método `%s' que no existe"
-#: objc/objc-act.c:2364
+#: objc/objc-act.c:2389
+#, fuzzy, c-format
+msgid "`%s' is not an Objective-C class name or alias"
+msgstr "`%s' no es un nombre de clase válido"
+
+#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6769
+#: objc/objc-act.c:7059 objc/objc-act.c:7088
+msgid "Objective-C declarations may only appear in global scope"
+msgstr ""
+
+#: objc/objc-act.c:2505
#, c-format
msgid "cannot find class `%s'"
msgstr "no se puede encontrar la clase `%s'"
-#: objc/objc-act.c:2366
+#: objc/objc-act.c:2507
#, c-format
msgid "class `%s' already exists"
msgstr "ya existe la clase `%s'"
+#: objc/objc-act.c:2532 objc/objc-act.c:6791
+#, c-format
+msgid "`%s' redeclared as different kind of symbol"
+msgstr "`%s' redeclarado como un tipo diferente de símbolo"
+
#. fatal did not work with 2 args...should fix
-#: objc/objc-act.c:2473
+#: objc/objc-act.c:2680
#, c-format
msgid "cannot find interface declaration for `%s', superclass of `%s'"
msgstr "no se puede encontrar la declaración de interfaz para `%s', superclase de `%s'"
-#: objc/objc-act.c:2480
+#: objc/objc-act.c:2687
#, c-format
msgid "circular inheritance in interface declaration for `%s'"
msgstr "herencia circular en la declaración de interfaz para `%s'"
-#: objc/objc-act.c:3566 objc/objc-act.c:3583
+#: objc/objc-act.c:2780 objc/objc-act.c:2924 objc/objc-act.c:3024
+#: objc/objc-act.c:3200 objc/objc-act.c:3240
+msgid "Use `-fobjc-exceptions' to enable Objective-C exception syntax"
+msgstr ""
+
+#: objc/objc-act.c:2787
+msgid "`@throw;' (rethrow) used outside of a `@catch' block"
+msgstr ""
+
+#: objc/objc-act.c:3027
+msgid "`@catch' parameter is not a known Objective-C class type"
+msgstr ""
+
+#: objc/objc-act.c:3036
+msgid "Exception already handled by preceding `@catch(id)'"
+msgstr ""
+
+#: objc/objc-act.c:3041
+#, fuzzy, c-format
+msgid "Exception of type `%s *' already handled by `@catch (%s *)'"
+msgstr "la excepción del tipo `%T' será atrapada"
+
+#: objc/objc-act.c:3206
+msgid "`@try' without `@catch' or `@finally'"
+msgstr ""
+
+#: objc/objc-act.c:3647
+msgid "%Jtype '%D' does not have a known size"
+msgstr ""
+
+#: objc/objc-act.c:4256
+#, fuzzy
+msgid "%J%s `%s'"
+msgstr "En %s `%s':"
+
+#: objc/objc-act.c:4281 objc/objc-act.c:4300
msgid "inconsistent instance variable specification"
msgstr "especificación de instancia de variable inconsistente"
-#: objc/objc-act.c:4580
+#: objc/objc-act.c:5303
msgid "can not use an object as parameter to a method\n"
msgstr "no se puede usar un objeto como un parámetro para un método\n"
-#: objc/objc-act.c:4780
-#, c-format
-msgid "multiple declarations for method `%s'"
-msgstr "declaraciones múltiples para el método `%s'"
+#: objc/objc-act.c:5504
+#, fuzzy, c-format
+msgid "multiple %s named `%c%s' found"
+msgstr "múltiples parámetros nombrados `%s'"
-#: objc/objc-act.c:4946
+#: objc/objc-act.c:5721
+#, fuzzy, c-format
+msgid "no super class declared in @interface for `%s'"
+msgstr "no se declaró una super clase en la interfaz para `%s'"
+
+#: objc/objc-act.c:5809
#, c-format
msgid "invalid receiver type `%s'"
msgstr "tipo receptor `%s' inválido"
-#: objc/objc-act.c:4977 objc/objc-act.c:5003 objc/objc-act.c:5051
-#, c-format
-msgid "`%s' does not respond to `%s'"
+#: objc/objc-act.c:5820
+#, fuzzy, c-format
+msgid "`%s' may not respond to `%c%s'"
msgstr "`%s' no responde a `%s'"
-#: objc/objc-act.c:4983 objc/objc-act.c:7318
-#, c-format
-msgid "no super class declared in interface for `%s'"
-msgstr "no se declaró una super clase en la interfaz para `%s'"
-
-#: objc/objc-act.c:5081
-msgid "cannot find class (factory) method"
-msgstr "no se puede encontrar el método de la clase (de fábrica)"
-
-#: objc/objc-act.c:5082 objc/objc-act.c:5126
-#, c-format
-msgid "return type for `%s' defaults to id"
-msgstr "el tipo de devolución para `%s' por defecto es id"
-
-#: objc/objc-act.c:5099
-#, c-format
-msgid "method `%s' not implemented by protocol"
+#: objc/objc-act.c:5825
+#, fuzzy, c-format
+msgid "`%c%s' not implemented by protocol(s)"
msgstr "el método `%s' no se ha implementado por el protocolo"
-#: objc/objc-act.c:5108
-msgid "return type defaults to id"
-msgstr "el tipo de devolución por defecto es id"
+#: objc/objc-act.c:5830
+msgid "(Messages without a matching method signature"
+msgstr ""
-#: objc/objc-act.c:5125
-msgid "cannot find method"
-msgstr "no se puede encontrar el método"
+#: objc/objc-act.c:5831
+msgid "will be assumed to return `id' and accept"
+msgstr ""
-#: objc/objc-act.c:5399
+#: objc/objc-act.c:5832
+#, fuzzy
+msgid "`...' as arguments.)"
+msgstr "sin argumentos"
+
+#: objc/objc-act.c:6079
#, c-format
msgid "undeclared selector `%s'"
msgstr "selector `%s' sin declarar"
@@ -20541,311 +19608,3247 @@ msgstr "selector `%s' sin declarar"
#. to an instance variable. It's better to catch the cases
#. where this is done unknowingly than to support the above
#. paradigm.
-#: objc/objc-act.c:5443
+#: objc/objc-act.c:6121
#, c-format
msgid "instance variable `%s' accessed in class method"
msgstr "la variable de instancia `%s' es accessada en el método de la clase"
-#: objc/objc-act.c:5678
-#, c-format
-msgid "duplicate definition of class method `%s'"
-msgstr "definición duplicada del método de la clase `%s'"
-
-#: objc/objc-act.c:5684
-#, c-format
-msgid "duplicate declaration of class method `%s'"
+#: objc/objc-act.c:6327
+#, fuzzy, c-format
+msgid "duplicate declaration of method `%c%s'"
msgstr "declaración duplicada del método de la clase `%s'"
-#: objc/objc-act.c:5720
-#, c-format
-msgid "duplicate definition of instance method `%s'"
-msgstr "definición duplicada del método de la instancia `%s'"
-
-#: objc/objc-act.c:5726
-#, c-format
-msgid "duplicate declaration of instance method `%s'"
-msgstr "declaración duplicada del método de la instancia `%s'"
-
-#: objc/objc-act.c:5766
+#: objc/objc-act.c:6368
#, c-format
msgid "duplicate interface declaration for category `%s(%s)'"
msgstr "declaración de interfaz duplicada para la categoría `%s(%s)'"
-#: objc/objc-act.c:5852
+#: objc/objc-act.c:6398
+#, fuzzy, c-format
+msgid "illegal reference type specified for instance variable `%s'"
+msgstr "se ignora el especificador asm para la variable local no estática `%s'"
+
+#: objc/objc-act.c:6414
+#, fuzzy, c-format
+msgid "instance variable `%s' has unknown size"
+msgstr "la variable de instancia `%s' es declarada %s"
+
+#. vtable pointers are Real Bad(tm), since Obj-C cannot initialize them
+#: objc/objc-act.c:6428
+#, fuzzy, c-format
+msgid "type `%s' has virtual member functions"
+msgstr " ya que el tipo `%T' tiene funciones virtuales abstractas"
+
+#: objc/objc-act.c:6429
+#, fuzzy, c-format
+msgid "illegal aggregate type `%s' specified for instance variable `%s'"
+msgstr "se ignora el especificador asm para la variable local no estática `%s'"
+
+#: objc/objc-act.c:6437
+#, fuzzy, c-format
+msgid "type `%s' has a user-defined constructor"
+msgstr "el tipo `%T' no tiene destructor"
+
+#: objc/objc-act.c:6439
+#, fuzzy, c-format
+msgid "type `%s' has a user-defined destructor"
+msgstr "el tipo `%T' no tiene destructor"
+
+#: objc/objc-act.c:6440
+msgid "C++ constructors and destructors will not be invoked for Objective-C fields"
+msgstr ""
+
+#: objc/objc-act.c:6490
#, c-format
msgid "instance variable `%s' is declared private"
msgstr "la variable de instancia `%s' es declarada privada"
-#: objc/objc-act.c:5899
+#: objc/objc-act.c:6539
+#, fuzzy, c-format
+msgid "instance variable `%s' is %s; this will be a hard error in the future"
+msgstr "la variable de instancia `%s' es declarada privada"
+
+#: objc/objc-act.c:6546
#, c-format
msgid "instance variable `%s' is declared %s"
msgstr "la variable de instancia `%s' es declarada %s"
-#: objc/objc-act.c:5909
+#: objc/objc-act.c:6556
msgid "static access to object of type `id'"
msgstr "acceso estático al objeto de tipo `id'"
-#: objc/objc-act.c:5934 objc/objc-act.c:6027
+#: objc/objc-act.c:6578 objc/objc-act.c:6666
#, c-format
msgid "incomplete implementation of class `%s'"
msgstr "implementación incompleta de la clase `%s'"
-#: objc/objc-act.c:5938 objc/objc-act.c:6032
+#: objc/objc-act.c:6582 objc/objc-act.c:6671
#, c-format
msgid "incomplete implementation of category `%s'"
msgstr "implementación incompleta de la categoría `%s'"
-#: objc/objc-act.c:5943 objc/objc-act.c:6037
+#: objc/objc-act.c:6587 objc/objc-act.c:6676
#, c-format
msgid "method definition for `%c%s' not found"
msgstr "no se encuentra la definición de método para `%c%s'"
-#: objc/objc-act.c:6081
+#: objc/objc-act.c:6717
#, c-format
msgid "%s `%s' does not fully implement the `%s' protocol"
msgstr "%s `%s' no implementa completamente el protocolo `%s'"
-#: objc/objc-act.c:6139 objc/objc-act.c:8249
+#: objc/objc-act.c:6775 objc/objc-act.c:8803
msgid "`@end' missing in implementation context"
msgstr "falta un `@end' en el contexto de una implementación"
-#: objc/objc-act.c:6167
+#: objc/objc-act.c:6805
#, c-format
msgid "reimplementation of class `%s'"
msgstr "reimplementación de la clase `%s'"
-#: objc/objc-act.c:6209
+#: objc/objc-act.c:6836
#, c-format
msgid "conflicting super class name `%s'"
msgstr "el nombre de la super clase `%s' causa conflicto"
-#: objc/objc-act.c:6224
+#: objc/objc-act.c:6838
+#, c-format
+msgid "previous declaration of `%s'"
+msgstr "declaración previa de `%s'"
+
+#: objc/objc-act.c:6852 objc/objc-act.c:6854
#, c-format
msgid "duplicate interface declaration for class `%s'"
msgstr "declaración de interfaz duplicada para la clase `%s'"
-#: objc/objc-act.c:6506
+#: objc/objc-act.c:7121
#, c-format
msgid "duplicate declaration for protocol `%s'"
msgstr "declaración duplicada para el protocolo `%s'"
-#: objc/objc-act.c:7363
-msgid "[super ...] must appear in a method context"
-msgstr "[super ...] debe aparecer en el contexto de un método"
+#. Add a readable method name to the warning.
+#: objc/objc-act.c:7613
+#, fuzzy
+msgid "%J%s `%c%s'"
+msgstr "En %s `%s':"
-#: objc/objc-act.c:8354 objc/objc-act.c:8370
+#: objc/objc-act.c:7908
#, c-format
-msgid "potential selector conflict for method `%s'"
-msgstr "conflicto potencial de selectores para el método `%s'"
+msgid "no super class declared in interface for `%s'"
+msgstr "no se declaró una super clase en la interfaz para `%s'"
+
+#: objc/objc-act.c:7956
+msgid "[super ...] must appear in a method context"
+msgstr "[super ...] debe aparecer en el contexto de un método"
-#: objc-parse.y:2655
+#: objc/objc-parse.y:2700
msgid "`@end' must appear in an implementation context"
msgstr "`@end' debe aparecer en el contexto de una implementación"
-#: objc-parse.y:2931
+#: objc/objc-parse.y:2913
msgid "method definition not in class context"
msgstr "la definición de método no está en el contexto de la clase"
-#: objc/lang-options.h:27
-msgid "Dump decls to a .decl file"
-msgstr "Volcar decls a un fichero .decl"
+#: options.c:24
+#, fuzzy
+msgid "Display this information"
+msgstr " --help Muestra esta información\n"
+
+#: options.c:30
+msgid "--param <param>=<value>\tSet paramter <param> to value. See below for a complete list of parameters"
+msgstr ""
+
+#: options.c:39
+msgid "-A<question>=<answer>\tAssert the <answer> to <question>. Putting '-' before <question> disables the <answer> to <question>"
+msgstr ""
+
+#: options.c:42
+#, fuzzy
+msgid "Do not discard comments"
+msgstr "No desactivar registros de espacio"
+
+#: options.c:45
+msgid "Do not discard comments in macro expansions"
+msgstr ""
+
+#: options.c:48
+msgid "-D<macro>[=<val>]\tDefine a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1"
+msgstr ""
+
+#: options.c:54
+#, fuzzy
+msgid "-G<number>\tPut global and static data smaller than <number> bytes into a special section (on some targets)"
+msgstr ""
+" -G <número> Colocar los datos globales y estáticos más pequeños que <número>\n"
+" bytes en una sección especial (en algunos objetivos)\n"
+
+#: options.c:57
+#, fuzzy
+msgid "Print the name of header files as they are used"
+msgstr "Mostrar los nombres de las unidades de programa mientras son compiladas"
+
+#: options.c:66
+#, fuzzy
+msgid "Generate make dependencies and compile"
+msgstr "Generar código little endian"
+
+#: options.c:75
+msgid "Treat missing header files as generated files"
+msgstr ""
+
+#: options.c:81
+msgid "Like -MD but ignore system header files"
+msgstr ""
+
+#: options.c:90
+msgid "-MQ <target>\tAdd a MAKE-quoted target"
+msgstr ""
+
+#: options.c:96
+#, fuzzy
+msgid "-O<number>\tSet optimization level to <number>"
+msgstr " -O[número] Establecer el nivel de optimización a [número]\n"
+
+#: options.c:99
+#, fuzzy
+msgid "Optimize for space rather than speed"
+msgstr " -Os Optimizar para espacio en lugar de velocidad\n"
+
+#: options.c:102
+#, fuzzy
+msgid "Do not generate #line directives"
+msgstr "No generar directivas .size"
+
+#: options.c:105
+msgid "-U<macro>\tUndefine <macro>"
+msgstr ""
+
+#: options.c:108
+#, fuzzy
+msgid "This switch is deprecated; use -Wextra instead"
+msgstr "Establecer la ruta de clases (obsoleto: utilice en su lugar --classpath)"
+
+#: options.c:114
+msgid "Warn about returning structures, unions or arrays"
+msgstr "Avisar sobre la devolución de estructuras, unions o matrices"
+
+#: options.c:120
+msgid "Warn about casting functions to incompatible types"
+msgstr "Avisar por funciones de conversión a tipos incompatibles"
+
+#: options.c:123
+msgid "Warn about pointer casts which increase alignment"
+msgstr "Avisar sobre conversión de punteros que incremente la alineación"
+
+#: options.c:126
+msgid "Warn about casts which discard qualifiers"
+msgstr "Avisar sobre conversiones que descartan calificadores"
+
+#: options.c:129
+#, fuzzy
+msgid "Warn about subscripts whose type is \"char\""
+msgstr "Avisar sobre subíndices cuyo tipo es 'char'"
+
+#: options.c:138
+msgid "Warn about possibly confusing type conversions"
+msgstr "Avisar sobre la posibilidad de conversión de tipos confusas"
+
+#: options.c:141
+#, fuzzy
+msgid "Warn when all constructors and destructors are private"
+msgstr "No avisar cuando todos los ctors/dtors son privados"
+
+#: options.c:144
+#, fuzzy
+msgid "Warn when a declaration is found after a statement"
+msgstr "Avisar cuando una declaración no especifique un tipo"
+
+#: options.c:147
+#, fuzzy
+msgid "Warn if deprecated class, method, or field is used"
+msgstr "Avisar si se encuentran declaraciones vacías obsoletas"
+
+#: options.c:150
+msgid "Warn about uses of __attribute__((deprecated)) declarations"
+msgstr "Avisar sobre usos de declaraciones __attribute__((obsoleto))"
+
+#: options.c:153
+msgid "Warn when an optimization pass is disabled"
+msgstr "Avisar cuando se desactivó un paso de optimización"
+
+#: options.c:156
+#, fuzzy
+msgid "Warn about compile-time integer division by zero"
+msgstr "No avisar sobre la división entera por cero en tiempo de compilación"
+
+#: options.c:159
+msgid "Warn about violations of Effective C++ style rules"
+msgstr "Avisar violaciones de reglas de estilo de Effective C++"
+
+#: options.c:162
+msgid "Warn about stray tokens after #elif and #endif"
+msgstr ""
+
+#: options.c:165
+msgid "Treat all warnings as errors"
+msgstr "Tratar todos los avisos como errores"
+
+#: options.c:168
+#, fuzzy
+msgid "Make implicit function declarations an error"
+msgstr "Avisar sobre la declaración implícita de funciones"
+
+#: options.c:171
+msgid "Print extra (possibly unwanted) warnings"
+msgstr ""
+
+#: options.c:174
+msgid "Warn if deprecated empty statements are found"
+msgstr "Avisar si se encuentran declaraciones vacías obsoletas"
+
+#: options.c:177
+#, fuzzy
+msgid "Warn if testing floating point numbers for equality"
+msgstr "Avisar sobre la equidad de pruebas de números de coma flotante"
+
+#: options.c:180
+#, fuzzy
+msgid "Warn about printf/scanf/strftime/strfmon format string anomalies"
+msgstr "Avisar sobre anomalías de formato de printf/scanf/strftime/strfmon"
+
+#: options.c:183
+#, fuzzy
+msgid "Warn if passing too many arguments to a function for its format string"
+msgstr "demasiados argumentos para esta cadena de formato"
+
+#: options.c:186
+#, fuzzy
+msgid "Warn about format strings that are not literals"
+msgstr "Avisar sobre el uso de literales multicaracteres"
+
+#: options.c:189
+msgid "Warn about possible security problems with format functions"
+msgstr "Avisar sobre posibles problemas de seguridad con funciones de formato"
+
+#: options.c:192
+#, fuzzy
+msgid "Warn about strftime formats yielding 2-digit years"
+msgstr "No avisar sobre formatos de strftime que producen dos dígitos para el año"
+
+#: options.c:201
+#, fuzzy
+msgid "Enable warnings about inter-procedural problems"
+msgstr "Desactivar los avisos sobre problemas interprocedurales"
+
+#: options.c:207
+msgid "Warn about implicit function declarations"
+msgstr "Avisar sobre la declaración implícita de funciones"
+
+#: options.c:210
+msgid "Warn when a declaration does not specify a type"
+msgstr "Avisar cuando una declaración no especifique un tipo"
+
+#: options.c:216
+msgid "Warn about variables which are initialized to themselves."
+msgstr ""
+
+#: options.c:219
+msgid "Warn when an inlined function cannot be inlined"
+msgstr "Avisar cuando una función inline no puede ser inline"
+
+#: options.c:222
+#, fuzzy
+msgid "Warn about invalid uses of the \"offsetof\" macro"
+msgstr "Avisar sobre el uso de la directiva #import"
+
+#: options.c:225
+msgid "Warn about PCH files that are found but not used"
+msgstr ""
+
+#: options.c:228
+#, fuzzy
+msgid "-Wlarger-than-<number>\tWarn if an object is larger than <number> bytes"
+msgstr " -Wlarger-than-<número> Avisar si un objeto es más grande que <número> bytes\n"
+
+#: options.c:231
+#, fuzzy
+msgid "Do not warn about using \"long long\" when -pedantic"
+msgstr "No avisar sobre el uso de 'long long' cuando se use -pedantic"
+
+#: options.c:234
+#, fuzzy
+msgid "Warn about suspicious declarations of \"main\""
+msgstr "Avisar sobre declaraciones sospechosas de main"
+
+#: options.c:237
+msgid "Warn about possibly missing braces around initializers"
+msgstr "Avisar sobre posibles llaves faltantes alrededor de los inicializadores"
+
+#: options.c:240
+#, fuzzy
+msgid "Warn about global functions without previous declarations"
+msgstr "Avisar sobre funciones globales sin declaraciones previas"
+
+#: options.c:243
+msgid "Warn about functions which might be candidates for format attributes"
+msgstr "Avisar por funciones que pueden ser candidatas para atributos de formato"
+
+#: options.c:246
+#, fuzzy
+msgid "Warn about functions which might be candidates for __attribute__((noreturn))"
+msgstr "Avisar sobre funciones que pueden ser candidatas para el atributo noreturn"
+
+#: options.c:249
+#, fuzzy
+msgid "Warn about global functions without prototypes"
+msgstr "Avisar sobre funciones globales sin prototipos"
+
+#: options.c:252
+#, fuzzy
+msgid "Warn about use of multi-character character constants"
+msgstr "Avisar sobre el uso de literales multicaracteres"
+
+#: options.c:255
+#, fuzzy
+msgid "Warn about \"extern\" declarations not at file scope"
+msgstr "Avisar sobre externs que no están en el nivel del alcance del fichero"
+
+#: options.c:258
+#, fuzzy
+msgid "Warn when non-templatized friend functions are declared within a template"
+msgstr "No avisar cuando las funciones friend sin plantillas son declaradas dentro de una plantilla"
+
+#: options.c:261
+#, fuzzy
+msgid "Warn about non-virtual destructors"
+msgstr "Avisar sobre destructores no virtuales"
+
+#: options.c:267
+#, fuzzy
+msgid "Warn if a C-style cast is used in a program"
+msgstr "Avisar cuando se use una conversión de estilo C en un programa"
+
+#: options.c:270
+#, fuzzy
+msgid "Warn if an old-style parameter definition is used"
+msgstr "Avisar cuando no se use un parámetro de una función"
+
+#: options.c:273
+msgid "Warn if .class files are out of date"
+msgstr "Avisar si los ficheros .class están desactualizados"
+
+#: options.c:276
+msgid "Warn about overloaded virtual function names"
+msgstr "Avisar sobre nombres de funciones virtual sobrecargadas"
+
+#: options.c:279
+msgid "Warn when the packed attribute has no effect on struct layout"
+msgstr "Avisar cuando el atributo packed no tiene efecto en la disposición de un struct"
+
+#: options.c:282
+#, fuzzy
+msgid "Warn when padding is required to align structure members"
+msgstr "Avisar cuando se requiere relleno para alinear a los miembros de un struct"
+
+#: options.c:285
+#, fuzzy
+msgid "Warn about possibly missing parentheses"
+msgstr "Avisar sobre posibles paréntesis faltantes"
+
+#: options.c:288
+#, fuzzy
+msgid "Warn when converting the type of pointers to member functions"
+msgstr "No avisar sobre punteros a funciones miembro que conviertan tipos de datos"
+
+#: options.c:291
+msgid "Warn about function pointer arithmetic"
+msgstr "Avisar sobre la aritmética de punteros de funciones"
+
+#: options.c:294
+#, fuzzy
+msgid "Warn if inherited methods are unimplemented"
+msgstr "No avisar si los métodos heredados no están implementados"
+
+#: options.c:297
+msgid "Warn about multiple declarations of the same object"
+msgstr "Avisar sobre declaraciones múltiples del mismo objeto"
+
+#: options.c:300
+msgid "Warn if modifiers are specified when not necessary"
+msgstr "Avisar si se especifican modificadores cuando no son necesarios"
+
+#: options.c:303
+msgid "Warn when the compiler reorders code"
+msgstr "Avisar cuando el compilador reordene código"
+
+#: options.c:306
+#, fuzzy
+msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)"
+msgstr "Avisar cuando el tipo de devolución por defecto de una función cambia a int"
+
+#: options.c:309
+msgid "Warn if a selector has multiple methods"
+msgstr "Avisar si un selector tiene métodos múltiples"
+
+#: options.c:312
+msgid "Warn about possible violations of sequence point rules"
+msgstr "Avisar sobre posibles violaciones a las reglas de secuencia de punto"
+
+#: options.c:315
+msgid "Warn when one local variable shadows another"
+msgstr "Avisar cuando una variable local oscurece otra"
+
+#: options.c:318
+#, fuzzy
+msgid "Warn about signed-unsigned comparisons"
+msgstr "Avisar sobre comparaciones signed/unsigned"
+
+#: options.c:321
+msgid "Warn when overload promotes from unsigned to signed"
+msgstr "Avisar cuando la sobrecarga promueva de unsigned a signed"
+
+#: options.c:324
+#, fuzzy
+msgid "Warn about code which might break strict aliasing rules"
+msgstr "Avisar sobre código que pueda romper las reglas estrictas de aliases"
+
+#: options.c:327
+#, fuzzy
+msgid "Warn about unprototyped function declarations"
+msgstr "Avisar sobre declaraciones de función sin prototipo"
+
+#: options.c:330
+msgid "Warn about constructs with surprising meanings"
+msgstr "Avisar acerca de constructores con significados sorprendentes"
+
+#: options.c:333
+msgid "Warn about enumerated switches, with no default, missing a case"
+msgstr "Avisar sobre switches enumerados, sin valor por defecto, que carezcan de un case"
+
+#: options.c:336
+#, fuzzy
+msgid "Warn about enumerated switches missing a \"default:\" statement"
+msgstr "Avisar sobre switches enumerados que carezcan de un case por defecto"
+
+#: options.c:339
+msgid "Warn about all enumerated switches missing a specific case"
+msgstr "Avisar sobre todos los switches enumerados que carezcan de un case específico"
+
+#: options.c:342
+msgid "Warn when synthesis behavior differs from Cfront"
+msgstr "Avisar cuando el comportamiento de síntesis difiera de Cfront"
+
+#: options.c:345
+msgid "Do not suppress warnings from system headers"
+msgstr "No suprimir los avisos de los encabezados del sistema"
+
+#: options.c:348
+#, fuzzy
+msgid "Warn about features not present in traditional C"
+msgstr "se sugiere no usar #elif en C tradicional"
+
+#: options.c:357
+#, fuzzy
+msgid "Warn if an undefined macro is used in an #if directive"
+msgstr "directiva # no definida o inválida"
+
+#: options.c:360
+msgid "Warn about uninitialized automatic variables"
+msgstr "Avisar sobre variables automáticas sin inicializar"
+
+#: options.c:363
+msgid "Warn about unrecognized pragmas"
+msgstr "Avisar sobre pragmas no reconocidos"
+
+#: options.c:366
+msgid "Warn about code that will never be executed"
+msgstr "Avisar sobre código que nunca se ejecutará"
+
+#: options.c:369
+msgid "Enable all -Wunused- warnings"
+msgstr ""
+
+#: options.c:372
+msgid "Warn when a function is unused"
+msgstr "Avisar cuando no se use una función"
+
+#: options.c:375
+msgid "Warn when a label is unused"
+msgstr "Avisar cuando no se use una etiqueta"
+
+#: options.c:378
+msgid "Warn about macros defined in the main file that are not used"
+msgstr ""
+
+#: options.c:381
+msgid "Warn when a function parameter is unused"
+msgstr "Avisar cuando no se use un parámetro de una función"
+
+#: options.c:384
+msgid "Warn when an expression value is unused"
+msgstr "Avisar cuando no se use un valor de una expresión"
+
+#: options.c:387
+msgid "Warn when a variable is unused"
+msgstr "Avisar cuando no se use una variable"
+
+#: options.c:390
+#, fuzzy
+msgid "Give strings the type \"array of char\""
+msgstr "las cadenas deben estar compuestas de caracteres"
+
+#: options.c:393
+msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead"
+msgstr ""
+
+#: options.c:396
+#, fuzzy
+msgid "-aux-info <file>\tEmit declaration information into <file>"
+msgstr " -aux-info <fichero> Emitir la información de declaraciones en el <fichero>\n"
+
+#: options.c:408
+#, fuzzy
+msgid "-d<letters>\tEnable dumps from specific passes of the compiler"
+msgstr " -d[letras] Activa los volcados desde pasos específicos del compilador\n"
+
+#: options.c:411
+#, fuzzy
+msgid "-dumpbase <file>\tSet the file basename to be used for dumps"
+msgstr " -dumpbase <fichero> Nombre base a usar para los volcados desde pasos específicos\n"
+
+#: options.c:414
+#, fuzzy
+msgid "--CLASSPATH\tDeprecated; use --classpath instead"
+msgstr "Establecer la ruta de clases (obsoleto: utilice en su lugar --classpath)"
+
+#: options.c:429
+#, fuzzy
+msgid "Enforce class member access control semantics"
+msgstr "No obedecer las semánticas de control de acceso"
+
+#: options.c:432
+msgid "Align the start of functions"
+msgstr "Alinear el inicio de las funciones"
+
+#: options.c:438
+msgid "Align labels which are only reached by jumping"
+msgstr "Alinear las etiquetas que solamente se alcanzan saltando"
+
+#: options.c:444
+msgid "Align all labels"
+msgstr "Alinear todas las etiquetas"
+
+#: options.c:450
+msgid "Align the start of loops"
+msgstr "Alinear el inicio de los ciclos"
+
+#: options.c:459
+msgid "Change when template instances are emitted"
+msgstr "Cambiar cuando se emitan las instancias de la plantilla"
+
+#: options.c:462
+#, fuzzy
+msgid "Specify that arguments may alias each other and globals"
+msgstr "Especifica que los argumentos pueden ser alias de cada otro y de los globales"
+
+#: options.c:465
+msgid "Assume arguments may alias globals but not each other"
+msgstr "Asumir que los argumentos pueden ser alias de globales pero no de cada otro"
+
+#: options.c:468
+#, fuzzy
+msgid "Assume arguments alias neither each other nor globals"
+msgstr "Asumir que los argumentos no pueden ser alias de globales o de cada otro"
+
+#: options.c:471
+#, fuzzy
+msgid "Recognize the \"asm\" keyword"
+msgstr "No reconocer la palabra clave 'asm'"
+
+#: options.c:483
+#, fuzzy
+msgid "Generate unwind tables that are exact at each instruction boundary"
+msgstr "Generar tablas de desenredo exactamente en cada límite de instrucción"
+
+#: options.c:486
+#, fuzzy
+msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements"
+msgstr "Tratar las variables locales y los bloques COMMON como si fueran nombrados en declaraciones SAVE"
+
+#: options.c:489
+#, fuzzy
+msgid "Backslashes in character and hollerith constants are special (not C-style)"
+msgstr "Las barras invertidas en constantes de caracter/hollerith no son especiales (estilo C)"
+
+#: options.c:492
+msgid "Delete libU77 intrinsics with bad interfaces"
+msgstr "Borrar los intrínsecos libU77 con interfaces erróneas"
+
+#: options.c:495
+msgid "Disable libU77 intrinsics with bad interfaces"
+msgstr "Desactivar los intrínsecos libU77 con interfaces erróneas"
+
+#: options.c:498
+#, fuzzy
+msgid "Enable libU77 intrinsics with bad interfaces"
+msgstr "Desactivar los intrínsecos libU77 con interfaces erróneas"
+
+#: options.c:501
+msgid "Hide libU77 intrinsics with bad interfaces"
+msgstr "Esconder los intrínsecos libU77 con interfaces erróneas"
+
+#: options.c:504
+#, fuzzy
+msgid "--bootclasspath=<path>\tReplace system path"
+msgstr "Reemplazar la ruta del sistema"
+
+#: options.c:507
+msgid "Generate code to check bounds before indexing arrays"
+msgstr "Generar código para revisar los límites antes de indizar matrices"
+
+#: options.c:510
+#, fuzzy
+msgid "Replace add, compare, branch with branch on count register"
+msgstr "Reemplazar add,compare,branch con branch en la cuenta de registros"
+
+#: options.c:513
+msgid "Use profiling information for branch probabilities"
+msgstr "Usar la información de análisis de perfil para las probabilidades de ramificación"
+
+#: options.c:516
+msgid "Perform branch target load optimization before prologue / epilogue threading"
+msgstr ""
+
+#: options.c:519
+msgid "Perform branch target load optimization after prologue / epilogue threading"
+msgstr ""
+
+#: options.c:522
+#, fuzzy
+msgid "Recognize built-in functions"
+msgstr "No reconocer ninguna función interna"
+
+#: options.c:528
+#, fuzzy
+msgid "-fcall-saved-<register>\tMark <register> as being preserved across functions"
+msgstr " -fcall-saved-<registro> Marcar el <registro> como preservado entre funciones\n"
+
+#: options.c:531
+#, fuzzy
+msgid "-fcall-used-<register>\tMark <register> as being corrupted by function calls"
+msgstr " -fcall-used-<registro> Marca el <registro> como corrupto para llamadas de función\n"
+
+#: options.c:534
+#, fuzzy
+msgid "Save registers around function calls"
+msgstr "Permitir guardar registros alrededor de llamadas de función"
+
+#: options.c:537
+msgid "Program written in strict mixed-case"
+msgstr "Programa escrito estrictamente con mayúsculas y minúsculas mezcladas"
+
+#: options.c:540
+msgid "Compile as if program written in lowercase"
+msgstr "Compilar como si el programa estuviera escrito en minúsculas"
+
+#: options.c:543
+#, fuzzy
+msgid "Preserve case used in program"
+msgstr "Preservar todo el deletreo (mayúsculas/minúsculas) usado en el programa"
+
+#: options.c:546
+msgid "Program written in lowercase"
+msgstr "Programa escrito en minúsculas"
+
+#: options.c:549
+msgid "Program written in uppercase"
+msgstr "Programa escrito en mayúsculas"
+
+#: options.c:552
+msgid "Compile as if program written in uppercase"
+msgstr "Compilar como si el programa estuviera escrito en mayúsculas"
+
+#: options.c:555
+msgid "Check the return value of new"
+msgstr "Revisar el valor de devolución de new"
+
+#: options.c:561
+msgid "--classpath=<path>\tSet class path"
+msgstr ""
+
+#: options.c:564
+msgid "Do not put uninitialized globals in the common section"
+msgstr "No poner globales sin inicializar en la sección común"
+
+#: options.c:570
+#, fuzzy
+msgid "Allow the arguments of the '?' operator to have different types"
+msgstr "los operandos de ?: tienen tipos diferentes"
+
+#: options.c:573
+#, fuzzy
+msgid "Reduce the size of object files"
+msgstr "Reducir el tamaño de los ficheros objeto"
+
+#: options.c:576
+#, fuzzy
+msgid "Make string literals \"const char[]\" not \"char[]\""
+msgstr "Hacer que las cadenas literales sean `char[]' en lugar de `const char[]'"
+
+#: options.c:579
+msgid "-fconst-string-class=<name>\tUse class <name> for constant strings"
+msgstr ""
+
+#: options.c:582
+#, fuzzy
+msgid "Perform a register copy-propagation optimization pass"
+msgstr "Hacer el paso de optimización de copia-propagación de registros"
+
+#: options.c:585
+msgid "Perform cross-jumping optimization"
+msgstr "Realizar optimizaciones de saltos cruzados"
+
+#: options.c:588
+msgid "When running CSE, follow jumps to their targets"
+msgstr "Cuando se esté ejecutando CSE, seguir a los saltos a sus objetivos"
+
+#: options.c:591
+msgid "When running CSE, follow conditional jumps"
+msgstr "Cuando se esté ejecutando CSE, seguir a los saltos condicionales"
+
+#: options.c:594
+#, fuzzy
+msgid "Place data items into their own section"
+msgstr "colocar los elementos de datos en su propia sección"
+
+#: options.c:597
+msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
+msgstr "Emitir información especial de depuración para COMMON y EQUIVALENCE (desactivado)"
+
+#: options.c:600
+#, fuzzy
+msgid "Inline member functions by default"
+msgstr "No hacer inline por defecto a las funciones miembro"
+
+#: options.c:603
+msgid "Defer popping functions args from stack until later"
+msgstr "Postergar la extracción de argumentos de funciones de la pila hasta más tarde"
+
+#: options.c:606
+msgid "Attempt to fill delay slots of branch instructions"
+msgstr "Intentar rellenar las ranuras de retraso de las instrucciones de ramificación"
+
+#: options.c:609
+msgid "Delete useless null pointer checks"
+msgstr "Borrar las revisiones de punteros nulos sin uso"
+
+#: options.c:612
+#, fuzzy
+msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics"
+msgstr " -fdiagnostics-show-location=[once | every-line] Indica que tan seguido se debe emitir la información de ubicación del código, como prefijo, al inicio de los diagnósticos cuando está activado el corte de línea\n"
+
+#: options.c:615
+#, fuzzy
+msgid "Allow '$' in symbol names"
+msgstr "Permitir $ en los nombres de símbolos"
+
+#: options.c:618
+#, fuzzy
+msgid "Permit '$' as an identifier character"
+msgstr "el formato es una cadena de carácter ancha"
+
+#: options.c:624
+msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
+msgstr "Suprimir la salida de notas de números de instrucción y números de linea en los volcados de depuración"
+
+#: options.c:630
+msgid "Perform DWARF2 duplicate elimination"
+msgstr "Realizar la eliminación de DWARF2 duplicados"
+
+#: options.c:633 options.c:636
+msgid "Perform unused type elimination in debug info"
+msgstr ""
+
+#: options.c:645
+msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
+msgstr "Hace que el frente emule aritmética COMPLEX para evitar `bugs'"
+
+#: options.c:648
+#, fuzzy
+msgid "--encoding=<encoding>\tChoose input encoding (defaults from your locale)"
+msgstr "Escoger la codificación de entrada (por defecto viene del local)"
+
+#: options.c:651
+#, fuzzy
+msgid "Generate code to check exception specifications"
+msgstr "No generar código para revisar excepciones de especificaciones"
+
+#: options.c:657
+msgid "Enable exception handling"
+msgstr "Activar el manejo de excepciones"
+
+#: options.c:660
+msgid "-fexec-charset=<cset>\tConvert all strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:663
+msgid "Perform a number of minor, expensive optimizations"
+msgstr "Realizar un número de optimizaciones menores y costosas"
+
+#: options.c:672
+#, fuzzy
+msgid "f2c-compatible code can be generated"
+msgstr "No se necesita generar código compatible con f2c"
+
+#: options.c:675
+msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que f2c soporta"
+
+#: options.c:678
+msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que f2c soporta"
+
+#: options.c:681
+#, fuzzy
+msgid "Enable non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que f2c soporta"
+
+#: options.c:684
+msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que f2c soporta"
+
+#: options.c:687
+#, fuzzy
+msgid "Unsupported; generate libf2c-calling code"
+msgstr "Sin soporte; no genera código de llamada a libf2c"
+
+#: options.c:690
+msgid "Program is written in typical FORTRAN 66 dialect"
+msgstr "El programa está escrito en el dialecto típico FORTRAN 66"
+
+#: options.c:693
+#, fuzzy
+msgid "Program is written in typical Unix-f77 dialect"
+msgstr "El programa está escrito en el dialecto típico Unix f77"
+
+#: options.c:696
+msgid "Program is written in Fortran-90-ish dialect"
+msgstr "El programa en un dialecto cercano a Fortran-90"
+
+#: options.c:699
+msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que F90 soporta"
+
+#: options.c:702
+msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que F90 soporta"
+
+#: options.c:705
+#, fuzzy
+msgid "Enable non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que F90 soporta"
+
+#: options.c:708
+msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que F90 soporta"
+
+#: options.c:720
+#, fuzzy
+msgid "Assume no NaNs or infinities are generated"
+msgstr "Asumir que no se generan NaNs ó +-Infs"
+
+#: options.c:723
+#, fuzzy
+msgid "-ffixed-<register>\tMark <register> as being unavailable to the compiler"
+msgstr " -ffixed-<registro> Marca el <registro> como no disponible para el compilador\n"
+
+#: options.c:729
+#, fuzzy
+msgid "ffixed-line-length-<number>\tSet the maximum line length to <number>"
+msgstr " -finline-limit=<número> Limita el tamaño de funciones inline a <número>\n"
+
+#: options.c:732
+#, fuzzy
+msgid "Unsupported; affects code generation of arrays"
+msgstr "Sin soporte; afecta la generación de código de las matrices"
+
+#: options.c:735
+msgid "Do not store floats in registers"
+msgstr "No guardar floats en registros"
+
+#: options.c:738
+#, fuzzy
+msgid "Scope of for-init-statement variables is local to the loop"
+msgstr "El ámbito de las variables de la declaración de inicio de for se extiende hacia afuera"
+
+#: options.c:741
+#, fuzzy
+msgid "Copy memory address constants into registers before use"
+msgstr "Copiar las constantes de direcciones de memoria en registros antes de usarlos"
+
+#: options.c:744
+msgid "Always check for non gcj generated classes archives"
+msgstr "Revisar siempre por archivos de clases no generados por gcj"
+
+#: options.c:747
+#, fuzzy
+msgid "Copy memory operands into registers before use"
+msgstr "Copiar los operandos de memoria en registros antes de usarlos"
+
+#: options.c:750
+msgid "Generate code to check subscript and substring bounds"
+msgstr "Generar código para revisar los límites de subíndices y subcadenas"
+
+#: options.c:753
+msgid "Program is written in Fortran-90-ish free form"
+msgstr "El programa está escrito en una forma libre cercana a Fortran-90"
+
+#: options.c:756
+#, fuzzy
+msgid "Do not assume that standard C libraries and \"main\" exist"
+msgstr "Asumir que pueden no existir las bibliotecas estándard y main"
+
+#: options.c:759
+msgid "Allow function addresses to be held in registers"
+msgstr "Permitir que las direcciones de las funciones se conservern en registros"
+
+#: options.c:762
+#, fuzzy
+msgid "Place each function into its own section"
+msgstr "colocar cada función en su propia sección"
+
+#: options.c:765
+#, fuzzy
+msgid "Perform global common subexpression elimination"
+msgstr "Realizar la eliminación de subexpresiones comunes globales"
+
+#: options.c:768
+#, fuzzy
+msgid "Perform redundant load after store elimination in global common subexpression elimination"
+msgstr "Realizar el movimiento de la carga mejorada durante la eliminación de subexpresiones globales"
+
+#: options.c:771
+#, fuzzy
+msgid "Perform enhanced load motion during global common subexpression elimination"
+msgstr "Realizar el movimiento de la carga mejorada durante la eliminación de subexpresiones globales"
+
+#: options.c:774
+#, fuzzy
+msgid "Perform store motion after global common subexpression elimination"
+msgstr "Realizar el movimiento de guardado después de la eliminación de subexpresiones globales"
+
+#: options.c:777
+#, fuzzy
+msgid "Enable fatal diagnostics about inter-procedural problems"
+msgstr "Desactivar los diagnósticos fatales sobre problemas interprocedurales"
+
+#: options.c:780
+msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
+msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que g77 soporta"
+
+#: options.c:783
+msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
+msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que g77 soporta"
+
+#: options.c:786
+#, fuzzy
+msgid "Enable non-FORTRAN 77 intrinsics F90 supports"
+msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que g77 soporta"
+
+#: options.c:789
+msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
+msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que g77 soporta"
-#: objc/lang-options.h:29
+#: options.c:792
+#, fuzzy
+msgid "Recognize GNU-defined keywords"
+msgstr "No reconocer las palabras claves definidas por GNU"
+
+#: options.c:795
msgid "Generate code for GNU runtime environment"
msgstr "Generar código para el ambiente de tiempo de ejecución GNU"
-#: objc/lang-options.h:32
-msgid "Generate code for NeXT runtime environment"
+#: options.c:798
+#, fuzzy
+msgid "Enable guessing of branch probabilities"
+msgstr "Activar la predicción de probabilidades de ramificación"
+
+#: options.c:813
+msgid "Assume normal C execution environment"
+msgstr "Asumir el ambiente normal de ejecución C"
+
+#: options.c:816
+msgid "Enable support for huge objects"
+msgstr "Activar el soporte para objetos enormes"
+
+#: options.c:819
+msgid "Process #ident directives"
+msgstr "Procesar directivas #ident"
+
+#: options.c:822
+msgid "Perform conversion of conditional jumps to branchless equivalents"
+msgstr "Realizar la conversión de saltos condicionales a equivalentes sin ramificación"
+
+#: options.c:825
+msgid "Perform conversion of conditional jumps to conditional execution"
+msgstr "Realizar la conversión de saltos condicionales a ejecución condicional"
+
+#: options.c:828
+msgid "Export functions even if they can be inlined"
+msgstr "Exportar funciones aún si pueden ser inline"
+
+#: options.c:831
+#, fuzzy
+msgid "Emit implicit instantiations of inline templates"
+msgstr "Emitir solamente instanciaciones explícitas de plantillas inline"
+
+#: options.c:834
+#, fuzzy
+msgid "Emit implicit instantiations of templates"
+msgstr "Emitir solamente instanciaciones explícitas de plantillas inline"
+
+#: options.c:837
+msgid "Use offset tables for virtual method calls"
+msgstr "Utilizar tablas de desplazamiento para llamadas a métodos virtuales"
+
+#: options.c:840
+msgid "Do not generate .size directives"
+msgstr "No generar directivas .size"
+
+#: options.c:843
+msgid "Initialize local vars and arrays to zero"
+msgstr "Inicializa las variables locales y matrices a cero"
+
+#: options.c:846
+#, fuzzy
+msgid "Pay attention to the \"inline\" keyword"
+msgstr "Poner atención a la palabra clave 'inline'"
+
+#: options.c:855
+#, fuzzy
+msgid "-finline-limit=<number>\tLimit the size of inlined functions to <number>"
+msgstr " -finline-limit=<número> Limita el tamaño de funciones inline a <número>\n"
+
+#: options.c:858
+msgid "-finput-charset=<cset> Specify the default character set for source files."
+msgstr ""
+
+#: options.c:861
+#, fuzzy
+msgid "Instrument function entry and exit with profiling calls"
+msgstr "Instrumentar funciones entrada/salida con llamadas de análisis de perfil"
+
+#: options.c:864
+msgid "Intrinsics letters in arbitrary cases"
+msgstr "Letras de intrínsecos con mayúsculas/minúsculas indistintas"
+
+#: options.c:867
+msgid "Intrinsics spelled as e.g. SqRt"
+msgstr "Intrínsecos deletreados como p.e. SqRt"
+
+#: options.c:870
+#, fuzzy
+msgid "Intrinsics in lowercase"
+msgstr "Intrínsecos en mayúsculas"
+
+#: options.c:873
+msgid "Intrinsics in uppercase"
+msgstr "Intrínsecos en mayúsculas"
+
+#: options.c:876
+msgid "Assume native functions are implemented using JNI"
+msgstr "Asumir que las funciones nativas se implementan usando JNI"
+
+#: options.c:879
+#, fuzzy
+msgid "Generate code for functions even if they are fully inlined"
+msgstr "Generar códio para las funciones aún si están completamente inline"
+
+#: options.c:882
+msgid "Emit static const variables even if they are not used"
+msgstr "Emitir variables static const aún si no se usan"
+
+#: options.c:888
+#, fuzzy
+msgid "Give external symbols a leading underscore"
+msgstr "Los símbolos externos tienen un subrayado inicial"
+
+#: options.c:891
+#, fuzzy
+msgid "Perform loop optimizations"
+msgstr "Realizar las optimizaciones de ciclo"
+
+#: options.c:894
+msgid "Language keyword letters in arbitrary cases"
+msgstr "Palabras claves del lenguaje con mayúsculas/minúsculas indistintas"
+
+#: options.c:897
+msgid "Language keywords spelled as e.g. IOStat"
+msgstr "Palabras claves del lenguaje deletreadas como p.e. IOStat"
+
+#: options.c:900
+#, fuzzy
+msgid "Language keywords in lowercase"
+msgstr "Palabras claves del lenguaje en mayúsculas"
+
+#: options.c:903
+msgid "Language keywords in uppercase"
+msgstr "Palabras claves del lenguaje en mayúsculas"
+
+#: options.c:906
+msgid "Set errno after built-in math functions"
+msgstr "Establecer errno después de las funciones matemáticas internas"
+
+#: options.c:909
+#, fuzzy
+msgid "Report on permanent memory allocation"
+msgstr "Reportar el alojamiento en memoria permanente al final de la ejecución"
+
+#: options.c:912
+msgid "Attempt to merge identical constants and constant variables"
+msgstr "Intentar mezclar constantes idénticas y variables constantes"
+
+#: options.c:915
+msgid "Attempt to merge identical constants across compilation units"
+msgstr "Intentar mezclar constantes idénticas a través de las unidades de compilación"
+
+#: options.c:918
+#, fuzzy
+msgid "-fmessage-length=<number>\tLimit diagnostics to <number> characters per line. 0 suppresses line-wrapping"
+msgstr " -fmessage-length=<número> Limita la longitud de los mensajes de diagnóstico a <número> caracteres por línea. 0 suprime el corte de línea\n"
+
+#: options.c:921
+msgid "Delete MIL-STD 1753 intrinsics"
+msgstr "Borrar los intrínsecos MIL-STD 1753"
+
+#: options.c:924
+msgid "Disable MIL-STD 1753 intrinsics"
+msgstr "Desactivar los intrínsecos MIL-STD 1753"
+
+#: options.c:927
+#, fuzzy
+msgid "Enable MIL-STD 1753 intrinsics"
+msgstr "Desactivar los intrínsecos MIL-STD 1753"
+
+#: options.c:930
+msgid "Hide MIL-STD 1753 intrinsics"
+msgstr "Esconder los intrínsecos MIL-STD 1753"
+
+#: options.c:933
+msgid "Force all loop invariant computations out of loops"
+msgstr "Forzar que todas las computaciones invariantes del ciclo sean fuera del ciclo"
+
+#: options.c:936
+#, fuzzy
+msgid "Don't warn about uses of Microsoft extensions"
+msgstr "No avisar pedantemente sobre los usos de extensiones Microsoft"
+
+#: options.c:945
+#, fuzzy
+msgid "Use graph-coloring register allocation"
+msgstr "Utilizar coloración de grafos para el alojamiento de registros."
+
+#: options.c:948
+#, fuzzy
+msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
msgstr "Generar código para el ambiente de tiempo de ejecución NeXT"
-#: objc/lang-options.h:35
-msgid "Warn if a selector has multiple methods"
-msgstr "Avisar si un selector tiene métodos múltiples"
+#: options.c:951
+msgid "Assume that receivers of Objective-C messages may be nil"
+msgstr ""
-#: objc/lang-options.h:39
-msgid "Do not warn if inherited methods are unimplemented"
-msgstr "No avisar si los métodos heredados no están implementados"
+#: options.c:954
+msgid "Support synchronous non-call exceptions"
+msgstr "Soporte para excepciones síncronas no de llamadas"
+
+#: options.c:963
+msgid "Enable Objective-C exception and synchronization syntax"
+msgstr ""
+
+#: options.c:966 options.c:1290
+msgid "Perform loop unrolling for all loops"
+msgstr "Realizar el desenrollamiento del ciclo para todos los ciclos"
+
+#: options.c:969 options.c:1293
+msgid "Perform loop unrolling when iteration count is known"
+msgstr "Realizar el desenrollamiento del ciclo cuando se conoce la cuenta de iteración"
+
+#: options.c:972
+msgid "When possible do not generate stack frames"
+msgstr "Cuando sea posible no generar marcos de pila"
+
+#: options.c:975
+msgid "Take at least one trip through each iterative DO loop"
+msgstr "Tomar al menos un viaje a través de cada ciclo DO iterativo"
+
+#: options.c:978
+msgid "Recognize C++ kewords like \"compl\" and \"xor\""
+msgstr ""
+
+#: options.c:981
+#, fuzzy
+msgid "Do the full register move optimization pass"
+msgstr "Hace el paso completo de optimización de movimiento de registros"
+
+#: options.c:984
+msgid "Optimize sibling and tail recursive calls"
+msgstr "Optimizar las llamadas recursivas hermanadas y de extremo"
+
+#: options.c:987
+#, fuzzy
+msgid "Enable optimization of static class initialization code"
+msgstr "Nunca optimizar el código de inicialización de las clases static"
+
+#: options.c:990
+#, fuzzy
+msgid "Enable optional diagnostics"
+msgstr "Desactivar los diagnósticos opcionales"
+
+#: options.c:996
+msgid "Pack structure members together without holes"
+msgstr "Empaqueta juntos a los miembros de la estructura sin agujeros"
+
+#: options.c:999
+#, fuzzy
+msgid "Return small aggregates in memory, not registers"
+msgstr "Devolver los agregados 'short' en memoria, no en registros"
+
+#: options.c:1005
+msgid "Warn about use of (only a few for now) Fortran extensions"
+msgstr "Avisar sobre el uso de (sólo algunas por ahora) extensiones Fortran"
+
+#: options.c:1008
+#, fuzzy
+msgid "Perform loop peeling"
+msgstr "Realizar las optimizaciones de ciclo"
+
+#: options.c:1011
+msgid "Enable machine specific peephole optimizations"
+msgstr "Activar las optimizaciones de mirilla específicas de la máquina"
+
+#: options.c:1014
+#, fuzzy
+msgid "Enable an RTL peephole pass before sched2"
+msgstr "Activa una ejecución de paso de mirilla rtl antes de sched2"
+
+#: options.c:1017
+msgid "Downgrade conformance errors to warnings"
+msgstr "Degradar los errores de concordancia a advertencias"
+
+#: options.c:1020
+#, fuzzy
+msgid "Generate position-independent code if possible"
+msgstr "Generar código independiente de posición, si es posible"
+
+#: options.c:1023
+#, fuzzy
+msgid "Generate position-independent code for executables if possible"
+msgstr "Generar código independiente de posición, si es posible"
+
+#: options.c:1026
+msgid "Generate prefetch instructions, if available, for arrays in loops"
+msgstr "Generar instrucciones de precargado, si están disponibles, para matrices en ciclos"
+
+#: options.c:1032
+msgid "Enable basic program profiling code"
+msgstr "Activar el código básico de análisis de perfil del programa"
+
+#: options.c:1035
+#, fuzzy
+msgid "Insert arc-based program profiling code"
+msgstr "Insertar código de análisis de perfil basado en el programa arc"
+
+#: options.c:1038
+msgid "Enable common options for generating profile info for profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1041
+msgid "Enable common options for performing profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1044
+msgid "Insert code to profile values of expressions"
+msgstr ""
+
+#: options.c:1050
+msgid "-frandom-seed=<string>\tMake compile reproducible using <string>"
+msgstr ""
+
+#: options.c:1053
+msgid "Strength reduce all loop general induction variables"
+msgstr "Reducir la fuerza de todas las variables generales de inducción de ciclo"
+
+#: options.c:1056
+#, fuzzy
+msgid "Return small aggregates in registers"
+msgstr "Devolver los agregados 'short' en registros"
+
+#: options.c:1059
+msgid "Enables a register move optimization"
+msgstr "Permite una optimización de movimiento de registros"
+
+#: options.c:1062
+#, fuzzy
+msgid "Perform a register renaming optimization pass"
+msgstr "Hacer el paso de optimización de renombrado de registros"
+
+#: options.c:1065
+msgid "Reorder basic blocks to improve code placement"
+msgstr "Reordenar los bloques básicos para mejorar la ubicación del código"
+
+#: options.c:1068
+msgid "Reorder functions to improve code placement"
+msgstr "Reordenar las funciones para mejorar la ubicación del código"
+
+#: options.c:1071
+msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime"
+msgstr ""
+
+#: options.c:1074
+msgid "Enable automatic template instantiation"
+msgstr "Activar la instanciación automática de plantillas"
+
+#: options.c:1077
+#, fuzzy
+msgid "Add a common subexpression elimination pass after loop optimizations"
+msgstr "Ejecutar un paso CSE después de las optimizaciones de ciclos"
+
+#: options.c:1080
+msgid "Run the loop optimizer twice"
+msgstr "Ejecutar el optimizador de ciclos dos veces"
+
+#: options.c:1083
+msgid "Disable optimizations that assume default FP rounding behavior"
+msgstr ""
+
+#: options.c:1086
+#, fuzzy
+msgid "Generate run time type descriptor information"
+msgstr "No generar información del tipo de descriptor en tiempo de ejecución"
+
+#: options.c:1089
+msgid "Enable scheduling across basic blocks"
+msgstr "Activar la calendarización entre bloques básicos"
+
+#: options.c:1092
+msgid "Allow speculative motion of non-loads"
+msgstr "Permitir el movimiento especulativo de ninguna carga"
+
+#: options.c:1095
+msgid "Allow speculative motion of some loads"
+msgstr "Permitir el movimiento especulativo de algunas cargas"
+
+#: options.c:1098
+msgid "Allow speculative motion of more loads"
+msgstr "Permitir el movimiento especulativo de más cargas"
+
+#: options.c:1101
+msgid "Allow premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1104
+msgid "Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1107
+msgid "-fsched-stalled-insns-dep=<number> Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1110
+msgid "-fsched-stalled-insns=<number> Set number of queued insns that can be prematurely scheduled"
+msgstr ""
+
+#: options.c:1113
+#, fuzzy
+msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler"
+msgstr " -fsched-verbose=<número> Establece el nivel detalle del calendarizador\n"
+
+#: options.c:1116
+msgid "If scheduling post reload, do superblock scheduling"
+msgstr ""
+
+#: options.c:1119
+msgid "If scheduling post reload, do trace scheduling"
+msgstr ""
+
+#: options.c:1122
+msgid "Reschedule instructions before register allocation"
+msgstr "Recalendarizar las instrucciones antes del alojamiento de registros"
+
+#: options.c:1125
+msgid "Reschedule instructions after register allocation"
+msgstr "Recalendarizar las instrucciones después del alojamiento de registros"
+
+#: options.c:1128
+#, fuzzy
+msgid "Allow appending a second underscore to externals"
+msgstr "Nunca agregar un segundo subrayado a los externos"
+
+#: options.c:1131
+msgid "Mark data as shared rather than private"
+msgstr "Marcar datos como compartidos en lugar de privados"
+
+#: options.c:1134
+msgid "Use the same size for double as for float"
+msgstr "Usar el mismo tamaño para double que para float"
+
+#: options.c:1137
+msgid "Use the narrowest integer type possible for enumeration types"
+msgstr ""
+
+#: options.c:1140
+#, fuzzy
+msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\""
+msgstr "Hacer de lado el tipo debajo de wchar_t por `unsigned short'"
+
+#: options.c:1146
+msgid "Disable optimizations observable by IEEE signaling NaNs"
+msgstr "Desactivar optimizaciones observables con IEEE señalando NaNs"
+
+#: options.c:1149
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed"
+msgstr ""
+
+#: options.c:1152
+#, fuzzy
+msgid "Make \"char\" signed by default"
+msgstr "Hacer que 'char' sea signed por defecto"
+
+#: options.c:1155
+#, fuzzy
+msgid "Do not print names of program units as they are compiled"
+msgstr "Mostrar los nombres de las unidades de programa mientras son compiladas"
+
+#: options.c:1158
+#, fuzzy
+msgid "Convert floating point constants to single precision constants"
+msgstr "Convertir constantes de coma flotante a constantes de precisión simple"
+
+#: options.c:1161
+#, fuzzy
+msgid "Internally convert most source to lowercase"
+msgstr "Convertir internamente casi todo el código a mayúsculas"
+
+#: options.c:1164
+msgid "Internally preserve source case"
+msgstr "Preservar internamente las mayúsculas y minúsculas del código fuente"
+
+#: options.c:1167
+msgid "Internally convert most source to uppercase"
+msgstr "Convertir internamente casi todo el código a mayúsculas"
+
+#: options.c:1173
+msgid "Insert stack checking code into the program"
+msgstr "Inserta código de revisión de la pila en el programa"
+
+#: options.c:1179
+msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>"
+msgstr ""
+
+#: options.c:1182
+msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>"
+msgstr ""
+
+#: options.c:1185
+msgid "Display statistics accumulated during compilation"
+msgstr "Mostrar las estadísticas acumuladas durante la compilación"
+
+#: options.c:1188
+#, fuzzy
+msgid "Enable assignability checks for stores into object arrays"
+msgstr "Desactivar revisiones de asignabilidad para almacenamientos en matrices de objetos"
+
+#: options.c:1191
+msgid "Perform strength reduction optimizations"
+msgstr "Realizar optimizaciones de reducción de fuerza"
+
+#: options.c:1194
+msgid "Assume strict aliasing rules apply"
+msgstr "Asumir que se aplican las reglas estrictas de alias"
+
+#: options.c:1203
+msgid "Symbol names spelled in mixed case"
+msgstr "Nombres de símbolo deletreados con mayúsculas/minúsculas mezcladas"
+
+#: options.c:1206
+msgid "Symbol names in lowercase"
+msgstr "Nombres de símbolo en minúsculas"
+
+#: options.c:1209
+msgid "Symbol names in uppercase"
+msgstr "Nombres de símbolo en mayúsculas"
+
+#: options.c:1212
+msgid "Check for syntax errors, then stop"
+msgstr "Buscar errores de sintaxis, y entonces detenerse"
+
+#: options.c:1215
+msgid "-ftabstop=<number>\tDistance between tab stops for column reporting"
+msgstr ""
+
+#: options.c:1218
+#, fuzzy
+msgid "-ftemplate-depth-<number>\tSpecify maximum template instantiation depth"
+msgstr "Especificar la profundidad máxima de instanciación de plantillas"
+
+#: options.c:1221
+#, fuzzy
+msgid "Create data files needed by \"gcov\""
+msgstr "Crear ficheros de datos necesarios para gcov"
+
+#: options.c:1227
+msgid "Perform jump threading optimizations"
+msgstr "Realizar optimizaciones de hilado de saltos"
+
+#: options.c:1230
+#, fuzzy
+msgid "Report the time taken by each compiler pass"
+msgstr "Reportar el tiempo tomado por cada paso del compilador al final de la ejecución"
+
+#: options.c:1233
+#, fuzzy
+msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model"
+msgstr " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indica el modelo de generación de código por defecto para almacenamiento thread-local\n"
+
+#: options.c:1236
+msgid "Perform superblock formation via tail duplication"
+msgstr "Realizar la formación de superbloques a través de la duplicación de colas"
+
+#: options.c:1239
+#, fuzzy
+msgid "Assume floating-point operations can trap"
+msgstr "Las operaciones de coma flotante pueden capturar"
+
+#: options.c:1242
+#, fuzzy
+msgid "Trap for signed overflow in addition, subtraction and multiplication"
+msgstr "Atrapar desbordamientos signed en adición / sustracción / multiplicación"
+
+#: options.c:1245
+msgid "Make prefix-radix non-decimal constants be typeless"
+msgstr "Hacer que no tengan tipo las constantes con prefijo-radical que no es decimal"
+
+#: options.c:1248
+#, fuzzy
+msgid "Allow all ugly features"
+msgstr "Desactiva todas las características feas"
+
+#: options.c:1251
+#, fuzzy
+msgid "Hollerith and typeless can be passed as arguments"
+msgstr "No se pasan las constantes hollerith y sin tipo como argumentos"
+
+#: options.c:1254
+msgid "Allow ordinary copying of ASSIGN'ed vars"
+msgstr "Permite la copia ordinaria de variables ASSIGNadas"
+
+#: options.c:1257
+msgid "Dummy array dimensioned to (1) is assumed-size"
+msgstr "La matriz falsa dimensionada a (1) es de tamaño asumido"
+
+#: options.c:1260
+msgid "Trailing comma in procedure call denotes null argument"
+msgstr "Coma al final de la llamada al procedimiento denota un argumento nulo"
+
+#: options.c:1263
+msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
+msgstr "Permite que REAL(Z) y AIMAG(Z) reciban DOUBLE COMPLEX Z"
+
+#: options.c:1266
+#, fuzzy
+msgid "Initialization via DATA and PARAMETER is not type-compatible"
+msgstr "La inicialización a través de DATA y PARAMETER es de tipos compatibles"
+
+#: options.c:1269
+msgid "Allow INTEGER and LOGICAL interchangeability"
+msgstr "Permite el intercambio entre INTEGER y LOGICAL"
+
+#: options.c:1272
+#, fuzzy
+msgid "Append underscores to externals"
+msgstr "Nunca agregar un segundo subrayado a los externos"
+
+#: options.c:1275
+#, fuzzy
+msgid "Compile whole compilation unit at a time"
+msgstr "Volcar la unidad de traducción completa a un fichero"
+
+#: options.c:1278
+msgid "Delete libU77 intrinsics"
+msgstr "Borrar los intrínsecos libU77"
+
+#: options.c:1281
+msgid "Disable libU77 intrinsics"
+msgstr "Desactivar los intrínsecos libU77"
+
+#: options.c:1284
+#, fuzzy
+msgid "Enable libU77 intrinsics"
+msgstr "Desactivar los intrínsecos libU77"
+
+#: options.c:1287
+msgid "Hide libU77 intrinsics"
+msgstr "Borrar los intrínsecos libU77"
+
+#: options.c:1296
+#, fuzzy
+msgid "Allow math optimizations that may violate IEEE or ISO standards"
+msgstr "Permitir optimizaciones matemáticas que pueden violar los estándares IEEE ó ANSI"
+
+#: options.c:1299
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned"
+msgstr ""
+
+#: options.c:1302
+#, fuzzy
+msgid "Make \"char\" unsigned by default"
+msgstr "Hacer que 'char' sea unsigned por defecto"
+
+#: options.c:1305
+#, fuzzy
+msgid "Perform loop unswitching"
+msgstr "Realizar las optimizaciones de ciclo"
+
+#: options.c:1308
+msgid "Just generate unwind tables for exception handling"
+msgstr "Sólo generar tablas de desenredo para manejo de excepciones"
+
+#: options.c:1314
+msgid "Use __cxa_atexit to register destructors"
+msgstr "Usar __cxa_atexit para registrar destructores"
+
+#: options.c:1320
+msgid "Add extra commentary to assembler output"
+msgstr "Agregar comentarios extra a la salida de ensamblador"
+
+#: options.c:1323
+#, fuzzy
+msgid "Print g77-specific version information and run internal tests"
+msgstr "Imprime información de la versión específica del compilador g77, ejecuta pruebas internas"
+
+#: options.c:1326
+#, fuzzy
+msgid "Use expression value profiles in optimizations"
+msgstr "la expresión no es una acción"
+
+#: options.c:1329
+msgid "Discard unused virtual functions"
+msgstr "Descartar funciones virtual sin usar"
+
+#: options.c:1332
+msgid "Implement vtables using thunks"
+msgstr "Implementar vtables usando thunks"
+
+#: options.c:1335
+msgid "Program is written in VXT (Digital-like) FORTRAN"
+msgstr "El programa está escrito en VXT (como Digital) FORTRAN"
+
+#: options.c:1338
+msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Borrar los intrínsecos de FORTRAN que no es 77 que VXT FORTRAN soporta"
+
+#: options.c:1341
+msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que VXT FORTRAN soporta"
+
+#: options.c:1344
+#, fuzzy
+msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Desactivar los intrínsecos de FORTRAN que no es 77 que VXT FORTRAN soporta"
+
+#: options.c:1347
+msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Esconder los intrínsecos de FORTRAN que no es 77 que VXT FORTRAN soporta"
+
+#: options.c:1353
+msgid "Emit common-like symbols as weak symbols"
+msgstr "Emitir símbolos comunes como símbolos débiles"
+
+#: options.c:1356
+msgid "Construct webs and split unrelated uses of single variable"
+msgstr ""
-#: objc/lang-options.h:41
-msgid "Generate C header of platform specific features"
+#: options.c:1359
+msgid "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:1362
+msgid "Generate a #line directive pointing at the current working directory"
+msgstr ""
+
+#: options.c:1365
+msgid "Assume signed arithmetic overflow wraps around"
+msgstr ""
+
+#: options.c:1368
+msgid "Store strings in writable data section"
+msgstr "Guardar las cadenas en la sección de datos modificables"
+
+#: options.c:1371
+msgid "Emit cross referencing information"
+msgstr "Emitir información de referencia cruzada"
+
+#: options.c:1374
+#, fuzzy
+msgid "Print internal debugging-related information"
+msgstr "Muestra la información interna relacionada con la depuración"
+
+#: options.c:1377
+msgid "Put zero initialized data in the bss section"
+msgstr "Poner datos inicializados a cero en la sección bss"
+
+#: options.c:1380
+msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode"
+msgstr ""
+
+#: options.c:1383
+msgid "Treat initial values of 0 like non-zero values"
+msgstr "Tratar los valores iniciales de 0 como valores que no son cero"
+
+#: options.c:1386
+#, fuzzy
+msgid "Generate debug information in default format"
+msgstr "Generar información de depuración en el formato por defecto"
+
+#: options.c:1392
+#, fuzzy
+msgid "Generate debug information in COFF format"
+msgstr "Generar información de depuración en el formato por defecto"
+
+#: options.c:1395
+#, fuzzy
+msgid "Generate debug information in DWARF v2 format"
+msgstr "Generar información de depuración en el formato por defecto"
+
+#: options.c:1398
+#, fuzzy
+msgid "Dump declarations to a .decl file"
+msgstr "Volcar decls a un fichero .decl"
+
+#: options.c:1401
+#, fuzzy
+msgid "Generate debug information in default extended format"
+msgstr "Generar información de depuración en el formato extendido por defecto"
+
+#: options.c:1404
+msgid "-gnat<options>\tSpecify options to GNAT"
+msgstr ""
+
+#: options.c:1407
+#, fuzzy
+msgid "Generate debug information in STABS format"
+msgstr "Generar información de depuración en el formato por defecto"
+
+#: options.c:1410
+#, fuzzy
+msgid "Generate debug information in extended STABS format"
+msgstr "Generar información de depuración en el formato extendido por defecto"
+
+#: options.c:1413
+#, fuzzy
+msgid "Generate debug information in VMS format"
+msgstr "Generar información de depuración en el formato por defecto"
+
+#: options.c:1416
+#, fuzzy
+msgid "Generate debug information in XCOFF format"
+msgstr "Generar información de depuración en el formato por defecto"
+
+#: options.c:1419
+#, fuzzy
+msgid "Generate debug information in extended XCOFF format"
+msgstr "Generar información de depuración en el formato extendido por defecto"
+
+#: options.c:1422
+msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1425
+msgid "-imacros <file>\tAccept definition of macros in <file>"
+msgstr ""
+
+#: options.c:1428
+msgid "-include <file>\tInclude the contents of <file> before other files"
+msgstr ""
+
+#: options.c:1431
+msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options"
+msgstr ""
+
+#: options.c:1434
+msgid "-isysroot <dir>\tSet <dir> to be the system root directory"
+msgstr ""
+
+#: options.c:1437
+msgid "-isystem <dir>\tAdd <dir> to the start of the system include path"
+msgstr ""
+
+#: options.c:1440
+msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1443
+msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path"
+msgstr ""
+
+#: options.c:1455
+msgid "Do not search standard system include directories (those specified with -isystem will still be used)"
+msgstr ""
+
+#: options.c:1458
+msgid "Do not search standard system include directories for C++"
+msgstr ""
+
+#: options.c:1464
+#, fuzzy
+msgid "-o <file>\tPlace output into <file>"
+msgstr " -o <fichero> Ubicar la salida en el <fichero>\n"
+
+#: options.c:1467
+#, fuzzy
+msgid "Enable function profiling"
+msgstr "análisis de perfil de las funciones mips16"
+
+#: options.c:1470
+#, fuzzy
+msgid "Issue warnings needed for strict compliance to the standard"
+msgstr " -pedantic Activar los avisos necesarios para cumplir estrictamente con ISO C\n"
+
+#: options.c:1473
+msgid "Like -pedantic but issue them as errors"
+msgstr ""
+
+#: options.c:1476
+#, fuzzy
+msgid "Generate C header of platform-specific features"
msgstr "Generar encabezado C de características específicas de la plataforma"
-#: objc/lang-options.h:43
-msgid "Specify the name of the class for constant strings"
-msgstr "Especificar el nombre de la clase para cadenas constantes"
+#: options.c:1479
+#, fuzzy
+msgid "Do not display functions compiled or elapsed time"
+msgstr " -quiet No mostrar las funciones compiladas o el tiempo transcurrido\n"
-#. This is the contribution to the `lang_options' array in gcc.c for
-#. treelang.
-#: treelang/lang-options.h:26
-msgid "(debug) trace parsing process"
-msgstr "(depuracion) proceso de decodificación de rastreo"
+#: options.c:1482
+#, fuzzy
+msgid "Remap file names when including files"
+msgstr "nombre de fichero vacío en #%s"
-#: treelang/lang-options.h:27
-msgid "(debug) trace lexical analysis"
-msgstr "(depuración) análisis léxico de rastreo"
+#: options.c:1485
+msgid "Conform to the ISO 1998 C++ standard"
+msgstr ""
-#: config/rs6000/darwin.h:62
-msgid " conflicting code gen style switches are used"
-msgstr " se usan interruptores de estilo de generación de código en conflicto"
+#: options.c:1488
+msgid "Conform to the ISO 1990 C standard"
+msgstr ""
-#: config/i386/mingw32.h:85 config/i386/cygwin.h:171
-msgid "shared and mdll are not compatible"
-msgstr "shared y mdll no son compatibles."
+#: options.c:1491
+msgid "Conform to the ISO 1999 C standard"
+msgstr ""
-#: java/lang-specs.h:33
-msgid "-fjni and -femit-class-files are incompatible"
-msgstr "-fjni y -femit-class-files son incompatibles"
+#: options.c:1494 options.c:1515 options.c:1518
+msgid "Deprecated in favor of -std=c99"
+msgstr ""
-#: java/lang-specs.h:34
-msgid "-fjni and -femit-class-file are incompatible"
-msgstr "-fjni y -femit-class-file son incompatibles"
+#: options.c:1497
+msgid "Conform to the ISO 1998 C++ standard with GNU extensions"
+msgstr ""
-#: java/lang-specs.h:35 java/lang-specs.h:36
-msgid "-femit-class-file should used along with -fsyntax-only"
-msgstr "-femit-class-file se debe usar junto con -fsyntax-only"
+#: options.c:1500
+msgid "Conform to the ISO 1990 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1503
+msgid "Conform to the ISO 1999 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1506
+msgid "Deprecated in favor of -std=gnu99"
+msgstr ""
+
+#: options.c:1509
+msgid "Deprecated in favor of -std=c89"
+msgstr ""
+
+#: options.c:1512
+msgid "Conform to the ISO 1990 C standard as amended in 1994"
+msgstr ""
+
+#: options.c:1521
+#, fuzzy
+msgid "Enable traditional preprocessing"
+msgstr "Habilitar la prueba de la pila"
+
+#: options.c:1524
+msgid "-trigraphs\tSupport ISO C trigraphs"
+msgstr ""
+
+#: options.c:1527
+msgid "Do not predefine system-specific and GCC-specific macros"
+msgstr ""
+
+#: options.c:1530
+#, fuzzy
+msgid "Enable verbose output"
+msgstr "Activar la salida de depuración"
+
+#: options.c:1536
+#, fuzzy
+msgid "Suppress warnings"
+msgstr "%s: aviso: "
-#: ada/lang-specs.h:38 java/jvspec.c:77 gcc.c:716
+#: config/rs6000/darwin.h:98
+msgid " conflicting code gen style switches are used"
+msgstr " se usan interruptores de estilo de generación de código en conflicto"
+
+#: gcc.c:743
+#, fuzzy
+msgid "GCC does not support -C or -CC without -E"
+msgstr "GNU C no da soporte a -CC sin usar -E"
+
+#: gcc.c:767 java/jvspec.c:80 ada/lang-specs.h:34
msgid "-pg and -fomit-frame-pointer are incompatible"
msgstr "-pg y -fomit-frame-pointer son incompatibles"
-#: ada/lang-specs.h:41
-msgid "-c or -S required for Ada"
-msgstr "se requiere -c o -S para Ada"
+#: gcc.c:915
+msgid "-E required when input is from standard input"
+msgstr "se requiere -E cuando la entrada es de entrada estándar"
+
+#: config/arm/arm.h:197
+msgid "-mapcs-26 and -mapcs-32 may not be used together"
+msgstr "no se pueden usar juntos -mapcs-26 y -mapcs-32"
-#: config/darwin.h:212
+#: config/arm/arm.h:199
+msgid "-msoft-float and -mhard_float may not be used together"
+msgstr "no se pueden usar juntos -msoft-float y -mhard_float"
+
+#: config/arm/arm.h:201
+msgid "-mbig-endian and -mlittle-endian may not be used together"
+msgstr "no se pueden usar juntos -mbig-endian y -mlittle-endian"
+
+#: config/i386/mingw32.h:58 config/i386/cygwin.h:70
+msgid "shared and mdll are not compatible"
+msgstr "shared y mdll no son compatibles."
+
+#: config/mips/mips.h:975
+msgid "-pipe is not supported"
+msgstr "-pipe no tiene soporte"
+
+#: config/mips/mips.h:1130 config/arc/arc.h:63
+msgid "may not use both -EB and -EL"
+msgstr "no se pueden usar -EB y -EL al mismo tiempo"
+
+#: config/darwin.h:215
msgid "-current_version only allowed with -dynamiclib"
msgstr "sólo se permite -current_version con -dynamiclib"
-#: config/darwin.h:215
+#: config/darwin.h:218
msgid "-install_name only allowed with -dynamiclib"
msgstr "sólo se permite -install_name con -dynamiclib"
-#: config/darwin.h:220
+#: config/darwin.h:223
msgid "-bundle not allowed with -dynamiclib"
msgstr "no se permite -bundle con -dynamiclib"
-#: config/darwin.h:221
+#: config/darwin.h:224
msgid "-bundle_loader not allowed with -dynamiclib"
msgstr "no se permite -bundle_loader con -dynamiclib"
-#: config/darwin.h:222
+#: config/darwin.h:225
msgid "-client_name not allowed with -dynamiclib"
msgstr "no se permite -client_name con -dynamiclib"
-#: config/darwin.h:225
+#: config/darwin.h:228
msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
msgstr "no se permite -force_cpusubtype_ALL con -dynamiclib"
-#: config/darwin.h:226
+#: config/darwin.h:229
msgid "-force_flat_namespace not allowed with -dynamiclib"
msgstr "no se permite -force_flat_namespace con -dynamiclib"
-#: config/darwin.h:228
+#: config/darwin.h:231
msgid "-keep_private_externs not allowed with -dynamiclib"
msgstr "no se permite keep_private_externs con -dynamiclib"
-#: config/darwin.h:229
+#: config/darwin.h:232
msgid "-private_bundle not allowed with -dynamiclib"
msgstr "no se permite -private_bundle con -dynamiclib"
-#: config/sparc/freebsd.h:34 config/ia64/freebsd.h:23
-#: config/alpha/freebsd.h:44 config/rs6000/sysv4.h:1107
-#: config/i386/freebsd-aout.h:213
-msgid "`-p' not supported; use `-pg' and gprof(1)"
-msgstr "`-p' no tiene soporte; use `-pg' y gprof(1)"
-
-#: config/sparc/linux64.h:197 config/sparc/linux64.h:208
-#: config/sparc/netbsd-elf.h:163 config/sparc/netbsd-elf.h:182
-#: config/sparc/sol2-bi.h:168 config/sparc/sol2-bi.h:178
-msgid "may not use both -m32 and -m64"
-msgstr "no se pueden usar -m32 y -m64 al mismo tiempo"
-
-#: config/arm/arm.h:178
-msgid "-mapcs-26 and -mapcs-32 may not be used together"
-msgstr "no se pueden usar juntos -mapcs-26 y -mapcs-32"
-
-#: config/arm/arm.h:180
-msgid "-msoft-float and -mhard_float may not be used together"
-msgstr "no se pueden usar juntos -msoft-float y -mhard_float"
-
-#: config/arm/arm.h:182
-msgid "-mbig-endian and -mlittle-endian may not be used together"
-msgstr "no se pueden usar juntos -mbig-endian y -mlittle-endian"
+#: config/vax/netbsd-elf.h:42
+msgid "The -shared option is not currently supported for VAX ELF."
+msgstr "La opción -shared no se soporta actualmente para ELF de VAX."
-#: config/i386/sco5.h:195
+#: config/i386/sco5.h:191
#, fuzzy
msgid "-pg not supported on this platform"
msgstr "el atributo `%s' no tiene soporte en esta plataforma"
-#: config/i386/sco5.h:196
+#: config/i386/sco5.h:192
#, fuzzy
msgid "-p and -pp specified - pick one"
msgstr "se especificó -I- dos veces"
-#: config/i386/sco5.h:271
+#: config/i386/sco5.h:266
#, fuzzy
msgid "-G and -static are mutually exclusive"
msgstr "-pedantic y -traditional son mutuamente exclusivos"
-#: f/lang-specs.h:38 gcc.c:689
-msgid "GNU C does not support -C without using -E"
+#: treelang/lang-specs.h:52
+msgid "-pg or -p and -fomit-frame-pointer are incompatible"
+msgstr "-pg ó -p y -fomit-frame-pointer son incompatibles"
+
+#: f/lang-specs.h:38
+#, fuzzy
+msgid "GCC does not support -C without using -E"
msgstr "GNU C no da soporte a -C sin usar -E"
-#: f/lang-specs.h:39 gcc.c:690
-msgid "GNU C does not support -CC without using -E"
+#: f/lang-specs.h:39
+#, fuzzy
+msgid "GCC does not support -CC without using -E"
msgstr "GNU C no da soporte a -CC sin usar -E"
-#: config/mcore/mcore.h:60
-msgid "choose either big or little endian, not both"
-msgstr "escoja entre big o little endian, no ambos"
+#: config/mips/r3900.h:35
+msgid "-mhard-float not supported"
+msgstr "-mhard-float no tiene soporte"
-#: config/mcore/mcore.h:63
-msgid "choose either m340 or m210 not both"
-msgstr "escoja entre m340 o m210, no ambos"
+#: config/mips/r3900.h:37
+msgid "-msingle-float and -msoft-float can not both be specified"
+msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
-#: config/mcore/mcore.h:64
-msgid "the m210 does not have little endian support"
-msgstr "el m210 no tiene soporte para little endian"
+#: config/rs6000/sysv4.h:1094 config/i386/freebsd-aout.h:215
+msgid "`-p' not supported; use `-pg' and gprof(1)"
+msgstr "`-p' no tiene soporte; use `-pg' y gprof(1)"
+
+#: config/sparc/linux64.h:208 config/sparc/linux64.h:219
+#: config/sparc/netbsd-elf.h:140 config/sparc/netbsd-elf.h:159
+#: config/sparc/sol2-bi.h:195 config/sparc/sol2-bi.h:205
+msgid "may not use both -m32 and -m64"
+msgstr "no se pueden usar -m32 y -m64 al mismo tiempo"
-#: config/i386/cygwin.h:115
+#: config/vax/vax.h:50 config/vax/vax.h:51
+msgid "profiling not supported with -mg\n"
+msgstr "la creación de perfil no tiene soporte con -mg\n"
+
+#: config/i386/cygwin.h:29
msgid "mno-cygwin and mno-win32 are not compatible"
msgstr "-mno-cygwin y -mno-win32 no son compatibles"
-#: config/vax/netbsd-elf.h:42
-msgid "The -shared option is not currently supported for VAX ELF."
-msgstr "La opción -shared no se soporta actualmente para ELF de VAX."
+#: ada/lang-specs.h:36
+msgid "one of -c, -S, -gnatc, -gnatz, or -gnats is required for Ada"
+msgstr ""
-#: treelang/lang-specs.h:52
-msgid "-pg or -p and -fomit-frame-pointer are incompatible"
-msgstr "-pg ó -p y -fomit-frame-pointer son incompatibles"
+#: config/sparc/sol2-bi.h:167 config/sparc/sol2-bi.h:172
+#: config/sparc/sol2-gld-bi.h:17 config/sparc/sol2-gld-bi.h:22
+#, fuzzy
+msgid "does not support multilib"
+msgstr "%s no tiene soporte para %s"
-#: gcc.c:847
-msgid "-E required when input is from standard input"
-msgstr "se requiere -E cuando la entrada es de entrada estándar"
+#: java/lang-specs.h:34
+msgid "-fjni and -femit-class-files are incompatible"
+msgstr "-fjni y -femit-class-files son incompatibles"
-#: gcc.c:851
-msgid "compilation of header file requested"
-msgstr "se solicitó la compilación de fichero de encabezado"
+#: java/lang-specs.h:35
+msgid "-fjni and -femit-class-file are incompatible"
+msgstr "-fjni y -femit-class-file son incompatibles"
-#: config/vax/vax.h:50 config/vax/vax.h:51
-msgid "profiling not supported with -mg\n"
-msgstr "la creación de perfil no tiene soporte con -mg\n"
+#: java/lang-specs.h:36 java/lang-specs.h:37
+msgid "-femit-class-file should used along with -fsyntax-only"
+msgstr "-femit-class-file se debe usar junto con -fsyntax-only"
-#: config/mips/mips.h:954
-msgid "-pipe is not supported"
-msgstr "-pipe no tiene soporte"
+#: config/mcore/mcore.h:65
+msgid "the m210 does not have little endian support"
+msgstr "el m210 no tiene soporte para little endian"
-#: config/mips/mips.h:1156 config/arc/arc.h:63
-msgid "may not use both -EB and -EL"
-msgstr "no se pueden usar -EB y -EL al mismo tiempo"
+#~ msgid "concatenation of string literals with __FUNCTION__ is deprecated"
+#~ msgstr "la concatenación de literales de cadena con __FUNCTION__ es obsoleta"
-#: config/mips/r3900.h:35
-msgid "-mhard-float not supported"
-msgstr "-mhard-float no tiene soporte"
+#~ msgid "ISO C++ forbids range expressions in switch statements"
+#~ msgstr "ISO C++ prohíbe un rango de expresiones en las declaraciones switch"
-#: config/mips/r3900.h:37
-msgid "-msingle-float and -msoft-float can not both be specified"
-msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
+#~ msgid "ISO C++ forbids taking the address of a label"
+#~ msgstr "ISO C++ prohíbe tomar la dirección de una etiqueta"
+
+#~ msgid "ISO C forbids taking the address of a label"
+#~ msgstr "ISO C prohíbe tomar la dirección de una etiqueta"
+
+#~ msgid "declaration of `%s' shadows %s"
+#~ msgstr "la declaración de `%s' oscurece a %s"
+
+#~ msgid "`struct %s' incomplete in scope ending here"
+#~ msgstr "el `struct %s' incompleto en el ámbito termina aquí"
+
+#~ msgid "`union %s' incomplete in scope ending here"
+#~ msgstr "el `union %s' incompleto en el ámbito termina aquí"
+
+#~ msgid "`enum %s' incomplete in scope ending here"
+#~ msgstr "el `enum %s' incompleto en el ámbito termina aquí"
+
+#~ msgid "label `%s' defined but not used"
+#~ msgstr "la etiqueta `%s' está definida pero no se usa"
+
+#~ msgid "shadowing library function `%s'"
+#~ msgstr "oscureciendo la función de biblioteca `%s'"
+
+#~ msgid "library function `%s' declared as non-function"
+#~ msgstr "la función de biblioteca `%s' no es declarada como función"
+
+#~ msgid "conflicting types for `%s'"
+#~ msgstr "tipos en conflicto para `%s'"
+
+#~ msgid "redeclaration of `%s'"
+#~ msgstr "redeclaración de `%s'"
+
+#~ msgid "prototype for `%s' follows"
+#~ msgstr "el prototipo para '%s' a continuación"
+
+#~ msgid "non-prototype definition here"
+#~ msgstr "la definición del no prototipo aquí"
+
+#~ msgid "prototype for `%s' follows and number of arguments doesn't match"
+#~ msgstr "el prototipo para `%s' continúa y el número de argumentos no coincide"
+
+#~ msgid "prototype for `%s' follows and argument %d doesn't match"
+#~ msgstr "el prototipo para `%s' a continuación y el argumento %d no coinciden"
+
+#~ msgid "type qualifiers for `%s' conflict with previous decl"
+#~ msgstr "los calificadores de tipo para `%s' generan conflicto con la declaración previa"
+
+#~ msgid "redundant redeclaration of `%s' in same scope"
+#~ msgstr "declaración redundante de `%s' en el mismo ámbito"
+
+#~ msgid "a parameter"
+#~ msgstr "un parámetro"
+
+#~ msgid "a previous local"
+#~ msgstr "un local previo"
+
+#~ msgid "a global declaration"
+#~ msgstr "una declaración global"
+
+#~ msgid "`%s' used prior to declaration"
+#~ msgstr "se usa `%s' previo a la declaración"
+
+#~ msgid "`%s' was declared implicitly `extern' and later `static'"
+#~ msgstr "`%s' se declaró implícitamente `extern' y después `static'"
+
+#~ msgid "previous external decl of `%s'"
+#~ msgstr "declaración externa previa de `%s'"
+
+#~ msgid "type mismatch with previous implicit declaration"
+#~ msgstr "no coinciden los tipos con la declaración implícita previa"
+
+#~ msgid "`%s' was previously implicitly declared to return `int'"
+#~ msgstr "`%s' fue declarado previa e implícitamente para devolver `int'"
+
+#~ msgid "`%s' was declared `extern' and later `static'"
+#~ msgstr "`%s' fue declarado `extern' y después `static'"
+
+#~ msgid "`%s' locally external but globally static"
+#~ msgstr "`%s' es externa localmente pero estática globalmente"
+
+#~ msgid "function `%s' was previously declared within a block"
+#~ msgstr "la función `%s' fue declarada previamente dentro de un bloque"
+
+#~ msgid "declaration of `%s' has `extern' and is initialized"
+#~ msgstr "la declaración de `%s' tiene `extern' y está inicializada"
+
+#~ msgid "initializer fails to determine size of `%s'"
+#~ msgstr "el inicializador no puede determinar el tamaño de `%s'"
+
+#~ msgid "array size missing in `%s'"
+#~ msgstr "falta el tamaño de la matriz en %s"
+
+#~ msgid "storage size of `%s' isn't known"
+#~ msgstr "no se conoce el tamaño de almacenamiento de `%s'"
+
+#~ msgid "storage size of `%s' isn't constant"
+#~ msgstr "el tamaño de almacenamiento de `%s' no es constante"
+
+#~ msgid "ISO C forbids parameter `%s' shadowing typedef"
+#~ msgstr "ISO C prohíbe el oscurecimiento del parámetro `%s' de typedef"
+
+#~ msgid "parameter `%s' points to incomplete type"
+#~ msgstr "el parámetro `%s' apunta a un tipo incompleto"
+
+#~ msgid "parameter points to incomplete type"
+#~ msgstr "el parámetro apunta a un tipo incompleto"
+
+#~ msgid "`void' in parameter list must be the entire list"
+#~ msgstr "`void' en la lista de parámetros debe ser la lista completa"
+
+#~ msgid "`union %s' declared inside parameter list"
+#~ msgstr "se declaró `union %s' dentro de la lista de parámetros"
+
+#~ msgid "`enum %s' declared inside parameter list"
+#~ msgstr "se declaró `enum %s' dentro de la lista de parámetros"
+
+#~ msgid "anonymous union declared inside parameter list"
+#~ msgstr "union anónimo declarado dentro de una lista de parámetros"
+
+#~ msgid "anonymous enum declared inside parameter list"
+#~ msgstr "enum anónimo declarado dentro de una lista de parámetros"
+
+#~ msgid "bit-field `%s' type invalid in ISO C"
+#~ msgstr "el tipo de campo de bit `%s' es inválido en ISO C"
+
+#~ msgid "duplicate member `%s'"
+#~ msgstr "miembro duplicado `%s'"
+
+#~ msgid "parm types given both in parmlist and separately"
+#~ msgstr "se dieron los tipos de los parámetros en la lista de parámetros y por separado"
+
+#~ msgid "parameter `%s' declared void"
+#~ msgstr "el parámetro `%s' se declaró void"
+
+#~ msgid "universal-character-name '\\u%04x' not valid in identifier"
+#~ msgstr "universal-character-name `\\u%04x' no es válido en el identificador"
+
+#~ msgid "ignoring invalid multibyte character"
+#~ msgstr "ignorando los carácteres multibyte inválidos"
+
+#~ msgid "options array incorrectly sorted: %s is before %s"
+#~ msgstr "opciones de matriz ordenadas incorrectamente: %s está antes de %s"
+
+#~ msgid "-Wno-strict-prototypes is not supported in C++"
+#~ msgstr "-Wno-strict-prototypes no tiene soporte en C++"
+
+#~ msgid ""
+#~ "Switches:\n"
+#~ " -include <file> Include the contents of <file> before other files\n"
+#~ " -imacros <file> Accept definition of macros in <file>\n"
+#~ " -iprefix <path> Specify <path> as a prefix for next two options\n"
+#~ " -iwithprefix <dir> Add <dir> to the end of the system include path\n"
+#~ " -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
+#~ " -isystem <dir> Add <dir> to the start of the system include path\n"
+#~ msgstr ""
+#~ "Interruptores:\n"
+#~ " -include <fichero> Incluye el contenido del <fichero> antes de otros ficheros\n"
+#~ " -imacros <fichero> Aceptar definiciones de macros en el <fichero>\n"
+#~ " -iprefix <ruta> Especificar la <ruta> como un prefijo para las siguientes dos opciones\n"
+#~ " -iwithprefix <dir> Agregar el <dir>ectorio al final de la ruta de inclusión del sistema\n"
+#~ " -iwithprefixbefore <dir> Agregar el <dir>ectorio al final de la ruta de inclusión principal\n"
+#~ " -isystem <dir> Agregar el <dir>ectorio al inicio de la ruta de inclusión del sistema\n"
+
+#~ msgid ""
+#~ " -idirafter <dir> Add <dir> to the end of the system include path\n"
+#~ " -I <dir> Add <dir> to the end of the main include path\n"
+#~ " -I- Fine-grained include path control; see info docs\n"
+#~ " -nostdinc Do not search system include directories\n"
+#~ " (dirs specified with -isystem will still be used)\n"
+#~ " -nostdinc++ Do not search system include directories for C++\n"
+#~ " -o <file> Put output into <file>\n"
+#~ msgstr ""
+#~ " -idirafter <dir> Agregar el <dir>ectorio al final de la ruta de inclusión del sistema\n"
+#~ " -I <dir> Agregar el <dir>ectorio al final de la ruta de inclusión principal\n"
+#~ " -I- Control granula de la ruta de inclusión; vea los documentos info\n"
+#~ " -nostdinc No buscar en los directorios de inclusión del sistema\n"
+#~ " (aún se usarán los directorios especificados con -isystem)\n"
+#~ " -nostdinc++ No buscar en los directorios de inclusión del sistema para C++\n"
+#~ " -o <fichero> Poner la salida en el <fichero>\n"
+
+#~ msgid ""
+#~ " -trigraphs Support ISO C trigraphs\n"
+#~ " -std=<std name> Specify the conformance standard; one of:\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999, c++98\n"
+#~ " -w Inhibit warning messages\n"
+#~ " -W[no-]trigraphs Warn if trigraphs are encountered\n"
+#~ " -W[no-]comment{s} Warn if one comment starts inside another\n"
+#~ msgstr ""
+#~ " -trigraphs Permitir trigrafos ISO C\n"
+#~ " -std=<nombre std> Especificar la concordancia con estándard; una de:\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999, c++98\n"
+#~ " -w Inhibir los mensajes de aviso\n"
+#~ " -W[no-]trigraphs Avisar si se encuentran trigrafos\n"
+#~ " -W[no-]comment{s} Avisar si un comentario inicia dentro de otro\n"
+
+#~ msgid ""
+#~ " -W[no-]traditional Warn about features not present in traditional C\n"
+#~ " -W[no-]undef Warn if an undefined macro is used by #if\n"
+#~ " -W[no-]import Warn about the use of the #import directive\n"
+#~ msgstr ""
+#~ " -W[no-]traditional Avisar sobre características no presentes en C tradicional\n"
+#~ " -W[no-]undef Avisar si una macro sin definir es usada por #if\n"
+#~ " -W[no-]import Avisar sobre el uso de la directiva #import\n"
+
+#~ msgid ""
+#~ " -W[no-]error Treat all warnings as errors\n"
+#~ " -W[no-]system-headers Do not suppress warnings from system headers\n"
+#~ " -W[no-]all Enable most preprocessor warnings\n"
+#~ msgstr ""
+#~ " -W[no-]error Tratar todos los avisos como errores\n"
+#~ " -W[no-]system-headers No suprimir los avisos de los encabezados del sistema\n"
+#~ " -W[no-]all Activar casi todos los avisos del preprocesador\n"
+
+#~ msgid ""
+#~ " -M Generate make dependencies\n"
+#~ " -MM As -M, but ignore system header files\n"
+#~ " -MD Generate make dependencies and compile\n"
+#~ " -MMD As -MD, but ignore system header files\n"
+#~ " -MF <file> Write dependency output to the given file\n"
+#~ " -MG Treat missing header file as generated files\n"
+#~ msgstr ""
+#~ " -M Genera dependencias para make\n"
+#~ " -MM Como -M, pero ignora los ficheros de encabezado del sistema\n"
+#~ " -MD Genera dependencias para make y compila\n"
+#~ " -MMD Como -MD, pero ignora los ficheros de encabezado del sistema\n"
+#~ " -MF <fichero> Escribe la salida de la dependencia en el fichero dado\n"
+#~ " -MG Trata los ficheros de encabezado faltantes como ficheros generados\n"
+
+# ¿Estoy usando la traducción correcta de 'quoted'? cfuga
+#~ msgid ""
+#~ " -MP\t\t\t Generate phony targets for all headers\n"
+#~ " -MQ <target> Add a MAKE-quoted target\n"
+#~ " -MT <target> Add an unquoted target\n"
+#~ msgstr ""
+#~ " -MP\t\t\t Generar objetivos falsos para todos los encabezados\n"
+#~ " -MQ <objetivo> Agregar un objetivo entrecomillado para MAKE\n"
+#~ " -MT <objetivo> Agregar un objetivo sin comillas\n"
+
+#~ msgid ""
+#~ " -D<macro> Define a <macro> with string '1' as its value\n"
+#~ " -D<macro>=<val> Define a <macro> with <val> as its value\n"
+#~ " -A<question>=<answer> Assert the <answer> to <question>\n"
+#~ " -A-<question>=<answer> Disable the <answer> to <question>\n"
+#~ " -U<macro> Undefine <macro> \n"
+#~ " -v Display the version number\n"
+#~ msgstr ""
+#~ " -D<macro> Define una <macro> con la cadena '1' como su valor\n"
+#~ " -D<macro>=<valor> Define una <macro> con <valor> como su valor\n"
+#~ " -A<pregunta>=<resp> Define la <resp>uesta para la <pregunta>\n"
+#~ " -A-<pregunta>=<resp> Desactiva la <resp>uesta a la <pregunta>\n"
+#~ " -U<macro> Borra la definición de <macro> \n"
+#~ " -v Muestra el número de la versión\n"
+
+#~ msgid ""
+#~ " -H Print the name of header files as they are used\n"
+#~ " -C Do not discard comments\n"
+#~ " -dM Display a list of macro definitions active at end\n"
+#~ " -dD Preserve macro definitions in output\n"
+#~ " -dN As -dD except that only the names are preserved\n"
+#~ " -dI Include #include directives in the output\n"
+#~ msgstr ""
+#~ " -H Muestra el nombre de los ficheros de encabezado cada vez que se usan\n"
+#~ " -C No descarta los comentarios\n"
+#~ " -dM Muestra una lista de definiciones de macro activas al final\n"
+#~ " -dD Preserva las definiciones de macro en la salida\n"
+#~ " -dN Como -dD excepto que sólo se preservan los nombres\n"
+#~ " -dI Incluye directivas #include en la salida\n"
+
+#~ msgid ""
+#~ " -f[no-]preprocessed Treat the input file as already preprocessed\n"
+#~ " -ftabstop=<number> Distance between tab stops for column reporting\n"
+#~ " -P Do not generate #line directives\n"
+#~ " -remap Remap file names when including files\n"
+#~ " --help Display this information\n"
+#~ msgstr ""
+#~ " -f[no-]preprocessed Trata el fichero de entrada como si ya fuera preprocesado\n"
+#~ " -ftabstop=<número> Distancia entre los topes de tabulador para el reporte en columnas\n"
+#~ " -P No genera directivas #line\n"
+#~ " -remap Remapea los nombres de fichero cuando se incluyan ficheros\n"
+#~ " --help Muestra esta información\n"
+
+#~ msgid "parse error"
+#~ msgstr "error de decodificación"
+
+#~ msgid "ISO C forbids the address of a cast expression"
+#~ msgstr "ISO C prohíbe la dirección de una expresión cast"
+
+#~ msgid "initializer for static variable is not constant"
+#~ msgstr "el inicializador para la variable estática no es una constante"
+
+#~ msgid "initializer for static variable uses complicated arithmetic"
+#~ msgstr "el inicializador para la variable estática usa aritmética complicada"
+
+#~ msgid "aggregate initializer is not constant"
+#~ msgstr "el inicializador agregado no es una constante"
+
+#~ msgid "aggregate initializer uses complicated arithmetic"
+#~ msgstr "el inicializador agregado usa aritmética complicada"
+
+#~ msgid "open %s"
+#~ msgstr "abrir %s"
+
+#~ msgid "incompatibilities between object file & expected values"
+#~ msgstr "incompatibilidades entre el fichero objeto y los valores esperados"
+
+#~ msgid ""
+#~ "\n"
+#~ "Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Procesando la tabla de símbolos #%d, desfase = 0x%.8lx, tipo = %s\n"
+
+#~ msgid "string section missing"
+#~ msgstr "falta la sección de cadenas"
+
+#~ msgid "section pointer missing"
+#~ msgstr "falta la sección de punteros"
+
+#~ msgid "no symbol table found"
+#~ msgstr "no se encuentra la tabla de símbolos"
+
+#~ msgid ""
+#~ "\n"
+#~ "Updating header and load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Actualizando las órdenes de encabezado y carga.\n"
+#~ "\n"
+
+#~ msgid "load command map, %d cmds, new size %ld.\n"
+#~ msgstr "cargar mapa de órdenes, %d órdenes, nuevo tamaño %ld.\n"
+
+#~ msgid ""
+#~ "writing load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "escribiendo las órdenes de carga.\n"
+#~ "\n"
+
+#~ msgid "close %s"
+#~ msgstr "cerrar %s"
+
+#~ msgid "could not convert 0x%l.8x into a region"
+#~ msgstr "no se puede convertir 0x%l.8x en una región"
+
+#~ msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
+#~ msgstr "función %s, región %d, desfase = %ld (0x%.8lx)\n"
+
+#~ msgid "bad magic number"
+#~ msgstr "número mágico erróneo"
+
+#~ msgid "bad header version"
+#~ msgstr "versión de encabezado errónea"
+
+#~ msgid "bad raw header version"
+#~ msgstr "versión de encabezado textual errónea"
+
+#~ msgid "raw header buffer too small"
+#~ msgstr "almacenamiento temporal de encabezado textual demasiado pequeño"
+
+#~ msgid "old raw header file"
+#~ msgstr "fichero de encabezado textual antiguo"
+
+#~ msgid "unsupported version"
+#~ msgstr "versión sin soporte"
+
+#~ msgid "unknown {de,en}code_mach_o_hdr return value %d"
+#~ msgstr "valor de devolución {de,en}code_mach_o_hdr %d desconocido"
+
+#~ msgid "fstat %s"
+#~ msgstr "fstat %s"
+
+#~ msgid "lseek %s 0"
+#~ msgstr "lseek %s 0"
+
+#~ msgid "read %s"
+#~ msgstr "read %s"
+
+#~ msgid "read %ld bytes, expected %ld, from %s"
+#~ msgstr "%ld bytes leídos, se esperaban %ld, de %s"
+
+#~ msgid "msync %s"
+#~ msgstr "msync %s"
+
+#~ msgid "munmap %s"
+#~ msgstr "munmap %s"
+
+#~ msgid "write %s"
+#~ msgstr "write %s"
+
+#~ msgid "wrote %ld bytes, expected %ld, to %s"
+#~ msgstr "%ld bytes escritos, se esperaban %ld, a %s"
+
+#~ msgid "ISO C++ does not permit \"%s\" in #if"
+#~ msgstr "ISO C++ no permite \"%s\" en #if"
+
+#~ msgid "invalid character '%c' in #if"
+#~ msgstr "Carácter inválido '%c' en #if"
+
+#~ msgid "invalid character '\\%03o' in #if"
+#~ msgstr "Carácter inválido '\\%03o' en #if"
+
+#~ msgid "absolute file name in remap_filename"
+#~ msgstr "nombre de fichero absoluto en remap_filename"
+
+#~ msgid "%s: Not a directory"
+#~ msgstr "%s: No es un directorio"
+
+#~ msgid "directory name missing after %s"
+#~ msgstr "falta el nombre de directorio después de %s"
+
+#~ msgid "file name missing after %s"
+#~ msgstr "falta el nombre de fichero después de %s"
+
+#~ msgid "path name missing after %s"
+#~ msgstr "falta el nombre de la ruta después de %s"
+
+#~ msgid "trigraph ??%c converted to %c"
+#~ msgstr "trigrafo ??%c convertido a %c"
+
+#~ msgid "trigraph ??%c ignored"
+#~ msgstr "se ignora el trigrafo ??%c"
+
+#~ msgid "backslash and newline separated by space"
+#~ msgstr "caracteres de barra invertida y fin de línea separados por espacio"
+
+#~ msgid "backslash-newline at end of file"
+#~ msgstr "no hay caractér de barra invertida o fin de línea al final del fichero"
+
+#~ msgid "\"/*\" within comment"
+#~ msgstr "\"/*\" dentro de un comentario"
+
+#~ msgid "%s in preprocessing directive"
+#~ msgstr "%s en la directiva de preprocesamiento"
+
+#~ msgid "no newline at end of file"
+#~ msgstr "no hay caractér de fin de línea al final del fichero"
+
+#~ msgid "unknown string token %s\n"
+#~ msgstr "cadena de elemento %s desconocida\n"
+
+#~ msgid "non-hex digit '%c' in universal-character-name"
+#~ msgstr "dígito no hexadecimal '%c' en universal-character-name"
+
+#~ msgid "universal-character-name on EBCDIC target"
+#~ msgstr "universal-character-name en el objetivo EBCDIC"
+
+#~ msgid "universal-character-name out of range"
+#~ msgstr "universal-character-name fuera de rango"
+
+#~ msgid "escape sequence out of range for its type"
+#~ msgstr "secuencia de escape fuera de rango por su tipo"
+
+#~ msgid "#import is obsolete, use an #ifndef wrapper in the header file"
+#~ msgstr "#import es obsoleto, use una envoltura #ifndef en el fichero de encabezado"
+
+#~ msgid "#pragma once is obsolete"
+#~ msgstr "#pragma una vez es obsoleto"
+
+#~ msgid "the conditional began here"
+#~ msgstr "el condicional empezó aquí"
+
+#~ msgid "unterminated #%s"
+#~ msgstr "#%s sin terminar"
+
+#~ msgid "macro \"%s\" is not used"
+#~ msgstr "la macro \"%s\" no se utiliza"
+
+#~ msgid "\"%s\" redefined"
+#~ msgstr "se redefinió \"%s\""
+
+#~ msgid "this is the location of the previous definition"
+#~ msgstr "esta es la ubicación de la definición previa"
+
+#~ msgid "((anonymous))"
+#~ msgstr "((anónimo))"
+
+#~ msgid "%s: warnings being treated as errors\n"
+#~ msgstr "%s: los avisos son tratados como errores\n"
+
+#~ msgid "At top level:"
+#~ msgstr "En el nivel principal:"
+
+#~ msgid "In member function `%s':"
+#~ msgstr "En la función miembro `%s':"
+
+#~ msgid "In function `%s':"
+#~ msgstr "En la función `%s':"
+
+#~ msgid ""
+#~ "Please submit a full bug report,\n"
+#~ "with preprocessed source if appropriate.\n"
+#~ "See %s for instructions.\n"
+#~ msgstr ""
+#~ "Por favor envíe un reporte completo de `bugs',\n"
+#~ "con el código preprocesado si es apropiado.\n"
+#~ "Vea %s para más instrucciones.\n"
+
+#~ msgid "In file included from %s:%d"
+#~ msgstr "En el fichero incluído de %s:%d"
+
+#~ msgid ""
+#~ ",\n"
+#~ " from %s:%d"
+#~ msgstr ""
+#~ ",\n"
+#~ " de %s:%d"
+
+#~ msgid "internal regno botch: `%s' has regno = %d\n"
+#~ msgstr "regno interno fastidiado: `%s' tiene regno = %d\n"
+
+#~ msgid "support for the DWARF1 debugging format is deprecated"
+#~ msgstr "el soporte para el formato de depuración DWARF1 es obsoleto"
+
+#~ msgid "can't get current directory"
+#~ msgstr "no se puede obtener el directorio actual"
+
+#~ msgid "unsupported wide integer operation"
+#~ msgstr "operación de enteros anchos sin soporte"
+
+#~ msgid "mismatched braces in specs"
+#~ msgstr "llaves sin coincidencia en especificación"
+
+#~ msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
+#~ msgstr "Copyright (C) 2001 Free Software Foundation, Inc.\n"
+
+#~ msgid "Could not open basic block file %s.\n"
+#~ msgstr "No se puede abrir fichero de bloque básico %s.\n"
+
+#~ msgid "Could not open program flow graph file %s.\n"
+#~ msgstr "No se puede abrir el fichero del grafo de flujo del programa %s.\n"
+
+#~ msgid "Could not open data file %s.\n"
+#~ msgstr "No se puede abrir fichero de datos %s.\n"
+
+#~ msgid "Assuming that all execution counts are zero.\n"
+#~ msgstr "Asumiendo que todas las cuentas de ejecución son cero.\n"
+
+#~ msgid "No executable code associated with file %s.\n"
+#~ msgstr "No hay código ejecutable asociado al fichero %s.\n"
+
+#~ msgid "didn't use all bb entries of graph, function %s\n"
+#~ msgstr "no se usaron todas las entradas bb del grafo, función %s\n"
+
+#~ msgid "block_num = %ld, num_blocks = %d\n"
+#~ msgstr "block_num = %ld, num_blocks = %d\n"
+
+#~ msgid "ERROR: unexpected line number %ld\n"
+#~ msgstr "ERROR: número de línea %ld inesperado\n"
+
+#~ msgid "ERROR: too many basic blocks in function %s\n"
+#~ msgstr "ERROR: demasiados bloques básicos en la función %s\n"
+
+#~ msgid "ERROR: out of range line number in function %s\n"
+#~ msgstr "ERROR: número de líneas fuera de rango en la función %s\n"
+
+#~ msgid "Could not open source file %s.\n"
+#~ msgstr "No se puede abrir el fichero de código fuente %s.\n"
+
+#~ msgid "Unexpected EOF while reading source file %s.\n"
+#~ msgstr "EOF inesperado mientras se leía el fichero de código fuente %s.\n"
+
+#~ msgid "Creating %s.\n"
+#~ msgstr "Creando %s.\n"
+
+#~ msgid "Name `%s' contains quotes"
+#~ msgstr "El nombre `%s' contiene comillas"
+
+#~ msgid "invalid string `%s' in define_cpu_unit"
+#~ msgstr "cadena `%s' inválida en define_cpu_unit"
+
+#~ msgid "invalid string `%s' in define_query_cpu_unit"
+#~ msgstr "cadena `%s' inválida en define_query_cpu_unit"
+
+#~ msgid "invalid string `%s' in define_bypass"
+#~ msgstr "cadena `%s' inválida en define_bypass"
+
+#~ msgid "invalid first string `%s' in exclusion_set"
+#~ msgstr "primera cadena `%s' inválida en exclusion_set"
+
+#~ msgid "invalid second string `%s' in exclusion_set"
+#~ msgstr "segunda cadena `%s' inválida en exclusion_set"
+
+#~ msgid "invalid first string `%s' in presence_set"
+#~ msgstr "primera cadena `%s' inválida en presence_set"
+
+#~ msgid "invalid second string `%s' in presence_set"
+#~ msgstr "segunda cadena `%s' inválida en presence_set"
+
+#~ msgid "invalid first string `%s' in absence_set"
+#~ msgstr "primera cadena `%s' inválida en absence_set"
+
+#~ msgid "invalid second string `%s' in absence_set"
+#~ msgstr "segunda cadena `%s' inválida en absence_set"
+
+#~ msgid "invalid string `%s' in define_automaton"
+#~ msgstr "cadena `%s' inválida en define_automaton"
+
+#~ msgid "invalid option `%s' in automata_option"
+#~ msgstr "opción `%s' inválida en automata_option"
+
+#~ msgid "garbage after ) in reservation `%s'"
+#~ msgstr "basura después de ) en la reservación `%s'"
+
+#~ msgid "invalid `%s' in reservation `%s'"
+#~ msgstr "`%s' inválido en la reservación `%s'"
+
+#~ msgid "repetition `%s' <= 1 in reservation `%s'"
+#~ msgstr "repetición `%s' <= 1 en la reservación `%s'"
+
+#~ msgid "unit `%s' in exclusion is not declared"
+#~ msgstr "no se declaró la unidad `%s' en la exclusión"
+
+#~ msgid "`%s' in exclusion is not unit"
+#~ msgstr "`%s' en la exclusión no es una unidad"
+
+#~ msgid "unit `%s' excludes itself"
+#~ msgstr "la unidad `%s' se excluye a sí misma"
+
+#~ msgid "units `%s' and `%s' in exclusion set belong to different automata"
+#~ msgstr "las unidades `%s' y `%s' en el conjunto de exclusión pertenece a autómatas diferentes"
+
+#~ msgid "unit `%s' excludes and requires presence of `%s'"
+#~ msgstr "la unidad `%s' excluye y requiere la presencia de `%s'"
+
+#~ msgid "unit `%s' requires absence and presence of `%s'"
+#~ msgstr "la unidad `%s' requiere la ausencia y la presencia de `%s'"
+
+#~ msgid "repeated declaration of automaton `%s'"
+#~ msgstr "declaración repetida del autómata `%s'"
+
+#~ msgid "define_insn_reservation `%s' has negative latency time"
+#~ msgstr "define_insn_reservation `%s' tiene un tiempo de latencia negativo"
+
+#~ msgid "`%s' is already used as insn reservation name"
+#~ msgstr "`%s' ya se utilizó como un nombre de reservación de insn"
+
+#~ msgid "define_bypass `%s - %s' has negative latency time"
+#~ msgstr "define_bypass `%s - %s' tiene un tiempo de latencia negativo"
+
+#~ msgid "automaton `%s' is not declared"
+#~ msgstr "el autómata `%s' no se declaró"
+
+#~ msgid "define_unit `%s' without automaton when one defined"
+#~ msgstr "define_unit `%s' sin un autómata cuando uno está definido"
+
+#~ msgid "`%s' is declared as cpu unit"
+#~ msgstr "`%s' está declarado como una unidad de cpu"
+
+#~ msgid "`%s' is declared as cpu reservation"
+#~ msgstr "`%s' está declarado como una reservación de cpu"
+
+#~ msgid "repeated declaration of unit `%s'"
+#~ msgstr "declaración repetida de la unidad `%s'"
+
+#~ msgid "repeated declaration of reservation `%s'"
+#~ msgstr "declaración repetida de la reservación `%s'"
+
+#~ msgid "there is no insn reservation `%s'"
+#~ msgstr "no hay reservación de insn `%s' previa"
+
+#~ msgid "the same bypass `%s - %s' is already defined"
+#~ msgstr "el mismo bypass `%s - %s' ya está definido"
+
+#~ msgid "bypass `%s - %s' is already defined"
+#~ msgstr "el bypass `%s - %s' ya está definido"
+
+#~ msgid "undeclared unit or reservation `%s'"
+#~ msgstr "unidad o reservación `%s' sin declarar"
+
+#~ msgid "unit `%s' is not used"
+#~ msgstr "la unidad `%s' no se utiliza"
+
+#~ msgid "reservation `%s' is not used"
+#~ msgstr "la reservación `%s' no se utiliza"
+
+#~ msgid "cycle in definition of reservation `%s'"
+#~ msgstr "ciclo en la definición de la reservación `%s'"
+
+#~ msgid "Units `%s' and `%s' should be in the same automaton"
+#~ msgstr "Las unidades `%s' y `%s' deben estar en el mismo autómata"
+
+#~ msgid "-split has no argument."
+#~ msgstr "-split no tiene argumentos."
+
+#~ msgid "option `-split' has not been implemented yet\n"
+#~ msgstr "la opción `-split' aún no se ha implementado\n"
+
+#~ msgid "Automaton `%s': Insn `%s' will never be issued"
+#~ msgstr "Autómata `%s': Insn `%s' nunca se utilizará"
+
+#~ msgid "Insn `%s' will never be issued"
+#~ msgstr "Insn `%s' nunca se utilizará"
+
+#~ msgid "Errors in DFA description"
+#~ msgstr "Errores en la descripción DFA"
+
+#~ msgid "Error in writing DFA description file %s"
+#~ msgstr "Error al escribir el fichero de descripción DFA %s"
+
+#~ msgid "No input file name."
+#~ msgstr "No hay nombre de fichero de entrada."
+
+#~ msgid "Profile does not match flowgraph of function %s (out of date?)"
+#~ msgstr "El análisis de perfil no coincide con la gráfica de flujo de la función %s (¿desactualizado?)"
+
+#~ msgid ".da file corrupted"
+#~ msgstr "fichero .da corrupto"
+
+#~ msgid "Generate STABS format debug info"
+#~ msgstr "Generar información de depuración en el formato STABS"
+
+#~ msgid "Generate extended STABS format debug info"
+#~ msgstr "Generar información de depuración en el formato STABS extendido"
+
+#~ msgid "Generate DWARF-1 format debug info"
+#~ msgstr "Generar información de depuración en el formato DWARF-1"
+
+#~ msgid "Generate extended DWARF-1 format debug info"
+#~ msgstr "Generar información de depuración en el formato DWARF-1 extendido"
+
+#~ msgid "Generate DWARF-2 debug info"
+#~ msgstr "Generar información de depuración en el formato DWARF-2"
+
+#~ msgid "Generate XCOFF format debug info"
+#~ msgstr "Generar información de depuración en el formato XCOFF"
+
+#~ msgid "Generate extended XCOFF format debug info"
+#~ msgstr "Generar información de depuración en el formato XCOFF extendido"
+
+#~ msgid "Generate COFF format debug info"
+#~ msgstr "Generar información de depuración en el formato XCOFF"
+
+#~ msgid "Generate VMS format debug info"
+#~ msgstr "Generar información de depuración en el formato VMS"
+
+#~ msgid "Consider all mem refs through pointers as volatile"
+#~ msgstr "Considerar todas las referencias a memoria a través de punteros como volatile"
+
+#~ msgid "Consider all mem refs to global data to be volatile"
+#~ msgstr "Considerar todas las referencias a datos globales como volatile"
+
+#~ msgid "Consider all mem refs to static data to be volatile"
+#~ msgstr "Considerar todas las referencias a datos static como volatile"
+
+#~ msgid "Integrate simple functions into their callers"
+#~ msgstr "Integrar las funciones simples en sus invocadores"
+
+#~ msgid "Output GNU ld formatted global initializers"
+#~ msgstr "Obtener inicializadores globales con formato para ld de GNU"
+
+#~ msgid "Enable SSA optimizations"
+#~ msgstr "Activar las optimizaciones SSA"
+
+#~ msgid "Enable SSA conditional constant propagation"
+#~ msgstr "Activar la propagación de las constantes condicionales SSA"
+
+#~ msgid "Enable aggressive SSA dead code elimination"
+#~ msgstr "Activar la eliminación agresiva de código muerto SSA"
+
+#~ msgid "Compile just for ISO C90"
+#~ msgstr "Compilar sólo para ISO C90"
+
+#~ msgid "Determine language standard"
+#~ msgstr "Determinar el estándard de lenguaje"
+
+#~ msgid "Make bit-fields by unsigned by default"
+#~ msgstr "Hacer por defecto unsigned los campos de bit"
+
+#~ msgid "Allow different types as args of ? operator"
+#~ msgstr "Permitir tipos diferentes como argumentos del operador ?"
+
+#~ msgid "Allow the use of $ inside identifiers"
+#~ msgstr "Permitir el uso de $ dentro de los identificadores"
+
+#~ msgid "Use the smallest fitting integer to hold enums"
+#~ msgstr "Usar el entero adecuado más pequeño para contener enumerados"
+
+#~ msgid "Enable most warning messages"
+#~ msgstr "Activar casi todos los mensajes de aviso"
+
+#~ msgid "Warn if nested comments are detected"
+#~ msgstr "Avisar si se detectan comentarios anidados"
+
+#~ msgid "Don't warn about too many arguments to format functions"
+#~ msgstr "No avisar sobre demasiados argumentos para las funciones de formato"
+
+#~ msgid "Warn about non-string-literal format strings"
+#~ msgstr "Avisar sobre cadenas de formato que no son cadenas literales"
+
+#~ msgid "Warn about constructs whose meanings change in ISO C"
+#~ msgstr "Avisar sobre construcciones cuyos significados cambian en ISO C"
+
+#~ msgid "Warn when trigraphs are encountered"
+#~ msgstr "Avisar si se encuentran trigrafos"
+
+#~ msgid "Mark strings as 'const char *'"
+#~ msgstr "Marcar las cadenas como 'const char *'"
+
+#~ msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
+#~ msgstr " -pedantic-errors Como -pedantic excepto que se producen errores\n"
+
+#~ msgid " -w Suppress warnings\n"
+#~ msgstr " -w Suprimir avisos\n"
+
+#~ msgid " -W Enable extra warnings\n"
+#~ msgstr " -W Activar avisos extra\n"
+
+#~ msgid " -Wunused Enable unused warnings\n"
+#~ msgstr " -Wunused Activar avisos sin usar\n"
+
+#~ msgid " -p Enable function profiling\n"
+#~ msgstr " -p Activar el análisis de perfil de funciones\n"
+
+#~ msgid " -version Display the compiler's version\n"
+#~ msgstr " -version Muestra la versión del compilador\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "Language specific options:\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Opciones específicas del lenguaje:\n"
+
+#~ msgid " %-23.23s [undocumented]\n"
+#~ msgstr " %-23.23s [sin documentar]\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "There are undocumented %s specific options as well.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Además hay opciones específicas de %s sin documentar.\n"
+
+#~ msgid ""
+#~ "\n"
+#~ " Options for %s:\n"
+#~ msgstr ""
+#~ "\n"
+#~ " Opciones para %s:\n"
+
+#~ msgid "unrecognized option `%s'"
+#~ msgstr "opción `-%s' no reconocida"
+
+#~ msgid "-Wid-clash-LEN is no longer supported"
+#~ msgstr "-Wid-clash-LEN ya no tiene soporte"
+
+#~ msgid "use -gdwarf -g%d for DWARF v1, level %d"
+#~ msgstr "use -gdwarf -g%d para DWARF v1, nivel %d"
+
+#~ msgid "use -gdwarf-2 for DWARF v2"
+#~ msgstr "use -dwarf-2 para DWARF v2"
+
+#~ msgid "ignoring option `%s' due to invalid debug level specification"
+#~ msgstr "ignorando la opción `%s' debido a la especificación de un nivel de depuración inválido"
+
+#~ msgid "`%s': unknown or unsupported -g option"
+#~ msgstr "`%s': opción -g desconocida o sin soporte"
+
+#~ msgid "`%s' ignored, conflicts with `-g%s'"
+#~ msgstr "`%s' ignorado, tiene conflicto con `-g%s'"
+
+#~ msgid "-param option missing argument"
+#~ msgstr "falta el argumento para la opción -param"
+
+#~ msgid "invalid --param option: %s"
+#~ msgstr "opción de --param inválida: %s"
+
+#~ msgid "(it is valid for %s but not the selected language)"
+#~ msgstr "(es válida para %s pero no para el lenguaje seleccionado)"
+
+#~ msgid "#`%s' not supported by %s#"
+#~ msgstr "#`%s' no tiene soporte para %s#"
+
+#~ msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
+#~ msgstr "El número máximo de instrucciones por inlining repetido antes de que gcc comience a descartar inlining"
+
+#~ msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
+#~ msgstr "La pendiente de la función lineal de descarte de inlining antes de que se alcance el límite de inlining recursivo es dada por el valor recíproco negativo de este parámetro"
+
+#~ msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
+#~ msgstr "El número de instrucciones en una sola función para ser aún elegible para inlining después de mucho inlining recursivo"
+
+#~ msgid "Use Mingw32 interface"
+#~ msgstr "Usar la interfaz Mingw32"
+
+#~ msgid "Use Cygwin interface"
+#~ msgstr "Usar la interfaz Cygwin"
+
+#~ msgid "Use bare Windows interface"
+#~ msgstr "Usar la interfaz desnuda Windows"
+
+#~ msgid "const objects cannot go in .sdata/.sbss"
+#~ msgstr "los objetos const no pueden ir en .sdata/.sbss"
+
+#~ msgid "Generate code for a Sun FPA"
+#~ msgstr "Generar código para un FPA de Sun"
+
+#~ msgid "Do not generate code for a Sun FPA"
+#~ msgstr "No generar código para un FPA de Sun"
+
+#~ msgid "Generate code for a Sun Sky board"
+#~ msgstr "Generar código para una tarjeta Sun Sky"
+
+#~ msgid "Do not use Sky linkage convention"
+#~ msgstr "No generar código para una tarjeta Sun Sky"
+
+#~ msgid "Generate code for a 68881"
+#~ msgstr "Generar código para un 68881"
+
+#~ msgid "internal gcc monitor: short-branch(%x)"
+#~ msgstr "monitor interno de gcc: short-branch(%x)"
+
+#~ msgid "internal gcc error: Can't express symbolic location"
+#~ msgstr "error interno de gcc: No se puede expresar la ubicación simbólica"
+
+#~ msgid "argument #%d is a structure"
+#~ msgstr "el argumento #%d es una estructura"
+
+#~ msgid "%%R not followed by %%B/C/D/E"
+#~ msgstr "%%R no es seguido por %%B/C/D/E"
+
+#~ msgid "invalid %%Q value"
+#~ msgstr "valor %%Q inválido"
+
+#~ msgid "invalid %%o value"
+#~ msgstr "valor %%o inválido"
+
+#~ msgid "invalid %%s/S value"
+#~ msgstr "valor %%s/S inválido"
+
+#~ msgid "invalid %%B value"
+#~ msgstr "valor %%B inválido"
+
+#~ msgid "`%%d' operand isn't a register"
+#~ msgstr "el operando `%%d' no es un registro"
+
+#~ msgid "operand is r0"
+#~ msgstr "el operando es r0"
+
+#~ msgid "operand is const_double"
+#~ msgstr "el operando es const_double"
+
+#~ msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
+#~ msgstr "-mtrap-large-shift y -mhandle-large-shift son incompatibles"
+
+#~ msgid "invalid option `-mshort-data-%s'"
+#~ msgstr "opción inválida `-mshort-data-%s'"
+
+#~ msgid "-mshort-data-%s is too large "
+#~ msgstr "-mshort-data-%s es demasiado grande "
+
+#~ msgid "-mshort-data-%s and PIC are incompatible"
+#~ msgstr "-mshort-data-%s y PIC son incompatibles"
+
+#~ msgid "bad value (%s) for -mips switch"
+#~ msgstr "valor erróneo (%s) para el interruptor -mips"
+
+#~ msgid "invalid option `entry%s'"
+#~ msgstr "opción inválida `entry%s'"
+
+#~ msgid "-mentry is only meaningful with -mips-16"
+#~ msgstr "-mentry sólo tiene significado con -mips-16"
+
+#~ msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
+#~ msgstr "el formato ECOFF de MIPS no permite el cambio de nombres de fichero dentro de funciones con #line"
+
+#~ msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
+#~ msgstr "fp_offset (%ld) o end_offset (%ld) es menor a cero"
+
+#~ msgid "Trap on integer divide overflow"
+#~ msgstr "Atrapar desbordamientos en la división entera"
+
+#~ msgid "Don't trap on integer divide overflow"
+#~ msgstr "No atrapar desbordamientos en la división entera"
+
+# Error de dedo de los desarrolladores originales. Avisar. cfuga
+#~ msgid "Use mips16 entry/exit psuedo ops"
+#~ msgstr "Usar pseudo ops mips16 de entry/exit"
+
+#~ msgid "Don't use MIPS16 instructions"
+#~ msgstr "No usar instrucciones MIPS16"
+
+#~ msgid "invalid %%z value"
+#~ msgstr "valor %%z inválido"
+
+#~ msgid "invalid %%Z value"
+#~ msgstr "valor %%Z inválido"
+
+#~ msgid "invalid %%j value"
+#~ msgstr "valor %%j inválido"
+
+#~ msgid "can't have varargs with -mfp-arg-in-fp-regs"
+#~ msgstr "no se puede tener varargs con -mfp-arg-in-fp-regs"
+
+#~ msgid "unknown -mvrsave= option specified: '%s'"
+#~ msgstr "opción -mvrsave= especificada desconocida: '%s'"
+
+#~ msgid "64 bit mode"
+#~ msgstr "modo de 64 bit"
+
+#~ msgid "31 bit mode"
+#~ msgstr "modo de 31 bit"
+
+#~ msgid "Use the Xtensa code density option"
+#~ msgstr "Usar la opción de densidad del código Xtensa"
+
+#~ msgid "Do not use the Xtensa code density option"
+#~ msgstr "No usar la opción de densidad del código Xtensa"
+
+#~ msgid "Use the Xtensa MAC16 option"
+#~ msgstr "Usar la opción MAC16 de Xtensa"
+
+#~ msgid "Do not use the Xtensa MAC16 option"
+#~ msgstr "No usar la opción MAC16 de Xtensa"
+
+#~ msgid "Use the Xtensa MUL16 option"
+#~ msgstr "Usar la opción MUL16 de Xtensa"
+
+#~ msgid "Do not use the Xtensa MUL16 option"
+#~ msgstr "No usar la opción MUL16 de Xtensa"
+
+#~ msgid "Use the Xtensa MUL32 option"
+#~ msgstr "Usar la opción MUL32 de Xtensa"
+
+#~ msgid "Do not use the Xtensa MUL32 option"
+#~ msgstr "No usar la opción MUL32 de Xtensa"
+
+#~ msgid "Use the Xtensa NSA option"
+#~ msgstr "Usar la opción NSA de Xtensa"
+
+#~ msgid "Do not use the Xtensa NSA option"
+#~ msgstr "No usar la opción NSA de Xtensa"
+
+#~ msgid "Use the Xtensa MIN/MAX option"
+#~ msgstr "Usar la opción MIN/MAX de Xtensa"
+
+#~ msgid "Do not use the Xtensa MIN/MAX option"
+#~ msgstr "No usar la opción MIN/MAX de Xtensa"
+
+#~ msgid "Use the Xtensa SEXT option"
+#~ msgstr "Usar la opción SEXT de Xtensa"
+
+#~ msgid "Do not use the Xtensa SEXT option"
+#~ msgstr "No usar la opción SEXT de Xtensa"
+
+#~ msgid "Use the Xtensa boolean register option"
+#~ msgstr "Usar la opción de registro booleano de Xtensa"
+
+#~ msgid "Do not use the Xtensa boolean register option"
+#~ msgstr "No usar la opción de registro booleano de Xtensa"
+
+#~ msgid "Use the Xtensa floating-point unit"
+#~ msgstr "Usar la unidad de coma flotante de Xtensa"
+
+#~ msgid "Do not use the Xtensa floating-point unit"
+#~ msgstr "No usar la unidad de coma flotante de Xtensa"
+
+#~ msgid "Serialize volatile memory references with MEMW instructions"
+#~ msgstr "Serializar las referencias a memoria volátil con instrucciones MEMW"
+
+#~ msgid "Do not serialize volatile memory references with MEMW instructions"
+#~ msgstr "No serializar las referencias a memoria volátil con instrucciones MEMW"
+
+#~ msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
+#~ msgstr "el tipo de `%E' no coincide con el tipo del destructor `%T' (el tipo era `%T')"
+
+#~ msgid "`%D' is a namespace"
+#~ msgstr "`%D' es un nombre de espacio"
+
+#~ msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
+#~ msgstr "el objeto base `%E' de la llamada de método del ambiente es del tipo no agregado `%T'"
+
+#~ msgid "destructors take no parameters"
+#~ msgstr "los destructores no tienen parámetros"
+
+#~ msgid "destructor name `~%T' does not match type `%T' of expression"
+#~ msgstr "el nombre del destructor `~%T' no coincide con el tipo `%T' de la expresión"
+
+#~ msgid "%s %+#D%s"
+#~ msgstr "%s %+#D%s"
#~ msgid "%s for `%T ? %T : %T' operator"
#~ msgstr "%s para el operador `%T ? %T : %T'"
@@ -20859,12 +22862,446 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "%s for `%s %T' operator"
#~ msgstr "%s para el operador `%s %T'"
+#~ msgid "`%D' must be declared before use"
+#~ msgstr "se debe declarar `%D' antes de su uso"
+
+#~ msgid " initializing argument %P of `%D' from result of `%D'"
+#~ msgstr " argumento de inicialización %P de `%D' a partir del resultado de `%D'"
+
+#~ msgid " initializing temporary from result of `%D'"
+#~ msgstr " inicializando el temporal a partir del resultado de `%D'"
+
+#~ msgid "cannot receive objects of non-POD type `%#T' through `...'"
+#~ msgstr "no se puede recibir objetos de tipo `%#T' que no es POD a través de `...'"
+
+#~ msgid "field `%D' invalidly declared offset type"
+#~ msgstr "el campo `%D' es declarado inválidamente como un tipo de desplazamiento"
+
+#~ msgid "lookup of `%D' finds `%#D'"
+#~ msgstr "la búsqueda de `%D' encuentra a `%#D'"
+
+#~ msgid " instead of `%D' from dependent base class"
+#~ msgstr " en lugar de `%D' de la clase base dependiente"
+
+#~ msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
+#~ msgstr "la búsqueda de `%D' en el ámbito de `%#T' (`%#D') no coincide con la búsqueda en el ámbito actual (`%#D')"
+
+#~ msgid "invalid declarator"
+#~ msgstr "declarador inválido"
+
+#~ msgid "`%T' is implicitly a typename"
+#~ msgstr "`%T' implícitamente es un nombre de tipo"
+
+#~ msgid "parameter `%D' invalidly declared offset type"
+#~ msgstr "el parámetro `%D' se declaró inválidamente como tipo de desplazamiento"
+
+#~ msgid "`%s %T' declares a new type at namespace scope"
+#~ msgstr "`%s %T' declara un tipo nuevo en el ámbito del nombre de espacio"
+
+#~ msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
+#~ msgstr " los nombres de las clases bases dependientes no son visibles para la búsqueda de nombres sin calificar - para referirse al tipo heredado, utilice `%s %T::%T'"
+
+#~ msgid "base class `%T' has incomplete type"
+#~ msgstr "la clase base `%T' tiene tipo de dato incompleto"
+
+#~ msgid "semicolon missing after declaration of `%#T'"
+#~ msgstr "falta punto y coma después de la declaración de `%#T'"
+
+#~ msgid "template `%#D' instantiated in file without #pragma interface"
+#~ msgstr "se instanció la plantilla `%#D' en el fichero sin #pragma interface"
+
+#~ msgid "template `%#D' defined in file without #pragma interface"
+#~ msgstr "se definió la plantilla `%#D' en el fichero sin #pragma interface"
+
+#~ msgid "parser may be lost: is there a '{' missing somewhere?"
+#~ msgstr "el decodificador tal vez se perdió: ¿falta algún '{' en algún lugar?"
+
+#~ msgid "invalid data member initialization"
+#~ msgstr "inicialización del dato miembro inválida"
+
+#~ msgid "(use `=' to initialize static data members)"
+#~ msgstr "(use `=' para inicializar miembros de datos static)"
+
+#~ msgid "too many initialization functions required"
+#~ msgstr "se requieren demasiadas funciones de inicialización"
+
+#~ msgid "`%D' is not a namespace"
+#~ msgstr "`%D' no es un nombre de espacio"
+
+#~ msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
+#~ msgstr "una declaración de uso no puede especificar un id de plantilla. Intente `using %T::%D'"
+
+#~ msgid "`%T' does not have a class or union named `%D'"
+#~ msgstr "`%T' no tiene una clase o union llamado `%D'"
+
+#~ msgid "`%T' is not a class or union type"
+#~ msgstr "`%T' no es una clase o tipo union"
+
+#~ msgid "`%s' not supported by %s"
+#~ msgstr "`%s' no tiene soporte para %s"
+
+#~ msgid "(static %s for %s)"
+#~ msgstr "(% static para %s)"
+
+#~ msgid "\\x%x"
+#~ msgstr "\\x%x"
+
+#~ msgid "%s: In instantiation of `%s':\n"
+#~ msgstr "%s: En la instanciación de `%s':\n"
+
+#~ msgid "%s:%d: instantiated from `%s'\n"
+#~ msgstr "%s:%d: instanciado desde `%s'\n"
+
+#~ msgid "%s:%d: instantiated from here\n"
+#~ msgstr "%s:%d: instanciado desde aquí\n"
+
+#~ msgid "previous friend declaration of `%D'"
+#~ msgstr "declaración friend previa de `%D'"
+
+#~ msgid "cannot call destructor `%T::~%T' without object"
+#~ msgstr "no se puede llamar al destructor `%T::~%T' sin un objeto"
+
+#~ msgid "invalid use of member `%D'"
+#~ msgstr "uso inválido del miembro `%D'"
+
+#~ msgid "no method `%T::%D'"
+#~ msgstr "no hay un método `%T::%D'"
+
+#~ msgid "object missing in use of pointer-to-member construct"
+#~ msgstr "falta objeto en el uso de una consctrucción que apunta a miembros"
+
+#~ msgid "member `%D' is non-static but referenced as a static member"
+#~ msgstr "el miembro `%D' no es static pero es referenciado como un miembro static"
+
+#~ msgid "object missing in `%E'"
+#~ msgstr "falta un objeto en `%E'"
+
+#~ msgid "initializer list being treated as compound expression"
+#~ msgstr "se trata la lista de inicializadores como una expresión compuesta"
+
+#~ msgid "cannot declare references to references"
+#~ msgstr "no se pueden declarar referencias a referencias"
+
+#~ msgid "cannot declare pointers to references"
+#~ msgstr "no se pueden declarar punteros a referencias"
+
+#~ msgid "type name expected before `&'"
+#~ msgstr "se esperaba un nombre de tipo antes de `&'"
+
+#~ msgid "semicolon missing after %s declaration"
+#~ msgstr "falta punto y coma después de la declaración %s"
+
+#~ msgid "semicolon missing after declaration of `%T'"
+#~ msgstr "falta punto y coma después de la declaración de `%T'"
+
+#~ msgid "`::%D' undeclared (first use here)"
+#~ msgstr "`::%D' sin declarar (primer uso aquí)"
+
#~ msgid "real-valued template parameters when cross-compiling"
#~ msgstr "parámetros de una plantilla con valores reales cuando se hizo una compilación cruzada"
#~ msgid "due to a defect in the G++ 3.2 ABI, G++ has assigned the same mangled name to two different types"
#~ msgstr "debido a un defecto en el ABI de G++ 3.2, G++ asignó el misno nombre revuelto a dos tipos diferentes"
+#~ msgid "use of linkage spec `%D' is different from previous spec `%D'"
+#~ msgstr "el uso de la especificación de enlazado `%D' es diferente de la especificación previa `%D'"
+
+#~ msgid "no base or member initializers given following ':'"
+#~ msgstr "no hay inicializadores de base o miembros dados después de ':'"
+
+#~ msgid "use of template qualifier outside template"
+#~ msgstr "uso del calificador de plantilla fuera de la plantilla"
+
+#~ msgid "ISO C++ forbids an empty condition for `%s'"
+#~ msgstr "ISO C++ prohíbe una condición vacía para `%s'"
+
+#~ msgid "definition of class `%T' in condition"
+#~ msgstr "definición de la clase `%T' en una condición"
+
+#~ msgid "definition of enum `%T' in condition"
+#~ msgstr "definición del enum `%T' en una condición"
+
+#~ msgid "definition of array `%#D' in condition"
+#~ msgstr "definición de la matriz `%#D' en una condición"
+
+#~ msgid "old style placement syntax, use () instead"
+#~ msgstr "sintaxis de ubicación de estilo antiguo, use en su lugar ()"
+
+#~ msgid "`%T' is not a valid expression"
+#~ msgstr "`%T' no es una expresión válida"
+
+#~ msgid "initialization of new expression with `='"
+#~ msgstr "inicialización de la expresión new con `='"
+
+#~ msgid "sigof type specifier"
+#~ msgstr "especificador de tipo sigof"
+
+#~ msgid "`sigof' applied to non-aggregate expression"
+#~ msgstr "`sigof' aplicado a una expresión no agregada"
+
+#~ msgid "`sigof' applied to non-aggregate type"
+#~ msgstr "`sigof' aplicado a un tipo no agregado"
+
+#~ msgid "storage class specifier `%s' not allowed after struct or class"
+#~ msgstr "no se permite el especificador de clase de almacenamiento `%s' después de struct ó class"
+
+#~ msgid "type specifier `%s' not allowed after struct or class"
+#~ msgstr "no se permite el especificador de tipo `%s' después de struct ó class"
+
+#~ msgid "type qualifier `%s' not allowed after struct or class"
+#~ msgstr "no se permite el calificador de tipo `%s' después de struct ó class"
+
+#~ msgid "no body nor ';' separates two class, struct or union declarations"
+#~ msgstr "no hay cuerpo ni ';' separa dos declaraciones class, struct ó union"
+
+#~ msgid "no bases given following `:'"
+#~ msgstr "no hay bases dado el siguiente `:'"
+
+#~ msgid "multiple access specifiers"
+#~ msgstr "especificadores de acceso múltiples"
+
+#~ msgid "multiple `virtual' specifiers"
+#~ msgstr "especificadores `virtual' múltiples"
+
+#~ msgid "missing ';' before right brace"
+#~ msgstr "falta ';' antes de la llave derecha"
+
+#~ msgid "ISO C++ forbids array dimensions with parenthesized type in new"
+#~ msgstr "ISO C++ prohíbe las dimensiones de matriz con tipos con paréntesis en new"
+
+#~ msgid "`%T' is not a class or namespace"
+#~ msgstr "`%T' no es una claso o un espacio de nombres"
+
+#~ msgid "ISO C++ forbids label declarations"
+#~ msgstr "ISO C++ prohíbe declaraciones etiquetadas"
+
+#~ msgid "label must be followed by statement"
+#~ msgstr "la etiqueta debe ser seguida de una declaración"
+
+#~ msgid "must have at least one catch per try block"
+#~ msgstr "se debe tener por lo menos un catch por cada bloque try"
+
+#~ msgid "ISO C++ forbids compound statements inside for initializations"
+#~ msgstr "ISO C++ prohíbe las declaraciones compuestas internas para inicializaciones"
+
+#~ msgid "possibly missing ')'"
+#~ msgstr "posible ')' faltante"
+
+#~ msgid "type specifier omitted for parameter"
+#~ msgstr "especificador de tipo omitido para el parámetro"
+
+#~ msgid "`%E' is not a type, use `typename %E' to make it one"
+#~ msgstr "`%E' no es un tipo, use `typename %E' para hacerlo un tipo"
+
+#~ msgid "no type `%D' in `%T'"
+#~ msgstr "no hay un tipo `%D' en `%T'"
+
+#~ msgid "type specifier omitted for parameter `%E'"
+#~ msgstr "se omitió el especificador para el parámetro `%E'"
+
+#~ msgid "type `%T' composed from a local class is not a valid template-argument"
+#~ msgstr "el tipo `%T' compuesto desde una clase local no es un argumento de plantilla válido"
+
+# No me gusta mucho esta traducción. - cfuga
+#
+#~ msgid "assignment to non-static member `%D' of enclosing class `%T'"
+#~ msgstr "asignación al miembro `%D' que no es static de la clase incluyente `%T'"
+
+#~ msgid "adjusting pointers for covariant returns"
+#~ msgstr "ajustando los punteros para devoluciones covariantes"
+
+#~ msgid " overriding `%#D' (must be pointer or reference to class)"
+#~ msgstr " sustituyendo a `%#D' (debe ser puntero o referencia a una clase)"
+
+#~ msgid " overriding `%#D' (must use pointer or reference)"
+#~ msgstr " sustituyendo a `%#D' (debe ser puntero o referencia)"
+
+#~ msgid "ISO C++ does not permit named return values"
+#~ msgstr "ISO C++ no permite valores nombrados de devolución"
+
+#~ msgid "return identifier `%D' already in place"
+#~ msgstr "el identificador de devolución `%D' ya está en su lugar"
+
+#~ msgid "can't redefine default return value for constructors"
+#~ msgstr "no se puede redefinir el valor por defecto de devoluciòn para los constructores"
+
+#~ msgid "calling type `%T' like a method"
+#~ msgstr "llamando al tipo `%T' como un método"
+
+#~ msgid "destructor specifier `%T::~%T()' must have matching names"
+#~ msgstr "el especificador del destructor `%T::~%T()' debe tener nombres coincidentes"
+
+#~ msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
+#~ msgstr "el nombre de identificador `%s' causa conflictos con la estrategia interna de nombrado del C++ de GNU"
+
+#~ msgid "parse error at end of saved function text"
+#~ msgstr "error de decodificación al final del texto de la función guardada"
+
+#~ msgid "%Hend of file read inside definition"
+#~ msgstr "%Hlectura de final de fichero dentro de la definición"
+
+#~ msgid "parse error in method specification"
+#~ msgstr "error de decodificación en la especificación del método"
+
+#~ msgid "function body for constructor missing"
+#~ msgstr "falta el cuerpo de la función para el constructor"
+
+#~ msgid "circular dependency in default args of `%#D'"
+#~ msgstr "dependencia circular en los argumentos por defecto de `%#D'"
+
+#~ msgid "invalid type `%T' for default argument to `%T'"
+#~ msgstr "tipo `%T' inválido para el argumento por defecto de `%T'"
+
+#~ msgid "%s before `%c'"
+#~ msgstr "%s antes de `%c'"
+
+#~ msgid "%s before `\\%o'"
+#~ msgstr "%s antes de `\\%o'"
+
+#~ msgid "%s before `%s' token"
+#~ msgstr "%s antes del elemento `%s'"
+
+#~ msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
+#~ msgstr "ISO C++ prohíbe la conversión de `%#T' a `(...)'"
+
+#~ msgid "invalid application of `%s' to non-static member"
+#~ msgstr "aplicación inválida de `%s' a un miembro que no es static"
+
+#~ msgid "sizeof applied to a bit-field"
+#~ msgstr "sizeof aplicado a un campo de bits"
+
+#~ msgid "destructor specifier `%T::~%T' must have matching names"
+#~ msgstr "el especificador del destructor `%T::~%T' debe tener nombres coincidentes"
+
+#~ msgid "parameter type of called function is incomplete"
+#~ msgstr "el tipo del parámetro de la función llamada es incompleto"
+
+#~ msgid "ISO C++ forbids using pointer to a member in subtraction"
+#~ msgstr "ISO C++ prohíbe el uso de un puntero a un miembro en la sustracción"
+
+#~ msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
+#~ msgstr "reinterpret_cast de `%T' a `%T' proscribe a const (o volatile)"
+
+#~ msgid "return-statement with no value, in function declared with a non-void return type"
+#~ msgstr "sentencia de devolución sin valor, en una función declarada con un tipo de devolución que no es void"
+
+#~ msgid "return-statement with a value, in function declared with a void return type"
+#~ msgstr "declaración de devolución con un valor, en una función declarada con un tipo de devolución void"
+
+#~ msgid "comma expression used to initialize return value"
+#~ msgstr "se usó una expresión coma para inicializar el valor de devolución"
+
+#~ msgid "`%T' fails to be a typedef or built-in type"
+#~ msgstr "`%T' falla al ser un typedef o un tipo interno"
+
+#~ msgid "ISO C++ forbids defining types within %s"
+#~ msgstr "ISO C++ prohíbe la definición de tipos dentro de %s"
+
+#~ msgid "Only emit explicit template instantiations"
+#~ msgstr "Emitir solamente instanciaciones explícitas de plantillas"
+
+#~ msgid "Recognize and/bitand/bitor/compl/not/or/xor"
+#~ msgstr "Reconocer and/bitand/bitor/compl/not/or/xor"
+
+#~ msgid "Warn about inconsistent return types"
+#~ msgstr "Avisar sobre tipos inconsistentes de devolución"
+
+#~ msgid "Warn when a function is declared extern, then inline"
+#~ msgstr "Avisar cuando una función es declarada extern y luego inline"
+
+#~ msgid "Don't announce deprecation of compiler features"
+#~ msgstr "No anunciar características obsoletas del compilador"
+
+#~ msgid "directory name must immediately follow -I"
+#~ msgstr "el nombre del directorio debe seguir inmediatamente a -I"
+
+#~ msgid "ignoring pragma: %s"
+#~ msgstr "ignorando el pragma: %s"
+
+#~ msgid "Program does not use Unix-f77 dialectal features"
+#~ msgstr "El programa no utiliza las características del dialecto Unix-f77"
+
+#~ msgid "Disable the appending of underscores to externals"
+#~ msgstr "Desactiva la agregación de subrayados a los externos"
+
+#~ msgid "Fortran-specific form of -fbounds-check"
+#~ msgstr "Forma específica de Fortran de -fbounds-check"
+
+#~ msgid "Add a directory for INCLUDE searching"
+#~ msgstr "Agregar un directorio para la búsqueda de INCLUDE"
+
+#~ msgid "Set the maximum line length"
+#~ msgstr "Establecer la longitud máxima de línea"
+
+#~ msgid "exception handler inside code that is being protected"
+#~ msgstr "manejador de excepciones dentro del código que se está protegiendo"
+
+#~ msgid "Disable automatic array bounds checking"
+#~ msgstr "Desactivar la revisión automática de límites de matrices"
+
+#~ msgid "Set class path"
+#~ msgstr "Establecer la ruta de clases"
+
+#~ msgid "Choose class whose main method should be used"
+#~ msgstr "Escoger la clase cuyo método main debería ser usado"
+
+#~ msgid "Add directory to class path"
+#~ msgstr "Agregar el directorio a la ruta de clases"
+
+#~ msgid "Directory where class files should be written"
+#~ msgstr "Directorio donde se escribirán los ficheros de clase"
+
+#~ msgid "`%s' cannot be statically allocated"
+#~ msgstr "`%s' no se puede ubicar estáticamente"
+
+#~ msgid "multiple declarations for method `%s'"
+#~ msgstr "declaraciones múltiples para el método `%s'"
+
+#~ msgid "cannot find class (factory) method"
+#~ msgstr "no se puede encontrar el método de la clase (de fábrica)"
+
+#~ msgid "return type for `%s' defaults to id"
+#~ msgstr "el tipo de devolución para `%s' por defecto es id"
+
+#~ msgid "return type defaults to id"
+#~ msgstr "el tipo de devolución por defecto es id"
+
+#~ msgid "cannot find method"
+#~ msgstr "no se puede encontrar el método"
+
+#~ msgid "duplicate definition of class method `%s'"
+#~ msgstr "definición duplicada del método de la clase `%s'"
+
+#~ msgid "duplicate definition of instance method `%s'"
+#~ msgstr "definición duplicada del método de la instancia `%s'"
+
+#~ msgid "duplicate declaration of instance method `%s'"
+#~ msgstr "declaración duplicada del método de la instancia `%s'"
+
+#~ msgid "potential selector conflict for method `%s'"
+#~ msgstr "conflicto potencial de selectores para el método `%s'"
+
+#~ msgid "Specify the name of the class for constant strings"
+#~ msgstr "Especificar el nombre de la clase para cadenas constantes"
+
+#~ msgid "(debug) trace parsing process"
+#~ msgstr "(depuracion) proceso de decodificación de rastreo"
+
+#~ msgid "(debug) trace lexical analysis"
+#~ msgstr "(depuración) análisis léxico de rastreo"
+
+#~ msgid "compilation of header file requested"
+#~ msgstr "se solicitó la compilación de fichero de encabezado"
+
+#~ msgid "choose either big or little endian, not both"
+#~ msgstr "escoja entre big o little endian, no ambos"
+
+#~ msgid "choose either m340 or m210 not both"
+#~ msgstr "escoja entre m340 o m210, no ambos"
+
+#~ msgid "-c or -S required for Ada"
+#~ msgstr "se requiere -c o -S para Ada"
+
#~ msgid "-static not valid with -mcoff"
#~ msgstr "-static no es válido con -mcoff"
@@ -21024,9 +23461,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "sizeof applied to a void type"
#~ msgstr "sizeof aplicado a un tipo de dato void"
-#~ msgid "sizeof applied to an incomplete type"
-#~ msgstr "sizeof aplicado a un tipo de dato incompleto"
-
#~ msgid "variable offset is passed partially in stack and in reg"
#~ msgstr "se pasa parcialmente el desplazamiento de la variable a la pila y al registro"
@@ -21123,12 +23557,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "the meaning of '\\x' varies with -traditional"
#~ msgstr "el significado de '\\x' varía con -traditional"
-#~ msgid "escape sequence out of range for character"
-#~ msgstr "secuencia de escape fuera de rango para el carácter"
-
-#~ msgid "\"%s\" cannot be used as a macro name"
-#~ msgstr "no se puede usar \"%s\" como un nombre de macro"
-
#~ msgid "directives may not be used inside a macro argument"
#~ msgstr "no se pueden usar las directivas dentro de un argumento de macro"
@@ -21138,15 +23566,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "%s:%d: warning: "
#~ msgstr "%s:%d: aviso: "
-#~ msgid "%s: warning: "
-#~ msgstr "%s: aviso: "
-
-#~ msgid "sorry, not implemented: "
-#~ msgstr "lo sentimos, sin implementar: "
-
-#~ msgid "Internal compiler error in %s, at %s:%d"
-#~ msgstr "Error interno del compilador %s, en %s:%d"
-
#~ msgid "Copyright (C) 2002 Free Software Foundation, Inc.\n"
#~ msgstr "Copyright (C) 2002 Free Software Foundation, Inc.\n"
@@ -21219,9 +23638,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "conversion from NaN to int"
#~ msgstr "conversión de NaN a int"
-#~ msgid "conversion from NaN to unsigned int"
-#~ msgstr "conversión de NaNa a unsigned int"
-
#~ msgid "floating point overflow"
#~ msgstr "desbordamiento de coma flotante"
@@ -21237,9 +23653,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "%s: function singularity"
#~ msgstr "%s: singularidad de la función"
-#~ msgid "%s: overflow range error"
-#~ msgstr "%s: desbordamiento del error de rango"
-
#~ msgid "%s: underflow range error"
#~ msgstr "%s: desbordamiento por debajo del error de rango"
@@ -21297,9 +23710,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "octal character constant does not fit in a byte"
#~ msgstr "la constante de carácter octal no cabe en un byte"
-#~ msgid "hex character constant does not fit in a byte"
-#~ msgstr "la constante de carácter hexadecimal no cabe en un byte"
-
#~ msgid "empty #if expression"
#~ msgstr "expresión #if vacía"
@@ -21453,9 +23863,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "Use VAX-C alignment"
#~ msgstr "Usar alineación VAX-C"
-#~ msgid "invalid %%V value"
-#~ msgstr "valor %%V inválido"
-
#~ msgid "Generate code assuming DW bit is set"
#~ msgstr "Generar código asumiendo que el bit DW está activado"
@@ -21618,12 +24025,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "Use mcount_ptr for profiling"
#~ msgstr "Usar mcount_ptr para análisis de perfil"
-#~ msgid "Generate code which uses the FPU"
-#~ msgstr "Generar código que use el FPU"
-
-#~ msgid "Do not generate code which uses the FPU"
-#~ msgstr "No generar código que use el FPU"
-
#~ msgid "the -mlong-double-64 option does not work yet"
#~ msgstr "el soporte para -mlong-double-64 aún no funciona"
@@ -21639,9 +24040,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "this target does not support the -mabi switch"
#~ msgstr "este objetivo no tiene soporte para el interruptor -mabi"
-#~ msgid "bad value (%s) for -mtune= switch"
-#~ msgstr "valor erróneo (%s) para el interruptor -mtune="
-
#~ msgid "-mips%d does not support 64 bit fp registers"
#~ msgstr "-mips%d not tiene soporte para registros fp de 64 bit"
@@ -21720,9 +24118,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "`%D' as declarator"
#~ msgstr "`%D' como declarador"
-#~ msgid "size of member `%D' is not constant"
-#~ msgstr "el tamaño del miembro `%D' no es constante"
-
#~ msgid "cannot declare %s to references"
#~ msgstr "no se puede declarar %s a referencias"
@@ -21735,9 +24130,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "-fname-mangling-version is no longer supported"
#~ msgstr "-fname-mangling-version ya no tiene soporte"
-#~ msgid "candidate%s: %+#D"
-#~ msgstr "candidato%s: %+#D"
-
#~ msgid " %#D"
#~ msgstr " %#D"
@@ -21819,9 +24211,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "invalid call to member function needing `this' in static member function scope"
#~ msgstr "llamada inválida a función miembro requiere `this' en el alcance de la función miembro static"
-#~ msgid "unary `&'"
-#~ msgstr "`&' unario"
-
#~ msgid "invalid use of undefined type `%#T'"
#~ msgstr "uso inválido del tipo indefinido `%#T'"
@@ -21834,9 +24223,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "invalid use of member (did you forget the `&' ?)"
#~ msgstr "uso inválido del miembro (¿olvidó el `&'?)"
-#~ msgid "invalid use of template type parameter"
-#~ msgstr "uso inválido del parámetro de tipo plantilla"
-
#~ msgid "address of overloaded function with no contextual type information"
#~ msgstr "dirección de la función sobrecargada sin información contextual de tipo"
@@ -22317,9 +24703,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "duplicate grant for `%s'"
#~ msgstr "concesión duplicada para `%s'"
-#~ msgid "previous grant for `%s'"
-#~ msgstr "concesión previa para `%s'"
-
#~ msgid "duplicate definition `%s'"
#~ msgstr "definición duplicada `%s'"
@@ -22413,9 +24796,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "parameter 1 must be referable"
#~ msgstr "el parámetro 1 debe ser referenciable"
-#~ msgid "mode mismatch in parameter 1"
-#~ msgstr "no coincide el modo en el parámetro 1"
-
#~ msgid "parameter 2 must be a positive integer"
#~ msgstr "el parámetro 2 debe ser un entero positivo"
@@ -22602,9 +24982,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "-> operator not allow in constant expression"
#~ msgstr "no se permite el operador -> en la expresión constante"
-#~ msgid "taking the address of a string literal is non-standard"
-#~ msgstr "tomar la dirección de una literal de cadena no es estándard"
-
#~ msgid "taking the address of a function is non-standard"
#~ msgstr "tomar la dirección de una función no es estándard"
@@ -22665,9 +25042,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "decode_constant_selective: cannot decode this mode"
#~ msgstr "decode_constant_selective: no se puede decodificar este modo"
-#~ msgid "can't write to %s"
-#~ msgstr "no se puede escribir a %s"
-
#~ msgid "FORBID is not yet implemented"
#~ msgstr "FORBID no se ha implementado aún"
@@ -22827,9 +25201,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "no padding character (offset %d)"
#~ msgstr "no hay un carácter de relleno (desplazamiento %d)"
-#~ msgid "too many arguments for this format string"
-#~ msgstr "demasiados argumentos para esta cadena de formato"
-
#~ msgid "missing index expression"
#~ msgstr "falta la expresión de índice"
@@ -23002,9 +25373,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "'%s!' is not followed by an identifier"
#~ msgstr "'%s!' no es seguido por un identificador"
-#~ msgid "expected a name here"
-#~ msgstr "se esperaba un nombre aquí"
-
#~ msgid "expected a name string here"
#~ msgstr "se esperaba una cadena de nombre aquí"
@@ -23050,9 +25418,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "expected another rename clause"
#~ msgstr "se esperaba otra cláusula de renombrado"
-#~ msgid "syntax error in parameter name list"
-#~ msgstr "error de sintaxis en la lista nombres de parámetros"
-
#~ msgid "NONREF specific without LOC in result attribute"
#~ msgstr "NONREF específico sin LOC en el atributo de resultado"
@@ -23113,9 +25478,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "missing parenthesis for procedure call"
#~ msgstr "faltan paréntesis para la llamada del procedimiento"
-#~ msgid "expression is not an action"
-#~ msgstr "la expresión no es una acción"
-
#~ msgid "syntax error in action"
#~ msgstr "error sintáctico en la acción"
@@ -23176,9 +25538,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "VARYING bit-strings not implemented"
#~ msgstr "no se han implementado las cadenas de bit VARYING"
-#~ msgid "strings must be composed of chars"
-#~ msgstr "las cadenas deben estar compuestas de caracteres"
-
#~ msgid "BUFFER modes may not be readonly"
#~ msgstr "los modos BUFFER no pueden ser de sólo lectura"
@@ -23452,9 +25811,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "index is not an integer expression"
#~ msgstr "el índice no es una expresión entera"
-#~ msgid "index not compatible with index mode"
-#~ msgstr "el índice no es compatible con el modo de índice"
-
#~ msgid "index is not discrete"
#~ msgstr "el índice no es discreto"
@@ -23524,9 +25880,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "location conversion between differently-sized modes"
#~ msgstr "conversión de ubicaciones entre modos de tamaños diferentes"
-#~ msgid "operand to bin must be a non-negative integer literal"
-#~ msgstr "el operando para bin debe ser una literal entera no negativa"
-
#~ msgid "size %d of BIN too big - no such integer mode"
#~ msgstr "el tamaño %d de BIN es demasiado grande - no existe tal modo entero"
@@ -23623,9 +25976,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "starting bit in POS must be < the width of a word"
#~ msgstr "el bit de inicio en POS debe ser < la anchura de una palabra"
-#~ msgid "length in POS must be an integer constant"
-#~ msgstr "la longitud en POS debe ser una constante entera"
-
#~ msgid "length in POS must be > 0"
#~ msgstr "la longitud en POS debe ser > 0"
@@ -23671,9 +26021,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "abstract virtual `%#D' called from destructor"
#~ msgstr "virtual abstracto `%#D' llamado desde un destructor"
-#~ msgid " perhaps you want `typename %T::%D' to make it a type"
-#~ msgstr " tal vez quiere `typename %T::%D' para hacerlo un tipo"
-
#~ msgid "discarding `const' applied to a reference"
#~ msgstr "descartando `const' aplicado a una referencia"
@@ -23695,9 +26042,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "ISO C++ forbids using a pointer-to-function in pointer arithmetic"
#~ msgstr "ISO C++ prohíbe el uso de un apuntador a función en la aritmética de apuntadores"
-#~ msgid "ISO C++ forbids using a pointer to member function in pointer arithmetic"
-#~ msgstr "ISO C++ prohíbe el uso de un apuntador a una función miembro en la aritmética de apuntadores"
-
#~ msgid "ISO C++ forbids using pointer to a member in pointer arithmetic"
#~ msgstr "ISO C++ prohíbe el uso de un apuntador a un miembro en la aritmética de apuntadores"
@@ -24344,6 +26688,9 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "no file-scope type named `%D'"
#~ msgstr "no hay un tipo de ámbito de fichero llamado `%D'"
+#~ msgid "%T is not a class type"
+#~ msgstr "%T no es un tipo de clase"
+
#~ msgid "base clause without member specification for `%#T'"
#~ msgstr "cláusula base sin una especificación de miembro para `%#T'"
@@ -24365,9 +26712,6 @@ msgstr "-msingle-float y -msoft-float no se pueden especificar al mismo tiempo"
#~ msgid "type with more precision than %s"
#~ msgstr "tipo con más precisión que %s"
-#~ msgid "declaration of `%s' shadows previous local"
-#~ msgstr "la declaración de `%s' obscurece a una declaración local previa"
-
#~ msgid "ANSI C forbids const or volatile function types"
#~ msgstr "ANSI C prohíbe los tipos de función const o volatile"
diff --git a/gcc/po/fr.po b/gcc/po/fr.po
index fdaa5e68374..a63b8717e29 100644
--- a/gcc/po/fr.po
+++ b/gcc/po/fr.po
@@ -25,9 +25,12 @@
# thread
#
# J'ai des doutes pour :
-# inline = en-ligne (pas systématiquement)
-# section attribute attribut de section
-# wide char caractère long
+# inline = enligne (pas systématiquement)
+# oui dans le contexte du langage C par exemple MR
+# non autrement ...de manière générale MR
+# section attribute attribut de section OK MR
+# wide char caractère long ...non mieux caractère large MR
+# plus conforme à l'esprit.
#
# ------
# literals littéral, ou mot composé ?
@@ -63,7 +66,7 @@
# poisoning empoisonnement
# msgid "poisoning existing macro \"%s\""
# msgstr "empoisonnement de la macro existente « %s »"
-#
+# MR 9-jan 2004: poisoning etc... transformé par corruption corrompu etc..
#
# Autres règles:
# - j'ai ajouté un adjectif par rapport à l'anglais si le message est
@@ -74,8 +77,9 @@
# librairies, assumer
#
# A faire:
-# - s/en ligne/en-ligne/
-# - hors gamme
+# - s/en ligne/en-ligne/ modifié 9-janv-2004 MR
+# - s/en-ligne/enligne/ modifié 18-février-2004 MR pcq expression ou terme enlignage vs inlining
+# - hors gamme a été changé pour hors limite ...MR 09-jan-2004
# - literal
# - chaine de format => formatage
# - scope
@@ -111,1057 +115,1081 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: GNU gcc 3.3-b20021230\n"
-"POT-Creation-Date: 2003-10-24 13:20+0200\n"
-"PO-Revision-Date: 2003-03-05 23:20+0100\n"
+"Project-Id-Version: GNU gcc 3.4-b20040206\n"
+"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
+"POT-Creation-Date: 2004-02-06 01:40+0000\n"
+"PO-Revision-Date: 2004-02-20 21:00-0500\n"
"Last-Translator: Michel Robitaille <robitail@IRO.UMontreal.CA>\n"
"Language-Team: French <traduc@traduc.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8-bit\n"
-#: attribs.c:185
+#: attribs.c:178
#, c-format
msgid "`%s' attribute directive ignored"
msgstr "attribut de directive « %s » ignoré"
-#: attribs.c:193
+#: attribs.c:186
#, c-format
msgid "wrong number of arguments specified for `%s' attribute"
msgstr "nombre erroné d'arguments spécifié pour l'attribut « %s »"
-#: attribs.c:210
+#: attribs.c:203
#, c-format
msgid "`%s' attribute does not apply to types"
msgstr "l'attribut « %s » ne s'applique pas aux types"
-#: attribs.c:247
+#: attribs.c:249
#, c-format
msgid "`%s' attribute only applies to function types"
msgstr "l'attribut « %s » ne s'applique qu'à des types de fonction"
-#: attribs.c:404 c-common.c:5275 c-common.c:5297 c-common.c:5319
-#: c-common.c:5350 c-common.c:5372 c-common.c:5397 c-common.c:5423
-#: c-common.c:5453 c-common.c:5491 c-common.c:5538 c-common.c:5568
-#: c-common.c:5598 c-common.c:5621 c-common.c:5878 c-common.c:5900
-#: c-common.c:5943 c-common.c:6020 c-common.c:6076 c-common.c:6103
-#: c-common.c:6186 c-common.c:6220 c-common.c:6574 config/arm/arm.c:2101
-#: config/arm/arm.c:2128 config/avr/avr.c:4774 config/h8300/h8300.c:3693
-#: config/h8300/h8300.c:3718 config/i386/i386.c:1403 config/i386/winnt.c:78
-#: config/ip2k/ip2k.c:3204
+#: attribs.c:416 c-common.c:4344 c-common.c:4363 c-common.c:4381
+#: c-common.c:4408 c-common.c:4427 c-common.c:4450 c-common.c:4473
+#: c-common.c:4499 c-common.c:4533 c-common.c:4577 c-common.c:4605
+#: c-common.c:4633 c-common.c:4652 c-common.c:4907 c-common.c:4929
+#: c-common.c:4964 c-common.c:5031 c-common.c:5077 c-common.c:5135
+#: c-common.c:5166 c-common.c:5512 c-common.c:5535 c-common.c:5574
+#: config/arm/arm.c:2278 config/arm/arm.c:2305 config/avr/avr.c:4539
+#: config/h8300/h8300.c:4281 config/h8300/h8300.c:4304 config/i386/i386.c:1599
+#: config/i386/i386.c:15299 config/i386/winnt.c:86 config/ia64/ia64.c:1053
+#: config/ip2k/ip2k.c:3151
#, c-format
msgid "`%s' attribute ignored"
msgstr "attribut « %s » ignoré"
-#: builtins.c:285
+#: builtins.c:318
msgid "offset outside bounds of constant string"
msgstr "décalage hors des limites d'une chaîne de constante"
-#: builtins.c:765
+#: builtins.c:786
msgid "second arg to `__builtin_prefetch' must be a constant"
msgstr "second argument de « __builtin_prefetch » doit être une constante"
-#: builtins.c:772
+#: builtins.c:793
msgid "invalid second arg to __builtin_prefetch; using zero"
msgstr "second argument invalide de « __builtin_prefetch »; utilisation de zéro"
-#: builtins.c:779
+#: builtins.c:800
msgid "third arg to `__builtin_prefetch' must be a constant"
msgstr "troisième argument de « __builtin_prefetch » doit être une constante"
-#: builtins.c:786
+#: builtins.c:807
msgid "invalid third arg to __builtin_prefetch; using zero"
msgstr "troisième argument invalide de « __builtin_prefetch »; utilisation de zéro"
-#. ??? We used to try and build up a call to the out of line function,
-#. guessing about what registers needed saving etc. This became much
-#. harder with __builtin_va_start, since we don't have a tree for a
-#. call to __builtin_saveregs to fall back on. There was exactly one
-#. port (i860) that used this code, and I'm unconvinced it could actually
-#. handle the general case. So we no longer try to handle anything
-#. weird and make the backend absorb the evil.
-#: builtins.c:2875
-msgid "__builtin_saveregs not supported by this target"
-msgstr "« __builtin_saveregs » n'est pas supporté par cette cible"
-
-#: builtins.c:2917
+#: builtins.c:3828
msgid "argument of `__builtin_args_info' must be constant"
msgstr "argument de « __builtin_args_info » doit être une constante"
-#: builtins.c:2923
+#: builtins.c:3834
msgid "argument of `__builtin_args_info' out of range"
msgstr "argument de « __builtin_args_info » hors des limites"
-#: builtins.c:2929
+#: builtins.c:3840
msgid "missing argument in `__builtin_args_info'"
msgstr "argument manquant dans « __builtin_args_info »"
-#: builtins.c:2960
+#: builtins.c:3856
msgid "`va_start' used in function with fixed args"
msgstr "« va_start » utilisé dans une fonction ayant des arguments fixes"
-#: builtins.c:2979
+#: builtins.c:3875
msgid "second parameter of `va_start' not last named argument"
msgstr "second paramètre de « va_start » n'est pas le dernier argument nommé"
#. Evidently an out of date version of <stdarg.h>; can't validate
#. va_start's second argument, but can still work as intended.
-#: builtins.c:2984
+#: builtins.c:3880
msgid "`__builtin_next_arg' called without an argument"
msgstr "« __builtin_next_arg » appelé sans argument"
-#: builtins.c:3070
+#: builtins.c:3969
msgid "too many arguments to function `va_start'"
msgstr "trop d'arguments pour la function « va_start »"
-#: builtins.c:3172
+#: builtins.c:4091
msgid "first argument to `va_arg' not of type `va_list'"
msgstr "premier argument de « va_arg » n'est pas de type « va_list »"
#. Unfortunately, this is merely undefined, rather than a constraint
#. violation, so we cannot make this an error. If this call is never
#. executed, the program is still strictly conforming.
-#: builtins.c:3204
+#: builtins.c:4123
#, c-format
msgid "`%s' is promoted to `%s' when passed through `...'"
msgstr "« %s » a été promu à « %s » lors du passage à travers « ... »"
-#: builtins.c:3209
+#: builtins.c:4128
#, c-format
msgid "(so you should pass `%s' not `%s' to `va_arg')"
msgstr "(vous devriez donc passer « %s » et non « %s » à « va_arg »)"
-#: builtins.c:3340
+#: builtins.c:4240
msgid "invalid arg to `__builtin_frame_address'"
msgstr "argument de « __builtin_frame_address » invalide"
-#: builtins.c:3342
+#: builtins.c:4242
msgid "invalid arg to `__builtin_return_address'"
msgstr "argument de « __builtin_return_address » invalide"
-#: builtins.c:3356
+#: builtins.c:4256
msgid "unsupported arg to `__builtin_frame_address'"
msgstr "argument de « __builtin_frame_address » non supporté"
-#: builtins.c:3358
+#: builtins.c:4258
msgid "unsupported arg to `__builtin_return_address'"
msgstr "argument de « __builtin_return_address » non supporté"
-#: builtins.c:3530
+#: builtins.c:4418
msgid "second arg to `__builtin_expect' must be a constant"
msgstr "le second argument de « __builtin_expect » doit être une constante"
-#: builtins.c:4028
+#: builtins.c:5359
msgid "__builtin_longjmp second argument must be 1"
msgstr "le second argument de « __builtin_longjmp » doit être 1"
-#. just do library call, if unknown builtin
-#: builtins.c:4092 c-common.c:4459
+#: builtins.c:5454
#, c-format
msgid "built-in function `%s' not currently supported"
msgstr "fonction interne « %s » n'est pas actuellement supportée"
-#: builtins.c:4165
+#: builtins.c:5594
msgid "target format does not support infinity"
msgstr "le format cible ne supporte pas l'infini"
-#: c-common.c:1168
-#, c-format
-msgid "`%s' is not defined outside of function scope"
-msgstr "« %s » n'est pas défini à l'extérieur de la portée de la fonction"
+#: c-common.c:934
+msgid "%Hsuggest explicit braces to avoid ambiguous `else'"
+msgstr "%Hon vous suggère des accolades explicitement pour éviter des « else » ambiguës"
+
+#: c-common.c:1158
+msgid "%J'%D' is not defined outside of function scope"
+msgstr "%J« %D » n'est pas défini à l'extérieur de la portée de la fonction"
-#: c-common.c:1189
+#: c-common.c:1178
#, c-format
msgid "string length `%d' is greater than the length `%d' ISO C%d compilers are required to support"
-msgstr "longueur de la chaîne « %d » plus grande que la longueur « %d » que les compilateurs C%d ISO doivent supporter"
-
-#: c-common.c:1247
-msgid "concatenation of string literals with __FUNCTION__ is deprecated"
-msgstr "la concaténation de chaînes de litéraux avec « __FUNCTION__ » est obsolète"
+msgstr "longueur de la chaîne « %d » plus grande que la longueur « %d » que les compilateurs ISO C%d doivent supporter"
-#: c-common.c:1343
+#: c-common.c:1218
msgid "overflow in constant expression"
msgstr "débordement dans l'expression de la constante"
-#: c-common.c:1364
+#: c-common.c:1238
msgid "integer overflow in expression"
msgstr "débordement d'entier dans l'expression"
-#: c-common.c:1373
+#: c-common.c:1247
msgid "floating point overflow in expression"
msgstr "débordement d'un nombre en virgule flottante dans l'expression"
-#: c-common.c:1379
+#: c-common.c:1253
msgid "vector overflow in expression"
msgstr "débordement du vecteur dans l'expression"
#. This detects cases like converting -129 or 256 to unsigned char.
-#: c-common.c:1402
+#: c-common.c:1275
msgid "large integer implicitly truncated to unsigned type"
msgstr "grand entier implicitement tronqué pour un type non signé"
-#: c-common.c:1404
+#: c-common.c:1277
msgid "negative integer implicitly converted to unsigned type"
msgstr "entier négatif implicitement converti en un type non signé"
-#: c-common.c:1452
+#: c-common.c:1323
msgid "overflow in implicit constant conversion"
msgstr "débordement dans la conversion implicte de la constante"
-#: c-common.c:1600
+#: c-common.c:1459
#, c-format
msgid "operation on `%s' may be undefined"
msgstr "l'opération portant sur « %s » est peut être indéfinie"
-#: c-common.c:1891
+#: c-common.c:1743
msgid "expression statement has incomplete type"
msgstr "la déclaration de l'expression a un type incomplet"
-#: c-common.c:1924
+#: c-common.c:1775
msgid "case label does not reduce to an integer constant"
msgstr "l'étiquette du « case » ne se réduit pas en une constante entière"
-#: c-common.c:2228
+#: c-common.c:2105
msgid "invalid truth-value expression"
msgstr "expression valeur de vérité invalide"
-#: c-common.c:2279
+#: c-common.c:2156
#, c-format
msgid "invalid operands to binary %s"
msgstr "opérandes invalides pour le binaire %s"
-#: c-common.c:2513
+#: c-common.c:2390
msgid "comparison is always false due to limited range of data type"
msgstr "comparaison est toujours fausse en raison d'une gamme limitée de type de données"
-#: c-common.c:2515
+#: c-common.c:2392
msgid "comparison is always true due to limited range of data type"
msgstr "comparaison est toujours vraie en raison d'une gamme limitée de type de données"
-#: c-common.c:2585
+#: c-common.c:2462
msgid "comparison of unsigned expression >= 0 is always true"
msgstr "comparaison d'une expression non signée >=0 est toujours vraie"
-#: c-common.c:2594
+#: c-common.c:2471
msgid "comparison of unsigned expression < 0 is always false"
msgstr "comparaison d'une expression non signée < 0 est toujours fausse"
-#: c-common.c:2641
+#: c-common.c:2516
msgid "pointer of type `void *' used in arithmetic"
msgstr "usage en arithmétique d'un pointeur de type « void * »"
-#: c-common.c:2647
+#: c-common.c:2522
msgid "pointer to a function used in arithmetic"
msgstr "usage en arithmétique d'un pointeur vers une fonction"
-#: c-common.c:2653
+#: c-common.c:2528
msgid "pointer to member function used in arithmetic"
msgstr "usage en arithmétique d'un pointeur vers une fonction membre"
-#: c-common.c:2659
+#: c-common.c:2534
msgid "pointer to a member used in arithmetic"
msgstr "usage en arithmétique d'un pointeur vers un membre"
-#: c-common.c:2746 f/com.c:14762
+#: c-common.c:2623 f/com.c:14734
msgid "struct type value used where scalar is required"
msgstr "valeur de type « struct » utilisé là où un scalaire est attendu"
-#: c-common.c:2750 f/com.c:14766
+#: c-common.c:2627 f/com.c:14738
msgid "union type value used where scalar is required"
msgstr "valeur de type « union » utilisé là où un scalaire est attendu"
-#: c-common.c:2754 f/com.c:14770
+#: c-common.c:2631 f/com.c:14742
msgid "array type value used where scalar is required"
msgstr "valeur de type « array » utilisé là où un scalaire est attendu"
-#: c-common.c:2874 f/com.c:14903
+#. Common Ada/Pascal programmer's mistake. We always warn
+#. about this since it is so bad.
+#: c-common.c:2668
+msgid "the address of `%D', will always evaluate as `true'"
+msgstr "l'adresse de « %D » sera toujours évaluée comme étant « true »"
+
+#: c-common.c:2762 f/com.c:14874
msgid "suggest parentheses around assignment used as truth value"
msgstr "parenthèses suggérées autour de l'affectation utilisée comme valeur de vérité"
-#: c-common.c:2918 c-common.c:2950
+#: c-common.c:2808 c-common.c:2848
msgid "invalid use of `restrict'"
msgstr "usage de « restrict » invalide"
-#: c-common.c:3064
+#: c-common.c:2958
msgid "invalid application of `sizeof' to a function type"
msgstr "application de « sizeof » sur un type de fonction invalide"
-#: c-common.c:3074
+#: c-common.c:2968
#, c-format
msgid "invalid application of `%s' to a void type"
msgstr "application invalide de « %s » sur un type void"
-#: c-common.c:3080
+#: c-common.c:2974
#, c-format
msgid "invalid application of `%s' to an incomplete type"
msgstr "application invalide de « %s » sur un type incomplet"
-#: c-common.c:3121
+#: c-common.c:3014
msgid "`__alignof' applied to a bit-field"
msgstr "« __alignof » appliqué sur un champ de bits"
-#: c-common.c:3618
+#: c-common.c:3506
#, c-format
msgid "cannot disable built-in function `%s'"
msgstr "ne peut désactiver la fonction interne « %s »"
-#: c-common.c:3787 c-typeck.c:1748
+#: c-common.c:3667 c-typeck.c:1941
#, c-format
msgid "too few arguments to function `%s'"
msgstr "pas assez d'arguments pour la fonction « %s »"
-#: c-common.c:3793 c-typeck.c:1601
+#: c-common.c:3673 c-typeck.c:1802
#, c-format
msgid "too many arguments to function `%s'"
msgstr "trop d'arguments pour la fonction « %s »"
-#: c-common.c:3812
+#: c-common.c:3692
#, c-format
msgid "non-floating-point argument to function `%s'"
msgstr "argument pour la fonction « %s » n'étant pas en virgule flottante"
-#: c-common.c:4081
+#: c-common.c:3919
msgid "pointers are not permitted as case values"
msgstr "les pointeurs ne sont pas permis comme valeurs de « case »"
-#: c-common.c:4087
-msgid "ISO C++ forbids range expressions in switch statements"
-msgstr "le C++ ISO interdit les intervalles dans les déclarations de « switch »"
-
-#: c-common.c:4089
-msgid "ISO C forbids range expressions in switch statements"
-msgstr "le C ISO interdit les intervalles dans les « switch »"
+#: c-common.c:3923
+msgid "range expressions in switch statements are non-standard"
+msgstr "l'étendue des expressions dans les déclarations switch ne sont pas standard"
-#: c-common.c:4119
+#: c-common.c:3952
msgid "empty range specified"
msgstr "intervalle vide spécifié"
-#: c-common.c:4170
+#: c-common.c:4003
msgid "duplicate (or overlapping) case value"
msgstr "valeur du « case » duppliquée (ou en chevauchant une autre)"
-#: c-common.c:4172
-msgid "this is the first entry overlapping that value"
-msgstr "ceci est la première entrée chevauchant cette valeur"
+#: c-common.c:4004
+msgid "%Jthis is the first entry overlapping that value"
+msgstr "%Jest la première entrée chevauchant cette valeur"
-#: c-common.c:4176
+#: c-common.c:4008
msgid "duplicate case value"
msgstr "valeur du « case » duppliquée"
-#: c-common.c:4177
-msgid "previously used here"
-msgstr "précédemment utilisé ici"
+#: c-common.c:4009
+msgid "%Jpreviously used here"
+msgstr "%Jprécédemment utilisé ici"
-#: c-common.c:4181
+#: c-common.c:4013
msgid "multiple default labels in one switch"
msgstr "plusieurs étiquettes par défaut dans un « switch »"
-#: c-common.c:4182
-msgid "this is the first default label"
-msgstr "ceci est la première étiquette de défaut"
+#: c-common.c:4014
+msgid "%Jthis is the first default label"
+msgstr "%Jest la première étiquette par défaut"
+
+#: c-common.c:4039
+msgid "taking the address of a label is non-standard"
+msgstr "prendre l'adresse d'une étiquette n'est pas standard"
+
+#: c-common.c:4085
+msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr "%Hvaleur à retourner « %D » ignorée, déclarée avec l'attribut warn_unused_result"
-#: c-common.c:4210
-msgid "ISO C++ forbids taking the address of a label"
-msgstr "le C++ ISO interdit de prendre l'adresse d'une étiquette"
+#: c-common.c:4090
+msgid "%Hignoring return value of function declared with attribute warn_unused_result"
+msgstr "%Hvaleur à retourner ignorée de la fonction déclarée avec l'attribut warn_unused_result"
-#: c-common.c:4212
-msgid "ISO C forbids taking the address of a label"
-msgstr "le C ISO interdit de prendre l'adresse d'une étiquette"
+#. SW_PARAM
+#: c-common.c:4297
+#, c-format
+msgid "declaration of \"%s\" shadows a parameter"
+msgstr "la déclaration de « %s » masque un paramètre"
-#: c-common.c:5235
+#. SW_LOCAL
+#: c-common.c:4298
#, c-format
-msgid "declaration of `%s' shadows %s"
-msgstr "la déclaration de « %s » masque %s"
+msgid "declaration of \"%s\" shadows a previous local"
+msgstr "la déclaration de « %s » masque la déclaration d'un local précédent"
+
+#. SW_GLOBAL
+#: c-common.c:4299
+#, c-format
+msgid "declaration of \"%s\" shadows a global declaration"
+msgstr "la déclaration de « %s » masque une déclaration globale"
+
+#: c-common.c:4303
+msgid "%Jshadowed declaration is here"
+msgstr "%Jdéclaration est masquée ici"
-#: c-common.c:5654
+#: c-common.c:4686
#, c-format
msgid "unknown machine mode `%s'"
msgstr "mode machine « %s » inconnu"
-#: c-common.c:5657
+#: c-common.c:4689
#, c-format
msgid "no data type for mode `%s'"
msgstr "aucun type de données pour le mode « %s »"
-#: c-common.c:5666 c-common.c:6316
+#: c-common.c:4693
+#, c-format
+msgid "invalid pointer mode `%s'"
+msgstr "mode pointeur invalide « %s »"
+
+#: c-common.c:4700 c-common.c:5263
#, c-format
msgid "unable to emulate '%s'"
msgstr "impossible d'émuler « %s »"
-#: c-common.c:5702
-msgid "section attribute cannot be specified for local variables"
-msgstr "l'attribut de section ne peut être spécifié pour des variables locales"
+#: c-common.c:4744
+msgid "%Jsection attribute cannot be specified for local variables"
+msgstr "%Jl'attribut de section ne peut être spécifié pour des variables locales"
-#: c-common.c:5713
-#, c-format
-msgid "section of `%s' conflicts with previous declaration"
-msgstr "section de « %s » en conflit avec une déclaration précédente"
+#: c-common.c:4755
+msgid "%Jsection of '%D' conflicts with previous declaration"
+msgstr "%Jsection de « %D » en conflit avec une déclaration précédente"
-#: c-common.c:5722
-#, c-format
-msgid "section attribute not allowed for `%s'"
-msgstr "attribut de section n'est pas permis pour « %s »"
+#: c-common.c:4764
+msgid "%Jsection attribute not allowed for '%D'"
+msgstr "%Jattribut de section n'est pas permis pour « %D »"
-#: c-common.c:5729
-msgid "section attributes are not supported for this target"
-msgstr "attribut de section ne sont pas supportés pour la cible"
+#: c-common.c:4770
+msgid "%Jsection attributes are not supported for this target"
+msgstr "%Jattributs de section ne sont pas supportés pour la cible"
-#: c-common.c:5771
+#: c-common.c:4808
msgid "requested alignment is not a constant"
msgstr "l'alignement demandé n'est pas une constante"
-#: c-common.c:5776
+#: c-common.c:4813
msgid "requested alignment is not a power of 2"
msgstr "l'alignement demandé n'est pas une puissance de 2"
-#: c-common.c:5781
+#: c-common.c:4818
msgid "requested alignment is too large"
msgstr "l'alignement demandé est trop grand"
-#: c-common.c:5808
-#, c-format
-msgid "alignment may not be specified for `%s'"
-msgstr "l'alignement ne peut pas être spécifié pour « %s »"
+#: c-common.c:4844
+msgid "%Jalignment may not be specified for '%D'"
+msgstr "%Jl'alignement ne peut pas être spécifié pour « %D »"
-#: c-common.c:5853
-#, c-format
-msgid "`%s' defined both normally and as an alias"
-msgstr "« %s » défini à la fois normalement et en tant qu'alias"
+#: c-common.c:4882
+msgid "%J'%D' defined both normally and as an alias"
+msgstr "%J'%D défini à la fois normalement et en tant qu'alias"
-#: c-common.c:5863
+#: c-common.c:4892
msgid "alias arg not a string"
msgstr "l'argument d'alias n'est pas une chaîne"
-#: c-common.c:5910
+#: c-common.c:4935
msgid "visibility arg not a string"
msgstr "l'argument de visibilité n'est pas une chaîne"
-#: c-common.c:5919
+#: c-common.c:4948
msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\""
msgstr "l'argument de visibilité doit être l'un de « default » (par défaut), « hidden » (masqué), « protected » (protégé) ou « internal » (interne)"
-#: c-common.c:5953
+#: c-common.c:4974
msgid "tls_model arg not a string"
msgstr "l'argument de tls_model n'est pas une chaîne"
-#: c-common.c:5962
+#: c-common.c:4983
msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\""
msgstr "l'argument de tls_model doit être l'un de « local-exec », « initial-exec », « local-dynamic » or « global-dynamic »"
-#: c-common.c:5987 c-common.c:6043
-#, c-format
-msgid "`%s' attribute applies only to functions"
-msgstr "l'attribut « %s » ne s'applique seulement qu'à des fonctions"
+#: c-common.c:5005 c-common.c:5051
+msgid "%J'%E' attribute applies only to functions"
+msgstr "%J'%E l'attribut ne s'applique seulement qu'à des fonctions"
-#: c-common.c:5994 c-common.c:6050
-#, c-format
-msgid "can't set `%s' attribute after definition"
-msgstr "ne peut initialiser l'attribut « %s » après définition"
-
-#: c-common.c:6114
-#, fuzzy
-msgid "cleanup arg not an identifier"
-msgstr "tranche de la longueur n'est pas un entier"
+#: c-common.c:5010 c-common.c:5056
+msgid "%Jcan't set '%E' attribute after definition"
+msgstr "%Jne peut initialiser l'attribut « %E » après définition"
-#: c-common.c:6121
-#, fuzzy
-msgid "cleanup arg not a function"
-msgstr "l'objet appelé n'est pas une fonction"
-
-#: c-common.c:6183
+#: c-common.c:5132
#, c-format
msgid "`%s' attribute ignored for `%s'"
msgstr "attribut « %s » ignoré pour « %s »"
-#: c-common.c:6248
+#: c-common.c:5195
#, c-format
msgid "invalid vector type for attribute `%s'"
msgstr "type de vecteur invalide pour l'attribut « %s »"
-#: c-common.c:6272 c-common.c:6304
+#: c-common.c:5219 c-common.c:5251
msgid "no vector mode with the size and type specified could be found"
msgstr "aucun mode vecteur avec la taille et le type spécifié n'a été trouvé"
-#: c-common.c:6403
+#: c-common.c:5353
msgid "nonnull attribute without arguments on a non-prototype"
msgstr "attribut non nul sans argument sur un non-prototype"
-#: c-common.c:6418
+#: c-common.c:5368
#, c-format
msgid "nonnull argument has invalid operand number (arg %lu)"
msgstr "un argument non nul a un nombre d'opérande invalide (argument %lu)"
-#: c-common.c:6437
+#: c-common.c:5387
#, c-format
msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)"
msgstr "un argument non nul a un nombre d'opérande hors des bornes (arg %lu, opérande %lu)"
-#: c-common.c:6445
+#: c-common.c:5395
#, c-format
msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)"
msgstr "un argument non nul référence une opérande qui n'est pas un pointeur (arg %lu, opérande %lu)"
-#: c-common.c:6531
+#: c-common.c:5475
#, c-format
msgid "null argument where non-null required (arg %lu)"
msgstr "argument nul là où un non-nul est requis (arg %lu)"
-#: c-convert.c:80 c-typeck.c:988 c-typeck.c:4059 cp/typeck.c:1615
-#: cp/typeck.c:5939
-msgid "void value not ignored as it ought to be"
-msgstr "valeur void n'a pas été ignorée comme elle aurait dû l'être"
-
-#: c-convert.c:112 java/typeck.c:150
-msgid "conversion to non-scalar type requested"
-msgstr "conversion vers un type non scalaire demandée"
-
-#: c-decl.c:340
-#, c-format
-msgid "array `%s' assumed to have one element"
-msgstr "il est supposé que le tableau « %s » a un élément"
-
-#: c-decl.c:526
-#, c-format
-msgid "`struct %s' incomplete in scope ending here"
-msgstr "« struct %s » incomplète dans le champ terminant ici"
+#: c-common.c:5546
+msgid "cleanup arg not an identifier"
+msgstr "argument de nettoyage n'est pas un identificateur"
-#: c-decl.c:529
-#, c-format
-msgid "`union %s' incomplete in scope ending here"
-msgstr "« union %s » incomplète dans le champ terminant ici"
+#: c-common.c:5553
+msgid "cleanup arg not a function"
+msgstr "argument de nettoyage n'est pas une fonction"
-#: c-decl.c:532
+#: c-common.c:5914
#, c-format
-msgid "`enum %s' incomplete in scope ending here"
-msgstr "« enum %s » incomplète dans le champ terminant ici"
+msgid "%s at end of input"
+msgstr "%s à la fin de l'entrée"
-#: c-decl.c:646 c-decl.c:771 java/decl.c:1403
+#: c-common.c:5920
#, c-format
-msgid "label `%s' used but not defined"
-msgstr "étiquette « %s » utilisée mais non définie"
+msgid "%s before %s'%c'"
+msgstr "%s avant %s« %c »"
-#: c-decl.c:652 c-decl.c:778 java/decl.c:1409
+#: c-common.c:5922
#, c-format
-msgid "label `%s' defined but not used"
-msgstr "étiquette « %s » définie mais pas utilisée"
+msgid "%s before %s'\\x%x'"
+msgstr "%s avant %s'\\x%x'"
-#: c-decl.c:893 cp/decl.c:3335
+#: c-common.c:5926
#, c-format
-msgid "function `%s' redeclared as inline"
-msgstr "fonction « %s » redéclarée comme étant inline"
+msgid "%s before string constant"
+msgstr "%s avant une chaîne constante"
-#: c-decl.c:895 cp/decl.c:3337
+#: c-common.c:5928
#, c-format
-msgid "previous declaration of function `%s' with attribute noinline"
-msgstr "déclaration précédente de la fonction « %s » avec l'attribut noinline"
+msgid "%s before numeric constant"
+msgstr "%s avant une constante numérique"
-#: c-decl.c:902 cp/decl.c:3344
+#: c-common.c:5930
#, c-format
-msgid "function `%s' redeclared with attribute noinline"
-msgstr "fonction « %s » redéclarée avec l'attribut noinline"
+msgid "%s before \"%s\""
+msgstr "%s avant « %s »"
-#: c-decl.c:904 cp/decl.c:3346
+#: c-common.c:5932
#, c-format
-msgid "previous declaration of function `%s' was inline"
-msgstr "la déclaration précédente de la fonction « %s » était inline"
+msgid "%s before '%s' token"
+msgstr "%s avant un élément lexical « %s »"
-#: c-decl.c:933 c-decl.c:979
+#. Use `%s' to print the string in case there are any escape
+#. characters in the message.
+#: c-common.c:5934 c-typeck.c:2578 c-typeck.c:3970 c-typeck.c:3985
+#: c-typeck.c:4000 final.c:2776 final.c:2778 gcc.c:4574 rtl-error.c:109
+#: toplev.c:1340 config/cris/cris.c:545 cp/parser.c:1848 cp/typeck.c:4111
+#: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472
#, c-format
-msgid "shadowing built-in function `%s'"
-msgstr "masquage de la fonction interne « %s »"
+msgid "%s"
+msgstr "%s"
-#: c-decl.c:935
-#, c-format
-msgid "shadowing library function `%s'"
-msgstr "masquage de la fonction « %s » de la bibliothèque"
+#: c-convert.c:82 c-typeck.c:1193 c-typeck.c:3410 cp/typeck.c:1337
+#: cp/typeck.c:5648 treelang/tree-convert.c:79
+msgid "void value not ignored as it ought to be"
+msgstr "valeur void n'a pas été ignorée comme elle aurait dû l'être"
-#: c-decl.c:941
-#, c-format
-msgid "library function `%s' declared as non-function"
-msgstr "fonction « %s » de la bibliothèque déclarée comme n'étant pas une fonction"
+#: c-convert.c:114 java/typeck.c:148 treelang/tree-convert.c:105
+msgid "conversion to non-scalar type requested"
+msgstr "conversion vers un type non scalaire demandée"
-#: c-decl.c:945 c-decl.c:948
-#, c-format
-msgid "built-in function `%s' declared as non-function"
-msgstr "fonction interne « %s » n'est pas déclarée comme une fonction"
+#: c-decl.c:371
+msgid "%Jarray '%D' assumed to have one element"
+msgstr "%Jon assume que le tableau « %D » n'a qu'un seul élément"
-#: c-decl.c:952 objc/objc-act.c:2384 objc/objc-act.c:6154
-#, c-format
-msgid "`%s' redeclared as different kind of symbol"
-msgstr "« %s » redéclaré comme une autre sorte de symbole"
+#: c-decl.c:580
+msgid "%Jlabel `%D' used but not defined"
+msgstr "%Jétiquette « %D » utilisée mais non définie"
-#: c-decl.c:953 c-decl.c:1144 c-decl.c:1158 c-decl.c:1165 c-decl.c:1310
-#: objc/objc-act.c:2386 objc/objc-act.c:6156 objc/objc-act.c:6211
-#, c-format
-msgid "previous declaration of `%s'"
-msgstr "déclaration précédente de « %s »"
+#: c-decl.c:586
+msgid "%Jlabel `%D' defined but not used"
+msgstr "%Jétiquette « %D » définie mais non utilisée"
-#. If types don't match for a built-in, throw away the built-in.
-#: c-decl.c:1048
-#, c-format
-msgid "conflicting types for built-in function `%s'"
-msgstr "types conflictuels pour la fonction interne « %s »"
+#: c-decl.c:588
+msgid "%Jlabel `%D' declared but not defined"
+msgstr "%Jétiquette « %D » utilisée mais non définie"
-#: c-decl.c:1091 c-decl.c:1110
-#, c-format
-msgid "conflicting types for `%s'"
-msgstr "types conflictuels pour « %s »"
+#: c-decl.c:613
+msgid "%Junused variable `%D'"
+msgstr "%Jvariable inutilisée « %D »"
-#: c-decl.c:1133
+#: c-decl.c:821
msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
msgstr "un paramètre de la liste avec une ellipse ne peut concorder une déclaration vide de liste de noms de paramètres"
-#: c-decl.c:1139
+#: c-decl.c:828
msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
msgstr "un type d'argument ayant une promotion par défaut ne peut concorder avec une déclaration vide de noms de paramètres"
-#: c-decl.c:1157
-#, c-format
-msgid "thread-local declaration of `%s' follows non thread-local declaration"
-msgstr "déclaration locale au thread de « %s » après une déclaration non locale au thread"
+#: c-decl.c:864
+msgid "%Jprototype for '%D' declares more arguments than previous old-style definition"
+msgstr "%Jprototype pour « %D » déclare plus d'arguments que la définition précédente de style ancien"
+
+#: c-decl.c:870
+msgid "%Jprototype for '%D' declares fewer arguments than previous old-style definition"
+msgstr "%Jprototype pour « %D » déclare moins d'arguments que la définition précédente de style ancien"
+
+#: c-decl.c:879
+msgid "%Jprototype for '%D' declares arg %d with incompatible type"
+msgstr "%Jprototype pour « %D » déclare l'arguments %d avec un type incompatible"
+
+#. If we get here, no errors were found, but do issue a warning
+#. for this poor-style construct.
+#: c-decl.c:891
+msgid "%Jprototype for '%D' follows non-prototype definition"
+msgstr "%Jprototype pour « %D » suit la définition d'un non prototype"
-#: c-decl.c:1164
-#, c-format
-msgid "non thread-local declaration of `%s' follows thread-local declaration"
-msgstr "déclaration non locale au thread de « %s » après une déclaration locale au thread"
+#: c-decl.c:906
+msgid "%Jprevious definition of '%D' was here"
+msgstr "%Jdéfinition précédente de « %D » était ici"
-#: c-decl.c:1175 c-decl.c:1198
-#, c-format
-msgid "redefinition of `%s'"
-msgstr "redéfinition de « %s »"
+#: c-decl.c:908
+msgid "%Jprevious implicit declaration of '%D' was here"
+msgstr "%Jdéclaration précédente implicite de « %D » était ici"
-#: c-decl.c:1178
-#, c-format
-msgid "redeclaration of `%s'"
-msgstr "redéclaration de « %s »"
+#: c-decl.c:910
+msgid "%Jprevious declaration of '%D' was here"
+msgstr "%Jdéclaration précédente de « %D » était ici"
-#: c-decl.c:1181
-#, c-format
-msgid "conflicting declarations of `%s'"
-msgstr "déclarations conflictuelles de « %s »"
+#: c-decl.c:944
+msgid "%J'%D' redeclared as different kind of symbol"
+msgstr "%J« %D » redéclaré comme une sorte différente de symbole"
-#: c-decl.c:1225
-#, c-format
-msgid "prototype for `%s' follows"
-msgstr "le prototype de « %s » suit"
+#: c-decl.c:949
+msgid "%Jbuilt-in function '%D' declared as non-function"
+msgstr "%Jfonction interne « %D » n'est pas déclarée comme une fonction"
-#: c-decl.c:1226 c-decl.c:1234 c-decl.c:1245
-msgid "non-prototype definition here"
-msgstr "définition d'un non prototype ici"
+#: c-decl.c:952 c-decl.c:1042
+msgid "%Jshadowing built-in function '%D'"
+msgstr "%Jmasquage de la fonction interne « %D »"
-#: c-decl.c:1233
-#, c-format
-msgid "prototype for `%s' follows and number of arguments doesn't match"
-msgstr "le prototype de « %s » suit mais le nombre d'arguments ne concorde pas"
+#. If types don't match for a built-in, throw away the
+#. built-in. No point in calling locate_old_decl here, it
+#. won't print anything.
+#: c-decl.c:972
+msgid "%Jconflicting types for built-in function '%D'"
+msgstr "%Jtypes conflictuels pour la fonction interne « %D »"
-#: c-decl.c:1243
-#, c-format
-msgid "prototype for `%s' follows and argument %d doesn't match"
-msgstr "le prototype de « %s » suit mais le nombre d'arguments %d ne concorde pas"
+#: c-decl.c:996 c-decl.c:1004
+msgid "%Jconflicting types for '%D'"
+msgstr "%Jtypes conflictuels pour « %D »"
-#: c-decl.c:1261
-#, c-format
-msgid "`%s' declared inline after being called"
-msgstr "« %s » déclaré en-ligne après avoir été appelé"
+#. allow OLDDECL to continue in use
+#: c-decl.c:1019
+msgid "%Jredefinition of typedef '%D'"
+msgstr "%Jredéfinition de « %D »"
-#: c-decl.c:1267
-#, c-format
-msgid "`%s' declared inline after its definition"
-msgstr "« %s » déclaré en-ligne après sa définition"
+#: c-decl.c:1055 c-decl.c:1119
+msgid "%Jredefinition of '%D'"
+msgstr "%Jredéfinition de « %D »"
-#: c-decl.c:1274
-#, c-format
-msgid "static declaration for `%s' follows non-static"
-msgstr "la déclaration de « %s » comme statique après une déclaration comme non statique"
+#: c-decl.c:1086 c-decl.c:1136
+msgid "%Jstatic declaration of '%D' follows non-static declaration"
+msgstr "%Jdéclaration statique de « %D » suit une déclaration non statique"
-#: c-decl.c:1282
-#, c-format
-msgid "non-static declaration for `%s' follows static"
-msgstr "la déclaration de « %s » comme non statique après une déclaration comme statique"
+#: c-decl.c:1094 c-decl.c:1133
+msgid "%Jnon-static declaration of '%D' follows static declaration"
+msgstr "%Jdéclaration non statique de « %D » suite une déclaration statique"
-#: c-decl.c:1289
-#, c-format
-msgid "const declaration for `%s' follows non-const"
-msgstr "la déclaration de « %s » comme constante après une déclaration comme non constante"
+#: c-decl.c:1106
+msgid "%Jthread-local declaration of '%D' follows non-thread-local declaration"
+msgstr "%Jdéclaration de thread local de « %D » suit une déclaration non thread-local"
-#: c-decl.c:1296
-#, c-format
-msgid "type qualifiers for `%s' conflict with previous decl"
-msgstr "le qualificateur du type de « %s » est en conflit avec une déclaration précédente"
+#: c-decl.c:1109
+msgid "%Jnon-thread-local declaration of '%D' follows thread-local declaration"
+msgstr "%Jdéclaration non thread local de « %D » suit une déclaration de thread local"
-#: c-decl.c:1309
-#, c-format
-msgid "redundant redeclaration of `%s' in same scope"
-msgstr "redéclaration redondante de « %s » dans le même champ"
+#: c-decl.c:1149
+msgid "%Jextern declaration of '%D' follows declaration with no linkage"
+msgstr "%Jdéclaration externe de « %D » suit une déclaraion sans lien"
-#: c-decl.c:1619 java/decl.c:1102
-#, c-format
-msgid "declaration of `%s' shadows a parameter"
-msgstr "la déclaration de « %s » masque un paramètre"
+#: c-decl.c:1152
+msgid "%Jdeclaration of '%D' with no linkage follows extern declaration"
+msgstr "%Jdéclaration de « %D » sasn lien suivant une déclaration externe"
-#: c-decl.c:1622 java/decl.c:1105
-#, c-format
-msgid "declaration of `%s' shadows a symbol from the parameter list"
-msgstr "la déclaration de « %s » masque un symbole de la liste des paramètres"
+#: c-decl.c:1155
+msgid "%Jredeclaration of '%D' with no linkage"
+msgstr "%Jredéclaration de « %D » sans lien"
-#: c-decl.c:1643 cp/decl.c:4479
-msgid "a parameter"
-msgstr "un paramètre"
+#: c-decl.c:1169
+msgid "%Jredeclaration of '%D' with different visibility (old visibility preserved)"
+msgstr "%Jredéclaration de « %D » avec une visibilité différente (visibilité précédente conservée)"
-#: c-decl.c:1645 cp/decl.c:4496
-msgid "a previous local"
-msgstr "une locale précédente"
+#: c-decl.c:1180
+msgid "%Jinline declaration of '%D' follows declaration with attribute noinline"
+msgstr "%Jdéclaration enligne de « %D » suit la déclaration avec un attribut non enligne"
-#. XXX shadow warnings in outer-more namespaces
-#: c-decl.c:1649 cp/decl.c:4500
-msgid "a global declaration"
-msgstr "une déclaration globale"
+#: c-decl.c:1187
+msgid "%Jdeclaration of '%D' with attribute noinline follows inline declaration "
+msgstr "%Jéclaration de « %D » avec un attribut non enligne suit une déclaration enligne"
-#: c-decl.c:1693
-#, c-format
-msgid "nested extern declaration of `%s'"
-msgstr "déclaration de « %s » externe imbriquée"
+#: c-decl.c:1199
+msgid "%J'%D' declared inline after being called"
+msgstr "%J« %D » déclaré enligne après avoir été appelé"
-#: c-decl.c:1712 java/decl.c:1055
-#, c-format
-msgid "`%s' used prior to declaration"
-msgstr "« %s » utilisé avant sa déclaration"
+#: c-decl.c:1205
+msgid "%J'%D' declared inline after its definition"
+msgstr "%J« %D » déclaré enligne après sa définition"
-#: c-decl.c:1726 c-decl.c:1901
-#, c-format
-msgid "`%s' was declared implicitly `extern' and later `static'"
-msgstr "« %s » a été déclaré implicitement « extern » et plus loin « static »"
+#: c-decl.c:1217
+msgid "%Jvolatile declaration of '%D' follows non-volatile declaration"
+msgstr "%Jdéclaration volatile de « %D » suit une déclaration non volatile"
-#: c-decl.c:1829 cp/decl.c:4336
-msgid "type mismatch with previous external decl"
-msgstr "non concordance de type avec la déclaration externe précédente"
+#: c-decl.c:1220
+msgid "%Jnon-volatile declaration of '%D' follows volatile declaration"
+msgstr "%Jdéclaration non volatile de « %D » suit une déclaration volatile"
-#: c-decl.c:1830
-#, c-format
-msgid "previous external decl of `%s'"
-msgstr "déclaration externe précédente de « %s »"
+#: c-decl.c:1227
+msgid "%Jconst declaration of '%D' follows non-const declaration"
+msgstr "%Jdéclaration de constante de « %D » suit une déclaration de non constante"
-#: c-decl.c:1843
-msgid "type mismatch with previous implicit declaration"
-msgstr "non concordance de type avec la déclaration implicite précédente"
+#: c-decl.c:1230
+msgid "%Jnon-const declaration of '%D' follows const declaration"
+msgstr "%Jdéclaration de non constante de « %D » suit une déclaration de constante"
-#: c-decl.c:1845
-#, c-format
-msgid "previous implicit declaration of `%s'"
-msgstr "déclaration précédente implicite de « %s »"
+#: c-decl.c:1246
+msgid "%Jredundant redeclaration of '%D'"
+msgstr "%Jdéclaration redondante de « %D »"
-#: c-decl.c:1880
+#: c-decl.c:1690
#, c-format
-msgid "`%s' was previously implicitly declared to return `int'"
-msgstr "« %s » a été précédemment déclaré implicitement comme retournant un « int »"
+msgid "nested extern declaration of `%s'"
+msgstr "déclaration de « %s » externe imbriquée"
-#: c-decl.c:1905
-#, c-format
-msgid "`%s' was declared `extern' and later `static'"
-msgstr "« %s » a été déclaré « extern » et plus loin « static »"
+#: c-decl.c:1829 objc/objc-act.c:2534 objc/objc-act.c:6793
+msgid "%Jprevious declaration of '%D'"
+msgstr "%Jdéclaration précédente de « %D »"
-#: c-decl.c:1929
+#: c-decl.c:1870 c-decl.c:1872
#, c-format
-msgid "extern declaration of `%s' doesn't match global one"
-msgstr "déclaration externe de « %s » ne concorde pas avec la globale"
+msgid "implicit declaration of function `%s'"
+msgstr "déclaration implicite de la fonction « %s »"
-#: c-decl.c:1971
+#: c-decl.c:1888
#, c-format
-msgid "`%s' locally external but globally static"
-msgstr "« %s » localement externe mais globalement statique"
+msgid "`%s' undeclared here (not in a function)"
+msgstr "« %s » non déclaré ici (hors de toute fonction)"
-#: c-decl.c:2095
+#: c-decl.c:1894
#, c-format
-msgid "function `%s' was previously declared within a block"
-msgstr "la fonction « %s » a été précédemment déclarée à l'intérieur d'un bloc"
+msgid "`%s' undeclared (first use in this function)"
+msgstr "« %s » non déclaré (première utilisation dans cette fonction)"
-#: c-decl.c:2115 c-decl.c:2117
-#, c-format
-msgid "implicit declaration of function `%s'"
-msgstr "déclaration implicite de la fonction « %s »"
+#: c-decl.c:1899
+msgid "(Each undeclared identifier is reported only once"
+msgstr "(Chaque identificateur non déclaré est rapporté une seule fois"
-#: c-decl.c:2196
+#: c-decl.c:1900
+msgid "for each function it appears in.)"
+msgstr "pour chaque fonction dans laquelle il apparaît.)"
+
+#: c-decl.c:1953
#, c-format
msgid "label %s referenced outside of any function"
msgstr "étiquette %s référencée à l'extérieur de toute fonction"
-#: c-decl.c:2253
+#: c-decl.c:2000
#, c-format
msgid "duplicate label declaration `%s'"
msgstr "déclaration de l'étiquette « %s » en double"
-#: c-decl.c:2256
-msgid "this is a previous declaration"
-msgstr "ceci est une déclaration précédente"
+#: c-decl.c:2001
+msgid "%Jthis is a previous declaration"
+msgstr "%Jest la déclaration précédente"
+
+#: c-decl.c:2036
+msgid "%Hduplicate label `%D'"
+msgstr "%Hétiquette « %D » apparaît en double"
-#: c-decl.c:2679
+#: c-decl.c:2038
+msgid "%J`%D' previously defined here"
+msgstr "%J« %D » précédemment défini ici"
+
+#: c-decl.c:2040
+msgid "%J`%D' previously declared here"
+msgstr "%J« %D » précédemment déclaré ici"
+
+#: c-decl.c:2060
+msgid "%Htraditional C lacks a separate namespace for labels, identifier `%s' conflicts"
+msgstr "%HC traditionnel manque d'un espace nom séparé pour les étiquettes, identificateur « %D » est en conflit"
+
+#: c-decl.c:2131
+msgid "%H`%s' defined as wrong kind of tag"
+msgstr "%H« %s » défini incorrectement comme une mauvais sorte d'étiquette"
+
+#: c-decl.c:2369
msgid "unnamed struct/union that defines no instances"
msgstr "struct/union sans nom ne définissant aucune instance"
-#: c-decl.c:2698
+#: c-decl.c:2388
msgid "useless keyword or type name in empty declaration"
msgstr "mot clé ou nom de type inutile dans une déclaration vide"
-#: c-decl.c:2705
+#: c-decl.c:2395
msgid "two types specified in one empty declaration"
msgstr "deux types spécifiés dans une déclaration vide"
-#: c-decl.c:2710 c-parse.y:753 c-parse.y:755 parse.y:766 parse.y:1853
-#: objc-parse.y:799 objc-parse.y:801 objc-parse.y:3042
+#: c-decl.c:2400 c-parse.y:735 c-parse.y:737 objc/objc-parse.y:776
+#: objc/objc-parse.y:778 objc/objc-parse.y:3016
msgid "empty declaration"
msgstr "déclaration vide"
-#: c-decl.c:2740
+#: c-decl.c:2426
msgid "ISO C90 does not support `static' or type qualifiers in parameter array declarators"
-msgstr "le C90 ISO ne supporte pas « static » ou les qualificateurs de type dans les déclarateurs de tableau de paramètres"
+msgstr "ISO C90 ne supporte pas « static » ou les qualificateurs de type dans les déclarateurs de tableau de paramètres"
-#: c-decl.c:2742
+#: c-decl.c:2428
msgid "ISO C90 does not support `[*]' array declarators"
-msgstr "le C90 ISO ne supporte pas « [*] » dans les déclarateurs de tableau"
+msgstr "ISO C90 ne supporte pas « [*] » dans les déclarateurs de tableau"
-#: c-decl.c:2745
+#: c-decl.c:2431
msgid "GCC does not yet properly implement `[*]' array declarators"
msgstr "GCC n'implémente pas encore correctement les déclarateurs de tableau « [*] »"
-#: c-decl.c:2764
+#: c-decl.c:2447
msgid "static or type qualifiers in abstract declarator"
msgstr "static ou qualificateurs de type dans un déclarateur abstrait"
-#: c-decl.c:2838
-#, c-format
-msgid "`%s' is usually a function"
-msgstr "« %s » est habituellement une fonction"
+#: c-decl.c:2517
+msgid "%J'%D' is usually a function"
+msgstr "%J« %D » est habituellement une fonction"
-#: c-decl.c:2847
+#: c-decl.c:2526
#, c-format
msgid "typedef `%s' is initialized (use __typeof__ instead)"
msgstr "typedef « %s » est initialisé (utilisez __typeof__ à la place)"
-#: c-decl.c:2853
+#: c-decl.c:2532
#, c-format
msgid "function `%s' is initialized like a variable"
msgstr "la fonction « %s » est initialisée comme une variable"
#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
-#: c-decl.c:2860
+#: c-decl.c:2539
#, c-format
msgid "parameter `%s' is initialized"
msgstr "le paramètre « %s » est initialisé"
-#: c-decl.c:2880 c-typeck.c:4895
+#: c-decl.c:2559 c-typeck.c:4220
msgid "variable-sized object may not be initialized"
msgstr "un objet de taille variable peut ne pas être initialisé"
-#: c-decl.c:2886
+#: c-decl.c:2565
#, c-format
msgid "variable `%s' has initializer but incomplete type"
msgstr "la variable « %s » est initialisée alors qu'elle est de type incomplet"
-#: c-decl.c:2892
+#: c-decl.c:2571
#, c-format
msgid "elements of array `%s' have incomplete type"
msgstr "les éléments du tableau « %s » ont des types incomplets"
-#: c-decl.c:2905
-#, c-format
-msgid "declaration of `%s' has `extern' and is initialized"
-msgstr "« %s » initialisé et déclaré « extern »"
+#: c-decl.c:2640 c-decl.c:5426 cp/decl.c:3748 cp/decl.c:10156
+msgid "%Jinline function '%D' given attribute noinline"
+msgstr "%J fonction enligne « %D » a reçu l'attribut non enligne"
-#: c-decl.c:2954 c-decl.c:5828 cp/decl.c:7760 cp/decl.c:14339
-#, c-format
-msgid "inline function `%s' given attribute noinline"
-msgstr "la fonction inline « %s » a reçu l'attribut noinline"
+#: c-decl.c:2716
+msgid "%Jinitializer fails to determine size of '%D'"
+msgstr "%Jinitialisateur a échoué à déterminer la taille de « %D »"
+
+#: c-decl.c:2721
+msgid "%Jarray size missing in '%D'"
+msgstr "%Jtaille du tableau est manquante dans « %D »"
+
+#: c-decl.c:2737
+msgid "%Jzero or negative size array '%D'"
+msgstr "%Jtableau « %D » de taille zéro ou négative"
+
+#: c-decl.c:2765
+msgid "%Jstorage size of '%D' isn't known"
+msgstr "%Jtaille de stockage de « %D » n'est pas connue"
+
+#: c-decl.c:2775
+msgid "%Jstorage size of '%D' isn't constant"
+msgstr "%Jtaille de stockage de « %D » n'est pas une constante"
+
+#: c-decl.c:2858
+msgid "%Jignoring asm-specifier for non-static local variable '%D'"
+msgstr "%Jspécificateur asm ignoré pour la variable locale non statique « %D »"
+
+#: c-decl.c:2969
+msgid "ISO C forbids forward parameter declarations"
+msgstr "ISO C interdit la déclaration anticipée de paramètres"
-#: c-decl.c:3028
+#: c-decl.c:3151
+msgid "<anonymous>"
+msgstr "<anonymous>"
+
+#: c-decl.c:3160
#, c-format
-msgid "initializer fails to determine size of `%s'"
-msgstr "l'initialisation n'a pas pu déterminer la taille de « %s »"
+msgid "bit-field `%s' width not an integer constant"
+msgstr "la largeur du champ de bits « %s » n'est pas une constante entière"
-#: c-decl.c:3033
+#: c-decl.c:3168
#, c-format
-msgid "array size missing in `%s'"
-msgstr "taille du tableau manquante dans « %s »"
+msgid "negative width in bit-field `%s'"
+msgstr "largeur négative du champ de bits « %s »"
-#: c-decl.c:3049
+#: c-decl.c:3173
#, c-format
-msgid "zero or negative size array `%s'"
-msgstr "tableau « %s » de taille zéro ou négative"
+msgid "zero width for bit-field `%s'"
+msgstr "largeur nulle pour le champ de bits « %s »"
-#: c-decl.c:3077
+#: c-decl.c:3183
#, c-format
-msgid "storage size of `%s' isn't known"
-msgstr "taille de stockage de « %s » inconnue"
+msgid "bit-field `%s' has invalid type"
+msgstr "le champ de bits « %s » a un type invalide"
-#: c-decl.c:3087
+#: c-decl.c:3192
#, c-format
-msgid "storage size of `%s' isn't constant"
-msgstr "la taille de stockage de « %s » n'est pas une constante"
+msgid "type of bit-field `%s' is a GCC extension"
+msgstr "le type de champ de bit « %s » est une extension GCC"
-#: c-decl.c:3147
+#: c-decl.c:3201
#, c-format
-msgid "ignoring asm-specifier for non-static local variable `%s'"
-msgstr "spécificateur asm ignorés pour la variable locale non statique « %s »"
+msgid "width of `%s' exceeds its type"
+msgstr "la largeur de « %s » excède son type"
-#: c-decl.c:3247
+#: c-decl.c:3211
#, c-format
-msgid "ISO C forbids parameter `%s' shadowing typedef"
-msgstr "le C ISO interdit que le paramètre « %s » masque un typedef"
+msgid "`%s' is narrower than values of its type"
+msgstr "« %s » est plus étroit que les valeurs de son type"
-#: c-decl.c:3592 cp/decl.c:10880
+#: c-decl.c:3361 cp/decl.c:6778
msgid "`long long long' is too long for GCC"
msgstr "« long long long » est trop long pour GCC"
-#: c-decl.c:3597
+#: c-decl.c:3366
msgid "ISO C90 does not support `long long'"
-msgstr "le C90 ISO ne permet pas « long long »"
+msgstr "ISO C90 ne permet pas « long long »"
-#: c-decl.c:3606 c-decl.c:3609 cp/decl.c:10885
+#: c-decl.c:3375 c-decl.c:3378 cp/decl.c:6783
#, c-format
msgid "duplicate `%s'"
msgstr "« %s » apparaît en double"
-#: c-decl.c:3619 cp/decl.c:10892
+#: c-decl.c:3388 cp/decl.c:6789
msgid "`__thread' before `extern'"
msgstr "« __thread » avant « extern »"
-#: c-decl.c:3621 cp/decl.c:10894
+#: c-decl.c:3390 cp/decl.c:6791
msgid "`__thread' before `static'"
msgstr "« __thread » avant « static »"
-#: c-decl.c:3629 cp/decl.c:10921
+#: c-decl.c:3398 cp/decl.c:6818
#, c-format
msgid "two or more data types in declaration of `%s'"
msgstr "deux types de données ou plus dans la déclaration de « %s »"
-#: c-decl.c:3649 cp/decl.c:10926
+#: c-decl.c:3418 cp/decl.c:6823
#, c-format
msgid "`%s' fails to be a typedef or built in type"
msgstr "« %s » n'a pu devenir un typedef ou un type construit"
-#: c-decl.c:3688
+#: c-decl.c:3457
#, c-format
msgid "type defaults to `int' in declaration of `%s'"
msgstr "dans la déclaration de « %s », utilisation de « int » par défaut pour le type"
-#: c-decl.c:3717
+#: c-decl.c:3486
#, c-format
msgid "both long and short specified for `%s'"
msgstr "« long » et « short » spécifiés à la fois pour « %s »"
-#: c-decl.c:3721 cp/decl.c:11041
+#: c-decl.c:3490 cp/decl.c:6923
#, c-format
msgid "long or short specified with char for `%s'"
msgstr "« long » ou « short » spécifié avec « char » pour « %s »"
-#: c-decl.c:3728 cp/decl.c:11045
+#: c-decl.c:3497 cp/decl.c:6927
#, c-format
msgid "long or short specified with floating type for `%s'"
msgstr "« long » ou « short » spécifié avec un type flottant pour « %s »"
-#: c-decl.c:3731
+#: c-decl.c:3500
msgid "the only valid combination is `long double'"
msgstr "la seule combinaison valide est « long double »"
-#: c-decl.c:3737
+#: c-decl.c:3506
#, c-format
msgid "both signed and unsigned specified for `%s'"
msgstr "« %s » est à la fois signé et non signé"
-#: c-decl.c:3739 cp/decl.c:11034
+#: c-decl.c:3508 cp/decl.c:6916
#, c-format
msgid "long, short, signed or unsigned invalid for `%s'"
msgstr "« long », « short », « signed » ou « unsigned » invalide pour « %s »"
-#: c-decl.c:3745 cp/decl.c:11054
+#: c-decl.c:3514 cp/decl.c:6936
#, c-format
msgid "long, short, signed or unsigned used invalidly for `%s'"
msgstr "« long », « short », « signed » ou « unsigned » utilisé incorrectement pour « %s »"
-#: c-decl.c:3763 cp/decl.c:11075
+#: c-decl.c:3532 cp/decl.c:6957
#, c-format
msgid "complex invalid for `%s'"
msgstr "« complex » invalide pour « %s »"
-#: c-decl.c:3805
+#: c-decl.c:3574
msgid "ISO C90 does not support complex types"
-msgstr "le C90 ISO ne permet pas les types « complex »"
+msgstr "ISO C90 ne permet pas les types « complex »"
-#: c-decl.c:3817
+#: c-decl.c:3586
msgid "ISO C does not support plain `complex' meaning `double complex'"
-msgstr "le C ISO ne permet pas d'utiliser « complex » à la place de « double complex »"
+msgstr "ISO C ne permet pas d'utiliser « complex » à la place de « double complex »"
-#: c-decl.c:3823 c-decl.c:3835
+#: c-decl.c:3592 c-decl.c:3604
msgid "ISO C does not support complex integer types"
-msgstr "le C ISO interdit le type d'entiers complexes"
+msgstr "ISO C interdit le type d'entiers complexes"
-#: c-decl.c:3850 c-decl.c:4316 cp/decl.c:11688
+#: c-decl.c:3632 c-decl.c:4090 cp/decl.c:7549
msgid "duplicate `const'"
msgstr "« const » apparaît en double"
-#: c-decl.c:3852 c-decl.c:4320 cp/decl.c:11692
+#: c-decl.c:3634 c-decl.c:4094 cp/decl.c:7553
msgid "duplicate `restrict'"
msgstr "« restrict » apparaît en double"
-#: c-decl.c:3854 c-decl.c:4318 cp/decl.c:11690
+#: c-decl.c:3636 c-decl.c:4092 cp/decl.c:7551
msgid "duplicate `volatile'"
msgstr "« volatile » apparaît en double"
-#: c-decl.c:3882 cp/decl.c:11238
+#: c-decl.c:3664 cp/decl.c:7120
#, c-format
msgid "multiple storage classes in declaration of `%s'"
msgstr "multiples classes de stockage dans la déclaration de « %s »"
-#: c-decl.c:3892
+#: c-decl.c:3674
msgid "function definition declared `auto'"
msgstr "définition de fonction déclaré « auto »"
-#: c-decl.c:3894
+#: c-decl.c:3676
msgid "function definition declared `register'"
msgstr "définition de fonction déclarée « register »"
-#: c-decl.c:3896
+#: c-decl.c:3678
msgid "function definition declared `typedef'"
msgstr "définition de fonction déclarée « typedef »"
-#: c-decl.c:3898
+#: c-decl.c:3680
msgid "function definition declared `__thread'"
msgstr "définition de fonction déclarée « __thread »"
-#: c-decl.c:3911
+#: c-decl.c:3693
#, c-format
msgid "storage class specified for structure field `%s'"
msgstr "classe de stockage spécifiée pour le champ de structure « %s »"
-#: c-decl.c:3915 cp/decl.c:11285
+#: c-decl.c:3697 cp/decl.c:7165
#, c-format
msgid "storage class specified for parameter `%s'"
msgstr "classe de stockage spécifiée pour le paramètre « %s »"
-#: c-decl.c:3918 cp/decl.c:11287
+#: c-decl.c:3700 cp/decl.c:7167
msgid "storage class specified for typename"
msgstr "classe de stockage spécifié pour un typename"
-#: c-decl.c:3930 cp/decl.c:11302
+#: c-decl.c:3712 cp/decl.c:7182
#, c-format
msgid "`%s' initialized and declared `extern'"
msgstr "« %s » initialisé et déclaré « extern »"
-#: c-decl.c:3932 cp/decl.c:11305
+#: c-decl.c:3714 cp/decl.c:7185
#, c-format
msgid "`%s' has both `extern' and initializer"
-msgstr "« %s » initialisé et marqué « extern »"
+msgstr "« %s » a les deux « extern » et initialisateur"
-#: c-decl.c:3937 cp/decl.c:11313
+#: c-decl.c:3719
#, c-format
-msgid "top-level declaration of `%s' specifies `auto'"
-msgstr "la déclaration hors de toute fonction de « %s » a spécifié « auto »"
+msgid "file-scope declaration of `%s' specifies `auto'"
+msgstr "la déclaration de l'étendue de fichier « %s » spécifie « auto »"
-#: c-decl.c:3942 cp/decl.c:11309
+#: c-decl.c:3724 cp/decl.c:7189
#, c-format
msgid "nested function `%s' declared `extern'"
msgstr "fonction imbriquée « %s » déclarée « extern »"
-#: c-decl.c:3948 cp/decl.c:11319
+#: c-decl.c:3730 cp/decl.c:7199
#, c-format
msgid "function-scope `%s' implicitly auto and declared `__thread'"
msgstr "« %s » dans le champ de la fonction est implicitement déclaré auto, et déclaré « __thread »"
@@ -1169,1457 +1197,1325 @@ msgstr "« %s » dans le champ de la fonction est implicitement déclaré auto, et d
#. Only the innermost declarator (making a parameter be of
#. array type which is converted to pointer type)
#. may have static or type qualifiers.
-#: c-decl.c:3987 c-decl.c:4188
+#: c-decl.c:3769 c-decl.c:3962
msgid "static or type qualifiers in non-parameter array declarator"
msgstr "static ou qualificateurs de type dans un déclarateur de tableau n'étant pas un paramètre"
-#: c-decl.c:4031
+#: c-decl.c:3813
#, c-format
msgid "declaration of `%s' as array of voids"
msgstr "déclaration de « %s » comme un tableau de « void »"
-#: c-decl.c:4037
+#: c-decl.c:3819
#, c-format
msgid "declaration of `%s' as array of functions"
msgstr "déclaration de « %s » comme un tableau de fonctions"
-#: c-decl.c:4042 c-decl.c:5332
+#: c-decl.c:3824
msgid "invalid use of structure with flexible array member"
msgstr "utilisation invalide d'une structure ayant un membre flexible"
-#: c-decl.c:4061
+#: c-decl.c:3843
#, c-format
msgid "size of array `%s' has non-integer type"
msgstr "la taille du tableau « %s » n'est pas de type entier"
-#: c-decl.c:4066
+#: c-decl.c:3848
#, c-format
msgid "ISO C forbids zero-size array `%s'"
-msgstr "le C ISO interdit le tableau de taille zéro « %s »"
+msgstr "ISO C interdit le tableau de taille zéro « %s »"
-#: c-decl.c:4073
+#: c-decl.c:3855
#, c-format
msgid "size of array `%s' is negative"
msgstr "la taille du tableau « %s » est négative"
-#: c-decl.c:4086
+#: c-decl.c:3868
#, c-format
msgid "ISO C90 forbids array `%s' whose size can't be evaluated"
-msgstr "le C90 ISO interdit le tableau « %s » dont la taille ne peut être évaluée"
+msgstr "ISO C90 interdit le tableau « %s » dont la taille ne peut être évaluée"
-#: c-decl.c:4089
+#: c-decl.c:3871
#, c-format
msgid "ISO C90 forbids variable-size array `%s'"
-msgstr "le C90 ISO interdit le tableau « %s » de taille variable"
+msgstr "ISO C90 interdit le tableau « %s » de taille variable"
-#: c-decl.c:4119 c-decl.c:4342 cp/decl.c:11897
+#: c-decl.c:3901 c-decl.c:4116 cp/decl.c:7723
#, c-format
msgid "size of array `%s' is too large"
msgstr "la taille du tableau « %s » est trop grande"
-#: c-decl.c:4145
+#: c-decl.c:3927
msgid "ISO C90 does not support flexible array members"
-msgstr "le C90 ISO interdit les tableaux ayant des membres flexibles"
+msgstr "ISO C90 interdit les tableaux ayant des membres flexibles"
-#: c-decl.c:4155
+#: c-decl.c:3937
msgid "array type has incomplete element type"
msgstr "les éléments du tableau sont de type incomplet"
-#: c-decl.c:4162 c-decl.c:4392
-msgid "ISO C forbids const or volatile function types"
-msgstr "le C ISO interdit les fonction de type volatile ou constante"
-
-#: c-decl.c:4208 cp/decl.c:11445
+#: c-decl.c:3982 cp/decl.c:7320
#, c-format
msgid "`%s' declared as function returning a function"
msgstr "« %s » déclaré comme une fonction retournant une fonction"
-#: c-decl.c:4213 cp/decl.c:11450
+#: c-decl.c:3987 cp/decl.c:7325
#, c-format
msgid "`%s' declared as function returning an array"
msgstr "« %s » déclaré comme une fonction retournant un tableau"
-#: c-decl.c:4241
+#: c-decl.c:4015
msgid "ISO C forbids qualified void function return type"
-msgstr "le C ISO interdit d'utiliser un void qualifié en valeur de retour de fonction"
+msgstr "ISO C interdit d'utiliser un void qualifié en valeur à retourner par la fonction"
-#: c-decl.c:4245
+#: c-decl.c:4019
msgid "type qualifiers ignored on function return type"
-msgstr "qualificateurs de type ignorés pour le type retourné par la fonction"
+msgstr "qualificateurs de type ignorés pour le type à retourner par la fonction"
-#: c-decl.c:4274 c-decl.c:4357 c-decl.c:4481 c-decl.c:4573
+#: c-decl.c:4048 c-decl.c:4131 c-decl.c:4255 c-decl.c:4341
msgid "ISO C forbids qualified function types"
-msgstr "le C ISO interdit les types de fonction qualifiés"
+msgstr "ISO C interdit les types de fonction qualifiés"
-#: c-decl.c:4314 cp/decl.c:11684
+#: c-decl.c:4088 cp/decl.c:7545
msgid "invalid type modifier within pointer declarator"
msgstr "modificateur de type invalide dans la déclaration de pointeur"
-#: c-decl.c:4412 cp/decl.c:12182
+#: c-decl.c:4166
+msgid "ISO C forbids const or volatile function types"
+msgstr "ISO C interdit les fonction de type volatile ou constante"
+
+#: c-decl.c:4186 cp/decl.c:8005
#, c-format
msgid "variable or field `%s' declared void"
msgstr "variable ou champ « %s » déclaré « void »"
-#: c-decl.c:4445
+#: c-decl.c:4219
msgid "attributes in parameter array declarator ignored"
msgstr "les attributs dans un déclarateur de tableau de paramètres sont ignorés"
-#: c-decl.c:4470
+#: c-decl.c:4244
msgid "invalid type modifier within array declarator"
msgstr "modificateur invalide de type à l'intérieur d'un déclarateur de tableau"
-#: c-decl.c:4515
+#: c-decl.c:4289
#, c-format
msgid "field `%s' declared as a function"
msgstr "champ « %s » déclaré comme une fonction"
-#: c-decl.c:4521
+#: c-decl.c:4295
#, c-format
msgid "field `%s' has incomplete type"
msgstr "champ « %s » est de type incomplet"
-#: c-decl.c:4553 c-decl.c:4555 c-decl.c:4557 c-decl.c:4564
+#: c-decl.c:4321 c-decl.c:4323 c-decl.c:4325 c-decl.c:4332
#, c-format
msgid "invalid storage class for function `%s'"
msgstr "classe de stockage invalide pour la fonction « %s »"
-#: c-decl.c:4579
+#: c-decl.c:4347
msgid "`noreturn' function returns non-void value"
msgstr "fonction marquée « noreturn » retourne une valeur n'étant pas de type « void »"
-#: c-decl.c:4594
+#: c-decl.c:4362
msgid "cannot inline function `main'"
-msgstr "ne peut transformer « main » en fonction en ligne"
+msgstr "ne peut transformer « main » en fonction enligne"
-#: c-decl.c:4649
-#, c-format
-msgid "variable `%s' declared `inline'"
-msgstr "variable « %s » déclarée « inline »"
+#: c-decl.c:4415
+msgid "variable previously declared `static' redeclared `extern'"
+msgstr "variable précédemment déclarée « static » redéclarée « extern »"
+
+#: c-decl.c:4424
+msgid "%Jvariable '%D' declared `inline'"
+msgstr "%Jvariable « %D » déclarée « inline »"
#. A mere warning is sure to result in improper semantics
#. at runtime. Don't bother to allow this to compile.
-#: c-decl.c:4677 cp/decl.c:9951
+#: c-decl.c:4452 cp/decl.c:5877
msgid "thread-local storage not supported for this target"
msgstr "cette cible ne permet pas le stockage en local au thread"
-#: c-decl.c:4732 c-decl.c:5880
+#: c-decl.c:4513 c-decl.c:5470
msgid "function declaration isn't a prototype"
msgstr "la déclaration de fonction n'est pas un prototype valide"
-#: c-decl.c:4738
+#: c-decl.c:4519
msgid "parameter names (without types) in function declaration"
msgstr "noms de paramètres (sans type) dans la déclaration de fonction"
-#: c-decl.c:4770 c-decl.c:6250
+#: c-decl.c:4547
#, c-format
msgid "parameter `%s' has incomplete type"
msgstr "le paramètre « %s » a un type incomplet"
-#: c-decl.c:4773
+#: c-decl.c:4550
msgid "parameter has incomplete type"
msgstr "le paramètre a un type incomplet"
-#: c-decl.c:4794
-#, c-format
-msgid "parameter `%s' points to incomplete type"
-msgstr "le paramètre « %s » pointe vers un type incomplet"
-
-#: c-decl.c:4797
-msgid "parameter points to incomplete type"
-msgstr "le paramètre pointe vers un type incomplet"
-
-#: c-decl.c:4862
-#, c-format
-msgid "parameter `%s' has just a forward declaration"
-msgstr "le paramètre « %s » n'a qu'une déclaration anticipée"
+#: c-decl.c:4599
+msgid "\"void\" as only parameter may not be qualified"
+msgstr "\"void\" comme seul paramètre ne peut être qualifié"
-#: c-decl.c:4903
-msgid "`void' in parameter list must be the entire list"
-msgstr "si « void » est dans une liste de paramètres, toute la liste doit l'être"
+#: c-decl.c:4620
+msgid "\"void\" must be the only parameter"
+msgstr "\"void\" doit être le seul paramètre"
-#: c-decl.c:4934
-#, c-format
-msgid "`struct %s' declared inside parameter list"
-msgstr "« struct %s » déclarée à l'intérieur de la liste de paramètres"
+#: c-decl.c:4637
+msgid "%Jparameter \"%D\" has just a forward declaration"
+msgstr "%Jparamètre « %D » n'a qu'une déclaration anticipée"
-#: c-decl.c:4937
+#. The first %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4665
#, c-format
-msgid "`union %s' declared inside parameter list"
-msgstr "« union %s » déclarée à l'intérieur de la liste de paramètres"
+msgid "\"%s %s\" declared inside parameter list"
+msgstr "\"%s %s\" déclarée à l'intérieur de la liste de paramètres"
-#: c-decl.c:4940
+#. The %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4669
#, c-format
-msgid "`enum %s' declared inside parameter list"
-msgstr "« enum %s » déclarée à l'intérieur de la liste de paramètres"
-
-#: c-decl.c:4947
-msgid "anonymous struct declared inside parameter list"
-msgstr "structure anonyme déclarée à l'intérieur de la liste des paramètres"
-
-#: c-decl.c:4949
-msgid "anonymous union declared inside parameter list"
-msgstr "union anonyme déclarée à l'intérieur de la liste des paramètres"
+msgid "anonymous %s declared inside parameter list"
+msgstr "structure anonyme %s déclarée à l'intérieur de la liste des paramètres"
-#: c-decl.c:4951
-msgid "anonymous enum declared inside parameter list"
-msgstr "énumération anonyme déclarée à l'intérieur de la liste des paramètres"
-
-#: c-decl.c:4955
+#: c-decl.c:4673
msgid "its scope is only this definition or declaration, which is probably not what you want"
msgstr "visible uniquement depuis cette définition ou déclaration, ce qui n'est probablement pas ce que vous désirez"
-#: c-decl.c:5032
+#: c-decl.c:4758
#, c-format
msgid "redefinition of `union %s'"
msgstr "redéfinition de « union %s »"
-#: c-decl.c:5034
+#: c-decl.c:4760
#, c-format
msgid "redefinition of `struct %s'"
msgstr "redéfinition de « struct %s »"
-#: c-decl.c:5105 cp/decl.c:7532
+#: c-decl.c:4828 cp/decl.c:3521
msgid "declaration does not declare anything"
msgstr "déclaration ne déclarant rien du tout"
-#: c-decl.c:5169 c-decl.c:5172
+#: c-decl.c:4873 c-decl.c:4889
+msgid "%Jduplicate member '%D'"
+msgstr "%Jmembre « %D » est double"
+
+#: c-decl.c:4923 c-decl.c:4926
#, c-format
msgid "%s defined inside parms"
msgstr "%s défini à l'intérieur des paramètres"
-#: c-decl.c:5170 c-decl.c:5173 c-decl.c:5184
+#: c-decl.c:4924 c-decl.c:4927 c-decl.c:4938
msgid "union"
msgstr "union"
-#: c-decl.c:5170 c-decl.c:5173
+#: c-decl.c:4924 c-decl.c:4927
msgid "structure"
msgstr "structure"
-#: c-decl.c:5183
+#: c-decl.c:4937
#, c-format
msgid "%s has no %s"
msgstr "%s n'a pas de %s"
-#: c-decl.c:5184
+#: c-decl.c:4938
msgid "struct"
msgstr "struct"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "named members"
msgstr "membres nommés"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "members"
msgstr "membres"
-#: c-decl.c:5224
+#: c-decl.c:4978
#, c-format
msgid "nested redefinition of `%s'"
msgstr "redéfinition imbriquée de « %s »"
-#: c-decl.c:5237
-#, c-format
-msgid "bit-field `%s' width not an integer constant"
-msgstr "la largeur du champ de bits « %s » n'est pas une constante entière"
-
-#: c-decl.c:5248
-#, c-format
-msgid "bit-field `%s' has invalid type"
-msgstr "le champ de bits « %s » a un type invalide"
-
-#: c-decl.c:5260
-#, c-format
-msgid "bit-field `%s' type invalid in ISO C"
-msgstr "le champ de bits « %s » a un type invalide en C ISO"
-
-#: c-decl.c:5271
-#, c-format
-msgid "negative width in bit-field `%s'"
-msgstr "largeur négative du champ de bits « %s »"
-
-#: c-decl.c:5273
-#, c-format
-msgid "width of `%s' exceeds its type"
-msgstr "la largeur de « %s » excède son type"
-
-#: c-decl.c:5275
-#, c-format
-msgid "zero width for bit-field `%s'"
-msgstr "largeur nulle pour le champ de bits « %s »"
-
-#: c-decl.c:5289
-#, c-format
-msgid "`%s' is narrower than values of its type"
-msgstr "« %s » est plus étroit que les valeurs de son type"
-
-#: c-decl.c:5323
-msgid "flexible array member in union"
-msgstr "membre flexible de tableau dans l'union"
+#: c-decl.c:4998
+msgid "%Jflexible array member in union"
+msgstr "%Jmembre flexible de tableau dans l'union"
-#: c-decl.c:5325
-msgid "flexible array member not at end of struct"
-msgstr "le membre flexible de tableau n'est pas à la fin de la structure"
+#: c-decl.c:5000
+msgid "%Jflexible array member not at end of struct"
+msgstr "%Jle membre flexible de tableau n'est pas à la fin de la structure"
-#: c-decl.c:5327
-msgid "flexible array member in otherwise empty struct"
-msgstr "membre flexible de tableau dans une structure vide par ailleurs"
+#: c-decl.c:5002
+msgid "%Jflexible array member in otherwise empty struct"
+msgstr "%Jmembre flexible de tableau dans une structure vide par ailleurs"
-#: c-decl.c:5357
-#, c-format
-msgid "duplicate member `%s'"
-msgstr "membre « %s » apparaît en double"
+#: c-decl.c:5007
+msgid "%Jinvalid use of structure with flexible array member"
+msgstr "%Jutilisation invalide d'une structure ayant un membre flexible"
-#: c-decl.c:5448
+#: c-decl.c:5102
msgid "union cannot be made transparent"
msgstr "union ne peut pas être rendu transparente"
#. This enum is a named one that has been declared already.
-#: c-decl.c:5558
+#: c-decl.c:5171
#, c-format
msgid "redeclaration of `enum %s'"
msgstr "redéclaration de « enum %s »"
-#: c-decl.c:5592
+#: c-decl.c:5202
msgid "enum defined inside parms"
msgstr "enum défini à l'intérieur des paramètres"
-#: c-decl.c:5625
+#: c-decl.c:5235
msgid "enumeration values exceed range of largest integer"
msgstr "valeurs d'énumération excède les bornes du plus grand entier"
-#: c-decl.c:5734
+#: c-decl.c:5338
#, c-format
msgid "enumerator value for `%s' not integer constant"
msgstr "valeur de l'énumérateur pour « %s » n'est pas une constante entière"
-#: c-decl.c:5747
+#: c-decl.c:5351
msgid "overflow in enumeration values"
msgstr "débordement dans les valeurs de l'énumération"
-#: c-decl.c:5752
+#: c-decl.c:5356
msgid "ISO C restricts enumerator values to range of `int'"
-msgstr "le C ISO restreint les valeurs de l'énumérateur aux bornes d'un « int »"
+msgstr "ISO C restreint les valeurs de l'énumérateur aux bornes d'un « int »"
-#: c-decl.c:5834
+#: c-decl.c:5432
msgid "return type is an incomplete type"
msgstr "le type du retour est incomplet"
-#: c-decl.c:5842
+#: c-decl.c:5440
msgid "return type defaults to `int'"
msgstr "le type du retour est « int » par défaut"
-#: c-decl.c:5889
-#, c-format
-msgid "no previous prototype for `%s'"
-msgstr "aucun prototype anticipé pour « %s »"
+#: c-decl.c:5476
+msgid "%Jno previous prototype for '%D'"
+msgstr "%Jaucun prototype précédent pour « %D »"
-#: c-decl.c:5896
-#, c-format
-msgid "`%s' was used with no prototype before its definition"
-msgstr "« %s » a été utilisé sans prototype avant sa définition"
+#: c-decl.c:5482
+msgid "%J'%D' was used with no prototype before its definition"
+msgstr "%J« %D » a été utilisé sans prototype avant sa définition"
-#: c-decl.c:5902
-#, c-format
-msgid "no previous declaration for `%s'"
-msgstr "aucune déclaration anticipée pour « %s »"
+#: c-decl.c:5489
+msgid "%Jno previous declaration for '%D'"
+msgstr "%Jaucune déclaration précédente pour « %D »"
-#: c-decl.c:5909
-#, c-format
-msgid "`%s' was used with no declaration before its definition"
-msgstr "« %s » a été utilisé sans déclaration avant sa définition"
+#: c-decl.c:5495
+msgid "%J`%D' was used with no declaration before its definition"
+msgstr "%J« %D » a été utilisé sans déclaration avant sa définition"
-#: c-decl.c:5933 c-decl.c:6486
-#, c-format
-msgid "return type of `%s' is not `int'"
-msgstr "le type de retour de « %s » n'est pas « int »"
+#: c-decl.c:5531 c-decl.c:6037
+msgid "%Jreturn type of '%D' is not `int'"
+msgstr "%Jle type de retour de « %D » n'est pas « int »"
-#: c-decl.c:5949
-#, c-format
-msgid "first argument of `%s' should be `int'"
-msgstr "le premier argument de « %s » devrait être « int »"
+#: c-decl.c:5546
+msgid "%Jfirst argument of '%D' should be `int'"
+msgstr "%Jle premier argument de « %D » devrait être « int »"
-#: c-decl.c:5958
-#, c-format
-msgid "second argument of `%s' should be `char **'"
-msgstr "le second argument de « %s » devrait être « char ** »"
+#: c-decl.c:5555
+msgid "%Jsecond argument of '%D' should be 'char **'"
+msgstr "%Jle second argument de « %D » devrait être « char ** »"
-#: c-decl.c:5967
-#, c-format
-msgid "third argument of `%s' should probably be `char **'"
-msgstr "le troisième argument de « %s » devrait probablement être « char ** »"
+#: c-decl.c:5564
+msgid "%Jthird argument of '%D' should probably be 'char **'"
+msgstr "%Jle troisième argument de « %D » devrait probablement être « char ** »"
-#: c-decl.c:5976
-#, c-format
-msgid "`%s' takes only zero or two arguments"
-msgstr "« %s » prend soit aucun argument soit deux arguments"
+#: c-decl.c:5574
+msgid "%J'%D' takes only zero or two arguments"
+msgstr "%J« %D » prend soit aucun argument ou soit deux arguments"
-#: c-decl.c:5979
-#, c-format
-msgid "`%s' is normally a non-static function"
-msgstr "« %s » n'est normalement pas une fonction statique"
+#: c-decl.c:5577
+msgid "%J'%D' is normally a non-static function"
+msgstr "%J« %D » n'est pas normalement une fonction statique"
-#: c-decl.c:6077
-msgid "parm types given both in parmlist and separately"
-msgstr "types des paramètres à la fois donnés dans la liste et séparément"
+#: c-decl.c:5633
+msgid "%Jold-style parameter declarations in prototyped function definition"
+msgstr "%Jdéclaration de paramètre d'ancien style dans la définition prototypée de fonction"
-#: c-decl.c:6098
-msgid "parameter name omitted"
-msgstr "nom de paramètre omis"
+#: c-decl.c:5647
+msgid "%Jparameter name omitted"
+msgstr "%Jnom de paramètre omis"
-#: c-decl.c:6102 c-decl.c:6204
-#, c-format
-msgid "parameter `%s' declared void"
-msgstr "paramètre « %s » déclaré « void »"
+#: c-decl.c:5722
+msgid "%Jparameter name missing from parameter list"
+msgstr "%Jnom du paramètre manquant dans la liste des paramètres"
-#: c-decl.c:6178
-msgid "parameter name missing from parameter list"
-msgstr "nom du paramètre manquant dans la liste des paramètres"
+#: c-decl.c:5732
+msgid "%J\"%D\" declared as a non-parameter"
+msgstr "%J\"%D\" déclaré comme un non paramètre"
-#: c-decl.c:6197
-#, c-format
-msgid "multiple parameters named `%s'"
-msgstr "plusieurs paramètres nommés « %s »"
+#: c-decl.c:5737
+msgid "%Jmultiple parameters named \"%D\""
+msgstr "%Jplusieurs paramètres nommés « %D »"
-#: c-decl.c:6219 c-decl.c:6221
-#, c-format
-msgid "type of `%s' defaults to `int'"
-msgstr "le type de « %s » est « int » par défaut"
+#: c-decl.c:5745
+msgid "%Jparameter \"%D\" declared void"
+msgstr "%Jparamètre \"%D\" déclaré «void »"
-#: c-decl.c:6257
-#, c-format
-msgid "declaration for parameter `%s' but no such parameter"
-msgstr "déclaration du paramètre « %s » mais pas de tel paramètre"
+#: c-decl.c:5760 c-decl.c:5762
+msgid "%Jtype of \"%D\" defaults to \"int\""
+msgstr "%Jtype de « %D » est « int » par défaut"
+
+#: c-decl.c:5776
+msgid "%Jparameter \"%D\" has incomplete type"
+msgstr "%Jparamètre \"%D\" a un type incomplet"
+
+#: c-decl.c:5782
+msgid "%Jdeclaration for parameter \"%D\" but no such parameter"
+msgstr "%Jdéclaration du paramètre « %D » mais pas de tel paramètre"
-#: c-decl.c:6305
+#: c-decl.c:5834
msgid "number of arguments doesn't match prototype"
msgstr "le nombre d'arguments ne concorde pas avec celui du prototype"
-#: c-decl.c:6335
-#, c-format
-msgid "promoted argument `%s' doesn't match prototype"
-msgstr "argument promu « %s » ne concorde pas avec le prototype"
+#: c-decl.c:5835 c-decl.c:5866 c-decl.c:5873
+msgid "%Hprototype declaration"
+msgstr "%Hdéclaration de prototype"
-#: c-decl.c:6345
-#, c-format
-msgid "argument `%s' doesn't match prototype"
-msgstr "argument « %s » ne concorde pas avec le prototype"
+#: c-decl.c:5864
+msgid "promoted argument \"%D\" doesn't match prototype"
+msgstr "argument promu \"%D\" ne concorde pas avec le prototype"
+
+#: c-decl.c:5872
+msgid "argument \"%D\" doesn't match prototype"
+msgstr "argument \"%D\" ne concorde pas avec le prototype"
-#: c-decl.c:6518 cp/decl.c:15049
+#: c-decl.c:6069 cp/decl.c:10876
msgid "no return statement in function returning non-void"
msgstr "« return » manquant dans une fonction devant retourner une valeur"
-#: c-decl.c:6525
+#: c-decl.c:6076
msgid "this function may return with or without a value"
msgstr "cette fonction devrait finir en retournant ou non une valeur"
-#: c-decl.c:6729
-#, c-format
-msgid "size of return value of `%s' is %u bytes"
-msgstr "la taille de la valeur retournée par « %s » est %u octets"
-
-#: c-decl.c:6733
-#, c-format
-msgid "size of return value of `%s' is larger than %d bytes"
-msgstr "la taille de la valeur retournée par « %s » supérieure à %d octets"
-
#. If we get here, declarations have been used in a for loop without
#. the C99 for loop scope. This doesn't make much sense, so don't
#. allow it.
-#: c-decl.c:6791
-msgid "`for' loop initial declaration used outside C99 mode"
+#: c-decl.c:6175
+msgid "'for' loop initial declaration used outside C99 mode"
msgstr "déclaration initiale de la boucle « for » utilisée en dehors du mode C99"
-#: c-decl.c:6815
+#: c-decl.c:6199
#, c-format
-msgid "`struct %s' declared in `for' loop initial declaration"
+msgid "'struct %s' declared in 'for' loop initial declaration"
msgstr "« struct %s » déclarée dans la déclaration initiale de la boucle « for »"
-#: c-decl.c:6818
+#: c-decl.c:6202
#, c-format
-msgid "`union %s' declared in `for' loop initial declaration"
+msgid "'union %s' declared in 'for' loop initial declaration"
msgstr "« union %s » déclarée dans la déclaration initiale de la boucle « for »"
-#: c-decl.c:6821
+#: c-decl.c:6205
#, c-format
-msgid "`enum %s' declared in `for' loop initial declaration"
+msgid "'enum %s' declared in 'for' loop initial declaration"
msgstr "« enum %s » déclarée dans la déclaration initiale de la boucle « for »"
-#: c-decl.c:6829
-#, c-format
-msgid "declaration of non-variable `%s' in `for' loop initial declaration"
-msgstr "déclaration de « %s » (qui n'est pas une variable) dans la déclaration initiale de « for »"
+#: c-decl.c:6213
+msgid "%Jdeclaration of non-variable '%D' in 'for' loop initial declaration"
+msgstr "%Jdéclaration de « %D » (qui n'est pas une variable) dans la déclaration initiale de « for »"
-#: c-decl.c:6831
-#, c-format
-msgid "declaration of static variable `%s' in `for' loop initial declaration"
-msgstr "déclaration de la variable statique « %s » dans la déclaration initiale de la boucle « for »"
+#: c-decl.c:6216
+msgid "%Jdeclaration of static variable '%D' in 'for' loop initial declaration"
+msgstr "%Jdéclaration de la variable statique « %D » dans la déclaration initiale de la boucle « for »"
-#: c-decl.c:6833
-#, c-format
-msgid "declaration of `extern' variable `%s' in `for' loop initial declaration"
-msgstr "déclaration de la variable externe « %s » dans la déclaration initiale « for »"
+#: c-decl.c:6219
+msgid "%Jdeclaration of 'extern' variable '%D' in 'for' loop initial declaration"
+msgstr "%Jdéclaration de la variable externe « %D » dans la déclaration initiale « for »"
-#: c-format.c:109 c-format.c:191
-msgid "format string arg not a string type"
-msgstr "l'argument de la chaîne de format n'est pas de type « string »"
+#: c-decl.c:6532
+msgid "%Jredefinition of global '%D'"
+msgstr "%Jredéfinition globale de « %D »"
-#: c-format.c:124
-msgid "args to be formatted is not '...'"
-msgstr "les arguments devant être formatés ne sont pas « ... »"
+#: c-decl.c:6533
+msgid "%J'%D' previously defined here"
+msgstr "%J« %D » précédemment défini ici"
-#: c-format.c:133
-msgid "strftime formats cannot format arguments"
-msgstr "Les formats de strftime ne peuvent pas formater d'argument"
-
-#: c-format.c:168 c-format.c:270
+#: c-format.c:94 c-format.c:210
msgid "format string has invalid operand number"
msgstr "la chaîne de format a un nombre invalide d'opérandes"
-#: c-format.c:202
+#: c-format.c:111
msgid "function does not return string type"
msgstr "fonction ne retourne pas un type « string »"
-#: c-format.c:233
+#: c-format.c:140
+msgid "format string arg not a string type"
+msgstr "l'argument de la chaîne de format n'est pas de type « string »"
+
+#: c-format.c:190
msgid "unrecognized format specifier"
msgstr "spécificateur de format non reconnu"
-#: c-format.c:246
+#: c-format.c:203
#, c-format
msgid "`%s' is an unrecognized format function type"
msgstr "« %s » a un format de type de fonction non reconnu"
-#: c-format.c:280
+#: c-format.c:216
+msgid "'...' has invalid operand number"
+msgstr "« ... » a un nombre invalide d'opérandes"
+
+#: c-format.c:224
msgid "format string arg follows the args to be formatted"
msgstr "l'argument de la chaîne de format suit les arguments devant être formatés"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "` ' flag"
msgstr "fanion « »"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "the ` ' printf flag"
msgstr "le fanion « » de printf"
-#: c-format.c:602 c-format.c:673
+#: c-format.c:566 c-format.c:590 c-format.c:627 c-format.c:683
msgid "`+' flag"
msgstr "fanion « + »"
-#: c-format.c:602
+#: c-format.c:566 c-format.c:590 c-format.c:627
msgid "the `+' printf flag"
msgstr "le fanion « + » de printf"
-#: c-format.c:603 c-format.c:649
+#: c-format.c:567 c-format.c:591 c-format.c:628 c-format.c:659
msgid "`#' flag"
msgstr "fanion « # »"
-#: c-format.c:603
+#: c-format.c:567 c-format.c:591 c-format.c:628
msgid "the `#' printf flag"
msgstr "le fanion « # » de printf"
-#: c-format.c:604 c-format.c:647
+#: c-format.c:568 c-format.c:592 c-format.c:657
msgid "`0' flag"
msgstr "fanion « 0 »"
-#: c-format.c:604
+#: c-format.c:568 c-format.c:592
msgid "the `0' printf flag"
msgstr "le fanion « 0 » de printf"
-#: c-format.c:605 c-format.c:646 c-format.c:676
+#: c-format.c:569 c-format.c:593 c-format.c:656 c-format.c:686
msgid "`-' flag"
msgstr "fanion « - »"
-#: c-format.c:605
+#: c-format.c:569 c-format.c:593
msgid "the `-' printf flag"
msgstr "le fanion « - » de printf"
-#: c-format.c:606 c-format.c:630
+#: c-format.c:570 c-format.c:640
msgid "`'' flag"
msgstr "fanion « ' »"
-#: c-format.c:606
+#: c-format.c:570
msgid "the `'' printf flag"
msgstr "le fanion « ' » de printf"
-#: c-format.c:607 c-format.c:631
+#: c-format.c:571 c-format.c:641
msgid "`I' flag"
msgstr "fanion « I »"
-#: c-format.c:607
+#: c-format.c:571
msgid "the `I' printf flag"
msgstr "le fanion « I » de printf"
-#: c-format.c:608 c-format.c:628 c-format.c:650 c-format.c:677 c-format.c:1702
+#: c-format.c:572 c-format.c:594 c-format.c:638 c-format.c:660 c-format.c:687
+#: c-format.c:1802
msgid "field width"
msgstr "largeur de champ"
-#: c-format.c:608
+#: c-format.c:572 c-format.c:594
msgid "field width in printf format"
msgstr "largeur de champ dans le format de printf"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision"
msgstr "précision"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision in printf format"
msgstr "précision dans le format de printf"
-#: c-format.c:610 c-format.c:629 c-format.c:680
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630 c-format.c:639
+#: c-format.c:690
msgid "length modifier"
msgstr "modificateur de longueur"
-#: c-format.c:610
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630
msgid "length modifier in printf format"
msgstr "modificateur de longueur dans le format printf"
-#: c-format.c:626
+#: c-format.c:636
msgid "assignment suppression"
msgstr "suppression d'affectation"
-#: c-format.c:626
+#: c-format.c:636
msgid "the assignment suppression scanf feature"
msgstr "options de scanf pour la suppression d'affectation"
-#: c-format.c:627
+#: c-format.c:637
msgid "`a' flag"
msgstr "fanion « a »"
-#: c-format.c:627
+#: c-format.c:637
msgid "the `a' scanf flag"
msgstr "le fanion « a » de scanf"
-#: c-format.c:628
+#: c-format.c:638
msgid "field width in scanf format"
msgstr "largeur de champ dans le format de scanf"
-#: c-format.c:629
+#: c-format.c:639
msgid "length modifier in scanf format"
msgstr "modificateur de longueur dans le format de scanf"
-#: c-format.c:630
+#: c-format.c:640
msgid "the `'' scanf flag"
msgstr "la fanion « ' » de scanf"
-#: c-format.c:631
+#: c-format.c:641
msgid "the `I' scanf flag"
msgstr "le fanion « I » de scanf"
-#: c-format.c:645
+#: c-format.c:655
msgid "`_' flag"
msgstr "fanion « _ »"
-#: c-format.c:645
+#: c-format.c:655
msgid "the `_' strftime flag"
msgstr "le fanion « _ » de strftime"
-#: c-format.c:646
+#: c-format.c:656
msgid "the `-' strftime flag"
msgstr "le fanion « - » de strftime"
-#: c-format.c:647
+#: c-format.c:657
msgid "the `0' strftime flag"
msgstr "le fanion « 0 » de strftime"
-#: c-format.c:648 c-format.c:672
+#: c-format.c:658 c-format.c:682
msgid "`^' flag"
msgstr "fanion « ^ »"
-#: c-format.c:648
+#: c-format.c:658
msgid "the `^' strftime flag"
msgstr "la fanion « ^ » de strftime"
-#: c-format.c:649
+#: c-format.c:659
msgid "the `#' strftime flag"
msgstr "le fanion « # » de strftime"
-#: c-format.c:650
+#: c-format.c:660
msgid "field width in strftime format"
msgstr "largeur de champ dans le format de strftime"
-#: c-format.c:651
+#: c-format.c:661
msgid "`E' modifier"
msgstr "modificateur « E »"
-#: c-format.c:651
+#: c-format.c:661
msgid "the `E' strftime modifier"
msgstr "le modificateur « E » de strftime"
-#: c-format.c:652
+#: c-format.c:662
msgid "`O' modifier"
msgstr "modificateur « O »"
-#: c-format.c:652
+#: c-format.c:662
msgid "the `O' strftime modifier"
msgstr "le modificateur « O » de strftime"
-#: c-format.c:653
+#: c-format.c:663
msgid "the `O' modifier"
msgstr "le modificateur « O »"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character"
msgstr "caractère de remplissage"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character in strfmon format"
msgstr "caractère de remplissage dans le format de strfmon"
-#: c-format.c:672
+#: c-format.c:682
msgid "the `^' strfmon flag"
msgstr "le fanion « ^ » de strfmon"
-#: c-format.c:673
+#: c-format.c:683
msgid "the `+' strfmon flag"
msgstr "le fanion « + » de strfmon"
-#: c-format.c:674
+#: c-format.c:684
msgid "`(' flag"
msgstr "fanion « ( »"
-#: c-format.c:674
+#: c-format.c:684
msgid "the `(' strfmon flag"
msgstr "le fanion « ( » de strfmon"
-#: c-format.c:675
+#: c-format.c:685
msgid "`!' flag"
msgstr "fanion « ! »"
-#: c-format.c:675
+#: c-format.c:685
msgid "the `!' strfmon flag"
msgstr "le fanion « ! » de strfmon"
-#: c-format.c:676
+#: c-format.c:686
msgid "the `-' strfmon flag"
msgstr "le fanion « - » de strfmon"
-#: c-format.c:677
+#: c-format.c:687
msgid "field width in strfmon format"
msgstr "largeur de champ dans le format de strfmon"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision"
msgstr "précision de gauche"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision in strfmon format"
msgstr "précision de gauche dans le format de strfmon"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision"
msgstr "précision de droite"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision in strfmon format"
msgstr "précision de droite dans le format de strfmon"
-#: c-format.c:680
+#: c-format.c:690
msgid "length modifier in strfmon format"
msgstr "modificateur de longueur dans le format de strfmon"
-#: c-format.c:983
+#: c-format.c:1107
#, c-format
msgid "function might be possible candidate for `%s' format attribute"
msgstr "la fonction est peut être candidate pour l'attribut de format de « %s »"
-#: c-format.c:1107 c-format.c:1128 c-format.c:2112
+#: c-format.c:1223 c-format.c:1244 c-format.c:2212
msgid "missing $ operand number in format"
-msgstr "nombre manquant dans le format pour l'opérande $"
+msgstr "$ manquant dans le format pour l'opérande du nombre"
-#: c-format.c:1138
+#: c-format.c:1254
#, c-format
msgid "%s does not support %%n$ operand number formats"
msgstr "%s ne permet pas le format d'opérande de nombre %%n$"
-#: c-format.c:1145
+#: c-format.c:1261
msgid "operand number out of range in format"
msgstr "opérande de nombre au delà de la limite dans le format"
-#: c-format.c:1168
+#: c-format.c:1284
#, c-format
msgid "format argument %d used more than once in %s format"
msgstr "argument de format %d utilisé plus d'une fois dans le format %s"
-#: c-format.c:1218
+#: c-format.c:1331
#, c-format
msgid "format argument %d unused before used argument %d in $-style format"
msgstr "argument de format %d inutilisé avant l'utilisation de l'argument %d dans le format de style $"
-#: c-format.c:1322
+#: c-format.c:1429
msgid "format not a string literal, format string not checked"
msgstr "le format n'est pas une chaîne littérale, le format n'est pas vérifé"
-#: c-format.c:1336
+#: c-format.c:1443
msgid "format not a string literal and no format arguments"
msgstr "le format n'est pas une chaîne littérale et pas d'argument de format"
-#: c-format.c:1338
+#: c-format.c:1445
msgid "format not a string literal, argument types not checked"
msgstr "le format n'est pas une chaîne littérale, le type des arguments n'est pas vérifié"
-#: c-format.c:1351
+#: c-format.c:1458
msgid "too many arguments for format"
msgstr "trop d'arguments pour le format"
-#: c-format.c:1354
+#: c-format.c:1461
msgid "unused arguments in $-style format"
msgstr "arguments inutilisés dans le format de style $"
-#: c-format.c:1357
+#: c-format.c:1464
#, c-format
msgid "zero-length %s format string"
msgstr "chaîne de format de longueur nulle %s"
-#: c-format.c:1361
+#: c-format.c:1468
msgid "format is a wide character string"
-msgstr "le format est chaîne de caractères longs (wide characters)"
+msgstr "le format est une chaîne large de caractères"
-#: c-format.c:1364
+#: c-format.c:1471
msgid "unterminated format string"
msgstr "chaîne de format non terminée"
-#: c-format.c:1581
+#: c-format.c:1681
msgid "embedded `\\0' in format"
msgstr "« \\0 » inclu dans le format"
-#: c-format.c:1596
+#: c-format.c:1696
#, c-format
msgid "spurious trailing `%%' in format"
msgstr "des caractères « %% » douteux traînent dans le format"
-#: c-format.c:1635 c-format.c:1872
+#: c-format.c:1735 c-format.c:1972
#, c-format
msgid "repeated %s in format"
msgstr "%s répété dans le format"
-#: c-format.c:1648
+#: c-format.c:1748
msgid "missing fill character at end of strfmon format"
msgstr "caractère de remplissage manquant à la fin du format pour strfmon"
-#: c-format.c:1687 c-format.c:1786 c-format.c:2066 c-format.c:2119
+#: c-format.c:1787 c-format.c:1886 c-format.c:2166 c-format.c:2219
msgid "too few arguments for format"
msgstr "trop peu d'arguments dans le format"
-#: c-format.c:1728
+#: c-format.c:1828
#, c-format
msgid "zero width in %s format"
msgstr "largeur zéro dans le format %s"
-#: c-format.c:1747
+#: c-format.c:1847
#, c-format
msgid "empty left precision in %s format"
msgstr "précision de gauche vide dans le format %s"
-#: c-format.c:1801
+#: c-format.c:1901
msgid "field precision"
msgstr "champ de précision"
-#: c-format.c:1816
+#: c-format.c:1916
#, c-format
msgid "empty precision in %s format"
msgstr "précision vide dans le format %s"
-#: c-format.c:1856
+#: c-format.c:1956
#, c-format
msgid "%s does not support the `%s' %s length modifier"
msgstr "%s ne supporte pas « %s » %s comme modificateur de longueur"
-#: c-format.c:1906
+#: c-format.c:2006
msgid "conversion lacks type at end of format"
msgstr "il manque un type pour la conversion à la fin du format"
-#: c-format.c:1917
+#: c-format.c:2017
#, c-format
msgid "unknown conversion type character `%c' in format"
msgstr "type de caractère de conversion inconnu « %c » dans le format"
-#: c-format.c:1920
+#: c-format.c:2020
#, c-format
msgid "unknown conversion type character 0x%x in format"
msgstr "type de caractère de conversion inconnu 0x%x dans le format"
-#: c-format.c:1927
+#: c-format.c:2027
#, c-format
msgid "%s does not support the `%%%c' %s format"
msgstr "%s ne supporte pas le format « %%%c » %s"
-#: c-format.c:1943
+#: c-format.c:2043
#, c-format
msgid "%s used with `%%%c' %s format"
msgstr "%s utilisé avec le format « %%%c » %s"
-#: c-format.c:1952
+#: c-format.c:2052
#, c-format
msgid "%s does not support %s"
msgstr "%s ne supporte pas %s"
-#: c-format.c:1961
+#: c-format.c:2061
#, c-format
msgid "%s does not support %s with the `%%%c' %s format"
msgstr "%s ne supporte pas %s avec le format « %%%c » %s "
-#: c-format.c:1994
+#: c-format.c:2094
#, c-format
msgid "%s ignored with %s and `%%%c' %s format"
-msgstr "%s ignoré avec %s et le format «%%%c» %s"
+msgstr "%s ignoré avec %s et le format « %%%c » %s"
-#: c-format.c:1998
+#: c-format.c:2098
#, c-format
msgid "%s ignored with %s in %s format"
msgstr "%s ignoré avec %s dans le format %s"
-#: c-format.c:2004
+#: c-format.c:2104
#, c-format
msgid "use of %s and %s together with `%%%c' %s format"
msgstr "utilisation de %s et de %s ensemble dans le format « %%%c » %s"
-#: c-format.c:2008
+#: c-format.c:2108
#, c-format
msgid "use of %s and %s together in %s format"
msgstr "utilisation de %s et de %s ensemble dans le format %s"
-#: c-format.c:2027
+#: c-format.c:2127
#, c-format
msgid "`%%%c' yields only last 2 digits of year in some locales"
msgstr "« %%%c » laisse seulement les 2 derniers chiffres de l'année avec certaines locales"
-#: c-format.c:2030
+#: c-format.c:2130
#, c-format
msgid "`%%%c' yields only last 2 digits of year"
msgstr "« %%%c » laisse seulement les 2 derniers chiffres de l'année"
#. The end of the format string was reached.
-#: c-format.c:2046
+#: c-format.c:2146
#, c-format
msgid "no closing `]' for `%%[' format"
msgstr "pas de « ] » fermant pour le format « %%[ »"
-#: c-format.c:2059
+#: c-format.c:2159
#, c-format
msgid "use of `%s' length modifier with `%c' type character"
msgstr "utilisation du modificateur de longueur « %s » avec le type de caractère « %c »"
-#: c-format.c:2080
+#: c-format.c:2180
#, c-format
msgid "%s does not support the `%%%s%c' %s format"
-msgstr "%s ne supporte par le format «%%%s%c» %s"
+msgstr "%s ne supporte par le format « %%%s%c » %s"
-#: c-format.c:2095
+#: c-format.c:2195
msgid "operand number specified with suppressed assignment"
msgstr "nombre d'opérandes spécifié avec des affectations suprimées"
-#: c-format.c:2097
+#: c-format.c:2197
msgid "operand number specified for format taking no argument"
msgstr "nombre d'opérandes spécifié pour un format n'acceptant aucun argument"
-#: c-format.c:2211
+#: c-format.c:2309
#, c-format
msgid "writing through null pointer (arg %d)"
msgstr "écriture à travers un pointeur nul (arg %d)"
-#: c-format.c:2220
+#: c-format.c:2318
#, c-format
msgid "reading through null pointer (arg %d)"
msgstr "lecture à l'aide d'un pointeur nul (arg %d)"
-#: c-format.c:2240
+#: c-format.c:2338
#, c-format
msgid "writing into constant object (arg %d)"
msgstr "écriture dans un objet constant (arg %d)"
-#: c-format.c:2250
+#: c-format.c:2348
#, c-format
msgid "extra type qualifiers in format argument (arg %d)"
msgstr "qualificateur de type additionnel dans l'argument du format (arg %d)"
-#: c-format.c:2257
+#: c-format.c:2355
#, c-format
msgid "format argument is not a pointer (arg %d)"
msgstr "l'argument de format n'est pas un pointeur (arg %d)"
-#: c-format.c:2259
+#: c-format.c:2357
#, c-format
msgid "format argument is not a pointer to a pointer (arg %d)"
msgstr "l'argument de format n'est pas un pointeur de pointeur (arg %d)"
-#: c-format.c:2330
+#: c-format.c:2433
msgid "pointer"
msgstr "pointeur"
-#: c-format.c:2332
+#: c-format.c:2435
msgid "different type"
msgstr "type différent"
-#: c-format.c:2353
+#: c-format.c:2456
#, c-format
msgid "%s is not type %s (arg %d)"
msgstr "%s n'est pas de type %s (arg %d)"
-#: c-format.c:2356
+#: c-format.c:2459
#, c-format
msgid "%s format, %s arg (arg %d)"
msgstr "format %s, arg %s (arg %d)"
-#: c-lex.c:153
-msgid "YYDEBUG not defined"
-msgstr "YYDEBUG n'est pas défini"
+#: c-format.c:2704
+msgid "args to be formatted is not '...'"
+msgstr "les arguments devant être formatés ne sont pas « ... »"
+
+#: c-format.c:2713
+msgid "strftime formats cannot format arguments"
+msgstr "Les formats de strftime ne peuvent pas formater d'argument"
-#: c-lex.c:293
+#: c-incpath.c:68
+#, c-format
+msgid "ignoring duplicate directory \"%s\"\n"
+msgstr "le répertoire « %s » est ignoré car présent deux fois\n"
+
+#: c-incpath.c:71
+#, c-format
+msgid " as it is a non-system directory that duplicates a system directory\n"
+msgstr " car il s'agit d'un répertoire non système dupliquant un répertoire système\n"
+
+#: c-incpath.c:75
+#, c-format
+msgid "ignoring nonexistent directory \"%s\"\n"
+msgstr "le répertoire « %s » est ignoré car inexistant\n"
+
+#: c-incpath.c:273
+#, c-format
+msgid "#include \"...\" search starts here:\n"
+msgstr "la recherche pour #include \"...\" débute ici :\n"
+
+#: c-incpath.c:277
+#, c-format
+msgid "#include <...> search starts here:\n"
+msgstr "la recherche pour #include <...> débute ici:\n"
+
+#: c-incpath.c:282
+#, c-format
+msgid "End of search list.\n"
+msgstr "Fin de la liste de recherche.\n"
+
+#: c-lex.c:240
msgid "badly nested C headers from preprocessor"
msgstr "en-têtes C du préprocesseur incorrectement imbriqués"
-#: c-lex.c:336
+#: c-lex.c:281
#, c-format
msgid "ignoring #pragma %s %s"
msgstr "#pragma %s %s ignoré"
-#: c-lex.c:386
-#, c-format
-msgid "universal-character-name '\\U%08x' not valid in identifier"
-msgstr "nom-de-caractère-universel « \\U%08x » invalide dans l'identificcateur"
+#. ... or not.
+#: c-lex.c:385
+msgid "%Hstray '@' in program"
+msgstr "%H« @ » perdu dans le programme"
-#: c-lex.c:632
+#: c-lex.c:393
#, c-format
-msgid "universal-character-name '\\u%04x' not valid in identifier"
-msgstr "nom-de-caractère-universel « \\U%04x » invalide dans l'identificcateur"
+msgid "missing terminating %c character"
+msgstr "caractère %c de terminaison manquant"
-#: c-lex.c:695
+#: c-lex.c:395
#, c-format
msgid "stray '%c' in program"
msgstr "« %c » perdu dans le programme"
-#: c-lex.c:697
+#: c-lex.c:397
#, c-format
msgid "stray '\\%o' in program"
msgstr "« \\%o » perdu dans le programme"
-#: c-lex.c:854
+#: c-lex.c:535
msgid "this decimal constant is unsigned only in ISO C90"
msgstr "cette constante décimale est « unsigned » seulement en C90 ISO"
-#: c-lex.c:857
+#: c-lex.c:538
msgid "this decimal constant would be unsigned in ISO C90"
msgstr "cette constante décimale serait « unsigned » en C90 ISO"
-#: c-lex.c:873
+#: c-lex.c:554
#, c-format
msgid "integer constant is too large for \"%s\" type"
msgstr "constante entière trop grande pour le type « %s »"
-#: c-lex.c:941
+#: c-lex.c:620
#, c-format
msgid "floating constant exceeds range of \"%s\""
msgstr "constante en nombre flottant excédant les limites de « %s »"
-#: c-lex.c:977 cpplex.c:330 cpplex.c:668 cpplex.c:1942
-msgid "ignoring invalid multibyte character"
-msgstr "caractère multioctet invalide ignoré"
+#: c-lex.c:696
+msgid "traditional C rejects string constant concatenation"
+msgstr "le C traditionel rejette la concaténation de chaînes de constantes"
+
+#: c-objc-common.c:82
+msgid "%Jfunction '%F' can never be inlined because it is supressed using -fno-inline"
+msgstr "%Jfonction « %F » ne jamais être enlignée en raison de l'option -fno-inline qui en supprime la possibilité"
+
+#: c-objc-common.c:92
+msgid "%Jfunction '%F' can never be inlined because it might not be bound within this unit of translation"
+msgstr "%Jfonction « %F » ne jamais être enlignée parce qu'elle ne peut être lié dans cette unité de traduction"
-#: c-opts.c:355
+#: c-objc-common.c:100
+msgid "%Jfunction '%F' can never be inlined because it uses attributes conflicting with inlining"
+msgstr "%Jfonction « %F » ne jamais être enlignée parce qu'elle utilise un attribut en conflit avec l'enlignage"
+
+#: c-objc-common.c:115
+msgid "%Jfunction '%F' can never be inlined because it has pending sizes"
+msgstr "%Jfonction « %F » ne jamais être enlignée parce qu'elle a des tailles en attente"
+
+#: c-objc-common.c:128
+msgid "%Jnested function '%F' can never be inlined because it has possibly saved pending sizes"
+msgstr "%Jfonction imbriqué « %F » ne peut jamais être enlignée parce qu'ella possiblement sauvegardé des tailles en attente"
+
+#: c-opts.c:141
#, c-format
-msgid "missing argument to \"-%s\""
-msgstr "argument manquant à « -%s »"
+msgid "no class name specified with \"%s\""
+msgstr "aucun nom de classe spécifié avec \"%s\""
-#: c-opts.c:359
+#: c-opts.c:145
#, c-format
-msgid "no class name specified with \"-%s\""
-msgstr "aucun nom de classe spécifié avec « -%s »"
+msgid "assertion missing after \"%s\""
+msgstr "assertion manquante après \"%s\""
-#: c-opts.c:366
+#: c-opts.c:150
#, c-format
-msgid "missing filename after \"-%s\""
-msgstr "nom de fichier manquant après « -%s »"
+msgid "macro name missing after \"%s\""
+msgstr "nom de macro manquant après \"%s\""
-#: c-opts.c:371
+#: c-opts.c:157
#, c-format
-msgid "missing target after \"-%s\""
-msgstr "cible manquante après « -%s »"
+msgid "missing path after \"%s\""
+msgstr "cible manquante après \"%s\""
-#: c-opts.c:505
+#: c-opts.c:166
#, c-format
-msgid "options array incorrectly sorted: %s is before %s"
-msgstr "tableau des options mal trié : %s est avant %s"
+msgid "missing filename after \"%s\""
+msgstr "nom de fichier manquant après \"%s\""
-#: c-opts.c:550
+#: c-opts.c:171
#, c-format
-msgid "too many filenames given. Type %s --help for usage"
-msgstr "trop de noms de fichiers. Taper %s --help pour en connaître l'usage"
+msgid "missing makefile target after \"%s\""
+msgstr "cible manquante dans le makefile après \"%s\""
-#: c-opts.c:937
-msgid "-Wno-strict-prototypes is not supported in C++"
-msgstr "-Wno-strict-prototypes n'est pas permis en C++"
+#: c-opts.c:291
+msgid "-I- specified twice"
+msgstr "-I- spécifié deux fois"
-#: c-opts.c:1017
+#: c-opts.c:692
#, c-format
msgid "switch \"%s\" is no longer supported"
msgstr "l'option « %s » n'est plus supportée"
-#: c-opts.c:1033
-#, c-format
-msgid "switch \"%s\" is deprecated, please see documentation for details"
-msgstr "l'option %s est obsolète, reportez-vous à la documentation pour les détails"
-
-#: c-opts.c:1153
-msgid "-fhandle-exceptions has been renamed to -fexceptions (and is now on by default)"
+#: c-opts.c:816
+msgid "-fhandle-exceptions has been renamed -fexceptions (and is now on by default)"
msgstr "-fhandle-exceptions a été renommé -fexceptions (et est maintenant utilisé par défaut)"
-#: c-opts.c:1273
+#: c-opts.c:982
msgid "output filename specified twice"
msgstr "nom du fichier de sortie spécifié deux fois"
-#: c-opts.c:1387
+#: c-opts.c:1106
msgid "-Wformat-y2k ignored without -Wformat"
msgstr "-Wformat-y2k ignorée sans -Wformat"
-#: c-opts.c:1389
+#: c-opts.c:1108
msgid "-Wformat-extra-args ignored without -Wformat"
msgstr "-Wformat-extra-args ignorée sans -Wformat"
-#: c-opts.c:1391
+#: c-opts.c:1110
msgid "-Wformat-zero-length ignored without -Wformat"
msgstr "-Wformat-zero-length ignorée sans -Wformat"
-#: c-opts.c:1393
+#: c-opts.c:1112
msgid "-Wformat-nonliteral ignored without -Wformat"
msgstr "-Wformat-nonliteral ignorée sans -Wformat"
-#: c-opts.c:1395
+#: c-opts.c:1114
msgid "-Wformat-security ignored without -Wformat"
msgstr "-Wformat-security ignorée sans -Wformat"
-#: c-opts.c:1397
+#: c-opts.c:1116
msgid "-Wmissing-format-attribute ignored without -Wformat"
msgstr "-Wmissing-format-attribute ignorée sans -Wformat"
-#: c-opts.c:1419
+#: c-opts.c:1130
#, c-format
-msgid "opening output file %s"
-msgstr "ouverture du fichier de sortie %s"
+msgid "opening output file %s: %m"
+msgstr "ouverture du fichier de sortie %s: %m"
+
+#: c-opts.c:1135
+#, c-format
+msgid "too many filenames given. Type %s --help for usage"
+msgstr "trop de noms de fichiers. Taper %s --help pour en connaître l'usage"
+
+#: c-opts.c:1213
+msgid "YYDEBUG not defined"
+msgstr "YYDEBUG n'est pas défini"
-#: c-opts.c:1474
+#: c-opts.c:1260
#, c-format
-msgid "opening dependency file %s"
-msgstr "ouverture du fichier de dépendances %s"
+msgid "opening dependency file %s: %m"
+msgstr "ouverture du fichier de dépendances %s: %m"
-#: c-opts.c:1484
+#: c-opts.c:1270
#, c-format
-msgid "closing dependency file %s"
-msgstr "fermeture du fichier de dépendances %s"
+msgid "closing dependency file %s: %m"
+msgstr "fermeture du fichier de dépendances %s: %m"
-#: c-opts.c:1487
+#: c-opts.c:1273
#, c-format
-msgid "when writing output to %s"
-msgstr "lors de l'écriture de la sortie dans %s"
+msgid "when writing output to %s: %m"
+msgstr "lors de l'écriture de la sortie dans %s: %m"
-#: c-opts.c:1567
+#: c-opts.c:1343
msgid "to generate dependencies you must specify either -M or -MM"
msgstr "pour générer les dépendances, vous devez spécifier -M ou -MM"
-#: c-opts.c:1715
-#, fuzzy, c-format
-msgid "\"-%c%s%s\" is valid for %s but not for %s"
-msgstr "« -%s » est valide pour %s mais pas pour %s"
-
-#. To keep the lines from getting too long for some compilers, limit
-#. to about 500 characters (6 lines) per chunk.
-#: c-opts.c:1726
-msgid ""
-"Switches:\n"
-" -include <file> Include the contents of <file> before other files\n"
-" -imacros <file> Accept definition of macros in <file>\n"
-" -iprefix <path> Specify <path> as a prefix for next two options\n"
-" -iwithprefix <dir> Add <dir> to the end of the system include path\n"
-" -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
-" -isystem <dir> Add <dir> to the start of the system include path\n"
-msgstr ""
-"Options:\n"
-" -include <fichier> Inclure le contenu du <fichier> avant d'autres fichiers\n"
-" -imacros <fichier> Accepter la définition de macros dans le <fichier>\n"
-" -iprefix <chemin> Spécifier le <chemin> comme un préfixe aux prochaines deux options\n"
-" -iwithprefix <rép> Ajouter le <rép>ertoire à la fin du chemin d'inclusion système\n"
-" -iwithprefixbefore <rép> Ajouter le <rép>ertoire à la fin du chemin d'inclusion principal\n"
-" -isystem <rép> Ajouter le <rép>ertoire au début du chemin d'inclusion système\n"
-
-#: c-opts.c:1735
-msgid ""
-" -idirafter <dir> Add <dir> to the end of the system include path\n"
-" -I <dir> Add <dir> to the end of the main include path\n"
-" -I- Fine-grained include path control; see info docs\n"
-" -nostdinc Do not search system include directories\n"
-" (dirs specified with -isystem will still be used)\n"
-" -nostdinc++ Do not search system include directories for C++\n"
-" -o <file> Put output into <file>\n"
-msgstr ""
-" -idirafter <rép> Ajouter le <rép>ertoire à la fin du chemin d'inclusion système\n"
-" -I <rép> Ajouter le <rép>ertoire à la fin du chemin d'inclusion principal\n"
-" -I- Raffiner le contrôle du chemin d'inclusion; consulter la doc\n"
-" -nostdinc Ne pas rechercher dans les répertoires d'inclusion système\n"
-" (les rép spécifiés avec -isystem seront encore utilisés)\n"
-" -nostdinc++ Ne pas rechercher dans les répertoires d'inclusion système pour C++\n"
-" -o <fichier> Produire la sortie dans le <fichier>\n"
-
-#: c-opts.c:1744
-msgid ""
-" -trigraphs Support ISO C trigraphs\n"
-" -std=<std name> Specify the conformance standard; one of:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Inhibit warning messages\n"
-" -W[no-]trigraphs Warn if trigraphs are encountered\n"
-" -W[no-]comment{s} Warn if one comment starts inside another\n"
-msgstr ""
-" -trigraphs Permettre les trigraphes C ISO\n"
-" -std=<standard> Spécifier le <standard> de conformité à utiliser; soit:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Inhiber les messages d'avertissement\n"
-" -W[no-]trigraphs Avertir [ou non] si des trigraphes sont rencontrés\n"
-" -W[no-]comment{s} Avertir [ou non] si un commentaire débute à l'intérieur \n"
-" d'un autre\n"
-
-#: c-opts.c:1753
-msgid ""
-" -W[no-]traditional Warn about features not present in traditional C\n"
-" -W[no-]undef Warn if an undefined macro is used by #if\n"
-" -W[no-]import Warn about the use of the #import directive\n"
-msgstr ""
-" -W[no-]traditional Avertir [ou non] à propos des fonctionnalités absentes\n"
-" en C traditionnel\n"
-" -W[no-]undef Avertir [ou non] à propos des macros utilisées dans des\n"
-" #if sans être définies\n"
-" -W[no-]import Avertir [ou non] de l'utilisation de la directive #import\n"
-
-#: c-opts.c:1758
-msgid ""
-" -W[no-]error Treat all warnings as errors\n"
-" -W[no-]system-headers Do not suppress warnings from system headers\n"
-" -W[no-]all Enable most preprocessor warnings\n"
-msgstr ""
-" -W[no-]error Changer [ou non] les avertissements en erreurs\n"
-" -W[no-]system-headers Supprimer [ou non] les avertissements à propos des \n"
-" en-têtes système\n"
-" -W[no-]all Générer [ou non] la plupart des avertissements du\n"
-" préprocesseur\n"
+#: c-opts.c:1403
+msgid "<built-in>"
+msgstr "<interne>"
-#: c-opts.c:1763
-msgid ""
-" -M Generate make dependencies\n"
-" -MM As -M, but ignore system header files\n"
-" -MD Generate make dependencies and compile\n"
-" -MMD As -MD, but ignore system header files\n"
-" -MF <file> Write dependency output to the given file\n"
-" -MG Treat missing header file as generated files\n"
-msgstr ""
-" -M Générer les dépendances pour make\n"
-" -MM Comme -M, en ignorant les fichiers d'en-têtes système\n"
-" -MD Générer les dépendances pour make et compiler\n"
-" -MMD Comme -MD, en ignorant les fichiers d'en-têtes système\n"
-" -MF <fichier> Écrire les dépendances dans le <fichier>\n"
-" -MG Traiter les en-têtes manquants comme des fichiers générés\n"
-
-#: c-opts.c:1771
-msgid ""
-" -MP\t\t\t Generate phony targets for all headers\n"
-" -MQ <target> Add a MAKE-quoted target\n"
-" -MT <target> Add an unquoted target\n"
-msgstr ""
-" -MP\t\t\t Générer des cibles factices pour tous les en-têtes\n"
-" -MQ <target> Ajouter une cible protégée pour MAKE\n"
-" -MT <target> Ajouter une cible non protégée\n"
+#: c-opts.c:1418
+msgid "<command line>"
+msgstr "<ligne de commande>"
-#: c-opts.c:1776
-msgid ""
-" -D<macro> Define a <macro> with string '1' as its value\n"
-" -D<macro>=<val> Define a <macro> with <val> as its value\n"
-" -A<question>=<answer> Assert the <answer> to <question>\n"
-" -A-<question>=<answer> Disable the <answer> to <question>\n"
-" -U<macro> Undefine <macro> \n"
-" -v Display the version number\n"
-msgstr ""
-" -D<macro> Définir une <macro> avec la chaîne « 1 » pour valeur\n"
-" -D<macro>=<valeur> Définir une <macro> de <valeur>\n"
-" -A<question>=(<réponse>) Créer une assertion <question>=<réponse>\n"
-" -A-<question>=(<réponse>) Dissocier la <réponse> à la <question>\n"
-" -U<macro> Oublier la définition de la <macro> \n"
-" -v Afficher le numéro de version\n"
-
-#: c-opts.c:1784
-msgid ""
-" -H Print the name of header files as they are used\n"
-" -C Do not discard comments\n"
-" -dM Display a list of macro definitions active at end\n"
-" -dD Preserve macro definitions in output\n"
-" -dN As -dD except that only the names are preserved\n"
-" -dI Include #include directives in the output\n"
-msgstr ""
-" -H Afficher le nom des fichiers en-tête tel qu'utilisés\n"
-" -C Ne pas mettre de côté les commantaires\n"
-" -dM Afficher la liste des définitions de macro actives à la fin\n"
-" -dD Préserver les définitions de macros dans la sortie\n"
-" -dN Comme -dD, mais seuls les noms sont préservés\n"
-" -dI Inclure la directive #include dans la sortie\n"
-
-#: c-opts.c:1792
-msgid ""
-" -f[no-]preprocessed Treat the input file as already preprocessed\n"
-" -ftabstop=<number> Distance between tab stops for column reporting\n"
-" -P Do not generate #line directives\n"
-" -remap Remap file names when including files\n"
-" --help Display this information\n"
-msgstr ""
-" -f[no-]preprocessed Considérer [ou non] que le fichier d'entrée est \n"
-" déjà pré-traité\n"
-" -ftabstop=<nombre> Largeur des tabulations pour indiquer la colonne\n"
-" -P Ne pas générer des directives #line\n"
-" -remap Refaire la table des noms de fichiers lors de\n"
-" l'inclusion de fichiers\n"
-" --help Afficher cet l'aide-mémoire\n"
+#: c-opts.c:1502
+msgid "too late for # directive to set debug directory"
+msgstr "il est trop tard pour la directive # pour fixer un répertoire de mise au point"
#. Like YYERROR but do call yyerror.
-#: c-parse.y:55 parse.y:48 objc-parse.y:55
+#: c-parse.y:54 c-parse.c:5381 gengtype-yacc.c:1514 java/parse-scan.c:3063
+#: java/parse.c:6067 objc/objc-parse.y:54 objc/objc-parse.c:6644
msgid "syntax error"
msgstr "erreur de syntaxe"
# FIXME
-#: /usr/share/bison/bison.simple:179
+#: c-parse.c:2118 gengtype-yacc.c:545 java/parse-scan.c:1932 java/parse.c:2875
+#: objc/objc-parse.c:2717
msgid "syntax error: cannot back up"
msgstr "erreur de syntaxe : impossible de reculer"
-#: c-parse.y:325 objc-parse.y:346
+#: c-parse.y:320 objc/objc-parse.y:344
msgid "ISO C forbids an empty source file"
-msgstr "le C ISO interdit un fichier source vide"
+msgstr "ISO C interdit un fichier source vide"
-#: c-parse.y:366 c-typeck.c:6916 objc-parse.y:388
+#: c-parse.y:349 c-typeck.c:6217 objc/objc-parse.y:374
msgid "argument of `asm' is not a constant string"
msgstr "l'argument de « asm » n'est pas une chaîne de constante"
-#: c-parse.y:374 objc-parse.y:396
+#: c-parse.y:357 objc/objc-parse.y:382
msgid "ISO C forbids data definition with no type or storage class"
-msgstr "le C ISO interdit la définition de données sans type ni classe de stockage"
+msgstr "ISO C interdit la définition de données sans type ni classe de stockage"
-#: c-parse.y:376 objc-parse.y:398
+#: c-parse.y:359 objc/objc-parse.y:384
msgid "data definition has no type or storage class"
msgstr "la définition de données n'a pas de type ni de classe de stockage"
-#: c-parse.y:389 objc-parse.y:411
+#: c-parse.y:372 objc/objc-parse.y:397
msgid "ISO C does not allow extra `;' outside of a function"
-msgstr "le C ISO ne permet pas de « ; » additionnel en dehors d'une fonction"
+msgstr "ISO C ne permet pas de « ; » additionnel en dehors d'une fonction"
-#: c-parse.y:449 cppexp.c:1312
+#: c-parse.y:429 cppexp.c:1253
msgid "traditional C rejects the unary plus operator"
msgstr "le C traditionnel rejette le plus unaire"
-#: c-parse.y:496 objc-parse.y:518
+#: c-parse.y:476 objc/objc-parse.y:501
msgid "`sizeof' applied to a bit-field"
msgstr "« sizeof » appliqué à un champ de bits"
-#: c-parse.y:583 objc-parse.y:605
+#: c-parse.y:563 objc/objc-parse.y:588
msgid "ISO C forbids omitting the middle term of a ?: expression"
-msgstr "le C ISO interdit l'omission du terme central de l'expression ?:"
+msgstr "ISO C interdit l'omission du terme central de l'expression ?:"
# FIXME
-#: c-parse.y:632 objc-parse.y:654
+#: c-parse.y:611 objc/objc-parse.y:636
msgid "ISO C89 forbids compound literals"
-msgstr "le C89 ISO interdit les mots composés"
+msgstr "ISO C89 interdit les mots composés"
-#: c-parse.y:646 objc-parse.y:668
+#: c-parse.y:625 objc/objc-parse.y:650
msgid "ISO C forbids braced-groups within expressions"
-msgstr "le C ISO interdit les groupes d'accolades à l'intérieur d'expressions"
+msgstr "ISO C interdit les groupes d'accolades à l'intérieur d'expressions"
-#: c-parse.y:677 objc-parse.y:699
+#: c-parse.y:653 objc/objc-parse.y:678
msgid "first argument to __builtin_choose_expr not a constant"
msgstr "le premier argument de « __builtin_choose_expr » n'est pas une constante"
-#: c-parse.y:721 objc-parse.y:767
+#: c-parse.y:696 objc/objc-parse.y:737
msgid "traditional C rejects ISO C style function definitions"
-msgstr "le C traditionel rejette les définitions de fonction au style C ISO"
-
-#: c-parse.y:985 c-parse.y:991 c-parse.y:997 c-parse.y:1003 c-parse.y:1024
-#: c-parse.y:1030 c-parse.y:1036 c-parse.y:1042 c-parse.y:1075 c-parse.y:1081
-#: c-parse.y:1087 c-parse.y:1093 c-parse.y:1138 c-parse.y:1144 c-parse.y:1150
-#: c-parse.y:1156 parse.y:1933 parse.y:1940 parse.y:1975 objc-parse.y:1031
-#: objc-parse.y:1037 objc-parse.y:1043 objc-parse.y:1049 objc-parse.y:1070
-#: objc-parse.y:1076 objc-parse.y:1082 objc-parse.y:1088 objc-parse.y:1121
-#: objc-parse.y:1127 objc-parse.y:1133 objc-parse.y:1139 objc-parse.y:1184
-#: objc-parse.y:1190 objc-parse.y:1196 objc-parse.y:1202
+msgstr "le C traditionel rejette les définitions de fonction de style ISO C"
+
+#: c-parse.y:699 c-parse.y:705 objc/objc-parse.y:740 objc/objc-parse.y:746
+msgid "old-style parameter declaration"
+msgstr "déclaration de paramètre d'un style désuet"
+
+#: c-parse.y:967 c-parse.y:973 c-parse.y:979 c-parse.y:985 c-parse.y:1006
+#: c-parse.y:1012 c-parse.y:1018 c-parse.y:1024 c-parse.y:1057 c-parse.y:1063
+#: c-parse.y:1069 c-parse.y:1075 c-parse.y:1120 c-parse.y:1126 c-parse.y:1132
+#: c-parse.y:1138 objc/objc-parse.y:1008 objc/objc-parse.y:1014
+#: objc/objc-parse.y:1020 objc/objc-parse.y:1026 objc/objc-parse.y:1047
+#: objc/objc-parse.y:1053 objc/objc-parse.y:1059 objc/objc-parse.y:1065
+#: objc/objc-parse.y:1098 objc/objc-parse.y:1104 objc/objc-parse.y:1110
+#: objc/objc-parse.y:1116 objc/objc-parse.y:1161 objc/objc-parse.y:1167
+#: objc/objc-parse.y:1173 objc/objc-parse.y:1179
#, c-format
msgid "`%s' is not at beginning of declaration"
msgstr "« %s » n'est pas au début de la déclaration"
-#: c-parse.y:1441 objc-parse.y:1496
+#: c-parse.y:1300 objc/objc-parse.y:1350
+msgid "`typeof' applied to a bit-field"
+msgstr "« typeof » appliqué à un champ de bits"
+
+#: c-parse.y:1427 objc/objc-parse.y:1477
msgid "ISO C forbids empty initializer braces"
-msgstr "le C ISO interdit d'initialiser avec des accolades vides"
+msgstr "ISO C interdit d'initialiser avec des accolades vides"
-#: c-parse.y:1455 objc-parse.y:1510
+#: c-parse.y:1441 objc/objc-parse.y:1491
msgid "ISO C89 forbids specifying subobject to initialize"
-msgstr "le C89 ISO interdit de spécifier des sous-objets à initialiser"
+msgstr "ISO C89 interdit de spécifier des sous-objets à initialiser"
-#: c-parse.y:1458 objc-parse.y:1513
+#: c-parse.y:1444 objc/objc-parse.y:1494
msgid "obsolete use of designated initializer without `='"
msgstr "utilisation obsolète d'une initialisation désignée sans « = »"
-#: c-parse.y:1462 objc-parse.y:1517
+#: c-parse.y:1448 objc/objc-parse.y:1498
msgid "obsolete use of designated initializer with `:'"
msgstr "utilisation obsolète d'une initialisation désignée avec « : »"
-#: c-parse.y:1489 objc-parse.y:1544
+#: c-parse.y:1475 objc/objc-parse.y:1525
msgid "ISO C forbids specifying range of elements to initialize"
-msgstr "le C ISO interdit de spécifier les bornes des éléments à initaliser"
+msgstr "ISO C interdit de spécifier les bornes des éléments à initaliser"
-#: c-parse.y:1497 c-parse.y:1528 objc-parse.y:1552 objc-parse.y:1583
+#: c-parse.y:1483 c-parse.y:1514 objc/objc-parse.y:1533 objc/objc-parse.y:1564
msgid "ISO C forbids nested functions"
-msgstr "le C ISO interdit les fonctions imbriquées"
+msgstr "ISO C interdit les fonctions imbriquées"
-#: c-parse.y:1703 objc-parse.y:1760
+#: c-parse.y:1691 objc/objc-parse.y:1743
msgid "ISO C forbids forward references to `enum' types"
-msgstr "le C ISO interdit les références anticipée vers un type « enum »"
+msgstr "ISO C interdit les références anticipée vers un type « enum »"
-#: c-parse.y:1715 parse.y:2411 objc-parse.y:1772
+#: c-parse.y:1703 cp/parser.c:9282 objc/objc-parse.y:1755
msgid "comma at end of enumerator list"
msgstr "virgule à la fin de liste d'énumerateurs"
-#: c-parse.y:1723 objc-parse.y:1780
+#: c-parse.y:1723 objc/objc-parse.y:1775
msgid "no semicolon at end of struct or union"
msgstr "pas de point virgule à la fin de la structure ou de l'union"
-#: c-parse.y:1732 objc-parse.y:1789 objc-parse.y:2864
+#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846
msgid "extra semicolon in struct or union specified"
msgstr "point virgule superflu dans la structure ou dans l'union"
-#: c-parse.y:1745 objc-parse.y:1816
+#: c-parse.y:1745 objc/objc-parse.y:1800
msgid "ISO C doesn't support unnamed structs/unions"
-msgstr "le C ISO ne permet pas les structures et unions sans nom"
+msgstr "ISO C ne permet pas les structures et unions sans nom"
-#: c-parse.y:1754 objc-parse.y:1825
+#: c-parse.y:1754 objc/objc-parse.y:1809
msgid "ISO C forbids member declarations with no members"
-msgstr "le C ISO interdit les déclarations de membre sans aucun membre"
+msgstr "ISO C interdit les déclarations de membre sans aucun membre"
-#: c-parse.y:1913 objc-parse.y:1984
-msgid "deprecated use of label at end of compound statement"
-msgstr "utilisation obsolète d'étiquette à la fin d'une déclaration composée"
+#: c-parse.y:1915 objc/objc-parse.y:1970
+msgid "label at end of compound statement"
+msgstr "étiquette à la fin d'une déclaration composée"
-#: c-parse.y:1930 objc-parse.y:2001
-msgid "ISO C89 forbids mixed declarations and code"
-msgstr "le C89 ISO interdit les déclarations mélangés au code"
+#: c-parse.y:1934 objc/objc-parse.y:1989
+msgid "ISO C90 forbids mixed declarations and code"
+msgstr "ISO C89 interdit les mélanges de déclarations et de code"
-#: c-parse.y:2005 objc-parse.y:2080
+#: c-parse.y:2012 objc/objc-parse.y:2069
msgid "ISO C forbids label declarations"
-msgstr "le C ISO interdit la déclaration d'étiquette"
+msgstr "ISO C interdit la déclaration d'étiquette"
-#: c-parse.y:2055 parse.y:1638 objc-parse.y:2130
+#: c-parse.y:2062 objc/objc-parse.y:2119
msgid "braced-group within expression allowed only inside a function"
msgstr "groupe entre accolades à l'intérieur d'expression permis seulement à l'intérieur d'une fonction"
-#: c-parse.y:2182 objc-parse.y:2257
+#: c-parse.y:2184 objc/objc-parse.y:2241
msgid "empty body in an else-statement"
msgstr "le corps du else est vide"
-#: c-parse.y:2303 objc-parse.y:2378
-msgid "ISO C forbids `goto *expr;'"
-msgstr "le C ISO interdit « goto *expr; »"
+#: c-parse.y:2192 objc/objc-parse.y:2249
+msgid "%Hempty body in an if-statement"
+msgstr "%Hle corps de la déclaration du if est vide"
-#: c-parse.y:2403 objc-parse.y:2478
-msgid "ISO C forbids forward parameter declarations"
-msgstr "le C ISO interdit la déclaration anticipée de paramètres"
+#: c-parse.y:2272 cp/parser.c:6028 objc/objc-parse.y:2329
+msgid "break statement not within loop or switch"
+msgstr "mot-clé « break » à l'extérieur de toute boucle ou « switch »"
+
+#: c-parse.y:2281 cp/parser.c:6039 objc/objc-parse.y:2338
+msgid "continue statement not within a loop"
+msgstr "mot-clé « continue » à l'extérieur de toute boucle"
+
+#: c-parse.y:2323 objc/objc-parse.y:2380
+msgid "ISO C forbids `goto *expr;'"
+msgstr "ISO C interdit « goto *expr; »"
#. Gcc used to allow this as an extension. However, it does
#. not work for all targets, and thus has been disabled.
@@ -2627,1296 +2523,1388 @@ msgstr "le C ISO interdit la déclaration anticipée de paramètres"
#. it caused problems with the code in expand_builtin which
#. tries to verify that BUILT_IN_NEXT_ARG is being used
#. correctly.
-#: c-parse.y:2429 objc-parse.y:2504
+#: c-parse.y:2440 objc/objc-parse.y:2548
msgid "ISO C requires a named argument before `...'"
-msgstr "le C ISO requiert un argument nommé devant « ... »"
+msgstr "ISO C requiert un argument nommé devant « ... »"
-#: c-parse.y:2526 objc-parse.y:2601
+#: c-parse.y:2538 objc/objc-parse.y:2646
msgid "`...' in old-style identifier list"
msgstr "« ... » dans une liste d'identificateurs de style ancien"
-#: /usr/share/bison/bison.simple:795
-msgid "parse error; also virtual memory exhausted"
+#: c-parse.c:5377 gengtype-yacc.c:1510 java/parse-scan.c:3059
+#: java/parse.c:6063 objc/objc-parse.c:6640
+msgid "syntax error; also virtual memory exhausted"
msgstr "erreur d'analyse syntaxique; de plus la mémoire virtuelle est épuisée"
-#: /usr/share/bison/bison.simple:799 cp/spew.c:364
-msgid "parse error"
-msgstr "erreur d'analyse syntaxique"
-
-#: /usr/share/bison/bison.simple:924
+#: c-parse.c:5495 gengtype-yacc.c:1628 java/parse-scan.c:3177
+#: java/parse.c:6181 objc/objc-parse.c:6758
msgid "parser stack overflow"
msgstr "débordement de la pile de l'analyseur syntaxique"
-#: c-parse.y:2838 cp/spew.c:1525 objc-parse.y:3537
+#: c-parse.y:2968 objc/objc-parse.y:3663
#, c-format
-msgid "%s at end of input"
-msgstr "%s à la fin de l'entrée"
+msgid "syntax error at '%s' token"
+msgstr "erreur de syntaxe à l'élément lexical « %s »"
-#: c-parse.y:2844 cp/spew.c:1533 objc-parse.y:3543
+#: c-pch.c:112
#, c-format
-msgid "%s before %s'%c'"
-msgstr "%s avant %s« %c »"
+msgid "can't create precompiled header %s: %m"
+msgstr "ne peut créer une en-tête précompilée %s: %m"
-#: c-parse.y:2846 cp/spew.c:1535 objc-parse.y:3545
+#: c-pch.c:132
#, c-format
-msgid "%s before %s'\\x%x'"
-msgstr "%s avant %s'\\x%x'"
+msgid "can't write to %s: %m"
+msgstr "ne peut écrire dans %s: %m"
-#: c-parse.y:2850 cp/spew.c:1542 objc-parse.y:3549
+#: c-pch.c:138
#, c-format
-msgid "%s before string constant"
-msgstr "%s avant une chaîne constante"
+msgid "`%s' is not a valid output file"
+msgstr "« %s » n'est pas un nom de fichier valide"
-#: c-parse.y:2852 cp/spew.c:1544 objc-parse.y:3551
+#: c-pch.c:167 c-pch.c:183 c-pch.c:195
#, c-format
-msgid "%s before numeric constant"
-msgstr "%s avant une constante numérique"
+msgid "can't write %s: %m"
+msgstr "ne peut écrire dans %s: %m"
-#: c-parse.y:2854 objc-parse.y:3553
+#: c-pch.c:173
#, c-format
-msgid "%s before \"%s\""
-msgstr "%s avant « %s »"
+msgid "can't seek in %s: %m"
+msgstr "ne peut se positionner dans %s: %m"
-#: c-parse.y:2856 objc-parse.y:3555
+#: c-pch.c:181 c-pch.c:221 c-pch.c:249 c-pch.c:254 c-pch.c:324
#, c-format
-msgid "%s before '%s' token"
-msgstr "%s avant un élément lexical « %s »"
+msgid "can't read %s: %m"
+msgstr "ne peut lire %s: %m"
-#: c-parse.y:2921
-msgid "traditional C rejects string concatenation"
-msgstr "le C traditionel rejette la concaténation de chaînes"
+#: c-pch.c:234
+#, c-format
+msgid "%s: not compatible with this GCC version"
+msgstr "%s: n'est pas compatible avec cette version de GCC"
-#: c-parse.y:3047 objc-parse.y:3779
+#. It's a PCH for the wrong language.
+#: c-pch.c:237
#, c-format
-msgid "syntax error at '%s' token"
-msgstr "erreur de syntaxe à l'élément lexical « %s »"
+msgid "%s: not for %s"
+msgstr "%s: non pour %s"
+
+#. Not any kind of PCH.
+#: c-pch.c:241
+#, c-format
+msgid "%s: not a PCH file"
+msgstr "%s: n'est pas un fichier PCH"
+
+#: c-pch.c:260
+#, c-format
+msgid "%s: created on host `%.*s', but used on host `%s'"
+msgstr "%s: créé sur l'hôte « %.*s », mais utilisé sur l'hôte « %s »"
+
+#: c-pch.c:270
+#, c-format
+msgid "%s: created for target `%.*s', but used for target `%s'"
+msgstr "%s: créé pour la cible « %.*s », mais utilisé pour la cible « %s »"
+
+#: c-pch.c:283
+#, c-format
+msgid "%s: created by version `%.*s', but this is version `%s'"
+msgstr "%s: créé pour la version « %.*s », mais utilisé avec la version « %s »"
+
+#: c-pch.c:299
+#, c-format
+msgid "%s: created with -g%s, but used with -g%s"
+msgstr "%s: créé avec -g%s, mais utilisé avec -g%s"
+
+#: c-pch.c:313
+#, c-format
+msgid "%s: had text segment at different address"
+msgstr "%s: a un segment texte à une adresse différente"
+
+#: c-pch.c:330 cpperror.c:176 gcc.c:6547
+#, c-format
+msgid "%s: %s"
+msgstr "%s : %s"
+
+# I18N
+#: c-pch.c:361
+msgid "calling fdopen"
+msgstr "appel de fdopen()"
+
+#: c-pch.c:369 c-pch.c:381
+msgid "reading"
+msgstr "en lecture"
-#: c-pragma.c:107
+#: c-pragma.c:106
msgid "#pragma pack (pop) encountered without matching #pragma pack (push, <n>)"
msgstr "#pragma pack (pop) rencontré sans #pragma pack (push, <n>) correspondant"
-#: c-pragma.c:125
+#: c-pragma.c:124
#, c-format
msgid "#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s, <n>)"
msgstr "#pragma pack(pop, %s) rencontré sans #pragma pack(push, %s, <n>) correspondant"
-#: c-pragma.c:145
+#: c-pragma.c:144
msgid "#pragma pack(push[, id], <n>) is not supported on this target"
msgstr "#pragma pack(push[, id], <n>) n'est pas permis sur cette cible"
-#: c-pragma.c:147
+#: c-pragma.c:146
msgid "#pragma pack(pop[, id], <n>) is not supported on this target"
msgstr "#pragma pack(pop[, id], <n>) n'est pas permis sur cette cible"
-#: c-pragma.c:167
+#: c-pragma.c:165
msgid "missing '(' after '#pragma pack' - ignored"
msgstr "« ( » manquante après « #pragma pack » - ignoré"
-#: c-pragma.c:180 c-pragma.c:230
+#: c-pragma.c:178 c-pragma.c:228
msgid "malformed '#pragma pack' - ignored"
msgstr "« #pragma pack » mal composée - ignoré"
-#: c-pragma.c:185
+#: c-pragma.c:183
msgid "malformed '#pragma pack(push[, id], <n>)' - ignored"
msgstr "« #pragma pack(push[, id], <n>) » mal composée - ignoré"
-#: c-pragma.c:187
+#: c-pragma.c:185
msgid "malformed '#pragma pack(pop[, id])' - ignored"
msgstr "« #pragma pack(pop[, id]) » mal composée, ignoré"
-#: c-pragma.c:196
+#: c-pragma.c:194
#, c-format
msgid "unknown action '%s' for '#pragma pack' - ignored"
msgstr "action « %s » inconnue pour « #pragma pack » - ignoré"
-#: c-pragma.c:233
+#: c-pragma.c:231
msgid "junk at end of '#pragma pack'"
msgstr "rebut à la fin de « #pragma pack »"
-#: c-pragma.c:247
+#: c-pragma.c:245
#, c-format
msgid "alignment must be a small power of two, not %d"
msgstr "l'alignement doit être une petite puissance de 2, pas %d"
-#: c-pragma.c:280
-#, c-format
-msgid "applying #pragma weak `%s' after first use results in unspecified behavior"
-msgstr "application de la #pragma weak « %s » après la première utilisation conduit à un comportement non spécifié"
+#: c-pragma.c:278
+msgid "%Japplying #pragma weak '%D' after first use results in unspecified behavior"
+msgstr "%Japplication de la #pragma weak « %D » après la première utilisation conduit à un comportement non spécifié"
-#: c-pragma.c:328 c-pragma.c:333
+#: c-pragma.c:325 c-pragma.c:330
msgid "malformed #pragma weak, ignored"
msgstr "#pragma weak mal composée, ignoré"
-#: c-pragma.c:337
+#: c-pragma.c:334
msgid "junk at end of #pragma weak"
msgstr "rebut à la fin de #pragma weak"
-#: c-pragma.c:372 c-pragma.c:377
+#: c-pragma.c:367 c-pragma.c:372
msgid "malformed #pragma redefine_extname, ignored"
msgstr "#pragma redefine_extname mal composée, ignoré"
-#: c-pragma.c:382
+#: c-pragma.c:377
msgid "junk at end of #pragma redefine_extname"
msgstr "rebut à la fin de #pragma redefine_extname"
-#: c-pragma.c:389 c-pragma.c:470
+#: c-pragma.c:384 c-pragma.c:462
msgid "#pragma redefine_extname conflicts with declaration"
msgstr "#pragma redefine_extname en conflit avec la déclaration"
-#: c-pragma.c:420
+#: c-pragma.c:413
msgid "malformed #pragma extern_prefix, ignored"
msgstr "#pragma extern_prefix mal composée, ignoré"
-#: c-pragma.c:425
+#: c-pragma.c:418
msgid "junk at end of #pragma extern_prefix"
msgstr "rebut à la fin de #pragma extern_prefix"
-#: c-pragma.c:457
-#, fuzzy
+#: c-pragma.c:449
msgid "asm declaration conflicts with previous rename"
-msgstr "déclaration asm en conflit avec le précédent changement de nom"
-
-#: c-semantics.c:565
-msgid "break statement not within loop or switch"
-msgstr "mot-clé « break » à l'extérieur de toute boucle ou « switch »"
-
-#: c-semantics.c:583
-msgid "continue statement not within a loop"
-msgstr "mot-clé « continue » à l'extérieur de toute boucle"
+msgstr "déclaration asm en conflit avec le changement de nom précédent"
-#: c-semantics.c:678
-msgid "destructor needed for `%#D'"
-msgstr "destructeur requis pour « %#D »"
+#: c-semantics.c:697
+msgid "destructor needed for `%D'"
+msgstr "destructeur requis pour « %D »"
-#: c-semantics.c:679
+#: c-semantics.c:698
msgid "where case label appears here"
msgstr "où les étiquettes de « case » apparaissent ici"
# FIXME
-#: c-semantics.c:682
+#: c-semantics.c:701
msgid "(enclose actions of previous case statements requiring destructors in their own scope.)"
msgstr "(les actions dans les « case » précédents requierent des destructeurs dans leur propre champ.)"
-#: c-semantics.c:725 c-typeck.c:6942 cp/semantics.c:897
+#: c-semantics.c:737 c-typeck.c:6239 cp/semantics.c:1070
#, c-format
msgid "%s qualifier ignored on asm"
msgstr "%s qualificateur ignoré avec asm"
-#: c-typeck.c:123
+# FIXME: c'est de l'assembleur ?
+#: c-semantics.c:991
+msgid "will never be executed"
+msgstr "ne sera jamais exécuté"
+
+#: c-typeck.c:120
#, c-format
msgid "`%s' has an incomplete type"
msgstr "« %s » a un type incomplet"
-#: c-typeck.c:145 cp/call.c:2865
+#: c-typeck.c:142 cp/call.c:2532
msgid "invalid use of void expression"
msgstr "utilisation invalide d'expression void"
-#: c-typeck.c:153
+#: c-typeck.c:150
msgid "invalid use of flexible array member"
msgstr "utilisation invalide d'un membre flexible de tableau"
-#: c-typeck.c:159
+#: c-typeck.c:156
msgid "invalid use of array with unspecified bounds"
msgstr "utilisation invalide d'un tableau sans borne spécifiée"
-#: c-typeck.c:167
+#: c-typeck.c:164
#, c-format
msgid "invalid use of undefined type `%s %s'"
msgstr "utilisation invalide d'un type indéfini « %s %s »"
#. If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL.
-#: c-typeck.c:171
+#: c-typeck.c:168
#, c-format
msgid "invalid use of incomplete typedef `%s'"
msgstr "utilisation invalide d'un typedef incomplet « %s »"
-#: c-typeck.c:424 c-typeck.c:438
+#: c-typeck.c:415 c-typeck.c:430
msgid "function types not truly compatible in ISO C"
msgstr "types de fonction pas vraiment compatibles en C ISO"
-#: c-typeck.c:603
+#: c-typeck.c:611
msgid "types are not quite compatible"
msgstr "les types ne sont pas vraiment compatibles"
-#: c-typeck.c:757 c-typeck.c:2687
+#: c-typeck.c:820
+msgid "function return types not compatible due to `volatile'"
+msgstr "les types retournés d'une fonction ne sont pas compatibles en raison de « volatile »"
+
+#: c-typeck.c:966 c-typeck.c:2143
msgid "arithmetic on pointer to an incomplete type"
msgstr "arithmétique sur un pointeur vers un type incomplet"
-#: c-typeck.c:1136
+#: c-typeck.c:1339
#, c-format
msgid "%s has no member named `%s'"
msgstr "%s n'a pas de membre nommé « %s »"
-#: c-typeck.c:1172
+#: c-typeck.c:1375
#, c-format
msgid "request for member `%s' in something not a structure or union"
msgstr "requête du membre « %s » dans quelque chose n'étant ni une structure ni une union"
-#: c-typeck.c:1204
+#: c-typeck.c:1404
msgid "dereferencing pointer to incomplete type"
msgstr "déréférencement d'un pointeur de type incomplet"
-#: c-typeck.c:1208
+#: c-typeck.c:1408
msgid "dereferencing `void *' pointer"
msgstr "déréférencement d'un pointeur « void * »"
-#: c-typeck.c:1225 cp/typeck.c:2369
+#: c-typeck.c:1425 cp/typeck.c:2104
#, c-format
msgid "invalid type argument of `%s'"
msgstr "type d'argument invalide pour « %s »"
-#: c-typeck.c:1244 cp/typeck.c:2395
+#: c-typeck.c:1443 cp/typeck.c:2129
msgid "subscript missing in array reference"
msgstr "indice manquant dans la référence du tableau"
-#: c-typeck.c:1265 cp/typeck.c:2437
+#: c-typeck.c:1464 cp/typeck.c:2171
msgid "array subscript has type `char'"
msgstr "l'indice du tableau est de type « char »"
-#: c-typeck.c:1273 c-typeck.c:1362 cp/typeck.c:2444 cp/typeck.c:2523
+#: c-typeck.c:1472 c-typeck.c:1561 cp/typeck.c:2175 cp/typeck.c:2261
msgid "array subscript is not an integer"
msgstr "l'indice du tableau n'est pas un entier"
-#: c-typeck.c:1306
+#: c-typeck.c:1505
msgid "ISO C forbids subscripting `register' array"
-msgstr "le C ISO interdit d'indicer des tableaux marqués « register »"
+msgstr "ISO C interdit de sous-indicer des tableaux « register »"
-#: c-typeck.c:1308
+#: c-typeck.c:1507
msgid "ISO C90 forbids subscripting non-lvalue array"
-msgstr "le C90 ISO interdit d'indicer de tableau n'étant pas membre gauche"
+msgstr "ISO C90 interdit d'indicer de tableau n'étant pas membre gauche"
-#: c-typeck.c:1341
+#: c-typeck.c:1540
msgid "subscript has type `char'"
msgstr "indice de type « char »"
-#: c-typeck.c:1357 cp/typeck.c:2518
+#: c-typeck.c:1556 cp/typeck.c:2256
msgid "subscripted value is neither array nor pointer"
msgstr "la valeur indicée n'est ni un tableau ni un pointeur"
-#: c-typeck.c:1411
-#, c-format
-msgid "`%s' undeclared here (not in a function)"
-msgstr "« %s » non déclaré ici (hors de toute fonction)"
-
-#: c-typeck.c:1418
-#, c-format
-msgid "`%s' undeclared (first use in this function)"
-msgstr "« %s » non déclaré (première utilisation dans cette fonction)"
-
-#: c-typeck.c:1423
-msgid "(Each undeclared identifier is reported only once"
-msgstr "(Chaque identificateur non déclaré est rapporté une seule fois"
-
-#: c-typeck.c:1424
-msgid "for each function it appears in.)"
-msgstr "pour chaque fonction dans laquelle il apparaît.)"
-
-#: c-typeck.c:1441
+#: c-typeck.c:1586
#, c-format
msgid "local declaration of `%s' hides instance variable"
msgstr "la déclaration locale de « %s » masque l'instance d'une variable"
-#: c-typeck.c:1518
+#: c-typeck.c:1679
msgid "called object is not a function"
msgstr "l'objet appelé n'est pas une fonction"
-#: c-typeck.c:1604 cp/typeck.c:2829
+#. This situation leads to run-time undefined behavior. We can't,
+#. therefore, simply error unless we can prove that all possible
+#. executions of the program must execute the code.
+#: c-typeck.c:1711
+msgid "function called through a non-compatible type"
+msgstr "fonction appellée à travers un type non compatible"
+
+#: c-typeck.c:1805 cp/typeck.c:2544
msgid "too many arguments to function"
msgstr "trop d'arguments pour la fonction"
-#: c-typeck.c:1625
+#: c-typeck.c:1826
#, c-format
msgid "type of formal parameter %d is incomplete"
msgstr "le type du paramètre formel %d est incomplet"
-#: c-typeck.c:1638
+#: c-typeck.c:1839
#, c-format
msgid "%s as integer rather than floating due to prototype"
msgstr "%s est entier plutôt que flottant en raison du prototype"
-#: c-typeck.c:1641
+#: c-typeck.c:1842
#, c-format
msgid "%s as integer rather than complex due to prototype"
msgstr "%s est entier plutôt que complexe en raison du prototype"
-#: c-typeck.c:1644
+#: c-typeck.c:1845
#, c-format
msgid "%s as complex rather than floating due to prototype"
msgstr "%s est complexe plutôt que flottant en raison du prototype"
-#: c-typeck.c:1647
+#: c-typeck.c:1848
#, c-format
msgid "%s as floating rather than integer due to prototype"
msgstr "%s est flottant plutôt qu'entier en raison du prototype"
-#: c-typeck.c:1650
+#: c-typeck.c:1851
#, c-format
msgid "%s as complex rather than integer due to prototype"
msgstr "%s est complexe plutôt qu'entier en raison du prototype"
-#: c-typeck.c:1653
+#: c-typeck.c:1854
#, c-format
msgid "%s as floating rather than complex due to prototype"
msgstr "%s est flottant plutôt que complexe en raison du prototype"
-#: c-typeck.c:1663
+#: c-typeck.c:1864
#, c-format
msgid "%s as `float' rather than `double' due to prototype"
-msgstr "%s est « float » plutôt que « double » en raison du prototype"
+msgstr "%s est « float » plutôt qu'un « double » en raison du prototype"
-#: c-typeck.c:1681
+#: c-typeck.c:1882
#, c-format
msgid "%s with different width due to prototype"
msgstr "%s a une largeur différente en raison du prototype"
-#: c-typeck.c:1715
+#: c-typeck.c:1908
#, c-format
msgid "%s as unsigned due to prototype"
msgstr "%s est non signé en raison du prototype"
-#: c-typeck.c:1717
+#: c-typeck.c:1910
#, c-format
msgid "%s as signed due to prototype"
msgstr "%s est signé en raison du prototype"
-#: c-typeck.c:1751 cp/typeck.c:2933
+#: c-typeck.c:1944 cp/typeck.c:2650
msgid "too few arguments to function"
msgstr "trop peu d'arguments pour la fonction"
-#: c-typeck.c:1793
+#: c-typeck.c:1984
msgid "suggest parentheses around + or - inside shift"
msgstr "parenthèses suggérées autour de + ou - à l'intérieur du décalage"
-#: c-typeck.c:1800
+#: c-typeck.c:1991
msgid "suggest parentheses around && within ||"
msgstr "parenthèses suggérées autour de && à l'intérieur de ||"
-#: c-typeck.c:1809
+#: c-typeck.c:2000
msgid "suggest parentheses around arithmetic in operand of |"
msgstr "parenthèses suggérées autour de l'arithmétique dans l'opérande de |"
-#: c-typeck.c:1812
+#: c-typeck.c:2003
msgid "suggest parentheses around comparison in operand of |"
msgstr "parenthèses suggérées autour de la comparaison dans l'opérande de |"
-#: c-typeck.c:1821
+#: c-typeck.c:2012
msgid "suggest parentheses around arithmetic in operand of ^"
msgstr "parenthèses suggérées autour de l'arithmétique dans l'opérande de ^"
-#: c-typeck.c:1824
+#: c-typeck.c:2015
msgid "suggest parentheses around comparison in operand of ^"
msgstr "parenthèses suggérées autour de la comparaison dans l'opérande de ^"
-#: c-typeck.c:1831
+#: c-typeck.c:2022
msgid "suggest parentheses around + or - in operand of &"
msgstr "parenthèses suggérées autour de + ou - dans l'opérande de &"
-#: c-typeck.c:1834
+#: c-typeck.c:2025
msgid "suggest parentheses around comparison in operand of &"
msgstr "parenthèses suggérées autour de la comparaison dans l'opérande de &"
-#: c-typeck.c:1841
+#: c-typeck.c:2032
msgid "comparisons like X<=Y<=Z do not have their mathematical meaning"
msgstr "les comparaisons telles que X<=Y<=Z n'ont pas de signification mathématique"
-#: c-typeck.c:2001 c-typeck.c:2036
-msgid "division by zero"
-msgstr "division par zéro"
-
-#: c-typeck.c:2081 cp/typeck.c:3194
-msgid "right shift count is negative"
-msgstr "le compteur de décalage vers la droite est négatif"
-
-#: c-typeck.c:2088 cp/typeck.c:3200
-msgid "right shift count >= width of type"
-msgstr "compteur de décalage vers la droite >= à la largeur du type"
-
-#: c-typeck.c:2109 cp/typeck.c:3219
-msgid "left shift count is negative"
-msgstr "le compteur de décalage vers la gauche est négatif"
-
-#: c-typeck.c:2112 cp/typeck.c:3221
-msgid "left shift count >= width of type"
-msgstr "compteur de décalage vers la gauche >= à la largeur du type"
-
-#: c-typeck.c:2133
-msgid "shift count is negative"
-msgstr "le compteur de décalage est négatif"
-
-#: c-typeck.c:2135
-msgid "shift count >= width of type"
-msgstr "compteur de décalage >= à la largeur du type"
-
-#: c-typeck.c:2152 cp/typeck.c:3256
-msgid "comparing floating point with == or != is unsafe"
-msgstr "comparer des nombres flottants à l'aide de == ou != n'est pas sûr"
-
-#: c-typeck.c:2178 c-typeck.c:2184
-msgid "ISO C forbids comparison of `void *' with function pointer"
-msgstr "le C ISO interdit la comparaison de « void * » avec un pointeur de fonction"
-
-#: c-typeck.c:2187 c-typeck.c:2227 c-typeck.c:2255
-msgid "comparison of distinct pointer types lacks a cast"
-msgstr "il manque un transtypage pour comparer des types distincts de pointeur"
-
-#: c-typeck.c:2201 c-typeck.c:2206 c-typeck.c:2275 c-typeck.c:2280
-msgid "comparison between pointer and integer"
-msgstr "comparaison entre un pointeur et un entier"
-
-#: c-typeck.c:2222 c-typeck.c:2250
-msgid "ISO C forbids ordered comparisons of pointers to functions"
-msgstr "le C ISO interdit les comparaisons ordonnées de pointeurs vers des fonctions"
-
-#: c-typeck.c:2247
-msgid "comparison of complete and incomplete pointers"
-msgstr "comparaison de pointeurs complet et incomplet"
-
-#: c-typeck.c:2263 c-typeck.c:2270
-msgid "ordered comparison of pointer with integer zero"
-msgstr "comparaison ordonnée de pointeur avec le zéro entier"
-
-#: c-typeck.c:2294 cp/typeck.c:3389
-msgid "unordered comparison on non-floating point argument"
-msgstr "comparaison non ordonnée sur un argument n'étant pas en virgule flottante"
-
-#: c-typeck.c:2505
-msgid "comparison between signed and unsigned"
-msgstr "comparaison entre élément signé et élément non signé"
-
-#: c-typeck.c:2551 cp/typeck.c:3633
-msgid "comparison of promoted ~unsigned with constant"
-msgstr "comparaison entre élément promu ~unsigned et une constante"
-
-#: c-typeck.c:2559 cp/typeck.c:3641
-msgid "comparison of promoted ~unsigned with unsigned"
-msgstr "comparaison entre élément promu ~unsigned et un élément non signé"
-
-#: c-typeck.c:2639
+#: c-typeck.c:2095
msgid "pointer of type `void *' used in subtraction"
msgstr "pointeur de type « void * » utilisé dans une soustraction"
-#: c-typeck.c:2641
+#: c-typeck.c:2097
msgid "pointer to a function used in subtraction"
msgstr "pointeur vers un fonction utilisé dans une soustraction"
-#: c-typeck.c:2738
+#: c-typeck.c:2191
msgid "wrong type argument to unary plus"
msgstr "type d'argument erroné pour le plus unaire"
-#: c-typeck.c:2751
+#: c-typeck.c:2204
msgid "wrong type argument to unary minus"
msgstr "type d'argument erroné pour le moins unaire"
-#: c-typeck.c:2768
+#: c-typeck.c:2221
msgid "ISO C does not support `~' for complex conjugation"
-msgstr "le C ISO ne permet pas d'utiliser « ~ » pour le complexe conjugué"
+msgstr "ISO C ne permet pas d'utiliser « ~ » pour le complexe conjugué"
-#: c-typeck.c:2774
+#: c-typeck.c:2227
msgid "wrong type argument to bit-complement"
msgstr "type d'argument erroné pour un complément de bit"
-#: c-typeck.c:2783
+#: c-typeck.c:2235
msgid "wrong type argument to abs"
msgstr "type d'argument erroné pour abs"
-#: c-typeck.c:2795
+#: c-typeck.c:2247
msgid "wrong type argument to conjugation"
msgstr "type d'argument erroné pour la conjugaison"
-#: c-typeck.c:2809
+#: c-typeck.c:2261
msgid "wrong type argument to unary exclamation mark"
msgstr "type d'argument erroné pour le point d'exclamation unaire"
-#: c-typeck.c:2852
+#: c-typeck.c:2304
msgid "ISO C does not support `++' and `--' on complex types"
-msgstr "le C ISO ne permet pas «++» ni «--» sur les types complexes"
+msgstr "ISO C ne permet pas « ++ » ni « -- » sur les types complexes"
-#: c-typeck.c:2867 c-typeck.c:2899
+#: c-typeck.c:2319 c-typeck.c:2351
msgid "wrong type argument to increment"
msgstr "type d'argument erroné pour un incrément"
-#: c-typeck.c:2869 c-typeck.c:2901
+#: c-typeck.c:2321 c-typeck.c:2353
msgid "wrong type argument to decrement"
msgstr "type d'argument erroné pour un décrément"
-#: c-typeck.c:2890
+#: c-typeck.c:2342
msgid "increment of pointer to unknown structure"
msgstr "incrément d'un pointeur vers une structure inconnue"
-#: c-typeck.c:2892
+#: c-typeck.c:2344
msgid "decrement of pointer to unknown structure"
msgstr "décrément d'un pointeur vers une structure inconnue"
-# FIXME
-#: c-typeck.c:3029
-msgid "ISO C forbids the address of a cast expression"
-msgstr "le C ISO interdit l'adresse d'une expression transtypée"
-
-#: c-typeck.c:3039
+#: c-typeck.c:2469
msgid "invalid lvalue in unary `&'"
msgstr "membre gauche invalide pour le « & » unaire"
-#: c-typeck.c:3071
+#: c-typeck.c:2501
#, c-format
msgid "attempt to take address of bit-field structure member `%s'"
msgstr "tentative pour prendre l'adresse du membre « %s » d'une structure de champ de bits"
-#: c-typeck.c:3180 c-typeck.c:4651 c-typeck.c:4667 c-typeck.c:4683
-#: final.c:3146 final.c:3148 gcc.c:4381 rtl-error.c:122 toplev.c:1694
-#: config/cris/cris.c:545 cp/spew.c:1538 cp/typeck.c:4367 java/expr.c:364
-#: java/verify.c:1467 java/verify.c:1468 java/verify.c:1483
-#, c-format
-msgid "%s"
-msgstr "%s"
+#: c-typeck.c:2634
+msgid "use of conditional expressions as lvalues is deprecated"
+msgstr "utilisation d'expressions conditionnelles comme lvalues est déprécié"
-#: c-typeck.c:3241
-msgid "ISO C forbids use of conditional expressions as lvalues"
-msgstr "le C ISO interdit l'utilisation d'expressions conditionnelles comme membre gauche"
+#: c-typeck.c:2637
+msgid "use of compound expressions as lvalues is deprecated"
+msgstr "utilisation d'expressions composées comme lvalues est déprécié"
-#: c-typeck.c:3244
-msgid "ISO C forbids use of compound expressions as lvalues"
-msgstr "le C ISO interdit l'utilisation d'expressions composées comme membre gauche"
+#: c-typeck.c:2640
+msgid "use of cast expressions as lvalues is deprecated"
+msgstr "utilisation de transtypage d'expressions comme lvalues est déprécié"
-#: c-typeck.c:3247
-msgid "ISO C forbids use of cast expressions as lvalues"
-msgstr "le C ISO interdit l'utilisation de transtypage d'expression comme membre gauche"
-
-#: c-typeck.c:3264
+#: c-typeck.c:2655
#, c-format
msgid "%s of read-only member `%s'"
msgstr "%s d'un membre en lecture seule « %s »"
-#: c-typeck.c:3268
+#: c-typeck.c:2659
#, c-format
msgid "%s of read-only variable `%s'"
msgstr "%s d'une variable en lecture seule « %s »"
-#: c-typeck.c:3271
+#: c-typeck.c:2662
#, c-format
msgid "%s of read-only location"
msgstr "%s d'une position en lecture seule"
-#: c-typeck.c:3290
+#: c-typeck.c:2680
#, c-format
msgid "cannot take address of bit-field `%s'"
msgstr "ne peut prendre l'adresse du champ de bits « %s »"
-#: c-typeck.c:3318
+#: c-typeck.c:2708 treelang/treetree.c:946
#, c-format
msgid "global register variable `%s' used in nested function"
msgstr "variable globale de registre « %s » utilisée dans une fonction imbriquée"
-#: c-typeck.c:3322
+#: c-typeck.c:2712 treelang/treetree.c:950
#, c-format
msgid "register variable `%s' used in nested function"
msgstr "variable de registre « %s » utilisée dans une fonction imbriquée"
-#: c-typeck.c:3329
+#: c-typeck.c:2719 treelang/treetree.c:957
#, c-format
msgid "address of global register variable `%s' requested"
msgstr "adresse d'une variable registre globale « %s » requise"
-#: c-typeck.c:3341
+#: c-typeck.c:2731
msgid "cannot put object with volatile field into register"
msgstr "impossible de mettre un objet avec un champ volatile dans un registre"
-#: c-typeck.c:3345
+#: c-typeck.c:2735 treelang/treetree.c:962
#, c-format
msgid "address of register variable `%s' requested"
msgstr "adresse d'une variable registre « %s » requise"
-#: c-typeck.c:3453
+#: c-typeck.c:2820
msgid "signed and unsigned type in conditional expression"
msgstr "type signé et non signé dans une expression conditionnelle"
-#: c-typeck.c:3460
+#: c-typeck.c:2827
msgid "ISO C forbids conditional expr with only one void side"
-msgstr "le C ISO interdit une expression conditionnelle dont un seul côté est « void »"
+msgstr "ISO C interdit une expression conditionnelle dont un seul côté est « void »"
-#: c-typeck.c:3476 c-typeck.c:3483
+#: c-typeck.c:2843 c-typeck.c:2850
msgid "ISO C forbids conditional expr between `void *' and function pointer"
-msgstr "le C ISO interdit une expression conditionnelle entre « void * » et un pointeur de fonction"
+msgstr "ISO C interdit une expression conditionnelle entre « void * » et un pointeur de fonction"
-#: c-typeck.c:3489
+#: c-typeck.c:2856
msgid "pointer type mismatch in conditional expression"
msgstr "non concordance de type de pointeurs dans un expression conditionnelle"
-#: c-typeck.c:3496 c-typeck.c:3506
+#: c-typeck.c:2863 c-typeck.c:2873
msgid "pointer/integer type mismatch in conditional expression"
msgstr "non concordance entre pointeur et entier dans une expression conditionnelle"
-#: c-typeck.c:3520
+#: c-typeck.c:2887
msgid "type mismatch in conditional expression"
msgstr "non concordance de type dans une expression conditionnelle"
-#: c-typeck.c:3591 cp/typeck.c:4623
+#: c-typeck.c:2947
msgid "left-hand operand of comma expression has no effect"
msgstr "l'opérande à gauche de la virgule n'a pas d'effet"
-#: c-typeck.c:3635
+#: c-typeck.c:2978
msgid "cast specifies array type"
msgstr "le transtypage spécifie un type de tableau"
-#: c-typeck.c:3641
+#: c-typeck.c:2984
msgid "cast specifies function type"
msgstr "le transtypage spécifie un type de fonction"
-#: c-typeck.c:3651
+#: c-typeck.c:2994
msgid "ISO C forbids casting nonscalar to the same type"
-msgstr "le C ISO interdit le transtypage d'un type non scalaire vers lui-même"
+msgstr "ISO C interdit le transtypage d'un type non scalaire vers lui-même"
-#: c-typeck.c:3670
+#: c-typeck.c:3012
msgid "ISO C forbids casts to union type"
-msgstr "le C ISO interdit le transtypage vers un type union"
+msgstr "ISO C interdit le transtypage vers un type union"
-#: c-typeck.c:3685
+#: c-typeck.c:3020
msgid "cast to union type from type not present in union"
msgstr "transtypage vers un type union depuis un type absent de l'union"
-#: c-typeck.c:3736
+#: c-typeck.c:3071
msgid "cast adds new qualifiers to function type"
msgstr "le transtypage ajoute un nouveau qualificateur au type de la fonction"
#. There are qualifiers present in IN_OTYPE that are not
#. present in IN_TYPE.
-#: c-typeck.c:3741
+#: c-typeck.c:3076
msgid "cast discards qualifiers from pointer target type"
msgstr "le transtypage annule des qualificateurs du type pointeur ciblé"
-#: c-typeck.c:3756
+#: c-typeck.c:3091
msgid "cast increases required alignment of target type"
msgstr "le transtypage augmente l'alignement requis pour le type ciblé"
-#: c-typeck.c:3762 cp/typeck.c:5144
+#: c-typeck.c:3097 cp/typeck.c:4889
msgid "cast from pointer to integer of different size"
msgstr "transtypage d'un pointeur vers un entier de taille différente"
-#: c-typeck.c:3767
+#: c-typeck.c:3102
msgid "cast does not match function type"
msgstr "le transtypage ne concorde pas avec le type de la fonction"
-#: c-typeck.c:3774 cp/typeck.c:5151
+#: c-typeck.c:3109 cp/typeck.c:4896
msgid "cast to pointer from integer of different size"
msgstr "transtypage vers un pointeur depuis un entier de taille différente"
# FIXME
-#: c-typeck.c:3786
+#: c-typeck.c:3121
msgid "type-punning to incomplete type might break strict-aliasing rules"
-msgstr ""
+msgstr "type-punning vers un type incomplet peut briser les règles stricte d'aliases"
# FIXME
-#: c-typeck.c:3790
+#: c-typeck.c:3125
msgid "dereferencing type-punned pointer will break strict-aliasing rules"
-msgstr ""
+msgstr "déréférencement du pointeur type-punned brisera les strictes d'aliases"
+
+#: c-typeck.c:3136
+msgid "ISO C forbids conversion of function pointer to object pointer type"
+msgstr "ISO C interdit la conversion d'un pointeur de fonction en un type pointeur d'objet"
+
+#: c-typeck.c:3145
+msgid "ISO C forbids conversion of object pointer to function pointer type"
+msgstr "ISO C interdit la conversion d'un pointeur d'objet vers un type de pointeur à une fonction"
#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
#. Reject anything strange now.
-#: c-typeck.c:3949
+#: c-typeck.c:3303
msgid "invalid lvalue in assignment"
msgstr "membre gauche de l'affectation invalide"
#. Convert new value to destination type.
-#: c-typeck.c:3958 c-typeck.c:3983 c-typeck.c:4000 cp/typeck.c:5266
-#: cp/typeck.c:5416
+#. Check this here to avoid odd errors when trying to convert
+#. a throw to the type of the COND_EXPR.
+#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
+#. Reject anything strange now.
+#: c-typeck.c:3312 c-typeck.c:3337 c-typeck.c:3354 cp/typeck.c:5008
+#: cp/typeck.c:5152
msgid "assignment"
msgstr "affectation"
-#: c-typeck.c:4070
+#: c-typeck.c:3421
msgid "cannot pass rvalue to reference parameter"
msgstr "impossible de passer un membre droit en paramètre par référence"
-#: c-typeck.c:4174 c-typeck.c:4241
+#: c-typeck.c:3530 c-typeck.c:3606
#, c-format
msgid "%s makes qualified function pointer from unqualified"
msgstr "%s qualifie un pointeur de fonction non qualifié"
-#: c-typeck.c:4178 c-typeck.c:4221
+#: c-typeck.c:3534 c-typeck.c:3586
#, c-format
msgid "%s discards qualifiers from pointer target type"
msgstr "%s annule des qualificateurs du type du pointeur cible"
-#: c-typeck.c:4184
+#: c-typeck.c:3540
msgid "ISO C prohibits argument conversion to union type"
-msgstr "le C ISO interdit la conversion d'argument en type union"
+msgstr "ISO C interdit la conversion d'argument en type union"
-#: c-typeck.c:4213
+#: c-typeck.c:3578
#, c-format
msgid "ISO C forbids %s between function pointer and `void *'"
-msgstr "le C ISO interdit %s entre pointeur de fonction et « void * »"
+msgstr "ISO C interdit %s entre pointeur de fonction et « void * »"
-#: c-typeck.c:4230
+#: c-typeck.c:3595
#, c-format
msgid "pointer targets in %s differ in signedness"
msgstr "les cibles des pointeurs dans %s n'ont pas toutes de signe"
-#: c-typeck.c:4246
+#: c-typeck.c:3611
#, c-format
msgid "%s from incompatible pointer type"
msgstr "%s d'un type pointeur incompatible"
-#: c-typeck.c:4252 c-typeck.c:4804 cp/typeck.c:1653
+#: c-typeck.c:3617 c-typeck.c:4124 cp/typeck.c:1366
msgid "invalid use of non-lvalue array"
msgstr "utilisation invalide d'un tableau n'étant pas membre gauche"
-#: c-typeck.c:4267
+#: c-typeck.c:3631
#, c-format
msgid "%s makes pointer from integer without a cast"
msgstr "%s transforme un entier en pointeur sans transtypage"
-#: c-typeck.c:4275
+#: c-typeck.c:3638
#, c-format
msgid "%s makes integer from pointer without a cast"
msgstr "%s transforme un pointeur en entier sans transtypage"
-#: c-typeck.c:4289 c-typeck.c:4292
+#: c-typeck.c:3652 c-typeck.c:3655
#, c-format
msgid "incompatible type for argument %d of `%s'"
msgstr "type incompatible pour l'argument n°%d de « %s »"
-#: c-typeck.c:4296
+#: c-typeck.c:3659
#, c-format
msgid "incompatible type for argument %d of indirect function call"
msgstr "type incompatible pour l'argument n°%d de l'appel indirect de fonction"
-#: c-typeck.c:4300
+#: c-typeck.c:3663
#, c-format
msgid "incompatible types in %s"
msgstr "type incompatibles dans %s"
#. Function name is known; supply it.
-#: c-typeck.c:4358
+#: c-typeck.c:3719
#, c-format
msgid "passing arg of `%s'"
msgstr "passage des arguments de « %s »"
#. Function name unknown (call through ptr).
-#: c-typeck.c:4368
+#: c-typeck.c:3728
msgid "passing arg of pointer to function"
msgstr "passage des arguments au pointeur de fonction"
#. Function name is known; supply it.
-#: c-typeck.c:4376
+#: c-typeck.c:3736
#, c-format
msgid "passing arg %d of `%s'"
msgstr "passage de l'argument n°%d de « %s »"
#. Function name unknown (call through ptr); just give arg number.
-#: c-typeck.c:4386
+#: c-typeck.c:3745
#, c-format
msgid "passing arg %d of pointer to function"
msgstr "passage de l'argument n°%d au pointeur de fonction"
-#: c-typeck.c:4452
-msgid "initializer for static variable is not constant"
-msgstr "l'initialisation d'une variable statique n'est pas une constante"
-
-#: c-typeck.c:4458
-msgid "initializer for static variable uses complicated arithmetic"
-msgstr "l'initialisation d'une variable statique utilise une artihmétique compliquée"
-
-# FIXME
-#: c-typeck.c:4466
-msgid "aggregate initializer is not constant"
-msgstr "l'initialisation d'aggrégat n'est pas une constante"
-
-# FIXME
-#: c-typeck.c:4468
-msgid "aggregate initializer uses complicated arithmetic"
-msgstr "l'initialisation d'un aggrégat utilise une arithmétique compliquée"
-
-#: c-typeck.c:4475
+#: c-typeck.c:3802
msgid "traditional C rejects automatic aggregate initialization"
msgstr "le C traditionel rejette l'initialisation automatique d'aggrégats"
-#: c-typeck.c:4654 c-typeck.c:4670 c-typeck.c:4686
+#: c-typeck.c:3973 c-typeck.c:3988 c-typeck.c:4003
#, c-format
msgid "(near initialization for `%s')"
msgstr "(près de l'initialisation de « %s »)"
-#: c-typeck.c:4737 cp/typeck2.c:488
+#: c-typeck.c:4052 cp/typeck2.c:559
msgid "char-array initialized from wide string"
-msgstr "tableau de caractères initialisé à l'aide d'une chaîne de caractères longs"
+msgstr "tableau de caractères initialisé à l'aide d'une chaîne large de caractères"
-#: c-typeck.c:4744 cp/typeck2.c:495
+#: c-typeck.c:4059 cp/typeck2.c:566
msgid "int-array initialized from non-wide string"
-msgstr "tableau d'entier initialisé à l'aide d'un chaîne de caractères courts"
+msgstr "tableau d'entier initialisé à l'aide d'une chaîne non-large"
-#: c-typeck.c:4762 cp/typeck2.c:511
+#: c-typeck.c:4077 cp/typeck2.c:581
msgid "initializer-string for array of chars is too long"
msgstr "la chaîne d'initialisation est trop longue pour le tableau de caractères"
-#: c-typeck.c:4822
+#: c-typeck.c:4147
msgid "array initialized from non-constant array expression"
msgstr "tableau initialisé à l'aide de l'expression de tableau non constante"
-#: c-typeck.c:4839 c-typeck.c:4841 c-typeck.c:4857 c-typeck.c:4878
-#: c-typeck.c:6281
+#: c-typeck.c:4164 c-typeck.c:4166 c-typeck.c:4182 c-typeck.c:4203
+#: c-typeck.c:5585
msgid "initializer element is not constant"
msgstr "un élément de l'initialisation n'est pas une constante"
-#: c-typeck.c:4873
+#: c-typeck.c:4198
msgid "initialization"
msgstr "initialisation"
-#: c-typeck.c:4884 c-typeck.c:6286
+#: c-typeck.c:4209 c-typeck.c:5590
msgid "initializer element is not computable at load time"
msgstr "un élément de l'initialisation n'est pas évaluable lors du chargement"
-#: c-typeck.c:4899 cp/typeck2.c:588
+#: c-typeck.c:4224 cp/typeck2.c:658
msgid "invalid initializer"
msgstr "initialisation invalide"
-#: c-typeck.c:5393
+#: c-typeck.c:4509 cp/decl.c:4465
+msgid "opaque vector types cannot be initialized"
+msgstr "type de vecteur opaque ne peut être initialisé"
+
+#: c-typeck.c:4703
msgid "extra brace group at end of initializer"
msgstr "groupe d'accolades superflu à la fin de l'initialisation"
-#: c-typeck.c:5413
+#: c-typeck.c:4723
msgid "missing braces around initializer"
msgstr "accolades manquantes autour de l'initialisation"
-#: c-typeck.c:5473
+#: c-typeck.c:4783
msgid "braces around scalar initializer"
msgstr "accolades autour d'une initialisation de scalaire"
-#: c-typeck.c:5521
+#: c-typeck.c:4830
msgid "initialization of flexible array member in a nested context"
msgstr "initialisation d'un membre de tableau flexible dans un contexte imbriqué"
-#: c-typeck.c:5523
+#: c-typeck.c:4832
msgid "initialization of a flexible array member"
msgstr "initialisation d'un membre de tableau flexible"
-#: c-typeck.c:5554
+#: c-typeck.c:4863
msgid "missing initializer"
msgstr "initialisation manquante"
-#: c-typeck.c:5580
+#: c-typeck.c:4889
msgid "empty scalar initializer"
msgstr "initialisation vide de scalaire"
-#: c-typeck.c:5585
+#: c-typeck.c:4894
msgid "extra elements in scalar initializer"
msgstr "éléments superflus dans l'initialisation de scalaire"
-#: c-typeck.c:5671
+#: c-typeck.c:4979
msgid "initialization designators may not nest"
msgstr "l'initialisation des désignateurs ne doit pas être imbriquée"
-#: c-typeck.c:5692 c-typeck.c:5763
+#: c-typeck.c:5000 c-typeck.c:5068
msgid "array index in non-array initializer"
msgstr "index de tableau dans l'initialisation de quelque chose n'étant pas un tableau"
-#: c-typeck.c:5697 c-typeck.c:5817
+#: c-typeck.c:5005 c-typeck.c:5121
msgid "field name not in record or union initializer"
msgstr "nom de champ dans l'initialisation de quelque chose n'étant ni un enregistrement ni une union"
-#: c-typeck.c:5759 c-typeck.c:5761
+#: c-typeck.c:5064 c-typeck.c:5066
msgid "nonconstant array index in initializer"
msgstr "index de tableau non constant dans l'initialisation"
-#: c-typeck.c:5765 c-typeck.c:5768
+#: c-typeck.c:5070 c-typeck.c:5073
msgid "array index in initializer exceeds array bounds"
msgstr "index de tableau hors limites lors de l'initialisation"
-#: c-typeck.c:5779
+#: c-typeck.c:5084
msgid "empty index range in initializer"
msgstr "borne d'index vide lors de l'initialisation"
-#: c-typeck.c:5788
+#: c-typeck.c:5093
msgid "array index range in initializer exceeds array bounds"
msgstr "plage d'index du tableau excédant les bornes lors de l'initialisation"
-#: c-typeck.c:5829
+#: c-typeck.c:5133
#, c-format
msgid "unknown field `%s' specified in initializer"
msgstr "champ inconnu « %s » spécifié lors de l'initialisation"
-#: c-typeck.c:5866 c-typeck.c:5887 c-typeck.c:6348
+#: c-typeck.c:5169 c-typeck.c:5190 c-typeck.c:5652
msgid "initialized field with side-effects overwritten"
msgstr "le champ initialisé par effet de bord a été écrasé"
-#: c-typeck.c:6558
+#: c-typeck.c:5860
msgid "excess elements in char array initializer"
msgstr "éléments en excès dans l'initialisation de tableau de caractères"
-#: c-typeck.c:6565 c-typeck.c:6611
+#: c-typeck.c:5867 c-typeck.c:5913
msgid "excess elements in struct initializer"
msgstr "éléments en excès dans l'initialisation de la structure"
-#: c-typeck.c:6626
+#: c-typeck.c:5928
msgid "non-static initialization of a flexible array member"
msgstr "initialisation non statique d'un membre de tableau flexible"
-#: c-typeck.c:6693
+#: c-typeck.c:5995
msgid "excess elements in union initializer"
msgstr "éléments en excès dans l'initialisation d'union"
-#: c-typeck.c:6714
+#: c-typeck.c:6016
msgid "traditional C rejects initialization of unions"
msgstr "le C traditionel rejette l'initialisation d'union"
-#: c-typeck.c:6777
+#: c-typeck.c:6079
msgid "excess elements in array initializer"
msgstr "éléments en excès dans l'initialisation de tableau"
-#: c-typeck.c:6806
+#: c-typeck.c:6108
msgid "excess elements in vector initializer"
msgstr "éléments en excès dans l'initialisation du vecteur"
-#: c-typeck.c:6828
+#: c-typeck.c:6130
msgid "excess elements in scalar initializer"
msgstr "éléments en excès dans l'initialisation d'un scalaire"
-#: c-typeck.c:6935
+#: c-typeck.c:6232
msgid "asm template is not a string constant"
-msgstr "le patron asm n'est pas une chaîne de constante"
+msgstr "le canevas asm n'est pas une chaîne de constante"
-#: c-typeck.c:6967
+#: c-typeck.c:6264
msgid "invalid lvalue in asm statement"
msgstr "membre gauche invalide avec asm"
-#: c-typeck.c:7042
+#: c-typeck.c:6336
msgid "modification by `asm'"
msgstr "modification par « asm »"
-#: c-typeck.c:7061 cp/typeck.c:6237
+#: c-typeck.c:6354 cp/typeck.c:5926
msgid "function declared `noreturn' has a `return' statement"
msgstr "fonction déclarée avec « noreturn» utilisant le mot-clé « return »"
-#: c-typeck.c:7068
+#: c-typeck.c:6361
msgid "`return' with no value, in function returning non-void"
msgstr "« return » sans valeur dans une fonction retournant autre chose que void"
-#: c-typeck.c:7074
+#: c-typeck.c:6367
msgid "`return' with a value, in function returning void"
msgstr "« return » avec une valeur dans une fonction retournant un void"
-#: c-typeck.c:7078
+#: c-typeck.c:6371
msgid "return"
msgstr "return"
-#: c-typeck.c:7130
+#: c-typeck.c:6423
msgid "function returns address of local variable"
msgstr "cette fonction retourne l'adresse d'une variable locale"
-#: c-typeck.c:7186 cp/semantics.c:555
+#: c-typeck.c:6478 cp/semantics.c:749
msgid "switch quantity not an integer"
msgstr "quantité du switch n'est pas un entier"
-#: c-typeck.c:7196
+#: c-typeck.c:6488
msgid "`long' switch expression not converted to `int' in ISO C"
-msgstr "expression « long » du switch non convertie en « int » par le C ISO"
+msgstr "expression « long » du switch non convertie en « int » par ISO C"
-#: c-typeck.c:7231 cp/decl.c:5523
+#: c-typeck.c:6529 cp/parser.c:5538
msgid "case label not within a switch statement"
msgstr "étiquette de « case » en dehors de tout switch"
-#: c-typeck.c:7233 cp/decl.c:5528
+#: c-typeck.c:6531
msgid "`default' label not within a switch statement"
msgstr "étiquette « default » en dehors de tout switch"
-#: calls.c:1934 tree-inline.c:1177
-#, c-format
-msgid "inlining failed in call to `%s'"
-msgstr "l'enlignage de l'appel à « %s » a échoué"
+#: c-typeck.c:6683 c-typeck.c:6717
+msgid "division by zero"
+msgstr "division par zéro"
+
+#: c-typeck.c:6762 cp/typeck.c:2928
+msgid "right shift count is negative"
+msgstr "le compteur de décalage vers la droite est négatif"
+
+#: c-typeck.c:6769 cp/typeck.c:2934
+msgid "right shift count >= width of type"
+msgstr "compteur de décalage vers la droite >= à la largeur du type"
+
+#: c-typeck.c:6790 cp/typeck.c:2953
+msgid "left shift count is negative"
+msgstr "le compteur de décalage vers la gauche est négatif"
+
+#: c-typeck.c:6793 cp/typeck.c:2955
+msgid "left shift count >= width of type"
+msgstr "compteur de décalage vers la gauche >= à la largeur du type"
+
+#: c-typeck.c:6814
+msgid "shift count is negative"
+msgstr "le compteur de décalage est négatif"
+
+#: c-typeck.c:6816
+msgid "shift count >= width of type"
+msgstr "compteur de décalage >= à la largeur du type"
+
+#: c-typeck.c:6833 cp/typeck.c:2990
+msgid "comparing floating point with == or != is unsafe"
+msgstr "comparer des nombres flottants à l'aide de == ou != n'est pas sûr"
+
+#: c-typeck.c:6859 c-typeck.c:6865
+msgid "ISO C forbids comparison of `void *' with function pointer"
+msgstr "ISO C interdit la comparaison de « void * » avec un pointeur de fonction"
+
+#: c-typeck.c:6868 c-typeck.c:6908 c-typeck.c:6936
+msgid "comparison of distinct pointer types lacks a cast"
+msgstr "il manque un transtypage pour comparer des types distincts de pointeur"
-#: calls.c:1935 calls.c:2271 tree-inline.c:1178
+#: c-typeck.c:6882 c-typeck.c:6887 c-typeck.c:6956 c-typeck.c:6961
+msgid "comparison between pointer and integer"
+msgstr "comparaison entre un pointeur et un entier"
+
+#: c-typeck.c:6903 c-typeck.c:6931
+msgid "ISO C forbids ordered comparisons of pointers to functions"
+msgstr "ISO C interdit les comparaisons ordonnées de pointeurs vers des fonctions"
+
+#: c-typeck.c:6928
+msgid "comparison of complete and incomplete pointers"
+msgstr "comparaison de pointeurs complet et incomplet"
+
+#: c-typeck.c:6944 c-typeck.c:6951
+msgid "ordered comparison of pointer with integer zero"
+msgstr "comparaison ordonnée de pointeur avec le zéro entier"
+
+#: c-typeck.c:6975 cp/typeck.c:3126
+msgid "unordered comparison on non-floating point argument"
+msgstr "comparaison non ordonnée sur un argument n'étant pas en virgule flottante"
+
+#: c-typeck.c:7185
+msgid "comparison between signed and unsigned"
+msgstr "comparaison entre élément signé et élément non signé"
+
+#: c-typeck.c:7231 cp/typeck.c:3373
+msgid "comparison of promoted ~unsigned with constant"
+msgstr "comparaison entre élément promu ~unsigned et une constante"
+
+#: c-typeck.c:7239 cp/typeck.c:3381
+msgid "comparison of promoted ~unsigned with unsigned"
+msgstr "comparaison entre élément promu ~unsigned et un élément non signé"
+
+#: calls.c:1838
+msgid "%Jinlining failed in call to '%F'"
+msgstr "%Jenlignage a échoué dans l'appel à « %F »"
+
+#: calls.c:1839 calls.c:2208 tree-inline.c:1339 tree-inline.c:1346
msgid "called from here"
msgstr "appelé d'ici"
-#: calls.c:2270
-#, c-format
-msgid "can't inline call to `%s'"
-msgstr "impossible d'enligner l'appel à « %s »"
+#: calls.c:2207
+msgid "%Jcan't inline call to '%F'"
+msgstr "%Jimpossible d'enligner l'appel à « %F »"
-#: calls.c:2300
+#: calls.c:2216
+msgid "ignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr "valeur à retourner « %D » ignorée, déclaré avec l'attribut warn_unused_result"
+
+#: calls.c:2229
+msgid "ignoring return value of function declared with attribute warn_unused_result"
+msgstr "valeur à retourner d'une fonction ignorée, déclaré avec l'attribut warn_unused_result"
+
+#: calls.c:2239
msgid "function call has aggregate value"
msgstr "l'appel de fonction a une valeur d'aggrégat"
-#: cfgloop.c:1107
+#: cfg.c:835
#, c-format
-msgid "Size of loop %d should be %d, not %d."
-msgstr "La taille de la boucle %d devrait être %d, et non %d."
+msgid "bb %d on wrong place"
+msgstr "bb %d au mauvais endroit"
-# FIXME
-#: cfgloop.c:1126
+#: cfg.c:841
#, c-format
-msgid "Bb %d do not belong to loop %d."
-msgstr "Bb %d n'appartient pas à la boucle %d."
+msgid "prev_bb of %d should be %d, not %d"
+msgstr "prev_bb de %d devrait être %d, pas %d"
-#: cfgloop.c:1144
+#: cfg.c:857
#, c-format
-msgid "Loop %d's header does not have exactly 2 entries."
-msgstr "L'en-tête de la boucle %d n'a pas exactement 2 entrées."
+msgid "verify_flow_info: Wrong count of block %i %i"
+msgstr "verify_flow_info: Nombre de blocs erroné %i %i"
-#: cfgloop.c:1152
+#: cfg.c:863
#, c-format
-msgid "Loop %d's latch does not have exactly 1 successor."
-msgstr ""
+msgid "verify_flow_info: Wrong frequency of block %i %i"
+msgstr "verify_flow_info: Fréquence de blocs erronée %i %i"
-#: cfgloop.c:1157
+#: cfg.c:871
#, c-format
-msgid "Loop %d's latch does not have header as successor."
-msgstr ""
+msgid "verify_flow_info: Duplicate edge %i->%i"
+msgstr "verify_flow_info: arrête dupliquée %i->%i"
-#: cfgloop.c:1162
+#: cfg.c:877
#, c-format
-msgid "Loop %d's latch does not belong directly to it."
-msgstr ""
+msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+msgstr "verify_flow_info: probabilité de l'arrête %i->%i %i erronée"
-#: cfgloop.c:1168
+#: cfg.c:883
#, c-format
-msgid "Loop %d's header does not belong directly to it."
-msgstr "L'entête de la boucle %d ne lui appartient pas directement."
+msgid "verify_flow_info: Wrong count of edge %i->%i %i"
+msgstr "verify_flow_info: Mauvais nombre d'arrête %i->%i %i"
-#: cfgrtl.c:1774
+#: cfg.c:895
#, c-format
-msgid "bb %d on wrong place"
-msgstr "bb %d au mauvais endroit"
+msgid "verify_flow_info: Basic block %d succ edge is corrupted"
+msgstr "verify_flow_info: l'arrête succ du bloc de base %d est corrompue"
-#: cfgrtl.c:1780
+#: cfg.c:909 cfgrtl.c:1971
#, c-format
-msgid "prev_bb of %d should be %d, not %d"
-msgstr "prev_bb de %d devrait être %d, pas %d"
+msgid "Wrong amount of branch edges after unconditional jump %i"
+msgstr "Mauvais nombre d'arrêtes de branchement après le branchement inconditionnel %i"
-#: cfgrtl.c:1800
+#: cfg.c:917
#, c-format
-msgid "end insn %d for block %d not found in the insn stream"
-msgstr "fin insn %d du bloc %d n'a pas été repéré dans le flot insn"
+msgid "basic block %d pred edge is corrupted"
+msgstr "arrête pred du bloc de base %d corrompue"
-#: cfgrtl.c:1814
+#: cfg.c:943
#, c-format
-msgid "insn %d is in multiple basic blocks (%d and %d)"
-msgstr "insn %d est dans de multiples blocs de base (%d et %d)"
+msgid "basic block %i edge lists are corrupted"
+msgstr "les listes d'arrêtes du bloc de base %i sont corrompues"
-#: cfgrtl.c:1826
+#: cfg.c:955
+msgid "verify_flow_info failed"
+msgstr "verify_flow_info a échoué"
+
+#: cfgloop.c:1134
#, c-format
-msgid "head insn %d for block %d not found in the insn stream"
-msgstr "en-tête insn %d du bloc %d n'a pas été repérée dans le flot insn"
+msgid "Size of loop %d should be %d, not %d."
+msgstr "La taille de la boucle %d devrait être %d, et non %d."
-#: cfgrtl.c:1848
+# FIXME
+#: cfgloop.c:1153
#, c-format
-msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
-msgstr "verify_flow_info: REG_BR_PROB ne correspond pas à la config %i %i"
+msgid "Bb %d do not belong to loop %d."
+msgstr "Bb %d n'appartient pas à la boucle %d."
-#: cfgrtl.c:1855
+#: cfgloop.c:1171
#, c-format
-msgid "verify_flow_info: Wrong count of block %i %i"
-msgstr "verify_flow_info: Nombre de blocs erroné %i %i"
+msgid "Loop %d's header does not have exactly 2 entries."
+msgstr "L'en-tête de la boucle %d n'a pas exactement 2 entrées."
-#: cfgrtl.c:1861
+#: cfgloop.c:1179
#, c-format
-msgid "verify_flow_info: Wrong frequency of block %i %i"
-msgstr "verify_flow_info: Fréquence de blocs erronée %i %i"
+msgid "Loop %d's latch does not have exactly 1 successor."
+msgstr "Le verrou %d de la boucle n'a pas exactement 1 successeur."
-#: cfgrtl.c:1869
+#: cfgloop.c:1184
#, c-format
-msgid "verify_flow_info: Duplicate edge %i->%i"
-msgstr "verify_flow_info: arrête dupliquée %i->%i"
+msgid "Loop %d's latch does not have header as successor."
+msgstr "Le verrou %d de la boucle n'a pas une en-tête comme successeur."
-#: cfgrtl.c:1875
+#: cfgloop.c:1189
#, c-format
-msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
-msgstr "verify_flow_info: probabilité de l'arrête %i->%i %i erronée"
+msgid "Loop %d's latch does not belong directly to it."
+msgstr "Le verrou %d de la boucle ne lui appartient pas directement."
-#: cfgrtl.c:1881
+#: cfgloop.c:1195
#, c-format
-msgid "verify_flow_info: Wrong count of edge %i->%i %i"
-msgstr "verify_flow_info: Mauvais nombre d'arrête %i->%i %i"
+msgid "Loop %d's header does not belong directly to it."
+msgstr "L'entête de la boucle %d ne lui appartient pas directement."
-#: cfgrtl.c:1911
+#: cfgloop.c:1201
#, c-format
-msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
-msgstr "verify_flow_info: blocs incorrects pour le fallthru %i->%i"
+msgid "Loop %d's latch is marked as part of irreducible region."
+msgstr "Le verrou %d de la boucle est défini comme faisant partie d'une zone irréductible"
-#: cfgrtl.c:1926
+#: cfgloop.c:1231
#, c-format
-msgid "verify_flow_info: Incorrect fallthru %i->%i"
-msgstr "verify_flow_info: fallthru incorrect %i->%i"
+msgid "Basic block %d should be marked irreducible."
+msgstr "bloc de base %d devrait être marqué irréductible."
-#: cfgrtl.c:1928
-msgid "wrong insn in the fallthru edge"
-msgstr "insn erronée dans l'arrête fallthru"
+#: cfgloop.c:1237
+#, c-format
+msgid "Basic block %d should not be marked irreducible."
+msgstr "bloc de base %d ne devrait pas être marqué irréductible."
-#: cfgrtl.c:1935
+#: cfgloop.c:1245
#, c-format
-msgid "verify_flow_info: Basic block %d succ edge is corrupted"
-msgstr "verify_flow_info: l'arrête succ du bloc de base %d est corrompue"
+msgid "Edge from %d to %d should be marked irreducible."
+msgstr "Bordures à partir de %d à %d devraient être marqués irréductibles."
+
+#: cfgloop.c:1252
+#, c-format
+msgid "Edge from %d to %d should not be marked irreducible."
+msgstr "Bordures à partir de %d à %d ne devraient être marquées irréductibles."
-#: cfgrtl.c:1951
+#: cfgrtl.c:1877
+#, c-format
+msgid "end insn %d for block %d not found in the insn stream"
+msgstr "fin insn %d du bloc %d n'a pas été repéré dans le flot insn"
+
+#: cfgrtl.c:1891
+#, c-format
+msgid "insn %d is in multiple basic blocks (%d and %d)"
+msgstr "insn %d est dans de multiples blocs de base (%d et %d)"
+
+#: cfgrtl.c:1903
+#, c-format
+msgid "head insn %d for block %d not found in the insn stream"
+msgstr "en-tête insn %d du bloc %d n'a pas été repérée dans le flot insn"
+
+#: cfgrtl.c:1925
+msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i"
+msgstr "verify_flow_info: REG_BR_PROB ne correspond pas à la config %wi %i"
+
+#: cfgrtl.c:1953
#, c-format
msgid "Missing REG_EH_REGION note in the end of bb %i"
msgstr "REG_EH_REGION note manquante à la fin du bb %i"
-#: cfgrtl.c:1959
+#: cfgrtl.c:1961
#, c-format
msgid "Too many outgoing branch edges from bb %i"
msgstr "Trop d'arrêtes de branchement sortantes dans le bb %i"
-#: cfgrtl.c:1964
+#: cfgrtl.c:1966
#, c-format
msgid "Fallthru edge after unconditional jump %i"
msgstr "Arrête fallthru après le branchement inconditionnel %i"
-#: cfgrtl.c:1969
-#, c-format
-msgid "Wrong amount of branch edges after unconditional jump %i"
-msgstr "Mauvais nombre d'arrêtes de branchement après le branchement inconditionnel %i"
-
-#: cfgrtl.c:1975
+#: cfgrtl.c:1977
#, c-format
msgid "Wrong amount of branch edges after conditional jump %i"
msgstr "Mauvais nombre d'arrêtes de branchement après le branchement conditionnel %i"
-#: cfgrtl.c:1980
+#: cfgrtl.c:1982
#, c-format
msgid "Call edges for non-call insn in bb %i"
msgstr "Arrêtes d'appel pour un insn n'étant pas d'appel dans le bb %i"
-#: cfgrtl.c:1989
+#: cfgrtl.c:1991
#, c-format
msgid "Abnormal edges for no purpose in bb %i"
msgstr "Arrête anormale sans but dans le bb %i"
-#: cfgrtl.c:2004
-#, c-format
-msgid "missing barrier after block %i"
-msgstr "barrière manquante après le boc %i"
-
-#: cfgrtl.c:2014
-#, c-format
-msgid "basic block %d pred edge is corrupted"
-msgstr "arrête pred du bloc de base %d corrompue"
-
-#: cfgrtl.c:2031
+#: cfgrtl.c:2001
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is NULL"
msgstr "insn %d à l'intérieur du bloc de base %d mais block_for_insn est NULL"
-#: cfgrtl.c:2035
+#: cfgrtl.c:2005
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is %i"
msgstr "insn %d à l'intérieur du bloc de base %d mais block_for_insn est %i"
-#: cfgrtl.c:2049 cfgrtl.c:2059
+#: cfgrtl.c:2019 cfgrtl.c:2029
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
msgstr "NOTE_INSN_BASIC_BLOCK manquant pour le bloc %d"
-#: cfgrtl.c:2072
+#: cfgrtl.c:2042
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
msgstr "NOTE_INSN_BASIC_BLOCK %d au milieu du bloc de base %d"
-#: cfgrtl.c:2084
+#: cfgrtl.c:2052
#, c-format
msgid "in basic block %d:"
msgstr "dans le bloc de base %d :"
-#: cfgrtl.c:2085
+#: cfgrtl.c:2053
msgid "flow control insn inside a basic block"
msgstr "insn de contrôle de flot à l'intérieur d'un bloc de base"
-#: cfgrtl.c:2104
+#: cfgrtl.c:2099
#, c-format
-msgid "basic block %i edge lists are corrupted"
-msgstr "les listes d'arrêtes du bloc de base %i sont corrompues"
+msgid "missing barrier after block %i"
+msgstr "barrière manquante après le boc %i"
+
+#: cfgrtl.c:2112
+#, c-format
+msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgstr "verify_flow_info: blocs incorrects pour le fallthru %i->%i"
-#: cfgrtl.c:2119
-msgid "basic blocks not numbered consecutively"
-msgstr "les blocs de base ne sont pas numérotés consécutivement"
+#: cfgrtl.c:2127
+#, c-format
+msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgstr "verify_flow_info: fallthru incorrect %i->%i"
-#: cfgrtl.c:2144
+#: cfgrtl.c:2129
+msgid "wrong insn in the fallthru edge"
+msgstr "insn erronée dans l'arrête fallthru"
+
+#: cfgrtl.c:2146
+msgid "basic blocks not laid down consecutively"
+msgstr "les blocs de base ne se suivent pas consécutivement"
+
+#: cfgrtl.c:2171
msgid "insn outside basic block"
msgstr "insn à l'extérieur de tout bloc de base"
-#: cfgrtl.c:2152
+#: cfgrtl.c:2179
msgid "return not followed by barrier"
msgstr "return n'est pas suivi d'une barrière"
# FIXME
# bb est une abréviation courante dans cette partie du fichier pour « basic block »
-#: cfgrtl.c:2157
+#: cfgrtl.c:2186
#, c-format
msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr "nombre de bb noté dans la chaîne d'insn (%d) != n_basic_blocks (%d)"
-#: cfgrtl.c:2161
-msgid "verify_flow_info failed"
-msgstr "verify_flow_info a échoué"
+#: cgraph.c:161
+msgid "function body not available"
+msgstr "corps de la fonction n'est pas disponible"
+
+#: cgraph.c:163 cgraphunit.c:341
+msgid "redefined extern inline functions are not considered for inlining"
+msgstr "fonctions externes enlignes redéfinies n'ont pas été retenues pour l'enlignage"
+
+#: cgraph.c:166 cgraphunit.c:346
+msgid "function not considered for inlining"
+msgstr "fonction n'a pas été retenue pour l'enlignage"
+
+#: cgraph.c:168 cgraphunit.c:344
+msgid "function not inlinable"
+msgstr "fonction ne peut être enligne"
-#: collect2.c:425
+#: cgraph.c:476
+msgid "%D renamed after being referenced in assembly"
+msgstr "« %D » renommé après avoir été référencé durant l'assemblage"
+
+#: cgraphunit.c:1042
+msgid "--param large-function-growth limit reached"
+msgstr "--param large-function-growth limite atteinte"
+
+#: cgraphunit.c:1055
+msgid "--param large-function-growth limit reached while inlining the caller"
+msgstr "--param large-function-growth limite atteinte lors de l'enlignage de l'appelant"
+
+#: cgraphunit.c:1120
+msgid "--param max-inline-insns-single limit reached"
+msgstr "--param max-inline-insns-single limite atteinte"
+
+#: cgraphunit.c:1144
+msgid "--param max-inline-insns-single limit reached after inlining into the callee"
+msgstr "--param max-inline-insns-single limite atteinte après l'enlignage dans l'appellé"
+
+#: cgraphunit.c:1221
+msgid "--param inline-unit-growth limit reached"
+msgstr "--param inline-unit-growth limite atteinte"
+
+#: cgraphunit.c:1293 cgraphunit.c:1437
+msgid "recursive inlining"
+msgstr "enlignage récursif"
+
+#: collect2.c:406
msgid "internal error"
msgstr "erreur interne"
-#: collect2.c:934
+#: collect2.c:894
msgid "no arguments"
msgstr "pas d'argument"
# I18N
-#: collect2.c:1263 collect2.c:1411 collect2.c:1444
+#: collect2.c:1226 collect2.c:1374 collect2.c:1407
#, c-format
msgid "fopen %s"
msgstr "fopen() %s"
# I18N
-#: collect2.c:1266 collect2.c:1416 collect2.c:1447
+#: collect2.c:1229 collect2.c:1379 collect2.c:1410
#, c-format
msgid "fclose %s"
msgstr "fclose() %s"
-#: collect2.c:1275
+#: collect2.c:1238
#, c-format
msgid "collect2 version %s"
msgstr "collect2 version %s"
-#: collect2.c:1365
+#: collect2.c:1328
#, c-format
msgid "%d constructor(s) found\n"
msgstr "%d constructeur(s) trouvé(s)\n"
-#: collect2.c:1366
+#: collect2.c:1329
#, c-format
msgid "%d destructor(s) found\n"
msgstr "%d destructeur(s) trouvé(s)\n"
-#: collect2.c:1367
+#: collect2.c:1330
#, c-format
msgid "%d frame table(s) found\n"
msgstr "%d table(s) de trame trouvée(s)\n"
-#: collect2.c:1508
+#: collect2.c:1470
#, c-format
msgid "%s terminated with signal %d [%s]%s"
msgstr "%s terminé par le signal %d [%s]%s"
-#: collect2.c:1527
+#: collect2.c:1488
#, c-format
msgid "%s returned %d exit status"
msgstr "%s a retourné %d comme valeur de sortie"
-#: collect2.c:1555
+#: collect2.c:1513
#, c-format
msgid "[cannot find %s]"
msgstr "[%s introuvable]"
-#: collect2.c:1570
+#: collect2.c:1528
#, c-format
msgid "cannot find `%s'"
msgstr "« %s » introuvable"
-#: collect2.c:1581 collect2.c:1584
+#: collect2.c:1539 collect2.c:1542
#, c-format
msgid "redirecting stdout: %s"
msgstr "redirection de stdout : %s"
# FIXME
-#: collect2.c:1627
+#: collect2.c:1581
#, c-format
msgid "[Leaving %s]\n"
msgstr "[Laissant %s]\n"
-#: collect2.c:1870
+#: collect2.c:1801
#, c-format
msgid ""
"\n"
@@ -3925,92 +3913,92 @@ msgstr ""
"\n"
"write_c_file - le nom de sortie est %s, le préfixe est %s\n"
-#: collect2.c:2082
+#: collect2.c:2005
msgid "cannot find `nm'"
msgstr "« nm » introuvable"
# I18N
-#: collect2.c:2092 collect2.c:2533
+#: collect2.c:2015 collect2.c:2444
msgid "pipe"
msgstr "pipe"
# I18N
-#: collect2.c:2096 collect2.c:2537
+#: collect2.c:2019 collect2.c:2448
msgid "fdopen"
msgstr "fdopen"
# I18N
-#: collect2.c:2122 collect2.c:2563
+#: collect2.c:2045 collect2.c:2474
#, c-format
msgid "dup2 %d 1"
msgstr "dup2 %d 1"
# I18N
-#: collect2.c:2125 collect2.c:2128 collect2.c:2141 collect2.c:2566
-#: collect2.c:2569 collect2.c:2582
+#: collect2.c:2048 collect2.c:2051 collect2.c:2064 collect2.c:2477
+#: collect2.c:2480 collect2.c:2493
#, c-format
msgid "close %d"
msgstr "close %d"
# I18N
-#: collect2.c:2131 collect2.c:2572
+#: collect2.c:2054 collect2.c:2483
#, c-format
msgid "execv %s"
msgstr "execv %s"
-#: collect2.c:2185
+#: collect2.c:2108
#, c-format
msgid "init function found in object %s"
msgstr "fonction init trouvée dans l'objet %s"
-#: collect2.c:2193
+#: collect2.c:2116
#, c-format
msgid "fini function found in object %s"
msgstr "fonction fini() trouvée dans l'objet %s"
# I18N
-#: collect2.c:2216 collect2.c:2621
+#: collect2.c:2139 collect2.c:2532
msgid "fclose"
msgstr "fclose"
-#: collect2.c:2261
+#: collect2.c:2181
#, c-format
msgid "unable to open file '%s'"
msgstr "impossible d'ouvrir le fichier « %s »"
-#: collect2.c:2263
+#: collect2.c:2183
#, c-format
msgid "unable to stat file '%s'"
msgstr "impossible d'analyser le fichier « %s » avec stat()"
-#: collect2.c:2269
+#: collect2.c:2189
#, c-format
msgid "unable to mmap file '%s'"
msgstr "incpable de projeter en mémoire le fichier « %s » avec nmap()"
-#: collect2.c:2422
+#: collect2.c:2335
msgid "not found\n"
msgstr "introuvable\n"
-#: collect2.c:2424 collect2.c:2600
+#: collect2.c:2337 collect2.c:2511
#, c-format
msgid "dynamic dependency %s not found"
msgstr "dépendance dynamique %s introuvable"
-#: collect2.c:2444
+#: collect2.c:2356
#, c-format
msgid "bad magic number in file '%s'"
msgstr "le nombre magique du fichier « %s » est erroné"
-#: collect2.c:2466
+#: collect2.c:2378
msgid "dynamic dependencies.\n"
msgstr "dépendances dynamiques.\n"
-#: collect2.c:2524
+#: collect2.c:2435
msgid "cannot find `ldd'"
msgstr "« ldd » introuvable"
-#: collect2.c:2585
+#: collect2.c:2496
msgid ""
"\n"
"ldd output with constructors/destructors.\n"
@@ -4018,1405 +4006,1123 @@ msgstr ""
"\n"
"sortie de ldd avec constructeurs/destructeurs.\n"
-#: collect2.c:2612
+#: collect2.c:2523
#, c-format
msgid "unable to open dynamic dependency '%s'"
msgstr "incapable d'ouvrir la dépendance dynamique « %s »"
-#: collect2.c:2726
+#: collect2.c:2683
#, c-format
msgid "%s: not a COFF file"
msgstr "%s : n'est pas un fichier COFF"
-#: collect2.c:2845
+#: collect2.c:2802
#, c-format
msgid "%s: cannot open as COFF file"
msgstr "%s : ne peut ouvrir en tant que fichier COFF"
# I18N
-#: collect2.c:2901
+#: collect2.c:2857
#, c-format
msgid "library lib%s not found"
msgstr "bibliothèque lib%s introuvable"
-# I18N
-#: collect2.c:3028
+#: combine.c:13027
#, c-format
-msgid "open %s"
-msgstr "open %s"
-
-#: collect2.c:3051
-msgid "incompatibilities between object file & expected values"
-msgstr "incompatibilités entre le fichier objet et les valeurs attendues"
+msgid ""
+";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
+"\n"
+msgstr ""
+";; Statistiques du combinateur : %d tentatives, %d substitutions (%d requérant un nouvel espace),\n"
+";; %d succès.\n"
+"\n"
-#: collect2.c:3124
+#: combine.c:13036
#, c-format
msgid ""
"\n"
-"Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
msgstr ""
"\n"
-"Traitement de la table des symboles #%d, décalage = 0x%.8lx, sorte = %s\n"
+";; Totaux du combinateur : %d tentatives, %d substitutions (%d requérant un nouvel espace),\n"
+";; %d succès.\n"
+"\n"
-# FIXME
-#: collect2.c:3133
-msgid "string section missing"
-msgstr "chaîne de section manquante"
+#: convert.c:70
+msgid "cannot convert to a pointer type"
+msgstr "ne peut convertir en un type pointeur"
-#: collect2.c:3136
-msgid "section pointer missing"
-msgstr "pointeur de section manquant"
+#: convert.c:267
+msgid "pointer value used where a floating point value was expected"
+msgstr "valeur de pointeur utilisée là où une valeur à virgule flottante était attendue"
-#: collect2.c:3184
-msgid "no symbol table found"
-msgstr "aucune table des symboles trouvée"
+#: convert.c:271
+msgid "aggregate value used where a float was expected"
+msgstr "valeur d'aggrégat utilisée là où un flottant était attendu"
-#: collect2.c:3197
-msgid "no cmd_strings found"
-msgstr "aucun cmd_strings trouvé"
+#: convert.c:296
+msgid "conversion to incomplete type"
+msgstr "conversion vers un type incomplet"
-#: collect2.c:3209
-msgid ""
-"\n"
-"Updating header and load commands.\n"
-"\n"
-msgstr ""
-"\n"
-"Mise à jour des en-têtes et des commandes de chargement.\n"
-"\n"
+#: convert.c:600 convert.c:678
+msgid "can't convert between vector values of different size"
+msgstr "ne peut convertir entre des valeurs de vecteurs de tailles différentes"
-# FIXME
-#: collect2.c:3216
-#, c-format
-msgid "load command map, %d cmds, new size %ld.\n"
-msgstr "Chargement de la carte des commandes, %d commandes, nouvelle taille %ld.\n"
+#: convert.c:606
+msgid "aggregate value used where an integer was expected"
+msgstr "valeur d'aggrégat utilisée là où un entier était attendu"
-#: collect2.c:3247
-msgid ""
-"writing load commands.\n"
-"\n"
-msgstr ""
-"écriture des commandes de chargement.\n"
-"\n"
+#: convert.c:657 f/com.c:1101
+msgid "pointer value used where a complex was expected"
+msgstr "valeur de pointeur utilisée là où un complexe était attendu"
-# I18N
-#: collect2.c:3267
+#: convert.c:661 f/com.c:1103
+msgid "aggregate value used where a complex was expected"
+msgstr "valeur d'aggrégat utilisée là où un complexe était attendu"
+
+#: convert.c:684
+msgid "can't convert value to a vector"
+msgstr "ne peut convertir une valeur en vecteur"
+
+#: coverage.c:164
#, c-format
-msgid "close %s"
-msgstr "close %s"
+msgid "`%s' is not a gcov data file"
+msgstr "« %s » n'est pas un fichier de données gcov"
-#: collect2.c:3341
-msgid "could not convert 0x%l.8x into a region"
-msgstr "ne peut convertir 0x%l.8x en région"
+#: coverage.c:175
+#, c-format
+msgid "`%s' is version `%.4s', expected version `%.4s'"
+msgstr "« %s » est de version « %.4s », version « %.4s » attendue"
-#: collect2.c:3345
+#: coverage.c:255 coverage.c:263
#, c-format
-msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
-msgstr "fonction %s, région %d, décalage = %ld (0x%.8lx)\n"
+msgid "coverage mismatch for function %u while reading execution counters."
+msgstr "non concordance de la couverture pour la fonction %u lors de la lecture des compteurs d'exécution"
-#: collect2.c:3472
-msgid "bad magic number"
-msgstr "nombre magique erroné"
+#: coverage.c:257 coverage.c:340
+#, c-format
+msgid "checksum is %x instead of %x"
+msgstr "somme de contrôle est %x au lieu de %x"
-#: collect2.c:3473
-msgid "bad header version"
-msgstr "version d'en-tête erronée"
+#: coverage.c:265 coverage.c:348
+#, c-format
+msgid "number of counters is %d instead of %d"
+msgstr "nombre de compteurs est %d au lieu de %d"
-# FIXME: ou version d'en-tête brut erronée
-#: collect2.c:3474
-msgid "bad raw header version"
-msgstr "version brute d'en-tête erronée"
+#: coverage.c:271
+#, c-format
+msgid "cannot merge separate %s counters for function %u"
+msgstr "ne peut faire la fusion séparée des compteurs %s pour la fonction %u"
-# FIXME: ou tampon d'en-tête brut trop petit
-#: collect2.c:3475
-msgid "raw header buffer too small"
-msgstr "tampon brut d'en-tête trop petit"
+#: coverage.c:296
+#, c-format
+msgid "`%s' has overflowed"
+msgstr "« %s » a déborbé"
-#: collect2.c:3476
-msgid "old raw header file"
-msgstr "ancien fichier d'en-tête brute"
+#: coverage.c:296
+#, c-format
+msgid "`%s' is corrupted"
+msgstr "« %s » est corrompu"
-#: collect2.c:3477
-msgid "unsupported version"
-msgstr "version non reconnue"
+#: coverage.c:319
+#, c-format
+msgid "file %s not found, execution counts assumed to be zero"
+msgstr "fichier %s non repéré, compteur d'exécution assumé être à zéro"
-#: collect2.c:3479
+#: coverage.c:329
#, c-format
-msgid "unknown {de,en}code_mach_o_hdr return value %d"
-msgstr "mauvaise valeur de retour (%d) de {de,en}code_mach_o_hdr"
+msgid "no coverage for function '%s' found."
+msgstr "pas de couverture repérée pour la fonction « %s »"
-# I18N
-#: collect2.c:3499
+#: coverage.c:337 coverage.c:345
#, c-format
-msgid "fstat %s"
-msgstr "fstat %s"
+msgid "coverage mismatch for function '%s' while reading counter '%s'."
+msgstr "non concordance de la couverture pour la fonction « %s » lors de la lecture des compteurs d'exécution « %s »"
-# I18N
-#: collect2.c:3536 collect2.c:3584
+#: coverage.c:492
#, c-format
-msgid "lseek %s 0"
-msgstr "lseek %s 0"
+msgid "cannot open %s"
+msgstr "ne peut ouvrir %s"
-# I18N
-#: collect2.c:3540
+#: coverage.c:527
#, c-format
-msgid "read %s"
-msgstr "read %s"
+msgid "error writing `%s'"
+msgstr "erreur d'écriture dans %s"
-#: collect2.c:3543
+#. XXX should be DL_SORRY
+#: cppcharset.c:653
#, c-format
-msgid "read %ld bytes, expected %ld, from %s"
-msgstr "lu %ld octets, attendu %ld, de %s"
+msgid "conversion from %s to %s not supported by iconv"
+msgstr "conversion de %s vers %s n'est pas supporté par iconv"
-# I18N
-#: collect2.c:3564
+#: cppcharset.c:656
+msgid "iconv_open"
+msgstr "iconv_open"
+
+#. XXX should be DL_SORRY
+#: cppcharset.c:664
#, c-format
-msgid "msync %s"
-msgstr "msync %s"
+msgid "no iconv implementation, cannot convert from %s to %s"
+msgstr "pas d'implantation iconv, ne peut convertir de %s vers %s"
-# I18N
-#: collect2.c:3571
+#: cppcharset.c:808
+msgid "universal character names are only valid in C++ and C99"
+msgstr "noms de caractère universel sont seulement valides en C++ et C89"
+
+#: cppcharset.c:811
#, c-format
-msgid "munmap %s"
-msgstr "munmap %s"
+msgid "the meaning of '\\%c' is different in traditional C"
+msgstr "la signification de « \\%c » est différente en C traditionel"
-# I18N
-#: collect2.c:3588
+# FIXME
+#: cppcharset.c:837
#, c-format
-msgid "write %s"
-msgstr "write %s"
+msgid "incomplete universal character name %.*s"
+msgstr "nom de caractère universel incomplet %.*s"
-#: collect2.c:3591
+#: cppcharset.c:849
#, c-format
-msgid "wrote %ld bytes, expected %ld, to %s"
-msgstr "écrit %ld octets, attendu %ld, vers %s"
+msgid "%.*s is not a valid universal character"
+msgstr "%.*s n'est pas un caractère universel valide"
-#: combine.c:13222
+#: cppcharset.c:859
#, c-format
-msgid ""
-";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
-"\n"
-msgstr ""
-";; Statistiques du combinateur : %d tentatives, %d substitutions (%d requérant un nouvel espace),\n"
-";; %d succès.\n"
-"\n"
+msgid "universal character %.*s is not valid in an identifier"
+msgstr "caractère universel %.*s n'est pas valide dans un identificcateur"
-#: combine.c:13232
+#: cppcharset.c:863
#, c-format
-msgid ""
-"\n"
-";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
-msgstr ""
-"\n"
-";; Totaux du combinateur : %d tentatives, %d substitutions (%d requérant un nouvel espace),\n"
-";; %d succès.\n"
-"\n"
+msgid "universal character %.*s is not valid at the start of an identifier"
+msgstr "caractère universel %.*s n'est pas valide au début d'un identificcateur"
-#: convert.c:69
-msgid "cannot convert to a pointer type"
-msgstr "ne peut convertir en un type pointeur"
+#: cppcharset.c:898
+msgid "converting UCN to source character set"
+msgstr "conversion UCN vers le jeu source de caractères"
-#: convert.c:102
-msgid "pointer value used where a floating point value was expected"
-msgstr "valeur de pointeur utilisée là où une valeur à virgule flottante était attendue"
+#: cppcharset.c:902
+msgid "converting UCN to execution character set"
+msgstr "conversion UCN vers le jeu d'exécution de caractères"
-#: convert.c:106
-msgid "aggregate value used where a float was expected"
-msgstr "valeur d'aggrégat utilisée là où un flottant était attendu"
+#: cppcharset.c:967
+msgid "the meaning of '\\x' is different in traditional C"
+msgstr "la signification de « \\x » est différente en C traditionel"
-#: convert.c:132
-msgid "conversion to incomplete type"
-msgstr "conversion vers un type incomplet"
+#: cppcharset.c:984 f/lex.c:580
+msgid "\\x used with no following hex digits"
+msgstr "\\x utilisé sans être suivi de chiffres en hexdécimal"
-#: convert.c:414 convert.c:494
-msgid "can't convert between vector values of different size"
-msgstr "ne peut convertir entre des valeurs de vecteurs de tailles différentes"
+#: cppcharset.c:991
+msgid "hex escape sequence out of range"
+msgstr "séquence d'échappement hexadécimale hors limite"
-#: convert.c:420
-msgid "aggregate value used where an integer was expected"
-msgstr "valeur d'aggrégat utilisée là où un entier était attendu"
+#: cppcharset.c:1030
+msgid "octal escape sequence out of range"
+msgstr "séquence d'échappement octale hors limite"
-#: convert.c:472 f/com.c:1100
-msgid "pointer value used where a complex was expected"
-msgstr "valeur de pointeur utilisée là où un complexe était attendu"
+#: cppcharset.c:1098
+msgid "the meaning of '\\a' is different in traditional C"
+msgstr "la signification de « \\a » est différente en C traditionel"
-#: convert.c:476 f/com.c:1102
-msgid "aggregate value used where a complex was expected"
-msgstr "valeur d'aggrégat utilisée là où un complexe était attendu"
+#: cppcharset.c:1105
+#, c-format
+msgid "non-ISO-standard escape sequence, '\\%c'"
+msgstr "séquence d'échappement « \\%c » non conforme au standard ISO"
-#: convert.c:500
-msgid "can't convert value to a vector"
-msgstr "ne peut convertir une valeur en vecteur"
+#: cppcharset.c:1113
+#, c-format
+msgid "unknown escape sequence '\\%c'"
+msgstr "séquence d'échappement « \\%c » inconnue"
+
+#: cppcharset.c:1116
+#, c-format
+msgid "unknown escape sequence: '\\%03o'"
+msgstr "séquence d'échappement « \\%03o » inconnue"
+
+#: cppcharset.c:1122
+msgid "converting escape sequence to execution character set"
+msgstr "conversion d'une séquence d'échappement vers un jeu d'exécution de caractères"
+
+#: cppcharset.c:1181
+msgid "converting to execution character set"
+msgstr "conversion vers un jeu d'exécution de caractères"
-#: cpperror.c:113
+#: cppcharset.c:1244 cppcharset.c:1307
+msgid "character constant too long for its type"
+msgstr "constante caractère trop longue pour son type"
+
+#: cppcharset.c:1247
+msgid "multi-character character constant"
+msgstr "constante caractère multi-caractères"
+
+#: cppcharset.c:1339
+msgid "empty character constant"
+msgstr "constante caractère vide"
+
+#: cppcharset.c:1378
+#, c-format
+msgid "failure to convert %s to %s"
+msgstr "échec de conversion de %s vers %s"
+
+#: cpperror.c:110 diagnostic.def:5
msgid "warning: "
msgstr "attention : "
-#: cpperror.c:115
+#: cpperror.c:112
msgid "internal error: "
msgstr "erreur interne : "
-#: cpperror.c:189
+#: cpperror.c:174
msgid "stdout"
msgstr "stdout"
-#: cpperror.c:191 gcc.c:6428
-#, c-format
-msgid "%s: %s"
-msgstr "%s : %s"
-
-#: cppexp.c:199
+#: cppexp.c:192
msgid "too many decimal points in number"
msgstr "trop de points décimaux dans le nombre"
-#: cppexp.c:219
+#: cppexp.c:212
#, c-format
msgid "invalid digit \"%c\" in octal constant"
msgstr "chiffre « %c » invalide dans la constante en base 8"
-#: cppexp.c:225
+#: cppexp.c:218
msgid "use of C99 hexadecimal floating constant"
msgstr "usage d'une constante hexadécimale constante à la C99"
-#: cppexp.c:234
+#: cppexp.c:227
msgid "exponent has no digits"
msgstr "l'exposant n'a pas de chiffre"
-#: cppexp.c:241
+#: cppexp.c:234
msgid "hexadecimal floating constants require an exponent"
msgstr "la contante hexadécimale flottante requière un exposant"
-#: cppexp.c:247
+#: cppexp.c:240
#, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "suffixe « %.*s » invalide pour une constante flottante"
-#: cppexp.c:257 cppexp.c:282
+#: cppexp.c:250 cppexp.c:275
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr "le C traditionnel interdit le suffixe « %.*s »"
-#: cppexp.c:268
+#: cppexp.c:261
#, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "suffixe « %.*s » invalide pour une constante entière"
-#: cppexp.c:289
+#: cppexp.c:283
msgid "use of C99 long long integer constant"
msgstr "usage d'une constante entière « long long » à la C99"
-#: cppexp.c:295
+#: cppexp.c:290
msgid "imaginary constants are a GCC extension"
msgstr "les constantes imaginaires sont une extension GCC"
-#: cppexp.c:383
+#: cppexp.c:376
msgid "integer constant is too large for its type"
msgstr "constante entière trop grande pour tenir dans son type"
-#: cppexp.c:395
+#: cppexp.c:388
msgid "integer constant is so large that it is unsigned"
msgstr "cette constante entière est si grande qu'elle ne peut être signée"
-#: cppexp.c:482
+#: cppexp.c:470
msgid "missing ')' after \"defined\""
msgstr "« ) » manquant après « defined »"
-#: cppexp.c:489
+#: cppexp.c:477
msgid "operator \"defined\" requires an identifier"
msgstr "l'opérateur « defined » requiert un identificateur"
-#: cppexp.c:497
+#: cppexp.c:485
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr "(« %s » est un élément lexical alternatif pour « %s » en C++)"
-#: cppexp.c:507
+#: cppexp.c:495
msgid "this use of \"defined\" may not be portable"
msgstr "cette utilisation de « defined » peut ne pas être portable"
-#: cppexp.c:545
+#: cppexp.c:531
msgid "floating constant in preprocessor expression"
msgstr "constante flottante dans une expresion pour le préprocesseur"
-#: cppexp.c:551
+#: cppexp.c:537
msgid "imaginary number in preprocessor expression"
msgstr "constante complexe dans une expresion pour le préprocesseur"
-#: cppexp.c:596
-#, c-format
-msgid "ISO C++ does not permit \"%s\" in #if"
-msgstr "le C++ ISO n'autorise pas « %s » dans #if"
-
-#: cppexp.c:604
+#: cppexp.c:582
#, c-format
msgid "\"%s\" is not defined"
msgstr "« %s » n'est pas défini"
-#: cppexp.c:737 cppexp.c:772
+#: cppexp.c:714 cppexp.c:743
#, c-format
msgid "missing binary operator before token \"%s\""
msgstr "opérateur binaire manquant avant l'élément lexical « %s »"
-#: cppexp.c:756
-#, c-format
-msgid "invalid character '%c' in #if"
-msgstr "caractère « %c » invalide dans #if"
-
-#: cppexp.c:758
-#, c-format
-msgid "invalid character '\\%03o' in #if"
-msgstr "caractère « \\%03o » invalide dans #if"
-
-#: cppexp.c:763
+#: cppexp.c:734
#, c-format
msgid "token \"%s\" is not valid in preprocessor expressions"
msgstr "l'élément lexical « %s » n'est pas valide dans les expressions pour le préprocesseur"
-#: cppexp.c:782
+#: cppexp.c:753
msgid "void expression between '(' and ')'"
msgstr "expression void entre parenthèses"
-#: cppexp.c:785
+#: cppexp.c:756
msgid "#if with no expression"
msgstr "#if sans expression"
-#: cppexp.c:787
+#: cppexp.c:758
#, c-format
msgid "operator '%s' has no right operand"
msgstr "l'opérateur « %s » n'a pas d'opérande droite"
-#: cppexp.c:813
+#: cppexp.c:784
msgid " ':' without preceding '?'"
msgstr "« : » n'est pas précédé de « ? »"
-#: cppexp.c:840
+#: cppexp.c:811
msgid "unbalanced stack in #if"
msgstr "pile non balancée dans #if"
-#: cppexp.c:862
+#: cppexp.c:830
#, c-format
msgid "impossible operator '%u'"
msgstr "opérateur impossible « %u »"
-#: cppexp.c:954
+#: cppexp.c:922
msgid "missing ')' in expression"
msgstr "« ) » manquante dans l'expresion"
-#: cppexp.c:975
+#: cppexp.c:943
msgid "'?' without following ':'"
msgstr "« ? » n'est pas suivi de « : »"
-#: cppexp.c:985
+#: cppexp.c:953
msgid "integer overflow in preprocessor expression"
msgstr "débordement d'entier dans l'expresion pour le préprocesseur"
-#: cppexp.c:990
+#: cppexp.c:958
msgid "missing '(' in expression"
msgstr "« ( » manquante dans l'expresion"
-#: cppexp.c:1026
+#: cppexp.c:990
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr "L'opérande gauche de « %s » change de signe lors de sa promotion"
-#: cppexp.c:1031
+#: cppexp.c:995
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr "L'opérande droite de « %s » change de signe lors de sa promotion"
-#: cppexp.c:1414
+#: cppexp.c:1352
msgid "comma operator in operand of #if"
msgstr "opérateur virgule dans l'opérande de #if"
-#: cppexp.c:1551
+#: cppexp.c:1483
msgid "division by zero in #if"
msgstr "division par zéro dans #if"
-#: cppfiles.c:411
-#, c-format
-msgid "%s is too large"
-msgstr "%s est trop grand"
+#: cppfiles.c:370
+msgid "NULL directory in find_file"
+msgstr "répertoire NUL dans find_file"
-#: cppfiles.c:447
-#, c-format
-msgid "%s is shorter than expected"
-msgstr "%s est plus petit que prévu"
+#: cppfiles.c:397
+msgid "one or more PCH files were found, but they were invalid"
+msgstr "un ou plusieurs fichiers PCH ont été repérés, mais ils étaient invalides"
+
+#: cppfiles.c:400
+msgid "use -Winvalid-pch for more information"
+msgstr "utiliser -Winvalid-pch pour plus d'informations"
# FIXME
-#: cppfiles.c:461
+#: cppfiles.c:458
#, c-format
msgid "%s is a block device"
msgstr "%s est un périphérique de blocs"
-#: cppfiles.c:594
+#: cppfiles.c:475
#, c-format
-msgid "no include path in which to find %s"
-msgstr "aucun chemin d'inclusion ne permet de trouver %s"
-
-# FIXME
-#: cppfiles.c:668
-msgid "Multiple include guards may be useful for:\n"
-msgstr "De multiples balises pour les inclusions peuvent être utiles pour:\n"
-
-#: cppfiles.c:1014
-msgid "absolute file name in remap_filename"
-msgstr "nom de fichier absolu dans remap_filename"
-
-#: cppinit.c:224
-#, c-format
-msgid "ignoring nonexistent directory \"%s\"\n"
-msgstr "le répertoire « %s » est ignoré car inexistant\n"
+msgid "%s is too large"
+msgstr "%s est trop grand"
-#: cppinit.c:231
+#: cppfiles.c:510
#, c-format
-msgid "%s: Not a directory"
-msgstr "%s : ce n'est pas un répertoire"
+msgid "%s is shorter than expected"
+msgstr "%s est plus petit que prévu"
-#: cppinit.c:287
+#: cppfiles.c:696
#, c-format
-msgid "ignoring duplicate directory \"%s\"\n"
-msgstr "le répertoire « %s » est ignoré car présent deux fois\n"
+msgid "no include path in which to search for %s"
+msgstr "aucun chemin d'inclusion dans lequel on pourrait repérer %s"
-#: cppinit.c:325
-msgid " as it is a non-system directory that duplicates a system directory\n"
-msgstr " car il s'agit d'un répertoire non système dupliquant un répertoire système\n"
+# FIXME
+#: cppfiles.c:956
+msgid "Multiple include guards may be useful for:\n"
+msgstr "De multiples balises pour les inclusions peuvent être utiles pour:\n"
-#: cppinit.c:891
+#: cppinit.c:387
msgid "cppchar_t must be an unsigned type"
msgstr "cppchar_t doit être d'un type non signé"
-#: cppinit.c:895
+#: cppinit.c:391
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr "l'arithmétique du préprocesseur a une précision maximale de %lu bits ; la cible requière %lu bits"
-#: cppinit.c:901
+#: cppinit.c:398
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr "l'arithmétique de CPP doit être au moins aussi précise que le type int de la cible"
-#: cppinit.c:904
+#: cppinit.c:401
msgid "target char is less than 8 bits wide"
msgstr "sur la cible, « char » fait moins de 8 bits"
-#: cppinit.c:908
+#: cppinit.c:405
msgid "target wchar_t is narrower than target char"
msgstr "sur la cible, « wchar_t » est plus petit que « char »"
-#: cppinit.c:912
+#: cppinit.c:409
msgid "target int is narrower than target char"
msgstr "sur la cible, « int » est plus petit que « char »"
-#: cppinit.c:916
+#: cppinit.c:414
msgid "CPP half-integer narrower than CPP character"
msgstr "les demi-entiers de CPP sont plus petit que les caractères de CPP"
-#: cppinit.c:920
+#: cppinit.c:418
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
-msgstr "CPP sur cette machine ne peut gérer les caractères longs constants de plus de %lu bits, mais la cible requière %lu bits"
-
-#: cppinit.c:972
-msgid "#include \"...\" search starts here:\n"
-msgstr "la recherche pour #include \"...\" débute ici :\n"
-
-#: cppinit.c:976
-msgid "#include <...> search starts here:\n"
-msgstr "la recherche pour #include <...> débute ici:\n"
-
-#: cppinit.c:979
-msgid "End of search list.\n"
-msgstr "Fin de la liste de recherche.\n"
-
-#: cppinit.c:1057
-msgid "<built-in>"
-msgstr "<interne>"
-
-#: cppinit.c:1059
-msgid "<command line>"
-msgstr "<ligne de commande>"
-
-#. Irix6 "cc -n32" and OSF4 cc have problems with char foo[] = ("string");
-#. I.e. a const string initializer with parens around it. That is
-#. what N_("string") resolves to, so we make no_* be macros instead.
-#: cppinit.c:1164
-#, c-format
-msgid "assertion missing after %s"
-msgstr "assertion manquante après %s"
-
-#: cppinit.c:1165
-#, c-format
-msgid "directory name missing after %s"
-msgstr "nom de répertoire manquant après %s"
-
-#: cppinit.c:1166
-#, c-format
-msgid "file name missing after %s"
-msgstr "nom de fichier manquant après %s"
-
-#: cppinit.c:1167
-#, c-format
-msgid "macro name missing after %s"
-msgstr "nom de macro manquant après %s"
-
-#: cppinit.c:1168
-#, c-format
-msgid "path name missing after %s"
-msgstr "nom de chemin manquant après %s"
-
-#: cppinit.c:1353
-msgid "-I- specified twice"
-msgstr "-I- spécifié deux fois"
-
-#: cpplex.c:149
-#, c-format
-msgid "trigraph ??%c converted to %c"
-msgstr "trigraphe ??%c converti en %c"
-
-#: cpplex.c:157
-#, c-format
-msgid "trigraph ??%c ignored"
-msgstr "trigraphe ??%c ignoré"
-
-#: cpplex.c:214
-msgid "backslash and newline separated by space"
-msgstr "« \\ » et retour de chariot séparés par un blanc"
-
-#: cpplex.c:221 cpptrad.c:158
-msgid "backslash-newline at end of file"
-msgstr "« \\ » en fin de ligne à la fin du fichier"
-
-#: cpplex.c:287 cpptrad.c:199
-msgid "\"/*\" within comment"
-msgstr "« /* » à l'intérieur d'un commentaire"
+msgstr "CPP sur cette machine ne peut gérer les constantes larges de caractères de plus de %lu bits, mais la cible requière %lu bits"
# I18N
-#: cpplex.c:395
+#: cpplex.c:410
msgid "null character(s) ignored"
msgstr "caractère(s) nul(s) ignoré(s)"
-#: cpplex.c:402
-#, c-format
-msgid "%s in preprocessing directive"
-msgstr "%s dans la directive du préprocesseur"
+#: cpplex.c:445
+msgid "'$' in identifier or number"
+msgstr "« $ » dans un identificateur ou un nombre"
# FIXME
-#: cpplex.c:475
+#: cpplex.c:492
#, c-format
msgid "attempt to use poisoned \"%s\""
-msgstr "tentative d'utilisation d'un « %s » empoisonné"
+msgstr "tentative d'utilisation d'un « %s » corrompu"
-#: cpplex.c:483
+#: cpplex.c:500
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr "« __VA_ARGS__ » peut seulement appraître dans l'expansion des macros C99 à nombre variable d'arguments"
-#: cpplex.c:555
-msgid "'$' character(s) in identifier or number"
-msgstr "caractère(s) « $ » dans un identificateur ou un nombre"
-
-#: cpplex.c:698
-#, c-format
-msgid "missing terminating %c character"
-msgstr "caractère %c de terminaison manquant"
-
-#: cpplex.c:711
+#: cpplex.c:596
msgid "null character(s) preserved in literal"
msgstr "caractère(s) nul préservé(s) dans la chaîne"
-#: cpplex.c:915 cpptrad.c:487
-msgid "no newline at end of file"
-msgstr "pas de retour chariot à la fin du fichier"
-
-#: cpplex.c:1092 cpptrad.c:213
+#: cpplex.c:916
msgid "unterminated comment"
msgstr "commentaire non terminé"
-#: cpplex.c:1103
+#: cpplex.c:927
msgid "C++ style comments are not allowed in ISO C90"
msgstr "Les commentaires à la C++ ne sont pas permis en C89 ISO"
-#: cpplex.c:1105
+#: cpplex.c:929
msgid "(this will be reported only once per input file)"
msgstr "(ceci sera rapporté une seule fois seulement par fichier d'entrée)"
-#: cpplex.c:1110
+#: cpplex.c:934
msgid "multi-line comment"
msgstr "commentaire multi-lignes"
-#: cpplex.c:1425
-#, c-format
-msgid "unknown string token %s\n"
-msgstr "élément lexical %s inconnu\n"
-
-#: cpplex.c:1438
+#: cpplex.c:1198
#, c-format
msgid "unspellable token %s"
msgstr "l'élément lexical %s ne peut être épelé"
-#: cpplex.c:1695
-#, c-format
-msgid "the meaning of '\\%c' is different in traditional C"
-msgstr "la signification de « \\%c » est différente en C traditionel"
-
-# FIXME
-#: cpplex.c:1701
-msgid "incomplete universal-character-name"
-msgstr "nom-de-caractère-universel incomplet"
-
-#: cpplex.c:1715
-#, c-format
-msgid "non-hex digit '%c' in universal-character-name"
-msgstr "chiffre « %c » non hexadécimal dans le nom-de-caractère-universel"
-
-#: cpplex.c:1723
-msgid "universal-character-name on EBCDIC target"
-msgstr "nom-de-caractère-universel pour une cible EBCDIC"
-
-#: cpplex.c:1737
-msgid "universal-character-name out of range"
-msgstr "nom-de-caractère-universel est hors gamme"
-
-#: cpplex.c:1791
-msgid "the meaning of '\\a' is different in traditional C"
-msgstr "la signification de « \\a » est différente en C traditionel"
-
-#: cpplex.c:1798
-#, c-format
-msgid "non-ISO-standard escape sequence, '\\%c'"
-msgstr "séquence d'échappement « \\%c » non conforme au standard ISO"
-
-#: cpplex.c:1809
-msgid "the meaning of '\\x' is different in traditional C"
-msgstr "la signification de « \\x » est différente en C traditionel"
-
-#: cpplex.c:1828 f/lex.c:585
-msgid "\\x used with no following hex digits"
-msgstr "\\x utilisé sans être suivi de chiffres en hexdécimal"
-
-#: cpplex.c:1833
-msgid "hex escape sequence out of range"
-msgstr "séquence d'échappement hexadécimale hors gamme"
-
-#: cpplex.c:1858
-msgid "octal escape sequence out of range"
-msgstr "séquence d'échappement octale hors gamme"
-
-#: cpplex.c:1874
-#, c-format
-msgid "unknown escape sequence '\\%c'"
-msgstr "séquence d'échappement « \\%c » inconnue"
-
-#: cpplex.c:1877
-#, c-format
-msgid "unknown escape sequence: '\\%03o'"
-msgstr "séquence d'échappement « \\%03o » inconnue"
-
-#: cpplex.c:1882
-msgid "escape sequence out of range for its type"
-msgstr "séquence d'échappement hors gamme pour son type"
-
-#: cpplex.c:1973
-msgid "empty character constant"
-msgstr "constante caractère vide"
-
-#: cpplex.c:1983
-msgid "character constant too long for its type"
-msgstr "constante caractère trop longue pour son type"
-
-#: cpplex.c:1986
-msgid "multi-character character constant"
-msgstr "constante caractère multi-caractères"
-
-#: cpplib.c:225
+#: cpplib.c:218
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr "éléments lexicaux superflus à la fin de la directive #%s"
-#: cpplib.c:315
+#: cpplib.c:304
#, c-format
msgid "#%s is a GCC extension"
msgstr "#%s est une extension GCC"
-#: cpplib.c:327
+#: cpplib.c:316
msgid "suggest not using #elif in traditional C"
msgstr "il est suggéré de ne pas utiliser #elif en C traditionnel"
-#: cpplib.c:330
+#: cpplib.c:319
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr "le C traditionel ignore la directive #%s si le caractère # est indenté"
-#: cpplib.c:334
+#: cpplib.c:323
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr "il est suggéré de cacher #%s au C traditionel en indentant le « # »"
-#: cpplib.c:358
+#: cpplib.c:345
msgid "embedding a directive within macro arguments is not portable"
msgstr "placer une directive dans les arguments d'une macro n'est pas portable"
-#: cpplib.c:378
+#: cpplib.c:365
msgid "style of line directive is a GCC extension"
msgstr "la directive de style de ligne est extension GCC"
-#: cpplib.c:428
+#: cpplib.c:415
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr "directive de pré-traitement #%s invalide"
-#: cpplib.c:500
+#: cpplib.c:484
msgid "\"defined\" cannot be used as a macro name"
msgstr "« defined » ne peut être utilisé comme nom de macro"
-#: cpplib.c:506
+#: cpplib.c:490
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr "« %s » ne peut être utilisé comme nom de macro car c'est un opérateur en C++"
-#: cpplib.c:509
+#: cpplib.c:493
#, c-format
msgid "no macro name given in #%s directive"
msgstr "aucun nom de macro donné dans la directive #%s"
-#: cpplib.c:512
+#: cpplib.c:496
msgid "macro names must be identifiers"
msgstr "les noms de macro doivent être des identificateurs"
-#: cpplib.c:552
+#: cpplib.c:537
#, c-format
msgid "undefining \"%s\""
msgstr "indéfinition de « %s »"
-#: cpplib.c:598
+#: cpplib.c:609
msgid "missing terminating > character"
msgstr "caractère > de terminaison manquant"
-#: cpplib.c:637
+#: cpplib.c:662
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr "#%s attend \"NOM_DE_FICHIER\" ou <NOM_DE_FICHIER>"
-#: cpplib.c:648
-#, c-format
-msgid "empty file name in #%s"
-msgstr "nom de fichier vide dans #%s"
+#: cpplib.c:685
+msgid "#include nested too deeply"
+msgstr "#include imbriqué trop profondément"
-#: cpplib.c:667
+#: cpplib.c:723
msgid "#include_next in primary source file"
msgstr "#include_next dans un fichier source primaire"
-#: cpplib.c:674
-msgid "#import is obsolete, use an #ifndef wrapper in the header file"
-msgstr "#import est obsolète, enveloppez le avec #ifndef dans le fichier d'en-tête"
-
-#: cpplib.c:682
-msgid "#include nested too deeply"
-msgstr "#include imbriqué trop profondément"
-
-#: cpplib.c:739
+#: cpplib.c:749
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr "fanion « %s » invalide dans la ligne de directive"
-#: cpplib.c:814
+#: cpplib.c:794
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "« %s » après #line n'est pas un nombre entier positif"
-#: cpplib.c:820
+#: cpplib.c:800
msgid "line number out of range"
-msgstr "numéro de ligne hors gamme"
+msgstr "numéro de ligne hors limite"
-#: cpplib.c:831 cpplib.c:902
+#: cpplib.c:812 cpplib.c:885
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr "« %s » n'est pas un nom de fichier valide"
-#: cpplib.c:866
+#: cpplib.c:847
#, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "« %s » après # n'est pas un nombre entier positif"
-#: cpplib.c:973
+#: cpplib.c:947
msgid "invalid #ident directive"
msgstr "directive #ident invalide"
# FIXME
-#: cpplib.c:1061
+#: cpplib.c:1027
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr "enregistrement de \"%s\" à la fois comme une pragma un espace de nom de pragma"
-#: cpplib.c:1064
+#: cpplib.c:1030
#, c-format
msgid "#pragma %s %s is already registered"
msgstr "la #pragma %s %s est déjà enregistrée"
-#: cpplib.c:1067
+#: cpplib.c:1033
#, c-format
msgid "#pragma %s is already registered"
msgstr "la #pragma %s est déjà enregistrée"
# FIXME
-#: cpplib.c:1143
-msgid "#pragma once is obsolete"
-msgstr "utiliser #pragma une seule fois est obsolète"
-
-# FIXME
-#: cpplib.c:1146
+#: cpplib.c:1178
msgid "#pragma once in main file"
msgstr "#pragma utilisé une seule fois dans le fichier principal"
# FIXME
-#: cpplib.c:1170
+#: cpplib.c:1201
msgid "invalid #pragma GCC poison directive"
-msgstr "la directive empoisonée #pragma GCC est invalide"
+msgstr "la directive corrompue #pragma GCC est invalide"
# FIXME
-#: cpplib.c:1179
+#: cpplib.c:1210
#, c-format
msgid "poisoning existing macro \"%s\""
-msgstr "empoisonnement de la macro existente « %s »"
+msgstr "corruption de la macro existente « %s »"
-#: cpplib.c:1201
+#: cpplib.c:1231
msgid "#pragma system_header ignored outside include file"
msgstr "#pragma system_header ignorée en dehors du fichier d'inclusion"
-#: cpplib.c:1226
+#: cpplib.c:1255
#, c-format
-msgid "cannot find source %s"
-msgstr "impossible de trouver le source %s"
+msgid "cannot find source file %s"
+msgstr "impossible de trouver le fichier source %s"
-#: cpplib.c:1230
+#: cpplib.c:1259
#, c-format
msgid "current file is older than %s"
msgstr "le fichier courant est plus vieux que %s"
-#: cpplib.c:1346
+#: cpplib.c:1373
msgid "_Pragma takes a parenthesized string literal"
msgstr "_Pragma prend une chaîne entourée de parenthèrese"
-#: cpplib.c:1429
+#: cpplib.c:1451
msgid "#else without #if"
msgstr "#else sans #if"
-#: cpplib.c:1434
+#: cpplib.c:1456
msgid "#else after #else"
msgstr "#else après #else"
-#: cpplib.c:1436 cpplib.c:1470
-msgid "the conditional began here"
-msgstr "la condition débute ici"
-
-#: cpplib.c:1463
+#: cpplib.c:1484
msgid "#elif without #if"
msgstr "#elif sans #if"
-#: cpplib.c:1468
+#: cpplib.c:1489
msgid "#elif after #else"
msgstr "#elif après #else"
-#: cpplib.c:1499
+#: cpplib.c:1519
msgid "#endif without #if"
msgstr "#endif sans #if"
-#: cpplib.c:1582
+#: cpplib.c:1596
msgid "missing '(' after predicate"
msgstr "« ( » manquante après le prédicat"
-#: cpplib.c:1597
+#: cpplib.c:1611
msgid "missing ')' to complete answer"
msgstr "« ) » manquante pour completer la réponse"
-#: cpplib.c:1617
+#: cpplib.c:1631
msgid "predicate's answer is empty"
msgstr "la réponse du prédicat est vide"
-#: cpplib.c:1647
+#: cpplib.c:1658
msgid "assertion without predicate"
msgstr "assertion sans prédicat"
-#: cpplib.c:1649
+#: cpplib.c:1660
msgid "predicate must be an identifier"
msgstr "le prédicat doit être un identificateur"
# FIXME
-#: cpplib.c:1738
+#: cpplib.c:1744
#, c-format
msgid "\"%s\" re-asserted"
msgstr "« %s » re-asserti"
-#: cpplib.c:1968
-#, c-format
-msgid "unterminated #%s"
-msgstr "#%s non terminé"
-
-#: cppmacro.c:94
-#, c-format
-msgid "macro \"%s\" is not used"
-msgstr "la macro « %s » n'est pas utilisée"
-
-#: cppmacro.c:139 cppmacro.c:294
+#: cppmacro.c:125 cppmacro.c:280
#, c-format
msgid "invalid built-in macro \"%s\""
msgstr "macro interne invalide « %s »"
-#: cppmacro.c:234
+#: cppmacro.c:221
msgid "could not determine date and time"
msgstr "ne peut déterminer la date et l'heure"
-#: cppmacro.c:407
+#: cppmacro.c:393
msgid "invalid string literal, ignoring final '\\'"
msgstr "chaîne invalide, « \\ » final ignoré"
-#: cppmacro.c:504
+#: cppmacro.c:476
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr "le collage de « %s » et de « %s » ne donne pas d'élément lexical de pré-traitement valide"
-#: cppmacro.c:546
+#: cppmacro.c:514
msgid "ISO C99 requires rest arguments to be used"
-msgstr "le C99 ISO requiert que tous les arguments soient utilisés"
+msgstr "ISO C99 requiert que tous les arguments soient utilisés"
-#: cppmacro.c:551
+#: cppmacro.c:519
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr "macro « %s » requiert %u arguments, mais seulement %u ont été passés"
-#: cppmacro.c:556
+#: cppmacro.c:524
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr "la macro « %s » a reçu %u arguments, mais elle n'en prend que %u"
-#: cppmacro.c:669 cpptrad.c:774
+#: cppmacro.c:635
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr "liste d'arguments non terminée invoquant la macro « %s »"
-#: cppmacro.c:776
+#: cppmacro.c:738
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr "la macro « %s » ressemblant à une fonction doit utilisée avec des arguments en C traditionnel"
-#: cppmacro.c:1314
+#: cppmacro.c:1241
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr "paramètre de macro « %s » en double"
-#: cppmacro.c:1351
+#: cppmacro.c:1286
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr "« %s » peut ne pas apparaître parmi les paramètres de macros"
-#: cppmacro.c:1359
+#: cppmacro.c:1294
msgid "macro parameters must be comma-separated"
msgstr "les paramètres de macro doivent être séparés par des virgules"
-#: cppmacro.c:1376
+#: cppmacro.c:1311
msgid "parameter name missing"
msgstr "nom de paramètre manquant"
-#: cppmacro.c:1391
+#: cppmacro.c:1326
msgid "anonymous variadic macros were introduced in C99"
msgstr "les macros anonymes à nombre variable d'arguments ont été introduites avec le C99"
-#: cppmacro.c:1395
+#: cppmacro.c:1330
msgid "ISO C does not permit named variadic macros"
-msgstr "le C ISO ne permet pas les macros nommées à nombre variable d'arguments"
+msgstr "ISO C ne permet pas les macros nommées à nombre variable d'arguments"
-#: cppmacro.c:1404
+#: cppmacro.c:1339
msgid "missing ')' in macro parameter list"
msgstr "« ) » manquante dans la liste des paramètres de macros"
-#: cppmacro.c:1472
+#: cppmacro.c:1402
msgid "ISO C requires whitespace after the macro name"
-msgstr "le C ISO requiert un blanc après le nom de la macro"
+msgstr "ISO C requiert un blanc après le nom de la macro"
-#: cppmacro.c:1500
+#: cppmacro.c:1430
msgid "'#' is not followed by a macro parameter"
msgstr "« # » n'est pas suivi d'un paramètre de macro"
# FIXME
-#: cppmacro.c:1519
+#: cppmacro.c:1449
msgid "'##' cannot appear at either end of a macro expansion"
msgstr "« ## » ne peut apparaître à chacune des fins de l'expansion de macros"
-#: cppmacro.c:1601
-#, c-format
-msgid "\"%s\" redefined"
-msgstr "« %s » redéfini"
-
-#: cppmacro.c:1606
-msgid "this is the location of the previous definition"
-msgstr "ceci est la localisation d'une précédente définition"
-
-#: cppmacro.c:1657
+#: cppmacro.c:1588
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr "l'argument macro « %s » serait changé en chaine en C traditionnel"
-#: cppmacro.c:1682
+#: cppmacro.c:1611
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr "type de hachage %d invalide dans cpp_macro_definition"
-#: cppspec.c:109
+#: cpppch.c:84 cpppch.c:332 cpppch.c:356 cpppch.c:365
+msgid "while writing precompiled header"
+msgstr "lors de l'écriture de l'en-tête pré-compilée"
+
+#: cpppch.c:463
+#, c-format
+msgid "%s: not used because `%.*s' not defined"
+msgstr "%s: n'est pas utilisé parce que « %.*s » n'est pas définie"
+
+#: cpppch.c:475
+#, c-format
+msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
+msgstr "%s: n'est pas utilisé parce que « %.*s » est défini en tant « %s » et non pas « %.*s »"
+
+#: cpppch.c:516
+#, c-format
+msgid "%s: not used because `%s' is defined"
+msgstr "%s: non utilisé parce que « %s » est défini"
+
+#: cpppch.c:529 cpppch.c:715
+msgid "while reading precompiled header"
+msgstr "lors de la lecture de l'en-tête pré-compilée"
+
+#: cppspec.c:106
#, c-format
msgid "\"%s\" is not a valid option to the preprocessor"
msgstr "« %s » n'est pas une option valide pour le préprocesseur"
-#: cppspec.c:133
+#: cppspec.c:128
msgid "too many input files"
msgstr "trop de fichiers d'entrée"
-#: cpptrad.c:841
+#: cpptrad.c:744
#, c-format
msgid "detected recursion whilst expanding macro \"%s\""
msgstr "récursion détectée lors de l'expansion de la macro « %s »"
+#: cpptrad.c:911
+msgid "syntax error in macro parameter list"
+msgstr "erreur de syntaxe dans la liste de paramètres macro"
+
# FIXME: Initialisé, ou ensembles?
-#: cse.c:7195
+#: cse.c:7040
#, c-format
msgid ";; Processing block from %d to %d, %d sets.\n"
msgstr ";; traitement du bloc de %d à %d, %d initialisés.\n"
-#: diagnostic.c:714
-msgid "((anonymous))"
-msgstr "((anonyme))"
-
-#: diagnostic.c:928
-#, c-format
-msgid "%s: warnings being treated as errors\n"
-msgstr "%s : les avertissements sont traités commes des erreurs\n"
-
-#: diagnostic.c:963
-#, c-format
-msgid "%s: %s: "
-msgstr "%s : %s : "
-
-# I18N
-#: diagnostic.c:1054
-#, c-format
-msgid "%s "
-msgstr "%s "
-
-# I18N
-#: diagnostic.c:1056
-#, c-format
-msgid " %s"
-msgstr " %s"
-
-#: diagnostic.c:1078
-msgid "At top level:"
-msgstr "Hors de toute fonction :"
-
-#: diagnostic.c:1083
-#, c-format
-msgid "In member function `%s':"
-msgstr "Dans la fonction membre « %s » :"
-
-#: diagnostic.c:1087
-#, c-format
-msgid "In function `%s':"
-msgstr "Dans la fonction « %s »:"
-
-#: diagnostic.c:1175
-msgid "compilation terminated.\n"
-msgstr "compilation terminée.\n"
-
-#: diagnostic.c:1193
+#: diagnostic.c:209
#, c-format
msgid "%s:%d: confused by earlier errors, bailing out\n"
msgstr "%s:%d: embrouillé par les erreurs précédentes, abandon\n"
-#: diagnostic.c:1208 diagnostic.c:1316
-#, c-format
-msgid ""
-"Please submit a full bug report,\n"
-"with preprocessed source if appropriate.\n"
-"See %s for instructions.\n"
-msgstr ""
-"Veuillez soumettre un rapport complet d'anomalies,\n"
-"avec le source pré-traité si nécessaire.\n"
-"Consultez %s pour plus de détail.\n"
+#: diagnostic.c:281
+msgid "compilation terminated.\n"
+msgstr "compilation terminée.\n"
# FIXME
-#: diagnostic.c:1314
+#: diagnostic.c:572
msgid "Internal compiler error: Error reporting routines re-entered.\n"
msgstr "erreur interne au compilateur : routine de rapport d'erreur préemptée.\n"
-#: diagnostic.c:1376
+#: diagnostic.c:584
#, c-format
msgid "in %s, at %s:%d"
msgstr "dans %s, à %s:%d"
-# FRONT
-#: diagnostic.c:1397
-#, c-format
-msgid "In file included from %s:%d"
-msgstr "Dans le fichier inclus depuis %s:%d"
-
-# I18N: This line should be indented with the previous entry
-#: diagnostic.c:1400
-#, c-format
-msgid ""
-",\n"
-" from %s:%d"
-msgstr ""
-",\n"
-" depuis %s:%d"
-
-# I18N
-#: diagnostic.c:1401
-msgid ":\n"
-msgstr ":\n"
-
-#: diagnostic.c:1445 diagnostic.c:1462
-#, c-format
-msgid "`%s' is deprecated (declared at %s:%d)"
-msgstr "« %s » est obsolète (déclaré à %s:%d)"
-
-#: diagnostic.c:1465
-#, c-format
-msgid "`%s' is deprecated"
-msgstr "« %s » est obsolète"
-
-#: diagnostic.c:1468
-#, c-format
-msgid "type is deprecated (declared at %s:%d)"
-msgstr "type est obsolète (déclaré à %s:%d)"
-
-#: diagnostic.c:1471
-msgid "type is deprecated"
-msgstr "type est obsolète"
-
# FIXME
-#: dominance.c:728
+#: dominance.c:763
#, c-format
msgid "dominator of %d should be %d, not %d"
msgstr "le dominateur de %d devrait être %d, et non %d"
-#: dwarf2out.c:3135
+#: dwarf2out.c:3228
#, c-format
msgid "DW_LOC_OP %s not implemented\n"
msgstr "DW_LOC_OP %s n'est pas implanté\n"
-#: dwarfout.c:2066
-#, c-format
-msgid "internal regno botch: `%s' has regno = %d\n"
-msgstr "regno interne mal fait : « %s » a regno = %d\n"
-
-#: dwarfout.c:6181
-msgid "support for the DWARF1 debugging format is deprecated"
-msgstr "le support du format de débogage DWARF1 est obsolète"
-
-#: dwarfout.c:6278
-msgid "can't get current directory"
-msgstr "ne peut repérer le répertoire courant"
-
#: emit-rtl.c:1155
msgid "can't access real part of complex value in hard register"
msgstr "ne peut accéder à la partie réelle d'une valeur complexe dans un registre matériel"
-#: emit-rtl.c:1177
+#: emit-rtl.c:1182
msgid "can't access imaginary part of complex value in hard register"
msgstr "ne peut accéder à la partie imaginaire d'une valeur complexe dans un registre matériel"
-#: emit-rtl.c:3402
+#: emit-rtl.c:2263
+msgid "Invalid rtl sharing found in the insn"
+msgstr "partage rtl invalide repéré dans l'insn"
+
+#: emit-rtl.c:2265
+msgid "Shared rtx"
+msgstr "rtx partagé"
+
+#: emit-rtl.c:3400
msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
msgstr "ICE : emit_insn utilisé là où emit_jump_insn était attendu :\n"
-#: errors.c:136
+#: errors.c:129
#, c-format
msgid "abort in %s, at %s:%d"
msgstr "abandon dans %s, à %s:%d"
-#: except.c:369
+#: except.c:357
msgid "exception handling disabled, use -fexceptions to enable"
msgstr "traitement des exceptions désactivé, utiliser -fexceptions pour l'activer"
-#: except.c:2994
+#: except.c:2942
msgid "argument of `__builtin_eh_return_regno' must be constant"
msgstr "l'argument de « __builtin_eh_return_regno » doit être une constante"
-#: except.c:3137
+#: except.c:3073
msgid "__builtin_eh_return not supported on this target"
msgstr "« __builtin_eh_return » n'est pas possible sur cette cible"
# FIXME
-#: explow.c:1408
+#: explow.c:1327
msgid "stack limits not supported on this target"
msgstr "les limites de la pile ne sont pas supportées sur cette cible"
-#: expr.c:3355
+#: expr.c:2965
msgid "function using short complex types cannot be inline"
-msgstr "un foncton utilisant un type « complex short » ne peut être en ligne"
+msgstr "un foncton utilisant un type « complex short » ne peut être enligne"
-# FRONT
-#: expr.c:6272 expr.c:6281 expr.c:6290 expr.c:6295 expr.c:6604 expr.c:6620
-msgid "unsupported wide integer operation"
-msgstr "opération sur de large entier non supportée"
+#: expr.c:6311
+msgid "%Jprior parameter's size depends on '%D'"
+msgstr "%Jtaille du paramètre précédent dépend de « %D »"
-#: expr.c:6669
-#, c-format
-msgid "prior parameter's size depends on `%s'"
-msgstr "taille du paramètre précédent dépend de « %s »"
-
-#: expr.c:7005
+#: expr.c:6678
msgid "returned value in block_exit_expr"
msgstr "valeur retournée dans block_exit_expr"
#. We can't make a bitwise copy of this object, so fail.
-#: expr.c:9202
-#, fuzzy
+#: expr.c:8823
msgid "cannot take the address of an unaligned member"
-msgstr "ne peut prendre l'adresse de « ceci », laquelle est une expression rvalue"
+msgstr "ne peut prendre l'adresse d'un membre non aligné"
-#: final.c:1342
+#: final.c:1058
msgid "negative insn length"
msgstr "longueur négative insn"
-#: final.c:2793
+#: final.c:2429
msgid "could not split insn"
msgstr "n'a pu séparer insn"
-#: final.c:3141
+#: final.c:2771
msgid "invalid `asm': "
msgstr "« asm » invalide: "
-#: final.c:3328
+#: final.c:2954
msgid "nested assembly dialect alternatives"
msgstr "assemblage de dialectes alternatifs imbriqués"
-#: final.c:3345 final.c:3357
+#: final.c:2971 final.c:2983
msgid "unterminated assembly dialect alternative"
msgstr "assemblage de dialectes alternatifs non terminé"
-#: final.c:3401
+#: final.c:3027
#, c-format
msgid "operand number missing after %%-letter"
msgstr "numéro d'opérande manquant après %%-letter"
-#: final.c:3404 final.c:3443
+#: final.c:3030 final.c:3069
msgid "operand number out of range"
-msgstr "nombre d'opérandes hors gamme"
+msgstr "nombre d'opérandes hors limite"
-#: final.c:3462
+#: final.c:3088
#, c-format
msgid "invalid %%-code"
msgstr "%%-code est invalide"
-#: final.c:3493
+#: final.c:3118
#, c-format
msgid "`%%l' operand isn't a label"
-msgstr "opérande «%%l» n'est pas une étiquette"
+msgstr "opérande « %%l » n'est pas une étiquette"
#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
-#: final.c:3600 vmsdbgout.c:466 config/i386/i386.c:6314
-#: config/pdp11/pdp11.c:1573
+#. We can't handle floating point constants; PRINT_OPERAND must
+#. handle them.
+#. We can't handle floating point constants;
+#. PRINT_OPERAND must handle them.
+#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6739
+#: config/pdp11/pdp11.c:1646
msgid "floating constant misused"
msgstr "constante flottante mal utilisée"
-#: final.c:3656 vmsdbgout.c:523 config/i386/i386.c:6392
-#: config/pdp11/pdp11.c:1620
+#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6817
+#: config/pdp11/pdp11.c:1693
msgid "invalid expression as operand"
msgstr "expression invalide comme opérande"
-#: flow.c:352
+#: flow.c:329
msgid "function might be possible candidate for attribute `noreturn'"
msgstr "fonction peut être une possible candidate pour l'attribut « norreturn »"
-#: flow.c:357
+#: flow.c:334
msgid "`noreturn' function does return"
msgstr "fonction avec « noreturn » effectue des retour"
-#: flow.c:378
+#: flow.c:355
msgid "control reaches end of non-void function"
msgstr "contrôle a atteint la fin non void de la fonction"
-#: flow.c:1642
+#: flow.c:1582
msgid "Attempt to delete prologue/epilogue insn:"
msgstr "Tentative pour détruire le prologue/épilogue insn:"
-#: fold-const.c:2546 fold-const.c:2559
+#: fold-const.c:2759 fold-const.c:2772
#, c-format
msgid "comparison is always %d due to width of bit-field"
msgstr "comparaison est toujours %d en raison de la largeur du champ de bits"
-#: fold-const.c:3753 fold-const.c:3770
+#: fold-const.c:3967 fold-const.c:3984
#, c-format
msgid "comparison is always %d"
msgstr "comparaison est toujours %d"
-#: fold-const.c:3901
+#: fold-const.c:4115
msgid "`or' of unmatched not-equal tests is always 1"
msgstr "« or » de tests non pairé de non égalité est troujours 1"
-#: fold-const.c:3906
+#: fold-const.c:4120
msgid "`and' of mutually exclusive equal-tests is always 0"
msgstr "« and » de tests d'égalité mutuellement exclusifs est toujours 0"
-#: function.c:884 varasm.c:1503
-#, c-format
-msgid "size of variable `%s' is too large"
-msgstr "taille de la variable « %s » est trop grande"
+#: fold-const.c:8340
+msgid "fold check: original tree changed by fold"
+msgstr "vérification fold: arbre originale modifié par fold"
+
+#: function.c:884 varasm.c:1408
+msgid "%Jsize of variable '%D' is too large"
+msgstr "%Jtaille de la variable « %D » est trop grande"
-#: function.c:3772
-#, fuzzy
+#: function.c:3737
msgid "impossible constraint in `asm'"
-msgstr "impossible de contraindre les registres en « asm »"
+msgstr "contrainte impossible dans « asm »"
-#: function.c:5527
-#, c-format
-msgid "`%s' might be used uninitialized in this function"
-msgstr "« %s » pourrait être utilisé sans être initialisé dans cette fonction"
+#: function.c:5697
+msgid "%J'%D' might be used uninitialized in this function"
+msgstr "%J« %D » pourrait être utilisé sans être initialisé dans cette fonction"
-#: function.c:5534
-#, c-format
-msgid "variable `%s' might be clobbered by `longjmp' or `vfork'"
-msgstr "variable « %s » pourrait être maltraitée par un «longjmp» ou un «vfork »"
+#: function.c:5704
+msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'"
+msgstr "%Jvariable « %D » pourrait être maltraitée par un «longjmp» ou un «vfork »"
-#: function.c:5553
-#, c-format
-msgid "argument `%s' might be clobbered by `longjmp' or `vfork'"
-msgstr "argument « %s » pourrait être maltraitée par un «longjmp» ou un «vfork »"
+#: function.c:5723
+msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'"
+msgstr "%Jargument « %D » pourrait être maltraitée par un «longjmp» ou un «vfork »"
-#: function.c:6420
+#: function.c:6497
msgid "function returns an aggregate"
msgstr "fonction retourne un aggrégat"
-#: function.c:6925
-#, c-format
-msgid "unused parameter `%s'"
-msgstr "paramètre « %s » inutilisé"
+#: function.c:6980
+msgid "%Junused parameter '%D'"
+msgstr "%Jparamètre « %D » inutilisé"
-#: gcc.c:1107
+#: gcc.c:1191
#, c-format
msgid "ambiguous abbreviation %s"
msgstr "abréviation %s est ambiguë"
-#: gcc.c:1134
+#: gcc.c:1218
#, c-format
msgid "incomplete `%s' option"
msgstr "option « %s » est incomplète"
-#: gcc.c:1145
+#: gcc.c:1229
#, c-format
msgid "missing argument to `%s' option"
msgstr "argument manquant à l'option « %s »"
-#: gcc.c:1158
+#: gcc.c:1242
#, c-format
msgid "extraneous argument to `%s' option"
msgstr "argument superflu à l'option « %s »"
-#: gcc.c:1486
+#: gcc.c:1563
msgid "Using built-in specs.\n"
msgstr "Utilisation des specs internes.\n"
-#: gcc.c:1667
+#: gcc.c:1748
#, c-format
msgid ""
"Setting spec %s to '%s'\n"
@@ -5425,42 +5131,42 @@ msgstr ""
"Initialisation des spec %s à « %s »\n"
"\n"
-#: gcc.c:1774
+#: gcc.c:1850
#, c-format
msgid "Reading specs from %s\n"
msgstr "Lecture des spécification à partir de %s\n"
-#: gcc.c:1872 gcc.c:1891
+#: gcc.c:1946 gcc.c:1965
#, c-format
msgid "specs %%include syntax malformed after %ld characters"
msgstr "syntaxe des specs %%include mal composée après %ld caractères"
-#: gcc.c:1899
+#: gcc.c:1973
#, c-format
msgid "could not find specs file %s\n"
msgstr "ne peut repérer le fichiers des specs %s\n"
-#: gcc.c:1916 gcc.c:1924 gcc.c:1933 gcc.c:1942
+#: gcc.c:1990 gcc.c:1998 gcc.c:2007 gcc.c:2016
#, c-format
msgid "specs %%rename syntax malformed after %ld characters"
msgstr "specs de la syntaxe %%rename mal composées après %ld caractères"
-#: gcc.c:1951
+#: gcc.c:2025
#, c-format
msgid "specs %s spec was not found to be renamed"
msgstr "specs de la spécification %s n'a pas été trouvé pour être renommer"
-#: gcc.c:1958
+#: gcc.c:2032
#, c-format
msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
-msgstr ""
+msgstr "%s: tentative pour renommner la spécification « %s » à un spécification « %s » déjà définie"
-#: gcc.c:1963
+#: gcc.c:2037
#, c-format
msgid "rename spec %s to %s\n"
msgstr "renommé les specs %s à %s\n"
-#: gcc.c:1965
+#: gcc.c:2039
#, c-format
msgid ""
"spec is '%s'\n"
@@ -5469,25 +5175,25 @@ msgstr ""
"spec est « %s »\n"
"\n"
-#: gcc.c:1978
+#: gcc.c:2052
#, c-format
msgid "specs unknown %% command after %ld characters"
msgstr "specs inconnus de la commande %% après %ld caractères"
-#: gcc.c:1989 gcc.c:2002
+#: gcc.c:2063 gcc.c:2076
#, c-format
msgid "specs file malformed after %ld characters"
msgstr "fichier de specs mal composé après %ld caractères"
-#: gcc.c:2056
+#: gcc.c:2129
msgid "spec file has no spec for linking"
msgstr "fichier de specs n'a pas de spécification pour l'édition de liens"
-#: gcc.c:2554
+#: gcc.c:2634
msgid "-pipe not supported"
msgstr "-pipe n'est pas supporté"
-#: gcc.c:2609
+#: gcc.c:2696
msgid ""
"\n"
"Go ahead? (y or n) "
@@ -5495,7 +5201,7 @@ msgstr ""
"\n"
"Aller de l'avant? (y ou n) "
-#: gcc.c:2735
+#: gcc.c:2822
#, c-format
msgid ""
"Internal error: %s (program %s)\n"
@@ -5506,69 +5212,69 @@ msgstr ""
"SVP soumettre un rapport complet d'anomalies.\n"
"Consulter %s pour les instructions."
-#: gcc.c:2753
+#: gcc.c:2840
#, c-format
msgid "# %s %.2f %.2f\n"
msgstr "# %s %.2f %.2f\n"
-#: gcc.c:2883
+#: gcc.c:2973
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr "Usage: %s [options] fichier...\n"
-#: gcc.c:2884
+#: gcc.c:2974
msgid "Options:\n"
msgstr "Options:\n"
-#: gcc.c:2886
+#: gcc.c:2976
msgid " -pass-exit-codes Exit with highest error code from a phase\n"
msgstr " -pass-exit-codes quitter avec le plus grand code d'erreur de la phase\n"
-#: gcc.c:2887
+#: gcc.c:2977
msgid " --help Display this information\n"
msgstr " --help afficher l'aide mémoire\n"
-#: gcc.c:2888
+#: gcc.c:2978
msgid " --target-help Display target specific command line options\n"
msgstr " --target-help afficher les options spécifiques de la ligne de commande\n"
-#: gcc.c:2890
+#: gcc.c:2980
msgid " (Use '-v --help' to display command line options of sub-processes)\n"
msgstr " (Utiliser «-v --help» pour afficher les options de la ligne de commande des sous-processus)\n"
-#: gcc.c:2891
+#: gcc.c:2981
msgid " -dumpspecs Display all of the built in spec strings\n"
msgstr " -dumpspecs afficher tous les construits des chaînes de specs\n"
-#: gcc.c:2892
+#: gcc.c:2982
msgid " -dumpversion Display the version of the compiler\n"
msgstr " -dumpversion afficher la version du compilateur\n"
-#: gcc.c:2893
+#: gcc.c:2983
msgid " -dumpmachine Display the compiler's target processor\n"
msgstr " -dumpmachine afficher le processeur ciblé par le compilateur\n"
-#: gcc.c:2894
+#: gcc.c:2984
msgid " -print-search-dirs Display the directories in the compiler's search path\n"
msgstr " -print-search-dirs afficher les répertoires du chemin de recherche du compiltateur\n"
-#: gcc.c:2895
+#: gcc.c:2985
msgid " -print-libgcc-file-name Display the name of the compiler's companion library\n"
msgstr " -print-libgcc-file-name afficher le nom de la bibliothèque compagne du compilateur\n"
-#: gcc.c:2896
+#: gcc.c:2986
msgid " -print-file-name=<lib> Display the full path to library <lib>\n"
msgstr " -print-file-name=<lib> afficher le chemin d'accès complet vers la bibliothèque <lib>\n"
-#: gcc.c:2897
+#: gcc.c:2987
msgid " -print-prog-name=<prog> Display the full path to compiler component <prog>\n"
msgstr " -print-prog-name=<prog> afficher le chemin d'accès complet vers le composant du compilateur <prog>\n"
-#: gcc.c:2898
+#: gcc.c:2988
msgid " -print-multi-directory Display the root directory for versions of libgcc\n"
msgstr " -print-multi-directory afficher la racine du répertoire des version libgcc\n"
-#: gcc.c:2899
+#: gcc.c:2989
msgid ""
" -print-multi-lib Display the mapping between command line options and\n"
" multiple library search directories\n"
@@ -5577,97 +5283,103 @@ msgstr ""
" la ligne de commande et les multiples répertoires de\n"
" recherches des bibliothèques\n"
-#: gcc.c:2902
-#, fuzzy
+#: gcc.c:2992
msgid " -print-multi-os-directory Display the relative path to OS libraries\n"
-msgstr " -print-multi-directory afficher la racine du répertoire des version libgcc\n"
+msgstr " -print-multi-os-directory afficher le chemin relatif du répertoire vers les librairies de l'OS\n"
-#: gcc.c:2903
+#: gcc.c:2993
msgid " -Wa,<options> Pass comma-separated <options> on to the assembler\n"
msgstr " -Wa,<options> passer les <options> séparées par des virgules à l'assembleur\n"
-#: gcc.c:2904
+#: gcc.c:2994
msgid " -Wp,<options> Pass comma-separated <options> on to the preprocessor\n"
msgstr " -Wp,<options> passer les <options> séparées par des virgules au préprocesseur\n"
-#: gcc.c:2905
+#: gcc.c:2995
msgid " -Wl,<options> Pass comma-separated <options> on to the linker\n"
msgstr " -Wl,<options> passer les <options> séparées par des virgules à l'éditeur de liens\n"
-#: gcc.c:2906
+#: gcc.c:2996
+msgid " -Xassembler <arg> Pass <arg> on to the assembler\n"
+msgstr " -Xassembler <arg> passer l'<arg>ument à l'assembleur\n"
+
+#: gcc.c:2997
+msgid " -Xpreprocessor <arg> Pass <arg> on to the preprocessor\n"
+msgstr " -Xpreprocessor <arg> passer l'<arg>ument au pré-processeur\n"
+
+#: gcc.c:2998
msgid " -Xlinker <arg> Pass <arg> on to the linker\n"
msgstr " -Xlinker <argument> passer l'<argument> à l'éditeur de liens\n"
-#: gcc.c:2907
+#: gcc.c:2999
msgid " -save-temps Do not delete intermediate files\n"
msgstr " -save-temps ne pas détruire les fichiers intermédiaires\n"
-#: gcc.c:2908
+#: gcc.c:3000
msgid " -pipe Use pipes rather than intermediate files\n"
msgstr " -pipe utiliser des pipes au lieu de fichiers intermédiares\n"
-#: gcc.c:2909
+#: gcc.c:3001
msgid " -time Time the execution of each subprocess\n"
msgstr " -time mesurer le temps d'exécution de chaque sous-processus\n"
-#: gcc.c:2910
+#: gcc.c:3002
msgid " -specs=<file> Override built-in specs with the contents of <file>\n"
msgstr " -specs=<fichier> écraser les specs internes à l'aide du contenu du <fichier>\n"
-#: gcc.c:2911
+#: gcc.c:3003
msgid " -std=<standard> Assume that the input sources are for <standard>\n"
msgstr " -std=<standard> Présumer que les fichiers sources respectent le <standard>\n"
-#: gcc.c:2912
+#: gcc.c:3004
msgid " -B <directory> Add <directory> to the compiler's search paths\n"
msgstr " -B <répertoire> ajouter le <répertoire> aux chemins de recherche du compilateur\n"
-#: gcc.c:2913
+#: gcc.c:3005
msgid " -b <machine> Run gcc for target <machine>, if installed\n"
msgstr " -b <machine> exécuter gcc pour la <machine> cible, si installé\n"
-#: gcc.c:2914
+#: gcc.c:3006
msgid " -V <version> Run gcc version number <version>, if installed\n"
msgstr " -V <version> exécuter le numéro de <version> de gcc, si installée\n"
-#: gcc.c:2915
+#: gcc.c:3007
msgid " -v Display the programs invoked by the compiler\n"
msgstr " -v afficher les programmes invoqués par le compilateur\n"
-#: gcc.c:2916
+#: gcc.c:3008
msgid " -### Like -v but options quoted and commands not executed\n"
msgstr " -### identique à -v mais les options et les commandes entre guillemets ne sont pas exécutées\n"
-#: gcc.c:2917
+#: gcc.c:3009
msgid " -E Preprocess only; do not compile, assemble or link\n"
msgstr " -E pré-traiter seulement; ne pas compiler, assembler ou éditer les liens\n"
-#: gcc.c:2918
+#: gcc.c:3010
msgid " -S Compile only; do not assemble or link\n"
msgstr " -S compiler seulement; ne pas assembler ou éditer les liens\n"
-#: gcc.c:2919
+#: gcc.c:3011
msgid " -c Compile and assemble, but do not link\n"
msgstr " -S compiler et assembler, mais ne pas éditer les liens\n"
-#: gcc.c:2920
+#: gcc.c:3012
msgid " -o <file> Place the output into <file>\n"
msgstr " -o <fichier> placer la sortie dans le <fichier>\n"
-#: gcc.c:2921
-#, fuzzy
+#: gcc.c:3013
msgid ""
" -x <language> Specify the language of the following input files\n"
" Permissible languages include: c c++ assembler none\n"
" 'none' means revert to the default behavior of\n"
" guessing the language based on the file's extension\n"
msgstr ""
-" -x <langage> spécifier le langage des fichiers d'entrée parmi les\n"
-" langages permis: c c++ assembler none\n"
+" -x <langage> spécifier le langage des fichiers suivants d'entrée\n"
+" Les langages permis sont: c c++ assembler none\n"
" « none » signifiant d'utiliser le comportement par défaut\n"
" en tentant d'identifier le langage par l'extension du fichier\n"
-#: gcc.c:2928
+#: gcc.c:3020
#, c-format
msgid ""
"\n"
@@ -5680,28 +5392,23 @@ msgstr ""
" passés aux divers sous-processus invoqués par %s. Afin de passer\n"
" les autres options à ces processus l'option -W<lettre> doit être utilisé.\n"
-#: gcc.c:3063
+#: gcc.c:3141
#, c-format
msgid "`-%c' option must have argument"
msgstr "l'option « -%c » requière un argument"
-#: gcc.c:3085
+#: gcc.c:3163
#, c-format
msgid "couldn't run `%s': %s"
msgstr "impossible d'exécuter « %s » : %s"
#. translate_options () has turned --version into -fversion.
-#: gcc.c:3262
+#: gcc.c:3349
#, c-format
msgid "%s (GCC) %s\n"
msgstr "%s (GCC) %s\n"
-#: gcc.c:3263
-#, fuzzy
-msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
-msgstr "Copyright © 2001 Free Software Foundation, Inc.\n"
-
-#: gcc.c:3265 gcov.c:364
+#: gcc.c:3352
msgid ""
"This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
@@ -5711,62 +5418,66 @@ msgstr ""
"GARANTIE; ni implicite pour le MARCHANDAGE ou pour un BUT PARTICULIER.\n"
"\n"
-#: gcc.c:3366
+#: gcc.c:3453
msgid "argument to `-Xlinker' is missing"
msgstr "argument de «-Xlinker» est manquant"
-#: gcc.c:3374
+#: gcc.c:3461
+msgid "argument to `-Xpreprocessor' is missing"
+msgstr "argument de « -Xpreprocessor » est manquant"
+
+#: gcc.c:3468
+msgid "argument to `-Xassembler' is missing"
+msgstr "argument de « -Xassembler » est manquant"
+
+#: gcc.c:3475
msgid "argument to `-l' is missing"
-msgstr "argument pour «-l» est manquant"
+msgstr "argument pour « -l » est manquant"
-#: gcc.c:3391
+#: gcc.c:3491
msgid "argument to `-specs' is missing"
-msgstr "argument de «-specs» est manquant"
+msgstr "argument de « -specs » est manquant"
-#: gcc.c:3406
+#: gcc.c:3505
msgid "argument to `-specs=' is missing"
msgstr "argument de «-specs=» est manquant"
-#: gcc.c:3436
+#: gcc.c:3542
#, c-format
msgid "`-%c' must come at the start of the command line"
-msgstr ""
+msgstr "« -%c » doit apparaître au début de la ligne de commande"
-#: gcc.c:3445
+#: gcc.c:3551
msgid "argument to `-B' is missing"
-msgstr "argument de «-B» est manquant"
-
-#: gcc.c:3618
-msgid "cannot specify -o with -c or -S and multiple compilations"
-msgstr "ne peut spécifier -o avec -c ou -S et de multiples compilations"
+msgstr "argument de « -B » est manquant"
-#: gcc.c:3791
+#: gcc.c:3728
msgid "warning: -pipe ignored because -save-temps specified"
msgstr "AVERTISSEMENT: -pipe ignoré parce que -save-temps a été spécifié"
-#: gcc.c:3795
+#: gcc.c:3732
msgid "warning: -pipe ignored because -time specified"
msgstr "AVERTISSEMENT: -pipe ignoré parce que -time a été spécifié"
-#: gcc.c:3807
+#: gcc.c:3944
msgid "argument to `-x' is missing"
-msgstr "argument pour «-x» est manquant"
+msgstr "argument pour « -x » est manquant"
-#: gcc.c:3835
+#: gcc.c:3972
#, c-format
msgid "argument to `-%s' is missing"
-msgstr "argument pour «-%s» est manquant"
+msgstr "argument pour « -%s » est manquant"
-#: gcc.c:3896
+#: gcc.c:4033
#, c-format
msgid "warning: `-x %s' after last input file has no effect"
-msgstr "AVERTISSEMENT: «-x %s» après le dernier fichier d'entrée n'a pas d'effet"
+msgstr "AVERTISSEMENT: « -x %s » après le dernier fichier d'entrée n'a pas d'effet"
-#: gcc.c:4241
+#: gcc.c:4434
msgid "invalid specification! Bug in cc"
msgstr "spécification invalide! Bug dans cc."
-#: gcc.c:4395
+#: gcc.c:4588
#, c-format
msgid "%s\n"
msgstr "%s\n"
@@ -5774,76 +5485,79 @@ msgstr "%s\n"
#. Catch the case where a spec string contains something like
#. '%{foo:%*}'. ie there is no * in the pattern on the left
#. hand side of the :.
-#: gcc.c:4955
+#: gcc.c:5092
#, c-format
msgid "spec failure: '%%*' has not been initialized by pattern match"
-msgstr "échec du spec: « %%* » n'a pas été initialisé par concordance du patron"
+msgstr "échec du spec: « %%* » n'a pas été initialisé par concordance du canevas"
-#: gcc.c:4964
+#: gcc.c:5101
#, c-format
msgid "warning: use of obsolete %%[ operator in specs"
msgstr "AVERTISSEMENT: utilisation obsolète de l'opérateur %%[ dans les specs"
-#: gcc.c:4982
+#: gcc.c:5119
#, c-format
msgid "Processing spec %c%s%c, which is '%s'\n"
msgstr "Traitement du spec %c%s%c, lequel est « %s »\n"
-#: gcc.c:5107
+#: gcc.c:5182
#, c-format
msgid "spec failure: unrecognized spec option '%c'"
msgstr "échec de spec: option « %c » de spec non reconnue"
-#: gcc.c:5188
-#, fuzzy, c-format
+#: gcc.c:5261
+#, c-format
msgid "unknown spec function `%s'"
-msgstr "Dans la fonction « %s »:"
+msgstr "spécification de fonction inconnue « %s »:"
-#: gcc.c:5207
-#, fuzzy, c-format
+#: gcc.c:5280
+#, c-format
msgid "error in args to spec function `%s'"
-msgstr "trop d'arguments pour la fonction « %s »"
+msgstr "ERREUR d'arguments pour la spécification de fonction « %s »"
-#: gcc.c:5256
-#, fuzzy
+#: gcc.c:5328
msgid "malformed spec function name"
-msgstr "le transtypage spécifie le type de fonction"
+msgstr "nom de spécification de fonction mal composé"
#. )
-#: gcc.c:5259
-#, fuzzy
+#: gcc.c:5331
msgid "no arguments for spec function"
-msgstr "trop peu d'arguments pour la fonction"
+msgstr "aucun argument pour la spécification de fonction"
-#: gcc.c:5278
+#: gcc.c:5350
msgid "malformed spec function arguments"
-msgstr ""
+msgstr "arguments de spécification de fonction mal composés"
-#: gcc.c:5386
-msgid "mismatched braces in specs"
-msgstr "accolades non concordantes dans les specs"
+#: gcc.c:6076
+msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC."
+msgstr "échec de spécification: plus d'un argument à SYSROOT_SUFFIX_SPEC."
-#: gcc.c:6081
+#: gcc.c:6086
+msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC."
+msgstr "échec de spécification: plus d'un argument à SYSROOT_HEADERS_SUFFIX_SPEC."
+
+#: gcc.c:6179
#, c-format
msgid "unrecognized option `-%s'"
-msgstr "option «-%s» non reconnue"
+msgstr "option « -%s » non reconnue"
-#: gcc.c:6087
+#: gcc.c:6185
#, c-format
msgid "install: %s%s\n"
msgstr "installés: %s%s\n"
-#: gcc.c:6088
+#: gcc.c:6186
#, c-format
msgid "programs: %s\n"
msgstr "programmes: %s\n"
-#: gcc.c:6089
+#: gcc.c:6187
#, c-format
msgid "libraries: %s\n"
msgstr "libraries: %s\n"
-#: gcc.c:6146
+#: gcc.c:6244
+#, c-format
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
@@ -5851,54 +5565,58 @@ msgstr ""
"\n"
"Pour les instructons afin de rapporter des anomales, SVP consulter:\n"
-#: gcc.c:6162
+#: gcc.c:6260
#, c-format
msgid "Configured with: %s\n"
msgstr "Configuré avec: %s\n"
-#: gcc.c:6176
+#: gcc.c:6274
#, c-format
msgid "Thread model: %s\n"
msgstr "Modèle de thread: %s\n"
-#: gcc.c:6187
+#: gcc.c:6285
#, c-format
msgid "gcc version %s\n"
msgstr "version gcc %s\n"
-#: gcc.c:6189
+#: gcc.c:6287
#, c-format
msgid "gcc driver version %s executing gcc version %s\n"
msgstr "version du pilote gcc %s exécutant le version %s de gcc\n"
-#: gcc.c:6197
+#: gcc.c:6295
msgid "no input files"
msgstr "pas de fichier à l'entrée"
-#: gcc.c:6235
-#, c-format
-msgid "%s: %s compiler not installed on this system"
-msgstr "%s: %s compilateur n'est pas installé sur ce système"
-
-#: gcc.c:6310
+#: gcc.c:6317 gcc.c:6436
#, c-format
msgid "%s: linker input file unused because linking not done"
msgstr "%s: fichier d'entrée d'édition de liens n'est pas utilisé parce l'édition de lien n'a pas été faite"
-#: gcc.c:6353
+#: gcc.c:6320
+msgid "cannot specify -o with -c or -S and multiple languages"
+msgstr "ne peut spécifier -o avec -c ou -S et de multiples langages"
+
+#: gcc.c:6355
+#, c-format
+msgid "%s: %s compiler not installed on this system"
+msgstr "%s: %s compilateur n'est pas installé sur ce système"
+
+#: gcc.c:6476
#, c-format
msgid "language %s not recognized"
msgstr "language %s n'est pas reconnu"
-#: gcc.c:6456
+#: gcc.c:6573
msgid "internal gcc abort"
msgstr "abandon interne de gcc"
-#: gcov.c:325
+#: gcov.c:384
msgid "Internal gcov abort.\n"
msgstr "Abandon interne de gcov.\n"
-#: gcov.c:338
+#: gcov.c:397
msgid ""
"Usage: gcov [OPTION]... SOURCEFILE\n"
"\n"
@@ -5906,7 +5624,7 @@ msgstr ""
"Usage: gcov [OPTION]... FICHIER-SOURCE\n"
"\n"
-#: gcov.c:339
+#: gcov.c:398
msgid ""
"Print code coverage information.\n"
"\n"
@@ -5914,19 +5632,23 @@ msgstr ""
"Produire les informations de la couverture du code.\n"
"\n"
-#: gcov.c:340
+#: gcov.c:399
msgid " -h, --help Print this help, then exit\n"
msgstr " -h, --help afficher l'aide mémoire\n"
-#: gcov.c:341
+#: gcov.c:400
msgid " -v, --version Print version number, then exit\n"
msgstr " -v, --version exécuter le numéro de <version> de gcc, si installée\n"
-#: gcov.c:342
+#: gcov.c:401
+msgid " -a, --all-blocks Show information for every basic block\n"
+msgstr " -a, --all-blocks afficher l'information pour chaque bloc de base\n"
+
+#: gcov.c:402
msgid " -b, --branch-probabilities Include branch probabilities in output\n"
msgstr " -b, --branch-probabilities inclure les probabilités de branchement dans la sortie\n"
-#: gcov.c:343
+#: gcov.c:403
msgid ""
" -c, --branch-counts Given counts of branches taken\n"
" rather than percentages\n"
@@ -5934,11 +5656,11 @@ msgstr ""
" -c, --branch-counts donner le décompte de branchements pris\n"
" plutôt que les pourcentages\n"
-#: gcov.c:345
+#: gcov.c:405
msgid " -n, --no-output Do not create an output file\n"
msgstr " -n, --no-output ne créer de fichier de sortie\n"
-#: gcov.c:346
+#: gcov.c:406
msgid ""
" -l, --long-file-names Use long output file names for included\n"
" source files\n"
@@ -5946,20 +5668,23 @@ msgstr ""
" -l, --long-file-names utiliser des longs noms de fichiers pour\n"
" les fichier sources d'inclusion\n"
-#: gcov.c:348
+#: gcov.c:408
msgid " -f, --function-summaries Output summaries for each function\n"
msgstr " -f, --function-summaries produire un sommaire pour chaque fonction\n"
-#: gcov.c:349
-#, fuzzy
+#: gcov.c:409
msgid " -o, --object-directory DIR|FILE Search for object files in DIR or called FILE\n"
-msgstr " -o, --object-directory RÉP rechercher les fichiers objets dans le RÉPertoire\n"
+msgstr " -o, --object-directory RÉP|FICHIERS rechercher les fichiers objets dans le RÉPertoire ou appellés FICHIERS\n"
-#: gcov.c:350
+#: gcov.c:410
msgid " -p, --preserve-paths Preserve all pathname components\n"
-msgstr ""
+msgstr " -p, --preserve-paths préserver tous les composants des chemins d'accès\n"
+
+#: gcov.c:411
+msgid " -u, --unconditional-branches Show unconditional branch counts too\n"
+msgstr " -u, --unconditional-branches afficher les compteurs de branchement inconditionnel aussi\n"
-#: gcov.c:351
+#: gcov.c:412
#, c-format
msgid ""
"\n"
@@ -5970,476 +5695,370 @@ msgstr ""
"Pour les instructons afin de rapporter des anomales, SVP consulter:\n"
"%s.\n"
-#: gcov.c:361
+#: gcov.c:422
#, c-format
msgid "gcov (GCC) %s\n"
msgstr "gcov (GCC) %s\n"
-#: gcov.c:362
-msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
-msgstr "Copyright © 2001 Free Software Foundation, Inc.\n"
-
-#: gcov.c:500
-#, c-format
-msgid "Could not open basic block file %s.\n"
-msgstr "Ne pourrait pas ouvrir le fichier de blocs de base %s.\n"
+#: gcov.c:423
+msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
+msgstr "Copyright © 2003 Free Software Foundation, Inc.\n"
-#: gcov.c:507
-#, c-format
-msgid "Could not open program flow graph file %s.\n"
-msgstr "Ne pourrait pas ouvrir le fichier de flux du programm %s.\n"
+#: gcov.c:425
+msgid ""
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or \n"
+"FITNESS FOR A PARTICULAR PURPOSE.\n"
+"\n"
+msgstr ""
+"Ce logiciel est libre; voir les sources pour les conditions de copie. \n"
+"Il n'y a PAS GARANTIE; ni implicite pour le MARCHANDAGE ou\n"
+"pour un BUT PARTICULIER.\n"
+"\n"
-#: gcov.c:524
+#: gcov.c:515
#, c-format
-msgid "Could not open data file %s.\n"
-msgstr "Ne pourrait pas ouvrir le fichier de données %s.\n"
+msgid "%s:no functions found\n"
+msgstr "%s: aucune fonction repérée\n"
-#: gcov.c:525
-msgid "Assuming that all execution counts are zero.\n"
-msgstr "Suppose que tous les compteurs d'exécution sont à zéro.\n"
+# I18N
+#: gcov.c:536 gcov.c:564
+msgid "\n"
+msgstr "\n"
-#: gcov.c:534
+#: gcov.c:551
#, c-format
-msgid "No executable code associated with file %s.\n"
-msgstr "Aucun code exécutable associé avec le fichier %s.\n"
-
-#: gcov.c:1186
-#, fuzzy, c-format
-msgid "%s of %d lines executed in %s %s\n"
-msgstr "%6.2f%% de lignes sources %d exécutés dans le fichier %s\n"
-
-#: gcov.c:1191
-#, fuzzy, c-format
-msgid "No executable lines in %s %s\n"
-msgstr "Pas de ligne exécutable dans le fichier %s\n"
-
-#: gcov.c:1198
-#, fuzzy, c-format
-msgid "%s of %d branches executed in %s %s\n"
-msgstr "%6.2f%% de branchements %d exécutés dans le fichier %s\n"
-
-#: gcov.c:1203
-#, fuzzy, c-format
-msgid "%s of %d branches taken at least once in %s %s\n"
-msgstr "%6.2f%% de branchements %d pris au moins une fois dans le fichier %s\n"
-
-#: gcov.c:1209
-#, fuzzy, c-format
-msgid "No branches in %s %s\n"
-msgstr "Pas de branchement dans le fichier %s\n"
+msgid "%s:creating `%s'\n"
+msgstr "%s: création de « %s »\n"
-#: gcov.c:1211
-#, fuzzy, c-format
-msgid "%s of %d calls executed in %s %s\n"
-msgstr "%6.2f%% d'appels %d exécutés dans le fichier %s\n"
-
-#: gcov.c:1216
-#, fuzzy, c-format
-msgid "No calls in %s %s\n"
-msgstr "Pas d'appel dans le fichier %s\n"
-
-#: gcov.c:1351
+#: gcov.c:555
#, c-format
-msgid "didn't use all bb entries of graph, function %s\n"
-msgstr "N'a pas utiliser toutes les entrées bb du graphe, fonction %s\n"
+msgid "%s:error writing output file `%s'\n"
+msgstr "%s: ERREUR d'écriture dans le fichier de sortie « %s ».\n"
-#: gcov.c:1353
+#: gcov.c:560
#, c-format
-msgid "block_num = %ld, num_blocks = %d\n"
-msgstr "block_num = %ld, num_blocks = %d\n"
+msgid "%s:could not open output file `%s'\n"
+msgstr "%s: ne peut ouvrir le fichier de sortie « %s ».\n"
-#: gcov.c:1367
+#: gcov.c:711
#, c-format
-msgid "ERROR: unexpected line number %ld\n"
-msgstr "ERREUR : ligne numéro %ld inattendue\n"
+msgid "%s:cannot open graph file\n"
+msgstr "%s: ne peut ouvrir le fichier de graphe\n"
-#: gcov.c:1383
+#: gcov.c:717
#, c-format
-msgid "ERROR: too many basic blocks in function %s\n"
-msgstr "ERREUR : trop de blocs de base dans la fonction %s\n"
-
-#: gcov.c:1398
-#, fuzzy, c-format
-msgid "ERROR: out of range line number in function %s\n"
-msgstr "Pas de lignes sources exécutables dans la fonction %s\n"
+msgid "%s:not a gcov graph file\n"
+msgstr "%s: n'est pas un fichier de graphe gcov\n"
-#: gcov.c:1470
+#: gcov.c:730
#, c-format
-msgid "Could not open source file %s.\n"
-msgstr "N'a pu ouvrir le fichier source %s.\n"
+msgid "%s:version `%.4s', prefer `%.4s'\n"
+msgstr "%s:version « %.4s », préfère « %.4s »\n"
-#: gcov.c:1480
+#: gcov.c:782
#, c-format
-msgid "Warning: source file %s is newer than %s\n"
-msgstr "Attention : le fichier source %s est plus récent que %s\n"
+msgid "%s:already seen blocks for `%s'\n"
+msgstr "%s:blocs déjà vus pour « %s »\n"
-#: gcov.c:1510
+#: gcov.c:903 gcov.c:1062
#, c-format
-msgid "Unexpected EOF while reading source file %s.\n"
-msgstr "EOF inattendue lors de la lecture du fichier source %s.\n"
+msgid "%s:corrupted\n"
+msgstr "%s:corrompu\n"
-# FIXME: c'est de l'assembleur ?
-#: gcov.c:1532
+#: gcov.c:976
#, c-format
-msgid "call %2d never executed\n"
-msgstr "call %2d n'est jamais été exécuté\n"
-
-#: gcov.c:1535
-#, fuzzy, c-format
-msgid "call %2d returns %s\n"
-msgstr "appel %d a retourné = %s\n"
-
-#: gcov.c:1543
-#, fuzzy, c-format
-msgid "branch %2d never executed\n"
-msgstr "branchement %d n'a jamais été exécuté\n"
-
-#: gcov.c:1546
-#, fuzzy, c-format
-msgid "branch %2d taken %s\n"
-msgstr "branchement %d a pris = %s\n"
+msgid "%s:cannot open data file\n"
+msgstr "%s: ne peut ouvrir le fichier de données\n"
-#: gcov.c:1610
+#: gcov.c:981
#, c-format
-msgid "Creating %s.\n"
-msgstr "Création de %s.\n"
+msgid "%s:not a gcov data file\n"
+msgstr "%s: n'est pas un fichier de données gcov\n"
-#: gcov.c:1613
-#, fuzzy, c-format
-msgid "Error writing output file %s.\n"
-msgstr "erreur d'écriture dans %s"
-
-#: gcov.c:1618
+#: gcov.c:994
#, c-format
-msgid "Could not open output file %s.\n"
-msgstr "N'a pu ouvrir le fichier d'entrée %s.\n"
+msgid "%s:version `%.4s', prefer version `%.4s'\n"
+msgstr "%s:version « %.4s », préfère la version « %.4s »\n"
-#: gcse.c:763
+#: gcov.c:1000
#, c-format
-msgid "GCSE disabled: %d > 1000 basic blocks and %d >= 20 edges/basic block"
-msgstr "GCSE désactivé: %d > 1000 blocs de base et %d >= 20 blocs edges/basic"
+msgid "%s:stamp mismatch with graph file\n"
+msgstr "%s: estampille ne concorde par avec le fichier de graphe\n"
-#: gcse.c:775
+#: gcov.c:1026
#, c-format
-msgid "GCSE disabled: %d basic blocks and %d registers"
-msgstr "GCSE désactivé: %d vlocs de base et %d registres"
+msgid "%s:unknown function `%u'\n"
+msgstr "%s: fonction inconnue « %u »\n"
-#: genautomata.c:1490
+#: gcov.c:1039
#, c-format
-msgid "Name `%s' contains quotes"
-msgstr ""
-
-#: genautomata.c:1621
-#, fuzzy, c-format
-msgid "invalid string `%s' in define_cpu_unit"
-msgstr "ponctuation invalide « %c » dans la contrainte"
+msgid "%s:profile mismatch for `%s'\n"
+msgstr "%s: profile ne concorde pas pour « %s »\n"
-#: genautomata.c:1650
+#: gcov.c:1062
#, c-format
-msgid "invalid string `%s' in define_query_cpu_unit"
-msgstr ""
-
-#: genautomata.c:1682 genautomata.c:1685
-#, fuzzy, c-format
-msgid "invalid string `%s' in define_bypass"
-msgstr "utilisation invalide d'un type indéfini «%s %s»"
+msgid "%s:overflowed\n"
+msgstr "%s: débordement\n"
-#: genautomata.c:1720
-#, fuzzy, c-format
-msgid "invalid first string `%s' in exclusion_set"
-msgstr "ponctuation invalide « %c » dans la contrainte"
-
-#: genautomata.c:1724
-#, fuzzy, c-format
-msgid "invalid second string `%s' in exclusion_set"
-msgstr "ponctuation invalide « %c » dans la contrainte"
+#: gcov.c:1085
+#, c-format
+msgid "%s:`%s' lacks entry and/or exit blocks\n"
+msgstr "%s:« %s » manque de blocs d'entrée et/ou de sortie\n"
-#: genautomata.c:1760
+#: gcov.c:1090
#, c-format
-msgid "invalid first string `%s' in presence_set"
-msgstr ""
+msgid "%s:`%s' has arcs to entry block\n"
+msgstr "%s:« %s » possède des arcs vers un bloc d'entrée\n"
-#: genautomata.c:1764
-#, fuzzy, c-format
-msgid "invalid second string `%s' in presence_set"
-msgstr "séquence de contrôle invalide"
+#: gcov.c:1098
+#, c-format
+msgid "%s:`%s' has arcs from exit block\n"
+msgstr "%s:« %s » possèdes des arcs à partir du bloc de sortie\n"
-#: genautomata.c:1800
+#: gcov.c:1306
#, c-format
-msgid "invalid first string `%s' in absence_set"
-msgstr ""
+msgid "%s:graph is unsolvable for `%s'\n"
+msgstr "%s: graphe n'a pas de solution pour « %s »\n"
-#: genautomata.c:1804
+#: gcov.c:1386
#, c-format
-msgid "invalid second string `%s' in absence_set"
-msgstr ""
+msgid "%s `%s'\n"
+msgstr "%s « %s »\n"
-#: genautomata.c:1837
+#: gcov.c:1389
#, c-format
-msgid "invalid string `%s' in define_automaton"
-msgstr ""
+msgid "Lines executed:%s of %d\n"
+msgstr "Lignes exécutées: %s de %d\n"
-#: genautomata.c:1868
-#, fuzzy, c-format
-msgid "invalid option `%s' in automata_option"
-msgstr "ponctuation invalide « %c » dans la contrainte"
+#: gcov.c:1393
+msgid "No executable lines"
+msgstr "Auncue ligne exécutable"
-#: genautomata.c:1890
+#: gcov.c:1399
#, c-format
-msgid "garbage after ) in reservation `%s'"
-msgstr ""
-
-#: genautomata.c:1921 genautomata.c:1954 genautomata.c:1981
-#, fuzzy, c-format
-msgid "invalid `%s' in reservation `%s'"
-msgstr "redéclaration invalide de « %D »"
+msgid "Branches executed:%s of %d\n"
+msgstr "Branchements exécutés: %s de %d\n"
-#: genautomata.c:1932
+#: gcov.c:1403
#, c-format
-msgid "repetition `%s' <= 1 in reservation `%s'"
-msgstr ""
+msgid "Taken at least once:%s of %d\n"
+msgstr "Branchements pris au moins une fois: %s de %d\n"
-#: genautomata.c:2425
-#, fuzzy, c-format
-msgid "unit `%s' in exclusion is not declared"
-msgstr "« %s » n'est pas déclaré"
+#: gcov.c:1409
+msgid "No branches\n"
+msgstr "Pas de branchement\n"
-#: genautomata.c:2427
+#: gcov.c:1411
#, c-format
-msgid "`%s' in exclusion is not unit"
-msgstr ""
+msgid "Calls executed:%s of %d\n"
+msgstr "Appels exécutés: %s de %d\n"
-#: genautomata.c:2465
-#, fuzzy, c-format
-msgid "unit `%s' excludes itself"
-msgstr "largeur de « %s » excède son type"
+#: gcov.c:1415
+msgid "No calls\n"
+msgstr "Pas d'appel\n"
-#: genautomata.c:2473
+#: gcov.c:1556
#, c-format
-msgid "units `%s' and `%s' in exclusion set belong to different automata"
-msgstr ""
+msgid "%s:no lines for `%s'\n"
+msgstr "%s: pas de ligne pour « %s »\n"
-#: genautomata.c:2603 genautomata.c:2609
+#: gcov.c:1751
#, c-format
-msgid "unit `%s' excludes and requires presence of `%s'"
-msgstr ""
+msgid "call %2d returned %s\n"
+msgstr "appel %2d a retourné %s\n"
-#: genautomata.c:2623 genautomata.c:2629
+# FIXME: c'est de l'assembleur ?
+#: gcov.c:1756
#, c-format
-msgid "unit `%s' requires absence and presence of `%s'"
-msgstr ""
-
-#: genautomata.c:2692 genautomata.c:2695
-#, fuzzy, c-format
-msgid "repeated declaration of automaton `%s'"
-msgstr "duplication de déclaration de la méthode de classe « %s »"
+msgid "call %2d never executed\n"
+msgstr "call %2d n'est jamais été exécuté\n"
-#: genautomata.c:2711
+#: gcov.c:1761
#, c-format
-msgid "define_insn_reservation `%s' has negative latency time"
-msgstr ""
-
-#: genautomata.c:2717
-#, fuzzy, c-format
-msgid "`%s' is already used as insn reservation name"
-msgstr "« %D » est déjà déclaré dans cette portée"
+msgid "branch %2d taken %s%s\n"
+msgstr "branchement %2d a pris %s%s\n"
-#: genautomata.c:2723
+#: gcov.c:1765
#, c-format
-msgid "define_bypass `%s - %s' has negative latency time"
-msgstr ""
-
-#: genautomata.c:2737
-#, fuzzy, c-format
-msgid "automaton `%s' is not declared"
-msgstr "« %s » n'est pas déclaré"
+msgid "branch %2d never executed\n"
+msgstr "branchement %2d n'a jamais été exécuté\n"
-#: genautomata.c:2747
+#: gcov.c:1770
#, c-format
-msgid "define_unit `%s' without automaton when one defined"
-msgstr ""
-
-#: genautomata.c:2753
-#, fuzzy, c-format
-msgid "`%s' is declared as cpu unit"
-msgstr "champ « %s » déclaré comme une fonction"
-
-#: genautomata.c:2762
-#, fuzzy, c-format
-msgid "`%s' is declared as cpu reservation"
-msgstr "« %D » déclaré comme un ami"
-
-#: genautomata.c:2772
-#, fuzzy, c-format
-msgid "repeated declaration of unit `%s'"
-msgstr "redéclaration de « %s »"
-
-#: genautomata.c:2775
-#, fuzzy, c-format
-msgid "repeated declaration of reservation `%s'"
-msgstr "duplication de déclaration de la méthode de classe « %s »"
-
-#: genautomata.c:2790 genautomata.c:2793
-#, fuzzy, c-format
-msgid "there is no insn reservation `%s'"
-msgstr "qu'une précédente déclaratio « %F »"
+msgid "unconditional %2d taken %s\n"
+msgstr "inconditionnel %2d a pris %s\n"
-#: genautomata.c:2810 genautomata.c:2815
-#, fuzzy, c-format
-msgid "the same bypass `%s - %s' is already defined"
-msgstr "#pragma %s %s est déjà enregistré"
+# FIXME: c'est de l'assembleur ?
+#: gcov.c:1773
+#, c-format
+msgid "unconditional %2d never executed\n"
+msgstr "inconditionnel %2d n'a jamais été exécuté\n"
-#: genautomata.c:2820
-#, fuzzy, c-format
-msgid "bypass `%s - %s' is already defined"
-msgstr "#pragma %s %s est déjà enregistré"
+#: gcov.c:1805
+#, c-format
+msgid "%s:cannot open source file\n"
+msgstr "%s: ne peut ouvrir le fichier source\n"
-#: genautomata.c:2925 genautomata.c:2927
-#, fuzzy, c-format
-msgid "automaton `%s' is not used"
-msgstr "mode de %s n'est pas un mode"
+#: gcov.c:1815
+#, c-format
+msgid "%s:source file is newer than graph file `%s'\n"
+msgstr "%s: fichier source est plus récent que le fichier graphe « %s »\n"
-#: genautomata.c:2950
-#, fuzzy, c-format
-msgid "undeclared unit or reservation `%s'"
-msgstr "identificateur « %s » non déclaré"
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:747
+msgid "GCSE disabled"
+msgstr "GCSE désactivé"
-#: genautomata.c:3028 genautomata.c:3030
-#, fuzzy, c-format
-msgid "unit `%s' is not used"
-msgstr "« %s » défini mais n'a pas été utilisé"
+#: gcse.c:6108
+msgid "NULL pointer checks disabled"
+msgstr "vérification des pointeurs NULS désactivée"
-#: genautomata.c:3035 genautomata.c:3037
-#, fuzzy, c-format
-msgid "reservation `%s' is not used"
-msgstr "déclaration faible de « %s » n'est pas supportée"
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:7994
+msgid "jump bypassing disabled"
+msgstr "saut d'évitement désactivé"
-#: genautomata.c:3134
-#, fuzzy, c-format
-msgid "cycle in definition of reservation `%s'"
-msgstr "redéfinition de «union %s'"
+#: gcse.c:8055
+#, c-format
+msgid "%s: %d basic blocks and %d edges/basic block"
+msgstr "%s: %d blocs de base et %d blocs edges/basic"
-#: genautomata.c:5333
+#: gcse.c:8068
#, c-format
-msgid "Units `%s' and `%s' should be in the same automaton"
-msgstr ""
+msgid "%s: %d basic blocks and %d registers"
+msgstr "%s: %d blocs basic et %d registres"
-#: genautomata.c:9441
-#, fuzzy
-msgid "-split has no argument."
-msgstr "pas d'argument"
+#: ggc-common.c:398 ggc-common.c:406 ggc-common.c:487 ggc-common.c:507
+#: ggc-page.c:2030 ggc-page.c:2062 ggc-page.c:2069 ggc-zone.c:1361
+#: ggc-zone.c:1367 ggc-zone.c:1372 ggc-zone.c:1379
+#, c-format
+msgid "can't write PCH file: %m"
+msgstr "ne peut écrire le fichier PCH: %m"
-#: genautomata.c:9442
-#, fuzzy
-msgid "option `-split' has not been implemented yet\n"
-msgstr "profilage n'est pas implanté encore"
+#: ggc-common.c:500
+#, c-format
+msgid "can't get position in PCH file: %m"
+msgstr "ne peut obtenir la position dans le fichier PCH: %m"
-#: genautomata.c:9486 genautomata.c:9491
+#: ggc-common.c:510
#, c-format
-msgid "Automaton `%s': Insn `%s' will never be issued"
-msgstr ""
+msgid "can't write padding to PCH file: %m"
+msgstr "ne peut écrire de remplissage dans le fichier PCH: %m"
-#: genautomata.c:9498 genautomata.c:9501
+#: ggc-common.c:563 ggc-common.c:571 ggc-common.c:578 ggc-common.c:581
+#: ggc-common.c:654 ggc-common.c:657 ggc-page.c:2157 ggc-zone.c:1389
#, c-format
-msgid "Insn `%s' will never be issued"
-msgstr ""
+msgid "can't read PCH file: %m"
+msgstr "ne peut lire le fichier PCH: %m"
-#: genautomata.c:9649
-#, fuzzy
-msgid "Errors in DFA description"
-msgstr "aucune description encore"
+#: ggc-common.c:681
+msgid "had to relocate PCH"
+msgstr "a dû relocaliser PCH"
-#: genautomata.c:9732
-#, fuzzy, c-format
-msgid "Error in writing DFA description file %s"
-msgstr "erreur d'écriture dans %s"
+#: ggc-page.c:1325
+#, c-format
+msgid "open /dev/zero: %m"
+msgstr "ouverture de /dev/zero: %m"
-#: genconditions.c:196
-#, fuzzy
-msgid "No input file name."
-msgstr "pas de fichier à l'entrée"
+#: ggc-page.c:2047 ggc-page.c:2053
+msgid "can't write PCH file"
+msgstr "ne peut écrire dans le fichier PCH"
-#: ggc-page.c:1265
-msgid "open /dev/zero"
-msgstr ""
+#: ggc-simple.c:506
+msgid "Generating PCH files is not supported when using ggc-simple.c"
+msgstr "Génération des ficheirs PCH n'est pas supporté lors de l'utilisation de ggc-simple.c"
-#: graph.c:420 profile.c:1204 profile.c:1211 toplev.c:1836 toplev.c:5168
-#: f/com.c:14210 java/jcf-parse.c:917 java/jcf-parse.c:1063 java/lex.c:1776
-#: objc/objc-act.c:449
+#: global.c:356 global.c:369 global.c:383
#, c-format
-msgid "can't open %s"
-msgstr "ne peut ouvrir %s"
+msgid "%s cannot be used in asm here"
+msgstr "%s ne peut être utilisé dans asm ici"
+
+#: graph.c:403 toplev.c:1481 toplev.c:4408 f/com.c:14202 java/jcf-parse.c:883
+#: java/jcf-parse.c:1030 java/lex.c:1828 objc/objc-act.c:503
+#, c-format
+msgid "can't open %s: %m"
+msgstr "ne peut ouvrir %s: %m"
#: haifa-sched.c:196
#, c-format
msgid "fix_sched_param: unknown param: %s"
msgstr "fix_sched_param: paramètre inconnu: %s"
-#: integrate.c:174
+#: integrate.c:166
msgid "function cannot be inline"
-msgstr "fonction ne pas pas être en ligne"
+msgstr "fonction ne pas pas être enligne"
-#: integrate.c:178
+#: integrate.c:170
msgid "varargs function cannot be inline"
-msgstr "varargs de fonction ne peuvent par être en ligne"
+msgstr "varargs de fonction ne peuvent par être enligne"
-#: integrate.c:181
+#: integrate.c:173
msgid "function using alloca cannot be inline"
-msgstr "fonction utilisant alloca ne pas pas être en ligne"
+msgstr "fonction utilisant alloca ne pas pas être enligne"
-#: integrate.c:184
+#: integrate.c:176
+msgid "function using longjmp cannot be inline"
+msgstr "fonction utilisant longjmp ne peut pas être enligne"
+
+#: integrate.c:179
msgid "function using setjmp cannot be inline"
-msgstr "fonction utilisant setjmp ne pas pas être en ligne"
+msgstr "fonction utilisant setjmp ne peut pas être enligne"
-#: integrate.c:187
+#: integrate.c:182
msgid "function uses __builtin_eh_return"
msgstr "fonction utilise « __builtin_eh_return »"
-#: integrate.c:190
+#: integrate.c:185
msgid "function with nested functions cannot be inline"
-msgstr "fonction avec fonctions imbriquées ne peut pas être en ligne"
+msgstr "fonction avec fonctions imbriquées ne peut pas être enligne"
-#: integrate.c:194
+#: integrate.c:189
msgid "function with label addresses used in initializers cannot inline"
-msgstr "un fonction avec étiquette d'adresses utilisée pour l'initialisation ne peut pas être en-ligne (inline)"
+msgstr "un fonction avec étiquette d'adresses utilisée pour l'initialisation ne peut pas être enligne (inline)"
-#: integrate.c:201 integrate.c:245
+#: integrate.c:196 integrate.c:240
msgid "function too large to be inline"
-msgstr "fonction trop grande pour être en ligne"
+msgstr "fonction trop grande pour être enligne"
-#: integrate.c:211
+#: integrate.c:206
msgid "no prototype, and parameter address used; cannot be inline"
-msgstr "pas de prototpe, et de adresse de paramètre utilisée; ne peut pas être en ligne"
+msgstr "pas de prototpe, et de adresse de paramètre utilisée; ne peut pas être enligne"
-#: integrate.c:218 integrate.c:263
+#: integrate.c:213 integrate.c:258
msgid "inline functions not supported for this return value type"
-msgstr "fonctions en ligne ne peuvent pas être supportées pour ce type de valeur retournée"
+msgstr "fonctions enligne ne peuvent pas être supportées pour ce type de valeur retournée"
-#: integrate.c:223
+#: integrate.c:218
msgid "function with varying-size return value cannot be inline"
-msgstr "fonction avec une valeur retournée de taille variable ne peut pas être en ligne"
+msgstr "fonction avec une valeur retournée de taille variable ne peut pas être enligne"
-#: integrate.c:230
+#: integrate.c:225
msgid "function with varying-size parameter cannot be inline"
-msgstr "fonction avec un paramètre de taille variable ne peut pas être en ligne"
+msgstr "fonction avec un paramètre de taille variable ne peut pas être enligne"
-#: integrate.c:233
+#: integrate.c:228
msgid "function with transparent unit parameter cannot be inline"
-msgstr "fonction avec une unité transparente de paramètre ne peut pas être en ligne"
+msgstr "fonction avec une unité transparente de paramètre ne peut pas être enligne"
-#: integrate.c:252
+#: integrate.c:247
msgid "function with computed jump cannot inline"
-msgstr "fonction avec un saut calculé ne peut pas être en ligne"
+msgstr "fonction avec un saut calculé ne peut pas être enligne"
-#: integrate.c:256
+#: integrate.c:251
msgid "function with nonlocal goto cannot be inline"
-msgstr "fonction avec un goto non local ne peut pas être en ligne"
+msgstr "fonction avec un goto non local ne peut pas être enligne"
-#: integrate.c:270
+#: integrate.c:265
msgid "function with target specific attribute(s) cannot be inlined"
-msgstr "fonction avec des attributs spécifiques à la cible ne peut pas être en ligne"
+msgstr "fonction avec des attributs spécifiques à la cible ne peut pas être enligne"
+
+# FIXME: c'est de l'assembleur ?
+#: jump.c:1896
+msgid "%Hwill never be executed"
+msgstr "%Hne sera jamais exécuté"
-#: line-map.c:198
+#: line-map.c:202
#, c-format
msgid "In file included from %s:%u"
msgstr "Dans le fichier inclus à partir de %s:%u"
@@ -6456,7 +6075,7 @@ msgstr "Dans le fichier inclus à partir de %s:%u"
#. with all the "from"s lined up.
#. The trailing comma is at the beginning of this message,
#. and the trailing colon is not translated.
-#: line-map.c:216
+#: line-map.c:220
#, c-format
msgid ""
",\n"
@@ -6465,63 +6084,156 @@ msgstr ""
",\n"
" à partir de %s:%u"
+#. What to print when a switch has no documentation.
+#: opts.c:149
+msgid "This switch lacks documentation"
+msgstr "Cette option manque de documentation"
+
+#. Eventually this should become a hard error IMO.
+#: opts.c:318
+#, c-format
+msgid "command line option \"%s\" is valid for %s but not for %s"
+msgstr "l'option de la ligne de commande \"%s\" est valide pour %s mais pas pour %s"
+
+#: opts.c:406
+#, c-format
+msgid "missing argument to \"%s\""
+msgstr "argument manquant à \"%s\""
+
+#: opts.c:416
+#, c-format
+msgid "argument to \"%s\" should be a non-negative integer"
+msgstr "argument de \"%s\" doit être un entier non négatif"
+
+#: opts.c:463
+#, c-format
+msgid "unrecognized command line option \"%s\""
+msgstr "option \"%s\" de la ligne de commande non reconnue"
+
+#: opts.c:646
+msgid "-Wuninitialized is not supported without -O"
+msgstr "-Wuninitialized n'est pas supporté sans -O"
+
+#: opts.c:1350
+#, c-format
+msgid "unrecognized register name \"%s\""
+msgstr "nom de registre non reconnue \"%s\""
+
+#: opts.c:1394
+#, c-format
+msgid "unknown tls-model \"%s\""
+msgstr "tls-model \"%s\" inconnu"
+
+#: opts.c:1450
+msgid "-fwritable-strings is deprecated; see documentation for details"
+msgstr "-fwritable-strings est obsolète, voir la documentation pour les détails"
+
+#: opts.c:1534
+#, c-format
+msgid "%s: --param arguments should be of the form NAME=VALUE"
+msgstr "%s: arguments de --param devrait être de la forme NOM=VALEUR"
+
+#: opts.c:1539
+#, c-format
+msgid "invalid --param value `%s'"
+msgstr "valeur de --param invalide « %s »"
+
+#: opts.c:1635
+msgid "target system does not support debug output"
+msgstr "le ssytème cible ne supporte pas la sortie pour mise au point"
+
+#: opts.c:1642
+#, c-format
+msgid "debug format \"%s\" conflicts with prior selection"
+msgstr "le format de mise au point \"%s\" entre en conflit avec une sélection précédente"
+
+#: opts.c:1658
+#, c-format
+msgid "unrecognised debug output level \"%s\""
+msgstr "niveau de sortie de mise au point non reconnu \"%s\""
+
+#: opts.c:1660
+#, c-format
+msgid "debug output level %s is too high"
+msgstr "niveau de sortie de mise au point %s est trop élevé"
+
+#: opts.c:1679
+msgid "The following options are language-independent:\n"
+msgstr "Les options suivantes sont indépendantes du langage:\n"
+
+#: opts.c:1686
+#, c-format
+msgid ""
+"The %s front end recognizes the following options:\n"
+"\n"
+msgstr ""
+"L'interface %s reconnaît les options suivantes:\n"
+"\n"
+
+#: opts.c:1700
+msgid "The --param option recognizes the following as parameters:\n"
+msgstr "L'option --param reconnaît les paramètres suivant:\n"
+
#. If we didn't find this parameter, issue an error message.
-#: params.c:80
+#: params.c:76
#, c-format
msgid "invalid parameter `%s'"
msgstr "paramètre invalide « %s »"
-#: profile.c:397
-#, c-format
-msgid "Profile does not match flowgraph of function %s (out of date?)"
-msgstr ""
+#: profile.c:288
+msgid "corrupted profile info: run_max * runs < sum_max"
+msgstr "profile info corrompu: run_max * runs < sum_max"
-#: profile.c:400
-#, fuzzy
-msgid ".da file corrupted"
-msgstr "Le contenu du fichier .da n'a pas été épuisé"
+#: profile.c:294
+msgid "corrupted profile info: sum_all is smaller than sum_max"
+msgstr "info profile corrompu: sum_all est plus petit que sum_max"
-#: profile.c:634
+#: profile.c:336
#, c-format
-msgid "corrupted profile info: prob for %d-%d thought to be %d"
-msgstr "info de profilage corrompu: prob pour %d-%d pense être %d "
+msgid "corrupted profile info: edge from %i to %i exceeds maximal count"
+msgstr "info de profilage corrompu: bordure (edge) %i à %i excède le compte maximal"
-#: profile.c:1226
+#: profile.c:499
#, c-format
-msgid "file %s not found, execution counts assumed to be zero"
-msgstr "fichier %s non repéré, compteur d'exécution assumé être à zéro"
+msgid "corrupted profile info: number of iterations for basic block %d thought to be %i"
+msgstr "info de profilage corrompu: nombre d'itérations pour un bloc basic %d devrait être %i"
-#: protoize.c:542
+#: profile.c:526
+#, c-format
+msgid "corrupted profile info: number of executions for edge %d-%d thought to be %i"
+msgstr "info de profilage corrompu: nombre d'exécutions pour bordures (edge) %d-%d devrait être %i"
+
+#: protoize.c:534
#, c-format
msgid "%s: internal abort\n"
msgstr "%s: abandon interne\n"
-#: protoize.c:633
+#: protoize.c:592
#, c-format
msgid "%s: error writing file `%s': %s\n"
msgstr "%s: erreur d'écriture au fichier « %s »: %s\n"
-#: protoize.c:678
+#: protoize.c:636
#, c-format
msgid "%s: usage '%s [ -VqfnkN ] [ -i <istring> ] [ filename ... ]'\n"
-msgstr "%s: usage «%s [ -VqfnkN ] [ -i <chaîne> ] [ nom-de-fichier ... ]»\n"
+msgstr "%s: usage « %s [ -VqfnkN ] [ -i <chaîne> ] [ nom-de-fichier ... ] »\n"
-#: protoize.c:681
+#: protoize.c:639
#, c-format
msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B <dirname> ] [ filename ... ]'\n"
-msgstr "%s: usage «%s [ -VqfnkNlgC ] [ -B <répertoire> ] [ nom-de-fichier ... ]»\n"
+msgstr "%s: usage « %s [ -VqfnkNlgC ] [ -B <répertoire> ] [ nom-de-fichier ... ] »\n"
-#: protoize.c:788
+#: protoize.c:745
#, c-format
msgid "%s: warning: no read access for file `%s'\n"
msgstr "%s: AVERTISSEMENT: aucun accès en lecture du fichier « %s »\n"
-#: protoize.c:796
+#: protoize.c:753
#, c-format
msgid "%s: warning: no write access for file `%s'\n"
msgstr "%s: AVERTISSEMENT: aucun accès en écriture du fichier « %s »\n"
-#: protoize.c:804
+#: protoize.c:761
#, c-format
msgid "%s: warning: no write access for dir containing `%s'\n"
msgstr "%s: AVERTISSEMENT: aucun accès en écriture du répertoire contenant « %s »\n"
@@ -6529,17 +6241,17 @@ msgstr "%s: AVERTISSEMENT: aucun accès en écriture du répertoire contenant « %s
#. Catch cases like /.. where we try to backup to a
#. point above the absolute root of the logical file
#. system.
-#: protoize.c:1222
+#: protoize.c:1148
#, c-format
msgid "%s: invalid file name: %s\n"
msgstr "%s: nom de fichier invalide: %s\n"
-#: protoize.c:1374
+#: protoize.c:1296
#, c-format
msgid "%s: %s: can't get status: %s\n"
msgstr "%s: %s: ne peut obtenir l'état: %s\n"
-#: protoize.c:1395
+#: protoize.c:1317
#, c-format
msgid ""
"\n"
@@ -6548,137 +6260,137 @@ msgstr ""
"\n"
"%s: erreur fatale: fichier auxiliaire d'infos à la ligne %d\n"
-#: protoize.c:1731
+#: protoize.c:1646
#, c-format
msgid "%s:%d: declaration of function `%s' takes different forms\n"
msgstr "%s:%d: déclaration de fonction « %s » prend différentes formes\n"
-#: protoize.c:1989
+#: protoize.c:1901
#, c-format
msgid "%s: compiling `%s'\n"
msgstr "%s: en compilation « %s »\n"
-#: protoize.c:2012
+#: protoize.c:1924
#, c-format
msgid "%s: wait: %s\n"
msgstr "%s: en attente: %s\n"
-#: protoize.c:2017
+#: protoize.c:1929
#, c-format
msgid "%s: subprocess got fatal signal %d\n"
msgstr "%s: sous-processus a reçu le signal fatal %d\n"
-#: protoize.c:2025
+#: protoize.c:1937
#, c-format
msgid "%s: %s exited with status %d\n"
msgstr "%s: %s a terminé avec le statut %d\n"
-#: protoize.c:2077
+#: protoize.c:1986
#, c-format
msgid "%s: warning: missing SYSCALLS file `%s'\n"
msgstr "%s: AVERTISSEMENT: fichier des SYSCALLS « %s » est manquant\n"
-#: protoize.c:2086 protoize.c:2115
+#: protoize.c:1995 protoize.c:2024
#, c-format
msgid "%s: can't read aux info file `%s': %s\n"
msgstr "%s: ne peut lire le fichier auxiliaire d'infos « %s »: %s\n"
-#: protoize.c:2131 protoize.c:2159
+#: protoize.c:2040 protoize.c:2068
#, c-format
msgid "%s: can't get status of aux info file `%s': %s\n"
msgstr "%s: ne peut obtenir l'état du fichier auxiliaire d'infos « %s »: %s\n"
-#: protoize.c:2187
+#: protoize.c:2096
#, c-format
msgid "%s: can't open aux info file `%s' for reading: %s\n"
msgstr "%s: ne peut ouvrir le fichier auxiliaire d'infos « %s » en lecture: %s\n"
-#: protoize.c:2205
+#: protoize.c:2114
#, c-format
msgid "%s: error reading aux info file `%s': %s\n"
msgstr "%s: erreur lors de la lecture du fichier auxilaire d'infos « %s »: %s\n"
-#: protoize.c:2218
+#: protoize.c:2127
#, c-format
msgid "%s: error closing aux info file `%s': %s\n"
msgstr "%s: erreur lors de la fermeture du fichier auxiliaire d'infos « %s »: %s\n"
-#: protoize.c:2234
+#: protoize.c:2143
#, c-format
msgid "%s: can't delete aux info file `%s': %s\n"
msgstr "%s: ne peut détruire le fichier auxiliaire d'infos « %s »: %s\n"
-#: protoize.c:2316 protoize.c:4318
+#: protoize.c:2225 protoize.c:4195
#, c-format
msgid "%s: can't delete file `%s': %s\n"
msgstr "%s: ne peut détruire le fichier « %s »: %s\n"
-#: protoize.c:2395
+#: protoize.c:2303
#, c-format
msgid "%s: warning: can't rename file `%s' to `%s': %s\n"
msgstr "%s: AVERTISSEMENT: ne peut renommer le fichier « %s » à « %s »: %s\n"
-#: protoize.c:2520
+#: protoize.c:2425
#, c-format
msgid "%s: conflicting extern definitions of '%s'\n"
msgstr "%s: définitions externes conflictuelles de « %s »\n"
-#: protoize.c:2524
+#: protoize.c:2429
#, c-format
msgid "%s: declarations of '%s' will not be converted\n"
msgstr "%s: déclarations de « %s » ne seront pas converties\n"
-#: protoize.c:2526
+#: protoize.c:2431
#, c-format
msgid "%s: conflict list for '%s' follows:\n"
msgstr "%s: liste conflictuelle pour « %s » suit:\n"
-#: protoize.c:2559
+#: protoize.c:2464
#, c-format
msgid "%s: warning: using formals list from %s(%d) for function `%s'\n"
msgstr "%s: AVERTISSEMENT: using la liste des formels de %s(%d) pour la fonction « %s »\n"
-#: protoize.c:2599
+#: protoize.c:2504
#, c-format
msgid "%s: %d: `%s' used but missing from SYSCALLS\n"
msgstr "%s: %d: « %s » utilisé mais manquant dans les SYSCALLS\n"
-#: protoize.c:2605
+#: protoize.c:2510
#, c-format
msgid "%s: %d: warning: no extern definition for `%s'\n"
msgstr "%s: %d: AVERTISSEMENT: pas de définition externe pour « %s »\n"
-#: protoize.c:2636
+#: protoize.c:2540
#, c-format
msgid "%s: warning: no static definition for `%s' in file `%s'\n"
msgstr "%s: AVERTISSEMENT: pas de définition statique pour « %s » dans le fichier« %s »\n"
-#: protoize.c:2642
+#: protoize.c:2546
#, c-format
msgid "%s: multiple static defs of `%s' in file `%s'\n"
msgstr "%s: multiples définitions statiques de « %s » dans le fichier « %s »\n"
-#: protoize.c:2815 protoize.c:2818
+#: protoize.c:2716 protoize.c:2719
#, c-format
msgid "%s: %d: warning: source too confusing\n"
msgstr "%s: %d: AVERTISSEMENT: trop de confusions dans le source\n"
-#: protoize.c:3024
+#: protoize.c:2915
#, c-format
msgid "%s: %d: warning: varargs function declaration not converted\n"
msgstr "%s: %d: AVERTISSEMENT: déclaration de varargs de fonction non convertis\n"
-#: protoize.c:3039
+#: protoize.c:2930
#, c-format
msgid "%s: declaration of function `%s' not converted\n"
msgstr "%s: déclaration de la fonction « %s » non convertie\n"
-#: protoize.c:3162
+#: protoize.c:3053
#, c-format
msgid "%s: warning: too many parameter lists in declaration of `%s'\n"
msgstr "%s: AVERTISSEMENT: trop de paramètres de listes dans la déclaration de « %s »\n"
-#: protoize.c:3183
+#: protoize.c:3074
#, c-format
msgid ""
"\n"
@@ -6687,17 +6399,17 @@ msgstr ""
"\n"
"%s: AVERTISSEMENT: trop peu de paramètres de listes dans la déclaration de « %s »\n"
-#: protoize.c:3281
+#: protoize.c:3170
#, c-format
msgid "%s: %d: warning: found `%s' but expected `%s'\n"
msgstr "%s: %d: AVERTISSEMENT: a obtenu « %s » mais attendait « %s »\n"
-#: protoize.c:3459
+#: protoize.c:3345
#, c-format
msgid "%s: local declaration for function `%s' not inserted\n"
msgstr "%s: déclaration locale pour la fonction « %s » n'a pas été insérée\n"
-#: protoize.c:3486
+#: protoize.c:3372
#, c-format
msgid ""
"\n"
@@ -6706,64 +6418,64 @@ msgstr ""
"\n"
"%s: %d: AVERTISSEMENT: ne peut ajouter une déclaration de « %s » dans l'appel macro\n"
-#: protoize.c:3560
+#: protoize.c:3444
#, c-format
msgid "%s: global declarations for file `%s' not inserted\n"
msgstr "%s: déclarations globale du fichier « %s » n'ont pas été insérées\n"
-#: protoize.c:3651 protoize.c:3681
+#: protoize.c:3533 protoize.c:3563
#, c-format
msgid "%s: definition of function `%s' not converted\n"
msgstr "%s: définition de la fonction « %s » n'a pas été convertie\n"
-#: protoize.c:3670
+#: protoize.c:3552
#, c-format
msgid "%s: %d: warning: definition of %s not converted\n"
msgstr "%s: %d: AVERTISSEMENT: définition de %s n'a pas été convertie\n"
-#: protoize.c:4000
+#: protoize.c:3878
#, c-format
msgid "%s: found definition of `%s' at %s(%d)\n"
msgstr "%s: définition de « %s » trouvé à %s(%d)\n"
#. If we make it here, then we did not know about this
#. function definition.
-#: protoize.c:4016
+#: protoize.c:3894
#, c-format
msgid "%s: %d: warning: `%s' excluded by preprocessing\n"
msgstr "%s: %d: AVERTISSEMENT: « %s » exclu par le préprocesseur\n"
-#: protoize.c:4019
+#: protoize.c:3897
#, c-format
msgid "%s: function definition not converted\n"
msgstr "%s: définition de fonction n'a pas été convertie\n"
-#: protoize.c:4078
+#: protoize.c:3955
#, c-format
msgid "%s: `%s' not converted\n"
msgstr "%s: « %s » n'a pas été converti\n"
-#: protoize.c:4086
+#: protoize.c:3963
#, c-format
msgid "%s: would convert file `%s'\n"
msgstr "%s: devrait convertir le fichier « %s »\n"
-#: protoize.c:4089
+#: protoize.c:3966
#, c-format
msgid "%s: converting file `%s'\n"
msgstr "%s: conversion du fichier « %s »\n"
-#: protoize.c:4099
+#: protoize.c:3976
#, c-format
msgid "%s: can't get status for file `%s': %s\n"
msgstr "%s: ne peut obtenur l'état du fichier « %s »: %s\n"
-#: protoize.c:4141
+#: protoize.c:4018
#, c-format
msgid "%s: can't open file `%s' for reading: %s\n"
msgstr "%s: ne peut ouvrir le fichier « %s » en lecture: %s\n"
-#: protoize.c:4156
+#: protoize.c:4033
#, c-format
msgid ""
"\n"
@@ -6772,401 +6484,430 @@ msgstr ""
"\n"
"%s: erreur de lecture du fichier d'entrée « %s »: %s\n"
-#: protoize.c:4190
+#: protoize.c:4067
#, c-format
msgid "%s: can't create/open clean file `%s': %s\n"
msgstr "%s: ne peut créer/ouvrir un fichier propre « %s »: %s\n"
-#: protoize.c:4295
+#: protoize.c:4172
#, c-format
msgid "%s: warning: file `%s' already saved in `%s'\n"
msgstr "%s: AVERTISSEMENT: fichier « %s » est déjà sauvegardé dans « %s »\n"
-#: protoize.c:4303
+#: protoize.c:4180
#, c-format
msgid "%s: can't link file `%s' to `%s': %s\n"
msgstr "%s: ne peut lier le fichier « %s » à « %s »: %s\n"
-#: protoize.c:4333
+#: protoize.c:4210
#, c-format
msgid "%s: can't create/open output file `%s': %s\n"
msgstr "%s: ne peut créer/ouvrier le fichier de sortie « %s »: %s\n"
-#: protoize.c:4366
+#: protoize.c:4243
#, c-format
msgid "%s: can't change mode of file `%s': %s\n"
msgstr "%s: ne peut changer le mode du fichier « %s »: %s\n"
-#: protoize.c:4541
+#: protoize.c:4416
#, c-format
msgid "%s: cannot get working directory: %s\n"
msgstr "%s: ne peut repérer le répertoire de travail: %s\n"
-#: protoize.c:4639
+#: protoize.c:4514
#, c-format
msgid "%s: input file names must have .c suffixes: %s\n"
msgstr "%s: noms de fichiers d'entrée doivent avoir le suffixe .c: %s\n"
#: ra.c:750
msgid "Didn't find a coloring.\n"
-msgstr ""
+msgstr "N'a pas repéré une coloration.\n"
-#: reg-stack.c:673
+#: reg-stack.c:665
#, c-format
msgid "output constraint %d must specify a single register"
msgstr "Contrainte de sortie %d doit spécifier un simple registre"
-#: reg-stack.c:683
+#: reg-stack.c:675
#, c-format
msgid "output constraint %d cannot be specified together with \"%s\" clobber"
msgstr "contrainte de sortie %d ne doit pas être spécifié avec « %s » clobber"
-#: reg-stack.c:706
+#: reg-stack.c:698
msgid "output regs must be grouped at top of stack"
msgstr "registres de sortie doivent être regroupés au haut de la pile"
-#: reg-stack.c:743
+#: reg-stack.c:735
msgid "implicitly popped regs must be grouped at top of stack"
msgstr "les registres implicitement dépilés doivent être groupés au haut de la pile"
-#: reg-stack.c:762
+#: reg-stack.c:754
#, c-format
msgid "output operand %d must use `&' constraint"
-msgstr "opérande de sortie %d doit utiliser la contrainte «&»"
+msgstr "opérande de sortie %d doit utiliser la contrainte « & »"
-#: regclass.c:756
+#: regclass.c:743
#, c-format
msgid "can't use '%s' as a %s register"
msgstr "ne peut utiliser « %s » comme le registre %s"
-#: regclass.c:771 config/ia64/ia64.c:4304 config/ia64/ia64.c:4311
+#: regclass.c:758 config/ia64/ia64.c:4640 config/ia64/ia64.c:4647
#, c-format
msgid "unknown register name: %s"
msgstr "nom de registre inconnu: %s"
-#: regclass.c:782
+#: regclass.c:768
msgid "global register variable follows a function definition"
msgstr "variable registre globale suit la définition d'une fonction"
-#: regclass.c:786
+#: regclass.c:772
msgid "register used for two global register variables"
msgstr "registre utilisé pour deux variables registres globales"
-#: regclass.c:791
+#: regclass.c:777
msgid "call-clobbered register used for global register variable"
msgstr "registre maltraité par un appel utilisé par un variable registre globale"
-#: regrename.c:1899
+#: regrename.c:1846
#, c-format
msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)"
msgstr "validate_value_data: [%u] next_regno erroné pour une chaîne vide (%u)"
-#: regrename.c:1911
+#: regrename.c:1858
#, c-format
msgid "validate_value_data: Loop in regno chain (%u)"
msgstr "validate_value_data: boucle dans la chaîne regno (%u)"
-#: regrename.c:1914
+#: regrename.c:1861
#, c-format
msgid "validate_value_data: [%u] Bad oldest_regno (%u)"
msgstr "validate_value_data: [%u] oldest_regno erroné (%u)"
-#: regrename.c:1926
+#: regrename.c:1873
#, c-format
msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
msgstr "validate_value_data: [%u] registre non vide dans la chaîne (%s %u %i)"
-#: reload.c:1229
+#: reload.c:1254
msgid "cannot reload integer constant operand in `asm'"
msgstr "ne peut recharger l'opérande de constante entière dans « asm »"
-#: reload.c:1251
+#: reload.c:1276
msgid "impossible register constraint in `asm'"
msgstr "impossible de contraindre les registres en « asm »"
-#: reload.c:3461
+#: reload.c:3489
msgid "`&' constraint used with no register class"
-msgstr "contrainte «&» utilisé sans classe registre"
+msgstr "contrainte « & » utilisé sans classe registre"
-#: reload.c:3629
+#: reload.c:3657
msgid "unable to generate reloads for:"
msgstr "incapable de générer des recharges pour:"
-#: reload.c:3630 reload.c:3844
+#: reload.c:3658 reload.c:3872
msgid "inconsistent operand constraints in an `asm'"
msgstr "contrainte d'opérande inconsistente en « asm »"
-#: reload1.c:1250
+#: reload1.c:1212
msgid "frame size too large for reliable stack checking"
msgstr "taille de trame trop grande pour une vérification fiable de la pile"
-#: reload1.c:1253
+#: reload1.c:1215
msgid "try reducing the number of local variables"
msgstr "essayer de réduire le nombre de variables locales"
-#: reload1.c:1909
+#: reload1.c:1868
#, c-format
msgid "can't find a register in class `%s' while reloading `asm'"
msgstr "ne peut repérer un registre dans la classe « %s » durant le rechargement «asm »"
-#: reload1.c:1913
+#: reload1.c:1872
#, c-format
msgid "unable to find a register to spill in class `%s'"
msgstr "incapable de trouver un registre de déversement dans la classe « %s »"
-#: reload1.c:1915
+#: reload1.c:1874
msgid "this is the insn:"
msgstr "ceci est le insn:"
-#: reload1.c:3938
+#: reload1.c:3871
msgid "`asm' operand requires impossible reload"
msgstr "opérande « asm » requiert une recharge impossible"
#. It's the compiler's fault.
-#: reload1.c:5052
+#: reload1.c:4963
msgid "could not find a spill register"
msgstr "ne peut repérer un registre de déversement"
-#: reload1.c:5057
+#: reload1.c:4968
msgid "`asm' operand constraint incompatible with operand size"
msgstr "contrainte de l'opérande « asm » incompatible avec la taille de l'opérande"
#. It's the compiler's fault.
-#: reload1.c:6679
+#: reload1.c:6590
msgid "VOIDmode on an output"
msgstr "mode VOID sur une sortie"
-#: reload1.c:6680
+#: reload1.c:6591
msgid "output operand is constant in `asm'"
msgstr "opérande de sortie est une constante dans « asm »"
-#: rtl-error.c:140
+#: rtl-error.c:124
msgid "unrecognizable insn:"
msgstr "insn non reconnaissable:"
-#: rtl-error.c:142
+#: rtl-error.c:126
msgid "insn does not satisfy its constraints:"
msgstr "insn ne satisfait pas à ses contraintes:"
-#: rtl.c:535
+#: rtl.c:477
#, c-format
msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d"
msgstr "vérification RTL: accès de elt %d de « %s » avec le dernier elt %d dans %s, à %s:%d"
-#: rtl.c:550
+#: rtl.c:487
#, c-format
msgid "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr "vérification RTL: attendu elt %d de type « %c », a « %c » (rtx %s) dans %s, à %s:%d"
-#: rtl.c:566
+#: rtl.c:497
#, c-format
msgid "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr "vérification RTL: attendu elt %d de type « %c » ou « %c », a « %c » (rtx %s) dans %s, à %s:%d"
-#: rtl.c:579
+#: rtl.c:506
#, c-format
msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d"
msgstr "vérification RTL: code attendu « %s », a « %s » dans %s, à %s:%d"
-#: rtl.c:593
+#: rtl.c:516
#, c-format
msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d"
msgstr "vérification RTL: code attendu « %s » ou « %s », a « %s » dans %s, à %s:%d"
-#: rtl.c:608
+#: rtl.c:527
#, c-format
msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
msgstr "vérification RTL: accès de elt %d du vecteur avec le dernier elt %d dans %s, à %s:%d"
-#: rtl.c:623
-#, fuzzy, c-format
+#: rtl.c:538
+#, c-format
msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d"
-msgstr "vérification RTL: code attendu « %s », a « %s » dans %s, à %s:%d"
+msgstr "vérification du fanion RTL: %s utilisé avec un code rtx inattendu, « %s » dans %s, à %s:%d"
-#: stmt.c:766
+#: stmt.c:750
#, c-format
msgid "jump to `%s' invalidly jumps into binding contour"
-msgstr "saut vers « %s » saute de manière invalide dans un contour de binding"
+msgstr "saut vers « %s » saute de manière invalide dans un contour de liaison"
-#: stmt.c:1002 stmt.c:3766
-#, c-format
-msgid "label `%s' used before containing binding contour"
-msgstr "étiquette « %s » utilisé avant de contenir le contour de binding"
+#: stmt.c:977 stmt.c:3793
+msgid "%Jlabel '%D' used before containing binding contour"
+msgstr "%Jétiquette « %D » utilisé avant de contenir le contour de liaison"
-#: stmt.c:1190
+#: stmt.c:1156
msgid "output operand constraint lacks `='"
-msgstr "contrainte de sortie de l'opérande manque «=»"
+msgstr "contrainte de sortie de l'opérande manque « = »"
-#: stmt.c:1205
+#: stmt.c:1171
#, c-format
msgid "output constraint `%c' for operand %d is not at the beginning"
msgstr "contrainte de sortie « %c » pour l'opérande %d n'est pas au début"
-#: stmt.c:1227
+#: stmt.c:1193
msgid "operand constraint contains incorrectly positioned '+' or '='"
-msgstr "contrainte de l'opérande contient «+» ou «-» incorrectement positionné"
+msgstr "contrainte de l'opérande contient « + » ou « - » incorrectement positionné"
-#: stmt.c:1233 stmt.c:1337
+#: stmt.c:1199 stmt.c:1301
#, c-format
msgid "`%%' constraint used with last operand"
-msgstr "contrainte «%%» utilisée avec la dernière opérande"
+msgstr "contrainte « %% » utilisée avec la dernière opérande"
-#: stmt.c:1252
+#: stmt.c:1218
msgid "matching constraint not valid in output operand"
msgstr "contrainte concordante n'est pas valide dans une opérande de sortie"
-#: stmt.c:1328
+#: stmt.c:1260
+msgid "read-write constraint does not allow a register"
+msgstr "contrainte de lecture-éccriture ne permet pas de registre"
+
+#: stmt.c:1292
#, c-format
msgid "input operand constraint contains `%c'"
msgstr "contrainte d'entrée de l'opérande contient « %c »"
-#: stmt.c:1368
+#: stmt.c:1334
msgid "matching constraint references invalid operand number"
msgstr "nombre d'opérandes invalides pour références de containte concordantes"
-#: stmt.c:1400
+#: stmt.c:1372
#, c-format
msgid "invalid punctuation `%c' in constraint"
msgstr "ponctuation invalide « %c » dans la contrainte"
-#: stmt.c:1450
-#, fuzzy, c-format
+#: stmt.c:1396
+msgid "matching constraint does not allow a register"
+msgstr "contrainte de concordance ne permet pas de reigstre"
+
+#: stmt.c:1424
+#, c-format
msgid "asm-specifier for variable `%s' conflicts with asm clobber list"
-msgstr "le qualificateur du type de « %s » est en conflit avec une déclaration précédente"
+msgstr "asm-specifier pour la variable « %s » est en conflit avec la liste asm clobber"
-#: stmt.c:1540
+#: stmt.c:1514
#, c-format
msgid "unknown register name `%s' in `asm'"
msgstr "nom de registre inconnu « %s » dans «asm »"
-#: stmt.c:1588
+#: stmt.c:1522
+#, c-format
+msgid "PIC register `%s' clobbered in `asm'"
+msgstr "registre PIC « %s » est maltraité dans «asm »"
+
+#: stmt.c:1571
#, c-format
msgid "more than %d operands in `asm'"
msgstr "plus que %d opérandes dans « asm »"
-#: stmt.c:1650
+#: stmt.c:1633
#, c-format
msgid "output number %d not directly addressable"
msgstr "nombre de sortie %d n,est pas directement adressable"
-#: stmt.c:1728
+#: stmt.c:1711
#, c-format
msgid "asm operand %d probably doesn't match constraints"
msgstr "opérande asm %d ne concorde pas probablement avec les contraintes"
-#: stmt.c:1738
+#: stmt.c:1721
#, c-format
msgid "use of memory input without lvalue in asm operand %d is deprecated"
-msgstr ""
+msgstr "utilisation de l'entré mémoire sans lvalue dans l'opérande asm %d est dépréciée"
-#: stmt.c:1889
-#, fuzzy
+#: stmt.c:1875
msgid "asm clobber conflict with output operand"
-msgstr "déclaration asm en conflit avec le changement de nom précédent"
+msgstr "asm clobber est en conflit sans opérande de sortie"
-#: stmt.c:1894
-#, fuzzy
+#: stmt.c:1880
msgid "asm clobber conflict with input operand"
-msgstr "déclaration asm en conflit avec le changement de nom précédent"
+msgstr "asm globber est en conflit avec l'opérande d'entrée"
-#: stmt.c:1929
+#: stmt.c:1914
msgid "too many alternatives in `asm'"
msgstr "trop d'alternatives dans « asm »"
-#: stmt.c:1941
+#: stmt.c:1926
msgid "operand constraints for `asm' differ in number of alternatives"
msgstr "contraintes de l'opérande pour « asm » diffèrent en nombre d'alternatives"
-#: stmt.c:1994
+#: stmt.c:1978
#, c-format
msgid "duplicate asm operand name '%s'"
msgstr "nom d'opérande asm « %s » apparaît en double"
-#: stmt.c:2081
+#: stmt.c:2076
msgid "missing close brace for named operand"
msgstr "accolade de fermeture manquante pour l'opérandé nommée"
-#: stmt.c:2109
+#: stmt.c:2104
#, c-format
msgid "undefined named operand '%s'"
msgstr "opérande nommée « %s » indéfinie"
-#: stmt.c:3703
-#, c-format
-msgid "unused variable `%s'"
-msgstr "variable inutilisée « %s »"
+#: stmt.c:2161
+msgid "%Hstatement with no effect"
+msgstr "%Hdéclaration sasn effet"
-#: stmt.c:5189
+#: stmt.c:2317
+msgid "%Hvalue computed is not used"
+msgstr "%Hvaleur calculée n'est pas utilisée"
+
+#: stmt.c:3733
+msgid "%Junused variable '%D'"
+msgstr "%Jvariable « %D » inutilisée"
+
+#: stmt.c:4508
+msgid "%Hunreachable code at beginning of %s"
+msgstr "%Hcode inatteignable au début de %s"
+
+#: stmt.c:5136
#, c-format
msgid "enumeration value `%s' not handled in switch"
msgstr "valeur d'énumération « %s » n'est pas traitée dans le switch"
-#: stmt.c:5214 stmt.c:5234
+#: stmt.c:5161 stmt.c:5181
#, c-format
msgid "case value `%ld' not in enumerated type"
-msgstr "valeur du case «%ld» n'est pas dans le type énuméré"
+msgstr "valeur du case « %ld » n'est pas dans le type énuméré"
-#: stmt.c:5217 stmt.c:5237
+#: stmt.c:5164 stmt.c:5184
#, c-format
msgid "case value `%ld' not in enumerated type `%s'"
-msgstr "valeur du case «%ld» n'est pas dans le type énuméré « %s »"
+msgstr "valeur du case « %ld » n'est pas dans le type énuméré « %s »"
-#: stmt.c:5310
-#, fuzzy
+#: stmt.c:5401
msgid "switch missing default case"
-msgstr "ceci est la première étiquette de défaut"
+msgstr "switch n'a pas de case par défaut"
-#: stor-layout.c:178
+#: stor-layout.c:183
msgid "type size can't be explicitly evaluated"
msgstr "taille du type ne peut être explicitement évaluée"
-#: stor-layout.c:180
+#: stor-layout.c:185
msgid "variable-size type declared outside of any function"
msgstr "type de taille variable déclaré à l'extérieur den'importe quelle fonction"
-#: stor-layout.c:487
-#, c-format
-msgid "size of `%s' is %d bytes"
-msgstr "taille de « %s » est de %d octets"
+#: stor-layout.c:515
+msgid "%Jsize of '%D' is %d bytes"
+msgstr "%Jtaille de « %D » est de %d octets"
-#: stor-layout.c:489
-#, c-format
-msgid "size of `%s' is larger than %d bytes"
-msgstr "taille de « %s » est plus grande que %d octets"
+#: stor-layout.c:517
+msgid "%Jsize of '%D' is larger than %d bytes"
+msgstr "%Jtaille de « %D » est plus grande que %d octets"
+
+#: stor-layout.c:883
+msgid "%Jpacked attribute causes inefficient alignment for '%D'"
+msgstr "%Jattribut empaqueté provoque un alignement inefficient pour « %D »"
+
+#: stor-layout.c:886
+msgid "%Jpacked attribute is unnecessary for '%D'"
+msgstr "%Jattribut empaqueté n'est pas nécessaire pour « %D »"
+
+#: stor-layout.c:902
+msgid "%Jpadding struct to align '%D'"
+msgstr "%Jremplissage du struct pour aligner « %D »"
+
+#: stor-layout.c:1245
+msgid "padding struct size to alignment boundary"
+msgstr "remplissage la taille du struct pour aligner les frontières"
-#: stor-layout.c:909 stor-layout.c:1325
+#: stor-layout.c:1275
#, c-format
msgid "packed attribute causes inefficient alignment for `%s'"
msgstr "attribut empaqueté provoque un alignement inefficient pour « %s »"
-#: stor-layout.c:911 stor-layout.c:1327
+#: stor-layout.c:1277
#, c-format
msgid "packed attribute is unnecessary for `%s'"
msgstr "attribut empaqueté n'est pas nécessaire pour « %s »"
-#: stor-layout.c:926
-#, c-format
-msgid "padding struct to align `%s'"
-msgstr "remplissage du struct pour aligner « %s »"
-
-#: stor-layout.c:1289
-msgid "padding struct size to alignment boundary"
-msgstr "remplissage la taille du struct pour aligner les frontières"
-
-#: stor-layout.c:1332
+#: stor-layout.c:1282
msgid "packed attribute causes inefficient alignment"
msgstr "attribut empaqueté provoque un alignement inefficient"
-#: stor-layout.c:1334
+#: stor-layout.c:1284
msgid "packed attribute is unnecessary"
msgstr "attribut empaqueté n'est pas nécessaire"
-#: timevar.c:322
+#: targhooks.c:154
+msgid "__builtin_saveregs not supported by this target"
+msgstr "« __builtin_saveregs » n'est pas supporté par cette cible"
+
+#: timevar.c:314
#, c-format
msgid "cannot timevar_pop '%s' when top of timevars stack is '%s'"
-msgstr ""
+msgstr "ne peut faire timevar_pop « %s » lorsque le haut de la pile timevars est « %s »"
-#: timevar.c:453
+#: timevar.c:440
msgid ""
"\n"
"Execution times (seconds)\n"
@@ -7175,977 +6916,109 @@ msgstr ""
"Temps d'exécution (secondes)\n"
#. Print total time.
-#: timevar.c:503
+#: timevar.c:490
msgid " TOTAL :"
msgstr " TOTAL :"
-#: timevar.c:539
+#: timevar.c:513
#, c-format
msgid "time in %s: %ld.%06ld (%ld%%)\n"
msgstr "temps passé dans %s: %ld.%06ld (%ld%%)\n"
-#: tlink.c:399
+#: tlink.c:377
#, c-format
msgid "collect: reading %s\n"
msgstr "collect: lecture de %s\n"
-#: tlink.c:502
+#: tlink.c:478
#, c-format
msgid "collect: recompiling %s\n"
msgstr "collect: recompilation de %s\n"
-#: tlink.c:674
+#: tlink.c:654
#, c-format
msgid "collect: tweaking %s in %s\n"
msgstr "collect: tordage de %s dans %s\n"
-#: tlink.c:721
+#: tlink.c:700
+#, c-format
msgid "collect: relinking\n"
msgstr "collect: ré-édition des liens\n"
-#: tlink.c:730
+#: tlink.c:709
#, c-format
msgid "ld returned %d exit status"
msgstr "ld a retourné %d code d'état d'exécution"
-#: toplev.c:920
-msgid "Generate debugging info in default format"
-msgstr "Générer les information de mise au point dans le format par défaut"
-
-#: toplev.c:921
-msgid "Generate debugging info in default extended format"
-msgstr "Générer les information de mise au point dans le format étendu"
-
-#: toplev.c:923
-msgid "Generate STABS format debug info"
-msgstr "Générer des infos de mise au point de format STABS"
-
-#: toplev.c:924
-msgid "Generate extended STABS format debug info"
-msgstr "Générer des infos de mise au point de format STABS étendu"
-
-#: toplev.c:927
-msgid "Generate DWARF-1 format debug info"
-msgstr "Générer les informations de mise au point du format DWARF-1"
-
-#: toplev.c:929
-msgid "Generate extended DWARF-1 format debug info"
-msgstr "Générer les extensions des informations de mise au point du format DWARF-1"
-
-#: toplev.c:932
-msgid "Generate DWARF-2 debug info"
-msgstr "Générer les informations de mise au point DWARF-2"
-
-#: toplev.c:935
-msgid "Generate XCOFF format debug info"
-msgstr "Générer les informations de mise au point du format XCOFF"
-
-#: toplev.c:936
-msgid "Generate extended XCOFF format debug info"
-msgstr "Générer les extensions de mise au point du format XCOFF"
-
-#: toplev.c:939
-msgid "Generate COFF format debug info"
-msgstr "Générer les informations de mise au point du format COFF"
-
-#: toplev.c:942
-msgid "Generate VMS format debug info"
-msgstr "Générer des infos de mise au point de format VMS"
-
-#: toplev.c:981
-msgid "Perform DWARF2 duplicate elimination"
-msgstr "Exécuter une élimination DAWRF2 des doublons"
-
-#: toplev.c:983
-msgid "Do not store floats in registers"
-msgstr "Ne pas stocker les flottants dans les registres"
-
-#: toplev.c:985
-msgid "Consider all mem refs through pointers as volatile"
-msgstr "Considérer toutes les référence en mémoire comme faite par des pointeurs volatiles"
-
-#: toplev.c:987
-msgid "Consider all mem refs to global data to be volatile"
-msgstr "Considérer toutes les références mémoire à des données globales comme volatiles"
-
-#: toplev.c:989
-msgid "Consider all mem refs to static data to be volatile"
-msgstr "Considérer toutes les références mémoire à des données statiques comme volatiles"
-
-#: toplev.c:991
-msgid "Defer popping functions args from stack until later"
-msgstr "Déférer le dépilage des arguments de fonction de la pile plus tard"
-
-#: toplev.c:993
-msgid "When possible do not generate stack frames"
-msgstr "Lorsque c'est possible ne pas générer des trames de pile"
-
-#: toplev.c:995
-msgid "Optimize sibling and tail recursive calls"
-msgstr "Optimiser sur mesure les appels enfants et récursif"
-
-#: toplev.c:997
-msgid "Perform superblock formation via tail duplication"
-msgstr ""
-
-#: toplev.c:999
-msgid "When running CSE, follow jumps to their targets"
-msgstr "Lorsque CSE s'exécute, suivre les sauts vers leurs cibles"
-
-#: toplev.c:1001
-msgid "When running CSE, follow conditional jumps"
-msgstr "Lorsque CSE s'exécute, suivre les sauts considitionnels vers leurs cibles"
-
-#: toplev.c:1003
-msgid "Perform a number of minor, expensive optimizations"
-msgstr "Effectuer un nombre mineur d'optimisations coûteuses"
-
-#: toplev.c:1005
-msgid "Perform jump threading optimizations"
-msgstr "Exécuter des optimisations de sauts de thread"
-
-#: toplev.c:1007
-msgid "Perform strength reduction optimizations"
-msgstr "Exécuter un réduction en force des optimisations"
-
-#: toplev.c:1009
-msgid "Perform loop unrolling when iteration count is known"
-msgstr "Exécuter un dé-roulement des boucles lorsque le compteur d'itération est connu"
-
-#: toplev.c:1011
-msgid "Perform loop unrolling for all loops"
-msgstr "Exécuter la boucle par désenroulement de toutes les boucles"
-
-#: toplev.c:1013
-msgid "Generate prefetch instructions, if available, for arrays in loops"
-msgstr "Générer des instructions prérecherchées, si disponible, pour les tableaux dans les boucles"
-
-#: toplev.c:1015
-msgid "Force all loop invariant computations out of loops"
-msgstr "Forcer pour toutes les boucles des calculs invariants en dehors des boucles"
-
-#: toplev.c:1017
-msgid "Strength reduce all loop general induction variables"
-msgstr "Renforcer la réduction de toutes les boucles par induction des variables"
-
-#: toplev.c:1019
-msgid "Store strings in writable data section"
-msgstr "Stocker les chaînes dans les sections d'écriture des données"
-
-#: toplev.c:1021
-msgid "Enable machine specific peephole optimizations"
-msgstr "Autoriser les optimisations des trous spécifiques à une machine"
-
-#: toplev.c:1023
-msgid "Copy memory operands into registers before using"
-msgstr "Copier les opérandes mémoire dans les registres avant de les utiliser"
-
-#: toplev.c:1025
-msgid "Copy memory address constants into regs before using"
-msgstr "Copier les constantes d'adresses mémoire dans les registres avant de les utiliser"
-
-#: toplev.c:1027
-msgid "Allow function addresses to be held in registers"
-msgstr "Autoriser le maintien des adresses de fonction dans les registres"
-
-#: toplev.c:1029
-msgid "Integrate simple functions into their callers"
-msgstr "Intégrer les fonctions simples à l'intérieur des appelants"
-
-#: toplev.c:1031
-msgid "Generate code for funcs even if they are fully inlined"
-msgstr "Générer le code pour les fonctions même si elles sont complètement en ligne"
-
-#: toplev.c:1033
-msgid "Pay attention to the 'inline' keyword"
-msgstr "Porter attention au mot clé « inline »"
-
-#: toplev.c:1035
-msgid "Emit static const variables even if they are not used"
-msgstr "Produire des variables constantes statiques même si elles ne sont pas utilisées"
-
-#: toplev.c:1037
-msgid "Check for syntax errors, then stop"
-msgstr "Vérifier les erreurs de syntaxes et puis stopper"
-
-#: toplev.c:1039
-msgid "Mark data as shared rather than private"
-msgstr "Marquer les données comme partagées au lieu de privées"
-
-#: toplev.c:1041
-msgid "Enable saving registers around function calls"
-msgstr "Autoriser la sauvegarde autour des appels de fonction"
-
-#: toplev.c:1043
-msgid "Return 'short' aggregates in memory, not registers"
-msgstr "Retourner des aggrégats de type « short » en mémoire, pas dans les registres"
-
-#: toplev.c:1045
-msgid "Return 'short' aggregates in registers"
-msgstr "Retourner des aggrégats de type « short » dans les registres"
-
-#: toplev.c:1047
-msgid "Attempt to fill delay slots of branch instructions"
-msgstr "Tented de remplir de délais les fentes des instructions de branchement"
-
-#: toplev.c:1049
-msgid "Perform the global common subexpression elimination"
-msgstr "Exécuter l'élimination de sous-expression du commun global"
-
-#: toplev.c:1051
-msgid "Perform enhanced load motion during global subexpression elimination"
-msgstr "Exécuter un chargement efficace lors de l'élimination de sous-expression globale"
-
-#: toplev.c:1053
-msgid "Perform store motion after global subexpression elimination"
-msgstr "Exécuter un stockage efficace lors de l'élimination de sous-expression globale"
-
-#: toplev.c:1055
-#, fuzzy
-msgid "Perform the loop optimizations"
-msgstr "Effectuer une optimisation sur mesure des appels"
-
-#: toplev.c:1057
-#, fuzzy
-msgid "Perform cross-jumping optimization"
-msgstr "Exécuter des optimisations de sauts de thread"
-
-#: toplev.c:1059
-msgid "Perform conversion of conditional jumps to branchless equivalents"
-msgstr ""
-
-#: toplev.c:1061
-#, fuzzy
-msgid "Perform conversion of conditional jumps to conditional execution"
-msgstr "Changer le seuil pour la conversion en une exécution conditionnelle"
-
-#: toplev.c:1063
-msgid "Run CSE pass after loop optimizations"
-msgstr "Exécuter une passe CSE après une optimisation des boucles"
-
-#: toplev.c:1065
-msgid "Run the loop optimizer twice"
-msgstr "Exécuter l'optimiseur de boucle deux fois"
-
-#: toplev.c:1067
-msgid "Delete useless null pointer checks"
-msgstr "Détruire les vérifications de pointeurs nul inutiles"
-
-#: toplev.c:1069
-msgid "Reschedule instructions before register allocation"
-msgstr "Réordonnancer les instructions avant l'allocation de registres"
-
-#: toplev.c:1071
-msgid "Reschedule instructions after register allocation"
-msgstr "Réordonnancer les instructions après l'allocation de registres"
-
-#: toplev.c:1073
-msgid "Enable scheduling across basic blocks"
-msgstr "Autoriser l'ordonnancement à travers les blocs de base"
-
-#: toplev.c:1075
-msgid "Allow speculative motion of non-loads"
-msgstr "Autoriser le mouvement spéculatif de non chargements"
-
-#: toplev.c:1077
-msgid "Allow speculative motion of some loads"
-msgstr "Autoriser le mouvement spéculatif de quelques chargements"
-
-#: toplev.c:1079
-msgid "Allow speculative motion of more loads"
-msgstr "Autoriser le mouvement spéculatif de plusieurs chargements"
-
-#: toplev.c:1081
-msgid "Replace add,compare,branch with branch on count reg"
-msgstr "Remplacer add,compare,branch avec des branchements utilisant un compteur registre"
-
-#: toplev.c:1083
-msgid "Generate position independent code, if possible"
-msgstr "Générer du code indépendant de la position, si possible"
-
-#: toplev.c:1086
-msgid "Enable exception handling"
-msgstr "Autoriser le traitement des exceptions"
-
-#: toplev.c:1088
-msgid "Just generate unwind tables for exception handling"
-msgstr "Générer simplement des tables étendues pour le traitement des exceptions"
-
-#: toplev.c:1090
-msgid "Generate unwind tables exact at each instruction boundary"
-msgstr "Générer des tables étendues exactes pour chaque bornes d'instruction"
-
-#: toplev.c:1092
-msgid "Support synchronous non-call exceptions"
-msgstr "Supporter les exceptions synchrones des non appels"
-
-#: toplev.c:1094
-msgid "Insert arc based program profiling code"
-msgstr "Insérer le code de profilage du programme de base"
-
-#: toplev.c:1096
-msgid "Create data files needed by gcov"
-msgstr "Créer les fichiers de données nécessaires par gcov"
-
-#: toplev.c:1098
-msgid "Use profiling information for branch probabilities"
-msgstr "Utiliser les informations de profilage pour les probabilités de branchements"
-
-#: toplev.c:1100
-#, fuzzy
-msgid "Enable basic program profiling code"
-msgstr "Insérer le code de profilage du programme de base"
-
-#: toplev.c:1102
-msgid "Reorder basic blocks to improve code placement"
-msgstr "Ré-ordonner les blocs de base pour améliorer l'emplacement de code"
-
-#: toplev.c:1104
-#, fuzzy
-msgid "Reorder functions to improve code placement"
-msgstr "Ré-ordonner les blocs de base pour améliorer l'emplacement de code"
-
-#: toplev.c:1106
-msgid "Do the register renaming optimization pass"
-msgstr "Renommer les registres lors de la passe d'optimisation"
-
-#: toplev.c:1108
-msgid "Do the register copy-propagation optimization pass"
-msgstr "Effectuer la passe d'optimisation de la propagation-de-copie par registre"
-
-#: toplev.c:1110
-msgid "Do not put uninitialized globals in the common section"
-msgstr "Ne pas placer de globaux non initialisés dans la section commune"
-
-#: toplev.c:1112
-msgid "Do not generate .size directives"
-msgstr "Ne pas générer de directives .size"
-
-#: toplev.c:1114
-msgid "place each function into its own section"
-msgstr "placer chaque fonction dans sa propre section"
-
-#: toplev.c:1116
-msgid "place data items into their own section"
-msgstr "placer les items des données dans leur propre section"
-
-#: toplev.c:1118
-#, fuzzy
-msgid "Add extra commentary to assembler output"
-msgstr "Ajouter des commentaires additionnels à la sortie de l'assembleur"
-
-#: toplev.c:1120
-msgid "Output GNU ld formatted global initializers"
-msgstr "Produire des initialisations de globlales au format GNU ld"
-
-#: toplev.c:1122
-msgid "Enables a register move optimization"
-msgstr "Autoriser l'optimisation des déplacements par registre"
-
-#: toplev.c:1124
-msgid "Do the full regmove optimization pass"
-msgstr "Effectuer la passe d'optimisation complète des des déplacements par les registres"
-
-#: toplev.c:1126
-msgid "Pack structure members together without holes"
-msgstr "Empaqueter les membres des structures ensembles sans trous"
-
-#: toplev.c:1128
-msgid "Insert stack checking code into the program"
-msgstr "Insérer du code de vérificaion de la pile dans le programme"
-
-#: toplev.c:1130
-msgid "Specify that arguments may alias each other & globals"
-msgstr "Présumer que les arguments peuvent avoir des alias l'un vers l'autre et globaux"
-
-#: toplev.c:1132
-msgid "Assume arguments may alias globals but not each other"
-msgstr "Présumer que les arguments peuvent avoir des alias globaux mais pas l'un vers l'autre"
-
-#: toplev.c:1134
-msgid "Assume arguments do not alias each other or globals"
-msgstr "Présumer que les arguments n'ont pas d'alias l'un vers l'autre ou globaux"
-
-#: toplev.c:1136
-msgid "Assume strict aliasing rules apply"
-msgstr "Présumer que des règles stricts d'alias s'appliquent"
-
-#: toplev.c:1138
-msgid "Align the start of loops"
-msgstr "Aligner le début des boucles"
-
-#: toplev.c:1140
-msgid "Align labels which are only reached by jumping"
-msgstr "Aligner les étiquettes qui sont seulement atteintes par sauts"
-
-#: toplev.c:1142
-msgid "Align all labels"
-msgstr "Aligner toutes les étiquettes"
-
-#: toplev.c:1144
-msgid "Align the start of functions"
-msgstr "Aligner le début des fonctions"
-
-#: toplev.c:1146
-#, fuzzy
-msgid "Attempt to merge identical constants across compilation units"
-msgstr "Tentative de fusion de constantes identiques à travers des unités de compilation"
-
-#: toplev.c:1148
-msgid "Attempt to merge identical constants and constant variables"
-msgstr "Tentative de fusion de constantes identique et des variables constantes"
-
-#: toplev.c:1150
-msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
-msgstr "Supprimer dans la sortie les numéros d'instructions et de notes de lignes dans les vidanges de mises au point"
-
-#: toplev.c:1152
-msgid "Instrument function entry/exit with profiling calls"
-msgstr "Traiter les entrées/sorties des fonctins avec appels de profilage"
-
-#: toplev.c:1154
-#, fuzzy
-msgid "Put zero initialized data in the bss section"
-msgstr "Ne pas placer de globaux non initialisés dans la section commune"
-
-#: toplev.c:1156
-msgid "Enable SSA optimizations"
-msgstr "Autoriser les optimisations SSA"
-
-#: toplev.c:1158
-msgid "Enable SSA conditional constant propagation"
-msgstr "Autoriser la propagation SSA de constante conditionnelle"
-
-#: toplev.c:1160
-msgid "Enable aggressive SSA dead code elimination"
-msgstr "Autoriser l'élimination agressive SSA du code mort"
-
-#: toplev.c:1162
-msgid "External symbols have a leading underscore"
-msgstr "Les symboles externes sont préfixés d'un caractère de soulignement"
-
-#: toplev.c:1164
-msgid "Process #ident directives"
-msgstr "Traiter les directive #ident"
-
-#: toplev.c:1166
-msgid "Enables an rtl peephole pass run before sched2"
-msgstr "Autoriser l'exécution de la passe rtl sur les trous avant sched2"
-
-#: toplev.c:1168
-msgid "Assume no NaNs or +-Infs are generated"
-msgstr ""
-
-#: toplev.c:1170
-msgid "Enables guessing of branch probabilities"
-msgstr "Autoriser l'estimation des probabilités de branchement"
-
-#: toplev.c:1172
-msgid "Set errno after built-in math functions"
-msgstr "Initialiser errno après les fonctions internes mathématiques"
-
-#: toplev.c:1174
-msgid "Floating-point operations can trap"
-msgstr "les opérations virgule flottante peuvent être attrappées"
-
-#: toplev.c:1176
-msgid "Allow math optimizations that may violate IEEE or ANSI standards"
-msgstr "Permettre l'optimisation des maths qui peut violer les standards IEEE ou ANSI"
-
-#: toplev.c:1178
-msgid "Disable optimizations observable by IEEE signaling NaNs"
-msgstr ""
-
-#: toplev.c:1180
-#, fuzzy
-msgid "Generate code to check bounds before indexing arrays"
-msgstr "Générer du code pour vérifier les bornes avant de dé-référencer les pointeurs et les tableaux"
-
-#: toplev.c:1182
-msgid "Convert floating point constant to single precision constant"
-msgstr "Convertir les constantes flottantes en constantes en simple précision"
-
-#: toplev.c:1184
-msgid "Report time taken by each compiler pass at end of run"
-msgstr "Rapporter le temps pris par chaque passe de compilation à la fin de l'exécution"
-
-#: toplev.c:1186
-msgid "Report on permanent memory allocation at end of run"
-msgstr "Rapporter toute allocation de mémoire permanente à la fin de l'exécution"
-
-#: toplev.c:1188
-msgid "Trap for signed overflow in addition / subtraction / multiplication"
-msgstr "Attrapper les débordements de signe dans addition/soustraction/multiplication"
-
-#: toplev.c:1190
-msgid "Use graph coloring register allocation."
-msgstr "Utiliser l'allocation des registres par coloriage de graphe"
-
-#: toplev.c:1207
-msgid "Compile just for ISO C90"
-msgstr "Compiler seulement pour le C90 ISO"
-
-#: toplev.c:1209
-msgid "Determine language standard"
-msgstr "Déterminer le standard du langage"
-
-#: toplev.c:1213
-msgid "Make bit-fields by unsigned by default"
-msgstr "Rendre les champs de bits non signés par défaut"
-
-#: toplev.c:1217
-msgid "Make 'char' be signed by default"
-msgstr "Rendre les « char » signés par défaut"
-
-#: toplev.c:1219
-msgid "Make 'char' be unsigned by default"
-msgstr "Rendre les « char » non signés par défaut"
-
-#: toplev.c:1225
-msgid "Do not recognize the 'asm' keyword"
-msgstr "Ne pas reconnaître le mot clé « asm »"
+# I18N
+#: toplev.c:1226
+#, c-format
+msgid "%s "
+msgstr "%s "
+# I18N
#: toplev.c:1228
-msgid "Do not recognize any built in functions"
-msgstr "Ne pas reocnnaître aucun construit dans les fonctions"
-
-#: toplev.c:1230
-msgid "Assume normal C execution environment"
-msgstr "Présumer que l'environnement d'exécution C est normal"
-
-#: toplev.c:1233
-msgid "Assume that standard libraries & main might not exist"
-msgstr "Présumer que les bibliothèques standards et main peuvent ne pas exister"
-
-#: toplev.c:1236
-msgid "Allow different types as args of ? operator"
-msgstr "Permettre des types différents pour les arguments de l'opérateur ?"
-
-#: toplev.c:1239
-msgid "Allow the use of $ inside identifiers"
-msgstr "Permettre l'utilisation de $ à l'intérieur d'identificateurs"
-
-#: toplev.c:1244
-msgid "Use the same size for double as for float"
-msgstr "Utiliser la même taille pour un double que pour un flottant"
-
-#: toplev.c:1247
-msgid "Use the smallest fitting integer to hold enums"
-msgstr "Utiliser le plus petit entier pour contenir l'énumération (enums)"
-
-#: toplev.c:1250
-msgid "Override the underlying type for wchar_t to `unsigned short'"
-msgstr "Écraser le type sous-jacent de wchar_t vers « unsigned short »"
-
-#: toplev.c:1254
-msgid "Enable most warning messages"
-msgstr "Autoriser la plupart des messages d'avertissement"
-
-#: toplev.c:1256
-msgid "Warn about casting functions to incompatible types"
-msgstr "Avertir à propos des fonctions de transtypage avec des types incompatibles"
-
-#: toplev.c:1259
-msgid "Warn about functions which might be candidates for format attributes"
-msgstr "Avertir à propos des fonctions qui pourraient être candidates pour les attributs de format"
-
-#: toplev.c:1262
-msgid "Warn about casts which discard qualifiers"
-msgstr "Avertir à propos des transtypage qui écartent les qualificateurs"
-
-#: toplev.c:1265
-msgid "Warn about subscripts whose type is 'char'"
-msgstr "Avertir à propose des souscripts dont le type est « char »"
-
-#: toplev.c:1268 toplev.c:1271
-msgid "Warn if nested comments are detected"
-msgstr "Avertir si des commentaires imbriqués sont détectés"
-
-#: toplev.c:1274
-msgid "Warn about possibly confusing type conversions"
-msgstr "Avertir à propos des type de conversions confuses"
-
-#: toplev.c:1278
-#, fuzzy
-msgid "Do not warn about compile-time integer division by zero"
-msgstr "Ne pas intercepter les divisions par zéros sur des entiers"
-
-#: toplev.c:1280
-msgid "Warn about testing equality of floating point numbers"
-msgstr "Avertir à propos des tests d'égalité sur des nombres flottants"
-
-#: toplev.c:1283
-msgid "Warn about printf/scanf/strftime/strfmon format anomalies"
-msgstr "Avertir à propos des anomalies de format de printf/scanf/strftime/strfmon"
-
-#: toplev.c:1287
-msgid "Don't warn about too many arguments to format functions"
-msgstr "Ne pas avertir à propos d'un surplus d'arguments pour des fonctions de format"
-
-#: toplev.c:1289
-msgid "Warn about non-string-literal format strings"
-msgstr "Avertir à propos des chaînes de format qui ne sont pas des chaînes"
-
-#: toplev.c:1292
-msgid "Warn about possible security problems with format functions"
-msgstr "Avertir à propos des problèmes possibles de sécurité avec les formats de fonction"
-
-#: toplev.c:1296
-msgid "Don't warn about strftime formats yielding 2 digit years"
-msgstr "Ne pas avertir à propos des formats de strftime ne laissant que 2 chiffres pour l'année"
-
-#: toplev.c:1298
-msgid "Warn about implicit function declarations"
-msgstr "Avertir à propos des déclarations de fonctions implicites"
-
-#: toplev.c:1302
-msgid "Warn when a declaration does not specify a type"
-msgstr "Avertir lorsqu'une déclaration ne spécifie pas le type"
-
-#: toplev.c:1307
-msgid "Warn about the use of the #import directive"
-msgstr "Avertir à propos de l'utilisation de la directive #import"
-
-#: toplev.c:1311
-msgid "Do not warn about using 'long long' when -pedantic"
-msgstr "Ne pas avertir à propos de l'utilisation de « long long » avec -pedantic"
-
-#: toplev.c:1313
-msgid "Warn about suspicious declarations of main"
-msgstr "Avertir à propos des déclarations douteuses de main"
-
-#: toplev.c:1316
-msgid "Warn about possibly missing braces around initializers"
-msgstr "Avertir à propos des possibles accolades manquantes autour des initialisations"
-
-#: toplev.c:1319
-msgid "Warn about global funcs without previous declarations"
-msgstr "Avertir à propos des fonctions globales sans déclaration précédente"
-
-#: toplev.c:1322
-msgid "Warn about global funcs without prototypes"
-msgstr "Avertir à propos des fonctions globales sans prototype"
-
-#: toplev.c:1325
-msgid "Warn about use of multicharacter literals"
-msgstr "Avertir à propose de l'utilisation des chaînes de multi-caractères"
-
-#: toplev.c:1328
-msgid "Warn about externs not at file scope level"
-msgstr "Avertir à propos des externes qui n'est pas au niveau dans le champ du fichier"
-
-#: toplev.c:1331
-msgid "Warn about possible missing parentheses"
-msgstr "Avertir à propos du manque possible de parenthèses"
-
-#: toplev.c:1334
-msgid "Warn about function pointer arithmetic"
-msgstr "Avertir à propos d'arithmétique portant sur un pointeur de fonction"
-
-#: toplev.c:1337
-msgid "Warn about multiple declarations of the same object"
-msgstr "Avertir à propos des déclarations multiples portant sur le même objet"
-
-#: toplev.c:1340
-#, fuzzy
-msgid "Warn whenever a function's return-type defaults to int"
-msgstr "le défaut choisi du type retourné est « int »"
-
-#: toplev.c:1343
-msgid "Warn about possible violations of sequence point rules"
-msgstr "Avertir à propos des violations possibles des règles de séquence de points"
-
-#: toplev.c:1346
-msgid "Warn about signed/unsigned comparisons"
-msgstr "Avertir à propos des comparaisons signés/non signés"
-
-#: toplev.c:1349
-msgid "Warn about non-prototyped function decls"
-msgstr "Avertir à propos des déclarations de fonction sans prototype"
-
-#: toplev.c:1352
-#, fuzzy
-msgid "Warn about constructs whose meanings change in ISO C"
-msgstr "Avertir à propos de construits dont le sens change en C ISO"
-
-#: toplev.c:1355
-msgid "Warn when trigraphs are encountered"
-msgstr "Avertir lorsque des trigraphes sont rencontrés"
-
-#: toplev.c:1360
-msgid "Warn about unrecognized pragmas"
-msgstr "Avertir à propos des pragmas non reconnus"
-
-#: toplev.c:1363
-msgid "Mark strings as 'const char *'"
-msgstr "Marque les chaînes comme étant 'const char *'"
-
-#: toplev.c:1508
-msgid "Warn when a function is unused"
-msgstr "Avertir lorsqu'une fonction est inutilisée"
-
-#: toplev.c:1510
-msgid "Warn when a label is unused"
-msgstr "Avertir lorsqu'une étiquette est inutilisée"
-
-#: toplev.c:1512
-msgid "Warn when a function parameter is unused"
-msgstr "Avertir lorsqu'un paramètre de fonction est inutilisé"
-
-#: toplev.c:1514
-msgid "Warn when a variable is unused"
-msgstr "Avertir lorsque 'une variable est inutilisée"
-
-#: toplev.c:1516
-msgid "Warn when an expression value is unused"
-msgstr "Avertir lorsque la valeur d'une expression n'est pas utilisée"
-
-#: toplev.c:1518
-msgid "Do not suppress warnings from system headers"
-msgstr "Ne pas supprimer les avertissements pour les en-têtes système"
-
-#: toplev.c:1520
-msgid "Treat all warnings as errors"
-msgstr "Traiter tous les avertissements commes des erreurs"
-
-#: toplev.c:1522
-msgid "Warn when one local variable shadows another"
-msgstr "Avertir lorsqu'une variable locale masque une autre"
-
-#: toplev.c:1524
-#, fuzzy
-msgid "Warn about enumerated switches, with no default, missing a case"
-msgstr "Avertir à propos d'un switch énuméré où un case spécific manque"
-
-#: toplev.c:1526
-#, fuzzy
-msgid "Warn about enumerated switches missing a default case"
-msgstr "Avertir à propos d'un switch énuméré où un case spécific manque"
-
-#: toplev.c:1528
-#, fuzzy
-msgid "Warn about all enumerated switches missing a specific case"
-msgstr "Avertir à propos d'un switch énuméré où un case spécific manque"
-
-#: toplev.c:1530
-msgid "Warn about returning structures, unions or arrays"
-msgstr "Avertir à propos de structures retournés, unions ou tableaux"
-
-#: toplev.c:1532
-msgid "Warn about pointer casts which increase alignment"
-msgstr "Avertir à propos des pointeurs convertis lesquels augment l'alignement"
-
-#: toplev.c:1534
-msgid "Warn about code that will never be executed"
-msgstr "Avertir à propos du code qui ne sera jamais exécuté"
-
-#: toplev.c:1536
-msgid "Warn about uninitialized automatic variables"
-msgstr "Avertir à propos des variables automatiques non initialisées"
-
-#: toplev.c:1538
-msgid "Warn when an inlined function cannot be inlined"
-msgstr "Avertir lorsque des fonctions en ligne ne peuvent être en ligne"
+#, c-format
+msgid " %s"
+msgstr " %s"
-#: toplev.c:1540
-msgid "Warn when the packed attribute has no effect on struct layout"
-msgstr "Avertir lorsque les attributs paquetés n'ont pas d'effet sur l'organtisation d'un struct"
+#: toplev.c:1293
+#, c-format
+msgid "invalid option argument `%s'"
+msgstr "argument de l'option invalide « %s »"
-#: toplev.c:1542
-msgid "Warn when padding is required to align struct members"
-msgstr "Avertir lorsque le remplissage est requis pour aligner les membres d'un struct"
+#: toplev.c:1356
+#, c-format
+msgid "getting core file size maximum limit: %m"
+msgstr "limite maximale obtenue de la taille du fichier de vidange (core file): %m"
-#: toplev.c:1544
-msgid "Warn when an optimization pass is disabled"
-msgstr "Avertir lorsque la passe d'optimisation est désactivée"
+#: toplev.c:1359
+#, c-format
+msgid "setting core file size limit to maximum: %m"
+msgstr "initialisation de la limite maximal de la taille du fichier de vidance (core file): %m"
-#: toplev.c:1546
-msgid "Warn about uses of __attribute__((deprecated)) declarations"
-msgstr "Avertir à propos de l'utilisation des déclarations « __attribute__ ((deprecated)) »"
+#: toplev.c:1678
+msgid "%J'%F' used but never defined"
+msgstr "%J« %F » utilisé mais n'a jamais été défini"
-#: toplev.c:1548
-msgid "Warn about functions which might be candidates for attribute noreturn"
-msgstr "Avertir à propos des fonctions qui seraient candidates pour des attributs non retournés"
+#: toplev.c:1680
+msgid "%J'%F' declared `static' but never defined"
+msgstr "%J« %F » déclaré « static » mais n'a jamais été définie"
-#: toplev.c:1550
-#, fuzzy
-msgid "Warn about code which might break the strict aliasing rules"
-msgstr "Avertir à propos des fonctions qui pourraient être candidates pour les attributs de format"
+#: toplev.c:1705
+msgid "%J'%D' defined but not used"
+msgstr "%J« %F » défini mais n'a pas été utilisé"
-#: toplev.c:1627 toplev.c:4548 config/rs6000/rs6000.c:680
+#: toplev.c:1726 toplev.c:1743
#, c-format
-msgid "invalid option `%s'"
-msgstr "option invalide « %s »"
+msgid "`%s' is deprecated (declared at %s:%d)"
+msgstr "« %s » est obsolète (déclaré à %s:%d)"
-#: toplev.c:2031
+#: toplev.c:1746
#, c-format
-msgid "`%s' used but never defined"
-msgstr "« %s » utilisé mais n'a jamais été défini"
+msgid "`%s' is deprecated"
+msgstr "« %s » est obsolète"
-#: toplev.c:2034
+#: toplev.c:1749
#, c-format
-msgid "`%s' declared `static' but never defined"
-msgstr "« %s » déclaré «static » mais n'a jamais été défiie"
+msgid "type is deprecated (declared at %s:%d)"
+msgstr "type est obsolète (déclaré à %s:%d)"
-#: toplev.c:2057
-#, c-format
-msgid "`%s' defined but not used"
-msgstr "« %s » défini mais n'a pas été utilisé"
+#: toplev.c:1752
+msgid "type is deprecated"
+msgstr "type est obsolète"
-#: toplev.c:2280
+#: toplev.c:1956
#, c-format
msgid "invalid register name `%s' for register variable"
msgstr "nom de registre invalide « %s » pour un variable registre"
-#: toplev.c:3697
-msgid " -ffixed-<register> Mark <register> as being unavailable to the compiler\n"
-msgstr " -ffixed-<registre> marque le <registre> qui est rendu indisponibles pour le compilateur\n"
-
-#: toplev.c:3698
-msgid " -fcall-used-<register> Mark <register> as being corrupted by function calls\n"
-msgstr " -fcall-used-<registre> marquer le <registre> qui est corrompu par les appels de fonctions\n"
-
-#: toplev.c:3699
-msgid " -fcall-saved-<register> Mark <register> as being preserved across functions\n"
-msgstr " -fcall-saved-<registre> marquer le <registre> qui est préservé à travers les fonctions\n"
-
-#: toplev.c:3700
-msgid " -finline-limit=<number> Limits the size of inlined functions to <number>\n"
-msgstr " -finline-limit=<nombre> limiter la taille des fonction en ligne à <nombre>\n"
-
-#: toplev.c:3701
-msgid " -fmessage-length=<number> Limits diagnostics messages lengths to <number> characters per line. 0 suppresses line-wrapping\n"
-msgstr " -fmessage-length=<nombre> limiter la longueur des messages de diagnotiques à <nombre> de caractères par ligne. 0 supprime l'enroulement de ligne\n"
-
-#: toplev.c:3702
-msgid " -fdiagnostics-show-location=[once | every-line] Indicates how often source location information should be emitted, as prefix, at the beginning of diagnostics when line-wrapping\n"
-msgstr " -fdiagnostics-show-location=[once | every-line] indiquer combien de fois les information de localisation des sources doivent être produites, comme préfixe, au début d'un diagnostique lorsque les lignes doivent s'enrouler sur d'autres\n"
-
-#: toplev.c:3703
-msgid " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indicates the default thread-local storage code generation model\n"
-msgstr ""
-
-#: toplev.c:3704
-msgid " -fstack-limit-register=<register> Trap if the stack goes past <register>\n"
-msgstr ""
-
-#: toplev.c:3705
-msgid " -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>\n"
-msgstr ""
-
-#: toplev.c:3706
-msgid " -frandom-seed=<string> Make compile reproducible using <string>\n"
-msgstr ""
-
-#: toplev.c:3718
-msgid " -O[number] Set optimization level to [number]\n"
-msgstr " -O[NIVEAU] utiliser le NIVEAU d'optimisation\n"
-
-#: toplev.c:3719
-msgid " -Os Optimize for space rather than speed\n"
-msgstr " -Os optimiser l'utilisation de l'espace plutôt que la vitesse\n"
-
-#: toplev.c:3731
-msgid " -pedantic Issue warnings needed by strict compliance to ISO C\n"
-msgstr " -pedantic émettre les avertissements nécessaires pour être conforme de façon stricte au C ISO\n"
-
-#: toplev.c:3732
-msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
-msgstr " -pedantic-errors identique à -pedantic sauf que les erreurs sont produites\n"
-
-#: toplev.c:3733
-msgid " -w Suppress warnings\n"
-msgstr " -w supprimer les avertissements\n"
-
-#: toplev.c:3734
-msgid " -W Enable extra warnings\n"
-msgstr " -W autoriser les avertissements additionnels\n"
-
-#: toplev.c:3745
-msgid " -Wunused Enable unused warnings\n"
-msgstr " -Wunused autoriser les avertissements pour signaler les non utilisés\n"
-
-#: toplev.c:3746
-msgid " -Wlarger-than-<number> Warn if an object is larger than <number> bytes\n"
-msgstr " -Wlarger-than-<nombre> avertir si un objet est plus grand que <nombre> d'octets\n"
-
-#: toplev.c:3747
-msgid " -p Enable function profiling\n"
-msgstr " -p autoriser le profilage des fonctions\n"
-
-#: toplev.c:3748
-msgid " -o <file> Place output into <file> \n"
-msgstr " -o <fichier> produire la sortie dans le <fichier> \n"
-
-#: toplev.c:3749
-msgid ""
-" -G <number> Put global and static data smaller than <number>\n"
-" bytes into a special section (on some targets)\n"
-msgstr ""
-" -G <numbre> placer les données globales et statiques plus\n"
-" petites que <nombre> d'octets dans une section\n"
-" spéciale (sur certaine cible)\n"
-
-#: toplev.c:3760
-msgid " -aux-info <file> Emit declaration info into <file>\n"
-msgstr " -aux-info <fichier> produire une info de déclaration dans le <fichier>\n"
-
-#: toplev.c:3761
-msgid " -quiet Do not display functions compiled or elapsed time\n"
-msgstr " -quiet ne pas afficher les fonctions compilées ou le temps écoulé\n"
-
-#: toplev.c:3762
-msgid " -version Display the compiler's version\n"
-msgstr " -version afficher la version du compilateur\n"
+#: toplev.c:3522
+msgid "branch target register load optimization is not intended to be run twice"
+msgstr "optimisation du chargement du registre cible de branchement est pas prévu pour être exécuté deux fois"
-#: toplev.c:3763
-msgid " -d[letters] Enable dumps from specific passes of the compiler\n"
-msgstr " -d[lettres] autoriser les vidanges pour des passes spécifiques du compilateur\n"
-
-#: toplev.c:3764
-msgid " -dumpbase <file> Base name to be used for dumps from specific passes\n"
-msgstr " -dumpbase <fichier> nom de base à utiliser pour les vidanges de passes spécifiques\n"
-
-#: toplev.c:3766
-msgid " -fsched-verbose=<number> Set the verbosity level of the scheduler\n"
-msgstr " -fsched-verbose=<numéro> initialiser le niveau de verbosité de l'ordonnanceur\n"
-
-#: toplev.c:3768
-msgid " --help Display this information\n"
-msgstr " --help afficher l'aide-mémoire\n"
-
-#: toplev.c:3783
-msgid ""
-"\n"
-"Language specific options:\n"
-msgstr ""
-"\n"
-"Options spécifiques au langage:\n"
-
-#: toplev.c:3795
+#: toplev.c:3689
#, c-format
-msgid " %-23.23s [undocumented]\n"
-msgstr " %-23.23s [non documenté]\n"
-
-#: toplev.c:3803 toplev.c:3817
-#, c-format
-msgid ""
-"\n"
-"There are undocumented %s specific options as well.\n"
-msgstr ""
-"\n"
-"Il y a des options spécifiques %s qui ne sont pas documentés aussi.\n"
-
-#: toplev.c:3807
-#, c-format
-msgid ""
-"\n"
-" Options for %s:\n"
-msgstr ""
-"\n"
-" Options pour %s:\n"
-
-#: toplev.c:3844
msgid ""
"\n"
"Target specific options:\n"
@@ -8153,12 +7026,13 @@ msgstr ""
"\n"
"Options spécifiques à la cible:\n"
-#: toplev.c:3858 toplev.c:3877
+#: toplev.c:3703 toplev.c:3722
#, c-format
-msgid " -m%-23.23s [undocumented]\n"
-msgstr " -m%-23.23s [non documenté]\n"
+msgid " -m%-23s [undocumented]\n"
+msgstr " -m%-23s [non documenté]\n"
-#: toplev.c:3886
+#: toplev.c:3731
+#, c-format
msgid ""
"\n"
"There are undocumented target specific options as well.\n"
@@ -8166,73 +7040,22 @@ msgstr ""
"\n"
"Il y a des options spécifiques à la cible qui ne sont pas documentés aussi.\n"
-#: toplev.c:3888
+#: toplev.c:3733
+#, c-format
msgid " They exist, but they are not documented.\n"
msgstr " Ils existent, mais ils ne sont pas documentés.\n"
-#: toplev.c:3941
+#: toplev.c:3788
#, c-format
msgid "unrecognized gcc debugging option: %c"
msgstr "option gcc de mise au point non reconnue: %c"
-#: toplev.c:4007
-#, fuzzy, c-format
-msgid "`%s': unknown tls-model option"
-msgstr "« %s »: inconnu ou non supporté option -g"
-
-#: toplev.c:4034
-#, c-format
-msgid "unrecognized register name `%s'"
-msgstr "nom de registre non reconnue « %s »"
-
-#: toplev.c:4059 toplev.c:5012
-#, c-format
-msgid "unrecognized option `%s'"
-msgstr "option « %s » non reconnue"
-
-#: toplev.c:4107
-msgid "-Wid-clash-LEN is no longer supported"
-msgstr "-Wid-clash-LEN n'est plus supportée"
-
-#: toplev.c:4184
-#, c-format
-msgid "use -gdwarf -g%d for DWARF v1, level %d"
-msgstr "utiliser -gdwarf -g%d pour DWARF v1, niveau %d"
-
-#: toplev.c:4187
-msgid "use -gdwarf-2 for DWARF v2"
-msgstr "utiliser -gdwarf-2 pour DWARF v2"
-
-#: toplev.c:4192
-#, c-format
-msgid "ignoring option `%s' due to invalid debug level specification"
-msgstr "option « %s » ignorée en raison de la spécification du niveau de mise au poitn invalide"
-
-#: toplev.c:4215 toplev.c:5010
-#, c-format
-msgid "`%s': unknown or unsupported -g option"
-msgstr "« %s »: inconnu ou non supporté option -g"
-
-#: toplev.c:4222
-#, c-format
-msgid "`%s' ignored, conflicts with `-g%s'"
-msgstr "« %s » ignoré, en conflit avec «-g%s»"
-
-#: toplev.c:4304
-msgid "-param option missing argument"
-msgstr "argument manquant pour l'option -param"
-
-#: toplev.c:4313
-#, c-format
-msgid "invalid --param option: %s"
-msgstr "option invalide --param: %s"
-
-#: toplev.c:4325
+#: toplev.c:3850 config/rs6000/rs6000.c:909
#, c-format
-msgid "invalid parameter value `%s'"
-msgstr "valeur du paramètre invalide « %s »"
+msgid "invalid option `%s'"
+msgstr "option invalide « %s »"
-#: toplev.c:4565
+#: toplev.c:3865
#, c-format
msgid ""
"%s%s%s version %s (%s)\n"
@@ -8243,622 +7066,760 @@ msgstr ""
"%s\tcompilé par GNU C version %s.\n"
"%s%s%s version %s (%s) compilé par CC.\n"
-#: toplev.c:4572
+#: toplev.c:3872
#, c-format
msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
-msgstr ""
+msgstr "heuristiques %s%sGGC: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
-#: toplev.c:4630
+#: toplev.c:3924
msgid "options passed: "
msgstr "options passées: "
-#: toplev.c:4659
+#: toplev.c:3953
msgid "options enabled: "
msgstr "options autorisées: "
-#: toplev.c:4718 java/jcf-write.c:3453
+#: toplev.c:4011 java/jcf-write.c:3422
#, c-format
-msgid "can't open %s for writing"
-msgstr "ne peut ouvrir %s en écriture"
+msgid "can't open %s for writing: %m"
+msgstr "ne peut ouvrir %s en écriture: %m"
-#: toplev.c:5002
-#, c-format
-msgid "ignoring command line option '%s'"
-msgstr "option « %s » de la ligne de commande est ignorée"
+#: toplev.c:4094 config/sh/sh.c:6883
+msgid "created and used with different settings of -fpic"
+msgstr "créé et utilisé avec des configurations différentes de -fpic"
-#: toplev.c:5005
+#: toplev.c:4096 config/sh/sh.c:6885
+msgid "created and used with different settings of -fpie"
+msgstr "créé et utilisé avec des configurations différentes de -fpie"
+
+#: toplev.c:4147 config/sh/sh.c:6935
#, c-format
-msgid "(it is valid for %s but not the selected language)"
-msgstr "(c'est valide pour %s mais pas pour le langage séclectionné)"
+msgid "created and used with differing settings of `-m%s'"
+msgstr "créé et utilisé avec des configurations différentes de « -m%s »"
-#: toplev.c:5039
-msgid "-Wuninitialized is not supported without -O"
-msgstr "-Wuninitialized n'est pas supporté sans -O"
+#: toplev.c:4150 config/sh/sh.c:6938
+msgid "out of memory"
+msgstr "mémoire épuisée"
-#: toplev.c:5094
+#: toplev.c:4331
msgid "instruction scheduling not supported on this target machine"
msgstr "instruction d'ordonnancement n'est pas supportée sur cette machine cible"
-#: toplev.c:5098
+#: toplev.c:4335
msgid "this target machine does not have delayed branches"
msgstr "cette machine cible n'a pas de branchments avec délais"
-#: toplev.c:5112
+#: toplev.c:4349
#, c-format
msgid "-f%sleading-underscore not supported on this target machine"
msgstr "-f%sleading-underscore n'est pas supporté sur cette machine cible"
-#: toplev.c:5175
+#: toplev.c:4398
+#, c-format
+msgid "target system does not support the \"%s\" debug format"
+msgstr "système cible ne supporte par le format \"%s\" de mise au point"
+
+#: toplev.c:4415
msgid "-ffunction-sections not supported for this target"
msgstr "-ffunction-sections n'est pas supporté pour cette cible"
-#: toplev.c:5180
+#: toplev.c:4420
msgid "-fdata-sections not supported for this target"
msgstr "-fdata-sections n'est pas supporté pour cette machine cible"
-#: toplev.c:5187
+#: toplev.c:4427
msgid "-ffunction-sections disabled; it makes profiling impossible"
msgstr "-ffunction-sections désactivé; cela rend le profilage impossible"
-#: toplev.c:5194
+#: toplev.c:4434
msgid "-fprefetch-loop-arrays not supported for this target"
msgstr "-fprefetch-loop-arrays n'est pas supporté pour cette machine cible"
-#: toplev.c:5200
+#: toplev.c:4440
msgid "-fprefetch-loop-arrays not supported for this target (try -march switches)"
msgstr "-fprefetch-loop-arrays n'est pas supporté sur cette machine cible (essayer -march options)"
-#: toplev.c:5209
+#: toplev.c:4449
msgid "-fprefetch-loop-arrays is not supported with -Os"
msgstr "-fprefetch-loop-arrays n'est pas supporté avec -Os"
-#: toplev.c:5215
+#: toplev.c:4455
msgid "-ffunction-sections may affect debugging on some targets"
msgstr "-ffunction-sections peut affecter la mise au point sur quelques machines cibles."
-#: toplev.c:5327
+#: toplev.c:4557
#, c-format
-msgid "error writing to %s"
-msgstr "erreur d'écriture dans %s"
+msgid "error writing to %s: %m"
+msgstr "erreur d'écriture dans %s: %m"
-#: toplev.c:5329 java/jcf-parse.c:936 java/jcf-write.c:3460
+#: toplev.c:4559 java/jcf-parse.c:902 java/jcf-write.c:3429
#, c-format
-msgid "error closing %s"
-msgstr "erreur de fermeture %s"
+msgid "error closing %s: %m"
+msgstr "erreur de fermeture %s: %m"
-#: tree-dump.c:702
+#: tree-dump.c:692
#, c-format
msgid "could not open dump file `%s'"
msgstr "ne peut ouvrir le fichier de vidange « %s »"
-#: tree-dump.c:778
+#: tree-dump.c:763
#, c-format
-msgid "ignoring unknown option `%.*s' in `-f%s'"
-msgstr "option inconnue «%.*s» ignorée dans «-f%s»"
+msgid "ignoring unknown option `%.*s' in `-fdump-%s'"
+msgstr "option inconnue « %.*s » ignorée dans « -fdump-%s »"
+
+#: tree-inline.c:1016
+msgid "%Jfunction '%F' can never be inlined because it uses alloca (override using the always_inline attribute)"
+msgstr "%Jfonction « %F » ne peut être enligne parce qu'elle utilise alloca (écrasant l'utiliastion de l'attribut always_inline)"
+
+#: tree-inline.c:1029
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp"
+msgstr "%Jfonction « %F » ne peut être enligne parce qu'elle utilise setjmp"
+
+#: tree-inline.c:1044
+msgid "%Jfunction '%F' can never be inlined because it uses variable argument lists"
+msgstr "%Jfonction « %F » ne peut être enligne parce qu'elle utilise une liste variable d'arguments"
+
+#: tree-inline.c:1060
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp-longjmp exception handling"
+msgstr "%Jfonction « %F » ne peut être enligne parce qu'elle utilise le traitement d'exception setjmp-longjmp"
-#: tree.c:3645
+#: tree-inline.c:1078
+msgid "%Jfunction '%F' can never be inlined because it contains a nested function"
+msgstr "%Jfonction « %F » ne peut être enligne parce qu'elle contient une fonction imbriquée"
+
+#: tree-inline.c:1095
+msgid "%Jfunction '%F' can never be inlined because it contains a computed goto"
+msgstr "%Jfonction « %F » ne peut être enligne parce qu'elle contient un goto calculé"
+
+#: tree-inline.c:1105
+msgid "%Jfunction '%F' can never be inlined because it contains a nonlocal goto"
+msgstr "%Jfonction « %F » ne peut être enligne parce qu'elle contient un goto qui n'est pas local"
+
+#: tree-inline.c:1128
+msgid "%Jfunction '%F' can never be inlined because it uses variable sized variables"
+msgstr "%Jfonction « %F » ne peut être enligne parce qu'elle utilise une taille variable de variables"
+
+#: tree-inline.c:1338 tree-inline.c:1345
+msgid "%Jinlining failed in call to '%F': %s"
+msgstr "%Jl'enlignage de l'appel à « %F »: %s a échoué"
+
+#: tree-optimize.c:190
+msgid "%Jsize of return value of '%D' is %u bytes"
+msgstr "%Jtaille de la valeur retournée par « %D » est %u octets"
+
+#: tree-optimize.c:193
+msgid "%Jsize of return value of '%D' is larger than %wd bytes"
+msgstr "%Jtaille de la valeur retournée par « %D » supérieure à %wd octets"
+
+#: tree.c:3800
msgid "arrays of functions are not meaningful"
msgstr "tableaux de fonctions n'a pas grand sens"
-#: tree.c:3702
+#: tree.c:3855
msgid "function return type cannot be function"
msgstr "Le type retourné d'une fonction ne peut être une fonction"
-#: tree.c:4557
+#: tree.c:4684
msgid "invalid initializer for bit string"
msgstr "initialisation invalide pour une chaîne de bits"
-#: tree.c:4616
+#: tree.c:4736
#, c-format
msgid "tree check: expected %s, have %s in %s, at %s:%d"
msgstr "vérification de l'arbre: attendait %s, obtenu %s dans %s, à %s:%d"
-#: tree.c:4633
+#: tree.c:4749
#, c-format
msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d"
msgstr "vérification de l'arbre: attendait classe « %c », obtenu « %c » (%s) dans %s, à %s:%d"
-#: tree.c:4650
-#, fuzzy, c-format
+#: tree.c:4762
+#, c-format
msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
-msgstr "vérification RTL: accès de elt %d du vecteur avec le dernier elt %d dans %s, à %s:%d"
+msgstr "vérification de l'arbre: accès de elt %d de tree-vec avec %d elts dans %s, à %s:%d"
-#: varasm.c:455 config/i386/winnt.c:611
+#: tree.c:4774
#, c-format
-msgid "%s causes a section type conflict"
-msgstr "%s cause un conflit du type de section"
+msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
+msgstr "vérification de l'arbre: opérande accédé %d de %s avec %d opérandes dans %s, à %s:%d"
-#: varasm.c:841
-#, c-format
-msgid "register name not specified for `%s'"
-msgstr "nom de registre n'est pas spécifié pour « %s »"
+#: varasm.c:434
+msgid "%J%D causes a section type conflict"
+msgstr "%J%D cause un conflit du type de section"
-#: varasm.c:843
-#, c-format
-msgid "invalid register name for `%s'"
-msgstr "nom de registre invalide pour « %s »"
+#: varasm.c:796
+msgid "%Jregister name not specified for '%D'"
+msgstr "%Jnom de registre n'est pas spécifié pour « %D »"
-#: varasm.c:846
-#, c-format
-msgid "data type of `%s' isn't suitable for a register"
-msgstr "type de données de « %s » n'est pas applicable pour un registre"
+#: varasm.c:798
+msgid "%Jinvalid register name for '%D'"
+msgstr "%Jnom de registre invalide pour « %D »"
-#: varasm.c:849
-#, c-format
-msgid "register specified for `%s' isn't suitable for data type"
-msgstr "registre spécifié pour « %s » n'est applicable à un type de données"
+#: varasm.c:800
+msgid "%Jdata type of '%D' isn't suitable for a register"
+msgstr "%Jtype de données de « %D » n'est pas applicable pour un registre"
-#: varasm.c:858
+#: varasm.c:803
+msgid "%Jregister specified for '%D' isn't suitable for data type"
+msgstr "%Jregistre spécifié pour « %D » n'est applicable à un type de données"
+
+#: varasm.c:813
msgid "global register variable has initial value"
msgstr "variable globale registre a une valeur initiale"
-#: varasm.c:861
+#: varasm.c:816
msgid "volatile register variables don't work as you might wish"
msgstr "variables resgistres volatiles ne fonctionne pas comme vous le souhaiteriez"
-#: varasm.c:894
-#, c-format
-msgid "register name given for non-register variable `%s'"
-msgstr "nom de registre donné pour une variable non registre « %s »"
+#: varasm.c:848
+msgid "%Jregister name given for non-register variable '%D'"
+msgstr "%Jnom de registre donné pour une variable non registre « %D »"
-#: varasm.c:1542
-#, c-format
-msgid "alignment of `%s' is greater than maximum object file alignment. Using %d"
-msgstr "alignement de « %s » est plus grand que l'alignement maximal du fichier objet. %d est utilisé."
+#: varasm.c:1380
+msgid "%Jstorage size of `%D' isn't known"
+msgstr "%Jtaille de stockage de « %D » n'est pas connue"
+
+#: varasm.c:1434
+msgid "%Jalignment of '%D' is greater than maximum object file alignment. Using %d"
+msgstr "%Jalignement de « %D » est plus grand que l'alignement maximal du fichier objet. %d est utilisé."
-#: varasm.c:1584
+#: varasm.c:1480
msgid "thread-local COMMON data not implemented"
-msgstr ""
+msgstr "thread-local COMMON data n'est pas implanté"
-#: varasm.c:1610
-#, c-format
-msgid "requested alignment for %s is greater than implemented alignment of %d"
-msgstr "alignement requis pour %s est plus grand que l'alignement implanté de %d"
+#: varasm.c:1505
+msgid "%Jrequested alignment for '%D' is greater than implemented alignment of %d"
+msgstr "%Jrequête d'alignement pour '%D' est plus grand que l'alignement implanté de %d"
-#: varasm.c:4048
+#: varasm.c:3787
msgid "initializer for integer value is too complicated"
msgstr "initialisation d'entier trop compliquée"
-#: varasm.c:4053
+#: varasm.c:3792
msgid "initializer for floating value is not a floating constant"
msgstr "l'initialisation d'une valeur à virgule flottante n'est pas une constante à virgule flottante"
-#: varasm.c:4120
+#: varasm.c:3858
msgid "unknown set constructor type"
msgstr "type de jeu de constructeurs inconnu"
-#: varasm.c:4334
+#: varasm.c:4077
#, c-format
msgid "invalid initial value for member `%s'"
msgstr "valeur initiale invalide pour le membre « %s »"
-#: varasm.c:4525 varasm.c:4568
-#, c-format
-msgid "weak declaration of `%s' must precede definition"
-msgstr "déclaraion faible de « %s » qui doit être précédée d'une définition"
+#: varasm.c:4264 varasm.c:4308
+msgid "%Jweak declaration of '%D' must precede definition"
+msgstr "%Jdéclaration faible de « %D » qui doit être précédée d'une définition"
-#: varasm.c:4532
-#, c-format
-msgid "weak declaration of `%s' after first use results in unspecified behavior"
-msgstr "déclaraion faible de « %s » après une première utilisation des résultats d'un comportement non spécifié"
+#: varasm.c:4272
+msgid "%Jweak declaration of '%D' after first use results in unspecified behavior"
+msgstr "%Jdéclaration faible de « %D » après une première utilisation des résultats d'un comportement non spécifié"
-#: varasm.c:4566
-#, c-format
-msgid "weak declaration of `%s' must be public"
-msgstr "déclaration faible de « %s » doit être publique"
+#: varasm.c:4306
+msgid "%Jweak declaration of '%D' must be public"
+msgstr "%Jdéclaration faible de « %D » doit être publique"
-#: varasm.c:4575
-#, c-format
-msgid "weak declaration of `%s' not supported"
-msgstr "déclaration faible de « %s » n'est pas supportée"
+#: varasm.c:4315
+msgid "%Jweak declaration of '%D' not supported"
+msgstr "%Jdéclaration faible de « %D » n'est pas supportée"
-#: varasm.c:4602 varasm.c:4677
+#: varasm.c:4344 varasm.c:4434
msgid "only weak aliases are supported in this configuration"
msgstr "seulement les alias faibles sont supportés dans cette configuration"
-#: varasm.c:4685
+#: varasm.c:4437
msgid "alias definitions not supported in this configuration; ignored"
msgstr "définitions d'alias ne sont pas supportés dans cette configuration; ignoré"
-#: varasm.c:4716
-#, fuzzy
+#: varasm.c:4466
msgid "visibility attribute not supported in this configuration; ignored"
-msgstr "définitions d'alias ne sont pas supportés dans cette configuration; ignoré"
+msgstr "visibilité de l'attribut n'est pas supporté dans cette configuration; ignoré"
-#: varray.c:134
+#: varray.c:194
#, c-format
msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d"
-msgstr "tableau virtuel %s[%lu]: élément %lu hors gamme dans %s, à %s:%d"
+msgstr "tableau virtuel %s[%lu]: élément %lu hors limite dans %s, à %s:%d"
+
+#: varray.c:204
+#, c-format
+msgid "underflowed virtual array %s in %s, at %s:%d"
+msgstr "sous débordement du tableau virtuele %s dans %s, à %s:%d"
#. Print an error message for unrecognized stab codes.
-#: xcoffout.c:175
+#: xcoffout.c:173
#, c-format
msgid "no sclass for %s stab (0x%x)\n"
msgstr "pas de sclass pour le stab %s (0x%x)\n"
-#: pretty-print.h:97
-#, fuzzy, c-format
-msgid "#`%s' not supported by %s#"
-msgstr "« %s » n'est pas supporté par %s"
+#.
+#. Local variables:
+#. mode:c
+#. End:
+#.
+#: diagnostic.def:1
+msgid "fatal error: "
+msgstr "erreur fatale: "
+
+#: diagnostic.def:2
+msgid "internal compiler error: "
+msgstr "erreur interne du compilateur: "
+
+#: diagnostic.def:3
+msgid "error: "
+msgstr "erreur: "
+
+#: diagnostic.def:4
+msgid "sorry, unimplemented: "
+msgstr "désolé, pas implanté: "
+
+#: diagnostic.def:6
+msgid "anachronism: "
+msgstr "anachronisme: "
+
+#: diagnostic.def:7
+msgid "note: "
+msgstr "note: "
+
+#: diagnostic.def:8
+msgid "debug: "
+msgstr "mise au point: "
#: params.def:53
-#, fuzzy
msgid "The maximum number of instructions in a single function eligible for inlining"
-msgstr "Le nombre maximum d'instructions dans une fonction qui est éligible au type enligne"
+msgstr "Le nombre maximum d'instructions dans une fonction simple éligible au type enligne"
#: params.def:65
-#, fuzzy
msgid "The maximum number of instructions when automatically inlining"
-msgstr "Le nombre maximum d'instructions dans une fonction qui est éligible au type enligne"
-
-#: params.def:84
-#, fuzzy
-msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
-msgstr "Le nombre maximum d'instructions dans une fonction qui est éligible au type enligne"
-
-#: params.def:97
-msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
-msgstr ""
-
-#: params.def:110
-#, fuzzy
-msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
-msgstr "Le nombre maximum d'instructions dans une fonction qui est éligible au type enligne"
+msgstr "Le nombre maximum d'instructions lorsqu'automatiquement de type enligne"
-#: params.def:120
-#, fuzzy
+#: params.def:75
msgid "The maximum number of instructions for the RTL inliner"
-msgstr "Le nombre maximum d'instructions à considérer pour remplir une slot délai"
+msgstr "Le nombre maximum d'instructions pour la fonction d'enlignage RTL"
-#: params.def:131
+#: params.def:86
msgid "The maximum number of instructions to consider to fill a delay slot"
msgstr "Le nombre maximum d'instructions à considérer pour remplir une slot délai"
-#: params.def:142
+#: params.def:97
msgid "The maximum number of instructions to consider to find accurate live register information"
msgstr "Le nombre maximum d'instructions à considérer pour repérer un registre d'information actif et précis"
-#: params.def:152
+#: params.def:107
msgid "The maximum length of scheduling's pending operations list"
msgstr "La longueur maximale de la liste des opération en attente d'ordonnancement"
-#: params.def:159
+#: params.def:112
+msgid "The size of function body to be considered large"
+msgstr "La taille du corps de la fonction est considéré comme étant grande"
+
+#: params.def:116
+msgid "Maximal growth due to inlining of large function (in percent)"
+msgstr "Croissance maximal en raison de l'enlignage d'une grande fonction (en pourcent)"
+
+#: params.def:120
+msgid "how much can given compilation unit grow because of the inlining (in percent)"
+msgstr "quelle croissance d'une unité de compilation peut être tolérée en raison de l'enlignage (en pourcent)"
+
+#: params.def:127
msgid "The maximum amount of memory to be allocated by GCSE"
msgstr "La taille maximale de mémoire à être alloué par GCSE"
-#: params.def:164
+#: params.def:132
msgid "The maximum number of passes to make when doing GCSE"
msgstr "Le nombre maxium de passes à effectuer lors de l'exécution de GCSE"
-#: params.def:171
-#, fuzzy
+#: params.def:139
msgid "The maximum number of instructions to consider to unroll in a loop"
-msgstr "Le nombre maximum d'instructions à considérer pour remplir une slot délai"
+msgstr "Le nombre maximum d'instructions à considérer à inclure dans une boucle"
-#: params.def:176
-msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
-msgstr ""
+#: params.def:145
+msgid "The maximum number of instructions to consider to unroll in a loop on average"
+msgstr "Le nombre maximum d'instructions à considérer à inclure dans une boucle en moyenne"
+
+#: params.def:150
+msgid "The maximum number of unrollings of a single loop"
+msgstr "Le nombre maximum d'instructions à inclure dans une boucle simple"
+
+#: params.def:155
+msgid "The maximum number of insns of a peeled loop"
+msgstr "Le nombre maximum d'insns de boucle réduite"
+
+#: params.def:160
+msgid "The maximum number of peelings of a single loop"
+msgstr "Le nombre maxium de passes de réduction d'une boucle simple"
+
+#: params.def:165
+msgid "The maximum number of insns of a completely peeled loop"
+msgstr "Le nombre maximum d'insns d'une boucle complètement réduite"
+
+#: params.def:170
+msgid "The maximum number of peelings of a single loop that is peeled completely"
+msgstr "Le nombre maximum de réductions d'une boucle simple qui a été complètement réduite"
+
+#: params.def:175
+msgid "The maximum number of insns of a peeled loop that rolls only once"
+msgstr "Le nombre maximum d'insns d'une boucle réduite qui tourne une seule fois"
#: params.def:181
-msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
-msgstr ""
+msgid "The maximum number of insns of an unswitched loop"
+msgstr "Le nombre maximum d'insns d'une boucle sans branchement"
#: params.def:186
-msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
-msgstr ""
+msgid "The maximum number of unswitchings in a single loop"
+msgstr "Le nombre maximum de non branchement dans une boucle simple"
#: params.def:191
-msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
-msgstr ""
+msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
+msgstr "Sélectionner la fraction du décompte maximal de répétition du bloc de base dans le programme selon le bloc de bsae donné doit être considéré comme chaud « hot »"
#: params.def:196
-msgid "Maximal code growth caused by tail duplication (in percents)"
-msgstr ""
+msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
+msgstr "Sélectionner la fraction de la fréquence maximale d'exécutions du bloc de base dans la fonction selon le bloc de bsae donné doit être considéré comme chaud « hot »"
-#: params.def:200
-msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percents)"
-msgstr ""
+#: params.def:201
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
+msgstr "Le pourcentage de fonction, pondéré par la fréquence d'exécutions, qui doit être couvert la formation de la trace. Utilisé lorsque le feedback par profile est disponible"
-#: params.def:205
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is available"
-msgstr ""
+#: params.def:206
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
+msgstr "Le pourcentage de fonction, pondéré par la fréquence d'exécutions, qui doit être couvert la formation de la trace. Utilisé lorsque le feedback par profilage n'est disponible"
-#: params.def:210
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is not available"
-msgstr ""
+#: params.def:211
+msgid "Maximal code growth caused by tail duplication (in percent)"
+msgstr "Croissance maximal du code en raison de duplication de queue (en pourcent)"
+
+#: params.def:215
+msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent)"
+msgstr "Stopper la croissance renversée si la probabilité inverse des meilleures bordures est inférieure à ce seuil (en pourcent)"
+
+#: params.def:220
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is available"
+msgstr "Stopper la croissance anticipée si la probabilité des meilleures bordures est inférieure à ce seuil (en pourcent). Utilisé lorsque le feedback par profilage est disponible"
-#: params.def:217
-#, fuzzy
+#: params.def:225
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is not available"
+msgstr "Stopper la croissance anticipée si la probabilité des meilleures bordures est inférieure à ce seuil (en pourcent). Utilisé lorsque le feedback par profilage n'est pas disponible"
+
+#: params.def:232
msgid "The maximum number of incoming edges to consider for crossjumping"
-msgstr "Le nombre maximum d'instructions à considérer pour remplir une slot délai"
+msgstr "Le nombre maximum de bordures à considérer pour les sauts croisés"
-#: params.def:230
-msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap."
-msgstr ""
+#: params.def:238
+msgid "The maximum length of path considered in cse"
+msgstr "La longueur maximale des chemins considérés dans cse"
-#: params.def:236
-msgid "Minimum heap size before we start collecting garbage, in kilobytes."
-msgstr ""
+#: params.def:243
+msgid "The maximum memory locations recorded by cselib"
+msgstr "Le nombre maximum de localisations mémoire enregistrées par cselib"
+
+#: params.def:256
+msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap"
+msgstr "L'expansion minimale des tas pour lancer la collecte des rebuts, en pourcentage de la taille totale du tas."
+
+#: params.def:262
+msgid "Minimum heap size before we start collecting garbage, in kilobytes"
+msgstr "La taille minimale du tas avant de lancer la collecte des rebuts, en kilo-octets."
+
+#: params.def:270
+msgid "The maximum number of instructions to search backward when looking for equivalent reload"
+msgstr "Le nombre maximum d'instructions à rechercher antérieurement lors d'une recherche d'une recharge équivalente"
#: config/darwin-c.c:75
msgid "too many #pragma options align=reset"
msgstr "trop d'options pour #pragma pour align=reset"
-#: config/darwin-c.c:97 config/darwin-c.c:100 config/darwin-c.c:102
-#: config/darwin-c.c:104
+#: config/darwin-c.c:95 config/darwin-c.c:98 config/darwin-c.c:100
+#: config/darwin-c.c:102
msgid "malformed '#pragma options', ignoring"
msgstr "'#pragma options» mal composé, ignoré"
-#: config/darwin-c.c:107
+#: config/darwin-c.c:105
msgid "junk at end of '#pragma options'"
msgstr "rebut à la fin de '#pragma options'"
-#: config/darwin-c.c:117
+#: config/darwin-c.c:115
msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring"
msgstr "'#pragma options align={mac68k|power|reset}» mal composé, ignoré"
-#: config/darwin-c.c:130
+#: config/darwin-c.c:127
msgid "missing '(' after '#pragma unused', ignoring"
msgstr "«(» manquante après '#pragma unused', ignoré"
-#: config/darwin-c.c:148
+#: config/darwin-c.c:145
msgid "missing ')' after '#pragma unused', ignoring"
msgstr "«(» manquante après '#pragma unused', ignoré"
-#: config/darwin-c.c:151
+#: config/darwin-c.c:148
msgid "junk at end of '#pragma unused'"
msgstr "rebut à la fin de '#pragma unused'"
-#: config/lynx-ng.h:97 config/lynx.h:121 config/rs6000/lynx.h:100
+#: config/darwin.c:1347
+msgid "internal and protected visibility attributes not supportedin this configuration; ignored"
+msgstr "visibilité des attributs internes et protégées n'est pas supportée dans cette configuration; ignoré"
+
+#: config/lynx-ng.h:97 config/lynx.h:116 config/rs6000/lynx.h:73
msgid "-msystem-v and -p are incompatible"
msgstr "-msystem-v et -p sont incompatibles"
-#: config/lynx-ng.h:99 config/lynx.h:123 config/rs6000/lynx.h:102
+#: config/lynx-ng.h:99 config/lynx.h:118 config/rs6000/lynx.h:75
msgid "-msystem-v and -mthreads are incompatible"
msgstr "-msystem-v et -mthreads sont incompatibles"
-#: config/alpha/alpha.c:342
+#: config/windiss.h:37
+msgid "profiler support for WindISS"
+msgstr "support du profileur pour WindISS"
+
+#: config/alpha/alpha.c:231
#, c-format
msgid "-f%s ignored for Unicos/Mk (not supported)"
msgstr "-f%s ignoré pour Unicos/Mk (non supporté)"
-#: config/alpha/alpha.c:366
+#: config/alpha/alpha.c:255
msgid "-mieee not supported on Unicos/Mk"
msgstr "-mieee n'est pas supporté sur Unicos/Mk"
-#: config/alpha/alpha.c:377
+#: config/alpha/alpha.c:266
msgid "-mieee-with-inexact not supported on Unicos/Mk"
msgstr "-mieee-with-inexact n'est pas supporté sur Unicos/Mk"
-#: config/alpha/alpha.c:394
+#: config/alpha/alpha.c:283
#, c-format
msgid "bad value `%s' for -mtrap-precision switch"
msgstr "valeur « %s » erronée pour l'option -mtrap-precision"
-#: config/alpha/alpha.c:408
+#: config/alpha/alpha.c:297
#, c-format
msgid "bad value `%s' for -mfp-rounding-mode switch"
msgstr "valeur « %s » erronée pour l'option -mfp-rounding-mode"
-#: config/alpha/alpha.c:423
+#: config/alpha/alpha.c:312
#, c-format
msgid "bad value `%s' for -mfp-trap-mode switch"
msgstr "valeur « %s » erronée pour l'option -mfp-trap-mode"
-#: config/alpha/alpha.c:435
-#, fuzzy, c-format
+#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1063
+#, c-format
msgid "bad value `%s' for -mtls-size switch"
-msgstr "valeur « %s » erronée pour l'option -mcpu"
+msgstr "valeur « %s » erronée pour l'option -mtls-size"
-#: config/alpha/alpha.c:454 config/alpha/alpha.c:466
+#: config/alpha/alpha.c:343 config/alpha/alpha.c:355
#, c-format
msgid "bad value `%s' for -mcpu switch"
msgstr "valeur « %s » erronée pour l'option -mcpu"
-#: config/alpha/alpha.c:473
+#: config/alpha/alpha.c:362
msgid "trap mode not supported on Unicos/Mk"
msgstr "mode trappe n'est pas supporté sur Unicos/Mk"
-#: config/alpha/alpha.c:480
+#: config/alpha/alpha.c:369
msgid "fp software completion requires -mtrap-precision=i"
msgstr "complétion logicielle FP requiert -mtrap-precision=i"
-#: config/alpha/alpha.c:496
+#: config/alpha/alpha.c:385
msgid "rounding mode not supported for VAX floats"
msgstr "mode d'arondissement n'est pas supporté pour les flottants sur VAX"
-#: config/alpha/alpha.c:501
+#: config/alpha/alpha.c:390
msgid "trap mode not supported for VAX floats"
msgstr "mode trappe n'est pas supporté avec les flottants sur VAX"
-#: config/alpha/alpha.c:530
+#: config/alpha/alpha.c:419
#, c-format
msgid "L%d cache latency unknown for %s"
msgstr "latence de la cache L%d inconnue pour %s"
-#: config/alpha/alpha.c:545
+#: config/alpha/alpha.c:434
#, c-format
msgid "bad value `%s' for -mmemory-latency"
msgstr "valeur « %s » erronée pour -mmemory-latency"
-#: config/alpha/alpha.c:5604 config/m88k/m88k.c:2889 config/romp/romp.c:754
-#: config/romp/romp.c:761
+#: config/alpha/alpha.c:5411
#, c-format
msgid "invalid %%H value"
msgstr "valeur %%H invalide"
-#: config/alpha/alpha.c:5625
+#: config/alpha/alpha.c:5432
#, c-format
msgid "invalid %%J value"
msgstr "valeur %%J invalide"
-#: config/alpha/alpha.c:5641 config/ia64/ia64.c:3970 config/m88k/m88k.c:3034
+#: config/alpha/alpha.c:5448 config/ia64/ia64.c:4243
#, c-format
msgid "invalid %%r value"
msgstr "valeur %%r invalide"
-#: config/alpha/alpha.c:5651 config/rs6000/rs6000.c:7737
+#: config/alpha/alpha.c:5458 config/rs6000/rs6000.c:8944
+#: config/xtensa/xtensa.c:1999
#, c-format
msgid "invalid %%R value"
msgstr "valeur %%R invalide"
-#: config/alpha/alpha.c:5657 config/rs6000/rs6000.c:7663
+#: config/alpha/alpha.c:5464 config/rs6000/rs6000.c:8863
+#: config/xtensa/xtensa.c:1966
#, c-format
msgid "invalid %%N value"
msgstr "valeur %%N invalide"
-#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:7691
+#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:8891
#, c-format
msgid "invalid %%P value"
msgstr "valeur %%P invalide"
-#: config/alpha/alpha.c:5673 config/m88k/m88k.c:2895 config/romp/romp.c:740
-#: config/romp/romp.c:747
+#: config/alpha/alpha.c:5480
#, c-format
msgid "invalid %%h value"
msgstr "valeur %%h invalide"
-#: config/alpha/alpha.c:5681 config/romp/romp.c:698
+#: config/alpha/alpha.c:5488 config/xtensa/xtensa.c:1992
#, c-format
msgid "invalid %%L value"
msgstr "valeur %%L invalide"
-#: config/alpha/alpha.c:5720 config/rs6000/rs6000.c:7645
+#: config/alpha/alpha.c:5527 config/rs6000/rs6000.c:8845
#, c-format
msgid "invalid %%m value"
msgstr "valeur %%m invalide"
-#: config/alpha/alpha.c:5728 config/rs6000/rs6000.c:7653
+#: config/alpha/alpha.c:5535 config/rs6000/rs6000.c:8853
#, c-format
msgid "invalid %%M value"
msgstr "valeur %%M invalide"
-#: config/alpha/alpha.c:5772
+#: config/alpha/alpha.c:5579
#, c-format
msgid "invalid %%U value"
msgstr "valeur %%U invalide"
-#: config/alpha/alpha.c:5784 config/alpha/alpha.c:5798 config/romp/romp.c:706
-#: config/rs6000/rs6000.c:7745
+#: config/alpha/alpha.c:5591 config/alpha/alpha.c:5605
+#: config/rs6000/rs6000.c:8952
#, c-format
msgid "invalid %%s value"
msgstr "valeur %%s invalide"
-#: config/alpha/alpha.c:5821 config/m88k/m88k.c:2997
+#: config/alpha/alpha.c:5628
#, c-format
msgid "invalid %%C value"
msgstr "valeur %%C invalide"
-#: config/alpha/alpha.c:5858 config/m88k/m88k.c:3018
-#: config/rs6000/rs6000.c:7502
+#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:8702
#, c-format
msgid "invalid %%E value"
msgstr "valeur %%E invalide"
-#: config/alpha/alpha.c:5883 config/alpha/alpha.c:5933
-#, fuzzy
+#: config/alpha/alpha.c:5690 config/alpha/alpha.c:5738
msgid "unknown relocation unspec"
-msgstr "type de jeu de constructeurs inconnu"
+msgstr "relocalisation unspec inconnue"
-#: config/alpha/alpha.c:5892 config/romp/romp.c:981
-#: config/rs6000/rs6000.c:8052
+#: config/alpha/alpha.c:5699 config/rs6000/rs6000.c:9265
#, c-format
msgid "invalid %%xn code"
msgstr "valeur %%xn invalide"
-#: config/alpha/alpha.c:6618 config/alpha/alpha.c:6621 config/s390/s390.c:6069
-#: config/s390/s390.c:6072
+#: config/alpha/alpha.c:6634 config/alpha/alpha.c:6637 config/s390/s390.c:6572
+#: config/s390/s390.c:6575
msgid "bad builtin fcode"
-msgstr ""
+msgstr "construit interne erroné de fcode"
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/alpha/alpha.h:279 config/i386/i386.h:294 config/i386/i386.h:296
-#: config/i386/i386.h:298 config/ns32k/ns32k.h:140 config/rs6000/rs6000.h:292
-#: config/s390/s390.h:68 config/sparc/sparc.h:522 config/sparc/sparc.h:527
+#. WARNING: Do not mark empty strings for translation, as calling
+#. gettext on an empty string does NOT return an empty
+#. string.
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/alpha/alpha.h:286 config/i386/i386.h:327 config/i386/i386.h:329
+#: config/i386/i386.h:331 config/ns32k/ns32k.h:140 config/s390/s390.h:124
+#: config/sparc/sparc.h:537 config/sparc/sparc.h:542
msgid "Use hardware fp"
msgstr "Utiliser le FP matériel"
-#: config/alpha/alpha.h:280 config/i386/i386.h:295 config/i386/i386.h:297
-#: config/rs6000/rs6000.h:294 config/sparc/sparc.h:524
-#: config/sparc/sparc.h:529
+#: config/alpha/alpha.h:287 config/i386/i386.h:328 config/i386/i386.h:330
+#: config/sparc/sparc.h:539 config/sparc/sparc.h:544
msgid "Do not use hardware fp"
msgstr "Ne pas utiliser l'unité FP matérielle"
-#: config/alpha/alpha.h:281
+#: config/alpha/alpha.h:288
msgid "Use fp registers"
msgstr "Utiliser les registres FP"
-#: config/alpha/alpha.h:283
+#: config/alpha/alpha.h:290
msgid "Do not use fp registers"
msgstr "Ne pas utiliser les registres FP"
-#: config/alpha/alpha.h:284
+#: config/alpha/alpha.h:291
msgid "Do not assume GAS"
msgstr "Ne pas présumer la présence de GAS"
-#: config/alpha/alpha.h:285
+#: config/alpha/alpha.h:292
msgid "Assume GAS"
msgstr "Présumer la présence de GAS"
-#: config/alpha/alpha.h:287
+#: config/alpha/alpha.h:294
msgid "Request IEEE-conformant math library routines (OSF/1)"
msgstr "Requête des routine de la bibliothèque mathématique conforme IEEE (OSF/1)"
-#: config/alpha/alpha.h:289
+#: config/alpha/alpha.h:296
msgid "Emit IEEE-conformant code, without inexact exceptions"
msgstr "Produire du code conforme IEEE, sans exceptions inexactes"
-#: config/alpha/alpha.h:291
+#: config/alpha/alpha.h:298
msgid "Emit IEEE-conformant code, with inexact exceptions"
msgstr "Produire du code conforme IEEE, avec exceptions inexactes"
-#: config/alpha/alpha.h:293
+#: config/alpha/alpha.h:300
msgid "Do not emit complex integer constants to read-only memory"
msgstr "Ne pas produire des constantes entières complexes en mémoire en mode lecture seulement"
-#: config/alpha/alpha.h:294
+#: config/alpha/alpha.h:301
msgid "Use VAX fp"
msgstr "Utiliser les registres FP sur VAX"
-#: config/alpha/alpha.h:295
+#: config/alpha/alpha.h:302
msgid "Do not use VAX fp"
msgstr "Ne pas utiliser les registres FP sur VAX"
-#: config/alpha/alpha.h:296
+#: config/alpha/alpha.h:303
msgid "Emit code for the byte/word ISA extension"
msgstr "Produire du code pour les octets/mots des extensions ISA"
-#: config/alpha/alpha.h:299
+#: config/alpha/alpha.h:306
msgid "Emit code for the motion video ISA extension"
msgstr "Produire du code pour les extensions vidéo ISA"
-#: config/alpha/alpha.h:302
+#: config/alpha/alpha.h:309
msgid "Emit code for the fp move and sqrt ISA extension"
msgstr "Produire du code pour les déplacements FP et sqrt des extensions ISA"
-#: config/alpha/alpha.h:304
+#: config/alpha/alpha.h:311
msgid "Emit code for the counting ISA extension"
msgstr "Produire du code pour les extensions ISA de comptage"
-#: config/alpha/alpha.h:307
+#: config/alpha/alpha.h:314
msgid "Emit code using explicit relocation directives"
msgstr "Produire du code utilisant des directives explicites de relocalisation"
-#: config/alpha/alpha.h:310
+#: config/alpha/alpha.h:317
msgid "Emit 16-bit relocations to the small data areas"
msgstr "Produire du code de 16 bits pour le relocalisation des petites zones de données"
-#: config/alpha/alpha.h:312
+#: config/alpha/alpha.h:319
msgid "Emit 32-bit relocations to the small data areas"
msgstr "Produire du code de 32 bits pour le relocalisation des petites zones de données"
-#: config/alpha/alpha.h:314
+#: config/alpha/alpha.h:321
+msgid "Emit direct branches to local functions"
+msgstr "Omettre le branchement direct aux fonctions locales"
+
+#: config/alpha/alpha.h:324
msgid "Emit rdval instead of rduniq for thread pointer"
-msgstr ""
+msgstr "Produire rdval au lieu de rduniq pour le pointeur de thread"
#. For -mcpu=
#. For -mtune=
@@ -8867,292 +7828,313 @@ msgstr ""
#. For -mtrap-precision=[p|f|i]
#. For -mmemory-latency=
#. For -mtls-size=
-#: config/alpha/alpha.h:343
+#: config/alpha/alpha.h:353
msgid "Use features of and schedule given CPU"
msgstr "Utiliser les options et ordonnancer pour le processeur donné "
-#: config/alpha/alpha.h:345
+#: config/alpha/alpha.h:355
msgid "Schedule given CPU"
msgstr "Ordonnancer le processeur donné"
-#: config/alpha/alpha.h:347
+#: config/alpha/alpha.h:357
msgid "Control the generated fp rounding mode"
msgstr "Contrôler le mode d'arondissement FP généré"
-#: config/alpha/alpha.h:349
+#: config/alpha/alpha.h:359
msgid "Control the IEEE trap mode"
msgstr "Contrôler le mode trappe IEEE"
-#: config/alpha/alpha.h:351
+#: config/alpha/alpha.h:361
msgid "Control the precision given to fp exceptions"
msgstr "Contrôler la précision donnée des exceptions FP"
-#: config/alpha/alpha.h:353
+#: config/alpha/alpha.h:363
msgid "Tune expected memory latency"
msgstr "Ajuster la latence mémoire attendue"
-#: config/alpha/alpha.h:355 config/ia64/ia64.h:225
+#: config/alpha/alpha.h:365 config/ia64/ia64.h:267 config/rs6000/sysv4.h:90
msgid "Specify bit size of immediate TLS offsets"
-msgstr ""
+msgstr "Spécifier la taille de bit des décalages immédiats TLS"
-#: config/arc/arc.c:135
+#: config/arc/arc.c:147
#, c-format
msgid "bad value (%s) for -mcpu switch"
msgstr "valeur (%s) erronée pour l'option -mcpu"
-#: config/arc/arc.c:362
+#: config/arc/arc.c:369
#, c-format
msgid "argument of `%s' attribute is not a string constant"
msgstr "argument de l'attribut « %s » n'est pas une chaîne de constante"
-#: config/arc/arc.c:369
+#: config/arc/arc.c:376
#, c-format
msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\""
msgstr "l'argument de l'attribut « %s » n'est pas «ilink1» ou «ilink2 »"
-#: config/arc/arc.c:1708 config/m32r/m32r.c:2286
+#: config/arc/arc.c:1714 config/m32r/m32r.c:2325
#, c-format
msgid "invalid operand to %%R code"
msgstr "opérande invalide pour le code %%R"
-#: config/arc/arc.c:1740 config/m32r/m32r.c:2309
+#: config/arc/arc.c:1746 config/m32r/m32r.c:2348
#, c-format
msgid "invalid operand to %%H/%%L code"
msgstr "opérande invalide pour le code %%H/%%L"
-#: config/arc/arc.c:1763 config/m32r/m32r.c:2385
+#: config/arc/arc.c:1769 config/m32r/m32r.c:2419
#, c-format
msgid "invalid operand to %%U code"
msgstr "opérande invalide pour le code %%U"
-#: config/arc/arc.c:1774
+#: config/arc/arc.c:1780
#, c-format
msgid "invalid operand to %%V code"
msgstr "opérande invalide pour le code %%V"
#. Unknown flag.
-#: config/arc/arc.c:1781 config/m32r/m32r.c:2424 config/sparc/sparc.c:6533
+#. Undocumented flag.
+#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985
msgid "invalid operand output code"
msgstr "opérande invalide pour le code de sortie"
-#: config/arm/arm.c:458
+#: config/arm/arm.c:520
#, c-format
msgid "switch -mcpu=%s conflicts with -march= switch"
msgstr "l'option -mcpu=%s est en conflit avec l'option -march= "
-#: config/arm/arm.c:468 config/rs6000/rs6000.c:558 config/sparc/sparc.c:393
+#: config/arm/arm.c:530 config/rs6000/rs6000.c:759 config/sparc/sparc.c:424
#, c-format
msgid "bad value (%s) for %s switch"
msgstr "valeur (%s) erronée pour l'option %s"
-#: config/arm/arm.c:604
+#: config/arm/arm.c:672
msgid "target CPU does not support APCS-32"
msgstr "le processeur cible ne supporte pas APCS-32"
-#: config/arm/arm.c:609
+#: config/arm/arm.c:677
msgid "target CPU does not support APCS-26"
msgstr "le processeur cible ne supporte pas APCS-26"
-#: config/arm/arm.c:615
+#: config/arm/arm.c:683
msgid "target CPU does not support interworking"
msgstr "le processeur cible ne supporte pas l'inter-réseautage"
-#: config/arm/arm.c:621
+#: config/arm/arm.c:689
msgid "target CPU does not support THUMB instructions"
msgstr "le processeur cible ne supporte pas les instructions THUMB"
-#: config/arm/arm.c:635
+#: config/arm/arm.c:703
msgid "enabling backtrace support is only meaningful when compiling for the Thumb"
msgstr "autoriser le support de pistage arrière si seulement significatif lors de la compilation pour le Thumb"
-#: config/arm/arm.c:638
+#: config/arm/arm.c:706
msgid "enabling callee interworking support is only meaningful when compiling for the Thumb"
msgstr "autoriser le support d'inter-réseautage des appelés si seulement significatif lors de la compilation pour le Thumb"
-#: config/arm/arm.c:641
+#: config/arm/arm.c:709
msgid "enabling caller interworking support is only meaningful when compiling for the Thumb"
msgstr "autoriser le support d'inter-réseautage des appelants si seulement significatif lors de la compilation pour le Thumb"
-#: config/arm/arm.c:647
+#: config/arm/arm.c:715
msgid "interworking forces APCS-32 to be used"
msgstr "l'inter-réseautage force l'utilisation de APCS-32"
-#: config/arm/arm.c:653
+#: config/arm/arm.c:721
msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
msgstr "-mapcs-stack-check incompatible avec -mno-apcs-frame"
-#: config/arm/arm.c:661
+#: config/arm/arm.c:729
msgid "-fpic and -mapcs-reent are incompatible"
msgstr "-fpic et -mapcs-reent sont incompatibles"
-#: config/arm/arm.c:664
+#: config/arm/arm.c:732
msgid "APCS reentrant code not supported. Ignored"
msgstr "Code réentrant APCS n'est pas supporté. Ignoré"
-#: config/arm/arm.c:672
+#: config/arm/arm.c:740
msgid "-g with -mno-apcs-frame may not give sensible debugging"
msgstr "-g avec -mno-apcs-frame peut ne pas donner une mise au point sensée"
-#: config/arm/arm.c:680
+#: config/arm/arm.c:748
msgid "passing floating point arguments in fp regs not yet supported"
msgstr "passage d'argument en virgule flottante dans les registres FP n'est pas encore supporté"
-#: config/arm/arm.c:709
+#: config/arm/arm.c:792
#, c-format
msgid "invalid floating point emulation option: -mfpe-%s"
msgstr "option d'émulation en virgule flottante invalide: -mfpe-%s"
-#: config/arm/arm.c:733
+#: config/arm/arm.c:803
+msgid "-mfpe switch not supported by ep9312 target cpu - ignored."
+msgstr "opeion -mfpe n'est pas supportée par le processeur cible ep9312 - ignoré"
+
+#: config/arm/arm.c:823
msgid "structure size boundary can only be set to 8 or 32"
msgstr "taille des bornes de la structure peut seulement être 8 ou 32"
-#: config/arm/arm.c:741
+#: config/arm/arm.c:831
msgid "-mpic-register= is useless without -fpic"
msgstr "-mpic-register= est inutile sans -fpic"
-#: config/arm/arm.c:748
+#: config/arm/arm.c:838
#, c-format
msgid "unable to use '%s' for PIC register"
msgstr "incapable d'utiliser « %s » pour un registre PIC"
-#: config/arm/arm.c:2064 config/arm/arm.c:2087 config/avr/avr.c:4794
-#: config/c4x/c4x.c:4644 config/h8300/h8300.c:3667 config/i386/i386.c:1396
-#: config/i386/i386.c:1425 config/ip2k/ip2k.c:3224
-#: config/m68hc11/m68hc11.c:1267 config/mcore/mcore.c:3510
-#: config/ns32k/ns32k.c:1047 config/rs6000/rs6000.c:12538 config/sh/sh.c:5681
-#: config/sh/sh.c:5706 config/sh/sh.c:5745 config/stormy16/stormy16.c:2026
-#: config/v850/v850.c:2180
+#: config/arm/arm.c:2246 config/arm/arm.c:2264 config/avr/avr.c:4558
+#: config/c4x/c4x.c:4447 config/h8300/h8300.c:4257 config/i386/i386.c:1571
+#: config/i386/i386.c:1617 config/ip2k/ip2k.c:3169
+#: config/m68hc11/m68hc11.c:1227 config/m68k/m68k.c:333
+#: config/mcore/mcore.c:3375 config/ns32k/ns32k.c:1064
+#: config/rs6000/rs6000.c:14556 config/sh/sh.c:6737 config/sh/sh.c:6758
+#: config/sh/sh.c:6793 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173
#, c-format
msgid "`%s' attribute only applies to functions"
msgstr "attribut « %s » s'applique seulement aux fonctions"
-#: config/arm/arm.c:9459
+#: config/arm/arm.c:10573
msgid "unable to compute real location of stacked parameter"
msgstr "incapable de calculer la localisation réelle de la pile de paramètres"
-#: config/arm/arm.c:10138
+#. @@@ better error message
+#: config/arm/arm.c:11201 config/arm/arm.c:11238
+msgid "selector must be an immediate"
+msgstr "sélecteur doit être un immédiat"
+
+#. @@@ better error message
+#: config/arm/arm.c:11281 config/i386/i386.c:14219 config/i386/i386.c:14253
+msgid "mask must be an immediate"
+msgstr "masque doit être un immédiat"
+
+#: config/arm/arm.c:11976
msgid "no low registers available for popping high registers"
msgstr "pas de registre bas disponible pour faire ressortir les registres du haut"
-#: config/arm/arm.c:10389
+#: config/arm/arm.c:12226
msgid "interrupt Service Routines cannot be coded in Thumb mode"
msgstr "routines d'interruption de service ne peuvent être codées en mode THUMB"
-#: config/arm/pe.c:168 config/mcore/mcore.c:3358
-#, c-format
-msgid "initialized variable `%s' is marked dllimport"
-msgstr "variable initialisé « %s » est marquée dllimport"
+#: config/arm/pe.c:170 config/mcore/mcore.c:3241
+msgid "%Jinitialized variable '%D' is marked dllimport"
+msgstr "%Jvariable initialisé « %D » est marquée dllimport"
-#: config/arm/pe.c:177
-#, c-format
-msgid "static variable `%s' is marked dllimport"
-msgstr "variable static « %s » est marquée dllimport"
+#: config/arm/pe.c:179
+msgid "%Jstatic variable '%D' is marked dllimport"
+msgstr "%Jvariable statique « %D » est marquée dllimport"
-#: config/arm/arm.h:416
+#: config/arm/arm.h:450
msgid "Generate APCS conformant stack frames"
msgstr "Générer des trames de pile conformes à APCS"
-#: config/arm/arm.h:419
+#: config/arm/arm.h:453
msgid "Store function names in object code"
msgstr "Sotcker les noms de fonctions dans le code objet"
-#: config/arm/arm.h:423
+#: config/arm/arm.h:457
msgid "Use the 32-bit version of the APCS"
msgstr "Utilise la version 32 bts de APCS"
-#: config/arm/arm.h:425
+#: config/arm/arm.h:459
msgid "Use the 26-bit version of the APCS"
msgstr "Utiliser la version 26 bits de APCS"
-#: config/arm/arm.h:429
+#: config/arm/arm.h:463
msgid "Pass FP arguments in FP registers"
msgstr "Passer les arguments FP par les registres FP"
-#: config/arm/arm.h:432
+#: config/arm/arm.h:466
msgid "Generate re-entrant, PIC code"
msgstr "Générer du code PIC ré-entrant"
-#: config/arm/arm.h:435
+#: config/arm/arm.h:469
msgid "The MMU will trap on unaligned accesses"
msgstr "Le MMU va intercepter les accès mal alignés"
-#: config/arm/arm.h:442
+#: config/arm/arm.h:476
msgid "Use library calls to perform FP operations"
msgstr "Utiliser les appels de bibliothèque pour exécuter les opérations FP"
-#: config/arm/arm.h:444 config/i960/i960.h:281
+#: config/arm/arm.h:478 config/i960/i960.h:291
msgid "Use hardware floating point instructions"
msgstr "Utiliser les instructions matérielles en virgule flottante"
-#: config/arm/arm.h:446
+#: config/arm/arm.h:480
msgid "Assume target CPU is configured as big endian"
msgstr "Présumer que le processeur cible est un système à octets de poids fort"
-#: config/arm/arm.h:448
+#: config/arm/arm.h:482
msgid "Assume target CPU is configured as little endian"
msgstr "Présumer que le processeur cible est un système à octets de poids faible"
-#: config/arm/arm.h:450
+#: config/arm/arm.h:484
msgid "Assume big endian bytes, little endian words"
msgstr "Présumer un système à octets de poids fort pour les octets et faible pour les mots"
-#: config/arm/arm.h:452
+#: config/arm/arm.h:486
msgid "Support calls between Thumb and ARM instruction sets"
msgstr "Supporter les appels des jeux d'instructions THUMB et ARM"
-#: config/arm/arm.h:455
+#: config/arm/arm.h:489
msgid "Generate a call to abort if a noreturn function returns"
msgstr "Générer un appel pour stopper si une fonction sans retour retourne un résultat"
-#: config/arm/arm.h:458
+#: config/arm/arm.h:492
msgid "Do not move instructions into a function's prologue"
msgstr "Ne pas déplacer les instruction dans le prologue de fonction"
-#: config/arm/arm.h:461
+#: config/arm/arm.h:495
msgid "Do not load the PIC register in function prologues"
msgstr "Ne pas charger le registre PIC dans les prologue de fonction"
-#: config/arm/arm.h:464
+#: config/arm/arm.h:498
msgid "Generate call insns as indirect calls, if necessary"
msgstr "Générer l'appel insn comme un appel indirect, si nécessaire"
-#: config/arm/arm.h:467
+#: config/arm/arm.h:501
msgid "Compile for the Thumb not the ARM"
msgstr "Compiler pour le THUMB et non pas le ARM"
-#: config/arm/arm.h:471
+#: config/arm/arm.h:505
msgid "Thumb: Generate (non-leaf) stack frames even if not needed"
msgstr "Thumb: générer (non feuilles) trames de pile même si non nécessaire"
-#: config/arm/arm.h:474
+#: config/arm/arm.h:508
msgid "Thumb: Generate (leaf) stack frames even if not needed"
msgstr "Thumb : Générer (feuilles) trames de pile même si non nécessaire"
-#: config/arm/arm.h:477
+#: config/arm/arm.h:511
msgid "Thumb: Assume non-static functions may be called from ARM code"
msgstr "Thumb : Présumer que les fonctions non statiques peuvent être appelées du code ARM"
-#: config/arm/arm.h:481
+#: config/arm/arm.h:515
msgid "Thumb: Assume function pointers may go to non-Thumb aware code"
msgstr "Thumb : Présumer que les pointeurs de fonction peuvent tomber dans le code en dehors non sensible au Thumb"
-#: config/arm/arm.h:491
+#: config/arm/arm.h:519
+msgid "Cirrus: Place NOPs to avoid invalid instruction combinations"
+msgstr "Cirrus: insérer des NOP pour éviter un combinaison d'instructions invalides"
+
+#: config/arm/arm.h:521
+msgid "Cirrus: Do not break up invalid instruction combinations with NOPs"
+msgstr "Cirrus: ne pas briser la combinaison d'instructions invalides avec des NOP"
+
+#: config/arm/arm.h:529
msgid "Specify the name of the target CPU"
msgstr "Spécifier le nom du processeur cible"
-#: config/arm/arm.h:493
+#: config/arm/arm.h:531
msgid "Specify the name of the target architecture"
msgstr "Spécifier le nom de l'architecture cible"
-#: config/arm/arm.h:497
+#: config/arm/arm.h:535
msgid "Specify the version of the floating point emulator"
msgstr "Spécifier la version de l'émulateur en virgule flottante"
-#: config/arm/arm.h:499
+#: config/arm/arm.h:537
msgid "Specify the minimum bit alignment of structures"
msgstr "Spécifier le minimum de bits pour l'alignement de structures"
-#: config/arm/arm.h:501
+#: config/arm/arm.h:539
msgid "Specify the register to be used for PIC addressing"
msgstr "Spécifier le registre à utiliser pour l'adressage PIC"
@@ -9160,93 +8142,92 @@ msgstr "Spécifier le registre à utiliser pour l'adressage PIC"
msgid "Ignore dllimport attribute for functions"
msgstr "Ignorer l'attribut dllimport pour les fonctions"
-#: config/avr/avr.c:528
+#: config/avr/avr.c:514
#, c-format
msgid "large frame pointer change (%d) with -mtiny-stack"
msgstr "grand pointeur de trames change (%d) avec -mtiny-stack"
-#: config/avr/avr.c:1135
+#: config/avr/avr.c:1101
msgid "bad address, not (reg+disp):"
msgstr "adresse erronée, pas (reg+disp):"
-#: config/avr/avr.c:1143
+#: config/avr/avr.c:1109
msgid "internal compiler error. Bad address:"
msgstr "erreur internal du compilateur. Adresse erronée:"
-#: config/avr/avr.c:1156
+#: config/avr/avr.c:1122
msgid "internal compiler error. Unknown mode:"
msgstr "erreur internal du compilateur. Mode inconnu:"
-#: config/avr/avr.c:1864 config/avr/avr.c:2576
+#: config/avr/avr.c:1744 config/avr/avr.c:2405
msgid "invalid insn:"
msgstr "insn invalide:"
-#: config/avr/avr.c:1901 config/avr/avr.c:1987 config/avr/avr.c:2036
-#: config/avr/avr.c:2045 config/avr/avr.c:2143 config/avr/avr.c:2315
-#: config/avr/avr.c:2613 config/avr/avr.c:2724
+#: config/avr/avr.c:1778 config/avr/avr.c:1861 config/avr/avr.c:1910
+#: config/avr/avr.c:1919 config/avr/avr.c:2014 config/avr/avr.c:2183
+#: config/avr/avr.c:2439 config/avr/avr.c:2547
msgid "incorrect insn:"
msgstr "insn incoorect:"
-#: config/avr/avr.c:2064 config/avr/avr.c:2228 config/avr/avr.c:2386
-#: config/avr/avr.c:2768
+#: config/avr/avr.c:1938 config/avr/avr.c:2099 config/avr/avr.c:2254
+#: config/avr/avr.c:2591
msgid "unknown move insn:"
msgstr "insn de déplacement inconnu:"
-#: config/avr/avr.c:3003
+#: config/avr/avr.c:2814
msgid "bad shift insn:"
msgstr "décalage insn erroné:"
-#: config/avr/avr.c:3119 config/avr/avr.c:3549 config/avr/avr.c:3929
+#: config/avr/avr.c:2927 config/avr/avr.c:3348 config/avr/avr.c:3719
msgid "internal compiler error. Incorrect shift:"
msgstr "erreur internal du compilateur. Décalage incorrect:"
-#: config/avr/avr.c:4767 config/ip2k/ip2k.c:3197
+#: config/avr/avr.c:4532 config/ip2k/ip2k.c:3144
msgid "only initialized variables can be placed into program memory area"
msgstr "seules les variables initialisées peuvent être placées dans la zone mémoire du programme"
-#: config/avr/avr.c:4866
-#, fuzzy
+#: config/avr/avr.c:4626
msgid "only uninitialized variables can be placed in the .noinit section"
-msgstr "Seuls les variables initialisées peuvent être placées dans une aire de 8 bits"
+msgstr "seuls les variables non initialisées peuvent être placées dans une section .noinit"
-#: config/avr/avr.c:4881
-#, fuzzy, c-format
+#: config/avr/avr.c:4640
+#, c-format
msgid "MCU `%s' supported for assembler only"
-msgstr "MCU « %s » n'est pas supporté"
+msgstr "MCU « %s » est supporté pour l'assembleur seulement"
-#: config/avr/avr.h:78
+#: config/avr/avr.h:73
msgid "Assume int to be 8 bit integer"
msgstr "Présumer que les int sont des entiers de 8 bits"
-#: config/avr/avr.h:80
+#: config/avr/avr.h:75
msgid "Change the stack pointer without disabling interrupts"
msgstr "Changer le pointeur de pile sans désactiver les interruptions"
-#: config/avr/avr.h:82
+#: config/avr/avr.h:77
msgid "Use subroutines for function prologue/epilogue"
msgstr "Utiliser des sous-routines pour le prologue/epilogue de fonction"
-#: config/avr/avr.h:84
+#: config/avr/avr.h:79
msgid "Change only the low 8 bits of the stack pointer"
msgstr "Changer seulement les 8 bits du bas du pointeur de pile"
-#: config/avr/avr.h:86
+#: config/avr/avr.h:81
msgid "Do not generate tablejump insns"
msgstr "Ne pas générer les sauts de table insns"
-#: config/avr/avr.h:88
+#: config/avr/avr.h:83
msgid "Use rjmp/rcall (limited range) on >8K devices"
-msgstr ""
+msgstr "Utiliser rjpm/rcall (étendue limitée) sur des périphériques >8K"
-#: config/avr/avr.h:91
+#: config/avr/avr.h:85
msgid "Output instruction sizes to the asm file"
msgstr "Produire les tailles d'instructions dans le fichier asm"
-#: config/avr/avr.h:108
+#: config/avr/avr.h:102
msgid "Specify the initial stack address"
msgstr "Spécifier l'adresse initiale de la pile"
-#: config/avr/avr.h:109
+#: config/avr/avr.h:103
msgid "Specify the MCU name"
msgstr "Spécifier le nom du MCU"
@@ -9258,140 +8239,135 @@ msgstr "Spécifier le nom du MCU"
#. For instance, the SH target has only positive offsets in
#. addresses. Thus sorting to put the smallest address first allows
#. the most combinations to be found.
-#: config/avr/avr.h:2450
+#: config/avr/avr.h:2267
msgid "trampolines not supported"
msgstr "trampolines ne sont pas supportées"
-#: config/c4x/c4x-c.c:69
+#: config/c4x/c4x-c.c:71
#, c-format
msgid "missing '(' after '#pragma %s' - ignored"
msgstr "«(» manquante après «#pragma %s» - ignoré"
-#: config/c4x/c4x-c.c:72
+#: config/c4x/c4x-c.c:74
#, c-format
msgid "missing function name in '#pragma %s' - ignored"
msgstr "nom de fonction manquant dans «#pragma %s» - ignoré"
-#: config/c4x/c4x-c.c:77
+#: config/c4x/c4x-c.c:79
#, c-format
msgid "malformed '#pragma %s' - ignored"
msgstr "«#pragma %s» mal composé - ignoré"
-#: config/c4x/c4x-c.c:79
+#: config/c4x/c4x-c.c:81
#, c-format
msgid "missing section name in '#pragma %s' - ignored"
msgstr "nom de section manquant dans «#pragma %s» - ignoré"
-#: config/c4x/c4x-c.c:84
+#: config/c4x/c4x-c.c:86
#, c-format
msgid "missing ')' for '#pragma %s' - ignored"
msgstr "«)» manquante pour «#pragma %s» - ignoré"
-#: config/c4x/c4x-c.c:87
+#: config/c4x/c4x-c.c:89
#, c-format
msgid "junk at end of '#pragma %s'"
msgstr "rebut à la fin de «#pragma %s'"
-#: config/c4x/c4x.c:280
+#: config/c4x/c4x.c:300
#, c-format
msgid "unknown CPU version %d, using 40.\n"
msgstr "version de processeur %d inconnue, 40 est utilisé.\n"
-#: config/c4x/c4x.c:853
+#: config/c4x/c4x.c:850
#, c-format
msgid "ISR %s requires %d words of local vars, max is 32767"
msgstr "ISR %s requiert %d mots de var. locales, max est 32767."
-#: config/c4x/c4x.c:1602
+#: config/c4x/c4x.c:1571
msgid "using CONST_DOUBLE for address"
msgstr "CONST_DOUBLE utilisé pour l'adresse"
-#: config/c4x/c4x.c:1742
+#: config/c4x/c4x.c:1709
msgid "c4x_address_cost: Invalid addressing mode"
msgstr "c4x_address_cost: mode d'adressage invalide"
-#: config/c4x/c4x.c:1884
+#: config/c4x/c4x.c:1844
#, c-format
msgid "c4x_print_operand: %%L inconsistency"
msgstr "c4x_print_operand: %%L inconsistent"
-#: config/c4x/c4x.c:1890
+#: config/c4x/c4x.c:1850
#, c-format
msgid "c4x_print_operand: %%N inconsistency"
msgstr "c4x_print_operand: %%N inconsistent"
-#: config/c4x/c4x.c:1931
+#: config/c4x/c4x.c:1891
#, c-format
msgid "c4x_print_operand: %%O inconsistency"
msgstr "c4x_print_operand: %%O inconsisten"
-#: config/c4x/c4x.c:2026
+#: config/c4x/c4x.c:1986
msgid "c4x_print_operand: Bad operand case"
msgstr "c4x_print_operand: opérande erronée pour un case"
-#: config/c4x/c4x.c:2069
+#: config/c4x/c4x.c:2027
msgid "c4x_print_operand_address: Bad post_modify"
msgstr "c4x_print_operand_address: post-modification erronée"
-#: config/c4x/c4x.c:2091
+#: config/c4x/c4x.c:2049
msgid "c4x_print_operand_address: Bad pre_modify"
msgstr "c4x_print_operand_address: pré-modification erronée"
-#: config/c4x/c4x.c:2139 config/c4x/c4x.c:2151 config/c4x/c4x.c:2166
+#: config/c4x/c4x.c:2097 config/c4x/c4x.c:2109 config/c4x/c4x.c:2124
msgid "c4x_print_operand_address: Bad operand case"
msgstr "c4x_print_operand_address: opérande erronée pour un case"
-#: config/c4x/c4x.c:2422
+#: config/c4x/c4x.c:2375
msgid "c4x_rptb_insert: Cannot find start label"
msgstr "c4x_rptb_insert: ne peut repérer l'étiquette de départ"
-#: config/c4x/c4x.c:3409 config/c4x/c4x.c:3429
+#: config/c4x/c4x.c:3292 config/c4x/c4x.c:3310
msgid "mode not QImode"
msgstr "mode n'est pas QImode"
-#: config/c4x/c4x.c:3514
+#: config/c4x/c4x.c:3380
msgid "invalid indirect memory address"
msgstr "adresse mémoire d'indirection invalide"
-#: config/c4x/c4x.c:3603
+#: config/c4x/c4x.c:3469
msgid "invalid indirect (S) memory address"
msgstr "adresse mémoire (S) d'indirection invalide"
-#: config/c4x/c4x.c:3944
+#: config/c4x/c4x.c:3797
msgid "c4x_valid_operands: Internal error"
msgstr "c4x_valid_operands: erreur interne"
-#: config/c4x/c4x.c:4424
+#: config/c4x/c4x.c:4216
msgid "c4x_operand_subword: invalid mode"
msgstr "c4x_oprande_subword: mode invalide"
-#: config/c4x/c4x.c:4427
+#: config/c4x/c4x.c:4219
msgid "c4x_operand_subword: invalid operand"
msgstr "c4x_operand_subword: opérande invalide"
#. We could handle these with some difficulty.
#. e.g., *p-- => *(p-=2); *(p+1).
-#: config/c4x/c4x.c:4453
+#: config/c4x/c4x.c:4245
msgid "c4x_operand_subword: invalid autoincrement"
msgstr "c4x_operand_subword: autoincrement invalide"
-#: config/c4x/c4x.c:4459
+#: config/c4x/c4x.c:4251
msgid "c4x_operand_subword: invalid address"
msgstr "c4x_operand_subword: adresse invalide"
-#: config/c4x/c4x.c:4470
+#: config/c4x/c4x.c:4262
msgid "c4x_operand_subword: address not offsettable"
msgstr "c4x_operand_subword: un décalage d'adresse ne peut s'appliquer sur cette adresse"
-#: config/c4x/c4x.c:4670
+#: config/c4x/c4x.c:4472
msgid "c4x_rptb_rpts_p: Repeat block top label moved\n"
msgstr "c4x_rptb_rpts_p: étiquette supérieur de bloc de répétition déplacée\n"
-#. Name of the c4x assembler.
-#. Name of the c4x linker.
-#. Define assembler options.
-#. Define linker options.
-#. Specify the end file to link with.
#. Target compilation option flags.
#. Small memory model.
#. Use 24-bit MPYI for C3x.
@@ -9444,11 +8420,11 @@ msgstr "Ne pas utiliser les instructions MPYI pour C3x"
#: config/c4x/c4x.h:176
msgid "Use fast but approximate float to integer conversion"
-msgstr "Utiliser le mode rapide mais approprié de conversion de flottans à entiers"
+msgstr "Utiliser le mode rapide mais approximatif de conversion de flottant à entier"
#: config/c4x/c4x.h:178
msgid "Use slow but accurate float to integer conversion"
-msgstr "Utiliser le mode lent mais précis de conversion de flottans à entiers"
+msgstr "Utiliser le mode lent mais précis de conversion de flottant à entier"
#: config/c4x/c4x.h:180
msgid "Enable use of RTPS instruction"
@@ -9563,9 +8539,8 @@ msgid "Allow RTL generation to emit invalid 3 operand insns"
msgstr "Autoriser la génération RTL pour produire des opérandes insn 3 invalides"
#: config/c4x/c4x.h:240
-#, fuzzy
msgid "Allow unsigned iteration counts for RPTB/DB"
-msgstr "Autoriser un compteur non signé d'itération pour RPTB/DB"
+msgstr "Autoriser un compteur non signé d'itérations pour RPTB/DB"
#: config/c4x/c4x.h:242
msgid "Disallow unsigned iteration counts for RPTB/DB"
@@ -9611,158 +8586,158 @@ msgstr "Spécifier le nombre maximum d'itérations pour RPTS"
msgid "Select CPU to generate code for"
msgstr "Sélectionner le processeur pour lequel le code doit être généré"
-#: config/cris/cris.c:599
+#: config/cris/cris.c:597
msgid "unexpected index-type in cris_print_index"
msgstr "type d'index inattendu dans cris_print_index"
-#: config/cris/cris.c:615
+#: config/cris/cris.c:611
msgid "unexpected base-type in cris_print_base"
msgstr "type de base inattendu dans cris_print_base"
-#: config/cris/cris.c:908
+#: config/cris/cris.c:904
#, c-format
msgid "stackframe too big: %d bytes"
msgstr "trame de pile trop grande: %d octets"
-#: config/cris/cris.c:1223
+#: config/cris/cris.c:1215
msgid "allocated but unused delay list in epilogue"
msgstr "alloué mais liste de délai non utilisée dans l'épilogue"
-#: config/cris/cris.c:1233
+#: config/cris/cris.c:1225
msgid "unexpected function type needing stack adjustment for __builtin_eh_return"
msgstr "type de fonction inattendue ajustement de la pile nécessaire pour « __builtin_eh_return »"
-#: config/cris/cris.c:1312
+#: config/cris/cris.c:1301
msgid "invalid operand for 'b' modifier"
msgstr "opérande invalide pour le modificateur « b »"
-#: config/cris/cris.c:1324
+#: config/cris/cris.c:1314
msgid "invalid operand for 'v' modifier"
msgstr "opérande invalide pour le modificateur « v »"
-#: config/cris/cris.c:1334
+#: config/cris/cris.c:1324
msgid "invalid operand for 'P' modifier"
msgstr "opérande invalide pour le modificateur « P »"
-#: config/cris/cris.c:1341
+#: config/cris/cris.c:1331
msgid "invalid operand for 'p' modifier"
msgstr "opérande invalide pour le modificateur « p »"
-#: config/cris/cris.c:1380
+#: config/cris/cris.c:1370
msgid "invalid operand for 'z' modifier"
msgstr "opérande invalide pour le modificateur « z »"
-#: config/cris/cris.c:1411 config/cris/cris.c:1441
+#: config/cris/cris.c:1401 config/cris/cris.c:1431
msgid "invalid operand for 'H' modifier"
msgstr "opérande invalide pour le modificateur « H »"
-#: config/cris/cris.c:1417
+#: config/cris/cris.c:1407
msgid "bad register"
msgstr "registre erroné"
-#: config/cris/cris.c:1455
+#: config/cris/cris.c:1445
msgid "invalid operand for 'e' modifier"
msgstr "opérande invalide pour le modificateur « e »"
-#: config/cris/cris.c:1472
+#: config/cris/cris.c:1462
msgid "invalid operand for 'm' modifier"
msgstr "opérande invalide pour le modificateur « m »"
-#: config/cris/cris.c:1497
+#: config/cris/cris.c:1487
msgid "invalid operand for 'A' modifier"
msgstr "opérande invalide pour le modificateur « A »"
-#: config/cris/cris.c:1505
+#: config/cris/cris.c:1495
msgid "invalid operand for 'D' modifier"
msgstr "opérande invalide pour le modificateur « D »"
-#: config/cris/cris.c:1519
+#: config/cris/cris.c:1509
msgid "invalid operand for 'T' modifier"
msgstr "opérande invalide pour le modificateur « T »"
-#: config/cris/cris.c:1528
+#: config/cris/cris.c:1518
msgid "invalid operand modifier letter"
msgstr "opérande invalide pour le modificateur de lettre"
-#: config/cris/cris.c:1536
+#: config/cris/cris.c:1526
#, c-format
msgid "internal error: bad register: %d"
msgstr "erreur interne: registre erroné: %d"
-#: config/cris/cris.c:1584
+#: config/cris/cris.c:1574
msgid "unexpected multiplicative operand"
msgstr "opérande multiplicative inattendue"
-#: config/cris/cris.c:1604
+#: config/cris/cris.c:1594
msgid "unexpected operand"
msgstr "opérande inattendue"
-#: config/cris/cris.c:1639 config/cris/cris.c:1649
+#: config/cris/cris.c:1627 config/cris/cris.c:1637
msgid "unrecognized address"
msgstr "adresse non reconnue"
-#: config/cris/cris.c:2005
+#: config/cris/cris.c:1987
msgid "internal error: sideeffect-insn affecting main effect"
msgstr "erreur interne: effet de bord de insn sideeffect-insn ayant un effet principal"
#. If we get here, the caller got its initial tests wrong.
-#: config/cris/cris.c:2292
+#: config/cris/cris.c:2380
msgid "internal error: cris_side_effect_mode_ok with bad operands"
msgstr "erreur interne: cris_side_effect_mode_ok avec des opérandes erronées"
-#: config/cris/cris.c:2374 config/cris/cris.c:2432
+#: config/cris/cris.c:2457 config/cris/cris.c:2519
msgid "unrecognized supposed constant"
msgstr "supposée constante non reconnue"
-#: config/cris/cris.c:2473
+#: config/cris/cris.c:2564
msgid "unrecognized supposed constant in cris_global_pic_symbol"
msgstr "supposée constante non reconnue dans cris_global_pic_symbol"
-#: config/cris/cris.c:2492
+#: config/cris/cris.c:2583
#, c-format
msgid "-max-stackframe=%d is not usable, not between 0 and %d"
msgstr "-max-stackframe=%d n'est pas utilisable, n'est pas entre 0 et %d"
-#: config/cris/cris.c:2520
+#: config/cris/cris.c:2611
#, c-format
msgid "unknown CRIS version specification in -march= or -mcpu= : %s"
msgstr "spécification de version CRIS inconnue dans -march= ou -mcpu= : %s"
-#: config/cris/cris.c:2556
+#: config/cris/cris.c:2647
#, c-format
msgid "unknown CRIS cpu version specification in -mtune= : %s"
msgstr "spécification de version CRIS inconnue dans -mtune= : %s"
-#: config/cris/cris.c:2574
+#: config/cris/cris.c:2665
msgid "-fPIC and -fpic are not supported in this configuration"
msgstr "-fPIC et -fpic ne sont pas supportées par cette configuration"
-#: config/cris/cris.c:2590
+#: config/cris/cris.c:2681
msgid "that particular -g option is invalid with -maout and -melinux"
msgstr "l'option particulière -g est invalide avec -maout et -melinux"
-#: config/cris/cris.c:2824 config/cris/cris.c:2869
+#: config/cris/cris.c:2936 config/cris/cris.c:2981
msgid "unexpected side-effects in address"
msgstr "effets de bord inattendue dans l'adresse"
#. Labels are never marked as global symbols.
-#: config/cris/cris.c:2966 config/cris/cris.c:2997
+#: config/cris/cris.c:3076 config/cris/cris.c:3107
msgid "unexpected PIC symbol"
msgstr "symbole PIC inattendue"
-#: config/cris/cris.c:2970
+#: config/cris/cris.c:3080
msgid "PIC register isn't set up"
msgstr "le registre n'est pas initialisé"
-#: config/cris/cris.c:2983 config/cris/cris.c:3066
+#: config/cris/cris.c:3093 config/cris/cris.c:3176
msgid "unexpected address expression"
msgstr "expression d'adresse inattendue"
-#: config/cris/cris.c:3001
+#: config/cris/cris.c:3111
msgid "emitting PIC operand, but PIC register isn't set up"
msgstr "génération d'une opérande PIC mais le registre PIC n'est pas initialisé"
-#: config/cris/cris.c:3010
+#: config/cris/cris.c:3120
msgid "unexpected NOTE as addr_const:"
msgstr "NOTE inattendu comme addr_conts:"
@@ -9775,212 +8750,212 @@ msgid "For elinux, request a specified stack-size for this program"
msgstr "Pour elinux, faire la requête pour un taille de pile spécifique pour ce programme"
#. No "no-etrax" as it does not really imply any model. On the other hand, "etrax" implies the common (and large) subset matching all models.
-#: config/cris/cris.h:340
+#: config/cris/cris.h:334
msgid "Compile for ETRAX 4 (CRIS v3)"
msgstr "Compilé pour ETRAX 4 (CRIS v3)"
-#: config/cris/cris.h:345
+#: config/cris/cris.h:339
msgid "Compile for ETRAX 100 (CRIS v8)"
msgstr "Compile pour ETRAX 100 (CRIS v8)"
-#: config/cris/cris.h:349
+#: config/cris/cris.h:343
msgid "Emit verbose debug information in assembly code"
msgstr "Produire des informations de mise au point dans le code assemblé"
-#: config/cris/cris.h:352
+#: config/cris/cris.h:346
msgid "Do not use condition codes from normal instructions"
msgstr "Ne pas utiliser du code conditionnel pour des instructions normales"
-#: config/cris/cris.h:356
+#: config/cris/cris.h:350
msgid "Do not emit addressing modes with side-effect assignment"
msgstr "Ne pas produire de modes d'adressage avec des affectations avec effet de bord"
-#: config/cris/cris.h:359
+#: config/cris/cris.h:353
msgid "Do not tune stack alignment"
msgstr "Ne pas ajuster l'alignement de la pile"
-#: config/cris/cris.h:362
+#: config/cris/cris.h:356
msgid "Do not tune writable data alignment"
msgstr "Ne pas ajuster l'alignement les sections de données dynamiques"
-#: config/cris/cris.h:365
+#: config/cris/cris.h:359
msgid "Do not tune code and read-only data alignment"
msgstr "Ne pas ajuster l'alignement du code et des sections de données statiques"
-#: config/cris/cris.h:374
+#: config/cris/cris.h:368
msgid "Align code and data to 32 bits"
msgstr "Aligner le code et les données sur 32 bits"
-#: config/cris/cris.h:387
+#: config/cris/cris.h:381
msgid "Don't align items in code or data"
msgstr "Ne pas aligner les items dans le code ou les données"
-#: config/cris/cris.h:390
+#: config/cris/cris.h:384
msgid "Do not emit function prologue or epilogue"
msgstr "Ne pas générer de prologue ou d'épilogue de fonction"
#. We have to handle this m-option here since we can't wash it off in both CC1_SPEC and CC1PLUS_SPEC.
-#: config/cris/cris.h:394
+#: config/cris/cris.h:388
msgid "Use the most feature-enabling options allowed by other options"
msgstr "Utiliser le plus d'options autorisant autorisant des options permises par les autres options"
#. We must call it "override-" since calling it "no-" will cause gcc.c to forget it, if there's a "later" -mbest-lib-options. Kludgy, but needed for some multilibbed files.
-#: config/cris/cris.h:400
+#: config/cris/cris.h:394
msgid "Override -mbest-lib-options"
msgstr "Écraser -mbest-lib-options"
-#: config/cris/cris.h:432
+#: config/cris/cris.h:426
msgid "Generate code for the specified chip or CPU version"
msgstr "Générer le code pour la version de processeur ou de circuit spécifiée"
-#: config/cris/cris.h:434
+#: config/cris/cris.h:428
msgid "Tune alignment for the specified chip or CPU version"
msgstr "Ajuster l'alignement pour la version de processeur ou de circuit spécifiée"
-#: config/cris/cris.h:436
+#: config/cris/cris.h:430
msgid "Warn when a stackframe is larger than the specified size"
msgstr "Avertir lorsqu'une trame de pile est plus grande que la taille spécifiée"
#. Node: Profiling
-#: config/cris/cris.h:1022
+#: config/cris/cris.h:1016
msgid "no FUNCTION_PROFILER for CRIS"
msgstr "pas de FUNCTION_PROFILER pour CRIS"
-#: config/cris/linux.h:71
+#: config/cris/linux.h:69
msgid "Together with -fpic and -fPIC, do not use GOTPLT references"
msgstr "ensemble avec -fpic et -fPIC, ne pas utiliser les références GOTPLT"
-#: config/d30v/d30v.c:207
+#: config/d30v/d30v.c:218
#, c-format
msgid "bad modes_tieable_p for register %s, mode1 %s, mode2 %s"
msgstr "modes_tieable_p erronée pour le registre %s, mode1 %s, mode2 %s"
-#: config/d30v/d30v.c:2666
+#: config/d30v/d30v.c:2678
msgid "bad insn to d30v_print_operand_address:"
msgstr "insn erroné pour d30v_print_operand_addresse:"
-#: config/d30v/d30v.c:2683 config/d30v/d30v.c:2744 config/d30v/d30v.c:2765
-#: config/d30v/d30v.c:2783
+#: config/d30v/d30v.c:2695 config/d30v/d30v.c:2756 config/d30v/d30v.c:2777
+#: config/d30v/d30v.c:2795
msgid "bad insn to d30v_print_operand_memory_reference:"
msgstr "insn erroné pour d30v_print_operand_memory_reference:"
-#: config/d30v/d30v.c:2851
+#: config/d30v/d30v.c:2863
msgid "bad insn to d30v_print_operand, 'f' modifier:"
msgstr "insn erroné pour d30v_print_operand, modificateur « f »:"
-#: config/d30v/d30v.c:2860
+#: config/d30v/d30v.c:2872
msgid "bad insn to d30v_print_operand, 'A' modifier:"
msgstr "insn erroné pour d30v_print_operand, modificateur « A »:"
-#: config/d30v/d30v.c:2867
+#: config/d30v/d30v.c:2879
msgid "bad insn to d30v_print_operand, 'M' modifier:"
msgstr "insn erroné pour d30v_print_operand, modificateur « M »:"
-#: config/d30v/d30v.c:2921
+#: config/d30v/d30v.c:2933
msgid "bad insn to print_operand, 'F' or 'T' modifier:"
msgstr "insn erroné pour print_operand, modificateur « F » ou « T »:"
-#: config/d30v/d30v.c:2932
+#: config/d30v/d30v.c:2944
msgid "bad insn to print_operand, 'B' modifier:"
msgstr "insn erroné pour print_operand, modificateur « B »:"
-#: config/d30v/d30v.c:2939
+#: config/d30v/d30v.c:2951
msgid "bad insn to print_operand, 'E' modifier:"
msgstr "insn erroné pour print_operand, modificateur « E »:"
-#: config/d30v/d30v.c:2957
+#: config/d30v/d30v.c:2969
msgid "bad insn to print_operand, 'R' modifier:"
msgstr "insn erroné to print_operand, modificateur « R »:"
-#: config/d30v/d30v.c:2966 config/d30v/d30v.c:2974
+#: config/d30v/d30v.c:2978 config/d30v/d30v.c:2986
msgid "bad insn to print_operand, 's' modifier:"
msgstr "insn erroné to print_operand, modificateur « s »:"
-#: config/d30v/d30v.c:3003
+#: config/d30v/d30v.c:3015
msgid "bad insn in d30v_print_operand, 0 case"
msgstr "insn erroné dans d30v_print_operand, cas 0"
-#: config/d30v/d30v.c:3301
+#: config/d30v/d30v.c:3313
msgid "d30v_emit_comparison"
msgstr "d30v_emit_comparison"
-#: config/d30v/d30v.c:3345
+#: config/d30v/d30v.c:3357
msgid "bad call to d30v_move_2words"
msgstr "appel erroné à d30v_move_2words"
-#: config/d30v/d30v.h:114
+#: config/d30v/d30v.h:111
msgid "Enable use of conditional move instructions"
msgstr "Autoriser l'utilisation des instructions conditionnelles move"
-#: config/d30v/d30v.h:117
+#: config/d30v/d30v.h:114
msgid "Disable use of conditional move instructions"
msgstr "Interdire l'utilisation des instructions conditionnelles move"
-#: config/d30v/d30v.h:120
+#: config/d30v/d30v.h:117
msgid "Debug argument support in compiler"
msgstr "Mettre au point le support d'argument dans le compilateur"
-#: config/d30v/d30v.h:123
+#: config/d30v/d30v.h:120
msgid "Debug stack support in compiler"
msgstr "Mettre au point le support de la pile dans le compilateur"
-#: config/d30v/d30v.h:126
+#: config/d30v/d30v.h:123
msgid "Debug memory address support in compiler"
msgstr "Mettre au point le support d'adresses dans le compilateur"
-#: config/d30v/d30v.h:129
+#: config/d30v/d30v.h:126
msgid "Make adjacent short instructions parallel if possible"
msgstr "Rendre adjacentes les instructions short en instructions parallèles si possible"
-#: config/d30v/d30v.h:132
+#: config/d30v/d30v.h:129
msgid "Do not make adjacent short instructions parallel"
msgstr "Ne pas rendre adjacentes les instructions short en instructions parallèles"
-#: config/d30v/d30v.h:135 config/d30v/d30v.h:138
+#: config/d30v/d30v.h:132 config/d30v/d30v.h:135
msgid "Link programs/data to be in external memory by default"
msgstr "Faire l'édition de lien des programmes/données comme étant externe à la mémoire par défaut"
-#: config/d30v/d30v.h:141
+#: config/d30v/d30v.h:138
msgid "Link programs/data to be in onchip memory by default"
msgstr "Faire l'édition de lien des programmes/données comme étant interne dans la circuiterie de la mémoire par défaut"
-#: config/d30v/d30v.h:149
+#: config/d30v/d30v.h:146
msgid "Change the branch costs within the compiler"
msgstr "Changer les coûts de branchement à l'intérieur du compilateur"
-#: config/d30v/d30v.h:152
+#: config/d30v/d30v.h:149
msgid "Change the threshold for conversion to conditional execution"
msgstr "Changer le seuil pour la conversion en une exécution conditionnelle"
-#: config/dsp16xx/dsp16xx.c:1446 config/dsp16xx/dsp16xx.c:1469
+#: config/dsp16xx/dsp16xx.c:1463 config/dsp16xx/dsp16xx.c:1486
msgid "stack size > 32k"
msgstr "taille de la pile > 32k"
-#: config/dsp16xx/dsp16xx.c:1678
+#: config/dsp16xx/dsp16xx.c:1695
msgid "invalid addressing mode"
msgstr "mode d'adressage invalide"
-#: config/dsp16xx/dsp16xx.c:1821
+#: config/dsp16xx/dsp16xx.c:1838
msgid "bad register extension code"
msgstr "code d'extension de registre erroné"
-#: config/dsp16xx/dsp16xx.c:1921
+#: config/dsp16xx/dsp16xx.c:1938
msgid "invalid offset in ybase addressing"
msgstr "décalage invalide dans l'adresse ybase"
-#: config/dsp16xx/dsp16xx.c:1924
+#: config/dsp16xx/dsp16xx.c:1941
msgid "invalid register in ybase addressing"
msgstr "registre invalide dans l'adressage ybase"
-#: config/dsp16xx/dsp16xx.c:2099
+#: config/dsp16xx/dsp16xx.c:2116
msgid "invalid shift operator in emit_1600_core_shift"
msgstr "opérateur de décalage invalide dans emit_1600_core_shift"
-#: config/dsp16xx/dsp16xx.c:2428
+#: config/dsp16xx/dsp16xx.c:2406
msgid "invalid mode for gen_tst_reg"
msgstr "mode invalide pour gen_tst_reg"
-#: config/dsp16xx/dsp16xx.c:2500
+#: config/dsp16xx/dsp16xx.c:2478
msgid "invalid mode for integer comparison in gen_compare_reg"
msgstr "mode invalide pour la comparaison d'entiers dans gen_compare_reg"
@@ -10075,58 +9050,62 @@ msgstr "Spécifier un nom alternatif pour le cirsuit dsp16xx"
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/dsp16xx/dsp16xx.h:1218 config/dsp16xx/dsp16xx.h:1772
-#: config/dsp16xx/dsp16xx.h:1777
+#. This is how to output an insn to push a register on the stack.
+#. It need not be very fast code since it is used only for profiling
+#. This is how to output an insn to pop a register from the stack.
+#. It need not be very fast code since it is used only for profiling
+#: config/dsp16xx/dsp16xx.h:1216 config/dsp16xx/dsp16xx.h:1667
+#: config/dsp16xx/dsp16xx.h:1672
msgid "profiling not implemented yet"
msgstr "profilage n'est pas implanté encore"
#. Emit RTL insns to initialize the variable parts of a trampoline.
#. FNADDR is an RTX for the address of the function's pure code.
#. CXT is an RTX for the static chain value for the function.
-#: config/dsp16xx/dsp16xx.h:1228 config/dsp16xx/dsp16xx.h:1240
+#: config/dsp16xx/dsp16xx.h:1226 config/dsp16xx/dsp16xx.h:1238
msgid "trampolines not yet implemented"
msgstr "trampolines ne sont pas encore implantées"
-#: config/fr30/fr30.c:453
+#: config/fr30/fr30.c:451
msgid "fr30_print_operand_address: unhandled address"
msgstr "fr30_print_operand_address: adresse non traitée"
-#: config/fr30/fr30.c:480
+#: config/fr30/fr30.c:475
#, c-format
msgid "fr30_print_operand: unrecognized %%p code"
msgstr "fr30_print_operand: code %%p non reconnue"
-#: config/fr30/fr30.c:500
+#: config/fr30/fr30.c:495
#, c-format
msgid "fr30_print_operand: unrecognized %%b code"
msgstr "fr30_print_operand: code %%b non reconnue"
-#: config/fr30/fr30.c:521
+#: config/fr30/fr30.c:516
#, c-format
msgid "fr30_print_operand: unrecognized %%B code"
msgstr "fr30_print_operand: code %%B non reconnu"
-#: config/fr30/fr30.c:529
+#: config/fr30/fr30.c:524
#, c-format
msgid "fr30_print_operand: invalid operand to %%A code"
msgstr "fr30_print_operand: opérande invalide pour code %%A"
-#: config/fr30/fr30.c:546
+#: config/fr30/fr30.c:541
#, c-format
msgid "fr30_print_operand: invalid %%x code"
msgstr "fr30_print_operand: code %%x invalide"
-#: config/fr30/fr30.c:553
+#: config/fr30/fr30.c:548
#, c-format
msgid "fr30_print_operand: invalid %%F code"
msgstr "fr30_print_operand: code %%F invalide"
-#: config/fr30/fr30.c:570
+#: config/fr30/fr30.c:565
msgid "fr30_print_operand: unknown code"
msgstr "fr30_print_operand: code inconnu"
-#: config/fr30/fr30.c:599 config/fr30/fr30.c:608 config/fr30/fr30.c:619
-#: config/fr30/fr30.c:632
+#: config/fr30/fr30.c:594 config/fr30/fr30.c:603 config/fr30/fr30.c:614
+#: config/fr30/fr30.c:627
msgid "fr30_print_operand: unhandled MEM"
msgstr "fr30_print_operand: MEM non traité"
@@ -10134,156 +9113,138 @@ msgstr "fr30_print_operand: MEM non traité"
msgid "Assume small address space"
msgstr "Présumer un petit espace d'adressage"
-#: config/frv/frv.c:410 config/frv/frv.c:428
+#: config/frv/frv.c:392 config/frv/frv.c:410
#, c-format
msgid "Unknown cpu: -mcpu=%s"
msgstr "Processeur inconnu : -mcpu=%s"
-#: config/frv/frv.c:451
+#: config/frv/frv.c:433
msgid "-fpic and -gdwarf are incompatible (-fpic and -g/-gdwarf-2 are fine)"
msgstr "-fpic et -gdwarf sont incompatibles (-fpic et -g/-gdwarf-2 sont acceptables)"
-#: config/frv/frv.c:2520
+#: config/frv/frv.c:2397
msgid "Bad insn to frv_print_operand_address:"
msgstr "insn erroné pour frv_print_operand_addresse:"
-#: config/frv/frv.c:2533
-#, fuzzy
+#: config/frv/frv.c:2408
msgid "Bad register to frv_print_operand_memory_reference_reg:"
-msgstr "insn erroné pour d30v_print_operand_memory_reference:"
+msgstr "registre erroné pour frv_print_operand_memory_reference_reg:"
-#: config/frv/frv.c:2574 config/frv/frv.c:2584 config/frv/frv.c:2593
-#: config/frv/frv.c:2621 config/frv/frv.c:2633 config/frv/frv.c:2637
-#, fuzzy
+#: config/frv/frv.c:2446 config/frv/frv.c:2456 config/frv/frv.c:2465
+#: config/frv/frv.c:2493 config/frv/frv.c:2506 config/frv/frv.c:2510
msgid "Bad insn to frv_print_operand_memory_reference:"
-msgstr "insn erroné pour d30v_print_operand_memory_reference:"
+msgstr "insn erroné pour frv_print_operand_memory_reference:"
-#: config/frv/frv.c:2779
-#, fuzzy
+#: config/frv/frv.c:2648
msgid "Bad insn in frv_print_operand, bad const_double"
-msgstr "insn erroné dans d30v_print_operand, cas 0"
+msgstr "insn erroné dans frv_print_operand, bad const_double"
-#: config/frv/frv.c:2824
-#, fuzzy
+#: config/frv/frv.c:2693
msgid "Bad insn to frv_print_operand, 'C' modifier:"
-msgstr "insn erroné pour print_operand, modificateur « B »:"
+msgstr "insn erroné pour frv_print_operand, modificateur « C »:"
-#: config/frv/frv.c:2847
-#, fuzzy
+#: config/frv/frv.c:2716
msgid "Bad insn to frv_print_operand, 'c' modifier:"
-msgstr "insn erroné pour print_operand, modificateur « B »:"
+msgstr "insn erroné pour frv_print_operand, modificateur « c »:"
-#: config/frv/frv.c:2872
-#, fuzzy
+#: config/frv/frv.c:2741
msgid "Bad insn to frv_print_operand, 'e' modifier:"
-msgstr "insn erroné pour print_operand, modificateur « B »:"
+msgstr "insn erroné pour frv_print_operand, modificateur « e »:"
-#: config/frv/frv.c:2880
-#, fuzzy
+#: config/frv/frv.c:2749
msgid "Bad insn to frv_print_operand, 'F' modifier:"
-msgstr "insn erroné pour print_operand, modificateur « B »:"
+msgstr "insn erroné pour frv_print_operand, modificateur « F »:"
-#: config/frv/frv.c:2896
-#, fuzzy
+#: config/frv/frv.c:2765
msgid "Bad insn to frv_print_operand, 'f' modifier:"
-msgstr "insn erroné pour d30v_print_operand, modificateur « f »:"
+msgstr "insn erroné pour frv_print_operand, modificateur « f »:"
-#: config/frv/frv.c:2949
-#, fuzzy
+#: config/frv/frv.c:2818
msgid "Bad insn to frv_print_operand, 'L' modifier:"
-msgstr "insn erroné pour print_operand, modificateur « B »:"
+msgstr "insn erroné pour frv_print_operand, modificateur « L »:"
-#: config/frv/frv.c:2962
-#, fuzzy
+#: config/frv/frv.c:2831
msgid "Bad insn to frv_print_operand, 'M/N' modifier:"
-msgstr "insn erroné pour d30v_print_operand, modificateur « M »:"
+msgstr "insn erroné pour frv_print_operand, modificateur « M/N »:"
-#: config/frv/frv.c:2983
-#, fuzzy
+#: config/frv/frv.c:2852
msgid "Bad insn to frv_print_operand, 'O' modifier:"
-msgstr "insn erroné pour print_operand, modificateur « B »:"
+msgstr "insn erroné pour frv_print_operand, modificateur « O »:"
-#: config/frv/frv.c:3001
-#, fuzzy
+#: config/frv/frv.c:2870
msgid "Bad insn to frv_print_operand, P modifier:"
-msgstr "insn erroné pour print_operand, modificateur « B »:"
+msgstr "insn erroné pour frv_print_operand, modificateur « P »:"
-#: config/frv/frv.c:3021
-#, fuzzy
+#: config/frv/frv.c:2890
msgid "Bad insn in frv_print_operand, z case"
-msgstr "insn erroné dans d30v_print_operand, cas 0"
+msgstr "insn erroné dans frv_print_operand, case z"
-#: config/frv/frv.c:3049
-#, fuzzy
+#: config/frv/frv.c:2918
msgid "Bad insn in frv_print_operand, 0 case"
-msgstr "insn erroné dans d30v_print_operand, cas 0"
+msgstr "insn erroné dans frv_print_operand, case 0"
-#: config/frv/frv.c:3054
-#, fuzzy
+#: config/frv/frv.c:2923
msgid "frv_print_operand: unknown code"
-msgstr "fr30_print_operand: code inconnu"
+msgstr "frv_print_operand: code inconnu"
-#: config/frv/frv.c:5737
-#, fuzzy
+#: config/frv/frv.c:5474
msgid "Bad output_move_single operand"
-msgstr "output_move_single:"
+msgstr "opérande output_move_single erronée"
-#: config/frv/frv.c:5866
+#: config/frv/frv.c:5601
msgid "Bad output_move_double operand"
-msgstr ""
+msgstr "opérande output_move_double erronée"
-#: config/frv/frv.c:6010
-#, fuzzy
+#: config/frv/frv.c:5743
msgid "Bad output_condmove_single operand"
-msgstr "output_move_single:"
+msgstr "opérande output_condmove_single erronée"
-#: config/frv/frv.c:8315
+#: config/frv/frv.c:8031
msgid "frv_registers_update"
-msgstr ""
+msgstr "frv_registers_update"
-#: config/frv/frv.c:8475
+#: config/frv/frv.c:8188
msgid "frv_registers_used_p"
-msgstr ""
+msgstr "frv_registers_used_p"
-#: config/frv/frv.c:8604
+#: config/frv/frv.c:8314
msgid "frv_registers_set_p"
-msgstr ""
+msgstr "frv_registers_set_p"
-#: config/frv/frv.c:9171
-#, fuzzy
+#: config/frv/frv.c:8910
msgid "accumulator is not a constant integer"
-msgstr "argument de « asm » n'est pas une chaîne de constante"
+msgstr "accumulateur n'est pas une constante en entier"
-#: config/frv/frv.c:9176
+#: config/frv/frv.c:8915
msgid "accumulator number is out of bounds"
-msgstr ""
+msgstr "numéro de l'accumulateur est hors limite"
-#: config/frv/frv.c:9187
-#, fuzzy, c-format
+#: config/frv/frv.c:8926
+#, c-format
msgid "inappropriate accumulator for `%s'"
-msgstr "aucune déclaration précédente pour « %s »"
+msgstr "accumulateur inapproprié pour « %s »"
-#: config/frv/frv.c:9253
-#, fuzzy, c-format
+#: config/frv/frv.c:8986
+#, c-format
msgid "`%s' expects a constant argument"
-msgstr "l'attribut « %s » requiert un argument de type constante entière"
+msgstr "« %s » attend un argument de constante"
-#: config/frv/frv.c:9258
-#, fuzzy, c-format
+#: config/frv/frv.c:8991
+#, c-format
msgid "constant argument out of range for `%s'"
-msgstr "code de tache %ld hors gamme pour « %s »"
+msgstr "argument de constante hors limite pour « %s »"
-#: config/frv/frv.c:9638
+#: config/frv/frv.c:9338
msgid "media functions are not available unless -mmedia is used"
-msgstr ""
+msgstr "fonctions média ne sont pas disponibles à mois que -mmedia soit utilisé"
-#: config/frv/frv.c:9650
+#: config/frv/frv.c:9350
msgid "this media function is only available on the fr500"
-msgstr ""
+msgstr "cette fonction média est seulement disponible sur le fr500"
-#: config/frv/frv.c:9678
+#: config/frv/frv.c:9378
msgid "this media function is only available on the fr400"
-msgstr ""
+msgstr "cette fonction média est seulement disponible sur le fr400"
#. This macro is a C statement to print on `stderr' a string describing the
#. particular machine description choice. Every machine description should
@@ -10294,98 +9255,93 @@ msgstr ""
#. #else
#. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)");
#. #endif
-#: config/frv/frv.h:512
+#: config/frv/frv.h:506
+#, c-format
msgid " (frv)"
-msgstr ""
+msgstr " (frv)"
-#: config/h8300/h8300.c:314
+#: config/h8300/h8300.c:288
msgid "-ms2600 is used without -ms"
msgstr "-ms2600 est utilisé sans -ms"
-#: config/h8300/h8300.c:320
-#, fuzzy
+#: config/h8300/h8300.c:294
msgid "-mn is used without -mh or -ms"
-msgstr "-ms2600 est utilisé sans -ms"
+msgstr "-mm est utilisé sans -mh ou -ms"
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/h8300/h8300.h:150
-#, fuzzy
+#: config/h8300/h8300.h:145
msgid "Generate H8S code"
-msgstr "Générer du code H8/S"
+msgstr "Générer du code H8S"
-#: config/h8300/h8300.h:151
-#, fuzzy
+#: config/h8300/h8300.h:146
msgid "Do not generate H8S code"
-msgstr "Ne pas générer du code H8/S"
+msgstr "Ne pas générer du code H8S"
-#: config/h8300/h8300.h:152
-#, fuzzy
+#: config/h8300/h8300.h:147
msgid "Generate H8S/2600 code"
-msgstr "Générer du code H8/S2600"
+msgstr "Générer du code H8S/S2600"
-#: config/h8300/h8300.h:153
-#, fuzzy
+#: config/h8300/h8300.h:148
msgid "Do not generate H8S/2600 code"
-msgstr "Ne pas générer du code H8/S2600"
+msgstr "Ne pas générer du code H8S/2600"
-#: config/h8300/h8300.h:154
+#: config/h8300/h8300.h:149
msgid "Make integers 32 bits wide"
msgstr "Rendre les entiers larges de 32 bits"
-#: config/h8300/h8300.h:157
+#: config/h8300/h8300.h:152
msgid "Use registers for argument passing"
msgstr "Utiliser les registres pour le passage d'arguments"
-#: config/h8300/h8300.h:159
+#: config/h8300/h8300.h:154
msgid "Do not use registers for argument passing"
msgstr "Ne pas utiliser les registres pour le passage d'arguments"
-#: config/h8300/h8300.h:161
+#: config/h8300/h8300.h:156
msgid "Consider access to byte sized memory slow"
msgstr "Considérer l'accès mémoire lent pour la taille d'octets"
-#: config/h8300/h8300.h:162
+#: config/h8300/h8300.h:157
msgid "Enable linker relaxing"
-msgstr "Auoriser la rélâche par l'éditeur de liens"
+msgstr "Activer la rélâche par l'éditeur de liens"
-#: config/h8300/h8300.h:164
+#: config/h8300/h8300.h:158
msgid "Generate H8/300H code"
msgstr "Générer du code H8/300H"
-#: config/h8300/h8300.h:165
-#, fuzzy
+#: config/h8300/h8300.h:159
msgid "Enable the normal mode"
-msgstr "mode incompatible d'enregistrement"
+msgstr "Activer le mode normal"
-#: config/h8300/h8300.h:166
+#: config/h8300/h8300.h:160
msgid "Do not generate H8/300H code"
msgstr "Ne pas générer du code H8/300H"
-#: config/h8300/h8300.h:167
+#: config/h8300/h8300.h:161
msgid "Use H8/300 alignment rules"
msgstr "Utiliser les règles d'alignement H8/300"
-#: config/i370/i370-c.c:53
+#: config/i370/i370-c.c:55
msgid "junk at end of #pragma map"
msgstr "rebut à la fin de #pragma map"
-#: config/i370/i370-c.c:59
+#: config/i370/i370-c.c:61
msgid "malformed #pragma map, ignored"
msgstr "#pragma map mal composé, ignoré"
-#: config/i370/i370.c:915
+#: config/i370/i370.c:784
msgid "real name is too long - alias ignored"
msgstr "nom réel est trop long - alias ignoré"
-#: config/i370/i370.c:920
+#: config/i370/i370.c:789
msgid "alias name is too long - alias ignored"
msgstr "nom d'alias est trop long - alias ignoré"
-#: config/i370/i370.c:1191
+#: config/i370/i370.c:1060
msgid "internal error--no jump follows compare:"
msgstr "erreur interne--pas de saut suivant la comparaison:"
@@ -10401,407 +9357,453 @@ msgstr "Générer des instructions « char »"
msgid "Do not generate char instructions"
msgstr "Ne pas générer des instructions « char »"
-#: config/i386/i386.c:1050
+#: config/i386/i386.c:1161
#, c-format
msgid "code model %s not supported in PIC mode"
msgstr "model de code %s n'est pas supporté en mode PIC"
-#: config/i386/i386.c:1060 config/sparc/sparc.c:356
+#: config/i386/i386.c:1171 config/sparc/sparc.c:387
#, c-format
msgid "bad value (%s) for -mcmodel= switch"
msgstr "valeur erronée (%s) pour l'opton -mcmodel="
-#: config/i386/i386.c:1075
+#: config/i386/i386.c:1186
#, c-format
msgid "bad value (%s) for -masm= switch"
msgstr "valeur erronée (%s) pour l'option -masm"
-#: config/i386/i386.c:1078
+#: config/i386/i386.c:1189
#, c-format
msgid "code model `%s' not supported in the %s bit mode"
msgstr "model de code « %s » n'est pas supporté dans le mode %s bits"
-#: config/i386/i386.c:1081
+#: config/i386/i386.c:1192
msgid "code model `large' not supported yet"
msgstr "model de code « large » n'est pas supporté encore"
-#: config/i386/i386.c:1083
+#: config/i386/i386.c:1194
#, c-format
msgid "%i-bit mode not compiled in"
msgstr "mode %i bits pas compilé en"
-#: config/i386/i386.c:1113
+#: config/i386/i386.c:1221 config/i386/i386.c:1233
+msgid "CPU you selected does not support x86-64 instruction set"
+msgstr "le processeur sélectionné ne supporte pas le jeu d'instructions x86-64"
+
+#: config/i386/i386.c:1226 config/iq2000/iq2000.c:1840
#, c-format
msgid "bad value (%s) for -march= switch"
msgstr "valeur erronée (%s) pour l'option -march="
-#: config/i386/i386.c:1124
+#: config/i386/i386.c:1239
#, c-format
-msgid "bad value (%s) for -mcpu= switch"
-msgstr "valeur erronée (%s) pour l'option -mcpu="
+msgid "bad value (%s) for -mtune= switch"
+msgstr "valeur erronée (%s) pour l'option -mtune="
-#: config/i386/i386.c:1141
+#: config/i386/i386.c:1256
#, c-format
msgid "-mregparm=%d is not between 0 and %d"
msgstr "-mregparm=%d n'est pas entre 0 et %d"
-#: config/i386/i386.c:1154
+#: config/i386/i386.c:1269
msgid "-malign-loops is obsolete, use -falign-loops"
msgstr "-malign-loops est obsolète, utiliser -falign-loops"
-#: config/i386/i386.c:1159 config/i386/i386.c:1172 config/i386/i386.c:1185
+#: config/i386/i386.c:1274 config/i386/i386.c:1287 config/i386/i386.c:1300
#, c-format
msgid "-malign-loops=%d is not between 0 and %d"
msgstr "-malign-loops=%d n'est pas entre 0 et %d"
-#: config/i386/i386.c:1167
+#: config/i386/i386.c:1282
msgid "-malign-jumps is obsolete, use -falign-jumps"
msgstr "-malign-jumps est obsolète, utiliser -falign-loops"
-#: config/i386/i386.c:1180
+#: config/i386/i386.c:1295
msgid "-malign-functions is obsolete, use -falign-functions"
msgstr "-malign-functions est obsolète, utiliser -falign-loops"
-#: config/i386/i386.c:1218
+#: config/i386/i386.c:1333
#, c-format
msgid "-mpreferred-stack-boundary=%d is not between %d and 12"
msgstr "-mpreferred-stack-boundary=%d n'est pas entre %d et 12"
-#: config/i386/i386.c:1230
+#: config/i386/i386.c:1345
#, c-format
msgid "-mbranch-cost=%d is not between 0 and 5"
msgstr "-mbranch-cost=%d n'est pas entre 0 et 5"
-#: config/i386/i386.c:1242
-#, fuzzy, c-format
+#: config/i386/i386.c:1357
+#, c-format
msgid "bad value (%s) for -mtls-dialect= switch"
-msgstr "valeur erronée (%s) pour l'option -msdata"
+msgstr "valeur erronée (%s) pour l'option -mtls-dialect"
-#: config/i386/i386.c:1263
+#: config/i386/i386.c:1386
msgid "-malign-double makes no sense in the 64bit mode"
msgstr "-malign-double n'a aucun sens en mode 64 bits"
-#: config/i386/i386.c:1265
+#: config/i386/i386.c:1388
msgid "-mrtd calling convention not supported in the 64bit mode"
msgstr "la conversion d'appel -mrtd n'est pas supporté en mode 64 bits"
-#: config/i386/i386.c:1281 config/i386/i386.c:1292
+#: config/i386/i386.c:1410 config/i386/i386.c:1421
msgid "SSE instruction set disabled, using 387 arithmetics"
msgstr "jeu d'instructions SSE désactivé, arithmétique 387 est utilisé"
-#: config/i386/i386.c:1297
+#: config/i386/i386.c:1426
msgid "387 instruction set disabled, using SSE arithmetics"
msgstr "jeu d'instructions 387 désactivé, arithmétique SSE est utilisé"
-#: config/i386/i386.c:1304
+#: config/i386/i386.c:1433
#, c-format
msgid "bad value (%s) for -mfpmath= switch"
msgstr "valeur erronée (%s) pour l'option -mfpmath"
-#: config/i386/i386.c:1436
+#: config/i386/i386.c:1581 config/i386/i386.c:1592
+msgid "fastcall and stdcall attributes are not compatible"
+msgstr "les attributs fastcall et stdcall ne sont pas compatibles"
+
+#: config/i386/i386.c:1585 config/i386/i386.c:1641
+msgid "fastcall and regparm attributes are not compatible"
+msgstr "les attributs fastcall et regparm ne sont pas compatibles"
+
+#: config/i386/i386.c:1628
#, c-format
msgid "`%s' attribute requires an integer constant argument"
msgstr "l'attribut « %s » requiert un argument de type constante entière"
-#: config/i386/i386.c:1442
+#: config/i386/i386.c:1634
#, c-format
msgid "argument to `%s' attribute larger than %d"
msgstr "l'argument pour l'attribut « %s » est plus grand que %d"
-#: config/i386/i386.c:2504
+#: config/i386/i386.c:2593
+msgid "SSE vector argument without SSE enabled changes the ABI"
+msgstr "l'argument vecteur SSE sans autorisation SSE modifie l'ABI "
+
+#: config/i386/i386.c:2609
+msgid "MMX vector argument without MMX enabled changes the ABI"
+msgstr "l'argument vecteur SSE sans autorisation MXX modifie l'ABI "
+
+#: config/i386/i386.c:2837
msgid "SSE vector return without SSE enabled changes the ABI"
-msgstr ""
+msgstr "vecteur SSE retourné sans autorisation SSE des changements de l'ABI "
-#: config/i386/i386.c:6386
+#: config/i386/i386.c:6811
msgid "invalid UNSPEC as operand"
msgstr "UNSPEC invalide comme opérande"
-#: config/i386/i386.c:6648
+#: config/i386/i386.c:7069
msgid "extended registers have no high halves"
msgstr "registres étendus n'a pas de demis hauts"
-#: config/i386/i386.c:6663
+#: config/i386/i386.c:7084
msgid "unsupported operand size for extended register"
msgstr "taille d'opérande non supportée pour un registre étendu"
-#: config/i386/i386.c:6978
+#: config/i386/i386.c:7399
msgid "operand is neither a constant nor a condition code, invalid operand code 'c'"
msgstr "l'opérande n'est ni une constante ni du code de condition, code d'opérande invalide « c »"
-#: config/i386/i386.c:7024
+#: config/i386/i386.c:7445
#, c-format
msgid "invalid operand code `%c'"
msgstr "opérande invalide pour « %c »"
-#: config/i386/i386.c:7071
-#, fuzzy
+#: config/i386/i386.c:7488
msgid "invalid constraints for operand"
-msgstr "opérande %%c invalide"
+msgstr "contrainte invalide pour l'opérande"
-#: config/i386/i386.c:11271
+#: config/i386/i386.c:11889
msgid "unknown insn mode"
msgstr "mode insn inconnu"
-#. @@@ better error message
-#: config/i386/i386.c:13391 config/i386/i386.c:13427
-msgid "selector must be an immediate"
-msgstr "sélecteur doit être un immédiat"
-
-#. @@@ better error message
-#: config/i386/i386.c:13588 config/i386/i386.c:13622
-msgid "mask must be an immediate"
-msgstr "masque doit être un immédiat"
+#: config/i386/i386.c:14021 config/i386/i386.c:14057
+#, c-format
+msgid "selector must be an integer constant in the range 0..%i"
+msgstr "le sélecteur doit être une constante entière entre les bornes 0..%i"
-#: config/i386/i386.c:13654
-#, fuzzy
+#: config/i386/i386.c:14285
msgid "shift must be an immediate"
-msgstr "masque doit être un immédiat"
+msgstr "décalage doit être un immédiat"
-#: config/i386/winnt.c:96
-#, fuzzy, c-format
-msgid "function `%s' definition is marked dllimport."
-msgstr "définition de fonction déclaré « auto »"
+#: config/i386/i386.c:15308
+#, c-format
+msgid "`%s' incompatible attribute ignored"
+msgstr "attribut « %s » incompatible ignoré"
#: config/i386/winnt.c:104
-#, fuzzy, c-format
-msgid "variable `%s' definition is marked dllimport."
-msgstr "variable static « %s » est marquée dllimport"
+msgid "%Jfunction `%D' definition is marked dllimport."
+msgstr "%Jdéfinition de la fonction « %D » est marquée dllimport"
-#: config/i386/winnt.c:123
-#, c-format
-msgid "external linkage required for symbol '%s' because of '%s' attribute."
-msgstr ""
+#: config/i386/winnt.c:112
+msgid "%Jvariable `%D' definition is marked dllimport."
+msgstr "%Jdéfinition de la variable « %D » est marquée dllimport"
-#: config/i386/winnt.c:143
+#: config/i386/winnt.c:132
+msgid "%Jexternal linkage required for symbol '%D' because of '%s' attribute."
+msgstr "%Jédition de lien externe requise pour le symbole « %D » en raison de l'attribut « %s »"
+
+#: config/i386/winnt.c:149
#, c-format
msgid "`%s' attribute only applies to variables"
msgstr "attribut « %s » s'applique seulement aux variables"
-#: config/i386/winnt.c:242
-#, c-format
-msgid "function '%s' is defined after prior declaration as dllimport: attribute ignored."
-msgstr ""
+#: config/i386/winnt.c:247
+msgid "%Jfunction '%D' is defined after prior declaration as dllimport: attribute ignored"
+msgstr "%Jfonction « %D » est définie après un déclaration antérieure en tant que dllimport: attribut ignoré"
-#: config/i386/winnt.c:252
-#, fuzzy, c-format
-msgid "inline function '%s' is declared as dllimport: attribute ignored."
-msgstr "fonction « %s » redéclarée avec l'attribut noinline"
+#: config/i386/winnt.c:258
+msgid "%Jinline function '%D' is declared as dllimport: attribute ignored."
+msgstr "%Jfonction enligne « %D » est déclarée en tant que dllimport: attribut ignoré."
-#: config/i386/winnt.c:263
-#, c-format
-msgid "definition of static data member '%s' of dllimport'd class."
-msgstr ""
+#: config/i386/winnt.c:270
+msgid "%Jdefinition of static data member '%D' of dllimport'd class."
+msgstr "%Jdéfinition d'un membre statique de données « %D » de la classe dllimport"
-#: config/i386/winnt.c:322
-#, c-format
-msgid "inconsistent dll linkage for '%s': dllexport assumed."
-msgstr ""
+#: config/i386/winnt.c:329
+msgid "%Jinconsistent dll linkage for '%D', dllexport assumed."
+msgstr "%Jédition de lien dll inconsistent pour « %D »: dllexport assumé."
-#: config/i386/winnt.c:364
+#: config/i386/winnt.c:371
#, c-format
msgid "`%s' declared as both exported to and imported from a DLL"
msgstr "« %s » déclaré à la fois comme exporté et importé d'une DLL"
-#: config/i386/winnt.c:373
-#, c-format
-msgid "failure in redeclaration of '%s': dllimport'd symbol lacks external linkage."
-msgstr ""
+#: config/i386/winnt.c:380
+msgid "%Jfailure in redeclaration of '%D': dllimport'd symbol lacks external linkage."
+msgstr "%Jéchec dans la redéclation de « %D »: symbol dllimporté manque de liens externes."
-#: config/i386/winnt.c:479
-#, c-format
-msgid "'%s' %s after being referenced with dllimport linkage."
-msgstr ""
+#: config/i386/winnt.c:529
+msgid "%J'%D' defined locally after being referenced with dllimport linkage"
+msgstr "%J« %D » défini localement après avoir été référencé avec lien dllimport."
+
+#: config/i386/winnt.c:532
+msgid "%J'%D' redeclared without dllimport attribute after being referenced with dllimport linkage"
+msgstr "%J« %D » redéclaré sans attribut dllimport après avoir été référencé avec lien dllimport."
+
+#: config/i386/winnt.c:701
+msgid "%J'%D' causes a section type conflict"
+msgstr "%J« %D » cause un conflit du type de section"
-#: config/i386/cygwin.h:45
+#: config/i386/cygming.h:40
msgid "Use the Cygwin interface"
msgstr "Utiliser l'interface Cygwin"
-#: config/i386/cygwin.h:46
+#: config/i386/cygming.h:41
msgid "Use the Mingw32 interface"
msgstr "Utiliser l'interface Mingw32"
-#: config/i386/cygwin.h:47
+#: config/i386/cygming.h:42
msgid "Create GUI application"
msgstr "Créer une application de type GUI"
-#: config/i386/cygwin.h:48
+#: config/i386/cygming.h:43
msgid "Don't set Windows defines"
msgstr "Ne pas initialiser les définitions Windows"
-#: config/i386/cygwin.h:49
+#: config/i386/cygming.h:44
msgid "Set Windows defines"
msgstr "Initialiser les définitions Windows"
-#: config/i386/cygwin.h:50
+#: config/i386/cygming.h:45
msgid "Create console application"
msgstr "Créer une application de type console"
-#: config/i386/cygwin.h:51 config/i386/win32.h:59
+#: config/i386/cygming.h:46
msgid "Generate code for a DLL"
msgstr "Générer le code pour un DLL"
-#: config/i386/cygwin.h:53 config/i386/win32.h:61
+#: config/i386/cygming.h:48
msgid "Ignore dllimport for functions"
msgstr "Ignorer dllimport pour fonctions"
-#: config/i386/cygwin.h:55
+#: config/i386/cygming.h:50
msgid "Use Mingw-specific thread support"
msgstr "Utilise le support de thread spécifique à Mingw"
-#: config/i386/cygwin.h:245
+#: config/i386/cygming.h:169
#, c-format
msgid "-f%s ignored for target (all code is position independent)"
msgstr "-f%s ignoré pour la cible (tout le code set indépendant de la position)"
-#: config/i386/djgpp.h:206
+#: config/i386/djgpp.h:191
msgid "-mbnu210 is ignored (option is obsolete)"
msgstr "-mbnu210 est ignoré (option obsolète)"
+#: config/i386/i386-interix.h:256
+msgid "ms-bitfields not supported for objc"
+msgstr "ms-bitfields n'est pas supporté pour objc"
+
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
-#: config/i386/i386.h:306
+#: config/i386/i386.h:339
msgid "Alternate calling convention"
msgstr "Convention alternative d'appels"
-#: config/i386/i386.h:308 config/m68k/m68k.h:180 config/ns32k/ns32k.h:144
+#: config/i386/i386.h:341 config/m68k/m68k.h:344 config/ns32k/ns32k.h:144
msgid "Use normal calling convention"
msgstr "Utiliser la convention normale d'appels"
-#: config/i386/i386.h:310
+#: config/i386/i386.h:343
msgid "Align some doubles on dword boundary"
msgstr "Aligner quelques doubles sur des frontières de mots doubles"
-#: config/i386/i386.h:312
+#: config/i386/i386.h:345
msgid "Align doubles on word boundary"
msgstr "Aligner les doubles sur des frontières de mots"
-#: config/i386/i386.h:314
+#: config/i386/i386.h:347
msgid "Uninitialized locals in .bss"
msgstr "Var. locales non initialisées dans .bss"
-#: config/i386/i386.h:316
+#: config/i386/i386.h:349
msgid "Uninitialized locals in .data"
msgstr "Var. locales non initialisées dans .data"
-#: config/i386/i386.h:318 config/m68k/linux-aout.h:45 config/m68k/linux.h:50
-#: config/ns32k/ns32k.h:167
+#: config/i386/i386.h:351 config/m68k/linux.h:35 config/ns32k/ns32k.h:167
msgid "Use IEEE math for fp comparisons"
msgstr "Utiliser les mathématiques IEEE pour les comparaisons FP"
-#: config/i386/i386.h:320 config/ns32k/ns32k.h:169
+#: config/i386/i386.h:353 config/ns32k/ns32k.h:169
msgid "Do not use IEEE math for fp comparisons"
msgstr "Ne pas utiliser les mathématiques IEEE pour les comparaisons FP"
-#: config/i386/i386.h:322
+#: config/i386/i386.h:355
msgid "Return values of functions in FPU registers"
msgstr "Retourner les valeurs de fonctions dans les registres FPU"
-#: config/i386/i386.h:324
+#: config/i386/i386.h:357
msgid "Do not return values of functions in FPU registers"
msgstr "Ne pas retourner les valeurs de fonctions dans les registres FPU"
-#: config/i386/i386.h:326
+#: config/i386/i386.h:359
msgid "Do not generate sin, cos, sqrt for FPU"
msgstr "Ne pas générer sin, cos, sqrt pour le FPU"
-#: config/i386/i386.h:328
+#: config/i386/i386.h:361
msgid "Generate sin, cos, sqrt for FPU"
msgstr "Générer sin, cos, sqrt pour le FPU"
-#: config/i386/i386.h:330
+#: config/i386/i386.h:363
msgid "Omit the frame pointer in leaf functions"
msgstr "Omettre le pointeur de trame dans les fonctions feuilles"
-#: config/i386/i386.h:333
+#: config/i386/i386.h:366
msgid "Enable stack probing"
msgstr "Autoriser le sondage de la pile"
#. undocumented
#. undocumented
-#: config/i386/i386.h:338
+#: config/i386/i386.h:371
msgid "Align destination of the string operations"
msgstr "Aligner la destination des opérations sur les chaînes"
-#: config/i386/i386.h:340
+#: config/i386/i386.h:373
msgid "Do not align destination of the string operations"
msgstr "Ne pas aligner la destination des opérations sur les chaînes"
-#: config/i386/i386.h:342
+#: config/i386/i386.h:375
msgid "Inline all known string operations"
msgstr "Permettre l'enlignage dans toutes les opérations portant sur les chaînes"
-#: config/i386/i386.h:344
+#: config/i386/i386.h:377
msgid "Do not inline all known string operations"
msgstr "Ne pas permettre l'enlignage dans toutes les opérations portant sur les chaînes"
-#: config/i386/i386.h:346 config/i386/i386.h:350
+#: config/i386/i386.h:379 config/i386/i386.h:383
msgid "Use push instructions to save outgoing arguments"
msgstr "Utiliser les instructions push pour sauvegardes les arguments sortants"
-#: config/i386/i386.h:348 config/i386/i386.h:352
+#: config/i386/i386.h:381 config/i386/i386.h:385
msgid "Do not use push instructions to save outgoing arguments"
msgstr "Ne pas utiliser les instructions push pour sauvegardes les arguments sortants"
-#: config/i386/i386.h:354
+#: config/i386/i386.h:387
msgid "Support MMX built-in functions"
msgstr "Supporte les fonctions internes MMX"
-#: config/i386/i386.h:356
+#: config/i386/i386.h:389
msgid "Do not support MMX built-in functions"
msgstr "Ne supporte pas les fonctions internes MMX"
-#: config/i386/i386.h:358
+#: config/i386/i386.h:391
msgid "Support 3DNow! built-in functions"
msgstr "Supporte les fonctions internes 3DNOW!"
-#: config/i386/i386.h:360
+#: config/i386/i386.h:393
msgid "Do not support 3DNow! built-in functions"
msgstr "Ne supporte pas les fonctions internes 3DNOW!"
-#: config/i386/i386.h:362
+#: config/i386/i386.h:395
msgid "Support MMX and SSE built-in functions and code generation"
msgstr "Supporte les fonctions internes MMX et SSE et la génération de code"
-#: config/i386/i386.h:364
+#: config/i386/i386.h:397
msgid "Do not support MMX and SSE built-in functions and code generation"
msgstr "Ne supporte pas les fonctions internes MMX et SSE et la génération de code"
-#: config/i386/i386.h:366
+#: config/i386/i386.h:399
msgid "Support MMX, SSE and SSE2 built-in functions and code generation"
msgstr "Supporte les fonctions internes MMX, SSE et SSE2 et la génération de code"
-#: config/i386/i386.h:368
+#: config/i386/i386.h:401
msgid "Do not support MMX, SSE and SSE2 built-in functions and code generation"
msgstr "Ne supporte pas les fonctions internes MMX, SSE et SSE2 et la génération de code"
-#: config/i386/i386.h:370
+#: config/i386/i386.h:403
+msgid "Support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr "Supporte les fonctions internes MMX, SSE, SSE2 et PNI et la génération de code"
+
+#: config/i386/i386.h:405
+msgid "Do not support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr "Ne supporte pas les fonctions internes MMX, SSE, SSE2 et PNI et la génération de code"
+
+#: config/i386/i386.h:407
msgid "sizeof(long double) is 16"
msgstr "sizeof(long double) est 16"
-#: config/i386/i386.h:372
+#: config/i386/i386.h:409
msgid "sizeof(long double) is 12"
msgstr "sizeof(long double) est 12"
-#: config/i386/i386.h:374
+#: config/i386/i386.h:411
msgid "Generate 64bit x86-64 code"
msgstr "Générer du code 64 bits pour x86-64"
-#: config/i386/i386.h:376
+#: config/i386/i386.h:413
msgid "Generate 32bit i386 code"
msgstr "Générer du code 32 bits pour i386"
-#: config/i386/i386.h:378
+#: config/i386/i386.h:415
+msgid "Use native (MS) bitfield layout"
+msgstr "Utiliser une configuration de champ de bits native (MS)"
+
+#: config/i386/i386.h:417
+msgid "Use gcc default bitfield layout"
+msgstr "Utiliser la configuration par défaut de gcc pour les champs de bits"
+
+#: config/i386/i386.h:419
msgid "Use red-zone in the x86-64 code"
msgstr "Utiliser la zone-rouge pour le code x86-64"
-#: config/i386/i386.h:380
+#: config/i386/i386.h:421
msgid "Do not use red-zone in the x86-64 code"
msgstr "Ne pas utiliser la zone-rouge pour le code x86-64"
+#: config/i386/i386.h:423
+#, c-format
+msgid "Use direct references against %gs when accessing tls data"
+msgstr "Utiliser la référence directe envers %gs lors de l'accès des données tls"
+
+#: config/i386/i386.h:425
+#, c-format
+msgid "Do not use direct references against %gs when accessing tls data"
+msgstr "Ne pas utiliser la référence directe envers %gs lors de l'accès des données tls"
+
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10811,23 +9813,24 @@ msgstr "Ne pas utiliser la zone-rouge pour le code x86-64"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:409 config/rs6000/rs6000.h:393 config/sparc/sparc.h:635
+#: config/i386/i386.h:459 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437
+#: config/s390/s390.h:146 config/sparc/sparc.h:650
msgid "Schedule code for given CPU"
msgstr "Ordonnancer le code pour le processeur donné"
-#: config/i386/i386.h:411
+#: config/i386/i386.h:461
msgid "Generate floating point mathematics using given instruction set"
msgstr "Générer les mathématiques en virgule flottante avec le jeu d'instructions données"
-#: config/i386/i386.h:413
+#: config/i386/i386.h:463 config/s390/s390.h:148
msgid "Generate code for given CPU"
msgstr "Générer le code pour le processeur donné"
-#: config/i386/i386.h:415
+#: config/i386/i386.h:465
msgid "Number of registers used to pass integer arguments"
msgstr "Nombre de registres utilisés pour passer les arguments entiers"
-#. TARGET_DEFAULT is defined in sun*.h and isi.h, etc.
+#. TARGET_DEFAULT is defined in m68k-none.h, netbsd.h, etc.
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10837,98 +9840,98 @@ msgstr "Nombre de registres utilisés pour passer les arguments entiers"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:417 config/m68k/m68k.h:263
+#: config/i386/i386.h:467 config/m68k/m68k.h:360
msgid "Loop code aligned to this power of 2"
msgstr "Codes de boucles alignés selon une puissance de 2"
-#: config/i386/i386.h:419 config/m68k/m68k.h:265
+#: config/i386/i386.h:469 config/m68k/m68k.h:362
msgid "Jump targets are aligned to this power of 2"
msgstr "Sauts de cibles alignés selon une puissance de 2"
-#: config/i386/i386.h:421 config/m68k/m68k.h:267
+#: config/i386/i386.h:471 config/m68k/m68k.h:364
msgid "Function starts are aligned to this power of 2"
msgstr "Débuts des fonction alignés selon une puissance de 2"
-#: config/i386/i386.h:424
+#: config/i386/i386.h:474
msgid "Attempt to keep stack aligned to this power of 2"
msgstr "Tentative de conservation de la pile alignée selon une puissance de 2"
-#: config/i386/i386.h:426
+#: config/i386/i386.h:476
msgid "Branches are this expensive (1-5, arbitrary units)"
msgstr "Branchements coûteux à ce point (1-4, unités arbitraires)"
-#: config/i386/i386.h:428
+#: config/i386/i386.h:478
msgid "Use given x86-64 code model"
msgstr "Utiliser le modèle de x86-64 donné"
#. Undocumented.
#. Undocumented.
-#: config/i386/i386.h:434
+#: config/i386/i386.h:484
msgid "Use given assembler dialect"
msgstr "Utiliser la syntaxe de l'assembleur donné"
-#: config/i386/i386.h:436
-#, fuzzy
+#: config/i386/i386.h:486
msgid "Use given thread-local storage dialect"
-msgstr "Utiliser la syntaxe de l'assembleur donné"
+msgstr "Utiliser le dialecte de stockage du thread local fourni"
-#: config/i386/sco5.h:297
+#: config/i386/sco5.h:292
msgid "Generate ELF output"
msgstr "Générer la sortie ELF"
-#: config/i386/win32.h:53
-msgid "Use Mingw32 interface"
-msgstr "Utiliser l'interface Mingw32"
-
-#: config/i386/win32.h:55
-msgid "Use Cygwin interface"
-msgstr "Utiliser l'interface Cygwin"
-
-#: config/i386/win32.h:57
-msgid "Use bare Windows interface"
-msgstr "Utiliser l'interface brute Windows"
-
#. If the environment variable DJDIR is not defined, then DJGPP is not installed correctly and GCC will quickly become confused with the default prefix settings. Report the problem now so the user doesn't receive deceptive "file not found" error messages later.
#. DJDIR is automatically defined by the DJGPP environment config file pointed to by the environment variable DJGPP. Examine DJGPP to try and figure out what's wrong.
-#: config/i386/xm-djgpp.h:71
+#: config/i386/xm-djgpp.h:64
msgid "environment variable DJGPP not defined"
msgstr "variable d'environment DJGPP non définie"
-#: config/i386/xm-djgpp.h:73
+#: config/i386/xm-djgpp.h:66
#, c-format
msgid "environment variable DJGPP points to missing file '%s'"
msgstr "variable d'environment DJGPP pointe sur un fichier manquant « %s »"
-#: config/i386/xm-djgpp.h:76
+#: config/i386/xm-djgpp.h:69
#, c-format
msgid "environment variable DJGPP points to corrupt file '%s'"
msgstr "variable d'environment DJGPP pointe vers un fichier corrompu « %s »"
-#: config/i960/i960-c.c:66
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/i860/i860.h:60
+msgid "Generate code which uses the FPU"
+msgstr "Générer du code qui utilise le FPU"
+
+#: config/i860/i860.h:61 config/i860/i860.h:62
+msgid "Do not generate code which uses the FPU"
+msgstr "Ne pas générer du code qui utilise le FPU"
+
+#: config/i960/i960-c.c:68
msgid "sorry, not implemented: #pragma align NAME=SIZE"
msgstr "désolé, pas implanté: #pragma align NOM=TAILLE"
-#: config/i960/i960-c.c:71
+#: config/i960/i960-c.c:73
msgid "malformed #pragma align - ignored"
msgstr "#pragma align mal composé - ignoré"
-#: config/i960/i960-c.c:109
+#: config/i960/i960-c.c:111
msgid "sorry, not implemented: #pragma noalign NAME"
msgstr "désolé, pas implanté: #pragma noalign NOM"
-#: config/i960/i960.c:121 config/i960/i960.c:131
+#: config/i960/i960.c:134 config/i960/i960.c:144
msgid "conflicting architectures defined - using C series"
msgstr "architectures conflictuelles définies - utilise les séries C"
-#: config/i960/i960.c:126
+#: config/i960/i960.c:139
msgid "conflicting architectures defined - using K series"
msgstr "architectures conflictuelles définies - utilise les séries K"
-#: config/i960/i960.c:141
+#: config/i960/i960.c:154
msgid "iC2.0 and iC3.0 are incompatible - using iC3.0"
msgstr "iC2.0 et iC3.0 sont incompatibles - utilise iC3.0"
-#: config/i960/i960.c:1448 config/m68k/m68k.c:559 config/rs6000/rs6000.c:9976
+#: config/i960/i960.c:1456 config/m68k/m68k.c:588 config/rs6000/rs6000.c:11296
msgid "stack limit expression is not supported"
msgstr "expression limitant la pile n'est pas supportée"
@@ -10939,402 +9942,536 @@ msgstr "expression limitant la pile n'est pas supportée"
#. An empty string NAME is used to identify the default VALUE.
#. ??? Not all ten of these architecture variations actually exist, but I
#. am not sure which are real and which aren't.
-#: config/i960/i960.h:240
+#: config/i960/i960.h:250
msgid "Generate SA code"
msgstr "Générer du code SA"
-#: config/i960/i960.h:243
+#: config/i960/i960.h:253
msgid "Generate SB code"
msgstr "Générer du code SB"
#. {"sc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate SC code")},
-#: config/i960/i960.h:248
+#: config/i960/i960.h:258
msgid "Generate KA code"
msgstr "Générer du code KA"
-#: config/i960/i960.h:251
+#: config/i960/i960.h:261
msgid "Generate KB code"
msgstr "Générer du code KB"
#. {"kc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate KC code")},
-#: config/i960/i960.h:256
+#: config/i960/i960.h:266
msgid "Generate JA code"
msgstr "Générer du code JA"
-#: config/i960/i960.h:258
+#: config/i960/i960.h:268
msgid "Generate JD code"
msgstr "Générer du code JD"
-#: config/i960/i960.h:261
+#: config/i960/i960.h:271
msgid "Generate JF code"
msgstr "Générer du code JF"
-#: config/i960/i960.h:263
+#: config/i960/i960.h:273
msgid "generate RP code"
msgstr "Générer du code RP"
-#: config/i960/i960.h:266
+#: config/i960/i960.h:276
msgid "Generate MC code"
msgstr "Générer du code MC"
-#: config/i960/i960.h:269
+#: config/i960/i960.h:279
msgid "Generate CA code"
msgstr "Générer du code CA"
#. {"cb", (TARGET_FLAG_NUMERICS|TARGET_FLAG_C_SERIES| TARGET_FLAG_BRANCH_PREDICT|TARGET_FLAG_CODE_ALIGN), N_("Generate CB code")}, {"cc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_C_SERIES|TARGET_FLAG_BRANCH_PREDICT| TARGET_FLAG_CODE_ALIGN), N_("Generate CC code")},
-#: config/i960/i960.h:279
+#: config/i960/i960.h:289
msgid "Generate CF code"
msgstr "Générer du code CF"
-#: config/i960/i960.h:283 config/mips/mips.h:568 config/pa/pa.h:266
+#: config/i960/i960.h:293 config/mips/mips.h:539 config/pa/pa.h:266
msgid "Use software floating point"
msgstr "Utiliser le traitement par logiciel des nombres flottants"
-#: config/i960/i960.h:285
+#: config/i960/i960.h:295
msgid "Use alternate leaf function entries"
msgstr "Utiliser les entrées alternatives pour les fonctions de feuilles"
-#: config/i960/i960.h:287
+#: config/i960/i960.h:297
msgid "Do not use alternate leaf function entries"
msgstr "Ne pas utiliser les entrées alternatives pour les fonctions de feuilles"
-#: config/i960/i960.h:289
+#: config/i960/i960.h:299
msgid "Perform tail call optimization"
msgstr "Effectuer une optimisation sur mesure des appels"
-#: config/i960/i960.h:291
+#: config/i960/i960.h:301
msgid "Do not perform tail call optimization"
msgstr "Ne pas effectuer une optimisation sur mesure des appels"
-#: config/i960/i960.h:293
+#: config/i960/i960.h:303
msgid "Use complex addressing modes"
msgstr "Utiliser les modes d'adressage complexes"
-#: config/i960/i960.h:295
+#: config/i960/i960.h:305
msgid "Do not use complex addressing modes"
msgstr "Ne pas utiliser les modes d'adressage complexes"
-#: config/i960/i960.h:297
+#: config/i960/i960.h:307
msgid "Align code to 8 byte boundary"
msgstr "Aligner le code sur des frontières de 8 octets"
-#: config/i960/i960.h:299
+#: config/i960/i960.h:309
msgid "Do not align code to 8 byte boundary"
msgstr "Ne pas aligner le code sur des frontières de 8 octets"
#. {"clean-linkage", (TARGET_FLAG_CLEAN_LINKAGE), N_("Force use of prototypes")}, {"no-clean-linkage", -(TARGET_FLAG_CLEAN_LINKAGE), N_("Do not force use of prototypes")},
-#: config/i960/i960.h:305 config/i960/i960.h:307
+#: config/i960/i960.h:315 config/i960/i960.h:317
msgid "Enable compatibility with iC960 v2.0"
msgstr "Autoriser la compatibilité avec iC960 v2.0"
-#: config/i960/i960.h:309
+#: config/i960/i960.h:319
msgid "Enable compatibility with iC960 v3.0"
msgstr "Autoriser la compatibilité avec iC960 v3.0"
-#: config/i960/i960.h:311 config/i960/i960.h:313
+#: config/i960/i960.h:321 config/i960/i960.h:323
msgid "Enable compatibility with ic960 assembler"
msgstr "Autoriser la compatibilité avec l'assembleur iC960"
-#: config/i960/i960.h:315
+#: config/i960/i960.h:325
msgid "Do not permit unaligned accesses"
msgstr "Ne pas permettre les accès non alignés"
-#: config/i960/i960.h:317
+#: config/i960/i960.h:327
msgid "Permit unaligned accesses"
msgstr "Permettre les accès non alignés"
-#: config/i960/i960.h:319
+#: config/i960/i960.h:329
msgid "Layout types like Intel's v1.3 gcc"
msgstr "Utiliser une disposition de type Intel's v1.3 gcc"
-#: config/i960/i960.h:321
+#: config/i960/i960.h:331
msgid "Do not layout types like Intel's v1.3 gcc"
msgstr "Ne pas utiliser une disposition de type Intel's v1.3 gcc"
-#: config/i960/i960.h:323 config/sparc/freebsd.h:80 config/sparc/linux.h:86
-#: config/sparc/linux64.h:88 config/sparc/netbsd-elf.h:238
+#: config/i960/i960.h:333 config/sparc/freebsd.h:76 config/sparc/linux.h:91
+#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215
msgid "Use 64 bit long doubles"
msgstr "Utiliser les doubles longs de 64 bits"
-#: config/i960/i960.h:325
+#: config/i960/i960.h:335
msgid "Enable linker relaxation"
msgstr "Autoriser la relâche par l'éditeur de liens"
-#: config/i960/i960.h:327
+#: config/i960/i960.h:337
msgid "Do not enable linker relaxation"
msgstr "Ne pas autoriser la relâche par l'éditeur de liens"
-#: config/ia64/ia64-c.c:51
-#, fuzzy
+#: config/ia64/ia64-c.c:52
msgid "malformed #pragma builtin"
-msgstr "sectin mal composée #pragma ghs"
+msgstr "construit #pragma mal composé"
-#: config/ia64/ia64.c:4015
+#: config/ia64/ia64.c:1021 config/m32r/m32r.c:354
+#, c-format
+msgid "invalid argument of `%s' attribute"
+msgstr "type d'argument invalide pour l'attribut « %s »"
+
+#: config/ia64/ia64.c:1033
+msgid "%Jan address area attribute cannot be specified for local variables"
+msgstr "%Jun attribut d'adresse de zone de données ne peut pas être spécifié pour des variables locales"
+
+#: config/ia64/ia64.c:1040
+msgid "%Jaddress area of '%s' conflicts with previous declaration"
+msgstr "%Jl'adresse de la zone « %s » entre en conflit avec un déclaration précédente"
+
+#: config/ia64/ia64.c:1047
+msgid "%Jaddress area attribute cannot be specified for functions"
+msgstr "%Jl'attribut de la zone d'adresse ne peut pas être spécifié pour des fonctiones"
+
+#: config/ia64/ia64.c:4288
msgid "ia64_print_operand: unknown code"
msgstr "ia64_print_operand: code inconnu"
-#: config/ia64/ia64.c:4292
+#: config/ia64/ia64.c:4628
msgid "value of -mfixed-range must have form REG1-REG2"
msgstr "valeur de -mfixed-range doit avoir la forme REG1-REG2"
-#: config/ia64/ia64.c:4319
+#: config/ia64/ia64.c:4655
#, c-format
msgid "%s-%s is an empty range"
msgstr "%s-%s est une étendue vide"
-#: config/ia64/ia64.c:4350
-#, fuzzy
+#: config/ia64/ia64.c:4703
msgid "cannot optimize floating point division for both latency and throughput"
-msgstr "ne peut optimiser la division à la fois pour la latence et la quantité produite"
+msgstr "ne peut optimiser la division en point flottant à la fois pour la latence et le débit"
-#: config/ia64/ia64.c:4356
-#, fuzzy
+#: config/ia64/ia64.c:4709
msgid "cannot optimize integer division for both latency and throughput"
-msgstr "ne peut optimiser la division à la fois pour la latence et la quantité produite"
+msgstr "ne peut optimiser la division entière à la fois pour la latence et le débit"
+
+#: config/ia64/ia64.c:4715
+msgid "cannot optimize square root for both latency and throughput"
+msgstr "ne peut optimiser la racine carrée à la fois pour la latence et le débit"
-#: config/ia64/ia64.c:4368
-#, fuzzy, c-format
+#: config/ia64/ia64.c:4721
+msgid "not yet implemented: latency-optimized inline square root"
+msgstr "pas encore implanté: racine carrée enligne optimisée pour la latence"
+
+#: config/ia64/ia64.c:4733
+#, c-format
msgid "bad value (%s) for -mtls-size= switch"
-msgstr "valeur erronée (%s) pour l'option -mtune"
+msgstr "valeur erronée (%s) pour l'option -mtls-size"
+
+#: config/ia64/ia64.c:4749
+#, c-format
+msgid "bad value (%s) for -tune= switch"
+msgstr "valeur erronée (%s) pour l'option -tune="
#. This macro defines names of command options to set and clear bits in
#. `target_flags'. Its definition is an initializer with a subgrouping for
#. each command option.
-#: config/ia64/ia64.h:154
+#: config/ia64/ia64.h:172
msgid "Generate big endian code"
msgstr "Générer du code de système à octets de poids fort"
-#: config/ia64/ia64.h:156 config/mcore/mcore.h:159
+#: config/ia64/ia64.h:174 config/mcore/mcore.h:154
msgid "Generate little endian code"
msgstr "Générer du code de système à octets de poids faible"
-#: config/ia64/ia64.h:158
+#: config/ia64/ia64.h:176
msgid "Generate code for GNU as"
msgstr "Générer du code pour GNU tel que"
-#: config/ia64/ia64.h:160
+#: config/ia64/ia64.h:178
msgid "Generate code for Intel as"
msgstr "Générer du code pour Intel tel que"
-#: config/ia64/ia64.h:162
+#: config/ia64/ia64.h:180
msgid "Generate code for GNU ld"
msgstr "Générer du code pour GNU ld"
-#: config/ia64/ia64.h:164
+#: config/ia64/ia64.h:182
msgid "Generate code for Intel ld"
msgstr "Générer du code pour Intel ld"
-#: config/ia64/ia64.h:166
+#: config/ia64/ia64.h:184
msgid "Generate code without GP reg"
msgstr "Générer du code sans registre GP"
-#: config/ia64/ia64.h:168
+#: config/ia64/ia64.h:186
msgid "Emit stop bits before and after volatile extended asms"
msgstr "Produire de stop bits avant et après les asms étendus"
-#: config/ia64/ia64.h:170
+#: config/ia64/ia64.h:188
msgid "Don't emit stop bits before and after volatile extended asms"
msgstr "Ne pas produire de stop bits avant et après les asms étendus"
-#: config/ia64/ia64.h:172
+#: config/ia64/ia64.h:190
msgid "Emit code for Itanium (TM) processor B step"
msgstr "Produire du code pour le processeur B Itanium (TM)"
-#: config/ia64/ia64.h:174
+#: config/ia64/ia64.h:192
msgid "Use in/loc/out register names"
msgstr "Utilise les noms des registres in/loc/out "
-#: config/ia64/ia64.h:176
+#: config/ia64/ia64.h:194
msgid "Disable use of sdata/scommon/sbss"
msgstr "Interdire l'utilisation de sdata/scommon/sbss"
-#: config/ia64/ia64.h:178
+#: config/ia64/ia64.h:196
msgid "Enable use of sdata/scommon/sbss"
msgstr "Autoriser l'utilisation de sdata/scommon/sbss"
-#: config/ia64/ia64.h:180
+#: config/ia64/ia64.h:198
msgid "gp is constant (but save/restore gp on indirect calls)"
msgstr "gp est une constante (mais save/restore gp fait par appels indirects)"
-#: config/ia64/ia64.h:182
+#: config/ia64/ia64.h:200
msgid "Generate self-relocatable code"
msgstr "Générer du code auto-relocalisable"
-#: config/ia64/ia64.h:184
-#, fuzzy
+#: config/ia64/ia64.h:202
msgid "Generate inline floating point division, optimize for latency"
-msgstr "Générer les divisions en ligne, optimisées pour la latence"
+msgstr "Générer la division enligne en point flottant, optimiser pour la latence"
-#: config/ia64/ia64.h:186
-#, fuzzy
+#: config/ia64/ia64.h:204
msgid "Generate inline floating point division, optimize for throughput"
-msgstr "Générer les divisions en ligne, optimisées pour la quantité"
+msgstr "Générer la division en point flottant enligne, optimiser pour le débit"
-#: config/ia64/ia64.h:188
-#, fuzzy
+#: config/ia64/ia64.h:206
msgid "Generate inline integer division, optimize for latency"
-msgstr "Générer les divisions en ligne, optimisées pour la latence"
+msgstr "Générer la division entière enligne, optimiser pour la latence"
-#: config/ia64/ia64.h:190
-#, fuzzy
+#: config/ia64/ia64.h:208
msgid "Generate inline integer division, optimize for throughput"
-msgstr "Générer les divisions en ligne, optimisées pour la quantité"
+msgstr "Générer la divisions entière enligne, optimiser pour le débit"
-#: config/ia64/ia64.h:192
+#: config/ia64/ia64.h:210
+msgid "Generate inline square root, optimize for latency"
+msgstr "Générer la racine carrée enligne, optimiser pour la latence"
+
+#: config/ia64/ia64.h:212
+msgid "Generate inline square root, optimize for throughput"
+msgstr "Générer la racine carrée enligne, optimiser pour le débit"
+
+#: config/ia64/ia64.h:214
msgid "Enable Dwarf 2 line debug info via GNU as"
msgstr "Autoriser les infos de lignes de mise au point Dwarf 2 via GNU tel que"
-#: config/ia64/ia64.h:194
+#: config/ia64/ia64.h:216
msgid "Disable Dwarf 2 line debug info via GNU as"
msgstr "Interdire les infos de lignes de mise au point Dwarf 2 via GNU tel que"
-#: config/ia64/ia64.h:223
+#: config/ia64/ia64.h:218
+msgid "Enable earlier placing stop bits for better scheduling"
+msgstr "Autoriser l'insertion antérieure de stop bits pour un meilleur ordonnancement"
+
+#: config/ia64/ia64.h:220
+msgid "Disable earlier placing stop bits"
+msgstr "Interdire l'installation antérieure de bits d'arrêt"
+
+#: config/ia64/ia64.h:265
msgid "Specify range of registers to make fixed"
msgstr "spécifier l'étendue des registres pour la rendre fixe"
-#: config/ip2k/ip2k.c:1090
-#, fuzzy
+#: config/ip2k/ip2k.c:1074
msgid "bad operand"
-msgstr "opérande ASM erronée"
+msgstr "opérande erronée"
+
+#: config/iq2000/iq2000.c:1816
+#, c-format
+msgid "bad value (%s) for -mcpu= switch"
+msgstr "valeur erronée (%s) pour l'option -mcpu="
+
+#: config/iq2000/iq2000.c:1845
+#, c-format
+msgid "The compiler does not support -march=%s."
+msgstr "Le compilateur ne supporte pas -march=%s."
+
+#: config/iq2000/iq2000.c:2232
+#, c-format
+msgid "gp_offset (%ld) or end_offset (%ld) is less than zero."
+msgstr "gp_offset (%ld) ou end_offset (%ld) est plus petit que zéro."
+
+#: config/iq2000/iq2000.c:3023
+#, c-format
+msgid "argument `%d' is not a constant"
+msgstr "l'argument de « %d » n'est pas une constante"
+
+#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2081
+msgid "PRINT_OPERAND_ADDRESS, null pointer"
+msgstr "PRINT_OPERAND_ADDRESS, pointeur nul"
+
+#: config/iq2000/iq2000.c:3469
+#, c-format
+msgid "PRINT_OPERAND: Unknown punctuation '%c'"
+msgstr "PRINT_OPERAND: ponctuation « %c » inconnue"
-#: config/m32r/m32r.c:139
+#: config/iq2000/iq2000.c:3478 config/mips/mips.c:5457
+#: config/xtensa/xtensa.c:1935
+msgid "PRINT_OPERAND null pointer"
+msgstr "PRINT_OPERAND pointeur nul"
+
+#: config/iq2000/iq2000.c:3547
+#, c-format
+msgid "invalid %%P operand"
+msgstr "opérande %%P invalide"
+
+#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8881
+#, c-format
+msgid "invalid %%p value"
+msgstr "valeur %%p invalide"
+
+#: config/iq2000/iq2000.c:3619 config/mips/mips.c:5587
+#, c-format
+msgid "invalid use of %%d, %%x, or %%X"
+msgstr "utilisation invalide de %%d, %%x, ou %%X"
+
+#: config/iq2000/iq2000.h:72 config/mn10300/mn10300.h:74
+msgid "No default crt0.o"
+msgstr "Aucun défaut pour crt0.o"
+
+#: config/iq2000/iq2000.h:74
+msgid "Use GP relative sdata/sbss sections"
+msgstr "Utiliser GP en mode relatif aux sections sdata/sbss"
+
+#: config/iq2000/iq2000.h:76
+msgid "Don't use GP relative sdata/sbss sections"
+msgstr "Ne pas utiliser GP en mode relatif aux sections sdata/sbss"
+
+#: config/iq2000/iq2000.h:78 config/mips/mips.h:563
+msgid "Use ROM instead of RAM"
+msgstr "Utiliser le ROM au lieu de la RAM"
+
+#: config/iq2000/iq2000.h:80 config/mips/mips.h:565
+msgid "Don't use ROM instead of RAM"
+msgstr "Ne pas utiliser le ROM au lieu de la RAM"
+
+#: config/iq2000/iq2000.h:82 config/mips/mips.h:567
+msgid "Put uninitialized constants in ROM (needs -membedded-data)"
+msgstr "Placer les constantes non itialisées dans le ROM (a besoin de -membedded-data)"
+
+#: config/iq2000/iq2000.h:84 config/mips/mips.h:569
+msgid "Don't put uninitialized constants in ROM"
+msgstr "Ne pas placer les constantes non itialisées dans le ROM (a besoin de -membedded-data)"
+
+#: config/iq2000/iq2000.h:106 config/mips/mips.h:731 config/pa/pa.h:310
+msgid "Specify CPU for scheduling purposes"
+msgstr "Spécifier le processeur pour les besoins de l'ordonnancement"
+
+#: config/iq2000/iq2000.h:108 config/mips/mips.h:733
+msgid "Specify CPU for code generation purposes"
+msgstr "Spécifier le processeur pour les besoins de la génération de code"
+
+#: config/m32r/m32r.c:172
#, c-format
msgid "bad value (%s) for -mmodel switch"
msgstr "valeur erronée (%s) pour l'option -mmodel"
-#: config/m32r/m32r.c:148
+#: config/m32r/m32r.c:181
#, c-format
msgid "bad value (%s) for -msdata switch"
msgstr "valeur erronée (%s) pour l'option -msdata"
-#: config/m32r/m32r.c:319
+#: config/m32r/m32r.c:188
#, c-format
-msgid "invalid argument of `%s' attribute"
-msgstr "type d'argument invalide pour l'attribut « %s »"
+msgid "bad value (%s) for -flush-trap=n (0=<n<=15)"
+msgstr "valeur erronée (%s) pour l'option -flush-trap=n (0=<n<=15)"
-#: config/m32r/m32r.c:422
-msgid "const objects cannot go in .sdata/.sbss"
-msgstr "constantes objets ne peuvent aller dans .sdata/.sbss"
-
-#: config/m32r/m32r.c:2256
+#: config/m32r/m32r.c:2295
#, c-format
msgid "invalid operand to %%s code"
msgstr "opérande invalide pour le code %%s"
-#: config/m32r/m32r.c:2263
+#: config/m32r/m32r.c:2302
#, c-format
msgid "invalid operand to %%p code"
msgstr "opérande invalide pour le code %%p"
-#: config/m32r/m32r.c:2318
+#: config/m32r/m32r.c:2357
msgid "bad insn for 'A'"
msgstr "insn erroné pour « A »"
-#: config/m32r/m32r.c:2370
+#: config/m32r/m32r.c:2404
#, c-format
msgid "invalid operand to %%T/%%B code"
msgstr "opérande invalide pour le code %%T/%%B"
-#: config/m32r/m32r.c:2393
+#: config/m32r/m32r.c:2427
#, c-format
msgid "invalid operand to %%N code"
msgstr "opérande invalide pour le code %%N"
-#: config/m32r/m32r.c:2438
+#: config/m32r/m32r.c:2460
msgid "pre-increment address is not a register"
msgstr "pré-incrément d'adresse n'est pas un registre"
-#: config/m32r/m32r.c:2445
+#: config/m32r/m32r.c:2467
msgid "pre-decrement address is not a register"
msgstr "pré-décrément d'adresse n'est pas un registre"
-#: config/m32r/m32r.c:2452
+#: config/m32r/m32r.c:2474
msgid "post-increment address is not a register"
msgstr "post-incrément d'adresse n'est pas un registre"
-#: config/m32r/m32r.c:2530 config/m32r/m32r.c:2546
-#: config/rs6000/rs6000.c:12802
+#: config/m32r/m32r.c:2550 config/m32r/m32r.c:2566
+#: config/rs6000/rs6000.c:14753
msgid "bad address"
msgstr "adresse erronée"
-#: config/m32r/m32r.c:2551
+#: config/m32r/m32r.c:2571
msgid "lo_sum not of register"
msgstr "lo_sum n'est pas un registre"
#. { "relax", TARGET_RELAX_MASK, "" }, { "no-relax", -TARGET_RELAX_MASK, "" },
-#: config/m32r/m32r.h:241
+#: config/m32r/m32r.h:277
msgid "Display compile time statistics"
msgstr "Afficher les statistiques de temps de compilation"
-#: config/m32r/m32r.h:243
+#: config/m32r/m32r.h:279
msgid "Align all loops to 32 byte boundary"
msgstr "Aligner toutes les boucles sur des frontières de 32 octets"
-#: config/m32r/m32r.h:246
+#: config/m32r/m32r.h:282
msgid "Only issue one instruction per cycle"
msgstr "Émettre seulement une instruction par cycle"
-#: config/m32r/m32r.h:249
+#: config/m32r/m32r.h:285
msgid "Prefer branches over conditional execution"
msgstr "Privilégier les branchements au lieu d'une exécution conditionnelle"
-#: config/m32r/m32r.h:265
+#: config/m32r/m32r.h:306
msgid "Code size: small, medium or large"
msgstr "Taille du code: small, medium ou large"
-#: config/m32r/m32r.h:267
+#: config/m32r/m32r.h:308
msgid "Small data area: none, sdata, use"
msgstr "Petite zone de données: none, sdata, use"
-#: config/m68hc11/m68hc11.c:242
+#: config/m32r/m32r.h:310 config/mips/mips.h:739
+msgid "Don't call any cache flush functions"
+msgstr "Ne pas faire d'appel de fonction de vidange de la cache"
+
+#: config/m32r/m32r.h:312 config/mips/mips.h:741
+msgid "Specify cache flush function"
+msgstr "Spécifier la fonction de vidange de la cache"
+
+#: config/m32r/m32r.h:314
+msgid "Don't call any cache flush trap"
+msgstr "Ne pas faire d'appel de fonction de déroutement de vidange de la cache"
+
+#: config/m32r/m32r.h:316
+msgid "Specify cache flush trap number"
+msgstr "Spécifier la fonction de déroutement de vidange de la cache"
+
+#: config/m68hc11/m68hc11.c:269
#, c-format
msgid "-f%s ignored for 68HC11/68HC12 (not supported)"
msgstr "-f%s ignoré pour 68HC11/68HC12 (non supporté)"
-#: config/m68hc11/m68hc11.c:1305
+#: config/m68hc11/m68hc11.c:1260
msgid "`trap' and `far' attributes are not compatible, ignoring `far'"
-msgstr ""
+msgstr "attributs « trap » et « far » ne sont pas compatibles, « far » ignoré "
-#: config/m68hc11/m68hc11.c:1311
-#, fuzzy
+#: config/m68hc11/m68hc11.c:1266
msgid "`trap' attribute is already used"
-msgstr "attribut « %s » ignoré"
+msgstr "attribut « trap » est déjà utilisé"
#. !!!! SCz wrong here.
-#: config/m68hc11/m68hc11.c:3327 config/m68hc11/m68hc11.c:3733
+#: config/m68hc11/m68hc11.c:3222 config/m68hc11/m68hc11.c:3606
msgid "move insn not handled"
msgstr "déplacement insn non traité"
-#: config/m68hc11/m68hc11.c:3579 config/m68hc11/m68hc11.c:3663
-#: config/m68hc11/m68hc11.c:3946
+#: config/m68hc11/m68hc11.c:3454 config/m68hc11/m68hc11.c:3538
+#: config/m68hc11/m68hc11.c:3809
msgid "invalid register in the move instruction"
msgstr "registre invalide dans l'instruction de déplacement"
-#: config/m68hc11/m68hc11.c:3613
+#: config/m68hc11/m68hc11.c:3488
msgid "invalid operand in the instruction"
msgstr "opérande invalide dans l'instruction"
-#: config/m68hc11/m68hc11.c:3920
+#: config/m68hc11/m68hc11.c:3783
msgid "invalid register in the instruction"
msgstr "registre invalide dans l'instruction"
-#: config/m68hc11/m68hc11.c:3953
+#: config/m68hc11/m68hc11.c:3816
msgid "operand 1 must be a hard register"
msgstr "l'opérande 1 doit être un registre matériel"
-#: config/m68hc11/m68hc11.c:3970
+#: config/m68hc11/m68hc11.c:3830
msgid "invalid rotate insn"
msgstr "rotation invalide insn"
-#: config/m68hc11/m68hc11.c:4391
+#: config/m68hc11/m68hc11.c:4246
msgid "registers IX, IY and Z used in the same INSN"
msgstr "registres IX, IY et Z utilisés dans le même INSN"
-#: config/m68hc11/m68hc11.c:4728 config/m68hc11/m68hc11.c:5031
+#: config/m68hc11/m68hc11.c:4583 config/m68hc11/m68hc11.c:4883
msgid "cannot do z-register replacement"
msgstr "ne peut effectuer le remplacement d'un registre z"
-#: config/m68hc11/m68hc11.c:5094
+#: config/m68hc11/m68hc11.c:4946
msgid "invalid Z register replacement for insn"
msgstr "remplacement invalide de registre Z pour insn"
@@ -11342,62 +10479,57 @@ msgstr "remplacement invalide de registre Z pour insn"
#. pairs in braces, each pair being { "NAME", VALUE } where VALUE is the bits
#. to set or minus the bits to clear. An empty string NAME is used to
#. identify the default VALUE.
-#: config/m68hc11/m68hc11.h:172
+#: config/m68hc11/m68hc11.h:177
msgid "Compile with 16-bit integer mode"
msgstr "Compiler en mode entier de 16 bits"
-#: config/m68hc11/m68hc11.h:174
+#: config/m68hc11/m68hc11.h:179
msgid "Compile with 32-bit integer mode"
msgstr "Compiler en mode entier de 32 bits"
-#: config/m68hc11/m68hc11.h:176
+#: config/m68hc11/m68hc11.h:181
msgid "Auto pre/post decrement increment allowed"
msgstr "Auto pré/post décrementation incrémentation permise"
-#: config/m68hc11/m68hc11.h:178
+#: config/m68hc11/m68hc11.h:183
msgid "Auto pre/post decrement increment not allowed"
msgstr "Auto pré/post décrementation incrémentation non permise"
-#: config/m68hc11/m68hc11.h:180
+#: config/m68hc11/m68hc11.h:185
msgid "Min/max instructions allowed"
-msgstr ""
+msgstr "instructions min/max permises"
-#: config/m68hc11/m68hc11.h:182
-#, fuzzy
+#: config/m68hc11/m68hc11.h:187
msgid "Min/max instructions not allowed"
-msgstr "instruction ret n'est pas implantée"
+msgstr "instructions min/max ne sont pas permises"
-#: config/m68hc11/m68hc11.h:184
-#, fuzzy
+#: config/m68hc11/m68hc11.h:189
msgid "Use call and rtc for function calls and returns"
-msgstr "Générer un appel pour stopper si une fonction sans retour retourne un résultat"
+msgstr "Utiliser call et rtc pour les appels fonction et les retours"
-#: config/m68hc11/m68hc11.h:186
-#, fuzzy
+#: config/m68hc11/m68hc11.h:191
msgid "Use jsr and rts for function calls and returns"
-msgstr "Utiliser des stubs pour les prologues de fonction"
+msgstr "Utiliser jsr et rtc pour les appels de fonction et les retours"
-#: config/m68hc11/m68hc11.h:188
+#: config/m68hc11/m68hc11.h:193
msgid "Do not use direct addressing mode for soft registers"
msgstr "Ne pas utiliser les modes directs d'adressage pour des registres logiciels"
-#: config/m68hc11/m68hc11.h:190
-#, fuzzy
+#: config/m68hc11/m68hc11.h:195
msgid "Use direct addressing mode for soft registers"
-msgstr "Ne pas utiliser les modes directs d'adressage pour des registres logiciels"
+msgstr "Ne pas utiliser les modes directs d'adressage pour les registres logiciels"
-#: config/m68hc11/m68hc11.h:192 config/m68hc11/m68hc11.h:198
+#: config/m68hc11/m68hc11.h:197 config/m68hc11/m68hc11.h:203
msgid "Compile for a 68HC11"
msgstr "Compiler pour un 68HC11"
-#: config/m68hc11/m68hc11.h:194 config/m68hc11/m68hc11.h:200
+#: config/m68hc11/m68hc11.h:199 config/m68hc11/m68hc11.h:205
msgid "Compile for a 68HC12"
msgstr "Compiler pour un 68HC12"
-#: config/m68hc11/m68hc11.h:196 config/m68hc11/m68hc11.h:202
-#, fuzzy
+#: config/m68hc11/m68hc11.h:201 config/m68hc11/m68hc11.h:207
msgid "Compile for a 68HCS12"
-msgstr "Compiler pour un 68HC12"
+msgstr "Compiler pour un 68HCS12"
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
@@ -11408,30 +10540,43 @@ msgstr "Compiler pour un 68HC12"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/m68hc11/m68hc11.h:216
+#: config/m68hc11/m68hc11.h:221
msgid "Specify the register allocation order"
msgstr "Spécifier l'ordre d'allocation des registres"
-#: config/m68hc11/m68hc11.h:218
+#: config/m68hc11/m68hc11.h:223
msgid "Indicate the number of soft registers available"
msgstr "Indiquer le nombre de registres logiciels disponibles"
-#: config/m68k/m68k.c:158
+#: config/m68k/m68k.c:227
#, c-format
msgid "-malign-loops=%d is not between 1 and %d"
msgstr "-malign-loops=%d n'est pas entre 1 et %d"
-#: config/m68k/m68k.c:169
+#: config/m68k/m68k.c:238
+msgid "-mshared-library-id= specified without -mid-shared-library"
+msgstr "-mshared-library-id= spécifié sans -mid-shared-library"
+
+#: config/m68k/m68k.c:241
+#, c-format
+msgid "-mshared-library-id=%d is not between 0 and %d"
+msgstr "-mshared-library-id=%d n'est pas entre 0 et %d"
+
+#: config/m68k/m68k.c:255
+msgid "cannot specify both -msep-data and -mid-shared-library"
+msgstr "ne peut spécifier à la fois -msep-data et -mid-shared-library"
+
+#: config/m68k/m68k.c:270
#, c-format
msgid "-malign-jumps=%d is not between 1 and %d"
msgstr "-malign-jumps=%d n'est pas entre 1 et %d"
-#: config/m68k/m68k.c:180
+#: config/m68k/m68k.c:281
#, c-format
msgid "-malign-functions=%d is not between 1 and %d"
msgstr "-malign-functions=%d n'est pas entre 1 et %d"
-#: config/m68k/m68k.c:189
+#: config/m68k/m68k.c:290
msgid "-fPIC is not currently supported on the 68000 or 68010\n"
msgstr "-fPIC n'est pas couramment supporté pour le 68000 ou 68010\n"
@@ -11440,507 +10585,431 @@ msgstr "-fPIC n'est pas couramment supporté pour le 68000 ou 68010\n"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/m68k/m68k.h:162 config/m68k/m68k.h:164
+#: config/m68k/m68k.h:248 config/m68k/m68k.h:250
msgid "Generate code for a 68020"
msgstr "Générer le code pour un 68020"
-#: config/m68k/m68k.h:169 config/m68k/m68k.h:172
+#: config/m68k/m68k.h:255 config/m68k/m68k.h:258
msgid "Generate code for a 68000"
msgstr "Générer le code pour un 68000"
-#: config/m68k/m68k.h:174
+#: config/m68k/m68k.h:260
msgid "Use the bit-field instructions"
msgstr "Utiliser les instructions de champs de bits"
-#: config/m68k/m68k.h:176
+#: config/m68k/m68k.h:262
msgid "Do not use the bit-field instructions"
msgstr "Ne pas utiliser les instructions de champs de bits"
-#: config/m68k/m68k.h:178
-msgid "Use different calling convention using 'rtd'"
-msgstr "Utiliser une convention différente d'appel en utilisant « rtd »"
-
-#: config/m68k/m68k.h:182
+#: config/m68k/m68k.h:264
msgid "Consider type `int' to be 16 bits wide"
msgstr "Considérer le type « int » comme ayant une largeur de 16 bits"
-#: config/m68k/m68k.h:184
+#: config/m68k/m68k.h:266
msgid "Consider type `int' to be 32 bits wide"
msgstr "Considérer le type « int » comme ayant une largeur de 32 bits"
-#: config/m68k/m68k.h:186
-msgid "Generate code for a Sun FPA"
-msgstr "Générer le code pour un Sun FPA"
-
-#: config/m68k/m68k.h:189
-msgid "Do not generate code for a Sun FPA"
-msgstr "Ne pas générer le code pour un Sun FPA"
-
-#: config/m68k/m68k.h:191 config/m68k/m68k.h:193
-msgid "Generate code for a Sun Sky board"
-msgstr "Générer le code pour un Sun Sky board"
-
-#: config/m68k/m68k.h:195
-msgid "Do not use Sky linkage convention"
-msgstr "Ne pas utiliser la convention d'édition de lien Sky"
-
-#: config/m68k/m68k.h:197
-msgid "Generate code for a 68881"
-msgstr "Générer du code pour un 68881"
-
-#: config/m68k/m68k.h:200
+#: config/m68k/m68k.h:269
msgid "Generate code with library calls for floating point"
msgstr "Générer du code avec les appels de bibliothèques pour la virgule flottante"
-#: config/m68k/m68k.h:202
+#: config/m68k/m68k.h:271
msgid "Generate code for a 68040, without any new instructions"
msgstr "Générer du code pour un 68040 sans les nouvelles instructions"
-#: config/m68k/m68k.h:205
+#: config/m68k/m68k.h:274
msgid "Generate code for a 68060, without any new instructions"
msgstr "Générer du code pour un 68060 sans les nouvelles instructions"
-#: config/m68k/m68k.h:209
+#: config/m68k/m68k.h:278
msgid "Generate code for a 68030"
msgstr "Générer du code pour un 68030"
-#: config/m68k/m68k.h:212
+#: config/m68k/m68k.h:281
msgid "Generate code for a 68040"
msgstr "Générer du code pour un 68040"
-#: config/m68k/m68k.h:216
+#: config/m68k/m68k.h:285
msgid "Generate code for a 68060"
msgstr "Générer du code pour un 68060"
-#: config/m68k/m68k.h:221
+#: config/m68k/m68k.h:290
msgid "Generate code for a 520X"
msgstr "Générer du code pour un 520X"
-#: config/m68k/m68k.h:224
+#: config/m68k/m68k.h:294
+msgid "Generate code for a 5206e"
+msgstr "Générer du code pour un 5206e"
+
+#: config/m68k/m68k.h:298
+msgid "Generate code for a 528x"
+msgstr "Générer du code pour un 528x"
+
+#: config/m68k/m68k.h:302
+msgid "Generate code for a 5307"
+msgstr "Générer du code pour un 5307"
+
+#: config/m68k/m68k.h:306
+msgid "Generate code for a 5407"
+msgstr "Générer du code pour un 5407"
+
+#: config/m68k/m68k.h:309
msgid "Generate code for a 68851"
msgstr "Générer le code pour un 68851"
-#: config/m68k/m68k.h:226
+#: config/m68k/m68k.h:311
msgid "Do no generate code for a 68851"
msgstr "Ne pas générer de code pour un 68851"
-#: config/m68k/m68k.h:229
+#: config/m68k/m68k.h:314
msgid "Generate code for a 68302"
msgstr "Générer du code pour un 68302"
-#: config/m68k/m68k.h:232
+#: config/m68k/m68k.h:317
msgid "Generate code for a 68332"
msgstr "Générer du code pour un 68332"
-#: config/m68k/m68k.h:236
+#: config/m68k/m68k.h:321
msgid "Generate code for a cpu32"
msgstr "Générer du code pour un cpu32"
-#: config/m68k/m68k.h:239
+#: config/m68k/m68k.h:324
msgid "Align variables on a 32-bit boundary"
msgstr "Aligner les variables sur des frontières de 32 bits"
-#: config/m68k/m68k.h:241
+#: config/m68k/m68k.h:326
msgid "Align variables on a 16-bit boundary"
msgstr "Aligner les variables sur des frontières de 16 bits"
-#: config/m68k/m68k.h:243
+#: config/m68k/m68k.h:328
+msgid "Enable separate data segment"
+msgstr "Autoriser des segments de données séparés"
+
+#: config/m68k/m68k.h:330
+msgid "Disable separate data segment"
+msgstr "Désactiver les segments séparés de données"
+
+#: config/m68k/m68k.h:332
+msgid "Enable ID based shared library"
+msgstr "Autoriser les identificateurs de librairies partagées de base"
+
+#: config/m68k/m68k.h:334
+msgid "Disable ID based shared library"
+msgstr "Interdire les identificateurs de librairies partagées de base"
+
+#: config/m68k/m68k.h:336
msgid "Generate pc-relative code"
msgstr "Générer du code relatif au compteur de programme (PC)"
-#: config/m68k/m68k.h:245
+#: config/m68k/m68k.h:338
msgid "Do not use unaligned memory references"
msgstr "Ne pas utiliser des références mémoire non alignées"
-#: config/m68k/m68k.h:247
+#: config/m68k/m68k.h:340
msgid "Use unaligned memory references"
msgstr "Utiliser des références mémoire non alignées"
-#: config/m88k/m88k.c:903
-#, c-format
-msgid "internal gcc monitor: short-branch(%x)"
-msgstr "moniteur interne gcc: branchement court(%x)"
-
-#: config/m88k/m88k.c:2302
-msgid "internal gcc error: Can't express symbolic location"
-msgstr "erreur interne gcc: ne peut exprimer la localisation symbolique"
-
-#: config/m88k/m88k.c:2517
-#, c-format
-msgid "argument #%d is a structure"
-msgstr "argument #%d est une structure"
-
-#: config/m88k/m88k.c:2816
-#, c-format
-msgid "%%R not followed by %%B/C/D/E"
-msgstr "%%R n'est pas suivi de %%B/C/D/E"
-
-#: config/m88k/m88k.c:2884
-#, c-format
-msgid "invalid %%x/X value"
-msgstr "valeur %%x/X invalide"
-
-#: config/m88k/m88k.c:2901
-#, c-format
-msgid "invalid %%Q value"
-msgstr "valeur %%Q invalide"
-
-#: config/m88k/m88k.c:2907 config/rs6000/rs6000.c:7718
-#, c-format
-msgid "invalid %%q value"
-msgstr "valeur %%q invalide"
-
-#: config/m88k/m88k.c:2913
-#, c-format
-msgid "invalid %%o value"
-msgstr "valeur %%o invalide"
-
-#: config/m88k/m88k.c:2920 config/rs6000/rs6000.c:7681
-#, c-format
-msgid "invalid %%p value"
-msgstr "valeur %%p invalide"
-
-#: config/m88k/m88k.c:2933 config/m88k/m88k.c:2938
-#, c-format
-msgid "invalid %%s/S value"
-msgstr "valeur %%s/S invalide"
-
-#: config/m88k/m88k.c:2949
-#, c-format
-msgid "invalid %%P operand"
-msgstr "opérande %%P invalide"
-
-#: config/m88k/m88k.c:2980 config/romp/romp.c:690
-#, c-format
-msgid "invalid %%B value"
-msgstr "valeur %%B invalide"
-
-#: config/m88k/m88k.c:3010
-#, c-format
-msgid "invalid %%D value"
-msgstr "valeur %%D invalide"
-
-#: config/m88k/m88k.c:3023
-#, c-format
-msgid "`%%d' operand isn't a register"
-msgstr "l'opérande «%%d» n'est pas un registre"
-
-#: config/m88k/m88k.c:3041
-msgid "operand is r0"
-msgstr "opérande est R0"
-
-#: config/m88k/m88k.c:3055
-msgid "operand is const_double"
-msgstr "opérande est de type const_double"
-
-#: config/m88k/m88k.c:3074
-msgid "invalid code"
-msgstr "code invalide"
-
-#. Do any checking or such that is needed after processing the -m switches.
-#: config/m88k/m88k.h:277
-msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
-msgstr "-mtrap-large-shift et -mhandle-large-shift sont incompatibles"
-
-#: config/m88k/m88k.h:299
-#, c-format
-msgid "invalid option `-mshort-data-%s'"
-msgstr "option invalide «-mshort-data-%s'"
-
-#: config/m88k/m88k.h:304
-#, c-format
-msgid "-mshort-data-%s is too large "
-msgstr "-mshort-data-%s est trop grande "
+#: config/m68k/m68k.h:342
+msgid "Use different calling convention using 'rtd'"
+msgstr "Utiliser une convention différente d'appel en utilisant « rtd »"
-#: config/m88k/m88k.h:306
-#, c-format
-msgid "-mshort-data-%s and PIC are incompatible"
-msgstr "-mshort-data-%s et PIC sont incompatibles"
+#: config/m68k/m68k.h:366
+msgid "ID of shared library to build"
+msgstr "Identification de librairie partagé à construire"
-#: config/mcore/mcore.c:3078
+#: config/mcore/mcore.c:2973
#, c-format
msgid "invalid option `-mstack-increment=%s'"
-msgstr "opton invalide «-mstack-increment=%s'"
+msgstr "opton invalide « -mstack-increment=%s »"
-#: config/mcore/mcore.h:126
+#: config/mcore/mcore.h:121
msgid "Inline constants if it can be done in 2 insns or less"
-msgstr "Constante en ligne si elle peut être en 2 insn ou moins"
+msgstr "Constante enligne si elle peut être dans 2 insn ou moins"
-#: config/mcore/mcore.h:128
+#: config/mcore/mcore.h:123
msgid "Inline constants if it only takes 1 instruction"
-msgstr "Constantes en ligne si elle prend seulement 1 instruction"
+msgstr "Constante enligne si elle prend seulement 1 instruction"
-#: config/mcore/mcore.h:130
+#: config/mcore/mcore.h:125
msgid "Set maximum alignment to 4"
msgstr "Initialiser l'alignement maximal à 4"
-#: config/mcore/mcore.h:132
+#: config/mcore/mcore.h:127
msgid "Set maximum alignment to 8"
msgstr "Initialiser l'alignement maximal à 8"
-#: config/mcore/mcore.h:136
+#: config/mcore/mcore.h:131
msgid "Do not use the divide instruction"
msgstr "Ne pas utiliser l'instruction de division"
-#: config/mcore/mcore.h:140
-#, fuzzy
+#: config/mcore/mcore.h:135
msgid "Do not arbitrary sized immediates in bit operations"
msgstr "Ne pas calculer la taille des immédiats dans les opérations sur les bits"
-#: config/mcore/mcore.h:142
+#: config/mcore/mcore.h:137
msgid "Always treat bit-field as int-sized"
msgstr "Toujours traiter les champs de bits comme si la taille entière"
-#: config/mcore/mcore.h:146
+#: config/mcore/mcore.h:141
msgid "Force functions to be aligned to a 4 byte boundary"
msgstr "Forcer les fonctions à être alignés sur des frontières de 4 octets"
-#: config/mcore/mcore.h:148
+#: config/mcore/mcore.h:143
msgid "Force functions to be aligned to a 2 byte boundary"
msgstr "Forcer les fonctions à être alignés sur des frontières de 2 octets"
-#: config/mcore/mcore.h:150
+#: config/mcore/mcore.h:145
msgid "Emit call graph information"
msgstr "Produire les informations du graphe d'appel"
-#: config/mcore/mcore.h:154
+#: config/mcore/mcore.h:149
msgid "Prefer word accesses over byte accesses"
msgstr "Préférer l'accès à des mots plutôt qu'un accès à des octets"
-#: config/mcore/mcore.h:165
+#: config/mcore/mcore.h:160
msgid "Generate code for the M*Core M340"
msgstr "Générer du code pour M*Core M340"
-#: config/mcore/mcore.h:178
+#: config/mcore/mcore.h:173
msgid "Maximum amount for a single stack increment operation"
msgstr "Montant maximal pour une opération d'incrémentation simple de la pile"
-#: config/mips/mips.c:5128
+#: config/mips/mips.c:3115 config/xtensa/xtensa.c:992
+#: config/xtensa/xtensa.c:1024 config/xtensa/xtensa.c:1033
+msgid "bad test"
+msgstr "test erroné"
+
+#: config/mips/mips.c:4593
#, c-format
msgid "bad value (%s) for -mabi= switch"
msgstr "valeur erronée (%s) pour l'option -mabi"
-#: config/mips/mips.c:5158
+#: config/mips/mips.c:4616
#, c-format
-msgid "-mips%d conflicts with the other architecture options, which specify a MIPS%d processor"
-msgstr ""
+msgid "-mips%s conflicts with the other architecture options, which specify a MIPS%d processor"
+msgstr "-mips%s en conflit avec d'autres options d'architecture, lesquelles spécifie un processeur MIPS%d"
-#: config/mips/mips.c:5165
+#: config/mips/mips.c:4635
#, c-format
-msgid "bad value (%s) for -mips switch"
-msgstr "valeur erronée (%s) pour l'option -mips"
-
-#: config/mips/mips.c:5180
-#, fuzzy, c-format
msgid "-march=%s is not compatible with the selected ABI"
-msgstr "le sélecteur de CASE n'est pas compatible avec l'étiquette"
+msgstr "-march=%s n'est pas compatible avec l'ABI sélectionné"
-#: config/mips/mips.c:5192
+#: config/mips/mips.c:4650
msgid "-mgp64 used with a 32-bit processor"
-msgstr ""
+msgstr "-mgp64 utilisé avec un processeur de 32 bits"
-#: config/mips/mips.c:5194
-#, fuzzy
+#: config/mips/mips.c:4652
msgid "-mgp32 used with a 64-bit ABI"
-msgstr "Utiliser ABI de 64 bits"
+msgstr "-mgp32 utilisé avec un ABI de 64 bits"
-#: config/mips/mips.c:5196
-#, fuzzy
+#: config/mips/mips.c:4654
msgid "-mgp64 used with a 32-bit ABI"
-msgstr "Utiliser ABI de 32 bits"
+msgstr "-mgp64 utilisé avec un ABI de 32 bits"
-#: config/mips/mips.c:5214 config/mips/mips.c:5216 config/mips/mips.c:5218
-#, fuzzy, c-format
+#: config/mips/mips.c:4672 config/mips/mips.c:4674 config/mips/mips.c:4676
+#: config/mips/mips.c:4804
+#, c-format
msgid "unsupported combination: %s"
-msgstr "valeur de conversion non supportée"
+msgstr "combinaison non supportée: %s"
+
+#: config/mips/mips.c:4768
+msgid "-g is only supported using GNU as,"
+msgstr "L'option -g est seulement supportée lorsque GNU est utilisé tel,"
+
+#: config/mips/mips.c:4770
+msgid "-g is only supported using GNU as with -mabi=32,"
+msgstr "L'option -g est seulement supportée lorsque GNU est utilisé avec -mabi=32,"
+
+#: config/mips/mips.c:4771 config/pa/pa.c:353
+msgid "-g option disabled"
+msgstr "option -g désactivée"
-#: config/mips/mips.c:5288
+#: config/mips/mips.c:4799
msgid "generation of Branch Likely instructions enabled, but not supported by architecture"
-msgstr ""
+msgstr "activer la génération d'instructions identiques à des branchements mais non supportés par l'architecture"
-#: config/mips/mips.c:5299
+#: config/mips/mips.c:4816
msgid "-G is incompatible with PIC code which is the default"
msgstr "-G est incompatible avec le code PIC par défaut"
-#: config/mips/mips.c:5315
+#: config/mips/mips.c:4844
msgid "-membedded-pic and -mabicalls are incompatible"
msgstr "-membedded-pic et -mabicalls sont incompatibles"
-#: config/mips/mips.c:5318
+#: config/mips/mips.c:4847
msgid "-G and -membedded-pic are incompatible"
msgstr "-G et -membedded-pic sont incompatibles"
-#: config/mips/mips.c:5369
-#, c-format
-msgid "invalid option `entry%s'"
-msgstr "option invalide «entry%s'"
+#: config/mips/mips.c:4879
+msgid "non-PIC n64 with explicit relocations"
+msgstr "non PIC n64 avec une relocalisation explicite"
-#: config/mips/mips.c:5372
-msgid "-mentry is only meaningful with -mips-16"
-msgstr "-mentry n'a de sens qu'avec -mips-16"
+#: config/mips/mips.c:5267
+msgid "mips_debugger_offset called with non stack/frame/arg pointer"
+msgstr "mips_debugger_offset appellé avec un pointeur non stack/frame/arg"
-#: config/mips/mips.c:5781
+#: config/mips/mips.c:5394
#, c-format
msgid "internal error: %%) found without a %%( in assembler pattern"
-msgstr "erreur interne: %%) trouvé sans %%( dans le patron d'aswsemblage"
+msgstr "erreur interne: %%) trouvé sans %%( dans le canevas d'assemblage"
-#: config/mips/mips.c:5795
+#: config/mips/mips.c:5408
#, c-format
msgid "internal error: %%] found without a %%[ in assembler pattern"
-msgstr "erreur interne: %%] trouvé sans %%[ dans le patron d'assemblage"
+msgstr "erreur interne: %%] trouvé sans %%[ dans le canevas d'assemblage"
-#: config/mips/mips.c:5808
+#: config/mips/mips.c:5421
#, c-format
msgid "internal error: %%> found without a %%< in assembler pattern"
-msgstr "erreur interne: %%> trouvé sans %%< dans le patron d'assemblage"
+msgstr "erreur interne: %%> trouvé sans %%< dans le canevas d'assemblage"
-#: config/mips/mips.c:5821
+#: config/mips/mips.c:5434
#, c-format
msgid "internal error: %%} found without a %%{ in assembler pattern"
-msgstr "erreur interne: %%} trouvé sans %%{ dans le patron d'assemblage"
+msgstr "erreur interne: %%} trouvé sans %%{ dans le canevas d'assemblage"
-#: config/mips/mips.c:5835
+#: config/mips/mips.c:5448
#, c-format
msgid "PRINT_OPERAND: unknown punctuation '%c'"
msgstr "PRINT_OPERAND: ponctuation « %c » inconnue"
-#: config/mips/mips.c:5844 config/xtensa/xtensa.c:1939
-msgid "PRINT_OPERAND null pointer"
-msgstr "PRINT_OPERAND pointeur nul"
+#: config/mips/mips.c:5477
+#, c-format
+msgid "PRINT_OPERAND, invalid insn for %%C"
+msgstr "PRINT_OPERAND insn invalide pour %%C"
-#: config/mips/mips.c:5975
+#: config/mips/mips.c:5494
#, c-format
-msgid "invalid use of %%d, %%x, or %%X"
-msgstr "utilisation invalide de %%d, %%x, ou %%X"
+msgid "PRINT_OPERAND, invalid insn for %%N"
+msgstr "PRINT_OPERAND insn invalide pour %%N"
-#: config/mips/mips.c:6013 config/xtensa/xtensa.c:2033
-msgid "PRINT_OPERAND_ADDRESS, null pointer"
-msgstr "PRINT_OPERAND_ADDRESS, pointeur nul"
+#: config/mips/mips.c:5503
+#, c-format
+msgid "PRINT_OPERAND, invalid insn for %%F"
+msgstr "PRINT_OPERAND insn invalide pour %%F"
-#: config/mips/mips.c:6242
-msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
-msgstr "format MIPS ECOFF ne permet pas de changer le nom des fichiers à l'intérieur des fonction avec #line"
+#: config/mips/mips.c:5512
+#, c-format
+msgid "PRINT_OPERAND, invalid insn for %%W"
+msgstr "PRINT_OPERAND insn invalide pour %%W"
-#: config/mips/mips.c:6552
-msgid "can't rewind temp file"
-msgstr "ne peut rembobiner le fichier temporaire"
+#: config/mips/mips.c:5618
+msgid "PRINT_OPERAND, invalid operand for relocation"
+msgstr "PRINT_OPERAND, opérande invalide pour la relocalisation"
-#: config/mips/mips.c:6556
-msgid "can't write to output file"
-msgstr "ne peut écrire dans le fichier de sortie"
+#: config/mips/mips.c:8252
+#, c-format
+msgid "can not handle inconsistent calls to `%s'"
+msgstr "ne peut traiter des appels inconsistents à « %s »"
-#: config/mips/mips.c:6559
-msgid "can't read from temp file"
-msgstr "ne peut lire du fichier temporaire"
+#: config/mips/mips.c:9258
+msgid "the cpu name must be lower case"
+msgstr "le nom du cpu doit être en minuscules"
-#: config/mips/mips.c:6562
-msgid "can't close temp file"
-msgstr "ne peut fermer le fichier temporaire"
+#: config/mips/mips.c:9280
+#, c-format
+msgid "bad value (%s) for %s"
+msgstr "valeur (%s) erronée pour %s"
-#: config/mips/mips.c:7003
+#: config/mips/mips.c:9549
#, c-format
-msgid "gp_offset (%ld) or end_offset (%ld) is less than zero"
-msgstr "gp_offset (%ld) ou end_offset (%ld) est plus petit que zéro"
+msgid "can't rewind temp file: %m"
+msgstr "ne peut rembobiner le fichier temporaire: %m"
-#: config/mips/mips.c:7112
+#: config/mips/mips.c:9553
#, c-format
-msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
-msgstr "fp_offset (%ld) ou end_offset (%ld) est plus petit que zéro"
+msgid "can't write to output file: %m"
+msgstr "ne peut écrire dans le fichier de sortie: %m"
-#: config/mips/mips.c:9335
+#: config/mips/mips.c:9556
#, c-format
-msgid "can not handle inconsistent calls to `%s'"
-msgstr "ne peut traiter des appels inconsistents à « %s »"
+msgid "can't read from temp file: %m"
+msgstr "ne peut lire du fichier temporaire: %m"
-#: config/mips/mips.c:10467
-#, fuzzy
-msgid "the cpu name must be lower case"
-msgstr "Noms de symboles en minuscules"
+#: config/mips/mips.c:9559
+#, c-format
+msgid "can't close temp file: %m"
+msgstr "ne peut fermer le fichier temporaire: %m"
-#: config/mips/mips.c:10489
-#, fuzzy, c-format
-msgid "bad value (%s) for %s"
-msgstr "valeur (%s) erronée pour l'option %s"
+#: config/mips/linux64.h:39
+msgid "Same as -mabi=32, just trickier"
+msgstr "Identique à -mabi=32, juste plus complexe"
#. Target CPU builtins.
#. We do this here because __mips is defined below and so we can't use builtin_define_std.
#. Treat _R3000 and _R4000 like register-size defines, which is how they've historically been used.
#. Macros dependent on the C dialect.
-#. Bizzare, but needed at least for Irix.
+#. Bizarre, but needed at least for Irix.
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:528 config/mn10300/mn10300.h:64
-msgid "No default crt0.o"
-msgstr "Aucun défaut pour crt0.o"
-
-#: config/mips/mips.h:530
+#: config/mips/mips.h:501
msgid "Use 64-bit int type"
msgstr "Utiliser le type int de 64 bits"
-#: config/mips/mips.h:532
+#: config/mips/mips.h:503
msgid "Use 64-bit long type"
msgstr "Utiliser le type long de 64 bits"
-#: config/mips/mips.h:534
+#: config/mips/mips.h:505
msgid "Use 32-bit long type"
msgstr "Utiliser le type long de 32 bits"
-#: config/mips/mips.h:536
+#: config/mips/mips.h:507
msgid "Optimize lui/addiu address loads"
msgstr "Optimiser les chargements d'adresses lui/addiu"
-#: config/mips/mips.h:538
+#: config/mips/mips.h:509
msgid "Don't optimize lui/addiu address loads"
msgstr "Ne pas optimiser les chargements d'adresses lui/addiu"
-#: config/mips/mips.h:540
+#: config/mips/mips.h:511
msgid "Use MIPS as"
msgstr "Utiliser MIPS tel que"
-#: config/mips/mips.h:542
+#: config/mips/mips.h:513
msgid "Use GNU as"
msgstr "Utiliser GNU tel que"
-#: config/mips/mips.h:544
+#: config/mips/mips.h:515
msgid "Use symbolic register names"
msgstr "Utiliser les noms de registres symboliques"
-#: config/mips/mips.h:546
+#: config/mips/mips.h:517
msgid "Don't use symbolic register names"
msgstr "Ne pas utiliser les noms de registres symboliques"
-#: config/mips/mips.h:548 config/mips/mips.h:550
-msgid "Use GP relative sdata/sbss sections"
-msgstr "Utiliser GP en mode relatif aux sections sdata/sbss"
+#: config/mips/mips.h:519 config/mips/mips.h:521
+msgid "Use GP relative sdata/sbss sections (now ignored)"
+msgstr "Utiliser GP en mode relatif aux sections sdata/sbss (maintenant ignoré)"
-#: config/mips/mips.h:552 config/mips/mips.h:554
-msgid "Don't use GP relative sdata/sbss sections"
-msgstr "Ne pas utiliser GP en mode relatif aux sections sdata/sbss"
+#: config/mips/mips.h:523 config/mips/mips.h:525
+msgid "Don't use GP relative sdata/sbss sections (now ignored)"
+msgstr "Ne pas utiliser GP en mode relatif aux sections sdata/sbss (maintenant ignoré)"
-#: config/mips/mips.h:556
-msgid "Output compiler statistics"
-msgstr "Afficher les statistiques de compilation"
+#: config/mips/mips.h:527
+msgid "Output compiler statistics (now ignored)"
+msgstr "Afficher les statistiques de compilation (maintenant ignoré)"
-#: config/mips/mips.h:558
+#: config/mips/mips.h:529
msgid "Don't output compiler statistics"
msgstr "Ne pas afficher les statistiques de compilation"
-#: config/mips/mips.h:560
+#: config/mips/mips.h:531
msgid "Don't optimize block moves"
msgstr "Ne pas optimiser les déplacements de blocs"
-#: config/mips/mips.h:562
+#: config/mips/mips.h:533
msgid "Optimize block moves"
msgstr "Optimiser les déplacements de blocs"
-#: config/mips/mips.h:564
+#: config/mips/mips.h:535
msgid "Use mips-tfile asm postpass"
msgstr "Utiliser la post-passe de type mips-tfile de l'assembleur"
-#: config/mips/mips.h:566
+#: config/mips/mips.h:537
msgid "Don't use mips-tfile asm postpass"
msgstr "Ne pas utiliser la post-passe de type mips-tfile de l'assembleur"
@@ -11950,271 +11019,237 @@ msgstr "Ne pas utiliser la post-passe de type mips-tfile de l'assembleur"
#. where VALUE is the bits to set or minus the bits to clear and DOC
#. is the documentation for --help (NULL if intentionally undocumented).
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:570 config/pdp11/pdp11.h:56
+#: config/mips/mips.h:541 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:314
msgid "Use hardware floating point"
msgstr "Utiliser l'unité matérielle en virgule flottante"
-#: config/mips/mips.h:572
+#: config/mips/mips.h:543
msgid "Use 64-bit FP registers"
msgstr "Utiliser les registres FP de 64 bits"
-#: config/mips/mips.h:574
+#: config/mips/mips.h:545
msgid "Use 32-bit FP registers"
msgstr "Utiliser les registres FP de 32 bits"
-#: config/mips/mips.h:576
+#: config/mips/mips.h:547
msgid "Use 64-bit general registers"
msgstr "Utiliser les registres généraux de 64 bits"
-#: config/mips/mips.h:578
+#: config/mips/mips.h:549
msgid "Use 32-bit general registers"
msgstr "Utiliser les registres généraux de 32 bits"
-#: config/mips/mips.h:580
+#: config/mips/mips.h:551
msgid "Use Irix PIC"
msgstr "Utiliser le code PIC Irix"
-#: config/mips/mips.h:582
+#: config/mips/mips.h:553
msgid "Don't use Irix PIC"
msgstr "Ne pas utiliser le code PIC Irix"
-#: config/mips/mips.h:584
+#: config/mips/mips.h:555
msgid "Use indirect calls"
msgstr "Utiliser les appels indirects"
-#: config/mips/mips.h:586
+#: config/mips/mips.h:557
msgid "Don't use indirect calls"
msgstr "Ne pas utiliser les appels indirects"
-#: config/mips/mips.h:588
+#: config/mips/mips.h:559
msgid "Use embedded PIC"
msgstr "Utiliser le code PIC enchâssé"
-#: config/mips/mips.h:590
+#: config/mips/mips.h:561
msgid "Don't use embedded PIC"
msgstr "Ne pas utiliser le code PIC enchâssé"
-#: config/mips/mips.h:592
-msgid "Use ROM instead of RAM"
-msgstr "Utiliser le ROM au lieu de la RAM"
-
-#: config/mips/mips.h:594
-msgid "Don't use ROM instead of RAM"
-msgstr "Ne pas utiliser le ROM au lieu de la RAM"
-
-#: config/mips/mips.h:596
-msgid "Put uninitialized constants in ROM (needs -membedded-data)"
-msgstr "Placer les constantes non itialisées dans le ROM (a besoin de -membedded-data)"
-
-#: config/mips/mips.h:598
-msgid "Don't put uninitialized constants in ROM"
-msgstr "Ne pas placer les constantes non itialisées dans le ROM (a besoin de -membedded-data)"
-
-#. Macro to define tables used to set the flags.
-#: config/mips/mips.h:600 config/xtensa/xtensa.h:110
+#: config/mips/mips.h:571
msgid "Use big-endian byte order"
msgstr "Utiliser l'ordre des octets pour système à octets de poids fort"
-#: config/mips/mips.h:602 config/xtensa/xtensa.h:112
+#: config/mips/mips.h:573
msgid "Use little-endian byte order"
msgstr "Utiliser l'ordre des octets pour système à octets de poids faible"
-#: config/mips/mips.h:604
+#: config/mips/mips.h:575
msgid "Use single (32-bit) FP only"
msgstr "Utiliser un simple FP (32 bits) seulement"
-#: config/mips/mips.h:606
+#: config/mips/mips.h:577
msgid "Don't use single (32-bit) FP only"
msgstr "Ne pas utiliser un simple FP (32 bits) seulement"
-#: config/mips/mips.h:608
+#: config/mips/mips.h:579
msgid "Use multiply accumulate"
msgstr "Utiliser les multiplications par accumulations"
-#: config/mips/mips.h:610
+#: config/mips/mips.h:581
msgid "Don't use multiply accumulate"
msgstr "Ne pas utiliser les multiplications par accumulations"
-#: config/mips/mips.h:612 config/rs6000/rs6000.h:314
+#: config/mips/mips.h:583
msgid "Don't generate fused multiply/add instructions"
msgstr "Ne pas générer des instructions fusionnés de multiplication/addition"
-#: config/mips/mips.h:614 config/rs6000/rs6000.h:312
+#: config/mips/mips.h:585 config/rs6000/rs6000.h:330
msgid "Generate fused multiply/add instructions"
msgstr "Générer des instructions fusionnés de multiplication/addition"
-#: config/mips/mips.h:616
+#: config/mips/mips.h:587
msgid "Work around early 4300 hardware bug"
msgstr "Contourner le bug matériel des premiers 4300"
-#: config/mips/mips.h:618
+#: config/mips/mips.h:589
msgid "Don't work around early 4300 hardware bug"
msgstr "Ne pas contourner le bug matériel des premiers 4300"
-#: config/mips/mips.h:620
+#: config/mips/mips.h:591
+msgid "Work around errata for early SB-1 revision 2 cores"
+msgstr "Contourner l'erreur pour la révision 2 du noyau des versions initiales SB-1"
+
+#: config/mips/mips.h:593
+msgid "Don't work around errata for early SB-1 revision 2 cores"
+msgstr "Ne pas contourner l'erreur pour la révision 2 du noyau des versions initiales SB-1"
+
+#: config/mips/mips.h:595
msgid "Trap on integer divide by zero"
msgstr "Intercepter les divisions par zéros sur des entiers"
-#: config/mips/mips.h:622
+#: config/mips/mips.h:597
msgid "Don't trap on integer divide by zero"
msgstr "Ne pas intercepter les divisions par zéros sur des entiers"
-#: config/mips/mips.h:624
-msgid "Trap on integer divide overflow"
-msgstr "Intercepter les débordements lors de divisions avec des entiers"
-
-#: config/mips/mips.h:626
-msgid "Don't trap on integer divide overflow"
-msgstr "Ne pas intercepter les débordement lors de divisions avec des entiers"
-
-#: config/mips/mips.h:628
+#: config/mips/mips.h:599
msgid "Use Branch Likely instructions, overriding default for arch"
-msgstr ""
+msgstr "Utiliser des instructions se comportant comme des branchements, écrasant le défaut de l'architecture"
-#: config/mips/mips.h:630
+#: config/mips/mips.h:601
msgid "Don't use Branch Likely instructions, overriding default for arch"
-msgstr ""
+msgstr "Ne pas utiliser des instructions se comportant comme des branchements, écrasant le défaut de l'architecture"
-#: config/mips/mips.h:744 config/pa/pa.h:310
-msgid "Specify CPU for scheduling purposes"
-msgstr "Spécifier le processeur pour les besoins de l'ordonnancement"
+#: config/mips/mips.h:603
+msgid "Use NewABI-style %reloc() assembly operators"
+msgstr "Utiliser NewABI-style %reloc() les opérateurs d'assemblage"
-#: config/mips/mips.h:746
-msgid "Specify CPU for code generation purposes"
-msgstr "Spécifier le processeur pour les besoins de la génération de code"
+#: config/mips/mips.h:605
+msgid "Use assembler macros instead of relocation operators"
+msgstr "Utiliser les macros assembleurs au lieu des opérateurs de relocalisation"
-#: config/mips/mips.h:748
-msgid "Specify an ABI"
-msgstr "Spécifier une ABI"
+#: config/mips/mips.h:607
+msgid "Generate mips16 code"
+msgstr "Générer du code mips16"
-#: config/mips/mips.h:750
-msgid "Specify a Standard MIPS ISA"
-msgstr "Spécifier le standard MIPS ISA"
+#: config/mips/mips.h:609
+msgid "Generate normal-mode code"
+msgstr "Générer du code en mode normal"
-#: config/mips/mips.h:752
-msgid "Use mips16 entry/exit psuedo ops"
-msgstr "Utiliser les pseudo-op mips16 d'entrée/sortie"
+#: config/mips/mips.h:611
+msgid "Lift restrictions on GOT size"
+msgstr "Enlever les restrictions sur la taille GOT"
-#: config/mips/mips.h:754
-msgid "Don't use MIPS16 instructions"
-msgstr "Ne pas utiliser les instructions MIPS16"
+#: config/mips/mips.h:613
+msgid "Do not lift restrictions on GOT size"
+msgstr "Ne pas enlever les restrictions sur la taille GOT"
-#: config/mips/mips.h:756
-msgid "Don't call any cache flush functions"
-msgstr "Ne pas faire d'appel de fonction de vidange de la cache"
+#: config/mips/mips.h:735
+msgid "Specify an ABI"
+msgstr "Spécifier une ABI"
-#: config/mips/mips.h:758
-msgid "Specify cache flush function"
-msgstr "Spécifier la fonction de vidange de la cache"
+#: config/mips/mips.h:737
+msgid "Specify a Standard MIPS ISA"
+msgstr "Spécifier le standard MIPS ISA"
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/mips/mips.h:2900
+#: config/mips/mips.h:2403
msgid "mips16 function profiling"
msgstr "profilage de fonction mips16"
-#: config/mmix/mmix.c:189
+#: config/mmix/mmix.c:207
#, c-format
msgid "-f%s not supported: ignored"
msgstr "-f%s n'est pas supporté: ignoré"
-#: config/mmix/mmix.c:644
+#: config/mmix/mmix.c:633
#, c-format
msgid "too large function value type, needs %d registers, have only %d registers for this"
msgstr "valeur de type de fonction trop grande, a besoin de %d registres mais seuls %d disponibles"
-#: config/mmix/mmix.c:826
+#: config/mmix/mmix.c:803
msgid "function_profiler support for MMIX"
msgstr "function_profiler supporté pour MMIX"
-#: config/mmix/mmix.c:848
+#: config/mmix/mmix.c:823
msgid "MMIX Internal: Last named vararg would not fit in a register"
msgstr "MMIX interne: dernier vararg nommé ne pourra être inséré dans un registre"
-#: config/mmix/mmix.c:1639 config/mmix/mmix.c:1769
+#: config/mmix/mmix.c:1538 config/mmix/mmix.c:1668
msgid "MMIX Internal: Expected a CONST_INT, not this"
msgstr "MMIX interne: attendait CONST_INT, pas ceci"
-#: config/mmix/mmix.c:1647 config/mmix/mmix.c:1671 config/mmix/mmix.c:1787
+#: config/mmix/mmix.c:1546 config/mmix/mmix.c:1570 config/mmix/mmix.c:1686
#, c-format
msgid "MMIX Internal: Bad register: %d"
msgstr "MMIX interne: registre erroné: %d"
-#: config/mmix/mmix.c:1718
+#: config/mmix/mmix.c:1617
msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
msgstr "MMIX interne: valeur erronée pour « m », pas un CONST_INT"
-#: config/mmix/mmix.c:1737
+#: config/mmix/mmix.c:1636
msgid "MMIX Internal: Expected a register, not this"
msgstr "MMIX interne: attendait un registre, pas ceci"
-#: config/mmix/mmix.c:1747
+#: config/mmix/mmix.c:1646
msgid "MMIX Internal: Expected a constant, not this"
msgstr "MMIX interne: attendait une constante, pas ceci"
#. Presumably there's a missing case above if we get here.
-#: config/mmix/mmix.c:1779
+#: config/mmix/mmix.c:1678
#, c-format
msgid "MMIX Internal: Missing `%c' case in mmix_print_operand"
msgstr "MMIX interne: cas « %c » manquant dans mmix_print_operand"
#. We need the original here.
-#: config/mmix/mmix.c:1831
+#: config/mmix/mmix.c:1730
msgid "MMIX Internal: Cannot decode this operand"
msgstr "MMIX interne: ne peut décoder cette opérande"
-#: config/mmix/mmix.c:1891
+#: config/mmix/mmix.c:1787
msgid "MMIX Internal: This is not a recognized address"
msgstr "MMIX interne: ce n'est pas une adresse reconnue"
-#: config/mmix/mmix.c:2082
+#: config/mmix/mmix.c:1964
#, c-format
msgid "stack frame not a multiple of 8 bytes: %d"
msgstr "trame de pile n'est pas un multiple de 8 octets: %d"
-#: config/mmix/mmix.c:2321
+#: config/mmix/mmix.c:2203
#, c-format
msgid "stack frame not a multiple of octabyte: %d"
msgstr "trame de pile n'est pas un multiple de 8 octets: %d"
-#: config/mmix/mmix.c:2818 config/mmix/mmix.c:2887
+#: config/mmix/mmix.c:2677 config/mmix/mmix.c:2741
#, c-format
msgid "MMIX Internal: %s is not a shiftable int"
msgstr "MMIX interne: %s n'est pas un entier pouvant décalé"
-#: config/mmix/mmix.c:3006
+#: config/mmix/mmix.c:2857
msgid "MMIX Internal: Trying to output invalidly reversed condition:"
msgstr "MMIX interne: tentative de produire incorrectement une condition renversée:"
-#: config/mmix/mmix.c:3013
+#: config/mmix/mmix.c:2864
msgid "MMIX Internal: What's the CC of this?"
msgstr "MMIX interne: quel sorte de CC est-ce?"
-#: config/mmix/mmix.c:3017
+#: config/mmix/mmix.c:2868
msgid "MMIX Internal: What is the CC of this?"
msgstr "MMIX interne: quel sorte de CC est-ce?"
-#: config/mmix/mmix.c:3088
+#: config/mmix/mmix.c:2938
msgid "MMIX Internal: This is not a constant:"
msgstr "interne MMIX: ce n'est pas une constante:"
-#. For these target macros, there is no generic documentation here. You
-#. should read `Using and Porting GCC' for that. Only comments specific
-#. to the MMIX target are here.
-#.
-#. There are however references to the specific texinfo node (comments
-#. with "Node:"), so there should be little or nothing amiss. Probably
-#. the opposite, since we don't have to care about old littering and
-#. soon outdated generic comments.
-#. Node: Driver
-#. User symbols are in the same name-space as built-in symbols, but we
-#. don't need the built-in symbols, so remove those and instead apply
-#. stricter operand checking. Don't warn when expanding insns.
-#. Pass on -mset-program-start=N and -mset-data-start=M to the linker.
-#. Provide default program start 0x100 unless -mno-set-program-start.
-#. Don't do this if linking relocatably, with -r. For a final link,
-#. produce mmo, unless ELF is requested or when linking relocatably.
-#. Put unused option values here.
#: config/mmix/mmix.h:132
msgid "Set start-address of the program"
msgstr "Adress de départ du programme fixée"
@@ -12277,32 +11312,34 @@ msgid "Do not use addresses that allocate global registers"
msgstr "Ne pas utiliser des adresses qui allouent des registres globaux"
#: config/mmix/mmix.h:229
-#, fuzzy
msgid "Generate a single exit point for each function"
-msgstr "Générer un appel pour stopper si une fonction sans retour retourne un résultat"
+msgstr "Générer un point de sortie simple pour chaque fonction"
#: config/mmix/mmix.h:231
-#, fuzzy
msgid "Do not generate a single exit point for each function"
-msgstr "Ne pas générer des instructions multm"
+msgstr "Ne pas générer un point de sortie simple pour chaque fonction"
-#: config/mn10300/mn10300.h:59
-msgid "Work around hardware multiply bug"
-msgstr "Contourner le bug matériel de la multiplication"
-
-#: config/mn10300/mn10300.h:60
-msgid "Do not work around hardware multiply bug"
-msgstr "Ne pas contourner le bug matériel de la multiplication"
-
-#: config/mn10300/mn10300.h:61
+#: config/mn10300/linux.h:60 config/mn10300/mn10300.h:71
msgid "Target the AM33 processor"
msgstr "Cible le processeur AM33"
-#: config/mn10300/mn10300.h:65
+#: config/mn10300/linux.h:61 config/mn10300/mn10300.h:75
+msgid "Target the AM33/2.0 processor"
+msgstr "Cibler le processeur AM33/2.0"
+
+#: config/mn10300/linux.h:62 config/mn10300/mn10300.h:78
msgid "Enable linker relaxations"
msgstr "Autoriser la relâche de l'éditeur de liens"
-#: config/ns32k/ns32k.h:142 config/s390/s390.h:69
+#: config/mn10300/mn10300.h:69
+msgid "Work around hardware multiply bug"
+msgstr "Contourner le bug matériel de la multiplication"
+
+#: config/mn10300/mn10300.h:70
+msgid "Do not work around hardware multiply bug"
+msgstr "Ne pas contourner le bug matériel de la multiplication"
+
+#: config/ns32k/ns32k.h:142 config/s390/s390.h:125
msgid "Don't use hardware fp"
msgstr "Ne pas utiliser le FP matériel"
@@ -12374,16 +11411,16 @@ msgstr "\"Petites classes de registres\" kludge"
msgid "No \"Small register classes\" kludge"
msgstr "Pas de \"Petites classes de registres\" kludge"
-#: config/pa/pa.c:261
-#, fuzzy, c-format
+#: config/pa/pa.c:304
+#, c-format
msgid ""
"unknown -mschedule= option (%s).\n"
"Valid options are 700, 7100, 7100LC, 7200, 7300, and 8000\n"
msgstr ""
"Option inconnue -mschedule= (%s)\n"
-"Les options valides sont 700, 7100, 7100LC, 7200 et 8000\n"
+"Les options valides sont 700, 7100, 7100LC, 7200, 7300 et 8000\n"
-#: config/pa/pa.c:286
+#: config/pa/pa.c:329
#, c-format
msgid ""
"unknown -march= option (%s).\n"
@@ -12392,29 +11429,23 @@ msgstr ""
"Option inconnue -march= (%s)\n"
"Les options valides sont 1.0, 1.1 et 2.0\n"
-#: config/pa/pa.c:299
+#: config/pa/pa.c:342
msgid "PIC code generation is not supported in the portable runtime model\n"
msgstr "La génération de code PIC n'est pas supportée dans le modèle portable d'exécution\n"
-#: config/pa/pa.c:304
+#: config/pa/pa.c:347
msgid "PIC code generation is not compatible with fast indirect calls\n"
msgstr "La génération de code PIC n'est pas compatible avec les appels indirects rapides.\n"
-#: config/pa/pa.c:309
+#: config/pa/pa.c:352
msgid "-g is only supported when using GAS on this processor,"
msgstr "L'option -g est seulement supportée lorsque GAS est utilisé sur ce processeur,"
-#: config/pa/pa.c:310
-msgid "-g option disabled"
-msgstr "option -g désactivée"
-
-#: config/pa/pa-hiux.h:75 config/pa/pa-hpux.h:87 config/pa/pa-hpux7.h:81
-#: config/pa/pa64-hpux.h:25
+#: config/pa/pa-hpux.h:91 config/pa/pa64-hpux.h:25
msgid "Generate cpp defines for server IO"
msgstr "Générer les defines pour les IO d'un serveur"
-#: config/pa/pa-hiux.h:76 config/pa/pa-hpux.h:88 config/pa/pa-hpux7.h:82
-#: config/pa/pa64-hpux.h:27
+#: config/pa/pa-hpux.h:92 config/pa/pa64-hpux.h:27
msgid "Generate cpp defines for workstation IO"
msgstr "Générer les defines pour les IO d'une station de travail"
@@ -12446,153 +11477,140 @@ msgstr "Ne pas désactiver les registres FP"
#: config/pa/pa.h:246
msgid "Disable space regs"
-msgstr ""
+msgstr "Désactiver l'espace registre"
#: config/pa/pa.h:248
-#, fuzzy
msgid "Do not disable space regs"
-msgstr "Ne pas utiliser les registres FP"
+msgstr "Ne pas désactiver l'espace registre"
#: config/pa/pa.h:250
msgid "Put jumps in call delay slots"
-msgstr ""
+msgstr "Mettre des sauts dant les fentes de délais"
#: config/pa/pa.h:252
msgid "Do not put jumps in call delay slots"
-msgstr ""
+msgstr "Ne pas mettre des sauts dant les fentes de délais"
#: config/pa/pa.h:254
-#, fuzzy
msgid "Disable indexed addressing"
-msgstr "mode d'adressage invalide"
+msgstr "désactiver l'adressage indexé"
#: config/pa/pa.h:256
-#, fuzzy
msgid "Do not disable indexed addressing"
-msgstr "Ne pas utiliser les modes d'adressage complexes"
+msgstr "Ne pas désactiver l'adressage indexé"
#: config/pa/pa.h:258
-#, fuzzy
msgid "Use portable calling conventions"
-msgstr "Utiliser la convention normale d'appels"
+msgstr "Utiliser les conventions d'appels portables"
#: config/pa/pa.h:260
-#, fuzzy
msgid "Do not use portable calling conventions"
-msgstr "Utiliser la convention normale d'appels"
+msgstr "Ne pas utiliser les conventions d'appel portables"
#: config/pa/pa.h:262
msgid "Assume code will be assembled by GAS"
-msgstr ""
+msgstr "Assumer que le code sera assemblé par GAS"
#: config/pa/pa.h:264
msgid "Do not assume code will be assembled by GAS"
-msgstr ""
+msgstr "Ne pas assumer que le code sera assemblé par GAS"
#: config/pa/pa.h:268
-#, fuzzy
msgid "Do not use software floating point"
-msgstr "Ne pas utiliser le matériel pour virgule flottante"
+msgstr "Ne pas utiliser le logiciel pour virgule flottante"
#: config/pa/pa.h:270
msgid "Emit long load/store sequences"
-msgstr ""
+msgstr "Générer des instructions multiples pour chargement/stockage"
#: config/pa/pa.h:272
-#, fuzzy
msgid "Do not emit long load/store sequences"
msgstr "Ne pas générer les instructions multiples de chargement/stockage"
#: config/pa/pa.h:274
-#, fuzzy
msgid "Generate fast indirect calls"
-msgstr "Ne pas utiliser les appels indirects"
+msgstr "Ne pas utiliser les appels rapides indirects"
#: config/pa/pa.h:276
-#, fuzzy
msgid "Do not generate fast indirect calls"
-msgstr "Ne pas générer de directives .size"
+msgstr "Ne pas générer de directives rapides indirects"
#: config/pa/pa.h:278
-#, fuzzy
msgid "Generate code for huge switch statements"
-msgstr "Générer du code pour la partie haute de la mémoire"
+msgstr "Générer du code pour les grandes déclarations de branchements"
#: config/pa/pa.h:280
-#, fuzzy
msgid "Do not generate code for huge switch statements"
-msgstr "Ne pas générer du code pour les appels proches"
+msgstr "Ne pas générer du code pour les grandes déclarations de branchement"
#: config/pa/pa.h:282
-#, fuzzy
msgid "Always generate long calls"
-msgstr "Ne pas générer du code pour les appels proches"
+msgstr "Générer toujours des appels longs"
#: config/pa/pa.h:284
msgid "Generate long calls only when needed"
-msgstr ""
+msgstr "Générer des appels longs lorsque nécessaire"
#: config/pa/pa.h:286
-#, fuzzy
msgid "Enable linker optimizations"
-msgstr "Autoriser les optimisations SSA"
+msgstr "Activer les optimisations par l'éditeur de liens"
#: config/pa/pa.h:312
msgid "Specify architecture for code generation. Values are 1.0, 1.1, and 2.0. 2.0 requires gas snapshot 19990413 or later."
-msgstr ""
+msgstr "Spécifier l'architecture pour la génération de code. Les valeurs sont 1.0, 1.1 et 2.0. 2.0 requiert gas snapshot 19990413 ou plus récent."
#: config/pa/pa64-hpux.h:29
msgid "Assume code will be linked by GNU ld"
-msgstr ""
+msgstr "Assumer que le code sera lié par GNU ld"
#: config/pa/pa64-hpux.h:31
msgid "Assume code will be linked by HP ld"
-msgstr ""
+msgstr "Assumer que le code sera lié par HP ld"
-#: config/pdp11/pdp11.h:57
+#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:316
msgid "Do not use hardware floating point"
msgstr "Ne pas utiliser le matériel pour virgule flottante"
#. return float result in ac0
-#: config/pdp11/pdp11.h:59
+#: config/pdp11/pdp11.h:64
msgid "Return floating point results in ac0"
msgstr "Le résultat retourné en virgule flottante se retrouve dans AC0."
-#: config/pdp11/pdp11.h:60
+#: config/pdp11/pdp11.h:65
msgid "Return floating point results in memory"
msgstr "Le résultat retourné en virgule flottante se retrouve en mémoire."
#. is 11/40
-#: config/pdp11/pdp11.h:62
+#: config/pdp11/pdp11.h:67
msgid "Generate code for an 11/40"
msgstr "Générer du code pour un 11/40"
#. is 11/45
-#: config/pdp11/pdp11.h:65
+#: config/pdp11/pdp11.h:70
msgid "Generate code for an 11/45"
msgstr "Générer du code pour un 11/45"
#. is 11/10
-#: config/pdp11/pdp11.h:68
+#: config/pdp11/pdp11.h:73
msgid "Generate code for an 11/10"
msgstr "Générer du code pour un 11/10"
#. use movstrhi for bcopy
#. use 32 bit for int
-#: config/pdp11/pdp11.h:73 config/pdp11/pdp11.h:74
+#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
msgid "Use 32 bit int"
msgstr "Utiliser des int de 32 bits"
-#: config/pdp11/pdp11.h:75 config/pdp11/pdp11.h:76
+#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
msgid "Use 16 bit int"
msgstr "Utiliser des int de 16 bits"
#. use 32 bit for float
-#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
+#: config/pdp11/pdp11.h:83 config/pdp11/pdp11.h:84
msgid "Use 32 bit float"
msgstr "Utiliser des flottants de 32 bits"
-#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
+#: config/pdp11/pdp11.h:85 config/pdp11/pdp11.h:86
msgid "Use 64 bit float"
msgstr "Utiliser des flottants de 64 bits"
@@ -12600,70 +11618,54 @@ msgstr "Utiliser des flottants de 64 bits"
#. is branching expensive - on a PDP, it's actually really cheap
#. this is just to play around and check what code gcc generates
#. split instruction and data memory?
-#: config/pdp11/pdp11.h:90
+#: config/pdp11/pdp11.h:95
msgid "Target has split I&D"
msgstr "Cible a un I&D séparé"
-#: config/pdp11/pdp11.h:91
+#: config/pdp11/pdp11.h:96
msgid "Target does not have split I&D"
msgstr "Cible n'a pas un I&D séparé"
#. UNIX assembler syntax?
-#: config/pdp11/pdp11.h:93
+#: config/pdp11/pdp11.h:98
msgid "Use UNIX assembler syntax"
msgstr "Utliser la syntaxe de l'assembleur UNIX"
-#: config/pdp11/pdp11.h:94
+#: config/pdp11/pdp11.h:99
msgid "Use DEC assembler syntax"
msgstr "Utliser la syntaxe de l'assembleur DEC"
-#: config/romp/romp.c:717 config/rs6000/rs6000.c:7755
-#, c-format
-msgid "invalid %%S value"
-msgstr "valeur %%S invalide"
+#: config/rs6000/host-darwin.c:52
+msgid "Segmentation Fault (code)"
+msgstr "Faute de segmentation (code)"
-#: config/romp/romp.c:726 config/romp/romp.c:733
-#, c-format
-msgid "invalid %%b value"
-msgstr "valeur %%b invalide"
+#: config/rs6000/host-darwin.c:83
+msgid "Out of stack space.\n"
+msgstr "Manque d'espace sur la pile.\n"
-#: config/romp/romp.c:773 config/romp/romp.c:784
+#: config/rs6000/host-darwin.c:104
#, c-format
-msgid "invalid %%z value"
-msgstr "valeur %%z invalide"
+msgid "Try running `%s' in the shell to raise its limit.\n"
+msgstr "Essayer d'exécuter « %s » dans le shell pour augmenter la limite.\n"
-#: config/romp/romp.c:792 config/romp/romp.c:800
-#, c-format
-msgid "invalid %%Z value"
-msgstr "valeur %%Z invalide"
+#: config/rs6000/host-darwin.c:117
+msgid "Segmentation Fault"
+msgstr "Faute de segmentation"
-#: config/romp/romp.c:807 config/romp/romp.c:816 config/romp/romp.c:823
-#: config/rs6000/rs6000.c:7584
+#: config/rs6000/host-darwin.c:131
#, c-format
-msgid "invalid %%k value"
-msgstr "valeur %%k invalide"
+msgid "While setting up signal stack: %m"
+msgstr "Lors de la configuration de la pile de signaux: %m"
-#: config/romp/romp.c:908 config/romp/romp.c:951
+#: config/rs6000/host-darwin.c:137
#, c-format
-msgid "invalid %%j value"
-msgstr "valeur %%j invalide"
+msgid "While setting up signal handler: %m"
+msgstr "Lors de la configuration de la routine de traitement de signal: %m"
-#. Perform any needed actions needed for a function that is receiving a
-#. variable number of arguments.
-#.
-#. CUM is as above.
-#.
-#. MODE and TYPE are the mode and type of the current parameter.
-#.
-#. PRETEND_SIZE is a variable that should be set to the amount of stack
-#. that must be pushed by the prolog to pretend that our caller pushed
-#. it.
-#.
-#. Normally, this macro will push all remaining incoming registers on the
-#. stack and set PRETEND_SIZE to the length of the registers pushed.
-#: config/romp/romp.h:648
-msgid "can't have varargs with -mfp-arg-in-fp-regs"
-msgstr "ne peut avoir varargs avec -mfp-arg-in-fp-regs"
+#: config/rs6000/host-darwin.c:184
+#, c-format
+msgid "couldn't unmap pch_address_space: %m\n"
+msgstr "ne peut défaire la map pch_address_space: %m\n"
#. Handle the machine specific pragma longcall. Its syntax is
#.
@@ -12674,203 +11676,239 @@ msgstr "ne peut avoir varargs avec -mfp-arg-in-fp-regs"
#. rs6000_default_long_calls is set to the value of TOGGLE, changing
#. whether or not new function declarations receive a longcall
#. attribute by default.
-#: config/rs6000/rs6000-c.c:44
-#, fuzzy
+#: config/rs6000/rs6000-c.c:46
msgid "ignoring malformed #pragma longcall"
-msgstr "#pragma ignoré %s"
+msgstr "#pragma longcall mal composé"
-#: config/rs6000/rs6000-c.c:58
-#, fuzzy
+#: config/rs6000/rs6000-c.c:59
msgid "missing open paren"
-msgstr "attribut Code manquant"
+msgstr "parenthèse ouvrante manquante"
-#: config/rs6000/rs6000-c.c:60
-#, fuzzy
+#: config/rs6000/rs6000-c.c:61
msgid "missing number"
-msgstr "Nom manquant"
+msgstr "nombre manquant"
-#: config/rs6000/rs6000-c.c:62
-#, fuzzy
+#: config/rs6000/rs6000-c.c:63
msgid "missing close paren"
-msgstr "Nom de classe manquant"
+msgstr "parenthèse fermante manquante"
-#: config/rs6000/rs6000-c.c:65
+#: config/rs6000/rs6000-c.c:66
msgid "number must be 0 or 1"
-msgstr ""
+msgstr "le nombre doit être 0 ou 1"
-#: config/rs6000/rs6000-c.c:68
-#, fuzzy
+#: config/rs6000/rs6000-c.c:69
msgid "junk at end of #pragma longcall"
-msgstr "rebut à la fin de #pragma map"
+msgstr "rebut à la fin de #pragma longcall"
-#: config/rs6000/rs6000.c:592
+#: config/rs6000/rs6000.c:793
msgid "-mmultiple is not supported on little endian systems"
msgstr "-mmultiple n'est pas supporté sur des système à octets de poids faible"
-#: config/rs6000/rs6000.c:599
+#: config/rs6000/rs6000.c:800
msgid "-mstring is not supported on little endian systems"
msgstr "-mstring n'est pas supporté sur des système à octets de poids faible"
-#: config/rs6000/rs6000.c:623
+#: config/rs6000/rs6000.c:814
#, c-format
msgid "unknown -mdebug-%s switch"
msgstr "option -mdebug-%s inconnue"
-#: config/rs6000/rs6000.c:635
+#: config/rs6000/rs6000.c:826
#, c-format
msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'"
-msgstr ""
+msgstr "argument « %s » inconnu de l'option -mtraceback; attendu « full », « partial » ou « none »"
-#: config/rs6000/rs6000.c:646
+#: config/rs6000/rs6000.c:837
#, c-format
msgid "Unknown switch -mlong-double-%s"
msgstr "option -mlong-double-%s inconnue"
-#: config/rs6000/rs6000.c:738
-#, fuzzy, c-format
-msgid "unknown -misel= option specified: '%s'"
-msgstr "ABI spécifié inconnu: « %s »"
+#: config/rs6000/rs6000.c:1008
+#, c-format
+msgid "unknown -m%s= option specified: '%s'"
+msgstr "option -m%s= inconnue spécifiée: « %s »"
-#: config/rs6000/rs6000.c:753
-#, fuzzy, c-format
-msgid "unknown -mvrsave= option specified: '%s'"
-msgstr "ABI spécifié inconnu: « %s »"
+#: config/rs6000/rs6000.c:1025
+#, c-format
+msgid "not configured for ABI: '%s'"
+msgstr "pas configuré pour ABI: « %s »"
-#: config/rs6000/rs6000.c:772
+#: config/rs6000/rs6000.c:1031
#, c-format
msgid "unknown ABI specified: '%s'"
msgstr "ABI spécifié inconnu: « %s »"
-#: config/rs6000/rs6000.c:4206
-#, fuzzy
+#: config/rs6000/rs6000.c:1045
+#, c-format
+msgid "unknown -malign-XXXXX option specified: '%s'"
+msgstr "option -malign-XXXXX inconnue spécifiée: « %s »"
+
+#: config/rs6000/rs6000.c:5358
msgid "argument 1 must be a 5-bit signed literal"
-msgstr "argument 3 de « %s » doit être un litéral de 2 bits"
+msgstr "argument 1 doit être un litéral signé de 5 bits"
-#: config/rs6000/rs6000.c:4313 config/rs6000/rs6000.c:4903
-#, fuzzy
+#: config/rs6000/rs6000.c:5460 config/rs6000/rs6000.c:6083
msgid "argument 2 must be a 5-bit unsigned literal"
-msgstr "argument 3 de « %s » doit être un litéral de 2 bits"
+msgstr "argument 2 doit être un litéral non signé de 5 bits"
-#: config/rs6000/rs6000.c:4356
+#: config/rs6000/rs6000.c:5500
msgid "argument 1 of __builtin_altivec_predicate must be a constant"
msgstr "argument 1 de « __builtin_altivec_predicate » doit être une constante"
-#: config/rs6000/rs6000.c:4410
+#: config/rs6000/rs6000.c:5554
msgid "argument 1 of __builtin_altivec_predicate is out of range"
-msgstr "argument 1 de « __builtin_altivec_predicate » est hors gamme"
+msgstr "argument 1 de « __builtin_altivec_predicate » est hors limite"
-#: config/rs6000/rs6000.c:4489
-#, fuzzy
+#: config/rs6000/rs6000.c:5682
msgid "argument 3 must be a 4-bit unsigned literal"
-msgstr "argument 3 de « %s » doit être un litéral de 2 bits"
+msgstr "argument 3 doit être un litéral non signé de 4 bits"
-#: config/rs6000/rs6000.c:4666
-#, fuzzy, c-format
+#: config/rs6000/rs6000.c:5852
+#, c-format
msgid "argument to `%s' must be a 2-bit unsigned literal"
-msgstr "argument 3 de « %s » doit être un litéral de 2 bits"
+msgstr "argument de « %s » doit être un litéral non signé de 2 bits"
-#: config/rs6000/rs6000.c:4782
-#, fuzzy
+#: config/rs6000/rs6000.c:5965
msgid "argument to dss must be a 2-bit unsigned literal"
-msgstr "argument 3 de « %s » doit être un litéral de 2 bits"
+msgstr "argument de dss doit être un litéral non signé de 2 bits"
-#: config/rs6000/rs6000.c:5013
-#, fuzzy
+#: config/rs6000/rs6000.c:6203
msgid "argument 1 of __builtin_spe_predicate must be a constant"
-msgstr "argument 1 de « __builtin_altivec_predicate » doit être une constante"
+msgstr "argument 1 de « __builtin_spe_predicate » doit être une constante"
-#: config/rs6000/rs6000.c:5086
-#, fuzzy
+#: config/rs6000/rs6000.c:6276
msgid "argument 1 of __builtin_spe_predicate is out of range"
-msgstr "argument 1 de « __builtin_altivec_predicate » est hors gamme"
+msgstr "argument 1 de « __builtin_spe_predicate » est hors limite"
-#: config/rs6000/rs6000.c:7511
+#: config/rs6000/rs6000.c:8711
#, c-format
msgid "invalid %%f value"
msgstr "valeur %%f invalide"
-#: config/rs6000/rs6000.c:7520
+#: config/rs6000/rs6000.c:8720
#, c-format
msgid "invalid %%F value"
msgstr "valeur %%F invalide"
-#: config/rs6000/rs6000.c:7529
+#: config/rs6000/rs6000.c:8729
#, c-format
msgid "invalid %%G value"
msgstr "valeur %%G invalide"
-#: config/rs6000/rs6000.c:7564
+#: config/rs6000/rs6000.c:8764
#, c-format
msgid "invalid %%j code"
msgstr "valeur %%j invalide"
-#: config/rs6000/rs6000.c:7574
+#: config/rs6000/rs6000.c:8774
#, c-format
msgid "invalid %%J code"
msgstr "valeur %%J invalide"
-#: config/rs6000/rs6000.c:7604
+#: config/rs6000/rs6000.c:8784
+#, c-format
+msgid "invalid %%k value"
+msgstr "valeur %%k invalide"
+
+#: config/rs6000/rs6000.c:8804 config/xtensa/xtensa.c:1985
#, c-format
msgid "invalid %%K value"
msgstr "valeur %%K invalide"
-#: config/rs6000/rs6000.c:7671
+#: config/rs6000/rs6000.c:8871
#, c-format
msgid "invalid %%O value"
msgstr "valeur %%O invalide"
-#: config/rs6000/rs6000.c:7793
+#: config/rs6000/rs6000.c:8918
+#, c-format
+msgid "invalid %%q value"
+msgstr "valeur %%q invalide"
+
+#: config/rs6000/rs6000.c:8962
+#, c-format
+msgid "invalid %%S value"
+msgstr "valeur %%S invalide"
+
+#: config/rs6000/rs6000.c:9004
#, c-format
msgid "invalid %%T value"
msgstr "valeur %%T invalide"
-#: config/rs6000/rs6000.c:7803
+#: config/rs6000/rs6000.c:9014
#, c-format
msgid "invalid %%u value"
msgstr "valeur %%u invalide"
-#: config/rs6000/rs6000.c:7812
+#: config/rs6000/rs6000.c:9023 config/xtensa/xtensa.c:1955
#, c-format
msgid "invalid %%v value"
msgstr "valeur %%v invalide"
-#: config/rs6000/rs6000.c:12242
+#: config/rs6000/rs6000.c:13513
msgid "no profiling of 64-bit code for this ABI"
-msgstr ""
+msgstr "pas de profilage du code de 64 bits pour cet ABI"
-#: config/rs6000/aix.h:160 config/rs6000/beos.h:32
+#: config/rs6000/aix.h:184 config/rs6000/beos.h:32
msgid "Always pass floating-point arguments in memory"
msgstr "Toujours passer des arguments en virgule flottante en mémoire"
-#: config/rs6000/aix.h:162 config/rs6000/beos.h:34
+#: config/rs6000/aix.h:186 config/rs6000/beos.h:34
msgid "Don't always pass floating-point arguments in memory"
msgstr "Na pas toujours passer des arguments en virgule flottante en mémoire"
-#: config/rs6000/aix41.h:28 config/rs6000/aix43.h:32 config/rs6000/aix51.h:32
-#: config/rs6000/aix52.h:32
+#: config/rs6000/aix41.h:27 config/rs6000/aix43.h:31 config/rs6000/aix51.h:31
+#: config/rs6000/aix52.h:31
msgid "Support message passing with the Parallel Environment"
msgstr "Supporter le passage de messages dans un environnement parallèle"
-#: config/rs6000/aix43.h:28 config/rs6000/aix51.h:28 config/rs6000/aix52.h:28
+#: config/rs6000/aix43.h:27 config/rs6000/aix51.h:27 config/rs6000/aix52.h:27
msgid "Compile for 64-bit pointers"
msgstr "Compiler pour des pointeurs de 64 bits"
-#: config/rs6000/aix43.h:30 config/rs6000/aix51.h:30 config/rs6000/aix52.h:30
+#: config/rs6000/aix43.h:29 config/rs6000/aix51.h:29 config/rs6000/aix52.h:29
msgid "Compile for 32-bit pointers"
msgstr "Compiler pour des pointeurs de 32 bits"
-#: config/rs6000/aix43.h:49 config/rs6000/aix51.h:49 config/rs6000/aix52.h:49
+#: config/rs6000/aix43.h:48 config/rs6000/aix51.h:48 config/rs6000/aix52.h:48
msgid "-maix64 and POWER architecture are incompatible"
msgstr "-maix64 et architecture POWER sont incompatibles"
-#: config/rs6000/aix43.h:54 config/rs6000/aix51.h:54 config/rs6000/aix52.h:54
+#: config/rs6000/aix43.h:53 config/rs6000/aix51.h:53 config/rs6000/aix52.h:53
msgid "-maix64 requires PowerPC64 architecture remain enabled"
msgstr "-maix64 requiert une architecture PowerPC64 qui demeure sélectionnée"
-#: config/rs6000/aix43.h:58 config/rs6000/aix51.h:58 config/rs6000/aix52.h:58
+#: config/rs6000/aix43.h:57 config/rs6000/aix51.h:57 config/rs6000/aix52.h:57
msgid "-maix64 required: 64-bit computation with 32-bit addressing not yet supported"
msgstr "-maix64 requis: calcul en 64 bits avec un adressage de 32 bits n'est pas encore supporté"
+#: config/rs6000/darwin.h:64
+msgid "Generate code suitable for executables (NOT shared libs)"
+msgstr "Générer du code adapté pour les exécutables (PAS les librairies partagées)"
+
+#. The Darwin ABI always includes AltiVec, can't be (validly) turned
+#. off.
+#: config/rs6000/darwin.h:80
+msgid "-mdynamic-no-pic overrides -fpic or -fPIC"
+msgstr "-mdynamic-no-pic écrase -fpic ou -fPIC"
+
+#. Darwin doesn't support -fpic.
+#: config/rs6000/darwin.h:86
+msgid "-fpic is not supported; -fPIC assumed"
+msgstr "-fpic n'est pas supporté; -fPIC assumé"
+
+#: config/rs6000/linux64.h:96
+msgid "-m64 requires a PowerPC64 cpu"
+msgstr "-m64 requiert un processeur PowerPC64"
+
+#: config/rs6000/linux64.h:201
+msgid "Call mcount for profiling before a function prologue"
+msgstr "Appeller mcount pour le profilage avant le prologue de la fonction"
+
+#: config/rs6000/linux64.h:203
+msgid "Call mcount for profiling after a function prologue"
+msgstr "Ne pas appeller mcount pour le profilage avant le prologue de la fonction"
+
#. Run-time compilation parameters selecting different hardware subsets.
#.
#. Macro to define tables used to set the flags.
@@ -12878,162 +11916,197 @@ msgstr "-maix64 requis: calcul en 64 bits avec un adressage de 32 bits n'est pas
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/rs6000/rs6000.h:240
+#: config/rs6000/rs6000.h:262
msgid "Use POWER instruction set"
msgstr "Utiliser le jeu d'instructions du POWER"
-#: config/rs6000/rs6000.h:243
+#: config/rs6000/rs6000.h:265
msgid "Use POWER2 instruction set"
msgstr "Utiliser le jeu d'instructions du POWER2"
-#: config/rs6000/rs6000.h:245
+#: config/rs6000/rs6000.h:267
msgid "Do not use POWER2 instruction set"
msgstr "Ne pas utiliser le jeu d'instructions du POWER2"
-#: config/rs6000/rs6000.h:248
+#: config/rs6000/rs6000.h:270
msgid "Do not use POWER instruction set"
msgstr "Ne pas utiliser le jeu d'instructions du POWER"
-#: config/rs6000/rs6000.h:250
+#: config/rs6000/rs6000.h:272
msgid "Use PowerPC instruction set"
msgstr "Utiliser le jeu d'instructions du PowerPC"
-#: config/rs6000/rs6000.h:253
+#: config/rs6000/rs6000.h:275
msgid "Do not use PowerPC instruction set"
msgstr "Ne pas utiliser le jeu d'instructions du PowerPC"
-#: config/rs6000/rs6000.h:255
+#: config/rs6000/rs6000.h:277
msgid "Use PowerPC General Purpose group optional instructions"
msgstr "Utiliser le groupe d'instructions optionnelles d'utilité général du PowerPC"
-#: config/rs6000/rs6000.h:257
-msgid "Don't use PowerPC General Purpose group optional instructions"
-msgstr "Ne pas utiliser le groupe d'instructions optionnelles d'utilité général du PowerPC"
+#: config/rs6000/rs6000.h:279
+msgid "Do not use PowerPC General Purpose group optional instructions"
+msgstr "Ne pas utiliser le groupe d'instructions optionnelles d'usage général du PowerPC"
-#: config/rs6000/rs6000.h:259
+#: config/rs6000/rs6000.h:281
msgid "Use PowerPC Graphics group optional instructions"
msgstr "Utiliser le groupe d'instructions graphiques optionnelles du PowerPC"
-#: config/rs6000/rs6000.h:261
-msgid "Don't use PowerPC Graphics group optional instructions"
-msgstr "Ne pas utiliser le groupe d'instructions graphiques optionnelles du PowerPC"
+#: config/rs6000/rs6000.h:283
+msgid "Do not use PowerPC Graphics group optional instructions"
+msgstr "Ne pas utiliser le groupe d'instructions optionnelles graphiques du PowerPC"
-#: config/rs6000/rs6000.h:263
+#: config/rs6000/rs6000.h:285
msgid "Use PowerPC-64 instruction set"
msgstr "Utiliser le jeu d'instructions du PowerPC-64"
-#: config/rs6000/rs6000.h:265
-msgid "Don't use PowerPC-64 instruction set"
+#: config/rs6000/rs6000.h:287
+msgid "Do not use PowerPC-64 instruction set"
msgstr "Ne pas utiliser le jeu d'instructions du PowerPC-64"
-#: config/rs6000/rs6000.h:267
+#: config/rs6000/rs6000.h:289
msgid "Use AltiVec instructions"
msgstr "Utiliser les instructions AltiVec"
-#: config/rs6000/rs6000.h:269
-msgid "Don't use AltiVec instructions"
+#: config/rs6000/rs6000.h:291
+msgid "Do not use AltiVec instructions"
msgstr "Ne pas utiliser les instructions AltiVec"
-#: config/rs6000/rs6000.h:271
+#: config/rs6000/rs6000.h:293
msgid "Use new mnemonics for PowerPC architecture"
msgstr "Utiliser les nouvelles mnémoniques pour l'architecture du PowerPC"
-#: config/rs6000/rs6000.h:273
+#: config/rs6000/rs6000.h:295
msgid "Use old mnemonics for PowerPC architecture"
msgstr "Utiliser les anciennes mnémoniques pour l'architecture du PowerPC"
-#: config/rs6000/rs6000.h:276
+#: config/rs6000/rs6000.h:298
msgid "Put everything in the regular TOC"
msgstr "Place tout dans le TOC régulier"
-#: config/rs6000/rs6000.h:278
+#: config/rs6000/rs6000.h:300
msgid "Place floating point constants in TOC"
msgstr "Placer les constantes en virgule flottante dans le TOC"
-#: config/rs6000/rs6000.h:280
-msgid "Don't place floating point constants in TOC"
+#: config/rs6000/rs6000.h:302
+msgid "Do not place floating point constants in TOC"
msgstr "Ne pas placer les constantes en virgule flottante dans le TOC"
-#: config/rs6000/rs6000.h:282
+#: config/rs6000/rs6000.h:304
msgid "Place symbol+offset constants in TOC"
msgstr "Placer les constantes symboles+décalages dans le TOC"
-#: config/rs6000/rs6000.h:284
-msgid "Don't place symbol+offset constants in TOC"
+#: config/rs6000/rs6000.h:306
+msgid "Do not place symbol+offset constants in TOC"
msgstr "Ne pas placer les constantes symboles+décalages dans le TOC"
-#: config/rs6000/rs6000.h:290
+#: config/rs6000/rs6000.h:312
msgid "Place variable addresses in the regular TOC"
msgstr "Placer les adresses variables dans un TOC régulier"
-#: config/rs6000/rs6000.h:296
+#: config/rs6000/rs6000.h:318
msgid "Generate load/store multiple instructions"
msgstr "Générer les instructions multiples de chargement/stockage"
-#: config/rs6000/rs6000.h:298
+#: config/rs6000/rs6000.h:320
msgid "Do not generate load/store multiple instructions"
msgstr "Ne pas générer les instructions multiples de chargement/stockage"
-#: config/rs6000/rs6000.h:302
+#: config/rs6000/rs6000.h:322
msgid "Generate string instructions for block moves"
msgstr "Générer les instructions chaînes pour les déplacements de blocs"
-#: config/rs6000/rs6000.h:304
+#: config/rs6000/rs6000.h:324
msgid "Do not generate string instructions for block moves"
msgstr "Ne pas générer les instructions chaînes pour les déplacements de blocs"
-#: config/rs6000/rs6000.h:308
+#: config/rs6000/rs6000.h:326
msgid "Generate load/store with update instructions"
msgstr "Générer les instructions de mise à jour de chargement/stockage"
-#: config/rs6000/rs6000.h:310
+#: config/rs6000/rs6000.h:328
msgid "Do not generate load/store with update instructions"
msgstr "Ne pas générer les instructions de mise à jour de chargement/stockage"
-#: config/rs6000/rs6000.h:318
-msgid "Don't schedule the start and end of the procedure"
+#: config/rs6000/rs6000.h:332
+msgid "Do not generate fused multiply/add instructions"
+msgstr "Ne pas générer des instructions fusionnés de multiplication/addition"
+
+#: config/rs6000/rs6000.h:336
+msgid "Do not schedule the start and end of the procedure"
msgstr "Ne pas ordonnancer le début et la fin de la procédure"
-#: config/rs6000/rs6000.h:324
+#: config/rs6000/rs6000.h:342
msgid "Return all structures in memory (AIX default)"
msgstr "Retourner toutes les structures en mémoire (par défaut sur AIX)"
-#: config/rs6000/rs6000.h:326
+#: config/rs6000/rs6000.h:344
msgid "Return small structures in registers (SVR4 default)"
msgstr "Retourner les petites structures par les registres (par défaut sur SVR4)"
-#: config/rs6000/rs6000.h:391 config/sparc/sparc.h:633
+#: config/rs6000/rs6000.h:350
+msgid "Generate single field mfcr instruction"
+msgstr "Générer des instructions à champ simple mfcr"
+
+#: config/rs6000/rs6000.h:352
+msgid "Do not generate single field mfcr instruction"
+msgstr "Ne pas générer des instructions à champ simple mfcr"
+
+#: config/rs6000/rs6000.h:435 config/sparc/sparc.h:648
msgid "Use features of and schedule code for given CPU"
msgstr "Utiliser les options et ordonnancer le code pour le processeur donné"
-#: config/rs6000/rs6000.h:394
+#: config/rs6000/rs6000.h:438
msgid "Enable debug output"
msgstr "Autoriser la sortie lors de la mise au point"
-#: config/rs6000/rs6000.h:396
+#: config/rs6000/rs6000.h:440
msgid "Select full, part, or no traceback table"
-msgstr ""
+msgstr "Sélectionner « full », « part » ou « none »"
-#: config/rs6000/rs6000.h:397
+#: config/rs6000/rs6000.h:441
msgid "Specify ABI to use"
msgstr "Spécifier l'ABI à utiliser"
-#: config/rs6000/rs6000.h:399
+#: config/rs6000/rs6000.h:443
msgid "Specify size of long double (64 or 128 bits)"
msgstr "Spécifier la taille des long double (64 ou 128 bits)"
-#: config/rs6000/rs6000.h:401
+#: config/rs6000/rs6000.h:445
msgid "Specify yes/no if isel instructions should be generated"
-msgstr ""
+msgstr "Spécifier yes (pour oui)/ no (pour non) si les instruction isel doivent être générés"
+
+#: config/rs6000/rs6000.h:447
+msgid "Specify yes/no if SPE SIMD instructions should be generated"
+msgstr "Spécifier yes (pour oui) /no (pour non) si les instructions SPE SIMD doivent être générées"
-#: config/rs6000/rs6000.h:403
+#: config/rs6000/rs6000.h:449
+msgid "Specify yes/no if using floating point in the GPRs"
+msgstr "Spécifier yes (pour oui) /no (pour non) si les nombres en virgule flottante sont utilisés dans le GPR"
+
+#: config/rs6000/rs6000.h:451
msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec"
-msgstr ""
+msgstr "Spécifier yes (pour oui)/ no (pour non) si les instruction VRSAVE doivent être générés pour ALtiVec"
-#: config/rs6000/rs6000.h:405
-#, fuzzy
+#: config/rs6000/rs6000.h:453
msgid "Avoid all range limits on call instructions"
-msgstr "Interdire les instructions parallèles"
+msgstr "Éviter toutes les limites sur les instructions d'appel"
+
+#: config/rs6000/rs6000.h:456
+msgid "Determine which dependences between insns are considered costly"
+msgstr "Déterminer laquelle des dépendances entre les insns qui sont considérées coûteuses"
+
+#: config/rs6000/rs6000.h:458
+msgid "Specify which post scheduling nop insertion scheme to apply"
+msgstr "Spécifier lequel schème de post ordonnancement d'insertion de NOP doit être appliqué"
+
+#: config/rs6000/rs6000.h:460
+msgid "Specify alignment of structure fields default/natural"
+msgstr "Spécifier l'alignement des champs de structure par défaut/naturel"
+
+#: config/rs6000/rs6000.h:462
+msgid "Specify scheduling priority for dispatch slot restricted insns"
+msgstr "Spécifier la priorité d'ordonnancement pour la répartition de fentes insns restreintes"
#. Definitions for __builtin_return_address and __builtin_frame_address.
#. __builtin_return_address (0) should give link register (65), enable
@@ -13047,7 +12120,7 @@ msgstr "Interdire les instructions parallèles"
#. Number of bytes into the frame return addresses can be found. See
#. rs6000_stack_info in rs6000.c for more information on how the different
#. abi's store the return address.
-#: config/rs6000/rs6000.h:1884
+#: config/rs6000/rs6000.h:1926
msgid "RETURN_ADDRESS_OFFSET not supported"
msgstr "RETURN_ADDRESS_OFFSET n'est pas supporté"
@@ -13059,90 +12132,97 @@ msgstr "Sélectionner la convention d'appel ABI"
msgid "Select method for sdata handling"
msgstr "Sélectionner la méthode de traitement sdata"
-#: config/rs6000/sysv4.h:103
+#: config/rs6000/sysv4.h:100
msgid "Align to the base type of the bit-field"
msgstr "Aligner à la base du type du champ de bits"
-#: config/rs6000/sysv4.h:105
+#: config/rs6000/sysv4.h:102
msgid "Don't align to the base type of the bit-field"
msgstr "Ne pas aligner à la base du type du champ de bits"
-#: config/rs6000/sysv4.h:107
+#: config/rs6000/sysv4.h:104
msgid "Don't assume that unaligned accesses are handled by the system"
msgstr "Ne pas présumer que les accès non alignées sont traités par le système"
-#: config/rs6000/sysv4.h:109
+#: config/rs6000/sysv4.h:106
msgid "Assume that unaligned accesses are handled by the system"
msgstr "Présumer que les accès non alignées sont traités par le système"
-#: config/rs6000/sysv4.h:111 config/rs6000/sysv4.h:115
+#: config/rs6000/sysv4.h:108 config/rs6000/sysv4.h:112
msgid "Produce code relocatable at runtime"
msgstr "Produire du code relocalisable au moment de l'exécution"
-#: config/rs6000/sysv4.h:113 config/rs6000/sysv4.h:117
+#: config/rs6000/sysv4.h:110 config/rs6000/sysv4.h:114
msgid "Don't produce code relocatable at runtime"
msgstr "Ne pas produire du code relocalisable au moment de l'exécution"
-#: config/rs6000/sysv4.h:119 config/rs6000/sysv4.h:121
+#: config/rs6000/sysv4.h:116 config/rs6000/sysv4.h:118
msgid "Produce little endian code"
msgstr "Produire du code pour système à octets de poids faible (little endian)"
-#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:125
+#: config/rs6000/sysv4.h:120 config/rs6000/sysv4.h:122
msgid "Produce big endian code"
msgstr "Produire du code pour système à octets de poids fort (big endian)"
-#: config/rs6000/sysv4.h:126 config/rs6000/sysv4.h:127
-#: config/rs6000/sysv4.h:128 config/rs6000/sysv4.h:129
-#: config/rs6000/sysv4.h:130 config/rs6000/sysv4.h:131
-#: config/rs6000/sysv4.h:141 config/rs6000/sysv4.h:142
-#: config/rs6000/sysv4.h:153 config/rs6000/sysv4.h:155
-#: config/rs6000/sysv4.h:157
+#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:124
+#: config/rs6000/sysv4.h:125 config/rs6000/sysv4.h:126
+#: config/rs6000/sysv4.h:127 config/rs6000/sysv4.h:128
+#: config/rs6000/sysv4.h:138 config/rs6000/sysv4.h:139
+#: config/rs6000/sysv4.h:151 config/rs6000/sysv4.h:157
msgid "no description yet"
msgstr "aucune description encore"
-#: config/rs6000/sysv4.h:132
+#: config/rs6000/sysv4.h:129
msgid "Use EABI"
msgstr "Utiliser EABI"
-#: config/rs6000/sysv4.h:133
+#: config/rs6000/sysv4.h:130
msgid "Don't use EABI"
msgstr "Ne pas utiliser EABI"
-#: config/rs6000/sysv4.h:136
+#: config/rs6000/sysv4.h:133
msgid "Do not allow bit-fields to cross word boundaries"
msgstr "Ne pas permettre les champs de bits de traverser des frontières de mots"
-#: config/rs6000/sysv4.h:138
+#: config/rs6000/sysv4.h:135
msgid "Use alternate register names"
msgstr "Utiliser les noms alternatifs de registres"
-#: config/rs6000/sysv4.h:140
+#: config/rs6000/sysv4.h:137
msgid "Don't use alternate register names"
msgstr "Ne pas utiliser les noms alternatifs de registres"
-#: config/rs6000/sysv4.h:144
+#: config/rs6000/sysv4.h:141
msgid "Link with libsim.a, libc.a and sim-crt0.o"
msgstr "Faire l'édition de liens avec libsim.a, libc.a et sim-crt0.o"
-#: config/rs6000/sysv4.h:146
+#: config/rs6000/sysv4.h:143
msgid "Link with libads.a, libc.a and crt0.o"
msgstr "Faire l'édition de liens avec libads.a, libc.a and crt0.o"
-#: config/rs6000/sysv4.h:148
+#: config/rs6000/sysv4.h:145
msgid "Link with libyk.a, libc.a and crt0.o"
msgstr "Faire l'édition de liens avec libyk.a, libc.a and crt0.o"
-#: config/rs6000/sysv4.h:150
+#: config/rs6000/sysv4.h:147
msgid "Link with libmvme.a, libc.a and crt0.o"
msgstr "Faire l'édition de liens avec libmvme.a, libc.a and crt0.o"
-#: config/rs6000/sysv4.h:152
+#: config/rs6000/sysv4.h:149
msgid "Set the PPC_EMB bit in the ELF flags header"
msgstr "Initialiser le bit PPC_EMB bit dans l'en-tête des fanions ELF"
-#: config/rs6000/sysv4.h:154
+#: config/rs6000/sysv4.h:150
msgid "Use the WindISS simulator"
-msgstr ""
+msgstr "Utiliser le simulateur WindISS"
+
+#: config/rs6000/sysv4.h:153
+msgid "Generate 64-bit code"
+msgstr "Générer du code 64 bits"
+
+#: config/rs6000/sysv4.h:155
+msgid "Generate 32-bit code"
+msgstr "Générer du code 32 bits"
#. Sometimes certain combinations of command options do not make sense
#. on a particular target machine. You can define a macro
@@ -13167,365 +12247,426 @@ msgstr "valeur erronée pour -msdata=%s"
msgid "-mrelocatable and -msdata=%s are incompatible"
msgstr "-mrelocatable et -msdata=%s sont incompatibles"
-#: config/rs6000/sysv4.h:255
+#: config/rs6000/sysv4.h:256
#, c-format
msgid "-f%s and -msdata=%s are incompatible"
msgstr "-f%s et -msdata=%s sont incompatibles"
-#: config/rs6000/sysv4.h:264
+#: config/rs6000/sysv4.h:265
#, c-format
msgid "-msdata=%s and -mcall-%s are incompatible"
msgstr "-msdata=%s et -mcall-%s sont incompatibles"
-#: config/rs6000/sysv4.h:273
+#: config/rs6000/sysv4.h:274
msgid "-mrelocatable and -mno-minimal-toc are incompatible"
msgstr "-mrelocatable et -mno-minimal-toc sont incompatibles"
-#: config/rs6000/sysv4.h:279
+#: config/rs6000/sysv4.h:280
#, c-format
msgid "-mrelocatable and -mcall-%s are incompatible"
msgstr "-mrelocatable et -mcall-%s sont incompatibles"
-#: config/rs6000/sysv4.h:286
+#: config/rs6000/sysv4.h:287
#, c-format
msgid "-fPIC and -mcall-%s are incompatible"
msgstr "-fPIC et -mcall-%s sont incompatibles"
-#: config/rs6000/sysv4.h:293
+#: config/rs6000/sysv4.h:294
msgid "-mcall-aixdesc must be big endian"
msgstr "-mcall-aixdesc doit être pour un système à octets de poids fort"
-#: config/s390/s390.c:3063
+#: config/rs6000/sysv4.h:309
+#, c-format
+msgid "-m%s not supported in this configuration"
+msgstr "-m%s n'est pas supporté par cette configuration"
+
+#: config/s390/s390.c:926
+#, c-format
+msgid "Unknown cpu used in -march=%s."
+msgstr "Processeur inconnu utilisé dans -march=%s"
+
+#: config/s390/s390.c:945
+#, c-format
+msgid "Unknown cpu used in -mtune=%s."
+msgstr "Processeur inconnu dans -mtune=%s"
+
+#: config/s390/s390.c:950
+#, c-format
+msgid "z/Architecture mode not supported on %s."
+msgstr "z/mode d'architecture n'est pas supporté sur %s"
+
+#: config/s390/s390.c:952
+msgid "64-bit ABI not supported in ESA/390 mode."
+msgstr "ABI 64 bits n'est pas supporté en mode ESA/390"
+
+#: config/s390/s390.c:3337
msgid "invalid UNSPEC as operand (1)"
msgstr "UNSPEC invalide comme opérande (1)"
-#: config/s390/s390.c:3123
+#: config/s390/s390.c:3385
msgid "invalid UNSPEC as operand (2)"
msgstr "UNSPEC invalide comme opérande (2)"
-#: config/s390/s390.c:3129
+#: config/s390/s390.c:3391
msgid "UNKNOWN in s390_output_symbolic_const !?"
msgstr "INCONNU dans s390_output_symbolic_const !?"
-#: config/s390/s390.c:3147
+#: config/s390/s390.c:3407
msgid "Cannot decompose address."
msgstr "Ne pas décomposer l'adresse"
-#: config/s390/s390.c:3308
+#: config/s390/s390.c:3578
msgid "UNKNOWN in print_operand !?"
msgstr "INCONNNU dans print_operand !?"
-#: config/s390/s390.c:4961
+#: config/s390/s390.c:5301
msgid "Total size of local variables exceeds architecture limit."
msgstr "Taille totale des variables locales excède la limite de l'architecture"
-#: config/s390/s390.h:70
+#: config/s390/s390.h:126
msgid "Set backchain"
msgstr "Fixer la chaîne arrière"
-#: config/s390/s390.h:71
+#: config/s390/s390.h:127
msgid "Don't set backchain (faster, but debug harder"
msgstr "Ne pas fixer la chaîne arrière (plus rapide mais plus difficle à mettre au point)"
-#: config/s390/s390.h:72
-#, fuzzy
+#: config/s390/s390.h:128
msgid "Use bras for executable < 64k"
-msgstr "Utiliser bras pour les exécutables < 64k"
+msgstr "Utiliser « bras » pour les exécutables < 64k"
-#: config/s390/s390.h:73
+#: config/s390/s390.h:129
msgid "Don't use bras"
msgstr "Ne pas utiliser bras"
-#: config/s390/s390.h:74
+#: config/s390/s390.h:130
msgid "Additional debug prints"
msgstr "Imprimer des informations additionnelles en mode débug"
-#: config/s390/s390.h:75
+#: config/s390/s390.h:131
msgid "Don't print additional debug prints"
msgstr "Ne pas imprimer des informations additionnelles en mode débug"
-#: config/s390/s390.h:76
-msgid "64 bit mode"
-msgstr "mode 64 bits"
+#: config/s390/s390.h:132
+msgid "64 bit ABI"
+msgstr "ABI de 64 bits"
+
+#: config/s390/s390.h:133
+msgid "31 bit ABI"
+msgstr "ABI de 64 bits"
-#: config/s390/s390.h:77
-msgid "31 bit mode"
-msgstr "mode 31 bits"
+#: config/s390/s390.h:134
+msgid "z/Architecture"
+msgstr "z/Architecture"
-#: config/s390/s390.h:78
+#: config/s390/s390.h:135
+msgid "ESA/390 architecture"
+msgstr "architecture ESA/390"
+
+#: config/s390/s390.h:136
msgid "mvcle use"
msgstr "mvcle utilisé"
-#: config/s390/s390.h:79
+#: config/s390/s390.h:137
msgid "mvc&ex"
msgstr "mvc&ex"
-#: config/sh/sh.c:5137
+#: config/s390/s390.h:138
+msgid "enable tpf OS code"
+msgstr "autoriser le code OS tpf"
+
+#: config/s390/s390.h:139
+msgid "disable tpf OS code"
+msgstr "interdire le code OS tpf"
+
+#: config/s390/s390.h:140
+msgid "disable fused multiply/add instructions"
+msgstr "interdire les instructions fusionnés de multiplication/addition"
+
+#: config/s390/s390.h:141
+msgid "enable fused multiply/add instructions"
+msgstr "autoriser les instructions fusionnés de multiplication/addition"
+
+#: config/sh/sh.c:5841
msgid "__builtin_saveregs not supported by this subtarget"
-msgstr "« __builtin_saveregs » n'est pas supporté par la sous-cible"
+msgstr "__builtin_saveregs n'est pas supporté par la sous-cible"
-#: config/sh/sh.c:5687
+#: config/sh/sh.c:6743
msgid "attribute interrupt_handler is not compatible with -m5-compact"
-msgstr ""
+msgstr "attribut interrupt_handler n'est pas compatible avec -m5-compact"
#. The sp_switch attribute only has meaning for interrupt functions.
-#: config/sh/sh.c:5713 config/sh/sh.c:5752
+#. The trap_exit attribute only has meaning for interrupt functions.
+#: config/sh/sh.c:6765 config/sh/sh.c:6800
#, c-format
msgid "`%s' attribute only applies to interrupt functions"
msgstr "attribut « %s » s'applique seulement à des fonctions d'interruption"
#. The argument must be a constant string.
-#: config/sh/sh.c:5720
+#: config/sh/sh.c:6772
#, c-format
msgid "`%s' attribute argument not a string constant"
msgstr "l'attribut « %s » de l'argument n'est pas une contante chaîne"
#. The argument must be a constant integer.
-#: config/sh/sh.c:5759
+#: config/sh/sh.c:6807
#, c-format
msgid "`%s' attribute argument not an integer constant"
msgstr "l'attribut « %s » de l'argument n'est pas une contante entière"
#. There are no delay slots on SHmedia.
#. Relaxation isn't yet supported for SHmedia
-#: config/sh/sh.h:437
+#. -fprofile-arcs needs a working libgcov . In unified tree configurations with newlib, this requires to configure with --with-newlib --with-headers. But there is no way to check here we have a working libgcov, so just assume that we have.
+#: config/sh/sh.h:478
msgid "Profiling is not supported on this target."
msgstr "le profilage n'est pas supporté sur cette cible"
-#: config/sparc/sparc.c:329
+#: config/sparc/sparc.c:360
#, c-format
msgid "%s is not supported by this configuration"
msgstr "%s n'est pas supporté par cette configuration"
-#: config/sparc/sparc.c:336
+#: config/sparc/sparc.c:367
msgid "-mlong-double-64 not allowed with -m64"
msgstr "-mlong-double-64 n'est pas permis avec -m64"
-#: config/sparc/sparc.c:361
+#: config/sparc/sparc.c:392
msgid "-mcmodel= is not supported on 32 bit systems"
msgstr "-mcmodel= n'est pas supporté sur les systèmes de 32 bits"
-#: config/sparc/sparc.c:6341 config/sparc/sparc.c:6347
+#: config/sparc/sparc.c:6793 config/sparc/sparc.c:6799
#, c-format
msgid "invalid %%Y operand"
msgstr "opérande %%Y invalide"
-#: config/sparc/sparc.c:6417
+#: config/sparc/sparc.c:6869
#, c-format
msgid "invalid %%A operand"
msgstr "opérande %%A invalide"
-#: config/sparc/sparc.c:6427
+#: config/sparc/sparc.c:6879
#, c-format
msgid "invalid %%B operand"
msgstr "Opérande %%B invalide"
-#: config/sparc/sparc.c:6466
+#: config/sparc/sparc.c:6918
#, c-format
msgid "invalid %%c operand"
msgstr "opérande %%c invalide"
-#: config/sparc/sparc.c:6467
+#: config/sparc/sparc.c:6919
#, c-format
msgid "invalid %%C operand"
msgstr "opérande %%C invalide"
-#: config/sparc/sparc.c:6488
+#: config/sparc/sparc.c:6940
#, c-format
msgid "invalid %%d operand"
msgstr "opérande %%d invalide"
-#: config/sparc/sparc.c:6489
+#: config/sparc/sparc.c:6941
#, c-format
msgid "invalid %%D operand"
msgstr "opérande %%D invalide"
-#: config/sparc/sparc.c:6505
+#: config/sparc/sparc.c:6957
#, c-format
msgid "invalid %%f operand"
msgstr "opérande %%f invalide"
-#: config/sparc/sparc.c:6519
-#, fuzzy, c-format
+#: config/sparc/sparc.c:6971
+#, c-format
msgid "invalid %%s operand"
-msgstr "opérande %%f invalide"
+msgstr "opérande %%s invalide"
-#: config/sparc/sparc.c:6573
+#: config/sparc/sparc.c:7025
msgid "long long constant not a valid immediate operand"
msgstr "constante long long n'est pas une opérande immédiate valide"
-#: config/sparc/sparc.c:6576
+#: config/sparc/sparc.c:7028
msgid "floating point constant not a valid immediate operand"
msgstr "constante en virgule flottante n'est pas une opérande immédiate valide"
-#: config/sparc/freebsd.h:81 config/sparc/linux.h:87 config/sparc/linux64.h:89
-#: config/sparc/netbsd-elf.h:239
+#: config/sparc/freebsd.h:77 config/sparc/linux.h:92
+#: config/sparc/linux64.h:104 config/sparc/netbsd-elf.h:216
msgid "Use 128 bit long doubles"
msgstr "Utiliser des longs doubles de 128 bits"
-#: config/sparc/sp64-elf.h:84 config/sparc/splet.h:29
+#: config/sparc/sp64-elf.h:90
msgid "Generate code for big endian"
msgstr "Générer du code pour un système à octets de poids fort"
-#: config/sparc/sp64-elf.h:85 config/sparc/splet.h:30
+#: config/sparc/sp64-elf.h:91
msgid "Generate code for little endian"
msgstr "Générer du code pour un système à octets de poids faible"
-#: config/sparc/sp86x-aout.h:51 config/sparc/sp86x-elf.h:65
+#: config/sparc/sp86x-elf.h:68
msgid "Use little-endian byte order for data"
msgstr "Utiliser l'ordre des octets de poids faible pour les données"
-#: config/sparc/sparc.h:532
+#: config/sparc/sparc.h:547
msgid "Assume possible double misalignment"
msgstr "Présumer un possible mauvais alignement des doubles"
-#: config/sparc/sparc.h:534
+#: config/sparc/sparc.h:549
msgid "Assume all doubles are aligned"
msgstr "Présumer que tous les doubles sont alignés"
-#: config/sparc/sparc.h:536
+#: config/sparc/sparc.h:551
msgid "Pass -assert pure-text to linker"
msgstr "Passer -assert pure-text à l'éditeur de liens"
-#: config/sparc/sparc.h:538
+#: config/sparc/sparc.h:553
msgid "Do not pass -assert pure-text to linker"
msgstr "Ne pas passer -assert pure-text à l'éditeur de liens"
-#: config/sparc/sparc.h:540
+#: config/sparc/sparc.h:555
msgid "Use flat register window model"
msgstr "Utiliser le modèle de fenêtre de registre plat"
-#: config/sparc/sparc.h:542
+#: config/sparc/sparc.h:557
msgid "Do not use flat register window model"
msgstr "Ne pas utiliser le modèle de fenêtre de registre plat"
-#: config/sparc/sparc.h:544
+#: config/sparc/sparc.h:559
msgid "Use ABI reserved registers"
msgstr "Utiliser les registres réservés ABI"
-#: config/sparc/sparc.h:546
+#: config/sparc/sparc.h:561
msgid "Do not use ABI reserved registers"
msgstr "Ne pas utiliser les registres réservés ABI"
-#: config/sparc/sparc.h:548
+#: config/sparc/sparc.h:563
msgid "Use hardware quad fp instructions"
msgstr "Utiliser les instructions matérielles quad FP"
-#: config/sparc/sparc.h:550
+#: config/sparc/sparc.h:565
msgid "Do not use hardware quad fp instructions"
msgstr "Ne pas utiliser les instructions matérielles quad FP"
-#: config/sparc/sparc.h:552
+#: config/sparc/sparc.h:567
msgid "Compile for v8plus ABI"
msgstr "Compiler pour ABI v8plus"
-#: config/sparc/sparc.h:554
+#: config/sparc/sparc.h:569
msgid "Do not compile for v8plus ABI"
msgstr "Ne pas compiler pour ABI v8plus"
-#: config/sparc/sparc.h:556
+#: config/sparc/sparc.h:571
msgid "Utilize Visual Instruction Set"
msgstr "Utiliser le jeu d'instructions Visual"
-#: config/sparc/sparc.h:558
+#: config/sparc/sparc.h:573
msgid "Do not utilize Visual Instruction Set"
msgstr "Ne pas utiliser le jeu d'instructions Visual"
#. ??? These are deprecated, coerced to -mcpu=. Delete in 2.9.
-#: config/sparc/sparc.h:561
+#: config/sparc/sparc.h:576
msgid "Optimize for Cypress processors"
msgstr "Optimiser pour les processeurs Cypress"
-#: config/sparc/sparc.h:563
-#, fuzzy
+#: config/sparc/sparc.h:578
msgid "Optimize for SPARCLite processors"
-msgstr "Optimiser pour les processeurs SparLite"
+msgstr "Optimiser pour les processeurs SPARCLite"
-#: config/sparc/sparc.h:565
+#: config/sparc/sparc.h:580
msgid "Optimize for F930 processors"
msgstr "Optimiser pour les processeurs F930"
-#: config/sparc/sparc.h:567
+#: config/sparc/sparc.h:582
msgid "Optimize for F934 processors"
msgstr "Optimiser pour les processeurs F934"
-#: config/sparc/sparc.h:569
-#, fuzzy
+#: config/sparc/sparc.h:584
msgid "Use V8 SPARC ISA"
-msgstr "Utiliser le Sparc V8 ISA"
+msgstr "Utiliser le V8 SPARC ISA"
-#: config/sparc/sparc.h:571
-#, fuzzy
+#: config/sparc/sparc.h:586
msgid "Optimize for SuperSPARC processors"
-msgstr "Optimiser pour les processeurs SuperSparc"
+msgstr "Optimiser pour les processeurs SuperSPARC"
#. End of deprecated options.
-#: config/sparc/sparc.h:574
+#: config/sparc/sparc.h:589
msgid "Pointers are 64-bit"
msgstr "Pointeurs sont de 64 bits"
-#: config/sparc/sparc.h:576
+#: config/sparc/sparc.h:591
msgid "Pointers are 32-bit"
msgstr "Pointeurs sont de 32 bits"
-#: config/sparc/sparc.h:578
+#: config/sparc/sparc.h:593
msgid "Use 32-bit ABI"
msgstr "Utiliser ABI de 32 bits"
-#: config/sparc/sparc.h:580
+#: config/sparc/sparc.h:595
msgid "Use 64-bit ABI"
msgstr "Utiliser ABI de 64 bits"
-#: config/sparc/sparc.h:582
+#: config/sparc/sparc.h:597
msgid "Use stack bias"
msgstr "Utiliser le biais de la pile"
-#: config/sparc/sparc.h:584
+#: config/sparc/sparc.h:599
msgid "Do not use stack bias"
msgstr "Ne pas utiliser le biais de la pile"
-#: config/sparc/sparc.h:586
+#: config/sparc/sparc.h:601
msgid "Use structs on stronger alignment for double-word copies"
msgstr "Utiliser des structs avec alignement plus fort pour les copies de mots-doubles"
-#: config/sparc/sparc.h:588
+#: config/sparc/sparc.h:603
msgid "Do not use structs on stronger alignment for double-word copies"
msgstr "Ne pas utiliser des structs avec alignement plus fort pour les copies de mots-doubles"
-#: config/sparc/sparc.h:590
+#: config/sparc/sparc.h:605
msgid "Optimize tail call instructions in assembler and linker"
msgstr "Optimiser sur mesure les instructions d'appel avec l'assembleur et l'éditeur de liens"
-#: config/sparc/sparc.h:592
+#: config/sparc/sparc.h:607
msgid "Do not optimize tail call instructions in assembler or linker"
msgstr "Ne pas optimiser sur mesure les instructions d'appel avec l'assembleur et l'éditeur de liens"
-#: config/sparc/sparc.h:637
-#, fuzzy
+#: config/sparc/sparc.h:652
msgid "Use given SPARC code model"
-msgstr "Utiliser le modèle donné de code pour le Sparc"
+msgstr "Utiliser le modèle donné de code pour le SPARC"
+
+#: config/stormy16/stormy16.c:526
+msgid "Constant halfword load operand out of range."
+msgstr "chargement de l'opérande de la constante demi-mot est hors limite"
+
+#: config/stormy16/stormy16.c:536
+msgid "Constant arithmetic operand out of range."
+msgstr "opérande arithmétique de la constante est hors limite"
+
+#: config/stormy16/stormy16.c:1027
+msgid "Local variable memory requirements exceed capacity."
+msgstr "La mémoire requise pour les variables locales excède la capacité disponible."
+
+#: config/stormy16/stormy16.c:1193
+msgid "function_profiler support"
+msgstr "function_profiler supporté"
-#: config/stormy16/stormy16.c:1192
+#: config/stormy16/stormy16.c:1292
msgid "cannot use va_start in interrupt function"
msgstr "ne peut utiliser va-start dans une fonction d'interruption"
-#: config/stormy16/stormy16.c:1552
+#: config/stormy16/stormy16.c:1624
msgid "`B' operand is not constant"
msgstr "opérande « B » n'est pas une constante"
-#: config/stormy16/stormy16.c:1558
+#: config/stormy16/stormy16.c:1630
msgid "`B' operand has multiple bits set"
msgstr "l'opérande « B » a de multiples jeux de bits"
-#: config/stormy16/stormy16.c:1585
+#: config/stormy16/stormy16.c:1656
msgid "`o' operand is not constant"
msgstr "opérande « o » n'est pas une constante"
-#: config/stormy16/stormy16.c:1600
+#: config/stormy16/stormy16.c:1670
msgid "xstormy16_print_operand: unknown code"
msgstr "xstormy16_print_operand: code inconnu"
-#: config/stormy16/stormy16.c:1650
+#: config/stormy16/stormy16.c:1716
#, c-format
msgid "switch statement of size %lu entries too large"
msgstr "déclaration de switch de taille %lu entrée est trop grande"
@@ -13546,919 +12687,845 @@ msgstr "ne peut initialiser l'attribut d'interruption: aucune fonction courante"
msgid "cannot set interrupt attribute: no such identifier"
msgstr "ne peut initialiser l'attribut d'interruption: pas de tel identificateur"
-#: config/v850/v850-c.c:148
+#: config/v850/v850-c.c:147
msgid "junk at end of #pragma ghs section"
msgstr "rebut à la fin de la section #pragma ghs"
-#: config/v850/v850-c.c:165
+#: config/v850/v850-c.c:164
#, c-format
msgid "unrecognized section name \"%s\""
msgstr "nom de section non reconnue « %s »"
-#: config/v850/v850-c.c:180
+#: config/v850/v850-c.c:179
msgid "malformed #pragma ghs section"
msgstr "sectin mal composée #pragma ghs"
-#: config/v850/v850-c.c:200
+#: config/v850/v850-c.c:198
msgid "junk at end of #pragma ghs interrupt"
msgstr "rebut à la fin de l'interruption #pragma ghs"
-#: config/v850/v850-c.c:212
+#: config/v850/v850-c.c:209
msgid "junk at end of #pragma ghs starttda"
msgstr "rebut à la fin de #pragma ghs starttda"
-#: config/v850/v850-c.c:224
+#: config/v850/v850-c.c:220
msgid "junk at end of #pragma ghs startsda"
msgstr "rebut à la fin de #pragma ghs startsda"
-#: config/v850/v850-c.c:236
+#: config/v850/v850-c.c:231
msgid "junk at end of #pragma ghs startzda"
msgstr "rebut à la fin de #pragma ghs startzda"
-#: config/v850/v850-c.c:248
+#: config/v850/v850-c.c:242
msgid "junk at end of #pragma ghs endtda"
msgstr "rebut à la fin de #pragma ghs endtda"
-#: config/v850/v850-c.c:260
+#: config/v850/v850-c.c:253
msgid "junk at end of #pragma ghs endsda"
msgstr "rebut à la fin de #pragma ghs endsda"
-#: config/v850/v850-c.c:272
+#: config/v850/v850-c.c:264
msgid "junk at end of #pragma ghs endzda"
msgstr "rebut à la fin de #pragma ghs endzda"
-#: config/v850/v850.c:129
+#: config/v850/v850.c:142
#, c-format
msgid "%s=%s is not numeric"
msgstr "%s=%s n'est pas numérique"
-#: config/v850/v850.c:136
+#: config/v850/v850.c:149
#, c-format
msgid "%s=%s is too large"
msgstr "%s=%s est trop grand"
-#: config/v850/v850.c:302
+#: config/v850/v850.c:301
msgid "const_double_split got a bad insn:"
msgstr "const_double_split a reçu un insn erroné:"
-#: config/v850/v850.c:837
+#: config/v850/v850.c:866
msgid "output_move_single:"
msgstr "output_move_single:"
-#: config/v850/v850.c:2217
-msgid "a data area attribute cannot be specified for local variables"
-msgstr "un attribut de zone de donnéées ne peut pas être spécifié pour des variables locales"
+#: config/v850/v850.c:2209
+msgid "%Jdata area attributes cannot be specified for local variables"
+msgstr "%Jattribut de zone de donnéées ne peut être spécifié pour des variables locales"
-#: config/v850/v850.c:2228
-#, c-format
-msgid "data area of '%s' conflicts with previous declaration"
-msgstr "la zone de données de « %s » entre en conflit avec un déclaration précédente"
+#: config/v850/v850.c:2220
+msgid "%Jdata area of '%D' conflicts with previous declaration"
+msgstr "%Jzone de données de « %D » entre en conflit avec un déclaration précédente"
-#: config/v850/v850.c:2447
+#: config/v850/v850.c:2419
#, c-format
msgid "bogus JR construction: %d\n"
msgstr "construction JR boggé: %d\n"
-#: config/v850/v850.c:2468 config/v850/v850.c:2670
+#: config/v850/v850.c:2440 config/v850/v850.c:2643
#, c-format
msgid "bad amount of stack space removal: %d"
msgstr "taille erronée pour l'enlèvement d'espace de la pile: %d"
-#: config/v850/v850.c:2646
+#: config/v850/v850.c:2619
#, c-format
msgid "bogus JARL construction: %d\n"
msgstr "construction JARL boggée: %d\n"
-#: config/v850/v850.c:3026
-#, fuzzy, c-format
+#: config/v850/v850.c:2989
+#, c-format
msgid "Bogus DISPOSE construction: %d\n"
-msgstr "construction JR boggé: %d\n"
+msgstr "construction DISPOSE boggé: %d\n"
-#: config/v850/v850.c:3048
+#: config/v850/v850.c:3011
#, c-format
msgid "Too much stack space to dispose of: %d"
-msgstr ""
+msgstr "Trop d'espace pour l'empilage pour la disposition de: %d"
-#: config/v850/v850.c:3224
-#, fuzzy, c-format
+#: config/v850/v850.c:3184
+#, c-format
msgid "Bogus PREPEARE construction: %d\n"
-msgstr "construction JARL boggée: %d\n"
+msgstr "construction PREPEARE boggée: %d\n"
-#: config/v850/v850.c:3246
-#, fuzzy, c-format
+#: config/v850/v850.c:3206
+#, c-format
msgid "Too much stack space to prepare: %d"
-msgstr "taille erronée pour l'enlèvement d'espace de la pile: %d"
+msgstr "Trop d'espace pour l'empilage pour la préparation: %d"
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/v850/v850.h:158
+#: config/v850/v850.h:174
msgid "Support Green Hills ABI"
msgstr "Supporter l'ABI Green Hills"
-#: config/v850/v850.h:161
+#: config/v850/v850.h:177
msgid "Prohibit PC relative function calls"
msgstr "Interdire les appels relatifs de fonctions par le PC"
-#: config/v850/v850.h:164
+#: config/v850/v850.h:180
msgid "Reuse r30 on a per function basis"
msgstr "Ré-utiliser R30 sur une base par fonction"
-#: config/v850/v850.h:167
+#: config/v850/v850.h:183
msgid "Use stubs for function prologues"
msgstr "Utiliser des stubs pour les prologues de fonction"
-#: config/v850/v850.h:170
+#: config/v850/v850.h:186
msgid "Same as: -mep -mprolog-function"
msgstr "Identique à: -mep -mprolog-function"
-#: config/v850/v850.h:171
+#: config/v850/v850.h:187
msgid "Enable backend debugging"
msgstr "Autoriser la mise au point par la fin"
-#: config/v850/v850.h:173
+#: config/v850/v850.h:189
msgid "Compile for the v850 processor"
msgstr "Compiler pour le processeur v850"
-#: config/v850/v850.h:175
-#, fuzzy
+#: config/v850/v850.h:191
+msgid "Compile for v850e1 processor"
+msgstr "Compiler pour le processeur v850e1"
+
+#. Make sure that the other bits are cleared.
+#: config/v850/v850.h:193
msgid "Compile for v850e processor"
-msgstr "Compiler pour le processeur v850"
+msgstr "Compiler pour le processeur v850e"
#. Make sure that the other bits are cleared.
-#: config/v850/v850.h:177
-#, fuzzy
+#: config/v850/v850.h:195
msgid "Enable the use of the short load instructions"
-msgstr "Activer l'utilisation d'instruction DB"
+msgstr "Activer l'utilisation d'instructions courtes de chargement"
-#: config/v850/v850.h:180
-#, fuzzy
+#: config/v850/v850.h:198
msgid "Do not use the callt instruction"
-msgstr "Ne pas utiliser l'instruction de division"
+msgstr "Ne pas utiliser l'instruction callt"
-#: config/v850/v850.h:187
-#, fuzzy
+#: config/v850/v850.h:205
msgid "Do not use registers r2 and r5"
-msgstr "Ne pas utiliser le registre sb"
+msgstr "Ne pas utiliser les registres r2 et r5"
-#: config/v850/v850.h:189
-#, fuzzy
+#: config/v850/v850.h:207
msgid "Enforce strict alignment"
-msgstr "Ne pas ajuster l'alignement de la pile"
+msgstr "Forcer l'alignement stricte"
-#: config/v850/v850.h:192
+#: config/v850/v850.h:210
msgid "Use 4 byte entries in switch tables"
msgstr "Utiliser des entrées de 4 octets dans les tables de switch"
-#: config/v850/v850.h:218
+#: config/v850/v850.h:236
msgid "Set the max size of data eligible for the TDA area"
msgstr "Initialiser la taille maximale des données éligibles pour la zone TDA"
-#: config/v850/v850.h:221
+#: config/v850/v850.h:239
msgid "Set the max size of data eligible for the SDA area"
msgstr "Initialiser la taille maximale des données éligibles pour la zone SDA"
-#: config/v850/v850.h:224
+#: config/v850/v850.h:242
msgid "Set the max size of data eligible for the ZDA area"
msgstr "Initialiser la taille maximale des données éligibles pour la zone ZDA"
-#: config/xtensa/xtensa.c:1062 config/xtensa/xtensa.c:1096
-#: config/xtensa/xtensa.c:1105
-msgid "bad test"
-msgstr "test erroné"
-
-#: config/xtensa/xtensa.c:1824
+#: config/xtensa/xtensa.c:1814
msgid "boolean registers required for the floating-point option"
msgstr "registres booléens requis pour l'option de virgule flottante"
-#: config/xtensa/xtensa.c:1991
+#: config/xtensa/xtensa.c:1868
+#, c-format
+msgid "-f%s is not supported with CONST16 instructions"
+msgstr "-f%s n'est pas supporté avec les instructions CONST16"
+
+#: config/xtensa/xtensa.c:1873
+msgid "PIC is required but not supported with CONST16 instructions"
+msgstr "PIC est requis mais non supporté avec des instructions CONST16"
+
+#: config/xtensa/xtensa.c:1943
+#, c-format
+msgid "invalid %%D value"
+msgstr "valeur %%D invalide"
+
+#: config/xtensa/xtensa.c:1980
msgid "invalid mask"
msgstr "masque invalide"
-#: config/xtensa/xtensa.c:2038
+#: config/xtensa/xtensa.c:2006
+#, c-format
+msgid "invalid %%x value"
+msgstr "valeur %%x invalide"
+
+#: config/xtensa/xtensa.c:2013
+#, c-format
+msgid "invalid %%d value"
+msgstr "valeur %%d invalide"
+
+#: config/xtensa/xtensa.c:2034 config/xtensa/xtensa.c:2044
+#, c-format
+msgid "invalid %%t/%%b value"
+msgstr "valeur %%t/%%b invalide"
+
+#: config/xtensa/xtensa.c:2086
msgid "invalid address"
msgstr "adresse invalide"
-#: config/xtensa/xtensa.c:2063
+#: config/xtensa/xtensa.c:2111
msgid "no register in address"
msgstr "pas de registre dans l'adresse"
-#: config/xtensa/xtensa.c:2071
+#: config/xtensa/xtensa.c:2119
msgid "address offset not a constant"
msgstr "décalage d'adresse n'est pas une constante"
-#: config/xtensa/xtensa.c:2794
-#, fuzzy
+#: config/xtensa/xtensa.c:2802
msgid "only uninitialized variables can be placed in a .bss section"
-msgstr "Seuls les variables initialisées peuvent être placées dans une aire de 8 bits"
-
-#: config/xtensa/xtensa.h:114
-msgid "Use the Xtensa code density option"
-msgstr "Utiliser l'option de densité du code Xtensa"
-
-#: config/xtensa/xtensa.h:116
-msgid "Do not use the Xtensa code density option"
-msgstr "Ne pas utiliser l'option de densité du code Xtensa"
-
-#: config/xtensa/xtensa.h:118
-msgid "Use the Xtensa MAC16 option"
-msgstr "Utiliser l'option Xtensa MAC16"
-
-#: config/xtensa/xtensa.h:120
-msgid "Do not use the Xtensa MAC16 option"
-msgstr "Ne pas utiliser l'option Xtensa MAC16"
+msgstr "seules les variables non initialisées peuvent être placées dans une section .bss"
-#: config/xtensa/xtensa.h:122
-msgid "Use the Xtensa MUL16 option"
-msgstr "Utiliser l'option Xtensa MUL16"
+#: config/xtensa/xtensa.h:79
+msgid "Use CONST16 instruction to load constants"
+msgstr "Utiliser les instructions CONST16 pour charger les constantes"
-#: config/xtensa/xtensa.h:124
-msgid "Do not use the Xtensa MUL16 option"
-msgstr "Ne pas utiliser l'option Xtensa MUL16"
-
-#: config/xtensa/xtensa.h:126
-msgid "Use the Xtensa MUL32 option"
-msgstr "Utiliser l'option Xtensa MUL16"
-
-#: config/xtensa/xtensa.h:128
-msgid "Do not use the Xtensa MUL32 option"
-msgstr "Ne pas utiliser l'option Xtensa MUL32"
-
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:134
-msgid "Use the Xtensa NSA option"
-msgstr "Utiliser l'option Xtensa NSA"
+#: config/xtensa/xtensa.h:81
+msgid "Use PC-relative L32R instruction to load constants"
+msgstr "Utiliser les instructions L32R relatives au PC pour charger les constantes"
-#: config/xtensa/xtensa.h:136
-msgid "Do not use the Xtensa NSA option"
-msgstr "Ne pas utiliser l'option Xtensa NSA"
-
-#: config/xtensa/xtensa.h:138
-msgid "Use the Xtensa MIN/MAX option"
-msgstr "Utiliser l'option Xtensa MIN/MAX"
-
-#: config/xtensa/xtensa.h:140
-msgid "Do not use the Xtensa MIN/MAX option"
-msgstr "Ne pas utiliser l'option Xtensa MIN/MAX"
-
-#: config/xtensa/xtensa.h:142
-msgid "Use the Xtensa SEXT option"
-msgstr "Utiliser l'option Xtensa SEXT"
-
-#: config/xtensa/xtensa.h:144
-msgid "Do not use the Xtensa SEXT option"
-msgstr "Ne pas utiliser l'option Xtensa SEXT"
-
-#: config/xtensa/xtensa.h:146
-msgid "Use the Xtensa boolean register option"
-msgstr "Utiliser l'option des registres booléens Xtensa"
-
-#: config/xtensa/xtensa.h:148
-msgid "Do not use the Xtensa boolean register option"
-msgstr "Ne pas utiliser l'option des registres booléens Xtensa"
-
-#: config/xtensa/xtensa.h:150
-msgid "Use the Xtensa floating-point unit"
-msgstr "Utiliser l'unité matérielle pour virgule flottante Xtensa"
-
-#: config/xtensa/xtensa.h:152
-msgid "Do not use the Xtensa floating-point unit"
-msgstr "Ne pas utiliser l'unité matérielle pour virgule flottante Xtensa"
-
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:170
+#: config/xtensa/xtensa.h:83
msgid "Disable fused multiply/add and multiply/subtract FP instructions"
msgstr "Interdire les instructions fusionnés FP de multiplication/addition et de multiplication/soustraction"
-#: config/xtensa/xtensa.h:172
+#: config/xtensa/xtensa.h:85
msgid "Enable fused multiply/add and multiply/subtract FP instructions"
msgstr "Permettre les instructions fusionnés FP de multiplication/addition et de multiplication/soustraction"
-#: config/xtensa/xtensa.h:174
-msgid "Serialize volatile memory references with MEMW instructions"
-msgstr "Sérialiser les références à la mémoire volatile avec des instructions MEMW"
-
-#: config/xtensa/xtensa.h:176
-msgid "Do not serialize volatile memory references with MEMW instructions"
-msgstr "Ne pas sérialiser les références à la mémoire volatile avec des instructions MEMW"
-
-#: config/xtensa/xtensa.h:178
+#: config/xtensa/xtensa.h:87
msgid "Intersperse literal pools with code in the text section"
msgstr "Entrecouper les lots de litéraux avec le code dans la section texte"
-#: config/xtensa/xtensa.h:180
+#: config/xtensa/xtensa.h:89
msgid "Put literal pools in a separate literal section"
msgstr "Placer les lots de litéraux dans des sections séparées de litéraux"
-#: config/xtensa/xtensa.h:182
+#: config/xtensa/xtensa.h:91
msgid "Automatically align branch targets to reduce branch penalties"
msgstr "Aligner automatiquement les branchements cibles pour réduire les pénalités de branchement"
-#: config/xtensa/xtensa.h:184
+#: config/xtensa/xtensa.h:93
msgid "Do not automatically align branch targets"
msgstr "Ne pas aligner automatiquement les branchements cibles pour réduire les pénalités de branchement"
-#: config/xtensa/xtensa.h:186
+#: config/xtensa/xtensa.h:95
msgid "Use indirect CALLXn instructions for large programs"
msgstr "Utiliser les instructions indirectes CALLXn pour les grands programmes"
-#: config/xtensa/xtensa.h:188
+#: config/xtensa/xtensa.h:97
msgid "Use direct CALLn instructions for fast calls"
msgstr "Utiliser les instructions directes CALLn pour des appels rapides"
-#: ada/misc.c:233
-msgid "`-gnat' misspelled as `-gant'"
-msgstr "«-gnat» mal épellé comme «-gant»"
-
-#: cp/call.c:261 cp/init.c:1594
-msgid "qualified type `%T' does not match destructor name `~%T'"
-msgstr "type qualifé « %T » ne concorde pas le nom du destructeur «~%T»"
-
-#: cp/call.c:270
-msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
-msgstr "type de « %E » ne concorde pas avec le type du destructeur « %T » (type était « %T »)"
-
-#: cp/call.c:279
-msgid "`%D' is a namespace"
-msgstr "« %D » est un nom d'espace"
+#: ada/misc.c:240
+#, c-format
+msgid "missing argument to \"-%s\""
+msgstr "argument manquant à « -%s »"
-#: cp/call.c:287
-msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
-msgstr "objet de base « %E » de la portée d'appel de la méthode n'est pas de type aggrégat « %T »"
+#: ada/misc.c:281
+msgid "`-gnat' misspelled as `-gant'"
+msgstr "« -gnat » mal épellé comme « -gant »"
-#: cp/call.c:369
+#: cp/call.c:217
msgid "unable to call pointer to member function here"
msgstr "incapable de faire l'appel avec le pointeur vers la fonction membre ici"
-#: cp/call.c:518
-msgid "destructors take no parameters"
-msgstr "destructeurs ne prend aucun paramètre"
-
-#: cp/call.c:522
-msgid "destructor name `~%T' does not match type `%T' of expression"
-msgstr "nom du destructeur «~%T» ne concorde pas avec le type « %T » de l'expression"
-
-#: cp/call.c:543 cp/call.c:5000
-msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
-msgstr "requête du membre « %D » dans « %E », lequel n'est pas de type aggrégat « %T »"
-
-#: cp/call.c:567
-#, fuzzy
-msgid "request for member `%D' is ambiguous"
-msgstr "utilisation de « %D » est ambiguë"
-
-#: cp/call.c:2537
+#: cp/call.c:2228
msgid "%s %D(%T, %T, %T) <built-in>"
msgstr "%s %D(%T, %T, %T) <construit-interne>"
-#: cp/call.c:2542
+#: cp/call.c:2233
msgid "%s %D(%T, %T) <built-in>"
msgstr "%s %D(%T, %T) <construit-interne>"
-#: cp/call.c:2546
+#: cp/call.c:2237
msgid "%s %D(%T) <built-in>"
msgstr "%s %D(%T) <interne>"
-#: cp/call.c:2550
+#: cp/call.c:2241
msgid "%s %T <conversion>"
msgstr "%s %T <conversion>"
-#: cp/call.c:2552
-msgid "%s %+#D%s"
-msgstr "%s %+#D%s"
+#: cp/call.c:2243
+msgid "%J%s %+#D <near match>"
+msgstr "%J%s %+#D <près d'une concordance>"
-#: cp/call.c:2726
-msgid "conversion from `%T' to `%T' is ambiguous"
-msgstr "conversion de « %T » vers « %T » est ambiguë"
+#: cp/call.c:2245
+msgid "%J%s %+#D"
+msgstr "%J%s %+#D"
-#: cp/call.c:2803
-#, fuzzy
-msgid "`%T' is not a class type"
-msgstr "%T n'est pas un type de classe"
+#: cp/call.c:2280
+msgid "candidates are:"
+msgstr "candidats sont:"
-#: cp/call.c:2811
-#, fuzzy
-msgid "incomplete type '%T' cannot be used to name a scope"
-msgstr "objet de type incomplet « %T » ne sera pas accessible dans %s"
-
-#: cp/call.c:2831 cp/typeck.c:2188 cp/typeck.c:2217
-#, fuzzy
-msgid "'%D' has no member named '%E'"
-msgstr "%s n'a pas de membre nommé « %s »"
+#: cp/call.c:2468
+msgid "conversion from `%T' to `%T' is ambiguous"
+msgstr "conversion de « %T » vers « %T » est ambiguë"
-#: cp/call.c:2933
+#: cp/call.c:2619 cp/call.c:2663
msgid "no matching function for call to `%D(%A)'"
-msgstr "pas de fonction concordante pour l'appel de «%D(%A)»"
+msgstr "pas de fonction concordante pour l'appel de « %D(%A) »"
-#: cp/call.c:2944 cp/call.c:5087
+#: cp/call.c:2622 cp/call.c:2666
msgid "call of overloaded `%D(%A)' is ambiguous"
-msgstr "appel du surchargé «%D(%A)» est ambigu"
+msgstr "appel du surchargé « %D(%A) » est ambiguë"
#. It's no good looking for an overloaded operator() on a
#. pointer-to-member-function.
-#: cp/call.c:2971
+#: cp/call.c:2732
#, c-format
msgid "pointer-to-member function %E cannot be called without an object; consider using .* or ->*"
msgstr "pointeur vers fonction membre %E ne peut être appelé sans un objet; utilisez .* ou ->*"
-#: cp/call.c:3036
+#: cp/call.c:2798
msgid "no match for call to `(%T) (%A)'"
-msgstr "pas de concordance pour l'appel de «(%T) (%A)»"
+msgstr "pas de concordance pour l'appel de « (%T) (%A) »"
-#: cp/call.c:3046
+#: cp/call.c:2806
msgid "call of `(%T) (%A)' is ambiguous"
-msgstr "appel de «(%T) (%A)» est ambigu"
+msgstr "appel de « (%T) (%A) » est ambiguë"
-#: cp/call.c:3081
+#: cp/call.c:2839
#, c-format
msgid "%s for ternary 'operator?:' in '%E ? %E : %E'"
-msgstr ""
+msgstr "%s pour « operator?: » ternaire dans « %E ? %E : %E »"
-#: cp/call.c:3087
-#, fuzzy, c-format
+#: cp/call.c:2845
+#, c-format
msgid "%s for 'operator%s' in '%E%s'"
-msgstr "%s pour l'opérateur «%T %s»"
+msgstr "%s pour « operator%s » dans « %E%s »"
-#: cp/call.c:3091
+#: cp/call.c:2849
#, c-format
msgid "%s for 'operator[]' in '%E[%E]'"
-msgstr ""
+msgstr "%s pour « operator[] » dans « %E[%E] »"
-#: cp/call.c:3096
+#: cp/call.c:2854
+#, c-format
+msgid "%s for '%s' in '%s %E'"
+msgstr "%s pour « %s » dans « %s %E »"
+
+#: cp/call.c:2859
#, c-format
msgid "%s for 'operator%s' in '%E %s %E'"
-msgstr ""
+msgstr "%s pour « operator%s » dans « %E %s %E »"
-#: cp/call.c:3099
-#, fuzzy, c-format
+#: cp/call.c:2862
+#, c-format
msgid "%s for 'operator%s' in '%s%E'"
-msgstr "%s pour l'opérateur «%T %s»"
+msgstr "%s pour « operator%s » dans « %s%E »"
-#: cp/call.c:3191
+#: cp/call.c:2957
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
-msgstr "le C++ ISO interdit l'omission du terme milieu de l'expression ?:"
+msgstr "ISO C++ interdit l'omission du terme milieu de l'expression ?:"
-#: cp/call.c:3250
+#: cp/call.c:3018
#, c-format
msgid "`%E' has type `void' and is not a throw-expression"
-msgstr "« %E» a le type «void » et n'est pas une expresion de retour de type throw"
+msgstr "« %E » a le type « void » et n'est pas une expression de retour de type throw"
-#: cp/call.c:3283 cp/call.c:3475
+#: cp/call.c:3051 cp/call.c:3242
msgid "operands to ?: have different types"
msgstr "opérande vers ?: a différents types"
-#: cp/call.c:3428
+#: cp/call.c:3196
msgid "enumeral mismatch in conditional expression: `%T' vs `%T'"
msgstr "non concordance de type énuméré dans l'expression conditionnelle: « %T » vs « %T »"
-#: cp/call.c:3435
+#: cp/call.c:3203
msgid "enumeral and non-enumeral type in conditional expression"
msgstr "type énuméré et non énuméré dans l'expression conditionnelle"
-#: cp/call.c:3516
-msgid "`%D' must be declared before use"
-msgstr "« %D » doit être déclaré avant son usage"
-
-#: cp/call.c:3706
+#: cp/call.c:3487
msgid "no `%D(int)' declared for postfix `%s', trying prefix operator instead"
-msgstr "pas «%D(int)» déclaré pour le postfixe « %s », essaie avec l'oprateur préfixe à la place"
+msgstr "pas « %D(int) » déclaré pour le postfixe « %s », essaie avec l'oprateur préfixe à la place"
-#: cp/call.c:3753
+#: cp/call.c:3532
msgid "using synthesized `%#D' for copy assignment"
-msgstr "utilisation du synthétisé «%#D» pour l'affectaion par copie"
+msgstr "utilisation du synthétisé « %#D » pour l'affectaion par copie"
-#: cp/call.c:3755
+#: cp/call.c:3534
msgid " where cfront would use `%#D'"
-msgstr " où cfront utiliserait «%#D»"
+msgstr " où cfront utiliserait « %#D »"
-#: cp/call.c:3782
+#: cp/call.c:3557
msgid "comparison between `%#T' and `%#T'"
-msgstr "comparaison entre «%#T» et «%#T»"
+msgstr "comparaison entre « %#T » et « %#T »"
-#: cp/call.c:4021
-msgid "no suitable `operator delete' for `%T'"
-msgstr "« operator delete» pas adapté pour «%T »"
+#: cp/call.c:3803
+msgid "no suitable `operator %s' for `%T'"
+msgstr "pas « operator %s » adapté pour « %T »"
-#: cp/call.c:4040
+#: cp/call.c:3820
msgid "`%+#D' is private"
-msgstr "«%+#D» est privé"
+msgstr "« %+#D » est privé"
-#: cp/call.c:4042
+#: cp/call.c:3822
msgid "`%+#D' is protected"
-msgstr "«%+#D» est protégé"
+msgstr "« %+#D » est protégé"
-#: cp/call.c:4044
+#: cp/call.c:3824
msgid "`%+#D' is inaccessible"
-msgstr "«%+#D» et inaccessible"
+msgstr "« %+#D » et inaccessible"
-#: cp/call.c:4045
+#: cp/call.c:3825
msgid "within this context"
msgstr "à l'intérieur du contexte"
-#: cp/call.c:4088
+#: cp/call.c:3895
msgid "invalid conversion from `%T' to `%T'"
msgstr "conversion invalide de « %T » vers « %T »"
-#: cp/call.c:4090 cp/call.c:4229 cp/call.c:4231
+#: cp/call.c:3897
msgid " initializing argument %P of `%D'"
msgstr " initialisation de l'argument %P de « %D »"
-#: cp/call.c:4152 cp/call.c:4156
-msgid " initializing argument %P of `%D' from result of `%D'"
-msgstr " initialisation de l'argument %P de « %D » à partir du résultat « %D »"
+#: cp/call.c:4050
+msgid "cannot bind bitfield `%E' to `%T'"
+msgstr "ne peut lier le champ de bits « %E » avec « %T »"
+
+#: cp/call.c:4053
+msgid "cannot bind packed field `%E' to `%T'"
+msgstr "ne peut lier le champs empaqueté « %E » avec « %T »"
-#: cp/call.c:4162 cp/call.c:4165
-msgid " initializing temporary from result of `%D'"
-msgstr " initialisation temporaire à partir du résultat « %D »"
+#: cp/call.c:4056
+msgid "cannot bind rvalue `%E' to `%T'"
+msgstr "ne peut lier la rvalue « %E » avec « %T »"
-#. Undefined behavior [expr.call] 5.2.2/7. We used to just warn
-#. here and do a bitwise copy, but now cp_expr_size will abort if we
-#. try to do that.
-#: cp/call.c:4316
-#, fuzzy
+#: cp/call.c:4144
msgid "cannot pass objects of non-POD type `%#T' through `...'; call will abort at runtime"
-msgstr "ne peut recevoir d'objets de type non POD «%#T» through « ... »"
+msgstr "ne peut recevoir d'objets de type non POD « %#T » through « ... »; l'appel échouera lors de l'éxecution"
#. Undefined behavior [expr.call] 5.2.2/7.
-#: cp/call.c:4343
-msgid "cannot receive objects of non-POD type `%#T' through `...'"
-msgstr "ne peut recevoir d'objets de type non POD «%#T» through « ... »"
+#: cp/call.c:4168
+msgid "cannot receive objects of non-POD type `%#T' through `...'; call will abort at runtime"
+msgstr "ne peut recevoir d'objets de type non POD « %#T » through « ... »; l'appel échouera lors de l'éxecution"
-#: cp/call.c:4523
+#: cp/call.c:4208
+msgid "the default argument for parameter %d of `%D' has not yet been parsed"
+msgstr "argument par défaut pour le paramètre %d de « %D » n'a pas encore été analysé"
+
+#: cp/call.c:4403
msgid "passing `%T' as `this' argument of `%#D' discards qualifiers"
-msgstr "passant « %T» comme «cet» argument de «%#D » écarte les qualificateurs"
+msgstr "passant « %T» comme «cet» argument de « %#D » écarte les qualificateurs"
-#: cp/call.c:4542
-#, fuzzy
+#: cp/call.c:4422
msgid "`%T' is not an accessible base of `%T'"
-msgstr "« %T » est une base inaccessible de « %T »"
+msgstr "« %T » est une base accessible de « %T »"
-#: cp/call.c:4786
+#: cp/call.c:4696
msgid "could not find class$ field in java interface type `%T'"
msgstr "ne peut repérer le champ classe$ dans le type d'interface JAVA « %T »"
-#: cp/call.c:4974
-#, fuzzy
+#: cp/call.c:4951
msgid "call to non-function `%D'"
-msgstr "fonction virtuelle d'une non classe « %s »"
+msgstr "appel à une non fonction « %D »"
+
+#: cp/call.c:4977
+msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
+msgstr "requête du membre « %D » dans « %E », lequel n'est pas de type aggrégat « %T »"
-#: cp/call.c:5076
-msgid "no matching function for call to `%T::%D(%A)%#V'"
-msgstr "pas de fonction concordante pour l'appel à «%T::%D(%A)%#V»"
+#: cp/call.c:5055
+msgid "no matching function for call to `%T::%s(%A)%#V'"
+msgstr "pas de fonction concordante pour l'appel à « %T::%s(%A)%#V »"
-#: cp/call.c:5106
+#: cp/call.c:5072
+#, c-format
+msgid "call of overloaded `%s(%A)' is ambiguous"
+msgstr "appel du surchargé « %s(%A) » est ambiguë"
+
+#: cp/call.c:5093
msgid "cannot call member function `%D' without object"
msgstr "ne peut appeler la fonction membre « %D » sans objet"
-#: cp/call.c:5704
+#: cp/call.c:5678
msgid "passing `%T' chooses `%T' over `%T'"
msgstr "passant « %T » à choisit « %T » au lieu de « %T »"
-#: cp/call.c:5706 cp/decl2.c:4154
+#: cp/call.c:5680 cp/name-lookup.c:4057
msgid " in call to `%D'"
msgstr " dans l'appel de « %D »"
-#: cp/call.c:5755
+#: cp/call.c:5737
msgid "choosing `%D' over `%D'"
msgstr "choix de « %D » à la place de « %D »"
-#: cp/call.c:5756
+#: cp/call.c:5738
msgid " for conversion from `%T' to `%T'"
msgstr " pour la conversion de « %T » vers « %T »"
-#: cp/call.c:5758
+#: cp/call.c:5740
msgid " because conversion sequence for the argument is better"
msgstr " parce que la séquence de conversion pour l'argument est meilleure"
-#: cp/call.c:5879
-#, fuzzy
-msgid "ISO C++ says that `%D' and `%D' are ambiguous even though the worst conversion for the former is better than the worst conversion for the latter"
-msgstr " parce la plus mauvaise conversion de la déclaration initiale est meilleure que la plus mauvaise conversion de la dernière déclaration"
+#: cp/call.c:5860
+msgid "ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:"
+msgstr "ISO C++ indique qu'ils sont ambiguës même à travers la plus mauvaise conversion pour le premier que la plus mauvaise pour la seconde:"
+
+#: cp/call.c:5864
+msgid "candidate 1:"
+msgstr "candidat 1:"
-#: cp/call.c:5996
+#: cp/call.c:5865
+msgid "candidate 2:"
+msgstr "candidat 2:"
+
+#: cp/call.c:5974
msgid "could not convert `%E' to `%T'"
msgstr "ne peut convertir « %E » vers « %T »"
-#: cp/call.c:6105
-#, fuzzy
+#: cp/call.c:6079
msgid "invalid initialization of non-const reference of type '%T' from a temporary of type '%T'"
-msgstr "const_cast invalide de la rvalue du type « %T » vers le type « %T »"
+msgstr "initialisation invalide pour une référence à un non constante de type « %T » à partir d'un type temporaire de type « %T »"
-#: cp/call.c:6109
-#, fuzzy
+#: cp/call.c:6083
msgid "invalid initialization of reference of type '%T' from expression of type '%T'"
-msgstr "conversion invalide vers un type « %T » à partir du type « %T »"
+msgstr "initialisation invalide de référence d'un type « %T » à partir d'une expression de type « %T »"
-#: cp/class.c:287
+#: cp/class.c:281
msgid "cannot convert from base `%T' to derived type `%T' via virtual base `%T'"
msgstr "ne peut convertir de la base « %T » à un type dérivé « %T » via la base virtuel « %T »"
-#: cp/class.c:992
+#: cp/class.c:764
+msgid "Java class '%T' cannot have an implicit non-trivial destructor"
+msgstr "classe Java « %T » ne peut avoir un destructeur implicite non trivial"
+
+#: cp/class.c:765
+msgid "Java class '%T' cannot have a destructor"
+msgstr "classe Java « %T » ne peut avoir un destructeur"
+
+#: cp/class.c:933
msgid "`%#D' and `%#D' cannot be overloaded"
-msgstr "«%#D» et «%#D» ne peut être surchargé"
+msgstr "« %#D » et « %#D » ne peut être surchargé"
-#: cp/class.c:1076
+#: cp/class.c:1016
msgid "duplicate enum value `%D'"
msgstr "valeur d'énumérateur « %D » en double"
-#: cp/class.c:1079
+#: cp/class.c:1019
msgid "duplicate field `%D' (as enum and non-enum)"
msgstr "champ « %D » en double (comme enum et non enum)"
-#: cp/class.c:1086
+#: cp/class.c:1026
msgid "duplicate nested type `%D'"
msgstr "type « %D » imbriqué en double"
-#: cp/class.c:1097
+#: cp/class.c:1037
msgid "duplicate field `%D' (as type and non-type)"
msgstr "duplicattion du champ « %D » (comme type et non type)"
-#: cp/class.c:1101
+#: cp/class.c:1041
msgid "duplicate member `%D'"
msgstr "membre « %D » est double"
-#: cp/class.c:1144
+#: cp/class.c:1079
msgid "conflicting access specifications for method `%D', ignored"
msgstr "spécifications d'accès conflictuelles pour la méthode « %D », ignoré"
-#: cp/class.c:1146
+#: cp/class.c:1081
#, c-format
msgid "conflicting access specifications for field `%s', ignored"
msgstr "spécifications d'accès conflictuelles pour le champ « %s », ignoré"
-#: cp/class.c:1194
+#: cp/class.c:1131
msgid "`%D' names constructor"
msgstr "« %D » nomme le constructeur"
-#: cp/class.c:1199
+#: cp/class.c:1136
msgid "`%D' invalid in `%T'"
msgstr "« %D » invalide dans « %T »"
-#: cp/class.c:1207
+#: cp/class.c:1144
msgid "no members matching `%D' in `%#T'"
-msgstr "aucun membre concordant « %D » dans «%#T»"
+msgstr "aucun membre concordant « %D » dans « %#T »"
-#: cp/class.c:1239 cp/class.c:1247
+#: cp/class.c:1176 cp/class.c:1184
msgid "`%D' invalid in `%#T'"
-msgstr "« %D » invalide dans «%#T»"
+msgstr "« %D » invalide dans « %#T »"
-#: cp/class.c:1240
+#: cp/class.c:1177
msgid " because of local method `%#D' with same name"
-msgstr " parce que la méthode locale «%#D» a le même nom"
+msgstr " parce que la méthode locale « %#D » a le même nom"
-#: cp/class.c:1248
+#: cp/class.c:1185
msgid " because of local member `%#D' with same name"
-msgstr " parce que le membre local «%#D» a le même nom"
+msgstr " parce que le membre local « %#D » a le même nom"
-#: cp/class.c:1320
+#: cp/class.c:1255
msgid "base class `%#T' has a non-virtual destructor"
-msgstr "classe de base «%#T» a un destructeur non virtuel"
+msgstr "classe de base « %#T » a un destructeur non virtuel"
-#: cp/class.c:1340
+#: cp/class.c:1275
msgid "base `%T' with only non-default constructor in class without a constructor"
msgstr "base « %T » avec seulement le constructeur non par défaut dans la classe sans un constructeur"
-#: cp/class.c:1912
+#: cp/class.c:1659
msgid "all member functions in class `%T' are private"
msgstr "toutes les fonctions membres de la classe « %T » sont privés"
-#: cp/class.c:1926
+#: cp/class.c:1670
msgid "`%#T' only defines a private destructor and has no friends"
-msgstr "«%#T» définit seulement les constructeurs privés et n'a pas d'amis"
+msgstr "« %#T » définit seulement les constructeurs privés et n'a pas d'amis"
-#: cp/class.c:1969
+#: cp/class.c:1712
msgid "`%#T' only defines private constructors and has no friends"
-msgstr "«%#T» définit seulement les constructeurs privés et n'a pas d'amis"
-
-#: cp/class.c:2090 cp/class.c:5276
-msgid "redefinition of `%#T'"
-msgstr "redéfinition de «%#T»"
-
-#: cp/class.c:2091
-msgid "previous definition of `%#T'"
-msgstr "définition précédente de «%#T»"
+msgstr "« %#T » définit seulement les constructeurs privés et n'a pas d'amis"
-#: cp/class.c:2365
+#: cp/class.c:2097
msgid "no unique final overrider for `%D' in `%T'"
msgstr "pas d'écraseur unique final pour « %D » dans « %T »"
#. Here we know it is a hider, and no overrider exists.
-#: cp/class.c:2712
+#: cp/class.c:2542
msgid "`%D' was hidden"
msgstr "« %D » était caché"
-#: cp/class.c:2713
+#: cp/class.c:2543
msgid " by `%D'"
msgstr " par « %D »"
-#: cp/class.c:2755
+#: cp/class.c:2584
msgid "ISO C++ forbids member `%D' with same name as enclosing class"
-msgstr "le C++ ISO interdit le membre « %D » avec le même non de la classe de fermeture"
+msgstr "ISO C++ interdit le membre « %D » avec le même non de la classe de fermeture"
-#: cp/class.c:2760 cp/decl2.c:1331
+#: cp/class.c:2589 cp/decl2.c:1167
msgid "`%#D' invalid; an anonymous union can only have non-static data members"
-msgstr "«%#D» invalide; une union anonyme peut seulement avoir des données non statiques de membres"
+msgstr "« %#D » invalide; une union anonyme peut seulement avoir des données non statiques de membres"
-#: cp/class.c:2766 cp/decl2.c:1337
+#: cp/class.c:2595 cp/decl2.c:1174
msgid "private member `%#D' in anonymous union"
-msgstr "membre privé «%#D» dans une union anonyme"
+msgstr "membre privé « %#D » dans une union anonyme"
-#: cp/class.c:2769 cp/decl2.c:1339
+#: cp/class.c:2598 cp/decl2.c:1176
msgid "protected member `%#D' in anonymous union"
-msgstr "membre protégé «%#D» dans une union anonyme"
+msgstr "membre protégé « %#D » dans une union anonyme"
-#: cp/class.c:2894
+#: cp/class.c:2717
msgid "vtable layout for class `%T' may not be ABI-compliant and may change in a future version of GCC due to implicit virtual destructor"
-msgstr ""
+msgstr "disposition vtable pour la classe « %T » peut ne pas être compatible avec l'ABI et peut être modifié dans une version future deGCC en raison d'un destructeur virtuel implicite"
-#: cp/class.c:2958
+#: cp/class.c:2777
msgid "bit-field `%#D' with non-integral type"
-msgstr "largeur du champ de bits «%#D» n'est pas une constante entière"
+msgstr "largeur du champ de bits « %#D » n'est pas une constante entière"
-#: cp/class.c:2978
+#: cp/class.c:2797
msgid "bit-field `%D' width not an integer constant"
msgstr "largeur du champ de bits « %D » n'est pas une constante entière"
-#: cp/class.c:2984
+#: cp/class.c:2803
msgid "negative width in bit-field `%D'"
msgstr "largeur négative du champ de bits « %D »"
-#: cp/class.c:2989
+#: cp/class.c:2808
msgid "zero width for bit-field `%D'"
msgstr "largeur zéro pour le champ de bits « %D »"
-#: cp/class.c:2995
+#: cp/class.c:2814
msgid "width of `%D' exceeds its type"
msgstr "largeur de « %D » excède son type"
-#: cp/class.c:3004
+#: cp/class.c:2823
msgid "`%D' is too small to hold all values of `%#T'"
-msgstr "« %D » est trop petit pour contenir toutes les valeurs de «%#T»"
+msgstr "« %D » est trop petit pour contenir toutes les valeurs de « %#T »"
-#: cp/class.c:3088
+#: cp/class.c:2885
msgid "member `%#D' with constructor not allowed in union"
-msgstr "membre «%#D» avec consructeur n'est pas permis dans l'union"
+msgstr "membre « %#D » avec consructeur n'est pas permis dans l'union"
-#: cp/class.c:3091
+#: cp/class.c:2888
msgid "member `%#D' with destructor not allowed in union"
-msgstr "membre «%#D» avec destructeur n'est pas permis dans l'union"
+msgstr "membre « %#D » avec destructeur n'est pas permis dans l'union"
-#: cp/class.c:3094
+#: cp/class.c:2891
msgid "member `%#D' with copy assignment operator not allowed in union"
-msgstr "membre «%#D» avec opérateur d,affectation par copie n'st pas permis dans l'union"
+msgstr "membre « %#D » avec opérateur d,affectation par copie n'st pas permis dans l'union"
-#: cp/class.c:3121
+#: cp/class.c:2918
msgid "multiple fields in union `%T' initialized"
msgstr "champs multiples dans l'union « %T » initialisés"
-#: cp/class.c:3234
+#: cp/class.c:2987
+msgid "ignoring packed attribute on unpacked non-POD field `%#D'"
+msgstr "attribut empaqueté ignoré sur un champ non POD non paqueté « %#D »"
+
+#: cp/class.c:3039
msgid "field `%D' in local class cannot be static"
msgstr "champ « %D » dans une classe locale ne peut être statique"
-#: cp/class.c:3240
+#: cp/class.c:3045
msgid "field `%D' invalidly declared function type"
msgstr "champ « %D » incorrectement validé comme un type de fonction"
-#: cp/class.c:3247
+#: cp/class.c:3052
msgid "field `%D' invalidly declared method type"
msgstr "champ « %D » incorrectement validé comme un type de méthode"
-#: cp/class.c:3253
-msgid "field `%D' invalidly declared offset type"
-msgstr "champ « %D » incorrectement validé comme type de décalage"
-
#. Unions cannot have static members.
-#: cp/class.c:3271
+#: cp/class.c:3070
msgid "field `%D' declared static in union"
msgstr "champ « %D » déclaré statique dans l'union"
-#: cp/class.c:3298
+#: cp/class.c:3097
msgid "non-static reference `%#D' in class without a constructor"
-msgstr "référence non statique «%#D» dans la classe sans un constructeur"
+msgstr "référence non statique « %#D » dans la classe sans un constructeur"
-#: cp/class.c:3333
+#: cp/class.c:3132
msgid "non-static const member `%#D' in class without a constructor"
-msgstr "constante non statique de membre «%#D» dans la classe sans un constructeur"
+msgstr "constante non statique de membre « %#D » dans la classe sans un constructeur"
-#: cp/class.c:3349
+#: cp/class.c:3147
msgid "field `%#D' with same name as class"
-msgstr "champ «%#D» avec le même nom qu'une classe"
+msgstr "champ « %#D » avec le même nom qu'une classe"
-#: cp/class.c:3367
+#: cp/class.c:3165
msgid "`%#T' has pointer data members"
-msgstr "«%#T» a un pointeur vers un membre de données"
+msgstr "« %#T » a un pointeur vers un membre de données"
-#: cp/class.c:3371
+#: cp/class.c:3169
msgid " but does not override `%T(const %T&)'"
-msgstr " mais n'écrase pas «%T(const %T&)»"
+msgstr " mais n'écrase pas « %T(const %T&) »"
-#: cp/class.c:3373
+#: cp/class.c:3171
msgid " or `operator=(const %T&)'"
msgstr " ou « operator=(const %T&) »"
-#: cp/class.c:3376
+#: cp/class.c:3174
msgid " but does not override `operator=(const %T&)'"
msgstr " mais n'écrase pas « operator=(const %T&) »"
-#: cp/class.c:3826
+#: cp/class.c:3604
msgid "offset of empty base `%T' may not be ABI-compliant and maychange in a future version of GCC"
-msgstr ""
+msgstr "décalage d'une base vide « %T » peut ne pas être compatible avec l'ABI et peut être modifié dans une version future de GCC"
-#: cp/class.c:3935
+#: cp/class.c:3714
msgid "class `%T' will be considered nearly empty in a future version of GCC"
-msgstr ""
+msgstr "classe « %T » devra être considérée pratiquement vide dans une version future de GCC"
-#: cp/class.c:4025
+#: cp/class.c:3801
msgid "initializer specified for non-virtual method `%D'"
msgstr "initialisation spécifiée pour une méthode non virtuelle « %D »"
-#: cp/class.c:4761
+#: cp/class.c:4489
msgid "offset of virtual base `%T' is not ABI-compliant and may change in a future version of GCC"
-msgstr ""
+msgstr "décalage relatif d'une base virtuelle « %T » n'est pas compatible avec l'ABI et peut être modifié dans une version future de GCC"
-#: cp/class.c:4861
+#: cp/class.c:4579
msgid "direct base `%T' inaccessible in `%T' due to ambiguity"
msgstr "base directe « %T » inaccessible dans « %T » en raison de l'ambiguité"
-#: cp/class.c:4874
+#: cp/class.c:4592
msgid "virtual base `%T' inaccessible in `%T' due to ambiguity"
msgstr "base virtuelle « %T » inaccessible dans « %T » en raison de l'ambiguité"
-#: cp/class.c:5030
+#: cp/class.c:4766
msgid "size assigned to `%T' may not be ABI-compliant and may change in a future version of GCC"
-msgstr ""
+msgstr "taille assignée à « %T » peut ne pas être compatible avec l'ABI et peut être modifié dans une version future de GCC"
#. Versions of G++ before G++ 3.4 did not reset the
#. DECL_MODE.
-#: cp/class.c:5053
+#: cp/class.c:4805
msgid "the offset of `%D' may not be ABI-compliant and may change in a future version of GCC"
-msgstr ""
+msgstr "le décalage relatif de « %D » peut ne pas être compatible avec l'ABI et peut être modifié dans une version future de GCC"
-#: cp/class.c:5079
+#: cp/class.c:4828
msgid "offset of `%D' is not ABI-compliant and may change in a future version of GCC"
-msgstr ""
+msgstr "le décalage relatif de « %D » peut ne pas être compatible avec l'ABI et peut être modifié dans une version future de GCC"
-#: cp/class.c:5088
+#: cp/class.c:4837
msgid "`%D' contains empty classes which may cause base classes to be placed at different locations in a future version of GCC"
-msgstr ""
+msgstr "« %D » contient des classes vides lesquelles peuvent placer les classes de base à une localisation différente dans une version future de GCC"
-#: cp/class.c:5147
+#: cp/class.c:4896
msgid "layout of classes derived from empty class `%T' may change in a future version of GCC"
-msgstr ""
+msgstr "disposition des classes est dérivés de la classe vide « %T » peut être modifiée dans une version future de GCC"
-#: cp/class.c:5432
+#: cp/class.c:5026 cp/semantics.c:2029
+msgid "redefinition of `%#T'"
+msgstr "redéfinition de « %#T »"
+
+#: cp/class.c:5196
msgid "`%#T' has virtual functions but non-virtual destructor"
-msgstr "«%#T» a des fonctions virtuelles mais un destructeur non virtuel"
+msgstr "« %#T » a des fonctions virtuelles mais un destructeur non virtuel"
-#: cp/class.c:5516
+#: cp/class.c:5275
msgid "trying to finish struct, but kicked out due to previous parse errors"
msgstr "tentative de complétion du struct, mais a été stoppé en raison d'erreurs précédentes d'analyses syntaxiques"
-#: cp/class.c:5982
+#: cp/class.c:5717
#, c-format
msgid "language string `\"%s\"' not recognized"
-msgstr "chaîne du langage «\"%s\"» n'est pas reconnue"
+msgstr "chaîne du langage « \"%s\" » n'est pas reconnue"
-#: cp/class.c:6078
+#: cp/class.c:5805
msgid "cannot resolve overloaded function `%D' based on conversion to type `%T'"
msgstr "ne peut résoudre la fonction surchargé « %D » basé sur la conversion vers le type « %T »"
-#: cp/class.c:6203
+#: cp/class.c:5930
msgid "no matches converting function `%D' to type `%#T'"
-msgstr "pas de concordance de conversion de fonction « %D » vers le type «%#T'"
+msgstr "pas de concordance de conversion de fonction « %D » vers le type « %#T »"
-#: cp/class.c:6226
+#: cp/class.c:5953
msgid "converting overloaded function `%D' to type `%#T' is ambiguous"
-msgstr "conversion d'une fonction surchargée « %D » vers le type «%#T» est ambiguë"
+msgstr "conversion d'une fonction surchargée « %D » vers le type « %#T » est ambiguë"
-#: cp/class.c:6252
+#: cp/class.c:5979
msgid "assuming pointer to member `%D'"
msgstr "pointeur assumé vers le membre « %D »"
-#: cp/class.c:6255
+#: cp/class.c:5982
#, c-format
msgid "(a pointer to member can only be formed with `&%E')"
msgstr "(un pointeur vers un membre peut seulement être formé avec «&%E»)"
-#: cp/class.c:6306 cp/class.c:6477 cp/class.c:6484
+#: cp/class.c:6027 cp/class.c:6209 cp/class.c:6216
msgid "not enough type information"
msgstr "pas assez d'information sur le type"
-#: cp/class.c:6315
+#: cp/class.c:6044
msgid "argument of type `%T' does not match `%T'"
msgstr "argument de type « %T » ne concorde pas avec « %T »"
-#: cp/class.c:6461
+#: cp/class.c:6193
msgid "invalid operation on uninstantiated type"
msgstr "opération invalide sur un type non instancié"
@@ -14467,13 +13534,17 @@ msgstr "opération invalide sur un type non instancié"
#. A name N used in a class S shall refer to the same declaration
#. in its context and when re-evaluated in the completed scope of
#. S.
-#: cp/class.c:6745 cp/decl.c:1254 cp/decl.c:3379 cp/pt.c:2004
+#: cp/class.c:6451 cp/decl.c:1225 cp/name-lookup.c:495 cp/pt.c:2093
msgid "declaration of `%#D'"
-msgstr "déclaration de «%#D»"
+msgstr "déclaration de « %#D »"
-#: cp/class.c:6746
+#: cp/class.c:6452
msgid "changes meaning of `%D' from `%+#D'"
-msgstr "changements signifiant de « %D » à partir de «%+#D»"
+msgstr "changements signifiant de « %D » à partir de « %+#D »"
+
+#: cp/cp-lang.c:398
+msgid "inter-module optimisations not implemented yet"
+msgstr "les optimisations inter-module n'est pas implanté encore"
#: cp/cvt.c:88
msgid "can't convert from incomplete type `%T' to `%T'"
@@ -14483,247 +13554,227 @@ msgstr "ne peut convertir d'un type incomplet « %T » vers « %T »"
msgid "conversion of `%E' from `%T' to `%T' is ambiguous"
msgstr "conversion de « %E » à partir de « %T » vers « %T » est ambiguë"
-#: cp/cvt.c:126
+#: cp/cvt.c:113 cp/cvt.c:127
msgid "converting from `%T' to `%T'"
msgstr "conversion de « %T » vers « %T »"
-#: cp/cvt.c:203 cp/cvt.c:207
-msgid "pointer to member cast from `%T' to `%T' is via virtual base"
-msgstr "pointeur vers un membre transtypé de « %T » à « %T » est fait via une base virtuelle"
-
-#: cp/cvt.c:225 cp/cvt.c:236 cp/cvt.c:283
+#: cp/cvt.c:185 cp/cvt.c:253 cp/cvt.c:297
msgid "cannot convert `%E' from type `%T' to type `%T'"
msgstr "ne peut convertir « %E » du type « %T » vers le type « %T »"
-#: cp/cvt.c:262
-#, fuzzy
+#: cp/cvt.c:214 cp/cvt.c:218
+msgid "pointer to member cast from `%T' to `%T' is via virtual base"
+msgstr "pointeur vers un membre transtypé de « %T » à « %T » est fait via une base virtuelle"
+
+#: cp/cvt.c:276
msgid "invalid conversion from '%T' to '%T'"
msgstr "conversion invalide de « %T » vers « %T »"
-#: cp/cvt.c:504
+#: cp/cvt.c:508
msgid "conversion from `%T' to `%T' discards qualifiers"
msgstr "conversion de « %T » à « %T » écarte les qualificateurs"
-#: cp/cvt.c:522
+#: cp/cvt.c:526
msgid "casting `%T' to `%T' does not dereference pointer"
msgstr "transtypage de « %T » vers « %T » ne fait pas de dé-référence de pointeur"
-#: cp/cvt.c:551
+#: cp/cvt.c:553
msgid "cannot convert type `%T' to type `%T'"
msgstr "ne peut convertir type « %T » vers le type « %T »"
-#: cp/cvt.c:683
+#: cp/cvt.c:679
msgid "conversion from `%#T' to `%#T'"
-msgstr "conversion de «%#T» vers «%#T'"
+msgstr "conversion de « %#T » vers « %#T »"
-#: cp/cvt.c:695
+#: cp/cvt.c:691
msgid "`%#T' used where a `%T' was expected"
-msgstr "«%#T» utilisé où « %T » était attendu"
-
-#: cp/cvt.c:712
-msgid "the address of `%D', will always be `true'"
-msgstr "l'adresse de « %D», sera toujours «true »"
+msgstr "« %#T » utilisé où « %T » était attendu"
-#: cp/cvt.c:732
+#: cp/cvt.c:715
msgid "`%#T' used where a floating point value was expected"
-msgstr "«%#T» utilisé où un nombre flottant était attendu"
+msgstr "« %#T » utilisé où un nombre flottant était attendu"
-#: cp/cvt.c:779
+#: cp/cvt.c:762
msgid "conversion from `%T' to non-scalar type `%T' requested"
msgstr "conversion de « %T » vers un type non scalaire « %T » demandée"
-#: cp/cvt.c:865
+#: cp/cvt.c:850
msgid "object of incomplete type `%T' will not be accessed in %s"
msgstr "objet de type incomplet « %T » ne sera pas accessible dans %s"
-#: cp/cvt.c:868
+#: cp/cvt.c:853
msgid "object of type `%T' will not be accessed in %s"
msgstr "objet de type « %T » ne sera pas acccessible dans %s"
-#: cp/cvt.c:884
+#: cp/cvt.c:869
msgid "object `%E' of incomplete type `%T' will not be accessed in %s"
msgstr "objet « %E » d'un type incomplet « %T » ne sera pas accessible dans %s"
#. [over.over] enumerates the places where we can take the address
#. of an overloaded function, and this is not one of them.
-#: cp/cvt.c:904
+#: cp/cvt.c:885
#, c-format
msgid "%s cannot resolve address of overloaded function"
msgstr "%s ne peut résoudre l'adresse la fonction surchargée"
#. Only warn when there is no &.
-#: cp/cvt.c:909
+#: cp/cvt.c:891
#, c-format
msgid "%s is a reference, not call, to function `%E'"
msgstr "%s est un référence, pas un appel, à la fonction « %E »"
-#: cp/cvt.c:1039
+#: cp/cvt.c:898
+#, c-format
+msgid "%s has no effect"
+msgstr "%s n'a pas d'effet"
+
+#: cp/cvt.c:1009
msgid "converting NULL to non-pointer type"
msgstr "conversion d'un NULL vers un type non pointeur"
-#: cp/cvt.c:1115
+#: cp/cvt.c:1081
msgid "ambiguous default type conversion from `%T'"
msgstr "conversion de type par défaut ambiguë à partir de « %T »"
-#: cp/cvt.c:1117
+#: cp/cvt.c:1083
msgid " candidate conversions include `%D' and `%D'"
msgstr " conversions de candidat inclut « %D » et « %D »"
-#: cp/decl.c:736
-#, c-format
-msgid "push %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:770
-#, c-format
-msgid "pop %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:776 cp/decl.c:814
-msgid "XXX is_class_level != (current_binding_level == class_binding_level)\n"
-msgstr ""
-
-#: cp/decl.c:808
-#, c-format
-msgid "suspend %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:837
-#, c-format
-msgid "resume %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:1255 cp/decl.c:3490
-msgid "conflicts with previous declaration `%#D'"
-msgstr "conflits avec la déclaration précédente de «%#D»"
-
-#: cp/decl.c:1467
+#: cp/decl.c:374
msgid "label `%D' used but not defined"
msgstr "étiquette « %D » utilisée mais non définie"
-#: cp/decl.c:1472
+#: cp/decl.c:381
msgid "label `%D' defined but not used"
msgstr "étiquette « %D » définie mais non utilisée"
-#: cp/decl.c:2489
-msgid "namespace alias `%D' not allowed here, assuming `%D'"
-msgstr "alias d'espace de noms « %D » n'est pas permis ici, on assume « %D »"
+#: cp/decl.c:1133 cp/decl.c:1559
+msgid "previous declaration of `%D'"
+msgstr "déclaration précédente de « %D »"
-#: cp/decl.c:2825
-msgid "XXX entering pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1181
+msgid "%Jfunction '%D' redeclared as inline"
+msgstr "%Jfonction « %D » redéclarée comme étant enligne"
-#: cp/decl.c:2834
-msgid "XXX leaving pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1182
+msgid "%Jprevious declaration of '%D' with attribute noinline"
+msgstr "%Jdéclaration précédente de « %D » avec l'attribut non enligne"
-#: cp/decl.c:3285 cp/decl.c:3700
-msgid "previous declaration of `%D'"
-msgstr "déclaration précédente de « %D »"
+#: cp/decl.c:1189
+msgid "%Jfunction '%D' redeclared with attribute noinline"
+msgstr "%Jfonction « %D » redéclarée avec l'attribut non enligne"
-#: cp/decl.c:3366 cp/decl.c:3404
+#: cp/decl.c:1191
+msgid "%Jprevious declaration of '%D' was inline"
+msgstr "%Jdéclaration précédente de « %D » était enligne"
+
+#: cp/decl.c:1212 cp/decl.c:1250
msgid "shadowing %s function `%#D'"
-msgstr "%s masque la fonction «%#D»"
+msgstr "%s masque la fonction « %#D »"
-#: cp/decl.c:3375
+#: cp/decl.c:1221
msgid "library function `%#D' redeclared as non-function `%#D'"
-msgstr "fonction «%#D» de la bibliothèque redéclarée comme n'étant pas une fonction «%#D»"
+msgstr "fonction « %#D » de la bibliothèque redéclarée comme n'étant pas une fonction « %#D »"
-#: cp/decl.c:3380
+#: cp/decl.c:1226
msgid "conflicts with built-in declaration `%#D'"
-msgstr "conflits avec la déclaration interne de «%#D»"
+msgstr "conflits avec la déclaration interne de « %#D »"
-#: cp/decl.c:3399 cp/decl.c:3504 cp/decl.c:3520
+#: cp/decl.c:1245 cp/decl.c:1357 cp/decl.c:1373
msgid "new declaration `%#D'"
-msgstr "nouvelle déclaration de «%#D»"
+msgstr "nouvelle déclaration de « %#D »"
-#: cp/decl.c:3400
+#: cp/decl.c:1246
msgid "ambiguates built-in declaration `%#D'"
-msgstr "ambiguités de la déclaration interne de «%#D»"
+msgstr "ambiguités de la déclaration interne de « %#D »"
-#: cp/decl.c:3464
+#: cp/decl.c:1317
msgid "`%#D' redeclared as different kind of symbol"
msgstr "« %#D » redéclaré comme une sorte différente de symbole"
-#: cp/decl.c:3467
+#: cp/decl.c:1320
msgid "previous declaration of `%#D'"
-msgstr "déclaration précédente de «%#D»"
+msgstr "déclaration précédente de « %#D »"
-#: cp/decl.c:3489
+#: cp/decl.c:1342
msgid "declaration of template `%#D'"
-msgstr "déclaration du patron «%#D»"
+msgstr "déclaration du canevas « %#D »"
+
+#: cp/decl.c:1343 cp/name-lookup.c:496
+msgid "conflicts with previous declaration `%#D'"
+msgstr "conflits avec la déclaration précédente de « %#D »"
-#: cp/decl.c:3505 cp/decl.c:3521
+#: cp/decl.c:1358 cp/decl.c:1374
msgid "ambiguates old declaration `%#D'"
-msgstr "ambiguités d'une vieille déclaration de «%#D»"
+msgstr "ambiguités d'une vieille déclaration de « %#D »"
-#: cp/decl.c:3513
+#: cp/decl.c:1366
msgid "declaration of C function `%#D' conflicts with"
-msgstr "déclaration de la fonction C «%#D» en conflit avec"
+msgstr "déclaration de la fonction C « %#D » en conflit avec"
-#: cp/decl.c:3515
+#: cp/decl.c:1368
msgid "previous declaration `%#D' here"
-msgstr "déclaration précédente de «%#D» ici"
+msgstr "déclaration précédente de « %#D » ici"
-#: cp/decl.c:3533
-msgid "conflicting types for `%#D'"
-msgstr "types conflictuels pour «%#D'"
+#: cp/decl.c:1384
+msgid "conflicting declaration '%#D'"
+msgstr "déclaration conflictuelle « %#D »"
-#: cp/decl.c:3534
-msgid "previous declaration as `%#D'"
-msgstr "déclaration précédente de «%#D'"
+#: cp/decl.c:1385
+msgid "'%D' has a previous declaration as `%#D'"
+msgstr "« %D » a une déclaration précédente tel que « %#D »"
-#: cp/decl.c:3577
+#: cp/decl.c:1438
msgid "`%#D' previously defined here"
-msgstr "«%#D» précédemment défini ici"
+msgstr "« %#D » précédemment défini ici"
-#: cp/decl.c:3578
+#: cp/decl.c:1439
msgid "`%#D' previously declared here"
-msgstr "«%#D» précédemment déclaré ici"
+msgstr "« %#D » précédemment déclaré ici"
#. Prototype decl follows defn w/o prototype.
-#: cp/decl.c:3587
+#: cp/decl.c:1448
msgid "prototype for `%#D'"
-msgstr "prototype de «%#D'"
+msgstr "prototype de « %#D »"
-#: cp/decl.c:3588
-msgid "follows non-prototype definition here"
-msgstr "suit la définition d'un non prototype ici"
+#: cp/decl.c:1449
+msgid "%Jfollows non-prototype definition here"
+msgstr "%Jsuit la définition d'un non prototype ici"
-#: cp/decl.c:3600
+#: cp/decl.c:1461
msgid "previous declaration of `%#D' with %L linkage"
-msgstr "déclaration précédente de «%#D» avec le lien %L"
+msgstr "déclaration précédente de « %#D » avec le lien %L"
-#: cp/decl.c:3602
+#: cp/decl.c:1463
msgid "conflicts with new declaration with %L linkage"
msgstr "conflits avec la nouvelle déclaration avec le lien %L"
-#: cp/decl.c:3625 cp/decl.c:3632
+#: cp/decl.c:1486 cp/decl.c:1493
msgid "default argument given for parameter %d of `%#D'"
-msgstr "argument par défaut donné pour le paramètre %d de «%#D»"
+msgstr "argument par défaut donné pour le paramètre %d de « %#D »"
-#: cp/decl.c:3627 cp/decl.c:3634
+#: cp/decl.c:1488 cp/decl.c:1495
msgid "after previous specification in `%#D'"
-msgstr "après la déclaration précédente dans «%#D»"
+msgstr "après la déclaration précédente dans « %#D »"
-#: cp/decl.c:3643
+#: cp/decl.c:1504
msgid "`%#D' was used before it was declared inline"
-msgstr "«%#D» a été utilisé avant qu'il ne soit déclaré en ligne"
+msgstr "« %#D » a été utilisé avant qu'il ne soit déclaré enligne"
-#: cp/decl.c:3645
-msgid "previous non-inline declaration here"
-msgstr "déclaration précédente non en ligne ici"
+#: cp/decl.c:1505
+msgid "%Jprevious non-inline declaration here"
+msgstr "%Jdéclaration précédente non enligne ici"
-#: cp/decl.c:3699
+#: cp/decl.c:1558
msgid "redundant redeclaration of `%D' in same scope"
msgstr "déclaration redondante de « %D » dans la même étendue"
-#: cp/decl.c:3780
+#: cp/decl.c:1649
#, c-format
msgid "declaration of `%F' throws different exceptions"
msgstr "déclaration de « %F » amène différentes exceptions"
-#: cp/decl.c:3782
+#: cp/decl.c:1651
#, c-format
msgid "than previous declaration `%F'"
msgstr "qu'une précédente déclaratio « %F »"
@@ -14736,621 +13787,492 @@ msgstr "qu'une précédente déclaratio « %F »"
#. that specialization that would cause an implicit
#. instantiation to take place, in every translation unit in
#. which such a use occurs.
-#: cp/decl.c:3922
+#: cp/decl.c:1798
msgid "explicit specialization of %D after first use"
msgstr "spécialisation explicite de %D après la première utilisation"
-#: cp/decl.c:4187
-msgid "`%#D' used prior to declaration"
-msgstr "«%#D» utilisé précédemment avant sa déclaration"
+#: cp/decl.c:1880
+msgid "%J'%D': visibility attribute ignored because it"
+msgstr "%J« %D »: attribut de visibilité ignoré en cause de lui"
-#: cp/decl.c:4218
-msgid "redeclaration of `wchar_t' as `%T'"
-msgstr "redéclaration de « wchar_t» comme «%T »"
+#: cp/decl.c:1882
+msgid "%Jconflicts with previous declaration here"
+msgstr "%Jentre en conflit avec la déclaration précédente ici"
-#. A redeclaration of main, but not a duplicate of the
-#. previous one.
-#.
-#. [basic.start.main]
-#.
-#. This function shall not be overloaded.
-#: cp/decl.c:4246
-msgid "invalid redeclaration of `%D'"
-msgstr "redéclaration invalide de « %D »"
-
-#: cp/decl.c:4247
-msgid "as `%D'"
-msgstr "comme « %D »"
-
-#: cp/decl.c:4337
-msgid "previous external decl of `%#D'"
-msgstr "déclaration externe précédente de « %#D »"
-
-#: cp/decl.c:4378
-msgid "`%D' was previously implicitly declared to return `int'"
-msgstr "« %D » a été précédemment implicitement déclaré comme retournant un entier"
-
-#: cp/decl.c:4438
-msgid "extern declaration of `%#D' doesn't match"
-msgstr "déclaration externe de «%#D» ne concorde pas"
-
-#: cp/decl.c:4439
-msgid "global declaration `%#D'"
-msgstr "déclaration globale «%#D»"
-
-#: cp/decl.c:4472
-msgid "declaration of `%#D' shadows a parameter"
-msgstr "déclaration de «%#D» masque un paramètre"
-
-#: cp/decl.c:4492
-#, c-format
-msgid "declaration of `%s' shadows a member of `this'"
-msgstr "déclaration de « %s » masque un membre de « this »"
-
-#: cp/decl.c:4889
-msgid "`%#D' hides constructor for `%#T'"
-msgstr "«%#D» cache un constructeur pour «%#T»"
-
-#: cp/decl.c:4904
-msgid "`%#D' conflicts with previous using declaration `%#D'"
-msgstr "«%#D» en conflit avec une déclaration précédente «%#D»"
-
-#: cp/decl.c:4916
-msgid "previous non-function declaration `%#D'"
-msgstr "déclaration précédente d'un non fonction «%#D»"
-
-#: cp/decl.c:4917
-msgid "conflicts with function declaration `%#D'"
-msgstr "conflits avec la déclaration de fonction de «%#D»"
-
-#: cp/decl.c:5007
+#: cp/decl.c:1976
msgid "implicit declaration of function `%#D'"
-msgstr "déclaration implicite de la fonction «%#D»"
+msgstr "déclaration implicite de la fonction « %#D »"
-#: cp/decl.c:5167
+#: cp/decl.c:2124
#, c-format
msgid "label `%s' referenced outside of any function"
msgstr "étiquette « %s » référencée à l'extérieur de n'importe quelle fonction"
-#: cp/decl.c:5270 cp/decl.c:5294 cp/decl.c:5387
+#: cp/decl.c:2221 cp/decl.c:2245 cp/decl.c:2333
msgid "jump to label `%D'"
msgstr "saut à l'étiquette « %D »"
-#: cp/decl.c:5272 cp/decl.c:5296
+#: cp/decl.c:2223 cp/decl.c:2247
msgid "jump to case label"
msgstr "saut à l'étiquette du « case »"
-#: cp/decl.c:5280
+#: cp/decl.c:2226 cp/decl.c:2250
+msgid "%H from here"
+msgstr "%H à partir d'ici"
+
+#: cp/decl.c:2231
msgid " crosses initialization of `%#D'"
-msgstr " initialisation croisée pour «%#D»"
+msgstr " initialisation croisée pour « %#D »"
-#: cp/decl.c:5283 cp/decl.c:5403
+#: cp/decl.c:2234 cp/decl.c:2349
msgid " enters scope of non-POD `%#D'"
-msgstr " entre dans la porté d'un non POD «%#D»"
+msgstr " entre dans la porté d'un non POD « %#D »"
-#: cp/decl.c:5303 cp/decl.c:5407
+#: cp/decl.c:2254 cp/decl.c:2353
msgid " enters try block"
msgstr " entre dans le bloc d'essais"
-#. Can't skip init of __exception_info.
-#: cp/decl.c:5305 cp/decl.c:5399 cp/decl.c:5409
+#: cp/decl.c:2256 cp/decl.c:2355
msgid " enters catch block"
msgstr " entre dans le bloc d'interceptions"
-#: cp/decl.c:5388
+#: cp/decl.c:2334
msgid " from here"
msgstr " à partir d'ici"
-#: cp/decl.c:5401
+#. Can't skip init of __exception_info.
+#: cp/decl.c:2345
+msgid "%J enters catch block"
+msgstr "%J entre dans le bloc d'interception"
+
+#: cp/decl.c:2347
msgid " skips initialization of `%#D'"
-msgstr " saut d'initialisation pour «%#D»"
+msgstr " saut d'initialisation pour « %#D »"
-#: cp/decl.c:5437
+#: cp/decl.c:2381
msgid "label named wchar_t"
msgstr "étiquette nommée wchar_t"
-#: cp/decl.c:5440
+#: cp/decl.c:2384
msgid "duplicate label `%D'"
msgstr "étiquette « %D » apparaît en double"
-#: cp/decl.c:5525
-#, c-format
-msgid "case label `%E' not within a switch statement"
-msgstr "étiquette du CASE « %E » n'est pas à l'intérieur de la déclaration du SWITCH"
-
-#. Definition isn't the kind we were looking for.
-#: cp/decl.c:5704 cp/decl.c:5723
-msgid "`%#D' redeclared as %C"
-msgstr "«%#D» rédéclaré comme %C"
-
-#. This happens for A::B where B is a template, and there are no
-#. template arguments.
-#: cp/decl.c:5811 cp/typeck.c:2069 cp/typeck.c:2229
-msgid "invalid use of `%D'"
-msgstr "utilisation invalide de « %D »"
-
-#: cp/decl.c:5852
-msgid "`%D::%D' is not a template"
-msgstr "«%D::%D» n'est pas un patron"
-
-#: cp/decl.c:5869
-msgid "`%D' undeclared in namespace `%D'"
-msgstr "« %D » non déclaré dans l'espace de noms « %D »"
-
-#: cp/decl.c:6002
+#: cp/decl.c:2612 cp/parser.c:3178
msgid "`%D' used without template parameters"
-msgstr "« %D » utilisé sans patron de paramétres"
+msgstr "« %D » utilisé sans canevas de paramétres"
-#: cp/decl.c:6013 cp/decl.c:6029 cp/decl.c:6139
+#: cp/decl.c:2622 cp/decl.c:2638 cp/decl.c:2726
msgid "no class template named `%#T' in `%#T'"
-msgstr "pas de patron de classe nommé «%#T» in «%#T»"
+msgstr "pas de canevas de classe nommé « %#T » in « %#T »"
-#: cp/decl.c:6055 cp/decl.c:6065 cp/decl.c:6100
+#: cp/decl.c:2659 cp/decl.c:2669 cp/decl.c:2689
msgid "no type named `%#T' in `%#T'"
-msgstr "pas de type nommé dans «%#T» dans «%#T»"
-
-#: cp/decl.c:6329
-msgid "lookup of `%D' finds `%#D'"
-msgstr "recherche de « %D » a repéré «%#D»"
+msgstr "pas de type nommé dans « %#T » dans « %#T »"
-#: cp/decl.c:6331
-msgid " instead of `%D' from dependent base class"
-msgstr " au lieu de « %D » à partir d'un classe de base dépendante"
+#: cp/decl.c:3416
+msgid "%Jan anonymous union cannot have function members"
+msgstr "%Jun UNION anonyme ne peut avoir de fonctions membres"
-#: cp/decl.c:6333
-msgid " (use `typename %T::%D' if that's what you meant)"
-msgstr " (utiliser « typename %T::%D » si c'est ce que vous voulez dire)"
-
-#: cp/decl.c:6364
-#, fuzzy
-msgid "name lookup of `%D' changed"
-msgstr "recherche du nom « %s » a changé"
-
-#: cp/decl.c:6366
-msgid " matches this `%D' under ISO standard rules"
-msgstr " concorde avec « %D » selon les règles standards ISO"
-
-#: cp/decl.c:6368
-msgid " matches this `%D' under old rules"
-msgstr " concorde avec « %D » selon les vieilles règles"
-
-#: cp/decl.c:6382 cp/decl.c:6389
-#, fuzzy
-msgid "name lookup of `%D' changed for new ISO `for' scoping"
-msgstr "recherche du nom « %s » changé pour le nouveau ISO «for » d'étendue de champ"
-
-#: cp/decl.c:6384
-msgid " cannot use obsolete binding at `%D' because it has a destructor"
-msgstr " ne peut utiliser une liaison obsolète à « %D » parce qu'il a un destructeur"
-
-#: cp/decl.c:6391
-msgid " using obsolete binding at `%D'"
-msgstr " utilisation de liaison obsolète à « %D »"
-
-#: cp/decl.c:6609
-msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
-msgstr "recherche de « %D » dans la portée de «%#T» («%#D») ne concorde pas avec la recherche dans la portée courante («%#D»)"
-
-#: cp/decl.c:7432
-msgid "an anonymous union cannot have function members"
-msgstr "un UNION anonyme ne peut avoir de fonction membre"
-
-#: cp/decl.c:7449
+#: cp/decl.c:3434
msgid "member %#D' with constructor not allowed in anonymous aggregate"
-msgstr "membre «%#D» avec constructeur n'est pas permis dans un aggrégat anonyme"
+msgstr "membre « %#D » avec constructeur n'est pas permis dans un aggrégat anonyme"
-#: cp/decl.c:7452
+#: cp/decl.c:3437
msgid "member %#D' with destructor not allowed in anonymous aggregate"
-msgstr "membre «%#D» avec destructeur n'est pas permis dans un aggrégat anonyme"
+msgstr "membre « %#D » avec destructeur n'est pas permis dans un aggrégat anonyme"
-#: cp/decl.c:7455
+#: cp/decl.c:3440
msgid "member %#D' with copy assignment operator not allowed in anonymous aggregate"
-msgstr "membre «%#D» avec opérateur d'affectation par copie n'est pas permis dans un aggrégat anonyme"
+msgstr "membre « %#D » avec opérateur d'affectation par copie n'est pas permis dans un aggrégat anonyme"
-#: cp/decl.c:7493
+#: cp/decl.c:3480
msgid "redeclaration of C++ built-in type `%T'"
msgstr "redéclaration du type interne C++ « %T »"
-#: cp/decl.c:7529
+#: cp/decl.c:3518
msgid "multiple types in one declaration"
msgstr "types multiples dans une déclaration"
-#: cp/decl.c:7556
+#: cp/decl.c:3544
msgid "missing type-name in typedef-declaration"
msgstr "nom de type manquant dans la déclaration typedef"
-#: cp/decl.c:7563
+#: cp/decl.c:3552
msgid "ISO C++ prohibits anonymous structs"
-msgstr "le C++ ISO interdit les structures anonymes"
+msgstr "ISO C++ interdit les structures anonymes"
-#: cp/decl.c:7570
+#: cp/decl.c:3559
msgid "`%D' can only be specified for functions"
msgstr "« %D » ne peut seulement être spécifier pour les fonctions"
-#: cp/decl.c:7572
+#: cp/decl.c:3561
msgid "`%D' can only be specified inside a class"
msgstr "« %D » peut seulement être spécifié à l'intérieur d'une classe"
-#: cp/decl.c:7574
+#: cp/decl.c:3563
msgid "`%D' can only be specified for constructors"
msgstr "« %D » ne peut seulement être spécifié pour les constructeurs"
-#: cp/decl.c:7577
+#: cp/decl.c:3566
msgid "`%D' can only be specified for objects and functions"
msgstr "« %D » ne peut seulement être spécifié pour les objets et les fonctions"
-#: cp/decl.c:7719 cp/decl2.c:936
-#, fuzzy
+#: cp/decl.c:3708 cp/decl2.c:861
msgid "typedef `%D' is initialized (use __typeof__ instead)"
-msgstr "typedef « %D » est initialisé"
+msgstr "typedef « %D » est initialisé (use __typeof__ instead)"
-#: cp/decl.c:7724
+#: cp/decl.c:3713
msgid "function `%#D' is initialized like a variable"
msgstr "fonction « %#D » est initialisée comme une variable"
-#: cp/decl.c:7736
+#: cp/decl.c:3725
msgid "declaration of `%#D' has `extern' and is initialized"
-msgstr "déclaration de «%#D» est externe et initialisé"
+msgstr "déclaration de « %#D » est externe et initialisé"
-#: cp/decl.c:7770
+#: cp/decl.c:3758
msgid "`%#D' is not a static member of `%#T'"
-msgstr "«%#D» n'est pas un membre statique de «%#T»"
+msgstr "« %#D » n'est pas un membre statique de « %#T »"
-#: cp/decl.c:7775
+#: cp/decl.c:3764
msgid "ISO C++ does not permit `%T::%D' to be defined as `%T::%D'"
-msgstr "le C++ ISO ne permet pas que « %T::%D » soit défini comme « %T::%D »"
+msgstr "ISO C++ ne permet pas que « %T::%D » soit défini comme « %T::%D »"
-#: cp/decl.c:7786
+#: cp/decl.c:3775
msgid "duplicate initialization of %D"
msgstr "initialisation en double de %D"
-#: cp/decl.c:7815
+#: cp/decl.c:3806
msgid "declaration of `%#D' outside of class is not definition"
msgstr "déclaraion de « %#D » en dehors de la classe n'est pas une définition"
-#: cp/decl.c:7865
+#: cp/decl.c:3857
msgid "variable `%#D' has initializer but incomplete type"
msgstr "la variable « %#D » est initialisée, mais a un type incomplet"
-#: cp/decl.c:7873 cp/decl.c:8432
+#: cp/decl.c:3865 cp/decl.c:4426
msgid "elements of array `%#D' have incomplete type"
msgstr "éléments du tableau « %#D » ont un type incomplet"
-#: cp/decl.c:7889
+#: cp/decl.c:3881
msgid "aggregate `%#D' has incomplete type and cannot be defined"
msgstr "aggrégat « %#D » a un type incomplet et ne peut être défini"
-#: cp/decl.c:7931
+#: cp/decl.c:3923
msgid "`%D' declared as reference but not initialized"
msgstr "« %D » déclaré comme référence mais n'est pas initialisé"
-#: cp/decl.c:7940
+#: cp/decl.c:3929
msgid "ISO C++ forbids use of initializer list to initialize reference `%D'"
-msgstr "le C++ ISO interdit l'usage de liste d'initialiseur pour initialiser la référence « %D »"
+msgstr "ISO C++ interdit l'usage de liste d'initialiseur pour initialiser la référence « %D »"
-#: cp/decl.c:7970
+#: cp/decl.c:3957
msgid "cannot initialize `%T' from `%T'"
msgstr "ne peut initialiser « %T » à partir de « %T »"
-#: cp/decl.c:8004
+#: cp/decl.c:3989
msgid "initializer fails to determine size of `%D'"
msgstr "l'initialisation n'a pu déterminer la taille de « %D »"
-#: cp/decl.c:8009
+#: cp/decl.c:3994
msgid "array size missing in `%D'"
msgstr "taille de tableau manquante dans « %D »"
-#: cp/decl.c:8021
+#: cp/decl.c:4006
msgid "zero-size array `%D'"
msgstr "tableau « %D » de taille zéro"
#. An automatic variable with an incomplete type: that is an error.
#. Don't talk about array types here, since we took care of that
#. message in grokdeclarator.
-#: cp/decl.c:8059
+#: cp/decl.c:4043
msgid "storage size of `%D' isn't known"
msgstr "taille de stockage de « %D » n'est pas connue"
-#: cp/decl.c:8081
+#: cp/decl.c:4065
msgid "storage size of `%D' isn't constant"
msgstr "taille de stockage de « %D » n'est pas une constante"
-#: cp/decl.c:8137
+#: cp/decl.c:4120
msgid "sorry: semantics of inline function static data `%#D' are wrong (you'll wind up with multiple copies)"
-msgstr "désolé: sémantique de fonction en ligne de données statiques «%#D» est erronée (vous obtiendrez de multiples copies)"
+msgstr "désolé: sémantique de fonction enligne de données statiques « %#D » est erronée (vous obtiendrez de multiples copies)"
-#: cp/decl.c:8138
-msgid " you can work around this by removing the initializer"
-msgstr " vous pouvez contourner cela en enlevant l'initialisation"
+#: cp/decl.c:4121
+msgid "%J you can work around this by removing the initializer"
+msgstr "%J vous pouvez contourner cela en enlevant l'initialiseur"
-#: cp/decl.c:8164
+#: cp/decl.c:4147
msgid "uninitialized const `%D'"
msgstr "constante « %D » non initialisée"
-#: cp/decl.c:8249
-#, fuzzy
+#: cp/decl.c:4226
msgid "brace-enclosed initializer used to initialize `%T'"
-msgstr "classe de base d'initialisation spécifié, mais aucune classe de base à initialiser"
+msgstr "initialiseur utilisé entre accolades pour initialiser « %T »"
-#: cp/decl.c:8313
+#: cp/decl.c:4290
msgid "initializer for `%T' must be brace-enclosed"
-msgstr "l'initialisation de « %T » doit être entre acolades"
+msgstr "initialiseur de « %T » doit être entre accolades"
-#: cp/decl.c:8328
-#, fuzzy
+#: cp/decl.c:4307
msgid "ISO C++ does not allow designated initializers"
-msgstr "le C++ ISO ne permet pas les valeurs retournées nommées"
+msgstr "ISO C++ ne permet de désigner les initialiseurs"
-#: cp/decl.c:8332
-#, fuzzy
+#: cp/decl.c:4311
msgid "`%T' has no non-static data member named `%D'"
-msgstr "«%#T» n'a pas de membre nommé « %D »"
+msgstr "« %T » n'a pas de membre de données non statique nommé « %D »"
+
+#: cp/decl.c:4359
+msgid "name `%D' used in a GNU-style designated initializer for an array"
+msgstr "nom « %D » utilisé dans un style GNU de l'initialisateur désigné pour un tableau"
-#: cp/decl.c:8389
-#, fuzzy
+#: cp/decl.c:4382
msgid "too many initializers for `%T'"
msgstr "trop d'initialiseurs pour « %T »"
-#: cp/decl.c:8426
+#: cp/decl.c:4420
msgid "variable-sized object `%D' may not be initialized"
msgstr "objet de taille variable « %D » peut ne pas être initialisé"
-#: cp/decl.c:8437
+#: cp/decl.c:4431
msgid "`%D' has incomplete type"
msgstr "« %D » a un type incomplet"
-#: cp/decl.c:8486
+#: cp/decl.c:4486
msgid "`%D' must be initialized by constructor, not by `{...}'"
msgstr "« %D » doit être initialisé par un constructeur, non pas par « {...} »"
-#: cp/decl.c:8527
+#: cp/decl.c:4530
msgid "structure `%D' with uninitialized const members"
msgstr "structure « %D » avec constantes non initialisées de membres"
-#: cp/decl.c:8529
+#: cp/decl.c:4532
msgid "structure `%D' with uninitialized reference members"
msgstr "structure « %D » avec références non initialisées de membres"
-#: cp/decl.c:8770
+#: cp/decl.c:4713
msgid "assignment (not initialization) in declaration"
msgstr "affectation (non pas l'initialisation) dans la déclaration"
-#: cp/decl.c:8785
+#: cp/decl.c:4730
msgid "cannot initialize `%D' to namespace `%D'"
msgstr "ne peut initialiser « %D » à l'espace de noms « %D »"
-#: cp/decl.c:8836
+#: cp/decl.c:4780
msgid "shadowing previous type declaration of `%#D'"
-msgstr "masque la déclaration précédente de «%#D»"
+msgstr "masque la déclaration précédente de « %#D »"
-#: cp/decl.c:8883
-#, fuzzy
+#: cp/decl.c:4816
msgid "`%D' cannot be thread-local because it has non-POD type `%T'"
-msgstr "« %E » ne peut être utilisé comme pointeur de membre, alors qu'il est de type « %T »"
+msgstr "« %D » ne peut être utilisé comme un thread local parce qu'il a un non POD de type « %T »"
-#: cp/decl.c:8898
-#, fuzzy
+#: cp/decl.c:4831
msgid "`%D' is thread-local and so cannot be dynamically initialized"
-msgstr "aggrégat « %T » sans mambre nommé ne peut être initialisé"
-
-#: cp/decl.c:9298 cp/init.c:562
-msgid "multiple initializations given for `%D'"
-msgstr "multiples initialisations données pour « %D »"
+msgstr "« %D » est un thread local et ne peut donc pas être initialisé dynamiquement"
-#: cp/decl.c:9390
+#: cp/decl.c:5313
msgid "invalid catch parameter"
msgstr "paramètre d'interception invalide"
-#: cp/decl.c:9508
+#: cp/decl.c:5427
msgid "destructor for alien class `%T' cannot be a member"
msgstr "destructeur pour la classe étrangère « %T » ne peut être un membre"
-#: cp/decl.c:9511
+#: cp/decl.c:5430
msgid "constructor for alien class `%T' cannot be a member"
msgstr "constructeur pour la classe étrangère « %T » ne peut être un membre"
-#: cp/decl.c:9530
+#: cp/decl.c:5452
msgid "`%D' declared as a `virtual' %s"
msgstr "« %D» déclaré comme « virtual » %s"
-#: cp/decl.c:9532
+#: cp/decl.c:5454
msgid "`%D' declared as an `inline' %s"
msgstr "« %D» déclaré comme « inline » %s"
-#: cp/decl.c:9534
+#: cp/decl.c:5456
msgid "`const' and `volatile' function specifiers on `%D' invalid in %s declaration"
-msgstr "spécificateurs de fonction « const» et «volatile» invalide pour «%D » dans la déclaration %s"
+msgstr "spécificateurs de fonction « const» et «volatile» invalide pour « %D » dans la déclaration %s"
-#: cp/decl.c:9537
+#: cp/decl.c:5459
msgid "`%D' declared as a friend"
msgstr "« %D » déclaré comme un ami"
-#: cp/decl.c:9543
+#: cp/decl.c:5465
msgid "`%D' declared with an exception specification"
msgstr "« %D » déclaré avec une exception de spécification"
-#: cp/decl.c:9618
+#: cp/decl.c:5544
msgid "cannot declare `::main' to be a template"
-msgstr "ne peut déclarer « ::main » comme étant un patron"
+msgstr "ne peut déclarer « ::main » comme étant un canevas"
-#: cp/decl.c:9620
+#: cp/decl.c:5546
msgid "cannot declare `::main' to be inline"
-msgstr "ne peut déclarer «::main» à être en ligne"
+msgstr "ne peut déclarer «::main» à être enligne"
-#: cp/decl.c:9622
+#: cp/decl.c:5548
msgid "cannot declare `::main' to be static"
msgstr "ne peut déclarer « ::main » comme étant static"
-#: cp/decl.c:9625
+#: cp/decl.c:5551
msgid "`main' must return `int'"
msgstr "« main» doit retourner « int »"
-#: cp/decl.c:9653
+#: cp/decl.c:5579
msgid "non-local function `%#D' uses anonymous type"
-msgstr "fonction non locale «%#D» utilise un type anonyme"
+msgstr "fonction non locale « %#D » utilise un type anonyme"
-#: cp/decl.c:9656
+#: cp/decl.c:5582
msgid "`%#D' does not refer to the unqualified type, so it is not used for linkage"
-msgstr "«%#D» ne réfère pas à un type non qualifié, aussi il n'est pas utilisé pour la liaison"
+msgstr "« %#D » ne réfère pas à un type non qualifié, aussi il n'est pas utilisé pour la liaison"
-#: cp/decl.c:9662
+#: cp/decl.c:5588
msgid "non-local function `%#D' uses local type `%T'"
-msgstr "fonction non locale «%#D» utilise un type local « %T »"
+msgstr "fonction non locale « %#D » utilise un type local « %T »"
-#: cp/decl.c:9691
+#: cp/decl.c:5612
msgid "%smember function `%D' cannot have `%T' method qualifier"
msgstr "%sfonction membre « %D » ne peut avoir « %T » comme qualificateur de méthode"
-#: cp/decl.c:9715
+#: cp/decl.c:5636
msgid "defining explicit specialization `%D' in friend declaration"
msgstr "définition explicite de spécialisation « %D » dans lka déclaration ami"
#. Something like `template <class T> friend void f<T>()'.
-#: cp/decl.c:9725
+#: cp/decl.c:5646
msgid "invalid use of template-id `%D' in declaration of primary template"
-msgstr "utilisation invalide du template-id « %D » dans la déclaration du patron primaire"
+msgstr "utilisation invalide du template-id « %D » dans la déclaration du canevas primaire"
-#: cp/decl.c:9753
+#: cp/decl.c:5673
msgid "default arguments are not allowed in declaration of friend template specialization `%D'"
-msgstr "arguments par défaut ne sont pas permis dans la déclaration amie de la spécialisation du patron « %D »"
+msgstr "arguments par défaut ne sont pas permis dans la déclaration amie de la spécialisation du canevas « %D »"
-#: cp/decl.c:9760
+#: cp/decl.c:5680
msgid "`inline' is not allowed in declaration of friend template specialization `%D'"
-msgstr "« inline» n'estpas permis dans la déclaration amie de la spécialisation du patron «%D »"
+msgstr "« inline» n'estpas permis dans la déclaration amie de la spécialisation du canevas « %D »"
-#: cp/decl.c:9822
+#: cp/decl.c:5741
msgid "definition of implicitly-declared `%D'"
msgstr "définition implicitement déclarée « %D »"
-#: cp/decl.c:9834 cp/decl2.c:785
+#: cp/decl.c:5759 cp/decl2.c:744
msgid "no `%#D' member function declared in class `%T'"
msgstr "pas de fonction membre « %#D » déclarée dans la classe « %T »"
-#: cp/decl.c:9967
+#: cp/decl.c:5893
msgid "non-local variable `%#D' uses local type `%T'"
-msgstr "variable non locale «%#D» utilise un type local « %T »"
+msgstr "variable non locale « %#D » utilise un type local « %T »"
-#: cp/decl.c:10064
+#: cp/decl.c:6008
msgid "invalid in-class initialization of static data member of non-integral type `%T'"
msgstr "initialisation invalide dans la class de données de membre statiques d'un non entier de type « %T »"
-#: cp/decl.c:10073
+#: cp/decl.c:6017
msgid "ISO C++ forbids in-class initialization of non-const static member `%D'"
-msgstr "le C++ ISO interdit l'initialisation intra-classe d'un membre statique non constant « %D »"
+msgstr "ISO C++ interdit l'initialisation intra-classe d'un membre statique non constant « %D »"
-#: cp/decl.c:10076
+#: cp/decl.c:6020
msgid "ISO C++ forbids initialization of member constant `%D' of non-integral type `%T'"
-msgstr "le C++ ISO interdit l'initialisation d'une membre constant « %D » d'un type non entier « %T »"
+msgstr "ISO C++ interdit l'initialisation d'une membre constant « %D » d'un type non entier « %T »"
-#: cp/decl.c:10126
-msgid "size of array `%D' has non-integer type"
-msgstr "taille du tableau « %D » n'est pas de type entier"
+#: cp/decl.c:6039
+msgid "size of array `%D' has non-integral type `%T'"
+msgstr "taille du tableau « %D » n'est pas de type entier « %T »"
-#: cp/decl.c:10128
-msgid "size of array has non-integer type"
-msgstr "taille du tableau a type non entier"
+#: cp/decl.c:6041
+msgid "size of array has non-integral type `%T'"
+msgstr "taille du tableau a type non entier « %T »"
-#: cp/decl.c:10148
+#: cp/decl.c:6077
msgid "size of array `%D' is negative"
msgstr "taille du tableau « %D » est négative"
-#: cp/decl.c:10150
+#: cp/decl.c:6079
msgid "size of array is negative"
msgstr "taille du tableau est négative"
-#: cp/decl.c:10159
+#: cp/decl.c:6087
msgid "ISO C++ forbids zero-size array `%D'"
-msgstr "le C++ ISO interdit les tableaux de taille zéro « %D »"
+msgstr "ISO C++ interdit les tableaux de taille zéro « %D »"
-#: cp/decl.c:10161
+#: cp/decl.c:6089
msgid "ISO C++ forbids zero-size array"
-msgstr "le C++ ISO interdit les tableaux de taille zéro"
+msgstr "ISO C++ interdit les tableaux de taille zéro"
-#: cp/decl.c:10168
+#: cp/decl.c:6096
msgid "size of array `%D' is not an integral constant-expression"
msgstr "taille du tableau « %D » n'a pas une expression de constante de type entier"
-#: cp/decl.c:10171
+#: cp/decl.c:6099
msgid "size of array is not an integral constant-expression"
msgstr "taille du tableau n'est pas une expression de constante de type entier"
-#: cp/decl.c:10189
+#: cp/decl.c:6104
msgid "ISO C++ forbids variable-size array `%D'"
-msgstr "le C++ ISO interdit les tableaus de taille variable « %D »"
+msgstr "ISO C++ interdit les tableaus de taille variable « %D »"
-#: cp/decl.c:10192
+#: cp/decl.c:6106
msgid "ISO C++ forbids variable-size array"
-msgstr "le C++ ISO interdit le tableau de taille variable"
+msgstr "ISO C++ interdit le tableau de taille variable"
-#: cp/decl.c:10203
+#: cp/decl.c:6128
msgid "overflow in array dimension"
msgstr "débordement dans les dimensions du tableau"
-#: cp/decl.c:10262
+#: cp/decl.c:6222
msgid "declaration of `%D' as %s"
msgstr "déclaration de « %D » comme « %s »"
-#: cp/decl.c:10264
+#: cp/decl.c:6224
#, c-format
msgid "creating %s"
msgstr "création de %s"
-#: cp/decl.c:10276
+#: cp/decl.c:6236
msgid "declaration of `%D' as multidimensional array must have bounds for all dimensions except the first"
msgstr "déclaration de « %D » comme tableau multidimensionel doit avoir des bornes pour chaque dimension excepté pour la première"
-#: cp/decl.c:10279
+#: cp/decl.c:6239
msgid "multidimensional array must have bounds for all dimensions except the first"
msgstr "tableau multidimensionel doit avoir des bornes pour chaque dimension excepté pour la première"
-#: cp/decl.c:10308
+#: cp/decl.c:6267
msgid "return type specification for constructor invalid"
msgstr "spécification de type retourné pour un constructeur est invalide"
-#: cp/decl.c:10315
+#: cp/decl.c:6274
msgid "return type specification for destructor invalid"
msgstr "spécification de type retourné pour un destructeur est invalide"
-#: cp/decl.c:10321
+#: cp/decl.c:6280
msgid "operator `%T' declared to return `%T'"
msgstr "opérateur « %T » déclaré comme retournant « %T »"
-#: cp/decl.c:10323
+#: cp/decl.c:6282
msgid "return type specified for `operator %T'"
msgstr "type spécifié retourné pour l'opérateur « %T »"
-#: cp/decl.c:10491
+#: cp/decl.c:6425
msgid "destructors must be member functions"
msgstr "les destructeurs doivent être des fonctions membres"
-#: cp/decl.c:10510
+#: cp/decl.c:6444
msgid "destructor `%T' must match class name `%T'"
msgstr "destructeur « %T » doit concorder avec le nom de la classe « %T »"
-#: cp/decl.c:10539
-#, fuzzy
-msgid "variable declaration is not allowed here"
-msgstr "initialisation n'est pas permise dans un module SPEC"
-
-#: cp/decl.c:10566
-msgid "invalid declarator"
-msgstr "déclarateur invalide"
-
-#: cp/decl.c:10617
+#: cp/decl.c:6507
msgid "declarator-id missing; using reserved word `%D'"
msgstr "declarator-id manquant; utilisation du mot réservé « %D »"
-#: cp/decl.c:10674
+#: cp/decl.c:6561
msgid "type `%T' is not derived from type `%T'"
msgstr "type « %T » n'est pas dérivé du type « %T »"
#. Parse error puts this typespec where
#. a declarator should go.
-#: cp/decl.c:10726
+#: cp/decl.c:6624
msgid "`%T' specified as declarator-id"
msgstr "« %T » spécifié comme declarator-id"
-#: cp/decl.c:10728
+#: cp/decl.c:6626
msgid " perhaps you want `%T' for a constructor"
msgstr " peut-être que vous voulez « %T » comme constructeur"
@@ -15358,305 +14280,300 @@ msgstr " peut-être que vous voulez « %T » comme constructeur"
#. decl-specifier like in
#. std::allocator alloc;
#. Handle that gracefully.
-#: cp/decl.c:10750
-#, fuzzy, c-format
+#: cp/decl.c:6648
+#, c-format
msgid "invalid use of template-name '%E' in a declarator"
-msgstr "utilisation invalide du template-id « %D » dans la déclaration du patron primaire"
+msgstr "utilisation invalide du template-name « %E » dans le déclarateur"
-#: cp/decl.c:10770
+#: cp/decl.c:6668
msgid "declaration of `%D' as non-function"
msgstr "déclaration de « %D » comme non-fonction"
-#: cp/decl.c:10847
+#: cp/decl.c:6745
msgid "`bool' is now a keyword"
msgstr "« bool » est maintenant un mot clé"
-#: cp/decl.c:10849
+#: cp/decl.c:6747
msgid "extraneous `%T' ignored"
msgstr "« %T » surperflu ignoré"
-#: cp/decl.c:10865 cp/decl.c:10910
+#: cp/decl.c:6763 cp/decl.c:6807
msgid "multiple declarations `%T' and `%T'"
msgstr "multiples déclarations « %T » et « %T »"
-#: cp/decl.c:10878
+#: cp/decl.c:6776
msgid "ISO C++ does not support `long long'"
-msgstr "le C++ ISO ne permet pas « long long »"
+msgstr "ISO C++ ne permet pas « long long »"
-#: cp/decl.c:10983 cp/decl.c:10986
+#: cp/decl.c:6880 cp/decl.c:6883
#, c-format
msgid "ISO C++ forbids declaration of `%s' with no type"
-msgstr "le C++ ISO interdit la déclaration de « %s » sans type"
+msgstr "ISO C++ interdit la déclaration de « %s » sans type"
-#. The implicit typename extension is deprecated and will be
-#. removed. Warn about its use now.
-#: cp/decl.c:10996
-msgid "`%T' is implicitly a typename"
-msgstr "« %T » est implicitement un typename"
-
-#: cp/decl.c:11032
+#: cp/decl.c:6914
#, c-format
msgid "short, signed or unsigned invalid for `%s'"
msgstr "short, signed ou unsigned est invalide pour « %s »"
-#: cp/decl.c:11037
+#: cp/decl.c:6919
#, c-format
msgid "long and short specified together for `%s'"
msgstr "long et short spécifiés ensembles pour « %s »"
-#: cp/decl.c:11048
+#: cp/decl.c:6930
#, c-format
msgid "signed and unsigned given together for `%s'"
msgstr "signed et unsigned donnés ensembles pour « %s »"
-#: cp/decl.c:11157
+#: cp/decl.c:7039
msgid "qualifiers are not allowed on declaration of `operator %T'"
msgstr "qualificateurs ne sont pas permis dans la déclaration de « operator %T »"
-#: cp/decl.c:11179
+#: cp/decl.c:7061
msgid "member `%D' cannot be declared both virtual and static"
msgstr "membre « %D » ne peut être déclaré virtuel et statique"
-#: cp/decl.c:11188
+#: cp/decl.c:7070
msgid "`%T::%D' is not a valid declarator"
-msgstr "«%T::%D» n'est pas un déclarateur valide"
+msgstr "« %T::%D » n'est pas un déclarateur valide"
-#: cp/decl.c:11200
+#: cp/decl.c:7082
msgid "storage class specifiers invalid in parameter declarations"
msgstr "spécificateurs de classe de stockage invalides dans la déclaration des paramètres"
-#: cp/decl.c:11204
+#: cp/decl.c:7086
msgid "typedef declaration invalid in parameter declaration"
msgstr "déclaration typedef invalide dans le paramètre de la déclaration"
-#: cp/decl.c:11217
+#: cp/decl.c:7099
msgid "virtual outside class declaration"
msgstr "virtuel en dehors de la déclaration de classe"
-#: cp/decl.c:11278
+#: cp/decl.c:7158
#, c-format
msgid "storage class specified for %s `%s'"
msgstr "classe de stockage spécifiée pour %s « %s »"
-#: cp/decl.c:11325
+#: cp/decl.c:7193
+#, c-format
+msgid "top-level declaration of `%s' specifies `auto'"
+msgstr "la déclaration hors de toute fonction de « %s » a spécifié « auto »"
+
+#: cp/decl.c:7205
msgid "storage class specifiers invalid in friend function declarations"
msgstr "spécificateurs de classe de stockage invalide dans les déclarations de fonction amie"
-#: cp/decl.c:11495
+#: cp/decl.c:7370
msgid "destructor cannot be static member function"
msgstr "le destructeur ne peut être une fonction membre statique"
-#: cp/decl.c:11498
+#: cp/decl.c:7373
#, c-format
msgid "destructors may not be `%s'"
msgstr "destructeurs ne peut être « %s »"
-#: cp/decl.c:11519
+#: cp/decl.c:7394
msgid "constructor cannot be static member function"
msgstr "le constructeur ne peut être une fonction membre statique"
-#: cp/decl.c:11522
+#: cp/decl.c:7397
msgid "constructors cannot be declared virtual"
msgstr "constructeurs ne peut être déclarés virtuels"
-#: cp/decl.c:11527
+#: cp/decl.c:7402
#, c-format
msgid "constructors may not be `%s'"
msgstr "constructeurs ne peuvent pas être « %s »"
-#: cp/decl.c:11537
+#: cp/decl.c:7412
msgid "return value type specifier for constructor ignored"
msgstr "type de valeur retournée d'un spécificateur pour un constructeur est ignoré"
-#: cp/decl.c:11556
+#: cp/decl.c:7431
#, c-format
msgid "can't initialize friend function `%s'"
msgstr "ne peut initialiser la fonction amie « %s »"
#. Cannot be both friend and virtual.
-#: cp/decl.c:11560
+#: cp/decl.c:7435
msgid "virtual functions cannot be friends"
msgstr "fonctions virtuelles ne peuvent être amies"
-#: cp/decl.c:11565
+#: cp/decl.c:7440
msgid "friend declaration not in class definition"
msgstr "déclaration amie n'est pas dans la définition de classe"
-#: cp/decl.c:11567
+#: cp/decl.c:7442
#, c-format
msgid "can't define friend function `%s' in a local class definition"
msgstr "ne peut définir une fonction amie « %s » dans une définition locale de classe"
-#: cp/decl.c:11591
+#: cp/decl.c:7463
msgid "destructors may not have parameters"
msgstr "destructeurs ne peuvent pas avoir de paramètre"
-#: cp/decl.c:11622 cp/decl.c:11629
-#, fuzzy
+#: cp/decl.c:7483 cp/decl.c:7490
msgid "cannot declare reference to `%#T'"
-msgstr "ne peut décalrer des références vers des références"
+msgstr "ne peut déclarer une référence vers « %#T »"
-#: cp/decl.c:11623
-#, fuzzy
+#: cp/decl.c:7484
msgid "cannot declare pointer to `%#T'"
-msgstr "ne peut déclarer un pointeur vers le membre «%#T»"
+msgstr "ne peut déclarer un pointeur vers « %#T »"
-#: cp/decl.c:11628
+#: cp/decl.c:7489
msgid "cannot declare pointer to `%#T' member"
-msgstr "ne peut déclarer un pointeur vers le membre «%#T»"
+msgstr "ne peut déclarer un pointeur vers le membre « %#T »"
-#: cp/decl.c:11804
+#: cp/decl.c:7627
msgid "extra qualification `%T::' on member `%s' ignored"
-msgstr "qualification additionnelle «%T::» sur le membre « %s » est ignorée"
+msgstr "qualification additionnelle « %T:: » sur le membre « %s » est ignorée"
-#: cp/decl.c:11814
+#: cp/decl.c:7639
msgid "cannot declare member function `%T::%s' within `%T'"
-msgstr "ne peut déclarer la fonction membre «%T::%s» à l'intérieur de « %T »"
+msgstr "ne peut déclarer la fonction membre « %T::%s » à l'intérieur de « %T »"
-#: cp/decl.c:11829
+#: cp/decl.c:7654
msgid "cannot declare member `%T::%s' within `%T'"
-msgstr "ne peut déclarer le membre «%T::%s» à l'intérieur de « %T »"
+msgstr "ne peut déclarer le membre « %T::%s » à l'intérieur de « %T »"
-#: cp/decl.c:11908
+#: cp/decl.c:7734
msgid "data member may not have variably modified type `%T'"
-msgstr ""
+msgstr "membre de données peut ne pas avoir de type « %T » modifié de manière variable"
-#: cp/decl.c:11910
-#, fuzzy
+#: cp/decl.c:7736
msgid "parameter may not have variably modified type `%T'"
-msgstr "argument du patron « %T » utilise un type anonyme"
+msgstr "paramètre peut ne pas avoir de type « %T » modifié de manière variable"
#. [dcl.fct.spec] The explicit specifier shall only be used in
#. declarations of constructors within a class definition.
-#: cp/decl.c:11918
+#: cp/decl.c:7744
msgid "only declarations of constructors can be `explicit'"
msgstr "seuls les déclarations de constructeurs peuvent être « explicit »"
-#: cp/decl.c:11926
+#: cp/decl.c:7752
#, c-format
msgid "non-member `%s' cannot be declared `mutable'"
msgstr "le non membre « %s » ne peut être déclaré « mutable »"
-#: cp/decl.c:11931
+#: cp/decl.c:7757
#, c-format
msgid "non-object member `%s' cannot be declared `mutable'"
msgstr "un membre non objet « %s » ne peut être déclaré « mutable »"
-#: cp/decl.c:11937
+#: cp/decl.c:7763
#, c-format
msgid "function `%s' cannot be declared `mutable'"
msgstr "fonction « %s » ne peut être déclarée « mutable »"
-#: cp/decl.c:11942
+#: cp/decl.c:7768
#, c-format
msgid "static `%s' cannot be declared `mutable'"
msgstr "static « %s » ne peut être déclaré « mutable »"
-#: cp/decl.c:11947
+#: cp/decl.c:7773
#, c-format
msgid "const `%s' cannot be declared `mutable'"
msgstr "const « %s » ne peut être déclaré « mutable »"
-#: cp/decl.c:11960
+#: cp/decl.c:7786
msgid "template-id `%D' used as a declarator"
-msgstr "identificateur de patron « %D » utilisé comme déclarateur"
+msgstr "identificateur de canevas « %D » utilisé comme déclarateur"
-#: cp/decl.c:11981
+#: cp/decl.c:7807
msgid "ISO C++ forbids nested type `%D' with same name as enclosing class"
-msgstr "le C++ ISO interdit le type imbriqué « %D » avec le même nom que la classe de fermeture"
+msgstr "ISO C++ interdit le type imbriqué « %D » avec le même nom que la classe de fermeture"
-#: cp/decl.c:12030
-msgid "typedef name may not be class-qualified"
-msgstr "nom du typedef peut ne pas être qualifié pour la classe"
+#: cp/decl.c:7815
+msgid "%Jtypedef name may not be a nested-name-specifier"
+msgstr "%Jnom du typedef peut ne pas être un nom de spécificateur imbriqué"
-#: cp/decl.c:12038
-msgid "invalid type qualifier for non-member function type"
-msgstr "qualificateur de type invalide pour un type de fonction (autre que fonction membre)"
+#: cp/decl.c:7861
+msgid "%Jinvalid type qualifier for non-member function type"
+msgstr "%Jqualificateur de type invalide pour un type de fonction non membre"
-#: cp/decl.c:12101
+#: cp/decl.c:7925
msgid "type qualifiers specified for friend class declaration"
msgstr "qulificateurs de types spécifiés pour la déclaration d'une classe amie"
-#: cp/decl.c:12106
+#: cp/decl.c:7930
msgid "`inline' specified for friend class declaration"
msgstr "« inline » spécifié pour la déclaration d'une classe amie"
-#: cp/decl.c:12114
+#: cp/decl.c:7938
msgid "template parameters cannot be friends"
-msgstr "paramètres du patron ne peuvent pas être amis"
+msgstr "paramètres du canevas ne peuvent pas être amis"
-#: cp/decl.c:12116
-#, fuzzy
+#: cp/decl.c:7940
msgid "friend declaration requires class-key, i.e. `friend class %T::%D'"
-msgstr "déclaration ami requiert une clé de classe, i.e. « friend class %T::%T'"
+msgstr "déclaration ami requiert une clé de classe, i.e. « friend class %T::%D »"
-#: cp/decl.c:12120
+#: cp/decl.c:7944
msgid "friend declaration requires class-key, i.e. `friend %#T'"
-msgstr "déclaration amie requiert une clé de classes, i.e. « friend %#T'"
+msgstr "déclaration amie requiert une clé de classes, i.e. « friend %#T »"
-#: cp/decl.c:12134
+#: cp/decl.c:7957
msgid "trying to make class `%T' a friend of global scope"
msgstr "tentative de rendre la classe « %T » un ami de la portée globale"
-#: cp/decl.c:12145
+#: cp/decl.c:7968
msgid "invalid qualifiers on non-member function type"
msgstr "qualificteurs invalide pour un type de fonction (autre que fonction membre)"
-#: cp/decl.c:12164
+#: cp/decl.c:7987
msgid "abstract declarator `%T' used as declaration"
msgstr "déclaration abstrait « %T » utilisé dans la déclaration"
-#: cp/decl.c:12176
+#: cp/decl.c:7999
msgid "unnamed variable or field declared void"
msgstr "variable non nommée ou champ déclaré void"
-#: cp/decl.c:12185
+#: cp/decl.c:8008
msgid "variable or field declared void"
msgstr "variable ou champ déclaré void"
-#: cp/decl.c:12195
+#: cp/decl.c:8018
msgid "cannot use `::' in parameter declaration"
msgstr "ne peut utiliser «::» dans le paramètre d'un déclaration"
#. Something like struct S { int N::j; };
-#: cp/decl.c:12234
+#: cp/decl.c:8063
msgid "invalid use of `::'"
msgstr "utilisation invalide de « :: »"
-#: cp/decl.c:12246
+#: cp/decl.c:8075
msgid "function `%D' cannot be declared friend"
msgstr "fonction « %D » ne peut être déclarée amie"
-#: cp/decl.c:12258
+#: cp/decl.c:8087
msgid "can't make `%D' into a method -- not in a class"
msgstr "ne peut rendre « %D » dans la méthode -- n'est pas dans la classe"
-#: cp/decl.c:12267
+#: cp/decl.c:8096
msgid "function `%D' declared virtual inside a union"
msgstr "fonction « %D » déclaré comme virtuelle à l'intérieur d'un agrégat"
-#: cp/decl.c:12279
+#: cp/decl.c:8108
msgid "`%D' cannot be declared virtual, since it is always static"
msgstr "« %D » ne peut être déclaré virtuel, alors qu'il est toujours statique"
-#: cp/decl.c:12355
+#: cp/decl.c:8185
msgid "field `%D' has incomplete type"
msgstr "champ « %D » a un type incomplet"
-#: cp/decl.c:12357
+#: cp/decl.c:8187
msgid "name `%T' has incomplete type"
msgstr "nom « %T » a un type incomplet"
-#: cp/decl.c:12366
+#: cp/decl.c:8196
msgid " in instantiation of template `%T'"
-msgstr " dans l'instanciation du patron « %T »"
+msgstr " dans l'instanciation du canevas « %T »"
-#: cp/decl.c:12376
+#: cp/decl.c:8206
#, c-format
msgid "`%s' is neither function nor member function; cannot be declared friend"
msgstr "« %s » n'est ni une fonction ni une fonction membre ; ne peut être déclaré ami"
-#: cp/decl.c:12387
+#: cp/decl.c:8217
msgid "member functions are implicitly friends of their class"
msgstr "les fonctions membres sont implicitement amis de leur classe"
@@ -15672,99 +14589,95 @@ msgstr "les fonctions membres sont implicitement amis de leur classe"
#. the rest of the compiler does not correctly
#. handle the initialization unless the member is
#. static so we make it static below.
-#: cp/decl.c:12434
+#: cp/decl.c:8258
msgid "ISO C++ forbids initialization of member `%D'"
-msgstr "le C++ ISO interdit l'initialisation du membre « %D »"
+msgstr "ISO C++ interdit l'initialisation du membre « %D »"
-#: cp/decl.c:12436
+#: cp/decl.c:8260
msgid "making `%D' static"
msgstr "rendant « %D » statique"
-#: cp/decl.c:12460
+#: cp/decl.c:8283
msgid "ISO C++ forbids static data member `%D' with same name as enclosing class"
-msgstr "le C++ ISO interdit les données de membres statiques « %D » avec le même nom comme classe de fermeture"
+msgstr "ISO C++ interdit les données de membres statiques « %D » avec le même nom comme classe de fermeture"
-#: cp/decl.c:12501
+#: cp/decl.c:8323
#, c-format
msgid "storage class `auto' invalid for function `%s'"
msgstr "classe de stockage « auto» invalide pour une fonction « %s »"
-#: cp/decl.c:12503
+#: cp/decl.c:8325
#, c-format
msgid "storage class `register' invalid for function `%s'"
msgstr "classe de stockage « register» invalide pour une fonction « %s »"
-#: cp/decl.c:12505
-#, fuzzy, c-format
+#: cp/decl.c:8327
+#, c-format
msgid "storage class `__thread' invalid for function `%s'"
-msgstr "classe de stockage « auto» invalide pour une fonction « %s »"
+msgstr "classe de stockage « __thread » invalide pour la fonction « %s »"
-#: cp/decl.c:12516
+#: cp/decl.c:8338
#, c-format
msgid "storage class `static' invalid for function `%s' declared out of global scope"
msgstr "classe de stockage « static» invalide pour une fonction « %s » déclarée en dehors de la portée globale"
-#: cp/decl.c:12518
+#: cp/decl.c:8340
#, c-format
msgid "storage class `inline' invalid for function `%s' declared out of global scope"
msgstr "classe de stockage « inline» invalide pour une fonction « %s » déclarée en dehors de la portée globale"
-#: cp/decl.c:12525
+#: cp/decl.c:8347
#, c-format
msgid "virtual non-class function `%s'"
msgstr "fonction virtuelle d'une non classe « %s »"
-#: cp/decl.c:12554
+#: cp/decl.c:8377
msgid "cannot declare member function `%D' to have static linkage"
msgstr "ne peut déclarer la fonction membre « %D » comme ayant un lien statique"
#. FIXME need arm citation
-#: cp/decl.c:12560
+#: cp/decl.c:8383
msgid "cannot declare static function inside another function"
msgstr "ne peut déclarer une fonction statique à l'intérieur d'une autre fonction"
-#: cp/decl.c:12588
+#: cp/decl.c:8411
msgid "`static' may not be used when defining (as opposed to declaring) a static data member"
msgstr "« static » ne peut pas être utilisé lors de la définition (contrairement à la déclaration) de données de membres statiques"
-#: cp/decl.c:12594
+#: cp/decl.c:8417
msgid "static member `%D' declared `register'"
msgstr "mambre statique « %D» déclaré «register »"
-#: cp/decl.c:12599
+#: cp/decl.c:8422
msgid "cannot explicitly declare member `%#D' to have extern linkage"
-msgstr "ne peut explicitement déclarer le membre «%#D» comme ayant une liaison externe"
+msgstr "ne peut explicitement déclarer le membre « %#D » comme ayant une liaison externe"
-#: cp/decl.c:12774
+#: cp/decl.c:8564
msgid "default argument for `%#D' has type `%T'"
-msgstr "argument par défaut pour «%#D» à un type « %T »"
+msgstr "argument par défaut pour « %#D » à un type « %T »"
-#: cp/decl.c:12777
+#: cp/decl.c:8567
msgid "default argument for parameter of type `%T' has type `%T'"
msgstr "argument par défaut pour le paramètre de type « %T » a le type « %T »"
-#: cp/decl.c:12794
+#: cp/decl.c:8584
msgid "default argument `%E' uses local variable `%D'"
msgstr "argument par défaut « %E » utiliser une variable locale « %D »"
-#: cp/decl.c:12839
+#: cp/decl.c:8628
#, c-format
msgid "invalid string constant `%E'"
msgstr "constante chaîne invalide « %E »"
-#: cp/decl.c:12841
+#: cp/decl.c:8630
msgid "invalid integer constant in parameter list, did you forget to give parameter name?"
msgstr "constante entière invalide dans la liste de paramètre, avez-vous oublier de donner un nom de paramètre?"
-#: cp/decl.c:12879
+#: cp/decl.c:8668
msgid "parameter `%D' invalidly declared method type"
msgstr "paramètre « %D » incorrectement validé comme type de méthode"
-#: cp/decl.c:12885
-msgid "parameter `%D' invalidly declared offset type"
-msgstr "paramètre « %D » incorrectement validé comme type de décalage"
-
-#: cp/decl.c:12909
+#: cp/decl.c:8692
msgid "parameter `%D' includes %s to array of unknown bound `%T'"
msgstr "paramètre « %D » inclut %s au tableau de bornes inconnues « %T »"
@@ -15783,512 +14696,345 @@ msgstr "paramètre « %D » inclut %s au tableau de bornes inconnues « %T »"
#. or implicitly defined), there's no need to worry about their
#. existence. Theoretically, they should never even be
#. instantiated, but that's hard to forestall.
-#: cp/decl.c:13071
+#: cp/decl.c:8851
msgid "invalid constructor; you probably meant `%T (const %T&)'"
-msgstr "constructeur invalide; vous vouliez probablement dire «%T (const %T&)»"
+msgstr "constructeur invalide; vous vouliez probablement dire « %T (const %T&) »"
-#: cp/decl.c:13222
+#: cp/decl.c:8991
msgid "`%D' must be a nonstatic member function"
msgstr "« %D » doit être une fonction membre non statique"
-#: cp/decl.c:13228
+#: cp/decl.c:8997
msgid "`%D' must be either a non-static member function or a non-member function"
msgstr "« %D » doit être soit un membre non statique de fonction ou une fonction non membre"
-#: cp/decl.c:13245
+#: cp/decl.c:9014
msgid "`%D' must have an argument of class or enumerated type"
msgstr "« %D » doit avoir un argument de classe ou de type énuméré"
-#: cp/decl.c:13277
+#: cp/decl.c:9049
#, c-format
msgid "conversion to %s%s will never use a type conversion operator"
msgstr "conversion de %s%s ne sera jamais utilisé dans un type d'opérateur de conversion"
#. 13.4.0.3
-#: cp/decl.c:13284
+#: cp/decl.c:9056
msgid "ISO C++ prohibits overloading operator ?:"
-msgstr "le C++ ISO interdit la surcharge de l'opérateur ?:"
+msgstr "ISO C++ interdit la surcharge de l'opérateur ?:"
-#: cp/decl.c:13334
+#: cp/decl.c:9106
msgid "postfix `%D' must take `int' as its argument"
msgstr "postfixe « %D» doit prendre « int » comme argument"
-#: cp/decl.c:13338
+#: cp/decl.c:9110
msgid "postfix `%D' must take `int' as its second argument"
msgstr "postfixe « %D» doit prndre « int » pour son second argument"
-#: cp/decl.c:13345
+#: cp/decl.c:9117
msgid "`%D' must take either zero or one argument"
msgstr "« %D » doit prendre seulement zéro ou un autre argument"
-#: cp/decl.c:13347
+#: cp/decl.c:9119
msgid "`%D' must take either one or two arguments"
msgstr "« %D » doit prendre seulement un OU deux arguments"
-#: cp/decl.c:13368
+#: cp/decl.c:9140
msgid "prefix `%D' should return `%T'"
msgstr "préfixe « %D » devrait retourner « %T »"
-#: cp/decl.c:13374
+#: cp/decl.c:9146
msgid "postfix `%D' should return `%T'"
msgstr "postfixe « %D » devrait retourner « %T »"
-#: cp/decl.c:13383
+#: cp/decl.c:9155
msgid "`%D' must take `void'"
msgstr "« %D» doit prendre « void »"
-#: cp/decl.c:13385 cp/decl.c:13393
+#: cp/decl.c:9157 cp/decl.c:9165
msgid "`%D' must take exactly one argument"
msgstr "« %D » doit prendre exactement un argument"
-#: cp/decl.c:13395
+#: cp/decl.c:9167
msgid "`%D' must take exactly two arguments"
msgstr "« %D » doit prendre exactemenr deux arguments"
-#: cp/decl.c:13403
+#: cp/decl.c:9175
msgid "user-defined `%D' always evaluates both arguments"
msgstr "« %D » défini par l'usager évalue toujours les 2 arguments"
-#: cp/decl.c:13417
+#: cp/decl.c:9189
msgid "`%D' should return by value"
msgstr "« %D » devrait retourner par valeur"
-#: cp/decl.c:13429 cp/decl.c:13432
+#: cp/decl.c:9201 cp/decl.c:9204
msgid "`%D' cannot have default arguments"
msgstr "« %D » ne peut avoir d'arguments par défaut"
-#: cp/decl.c:13475
+#: cp/decl.c:9264
msgid "using typedef-name `%D' after `%s'"
msgstr "utilisation d'un nom de typedef « %D » après « %s »"
-#: cp/decl.c:13481
+#: cp/decl.c:9270
msgid "using template type parameter `%T' after `%s'"
-msgstr "utilisation de type de patron de paramètre « %T » après « %s »"
+msgstr "utilisation de type de canevas de paramètre « %T » après « %s »"
-#: cp/decl.c:13542
-msgid "`%s %T' declares a new type at namespace scope"
-msgstr "« %s %T » déclare un nouveau type dans l'étendue de l'espace de noms"
+#: cp/decl.c:9278
+msgid "`%T' referred to as `%s'"
+msgstr "« %TD » référé comme « %s »"
-#: cp/decl.c:13545
-msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
-msgstr " noms des classes de base dépendantes ne sont pas visibles à la recherche de nom non qualifié - pour référer à type par héritage, disons «%s %T::%T»"
+#: cp/decl.c:9284
+msgid "`%T' referred to as enum"
+msgstr "« %T » référé comme enum"
+
+#. If a class template appears as elaborated type specifier
+#. without a template header such as:
+#.
+#. template <class T> class C {};
+#. void f(class C); // No template header here
+#.
+#. then the required template argument is missing.
+#: cp/decl.c:9299
+msgid "template argument required for `%s %T'"
+msgstr "argument du canevas est requis pour « %s %T »"
-#: cp/decl.c:13663
+#: cp/decl.c:9445
msgid "use of enum `%#D' without previous declaration"
-msgstr "utilisation de enum «%#D» sans déclaration précédente"
+msgstr "utilisation de enum « %#D » sans déclaration précédente"
-#: cp/decl.c:13749
+#: cp/decl.c:9530
msgid "derived union `%T' invalid"
msgstr "union dérivée « %T » invalide"
-#: cp/decl.c:13795
+#: cp/decl.c:9583
msgid "base type `%T' fails to be a struct or class type"
msgstr "type de base « %T » a échoué pour devenir un type de classe ou un type construit"
-#: cp/decl.c:13805
-msgid "base class `%T' has incomplete type"
-msgstr "classe de base « %T » a un type incomplet"
-
-#: cp/decl.c:13813
+#: cp/decl.c:9591
msgid "recursive type `%T' undefined"
msgstr "type récursif « %T » non défini"
-#: cp/decl.c:13815
+#: cp/decl.c:9593
msgid "duplicate base type `%T' invalid"
msgstr "duplication du type de base « %T » invalide"
-#: cp/decl.c:13926
+#: cp/decl.c:9671
+msgid "Java class '%T' cannot have multiple bases"
+msgstr "classe Java « %T » ne peut avoir de bases multiples"
+
+#: cp/decl.c:9673
+msgid "Java class '%T' cannot have virtual bases"
+msgstr "classe Java « %T » ne peut avoir de bases virtuelles"
+
+#: cp/decl.c:9713
msgid "multiple definition of `%#T'"
-msgstr "définition multiple de «%#T»"
+msgstr "définition multiple de « %#T »"
-#: cp/decl.c:13927
-msgid "previous definition here"
-msgstr "définition précédente ici"
+#: cp/decl.c:9714
+msgid "%Jprevious definition here"
+msgstr "%Jdéfinition précédente ici"
-#: cp/decl.c:14030
+#. DR 377
+#.
+#. IF no integral type can represent all the enumerator values, the
+#. enumeration is ill-formed.
+#: cp/decl.c:9849
msgid "no integral type can represent all of the enumerator values for `%T'"
-msgstr ""
+msgstr "aucun type entier peut représenter toutes les valeurs de l'énumérateur pour « %T »"
-#: cp/decl.c:14106
+#: cp/decl.c:9939
msgid "enumerator value for `%D' not integer constant"
msgstr "valeur de l'énumérateur pour « %D » n'est pas une constante entière"
-#: cp/decl.c:14126
+#: cp/decl.c:9959
msgid "overflow in enumeration values at `%D'"
msgstr "débordement dans les valeurs de l'énumération à « %D »"
-#: cp/decl.c:14195
+#: cp/decl.c:10028
msgid "return type `%#T' is incomplete"
-msgstr "type retourné «%#T» est incomplet"
-
-#: cp/decl.c:14309
-msgid "semicolon missing after declaration of `%#T'"
-msgstr "point-virgule manquant après la déclaration %#T"
+msgstr "type retourné « %#T » est incomplet"
-#: cp/decl.c:14330
+#: cp/decl.c:10148
msgid "return type for `main' changed to `int'"
msgstr "type retourné pour « main » est changé pour «int »"
-#: cp/decl.c:14361
+#: cp/decl.c:10178
msgid "`%D' implicitly declared before its definition"
msgstr "« %D » implicitement déclaré avant sa définition"
-#: cp/decl.c:14383 cp/typeck.c:6314
+#: cp/decl.c:10200 cp/typeck.c:6011
msgid "`operator=' should return a reference to `*this'"
msgstr "« operator= » devrait retourner une référence à «*ceci »"
-#: cp/decl.c:14643
+#: cp/decl.c:10472
msgid "parameter `%D' declared void"
msgstr "paramètre « %D » déclaré «void »"
-#: cp/decl.c:15130
+#: cp/decl.c:10938
+msgid "invalid member function declaration"
+msgstr "déclaration de membre de fonction invalide"
+
+#: cp/decl.c:10955
msgid "`%D' is already defined in class `%T'"
msgstr "« %D » est déjà défini dans la classe « %T »"
-#: cp/decl.c:15348
+#: cp/decl.c:11168
msgid "static member function `%#D' declared with type qualifiers"
-msgstr "membre de fonction statique «%#D» déclaré avec des qualificateurs de tyep"
+msgstr "membre de fonction statique « %#D » déclaré avec des qualificateurs de tyep"
-#: cp/decl2.c:153
+#: cp/decl2.c:143
#, c-format
msgid "duplicate type qualifiers in %s declaration"
msgstr "qualificateurs de types dupliqués dans déclaration %s"
-#: cp/decl2.c:192
-msgid "template `%#D' instantiated in file without #pragma interface"
-msgstr "patron «%#D» instancié dans le fichier sans interface #pragma"
-
-#: cp/decl2.c:198
-msgid "template `%#D' defined in file without #pragma interface"
-msgstr "patron «%#D» défini dans le fichier sans interface #pragma"
-
-#: cp/decl2.c:365
+#: cp/decl2.c:316
msgid "name missing for member function"
msgstr "nom manquant pour le membre d'une fonction"
-#. Something has gone very wrong. Assume we are mistakenly reducing
-#. an expression instead of a declaration.
-#: cp/decl2.c:428
-msgid "parser may be lost: is there a '{' missing somewhere?"
-msgstr "analyseur syntaxique est perdu: y-a-t-il un «{» manquant quelque part?"
-
-#: cp/decl2.c:459 cp/decl2.c:473
+#: cp/decl2.c:408 cp/decl2.c:422
msgid "ambiguous conversion for array subscript"
msgstr "comversion ambigue pour un sous-tableau"
-#: cp/decl2.c:467
+#: cp/decl2.c:416
msgid "invalid types `%T[%T]' for array subscript"
-msgstr "types invalides «%T[%T]» pour un sous-script de tableau"
+msgstr "types invalides « %T[%T] » pour un sous-script de tableau"
-#: cp/decl2.c:515
+#: cp/decl2.c:464
msgid "type `%#T' argument given to `delete', expected pointer"
-msgstr "type « %#T» de l'argument donné pour « delete », attendait un pointeur"
+msgstr "type « %#T » de l'argument donné pour « delete », attendait un pointeur"
-#: cp/decl2.c:523
+#: cp/decl2.c:472
msgid "anachronistic use of array size in vector delete"
msgstr "utilisation anachronique de la taille d'un tableau dans un vecteur delete"
-#: cp/decl2.c:533
+#: cp/decl2.c:482
msgid "cannot delete a function. Only pointer-to-objects are valid arguments to `delete'"
msgstr "ne peut détruire une fonction. Seuls les pointeurs-d'objets sont des arguments valable pour destruction"
-#: cp/decl2.c:540
+#: cp/decl2.c:489
msgid "deleting `%T' is undefined"
msgstr "destruction de « %T » est indéfinie"
-#: cp/decl2.c:548
+#: cp/decl2.c:497
msgid "deleting array `%#D'"
-msgstr "destruction du tableau «%#D'"
+msgstr "destruction du tableau « %#D »"
#. 14.5.2.2 [temp.mem]
#.
#. A local class shall not have member templates.
-#: cp/decl2.c:582
+#: cp/decl2.c:530
msgid "invalid declaration of member template `%#D' in local class"
-msgstr "déclaration invalide du patron de membre «%#D» dans la classe locale"
+msgstr "déclaration invalide du canevas de membre « %#D » dans la classe locale"
-#: cp/decl2.c:591
+#: cp/decl2.c:539
msgid "invalid use of `virtual' in template declaration of `%#D'"
-msgstr "utilisation invalide de « virtual» dans la déclaration d'un patron de «%#D »"
+msgstr "utilisation invalide de « virtual» dans la déclaration d'un canevas de « %#D »"
-#: cp/decl2.c:601 cp/pt.c:2745
+#: cp/decl2.c:549 cp/pt.c:2830
msgid "template declaration of `%#D'"
-msgstr "déclaration du patron de «%#D»"
+msgstr "déclaration du canevas de « %#D »"
-#: cp/decl2.c:651
+#: cp/decl2.c:598
msgid "Java method '%D' has non-Java return type `%T'"
msgstr "méthode Java « %D » a un type non Java retourné « %T »"
-#: cp/decl2.c:660
+#: cp/decl2.c:614
msgid "Java method '%D' has non-Java parameter type `%T'"
msgstr "méthode Java « %D » a un paramètre non Java de type « %T »"
-#: cp/decl2.c:746
+#: cp/decl2.c:705
msgid "prototype for `%#D' does not match any in class `%T'"
-msgstr "prototype pour «%#D» ne concorde avec aucun dans la classe « %T »"
+msgstr "prototype pour « %#D » ne concorde avec aucun dans la classe « %T »"
-#: cp/decl2.c:828
+#: cp/decl2.c:784
msgid "local class `%#T' shall not have static data member `%#D'"
-msgstr "la classe locale «%#T» ne doit pas être un membre de données statiques de «%#D»"
+msgstr "la classe locale « %#T » ne doit pas être un membre de données statiques de « %#D »"
-#: cp/decl2.c:836
+#: cp/decl2.c:792
msgid "initializer invalid for static member with constructor"
msgstr "initialisation invalide pour un membre statique avec constructeur"
-#: cp/decl2.c:839
+#: cp/decl2.c:795
msgid "(an out of class initialization is required)"
msgstr "(une initialisation en dehors de la classe est requise)"
-#: cp/decl2.c:898
-msgid "invalid data member initialization"
-msgstr "initialisation de données membres invalide"
-
-#: cp/decl2.c:901
-msgid "(use `=' to initialize static data members)"
-msgstr "(utiliser «=» pour initialiser les données de membres)"
-
-#: cp/decl2.c:947
+#: cp/decl2.c:878
msgid "member `%D' conflicts with virtual function table field name"
msgstr "membre « %D » en conflit avec un nom de champ de table d'une fonction virtuelle"
-#: cp/decl2.c:967
+#: cp/decl2.c:895
msgid "`%D' is already defined in `%T'"
msgstr "« %D » est déjà défini dans « %T »"
-#: cp/decl2.c:1014
+#: cp/decl2.c:942
msgid "field initializer is not constant"
msgstr "l'initialisation du champ n'est pas une constante"
-#: cp/decl2.c:1038
+#: cp/decl2.c:970
msgid "`asm' specifiers are not permitted on non-static data members"
msgstr "spécificateurs « asm » ne sont pas permis pour des données de membres non statiques"
-#: cp/decl2.c:1090
+#: cp/decl2.c:1020
msgid "cannot declare `%D' to be a bit-field type"
msgstr "ne peut déclarer « %D » comme étant un type de champ de bits"
-#: cp/decl2.c:1100
+#: cp/decl2.c:1030
msgid "cannot declare bit-field `%D' with function type"
msgstr "ne peut déclarer un champ de bits « %D » avec un type de fonction"
-#: cp/decl2.c:1107
+#: cp/decl2.c:1037
msgid "`%D' is already defined in the class %T"
msgstr "« %D » est déjà défini dans la classe %T"
-#: cp/decl2.c:1114
+#: cp/decl2.c:1044
msgid "static member `%D' cannot be a bit-field"
msgstr "membre statique « %D » ne peut être un champ de bits"
-#: cp/decl2.c:1201
+#: cp/decl2.c:1103
msgid "initializer specified for non-member function `%D'"
msgstr "initialisation spécifiée pour une fonction « %D » n'étant pas membre"
-#: cp/decl2.c:1205
+#: cp/decl2.c:1107
msgid "invalid initializer for virtual method `%D'"
msgstr "initialisation invalide pour la méthode virtuelle « %D »"
-#: cp/decl2.c:1319
+#: cp/decl2.c:1154
msgid "anonymous struct not inside named type"
msgstr "struct anonyme n'est pas l'intérieur du type nommé"
-#: cp/decl2.c:1415
+#: cp/decl2.c:1224
msgid "namespace-scope anonymous aggregates must be static"
msgstr "aggrégats anonymes de champs d'espace nom doit être statique"
-#: cp/decl2.c:1428
-msgid "anonymous aggregate with no members"
+#: cp/decl2.c:1231
+msgid "anonymous union with no members"
msgstr "aggrégat anonyme sans aucun membre"
-#: cp/decl2.c:1497
+#: cp/decl2.c:1265
msgid "`operator new' must return type `%T'"
-msgstr "« operator new » doit retourner un type «%T »"
+msgstr "« operator new » doit retourner un type « %T »"
-#: cp/decl2.c:1505
+#: cp/decl2.c:1273
msgid "`operator new' takes type `size_t' (`%T') as first parameter"
msgstr "« operator new » prend le type « size_t » (« %T ») comme premier paramètre"
-#: cp/decl2.c:1532
+#: cp/decl2.c:1299
msgid "`operator delete' must return type `%T'"
msgstr "« operator delete » doit retourner le type « %T »"
-#: cp/decl2.c:1540
+#: cp/decl2.c:1307
msgid "`operator delete' takes type `%T' as first parameter"
-msgstr "« operator delete » prend le type «%T » comme premier paramètre"
+msgstr "« operator delete » prend le type « %T » comme premier paramètre"
-#. Overflow occurred. That means there are at least 4 billion
-#. initialization functions.
-#: cp/decl2.c:2282
-msgid "too many initialization functions required"
-msgstr "trop d'initialisations de fonctions requises"
-
-#: cp/decl2.c:3006
-#, fuzzy
+#: cp/decl2.c:2814
msgid "inline function `%D' used but never defined"
-msgstr "« %s » utilisé mais n'a jamais été défini"
-
-#: cp/decl2.c:3135
-msgid "use of old-style cast"
-msgstr "utilisation d'un vieux style de transtypage (cast)"
-
-#: cp/decl2.c:3860
-msgid "use of `%D' is ambiguous"
-msgstr "utilisation de « %D » est ambiguë"
-
-#: cp/decl2.c:3861
-msgid " first declared as `%#D' here"
-msgstr " d'abord déclaré comme «%#D» ici"
-
-#: cp/decl2.c:3864
-msgid " also declared as `%#D' here"
-msgstr " aussi déclaré comme «%#D» ici"
-
-#: cp/decl2.c:3879
-msgid "`%D' denotes an ambiguous type"
-msgstr "« %D » dénote un type ambigu"
-
-#: cp/decl2.c:3880
-msgid " first type here"
-msgstr " premier type ici"
-
-#: cp/decl2.c:3881
-msgid " other type here"
-msgstr " autre type ici"
-
-#: cp/decl2.c:3982
-msgid "declaration of `%D' not in a namespace surrounding `%D'"
-msgstr "déclaration de « %D » n'est pas dans l'espace de noms entourant « %D »"
-
-#: cp/decl2.c:4016
-msgid "`%D' should have been declared inside `%D'"
-msgstr "« %D » devrait avoir été déclaré à l'intérieur de « %D »"
-
-#: cp/decl2.c:4152
-msgid "`%D' is not a function,"
-msgstr "« %D » n'est pas une fonction"
-
-#: cp/decl2.c:4153
-msgid " conflict with `%D'"
-msgstr " en conflit avec « %D »"
-
-#. The parser did not find it, so it's not there.
-#: cp/decl2.c:4473
-msgid "unknown namespace `%D'"
-msgstr "espace de nomes inconnu « %D »"
-
-#: cp/decl2.c:4507 cp/decl2.c:4794
-msgid "`%T' is not a namespace"
-msgstr "« %T » n'est pas un espace de noms"
+msgstr "fonction enligne « %D » utilisé mais n'a jamais été défini"
-#: cp/decl2.c:4509
-msgid "`%D' is not a namespace"
-msgstr "« %D » n'est pas un espace de noms"
-
-#: cp/decl2.c:4518
-msgid "a using-declaration cannot specify a template-id. Try `using %D'"
-msgstr "l'utilisation d'une déclaration ne peut spécifier un template-id. Essayer « using %D »"
-
-#: cp/decl2.c:4532
-msgid "namespace `%D' not allowed in using-declaration"
-msgstr "espace de noms « %D » n'est pas permis dans l'utilisation d'une déclaration"
-
-#: cp/decl2.c:4561
-msgid "`%D' not declared"
-msgstr "« %D » n'est pas déclaré"
-
-#. If the OLD_FN was really declared, the
-#. declarations don't match.
-#: cp/decl2.c:4573 cp/decl2.c:4615 cp/decl2.c:4640
-msgid "`%D' is already declared in this scope"
-msgstr "« %D » est déjà déclaré dans cette portée"
-
-#: cp/decl2.c:4646
-msgid "using declaration `%D' introduced ambiguous type `%T'"
-msgstr "l'utlisation de la déclaration « %D » introduit un type ambigu « %T »"
-
-#: cp/decl2.c:4740
-msgid "using-declaration for non-member at class scope"
-msgstr "l'utilisation de déclaration pour un non membre au niveau de la portée de la classe"
-
-#: cp/decl2.c:4746
-msgid "using-declaration for destructor"
-msgstr "utilisation de déclaration pour un destructeur"
-
-#: cp/decl2.c:4752
-msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
-msgstr "l'utilisation de déclaration ne peut spécifier template-id. Essayer «using %T::%D'"
-
-#: cp/decl2.c:4788
-msgid "namespace `%T' undeclared"
-msgstr "espace de noms « %T » n'est pas déclaré"
-
-#: cp/decl2.c:4817
+#: cp/decl2.c:2960
msgid "default argument missing for parameter %P of `%+#D'"
-msgstr "argument par défaut manquant pour le paramètre %P de «%+#D»"
-
-#: cp/decl2.c:4941
-msgid "extra qualification `%T::' on member `%D' ignored"
-msgstr "qualification additionnelle «%T::» sur le membre « %D » ignoré"
-
-#: cp/decl2.c:4945
-msgid "`%T' does not have a class or union named `%D'"
-msgstr "« %T » n'a pas de classe ou d'union nommé « %D »"
-
-#: cp/decl2.c:4963
-msgid "`%T' is not a class or union type"
-msgstr "« %T » n'est pas une classe ou un type d'union"
-
-#: cp/decl2.c:4977
-#, fuzzy
-msgid "template argument is required for `%T'"
-msgstr "a obtenu %d paramètres de patron pour «%#T»"
-
-#: cp/decl2.c:4995
-#, fuzzy
-msgid "declaration of `%D' in `%D' which does not enclose `%D'"
-msgstr "déclaration de « %D » n'est pas dans l'espace de noms entourant « %D »"
-
-#: cp/error.c:35
-#, c-format
-msgid "`%s' not supported by %s"
-msgstr "« %s » n'est pas supporté par %s"
-
-#: cp/error.c:571
-#, c-format
-msgid "<anonymous %s>"
-msgstr "<anonymous %s>"
-
-#: cp/error.c:810
-#, c-format
-msgid "(static %s for %s)"
-msgstr "(static %s pour %s)"
-
-#: cp/error.c:1503
-#, c-format
-msgid "\\x%x"
-msgstr ""
-
-#: cp/error.c:2473
-#, c-format
-msgid "In %s `%s':"
-msgstr "Dans %s « %s »:"
-
-#: cp/error.c:2530
-#, c-format
-msgid "%s: In instantiation of `%s':\n"
-msgstr "%s: dans l'instanciation de « %s »:\n"
-
-#: cp/error.c:2554
-#, c-format
-msgid "%s:%d: instantiated from `%s'\n"
-msgstr "%s:%d: instancié à partir de « %s »\n"
-
-#: cp/error.c:2559
-#, c-format
-msgid "%s:%d: instantiated from here\n"
-msgstr "%s:%d: instancié à partir d'ici\n"
+msgstr "argument par défaut manquant pour le paramètre %P de « %+#D »"
#. damn ICE suppression
-#: cp/error.c:2713
+#: cp/error.c:2374
#, c-format
msgid "unexpected letter `%c' in locate_error\n"
msgstr "lettre inattendue « %c » dans locate_error\n"
@@ -16307,163 +15053,174 @@ msgstr "appel en Java de « catch» ou «throw» avec «jthrowable » undéfini"
msgid "type `%T' is not derived from `java::lang::Throwable'"
msgstr "type « %T» n'est pas dérivé de «java::lang::Throwable »"
-#: cp/except.c:322
+#: cp/except.c:321
msgid "mixing C++ and Java catches in a single translation unit"
msgstr "mélange des interceptions C++ et Java dans une unité simple de traduction "
-#: cp/except.c:639
+#: cp/except.c:630
msgid "throwing NULL, which has integral, not pointer type"
msgstr "retounrnant NULL (par throw), lequel est entier, pas de type pointeur"
-#: cp/except.c:730
+#: cp/except.c:653 cp/init.c:2029
+msgid "`%D' should never be overloaded"
+msgstr "« %D » ne devrait jamais être surchargé"
+
+#: cp/except.c:722
msgid " in thrown expression"
msgstr " dans l'expression projetée"
-#: cp/except.c:856
+#: cp/except.c:843
msgid "expression '%E' of abstract class type '%T' cannot be used in throw-expression"
msgstr "expression « %E » de la classe abstraite de type « %T » ne peut être utilisé dans une expression throw"
-#: cp/except.c:944
+#: cp/except.c:925
msgid "exception of type `%T' will be caught"
msgstr "exception du type « %T » sera interceptée"
-#: cp/except.c:947
+#: cp/except.c:928
msgid " by earlier handler for `%T'"
msgstr " par un handler antérieur pour « %T »"
-#: cp/except.c:968
+#: cp/except.c:949
msgid "`...' handler must be the last handler for its try block"
msgstr "« ... » handler doit être le dernier handler de son bloc d'essai"
-#: cp/friend.c:159
+#: cp/friend.c:151
msgid "`%D' is already a friend of class `%T'"
msgstr "« %D » est déjà un ami de la classe « %T »"
-#: cp/friend.c:161
-msgid "previous friend declaration of `%D'"
-msgstr "déclaration amie précédente de « %D »"
-
-#: cp/friend.c:206
+#: cp/friend.c:202
msgid "invalid type `%T' declared `friend'"
msgstr "type invalide « %T» déclaré «friend »"
#. [temp.friend]
#. Friend declarations shall not declare partial
#. specializations.
-#: cp/friend.c:222
+#: cp/friend.c:218
msgid "partial specialization `%T' declared `friend'"
msgstr "spécialisation partielle « %T» déclarée «friend »"
-#: cp/friend.c:231
+#: cp/friend.c:228
msgid "class `%T' is implicitly friends with itself"
msgstr "classe « %T » est implicitement ami avec elle-même"
#. template <class T> friend typename S<T>::X;
-#: cp/friend.c:249
+#: cp/friend.c:246
msgid "typename type `%#T' declared `friend'"
msgstr "type typename « %#T» déclaré «friend »"
#. template <class T> friend class T;
-#: cp/friend.c:255
+#: cp/friend.c:252
msgid "template parameter type `%T' declared `friend'"
-msgstr "type paramètre du patron « %T» déclaré «friend »"
+msgstr "type paramètre du canevas « %T» déclaré «friend »"
#. template <class T> friend class A; where A is not a template
-#: cp/friend.c:261
+#: cp/friend.c:258
msgid "`%#T' is not a template"
-msgstr "«%#T» n'est pas un patron"
+msgstr "« %#T » n'est pas un canevas"
-#: cp/friend.c:276
+#: cp/friend.c:277
+msgid "`%D' is already a friend of `%T'"
+msgstr "« %D » est déjà un ami de « %T »"
+
+#: cp/friend.c:287
msgid "`%T' is already a friend of `%T'"
msgstr "« %T » est déjà un ami de « %T »"
-#: cp/friend.c:376
+#: cp/friend.c:413
msgid "member `%D' declared as friend before type `%T' defined"
msgstr "membre « %D » déclaré comme ami avant la définition du type « %T »"
-#: cp/friend.c:431
+#: cp/friend.c:470
msgid "friend declaration `%#D' declares a non-template function"
-msgstr "déclaration amie «%#D» déclare une fonction non patron"
+msgstr "déclaration amie « %#D » déclare une fonction non canevas"
-#: cp/friend.c:434
+#: cp/friend.c:473
msgid "(if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) -Wno-non-template-friend disables this warning"
-msgstr "(si ce n'est pas ce que vous vouliez faire, soyez sûr que le patron de la fonction a déjà été déclaré et ajouter <> après le nom de la fonction ici) -Wno-non-template-friend désactive le présent avertissement"
+msgstr "(si ce n'est pas ce que vous vouliez faire, soyez sûr que le canevas de la fonction a déjà été déclaré et ajouter <> après le nom de la fonction ici) -Wno-non-template-friend désactive le présent avertissement"
-#: cp/g++spec.c:211 java/jvspec.c:423
+#: cp/g++spec.c:229 java/jvspec.c:415
#, c-format
msgid "argument to `%s' missing\n"
msgstr "argument pour « %s » est manquant\n"
-#: cp/init.c:334
+#: cp/init.c:318
msgid "`%D' should be initialized in the member initialization list"
msgstr "« %D » devrait être initialisé dans la liste d'initialisation du membre"
-#: cp/init.c:384
+#: cp/init.c:368
msgid "default-initialization of `%#D', which has reference type"
-msgstr "initialisation par défaut de «%#D», lequel a un type référencé"
+msgstr "initialisation par défaut de « %#D », lequel a un type référencé"
-#: cp/init.c:389
+#: cp/init.c:373
msgid "uninitialized reference member `%D'"
msgstr "référence de membre non initialisé « %D »"
-#: cp/init.c:397
-msgid "initializer list treated as compound expression"
-msgstr "liste d'initialiseurs traitée comme une expression composée"
-
-#: cp/init.c:538
-#, fuzzy
+#: cp/init.c:511
msgid "`%D' will be initialized after"
-msgstr "membre « %D » est une référence non initialisée"
+msgstr "« %D » sera initialisé après"
-#: cp/init.c:541
-#, fuzzy
+#: cp/init.c:514
msgid "base `%T' will be initialized after"
-msgstr "classe de base « %T » déjà initialisée"
+msgstr "base « %T » sera initialisé après"
-#: cp/init.c:544
-#, fuzzy
+#: cp/init.c:517
msgid " `%#D'"
-msgstr " et «%#D»"
+msgstr " « %D »"
-#: cp/init.c:546
-#, fuzzy
+#: cp/init.c:519
msgid " base `%T'"
-msgstr " et «%#T»"
+msgstr " base « %T »"
-#: cp/init.c:564
-#, fuzzy
-msgid "multiple initializations given for base `%T'"
+#: cp/init.c:520
+msgid " when initialized here"
+msgstr " lorsqu'initialisé ici"
+
+#: cp/init.c:536
+msgid "multiple initializations given for `%D'"
msgstr "multiples initialisations données pour « %D »"
-#: cp/init.c:631
+#: cp/init.c:538
+msgid "multiple initializations given for base `%T'"
+msgstr "multiples initialisations données pour base « %T »"
+
+#: cp/init.c:605
msgid "initializations for multiple members of `%T'"
msgstr "initialisation de multiples membres de « %T »"
-#: cp/init.c:688
+#: cp/init.c:662
msgid "base class `%#T' should be explicitly initialized in the copy constructor"
-msgstr "classe de base «%#T» devrait être explicitement initialisé dans la copie du constructeur"
+msgstr "classe de base « %#T » devrait être explicitement initialisé dans la copie du constructeur"
-#: cp/init.c:926
+#: cp/init.c:892 cp/init.c:911
msgid "class `%T' does not have any field named `%D'"
msgstr "classe « %T » n'a pas aucun champ nommé « %D »"
-#: cp/init.c:932
-msgid "field `%#D' is static; the only point of initialization is its definition"
-msgstr "champ «%#D» est statique; le seul point d'initialisation est sa définition"
+#: cp/init.c:898
+msgid "`%#D' is a static data member; it can only be initialized at its definition"
+msgstr "« %#D » est un membre statique de données; il peut seulement être initialisée lors de sa définition"
-#: cp/init.c:965
+#: cp/init.c:905
+msgid "`%#D' is not a non-static data member of `%T'"
+msgstr "« %#D » n'est pas un membre statique de données de « %T »"
+
+#: cp/init.c:944
msgid "unnamed initializer for `%T', which has no base classes"
msgstr "initialiseur sans nom pour « %T », lequel n'a pas de classe de base"
-#: cp/init.c:972
+#: cp/init.c:951
msgid "unnamed initializer for `%T', which uses multiple inheritance"
msgstr "initialiseur sans nom pour « %T », lequel utilise de multiples héritages"
-#: cp/init.c:1007
+#: cp/init.c:1006
+msgid "'%D' is both a direct base and an indirect virtual base"
+msgstr "« %D » est à la fois une base directe et indirecte virtuelle"
+
+#: cp/init.c:1014
msgid "type `%D' is not a direct or virtual base of `%T'"
msgstr "type « %D » n'est pas une base directe ou virtuelle de « %T »"
-#: cp/init.c:1010
+#: cp/init.c:1017
msgid "type `%D' is not a direct base of `%T'"
msgstr "type « %D » n'est pas une base directe de « %T »"
@@ -16479,538 +15236,813 @@ msgstr "type « %D » n'est pas une base directe de « %T »"
#. COMPLEX zees(1.0, 0.0)[10];
#. }
#.
-#: cp/init.c:1104
+#: cp/init.c:1109
msgid "bad array initializer"
msgstr "mauvaise initialisation de tableau"
-#: cp/init.c:1311
+#: cp/init.c:1303
msgid "`%T' is not an aggregate type"
msgstr "« %T » n'est pas de type aggrégat"
-#: cp/init.c:1334
+#: cp/init.c:1324
msgid "`%T' fails to be an aggregate typedef"
msgstr "« %T » a échoué à être un typedef d'aggrégat"
-#: cp/init.c:1343
+#: cp/init.c:1333
msgid "type `%T' is of non-aggregate type"
msgstr "type « %T » est un type qui n'est pas d'aggrégat"
-#: cp/init.c:1446
-msgid "cannot call destructor `%T::~%T' without object"
-msgstr "ne peut appeler le destructeur «%T::~%T» sans objet"
-
-#: cp/init.c:1490
-msgid "invalid use of non-static field `%D'"
-msgstr "utilisation invalide d'un champ non statique « %D »"
-
-#. We can get here when processing a bad default
-#. argument, like:
-#. struct S { int a; void f(int i = a); }
-#: cp/init.c:1499 cp/method.c:160
-msgid "invalid use of member `%D'"
-msgstr "utilisation invalide du membre « %D »"
-
-#: cp/init.c:1509
-msgid "no method `%T::%D'"
-msgstr "pas de méthode «%T::%D»"
+#: cp/init.c:1425 cp/typeck.c:1798
+msgid "qualified type `%T' does not match destructor name `~%T'"
+msgstr "type qualifé « %T » ne concorde pas le nom du destructeur «~%T»"
-#: cp/init.c:1602
+#: cp/init.c:1433
msgid "incomplete type `%T' does not have member `%D'"
msgstr "type incomplet « %T » n'a pas de membre « %D »"
-#: cp/init.c:1676
+#: cp/init.c:1452
msgid "`%D' is not a member of type `%T'"
msgstr "« %D » n'est pas un membre de type « %T »"
-#: cp/init.c:1695
-#, fuzzy
+#: cp/init.c:1471
msgid "invalid pointer to bit-field `%D'"
-msgstr "pointeur illégal pour un champ de bits « %D »"
+msgstr "pointeur invalide pour un champ de bits « %D »"
-#: cp/init.c:1734
-msgid "object missing in use of pointer-to-member construct"
-msgstr "objet manquant dans l'utilisation du construit pointeur-à-membre"
+#: cp/init.c:1573
+msgid "invalid use of non-static member function `%D'"
+msgstr "utilisation invalide d'un membre non statique de fonction « %D »"
-#: cp/init.c:1774
-msgid "member `%D' is non-static but referenced as a static member"
-msgstr "membre « %D » est non statique mais référencé comme membre statique"
+#: cp/init.c:1579 cp/semantics.c:1236
+msgid "invalid use of non-static data member `%D'"
+msgstr "utilisation invalide d'un membre non statique de données « %D »"
-#: cp/init.c:1776 cp/typeck.c:2826 cp/typeck.c:2930
-msgid "at this point in file"
-msgstr "à ce point dans le fichier"
-
-#: cp/init.c:1813
-#, c-format
-msgid "object missing in `%E'"
-msgstr "objet manquant dans « %E »"
-
-#: cp/init.c:1944
+#: cp/init.c:1718
msgid "new of array type fails to specify size"
msgstr "new sur un type tableau a échoué dans l'évaluation de la taille"
-#: cp/init.c:1955
+#: cp/init.c:1729
msgid "size in array new must have integral type"
msgstr "taille d'un nouveau tableau (new) doit avoir un type entier"
-#: cp/init.c:1961
+#: cp/init.c:1735
msgid "zero size array reserves no space"
msgstr "tableau de taille zéro ne réserve pas d'espace"
-#: cp/init.c:2026
+#: cp/init.c:1801
msgid "new cannot be applied to a reference type"
msgstr "new ne peut être appliqué à un type référencé"
-#: cp/init.c:2032
+#: cp/init.c:1807
msgid "new cannot be applied to a function type"
msgstr "new ne peut être appliqué à un type de fonction"
-#: cp/init.c:2079
+#: cp/init.c:1853
msgid "call to Java constructor, while `jclass' undefined"
msgstr "appel d'un constructeur Java, alors que « jclass » est indéfini"
-#: cp/init.c:2095
+#: cp/init.c:1869
msgid "can't find class$"
msgstr "ne peut repérer class$"
-#: cp/init.c:2209
+#: cp/init.c:1995
msgid "invalid type `void' for new"
msgstr "type « void » invalide pour new"
-#: cp/init.c:2261
+#: cp/init.c:2005
+msgid "uninitialized const in `new' of `%#T'"
+msgstr "constante non initialisée dans « new» pour « %#T »"
+
+#: cp/init.c:2024
#, c-format
msgid "call to Java constructor with `%s' undefined"
msgstr "appel au constructeur Java avec « %s » indéfini"
-#: cp/init.c:2369
-msgid "ISO C++ forbids initialization in array new"
-msgstr "le C++ ISO interdit l'initialisation d'un nouveau tableau"
+#: cp/init.c:2065
+msgid "request for member `%D' is ambiguous"
+msgstr "la requête pour le membre « %D » est ambiguë"
-#: cp/init.c:2391 cp/typeck2.c:367 cp/typeck2.c:1208
-msgid "initializer list being treated as compound expression"
-msgstr "liste d'initaliseurs a été traité comme une expression composée"
+#: cp/init.c:2189
+msgid "ISO C++ forbids initialization in array new"
+msgstr "ISO C++ interdit l'initialisation d'un nouveau tableau"
-#: cp/init.c:2397
+#: cp/init.c:2213
msgid "ISO C++ forbids aggregate initializer to new"
-msgstr "le C++ ISO interdit l'aggrégation d'initialiseur à new"
-
-#: cp/init.c:2485
-msgid "uninitialized const in `new' of `%#T'"
-msgstr "constante non initialisée dans « new» pour «%#T »"
+msgstr "ISO C++ interdit l'aggrégation d'initialiseur à new"
-#: cp/init.c:2864
+#: cp/init.c:2658
msgid "initializer ends prematurely"
msgstr "fin prématurée de l'initialisation"
-#: cp/init.c:2934
+#: cp/init.c:2715
msgid "cannot initialize multi-dimensional array with initializer"
msgstr "ne peut initialiser un table multi-dimensionnel avec initialiseur"
-#: cp/init.c:3124
+#: cp/init.c:2876
+msgid "possible problem detected in invocation of delete operator:"
+msgstr "problème possible détecté dans l'invocation de l'opérateur delete:"
+
+#: cp/init.c:2879
+msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined."
+msgstr "ni le destructeur ni l'opérateur « delete » spécifique à la classe ne sera appellé, même s'ils sont déclarés lorsque la classe est définie"
+
+#: cp/init.c:2900
msgid "unknown array size in delete"
msgstr "taille du tableau inconnue dans delete"
-#: cp/init.c:3389
+#: cp/init.c:3165
msgid "type to vector delete is neither pointer or array type"
msgstr "type du vesteur delete n'est ni un pointeur ou un type tableau"
-#: cp/lex.c:136
+#: cp/lex.c:99
msgid "type name expected before `*'"
msgstr "nom de type attendu avec «*»"
-#: cp/lex.c:158
-msgid "cannot declare references to references"
-msgstr "ne peut décalrer des références vers des références"
-
-#: cp/lex.c:163
-msgid "cannot declare pointers to references"
-msgstr "ne peut déclarer des pointeurs vers des références"
-
-#: cp/lex.c:167
-msgid "type name expected before `&'"
-msgstr "nom de type attendu avant «&»"
-
-#: cp/lex.c:894
-#, c-format
-msgid "semicolon missing after %s declaration"
-msgstr "«;» manquant après la déclaration de %s"
-
-#: cp/lex.c:897
-msgid "semicolon missing after declaration of `%T'"
-msgstr "«;» manquant après la déclaration « %T »"
-
-#: cp/lex.c:945
+#: cp/lex.c:501
#, c-format
msgid "junk at end of #pragma %s"
msgstr "rebut à la fin de #pragma %s"
-#: cp/lex.c:952
+#: cp/lex.c:508
#, c-format
msgid "invalid #pragma %s"
msgstr "#pragma %s invalde"
-#: cp/lex.c:961
+#: cp/lex.c:516
msgid "#pragma vtable no longer supported"
msgstr "#pragma vtable n'est plus supporté"
-#: cp/lex.c:1038
+#: cp/lex.c:590
#, c-format
msgid "#pragma implementation for %s appears after file is included"
msgstr "implantation de #pragma pour %s apparaît après l'inclusion du fichier"
-#: cp/lex.c:1063
+#: cp/lex.c:614
msgid "junk at end of #pragma GCC java_exceptions"
msgstr "rebut à la fin de #pragma GCC java_exceptions"
-#: cp/lex.c:1107
+#: cp/lex.c:628
msgid "`%D' not defined"
msgstr "« %D » n'est pas défini"
-#: cp/lex.c:1110
+#: cp/lex.c:631
msgid "`%D' was not declared in this scope"
msgstr "« %D » n'a pas été déclaré dans cet horizon"
-#: cp/lex.c:1118
+#: cp/lex.c:639
msgid "`%D' undeclared (first use this function)"
msgstr "« %D » non déclaré (première utilisation dans cette fonction)"
-#: cp/lex.c:1122
+#: cp/lex.c:643
msgid "(Each undeclared identifier is reported only once for each function it appears in.)"
msgstr "(Chaque identificateur non déclaré est rapporté seulement une seule fois pour la fonction dans laquelle il apparaît.)"
-#: cp/lex.c:1242
-msgid "`::%D' undeclared (first use here)"
-msgstr "«::%D» non déclaré (première utilisation ici)"
-
-#: cp/mangle.c:2051
-#, fuzzy
+#. In a template, it is invalid to write "f()" or "f(3)" if no
+#. declaration of "f" is available. Historically, G++ and most
+#. other compilers accepted that usage since they deferred all name
+#. lookup until instantiation time rather than doing unqualified
+#. name lookup at template definition time; explain to the user what
+#. is going wrong.
+#.
+#. Note that we have the exact wording of the following message in
+#. the manual (trouble.texi, node "Name lookup"), so they need to
+#. be kept in synch.
+#: cp/lex.c:674
+msgid "there are no arguments to `%D' that depend on a template parameter, so a declaration of `%D' must be available"
+msgstr "il n'y a pas d'argument à « %D » qui dépend d'un paramètre du canevas, aussi une déclaration de « %D » doit être disponible"
+
+#: cp/lex.c:683
+msgid "(if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)"
+msgstr "(si vous utilisez « -fpermissive », G++ acceptera votre core, mais permettre l'utilisation d'un nom non déclaré est déprécié)"
+
+#: cp/mangle.c:2036
msgid "call_expr cannot be mangled due to a defect in the C++ ABI"
-msgstr "new ne peut être appliqué à un type de fonction"
+msgstr "call_expr ne peut être mutilé en raison d'un faute dans l'ABI C++"
+
+#: cp/mangle.c:2089
+msgid "omitted middle operand to `?:' operand cannot be mangled"
+msgstr "opérande du milieu « ?: » omise, l'opérande ne peut être mutilée"
-#: cp/mangle.c:2363
+#: cp/mangle.c:2388
msgid "the mangled name of `%D' will change in a future version of GCC"
-msgstr ""
+msgstr "le nom mutilé de « %D » sera modifié dans une version future de GCC"
-#: cp/method.c:154
-msgid "invalid use of member `%D' in static member function"
-msgstr "utilisation invalide du membre « %D » dans un membre statique de fonction"
+#: cp/method.c:456
+msgid "generic thunk code fails for method `%#D' which uses `...'"
+msgstr "code « thunk» générique a échoué pour la méthode « %#D » laquelle utilise « ... »"
-#: cp/method.c:216
-msgid "use of namespace `%D' as expression"
-msgstr "utilisation d'un espace de dnomes « %D » comme expression"
+#: cp/method.c:681
+msgid "non-static const member `%#D', can't use default assignment operator"
+msgstr "constante non statique du membre « %#D », ne peut utiliser l'opérateur d'affectation par défaut"
-#: cp/method.c:221
-msgid "use of class template `%T' as expression"
-msgstr "utilisation du patron de classe « %T » comme expression"
+#: cp/method.c:686
+msgid "non-static reference member `%#D', can't use default assignment operator"
+msgstr "référence non statique du membre « %#D », ne peut utiliser l'opérateur d'affectation par défaut"
-#: cp/method.c:234
-#, c-format
-msgid "use of %s from containing function"
-msgstr "utilisation de %s d'un fonction contenante"
+#: cp/name-lookup.c:649
+msgid "`%#D' used prior to declaration"
+msgstr "« %#D » utilisé précédemment avant sa déclaration"
-#: cp/method.c:237
-msgid " `%#D' declared here"
-msgstr " «%#D» déclaré ici"
+#: cp/name-lookup.c:680
+msgid "redeclaration of `wchar_t' as `%T'"
+msgstr "redéclaration de « wchar_t» comme « %T »"
-#: cp/method.c:255
-msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
-msgstr "requête du membre « %D » est ambiquë dans de mutliples héritage de treillis"
+#. A redeclaration of main, but not a duplicate of the
+#. previous one.
+#.
+#. [basic.start.main]
+#.
+#. This function shall not be overloaded.
+#: cp/name-lookup.c:712
+msgid "invalid redeclaration of `%D'"
+msgstr "redéclaration invalide de « %D »"
-#: cp/method.c:458
-msgid "generic thunk code fails for method `%#D' which uses `...'"
-msgstr "code « thunk» générique a échoué pour la méthode «%#D» laquelle utilise « ... »"
+#: cp/name-lookup.c:713
+msgid "as `%D'"
+msgstr "comme « %D »"
-#: cp/method.c:697
-msgid "non-static const member `%#D', can't use default assignment operator"
-msgstr "constante non statique du membre «%#D», ne peut utiliser l'opérateur d'affectation par défaut"
+#: cp/name-lookup.c:801
+msgid "type mismatch with previous external decl of `%#D'"
+msgstr "non concordance de type avec la déclaration externe précédente de « %D »"
-#: cp/method.c:702
-msgid "non-static reference member `%#D', can't use default assignment operator"
-msgstr "référence non statique du membre «%#D», ne peut utiliser l'opérateur d'affectation par défaut"
+#: cp/name-lookup.c:802
+msgid "previous external decl of `%#D'"
+msgstr "déclaration externe précédente de « %#D »"
-#: parse.y:262
-msgid "`%s' tag used in naming `%#T'"
-msgstr "étiquette « %s » utilisée dans la dénomination de « %#T »"
+#: cp/name-lookup.c:844
+msgid "`%D' was previously implicitly declared to return `int'"
+msgstr "« %D » a été précédemment implicitement déclaré comme retournant un entier"
-#: parse.y:542
-msgid "keyword `export' not implemented, and will be ignored"
-msgstr "mot clé « export » n'est pas implanté et sera ignoré"
+#: cp/name-lookup.c:902
+msgid "extern declaration of `%#D' doesn't match"
+msgstr "déclaration externe de « %#D » ne concorde pas"
-#: parse.y:646
-msgid "use of linkage spec `%D' is different from previous spec `%D'"
-msgstr "utilisation de spéc de liaisons « %D » est différente de la spec précédente « %D »"
+#: cp/name-lookup.c:903
+msgid "global declaration `%#D'"
+msgstr "déclaration globale « %#D »"
-#: parse.y:943
-msgid "no base or member initializers given following ':'"
-msgstr "pas d'initialiseur de base ou membre donné après «:»"
+#: cp/name-lookup.c:939
+msgid "declaration of `%#D' shadows a parameter"
+msgstr "déclaration de « %#D » masque un paramètre"
-#: parse.y:984
-msgid "anachronistic old style base class initializer"
-msgstr "ancien style anachronique d'initialiseur de classe de base"
+#: cp/name-lookup.c:960
+#, c-format
+msgid "declaration of `%s' shadows a member of `this'"
+msgstr "déclaration de « %s » masque un membre de « this »"
+
+#: cp/name-lookup.c:1136
+msgid "name lookup of `%D' changed"
+msgstr "recherche du nom « %D » a changé"
+
+#: cp/name-lookup.c:1138
+msgid " matches this `%D' under ISO standard rules"
+msgstr " concorde avec « %D » selon les règles standards ISO"
-#. Handle `Class<Class<Type>>' without space in the `>>'
-#: parse.y:1117
-msgid "`>>' should be `> >' in template class name"
-msgstr "«>>» devrait être «> >» dans le nom du patron de la classe"
+#: cp/name-lookup.c:1140
+msgid " matches this `%D' under old rules"
+msgstr " concorde avec « %D » selon les vieilles règles"
-#: parse.y:1164
-msgid "use of template qualifier outside template"
-msgstr "utilisation d'un qualificateur de patron en dehors d'un patron"
+#: cp/name-lookup.c:1154 cp/name-lookup.c:1161
+msgid "name lookup of `%D' changed for new ISO `for' scoping"
+msgstr "recherche du nom de « %D » changé pour la nouvelle étendue ISO pour le « for »"
-#: parse.y:1193 parse.y:1202
+#: cp/name-lookup.c:1156
+msgid " cannot use obsolete binding at `%D' because it has a destructor"
+msgstr " ne peut utiliser une liaison obsolète à « %D » parce qu'il a un destructeur"
+
+#: cp/name-lookup.c:1163
+msgid " using obsolete binding at `%D'"
+msgstr " utilisation de liaison obsolète à « %D »"
+
+#: cp/name-lookup.c:1216
+#, c-format
+msgid "%s %s(%E) %p %d\n"
+msgstr "%s %s(%E) %p %d\n"
+
+#: cp/name-lookup.c:1219
#, c-format
-msgid "ISO C++ forbids an empty condition for `%s'"
-msgstr "le C++ ISO interdit une condition vide pour « %s »"
+msgid "%s %s %p %d\n"
+msgstr "%s %s %p %d\n"
+
+#: cp/name-lookup.c:1338
+msgid "XXX is_class_level != (current_scope == class_scope)\n"
+msgstr "XXX is_class_level != (current_scope == class_scope)\n"
-#: parse.y:1225
-msgid "definition of class `%T' in condition"
-msgstr "définition de la classe « %T » dans la condition"
+#: cp/name-lookup.c:1975
+msgid "`%#D' hides constructor for `%#T'"
+msgstr "« %#D » cache un constructeur pour « %#T »"
-#: parse.y:1227
-msgid "definition of enum `%T' in condition"
-msgstr "définition de l'aggrégat « %T » dans la condition"
+#: cp/name-lookup.c:1990
+msgid "`%#D' conflicts with previous using declaration `%#D'"
+msgstr "« %#D » en conflit avec une déclaration précédente « %#D »"
-#: parse.y:1238
-msgid "definition of array `%#D' in condition"
-msgstr "définition du tableau «%#D» dans la condition"
+#: cp/name-lookup.c:2002
+msgid "previous non-function declaration `%#D'"
+msgstr "déclaration précédente d'un non fonction « %#D »"
-#: parse.y:1351
-msgid "old style placement syntax, use () instead"
-msgstr "ancien style de syntaxe de positionnement, utiliser () à la place"
+#: cp/name-lookup.c:2003
+msgid "conflicts with function declaration `%#D'"
+msgstr "conflits avec la déclaration de fonction de « %#D »"
-#: parse.y:1362
-msgid "`%T' is not a valid expression"
-msgstr "« %T » n'est pas une expression valide"
+#. 7.3.3/5
+#. A using-declaration shall not name a template-id.
+#: cp/name-lookup.c:2080
+msgid "a using-declaration cannot specify a template-id. Try `using %D'"
+msgstr "l'utilisation d'une déclaration ne peut spécifier un template-id. Essayer « using %D »"
-#. This was previously allowed as an extension, but
-#. was removed in G++ 3.3.
-#: parse.y:1369
-#, fuzzy
-msgid "initialization of new expression with `='"
-msgstr "le C++ ISO interdit l'initialisation d'une nouvelle expression avec «=»"
+#: cp/name-lookup.c:2086
+msgid "namespace `%D' not allowed in using-declaration"
+msgstr "espace de noms « %D » n'est pas permis dans l'utilisation d'une déclaration"
-#: parse.y:1395
-msgid "ISO C++ forbids compound literals"
-msgstr "le C++ ISO interdit les chaînes composées"
+#. It's a nested name with template parameter dependent scope.
+#. This can only be using-declaration for class member.
+#: cp/name-lookup.c:2094 cp/name-lookup.c:2108 cp/name-lookup.c:3283
+msgid "`%T' is not a namespace"
+msgstr "« %T » n'est pas un espace de noms"
-#: parse.y:1642
-msgid "ISO C++ forbids braced-groups within expressions"
-msgstr "le C++ ISO interdit les groupes d'accolades à l'intérieur des expressions"
+#: cp/name-lookup.c:2132
+msgid "`%D' not declared"
+msgstr "« %D » n'est pas déclaré"
-#: parse.y:1721
-#, fuzzy
-msgid "invalid use of template `%D'"
-msgstr "utilisation invalide du membre « %D »"
+#. If the OLD_FN was really declared, the
+#. declarations don't match.
+#: cp/name-lookup.c:2144 cp/name-lookup.c:2186 cp/name-lookup.c:2211
+msgid "`%D' is already declared in this scope"
+msgstr "« %D » est déjà déclaré dans cette portée"
-#: parse.y:2053 parse.y:2068
-msgid "sigof type specifier"
-msgstr "spécificateur du type sigof"
+#: cp/name-lookup.c:2217
+msgid "using declaration `%D' introduced ambiguous type `%T'"
+msgstr "l'utlisation de la déclaration « %D » introduit un type ambigu « %T »"
-#: parse.y:2058
-msgid "`sigof' applied to non-aggregate expression"
-msgstr "« sigof » appliqué à une expression de non aggrégats"
+#. Definition isn't the kind we were looking for.
+#: cp/name-lookup.c:2376 cp/name-lookup.c:2395
+msgid "`%#D' redeclared as %C"
+msgstr "« %#D » rédéclaré comme %C"
-#: parse.y:2073
-msgid "`sigof' applied to non-aggregate type"
-msgstr "« sigof » appliqué à un type non aggrégat"
+#: cp/name-lookup.c:2805
+msgid "using-declaration for non-member at class scope"
+msgstr "l'utilisation de déclaration pour un non membre au niveau de la portée de la classe"
-#: parse.y:2339
-msgid "using `typename' outside of template"
-msgstr "utilisation de « typename » en dehors du patron"
+#: cp/name-lookup.c:2812
+msgid "using-declaration cannot name destructor"
+msgstr "utilisation de déclaration ne peut nommer le destructeur"
-#: parse.y:2356
-msgid "qualified name does not name a class"
-msgstr ""
+#: cp/name-lookup.c:2908
+msgid "declaration of `%D' not in a namespace surrounding `%D'"
+msgstr "déclaration de « %D » n'est pas dans l'espace de noms entourant « %D »"
+
+#: cp/name-lookup.c:2948
+msgid "`%D' should have been declared inside `%D'"
+msgstr "« %D » devrait avoir été déclaré à l'intérieur de « %D »"
+
+#: cp/name-lookup.c:3012
+msgid "namespace alias `%D' not allowed here, assuming `%D'"
+msgstr "alias d'espace de noms « %D » n'est pas permis ici, on assume « %D »"
+
+#. The parser did not find it, so it's not there.
+#: cp/name-lookup.c:3127
+msgid "unknown namespace `%D'"
+msgstr "espace de nomes inconnu « %D »"
+
+#: cp/name-lookup.c:3277
+msgid "namespace `%T' undeclared"
+msgstr "espace de noms « %T » n'est pas déclaré"
+
+#: cp/name-lookup.c:3310
+msgid "strong using only meaningful at namespace scope"
+msgstr "forte n'ayant un sens seulement sur l'étendue de l'espace nom"
+
+#: cp/name-lookup.c:3317
+msgid "`%D' attribute directive ignored"
+msgstr "« %D » attribut de directive ignoré"
+
+#: cp/name-lookup.c:3450
+msgid "use of `%D' is ambiguous"
+msgstr "utilisation de « %D » est ambiguë"
+
+#: cp/name-lookup.c:3451
+msgid " first declared as `%#D' here"
+msgstr " d'abord déclaré comme « %#D » ici"
+
+#: cp/name-lookup.c:3454
+msgid " also declared as `%#D' here"
+msgstr " aussi déclaré comme « %#D » ici"
+
+#: cp/name-lookup.c:3469
+msgid "`%D' denotes an ambiguous type"
+msgstr "« %D » dénote un type ambigu"
+
+#: cp/name-lookup.c:3470
+msgid "%J first type here"
+msgstr "%J premier type ici"
+
+#: cp/name-lookup.c:3471
+msgid "%J other type here"
+msgstr "%J autre type ici"
+
+#. This happens for A::B where B is a template, and there are no
+#. template arguments.
+#: cp/name-lookup.c:3536 cp/typeck.c:1773
+msgid "invalid use of `%D'"
+msgstr "utilisation invalide de « %D »"
+
+#: cp/name-lookup.c:3577
+msgid "`%D::%D' is not a template"
+msgstr "« %D::%D » n'est pas un canevas"
+
+#: cp/name-lookup.c:3594
+msgid "`%D' undeclared in namespace `%D'"
+msgstr "« %D » non déclaré dans l'espace de noms « %D »"
+
+#: cp/name-lookup.c:4055
+msgid "`%D' is not a function,"
+msgstr "« %D » n'est pas une fonction"
+
+#: cp/name-lookup.c:4056
+msgid " conflict with `%D'"
+msgstr " en conflit avec « %D »"
+
+#: cp/name-lookup.c:4794
+msgid "XXX entering pop_everything ()\n"
+msgstr "XXX on entre dans pop_everything ()\n"
+
+#: cp/name-lookup.c:4803
+msgid "XXX leaving pop_everything ()\n"
+msgstr "XXX on quitte pop_everything ()\n"
+
+#: cp/parser.c:609
+msgid "invalid token"
+msgstr "jeton invalide"
+
+#: cp/parser.c:1806
+msgid "`%D::%D' has not been declared"
+msgstr "« %D::%D » n'a pas été déclaré"
+
+#: cp/parser.c:1809 cp/semantics.c:2284
+msgid "`::%D' has not been declared"
+msgstr "« ::%D » n'a pas été déclaré"
+
+#: cp/parser.c:1811
+msgid "`%D' has not been declared"
+msgstr "« %D » n'a pas été déclaré"
-#: parse.y:2417
+#: cp/parser.c:1814
+msgid "`%D::%D' %s"
+msgstr "« %D::%D » %s"
+
+#: cp/parser.c:1816
+msgid "`::%D' %s"
+msgstr "« ::%D » %s"
+
+#: cp/parser.c:1818
+msgid "`%D' %s"
+msgstr "« %D » %s"
+
+#: cp/parser.c:1870
+msgid "new types may not be defined in a return type"
+msgstr "nouveaux types ne peuvent être définis dans un type à retourner"
+
+#: cp/parser.c:1888 cp/pt.c:4185
+msgid "`%T' is not a template"
+msgstr "« %T » n'est pas un canevas"
+
+#: cp/parser.c:1890
#, c-format
-msgid "storage class specifier `%s' not allowed after struct or class"
-msgstr "spécificateur de classe de stockages « %s » n'est pas permis après struct ou class"
+msgid "`%s' is not a template"
+msgstr "« %s » n'est pas un canevas"
+
+#: cp/parser.c:1892
+msgid "invalid template-id"
+msgstr "id de canevas invalide"
-#: parse.y:2419
+#: cp/parser.c:1927
#, c-format
-msgid "type specifier `%s' not allowed after struct or class"
-msgstr "spécificateur de type « %s » n'est pas permis après struct ou class"
+msgid "%s cannot appear in a constant-expression"
+msgstr "%s ne peut apparaître dans une expression de constante"
-#: parse.y:2421
+#. Issue an error message.
+#: cp/parser.c:1954
#, c-format
-msgid "type qualifier `%s' not allowed after struct or class"
-msgstr "qualificateur de type « %s » n'est pas permis après struct ou class"
+msgid "`%s' does not name a type"
+msgstr "« %s » ne nomme pas un type"
-#: parse.y:2423
-msgid "no body nor ';' separates two class, struct or union declarations"
-msgstr "pas de corps ni de «;» séparant les deux déclarations de classes, struct ou union"
+#: cp/parser.c:1985
+msgid "(perhaps `typename %T::%s' was intended)"
+msgstr "(peut-être « typename %T::%s » était votre intention"
-#: parse.y:2553
-msgid "no bases given following `:'"
-msgstr "pas de base donnée après «:»"
+#: cp/parser.c:2407
+msgid "ISO C++ forbids braced-groups within expressions"
+msgstr "ISO C++ interdit les groupes d'accolades à l'intérieur des expressions"
-#: parse.y:2584 parse.y:2599
-msgid "`%D' access"
-msgstr "« %D » accès"
+#: cp/parser.c:2416
+msgid "statement-expressions are allowed only inside functions"
+msgstr "expression de déclaration sont permises seulement à l'intérieur de fonctions"
-#: parse.y:2589
-msgid "multiple access specifiers"
-msgstr "spécificateurs d'accès multiples"
+#: cp/parser.c:2467
+msgid "`this' may not be used in this context"
+msgstr "« cela » ne peut être utilisé dans ce contexte"
-#: parse.y:2607
-msgid "multiple `virtual' specifiers"
-msgstr "spécificateurs « virtual » multiples"
+#: cp/parser.c:2617
+msgid "local variable `%D' may not appear in this context"
+msgstr "variable locale « %D » ne peut apparaître dans ce contexte"
-#: parse.y:2644
-msgid "missing ';' before right brace"
-msgstr "«;» manquant avant l'accolade de droite"
+#: cp/parser.c:2982
+msgid "typedef-name `%D' used as destructor declarator"
+msgstr "nom du typdef « %D » utilisé comme déclarateur de destructeur"
-#: parse.y:2865
-msgid "ISO C++ forbids array dimensions with parenthesized type in new"
-msgstr "le C++ ISO interdit l'utilisation de parenthèses autour du type pour les dimensions de tableaux avec new"
+#: cp/parser.c:3627
+msgid "ISO C++ forbids compound-literals"
+msgstr "ISO C++ interdit les chaînes composées"
-#: parse.y:3152 parse.y:3172 parse.y:3181 parse.y:3210
-msgid "`%T' is not a class or namespace"
-msgstr "« %T » n'est pas une classe ou un espace de noms"
+#: cp/parser.c:4599
+msgid "expression in new-declarator must have integral or enumeration type"
+msgstr "expression dans le nouveau déclarateur doit être un type entier ou d'énumération"
+
+#: cp/parser.c:4775
+msgid "use of old-style cast"
+msgstr "utilisation d'un vieux style de transtypage (cast)"
-#: parse.y:3377
-msgid "ISO C++ forbids label declarations"
-msgstr "le C++ ISO interdit la déclaration d'étiquette"
+#: cp/parser.c:5528
+#, c-format
+msgid "case label `%E' not within a switch statement"
+msgstr "étiquette du CASE « %E » n'est pas à l'intérieur de la déclaration du SWITCH"
-#: parse.y:3537
+#: cp/parser.c:6070
msgid "ISO C++ forbids computed gotos"
-msgstr "le C++ ISO interdit les gotos calculés"
+msgstr "ISO C++ interdit les gotos calculés"
-#: parse.y:3545
-msgid "label must be followed by statement"
-msgstr "l'étiquette doit être suivie d'une déclaration"
+#: cp/parser.c:6190
+msgid "extra `;'"
+msgstr "« ; » superflu"
-#: parse.y:3590
-msgid "must have at least one catch per try block"
-msgstr "doit avoir au moins un intercepteur par bloc d'essais"
+#: cp/parser.c:6485
+msgid "mixing declarations and function-definitions is forbidden"
+msgstr "mélange de déclarations et de définitions de fonction est interdit"
-#: parse.y:3650
-msgid "ISO C++ forbids compound statements inside for initializations"
-msgstr "le C++ ISO interdit les déclarations composées à l'intérieur des initialisations"
+#: cp/parser.c:6623
+msgid "duplicate `friend'"
+msgstr "« friend » apparaît en double"
-#. This helps us recover from really nasty
-#. parse errors, for example, a missing right
-#. parenthesis.
-#: parse.y:3737 parse.y:3747
-msgid "possibly missing ')'"
-msgstr "«)» possiblement manquante"
+#: cp/parser.c:6772
+msgid "class definition may not be declared a friend"
+msgstr "définition de classe ne peut pas être déclaré comme ami"
-#: parse.y:3840
-msgid "type specifier omitted for parameter"
-msgstr "spécificateur de type omis pour le paramètre"
+#: cp/parser.c:7086
+msgid "only constructors take base initializers"
+msgstr "seuls les constructeurs prennent des initialiseurs de base"
-#: parse.y:3849
-#, c-format
-msgid "`%E' is not a type, use `typename %E' to make it one"
-msgstr "« %E» n'est pas un type, utiliser «typename %E » pour en faire un"
+#: cp/parser.c:7137
+msgid "anachronistic old-style base class initializer"
+msgstr "ancien style anachronique d'initialiseur de classe de base"
-#: parse.y:3851
-msgid "no type `%D' in `%T'"
-msgstr "pas de type « %D » dans « %T »"
+#. Warn that we do not support `export'.
+#: cp/parser.c:7530
+msgid "keyword `export' not implemented, and will be ignored"
+msgstr "mot clé « export » n'est pas implanté et sera ignoré"
-#: parse.y:3854
-#, c-format
-msgid "type specifier omitted for parameter `%E'"
-msgstr "spécificateur de type omis pour le paramètre « %E »"
+#. Otherwise, emit an error about the invalid digraph, but continue
+#. parsing because we got our argument list.
+#: cp/parser.c:7890
+msgid "`<::' cannot begin a template-argument list"
+msgstr "« <:: » ne peut pas être au début d'une liste d'un canevas d'arguments"
+
+#: cp/parser.c:7891
+msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'"
+msgstr "« <: » est une épellation alternative pour « [ ». Insérer des blancs d,espacement entre « < » et « :: »"
+
+#: cp/parser.c:7898
+msgid "(if you use `-fpermissive' G++ will accept your code)"
+msgstr "(si vous utiliser « -fpermissive » G++ acceptera votre code)"
+
+#. Explain what went wrong.
+#: cp/parser.c:8070
+msgid "non-template `%D' used as template"
+msgstr "« %D » qui n'est pas un canevas est utilisé comme canevas"
+
+#: cp/parser.c:8071
+msgid "(use `%T::template %D' to indicate that it is a template)"
+msgstr "(utiliser « %T::template %D » pour indiquer que c'est un canevas)"
+
+#: cp/parser.c:9000
+msgid "using `typename' outside of template"
+msgstr "utilisation de « typename » en dehors du canevas"
+
+#: cp/parser.c:9122
+msgid "expected type-name"
+msgstr "un nom de type attendu"
+
+#: cp/parser.c:9181
+msgid "type attributes are honored only at type definition"
+msgstr "type d'attributs sont honorés seulement lors de la définitions de type"
+
+#. [namespace.udecl]
+#.
+#. A using declaration shall not name a template-id.
+#: cp/parser.c:9565
+msgid "a template-id may not appear in a using-declaration"
+msgstr "un id de canevas ne peut pas apparaître dans l'utilisation de la déclaration"
+
+#: cp/parser.c:9891
+msgid "an asm-specification is not allowed on a function-definition"
+msgstr "une spécification asm n'est pas permise dans la définition de fonction"
+
+#: cp/parser.c:9893
+msgid "attributes are not allowed on a function-definition"
+msgstr "attributs ne sont pas permis dans la définition de fonction"
+
+#: cp/parser.c:10026
+msgid "attributes after parenthesized initializer ignored"
+msgstr "attributs après l'initialisateur mis entre paranthèses sont ignorés"
+
+#: cp/parser.c:11223
+msgid "file ends in default argument"
+msgstr "fin de fichier dans l'argument par défaut"
+
+#: cp/parser.c:11279
+msgid "deprecated use of default argument for parameter of non-function"
+msgstr "utilisation de l'argument par défaut pour un paramètre d'une non fonction"
+
+#: cp/parser.c:11282
+msgid "default arguments are only permitted for function parameters"
+msgstr "arguments par défaut sont permis seulement pour les paramètres de fonction"
+
+#: cp/parser.c:12007
+msgid "declaration of `%D' in `%D' which does not enclose `%D'"
+msgstr "déclaration de « %D » dans « %D » lequel n'entoure pas « %D »"
-#: parse.y:3862
-msgid "'%D' is used as a type, but is not defined as a type."
-msgstr "« %D » est utilisé comme type, mais n'est pas défini comme type."
+#: cp/parser.c:12020
+msgid "extra qualification ignored"
+msgstr "qualification superflue ignorée"
-#: cp/pt.c:284
+#: cp/parser.c:12031
+msgid "an explicit specialization must be preceded by 'template <>'"
+msgstr "spécialisation explicite doit être précédé par « template <> »"
+
+#: cp/parser.c:12311
+msgid "extra semicolon"
+msgstr "« ; » superflu"
+
+#: cp/parser.c:12329
+msgid "a class-key must be used when declaring a friend"
+msgstr "une clé de classe doit être utilise lors de la déclaration d'un ami"
+
+#: cp/parser.c:12360
+msgid "friend declaration does not name a class or function"
+msgstr "déclaration amie ne nomme pas une classe ou une fonction"
+
+#: cp/parser.c:12531
+msgid "pure-specifier on function-definition"
+msgstr "spécificateur pur lors de la définition d'une fonction"
+
+#: cp/parser.c:12804
+msgid "keyword `typename' not allowed outside of templates"
+msgstr "mot clé « typename » n'est pas permis en dehors du canevas"
+
+#: cp/parser.c:12806
+msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)"
+msgstr "mot clé « typename » n'est pas permis dans ce contexte (la classe de base est implicitement un type)"
+
+#: cp/parser.c:13624
+msgid "reference to `%D' is ambiguous"
+msgstr "référence à « %D » est ambiguë"
+
+#: cp/parser.c:13798
+msgid "too few template-parameter-lists"
+msgstr "trop peu de canevas de listes de paramètres"
+
+#. Otherwise, there are too many template parameter lists. We have
+#. something like:
+#.
+#. template <class T> template <class U> void S::f();
+#: cp/parser.c:13813
+msgid "too many template-parameter-lists"
+msgstr "trop de canevas de listes de paramètres"
+
+#. If begin_function_definition didn't like the definition, skip
+#. the entire function.
+#: cp/parser.c:14090
+msgid "invalid function declaration"
+msgstr "déclaration de fonction invalide"
+
+#. Issue an error message.
+#: cp/parser.c:14127
+msgid "named return values are no longer supported"
+msgstr "valeurs nommées à retourner ne sont plus supportées"
+
+#: cp/parser.c:14455
+msgid "`>>' should be `> >' within a nested template argument list"
+msgstr "« >> » devrait être « > > » à l'intérieur du canevas de la liste d'arguments"
+
+#. If this is not a nested template argument list, the '>>' is
+#. a typo for '>'. Emit an error message and continue.
+#: cp/parser.c:14463
+msgid "spurious `>>', use `>' to terminate a template argument list"
+msgstr "faux « >> », utiliser « > » pour terminer la liste d'argument du canevas"
+
+#: cp/parser.c:14950
+msgid "`%s' tag used in naming `%#T'"
+msgstr "étiquette « %s » utilisée dans la dénomination de « %#T »"
+
+#: cp/parser.c:14970
+msgid "%D redeclared with different access"
+msgstr "« %#D » redéclaré avec un accès différent"
+
+#: cp/parser.c:14987
+msgid "`template' (as a disambiguator) is only allowed within templates"
+msgstr "« template » (afin de rendre moins ambiguë) est seulement permis à l'intérieur des canevas"
+
+#: cp/pt.c:243
msgid "data member `%D' cannot be a member template"
-msgstr "membre de données « %D » ne peut être membre du patron"
+msgstr "membre de données « %D » ne peut être membre du canevas"
-#: cp/pt.c:296
+#: cp/pt.c:255
msgid "invalid member template declaration `%D'"
-msgstr "déclaration de membre de patron invalide « %D »"
+msgstr "déclaration de membre de canevas invalide « %D »"
-#: cp/pt.c:691
+#: cp/pt.c:637
msgid "explicit specialization in non-namespace scope `%D'"
msgstr "spécialisation explicite dans la portée d'un non espace de noms « %D »"
-#: cp/pt.c:703
+#: cp/pt.c:649
msgid "enclosing class templates are not explicitly specialized"
-msgstr "fermetures de patrons de classe ne sont pas explicitement spécialisées"
+msgstr "fermetures de canevass de classe ne sont pas explicitement spécialisées"
-#: cp/pt.c:792 cp/pt.c:833
+#: cp/pt.c:739 cp/pt.c:780
msgid "specializing `%#T' in different namespace"
-msgstr "spécialisation de «%#T» dans différents espaces de noms"
+msgstr "spécialisation de « %#T » dans différents espaces de noms"
-#: cp/pt.c:793 cp/pt.c:834
+#: cp/pt.c:740 cp/pt.c:781
msgid " from definition of `%#D'"
-msgstr " à partir de la définition de «%#D»"
+msgstr " à partir de la définition de « %#D »"
-#: cp/pt.c:801
+#: cp/pt.c:748
msgid "specialization of `%T' after instantiation"
msgstr "spécialisation de « %T » après instanciation"
-#: cp/pt.c:848
-#, fuzzy
+#: cp/pt.c:795
msgid "specialization `%T' after instantiation `%T'"
-msgstr "spécialisation de « %T » après instanciation"
+msgstr "spécialisation de « %T » après instanciation « %T »"
-#: cp/pt.c:860
+#: cp/pt.c:807
msgid "explicit specialization of non-template `%T'"
-msgstr "spécialisation explicite du non patron « %T »"
+msgstr "spécialisation explicite du non canevas « %T »"
-#: cp/pt.c:992
+#: cp/pt.c:1067
msgid "specialization of %D after instantiation"
msgstr "spécialisation de %D après instanciation"
-#: cp/pt.c:1096
+#: cp/pt.c:1192
msgid "%s %+#D"
msgstr "%s %+#D"
-#: cp/pt.c:1147
+#: cp/pt.c:1241
msgid "`%D' is not a function template"
-msgstr "« %D » n'est pas un patron de fonction"
+msgstr "« %D » n'est pas un canevas de fonction"
-#: cp/pt.c:1286
+#: cp/pt.c:1380
msgid "template-id `%D' for `%+D' does not match any template declaration"
-msgstr "template-id « %D » pour «%+D» ne concorde pas avec aucune déclaration de patron"
+msgstr "template-id « %D » pour « %+D » ne concorde pas avec aucune déclaration de canevas"
-#: cp/pt.c:1294
+#: cp/pt.c:1388
msgid "ambiguous template specialization `%D' for `%+D'"
-msgstr "spécialisation de patron amibiguë « %D » pour «%+D»"
+msgstr "spécialisation de canevas amibiguë « %D » pour « %+D »"
#. This case handles bogus declarations like template <>
#. template <class T> void f<int>();
-#: cp/pt.c:1521 cp/pt.c:1595
+#: cp/pt.c:1611 cp/pt.c:1685
msgid "template-id `%D' in declaration of primary template"
-msgstr "template-id « %D » dans la déclaration de patron primaire"
+msgstr "template-id « %D » dans la déclaration de canevas primaire"
-#: cp/pt.c:1534
+#: cp/pt.c:1624
msgid "template parameter list used in explicit instantiation"
-msgstr "patron de liste de paramètres utilisé dans une instanciation explicite"
+msgstr "canevas de liste de paramètres utilisé dans une instanciation explicite"
-#: cp/pt.c:1540
+#: cp/pt.c:1630
msgid "definition provided for explicit instantiation"
msgstr "définition fournie pour une instanciation explicite"
-#: cp/pt.c:1546
+#: cp/pt.c:1636
msgid "too many template parameter lists in declaration of `%D'"
-msgstr "trop de patrons de listes de paramètres dans la déclaration de « %D »"
+msgstr "trop de canevass de listes de paramètres dans la déclaration de « %D »"
-#: cp/pt.c:1562
+#: cp/pt.c:1652
msgid "too few template parameter lists in declaration of `%D'"
-msgstr "trop peu de patrons de listes de paramètres dans la déclaration de « %D »"
+msgstr "trop peu de canevass de listes de paramètres dans la déclaration de « %D »"
-#: cp/pt.c:1579
+#: cp/pt.c:1669
msgid "explicit specialization not preceded by `template <>'"
msgstr "spécialisation explicite n'est pas précédée de « template <> »"
-#: cp/pt.c:1592
+#: cp/pt.c:1682
msgid "partial specialization `%D' of function template"
-msgstr "spécialisation partielle « %D » du patron de fonction"
+msgstr "spécialisation partielle « %D » du canevas de fonction"
-#: cp/pt.c:1624
+#: cp/pt.c:1714
msgid "default argument specified in explicit specialization"
msgstr "argument par défaut spécifié dans la spécialisation explicite"
-#: cp/pt.c:1628
+#: cp/pt.c:1718
msgid "template specialization with C linkage"
-msgstr "spécialisation de patron avec édition de liens C"
+msgstr "spécialisation de canevas avec édition de liens C"
#. From [temp.expl.spec]:
#.
@@ -17020,824 +16052,829 @@ msgstr "spécialisation de patron avec édition de liens C"
#. program is ill-formed.
#.
#. Similar language is found in [temp.explicit].
-#: cp/pt.c:1715
+#: cp/pt.c:1802
msgid "specialization of implicitly-declared special member function"
msgstr "spécialisation d'un membre spécial d'nue fonction déclaré implicitement"
-#: cp/pt.c:1759
+#: cp/pt.c:1846
msgid "no member function `%D' declared in `%T'"
msgstr "pas de membre de fonction « %D » déclaré dans « %T »"
#. There are two many template parameter lists.
-#: cp/pt.c:1909
+#: cp/pt.c:2001
msgid "too many template parameter lists in declaration of `%T'"
-msgstr "trop de patrons de listes de paramètres dans la déclaration de « %T »"
+msgstr "trop de canevass de listes de paramètres dans la déclaration de « %T »"
-#: cp/pt.c:2005
+#: cp/pt.c:2094
msgid " shadows template parm `%#D'"
-msgstr " masque le paramètre du patron «%#D»"
+msgstr " masque le paramètre du canevas « %#D »"
-#: cp/pt.c:2409
+#: cp/pt.c:2491
msgid "template parameters not used in partial specialization:"
-msgstr "paramètres du patron ne sont pas utilisés dans la spécialisation partielle:"
+msgstr "paramètres du canevas ne sont pas utilisés dans la spécialisation partielle:"
-#: cp/pt.c:2413
+#: cp/pt.c:2495
msgid " `%D'"
msgstr " « %D »"
-#: cp/pt.c:2425
+#: cp/pt.c:2507
msgid "partial specialization `%T' does not specialize any template arguments"
-msgstr "spécialisation partielle « %T » ne spécialise pas aucun patron d'arguments"
+msgstr "spécialisation partielle « %T » ne spécialise pas aucun canevas d'arguments"
-#: cp/pt.c:2450
+#: cp/pt.c:2532
#, c-format
msgid "template argument `%E' involves template parameter(s)"
-msgstr "patron d'argument « %E » implique des paramètres du patron"
+msgstr "canevas d'argument « %E » implique des paramètres du canevas"
-#: cp/pt.c:2494
+#: cp/pt.c:2576
msgid "type `%T' of template argument `%E' depends on template parameter(s)"
-msgstr "type « %T » du patron d'argument « %E » dépend des paramètres du patron"
+msgstr "type « %T » du canevas d'argument « %E » dépend des paramètres du canevas"
-#: cp/pt.c:2582
+#: cp/pt.c:2661
msgid "no default argument for `%D'"
msgstr "pas d'argument par défaut pour « %D »"
-#: cp/pt.c:2735
+#: cp/pt.c:2810
msgid "template with C linkage"
-msgstr "patron avec liaison C"
+msgstr "canevas avec liaison C"
-#: cp/pt.c:2738
+#: cp/pt.c:2813
msgid "template class without a name"
-msgstr "patron de classe sans nom"
+msgstr "canevas de classe sans nom"
+
+#. [temp.mem]
+#.
+#. A destructor shall not be a member template.
+#: cp/pt.c:2820
+msgid "destructor `%D' declared as member template"
+msgstr "destructeur « %D » déclaré en tant que membre du canevas"
-#: cp/pt.c:2815
+#: cp/pt.c:2900
msgid "`%D' does not declare a template type"
-msgstr "« %D » ne déclare pas un type de patron"
+msgstr "« %D » ne déclare pas un type de canevas"
-#: cp/pt.c:2821
+#: cp/pt.c:2906
msgid "template definition of non-template `%#D'"
-msgstr "définition de patron d'un non patron «%#D»"
+msgstr "définition de canevas d'un non canevas « %#D »"
-#: cp/pt.c:2862
+#: cp/pt.c:2947
msgid "expected %d levels of template parms for `%#D', got %d"
-msgstr "attendait %d niveaux de patron de paramètres pour «%#D», obtenu %d"
+msgstr "attendait %d niveaux de canevas de paramètres pour « %#D », obtenu %d"
-#: cp/pt.c:2874
+#: cp/pt.c:2959
msgid "got %d template parameters for `%#D'"
-msgstr "a obtenu %d paramètres de patron pour «%#D»"
+msgstr "a obtenu %d paramètres de canevas pour « %#D »"
-#: cp/pt.c:2877
+#: cp/pt.c:2962
msgid "got %d template parameters for `%#T'"
-msgstr "a obtenu %d paramètres de patron pour «%#T»"
+msgstr "a obtenu %d paramètres de canevas pour « %#T »"
-#: cp/pt.c:2879
+#: cp/pt.c:2964
#, c-format
msgid " but %d required"
msgstr " mais %d son requis"
-#: cp/pt.c:2962
+#: cp/pt.c:3042
msgid "`%T' is not a template type"
-msgstr "« %T » n'est pas un type patron"
+msgstr "« %T » n'est pas un type canevas"
-#: cp/pt.c:2978
+#: cp/pt.c:3058
msgid "previous declaration `%D'"
msgstr "déclaration précédente de « %D »"
-#: cp/pt.c:2979
+#: cp/pt.c:3059
#, c-format
msgid "used %d template parameter%s instead of %d"
-msgstr "utilisé %d patrons paramètre%s au lieu de %d"
+msgstr "utilisé %d canevass paramètre%s au lieu de %d"
-#: cp/pt.c:2995
+#: cp/pt.c:3075
msgid "template parameter `%#D'"
-msgstr "patron de paramètre «%#D»"
+msgstr "canevas de paramètre « %#D »"
-#: cp/pt.c:2996
+#: cp/pt.c:3076
msgid "redeclared here as `%#D'"
-msgstr "redéclaré ici comme «%#D»"
+msgstr "redéclaré ici comme « %#D »"
#. We have in [temp.param]:
#.
#. A template-parameter may not be given default arguments
#. by two different declarations in the same scope.
-#: cp/pt.c:3006
+#: cp/pt.c:3086
msgid "redefinition of default argument for `%#D'"
-msgstr "redéfinition de l'argument par défaut pour «%#D»"
+msgstr "redéfinition de l'argument par défaut pour « %#D »"
-#: cp/pt.c:3007
-msgid " original definition appeared here"
-msgstr " définition originale apparaît ici"
+#: cp/pt.c:3087
+msgid "%J original definition appeared here"
+msgstr "%J définition originale apparaît ici"
-#: cp/pt.c:3100
+#: cp/pt.c:3235
#, c-format
msgid "`%E' is not a valid template argument"
-msgstr "« %E » n'est pas un argument valide pour le patron"
+msgstr "« %E » n'est pas un argument valide pour le canevas"
-#: cp/pt.c:3104
+#: cp/pt.c:3239
msgid "it must be the address of a function with external linkage"
msgstr "il doit être l'adresse d'une fonction avec lien externe"
-#: cp/pt.c:3106
+#: cp/pt.c:3241
msgid "it must be the address of an object with external linkage"
msgstr "il doît être l'adresse d'un objet avec lien externe"
-#: cp/pt.c:3110
+#: cp/pt.c:3244
msgid "it must be a pointer-to-member of the form `&X::Y'"
msgstr "il doit être un pointeur-vers-un-membre de la forme «&X::Y»"
-#: cp/pt.c:3121
+#: cp/pt.c:3255
#, c-format
msgid "string literal %E is not a valid template argument because it is the address of an object with static linkage"
-msgstr "chaîne %E n'est pas un patron d'argument valide parce que c'est l'adresse d'un objet avec lien statique"
+msgstr "chaîne %E n'est pas un canevas d'argument valide parce que c'est l'adresse d'un objet avec lien statique"
-#: cp/pt.c:3133
+#: cp/pt.c:3270
#, c-format
msgid "address of non-extern `%E' cannot be used as template argument"
-msgstr "adresse du non externe « %E » ne peut être utilisé comme patron d'argument"
+msgstr "adresse du non externe « %E » ne peut être utilisé comme canevas d'argument"
-#: cp/pt.c:3144
+#: cp/pt.c:3279
#, c-format
msgid "non-constant `%E' cannot be used as template argument"
-msgstr "la non const « %E » ne peut être utilisé comme un patron d'argument"
+msgstr "la non const « %E » ne peut être utilisé comme un canevas d'argument"
+
+#: cp/pt.c:3287
+msgid "type '%T' cannot be used as a value for a non-type template-parameter"
+msgstr "type « %T » ne peut être utilisé comme une valeur pour un non type de paramètre de canevas"
+
+#: cp/pt.c:3290
+msgid "invalid use of '%D' as a non-type template-argument"
+msgstr "utilisation invalide de « %D » pour un non type de paramètre de canevas"
-#: cp/pt.c:3151
+#: cp/pt.c:3292
#, c-format
-msgid "object `%E' cannot be used as template argument"
-msgstr "objet « %E » ne peut être utilisé comme un patron d'argument"
+msgid "invalid use of '%E' as a non-type template-argument"
+msgstr "utilisation invalide de « %E » pour un non type de paramètre de canevas"
-#: cp/pt.c:3526
+#: cp/pt.c:3657
#, c-format
msgid "to refer to a type member of a template parameter, use `typename %E'"
-msgstr "pour référencer un type de membre de patron de paramètres, utiliser « typename %E »"
+msgstr "pour référencer un type de membre de canevas de paramètres, utiliser « typename %E »"
-#: cp/pt.c:3539 cp/pt.c:3555 cp/pt.c:3594
+#: cp/pt.c:3670 cp/pt.c:3688 cp/pt.c:3727
msgid "type/value mismatch at argument %d in template parameter list for `%D'"
-msgstr "non concordance de type/valeur pour l'argument %d dans la liste des paramètres du patron de « %D »"
+msgstr "non concordance de type/valeur pour l'argument %d dans la liste des paramètres du canevas de « %D »"
-#: cp/pt.c:3542
+#: cp/pt.c:3673
msgid " expected a constant of type `%T', got `%T'"
msgstr " attendait une constante de type « %T », a obtenu « %T »"
-#: cp/pt.c:3546
+#: cp/pt.c:3677
+#, c-format
+msgid " expected a class template, got `%E'"
+msgstr " attendait un canevas de classe, a obtenu « %E »"
+
+#: cp/pt.c:3679
#, c-format
msgid " expected a type, got `%E'"
msgstr " attendait un type, a obtenu « %E »"
-#: cp/pt.c:3558
+#: cp/pt.c:3691
msgid " expected a type, got `%T'"
msgstr " attendait un type, a obtenu « %T »"
-#: cp/pt.c:3560
+#: cp/pt.c:3693
msgid " expected a class template, got `%T'"
-msgstr " attendait un patron de classe, a obtenu « %T »"
+msgstr " attendait un canevas de classe, a obtenu « %T »"
-#: cp/pt.c:3596
+#: cp/pt.c:3729
msgid " expected a template of type `%D', got `%D'"
-msgstr " attendait un patron de type « %D », a obtenu « %D »"
-
-#: cp/pt.c:3618
-msgid "template-argument `%T' uses anonymous type"
-msgstr "argument du patron « %T » utilise un type anonyme"
-
-#: cp/pt.c:3621
-msgid "template-argument `%T' uses local type `%T'"
-msgstr "argument du patron « %T » utilise un type local « %T »"
-
-#: cp/pt.c:3631
-#, fuzzy
-msgid "template-argument `%T' is a variably modified type"
-msgstr "argument du patron « %T » utilise un type anonyme"
+msgstr " attendait un canevas de type « %D », a obtenu « %D »"
-#: cp/pt.c:3666
+#: cp/pt.c:3764
msgid "could not convert template argument `%E' to `%T'"
-msgstr "ne peut convertir l'argument du patron « %E » vers « %T »"
+msgstr "ne peut convertir l'argument du canevas « %E » vers « %T »"
-#: cp/pt.c:3710
+#: cp/pt.c:3804
#, c-format
msgid "wrong number of template arguments (%d, should be %d)"
-msgstr "nombre erroné d'arguments du patron (%d devrait être %d)"
+msgstr "nombre erroné d'arguments du canevas (%d devrait être %d)"
-#: cp/pt.c:3714
+#: cp/pt.c:3808
msgid "provided for `%D'"
msgstr "fournie pour « %D »"
-#: cp/pt.c:3761
+#: cp/pt.c:3836
#, c-format
msgid "template argument %d is invalid"
-msgstr "patron de l'argument %d est invalide"
+msgstr "canevas de l'argument %d est invalide"
-#: cp/pt.c:3997
+#: cp/pt.c:4057
msgid "non-template used as template"
-msgstr "non patron utilisé comme patron"
+msgstr "non canevas utilisé comme canevas"
-#: cp/pt.c:4139
-msgid "`%T' is not a template"
-msgstr "« %T » n'est pas un patron"
-
-#: cp/pt.c:4152
+#: cp/pt.c:4197
msgid "non-template type `%T' used as a template"
-msgstr "type non patron « %T » utilisé comme un patron"
+msgstr "type non canevas « %T » utilisé comme un canevas"
-#: cp/pt.c:4154
+#: cp/pt.c:4199
msgid "for template declaration `%D'"
-msgstr "pour la déclaration du patron « %D »"
+msgstr "pour la déclaration du canevas « %D »"
-#: cp/pt.c:4770
+#: cp/pt.c:4846
msgid "template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN to increase the maximum) instantiating `%D'"
-msgstr "instantiation de la profondeur du patron excède le maximum de %d (utiliser -ftemplate-depth-NN pour augmenter le maximum) lors de l'instanciation de « %D »"
+msgstr "instantiation de la profondeur du canevas excède le maximum de %d (utiliser -ftemplate-depth-NN pour augmenter le maximum) lors de l'instanciation de « %D »"
-#: cp/pt.c:5247
+#: cp/pt.c:5286
msgid "ambiguous class template instantiation for `%#T'"
-msgstr "instanciation ambiguë de patron de classe pour «%#T»"
+msgstr "instanciation ambiguë de canevas de classe pour « %#T »"
-#: cp/pt.c:5254
+#: cp/pt.c:5292
msgid "%s %+#T"
msgstr "%s %+#T"
-#: cp/pt.c:6284 cp/pt.c:6396
+#: cp/pt.c:6291 cp/pt.c:6411
msgid "instantiation of `%D' as type `%T'"
msgstr "instanciation de « %D » comme type « %T »"
-#: cp/pt.c:6440
+#: cp/pt.c:6453
msgid "invalid parameter type `%T'"
msgstr "paramètre invalide pour le type « %T »"
-#: cp/pt.c:6442
+#: cp/pt.c:6455
msgid "in declaration `%D'"
msgstr "dans la déclaration de « %D »"
-#: cp/pt.c:6517
+#: cp/pt.c:6529
msgid "creating pointer to member function of non-class type `%T'"
msgstr "création d'un pointeur vers le membre d'une fonction d'un type non classe « %T »"
-#: cp/pt.c:6680
+#: cp/pt.c:6668
msgid "creating array with size zero"
msgstr "création d'un tableau de taille zéro"
-#: cp/pt.c:6694
+#: cp/pt.c:6682
#, c-format
msgid "creating array with size zero (`%E')"
msgstr "création d'un tableau de taille zéro (« %E »)"
-#: cp/pt.c:6933
+#: cp/pt.c:6921
msgid "forming reference to void"
msgstr "formation d'une référence en void"
-#: cp/pt.c:6935
+#: cp/pt.c:6923
msgid "forming %s to reference type `%T'"
msgstr "formant %s pour référencer le type « %T »"
-#: cp/pt.c:6973
+#: cp/pt.c:6960
msgid "creating pointer to member of non-class type `%T'"
msgstr "création d'un pointeur vers le membre d'un type non classe « %T »"
-#: cp/pt.c:6979
+#: cp/pt.c:6966
msgid "creating pointer to member reference type `%T'"
msgstr "création d'un pointeur vers le membre de référence du type « %T »"
-#: cp/pt.c:7057
+#: cp/pt.c:7052
msgid "creating array of `%T'"
msgstr "création du tableau « %T »"
-#: cp/pt.c:7100
+#: cp/pt.c:7058
+msgid "creating array of `%T', which is an abstract class type"
+msgstr "création d'un tableau « %T », lequel est un type de classe abstraite"
+
+#: cp/pt.c:7102
msgid "`%T' is not a class, struct, or union type"
msgstr "« %T » n'est pas une classe, struct ou un type d'union"
-#: cp/pt.c:7213
+#: cp/pt.c:7215
#, c-format
msgid "use of `%s' in template"
-msgstr "utilisation de « %s » dans le patron"
+msgstr "utilisation de « %s » dans le canevas"
+
+#: cp/pt.c:7327
+#, c-format
+msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type"
+msgstr "nom dépendant « %E » est analysé comme un non type, mais son instantiation le rend comme un type"
+
+#: cp/pt.c:7329
+#, c-format
+msgid "say `typename %E' if a type is meant"
+msgstr "utiliser « typename %E » si un type est désiré"
+
+#: cp/pt.c:8586
+msgid "`%T' uses anonymous type"
+msgstr "« %T » utilise un type anonyme"
+
+#: cp/pt.c:8588
+msgid "`%T' uses local type `%T'"
+msgstr "« %T » utilise un type local « %T »"
-#: cp/pt.c:7975
-msgid "type `%T' composed from a local class is not a valid template-argument"
-msgstr "type « %T » composé à partir d'une classe locale n'est pas un patron d'argument valide"
+#: cp/pt.c:8596
+msgid "`%T' is a variably modified type"
+msgstr "« %T » est type modifié de manière variable"
-#: cp/pt.c:7976
+#: cp/pt.c:8607
+#, c-format
+msgid "integral expression `%E' is not constant"
+msgstr "expression intégrale « %E » n'est pas une constante"
+
+#: cp/pt.c:8612
msgid " trying to instantiate `%D'"
msgstr " tentative d'instanciation « %D »"
-#: cp/pt.c:8421
+#: cp/pt.c:9125
msgid "incomplete type unification"
msgstr "type d'unification incomplète"
-#: cp/pt.c:9387
+#: cp/pt.c:10072
#, c-format
msgid "use of `%s' in template type unification"
-msgstr "utilisation de « %s » dans le patron du type d'unification"
+msgstr "utilisation de « %s » dans le canevas du type d'unification"
-#: cp/pt.c:9821 cp/pt.c:9893
+#: cp/pt.c:10506 cp/pt.c:10578
msgid "explicit instantiation of non-template `%#D'"
-msgstr "instanciation explicite d'un non patron «%#D»"
+msgstr "instanciation explicite d'un non canevas « %#D »"
-#: cp/pt.c:9837 cp/pt.c:9888
+#: cp/pt.c:10522 cp/pt.c:10573
msgid "no matching template for `%D' found"
-msgstr "non concordance de patron pour « %D » repéré"
+msgstr "non concordance de canevas pour « %D » repéré"
-#: cp/pt.c:9843
+#: cp/pt.c:10528
msgid "explicit instantiation of `%#D'"
-msgstr "instanciation explicite de «%#D»"
+msgstr "instanciation explicite de « %#D »"
-#: cp/pt.c:9880
+#: cp/pt.c:10565
msgid "duplicate explicit instantiation of `%#D'"
-msgstr "duplication d'instanciation explicite de «%#D»"
+msgstr "duplication d'instanciation explicite de « %#D »"
-#: cp/pt.c:9905
+#: cp/pt.c:10587
msgid "ISO C++ forbids the use of `extern' on explicit instantiations"
-msgstr "le C++ ISO interdit l'utilisation de « extern » sur instanciations explicites"
+msgstr "ISO C++ interdit l'utilisation de « extern » sur instanciations explicites"
-#: cp/pt.c:9909 cp/pt.c:9999
+#: cp/pt.c:10591 cp/pt.c:10672
msgid "storage class `%D' applied to template instantiation"
-msgstr "classe de stockage « %D » appliqué à l'instanciation du patron"
+msgstr "classe de stockage « %D » appliqué à l'instanciation du canevas"
-#: cp/pt.c:9966
+#: cp/pt.c:10644
msgid "explicit instantiation of non-template type `%T'"
-msgstr "instanciation explicite de type non patron « %T »"
+msgstr "instanciation explicite de type non canevas « %T »"
-#: cp/pt.c:9980
+#: cp/pt.c:10653
msgid "explicit instantiation of `%#T' before definition of template"
-msgstr "instanciation explicite de «%#T» avant la définition de patron"
+msgstr "instanciation explicite de « %#T » avant la définition de canevas"
-#: cp/pt.c:9988
+#: cp/pt.c:10661
#, c-format
msgid "ISO C++ forbids the use of `%s' on explicit instantiations"
-msgstr "le C++ ISO interdit l'utilisation de « %s » sur instanciations explicites"
+msgstr "ISO C++ interdit l'utilisation de « %s » sur instanciations explicites"
-#: cp/pt.c:10032
+#: cp/pt.c:10705
msgid "duplicate explicit instantiation of `%#T'"
-msgstr "duplication d'instanciation explicite de «%#T»"
+msgstr "duplication d'instanciation explicite de « %#T »"
-#: cp/pt.c:10412
+#: cp/pt.c:11086
msgid "explicit instantiation of `%D' but no definition available"
msgstr "instanciation explicite de « %D » mais pas de définition disponible"
-#: cp/pt.c:10815
+#: cp/pt.c:11520
msgid "`%#T' is not a valid type for a template constant parameter"
-msgstr "«%#T» n'a pas un type valide pour un patron de parametre de constante"
+msgstr "« %#T » n'a pas un type valide pour un canevas de parametre de constante"
-#: cp/repo.c:271
+#: cp/repo.c:259
msgid "-frepo must be used with -c"
msgstr "-frepo doit être utilisé avec -c"
-#: cp/repo.c:361
+#: cp/repo.c:346
#, c-format
msgid "mysterious repository information in %s"
msgstr "dépôt mystérieux d'informations dans %s"
-#: cp/repo.c:376
+#: cp/repo.c:361
#, c-format
msgid "can't create repository information file `%s'"
msgstr "ne peut créer le fichier « %s » pour dépôt d'informations"
-#: cp/rtti.c:240
+#: cp/rtti.c:248
msgid "cannot use typeid with -fno-rtti"
msgstr "ne peut utiliser typeid avec -fno-rtti"
-#: cp/rtti.c:246
+#: cp/rtti.c:254
msgid "must #include <typeinfo> before using typeid"
msgstr "doit utiliser #include <typeinfo> avant d'utiliser typeid"
-#: cp/rtti.c:320
+#: cp/rtti.c:326
msgid "cannot create type information for type `%T' because its size is variable"
msgstr "ne peut créer une information pour le type « %T » parce que sa taille est variable"
-#: cp/rtti.c:584 cp/rtti.c:598
+#: cp/rtti.c:580 cp/rtti.c:594
msgid "dynamic_cast of `%#D' to `%#T' can never succeed"
-msgstr "dynamic_cast de «%#D» vers «%#T» ne pourra jamais réussir"
+msgstr "dynamic_cast de « %#D » vers « %#T » ne pourra jamais réussir"
-#: cp/rtti.c:674
+#: cp/rtti.c:675
msgid "cannot dynamic_cast `%E' (of type `%#T') to type `%#T' (%s)"
-msgstr "ne peut effectuer un dynamic_cast « %E » (du type «%#T') vers le type «%#T» (%s)"
+msgstr "ne peut effectuer un dynamic_cast « %E » (du type « %#T ») vers le type « %#T » (%s)"
-#: cp/search.c:332
+#: cp/search.c:306
msgid "`%T' is an ambiguous base of `%T'"
msgstr "« %T » est une base ambiguë de « %T »"
-#: cp/search.c:350
+#: cp/search.c:324
msgid "`%T' is an inaccessible base of `%T'"
msgstr "« %T » est une base inaccessible de « %T »"
-#. At parse time, we don't want to give this error, since
-#. we won't have enough state to make this kind of
-#. decision properly. But there are times (e.g., with
-#. enums in nested classes) when we do need to call
-#. this fn at parse time. So, in those cases, we pass
-#. complain as a 0 and just return a NULL_TREE.
-#: cp/search.c:1638
-#, fuzzy
-msgid "assignment to non-static member `%D' of enclosing class `%T'"
-msgstr "affectation au champ statique final « %s » n'est pas dans l'initialiseur de la classe"
-
-#: cp/search.c:2050
-msgid "adjusting pointers for covariant returns"
-msgstr "ajuster les pointeurs pour des retours co-variants"
-
-#: cp/search.c:2054 cp/search.c:2061
+#: cp/search.c:1756
msgid "invalid covariant return type for `%#D'"
-msgstr "type retourné covariant invalide pour «%#D»"
-
-#: cp/search.c:2055
-msgid " overriding `%#D' (must be pointer or reference to class)"
-msgstr " écrasant «%#D» (doit être un pointeur ou une référence vers un classe)"
+msgstr "type retourné covariant invalide pour « %#D »"
-#: cp/search.c:2062
-msgid " overriding `%#D' (must use pointer or reference)"
-msgstr " écrasant «%#D» (doit utiliser un pointeur ou un référence)"
+#: cp/search.c:1757 cp/search.c:1763
+msgid " overriding `%#D'"
+msgstr " écrasant « %#D »"
-#: cp/search.c:2067
+#: cp/search.c:1761
msgid "conflicting return type specified for `%#D'"
-msgstr "types retournés conflictuels spécifiés pour «%#D»"
-
-#: cp/search.c:2068
-msgid " overriding `%#D'"
-msgstr " écrasant «%#D»"
+msgstr "types retournés conflictuels spécifiés pour « %#D »"
-#: cp/search.c:2077
+#: cp/search.c:1775
#, c-format
msgid "looser throw specifier for `%#F'"
-msgstr "a placé un spécificateur pour «%#F»"
+msgstr "a placé un spécificateur pour « %#F »"
-#: cp/search.c:2078
+#: cp/search.c:1776
#, c-format
msgid " overriding `%#F'"
-msgstr " écrasant «%#F»"
+msgstr " écrasant « %#F »"
#. A static member function cannot match an inherited
#. virtual member function.
-#: cp/search.c:2167
+#: cp/search.c:1866
msgid "`%#D' cannot be declared"
-msgstr "«%#D» ne peut être déclaré"
+msgstr "« %#D » ne peut être déclaré"
-#: cp/search.c:2168
+#: cp/search.c:1867
msgid " since `%#D' declared in base class"
-msgstr " alors que «%#D» est déclaré dans la classe de base"
+msgstr " alors que « %#D » est déclaré dans la classe de base"
-#: cp/search.c:2309
+#: cp/search.c:1944
msgid "`%#D' needs a final overrider"
-msgstr "«%#D» a besoin d'un écraseur final"
+msgstr "« %#D » a besoin d'un écraseur final"
-#: cp/semantics.c:919
+#: cp/semantics.c:1092
#, c-format
msgid "type of asm operand `%E' could not be determined"
msgstr "type d'opérande asm « %E » ne peut être déterminé"
-#: cp/semantics.c:1051
-msgid "ISO C++ does not permit named return values"
-msgstr "le C++ ISO ne permet pas les valeurs retournées nommées"
+#: cp/semantics.c:1233
+msgid "invalid use of member `%D' in static member function"
+msgstr "utilisation invalide du membre « %D » dans un membre statique de fonction"
-#: cp/semantics.c:1060
-msgid "return identifier `%D' already in place"
-msgstr "identificateur retourné « %D » est déjà en place"
+#: cp/semantics.c:1237 cp/semantics.c:1276
+msgid "from this location"
+msgstr "à partir de cette localisation"
-#: cp/semantics.c:1068
-msgid "can't redefine default return value for constructors"
-msgstr "ne peut redéfinir la valeur retournée par défaut pour les constructeurs"
+#: cp/semantics.c:1275
+msgid "object missing in reference to `%D'"
+msgstr "objet manquant dans la référence à « %D »"
-#: cp/semantics.c:1100
-msgid "only constructors take base initializers"
-msgstr "seuls les constructeurs prennent des initialiseurs de base"
+#: cp/semantics.c:1721
+msgid "arguments to destructor are not allowed"
+msgstr "arguments au destructeur ne sont pas permis"
-#: cp/semantics.c:1343
+#: cp/semantics.c:1769
msgid "`this' is unavailable for static member functions"
-msgstr "« this » n'est pas disponible pour les membres statiques de fonctions"
+msgstr "« cela » n'est pas disponible pour les membres statiques de fonctions"
-#: cp/semantics.c:1349
+#: cp/semantics.c:1775
msgid "invalid use of `this' in non-member function"
msgstr "utilisation invalide de « ceci » dans un non membre de fonction"
-#: cp/semantics.c:1351
+#: cp/semantics.c:1777
msgid "invalid use of `this' at top level"
msgstr "utilisation invalide de « this » hors de toute fonction"
-#: cp/semantics.c:1381
-msgid "calling type `%T' like a method"
-msgstr "appel du type « %T » comme une méthode"
-
-#: cp/semantics.c:1419
-msgid "destructor specifier `%T::~%T()' must have matching names"
-msgstr "spécificateur du destructeur «%T::~%T()» doit avoir des noms concordants"
+#: cp/semantics.c:1801
+msgid "invalid qualifying scope in pseudo-destructor name"
+msgstr "étendue invalide du qualificateur dans un nom de pseudo-destructeur"
-#: cp/semantics.c:1425
+#: cp/semantics.c:1807
msgid "`%E' is not of type `%T'"
msgstr "« %E » n'est pas un type « %T »"
-#: cp/semantics.c:1613
+#: cp/semantics.c:1918
msgid "template type parameters must use the keyword `class' or `typename'"
-msgstr "patron de type de paramètres doit utiliser le mot clé « class» ou «typename »"
+msgstr "canevas de type de paramètres doit utiliser le mot clé « class» ou «typename »"
+
+#: cp/semantics.c:1962
+msgid "invalid use of type `%T' as a default value for a template template-parameter"
+msgstr "utilisation invalide du type « %T » comme valeur par défaut pour un canevas de paramètres de canevas"
+
+#: cp/semantics.c:1965
+msgid "invalid use of `%D' as a default value for a template template-parameter"
+msgstr "utilisation invalide de « %D » comme valeur par défaut pour un canevas de paramètres de canevas"
-#: cp/semantics.c:1652
-msgid "invalid default template argument"
-msgstr "argument invalide pour le patron par défaut"
+#: cp/semantics.c:1969
+msgid "invalid default argument for a template template parameter"
+msgstr "utilisation invalide d'argumenet pour un canevas de paramètres de canevas"
-#: cp/semantics.c:1694
+#: cp/semantics.c:2004
msgid "definition of `%#T' inside template parameter list"
-msgstr "définition de «%#T» à l'intérieur d'un patron de liste de paramètres"
+msgstr "définition de « %#T » à l'intérieur d'un canevas de liste de paramètres"
-#: cp/semantics.c:1710
+#: cp/semantics.c:2015
msgid "invalid definition of qualified type `%T'"
msgstr "définition invalide d'un type qualifié « %T »"
-#: cp/semantics.c:2053
-#, fuzzy
+#: cp/semantics.c:2030
+msgid "previous definition of `%#T'"
+msgstr "définition précédente de « %#T »"
+
+#: cp/semantics.c:2225
msgid "invalid base-class specification"
-msgstr "spécification de longueur invalide à %0"
+msgstr "spécification de base de classe invalide"
-#: cp/semantics.c:2062
+#: cp/semantics.c:2234
msgid "base class `%T' has cv qualifiers"
msgstr "classe de base « %T » a des qualificateurs cv"
-#: cp/semantics.c:2093
+#: cp/semantics.c:2266
msgid "multiple declarators in template declaration"
-msgstr "déclarateurs multiples dans la déclaration de patron"
+msgstr "déclarateurs multiples dans la déclaration de canevas"
-#: cp/semantics.c:2120
-#, fuzzy, c-format
-msgid "type of `%E' is unknown"
-msgstr "Registre '%c' est inconnu"
-
-#: cp/spew.c:225
-#, c-format
-msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
-msgstr "nom d'identificateur « %s » entre en conflit avec la stratégie interne de dénomination de GNU C++"
+#: cp/semantics.c:2277
+msgid "incomplete type `%T' used in nested name specifier"
+msgstr "type « %T » incomplet utilisé dans un spécificateur de noms imbriqué"
-#: cp/spew.c:1002 cp/spew.c:1340
-msgid "parse error at end of saved function text"
-msgstr "erreur d'analyse syntaxique à la fin de la sauvegarde de la fonction texte"
-
-#: cp/spew.c:1090 cp/spew.c:1178
-#, fuzzy
-msgid "%Hend of file read inside definition"
-msgstr "PAS n'est pas alloué dans la définition d'un champ"
+#: cp/semantics.c:2279 cp/typeck.c:1616
+msgid "`%D' is not a member of `%T'"
+msgstr "« %D » n'est pas un membre de « %T »"
-#: cp/spew.c:1121
-msgid "parse error in method specification"
-msgstr "erreur d'analyse syntaxique dans la spécification de fonction"
+#: cp/semantics.c:2282
+msgid "`%D' is not a member of `%D'"
+msgstr "« %D » n'est pas un membre de « %D »"
-#: cp/spew.c:1161
-msgid "function body for constructor missing"
-msgstr "corps de fonction pour le constructeur est manquante"
+#: cp/semantics.c:2400
+msgid "template parameter `%D' of type `%T' is not allowed in an integral constant expression because it is not of integral or enumeration type"
+msgstr "paramètre « %D » du canevas du type « %T » ne sont pas permises dans une expression intégrale de constante parce qu'elle n'est pas intégral ou un type énumération"
-#: cp/spew.c:1262
-#, fuzzy
-msgid "%Hend of file read inside default argument"
-msgstr "« %D » ne peut avoir d'arguments par défaut"
+#: cp/semantics.c:2553
+msgid "`%D' cannot appear in a constant-expression"
+msgstr "« %D » ne peut apparaître dans une expression de constante"
-#: cp/spew.c:1419
-msgid "circular dependency in default args of `%#D'"
-msgstr "dépendance circulaire dans les arguments par défaut de «%#D»"
+#: cp/semantics.c:2562
+msgid "use of namespace `%D' as expression"
+msgstr "utilisation d'un espace de dnomes « %D » comme expression"
-#: cp/spew.c:1483
-msgid "invalid type `%T' for default argument to `%T'"
-msgstr "type invalide « %T » pour l'argument par défaut « %T »"
+#: cp/semantics.c:2567
+msgid "use of class template `%T' as expression"
+msgstr "utilisation du canevas de classe « %T » comme expression"
-#: cp/spew.c:1548
-#, c-format
-msgid "%s before `%s'"
-msgstr "%s avant « %s »"
+#. Ambiguous reference to base members.
+#: cp/semantics.c:2573
+msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
+msgstr "requête du membre « %D » est ambiquë dans de mutliples héritage de treillis"
-#: cp/spew.c:1550
+#: cp/semantics.c:2633
#, c-format
-msgid "%s before `%c'"
-msgstr "%s avant « %c »"
+msgid "use of %s from containing function"
+msgstr "utilisation de %s d'un fonction contenante"
-#: cp/spew.c:1552
-#, c-format
-msgid "%s before `\\%o'"
-msgstr "%s avant «\\%o»"
+#: cp/semantics.c:2636
+msgid " `%#D' declared here"
+msgstr " « %#D » déclaré ici"
-#: cp/spew.c:1555
+#: cp/semantics.c:2687
#, c-format
-msgid "%s before `%s' token"
-msgstr "%s avant l'élément lexical « %s »"
+msgid "type of `%E' is unknown"
+msgstr "type « %E » est inconnu"
-#: cp/tree.c:263 cp/tree.c:275
+#: cp/tree.c:222
#, c-format
msgid "non-lvalue in %s"
msgstr "n'est pas un membre gauche dans %s"
-#: cp/tree.c:562
+#: cp/tree.c:539
msgid "`%V' qualifiers cannot be applied to `%T'"
msgstr "qualificateur « %V » ne peut pas être appliqué à « %T »"
-#: cp/tree.c:1941
+#: cp/tree.c:1830
#, c-format
msgid "`%s' attribute can only be applied to Java class definitions"
msgstr "attribut « %s » peut seulement être appliqué aux définitions de classes Java"
-#: cp/tree.c:1971
+#: cp/tree.c:1859
#, c-format
msgid "`%s' attribute can only be applied to class definitions"
msgstr "attribut « %s » peut seulement être appliqué aux définitions de classes"
-#: cp/tree.c:1977
+#: cp/tree.c:1865
#, c-format
msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default"
msgstr "« %s » est obsolète; vtables g++ sont maintenant COM-compatibles par défaut"
-#: cp/tree.c:2002
+#: cp/tree.c:1889
msgid "requested init_priority is not an integer constant"
msgstr "init_priority demandé n'est pas une constante entière"
-#: cp/tree.c:2023
+#: cp/tree.c:1910
#, c-format
msgid "can only use `%s' attribute on file-scope definitions of objects of class type"
msgstr "peut seulement utiliser l'attribut « %s » sur la portée de fichier de définitions des objets de type de classe"
-#: cp/tree.c:2031
+#: cp/tree.c:1918
msgid "requested init_priority is out of range"
-msgstr "init_priority demandé est hors gamme"
+msgstr "init_priority demandé est hors limite"
-#: cp/tree.c:2041
+#: cp/tree.c:1928
msgid "requested init_priority is reserved for internal use"
msgstr "init_priority demandé est réservé pour un usage interne"
-#: cp/tree.c:2051
+#: cp/tree.c:1938
#, c-format
msgid "`%s' attribute is not supported on this platform"
msgstr "attribut « %s » n'est pas supporté sur cette plate-forme"
-#: cp/tree.c:2588
-#, fuzzy, c-format
-msgid "lang_* check: failed in %s, at %s:%d"
-msgstr "vérification de l'arbre: attendait %s, obtenu %s dans %s, à %s:%d"
-
-#: cp/typeck.c:524
+#: cp/tree.c:2459
#, c-format
-msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
-msgstr "le C++ ISO interdit %s entre les pointeurs de type « void * » et les pointeurs de fonctions"
+msgid "lang_* check: failed in %s, at %s:%d"
+msgstr "vérification lang_* : éched dans %s, à %s:%d"
-#: cp/typeck.c:545
+#: cp/typeck.c:438 cp/typeck.c:453 cp/typeck.c:543
msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
msgstr "%s entre des types distincs de pointeurs « %T » et « %T » manque de transtypage"
-#: cp/typeck.c:1436
-msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
-msgstr "le C++ ISO interdit la conversion de «%#T» en « (...) »"
+#: cp/typeck.c:513
+#, c-format
+msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
+msgstr "ISO C++ interdit %s entre les pointeurs de type « void * » et les pointeurs de fonctions"
-#: cp/typeck.c:1514
+#: cp/typeck.c:563
+msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast"
+msgstr "%s entre des types distincs de pointeurs vers les membres « %T » et « %T » manque de transtypage"
+
+#: cp/typeck.c:1235
#, c-format
msgid "invalid application of `%s' to a member function"
msgstr "application invalide de « %s » à une fonction membre"
-#: cp/typeck.c:1520
-#, fuzzy, c-format
-msgid "invalid application of `%s' to non-static member"
-msgstr "utilisation invalide de « %s » sur un pointeur vers un membre"
+#: cp/typeck.c:1268
+#, c-format
+msgid "invalid application of `%s' to a bit-field"
+msgstr "application invalide de « %s » sur un champ de bits"
-#: cp/typeck.c:1538
-msgid "sizeof applied to a bit-field"
-msgstr "sizeof appliqué sur un champ de bits"
+#: cp/typeck.c:1273
+#, c-format
+msgid "ISO C++ forbids applying `%s' to an expression of function type"
+msgstr "ISO C++ interdit l'application de « %s » à une expression d'un type de fonction"
-#: cp/typeck.c:1541
-msgid "ISO C++ forbids applying `sizeof' to an expression of function type"
-msgstr "le C++ ISO interdit l'application de « sizeof » sur l'expression d'un type de fonction"
+#: cp/typeck.c:1342
+msgid "invalid use of non-static member function"
+msgstr "utilisation invalide d'un membre non statique de fonction"
-#: cp/typeck.c:1759
+#: cp/typeck.c:1476
msgid "deprecated conversion from string constant to `%T'"
msgstr "conversion dépréciée de la chaîne de constante vers « %T »"
-#: cp/typeck.c:1890 cp/typeck.c:2122
-#, fuzzy
+#: cp/typeck.c:1587 cp/typeck.c:1874
msgid "request for member `%D' in `%E', which is of non-class type `%T'"
-msgstr "requête du membre « %D » dans « %E », lequel n'est pas de type aggrégat « %T »"
+msgstr "requête du membre « %D » dans « %E », lequel n'est pas de type classe « %T »"
-#: cp/typeck.c:1916
-#, fuzzy
-msgid "`%D' is not a member of `%T'"
-msgstr "« %D » n'est pas un membre de type « %T »"
+#: cp/typeck.c:1614
+#, c-format
+msgid "invalid use of nonstatic data member '%E'"
+msgstr "utilisation invalide d'un membre de données non statique « %E »"
-#: cp/typeck.c:1957 cp/typeck.c:1978
-#, fuzzy
+#: cp/typeck.c:1666 cp/typeck.c:1688
msgid "invalid access to non-static data member `%D' of NULL object"
-msgstr "utilisation invalide d'un champ non statique « %D »"
+msgstr "accès invalide à un membre de données non statique « %D » d'un objet null"
-#: cp/typeck.c:1959 cp/typeck.c:1980
+#: cp/typeck.c:1668 cp/typeck.c:1690
msgid "(perhaps the `offsetof' macro was used incorrectly)"
-msgstr ""
+msgstr "(peut-être que le macro « offsetof » a été utilisé incorrectement)"
+
+#: cp/typeck.c:1804
+msgid "the type being destroyed is '%T', but the destructor refers to `%T'"
+msgstr "le type devant être détruit est « %T », mais le destructeur réfère à « %T »"
-#: cp/typeck.c:2168
-#, fuzzy
+#: cp/typeck.c:1924
msgid "`%D::%D' is not a member of `%T'"
-msgstr "« %D » n'est pas un membre de type « %T »"
+msgstr "« %D::%D » n'est pas un membre de « %T »"
-#: cp/typeck.c:2179
-#, fuzzy
+#: cp/typeck.c:1935
msgid "`%T' is not a base of `%T'"
-msgstr "« %D » n'est pas un membre de type « %T »"
+msgstr "« %D » n'est pas une base de « %T »"
-#: cp/typeck.c:2199
-msgid "destructor specifier `%T::~%T' must have matching names"
-msgstr "spécificateur du destructeur «%T::~%T» doit des noms concordants"
-
-#: cp/typeck.c:2205
-msgid "type `%T' has no destructor"
-msgstr "type « %T » n'a pas de destructeur"
+#: cp/typeck.c:1954
+msgid "'%D' has no member named '%E'"
+msgstr "« %D » n'a pas de membre nommé « %E »"
-#: cp/typeck.c:2244
-#, fuzzy
+#: cp/typeck.c:1969
msgid "`%D' is not a member template function"
-msgstr "« %D » n'est pas une fonction"
+msgstr "« %D » n'est pas une membre du canevas de fonction"
#. A pointer to incomplete type (other than cv void) can be
#. dereferenced [expr.unary.op]/1
-#: cp/typeck.c:2338
+#: cp/typeck.c:2075
msgid "`%T' is not a pointer-to-object type"
msgstr "« %T » n'est pas un type pointeur-vers-objet"
-#: cp/typeck.c:2365
+#: cp/typeck.c:2100
#, c-format
msgid "invalid use of `%s' on pointer to member"
msgstr "utilisation invalide de « %s » sur un pointeur vers un membre"
-#: cp/typeck.c:2371
+#: cp/typeck.c:2106
msgid "invalid type argument"
msgstr "type d'argument invalide"
-#: cp/typeck.c:2474
+#: cp/typeck.c:2212
msgid "ISO C++ forbids subscripting non-lvalue array"
-msgstr "le C++ ISO interdit le souscriptage de non lvalue de tableau"
+msgstr "ISO C++ interdit le souscriptage de non lvalue de tableau"
-#: cp/typeck.c:2485
+#: cp/typeck.c:2223
msgid "subscripting array declared `register'"
msgstr "souscriptage de tableau déclaré « register »"
-#: cp/typeck.c:2570
+#: cp/typeck.c:2306
#, c-format
msgid "object missing in use of `%E'"
msgstr "objet manquant dans l'usage de « %E »"
-#: cp/typeck.c:2674
+#: cp/typeck.c:2408
msgid "ISO C++ forbids calling `::main' from within program"
-msgstr "le C++ ISO interdit l'appel de «::main» depuis l'intérieur du programme"
+msgstr "ISO C++ interdit l'appel de «::main» depuis l'intérieur du programme"
-#: cp/typeck.c:2699
+#: cp/typeck.c:2433
#, c-format
msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'"
msgstr "doit utiliser .* ou ->* pour l'appel de la fonction pointer-to-member dans « %E (...) »"
-#: cp/typeck.c:2712
+#: cp/typeck.c:2446
#, c-format
msgid "`%E' cannot be used as a function"
msgstr "« %E » ne peut être utilisé comme une fonction"
-#: cp/typeck.c:2824
+#: cp/typeck.c:2539
msgid "too many arguments to %s `%+#D'"
msgstr "trop d'arguments pour %s « %+#D »"
-#: cp/typeck.c:2865
-msgid "parameter type of called function is incomplete"
-msgstr "type de paramètre de la fonction appelée est incomplet"
+#: cp/typeck.c:2541 cp/typeck.c:2647
+msgid "at this point in file"
+msgstr "à ce point dans le fichier"
-#: cp/typeck.c:2928
+#: cp/typeck.c:2578
+msgid "parameter %P of `%D' has incomplete type `%T'"
+msgstr "paramètre %P de « %D » a un type incomplet « %T »"
+
+#: cp/typeck.c:2581
+msgid "parameter %P has incomplete type `%T'"
+msgstr "paramètre %P a un type incomplet « %T »"
+
+#: cp/typeck.c:2645
msgid "too few arguments to %s `%+#D'"
msgstr "pas assez d'argument pour %s « %+#D »"
-#: cp/typeck.c:3056 cp/typeck.c:3066
+#: cp/typeck.c:2790 cp/typeck.c:2800
msgid "assuming cast to type `%T' from overloaded function"
msgstr "transtypage vers le type « %T » est assumé à partir de la fonction surchargée"
-#: cp/typeck.c:3126
+#: cp/typeck.c:2861
#, c-format
msgid "division by zero in `%E / 0'"
-msgstr "division par zéro dans «%E / 0»"
+msgstr "division par zéro dans « %E / 0 »"
-#: cp/typeck.c:3128
+#: cp/typeck.c:2863
#, c-format
msgid "division by zero in `%E / 0.'"
-msgstr "division par zéro dans «%E / 0.»"
+msgstr "division par zéro dans « %E / 0. »"
-#: cp/typeck.c:3158
+#: cp/typeck.c:2892
#, c-format
msgid "division by zero in `%E %% 0'"
-msgstr "division par zéro dans «%E %% 0»"
+msgstr "division par zéro dans « %E %% 0 »"
-#: cp/typeck.c:3160
+#: cp/typeck.c:2894
#, c-format
msgid "division by zero in `%E %% 0.'"
-msgstr "division par zéro dans «%E %% 0.»"
+msgstr "division par zéro dans « %E %% 0. »"
-#: cp/typeck.c:3240
+#: cp/typeck.c:2974
#, c-format
msgid "%s rotate count is negative"
msgstr "compteur de rotation %s est négatif"
-#: cp/typeck.c:3243
+#: cp/typeck.c:2977
#, c-format
msgid "%s rotate count >= width of type"
msgstr "compteur de rotation %s >= largeur du type"
-#: cp/typeck.c:3274 cp/typeck.c:3279 cp/typeck.c:3370 cp/typeck.c:3375
+#: cp/typeck.c:3011 cp/typeck.c:3016 cp/typeck.c:3107 cp/typeck.c:3112
msgid "ISO C++ forbids comparison between pointer and integer"
-msgstr "le C++ ISO interdit la comparaison entre un pointeur et un entier"
+msgstr "ISO C++ interdit la comparaison entre un pointeur et un entier"
-#: cp/typeck.c:3553
+#: cp/typeck.c:3293
msgid "comparison between types `%#T' and `%#T'"
-msgstr "comparaison entre les types «%#T» et «%#T»"
+msgstr "comparaison entre les types « %#T » et « %#T »"
-#: cp/typeck.c:3589
+#: cp/typeck.c:3329
msgid "comparison between signed and unsigned integer expressions"
msgstr "comparaison entre des expressions entières signée et non signée"
-#: cp/typeck.c:3654
+#: cp/typeck.c:3394
msgid "invalid operands of types `%T' and `%T' to binary `%O'"
msgstr "opérandes invalides pour les types « %T » et « %T » en binaire « %O »"
@@ -17845,690 +16882,514 @@ msgstr "opérandes invalides pour les types « %T » et « %T » en binaire « %O »"
#. performed. Note that pointer-difference and pointer-addition
#. have already been handled above, and so we don't end up here in
#. that case.
-#: cp/typeck.c:3676
+#: cp/typeck.c:3416
msgid "NULL used in arithmetic"
msgstr "NULL utilisé en arithmétique"
-#: cp/typeck.c:3743
+#: cp/typeck.c:3479
msgid "ISO C++ forbids using pointer of type `void *' in subtraction"
-msgstr "le C++ ISO interdit l'utilisation d'un pointeur de type « void * » dans une soustraction"
+msgstr "ISO C++ interdit l'utilisation d'un pointeur de type « void * » dans une soustraction"
-#: cp/typeck.c:3745
+#: cp/typeck.c:3481
msgid "ISO C++ forbids using pointer to a function in subtraction"
-msgstr "le C++ ISO interdit l'utilisation d'un pointeur survers une fonction dans une soustraction"
+msgstr "ISO C++ interdit l'utilisation d'un pointeur survers une fonction dans une soustraction"
-#: cp/typeck.c:3747
+#: cp/typeck.c:3483
msgid "ISO C++ forbids using pointer to a method in subtraction"
-msgstr "le C++ ISO interdit l'utilisation d'un pointeur survers une méthode dans une soustraction"
-
-#: cp/typeck.c:3749
-msgid "ISO C++ forbids using pointer to a member in subtraction"
-msgstr "le C++ ISO interdit l'utilisation d'un pointeur vers un membre dans une soustraction"
+msgstr "ISO C++ interdit l'utilisation d'un pointeur survers une méthode dans une soustraction"
-#: cp/typeck.c:3761
+#: cp/typeck.c:3495
msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
msgstr "utilisation invalide d'un pointeur vers un type incomplet dans un pointeur arithmétique"
-#: cp/typeck.c:3821
+#: cp/typeck.c:3550
#, c-format
msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id."
-msgstr ""
+msgstr "utilisation invalide de « %E » pour former pointer-to-member-function. Utiliser un identifateur qualifié"
-#: cp/typeck.c:3827
+#: cp/typeck.c:3556
#, c-format
msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function"
-msgstr ""
+msgstr "parenthèses autour de « %E » ne peuvent être utilisées pour former pointer-to-member-function"
-#: cp/typeck.c:3850
+#: cp/typeck.c:3578
msgid "taking address of temporary"
msgstr "prise de l'adresse du temporaire"
# FIXME: I18N
-#: cp/typeck.c:4091
+#: cp/typeck.c:3813
#, c-format
msgid "ISO C++ forbids %sing an enum"
-msgstr "le C++ ISO interdit de %ser un enum"
+msgstr "ISO C++ interdit de %ser un enum"
-#: cp/typeck.c:4103
+#: cp/typeck.c:3824
msgid "cannot %s a pointer to incomplete type `%T'"
msgstr "ne peut utiliser %s comme pointeur sur un type incomplet « %T »"
-#: cp/typeck.c:4110
+#: cp/typeck.c:3830
msgid "ISO C++ forbids %sing a pointer of type `%T'"
-msgstr "le C++ ISO interdit %s utilisation d'un pointeur de type « %T »"
+msgstr "ISO C++ interdit %s utilisation d'un pointeur de type « %T »"
-#: cp/typeck.c:4135
+#: cp/typeck.c:3855
msgid "cast to non-reference type used as lvalue"
msgstr "transtypage d'un type non référencé utilisé comme membre gauche"
-#: cp/typeck.c:4169
+#: cp/typeck.c:3889
msgid "invalid use of `--' on bool variable `%D'"
msgstr "utilisation invalide de «--» sur une variable booléenne « %D »"
#. ARM $3.4
-#: cp/typeck.c:4202
+#: cp/typeck.c:3920
msgid "ISO C++ forbids taking address of function `::main'"
-msgstr "le C++ ISO interdit de prendre l'adresse d'une fonction «::main»"
+msgstr "ISO C++ interdit de prendre l'adresse d'une fonction «::main»"
#. An expression like &memfn.
-#: cp/typeck.c:4269
-msgid "ISO C++ forbids taking the address of an unqualified non-static member function to form a pointer to member function. Say `&%T::%D'"
-msgstr "le C++ ISO interdit de prendre l'adress d'un membre de fonction non statique non qualifié pour former un pointeur d'un membre de fonction. Disons «&%T::%D»"
+#: cp/typeck.c:3991
+msgid "ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function. Say `&%T::%D'"
+msgstr "ISO C++ interdit de prendre l'adress d'un membre de fonction non statique non qualifié ou entre parenthèses pour former un pointeur d'un membre de fonction. Utilisers «&%T::%D»"
-#: cp/typeck.c:4271
+#: cp/typeck.c:3996
msgid "ISO C++ forbids taking the address of a bound member function to form a pointer to member function. Say `&%T::%D'"
-msgstr "le C++ ISO interdit de prendre l'adresse d'une borne d'un membre de fontion pour former un membre à la fonction. Disons «&%T::%D»"
+msgstr "ISO C++ interdit de prendre l'adresse d'une borne d'un membre de fontion pour former un membre à la fonction. Disons «&%T::%D»"
-#: cp/typeck.c:4295
+#: cp/typeck.c:4024
msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression"
-msgstr "le C++ ISO interdit de prendre l'adresse du transtypage vers une expression n'etant pas membre gauche"
+msgstr "ISO C++ interdit de prendre l'adresse du transtypage vers une expression n'etant pas membre gauche"
-#: cp/typeck.c:4324
+#: cp/typeck.c:4040
+msgid "unary `&'"
+msgstr "unaire « & »"
+
+#: cp/typeck.c:4069
msgid "attempt to take address of bit-field structure member `%D'"
msgstr "tentative de prise d'adresse du membre « %D » d'une structure de champ de bits"
-#: cp/typeck.c:4444
+#: cp/typeck.c:4183
msgid "taking address of destructor"
msgstr "prise de l'adresse du destructeur"
-#: cp/typeck.c:4457
+#: cp/typeck.c:4196
msgid "taking address of bound pointer-to-member expression"
msgstr "prise de l'adresse de la borne de l'expression d'un pointeur-vers-un membre"
-#: cp/typeck.c:4473
+#: cp/typeck.c:4204
msgid "cannot create pointer to reference member `%D'"
msgstr "ne peut déclarer un pointeur vers le membre de référence « %D »"
-#: cp/typeck.c:4536
+#: cp/typeck.c:4266
msgid "cannot take the address of `this', which is an rvalue expression"
msgstr "ne peut prendre l'adresse de « ceci », laquelle est une expression rvalue"
-#: cp/typeck.c:4555
+#: cp/typeck.c:4285
msgid "address requested for `%D', which is declared `register'"
msgstr "adresse requise pour « %D», lequel est déclaré «register »"
-#: cp/typeck.c:4682
-msgid "static_cast from type `%T' to type `%T' casts away constness"
-msgstr "static_cast du type « %T » vers le type « %T » fait un transtypage sans constante"
+#: cp/typeck.c:4353
+#, c-format
+msgid "%s expression list treated as compound expression"
+msgstr "%s liste d'expressions traitée comme une expression composée"
+
+#: cp/typeck.c:4426
+msgid "%s from type `%T' to type `%T' casts away constness"
+msgstr "%S à partir du « %T » vers le type « %T » provoque un transtypage sans constante"
-#: cp/typeck.c:4871
+#: cp/typeck.c:4618
msgid "invalid static_cast from type `%T' to type `%T'"
msgstr "static_cast invalide du type « %T » au type « %T »"
-#: cp/typeck.c:4910
+#: cp/typeck.c:4658
msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'"
msgstr "reinterpret_cast invalide d'une expression rvalue de type « %T » vers le type « %T »"
-#: cp/typeck.c:4930
+#: cp/typeck.c:4678
msgid "reinterpret_cast from `%T' to `%T' loses precision"
msgstr "reinterpret_cast de « %T » vers « %T » génère une perte de précision"
-#: cp/typeck.c:4943
-msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
-msgstr "reinterpret_cast de « %T » vers « %T » fait un transtypage écartant la constante (ou volatile)"
-
-#: cp/typeck.c:4952
+#: cp/typeck.c:4697
msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object"
-msgstr "le C++ ISO interdit le transtypage entre un pointeur de fonction et un pointeur d'objet"
+msgstr "ISO C++ interdit le transtypage entre un pointeur de fonction et un pointeur d'objet"
-#: cp/typeck.c:4958
+#: cp/typeck.c:4703
msgid "invalid reinterpret_cast from type `%T' to type `%T'"
msgstr "reinterpret_cast invalide à partir du type « %T » vers le type « %T »"
-#: cp/typeck.c:4985
+#: cp/typeck.c:4731
msgid "invalid use of const_cast with type `%T', which is not a pointer, reference, nor a pointer-to-data-member type"
msgstr "utilisation invalide de const_cast avec le type « %T », lequel n'est pas un pointeur, une référence, ni un type pointeur-vers-données-membre"
-#: cp/typeck.c:4988
+#: cp/typeck.c:4734
msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type"
msgstr "utilisation invalide de const_cast avec le type « %T », lequel est un pointeur ou un référence à un type de fonction"
-#: cp/typeck.c:5011
+#: cp/typeck.c:4757
msgid "invalid const_cast of an rvalue of type `%T' to type `%T'"
msgstr "const_cast invalide de la rvalue du type « %T » vers le type « %T »"
-#: cp/typeck.c:5027
+#: cp/typeck.c:4774
msgid "invalid const_cast from type `%T' to type `%T'"
msgstr "const_cast invalide à partir du type « %T » vers le type « %T »"
-#: cp/typeck.c:5069 cp/typeck.c:5074
+#: cp/typeck.c:4814 cp/typeck.c:4819
msgid "ISO C++ forbids casting to an array type `%T'"
-msgstr "le C++ ISO interdit le transtypage vers un type tableau « %T »"
+msgstr "ISO C++ interdit le transtypage vers un type tableau « %T »"
-#: cp/typeck.c:5082
+#: cp/typeck.c:4827
msgid "invalid cast to function type `%T'"
msgstr "transtypage invalide pour un type de fonction « %T »"
-#: cp/typeck.c:5138
+#: cp/typeck.c:4883
msgid "cast from `%T' to `%T' discards qualifiers from pointer target type"
msgstr "transtypage de « %T » vers « %T » écarte les qualificateurs du type cible du pointeur"
-#: cp/typeck.c:5184
+#: cp/typeck.c:4929
msgid "cast from `%T' to `%T' increases required alignment of target type"
msgstr "transtypage de « %T » vers « %T » augmente l'alignement requis pour le type ciblé"
-#: cp/typeck.c:5357
+#: cp/typeck.c:5093
msgid " in evaluation of `%Q(%#T, %#T)'"
-msgstr " lors de l'évaluation de «%Q(%#T, %#T)»"
+msgstr " lors de l'évaluation de « %Q(%#T, %#T) »"
-#: cp/typeck.c:5399
+#: cp/typeck.c:5135
msgid "ISO C++ forbids cast to non-reference type used as lvalue"
-msgstr "le C++ ISO interdit le transtypage d'un type non référencé utilisé comme membre gauche"
+msgstr "ISO C++ interdit le transtypage d'un type non référencé utilisé comme membre gauche"
-#: cp/typeck.c:5463
+#: cp/typeck.c:5208
msgid "incompatible types in assignment of `%T' to `%T'"
msgstr "type incompatible dans l'affectation de « %T » vers « %T »"
-#: cp/typeck.c:5470
+#: cp/typeck.c:5215
msgid "ISO C++ forbids assignment of arrays"
-msgstr "le C++ ISO interdit l'affectation de tableaux"
+msgstr "ISO C++ interdit l'affectation de tableaux"
-#: cp/typeck.c:5577
+#: cp/typeck.c:5314
msgid " in pointer to member function conversion"
msgstr " dans la conversion d'un pointeur vers un membre de fonction"
-#: cp/typeck.c:5585
+#: cp/typeck.c:5322
msgid " in pointer to member conversion"
msgstr " dans la conversion d'un pointeur vers un membre"
#. This is a reinterpret cast, we choose to do nothing.
-#: cp/typeck.c:5596 cp/typeck.c:5615
-msgid "pointer to member cast via virtual base `%T' of `%T'"
-msgstr "pointeur vers un membre transtypé via la base virtuelle « %T » de « %T »"
+#: cp/typeck.c:5332 cp/typeck.c:5347
+msgid "pointer to member cast via virtual base `%T'"
+msgstr "pointeur vers un membre transtypé via la base virtuelle « %T »"
-#: cp/typeck.c:5619
-msgid "pointer to member conversion via virtual base `%T' of `%T'"
-msgstr "conversion de pointeur à membre à l'aide de la base virtuelle « %T » vers « %T »"
+#: cp/typeck.c:5350
+msgid "pointer to member conversion via virtual base `%T'"
+msgstr "conversion de pointeur à membre à l'aide de la base virtuelle « %T »"
-#: cp/typeck.c:5695
+#: cp/typeck.c:5420
msgid "invalid conversion to type `%T' from type `%T'"
msgstr "conversion invalide vers un type « %T » à partir du type « %T »"
-#: cp/typeck.c:5860
+#: cp/typeck.c:5576
msgid "passing NULL used for non-pointer %s %P of `%D'"
msgstr "passage d'un NULL utilisé pour un non pointeur %s %P de « %D »"
-#: cp/typeck.c:5863
+#: cp/typeck.c:5579
msgid "%s to non-pointer type `%T' from NULL"
msgstr "%s vers un type non pointeur « %T » à partir d'un NULL"
-#: cp/typeck.c:5871
+#: cp/typeck.c:5587
msgid "passing `%T' for %s %P of `%D'"
msgstr "passage « %T » pour %s %P de « %D »"
-#: cp/typeck.c:5874
+#: cp/typeck.c:5590
msgid "%s to `%T' from `%T'"
msgstr "%s vers « %T » à partir de « %T »"
-#: cp/typeck.c:5884
+#: cp/typeck.c:5600
msgid "passing negative value `%E' for %s %P of `%D'"
msgstr "passage de valeur négative « %E » pour %s %P de « %D »"
-#: cp/typeck.c:5887
+#: cp/typeck.c:5603
msgid "%s of negative value `%E' to `%T'"
msgstr "%s de valeur négative « %E » vers « %T »"
-#: cp/typeck.c:5982
+#: cp/typeck.c:5691
msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'"
msgstr "ne peut convertir « %T » à « %T » pour l'argument « %P » vers « %D »"
-#: cp/typeck.c:5985
+#: cp/typeck.c:5694
msgid "cannot convert `%T' to `%T' in %s"
msgstr "ne peut convertir « %T » vers « %T » dans %s"
-#: cp/typeck.c:6073 cp/typeck.c:6075
+#: cp/typeck.c:5771 cp/typeck.c:5773
msgid "in passing argument %P of `%+D'"
-msgstr "dans le passage de l'argument %P de «%+D»"
+msgstr "dans le passage de l'argument %P de « %+D »"
-#: cp/typeck.c:6190
+#: cp/typeck.c:5880
msgid "returning reference to temporary"
msgstr "retourné la référence vers le temporaire"
-#: cp/typeck.c:6197
+#: cp/typeck.c:5887
msgid "reference to non-lvalue returned"
msgstr "une référence vers quelque chose n'étant pas un membre gauche a été retourné"
-#: cp/typeck.c:6209
+#: cp/typeck.c:5899
msgid "reference to local variable `%D' returned"
msgstr "référence vers une variable locale « %D » retourné"
-#: cp/typeck.c:6212
+#: cp/typeck.c:5902
msgid "address of local variable `%D' returned"
msgstr "adresse d'une variable locale « %D » retournée"
-#: cp/typeck.c:6243
+#: cp/typeck.c:5932
msgid "returning a value from a destructor"
msgstr "retourné une valeur du destructeur"
#. If a return statement appears in a handler of the
#. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.c:6251
+#: cp/typeck.c:5940
msgid "cannot return from a handler of a function-try-block of a constructor"
msgstr "ne peut retourner d'un handler d'une fonction try-block d'un constructeur"
#. You can't return a value from a constructor.
-#: cp/typeck.c:6254
+#: cp/typeck.c:5943
msgid "returning a value from a constructor"
msgstr "retourné une valeur d'un constructeur"
-#: cp/typeck.c:6271
-msgid "return-statement with no value, in function declared with a non-void return type"
-msgstr "déclaration d'un retour sans valeur, dans la fonction déclarée avec un type retourné non void"
+#: cp/typeck.c:5966
+msgid "return-statement with no value, in function returning '%T'"
+msgstr "déclaration à retourner sans valeur dans une fonction retournant « %T »"
-#: cp/typeck.c:6287
-msgid "return-statement with a value, in function declared with a void return type"
-msgstr "déclaration d'un retour sans valeur, dans la fonction déclarée avec un type retourné void"
+#: cp/typeck.c:5983
+msgid "return-statement with a value, in function returning 'void'"
+msgstr "déclaration éa retourner avec une valeur dans une fonction retournant un « void »"
-#: cp/typeck.c:6308
+#: cp/typeck.c:6005
msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)"
msgstr "« operator new» ne doit pas retourner NULL à moins qu'il ne soit déclaré «throw() » (ou -fcheck-new est utilisée)"
-#: cp/typeck2.c:54
+#: cp/typeck2.c:55
msgid "type `%T' is not a base type for type `%T'"
msgstr "type « %T » n'est pas un type de base pour le type « %T »"
-#: cp/typeck2.c:157
+#: cp/typeck2.c:151
msgid "cannot declare variable `%D' to be of type `%T'"
msgstr "ne peut déclarer la variable « %D » comme étant de type « %T »"
-#: cp/typeck2.c:160
+#: cp/typeck2.c:154
msgid "cannot declare parameter `%D' to be of type `%T'"
msgstr "ne peut déclarer la paramètre « %D » comme étant de type « %T »"
-#: cp/typeck2.c:163
+#: cp/typeck2.c:157
msgid "cannot declare field `%D' to be of type `%T'"
msgstr "ne peut déclarer la champ « %D » comme étant de type « %T »"
-#: cp/typeck2.c:167
+#: cp/typeck2.c:161
msgid "invalid return type for member function `%#D'"
-msgstr "type retourné invalide pour le membre de la fonction «%#D»"
+msgstr "type retourné invalide pour le membre de la fonction « %#D »"
-#: cp/typeck2.c:169
+#: cp/typeck2.c:163
msgid "invalid return type for function `%#D'"
-msgstr "type retourné invalide pour la fonction «%#D»"
+msgstr "type retourné invalide pour la fonction « %#D »"
-#: cp/typeck2.c:172
+#: cp/typeck2.c:166
msgid "cannot allocate an object of type `%T'"
msgstr "ne peut allouer un objet de type « %T »"
-#: cp/typeck2.c:179
+#: cp/typeck2.c:173
msgid " because the following virtual functions are abstract:"
msgstr " parce que les fonctions viruelles suivantes sont abstraites:"
-#: cp/typeck2.c:181
+#: cp/typeck2.c:175
msgid "\t%#D"
msgstr "\t%#D"
-#: cp/typeck2.c:184
+#: cp/typeck2.c:178
msgid " since type `%T' has abstract virtual functions"
msgstr " depuis que le type « %T » a des fonctions virtuelles abstraites"
-#: cp/typeck2.c:338
+#: cp/typeck2.c:426
msgid "constructor syntax used, but no constructor declared for type `%T'"
msgstr "syntaxe de constructeur utilisé mais aucun constructeur déclaré pour le type « %T »"
-#: cp/typeck2.c:349
-msgid "comma expression used to initialize return value"
-msgstr "expression virgule utilsée pour initialiser la valeur de retour"
-
-#: cp/typeck2.c:358
+#: cp/typeck2.c:439
msgid "cannot initialize arrays using this syntax"
msgstr "ne peut initialiser les tableaux en utilisant la syntaxe"
-#: cp/typeck2.c:473
+#: cp/typeck2.c:544
msgid "initializing array with parameter list"
msgstr "initialise le tableau avec la liste des paramètres"
-#: cp/typeck2.c:529
+#: cp/typeck2.c:599
msgid "initializer for scalar variable requires one element"
msgstr "l'initialisation de variable scalaire requiert un élément"
-#: cp/typeck2.c:536
+#: cp/typeck2.c:606
msgid "braces around scalar initializer for `%T'"
msgstr "accolades autour de l'initialiseur scalaire pour « %T »"
-#: cp/typeck2.c:539
+#: cp/typeck2.c:609
msgid "ignoring extra initializers for `%T'"
msgstr "initialiseurs superflus pour « %T » ignorés"
-#: cp/typeck2.c:551
+#: cp/typeck2.c:621
msgid "variable-sized object of type `%T' may not be initialized"
msgstr "un objet de taille variable de type « %T » peut ne pas être initialisé"
-#: cp/typeck2.c:561
+#: cp/typeck2.c:631
msgid "subobject of type `%T' must be initialized by constructor, not by `%E'"
msgstr "sous-objet de type « %T » doit être initialisé par un constructeur, non pas par « %E »"
-#: cp/typeck2.c:627
+#: cp/typeck2.c:696
msgid "aggregate has a partly bracketed initializer"
msgstr "aggrégat a un initialiseur partiellement entouré d'accolades"
-#: cp/typeck2.c:665 cp/typeck2.c:770
+#: cp/typeck2.c:734 cp/typeck2.c:839
msgid "non-trivial labeled initializers"
msgstr "initialiseur étiqueté de manière non trivial"
-#: cp/typeck2.c:682
+#: cp/typeck2.c:751
msgid "non-empty initializer for array of empty elements"
msgstr "initialiseurs non vides pour un tableau d'éléments vides"
-#: cp/typeck2.c:736
+#: cp/typeck2.c:805
msgid "initializer list for object of class with virtual base classes"
msgstr "liste d'initialiseurs pour les objets de classe avec classes de base virtuelles"
-#: cp/typeck2.c:742
+#: cp/typeck2.c:811
msgid "initializer list for object of class with base classes"
msgstr "liste d'initialiseurs pour les objets de classe avec classes de base"
-#: cp/typeck2.c:748
+#: cp/typeck2.c:817
msgid "initializer list for object using virtual functions"
msgstr "liste d'initialiseurs pour objet utilisant des fonctions virtuelles"
-#: cp/typeck2.c:811 cp/typeck2.c:827
+#: cp/typeck2.c:879 cp/typeck2.c:895
msgid "missing initializer for member `%D'"
msgstr "initialiseur manquant pour le membre « %D »"
-#: cp/typeck2.c:816
+#: cp/typeck2.c:884
msgid "uninitialized const member `%D'"
msgstr "membre de constante non initialisé pour « %D »"
-#: cp/typeck2.c:818
+#: cp/typeck2.c:886
msgid "member `%D' with uninitialized const fields"
msgstr "membre « %D » avec des champs de constantes non initialisée"
-#: cp/typeck2.c:821
+#: cp/typeck2.c:889
msgid "member `%D' is uninitialized reference"
msgstr "membre « %D » est une référence non initialisée"
-#: cp/typeck2.c:868
+#: cp/typeck2.c:936
msgid "index value instead of field name in union initializer"
msgstr "valeur index au lieu du nom de champ dans l'initialiseur d'union"
-#: cp/typeck2.c:880
+#: cp/typeck2.c:948
msgid "no field `%D' in union being initialized"
msgstr "pas de champ « %D » dans l'aggrégat n'a été initialisé"
-#: cp/typeck2.c:888
+#: cp/typeck2.c:956
msgid "union `%T' with no named members cannot be initialized"
msgstr "aggrégat « %T » sans mambre nommé ne peut être initialisé"
-#: cp/typeck2.c:924
+#: cp/typeck2.c:992
msgid "excess elements in aggregate initializer"
msgstr "éléments en excès dans l'initialiseur d'aggrégat"
-#: cp/typeck2.c:1038
+#: cp/typeck2.c:1100
msgid "circular pointer delegation detected"
msgstr "délégation de pointeur circulaire détecté"
-#: cp/typeck2.c:1051
+#: cp/typeck2.c:1113
msgid "base operand of `->' has non-pointer type `%T'"
msgstr "l'opérande de base de «->» a un type non pointeur « %T »"
-#: cp/typeck2.c:1065
+#: cp/typeck2.c:1137
msgid "result of `operator->()' yields non-pointer result"
msgstr "résultat de « operator->() » laisse comme résultat un non pointeur"
-#: cp/typeck2.c:1067
+#: cp/typeck2.c:1139
msgid "base operand of `->' is not a pointer"
msgstr "l'opérande de base de «->» n'est pas un pointeur"
-#: cp/typeck2.c:1133
+#: cp/typeck2.c:1162
msgid "`%E' cannot be used as a member pointer, since it is of type `%T'"
msgstr "« %E » ne peut être utilisé comme pointeur de membre, alors qu'il est de type « %T »"
-#: cp/typeck2.c:1140
+#: cp/typeck2.c:1170
msgid "cannot apply member pointer `%E' to `%E', which is of non-aggregate type `%T'"
msgstr "ne peut appliquer un pointeur de membre « %E » à « %E », lequel n'est pas un type d'aggrégat « %T »"
-#: cp/typeck2.c:1149
+#: cp/typeck2.c:1180
msgid "member type `%T::' incompatible with object type `%T'"
-msgstr "type du membre «%T::» incompatible avec le type d'objet « %T »"
-
-#: cp/typeck2.c:1186
-msgid "`%T' fails to be a typedef or built-in type"
-msgstr "« %T » a échoué à devenir un typedef ou un type construit interne"
-
-#: cp/typeck2.c:1259
-#, c-format
-msgid "ISO C++ forbids defining types within %s"
-msgstr "le C++ ISO interdit la définition de types à l'intérieur de %s"
+msgstr "type du membre « %T:: » incompatible avec le type d'objet « %T »"
-#: cp/typeck2.c:1384
-#, fuzzy
+#: cp/typeck2.c:1396
msgid "call to function `%D' which throws incomplete type `%#T'"
-msgstr "ne peut utiliser %s comme pointeur sur un type incomplet « %T »"
+msgstr "l'appel à la fonction « %D » laquelle écarte le type incomplet « %T »"
-#: cp/typeck2.c:1387
-#, fuzzy
+#: cp/typeck2.c:1399
msgid "call to function which throws incomplete type `%#T'"
-msgstr "ne peut utiliser %s comme pointeur sur un type incomplet « %T »"
+msgstr "l'appel à la fonction laquelle écarte le type incomplet « %T »"
#. XXX Not i18n clean.
-#: cp/cp-tree.h:3936
+#: cp/cp-tree.h:3756
#, c-format
msgid "%s is deprecated, please see the documentation for details"
msgstr "%s est déprécié, SVP voir la documentation pour les détails"
-#: cp/lang-options.h:29
-msgid "Do not obey access control semantics"
-msgstr "Ne pas obéir à la sémantique du contrôle d'accès"
-
-#: cp/lang-options.h:31
-msgid "Change when template instances are emitted"
-msgstr "Changer lorsque les instances du patron sont produites"
-
-#: cp/lang-options.h:36
-msgid "Check the return value of new"
-msgstr "Vérifier la valeur retournée de new"
-
-#: cp/lang-options.h:39
-msgid "Reduce size of object files"
-msgstr "Réduire la taille des fichiers objets"
-
-#: cp/lang-options.h:43
-msgid "Make string literals `char[]' instead of `const char[]'"
-msgstr "Rendre les chaînes de mots « char[] » au lieu de «const char[]'"
-
-#: cp/lang-options.h:46
-msgid "Dump the entire translation unit to a file"
-msgstr "Vidanger l'unité de traduction complète dans un fichier"
-
-#: cp/lang-options.h:48
-msgid "Do not inline member functions by default"
-msgstr "Ne pas rendre en ligne un membre de fonction par défaut"
-
-#: cp/lang-options.h:51
-msgid "Do not generate run time type descriptor information"
-msgstr "Ne pas générer l'information pour un type de descripteur pour l'exécution"
-
-#: cp/lang-options.h:56
-msgid "Do not generate code to check exception specifications"
-msgstr "Ne pas générer du code pour vérifier les exceptions spécifiques"
-
-#: cp/lang-options.h:61
-msgid "Scope of for-init-statement vars extends outside"
-msgstr "Champs de variables for-init-statement s'étend en dehors"
-
-#: cp/lang-options.h:64
-msgid "Do not recognize GNU defined keywords"
-msgstr "Ne pas reconnaître les mots clés définis GNU"
-
-#: cp/lang-options.h:68
-msgid "Enable support for huge objects"
-msgstr "Autoriser le support des grands objets"
-
-#: cp/lang-options.h:72
-msgid "Export functions even if they can be inlined"
-msgstr "Exporter les fonctions même si elles peuvent être inline"
-
-#: cp/lang-options.h:75
-#, fuzzy
-msgid "Only emit explicit template instantiations"
-msgstr "Produire seulement des instanciations explicites du patron"
-
-#: cp/lang-options.h:78
-#, fuzzy
-msgid "Only emit explicit instantiations of inline templates"
-msgstr "Produire les instanciations explicites de patrons en ligne"
-
-#: cp/lang-options.h:84
-msgid "Don't pedwarn about uses of Microsoft extensions"
-msgstr "Ne pas avertir et publiciser l'utilisation des extensions de Microsoft"
-
-#: cp/lang-options.h:87
-msgid "Recognize and/bitand/bitor/compl/not/or/xor"
-msgstr "Reconnaître and/bitand/bitor/compl/not/or/xor"
-
-#: cp/lang-options.h:91
-msgid "Disable optional diagnostics"
-msgstr "Désactiver les diagnostiques optionnels"
-
-#: cp/lang-options.h:93
-msgid "Downgrade conformance errors to warnings"
-msgstr "Dégrader les erreurs de conformité en des avertissements"
-
-#: cp/lang-options.h:96
-msgid "Enable automatic template instantiation"
-msgstr "Autoriser l'instanciation automatique de patron"
-
-#: cp/lang-options.h:101
-msgid "Display statistics accumulated during compilation"
-msgstr "Afficher les statistiques accumulés durant la compilation"
-
-#: cp/lang-options.h:104
-msgid "Specify maximum template instantiation depth"
-msgstr "Spécifier la profondeur maximale d'instanciation de patrons"
-
-#: cp/lang-options.h:106
-msgid "Use __cxa_atexit to register destructors"
-msgstr "Utiliser « __cxa_atexit » pour enregistrer les destructeurs."
-
-#: cp/lang-options.h:109
-msgid "Discard unused virtual functions"
-msgstr "Écarter les fonctions virtuelles non utilisées"
-
-#: cp/lang-options.h:112
-msgid "Implement vtables using thunks"
-msgstr "Implanter les vtables en utilisant des thunks"
-
-#: cp/lang-options.h:115
-msgid "Emit common-like symbols as weak symbols"
-msgstr "Produire les symboles communs comme des symboles faibles"
-
-#: cp/lang-options.h:118
-msgid "Emit cross referencing information"
-msgstr "Produire l'information des références croisées"
-
-#: cp/lang-options.h:122
-msgid "Warn about inconsistent return types"
-msgstr "Avertir à propos des types retournés inconsistants"
-
-#: cp/lang-options.h:125
-msgid "Warn about overloaded virtual function names"
-msgstr "Avertir à propos de la surcharge des noms de fonctions virtuelles"
-
-#: cp/lang-options.h:129
-msgid "Don't warn when all ctors/dtors are private"
-msgstr "Ne pas avertir lorsque toues les ctors/dtors sont privés"
-
-#: cp/lang-options.h:131
-msgid "Warn about non virtual destructors"
-msgstr "Avertir à propos des destructeurs non virtuels"
-
-#: cp/lang-options.h:134
-msgid "Warn when a function is declared extern, then inline"
-msgstr "Avertir lorsqu'un fonction est déclarée extern, puis inline"
-
-#: cp/lang-options.h:137
-msgid "Warn when the compiler reorders code"
-msgstr "Avertir lorsque le compilateur réordonne le code"
-
-#: cp/lang-options.h:140
-msgid "Warn when synthesis behavior differs from Cfront"
-msgstr "Avertir lorsque le comportement de synthère diffère de Cfront"
-
-#: cp/lang-options.h:144
-msgid "Don't warn when type converting pointers to member functions"
-msgstr "Ne pas avertir lors de la conversion des types de pointeur en membres de fonctions"
-
-#: cp/lang-options.h:146
-msgid "Warn about violations of Effective C++ style rules"
-msgstr "Avertir à propos des violations des règles de style de Effective C++"
-
-#: cp/lang-options.h:149
-msgid "Warn when overload promotes from unsigned to signed"
-msgstr "Avertir lorsque la surcharge fait la promotion d'un non signé en signé"
-
-#: cp/lang-options.h:152
-msgid "Warn if a C style cast is used in a program"
-msgstr "Avertir si le style de transtypage C est utilisé dans un programme"
-
-#: cp/lang-options.h:156
-msgid "Don't warn when non-templatized friend functions are declared within a template"
-msgstr "Ne pas avertir lorsque des fonctions amis sans patron sont déclarés à l'intérieur d'un patron"
-
-#: cp/lang-options.h:159
-msgid "Don't announce deprecation of compiler features"
-msgstr "Ne pas annoncer la dépréciation des options du compilateur"
-
-#: f/bad.c:387
+#: f/bad.c:388
msgid "note:"
msgstr "note :"
-#: f/bad.c:391
+#: f/bad.c:392
msgid "warning:"
msgstr "avertissement :"
-#: f/bad.c:395
+#: f/bad.c:396
msgid "fatal:"
msgstr "fatal :"
-#: f/bad.c:437
+#: f/bad.c:438
msgid "(continued):"
msgstr "(suite) :"
-#: f/bad.c:487 f/bad.c:505
+#: f/bad.c:488 f/bad.c:506
msgid "[REPORT BUG!!] %"
msgstr "[RAPPORTER L'ANOMALIE!!] %"
-#: f/bad.c:494 f/bad.c:526
+#: f/bad.c:495 f/bad.c:527
msgid "[REPORT BUG!!]"
msgstr "[RAPPORTER L'ANOMALIE!!]"
-#: f/com.c:3132
+#: f/com.c:3125
#, no-c-format
msgid "ASSIGN'ed label cannot fit into `%A' at %0 -- using wider sibling"
msgstr "l'étiquette affectée ne peut s'insérer dans « %A » à %0 - utilisation d'un voisinage plus grand"
-#: f/com.c:11623
+#: f/com.c:11565
msgid "no INTEGER type can hold a pointer on this configuration"
msgstr "AUCUN type ENTIER ne peut tenir un pointeur sur cette configuration"
-#: f/com.c:11844
+#: f/com.c:11839
#, c-format
msgid "configuration: REAL, INTEGER, and LOGICAL are %d bits wide,"
msgstr "configuration : REAL, INTEGER, et LOGICAL ont %d bits,"
-#: f/com.c:11846
+#: f/com.c:11841
#, c-format
msgid "and pointers are %d bits wide, but g77 doesn't yet work"
msgstr "et les pointeurs ont %d bits, mais g77 ne fonctionne pas encore"
-#: f/com.c:11848
+#: f/com.c:11843
msgid "properly unless they all are 32 bits wide"
msgstr "correctement à moins qu'ils aient tous 32 bits de largeur"
-#: f/com.c:11849
+#: f/com.c:11844
msgid "Please keep this in mind before you report bugs."
msgstr "SVP garder cela en tête avant de rapporter les anomalies."
#. I/O will probably crash.
-#: f/com.c:11857
+#: f/com.c:11852
#, c-format
msgid "configuration: char * holds %d bits, but ftnlen only %d"
msgstr "configuration: char * contient %d bits, mais ftnlen seulement %d"
#. ASSIGN 10 TO I will crash.
-#: f/com.c:11866
+#: f/com.c:11861
#, c-format
msgid ""
"configuration: char * holds %d bits, but INTEGER only %d --\n"
@@ -18537,68 +17398,65 @@ msgstr ""
"configuration: char * contient %d bits, mais INTEGER seulement %d --\n"
" déclaration ASSIGN pourrait échouer"
-#: f/com.c:13681
+#: f/com.c:13677
msgid "In statement function"
msgstr "Dans la déclaration de fonction"
-#: f/com.c:13691
+#: f/com.c:13687
+#, c-format
msgid "Outside of any program unit:\n"
msgstr "En dehors de toute unité de programme:\n"
-#: f/com.c:15320
+#: f/com.c:15283
#, no-c-format
msgid "%A from %B at %0%C"
msgstr "%A à partir de %B à %0%C"
-#: f/com.c:15497
-msgid "directory name must immediately follow -I"
-msgstr "nom du répertoire doit suivre immédiatement -I"
-
-#: f/com.c:15640
+#: f/com.c:15593
#, no-c-format
msgid "At %0, INCLUDE file %A exists, but is not readable"
msgstr "À %0, fichier INCLUDE %A existe mais n'est pas lisible"
-#: f/com.c:15675
+#: f/com.c:15628
#, no-c-format
msgid "At %0, INCLUDE nesting too deep"
msgstr "À %0, imbrication du INCLUDE est trop profonde"
-#: f/expr.c:9614
+#: f/expr.c:8706
#, no-c-format
msgid "Two arithmetic operators in a row at %0 and %1 -- use parentheses"
msgstr "Deux opérateurs arithmétiques dans la rangée à %0 et %1 -- utiliser des parenthèses"
-#: f/expr.c:9664
+#: f/expr.c:8756
#, no-c-format
msgid "Operator at %0 has lower precedence than that at %1 -- use parentheses"
msgstr "L'opérateur à %0 a une précédence plus basse que celui à %1 -- utiliser des parenthèses"
-#: f/expr.c:10525
+#: f/expr.c:9639
#, no-c-format
msgid "Use .EQV./.NEQV. instead of .EQ./.NE. at %0 for LOGICAL operands at %1 and %2"
msgstr "Utiliser .EQV./.NEQV. au lieu de .EQ./.NE. à %0 pour les opérandes LOGICAL à %1 et %2"
-#: f/expr.c:10896
+#: f/expr.c:10010
#, no-c-format
msgid "Unsupported operand for ** at %1 -- converting to default INTEGER"
msgstr "Opérande non supportée pour ** à %1 -- conversion à INTEGER par défaut"
-#: f/g77spec.c:234
+#: f/g77spec.c:230
#, c-format
msgid "overflowed output arg list for `%s'"
msgstr "débordement de la liste d'arguments de sortie pour « %s »"
-#: f/g77spec.c:373
+#: f/g77spec.c:367
msgid "--driver no longer supported"
msgstr "--driver n'est plus supporté"
-#: f/g77spec.c:386
+#: f/g77spec.c:380
#, c-format
msgid "argument to `%s' missing"
msgstr "argument pour « %s » est manquant"
-#: f/g77spec.c:390
+#: f/g77spec.c:384
msgid "no input files; unwilling to write output files"
msgstr "aucun fichier d'entrée; pas d'accord pour écrire dans les fichiers de sortie"
@@ -18607,131 +17465,126 @@ msgstr "aucun fichier d'entrée; pas d'accord pour écrire dans les fichiers de so
msgid "Implicit declaration of `%A' at %0"
msgstr "déclaration implicite de « %A » à %0"
-#: f/lex.c:326
+#: f/lex.c:321
#, no-c-format
msgid "Non-ISO-C-standard escape sequence `\\%A' at %0"
-msgstr "séquence d'échappement non conforme au standard C ISO «\\%A» à %0"
+msgstr "séquence d'échappement non conforme au standard ISO C «\\%A» à %0"
-#: f/lex.c:345
+#: f/lex.c:340
#, no-c-format
msgid "Unknown escape sequence `\\%A' at %0"
msgstr "séquence d'échappement inconnue «\\%A» à %0"
-#: f/lex.c:354
+#: f/lex.c:349
#, no-c-format
msgid "Unterminated escape sequence `\\' at %0"
msgstr "séquence d'échappement non terminée «\\» at %0"
-#: f/lex.c:365
+#: f/lex.c:360
#, no-c-format
msgid "Unknown escape sequence `\\' followed by char code 0x%A at %0"
msgstr "séquence d'échappement inconnue «\\» suivi par le code de caractères 0x%A at %0"
-#: f/lex.c:393
+#: f/lex.c:388
#, no-c-format
msgid "\\x used at %0 with no following hex digits"
msgstr "\\x utilisé à %0 sans être suivi des chiffres hexdécimaux"
-#: f/lex.c:407
+#: f/lex.c:402
#, no-c-format
msgid "Hex escape at %0 out of range"
-msgstr "échappement hexadécimal à %0 hors gamme"
+msgstr "échappement hexadécimal à %0 hors limite"
-#: f/lex.c:441
+#: f/lex.c:436
#, no-c-format
msgid "Escape sequence at %0 out of range for character"
-msgstr "séquence d'échappement à %0 hors gamme pour le type caractère"
+msgstr "séquence d'échappement à %0 hors limite pour le type caractère"
-#: f/lex.c:595
+#: f/lex.c:590
msgid "hex escape out of range"
-msgstr "échappement hexadécimal hors gamme"
+msgstr "échappement hexadécimal hors limite"
-#: f/lex.c:648
+#: f/lex.c:643
#, c-format
msgid "non-ANSI-standard escape sequence, `\\%c'"
msgstr "séquence d'échappement n'est pas ANSI standard: «\\%c'"
-#: f/lex.c:661
+#: f/lex.c:656
#, c-format
msgid "non-ISO escape sequence `\\%c'"
msgstr "séquence d'échappement non ISO «\\%c'"
-#: f/lex.c:665
+#: f/lex.c:660
#, c-format
msgid "unknown escape sequence `\\%c'"
msgstr "séquence d'échappement inconnue: «\\%c'"
-#: f/lex.c:667
+#: f/lex.c:662
#, c-format
msgid "unknown escape sequence: `\\' followed by char code 0x%x"
msgstr "séquence d'échappement inconnue: «\\» suivi par le code de caractères 0x%x"
-#: f/lex.c:744
+#: f/lex.c:739
msgid "badly formed directive -- no closing quote"
msgstr "directive mal composée -- pas de guillement ou d'apostrophe de fermeture"
-#: f/lex.c:802
+#: f/lex.c:797
msgid "#-lines for entering and leaving files don't match"
msgstr "#-lines pour entrer et quitter les fichiers ne concordent pas"
-#: f/lex.c:964
+#: f/lex.c:957
msgid "bad directive -- missing close-quote"
msgstr "directive erronée -- manque un apostrophe ou un guillemet de fermeture"
-#: f/lex.c:1078
-#, c-format
-msgid "ignoring pragma: %s"
-msgstr "pragma: %s ignoré"
-
-#: f/lex.c:1156
+#: f/lex.c:1096
msgid "invalid #ident"
msgstr "#ident invalide"
-#: f/lex.c:1173
+#: f/lex.c:1113
msgid "undefined or invalid # directive"
msgstr "directive # non définie ou invalide"
-#: f/lex.c:1229
+#: f/lex.c:1168
msgid "invalid #line"
msgstr "#line invalide"
-#: f/lex.c:1285 f/lex.c:1329
+#: f/lex.c:1224 f/lex.c:1268
msgid "use `#line ...' instead of `# ...' in first line"
msgstr "utiliser « #line ... » au lieu de « # ... » dans la première ligne"
-#: f/lex.c:1339
+#: f/lex.c:1278
msgid "invalid #-line"
msgstr "#-line invalide"
-#: f/lex.c:1432
+#: f/lex.c:1371
#, no-c-format
msgid "Null character at %0 -- line ignored"
msgstr "caractère null à %0 -- ligne ignorée"
-#: f/stb.c:12078
+#: f/stb.c:9177
#, no-c-format
msgid "INCLUDE at %0 not the only statement on the source line"
msgstr "INCLUDE à %0 n'est pas la seule déclaration sur la ligne source"
-#: f/ste.c:1400 f/ste.c:1747
+#: f/ste.c:1397 f/ste.c:1744
msgid "ASSIGNed FORMAT specifier is too small"
msgstr "spécificateur dans ASSIGN FORMAT est trop petit"
#. ~~~Someday handle CHARACTER*1, CHARACTER*N
-#: f/ste.c:2624
+#: f/ste.c:2621
#, no-c-format
msgid "SELECT CASE on CHARACTER type (at %0) not supported -- sorry"
msgstr "SÉLECTION du CASE sur un type CHARACTER (à %0) n'est pas supporté -- désolé"
-#: f/ste.c:2729
+#: f/ste.c:2725
msgid "SELECT (at %0) has duplicate cases -- check integer overflow of CASE(s)"
-msgstr ""
+msgstr "SELECT (à %0) possède des cases doubles -- vérifier le débordement d'entier des CASES"
-#: f/ste.c:2959
+#: f/ste.c:2957
msgid "ASSIGN to variable that is too small"
msgstr "ASSIGN à la variable est trop petit"
-#: f/ste.c:2987
+#: f/ste.c:2989
msgid "ASSIGNed GOTO target variable is too small"
msgstr "variable cible par ASSIGN GOTO est trop petite"
@@ -18740,332 +17593,21 @@ msgstr "variable cible par ASSIGN GOTO est trop petite"
msgid "Local adjustable symbol `%A' at %0"
msgstr "Symbole local ajustable « %A » à %0"
-#: f/target.c:2550
+#: f/target.c:2545
msgid "data initializer on host with different endianness"
msgstr "initialiseur de données sur l'hôte a un alignement des octets différent (endian)"
-#: f/top.c:237
-#, c-format
-msgid "%s no longer supported -- try -fvxt"
-msgstr "%s n'est plus supporté -- essayer -fvxt"
-
-#: f/top.c:239
-#, c-format
-msgid "%s no longer supported -- try -fno-vxt -ff90"
-msgstr "%s n'est plus supporté -- essayer -fno-vxt -ff90"
-
-#: f/top.c:307 f/top.c:309
-#, c-format
-msgid "%s disabled, use normal debugging flags"
-msgstr "%s désactivé, utiliser le fanion normal de mise au point"
-
-#: f/lang-options.h:33
-msgid "Print g77-specific compiler version info, run internal tests"
-msgstr "Afficher les informations de version du compilateur g77-specific, exécuter les tests internes"
-
-#: f/lang-options.h:37
-msgid "Program is written in typical FORTRAN 66 dialect"
-msgstr "Programme est écrit dans un dialecte typique FORTRAN 66"
-
-#: f/lang-options.h:40
-msgid "Program is written in typical Unix f77 dialect"
-msgstr "Programme est écrit dans un dialecte typique Unix f77"
-
-#: f/lang-options.h:42
-msgid "Program does not use Unix-f77 dialectal features"
-msgstr "Programme n'utilise pas les options du dialecte Unix f77"
-
-#: f/lang-options.h:44
-msgid "Program is written in Fortran-90-ish dialect"
-msgstr "Programme est écrit dans un dialecte Fortran 90"
-
-#: f/lang-options.h:48
-msgid "Treat local vars and COMMON blocks as if they were named in SAVE statements"
-msgstr "Traiter les var. locales et les blocs COMMON tel que s'ils étaient nommés dans une déclaration SAVE"
-
-#: f/lang-options.h:50
-msgid "Allow $ in symbol names"
-msgstr "Permettre $ dans les noms de symboles"
-
-#: f/lang-options.h:54
-msgid "f2c-compatible code need not be generated"
-msgstr "code f2c compatible n'a pas besoin d'être généré"
-
-#: f/lang-options.h:57
-msgid "Unsupported; do not generate libf2c-calling code"
-msgstr "Non supporté; ne pas générer le code d'appel libf2c"
-
-#: f/lang-options.h:59
-msgid "Unsupported; affects code-generation of arrays"
-msgstr "Non supporté; affecte la génération de code des tableaux"
-
-#: f/lang-options.h:62
-msgid "Program is written in Fortran-90-ish free form"
-msgstr "Programme est écrit dans un style libre Fortran 90"
-
-#: f/lang-options.h:67
-msgid "Warn about use of (only a few for now) Fortran extensions"
-msgstr "Avertir à propos de l'utilisation (très peu pour l'instant) des extensions Fortran"
-
-#: f/lang-options.h:70
-msgid "Program is written in VXT (Digital-like) FORTRAN"
-msgstr "Programme est écrit en Fortran VXT (forme de Digital)"
-
-#: f/lang-options.h:73
-msgid "Disallow all ugly features"
-msgstr "Désactiver toutes les options laides"
-
-#: f/lang-options.h:76
-msgid "Hollerith and typeless constants not passed as arguments"
-msgstr "Les constantes Hollerith et sans type ne sont pas passés comme arguments"
-
-#: f/lang-options.h:78
-msgid "Allow ordinary copying of ASSIGN'ed vars"
-msgstr "Permettre le copie ordinaire des variable affectées"
-
-#: f/lang-options.h:81
-msgid "Dummy array dimensioned to (1) is assumed-size"
-msgstr "Tableau factice dont la taille des dimensions (1) est assumée"
-
-#: f/lang-options.h:84
-msgid "Trailing comma in procedure call denotes null argument"
-msgstr "Virgule de fin dans l'appel de la procédure dénote un argument nul"
-
-#: f/lang-options.h:87
-msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
-msgstr "Permettre REAL(Z) et AIMAG(Z) pour les DOUBLE COMPLEX Z"
-
-#: f/lang-options.h:91
-msgid "Initialization via DATA and PARAMETER is type-compatible"
-msgstr "Initialisation via DATA et PARAMETER est un de types compatibles"
-
-#: f/lang-options.h:93
-msgid "Allow INTEGER and LOGICAL interchangeability"
-msgstr "Permettre l'interchangeabilité de INTEGER et LOGICAL"
-
-#: f/lang-options.h:96
-msgid "Print internal debugging-related info"
-msgstr "Afficher les informations internes reliées à la mise au point"
+#: f/top.c:244
+msgid "-fvxt-not-f90 no longer supported -- try -fvxt"
+msgstr "-fvxt-not-f90 n'est plus supporté -- essayer -fvxt"
-#: f/lang-options.h:99
-msgid "Initialize local vars and arrays to zero"
-msgstr "Initialiser les vars locales et les tableaux à zéro"
+#: f/top.c:248
+msgid "-ff90-not-vxt no longer supported -- try -fno-vxt -ff90"
+msgstr "-ff90-not-vxt n'est plus supporté -- essayer -fno-vxt -ff90"
-#: f/lang-options.h:103
-msgid "Backslashes in character/hollerith constants not special (C-style)"
-msgstr "Barres obliques inverses dans les constantes caractères/hollerith ne sont pas particulières (style C)"
-
-#: f/lang-options.h:105
-msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
-msgstr "Avoir un frontal d'émulation pour l'arithmétique COMPLEXE pour éviter les bugs"
-
-#: f/lang-options.h:109
-msgid "Disable the appending of underscores to externals"
-msgstr "Désactiver l'ajout de caractères de soulignement aux externes"
-
-#: f/lang-options.h:112
-msgid "Never append a second underscore to externals"
-msgstr "Ne jamais ajouter un second caractères de soulignement aux externes"
-
-#: f/lang-options.h:114
-msgid "Intrinsics spelled as e.g. SqRt"
-msgstr "Intrinsèques épellées tel que SqRt"
-
-#: f/lang-options.h:116
-msgid "Intrinsics in uppercase"
-msgstr "Intrinsèques en majuscules"
-
-#: f/lang-options.h:119
-msgid "Intrinsics letters in arbitrary cases"
-msgstr "Lettres d'instrinsèques en casse arbitraire"
-
-#: f/lang-options.h:121
-msgid "Language keywords spelled as e.g. IOStat"
-msgstr "Mots clés du langage épellés tel que IOStat"
-
-#: f/lang-options.h:123
-msgid "Language keywords in uppercase"
-msgstr "Mots clés du langage en majuscules"
-
-#: f/lang-options.h:126
-msgid "Language keyword letters in arbitrary cases"
-msgstr "Lettres des mots clés du langage dans des casses arbitraires"
-
-#: f/lang-options.h:128
-msgid "Internally convert most source to uppercase"
-msgstr "Convertir à l'interne la majorité des sources en majuscules"
-
-#: f/lang-options.h:131
-msgid "Internally preserve source case"
-msgstr "Préserver à l'interne la casse des sources"
-
-#: f/lang-options.h:133
-msgid "Symbol names spelled in mixed case"
-msgstr "Noms des symboles épellés dans des casses mélangées"
-
-#: f/lang-options.h:135
-msgid "Symbol names in uppercase"
-msgstr "Noms des symboles en majuscules"
-
-#: f/lang-options.h:137
-msgid "Symbol names in lowercase"
-msgstr "Noms de symboles en minuscules"
-
-#: f/lang-options.h:140
-msgid "Program written in uppercase"
-msgstr "Programme écrit en majuscules"
-
-#: f/lang-options.h:142
-msgid "Program written in lowercase"
-msgstr "Programmes écrit en minuscules"
-
-#: f/lang-options.h:144
-msgid "Program written in strict mixed-case"
-msgstr "Programme écrit dans une stricte casse mélangée"
-
-#: f/lang-options.h:146
-msgid "Compile as if program written in uppercase"
-msgstr "Compiler comme si le programme était écrit en majuscules"
-
-#: f/lang-options.h:148
-msgid "Compile as if program written in lowercase"
-msgstr "Compiler comme si le programme était écrit en minuscules"
-
-#: f/lang-options.h:150
-msgid "Preserve all spelling (case) used in program"
-msgstr "Préserver toutes les épellations (casses) utilisé dans le programme"
-
-#: f/lang-options.h:152
-msgid "Delete libU77 intrinsics with bad interfaces"
-msgstr "Détruire les intrinsèques libU77 ayant des interfaces erronées"
-
-#: f/lang-options.h:154
-msgid "Disable libU77 intrinsics with bad interfaces"
-msgstr "Désactiver les intrinsèques libU77 ayant des interfaces erronées"
-
-#: f/lang-options.h:157
-msgid "Hide libU77 intrinsics with bad interfaces"
-msgstr "Cacher les intrinsèques libU77 ayant des interfaces erronées"
-
-#: f/lang-options.h:159
-msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
-msgstr "Détruire les supports f2c intrinsèques non Fortran 77"
-
-#: f/lang-options.h:161
-msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
-msgstr "Désactiver les supports f2c intrinsèques non Fortran 77"
-
-#: f/lang-options.h:164
-msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
-msgstr "Cacher les supports f2c intrinsèques non Fortran 77"
-
-#: f/lang-options.h:166
-msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
-msgstr "Détruire les supports F90 intrinsèques non Fortran 77"
-
-#: f/lang-options.h:168
-msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
-msgstr "Désactiver les supports F90 intrinsèques non Fortran 77"
-
-#: f/lang-options.h:171
-msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
-msgstr "Cacher les supports F90 intrinsèques non Fortran 77"
-
-#: f/lang-options.h:173
-msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
-msgstr "Détruire les supports g77 intrinsèques non Fortran 77"
-
-#: f/lang-options.h:175
-msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
-msgstr "Désactiver les supports g77 intrinsèques non Fortran 77"
-
-#: f/lang-options.h:178
-msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
-msgstr "Cacher les supports g77 intrinsèques non Fortran 77"
-
-#: f/lang-options.h:180
-msgid "Delete MIL-STD 1753 intrinsics"
-msgstr "Détruire les intrinsèques MIL-STD 1753"
-
-#: f/lang-options.h:182
-msgid "Disable MIL-STD 1753 intrinsics"
-msgstr "Désactiver les intrinsèques MIL-STD 1753"
-
-#: f/lang-options.h:185
-msgid "Hide MIL-STD 1753 intrinsics"
-msgstr "Cacher les intrinsèques MIL-STD 1753"
-
-#: f/lang-options.h:187
-msgid "Delete libU77 intrinsics"
-msgstr "Détruire les intrinsèques libU77"
-
-#: f/lang-options.h:189
-msgid "Disable libU77 intrinsics"
-msgstr "Désactiver les intrinsèques libU77"
-
-#: f/lang-options.h:192
-msgid "Hide libU77 intrinsics"
-msgstr "Cacher les intrinsèques libU77"
-
-#: f/lang-options.h:194
-msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr "Détruire les supports VXT Fortran des intrinsèques non Fortran-77"
-
-#: f/lang-options.h:196
-msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr "Désactiver les supports VXT Fortran des intrinsèques non Fortran-77"
-
-#: f/lang-options.h:199
-msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr "Cacher les supports VXT Fortran des intrinsèques non Fortran-77"
-
-#: f/lang-options.h:201
-msgid "Treat initial values of 0 like non-zero values"
-msgstr "Traiter les valeurs initiales de 0 comme des valeurs non zéros"
-
-#: f/lang-options.h:204
-msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
-msgstr "Produire des information spéciales de mise au point pour COMMON et EQUIVALENCE (désactivé)"
-
-#: f/lang-options.h:207
-msgid "Take at least one trip through each iterative DO loop"
-msgstr "Exécuter une dernière fois la visite à traves chaque boucle itérative DO"
-
-#: f/lang-options.h:211
-msgid "Print names of program units as they are compiled"
-msgstr "Afficher les noms des unités de programme qui sont compilées"
-
-#: f/lang-options.h:214
-msgid "Disable fatal diagnostics about inter-procedural problems"
-msgstr "Inhiber les diagnostiques fatals à propos des problèmes entre les procédures"
-
-#: f/lang-options.h:216
-msgid "Make prefix-radix non-decimal constants be typeless"
-msgstr "Rendre les préfixes des bases des constantes non décimales sans type"
-
-#: f/lang-options.h:219
-msgid "Generate code to check subscript and substring bounds"
-msgstr "Générer du code pour vérifier les bornes des souscripts et des sous-chaînes"
-
-#: f/lang-options.h:222
-msgid "Fortran-specific form of -fbounds-check"
-msgstr "Forme spécifique Fortran de -fbounds-check"
-
-#: f/lang-options.h:226
-msgid "Disable warnings about inter-procedural problems"
-msgstr "Inhiber les avertissements à propos des problèmes entre les procédures"
-
-#: f/lang-options.h:230
-msgid "Warn about constructs with surprising meanings"
-msgstr "Avertir à propos des construits ayant des sens surprenants"
-
-#: f/lang-options.h:235
-msgid "Add a directory for INCLUDE searching"
-msgstr "Ajouter un répertoire pour la recherche par INCLUDE"
-
-#: f/lang-options.h:237
-msgid "Set the maximum line length"
-msgstr "Initialiser la longueur maximale des lignes"
+#: f/top.c:318
+msgid "-fdebug-kludge is disabled, use normal debugging flags"
+msgstr "-fdebug-kludge est désactivé, utiliser le fanion normal de mise au point"
#: f/bad.def:39
#, no-c-format
@@ -19700,12 +18242,12 @@ msgstr "Trop de valeurs initiales dans la liste des initialisations débutant à %
#: f/bad.def:892
#, no-c-format
msgid "Array or substring specification for `%A' out of range in statement at %0"
-msgstr "Tableau ou sous-chaîne de spécification pour « %A » hors gamme dans la déclaration à %0"
+msgstr "Tableau ou sous-chaîne de spécification pour « %A » hors limite dans la déclaration à %0"
#: f/bad.def:895
#, no-c-format
msgid "Array subscript #%B out of range for initialization of `%A' in statement at %0"
-msgstr "souscript de tableau #%B hors gamme pour l'initialisation de « %A » dans la déclaration à %0"
+msgstr "souscript de tableau #%B hors limite pour l'initialisation de « %A » dans la déclaration à %0"
#: f/bad.def:898
#, no-c-format
@@ -19745,7 +18287,7 @@ msgstr "Désaccord des conditions requises par EQUIVALENCE pour l'emplacement de
#: f/bad.def:919
#, no-c-format
msgid "Array or substring specification for `%A' out of range in EQUIVALENCE statement"
-msgstr "spécification de tableau ou de sous-chaîne pour « %A » est hors gamme dans la déclaration EQUIVALENCE"
+msgstr "spécification de tableau ou de sous-chaîne pour « %A » est hors limite dans la déclaration EQUIVALENCE"
#: f/bad.def:922
#, no-c-format
@@ -19760,7 +18302,7 @@ msgstr "référence de tableau vers une variable scalaire « %A » dans une déclarai
#: f/bad.def:928
#, no-c-format
msgid "Array subscript #%B out of range for EQUIVALENCE of `%A'"
-msgstr "souscript de tableau #%B hors gamme pour la déclaration EQUIVALENCE de « %A »"
+msgstr "souscript de tableau #%B hors limite pour la déclaration EQUIVALENCE de « %A »"
#: f/bad.def:936
#, no-c-format
@@ -19969,321 +18511,338 @@ msgstr "Dans la liste de noms"
msgid "In anything"
msgstr "Dans n'importe quoi"
-#: java/check-init.c:917
+#: java/check-init.c:905
#, c-format
msgid "internal error in check-init: tree code not implemented: %s"
msgstr "erreur interne dans check-init: arbre de code n'est pas implanté: %s"
-#: java/check-init.c:990
-#, c-format
-msgid "final field '%s' may not have been initialized"
-msgstr "champ final « %s » peut ne pas avoir été initialisé"
+#: java/check-init.c:977
+msgid "%Jfinal field '%D' may not have been initialized"
+msgstr "%Jchamp final « %D » peut ne pas avoir été initialisé"
-#: java/class.c:539 java/class.c:564
+#: java/class.c:592 java/class.c:616
msgid "internal error - too many interface type"
msgstr "erreur interne - trop de type d'interface"
-#: java/class.c:677
+#: java/class.c:715
msgid "bad method signature"
msgstr "méthode de signature erronée"
-#: java/class.c:726
+#: java/class.c:759
msgid "misplaced ConstantValue attribute (not in any field)"
msgstr "attribut ConstantValue mal positionné (n'est dans aucun champ)"
-#: java/class.c:728
+#: java/class.c:761
#, c-format
msgid "duplicate ConstantValue attribute for field '%s'"
msgstr "duplication de l'attribut ConstanValue pour le champ « %s »"
-#: java/class.c:739
+#: java/class.c:772
#, c-format
msgid "ConstantValue attribute of field '%s' has wrong type"
msgstr "attribut ConstanValue du champ « %s » a un type erroné"
-#: java/class.c:1103
+#: java/class.c:1067
#, c-format
msgid "field '%s' not found in class"
msgstr "champ « %s » n'a pas été repéré dans la classe"
-#: java/class.c:1365
-msgid "abstract method in non-abstract class"
-msgstr "méthode abstraite dans une classe non abstraite"
+#: java/class.c:1324
+msgid "%Jabstract method in non-abstract class"
+msgstr "%Jméthode abstraite dans une classe non abstraite"
+
+#: java/class.c:2140
+msgid "%Jnon-static method '%D' overrides static method"
+msgstr "%Jméthode non statique « %D » écrase la méthode statique"
+
+#: java/decl.c:1018
+msgid "%J'%D' used prior to declaration"
+msgstr "%J« %D » utilisé précédemment avant sa déclaration"
-#: java/class.c:2078
+#: java/decl.c:1059
#, c-format
-msgid "non-static method '%s' overrides static method"
-msgstr "méthode non statique « %s » écrase la méthode statique"
+msgid "declaration of `%s' shadows a parameter"
+msgstr "la déclaration de « %s » masque un paramètre"
-#: java/decl.c:1541
+#: java/decl.c:1062
#, c-format
-msgid "In %s: overlapped variable and exception ranges at %d"
-msgstr "Dans %s: chevauchement de variable et plage d'exception à %d"
+msgid "declaration of `%s' shadows a symbol from the parameter list"
+msgstr "la déclaration de « %s » masque un symbole de la liste des paramètres"
+
+#: java/decl.c:1361
+msgid "%Jlabel '%D' used but not defined"
+msgstr "%Jétiquette « %D » utilisée mais non définie"
-#: java/decl.c:1622
+#: java/decl.c:1366
+msgid "%Jlabel '%D' defined but not used"
+msgstr "%Jétiquette « %D » définie mais non utilisée"
+
+#: java/decl.c:1494
+msgid "%JIn %D: overlapped variable and exception ranges at %d"
+msgstr "%JDans %D: chevauchement de variable et plage d'exception à %d"
+
+#: java/decl.c:1572
msgid "bad type in parameter debug info"
msgstr "type erroné dans les paramètres d'informations de mise au point"
-#: java/decl.c:1632
-#, c-format
-msgid "bad PC range for debug info for local `%s'"
-msgstr "plage PC erroné pour les infos de débug pour la var. locale « %s »"
+#: java/decl.c:1581
+msgid "%Jbad PC range for debug info for local '%D'"
+msgstr "%Jplage PC erroné pour les infos de débug pour la var. locale « %D »"
-#: java/expr.c:530
+#: java/expr.c:519
msgid "stack underflow - dup* operation"
msgstr "sous débordement de la pile - opération dup*"
-#: java/expr.c:1534
+#: java/expr.c:1469
#, c-format
msgid "reference `%s' is ambiguous: appears in interface `%s' and interface `%s'"
msgstr "référence « %s » est ambigue: apparaît dans l'interface « %s » et l'interface « %s »"
-#: java/expr.c:1563
+#: java/expr.c:1497
#, c-format
msgid "field `%s' not found"
msgstr "champ « %s » n'a pas été trouvé"
-#: java/expr.c:1715
+#: java/expr.c:1658
msgid "ret instruction not implemented"
msgstr "instruction ret n'est pas implantée"
-#: java/expr.c:1857
+#: java/expr.c:1815
#, c-format
msgid "method '%s' not found in class"
msgstr "méthode « %s » n'a pas été repéré dans la classe"
-#: java/expr.c:2060
+#: java/expr.c:2020
#, c-format
msgid "failed to find class '%s'"
msgstr "échec de repérage de la classe « %s »"
-#: java/expr.c:2070
+#: java/expr.c:2030
#, c-format
msgid "class '%s' has no method named '%s' matching signature '%s'"
msgstr "classe « %s » n'a pas de méthode nommée « %s » concordant avec la signature « %s »"
-#: java/expr.c:2080
+#: java/expr.c:2040
msgid "invokestatic on non static method"
msgstr "invocation statique sur un méthode non statique"
-#: java/expr.c:2085
+#: java/expr.c:2045
msgid "invokestatic on abstract method"
msgstr "invocation statique sur un méthode abstraite"
-#: java/expr.c:2093
+#: java/expr.c:2053
msgid "invoke[non-static] on static method"
msgstr "invocation non statique sur un méthode statique"
-#: java/expr.c:2396
+#: java/expr.c:2352
#, c-format
msgid "missing field '%s' in '%s'"
msgstr "champ « %s » manquant dans « %s »"
-#: java/expr.c:2402
+#: java/expr.c:2358
#, c-format
msgid "mismatching signature for field '%s' in '%s'"
msgstr "aignature ne concorde pas pour le champ « %s » dans « %s »"
-#: java/expr.c:2425
-#, c-format
-msgid "assignment to final field `%s' not in field's class"
-msgstr "affectation au champ final « %s » n'est pas le champ de la classe"
+#: java/expr.c:2380
+msgid "%Jassignment to final field '%D' not in field's class"
+msgstr "%Jaffectation au champ final « %D » n'est pas le champ de la classe"
-#: java/expr.c:2430
-#, c-format
-msgid "assignment to final static field `%s' not in class initializer"
-msgstr "affectation au champ statique final « %s » n'est pas dans l'initialiseur de la classe"
+#: java/expr.c:2385
+msgid "%Jassignment to final static field `%D' not in class initializer"
+msgstr "%Jaffectation au champ statique final « %D » n'est pas dans l'initialiseur de la classe"
-#: java/expr.c:2437
-#, c-format
-msgid "assignment to final field `%s' not in constructor"
-msgstr "affectation au champ final « %s » n'est pas dans le constructeur"
+#: java/expr.c:2393
+msgid "%Jassignment to final field '%D' not in constructor"
+msgstr "%Jaffectation au champ final « %D » n'est pas dans le constructeur"
-#: java/expr.c:2684
+#: java/expr.c:2636
#, c-format
msgid "can't expand %s"
msgstr "ne peut faire l'expansion de %s"
-#: java/expr.c:2861
+#: java/expr.c:2808
msgid "invalid PC in line number table"
msgstr "PC invalide dans la numéro de ligne de la table"
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2906
+#: java/expr.c:2854
#, c-format
msgid "unreachable bytecode from %d to before %d"
msgstr "bytcode n'est pas atteignable à partir de %d jusqu'à %d"
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2943
+#: java/expr.c:2892
#, c-format
msgid "unreachable bytecode from %d to the end of the method"
msgstr "bytcode n'est pas atteignable à partir de %d jusqu'à la fin de la méthode."
#. duplicate code from LOAD macro
-#: java/expr.c:3261
+#: java/expr.c:3206
msgid "unrecogized wide sub-instruction"
msgstr "sous-instruction très large non reconnue"
-#: java/jcf-io.c:543
+#: java/jcf-io.c:534
#, c-format
msgid "source file for class `%s' is newer than its matching class file. Source file `%s' used instead"
msgstr "fichier source de la classe « %s » est plus récent que son fichier de classe concordant. Fichier source « %s » utilisé à la place."
-#: java/jcf-parse.c:338
+#: java/jcf-parse.c:330
msgid "bad string constant"
msgstr "constante chaîne erronée"
-#: java/jcf-parse.c:356
+#: java/jcf-parse.c:348
#, c-format
msgid "bad value constant type %d, index %d"
msgstr "valeur %d de type de constante erronée, index %d"
-#: java/jcf-parse.c:528
+#: java/jcf-parse.c:514
#, c-format
-msgid "can't reopen %s"
-msgstr "ne peut ré-ouvrir %s"
+msgid "can't reopen %s: %m"
+msgstr "ne peut ré-ouvrir %s: %m"
-#: java/jcf-parse.c:533
+#: java/jcf-parse.c:519
#, c-format
-msgid "can't close %s"
-msgstr "ne peut fermer %s"
+msgid "can't close %s: %m"
+msgstr "ne peut fermer %s: %m"
-#: java/jcf-parse.c:619
+#: java/jcf-parse.c:604
#, c-format
msgid "cannot find file for class %s"
msgstr "ne peut repérer le fichier pour la classe %s."
-#: java/jcf-parse.c:631
+#: java/jcf-parse.c:615
msgid "not a valid Java .class file"
msgstr "n'est pas un fichier Java .class valide"
-#: java/jcf-parse.c:634
+#: java/jcf-parse.c:618
msgid "error while parsing constant pool"
msgstr "error lors de l'analyse syntaxique du lots de constantes"
-#: java/jcf-parse.c:637
+#: java/jcf-parse.c:621
#, c-format
msgid "error in constant pool entry #%d\n"
msgstr "erreur dans l'entrée #%d du lot de constantes\n"
#. FIXME - where was first time
-#: java/jcf-parse.c:649
+#: java/jcf-parse.c:633
#, c-format
msgid "reading class %s for the second time from %s"
msgstr "lecture de la classe %s pour la seconde fois depuis %s"
-#: java/jcf-parse.c:667
+#: java/jcf-parse.c:651
msgid "error while parsing fields"
msgstr "erreur lors de l'analyse syntaxique des champs"
-#: java/jcf-parse.c:670
+#: java/jcf-parse.c:654
msgid "error while parsing methods"
msgstr "erreur lors de l'analyse syntaxique des méthodes"
-#: java/jcf-parse.c:673
+#: java/jcf-parse.c:657
msgid "error while parsing final attributes"
msgstr "erreur lors de l'analyse syntaxique des attributs"
-#: java/jcf-parse.c:687
+#: java/jcf-parse.c:671
#, c-format
msgid "the `java.lang.Object' that was found in `%s' didn't have the special zero-length `gnu.gcj.gcj-compiled' attribute. This generally means that your classpath is incorrectly set. Use `info gcj \"Input Options\"' to see the info page describing how to set the classpath"
msgstr "« java.lang.Object» qui a été repéré dans « %s » n'avait pas l'attribut spécial de longueur zéro «gnu.gcj.gcj-compiled». Cela généralement signifie que le chemin d'accès aux classes est incorrectement initialisé. Utiliser «info gcj \"Input Options\" » pour accéder aux informations décrivant comment initialiser le chemin d'accès des classes."
-#: java/jcf-parse.c:777
+#: java/jcf-parse.c:749
msgid "missing Code attribute"
msgstr "attribut Code manquant"
-#: java/jcf-parse.c:1014
-msgid "source file seen twice on command line and will be compiled only once"
-msgstr "fichier source vu deux fois sur la ligne de commande et ne sera compilé une seule fois"
+#: java/jcf-parse.c:981
+msgid "%Hsource file seen twice on command line and will be compiled only once"
+msgstr "%Hfichier source vu deux fois sur la ligne de commande et ne sera compilé une seule fois"
-#: java/jcf-parse.c:1030
+#: java/jcf-parse.c:997
msgid "no input file specified"
msgstr "aucun fichier n'a été spécifié à l'entrée"
-#: java/jcf-parse.c:1059
+#: java/jcf-parse.c:1026
#, c-format
-msgid "can't close input file %s"
-msgstr "ne peut fermer le fichier d'entrée %s"
+msgid "can't close input file %s: %m"
+msgstr "ne peut fermer le fichier d'entrée %s: %m"
-#: java/jcf-parse.c:1096
+#: java/jcf-parse.c:1064
#, c-format
msgid "bad zip/jar file %s"
msgstr "fichier zip/jar erroné %s"
-#: java/jcf-write.c:2650
+#: java/jcf-parse.c:1236
+#, c-format
+msgid "error while reading %s from zip file"
+msgstr "erreur lors de la lecture de %s à partir du fichier zip"
+
+#: java/jcf-write.c:2602
#, c-format
msgid "internal error in generate_bytecode_insn - tree code not implemented: %s"
msgstr "erreur interne dans generate_bytecode_insn - arbre de code n'est pas implanté: %s"
-#: java/jcf-write.c:2988
+#: java/jcf-write.c:2934
msgid "field initializer type mismatch"
msgstr "type de initialiseur du champ ne concorde pas"
-#: java/jcf-write.c:3419
+#: java/jcf-write.c:3389
#, c-format
-msgid "can't create directory %s"
-msgstr "ne peut créer le répertoire %s"
+msgid "can't create directory %s: %m"
+msgstr "ne peut créer le répertoire %s: %m"
-#: java/jcf-write.c:3473
+#: java/jcf-write.c:3442
#, c-format
-msgid "can't create %s"
-msgstr "ne peut créer %s"
+msgid "can't create %s: %m"
+msgstr "ne peut créer %s: %m"
-#: java/jv-scan.c:187
+#: java/jv-scan.c:185
msgid "only one of `--print-main', `--list-class', and `--complexity' allowed"
msgstr "seule une des options «--print-main», «--list-class» et «--complexity» est permise"
-#: java/jv-scan.c:190
+#: java/jv-scan.c:188
#, c-format
msgid "can't open output file `%s'"
msgstr "ne peut ouvrir le fichier de sortie « %s »"
-#: java/jv-scan.c:224
+#: java/jv-scan.c:222
#, c-format
msgid "file not found `%s'"
msgstr "fichier non repéré « %s »"
-#: java/jvspec.c:426
+#: java/jvspec.c:418
msgid "can't specify `-D' without `--main'\n"
msgstr "ne peut spécifier «-D» sans «--main»\n"
-#: java/jvspec.c:429
+#: java/jvspec.c:421
#, c-format
msgid "`%s' is not a valid class name"
msgstr "« %s » n'est pas un nom de classe valide"
-#: java/jvspec.c:435
-#, fuzzy
+#: java/jvspec.c:427
msgid "--resource requires -o"
-msgstr "-R requiert -o"
+msgstr "--resource requiert -o"
-#: java/jvspec.c:442
+#: java/jvspec.c:434
msgid "warning: already-compiled .class files ignored with -C"
msgstr "AVERTISSEMENT: fichiers .class déjà compilés ignorés avec -C"
-#: java/jvspec.c:449
+#: java/jvspec.c:441
msgid "cannot specify both -C and -o"
msgstr "ne peut spécéfier à la fois -C et -o"
-#: java/jvspec.c:461
+#: java/jvspec.c:453
msgid "cannot create temporary file"
msgstr "ne peut créer un fichier temporaire"
-#: java/jvspec.c:489
+#: java/jvspec.c:481
msgid "using both @FILE with multiple files not implemented"
msgstr "utilisé ensemble @FICHIER avec de multiples fichiers bMest pas implanté"
-#: java/jvspec.c:538
+#: java/jvspec.c:530
msgid "cannot specify `main' class when not linking"
msgstr "ne peut spécifier la classe « main » lorsqu'il n'y a pas d'édition de liens"
-#: java/lang.c:548
+#: java/lang.c:740
msgid "can't do dependency tracking with input from stdin"
msgstr "ne peut faire le tracking de dépendance avec l'entrée à partir de stdin"
-#: java/lang.c:564
+#: java/lang.c:756
msgid "couldn't determine target name for dependency tracking"
msgstr "ne peut déterminer le nom de la cible pour le tracking de dépendance"
@@ -20302,300 +18861,210 @@ msgstr ""
"d'utiliser un encodage particulier pour votre fichier d'entrée, essayer\n"
"l'option «--encoding=UTF-8»."
-#: java/mangle.c:85
+#: java/mangle.c:89
#, c-format
msgid "can't mangle %s"
msgstr "ne peut mutiler %s"
-#: java/mangle_name.c:144 java/mangle_name.c:216
+#: java/mangle_name.c:140 java/mangle_name.c:210
msgid "internal error - invalid Utf8 name"
msgstr "erreur interne - nom Utf8 invalide"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:881
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:962
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1303
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1364
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1574
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1796
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1805
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1816
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1827
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1839
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1854
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1871
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1873
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1945
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2116
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2178
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2330
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2342
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2349
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2356
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2367
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2369
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2407
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2409
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2411
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2432
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2434
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2436
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2452
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2454
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2475
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2477
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2479
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2507
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2509
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2511
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2513
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2531
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2533
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2555
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2566
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2577
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2588
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2601
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2605
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2607
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2620
+#: java/parse-scan.y:880 java/parse.y:949 java/parse.y:1290 java/parse.y:1351
+#: java/parse.y:1555 java/parse.y:1777 java/parse.y:1786 java/parse.y:1797
+#: java/parse.y:1808 java/parse.y:1820 java/parse.y:1835 java/parse.y:1852
+#: java/parse.y:1854 java/parse.y:1935 java/parse.y:2106 java/parse.y:2168
+#: java/parse.y:2320 java/parse.y:2332 java/parse.y:2339 java/parse.y:2346
+#: java/parse.y:2357 java/parse.y:2359 java/parse.y:2397 java/parse.y:2399
+#: java/parse.y:2401 java/parse.y:2422 java/parse.y:2424 java/parse.y:2426
+#: java/parse.y:2442 java/parse.y:2444 java/parse.y:2465 java/parse.y:2467
+#: java/parse.y:2469 java/parse.y:2497 java/parse.y:2499 java/parse.y:2501
+#: java/parse.y:2503 java/parse.y:2521 java/parse.y:2523 java/parse.y:2534
+#: java/parse.y:2545 java/parse.y:2556 java/parse.y:2567 java/parse.y:2578
+#: java/parse.y:2591 java/parse.y:2595 java/parse.y:2597 java/parse.y:2610
msgid "Missing term"
msgstr "Terme manquant"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:883
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:734
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:772
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:797
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:983
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1338
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1550
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1552
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1781
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1807
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1818
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1829
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1841
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1856
+#: java/parse-scan.y:882 java/parse.y:721 java/parse.y:759 java/parse.y:784
+#: java/parse.y:970 java/parse.y:1325 java/parse.y:1531 java/parse.y:1533
+#: java/parse.y:1762 java/parse.y:1788 java/parse.y:1799 java/parse.y:1810
+#: java/parse.y:1822 java/parse.y:1837
msgid "';' expected"
msgstr "«;» attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:732
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:770
+#: java/parse.y:719 java/parse.y:757
msgid "Missing name"
msgstr "Nom manquant"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:795
+#: java/parse.y:782
msgid "'*' expected"
msgstr "« * » attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:809
+#: java/parse.y:796
msgid "Class or interface declaration expected"
msgstr "Déclaration de classe ou d'interface attendue"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:846
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:848
+#: java/parse.y:833 java/parse.y:835
msgid "Missing class name"
msgstr "Nom de classe manquant"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:851
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:855
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:863
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1023
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1284
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1616
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1867
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1899
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1952
+#: java/parse.y:838 java/parse.y:842 java/parse.y:850 java/parse.y:1010
+#: java/parse.y:1271 java/parse.y:1273 java/parse.y:1597 java/parse.y:1848
+#: java/parse.y:1880 java/parse.y:1942
msgid "'{' expected"
msgstr "«{» attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:865
+#: java/parse.y:852
msgid "Missing super class name"
msgstr "Nom de super classe manquant"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:875
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:891
+#: java/parse.y:862 java/parse.y:878
msgid "Missing interface name"
msgstr "Nom d'interface manquant"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:977
+#: java/parse.y:964
msgid "Missing variable initializer"
msgstr "Initialiseur de variable manquant"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:994
+#: java/parse.y:981
msgid "Invalid declaration"
msgstr "Déclaration invalide"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:997
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1082
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2153
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2175
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2179
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2214
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2291
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2301
+#: java/parse.y:984 java/parse.y:1069 java/parse.y:2143 java/parse.y:2165
+#: java/parse.y:2169 java/parse.y:2204 java/parse.y:2281 java/parse.y:2291
msgid "']' expected"
msgstr "«]» attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1001
+#: java/parse.y:988
msgid "Unbalanced ']'"
msgstr "«]» non pairé"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1037
+#: java/parse.y:1024
msgid "Invalid method declaration, method name required"
msgstr "Déclaration de méthode invalide, nom de méthode requis"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1042
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1047
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1052
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2036
+#: java/parse.y:1029 java/parse.y:1034 java/parse.y:1039 java/parse.y:2026
msgid "Identifier expected"
msgstr "Identificateur attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1057
+#: java/parse.y:1044
msgid "Invalid method declaration, return type required"
msgstr "Déclaration de méthode invalide, type retourné requis"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1080
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1530
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1537
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1546
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1548
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1576
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1684
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1981
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2034
+#: java/parse.y:1067 java/parse.y:1511 java/parse.y:1518 java/parse.y:1527
+#: java/parse.y:1529 java/parse.y:1557 java/parse.y:1665 java/parse.y:1971
+#: java/parse.y:2024
msgid "')' expected"
msgstr "«)» attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1096
+#: java/parse.y:1083
msgid "Missing formal parameter term"
msgstr "Paramètre term formel manquant"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1111
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1116
+#: java/parse.y:1098 java/parse.y:1103
msgid "Missing identifier"
msgstr "Identificateur manquant"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1136
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1145
+#: java/parse.y:1123 java/parse.y:1132
msgid "Missing class type term"
msgstr "Type term de classe manquant"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1301
+#: java/parse.y:1288
msgid "Invalid interface type"
msgstr "Type d'interface invalide"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1494
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1663
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1665
+#: java/parse.y:1475 java/parse.y:1644 java/parse.y:1646
msgid "':' expected"
msgstr "«:» attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1516
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1521
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1526
+#: java/parse.y:1497 java/parse.y:1502 java/parse.y:1507
msgid "Invalid expression statement"
msgstr "Déclaration d'expression invalide"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1572
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1612
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1680
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1748
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1869
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1938
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2028
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2030
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2038
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2274
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2276
+#: java/parse.y:1525 java/parse.y:1553 java/parse.y:1593 java/parse.y:1661
+#: java/parse.y:1729 java/parse.y:1850 java/parse.y:1928 java/parse.y:2018
+#: java/parse.y:2020 java/parse.y:2028 java/parse.y:2264 java/parse.y:2266
msgid "'(' expected"
msgstr "«(» attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1614
+#: java/parse.y:1595
msgid "Missing term or ')'"
msgstr "Terme manquant ou «)»"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1661
+#: java/parse.y:1642
msgid "Missing or invalid constant expression"
msgstr "Expresion de constante manquante ou invalide"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1682
+#: java/parse.y:1663
msgid "Missing term and ')' expected"
msgstr "Terme manquant et «)» attendus"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1721
+#: java/parse.y:1702
msgid "Invalid control expression"
msgstr "Expression de contrôle invalide"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1723
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1725
+#: java/parse.y:1704 java/parse.y:1706
msgid "Invalid update expression"
msgstr "Expression de mise à jour invalide"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1750
+#: java/parse.y:1731
msgid "Invalid init statement"
msgstr "Déclaration init invalide"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1941
+#: java/parse.y:1931
msgid "Missing term or ')' expected"
msgstr "Terme manquant ou «)» attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1983
+#: java/parse.y:1973
msgid "'class' or 'this' expected"
msgstr "« class» ou «ceci » attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1985
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1987
+#: java/parse.y:1975 java/parse.y:1977
msgid "'class' expected"
msgstr "« class » attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2032
+#: java/parse.y:2022
msgid "')' or term expected"
msgstr "«)» or terme attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2151
+#: java/parse.y:2141
msgid "'[' expected"
msgstr "«[» attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2229
+#: java/parse.y:2219
msgid "Field expected"
msgstr "Champ attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2296
+#: java/parse.y:2276 java/parse.y:2286
msgid "Missing term and ']' expected"
msgstr "Terme manquant et «]» attendu"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2400
+#: java/parse.y:2390
msgid "']' expected, invalid type expression"
msgstr "«]» attendu, type d'expression invalide"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2403
+#: java/parse.y:2393
msgid "Invalid type expression"
msgstr "Type d'expression invalide"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2515
+#: java/parse.y:2505
msgid "Invalid reference type"
msgstr "Type de référence invalide"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2993
+#: java/parse.y:2977
msgid "Constructor invocation must be first thing in a constructor"
msgstr "L'invaocation d'un constructeur doit être la première chose dans un constructeur"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2995
+#: java/parse.y:2979
msgid "Only constructors can invoke constructors"
msgstr "Seuls les constructeurs peuvent invoquer des constructeurs"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3004
+#: java/parse.y:2987
#, c-format
msgid ": `%s' JDK1.1(TM) feature"
msgstr ": « %s » option JDK1.1(TM)"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3064
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3066
+#: java/parse.y:3046 java/parse.y:3048
#, c-format
msgid ""
"%s.\n"
@@ -20604,247 +19073,228 @@ msgstr ""
"%s.\n"
"%s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6879
+#: java/parse.y:6908
#, c-format
msgid "malformed .zip archive in CLASSPATH: %s"
msgstr "archive .zip mal composée dans CLASSPATH: %s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6950
+#: java/parse.y:6979
#, c-format
msgid "Can't find default package `%s'. Check the CLASSPATH environment variable and the access to the archives"
msgstr "ne peut repérer le package par défaut « %s ». Vérifier la variable d'environnement CLASSPATH et l'accès aux archives."
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12352
+#: java/parse.y:12192
#, c-format
msgid "missing static field `%s'"
msgstr "champ statique manquant « %s »"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12357
+#: java/parse.y:12197
#, c-format
msgid "not a static field `%s'"
msgstr "n'est pas un champ statique « %s »"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12400
+#: java/parse.y:12240
#, c-format
msgid "No case for %s"
msgstr "Oas de case pour %s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:13365
+#: java/parse.y:13172
#, c-format
msgid "unregistered operator %s"
msgstr "opérator %s non enregistré"
-#: java/typeck.c:553
+#: java/typeck.c:530
msgid "junk at end of signature string"
msgstr "rebut à la fin de la chaîne de signature"
-#: java/verify.c:479
+#: java/verify.c:471
msgid "bad pc in exception_table"
msgstr "PC erroné dans exception_table"
-#: java/verify.c:485
-msgid "exception handler inside code that is being protected"
-msgstr ""
-
-#: java/verify.c:1395
+#: java/verify.c:1384
#, c-format
msgid "unknown opcode %d@pc=%d during verification"
msgstr "code-op inconnu %d@pc=%d durant la vérification"
-#: java/verify.c:1465 java/verify.c:1478 java/verify.c:1482
+#: java/verify.c:1454 java/verify.c:1467 java/verify.c:1471
#, c-format
msgid "verification error at PC=%d"
msgstr "erreur de vérification au PC=%d"
-#: java/lang-options.h:32
-msgid "Disable automatic array bounds checking"
-msgstr "Vérification automatique désactivée des bornes de tableaux"
-
-#: java/lang-options.h:34
-msgid "Disable assignability checks for stores into object arrays"
-msgstr "Désactiver la vérificaitions des affectations dans les tableaux d'objets"
-
-#: java/lang-options.h:36
-msgid "Assume native functions are implemented using JNI"
-msgstr "Présumer que les fonctions natives sont implantées et qu'elles utilisent JNI"
-
-#: java/lang-options.h:38
-msgid "Replace system path"
-msgstr "Remplacer le chemin système"
-
-#: java/lang-options.h:40
-msgid "Set class path"
-msgstr "Initialiser le chemin des classes"
-
-#: java/lang-options.h:42
-msgid "Set class path (deprecated: use --classpath instead)"
-msgstr "Initialiser le chemin des classes (déprécié: utiliser --classpath à la place)"
-
-#: java/lang-options.h:44
-msgid "Choose class whose main method should be used"
-msgstr "Choisir la classe dont la méthode principale devrait être utilisée"
-
-#: java/lang-options.h:46
-msgid "Choose input encoding (default comes from locale)"
-msgstr "choisir l'encodade d'entrée (par défaut provient de la locale)"
-
-#: java/lang-options.h:48
-msgid "Add directory to class path"
-msgstr "Ajouter un répertoire au chemin des classes"
-
-#: java/lang-options.h:50
-msgid "Directory where class files should be written"
-msgstr "Répertoire où les fichiers de classe devraient être écrits"
-
-#: java/lang-options.h:52
-msgid "Warn if modifiers are specified when not necessary"
-msgstr "Avertir si des modificateurs sont spécifiés sans que cela ne soit nécessaires"
-
-#: java/lang-options.h:54
-msgid "Warn if deprecated empty statements are found"
-msgstr "Avertir si des déclarations vides dépréciés sont trouvées"
-
-#: java/lang-options.h:56
-msgid "Warn if .class files are out of date"
-msgstr "Avertir si des fichier .class sont périmées"
-
-#: java/lang-options.h:58
-msgid "Always check for non gcj generated classes archives"
-msgstr "Toujours vérifier dans les archives de classes non générées gcj"
-
-#: java/lang-options.h:60
-msgid "Never optimize static class initialization code"
-msgstr "Ne jamais optimiser le code d'initialisation de classe statique"
-
-#: java/lang-options.h:62
-msgid "Use offset tables for virtual method calls"
-msgstr "Utiliser des tables de décalage pour les appels de méthodes virtuelles"
-
-#: objc/objc-act.c:651
+#: objc/objc-act.c:689
#, c-format
msgid "object does not conform to the `%s' protocol"
msgstr "objet n'est pas conforme au protocole « %s »"
-#: objc/objc-act.c:737 objc/objc-act.c:810
+#: objc/objc-act.c:775 objc/objc-act.c:848
#, c-format
msgid "class `%s' does not implement the `%s' protocol"
msgstr "classe « %s » n'implante pas le protocole « %s »"
-#: objc/objc-act.c:914
+#: objc/objc-act.c:951
#, c-format
-msgid "`%s' cannot be statically allocated"
-msgstr "« %s » ne peut être statiquement alloué"
+msgid "statically allocated instance of Objective-C class `%s'"
+msgstr "instance allouée de manière statique de la classe Objective-C « %s »"
-#: objc/objc-act.c:963
+#: objc/objc-act.c:998
#, c-format
msgid "unexpected type for `id' (%s)"
msgstr "type inattendu pour « id » (%s)"
-#: objc/objc-act.c:968
+#: objc/objc-act.c:1003
msgid "undefined type `id', please import <objc/objc.h>"
msgstr "type « id » indéfini, SVP importer <objc/objc.h>"
-#: objc/objc-act.c:1019
+#: objc/objc-act.c:1052
#, c-format
msgid "protocol `%s' has circular dependency"
msgstr "le protocole « %s » a une dépendance circulaire"
-#: objc/objc-act.c:1041 objc/objc-act.c:5301
+#: objc/objc-act.c:1074 objc/objc-act.c:5982
#, c-format
msgid "cannot find protocol declaration for `%s'"
msgstr "ne peut repérer la déclaration de protocole pour « %s »"
-#: objc/objc-act.c:1289 objc/objc-act.c:5877 objc/objc-act.c:6195
-#: objc/objc-act.c:6244 objc/objc-act.c:6280 objc-parse.y:1799
+#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6513
+#: objc/objc-act.c:6822 objc/objc-act.c:6875 objc/objc-act.c:6900
#, c-format
msgid "cannot find interface declaration for `%s'"
msgstr "ne peut repérer la déclaration d'interface pour « %s »"
-#: objc/objc-act.c:1328
+#: objc/objc-act.c:1423
+#, c-format
+msgid "interface `%s' does not have valid constant string layout"
+msgstr "interface « %s » n'a pas une organisation valide de chaînes de constantes"
+
+#: objc/objc-act.c:1439
#, c-format
msgid "cannot find reference tag for class `%s'"
msgstr "ne peut repérer la référence pour l'étiquette de classe %s."
-#: objc/objc-act.c:2050
-#, fuzzy, c-format
+#: objc/objc-act.c:2179
+#, c-format
msgid "creating selector for non existant method %s"
-msgstr "conflit potentiel sur le sélecteur pour la méthode « %s »"
+msgstr "création du sélection pour une méthode inexistente %s"
+
+#: objc/objc-act.c:2389
+#, c-format
+msgid "`%s' is not an Objective-C class name or alias"
+msgstr "« %s » n'est pas une classe Objective-C ou un alias"
+
+#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6769
+#: objc/objc-act.c:7059 objc/objc-act.c:7088
+msgid "Objective-C declarations may only appear in global scope"
+msgstr "déclarations Objective-C peut seulement apparaître dans l'étendue globale"
-#: objc/objc-act.c:2364
+#: objc/objc-act.c:2505
#, c-format
msgid "cannot find class `%s'"
msgstr "ne peut repérer la classe « %s »"
-#: objc/objc-act.c:2366
+#: objc/objc-act.c:2507
#, c-format
msgid "class `%s' already exists"
msgstr "classe « %s » existe déjà"
+#: objc/objc-act.c:2532 objc/objc-act.c:6791
+#, c-format
+msgid "`%s' redeclared as different kind of symbol"
+msgstr "« %s » redéclaré comme une autre sorte de symbole"
+
#. fatal did not work with 2 args...should fix
-#: objc/objc-act.c:2473
+#: objc/objc-act.c:2680
#, c-format
msgid "cannot find interface declaration for `%s', superclass of `%s'"
msgstr "ne peut repérer une déclaration d'interface pour « %s », super classe de « %s »"
-#: objc/objc-act.c:2480
+#: objc/objc-act.c:2687
#, c-format
msgid "circular inheritance in interface declaration for `%s'"
msgstr "héritage circulaire dans la déclaration de l'interface pour « %s »"
-#: objc/objc-act.c:3566 objc/objc-act.c:3583
+#: objc/objc-act.c:2780 objc/objc-act.c:2924 objc/objc-act.c:3024
+#: objc/objc-act.c:3200 objc/objc-act.c:3240
+msgid "Use `-fobjc-exceptions' to enable Objective-C exception syntax"
+msgstr "Utiliser « -fobjc-exceptions » pour autoriser la syntaxe d'exception d'Objective-C"
+
+#: objc/objc-act.c:2787
+msgid "`@throw;' (rethrow) used outside of a `@catch' block"
+msgstr "« @throw; » (rethrow) utilisé en dehors d'un bloc « @catch »"
+
+#: objc/objc-act.c:3027
+msgid "`@catch' parameter is not a known Objective-C class type"
+msgstr "paramètre « @catch » n'est pas connu comme un type de classe Objective-C"
+
+#: objc/objc-act.c:3036
+msgid "Exception already handled by preceding `@catch(id)'"
+msgstr "Exception est déjà traité par le précédent « @catch(id) »"
+
+#: objc/objc-act.c:3041
+#, c-format
+msgid "Exception of type `%s *' already handled by `@catch (%s *)'"
+msgstr "exception du type « %s * » est déjà traitée par « @catch (%s *) »"
+
+#: objc/objc-act.c:3206
+msgid "`@try' without `@catch' or `@finally'"
+msgstr "« @try » sans « @catch » ou « @finally »"
+
+#: objc/objc-act.c:3647
+msgid "%Jtype '%D' does not have a known size"
+msgstr "%Jtype « %D » n'a pas de taille connue"
+
+#: objc/objc-act.c:4256
+msgid "%J%s `%s'"
+msgstr "%J%s « %s »"
+
+#: objc/objc-act.c:4281 objc/objc-act.c:4300
msgid "inconsistent instance variable specification"
msgstr "spécification inconsistente avec l'instance de la vairable"
-#: objc/objc-act.c:4580
+#: objc/objc-act.c:5303
msgid "can not use an object as parameter to a method\n"
-msgstr ""
+msgstr "ne peut utiliser un objet comme paramètre à une méthode\n"
-#: objc/objc-act.c:4780
+#: objc/objc-act.c:5504
#, c-format
-msgid "multiple declarations for method `%s'"
-msgstr "multiples déclarations pour la méthode « %s »"
+msgid "multiple %s named `%c%s' found"
+msgstr "multiples %s nommés « %c%s » repérés"
-#: objc/objc-act.c:4946
+#: objc/objc-act.c:5721
#, c-format
-msgid "invalid receiver type `%s'"
-msgstr "type du receveur invalide « %s »"
+msgid "no super class declared in @interface for `%s'"
+msgstr "pas de super classe déclarée dans @nterface pour « %s »"
-#: objc/objc-act.c:4977 objc/objc-act.c:5003 objc/objc-act.c:5051
+#: objc/objc-act.c:5809
#, c-format
-msgid "`%s' does not respond to `%s'"
-msgstr "« %s » ne répond pas à « %s »"
+msgid "invalid receiver type `%s'"
+msgstr "type du receveur invalide « %s »"
-#: objc/objc-act.c:4983 objc/objc-act.c:7318
+#: objc/objc-act.c:5820
#, c-format
-msgid "no super class declared in interface for `%s'"
-msgstr "pas de super classe déclarée dans l'interface pour « %s »"
+msgid "`%s' may not respond to `%c%s'"
+msgstr "« %s » peut ne pas répondre à « %c%s »"
-#: objc/objc-act.c:5081
-msgid "cannot find class (factory) method"
-msgstr "ne peut repérer de méthode de classe (manufacturé)"
-
-#: objc/objc-act.c:5082 objc/objc-act.c:5126
+#: objc/objc-act.c:5825
#, c-format
-msgid "return type for `%s' defaults to id"
-msgstr "type retourné pour « %s » par défaut est id"
+msgid "`%c%s' not implemented by protocol(s)"
+msgstr "« %c%s » n'est pas implantée dans le protocole"
-#: objc/objc-act.c:5099
-#, c-format
-msgid "method `%s' not implemented by protocol"
-msgstr "méthode « %s » n'est pas implantée dans le protocole."
+#: objc/objc-act.c:5830
+msgid "(Messages without a matching method signature"
+msgstr "(Messages sans une méthode concordante de signature"
-#: objc/objc-act.c:5108
-msgid "return type defaults to id"
-msgstr "type retourné par défaut est id"
+#: objc/objc-act.c:5831
+msgid "will be assumed to return `id' and accept"
+msgstr "sera assumé pour retourner « id » et accepter"
-#: objc/objc-act.c:5125
-msgid "cannot find method"
-msgstr "ne peut repérer la méthode"
+#: objc/objc-act.c:5832
+msgid "`...' as arguments.)"
+msgstr " « ... » comme argument.)"
-#: objc/objc-act.c:5399
-#, fuzzy, c-format
+#: objc/objc-act.c:6079
+#, c-format
msgid "undeclared selector `%s'"
-msgstr "identificateur « %s » non déclaré"
+msgstr "sélecteur « %s » non déclaré"
#. Historically, a class method that produced objects (factory
#. method) would assign `self' to the instance that it
@@ -20855,310 +19305,1924 @@ msgstr "identificateur « %s » non déclaré"
#. to an instance variable. It's better to catch the cases
#. where this is done unknowingly than to support the above
#. paradigm.
-#: objc/objc-act.c:5443
+#: objc/objc-act.c:6121
#, c-format
msgid "instance variable `%s' accessed in class method"
msgstr "instance « %s » de la variable accédé par la méthode de classe"
-#: objc/objc-act.c:5678
+#: objc/objc-act.c:6327
#, c-format
-msgid "duplicate definition of class method `%s'"
-msgstr "duplication de définition de la méthode de la classe « %s »"
+msgid "duplicate declaration of method `%c%s'"
+msgstr "duplication de déclaration de la méthode « %c%s »"
-#: objc/objc-act.c:5684
+#: objc/objc-act.c:6368
#, c-format
-msgid "duplicate declaration of class method `%s'"
-msgstr "duplication de déclaration de la méthode de classe « %s »"
+msgid "duplicate interface declaration for category `%s(%s)'"
+msgstr "duplication de déclaration d'interface pour la catégorie « %s(%s) »"
-#: objc/objc-act.c:5720
+#: objc/objc-act.c:6398
#, c-format
-msgid "duplicate definition of instance method `%s'"
-msgstr "duplication de définition de la méthode d'instanciation « %s »"
+msgid "illegal reference type specified for instance variable `%s'"
+msgstr "type deréférence spécifié illégal pour l'instance de variable « %s »"
-#: objc/objc-act.c:5726
+#: objc/objc-act.c:6414
#, c-format
-msgid "duplicate declaration of instance method `%s'"
-msgstr "duplication de déclaration de la méthode d'instanciation « %s »"
+msgid "instance variable `%s' has unknown size"
+msgstr "instance de la variable « %s » a une taille inconnue"
-#: objc/objc-act.c:5766
+#. vtable pointers are Real Bad(tm), since Obj-C cannot initialize them
+#: objc/objc-act.c:6428
#, c-format
-msgid "duplicate interface declaration for category `%s(%s)'"
-msgstr "duplication de déclaration d'interface pour la catégorie «%s(%s)»"
+msgid "type `%s' has virtual member functions"
+msgstr "type « %s » a des membres de fonction virtuelle"
+
+#: objc/objc-act.c:6429
+#, c-format
+msgid "illegal aggregate type `%s' specified for instance variable `%s'"
+msgstr "type d'aggrégat illégal « %s » spécifié pour l'instance de la variable « %s »"
+
+#: objc/objc-act.c:6437
+#, c-format
+msgid "type `%s' has a user-defined constructor"
+msgstr "type « %s » a un constructeur défini par l'usager"
-#: objc/objc-act.c:5852
+#: objc/objc-act.c:6439
+#, c-format
+msgid "type `%s' has a user-defined destructor"
+msgstr "type « %s » a un destructeur défini par l'usager"
+
+#: objc/objc-act.c:6440
+msgid "C++ constructors and destructors will not be invoked for Objective-C fields"
+msgstr "constructeurs et destructeurs C++ ne seront pas invoqués pour les champs en Objective-C"
+
+#: objc/objc-act.c:6490
#, c-format
msgid "instance variable `%s' is declared private"
msgstr "instance de la variable « %s » est déclaré privée"
-#: objc/objc-act.c:5899
+#: objc/objc-act.c:6539
+#, c-format
+msgid "instance variable `%s' is %s; this will be a hard error in the future"
+msgstr "instance de la variable « %s » est %s; cela déclenchera une erreur dure dans le futur"
+
+#: objc/objc-act.c:6546
#, c-format
msgid "instance variable `%s' is declared %s"
msgstr "instance de la variable « %s » est déclaré %s"
-#: objc/objc-act.c:5909
+#: objc/objc-act.c:6556
msgid "static access to object of type `id'"
msgstr "accès statique à un objket de type « id »"
-#: objc/objc-act.c:5934 objc/objc-act.c:6027
+#: objc/objc-act.c:6578 objc/objc-act.c:6666
#, c-format
msgid "incomplete implementation of class `%s'"
msgstr "implantation incomplète de la classe « %s »"
-#: objc/objc-act.c:5938 objc/objc-act.c:6032
+#: objc/objc-act.c:6582 objc/objc-act.c:6671
#, c-format
msgid "incomplete implementation of category `%s'"
msgstr "implantation incomplète de la catégorie « %s »"
-#: objc/objc-act.c:5943 objc/objc-act.c:6037
+#: objc/objc-act.c:6587 objc/objc-act.c:6676
#, c-format
msgid "method definition for `%c%s' not found"
-msgstr "définition de la méthode pour «%c%s» n'a pas été repérée"
+msgstr "définition de la méthode pour « %c%s » n'a pas été repérée"
-#: objc/objc-act.c:6081
+#: objc/objc-act.c:6717
#, c-format
msgid "%s `%s' does not fully implement the `%s' protocol"
msgstr "%s « %s » n'implante pas complètement le protocole « %s »"
-#: objc/objc-act.c:6139 objc/objc-act.c:8249
+#: objc/objc-act.c:6775 objc/objc-act.c:8803
msgid "`@end' missing in implementation context"
msgstr "«@end» manquant dans l'implantation du contexte"
-#: objc/objc-act.c:6167
+#: objc/objc-act.c:6805
#, c-format
msgid "reimplementation of class `%s'"
msgstr "ré-implantation de la classe « %s »"
-#: objc/objc-act.c:6209
+#: objc/objc-act.c:6836
#, c-format
msgid "conflicting super class name `%s'"
msgstr "nom de super classe « %s » est conflictuel"
-#: objc/objc-act.c:6224
+#: objc/objc-act.c:6838
+#, c-format
+msgid "previous declaration of `%s'"
+msgstr "déclaration précédente de « %s »"
+
+#: objc/objc-act.c:6852 objc/objc-act.c:6854
#, c-format
msgid "duplicate interface declaration for class `%s'"
msgstr "double déclaration d'interface pour la classe « %s »"
-#: objc/objc-act.c:6506
+#: objc/objc-act.c:7121
#, c-format
msgid "duplicate declaration for protocol `%s'"
msgstr "double déclaration pour le protocole « %s »"
-#: objc/objc-act.c:7363
-msgid "[super ...] must appear in a method context"
-msgstr "[super ...] doit apparaître dans une méthode du contexte"
+#. Add a readable method name to the warning.
+#: objc/objc-act.c:7613
+msgid "%J%s `%c%s'"
+msgstr "%J%s « %c%s »"
-#: objc/objc-act.c:8354 objc/objc-act.c:8370
+#: objc/objc-act.c:7908
#, c-format
-msgid "potential selector conflict for method `%s'"
-msgstr "conflit potentiel sur le sélecteur pour la méthode « %s »"
+msgid "no super class declared in interface for `%s'"
+msgstr "pas de super classe déclarée dans l'interface pour « %s »"
+
+#: objc/objc-act.c:7956
+msgid "[super ...] must appear in a method context"
+msgstr "[super ...] doit apparaître dans une méthode du contexte"
-#: objc-parse.y:2655
+#: objc/objc-parse.y:2700
msgid "`@end' must appear in an implementation context"
msgstr "«@end» doit appraître dans un contaxte d'implantation"
-#: objc-parse.y:2931
+#: objc/objc-parse.y:2913
msgid "method definition not in class context"
msgstr "méthode de définition n'est pas dans un contexte de classe"
-#: objc/lang-options.h:27
-msgid "Dump decls to a .decl file"
-msgstr "Vidange des déclaration dans un fichier .decl"
+#: options.c:24
+msgid "Display this information"
+msgstr "afficher l'aide-mémoire"
-#: objc/lang-options.h:29
-msgid "Generate code for GNU runtime environment"
-msgstr "Générer du code pour l'environnement GNU d'exécution"
+#: options.c:30
+msgid "--param <param>=<value>\tSet paramter <param> to value. See below for a complete list of parameters"
+msgstr "--param <paramètre>=<valeur>\tinitialiser le <paramètre> avec la valeur. Voir ci-bas pour la liste complète des paramètres"
+
+#: options.c:39
+msgid "-A<question>=<answer>\tAssert the <answer> to <question>. Putting '-' before <question> disables the <answer> to <question>"
+msgstr "-A<question>=<réponse>\tassocier la <réponse> à la <question>. Placer « - » devant la <question> désactive la <réponse> à la <question>"
+
+#: options.c:42
+msgid "Do not discard comments"
+msgstr "Ne pas éliminer les commentaires"
+
+#: options.c:45
+msgid "Do not discard comments in macro expansions"
+msgstr "Ne pas éliminer les commentaires dans les expansions macro"
+
+#: options.c:48
+msgid "-D<macro>[=<val>]\tDefine a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1"
+msgstr "-D<macro>[=<valeur>]\tDéfinir le <macro> avec la <valeur>. Si seul le <macro> est fourni, <valeur> vaut 1 par défaut"
+
+#: options.c:54
+msgid "-G<number>\tPut global and static data smaller than <number> bytes into a special section (on some targets)"
+msgstr ""
+" -G <nombre> placer les données globales et statiques plus\n"
+" petites que <nombre> d'octets dans une section\n"
+" spéciale (sur certaines cibles)"
+
+#: options.c:57
+msgid "Print the name of header files as they are used"
+msgstr "Afficher les noms des en-têtes de fichiers tel qu'ils sont utilisés"
+
+#: options.c:66
+msgid "Generate make dependencies and compile"
+msgstr "Générer les dépendances pour make et compiler"
+
+#: options.c:75
+msgid "Treat missing header files as generated files"
+msgstr "Traiter les en-têtes manquantes de fichiers comme des fichiers générés"
+
+#: options.c:81
+msgid "Like -MD but ignore system header files"
+msgstr "Identique à -MD mais ignore les en-têtes de fichiers système"
+
+#: options.c:90
+msgid "-MQ <target>\tAdd a MAKE-quoted target"
+msgstr "-MQ <cible>\tajouter MAKE-quoted cible"
+
+#: options.c:96
+msgid "-O<number>\tSet optimization level to <number>"
+msgstr "-O<nombre>\tutiliser le niveau d'optimisation <nombre>"
+
+#: options.c:99
+msgid "Optimize for space rather than speed"
+msgstr "Optimiser l'utilisation de l'espace plutôt que la vitesse"
+
+#: options.c:102
+msgid "Do not generate #line directives"
+msgstr "Ne pas générer de directives #line"
-#: objc/lang-options.h:32
-msgid "Generate code for NeXT runtime environment"
-msgstr "Générer le code pour l'environnement d'exécution du NeXT"
+#: options.c:105
+msgid "-U<macro>\tUndefine <macro>"
+msgstr "-U<macro>\tabandonner la définition <macro>"
-#: objc/lang-options.h:35
+#: options.c:108
+msgid "This switch is deprecated; use -Wextra instead"
+msgstr "Cette option est dépréciée; utiliser -Wextra à la place"
+
+#: options.c:114
+msgid "Warn about returning structures, unions or arrays"
+msgstr "Avertir à propos de structures retournés, unions ou tableaux"
+
+#: options.c:120
+msgid "Warn about casting functions to incompatible types"
+msgstr "Avertir à propos des fonctions de transtypage avec des types incompatibles"
+
+#: options.c:123
+msgid "Warn about pointer casts which increase alignment"
+msgstr "Avertir à propos des pointeurs convertis lesquels augment l'alignement"
+
+#: options.c:126
+msgid "Warn about casts which discard qualifiers"
+msgstr "Avertir à propos des transtypage qui écartent les qualificateurs"
+
+#: options.c:129
+msgid "Warn about subscripts whose type is \"char\""
+msgstr "Avertir à propos des souscripts dont le type est \"char\""
+
+#: options.c:138
+msgid "Warn about possibly confusing type conversions"
+msgstr "Avertir à propos des type de conversions confuses"
+
+#: options.c:141
+msgid "Warn when all constructors and destructors are private"
+msgstr "Avertir lorsque tous les constructeurs et destructeurs sont privés"
+
+#: options.c:144
+msgid "Warn when a declaration is found after a statement"
+msgstr "Avertir lorsqu'une déclaration est spécifiée après une déclaration"
+
+#: options.c:147
+msgid "Warn if deprecated class, method, or field is used"
+msgstr "Avertir si une classe, une méthode ou un champ déprécié est utilisé"
+
+#: options.c:150
+msgid "Warn about uses of __attribute__((deprecated)) declarations"
+msgstr "Avertir à propos de l'utilisation des déclarations « __attribute__ ((deprecated)) »"
+
+#: options.c:153
+msgid "Warn when an optimization pass is disabled"
+msgstr "Avertir lorsque la passe d'optimisation est désactivée"
+
+#: options.c:156
+msgid "Warn about compile-time integer division by zero"
+msgstr "Avertir au sujet de la division entière par zéro au moment de la compilation"
+
+#: options.c:159
+msgid "Warn about violations of Effective C++ style rules"
+msgstr "Avertir à propos des violations des règles de style de Effective C++"
+
+#: options.c:162
+msgid "Warn about stray tokens after #elif and #endif"
+msgstr "Avertir à propos des jetons perdus après #elif et #endif"
+
+#: options.c:165
+msgid "Treat all warnings as errors"
+msgstr "Traiter tous les avertissements commes des erreurs"
+
+#: options.c:168
+msgid "Make implicit function declarations an error"
+msgstr "Faire une erreur lors de déclaration de fonctions implicites"
+
+#: options.c:171
+msgid "Print extra (possibly unwanted) warnings"
+msgstr "Afficher des avertissements superflus (possiblement non désirés)"
+
+#: options.c:174
+msgid "Warn if deprecated empty statements are found"
+msgstr "Avertir si des déclarations vides dépréciés sont trouvées"
+
+#: options.c:177
+msgid "Warn if testing floating point numbers for equality"
+msgstr "Avertir à propos des tests d'égalité sur des nombres flottants"
+
+#: options.c:180
+msgid "Warn about printf/scanf/strftime/strfmon format string anomalies"
+msgstr "Avertir à propos des anomalies de format de chaînes pour printf/scanf/strftime/strfmon"
+
+#: options.c:183
+msgid "Warn if passing too many arguments to a function for its format string"
+msgstr "Avertir lorsqu'il y a trop de passage d'arguments à une fonction pour le format de ses chaînes"
+
+#: options.c:186
+msgid "Warn about format strings that are not literals"
+msgstr "Avertir à propos des chaînes de format qui n'ont pas de litérals"
+
+#: options.c:189
+msgid "Warn about possible security problems with format functions"
+msgstr "Avertir à propos des problèmes possibles de sécurité avec les formats de fonction"
+
+#: options.c:192
+msgid "Warn about strftime formats yielding 2-digit years"
+msgstr "Avertir à propos des formats strftime ne laissant que 2 chiffres pour l'année"
+
+#: options.c:201
+msgid "Enable warnings about inter-procedural problems"
+msgstr "Autoriser les avertissements à propos des problèmes inter-procédural"
+
+#: options.c:207
+msgid "Warn about implicit function declarations"
+msgstr "Avertir à propos des déclarations de fonctions implicites"
+
+#: options.c:210
+msgid "Warn when a declaration does not specify a type"
+msgstr "Avertir lorsqu'une déclaration ne spécifie pas le type"
+
+#: options.c:216
+msgid "Warn about variables which are initialized to themselves."
+msgstr "Avertir au sujet des variables qui sont initialisés par elles-même"
+
+#: options.c:219
+msgid "Warn when an inlined function cannot be inlined"
+msgstr "Avertir lorsque des fonctions en ligne ne peuvent être enligne"
+
+#: options.c:222
+msgid "Warn about invalid uses of the \"offsetof\" macro"
+msgstr "Avertir à propos de l'utilisation invalide de macro \"offsetof\""
+
+#: options.c:225
+msgid "Warn about PCH files that are found but not used"
+msgstr "Avertir à propos des fichier PCH qui sont repérés mais non utilisés"
+
+#: options.c:228
+msgid "-Wlarger-than-<number>\tWarn if an object is larger than <number> bytes"
+msgstr "-Wlarger-than-<nombre>\tavertir si un objet est plus grand que <nombre> d'octets"
+
+#: options.c:231
+msgid "Do not warn about using \"long long\" when -pedantic"
+msgstr "Ne pas avertir à propos de l'utilisation de \"long long\" avec -pedantic"
+
+#: options.c:234
+msgid "Warn about suspicious declarations of \"main\""
+msgstr "Avertir à propos des déclarations douteuses de \"main\""
+
+#: options.c:237
+msgid "Warn about possibly missing braces around initializers"
+msgstr "Avertir à propos des possibles accolades manquantes autour des initialisations"
+
+#: options.c:240
+msgid "Warn about global functions without previous declarations"
+msgstr "Avertir à propos des fonctions globales sans déclaration précédente"
+
+#: options.c:243
+msgid "Warn about functions which might be candidates for format attributes"
+msgstr "Avertir à propos des fonctions qui pourraient être candidates pour les attributs de format"
+
+#: options.c:246
+msgid "Warn about functions which might be candidates for __attribute__((noreturn))"
+msgstr "Avertir à propos des fonctions qui seraient candidates pour __attribute__((noreturn))"
+
+#: options.c:249
+msgid "Warn about global functions without prototypes"
+msgstr "Avertir à propos des fonctions globales sans prototype"
+
+#: options.c:252
+msgid "Warn about use of multi-character character constants"
+msgstr "Avertir à propos de l'utilisation des chaînes de multi-caractères"
+
+#: options.c:255
+msgid "Warn about \"extern\" declarations not at file scope"
+msgstr "Avertir à propos des déclarations \"extern\" qui n'est pas dans l'étendue du fichier"
+
+#: options.c:258
+msgid "Warn when non-templatized friend functions are declared within a template"
+msgstr "Avertir lorsque des fonctions amis sans canevas sont déclarés à l'intérieur d'un canevas"
+
+#: options.c:261
+msgid "Warn about non-virtual destructors"
+msgstr "Avertir à propos des destructeurs non virtuels"
+
+#: options.c:267
+msgid "Warn if a C-style cast is used in a program"
+msgstr "Avertir si le style de transtypage C est utilisé dans un programme"
+
+#: options.c:270
+msgid "Warn if an old-style parameter definition is used"
+msgstr "Avertir lorsqu'un paramètre de style ancien de définition est utilisé"
+
+#: options.c:273
+msgid "Warn if .class files are out of date"
+msgstr "Avertir si des fichier .class sont périmées"
+
+#: options.c:276
+msgid "Warn about overloaded virtual function names"
+msgstr "Avertir à propos de la surcharge des noms de fonctions virtuelles"
+
+#: options.c:279
+msgid "Warn when the packed attribute has no effect on struct layout"
+msgstr "Avertir lorsque les attributs paquetés n'ont pas d'effet sur l'organisation d'un struct"
+
+#: options.c:282
+msgid "Warn when padding is required to align structure members"
+msgstr "Avertir lorsque le remplissage est requis pour aligner les membres de structure"
+
+#: options.c:285
+msgid "Warn about possibly missing parentheses"
+msgstr "Avertir à propos du manque possible de parenthèses"
+
+#: options.c:288
+msgid "Warn when converting the type of pointers to member functions"
+msgstr "Avertir lors de la conversion des types de pointeurs en membres de fonctions"
+
+#: options.c:291
+msgid "Warn about function pointer arithmetic"
+msgstr "Avertir à propos d'arithmétique portant sur un pointeur de fonction"
+
+#: options.c:294
+msgid "Warn if inherited methods are unimplemented"
+msgstr "Avertir si les méthodes héritées ne sont pas implantées"
+
+#: options.c:297
+msgid "Warn about multiple declarations of the same object"
+msgstr "Avertir à propos des déclarations multiples portant sur le même objet"
+
+#: options.c:300
+msgid "Warn if modifiers are specified when not necessary"
+msgstr "Avertir si des modificateurs sont spécifiés sans que cela ne soit nécessaires"
+
+#: options.c:303
+msgid "Warn when the compiler reorders code"
+msgstr "Avertir lorsque le compilateur réordonne le code"
+
+#: options.c:306
+msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)"
+msgstr "Avertir lorsque le type de fonction à retourner par défaut est \"int\" (C) ou à propos d'un type inconsisten à retourner (C++)"
+
+#: options.c:309
msgid "Warn if a selector has multiple methods"
msgstr "Avertir si le sélecteur a de multiples méthodes"
-#: objc/lang-options.h:39
-msgid "Do not warn if inherited methods are unimplemented"
-msgstr "Ne pas avertir si les méthodes héritées ne sont pas implantées"
+#: options.c:312
+msgid "Warn about possible violations of sequence point rules"
+msgstr "Avertir à propos des violations possibles des règles de séquence de points"
-#: objc/lang-options.h:41
-msgid "Generate C header of platform specific features"
-msgstr "Générer des en-têtes C pour les options spécifiques de la plate-forme"
+#: options.c:315
+msgid "Warn when one local variable shadows another"
+msgstr "Avertir lorsqu'une variable locale masque une autre"
-#: objc/lang-options.h:43
-msgid "Specify the name of the class for constant strings"
-msgstr "Spécifier le nom de la classe pour les constantes chaînes"
+#: options.c:318
+msgid "Warn about signed-unsigned comparisons"
+msgstr "Avertir à propos des comparaisons signés ou non signés"
-#. This is the contribution to the `lang_options' array in gcc.c for
-#. treelang.
-#: treelang/lang-options.h:26
-msgid "(debug) trace parsing process"
-msgstr ""
+#: options.c:321
+msgid "Warn when overload promotes from unsigned to signed"
+msgstr "Avertir lorsque la surcharge fait la promotion d'un non signé en signé"
-#: treelang/lang-options.h:27
-msgid "(debug) trace lexical analysis"
-msgstr ""
+#: options.c:324
+msgid "Warn about code which might break strict aliasing rules"
+msgstr "Avertir à propos du code qui pourrait briser les règles strictes d'alias"
-#: config/rs6000/darwin.h:62
-msgid " conflicting code gen style switches are used"
-msgstr ""
+#: options.c:327
+msgid "Warn about unprototyped function declarations"
+msgstr "Avertir à propos des déclarations de fonctions sans prototype"
-#: config/i386/mingw32.h:85 config/i386/cygwin.h:171
-msgid "shared and mdll are not compatible"
-msgstr "shared et mdll ne sont pas compatibles"
+#: options.c:330
+msgid "Warn about constructs with surprising meanings"
+msgstr "Avertir à propos des construits ayant des sens surprenants"
-#: java/lang-specs.h:33
-msgid "-fjni and -femit-class-files are incompatible"
-msgstr "-fjni et -femit-class-files sont incompatibles"
+#: options.c:333
+msgid "Warn about enumerated switches, with no default, missing a case"
+msgstr "Avertir à propos d'un switch énuméré, sans défaut ou un case est manquant"
-#: java/lang-specs.h:34
-msgid "-fjni and -femit-class-file are incompatible"
-msgstr "-fjni et -femit-class-file sont incompatibles"
+#: options.c:336
+msgid "Warn about enumerated switches missing a \"default:\" statement"
+msgstr "Avertir à propos d'un switch énuméré n'ayant pas de déclaration \"default:\""
-#: java/lang-specs.h:35 java/lang-specs.h:36
-msgid "-femit-class-file should used along with -fsyntax-only"
-msgstr "-femit-class-file dervait être utilisé avec -fsyntax-only"
+#: options.c:339
+msgid "Warn about all enumerated switches missing a specific case"
+msgstr "Avertir à propos de tous les switch énumérés où un case spécific manque"
-#: ada/lang-specs.h:38 java/jvspec.c:77 gcc.c:716
-msgid "-pg and -fomit-frame-pointer are incompatible"
-msgstr "-pg et -fomit-frame-pointer sont incompatibles"
+#: options.c:342
+msgid "Warn when synthesis behavior differs from Cfront"
+msgstr "Avertir lorsque le comportement de synthère diffère de Cfront"
-#: ada/lang-specs.h:41
-msgid "-c or -S required for Ada"
-msgstr "-c ou -S requis pour Ada"
+#: options.c:345
+msgid "Do not suppress warnings from system headers"
+msgstr "Ne pas supprimer les avertissements pour les en-têtes système"
-#: config/darwin.h:212
-msgid "-current_version only allowed with -dynamiclib"
-msgstr ""
+#: options.c:348
+msgid "Warn about features not present in traditional C"
+msgstr "Avertir à propos d'une option absente en C traditionnel"
-#: config/darwin.h:215
-msgid "-install_name only allowed with -dynamiclib"
-msgstr ""
+#: options.c:357
+msgid "Warn if an undefined macro is used in an #if directive"
+msgstr "Avertir si un macro indéfini est utilisé dans un directive #if"
-#: config/darwin.h:220
-#, fuzzy
-msgid "-bundle not allowed with -dynamiclib"
-msgstr "-mlong-double-64 n'est pas permis avec -m64"
+#: options.c:360
+msgid "Warn about uninitialized automatic variables"
+msgstr "Avertir à propos des variables automatiques non initialisées"
-#: config/darwin.h:221
-#, fuzzy
-msgid "-bundle_loader not allowed with -dynamiclib"
-msgstr "-mlong-double-64 n'est pas permis avec -m64"
+#: options.c:363
+msgid "Warn about unrecognized pragmas"
+msgstr "Avertir à propos des pragmas non reconnus"
-#: config/darwin.h:222
-#, fuzzy
-msgid "-client_name not allowed with -dynamiclib"
-msgstr "-mlong-double-64 n'est pas permis avec -m64"
+#: options.c:366
+msgid "Warn about code that will never be executed"
+msgstr "Avertir à propos du code qui ne sera jamais exécuté"
-#: config/darwin.h:225
-msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
-msgstr ""
+#: options.c:369
+msgid "Enable all -Wunused- warnings"
+msgstr "Autoriser tous les -Wunused- warnings"
-#: config/darwin.h:226
-msgid "-force_flat_namespace not allowed with -dynamiclib"
-msgstr ""
+#: options.c:372
+msgid "Warn when a function is unused"
+msgstr "Avertir lorsqu'une fonction est inutilisée"
-#: config/darwin.h:228
-msgid "-keep_private_externs not allowed with -dynamiclib"
-msgstr ""
+#: options.c:375
+msgid "Warn when a label is unused"
+msgstr "Avertir lorsqu'une étiquette est inutilisée"
-#: config/darwin.h:229
-#, fuzzy
-msgid "-private_bundle not allowed with -dynamiclib"
-msgstr "-mlong-double-64 n'est pas permis avec -m64"
+#: options.c:378
+msgid "Warn about macros defined in the main file that are not used"
+msgstr "Avertir à propos de macros définis dans le fichier principal qui ne sont pas utilisés"
-#: config/sparc/freebsd.h:34 config/ia64/freebsd.h:23
-#: config/alpha/freebsd.h:44 config/rs6000/sysv4.h:1107
-#: config/i386/freebsd-aout.h:213
-msgid "`-p' not supported; use `-pg' and gprof(1)"
-msgstr "«-p» n'est pas supporté; utiliser «-pg» et gprof(1)"
+#: options.c:381
+msgid "Warn when a function parameter is unused"
+msgstr "Avertir lorsqu'un paramètre de fonction est inutilisé"
-#: config/sparc/linux64.h:197 config/sparc/linux64.h:208
-#: config/sparc/netbsd-elf.h:163 config/sparc/netbsd-elf.h:182
-#: config/sparc/sol2-bi.h:168 config/sparc/sol2-bi.h:178
-msgid "may not use both -m32 and -m64"
-msgstr "ne peut utiliser ensemble -m32 et -m64"
+#: options.c:384
+msgid "Warn when an expression value is unused"
+msgstr "Avertir lorsque la valeur d'une expression n'est pas utilisée"
+
+#: options.c:387
+msgid "Warn when a variable is unused"
+msgstr "Avertir lorsque 'une variable est inutilisée"
+
+#: options.c:390
+msgid "Give strings the type \"array of char\""
+msgstr "Fournir des chaînes de type \"array of char\""
+
+#: options.c:393
+msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead"
+msgstr "Un synonyme pour -std=c89. Dans une version future de GCC cela deviendra synonyme de -std=c99 à la place"
+
+#: options.c:396
+msgid "-aux-info <file>\tEmit declaration information into <file>"
+msgstr "-aux-info <fichier>\tproduire une déclaration d'information dans le <fichier>"
+
+#: options.c:408
+msgid "-d<letters>\tEnable dumps from specific passes of the compiler"
+msgstr "-d<lettres>\tautoriser les vidanges pour des passes spécifiques du compilateur"
+
+#: options.c:411
+msgid "-dumpbase <file>\tSet the file basename to be used for dumps"
+msgstr "-dumpbase <fichier>\tfixer le nom de base du fichier à utiliser pour les vidanges"
+
+#: options.c:414
+msgid "--CLASSPATH\tDeprecated; use --classpath instead"
+msgstr "--CLASSPATH\tdéprécié; utiliser --classpath à la place"
+
+#: options.c:429
+msgid "Enforce class member access control semantics"
+msgstr "Forcer à la sémantique du contrôle d'accès à un membre de classe"
+
+#: options.c:432
+msgid "Align the start of functions"
+msgstr "Aligner le début des fonctions"
+
+#: options.c:438
+msgid "Align labels which are only reached by jumping"
+msgstr "Aligner les étiquettes qui sont seulement atteintes par sauts"
+
+#: options.c:444
+msgid "Align all labels"
+msgstr "Aligner toutes les étiquettes"
+
+#: options.c:450
+msgid "Align the start of loops"
+msgstr "Aligner le début des boucles"
+
+#: options.c:459
+msgid "Change when template instances are emitted"
+msgstr "Changer lorsque les instances du canevas sont produites"
+
+#: options.c:462
+msgid "Specify that arguments may alias each other and globals"
+msgstr "Spécifier que les arguments peuvent avoir des alias l'un vers l'autre et globaux"
+
+#: options.c:465
+msgid "Assume arguments may alias globals but not each other"
+msgstr "Présumer que les arguments peuvent avoir des alias globaux mais pas l'un vers l'autre"
+
+#: options.c:468
+msgid "Assume arguments alias neither each other nor globals"
+msgstr "Assumer que les alias d'arguments n'en ont pas l'un vers l'autre ou globaux"
+
+#: options.c:471
+msgid "Recognize the \"asm\" keyword"
+msgstr "Reconnaître le mot clé « asm »"
+
+#: options.c:483
+msgid "Generate unwind tables that are exact at each instruction boundary"
+msgstr "Générer des tables étendues qui soient exactes pour chaque borne d'instruction"
+
+#: options.c:486
+msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements"
+msgstr "Traiter les variables locales et les blocs COMMON comme s'ils étaient nommés dans une déclaration SAVE"
+
+#: options.c:489
+msgid "Backslashes in character and hollerith constants are special (not C-style)"
+msgstr "Barres obliques inverses dans les constantes de caractères ou d'hollerith ne sont pas particulières (pas de style C)"
+
+#: options.c:492
+msgid "Delete libU77 intrinsics with bad interfaces"
+msgstr "Détruire les intrinsèques libU77 ayant des interfaces erronées"
+
+#: options.c:495
+msgid "Disable libU77 intrinsics with bad interfaces"
+msgstr "Désactiver les intrinsèques libU77 ayant des interfaces erronées"
+
+#: options.c:498
+msgid "Enable libU77 intrinsics with bad interfaces"
+msgstr "Autoriser les intrinsèques libU77 ayant des interfaces erronées"
+
+#: options.c:501
+msgid "Hide libU77 intrinsics with bad interfaces"
+msgstr "Cacher les intrinsèques libU77 ayant des interfaces erronées"
+
+#: options.c:504
+msgid "--bootclasspath=<path>\tReplace system path"
+msgstr "--bootclasspath=<chemin>\tremplacer le <chemin> système"
+
+#: options.c:507
+msgid "Generate code to check bounds before indexing arrays"
+msgstr "Générer du code pour vérifier les bornes avant d'indexer les tableaux"
+
+#: options.c:510
+msgid "Replace add, compare, branch with branch on count register"
+msgstr "Remplacer add,compare,branch avec des branchements utilisant un compteur registre"
+
+#: options.c:513
+msgid "Use profiling information for branch probabilities"
+msgstr "Utiliser les informations de profilage pour les probabilités de branchements"
+
+#: options.c:516
+msgid "Perform branch target load optimization before prologue / epilogue threading"
+msgstr "Effectuer l'optimisation du chargement du branchement cible avant le thread prologue / epilogue"
+
+#: options.c:519
+msgid "Perform branch target load optimization after prologue / epilogue threading"
+msgstr "Effectuer l'optimisation du chargement du branchement cible après le thread prologue / epilogue"
+
+#: options.c:522
+msgid "Recognize built-in functions"
+msgstr "Reconnaître aucun construit dans les fonctions"
+
+#: options.c:528
+msgid "-fcall-saved-<register>\tMark <register> as being preserved across functions"
+msgstr "-fcall-saved-<registre>\tmarquer le <registre> comme étant préservé à travers les fonctions"
+
+#: options.c:531
+msgid "-fcall-used-<register>\tMark <register> as being corrupted by function calls"
+msgstr "-fcall-used-<registre>\tmarquer le <registre> comme étant corrompu par les appels de fonctions"
+
+#: options.c:534
+msgid "Save registers around function calls"
+msgstr "Sauvegarder les registres autour des appels de fonction"
-#: config/arm/arm.h:178
+#: options.c:537
+msgid "Program written in strict mixed-case"
+msgstr "Programme écrit dans une stricte casse mélangée"
+
+#: options.c:540
+msgid "Compile as if program written in lowercase"
+msgstr "Compiler comme si le programme était écrit en minuscules"
+
+#: options.c:543
+msgid "Preserve case used in program"
+msgstr "Préserver la casse utilisée dans un programme"
+
+#: options.c:546
+msgid "Program written in lowercase"
+msgstr "Programmes écrit en minuscules"
+
+#: options.c:549
+msgid "Program written in uppercase"
+msgstr "Programme écrit en majuscules"
+
+#: options.c:552
+msgid "Compile as if program written in uppercase"
+msgstr "Compiler comme si le programme était écrit en majuscules"
+
+#: options.c:555
+msgid "Check the return value of new"
+msgstr "Vérifier la valeur retournée de new"
+
+#: options.c:561
+msgid "--classpath=<path>\tSet class path"
+msgstr "--classpath=<chemin>\tfixer le chemin des classes"
+
+#: options.c:564
+msgid "Do not put uninitialized globals in the common section"
+msgstr "Ne pas placer de globaux non initialisés dans la section commune"
+
+#: options.c:570
+msgid "Allow the arguments of the '?' operator to have different types"
+msgstr "Permettre les arguments de l'opérateur « ? » d'avoir différents types"
+
+#: options.c:573
+msgid "Reduce the size of object files"
+msgstr "Réduire la taille des fichiers objets"
+
+#: options.c:576
+msgid "Make string literals \"const char[]\" not \"char[]\""
+msgstr "Rendre les chaînes de mots \"const char[]\" et non pas \"char[]\""
+
+#: options.c:579
+msgid "-fconst-string-class=<name>\tUse class <name> for constant strings"
+msgstr "-fconst-string-class=<nom>\tutiliser la classe <nom> pour la chaînes de constantes"
+
+#: options.c:582
+msgid "Perform a register copy-propagation optimization pass"
+msgstr "Effectuer la passe d'optimisation de la propagation-de-copie par registre"
+
+#: options.c:585
+msgid "Perform cross-jumping optimization"
+msgstr "Exécuter des optimisations de sauts croisés"
+
+#: options.c:588
+msgid "When running CSE, follow jumps to their targets"
+msgstr "Lorsque CSE s'exécute, suivre les sauts vers leurs cibles"
+
+#: options.c:591
+msgid "When running CSE, follow conditional jumps"
+msgstr "Lorsque CSE s'exécute, suivre les sauts considitionnels vers leurs cibles"
+
+#: options.c:594
+msgid "Place data items into their own section"
+msgstr "placer les items des données dans leur propre section"
+
+#: options.c:597
+msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
+msgstr "Produire des information spéciales de mise au point pour COMMON et EQUIVALENCE (désactivé)"
+
+#: options.c:600
+msgid "Inline member functions by default"
+msgstr "Rendre enligne un membre de fonction par défaut"
+
+#: options.c:603
+msgid "Defer popping functions args from stack until later"
+msgstr "Déférer le dépilage des arguments de fonction de la pile plus tard"
+
+#: options.c:606
+msgid "Attempt to fill delay slots of branch instructions"
+msgstr "Tented de remplir de délais les fentes des instructions de branchement"
+
+#: options.c:609
+msgid "Delete useless null pointer checks"
+msgstr "Détruire les vérifications de pointeurs nul inutiles"
+
+#: options.c:612
+msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics"
+msgstr "-fdiagnostics-show-location=[once|every-line]\tindiquer combien de fois les informations de localisation des sources doivent être produites au début d'un diagnostique lorsque les lignes doivent s'enrouler"
+
+#: options.c:615
+msgid "Allow '$' in symbol names"
+msgstr "Permettre '$' dans les noms de symboles"
+
+#: options.c:618
+msgid "Permit '$' as an identifier character"
+msgstr "Autoriser '$' comme identificateur de caractère"
+
+#: options.c:624
+msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
+msgstr "Supprimer dans la sortie les numéros d'instructions et de notes de lignes dans les vidanges de mises au point"
+
+#: options.c:630
+msgid "Perform DWARF2 duplicate elimination"
+msgstr "Exécuter une élimination DAWRF2 des doublons"
+
+#: options.c:633 options.c:636
+msgid "Perform unused type elimination in debug info"
+msgstr "Effectuer l'élimination des types non utilisés dans l'information de mise au point"
+
+#: options.c:645
+msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
+msgstr "Avoir un frontal d'émulation pour l'arithmétique COMPLEXE pour éviter les bugs"
+
+#: options.c:648
+msgid "--encoding=<encoding>\tChoose input encoding (defaults from your locale)"
+msgstr "--encoding=<encodage>\tchoisir l'encodade d'entrée (par défaut provient de la locale)"
+
+#: options.c:651
+msgid "Generate code to check exception specifications"
+msgstr "Générer le code pour vérifier les exceptions de spécifications"
+
+#: options.c:657
+msgid "Enable exception handling"
+msgstr "Autoriser le traitement des exceptions"
+
+#: options.c:660
+msgid "-fexec-charset=<cset>\tConvert all strings and character constants to character set <cset>"
+msgstr "-fexec-charset=<jeucar>\tconvertir toutes les chaînes et les constantes de caractères en jeu de caractères <jeucar>"
+
+#: options.c:663
+msgid "Perform a number of minor, expensive optimizations"
+msgstr "Effectuer un nombre mineur d'optimisations coûteuses"
+
+#: options.c:672
+msgid "f2c-compatible code can be generated"
+msgstr "code f2c compatible peut être généré"
+
+#: options.c:675
+msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Détruire les supports f2c intrinsèques non Fortran 77"
+
+#: options.c:678
+msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Désactiver les supports f2c intrinsèques non Fortran 77"
+
+#: options.c:681
+msgid "Enable non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Autoriser les supports f2c intrinsèques non Fortran 77"
+
+#: options.c:684
+msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
+msgstr "Cacher les supports f2c intrinsèques non Fortran 77"
+
+#: options.c:687
+msgid "Unsupported; generate libf2c-calling code"
+msgstr "Non supporté; générer le code d'appel libf2c"
+
+#: options.c:690
+msgid "Program is written in typical FORTRAN 66 dialect"
+msgstr "Programme est écrit dans un dialecte typique FORTRAN 66"
+
+#: options.c:693
+msgid "Program is written in typical Unix-f77 dialect"
+msgstr "Programme est écrit dans un dialecte typique Unix f77"
+
+#: options.c:696
+msgid "Program is written in Fortran-90-ish dialect"
+msgstr "Programme est écrit dans un dialecte Fortran 90"
+
+#: options.c:699
+msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Détruire les supports F90 intrinsèques non Fortran 77"
+
+#: options.c:702
+msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Désactiver les supports F90 intrinsèques non Fortran 77"
+
+#: options.c:705
+msgid "Enable non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Autoriser les supports F90 intrinsèques non Fortran 77"
+
+#: options.c:708
+msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
+msgstr "Cacher les supports F90 intrinsèques non Fortran 77"
+
+#: options.c:720
+msgid "Assume no NaNs or infinities are generated"
+msgstr "Assumer qu'aucun NaNs ou infinités ne soit généré"
+
+#: options.c:723
+msgid "-ffixed-<register>\tMark <register> as being unavailable to the compiler"
+msgstr "-ffixed-<registre>\tmarquer le <registre> comme n'étant plus disponible pour le compilateur"
+
+#: options.c:729
+msgid "ffixed-line-length-<number>\tSet the maximum line length to <number>"
+msgstr "ffixed-line-limit-<nombre>\tfixer la longueur maximale de la ligne à <nombre>"
+
+#: options.c:732
+msgid "Unsupported; affects code generation of arrays"
+msgstr "Non supporté; affecte la génération de code des tableaux"
+
+#: options.c:735
+msgid "Do not store floats in registers"
+msgstr "Ne pas stocker les flottants dans les registres"
+
+#: options.c:738
+msgid "Scope of for-init-statement variables is local to the loop"
+msgstr "Étendue des variables for-init-statement est local à la boucle"
+
+#: options.c:741
+msgid "Copy memory address constants into registers before use"
+msgstr "Copier les constantes d'adresses mémoire dans les registres avant de les utiliser"
+
+#: options.c:744
+msgid "Always check for non gcj generated classes archives"
+msgstr "Toujours vérifier dans les archives de classes non générées gcj"
+
+#: options.c:747
+msgid "Copy memory operands into registers before use"
+msgstr "Copier les opérandes mémoire dans les registres avant de les utiliser"
+
+#: options.c:750
+msgid "Generate code to check subscript and substring bounds"
+msgstr "Générer du code pour vérifier les bornes des souscripts et des sous-chaînes"
+
+#: options.c:753
+msgid "Program is written in Fortran-90-ish free form"
+msgstr "Programme est écrit dans un style libre Fortran 90"
+
+#: options.c:756
+msgid "Do not assume that standard C libraries and \"main\" exist"
+msgstr "Ne pas assumer que les bibliothèques standards C et \"main\" existent"
+
+#: options.c:759
+msgid "Allow function addresses to be held in registers"
+msgstr "Autoriser le maintien des adresses de fonction dans les registres"
+
+#: options.c:762
+msgid "Place each function into its own section"
+msgstr "placer chaque fonction dans sa propre section"
+
+#: options.c:765
+msgid "Perform global common subexpression elimination"
+msgstr "Exécuter l'élimination de sous-expression commune globale"
+
+#: options.c:768
+msgid "Perform redundant load after store elimination in global common subexpression elimination"
+msgstr "Exécuter un stockage redondant après l'élimination de sous-expression commune globale"
+
+#: options.c:771
+msgid "Perform enhanced load motion during global common subexpression elimination"
+msgstr "Exécuter un chargement amélioré lors de l'élimination de sous-expression commune globale"
+
+#: options.c:774
+msgid "Perform store motion after global common subexpression elimination"
+msgstr "Exécuter un stockage après l'élimination de sous-expression commune globale"
+
+#: options.c:777
+msgid "Enable fatal diagnostics about inter-procedural problems"
+msgstr "Autoriser les diagnostiques fatals à propos des problèmes entre procédures"
+
+#: options.c:780
+msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
+msgstr "Détruire les supports g77 intrinsèques non Fortran 77"
+
+#: options.c:783
+msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
+msgstr "Désactiver les supports g77 intrinsèques non Fortran 77"
+
+#: options.c:786
+msgid "Enable non-FORTRAN 77 intrinsics F90 supports"
+msgstr "Autoriser les supports F90 intrinsèques non Fortran 77"
+
+#: options.c:789
+msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
+msgstr "Cacher les supports g77 intrinsèques non Fortran 77"
+
+#: options.c:792
+msgid "Recognize GNU-defined keywords"
+msgstr "Reconnaître les mots clés définis GNU"
+
+#: options.c:795
+msgid "Generate code for GNU runtime environment"
+msgstr "Générer du code pour l'environnement GNU d'exécution"
+
+#: options.c:798
+msgid "Enable guessing of branch probabilities"
+msgstr "Autoriser l'estimation des probabilités de branchement"
+
+#: options.c:813
+msgid "Assume normal C execution environment"
+msgstr "Présumer que l'environnement d'exécution C est normal"
+
+#: options.c:816
+msgid "Enable support for huge objects"
+msgstr "Autoriser le support des grands objets"
+
+#: options.c:819
+msgid "Process #ident directives"
+msgstr "Traiter les directive #ident"
+
+#: options.c:822
+msgid "Perform conversion of conditional jumps to branchless equivalents"
+msgstr "Exécuter la conversion des sauts conditionels à des équivalents sans branchements"
+
+#: options.c:825
+msgid "Perform conversion of conditional jumps to conditional execution"
+msgstr "Exécuter la conversion des sauts conditionnels à une exécution conditionnel"
+
+#: options.c:828
+msgid "Export functions even if they can be inlined"
+msgstr "Exporter les fonctions même si elles peuvent être enligne"
+
+#: options.c:831
+msgid "Emit implicit instantiations of inline templates"
+msgstr "Produire les instanciations explicites de canevas enligne"
+
+#: options.c:834
+msgid "Emit implicit instantiations of templates"
+msgstr "Produire les instanciations explicites de canevas"
+
+#: options.c:837
+msgid "Use offset tables for virtual method calls"
+msgstr "Utiliser des tables de décalage pour les appels de méthodes virtuelles"
+
+#: options.c:840
+msgid "Do not generate .size directives"
+msgstr "Ne pas générer de directives .size"
+
+#: options.c:843
+msgid "Initialize local vars and arrays to zero"
+msgstr "Initialiser les vars locales et les tableaux à zéro"
+
+#: options.c:846
+msgid "Pay attention to the \"inline\" keyword"
+msgstr "Porter attention au mot clé \"inline\""
+
+#: options.c:855
+msgid "-finline-limit=<number>\tLimit the size of inlined functions to <number>"
+msgstr "-finline-limit=<nombre>\tlimiter la taille des fonction enligne à <nombre>"
+
+#: options.c:858
+msgid "-finput-charset=<cset> Specify the default character set for source files."
+msgstr "-finput-charset=<jeucar> spécifier le jeu de caractères par défaut pour les fichiers source"
+
+#: options.c:861
+msgid "Instrument function entry and exit with profiling calls"
+msgstr "Traiter les entrées et les sorties des fonctions avec appels de profilage"
+
+#: options.c:864
+msgid "Intrinsics letters in arbitrary cases"
+msgstr "Lettres d'instrinsèques en casse arbitraire"
+
+#: options.c:867
+msgid "Intrinsics spelled as e.g. SqRt"
+msgstr "Intrinsèques épellées tel que SqRt"
+
+#: options.c:870
+msgid "Intrinsics in lowercase"
+msgstr "Intrinsèques en minuscules"
+
+#: options.c:873
+msgid "Intrinsics in uppercase"
+msgstr "Intrinsèques en majuscules"
+
+#: options.c:876
+msgid "Assume native functions are implemented using JNI"
+msgstr "Présumer que les fonctions natives sont implantées et qu'elles utilisent JNI"
+
+#: options.c:879
+msgid "Generate code for functions even if they are fully inlined"
+msgstr "Générer le code pour les fonctions même si elles sont complètement enligne"
+
+#: options.c:882
+msgid "Emit static const variables even if they are not used"
+msgstr "Produire des variables constantes statiques même si elles ne sont pas utilisées"
+
+#: options.c:888
+msgid "Give external symbols a leading underscore"
+msgstr "Afficher les symboles externes préfixés d'un caractère de soulignement"
+
+#: options.c:891
+msgid "Perform loop optimizations"
+msgstr "Exécuter l'optimisation des boucles"
+
+#: options.c:894
+msgid "Language keyword letters in arbitrary cases"
+msgstr "Lettres des mots clés du langage dans des casses arbitraires"
+
+#: options.c:897
+msgid "Language keywords spelled as e.g. IOStat"
+msgstr "Mots clés du langage épellés tel que IOStat"
+
+#: options.c:900
+msgid "Language keywords in lowercase"
+msgstr "Mots clés du langage en minuscules"
+
+#: options.c:903
+msgid "Language keywords in uppercase"
+msgstr "Mots clés du langage en majuscules"
+
+#: options.c:906
+msgid "Set errno after built-in math functions"
+msgstr "Initialiser errno après les fonctions internes mathématiques"
+
+#: options.c:909
+msgid "Report on permanent memory allocation"
+msgstr "Rapporter l'allocation de mémoire permanente"
+
+#: options.c:912
+msgid "Attempt to merge identical constants and constant variables"
+msgstr "Tentative de fusion de constantes identique et des variables constantes"
+
+#: options.c:915
+msgid "Attempt to merge identical constants across compilation units"
+msgstr "Tentative de fusion de constantes identiques à travers des unités de compilation"
+
+#: options.c:918
+msgid "-fmessage-length=<number>\tLimit diagnostics to <number> characters per line. 0 suppresses line-wrapping"
+msgstr "-fmessage-length=<nombre>\tlimiter la longueur des diagnotiques à <nombre> de caractères par ligne. 0 supprime l'enroulement de ligne"
+
+#: options.c:921
+msgid "Delete MIL-STD 1753 intrinsics"
+msgstr "Détruire les intrinsèques MIL-STD 1753"
+
+#: options.c:924
+msgid "Disable MIL-STD 1753 intrinsics"
+msgstr "Désactiver les intrinsèques MIL-STD 1753"
+
+#: options.c:927
+msgid "Enable MIL-STD 1753 intrinsics"
+msgstr "Autoriser intrinsèques MIL-STD 1753"
+
+#: options.c:930
+msgid "Hide MIL-STD 1753 intrinsics"
+msgstr "Cacher les intrinsèques MIL-STD 1753"
+
+#: options.c:933
+msgid "Force all loop invariant computations out of loops"
+msgstr "Forcer pour toutes les boucles des calculs invariants en dehors des boucles"
+
+#: options.c:936
+msgid "Don't warn about uses of Microsoft extensions"
+msgstr "Ne donner d'avertissement au sujet de l'utilisation des extensions de Microsoft"
+
+#: options.c:945
+msgid "Use graph-coloring register allocation"
+msgstr "Utiliser l'allocation des registres par coloriage de graphe"
+
+#: options.c:948
+msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
+msgstr "Générer le code pour l'environnement d'exécution du NeXT (Apple Mac OS X)"
+
+#: options.c:951
+msgid "Assume that receivers of Objective-C messages may be nil"
+msgstr "Assumer que les receveur de messages Objective-C peut être NIL"
+
+#: options.c:954
+msgid "Support synchronous non-call exceptions"
+msgstr "Supporter les exceptions synchrones des non appels"
+
+#: options.c:963
+msgid "Enable Objective-C exception and synchronization syntax"
+msgstr "Autoriser l'exception Objective-C et la synchronisation de syntaxe"
+
+#: options.c:966 options.c:1290
+msgid "Perform loop unrolling for all loops"
+msgstr "Exécuter la boucle par désenroulement de toutes les boucles"
+
+#: options.c:969 options.c:1293
+msgid "Perform loop unrolling when iteration count is known"
+msgstr "Exécuter un dé-roulement des boucles lorsque le compteur d'itération est connu"
+
+#: options.c:972
+msgid "When possible do not generate stack frames"
+msgstr "Lorsque c'est possible ne pas générer des trames de pile"
+
+#: options.c:975
+msgid "Take at least one trip through each iterative DO loop"
+msgstr "Exécuter une dernière fois la visite à traves chaque boucle itérative DO"
+
+#: options.c:978
+msgid "Recognize C++ kewords like \"compl\" and \"xor\""
+msgstr "Reconnaître les mots clés C++ comme \"compl\" et \"xor\""
+
+#: options.c:981
+msgid "Do the full register move optimization pass"
+msgstr "Effectuer la passe d'optimisation complète des déplacements par les registres"
+
+#: options.c:984
+msgid "Optimize sibling and tail recursive calls"
+msgstr "Optimiser sur mesure les appels enfants et récursif"
+
+#: options.c:987
+msgid "Enable optimization of static class initialization code"
+msgstr "Autorisser l'optimisation du code d'initialisation de classe statique"
+
+#: options.c:990
+msgid "Enable optional diagnostics"
+msgstr "Autoriser les diagnostiques optionnels"
+
+#: options.c:996
+msgid "Pack structure members together without holes"
+msgstr "Empaqueter les membres des structures ensembles sans trous"
+
+#: options.c:999
+msgid "Return small aggregates in memory, not registers"
+msgstr "Retourner les petits aggrégats en mémoire, pas dans les registres"
+
+#: options.c:1005
+msgid "Warn about use of (only a few for now) Fortran extensions"
+msgstr "Avertir à propos de l'utilisation (très peu pour l'instant) des extensions Fortran"
+
+#: options.c:1008
+msgid "Perform loop peeling"
+msgstr "Exécuter des réductions de boucles"
+
+#: options.c:1011
+msgid "Enable machine specific peephole optimizations"
+msgstr "Autoriser les optimisations des trous spécifiques à une machine"
+
+#: options.c:1014
+msgid "Enable an RTL peephole pass before sched2"
+msgstr "Autoriser l'exécution de la passe RTL avant sched2"
+
+#: options.c:1017
+msgid "Downgrade conformance errors to warnings"
+msgstr "Dégrader les erreurs de conformité en des avertissements"
+
+#: options.c:1020
+msgid "Generate position-independent code if possible"
+msgstr "Générer du code indépendant de la position si possible"
+
+#: options.c:1023
+msgid "Generate position-independent code for executables if possible"
+msgstr "Générer du code indépendant de la position pour les exécutables si possible"
+
+#: options.c:1026
+msgid "Generate prefetch instructions, if available, for arrays in loops"
+msgstr "Générer des instructions prérecherchées, si disponible, pour les tableaux dans les boucles"
+
+#: options.c:1032
+msgid "Enable basic program profiling code"
+msgstr "Autoriser le code de profilage de base du programme"
+
+#: options.c:1035
+msgid "Insert arc-based program profiling code"
+msgstr "Insérer le code de profilage du programme de arc-based"
+
+#: options.c:1038
+msgid "Enable common options for generating profile info for profile feedback directed optimizations"
+msgstr "Autoriser les options communes pour la génération d'information de profile pour le feedback d'optimisation direct de profile"
+
+#: options.c:1041
+msgid "Enable common options for performing profile feedback directed optimizations"
+msgstr "Autoriser les options communes pour effectuer le feedback d'optimisation direct de profile"
+
+#: options.c:1044
+msgid "Insert code to profile values of expressions"
+msgstr "Insérer le code pour profile les expressions de valeurs"
+
+#: options.c:1050
+msgid "-frandom-seed=<string>\tMake compile reproducible using <string>"
+msgstr "-frandom-seed=<chaîne>\tfaire une compilation reproduisible en utilisant <chaîne>"
+
+#: options.c:1053
+msgid "Strength reduce all loop general induction variables"
+msgstr "Renforcer la réduction de toutes les boucles par induction des variables"
+
+#: options.c:1056
+msgid "Return small aggregates in registers"
+msgstr "Retourner les petits aggrégats dans les registres"
+
+#: options.c:1059
+msgid "Enables a register move optimization"
+msgstr "Autoriser l'optimisation des déplacements par registre"
+
+#: options.c:1062
+msgid "Perform a register renaming optimization pass"
+msgstr "Effectuer une changement de nom de registres après une passe d'optimisation"
+
+#: options.c:1065
+msgid "Reorder basic blocks to improve code placement"
+msgstr "Ré-ordonner les blocs de base pour améliorer l'emplacement de code"
+
+#: options.c:1068
+msgid "Reorder functions to improve code placement"
+msgstr "Ré-ordonner les fonctions pour améliorer l'emplacement de code"
+
+#: options.c:1071
+msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime"
+msgstr "Utiliser le mode Fix-and-=Continue pour indique que des fichiers objets peuvent interchangés lors de l'éexécution"
+
+#: options.c:1074
+msgid "Enable automatic template instantiation"
+msgstr "Autoriser l'instanciation automatique de canevas"
+
+#: options.c:1077
+msgid "Add a common subexpression elimination pass after loop optimizations"
+msgstr "Ajouter une passe d'élimination d'une sous-expression commune après les optimisations de boucle"
+
+#: options.c:1080
+msgid "Run the loop optimizer twice"
+msgstr "Exécuter l'optimiseur de boucle deux fois"
+
+#: options.c:1083
+msgid "Disable optimizations that assume default FP rounding behavior"
+msgstr "Interdire les optimisation qui assument un comportement d'arrondissement FP par défaut"
+
+#: options.c:1086
+msgid "Generate run time type descriptor information"
+msgstr "Générer l'information pour un type de descripteur lors de l'exécution"
+
+#: options.c:1089
+msgid "Enable scheduling across basic blocks"
+msgstr "Autoriser l'ordonnancement à travers les blocs de base"
+
+#: options.c:1092
+msgid "Allow speculative motion of non-loads"
+msgstr "Autoriser le mouvement spéculatif de non chargements"
+
+#: options.c:1095
+msgid "Allow speculative motion of some loads"
+msgstr "Autoriser le mouvement spéculatif de quelques chargements"
+
+#: options.c:1098
+msgid "Allow speculative motion of more loads"
+msgstr "Autoriser le mouvement spéculatif de plusieurs chargements"
+
+#: options.c:1101
+msgid "Allow premature scheduling of queued insns"
+msgstr "Autoriser l'ordonnancement prématuré de queues insns"
+
+#: options.c:1104
+msgid "Set dependence distance checking in premature scheduling of queued insns"
+msgstr "Fixer la distance de vérification de dépendance dans l'ordonnancement prématuré d'insns en queue"
+
+#: options.c:1107
+msgid "-fsched-stalled-insns-dep=<number> Set dependence distance checking in premature scheduling of queued insns"
+msgstr "-fsched-stalled-insns-dep=<nombre> fixer la distance de vérification de dépendance dans l'ordonnancement d'insnsn en queue"
+
+#: options.c:1110
+msgid "-fsched-stalled-insns=<number> Set number of queued insns that can be prematurely scheduled"
+msgstr "-fsched-stalled-insns=<nombre> fixer le nombre d'insns en queu qui peuvent être prématurément ordonnancés"
+
+#: options.c:1113
+msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler"
+msgstr "-fsched-verbose=<numéro>\tnitialiser le niveau de verbosité de l'ordonnanceur"
+
+#: options.c:1116
+msgid "If scheduling post reload, do superblock scheduling"
+msgstr "Si l'ordonnancement fait une post recharge, faire un ordonnancement de super bloc"
+
+#: options.c:1119
+msgid "If scheduling post reload, do trace scheduling"
+msgstr "Si l'ordonnancement fait une post recharge, laisse une trace de l'ordonnancement"
+
+#: options.c:1122
+msgid "Reschedule instructions before register allocation"
+msgstr "Réordonnancer les instructions avant l'allocation de registres"
+
+#: options.c:1125
+msgid "Reschedule instructions after register allocation"
+msgstr "Réordonnancer les instructions après l'allocation de registres"
+
+#: options.c:1128
+msgid "Allow appending a second underscore to externals"
+msgstr "Permettre l'ajout d'un second caractère de soulignement aux externes"
+
+#: options.c:1131
+msgid "Mark data as shared rather than private"
+msgstr "Marquer les données comme partagées au lieu de privées"
+
+#: options.c:1134
+msgid "Use the same size for double as for float"
+msgstr "Utiliser la même taille pour un double que pour un flottant"
+
+#: options.c:1137
+msgid "Use the narrowest integer type possible for enumeration types"
+msgstr "Utiliser le type d'entier le moins large possible pour les types d'énumération"
+
+#: options.c:1140
+msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\""
+msgstr "Écraser le type sous-jacent de \"wchar_t\" vers \"unsigned short\""
+
+#: options.c:1146
+msgid "Disable optimizations observable by IEEE signaling NaNs"
+msgstr "Désactiver les optimisations observable par le signalement NaNs IEEE"
+
+#: options.c:1149
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed"
+msgstr "Lorsque \"signed\" ou \"unsigned\" n,est pas fourni rendre le champ de bits signé"
+
+#: options.c:1152
+msgid "Make \"char\" signed by default"
+msgstr "Rendre les « char » signés par défaut"
+
+#: options.c:1155
+msgid "Do not print names of program units as they are compiled"
+msgstr "Afficher les noms des unités de programme tels que compilées"
+
+#: options.c:1158
+msgid "Convert floating point constants to single precision constants"
+msgstr "Convertir les constantes en virgules flottantes en constantes de simple précision"
+
+#: options.c:1161
+msgid "Internally convert most source to lowercase"
+msgstr "Convertir de manière interne la majorité des sources en majuscules"
+
+#: options.c:1164
+msgid "Internally preserve source case"
+msgstr "Préserver à l'interne la casse des sources"
+
+#: options.c:1167
+msgid "Internally convert most source to uppercase"
+msgstr "Convertir à l'interne la majorité des sources en majuscules"
+
+#: options.c:1173
+msgid "Insert stack checking code into the program"
+msgstr "Insérer du code de vérificaion de la pile dans le programme"
+
+#: options.c:1179
+msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>"
+msgstr "-fstack-limit-register=<registre>\tfaire un déroutement si la pile va au delà du <registre>"
+
+#: options.c:1182
+msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>"
+msgstr "-fstack-limit-symbol=<nom>\tfaire un déroutement si la pile va au delà du symbole <nom>"
+
+#: options.c:1185
+msgid "Display statistics accumulated during compilation"
+msgstr "Afficher les statistiques accumulés durant la compilation"
+
+#: options.c:1188
+msgid "Enable assignability checks for stores into object arrays"
+msgstr "Autoriser la vérificaitions des affectations dans le stockage des tableaux d'objets"
+
+#: options.c:1191
+msgid "Perform strength reduction optimizations"
+msgstr "Exécuter un réduction en force des optimisations"
+
+#: options.c:1194
+msgid "Assume strict aliasing rules apply"
+msgstr "Présumer que des règles stricts d'alias s'appliquent"
+
+#: options.c:1203
+msgid "Symbol names spelled in mixed case"
+msgstr "Noms des symboles épellés dans des casses mélangées"
+
+#: options.c:1206
+msgid "Symbol names in lowercase"
+msgstr "Noms de symboles en minuscules"
+
+#: options.c:1209
+msgid "Symbol names in uppercase"
+msgstr "Noms des symboles en majuscules"
+
+#: options.c:1212
+msgid "Check for syntax errors, then stop"
+msgstr "Vérifier les erreurs de syntaxes et puis stopper"
+
+#: options.c:1215
+msgid "-ftabstop=<number>\tDistance between tab stops for column reporting"
+msgstr "-ftabstop=<nombre>\tfixer la distance de la tabulation des colonnes dans les rapports"
+
+#: options.c:1218
+msgid "-ftemplate-depth-<number>\tSpecify maximum template instantiation depth"
+msgstr "-ftemplate-depth-<nombre>\tspécifier la profondeur maximale d'instanciation de canevas"
+
+#: options.c:1221
+msgid "Create data files needed by \"gcov\""
+msgstr "Créer les fichiers de données nécessaires à \"gcov\""
+
+#: options.c:1227
+msgid "Perform jump threading optimizations"
+msgstr "Exécuter des optimisations de sauts de thread"
+
+#: options.c:1230
+msgid "Report the time taken by each compiler pass"
+msgstr "Rapporter le temps pris par chaque passe de compilation"
+
+#: options.c:1233
+msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model"
+msgstr "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tinitialiser le modèle de génération de code par défaut de thread local"
+
+#: options.c:1236
+msgid "Perform superblock formation via tail duplication"
+msgstr "Exécuter la formation du super bloc via la duplication de la queue"
+
+#: options.c:1239
+msgid "Assume floating-point operations can trap"
+msgstr "On assume que les opérations en virgule flottante peuvent être attrappées"
+
+#: options.c:1242
+msgid "Trap for signed overflow in addition, subtraction and multiplication"
+msgstr "Attrapper les débordements de signe dans l'addition, la soustraction et la multiplication"
+
+#: options.c:1245
+msgid "Make prefix-radix non-decimal constants be typeless"
+msgstr "Rendre les préfixes des bases des constantes non décimales sans type"
+
+#: options.c:1248
+msgid "Allow all ugly features"
+msgstr "Permettre toutes les options laides"
+
+#: options.c:1251
+msgid "Hollerith and typeless can be passed as arguments"
+msgstr "Les Hollerith et sans type peuvent être passés comme arguments"
+
+#: options.c:1254
+msgid "Allow ordinary copying of ASSIGN'ed vars"
+msgstr "Permettre le copie ordinaire des variable affectées"
+
+#: options.c:1257
+msgid "Dummy array dimensioned to (1) is assumed-size"
+msgstr "Tableau factice dont la taille des dimensions (1) est assumée"
+
+#: options.c:1260
+msgid "Trailing comma in procedure call denotes null argument"
+msgstr "Virgule de fin dans l'appel de la procédure dénote un argument nul"
+
+#: options.c:1263
+msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
+msgstr "Permettre REAL(Z) et AIMAG(Z) pour les DOUBLE COMPLEX Z"
+
+#: options.c:1266
+msgid "Initialization via DATA and PARAMETER is not type-compatible"
+msgstr "Initialisation via DATA et PARAMETER n'est pas un type compatible"
+
+#: options.c:1269
+msgid "Allow INTEGER and LOGICAL interchangeability"
+msgstr "Permettre l'interchangeabilité de INTEGER et LOGICAL"
+
+#: options.c:1272
+msgid "Append underscores to externals"
+msgstr "Ajouter des caractères de soulignement aux externes"
+
+#: options.c:1275
+msgid "Compile whole compilation unit at a time"
+msgstr "Compiler complètement à la fois une unité de compilation"
+
+#: options.c:1278
+msgid "Delete libU77 intrinsics"
+msgstr "Détruire les intrinsèques libU77"
+
+#: options.c:1281
+msgid "Disable libU77 intrinsics"
+msgstr "Désactiver les intrinsèques libU77"
+
+#: options.c:1284
+msgid "Enable libU77 intrinsics"
+msgstr "Autoriser les intrinsèques libU77"
+
+#: options.c:1287
+msgid "Hide libU77 intrinsics"
+msgstr "Cacher les intrinsèques libU77"
+
+#: options.c:1296
+msgid "Allow math optimizations that may violate IEEE or ISO standards"
+msgstr "Permettre les optimisations mathématiques qui peuvent violer les standards IEEE ou ISO"
+
+#: options.c:1299
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned"
+msgstr "Lorsque \"signed\" ou \"unsigned\" n'est pas fourni rendre le champ de bits non signé"
+
+#: options.c:1302
+msgid "Make \"char\" unsigned by default"
+msgstr "Rendre les \"char\" non signés par défaut"
+
+#: options.c:1305
+msgid "Perform loop unswitching"
+msgstr "Exécuter des boucles sans branchement"
+
+#: options.c:1308
+msgid "Just generate unwind tables for exception handling"
+msgstr "Générer simplement des tables étendues pour le traitement des exceptions"
+
+#: options.c:1314
+msgid "Use __cxa_atexit to register destructors"
+msgstr "Utiliser « __cxa_atexit » pour enregistrer les destructeurs."
+
+#: options.c:1320
+msgid "Add extra commentary to assembler output"
+msgstr "Ajouter des commentaires additionnels à la sortie de l'assembleur"
+
+#: options.c:1323
+msgid "Print g77-specific version information and run internal tests"
+msgstr "Afficher les informations de version spécifiques du compilateur g77, exécuter les tests internes"
+
+#: options.c:1326
+msgid "Use expression value profiles in optimizations"
+msgstr "Utiliser le profile de la valeur d'expression dans l'optimisation"
+
+#: options.c:1329
+msgid "Discard unused virtual functions"
+msgstr "Écarter les fonctions virtuelles non utilisées"
+
+#: options.c:1332
+msgid "Implement vtables using thunks"
+msgstr "Implanter les vtables en utilisant des thunks"
+
+#: options.c:1335
+msgid "Program is written in VXT (Digital-like) FORTRAN"
+msgstr "Programme est écrit en Fortran VXT (forme de Digital)"
+
+#: options.c:1338
+msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Détruire les supports VXT Fortran intrinsèques non Fortran-77"
+
+#: options.c:1341
+msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Désactiver les supports VXT Fortran intrinsèques non Fortran-77"
+
+#: options.c:1344
+msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Désactiver les supports VXT Fortran intrinsèques non Fortran-77"
+
+#: options.c:1347
+msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "Cacher les supports VXT Fortran des intrinsèques non Fortran-77"
+
+#: options.c:1353
+msgid "Emit common-like symbols as weak symbols"
+msgstr "Produire les symboles communs comme des symboles faibles"
+
+#: options.c:1356
+msgid "Construct webs and split unrelated uses of single variable"
+msgstr "Construire une toile et séparer les utilisations de variables simples"
+
+#: options.c:1359
+msgid "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants to character set <cset>"
+msgstr "-fwide-exec-charset=<cset>\tconvertir toutes les chaînes et les constantes larges de caractères en jeux de caractères <cset>"
+
+#: options.c:1362
+msgid "Generate a #line directive pointing at the current working directory"
+msgstr "Générer une directive #line pointant sur le répertoire courant de travail"
+
+#: options.c:1365
+msgid "Assume signed arithmetic overflow wraps around"
+msgstr "Assumer un débordement arithmétique signé enroulé"
+
+#: options.c:1368
+msgid "Store strings in writable data section"
+msgstr "Stocker les chaînes dans les sections d'écriture des données"
+
+#: options.c:1371
+msgid "Emit cross referencing information"
+msgstr "Produire l'information des références croisées"
+
+#: options.c:1374
+msgid "Print internal debugging-related information"
+msgstr "Afficher les informations internes reliées à la mise au point"
+
+#: options.c:1377
+msgid "Put zero initialized data in the bss section"
+msgstr "Placer des données initialisées de zéros dans la section bss"
+
+#: options.c:1380
+msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode"
+msgstr "Générer un recherche molle de class (via objc_getClass()) pour l'utilisation en mode Zero-Link"
+
+#: options.c:1383
+msgid "Treat initial values of 0 like non-zero values"
+msgstr "Traiter les valeurs initiales de 0 comme des valeurs non zéros"
+
+#: options.c:1386
+msgid "Generate debug information in default format"
+msgstr "Générer les informations de mise au point dans le format par défaut"
+
+#: options.c:1392
+msgid "Generate debug information in COFF format"
+msgstr "Générer les informations de mise au point dans le format COFF"
+
+#: options.c:1395
+msgid "Generate debug information in DWARF v2 format"
+msgstr "Générer les informations de mise au point dans le format DWARF v2"
+
+#: options.c:1398
+msgid "Dump declarations to a .decl file"
+msgstr "Vidanger les déclarations dans un fichier .decl"
+
+#: options.c:1401
+msgid "Generate debug information in default extended format"
+msgstr "Générer les informations de mise au point dans le format étendu par défaut"
+
+#: options.c:1404
+msgid "-gnat<options>\tSpecify options to GNAT"
+msgstr "-gnat<options>\tSpécifier les options pour GNAT"
+
+#: options.c:1407
+msgid "Generate debug information in STABS format"
+msgstr "Générer les informations de mise au point dans le format STABS"
+
+#: options.c:1410
+msgid "Generate debug information in extended STABS format"
+msgstr "Générer les informations de mise au point dans le format étendu STABS"
+
+#: options.c:1413
+msgid "Generate debug information in VMS format"
+msgstr "Générer les informations de mise au point dans le format VMS"
+
+#: options.c:1416
+msgid "Generate debug information in XCOFF format"
+msgstr "Générer les information de mise au point dans le format XCOFF"
+
+#: options.c:1419
+msgid "Generate debug information in extended XCOFF format"
+msgstr "Générer les informations de mise au point dans le format étendu XCOFF"
+
+#: options.c:1422
+msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path"
+msgstr "-idirafter <répertoire>\tajouter <répertoire> à la fin du chemin système d'inclusion"
+
+#: options.c:1425
+msgid "-imacros <file>\tAccept definition of macros in <file>"
+msgstr "-imacros <fichier>\taccepter la définition de macros dans le <fichier>"
+
+#: options.c:1428
+msgid "-include <file>\tInclude the contents of <file> before other files"
+msgstr "-include <fichier>\tinclure le contenu du <fichier> avant les autres fichiers"
+
+#: options.c:1431
+msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options"
+msgstr "-iprefix <chemin>\tsélectionner le <chemin> comme préfixer aux deux prochaines options"
+
+#: options.c:1434
+msgid "-isysroot <dir>\tSet <dir> to be the system root directory"
+msgstr "-isysroot <répertoire>\tsélectionner le <répertoire> comme répertoire racine du système"
+
+#: options.c:1437
+msgid "-isystem <dir>\tAdd <dir> to the start of the system include path"
+msgstr "-isystem <répertoire>\tajouter le <répertoire> au début du chemin d'inclusion principal"
+
+#: options.c:1440
+msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path"
+msgstr "-iwithprefix <répertoire>\tajouter le <répertoire> à la fin du chemin d'inclusion principal"
+
+#: options.c:1443
+msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path"
+msgstr "-iwithprefixbefore <répertoire>\tajouter le <répertoire> à la fin du chemin d'inclusion principal"
+
+#: options.c:1455
+msgid "Do not search standard system include directories (those specified with -isystem will still be used)"
+msgstr "Ne pas rechercher les répertoires standard système d'inclusion (ceux spécifiés avec -isystem seront encore utilisés)"
+
+#: options.c:1458
+msgid "Do not search standard system include directories for C++"
+msgstr "Ne pas rechercher les répertoires standard système d'inclusion pour C++"
+
+#: options.c:1464
+msgid "-o <file>\tPlace output into <file>"
+msgstr "-o <fichier>\tproduire la sortie dans le <fichier>"
+
+#: options.c:1467
+msgid "Enable function profiling"
+msgstr "Autoriser le profilage de fonction"
+
+#: options.c:1470
+msgid "Issue warnings needed for strict compliance to the standard"
+msgstr "Émettre les avertissements nécessaires pour être conforme au standard"
+
+#: options.c:1473
+msgid "Like -pedantic but issue them as errors"
+msgstr "Identique à -pedantic mais les marque comme des erreurs"
+
+#: options.c:1476
+msgid "Generate C header of platform-specific features"
+msgstr "Générer les en-têtes C pour les options spécifiques à la plate-forme"
+
+#: options.c:1479
+msgid "Do not display functions compiled or elapsed time"
+msgstr "Ne pas afficher les fonctions compilées ou le temps écoulé"
+
+#: options.c:1482
+msgid "Remap file names when including files"
+msgstr "Rampper les noms lors de l'inclusion des fichiers"
+
+#: options.c:1485
+msgid "Conform to the ISO 1998 C++ standard"
+msgstr "Conforme au standard ISO C++ de 1998"
+
+#: options.c:1488
+msgid "Conform to the ISO 1990 C standard"
+msgstr "Conforme au standard ISO C de 1990"
+
+#: options.c:1491
+msgid "Conform to the ISO 1999 C standard"
+msgstr "Conforme au standard ISO C de 1999"
+
+#: options.c:1494 options.c:1515 options.c:1518
+msgid "Deprecated in favor of -std=c99"
+msgstr "Déprécié à la faveur de l'option -std=c99"
+
+#: options.c:1497
+msgid "Conform to the ISO 1998 C++ standard with GNU extensions"
+msgstr "Conforme au standard ISO C++ de 1998 avec les extensions de GNU"
+
+#: options.c:1500
+msgid "Conform to the ISO 1990 C standard with GNU extensions"
+msgstr "Conforme au standard ISO C de 1990 avec les extensions de GNU"
+
+#: options.c:1503
+msgid "Conform to the ISO 1999 C standard with GNU extensions"
+msgstr "Conforme au standard ISO C de 1999 avec les extensions de GNU"
+
+#: options.c:1506
+msgid "Deprecated in favor of -std=gnu99"
+msgstr "Déprécié à la faveur de l'option -std=gnu99"
+
+#: options.c:1509
+msgid "Deprecated in favor of -std=c89"
+msgstr "Déprécié à la faveur de l'option -std=c89"
+
+#: options.c:1512
+msgid "Conform to the ISO 1990 C standard as amended in 1994"
+msgstr "Conforme au standard ISO C de 1990 tel amendé en 1994"
+
+#: options.c:1521
+msgid "Enable traditional preprocessing"
+msgstr "Autoriser le traitement traditionnel"
+
+#: options.c:1524
+msgid "-trigraphs\tSupport ISO C trigraphs"
+msgstr "-trigraphs\tSupporter les tri-graphes ISO C"
+
+#: options.c:1527
+msgid "Do not predefine system-specific and GCC-specific macros"
+msgstr "Ne pas prédéfinir les macros spécifiques au système ou à GCC"
+
+#: options.c:1530
+msgid "Enable verbose output"
+msgstr "Autoriser le mode bavard sur la sortie"
+
+#: options.c:1536
+msgid "Suppress warnings"
+msgstr "Supprimer les avertissement"
+
+#: config/rs6000/darwin.h:98
+msgid " conflicting code gen style switches are used"
+msgstr " code de génération de style de switches utilisées est en conflit"
+
+#: gcc.c:743
+msgid "GCC does not support -C or -CC without -E"
+msgstr "GCC ne supporte pas -C ou -CC sans utiliser -E"
+
+#: gcc.c:767 java/jvspec.c:80 ada/lang-specs.h:34
+msgid "-pg and -fomit-frame-pointer are incompatible"
+msgstr "-pg et -fomit-frame-pointer sont incompatibles"
+
+#: gcc.c:915
+msgid "-E required when input is from standard input"
+msgstr "-E est requis lorsque l'entrée est faite à partir de l'entrée standard"
+
+#: config/arm/arm.h:197
msgid "-mapcs-26 and -mapcs-32 may not be used together"
msgstr "-mapcs-26 et -mapcs-32 ne peuvent être utilisés ensembles"
-#: config/arm/arm.h:180
+#: config/arm/arm.h:199
msgid "-msoft-float and -mhard_float may not be used together"
msgstr "-msoft-float et -mhard_float ne peuvent être utilisées ensembles"
-#: config/arm/arm.h:182
+#: config/arm/arm.h:201
msgid "-mbig-endian and -mlittle-endian may not be used together"
msgstr "-mbig-endian et -mlittle-endian ne peuvent être utilisés ensemble"
-#: config/i386/sco5.h:195
-#, fuzzy
-msgid "-pg not supported on this platform"
-msgstr "attribut « %s » n'est pas supporté sur cette plate-forme"
+#: config/i386/mingw32.h:58 config/i386/cygwin.h:70
+msgid "shared and mdll are not compatible"
+msgstr "shared et mdll ne sont pas compatibles"
-#: config/i386/sco5.h:196
-#, fuzzy
-msgid "-p and -pp specified - pick one"
-msgstr "-I- spécifié deux fois"
+#: config/mips/mips.h:975
+msgid "-pipe is not supported"
+msgstr "-pipe n'est pas supporté"
-#: config/i386/sco5.h:271
-#, fuzzy
-msgid "-G and -static are mutually exclusive"
-msgstr "-pedantic et -traditional sont mutuellement exclusives"
+#: config/mips/mips.h:1130 config/arc/arc.h:63
+msgid "may not use both -EB and -EL"
+msgstr "ne peut utiliser ensemble -EB et -EL"
-#: f/lang-specs.h:38 gcc.c:689
-msgid "GNU C does not support -C without using -E"
-msgstr "GNU C ne supporte pas -C sans utiliser -E"
+#: config/darwin.h:215
+msgid "-current_version only allowed with -dynamiclib"
+msgstr "-current_version permis seulement avec -dynamiclib"
-#: f/lang-specs.h:39 gcc.c:690
-#, fuzzy
-msgid "GNU C does not support -CC without using -E"
-msgstr "GNU C ne supporte pas -C sans utiliser -E"
+#: config/darwin.h:218
+msgid "-install_name only allowed with -dynamiclib"
+msgstr "-install_name permis seulement avec with -dynamiclib"
-#: config/mcore/mcore.h:60
-msgid "choose either big or little endian, not both"
-msgstr "choisir un système à octets de poids fort ou faible mais pas les deux"
+#: config/darwin.h:223
+msgid "-bundle not allowed with -dynamiclib"
+msgstr "-bundle n'est pas permis avec -dynamiclib"
-#: config/mcore/mcore.h:63
-msgid "choose either m340 or m210 not both"
-msgstr "choisir m340 ou m210 mais pas les deux"
+#: config/darwin.h:224
+msgid "-bundle_loader not allowed with -dynamiclib"
+msgstr "-bundle_loader n'est pas permis avec -dynamiclib"
-#: config/mcore/mcore.h:64
-msgid "the m210 does not have little endian support"
-msgstr "Le m210 ne supporte pas le code pour système à octets de poids faible"
+#: config/darwin.h:225
+msgid "-client_name not allowed with -dynamiclib"
+msgstr "-client_name n'est pas permis avec -dynamiclib"
-#: config/i386/cygwin.h:115
-msgid "mno-cygwin and mno-win32 are not compatible"
-msgstr "mno-cygwin et mno-win32 ne sont pas compatibles"
+#: config/darwin.h:228
+msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
+msgstr "-force_cpusubtype_ALL n'est pas permis avec -dynamiclib"
+
+#: config/darwin.h:229
+msgid "-force_flat_namespace not allowed with -dynamiclib"
+msgstr "-force_flat_namespace n'est pas permis avec -dynamiclib"
+
+#: config/darwin.h:231
+msgid "-keep_private_externs not allowed with -dynamiclib"
+msgstr "-keep_private_externs n'est pas permis avec -dynamiclib"
+
+#: config/darwin.h:232
+msgid "-private_bundle not allowed with -dynamiclib"
+msgstr "-private_bundle n'est pas permis avec -dynamiclib"
#: config/vax/netbsd-elf.h:42
-#, fuzzy
msgid "The -shared option is not currently supported for VAX ELF."
-msgstr "fonction interne « %s » n'est pas couramment supportée"
+msgstr "L'option -shared n'est pas couramment supportée pour VAS ELF."
-#: treelang/lang-specs.h:52
-#, fuzzy
-msgid "-pg or -p and -fomit-frame-pointer are incompatible"
-msgstr "-pg et -fomit-frame-pointer sont incompatibles"
+#: config/i386/sco5.h:191
+msgid "-pg not supported on this platform"
+msgstr "-pg n'est pas supporté sur cette plate-forme"
-#: gcc.c:847
-msgid "-E required when input is from standard input"
-msgstr "-E est requis lorsque l'entrée est faite à partir de l'entrée standard"
+#: config/i386/sco5.h:192
+msgid "-p and -pp specified - pick one"
+msgstr "-p et -pp spécifié - n'en prendre qu'un seul"
-#: gcc.c:851
-msgid "compilation of header file requested"
-msgstr "fichier d'en-tête requis pour la compilation"
+#: config/i386/sco5.h:266
+msgid "-G and -static are mutually exclusive"
+msgstr "-G et -static sont mutuellement exclusives"
-#: config/vax/vax.h:50 config/vax/vax.h:51
-msgid "profiling not supported with -mg\n"
-msgstr "profilage n'est pas supporté avec -mg\n"
+#: treelang/lang-specs.h:52
+msgid "-pg or -p and -fomit-frame-pointer are incompatible"
+msgstr "-pg et -p et -fomit-frame-pointer sont incompatibles"
-#: config/mips/mips.h:954
-msgid "-pipe is not supported"
-msgstr "-pipe n'est pas supporté"
+#: f/lang-specs.h:38
+msgid "GCC does not support -C without using -E"
+msgstr "GCC ne supporte pas -C sans utiliser -E"
-#: config/mips/mips.h:1156 config/arc/arc.h:63
-msgid "may not use both -EB and -EL"
-msgstr "ne peut utiliser ensemble -EB et -EL"
+#: f/lang-specs.h:39
+msgid "GCC does not support -CC without using -E"
+msgstr "GCC ne supporte pas -CC sans utiliser -E"
#: config/mips/r3900.h:35
msgid "-mhard-float not supported"
@@ -21168,6 +21232,366 @@ msgstr "-mhard-float n'est pas supporté"
msgid "-msingle-float and -msoft-float can not both be specified"
msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
+#: config/rs6000/sysv4.h:1094 config/i386/freebsd-aout.h:215
+msgid "`-p' not supported; use `-pg' and gprof(1)"
+msgstr "« -p » n'est pas supporté; utiliser « -pg » et gprof(1)"
+
+#: config/sparc/linux64.h:208 config/sparc/linux64.h:219
+#: config/sparc/netbsd-elf.h:140 config/sparc/netbsd-elf.h:159
+#: config/sparc/sol2-bi.h:195 config/sparc/sol2-bi.h:205
+msgid "may not use both -m32 and -m64"
+msgstr "ne peut utiliser ensemble -m32 et -m64"
+
+#: config/vax/vax.h:50 config/vax/vax.h:51
+msgid "profiling not supported with -mg\n"
+msgstr "profilage n'est pas supporté avec -mg\n"
+
+#: config/i386/cygwin.h:29
+msgid "mno-cygwin and mno-win32 are not compatible"
+msgstr "mno-cygwin et mno-win32 ne sont pas compatibles"
+
+#: ada/lang-specs.h:36
+msgid "one of -c, -S, -gnatc, -gnatz, or -gnats is required for Ada"
+msgstr "une parmi -c, -S, -gnatc, -gnatz ou -gnats est requise pour Ada"
+
+#: config/sparc/sol2-bi.h:167 config/sparc/sol2-bi.h:172
+#: config/sparc/sol2-gld-bi.h:17 config/sparc/sol2-gld-bi.h:22
+msgid "does not support multilib"
+msgstr "ne supporte pas multilib"
+
+#: java/lang-specs.h:34
+msgid "-fjni and -femit-class-files are incompatible"
+msgstr "-fjni et -femit-class-files sont incompatibles"
+
+#: java/lang-specs.h:35
+msgid "-fjni and -femit-class-file are incompatible"
+msgstr "-fjni et -femit-class-file sont incompatibles"
+
+#: java/lang-specs.h:36 java/lang-specs.h:37
+msgid "-femit-class-file should used along with -fsyntax-only"
+msgstr "-femit-class-file dervait être utilisé avec -fsyntax-only"
+
+#: config/mcore/mcore.h:65
+msgid "the m210 does not have little endian support"
+msgstr "Le m210 ne supporte pas le code pour système à octets de poids faible"
+
+#~ msgid "concatenation of string literals with __FUNCTION__ is deprecated"
+#~ msgstr "la concaténation de chaînes de litéraux avec « __FUNCTION__ » est obsolète"
+
+#~ msgid "ISO C++ forbids range expressions in switch statements"
+#~ msgstr "ISO C++ interdit les intervalles dans les déclarations de « switch »"
+
+#~ msgid "ISO C++ forbids taking the address of a label"
+#~ msgstr "ISO C++ interdit de prendre l'adresse d'une étiquette"
+
+#~ msgid "ISO C forbids taking the address of a label"
+#~ msgstr "ISO C interdit de prendre l'adresse d'une étiquette"
+
+#~ msgid "declaration of `%s' shadows %s"
+#~ msgstr "la déclaration de « %s » masque %s"
+
+#~ msgid "`struct %s' incomplete in scope ending here"
+#~ msgstr "« struct %s » incomplète dans le champ terminant ici"
+
+#~ msgid "`union %s' incomplete in scope ending here"
+#~ msgstr "« union %s » incomplète dans le champ terminant ici"
+
+#~ msgid "`enum %s' incomplete in scope ending here"
+#~ msgstr "« enum %s » incomplète dans le champ terminant ici"
+
+#~ msgid "label `%s' defined but not used"
+#~ msgstr "étiquette « %s » définie mais pas utilisée"
+
+#~ msgid "shadowing library function `%s'"
+#~ msgstr "masquage de la fonction « %s » de la bibliothèque"
+
+#~ msgid "library function `%s' declared as non-function"
+#~ msgstr "fonction « %s » de la bibliothèque déclarée comme n'étant pas une fonction"
+
+#~ msgid "conflicting types for `%s'"
+#~ msgstr "types conflictuels pour « %s »"
+
+#~ msgid "redeclaration of `%s'"
+#~ msgstr "redéclaration de « %s »"
+
+#~ msgid "prototype for `%s' follows"
+#~ msgstr "le prototype de « %s » suit"
+
+#~ msgid "non-prototype definition here"
+#~ msgstr "définition d'un non prototype ici"
+
+#~ msgid "prototype for `%s' follows and number of arguments doesn't match"
+#~ msgstr "le prototype de « %s » suit mais le nombre d'arguments ne concorde pas"
+
+#~ msgid "prototype for `%s' follows and argument %d doesn't match"
+#~ msgstr "le prototype de « %s » suit mais le nombre d'arguments %d ne concorde pas"
+
+#~ msgid "type qualifiers for `%s' conflict with previous decl"
+#~ msgstr "le qualificateur du type de « %s » est en conflit avec une déclaration précédente"
+
+#~ msgid "redundant redeclaration of `%s' in same scope"
+#~ msgstr "redéclaration redondante de « %s » dans le même champ"
+
+#~ msgid "a parameter"
+#~ msgstr "un paramètre"
+
+#~ msgid "a previous local"
+#~ msgstr "une locale précédente"
+
+#~ msgid "a global declaration"
+#~ msgstr "une déclaration globale"
+
+#~ msgid "`%s' used prior to declaration"
+#~ msgstr "« %s » utilisé avant sa déclaration"
+
+#~ msgid "`%s' was declared implicitly `extern' and later `static'"
+#~ msgstr "« %s » a été déclaré implicitement « extern » et plus loin « static »"
+
+#~ msgid "previous external decl of `%s'"
+#~ msgstr "déclaration externe précédente de « %s »"
+
+#~ msgid "type mismatch with previous implicit declaration"
+#~ msgstr "non concordance de type avec la déclaration implicite précédente"
+
+#~ msgid "`%s' was previously implicitly declared to return `int'"
+#~ msgstr "« %s » a été précédemment déclaré implicitement comme retournant un « int »"
+
+#~ msgid "`%s' was declared `extern' and later `static'"
+#~ msgstr "« %s » a été déclaré « extern » et plus loin « static »"
+
+#~ msgid "`%s' locally external but globally static"
+#~ msgstr "« %s » localement externe mais globalement statique"
+
+#~ msgid "function `%s' was previously declared within a block"
+#~ msgstr "la fonction « %s » a été précédemment déclarée à l'intérieur d'un bloc"
+
+#~ msgid "declaration of `%s' has `extern' and is initialized"
+#~ msgstr "« %s » initialisé et déclaré « extern »"
+
+#~ msgid "initializer fails to determine size of `%s'"
+#~ msgstr "l'initialisation n'a pas pu déterminer la taille de « %s »"
+
+#~ msgid "array size missing in `%s'"
+#~ msgstr "taille du tableau manquante dans « %s »"
+
+#~ msgid "storage size of `%s' isn't known"
+#~ msgstr "taille de stockage de « %s » inconnue"
+
+#~ msgid "storage size of `%s' isn't constant"
+#~ msgstr "la taille de stockage de « %s » n'est pas une constante"
+
+#~ msgid "ISO C forbids parameter `%s' shadowing typedef"
+#~ msgstr "ISO C interdit que le paramètre « %s » masque un typedef"
+
+#~ msgid "parameter `%s' points to incomplete type"
+#~ msgstr "le paramètre « %s » pointe vers un type incomplet"
+
+#~ msgid "parameter points to incomplete type"
+#~ msgstr "le paramètre pointe vers un type incomplet"
+
+#~ msgid "`void' in parameter list must be the entire list"
+#~ msgstr "si « void » est dans une liste de paramètres, toute la liste doit l'être"
+
+#~ msgid "`union %s' declared inside parameter list"
+#~ msgstr "« union %s » déclarée à l'intérieur de la liste de paramètres"
+
+#~ msgid "`enum %s' declared inside parameter list"
+#~ msgstr "« enum %s » déclarée à l'intérieur de la liste de paramètres"
+
+#~ msgid "anonymous union declared inside parameter list"
+#~ msgstr "union anonyme déclarée à l'intérieur de la liste des paramètres"
+
+#~ msgid "anonymous enum declared inside parameter list"
+#~ msgstr "énumération anonyme déclarée à l'intérieur de la liste des paramètres"
+
+#~ msgid "bit-field `%s' type invalid in ISO C"
+#~ msgstr "le champ de bits « %s » a un type invalide en C ISO"
+
+#~ msgid "duplicate member `%s'"
+#~ msgstr "membre « %s » apparaît en double"
+
+#~ msgid "parm types given both in parmlist and separately"
+#~ msgstr "types des paramètres à la fois donnés dans la liste et séparément"
+
+#~ msgid "parameter `%s' declared void"
+#~ msgstr "paramètre « %s » déclaré « void »"
+
+#~ msgid "universal-character-name '\\u%04x' not valid in identifier"
+#~ msgstr "nom-de-caractère-universel « \\U%04x » invalide dans l'identificcateur"
+
+#~ msgid "ignoring invalid multibyte character"
+#~ msgstr "caractère multioctet invalide ignoré"
+
+#~ msgid "options array incorrectly sorted: %s is before %s"
+#~ msgstr "tableau des options mal trié : %s est avant %s"
+
+#~ msgid "-Wno-strict-prototypes is not supported in C++"
+#~ msgstr "-Wno-strict-prototypes n'est pas permis en C++"
+
+#~ msgid ""
+#~ "Switches:\n"
+#~ " -include <file> Include the contents of <file> before other files\n"
+#~ " -imacros <file> Accept definition of macros in <file>\n"
+#~ " -iprefix <path> Specify <path> as a prefix for next two options\n"
+#~ " -iwithprefix <dir> Add <dir> to the end of the system include path\n"
+#~ " -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
+#~ " -isystem <dir> Add <dir> to the start of the system include path\n"
+#~ msgstr ""
+#~ "Options:\n"
+#~ " -include <fichier> Inclure le contenu du <fichier> avant d'autres fichiers\n"
+#~ " -imacros <fichier> Accepter la définition de macros dans le <fichier>\n"
+#~ " -iprefix <chemin> Spécifier le <chemin> comme un préfixe aux prochaines deux options\n"
+#~ " -iwithprefix <rép> Ajouter le <rép>ertoire à la fin du chemin d'inclusion système\n"
+#~ " -iwithprefixbefore <rép> Ajouter le <rép>ertoire à la fin du chemin d'inclusion principal\n"
+#~ " -isystem <rép> Ajouter le <rép>ertoire au début du chemin d'inclusion système\n"
+
+#~ msgid ""
+#~ " -idirafter <dir> Add <dir> to the end of the system include path\n"
+#~ " -I <dir> Add <dir> to the end of the main include path\n"
+#~ " -I- Fine-grained include path control; see info docs\n"
+#~ " -nostdinc Do not search system include directories\n"
+#~ " (dirs specified with -isystem will still be used)\n"
+#~ " -nostdinc++ Do not search system include directories for C++\n"
+#~ " -o <file> Put output into <file>\n"
+#~ msgstr ""
+#~ " -idirafter <rép> Ajouter le <rép>ertoire à la fin du chemin d'inclusion système\n"
+#~ " -I <rép> Ajouter le <rép>ertoire à la fin du chemin d'inclusion principal\n"
+#~ " -I- Raffiner le contrôle du chemin d'inclusion; consulter la doc\n"
+#~ " -nostdinc Ne pas rechercher dans les répertoires d'inclusion système\n"
+#~ " (les rép spécifiés avec -isystem seront encore utilisés)\n"
+#~ " -nostdinc++ Ne pas rechercher dans les répertoires d'inclusion système pour C++\n"
+#~ " -o <fichier> Produire la sortie dans le <fichier>\n"
+
+#~ msgid ""
+#~ " -trigraphs Support ISO C trigraphs\n"
+#~ " -std=<std name> Specify the conformance standard; one of:\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999, c++98\n"
+#~ " -w Inhibit warning messages\n"
+#~ " -W[no-]trigraphs Warn if trigraphs are encountered\n"
+#~ " -W[no-]comment{s} Warn if one comment starts inside another\n"
+#~ msgstr ""
+#~ " -trigraphs Permettre les trigraphes C ISO\n"
+#~ " -std=<standard> Spécifier le <standard> de conformité à utiliser; soit:\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999, c++98\n"
+#~ " -w Inhiber les messages d'avertissement\n"
+#~ " -W[no-]trigraphs Avertir [ou non] si des trigraphes sont rencontrés\n"
+#~ " -W[no-]comment{s} Avertir [ou non] si un commentaire débute à l'intérieur \n"
+#~ " d'un autre\n"
+
+#~ msgid ""
+#~ " -W[no-]traditional Warn about features not present in traditional C\n"
+#~ " -W[no-]undef Warn if an undefined macro is used by #if\n"
+#~ " -W[no-]import Warn about the use of the #import directive\n"
+#~ msgstr ""
+#~ " -W[no-]traditional Avertir [ou non] à propos des fonctionnalités absentes\n"
+#~ " en C traditionnel\n"
+#~ " -W[no-]undef Avertir [ou non] à propos des macros utilisées dans des\n"
+#~ " #if sans être définies\n"
+#~ " -W[no-]import Avertir [ou non] de l'utilisation de la directive #import\n"
+
+#~ msgid ""
+#~ " -W[no-]error Treat all warnings as errors\n"
+#~ " -W[no-]system-headers Do not suppress warnings from system headers\n"
+#~ " -W[no-]all Enable most preprocessor warnings\n"
+#~ msgstr ""
+#~ " -W[no-]error Changer [ou non] les avertissements en erreurs\n"
+#~ " -W[no-]system-headers Supprimer [ou non] les avertissements à propos des \n"
+#~ " en-têtes système\n"
+#~ " -W[no-]all Générer [ou non] la plupart des avertissements du\n"
+#~ " préprocesseur\n"
+
+#~ msgid ""
+#~ " -M Generate make dependencies\n"
+#~ " -MM As -M, but ignore system header files\n"
+#~ " -MD Generate make dependencies and compile\n"
+#~ " -MMD As -MD, but ignore system header files\n"
+#~ " -MF <file> Write dependency output to the given file\n"
+#~ " -MG Treat missing header file as generated files\n"
+#~ msgstr ""
+#~ " -M Générer les dépendances pour make\n"
+#~ " -MM Comme -M, en ignorant les fichiers d'en-têtes système\n"
+#~ " -MD Générer les dépendances pour make et compiler\n"
+#~ " -MMD Comme -MD, en ignorant les fichiers d'en-têtes système\n"
+#~ " -MF <fichier> Écrire les dépendances dans le <fichier>\n"
+#~ " -MG Traiter les en-têtes manquants comme des fichiers générés\n"
+
+#~ msgid ""
+#~ " -MP\t\t\t Generate phony targets for all headers\n"
+#~ " -MQ <target> Add a MAKE-quoted target\n"
+#~ " -MT <target> Add an unquoted target\n"
+#~ msgstr ""
+#~ " -MP\t\t\t Générer des cibles factices pour tous les en-têtes\n"
+#~ " -MQ <target> Ajouter une cible protégée pour MAKE\n"
+#~ " -MT <target> Ajouter une cible non protégée\n"
+
+#~ msgid ""
+#~ " -D<macro> Define a <macro> with string '1' as its value\n"
+#~ " -D<macro>=<val> Define a <macro> with <val> as its value\n"
+#~ " -A<question>=<answer> Assert the <answer> to <question>\n"
+#~ " -A-<question>=<answer> Disable the <answer> to <question>\n"
+#~ " -U<macro> Undefine <macro> \n"
+#~ " -v Display the version number\n"
+#~ msgstr ""
+#~ " -D<macro> Définir une <macro> avec la chaîne « 1 » pour valeur\n"
+#~ " -D<macro>=<valeur> Définir une <macro> de <valeur>\n"
+#~ " -A<question>=(<réponse>) Créer une assertion <question>=<réponse>\n"
+#~ " -A-<question>=(<réponse>) Dissocier la <réponse> à la <question>\n"
+#~ " -U<macro> Oublier la définition de la <macro> \n"
+#~ " -v Afficher le numéro de version\n"
+
+#~ msgid ""
+#~ " -H Print the name of header files as they are used\n"
+#~ " -C Do not discard comments\n"
+#~ " -dM Display a list of macro definitions active at end\n"
+#~ " -dD Preserve macro definitions in output\n"
+#~ " -dN As -dD except that only the names are preserved\n"
+#~ " -dI Include #include directives in the output\n"
+#~ msgstr ""
+#~ " -H Afficher le nom des fichiers en-tête tel qu'utilisés\n"
+#~ " -C Ne pas mettre de côté les commantaires\n"
+#~ " -dM Afficher la liste des définitions de macro actives à la fin\n"
+#~ " -dD Préserver les définitions de macros dans la sortie\n"
+#~ " -dN Comme -dD, mais seuls les noms sont préservés\n"
+#~ " -dI Inclure la directive #include dans la sortie\n"
+
+#~ msgid ""
+#~ " -f[no-]preprocessed Treat the input file as already preprocessed\n"
+#~ " -ftabstop=<number> Distance between tab stops for column reporting\n"
+#~ " -P Do not generate #line directives\n"
+#~ " -remap Remap file names when including files\n"
+#~ " --help Display this information\n"
+#~ msgstr ""
+#~ " -f[no-]preprocessed Considérer [ou non] que le fichier d'entrée est \n"
+#~ " déjà pré-traité\n"
+#~ " -ftabstop=<nombre> Largeur des tabulations pour indiquer la colonne\n"
+#~ " -P Ne pas générer des directives #line\n"
+#~ " -remap Refaire la table des noms de fichiers lors de\n"
+#~ " l'inclusion de fichiers\n"
+#~ " --help Afficher cet l'aide-mémoire\n"
+
+#~ msgid "parse error"
+#~ msgstr "erreur d'analyse syntaxique"
+
+# FIXME
+#~ msgid "ISO C forbids the address of a cast expression"
+#~ msgstr "ISO C interdit l'adresse d'une expression transtypée"
+
+#~ msgid "initializer for static variable is not constant"
+#~ msgstr "l'initialisation d'une variable statique n'est pas une constante"
+
+#~ msgid "initializer for static variable uses complicated arithmetic"
+#~ msgstr "l'initialisation d'une variable statique utilise une artihmétique compliquée"
+
+# FIXME
+#~ msgid "aggregate initializer is not constant"
+#~ msgstr "l'initialisation d'aggrégat n'est pas une constante"
+
+# FIXME
+#~ msgid "aggregate initializer uses complicated arithmetic"
+#~ msgstr "l'initialisation d'un aggrégat utilise une arithmétique compliquée"
+
# FIXME
#~ msgid "variable offset is passed partially in stack and in reg"
#~ msgstr "le décalage de variable est passé partiellement dans la pile et dans le registre"
@@ -21175,13 +21599,748 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "variable size is passed partially in stack and in reg"
#~ msgstr "la taille de la variable est passée partiellement dans la pile et le registre"
+# I18N
+#~ msgid "open %s"
+#~ msgstr "open %s"
+
+#~ msgid "incompatibilities between object file & expected values"
+#~ msgstr "incompatibilités entre le fichier objet et les valeurs attendues"
+
+#~ msgid ""
+#~ "\n"
+#~ "Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Traitement de la table des symboles #%d, décalage = 0x%.8lx, sorte = %s\n"
+
+# FIXME
+#~ msgid "string section missing"
+#~ msgstr "chaîne de section manquante"
+
+#~ msgid "section pointer missing"
+#~ msgstr "pointeur de section manquant"
+
+#~ msgid "no symbol table found"
+#~ msgstr "aucune table des symboles trouvée"
+
+#~ msgid ""
+#~ "\n"
+#~ "Updating header and load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Mise à jour des en-têtes et des commandes de chargement.\n"
+#~ "\n"
+
+# FIXME
+#~ msgid "load command map, %d cmds, new size %ld.\n"
+#~ msgstr "Chargement de la carte des commandes, %d commandes, nouvelle taille %ld.\n"
+
+#~ msgid ""
+#~ "writing load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "écriture des commandes de chargement.\n"
+#~ "\n"
+
+# I18N
+#~ msgid "close %s"
+#~ msgstr "close %s"
+
+#~ msgid "could not convert 0x%l.8x into a region"
+#~ msgstr "ne peut convertir 0x%l.8x en région"
+
+#~ msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
+#~ msgstr "fonction %s, région %d, décalage = %ld (0x%.8lx)\n"
+
+#~ msgid "bad magic number"
+#~ msgstr "nombre magique erroné"
+
+#~ msgid "bad header version"
+#~ msgstr "version d'en-tête erronée"
+
+# FIXME: ou version d'en-tête brut erronée
+#~ msgid "bad raw header version"
+#~ msgstr "version brute d'en-tête erronée"
+
+# FIXME: ou tampon d'en-tête brut trop petit
+#~ msgid "raw header buffer too small"
+#~ msgstr "tampon brut d'en-tête trop petit"
+
+#~ msgid "old raw header file"
+#~ msgstr "ancien fichier d'en-tête brute"
+
+#~ msgid "unsupported version"
+#~ msgstr "version non reconnue"
+
+#~ msgid "unknown {de,en}code_mach_o_hdr return value %d"
+#~ msgstr "mauvaise valeur de retour (%d) de {de,en}code_mach_o_hdr"
+
+# I18N
+#~ msgid "fstat %s"
+#~ msgstr "fstat %s"
+
+# I18N
+#~ msgid "lseek %s 0"
+#~ msgstr "lseek %s 0"
+
+# I18N
+#~ msgid "read %s"
+#~ msgstr "read %s"
+
+#~ msgid "read %ld bytes, expected %ld, from %s"
+#~ msgstr "lu %ld octets, attendu %ld, de %s"
+
+# I18N
+#~ msgid "msync %s"
+#~ msgstr "msync %s"
+
+# I18N
+#~ msgid "munmap %s"
+#~ msgstr "munmap %s"
+
+# I18N
+#~ msgid "write %s"
+#~ msgstr "write %s"
+
+#~ msgid "wrote %ld bytes, expected %ld, to %s"
+#~ msgstr "écrit %ld octets, attendu %ld, vers %s"
+
+#~ msgid "ISO C++ does not permit \"%s\" in #if"
+#~ msgstr "ISO C++ n'autorise pas « %s » dans #if"
+
+#~ msgid "invalid character '%c' in #if"
+#~ msgstr "caractère « %c » invalide dans #if"
+
+#~ msgid "invalid character '\\%03o' in #if"
+#~ msgstr "caractère « \\%03o » invalide dans #if"
+
+#~ msgid "absolute file name in remap_filename"
+#~ msgstr "nom de fichier absolu dans remap_filename"
+
+#~ msgid "%s: Not a directory"
+#~ msgstr "%s : ce n'est pas un répertoire"
+
+#~ msgid "directory name missing after %s"
+#~ msgstr "nom de répertoire manquant après %s"
+
+#~ msgid "file name missing after %s"
+#~ msgstr "nom de fichier manquant après %s"
+
+#~ msgid "path name missing after %s"
+#~ msgstr "nom de chemin manquant après %s"
+
+#~ msgid "trigraph ??%c converted to %c"
+#~ msgstr "trigraphe ??%c converti en %c"
+
+#~ msgid "trigraph ??%c ignored"
+#~ msgstr "trigraphe ??%c ignoré"
+
+#~ msgid "backslash and newline separated by space"
+#~ msgstr "« \\ » et retour de chariot séparés par un blanc"
+
+#~ msgid "backslash-newline at end of file"
+#~ msgstr "« \\ » en fin de ligne à la fin du fichier"
+
+#~ msgid "\"/*\" within comment"
+#~ msgstr "« /* » à l'intérieur d'un commentaire"
+
+#~ msgid "%s in preprocessing directive"
+#~ msgstr "%s dans la directive du préprocesseur"
+
+#~ msgid "no newline at end of file"
+#~ msgstr "pas de retour chariot à la fin du fichier"
+
+#~ msgid "unknown string token %s\n"
+#~ msgstr "élément lexical %s inconnu\n"
+
+#~ msgid "non-hex digit '%c' in universal-character-name"
+#~ msgstr "chiffre « %c » non hexadécimal dans le nom-de-caractère-universel"
+
+#~ msgid "universal-character-name on EBCDIC target"
+#~ msgstr "nom-de-caractère-universel pour une cible EBCDIC"
+
+#~ msgid "universal-character-name out of range"
+#~ msgstr "nom-de-caractère-universel est hors limite"
+
+#~ msgid "escape sequence out of range for its type"
+#~ msgstr "séquence d'échappement hors limite pour son type"
+
+#~ msgid "#import is obsolete, use an #ifndef wrapper in the header file"
+#~ msgstr "#import est obsolète, enveloppez le avec #ifndef dans le fichier d'en-tête"
+
+# FIXME
+#~ msgid "#pragma once is obsolete"
+#~ msgstr "utiliser #pragma une seule fois est obsolète"
+
+#~ msgid "the conditional began here"
+#~ msgstr "la condition débute ici"
+
+#~ msgid "unterminated #%s"
+#~ msgstr "#%s non terminé"
+
+#~ msgid "macro \"%s\" is not used"
+#~ msgstr "la macro « %s » n'est pas utilisée"
+
+#~ msgid "\"%s\" redefined"
+#~ msgstr "« %s » redéfini"
+
+#~ msgid "this is the location of the previous definition"
+#~ msgstr "ceci est la localisation d'une précédente définition"
+
+#~ msgid "((anonymous))"
+#~ msgstr "((anonyme))"
+
+#~ msgid "%s: warnings being treated as errors\n"
+#~ msgstr "%s : les avertissements sont traités commes des erreurs\n"
+
+#~ msgid "At top level:"
+#~ msgstr "Hors de toute fonction :"
+
+#~ msgid "In member function `%s':"
+#~ msgstr "Dans la fonction membre « %s » :"
+
+#~ msgid "In function `%s':"
+#~ msgstr "Dans la fonction « %s »:"
+
+#~ msgid ""
+#~ "Please submit a full bug report,\n"
+#~ "with preprocessed source if appropriate.\n"
+#~ "See %s for instructions.\n"
+#~ msgstr ""
+#~ "Veuillez soumettre un rapport complet d'anomalies,\n"
+#~ "avec le source pré-traité si nécessaire.\n"
+#~ "Consultez %s pour plus de détail.\n"
+
+# FRONT
+#~ msgid "In file included from %s:%d"
+#~ msgstr "Dans le fichier inclus depuis %s:%d"
+
+# I18N: This line should be indented with the previous entry
+#~ msgid ""
+#~ ",\n"
+#~ " from %s:%d"
+#~ msgstr ""
+#~ ",\n"
+#~ " depuis %s:%d"
+
+#~ msgid "internal regno botch: `%s' has regno = %d\n"
+#~ msgstr "regno interne mal fait : « %s » a regno = %d\n"
+
+#~ msgid "support for the DWARF1 debugging format is deprecated"
+#~ msgstr "le support du format de débogage DWARF1 est obsolète"
+
+#~ msgid "can't get current directory"
+#~ msgstr "ne peut repérer le répertoire courant"
+
+# FRONT
+#~ msgid "unsupported wide integer operation"
+#~ msgstr "opération sur de large entier non supportée"
+
#~ msgid "Copyright (C) 2002 Free Software Foundation, Inc.\n"
#~ msgstr "Copyright © 2002 Free Software Foundation, Inc.\n"
-#, fuzzy
+#~ msgid "mismatched braces in specs"
+#~ msgstr "accolades non concordantes dans les specs"
+
+#~ msgid "Could not open basic block file %s.\n"
+#~ msgstr "Ne pourrait pas ouvrir le fichier de blocs de base %s.\n"
+
+#~ msgid "Could not open program flow graph file %s.\n"
+#~ msgstr "Ne pourrait pas ouvrir le fichier de flux du programm %s.\n"
+
+#~ msgid "Could not open data file %s.\n"
+#~ msgstr "Ne pourrait pas ouvrir le fichier de données %s.\n"
+
+#~ msgid "Assuming that all execution counts are zero.\n"
+#~ msgstr "Suppose que tous les compteurs d'exécution sont à zéro.\n"
+
+#~ msgid "No executable code associated with file %s.\n"
+#~ msgstr "Aucun code exécutable associé avec le fichier %s.\n"
+
+#~ msgid "didn't use all bb entries of graph, function %s\n"
+#~ msgstr "N'a pas utiliser toutes les entrées bb du graphe, fonction %s\n"
+
+#~ msgid "block_num = %ld, num_blocks = %d\n"
+#~ msgstr "block_num = %ld, num_blocks = %d\n"
+
+#~ msgid "ERROR: unexpected line number %ld\n"
+#~ msgstr "ERREUR : ligne numéro %ld inattendue\n"
+
+#~ msgid "ERROR: too many basic blocks in function %s\n"
+#~ msgstr "ERREUR : trop de blocs de base dans la fonction %s\n"
+
+#~ msgid "ERROR: out of range line number in function %s\n"
+#~ msgstr "ERROR: numéro de ligne hors limite dans la fonction %s\n"
+
+#~ msgid "Could not open source file %s.\n"
+#~ msgstr "N'a pu ouvrir le fichier source %s.\n"
+
+#~ msgid "Unexpected EOF while reading source file %s.\n"
+#~ msgstr "EOF inattendue lors de la lecture du fichier source %s.\n"
+
+#~ msgid "Creating %s.\n"
+#~ msgstr "Création de %s.\n"
+
+#~ msgid "invalid string `%s' in define_cpu_unit"
+#~ msgstr "chaîne invalide « %s » dans define_cpu_unit"
+
+#~ msgid "invalid string `%s' in define_bypass"
+#~ msgstr "chaîne invalide « %s » dans define_bypass"
+
+#~ msgid "invalid first string `%s' in exclusion_set"
+#~ msgstr "première chaîne invalide « %s » dans exclusion_set"
+
+#~ msgid "invalid second string `%s' in exclusion_set"
+#~ msgstr "seconde chaîne invalide « %s » dans exclusion_set"
+
+#~ msgid "invalid second string `%s' in presence_set"
+#~ msgstr "seconde chaîne invalide « %s » dans presence_set"
+
+#~ msgid "invalid option `%s' in automata_option"
+#~ msgstr "option invalide « %s » dans automata_option"
+
+#~ msgid "invalid `%s' in reservation `%s'"
+#~ msgstr "« %s » invalide dans la réservation « %s »"
+
+#~ msgid "unit `%s' in exclusion is not declared"
+#~ msgstr "unité « %s » dans l'exclusion n'est pas déclaré"
+
+#~ msgid "unit `%s' excludes itself"
+#~ msgstr "unité « %s » s'exclue elle-même"
+
+#~ msgid "repeated declaration of automaton `%s'"
+#~ msgstr "déclaration répété de l'automate « %s »"
+
+#~ msgid "`%s' is already used as insn reservation name"
+#~ msgstr "« %s » est déjà utilisé dans le nom de réservation insn"
+
+#~ msgid "automaton `%s' is not declared"
+#~ msgstr "automate « %s » n'est pas déclaré"
+
+#~ msgid "`%s' is declared as cpu unit"
+#~ msgstr "« %s » déclaré comme unité cpu"
+
+#~ msgid "`%s' is declared as cpu reservation"
+#~ msgstr "« %s » est déclaré comme réservation cpu"
+
+#~ msgid "repeated declaration of unit `%s'"
+#~ msgstr "déclaration répété d'unité « %s »"
+
+#~ msgid "repeated declaration of reservation `%s'"
+#~ msgstr "déclaration répété de réservation « %s »"
+
+#~ msgid "there is no insn reservation `%s'"
+#~ msgstr "il n'y a pas de réservation insn « %s »"
+
+#~ msgid "the same bypass `%s - %s' is already defined"
+#~ msgstr "le même bypass « %s - %s » est déjà défini"
+
+#~ msgid "bypass `%s - %s' is already defined"
+#~ msgstr "bypass « %s - %s » est déjà défini"
+
+#~ msgid "undeclared unit or reservation `%s'"
+#~ msgstr "unité ou réservation « %s » non déclaré"
+
+#~ msgid "unit `%s' is not used"
+#~ msgstr "unité « %s » n'est utilisé"
+
+#~ msgid "reservation `%s' is not used"
+#~ msgstr "réservation « %s » n'est utilisé"
+
+#~ msgid "cycle in definition of reservation `%s'"
+#~ msgstr "cycle de définition de réservation « %s »"
+
+#~ msgid "-split has no argument."
+#~ msgstr "-split n'a pas d'argument."
+
+#~ msgid "option `-split' has not been implemented yet\n"
+#~ msgstr "l'option « -split » n'a pas été implanté encore\n"
+
+#~ msgid "Errors in DFA description"
+#~ msgstr "ERREURS dans la description DFA"
+
+#~ msgid "Error in writing DFA description file %s"
+#~ msgstr "Erreur dans l'écriture du fichier de description DFA %s"
+
+#~ msgid "No input file name."
+#~ msgstr "Pas de nom de fichier."
+
+#~ msgid ".da file corrupted"
+#~ msgstr "fichier .da corrompu"
+
+#~ msgid "Generate STABS format debug info"
+#~ msgstr "Générer des infos de mise au point de format STABS"
+
+#~ msgid "Generate extended STABS format debug info"
+#~ msgstr "Générer des infos de mise au point de format STABS étendu"
+
+#~ msgid "Generate DWARF-1 format debug info"
+#~ msgstr "Générer les informations de mise au point du format DWARF-1"
+
+#~ msgid "Generate extended DWARF-1 format debug info"
+#~ msgstr "Générer les extensions des informations de mise au point du format DWARF-1"
+
+#~ msgid "Generate DWARF-2 debug info"
+#~ msgstr "Générer les informations de mise au point DWARF-2"
+
+#~ msgid "Generate XCOFF format debug info"
+#~ msgstr "Générer les informations de mise au point du format XCOFF"
+
+#~ msgid "Generate extended XCOFF format debug info"
+#~ msgstr "Générer les extensions de mise au point du format XCOFF"
+
+#~ msgid "Generate COFF format debug info"
+#~ msgstr "Générer les informations de mise au point du format COFF"
+
+#~ msgid "Generate VMS format debug info"
+#~ msgstr "Générer des infos de mise au point de format VMS"
+
+#~ msgid "Consider all mem refs through pointers as volatile"
+#~ msgstr "Considérer toutes les référence en mémoire comme faite par des pointeurs volatiles"
+
+#~ msgid "Consider all mem refs to global data to be volatile"
+#~ msgstr "Considérer toutes les références mémoire à des données globales comme volatiles"
+
+#~ msgid "Consider all mem refs to static data to be volatile"
+#~ msgstr "Considérer toutes les références mémoire à des données statiques comme volatiles"
+
+#~ msgid "Integrate simple functions into their callers"
+#~ msgstr "Intégrer les fonctions simples à l'intérieur des appelants"
+
+#~ msgid "Output GNU ld formatted global initializers"
+#~ msgstr "Produire des initialisations de globlales au format GNU ld"
+
+#~ msgid "Enable SSA optimizations"
+#~ msgstr "Autoriser les optimisations SSA"
+
+#~ msgid "Enable SSA conditional constant propagation"
+#~ msgstr "Autoriser la propagation SSA de constante conditionnelle"
+
+#~ msgid "Enable aggressive SSA dead code elimination"
+#~ msgstr "Autoriser l'élimination agressive SSA du code mort"
+
+#~ msgid "Compile just for ISO C90"
+#~ msgstr "Compiler seulement pour ISO C90"
+
+#~ msgid "Determine language standard"
+#~ msgstr "Déterminer le standard du langage"
+
+#~ msgid "Make bit-fields by unsigned by default"
+#~ msgstr "Rendre les champs de bits non signés par défaut"
+
+#~ msgid "Allow different types as args of ? operator"
+#~ msgstr "Permettre des types différents pour les arguments de l'opérateur ?"
+
+#~ msgid "Allow the use of $ inside identifiers"
+#~ msgstr "Permettre l'utilisation de $ à l'intérieur d'identificateurs"
+
+#~ msgid "Use the smallest fitting integer to hold enums"
+#~ msgstr "Utiliser le plus petit entier pour contenir l'énumération (enums)"
+
+#~ msgid "Enable most warning messages"
+#~ msgstr "Autoriser la plupart des messages d'avertissement"
+
+#~ msgid "Warn if nested comments are detected"
+#~ msgstr "Avertir si des commentaires imbriqués sont détectés"
+
+#~ msgid "Don't warn about too many arguments to format functions"
+#~ msgstr "Ne pas avertir à propos d'un surplus d'arguments pour des fonctions de format"
+
+#~ msgid "Warn about non-string-literal format strings"
+#~ msgstr "Avertir à propos des chaînes de format qui ne sont pas des chaînes"
+
+#~ msgid "Warn about constructs whose meanings change in ISO C"
+#~ msgstr "Avertir à propos de construits dont le sens change en C ISO"
+
+#~ msgid "Warn when trigraphs are encountered"
+#~ msgstr "Avertir lorsque des trigraphes sont rencontrés"
+
+#~ msgid "Mark strings as 'const char *'"
+#~ msgstr "Marque les chaînes comme étant 'const char *'"
+
+#~ msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
+#~ msgstr " -pedantic-errors identique à -pedantic sauf que les erreurs sont produites\n"
+
+#~ msgid " -w Suppress warnings\n"
+#~ msgstr " -w supprimer les avertissements\n"
+
+#~ msgid " -W Enable extra warnings\n"
+#~ msgstr " -W autoriser les avertissements additionnels\n"
+
+#~ msgid " -Wunused Enable unused warnings\n"
+#~ msgstr " -Wunused autoriser les avertissements pour signaler les non utilisés\n"
+
+#~ msgid " -p Enable function profiling\n"
+#~ msgstr " -p autoriser le profilage des fonctions\n"
+
+#~ msgid " -version Display the compiler's version\n"
+#~ msgstr " -version afficher la version du compilateur\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "Language specific options:\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Options spécifiques au langage:\n"
+
+#~ msgid " %-23.23s [undocumented]\n"
+#~ msgstr " %-23.23s [non documenté]\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "There are undocumented %s specific options as well.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Il y a des options spécifiques %s qui ne sont pas documentés aussi.\n"
+
+#~ msgid ""
+#~ "\n"
+#~ " Options for %s:\n"
+#~ msgstr ""
+#~ "\n"
+#~ " Options pour %s:\n"
+
+#~ msgid "unrecognized option `%s'"
+#~ msgstr "option « %s » non reconnue"
+
+#~ msgid "-Wid-clash-LEN is no longer supported"
+#~ msgstr "-Wid-clash-LEN n'est plus supportée"
+
+#~ msgid "use -gdwarf -g%d for DWARF v1, level %d"
+#~ msgstr "utiliser -gdwarf -g%d pour DWARF v1, niveau %d"
+
+#~ msgid "use -gdwarf-2 for DWARF v2"
+#~ msgstr "utiliser -gdwarf-2 pour DWARF v2"
+
+#~ msgid "ignoring option `%s' due to invalid debug level specification"
+#~ msgstr "option « %s » ignorée en raison de la spécification du niveau de mise au poitn invalide"
+
+#~ msgid "`%s': unknown or unsupported -g option"
+#~ msgstr "« %s »: inconnu ou non supporté option -g"
+
+#~ msgid "`%s' ignored, conflicts with `-g%s'"
+#~ msgstr "« %s » ignoré, en conflit avec «-g%s»"
+
+#~ msgid "-param option missing argument"
+#~ msgstr "argument manquant pour l'option -param"
+
+#~ msgid "invalid --param option: %s"
+#~ msgstr "option invalide --param: %s"
+
+#~ msgid "(it is valid for %s but not the selected language)"
+#~ msgstr "(c'est valide pour %s mais pas pour le langage séclectionné)"
+
+#~ msgid "#`%s' not supported by %s#"
+#~ msgstr "« %s » n'est pas supporté par %s#"
+
+#~ msgid "The maximuem number of instructions by repeated inlining before gcc starts to throttle inlining"
+#~ msgstr "Le nombre maximum d'instructions par type inline répété avant l'exécution de gcc au « throttle » enligne"
+
+#~ msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
+#~ msgstr "Le nombre d'instructions dans une fonction simple encore éligible au type enligne après plusieurs inline récursifs"
+
+#~ msgid "Use Mingw32 interface"
+#~ msgstr "Utiliser l'interface Mingw32"
+
+#~ msgid "Use Cygwin interface"
+#~ msgstr "Utiliser l'interface Cygwin"
+
+#~ msgid "Use bare Windows interface"
+#~ msgstr "Utiliser l'interface brute Windows"
+
#~ msgid "Only initialized variables can be placed into program memory area."
#~ msgstr "seules les variables initialisées peuvent être placées dans la zone mémoire du programme"
+#~ msgid "const objects cannot go in .sdata/.sbss"
+#~ msgstr "constantes objets ne peuvent aller dans .sdata/.sbss"
+
+#~ msgid "Generate code for a Sun FPA"
+#~ msgstr "Générer le code pour un Sun FPA"
+
+#~ msgid "Do not generate code for a Sun FPA"
+#~ msgstr "Ne pas générer le code pour un Sun FPA"
+
+#~ msgid "Generate code for a Sun Sky board"
+#~ msgstr "Générer le code pour un Sun Sky board"
+
+#~ msgid "Do not use Sky linkage convention"
+#~ msgstr "Ne pas utiliser la convention d'édition de lien Sky"
+
+#~ msgid "Generate code for a 68881"
+#~ msgstr "Générer du code pour un 68881"
+
+#~ msgid "internal gcc monitor: short-branch(%x)"
+#~ msgstr "moniteur interne gcc: branchement court(%x)"
+
+#~ msgid "internal gcc error: Can't express symbolic location"
+#~ msgstr "erreur interne gcc: ne peut exprimer la localisation symbolique"
+
+#~ msgid "argument #%d is a structure"
+#~ msgstr "argument #%d est une structure"
+
+#~ msgid "%%R not followed by %%B/C/D/E"
+#~ msgstr "%%R n'est pas suivi de %%B/C/D/E"
+
+#~ msgid "invalid %%Q value"
+#~ msgstr "valeur %%Q invalide"
+
+#~ msgid "invalid %%o value"
+#~ msgstr "valeur %%o invalide"
+
+#~ msgid "invalid %%s/S value"
+#~ msgstr "valeur %%s/S invalide"
+
+#~ msgid "invalid %%B value"
+#~ msgstr "valeur %%B invalide"
+
+#~ msgid "`%%d' operand isn't a register"
+#~ msgstr "l'opérande «%%d» n'est pas un registre"
+
+#~ msgid "operand is r0"
+#~ msgstr "opérande est R0"
+
+#~ msgid "operand is const_double"
+#~ msgstr "opérande est de type const_double"
+
+#~ msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
+#~ msgstr "-mtrap-large-shift et -mhandle-large-shift sont incompatibles"
+
+#~ msgid "invalid option `-mshort-data-%s'"
+#~ msgstr "option invalide «-mshort-data-%s'"
+
+#~ msgid "-mshort-data-%s is too large "
+#~ msgstr "-mshort-data-%s est trop grande "
+
+#~ msgid "-mshort-data-%s and PIC are incompatible"
+#~ msgstr "-mshort-data-%s et PIC sont incompatibles"
+
+#~ msgid "bad value (%s) for -mips switch"
+#~ msgstr "valeur erronée (%s) pour l'option -mips"
+
+#~ msgid "invalid option `entry%s'"
+#~ msgstr "option invalide «entry%s'"
+
+#~ msgid "-mentry is only meaningful with -mips-16"
+#~ msgstr "-mentry n'a de sens qu'avec -mips-16"
+
+#~ msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
+#~ msgstr "format MIPS ECOFF ne permet pas de changer le nom des fichiers à l'intérieur des fonction avec #line"
+
+#~ msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
+#~ msgstr "fp_offset (%ld) ou end_offset (%ld) est plus petit que zéro"
+
+#~ msgid "Trap on integer divide overflow"
+#~ msgstr "Intercepter les débordements lors de divisions avec des entiers"
+
+#~ msgid "Don't trap on integer divide overflow"
+#~ msgstr "Ne pas intercepter les débordement lors de divisions avec des entiers"
+
+#~ msgid "Use mips16 entry/exit psuedo ops"
+#~ msgstr "Utiliser les pseudo-op mips16 d'entrée/sortie"
+
+#~ msgid "Don't use MIPS16 instructions"
+#~ msgstr "Ne pas utiliser les instructions MIPS16"
+
+#~ msgid "invalid %%z value"
+#~ msgstr "valeur %%z invalide"
+
+#~ msgid "invalid %%Z value"
+#~ msgstr "valeur %%Z invalide"
+
+#~ msgid "invalid %%j value"
+#~ msgstr "valeur %%j invalide"
+
+#~ msgid "can't have varargs with -mfp-arg-in-fp-regs"
+#~ msgstr "ne peut avoir varargs avec -mfp-arg-in-fp-regs"
+
+#~ msgid "unknown -mvrsave= option specified: '%s'"
+#~ msgstr "option -mvrsave inconnue spécifiés: « %s »"
+
+#~ msgid "64 bit mode"
+#~ msgstr "mode 64 bits"
+
+#~ msgid "31 bit mode"
+#~ msgstr "mode 31 bits"
+
+#~ msgid "Use the Xtensa code density option"
+#~ msgstr "Utiliser l'option de densité du code Xtensa"
+
+#~ msgid "Do not use the Xtensa code density option"
+#~ msgstr "Ne pas utiliser l'option de densité du code Xtensa"
+
+#~ msgid "Use the Xtensa MAC16 option"
+#~ msgstr "Utiliser l'option Xtensa MAC16"
+
+#~ msgid "Do not use the Xtensa MAC16 option"
+#~ msgstr "Ne pas utiliser l'option Xtensa MAC16"
+
+#~ msgid "Use the Xtensa MUL16 option"
+#~ msgstr "Utiliser l'option Xtensa MUL16"
+
+#~ msgid "Do not use the Xtensa MUL16 option"
+#~ msgstr "Ne pas utiliser l'option Xtensa MUL16"
+
+#~ msgid "Use the Xtensa MUL32 option"
+#~ msgstr "Utiliser l'option Xtensa MUL16"
+
+#~ msgid "Do not use the Xtensa MUL32 option"
+#~ msgstr "Ne pas utiliser l'option Xtensa MUL32"
+
+#~ msgid "Use the Xtensa NSA option"
+#~ msgstr "Utiliser l'option Xtensa NSA"
+
+#~ msgid "Do not use the Xtensa NSA option"
+#~ msgstr "Ne pas utiliser l'option Xtensa NSA"
+
+#~ msgid "Use the Xtensa MIN/MAX option"
+#~ msgstr "Utiliser l'option Xtensa MIN/MAX"
+
+#~ msgid "Do not use the Xtensa MIN/MAX option"
+#~ msgstr "Ne pas utiliser l'option Xtensa MIN/MAX"
+
+#~ msgid "Use the Xtensa SEXT option"
+#~ msgstr "Utiliser l'option Xtensa SEXT"
+
+#~ msgid "Do not use the Xtensa SEXT option"
+#~ msgstr "Ne pas utiliser l'option Xtensa SEXT"
+
+#~ msgid "Use the Xtensa boolean register option"
+#~ msgstr "Utiliser l'option des registres booléens Xtensa"
+
+#~ msgid "Do not use the Xtensa boolean register option"
+#~ msgstr "Ne pas utiliser l'option des registres booléens Xtensa"
+
+#~ msgid "Use the Xtensa floating-point unit"
+#~ msgstr "Utiliser l'unité matérielle pour virgule flottante Xtensa"
+
+#~ msgid "Do not use the Xtensa floating-point unit"
+#~ msgstr "Ne pas utiliser l'unité matérielle pour virgule flottante Xtensa"
+
+#~ msgid "Serialize volatile memory references with MEMW instructions"
+#~ msgstr "Sérialiser les références à la mémoire volatile avec des instructions MEMW"
+
+#~ msgid "Do not serialize volatile memory references with MEMW instructions"
+#~ msgstr "Ne pas sérialiser les références à la mémoire volatile avec des instructions MEMW"
+
+#~ msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
+#~ msgstr "type de « %E » ne concorde pas avec le type du destructeur « %T » (type était « %T »)"
+
+#~ msgid "`%D' is a namespace"
+#~ msgstr "« %D » est un nom d'espace"
+
+#~ msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
+#~ msgstr "objet de base « %E » de la portée d'appel de la méthode n'est pas de type aggrégat « %T »"
+
+#~ msgid "destructors take no parameters"
+#~ msgstr "destructeurs ne prend aucun paramètre"
+
+#~ msgid "destructor name `~%T' does not match type `%T' of expression"
+#~ msgstr "nom du destructeur «~%T» ne concorde pas avec le type « %T » de l'expression"
+
+#~ msgid "%s %+#D%s"
+#~ msgstr "%s %+#D%s"
+
#~ msgid "%s for `%T ? %T : %T' operator"
#~ msgstr "%s pour «%T ? %T : %T» comme opérateur"
@@ -21194,11 +22353,425 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "%s for `%s %T' operator"
#~ msgstr "%s pour l'opérateur «%s [%T]»"
+#~ msgid "`%D' must be declared before use"
+#~ msgstr "« %D » doit être déclaré avant son usage"
+
+#~ msgid " initializing argument %P of `%D' from result of `%D'"
+#~ msgstr " initialisation de l'argument %P de « %D » à partir du résultat « %D »"
+
+#~ msgid " initializing temporary from result of `%D'"
+#~ msgstr " initialisation temporaire à partir du résultat « %D »"
+
+#~ msgid "cannot receive objects of non-POD type `%#T' through `...'"
+#~ msgstr "ne peut recevoir d'objets de type non POD « %#T » through « ... »"
+
+#~ msgid "field `%D' invalidly declared offset type"
+#~ msgstr "champ « %D » incorrectement validé comme type de décalage"
+
+#~ msgid "lookup of `%D' finds `%#D'"
+#~ msgstr "recherche de « %D » a repéré « %#D »"
+
+#~ msgid " instead of `%D' from dependent base class"
+#~ msgstr " au lieu de « %D » à partir d'un classe de base dépendante"
+
+#~ msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
+#~ msgstr "recherche de « %D » dans la portée de « %#T » (« %#D ») ne concorde pas avec la recherche dans la portée courante (« %#D »)"
+
+#~ msgid "invalid declarator"
+#~ msgstr "déclarateur invalide"
+
+#~ msgid "`%T' is implicitly a typename"
+#~ msgstr "« %T » est implicitement un typename"
+
+#~ msgid "parameter `%D' invalidly declared offset type"
+#~ msgstr "paramètre « %D » incorrectement validé comme type de décalage"
+
+#~ msgid "`%s %T' declares a new type at namespace scope"
+#~ msgstr "« %s %T » déclare un nouveau type dans l'étendue de l'espace de noms"
+
+#~ msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
+#~ msgstr " noms des classes de base dépendantes ne sont pas visibles à la recherche de nom non qualifié - pour référer à type par héritage, disons «%s %T::%T»"
+
+#~ msgid "base class `%T' has incomplete type"
+#~ msgstr "classe de base « %T » a un type incomplet"
+
+#~ msgid "semicolon missing after declaration of `%#T'"
+#~ msgstr "point-virgule manquant après la déclaration %#T"
+
+#~ msgid "template `%#D' instantiated in file without #pragma interface"
+#~ msgstr "canevas « %#D » instancié dans le fichier sans interface #pragma"
+
+#~ msgid "template `%#D' defined in file without #pragma interface"
+#~ msgstr "canevas « %#D » défini dans le fichier sans interface #pragma"
+
+#~ msgid "parser may be lost: is there a '{' missing somewhere?"
+#~ msgstr "analyseur syntaxique est perdu: y-a-t-il un «{» manquant quelque part?"
+
+#~ msgid "invalid data member initialization"
+#~ msgstr "initialisation de données membres invalide"
+
+#~ msgid "(use `=' to initialize static data members)"
+#~ msgstr "(utiliser «=» pour initialiser les données de membres)"
+
+#~ msgid "too many initialization functions required"
+#~ msgstr "trop d'initialisations de fonctions requises"
+
+#~ msgid "`%D' is not a namespace"
+#~ msgstr "« %D » n'est pas un espace de noms"
+
+#~ msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
+#~ msgstr "l'utilisation de déclaration ne peut spécifier template-id. Essayer «using %T::%D'"
+
+#~ msgid "`%T' does not have a class or union named `%D'"
+#~ msgstr "« %T » n'a pas de classe ou d'union nommé « %D »"
+
+#~ msgid "`%T' is not a class or union type"
+#~ msgstr "« %T » n'est pas une classe ou un type d'union"
+
+#~ msgid "`%s' not supported by %s"
+#~ msgstr "« %s » n'est pas supporté par %s"
+
+#~ msgid "(static %s for %s)"
+#~ msgstr "(static %s pour %s)"
+
+#~ msgid "%s: In instantiation of `%s':\n"
+#~ msgstr "%s: dans l'instanciation de « %s »:\n"
+
+#~ msgid "%s:%d: instantiated from `%s'\n"
+#~ msgstr "%s:%d: instancié à partir de « %s »\n"
+
+#~ msgid "%s:%d: instantiated from here\n"
+#~ msgstr "%s:%d: instancié à partir d'ici\n"
+
+#~ msgid "previous friend declaration of `%D'"
+#~ msgstr "déclaration amie précédente de « %D »"
+
+#~ msgid "cannot call destructor `%T::~%T' without object"
+#~ msgstr "ne peut appeler le destructeur «%T::~%T» sans objet"
+
+#~ msgid "invalid use of member `%D'"
+#~ msgstr "utilisation invalide du membre « %D »"
+
+#~ msgid "no method `%T::%D'"
+#~ msgstr "pas de méthode «%T::%D»"
+
+#~ msgid "object missing in use of pointer-to-member construct"
+#~ msgstr "objet manquant dans l'utilisation du construit pointeur-à-membre"
+
+#~ msgid "member `%D' is non-static but referenced as a static member"
+#~ msgstr "membre « %D » est non statique mais référencé comme membre statique"
+
+#~ msgid "object missing in `%E'"
+#~ msgstr "objet manquant dans « %E »"
+
+#~ msgid "initializer list being treated as compound expression"
+#~ msgstr "liste d'initaliseurs a été traité comme une expression composée"
+
+#~ msgid "cannot declare references to references"
+#~ msgstr "ne peut décalrer des références vers des références"
+
+#~ msgid "cannot declare pointers to references"
+#~ msgstr "ne peut déclarer des pointeurs vers des références"
+
+#~ msgid "type name expected before `&'"
+#~ msgstr "nom de type attendu avant «&»"
+
+#~ msgid "semicolon missing after %s declaration"
+#~ msgstr "«;» manquant après la déclaration de %s"
+
+#~ msgid "semicolon missing after declaration of `%T'"
+#~ msgstr "«;» manquant après la déclaration « %T »"
+
+#~ msgid "`::%D' undeclared (first use here)"
+#~ msgstr "«::%D» non déclaré (première utilisation ici)"
+
#~ msgid "real-valued template parameters when cross-compiling"
-#~ msgstr "patron de paramètre en valeur réelle lors de la compilation croisée"
+#~ msgstr "canevas de paramètre en valeur réelle lors de la compilation croisée"
+
+#~ msgid "use of linkage spec `%D' is different from previous spec `%D'"
+#~ msgstr "utilisation de spéc de liaisons « %D » est différente de la spec précédente « %D »"
+
+#~ msgid "no base or member initializers given following ':'"
+#~ msgstr "pas d'initialiseur de base ou membre donné après «:»"
+
+#~ msgid "use of template qualifier outside template"
+#~ msgstr "utilisation d'un qualificateur de canevas en dehors d'un canevas"
+
+#~ msgid "ISO C++ forbids an empty condition for `%s'"
+#~ msgstr "ISO C++ interdit une condition vide pour « %s »"
+
+#~ msgid "definition of class `%T' in condition"
+#~ msgstr "définition de la classe « %T » dans la condition"
+
+#~ msgid "definition of enum `%T' in condition"
+#~ msgstr "définition de l'aggrégat « %T » dans la condition"
+
+#~ msgid "definition of array `%#D' in condition"
+#~ msgstr "définition du tableau « %#D » dans la condition"
+
+#~ msgid "old style placement syntax, use () instead"
+#~ msgstr "ancien style de syntaxe de positionnement, utiliser () à la place"
+
+#~ msgid "`%T' is not a valid expression"
+#~ msgstr "« %T » n'est pas une expression valide"
+
+#~ msgid "initialization of new expression with `='"
+#~ msgstr "initialisation de la nouvelle expression avec « = »"
+
+#~ msgid "sigof type specifier"
+#~ msgstr "spécificateur du type sigof"
+
+#~ msgid "`sigof' applied to non-aggregate expression"
+#~ msgstr "« sigof » appliqué à une expression de non aggrégats"
+
+#~ msgid "`sigof' applied to non-aggregate type"
+#~ msgstr "« sigof » appliqué à un type non aggrégat"
+
+#~ msgid "storage class specifier `%s' not allowed after struct or class"
+#~ msgstr "spécificateur de classe de stockages « %s » n'est pas permis après struct ou class"
+
+#~ msgid "type specifier `%s' not allowed after struct or class"
+#~ msgstr "spécificateur de type « %s » n'est pas permis après struct ou class"
+
+#~ msgid "type qualifier `%s' not allowed after struct or class"
+#~ msgstr "qualificateur de type « %s » n'est pas permis après struct ou class"
+
+#~ msgid "no body nor ';' separates two class, struct or union declarations"
+#~ msgstr "pas de corps ni de «;» séparant les deux déclarations de classes, struct ou union"
+
+#~ msgid "no bases given following `:'"
+#~ msgstr "pas de base donnée après «:»"
+
+#~ msgid "multiple access specifiers"
+#~ msgstr "spécificateurs d'accès multiples"
+
+#~ msgid "multiple `virtual' specifiers"
+#~ msgstr "spécificateurs « virtual » multiples"
+
+#~ msgid "missing ';' before right brace"
+#~ msgstr "«;» manquant avant l'accolade de droite"
+
+#~ msgid "ISO C++ forbids array dimensions with parenthesized type in new"
+#~ msgstr "ISO C++ interdit l'utilisation de parenthèses autour du type pour les dimensions de tableaux avec new"
+
+#~ msgid "`%T' is not a class or namespace"
+#~ msgstr "« %T » n'est pas une classe ou un espace de noms"
+
+#~ msgid "ISO C++ forbids label declarations"
+#~ msgstr "ISO C++ interdit la déclaration d'étiquette"
+
+#~ msgid "label must be followed by statement"
+#~ msgstr "l'étiquette doit être suivie d'une déclaration"
+
+#~ msgid "must have at least one catch per try block"
+#~ msgstr "doit avoir au moins un intercepteur par bloc d'essais"
+
+#~ msgid "ISO C++ forbids compound statements inside for initializations"
+#~ msgstr "ISO C++ interdit les déclarations composées à l'intérieur des initialisations"
+
+#~ msgid "possibly missing ')'"
+#~ msgstr "«)» possiblement manquante"
+
+#~ msgid "type specifier omitted for parameter"
+#~ msgstr "spécificateur de type omis pour le paramètre"
+
+#~ msgid "`%E' is not a type, use `typename %E' to make it one"
+#~ msgstr "« %E» n'est pas un type, utiliser «typename %E » pour en faire un"
+
+#~ msgid "no type `%D' in `%T'"
+#~ msgstr "pas de type « %D » dans « %T »"
+
+#~ msgid "type specifier omitted for parameter `%E'"
+#~ msgstr "spécificateur de type omis pour le paramètre « %E »"
+
+#~ msgid "type `%T' composed from a local class is not a valid template-argument"
+#~ msgstr "type « %T » composé à partir d'une classe locale n'est pas un canevas d'argument valide"
+
+#~ msgid "adjusting pointers for covariant returns"
+#~ msgstr "ajuster les pointeurs pour des retours co-variants"
+
+#~ msgid " overriding `%#D' (must be pointer or reference to class)"
+#~ msgstr " écrasant « %#D » (doit être un pointeur ou une référence vers un classe)"
+
+#~ msgid " overriding `%#D' (must use pointer or reference)"
+#~ msgstr " écrasant « %#D » (doit utiliser un pointeur ou un référence)"
+
+#~ msgid "return identifier `%D' already in place"
+#~ msgstr "identificateur retourné « %D » est déjà en place"
+
+#~ msgid "can't redefine default return value for constructors"
+#~ msgstr "ne peut redéfinir la valeur retournée par défaut pour les constructeurs"
+
+#~ msgid "calling type `%T' like a method"
+#~ msgstr "appel du type « %T » comme une méthode"
+
+#~ msgid "destructor specifier `%T::~%T()' must have matching names"
+#~ msgstr "spécificateur du destructeur «%T::~%T()» doit avoir des noms concordants"
+
+#~ msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
+#~ msgstr "nom d'identificateur « %s » entre en conflit avec la stratégie interne de dénomination de GNU C++"
+
+#~ msgid "parse error at end of saved function text"
+#~ msgstr "erreur d'analyse syntaxique à la fin de la sauvegarde de la fonction texte"
+
+#~ msgid "%Hend of file read inside definition"
+#~ msgstr "%H fin de fichier lors de la lecture à l'intérieur d'une définition"
+
+#~ msgid "parse error in method specification"
+#~ msgstr "erreur d'analyse syntaxique dans la spécification de fonction"
+
+#~ msgid "function body for constructor missing"
+#~ msgstr "corps de fonction pour le constructeur est manquante"
+
+#~ msgid "circular dependency in default args of `%#D'"
+#~ msgstr "dépendance circulaire dans les arguments par défaut de « %#D »"
+
+#~ msgid "invalid type `%T' for default argument to `%T'"
+#~ msgstr "type invalide « %T » pour l'argument par défaut « %T »"
+
+#~ msgid "%s before `%c'"
+#~ msgstr "%s avant « %c »"
+
+#~ msgid "%s before `\\%o'"
+#~ msgstr "%s avant «\\%o»"
+
+#~ msgid "%s before `%s' token"
+#~ msgstr "%s avant l'élément lexical « %s »"
+
+#~ msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
+#~ msgstr "ISO C++ interdit la conversion de « %#T » en « (...) »"
+
+#~ msgid "invalid application of `%s' to non-static member"
+#~ msgstr "utilisation invalide de « %s » sur un membre non statique"
+
+#~ msgid "sizeof applied to a bit-field"
+#~ msgstr "sizeof appliqué sur un champ de bits"
+
+#~ msgid "destructor specifier `%T::~%T' must have matching names"
+#~ msgstr "spécificateur du destructeur «%T::~%T» doit des noms concordants"
+
+#~ msgid "parameter type of called function is incomplete"
+#~ msgstr "type de paramètre de la fonction appelée est incomplet"
+
+#~ msgid "ISO C++ forbids using pointer to a member in subtraction"
+#~ msgstr "ISO C++ interdit l'utilisation d'un pointeur vers un membre dans une soustraction"
+
+#~ msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
+#~ msgstr "reinterpret_cast de « %T » vers « %T » fait un transtypage écartant la constante (ou volatile)"
+
+#~ msgid "return-statement with no value, in function declared with a non-void return type"
+#~ msgstr "déclaration d'un retour sans valeur, dans la fonction déclarée avec un type retourné non void"
+
+#~ msgid "return-statement with a value, in function declared with a void return type"
+#~ msgstr "déclaration d'un retour sans valeur, dans la fonction déclarée avec un type retourné void"
+
+#~ msgid "comma expression used to initialize return value"
+#~ msgstr "expression virgule utilsée pour initialiser la valeur de retour"
#~ msgid "ISO C++ forbids non-constant aggregate initializer expressions"
-#~ msgstr "le C++ ISO interdit les expressions d'initialiseur d'aggrégat de non constante"
+#~ msgstr "ISO C++ interdit les expressions d'initialiseur d'aggrégat de non constante"
+
+#~ msgid "`%T' fails to be a typedef or built-in type"
+#~ msgstr "« %T » a échoué à devenir un typedef ou un type construit interne"
+
+#~ msgid "ISO C++ forbids defining types within %s"
+#~ msgstr "ISO C++ interdit la définition de types à l'intérieur de %s"
+
+#~ msgid "Only emit explicit template instatiations"
+#~ msgstr "Produire seulement des instanciations explicites du canevas"
+
+#~ msgid "Recognize and/bitand/bitor/compl/not/or/xor"
+#~ msgstr "Reconnaître and/bitand/bitor/compl/not/or/xor"
+
+#~ msgid "Warn about inconsistent return types"
+#~ msgstr "Avertir à propos des types retournés inconsistants"
+
+#~ msgid "Warn when a function is declared extern, then inline"
+#~ msgstr "Avertir lorsqu'un fonction est déclarée extern, puis inline"
+
+#~ msgid "Don't announce deprecation of compiler features"
+#~ msgstr "Ne pas annoncer la dépréciation des options du compilateur"
+
+#~ msgid "directory name must immediately follow -I"
+#~ msgstr "nom du répertoire doit suivre immédiatement -I"
+
+#~ msgid "ignoring pragma: %s"
+#~ msgstr "pragma: %s ignoré"
+
+#~ msgid "Program does not use Unix-f77 dialectal features"
+#~ msgstr "Programme n'utilise pas les options du dialecte Unix f77"
+
+#~ msgid "Disable the appending of underscores to externals"
+#~ msgstr "Désactiver l'ajout de caractères de soulignement aux externes"
+
+#~ msgid "Fortran-specific form of -fbounds-check"
+#~ msgstr "Forme spécifique Fortran de -fbounds-check"
+
+#~ msgid "Add a directory for INCLUDE searching"
+#~ msgstr "Ajouter un répertoire pour la recherche par INCLUDE"
+
+#~ msgid "Set the maximum line length"
+#~ msgstr "Initialiser la longueur maximale des lignes"
+
+#~ msgid "Disable automatic array bounds checking"
+#~ msgstr "Vérification automatique désactivée des bornes de tableaux"
+
+#~ msgid "Set class path"
+#~ msgstr "Initialiser le chemin des classes"
+
+#~ msgid "Choose class whose main method should be used"
+#~ msgstr "Choisir la classe dont la méthode principale devrait être utilisée"
+
+#~ msgid "Add directory to class path"
+#~ msgstr "Ajouter un répertoire au chemin des classes"
+
+#~ msgid "Directory where class files should be written"
+#~ msgstr "Répertoire où les fichiers de classe devraient être écrits"
+
+#~ msgid "`%s' cannot be statically allocated"
+#~ msgstr "« %s » ne peut être statiquement alloué"
+
+#~ msgid "multiple declarations for method `%s'"
+#~ msgstr "multiples déclarations pour la méthode « %s »"
+
+#~ msgid "cannot find class (factory) method"
+#~ msgstr "ne peut repérer de méthode de classe (manufacturé)"
+
+#~ msgid "return type for `%s' defaults to id"
+#~ msgstr "type retourné pour « %s » par défaut est id"
+
+#~ msgid "return type defaults to id"
+#~ msgstr "type retourné par défaut est id"
+
+#~ msgid "cannot find method"
+#~ msgstr "ne peut repérer la méthode"
+
+#~ msgid "duplicate definition of class method `%s'"
+#~ msgstr "duplication de définition de la méthode de la classe « %s »"
+
+#~ msgid "duplicate definition of instance method `%s'"
+#~ msgstr "duplication de définition de la méthode d'instanciation « %s »"
+
+#~ msgid "duplicate declaration of instance method `%s'"
+#~ msgstr "duplication de déclaration de la méthode d'instanciation « %s »"
+
+#~ msgid "potential selector conflict for method `%s'"
+#~ msgstr "conflit potentiel sur le sélecteur pour la méthode « %s »"
+
+#~ msgid "Specify the name of the class for constant strings"
+#~ msgstr "Spécifier le nom de la classe pour les constantes chaînes"
+
+#~ msgid "compilation of header file requested"
+#~ msgstr "fichier d'en-tête requis pour la compilation"
+
+#~ msgid "choose either big or little endian, not both"
+#~ msgstr "choisir un système à octets de poids fort ou faible mais pas les deux"
+
+#~ msgid "choose either m340 or m210 not both"
+#~ msgstr "choisir m340 ou m210 mais pas les deux"
+
+#~ msgid "-c or -S required for Ada"
+#~ msgstr "-c ou -S requis pour Ada"
#~ msgid "-static not valid with -mcoff"
#~ msgstr "-static n'est pas valide avec -mcoff"
@@ -21314,9 +22887,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "sizeof applied to a void type"
#~ msgstr "sizeof appliqué sur un type void"
-#~ msgid "sizeof applied to an incomplete type"
-#~ msgstr "sizeof appliqué sur un type incomplet"
-
#~ msgid "execvp %s"
#~ msgstr "execvp %s"
@@ -21382,9 +22952,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "multi-line string literals are deprecated"
#~ msgstr "chaîne de mots multi-lignes sont dépréciés"
-#~ msgid "\"%s\" cannot be used as a macro name"
-#~ msgstr "« %s » ne peut être utilisé comme nom de macro"
-
#~ msgid "directives may not be used inside a macro argument"
#~ msgstr "directives ne peuvent être utilisées à l'intérieur d'un argument macro"
@@ -21394,15 +22961,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "%s:%d: warning: "
#~ msgstr "%s:%d: AVERTISSEMENT: "
-#~ msgid "%s: warning: "
-#~ msgstr "%s: AVERTISSEMENT: "
-
-#~ msgid "sorry, not implemented: "
-#~ msgstr "désolé, pas implanté: "
-
-#~ msgid "Internal compiler error in %s, at %s:%d"
-#~ msgstr "Erreur internal du compilateur dans %s, à %s:%d"
-
#~ msgid "argument to `-b' is missing"
#~ msgstr "argument de «-b» est manquant"
@@ -21448,9 +23006,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "conversion from NaN to int"
#~ msgstr "conversion de NaN en int"
-#~ msgid "conversion from NaN to unsigned int"
-#~ msgstr "conversion de NaN en un int non signé"
-
#~ msgid "floating point overflow"
#~ msgstr "débordement de virgule flottante"
@@ -21466,9 +23021,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "%s: function singularity"
#~ msgstr "%s: singularité de fonction"
-#~ msgid "%s: overflow range error"
-#~ msgstr "%s: erreur de débordement de bornes"
-
#~ msgid "%s: underflow range error"
#~ msgstr "%s: erreur de sous débordement de bornes"
@@ -21523,9 +23075,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "octal character constant does not fit in a byte"
#~ msgstr "constante de caractères en octal ne peut être insérée dans un octet"
-#~ msgid "hex character constant does not fit in a byte"
-#~ msgstr "constante de caractères en hexadémical ne peut être insérée dans un octet"
-
#~ msgid "empty #if expression"
#~ msgstr "expression #if vide"
@@ -21679,9 +23228,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "Use VAX-C alignment"
#~ msgstr "Utiliser l'alignement VAX-C"
-#~ msgid "invalid %%V value"
-#~ msgstr "valeur %%V invalide"
-
#~ msgid "Generate code assuming DW bit is set"
#~ msgstr "Générer le code en assumant que le bit DW est initialisé"
@@ -21835,12 +23381,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "Use mcount_ptr for profiling"
#~ msgstr "Utiliser mcount_ptr pour le profilage"
-#~ msgid "Generate code which uses the FPU"
-#~ msgstr "Générer du code qui utilise le FPU"
-
-#~ msgid "Do not generate code which uses the FPU"
-#~ msgstr "Ne pas générer du code qui utilise le FPU"
-
#~ msgid "the -mlong-double-64 option does not work yet"
#~ msgstr "l'option -mlong-double-64 n'est pas fonctionnelle encore"
@@ -21925,9 +23465,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "`%D' as declarator"
#~ msgstr "« %D » comme déclarateur"
-#~ msgid "size of member `%D' is not constant"
-#~ msgstr "taille du membre « %D » n'est pas constant"
-
#~ msgid "cannot declare %s to references"
#~ msgstr "ne peut déclarer %s comme références"
@@ -21940,14 +23477,11 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "-fname-mangling-version is no longer supported"
#~ msgstr "-fname-mangling-version n'est plus supportée"
-#~ msgid "candidate%s: %+#D"
-#~ msgstr "candidat%s: %+#D"
-
#~ msgid " %#D"
#~ msgstr " %#D"
#~ msgid "member initializers for `%#D'"
-#~ msgstr "initialiseur du membre pour «%#D»"
+#~ msgstr "initialiseur du membre pour « %#D »"
#~ msgid " will be re-ordered to match declaration order"
#~ msgstr " sera ré-odonné pour concorder avec l'ordre déclaré"
@@ -21962,13 +23496,13 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgstr "nom d'implantation réservé « %D » est utilisé"
#~ msgid "explicit instantiation of `%#D' after"
-#~ msgstr "instanciation explicite de «%#D» après"
+#~ msgstr "instanciation explicite de « %#D » après"
#~ msgid "explicit specialization here"
#~ msgstr "spécialisation explicite ici"
#~ msgid "explicit instantiation of `%#T' after"
-#~ msgstr "instanciation explicite de «%#T» après"
+#~ msgstr "instanciation explicite de « %#T » après"
#~ msgid "base initializer for `%T'"
#~ msgstr "initialiseur de base « %T »"
@@ -21989,13 +23523,13 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgstr "requête du membre «%T::%D» dans l'expression du type non aggrégat « %T »"
#~ msgid "invalid use of type decl `%#D' as expression"
-#~ msgstr "utilisation invalide du type decl «%#D» comme expression"
+#~ msgstr "utilisation invalide du type decl « %#D » comme expression"
#~ msgid "invalid use of template `%#D' as expression"
-#~ msgstr "utilisation invalide du patron «%#D» comme expression"
+#~ msgstr "utilisation invalide du canevas « %#D » comme expression"
#~ msgid "invalid offsetof from non-POD type `%#T'; use pointer to member instead"
-#~ msgstr "offsetof invalide du type non POD «%#T»; utiliser un pointeur vers un membre à la place"
+#~ msgstr "offsetof invalide du type non POD « %#T »; utiliser un pointeur vers un membre à la place"
#~ msgid "pointer to member function called, but not in class scope"
#~ msgstr "appel d'un pointeur vers un membre de fonction, mais n'est pas dans le champ de la classe"
@@ -22010,7 +23544,7 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgstr "appel invalide vers un membre de fonction ayant besoin de « ceci » dans le champ du membre statique de la fonction"
#~ msgid "invalid use of undefined type `%#T'"
-#~ msgstr "utilisation invalide d'un type indéfini «%#T»"
+#~ msgstr "utilisation invalide d'un type indéfini « %#T »"
#~ msgid "invalid use of `%T'"
#~ msgstr "utilisation invalide de « %T »"
@@ -22018,9 +23552,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "invalid use of member (did you forget the `&' ?)"
#~ msgstr "utilisation invalide de membre (avez-vous oublié le «&» ?)"
-#~ msgid "invalid use of template type parameter"
-#~ msgstr "utilisation invalide de patron de type de paramètres"
-
#~ msgid "address of overloaded function with no contextual type information"
#~ msgstr "adresse de la fonction surchargée sans information contextuelle de type"
@@ -22100,7 +23631,7 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgstr "ne peut utiliser ensemble -mfp32 et -mfp64"
#~ msgid "declaration of `%#T'"
-#~ msgstr "déclaration de «%#T»"
+#~ msgstr "déclaration de « %#T »"
#~ msgid "a -ifile option requires a -map option"
#~ msgstr "l'option -ifile requiert l'option -map"
@@ -22483,9 +24014,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "duplicate grant for `%s'"
#~ msgstr "duplication autorisée pour « %s »"
-#~ msgid "previous grant for `%s'"
-#~ msgstr "autorisation précédente pour « %s »"
-
#~ msgid "duplicate definition `%s'"
#~ msgstr "double définition de « %s »"
@@ -22576,9 +24104,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "parameter 1 must be referable"
#~ msgstr "paramètre 1 doit pouvoir être référencé"
-#~ msgid "mode mismatch in parameter 1"
-#~ msgstr "non concordance de mode dans le paramètre 1"
-
#~ msgid "parameter 2 must be a positive integer"
#~ msgstr "paramètre 2 doit être un entier positif"
@@ -22762,9 +24287,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "-> operator not allow in constant expression"
#~ msgstr "opérateur -> n'est pas permis dans l'expression d'une constante"
-#~ msgid "taking the address of a string literal is non-standard"
-#~ msgstr "prendre l'adresse d'un litéral de chaîne n,est pas standard"
-
#~ msgid "taking the address of a function is non-standard"
#~ msgstr "prendre l'adresse d'une fonction n'est pas standard"
@@ -22825,9 +24347,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "decode_constant_selective: cannot decode this mode"
#~ msgstr "decode_constant_selective: ne peut décoder ce mode"
-#~ msgid "can't write to %s"
-#~ msgstr "ne peut écrire dans %s"
-
#~ msgid "FORBID is not yet implemented"
#~ msgstr "FORBID n'est pas encore implantée"
@@ -22987,9 +24506,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "no padding character (offset %d)"
#~ msgstr "pas de caractère de remplissage (décalage %d)"
-#~ msgid "too many arguments for this format string"
-#~ msgstr "trop d'arguments pour ce format de chaîne"
-
#~ msgid "missing index expression"
#~ msgstr "expresion d'index manquante"
@@ -23158,9 +24674,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "'%s!' is not followed by an identifier"
#~ msgstr "« %s » n'est pas suivi d'un identificateur"
-#~ msgid "expected a name here"
-#~ msgstr "un nom est attendu ici"
-
#~ msgid "expected a name string here"
#~ msgstr "un nom de chaîne est attendu ici"
@@ -23206,9 +24719,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "expected another rename clause"
#~ msgstr "attendait une autre clause de changement de nom"
-#~ msgid "syntax error in parameter name list"
-#~ msgstr "erreur de syntaxe dans la liste de noms de paramètres"
-
#~ msgid "NONREF specific without LOC in result attribute"
#~ msgstr "NONREF spécifique sans LOCALISATION dans l'attribut résultant"
@@ -23269,9 +24779,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "missing parenthesis for procedure call"
#~ msgstr "parenthèse manquante dans l'appel de procédure"
-#~ msgid "expression is not an action"
-#~ msgstr "l'expression n'est pas une action"
-
#~ msgid "syntax error in action"
#~ msgstr "erreur de syntaxe dans l,action"
@@ -23332,9 +24839,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "VARYING bit-strings not implemented"
#~ msgstr "chaîne variante de bits n'est pas implantée"
-#~ msgid "strings must be composed of chars"
-#~ msgstr "chaînes doivent être composées de caractères"
-
#~ msgid "BUFFER modes may not be readonly"
#~ msgstr "modes des TAMPOONS ne peuvent pas être en LECTURE seulement"
@@ -23605,9 +25109,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "index is not an integer expression"
#~ msgstr "index n'est pas une expression entière"
-#~ msgid "index not compatible with index mode"
-#~ msgstr "index n'est pas compatible avec le mode index"
-
#~ msgid "index is not discrete"
#~ msgstr "index n'est pas discret"
@@ -23674,9 +25175,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "location conversion between differently-sized modes"
#~ msgstr "conversion de localisation entre des mode de taille différentes"
-#~ msgid "operand to bin must be a non-negative integer literal"
-#~ msgstr "opérande à bin doit être un litéral entier non négatif"
-
#~ msgid "size %d of BIN too big - no such integer mode"
#~ msgstr "taille %d de BIN trop grand - pas de tel mode entier"
@@ -23773,9 +25271,6 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "starting bit in POS must be < the width of a word"
#~ msgstr "bit de départ dans la POSITION doit être < que la largeur d'un mot"
-#~ msgid "length in POS must be an integer constant"
-#~ msgstr "longueur dans la POSITION doit être une constante entière"
-
#~ msgid "length in POS must be > 0"
#~ msgstr "longueur dans la POSITION doit être > 0"
@@ -23816,13 +25311,10 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgstr "type paramétrisé invalide"
#~ msgid "abstract virtual `%#D' called from constructor"
-#~ msgstr "abstrait virtuel «%#D» appelé à partir d'un constructeur"
+#~ msgstr "abstrait virtuel « %#D » appelé à partir d'un constructeur"
#~ msgid "abstract virtual `%#D' called from destructor"
-#~ msgstr "abstrait virtuel «%#D» appelé à partir d'un destructeur"
-
-#~ msgid " perhaps you want `typename %T::%D' to make it a type"
-#~ msgstr " peut-être vous voulez «typename %T::%D» pour en faire un type"
+#~ msgstr "abstrait virtuel « %#D » appelé à partir d'un destructeur"
#~ msgid "discarding `const' applied to a reference"
#~ msgstr "mis de côté «const» appliqué à une référence"
@@ -24346,6 +25838,9 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "no file-scope type named `%D'"
#~ msgstr "pas de type de portée de fichier nommé `%D'"
+#~ msgid "%T is not a class type"
+#~ msgstr "« %T » n'est pas un type de classe"
+
#~ msgid "base clause without member specification for `%#T'"
#~ msgstr "clause de base sans spécification de membre pour `%#T'"
@@ -24552,3 +26047,102 @@ msgstr "-msingle-float et -msoft-float ne peuvent être spécifiés ensembles"
#~ msgid "Data size %ld.\n"
#~ msgstr "Taille des données %ld.\n"
+
+#~ msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
+#~ msgstr "Copyright © 2001 Free Software Foundation, Inc.\n"
+
+#~ msgid "Name `%s' contains quotes"
+#~ msgstr "Nom « %s » contient des guillemets"
+
+#~ msgid "invalid string `%s' in define_query_cpu_unit"
+#~ msgstr "chaîne invalide « %s » dans define_query_cpu_unit"
+
+#~ msgid "invalid first string `%s' in presence_set"
+#~ msgstr "première chaîne invalide « %s » dans presence_set"
+
+#~ msgid "invalid first string `%s' in absence_set"
+#~ msgstr "première chaîne invalide « %s » dans absence_set"
+
+#~ msgid "invalid second string `%s' in absence_set"
+#~ msgstr "seconde chaîne invalide « %s » dans absence_set"
+
+#~ msgid "invalid string `%s' in define_automaton"
+#~ msgstr "chaîne invalide « %s » dans define_automaton"
+
+#~ msgid "garbage after ) in reservation `%s'"
+#~ msgstr "rebut après « ) » dans la réservation « %s »"
+
+#~ msgid "repetition `%s' <= 1 in reservation `%s'"
+#~ msgstr "répétition « %s » <= 1 dans la réservation « %s »"
+
+#~ msgid "`%s' in exclusion is not unit"
+#~ msgstr "« %s » dans l'exclusion n'est pas une unité"
+
+#~ msgid "units `%s' and `%s' in exclusion set belong to different automata"
+#~ msgstr "unités « %s » et « %s » dans l'ensemble d'exclusions appartient à un automate différent"
+
+#~ msgid "unit `%s' excludes and requires presence of `%s'"
+#~ msgstr "unité « %s » exclue et requiert la présence de « %s »"
+
+#~ msgid "unit `%s' requires absence and presence of `%s'"
+#~ msgstr "unité « %s » exclue et requiert l'absence ou la présence de « %s »"
+
+#~ msgid "define_insn_reservation `%s' has negative latency time"
+#~ msgstr "define_insn_reservation « %s » a un temps de latence négatif"
+
+#~ msgid "define_bypass `%s - %s' has negative latency time"
+#~ msgstr "define_bypass « %s - %s » a un temps de latence négatif"
+
+#~ msgid "define_unit `%s' without automaton when one defined"
+#~ msgstr "define_unit « %s » sans automate alors qu'il y en a un défini"
+
+#~ msgid "Units `%s' and `%s' should be in the same automaton"
+#~ msgstr "Unités « %s » et « %s » devraient être dans le même automate"
+
+#~ msgid "Automaton `%s': Insn `%s' will never be issued"
+#~ msgstr "Automate « %s »: Insn « %s » ne sera jamais émis"
+
+#~ msgid "Insn `%s' will never be issued"
+#~ msgstr "Insn « %s » ne sera jamais émis"
+
+#~ msgid "Profile does not match flowgraph of function %s (out of date?)"
+#~ msgstr "Profil ne concorde pas le graphe de flux de la fonction %s (périmé?)"
+
+#~ msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
+#~ msgstr "La pente de la fonction linéaire d'étrnaglement d'enlignage après avoir atteint récursivement la limite d'enlignage récursif est obtenue par la valeur négative réciproque de ce paramètre"
+
+#~ msgid "push %s level %p line %d\n"
+#~ msgstr "empiler %s niveau %p ligne %d\n"
+
+#~ msgid "pop %s level %p line %d\n"
+#~ msgstr "dépiler %s niveau %p ligne %d\n"
+
+#~ msgid "suspend %s level %p line %d\n"
+#~ msgstr "suspendre %s niveau %p ligne %d\n"
+
+#~ msgid "resume %s level %p line %d\n"
+#~ msgstr "compléter %s niveau %p ligne %d\n"
+
+#~ msgid "\\x%x"
+#~ msgstr "\\x%x"
+
+#~ msgid "invalid use of template `%D'"
+#~ msgstr "utilisation invalide du canevas « %D »"
+
+#~ msgid "qualified name does not name a class"
+#~ msgstr "nom qualifié ne nomme pas une classe"
+
+#~ msgid "assignment to non-static member `%D' of enclosing class `%T'"
+#~ msgstr "affectation à un membre non statique « %D » de la classe « %T » entourée"
+
+#~ msgid "ISO C++ does not permit named return values"
+#~ msgstr "ISO C++ ne permet pas les valeurs retournées nommées"
+
+#~ msgid "exception handler inside code that is being protected"
+#~ msgstr "traitement d'exception à l'intérieur du code qui est protégé"
+
+#~ msgid "(debug) trace parsing process"
+#~ msgstr "(débug) tracer le traitement de l'analyse"
+
+#~ msgid "(debug) trace lexical analysis"
+#~ msgstr "(débug) trace l'analyse lexicale"
diff --git a/gcc/po/gcc.pot b/gcc/po/gcc.pot
index da74e005f71..5cd4ad7d003 100644
--- a/gcc/po/gcc.pot
+++ b/gcc/po/gcc.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
-"POT-Creation-Date: 2003-11-20 10:14+0000\n"
+"POT-Creation-Date: 2004-04-18 18:00-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -36,16 +36,16 @@ msgstr ""
msgid "`%s' attribute only applies to function types"
msgstr ""
-#: attribs.c:416 c-common.c:4353 c-common.c:4372 c-common.c:4390
-#: c-common.c:4417 c-common.c:4436 c-common.c:4459 c-common.c:4482
-#: c-common.c:4508 c-common.c:4542 c-common.c:4586 c-common.c:4614
-#: c-common.c:4642 c-common.c:4661 c-common.c:4916 c-common.c:4938
-#: c-common.c:4973 c-common.c:5040 c-common.c:5086 c-common.c:5144
-#: c-common.c:5175 c-common.c:5521 c-common.c:5544 c-common.c:5583
-#: config/arm/arm.c:2233 config/arm/arm.c:2260 config/avr/avr.c:4561
-#: config/h8300/h8300.c:4279 config/h8300/h8300.c:4302 config/i386/i386.c:1593
-#: config/i386/i386.c:15269 config/i386/winnt.c:86 config/ia64/ia64.c:1057
-#: config/ip2k/ip2k.c:3214
+#: attribs.c:416 c-common.c:4306 c-common.c:4325 c-common.c:4343
+#: c-common.c:4370 c-common.c:4389 c-common.c:4412 c-common.c:4435
+#: c-common.c:4461 c-common.c:4495 c-common.c:4539 c-common.c:4567
+#: c-common.c:4595 c-common.c:4614 c-common.c:4869 c-common.c:4891
+#: c-common.c:4926 c-common.c:4993 c-common.c:5039 c-common.c:5097
+#: c-common.c:5128 c-common.c:5474 c-common.c:5497 c-common.c:5536
+#: config/arm/arm.c:2281 config/arm/arm.c:2308 config/avr/avr.c:4539
+#: config/h8300/h8300.c:4284 config/h8300/h8300.c:4307 config/i386/i386.c:1608
+#: config/i386/i386.c:15380 config/i386/winnt.c:86 config/ia64/ia64.c:1057
+#: config/ip2k/ip2k.c:3151
#, c-format
msgid "`%s' attribute ignored"
msgstr ""
@@ -54,474 +54,499 @@ msgstr ""
msgid "offset outside bounds of constant string"
msgstr ""
-#: builtins.c:779
+#: builtins.c:786
msgid "second arg to `__builtin_prefetch' must be a constant"
msgstr ""
-#: builtins.c:786
+#: builtins.c:793
msgid "invalid second arg to __builtin_prefetch; using zero"
msgstr ""
-#: builtins.c:793
+#: builtins.c:800
msgid "third arg to `__builtin_prefetch' must be a constant"
msgstr ""
-#: builtins.c:800
+#: builtins.c:807
msgid "invalid third arg to __builtin_prefetch; using zero"
msgstr ""
-#: builtins.c:3810
+#: builtins.c:3828
msgid "argument of `__builtin_args_info' must be constant"
msgstr ""
-#: builtins.c:3816
+#: builtins.c:3834
msgid "argument of `__builtin_args_info' out of range"
msgstr ""
-#: builtins.c:3822
+#: builtins.c:3840
msgid "missing argument in `__builtin_args_info'"
msgstr ""
-#: builtins.c:3838
+#: builtins.c:3856
msgid "`va_start' used in function with fixed args"
msgstr ""
-#: builtins.c:3857
+#: builtins.c:3875
msgid "second parameter of `va_start' not last named argument"
msgstr ""
#. Evidently an out of date version of <stdarg.h>; can't validate
#. va_start's second argument, but can still work as intended.
-#: builtins.c:3862
+#: builtins.c:3880
msgid "`__builtin_next_arg' called without an argument"
msgstr ""
-#: builtins.c:3951
+#: builtins.c:3969
msgid "too many arguments to function `va_start'"
msgstr ""
-#: builtins.c:4051
+#: builtins.c:4091
msgid "first argument to `va_arg' not of type `va_list'"
msgstr ""
#. Unfortunately, this is merely undefined, rather than a constraint
#. violation, so we cannot make this an error. If this call is never
#. executed, the program is still strictly conforming.
-#: builtins.c:4083
+#: builtins.c:4123
#, c-format
msgid "`%s' is promoted to `%s' when passed through `...'"
msgstr ""
-#: builtins.c:4088
+#: builtins.c:4128
#, c-format
msgid "(so you should pass `%s' not `%s' to `va_arg')"
msgstr ""
-#: builtins.c:4205
+#. We can, however, treat "undefined" any way we please.
+#. Call abort to encourage the user to fix the program.
+#: builtins.c:4134 c-typeck.c:1719
+msgid "if this code is reached, the program will abort"
+msgstr ""
+
+#: builtins.c:4241
msgid "invalid arg to `__builtin_frame_address'"
msgstr ""
-#: builtins.c:4207
+#: builtins.c:4243
msgid "invalid arg to `__builtin_return_address'"
msgstr ""
-#: builtins.c:4221
+#: builtins.c:4257
msgid "unsupported arg to `__builtin_frame_address'"
msgstr ""
-#: builtins.c:4223
+#: builtins.c:4259
msgid "unsupported arg to `__builtin_return_address'"
msgstr ""
-#: builtins.c:4383
+#: builtins.c:4419
msgid "second arg to `__builtin_expect' must be a constant"
msgstr ""
-#: builtins.c:5328
+#: builtins.c:5360
msgid "__builtin_longjmp second argument must be 1"
msgstr ""
-#: builtins.c:5423
+#: builtins.c:5458
#, c-format
msgid "built-in function `%s' not currently supported"
msgstr ""
-#: builtins.c:5563
+#: builtins.c:5598
msgid "target format does not support infinity"
msgstr ""
-#: c-common.c:943
+#: c-common.c:917
msgid "%Hsuggest explicit braces to avoid ambiguous `else'"
msgstr ""
-#: c-common.c:1161
+#: c-common.c:1141
msgid "%J'%D' is not defined outside of function scope"
msgstr ""
-#: c-common.c:1181
+#: c-common.c:1161
#, c-format
msgid ""
"string length `%d' is greater than the length `%d' ISO C%d compilers are "
"required to support"
msgstr ""
-#: c-common.c:1221
+#: c-common.c:1201
msgid "overflow in constant expression"
msgstr ""
-#: c-common.c:1241
+#: c-common.c:1221
msgid "integer overflow in expression"
msgstr ""
-#: c-common.c:1250
+#: c-common.c:1230
msgid "floating point overflow in expression"
msgstr ""
-#: c-common.c:1256
+#: c-common.c:1236
msgid "vector overflow in expression"
msgstr ""
#. This detects cases like converting -129 or 256 to unsigned char.
-#: c-common.c:1278
+#: c-common.c:1258
msgid "large integer implicitly truncated to unsigned type"
msgstr ""
-#: c-common.c:1280
+#: c-common.c:1260
msgid "negative integer implicitly converted to unsigned type"
msgstr ""
-#: c-common.c:1326
+#: c-common.c:1306
msgid "overflow in implicit constant conversion"
msgstr ""
-#: c-common.c:1462
+#: c-common.c:1442
#, c-format
msgid "operation on `%s' may be undefined"
msgstr ""
-#: c-common.c:1746
+#: c-common.c:1726
msgid "expression statement has incomplete type"
msgstr ""
-#: c-common.c:1778
+#: c-common.c:1758
msgid "case label does not reduce to an integer constant"
msgstr ""
-#: c-common.c:2108
+#: c-common.c:2088
msgid "invalid truth-value expression"
msgstr ""
-#: c-common.c:2159
+#: c-common.c:2139
#, c-format
msgid "invalid operands to binary %s"
msgstr ""
-#: c-common.c:2393
+#: c-common.c:2373
msgid "comparison is always false due to limited range of data type"
msgstr ""
-#: c-common.c:2395
+#: c-common.c:2375
msgid "comparison is always true due to limited range of data type"
msgstr ""
-#: c-common.c:2465
+#: c-common.c:2445
msgid "comparison of unsigned expression >= 0 is always true"
msgstr ""
-#: c-common.c:2474
+#: c-common.c:2454
msgid "comparison of unsigned expression < 0 is always false"
msgstr ""
-#: c-common.c:2519
+#: c-common.c:2499
msgid "pointer of type `void *' used in arithmetic"
msgstr ""
-#: c-common.c:2525
+#: c-common.c:2505
msgid "pointer to a function used in arithmetic"
msgstr ""
-#: c-common.c:2531
+#: c-common.c:2511
msgid "pointer to member function used in arithmetic"
msgstr ""
-#: c-common.c:2537
-msgid "pointer to a member used in arithmetic"
-msgstr ""
-
-#: c-common.c:2626 f/com.c:14732
+#: c-common.c:2600 f/com.c:14734
msgid "struct type value used where scalar is required"
msgstr ""
-#: c-common.c:2630 f/com.c:14736
+#: c-common.c:2604 f/com.c:14738
msgid "union type value used where scalar is required"
msgstr ""
-#: c-common.c:2634 f/com.c:14740
+#: c-common.c:2608 f/com.c:14742
msgid "array type value used where scalar is required"
msgstr ""
#. Common Ada/Pascal programmer's mistake. We always warn
#. about this since it is so bad.
-#: c-common.c:2671
+#: c-common.c:2645
msgid "the address of `%D', will always evaluate as `true'"
msgstr ""
-#: c-common.c:2765 f/com.c:14872
+#: c-common.c:2739 f/com.c:14874
msgid "suggest parentheses around assignment used as truth value"
msgstr ""
-#: c-common.c:2808 c-common.c:2845
+#: c-common.c:2785 c-common.c:2825
msgid "invalid use of `restrict'"
msgstr ""
-#: c-common.c:2955
+#: c-common.c:2935
msgid "invalid application of `sizeof' to a function type"
msgstr ""
-#: c-common.c:2965
+#: c-common.c:2945
#, c-format
msgid "invalid application of `%s' to a void type"
msgstr ""
-#: c-common.c:2971
+#: c-common.c:2951
#, c-format
msgid "invalid application of `%s' to an incomplete type"
msgstr ""
-#: c-common.c:3011
+#: c-common.c:2991
msgid "`__alignof' applied to a bit-field"
msgstr ""
-#: c-common.c:3503
+#: c-common.c:3483
#, c-format
msgid "cannot disable built-in function `%s'"
msgstr ""
-#: c-common.c:3664 c-typeck.c:1898
+#: c-common.c:3644 c-typeck.c:1949
#, c-format
msgid "too few arguments to function `%s'"
msgstr ""
-#: c-common.c:3670 c-typeck.c:1759
+#: c-common.c:3650 c-typeck.c:1810
#, c-format
msgid "too many arguments to function `%s'"
msgstr ""
-#: c-common.c:3689
+#: c-common.c:3669
#, c-format
msgid "non-floating-point argument to function `%s'"
msgstr ""
-#: c-common.c:3916
+#: c-common.c:3896
msgid "pointers are not permitted as case values"
msgstr ""
-#: c-common.c:3920
+#: c-common.c:3900
msgid "range expressions in switch statements are non-standard"
msgstr ""
-#: c-common.c:3949
+#: c-common.c:3929
msgid "empty range specified"
msgstr ""
-#: c-common.c:4000
+#: c-common.c:3980
msgid "duplicate (or overlapping) case value"
msgstr ""
-#: c-common.c:4001
+#: c-common.c:3981
msgid "%Jthis is the first entry overlapping that value"
msgstr ""
-#: c-common.c:4005
+#: c-common.c:3985
msgid "duplicate case value"
msgstr ""
-#: c-common.c:4006
+#: c-common.c:3986
msgid "%Jpreviously used here"
msgstr ""
-#: c-common.c:4010
+#: c-common.c:3990
msgid "multiple default labels in one switch"
msgstr ""
-#: c-common.c:4011
+#: c-common.c:3991
msgid "%Jthis is the first default label"
msgstr ""
-#: c-common.c:4036
+#: c-common.c:4016
msgid "taking the address of a label is non-standard"
msgstr ""
-#: c-common.c:4082
+#: c-common.c:4062
msgid ""
"%Hignoring return value of `%D', declared with attribute warn_unused_result"
msgstr ""
-#: c-common.c:4087
+#: c-common.c:4067
msgid ""
"%Hignoring return value of function declared with attribute "
"warn_unused_result"
msgstr ""
-#. SW_PARAM
-#: c-common.c:4306
-#, c-format
-msgid "declaration of \"%s\" shadows a parameter"
-msgstr ""
-
-#. SW_LOCAL
-#: c-common.c:4307
-#, c-format
-msgid "declaration of \"%s\" shadows a previous local"
-msgstr ""
-
-#. SW_GLOBAL
-#: c-common.c:4308
-#, c-format
-msgid "declaration of \"%s\" shadows a global declaration"
-msgstr ""
-
-#: c-common.c:4312
-msgid "%Jshadowed declaration is here"
-msgstr ""
-
-#: c-common.c:4695
+#: c-common.c:4648
#, c-format
msgid "unknown machine mode `%s'"
msgstr ""
-#: c-common.c:4698
+#: c-common.c:4651
#, c-format
msgid "no data type for mode `%s'"
msgstr ""
-#: c-common.c:4702
+#: c-common.c:4655
#, c-format
msgid "invalid pointer mode `%s'"
msgstr ""
-#: c-common.c:4709 c-common.c:5272
+#: c-common.c:4662 c-common.c:5225
#, c-format
msgid "unable to emulate '%s'"
msgstr ""
-#: c-common.c:4753
+#: c-common.c:4706
msgid "%Jsection attribute cannot be specified for local variables"
msgstr ""
-#: c-common.c:4764
+#: c-common.c:4717
msgid "%Jsection of '%D' conflicts with previous declaration"
msgstr ""
-#: c-common.c:4773
+#: c-common.c:4726
msgid "%Jsection attribute not allowed for '%D'"
msgstr ""
-#: c-common.c:4779
+#: c-common.c:4732
msgid "%Jsection attributes are not supported for this target"
msgstr ""
-#: c-common.c:4817
+#: c-common.c:4770
msgid "requested alignment is not a constant"
msgstr ""
-#: c-common.c:4822
+#: c-common.c:4775
msgid "requested alignment is not a power of 2"
msgstr ""
-#: c-common.c:4827
+#: c-common.c:4780
msgid "requested alignment is too large"
msgstr ""
-#: c-common.c:4853
+#: c-common.c:4806
msgid "%Jalignment may not be specified for '%D'"
msgstr ""
-#: c-common.c:4891
+#: c-common.c:4844
msgid "%J'%D' defined both normally and as an alias"
msgstr ""
-#: c-common.c:4901
+#: c-common.c:4854
msgid "alias arg not a string"
msgstr ""
-#: c-common.c:4944
+#: c-common.c:4897
msgid "visibility arg not a string"
msgstr ""
-#: c-common.c:4957
+#: c-common.c:4910
msgid ""
"visibility arg must be one of \"default\", \"hidden\", \"protected\" or "
"\"internal\""
msgstr ""
-#: c-common.c:4983
+#: c-common.c:4936
msgid "tls_model arg not a string"
msgstr ""
-#: c-common.c:4992
+#: c-common.c:4945
msgid ""
"tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-"
"dynamic\" or \"global-dynamic\""
msgstr ""
-#: c-common.c:5014 c-common.c:5060
+#: c-common.c:4967 c-common.c:5013
msgid "%J'%E' attribute applies only to functions"
msgstr ""
-#: c-common.c:5019 c-common.c:5065
+#: c-common.c:4972 c-common.c:5018
msgid "%Jcan't set '%E' attribute after definition"
msgstr ""
-#: c-common.c:5141
+#: c-common.c:5094
#, c-format
msgid "`%s' attribute ignored for `%s'"
msgstr ""
-#: c-common.c:5204
+#: c-common.c:5157
#, c-format
msgid "invalid vector type for attribute `%s'"
msgstr ""
-#: c-common.c:5228 c-common.c:5260
+#: c-common.c:5181 c-common.c:5213
msgid "no vector mode with the size and type specified could be found"
msgstr ""
-#: c-common.c:5362
+#: c-common.c:5315
msgid "nonnull attribute without arguments on a non-prototype"
msgstr ""
-#: c-common.c:5377
+#: c-common.c:5330
#, c-format
msgid "nonnull argument has invalid operand number (arg %lu)"
msgstr ""
-#: c-common.c:5396
+#: c-common.c:5349
#, c-format
msgid ""
"nonnull argument with out-of-range operand number (arg %lu, operand %lu)"
msgstr ""
-#: c-common.c:5404
+#: c-common.c:5357
#, c-format
msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)"
msgstr ""
-#: c-common.c:5484
+#: c-common.c:5437
#, c-format
msgid "null argument where non-null required (arg %lu)"
msgstr ""
-#: c-common.c:5555
+#: c-common.c:5508
msgid "cleanup arg not an identifier"
msgstr ""
-#: c-common.c:5562
+#: c-common.c:5515
msgid "cleanup arg not a function"
msgstr ""
-#: c-convert.c:82 c-typeck.c:1192 c-typeck.c:3348 cp/typeck.c:1307
-#: cp/typeck.c:5605 treelang/tree-convert.c:79
+#: c-common.c:5876
+#, c-format
+msgid "%s at end of input"
+msgstr ""
+
+#: c-common.c:5882
+#, c-format
+msgid "%s before %s'%c'"
+msgstr ""
+
+#: c-common.c:5884
+#, c-format
+msgid "%s before %s'\\x%x'"
+msgstr ""
+
+#: c-common.c:5888
+#, c-format
+msgid "%s before string constant"
+msgstr ""
+
+#: c-common.c:5890
+#, c-format
+msgid "%s before numeric constant"
+msgstr ""
+
+#: c-common.c:5892
+#, c-format
+msgid "%s before \"%s\""
+msgstr ""
+
+#: c-common.c:5894
+#, c-format
+msgid "%s before '%s' token"
+msgstr ""
+
+#. Use `%s' to print the string in case there are any escape
+#. characters in the message.
+#: c-common.c:5896 c-typeck.c:2586 c-typeck.c:3978 c-typeck.c:3993
+#: c-typeck.c:4008 final.c:2776 final.c:2778 gcc.c:4581 rtl-error.c:109
+#: toplev.c:1357 config/cris/cris.c:552 cp/parser.c:1848 cp/typeck.c:4118
+#: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472
+#, c-format
+msgid "%s"
+msgstr ""
+
+#: c-convert.c:82 c-typeck.c:1197 c-typeck.c:3418 cp/typeck.c:1337
+#: cp/typeck.c:5660 treelang/tree-convert.c:79
msgid "void value not ignored as it ought to be"
msgstr ""
@@ -529,475 +554,559 @@ msgstr ""
msgid "conversion to non-scalar type requested"
msgstr ""
-#: c-decl.c:370
+#: c-decl.c:371
msgid "%Jarray '%D' assumed to have one element"
msgstr ""
-#: c-decl.c:579
+#: c-decl.c:580
msgid "%Jlabel `%D' used but not defined"
msgstr ""
-#: c-decl.c:585
+#: c-decl.c:586
msgid "%Jlabel `%D' defined but not used"
msgstr ""
-#: c-decl.c:587
+#: c-decl.c:588
msgid "%Jlabel `%D' declared but not defined"
msgstr ""
-#: c-decl.c:612
+#: c-decl.c:613
msgid "%Junused variable `%D'"
msgstr ""
-#: c-decl.c:836 cp/decl.c:1185
-msgid "%Jfunction '%D' redeclared as inline"
+#: c-decl.c:821
+msgid ""
+"a parameter list with an ellipsis can't match an empty parameter name list "
+"declaration"
msgstr ""
-#: c-decl.c:838
-msgid "%Jprevious declaration of function '%D' with attribute noinline"
+#: c-decl.c:828
+msgid ""
+"an argument type that has a default promotion can't match an empty parameter "
+"name list declaration"
msgstr ""
-#: c-decl.c:845 cp/decl.c:1193
-msgid "%Jfunction '%D' redeclared with attribute noinline"
+#: c-decl.c:864
+msgid ""
+"%Jprototype for '%D' declares more arguments than previous old-style "
+"definition"
msgstr ""
-#: c-decl.c:847
-msgid "%Jprevious declaration of function '%D' was inline"
+#: c-decl.c:870
+msgid ""
+"%Jprototype for '%D' declares fewer arguments than previous old-style "
+"definition"
msgstr ""
-#: c-decl.c:874 c-decl.c:914
-msgid "%Jshadowing built-in function '%D'"
+#: c-decl.c:879
+msgid "%Jprototype for '%D' declares arg %d with incompatible type"
msgstr ""
-#: c-decl.c:878
-msgid "%Jbuilt-in function '%D' declared as non-function"
+#. If we get here, no errors were found, but do issue a warning
+#. for this poor-style construct.
+#: c-decl.c:891
+msgid "%Jprototype for '%D' follows non-prototype definition"
msgstr ""
-#: c-decl.c:883
-msgid "%J'%D' redeclared as different kind of symbol"
+#: c-decl.c:906
+msgid "%Jprevious definition of '%D' was here"
msgstr ""
-#: c-decl.c:885 c-decl.c:1050 c-decl.c:1065 c-decl.c:1073 c-decl.c:1221
-#: c-decl.c:1829 objc/objc-act.c:2534 objc/objc-act.c:6796
-msgid "%Jprevious declaration of '%D'"
+#: c-decl.c:908
+msgid "%Jprevious implicit declaration of '%D' was here"
msgstr ""
-#. If types don't match for a built-in, throw away the built-in.
-#: c-decl.c:936
-msgid "%Jconflicting types for built-in function '%D'"
+#: c-decl.c:910
+msgid "%Jprevious declaration of '%D' was here"
msgstr ""
-#: c-decl.c:980 c-decl.c:998 c-decl.c:1013
-msgid "%Jconflicting types for '%D'"
+#: c-decl.c:945
+msgid "%J'%D' redeclared as different kind of symbol"
msgstr ""
-#: c-decl.c:1036
-msgid ""
-"a parameter list with an ellipsis can't match an empty parameter name list "
-"declaration"
+#: c-decl.c:950
+msgid "%Jbuilt-in function '%D' declared as non-function"
msgstr ""
-#: c-decl.c:1042
-msgid ""
-"an argument type that has a default promotion can't match an empty parameter "
-"name list declaration"
+#: c-decl.c:953 c-decl.c:1045
+msgid "%Jshadowing built-in function '%D'"
msgstr ""
-#: c-decl.c:1048
-msgid "%Jprevious implicit declaration of '%D'"
+#. If types don't match for a built-in, throw away the
+#. built-in. No point in calling locate_old_decl here, it
+#. won't print anything.
+#: c-decl.c:974
+msgid "%Jconflicting types for built-in function '%D'"
msgstr ""
-#: c-decl.c:1063
-msgid "%Jthread-local declaration of '%D' follows non thread-local declaration"
+#: c-decl.c:998 c-decl.c:1006
+msgid "%Jconflicting types for '%D'"
msgstr ""
-#: c-decl.c:1071
-msgid "%Jnon thread-local declaration of '%D' follows thread-local declaration"
+#. allow OLDDECL to continue in use
+#: c-decl.c:1021
+msgid "%Jredefinition of typedef '%D'"
msgstr ""
-#: c-decl.c:1083 c-decl.c:1106
+#: c-decl.c:1058 c-decl.c:1122
msgid "%Jredefinition of '%D'"
msgstr ""
-#: c-decl.c:1086
-msgid "%Jredeclaration of '%D'"
+#: c-decl.c:1089 c-decl.c:1139
+msgid "%Jstatic declaration of '%D' follows non-static declaration"
msgstr ""
-#: c-decl.c:1089
-msgid "%Jconflicting declarations of '%D'"
+#: c-decl.c:1097 c-decl.c:1136
+msgid "%Jnon-static declaration of '%D' follows static declaration"
msgstr ""
-#: c-decl.c:1097 c-decl.c:1108 c-decl.c:6573
-msgid "%J'%D' previously defined here"
+#: c-decl.c:1109
+msgid "%Jthread-local declaration of '%D' follows non-thread-local declaration"
msgstr ""
-#: c-decl.c:1099 c-decl.c:1110
-msgid "%J'%D' previously declared here"
+#: c-decl.c:1112
+msgid "%Jnon-thread-local declaration of '%D' follows thread-local declaration"
msgstr ""
-#: c-decl.c:1131
-msgid "%Jprototype for '%D' follows"
+#: c-decl.c:1152
+msgid "%Jextern declaration of '%D' follows declaration with no linkage"
msgstr ""
-#: c-decl.c:1132 c-decl.c:1140 c-decl.c:1151
-msgid "%Jnon-prototype definition here"
+#: c-decl.c:1155
+msgid "%Jdeclaration of '%D' with no linkage follows extern declaration"
msgstr ""
-#: c-decl.c:1138
-msgid "%Jprototype for '%D' follows and number of arguments doesn't match"
+#: c-decl.c:1158
+msgid "%Jredeclaration of '%D' with no linkage"
msgstr ""
-#: c-decl.c:1149
-msgid "%Jprototype for '%D' follows and argument %d doesn't match"
+#: c-decl.c:1172
+msgid ""
+"%Jredeclaration of '%D' with different visibility (old visibility preserved)"
msgstr ""
-#: c-decl.c:1166
+#: c-decl.c:1183
+msgid ""
+"%Jinline declaration of '%D' follows declaration with attribute noinline"
+msgstr ""
+
+#: c-decl.c:1190
+msgid ""
+"%Jdeclaration of '%D' with attribute noinline follows inline declaration "
+msgstr ""
+
+#: c-decl.c:1202
msgid "%J'%D' declared inline after being called"
msgstr ""
-#: c-decl.c:1172
+#: c-decl.c:1208
msgid "%J'%D' declared inline after its definition"
msgstr ""
-#: c-decl.c:1180
-msgid "%Jstatic declaration for '%D' follows non-static"
+#: c-decl.c:1221
+msgid "%Jredefinition of parameter '%D'"
msgstr ""
-#: c-decl.c:1189
-msgid "%Jnon-static declaration for '%D' follows static"
+#: c-decl.c:1230
+msgid "%Jvolatile declaration of '%D' follows non-volatile declaration"
msgstr ""
-#: c-decl.c:1197
-msgid "%Jconst declaration for '%D' follows non-const"
+#: c-decl.c:1233
+msgid "%Jnon-volatile declaration of '%D' follows volatile declaration"
msgstr ""
-#: c-decl.c:1205
-msgid "%Jtype qualifiers for '%D' conflict with previous declaration"
+#: c-decl.c:1240
+msgid "%Jconst declaration of '%D' follows non-const declaration"
msgstr ""
-#: c-decl.c:1219
-msgid "%Jredundant redeclaration of '%D' in same scope"
+#: c-decl.c:1243
+msgid "%Jnon-const declaration of '%D' follows const declaration"
msgstr ""
-#: c-decl.c:1689
+#: c-decl.c:1262
+msgid "%Jredundant redeclaration of '%D'"
+msgstr ""
+
+#: c-decl.c:1581
+msgid "%Jdeclaration of '%D' shadows a parameter"
+msgstr ""
+
+#: c-decl.c:1583
+msgid "%Jdeclaration of '%D' shadows a global declaration"
+msgstr ""
+
+#: c-decl.c:1585
+msgid "%Jdeclaration of '%D' shadows a previous local"
+msgstr ""
+
+#: c-decl.c:1587 cp/name-lookup.c:958 cp/name-lookup.c:981
+#: cp/name-lookup.c:989
+msgid "%Jshadowed declaration is here"
+msgstr ""
+
+#: c-decl.c:1697
#, c-format
msgid "nested extern declaration of `%s'"
msgstr ""
-#: c-decl.c:1870 c-decl.c:1872
+#: c-decl.c:1838 objc/objc-act.c:2534 objc/objc-act.c:6793
+msgid "%Jprevious declaration of '%D'"
+msgstr ""
+
+#: c-decl.c:1879 c-decl.c:1881
#, c-format
msgid "implicit declaration of function `%s'"
msgstr ""
-#: c-decl.c:1951
+#: c-decl.c:1897
#, c-format
msgid "`%s' undeclared here (not in a function)"
msgstr ""
-#: c-decl.c:1957
+#: c-decl.c:1903
#, c-format
msgid "`%s' undeclared (first use in this function)"
msgstr ""
-#: c-decl.c:1962
+#: c-decl.c:1908
msgid "(Each undeclared identifier is reported only once"
msgstr ""
-#: c-decl.c:1963
+#: c-decl.c:1909
msgid "for each function it appears in.)"
msgstr ""
-#: c-decl.c:2016
+#: c-decl.c:1962
#, c-format
msgid "label %s referenced outside of any function"
msgstr ""
-#: c-decl.c:2063
+#: c-decl.c:2009
#, c-format
msgid "duplicate label declaration `%s'"
msgstr ""
-#: c-decl.c:2064
+#: c-decl.c:2010
msgid "%Jthis is a previous declaration"
msgstr ""
-#: c-decl.c:2099
+#: c-decl.c:2045
msgid "%Hduplicate label `%D'"
msgstr ""
-#: c-decl.c:2101
+#: c-decl.c:2047
msgid "%J`%D' previously defined here"
msgstr ""
-#: c-decl.c:2103
+#: c-decl.c:2049
msgid "%J`%D' previously declared here"
msgstr ""
-#: c-decl.c:2123
+#: c-decl.c:2069
msgid ""
"%Htraditional C lacks a separate namespace for labels, identifier `%s' "
"conflicts"
msgstr ""
-#: c-decl.c:2194
+#: c-decl.c:2140
msgid "%H`%s' defined as wrong kind of tag"
msgstr ""
-#: c-decl.c:2432
+#: c-decl.c:2378
msgid "unnamed struct/union that defines no instances"
msgstr ""
-#: c-decl.c:2451
+#: c-decl.c:2397
msgid "useless keyword or type name in empty declaration"
msgstr ""
-#: c-decl.c:2458
+#: c-decl.c:2404
msgid "two types specified in one empty declaration"
msgstr ""
-#: c-decl.c:2463
+#: c-decl.c:2409 c-parse.y:735 c-parse.y:737 objc/objc-parse.y:776
+#: objc/objc-parse.y:778 objc/objc-parse.y:3016
msgid "empty declaration"
msgstr ""
-#: c-decl.c:2489
+#: c-decl.c:2435
msgid ""
"ISO C90 does not support `static' or type qualifiers in parameter array "
"declarators"
msgstr ""
-#: c-decl.c:2491
+#: c-decl.c:2437
msgid "ISO C90 does not support `[*]' array declarators"
msgstr ""
-#: c-decl.c:2494
+#: c-decl.c:2440
msgid "GCC does not yet properly implement `[*]' array declarators"
msgstr ""
-#: c-decl.c:2510
+#: c-decl.c:2456
msgid "static or type qualifiers in abstract declarator"
msgstr ""
-#: c-decl.c:2579
+#: c-decl.c:2526
msgid "%J'%D' is usually a function"
msgstr ""
-#: c-decl.c:2588
+#: c-decl.c:2535
#, c-format
msgid "typedef `%s' is initialized (use __typeof__ instead)"
msgstr ""
-#: c-decl.c:2594
+#: c-decl.c:2541
#, c-format
msgid "function `%s' is initialized like a variable"
msgstr ""
#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
-#: c-decl.c:2601
+#: c-decl.c:2548
#, c-format
msgid "parameter `%s' is initialized"
msgstr ""
-#: c-decl.c:2621 c-typeck.c:4157
+#: c-decl.c:2568 c-typeck.c:4228
msgid "variable-sized object may not be initialized"
msgstr ""
-#: c-decl.c:2627
+#: c-decl.c:2574
#, c-format
msgid "variable `%s' has initializer but incomplete type"
msgstr ""
-#: c-decl.c:2633
+#: c-decl.c:2580
#, c-format
msgid "elements of array `%s' have incomplete type"
msgstr ""
-#: c-decl.c:2702 c-decl.c:5460 cp/decl.c:3725 cp/decl.c:10097
+#: c-decl.c:2649 c-decl.c:5451 cp/decl.c:3761 cp/decl.c:10133
msgid "%Jinline function '%D' given attribute noinline"
msgstr ""
-#: c-decl.c:2778
+#: c-decl.c:2725
msgid "%Jinitializer fails to determine size of '%D'"
msgstr ""
-#: c-decl.c:2783
+#: c-decl.c:2730
msgid "%Jarray size missing in '%D'"
msgstr ""
-#: c-decl.c:2799
+#: c-decl.c:2746
msgid "%Jzero or negative size array '%D'"
msgstr ""
-#: c-decl.c:2827
+#: c-decl.c:2774
msgid "%Jstorage size of '%D' isn't known"
msgstr ""
-#: c-decl.c:2837
+#: c-decl.c:2784
msgid "%Jstorage size of '%D' isn't constant"
msgstr ""
-#: c-decl.c:2920
+#: c-decl.c:2867
msgid "%Jignoring asm-specifier for non-static local variable '%D'"
msgstr ""
-#: c-decl.c:3030
+#: c-decl.c:2978
msgid "ISO C forbids forward parameter declarations"
msgstr ""
-#: c-decl.c:3351 cp/decl.c:6735
+#: c-decl.c:3160
+msgid "<anonymous>"
+msgstr ""
+
+#: c-decl.c:3169
+#, c-format
+msgid "bit-field `%s' width not an integer constant"
+msgstr ""
+
+#: c-decl.c:3177
+#, c-format
+msgid "negative width in bit-field `%s'"
+msgstr ""
+
+#: c-decl.c:3182
+#, c-format
+msgid "zero width for bit-field `%s'"
+msgstr ""
+
+#: c-decl.c:3192
+#, c-format
+msgid "bit-field `%s' has invalid type"
+msgstr ""
+
+#: c-decl.c:3201
+#, c-format
+msgid "type of bit-field `%s' is a GCC extension"
+msgstr ""
+
+#: c-decl.c:3210
+#, c-format
+msgid "width of `%s' exceeds its type"
+msgstr ""
+
+#: c-decl.c:3220
+#, c-format
+msgid "`%s' is narrower than values of its type"
+msgstr ""
+
+#: c-decl.c:3370 cp/decl.c:6805
msgid "`long long long' is too long for GCC"
msgstr ""
-#: c-decl.c:3356
+#: c-decl.c:3375
msgid "ISO C90 does not support `long long'"
msgstr ""
-#: c-decl.c:3365 c-decl.c:3368 cp/decl.c:6740
+#: c-decl.c:3384 c-decl.c:3387 cp/decl.c:6810
#, c-format
msgid "duplicate `%s'"
msgstr ""
-#: c-decl.c:3378 cp/decl.c:6746
+#: c-decl.c:3397 cp/decl.c:6816
msgid "`__thread' before `extern'"
msgstr ""
-#: c-decl.c:3380 cp/decl.c:6748
+#: c-decl.c:3399 cp/decl.c:6818
msgid "`__thread' before `static'"
msgstr ""
-#: c-decl.c:3388 cp/decl.c:6775
+#: c-decl.c:3407 cp/decl.c:6845
#, c-format
msgid "two or more data types in declaration of `%s'"
msgstr ""
-#: c-decl.c:3408 cp/decl.c:6780
+#: c-decl.c:3427 cp/decl.c:6850
#, c-format
msgid "`%s' fails to be a typedef or built in type"
msgstr ""
-#: c-decl.c:3447
+#: c-decl.c:3466
#, c-format
msgid "type defaults to `int' in declaration of `%s'"
msgstr ""
-#: c-decl.c:3476
+#: c-decl.c:3495
#, c-format
msgid "both long and short specified for `%s'"
msgstr ""
-#: c-decl.c:3480 cp/decl.c:6880
+#: c-decl.c:3499 cp/decl.c:6950
#, c-format
msgid "long or short specified with char for `%s'"
msgstr ""
-#: c-decl.c:3487 cp/decl.c:6884
+#: c-decl.c:3506 cp/decl.c:6954
#, c-format
msgid "long or short specified with floating type for `%s'"
msgstr ""
-#: c-decl.c:3490
+#: c-decl.c:3509
msgid "the only valid combination is `long double'"
msgstr ""
-#: c-decl.c:3496
+#: c-decl.c:3515
#, c-format
msgid "both signed and unsigned specified for `%s'"
msgstr ""
-#: c-decl.c:3498 cp/decl.c:6873
+#: c-decl.c:3517 cp/decl.c:6943
#, c-format
msgid "long, short, signed or unsigned invalid for `%s'"
msgstr ""
-#: c-decl.c:3504 cp/decl.c:6893
+#: c-decl.c:3523 cp/decl.c:6963
#, c-format
msgid "long, short, signed or unsigned used invalidly for `%s'"
msgstr ""
-#: c-decl.c:3522 cp/decl.c:6914
+#: c-decl.c:3541 cp/decl.c:6984
#, c-format
msgid "complex invalid for `%s'"
msgstr ""
-#: c-decl.c:3564
+#: c-decl.c:3583
msgid "ISO C90 does not support complex types"
msgstr ""
-#: c-decl.c:3576
+#: c-decl.c:3595
msgid "ISO C does not support plain `complex' meaning `double complex'"
msgstr ""
-#: c-decl.c:3582 c-decl.c:3594
+#: c-decl.c:3601 c-decl.c:3613
msgid "ISO C does not support complex integer types"
msgstr ""
-#: c-decl.c:3609 c-decl.c:4067 cp/decl.c:7506
+#: c-decl.c:3643 c-decl.c:4104 cp/decl.c:7576
msgid "duplicate `const'"
msgstr ""
-#: c-decl.c:3611 c-decl.c:4071 cp/decl.c:7510
+#: c-decl.c:3645 c-decl.c:4108 cp/decl.c:7580
msgid "duplicate `restrict'"
msgstr ""
-#: c-decl.c:3613 c-decl.c:4069 cp/decl.c:7508
+#: c-decl.c:3647 c-decl.c:4106 cp/decl.c:7578
msgid "duplicate `volatile'"
msgstr ""
-#: c-decl.c:3641 cp/decl.c:7077
+#: c-decl.c:3676 cp/decl.c:7147
#, c-format
msgid "multiple storage classes in declaration of `%s'"
msgstr ""
-#: c-decl.c:3651
+#: c-decl.c:3686
msgid "function definition declared `auto'"
msgstr ""
-#: c-decl.c:3653
+#: c-decl.c:3688
msgid "function definition declared `register'"
msgstr ""
-#: c-decl.c:3655
+#: c-decl.c:3690
msgid "function definition declared `typedef'"
msgstr ""
-#: c-decl.c:3657
+#: c-decl.c:3692
msgid "function definition declared `__thread'"
msgstr ""
-#: c-decl.c:3670
+#: c-decl.c:3705
#, c-format
msgid "storage class specified for structure field `%s'"
msgstr ""
-#: c-decl.c:3674 cp/decl.c:7122
+#: c-decl.c:3709 cp/decl.c:7192
#, c-format
msgid "storage class specified for parameter `%s'"
msgstr ""
-#: c-decl.c:3677 cp/decl.c:7124
+#: c-decl.c:3712 cp/decl.c:7194
msgid "storage class specified for typename"
msgstr ""
-#: c-decl.c:3689 cp/decl.c:7139
+#: c-decl.c:3724 cp/decl.c:7209
#, c-format
msgid "`%s' initialized and declared `extern'"
msgstr ""
-#: c-decl.c:3691 cp/decl.c:7142
+#: c-decl.c:3726 cp/decl.c:7212
#, c-format
msgid "`%s' has both `extern' and initializer"
msgstr ""
-#: c-decl.c:3696
+#: c-decl.c:3731
#, c-format
msgid "file-scope declaration of `%s' specifies `auto'"
msgstr ""
-#: c-decl.c:3701 cp/decl.c:7146
+#: c-decl.c:3736 cp/decl.c:7216
#, c-format
msgid "nested function `%s' declared `extern'"
msgstr ""
-#: c-decl.c:3707 cp/decl.c:7156
+#: c-decl.c:3742 cp/decl.c:7226
#, c-format
msgid "function-scope `%s' implicitly auto and declared `__thread'"
msgstr ""
@@ -1005,464 +1114,440 @@ msgstr ""
#. Only the innermost declarator (making a parameter be of
#. array type which is converted to pointer type)
#. may have static or type qualifiers.
-#: c-decl.c:3746 c-decl.c:3939
+#: c-decl.c:3781 c-decl.c:3974
msgid "static or type qualifiers in non-parameter array declarator"
msgstr ""
-#: c-decl.c:3790
+#: c-decl.c:3825
#, c-format
msgid "declaration of `%s' as array of voids"
msgstr ""
-#: c-decl.c:3796
+#: c-decl.c:3831
#, c-format
msgid "declaration of `%s' as array of functions"
msgstr ""
-#: c-decl.c:3801
+#: c-decl.c:3836
msgid "invalid use of structure with flexible array member"
msgstr ""
-#: c-decl.c:3820
+#: c-decl.c:3855
#, c-format
msgid "size of array `%s' has non-integer type"
msgstr ""
-#: c-decl.c:3825
+#: c-decl.c:3860
#, c-format
msgid "ISO C forbids zero-size array `%s'"
msgstr ""
-#: c-decl.c:3832
+#: c-decl.c:3867
#, c-format
msgid "size of array `%s' is negative"
msgstr ""
-#: c-decl.c:3845
+#: c-decl.c:3880
#, c-format
msgid "ISO C90 forbids array `%s' whose size can't be evaluated"
msgstr ""
-#: c-decl.c:3848
+#: c-decl.c:3883
#, c-format
msgid "ISO C90 forbids variable-size array `%s'"
msgstr ""
-#: c-decl.c:3878 c-decl.c:4093 cp/decl.c:7680
+#: c-decl.c:3913 c-decl.c:4131 cp/decl.c:7754
#, c-format
msgid "size of array `%s' is too large"
msgstr ""
-#: c-decl.c:3904
+#: c-decl.c:3939
msgid "ISO C90 does not support flexible array members"
msgstr ""
-#: c-decl.c:3914
+#: c-decl.c:3949
msgid "array type has incomplete element type"
msgstr ""
-#: c-decl.c:3959 cp/decl.c:7277
+#: c-decl.c:3994 cp/decl.c:7347
#, c-format
msgid "`%s' declared as function returning a function"
msgstr ""
-#: c-decl.c:3964 cp/decl.c:7282
+#: c-decl.c:3999 cp/decl.c:7352
#, c-format
msgid "`%s' declared as function returning an array"
msgstr ""
-#: c-decl.c:3992
+#: c-decl.c:4027
msgid "ISO C forbids qualified void function return type"
msgstr ""
-#: c-decl.c:3996
+#: c-decl.c:4031
msgid "type qualifiers ignored on function return type"
msgstr ""
-#: c-decl.c:4025 c-decl.c:4108 c-decl.c:4232 c-decl.c:4318
+#: c-decl.c:4060 c-decl.c:4146 c-decl.c:4270 c-decl.c:4356
msgid "ISO C forbids qualified function types"
msgstr ""
-#: c-decl.c:4065 cp/decl.c:7502
+#: c-decl.c:4100 cp/decl.c:7572
msgid "invalid type modifier within pointer declarator"
msgstr ""
-#: c-decl.c:4143
+#: c-decl.c:4181
msgid "ISO C forbids const or volatile function types"
msgstr ""
-#: c-decl.c:4163 cp/decl.c:7962
+#: c-decl.c:4201 cp/decl.c:8035
#, c-format
msgid "variable or field `%s' declared void"
msgstr ""
-#: c-decl.c:4196
+#: c-decl.c:4234
msgid "attributes in parameter array declarator ignored"
msgstr ""
-#: c-decl.c:4221
+#: c-decl.c:4259
msgid "invalid type modifier within array declarator"
msgstr ""
-#: c-decl.c:4266
+#: c-decl.c:4304
#, c-format
msgid "field `%s' declared as a function"
msgstr ""
-#: c-decl.c:4272
+#: c-decl.c:4310
#, c-format
msgid "field `%s' has incomplete type"
msgstr ""
-#: c-decl.c:4298 c-decl.c:4300 c-decl.c:4302 c-decl.c:4309
+#: c-decl.c:4336 c-decl.c:4338 c-decl.c:4340 c-decl.c:4347
#, c-format
msgid "invalid storage class for function `%s'"
msgstr ""
-#: c-decl.c:4324
+#: c-decl.c:4362
msgid "`noreturn' function returns non-void value"
msgstr ""
-#: c-decl.c:4339
+#: c-decl.c:4377
msgid "cannot inline function `main'"
msgstr ""
-#: c-decl.c:4392
+#: c-decl.c:4431
msgid "variable previously declared `static' redeclared `extern'"
msgstr ""
-#: c-decl.c:4401
+#: c-decl.c:4440
msgid "%Jvariable '%D' declared `inline'"
msgstr ""
#. A mere warning is sure to result in improper semantics
#. at runtime. Don't bother to allow this to compile.
-#: c-decl.c:4429 cp/decl.c:5818
+#: c-decl.c:4468 cp/decl.c:5903
msgid "thread-local storage not supported for this target"
msgstr ""
-#: c-decl.c:4490 c-decl.c:5504
+#: c-decl.c:4529 c-decl.c:5495
msgid "function declaration isn't a prototype"
msgstr ""
-#: c-decl.c:4496
+#: c-decl.c:4535
msgid "parameter names (without types) in function declaration"
msgstr ""
-#: c-decl.c:4524
+#: c-decl.c:4563
#, c-format
msgid "parameter `%s' has incomplete type"
msgstr ""
-#: c-decl.c:4527
+#: c-decl.c:4566
msgid "parameter has incomplete type"
msgstr ""
-#: c-decl.c:4576
+#: c-decl.c:4615
msgid "\"void\" as only parameter may not be qualified"
msgstr ""
-#: c-decl.c:4597
+#: c-decl.c:4636
msgid "\"void\" must be the only parameter"
msgstr ""
-#: c-decl.c:4614
+#: c-decl.c:4653
msgid "%Jparameter \"%D\" has just a forward declaration"
msgstr ""
#. The first %s will be one of 'struct', 'union', or 'enum'.
-#: c-decl.c:4642
+#: c-decl.c:4681
#, c-format
msgid "\"%s %s\" declared inside parameter list"
msgstr ""
#. The %s will be one of 'struct', 'union', or 'enum'.
-#: c-decl.c:4646
+#: c-decl.c:4685
#, c-format
msgid "anonymous %s declared inside parameter list"
msgstr ""
-#: c-decl.c:4650
+#: c-decl.c:4689
msgid ""
"its scope is only this definition or declaration, which is probably not what "
"you want"
msgstr ""
-#: c-decl.c:4735
+#: c-decl.c:4774
#, c-format
msgid "redefinition of `union %s'"
msgstr ""
-#: c-decl.c:4737
+#: c-decl.c:4776
#, c-format
msgid "redefinition of `struct %s'"
msgstr ""
-#: c-decl.c:4805 cp/decl.c:3498
+#: c-decl.c:4844 cp/decl.c:3534
msgid "declaration does not declare anything"
msgstr ""
-#: c-decl.c:4849 c-decl.c:4865
+#: c-decl.c:4889 c-decl.c:4905
msgid "%Jduplicate member '%D'"
msgstr ""
-#: c-decl.c:4899 c-decl.c:4902
+#: c-decl.c:4939 c-decl.c:4942
#, c-format
msgid "%s defined inside parms"
msgstr ""
-#: c-decl.c:4900 c-decl.c:4903 c-decl.c:4914
+#: c-decl.c:4940 c-decl.c:4943 c-decl.c:4954
msgid "union"
msgstr ""
-#: c-decl.c:4900 c-decl.c:4903
+#: c-decl.c:4940 c-decl.c:4943
msgid "structure"
msgstr ""
-#: c-decl.c:4913
+#: c-decl.c:4953
#, c-format
msgid "%s has no %s"
msgstr ""
-#: c-decl.c:4914
+#: c-decl.c:4954
msgid "struct"
msgstr ""
-#: c-decl.c:4915
+#: c-decl.c:4955
msgid "named members"
msgstr ""
-#: c-decl.c:4915
+#: c-decl.c:4955
msgid "members"
msgstr ""
-#: c-decl.c:4954
+#: c-decl.c:4994
#, c-format
msgid "nested redefinition of `%s'"
msgstr ""
-#: c-decl.c:4966
-msgid "%Jbit-field '%D' width not an integer constant"
-msgstr ""
-
-#: c-decl.c:4977
-msgid "%Jbit-field '%D' has invalid type"
-msgstr ""
-
-#: c-decl.c:4989
-msgid "%Jbit-field '%D' type invalid in ISO C"
-msgstr ""
-
-#: c-decl.c:5000
-msgid "%Jnegative width in bit-field '%D'"
-msgstr ""
-
-#: c-decl.c:5002
-msgid "%Jwidth of '%D' exceeds its type"
-msgstr ""
-
-#: c-decl.c:5004
-msgid "%Jzero width for bit-field '%D'"
-msgstr ""
-
-#: c-decl.c:5017
-msgid "%J'%D' is narrower than values of its type"
-msgstr ""
-
-#: c-decl.c:5034
+#: c-decl.c:5015
msgid "%Jflexible array member in union"
msgstr ""
-#: c-decl.c:5036
+#: c-decl.c:5020
msgid "%Jflexible array member not at end of struct"
msgstr ""
-#: c-decl.c:5038
+#: c-decl.c:5025
msgid "%Jflexible array member in otherwise empty struct"
msgstr ""
-#: c-decl.c:5043
+#: c-decl.c:5032
msgid "%Jinvalid use of structure with flexible array member"
msgstr ""
-#: c-decl.c:5138
+#: c-decl.c:5127
msgid "union cannot be made transparent"
msgstr ""
#. This enum is a named one that has been declared already.
-#: c-decl.c:5207
+#: c-decl.c:5196
#, c-format
msgid "redeclaration of `enum %s'"
msgstr ""
-#: c-decl.c:5238
+#: c-decl.c:5227
msgid "enum defined inside parms"
msgstr ""
-#: c-decl.c:5271
+#: c-decl.c:5260
msgid "enumeration values exceed range of largest integer"
msgstr ""
-#: c-decl.c:5374
+#: c-decl.c:5363
#, c-format
msgid "enumerator value for `%s' not integer constant"
msgstr ""
-#: c-decl.c:5387
+#: c-decl.c:5376
msgid "overflow in enumeration values"
msgstr ""
-#: c-decl.c:5392
+#: c-decl.c:5381
msgid "ISO C restricts enumerator values to range of `int'"
msgstr ""
-#: c-decl.c:5466
+#: c-decl.c:5457
msgid "return type is an incomplete type"
msgstr ""
-#: c-decl.c:5474
+#: c-decl.c:5465
msgid "return type defaults to `int'"
msgstr ""
-#: c-decl.c:5510
+#: c-decl.c:5501
msgid "%Jno previous prototype for '%D'"
msgstr ""
-#: c-decl.c:5516
+#: c-decl.c:5507
msgid "%J'%D' was used with no prototype before its definition"
msgstr ""
-#: c-decl.c:5523
+#: c-decl.c:5514
msgid "%Jno previous declaration for '%D'"
msgstr ""
-#: c-decl.c:5529
+#: c-decl.c:5520
msgid "%J`%D' was used with no declaration before its definition"
msgstr ""
-#: c-decl.c:5565 c-decl.c:6069
+#: c-decl.c:5556 c-decl.c:6062
msgid "%Jreturn type of '%D' is not `int'"
msgstr ""
-#: c-decl.c:5580
+#: c-decl.c:5571
msgid "%Jfirst argument of '%D' should be `int'"
msgstr ""
-#: c-decl.c:5589
+#: c-decl.c:5580
msgid "%Jsecond argument of '%D' should be 'char **'"
msgstr ""
-#: c-decl.c:5598
+#: c-decl.c:5589
msgid "%Jthird argument of '%D' should probably be 'char **'"
msgstr ""
-#: c-decl.c:5608
+#: c-decl.c:5599
msgid "%J'%D' takes only zero or two arguments"
msgstr ""
-#: c-decl.c:5611
+#: c-decl.c:5602
msgid "%J'%D' is normally a non-static function"
msgstr ""
-#: c-decl.c:5667
+#: c-decl.c:5658
msgid "%Jold-style parameter declarations in prototyped function definition"
msgstr ""
-#: c-decl.c:5681
+#: c-decl.c:5672
msgid "%Jparameter name omitted"
msgstr ""
-#: c-decl.c:5756
+#: c-decl.c:5747
msgid "%Jparameter name missing from parameter list"
msgstr ""
-#: c-decl.c:5766
+#: c-decl.c:5757
msgid "%J\"%D\" declared as a non-parameter"
msgstr ""
-#: c-decl.c:5771
+#: c-decl.c:5762
msgid "%Jmultiple parameters named \"%D\""
msgstr ""
-#: c-decl.c:5779
+#: c-decl.c:5770
msgid "%Jparameter \"%D\" declared void"
msgstr ""
-#: c-decl.c:5794 c-decl.c:5796
+#: c-decl.c:5785 c-decl.c:5787
msgid "%Jtype of \"%D\" defaults to \"int\""
msgstr ""
-#: c-decl.c:5810
+#: c-decl.c:5801
msgid "%Jparameter \"%D\" has incomplete type"
msgstr ""
-#: c-decl.c:5816
+#: c-decl.c:5807
msgid "%Jdeclaration for parameter \"%D\" but no such parameter"
msgstr ""
-#: c-decl.c:5868
+#: c-decl.c:5859
msgid "number of arguments doesn't match prototype"
msgstr ""
-#: c-decl.c:5869 c-decl.c:5900 c-decl.c:5907
+#: c-decl.c:5860 c-decl.c:5891 c-decl.c:5898
msgid "%Hprototype declaration"
msgstr ""
-#: c-decl.c:5898
+#: c-decl.c:5889
msgid "promoted argument \"%D\" doesn't match prototype"
msgstr ""
-#: c-decl.c:5906
+#: c-decl.c:5897
msgid "argument \"%D\" doesn't match prototype"
msgstr ""
-#: c-decl.c:6101 cp/decl.c:10817
+#: c-decl.c:6094 cp/decl.c:10849
msgid "no return statement in function returning non-void"
msgstr ""
-#: c-decl.c:6108
+#: c-decl.c:6101
msgid "this function may return with or without a value"
msgstr ""
#. If we get here, declarations have been used in a for loop without
#. the C99 for loop scope. This doesn't make much sense, so don't
#. allow it.
-#: c-decl.c:6205
+#: c-decl.c:6200
msgid "'for' loop initial declaration used outside C99 mode"
msgstr ""
-#: c-decl.c:6229
+#: c-decl.c:6224
#, c-format
msgid "'struct %s' declared in 'for' loop initial declaration"
msgstr ""
-#: c-decl.c:6232
+#: c-decl.c:6227
#, c-format
msgid "'union %s' declared in 'for' loop initial declaration"
msgstr ""
-#: c-decl.c:6235
+#: c-decl.c:6230
#, c-format
msgid "'enum %s' declared in 'for' loop initial declaration"
msgstr ""
-#: c-decl.c:6243
+#: c-decl.c:6238
msgid "%Jdeclaration of non-variable '%D' in 'for' loop initial declaration"
msgstr ""
-#: c-decl.c:6246
+#: c-decl.c:6241
msgid "%Jdeclaration of static variable '%D' in 'for' loop initial declaration"
msgstr ""
-#: c-decl.c:6249
+#: c-decl.c:6244
msgid ""
"%Jdeclaration of 'extern' variable '%D' in 'for' loop initial declaration"
msgstr ""
-#: c-decl.c:6572
+#: c-decl.c:6557
msgid "%Jredefinition of global '%D'"
msgstr ""
+#: c-decl.c:6558
+msgid "%J'%D' previously defined here"
+msgstr ""
+
#: c-format.c:94 c-format.c:210
msgid "format string has invalid operand number"
msgstr ""
@@ -1995,291 +2080,482 @@ msgstr ""
msgid "End of search list.\n"
msgstr ""
-#: c-lex.c:209
-msgid "too late for # directive to set debug directory"
-msgstr ""
-
-#: c-lex.c:251
+#: c-lex.c:240
msgid "badly nested C headers from preprocessor"
msgstr ""
-#: c-lex.c:292
+#: c-lex.c:281
#, c-format
msgid "ignoring #pragma %s %s"
msgstr ""
#. ... or not.
-#: c-lex.c:396
+#: c-lex.c:385
msgid "%Hstray '@' in program"
msgstr ""
-#: c-lex.c:404
+#: c-lex.c:393
#, c-format
msgid "missing terminating %c character"
msgstr ""
-#: c-lex.c:406
+#: c-lex.c:395
#, c-format
msgid "stray '%c' in program"
msgstr ""
-#: c-lex.c:408
+#: c-lex.c:397
#, c-format
msgid "stray '\\%o' in program"
msgstr ""
-#: c-lex.c:538
+#: c-lex.c:535
msgid "this decimal constant is unsigned only in ISO C90"
msgstr ""
-#: c-lex.c:541
+#: c-lex.c:538
msgid "this decimal constant would be unsigned in ISO C90"
msgstr ""
-#: c-lex.c:557
+#: c-lex.c:554
#, c-format
msgid "integer constant is too large for \"%s\" type"
msgstr ""
-#: c-lex.c:623
+#: c-lex.c:620
#, c-format
msgid "floating constant exceeds range of \"%s\""
msgstr ""
-#: c-lex.c:699
+#: c-lex.c:696
msgid "traditional C rejects string constant concatenation"
msgstr ""
-#: c-objc-common.c:81
+#: c-objc-common.c:82
msgid ""
-"%Jfunction '%F' can never be inlined because it is supressed using -fno-"
+"%Jfunction '%F' can never be inlined because it is suppressed using -fno-"
"inline"
msgstr ""
-#: c-objc-common.c:91
+#: c-objc-common.c:92
msgid ""
"%Jfunction '%F' can never be inlined because it might not be bound within "
"this unit of translation"
msgstr ""
-#: c-objc-common.c:99
+#: c-objc-common.c:100
msgid ""
"%Jfunction '%F' can never be inlined because it uses attributes conflicting "
"with inlining"
msgstr ""
-#: c-objc-common.c:114
+#: c-objc-common.c:115
msgid "%Jfunction '%F' can never be inlined because it has pending sizes"
msgstr ""
-#: c-objc-common.c:127
+#: c-objc-common.c:128
msgid ""
"%Jnested function '%F' can never be inlined because it has possibly saved "
"pending sizes"
msgstr ""
-#: c-opts.c:140
+#: c-opts.c:141
#, c-format
msgid "no class name specified with \"%s\""
msgstr ""
-#: c-opts.c:144
+#: c-opts.c:145
#, c-format
msgid "assertion missing after \"%s\""
msgstr ""
-#: c-opts.c:149
+#: c-opts.c:150
#, c-format
msgid "macro name missing after \"%s\""
msgstr ""
-#: c-opts.c:156
+#: c-opts.c:157
#, c-format
msgid "missing path after \"%s\""
msgstr ""
-#: c-opts.c:165
+#: c-opts.c:166
#, c-format
msgid "missing filename after \"%s\""
msgstr ""
-#: c-opts.c:170
+#: c-opts.c:171
#, c-format
msgid "missing makefile target after \"%s\""
msgstr ""
-#: c-opts.c:290
+#: c-opts.c:291
msgid "-I- specified twice"
msgstr ""
-#: c-opts.c:689
+#: c-opts.c:692
#, c-format
msgid "switch \"%s\" is no longer supported"
msgstr ""
-#: c-opts.c:705
-#, c-format
-msgid "switch \"%s\" is deprecated, please see documentation for details"
-msgstr ""
-
-#: c-opts.c:826
+#: c-opts.c:812
msgid ""
"-fhandle-exceptions has been renamed -fexceptions (and is now on by default)"
msgstr ""
-#: c-opts.c:988
+#: c-opts.c:978
msgid "output filename specified twice"
msgstr ""
-#: c-opts.c:1110
+#: c-opts.c:1107
msgid "-Wformat-y2k ignored without -Wformat"
msgstr ""
-#: c-opts.c:1112
+#: c-opts.c:1109
msgid "-Wformat-extra-args ignored without -Wformat"
msgstr ""
-#: c-opts.c:1114
+#: c-opts.c:1111
msgid "-Wformat-zero-length ignored without -Wformat"
msgstr ""
-#: c-opts.c:1116
+#: c-opts.c:1113
msgid "-Wformat-nonliteral ignored without -Wformat"
msgstr ""
-#: c-opts.c:1118
+#: c-opts.c:1115
msgid "-Wformat-security ignored without -Wformat"
msgstr ""
-#: c-opts.c:1120
+#: c-opts.c:1117
msgid "-Wmissing-format-attribute ignored without -Wformat"
msgstr ""
-#: c-opts.c:1134
+#: c-opts.c:1131
#, c-format
msgid "opening output file %s: %m"
msgstr ""
-#: c-opts.c:1139
+#: c-opts.c:1136
#, c-format
msgid "too many filenames given. Type %s --help for usage"
msgstr ""
-#: c-opts.c:1207
+#: c-opts.c:1215
msgid "YYDEBUG not defined"
msgstr ""
-#: c-opts.c:1252
+#: c-opts.c:1261
#, c-format
msgid "opening dependency file %s: %m"
msgstr ""
-#: c-opts.c:1262
+#: c-opts.c:1271
#, c-format
msgid "closing dependency file %s: %m"
msgstr ""
-#: c-opts.c:1265
+#: c-opts.c:1274
#, c-format
msgid "when writing output to %s: %m"
msgstr ""
-#: c-opts.c:1335
+#: c-opts.c:1344
msgid "to generate dependencies you must specify either -M or -MM"
msgstr ""
-#: c-opts.c:1403
+#: c-opts.c:1404
msgid "<built-in>"
msgstr ""
-#: c-opts.c:1418
+#: c-opts.c:1419
msgid "<command line>"
msgstr ""
-#: c-pch.c:111 graph.c:402 toplev.c:1516 toplev.c:4480 f/com.c:14200
-#: java/jcf-parse.c:890 java/jcf-parse.c:1037 java/lex.c:1828
-#: objc/objc-act.c:503
+#: c-opts.c:1503
+msgid "too late for # directive to set debug directory"
+msgstr ""
+
+#. Like YYERROR but do call yyerror.
+#: c-parse.y:54 objc/objc-parse.y:54
+msgid "syntax error"
+msgstr ""
+
+#: /usr/share/bison/bison.simple:179
+msgid "syntax error: cannot back up"
+msgstr ""
+
+#: c-parse.y:320 objc/objc-parse.y:344
+msgid "ISO C forbids an empty source file"
+msgstr ""
+
+#: c-parse.y:349 c-typeck.c:6225 objc/objc-parse.y:374
+msgid "argument of `asm' is not a constant string"
+msgstr ""
+
+#: c-parse.y:357 objc/objc-parse.y:382
+msgid "ISO C forbids data definition with no type or storage class"
+msgstr ""
+
+#: c-parse.y:359 objc/objc-parse.y:384
+msgid "data definition has no type or storage class"
+msgstr ""
+
+#: c-parse.y:372 objc/objc-parse.y:397
+msgid "ISO C does not allow extra `;' outside of a function"
+msgstr ""
+
+#: c-parse.y:429 cppexp.c:1253
+msgid "traditional C rejects the unary plus operator"
+msgstr ""
+
+#: c-parse.y:476 objc/objc-parse.y:501
+msgid "`sizeof' applied to a bit-field"
+msgstr ""
+
+#: c-parse.y:563 objc/objc-parse.y:588
+msgid "ISO C forbids omitting the middle term of a ?: expression"
+msgstr ""
+
+#: c-parse.y:611 objc/objc-parse.y:636
+msgid "ISO C90 forbids compound literals"
+msgstr ""
+
+#: c-parse.y:625 objc/objc-parse.y:650
+msgid "ISO C forbids braced-groups within expressions"
+msgstr ""
+
+#: c-parse.y:653 objc/objc-parse.y:678
+msgid "first argument to __builtin_choose_expr not a constant"
+msgstr ""
+
+#: c-parse.y:696 objc/objc-parse.y:737
+msgid "traditional C rejects ISO C style function definitions"
+msgstr ""
+
+#: c-parse.y:699 c-parse.y:705 objc/objc-parse.y:740 objc/objc-parse.y:746
+msgid "old-style parameter declaration"
+msgstr ""
+
+#: c-parse.y:967 c-parse.y:973 c-parse.y:979 c-parse.y:985 c-parse.y:1006
+#: c-parse.y:1012 c-parse.y:1018 c-parse.y:1024 c-parse.y:1057 c-parse.y:1063
+#: c-parse.y:1069 c-parse.y:1075 c-parse.y:1120 c-parse.y:1126 c-parse.y:1132
+#: c-parse.y:1138 objc/objc-parse.y:1008 objc/objc-parse.y:1014
+#: objc/objc-parse.y:1020 objc/objc-parse.y:1026 objc/objc-parse.y:1047
+#: objc/objc-parse.y:1053 objc/objc-parse.y:1059 objc/objc-parse.y:1065
+#: objc/objc-parse.y:1098 objc/objc-parse.y:1104 objc/objc-parse.y:1110
+#: objc/objc-parse.y:1116 objc/objc-parse.y:1161 objc/objc-parse.y:1167
+#: objc/objc-parse.y:1173 objc/objc-parse.y:1179
#, c-format
-msgid "can't open %s: %m"
+msgid "`%s' is not at beginning of declaration"
+msgstr ""
+
+#: c-parse.y:1300 objc/objc-parse.y:1350
+msgid "`typeof' applied to a bit-field"
+msgstr ""
+
+#: c-parse.y:1427 objc/objc-parse.y:1477
+msgid "ISO C forbids empty initializer braces"
+msgstr ""
+
+#: c-parse.y:1441 objc/objc-parse.y:1491
+msgid "ISO C90 forbids specifying subobject to initialize"
+msgstr ""
+
+#: c-parse.y:1444 objc/objc-parse.y:1494
+msgid "obsolete use of designated initializer without `='"
msgstr ""
-#: c-pch.c:131
+#: c-parse.y:1448 objc/objc-parse.y:1498
+msgid "obsolete use of designated initializer with `:'"
+msgstr ""
+
+#: c-parse.y:1475 objc/objc-parse.y:1525
+msgid "ISO C forbids specifying range of elements to initialize"
+msgstr ""
+
+#: c-parse.y:1483 c-parse.y:1514 objc/objc-parse.y:1533 objc/objc-parse.y:1564
+msgid "ISO C forbids nested functions"
+msgstr ""
+
+#: c-parse.y:1691 objc/objc-parse.y:1743
+msgid "ISO C forbids forward references to `enum' types"
+msgstr ""
+
+#: c-parse.y:1703 cp/parser.c:9307 objc/objc-parse.y:1755
+msgid "comma at end of enumerator list"
+msgstr ""
+
+#: c-parse.y:1723 objc/objc-parse.y:1775
+msgid "no semicolon at end of struct or union"
+msgstr ""
+
+#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846
+msgid "extra semicolon in struct or union specified"
+msgstr ""
+
+#: c-parse.y:1745 objc/objc-parse.y:1800
+msgid "ISO C doesn't support unnamed structs/unions"
+msgstr ""
+
+#: c-parse.y:1754 objc/objc-parse.y:1809
+msgid "ISO C forbids member declarations with no members"
+msgstr ""
+
+#: c-parse.y:1915 objc/objc-parse.y:1970
+msgid "label at end of compound statement"
+msgstr ""
+
+#: c-parse.y:1934 objc/objc-parse.y:1989
+msgid "ISO C90 forbids mixed declarations and code"
+msgstr ""
+
+#: c-parse.y:2012 objc/objc-parse.y:2069
+msgid "ISO C forbids label declarations"
+msgstr ""
+
+#: c-parse.y:2062 objc/objc-parse.y:2119
+msgid "braced-group within expression allowed only inside a function"
+msgstr ""
+
+#: c-parse.y:2184 objc/objc-parse.y:2241
+msgid "empty body in an else-statement"
+msgstr ""
+
+#: c-parse.y:2192 objc/objc-parse.y:2249
+msgid "%Hempty body in an if-statement"
+msgstr ""
+
+#: c-parse.y:2272 cp/parser.c:6045 objc/objc-parse.y:2329
+msgid "break statement not within loop or switch"
+msgstr ""
+
+#: c-parse.y:2281 cp/parser.c:6056 objc/objc-parse.y:2338
+msgid "continue statement not within a loop"
+msgstr ""
+
+#: c-parse.y:2323 objc/objc-parse.y:2380
+msgid "ISO C forbids `goto *expr;'"
+msgstr ""
+
+#. Gcc used to allow this as an extension. However, it does
+#. not work for all targets, and thus has been disabled.
+#. Also, since func (...) and func () are indistinguishable,
+#. it caused problems with the code in expand_builtin which
+#. tries to verify that BUILT_IN_NEXT_ARG is being used
+#. correctly.
+#: c-parse.y:2440 objc/objc-parse.y:2548
+msgid "ISO C requires a named argument before `...'"
+msgstr ""
+
+#: c-parse.y:2538 objc/objc-parse.y:2646
+msgid "`...' in old-style identifier list"
+msgstr ""
+
+#: /usr/share/bison/bison.simple:795
+msgid "parse error; also virtual memory exhausted"
+msgstr ""
+
+#: /usr/share/bison/bison.simple:799
+msgid "parse error"
+msgstr ""
+
+#: /usr/share/bison/bison.simple:924
+msgid "parser stack overflow"
+msgstr ""
+
+#: c-parse.y:2968 objc/objc-parse.y:3663
+#, c-format
+msgid "syntax error at '%s' token"
+msgstr ""
+
+#: c-pch.c:125
+#, c-format
+msgid "can't create precompiled header %s: %m"
+msgstr ""
+
+#: c-pch.c:146
#, c-format
msgid "can't write to %s: %m"
msgstr ""
-#: c-pch.c:137
+#: c-pch.c:152
#, c-format
msgid "`%s' is not a valid output file"
msgstr ""
-#: c-pch.c:166 c-pch.c:182
+#: c-pch.c:181 c-pch.c:197 c-pch.c:209
#, c-format
msgid "can't write %s: %m"
msgstr ""
-#: c-pch.c:172
+#: c-pch.c:187
#, c-format
msgid "can't seek in %s: %m"
msgstr ""
-#: c-pch.c:180 c-pch.c:216 c-pch.c:244 c-pch.c:249 c-pch.c:319
+#: c-pch.c:195 c-pch.c:240 c-pch.c:268 c-pch.c:273 c-pch.c:351
#, c-format
msgid "can't read %s: %m"
msgstr ""
-#: c-pch.c:229
+#: c-pch.c:253
#, c-format
msgid "%s: not compatible with this GCC version"
msgstr ""
#. It's a PCH for the wrong language.
-#: c-pch.c:232
+#: c-pch.c:256
#, c-format
msgid "%s: not for %s"
msgstr ""
#. Not any kind of PCH.
-#: c-pch.c:236
+#: c-pch.c:260
#, c-format
msgid "%s: not a PCH file"
msgstr ""
-#: c-pch.c:255
+#: c-pch.c:279
#, c-format
msgid "%s: created on host `%.*s', but used on host `%s'"
msgstr ""
-#: c-pch.c:265
+#: c-pch.c:289
#, c-format
msgid "%s: created for target `%.*s', but used for target `%s'"
msgstr ""
-#: c-pch.c:278
+#: c-pch.c:302
#, c-format
msgid "%s: created by version `%.*s', but this is version `%s'"
msgstr ""
-#: c-pch.c:294
+#: c-pch.c:313
+#, c-format
+msgid "%s: created using different flags"
+msgstr ""
+
+#: c-pch.c:326
#, c-format
msgid "%s: created with -g%s, but used with -g%s"
msgstr ""
-#: c-pch.c:308
+#: c-pch.c:340
#, c-format
msgid "%s: had text segment at different address"
msgstr ""
-#: c-pch.c:325 cpperror.c:176 gcc.c:6534
+#: c-pch.c:357 cpperror.c:176 gcc.c:6554
#, c-format
msgid "%s: %s"
msgstr ""
-#: c-pch.c:356
+#: c-pch.c:388
msgid "calling fdopen"
msgstr ""
-#: c-pch.c:364 c-pch.c:376
+#: c-pch.c:396 c-pch.c:408
msgid "reading"
msgstr ""
@@ -2370,34 +2646,26 @@ msgstr ""
msgid "asm declaration conflicts with previous rename"
msgstr ""
-#: c-semantics.c:595 cp/parser.c:5769
-msgid "break statement not within loop or switch"
-msgstr ""
-
-#: c-semantics.c:613 cp/parser.c:5780
-msgid "continue statement not within a loop"
-msgstr ""
-
-#: c-semantics.c:701
+#: c-semantics.c:697
msgid "destructor needed for `%D'"
msgstr ""
-#: c-semantics.c:702
+#: c-semantics.c:698
msgid "where case label appears here"
msgstr ""
-#: c-semantics.c:705
+#: c-semantics.c:701
msgid ""
"(enclose actions of previous case statements requiring destructors in their "
"own scope.)"
msgstr ""
-#: c-semantics.c:741 c-typeck.c:6174 cp/semantics.c:1055
+#: c-semantics.c:737 c-typeck.c:6247 cp/semantics.c:1070
#, c-format
msgid "%s qualifier ignored on asm"
msgstr ""
-#: c-semantics.c:995
+#: c-semantics.c:991
msgid "will never be executed"
msgstr ""
@@ -2406,7 +2674,7 @@ msgstr ""
msgid "`%s' has an incomplete type"
msgstr ""
-#: c-typeck.c:142 cp/call.c:2654
+#: c-typeck.c:142 cp/call.c:2532
msgid "invalid use of void expression"
msgstr ""
@@ -2433,1202 +2701,1244 @@ msgstr ""
msgid "function types not truly compatible in ISO C"
msgstr ""
-#: c-typeck.c:610
+#: c-typeck.c:611
msgid "types are not quite compatible"
msgstr ""
-#: c-typeck.c:819
+#: c-typeck.c:824
msgid "function return types not compatible due to `volatile'"
msgstr ""
-#: c-typeck.c:965 c-typeck.c:2100
+#: c-typeck.c:970 c-typeck.c:2151
msgid "arithmetic on pointer to an incomplete type"
msgstr ""
-#: c-typeck.c:1338
+#: c-typeck.c:1343
#, c-format
msgid "%s has no member named `%s'"
msgstr ""
-#: c-typeck.c:1374
+#: c-typeck.c:1379
#, c-format
msgid "request for member `%s' in something not a structure or union"
msgstr ""
-#: c-typeck.c:1403
+#: c-typeck.c:1408
msgid "dereferencing pointer to incomplete type"
msgstr ""
-#: c-typeck.c:1407
+#: c-typeck.c:1412
msgid "dereferencing `void *' pointer"
msgstr ""
-#: c-typeck.c:1424 cp/typeck.c:2064
+#: c-typeck.c:1429 cp/typeck.c:2104
#, c-format
msgid "invalid type argument of `%s'"
msgstr ""
-#: c-typeck.c:1442 cp/typeck.c:2089
+#: c-typeck.c:1447 cp/typeck.c:2129
msgid "subscript missing in array reference"
msgstr ""
-#: c-typeck.c:1463 cp/typeck.c:2131
+#: c-typeck.c:1468 cp/typeck.c:2171
msgid "array subscript has type `char'"
msgstr ""
-#: c-typeck.c:1471 c-typeck.c:1560 cp/typeck.c:2135 cp/typeck.c:2221
+#: c-typeck.c:1476 c-typeck.c:1565 cp/typeck.c:2175 cp/typeck.c:2261
msgid "array subscript is not an integer"
msgstr ""
-#: c-typeck.c:1504
+#: c-typeck.c:1509
msgid "ISO C forbids subscripting `register' array"
msgstr ""
-#: c-typeck.c:1506
+#: c-typeck.c:1511
msgid "ISO C90 forbids subscripting non-lvalue array"
msgstr ""
-#: c-typeck.c:1539
+#: c-typeck.c:1544
msgid "subscript has type `char'"
msgstr ""
-#: c-typeck.c:1555 cp/typeck.c:2216
+#: c-typeck.c:1560 cp/typeck.c:2256
msgid "subscripted value is neither array nor pointer"
msgstr ""
-#: c-typeck.c:1585
+#: c-typeck.c:1590
#, c-format
msgid "local declaration of `%s' hides instance variable"
msgstr ""
-#: c-typeck.c:1677
+#: c-typeck.c:1683
msgid "called object is not a function"
msgstr ""
-#: c-typeck.c:1762 cp/typeck.c:2504
+#. This situation leads to run-time undefined behavior. We can't,
+#. therefore, simply error unless we can prove that all possible
+#. executions of the program must execute the code.
+#: c-typeck.c:1715
+msgid "function called through a non-compatible type"
+msgstr ""
+
+#: c-typeck.c:1813 cp/typeck.c:2544
msgid "too many arguments to function"
msgstr ""
-#: c-typeck.c:1783
+#: c-typeck.c:1834
#, c-format
msgid "type of formal parameter %d is incomplete"
msgstr ""
-#: c-typeck.c:1796
+#: c-typeck.c:1847
#, c-format
msgid "%s as integer rather than floating due to prototype"
msgstr ""
-#: c-typeck.c:1799
+#: c-typeck.c:1850
#, c-format
msgid "%s as integer rather than complex due to prototype"
msgstr ""
-#: c-typeck.c:1802
+#: c-typeck.c:1853
#, c-format
msgid "%s as complex rather than floating due to prototype"
msgstr ""
-#: c-typeck.c:1805
+#: c-typeck.c:1856
#, c-format
msgid "%s as floating rather than integer due to prototype"
msgstr ""
-#: c-typeck.c:1808
+#: c-typeck.c:1859
#, c-format
msgid "%s as complex rather than integer due to prototype"
msgstr ""
-#: c-typeck.c:1811
+#: c-typeck.c:1862
#, c-format
msgid "%s as floating rather than complex due to prototype"
msgstr ""
-#: c-typeck.c:1821
+#: c-typeck.c:1872
#, c-format
msgid "%s as `float' rather than `double' due to prototype"
msgstr ""
-#: c-typeck.c:1839
+#: c-typeck.c:1890
#, c-format
msgid "%s with different width due to prototype"
msgstr ""
-#: c-typeck.c:1865
+#: c-typeck.c:1916
#, c-format
msgid "%s as unsigned due to prototype"
msgstr ""
-#: c-typeck.c:1867
+#: c-typeck.c:1918
#, c-format
msgid "%s as signed due to prototype"
msgstr ""
-#: c-typeck.c:1901 cp/typeck.c:2610
+#: c-typeck.c:1952 cp/typeck.c:2650
msgid "too few arguments to function"
msgstr ""
-#: c-typeck.c:1941
+#: c-typeck.c:1992
msgid "suggest parentheses around + or - inside shift"
msgstr ""
-#: c-typeck.c:1948
+#: c-typeck.c:1999
msgid "suggest parentheses around && within ||"
msgstr ""
-#: c-typeck.c:1957
+#: c-typeck.c:2008
msgid "suggest parentheses around arithmetic in operand of |"
msgstr ""
-#: c-typeck.c:1960
+#: c-typeck.c:2011
msgid "suggest parentheses around comparison in operand of |"
msgstr ""
-#: c-typeck.c:1969
+#: c-typeck.c:2020
msgid "suggest parentheses around arithmetic in operand of ^"
msgstr ""
-#: c-typeck.c:1972
+#: c-typeck.c:2023
msgid "suggest parentheses around comparison in operand of ^"
msgstr ""
-#: c-typeck.c:1979
+#: c-typeck.c:2030
msgid "suggest parentheses around + or - in operand of &"
msgstr ""
-#: c-typeck.c:1982
+#: c-typeck.c:2033
msgid "suggest parentheses around comparison in operand of &"
msgstr ""
-#: c-typeck.c:1989
+#: c-typeck.c:2040
msgid "comparisons like X<=Y<=Z do not have their mathematical meaning"
msgstr ""
-#: c-typeck.c:2052
+#: c-typeck.c:2103
msgid "pointer of type `void *' used in subtraction"
msgstr ""
-#: c-typeck.c:2054
+#: c-typeck.c:2105
msgid "pointer to a function used in subtraction"
msgstr ""
-#: c-typeck.c:2148
+#: c-typeck.c:2199
msgid "wrong type argument to unary plus"
msgstr ""
-#: c-typeck.c:2161
+#: c-typeck.c:2212
msgid "wrong type argument to unary minus"
msgstr ""
-#: c-typeck.c:2178
+#: c-typeck.c:2229
msgid "ISO C does not support `~' for complex conjugation"
msgstr ""
-#: c-typeck.c:2184
+#: c-typeck.c:2235
msgid "wrong type argument to bit-complement"
msgstr ""
-#: c-typeck.c:2192
+#: c-typeck.c:2243
msgid "wrong type argument to abs"
msgstr ""
-#: c-typeck.c:2204
+#: c-typeck.c:2255
msgid "wrong type argument to conjugation"
msgstr ""
-#: c-typeck.c:2218
+#: c-typeck.c:2269
msgid "wrong type argument to unary exclamation mark"
msgstr ""
-#: c-typeck.c:2261
+#: c-typeck.c:2312
msgid "ISO C does not support `++' and `--' on complex types"
msgstr ""
-#: c-typeck.c:2276 c-typeck.c:2308
+#: c-typeck.c:2327 c-typeck.c:2359
msgid "wrong type argument to increment"
msgstr ""
-#: c-typeck.c:2278 c-typeck.c:2310
+#: c-typeck.c:2329 c-typeck.c:2361
msgid "wrong type argument to decrement"
msgstr ""
-#: c-typeck.c:2299
+#: c-typeck.c:2350
msgid "increment of pointer to unknown structure"
msgstr ""
-#: c-typeck.c:2301
+#: c-typeck.c:2352
msgid "decrement of pointer to unknown structure"
msgstr ""
-#: c-typeck.c:2426
+#: c-typeck.c:2477
msgid "invalid lvalue in unary `&'"
msgstr ""
-#: c-typeck.c:2458
+#: c-typeck.c:2509
#, c-format
msgid "attempt to take address of bit-field structure member `%s'"
msgstr ""
-#. Use `%s' to print the string in case there are any escape
-#. characters in the message.
-#: c-typeck.c:2535 c-typeck.c:3910 c-typeck.c:3925 c-typeck.c:3940
-#: final.c:2779 final.c:2781 gcc.c:4561 rtl-error.c:109 toplev.c:1371
-#: config/cris/cris.c:544 cp/parser.c:1778 cp/typeck.c:4072 java/expr.c:356
-#: java/verify.c:1456 java/verify.c:1457 java/verify.c:1472
-#, c-format
-msgid "%s"
-msgstr ""
-
-#: c-typeck.c:2591
+#: c-typeck.c:2642
msgid "use of conditional expressions as lvalues is deprecated"
msgstr ""
-#: c-typeck.c:2594
+#: c-typeck.c:2645
msgid "use of compound expressions as lvalues is deprecated"
msgstr ""
-#: c-typeck.c:2597
+#: c-typeck.c:2648
msgid "use of cast expressions as lvalues is deprecated"
msgstr ""
-#: c-typeck.c:2612
+#: c-typeck.c:2663
#, c-format
msgid "%s of read-only member `%s'"
msgstr ""
-#: c-typeck.c:2616
+#: c-typeck.c:2667
#, c-format
msgid "%s of read-only variable `%s'"
msgstr ""
-#: c-typeck.c:2619
+#: c-typeck.c:2670
#, c-format
msgid "%s of read-only location"
msgstr ""
-#: c-typeck.c:2637
+#: c-typeck.c:2688
#, c-format
msgid "cannot take address of bit-field `%s'"
msgstr ""
-#: c-typeck.c:2665 treelang/treetree.c:946
+#: c-typeck.c:2716 treelang/treetree.c:946
#, c-format
msgid "global register variable `%s' used in nested function"
msgstr ""
-#: c-typeck.c:2669 treelang/treetree.c:950
+#: c-typeck.c:2720 treelang/treetree.c:950
#, c-format
msgid "register variable `%s' used in nested function"
msgstr ""
-#: c-typeck.c:2676 treelang/treetree.c:957
+#: c-typeck.c:2727 treelang/treetree.c:957
#, c-format
msgid "address of global register variable `%s' requested"
msgstr ""
-#: c-typeck.c:2688
+#: c-typeck.c:2739
msgid "cannot put object with volatile field into register"
msgstr ""
-#: c-typeck.c:2692 treelang/treetree.c:962
+#: c-typeck.c:2743 treelang/treetree.c:962
#, c-format
msgid "address of register variable `%s' requested"
msgstr ""
-#: c-typeck.c:2777
+#: c-typeck.c:2828
msgid "signed and unsigned type in conditional expression"
msgstr ""
-#: c-typeck.c:2784
+#: c-typeck.c:2835
msgid "ISO C forbids conditional expr with only one void side"
msgstr ""
-#: c-typeck.c:2800 c-typeck.c:2807
+#: c-typeck.c:2851 c-typeck.c:2858
msgid "ISO C forbids conditional expr between `void *' and function pointer"
msgstr ""
-#: c-typeck.c:2813
+#: c-typeck.c:2864
msgid "pointer type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:2820 c-typeck.c:2830
+#: c-typeck.c:2871 c-typeck.c:2881
msgid "pointer/integer type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:2844
+#: c-typeck.c:2895
msgid "type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:2904
+#: c-typeck.c:2955
msgid "left-hand operand of comma expression has no effect"
msgstr ""
-#: c-typeck.c:2935
+#: c-typeck.c:2986
msgid "cast specifies array type"
msgstr ""
-#: c-typeck.c:2941
+#: c-typeck.c:2992
msgid "cast specifies function type"
msgstr ""
-#: c-typeck.c:2951
+#: c-typeck.c:3002
msgid "ISO C forbids casting nonscalar to the same type"
msgstr ""
-#: c-typeck.c:2969
+#: c-typeck.c:3020
msgid "ISO C forbids casts to union type"
msgstr ""
-#: c-typeck.c:2977
+#: c-typeck.c:3028
msgid "cast to union type from type not present in union"
msgstr ""
-#: c-typeck.c:3028
+#: c-typeck.c:3079
msgid "cast adds new qualifiers to function type"
msgstr ""
#. There are qualifiers present in IN_OTYPE that are not
#. present in IN_TYPE.
-#: c-typeck.c:3033
+#: c-typeck.c:3084
msgid "cast discards qualifiers from pointer target type"
msgstr ""
-#: c-typeck.c:3048
+#: c-typeck.c:3099
msgid "cast increases required alignment of target type"
msgstr ""
-#: c-typeck.c:3054 cp/typeck.c:4850
+#: c-typeck.c:3105 cp/typeck.c:4897
msgid "cast from pointer to integer of different size"
msgstr ""
-#: c-typeck.c:3059
+#: c-typeck.c:3110
msgid "cast does not match function type"
msgstr ""
-#: c-typeck.c:3066 cp/typeck.c:4857
+#: c-typeck.c:3117 cp/typeck.c:4904
msgid "cast to pointer from integer of different size"
msgstr ""
-#: c-typeck.c:3078
+#: c-typeck.c:3129
msgid "type-punning to incomplete type might break strict-aliasing rules"
msgstr ""
-#: c-typeck.c:3082
+#: c-typeck.c:3133
msgid "dereferencing type-punned pointer will break strict-aliasing rules"
msgstr ""
+#: c-typeck.c:3144
+msgid "ISO C forbids conversion of function pointer to object pointer type"
+msgstr ""
+
+#: c-typeck.c:3153
+msgid "ISO C forbids conversion of object pointer to function pointer type"
+msgstr ""
+
#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
#. Reject anything strange now.
-#: c-typeck.c:3241
+#: c-typeck.c:3311
msgid "invalid lvalue in assignment"
msgstr ""
#. Convert new value to destination type.
-#: c-typeck.c:3250 c-typeck.c:3275 c-typeck.c:3292 cp/typeck.c:4969
-#: cp/typeck.c:5113
+#: c-typeck.c:3320 c-typeck.c:3345 c-typeck.c:3362 cp/typeck.c:5016
+#: cp/typeck.c:5163 cp/typeck.c:5178
msgid "assignment"
msgstr ""
-#: c-typeck.c:3359
+#: c-typeck.c:3429
msgid "cannot pass rvalue to reference parameter"
msgstr ""
-#: c-typeck.c:3468 c-typeck.c:3544
+#: c-typeck.c:3538 c-typeck.c:3614
#, c-format
msgid "%s makes qualified function pointer from unqualified"
msgstr ""
-#: c-typeck.c:3472 c-typeck.c:3524
+#: c-typeck.c:3542 c-typeck.c:3594
#, c-format
msgid "%s discards qualifiers from pointer target type"
msgstr ""
-#: c-typeck.c:3478
+#: c-typeck.c:3548
msgid "ISO C prohibits argument conversion to union type"
msgstr ""
-#: c-typeck.c:3516
+#: c-typeck.c:3586
#, c-format
msgid "ISO C forbids %s between function pointer and `void *'"
msgstr ""
-#: c-typeck.c:3533
+#: c-typeck.c:3603
#, c-format
msgid "pointer targets in %s differ in signedness"
msgstr ""
-#: c-typeck.c:3549
+#: c-typeck.c:3619
#, c-format
msgid "%s from incompatible pointer type"
msgstr ""
-#: c-typeck.c:3555 c-typeck.c:4061 cp/typeck.c:1336
+#: c-typeck.c:3625 c-typeck.c:4132 cp/typeck.c:1366
msgid "invalid use of non-lvalue array"
msgstr ""
-#: c-typeck.c:3570
+#: c-typeck.c:3639
#, c-format
msgid "%s makes pointer from integer without a cast"
msgstr ""
-#: c-typeck.c:3578
+#: c-typeck.c:3646
#, c-format
msgid "%s makes integer from pointer without a cast"
msgstr ""
-#: c-typeck.c:3592 c-typeck.c:3595
+#: c-typeck.c:3660 c-typeck.c:3663
#, c-format
msgid "incompatible type for argument %d of `%s'"
msgstr ""
-#: c-typeck.c:3599
+#: c-typeck.c:3667
#, c-format
msgid "incompatible type for argument %d of indirect function call"
msgstr ""
-#: c-typeck.c:3603
+#: c-typeck.c:3671
#, c-format
msgid "incompatible types in %s"
msgstr ""
#. Function name is known; supply it.
-#: c-typeck.c:3659
+#: c-typeck.c:3727
#, c-format
msgid "passing arg of `%s'"
msgstr ""
#. Function name unknown (call through ptr).
-#: c-typeck.c:3668
+#: c-typeck.c:3736
msgid "passing arg of pointer to function"
msgstr ""
#. Function name is known; supply it.
-#: c-typeck.c:3676
+#: c-typeck.c:3744
#, c-format
msgid "passing arg %d of `%s'"
msgstr ""
#. Function name unknown (call through ptr); just give arg number.
-#: c-typeck.c:3685
+#: c-typeck.c:3753
#, c-format
msgid "passing arg %d of pointer to function"
msgstr ""
-#: c-typeck.c:3742
+#: c-typeck.c:3810
msgid "traditional C rejects automatic aggregate initialization"
msgstr ""
-#: c-typeck.c:3913 c-typeck.c:3928 c-typeck.c:3943
+#: c-typeck.c:3981 c-typeck.c:3996 c-typeck.c:4011
#, c-format
msgid "(near initialization for `%s')"
msgstr ""
-#: c-typeck.c:3992 cp/typeck2.c:458
+#: c-typeck.c:4060 cp/typeck2.c:560
msgid "char-array initialized from wide string"
msgstr ""
-#: c-typeck.c:3999 cp/typeck2.c:465
+#: c-typeck.c:4067 cp/typeck2.c:567
msgid "int-array initialized from non-wide string"
msgstr ""
-#: c-typeck.c:4017 cp/typeck2.c:481
+#: c-typeck.c:4085 cp/typeck2.c:582
msgid "initializer-string for array of chars is too long"
msgstr ""
-#: c-typeck.c:4084
+#: c-typeck.c:4155
msgid "array initialized from non-constant array expression"
msgstr ""
-#: c-typeck.c:4101 c-typeck.c:4103 c-typeck.c:4119 c-typeck.c:4140
-#: c-typeck.c:5520
+#: c-typeck.c:4172 c-typeck.c:4174 c-typeck.c:4190 c-typeck.c:4211
+#: c-typeck.c:5593
msgid "initializer element is not constant"
msgstr ""
-#: c-typeck.c:4135
+#: c-typeck.c:4206
msgid "initialization"
msgstr ""
-#: c-typeck.c:4146 c-typeck.c:5525
+#: c-typeck.c:4217 c-typeck.c:5598
msgid "initializer element is not computable at load time"
msgstr ""
-#: c-typeck.c:4161 cp/typeck2.c:558
+#: c-typeck.c:4232 cp/typeck2.c:659
msgid "invalid initializer"
msgstr ""
-#: c-typeck.c:4444 cp/decl.c:4422
+#: c-typeck.c:4517 cp/decl.c:4484
msgid "opaque vector types cannot be initialized"
msgstr ""
-#: c-typeck.c:4638
+#: c-typeck.c:4711
msgid "extra brace group at end of initializer"
msgstr ""
-#: c-typeck.c:4658
+#: c-typeck.c:4731
msgid "missing braces around initializer"
msgstr ""
-#: c-typeck.c:4718
+#: c-typeck.c:4791
msgid "braces around scalar initializer"
msgstr ""
-#: c-typeck.c:4765
+#: c-typeck.c:4842
msgid "initialization of flexible array member in a nested context"
msgstr ""
-#: c-typeck.c:4767
+#: c-typeck.c:4844
msgid "initialization of a flexible array member"
msgstr ""
-#: c-typeck.c:4798
+#: c-typeck.c:4875
msgid "missing initializer"
msgstr ""
-#: c-typeck.c:4824
+#: c-typeck.c:4897
msgid "empty scalar initializer"
msgstr ""
-#: c-typeck.c:4829
+#: c-typeck.c:4902
msgid "extra elements in scalar initializer"
msgstr ""
-#: c-typeck.c:4914
+#: c-typeck.c:4987
msgid "initialization designators may not nest"
msgstr ""
-#: c-typeck.c:4935 c-typeck.c:5003
+#: c-typeck.c:5008 c-typeck.c:5076
msgid "array index in non-array initializer"
msgstr ""
-#: c-typeck.c:4940 c-typeck.c:5056
+#: c-typeck.c:5013 c-typeck.c:5129
msgid "field name not in record or union initializer"
msgstr ""
-#: c-typeck.c:4999 c-typeck.c:5001
+#: c-typeck.c:5072 c-typeck.c:5074
msgid "nonconstant array index in initializer"
msgstr ""
-#: c-typeck.c:5005 c-typeck.c:5008
+#: c-typeck.c:5078 c-typeck.c:5081
msgid "array index in initializer exceeds array bounds"
msgstr ""
-#: c-typeck.c:5019
+#: c-typeck.c:5092
msgid "empty index range in initializer"
msgstr ""
-#: c-typeck.c:5028
+#: c-typeck.c:5101
msgid "array index range in initializer exceeds array bounds"
msgstr ""
-#: c-typeck.c:5068
+#: c-typeck.c:5141
#, c-format
msgid "unknown field `%s' specified in initializer"
msgstr ""
-#: c-typeck.c:5104 c-typeck.c:5125 c-typeck.c:5587
+#: c-typeck.c:5177 c-typeck.c:5198 c-typeck.c:5660
msgid "initialized field with side-effects overwritten"
msgstr ""
-#: c-typeck.c:5795
+#: c-typeck.c:5868
msgid "excess elements in char array initializer"
msgstr ""
-#: c-typeck.c:5802 c-typeck.c:5848
+#: c-typeck.c:5875 c-typeck.c:5921
msgid "excess elements in struct initializer"
msgstr ""
-#: c-typeck.c:5863
+#: c-typeck.c:5936
msgid "non-static initialization of a flexible array member"
msgstr ""
-#: c-typeck.c:5930
+#: c-typeck.c:6003
msgid "excess elements in union initializer"
msgstr ""
-#: c-typeck.c:5951
+#: c-typeck.c:6024
msgid "traditional C rejects initialization of unions"
msgstr ""
-#: c-typeck.c:6014
+#: c-typeck.c:6087
msgid "excess elements in array initializer"
msgstr ""
-#: c-typeck.c:6043
+#: c-typeck.c:6116
msgid "excess elements in vector initializer"
msgstr ""
-#: c-typeck.c:6065
+#: c-typeck.c:6138
msgid "excess elements in scalar initializer"
msgstr ""
-#: c-typeck.c:6152
-msgid "argument of `asm' is not a constant string"
-msgstr ""
-
-#: c-typeck.c:6167
+#: c-typeck.c:6240
msgid "asm template is not a string constant"
msgstr ""
-#: c-typeck.c:6199
+#: c-typeck.c:6272
msgid "invalid lvalue in asm statement"
msgstr ""
-#: c-typeck.c:6271
+#: c-typeck.c:6344 cp/typeck.c:5854
msgid "modification by `asm'"
msgstr ""
-#: c-typeck.c:6289 cp/typeck.c:5883
+#: c-typeck.c:6362 cp/typeck.c:5938
msgid "function declared `noreturn' has a `return' statement"
msgstr ""
-#: c-typeck.c:6296
+#: c-typeck.c:6369
msgid "`return' with no value, in function returning non-void"
msgstr ""
-#: c-typeck.c:6302
+#: c-typeck.c:6375
msgid "`return' with a value, in function returning void"
msgstr ""
-#: c-typeck.c:6306
+#: c-typeck.c:6379
msgid "return"
msgstr ""
-#: c-typeck.c:6358
+#: c-typeck.c:6431
msgid "function returns address of local variable"
msgstr ""
-#: c-typeck.c:6413 cp/semantics.c:734
+#: c-typeck.c:6486 cp/semantics.c:749
msgid "switch quantity not an integer"
msgstr ""
-#: c-typeck.c:6423
+#: c-typeck.c:6496
msgid "`long' switch expression not converted to `int' in ISO C"
msgstr ""
-#: c-typeck.c:6464 cp/parser.c:5281
+#: c-typeck.c:6537 cp/parser.c:5555
msgid "case label not within a switch statement"
msgstr ""
-#: c-typeck.c:6466
+#: c-typeck.c:6539
msgid "`default' label not within a switch statement"
msgstr ""
-#: c-typeck.c:6618 c-typeck.c:6652
+#: c-typeck.c:6691 c-typeck.c:6725
msgid "division by zero"
msgstr ""
-#: c-typeck.c:6697 cp/typeck.c:2888
+#: c-typeck.c:6770 cp/typeck.c:2930
msgid "right shift count is negative"
msgstr ""
-#: c-typeck.c:6704 cp/typeck.c:2894
+#: c-typeck.c:6777 cp/typeck.c:2936
msgid "right shift count >= width of type"
msgstr ""
-#: c-typeck.c:6725 cp/typeck.c:2913
+#: c-typeck.c:6798 cp/typeck.c:2955
msgid "left shift count is negative"
msgstr ""
-#: c-typeck.c:6728 cp/typeck.c:2915
+#: c-typeck.c:6801 cp/typeck.c:2957
msgid "left shift count >= width of type"
msgstr ""
-#: c-typeck.c:6749
+#: c-typeck.c:6822
msgid "shift count is negative"
msgstr ""
-#: c-typeck.c:6751
+#: c-typeck.c:6824
msgid "shift count >= width of type"
msgstr ""
-#: c-typeck.c:6768 cp/typeck.c:2950
+#: c-typeck.c:6841 cp/typeck.c:2992
msgid "comparing floating point with == or != is unsafe"
msgstr ""
-#: c-typeck.c:6794 c-typeck.c:6800
+#: c-typeck.c:6865 c-typeck.c:6871
msgid "ISO C forbids comparison of `void *' with function pointer"
msgstr ""
-#: c-typeck.c:6803 c-typeck.c:6843 c-typeck.c:6871
+#: c-typeck.c:6874 c-typeck.c:6914 c-typeck.c:6942
msgid "comparison of distinct pointer types lacks a cast"
msgstr ""
-#: c-typeck.c:6817 c-typeck.c:6822 c-typeck.c:6891 c-typeck.c:6896
+#: c-typeck.c:6888 c-typeck.c:6893 c-typeck.c:6962 c-typeck.c:6967
msgid "comparison between pointer and integer"
msgstr ""
-#: c-typeck.c:6838 c-typeck.c:6866
+#: c-typeck.c:6909 c-typeck.c:6937
msgid "ISO C forbids ordered comparisons of pointers to functions"
msgstr ""
-#: c-typeck.c:6863
+#: c-typeck.c:6934
msgid "comparison of complete and incomplete pointers"
msgstr ""
-#: c-typeck.c:6879 c-typeck.c:6886
+#: c-typeck.c:6950 c-typeck.c:6957
msgid "ordered comparison of pointer with integer zero"
msgstr ""
-#: c-typeck.c:6910 cp/typeck.c:3086
+#: c-typeck.c:6981 cp/typeck.c:3128
msgid "unordered comparison on non-floating point argument"
msgstr ""
-#: c-typeck.c:7120
+#: c-typeck.c:7191
msgid "comparison between signed and unsigned"
msgstr ""
-#: c-typeck.c:7166 cp/typeck.c:3333
+#: c-typeck.c:7237 cp/typeck.c:3375
msgid "comparison of promoted ~unsigned with constant"
msgstr ""
-#: c-typeck.c:7174 cp/typeck.c:3341
+#: c-typeck.c:7245 cp/typeck.c:3383
msgid "comparison of promoted ~unsigned with unsigned"
msgstr ""
-#: calls.c:1837 tree-inline.c:1335
+#: calls.c:1838
msgid "%Jinlining failed in call to '%F'"
msgstr ""
-#: calls.c:1838 calls.c:2206 tree-inline.c:1336
+#: calls.c:1839 calls.c:2211 tree-inline.c:1339 tree-inline.c:1346
msgid "called from here"
msgstr ""
-#: calls.c:2205
+#: calls.c:2210
msgid "%Jcan't inline call to '%F'"
msgstr ""
-#: calls.c:2214
+#: calls.c:2219
msgid ""
"ignoring return value of `%D', declared with attribute warn_unused_result"
msgstr ""
-#: calls.c:2227
+#: calls.c:2232
msgid ""
"ignoring return value of function declared with attribute warn_unused_result"
msgstr ""
-#: calls.c:2237
+#: calls.c:2242
msgid "function call has aggregate value"
msgstr ""
-#: cfg.c:833
+#: cfg.c:835
#, c-format
msgid "bb %d on wrong place"
msgstr ""
-#: cfg.c:839
+#: cfg.c:841
#, c-format
msgid "prev_bb of %d should be %d, not %d"
msgstr ""
-#: cfg.c:855
+#: cfg.c:857
#, c-format
msgid "verify_flow_info: Wrong count of block %i %i"
msgstr ""
-#: cfg.c:861
+#: cfg.c:863
#, c-format
msgid "verify_flow_info: Wrong frequency of block %i %i"
msgstr ""
-#: cfg.c:869
+#: cfg.c:871
#, c-format
msgid "verify_flow_info: Duplicate edge %i->%i"
msgstr ""
-#: cfg.c:875
+#: cfg.c:877
#, c-format
msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
msgstr ""
-#: cfg.c:881
+#: cfg.c:883
#, c-format
msgid "verify_flow_info: Wrong count of edge %i->%i %i"
msgstr ""
-#: cfg.c:893
+#: cfg.c:895
#, c-format
msgid "verify_flow_info: Basic block %d succ edge is corrupted"
msgstr ""
-#: cfg.c:907 cfgrtl.c:1973
+#: cfg.c:909 cfgrtl.c:1971
#, c-format
msgid "Wrong amount of branch edges after unconditional jump %i"
msgstr ""
-#: cfg.c:915
+#: cfg.c:917
#, c-format
msgid "basic block %d pred edge is corrupted"
msgstr ""
-#: cfg.c:941
+#: cfg.c:943
#, c-format
msgid "basic block %i edge lists are corrupted"
msgstr ""
-#: cfg.c:953
+#: cfg.c:955
msgid "verify_flow_info failed"
msgstr ""
-#: cfgloop.c:1141
+#: cfgloop.c:1134
#, c-format
msgid "Size of loop %d should be %d, not %d."
msgstr ""
-#: cfgloop.c:1160
+#: cfgloop.c:1153
#, c-format
msgid "Bb %d do not belong to loop %d."
msgstr ""
-#: cfgloop.c:1178
+#: cfgloop.c:1171
#, c-format
msgid "Loop %d's header does not have exactly 2 entries."
msgstr ""
-#: cfgloop.c:1186
+#: cfgloop.c:1179
#, c-format
msgid "Loop %d's latch does not have exactly 1 successor."
msgstr ""
-#: cfgloop.c:1191
+#: cfgloop.c:1184
#, c-format
msgid "Loop %d's latch does not have header as successor."
msgstr ""
-#: cfgloop.c:1196
+#: cfgloop.c:1189
#, c-format
msgid "Loop %d's latch does not belong directly to it."
msgstr ""
-#: cfgloop.c:1202
+#: cfgloop.c:1195
#, c-format
msgid "Loop %d's header does not belong directly to it."
msgstr ""
-#: cfgloop.c:1208
+#: cfgloop.c:1201
#, c-format
msgid "Loop %d's latch is marked as part of irreducible region."
msgstr ""
-#: cfgloop.c:1238
+#: cfgloop.c:1231
#, c-format
msgid "Basic block %d should be marked irreducible."
msgstr ""
-#: cfgloop.c:1244
+#: cfgloop.c:1237
#, c-format
msgid "Basic block %d should not be marked irreducible."
msgstr ""
-#: cfgloop.c:1252
+#: cfgloop.c:1245
#, c-format
msgid "Edge from %d to %d should be marked irreducible."
msgstr ""
-#: cfgloop.c:1259
+#: cfgloop.c:1252
#, c-format
msgid "Edge from %d to %d should not be marked irreducible."
msgstr ""
-#: cfgrtl.c:1879
+#: cfgrtl.c:1877
#, c-format
msgid "end insn %d for block %d not found in the insn stream"
msgstr ""
-#: cfgrtl.c:1893
+#: cfgrtl.c:1891
#, c-format
msgid "insn %d is in multiple basic blocks (%d and %d)"
msgstr ""
-#: cfgrtl.c:1905
+#: cfgrtl.c:1903
#, c-format
msgid "head insn %d for block %d not found in the insn stream"
msgstr ""
-#: cfgrtl.c:1927
+#: cfgrtl.c:1925
msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i"
msgstr ""
-#: cfgrtl.c:1955
+#: cfgrtl.c:1953
#, c-format
msgid "Missing REG_EH_REGION note in the end of bb %i"
msgstr ""
-#: cfgrtl.c:1963
+#: cfgrtl.c:1961
#, c-format
msgid "Too many outgoing branch edges from bb %i"
msgstr ""
-#: cfgrtl.c:1968
+#: cfgrtl.c:1966
#, c-format
msgid "Fallthru edge after unconditional jump %i"
msgstr ""
-#: cfgrtl.c:1979
+#: cfgrtl.c:1977
#, c-format
msgid "Wrong amount of branch edges after conditional jump %i"
msgstr ""
-#: cfgrtl.c:1984
+#: cfgrtl.c:1982
#, c-format
msgid "Call edges for non-call insn in bb %i"
msgstr ""
-#: cfgrtl.c:1993
+#: cfgrtl.c:1991
#, c-format
msgid "Abnormal edges for no purpose in bb %i"
msgstr ""
-#: cfgrtl.c:2003
+#: cfgrtl.c:2001
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is NULL"
msgstr ""
-#: cfgrtl.c:2007
+#: cfgrtl.c:2005
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is %i"
msgstr ""
-#: cfgrtl.c:2021 cfgrtl.c:2031
+#: cfgrtl.c:2019 cfgrtl.c:2029
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
msgstr ""
-#: cfgrtl.c:2044
+#: cfgrtl.c:2042
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
msgstr ""
-#: cfgrtl.c:2054
+#: cfgrtl.c:2052
#, c-format
msgid "in basic block %d:"
msgstr ""
-#: cfgrtl.c:2055
+#: cfgrtl.c:2053
msgid "flow control insn inside a basic block"
msgstr ""
-#: cfgrtl.c:2101
+#: cfgrtl.c:2099
#, c-format
msgid "missing barrier after block %i"
msgstr ""
-#: cfgrtl.c:2114
+#: cfgrtl.c:2112
#, c-format
msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
msgstr ""
-#: cfgrtl.c:2129
+#: cfgrtl.c:2127
#, c-format
msgid "verify_flow_info: Incorrect fallthru %i->%i"
msgstr ""
-#: cfgrtl.c:2131
+#: cfgrtl.c:2129
msgid "wrong insn in the fallthru edge"
msgstr ""
-#: cfgrtl.c:2148
+#: cfgrtl.c:2146
msgid "basic blocks not laid down consecutively"
msgstr ""
-#: cfgrtl.c:2173
+#: cfgrtl.c:2171
msgid "insn outside basic block"
msgstr ""
-#: cfgrtl.c:2181
+#: cfgrtl.c:2179
msgid "return not followed by barrier"
msgstr ""
-#: cfgrtl.c:2188
+#: cfgrtl.c:2186
#, c-format
msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr ""
-#: cgraph.c:463
+#: cgraph.c:161
+msgid "function body not available"
+msgstr ""
+
+#: cgraph.c:163 cgraphunit.c:340
+msgid "redefined extern inline functions are not considered for inlining"
+msgstr ""
+
+#: cgraph.c:166 cgraphunit.c:345
+msgid "function not considered for inlining"
+msgstr ""
+
+#: cgraph.c:168 cgraphunit.c:343
+msgid "function not inlinable"
+msgstr ""
+
+#: cgraph.c:476
msgid "%D renamed after being referenced in assembly"
msgstr ""
+#: cgraphunit.c:1041
+msgid "--param large-function-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1054
+msgid "--param large-function-growth limit reached while inlining the caller"
+msgstr ""
+
+#: cgraphunit.c:1119
+msgid "--param max-inline-insns-single limit reached"
+msgstr ""
+
+#: cgraphunit.c:1143
+msgid ""
+"--param max-inline-insns-single limit reached after inlining into the callee"
+msgstr ""
+
+#: cgraphunit.c:1220
+msgid "--param inline-unit-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1292 cgraphunit.c:1436
+msgid "recursive inlining"
+msgstr ""
+
#: collect2.c:406
msgid "internal error"
msgstr ""
-#: collect2.c:893
+#: collect2.c:894
msgid "no arguments"
msgstr ""
-#: collect2.c:1222 collect2.c:1370 collect2.c:1403
+#: collect2.c:1226 collect2.c:1374 collect2.c:1409
#, c-format
msgid "fopen %s"
msgstr ""
-#: collect2.c:1225 collect2.c:1375 collect2.c:1406
+#: collect2.c:1229 collect2.c:1379 collect2.c:1412
#, c-format
msgid "fclose %s"
msgstr ""
-#: collect2.c:1234
+#: collect2.c:1238
#, c-format
msgid "collect2 version %s"
msgstr ""
-#: collect2.c:1324
+#: collect2.c:1328
#, c-format
msgid "%d constructor(s) found\n"
msgstr ""
-#: collect2.c:1325
+#: collect2.c:1329
#, c-format
msgid "%d destructor(s) found\n"
msgstr ""
-#: collect2.c:1326
+#: collect2.c:1330
#, c-format
msgid "%d frame table(s) found\n"
msgstr ""
-#: collect2.c:1466
+#: collect2.c:1472
#, c-format
msgid "%s terminated with signal %d [%s]%s"
msgstr ""
-#: collect2.c:1484
+#: collect2.c:1490
#, c-format
msgid "%s returned %d exit status"
msgstr ""
-#: collect2.c:1509
+#: collect2.c:1515
#, c-format
msgid "[cannot find %s]"
msgstr ""
-#: collect2.c:1524
+#: collect2.c:1530
#, c-format
msgid "cannot find `%s'"
msgstr ""
-#: collect2.c:1535 collect2.c:1538
+#: collect2.c:1541 collect2.c:1544
#, c-format
msgid "redirecting stdout: %s"
msgstr ""
-#: collect2.c:1577
+#: collect2.c:1583
#, c-format
msgid "[Leaving %s]\n"
msgstr ""
-#: collect2.c:1797
+#: collect2.c:1803
#, c-format
msgid ""
"\n"
"write_c_file - output name is %s, prefix is %s\n"
msgstr ""
-#: collect2.c:2001
+#: collect2.c:2007
msgid "cannot find `nm'"
msgstr ""
-#: collect2.c:2011 collect2.c:2440
+#: collect2.c:2017 collect2.c:2446
msgid "pipe"
msgstr ""
-#: collect2.c:2015 collect2.c:2444
+#: collect2.c:2021 collect2.c:2450
msgid "fdopen"
msgstr ""
-#: collect2.c:2041 collect2.c:2470
+#: collect2.c:2047 collect2.c:2476
#, c-format
msgid "dup2 %d 1"
msgstr ""
-#: collect2.c:2044 collect2.c:2047 collect2.c:2060 collect2.c:2473
-#: collect2.c:2476 collect2.c:2489
+#: collect2.c:2050 collect2.c:2053 collect2.c:2066 collect2.c:2479
+#: collect2.c:2482 collect2.c:2495
#, c-format
msgid "close %d"
msgstr ""
-#: collect2.c:2050 collect2.c:2479
+#: collect2.c:2056 collect2.c:2485
#, c-format
msgid "execv %s"
msgstr ""
-#: collect2.c:2104
+#: collect2.c:2110
#, c-format
msgid "init function found in object %s"
msgstr ""
-#: collect2.c:2112
+#: collect2.c:2118
#, c-format
msgid "fini function found in object %s"
msgstr ""
-#: collect2.c:2135 collect2.c:2528
+#: collect2.c:2141 collect2.c:2534
msgid "fclose"
msgstr ""
-#: collect2.c:2177
+#: collect2.c:2183
#, c-format
msgid "unable to open file '%s'"
msgstr ""
-#: collect2.c:2179
+#: collect2.c:2185
#, c-format
msgid "unable to stat file '%s'"
msgstr ""
-#: collect2.c:2185
+#: collect2.c:2191
#, c-format
msgid "unable to mmap file '%s'"
msgstr ""
-#: collect2.c:2331
+#: collect2.c:2337
msgid "not found\n"
msgstr ""
-#: collect2.c:2333 collect2.c:2507
+#: collect2.c:2339 collect2.c:2513
#, c-format
msgid "dynamic dependency %s not found"
msgstr ""
-#: collect2.c:2352
+#: collect2.c:2358
#, c-format
msgid "bad magic number in file '%s'"
msgstr ""
-#: collect2.c:2374
+#: collect2.c:2380
msgid "dynamic dependencies.\n"
msgstr ""
-#: collect2.c:2431
+#: collect2.c:2437
msgid "cannot find `ldd'"
msgstr ""
-#: collect2.c:2492
+#: collect2.c:2498
msgid ""
"\n"
"ldd output with constructors/destructors.\n"
msgstr ""
-#: collect2.c:2519
+#: collect2.c:2525
#, c-format
msgid "unable to open dynamic dependency '%s'"
msgstr ""
-#: collect2.c:2667
+#: collect2.c:2685
#, c-format
msgid "%s: not a COFF file"
msgstr ""
-#: collect2.c:2786
+#: collect2.c:2805
#, c-format
msgid "%s: cannot open as COFF file"
msgstr ""
-#: collect2.c:2841
+#: collect2.c:2860
#, c-format
msgid "library lib%s not found"
msgstr ""
-#: combine.c:13014
+#: combine.c:13038
#, c-format
msgid ""
";; Combiner statistics: %d attempts, %d substitutions (%d requiring new "
@@ -3637,7 +3947,7 @@ msgid ""
"\n"
msgstr ""
-#: combine.c:13023
+#: combine.c:13047
#, c-format
msgid ""
"\n"
@@ -3669,11 +3979,11 @@ msgstr ""
msgid "aggregate value used where an integer was expected"
msgstr ""
-#: convert.c:657 f/com.c:1099
+#: convert.c:657 f/com.c:1101
msgid "pointer value used where a complex was expected"
msgstr ""
-#: convert.c:661 f/com.c:1101
+#: convert.c:661 f/com.c:1103
msgid "aggregate value used where a complex was expected"
msgstr ""
@@ -3691,47 +4001,57 @@ msgstr ""
msgid "`%s' is version `%.4s', expected version `%.4s'"
msgstr ""
-#: coverage.c:256
+#: coverage.c:255 coverage.c:263
+#, c-format
+msgid "coverage mismatch for function %u while reading execution counters."
+msgstr ""
+
+#: coverage.c:257 coverage.c:340
+#, c-format
+msgid "checksum is %x instead of %x"
+msgstr ""
+
+#: coverage.c:265 coverage.c:348
#, c-format
-msgid "coverage mismatch for function %u"
+msgid "number of counters is %d instead of %d"
msgstr ""
-#: coverage.c:262
+#: coverage.c:271
#, c-format
msgid "cannot merge separate %s counters for function %u"
msgstr ""
-#: coverage.c:287
+#: coverage.c:296
#, c-format
msgid "`%s' has overflowed"
msgstr ""
-#: coverage.c:287
+#: coverage.c:296
#, c-format
msgid "`%s' is corrupted"
msgstr ""
-#: coverage.c:309
+#: coverage.c:319
#, c-format
msgid "file %s not found, execution counts assumed to be zero"
msgstr ""
-#: coverage.c:319
+#: coverage.c:329
#, c-format
msgid "no coverage for function '%s' found."
msgstr ""
-#: coverage.c:327
+#: coverage.c:337 coverage.c:345
#, c-format
-msgid "coverage mismatch for `%s'"
+msgid "coverage mismatch for function '%s' while reading counter '%s'."
msgstr ""
-#: coverage.c:442
+#: coverage.c:493
#, c-format
msgid "cannot open %s"
msgstr ""
-#: coverage.c:477
+#: coverage.c:528
#, c-format
msgid "error writing `%s'"
msgstr ""
@@ -3844,7 +4164,12 @@ msgstr ""
msgid "empty character constant"
msgstr ""
-#: cpperror.c:110
+#: cppcharset.c:1378
+#, c-format
+msgid "failure to convert %s to %s"
+msgstr ""
+
+#: cpperror.c:110 diagnostic.def:5
msgid "warning: "
msgstr ""
@@ -4000,86 +4325,82 @@ msgstr ""
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr ""
-#: cppexp.c:1253
-msgid "traditional C rejects the unary plus operator"
-msgstr ""
-
-#: cppexp.c:1352
+#: cppexp.c:1353
msgid "comma operator in operand of #if"
msgstr ""
-#: cppexp.c:1483
+#: cppexp.c:1484
msgid "division by zero in #if"
msgstr ""
-#: cppfiles.c:367
+#: cppfiles.c:370
msgid "NULL directory in find_file"
msgstr ""
-#: cppfiles.c:392
+#: cppfiles.c:397
msgid "one or more PCH files were found, but they were invalid"
msgstr ""
-#: cppfiles.c:395
+#: cppfiles.c:400
msgid "use -Winvalid-pch for more information"
msgstr ""
-#: cppfiles.c:453
+#: cppfiles.c:458
#, c-format
msgid "%s is a block device"
msgstr ""
-#: cppfiles.c:470
+#: cppfiles.c:475
#, c-format
msgid "%s is too large"
msgstr ""
-#: cppfiles.c:505
+#: cppfiles.c:510
#, c-format
msgid "%s is shorter than expected"
msgstr ""
-#: cppfiles.c:698
+#: cppfiles.c:696
#, c-format
msgid "no include path in which to search for %s"
msgstr ""
-#: cppfiles.c:940
+#: cppfiles.c:956
msgid "Multiple include guards may be useful for:\n"
msgstr ""
-#: cppinit.c:386
+#: cppinit.c:387
msgid "cppchar_t must be an unsigned type"
msgstr ""
-#: cppinit.c:390
+#: cppinit.c:391
#, c-format
msgid ""
"preprocessor arithmetic has maximum precision of %lu bits; target requires %"
"lu bits"
msgstr ""
-#: cppinit.c:397
+#: cppinit.c:398
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr ""
-#: cppinit.c:400
+#: cppinit.c:401
msgid "target char is less than 8 bits wide"
msgstr ""
-#: cppinit.c:404
+#: cppinit.c:405
msgid "target wchar_t is narrower than target char"
msgstr ""
-#: cppinit.c:408
+#: cppinit.c:409
msgid "target int is narrower than target char"
msgstr ""
-#: cppinit.c:413
+#: cppinit.c:414
msgid "CPP half-integer narrower than CPP character"
msgstr ""
-#: cppinit.c:417
+#: cppinit.c:418
#, c-format
msgid ""
"CPP on this host cannot handle wide character constants over %lu bits, but "
@@ -4107,23 +4428,23 @@ msgstr ""
msgid "null character(s) preserved in literal"
msgstr ""
-#: cpplex.c:916
+#: cpplex.c:919
msgid "unterminated comment"
msgstr ""
-#: cpplex.c:927
+#: cpplex.c:930
msgid "C++ style comments are not allowed in ISO C90"
msgstr ""
-#: cpplex.c:929
+#: cpplex.c:932
msgid "(this will be reported only once per input file)"
msgstr ""
-#: cpplex.c:934
+#: cpplex.c:937
msgid "multi-line comment"
msgstr ""
-#: cpplex.c:1198
+#: cpplex.c:1201
#, c-format
msgid "unspellable token %s"
msgstr ""
@@ -4133,193 +4454,193 @@ msgstr ""
msgid "extra tokens at end of #%s directive"
msgstr ""
-#: cpplib.c:301
+#: cpplib.c:304
#, c-format
msgid "#%s is a GCC extension"
msgstr ""
-#: cpplib.c:313
+#: cpplib.c:316
msgid "suggest not using #elif in traditional C"
msgstr ""
-#: cpplib.c:316
+#: cpplib.c:319
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr ""
-#: cpplib.c:320
+#: cpplib.c:323
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr ""
-#: cpplib.c:342
+#: cpplib.c:345
msgid "embedding a directive within macro arguments is not portable"
msgstr ""
-#: cpplib.c:362
+#: cpplib.c:365
msgid "style of line directive is a GCC extension"
msgstr ""
-#: cpplib.c:412
+#: cpplib.c:415
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr ""
-#: cpplib.c:481
+#: cpplib.c:484
msgid "\"defined\" cannot be used as a macro name"
msgstr ""
-#: cpplib.c:487
+#: cpplib.c:490
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr ""
-#: cpplib.c:490
+#: cpplib.c:493
#, c-format
msgid "no macro name given in #%s directive"
msgstr ""
-#: cpplib.c:493
+#: cpplib.c:496
msgid "macro names must be identifiers"
msgstr ""
-#: cpplib.c:532
+#: cpplib.c:537
#, c-format
msgid "undefining \"%s\""
msgstr ""
-#: cpplib.c:602
+#: cpplib.c:609
msgid "missing terminating > character"
msgstr ""
-#: cpplib.c:655
+#: cpplib.c:662
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr ""
-#: cpplib.c:678
+#: cpplib.c:685
msgid "#include nested too deeply"
msgstr ""
-#: cpplib.c:716
+#: cpplib.c:723
msgid "#include_next in primary source file"
msgstr ""
-#: cpplib.c:742
+#: cpplib.c:749
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr ""
-#: cpplib.c:787
+#: cpplib.c:794
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr ""
-#: cpplib.c:793
+#: cpplib.c:800
msgid "line number out of range"
msgstr ""
-#: cpplib.c:805 cpplib.c:878
+#: cpplib.c:812 cpplib.c:885
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr ""
-#: cpplib.c:840
+#: cpplib.c:847
#, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr ""
-#: cpplib.c:940
+#: cpplib.c:947
msgid "invalid #ident directive"
msgstr ""
-#: cpplib.c:1020
+#: cpplib.c:1027
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr ""
-#: cpplib.c:1023
+#: cpplib.c:1030
#, c-format
msgid "#pragma %s %s is already registered"
msgstr ""
-#: cpplib.c:1026
+#: cpplib.c:1033
#, c-format
msgid "#pragma %s is already registered"
msgstr ""
-#: cpplib.c:1171
+#: cpplib.c:1175
msgid "#pragma once in main file"
msgstr ""
-#: cpplib.c:1194
+#: cpplib.c:1198
msgid "invalid #pragma GCC poison directive"
msgstr ""
-#: cpplib.c:1203
+#: cpplib.c:1207
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr ""
-#: cpplib.c:1224
+#: cpplib.c:1228
msgid "#pragma system_header ignored outside include file"
msgstr ""
-#: cpplib.c:1248
+#: cpplib.c:1252
#, c-format
msgid "cannot find source file %s"
msgstr ""
-#: cpplib.c:1252
+#: cpplib.c:1256
#, c-format
msgid "current file is older than %s"
msgstr ""
-#: cpplib.c:1366
+#: cpplib.c:1370
msgid "_Pragma takes a parenthesized string literal"
msgstr ""
-#: cpplib.c:1444
+#: cpplib.c:1448
msgid "#else without #if"
msgstr ""
-#: cpplib.c:1449
+#: cpplib.c:1453
msgid "#else after #else"
msgstr ""
-#: cpplib.c:1477
+#: cpplib.c:1481
msgid "#elif without #if"
msgstr ""
-#: cpplib.c:1482
+#: cpplib.c:1486
msgid "#elif after #else"
msgstr ""
-#: cpplib.c:1512
+#: cpplib.c:1516
msgid "#endif without #if"
msgstr ""
-#: cpplib.c:1589
+#: cpplib.c:1593
msgid "missing '(' after predicate"
msgstr ""
-#: cpplib.c:1604
+#: cpplib.c:1608
msgid "missing ')' to complete answer"
msgstr ""
-#: cpplib.c:1624
+#: cpplib.c:1628
msgid "predicate's answer is empty"
msgstr ""
-#: cpplib.c:1651
+#: cpplib.c:1655
msgid "assertion without predicate"
msgstr ""
-#: cpplib.c:1653
+#: cpplib.c:1657
msgid "predicate must be an identifier"
msgstr ""
-#: cpplib.c:1737
+#: cpplib.c:1741
#, c-format
msgid "\"%s\" re-asserted"
msgstr ""
@@ -4366,54 +4687,54 @@ msgstr ""
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr ""
-#: cppmacro.c:1241
+#: cppmacro.c:1245
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr ""
-#: cppmacro.c:1286
+#: cppmacro.c:1290
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr ""
-#: cppmacro.c:1294
+#: cppmacro.c:1298
msgid "macro parameters must be comma-separated"
msgstr ""
-#: cppmacro.c:1311
+#: cppmacro.c:1315
msgid "parameter name missing"
msgstr ""
-#: cppmacro.c:1326
+#: cppmacro.c:1330
msgid "anonymous variadic macros were introduced in C99"
msgstr ""
-#: cppmacro.c:1330
+#: cppmacro.c:1334
msgid "ISO C does not permit named variadic macros"
msgstr ""
-#: cppmacro.c:1339
+#: cppmacro.c:1343
msgid "missing ')' in macro parameter list"
msgstr ""
-#: cppmacro.c:1402
+#: cppmacro.c:1406
msgid "ISO C requires whitespace after the macro name"
msgstr ""
-#: cppmacro.c:1430
+#: cppmacro.c:1434
msgid "'#' is not followed by a macro parameter"
msgstr ""
-#: cppmacro.c:1449
+#: cppmacro.c:1453
msgid "'##' cannot appear at either end of a macro expansion"
msgstr ""
-#: cppmacro.c:1588
+#: cppmacro.c:1592
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr ""
-#: cppmacro.c:1611
+#: cppmacro.c:1615
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr ""
@@ -4455,7 +4776,11 @@ msgstr ""
msgid "detected recursion whilst expanding macro \"%s\""
msgstr ""
-#: cse.c:7021
+#: cpptrad.c:911
+msgid "syntax error in macro parameter list"
+msgstr ""
+
+#: cse.c:7060
#, c-format
msgid ";; Processing block from %d to %d, %d sets.\n"
msgstr ""
@@ -4478,38 +4803,33 @@ msgstr ""
msgid "in %s, at %s:%d"
msgstr ""
-#: dominance.c:693
+#: dominance.c:763
#, c-format
msgid "dominator of %d should be %d, not %d"
msgstr ""
-#: dwarf2out.c:3213
+#: dwarf2out.c:3229
#, c-format
msgid "DW_LOC_OP %s not implemented\n"
msgstr ""
-#: dwarfout.c:2033
-msgid "%Jinternal regno botch: '%D' has regno = %d\n"
-msgstr ""
-
-#: dwarfout.c:6021
-msgid "support for the DWARF1 debugging format is deprecated"
+#: emit-rtl.c:1155
+msgid "can't access real part of complex value in hard register"
msgstr ""
-#: dwarfout.c:6114
-#, c-format
-msgid "can't get current directory: %m"
+#: emit-rtl.c:1182
+msgid "can't access imaginary part of complex value in hard register"
msgstr ""
-#: emit-rtl.c:1282
-msgid "can't access real part of complex value in hard register"
+#: emit-rtl.c:2327
+msgid "Invalid rtl sharing found in the insn"
msgstr ""
-#: emit-rtl.c:1309
-msgid "can't access imaginary part of complex value in hard register"
+#: emit-rtl.c:2329
+msgid "Shared rtx"
msgstr ""
-#: emit-rtl.c:3456
+#: emit-rtl.c:3464
msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
msgstr ""
@@ -4518,157 +4838,153 @@ msgstr ""
msgid "abort in %s, at %s:%d"
msgstr ""
-#: except.c:356
+#: except.c:357
msgid "exception handling disabled, use -fexceptions to enable"
msgstr ""
-#: except.c:2923
+#: except.c:2953
msgid "argument of `__builtin_eh_return_regno' must be constant"
msgstr ""
-#: except.c:3054
+#: except.c:3084
msgid "__builtin_eh_return not supported on this target"
msgstr ""
-#: explow.c:1327
+#: explow.c:1319
msgid "stack limits not supported on this target"
msgstr ""
-#: expr.c:2989
+#: expr.c:2998
msgid "function using short complex types cannot be inline"
msgstr ""
-#: expr.c:5960 expr.c:5969 expr.c:5978 expr.c:5983 expr.c:6312 expr.c:6328
-msgid "unsupported wide integer operation"
-msgstr ""
-
-#: expr.c:6371
+#: expr.c:6385
msgid "%Jprior parameter's size depends on '%D'"
msgstr ""
-#: expr.c:6734
+#: expr.c:6752
msgid "returned value in block_exit_expr"
msgstr ""
#. We can't make a bitwise copy of this object, so fail.
-#: expr.c:8869
+#: expr.c:8895
msgid "cannot take the address of an unaligned member"
msgstr ""
-#: final.c:1057
+#: final.c:1058
msgid "negative insn length"
msgstr ""
-#: final.c:2432
+#: final.c:2429
msgid "could not split insn"
msgstr ""
-#: final.c:2774
+#: final.c:2771
msgid "invalid `asm': "
msgstr ""
-#: final.c:2957
+#: final.c:2954
msgid "nested assembly dialect alternatives"
msgstr ""
-#: final.c:2974 final.c:2986
+#: final.c:2971 final.c:2983
msgid "unterminated assembly dialect alternative"
msgstr ""
-#: final.c:3030
+#: final.c:3027
#, c-format
msgid "operand number missing after %%-letter"
msgstr ""
-#: final.c:3033 final.c:3072
+#: final.c:3030 final.c:3069
msgid "operand number out of range"
msgstr ""
-#: final.c:3091
+#: final.c:3088
#, c-format
msgid "invalid %%-code"
msgstr ""
-#: final.c:3121
+#: final.c:3118
#, c-format
msgid "`%%l' operand isn't a label"
msgstr ""
#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
-#: final.c:3223 vmsdbgout.c:467 config/i386/i386.c:6712
-#: config/pdp11/pdp11.c:1645
+#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6751
+#: config/pdp11/pdp11.c:1646
msgid "floating constant misused"
msgstr ""
-#: final.c:3279 vmsdbgout.c:524 config/i386/i386.c:6790
-#: config/pdp11/pdp11.c:1692
+#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6829
+#: config/pdp11/pdp11.c:1693
msgid "invalid expression as operand"
msgstr ""
-#: flow.c:341
+#: flow.c:329
msgid "function might be possible candidate for attribute `noreturn'"
msgstr ""
-#: flow.c:346
+#: flow.c:334
msgid "`noreturn' function does return"
msgstr ""
-#: flow.c:367
+#: flow.c:355
msgid "control reaches end of non-void function"
msgstr ""
-#: flow.c:1610
+#: flow.c:1582
msgid "Attempt to delete prologue/epilogue insn:"
msgstr ""
-#: fold-const.c:2759 fold-const.c:2772
+#: fold-const.c:2878 fold-const.c:2891
#, c-format
msgid "comparison is always %d due to width of bit-field"
msgstr ""
-#: fold-const.c:3967 fold-const.c:3984
+#: fold-const.c:4093 fold-const.c:4110
#, c-format
msgid "comparison is always %d"
msgstr ""
-#: fold-const.c:4115
+#: fold-const.c:4241
msgid "`or' of unmatched not-equal tests is always 1"
msgstr ""
-#: fold-const.c:4120
+#: fold-const.c:4246
msgid "`and' of mutually exclusive equal-tests is always 0"
msgstr ""
-#: fold-const.c:8328
+#: fold-const.c:8393
msgid "fold check: original tree changed by fold"
msgstr ""
-#: function.c:883 varasm.c:1415
+#: function.c:884 varasm.c:1408
msgid "%Jsize of variable '%D' is too large"
msgstr ""
-#: function.c:3710
+#: function.c:3742
msgid "impossible constraint in `asm'"
msgstr ""
-#: function.c:5630
+#: function.c:5723
msgid "%J'%D' might be used uninitialized in this function"
msgstr ""
-#: function.c:5637
+#: function.c:5730
msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'"
msgstr ""
-#: function.c:5656
+#: function.c:5749
msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'"
msgstr ""
-#: function.c:6432
+#: function.c:6523
msgid "function returns an aggregate"
msgstr ""
-#: function.c:6915
+#: function.c:7006
msgid "%Junused parameter '%D'"
msgstr ""
@@ -4692,84 +5008,84 @@ msgstr ""
msgid "extraneous argument to `%s' option"
msgstr ""
-#: gcc.c:1563
+#: gcc.c:1570
msgid "Using built-in specs.\n"
msgstr ""
-#: gcc.c:1742
+#: gcc.c:1755
#, c-format
msgid ""
"Setting spec %s to '%s'\n"
"\n"
msgstr ""
-#: gcc.c:1844
+#: gcc.c:1857
#, c-format
msgid "Reading specs from %s\n"
msgstr ""
-#: gcc.c:1940 gcc.c:1959
+#: gcc.c:1953 gcc.c:1972
#, c-format
msgid "specs %%include syntax malformed after %ld characters"
msgstr ""
-#: gcc.c:1967
+#: gcc.c:1980
#, c-format
msgid "could not find specs file %s\n"
msgstr ""
-#: gcc.c:1984 gcc.c:1992 gcc.c:2001 gcc.c:2010
+#: gcc.c:1997 gcc.c:2005 gcc.c:2014 gcc.c:2023
#, c-format
msgid "specs %%rename syntax malformed after %ld characters"
msgstr ""
-#: gcc.c:2019
+#: gcc.c:2032
#, c-format
msgid "specs %s spec was not found to be renamed"
msgstr ""
-#: gcc.c:2026
+#: gcc.c:2039
#, c-format
msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
msgstr ""
-#: gcc.c:2031
+#: gcc.c:2044
#, c-format
msgid "rename spec %s to %s\n"
msgstr ""
-#: gcc.c:2033
+#: gcc.c:2046
#, c-format
msgid ""
"spec is '%s'\n"
"\n"
msgstr ""
-#: gcc.c:2046
+#: gcc.c:2059
#, c-format
msgid "specs unknown %% command after %ld characters"
msgstr ""
-#: gcc.c:2057 gcc.c:2070
+#: gcc.c:2070 gcc.c:2083
#, c-format
msgid "specs file malformed after %ld characters"
msgstr ""
-#: gcc.c:2123
+#: gcc.c:2136
msgid "spec file has no spec for linking"
msgstr ""
-#: gcc.c:2628
+#: gcc.c:2641
msgid "-pipe not supported"
msgstr ""
-#: gcc.c:2683
+#: gcc.c:2703
msgid ""
"\n"
"Go ahead? (y or n) "
msgstr ""
-#: gcc.c:2809
+#: gcc.c:2829
#, c-format
msgid ""
"Internal error: %s (program %s)\n"
@@ -4777,184 +5093,184 @@ msgid ""
"See %s for instructions."
msgstr ""
-#: gcc.c:2827
+#: gcc.c:2847
#, c-format
msgid "# %s %.2f %.2f\n"
msgstr ""
-#: gcc.c:2960
+#: gcc.c:2980
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr ""
-#: gcc.c:2961
+#: gcc.c:2981
msgid "Options:\n"
msgstr ""
-#: gcc.c:2963
+#: gcc.c:2983
msgid " -pass-exit-codes Exit with highest error code from a phase\n"
msgstr ""
-#: gcc.c:2964
+#: gcc.c:2984
msgid " --help Display this information\n"
msgstr ""
-#: gcc.c:2965
+#: gcc.c:2985
msgid ""
" --target-help Display target specific command line options\n"
msgstr ""
-#: gcc.c:2967
+#: gcc.c:2987
msgid " (Use '-v --help' to display command line options of sub-processes)\n"
msgstr ""
-#: gcc.c:2968
+#: gcc.c:2988
msgid " -dumpspecs Display all of the built in spec strings\n"
msgstr ""
-#: gcc.c:2969
+#: gcc.c:2989
msgid " -dumpversion Display the version of the compiler\n"
msgstr ""
-#: gcc.c:2970
+#: gcc.c:2990
msgid " -dumpmachine Display the compiler's target processor\n"
msgstr ""
-#: gcc.c:2971
+#: gcc.c:2991
msgid ""
" -print-search-dirs Display the directories in the compiler's search "
"path\n"
msgstr ""
-#: gcc.c:2972
+#: gcc.c:2992
msgid ""
" -print-libgcc-file-name Display the name of the compiler's companion "
"library\n"
msgstr ""
-#: gcc.c:2973
+#: gcc.c:2993
msgid " -print-file-name=<lib> Display the full path to library <lib>\n"
msgstr ""
-#: gcc.c:2974
+#: gcc.c:2994
msgid ""
" -print-prog-name=<prog> Display the full path to compiler component "
"<prog>\n"
msgstr ""
-#: gcc.c:2975
+#: gcc.c:2995
msgid ""
" -print-multi-directory Display the root directory for versions of "
"libgcc\n"
msgstr ""
-#: gcc.c:2976
+#: gcc.c:2996
msgid ""
" -print-multi-lib Display the mapping between command line options "
"and\n"
" multiple library search directories\n"
msgstr ""
-#: gcc.c:2979
+#: gcc.c:2999
msgid " -print-multi-os-directory Display the relative path to OS libraries\n"
msgstr ""
-#: gcc.c:2980
+#: gcc.c:3000
msgid ""
" -Wa,<options> Pass comma-separated <options> on to the "
"assembler\n"
msgstr ""
-#: gcc.c:2981
+#: gcc.c:3001
msgid ""
" -Wp,<options> Pass comma-separated <options> on to the "
"preprocessor\n"
msgstr ""
-#: gcc.c:2982
+#: gcc.c:3002
msgid ""
" -Wl,<options> Pass comma-separated <options> on to the linker\n"
msgstr ""
-#: gcc.c:2983
+#: gcc.c:3003
msgid " -Xassembler <arg> Pass <arg> on to the assembler\n"
msgstr ""
-#: gcc.c:2984
+#: gcc.c:3004
msgid " -Xpreprocessor <arg> Pass <arg> on to the preprocessor\n"
msgstr ""
-#: gcc.c:2985
+#: gcc.c:3005
msgid " -Xlinker <arg> Pass <arg> on to the linker\n"
msgstr ""
-#: gcc.c:2986
+#: gcc.c:3006
msgid " -save-temps Do not delete intermediate files\n"
msgstr ""
-#: gcc.c:2987
+#: gcc.c:3007
msgid " -pipe Use pipes rather than intermediate files\n"
msgstr ""
-#: gcc.c:2988
+#: gcc.c:3008
msgid " -time Time the execution of each subprocess\n"
msgstr ""
-#: gcc.c:2989
+#: gcc.c:3009
msgid ""
" -specs=<file> Override built-in specs with the contents of "
"<file>\n"
msgstr ""
-#: gcc.c:2990
+#: gcc.c:3010
msgid ""
" -std=<standard> Assume that the input sources are for <standard>\n"
msgstr ""
-#: gcc.c:2991
+#: gcc.c:3011
msgid ""
" -B <directory> Add <directory> to the compiler's search paths\n"
msgstr ""
-#: gcc.c:2992
+#: gcc.c:3012
msgid " -b <machine> Run gcc for target <machine>, if installed\n"
msgstr ""
-#: gcc.c:2993
+#: gcc.c:3013
msgid ""
" -V <version> Run gcc version number <version>, if installed\n"
msgstr ""
-#: gcc.c:2994
+#: gcc.c:3014
msgid ""
" -v Display the programs invoked by the compiler\n"
msgstr ""
-#: gcc.c:2995
+#: gcc.c:3015
msgid ""
" -### Like -v but options quoted and commands not "
"executed\n"
msgstr ""
-#: gcc.c:2996
+#: gcc.c:3016
msgid ""
" -E Preprocess only; do not compile, assemble or "
"link\n"
msgstr ""
-#: gcc.c:2997
+#: gcc.c:3017
msgid " -S Compile only; do not assemble or link\n"
msgstr ""
-#: gcc.c:2998
+#: gcc.c:3018
msgid " -c Compile and assemble, but do not link\n"
msgstr ""
-#: gcc.c:2999
+#: gcc.c:3019
msgid " -o <file> Place the output into <file>\n"
msgstr ""
-#: gcc.c:3000
+#: gcc.c:3020
msgid ""
" -x <language> Specify the language of the following input "
"files\n"
@@ -4965,7 +5281,7 @@ msgid ""
"extension\n"
msgstr ""
-#: gcc.c:3007
+#: gcc.c:3027
#, c-format
msgid ""
"\n"
@@ -4974,93 +5290,93 @@ msgid ""
" other options on to these processes the -W<letter> options must be used.\n"
msgstr ""
-#: gcc.c:3128
+#: gcc.c:3148
#, c-format
msgid "`-%c' option must have argument"
msgstr ""
-#: gcc.c:3150
+#: gcc.c:3170
#, c-format
msgid "couldn't run `%s': %s"
msgstr ""
#. translate_options () has turned --version into -fversion.
-#: gcc.c:3336
+#: gcc.c:3356
#, c-format
msgid "%s (GCC) %s\n"
msgstr ""
-#: gcc.c:3337 gcov.c:423
-msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
+#: gcc.c:3358 gcov.c:424 f/g77spec.c:351
+msgid "(C)"
msgstr ""
-#: gcc.c:3339
+#: gcc.c:3359
msgid ""
"This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
"\n"
msgstr ""
-#: gcc.c:3440
+#: gcc.c:3460
msgid "argument to `-Xlinker' is missing"
msgstr ""
-#: gcc.c:3448
+#: gcc.c:3468
msgid "argument to `-Xpreprocessor' is missing"
msgstr ""
-#: gcc.c:3455
+#: gcc.c:3475
msgid "argument to `-Xassembler' is missing"
msgstr ""
-#: gcc.c:3462
+#: gcc.c:3482
msgid "argument to `-l' is missing"
msgstr ""
-#: gcc.c:3478
+#: gcc.c:3498
msgid "argument to `-specs' is missing"
msgstr ""
-#: gcc.c:3492
+#: gcc.c:3512
msgid "argument to `-specs=' is missing"
msgstr ""
-#: gcc.c:3529
+#: gcc.c:3549
#, c-format
msgid "`-%c' must come at the start of the command line"
msgstr ""
-#: gcc.c:3538
+#: gcc.c:3558
msgid "argument to `-B' is missing"
msgstr ""
-#: gcc.c:3715
+#: gcc.c:3735
msgid "warning: -pipe ignored because -save-temps specified"
msgstr ""
-#: gcc.c:3719
+#: gcc.c:3739
msgid "warning: -pipe ignored because -time specified"
msgstr ""
-#: gcc.c:3931
+#: gcc.c:3951
msgid "argument to `-x' is missing"
msgstr ""
-#: gcc.c:3959
+#: gcc.c:3979
#, c-format
msgid "argument to `-%s' is missing"
msgstr ""
-#: gcc.c:4020
+#: gcc.c:4040
#, c-format
msgid "warning: `-x %s' after last input file has no effect"
msgstr ""
-#: gcc.c:4421
+#: gcc.c:4441
msgid "invalid specification! Bug in cc"
msgstr ""
-#: gcc.c:4575
+#: gcc.c:4595
#, c-format
msgid "%s\n"
msgstr ""
@@ -5068,127 +5384,127 @@ msgstr ""
#. Catch the case where a spec string contains something like
#. '%{foo:%*}'. ie there is no * in the pattern on the left
#. hand side of the :.
-#: gcc.c:5079
+#: gcc.c:5099
#, c-format
msgid "spec failure: '%%*' has not been initialized by pattern match"
msgstr ""
-#: gcc.c:5088
+#: gcc.c:5108
#, c-format
msgid "warning: use of obsolete %%[ operator in specs"
msgstr ""
-#: gcc.c:5106
+#: gcc.c:5126
#, c-format
msgid "Processing spec %c%s%c, which is '%s'\n"
msgstr ""
-#: gcc.c:5169
+#: gcc.c:5189
#, c-format
msgid "spec failure: unrecognized spec option '%c'"
msgstr ""
-#: gcc.c:5248
+#: gcc.c:5268
#, c-format
msgid "unknown spec function `%s'"
msgstr ""
-#: gcc.c:5267
+#: gcc.c:5287
#, c-format
msgid "error in args to spec function `%s'"
msgstr ""
-#: gcc.c:5315
+#: gcc.c:5335
msgid "malformed spec function name"
msgstr ""
#. )
-#: gcc.c:5318
+#: gcc.c:5338
msgid "no arguments for spec function"
msgstr ""
-#: gcc.c:5337
+#: gcc.c:5357
msgid "malformed spec function arguments"
msgstr ""
-#: gcc.c:6063
+#: gcc.c:6083
msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC."
msgstr ""
-#: gcc.c:6073
+#: gcc.c:6093
msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC."
msgstr ""
-#: gcc.c:6166
+#: gcc.c:6186
#, c-format
msgid "unrecognized option `-%s'"
msgstr ""
-#: gcc.c:6172
+#: gcc.c:6192
#, c-format
msgid "install: %s%s\n"
msgstr ""
-#: gcc.c:6173
+#: gcc.c:6193
#, c-format
msgid "programs: %s\n"
msgstr ""
-#: gcc.c:6174
+#: gcc.c:6194
#, c-format
msgid "libraries: %s\n"
msgstr ""
-#: gcc.c:6231
+#: gcc.c:6251
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
msgstr ""
-#: gcc.c:6247
+#: gcc.c:6267
#, c-format
msgid "Configured with: %s\n"
msgstr ""
-#: gcc.c:6261
+#: gcc.c:6281
#, c-format
msgid "Thread model: %s\n"
msgstr ""
-#: gcc.c:6272
+#: gcc.c:6292
#, c-format
msgid "gcc version %s\n"
msgstr ""
-#: gcc.c:6274
+#: gcc.c:6294
#, c-format
msgid "gcc driver version %s executing gcc version %s\n"
msgstr ""
-#: gcc.c:6282
+#: gcc.c:6302
msgid "no input files"
msgstr ""
-#: gcc.c:6304 gcc.c:6423
+#: gcc.c:6324 gcc.c:6443
#, c-format
msgid "%s: linker input file unused because linking not done"
msgstr ""
-#: gcc.c:6307
+#: gcc.c:6327
msgid "cannot specify -o with -c or -S and multiple languages"
msgstr ""
-#: gcc.c:6342
+#: gcc.c:6362
#, c-format
msgid "%s: %s compiler not installed on this system"
msgstr ""
-#: gcc.c:6463
+#: gcc.c:6483
#, c-format
msgid "language %s not recognized"
msgstr ""
-#: gcc.c:6560
+#: gcc.c:6580
msgid "internal gcc abort"
msgstr ""
@@ -5274,7 +5590,7 @@ msgstr ""
msgid "gcov (GCC) %s\n"
msgstr ""
-#: gcov.c:425
+#: gcov.c:426
msgid ""
"This is free software; see the source for copying conditions.\n"
"There is NO warranty; not even for MERCHANTABILITY or \n"
@@ -5282,538 +5598,219 @@ msgid ""
"\n"
msgstr ""
-#: gcov.c:515
+#: gcov.c:516
#, c-format
msgid "%s:no functions found\n"
msgstr ""
-#: gcov.c:536 gcov.c:564
+#: gcov.c:537 gcov.c:565
msgid "\n"
msgstr ""
-#: gcov.c:551
+#: gcov.c:552
#, c-format
msgid "%s:creating `%s'\n"
msgstr ""
-#: gcov.c:555
+#: gcov.c:556
#, c-format
msgid "%s:error writing output file `%s'\n"
msgstr ""
-#: gcov.c:560
+#: gcov.c:561
#, c-format
msgid "%s:could not open output file `%s'\n"
msgstr ""
-#: gcov.c:711
+#: gcov.c:712
#, c-format
msgid "%s:cannot open graph file\n"
msgstr ""
-#: gcov.c:717
+#: gcov.c:718
#, c-format
msgid "%s:not a gcov graph file\n"
msgstr ""
-#: gcov.c:730
+#: gcov.c:731
#, c-format
msgid "%s:version `%.4s', prefer `%.4s'\n"
msgstr ""
-#: gcov.c:782
+#: gcov.c:783
#, c-format
msgid "%s:already seen blocks for `%s'\n"
msgstr ""
-#: gcov.c:903 gcov.c:1062
+#: gcov.c:904 gcov.c:1063
#, c-format
msgid "%s:corrupted\n"
msgstr ""
-#: gcov.c:976
+#: gcov.c:977
#, c-format
msgid "%s:cannot open data file\n"
msgstr ""
-#: gcov.c:981
+#: gcov.c:982
#, c-format
msgid "%s:not a gcov data file\n"
msgstr ""
-#: gcov.c:994
+#: gcov.c:995
#, c-format
msgid "%s:version `%.4s', prefer version `%.4s'\n"
msgstr ""
-#: gcov.c:1000
+#: gcov.c:1001
#, c-format
msgid "%s:stamp mismatch with graph file\n"
msgstr ""
-#: gcov.c:1026
+#: gcov.c:1027
#, c-format
msgid "%s:unknown function `%u'\n"
msgstr ""
-#: gcov.c:1039
+#: gcov.c:1040
#, c-format
msgid "%s:profile mismatch for `%s'\n"
msgstr ""
-#: gcov.c:1062
+#: gcov.c:1063
#, c-format
msgid "%s:overflowed\n"
msgstr ""
-#: gcov.c:1085
+#: gcov.c:1086
#, c-format
msgid "%s:`%s' lacks entry and/or exit blocks\n"
msgstr ""
-#: gcov.c:1090
+#: gcov.c:1091
#, c-format
msgid "%s:`%s' has arcs to entry block\n"
msgstr ""
-#: gcov.c:1098
+#: gcov.c:1099
#, c-format
msgid "%s:`%s' has arcs from exit block\n"
msgstr ""
-#: gcov.c:1306
+#: gcov.c:1307
#, c-format
msgid "%s:graph is unsolvable for `%s'\n"
msgstr ""
-#: gcov.c:1386
+#: gcov.c:1387
#, c-format
msgid "%s `%s'\n"
msgstr ""
-#: gcov.c:1389
+#: gcov.c:1390
#, c-format
msgid "Lines executed:%s of %d\n"
msgstr ""
-#: gcov.c:1393
+#: gcov.c:1394
msgid "No executable lines"
msgstr ""
-#: gcov.c:1399
+#: gcov.c:1400
#, c-format
msgid "Branches executed:%s of %d\n"
msgstr ""
-#: gcov.c:1403
+#: gcov.c:1404
#, c-format
msgid "Taken at least once:%s of %d\n"
msgstr ""
-#: gcov.c:1409
+#: gcov.c:1410
msgid "No branches\n"
msgstr ""
-#: gcov.c:1411
+#: gcov.c:1412
#, c-format
msgid "Calls executed:%s of %d\n"
msgstr ""
-#: gcov.c:1415
+#: gcov.c:1416
msgid "No calls\n"
msgstr ""
-#: gcov.c:1556
+#: gcov.c:1557
#, c-format
msgid "%s:no lines for `%s'\n"
msgstr ""
-#: gcov.c:1751
+#: gcov.c:1752
#, c-format
msgid "call %2d returned %s\n"
msgstr ""
-#: gcov.c:1756
+#: gcov.c:1757
#, c-format
msgid "call %2d never executed\n"
msgstr ""
-#: gcov.c:1761
+#: gcov.c:1762
#, c-format
msgid "branch %2d taken %s%s\n"
msgstr ""
-#: gcov.c:1765
+#: gcov.c:1766
#, c-format
msgid "branch %2d never executed\n"
msgstr ""
-#: gcov.c:1770
+#: gcov.c:1771
#, c-format
msgid "unconditional %2d taken %s\n"
msgstr ""
-#: gcov.c:1773
+#: gcov.c:1774
#, c-format
msgid "unconditional %2d never executed\n"
msgstr ""
-#: gcov.c:1805
+#: gcov.c:1806
#, c-format
msgid "%s:cannot open source file\n"
msgstr ""
-#: gcov.c:1815
+#: gcov.c:1816
#, c-format
msgid "%s:source file is newer than graph file `%s'\n"
msgstr ""
#. Return if there's nothing to do, or it is too expensive.
-#: gcse.c:745
+#: gcse.c:747
msgid "GCSE disabled"
msgstr ""
-#: gcse.c:6069
+#: gcse.c:6124
msgid "NULL pointer checks disabled"
msgstr ""
-#. Return if there's nothing to do, or it is too expensive
-#: gcse.c:7930
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:8010
msgid "jump bypassing disabled"
msgstr ""
-#: gcse.c:7991
+#: gcse.c:8071
#, c-format
msgid "%s: %d basic blocks and %d edges/basic block"
msgstr ""
-#: gcse.c:8004
+#: gcse.c:8084
#, c-format
msgid "%s: %d basic blocks and %d registers"
msgstr ""
-#: genautomata.c:1534
-#, c-format
-msgid "Name `%s' contains quotes"
-msgstr ""
-
-#: genautomata.c:1657
-#, c-format
-msgid "invalid string `%s' in define_cpu_unit"
-msgstr ""
-
-#: genautomata.c:1688
-#, c-format
-msgid "invalid string `%s' in define_query_cpu_unit"
-msgstr ""
-
-#: genautomata.c:1719 genautomata.c:1722
-#, c-format
-msgid "invalid string `%s' in define_bypass"
-msgstr ""
-
-#: genautomata.c:1756
-#, c-format
-msgid "invalid first string `%s' in exclusion_set"
-msgstr ""
-
-#: genautomata.c:1760
-#, c-format
-msgid "invalid second string `%s' in exclusion_set"
-msgstr ""
-
-#: genautomata.c:1906
-#, c-format
-msgid "invalid string `%s' in define_automaton"
-msgstr ""
-
-#: genautomata.c:1936
-#, c-format
-msgid "invalid option `%s' in automata_option"
-msgstr ""
-
-#: genautomata.c:1957
-#, c-format
-msgid "garbage after ) in reservation `%s'"
-msgstr ""
-
-#: genautomata.c:1987 genautomata.c:2019 genautomata.c:2045
-#, c-format
-msgid "invalid `%s' in reservation `%s'"
-msgstr ""
-
-#: genautomata.c:1998
-#, c-format
-msgid "repetition `%s' <= 1 in reservation `%s'"
-msgstr ""
-
-#: genautomata.c:2467
-#, c-format
-msgid "unit `%s' in exclusion is not declared"
-msgstr ""
-
-#: genautomata.c:2469
-#, c-format
-msgid "`%s' in exclusion is not unit"
-msgstr ""
-
-#: genautomata.c:2505
-#, c-format
-msgid "unit `%s' excludes itself"
-msgstr ""
-
-#: genautomata.c:2513
-#, c-format
-msgid "units `%s' and `%s' in exclusion set belong to different automata"
-msgstr ""
-
-#: genautomata.c:2685
-#, c-format
-msgid "unit `%s' requires own absence"
-msgstr ""
-
-#: genautomata.c:2713 genautomata.c:2719
-#, c-format
-msgid "unit `%s' excludes and requires presence of `%s'"
-msgstr ""
-
-#: genautomata.c:2733 genautomata.c:2739
-#, c-format
-msgid "unit `%s' requires absence and presence of `%s'"
-msgstr ""
-
-#: genautomata.c:2818 genautomata.c:2821
-#, c-format
-msgid "repeated declaration of automaton `%s'"
-msgstr ""
-
-#: genautomata.c:2837
-#, c-format
-msgid "define_insn_reservation `%s' has negative latency time"
-msgstr ""
-
-#: genautomata.c:2843
-#, c-format
-msgid "`%s' is already used as insn reservation name"
-msgstr ""
-
-#: genautomata.c:2849
-#, c-format
-msgid "define_bypass `%s - %s' has negative latency time"
-msgstr ""
-
-#: genautomata.c:2863
-#, c-format
-msgid "automaton `%s' is not declared"
-msgstr ""
-
-#: genautomata.c:2873
-#, c-format
-msgid "define_unit `%s' without automaton when one defined"
-msgstr ""
-
-#: genautomata.c:2879
-#, c-format
-msgid "`%s' is declared as cpu unit"
-msgstr ""
-
-#: genautomata.c:2888
-#, c-format
-msgid "`%s' is declared as cpu reservation"
-msgstr ""
-
-#: genautomata.c:2898
-#, c-format
-msgid "repeated declaration of unit `%s'"
-msgstr ""
-
-#: genautomata.c:2901
-#, c-format
-msgid "repeated declaration of reservation `%s'"
-msgstr ""
-
-#: genautomata.c:2916 genautomata.c:2919
-#, c-format
-msgid "there is no insn reservation `%s'"
-msgstr ""
-
-#: genautomata.c:2936 genautomata.c:2941
-#, c-format
-msgid "the same bypass `%s - %s' is already defined"
-msgstr ""
-
-#: genautomata.c:2946
-#, c-format
-msgid "bypass `%s - %s' is already defined"
-msgstr ""
-
-#: genautomata.c:3049 genautomata.c:3051
-#, c-format
-msgid "automaton `%s' is not used"
-msgstr ""
-
-#: genautomata.c:3073
-#, c-format
-msgid "undeclared unit or reservation `%s'"
-msgstr ""
-
-#: genautomata.c:3151 genautomata.c:3153
-#, c-format
-msgid "unit `%s' is not used"
-msgstr ""
-
-#: genautomata.c:3158 genautomata.c:3160
-#, c-format
-msgid "reservation `%s' is not used"
-msgstr ""
-
-#: genautomata.c:3255
-#, c-format
-msgid "cycle in definition of reservation `%s'"
-msgstr ""
-
-#: genautomata.c:5424
-msgid "The following units do not satisfy units-automata distribution rule"
-msgstr ""
-
-#: genautomata.c:5425
-msgid " (A unit of given unit automaton should be on each reserv. altern.)"
-msgstr ""
-
-#: genautomata.c:5428
-#, c-format
-msgid "Unit %s, reserv. %s, cycle %d"
-msgstr ""
-
-#: genautomata.c:9632
-msgid "-split has no argument."
-msgstr ""
-
-#: genautomata.c:9633
-msgid "option `-split' has not been implemented yet\n"
-msgstr ""
-
-#: genautomata.c:9677 genautomata.c:9682
-#, c-format
-msgid "Automaton `%s': Insn `%s' will never be issued"
-msgstr ""
-
-#: genautomata.c:9689 genautomata.c:9692
-#, c-format
-msgid "Insn `%s' will never be issued"
-msgstr ""
-
-#: genautomata.c:9839
-msgid "Errors in DFA description"
-msgstr ""
-
-#: genautomata.c:9921
-#, c-format
-msgid "Error in writing DFA description file %s"
-msgstr ""
-
-#: genconditions.c:192
-msgid "No input file name."
-msgstr ""
-
-#: genmodes.c:115
-#, c-format
-msgid "no complex class for class %s"
-msgstr ""
-
-#: genmodes.c:128
-#, c-format
-msgid "no vector class for class %s"
-msgstr ""
-
-#: genmodes.c:152
-#, c-format
-msgid "%s:%d: duplicate definition of mode \"%s\""
-msgstr ""
-
-#: genmodes.c:154
-#, c-format
-msgid "%s:%d: previous definition here"
-msgstr ""
-
-#: genmodes.c:209 genmodes.c:551 genmodes.c:575 genmodes.c:608
-#, c-format
-msgid "%s:%d: no mode \"%s\""
-msgstr ""
-
-#: genmodes.c:215 genmodes.c:613
-#, c-format
-msgid "%s:%d: mode \"%s\" is not class %s"
-msgstr ""
-
-#: genmodes.c:223
-#, c-format
-msgid "%s:%d: mode \"%s\" already has a %s adjustment"
-msgstr ""
-
-#: genmodes.c:225
-#, c-format
-msgid "%s:%d: previous adjustment here"
-msgstr ""
-
-#: genmodes.c:248
-#, c-format
-msgid "%s:%d: (%s) field %s must be set"
-msgstr ""
-
-#: genmodes.c:253
-#, c-format
-msgid "%s:%d: (%s) field %s must not be set"
-msgstr ""
-
-#: genmodes.c:289
-#, c-format
-msgid "%s:%d: mode with no name"
-msgstr ""
-
-#: genmodes.c:294
-#, c-format
-msgid "%s:%d: %smode has no mode class"
-msgstr ""
-
-#: genmodes.c:421
-#, c-format
-msgid "%s:%d:mode name \"%s\" is too long"
-msgstr ""
-
-#: genmodes.c:436
-#, c-format
-msgid "%s:%d: float mode \"%s\" has no 'F'"
-msgstr ""
-
-#: genmodes.c:488 genmodes.c:621
-#, c-format
-msgid "%s:%d: mode name \"%s\" is too long"
-msgstr ""
-
-#: genmodes.c:556
-#, c-format
-msgid "%s:%d: mode \"%s\" is not class FLOAT"
-msgstr ""
-
-#: genmodes.c:580
-#, c-format
-msgid "%s:%d: mode \"%s\" is not class INT"
-msgstr ""
-
-#: genmodes.c:1106 genmodes.c:1138
-#, c-format
-msgid "mode %s is neither vector nor complex but contains %s"
-msgstr ""
-
-#: genmodes.c:1196
-#, c-format
-msgid "usage: %s [-h|-m] > file"
-msgstr ""
-
#: ggc-common.c:398 ggc-common.c:406 ggc-common.c:487 ggc-common.c:507
-#: ggc-page.c:2005 ggc-page.c:2037 ggc-page.c:2044 ggc-zone.c:1668
-#: ggc-zone.c:1674 ggc-zone.c:1679 ggc-zone.c:1686
+#: ggc-page.c:2030 ggc-page.c:2062 ggc-page.c:2069 ggc-zone.c:1361
+#: ggc-zone.c:1367 ggc-zone.c:1372 ggc-zone.c:1379
#, c-format
msgid "can't write PCH file: %m"
msgstr ""
@@ -5829,7 +5826,7 @@ msgid "can't write padding to PCH file: %m"
msgstr ""
#: ggc-common.c:563 ggc-common.c:571 ggc-common.c:578 ggc-common.c:581
-#: ggc-common.c:654 ggc-common.c:657 ggc-page.c:2132 ggc-zone.c:1698
+#: ggc-common.c:654 ggc-common.c:657 ggc-page.c:2157 ggc-zone.c:1389
#, c-format
msgid "can't read PCH file: %m"
msgstr ""
@@ -5838,20 +5835,31 @@ msgstr ""
msgid "had to relocate PCH"
msgstr ""
-#: ggc-page.c:1322
+#: ggc-page.c:1325
#, c-format
msgid "open /dev/zero: %m"
msgstr ""
-#: ggc-page.c:2022 ggc-page.c:2028
+#: ggc-page.c:2047 ggc-page.c:2053
msgid "can't write PCH file"
msgstr ""
-#: ggc-simple.c:492
+#: ggc-simple.c:526
msgid "Generating PCH files is not supported when using ggc-simple.c"
msgstr ""
-#: haifa-sched.c:197
+#: global.c:356 global.c:369 global.c:383
+#, c-format
+msgid "%s cannot be used in asm here"
+msgstr ""
+
+#: graph.c:403 toplev.c:1498 toplev.c:4432 f/com.c:14202 java/jcf-parse.c:883
+#: java/jcf-parse.c:1029 java/lex.c:1828 objc/objc-act.c:503
+#, c-format
+msgid "can't open %s: %m"
+msgstr ""
+
+#: haifa-sched.c:196
#, c-format
msgid "fix_sched_param: unknown param: %s"
msgstr ""
@@ -5869,54 +5877,58 @@ msgid "function using alloca cannot be inline"
msgstr ""
#: integrate.c:176
-msgid "function using setjmp cannot be inline"
+msgid "function using longjmp cannot be inline"
msgstr ""
#: integrate.c:179
-msgid "function uses __builtin_eh_return"
+msgid "function using setjmp cannot be inline"
msgstr ""
#: integrate.c:182
+msgid "function uses __builtin_eh_return"
+msgstr ""
+
+#: integrate.c:185
msgid "function with nested functions cannot be inline"
msgstr ""
-#: integrate.c:186
+#: integrate.c:189
msgid "function with label addresses used in initializers cannot inline"
msgstr ""
-#: integrate.c:193 integrate.c:237
+#: integrate.c:196 integrate.c:240
msgid "function too large to be inline"
msgstr ""
-#: integrate.c:203
+#: integrate.c:206
msgid "no prototype, and parameter address used; cannot be inline"
msgstr ""
-#: integrate.c:210 integrate.c:255
+#: integrate.c:213 integrate.c:258
msgid "inline functions not supported for this return value type"
msgstr ""
-#: integrate.c:215
+#: integrate.c:218
msgid "function with varying-size return value cannot be inline"
msgstr ""
-#: integrate.c:222
+#: integrate.c:225
msgid "function with varying-size parameter cannot be inline"
msgstr ""
-#: integrate.c:225
+#: integrate.c:228
msgid "function with transparent unit parameter cannot be inline"
msgstr ""
-#: integrate.c:244
+#: integrate.c:247
msgid "function with computed jump cannot inline"
msgstr ""
-#: integrate.c:248
+#: integrate.c:251
msgid "function with nonlocal goto cannot be inline"
msgstr ""
-#: integrate.c:262
+#: integrate.c:265
msgid "function with target specific attribute(s) cannot be inlined"
msgstr ""
@@ -5954,85 +5966,85 @@ msgid "This switch lacks documentation"
msgstr ""
#. Eventually this should become a hard error IMO.
-#: opts.c:311
+#: opts.c:318
#, c-format
msgid "command line option \"%s\" is valid for %s but not for %s"
msgstr ""
-#: opts.c:399
+#: opts.c:406
#, c-format
msgid "missing argument to \"%s\""
msgstr ""
-#: opts.c:409
+#: opts.c:416
#, c-format
msgid "argument to \"%s\" should be a non-negative integer"
msgstr ""
-#: opts.c:455
+#: opts.c:463
#, c-format
msgid "unrecognized command line option \"%s\""
msgstr ""
-#: opts.c:638
+#: opts.c:646
msgid "-Wuninitialized is not supported without -O"
msgstr ""
-#: opts.c:1329
+#: opts.c:1354
#, c-format
msgid "unrecognized register name \"%s\""
msgstr ""
-#: opts.c:1373
+#: opts.c:1398
#, c-format
msgid "unknown tls-model \"%s\""
msgstr ""
-#: opts.c:1443
-msgid "use -gdwarf -gN for DWARF v1 level N, and -gdwarf-2 for DWARF v2"
+#: opts.c:1454
+msgid "-fwritable-strings is deprecated; see documentation for details"
msgstr ""
-#: opts.c:1521
+#: opts.c:1538
#, c-format
msgid "%s: --param arguments should be of the form NAME=VALUE"
msgstr ""
-#: opts.c:1526
+#: opts.c:1543
#, c-format
msgid "invalid --param value `%s'"
msgstr ""
-#: opts.c:1622
+#: opts.c:1639
msgid "target system does not support debug output"
msgstr ""
-#: opts.c:1629
+#: opts.c:1646
#, c-format
msgid "debug format \"%s\" conflicts with prior selection"
msgstr ""
-#: opts.c:1645
+#: opts.c:1662
#, c-format
msgid "unrecognised debug output level \"%s\""
msgstr ""
-#: opts.c:1647
+#: opts.c:1664
#, c-format
msgid "debug output level %s is too high"
msgstr ""
-#: opts.c:1666
+#: opts.c:1683
msgid "The following options are language-independent:\n"
msgstr ""
-#: opts.c:1673
+#: opts.c:1690
#, c-format
msgid ""
"The %s front end recognizes the following options:\n"
"\n"
msgstr ""
-#: opts.c:1687
+#: opts.c:1704
msgid "The --param option recognizes the following as parameters:\n"
msgstr ""
@@ -6376,7 +6388,7 @@ msgstr ""
msgid "%s: input file names must have .c suffixes: %s\n"
msgstr ""
-#: ra.c:752
+#: ra.c:750
msgid "Didn't find a coloring.\n"
msgstr ""
@@ -6403,109 +6415,109 @@ msgstr ""
msgid "output operand %d must use `&' constraint"
msgstr ""
-#: regclass.c:749
+#: regclass.c:743
#, c-format
msgid "can't use '%s' as a %s register"
msgstr ""
-#: regclass.c:764 config/ia64/ia64.c:4473 config/ia64/ia64.c:4480
+#: regclass.c:758 config/ia64/ia64.c:4657 config/ia64/ia64.c:4664
#, c-format
msgid "unknown register name: %s"
msgstr ""
-#: regclass.c:774
+#: regclass.c:768
msgid "global register variable follows a function definition"
msgstr ""
-#: regclass.c:778
+#: regclass.c:772
msgid "register used for two global register variables"
msgstr ""
-#: regclass.c:783
+#: regclass.c:777
msgid "call-clobbered register used for global register variable"
msgstr ""
-#: regrename.c:1842
+#: regrename.c:1846
#, c-format
msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)"
msgstr ""
-#: regrename.c:1854
+#: regrename.c:1858
#, c-format
msgid "validate_value_data: Loop in regno chain (%u)"
msgstr ""
-#: regrename.c:1857
+#: regrename.c:1861
#, c-format
msgid "validate_value_data: [%u] Bad oldest_regno (%u)"
msgstr ""
-#: regrename.c:1869
+#: regrename.c:1873
#, c-format
msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
msgstr ""
-#: reload.c:1251
+#: reload.c:1254
msgid "cannot reload integer constant operand in `asm'"
msgstr ""
-#: reload.c:1273
+#: reload.c:1276
msgid "impossible register constraint in `asm'"
msgstr ""
-#: reload.c:3501
+#: reload.c:3504
msgid "`&' constraint used with no register class"
msgstr ""
-#: reload.c:3669
+#: reload.c:3672
msgid "unable to generate reloads for:"
msgstr ""
-#: reload.c:3670 reload.c:3884
+#: reload.c:3673 reload.c:3887
msgid "inconsistent operand constraints in an `asm'"
msgstr ""
-#: reload1.c:1208
+#: reload1.c:1212
msgid "frame size too large for reliable stack checking"
msgstr ""
-#: reload1.c:1211
+#: reload1.c:1215
msgid "try reducing the number of local variables"
msgstr ""
-#: reload1.c:1856
+#: reload1.c:1868
#, c-format
msgid "can't find a register in class `%s' while reloading `asm'"
msgstr ""
-#: reload1.c:1860
+#: reload1.c:1872
#, c-format
msgid "unable to find a register to spill in class `%s'"
msgstr ""
-#: reload1.c:1862
+#: reload1.c:1874
msgid "this is the insn:"
msgstr ""
-#: reload1.c:3860
+#: reload1.c:3871
msgid "`asm' operand requires impossible reload"
msgstr ""
#. It's the compiler's fault.
-#: reload1.c:4945
+#: reload1.c:4963
msgid "could not find a spill register"
msgstr ""
-#: reload1.c:4950
+#: reload1.c:4968
msgid "`asm' operand constraint incompatible with operand size"
msgstr ""
#. It's the compiler's fault.
-#: reload1.c:6572
+#: reload1.c:6590
msgid "VOIDmode on an output"
msgstr ""
-#: reload1.c:6573
+#: reload1.c:6591
msgid "output operand is constant in `asm'"
msgstr ""
@@ -6517,186 +6529,194 @@ msgstr ""
msgid "insn does not satisfy its constraints:"
msgstr ""
-#: rtl.c:427
+#: rtl.c:477
#, c-format
msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d"
msgstr ""
-#: rtl.c:437
+#: rtl.c:487
#, c-format
msgid ""
"RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr ""
-#: rtl.c:447
+#: rtl.c:497
#, c-format
msgid ""
"RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %"
"s:%d"
msgstr ""
-#: rtl.c:456
+#: rtl.c:506
#, c-format
msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d"
msgstr ""
-#: rtl.c:466
+#: rtl.c:516
#, c-format
msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d"
msgstr ""
-#: rtl.c:477
+#: rtl.c:527
#, c-format
msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
msgstr ""
-#: rtl.c:488
+#: rtl.c:538
#, c-format
msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d"
msgstr ""
-#: stmt.c:748
+#: stmt.c:750
#, c-format
msgid "jump to `%s' invalidly jumps into binding contour"
msgstr ""
-#: stmt.c:975 stmt.c:3739
+#: stmt.c:977 stmt.c:3793
msgid "%Jlabel '%D' used before containing binding contour"
msgstr ""
-#: stmt.c:1154
+#: stmt.c:1156
msgid "output operand constraint lacks `='"
msgstr ""
-#: stmt.c:1169
+#: stmt.c:1171
#, c-format
msgid "output constraint `%c' for operand %d is not at the beginning"
msgstr ""
-#: stmt.c:1191
+#: stmt.c:1193
msgid "operand constraint contains incorrectly positioned '+' or '='"
msgstr ""
-#: stmt.c:1197 stmt.c:1295
+#: stmt.c:1199 stmt.c:1301
#, c-format
msgid "`%%' constraint used with last operand"
msgstr ""
-#: stmt.c:1216
+#: stmt.c:1218
msgid "matching constraint not valid in output operand"
msgstr ""
-#: stmt.c:1286
+#: stmt.c:1260
+msgid "read-write constraint does not allow a register"
+msgstr ""
+
+#: stmt.c:1292
#, c-format
msgid "input operand constraint contains `%c'"
msgstr ""
-#: stmt.c:1326
+#: stmt.c:1334
msgid "matching constraint references invalid operand number"
msgstr ""
-#: stmt.c:1364
+#: stmt.c:1372
#, c-format
msgid "invalid punctuation `%c' in constraint"
msgstr ""
-#: stmt.c:1413
+#: stmt.c:1396
+msgid "matching constraint does not allow a register"
+msgstr ""
+
+#: stmt.c:1424
#, c-format
msgid "asm-specifier for variable `%s' conflicts with asm clobber list"
msgstr ""
-#: stmt.c:1503
+#: stmt.c:1514
#, c-format
msgid "unknown register name `%s' in `asm'"
msgstr ""
-#: stmt.c:1511
+#: stmt.c:1522
#, c-format
msgid "PIC register `%s' clobbered in `asm'"
msgstr ""
-#: stmt.c:1560
+#: stmt.c:1571
#, c-format
msgid "more than %d operands in `asm'"
msgstr ""
-#: stmt.c:1622
+#: stmt.c:1633
#, c-format
msgid "output number %d not directly addressable"
msgstr ""
-#: stmt.c:1700
+#: stmt.c:1711
#, c-format
msgid "asm operand %d probably doesn't match constraints"
msgstr ""
-#: stmt.c:1710
+#: stmt.c:1721
#, c-format
msgid "use of memory input without lvalue in asm operand %d is deprecated"
msgstr ""
-#: stmt.c:1861
+#: stmt.c:1875
msgid "asm clobber conflict with output operand"
msgstr ""
-#: stmt.c:1866
+#: stmt.c:1880
msgid "asm clobber conflict with input operand"
msgstr ""
-#: stmt.c:1900
+#: stmt.c:1914
msgid "too many alternatives in `asm'"
msgstr ""
-#: stmt.c:1912
+#: stmt.c:1926
msgid "operand constraints for `asm' differ in number of alternatives"
msgstr ""
-#: stmt.c:1964
+#: stmt.c:1978
#, c-format
msgid "duplicate asm operand name '%s'"
msgstr ""
-#: stmt.c:2062
+#: stmt.c:2076
msgid "missing close brace for named operand"
msgstr ""
-#: stmt.c:2090
+#: stmt.c:2104
#, c-format
msgid "undefined named operand '%s'"
msgstr ""
-#: stmt.c:2146
+#: stmt.c:2161
msgid "%Hstatement with no effect"
msgstr ""
-#: stmt.c:2301
+#: stmt.c:2317
msgid "%Hvalue computed is not used"
msgstr ""
-#: stmt.c:3679
+#: stmt.c:3733
msgid "%Junused variable '%D'"
msgstr ""
-#: stmt.c:4452
+#: stmt.c:4508
msgid "%Hunreachable code at beginning of %s"
msgstr ""
-#: stmt.c:5080
+#: stmt.c:5136
#, c-format
msgid "enumeration value `%s' not handled in switch"
msgstr ""
-#: stmt.c:5105 stmt.c:5125
+#: stmt.c:5161 stmt.c:5181
#, c-format
msgid "case value `%ld' not in enumerated type"
msgstr ""
-#: stmt.c:5108 stmt.c:5128
+#: stmt.c:5164 stmt.c:5184
#, c-format
msgid "case value `%ld' not in enumerated type `%s'"
msgstr ""
-#: stmt.c:5345
+#: stmt.c:5401
msgid "switch missing default case"
msgstr ""
@@ -6708,49 +6728,49 @@ msgstr ""
msgid "variable-size type declared outside of any function"
msgstr ""
-#: stor-layout.c:513
+#: stor-layout.c:515
msgid "%Jsize of '%D' is %d bytes"
msgstr ""
-#: stor-layout.c:515
+#: stor-layout.c:517
msgid "%Jsize of '%D' is larger than %d bytes"
msgstr ""
-#: stor-layout.c:881
+#: stor-layout.c:883
msgid "%Jpacked attribute causes inefficient alignment for '%D'"
msgstr ""
-#: stor-layout.c:884
+#: stor-layout.c:886
msgid "%Jpacked attribute is unnecessary for '%D'"
msgstr ""
-#: stor-layout.c:900
+#: stor-layout.c:902
msgid "%Jpadding struct to align '%D'"
msgstr ""
-#: stor-layout.c:1243
+#: stor-layout.c:1245
msgid "padding struct size to alignment boundary"
msgstr ""
-#: stor-layout.c:1273
+#: stor-layout.c:1275
#, c-format
msgid "packed attribute causes inefficient alignment for `%s'"
msgstr ""
-#: stor-layout.c:1275
+#: stor-layout.c:1277
#, c-format
msgid "packed attribute is unnecessary for `%s'"
msgstr ""
-#: stor-layout.c:1280
+#: stor-layout.c:1282
msgid "packed attribute causes inefficient alignment"
msgstr ""
-#: stor-layout.c:1282
+#: stor-layout.c:1284
msgid "packed attribute is unnecessary"
msgstr ""
-#: targhooks.c:161
+#: targhooks.c:162
msgid "__builtin_saveregs not supported by this target"
msgstr ""
@@ -6799,104 +6819,104 @@ msgstr ""
msgid "ld returned %d exit status"
msgstr ""
-#: toplev.c:1257
+#: toplev.c:1243
#, c-format
msgid "%s "
msgstr ""
-#: toplev.c:1259
+#: toplev.c:1245
#, c-format
msgid " %s"
msgstr ""
-#: toplev.c:1324
+#: toplev.c:1310
#, c-format
msgid "invalid option argument `%s'"
msgstr ""
-#: toplev.c:1387
+#: toplev.c:1373
#, c-format
msgid "getting core file size maximum limit: %m"
msgstr ""
-#: toplev.c:1390
+#: toplev.c:1376
#, c-format
msgid "setting core file size limit to maximum: %m"
msgstr ""
-#: toplev.c:1713
+#: toplev.c:1695
msgid "%J'%F' used but never defined"
msgstr ""
-#: toplev.c:1715
+#: toplev.c:1697
msgid "%J'%F' declared `static' but never defined"
msgstr ""
-#: toplev.c:1740
+#: toplev.c:1722
msgid "%J'%D' defined but not used"
msgstr ""
-#: toplev.c:1761 toplev.c:1778
+#: toplev.c:1743 toplev.c:1760
#, c-format
msgid "`%s' is deprecated (declared at %s:%d)"
msgstr ""
-#: toplev.c:1781
+#: toplev.c:1763
#, c-format
msgid "`%s' is deprecated"
msgstr ""
-#: toplev.c:1784
+#: toplev.c:1766
#, c-format
msgid "type is deprecated (declared at %s:%d)"
msgstr ""
-#: toplev.c:1787
+#: toplev.c:1769
msgid "type is deprecated"
msgstr ""
-#: toplev.c:1984
+#: toplev.c:1973
#, c-format
msgid "invalid register name `%s' for register variable"
msgstr ""
-#: toplev.c:3590
+#: toplev.c:3546
msgid ""
"branch target register load optimization is not intended to be run twice"
msgstr ""
-#: toplev.c:3757
+#: toplev.c:3713
msgid ""
"\n"
"Target specific options:\n"
msgstr ""
-#: toplev.c:3771 toplev.c:3790
+#: toplev.c:3727 toplev.c:3746
#, c-format
msgid " -m%-23s [undocumented]\n"
msgstr ""
-#: toplev.c:3799
+#: toplev.c:3755
msgid ""
"\n"
"There are undocumented target specific options as well.\n"
msgstr ""
-#: toplev.c:3801
+#: toplev.c:3757
msgid " They exist, but they are not documented.\n"
msgstr ""
-#: toplev.c:3856
+#: toplev.c:3812
#, c-format
msgid "unrecognized gcc debugging option: %c"
msgstr ""
-#: toplev.c:3918 config/rs6000/rs6000.c:943
+#: toplev.c:3874 config/rs6000/rs6000.c:907
#, c-format
msgid "invalid option `%s'"
msgstr ""
-#: toplev.c:3933
+#: toplev.c:3889
#, c-format
msgid ""
"%s%s%s version %s (%s)\n"
@@ -6904,105 +6924,105 @@ msgid ""
"%s%s%s version %s (%s) compiled by CC.\n"
msgstr ""
-#: toplev.c:3940
+#: toplev.c:3896
#, c-format
msgid ""
"%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
msgstr ""
-#: toplev.c:3992
+#: toplev.c:3948
msgid "options passed: "
msgstr ""
-#: toplev.c:4021
+#: toplev.c:3977
msgid "options enabled: "
msgstr ""
-#: toplev.c:4079 java/jcf-write.c:3422
+#: toplev.c:4035 java/jcf-write.c:3422
#, c-format
msgid "can't open %s for writing: %m"
msgstr ""
-#: toplev.c:4162 config/sh/sh.c:6869
+#: toplev.c:4118 config/sh/sh.c:6883
msgid "created and used with different settings of -fpic"
msgstr ""
-#: toplev.c:4164 config/sh/sh.c:6871
+#: toplev.c:4120 config/sh/sh.c:6885
msgid "created and used with different settings of -fpie"
msgstr ""
-#: toplev.c:4215 config/sh/sh.c:6921
+#: toplev.c:4171 config/sh/sh.c:6935
#, c-format
msgid "created and used with differing settings of `-m%s'"
msgstr ""
-#: toplev.c:4218 config/sh/sh.c:6924
+#: toplev.c:4174 config/sh/sh.c:6938
msgid "out of memory"
msgstr ""
-#: toplev.c:4399
+#: toplev.c:4355
msgid "instruction scheduling not supported on this target machine"
msgstr ""
-#: toplev.c:4403
+#: toplev.c:4359
msgid "this target machine does not have delayed branches"
msgstr ""
-#: toplev.c:4417
+#: toplev.c:4373
#, c-format
msgid "-f%sleading-underscore not supported on this target machine"
msgstr ""
-#: toplev.c:4470
+#: toplev.c:4422
#, c-format
msgid "target system does not support the \"%s\" debug format"
msgstr ""
-#: toplev.c:4487
+#: toplev.c:4439
msgid "-ffunction-sections not supported for this target"
msgstr ""
-#: toplev.c:4492
+#: toplev.c:4444
msgid "-fdata-sections not supported for this target"
msgstr ""
-#: toplev.c:4499
+#: toplev.c:4451
msgid "-ffunction-sections disabled; it makes profiling impossible"
msgstr ""
-#: toplev.c:4506
+#: toplev.c:4458
msgid "-fprefetch-loop-arrays not supported for this target"
msgstr ""
-#: toplev.c:4512
+#: toplev.c:4464
msgid ""
"-fprefetch-loop-arrays not supported for this target (try -march switches)"
msgstr ""
-#: toplev.c:4521
+#: toplev.c:4473
msgid "-fprefetch-loop-arrays is not supported with -Os"
msgstr ""
-#: toplev.c:4527
+#: toplev.c:4479
msgid "-ffunction-sections may affect debugging on some targets"
msgstr ""
-#: toplev.c:4629
+#: toplev.c:4581
#, c-format
msgid "error writing to %s: %m"
msgstr ""
-#: toplev.c:4631 java/jcf-parse.c:909 java/jcf-write.c:3429
+#: toplev.c:4583 java/jcf-parse.c:902 java/jcf-write.c:3429
#, c-format
msgid "error closing %s: %m"
msgstr ""
-#: tree-dump.c:690
+#: tree-dump.c:692
#, c-format
msgid "could not open dump file `%s'"
msgstr ""
-#: tree-dump.c:761
+#: tree-dump.c:763
#, c-format
msgid "ignoring unknown option `%.*s' in `-fdump-%s'"
msgstr ""
@@ -7048,6 +7068,10 @@ msgid ""
"%Jfunction '%F' can never be inlined because it uses variable sized variables"
msgstr ""
+#: tree-inline.c:1338 tree-inline.c:1345
+msgid "%Jinlining failed in call to '%F': %s"
+msgstr ""
+
#: tree-optimize.c:190
msgid "%Jsize of return value of '%D' is %u bytes"
msgstr ""
@@ -7056,145 +7080,183 @@ msgstr ""
msgid "%Jsize of return value of '%D' is larger than %wd bytes"
msgstr ""
-#: tree.c:3793
+#: tree.c:3800
msgid "arrays of functions are not meaningful"
msgstr ""
-#: tree.c:3848
+#: tree.c:3855
msgid "function return type cannot be function"
msgstr ""
-#: tree.c:4677
+#: tree.c:4684
msgid "invalid initializer for bit string"
msgstr ""
-#: tree.c:4729
+#: tree.c:4736
#, c-format
msgid "tree check: expected %s, have %s in %s, at %s:%d"
msgstr ""
-#: tree.c:4742
+#: tree.c:4749
#, c-format
msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d"
msgstr ""
-#: tree.c:4755
+#: tree.c:4762
#, c-format
msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
msgstr ""
-#: tree.c:4767
+#: tree.c:4774
#, c-format
msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
msgstr ""
-#: varasm.c:435
+#: varasm.c:434
msgid "%J%D causes a section type conflict"
msgstr ""
-#: varasm.c:803
+#: varasm.c:796
msgid "%Jregister name not specified for '%D'"
msgstr ""
-#: varasm.c:805
+#: varasm.c:798
msgid "%Jinvalid register name for '%D'"
msgstr ""
-#: varasm.c:807
+#: varasm.c:800
msgid "%Jdata type of '%D' isn't suitable for a register"
msgstr ""
-#: varasm.c:810
+#: varasm.c:803
msgid "%Jregister specified for '%D' isn't suitable for data type"
msgstr ""
-#: varasm.c:820
+#: varasm.c:813
msgid "global register variable has initial value"
msgstr ""
-#: varasm.c:823
+#: varasm.c:816
msgid "volatile register variables don't work as you might wish"
msgstr ""
-#: varasm.c:855
+#: varasm.c:848
msgid "%Jregister name given for non-register variable '%D'"
msgstr ""
-#: varasm.c:1387
+#: varasm.c:1380
msgid "%Jstorage size of `%D' isn't known"
msgstr ""
-#: varasm.c:1441
+#: varasm.c:1434
msgid ""
"%Jalignment of '%D' is greater than maximum object file alignment. Using %d"
msgstr ""
-#: varasm.c:1487
+#: varasm.c:1480
msgid "thread-local COMMON data not implemented"
msgstr ""
-#: varasm.c:1512
+#: varasm.c:1505
msgid ""
"%Jrequested alignment for '%D' is greater than implemented alignment of %d"
msgstr ""
-#: varasm.c:3757
+#: varasm.c:3789
msgid "initializer for integer value is too complicated"
msgstr ""
-#: varasm.c:3762
+#: varasm.c:3794
msgid "initializer for floating value is not a floating constant"
msgstr ""
-#: varasm.c:3828
+#: varasm.c:3860
msgid "unknown set constructor type"
msgstr ""
-#: varasm.c:4047
+#: varasm.c:4079
#, c-format
msgid "invalid initial value for member `%s'"
msgstr ""
-#: varasm.c:4234 varasm.c:4278
+#: varasm.c:4266 varasm.c:4310
msgid "%Jweak declaration of '%D' must precede definition"
msgstr ""
-#: varasm.c:4242
+#: varasm.c:4274
msgid ""
"%Jweak declaration of '%D' after first use results in unspecified behavior"
msgstr ""
-#: varasm.c:4276
+#: varasm.c:4308
msgid "%Jweak declaration of '%D' must be public"
msgstr ""
-#: varasm.c:4285
+#: varasm.c:4317
msgid "%Jweak declaration of '%D' not supported"
msgstr ""
-#: varasm.c:4314 varasm.c:4387
+#: varasm.c:4346 varasm.c:4436
msgid "only weak aliases are supported in this configuration"
msgstr ""
-#: varasm.c:4395
+#: varasm.c:4439
msgid "alias definitions not supported in this configuration; ignored"
msgstr ""
-#: varasm.c:4424
+#: varasm.c:4468
msgid "visibility attribute not supported in this configuration; ignored"
msgstr ""
-#: varray.c:127
+#: varray.c:194
#, c-format
msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d"
msgstr ""
+#: varray.c:204
+#, c-format
+msgid "underflowed virtual array %s in %s, at %s:%d"
+msgstr ""
+
#. Print an error message for unrecognized stab codes.
#: xcoffout.c:173
#, c-format
msgid "no sclass for %s stab (0x%x)\n"
msgstr ""
+#.
+#. Local variables:
+#. mode:c
+#. End:
+#.
+#: diagnostic.def:1
+msgid "fatal error: "
+msgstr ""
+
+#: diagnostic.def:2
+msgid "internal compiler error: "
+msgstr ""
+
+#: diagnostic.def:3
+msgid "error: "
+msgstr ""
+
+#: diagnostic.def:4
+msgid "sorry, unimplemented: "
+msgstr ""
+
+#: diagnostic.def:6
+msgid "anachronism: "
+msgstr ""
+
+#: diagnostic.def:7
+msgid "note: "
+msgstr ""
+
+#: diagnostic.def:8
+msgid "debug: "
+msgstr ""
+
#: params.def:53
msgid ""
"The maximum number of instructions in a single function eligible for inlining"
@@ -7243,112 +7305,122 @@ msgstr ""
msgid "The maximum number of passes to make when doing GCSE"
msgstr ""
-#: params.def:139
+#: params.def:144
msgid "The maximum number of instructions to consider to unroll in a loop"
msgstr ""
-#: params.def:145
+#: params.def:150
msgid ""
"The maximum number of instructions to consider to unroll in a loop on average"
msgstr ""
-#: params.def:150
+#: params.def:155
msgid "The maximum number of unrollings of a single loop"
msgstr ""
-#: params.def:155
+#: params.def:160
msgid "The maximum number of insns of a peeled loop"
msgstr ""
-#: params.def:160
+#: params.def:165
msgid "The maximum number of peelings of a single loop"
msgstr ""
-#: params.def:165
+#: params.def:170
msgid "The maximum number of insns of a completely peeled loop"
msgstr ""
-#: params.def:170
+#: params.def:175
msgid ""
"The maximum number of peelings of a single loop that is peeled completely"
msgstr ""
-#: params.def:175
+#: params.def:180
msgid "The maximum number of insns of a peeled loop that rolls only once"
msgstr ""
-#: params.def:181
+#: params.def:186
msgid "The maximum number of insns of an unswitched loop"
msgstr ""
-#: params.def:186
+#: params.def:191
msgid "The maximum number of unswitchings in a single loop"
msgstr ""
-#: params.def:191
+#: params.def:196
msgid ""
"Select fraction of the maximal count of repetitions of basic block in "
"program given basic block needs to have to be considered hot"
msgstr ""
-#: params.def:196
+#: params.def:201
msgid ""
"Select fraction of the maximal frequency of executions of basic block in "
"function given basic block needs to have to be considered hot"
msgstr ""
-#: params.def:201
+#: params.def:206
msgid ""
"The percentage of function, weighted by execution frequency, that must be "
"covered by trace formation. Used when profile feedback is available"
msgstr ""
-#: params.def:206
+#: params.def:211
msgid ""
"The percentage of function, weighted by execution frequency, that must be "
"covered by trace formation. Used when profile feedback is not available"
msgstr ""
-#: params.def:211
+#: params.def:216
msgid "Maximal code growth caused by tail duplication (in percent)"
msgstr ""
-#: params.def:215
+#: params.def:220
msgid ""
"Stop reverse growth if the reverse probability of best edge is less than "
"this threshold (in percent)"
msgstr ""
-#: params.def:220
+#: params.def:225
msgid ""
"Stop forward growth if the probability of best edge is less than this "
"threshold (in percent). Used when profile feedback is available"
msgstr ""
-#: params.def:225
+#: params.def:230
msgid ""
"Stop forward growth if the probability of best edge is less than this "
"threshold (in percent). Used when profile feedback is not available"
msgstr ""
-#: params.def:232
+#: params.def:237
msgid "The maximum number of incoming edges to consider for crossjumping"
msgstr ""
-#: params.def:238
+#: params.def:243
msgid "The maximum length of path considered in cse"
msgstr ""
-#: params.def:251
+#: params.def:248
+msgid "The maximum memory locations recorded by cselib"
+msgstr ""
+
+#: params.def:261
msgid ""
"Minimum heap expansion to trigger garbage collection, as a percentage of the "
"total size of the heap"
msgstr ""
-#: params.def:257
+#: params.def:267
msgid "Minimum heap size before we start collecting garbage, in kilobytes"
msgstr ""
+#: params.def:275
+msgid ""
+"The maximum number of instructions to search backward when looking for "
+"equivalent reload"
+msgstr ""
+
#: config/darwin-c.c:75
msgid "too many #pragma options align=reset"
msgstr ""
@@ -7424,7 +7496,7 @@ msgstr ""
msgid "bad value `%s' for -mfp-trap-mode switch"
msgstr ""
-#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1097
+#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1070
#, c-format
msgid "bad value `%s' for -mtls-size switch"
msgstr ""
@@ -7450,100 +7522,104 @@ msgstr ""
msgid "trap mode not supported for VAX floats"
msgstr ""
-#: config/alpha/alpha.c:419
+#: config/alpha/alpha.c:394
+msgid "128-bit long double not supported for VAX floats"
+msgstr ""
+
+#: config/alpha/alpha.c:422
#, c-format
msgid "L%d cache latency unknown for %s"
msgstr ""
-#: config/alpha/alpha.c:434
+#: config/alpha/alpha.c:437
#, c-format
msgid "bad value `%s' for -mmemory-latency"
msgstr ""
-#: config/alpha/alpha.c:5386
+#: config/alpha/alpha.c:5425
#, c-format
msgid "invalid %%H value"
msgstr ""
-#: config/alpha/alpha.c:5407
+#: config/alpha/alpha.c:5446
#, c-format
msgid "invalid %%J value"
msgstr ""
-#: config/alpha/alpha.c:5423 config/ia64/ia64.c:4069
+#: config/alpha/alpha.c:5462 config/ia64/ia64.c:4260
#, c-format
msgid "invalid %%r value"
msgstr ""
-#: config/alpha/alpha.c:5433 config/rs6000/rs6000.c:8880
-#: config/xtensa/xtensa.c:1975
+#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:9012
+#: config/xtensa/xtensa.c:2013
#, c-format
msgid "invalid %%R value"
msgstr ""
-#: config/alpha/alpha.c:5439 config/rs6000/rs6000.c:8799
-#: config/xtensa/xtensa.c:1942
+#: config/alpha/alpha.c:5478 config/rs6000/rs6000.c:8931
+#: config/xtensa/xtensa.c:1980
#, c-format
msgid "invalid %%N value"
msgstr ""
-#: config/alpha/alpha.c:5447 config/rs6000/rs6000.c:8827
+#: config/alpha/alpha.c:5486 config/rs6000/rs6000.c:8959
#, c-format
msgid "invalid %%P value"
msgstr ""
-#: config/alpha/alpha.c:5455
+#: config/alpha/alpha.c:5494
#, c-format
msgid "invalid %%h value"
msgstr ""
-#: config/alpha/alpha.c:5463 config/xtensa/xtensa.c:1968
+#: config/alpha/alpha.c:5502 config/xtensa/xtensa.c:2006
#, c-format
msgid "invalid %%L value"
msgstr ""
-#: config/alpha/alpha.c:5502 config/rs6000/rs6000.c:8781
+#: config/alpha/alpha.c:5541 config/rs6000/rs6000.c:8913
#, c-format
msgid "invalid %%m value"
msgstr ""
-#: config/alpha/alpha.c:5510 config/rs6000/rs6000.c:8789
+#: config/alpha/alpha.c:5549 config/rs6000/rs6000.c:8921
#, c-format
msgid "invalid %%M value"
msgstr ""
-#: config/alpha/alpha.c:5554
+#: config/alpha/alpha.c:5593
#, c-format
msgid "invalid %%U value"
msgstr ""
-#: config/alpha/alpha.c:5566 config/alpha/alpha.c:5580
-#: config/rs6000/rs6000.c:8888
+#: config/alpha/alpha.c:5605 config/alpha/alpha.c:5619
+#: config/rs6000/rs6000.c:9020
#, c-format
msgid "invalid %%s value"
msgstr ""
-#: config/alpha/alpha.c:5603
+#: config/alpha/alpha.c:5642
#, c-format
msgid "invalid %%C value"
msgstr ""
-#: config/alpha/alpha.c:5640 config/rs6000/rs6000.c:8638
+#: config/alpha/alpha.c:5679 config/rs6000/rs6000.c:8770
#, c-format
msgid "invalid %%E value"
msgstr ""
-#: config/alpha/alpha.c:5665 config/alpha/alpha.c:5713
+#: config/alpha/alpha.c:5704 config/alpha/alpha.c:5752
msgid "unknown relocation unspec"
msgstr ""
-#: config/alpha/alpha.c:5674 config/rs6000/rs6000.c:9201
+#: config/alpha/alpha.c:5713 config/rs6000/rs6000.c:9333
#, c-format
msgid "invalid %%xn code"
msgstr ""
-#: config/alpha/alpha.c:6602 config/alpha/alpha.c:6605 config/s390/s390.c:6619
-#: config/s390/s390.c:6622
+#: config/alpha/alpha.c:6657 config/alpha/alpha.c:6660 config/s390/s390.c:6575
+#: config/s390/s390.c:6578
msgid "bad builtin fcode"
msgstr ""
@@ -7552,94 +7628,101 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/alpha/alpha.h:286 config/i386/i386.h:327 config/i386/i386.h:329
-#: config/i386/i386.h:331 config/ns32k/ns32k.h:140 config/rs6000/rs6000.h:297
-#: config/s390/s390.h:123 config/sparc/sparc.h:537 config/sparc/sparc.h:542
+#: config/alpha/alpha.h:293 config/i386/i386.h:327 config/i386/i386.h:329
+#: config/i386/i386.h:331 config/ns32k/ns32k.h:140 config/s390/s390.h:124
+#: config/sparc/sparc.h:543 config/sparc/sparc.h:548
msgid "Use hardware fp"
msgstr ""
-#: config/alpha/alpha.h:287 config/i386/i386.h:328 config/i386/i386.h:330
-#: config/rs6000/rs6000.h:299 config/sparc/sparc.h:539
-#: config/sparc/sparc.h:544
+#: config/alpha/alpha.h:294 config/i386/i386.h:328 config/i386/i386.h:330
+#: config/sparc/sparc.h:545 config/sparc/sparc.h:550
msgid "Do not use hardware fp"
msgstr ""
-#: config/alpha/alpha.h:288
+#: config/alpha/alpha.h:295
msgid "Use fp registers"
msgstr ""
-#: config/alpha/alpha.h:290
+#: config/alpha/alpha.h:297
msgid "Do not use fp registers"
msgstr ""
-#: config/alpha/alpha.h:291
+#: config/alpha/alpha.h:298
msgid "Do not assume GAS"
msgstr ""
-#: config/alpha/alpha.h:292
+#: config/alpha/alpha.h:299
msgid "Assume GAS"
msgstr ""
-#: config/alpha/alpha.h:294
+#: config/alpha/alpha.h:301
msgid "Request IEEE-conformant math library routines (OSF/1)"
msgstr ""
-#: config/alpha/alpha.h:296
+#: config/alpha/alpha.h:303
msgid "Emit IEEE-conformant code, without inexact exceptions"
msgstr ""
-#: config/alpha/alpha.h:298
+#: config/alpha/alpha.h:305
msgid "Emit IEEE-conformant code, with inexact exceptions"
msgstr ""
-#: config/alpha/alpha.h:300
+#: config/alpha/alpha.h:307
msgid "Do not emit complex integer constants to read-only memory"
msgstr ""
-#: config/alpha/alpha.h:301
+#: config/alpha/alpha.h:308
msgid "Use VAX fp"
msgstr ""
-#: config/alpha/alpha.h:302
+#: config/alpha/alpha.h:309
msgid "Do not use VAX fp"
msgstr ""
-#: config/alpha/alpha.h:303
+#: config/alpha/alpha.h:310
msgid "Emit code for the byte/word ISA extension"
msgstr ""
-#: config/alpha/alpha.h:306
+#: config/alpha/alpha.h:313
msgid "Emit code for the motion video ISA extension"
msgstr ""
-#: config/alpha/alpha.h:309
+#: config/alpha/alpha.h:316
msgid "Emit code for the fp move and sqrt ISA extension"
msgstr ""
-#: config/alpha/alpha.h:311
+#: config/alpha/alpha.h:318
msgid "Emit code for the counting ISA extension"
msgstr ""
-#: config/alpha/alpha.h:314
+#: config/alpha/alpha.h:321
msgid "Emit code using explicit relocation directives"
msgstr ""
-#: config/alpha/alpha.h:317
+#: config/alpha/alpha.h:324
msgid "Emit 16-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:319
+#: config/alpha/alpha.h:326
msgid "Emit 32-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:321
+#: config/alpha/alpha.h:328
msgid "Emit direct branches to local functions"
msgstr ""
-#: config/alpha/alpha.h:324
+#: config/alpha/alpha.h:331
msgid "Emit rdval instead of rduniq for thread pointer"
msgstr ""
+#: config/alpha/alpha.h:333
+msgid "Use 128-bit long double"
+msgstr ""
+
+#: config/alpha/alpha.h:335
+msgid "Use 64-bit long double"
+msgstr ""
+
#. For -mcpu=
#. For -mtune=
#. For -mfp-rounding-mode=[n|m|c|d]
@@ -7647,31 +7730,31 @@ msgstr ""
#. For -mtrap-precision=[p|f|i]
#. For -mmemory-latency=
#. For -mtls-size=
-#: config/alpha/alpha.h:353
+#: config/alpha/alpha.h:364
msgid "Use features of and schedule given CPU"
msgstr ""
-#: config/alpha/alpha.h:355
+#: config/alpha/alpha.h:366
msgid "Schedule given CPU"
msgstr ""
-#: config/alpha/alpha.h:357
+#: config/alpha/alpha.h:368
msgid "Control the generated fp rounding mode"
msgstr ""
-#: config/alpha/alpha.h:359
+#: config/alpha/alpha.h:370
msgid "Control the IEEE trap mode"
msgstr ""
-#: config/alpha/alpha.h:361
+#: config/alpha/alpha.h:372
msgid "Control the precision given to fp exceptions"
msgstr ""
-#: config/alpha/alpha.h:363
+#: config/alpha/alpha.h:374
msgid "Tune expected memory latency"
msgstr ""
-#: config/alpha/alpha.h:365 config/ia64/ia64.h:258 config/rs6000/sysv4.h:90
+#: config/alpha/alpha.h:376 config/ia64/ia64.h:267 config/rs6000/sysv4.h:90
msgid "Specify bit size of immediate TLS offsets"
msgstr ""
@@ -7690,154 +7773,158 @@ msgstr ""
msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\""
msgstr ""
-#: config/arc/arc.c:1713 config/m32r/m32r.c:2281
+#: config/arc/arc.c:1714 config/m32r/m32r.c:2325
#, c-format
msgid "invalid operand to %%R code"
msgstr ""
-#: config/arc/arc.c:1745 config/m32r/m32r.c:2304
+#: config/arc/arc.c:1746 config/m32r/m32r.c:2348
#, c-format
msgid "invalid operand to %%H/%%L code"
msgstr ""
-#: config/arc/arc.c:1768 config/m32r/m32r.c:2375
+#: config/arc/arc.c:1769 config/m32r/m32r.c:2419
#, c-format
msgid "invalid operand to %%U code"
msgstr ""
-#: config/arc/arc.c:1779
+#: config/arc/arc.c:1780
#, c-format
msgid "invalid operand to %%V code"
msgstr ""
#. Unknown flag.
-#: config/arc/arc.c:1786 config/m32r/m32r.c:2408 config/sparc/sparc.c:6858
+#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985
msgid "invalid operand output code"
msgstr ""
-#: config/arm/arm.c:519
+#: config/arm/arm.c:520
#, c-format
msgid "switch -mcpu=%s conflicts with -march= switch"
msgstr ""
-#: config/arm/arm.c:529 config/rs6000/rs6000.c:793 config/sparc/sparc.c:419
+#: config/arm/arm.c:530 config/rs6000/rs6000.c:760 config/sparc/sparc.c:424
#, c-format
msgid "bad value (%s) for %s switch"
msgstr ""
-#: config/arm/arm.c:671
+#: config/arm/arm.c:672
msgid "target CPU does not support APCS-32"
msgstr ""
-#: config/arm/arm.c:676
+#: config/arm/arm.c:677
msgid "target CPU does not support APCS-26"
msgstr ""
-#: config/arm/arm.c:682
+#: config/arm/arm.c:683
msgid "target CPU does not support interworking"
msgstr ""
-#: config/arm/arm.c:688
+#: config/arm/arm.c:689
msgid "target CPU does not support THUMB instructions"
msgstr ""
-#: config/arm/arm.c:702
+#: config/arm/arm.c:694
+msgid "future releases of GCC will not support -mapcs-26"
+msgstr ""
+
+#: config/arm/arm.c:706
msgid ""
"enabling backtrace support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:705
+#: config/arm/arm.c:709
msgid ""
"enabling callee interworking support is only meaningful when compiling for "
"the Thumb"
msgstr ""
-#: config/arm/arm.c:708
+#: config/arm/arm.c:712
msgid ""
"enabling caller interworking support is only meaningful when compiling for "
"the Thumb"
msgstr ""
-#: config/arm/arm.c:714
+#: config/arm/arm.c:718
msgid "interworking forces APCS-32 to be used"
msgstr ""
-#: config/arm/arm.c:720
+#: config/arm/arm.c:724
msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
msgstr ""
-#: config/arm/arm.c:728
+#: config/arm/arm.c:732
msgid "-fpic and -mapcs-reent are incompatible"
msgstr ""
-#: config/arm/arm.c:731
+#: config/arm/arm.c:735
msgid "APCS reentrant code not supported. Ignored"
msgstr ""
-#: config/arm/arm.c:739
+#: config/arm/arm.c:743
msgid "-g with -mno-apcs-frame may not give sensible debugging"
msgstr ""
-#: config/arm/arm.c:747
+#: config/arm/arm.c:751
msgid "passing floating point arguments in fp regs not yet supported"
msgstr ""
-#: config/arm/arm.c:791
+#: config/arm/arm.c:795
#, c-format
msgid "invalid floating point emulation option: -mfpe-%s"
msgstr ""
-#: config/arm/arm.c:802
+#: config/arm/arm.c:806
msgid "-mfpe switch not supported by ep9312 target cpu - ignored."
msgstr ""
-#: config/arm/arm.c:822
+#: config/arm/arm.c:826
msgid "structure size boundary can only be set to 8 or 32"
msgstr ""
-#: config/arm/arm.c:830
+#: config/arm/arm.c:834
msgid "-mpic-register= is useless without -fpic"
msgstr ""
-#: config/arm/arm.c:837
+#: config/arm/arm.c:841
#, c-format
msgid "unable to use '%s' for PIC register"
msgstr ""
-#: config/arm/arm.c:2201 config/arm/arm.c:2219 config/avr/avr.c:4580
-#: config/c4x/c4x.c:4445 config/h8300/h8300.c:4255 config/i386/i386.c:1565
-#: config/i386/i386.c:1611 config/ip2k/ip2k.c:3234
-#: config/m68hc11/m68hc11.c:1227 config/m68k/m68k.c:344
-#: config/mcore/mcore.c:3374 config/ns32k/ns32k.c:1091
-#: config/rs6000/rs6000.c:14496 config/sh/sh.c:6723 config/sh/sh.c:6744
-#: config/sh/sh.c:6779 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173
+#: config/arm/arm.c:2249 config/arm/arm.c:2267 config/avr/avr.c:4558
+#: config/c4x/c4x.c:4447 config/h8300/h8300.c:4260 config/i386/i386.c:1580
+#: config/i386/i386.c:1626 config/ip2k/ip2k.c:3169
+#: config/m68hc11/m68hc11.c:1293 config/m68k/m68k.c:345
+#: config/mcore/mcore.c:3375 config/ns32k/ns32k.c:1064
+#: config/rs6000/rs6000.c:14624 config/sh/sh.c:6737 config/sh/sh.c:6758
+#: config/sh/sh.c:6793 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173
#, c-format
msgid "`%s' attribute only applies to functions"
msgstr ""
-#: config/arm/arm.c:10455
+#: config/arm/arm.c:10576
msgid "unable to compute real location of stacked parameter"
msgstr ""
#. @@@ better error message
-#: config/arm/arm.c:11083 config/arm/arm.c:11120
+#: config/arm/arm.c:11204 config/arm/arm.c:11241
msgid "selector must be an immediate"
msgstr ""
#. @@@ better error message
-#: config/arm/arm.c:11163 config/i386/i386.c:14189 config/i386/i386.c:14223
+#: config/arm/arm.c:11284 config/i386/i386.c:14300 config/i386/i386.c:14334
msgid "mask must be an immediate"
msgstr ""
-#: config/arm/arm.c:11826
+#: config/arm/arm.c:11979
msgid "no low registers available for popping high registers"
msgstr ""
-#: config/arm/arm.c:12071
+#: config/arm/arm.c:12229
msgid "interrupt Service Routines cannot be coded in Thumb mode"
msgstr ""
-#: config/arm/pe.c:170 config/mcore/mcore.c:3240
+#: config/arm/pe.c:170 config/mcore/mcore.c:3241
msgid "%Jinitialized variable '%D' is marked dllimport"
msgstr ""
@@ -7845,22 +7932,18 @@ msgstr ""
msgid "%Jstatic variable '%D' is marked dllimport"
msgstr ""
-#: config/arm/arm.h:450
+#: config/arm/arm.h:451
msgid "Generate APCS conformant stack frames"
msgstr ""
-#: config/arm/arm.h:453
+#: config/arm/arm.h:454
msgid "Store function names in object code"
msgstr ""
-#: config/arm/arm.h:457
+#: config/arm/arm.h:458
msgid "Use the 32-bit version of the APCS"
msgstr ""
-#: config/arm/arm.h:459
-msgid "Use the 26-bit version of the APCS"
-msgstr ""
-
#: config/arm/arm.h:463
msgid "Pass FP arguments in FP registers"
msgstr ""
@@ -7873,91 +7956,91 @@ msgstr ""
msgid "The MMU will trap on unaligned accesses"
msgstr ""
-#: config/arm/arm.h:476
+#: config/arm/arm.h:472
msgid "Use library calls to perform FP operations"
msgstr ""
-#: config/arm/arm.h:478 config/i960/i960.h:291
+#: config/arm/arm.h:474 config/i960/i960.h:291
msgid "Use hardware floating point instructions"
msgstr ""
-#: config/arm/arm.h:480
+#: config/arm/arm.h:476
msgid "Assume target CPU is configured as big endian"
msgstr ""
-#: config/arm/arm.h:482
+#: config/arm/arm.h:478
msgid "Assume target CPU is configured as little endian"
msgstr ""
-#: config/arm/arm.h:484
+#: config/arm/arm.h:480
msgid "Assume big endian bytes, little endian words"
msgstr ""
-#: config/arm/arm.h:486
+#: config/arm/arm.h:482
msgid "Support calls between Thumb and ARM instruction sets"
msgstr ""
-#: config/arm/arm.h:489
+#: config/arm/arm.h:485
msgid "Generate a call to abort if a noreturn function returns"
msgstr ""
-#: config/arm/arm.h:492
+#: config/arm/arm.h:488
msgid "Do not move instructions into a function's prologue"
msgstr ""
-#: config/arm/arm.h:495
+#: config/arm/arm.h:491
msgid "Do not load the PIC register in function prologues"
msgstr ""
-#: config/arm/arm.h:498
+#: config/arm/arm.h:494
msgid "Generate call insns as indirect calls, if necessary"
msgstr ""
-#: config/arm/arm.h:501
+#: config/arm/arm.h:497
msgid "Compile for the Thumb not the ARM"
msgstr ""
-#: config/arm/arm.h:505
+#: config/arm/arm.h:501
msgid "Thumb: Generate (non-leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.h:508
+#: config/arm/arm.h:504
msgid "Thumb: Generate (leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.h:511
+#: config/arm/arm.h:507
msgid "Thumb: Assume non-static functions may be called from ARM code"
msgstr ""
-#: config/arm/arm.h:515
+#: config/arm/arm.h:511
msgid "Thumb: Assume function pointers may go to non-Thumb aware code"
msgstr ""
-#: config/arm/arm.h:519
+#: config/arm/arm.h:515
msgid "Cirrus: Place NOPs to avoid invalid instruction combinations"
msgstr ""
-#: config/arm/arm.h:521
+#: config/arm/arm.h:517
msgid "Cirrus: Do not break up invalid instruction combinations with NOPs"
msgstr ""
-#: config/arm/arm.h:529
+#: config/arm/arm.h:525
msgid "Specify the name of the target CPU"
msgstr ""
-#: config/arm/arm.h:531
+#: config/arm/arm.h:527
msgid "Specify the name of the target architecture"
msgstr ""
-#: config/arm/arm.h:535
+#: config/arm/arm.h:531
msgid "Specify the version of the floating point emulator"
msgstr ""
-#: config/arm/arm.h:537
+#: config/arm/arm.h:533
msgid "Specify the minimum bit alignment of structures"
msgstr ""
-#: config/arm/arm.h:539
+#: config/arm/arm.h:535
msgid "Specify the register to be used for PIC addressing"
msgstr ""
@@ -7965,92 +8048,92 @@ msgstr ""
msgid "Ignore dllimport attribute for functions"
msgstr ""
-#: config/avr/avr.c:535
+#: config/avr/avr.c:514
#, c-format
msgid "large frame pointer change (%d) with -mtiny-stack"
msgstr ""
-#: config/avr/avr.c:1123
+#: config/avr/avr.c:1101
msgid "bad address, not (reg+disp):"
msgstr ""
-#: config/avr/avr.c:1131
+#: config/avr/avr.c:1109
msgid "internal compiler error. Bad address:"
msgstr ""
-#: config/avr/avr.c:1144
+#: config/avr/avr.c:1122
msgid "internal compiler error. Unknown mode:"
msgstr ""
-#: config/avr/avr.c:1766 config/avr/avr.c:2427
+#: config/avr/avr.c:1744 config/avr/avr.c:2405
msgid "invalid insn:"
msgstr ""
-#: config/avr/avr.c:1800 config/avr/avr.c:1883 config/avr/avr.c:1932
-#: config/avr/avr.c:1941 config/avr/avr.c:2036 config/avr/avr.c:2205
-#: config/avr/avr.c:2461 config/avr/avr.c:2569
+#: config/avr/avr.c:1778 config/avr/avr.c:1861 config/avr/avr.c:1910
+#: config/avr/avr.c:1919 config/avr/avr.c:2014 config/avr/avr.c:2183
+#: config/avr/avr.c:2439 config/avr/avr.c:2547
msgid "incorrect insn:"
msgstr ""
-#: config/avr/avr.c:1960 config/avr/avr.c:2121 config/avr/avr.c:2276
-#: config/avr/avr.c:2613
+#: config/avr/avr.c:1938 config/avr/avr.c:2099 config/avr/avr.c:2254
+#: config/avr/avr.c:2591
msgid "unknown move insn:"
msgstr ""
-#: config/avr/avr.c:2836
+#: config/avr/avr.c:2814
msgid "bad shift insn:"
msgstr ""
-#: config/avr/avr.c:2949 config/avr/avr.c:3370 config/avr/avr.c:3741
+#: config/avr/avr.c:2927 config/avr/avr.c:3348 config/avr/avr.c:3719
msgid "internal compiler error. Incorrect shift:"
msgstr ""
-#: config/avr/avr.c:4554 config/ip2k/ip2k.c:3207
+#: config/avr/avr.c:4532 config/ip2k/ip2k.c:3144
msgid "only initialized variables can be placed into program memory area"
msgstr ""
-#: config/avr/avr.c:4648
+#: config/avr/avr.c:4626
msgid "only uninitialized variables can be placed in the .noinit section"
msgstr ""
-#: config/avr/avr.c:4662
+#: config/avr/avr.c:4640
#, c-format
msgid "MCU `%s' supported for assembler only"
msgstr ""
-#: config/avr/avr.h:72
+#: config/avr/avr.h:73
msgid "Assume int to be 8 bit integer"
msgstr ""
-#: config/avr/avr.h:74
+#: config/avr/avr.h:75
msgid "Change the stack pointer without disabling interrupts"
msgstr ""
-#: config/avr/avr.h:76
+#: config/avr/avr.h:77
msgid "Use subroutines for function prologue/epilogue"
msgstr ""
-#: config/avr/avr.h:78
+#: config/avr/avr.h:79
msgid "Change only the low 8 bits of the stack pointer"
msgstr ""
-#: config/avr/avr.h:80
+#: config/avr/avr.h:81
msgid "Do not generate tablejump insns"
msgstr ""
-#: config/avr/avr.h:82
+#: config/avr/avr.h:83
msgid "Use rjmp/rcall (limited range) on >8K devices"
msgstr ""
-#: config/avr/avr.h:84
+#: config/avr/avr.h:85
msgid "Output instruction sizes to the asm file"
msgstr ""
-#: config/avr/avr.h:101
+#: config/avr/avr.h:102
msgid "Specify the initial stack address"
msgstr ""
-#: config/avr/avr.h:102
+#: config/avr/avr.h:103
msgid "Specify the MCU name"
msgstr ""
@@ -8062,7 +8145,7 @@ msgstr ""
#. For instance, the SH target has only positive offsets in
#. addresses. Thus sorting to put the smallest address first allows
#. the most combinations to be found.
-#: config/avr/avr.h:2266
+#: config/avr/avr.h:2268
msgid "trampolines not supported"
msgstr ""
@@ -8101,93 +8184,93 @@ msgstr ""
msgid "unknown CPU version %d, using 40.\n"
msgstr ""
-#: config/c4x/c4x.c:848
+#: config/c4x/c4x.c:850
#, c-format
msgid "ISR %s requires %d words of local vars, max is 32767"
msgstr ""
-#: config/c4x/c4x.c:1569
+#: config/c4x/c4x.c:1571
msgid "using CONST_DOUBLE for address"
msgstr ""
-#: config/c4x/c4x.c:1707
+#: config/c4x/c4x.c:1709
msgid "c4x_address_cost: Invalid addressing mode"
msgstr ""
-#: config/c4x/c4x.c:1842
+#: config/c4x/c4x.c:1844
#, c-format
msgid "c4x_print_operand: %%L inconsistency"
msgstr ""
-#: config/c4x/c4x.c:1848
+#: config/c4x/c4x.c:1850
#, c-format
msgid "c4x_print_operand: %%N inconsistency"
msgstr ""
-#: config/c4x/c4x.c:1889
+#: config/c4x/c4x.c:1891
#, c-format
msgid "c4x_print_operand: %%O inconsistency"
msgstr ""
-#: config/c4x/c4x.c:1984
+#: config/c4x/c4x.c:1986
msgid "c4x_print_operand: Bad operand case"
msgstr ""
-#: config/c4x/c4x.c:2025
+#: config/c4x/c4x.c:2027
msgid "c4x_print_operand_address: Bad post_modify"
msgstr ""
-#: config/c4x/c4x.c:2047
+#: config/c4x/c4x.c:2049
msgid "c4x_print_operand_address: Bad pre_modify"
msgstr ""
-#: config/c4x/c4x.c:2095 config/c4x/c4x.c:2107 config/c4x/c4x.c:2122
+#: config/c4x/c4x.c:2097 config/c4x/c4x.c:2109 config/c4x/c4x.c:2124
msgid "c4x_print_operand_address: Bad operand case"
msgstr ""
-#: config/c4x/c4x.c:2373
+#: config/c4x/c4x.c:2375
msgid "c4x_rptb_insert: Cannot find start label"
msgstr ""
-#: config/c4x/c4x.c:3290 config/c4x/c4x.c:3308
+#: config/c4x/c4x.c:3292 config/c4x/c4x.c:3310
msgid "mode not QImode"
msgstr ""
-#: config/c4x/c4x.c:3378
+#: config/c4x/c4x.c:3380
msgid "invalid indirect memory address"
msgstr ""
-#: config/c4x/c4x.c:3467
+#: config/c4x/c4x.c:3469
msgid "invalid indirect (S) memory address"
msgstr ""
-#: config/c4x/c4x.c:3795
+#: config/c4x/c4x.c:3797
msgid "c4x_valid_operands: Internal error"
msgstr ""
-#: config/c4x/c4x.c:4214
+#: config/c4x/c4x.c:4216
msgid "c4x_operand_subword: invalid mode"
msgstr ""
-#: config/c4x/c4x.c:4217
+#: config/c4x/c4x.c:4219
msgid "c4x_operand_subword: invalid operand"
msgstr ""
#. We could handle these with some difficulty.
#. e.g., *p-- => *(p-=2); *(p+1).
-#: config/c4x/c4x.c:4243
+#: config/c4x/c4x.c:4245
msgid "c4x_operand_subword: invalid autoincrement"
msgstr ""
-#: config/c4x/c4x.c:4249
+#: config/c4x/c4x.c:4251
msgid "c4x_operand_subword: invalid address"
msgstr ""
-#: config/c4x/c4x.c:4260
+#: config/c4x/c4x.c:4262
msgid "c4x_operand_subword: address not offsettable"
msgstr ""
-#: config/c4x/c4x.c:4470
+#: config/c4x/c4x.c:4472
msgid "c4x_rptb_rpts_p: Repeat block top label moved\n"
msgstr ""
@@ -8415,159 +8498,159 @@ msgstr ""
msgid "Select CPU to generate code for"
msgstr ""
-#: config/cris/cris.c:596
+#: config/cris/cris.c:604
msgid "unexpected index-type in cris_print_index"
msgstr ""
-#: config/cris/cris.c:610
+#: config/cris/cris.c:618
msgid "unexpected base-type in cris_print_base"
msgstr ""
-#: config/cris/cris.c:903
+#: config/cris/cris.c:911
#, c-format
msgid "stackframe too big: %d bytes"
msgstr ""
-#: config/cris/cris.c:1214
+#: config/cris/cris.c:1222
msgid "allocated but unused delay list in epilogue"
msgstr ""
-#: config/cris/cris.c:1224
+#: config/cris/cris.c:1232
msgid ""
"unexpected function type needing stack adjustment for __builtin_eh_return"
msgstr ""
-#: config/cris/cris.c:1300
+#: config/cris/cris.c:1308
msgid "invalid operand for 'b' modifier"
msgstr ""
-#: config/cris/cris.c:1313
+#: config/cris/cris.c:1321
msgid "invalid operand for 'v' modifier"
msgstr ""
-#: config/cris/cris.c:1323
+#: config/cris/cris.c:1331
msgid "invalid operand for 'P' modifier"
msgstr ""
-#: config/cris/cris.c:1330
+#: config/cris/cris.c:1338
msgid "invalid operand for 'p' modifier"
msgstr ""
-#: config/cris/cris.c:1369
+#: config/cris/cris.c:1377
msgid "invalid operand for 'z' modifier"
msgstr ""
-#: config/cris/cris.c:1400 config/cris/cris.c:1430
+#: config/cris/cris.c:1425 config/cris/cris.c:1455
msgid "invalid operand for 'H' modifier"
msgstr ""
-#: config/cris/cris.c:1406
+#: config/cris/cris.c:1431
msgid "bad register"
msgstr ""
-#: config/cris/cris.c:1444
+#: config/cris/cris.c:1469
msgid "invalid operand for 'e' modifier"
msgstr ""
-#: config/cris/cris.c:1461
+#: config/cris/cris.c:1486
msgid "invalid operand for 'm' modifier"
msgstr ""
-#: config/cris/cris.c:1486
+#: config/cris/cris.c:1511
msgid "invalid operand for 'A' modifier"
msgstr ""
-#: config/cris/cris.c:1494
+#: config/cris/cris.c:1519
msgid "invalid operand for 'D' modifier"
msgstr ""
-#: config/cris/cris.c:1508
+#: config/cris/cris.c:1533
msgid "invalid operand for 'T' modifier"
msgstr ""
-#: config/cris/cris.c:1517
+#: config/cris/cris.c:1542
msgid "invalid operand modifier letter"
msgstr ""
-#: config/cris/cris.c:1525
+#: config/cris/cris.c:1550
#, c-format
msgid "internal error: bad register: %d"
msgstr ""
-#: config/cris/cris.c:1573
+#: config/cris/cris.c:1598
msgid "unexpected multiplicative operand"
msgstr ""
-#: config/cris/cris.c:1593
+#: config/cris/cris.c:1618
msgid "unexpected operand"
msgstr ""
-#: config/cris/cris.c:1626 config/cris/cris.c:1636
+#: config/cris/cris.c:1651 config/cris/cris.c:1661
msgid "unrecognized address"
msgstr ""
-#: config/cris/cris.c:1986
+#: config/cris/cris.c:2011
msgid "internal error: sideeffect-insn affecting main effect"
msgstr ""
#. If we get here, the caller got its initial tests wrong.
-#: config/cris/cris.c:2379
+#: config/cris/cris.c:2404
msgid "internal error: cris_side_effect_mode_ok with bad operands"
msgstr ""
-#: config/cris/cris.c:2456 config/cris/cris.c:2518
+#: config/cris/cris.c:2481 config/cris/cris.c:2543
msgid "unrecognized supposed constant"
msgstr ""
-#: config/cris/cris.c:2563
+#: config/cris/cris.c:2588
msgid "unrecognized supposed constant in cris_global_pic_symbol"
msgstr ""
-#: config/cris/cris.c:2582
+#: config/cris/cris.c:2607
#, c-format
msgid "-max-stackframe=%d is not usable, not between 0 and %d"
msgstr ""
-#: config/cris/cris.c:2610
+#: config/cris/cris.c:2635
#, c-format
msgid "unknown CRIS version specification in -march= or -mcpu= : %s"
msgstr ""
-#: config/cris/cris.c:2646
+#: config/cris/cris.c:2671
#, c-format
msgid "unknown CRIS cpu version specification in -mtune= : %s"
msgstr ""
-#: config/cris/cris.c:2664
+#: config/cris/cris.c:2689
msgid "-fPIC and -fpic are not supported in this configuration"
msgstr ""
-#: config/cris/cris.c:2680
+#: config/cris/cris.c:2705
msgid "that particular -g option is invalid with -maout and -melinux"
msgstr ""
-#: config/cris/cris.c:2935 config/cris/cris.c:2980
+#: config/cris/cris.c:2960 config/cris/cris.c:3005
msgid "unexpected side-effects in address"
msgstr ""
#. Labels are never marked as global symbols.
-#: config/cris/cris.c:3075 config/cris/cris.c:3106
+#: config/cris/cris.c:3100 config/cris/cris.c:3131
msgid "unexpected PIC symbol"
msgstr ""
-#: config/cris/cris.c:3079
+#: config/cris/cris.c:3104
msgid "PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:3092 config/cris/cris.c:3175
+#: config/cris/cris.c:3117 config/cris/cris.c:3200
msgid "unexpected address expression"
msgstr ""
-#: config/cris/cris.c:3110
+#: config/cris/cris.c:3135
msgid "emitting PIC operand, but PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:3119
+#: config/cris/cris.c:3144
msgid "unexpected NOTE as addr_const:"
msgstr ""
@@ -8579,137 +8662,141 @@ msgstr ""
msgid "For elinux, request a specified stack-size for this program"
msgstr ""
+#: config/cris/cris.h:362
+msgid "Work around bug in multiplication instruction"
+msgstr ""
+
#. No "no-etrax" as it does not really imply any model. On the other hand, "etrax" implies the common (and large) subset matching all models.
-#: config/cris/cris.h:332
+#: config/cris/cris.h:368
msgid "Compile for ETRAX 4 (CRIS v3)"
msgstr ""
-#: config/cris/cris.h:337
+#: config/cris/cris.h:373
msgid "Compile for ETRAX 100 (CRIS v8)"
msgstr ""
-#: config/cris/cris.h:341
+#: config/cris/cris.h:377
msgid "Emit verbose debug information in assembly code"
msgstr ""
-#: config/cris/cris.h:344
+#: config/cris/cris.h:380
msgid "Do not use condition codes from normal instructions"
msgstr ""
-#: config/cris/cris.h:348
+#: config/cris/cris.h:384
msgid "Do not emit addressing modes with side-effect assignment"
msgstr ""
-#: config/cris/cris.h:351
+#: config/cris/cris.h:387
msgid "Do not tune stack alignment"
msgstr ""
-#: config/cris/cris.h:354
+#: config/cris/cris.h:390
msgid "Do not tune writable data alignment"
msgstr ""
-#: config/cris/cris.h:357
+#: config/cris/cris.h:393
msgid "Do not tune code and read-only data alignment"
msgstr ""
-#: config/cris/cris.h:366
+#: config/cris/cris.h:402
msgid "Align code and data to 32 bits"
msgstr ""
-#: config/cris/cris.h:379
+#: config/cris/cris.h:415
msgid "Don't align items in code or data"
msgstr ""
-#: config/cris/cris.h:382
+#: config/cris/cris.h:418
msgid "Do not emit function prologue or epilogue"
msgstr ""
#. We have to handle this m-option here since we can't wash it off in both CC1_SPEC and CC1PLUS_SPEC.
-#: config/cris/cris.h:386
+#: config/cris/cris.h:422
msgid "Use the most feature-enabling options allowed by other options"
msgstr ""
#. We must call it "override-" since calling it "no-" will cause gcc.c to forget it, if there's a "later" -mbest-lib-options. Kludgy, but needed for some multilibbed files.
-#: config/cris/cris.h:392
+#: config/cris/cris.h:428
msgid "Override -mbest-lib-options"
msgstr ""
-#: config/cris/cris.h:424
+#: config/cris/cris.h:460
msgid "Generate code for the specified chip or CPU version"
msgstr ""
-#: config/cris/cris.h:426
+#: config/cris/cris.h:462
msgid "Tune alignment for the specified chip or CPU version"
msgstr ""
-#: config/cris/cris.h:428
+#: config/cris/cris.h:464
msgid "Warn when a stackframe is larger than the specified size"
msgstr ""
#. Node: Profiling
-#: config/cris/cris.h:1014
+#: config/cris/cris.h:1050
msgid "no FUNCTION_PROFILER for CRIS"
msgstr ""
-#: config/cris/linux.h:71
+#: config/cris/linux.h:69
msgid "Together with -fpic and -fPIC, do not use GOTPLT references"
msgstr ""
-#: config/d30v/d30v.c:219
+#: config/d30v/d30v.c:218
#, c-format
msgid "bad modes_tieable_p for register %s, mode1 %s, mode2 %s"
msgstr ""
-#: config/d30v/d30v.c:2679
+#: config/d30v/d30v.c:2678
msgid "bad insn to d30v_print_operand_address:"
msgstr ""
-#: config/d30v/d30v.c:2696 config/d30v/d30v.c:2757 config/d30v/d30v.c:2778
-#: config/d30v/d30v.c:2796
+#: config/d30v/d30v.c:2695 config/d30v/d30v.c:2756 config/d30v/d30v.c:2777
+#: config/d30v/d30v.c:2795
msgid "bad insn to d30v_print_operand_memory_reference:"
msgstr ""
-#: config/d30v/d30v.c:2864
+#: config/d30v/d30v.c:2863
msgid "bad insn to d30v_print_operand, 'f' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2873
+#: config/d30v/d30v.c:2872
msgid "bad insn to d30v_print_operand, 'A' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2880
+#: config/d30v/d30v.c:2879
msgid "bad insn to d30v_print_operand, 'M' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2934
+#: config/d30v/d30v.c:2933
msgid "bad insn to print_operand, 'F' or 'T' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2945
+#: config/d30v/d30v.c:2944
msgid "bad insn to print_operand, 'B' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2952
+#: config/d30v/d30v.c:2951
msgid "bad insn to print_operand, 'E' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2970
+#: config/d30v/d30v.c:2969
msgid "bad insn to print_operand, 'R' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2979 config/d30v/d30v.c:2987
+#: config/d30v/d30v.c:2978 config/d30v/d30v.c:2986
msgid "bad insn to print_operand, 's' modifier:"
msgstr ""
-#: config/d30v/d30v.c:3016
+#: config/d30v/d30v.c:3015
msgid "bad insn in d30v_print_operand, 0 case"
msgstr ""
-#: config/d30v/d30v.c:3314
+#: config/d30v/d30v.c:3313
msgid "d30v_emit_comparison"
msgstr ""
-#: config/d30v/d30v.c:3358
+#: config/d30v/d30v.c:3357
msgid "bad call to d30v_move_2words"
msgstr ""
@@ -8880,58 +8967,58 @@ msgstr ""
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/dsp16xx/dsp16xx.h:1218 config/dsp16xx/dsp16xx.h:1669
-#: config/dsp16xx/dsp16xx.h:1674
+#: config/dsp16xx/dsp16xx.h:1217 config/dsp16xx/dsp16xx.h:1668
+#: config/dsp16xx/dsp16xx.h:1673
msgid "profiling not implemented yet"
msgstr ""
#. Emit RTL insns to initialize the variable parts of a trampoline.
#. FNADDR is an RTX for the address of the function's pure code.
#. CXT is an RTX for the static chain value for the function.
-#: config/dsp16xx/dsp16xx.h:1228 config/dsp16xx/dsp16xx.h:1240
+#: config/dsp16xx/dsp16xx.h:1227 config/dsp16xx/dsp16xx.h:1239
msgid "trampolines not yet implemented"
msgstr ""
-#: config/fr30/fr30.c:456
+#: config/fr30/fr30.c:451
msgid "fr30_print_operand_address: unhandled address"
msgstr ""
-#: config/fr30/fr30.c:483
+#: config/fr30/fr30.c:475
#, c-format
msgid "fr30_print_operand: unrecognized %%p code"
msgstr ""
-#: config/fr30/fr30.c:503
+#: config/fr30/fr30.c:495
#, c-format
msgid "fr30_print_operand: unrecognized %%b code"
msgstr ""
-#: config/fr30/fr30.c:524
+#: config/fr30/fr30.c:516
#, c-format
msgid "fr30_print_operand: unrecognized %%B code"
msgstr ""
-#: config/fr30/fr30.c:532
+#: config/fr30/fr30.c:524
#, c-format
msgid "fr30_print_operand: invalid operand to %%A code"
msgstr ""
-#: config/fr30/fr30.c:549
+#: config/fr30/fr30.c:541
#, c-format
msgid "fr30_print_operand: invalid %%x code"
msgstr ""
-#: config/fr30/fr30.c:556
+#: config/fr30/fr30.c:548
#, c-format
msgid "fr30_print_operand: invalid %%F code"
msgstr ""
-#: config/fr30/fr30.c:573
+#: config/fr30/fr30.c:565
msgid "fr30_print_operand: unknown code"
msgstr ""
-#: config/fr30/fr30.c:602 config/fr30/fr30.c:611 config/fr30/fr30.c:622
-#: config/fr30/fr30.c:635
+#: config/fr30/fr30.c:594 config/fr30/fr30.c:603 config/fr30/fr30.c:614
+#: config/fr30/fr30.c:627
msgid "fr30_print_operand: unhandled MEM"
msgstr ""
@@ -8939,136 +9026,136 @@ msgstr ""
msgid "Assume small address space"
msgstr ""
-#: config/frv/frv.c:391 config/frv/frv.c:409
+#: config/frv/frv.c:392 config/frv/frv.c:410
#, c-format
msgid "Unknown cpu: -mcpu=%s"
msgstr ""
-#: config/frv/frv.c:432
+#: config/frv/frv.c:433
msgid "-fpic and -gdwarf are incompatible (-fpic and -g/-gdwarf-2 are fine)"
msgstr ""
-#: config/frv/frv.c:2395
+#: config/frv/frv.c:2397
msgid "Bad insn to frv_print_operand_address:"
msgstr ""
-#: config/frv/frv.c:2406
+#: config/frv/frv.c:2408
msgid "Bad register to frv_print_operand_memory_reference_reg:"
msgstr ""
-#: config/frv/frv.c:2444 config/frv/frv.c:2454 config/frv/frv.c:2463
-#: config/frv/frv.c:2491 config/frv/frv.c:2504 config/frv/frv.c:2508
+#: config/frv/frv.c:2446 config/frv/frv.c:2456 config/frv/frv.c:2465
+#: config/frv/frv.c:2493 config/frv/frv.c:2506 config/frv/frv.c:2510
msgid "Bad insn to frv_print_operand_memory_reference:"
msgstr ""
-#: config/frv/frv.c:2646
+#: config/frv/frv.c:2648
msgid "Bad insn in frv_print_operand, bad const_double"
msgstr ""
-#: config/frv/frv.c:2691
+#: config/frv/frv.c:2693
msgid "Bad insn to frv_print_operand, 'C' modifier:"
msgstr ""
-#: config/frv/frv.c:2714
+#: config/frv/frv.c:2716
msgid "Bad insn to frv_print_operand, 'c' modifier:"
msgstr ""
-#: config/frv/frv.c:2739
+#: config/frv/frv.c:2741
msgid "Bad insn to frv_print_operand, 'e' modifier:"
msgstr ""
-#: config/frv/frv.c:2747
+#: config/frv/frv.c:2749
msgid "Bad insn to frv_print_operand, 'F' modifier:"
msgstr ""
-#: config/frv/frv.c:2763
+#: config/frv/frv.c:2765
msgid "Bad insn to frv_print_operand, 'f' modifier:"
msgstr ""
-#: config/frv/frv.c:2816
+#: config/frv/frv.c:2818
msgid "Bad insn to frv_print_operand, 'L' modifier:"
msgstr ""
-#: config/frv/frv.c:2829
+#: config/frv/frv.c:2831
msgid "Bad insn to frv_print_operand, 'M/N' modifier:"
msgstr ""
-#: config/frv/frv.c:2850
+#: config/frv/frv.c:2852
msgid "Bad insn to frv_print_operand, 'O' modifier:"
msgstr ""
-#: config/frv/frv.c:2868
+#: config/frv/frv.c:2870
msgid "Bad insn to frv_print_operand, P modifier:"
msgstr ""
-#: config/frv/frv.c:2888
+#: config/frv/frv.c:2890
msgid "Bad insn in frv_print_operand, z case"
msgstr ""
-#: config/frv/frv.c:2916
+#: config/frv/frv.c:2918
msgid "Bad insn in frv_print_operand, 0 case"
msgstr ""
-#: config/frv/frv.c:2921
+#: config/frv/frv.c:2923
msgid "frv_print_operand: unknown code"
msgstr ""
-#: config/frv/frv.c:5471
+#: config/frv/frv.c:5474
msgid "Bad output_move_single operand"
msgstr ""
-#: config/frv/frv.c:5598
+#: config/frv/frv.c:5601
msgid "Bad output_move_double operand"
msgstr ""
-#: config/frv/frv.c:5740
+#: config/frv/frv.c:5743
msgid "Bad output_condmove_single operand"
msgstr ""
-#: config/frv/frv.c:8019
+#: config/frv/frv.c:8031
msgid "frv_registers_update"
msgstr ""
-#: config/frv/frv.c:8176
+#: config/frv/frv.c:8188
msgid "frv_registers_used_p"
msgstr ""
-#: config/frv/frv.c:8302
+#: config/frv/frv.c:8314
msgid "frv_registers_set_p"
msgstr ""
-#: config/frv/frv.c:8898
+#: config/frv/frv.c:8910
msgid "accumulator is not a constant integer"
msgstr ""
-#: config/frv/frv.c:8903
+#: config/frv/frv.c:8915
msgid "accumulator number is out of bounds"
msgstr ""
-#: config/frv/frv.c:8914
+#: config/frv/frv.c:8926
#, c-format
msgid "inappropriate accumulator for `%s'"
msgstr ""
-#: config/frv/frv.c:8974
+#: config/frv/frv.c:8986
#, c-format
msgid "`%s' expects a constant argument"
msgstr ""
-#: config/frv/frv.c:8979
+#: config/frv/frv.c:8991
#, c-format
msgid "constant argument out of range for `%s'"
msgstr ""
-#: config/frv/frv.c:9326
+#: config/frv/frv.c:9338
msgid "media functions are not available unless -mmedia is used"
msgstr ""
-#: config/frv/frv.c:9338
+#: config/frv/frv.c:9350
msgid "this media function is only available on the fr500"
msgstr ""
-#: config/frv/frv.c:9366
+#: config/frv/frv.c:9378
msgid "this media function is only available on the fr400"
msgstr ""
@@ -9081,7 +9168,7 @@ msgstr ""
#. #else
#. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)");
#. #endif
-#: config/frv/frv.h:505
+#: config/frv/frv.h:506
msgid " (frv)"
msgstr ""
@@ -9182,169 +9269,177 @@ msgstr ""
msgid "Do not generate char instructions"
msgstr ""
-#: config/i386/i386.c:1155
+#: config/i386/i386.c:1170
#, c-format
msgid "code model %s not supported in PIC mode"
msgstr ""
-#: config/i386/i386.c:1165 config/sparc/sparc.c:382
+#: config/i386/i386.c:1180 config/sparc/sparc.c:387
#, c-format
msgid "bad value (%s) for -mcmodel= switch"
msgstr ""
-#: config/i386/i386.c:1180
+#: config/i386/i386.c:1195
#, c-format
msgid "bad value (%s) for -masm= switch"
msgstr ""
-#: config/i386/i386.c:1183
+#: config/i386/i386.c:1198
#, c-format
msgid "code model `%s' not supported in the %s bit mode"
msgstr ""
-#: config/i386/i386.c:1186
+#: config/i386/i386.c:1201
msgid "code model `large' not supported yet"
msgstr ""
-#: config/i386/i386.c:1188
+#: config/i386/i386.c:1203
#, c-format
msgid "%i-bit mode not compiled in"
msgstr ""
-#: config/i386/i386.c:1215 config/i386/i386.c:1227
+#: config/i386/i386.c:1230 config/i386/i386.c:1242
msgid "CPU you selected does not support x86-64 instruction set"
msgstr ""
-#: config/i386/i386.c:1220 config/iq2000/iq2000.c:1806
+#: config/i386/i386.c:1235 config/iq2000/iq2000.c:1840
#, c-format
msgid "bad value (%s) for -march= switch"
msgstr ""
-#: config/i386/i386.c:1233
+#: config/i386/i386.c:1248
#, c-format
msgid "bad value (%s) for -mtune= switch"
msgstr ""
-#: config/i386/i386.c:1250
+#: config/i386/i386.c:1265
#, c-format
msgid "-mregparm=%d is not between 0 and %d"
msgstr ""
-#: config/i386/i386.c:1263
+#: config/i386/i386.c:1278
msgid "-malign-loops is obsolete, use -falign-loops"
msgstr ""
-#: config/i386/i386.c:1268 config/i386/i386.c:1281 config/i386/i386.c:1294
+#: config/i386/i386.c:1283 config/i386/i386.c:1296 config/i386/i386.c:1309
#, c-format
msgid "-malign-loops=%d is not between 0 and %d"
msgstr ""
-#: config/i386/i386.c:1276
+#: config/i386/i386.c:1291
msgid "-malign-jumps is obsolete, use -falign-jumps"
msgstr ""
-#: config/i386/i386.c:1289
+#: config/i386/i386.c:1304
msgid "-malign-functions is obsolete, use -falign-functions"
msgstr ""
-#: config/i386/i386.c:1327
+#: config/i386/i386.c:1342
#, c-format
msgid "-mpreferred-stack-boundary=%d is not between %d and 12"
msgstr ""
-#: config/i386/i386.c:1339
+#: config/i386/i386.c:1354
#, c-format
msgid "-mbranch-cost=%d is not between 0 and 5"
msgstr ""
-#: config/i386/i386.c:1351
+#: config/i386/i386.c:1366
#, c-format
msgid "bad value (%s) for -mtls-dialect= switch"
msgstr ""
-#: config/i386/i386.c:1380
+#: config/i386/i386.c:1395
msgid "-malign-double makes no sense in the 64bit mode"
msgstr ""
-#: config/i386/i386.c:1382
+#: config/i386/i386.c:1397
msgid "-mrtd calling convention not supported in the 64bit mode"
msgstr ""
-#: config/i386/i386.c:1404 config/i386/i386.c:1415
+#: config/i386/i386.c:1419 config/i386/i386.c:1430
msgid "SSE instruction set disabled, using 387 arithmetics"
msgstr ""
-#: config/i386/i386.c:1420
+#: config/i386/i386.c:1435
msgid "387 instruction set disabled, using SSE arithmetics"
msgstr ""
-#: config/i386/i386.c:1427
+#: config/i386/i386.c:1442
#, c-format
msgid "bad value (%s) for -mfpmath= switch"
msgstr ""
-#: config/i386/i386.c:1575 config/i386/i386.c:1586
+#: config/i386/i386.c:1590 config/i386/i386.c:1601
msgid "fastcall and stdcall attributes are not compatible"
msgstr ""
-#: config/i386/i386.c:1579 config/i386/i386.c:1635
+#: config/i386/i386.c:1594 config/i386/i386.c:1650
msgid "fastcall and regparm attributes are not compatible"
msgstr ""
-#: config/i386/i386.c:1622
+#: config/i386/i386.c:1637
#, c-format
msgid "`%s' attribute requires an integer constant argument"
msgstr ""
-#: config/i386/i386.c:1628
+#: config/i386/i386.c:1643
#, c-format
msgid "argument to `%s' attribute larger than %d"
msgstr ""
-#: config/i386/i386.c:2780
+#: config/i386/i386.c:2605
+msgid "SSE vector argument without SSE enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2621
+msgid "MMX vector argument without MMX enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2849
msgid "SSE vector return without SSE enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:6784
+#: config/i386/i386.c:6823
msgid "invalid UNSPEC as operand"
msgstr ""
-#: config/i386/i386.c:7038
+#: config/i386/i386.c:7081
msgid "extended registers have no high halves"
msgstr ""
-#: config/i386/i386.c:7053
+#: config/i386/i386.c:7096
msgid "unsupported operand size for extended register"
msgstr ""
-#: config/i386/i386.c:7368
+#: config/i386/i386.c:7411
msgid ""
"operand is neither a constant nor a condition code, invalid operand code 'c'"
msgstr ""
-#: config/i386/i386.c:7414
+#: config/i386/i386.c:7457
#, c-format
msgid "invalid operand code `%c'"
msgstr ""
-#: config/i386/i386.c:7459
+#: config/i386/i386.c:7500
msgid "invalid constraints for operand"
msgstr ""
-#: config/i386/i386.c:11859
+#: config/i386/i386.c:12014
msgid "unknown insn mode"
msgstr ""
-#: config/i386/i386.c:13991 config/i386/i386.c:14027
+#: config/i386/i386.c:14102 config/i386/i386.c:14138
#, c-format
msgid "selector must be an integer constant in the range 0..%i"
msgstr ""
-#: config/i386/i386.c:14255
+#: config/i386/i386.c:14366
msgid "shift must be an immediate"
msgstr ""
-#: config/i386/i386.c:15278
+#: config/i386/i386.c:15389
#, c-format
msgid "`%s' incompatible attribute ignored"
msgstr ""
@@ -9366,46 +9461,46 @@ msgstr ""
msgid "`%s' attribute only applies to variables"
msgstr ""
-#: config/i386/winnt.c:247
+#: config/i386/winnt.c:248
msgid ""
"%Jfunction '%D' is defined after prior declaration as dllimport: attribute "
"ignored"
msgstr ""
-#: config/i386/winnt.c:258
+#: config/i386/winnt.c:259
msgid "%Jinline function '%D' is declared as dllimport: attribute ignored."
msgstr ""
-#: config/i386/winnt.c:270
+#: config/i386/winnt.c:271
msgid "%Jdefinition of static data member '%D' of dllimport'd class."
msgstr ""
-#: config/i386/winnt.c:329
+#: config/i386/winnt.c:330
msgid "%Jinconsistent dll linkage for '%D', dllexport assumed."
msgstr ""
-#: config/i386/winnt.c:371
+#: config/i386/winnt.c:372
#, c-format
msgid "`%s' declared as both exported to and imported from a DLL"
msgstr ""
-#: config/i386/winnt.c:380
+#: config/i386/winnt.c:381
msgid ""
"%Jfailure in redeclaration of '%D': dllimport'd symbol lacks external "
"linkage."
msgstr ""
-#: config/i386/winnt.c:529
+#: config/i386/winnt.c:530
msgid "%J'%D' defined locally after being referenced with dllimport linkage"
msgstr ""
-#: config/i386/winnt.c:532
+#: config/i386/winnt.c:533
msgid ""
"%J'%D' redeclared without dllimport attribute after being referenced with "
"dllimport linkage"
msgstr ""
-#: config/i386/winnt.c:701
+#: config/i386/winnt.c:702
msgid "%J'%D' causes a section type conflict"
msgstr ""
@@ -9454,7 +9549,7 @@ msgstr ""
msgid "-mbnu210 is ignored (option is obsolete)"
msgstr ""
-#: config/i386/i386-interix.h:255
+#: config/i386/i386-interix.h:256
msgid "ms-bitfields not supported for objc"
msgstr ""
@@ -9464,167 +9559,169 @@ msgstr ""
#. Deprecated.
#. Deprecated.
#. Deprecated.
-#: config/i386/i386.h:339
+#. Deprecated.
+#. Deprecated.
+#: config/i386/i386.h:341
msgid "Alternate calling convention"
msgstr ""
-#: config/i386/i386.h:341 config/m68k/m68k.h:339 config/ns32k/ns32k.h:144
+#: config/i386/i386.h:343 config/m68k/m68k.h:344 config/ns32k/ns32k.h:144
msgid "Use normal calling convention"
msgstr ""
-#: config/i386/i386.h:343
+#: config/i386/i386.h:345
msgid "Align some doubles on dword boundary"
msgstr ""
-#: config/i386/i386.h:345
+#: config/i386/i386.h:347
msgid "Align doubles on word boundary"
msgstr ""
-#: config/i386/i386.h:347
+#: config/i386/i386.h:349
msgid "Uninitialized locals in .bss"
msgstr ""
-#: config/i386/i386.h:349
+#: config/i386/i386.h:351
msgid "Uninitialized locals in .data"
msgstr ""
-#: config/i386/i386.h:351 config/m68k/linux.h:35 config/ns32k/ns32k.h:167
+#: config/i386/i386.h:353 config/m68k/linux.h:35 config/ns32k/ns32k.h:167
msgid "Use IEEE math for fp comparisons"
msgstr ""
-#: config/i386/i386.h:353 config/ns32k/ns32k.h:169
+#: config/i386/i386.h:355 config/ns32k/ns32k.h:169
msgid "Do not use IEEE math for fp comparisons"
msgstr ""
-#: config/i386/i386.h:355
+#: config/i386/i386.h:357
msgid "Return values of functions in FPU registers"
msgstr ""
-#: config/i386/i386.h:357
+#: config/i386/i386.h:359
msgid "Do not return values of functions in FPU registers"
msgstr ""
-#: config/i386/i386.h:359
+#: config/i386/i386.h:361
msgid "Do not generate sin, cos, sqrt for FPU"
msgstr ""
-#: config/i386/i386.h:361
+#: config/i386/i386.h:363
msgid "Generate sin, cos, sqrt for FPU"
msgstr ""
-#: config/i386/i386.h:363
+#: config/i386/i386.h:365
msgid "Omit the frame pointer in leaf functions"
msgstr ""
-#: config/i386/i386.h:366
+#: config/i386/i386.h:368
msgid "Enable stack probing"
msgstr ""
#. undocumented
#. undocumented
-#: config/i386/i386.h:371
+#: config/i386/i386.h:373
msgid "Align destination of the string operations"
msgstr ""
-#: config/i386/i386.h:373
+#: config/i386/i386.h:375
msgid "Do not align destination of the string operations"
msgstr ""
-#: config/i386/i386.h:375
+#: config/i386/i386.h:377
msgid "Inline all known string operations"
msgstr ""
-#: config/i386/i386.h:377
+#: config/i386/i386.h:379
msgid "Do not inline all known string operations"
msgstr ""
-#: config/i386/i386.h:379 config/i386/i386.h:383
+#: config/i386/i386.h:381 config/i386/i386.h:385
msgid "Use push instructions to save outgoing arguments"
msgstr ""
-#: config/i386/i386.h:381 config/i386/i386.h:385
+#: config/i386/i386.h:383 config/i386/i386.h:387
msgid "Do not use push instructions to save outgoing arguments"
msgstr ""
-#: config/i386/i386.h:387
+#: config/i386/i386.h:389
msgid "Support MMX built-in functions"
msgstr ""
-#: config/i386/i386.h:389
+#: config/i386/i386.h:391
msgid "Do not support MMX built-in functions"
msgstr ""
-#: config/i386/i386.h:391
+#: config/i386/i386.h:393
msgid "Support 3DNow! built-in functions"
msgstr ""
-#: config/i386/i386.h:393
+#: config/i386/i386.h:395
msgid "Do not support 3DNow! built-in functions"
msgstr ""
-#: config/i386/i386.h:395
+#: config/i386/i386.h:397
msgid "Support MMX and SSE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:397
+#: config/i386/i386.h:399
msgid "Do not support MMX and SSE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:399
+#: config/i386/i386.h:401
msgid "Support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:401
+#: config/i386/i386.h:403
msgid "Do not support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:403
-msgid "Support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+#: config/i386/i386.h:405
+msgid "Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:405
+#: config/i386/i386.h:407
msgid ""
-"Do not support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+"Do not support MMX, SSE, SSE2 and SSE3 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:407
+#: config/i386/i386.h:409
msgid "sizeof(long double) is 16"
msgstr ""
-#: config/i386/i386.h:409
+#: config/i386/i386.h:411
msgid "sizeof(long double) is 12"
msgstr ""
-#: config/i386/i386.h:411
+#: config/i386/i386.h:413
msgid "Generate 64bit x86-64 code"
msgstr ""
-#: config/i386/i386.h:413
+#: config/i386/i386.h:415
msgid "Generate 32bit i386 code"
msgstr ""
-#: config/i386/i386.h:415
+#: config/i386/i386.h:417
msgid "Use native (MS) bitfield layout"
msgstr ""
-#: config/i386/i386.h:417
+#: config/i386/i386.h:419
msgid "Use gcc default bitfield layout"
msgstr ""
-#: config/i386/i386.h:419
+#: config/i386/i386.h:421
msgid "Use red-zone in the x86-64 code"
msgstr ""
-#: config/i386/i386.h:421
+#: config/i386/i386.h:423
msgid "Do not use red-zone in the x86-64 code"
msgstr ""
-#: config/i386/i386.h:423
+#: config/i386/i386.h:425
#, c-format
msgid "Use direct references against %gs when accessing tls data"
msgstr ""
-#: config/i386/i386.h:425
+#: config/i386/i386.h:427
#, c-format
msgid "Do not use direct references against %gs when accessing tls data"
msgstr ""
@@ -9638,20 +9735,20 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:459 config/ia64/ia64.h:260 config/rs6000/rs6000.h:416
-#: config/s390/s390.h:145 config/sparc/sparc.h:650
+#: config/i386/i386.h:461 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437
+#: config/s390/s390.h:146 config/sparc/sparc.h:656
msgid "Schedule code for given CPU"
msgstr ""
-#: config/i386/i386.h:461
+#: config/i386/i386.h:463
msgid "Generate floating point mathematics using given instruction set"
msgstr ""
-#: config/i386/i386.h:463 config/s390/s390.h:147
+#: config/i386/i386.h:465 config/s390/s390.h:148
msgid "Generate code for given CPU"
msgstr ""
-#: config/i386/i386.h:465
+#: config/i386/i386.h:467
msgid "Number of registers used to pass integer arguments"
msgstr ""
@@ -9665,56 +9762,56 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:467 config/m68k/m68k.h:355
+#: config/i386/i386.h:469 config/m68k/m68k.h:360
msgid "Loop code aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:469 config/m68k/m68k.h:357
+#: config/i386/i386.h:471 config/m68k/m68k.h:362
msgid "Jump targets are aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:471 config/m68k/m68k.h:359
+#: config/i386/i386.h:473 config/m68k/m68k.h:364
msgid "Function starts are aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:474
+#: config/i386/i386.h:476
msgid "Attempt to keep stack aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:476
+#: config/i386/i386.h:478
msgid "Branches are this expensive (1-5, arbitrary units)"
msgstr ""
-#: config/i386/i386.h:478
+#: config/i386/i386.h:480
msgid "Use given x86-64 code model"
msgstr ""
#. Undocumented.
#. Undocumented.
-#: config/i386/i386.h:484
+#: config/i386/i386.h:486
msgid "Use given assembler dialect"
msgstr ""
-#: config/i386/i386.h:486
+#: config/i386/i386.h:488
msgid "Use given thread-local storage dialect"
msgstr ""
-#: config/i386/sco5.h:293
+#: config/i386/sco5.h:292
msgid "Generate ELF output"
msgstr ""
#. If the environment variable DJDIR is not defined, then DJGPP is not installed correctly and GCC will quickly become confused with the default prefix settings. Report the problem now so the user doesn't receive deceptive "file not found" error messages later.
#. DJDIR is automatically defined by the DJGPP environment config file pointed to by the environment variable DJGPP. Examine DJGPP to try and figure out what's wrong.
-#: config/i386/xm-djgpp.h:64
+#: config/i386/xm-djgpp.h:61
msgid "environment variable DJGPP not defined"
msgstr ""
-#: config/i386/xm-djgpp.h:66
+#: config/i386/xm-djgpp.h:63
#, c-format
msgid "environment variable DJGPP points to missing file '%s'"
msgstr ""
-#: config/i386/xm-djgpp.h:69
+#: config/i386/xm-djgpp.h:66
#, c-format
msgid "environment variable DJGPP points to corrupt file '%s'"
msgstr ""
@@ -9756,7 +9853,7 @@ msgstr ""
msgid "iC2.0 and iC3.0 are incompatible - using iC3.0"
msgstr ""
-#: config/i960/i960.c:1456 config/m68k/m68k.c:599 config/rs6000/rs6000.c:11237
+#: config/i960/i960.c:1456 config/m68k/m68k.c:600 config/rs6000/rs6000.c:11364
msgid "stack limit expression is not supported"
msgstr ""
@@ -9814,7 +9911,7 @@ msgstr ""
msgid "Generate CF code"
msgstr ""
-#: config/i960/i960.h:293 config/mips/mips.h:539 config/pa/pa.h:266
+#: config/i960/i960.h:293 config/mips/mips.h:552 config/pa/pa.h:266
msgid "Use software floating point"
msgstr ""
@@ -9879,8 +9976,8 @@ msgstr ""
msgid "Do not layout types like Intel's v1.3 gcc"
msgstr ""
-#: config/i960/i960.h:333 config/sparc/freebsd.h:76 config/sparc/linux.h:90
-#: config/sparc/linux64.h:102 config/sparc/netbsd-elf.h:215
+#: config/i960/i960.h:333 config/sparc/freebsd.h:80 config/sparc/linux.h:91
+#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215
msgid "Use 64 bit long doubles"
msgstr ""
@@ -9896,7 +9993,7 @@ msgstr ""
msgid "malformed #pragma builtin"
msgstr ""
-#: config/ia64/ia64.c:1025 config/m32r/m32r.c:336
+#: config/ia64/ia64.c:1025 config/m32r/m32r.c:354
#, c-format
msgid "invalid argument of `%s' attribute"
msgstr ""
@@ -9913,41 +10010,41 @@ msgstr ""
msgid "%Jaddress area attribute cannot be specified for functions"
msgstr ""
-#: config/ia64/ia64.c:4114
+#: config/ia64/ia64.c:4305
msgid "ia64_print_operand: unknown code"
msgstr ""
-#: config/ia64/ia64.c:4461
+#: config/ia64/ia64.c:4645
msgid "value of -mfixed-range must have form REG1-REG2"
msgstr ""
-#: config/ia64/ia64.c:4488
+#: config/ia64/ia64.c:4672
#, c-format
msgid "%s-%s is an empty range"
msgstr ""
-#: config/ia64/ia64.c:4536
+#: config/ia64/ia64.c:4720
msgid "cannot optimize floating point division for both latency and throughput"
msgstr ""
-#: config/ia64/ia64.c:4542
+#: config/ia64/ia64.c:4726
msgid "cannot optimize integer division for both latency and throughput"
msgstr ""
-#: config/ia64/ia64.c:4548
+#: config/ia64/ia64.c:4732
msgid "cannot optimize square root for both latency and throughput"
msgstr ""
-#: config/ia64/ia64.c:4554
+#: config/ia64/ia64.c:4738
msgid "not yet implemented: latency-optimized inline square root"
msgstr ""
-#: config/ia64/ia64.c:4566
+#: config/ia64/ia64.c:4750
#, c-format
msgid "bad value (%s) for -mtls-size= switch"
msgstr ""
-#: config/ia64/ia64.c:4582
+#: config/ia64/ia64.c:4766
#, c-format
msgid "bad value (%s) for -tune= switch"
msgstr ""
@@ -9955,135 +10052,135 @@ msgstr ""
#. This macro defines names of command options to set and clear bits in
#. `target_flags'. Its definition is an initializer with a subgrouping for
#. each command option.
-#: config/ia64/ia64.h:163
+#: config/ia64/ia64.h:172
msgid "Generate big endian code"
msgstr ""
-#: config/ia64/ia64.h:165 config/mcore/mcore.h:154
+#: config/ia64/ia64.h:174 config/mcore/mcore.h:154
msgid "Generate little endian code"
msgstr ""
-#: config/ia64/ia64.h:167
+#: config/ia64/ia64.h:176
msgid "Generate code for GNU as"
msgstr ""
-#: config/ia64/ia64.h:169
+#: config/ia64/ia64.h:178
msgid "Generate code for Intel as"
msgstr ""
-#: config/ia64/ia64.h:171
+#: config/ia64/ia64.h:180
msgid "Generate code for GNU ld"
msgstr ""
-#: config/ia64/ia64.h:173
+#: config/ia64/ia64.h:182
msgid "Generate code for Intel ld"
msgstr ""
-#: config/ia64/ia64.h:175
+#: config/ia64/ia64.h:184
msgid "Generate code without GP reg"
msgstr ""
-#: config/ia64/ia64.h:177
+#: config/ia64/ia64.h:186
msgid "Emit stop bits before and after volatile extended asms"
msgstr ""
-#: config/ia64/ia64.h:179
+#: config/ia64/ia64.h:188
msgid "Don't emit stop bits before and after volatile extended asms"
msgstr ""
-#: config/ia64/ia64.h:181
+#: config/ia64/ia64.h:190
msgid "Emit code for Itanium (TM) processor B step"
msgstr ""
-#: config/ia64/ia64.h:183
+#: config/ia64/ia64.h:192
msgid "Use in/loc/out register names"
msgstr ""
-#: config/ia64/ia64.h:185
+#: config/ia64/ia64.h:194
msgid "Disable use of sdata/scommon/sbss"
msgstr ""
-#: config/ia64/ia64.h:187
+#: config/ia64/ia64.h:196
msgid "Enable use of sdata/scommon/sbss"
msgstr ""
-#: config/ia64/ia64.h:189
+#: config/ia64/ia64.h:198
msgid "gp is constant (but save/restore gp on indirect calls)"
msgstr ""
-#: config/ia64/ia64.h:191
+#: config/ia64/ia64.h:200
msgid "Generate self-relocatable code"
msgstr ""
-#: config/ia64/ia64.h:193
+#: config/ia64/ia64.h:202
msgid "Generate inline floating point division, optimize for latency"
msgstr ""
-#: config/ia64/ia64.h:195
+#: config/ia64/ia64.h:204
msgid "Generate inline floating point division, optimize for throughput"
msgstr ""
-#: config/ia64/ia64.h:197
+#: config/ia64/ia64.h:206
msgid "Generate inline integer division, optimize for latency"
msgstr ""
-#: config/ia64/ia64.h:199
+#: config/ia64/ia64.h:208
msgid "Generate inline integer division, optimize for throughput"
msgstr ""
-#: config/ia64/ia64.h:201
+#: config/ia64/ia64.h:210
msgid "Generate inline square root, optimize for latency"
msgstr ""
-#: config/ia64/ia64.h:203
+#: config/ia64/ia64.h:212
msgid "Generate inline square root, optimize for throughput"
msgstr ""
-#: config/ia64/ia64.h:205
+#: config/ia64/ia64.h:214
msgid "Enable Dwarf 2 line debug info via GNU as"
msgstr ""
-#: config/ia64/ia64.h:207
+#: config/ia64/ia64.h:216
msgid "Disable Dwarf 2 line debug info via GNU as"
msgstr ""
-#: config/ia64/ia64.h:209
+#: config/ia64/ia64.h:218
msgid "Enable earlier placing stop bits for better scheduling"
msgstr ""
-#: config/ia64/ia64.h:211
+#: config/ia64/ia64.h:220
msgid "Disable earlier placing stop bits"
msgstr ""
-#: config/ia64/ia64.h:256
+#: config/ia64/ia64.h:265
msgid "Specify range of registers to make fixed"
msgstr ""
-#: config/ip2k/ip2k.c:1100
+#: config/ip2k/ip2k.c:1074
msgid "bad operand"
msgstr ""
-#: config/iq2000/iq2000.c:1782
+#: config/iq2000/iq2000.c:1816
#, c-format
msgid "bad value (%s) for -mcpu= switch"
msgstr ""
-#: config/iq2000/iq2000.c:1811
+#: config/iq2000/iq2000.c:1845
#, c-format
msgid "The compiler does not support -march=%s."
msgstr ""
-#: config/iq2000/iq2000.c:2206
+#: config/iq2000/iq2000.c:2232
#, c-format
msgid "gp_offset (%ld) or end_offset (%ld) is less than zero."
msgstr ""
-#: config/iq2000/iq2000.c:3022
+#: config/iq2000/iq2000.c:3023
#, c-format
msgid "argument `%d' is not a constant"
msgstr ""
-#: config/iq2000/iq2000.c:3313 config/xtensa/xtensa.c:2057
+#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2095
msgid "PRINT_OPERAND_ADDRESS, null pointer"
msgstr ""
@@ -10092,8 +10189,8 @@ msgstr ""
msgid "PRINT_OPERAND: Unknown punctuation '%c'"
msgstr ""
-#: config/iq2000/iq2000.c:3478 config/mips/mips.c:5324
-#: config/xtensa/xtensa.c:1911
+#: config/iq2000/iq2000.c:3478 config/mips/mips.c:5464
+#: config/xtensa/xtensa.c:1949
msgid "PRINT_OPERAND null pointer"
msgstr ""
@@ -10102,180 +10199,201 @@ msgstr ""
msgid "invalid %%P operand"
msgstr ""
-#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8817
+#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8949
#, c-format
msgid "invalid %%p value"
msgstr ""
-#: config/iq2000/iq2000.c:3619 config/mips/mips.c:5454
+#: config/iq2000/iq2000.c:3619 config/mips/mips.c:5594
#, c-format
msgid "invalid use of %%d, %%x, or %%X"
msgstr ""
-#: config/iq2000/iq2000.h:74 config/mn10300/mn10300.h:74
+#: config/iq2000/iq2000.h:72 config/mn10300/mn10300.h:74
msgid "No default crt0.o"
msgstr ""
-#: config/iq2000/iq2000.h:76
+#: config/iq2000/iq2000.h:74
msgid "Use GP relative sdata/sbss sections"
msgstr ""
-#: config/iq2000/iq2000.h:78
+#: config/iq2000/iq2000.h:76
msgid "Don't use GP relative sdata/sbss sections"
msgstr ""
-#: config/iq2000/iq2000.h:80 config/mips/mips.h:563
+#: config/iq2000/iq2000.h:78 config/mips/mips.h:576
msgid "Use ROM instead of RAM"
msgstr ""
-#: config/iq2000/iq2000.h:82 config/mips/mips.h:565
+#: config/iq2000/iq2000.h:80 config/mips/mips.h:578
msgid "Don't use ROM instead of RAM"
msgstr ""
-#: config/iq2000/iq2000.h:84 config/mips/mips.h:567
+#: config/iq2000/iq2000.h:82 config/mips/mips.h:580
msgid "Put uninitialized constants in ROM (needs -membedded-data)"
msgstr ""
-#: config/iq2000/iq2000.h:86 config/mips/mips.h:569
+#: config/iq2000/iq2000.h:84 config/mips/mips.h:582
msgid "Don't put uninitialized constants in ROM"
msgstr ""
-#: config/iq2000/iq2000.h:108 config/mips/mips.h:731 config/pa/pa.h:310
+#: config/iq2000/iq2000.h:106 config/mips/mips.h:744 config/pa/pa.h:310
msgid "Specify CPU for scheduling purposes"
msgstr ""
-#: config/iq2000/iq2000.h:110 config/mips/mips.h:733
+#: config/iq2000/iq2000.h:108 config/mips/mips.h:746
msgid "Specify CPU for code generation purposes"
msgstr ""
-#: config/m32r/m32r.c:159
+#: config/m32r/m32r.c:172
#, c-format
msgid "bad value (%s) for -mmodel switch"
msgstr ""
-#: config/m32r/m32r.c:168
+#: config/m32r/m32r.c:181
#, c-format
msgid "bad value (%s) for -msdata switch"
msgstr ""
-#: config/m32r/m32r.c:2251
+#: config/m32r/m32r.c:188
+#, c-format
+msgid "bad value (%s) for -flush-trap=n (0=<n<=15)"
+msgstr ""
+
+#: config/m32r/m32r.c:2295
#, c-format
msgid "invalid operand to %%s code"
msgstr ""
-#: config/m32r/m32r.c:2258
+#: config/m32r/m32r.c:2302
#, c-format
msgid "invalid operand to %%p code"
msgstr ""
-#: config/m32r/m32r.c:2313
+#: config/m32r/m32r.c:2357
msgid "bad insn for 'A'"
msgstr ""
-#: config/m32r/m32r.c:2360
+#: config/m32r/m32r.c:2404
#, c-format
msgid "invalid operand to %%T/%%B code"
msgstr ""
-#: config/m32r/m32r.c:2383
+#: config/m32r/m32r.c:2427
#, c-format
msgid "invalid operand to %%N code"
msgstr ""
-#: config/m32r/m32r.c:2422
+#: config/m32r/m32r.c:2460
msgid "pre-increment address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2429
+#: config/m32r/m32r.c:2467
msgid "pre-decrement address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2436
+#: config/m32r/m32r.c:2474
msgid "post-increment address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2514 config/m32r/m32r.c:2530
-#: config/rs6000/rs6000.c:14693
+#: config/m32r/m32r.c:2550 config/m32r/m32r.c:2566
+#: config/rs6000/rs6000.c:14821
msgid "bad address"
msgstr ""
-#: config/m32r/m32r.c:2535
+#: config/m32r/m32r.c:2571
msgid "lo_sum not of register"
msgstr ""
#. { "relax", TARGET_RELAX_MASK, "" }, { "no-relax", -TARGET_RELAX_MASK, "" },
-#: config/m32r/m32r.h:245
+#: config/m32r/m32r.h:279
msgid "Display compile time statistics"
msgstr ""
-#: config/m32r/m32r.h:247
+#: config/m32r/m32r.h:281
msgid "Align all loops to 32 byte boundary"
msgstr ""
-#: config/m32r/m32r.h:250
+#: config/m32r/m32r.h:284
msgid "Only issue one instruction per cycle"
msgstr ""
-#: config/m32r/m32r.h:253
+#: config/m32r/m32r.h:287
msgid "Prefer branches over conditional execution"
msgstr ""
-#: config/m32r/m32r.h:269
+#: config/m32r/m32r.h:308
msgid "Code size: small, medium or large"
msgstr ""
-#: config/m32r/m32r.h:271
+#: config/m32r/m32r.h:310
msgid "Small data area: none, sdata, use"
msgstr ""
-#: config/m68hc11/m68hc11.c:269
+#: config/m32r/m32r.h:312 config/mips/mips.h:752
+msgid "Don't call any cache flush functions"
+msgstr ""
+
+#: config/m32r/m32r.h:314 config/mips/mips.h:754
+msgid "Specify cache flush function"
+msgstr ""
+
+#: config/m32r/m32r.h:316
+msgid "Don't call any cache flush trap"
+msgstr ""
+
+#: config/m32r/m32r.h:318
+msgid "Specify cache flush trap number"
+msgstr ""
+
+#: config/m68hc11/m68hc11.c:280
#, c-format
msgid "-f%s ignored for 68HC11/68HC12 (not supported)"
msgstr ""
-#: config/m68hc11/m68hc11.c:1260
+#: config/m68hc11/m68hc11.c:1326
msgid "`trap' and `far' attributes are not compatible, ignoring `far'"
msgstr ""
-#: config/m68hc11/m68hc11.c:1266
+#: config/m68hc11/m68hc11.c:1332
msgid "`trap' attribute is already used"
msgstr ""
#. !!!! SCz wrong here.
-#: config/m68hc11/m68hc11.c:3222 config/m68hc11/m68hc11.c:3606
+#: config/m68hc11/m68hc11.c:3305 config/m68hc11/m68hc11.c:3689
msgid "move insn not handled"
msgstr ""
-#: config/m68hc11/m68hc11.c:3454 config/m68hc11/m68hc11.c:3538
-#: config/m68hc11/m68hc11.c:3809
+#: config/m68hc11/m68hc11.c:3537 config/m68hc11/m68hc11.c:3621
+#: config/m68hc11/m68hc11.c:3892
msgid "invalid register in the move instruction"
msgstr ""
-#: config/m68hc11/m68hc11.c:3488
+#: config/m68hc11/m68hc11.c:3571
msgid "invalid operand in the instruction"
msgstr ""
-#: config/m68hc11/m68hc11.c:3783
+#: config/m68hc11/m68hc11.c:3866
msgid "invalid register in the instruction"
msgstr ""
-#: config/m68hc11/m68hc11.c:3816
+#: config/m68hc11/m68hc11.c:3899
msgid "operand 1 must be a hard register"
msgstr ""
-#: config/m68hc11/m68hc11.c:3830
+#: config/m68hc11/m68hc11.c:3913
msgid "invalid rotate insn"
msgstr ""
-#: config/m68hc11/m68hc11.c:4246
+#: config/m68hc11/m68hc11.c:4337
msgid "registers IX, IY and Z used in the same INSN"
msgstr ""
-#: config/m68hc11/m68hc11.c:4583 config/m68hc11/m68hc11.c:4883
+#: config/m68hc11/m68hc11.c:4674 config/m68hc11/m68hc11.c:4974
msgid "cannot do z-register replacement"
msgstr ""
-#: config/m68hc11/m68hc11.c:4946
+#: config/m68hc11/m68hc11.c:5037
msgid "invalid Z register replacement for insn"
msgstr ""
@@ -10352,35 +10470,35 @@ msgstr ""
msgid "Indicate the number of soft registers available"
msgstr ""
-#: config/m68k/m68k.c:238
+#: config/m68k/m68k.c:239
#, c-format
msgid "-malign-loops=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:249
+#: config/m68k/m68k.c:250
msgid "-mshared-library-id= specified without -mid-shared-library"
msgstr ""
-#: config/m68k/m68k.c:252
+#: config/m68k/m68k.c:253
#, c-format
msgid "-mshared-library-id=%d is not between 0 and %d"
msgstr ""
-#: config/m68k/m68k.c:266
+#: config/m68k/m68k.c:267
msgid "cannot specify both -msep-data and -mid-shared-library"
msgstr ""
-#: config/m68k/m68k.c:281
+#: config/m68k/m68k.c:282
#, c-format
msgid "-malign-jumps=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:292
+#: config/m68k/m68k.c:293
#, c-format
msgid "-malign-functions=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:301
+#: config/m68k/m68k.c:302
msgid "-fPIC is not currently supported on the 68000 or 68010\n"
msgstr ""
@@ -10389,139 +10507,139 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/m68k/m68k.h:243 config/m68k/m68k.h:245
+#: config/m68k/m68k.h:248 config/m68k/m68k.h:250
msgid "Generate code for a 68020"
msgstr ""
-#: config/m68k/m68k.h:250 config/m68k/m68k.h:253
+#: config/m68k/m68k.h:255 config/m68k/m68k.h:258
msgid "Generate code for a 68000"
msgstr ""
-#: config/m68k/m68k.h:255
+#: config/m68k/m68k.h:260
msgid "Use the bit-field instructions"
msgstr ""
-#: config/m68k/m68k.h:257
+#: config/m68k/m68k.h:262
msgid "Do not use the bit-field instructions"
msgstr ""
-#: config/m68k/m68k.h:259
+#: config/m68k/m68k.h:264
msgid "Consider type `int' to be 16 bits wide"
msgstr ""
-#: config/m68k/m68k.h:261
+#: config/m68k/m68k.h:266
msgid "Consider type `int' to be 32 bits wide"
msgstr ""
-#: config/m68k/m68k.h:264
+#: config/m68k/m68k.h:269
msgid "Generate code with library calls for floating point"
msgstr ""
-#: config/m68k/m68k.h:266
+#: config/m68k/m68k.h:271
msgid "Generate code for a 68040, without any new instructions"
msgstr ""
-#: config/m68k/m68k.h:269
+#: config/m68k/m68k.h:274
msgid "Generate code for a 68060, without any new instructions"
msgstr ""
-#: config/m68k/m68k.h:273
+#: config/m68k/m68k.h:278
msgid "Generate code for a 68030"
msgstr ""
-#: config/m68k/m68k.h:276
+#: config/m68k/m68k.h:281
msgid "Generate code for a 68040"
msgstr ""
-#: config/m68k/m68k.h:280
+#: config/m68k/m68k.h:285
msgid "Generate code for a 68060"
msgstr ""
-#: config/m68k/m68k.h:285
+#: config/m68k/m68k.h:290
msgid "Generate code for a 520X"
msgstr ""
-#: config/m68k/m68k.h:289
+#: config/m68k/m68k.h:294
msgid "Generate code for a 5206e"
msgstr ""
-#: config/m68k/m68k.h:293
+#: config/m68k/m68k.h:298
msgid "Generate code for a 528x"
msgstr ""
-#: config/m68k/m68k.h:297
+#: config/m68k/m68k.h:302
msgid "Generate code for a 5307"
msgstr ""
-#: config/m68k/m68k.h:301
+#: config/m68k/m68k.h:306
msgid "Generate code for a 5407"
msgstr ""
-#: config/m68k/m68k.h:304
+#: config/m68k/m68k.h:309
msgid "Generate code for a 68851"
msgstr ""
-#: config/m68k/m68k.h:306
+#: config/m68k/m68k.h:311
msgid "Do no generate code for a 68851"
msgstr ""
-#: config/m68k/m68k.h:309
+#: config/m68k/m68k.h:314
msgid "Generate code for a 68302"
msgstr ""
-#: config/m68k/m68k.h:312
+#: config/m68k/m68k.h:317
msgid "Generate code for a 68332"
msgstr ""
-#: config/m68k/m68k.h:316
+#: config/m68k/m68k.h:321
msgid "Generate code for a cpu32"
msgstr ""
-#: config/m68k/m68k.h:319
+#: config/m68k/m68k.h:324
msgid "Align variables on a 32-bit boundary"
msgstr ""
-#: config/m68k/m68k.h:321
+#: config/m68k/m68k.h:326
msgid "Align variables on a 16-bit boundary"
msgstr ""
-#: config/m68k/m68k.h:323
+#: config/m68k/m68k.h:328
msgid "Enable separate data segment"
msgstr ""
-#: config/m68k/m68k.h:325
+#: config/m68k/m68k.h:330
msgid "Disable separate data segment"
msgstr ""
-#: config/m68k/m68k.h:327
+#: config/m68k/m68k.h:332
msgid "Enable ID based shared library"
msgstr ""
-#: config/m68k/m68k.h:329
+#: config/m68k/m68k.h:334
msgid "Disable ID based shared library"
msgstr ""
-#: config/m68k/m68k.h:331
+#: config/m68k/m68k.h:336
msgid "Generate pc-relative code"
msgstr ""
-#: config/m68k/m68k.h:333
+#: config/m68k/m68k.h:338
msgid "Do not use unaligned memory references"
msgstr ""
-#: config/m68k/m68k.h:335
+#: config/m68k/m68k.h:340
msgid "Use unaligned memory references"
msgstr ""
-#: config/m68k/m68k.h:337
+#: config/m68k/m68k.h:342
msgid "Use different calling convention using 'rtd'"
msgstr ""
-#: config/m68k/m68k.h:361
+#: config/m68k/m68k.h:366
msgid "ID of shared library to build"
msgstr ""
-#: config/mcore/mcore.c:2972
+#: config/mcore/mcore.c:2973
#, c-format
msgid "invalid option `-mstack-increment=%s'"
msgstr ""
@@ -10578,163 +10696,163 @@ msgstr ""
msgid "Maximum amount for a single stack increment operation"
msgstr ""
-#: config/mips/mips.c:3036 config/xtensa/xtensa.c:992
-#: config/xtensa/xtensa.c:1024 config/xtensa/xtensa.c:1033
+#: config/mips/mips.c:3122 config/xtensa/xtensa.c:1000
+#: config/xtensa/xtensa.c:1032 config/xtensa/xtensa.c:1041
msgid "bad test"
msgstr ""
-#: config/mips/mips.c:4480
+#: config/mips/mips.c:4600
#, c-format
msgid "bad value (%s) for -mabi= switch"
msgstr ""
-#: config/mips/mips.c:4503
+#: config/mips/mips.c:4623
#, c-format
msgid ""
"-mips%s conflicts with the other architecture options, which specify a MIPS%"
"d processor"
msgstr ""
-#: config/mips/mips.c:4522
+#: config/mips/mips.c:4642
#, c-format
msgid "-march=%s is not compatible with the selected ABI"
msgstr ""
-#: config/mips/mips.c:4537
+#: config/mips/mips.c:4657
msgid "-mgp64 used with a 32-bit processor"
msgstr ""
-#: config/mips/mips.c:4539
+#: config/mips/mips.c:4659
msgid "-mgp32 used with a 64-bit ABI"
msgstr ""
-#: config/mips/mips.c:4541
+#: config/mips/mips.c:4661
msgid "-mgp64 used with a 32-bit ABI"
msgstr ""
-#: config/mips/mips.c:4559 config/mips/mips.c:4561 config/mips/mips.c:4563
-#: config/mips/mips.c:4693
+#: config/mips/mips.c:4679 config/mips/mips.c:4681 config/mips/mips.c:4683
+#: config/mips/mips.c:4811
#, c-format
msgid "unsupported combination: %s"
msgstr ""
-#: config/mips/mips.c:4657
+#: config/mips/mips.c:4775
msgid "-g is only supported using GNU as,"
msgstr ""
-#: config/mips/mips.c:4659
+#: config/mips/mips.c:4777
msgid "-g is only supported using GNU as with -mabi=32,"
msgstr ""
-#: config/mips/mips.c:4660 config/pa/pa.c:353
+#: config/mips/mips.c:4778 config/pa/pa.c:353
msgid "-g option disabled"
msgstr ""
-#: config/mips/mips.c:4688
+#: config/mips/mips.c:4806
msgid ""
"generation of Branch Likely instructions enabled, but not supported by "
"architecture"
msgstr ""
-#: config/mips/mips.c:4705
+#: config/mips/mips.c:4823
msgid "-G is incompatible with PIC code which is the default"
msgstr ""
-#: config/mips/mips.c:4733
+#: config/mips/mips.c:4851
msgid "-membedded-pic and -mabicalls are incompatible"
msgstr ""
-#: config/mips/mips.c:4736
+#: config/mips/mips.c:4854
msgid "-G and -membedded-pic are incompatible"
msgstr ""
-#: config/mips/mips.c:4768
+#: config/mips/mips.c:4886
msgid "non-PIC n64 with explicit relocations"
msgstr ""
-#: config/mips/mips.c:5134
+#: config/mips/mips.c:5274
msgid "mips_debugger_offset called with non stack/frame/arg pointer"
msgstr ""
-#: config/mips/mips.c:5261
+#: config/mips/mips.c:5401
#, c-format
msgid "internal error: %%) found without a %%( in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5275
+#: config/mips/mips.c:5415
#, c-format
msgid "internal error: %%] found without a %%[ in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5288
+#: config/mips/mips.c:5428
#, c-format
msgid "internal error: %%> found without a %%< in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5301
+#: config/mips/mips.c:5441
#, c-format
msgid "internal error: %%} found without a %%{ in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5315
+#: config/mips/mips.c:5455
#, c-format
msgid "PRINT_OPERAND: unknown punctuation '%c'"
msgstr ""
-#: config/mips/mips.c:5344
+#: config/mips/mips.c:5484
#, c-format
msgid "PRINT_OPERAND, invalid insn for %%C"
msgstr ""
-#: config/mips/mips.c:5361
+#: config/mips/mips.c:5501
#, c-format
msgid "PRINT_OPERAND, invalid insn for %%N"
msgstr ""
-#: config/mips/mips.c:5370
+#: config/mips/mips.c:5510
#, c-format
msgid "PRINT_OPERAND, invalid insn for %%F"
msgstr ""
-#: config/mips/mips.c:5379
+#: config/mips/mips.c:5519
#, c-format
msgid "PRINT_OPERAND, invalid insn for %%W"
msgstr ""
-#: config/mips/mips.c:5485
+#: config/mips/mips.c:5625
msgid "PRINT_OPERAND, invalid operand for relocation"
msgstr ""
-#: config/mips/mips.c:7951
+#: config/mips/mips.c:8310
#, c-format
msgid "can not handle inconsistent calls to `%s'"
msgstr ""
-#: config/mips/mips.c:9178
+#: config/mips/mips.c:9316
msgid "the cpu name must be lower case"
msgstr ""
-#: config/mips/mips.c:9200
+#: config/mips/mips.c:9338
#, c-format
msgid "bad value (%s) for %s"
msgstr ""
-#: config/mips/mips.c:9469
+#: config/mips/mips.c:9607
#, c-format
msgid "can't rewind temp file: %m"
msgstr ""
-#: config/mips/mips.c:9473
+#: config/mips/mips.c:9611
#, c-format
msgid "can't write to output file: %m"
msgstr ""
-#: config/mips/mips.c:9476
+#: config/mips/mips.c:9614
#, c-format
msgid "can't read from temp file: %m"
msgstr ""
-#: config/mips/mips.c:9479
+#: config/mips/mips.c:9617
#, c-format
msgid "can't close temp file: %m"
msgstr ""
@@ -10747,77 +10865,77 @@ msgstr ""
#. We do this here because __mips is defined below and so we can't use builtin_define_std.
#. Treat _R3000 and _R4000 like register-size defines, which is how they've historically been used.
#. Macros dependent on the C dialect.
-#. Bizzare, but needed at least for Irix.
+#. Bizarre, but needed at least for Irix.
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:501
+#: config/mips/mips.h:514
msgid "Use 64-bit int type"
msgstr ""
-#: config/mips/mips.h:503
+#: config/mips/mips.h:516
msgid "Use 64-bit long type"
msgstr ""
-#: config/mips/mips.h:505
+#: config/mips/mips.h:518
msgid "Use 32-bit long type"
msgstr ""
-#: config/mips/mips.h:507
+#: config/mips/mips.h:520
msgid "Optimize lui/addiu address loads"
msgstr ""
-#: config/mips/mips.h:509
+#: config/mips/mips.h:522
msgid "Don't optimize lui/addiu address loads"
msgstr ""
-#: config/mips/mips.h:511
+#: config/mips/mips.h:524
msgid "Use MIPS as"
msgstr ""
-#: config/mips/mips.h:513
+#: config/mips/mips.h:526
msgid "Use GNU as"
msgstr ""
-#: config/mips/mips.h:515
+#: config/mips/mips.h:528
msgid "Use symbolic register names"
msgstr ""
-#: config/mips/mips.h:517
+#: config/mips/mips.h:530
msgid "Don't use symbolic register names"
msgstr ""
-#: config/mips/mips.h:519 config/mips/mips.h:521
+#: config/mips/mips.h:532 config/mips/mips.h:534
msgid "Use GP relative sdata/sbss sections (now ignored)"
msgstr ""
-#: config/mips/mips.h:523 config/mips/mips.h:525
+#: config/mips/mips.h:536 config/mips/mips.h:538
msgid "Don't use GP relative sdata/sbss sections (now ignored)"
msgstr ""
-#: config/mips/mips.h:527
+#: config/mips/mips.h:540
msgid "Output compiler statistics (now ignored)"
msgstr ""
-#: config/mips/mips.h:529
+#: config/mips/mips.h:542
msgid "Don't output compiler statistics"
msgstr ""
-#: config/mips/mips.h:531
+#: config/mips/mips.h:544
msgid "Don't optimize block moves"
msgstr ""
-#: config/mips/mips.h:533
+#: config/mips/mips.h:546
msgid "Optimize block moves"
msgstr ""
-#: config/mips/mips.h:535
+#: config/mips/mips.h:548
msgid "Use mips-tfile asm postpass"
msgstr ""
-#: config/mips/mips.h:537
+#: config/mips/mips.h:550
msgid "Don't use mips-tfile asm postpass"
msgstr ""
@@ -10827,157 +10945,149 @@ msgstr ""
#. where VALUE is the bits to set or minus the bits to clear and DOC
#. is the documentation for --help (NULL if intentionally undocumented).
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:541 config/pdp11/pdp11.h:61
+#: config/mips/mips.h:554 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:314
msgid "Use hardware floating point"
msgstr ""
-#: config/mips/mips.h:543
+#: config/mips/mips.h:556
msgid "Use 64-bit FP registers"
msgstr ""
-#: config/mips/mips.h:545
+#: config/mips/mips.h:558
msgid "Use 32-bit FP registers"
msgstr ""
-#: config/mips/mips.h:547
+#: config/mips/mips.h:560
msgid "Use 64-bit general registers"
msgstr ""
-#: config/mips/mips.h:549
+#: config/mips/mips.h:562
msgid "Use 32-bit general registers"
msgstr ""
-#: config/mips/mips.h:551
+#: config/mips/mips.h:564
msgid "Use Irix PIC"
msgstr ""
-#: config/mips/mips.h:553
+#: config/mips/mips.h:566
msgid "Don't use Irix PIC"
msgstr ""
-#: config/mips/mips.h:555
+#: config/mips/mips.h:568
msgid "Use indirect calls"
msgstr ""
-#: config/mips/mips.h:557
+#: config/mips/mips.h:570
msgid "Don't use indirect calls"
msgstr ""
-#: config/mips/mips.h:559
+#: config/mips/mips.h:572
msgid "Use embedded PIC"
msgstr ""
-#: config/mips/mips.h:561
+#: config/mips/mips.h:574
msgid "Don't use embedded PIC"
msgstr ""
-#: config/mips/mips.h:571
+#: config/mips/mips.h:584
msgid "Use big-endian byte order"
msgstr ""
-#: config/mips/mips.h:573
+#: config/mips/mips.h:586
msgid "Use little-endian byte order"
msgstr ""
-#: config/mips/mips.h:575
+#: config/mips/mips.h:588
msgid "Use single (32-bit) FP only"
msgstr ""
-#: config/mips/mips.h:577
+#: config/mips/mips.h:590
msgid "Don't use single (32-bit) FP only"
msgstr ""
-#: config/mips/mips.h:579
+#: config/mips/mips.h:592
msgid "Use multiply accumulate"
msgstr ""
-#: config/mips/mips.h:581
+#: config/mips/mips.h:594
msgid "Don't use multiply accumulate"
msgstr ""
-#: config/mips/mips.h:583 config/rs6000/rs6000.h:315
+#: config/mips/mips.h:596
msgid "Don't generate fused multiply/add instructions"
msgstr ""
-#: config/mips/mips.h:585 config/rs6000/rs6000.h:313
+#: config/mips/mips.h:598 config/rs6000/rs6000.h:330
msgid "Generate fused multiply/add instructions"
msgstr ""
-#: config/mips/mips.h:587
+#: config/mips/mips.h:600
msgid "Work around early 4300 hardware bug"
msgstr ""
-#: config/mips/mips.h:589
+#: config/mips/mips.h:602
msgid "Don't work around early 4300 hardware bug"
msgstr ""
-#: config/mips/mips.h:591
+#: config/mips/mips.h:604
msgid "Work around errata for early SB-1 revision 2 cores"
msgstr ""
-#: config/mips/mips.h:593
+#: config/mips/mips.h:606
msgid "Don't work around errata for early SB-1 revision 2 cores"
msgstr ""
-#: config/mips/mips.h:595
+#: config/mips/mips.h:608
msgid "Trap on integer divide by zero"
msgstr ""
-#: config/mips/mips.h:597
+#: config/mips/mips.h:610
msgid "Don't trap on integer divide by zero"
msgstr ""
-#: config/mips/mips.h:599
+#: config/mips/mips.h:612
msgid "Use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:601
+#: config/mips/mips.h:614
msgid "Don't use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:603
+#: config/mips/mips.h:616
msgid "Use NewABI-style %reloc() assembly operators"
msgstr ""
-#: config/mips/mips.h:605
+#: config/mips/mips.h:618
msgid "Use assembler macros instead of relocation operators"
msgstr ""
-#: config/mips/mips.h:607
+#: config/mips/mips.h:620
msgid "Generate mips16 code"
msgstr ""
-#: config/mips/mips.h:609
+#: config/mips/mips.h:622
msgid "Generate normal-mode code"
msgstr ""
-#: config/mips/mips.h:611
+#: config/mips/mips.h:624
msgid "Lift restrictions on GOT size"
msgstr ""
-#: config/mips/mips.h:613
+#: config/mips/mips.h:626
msgid "Do not lift restrictions on GOT size"
msgstr ""
-#: config/mips/mips.h:735
+#: config/mips/mips.h:748
msgid "Specify an ABI"
msgstr ""
-#: config/mips/mips.h:737
+#: config/mips/mips.h:750
msgid "Specify a Standard MIPS ISA"
msgstr ""
-#: config/mips/mips.h:739
-msgid "Don't call any cache flush functions"
-msgstr ""
-
-#: config/mips/mips.h:741
-msgid "Specify cache flush function"
-msgstr ""
-
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/mips/mips.h:2425
+#: config/mips/mips.h:2418
msgid "mips16 function profiling"
msgstr ""
@@ -11156,15 +11266,15 @@ msgstr ""
msgid "Do not generate a single exit point for each function"
msgstr ""
-#: config/mn10300/linux.h:69 config/mn10300/mn10300.h:71
+#: config/mn10300/linux.h:60 config/mn10300/mn10300.h:71
msgid "Target the AM33 processor"
msgstr ""
-#: config/mn10300/linux.h:70 config/mn10300/mn10300.h:75
+#: config/mn10300/linux.h:61 config/mn10300/mn10300.h:75
msgid "Target the AM33/2.0 processor"
msgstr ""
-#: config/mn10300/linux.h:71 config/mn10300/mn10300.h:78
+#: config/mn10300/linux.h:62 config/mn10300/mn10300.h:78
msgid "Enable linker relaxations"
msgstr ""
@@ -11176,7 +11286,7 @@ msgstr ""
msgid "Do not work around hardware multiply bug"
msgstr ""
-#: config/ns32k/ns32k.h:142 config/s390/s390.h:124
+#: config/ns32k/ns32k.h:142 config/s390/s390.h:125
msgid "Don't use hardware fp"
msgstr ""
@@ -11402,7 +11512,7 @@ msgstr ""
msgid "Assume code will be linked by HP ld"
msgstr ""
-#: config/pdp11/pdp11.h:62
+#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:316
msgid "Do not use hardware floating point"
msgstr ""
@@ -11535,160 +11645,176 @@ msgstr ""
msgid "junk at end of #pragma longcall"
msgstr ""
-#: config/rs6000/rs6000.c:827
+#: config/rs6000/rs6000.c:784
msgid "-mmultiple is not supported on little endian systems"
msgstr ""
-#: config/rs6000/rs6000.c:834
+#: config/rs6000/rs6000.c:791
msgid "-mstring is not supported on little endian systems"
msgstr ""
-#: config/rs6000/rs6000.c:848
+#: config/rs6000/rs6000.c:805
#, c-format
msgid "unknown -mdebug-%s switch"
msgstr ""
-#: config/rs6000/rs6000.c:860
+#: config/rs6000/rs6000.c:817
#, c-format
msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'"
msgstr ""
-#: config/rs6000/rs6000.c:871
+#: config/rs6000/rs6000.c:828
#, c-format
msgid "Unknown switch -mlong-double-%s"
msgstr ""
-#: config/rs6000/rs6000.c:1042
+#: config/rs6000/rs6000.c:1011
#, c-format
msgid "unknown -m%s= option specified: '%s'"
msgstr ""
-#: config/rs6000/rs6000.c:1059
+#: config/rs6000/rs6000.c:1032
#, c-format
msgid "not configured for ABI: '%s'"
msgstr ""
-#: config/rs6000/rs6000.c:1065
+#: config/rs6000/rs6000.c:1038
#, c-format
msgid "unknown ABI specified: '%s'"
msgstr ""
-#: config/rs6000/rs6000.c:1079
+#: config/rs6000/rs6000.c:1052
#, c-format
msgid "unknown -malign-XXXXX option specified: '%s'"
msgstr ""
-#: config/rs6000/rs6000.c:5297
+#: config/rs6000/rs6000.c:3892
+msgid ""
+"Cannot return value in vector register because altivec instructions are "
+"disabled, use -maltivec to enable them."
+msgstr ""
+
+#: config/rs6000/rs6000.c:3991
+msgid ""
+"Cannot pass argument in vector register because altivec instructions are "
+"disabled, use -maltivec to enable them."
+msgstr ""
+
+#: config/rs6000/rs6000.c:5409
msgid "argument 1 must be a 5-bit signed literal"
msgstr ""
-#: config/rs6000/rs6000.c:5399 config/rs6000/rs6000.c:6022
+#: config/rs6000/rs6000.c:5511 config/rs6000/rs6000.c:6134
msgid "argument 2 must be a 5-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:5439
+#: config/rs6000/rs6000.c:5551
msgid "argument 1 of __builtin_altivec_predicate must be a constant"
msgstr ""
-#: config/rs6000/rs6000.c:5493
+#: config/rs6000/rs6000.c:5605
msgid "argument 1 of __builtin_altivec_predicate is out of range"
msgstr ""
-#: config/rs6000/rs6000.c:5621
+#: config/rs6000/rs6000.c:5733
msgid "argument 3 must be a 4-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:5791
+#: config/rs6000/rs6000.c:5903
#, c-format
msgid "argument to `%s' must be a 2-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:5904
+#: config/rs6000/rs6000.c:6016
msgid "argument to dss must be a 2-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:6142
+#: config/rs6000/rs6000.c:6254
msgid "argument 1 of __builtin_spe_predicate must be a constant"
msgstr ""
-#: config/rs6000/rs6000.c:6215
+#: config/rs6000/rs6000.c:6327
msgid "argument 1 of __builtin_spe_predicate is out of range"
msgstr ""
-#: config/rs6000/rs6000.c:8647
+#: config/rs6000/rs6000.c:8531
+msgid "your function will be miscompiled"
+msgstr ""
+
+#: config/rs6000/rs6000.c:8779
#, c-format
msgid "invalid %%f value"
msgstr ""
-#: config/rs6000/rs6000.c:8656
+#: config/rs6000/rs6000.c:8788
#, c-format
msgid "invalid %%F value"
msgstr ""
-#: config/rs6000/rs6000.c:8665
+#: config/rs6000/rs6000.c:8797
#, c-format
msgid "invalid %%G value"
msgstr ""
-#: config/rs6000/rs6000.c:8700
+#: config/rs6000/rs6000.c:8832
#, c-format
msgid "invalid %%j code"
msgstr ""
-#: config/rs6000/rs6000.c:8710
+#: config/rs6000/rs6000.c:8842
#, c-format
msgid "invalid %%J code"
msgstr ""
-#: config/rs6000/rs6000.c:8720
+#: config/rs6000/rs6000.c:8852
#, c-format
msgid "invalid %%k value"
msgstr ""
-#: config/rs6000/rs6000.c:8740 config/xtensa/xtensa.c:1961
+#: config/rs6000/rs6000.c:8872 config/xtensa/xtensa.c:1999
#, c-format
msgid "invalid %%K value"
msgstr ""
-#: config/rs6000/rs6000.c:8807
+#: config/rs6000/rs6000.c:8939
#, c-format
msgid "invalid %%O value"
msgstr ""
-#: config/rs6000/rs6000.c:8854
+#: config/rs6000/rs6000.c:8986
#, c-format
msgid "invalid %%q value"
msgstr ""
-#: config/rs6000/rs6000.c:8898
+#: config/rs6000/rs6000.c:9030
#, c-format
msgid "invalid %%S value"
msgstr ""
-#: config/rs6000/rs6000.c:8940
+#: config/rs6000/rs6000.c:9072
#, c-format
msgid "invalid %%T value"
msgstr ""
-#: config/rs6000/rs6000.c:8950
+#: config/rs6000/rs6000.c:9082
#, c-format
msgid "invalid %%u value"
msgstr ""
-#: config/rs6000/rs6000.c:8959 config/xtensa/xtensa.c:1931
+#: config/rs6000/rs6000.c:9091 config/xtensa/xtensa.c:1969
#, c-format
msgid "invalid %%v value"
msgstr ""
-#: config/rs6000/rs6000.c:13453
+#: config/rs6000/rs6000.c:13581
msgid "no profiling of 64-bit code for this ABI"
msgstr ""
-#: config/rs6000/aix.h:186 config/rs6000/beos.h:32
+#: config/rs6000/aix.h:184 config/rs6000/beos.h:32
msgid "Always pass floating-point arguments in memory"
msgstr ""
-#: config/rs6000/aix.h:188 config/rs6000/beos.h:34
+#: config/rs6000/aix.h:186 config/rs6000/beos.h:34
msgid "Don't always pass floating-point arguments in memory"
msgstr ""
@@ -11733,11 +11859,15 @@ msgstr ""
msgid "-fpic is not supported; -fPIC assumed"
msgstr ""
-#: config/rs6000/linux64.h:195
+#: config/rs6000/linux64.h:96
+msgid "-m64 requires a PowerPC64 cpu"
+msgstr ""
+
+#: config/rs6000/linux64.h:201
msgid "Call mcount for profiling before a function prologue"
msgstr ""
-#: config/rs6000/linux64.h:197
+#: config/rs6000/linux64.h:203
msgid "Call mcount for profiling after a function prologue"
msgstr ""
@@ -11748,183 +11878,195 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/rs6000/rs6000.h:245
+#: config/rs6000/rs6000.h:262
msgid "Use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:248
+#: config/rs6000/rs6000.h:265
msgid "Use POWER2 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:250
+#: config/rs6000/rs6000.h:267
msgid "Do not use POWER2 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:253
+#: config/rs6000/rs6000.h:270
msgid "Do not use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:255
+#: config/rs6000/rs6000.h:272
msgid "Use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:258
+#: config/rs6000/rs6000.h:275
msgid "Do not use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:260
+#: config/rs6000/rs6000.h:277
msgid "Use PowerPC General Purpose group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:262
-msgid "Don't use PowerPC General Purpose group optional instructions"
+#: config/rs6000/rs6000.h:279
+msgid "Do not use PowerPC General Purpose group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:264
+#: config/rs6000/rs6000.h:281
msgid "Use PowerPC Graphics group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:266
-msgid "Don't use PowerPC Graphics group optional instructions"
+#: config/rs6000/rs6000.h:283
+msgid "Do not use PowerPC Graphics group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:268
+#: config/rs6000/rs6000.h:285
msgid "Use PowerPC-64 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:270
-msgid "Don't use PowerPC-64 instruction set"
+#: config/rs6000/rs6000.h:287
+msgid "Do not use PowerPC-64 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:272
+#: config/rs6000/rs6000.h:289
msgid "Use AltiVec instructions"
msgstr ""
-#: config/rs6000/rs6000.h:274
-msgid "Don't use AltiVec instructions"
+#: config/rs6000/rs6000.h:291
+msgid "Do not use AltiVec instructions"
msgstr ""
-#: config/rs6000/rs6000.h:276
+#: config/rs6000/rs6000.h:293
msgid "Use new mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.h:278
+#: config/rs6000/rs6000.h:295
msgid "Use old mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.h:281
+#: config/rs6000/rs6000.h:298
msgid "Put everything in the regular TOC"
msgstr ""
-#: config/rs6000/rs6000.h:283
+#: config/rs6000/rs6000.h:300
msgid "Place floating point constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:285
-msgid "Don't place floating point constants in TOC"
+#: config/rs6000/rs6000.h:302
+msgid "Do not place floating point constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:287
+#: config/rs6000/rs6000.h:304
msgid "Place symbol+offset constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:289
-msgid "Don't place symbol+offset constants in TOC"
+#: config/rs6000/rs6000.h:306
+msgid "Do not place symbol+offset constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:295
+#: config/rs6000/rs6000.h:312
msgid "Place variable addresses in the regular TOC"
msgstr ""
-#: config/rs6000/rs6000.h:301
+#: config/rs6000/rs6000.h:318
msgid "Generate load/store multiple instructions"
msgstr ""
-#: config/rs6000/rs6000.h:303
+#: config/rs6000/rs6000.h:320
msgid "Do not generate load/store multiple instructions"
msgstr ""
-#: config/rs6000/rs6000.h:305
+#: config/rs6000/rs6000.h:322
msgid "Generate string instructions for block moves"
msgstr ""
-#: config/rs6000/rs6000.h:307
+#: config/rs6000/rs6000.h:324
msgid "Do not generate string instructions for block moves"
msgstr ""
-#: config/rs6000/rs6000.h:309
+#: config/rs6000/rs6000.h:326
msgid "Generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.h:311
+#: config/rs6000/rs6000.h:328
msgid "Do not generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.h:319
-msgid "Don't schedule the start and end of the procedure"
+#: config/rs6000/rs6000.h:332
+msgid "Do not generate fused multiply/add instructions"
+msgstr ""
+
+#: config/rs6000/rs6000.h:336
+msgid "Do not schedule the start and end of the procedure"
msgstr ""
-#: config/rs6000/rs6000.h:325
+#: config/rs6000/rs6000.h:342
msgid "Return all structures in memory (AIX default)"
msgstr ""
-#: config/rs6000/rs6000.h:327
+#: config/rs6000/rs6000.h:344
msgid "Return small structures in registers (SVR4 default)"
msgstr ""
-#: config/rs6000/rs6000.h:414 config/sparc/sparc.h:648
+#: config/rs6000/rs6000.h:350
+msgid "Generate single field mfcr instruction"
+msgstr ""
+
+#: config/rs6000/rs6000.h:352
+msgid "Do not generate single field mfcr instruction"
+msgstr ""
+
+#: config/rs6000/rs6000.h:435 config/sparc/sparc.h:654
msgid "Use features of and schedule code for given CPU"
msgstr ""
-#: config/rs6000/rs6000.h:417
+#: config/rs6000/rs6000.h:438
msgid "Enable debug output"
msgstr ""
-#: config/rs6000/rs6000.h:419
+#: config/rs6000/rs6000.h:440
msgid "Select full, part, or no traceback table"
msgstr ""
-#: config/rs6000/rs6000.h:420
+#: config/rs6000/rs6000.h:441
msgid "Specify ABI to use"
msgstr ""
-#: config/rs6000/rs6000.h:422
+#: config/rs6000/rs6000.h:443
msgid "Specify size of long double (64 or 128 bits)"
msgstr ""
-#: config/rs6000/rs6000.h:424
+#: config/rs6000/rs6000.h:445
msgid "Specify yes/no if isel instructions should be generated"
msgstr ""
-#: config/rs6000/rs6000.h:426
+#: config/rs6000/rs6000.h:447
msgid "Specify yes/no if SPE SIMD instructions should be generated"
msgstr ""
-#: config/rs6000/rs6000.h:428
+#: config/rs6000/rs6000.h:449
msgid "Specify yes/no if using floating point in the GPRs"
msgstr ""
-#: config/rs6000/rs6000.h:430
+#: config/rs6000/rs6000.h:451
msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec"
msgstr ""
-#: config/rs6000/rs6000.h:432
+#: config/rs6000/rs6000.h:453
msgid "Avoid all range limits on call instructions"
msgstr ""
-#: config/rs6000/rs6000.h:435
+#: config/rs6000/rs6000.h:456
msgid "Determine which dependences between insns are considered costly"
msgstr ""
-#: config/rs6000/rs6000.h:437
+#: config/rs6000/rs6000.h:458
msgid "Specify which post scheduling nop insertion scheme to apply"
msgstr ""
-#: config/rs6000/rs6000.h:439
+#: config/rs6000/rs6000.h:460
msgid "Specify alignment of structure fields default/natural"
msgstr ""
-#: config/rs6000/rs6000.h:441
+#: config/rs6000/rs6000.h:462
msgid "Specify scheduling priority for dispatch slot restricted insns"
msgstr ""
@@ -11940,7 +12082,7 @@ msgstr ""
#. Number of bytes into the frame return addresses can be found. See
#. rs6000_stack_info in rs6000.c for more information on how the different
#. abi's store the return address.
-#: config/rs6000/rs6000.h:1895
+#: config/rs6000/rs6000.h:1929
msgid "RETURN_ADDRESS_OFFSET not supported"
msgstr ""
@@ -12100,135 +12242,135 @@ msgstr ""
msgid "-m%s not supported in this configuration"
msgstr ""
-#: config/s390/s390.c:1057
+#: config/s390/s390.c:926
#, c-format
msgid "Unknown cpu used in -march=%s."
msgstr ""
-#: config/s390/s390.c:1076
+#: config/s390/s390.c:945
#, c-format
msgid "Unknown cpu used in -mtune=%s."
msgstr ""
-#: config/s390/s390.c:1081
+#: config/s390/s390.c:950
#, c-format
msgid "z/Architecture mode not supported on %s."
msgstr ""
-#: config/s390/s390.c:1083
+#: config/s390/s390.c:952
msgid "64-bit ABI not supported in ESA/390 mode."
msgstr ""
-#: config/s390/s390.c:3397
+#: config/s390/s390.c:3336
msgid "invalid UNSPEC as operand (1)"
msgstr ""
-#: config/s390/s390.c:3445
+#: config/s390/s390.c:3384
msgid "invalid UNSPEC as operand (2)"
msgstr ""
-#: config/s390/s390.c:3451
+#: config/s390/s390.c:3390
msgid "UNKNOWN in s390_output_symbolic_const !?"
msgstr ""
-#: config/s390/s390.c:3467
+#: config/s390/s390.c:3406
msgid "Cannot decompose address."
msgstr ""
-#: config/s390/s390.c:3630
+#: config/s390/s390.c:3577
msgid "UNKNOWN in print_operand !?"
msgstr ""
-#: config/s390/s390.c:5348
+#: config/s390/s390.c:5304
msgid "Total size of local variables exceeds architecture limit."
msgstr ""
-#: config/s390/s390.h:125
+#: config/s390/s390.h:126
msgid "Set backchain"
msgstr ""
-#: config/s390/s390.h:126
+#: config/s390/s390.h:127
msgid "Don't set backchain (faster, but debug harder"
msgstr ""
-#: config/s390/s390.h:127
+#: config/s390/s390.h:128
msgid "Use bras for executable < 64k"
msgstr ""
-#: config/s390/s390.h:128
+#: config/s390/s390.h:129
msgid "Don't use bras"
msgstr ""
-#: config/s390/s390.h:129
+#: config/s390/s390.h:130
msgid "Additional debug prints"
msgstr ""
-#: config/s390/s390.h:130
+#: config/s390/s390.h:131
msgid "Don't print additional debug prints"
msgstr ""
-#: config/s390/s390.h:131
+#: config/s390/s390.h:132
msgid "64 bit ABI"
msgstr ""
-#: config/s390/s390.h:132
+#: config/s390/s390.h:133
msgid "31 bit ABI"
msgstr ""
-#: config/s390/s390.h:133
+#: config/s390/s390.h:134
msgid "z/Architecture"
msgstr ""
-#: config/s390/s390.h:134
+#: config/s390/s390.h:135
msgid "ESA/390 architecture"
msgstr ""
-#: config/s390/s390.h:135
+#: config/s390/s390.h:136
msgid "mvcle use"
msgstr ""
-#: config/s390/s390.h:136
+#: config/s390/s390.h:137
msgid "mvc&ex"
msgstr ""
-#: config/s390/s390.h:137
+#: config/s390/s390.h:138
msgid "enable tpf OS code"
msgstr ""
-#: config/s390/s390.h:138
+#: config/s390/s390.h:139
msgid "disable tpf OS code"
msgstr ""
-#: config/s390/s390.h:139
+#: config/s390/s390.h:140
msgid "disable fused multiply/add instructions"
msgstr ""
-#: config/s390/s390.h:140
+#: config/s390/s390.h:141
msgid "enable fused multiply/add instructions"
msgstr ""
-#: config/sh/sh.c:5827
+#: config/sh/sh.c:5841
msgid "__builtin_saveregs not supported by this subtarget"
msgstr ""
-#: config/sh/sh.c:6729
+#: config/sh/sh.c:6743
msgid "attribute interrupt_handler is not compatible with -m5-compact"
msgstr ""
#. The sp_switch attribute only has meaning for interrupt functions.
-#: config/sh/sh.c:6751 config/sh/sh.c:6786
+#: config/sh/sh.c:6765 config/sh/sh.c:6800
#, c-format
msgid "`%s' attribute only applies to interrupt functions"
msgstr ""
#. The argument must be a constant string.
-#: config/sh/sh.c:6758
+#: config/sh/sh.c:6772
#, c-format
msgid "`%s' attribute argument not a string constant"
msgstr ""
#. The argument must be a constant integer.
-#: config/sh/sh.c:6793
+#: config/sh/sh.c:6807
#, c-format
msgid "`%s' attribute argument not an integer constant"
msgstr ""
@@ -12240,74 +12382,74 @@ msgstr ""
msgid "Profiling is not supported on this target."
msgstr ""
-#: config/sparc/sparc.c:355
+#: config/sparc/sparc.c:360
#, c-format
msgid "%s is not supported by this configuration"
msgstr ""
-#: config/sparc/sparc.c:362
+#: config/sparc/sparc.c:367
msgid "-mlong-double-64 not allowed with -m64"
msgstr ""
-#: config/sparc/sparc.c:387
+#: config/sparc/sparc.c:392
msgid "-mcmodel= is not supported on 32 bit systems"
msgstr ""
-#: config/sparc/sparc.c:6666 config/sparc/sparc.c:6672
+#: config/sparc/sparc.c:6793 config/sparc/sparc.c:6799
#, c-format
msgid "invalid %%Y operand"
msgstr ""
-#: config/sparc/sparc.c:6742
+#: config/sparc/sparc.c:6869
#, c-format
msgid "invalid %%A operand"
msgstr ""
-#: config/sparc/sparc.c:6752
+#: config/sparc/sparc.c:6879
#, c-format
msgid "invalid %%B operand"
msgstr ""
-#: config/sparc/sparc.c:6791
+#: config/sparc/sparc.c:6918
#, c-format
msgid "invalid %%c operand"
msgstr ""
-#: config/sparc/sparc.c:6792
+#: config/sparc/sparc.c:6919
#, c-format
msgid "invalid %%C operand"
msgstr ""
-#: config/sparc/sparc.c:6813
+#: config/sparc/sparc.c:6940
#, c-format
msgid "invalid %%d operand"
msgstr ""
-#: config/sparc/sparc.c:6814
+#: config/sparc/sparc.c:6941
#, c-format
msgid "invalid %%D operand"
msgstr ""
-#: config/sparc/sparc.c:6830
+#: config/sparc/sparc.c:6957
#, c-format
msgid "invalid %%f operand"
msgstr ""
-#: config/sparc/sparc.c:6844
+#: config/sparc/sparc.c:6971
#, c-format
msgid "invalid %%s operand"
msgstr ""
-#: config/sparc/sparc.c:6898
+#: config/sparc/sparc.c:7025
msgid "long long constant not a valid immediate operand"
msgstr ""
-#: config/sparc/sparc.c:6901
+#: config/sparc/sparc.c:7028
msgid "floating point constant not a valid immediate operand"
msgstr ""
-#: config/sparc/freebsd.h:77 config/sparc/linux.h:91
-#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:216
+#: config/sparc/freebsd.h:81 config/sparc/linux.h:92
+#: config/sparc/linux64.h:104 config/sparc/netbsd-elf.h:216
msgid "Use 128 bit long doubles"
msgstr ""
@@ -12319,133 +12461,133 @@ msgstr ""
msgid "Generate code for little endian"
msgstr ""
-#: config/sparc/sp86x-elf.h:69
+#: config/sparc/sp86x-elf.h:68
msgid "Use little-endian byte order for data"
msgstr ""
-#: config/sparc/sparc.h:547
+#: config/sparc/sparc.h:553
msgid "Assume possible double misalignment"
msgstr ""
-#: config/sparc/sparc.h:549
+#: config/sparc/sparc.h:555
msgid "Assume all doubles are aligned"
msgstr ""
-#: config/sparc/sparc.h:551
+#: config/sparc/sparc.h:557
msgid "Pass -assert pure-text to linker"
msgstr ""
-#: config/sparc/sparc.h:553
+#: config/sparc/sparc.h:559
msgid "Do not pass -assert pure-text to linker"
msgstr ""
-#: config/sparc/sparc.h:555
+#: config/sparc/sparc.h:561
msgid "Use flat register window model"
msgstr ""
-#: config/sparc/sparc.h:557
+#: config/sparc/sparc.h:563
msgid "Do not use flat register window model"
msgstr ""
-#: config/sparc/sparc.h:559
+#: config/sparc/sparc.h:565
msgid "Use ABI reserved registers"
msgstr ""
-#: config/sparc/sparc.h:561
+#: config/sparc/sparc.h:567
msgid "Do not use ABI reserved registers"
msgstr ""
-#: config/sparc/sparc.h:563
+#: config/sparc/sparc.h:569
msgid "Use hardware quad fp instructions"
msgstr ""
-#: config/sparc/sparc.h:565
+#: config/sparc/sparc.h:571
msgid "Do not use hardware quad fp instructions"
msgstr ""
-#: config/sparc/sparc.h:567
+#: config/sparc/sparc.h:573
msgid "Compile for v8plus ABI"
msgstr ""
-#: config/sparc/sparc.h:569
+#: config/sparc/sparc.h:575
msgid "Do not compile for v8plus ABI"
msgstr ""
-#: config/sparc/sparc.h:571
+#: config/sparc/sparc.h:577
msgid "Utilize Visual Instruction Set"
msgstr ""
-#: config/sparc/sparc.h:573
+#: config/sparc/sparc.h:579
msgid "Do not utilize Visual Instruction Set"
msgstr ""
#. ??? These are deprecated, coerced to -mcpu=. Delete in 2.9.
-#: config/sparc/sparc.h:576
+#: config/sparc/sparc.h:582
msgid "Optimize for Cypress processors"
msgstr ""
-#: config/sparc/sparc.h:578
+#: config/sparc/sparc.h:584
msgid "Optimize for SPARCLite processors"
msgstr ""
-#: config/sparc/sparc.h:580
+#: config/sparc/sparc.h:586
msgid "Optimize for F930 processors"
msgstr ""
-#: config/sparc/sparc.h:582
+#: config/sparc/sparc.h:588
msgid "Optimize for F934 processors"
msgstr ""
-#: config/sparc/sparc.h:584
+#: config/sparc/sparc.h:590
msgid "Use V8 SPARC ISA"
msgstr ""
-#: config/sparc/sparc.h:586
+#: config/sparc/sparc.h:592
msgid "Optimize for SuperSPARC processors"
msgstr ""
#. End of deprecated options.
-#: config/sparc/sparc.h:589
+#: config/sparc/sparc.h:595
msgid "Pointers are 64-bit"
msgstr ""
-#: config/sparc/sparc.h:591
+#: config/sparc/sparc.h:597
msgid "Pointers are 32-bit"
msgstr ""
-#: config/sparc/sparc.h:593
+#: config/sparc/sparc.h:599
msgid "Use 32-bit ABI"
msgstr ""
-#: config/sparc/sparc.h:595
+#: config/sparc/sparc.h:601
msgid "Use 64-bit ABI"
msgstr ""
-#: config/sparc/sparc.h:597
+#: config/sparc/sparc.h:603
msgid "Use stack bias"
msgstr ""
-#: config/sparc/sparc.h:599
+#: config/sparc/sparc.h:605
msgid "Do not use stack bias"
msgstr ""
-#: config/sparc/sparc.h:601
+#: config/sparc/sparc.h:607
msgid "Use structs on stronger alignment for double-word copies"
msgstr ""
-#: config/sparc/sparc.h:603
+#: config/sparc/sparc.h:609
msgid "Do not use structs on stronger alignment for double-word copies"
msgstr ""
-#: config/sparc/sparc.h:605
+#: config/sparc/sparc.h:611
msgid "Optimize tail call instructions in assembler and linker"
msgstr ""
-#: config/sparc/sparc.h:607
+#: config/sparc/sparc.h:613
msgid "Do not optimize tail call instructions in assembler or linker"
msgstr ""
-#: config/sparc/sparc.h:652
+#: config/sparc/sparc.h:658
msgid "Use given SPARC code model"
msgstr ""
@@ -12683,56 +12825,56 @@ msgstr ""
msgid "Set the max size of data eligible for the ZDA area"
msgstr ""
-#: config/xtensa/xtensa.c:1790
+#: config/xtensa/xtensa.c:1828
msgid "boolean registers required for the floating-point option"
msgstr ""
-#: config/xtensa/xtensa.c:1844
+#: config/xtensa/xtensa.c:1882
#, c-format
msgid "-f%s is not supported with CONST16 instructions"
msgstr ""
-#: config/xtensa/xtensa.c:1849
+#: config/xtensa/xtensa.c:1887
msgid "PIC is required but not supported with CONST16 instructions"
msgstr ""
-#: config/xtensa/xtensa.c:1919
+#: config/xtensa/xtensa.c:1957
#, c-format
msgid "invalid %%D value"
msgstr ""
-#: config/xtensa/xtensa.c:1956
+#: config/xtensa/xtensa.c:1994
msgid "invalid mask"
msgstr ""
-#: config/xtensa/xtensa.c:1982
+#: config/xtensa/xtensa.c:2020
#, c-format
msgid "invalid %%x value"
msgstr ""
-#: config/xtensa/xtensa.c:1989
+#: config/xtensa/xtensa.c:2027
#, c-format
msgid "invalid %%d value"
msgstr ""
-#: config/xtensa/xtensa.c:2010 config/xtensa/xtensa.c:2020
+#: config/xtensa/xtensa.c:2048 config/xtensa/xtensa.c:2058
#, c-format
msgid "invalid %%t/%%b value"
msgstr ""
-#: config/xtensa/xtensa.c:2062
+#: config/xtensa/xtensa.c:2100
msgid "invalid address"
msgstr ""
-#: config/xtensa/xtensa.c:2087
+#: config/xtensa/xtensa.c:2125
msgid "no register in address"
msgstr ""
-#: config/xtensa/xtensa.c:2095
+#: config/xtensa/xtensa.c:2133
msgid "address offset not a constant"
msgstr ""
-#: config/xtensa/xtensa.c:2759
+#: config/xtensa/xtensa.c:2744
msgid "only uninitialized variables can be placed in a .bss section"
msgstr ""
@@ -12776,539 +12918,505 @@ msgstr ""
msgid "Use direct CALLn instructions for fast calls"
msgstr ""
-#: ada/misc.c:239
+#: ada/misc.c:240
#, c-format
msgid "missing argument to \"-%s\""
msgstr ""
-#: ada/misc.c:280
+#: ada/misc.c:281
msgid "`-gnat' misspelled as `-gant'"
msgstr ""
-#: cp/call.c:253
+#: cp/call.c:217
msgid "unable to call pointer to member function here"
msgstr ""
-#: cp/call.c:377
-msgid "destructors take no parameters"
-msgstr ""
-
-#: cp/call.c:381
-msgid "destructor name `~%T' does not match type `%T' of expression"
-msgstr ""
-
-#: cp/call.c:397 cp/call.c:4987
-msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
-msgstr ""
-
-#: cp/call.c:419
-msgid "request for member `%D' is ambiguous"
-msgstr ""
-
-#: cp/call.c:2350
+#: cp/call.c:2228
msgid "%s %D(%T, %T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2355
+#: cp/call.c:2233
msgid "%s %D(%T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2359
+#: cp/call.c:2237
msgid "%s %D(%T) <built-in>"
msgstr ""
-#: cp/call.c:2363
+#: cp/call.c:2241
msgid "%s %T <conversion>"
msgstr ""
-#: cp/call.c:2365
+#: cp/call.c:2243
msgid "%J%s %+#D <near match>"
msgstr ""
-#: cp/call.c:2367
+#: cp/call.c:2245
msgid "%J%s %+#D"
msgstr ""
-#: cp/call.c:2402
+#: cp/call.c:2280
msgid "candidates are:"
msgstr ""
-#: cp/call.c:2590
+#: cp/call.c:2468
msgid "conversion from `%T' to `%T' is ambiguous"
msgstr ""
-#: cp/call.c:2741 cp/call.c:2785
+#: cp/call.c:2619 cp/call.c:2663
msgid "no matching function for call to `%D(%A)'"
msgstr ""
-#: cp/call.c:2744 cp/call.c:2788
+#: cp/call.c:2622 cp/call.c:2666
msgid "call of overloaded `%D(%A)' is ambiguous"
msgstr ""
#. It's no good looking for an overloaded operator() on a
#. pointer-to-member-function.
-#: cp/call.c:2854
+#: cp/call.c:2732
#, c-format
msgid ""
"pointer-to-member function %E cannot be called without an object; consider "
"using .* or ->*"
msgstr ""
-#: cp/call.c:2920
+#: cp/call.c:2798
msgid "no match for call to `(%T) (%A)'"
msgstr ""
-#: cp/call.c:2928
+#: cp/call.c:2806
msgid "call of `(%T) (%A)' is ambiguous"
msgstr ""
-#: cp/call.c:2961
+#: cp/call.c:2839
#, c-format
msgid "%s for ternary 'operator?:' in '%E ? %E : %E'"
msgstr ""
-#: cp/call.c:2967
+#: cp/call.c:2845
#, c-format
msgid "%s for 'operator%s' in '%E%s'"
msgstr ""
-#: cp/call.c:2971
+#: cp/call.c:2849
#, c-format
msgid "%s for 'operator[]' in '%E[%E]'"
msgstr ""
-#: cp/call.c:2976
+#: cp/call.c:2854
#, c-format
msgid "%s for '%s' in '%s %E'"
msgstr ""
-#: cp/call.c:2981
+#: cp/call.c:2859
#, c-format
msgid "%s for 'operator%s' in '%E %s %E'"
msgstr ""
-#: cp/call.c:2984
+#: cp/call.c:2862
#, c-format
msgid "%s for 'operator%s' in '%s%E'"
msgstr ""
-#: cp/call.c:3079
+#: cp/call.c:2951
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
msgstr ""
-#: cp/call.c:3140
+#: cp/call.c:3028
#, c-format
msgid "`%E' has type `void' and is not a throw-expression"
msgstr ""
-#: cp/call.c:3173 cp/call.c:3364
+#: cp/call.c:3061 cp/call.c:3265
msgid "operands to ?: have different types"
msgstr ""
-#: cp/call.c:3318
+#: cp/call.c:3219
msgid "enumeral mismatch in conditional expression: `%T' vs `%T'"
msgstr ""
-#: cp/call.c:3325
+#: cp/call.c:3226
msgid "enumeral and non-enumeral type in conditional expression"
msgstr ""
-#: cp/call.c:3609
+#: cp/call.c:3511
msgid "no `%D(int)' declared for postfix `%s', trying prefix operator instead"
msgstr ""
-#: cp/call.c:3654
+#: cp/call.c:3560
msgid "using synthesized `%#D' for copy assignment"
msgstr ""
-#: cp/call.c:3656
+#: cp/call.c:3562
msgid " where cfront would use `%#D'"
msgstr ""
-#: cp/call.c:3679
+#: cp/call.c:3585
msgid "comparison between `%#T' and `%#T'"
msgstr ""
-#: cp/call.c:3925
+#: cp/call.c:3831
msgid "no suitable `operator %s' for `%T'"
msgstr ""
-#: cp/call.c:3942
+#: cp/call.c:3848
msgid "`%+#D' is private"
msgstr ""
-#: cp/call.c:3944
+#: cp/call.c:3850
msgid "`%+#D' is protected"
msgstr ""
-#: cp/call.c:3946
+#: cp/call.c:3852
msgid "`%+#D' is inaccessible"
msgstr ""
-#: cp/call.c:3947
+#: cp/call.c:3853
msgid "within this context"
msgstr ""
-#: cp/call.c:3990
+#: cp/call.c:3923
msgid "invalid conversion from `%T' to `%T'"
msgstr ""
-#: cp/call.c:3992 cp/call.c:4130 cp/call.c:4132
+#: cp/call.c:3925
msgid " initializing argument %P of `%D'"
msgstr ""
-#: cp/call.c:4054 cp/call.c:4058
-msgid " initializing argument %P of `%D' from result of `%D'"
-msgstr ""
-
-#: cp/call.c:4064 cp/call.c:4067
-msgid " initializing temporary from result of `%D'"
-msgstr ""
-
-#: cp/call.c:4152
+#: cp/call.c:4079
msgid "cannot bind bitfield `%E' to `%T'"
msgstr ""
-#: cp/call.c:4155
+#: cp/call.c:4082
msgid "cannot bind packed field `%E' to `%T'"
msgstr ""
-#: cp/call.c:4158
+#: cp/call.c:4085
msgid "cannot bind rvalue `%E' to `%T'"
msgstr ""
-#. Undefined behavior [expr.call] 5.2.2/7. We used to just warn
-#. here and do a bitwise copy, but now cp_expr_size will abort if we
-#. try to do that.
-#: cp/call.c:4239
+#: cp/call.c:4173
msgid ""
"cannot pass objects of non-POD type `%#T' through `...'; call will abort at "
"runtime"
msgstr ""
#. Undefined behavior [expr.call] 5.2.2/7.
-#: cp/call.c:4264
-msgid "cannot receive objects of non-POD type `%#T' through `...'"
+#: cp/call.c:4197
+msgid ""
+"cannot receive objects of non-POD type `%#T' through `...'; call will abort "
+"at runtime"
msgstr ""
-#: cp/call.c:4302
+#: cp/call.c:4237
msgid "the default argument for parameter %d of `%D' has not yet been parsed"
msgstr ""
-#: cp/call.c:4459
+#: cp/call.c:4432
msgid "passing `%T' as `this' argument of `%#D' discards qualifiers"
msgstr ""
-#: cp/call.c:4478
+#: cp/call.c:4451
msgid "`%T' is not an accessible base of `%T'"
msgstr ""
-#: cp/call.c:4721
+#: cp/call.c:4720
msgid "could not find class$ field in java interface type `%T'"
msgstr ""
-#: cp/call.c:4961
+#: cp/call.c:4975
msgid "call to non-function `%D'"
msgstr ""
-#: cp/call.c:5065
+#: cp/call.c:5001
+msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
+msgstr ""
+
+#: cp/call.c:5079
msgid "no matching function for call to `%T::%s(%A)%#V'"
msgstr ""
-#: cp/call.c:5082
+#: cp/call.c:5096
#, c-format
msgid "call of overloaded `%s(%A)' is ambiguous"
msgstr ""
-#: cp/call.c:5103
+#: cp/call.c:5117
msgid "cannot call member function `%D' without object"
msgstr ""
-#: cp/call.c:5689
+#: cp/call.c:5702
msgid "passing `%T' chooses `%T' over `%T'"
msgstr ""
-#: cp/call.c:5691 cp/name-lookup.c:4039
+#: cp/call.c:5704 cp/name-lookup.c:4143
msgid " in call to `%D'"
msgstr ""
-#: cp/call.c:5748
+#: cp/call.c:5761
msgid "choosing `%D' over `%D'"
msgstr ""
-#: cp/call.c:5749
+#: cp/call.c:5762
msgid " for conversion from `%T' to `%T'"
msgstr ""
-#: cp/call.c:5751
+#: cp/call.c:5764
msgid " because conversion sequence for the argument is better"
msgstr ""
-#: cp/call.c:5871
+#: cp/call.c:5884
msgid ""
"ISO C++ says that these are ambiguous, even though the worst conversion for "
"the first is better than the worst conversion for the second:"
msgstr ""
-#: cp/call.c:5875
+#: cp/call.c:5888
msgid "candidate 1:"
msgstr ""
-#: cp/call.c:5876
+#: cp/call.c:5889
msgid "candidate 2:"
msgstr ""
-#: cp/call.c:5985
+#: cp/call.c:5998
msgid "could not convert `%E' to `%T'"
msgstr ""
-#: cp/call.c:6090
+#: cp/call.c:6103
msgid ""
"invalid initialization of non-const reference of type '%T' from a temporary "
"of type '%T'"
msgstr ""
-#: cp/call.c:6094
+#: cp/call.c:6107
msgid ""
"invalid initialization of reference of type '%T' from expression of type '%T'"
msgstr ""
-#: cp/class.c:282
+#: cp/class.c:279
msgid ""
"cannot convert from base `%T' to derived type `%T' via virtual base `%T'"
msgstr ""
-#: cp/class.c:924
-msgid "`%#D' and `%#D' cannot be overloaded"
-msgstr ""
-
-#: cp/class.c:1007
-msgid "duplicate enum value `%D'"
-msgstr ""
-
-#: cp/class.c:1010
-msgid "duplicate field `%D' (as enum and non-enum)"
+#: cp/class.c:762
+msgid "Java class '%T' cannot have an implicit non-trivial destructor"
msgstr ""
-#: cp/class.c:1017
-msgid "duplicate nested type `%D'"
+#: cp/class.c:763
+msgid "Java class '%T' cannot have a destructor"
msgstr ""
-#: cp/class.c:1028
-msgid "duplicate field `%D' (as type and non-type)"
-msgstr ""
-
-#: cp/class.c:1032
-msgid "duplicate member `%D'"
+#: cp/class.c:931
+msgid "`%#D' and `%#D' cannot be overloaded"
msgstr ""
-#: cp/class.c:1070
+#: cp/class.c:977
msgid "conflicting access specifications for method `%D', ignored"
msgstr ""
-#: cp/class.c:1072
+#: cp/class.c:979
#, c-format
msgid "conflicting access specifications for field `%s', ignored"
msgstr ""
-#: cp/class.c:1122
+#: cp/class.c:1029
msgid "`%D' names constructor"
msgstr ""
-#: cp/class.c:1127
+#: cp/class.c:1034
msgid "`%D' invalid in `%T'"
msgstr ""
-#: cp/class.c:1135
+#: cp/class.c:1042
msgid "no members matching `%D' in `%#T'"
msgstr ""
-#: cp/class.c:1167 cp/class.c:1175
+#: cp/class.c:1074 cp/class.c:1082
msgid "`%D' invalid in `%#T'"
msgstr ""
-#: cp/class.c:1168
+#: cp/class.c:1075
msgid " because of local method `%#D' with same name"
msgstr ""
-#: cp/class.c:1176
+#: cp/class.c:1083
msgid " because of local member `%#D' with same name"
msgstr ""
-#: cp/class.c:1246
+#: cp/class.c:1153
msgid "base class `%#T' has a non-virtual destructor"
msgstr ""
-#: cp/class.c:1266
+#: cp/class.c:1173
msgid ""
"base `%T' with only non-default constructor in class without a constructor"
msgstr ""
-#: cp/class.c:1650
+#: cp/class.c:1557
msgid "all member functions in class `%T' are private"
msgstr ""
-#: cp/class.c:1661
+#: cp/class.c:1568
msgid "`%#T' only defines a private destructor and has no friends"
msgstr ""
-#: cp/class.c:1703
+#: cp/class.c:1610
msgid "`%#T' only defines private constructors and has no friends"
msgstr ""
-#: cp/class.c:2084
+#: cp/class.c:1995
msgid "no unique final overrider for `%D' in `%T'"
msgstr ""
#. Here we know it is a hider, and no overrider exists.
-#: cp/class.c:2519
+#: cp/class.c:2441
msgid "`%D' was hidden"
msgstr ""
-#: cp/class.c:2520
+#: cp/class.c:2442
msgid " by `%D'"
msgstr ""
-#: cp/class.c:2561
-msgid "ISO C++ forbids member `%D' with same name as enclosing class"
-msgstr ""
-
-#: cp/class.c:2566 cp/decl2.c:1186
+#: cp/class.c:2484 cp/decl2.c:1160
msgid "`%#D' invalid; an anonymous union can only have non-static data members"
msgstr ""
-#: cp/class.c:2572 cp/decl2.c:1193
+#: cp/class.c:2490 cp/decl2.c:1167
msgid "private member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2575 cp/decl2.c:1195
+#: cp/class.c:2493 cp/decl2.c:1169
msgid "protected member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2694
+#: cp/class.c:2612
msgid ""
"vtable layout for class `%T' may not be ABI-compliant and may change in a "
"future version of GCC due to implicit virtual destructor"
msgstr ""
-#: cp/class.c:2754
+#: cp/class.c:2672
msgid "bit-field `%#D' with non-integral type"
msgstr ""
-#: cp/class.c:2774
+#: cp/class.c:2692
msgid "bit-field `%D' width not an integer constant"
msgstr ""
-#: cp/class.c:2780
+#: cp/class.c:2698
msgid "negative width in bit-field `%D'"
msgstr ""
-#: cp/class.c:2785
+#: cp/class.c:2703
msgid "zero width for bit-field `%D'"
msgstr ""
-#: cp/class.c:2791
+#: cp/class.c:2709
msgid "width of `%D' exceeds its type"
msgstr ""
-#: cp/class.c:2800
+#: cp/class.c:2718
msgid "`%D' is too small to hold all values of `%#T'"
msgstr ""
-#: cp/class.c:2862
+#: cp/class.c:2780
msgid "member `%#D' with constructor not allowed in union"
msgstr ""
-#: cp/class.c:2865
+#: cp/class.c:2783
msgid "member `%#D' with destructor not allowed in union"
msgstr ""
-#: cp/class.c:2868
+#: cp/class.c:2786
msgid "member `%#D' with copy assignment operator not allowed in union"
msgstr ""
-#: cp/class.c:2895
+#: cp/class.c:2813
msgid "multiple fields in union `%T' initialized"
msgstr ""
-#: cp/class.c:2964
+#: cp/class.c:2879
msgid "ignoring packed attribute on unpacked non-POD field `%#D'"
msgstr ""
-#: cp/class.c:3016
+#: cp/class.c:2939
+msgid "`%D' may not be static because it is a member of a union"
+msgstr ""
+
+#: cp/class.c:2944
+msgid "`%D' may not have reference type `%T' because it is a member of a union"
+msgstr ""
+
+#: cp/class.c:2952
msgid "field `%D' in local class cannot be static"
msgstr ""
-#: cp/class.c:3022
+#: cp/class.c:2958
msgid "field `%D' invalidly declared function type"
msgstr ""
-#: cp/class.c:3029
+#: cp/class.c:2965
msgid "field `%D' invalidly declared method type"
msgstr ""
-#. Unions cannot have static members.
-#: cp/class.c:3047
-msgid "field `%D' declared static in union"
-msgstr ""
-
-#: cp/class.c:3074
+#: cp/class.c:2998
msgid "non-static reference `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3109
+#: cp/class.c:3041
msgid "non-static const member `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3124
+#: cp/class.c:3056
msgid "field `%#D' with same name as class"
msgstr ""
-#: cp/class.c:3142
+#: cp/class.c:3074
msgid "`%#T' has pointer data members"
msgstr ""
-#: cp/class.c:3146
+#: cp/class.c:3078
msgid " but does not override `%T(const %T&)'"
msgstr ""
-#: cp/class.c:3148
+#: cp/class.c:3080
msgid " or `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3151
+#: cp/class.c:3083
msgid " but does not override `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3578
+#: cp/class.c:3513
msgid ""
"offset of empty base `%T' may not be ABI-compliant and maychange in a future "
"version of GCC"
msgstr ""
-#: cp/class.c:3687
+#: cp/class.c:3623
msgid "class `%T' will be considered nearly empty in a future version of GCC"
msgstr ""
-#: cp/class.c:3774
+#: cp/class.c:3710
msgid "initializer specified for non-virtual method `%D'"
msgstr ""
-#: cp/class.c:4459
+#: cp/class.c:4398
msgid ""
"offset of virtual base `%T' is not ABI-compliant and may change in a future "
"version of GCC"
msgstr ""
-#: cp/class.c:4549
+#: cp/class.c:4488
msgid "direct base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:4562
+#: cp/class.c:4501
msgid "virtual base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:4736
+#: cp/class.c:4675
msgid ""
"size assigned to `%T' may not be ABI-compliant and may change in a future "
"version of GCC"
@@ -13316,77 +13424,77 @@ msgstr ""
#. Versions of G++ before G++ 3.4 did not reset the
#. DECL_MODE.
-#: cp/class.c:4775
+#: cp/class.c:4714
msgid ""
"the offset of `%D' may not be ABI-compliant and may change in a future "
"version of GCC"
msgstr ""
-#: cp/class.c:4798
+#: cp/class.c:4737
msgid ""
"offset of `%D' is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:4807
+#: cp/class.c:4746
msgid ""
"`%D' contains empty classes which may cause base classes to be placed at "
"different locations in a future version of GCC"
msgstr ""
-#: cp/class.c:4866
+#: cp/class.c:4805
msgid ""
"layout of classes derived from empty class `%T' may change in a future "
"version of GCC"
msgstr ""
-#: cp/class.c:4994 cp/semantics.c:2036
+#: cp/class.c:4935 cp/semantics.c:2044
msgid "redefinition of `%#T'"
msgstr ""
-#: cp/class.c:5160
+#: cp/class.c:5105
msgid "`%#T' has virtual functions but non-virtual destructor"
msgstr ""
-#: cp/class.c:5239
+#: cp/class.c:5184
msgid "trying to finish struct, but kicked out due to previous parse errors"
msgstr ""
-#: cp/class.c:5681
+#: cp/class.c:5626
#, c-format
msgid "language string `\"%s\"' not recognized"
msgstr ""
-#: cp/class.c:5769
+#: cp/class.c:5714
msgid ""
"cannot resolve overloaded function `%D' based on conversion to type `%T'"
msgstr ""
-#: cp/class.c:5894
+#: cp/class.c:5839
msgid "no matches converting function `%D' to type `%#T'"
msgstr ""
-#: cp/class.c:5917
+#: cp/class.c:5862
msgid "converting overloaded function `%D' to type `%#T' is ambiguous"
msgstr ""
-#: cp/class.c:5943
+#: cp/class.c:5888
msgid "assuming pointer to member `%D'"
msgstr ""
-#: cp/class.c:5946
+#: cp/class.c:5891
#, c-format
msgid "(a pointer to member can only be formed with `&%E')"
msgstr ""
-#: cp/class.c:5991 cp/class.c:6173 cp/class.c:6180
+#: cp/class.c:5936 cp/class.c:6118 cp/class.c:6125
msgid "not enough type information"
msgstr ""
-#: cp/class.c:6008
+#: cp/class.c:5953
msgid "argument of type `%T' does not match `%T'"
msgstr ""
-#: cp/class.c:6157
+#: cp/class.c:6102
msgid "invalid operation on uninstantiated type"
msgstr ""
@@ -13395,15 +13503,15 @@ msgstr ""
#. A name N used in a class S shall refer to the same declaration
#. in its context and when re-evaluated in the completed scope of
#. S.
-#: cp/class.c:6417 cp/decl.c:1229 cp/name-lookup.c:491 cp/pt.c:1959
+#: cp/class.c:6360 cp/decl.c:1222 cp/name-lookup.c:502 cp/pt.c:2097
msgid "declaration of `%#D'"
msgstr ""
-#: cp/class.c:6418
+#: cp/class.c:6361
msgid "changes meaning of `%D' from `%+#D'"
msgstr ""
-#: cp/cp-lang.c:394
+#: cp/cp-lang.c:398
msgid "inter-module optimisations not implemented yet"
msgstr ""
@@ -13459,92 +13567,93 @@ msgstr ""
msgid "conversion from `%T' to non-scalar type `%T' requested"
msgstr ""
-#: cp/cvt.c:849
+#: cp/cvt.c:850
msgid "object of incomplete type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:852
+#: cp/cvt.c:853
msgid "object of type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:868
+#: cp/cvt.c:869
msgid "object `%E' of incomplete type `%T' will not be accessed in %s"
msgstr ""
#. [over.over] enumerates the places where we can take the address
#. of an overloaded function, and this is not one of them.
-#: cp/cvt.c:884
+#: cp/cvt.c:885
#, c-format
msgid "%s cannot resolve address of overloaded function"
msgstr ""
#. Only warn when there is no &.
-#: cp/cvt.c:890
+#: cp/cvt.c:891
#, c-format
msgid "%s is a reference, not call, to function `%E'"
msgstr ""
-#: cp/cvt.c:897
+#: cp/cvt.c:898
#, c-format
msgid "%s has no effect"
msgstr ""
-#: cp/cvt.c:1008
+#: cp/cvt.c:1009
msgid "converting NULL to non-pointer type"
msgstr ""
-#: cp/cvt.c:1080
+#: cp/cvt.c:1082
msgid "ambiguous default type conversion from `%T'"
msgstr ""
-#: cp/cvt.c:1082
+#: cp/cvt.c:1084
msgid " candidate conversions include `%D' and `%D'"
msgstr ""
-#. Folks should explicitly indicate the appropriate alphabet for
-#. each demangling. Providing a default would allow the
-#. question to go unconsidered.
-#: cp/cxxfilt.c:238
-msgid "Internal error: no symbol alphabet for current style"
-msgstr ""
-
-#: cp/decl.c:378
+#: cp/decl.c:371
msgid "label `%D' used but not defined"
msgstr ""
-#: cp/decl.c:385
+#: cp/decl.c:378
msgid "label `%D' defined but not used"
msgstr ""
-#: cp/decl.c:1137 cp/decl.c:1556
+#: cp/decl.c:1130 cp/decl.c:1556
msgid "previous declaration of `%D'"
msgstr ""
-#: cp/decl.c:1186
+#: cp/decl.c:1178
+msgid "%Jfunction '%D' redeclared as inline"
+msgstr ""
+
+#: cp/decl.c:1179
msgid "%Jprevious declaration of '%D' with attribute noinline"
msgstr ""
-#: cp/decl.c:1195
+#: cp/decl.c:1186
+msgid "%Jfunction '%D' redeclared with attribute noinline"
+msgstr ""
+
+#: cp/decl.c:1188
msgid "%Jprevious declaration of '%D' was inline"
msgstr ""
-#: cp/decl.c:1216 cp/decl.c:1254
+#: cp/decl.c:1209 cp/decl.c:1247
msgid "shadowing %s function `%#D'"
msgstr ""
-#: cp/decl.c:1225
+#: cp/decl.c:1218
msgid "library function `%#D' redeclared as non-function `%#D'"
msgstr ""
-#: cp/decl.c:1230
+#: cp/decl.c:1223
msgid "conflicts with built-in declaration `%#D'"
msgstr ""
-#: cp/decl.c:1249 cp/decl.c:1354 cp/decl.c:1370
+#: cp/decl.c:1242 cp/decl.c:1354 cp/decl.c:1370
msgid "new declaration `%#D'"
msgstr ""
-#: cp/decl.c:1250
+#: cp/decl.c:1243
msgid "ambiguates built-in declaration `%#D'"
msgstr ""
@@ -13560,7 +13669,7 @@ msgstr ""
msgid "declaration of template `%#D'"
msgstr ""
-#: cp/decl.c:1340 cp/name-lookup.c:492
+#: cp/decl.c:1340 cp/name-lookup.c:503
msgid "conflicts with previous declaration `%#D'"
msgstr ""
@@ -13629,12 +13738,12 @@ msgstr ""
msgid "redundant redeclaration of `%D' in same scope"
msgstr ""
-#: cp/decl.c:1638
+#: cp/decl.c:1649
#, c-format
msgid "declaration of `%F' throws different exceptions"
msgstr ""
-#: cp/decl.c:1640
+#: cp/decl.c:1651
#, c-format
msgid "than previous declaration `%F'"
msgstr ""
@@ -13647,495 +13756,507 @@ msgstr ""
#. that specialization that would cause an implicit
#. instantiation to take place, in every translation unit in
#. which such a use occurs.
-#: cp/decl.c:1787
+#: cp/decl.c:1798
msgid "explicit specialization of %D after first use"
msgstr ""
-#: cp/decl.c:1953
+#: cp/decl.c:1878
+msgid "%J'%D': visibility attribute ignored because it"
+msgstr ""
+
+#: cp/decl.c:1880
+msgid "%Jconflicts with previous declaration here"
+msgstr ""
+
+#: cp/decl.c:1974
msgid "implicit declaration of function `%#D'"
msgstr ""
-#: cp/decl.c:2101
+#: cp/decl.c:2137
#, c-format
msgid "label `%s' referenced outside of any function"
msgstr ""
-#: cp/decl.c:2198 cp/decl.c:2222 cp/decl.c:2310
+#: cp/decl.c:2234 cp/decl.c:2258 cp/decl.c:2346
msgid "jump to label `%D'"
msgstr ""
-#: cp/decl.c:2200 cp/decl.c:2224
+#: cp/decl.c:2236 cp/decl.c:2260
msgid "jump to case label"
msgstr ""
-#: cp/decl.c:2203 cp/decl.c:2227
+#: cp/decl.c:2239 cp/decl.c:2263
msgid "%H from here"
msgstr ""
-#: cp/decl.c:2208
+#: cp/decl.c:2244
msgid " crosses initialization of `%#D'"
msgstr ""
-#: cp/decl.c:2211 cp/decl.c:2326
+#: cp/decl.c:2247 cp/decl.c:2362
msgid " enters scope of non-POD `%#D'"
msgstr ""
-#: cp/decl.c:2231 cp/decl.c:2330
+#: cp/decl.c:2267 cp/decl.c:2366
msgid " enters try block"
msgstr ""
-#: cp/decl.c:2233 cp/decl.c:2332
+#: cp/decl.c:2269 cp/decl.c:2368
msgid " enters catch block"
msgstr ""
-#: cp/decl.c:2311
+#: cp/decl.c:2347
msgid " from here"
msgstr ""
#. Can't skip init of __exception_info.
-#: cp/decl.c:2322
+#: cp/decl.c:2358
msgid "%J enters catch block"
msgstr ""
-#: cp/decl.c:2324
+#: cp/decl.c:2360
msgid " skips initialization of `%#D'"
msgstr ""
-#: cp/decl.c:2358
+#: cp/decl.c:2394
msgid "label named wchar_t"
msgstr ""
-#: cp/decl.c:2361
+#: cp/decl.c:2397
msgid "duplicate label `%D'"
msgstr ""
-#: cp/decl.c:2589 cp/parser.c:3008
+#: cp/decl.c:2625 cp/parser.c:3182
msgid "`%D' used without template parameters"
msgstr ""
-#: cp/decl.c:2599 cp/decl.c:2615 cp/decl.c:2703
+#: cp/decl.c:2635 cp/decl.c:2651 cp/decl.c:2739
msgid "no class template named `%#T' in `%#T'"
msgstr ""
-#: cp/decl.c:2636 cp/decl.c:2646 cp/decl.c:2666
+#: cp/decl.c:2672 cp/decl.c:2682 cp/decl.c:2702
msgid "no type named `%#T' in `%#T'"
msgstr ""
-#: cp/decl.c:3393
+#: cp/decl.c:3429
msgid "%Jan anonymous union cannot have function members"
msgstr ""
-#: cp/decl.c:3411
+#: cp/decl.c:3447
msgid "member %#D' with constructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:3414
+#: cp/decl.c:3450
msgid "member %#D' with destructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:3417
+#: cp/decl.c:3453
msgid ""
"member %#D' with copy assignment operator not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:3457
+#: cp/decl.c:3493
msgid "redeclaration of C++ built-in type `%T'"
msgstr ""
-#: cp/decl.c:3495
+#: cp/decl.c:3531
msgid "multiple types in one declaration"
msgstr ""
-#: cp/decl.c:3521
+#: cp/decl.c:3557
msgid "missing type-name in typedef-declaration"
msgstr ""
-#: cp/decl.c:3529
+#: cp/decl.c:3565
msgid "ISO C++ prohibits anonymous structs"
msgstr ""
-#: cp/decl.c:3536
+#: cp/decl.c:3572
msgid "`%D' can only be specified for functions"
msgstr ""
-#: cp/decl.c:3538
+#: cp/decl.c:3574
msgid "`%D' can only be specified inside a class"
msgstr ""
-#: cp/decl.c:3540
+#: cp/decl.c:3576
msgid "`%D' can only be specified for constructors"
msgstr ""
-#: cp/decl.c:3543
+#: cp/decl.c:3579
msgid "`%D' can only be specified for objects and functions"
msgstr ""
-#: cp/decl.c:3685 cp/decl2.c:883
+#: cp/decl.c:3721 cp/decl2.c:854
msgid "typedef `%D' is initialized (use __typeof__ instead)"
msgstr ""
-#: cp/decl.c:3690
+#: cp/decl.c:3726
msgid "function `%#D' is initialized like a variable"
msgstr ""
-#: cp/decl.c:3702
+#: cp/decl.c:3738
msgid "declaration of `%#D' has `extern' and is initialized"
msgstr ""
-#: cp/decl.c:3735
+#: cp/decl.c:3771
msgid "`%#D' is not a static member of `%#T'"
msgstr ""
-#: cp/decl.c:3741
+#: cp/decl.c:3777
msgid "ISO C++ does not permit `%T::%D' to be defined as `%T::%D'"
msgstr ""
-#: cp/decl.c:3752
+#: cp/decl.c:3788
msgid "duplicate initialization of %D"
msgstr ""
-#: cp/decl.c:3781
+#: cp/decl.c:3819
msgid "declaration of `%#D' outside of class is not definition"
msgstr ""
-#: cp/decl.c:3832
+#: cp/decl.c:3868
msgid "variable `%#D' has initializer but incomplete type"
msgstr ""
-#: cp/decl.c:3840 cp/decl.c:4383
+#: cp/decl.c:3876 cp/decl.c:4445
msgid "elements of array `%#D' have incomplete type"
msgstr ""
-#: cp/decl.c:3856
+#: cp/decl.c:3892
msgid "aggregate `%#D' has incomplete type and cannot be defined"
msgstr ""
-#: cp/decl.c:3898
+#: cp/decl.c:3942
msgid "`%D' declared as reference but not initialized"
msgstr ""
-#: cp/decl.c:3904
+#: cp/decl.c:3948
msgid "ISO C++ forbids use of initializer list to initialize reference `%D'"
msgstr ""
-#: cp/decl.c:3932
+#: cp/decl.c:3976
msgid "cannot initialize `%T' from `%T'"
msgstr ""
-#: cp/decl.c:3964
+#: cp/decl.c:4008
msgid "initializer fails to determine size of `%D'"
msgstr ""
-#: cp/decl.c:3969
+#: cp/decl.c:4013
msgid "array size missing in `%D'"
msgstr ""
-#: cp/decl.c:3981
+#: cp/decl.c:4025
msgid "zero-size array `%D'"
msgstr ""
#. An automatic variable with an incomplete type: that is an error.
#. Don't talk about array types here, since we took care of that
#. message in grokdeclarator.
-#: cp/decl.c:4018
+#: cp/decl.c:4062
msgid "storage size of `%D' isn't known"
msgstr ""
-#: cp/decl.c:4040
+#: cp/decl.c:4084
msgid "storage size of `%D' isn't constant"
msgstr ""
-#: cp/decl.c:4095
+#: cp/decl.c:4139
msgid ""
"sorry: semantics of inline function static data `%#D' are wrong (you'll wind "
"up with multiple copies)"
msgstr ""
-#: cp/decl.c:4096
+#: cp/decl.c:4140
msgid "%J you can work around this by removing the initializer"
msgstr ""
-#: cp/decl.c:4122
+#: cp/decl.c:4166
msgid "uninitialized const `%D'"
msgstr ""
-#: cp/decl.c:4201
+#: cp/decl.c:4245
msgid "brace-enclosed initializer used to initialize `%T'"
msgstr ""
-#: cp/decl.c:4264
+#: cp/decl.c:4309
msgid "initializer for `%T' must be brace-enclosed"
msgstr ""
-#: cp/decl.c:4279
+#: cp/decl.c:4326
msgid "ISO C++ does not allow designated initializers"
msgstr ""
-#: cp/decl.c:4283
+#: cp/decl.c:4330
msgid "`%T' has no non-static data member named `%D'"
msgstr ""
-#: cp/decl.c:4340
+#: cp/decl.c:4378
+msgid "name `%D' used in a GNU-style designated initializer for an array"
+msgstr ""
+
+#: cp/decl.c:4401
msgid "too many initializers for `%T'"
msgstr ""
-#: cp/decl.c:4377
+#: cp/decl.c:4439
msgid "variable-sized object `%D' may not be initialized"
msgstr ""
-#: cp/decl.c:4388
+#: cp/decl.c:4450
msgid "`%D' has incomplete type"
msgstr ""
-#: cp/decl.c:4443
+#: cp/decl.c:4505
msgid "`%D' must be initialized by constructor, not by `{...}'"
msgstr ""
-#: cp/decl.c:4484
+#: cp/decl.c:4549
msgid "structure `%D' with uninitialized const members"
msgstr ""
-#: cp/decl.c:4486
+#: cp/decl.c:4551
msgid "structure `%D' with uninitialized reference members"
msgstr ""
-#: cp/decl.c:4667
+#: cp/decl.c:4732
msgid "assignment (not initialization) in declaration"
msgstr ""
-#: cp/decl.c:4684
+#: cp/decl.c:4749
msgid "cannot initialize `%D' to namespace `%D'"
msgstr ""
-#: cp/decl.c:4734
+#: cp/decl.c:4803
msgid "shadowing previous type declaration of `%#D'"
msgstr ""
-#: cp/decl.c:4770
+#: cp/decl.c:4840
msgid "`%D' cannot be thread-local because it has non-POD type `%T'"
msgstr ""
-#: cp/decl.c:4785
+#: cp/decl.c:4855
msgid "`%D' is thread-local and so cannot be dynamically initialized"
msgstr ""
-#: cp/decl.c:5256
+#: cp/decl.c:5337
msgid "invalid catch parameter"
msgstr ""
-#: cp/decl.c:5370
+#: cp/decl.c:5451
msgid "destructor for alien class `%T' cannot be a member"
msgstr ""
-#: cp/decl.c:5373
+#: cp/decl.c:5454
msgid "constructor for alien class `%T' cannot be a member"
msgstr ""
-#: cp/decl.c:5395
+#: cp/decl.c:5476
msgid "`%D' declared as a `virtual' %s"
msgstr ""
-#: cp/decl.c:5397
+#: cp/decl.c:5478
msgid "`%D' declared as an `inline' %s"
msgstr ""
-#: cp/decl.c:5399
+#: cp/decl.c:5480
msgid ""
"`const' and `volatile' function specifiers on `%D' invalid in %s declaration"
msgstr ""
-#: cp/decl.c:5402
+#: cp/decl.c:5483
msgid "`%D' declared as a friend"
msgstr ""
-#: cp/decl.c:5408
+#: cp/decl.c:5489
msgid "`%D' declared with an exception specification"
msgstr ""
-#: cp/decl.c:5487
+#: cp/decl.c:5571
msgid "cannot declare `::main' to be a template"
msgstr ""
-#: cp/decl.c:5489
+#: cp/decl.c:5573
msgid "cannot declare `::main' to be inline"
msgstr ""
-#: cp/decl.c:5491
+#: cp/decl.c:5575
msgid "cannot declare `::main' to be static"
msgstr ""
-#: cp/decl.c:5494
+#: cp/decl.c:5578
msgid "`main' must return `int'"
msgstr ""
-#: cp/decl.c:5522
+#: cp/decl.c:5606
msgid "non-local function `%#D' uses anonymous type"
msgstr ""
-#: cp/decl.c:5525
+#: cp/decl.c:5609
msgid ""
"`%#D' does not refer to the unqualified type, so it is not used for linkage"
msgstr ""
-#: cp/decl.c:5531
+#: cp/decl.c:5615
msgid "non-local function `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:5555
+#: cp/decl.c:5639
msgid "%smember function `%D' cannot have `%T' method qualifier"
msgstr ""
-#: cp/decl.c:5579
+#: cp/decl.c:5663
msgid "defining explicit specialization `%D' in friend declaration"
msgstr ""
#. Something like `template <class T> friend void f<T>()'.
-#: cp/decl.c:5589
+#: cp/decl.c:5673
msgid "invalid use of template-id `%D' in declaration of primary template"
msgstr ""
-#: cp/decl.c:5616
+#: cp/decl.c:5700
msgid ""
"default arguments are not allowed in declaration of friend template "
"specialization `%D'"
msgstr ""
-#: cp/decl.c:5623
+#: cp/decl.c:5707
msgid ""
"`inline' is not allowed in declaration of friend template specialization `%D'"
msgstr ""
-#: cp/decl.c:5682
+#: cp/decl.c:5765
msgid "definition of implicitly-declared `%D'"
msgstr ""
-#: cp/decl.c:5700 cp/decl2.c:764
+#: cp/decl.c:5785 cp/decl2.c:737
msgid "no `%#D' member function declared in class `%T'"
msgstr ""
-#: cp/decl.c:5834
+#: cp/decl.c:5919
msgid "non-local variable `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:5949
+#: cp/decl.c:6034
msgid ""
"invalid in-class initialization of static data member of non-integral type `%"
"T'"
msgstr ""
-#: cp/decl.c:5958
+#: cp/decl.c:6043
msgid "ISO C++ forbids in-class initialization of non-const static member `%D'"
msgstr ""
-#: cp/decl.c:5961
+#: cp/decl.c:6046
msgid ""
"ISO C++ forbids initialization of member constant `%D' of non-integral type `"
"%T'"
msgstr ""
-#: cp/decl.c:6009
-msgid "size of array `%D' has non-integer type"
+#: cp/decl.c:6065
+msgid "size of array `%D' has non-integral type `%T'"
msgstr ""
-#: cp/decl.c:6011
-msgid "size of array has non-integer type"
+#: cp/decl.c:6067
+msgid "size of array has non-integral type `%T'"
msgstr ""
-#: cp/decl.c:6031
+#: cp/decl.c:6103
msgid "size of array `%D' is negative"
msgstr ""
-#: cp/decl.c:6033
+#: cp/decl.c:6105
msgid "size of array is negative"
msgstr ""
-#: cp/decl.c:6042
+#: cp/decl.c:6113
msgid "ISO C++ forbids zero-size array `%D'"
msgstr ""
-#: cp/decl.c:6044
+#: cp/decl.c:6115
msgid "ISO C++ forbids zero-size array"
msgstr ""
-#: cp/decl.c:6051
+#: cp/decl.c:6122
msgid "size of array `%D' is not an integral constant-expression"
msgstr ""
-#: cp/decl.c:6054
+#: cp/decl.c:6125
msgid "size of array is not an integral constant-expression"
msgstr ""
-#: cp/decl.c:6072
+#: cp/decl.c:6130
msgid "ISO C++ forbids variable-size array `%D'"
msgstr ""
-#: cp/decl.c:6075
+#: cp/decl.c:6132
msgid "ISO C++ forbids variable-size array"
msgstr ""
-#: cp/decl.c:6086
+#: cp/decl.c:6154
msgid "overflow in array dimension"
msgstr ""
-#: cp/decl.c:6179
+#: cp/decl.c:6248
msgid "declaration of `%D' as %s"
msgstr ""
-#: cp/decl.c:6181
+#: cp/decl.c:6250
#, c-format
msgid "creating %s"
msgstr ""
-#: cp/decl.c:6193
+#: cp/decl.c:6262
msgid ""
"declaration of `%D' as multidimensional array must have bounds for all "
"dimensions except the first"
msgstr ""
-#: cp/decl.c:6196
+#: cp/decl.c:6265
msgid ""
"multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:6224
+#: cp/decl.c:6293
msgid "return type specification for constructor invalid"
msgstr ""
-#: cp/decl.c:6231
+#: cp/decl.c:6300
msgid "return type specification for destructor invalid"
msgstr ""
-#: cp/decl.c:6237
+#: cp/decl.c:6306
msgid "operator `%T' declared to return `%T'"
msgstr ""
-#: cp/decl.c:6239
+#: cp/decl.c:6308
msgid "return type specified for `operator %T'"
msgstr ""
-#: cp/decl.c:6382
+#: cp/decl.c:6452
msgid "destructors must be member functions"
msgstr ""
-#: cp/decl.c:6401
+#: cp/decl.c:6471
msgid "destructor `%T' must match class name `%T'"
msgstr ""
-#: cp/decl.c:6464
+#: cp/decl.c:6534
msgid "declarator-id missing; using reserved word `%D'"
msgstr ""
-#: cp/decl.c:6518
+#: cp/decl.c:6588
msgid "type `%T' is not derived from type `%T'"
msgstr ""
#. Parse error puts this typespec where
#. a declarator should go.
-#: cp/decl.c:6581
+#: cp/decl.c:6651
msgid "`%T' specified as declarator-id"
msgstr ""
-#: cp/decl.c:6583
+#: cp/decl.c:6653
msgid " perhaps you want `%T' for a constructor"
msgstr ""
@@ -14143,300 +14264,300 @@ msgstr ""
#. decl-specifier like in
#. std::allocator alloc;
#. Handle that gracefully.
-#: cp/decl.c:6605
+#: cp/decl.c:6675
#, c-format
msgid "invalid use of template-name '%E' in a declarator"
msgstr ""
-#: cp/decl.c:6625
+#: cp/decl.c:6695
msgid "declaration of `%D' as non-function"
msgstr ""
-#: cp/decl.c:6702
+#: cp/decl.c:6772
msgid "`bool' is now a keyword"
msgstr ""
-#: cp/decl.c:6704
+#: cp/decl.c:6774
msgid "extraneous `%T' ignored"
msgstr ""
-#: cp/decl.c:6720 cp/decl.c:6764
+#: cp/decl.c:6790 cp/decl.c:6834
msgid "multiple declarations `%T' and `%T'"
msgstr ""
-#: cp/decl.c:6733
+#: cp/decl.c:6803
msgid "ISO C++ does not support `long long'"
msgstr ""
-#: cp/decl.c:6837 cp/decl.c:6840
+#: cp/decl.c:6907 cp/decl.c:6910
#, c-format
msgid "ISO C++ forbids declaration of `%s' with no type"
msgstr ""
-#: cp/decl.c:6871
+#: cp/decl.c:6941
#, c-format
msgid "short, signed or unsigned invalid for `%s'"
msgstr ""
-#: cp/decl.c:6876
+#: cp/decl.c:6946
#, c-format
msgid "long and short specified together for `%s'"
msgstr ""
-#: cp/decl.c:6887
+#: cp/decl.c:6957
#, c-format
msgid "signed and unsigned given together for `%s'"
msgstr ""
-#: cp/decl.c:6996
+#: cp/decl.c:7066
msgid "qualifiers are not allowed on declaration of `operator %T'"
msgstr ""
-#: cp/decl.c:7018
+#: cp/decl.c:7088
msgid "member `%D' cannot be declared both virtual and static"
msgstr ""
-#: cp/decl.c:7027
+#: cp/decl.c:7097
msgid "`%T::%D' is not a valid declarator"
msgstr ""
-#: cp/decl.c:7039
+#: cp/decl.c:7109
msgid "storage class specifiers invalid in parameter declarations"
msgstr ""
-#: cp/decl.c:7043
+#: cp/decl.c:7113
msgid "typedef declaration invalid in parameter declaration"
msgstr ""
-#: cp/decl.c:7056
+#: cp/decl.c:7126
msgid "virtual outside class declaration"
msgstr ""
-#: cp/decl.c:7115
+#: cp/decl.c:7185
#, c-format
msgid "storage class specified for %s `%s'"
msgstr ""
-#: cp/decl.c:7150
+#: cp/decl.c:7220
#, c-format
msgid "top-level declaration of `%s' specifies `auto'"
msgstr ""
-#: cp/decl.c:7162
+#: cp/decl.c:7232
msgid "storage class specifiers invalid in friend function declarations"
msgstr ""
-#: cp/decl.c:7327
+#: cp/decl.c:7397
msgid "destructor cannot be static member function"
msgstr ""
-#: cp/decl.c:7330
+#: cp/decl.c:7400
#, c-format
msgid "destructors may not be `%s'"
msgstr ""
-#: cp/decl.c:7351
+#: cp/decl.c:7421
msgid "constructor cannot be static member function"
msgstr ""
-#: cp/decl.c:7354
+#: cp/decl.c:7424
msgid "constructors cannot be declared virtual"
msgstr ""
-#: cp/decl.c:7359
+#: cp/decl.c:7429
#, c-format
msgid "constructors may not be `%s'"
msgstr ""
-#: cp/decl.c:7369
+#: cp/decl.c:7439
msgid "return value type specifier for constructor ignored"
msgstr ""
-#: cp/decl.c:7388
+#: cp/decl.c:7458
#, c-format
msgid "can't initialize friend function `%s'"
msgstr ""
#. Cannot be both friend and virtual.
-#: cp/decl.c:7392
+#: cp/decl.c:7462
msgid "virtual functions cannot be friends"
msgstr ""
-#: cp/decl.c:7397
+#: cp/decl.c:7467
msgid "friend declaration not in class definition"
msgstr ""
-#: cp/decl.c:7399
+#: cp/decl.c:7469
#, c-format
msgid "can't define friend function `%s' in a local class definition"
msgstr ""
-#: cp/decl.c:7420
+#: cp/decl.c:7490
msgid "destructors may not have parameters"
msgstr ""
-#: cp/decl.c:7440 cp/decl.c:7447
+#: cp/decl.c:7510 cp/decl.c:7517
msgid "cannot declare reference to `%#T'"
msgstr ""
-#: cp/decl.c:7441
+#: cp/decl.c:7511
msgid "cannot declare pointer to `%#T'"
msgstr ""
-#: cp/decl.c:7446
+#: cp/decl.c:7516
msgid "cannot declare pointer to `%#T' member"
msgstr ""
-#: cp/decl.c:7584
+#: cp/decl.c:7654
msgid "extra qualification `%T::' on member `%s' ignored"
msgstr ""
-#: cp/decl.c:7596
+#: cp/decl.c:7670
msgid "cannot declare member function `%T::%s' within `%T'"
msgstr ""
-#: cp/decl.c:7611
+#: cp/decl.c:7685
msgid "cannot declare member `%T::%s' within `%T'"
msgstr ""
-#: cp/decl.c:7691
+#: cp/decl.c:7765
msgid "data member may not have variably modified type `%T'"
msgstr ""
-#: cp/decl.c:7693
+#: cp/decl.c:7767
msgid "parameter may not have variably modified type `%T'"
msgstr ""
#. [dcl.fct.spec] The explicit specifier shall only be used in
#. declarations of constructors within a class definition.
-#: cp/decl.c:7701
+#: cp/decl.c:7775
msgid "only declarations of constructors can be `explicit'"
msgstr ""
-#: cp/decl.c:7709
+#: cp/decl.c:7783
#, c-format
msgid "non-member `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:7714
+#: cp/decl.c:7788
#, c-format
msgid "non-object member `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:7720
+#: cp/decl.c:7794
#, c-format
msgid "function `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:7725
+#: cp/decl.c:7799
#, c-format
msgid "static `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:7730
+#: cp/decl.c:7804
#, c-format
msgid "const `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:7743
+#: cp/decl.c:7817
msgid "template-id `%D' used as a declarator"
msgstr ""
-#: cp/decl.c:7764
+#: cp/decl.c:7838
msgid "ISO C++ forbids nested type `%D' with same name as enclosing class"
msgstr ""
-#: cp/decl.c:7772
+#: cp/decl.c:7846
msgid "%Jtypedef name may not be a nested-name-specifier"
msgstr ""
-#: cp/decl.c:7818
+#: cp/decl.c:7892
msgid "%Jinvalid type qualifier for non-member function type"
msgstr ""
-#: cp/decl.c:7882
+#: cp/decl.c:7955
msgid "type qualifiers specified for friend class declaration"
msgstr ""
-#: cp/decl.c:7887
+#: cp/decl.c:7960
msgid "`inline' specified for friend class declaration"
msgstr ""
-#: cp/decl.c:7895
+#: cp/decl.c:7968
msgid "template parameters cannot be friends"
msgstr ""
-#: cp/decl.c:7897
+#: cp/decl.c:7970
msgid "friend declaration requires class-key, i.e. `friend class %T::%D'"
msgstr ""
-#: cp/decl.c:7901
+#: cp/decl.c:7974
msgid "friend declaration requires class-key, i.e. `friend %#T'"
msgstr ""
-#: cp/decl.c:7914
+#: cp/decl.c:7987
msgid "trying to make class `%T' a friend of global scope"
msgstr ""
-#: cp/decl.c:7925
+#: cp/decl.c:7998
msgid "invalid qualifiers on non-member function type"
msgstr ""
-#: cp/decl.c:7944
+#: cp/decl.c:8017
msgid "abstract declarator `%T' used as declaration"
msgstr ""
-#: cp/decl.c:7956
+#: cp/decl.c:8029
msgid "unnamed variable or field declared void"
msgstr ""
-#: cp/decl.c:7965
+#: cp/decl.c:8038
msgid "variable or field declared void"
msgstr ""
-#: cp/decl.c:7975
+#: cp/decl.c:8048
msgid "cannot use `::' in parameter declaration"
msgstr ""
#. Something like struct S { int N::j; };
-#: cp/decl.c:8020
+#: cp/decl.c:8093
msgid "invalid use of `::'"
msgstr ""
-#: cp/decl.c:8032
+#: cp/decl.c:8105
msgid "function `%D' cannot be declared friend"
msgstr ""
-#: cp/decl.c:8044
+#: cp/decl.c:8117
msgid "can't make `%D' into a method -- not in a class"
msgstr ""
-#: cp/decl.c:8053
+#: cp/decl.c:8126
msgid "function `%D' declared virtual inside a union"
msgstr ""
-#: cp/decl.c:8065
+#: cp/decl.c:8135
msgid "`%D' cannot be declared virtual, since it is always static"
msgstr ""
-#: cp/decl.c:8142
+#: cp/decl.c:8214
msgid "field `%D' has incomplete type"
msgstr ""
-#: cp/decl.c:8144
+#: cp/decl.c:8216
msgid "name `%T' has incomplete type"
msgstr ""
-#: cp/decl.c:8153
+#: cp/decl.c:8225
msgid " in instantiation of template `%T'"
msgstr ""
-#: cp/decl.c:8163
+#: cp/decl.c:8235
#, c-format
msgid "`%s' is neither function nor member function; cannot be declared friend"
msgstr ""
-#: cp/decl.c:8174
+#: cp/decl.c:8246
msgid "member functions are implicitly friends of their class"
msgstr ""
@@ -14452,102 +14573,97 @@ msgstr ""
#. the rest of the compiler does not correctly
#. handle the initialization unless the member is
#. static so we make it static below.
-#: cp/decl.c:8215
+#: cp/decl.c:8286
msgid "ISO C++ forbids initialization of member `%D'"
msgstr ""
-#: cp/decl.c:8217
+#: cp/decl.c:8288
msgid "making `%D' static"
msgstr ""
-#: cp/decl.c:8240
-msgid ""
-"ISO C++ forbids static data member `%D' with same name as enclosing class"
-msgstr ""
-
-#: cp/decl.c:8280
+#: cp/decl.c:8344
#, c-format
msgid "storage class `auto' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:8282
+#: cp/decl.c:8346
#, c-format
msgid "storage class `register' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:8284
+#: cp/decl.c:8348
#, c-format
msgid "storage class `__thread' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:8295
+#: cp/decl.c:8359
#, c-format
msgid ""
"storage class `static' invalid for function `%s' declared out of global scope"
msgstr ""
-#: cp/decl.c:8297
+#: cp/decl.c:8361
#, c-format
msgid ""
"storage class `inline' invalid for function `%s' declared out of global scope"
msgstr ""
-#: cp/decl.c:8304
+#: cp/decl.c:8368
#, c-format
msgid "virtual non-class function `%s'"
msgstr ""
-#: cp/decl.c:8334
+#: cp/decl.c:8399
msgid "cannot declare member function `%D' to have static linkage"
msgstr ""
#. FIXME need arm citation
-#: cp/decl.c:8340
+#: cp/decl.c:8405
msgid "cannot declare static function inside another function"
msgstr ""
-#: cp/decl.c:8368
+#: cp/decl.c:8433
msgid ""
"`static' may not be used when defining (as opposed to declaring) a static "
"data member"
msgstr ""
-#: cp/decl.c:8374
+#: cp/decl.c:8439
msgid "static member `%D' declared `register'"
msgstr ""
-#: cp/decl.c:8379
+#: cp/decl.c:8444
msgid "cannot explicitly declare member `%#D' to have extern linkage"
msgstr ""
-#: cp/decl.c:8521
+#: cp/decl.c:8584
msgid "default argument for `%#D' has type `%T'"
msgstr ""
-#: cp/decl.c:8524
+#: cp/decl.c:8587
msgid "default argument for parameter of type `%T' has type `%T'"
msgstr ""
-#: cp/decl.c:8541
+#: cp/decl.c:8604
msgid "default argument `%E' uses local variable `%D'"
msgstr ""
-#: cp/decl.c:8585
+#: cp/decl.c:8648
#, c-format
msgid "invalid string constant `%E'"
msgstr ""
-#: cp/decl.c:8587
+#: cp/decl.c:8650
msgid ""
"invalid integer constant in parameter list, did you forget to give parameter "
"name?"
msgstr ""
-#: cp/decl.c:8625
+#: cp/decl.c:8688
msgid "parameter `%D' invalidly declared method type"
msgstr ""
-#: cp/decl.c:8649
+#: cp/decl.c:8712
msgid "parameter `%D' includes %s to array of unknown bound `%T'"
msgstr ""
@@ -14566,94 +14682,94 @@ msgstr ""
#. or implicitly defined), there's no need to worry about their
#. existence. Theoretically, they should never even be
#. instantiated, but that's hard to forestall.
-#: cp/decl.c:8808
+#: cp/decl.c:8871
msgid "invalid constructor; you probably meant `%T (const %T&)'"
msgstr ""
-#: cp/decl.c:8948
+#: cp/decl.c:8999
msgid "`%D' must be a nonstatic member function"
msgstr ""
-#: cp/decl.c:8954
+#: cp/decl.c:9005
msgid ""
"`%D' must be either a non-static member function or a non-member function"
msgstr ""
-#: cp/decl.c:8971
+#: cp/decl.c:9022
msgid "`%D' must have an argument of class or enumerated type"
msgstr ""
-#: cp/decl.c:9006
+#: cp/decl.c:9057
#, c-format
msgid "conversion to %s%s will never use a type conversion operator"
msgstr ""
#. 13.4.0.3
-#: cp/decl.c:9013
+#: cp/decl.c:9064
msgid "ISO C++ prohibits overloading operator ?:"
msgstr ""
-#: cp/decl.c:9063
+#: cp/decl.c:9114
msgid "postfix `%D' must take `int' as its argument"
msgstr ""
-#: cp/decl.c:9067
+#: cp/decl.c:9118
msgid "postfix `%D' must take `int' as its second argument"
msgstr ""
-#: cp/decl.c:9074
+#: cp/decl.c:9125
msgid "`%D' must take either zero or one argument"
msgstr ""
-#: cp/decl.c:9076
+#: cp/decl.c:9127
msgid "`%D' must take either one or two arguments"
msgstr ""
-#: cp/decl.c:9097
+#: cp/decl.c:9148
msgid "prefix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:9103
+#: cp/decl.c:9154
msgid "postfix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:9112
+#: cp/decl.c:9163
msgid "`%D' must take `void'"
msgstr ""
-#: cp/decl.c:9114 cp/decl.c:9122
+#: cp/decl.c:9165 cp/decl.c:9173
msgid "`%D' must take exactly one argument"
msgstr ""
-#: cp/decl.c:9124
+#: cp/decl.c:9175
msgid "`%D' must take exactly two arguments"
msgstr ""
-#: cp/decl.c:9132
+#: cp/decl.c:9183
msgid "user-defined `%D' always evaluates both arguments"
msgstr ""
-#: cp/decl.c:9146
+#: cp/decl.c:9197
msgid "`%D' should return by value"
msgstr ""
-#: cp/decl.c:9158 cp/decl.c:9161
+#: cp/decl.c:9209 cp/decl.c:9212
msgid "`%D' cannot have default arguments"
msgstr ""
-#: cp/decl.c:9221
+#: cp/decl.c:9272
msgid "using typedef-name `%D' after `%s'"
msgstr ""
-#: cp/decl.c:9227
+#: cp/decl.c:9278
msgid "using template type parameter `%T' after `%s'"
msgstr ""
-#: cp/decl.c:9235
+#: cp/decl.c:9286
msgid "`%T' referred to as `%s'"
msgstr ""
-#: cp/decl.c:9241
+#: cp/decl.c:9292
msgid "`%T' referred to as enum"
msgstr ""
@@ -14664,35 +14780,43 @@ msgstr ""
#. void f(class C); // No template header here
#.
#. then the required template argument is missing.
-#: cp/decl.c:9256
+#: cp/decl.c:9307
msgid "template argument required for `%s %T'"
msgstr ""
-#: cp/decl.c:9402
+#: cp/decl.c:9452
msgid "use of enum `%#D' without previous declaration"
msgstr ""
-#: cp/decl.c:9479
+#: cp/decl.c:9509
msgid "derived union `%T' invalid"
msgstr ""
-#: cp/decl.c:9532
+#: cp/decl.c:9562
msgid "base type `%T' fails to be a struct or class type"
msgstr ""
-#: cp/decl.c:9540
+#: cp/decl.c:9570
msgid "recursive type `%T' undefined"
msgstr ""
-#: cp/decl.c:9542
+#: cp/decl.c:9572
msgid "duplicate base type `%T' invalid"
msgstr ""
-#: cp/decl.c:9654
+#: cp/decl.c:9650
+msgid "Java class '%T' cannot have multiple bases"
+msgstr ""
+
+#: cp/decl.c:9652
+msgid "Java class '%T' cannot have virtual bases"
+msgstr ""
+
+#: cp/decl.c:9692
msgid "multiple definition of `%#T'"
msgstr ""
-#: cp/decl.c:9655
+#: cp/decl.c:9693
msgid "%Jprevious definition here"
msgstr ""
@@ -14700,47 +14824,47 @@ msgstr ""
#.
#. IF no integral type can represent all the enumerator values, the
#. enumeration is ill-formed.
-#: cp/decl.c:9790
+#: cp/decl.c:9828
msgid "no integral type can represent all of the enumerator values for `%T'"
msgstr ""
-#: cp/decl.c:9880
+#: cp/decl.c:9918
msgid "enumerator value for `%D' not integer constant"
msgstr ""
-#: cp/decl.c:9900
+#: cp/decl.c:9938
msgid "overflow in enumeration values at `%D'"
msgstr ""
-#: cp/decl.c:9969
+#: cp/decl.c:10007
msgid "return type `%#T' is incomplete"
msgstr ""
-#: cp/decl.c:10089
+#: cp/decl.c:10125
msgid "return type for `main' changed to `int'"
msgstr ""
-#: cp/decl.c:10119
+#: cp/decl.c:10154
msgid "`%D' implicitly declared before its definition"
msgstr ""
-#: cp/decl.c:10141 cp/typeck.c:5968
+#: cp/decl.c:10176 cp/typeck.c:6023
msgid "`operator=' should return a reference to `*this'"
msgstr ""
-#: cp/decl.c:10414
+#: cp/decl.c:10445
msgid "parameter `%D' declared void"
msgstr ""
-#: cp/decl.c:10879
+#: cp/decl.c:10911
msgid "invalid member function declaration"
msgstr ""
-#: cp/decl.c:10896
+#: cp/decl.c:10928
msgid "`%D' is already defined in class `%T'"
msgstr ""
-#: cp/decl.c:11109
+#: cp/decl.c:11141
msgid "static member function `%#D' declared with type qualifiers"
msgstr ""
@@ -14749,264 +14873,256 @@ msgstr ""
msgid "duplicate type qualifiers in %s declaration"
msgstr ""
-#: cp/decl2.c:180
-msgid "template `%#D' instantiated in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:185
-msgid "template `%#D' defined in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:346
+#: cp/decl2.c:316
msgid "name missing for member function"
msgstr ""
-#: cp/decl2.c:438 cp/decl2.c:452
+#: cp/decl2.c:408 cp/decl2.c:422
msgid "ambiguous conversion for array subscript"
msgstr ""
-#: cp/decl2.c:446
+#: cp/decl2.c:416
msgid "invalid types `%T[%T]' for array subscript"
msgstr ""
-#: cp/decl2.c:494
-msgid "type `%#T' argument given to `delete', expected pointer"
+#: cp/decl2.c:460
+msgid "deleting array `%#D'"
msgstr ""
-#: cp/decl2.c:502
-msgid "anachronistic use of array size in vector delete"
+#: cp/decl2.c:466
+msgid "type `%#T' argument given to `delete', expected pointer"
msgstr ""
-#: cp/decl2.c:512
+#: cp/decl2.c:478
msgid ""
"cannot delete a function. Only pointer-to-objects are valid arguments to "
"`delete'"
msgstr ""
-#: cp/decl2.c:519
+#: cp/decl2.c:485
msgid "deleting `%T' is undefined"
msgstr ""
-#: cp/decl2.c:527
-msgid "deleting array `%#D'"
-msgstr ""
-
#. 14.5.2.2 [temp.mem]
#.
#. A local class shall not have member templates.
-#: cp/decl2.c:560
+#: cp/decl2.c:521
msgid "invalid declaration of member template `%#D' in local class"
msgstr ""
-#: cp/decl2.c:569
+#: cp/decl2.c:530
msgid "invalid use of `virtual' in template declaration of `%#D'"
msgstr ""
-#: cp/decl2.c:579 cp/pt.c:2696
+#: cp/decl2.c:540 cp/pt.c:2834
msgid "template declaration of `%#D'"
msgstr ""
-#: cp/decl2.c:627
+#: cp/decl2.c:589
msgid "Java method '%D' has non-Java return type `%T'"
msgstr ""
-#: cp/decl2.c:636
+#: cp/decl2.c:605
msgid "Java method '%D' has non-Java parameter type `%T'"
msgstr ""
-#: cp/decl2.c:725
+#: cp/decl2.c:698
msgid "prototype for `%#D' does not match any in class `%T'"
msgstr ""
-#: cp/decl2.c:804
+#: cp/decl2.c:777
msgid "local class `%#T' shall not have static data member `%#D'"
msgstr ""
-#: cp/decl2.c:812
+#: cp/decl2.c:785
msgid "initializer invalid for static member with constructor"
msgstr ""
-#: cp/decl2.c:815
+#: cp/decl2.c:788
msgid "(an out of class initialization is required)"
msgstr ""
-#: cp/decl2.c:900
+#: cp/decl2.c:871
msgid "member `%D' conflicts with virtual function table field name"
msgstr ""
-#: cp/decl2.c:917
+#: cp/decl2.c:888
msgid "`%D' is already defined in `%T'"
msgstr ""
-#: cp/decl2.c:964
+#: cp/decl2.c:935
msgid "field initializer is not constant"
msgstr ""
-#: cp/decl2.c:988
+#: cp/decl2.c:963
msgid "`asm' specifiers are not permitted on non-static data members"
msgstr ""
-#: cp/decl2.c:1039
+#: cp/decl2.c:1013
msgid "cannot declare `%D' to be a bit-field type"
msgstr ""
-#: cp/decl2.c:1049
+#: cp/decl2.c:1023
msgid "cannot declare bit-field `%D' with function type"
msgstr ""
-#: cp/decl2.c:1056
+#: cp/decl2.c:1030
msgid "`%D' is already defined in the class %T"
msgstr ""
-#: cp/decl2.c:1063
+#: cp/decl2.c:1037
msgid "static member `%D' cannot be a bit-field"
msgstr ""
-#: cp/decl2.c:1122
+#: cp/decl2.c:1096
msgid "initializer specified for non-member function `%D'"
msgstr ""
-#: cp/decl2.c:1126
+#: cp/decl2.c:1100
msgid "invalid initializer for virtual method `%D'"
msgstr ""
-#: cp/decl2.c:1173
+#: cp/decl2.c:1147
msgid "anonymous struct not inside named type"
msgstr ""
-#: cp/decl2.c:1243
+#: cp/decl2.c:1217
msgid "namespace-scope anonymous aggregates must be static"
msgstr ""
-#: cp/decl2.c:1250
+#: cp/decl2.c:1224
msgid "anonymous union with no members"
msgstr ""
-#: cp/decl2.c:1284
+#: cp/decl2.c:1258
msgid "`operator new' must return type `%T'"
msgstr ""
-#: cp/decl2.c:1292
+#: cp/decl2.c:1266
msgid "`operator new' takes type `size_t' (`%T') as first parameter"
msgstr ""
-#: cp/decl2.c:1318
+#: cp/decl2.c:1292
msgid "`operator delete' must return type `%T'"
msgstr ""
-#: cp/decl2.c:1326
+#: cp/decl2.c:1300
msgid "`operator delete' takes type `%T' as first parameter"
msgstr ""
-#: cp/decl2.c:2828
+#: cp/decl2.c:2807
msgid "inline function `%D' used but never defined"
msgstr ""
-#: cp/decl2.c:2974
+#: cp/decl2.c:2953
msgid "default argument missing for parameter %P of `%+#D'"
msgstr ""
#. damn ICE suppression
-#: cp/error.c:2374
+#: cp/error.c:2387
#, c-format
msgid "unexpected letter `%c' in locate_error\n"
msgstr ""
#. Can't throw a reference.
-#: cp/except.c:240
+#: cp/except.c:239
msgid "type `%T' is disallowed in Java `throw' or `catch'"
msgstr ""
-#: cp/except.c:251
+#: cp/except.c:250
msgid "call to Java `catch' or `throw' with `jthrowable' undefined"
msgstr ""
#. Thrown object must be a Throwable.
-#: cp/except.c:258
+#: cp/except.c:257
msgid "type `%T' is not derived from `java::lang::Throwable'"
msgstr ""
-#: cp/except.c:321
+#: cp/except.c:320
msgid "mixing C++ and Java catches in a single translation unit"
msgstr ""
-#: cp/except.c:627
+#: cp/except.c:575
msgid "throwing NULL, which has integral, not pointer type"
msgstr ""
-#: cp/except.c:714
+#: cp/except.c:598 cp/init.c:2037
+msgid "`%D' should never be overloaded"
+msgstr ""
+
+#: cp/except.c:665
msgid " in thrown expression"
msgstr ""
-#: cp/except.c:835
+#: cp/except.c:811
msgid ""
"expression '%E' of abstract class type '%T' cannot be used in throw-"
"expression"
msgstr ""
-#: cp/except.c:917
+#: cp/except.c:893
msgid "exception of type `%T' will be caught"
msgstr ""
-#: cp/except.c:920
+#: cp/except.c:896
msgid " by earlier handler for `%T'"
msgstr ""
-#: cp/except.c:941
+#: cp/except.c:917
msgid "`...' handler must be the last handler for its try block"
msgstr ""
-#: cp/friend.c:161
+#: cp/friend.c:151
msgid "`%D' is already a friend of class `%T'"
msgstr ""
-#: cp/friend.c:212
+#: cp/friend.c:202
msgid "invalid type `%T' declared `friend'"
msgstr ""
#. [temp.friend]
#. Friend declarations shall not declare partial
#. specializations.
-#: cp/friend.c:228
+#: cp/friend.c:218
msgid "partial specialization `%T' declared `friend'"
msgstr ""
-#: cp/friend.c:238
+#: cp/friend.c:228
msgid "class `%T' is implicitly friends with itself"
msgstr ""
#. template <class T> friend typename S<T>::X;
-#: cp/friend.c:256
+#: cp/friend.c:246
msgid "typename type `%#T' declared `friend'"
msgstr ""
#. template <class T> friend class T;
-#: cp/friend.c:262
+#: cp/friend.c:252
msgid "template parameter type `%T' declared `friend'"
msgstr ""
#. template <class T> friend class A; where A is not a template
-#: cp/friend.c:268
+#: cp/friend.c:258
msgid "`%#T' is not a template"
msgstr ""
-#: cp/friend.c:287
+#: cp/friend.c:277
msgid "`%D' is already a friend of `%T'"
msgstr ""
-#: cp/friend.c:297
+#: cp/friend.c:287
msgid "`%T' is already a friend of `%T'"
msgstr ""
-#: cp/friend.c:394
+#: cp/friend.c:409
msgid "member `%D' declared as friend before type `%T' defined"
msgstr ""
-#: cp/friend.c:449
+#: cp/friend.c:465
msgid "friend declaration `%#D' declares a non-template function"
msgstr ""
-#: cp/friend.c:452
+#: cp/friend.c:468
msgid ""
"(if this is not what you intended, make sure the function template has "
"already been declared and add <> after the function name here) -Wno-non-"
@@ -15018,81 +15134,89 @@ msgstr ""
msgid "argument to `%s' missing\n"
msgstr ""
-#: cp/init.c:315
+#: cp/init.c:318
msgid "`%D' should be initialized in the member initialization list"
msgstr ""
-#: cp/init.c:365
+#: cp/init.c:368
msgid "default-initialization of `%#D', which has reference type"
msgstr ""
-#: cp/init.c:370
+#: cp/init.c:373
msgid "uninitialized reference member `%D'"
msgstr ""
-#: cp/init.c:508
+#: cp/init.c:375
+msgid "uninitialized member `%D' with `const' type `%T'"
+msgstr ""
+
+#: cp/init.c:514
msgid "`%D' will be initialized after"
msgstr ""
-#: cp/init.c:511
+#: cp/init.c:517
msgid "base `%T' will be initialized after"
msgstr ""
-#: cp/init.c:514
+#: cp/init.c:520
msgid " `%#D'"
msgstr ""
-#: cp/init.c:516
+#: cp/init.c:522
msgid " base `%T'"
msgstr ""
-#: cp/init.c:532
+#: cp/init.c:523
+msgid " when initialized here"
+msgstr ""
+
+#: cp/init.c:539
msgid "multiple initializations given for `%D'"
msgstr ""
-#: cp/init.c:534
+#: cp/init.c:541
msgid "multiple initializations given for base `%T'"
msgstr ""
-#: cp/init.c:601
+#: cp/init.c:608
msgid "initializations for multiple members of `%T'"
msgstr ""
-#: cp/init.c:658
+#: cp/init.c:665
msgid ""
"base class `%#T' should be explicitly initialized in the copy constructor"
msgstr ""
-#: cp/init.c:888 cp/init.c:907
+#: cp/init.c:895 cp/init.c:914
msgid "class `%T' does not have any field named `%D'"
msgstr ""
-#: cp/init.c:894
+#: cp/init.c:901
msgid ""
"`%#D' is a static data member; it can only be initialized at its definition"
msgstr ""
-#: cp/init.c:901
+#: cp/init.c:908
msgid "`%#D' is not a non-static data member of `%T'"
msgstr ""
-#: cp/init.c:940
+#: cp/init.c:947
msgid "unnamed initializer for `%T', which has no base classes"
msgstr ""
-#: cp/init.c:947
+#: cp/init.c:954
msgid "unnamed initializer for `%T', which uses multiple inheritance"
msgstr ""
-#: cp/init.c:1002
+#: cp/init.c:1009
msgid "'%D' is both a direct base and an indirect virtual base"
msgstr ""
-#: cp/init.c:1010
+#: cp/init.c:1017
msgid "type `%D' is not a direct or virtual base of `%T'"
msgstr ""
-#: cp/init.c:1013
+#: cp/init.c:1020
msgid "type `%D' is not a direct base of `%T'"
msgstr ""
@@ -15108,108 +15232,124 @@ msgstr ""
#. COMPLEX zees(1.0, 0.0)[10];
#. }
#.
-#: cp/init.c:1105
+#: cp/init.c:1112
msgid "bad array initializer"
msgstr ""
-#: cp/init.c:1298
+#: cp/init.c:1310
msgid "`%T' is not an aggregate type"
msgstr ""
-#: cp/init.c:1319
+#: cp/init.c:1331
msgid "`%T' fails to be an aggregate typedef"
msgstr ""
-#: cp/init.c:1328
+#: cp/init.c:1340
msgid "type `%T' is of non-aggregate type"
msgstr ""
-#: cp/init.c:1420 cp/typeck.c:1767
+#: cp/init.c:1432 cp/typeck.c:1795
msgid "qualified type `%T' does not match destructor name `~%T'"
msgstr ""
-#: cp/init.c:1428
+#: cp/init.c:1440
msgid "incomplete type `%T' does not have member `%D'"
msgstr ""
-#: cp/init.c:1447
+#: cp/init.c:1459
msgid "`%D' is not a member of type `%T'"
msgstr ""
-#: cp/init.c:1466
+#: cp/init.c:1478
msgid "invalid pointer to bit-field `%D'"
msgstr ""
-#: cp/init.c:1565
+#: cp/init.c:1580
msgid "invalid use of non-static member function `%D'"
msgstr ""
-#: cp/init.c:1570 cp/semantics.c:1221
+#: cp/init.c:1586 cp/semantics.c:1236
msgid "invalid use of non-static data member `%D'"
msgstr ""
-#: cp/init.c:1705
+#: cp/init.c:1725
msgid "new of array type fails to specify size"
msgstr ""
-#: cp/init.c:1716
+#: cp/init.c:1736
msgid "size in array new must have integral type"
msgstr ""
-#: cp/init.c:1722
+#: cp/init.c:1742
msgid "zero size array reserves no space"
msgstr ""
-#: cp/init.c:1788
+#: cp/init.c:1808
msgid "new cannot be applied to a reference type"
msgstr ""
-#: cp/init.c:1794
+#: cp/init.c:1814
msgid "new cannot be applied to a function type"
msgstr ""
-#: cp/init.c:1840
+#: cp/init.c:1860
msgid "call to Java constructor, while `jclass' undefined"
msgstr ""
-#: cp/init.c:1856
+#: cp/init.c:1876
msgid "can't find class$"
msgstr ""
-#: cp/init.c:1982
+#: cp/init.c:2003
msgid "invalid type `void' for new"
msgstr ""
-#: cp/init.c:1992
+#: cp/init.c:2013
msgid "uninitialized const in `new' of `%#T'"
msgstr ""
-#: cp/init.c:2010
+#: cp/init.c:2032
#, c-format
msgid "call to Java constructor with `%s' undefined"
msgstr ""
-#: cp/init.c:2161
-msgid "ISO C++ forbids initialization in array new"
+#: cp/init.c:2073
+msgid "request for member `%D' is ambiguous"
msgstr ""
-#: cp/init.c:2185
-msgid "ISO C++ forbids aggregate initializer to new"
+#: cp/init.c:2193
+msgid "ISO C++ forbids initialization in array new"
msgstr ""
-#: cp/init.c:2628
+#: cp/init.c:2667
msgid "initializer ends prematurely"
msgstr ""
-#: cp/init.c:2685
+#: cp/init.c:2724
msgid "cannot initialize multi-dimensional array with initializer"
msgstr ""
-#: cp/init.c:2858
+#: cp/init.c:2885
+msgid "possible problem detected in invocation of delete operator:"
+msgstr ""
+
+#: cp/init.c:2888
+msgid "neither the destructor nor the class-specific "
+msgstr ""
+
+#: cp/init.c:2889
+msgid "operator delete will be called, even if they are "
+msgstr ""
+
+#: cp/init.c:2890
+msgid "declared when the class is defined."
+msgstr ""
+
+#: cp/init.c:2909
msgid "unknown array size in delete"
msgstr ""
-#: cp/init.c:3122
+#: cp/init.c:3174
msgid "type to vector delete is neither pointer or array type"
msgstr ""
@@ -15217,42 +15357,42 @@ msgstr ""
msgid "type name expected before `*'"
msgstr ""
-#: cp/lex.c:522
+#: cp/lex.c:501
#, c-format
msgid "junk at end of #pragma %s"
msgstr ""
-#: cp/lex.c:529
+#: cp/lex.c:508
#, c-format
msgid "invalid #pragma %s"
msgstr ""
-#: cp/lex.c:537
+#: cp/lex.c:516
msgid "#pragma vtable no longer supported"
msgstr ""
-#: cp/lex.c:611
+#: cp/lex.c:590
#, c-format
msgid "#pragma implementation for %s appears after file is included"
msgstr ""
-#: cp/lex.c:635
+#: cp/lex.c:614
msgid "junk at end of #pragma GCC java_exceptions"
msgstr ""
-#: cp/lex.c:649
+#: cp/lex.c:628
msgid "`%D' not defined"
msgstr ""
-#: cp/lex.c:652
+#: cp/lex.c:631
msgid "`%D' was not declared in this scope"
msgstr ""
-#: cp/lex.c:660
+#: cp/lex.c:639
msgid "`%D' undeclared (first use this function)"
msgstr ""
-#: cp/lex.c:664
+#: cp/lex.c:643
msgid ""
"(Each undeclared identifier is reported only once for each function it "
"appears in.)"
@@ -15268,48 +15408,48 @@ msgstr ""
#. Note that we have the exact wording of the following message in
#. the manual (trouble.texi, node "Name lookup"), so they need to
#. be kept in synch.
-#: cp/lex.c:695
+#: cp/lex.c:674
msgid ""
"there are no arguments to `%D' that depend on a template parameter, so a "
"declaration of `%D' must be available"
msgstr ""
-#: cp/lex.c:704
+#: cp/lex.c:683
msgid ""
"(if you use `-fpermissive', G++ will accept your code, but allowing the use "
"of an undeclared name is deprecated)"
msgstr ""
-#: cp/mangle.c:2000
+#: cp/mangle.c:2037
msgid "call_expr cannot be mangled due to a defect in the C++ ABI"
msgstr ""
-#: cp/mangle.c:2053
+#: cp/mangle.c:2090
msgid "omitted middle operand to `?:' operand cannot be mangled"
msgstr ""
-#: cp/mangle.c:2325
+#: cp/mangle.c:2389
msgid "the mangled name of `%D' will change in a future version of GCC"
msgstr ""
-#: cp/method.c:450
+#: cp/method.c:461
msgid "generic thunk code fails for method `%#D' which uses `...'"
msgstr ""
-#: cp/method.c:673
+#: cp/method.c:686
msgid "non-static const member `%#D', can't use default assignment operator"
msgstr ""
-#: cp/method.c:678
+#: cp/method.c:691
msgid ""
"non-static reference member `%#D', can't use default assignment operator"
msgstr ""
-#: cp/name-lookup.c:646
+#: cp/name-lookup.c:660
msgid "`%#D' used prior to declaration"
msgstr ""
-#: cp/name-lookup.c:677
+#: cp/name-lookup.c:691
msgid "redeclaration of `wchar_t' as `%T'"
msgstr ""
@@ -15319,408 +15459,483 @@ msgstr ""
#. [basic.start.main]
#.
#. This function shall not be overloaded.
-#: cp/name-lookup.c:709
+#: cp/name-lookup.c:723
msgid "invalid redeclaration of `%D'"
msgstr ""
-#: cp/name-lookup.c:710
+#: cp/name-lookup.c:724
msgid "as `%D'"
msgstr ""
-#: cp/name-lookup.c:798
+#: cp/name-lookup.c:812
msgid "type mismatch with previous external decl of `%#D'"
msgstr ""
-#: cp/name-lookup.c:799
+#: cp/name-lookup.c:813
msgid "previous external decl of `%#D'"
msgstr ""
-#: cp/name-lookup.c:841
+#: cp/name-lookup.c:855
msgid "`%D' was previously implicitly declared to return `int'"
msgstr ""
-#: cp/name-lookup.c:899
+#: cp/name-lookup.c:913
msgid "extern declaration of `%#D' doesn't match"
msgstr ""
-#: cp/name-lookup.c:900
+#: cp/name-lookup.c:914
msgid "global declaration `%#D'"
msgstr ""
-#: cp/name-lookup.c:936
-msgid "declaration of `%#D' shadows a parameter"
+#: cp/name-lookup.c:950 cp/name-lookup.c:957
+msgid "declaration of '%#D' shadows a parameter"
msgstr ""
-#: cp/name-lookup.c:957
-#, c-format
-msgid "declaration of `%s' shadows a member of `this'"
+#. Location of previous decl is not useful in this case.
+#: cp/name-lookup.c:974
+msgid "declaration of '%D' shadows a member of 'this'"
msgstr ""
-#: cp/name-lookup.c:1133
+#: cp/name-lookup.c:980
+msgid "declaration of '%D' shadows a previous local"
+msgstr ""
+
+#: cp/name-lookup.c:987
+msgid "declaration of '%D' shadows a global declaration"
+msgstr ""
+
+#: cp/name-lookup.c:1156
msgid "name lookup of `%D' changed"
msgstr ""
-#: cp/name-lookup.c:1135
+#: cp/name-lookup.c:1158
msgid " matches this `%D' under ISO standard rules"
msgstr ""
-#: cp/name-lookup.c:1137
+#: cp/name-lookup.c:1160
msgid " matches this `%D' under old rules"
msgstr ""
-#: cp/name-lookup.c:1151 cp/name-lookup.c:1158
+#: cp/name-lookup.c:1174 cp/name-lookup.c:1181
msgid "name lookup of `%D' changed for new ISO `for' scoping"
msgstr ""
-#: cp/name-lookup.c:1153
+#: cp/name-lookup.c:1176
msgid " cannot use obsolete binding at `%D' because it has a destructor"
msgstr ""
-#: cp/name-lookup.c:1160
+#: cp/name-lookup.c:1183
msgid " using obsolete binding at `%D'"
msgstr ""
-#: cp/name-lookup.c:1213
+#: cp/name-lookup.c:1236
#, c-format
msgid "%s %s(%E) %p %d\n"
msgstr ""
-#: cp/name-lookup.c:1216
+#: cp/name-lookup.c:1239
#, c-format
msgid "%s %s %p %d\n"
msgstr ""
-#: cp/name-lookup.c:1335
+#: cp/name-lookup.c:1358
msgid "XXX is_class_level != (current_scope == class_scope)\n"
msgstr ""
-#: cp/name-lookup.c:1972
+#: cp/name-lookup.c:1996
msgid "`%#D' hides constructor for `%#T'"
msgstr ""
-#: cp/name-lookup.c:1987
+#: cp/name-lookup.c:2011
msgid "`%#D' conflicts with previous using declaration `%#D'"
msgstr ""
-#: cp/name-lookup.c:1999
+#: cp/name-lookup.c:2023
msgid "previous non-function declaration `%#D'"
msgstr ""
-#: cp/name-lookup.c:2000
+#: cp/name-lookup.c:2024
msgid "conflicts with function declaration `%#D'"
msgstr ""
#. 7.3.3/5
#. A using-declaration shall not name a template-id.
-#: cp/name-lookup.c:2077
+#: cp/name-lookup.c:2101
msgid "a using-declaration cannot specify a template-id. Try `using %D'"
msgstr ""
-#: cp/name-lookup.c:2083
+#: cp/name-lookup.c:2107
msgid "namespace `%D' not allowed in using-declaration"
msgstr ""
#. It's a nested name with template parameter dependent scope.
#. This can only be using-declaration for class member.
-#: cp/name-lookup.c:2091 cp/name-lookup.c:2113 cp/name-lookup.c:3283
+#: cp/name-lookup.c:2115 cp/name-lookup.c:2129 cp/name-lookup.c:3369
msgid "`%T' is not a namespace"
msgstr ""
-#: cp/name-lookup.c:2137
+#: cp/name-lookup.c:2153
msgid "`%D' not declared"
msgstr ""
#. If the OLD_FN was really declared, the
#. declarations don't match.
-#: cp/name-lookup.c:2149 cp/name-lookup.c:2191 cp/name-lookup.c:2216
+#: cp/name-lookup.c:2165 cp/name-lookup.c:2207 cp/name-lookup.c:2244
msgid "`%D' is already declared in this scope"
msgstr ""
-#: cp/name-lookup.c:2222
+#: cp/name-lookup.c:2250
msgid "using declaration `%D' introduced ambiguous type `%T'"
msgstr ""
#. Definition isn't the kind we were looking for.
-#: cp/name-lookup.c:2382 cp/name-lookup.c:2401
+#: cp/name-lookup.c:2412 cp/name-lookup.c:2431
msgid "`%#D' redeclared as %C"
msgstr ""
-#: cp/name-lookup.c:2811
+#: cp/name-lookup.c:2804
+msgid "`%D' has the same name as the class in which it is declared"
+msgstr ""
+
+#: cp/name-lookup.c:2891
msgid "using-declaration for non-member at class scope"
msgstr ""
-#: cp/name-lookup.c:2818
+#: cp/name-lookup.c:2898
msgid "using-declaration cannot name destructor"
msgstr ""
-#: cp/name-lookup.c:2914
+#: cp/name-lookup.c:2994
msgid "declaration of `%D' not in a namespace surrounding `%D'"
msgstr ""
-#: cp/name-lookup.c:2954
+#: cp/name-lookup.c:3034
msgid "`%D' should have been declared inside `%D'"
msgstr ""
-#: cp/name-lookup.c:3017
+#: cp/name-lookup.c:3098
msgid "namespace alias `%D' not allowed here, assuming `%D'"
msgstr ""
#. The parser did not find it, so it's not there.
-#: cp/name-lookup.c:3126
+#: cp/name-lookup.c:3213
msgid "unknown namespace `%D'"
msgstr ""
-#: cp/name-lookup.c:3277
+#: cp/name-lookup.c:3363
msgid "namespace `%T' undeclared"
msgstr ""
-#: cp/name-lookup.c:3310
+#: cp/name-lookup.c:3396
msgid "strong using only meaningful at namespace scope"
msgstr ""
-#: cp/name-lookup.c:3317
+#: cp/name-lookup.c:3403
msgid "`%D' attribute directive ignored"
msgstr ""
-#: cp/name-lookup.c:3450
+#: cp/name-lookup.c:3536
msgid "use of `%D' is ambiguous"
msgstr ""
-#: cp/name-lookup.c:3451
+#: cp/name-lookup.c:3537
msgid " first declared as `%#D' here"
msgstr ""
-#: cp/name-lookup.c:3454
+#: cp/name-lookup.c:3540
msgid " also declared as `%#D' here"
msgstr ""
-#: cp/name-lookup.c:3469
+#: cp/name-lookup.c:3555
msgid "`%D' denotes an ambiguous type"
msgstr ""
-#: cp/name-lookup.c:3470
+#: cp/name-lookup.c:3556
msgid "%J first type here"
msgstr ""
-#: cp/name-lookup.c:3471
+#: cp/name-lookup.c:3557
msgid "%J other type here"
msgstr ""
#. This happens for A::B where B is a template, and there are no
#. template arguments.
-#: cp/name-lookup.c:3536 cp/typeck.c:1742
+#: cp/name-lookup.c:3622 cp/typeck.c:1769
msgid "invalid use of `%D'"
msgstr ""
-#: cp/name-lookup.c:3577
+#: cp/name-lookup.c:3663
msgid "`%D::%D' is not a template"
msgstr ""
-#: cp/name-lookup.c:3594
+#: cp/name-lookup.c:3680
msgid "`%D' undeclared in namespace `%D'"
msgstr ""
-#: cp/name-lookup.c:4037
+#: cp/name-lookup.c:4141
msgid "`%D' is not a function,"
msgstr ""
-#: cp/name-lookup.c:4038
+#: cp/name-lookup.c:4142
msgid " conflict with `%D'"
msgstr ""
-#: cp/name-lookup.c:4773
+#: cp/name-lookup.c:4882
msgid "XXX entering pop_everything ()\n"
msgstr ""
-#: cp/name-lookup.c:4782
+#: cp/name-lookup.c:4891
msgid "XXX leaving pop_everything ()\n"
msgstr ""
-#: cp/parser.c:594
+#: cp/parser.c:609
msgid "invalid token"
msgstr ""
-#: cp/parser.c:1800
+#: cp/parser.c:1806
+msgid "`%D::%D' has not been declared"
+msgstr ""
+
+#: cp/parser.c:1809 cp/semantics.c:2308
+msgid "`::%D' has not been declared"
+msgstr ""
+
+#: cp/parser.c:1811
+msgid "`%D' has not been declared"
+msgstr ""
+
+#: cp/parser.c:1814
+msgid "`%D::%D' %s"
+msgstr ""
+
+#: cp/parser.c:1816
+msgid "`::%D' %s"
+msgstr ""
+
+#: cp/parser.c:1818
+msgid "`%D' %s"
+msgstr ""
+
+#: cp/parser.c:1870
msgid "new types may not be defined in a return type"
msgstr ""
-#: cp/parser.c:1809
+#: cp/parser.c:1888 cp/pt.c:4196
+msgid "`%T' is not a template"
+msgstr ""
+
+#: cp/parser.c:1890
+#, c-format
+msgid "`%s' is not a template"
+msgstr ""
+
+#: cp/parser.c:1892
+msgid "invalid template-id"
+msgstr ""
+
+#: cp/parser.c:1933
#, c-format
msgid "%s cannot appear in a constant-expression"
msgstr ""
#. Issue an error message.
-#: cp/parser.c:1836
+#: cp/parser.c:1964
#, c-format
msgid "`%s' does not name a type"
msgstr ""
-#: cp/parser.c:1867
+#: cp/parser.c:1995
msgid "(perhaps `typename %T::%s' was intended)"
msgstr ""
-#: cp/parser.c:2277
+#: cp/parser.c:2417
msgid "ISO C++ forbids braced-groups within expressions"
msgstr ""
-#: cp/parser.c:2286
+#: cp/parser.c:2426
msgid "statement-expressions are allowed only inside functions"
msgstr ""
-#: cp/parser.c:2337
+#: cp/parser.c:2477
msgid "`this' may not be used in this context"
msgstr ""
-#: cp/parser.c:2464
+#: cp/parser.c:2621
msgid "local variable `%D' may not appear in this context"
msgstr ""
-#: cp/parser.c:2820
+#: cp/parser.c:2986
msgid "typedef-name `%D' used as destructor declarator"
msgstr ""
-#: cp/parser.c:3013
-msgid "`%T::%D' is not a class-name or namespace-name"
-msgstr ""
-
-#: cp/parser.c:3017
-msgid "`::%D' is not a class-name or namespace-name"
-msgstr ""
-
-#: cp/parser.c:3021
-msgid "`%D::%D' is not a class-name or namespace-name"
+#: cp/parser.c:3635
+msgid "ISO C++ forbids compound-literals"
msgstr ""
-#: cp/parser.c:3026
-msgid "`%D' is not a class-name or namespace-name"
+#: cp/parser.c:4456
+msgid "array bound forbidden after parenthesized type-id"
msgstr ""
-#: cp/parser.c:3454
-msgid "ISO C++ forbids compound-literals"
+#: cp/parser.c:4457
+msgid "try removing the parentheses around the type-id"
msgstr ""
-#: cp/parser.c:4368
+#: cp/parser.c:4619
msgid "expression in new-declarator must have integral or enumeration type"
msgstr ""
-#: cp/parser.c:4540
+#: cp/parser.c:4800
msgid "use of old-style cast"
msgstr ""
-#: cp/parser.c:5271
+#: cp/parser.c:5545
#, c-format
msgid "case label `%E' not within a switch statement"
msgstr ""
-#: cp/parser.c:5811
+#: cp/parser.c:6087
msgid "ISO C++ forbids computed gotos"
msgstr ""
-#: cp/parser.c:5931
+#: cp/parser.c:6207
msgid "extra `;'"
msgstr ""
-#: cp/parser.c:6226
+#: cp/parser.c:6502
msgid "mixing declarations and function-definitions is forbidden"
msgstr ""
-#: cp/parser.c:6360
+#: cp/parser.c:6640
msgid "duplicate `friend'"
msgstr ""
-#: cp/parser.c:6818
+#: cp/parser.c:6789
+msgid "class definition may not be declared a friend"
+msgstr ""
+
+#: cp/parser.c:7104
msgid "only constructors take base initializers"
msgstr ""
-#: cp/parser.c:6869
+#: cp/parser.c:7155
msgid "anachronistic old-style base class initializer"
msgstr ""
#. Warn that we do not support `export'.
-#: cp/parser.c:7259
+#: cp/parser.c:7548
msgid "keyword `export' not implemented, and will be ignored"
msgstr ""
-#: cp/parser.c:8411 cp/pt.c:3993
-msgid "`%T' is not a template"
+#. Otherwise, emit an error about the invalid digraph, but continue
+#. parsing because we got our argument list.
+#: cp/parser.c:7908
+msgid "`<::' cannot begin a template-argument list"
msgstr ""
-#: cp/parser.c:8528
+#: cp/parser.c:7909
+msgid ""
+"`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'"
+msgstr ""
+
+#: cp/parser.c:7916
+msgid "(if you use `-fpermissive' G++ will accept your code)"
+msgstr ""
+
+#. Explain what went wrong.
+#: cp/parser.c:8088
+msgid "non-template `%D' used as template"
+msgstr ""
+
+#: cp/parser.c:8089
+msgid "(use `%T::template %D' to indicate that it is a template)"
+msgstr ""
+
+#: cp/parser.c:9026
msgid "using `typename' outside of template"
msgstr ""
-#: cp/parser.c:8644
+#: cp/parser.c:9148
msgid "expected type-name"
msgstr ""
-#: cp/parser.c:8795
-msgid "comma at end of enumerator list"
+#: cp/parser.c:9207
+msgid "type attributes are honored only at type definition"
msgstr ""
#. [namespace.udecl]
#.
#. A using declaration shall not name a template-id.
-#: cp/parser.c:9071
+#: cp/parser.c:9590
msgid "a template-id may not appear in a using-declaration"
msgstr ""
-#: cp/parser.c:9090
-msgid "`%D::%D' has not been declared"
-msgstr ""
-
-#: cp/parser.c:9093 cp/semantics.c:2291
-msgid "`::%D' has not been declared"
-msgstr ""
-
-#: cp/parser.c:9390
+#: cp/parser.c:9917
msgid "an asm-specification is not allowed on a function-definition"
msgstr ""
-#: cp/parser.c:9392
+#: cp/parser.c:9919
msgid "attributes are not allowed on a function-definition"
msgstr ""
-#: cp/parser.c:9507
+#: cp/parser.c:10052
msgid "attributes after parenthesized initializer ignored"
msgstr ""
-#: cp/parser.c:10625
+#: cp/parser.c:11254
msgid "file ends in default argument"
msgstr ""
-#: cp/parser.c:10681
+#: cp/parser.c:11310
msgid "deprecated use of default argument for parameter of non-function"
msgstr ""
-#: cp/parser.c:10684
+#: cp/parser.c:11313
msgid "default arguments are only permitted for function parameters"
msgstr ""
-#: cp/parser.c:11613
+#: cp/parser.c:12043
msgid "declaration of `%D' in `%D' which does not enclose `%D'"
msgstr ""
-#: cp/parser.c:11625
+#: cp/parser.c:12056
msgid "extra qualification ignored"
msgstr ""
-#: cp/parser.c:11845
+#: cp/parser.c:12067
+msgid "an explicit specialization must be preceded by 'template <>'"
+msgstr ""
+
+#: cp/parser.c:12350
msgid "extra semicolon"
msgstr ""
-#: cp/parser.c:11863
+#: cp/parser.c:12368
msgid "a class-key must be used when declaring a friend"
msgstr ""
-#: cp/parser.c:11894
+#: cp/parser.c:12399
msgid "friend declaration does not name a class or function"
msgstr ""
-#: cp/parser.c:13118
+#: cp/parser.c:12570
+msgid "pure-specifier on function-definition"
+msgstr ""
+
+#: cp/parser.c:12843
+msgid "keyword `typename' not allowed outside of templates"
+msgstr ""
+
+#: cp/parser.c:12845
+msgid ""
+"keyword `typename' not allowed in this context (the base class is implicitly "
+"a type)"
+msgstr ""
+
+#: cp/parser.c:13665
msgid "reference to `%D' is ambiguous"
msgstr ""
-#: cp/parser.c:13290
+#: cp/parser.c:13839
msgid "too few template-parameter-lists"
msgstr ""
@@ -15728,35 +15943,44 @@ msgstr ""
#. something like:
#.
#. template <class T> template <class U> void S::f();
-#: cp/parser.c:13305
+#: cp/parser.c:13854
msgid "too many template-parameter-lists"
msgstr ""
#. If begin_function_definition didn't like the definition, skip
#. the entire function.
-#: cp/parser.c:13580
+#: cp/parser.c:14146
msgid "invalid function declaration"
msgstr ""
#. Issue an error message.
-#: cp/parser.c:13617
+#: cp/parser.c:14183
msgid "named return values are no longer supported"
msgstr ""
-#: cp/parser.c:14212
-#, c-format
-msgid "expected %s"
+#: cp/parser.c:14522
+msgid "`>>' should be `> >' within a nested template argument list"
+msgstr ""
+
+#. If this is not a nested template argument list, the '>>' is
+#. a typo for '>'. Emit an error message and continue.
+#: cp/parser.c:14530
+msgid "spurious `>>', use `>' to terminate a template argument list"
msgstr ""
-#: cp/parser.c:14358
+#: cp/parser.c:14535
+msgid "missing `>' to terminate the template argument list"
+msgstr ""
+
+#: cp/parser.c:15023
msgid "`%s' tag used in naming `%#T'"
msgstr ""
-#: cp/parser.c:14378
+#: cp/parser.c:15043
msgid "%D redeclared with different access"
msgstr ""
-#: cp/parser.c:14395
+#: cp/parser.c:15060
msgid "`template' (as a disambiguator) is only allowed within templates"
msgstr ""
@@ -15796,61 +16020,61 @@ msgstr ""
msgid "explicit specialization of non-template `%T'"
msgstr ""
-#: cp/pt.c:933
+#: cp/pt.c:1067
msgid "specialization of %D after instantiation"
msgstr ""
-#: cp/pt.c:1058
+#: cp/pt.c:1192
msgid "%s %+#D"
msgstr ""
-#: cp/pt.c:1107
+#: cp/pt.c:1241
msgid "`%D' is not a function template"
msgstr ""
-#: cp/pt.c:1246
+#: cp/pt.c:1389
msgid "template-id `%D' for `%+D' does not match any template declaration"
msgstr ""
-#: cp/pt.c:1254
+#: cp/pt.c:1397
msgid "ambiguous template specialization `%D' for `%+D'"
msgstr ""
#. This case handles bogus declarations like template <>
#. template <class T> void f<int>();
-#: cp/pt.c:1477 cp/pt.c:1551
+#: cp/pt.c:1620 cp/pt.c:1694
msgid "template-id `%D' in declaration of primary template"
msgstr ""
-#: cp/pt.c:1490
+#: cp/pt.c:1633
msgid "template parameter list used in explicit instantiation"
msgstr ""
-#: cp/pt.c:1496
+#: cp/pt.c:1639
msgid "definition provided for explicit instantiation"
msgstr ""
-#: cp/pt.c:1502
+#: cp/pt.c:1645
msgid "too many template parameter lists in declaration of `%D'"
msgstr ""
-#: cp/pt.c:1518
+#: cp/pt.c:1661
msgid "too few template parameter lists in declaration of `%D'"
msgstr ""
-#: cp/pt.c:1535
+#: cp/pt.c:1678
msgid "explicit specialization not preceded by `template <>'"
msgstr ""
-#: cp/pt.c:1548
+#: cp/pt.c:1691
msgid "partial specialization `%D' of function template"
msgstr ""
-#: cp/pt.c:1580
+#: cp/pt.c:1723
msgid "default argument specified in explicit specialization"
msgstr ""
-#: cp/pt.c:1584
+#: cp/pt.c:1727
msgid "template specialization with C linkage"
msgstr ""
@@ -15862,106 +16086,106 @@ msgstr ""
#. program is ill-formed.
#.
#. Similar language is found in [temp.explicit].
-#: cp/pt.c:1668
+#: cp/pt.c:1811
msgid "specialization of implicitly-declared special member function"
msgstr ""
-#: cp/pt.c:1712
+#: cp/pt.c:1855
msgid "no member function `%D' declared in `%T'"
msgstr ""
#. There are two many template parameter lists.
-#: cp/pt.c:1867
+#: cp/pt.c:2005
msgid "too many template parameter lists in declaration of `%T'"
msgstr ""
-#: cp/pt.c:1960
+#: cp/pt.c:2098
msgid " shadows template parm `%#D'"
msgstr ""
-#: cp/pt.c:2357
+#: cp/pt.c:2495
msgid "template parameters not used in partial specialization:"
msgstr ""
-#: cp/pt.c:2361
+#: cp/pt.c:2499
msgid " `%D'"
msgstr ""
-#: cp/pt.c:2373
+#: cp/pt.c:2511
msgid "partial specialization `%T' does not specialize any template arguments"
msgstr ""
-#: cp/pt.c:2398
+#: cp/pt.c:2536
#, c-format
msgid "template argument `%E' involves template parameter(s)"
msgstr ""
-#: cp/pt.c:2442
+#: cp/pt.c:2580
msgid "type `%T' of template argument `%E' depends on template parameter(s)"
msgstr ""
-#: cp/pt.c:2527
+#: cp/pt.c:2665
msgid "no default argument for `%D'"
msgstr ""
-#: cp/pt.c:2676
+#: cp/pt.c:2814
msgid "template with C linkage"
msgstr ""
-#: cp/pt.c:2679
+#: cp/pt.c:2817
msgid "template class without a name"
msgstr ""
#. [temp.mem]
#.
#. A destructor shall not be a member template.
-#: cp/pt.c:2686
+#: cp/pt.c:2824
msgid "destructor `%D' declared as member template"
msgstr ""
-#: cp/pt.c:2766
+#: cp/pt.c:2904
msgid "`%D' does not declare a template type"
msgstr ""
-#: cp/pt.c:2772
+#: cp/pt.c:2910
msgid "template definition of non-template `%#D'"
msgstr ""
-#: cp/pt.c:2813
+#: cp/pt.c:2951
msgid "expected %d levels of template parms for `%#D', got %d"
msgstr ""
-#: cp/pt.c:2825
+#: cp/pt.c:2963
msgid "got %d template parameters for `%#D'"
msgstr ""
-#: cp/pt.c:2828
+#: cp/pt.c:2966
msgid "got %d template parameters for `%#T'"
msgstr ""
-#: cp/pt.c:2830
+#: cp/pt.c:2968
#, c-format
msgid " but %d required"
msgstr ""
-#: cp/pt.c:2910
+#: cp/pt.c:3053
msgid "`%T' is not a template type"
msgstr ""
-#: cp/pt.c:2926
+#: cp/pt.c:3069
msgid "previous declaration `%D'"
msgstr ""
-#: cp/pt.c:2927
+#: cp/pt.c:3070
#, c-format
msgid "used %d template parameter%s instead of %d"
msgstr ""
-#: cp/pt.c:2943
+#: cp/pt.c:3086
msgid "template parameter `%#D'"
msgstr ""
-#: cp/pt.c:2944
+#: cp/pt.c:3087
msgid "redeclared here as `%#D'"
msgstr ""
@@ -15969,275 +16193,285 @@ msgstr ""
#.
#. A template-parameter may not be given default arguments
#. by two different declarations in the same scope.
-#: cp/pt.c:2954
+#: cp/pt.c:3097
msgid "redefinition of default argument for `%#D'"
msgstr ""
-#: cp/pt.c:2955
+#: cp/pt.c:3098
msgid "%J original definition appeared here"
msgstr ""
-#: cp/pt.c:3044
+#: cp/pt.c:3246
#, c-format
msgid "`%E' is not a valid template argument"
msgstr ""
-#: cp/pt.c:3048
+#: cp/pt.c:3250
msgid "it must be the address of a function with external linkage"
msgstr ""
-#: cp/pt.c:3050
+#: cp/pt.c:3252
msgid "it must be the address of an object with external linkage"
msgstr ""
-#: cp/pt.c:3053
+#: cp/pt.c:3255
msgid "it must be a pointer-to-member of the form `&X::Y'"
msgstr ""
-#: cp/pt.c:3064
+#: cp/pt.c:3266
#, c-format
msgid ""
"string literal %E is not a valid template argument because it is the address "
"of an object with static linkage"
msgstr ""
-#: cp/pt.c:3079
+#: cp/pt.c:3281
#, c-format
msgid "address of non-extern `%E' cannot be used as template argument"
msgstr ""
-#: cp/pt.c:3088
+#: cp/pt.c:3290
#, c-format
msgid "non-constant `%E' cannot be used as template argument"
msgstr ""
-#: cp/pt.c:3096
+#: cp/pt.c:3298
msgid "type '%T' cannot be used as a value for a non-type template-parameter"
msgstr ""
-#: cp/pt.c:3099
+#: cp/pt.c:3301
msgid "invalid use of '%D' as a non-type template-argument"
msgstr ""
-#: cp/pt.c:3101
+#: cp/pt.c:3303
#, c-format
msgid "invalid use of '%E' as a non-type template-argument"
msgstr ""
-#: cp/pt.c:3465
+#: cp/pt.c:3668
#, c-format
msgid "to refer to a type member of a template parameter, use `typename %E'"
msgstr ""
-#: cp/pt.c:3478 cp/pt.c:3496 cp/pt.c:3535
+#: cp/pt.c:3681 cp/pt.c:3699 cp/pt.c:3738
msgid "type/value mismatch at argument %d in template parameter list for `%D'"
msgstr ""
-#: cp/pt.c:3481
+#: cp/pt.c:3684
msgid " expected a constant of type `%T', got `%T'"
msgstr ""
-#: cp/pt.c:3485
+#: cp/pt.c:3688
#, c-format
msgid " expected a class template, got `%E'"
msgstr ""
-#: cp/pt.c:3487
+#: cp/pt.c:3690
#, c-format
msgid " expected a type, got `%E'"
msgstr ""
-#: cp/pt.c:3499
+#: cp/pt.c:3702
msgid " expected a type, got `%T'"
msgstr ""
-#: cp/pt.c:3501
+#: cp/pt.c:3704
msgid " expected a class template, got `%T'"
msgstr ""
-#: cp/pt.c:3537
+#: cp/pt.c:3740
msgid " expected a template of type `%D', got `%D'"
msgstr ""
-#: cp/pt.c:3572
+#: cp/pt.c:3775
msgid "could not convert template argument `%E' to `%T'"
msgstr ""
-#: cp/pt.c:3612
+#: cp/pt.c:3815
#, c-format
msgid "wrong number of template arguments (%d, should be %d)"
msgstr ""
-#: cp/pt.c:3616
+#: cp/pt.c:3819
msgid "provided for `%D'"
msgstr ""
-#: cp/pt.c:3644
+#: cp/pt.c:3847
#, c-format
msgid "template argument %d is invalid"
msgstr ""
-#: cp/pt.c:3865
+#: cp/pt.c:4068
msgid "non-template used as template"
msgstr ""
-#: cp/pt.c:4005
+#: cp/pt.c:4208
msgid "non-template type `%T' used as a template"
msgstr ""
-#: cp/pt.c:4007
+#: cp/pt.c:4210
msgid "for template declaration `%D'"
msgstr ""
-#: cp/pt.c:4636
+#: cp/pt.c:4857
msgid ""
"template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN "
"to increase the maximum) instantiating `%D'"
msgstr ""
-#: cp/pt.c:5073
+#: cp/pt.c:5296
msgid "ambiguous class template instantiation for `%#T'"
msgstr ""
-#: cp/pt.c:5079
+#: cp/pt.c:5302
msgid "%s %+#T"
msgstr ""
-#: cp/pt.c:6090 cp/pt.c:6210
+#: cp/pt.c:6307 cp/pt.c:6427
msgid "instantiation of `%D' as type `%T'"
msgstr ""
-#: cp/pt.c:6252
+#: cp/pt.c:6469
msgid "invalid parameter type `%T'"
msgstr ""
-#: cp/pt.c:6254
+#: cp/pt.c:6471
msgid "in declaration `%D'"
msgstr ""
-#: cp/pt.c:6328
+#: cp/pt.c:6545
msgid "creating pointer to member function of non-class type `%T'"
msgstr ""
-#: cp/pt.c:6484
+#: cp/pt.c:6684
msgid "creating array with size zero"
msgstr ""
-#: cp/pt.c:6498
+#: cp/pt.c:6698
#, c-format
msgid "creating array with size zero (`%E')"
msgstr ""
-#: cp/pt.c:6737
+#: cp/pt.c:6937
msgid "forming reference to void"
msgstr ""
-#: cp/pt.c:6739
+#: cp/pt.c:6939
msgid "forming %s to reference type `%T'"
msgstr ""
-#: cp/pt.c:6776
+#: cp/pt.c:6976
msgid "creating pointer to member of non-class type `%T'"
msgstr ""
-#: cp/pt.c:6782
+#: cp/pt.c:6982
msgid "creating pointer to member reference type `%T'"
msgstr ""
-#: cp/pt.c:6867
+#: cp/pt.c:7068
msgid "creating array of `%T'"
msgstr ""
-#: cp/pt.c:6910
+#: cp/pt.c:7074
+msgid "creating array of `%T', which is an abstract class type"
+msgstr ""
+
+#: cp/pt.c:7118
msgid "`%T' is not a class, struct, or union type"
msgstr ""
-#: cp/pt.c:7023
+#: cp/pt.c:7231
#, c-format
msgid "use of `%s' in template"
msgstr ""
-#: cp/pt.c:7134
+#: cp/pt.c:7344
#, c-format
-msgid "`%E' names a type, but a non-type is expected"
+msgid ""
+"dependent-name `%E' is parsed as a non-type, but instantiation yields a type"
msgstr ""
-#: cp/pt.c:8393
+#: cp/pt.c:7346
+#, c-format
+msgid "say `typename %E' if a type is meant"
+msgstr ""
+
+#: cp/pt.c:8609
msgid "`%T' uses anonymous type"
msgstr ""
-#: cp/pt.c:8395
+#: cp/pt.c:8611
msgid "`%T' uses local type `%T'"
msgstr ""
-#: cp/pt.c:8403
+#: cp/pt.c:8619
msgid "`%T' is a variably modified type"
msgstr ""
-#: cp/pt.c:8414
+#: cp/pt.c:8630
#, c-format
msgid "integral expression `%E' is not constant"
msgstr ""
-#: cp/pt.c:8419
+#: cp/pt.c:8635
msgid " trying to instantiate `%D'"
msgstr ""
-#: cp/pt.c:8938
+#: cp/pt.c:9148
msgid "incomplete type unification"
msgstr ""
-#: cp/pt.c:9885
+#: cp/pt.c:10095
#, c-format
msgid "use of `%s' in template type unification"
msgstr ""
-#: cp/pt.c:10313 cp/pt.c:10385
+#: cp/pt.c:10529 cp/pt.c:10601
msgid "explicit instantiation of non-template `%#D'"
msgstr ""
-#: cp/pt.c:10329 cp/pt.c:10380
+#: cp/pt.c:10545 cp/pt.c:10596
msgid "no matching template for `%D' found"
msgstr ""
-#: cp/pt.c:10335
+#: cp/pt.c:10551
msgid "explicit instantiation of `%#D'"
msgstr ""
-#: cp/pt.c:10372
+#: cp/pt.c:10588
msgid "duplicate explicit instantiation of `%#D'"
msgstr ""
-#: cp/pt.c:10397
+#: cp/pt.c:10610
msgid "ISO C++ forbids the use of `extern' on explicit instantiations"
msgstr ""
-#: cp/pt.c:10401 cp/pt.c:10487
+#: cp/pt.c:10614 cp/pt.c:10695
msgid "storage class `%D' applied to template instantiation"
msgstr ""
-#: cp/pt.c:10454
+#: cp/pt.c:10667
msgid "explicit instantiation of non-template type `%T'"
msgstr ""
-#: cp/pt.c:10468
+#: cp/pt.c:10676
msgid "explicit instantiation of `%#T' before definition of template"
msgstr ""
-#: cp/pt.c:10476
+#: cp/pt.c:10684
#, c-format
msgid "ISO C++ forbids the use of `%s' on explicit instantiations"
msgstr ""
-#: cp/pt.c:10520
+#: cp/pt.c:10728
msgid "duplicate explicit instantiation of `%#T'"
msgstr ""
-#: cp/pt.c:10922
+#: cp/pt.c:11109
msgid "explicit instantiation of `%D' but no definition available"
msgstr ""
-#: cp/pt.c:11342
+#: cp/pt.c:11543
msgid "`%#T' is not a valid type for a template constant parameter"
msgstr ""
@@ -16272,228 +16506,240 @@ msgstr ""
msgid "dynamic_cast of `%#D' to `%#T' can never succeed"
msgstr ""
-#: cp/rtti.c:675
+#: cp/rtti.c:674
msgid "cannot dynamic_cast `%E' (of type `%#T') to type `%#T' (%s)"
msgstr ""
-#: cp/search.c:306
+#: cp/search.c:311
msgid "`%T' is an ambiguous base of `%T'"
msgstr ""
-#: cp/search.c:324
+#: cp/search.c:329
msgid "`%T' is an inaccessible base of `%T'"
msgstr ""
-#: cp/search.c:1746
+#: cp/search.c:1767
msgid "invalid covariant return type for `%#D'"
msgstr ""
-#: cp/search.c:1747 cp/search.c:1753
+#: cp/search.c:1768 cp/search.c:1774
msgid " overriding `%#D'"
msgstr ""
-#: cp/search.c:1751
+#: cp/search.c:1772
msgid "conflicting return type specified for `%#D'"
msgstr ""
-#: cp/search.c:1765
+#: cp/search.c:1786
#, c-format
msgid "looser throw specifier for `%#F'"
msgstr ""
-#: cp/search.c:1766
+#: cp/search.c:1787
#, c-format
msgid " overriding `%#F'"
msgstr ""
#. A static member function cannot match an inherited
#. virtual member function.
-#: cp/search.c:1856
+#: cp/search.c:1877
msgid "`%#D' cannot be declared"
msgstr ""
-#: cp/search.c:1857
+#: cp/search.c:1878
msgid " since `%#D' declared in base class"
msgstr ""
-#: cp/search.c:1934
+#: cp/search.c:1955
msgid "`%#D' needs a final overrider"
msgstr ""
-#: cp/semantics.c:1077
+#: cp/semantics.c:1092
#, c-format
msgid "type of asm operand `%E' could not be determined"
msgstr ""
-#: cp/semantics.c:1218
+#: cp/semantics.c:1233
msgid "invalid use of member `%D' in static member function"
msgstr ""
-#: cp/semantics.c:1222 cp/semantics.c:1261
+#: cp/semantics.c:1237 cp/semantics.c:1276
msgid "from this location"
msgstr ""
-#: cp/semantics.c:1260
+#: cp/semantics.c:1275
msgid "object missing in reference to `%D'"
msgstr ""
-#: cp/semantics.c:1706
+#: cp/semantics.c:1721
msgid "arguments to destructor are not allowed"
msgstr ""
-#: cp/semantics.c:1754
+#: cp/semantics.c:1770
msgid "`this' is unavailable for static member functions"
msgstr ""
-#: cp/semantics.c:1760
+#: cp/semantics.c:1776
msgid "invalid use of `this' in non-member function"
msgstr ""
-#: cp/semantics.c:1762
+#: cp/semantics.c:1778
msgid "invalid use of `this' at top level"
msgstr ""
-#: cp/semantics.c:1789
-msgid "calling type `%T' like a method"
-msgstr ""
-
-#: cp/semantics.c:1822
+#: cp/semantics.c:1802
msgid "invalid qualifying scope in pseudo-destructor name"
msgstr ""
-#: cp/semantics.c:1828
+#: cp/semantics.c:1822
msgid "`%E' is not of type `%T'"
msgstr ""
-#: cp/semantics.c:1939
+#: cp/semantics.c:1933
msgid "template type parameters must use the keyword `class' or `typename'"
msgstr ""
-#: cp/semantics.c:1976
-msgid "invalid default template argument"
+#: cp/semantics.c:1977
+msgid ""
+"invalid use of type `%T' as a default value for a template template-parameter"
+msgstr ""
+
+#: cp/semantics.c:1980
+msgid ""
+"invalid use of `%D' as a default value for a template template-parameter"
msgstr ""
-#: cp/semantics.c:2011
+#: cp/semantics.c:1984
+msgid "invalid default argument for a template template parameter"
+msgstr ""
+
+#: cp/semantics.c:2019
msgid "definition of `%#T' inside template parameter list"
msgstr ""
-#: cp/semantics.c:2022
+#: cp/semantics.c:2030
msgid "invalid definition of qualified type `%T'"
msgstr ""
-#: cp/semantics.c:2037
+#: cp/semantics.c:2045
msgid "previous definition of `%#T'"
msgstr ""
-#: cp/semantics.c:2232
+#: cp/semantics.c:2249
msgid "invalid base-class specification"
msgstr ""
-#: cp/semantics.c:2241
+#: cp/semantics.c:2258
msgid "base class `%T' has cv qualifiers"
msgstr ""
-#: cp/semantics.c:2273
+#: cp/semantics.c:2290
msgid "multiple declarators in template declaration"
msgstr ""
-#: cp/semantics.c:2284
+#: cp/semantics.c:2301
msgid "incomplete type `%T' used in nested name specifier"
msgstr ""
-#: cp/semantics.c:2286 cp/typeck.c:1585
+#: cp/semantics.c:2303 cp/typeck.c:1612
msgid "`%D' is not a member of `%T'"
msgstr ""
-#: cp/semantics.c:2289
+#: cp/semantics.c:2306
msgid "`%D' is not a member of `%D'"
msgstr ""
-#: cp/semantics.c:2539
+#: cp/semantics.c:2431
+msgid ""
+"template parameter `%D' of type `%T' is not allowed in an integral constant "
+"expression because it is not of integral or enumeration type"
+msgstr ""
+
+#: cp/semantics.c:2584
msgid "`%D' cannot appear in a constant-expression"
msgstr ""
-#: cp/semantics.c:2548
+#: cp/semantics.c:2593
msgid "use of namespace `%D' as expression"
msgstr ""
-#: cp/semantics.c:2553
+#: cp/semantics.c:2598
msgid "use of class template `%T' as expression"
msgstr ""
#. Ambiguous reference to base members.
-#: cp/semantics.c:2559
+#: cp/semantics.c:2604
msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
msgstr ""
-#: cp/semantics.c:2619
+#: cp/semantics.c:2664
#, c-format
msgid "use of %s from containing function"
msgstr ""
-#: cp/semantics.c:2622
+#: cp/semantics.c:2667
msgid " `%#D' declared here"
msgstr ""
-#: cp/semantics.c:2673
+#: cp/semantics.c:2718
#, c-format
msgid "type of `%E' is unknown"
msgstr ""
-#: cp/tree.c:221
+#: cp/tree.c:222
#, c-format
msgid "non-lvalue in %s"
msgstr ""
-#: cp/tree.c:528
+#: cp/tree.c:539
msgid "`%V' qualifiers cannot be applied to `%T'"
msgstr ""
-#: cp/tree.c:1818
+#: cp/tree.c:1828
#, c-format
msgid "`%s' attribute can only be applied to Java class definitions"
msgstr ""
-#: cp/tree.c:1847
+#: cp/tree.c:1857
#, c-format
msgid "`%s' attribute can only be applied to class definitions"
msgstr ""
-#: cp/tree.c:1853
+#: cp/tree.c:1863
#, c-format
msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default"
msgstr ""
-#: cp/tree.c:1877
+#: cp/tree.c:1887
msgid "requested init_priority is not an integer constant"
msgstr ""
-#: cp/tree.c:1898
+#: cp/tree.c:1908
#, c-format
msgid ""
"can only use `%s' attribute on file-scope definitions of objects of class "
"type"
msgstr ""
-#: cp/tree.c:1906
+#: cp/tree.c:1916
msgid "requested init_priority is out of range"
msgstr ""
-#: cp/tree.c:1916
+#: cp/tree.c:1926
msgid "requested init_priority is reserved for internal use"
msgstr ""
-#: cp/tree.c:1926
+#: cp/tree.c:1936
#, c-format
msgid "`%s' attribute is not supported on this platform"
msgstr ""
-#: cp/tree.c:2452
+#: cp/tree.c:2531
#, c-format
msgid "lang_* check: failed in %s, at %s:%d"
msgstr ""
-#: cp/typeck.c:438 cp/typeck.c:453 cp/typeck.c:543
+#: cp/typeck.c:437 cp/typeck.c:451 cp/typeck.c:543
msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
msgstr ""
@@ -16507,175 +16753,175 @@ msgstr ""
msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast"
msgstr ""
-#: cp/typeck.c:1206
+#: cp/typeck.c:1235
#, c-format
msgid "invalid application of `%s' to a member function"
msgstr ""
-#: cp/typeck.c:1238
+#: cp/typeck.c:1268
#, c-format
msgid "invalid application of `%s' to a bit-field"
msgstr ""
-#: cp/typeck.c:1243
+#: cp/typeck.c:1273
#, c-format
msgid "ISO C++ forbids applying `%s' to an expression of function type"
msgstr ""
-#: cp/typeck.c:1312
+#: cp/typeck.c:1342
msgid "invalid use of non-static member function"
msgstr ""
-#: cp/typeck.c:1446
+#: cp/typeck.c:1471
msgid "deprecated conversion from string constant to `%T'"
msgstr ""
-#: cp/typeck.c:1556 cp/typeck.c:1839
+#: cp/typeck.c:1583 cp/typeck.c:1874
msgid "request for member `%D' in `%E', which is of non-class type `%T'"
msgstr ""
-#: cp/typeck.c:1583
+#: cp/typeck.c:1610
#, c-format
msgid "invalid use of nonstatic data member '%E'"
msgstr ""
-#: cp/typeck.c:1635 cp/typeck.c:1657
+#: cp/typeck.c:1662 cp/typeck.c:1684
msgid "invalid access to non-static data member `%D' of NULL object"
msgstr ""
-#: cp/typeck.c:1637 cp/typeck.c:1659
+#: cp/typeck.c:1664 cp/typeck.c:1686
msgid "(perhaps the `offsetof' macro was used incorrectly)"
msgstr ""
-#: cp/typeck.c:1773
-msgid "destructor name `%T' does not match type `%T' of expression"
+#: cp/typeck.c:1801
+msgid "the type being destroyed is `%T', but the destructor refers to `%T'"
msgstr ""
-#: cp/typeck.c:1884
+#: cp/typeck.c:1924
msgid "`%D::%D' is not a member of `%T'"
msgstr ""
-#: cp/typeck.c:1895
+#: cp/typeck.c:1935
msgid "`%T' is not a base of `%T'"
msgstr ""
-#: cp/typeck.c:1914
+#: cp/typeck.c:1954
msgid "'%D' has no member named '%E'"
msgstr ""
-#: cp/typeck.c:1929
+#: cp/typeck.c:1969
msgid "`%D' is not a member template function"
msgstr ""
#. A pointer to incomplete type (other than cv void) can be
#. dereferenced [expr.unary.op]/1
-#: cp/typeck.c:2035
+#: cp/typeck.c:2075
msgid "`%T' is not a pointer-to-object type"
msgstr ""
-#: cp/typeck.c:2060
+#: cp/typeck.c:2100
#, c-format
msgid "invalid use of `%s' on pointer to member"
msgstr ""
-#: cp/typeck.c:2066
+#: cp/typeck.c:2106
msgid "invalid type argument"
msgstr ""
-#: cp/typeck.c:2172
+#: cp/typeck.c:2212
msgid "ISO C++ forbids subscripting non-lvalue array"
msgstr ""
-#: cp/typeck.c:2183
+#: cp/typeck.c:2223
msgid "subscripting array declared `register'"
msgstr ""
-#: cp/typeck.c:2266
+#: cp/typeck.c:2306
#, c-format
msgid "object missing in use of `%E'"
msgstr ""
-#: cp/typeck.c:2368
+#: cp/typeck.c:2408
msgid "ISO C++ forbids calling `::main' from within program"
msgstr ""
-#: cp/typeck.c:2393
+#: cp/typeck.c:2433
#, c-format
msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'"
msgstr ""
-#: cp/typeck.c:2406
+#: cp/typeck.c:2446
#, c-format
msgid "`%E' cannot be used as a function"
msgstr ""
-#: cp/typeck.c:2499
+#: cp/typeck.c:2539
msgid "too many arguments to %s `%+#D'"
msgstr ""
-#: cp/typeck.c:2501 cp/typeck.c:2607
+#: cp/typeck.c:2541 cp/typeck.c:2647
msgid "at this point in file"
msgstr ""
-#: cp/typeck.c:2538
+#: cp/typeck.c:2578
msgid "parameter %P of `%D' has incomplete type `%T'"
msgstr ""
-#: cp/typeck.c:2541
+#: cp/typeck.c:2581
msgid "parameter %P has incomplete type `%T'"
msgstr ""
-#: cp/typeck.c:2605
+#: cp/typeck.c:2645
msgid "too few arguments to %s `%+#D'"
msgstr ""
-#: cp/typeck.c:2750 cp/typeck.c:2760
+#: cp/typeck.c:2792 cp/typeck.c:2802
msgid "assuming cast to type `%T' from overloaded function"
msgstr ""
-#: cp/typeck.c:2821
+#: cp/typeck.c:2863
#, c-format
msgid "division by zero in `%E / 0'"
msgstr ""
-#: cp/typeck.c:2823
+#: cp/typeck.c:2865
#, c-format
msgid "division by zero in `%E / 0.'"
msgstr ""
-#: cp/typeck.c:2852
+#: cp/typeck.c:2894
#, c-format
msgid "division by zero in `%E %% 0'"
msgstr ""
-#: cp/typeck.c:2854
+#: cp/typeck.c:2896
#, c-format
msgid "division by zero in `%E %% 0.'"
msgstr ""
-#: cp/typeck.c:2934
+#: cp/typeck.c:2976
#, c-format
msgid "%s rotate count is negative"
msgstr ""
-#: cp/typeck.c:2937
+#: cp/typeck.c:2979
#, c-format
msgid "%s rotate count >= width of type"
msgstr ""
-#: cp/typeck.c:2971 cp/typeck.c:2976 cp/typeck.c:3067 cp/typeck.c:3072
+#: cp/typeck.c:3013 cp/typeck.c:3018 cp/typeck.c:3109 cp/typeck.c:3114
msgid "ISO C++ forbids comparison between pointer and integer"
msgstr ""
-#: cp/typeck.c:3253
+#: cp/typeck.c:3295
msgid "comparison between types `%#T' and `%#T'"
msgstr ""
-#: cp/typeck.c:3289
+#: cp/typeck.c:3331
msgid "comparison between signed and unsigned integer expressions"
msgstr ""
-#: cp/typeck.c:3354
+#: cp/typeck.c:3396
msgid "invalid operands of types `%T' and `%T' to binary `%O'"
msgstr ""
@@ -16683,294 +16929,294 @@ msgstr ""
#. performed. Note that pointer-difference and pointer-addition
#. have already been handled above, and so we don't end up here in
#. that case.
-#: cp/typeck.c:3376
+#: cp/typeck.c:3418
msgid "NULL used in arithmetic"
msgstr ""
-#: cp/typeck.c:3440
+#: cp/typeck.c:3481
msgid "ISO C++ forbids using pointer of type `void *' in subtraction"
msgstr ""
-#: cp/typeck.c:3442
+#: cp/typeck.c:3483
msgid "ISO C++ forbids using pointer to a function in subtraction"
msgstr ""
-#: cp/typeck.c:3444
+#: cp/typeck.c:3485
msgid "ISO C++ forbids using pointer to a method in subtraction"
msgstr ""
-#: cp/typeck.c:3456
+#: cp/typeck.c:3497
msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
msgstr ""
-#: cp/typeck.c:3511
+#: cp/typeck.c:3553
#, c-format
msgid ""
"invalid use of '%E' to form a pointer-to-member-function. Use a qualified-"
"id."
msgstr ""
-#: cp/typeck.c:3517
+#: cp/typeck.c:3559
#, c-format
msgid ""
"parenthesis around '%E' cannot be used to form a pointer-to-member-function"
msgstr ""
-#: cp/typeck.c:3539
+#: cp/typeck.c:3581
msgid "taking address of temporary"
msgstr ""
-#: cp/typeck.c:3774
+#: cp/typeck.c:3816
#, c-format
msgid "ISO C++ forbids %sing an enum"
msgstr ""
-#: cp/typeck.c:3785
+#: cp/typeck.c:3827
msgid "cannot %s a pointer to incomplete type `%T'"
msgstr ""
-#: cp/typeck.c:3791
+#: cp/typeck.c:3833
msgid "ISO C++ forbids %sing a pointer of type `%T'"
msgstr ""
-#: cp/typeck.c:3816
+#: cp/typeck.c:3858
msgid "cast to non-reference type used as lvalue"
msgstr ""
-#: cp/typeck.c:3850
+#: cp/typeck.c:3892
msgid "invalid use of `--' on bool variable `%D'"
msgstr ""
#. ARM $3.4
-#: cp/typeck.c:3881
+#: cp/typeck.c:3923
msgid "ISO C++ forbids taking address of function `::main'"
msgstr ""
#. An expression like &memfn.
-#: cp/typeck.c:3952
+#: cp/typeck.c:3994
msgid ""
"ISO C++ forbids taking the address of an unqualified or parenthesized non-"
"static member function to form a pointer to member function. Say `&%T::%D'"
msgstr ""
-#: cp/typeck.c:3957
+#: cp/typeck.c:3999
msgid ""
"ISO C++ forbids taking the address of a bound member function to form a "
"pointer to member function. Say `&%T::%D'"
msgstr ""
-#: cp/typeck.c:3985
+#: cp/typeck.c:4027
msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression"
msgstr ""
-#: cp/typeck.c:4001
+#: cp/typeck.c:4047
msgid "unary `&'"
msgstr ""
-#: cp/typeck.c:4030
+#: cp/typeck.c:4076
msgid "attempt to take address of bit-field structure member `%D'"
msgstr ""
-#: cp/typeck.c:4144
+#: cp/typeck.c:4190
msgid "taking address of destructor"
msgstr ""
-#: cp/typeck.c:4157
+#: cp/typeck.c:4203
msgid "taking address of bound pointer-to-member expression"
msgstr ""
-#: cp/typeck.c:4165
+#: cp/typeck.c:4211
msgid "cannot create pointer to reference member `%D'"
msgstr ""
-#: cp/typeck.c:4227
+#: cp/typeck.c:4273
msgid "cannot take the address of `this', which is an rvalue expression"
msgstr ""
-#: cp/typeck.c:4246
+#: cp/typeck.c:4292
msgid "address requested for `%D', which is declared `register'"
msgstr ""
-#: cp/typeck.c:4314
+#: cp/typeck.c:4360
#, c-format
msgid "%s expression list treated as compound expression"
msgstr ""
-#: cp/typeck.c:4387
+#: cp/typeck.c:4434
msgid "%s from type `%T' to type `%T' casts away constness"
msgstr ""
-#: cp/typeck.c:4579
+#: cp/typeck.c:4626
msgid "invalid static_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4619
+#: cp/typeck.c:4666
msgid ""
"invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4639
+#: cp/typeck.c:4686
msgid "reinterpret_cast from `%T' to `%T' loses precision"
msgstr ""
-#: cp/typeck.c:4658
+#: cp/typeck.c:4705
msgid ""
"ISO C++ forbids casting between pointer-to-function and pointer-to-object"
msgstr ""
-#: cp/typeck.c:4664
+#: cp/typeck.c:4711
msgid "invalid reinterpret_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4692
+#: cp/typeck.c:4739
msgid ""
"invalid use of const_cast with type `%T', which is not a pointer, reference, "
"nor a pointer-to-data-member type"
msgstr ""
-#: cp/typeck.c:4695
+#: cp/typeck.c:4742
msgid ""
"invalid use of const_cast with type `%T', which is a pointer or reference to "
"a function type"
msgstr ""
-#: cp/typeck.c:4718
+#: cp/typeck.c:4765
msgid "invalid const_cast of an rvalue of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4735
+#: cp/typeck.c:4782
msgid "invalid const_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4775 cp/typeck.c:4780
+#: cp/typeck.c:4822 cp/typeck.c:4827
msgid "ISO C++ forbids casting to an array type `%T'"
msgstr ""
-#: cp/typeck.c:4788
+#: cp/typeck.c:4835
msgid "invalid cast to function type `%T'"
msgstr ""
-#: cp/typeck.c:4844
+#: cp/typeck.c:4891
msgid "cast from `%T' to `%T' discards qualifiers from pointer target type"
msgstr ""
-#: cp/typeck.c:4890
+#: cp/typeck.c:4937
msgid "cast from `%T' to `%T' increases required alignment of target type"
msgstr ""
-#: cp/typeck.c:5054
+#: cp/typeck.c:5104
msgid " in evaluation of `%Q(%#T, %#T)'"
msgstr ""
-#: cp/typeck.c:5096
+#: cp/typeck.c:5146
msgid "ISO C++ forbids cast to non-reference type used as lvalue"
msgstr ""
-#: cp/typeck.c:5160
+#: cp/typeck.c:5219
msgid "incompatible types in assignment of `%T' to `%T'"
msgstr ""
-#: cp/typeck.c:5167
+#: cp/typeck.c:5226
msgid "ISO C++ forbids assignment of arrays"
msgstr ""
-#: cp/typeck.c:5269
+#: cp/typeck.c:5326
msgid " in pointer to member function conversion"
msgstr ""
-#: cp/typeck.c:5277
+#: cp/typeck.c:5334
msgid " in pointer to member conversion"
msgstr ""
#. This is a reinterpret cast, we choose to do nothing.
-#: cp/typeck.c:5287 cp/typeck.c:5302
+#: cp/typeck.c:5344 cp/typeck.c:5359
msgid "pointer to member cast via virtual base `%T'"
msgstr ""
-#: cp/typeck.c:5305
+#: cp/typeck.c:5362
msgid "pointer to member conversion via virtual base `%T'"
msgstr ""
-#: cp/typeck.c:5375
+#: cp/typeck.c:5432
msgid "invalid conversion to type `%T' from type `%T'"
msgstr ""
-#: cp/typeck.c:5531
+#: cp/typeck.c:5588
msgid "passing NULL used for non-pointer %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5534
+#: cp/typeck.c:5591
msgid "%s to non-pointer type `%T' from NULL"
msgstr ""
-#: cp/typeck.c:5542
+#: cp/typeck.c:5599
msgid "passing `%T' for %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5545
+#: cp/typeck.c:5602
msgid "%s to `%T' from `%T'"
msgstr ""
-#: cp/typeck.c:5555
+#: cp/typeck.c:5612
msgid "passing negative value `%E' for %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5558
+#: cp/typeck.c:5615
msgid "%s of negative value `%E' to `%T'"
msgstr ""
-#: cp/typeck.c:5648
+#: cp/typeck.c:5703
msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'"
msgstr ""
-#: cp/typeck.c:5651
+#: cp/typeck.c:5706
msgid "cannot convert `%T' to `%T' in %s"
msgstr ""
-#: cp/typeck.c:5728 cp/typeck.c:5730
+#: cp/typeck.c:5783 cp/typeck.c:5785
msgid "in passing argument %P of `%+D'"
msgstr ""
-#: cp/typeck.c:5837
+#: cp/typeck.c:5892
msgid "returning reference to temporary"
msgstr ""
-#: cp/typeck.c:5844
+#: cp/typeck.c:5899
msgid "reference to non-lvalue returned"
msgstr ""
-#: cp/typeck.c:5856
+#: cp/typeck.c:5911
msgid "reference to local variable `%D' returned"
msgstr ""
-#: cp/typeck.c:5859
+#: cp/typeck.c:5914
msgid "address of local variable `%D' returned"
msgstr ""
-#: cp/typeck.c:5889
+#: cp/typeck.c:5944
msgid "returning a value from a destructor"
msgstr ""
#. If a return statement appears in a handler of the
#. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.c:5897
+#: cp/typeck.c:5952
msgid "cannot return from a handler of a function-try-block of a constructor"
msgstr ""
#. You can't return a value from a constructor.
-#: cp/typeck.c:5900
+#: cp/typeck.c:5955
msgid "returning a value from a constructor"
msgstr ""
-#: cp/typeck.c:5923
+#: cp/typeck.c:5978
msgid "return-statement with no value, in function returning '%T'"
msgstr ""
-#: cp/typeck.c:5940
+#: cp/typeck.c:5995
msgid "return-statement with a value, in function returning 'void'"
msgstr ""
-#: cp/typeck.c:5962
+#: cp/typeck.c:6017
msgid ""
"`operator new' must not return NULL unless it is declared `throw()' (or -"
"fcheck-new is in effect)"
@@ -17016,133 +17262,133 @@ msgstr ""
msgid " since type `%T' has abstract virtual functions"
msgstr ""
-#: cp/typeck2.c:325
+#: cp/typeck2.c:427
msgid "constructor syntax used, but no constructor declared for type `%T'"
msgstr ""
-#: cp/typeck2.c:338
+#: cp/typeck2.c:440
msgid "cannot initialize arrays using this syntax"
msgstr ""
-#: cp/typeck2.c:443
+#: cp/typeck2.c:545
msgid "initializing array with parameter list"
msgstr ""
-#: cp/typeck2.c:499
+#: cp/typeck2.c:600
msgid "initializer for scalar variable requires one element"
msgstr ""
-#: cp/typeck2.c:506
+#: cp/typeck2.c:607
msgid "braces around scalar initializer for `%T'"
msgstr ""
-#: cp/typeck2.c:509
+#: cp/typeck2.c:610
msgid "ignoring extra initializers for `%T'"
msgstr ""
-#: cp/typeck2.c:521
+#: cp/typeck2.c:622
msgid "variable-sized object of type `%T' may not be initialized"
msgstr ""
-#: cp/typeck2.c:531
+#: cp/typeck2.c:632
msgid "subobject of type `%T' must be initialized by constructor, not by `%E'"
msgstr ""
-#: cp/typeck2.c:596
+#: cp/typeck2.c:697
msgid "aggregate has a partly bracketed initializer"
msgstr ""
-#: cp/typeck2.c:634 cp/typeck2.c:739
+#: cp/typeck2.c:735 cp/typeck2.c:840
msgid "non-trivial labeled initializers"
msgstr ""
-#: cp/typeck2.c:651
+#: cp/typeck2.c:752
msgid "non-empty initializer for array of empty elements"
msgstr ""
-#: cp/typeck2.c:705
+#: cp/typeck2.c:806
msgid "initializer list for object of class with virtual base classes"
msgstr ""
-#: cp/typeck2.c:711
+#: cp/typeck2.c:812
msgid "initializer list for object of class with base classes"
msgstr ""
-#: cp/typeck2.c:717
+#: cp/typeck2.c:818
msgid "initializer list for object using virtual functions"
msgstr ""
-#: cp/typeck2.c:779 cp/typeck2.c:795
+#: cp/typeck2.c:880 cp/typeck2.c:896
msgid "missing initializer for member `%D'"
msgstr ""
-#: cp/typeck2.c:784
+#: cp/typeck2.c:885
msgid "uninitialized const member `%D'"
msgstr ""
-#: cp/typeck2.c:786
+#: cp/typeck2.c:887
msgid "member `%D' with uninitialized const fields"
msgstr ""
-#: cp/typeck2.c:789
+#: cp/typeck2.c:890
msgid "member `%D' is uninitialized reference"
msgstr ""
-#: cp/typeck2.c:836
+#: cp/typeck2.c:937
msgid "index value instead of field name in union initializer"
msgstr ""
-#: cp/typeck2.c:848
+#: cp/typeck2.c:949
msgid "no field `%D' in union being initialized"
msgstr ""
-#: cp/typeck2.c:856
+#: cp/typeck2.c:957
msgid "union `%T' with no named members cannot be initialized"
msgstr ""
-#: cp/typeck2.c:892
+#: cp/typeck2.c:993
msgid "excess elements in aggregate initializer"
msgstr ""
-#: cp/typeck2.c:1000
+#: cp/typeck2.c:1102
msgid "circular pointer delegation detected"
msgstr ""
-#: cp/typeck2.c:1013
+#: cp/typeck2.c:1115
msgid "base operand of `->' has non-pointer type `%T'"
msgstr ""
-#: cp/typeck2.c:1037
+#: cp/typeck2.c:1139
msgid "result of `operator->()' yields non-pointer result"
msgstr ""
-#: cp/typeck2.c:1039
+#: cp/typeck2.c:1141
msgid "base operand of `->' is not a pointer"
msgstr ""
-#: cp/typeck2.c:1062
+#: cp/typeck2.c:1164
msgid "`%E' cannot be used as a member pointer, since it is of type `%T'"
msgstr ""
-#: cp/typeck2.c:1070
+#: cp/typeck2.c:1172
msgid ""
"cannot apply member pointer `%E' to `%E', which is of non-aggregate type `%T'"
msgstr ""
-#: cp/typeck2.c:1080
+#: cp/typeck2.c:1182
msgid "member type `%T::' incompatible with object type `%T'"
msgstr ""
-#: cp/typeck2.c:1296
+#: cp/typeck2.c:1398
msgid "call to function `%D' which throws incomplete type `%#T'"
msgstr ""
-#: cp/typeck2.c:1299
+#: cp/typeck2.c:1401
msgid "call to function which throws incomplete type `%#T'"
msgstr ""
#. XXX Not i18n clean.
-#: cp/cp-tree.h:3752
+#: cp/cp-tree.h:3756
#, c-format
msgid "%s is deprecated, please see the documentation for details"
msgstr ""
@@ -17171,106 +17417,115 @@ msgstr ""
msgid "[REPORT BUG!!]"
msgstr ""
-#: f/com.c:3123
+#: f/com.c:3125
#, no-c-format
msgid "ASSIGN'ed label cannot fit into `%A' at %0 -- using wider sibling"
msgstr ""
-#: f/com.c:11563
+#: f/com.c:11565
msgid "no INTEGER type can hold a pointer on this configuration"
msgstr ""
-#: f/com.c:11837
+#: f/com.c:11839
#, c-format
msgid "configuration: REAL, INTEGER, and LOGICAL are %d bits wide,"
msgstr ""
-#: f/com.c:11839
+#: f/com.c:11841
#, c-format
msgid "and pointers are %d bits wide, but g77 doesn't yet work"
msgstr ""
-#: f/com.c:11841
+#: f/com.c:11843
msgid "properly unless they all are 32 bits wide"
msgstr ""
-#: f/com.c:11842
+#: f/com.c:11844
msgid "Please keep this in mind before you report bugs."
msgstr ""
#. I/O will probably crash.
-#: f/com.c:11850
+#: f/com.c:11852
#, c-format
msgid "configuration: char * holds %d bits, but ftnlen only %d"
msgstr ""
#. ASSIGN 10 TO I will crash.
-#: f/com.c:11859
+#: f/com.c:11861
#, c-format
msgid ""
"configuration: char * holds %d bits, but INTEGER only %d --\n"
" ASSIGN statement might fail"
msgstr ""
-#: f/com.c:13675
+#: f/com.c:13677
msgid "In statement function"
msgstr ""
-#: f/com.c:13685
+#: f/com.c:13687
msgid "Outside of any program unit:\n"
msgstr ""
-#: f/com.c:15281
+#: f/com.c:15283
#, no-c-format
msgid "%A from %B at %0%C"
msgstr ""
-#: f/com.c:15591
+#: f/com.c:15593
#, no-c-format
msgid "At %0, INCLUDE file %A exists, but is not readable"
msgstr ""
-#: f/com.c:15626
+#: f/com.c:15628
#, no-c-format
msgid "At %0, INCLUDE nesting too deep"
msgstr ""
-#: f/expr.c:8705
+#: f/expr.c:8706
#, no-c-format
msgid "Two arithmetic operators in a row at %0 and %1 -- use parentheses"
msgstr ""
-#: f/expr.c:8755
+#: f/expr.c:8756
#, no-c-format
msgid "Operator at %0 has lower precedence than that at %1 -- use parentheses"
msgstr ""
-#: f/expr.c:9616
+#: f/expr.c:9639
#, no-c-format
msgid ""
"Use .EQV./.NEQV. instead of .EQ./.NE. at %0 for LOGICAL operands at %1 and %2"
msgstr ""
-#: f/expr.c:9987
+#: f/expr.c:10010
#, no-c-format
msgid "Unsupported operand for ** at %1 -- converting to default INTEGER"
msgstr ""
-#: f/g77spec.c:230
+#: f/g77spec.c:231
#, c-format
msgid "overflowed output arg list for `%s'"
msgstr ""
-#: f/g77spec.c:367
+#: f/g77spec.c:353
+msgid ""
+"GNU Fortran comes with NO WARRANTY, to the extent permitted by law.\n"
+"You may redistribute copies of GNU Fortran\n"
+"under the terms of the GNU General Public License.\n"
+"For more information about these matters, see the file named COPYING\n"
+"or type the command `info -f g77 Copying'.\n"
+msgstr ""
+
+#: f/g77spec.c:369
msgid "--driver no longer supported"
msgstr ""
-#: f/g77spec.c:380
+#: f/g77spec.c:382
#, c-format
msgid "argument to `%s' missing"
msgstr ""
-#: f/g77spec.c:384
+#: f/g77spec.c:386
msgid "no input files; unwilling to write output files"
msgstr ""
@@ -17338,39 +17593,39 @@ msgstr ""
msgid "unknown escape sequence: `\\' followed by char code 0x%x"
msgstr ""
-#: f/lex.c:739
+#: f/lex.c:745
msgid "badly formed directive -- no closing quote"
msgstr ""
-#: f/lex.c:797
+#: f/lex.c:809
msgid "#-lines for entering and leaving files don't match"
msgstr ""
-#: f/lex.c:957
+#: f/lex.c:969
msgid "bad directive -- missing close-quote"
msgstr ""
-#: f/lex.c:1096
+#: f/lex.c:1108
msgid "invalid #ident"
msgstr ""
-#: f/lex.c:1113
+#: f/lex.c:1125
msgid "undefined or invalid # directive"
msgstr ""
-#: f/lex.c:1168
+#: f/lex.c:1180
msgid "invalid #line"
msgstr ""
-#: f/lex.c:1224 f/lex.c:1268
+#: f/lex.c:1236 f/lex.c:1280
msgid "use `#line ...' instead of `# ...' in first line"
msgstr ""
-#: f/lex.c:1278
+#: f/lex.c:1290
msgid "invalid #-line"
msgstr ""
-#: f/lex.c:1371
+#: f/lex.c:1383
#, no-c-format
msgid "Null character at %0 -- line ignored"
msgstr ""
@@ -18428,72 +18683,72 @@ msgstr ""
msgid "%Jfinal field '%D' may not have been initialized"
msgstr ""
-#: java/class.c:514 java/class.c:538
+#: java/class.c:592 java/class.c:616
msgid "internal error - too many interface type"
msgstr ""
-#: java/class.c:637
+#: java/class.c:715
msgid "bad method signature"
msgstr ""
-#: java/class.c:681
+#: java/class.c:759
msgid "misplaced ConstantValue attribute (not in any field)"
msgstr ""
-#: java/class.c:683
+#: java/class.c:761
#, c-format
msgid "duplicate ConstantValue attribute for field '%s'"
msgstr ""
-#: java/class.c:694
+#: java/class.c:772
#, c-format
msgid "ConstantValue attribute of field '%s' has wrong type"
msgstr ""
-#: java/class.c:983
+#: java/class.c:1067
#, c-format
msgid "field '%s' not found in class"
msgstr ""
-#: java/class.c:1240
+#: java/class.c:1324
msgid "%Jabstract method in non-abstract class"
msgstr ""
-#: java/class.c:2033
+#: java/class.c:2141
msgid "%Jnon-static method '%D' overrides static method"
msgstr ""
-#: java/decl.c:1058
+#: java/decl.c:1018
msgid "%J'%D' used prior to declaration"
msgstr ""
-#: java/decl.c:1099
+#: java/decl.c:1059
#, c-format
msgid "declaration of `%s' shadows a parameter"
msgstr ""
-#: java/decl.c:1102
+#: java/decl.c:1062
#, c-format
msgid "declaration of `%s' shadows a symbol from the parameter list"
msgstr ""
-#: java/decl.c:1401
+#: java/decl.c:1361
msgid "%Jlabel '%D' used but not defined"
msgstr ""
-#: java/decl.c:1406
+#: java/decl.c:1366
msgid "%Jlabel '%D' defined but not used"
msgstr ""
-#: java/decl.c:1534
+#: java/decl.c:1494
msgid "%JIn %D: overlapped variable and exception ranges at %d"
msgstr ""
-#: java/decl.c:1612
+#: java/decl.c:1572
msgid "bad type in parameter debug info"
msgstr ""
-#: java/decl.c:1621
+#: java/decl.c:1581
msgid "%Jbad PC range for debug info for local '%D'"
msgstr ""
@@ -18512,80 +18767,80 @@ msgstr ""
msgid "field `%s' not found"
msgstr ""
-#: java/expr.c:1655
+#: java/expr.c:1658
msgid "ret instruction not implemented"
msgstr ""
-#: java/expr.c:1810
+#: java/expr.c:1815
#, c-format
msgid "method '%s' not found in class"
msgstr ""
-#: java/expr.c:2010
+#: java/expr.c:2020
#, c-format
msgid "failed to find class '%s'"
msgstr ""
-#: java/expr.c:2020
+#: java/expr.c:2030
#, c-format
msgid "class '%s' has no method named '%s' matching signature '%s'"
msgstr ""
-#: java/expr.c:2030
+#: java/expr.c:2040
msgid "invokestatic on non static method"
msgstr ""
-#: java/expr.c:2035
+#: java/expr.c:2045
msgid "invokestatic on abstract method"
msgstr ""
-#: java/expr.c:2043
+#: java/expr.c:2053
msgid "invoke[non-static] on static method"
msgstr ""
-#: java/expr.c:2342
+#: java/expr.c:2352
#, c-format
msgid "missing field '%s' in '%s'"
msgstr ""
-#: java/expr.c:2348
+#: java/expr.c:2358
#, c-format
msgid "mismatching signature for field '%s' in '%s'"
msgstr ""
-#: java/expr.c:2370
+#: java/expr.c:2380
msgid "%Jassignment to final field '%D' not in field's class"
msgstr ""
-#: java/expr.c:2375
+#: java/expr.c:2385
msgid "%Jassignment to final static field `%D' not in class initializer"
msgstr ""
-#: java/expr.c:2383
+#: java/expr.c:2393
msgid "%Jassignment to final field '%D' not in constructor"
msgstr ""
-#: java/expr.c:2625
+#: java/expr.c:2636
#, c-format
msgid "can't expand %s"
msgstr ""
-#: java/expr.c:2797
+#: java/expr.c:2808
msgid "invalid PC in line number table"
msgstr ""
-#: java/expr.c:2843
+#: java/expr.c:2854
#, c-format
msgid "unreachable bytecode from %d to before %d"
msgstr ""
-#: java/expr.c:2881
+#: java/expr.c:2892
#, c-format
msgid "unreachable bytecode from %d to the end of the method"
msgstr ""
#. duplicate code from LOAD macro
-#: java/expr.c:3195
+#: java/expr.c:3206
msgid "unrecogized wide sub-instruction"
msgstr ""
@@ -18596,62 +18851,62 @@ msgid ""
"file `%s' used instead"
msgstr ""
-#: java/jcf-parse.c:334
+#: java/jcf-parse.c:330
msgid "bad string constant"
msgstr ""
-#: java/jcf-parse.c:352
+#: java/jcf-parse.c:348
#, c-format
msgid "bad value constant type %d, index %d"
msgstr ""
-#: java/jcf-parse.c:517
+#: java/jcf-parse.c:514
#, c-format
msgid "can't reopen %s: %m"
msgstr ""
-#: java/jcf-parse.c:522
+#: java/jcf-parse.c:519
#, c-format
msgid "can't close %s: %m"
msgstr ""
-#: java/jcf-parse.c:606
+#: java/jcf-parse.c:604
#, c-format
msgid "cannot find file for class %s"
msgstr ""
-#: java/jcf-parse.c:617
+#: java/jcf-parse.c:615
msgid "not a valid Java .class file"
msgstr ""
-#: java/jcf-parse.c:620
+#: java/jcf-parse.c:618
msgid "error while parsing constant pool"
msgstr ""
-#: java/jcf-parse.c:623
+#: java/jcf-parse.c:621
#, c-format
msgid "error in constant pool entry #%d\n"
msgstr ""
#. FIXME - where was first time
-#: java/jcf-parse.c:635
+#: java/jcf-parse.c:633
#, c-format
msgid "reading class %s for the second time from %s"
msgstr ""
-#: java/jcf-parse.c:653
+#: java/jcf-parse.c:651
msgid "error while parsing fields"
msgstr ""
-#: java/jcf-parse.c:656
+#: java/jcf-parse.c:654
msgid "error while parsing methods"
msgstr ""
-#: java/jcf-parse.c:659
+#: java/jcf-parse.c:657
msgid "error while parsing final attributes"
msgstr ""
-#: java/jcf-parse.c:673
+#: java/jcf-parse.c:671
#, c-format
msgid ""
"the `java.lang.Object' that was found in `%s' didn't have the special zero-"
@@ -18660,29 +18915,29 @@ msgid ""
"info page describing how to set the classpath"
msgstr ""
-#: java/jcf-parse.c:756
+#: java/jcf-parse.c:749
msgid "missing Code attribute"
msgstr ""
-#: java/jcf-parse.c:988
+#: java/jcf-parse.c:981
msgid "%Hsource file seen twice on command line and will be compiled only once"
msgstr ""
-#: java/jcf-parse.c:1004
+#: java/jcf-parse.c:996
msgid "no input file specified"
msgstr ""
-#: java/jcf-parse.c:1033
+#: java/jcf-parse.c:1025
#, c-format
msgid "can't close input file %s: %m"
msgstr ""
-#: java/jcf-parse.c:1071
+#: java/jcf-parse.c:1063
#, c-format
msgid "bad zip/jar file %s"
msgstr ""
-#: java/jcf-parse.c:1255
+#: java/jcf-parse.c:1235
#, c-format
msgid "error while reading %s from zip file"
msgstr ""
@@ -18754,11 +19009,11 @@ msgstr ""
msgid "cannot specify `main' class when not linking"
msgstr ""
-#: java/lang.c:735
+#: java/lang.c:740
msgid "can't do dependency tracking with input from stdin"
msgstr ""
-#: java/lang.c:751
+#: java/lang.c:756
msgid "couldn't determine target name for dependency tracking"
msgstr ""
@@ -18781,6 +19036,266 @@ msgstr ""
msgid "internal error - invalid Utf8 name"
msgstr ""
+#: ../../gcc/java/parse-scan.y:880 ../../gcc/java/parse.y:949
+#: ../../gcc/java/parse.y:1290 ../../gcc/java/parse.y:1351
+#: ../../gcc/java/parse.y:1555 ../../gcc/java/parse.y:1777
+#: ../../gcc/java/parse.y:1786 ../../gcc/java/parse.y:1797
+#: ../../gcc/java/parse.y:1808 ../../gcc/java/parse.y:1820
+#: ../../gcc/java/parse.y:1835 ../../gcc/java/parse.y:1852
+#: ../../gcc/java/parse.y:1854 ../../gcc/java/parse.y:1935
+#: ../../gcc/java/parse.y:2106 ../../gcc/java/parse.y:2168
+#: ../../gcc/java/parse.y:2320 ../../gcc/java/parse.y:2332
+#: ../../gcc/java/parse.y:2339 ../../gcc/java/parse.y:2346
+#: ../../gcc/java/parse.y:2357 ../../gcc/java/parse.y:2359
+#: ../../gcc/java/parse.y:2397 ../../gcc/java/parse.y:2399
+#: ../../gcc/java/parse.y:2401 ../../gcc/java/parse.y:2422
+#: ../../gcc/java/parse.y:2424 ../../gcc/java/parse.y:2426
+#: ../../gcc/java/parse.y:2442 ../../gcc/java/parse.y:2444
+#: ../../gcc/java/parse.y:2465 ../../gcc/java/parse.y:2467
+#: ../../gcc/java/parse.y:2469 ../../gcc/java/parse.y:2497
+#: ../../gcc/java/parse.y:2499 ../../gcc/java/parse.y:2501
+#: ../../gcc/java/parse.y:2503 ../../gcc/java/parse.y:2521
+#: ../../gcc/java/parse.y:2523 ../../gcc/java/parse.y:2534
+#: ../../gcc/java/parse.y:2545 ../../gcc/java/parse.y:2556
+#: ../../gcc/java/parse.y:2567 ../../gcc/java/parse.y:2578
+#: ../../gcc/java/parse.y:2591 ../../gcc/java/parse.y:2595
+#: ../../gcc/java/parse.y:2597 ../../gcc/java/parse.y:2610
+msgid "Missing term"
+msgstr ""
+
+#: ../../gcc/java/parse-scan.y:882 ../../gcc/java/parse.y:721
+#: ../../gcc/java/parse.y:759 ../../gcc/java/parse.y:784
+#: ../../gcc/java/parse.y:970 ../../gcc/java/parse.y:1325
+#: ../../gcc/java/parse.y:1531 ../../gcc/java/parse.y:1533
+#: ../../gcc/java/parse.y:1762 ../../gcc/java/parse.y:1788
+#: ../../gcc/java/parse.y:1799 ../../gcc/java/parse.y:1810
+#: ../../gcc/java/parse.y:1822 ../../gcc/java/parse.y:1837
+msgid "';' expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:719 ../../gcc/java/parse.y:757
+msgid "Missing name"
+msgstr ""
+
+#: ../../gcc/java/parse.y:782
+msgid "'*' expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:796
+msgid "Class or interface declaration expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:833 ../../gcc/java/parse.y:835
+msgid "Missing class name"
+msgstr ""
+
+#: ../../gcc/java/parse.y:838 ../../gcc/java/parse.y:842
+#: ../../gcc/java/parse.y:850 ../../gcc/java/parse.y:1010
+#: ../../gcc/java/parse.y:1271 ../../gcc/java/parse.y:1273
+#: ../../gcc/java/parse.y:1597 ../../gcc/java/parse.y:1848
+#: ../../gcc/java/parse.y:1880 ../../gcc/java/parse.y:1942
+msgid "'{' expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:852
+msgid "Missing super class name"
+msgstr ""
+
+#: ../../gcc/java/parse.y:862 ../../gcc/java/parse.y:878
+msgid "Missing interface name"
+msgstr ""
+
+#: ../../gcc/java/parse.y:964
+msgid "Missing variable initializer"
+msgstr ""
+
+#: ../../gcc/java/parse.y:981
+msgid "Invalid declaration"
+msgstr ""
+
+#: ../../gcc/java/parse.y:984 ../../gcc/java/parse.y:1069
+#: ../../gcc/java/parse.y:2143 ../../gcc/java/parse.y:2165
+#: ../../gcc/java/parse.y:2169 ../../gcc/java/parse.y:2204
+#: ../../gcc/java/parse.y:2281 ../../gcc/java/parse.y:2291
+msgid "']' expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:988
+msgid "Unbalanced ']'"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1024
+msgid "Invalid method declaration, method name required"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1029 ../../gcc/java/parse.y:1034
+#: ../../gcc/java/parse.y:1039 ../../gcc/java/parse.y:2026
+msgid "Identifier expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1044
+msgid "Invalid method declaration, return type required"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1067 ../../gcc/java/parse.y:1511
+#: ../../gcc/java/parse.y:1518 ../../gcc/java/parse.y:1527
+#: ../../gcc/java/parse.y:1529 ../../gcc/java/parse.y:1557
+#: ../../gcc/java/parse.y:1665 ../../gcc/java/parse.y:1971
+#: ../../gcc/java/parse.y:2024
+msgid "')' expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1083
+msgid "Missing formal parameter term"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1098 ../../gcc/java/parse.y:1103
+msgid "Missing identifier"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1123 ../../gcc/java/parse.y:1132
+msgid "Missing class type term"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1288
+msgid "Invalid interface type"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1475 ../../gcc/java/parse.y:1644
+#: ../../gcc/java/parse.y:1646
+msgid "':' expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1497 ../../gcc/java/parse.y:1502
+#: ../../gcc/java/parse.y:1507
+msgid "Invalid expression statement"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1525 ../../gcc/java/parse.y:1553
+#: ../../gcc/java/parse.y:1593 ../../gcc/java/parse.y:1661
+#: ../../gcc/java/parse.y:1729 ../../gcc/java/parse.y:1850
+#: ../../gcc/java/parse.y:1928 ../../gcc/java/parse.y:2018
+#: ../../gcc/java/parse.y:2020 ../../gcc/java/parse.y:2028
+#: ../../gcc/java/parse.y:2264 ../../gcc/java/parse.y:2266
+msgid "'(' expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1595
+msgid "Missing term or ')'"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1642
+msgid "Missing or invalid constant expression"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1663
+msgid "Missing term and ')' expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1702
+msgid "Invalid control expression"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1704 ../../gcc/java/parse.y:1706
+msgid "Invalid update expression"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1731
+msgid "Invalid init statement"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1931
+msgid "Missing term or ')' expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1973
+msgid "'class' or 'this' expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:1975 ../../gcc/java/parse.y:1977
+msgid "'class' expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:2022
+msgid "')' or term expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:2141
+msgid "'[' expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:2219
+msgid "Field expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:2276 ../../gcc/java/parse.y:2286
+msgid "Missing term and ']' expected"
+msgstr ""
+
+#: ../../gcc/java/parse.y:2390
+msgid "']' expected, invalid type expression"
+msgstr ""
+
+#: ../../gcc/java/parse.y:2393
+msgid "Invalid type expression"
+msgstr ""
+
+#: ../../gcc/java/parse.y:2505
+msgid "Invalid reference type"
+msgstr ""
+
+#: ../../gcc/java/parse.y:2977
+msgid "Constructor invocation must be first thing in a constructor"
+msgstr ""
+
+#: ../../gcc/java/parse.y:2979
+msgid "Only constructors can invoke constructors"
+msgstr ""
+
+#: ../../gcc/java/parse.y:2987
+#, c-format
+msgid ": `%s' JDK1.1(TM) feature"
+msgstr ""
+
+#: ../../gcc/java/parse.y:3046 ../../gcc/java/parse.y:3048
+#, c-format
+msgid ""
+"%s.\n"
+"%s"
+msgstr ""
+
+#: ../../gcc/java/parse.y:6909
+#, c-format
+msgid "malformed .zip archive in CLASSPATH: %s"
+msgstr ""
+
+#: ../../gcc/java/parse.y:6980
+#, c-format
+msgid ""
+"Can't find default package `%s'. Check the CLASSPATH environment variable "
+"and the access to the archives"
+msgstr ""
+
+#: ../../gcc/java/parse.y:12193
+#, c-format
+msgid "missing static field `%s'"
+msgstr ""
+
+#: ../../gcc/java/parse.y:12198
+#, c-format
+msgid "not a static field `%s'"
+msgstr ""
+
+#: ../../gcc/java/parse.y:12241
+#, c-format
+msgid "No case for %s"
+msgstr ""
+
+#: ../../gcc/java/parse.y:13173
+#, c-format
+msgid "unregistered operator %s"
+msgstr ""
+
#: java/typeck.c:530
msgid "junk at end of signature string"
msgstr ""
@@ -18828,13 +19343,13 @@ msgstr ""
msgid "protocol `%s' has circular dependency"
msgstr ""
-#: objc/objc-act.c:1074 objc/objc-act.c:5985
+#: objc/objc-act.c:1074 objc/objc-act.c:5982
#, c-format
msgid "cannot find protocol declaration for `%s'"
msgstr ""
-#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6516
-#: objc/objc-act.c:6825 objc/objc-act.c:6878 objc/objc-act.c:6903
+#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6513
+#: objc/objc-act.c:6822 objc/objc-act.c:6875 objc/objc-act.c:6900
#, c-format
msgid "cannot find interface declaration for `%s'"
msgstr ""
@@ -18859,8 +19374,8 @@ msgstr ""
msgid "`%s' is not an Objective-C class name or alias"
msgstr ""
-#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6772
-#: objc/objc-act.c:7062 objc/objc-act.c:7091
+#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6769
+#: objc/objc-act.c:7059 objc/objc-act.c:7088
msgid "Objective-C declarations may only appear in global scope"
msgstr ""
@@ -18874,7 +19389,7 @@ msgstr ""
msgid "class `%s' already exists"
msgstr ""
-#: objc/objc-act.c:2532 objc/objc-act.c:6794
+#: objc/objc-act.c:2532 objc/objc-act.c:6791
#, c-format
msgid "`%s' redeclared as different kind of symbol"
msgstr ""
@@ -18969,7 +19484,7 @@ msgstr ""
msgid "`...' as arguments.)"
msgstr ""
-#: objc/objc-act.c:6082
+#: objc/objc-act.c:6079
#, c-format
msgid "undeclared selector `%s'"
msgstr ""
@@ -18983,1925 +19498,1573 @@ msgstr ""
#. to an instance variable. It's better to catch the cases
#. where this is done unknowingly than to support the above
#. paradigm.
-#: objc/objc-act.c:6124
+#: objc/objc-act.c:6121
#, c-format
msgid "instance variable `%s' accessed in class method"
msgstr ""
-#: objc/objc-act.c:6330
+#: objc/objc-act.c:6327
#, c-format
msgid "duplicate declaration of method `%c%s'"
msgstr ""
-#: objc/objc-act.c:6371
+#: objc/objc-act.c:6368
#, c-format
msgid "duplicate interface declaration for category `%s(%s)'"
msgstr ""
-#: objc/objc-act.c:6401
+#: objc/objc-act.c:6398
#, c-format
msgid "illegal reference type specified for instance variable `%s'"
msgstr ""
-#: objc/objc-act.c:6417
+#: objc/objc-act.c:6414
#, c-format
msgid "instance variable `%s' has unknown size"
msgstr ""
#. vtable pointers are Real Bad(tm), since Obj-C cannot initialize them
-#: objc/objc-act.c:6431
+#: objc/objc-act.c:6428
#, c-format
msgid "type `%s' has virtual member functions"
msgstr ""
-#: objc/objc-act.c:6432
+#: objc/objc-act.c:6429
#, c-format
msgid "illegal aggregate type `%s' specified for instance variable `%s'"
msgstr ""
-#: objc/objc-act.c:6440
+#: objc/objc-act.c:6437
#, c-format
msgid "type `%s' has a user-defined constructor"
msgstr ""
-#: objc/objc-act.c:6442
+#: objc/objc-act.c:6439
#, c-format
msgid "type `%s' has a user-defined destructor"
msgstr ""
-#: objc/objc-act.c:6443
+#: objc/objc-act.c:6440
msgid ""
"C++ constructors and destructors will not be invoked for Objective-C fields"
msgstr ""
-#: objc/objc-act.c:6493
+#: objc/objc-act.c:6490
#, c-format
msgid "instance variable `%s' is declared private"
msgstr ""
-#: objc/objc-act.c:6542
+#: objc/objc-act.c:6539
#, c-format
msgid "instance variable `%s' is %s; this will be a hard error in the future"
msgstr ""
-#: objc/objc-act.c:6549
+#: objc/objc-act.c:6546
#, c-format
msgid "instance variable `%s' is declared %s"
msgstr ""
-#: objc/objc-act.c:6559
+#: objc/objc-act.c:6556
msgid "static access to object of type `id'"
msgstr ""
-#: objc/objc-act.c:6581 objc/objc-act.c:6669
+#: objc/objc-act.c:6578 objc/objc-act.c:6666
#, c-format
msgid "incomplete implementation of class `%s'"
msgstr ""
-#: objc/objc-act.c:6585 objc/objc-act.c:6674
+#: objc/objc-act.c:6582 objc/objc-act.c:6671
#, c-format
msgid "incomplete implementation of category `%s'"
msgstr ""
-#: objc/objc-act.c:6590 objc/objc-act.c:6679
+#: objc/objc-act.c:6587 objc/objc-act.c:6676
#, c-format
msgid "method definition for `%c%s' not found"
msgstr ""
-#: objc/objc-act.c:6720
+#: objc/objc-act.c:6717
#, c-format
msgid "%s `%s' does not fully implement the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:6778 objc/objc-act.c:8806
+#: objc/objc-act.c:6775 objc/objc-act.c:8803
msgid "`@end' missing in implementation context"
msgstr ""
-#: objc/objc-act.c:6808
+#: objc/objc-act.c:6805
#, c-format
msgid "reimplementation of class `%s'"
msgstr ""
-#: objc/objc-act.c:6839
+#: objc/objc-act.c:6836
#, c-format
msgid "conflicting super class name `%s'"
msgstr ""
-#: objc/objc-act.c:6841
+#: objc/objc-act.c:6838
#, c-format
msgid "previous declaration of `%s'"
msgstr ""
-#: objc/objc-act.c:6855 objc/objc-act.c:6857
+#: objc/objc-act.c:6852 objc/objc-act.c:6854
#, c-format
msgid "duplicate interface declaration for class `%s'"
msgstr ""
-#: objc/objc-act.c:7124
+#: objc/objc-act.c:7121
#, c-format
msgid "duplicate declaration for protocol `%s'"
msgstr ""
#. Add a readable method name to the warning.
-#: objc/objc-act.c:7616
+#: objc/objc-act.c:7613
msgid "%J%s `%c%s'"
msgstr ""
-#: objc/objc-act.c:7911
+#: objc/objc-act.c:7908
#, c-format
msgid "no super class declared in interface for `%s'"
msgstr ""
-#: objc/objc-act.c:7959
+#: objc/objc-act.c:7956
msgid "[super ...] must appear in a method context"
msgstr ""
-#: options.c:24
+#: objc/objc-parse.y:2700
+msgid "`@end' must appear in an implementation context"
+msgstr ""
+
+#: objc/objc-parse.y:2913
+msgid "method definition not in class context"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:21
msgid "Display this information"
msgstr ""
-#: options.c:30
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:27
msgid ""
"--param <param>=<value>\tSet paramter <param> to value. See below for a "
"complete list of parameters"
msgstr ""
-#: options.c:39
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:36
msgid ""
"-A<question>=<answer>\tAssert the <answer> to <question>. Putting '-' "
"before <question> disables the <answer> to <question>"
msgstr ""
-#: options.c:42
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:39
msgid "Do not discard comments"
msgstr ""
-#: options.c:45
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:42
msgid "Do not discard comments in macro expansions"
msgstr ""
-#: options.c:48
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:45
msgid ""
"-D<macro>[=<val>]\tDefine a <macro> with <val> as its value. If just "
"<macro> is given, <val> is taken to be 1"
msgstr ""
-#: options.c:54
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:51
msgid ""
"-G<number>\tPut global and static data smaller than <number> bytes into a "
"special section (on some targets)"
msgstr ""
-#: options.c:57
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:54
msgid "Print the name of header files as they are used"
msgstr ""
-#: options.c:66
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:57
+msgid ""
+"-I <dir>\tAdd <dir> to the end of the main include path. -I- gives more "
+"include path control; see info documentation"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:60
+msgid "Generate make dependencies"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:63
msgid "Generate make dependencies and compile"
msgstr ""
-#: options.c:75
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:66
+msgid "-MF <file>\tWrite dependency output to the given file"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:69
msgid "Treat missing header files as generated files"
msgstr ""
-#: options.c:81
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:72
+msgid "Like -M but ignore system header files"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:75
msgid "Like -MD but ignore system header files"
msgstr ""
-#: options.c:90
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:78
+msgid "Generate phony targets for all headers"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:81
msgid "-MQ <target>\tAdd a MAKE-quoted target"
msgstr ""
-#: options.c:96
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:84
+msgid "-MT <target>\tAdd an unquoted target"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:87
msgid "-O<number>\tSet optimization level to <number>"
msgstr ""
-#: options.c:99
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:90
msgid "Optimize for space rather than speed"
msgstr ""
-#: options.c:102
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:93
msgid "Do not generate #line directives"
msgstr ""
-#: options.c:105
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:96
msgid "-U<macro>\tUndefine <macro>"
msgstr ""
-#: options.c:108
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:99
msgid "This switch is deprecated; use -Wextra instead"
msgstr ""
-#: options.c:114
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:105
msgid "Warn about returning structures, unions or arrays"
msgstr ""
-#: options.c:120
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:108
+msgid "Enable most warning messages"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:111
msgid "Warn about casting functions to incompatible types"
msgstr ""
-#: options.c:123
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:114
msgid "Warn about pointer casts which increase alignment"
msgstr ""
-#: options.c:126
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:117
msgid "Warn about casts which discard qualifiers"
msgstr ""
-#: options.c:129
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:120
msgid "Warn about subscripts whose type is \"char\""
msgstr ""
-#: options.c:138
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:123
+msgid ""
+"Warn about possibly nested block comments, and C++ comments spanning more "
+"than one physical line"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:126
+msgid "Synonym for -Wcomment"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:129
msgid "Warn about possibly confusing type conversions"
msgstr ""
-#: options.c:141
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:132
msgid "Warn when all constructors and destructors are private"
msgstr ""
-#: options.c:144
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:135
msgid "Warn when a declaration is found after a statement"
msgstr ""
-#: options.c:147
-msgid "Warn if deprecated class, method, or field is used"
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:138
+msgid "Warn about deprecated compiler features"
msgstr ""
-#: options.c:150
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:141
msgid "Warn about uses of __attribute__((deprecated)) declarations"
msgstr ""
-#: options.c:153
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:144
msgid "Warn when an optimization pass is disabled"
msgstr ""
-#: options.c:156
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:147
msgid "Warn about compile-time integer division by zero"
msgstr ""
-#: options.c:159
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:150
msgid "Warn about violations of Effective C++ style rules"
msgstr ""
-#: options.c:162
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:153
msgid "Warn about stray tokens after #elif and #endif"
msgstr ""
-#: options.c:165
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:156
msgid "Treat all warnings as errors"
msgstr ""
-#: options.c:168
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:159
msgid "Make implicit function declarations an error"
msgstr ""
-#: options.c:171
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:162
msgid "Print extra (possibly unwanted) warnings"
msgstr ""
-#: options.c:174
-msgid "Warn if deprecated empty statements are found"
-msgstr ""
-
-#: options.c:177
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:165
msgid "Warn if testing floating point numbers for equality"
msgstr ""
-#: options.c:180
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:168
msgid "Warn about printf/scanf/strftime/strfmon format string anomalies"
msgstr ""
-#: options.c:183
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:171
msgid "Warn if passing too many arguments to a function for its format string"
msgstr ""
-#: options.c:186
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:174
msgid "Warn about format strings that are not literals"
msgstr ""
-#: options.c:189
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:177
msgid "Warn about possible security problems with format functions"
msgstr ""
-#: options.c:192
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:180
msgid "Warn about strftime formats yielding 2-digit years"
msgstr ""
-#: options.c:201
-msgid "Enable warnings about inter-procedural problems"
-msgstr ""
-
-#: options.c:207
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:192
msgid "Warn about implicit function declarations"
msgstr ""
-#: options.c:210
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:195
msgid "Warn when a declaration does not specify a type"
msgstr ""
-#: options.c:216
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:198
+msgid "Deprecated. This switch has no effect."
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:201
msgid "Warn about variables which are initialized to themselves."
msgstr ""
-#: options.c:219
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:204
msgid "Warn when an inlined function cannot be inlined"
msgstr ""
-#: options.c:222
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:207
msgid "Warn about invalid uses of the \"offsetof\" macro"
msgstr ""
-#: options.c:225
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:210
msgid "Warn about PCH files that are found but not used"
msgstr ""
-#: options.c:228
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:213
msgid "-Wlarger-than-<number>\tWarn if an object is larger than <number> bytes"
msgstr ""
-#: options.c:231
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:216
msgid "Do not warn about using \"long long\" when -pedantic"
msgstr ""
-#: options.c:234
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:219
msgid "Warn about suspicious declarations of \"main\""
msgstr ""
-#: options.c:237
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:222
msgid "Warn about possibly missing braces around initializers"
msgstr ""
-#: options.c:240
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:225
msgid "Warn about global functions without previous declarations"
msgstr ""
-#: options.c:243
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:228
msgid "Warn about functions which might be candidates for format attributes"
msgstr ""
-#: options.c:246
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:231
msgid ""
"Warn about functions which might be candidates for __attribute__((noreturn))"
msgstr ""
-#: options.c:249
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:234
msgid "Warn about global functions without prototypes"
msgstr ""
-#: options.c:252
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:237
msgid "Warn about use of multi-character character constants"
msgstr ""
-#: options.c:255
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:240
msgid "Warn about \"extern\" declarations not at file scope"
msgstr ""
-#: options.c:258
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:243
msgid ""
"Warn when non-templatized friend functions are declared within a template"
msgstr ""
-#: options.c:261
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:246
msgid "Warn about non-virtual destructors"
msgstr ""
-#: options.c:267
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:252
msgid "Warn if a C-style cast is used in a program"
msgstr ""
-#: options.c:270
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:255
msgid "Warn if an old-style parameter definition is used"
msgstr ""
-#: options.c:273
-msgid "Warn if .class files are out of date"
-msgstr ""
-
-#: options.c:276
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:258
msgid "Warn about overloaded virtual function names"
msgstr ""
-#: options.c:279
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:261
msgid "Warn when the packed attribute has no effect on struct layout"
msgstr ""
-#: options.c:282
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:264
msgid "Warn when padding is required to align structure members"
msgstr ""
-#: options.c:285
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:267
msgid "Warn about possibly missing parentheses"
msgstr ""
-#: options.c:288
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:270
msgid "Warn when converting the type of pointers to member functions"
msgstr ""
-#: options.c:291
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:273
msgid "Warn about function pointer arithmetic"
msgstr ""
-#: options.c:294
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:276
msgid "Warn if inherited methods are unimplemented"
msgstr ""
-#: options.c:297
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:279
msgid "Warn about multiple declarations of the same object"
msgstr ""
-#: options.c:300
-msgid "Warn if modifiers are specified when not necessary"
-msgstr ""
-
-#: options.c:303
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:282
msgid "Warn when the compiler reorders code"
msgstr ""
-#: options.c:306
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:285
msgid ""
"Warn whenever a function's return type defaults to \"int\" (C), or about "
"inconsistent return types (C++)"
msgstr ""
-#: options.c:309
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:288
msgid "Warn if a selector has multiple methods"
msgstr ""
-#: options.c:312
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:291
msgid "Warn about possible violations of sequence point rules"
msgstr ""
-#: options.c:315
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:294
msgid "Warn when one local variable shadows another"
msgstr ""
-#: options.c:318
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:297
msgid "Warn about signed-unsigned comparisons"
msgstr ""
-#: options.c:321
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:300
msgid "Warn when overload promotes from unsigned to signed"
msgstr ""
-#: options.c:324
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:303
msgid "Warn about code which might break strict aliasing rules"
msgstr ""
-#: options.c:327
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:306
msgid "Warn about unprototyped function declarations"
msgstr ""
-#: options.c:330
-msgid "Warn about constructs with surprising meanings"
-msgstr ""
-
-#: options.c:333
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:309
msgid "Warn about enumerated switches, with no default, missing a case"
msgstr ""
-#: options.c:336
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:312
msgid "Warn about enumerated switches missing a \"default:\" statement"
msgstr ""
-#: options.c:339
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:315
msgid "Warn about all enumerated switches missing a specific case"
msgstr ""
-#: options.c:342
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:318
msgid "Warn when synthesis behavior differs from Cfront"
msgstr ""
-#: options.c:345
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:321
msgid "Do not suppress warnings from system headers"
msgstr ""
-#: options.c:348
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:324
msgid "Warn about features not present in traditional C"
msgstr ""
-#: options.c:357
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:327
+msgid ""
+"Warn if trigraphs are encountered that might affect the meaning of the "
+"program"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:333
msgid "Warn if an undefined macro is used in an #if directive"
msgstr ""
-#: options.c:360
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:336
msgid "Warn about uninitialized automatic variables"
msgstr ""
-#: options.c:363
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:339
msgid "Warn about unrecognized pragmas"
msgstr ""
-#: options.c:366
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:342
msgid "Warn about code that will never be executed"
msgstr ""
-#: options.c:369
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:345
msgid "Enable all -Wunused- warnings"
msgstr ""
-#: options.c:372
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:348
msgid "Warn when a function is unused"
msgstr ""
-#: options.c:375
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:351
msgid "Warn when a label is unused"
msgstr ""
-#: options.c:378
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:354
msgid "Warn about macros defined in the main file that are not used"
msgstr ""
-#: options.c:381
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:357
msgid "Warn when a function parameter is unused"
msgstr ""
-#: options.c:384
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:360
msgid "Warn when an expression value is unused"
msgstr ""
-#: options.c:387
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:363
msgid "Warn when a variable is unused"
msgstr ""
-#: options.c:390
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:366
msgid "Give strings the type \"array of char\""
msgstr ""
-#: options.c:393
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:369
msgid ""
"A synonym for -std=c89. In a future version of GCC it will become "
"synonymous with -std=c99 instead"
msgstr ""
-#: options.c:396
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:372
msgid "-aux-info <file>\tEmit declaration information into <file>"
msgstr ""
-#: options.c:408
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:384
msgid "-d<letters>\tEnable dumps from specific passes of the compiler"
msgstr ""
-#: options.c:411
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:387
msgid "-dumpbase <file>\tSet the file basename to be used for dumps"
msgstr ""
-#: options.c:414
-msgid "--CLASSPATH\tDeprecated; use --classpath instead"
-msgstr ""
-
-#: options.c:429
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:399
msgid "Enforce class member access control semantics"
msgstr ""
-#: options.c:432
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:402
msgid "Align the start of functions"
msgstr ""
-#: options.c:438
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:408
msgid "Align labels which are only reached by jumping"
msgstr ""
-#: options.c:444
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:414
msgid "Align all labels"
msgstr ""
-#: options.c:450
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:420
msgid "Align the start of loops"
msgstr ""
-#: options.c:459
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:429
msgid "Change when template instances are emitted"
msgstr ""
-#: options.c:462
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:432
msgid "Specify that arguments may alias each other and globals"
msgstr ""
-#: options.c:465
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:435
msgid "Assume arguments may alias globals but not each other"
msgstr ""
-#: options.c:468
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:438
msgid "Assume arguments alias neither each other nor globals"
msgstr ""
-#: options.c:471
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:441
msgid "Recognize the \"asm\" keyword"
msgstr ""
-#: options.c:483
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:444
msgid "Generate unwind tables that are exact at each instruction boundary"
msgstr ""
-#: options.c:486
-msgid ""
-"Do not treat local variables and COMMON blocks as if they were named in SAVE "
-"statements"
-msgstr ""
-
-#: options.c:489
-msgid ""
-"Backslashes in character and hollerith constants are special (not C-style)"
-msgstr ""
-
-#: options.c:492
-msgid "Delete libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: options.c:495
-msgid "Disable libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: options.c:498
-msgid "Enable libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: options.c:501
-msgid "Hide libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: options.c:504
-msgid "--bootclasspath=<path>\tReplace system path"
-msgstr ""
-
-#: options.c:507
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:447
msgid "Generate code to check bounds before indexing arrays"
msgstr ""
-#: options.c:510
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:450
msgid "Replace add, compare, branch with branch on count register"
msgstr ""
-#: options.c:513
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:453
msgid "Use profiling information for branch probabilities"
msgstr ""
-#: options.c:516
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:456
msgid ""
"Perform branch target load optimization before prologue / epilogue threading"
msgstr ""
-#: options.c:519
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:459
msgid ""
"Perform branch target load optimization after prologue / epilogue threading"
msgstr ""
-#: options.c:522
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:462
msgid "Recognize built-in functions"
msgstr ""
-#: options.c:528
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:468
msgid ""
"-fcall-saved-<register>\tMark <register> as being preserved across functions"
msgstr ""
-#: options.c:531
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:471
msgid ""
"-fcall-used-<register>\tMark <register> as being corrupted by function calls"
msgstr ""
-#: options.c:534
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:474
msgid "Save registers around function calls"
msgstr ""
-#: options.c:537
-msgid "Program written in strict mixed-case"
-msgstr ""
-
-#: options.c:540
-msgid "Compile as if program written in lowercase"
-msgstr ""
-
-#: options.c:543
-msgid "Preserve case used in program"
-msgstr ""
-
-#: options.c:546
-msgid "Program written in lowercase"
-msgstr ""
-
-#: options.c:549
-msgid "Program written in uppercase"
-msgstr ""
-
-#: options.c:552
-msgid "Compile as if program written in uppercase"
-msgstr ""
-
-#: options.c:555
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:477
msgid "Check the return value of new"
msgstr ""
-#: options.c:561
-msgid "--classpath=<path>\tSet class path"
-msgstr ""
-
-#: options.c:564
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:480
msgid "Do not put uninitialized globals in the common section"
msgstr ""
-#: options.c:570
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:483
msgid "Allow the arguments of the '?' operator to have different types"
msgstr ""
-#: options.c:573
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:486
msgid "Reduce the size of object files"
msgstr ""
-#: options.c:576
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:489
msgid "Make string literals \"const char[]\" not \"char[]\""
msgstr ""
-#: options.c:579
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:492
msgid "-fconst-string-class=<name>\tUse class <name> for constant strings"
msgstr ""
-#: options.c:582
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:495
msgid "Perform a register copy-propagation optimization pass"
msgstr ""
-#: options.c:585
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:498
msgid "Perform cross-jumping optimization"
msgstr ""
-#: options.c:588
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:501
msgid "When running CSE, follow jumps to their targets"
msgstr ""
-#: options.c:591
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:504
msgid "When running CSE, follow conditional jumps"
msgstr ""
-#: options.c:594
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:507
msgid "Place data items into their own section"
msgstr ""
-#: options.c:597
-msgid ""
-"Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
-msgstr ""
-
-#: options.c:600
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:510
msgid "Inline member functions by default"
msgstr ""
-#: options.c:603
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:513
msgid "Defer popping functions args from stack until later"
msgstr ""
-#: options.c:606
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:516
msgid "Attempt to fill delay slots of branch instructions"
msgstr ""
-#: options.c:609
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:519
msgid "Delete useless null pointer checks"
msgstr ""
-#: options.c:612
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:522
msgid ""
"-fdiagnostics-show-location=[once|every-line]\tHow often to emit source "
"location at the beginning of line-wrapped diagnostics"
msgstr ""
-#: options.c:615
-msgid "Allow '$' in symbol names"
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:525
+msgid "Permit '$' as an identifier character"
msgstr ""
-#: options.c:618
-msgid "Permit '$' as an identifier character"
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:528
+msgid "-fdump-<type>\tDump various compiler internals to a file"
msgstr ""
-#: options.c:624
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:531
msgid ""
"Suppress output of instruction numbers and line number notes in debugging "
"dumps"
msgstr ""
-#: options.c:630
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:537
msgid "Perform DWARF2 duplicate elimination"
msgstr ""
-#: options.c:633
-#: options.c:636
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:540
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:543
msgid "Perform unused type elimination in debug info"
msgstr ""
-#: options.c:645
-msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
-msgstr ""
-
-#: options.c:648
-msgid ""
-"--encoding=<encoding>\tChoose input encoding (defaults from your locale)"
-msgstr ""
-
-#: options.c:651
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:546
msgid "Generate code to check exception specifications"
msgstr ""
-#: options.c:657
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:552
msgid "Enable exception handling"
msgstr ""
-#: options.c:660
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:555
msgid ""
"-fexec-charset=<cset>\tConvert all strings and character constants to "
"character set <cset>"
msgstr ""
-#: options.c:663
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:558
msgid "Perform a number of minor, expensive optimizations"
msgstr ""
-#: options.c:672
-msgid "f2c-compatible code can be generated"
-msgstr ""
-
-#: options.c:675
-msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: options.c:678
-msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: options.c:681
-msgid "Enable non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: options.c:684
-msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: options.c:687
-msgid "Unsupported; generate libf2c-calling code"
-msgstr ""
-
-#: options.c:690
-msgid "Program is written in typical FORTRAN 66 dialect"
-msgstr ""
-
-#: options.c:693
-msgid "Program is written in typical Unix-f77 dialect"
-msgstr ""
-
-#: options.c:696
-msgid "Program is written in Fortran-90-ish dialect"
-msgstr ""
-
-#: options.c:699
-msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: options.c:702
-msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: options.c:705
-msgid "Enable non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: options.c:708
-msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: options.c:720
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:567
msgid "Assume no NaNs or infinities are generated"
msgstr ""
-#: options.c:723
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:570
msgid ""
"-ffixed-<register>\tMark <register> as being unavailable to the compiler"
msgstr ""
-#: options.c:729
-msgid "ffixed-line-length-<number>\tSet the maximum line length to <number>"
-msgstr ""
-
-#: options.c:732
-msgid "Unsupported; affects code generation of arrays"
-msgstr ""
-
-#: options.c:735
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:579
msgid "Do not store floats in registers"
msgstr ""
-#: options.c:738
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:582
msgid "Scope of for-init-statement variables is local to the loop"
msgstr ""
-#: options.c:741
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:585
msgid "Copy memory address constants into registers before use"
msgstr ""
-#: options.c:744
-msgid "Always check for non gcj generated classes archives"
-msgstr ""
-
-#: options.c:747
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:588
msgid "Copy memory operands into registers before use"
msgstr ""
-#: options.c:750
-msgid "Generate code to check subscript and substring bounds"
-msgstr ""
-
-#: options.c:753
-msgid "Program is written in Fortran-90-ish free form"
-msgstr ""
-
-#: options.c:756
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:591
msgid "Do not assume that standard C libraries and \"main\" exist"
msgstr ""
-#: options.c:759
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:594
msgid "Allow function addresses to be held in registers"
msgstr ""
-#: options.c:762
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:597
msgid "Place each function into its own section"
msgstr ""
-#: options.c:765
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:600
msgid "Perform global common subexpression elimination"
msgstr ""
-#: options.c:768
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:603
msgid ""
"Perform redundant load after store elimination in global common "
"subexpression elimination"
msgstr ""
-#: options.c:771
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:606
msgid ""
"Perform enhanced load motion during global common subexpression elimination"
msgstr ""
-#: options.c:774
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:609
msgid "Perform store motion after global common subexpression elimination"
msgstr ""
-#: options.c:777
-msgid "Enable fatal diagnostics about inter-procedural problems"
-msgstr ""
-
-#: options.c:780
-msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
-msgstr ""
-
-#: options.c:783
-msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-
-#: options.c:786
-msgid "Enable non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-
-#: options.c:789
-msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-
-#: options.c:792
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:612
msgid "Recognize GNU-defined keywords"
msgstr ""
-#: options.c:795
-msgid "Output GNU ld formatted global initializers"
-msgstr ""
-
-#: options.c:798
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:615
msgid "Generate code for GNU runtime environment"
msgstr ""
-#: options.c:801
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:618
msgid "Enable guessing of branch probabilities"
msgstr ""
-#: options.c:816
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:630
msgid "Assume normal C execution environment"
msgstr ""
-#: options.c:819
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:633
msgid "Enable support for huge objects"
msgstr ""
-#: options.c:822
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:636
msgid "Process #ident directives"
msgstr ""
-#: options.c:825
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:639
msgid "Perform conversion of conditional jumps to branchless equivalents"
msgstr ""
-#: options.c:828
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:642
msgid "Perform conversion of conditional jumps to conditional execution"
msgstr ""
-#: options.c:831
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:645
msgid "Export functions even if they can be inlined"
msgstr ""
-#: options.c:834
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:648
msgid "Emit implicit instantiations of inline templates"
msgstr ""
-#: options.c:837
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:651
msgid "Emit implicit instantiations of templates"
msgstr ""
-#: options.c:840
-msgid "Use offset tables for virtual method calls"
-msgstr ""
-
-#: options.c:843
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:654
msgid "Do not generate .size directives"
msgstr ""
-#: options.c:846
-msgid "Initialize local vars and arrays to zero"
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:657
+msgid "Pay attention to the \"inline\" keyword"
msgstr ""
-#: options.c:849
-msgid "Pay attention to the \"inline\" keyword"
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:660
+msgid "Integrate simple functions into their callers"
msgstr ""
-#: options.c:858
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:666
msgid ""
"-finline-limit=<number>\tLimit the size of inlined functions to <number>"
msgstr ""
-#: options.c:861
-msgid "Instrument function entry and exit with profiling calls"
-msgstr ""
-
-#: options.c:864
-msgid "Intrinsics letters in arbitrary cases"
-msgstr ""
-
-#: options.c:867
-msgid "Intrinsics spelled as e.g. SqRt"
-msgstr ""
-
-#: options.c:870
-msgid "Intrinsics in lowercase"
-msgstr ""
-
-#: options.c:873
-msgid "Intrinsics in uppercase"
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:669
+msgid ""
+"-finput-charset=<cset> Specify the default character set for source "
+"files."
msgstr ""
-#: options.c:876
-msgid "Assume native functions are implemented using JNI"
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:672
+msgid "Instrument function entry and exit with profiling calls"
msgstr ""
-#: options.c:879
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:675
msgid "Generate code for functions even if they are fully inlined"
msgstr ""
-#: options.c:882
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:678
msgid "Emit static const variables even if they are not used"
msgstr ""
-#: options.c:888
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:684
msgid "Give external symbols a leading underscore"
msgstr ""
-#: options.c:891
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:687
msgid "Perform loop optimizations"
msgstr ""
-#: options.c:894
-msgid "Language keyword letters in arbitrary cases"
-msgstr ""
-
-#: options.c:897
-msgid "Language keywords spelled as e.g. IOStat"
-msgstr ""
-
-#: options.c:900
-msgid "Language keywords in lowercase"
-msgstr ""
-
-#: options.c:903
-msgid "Language keywords in uppercase"
-msgstr ""
-
-#: options.c:906
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:690
msgid "Set errno after built-in math functions"
msgstr ""
-#: options.c:909
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:693
msgid "Report on permanent memory allocation"
msgstr ""
-#: options.c:912
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:696
msgid "Attempt to merge identical constants and constant variables"
msgstr ""
-#: options.c:915
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:699
msgid "Attempt to merge identical constants across compilation units"
msgstr ""
-#: options.c:918
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:702
msgid ""
"-fmessage-length=<number>\tLimit diagnostics to <number> characters per "
"line. 0 suppresses line-wrapping"
msgstr ""
-#: options.c:921
-msgid "Delete MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: options.c:924
-msgid "Disable MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: options.c:927
-msgid "Enable MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: options.c:930
-msgid "Hide MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: options.c:933
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:705
msgid "Force all loop invariant computations out of loops"
msgstr ""
-#: options.c:936
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:708
msgid "Don't warn about uses of Microsoft extensions"
msgstr ""
-#: options.c:945
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:717
msgid "Use graph-coloring register allocation"
msgstr ""
-#: options.c:948
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:720
msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
msgstr ""
-#: options.c:951
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:723
msgid "Assume that receivers of Objective-C messages may be nil"
msgstr ""
-#: options.c:954
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:726
msgid "Support synchronous non-call exceptions"
msgstr ""
-#: options.c:963
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:735
msgid "Enable Objective-C exception and synchronization syntax"
msgstr ""
-#: options.c:966
-#: options.c:1293
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:738
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:978
msgid "Perform loop unrolling for all loops"
msgstr ""
-#: options.c:969
-#: options.c:1296
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:741
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:981
msgid "Perform loop unrolling when iteration count is known"
msgstr ""
-#: options.c:972
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:744
msgid "When possible do not generate stack frames"
msgstr ""
-#: options.c:975
-msgid "Take at least one trip through each iterative DO loop"
-msgstr ""
-
-#: options.c:978
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:747
msgid "Recognize C++ kewords like \"compl\" and \"xor\""
msgstr ""
-#: options.c:981
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:750
msgid "Do the full register move optimization pass"
msgstr ""
-#: options.c:984
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:753
msgid "Optimize sibling and tail recursive calls"
msgstr ""
-#: options.c:987
-msgid "Enable optimization of static class initialization code"
-msgstr ""
-
-#: options.c:990
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:756
msgid "Enable optional diagnostics"
msgstr ""
-#: options.c:996
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:759
msgid "Pack structure members together without holes"
msgstr ""
-#: options.c:999
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:762
msgid "Return small aggregates in memory, not registers"
msgstr ""
-#: options.c:1005
-msgid "Warn about use of (only a few for now) Fortran extensions"
-msgstr ""
-
-#: options.c:1008
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:768
msgid "Perform loop peeling"
msgstr ""
-#: options.c:1011
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:771
msgid "Enable machine specific peephole optimizations"
msgstr ""
-#: options.c:1014
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:774
msgid "Enable an RTL peephole pass before sched2"
msgstr ""
-#: options.c:1017
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:777
msgid "Downgrade conformance errors to warnings"
msgstr ""
-#: options.c:1020
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:780
msgid "Generate position-independent code if possible"
msgstr ""
-#: options.c:1023
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:783
msgid "Generate position-independent code for executables if possible"
msgstr ""
-#: options.c:1026
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:786
msgid "Generate prefetch instructions, if available, for arrays in loops"
msgstr ""
-#: options.c:1032
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:789
+msgid "Treat the input file as already preprocessed"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:792
msgid "Enable basic program profiling code"
msgstr ""
-#: options.c:1035
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:795
msgid "Insert arc-based program profiling code"
msgstr ""
-#: options.c:1038
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:798
+msgid ""
+"Enable common options for generating profile info for profile feedback "
+"directed optimizations"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:801
+msgid ""
+"Enable common options for performing profile feedback directed optimizations"
+msgstr ""
+
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:804
msgid "Insert code to profile values of expressions"
msgstr ""
-#: options.c:1044
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:810
msgid "-frandom-seed=<string>\tMake compile reproducible using <string>"
msgstr ""
-#: options.c:1047
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:813
msgid "Strength reduce all loop general induction variables"
msgstr ""
-#: options.c:1050
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:816
msgid "Return small aggregates in registers"
msgstr ""
-#: options.c:1053
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:819
msgid "Enables a register move optimization"
msgstr ""
-#: options.c:1056
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:822
msgid "Perform a register renaming optimization pass"
msgstr ""
-#: options.c:1059
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:825
msgid "Reorder basic blocks to improve code placement"
msgstr ""
-#: options.c:1062
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:828
msgid "Reorder functions to improve code placement"
msgstr ""
-#: options.c:1065
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:831
msgid ""
"Used in Fix-and-Continue mode to indicate that object files may be swapped "
"in at runtime"
msgstr ""
-#: options.c:1068
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:834
msgid "Enable automatic template instantiation"
msgstr ""
-#: options.c:1071
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:837
msgid "Add a common subexpression elimination pass after loop optimizations"
msgstr ""
-#: options.c:1074
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:840
msgid "Run the loop optimizer twice"
msgstr ""
-#: options.c:1077
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:843
msgid "Disable optimizations that assume default FP rounding behavior"
msgstr ""
-#: options.c:1080
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:846
msgid "Generate run time type descriptor information"
msgstr ""
-#: options.c:1083
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:849
msgid "Enable scheduling across basic blocks"
msgstr ""
-#: options.c:1086
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:852
msgid "Allow speculative motion of non-loads"
msgstr ""
-#: options.c:1089
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:855
msgid "Allow speculative motion of some loads"
msgstr ""
-#: options.c:1092
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:858
msgid "Allow speculative motion of more loads"
msgstr ""
-#: options.c:1095
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:861
msgid "Allow premature scheduling of queued insns"
msgstr ""
-#: options.c:1098
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:864
msgid ""
"Set dependence distance checking in premature scheduling of queued insns"
msgstr ""
-#: options.c:1101
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:867
msgid ""
"-fsched-stalled-insns-dep=<number> Set dependence distance checking in "
"premature scheduling of queued insns"
msgstr ""
-#: options.c:1104
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:870
msgid ""
"-fsched-stalled-insns=<number> Set number of queued insns that can be "
"prematurely scheduled"
msgstr ""
-#: options.c:1107
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:873
msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler"
msgstr ""
-#: options.c:1110
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:876
msgid "If scheduling post reload, do superblock scheduling"
msgstr ""
-#: options.c:1113
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:879
msgid "If scheduling post reload, do trace scheduling"
msgstr ""
-#: options.c:1116
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:882
msgid "Reschedule instructions before register allocation"
msgstr ""
-#: options.c:1119
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:885
msgid "Reschedule instructions after register allocation"
msgstr ""
-#: options.c:1122
-msgid "Allow appending a second underscore to externals"
-msgstr ""
-
-#: options.c:1125
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:888
msgid "Mark data as shared rather than private"
msgstr ""
-#: options.c:1128
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:891
msgid "Use the same size for double as for float"
msgstr ""
-#: options.c:1131
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:894
msgid "Use the narrowest integer type possible for enumeration types"
msgstr ""
-#: options.c:1134
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:897
msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\""
msgstr ""
-#: options.c:1140
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:903
msgid "Disable optimizations observable by IEEE signaling NaNs"
msgstr ""
-#: options.c:1143
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:906
msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed"
msgstr ""
-#: options.c:1146
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:909
msgid "Make \"char\" signed by default"
msgstr ""
-#: options.c:1149
-msgid "Do not print names of program units as they are compiled"
-msgstr ""
-
-#: options.c:1152
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:912
msgid "Convert floating point constants to single precision constants"
msgstr ""
-#: options.c:1155
-msgid "Internally convert most source to lowercase"
-msgstr ""
-
-#: options.c:1158
-msgid "Internally preserve source case"
-msgstr ""
-
-#: options.c:1161
-msgid "Internally convert most source to uppercase"
-msgstr ""
-
-#: options.c:1167
-msgid "Enable static single assignment optimizations"
-msgstr ""
-
-#: options.c:1170
-msgid "Enable SSA conditional constant propagation"
-msgstr ""
-
-#: options.c:1173
-msgid "Enable aggressive SSA dead code elimination"
-msgstr ""
-
-#: options.c:1176
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:918
msgid "Insert stack checking code into the program"
msgstr ""
-#: options.c:1182
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:924
msgid ""
"-fstack-limit-register=<register>\tTrap if the stack goes past <register>"
msgstr ""
-#: options.c:1185
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:927
msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>"
msgstr ""
-#: options.c:1188
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:930
msgid "Display statistics accumulated during compilation"
msgstr ""
-#: options.c:1191
-msgid "Enable assignability checks for stores into object arrays"
-msgstr ""
-
-#: options.c:1194
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:933
msgid "Perform strength reduction optimizations"
msgstr ""
-#: options.c:1197
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:936
msgid "Assume strict aliasing rules apply"
msgstr ""
-#: options.c:1206
-msgid "Symbol names spelled in mixed case"
-msgstr ""
-
-#: options.c:1209
-msgid "Symbol names in lowercase"
-msgstr ""
-
-#: options.c:1212
-msgid "Symbol names in uppercase"
-msgstr ""
-
-#: options.c:1215
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:942
msgid "Check for syntax errors, then stop"
msgstr ""
-#: options.c:1218
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:945
msgid "-ftabstop=<number>\tDistance between tab stops for column reporting"
msgstr ""
-#: options.c:1221
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:948
msgid "-ftemplate-depth-<number>\tSpecify maximum template instantiation depth"
msgstr ""
-#: options.c:1224
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:951
msgid "Create data files needed by \"gcov\""
msgstr ""
-#: options.c:1230
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:957
msgid "Perform jump threading optimizations"
msgstr ""
-#: options.c:1233
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:960
msgid "Report the time taken by each compiler pass"
msgstr ""
-#: options.c:1236
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:963
msgid ""
"-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the "
"default thread-local storage code generation model"
msgstr ""
-#: options.c:1239
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:966
msgid "Perform superblock formation via tail duplication"
msgstr ""
-#: options.c:1242
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:969
msgid "Assume floating-point operations can trap"
msgstr ""
-#: options.c:1245
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:972
msgid "Trap for signed overflow in addition, subtraction and multiplication"
msgstr ""
-#: options.c:1248
-msgid "Make prefix-radix non-decimal constants be typeless"
-msgstr ""
-
-#: options.c:1251
-msgid "Allow all ugly features"
-msgstr ""
-
-#: options.c:1254
-msgid "Hollerith and typeless can be passed as arguments"
-msgstr ""
-
-#: options.c:1257
-msgid "Allow ordinary copying of ASSIGN'ed vars"
-msgstr ""
-
-#: options.c:1260
-msgid "Dummy array dimensioned to (1) is assumed-size"
-msgstr ""
-
-#: options.c:1263
-msgid "Trailing comma in procedure call denotes null argument"
-msgstr ""
-
-#: options.c:1266
-msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
-msgstr ""
-
-#: options.c:1269
-msgid "Initialization via DATA and PARAMETER is not type-compatible"
-msgstr ""
-
-#: options.c:1272
-msgid "Allow INTEGER and LOGICAL interchangeability"
-msgstr ""
-
-#: options.c:1275
-msgid "Append underscores to externals"
-msgstr ""
-
-#: options.c:1278
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:975
msgid "Compile whole compilation unit at a time"
msgstr ""
-#: options.c:1281
-msgid "Delete libU77 intrinsics"
-msgstr ""
-
-#: options.c:1284
-msgid "Disable libU77 intrinsics"
-msgstr ""
-
-#: options.c:1287
-msgid "Enable libU77 intrinsics"
-msgstr ""
-
-#: options.c:1290
-msgid "Hide libU77 intrinsics"
-msgstr ""
-
-#: options.c:1299
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:984
msgid "Allow math optimizations that may violate IEEE or ISO standards"
msgstr ""
-#: options.c:1302
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:987
msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned"
msgstr ""
-#: options.c:1305
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:990
msgid "Make \"char\" unsigned by default"
msgstr ""
-#: options.c:1308
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:993
msgid "Perform loop unswitching"
msgstr ""
-#: options.c:1311
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:996
msgid "Just generate unwind tables for exception handling"
msgstr ""
-#: options.c:1317
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:999
msgid "Use __cxa_atexit to register destructors"
msgstr ""
-#: options.c:1323
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1002
msgid "Add extra commentary to assembler output"
msgstr ""
-#: options.c:1326
-msgid "Print g77-specific version information and run internal tests"
-msgstr ""
-
-#: options.c:1329
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1005
msgid "Use expression value profiles in optimizations"
msgstr ""
-#: options.c:1332
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1008
msgid "Discard unused virtual functions"
msgstr ""
-#: options.c:1335
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1011
msgid "Implement vtables using thunks"
msgstr ""
-#: options.c:1338
-msgid "Program is written in VXT (Digital-like) FORTRAN"
-msgstr ""
-
-#: options.c:1341
-msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: options.c:1344
-msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: options.c:1347
-msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: options.c:1350
-msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: options.c:1356
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1014
msgid "Emit common-like symbols as weak symbols"
msgstr ""
-#: options.c:1359
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1017
msgid "Construct webs and split unrelated uses of single variable"
msgstr ""
-#: options.c:1362
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1020
msgid ""
"-fwide-exec-charset=<cset>\tConvert all wide strings and character constants "
"to character set <cset>"
msgstr ""
-#: options.c:1365
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1023
msgid "Generate a #line directive pointing at the current working directory"
msgstr ""
-#: options.c:1368
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1026
msgid "Assume signed arithmetic overflow wraps around"
msgstr ""
-#: options.c:1371
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1029
msgid "Store strings in writable data section"
msgstr ""
-#: options.c:1374
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1032
msgid "Emit cross referencing information"
msgstr ""
-#: options.c:1377
-msgid "Print internal debugging-related information"
-msgstr ""
-
-#: options.c:1380
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1035
msgid "Put zero initialized data in the bss section"
msgstr ""
-#: options.c:1383
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1038
msgid ""
"Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode"
msgstr ""
-#: options.c:1386
-msgid "Treat initial values of 0 like non-zero values"
-msgstr ""
-
-#: options.c:1389
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1041
msgid "Generate debug information in default format"
msgstr ""
-#: options.c:1395
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1044
msgid "Generate debug information in COFF format"
msgstr ""
-#: options.c:1398
-msgid "Generate debug information in DWARF v1 format"
-msgstr ""
-
-#: options.c:1401
-msgid "Generate debug information in extended DWARF v1 format"
-msgstr ""
-
-#: options.c:1404
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1047
msgid "Generate debug information in DWARF v2 format"
msgstr ""
-#: options.c:1407
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1050
msgid "Dump declarations to a .decl file"
msgstr ""
-#: options.c:1410
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1053
msgid "Generate debug information in default extended format"
msgstr ""
-#: options.c:1413
-msgid "-gnat<options>\tSpecify options to GNAT"
-msgstr ""
-
-#: options.c:1416
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1056
msgid "Generate debug information in STABS format"
msgstr ""
-#: options.c:1419
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1059
msgid "Generate debug information in extended STABS format"
msgstr ""
-#: options.c:1422
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1062
msgid "Generate debug information in VMS format"
msgstr ""
-#: options.c:1425
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1065
msgid "Generate debug information in XCOFF format"
msgstr ""
-#: options.c:1428
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1068
msgid "Generate debug information in extended XCOFF format"
msgstr ""
-#: options.c:1431
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1071
msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path"
msgstr ""
-#: options.c:1434
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1074
msgid "-imacros <file>\tAccept definition of macros in <file>"
msgstr ""
-#: options.c:1437
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1077
msgid "-include <file>\tInclude the contents of <file> before other files"
msgstr ""
-#: options.c:1440
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1080
msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options"
msgstr ""
-#: options.c:1443
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1083
msgid "-isysroot <dir>\tSet <dir> to be the system root directory"
msgstr ""
-#: options.c:1446
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1086
msgid "-isystem <dir>\tAdd <dir> to the start of the system include path"
msgstr ""
-#: options.c:1449
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1089
msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path"
msgstr ""
-#: options.c:1452
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1092
msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path"
msgstr ""
-#: options.c:1464
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1104
msgid ""
"Do not search standard system include directories (those specified with -"
"isystem will still be used)"
msgstr ""
-#: options.c:1467
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1107
msgid "Do not search standard system include directories for C++"
msgstr ""
-#: options.c:1473
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1110
msgid "-o <file>\tPlace output into <file>"
msgstr ""
-#: options.c:1476
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1113
msgid "Enable function profiling"
msgstr ""
-#: options.c:1479
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1116
msgid "Issue warnings needed for strict compliance to the standard"
msgstr ""
-#: options.c:1482
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1119
msgid "Like -pedantic but issue them as errors"
msgstr ""
-#: options.c:1485
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1122
msgid "Generate C header of platform-specific features"
msgstr ""
-#: options.c:1488
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1125
msgid "Do not display functions compiled or elapsed time"
msgstr ""
-#: options.c:1491
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1128
msgid "Remap file names when including files"
msgstr ""
-#: options.c:1494
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1131
msgid "Conform to the ISO 1998 C++ standard"
msgstr ""
-#: options.c:1497
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1134
msgid "Conform to the ISO 1990 C standard"
msgstr ""
-#: options.c:1500
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1137
msgid "Conform to the ISO 1999 C standard"
msgstr ""
-#: options.c:1503
-#: options.c:1524
-#: options.c:1527
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1140
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1161
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1164
msgid "Deprecated in favor of -std=c99"
msgstr ""
-#: options.c:1506
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1143
msgid "Conform to the ISO 1998 C++ standard with GNU extensions"
msgstr ""
-#: options.c:1509
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1146
msgid "Conform to the ISO 1990 C standard with GNU extensions"
msgstr ""
-#: options.c:1512
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1149
msgid "Conform to the ISO 1999 C standard with GNU extensions"
msgstr ""
-#: options.c:1515
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1152
msgid "Deprecated in favor of -std=gnu99"
msgstr ""
-#: options.c:1518
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1155
msgid "Deprecated in favor of -std=c89"
msgstr ""
-#: options.c:1521
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1158
msgid "Conform to the ISO 1990 C standard as amended in 1994"
msgstr ""
-#: options.c:1530
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1167
msgid "Enable traditional preprocessing"
msgstr ""
-#: options.c:1533
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1170
msgid "-trigraphs\tSupport ISO C trigraphs"
msgstr ""
-#: options.c:1536
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1173
msgid "Do not predefine system-specific and GCC-specific macros"
msgstr ""
-#: options.c:1539
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1176
msgid "Enable verbose output"
msgstr ""
-#: options.c:1545
-msgid "Suppress warnings"
-msgstr ""
-
-#: config/rs6000/darwin.h:98
-msgid " conflicting code gen style switches are used"
-msgstr ""
-
-#: gcc.c:742
-msgid "GCC does not support -C or -CC without -E"
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1179
+msgid "Display the compiler's version"
msgstr ""
-#: gcc.c:766 java/jvspec.c:80 ada/lang-specs.h:34
-msgid "-pg and -fomit-frame-pointer are incompatible"
-msgstr ""
-
-#: gcc.c:915
-msgid "-E required when input is from standard input"
-msgstr ""
-
-#: config/arm/arm.h:197
-msgid "-mapcs-26 and -mapcs-32 may not be used together"
-msgstr ""
-
-#: config/arm/arm.h:199
-msgid "-msoft-float and -mhard_float may not be used together"
-msgstr ""
-
-#: config/arm/arm.h:201
-msgid "-mbig-endian and -mlittle-endian may not be used together"
+#: /home/mitchell/dev/gcc-3.4/objdir/gcc/options.c:1182
+msgid "Suppress warnings"
msgstr ""
-#: java/lang-specs.h:34
-msgid "-fjni and -femit-class-files are incompatible"
+#: config/i386/freebsd-aout.h:215 config/rs6000/sysv4.h:1094
+msgid "`-p' not supported; use `-pg' and gprof(1)"
msgstr ""
-#: java/lang-specs.h:35
-msgid "-fjni and -femit-class-file are incompatible"
+#: f/lang-specs.h:38
+msgid "GCC does not support -C without using -E"
msgstr ""
-#: java/lang-specs.h:36 java/lang-specs.h:37
-msgid "-femit-class-file should used along with -fsyntax-only"
+#: f/lang-specs.h:39
+msgid "GCC does not support -CC without using -E"
msgstr ""
-#: config/mips/mips.h:975
-msgid "-pipe is not supported"
+#: config/sparc/linux64.h:208 config/sparc/linux64.h:219
+#: config/sparc/netbsd-elf.h:140 config/sparc/netbsd-elf.h:159
+#: config/sparc/sol2-bi.h:195 config/sparc/sol2-bi.h:205
+msgid "may not use both -m32 and -m64"
msgstr ""
-#: config/mips/mips.h:1129 config/arc/arc.h:63
-msgid "may not use both -EB and -EL"
+#: config/i386/mingw32.h:58 config/i386/cygwin.h:70
+msgid "shared and mdll are not compatible"
msgstr ""
#: config/darwin.h:215
@@ -20940,68 +21103,99 @@ msgstr ""
msgid "-private_bundle not allowed with -dynamiclib"
msgstr ""
-#: config/i386/mingw32.h:58 config/i386/cygwin.h:70
-msgid "shared and mdll are not compatible"
+#: config/vax/netbsd-elf.h:42
+msgid "The -shared option is not currently supported for VAX ELF."
msgstr ""
-#: treelang/lang-specs.h:52
-msgid "-pg or -p and -fomit-frame-pointer are incompatible"
+#: config/vax/vax.h:50 config/vax/vax.h:51
+msgid "profiling not supported with -mg\n"
msgstr ""
-#: config/mips/r3900.h:35
-msgid "-mhard-float not supported"
+#: config/arc/arc.h:63 config/mips/mips.h:1143
+msgid "may not use both -EB and -EL"
msgstr ""
-#: config/mips/r3900.h:37
-msgid "-msingle-float and -msoft-float can not both be specified"
+#: config/mips/mips.h:988
+msgid "-pipe is not supported"
msgstr ""
-#: f/lang-specs.h:38
-msgid "GCC does not support -C without using -E"
+#: java/jvspec.c:80 ada/lang-specs.h:34 gcc.c:767
+msgid "-pg and -fomit-frame-pointer are incompatible"
msgstr ""
-#: f/lang-specs.h:39
-msgid "GCC does not support -CC without using -E"
+#: java/lang-specs.h:34
+msgid "-fjni and -femit-class-files are incompatible"
msgstr ""
-#: config/rs6000/sysv4.h:1080 config/i386/freebsd-aout.h:215
-msgid "`-p' not supported; use `-pg' and gprof(1)"
+#: java/lang-specs.h:35
+msgid "-fjni and -femit-class-file are incompatible"
msgstr ""
-#: config/vax/netbsd-elf.h:42
-msgid "The -shared option is not currently supported for VAX ELF."
+#: java/lang-specs.h:36 java/lang-specs.h:37
+msgid "-femit-class-file should used along with -fsyntax-only"
msgstr ""
-#: config/sparc/linux64.h:207 config/sparc/linux64.h:218
-#: config/sparc/netbsd-elf.h:140 config/sparc/netbsd-elf.h:159
-#: config/sparc/sol2-bi.h:166 config/sparc/sol2-bi.h:176
-msgid "may not use both -m32 and -m64"
+#: treelang/lang-specs.h:52
+msgid "-pg or -p and -fomit-frame-pointer are incompatible"
msgstr ""
-#: config/vax/vax.h:50 config/vax/vax.h:51
-msgid "profiling not supported with -mg\n"
+#: config/sparc/sol2-bi.h:167 config/sparc/sol2-bi.h:172
+#: config/sparc/sol2-gld-bi.h:17 config/sparc/sol2-gld-bi.h:22
+msgid "does not support multilib"
msgstr ""
-#: config/i386/sco5.h:192
+#: config/i386/sco5.h:191
msgid "-pg not supported on this platform"
msgstr ""
-#: config/i386/sco5.h:193
+#: config/i386/sco5.h:192
msgid "-p and -pp specified - pick one"
msgstr ""
-#: config/i386/sco5.h:267
+#: config/i386/sco5.h:266
msgid "-G and -static are mutually exclusive"
msgstr ""
-#: config/i386/cygwin.h:29
-msgid "mno-cygwin and mno-win32 are not compatible"
+#: config/arm/arm.h:198
+msgid "-mapcs-26 and -mapcs-32 may not be used together"
msgstr ""
-#: ada/lang-specs.h:36
-msgid "one of -c, -S, -gnatc, -gnatz, or -gnats is required for Ada"
+#: config/arm/arm.h:200
+msgid "-msoft-float and -mhard_float may not be used together"
+msgstr ""
+
+#: config/arm/arm.h:202
+msgid "-mbig-endian and -mlittle-endian may not be used together"
msgstr ""
#: config/mcore/mcore.h:65
msgid "the m210 does not have little endian support"
msgstr ""
+
+#: ada/lang-specs.h:36
+msgid "one of -c, -S, -gnatc, -gnatz, or -gnats is required for Ada"
+msgstr ""
+
+#: config/mips/r3900.h:35
+msgid "-mhard-float not supported"
+msgstr ""
+
+#: config/mips/r3900.h:37
+msgid "-msingle-float and -msoft-float can not both be specified"
+msgstr ""
+
+#: config/rs6000/darwin.h:98
+msgid " conflicting code gen style switches are used"
+msgstr ""
+
+#: gcc.c:743
+msgid "GCC does not support -C or -CC without -E"
+msgstr ""
+
+#: gcc.c:915
+msgid "-E required when input is from standard input"
+msgstr ""
+
+#: config/i386/cygwin.h:29
+msgid "mno-cygwin and mno-win32 are not compatible"
+msgstr ""
diff --git a/gcc/po/ja.po b/gcc/po/ja.po
index 252f310e888..eacd111e7ba 100644
--- a/gcc/po/ja.po
+++ b/gcc/po/ja.po
@@ -7,7 +7,8 @@
msgid ""
msgstr ""
"Project-Id-Version: gcc 3.0\n"
-"POT-Creation-Date: 2003-10-24 13:20+0200\n"
+"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
+"POT-Creation-Date: 2004-02-06 01:40+0000\n"
"PO-Revision-Date: 2001-12-05 22:47+0900\n"
"Last-Translator: Daisuke Yamashita <yamad@mb.infoweb.ne.jp>\n"
"Language-Team: Japanese <ja@li.org>\n"
@@ -15,1071 +16,1151 @@ msgstr ""
"Content-Type: text/plain; charset=EUC-JP\n"
"Content-Transfer-Encoding: 8bit\n"
-#: attribs.c:185
+#: attribs.c:178
#, c-format
msgid "`%s' attribute directive ignored"
msgstr "`%s' °À­¤Îµ¿»÷Ì¿Î᤬̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: attribs.c:193
+#: attribs.c:186
#, c-format
msgid "wrong number of arguments specified for `%s' attribute"
msgstr "`%s' °À­¤Ë»ØÄꤵ¤ì¤¿°ú¿ô¤Î¸Ä¿ô¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹"
-#: attribs.c:210
+#: attribs.c:203
#, c-format
msgid "`%s' attribute does not apply to types"
msgstr "`%s' °À­¤Ï·¿¤Ë¤ÏŬÍѤµ¤ì¤Þ¤»¤ó"
-#: attribs.c:247
+#: attribs.c:249
#, fuzzy, c-format
msgid "`%s' attribute only applies to function types"
msgstr "`%s' °À­¤Ï´Ø¿ô¤ËÂФ·¤Æ¤Î¤ßŬÍѤµ¤ì¤Þ¤¹"
-#: attribs.c:404 c-common.c:5275 c-common.c:5297 c-common.c:5319
-#: c-common.c:5350 c-common.c:5372 c-common.c:5397 c-common.c:5423
-#: c-common.c:5453 c-common.c:5491 c-common.c:5538 c-common.c:5568
-#: c-common.c:5598 c-common.c:5621 c-common.c:5878 c-common.c:5900
-#: c-common.c:5943 c-common.c:6020 c-common.c:6076 c-common.c:6103
-#: c-common.c:6186 c-common.c:6220 c-common.c:6574 config/arm/arm.c:2101
-#: config/arm/arm.c:2128 config/avr/avr.c:4774 config/h8300/h8300.c:3693
-#: config/h8300/h8300.c:3718 config/i386/i386.c:1403 config/i386/winnt.c:78
-#: config/ip2k/ip2k.c:3204
+#: attribs.c:416 c-common.c:4344 c-common.c:4363 c-common.c:4381
+#: c-common.c:4408 c-common.c:4427 c-common.c:4450 c-common.c:4473
+#: c-common.c:4499 c-common.c:4533 c-common.c:4577 c-common.c:4605
+#: c-common.c:4633 c-common.c:4652 c-common.c:4907 c-common.c:4929
+#: c-common.c:4964 c-common.c:5031 c-common.c:5077 c-common.c:5135
+#: c-common.c:5166 c-common.c:5512 c-common.c:5535 c-common.c:5574
+#: config/arm/arm.c:2278 config/arm/arm.c:2305 config/avr/avr.c:4539
+#: config/h8300/h8300.c:4281 config/h8300/h8300.c:4304 config/i386/i386.c:1599
+#: config/i386/i386.c:15299 config/i386/winnt.c:86 config/ia64/ia64.c:1053
+#: config/ip2k/ip2k.c:3151
#, c-format
msgid "`%s' attribute ignored"
msgstr "`%s' °À­¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: builtins.c:285
+#: builtins.c:318
msgid "offset outside bounds of constant string"
msgstr "¥ª¥Õ¥»¥Ã¥È¤¬Äê¿ôʸ»úÎó¤Î¶­³¦¤Î³°¤Ë¤¢¤ê¤Þ¤¹"
-#: builtins.c:765
+#: builtins.c:786
#, fuzzy
msgid "second arg to `__builtin_prefetch' must be a constant"
msgstr "`__builtin_expect' ¤Ø¤ÎÂèÆó°ú¿ô¤ÏÄê¿ô¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: builtins.c:772
+#: builtins.c:793
#, fuzzy
msgid "invalid second arg to __builtin_prefetch; using zero"
msgstr "`__builtin_return_address' ¤Ø¤Î°ú¿ô¤¬ÉÔŬÀڤǤ¹"
-#: builtins.c:779
+#: builtins.c:800
#, fuzzy
msgid "third arg to `__builtin_prefetch' must be a constant"
msgstr "`__builtin_expect' ¤Ø¤ÎÂèÆó°ú¿ô¤ÏÄê¿ô¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: builtins.c:786
+#: builtins.c:807
#, fuzzy
msgid "invalid third arg to __builtin_prefetch; using zero"
msgstr "`__builtin_return_address' ¤Ø¤Î°ú¿ô¤¬ÉÔŬÀڤǤ¹"
-#. ??? We used to try and build up a call to the out of line function,
-#. guessing about what registers needed saving etc. This became much
-#. harder with __builtin_va_start, since we don't have a tree for a
-#. call to __builtin_saveregs to fall back on. There was exactly one
-#. port (i860) that used this code, and I'm unconvinced it could actually
-#. handle the general case. So we no longer try to handle anything
-#. weird and make the backend absorb the evil.
-#: builtins.c:2875
-msgid "__builtin_saveregs not supported by this target"
-msgstr "__builtin_saveregs ¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-
-#: builtins.c:2917
+#: builtins.c:3828
msgid "argument of `__builtin_args_info' must be constant"
msgstr "`__builtin_args_info' ¤Î°ú¿ô¤ÏÄê¿ô¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: builtins.c:2923
+#: builtins.c:3834
msgid "argument of `__builtin_args_info' out of range"
msgstr "`__builtin_args_info' ¤Î°ú¿ô¤¬Èϰϳ°¤Ç¤¹"
-#: builtins.c:2929
+#: builtins.c:3840
msgid "missing argument in `__builtin_args_info'"
msgstr "`__builtin_args_info' ¤Ë°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: builtins.c:2960
+#: builtins.c:3856
msgid "`va_start' used in function with fixed args"
msgstr "`va_start' ¤¬¸ÇÄê¸Ä°ú¿ô¤Î´Ø¿ôÆâ¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: builtins.c:2979
+#: builtins.c:3875
msgid "second parameter of `va_start' not last named argument"
msgstr "`va_start' ¤ÎÆóÈÖÌܤÎÃͤ¬°ú¿ô¤ÎºÇ¸å¤Î̾Á°¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤»¤ó"
#. Evidently an out of date version of <stdarg.h>; can't validate
#. va_start's second argument, but can still work as intended.
-#: builtins.c:2984
+#: builtins.c:3880
msgid "`__builtin_next_arg' called without an argument"
msgstr "`__builtin_next_arg' ¤¬°ú¿ô̵¤·¤Ç¤Ç¸Æ¤Ó½Ð¤µ¤ì¤Þ¤·¤¿"
-#: builtins.c:3070
+#: builtins.c:3969
msgid "too many arguments to function `va_start'"
msgstr "`va_start' ¤ËÂФ¹¤ë°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹"
-#: builtins.c:3172
+#: builtins.c:4091
msgid "first argument to `va_arg' not of type `va_list'"
msgstr "`va_arg' ¤ËÂФ¹¤ëÂè°ì°ú¿ô¤¬ `va_list' ·¿¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
#. Unfortunately, this is merely undefined, rather than a constraint
#. violation, so we cannot make this an error. If this call is never
#. executed, the program is still strictly conforming.
-#: builtins.c:3204
+#: builtins.c:4123
#, c-format
msgid "`%s' is promoted to `%s' when passed through `...'"
msgstr "`%s' ¤Ï `...' ¤Î½èÍý¤Î²áÄø¤Ç `%s' ¤Ë³Ê¾å¤²¤µ¤ì¤Þ¤·¤¿"
-#: builtins.c:3209
+#: builtins.c:4128
#, c-format
msgid "(so you should pass `%s' not `%s' to `va_arg')"
msgstr "(½¾¤Ã¤Æ¡¢`va_arg' ¤Ë¤Ï `%s' ¤ò(`%s' ¤Ç¤Ê¤¯)ÅϤµ¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó)"
-#: builtins.c:3340
+#: builtins.c:4240
msgid "invalid arg to `__builtin_frame_address'"
msgstr "`__builtin_frame_address' ¤Ø¤Î°ú¿ô¤¬ÉÔŬÀڤǤ¹"
-#: builtins.c:3342
+#: builtins.c:4242
msgid "invalid arg to `__builtin_return_address'"
msgstr "`__builtin_return_address' ¤Ø¤Î°ú¿ô¤¬ÉÔŬÀڤǤ¹"
-#: builtins.c:3356
+#: builtins.c:4256
msgid "unsupported arg to `__builtin_frame_address'"
msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤ `__builtin_frame_address' ¤Ø¤Î°ú¿ô¤Ç¤¹"
-#: builtins.c:3358
+#: builtins.c:4258
msgid "unsupported arg to `__builtin_return_address'"
msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤ `__builtin_return_address' ¤Ø°ú¿ô¤Ç¤¹"
-#: builtins.c:3530
+#: builtins.c:4418
msgid "second arg to `__builtin_expect' must be a constant"
msgstr "`__builtin_expect' ¤Ø¤ÎÂèÆó°ú¿ô¤ÏÄê¿ô¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: builtins.c:4028
+#: builtins.c:5359
msgid "__builtin_longjmp second argument must be 1"
msgstr "__builtin_longjmp ÂèÆó°ú¿ô¤Ï 1 ¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#. just do library call, if unknown builtin
-#: builtins.c:4092 c-common.c:4459
+#: builtins.c:5454
#, c-format
msgid "built-in function `%s' not currently supported"
msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤Ï¸½ºß¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: builtins.c:4165
+#: builtins.c:5594
#, fuzzy
msgid "target format does not support infinity"
msgstr "¥¿¡¼¥²¥Ã¥È CPU ¤Ï interworking ¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó"
-#: c-common.c:1168
-#, fuzzy, c-format
-msgid "`%s' is not defined outside of function scope"
-msgstr "¥é¥Ù¥ë `%s' ¤¬´Ø¿ô¤Î³°Â¦¤Î²¿¤«¤ò»²¾È¤·¤Þ¤·¤¿"
+#: c-common.c:934
+msgid "%Hsuggest explicit braces to avoid ambiguous `else'"
+msgstr ""
+
+#: c-common.c:1158
+#, fuzzy
+msgid "%J'%D' is not defined outside of function scope"
+msgstr "¥é¥Ù¥ë %s ¤¬¤¢¤é¤æ¤ë´Ø¿ô¤Î³°Â¦¤Ç»²¾È¤µ¤ì¤Þ¤·¤¿"
-#: c-common.c:1189
+#: c-common.c:1178
#, c-format
msgid "string length `%d' is greater than the length `%d' ISO C%d compilers are required to support"
msgstr "ʸ»úÎóĹ `%d' ¤Ï¡¢Ä¹¤µ `%d' (ISO C%d ¥³¥ó¥Ñ¥¤¥é¤Î¥µ¥Ý¡¼¥ÈÍ×·ï)¤è¤êÂ礭¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-common.c:1247
-msgid "concatenation of string literals with __FUNCTION__ is deprecated"
-msgstr ""
-
-#: c-common.c:1343
+#: c-common.c:1218
msgid "overflow in constant expression"
msgstr "Äê¿ô¼°¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
-#: c-common.c:1364
+#: c-common.c:1238
msgid "integer overflow in expression"
msgstr "¼°¤ÎÀ°¿ô¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
-#: c-common.c:1373
+#: c-common.c:1247
msgid "floating point overflow in expression"
msgstr "¼°¤ÎÉâÆ°¾®¿ôÅÀ¿ô¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
-#: c-common.c:1379
+#: c-common.c:1253
#, fuzzy
msgid "vector overflow in expression"
msgstr "¼°¤ÎÀ°¿ô¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
#. This detects cases like converting -129 or 256 to unsigned char.
-#: c-common.c:1402
+#: c-common.c:1275
msgid "large integer implicitly truncated to unsigned type"
msgstr "Â礭¤ÊÀ°¿ô¤¬°ÅÌÛ¤ËÉä¹ç̵¤··¿¤ËÀÚ¤êµÍ¤á¤é¤ì¤Þ¤·¤¿"
-#: c-common.c:1404
+#: c-common.c:1277
msgid "negative integer implicitly converted to unsigned type"
msgstr "Éé¤ÎÀ°¿ô¤¬°ÅÌÛ¤ËÉä¹ç̵¤··¿¤ËÊÑ´¹¤µ¤ì¤Þ¤·¤¿"
-#: c-common.c:1452
+#: c-common.c:1323
msgid "overflow in implicit constant conversion"
msgstr "°ÅÌÛ¤ÎÄê¿ôÊÑ´¹¤Ç¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
-#: c-common.c:1600
+#: c-common.c:1459
#, c-format
msgid "operation on `%s' may be undefined"
msgstr "`%s' ¤Ç¤Î±é»»¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¤È»×¤ï¤ì¤Þ¤¹"
-#: c-common.c:1891
+#: c-common.c:1743
msgid "expression statement has incomplete type"
msgstr "¼°¤ÎÃæ¤Îʸ¤ËÉÔ´°Á´·¿¤¬¤¢¤ê¤Þ¤¹"
-#: c-common.c:1924
+#: c-common.c:1775
msgid "case label does not reduce to an integer constant"
msgstr "case ¥é¥Ù¥ë¤òÀ°¿ôÄê¿ô¤Ë´Ô¸µ¤Ç¤­¤Þ¤»¤ó"
-#: c-common.c:2228
+#: c-common.c:2105
msgid "invalid truth-value expression"
msgstr "¿¿µ¶Ãͼ°¤¬ÉÔŬÀڤǤ¹"
-#: c-common.c:2279
+#: c-common.c:2156
#, c-format
msgid "invalid operands to binary %s"
msgstr "Æó¹à±é»»»Ò %s ¤¬ÉÔŬÀڤǤ¹"
-#: c-common.c:2513
+#: c-common.c:2390
msgid "comparison is always false due to limited range of data type"
msgstr "¥Ç¡¼¥¿·¿¤ÎÈÏ°ÏÀ©¸Â¤Ë¤è¤Ã¤Æ¡¢Èæ³Ó¤¬¾ï¤Ë false ¤È¤Ê¤ê¤Þ¤¹"
-#: c-common.c:2515
+#: c-common.c:2392
msgid "comparison is always true due to limited range of data type"
msgstr "¥Ç¡¼¥¿·¿¤ÎÈÏ°ÏÀ©¸Â¤Ë¤è¤Ã¤Æ¡¢Èæ³Ó¤¬¾ï¤Ë true ¤È¤Ê¤ê¤Þ¤¹"
-#: c-common.c:2585
+#: c-common.c:2462
msgid "comparison of unsigned expression >= 0 is always true"
msgstr "Éä¹ç̵¤·¤Î¼° >= 0 ¤È¤¤¤¦Èæ³Ó¤Ï¾ï¤Ë true ¤Ç¤¹"
-#: c-common.c:2594
+#: c-common.c:2471
msgid "comparison of unsigned expression < 0 is always false"
msgstr "Éä¹ç̵¤·¤Î¼° < 0 ¤È¤¤¤¦Èæ³Ó¤Ï¾ï¤Ë false ¤Ç¤¹"
-#: c-common.c:2641
+#: c-common.c:2516
msgid "pointer of type `void *' used in arithmetic"
msgstr "`void *' ·¿¤Î¥Ý¥¤¥ó¥¿¤¬·×»»¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: c-common.c:2647
+#: c-common.c:2522
msgid "pointer to a function used in arithmetic"
msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤¬·×»»¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: c-common.c:2653
+#: c-common.c:2528
#, fuzzy
msgid "pointer to member function used in arithmetic"
msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤¬·×»»¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: c-common.c:2659
+#: c-common.c:2534
#, fuzzy
msgid "pointer to a member used in arithmetic"
msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤¬·×»»¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: c-common.c:2746 f/com.c:14762
+#: c-common.c:2623 f/com.c:14734
msgid "struct type value used where scalar is required"
msgstr "¥¹¥«¥é¡¼¤¬É¬Íפʾì½ê¤Ë¹½Â¤Âη¿¤ÎÃͤ¬»È¤ï¤ì¤Þ¤·¤¿"
-#: c-common.c:2750 f/com.c:14766
+#: c-common.c:2627 f/com.c:14738
msgid "union type value used where scalar is required"
msgstr "¥¹¥«¥é¡¼¤¬É¬Íפʾì½ê¤Ë¶¦ÍÑÂη¿¤ÎÃͤ¬»È¤ï¤ì¤Þ¤·¤¿"
-#: c-common.c:2754 f/com.c:14770
+#: c-common.c:2631 f/com.c:14742
msgid "array type value used where scalar is required"
msgstr "¥¹¥«¥é¡¼¤¬É¬Íפʾì½ê¤ËÇÛÎ󷿤ÎÃͤ¬»È¤ï¤ì¤Þ¤·¤¿"
-#: c-common.c:2874 f/com.c:14903
+#. Common Ada/Pascal programmer's mistake. We always warn
+#. about this since it is so bad.
+#: c-common.c:2668
+msgid "the address of `%D', will always evaluate as `true'"
+msgstr ""
+
+#: c-common.c:2762 f/com.c:14874
msgid "suggest parentheses around assignment used as truth value"
msgstr "¿¿µ¶ÃͤȤ·¤Æ»È¤ï¤ì¤ëÂåÆþ¤Î¤Þ¤ï¤ê¤Ç¤Ï¡¢´Ý³ç¸Ì¤Î»ÈÍѤò¤ª´«¤á¤·¤Þ¤¹"
-#: c-common.c:2918 c-common.c:2950
+#: c-common.c:2808 c-common.c:2848
msgid "invalid use of `restrict'"
msgstr "`restrict' ¤ÎÍÑË¡¤¬ÉÔŬÀڤǤ¹"
-#: c-common.c:3064
+#: c-common.c:2958
#, fuzzy
msgid "invalid application of `sizeof' to a function type"
msgstr "ISO C++ ¤Ï´Ø¿ô·¿¤Ø¤Î `sizeof' ¤ÎŬÍѤò¶Ø¤¸¤Þ¤¹"
-#: c-common.c:3074
+#: c-common.c:2968
#, fuzzy, c-format
msgid "invalid application of `%s' to a void type"
msgstr "¥¤¥ó¥¹¥¿¥ó¥¹²½¤µ¤ì¤Ê¤¤·¿¤ËÂФ¹¤ë̵¸ú¤ÊÁàºî¤Ç¤¹"
-#: c-common.c:3080
+#: c-common.c:2974
#, fuzzy, c-format
msgid "invalid application of `%s' to an incomplete type"
msgstr "__alignof__ ¤¬ÉÔ´°Á´¤Ê·¿¤ËŬÍѤµ¤ì¤Þ¤·¤¿"
-#: c-common.c:3121
+#: c-common.c:3014
msgid "`__alignof' applied to a bit-field"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤Ë `__alignof' ¤¬Å¬ÍѤµ¤ì¤Þ¤·¤¿"
-#: c-common.c:3618
+#: c-common.c:3506
#, fuzzy, c-format
msgid "cannot disable built-in function `%s'"
msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤òʤ¤¤±£¤·¤Þ¤¹"
-#: c-common.c:3787 c-typeck.c:1748
+#: c-common.c:3667 c-typeck.c:1941
#, c-format
msgid "too few arguments to function `%s'"
msgstr "´Ø¿ô `%s' ¤Ø¤Î°ú¿ô¤¬¾¯¤Ê¤¹¤®¤Þ¤¹"
-#: c-common.c:3793 c-typeck.c:1601
+#: c-common.c:3673 c-typeck.c:1802
#, c-format
msgid "too many arguments to function `%s'"
msgstr "´Ø¿ô `%s' ¤ËÂФ¹¤ë°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹"
-#: c-common.c:3812
+#: c-common.c:3692
#, fuzzy, c-format
msgid "non-floating-point argument to function `%s'"
msgstr "´Ø¿ô `%s' ¤ËÂФ¹¤ë°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹"
-#: c-common.c:4081
+#: c-common.c:3919
msgid "pointers are not permitted as case values"
msgstr "case ¤ÎÃͤȤ·¤Æ¤Î¥Ý¥¤¥ó¥¿¤Ïµö¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: c-common.c:4087
-msgid "ISO C++ forbids range expressions in switch statements"
-msgstr "ISO C++ ¤Ç¤Ï switch ʸ¤Ç¤ÎÈϰϼ°¤Ï¶Ø¤¸¤é¤ì¤Æ¤¤¤Þ¤¹"
-
-#: c-common.c:4089
-msgid "ISO C forbids range expressions in switch statements"
+#: c-common.c:3923
+#, fuzzy
+msgid "range expressions in switch statements are non-standard"
msgstr "ISO C ¤Ç¤Ï switch ʸ¤Ç¤ÎÈϰϼ°¤Ï¶Ø¤¸¤é¤ì¤Æ¤¤¤Þ¤¹"
-#: c-common.c:4119
+#: c-common.c:3952
msgid "empty range specified"
msgstr "¶õ¤ÎÈϰϤ¬»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: c-common.c:4170
+#: c-common.c:4003
msgid "duplicate (or overlapping) case value"
msgstr "Æó½Å¤Î(¤¢¤ë¤¤¤Ï½ÅÊ£¤·¤Æ¤¤¤ë) case ¤ÎÃÍ"
-#: c-common.c:4172
-msgid "this is the first entry overlapping that value"
+#: c-common.c:4004
+#, fuzzy
+msgid "%Jthis is the first entry overlapping that value"
msgstr "¤³¤ì¤¬¤½¤ÎÃͤȽÅÊ£¤·¤¿ºÇ½é¤Î¹àÌܤǤ¹"
-#: c-common.c:4176
+#: c-common.c:4008
msgid "duplicate case value"
msgstr "½ÅÊ£¤·¤¿ case ¤ÎÃÍ"
-#: c-common.c:4177
-msgid "previously used here"
+#: c-common.c:4009
+#, fuzzy
+msgid "%Jpreviously used here"
msgstr "Á°¤Ë¤³¤³¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: c-common.c:4181
+#: c-common.c:4013
msgid "multiple default labels in one switch"
msgstr "°ì¤Ä¤Î switch ¤ËÊ£¿ô¤Î default ¥é¥Ù¥ë¤¬¤¢¤ê¤Þ¤¹"
-#: c-common.c:4182
-msgid "this is the first default label"
+#: c-common.c:4014
+#, fuzzy
+msgid "%Jthis is the first default label"
msgstr "¤³¤ì¤¬ºÇ½é¤Î default ¥é¥Ù¥ë¤Ç¤¹"
-#: c-common.c:4210
+#: c-common.c:4039
#, fuzzy
-msgid "ISO C++ forbids taking the address of a label"
-msgstr "ISO C++ ¤Ï `::main' ´Ø¿ô¤Î¥¢¥É¥ì¥¹¤ò¼è¤ë¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
+msgid "taking the address of a label is non-standard"
+msgstr "°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥É¥ì¥¹¤ò¼è¤í¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: c-common.c:4212
-#, fuzzy
-msgid "ISO C forbids taking the address of a label"
-msgstr "ISO C ¤Ï¥­¥ã¥¹¥È¼°¤Î¥¢¥É¥ì¥¹É¾²Á¤ò¶Ø¤¸¤Þ¤¹"
+#: c-common.c:4085
+msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
-#: c-common.c:5235
+#: c-common.c:4090
+msgid "%Hignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
+
+#. SW_PARAM
+#: c-common.c:4297
#, fuzzy, c-format
-msgid "declaration of `%s' shadows %s"
+msgid "declaration of \"%s\" shadows a parameter"
msgstr "`%s' ¤ÎÀë¸À¤Ï²¾°ú¿ô¤òʤ¤¤±£¤·¤Þ¤¹"
-#: c-common.c:5654
+#. SW_LOCAL
+#: c-common.c:4298
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a previous local"
+msgstr "`%s' ¤ÎÀë¸À¤ÏÁ°Êý¤Î¥í¡¼¥«¥ë¥·¥ó¥Ü¥ë¤òʤ¤¤±£¤·¤Þ¤¹"
+
+#. SW_GLOBAL
+#: c-common.c:4299
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a global declaration"
+msgstr "`%s' ¤ÎÀë¸À¤Ï¥°¥í¡¼¥Ð¥ëÀë¸À¤òʤ¤¤±£¤·¤Þ¤¹"
+
+#: c-common.c:4303
+msgid "%Jshadowed declaration is here"
+msgstr ""
+
+#: c-common.c:4686
#, c-format
msgid "unknown machine mode `%s'"
msgstr "ÉÔÌÀ¤Ê¥Þ¥·¥ó¥â¡¼¥É `%s'"
-#: c-common.c:5657
+#: c-common.c:4689
#, c-format
msgid "no data type for mode `%s'"
msgstr "¥â¡¼¥É `%s' ¤ËÂФ¹¤ë¥Ç¡¼¥¿·¿¤¬¤¢¤ê¤Þ¤»¤ó"
-#: c-common.c:5666 c-common.c:6316
+#: c-common.c:4693
+#, fuzzy, c-format
+msgid "invalid pointer mode `%s'"
+msgstr "̵¸ú¤Ê¼±ÊÌ»Ò `%s'"
+
+#: c-common.c:4700 c-common.c:5263
#, fuzzy, c-format
msgid "unable to emulate '%s'"
msgstr "¥Õ¥¡¥¤¥ë '%s' ¤ò open ¤Ç¤­¤Þ¤»¤ó"
-#: c-common.c:5702
-msgid "section attribute cannot be specified for local variables"
+#: c-common.c:4744
+#, fuzzy
+msgid "%Jsection attribute cannot be specified for local variables"
msgstr "section °À­¤Ï¥í¡¼¥«¥ëÊÑ¿ô¤ËÂФ·¤Æ¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó"
-#: c-common.c:5713
-#, c-format
-msgid "section of `%s' conflicts with previous declaration"
+#: c-common.c:4755
+#, fuzzy
+msgid "%Jsection of '%D' conflicts with previous declaration"
msgstr "`%s' ¤Î¥»¥¯¥·¥ç¥ó¤ÏÁ°Êý¤Ç¤ËÀë¸À¤µ¤ì¤¿¤â¤Î¤È¾×Æͤ·¤Þ¤¹"
-#: c-common.c:5722
-#, c-format
-msgid "section attribute not allowed for `%s'"
+#: c-common.c:4764
+#, fuzzy
+msgid "%Jsection attribute not allowed for '%D'"
msgstr "¥»¥¯¥·¥ç¥ó°À­¤Ï `%s' ¤Ë¤Ï»È¤¨¤Þ¤»¤ó"
-#: c-common.c:5729
-msgid "section attributes are not supported for this target"
+#: c-common.c:4770
+#, fuzzy
+msgid "%Jsection attributes are not supported for this target"
msgstr "¥»¥¯¥·¥ç¥ó°À­¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: c-common.c:5771
+#: c-common.c:4808
msgid "requested alignment is not a constant"
msgstr "Í׵ᤵ¤ì¤¿¥¢¥é¥¤¥ó¥á¥ó¥È¤¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-common.c:5776
+#: c-common.c:4813
msgid "requested alignment is not a power of 2"
msgstr "Í׵ᤵ¤ì¤¿¥¢¥é¥¤¥ó¥á¥ó¥È¤¬ 2 ¤Î¤Ù¤­¾è¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-common.c:5781
+#: c-common.c:4818
msgid "requested alignment is too large"
msgstr "Í׵ᤵ¤ì¤¿¥¢¥é¥¤¥ó¥á¥ó¥È¤¬Â礭¤¹¤®¤Þ¤¹"
-#: c-common.c:5808
-#, c-format
-msgid "alignment may not be specified for `%s'"
+#: c-common.c:4844
+#, fuzzy
+msgid "%Jalignment may not be specified for '%D'"
msgstr "`%s' ¤ËÂФ·¤Æ¤Î¥¢¥é¥¤¥ó¥á¥ó¥È¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó"
-#: c-common.c:5853
-#, c-format
-msgid "`%s' defined both normally and as an alias"
+#: c-common.c:4882
+#, fuzzy
+msgid "%J'%D' defined both normally and as an alias"
msgstr "`%s' ¤¬Ä̾ï¤Î¤â¤Î¤È¥¨¥¤¥ê¥¢¥¹¤È¤ÎξÊý¤ÇÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-#: c-common.c:5863
+#: c-common.c:4892
msgid "alias arg not a string"
msgstr "alias °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤Ê¤¤"
-#: c-common.c:5910
+#: c-common.c:4935
#, fuzzy
msgid "visibility arg not a string"
msgstr "alias °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤Ê¤¤"
-#: c-common.c:5919
+#: c-common.c:4948
msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\""
msgstr ""
-#: c-common.c:5953
+#: c-common.c:4974
#, fuzzy
msgid "tls_model arg not a string"
msgstr "alias °ú¿ô¤¬Ê¸»úÎó¤Ç¤Ï¤Ê¤¤"
-#: c-common.c:5962
+#: c-common.c:4983
msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\""
msgstr ""
-#: c-common.c:5987 c-common.c:6043
-#, c-format
-msgid "`%s' attribute applies only to functions"
-msgstr "`%s' °À­¤Ï´Ø¿ô¤ËÂФ·¤Æ¤Î¤ßŬÍѤµ¤ì¤Þ¤¹"
-
-#: c-common.c:5994 c-common.c:6050
-#, c-format
-msgid "can't set `%s' attribute after definition"
-msgstr "ÄêµÁ¤Î¸å¤Ç `%s' °À­¤ò¥»¥Ã¥È¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
-
-#: c-common.c:6114
+#: c-common.c:5005 c-common.c:5051
#, fuzzy
-msgid "cleanup arg not an identifier"
-msgstr "¼±Ê̻ҤΤʤ¤ 'defined'"
+msgid "%J'%E' attribute applies only to functions"
+msgstr "`%s' °À­¤Ï´Ø¿ô¤ËÂФ·¤Æ¤Î¤ßŬÍѤµ¤ì¤Þ¤¹"
-#: c-common.c:6121
+#: c-common.c:5010 c-common.c:5056
#, fuzzy
-msgid "cleanup arg not a function"
-msgstr "¸Æ¤Ó½Ð¤µ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤Ï´Ø¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+msgid "%Jcan't set '%E' attribute after definition"
+msgstr "ÄêµÁ¤Î¸å¤Ç `%s' °À­¤ò¥»¥Ã¥È¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: c-common.c:6183
+#: c-common.c:5132
#, fuzzy, c-format
msgid "`%s' attribute ignored for `%s'"
msgstr "`%s' °À­¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: c-common.c:6248
+#: c-common.c:5195
#, fuzzy, c-format
msgid "invalid vector type for attribute `%s'"
msgstr "`%s' ¤Î°ú¿ô¤È¤·¤Æ̵¸ú¤Ê·¿"
-#: c-common.c:6272 c-common.c:6304
+#: c-common.c:5219 c-common.c:5251
msgid "no vector mode with the size and type specified could be found"
msgstr ""
-#: c-common.c:6403
+#: c-common.c:5353
#, fuzzy
msgid "nonnull attribute without arguments on a non-prototype"
msgstr "²¾°ú¿ô¤Î¿ô¤¬¥×¥í¥È¥¿¥¤¥×¤È°ìÃפ·¤Þ¤»¤ó"
-#: c-common.c:6418
+#: c-common.c:5368
#, fuzzy, c-format
msgid "nonnull argument has invalid operand number (arg %lu)"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥Èʸ»úÎó¤ËÉÔŬÀڤʥª¥Ú¥é¥ó¥É¿ô¤¬¤¢¤ê¤Þ¤¹"
-#: c-common.c:6437
+#: c-common.c:5387
#, c-format
msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)"
msgstr ""
-#: c-common.c:6445
+#: c-common.c:5395
#, c-format
msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)"
msgstr ""
-#: c-common.c:6531
+#: c-common.c:5475
#, c-format
msgid "null argument where non-null required (arg %lu)"
msgstr ""
-#: c-convert.c:80 c-typeck.c:988 c-typeck.c:4059 cp/typeck.c:1615
-#: cp/typeck.c:5939
-msgid "void value not ignored as it ought to be"
-msgstr "void ¤ÎÃͤ¬ËÜÍè¤Î°ÕÌ£Ä̤ê¤Ë̵»ë¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿"
+#: c-common.c:5546
+#, fuzzy
+msgid "cleanup arg not an identifier"
+msgstr "¼±Ê̻ҤΤʤ¤ 'defined'"
-#: c-convert.c:112 java/typeck.c:150
-msgid "conversion to non-scalar type requested"
-msgstr "Èó¥¹¥«¥é¡¼·¿¤Ø¤ÎÊÑ´¹¤¬Í׵ᤵ¤ì¤Þ¤¹"
+#: c-common.c:5553
+#, fuzzy
+msgid "cleanup arg not a function"
+msgstr "¸Æ¤Ó½Ð¤µ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤Ï´Ø¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-decl.c:340
+#: c-common.c:5914
#, c-format
-msgid "array `%s' assumed to have one element"
-msgstr "ÇÛÎó `%s' ¤Ï°ìÍ×ÁǤò»ý¤Ã¤Æ¤¤¤ë¤â¤Î¤È¸«¤Ê¤µ¤ì¤Þ¤¹"
+msgid "%s at end of input"
+msgstr "ÆþÎϤκǸå¤Ë %s"
-#: c-decl.c:526
+#: c-common.c:5920
#, c-format
-msgid "`struct %s' incomplete in scope ending here"
-msgstr "¥¹¥³¡¼¥×¤¬½ª¤ï¤ë¤³¤Î°ÌÃ֤ǡ¢`struct %s' ¤¬ÉÔ´°Á´¤Ç¤¹"
+msgid "%s before %s'%c'"
+msgstr "%s ¤¬ %s'%c' ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
-#: c-decl.c:529
+#: c-common.c:5922
#, c-format
-msgid "`union %s' incomplete in scope ending here"
-msgstr "¥¹¥³¡¼¥×¤¬½ª¤ï¤ë¤³¤ÎÉôʬ¤Ç `union %s' ¤¬ÉÔ´°Á´¤Ç¤¹"
+msgid "%s before %s'\\x%x'"
+msgstr "%s ¤¬ %s'\\x%x' ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
-#: c-decl.c:532
+#: c-common.c:5926
#, c-format
-msgid "`enum %s' incomplete in scope ending here"
-msgstr "¥¹¥³¡¼¥×¤¬½ª¤ï¤ë¤³¤ÎÉôʬ¤Ç `enum %s' ¤¬ÉÔ´°Á´¤Ç¤¹"
+msgid "%s before string constant"
+msgstr "ʸ»úÎóÄê¿ô¤ÎÁ°¤Ë %s"
-#: c-decl.c:646 c-decl.c:771 java/decl.c:1403
+#: c-common.c:5928
#, c-format
-msgid "label `%s' used but not defined"
-msgstr "¥é¥Ù¥ë `%s' ¤¬»È¤ï¤ì¤Þ¤·¤¿¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+msgid "%s before numeric constant"
+msgstr "¿ôÃÍÄê¿ô¤ÎÁ°¤Ë %s"
-#: c-decl.c:652 c-decl.c:778 java/decl.c:1409
+#: c-common.c:5930
#, c-format
-msgid "label `%s' defined but not used"
-msgstr "¥é¥Ù¥ë `%s' ¤¬ÄêµÁ¤µ¤ì¤Þ¤·¤¿¤¬»È¤ï¤ì¤Æ¤¤¤Þ¤»¤ó"
-
-#: c-decl.c:893 cp/decl.c:3335
-#, fuzzy, c-format
-msgid "function `%s' redeclared as inline"
-msgstr "¥é¥¤¥Ö¥é¥ê´Ø¿ô `%s' ¤ÏÈó´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-
-#: c-decl.c:895 cp/decl.c:3337
-#, fuzzy, c-format
-msgid "previous declaration of function `%s' with attribute noinline"
-msgstr "%s: ´Ø¿ô `%s' ¤ÎÀë¸À¤¬ÊÑ´¹¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-
-#: c-decl.c:902 cp/decl.c:3344
-#, fuzzy, c-format
-msgid "function `%s' redeclared with attribute noinline"
-msgstr "´Ø¿ô `%s' ¤Ï¥Ö¥í¥Ã¥¯Æâ¤ÎÁ°Êý¤ÇÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-
-#: c-decl.c:904 cp/decl.c:3346
-#, fuzzy, c-format
-msgid "previous declaration of function `%s' was inline"
-msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
+msgid "%s before \"%s\""
+msgstr "%s ¤¬ \"%s\" ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
-#: c-decl.c:933 c-decl.c:979
+#: c-common.c:5932
#, c-format
-msgid "shadowing built-in function `%s'"
-msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤òʤ¤¤±£¤·¤Þ¤¹"
+msgid "%s before '%s' token"
+msgstr "%s ¤¬ '%s' ¥È¡¼¥¯¥ó¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
-#: c-decl.c:935
+#. Use `%s' to print the string in case there are any escape
+#. characters in the message.
+#: c-common.c:5934 c-typeck.c:2578 c-typeck.c:3970 c-typeck.c:3985
+#: c-typeck.c:4000 final.c:2776 final.c:2778 gcc.c:4574 rtl-error.c:109
+#: toplev.c:1340 config/cris/cris.c:545 cp/parser.c:1848 cp/typeck.c:4111
+#: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472
#, c-format
-msgid "shadowing library function `%s'"
-msgstr "¥é¥¤¥Ö¥é¥ê´Ø¿ô `%s' ¤òʤ¤¤±£¤·¤Þ¤¹"
+msgid "%s"
+msgstr "%s"
-#: c-decl.c:941
-#, c-format
-msgid "library function `%s' declared as non-function"
-msgstr "¥é¥¤¥Ö¥é¥ê´Ø¿ô `%s' ¤ÏÈó´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
+#: c-convert.c:82 c-typeck.c:1193 c-typeck.c:3410 cp/typeck.c:1337
+#: cp/typeck.c:5648 treelang/tree-convert.c:79
+msgid "void value not ignored as it ought to be"
+msgstr "void ¤ÎÃͤ¬ËÜÍè¤Î°ÕÌ£Ä̤ê¤Ë̵»ë¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿"
-#: c-decl.c:945 c-decl.c:948
-#, c-format
-msgid "built-in function `%s' declared as non-function"
-msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤ÏÈó´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
+#: c-convert.c:114 java/typeck.c:148 treelang/tree-convert.c:105
+msgid "conversion to non-scalar type requested"
+msgstr "Èó¥¹¥«¥é¡¼·¿¤Ø¤ÎÊÑ´¹¤¬Í׵ᤵ¤ì¤Þ¤¹"
-#: c-decl.c:952 objc/objc-act.c:2384 objc/objc-act.c:6154
-#, c-format
-msgid "`%s' redeclared as different kind of symbol"
-msgstr "`%s' ¤¬Ê̤Υ·¥ó¥Ü¥ë¼ï¤È¤·¤ÆºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
+#: c-decl.c:371
+#, fuzzy
+msgid "%Jarray '%D' assumed to have one element"
+msgstr "ÇÛÎó `%s' ¤Ï°ìÍ×ÁǤò»ý¤Ã¤Æ¤¤¤ë¤â¤Î¤È¸«¤Ê¤µ¤ì¤Þ¤¹"
-#: c-decl.c:953 c-decl.c:1144 c-decl.c:1158 c-decl.c:1165 c-decl.c:1310
-#: objc/objc-act.c:2386 objc/objc-act.c:6156 objc/objc-act.c:6211
-#, c-format
-msgid "previous declaration of `%s'"
-msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
+#: c-decl.c:580
+#, fuzzy
+msgid "%Jlabel `%D' used but not defined"
+msgstr "¥é¥Ù¥ë `%s' ¤¬»È¤ï¤ì¤Þ¤·¤¿¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#. If types don't match for a built-in, throw away the built-in.
-#: c-decl.c:1048
-#, c-format
-msgid "conflicting types for built-in function `%s'"
-msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤È·¿¤¬Ì·½â¤·¤Þ¤¹"
+#: c-decl.c:586
+#, fuzzy
+msgid "%Jlabel `%D' defined but not used"
+msgstr "¥é¥Ù¥ë `%s' ¤¬ÄêµÁ¤µ¤ì¤Þ¤·¤¿¤¬»È¤ï¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: c-decl.c:1091 c-decl.c:1110
-#, c-format
-msgid "conflicting types for `%s'"
-msgstr "`%s' ¤È·¿¤¬Ì·½â¤·¤Þ¤¹"
+#: c-decl.c:588
+#, fuzzy
+msgid "%Jlabel `%D' declared but not defined"
+msgstr "¥é¥Ù¥ë `%s' ¤¬»È¤ï¤ì¤Þ¤·¤¿¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: c-decl.c:1133
+#: c-decl.c:613
+#, fuzzy
+msgid "%Junused variable `%D'"
+msgstr "ÊÑ¿ô `%s' ¤Ï»È¤ï¤ì¤Þ¤»¤ó¤Ç¤·¤¿"
+
+#: c-decl.c:821
#, fuzzy
msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
msgstr "¾Êάµ­¹æÉÕ¤­¥Ñ¥é¥á¥¿¥ê¥¹¥È¤Ï¡¢¶õ¤Î²¾°ú¿ô̾¥ê¥¹¥ÈÀë¸À¤È°ìÃפǤ­¤Þ¤»¤ó¡£"
-#: c-decl.c:1139
+#: c-decl.c:828
#, fuzzy
msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
msgstr "¥Ç¥Õ¥©¥ë¥È¤Ç³Ê¾å¤²¤µ¤ì¤ë·¿¤Î°ú¿ô¤¬¡¢¶õ¤Î²¾°ú¿ô̾¥ê¥¹¥ÈÀë¸À¤ÈŬ¹ç¤·¤Þ¤»¤ó¡£"
-#: c-decl.c:1157
-#, fuzzy, c-format
-msgid "thread-local declaration of `%s' follows non thread-local declaration"
-msgstr "`%s' ¤ÎÀë¸À¤Ï¥°¥í¡¼¥Ð¥ëÀë¸À¤òʤ¤¤±£¤·¤Þ¤¹"
+#: c-decl.c:864
+msgid "%Jprototype for '%D' declares more arguments than previous old-style definition"
+msgstr ""
-#: c-decl.c:1164
-#, fuzzy, c-format
-msgid "non thread-local declaration of `%s' follows thread-local declaration"
-msgstr "`%s' ¤ÎÀë¸À¤Ï¥°¥í¡¼¥Ð¥ëÀë¸À¤òʤ¤¤±£¤·¤Þ¤¹"
+#: c-decl.c:870
+msgid "%Jprototype for '%D' declares fewer arguments than previous old-style definition"
+msgstr ""
-#: c-decl.c:1175 c-decl.c:1198
-#, c-format
-msgid "redefinition of `%s'"
-msgstr "`%s' ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
+#: c-decl.c:879
+msgid "%Jprototype for '%D' declares arg %d with incompatible type"
+msgstr ""
-#: c-decl.c:1178
-#, c-format
-msgid "redeclaration of `%s'"
-msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
+#. If we get here, no errors were found, but do issue a warning
+#. for this poor-style construct.
+#: c-decl.c:891
+#, fuzzy
+msgid "%Jprototype for '%D' follows non-prototype definition"
+msgstr "`%s' ¤Î¥×¥í¥È¥¿¥¤¥×¤¬¸å¤í¤Ë¤¢¤ê¤Þ¤¹"
-#: c-decl.c:1181
-#, c-format
-msgid "conflicting declarations of `%s'"
-msgstr "`%s' ¤ÎÀë¸À¤¬Ì·½â¤·¤Æ¤¤¤Þ¤¹"
+#: c-decl.c:906
+#, fuzzy
+msgid "%Jprevious definition of '%D' was here"
+msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: c-decl.c:1225
-#, c-format
-msgid "prototype for `%s' follows"
-msgstr "`%s' ¤Î¥×¥í¥È¥¿¥¤¥×¤¬¸å¤í¤Ë¤¢¤ê¤Þ¤¹"
+#: c-decl.c:908
+#, fuzzy
+msgid "%Jprevious implicit declaration of '%D' was here"
+msgstr "Á°Êý¤Ç¤Î `%s' ¤Î°ÅÌÛŪ¤ÊÀë¸À"
-#: c-decl.c:1226 c-decl.c:1234 c-decl.c:1245
-msgid "non-prototype definition here"
-msgstr "Èó¥×¥í¥È¥¿¥¤¥×ÄêµÁ¤¬¤³¤³¤Ë¤¢¤ê¤Þ¤¹"
+#: c-decl.c:910
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was here"
+msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: c-decl.c:1233
-#, c-format
-msgid "prototype for `%s' follows and number of arguments doesn't match"
-msgstr "`%s' ¤Î¥×¥í¥È¥¿¥¤¥×¤¬¸å¤í¤Ë¤¢¤ê¡¢°ú¿ô¤Î¸Ä¿ô¤¬°ìÃפ·¤Þ¤»¤ó"
+#: c-decl.c:944
+#, fuzzy
+msgid "%J'%D' redeclared as different kind of symbol"
+msgstr "`%s' ¤¬Ê̤Υ·¥ó¥Ü¥ë¼ï¤È¤·¤ÆºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:1243
-#, c-format
-msgid "prototype for `%s' follows and argument %d doesn't match"
-msgstr "`%s' ¤Î¥×¥í¥È¥¿¥¤¥×¤¬¸å¤í¤Ë¤¢¤ê¡¢°ú¿ô %d ¤¬°ìÃפ·¤Þ¤»¤ó"
+#: c-decl.c:949
+#, fuzzy
+msgid "%Jbuilt-in function '%D' declared as non-function"
+msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤ÏÈó´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:1261
-#, c-format
-msgid "`%s' declared inline after being called"
-msgstr "`%s' ¤Ï¸Æ¤Ó½Ð¤µ¤ì¤ë¤è¤ê¤â¸å¤í¤Ç inline Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
+#: c-decl.c:952 c-decl.c:1042
+#, fuzzy
+msgid "%Jshadowing built-in function '%D'"
+msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤òʤ¤¤±£¤·¤Þ¤¹"
-#: c-decl.c:1267
-#, c-format
-msgid "`%s' declared inline after its definition"
-msgstr "`%s' ¤Ï¤½¤ÎÄêµÁ¤è¤ê¤â¸å¤Ç inline Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
+#. If types don't match for a built-in, throw away the
+#. built-in. No point in calling locate_old_decl here, it
+#. won't print anything.
+#: c-decl.c:972
+#, fuzzy
+msgid "%Jconflicting types for built-in function '%D'"
+msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤È·¿¤¬Ì·½â¤·¤Þ¤¹"
-#: c-decl.c:1274
-#, c-format
-msgid "static declaration for `%s' follows non-static"
+#: c-decl.c:996 c-decl.c:1004
+#, fuzzy
+msgid "%Jconflicting types for '%D'"
+msgstr "`%s' ¤È·¿¤¬Ì·½â¤·¤Þ¤¹"
+
+#. allow OLDDECL to continue in use
+#: c-decl.c:1019
+#, fuzzy
+msgid "%Jredefinition of typedef '%D'"
+msgstr "`%s' ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
+
+#: c-decl.c:1055 c-decl.c:1119
+#, fuzzy
+msgid "%Jredefinition of '%D'"
+msgstr "`%s' ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
+
+#: c-decl.c:1086 c-decl.c:1136
+#, fuzzy
+msgid "%Jstatic declaration of '%D' follows non-static declaration"
msgstr "`%s' ¤ÏÈó static ¤Î¸å¤Ç static Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:1282
-#, c-format
-msgid "non-static declaration for `%s' follows static"
+#: c-decl.c:1094 c-decl.c:1133
+#, fuzzy
+msgid "%Jnon-static declaration of '%D' follows static declaration"
msgstr "`%s' ¤Ï static ¤Î¸å¤ÇÈó static Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:1289
-#, c-format
-msgid "const declaration for `%s' follows non-const"
-msgstr "`%s' ¤ÏÈó const ¤Î¸å¤Ç const Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-
-#: c-decl.c:1296
-#, c-format
-msgid "type qualifiers for `%s' conflict with previous decl"
-msgstr "`%s' ¤Î·¿½¤¾þ»Ò¤¬Á°Êý¤ÎÀë¸À¤ÈÌ·½â¤·¤Þ¤¹"
+#: c-decl.c:1106
+#, fuzzy
+msgid "%Jthread-local declaration of '%D' follows non-thread-local declaration"
+msgstr "`%s' ¤ÎÀë¸À¤Ï¥°¥í¡¼¥Ð¥ëÀë¸À¤òʤ¤¤±£¤·¤Þ¤¹"
-#: c-decl.c:1309
-#, c-format
-msgid "redundant redeclaration of `%s' in same scope"
-msgstr "`%s' ¤Î¾éĹ¤ÊºÆÀë¸À¤¬Æ±°ì¥¹¥³¡¼¥×Æâ¤Ë¤¢¤ê¤Þ¤¹"
+#: c-decl.c:1109
+#, fuzzy
+msgid "%Jnon-thread-local declaration of '%D' follows thread-local declaration"
+msgstr "`%s' ¤ÎÀë¸À¤Ï¥°¥í¡¼¥Ð¥ëÀë¸À¤òʤ¤¤±£¤·¤Þ¤¹"
-#: c-decl.c:1619 java/decl.c:1102
-#, c-format
-msgid "declaration of `%s' shadows a parameter"
-msgstr "`%s' ¤ÎÀë¸À¤Ï²¾°ú¿ô¤òʤ¤¤±£¤·¤Þ¤¹"
+#: c-decl.c:1149
+#, fuzzy
+msgid "%Jextern declaration of '%D' follows declaration with no linkage"
+msgstr "`%s' ¤Îextern Àë¸À¤Ï¥°¥í¡¼¥Ð¥ë¤Î¤½¤ì¤È°ìÃפ·¤Þ¤»¤ó"
-#: c-decl.c:1622 java/decl.c:1105
-#, c-format
-msgid "declaration of `%s' shadows a symbol from the parameter list"
-msgstr "`%s' ¤ÎÀë¸À¤Ï²¾°ú¿ô¥ê¥¹¥È¤Î¥·¥ó¥Ü¥ë¤òʤ¤¤±£¤·¤Þ¤¹"
+#: c-decl.c:1152
+#, fuzzy
+msgid "%Jdeclaration of '%D' with no linkage follows extern declaration"
+msgstr "`%s' ¤ÎÀë¸À¤Ï¥°¥í¡¼¥Ð¥ëÀë¸À¤òʤ¤¤±£¤·¤Þ¤¹"
-#: c-decl.c:1643 cp/decl.c:4479
+#: c-decl.c:1155
#, fuzzy
-msgid "a parameter"
-msgstr "²¾°ú¿ô `%s' ¤Ï̵¸ú¤Ç¤¹"
+msgid "%Jredeclaration of '%D' with no linkage"
+msgstr "%s: '%s' ¤ÎÀë¸À¤ÏÊÑ´¹¤µ¤ì¤Þ¤»¤ó\n"
-#: c-decl.c:1645 cp/decl.c:4496
-msgid "a previous local"
+#: c-decl.c:1169
+msgid "%Jredeclaration of '%D' with different visibility (old visibility preserved)"
msgstr ""
-#. XXX shadow warnings in outer-more namespaces
-#: c-decl.c:1649 cp/decl.c:4500
+#: c-decl.c:1180
+msgid "%Jinline declaration of '%D' follows declaration with attribute noinline"
+msgstr ""
+
+#: c-decl.c:1187
#, fuzzy
-msgid "a global declaration"
-msgstr "̵¸ú¤ÊÀë¸À¤Ç¤¹"
+msgid "%Jdeclaration of '%D' with attribute noinline follows inline declaration "
+msgstr "¥¹¥¿¥Æ¥£¥Ã¥¯ÊÑ¿ô `%s' ¤ÎÀë¸À¤¬ `for' ¥ë¡¼¥×½é´ü²½Àë¸ÀÆâ¤Ë¤¢¤ê¤Þ¤¹"
-#: c-decl.c:1693
-#, c-format
-msgid "nested extern declaration of `%s'"
-msgstr "`%s' ¤Î extern Àë¸À¤¬¥Í¥¹¥È¤·¤Æ¤¤¤Þ¤¹"
+#: c-decl.c:1199
+#, fuzzy
+msgid "%J'%D' declared inline after being called"
+msgstr "`%s' ¤Ï¸Æ¤Ó½Ð¤µ¤ì¤ë¤è¤ê¤â¸å¤í¤Ç inline Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:1712 java/decl.c:1055
-#, c-format
-msgid "`%s' used prior to declaration"
-msgstr "`%s' ¤ÏÀë¸À¤è¤ê¤âÀè¤Ë»ÈÍѤµ¤ì¤Þ¤·¤¿"
+#: c-decl.c:1205
+#, fuzzy
+msgid "%J'%D' declared inline after its definition"
+msgstr "`%s' ¤Ï¤½¤ÎÄêµÁ¤è¤ê¤â¸å¤Ç inline Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:1726 c-decl.c:1901
-#, c-format
-msgid "`%s' was declared implicitly `extern' and later `static'"
-msgstr "`%s' ¤Ï°ÅÌÛ¤Ë `extern' Àë¸À¤µ¤ì¡¢¸å¤Ë `static' Àë¸À¤µ¤ì¤Þ¤·¤¿"
+#: c-decl.c:1217
+#, fuzzy
+msgid "%Jvolatile declaration of '%D' follows non-volatile declaration"
+msgstr "`%s' ¤ÏÈó static ¤Î¸å¤Ç static Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:1829 cp/decl.c:4336
-msgid "type mismatch with previous external decl"
-msgstr "·¿¤¬Á°Êý¤Î³°ÉôÀë¸À¤È°ìÃפ·¤Þ¤»¤ó"
+#: c-decl.c:1220
+#, fuzzy
+msgid "%Jnon-volatile declaration of '%D' follows volatile declaration"
+msgstr "`%s' ¤Ï static ¤Î¸å¤ÇÈó static Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:1830
-#, c-format
-msgid "previous external decl of `%s'"
-msgstr "Á°Êý¤Î `%s' ¤Î³°ÉôÀë¸À"
+#: c-decl.c:1227
+#, fuzzy
+msgid "%Jconst declaration of '%D' follows non-const declaration"
+msgstr "`%s' ¤ÏÈó const ¤Î¸å¤Ç const Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:1843
-msgid "type mismatch with previous implicit declaration"
-msgstr "·¿¤¬Á°Êý¤Î°ÅÌÛ¤ÎÀë¸À¤È°ìÃפ·¤Þ¤»¤ó"
+#: c-decl.c:1230
+#, fuzzy
+msgid "%Jnon-const declaration of '%D' follows const declaration"
+msgstr "`%s' ¤Ï static ¤Î¸å¤ÇÈó static Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:1845
-#, c-format
-msgid "previous implicit declaration of `%s'"
-msgstr "Á°Êý¤Ç¤Î `%s' ¤Î°ÅÌÛŪ¤ÊÀë¸À"
+#: c-decl.c:1246
+#, fuzzy
+msgid "%Jredundant redeclaration of '%D'"
+msgstr "`%s' ¤Î¾éĹ¤ÊºÆÀë¸À¤¬Æ±°ì¥¹¥³¡¼¥×Æâ¤Ë¤¢¤ê¤Þ¤¹"
-#: c-decl.c:1880
+#: c-decl.c:1690
#, c-format
-msgid "`%s' was previously implicitly declared to return `int'"
-msgstr "`%s' ¤ÏÁ°Êý¤Ç°ÅÌÛŪ¤Ë `int' ¤òÊÖ¤¹¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
+msgid "nested extern declaration of `%s'"
+msgstr "`%s' ¤Î extern Àë¸À¤¬¥Í¥¹¥È¤·¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:1905
-#, c-format
-msgid "`%s' was declared `extern' and later `static'"
-msgstr "`%s' ¤Ï `extern' ¤ÈÀë¸À¤µ¤ì¡¢¸å¤Ç `static' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
+#: c-decl.c:1829 objc/objc-act.c:2534 objc/objc-act.c:6793
+#, fuzzy
+msgid "%Jprevious declaration of '%D'"
+msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: c-decl.c:1929
+#: c-decl.c:1870 c-decl.c:1872
#, c-format
-msgid "extern declaration of `%s' doesn't match global one"
-msgstr "`%s' ¤Îextern Àë¸À¤Ï¥°¥í¡¼¥Ð¥ë¤Î¤½¤ì¤È°ìÃפ·¤Þ¤»¤ó"
+msgid "implicit declaration of function `%s'"
+msgstr "´Ø¿ô `%s' ¤Î°ÅÌÛ¤ÎÀë¸À"
-#: c-decl.c:1971
+#: c-decl.c:1888
#, c-format
-msgid "`%s' locally external but globally static"
-msgstr "`%s' ¤Ï¥í¡¼¥«¥ëŪ¤Ë¤Ï extern ¤Ç¤¹¤¬¡¢¥°¥í¡¼¥Ð¥ëŪ¤Ë static ¤Ç¤¹"
+msgid "`%s' undeclared here (not in a function)"
+msgstr "`%s' ¤¬¤³¤³¤Ç¤ÏÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó (´Ø¿ô¤ÎÃæ¤Ç¤Ï¤Ê¤¤)"
-#: c-decl.c:2095
+#: c-decl.c:1894
#, c-format
-msgid "function `%s' was previously declared within a block"
-msgstr "´Ø¿ô `%s' ¤Ï¥Ö¥í¥Ã¥¯Æâ¤ÎÁ°Êý¤ÇÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
+msgid "`%s' undeclared (first use in this function)"
+msgstr "`%s' ¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó (¤³¤Î´Ø¿ôÆâ¤ÇºÇ½é¤ËÍøÍÑ)"
-#: c-decl.c:2115 c-decl.c:2117
-#, c-format
-msgid "implicit declaration of function `%s'"
-msgstr "´Ø¿ô `%s' ¤Î°ÅÌÛ¤ÎÀë¸À"
+#: c-decl.c:1899
+msgid "(Each undeclared identifier is reported only once"
+msgstr "(̤Àë¸À¤Î³ÆÊÑ¿ô¤Ë¤Ä¤¤¤Æ¤Ï¡¢¤½¤ì¤¬ºÇ½é¤Ë¸½¤ï¤ì¤¿¤½¤ì¤¾¤ì¤Î´Ø¿ô"
-#: c-decl.c:2196
+#: c-decl.c:1900
+msgid "for each function it appears in.)"
+msgstr " ¤ËÂФ·¤Æ°ìÅÙ¤À¤±Êó¹ð¤µ¤ì¤Þ¤¹¡£)"
+
+#: c-decl.c:1953
#, c-format
msgid "label %s referenced outside of any function"
msgstr "¥é¥Ù¥ë %s ¤¬¤¢¤é¤æ¤ë´Ø¿ô¤Î³°Â¦¤Ç»²¾È¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:2253
+#: c-decl.c:2000
#, c-format
msgid "duplicate label declaration `%s'"
msgstr "¥é¥Ù¥ë¤ÎÀë¸À `%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:2256
-msgid "this is a previous declaration"
+#: c-decl.c:2001
+#, fuzzy
+msgid "%Jthis is a previous declaration"
msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: c-decl.c:2679
+#: c-decl.c:2036
+#, fuzzy
+msgid "%Hduplicate label `%D'"
+msgstr "½ÅÊ£¤·¤¿¥á¥ó¥Ð `%s'"
+
+#: c-decl.c:2038
+#, fuzzy
+msgid "%J`%D' previously defined here"
+msgstr "`%s' ¤ÏÁ°¤Ë¤³¤³¤ÇÄêµÁ¤µ¤ì¤Þ¤·¤¿"
+
+#: c-decl.c:2040
+#, fuzzy
+msgid "%J`%D' previously declared here"
+msgstr "`%s' ¤ÏÁ°¤Ë¤³¤³¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
+
+#: c-decl.c:2060
+msgid "%Htraditional C lacks a separate namespace for labels, identifier `%s' conflicts"
+msgstr ""
+
+#: c-decl.c:2131
+#, fuzzy
+msgid "%H`%s' defined as wrong kind of tag"
+msgstr "`%s' ¤¬Ê̤Υ·¥ó¥Ü¥ë¼ï¤È¤·¤ÆºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
+
+#: c-decl.c:2369
msgid "unnamed struct/union that defines no instances"
msgstr "̵̾¹½Â¤ÂÎ/¶¦ÍÑÂΤ¬¡¢¤½¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òÄêµÁ¤·¤Æ¤¤¤Þ¤»¤ó"
-#: c-decl.c:2698
+#: c-decl.c:2388
msgid "useless keyword or type name in empty declaration"
msgstr "¶õ¤ÎÀë¸À¤ÎÃæ¤Ë¡¢Ìµ°ÕÌ£¤Ê¥­¡¼¥ï¡¼¥ÉËô¤Ï·¿Ì¾¤¬¤¢¤ê¤Þ¤¹"
-#: c-decl.c:2705
+#: c-decl.c:2395
msgid "two types specified in one empty declaration"
msgstr "°ì¤Ä¤Î¶õ¤ÎÀë¸ÀÃæ¤Ë¡¢Æó¤Ä¤Î·¿¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:2710 c-parse.y:753 c-parse.y:755 parse.y:766 parse.y:1853
-#: objc-parse.y:799 objc-parse.y:801 objc-parse.y:3042
+#: c-decl.c:2400 c-parse.y:735 c-parse.y:737 objc/objc-parse.y:776
+#: objc/objc-parse.y:778 objc/objc-parse.y:3016
msgid "empty declaration"
msgstr "¶õ¤ÎÀë¸À¤Ç¤¹"
-#: c-decl.c:2740
+#: c-decl.c:2426
msgid "ISO C90 does not support `static' or type qualifiers in parameter array declarators"
msgstr ""
-#: c-decl.c:2742
+#: c-decl.c:2428
#, fuzzy
msgid "ISO C90 does not support `[*]' array declarators"
msgstr "ISO C89 ¤Ï²ÄÊÑÇÛÎó¥á¥ó¥Ð¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-decl.c:2745
+#: c-decl.c:2431
msgid "GCC does not yet properly implement `[*]' array declarators"
msgstr ""
-#: c-decl.c:2764
+#: c-decl.c:2447
#, fuzzy
msgid "static or type qualifiers in abstract declarator"
msgstr "¥Ý¥¤¥ó¥¿Àë¸À»Ò¤ËÉÔŬÀڤʷ¿½¤¾þ»Ò"
-#: c-decl.c:2838
-#, c-format
-msgid "`%s' is usually a function"
+#: c-decl.c:2517
+#, fuzzy
+msgid "%J'%D' is usually a function"
msgstr "`%s' ¤ÏÄ̾ï¤Ï´Ø¿ô¤Ç¤¹"
-#: c-decl.c:2847
+#: c-decl.c:2526
#, fuzzy, c-format
msgid "typedef `%s' is initialized (use __typeof__ instead)"
msgstr "typedef `%s' ¤¬½é´ü²½¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:2853
+#: c-decl.c:2532
#, c-format
msgid "function `%s' is initialized like a variable"
msgstr "´Ø¿ô `%s' ¤¬ÊÑ¿ô¤Ç¤¢¤ë¤«¤Î¤è¤¦¤Ë½é´ü²½¤µ¤ì¤Þ¤·¤¿"
#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
-#: c-decl.c:2860
+#: c-decl.c:2539
#, c-format
msgid "parameter `%s' is initialized"
msgstr "²¾°ú¿ô `%s' ¤¬½é´ü²½¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:2880 c-typeck.c:4895
+#: c-decl.c:2559 c-typeck.c:4220
msgid "variable-sized object may not be initialized"
msgstr "²ÄÊÑĹ¥ª¥Ö¥¸¥§¥¯¥È¤Ï½é´ü²½¤µ¤ì¤Ê¤¤¤³¤È¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦"
-#: c-decl.c:2886
+#: c-decl.c:2565
#, c-format
msgid "variable `%s' has initializer but incomplete type"
msgstr "ÊÑ¿ô `%s' ¤Ë¤Ï½é´ü²½»Ò¤¬¤¢¤ê¤Þ¤¹¤¬¡¢ÉÔ´°Á´·¿¤Ç¤¹"
-#: c-decl.c:2892
+#: c-decl.c:2571
#, c-format
msgid "elements of array `%s' have incomplete type"
msgstr "ÇÛÎó `%s' ¤ÎÍ×ÁǤËÉÔ´°Á´·¿¤¬¤¢¤ê¤Þ¤¹"
-#: c-decl.c:2905
-#, c-format
-msgid "declaration of `%s' has `extern' and is initialized"
-msgstr "`%s' ¤ÎÀë¸À¤Ë `extern' ¤¬¤Ä¤¤¤Æ¤ª¤ê¡¢½é´ü²½¤â¤µ¤ì¤Æ¤¤¤Þ¤¹"
-
-#: c-decl.c:2954 c-decl.c:5828 cp/decl.c:7760 cp/decl.c:14339
-#, fuzzy, c-format
-msgid "inline function `%s' given attribute noinline"
-msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤ÏÈó´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
+#: c-decl.c:2640 c-decl.c:5426 cp/decl.c:3748 cp/decl.c:10156
+msgid "%Jinline function '%D' given attribute noinline"
+msgstr ""
-#: c-decl.c:3028
-#, c-format
-msgid "initializer fails to determine size of `%s'"
+#: c-decl.c:2716
+#, fuzzy
+msgid "%Jinitializer fails to determine size of '%D'"
msgstr "½é´ü²½»Ò¤Ï `%s' ¤Î¥µ¥¤¥º¤ÎÆÃÄê¤Ë¼ºÇÔ¤·¤Þ¤·¤¿"
-#: c-decl.c:3033
-#, c-format
-msgid "array size missing in `%s'"
+#: c-decl.c:2721
+#, fuzzy
+msgid "%Jarray size missing in '%D'"
msgstr "`%s' ¤Ç¤ÎÇÛÎó¥µ¥¤¥º¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:3049
-#, c-format
-msgid "zero or negative size array `%s'"
+#: c-decl.c:2737
+#, fuzzy
+msgid "%Jzero or negative size array '%D'"
msgstr "`%s' ¤ÎÇÛÎó¥µ¥¤¥º¤¬¥¼¥íËô¤ÏÉé¤Ç¤¹"
-#: c-decl.c:3077
-#, c-format
-msgid "storage size of `%s' isn't known"
+#: c-decl.c:2765
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't known"
msgstr "`%s' ¤ÎÎΰ襵¥¤¥º¤¬¤ï¤«¤ê¤Þ¤»¤ó"
-#: c-decl.c:3087
-#, c-format
-msgid "storage size of `%s' isn't constant"
+#: c-decl.c:2775
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't constant"
msgstr "`%s' ¤ÎÎΰ襵¥¤¥º¤¬°ìÄê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-decl.c:3147
-#, c-format
-msgid "ignoring asm-specifier for non-static local variable `%s'"
+#: c-decl.c:2858
+#, fuzzy
+msgid "%Jignoring asm-specifier for non-static local variable '%D'"
msgstr "Èó static ¥í¡¼¥«¥ëÊÑ¿ô `%s' ¤Ø¤Î asm »ØÄê»Ò¤Ï̵»ë¤µ¤ì¤Þ¤¹"
-#: c-decl.c:3247
+#: c-decl.c:2969
+msgid "ISO C forbids forward parameter declarations"
+msgstr "ISO C ¤ÏÁ°Êý²¾°ú¿ôÀë¸À¤ò¶Ø¤¸¤Þ¤¹"
+
+#: c-decl.c:3151
+#, fuzzy
+msgid "<anonymous>"
+msgstr "<̵̾ %s>"
+
+#: c-decl.c:3160
+#, c-format
+msgid "bit-field `%s' width not an integer constant"
+msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤ÎÉý¤¬À°¿ôÄê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+
+#: c-decl.c:3168
+#, c-format
+msgid "negative width in bit-field `%s'"
+msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤ÎÉý¤¬Éé¤Î¿ô¤Ç¤¹"
+
+#: c-decl.c:3173
+#, c-format
+msgid "zero width for bit-field `%s'"
+msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤ÎÉý¤¬ 0 ¤Ç¤¹"
+
+#: c-decl.c:3183
+#, c-format
+msgid "bit-field `%s' has invalid type"
+msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤ÏÉÔŬÀڤʷ¿¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹"
+
+#: c-decl.c:3192
#, fuzzy, c-format
-msgid "ISO C forbids parameter `%s' shadowing typedef"
-msgstr "ANSI C ¤Ï typedef ¤òʤ¤¤±£¤¹²¾°ú¿ô `%s' ¤ò¶Ø¤¸¤Æ¤¤¤Þ¤¹"
+msgid "type of bit-field `%s' is a GCC extension"
+msgstr "#%s ¤Ï GCC ¤Î³ÈÄ¥¤Ç¤¹"
-#: c-decl.c:3592 cp/decl.c:10880
+#: c-decl.c:3201
+#, c-format
+msgid "width of `%s' exceeds its type"
+msgstr "`%s' ¤ÎÉý¤Ï¤½¤Î·¿¤Î¥µ¥¤¥º¤òĶ¤¨¤Æ¤¤¤Þ¤¹"
+
+#: c-decl.c:3211
+#, c-format
+msgid "`%s' is narrower than values of its type"
+msgstr "`%s' ¤Ï¤½¤Î·¿¤ÎÃͤè¤ê¤â¶¹¤¤¤Ç¤¹"
+
+#: c-decl.c:3361 cp/decl.c:6778
msgid "`long long long' is too long for GCC"
msgstr "`long long long' ¤Ï GCC ¤Ë¤È¤Ã¤ÆŤ¹¤®¤Þ¤¹"
-#: c-decl.c:3597
+#: c-decl.c:3366
#, fuzzy
msgid "ISO C90 does not support `long long'"
msgstr "ISO C89 ¤Ï `long long' ¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-decl.c:3606 c-decl.c:3609 cp/decl.c:10885
+#: c-decl.c:3375 c-decl.c:3378 cp/decl.c:6783
#, c-format
msgid "duplicate `%s'"
msgstr "`%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:3619 cp/decl.c:10892
+#: c-decl.c:3388 cp/decl.c:6789
msgid "`__thread' before `extern'"
msgstr ""
-#: c-decl.c:3621 cp/decl.c:10894
+#: c-decl.c:3390 cp/decl.c:6791
msgid "`__thread' before `static'"
msgstr ""
-#: c-decl.c:3629 cp/decl.c:10921
+#: c-decl.c:3398 cp/decl.c:6818
#, c-format
msgid "two or more data types in declaration of `%s'"
msgstr "`%s' ¤ÎÀë¸À¤ËÆó¤Ä°Ê¾å¤Î¥Ç¡¼¥¿·¿¤¬»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: c-decl.c:3649 cp/decl.c:10926
+#: c-decl.c:3418 cp/decl.c:6823
#, c-format
msgid "`%s' fails to be a typedef or built in type"
msgstr "`%s' ¤ò typedef ¤Þ¤¿¤ÏÁȤ߹þ¤ß·¿¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: c-decl.c:3688
+#: c-decl.c:3457
#, c-format
msgid "type defaults to `int' in declaration of `%s'"
msgstr "`%s' ¤ÎÀë¸À¤Ç·¿¤¬¥Ç¥Õ¥©¥ë¥È¤Î `int' ¤È¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:3717
+#: c-decl.c:3486
#, c-format
msgid "both long and short specified for `%s'"
msgstr "`%s' ¤ËÂФ·¤Æ long ¤È short ¤ÎξÊý¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:3721 cp/decl.c:11041
+#: c-decl.c:3490 cp/decl.c:6923
#, c-format
msgid "long or short specified with char for `%s'"
msgstr "`%s' ¤ËÂФ·¤Æ char ¤È¤È¤â¤Ë long ¤Þ¤¿¤Ï short ¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:3728 cp/decl.c:11045
+#: c-decl.c:3497 cp/decl.c:6927
#, c-format
msgid "long or short specified with floating type for `%s'"
msgstr "`%s' ¤ËÂФ·¤ÆÉâÆ°¾®¿ô·¿¤È¤È¤â¤Ë long ¤Þ¤¿¤Ï short ¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:3731
+#: c-decl.c:3500
msgid "the only valid combination is `long double'"
msgstr "Í£°ì¤ÎÍ­¸ú¤ÊÁȹç¤ï¤»¤Ï `long double' ¤Ç¤¹"
-#: c-decl.c:3737
+#: c-decl.c:3506
#, c-format
msgid "both signed and unsigned specified for `%s'"
msgstr "`%s' ¤ËÂФ·¤ÆÉä¹æ¤¢¤ê¤ÈÉä¹æ¤Ê¤·¤ÎξÊý¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:3739 cp/decl.c:11034
+#: c-decl.c:3508 cp/decl.c:6916
#, c-format
msgid "long, short, signed or unsigned invalid for `%s'"
msgstr "`%s' ¤ËÂФ·¤Æ long, short, signed ¤Þ¤¿¤Ï unsigned ¤ÏÉÔŬÀڤǤ¹"
-#: c-decl.c:3745 cp/decl.c:11054
+#: c-decl.c:3514 cp/decl.c:6936
#, c-format
msgid "long, short, signed or unsigned used invalidly for `%s'"
msgstr "`%s' ¤ËÂФ¹¤ë long, short, singed ¤ä unsigned ¤Î»ÈÍѤÏÉÔŬÀڤǤ¹"
-#: c-decl.c:3763 cp/decl.c:11075
+#: c-decl.c:3532 cp/decl.c:6957
#, c-format
msgid "complex invalid for `%s'"
msgstr "`%s' ¤ËÂФ·¤Æ complex ¤ÏÉÔŬÀڤǤ¹"
-#: c-decl.c:3805
+#: c-decl.c:3574
#, fuzzy
msgid "ISO C90 does not support complex types"
msgstr "ISO C89 ¤Ï complex ·¿¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-decl.c:3817
+#: c-decl.c:3586
msgid "ISO C does not support plain `complex' meaning `double complex'"
msgstr "ISO C ¤Ï `double complex' ¤ò°ÕÌ£¤¹¤ë̵½¤¾þ¤Î `complex' ¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-decl.c:3823 c-decl.c:3835
+#: c-decl.c:3592 c-decl.c:3604
msgid "ISO C does not support complex integer types"
msgstr "ISO C ¤ÏÀ°¿ô·¿¤Î complex ¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-decl.c:3850 c-decl.c:4316 cp/decl.c:11688
+#: c-decl.c:3632 c-decl.c:4090 cp/decl.c:7549
msgid "duplicate `const'"
msgstr "½ÅÊ£¤·¤¿ `const'"
-#: c-decl.c:3852 c-decl.c:4320 cp/decl.c:11692
+#: c-decl.c:3634 c-decl.c:4094 cp/decl.c:7553
msgid "duplicate `restrict'"
msgstr "½ÅÊ£¤·¤¿¥é¥Ù¥ë `restrict'"
-#: c-decl.c:3854 c-decl.c:4318 cp/decl.c:11690
+#: c-decl.c:3636 c-decl.c:4092 cp/decl.c:7551
msgid "duplicate `volatile'"
msgstr "½ÅÊ£¤·¤¿ `volatile'"
-#: c-decl.c:3882 cp/decl.c:11238
+#: c-decl.c:3664 cp/decl.c:7120
#, c-format
msgid "multiple storage classes in declaration of `%s'"
msgstr "`%s' ¤ÎÀë¸À¤Ë¤ª¤¤¤ÆÊ£¿ô¤ÎÊݸ¥¯¥é¥¹"
-#: c-decl.c:3892
+#: c-decl.c:3674
msgid "function definition declared `auto'"
msgstr "´Ø¿ô¤ÎÄêµÁ¤¬ `auto' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:3894
+#: c-decl.c:3676
msgid "function definition declared `register'"
msgstr "´Ø¿ô¤ÎÄêµÁ¤¬ `register' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:3896
+#: c-decl.c:3678
msgid "function definition declared `typedef'"
msgstr "´Ø¿ô¤ÎÄêµÁ¤¬ `typedef' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:3898
+#: c-decl.c:3680
#, fuzzy
msgid "function definition declared `__thread'"
msgstr "´Ø¿ô¤ÎÄêµÁ¤¬ `typedef' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:3911
+#: c-decl.c:3693
#, c-format
msgid "storage class specified for structure field `%s'"
msgstr "¹½Â¤ÂÎ¥Õ¥£¡¼¥ë¥É `%s' ¤Ë»ØÄꤵ¤ì¤¿µ­²±¥¯¥é¥¹"
-#: c-decl.c:3915 cp/decl.c:11285
+#: c-decl.c:3697 cp/decl.c:7165
#, c-format
msgid "storage class specified for parameter `%s'"
msgstr "²¾°ú¿ô `%s' ¤Ç»ØÄꤵ¤ì¤¿µ­²±¥¯¥é¥¹"
-#: c-decl.c:3918 cp/decl.c:11287
+#: c-decl.c:3700 cp/decl.c:7167
msgid "storage class specified for typename"
msgstr "·¿Ì¾¤ËÂФ·¤Æ»ØÄꤵ¤ì¤¿µ­²±¥¯¥é¥¹"
-#: c-decl.c:3930 cp/decl.c:11302
+#: c-decl.c:3712 cp/decl.c:7182
#, c-format
msgid "`%s' initialized and declared `extern'"
msgstr "`%s' ¤¬½é´ü²½¤µ¤ì¤ë¤È¤³¤í¤Ç¡¢`extern' Àë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:3932 cp/decl.c:11305
+#: c-decl.c:3714 cp/decl.c:7185
#, c-format
msgid "`%s' has both `extern' and initializer"
msgstr "`%s' ¤Ë `extern' ¤È½é´ü²½»Ò¤ÎξÊý¤¬¤¢¤ê¤Þ¤¹"
-#: c-decl.c:3937 cp/decl.c:11313
-#, c-format
-msgid "top-level declaration of `%s' specifies `auto'"
+#: c-decl.c:3719
+#, fuzzy, c-format
+msgid "file-scope declaration of `%s' specifies `auto'"
msgstr "`%s' ¤Î¥È¥Ã¥×¥ì¥Ù¥ë¤ÎÀë¸À¤¬ `auto' ¤ò»ØÄꤷ¤Þ¤¹"
-#: c-decl.c:3942 cp/decl.c:11309
+#: c-decl.c:3724 cp/decl.c:7189
#, c-format
msgid "nested function `%s' declared `extern'"
msgstr "¥Í¥¹¥È¤·¤¿´Ø¿ô `%s' ¤Ï `extern' ¤ËÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:3948 cp/decl.c:11319
+#: c-decl.c:3730 cp/decl.c:7199
#, fuzzy, c-format
msgid "function-scope `%s' implicitly auto and declared `__thread'"
msgstr "´Ø¿ô `%s' ¤ò `mutable' ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
@@ -1087,2791 +1168,2809 @@ msgstr "´Ø¿ô `%s' ¤ò `mutable' ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
#. Only the innermost declarator (making a parameter be of
#. array type which is converted to pointer type)
#. may have static or type qualifiers.
-#: c-decl.c:3987 c-decl.c:4188
+#: c-decl.c:3769 c-decl.c:3962
#, fuzzy
msgid "static or type qualifiers in non-parameter array declarator"
msgstr "²¾°ú¿ôÀë¸À¤ÎÃæ¤Îµ­²±¥¯¥é¥¹»ØÄê»Ò¤Ï̵¸ú¤Ç¤¹"
-#: c-decl.c:4031
+#: c-decl.c:3813
#, c-format
msgid "declaration of `%s' as array of voids"
msgstr "`%s' ¤ÎÀë¸À¤Ï void ¤ÎÇÛÎó"
-#: c-decl.c:4037
+#: c-decl.c:3819
#, c-format
msgid "declaration of `%s' as array of functions"
msgstr "`%s' ¤ÎÀë¸À¤Ï´Ø¿ô¤ÎÇÛÎó"
-#: c-decl.c:4042 c-decl.c:5332
+#: c-decl.c:3824
#, fuzzy
msgid "invalid use of structure with flexible array member"
msgstr "²ÄÊÑÇÛÎó¥á¥ó¥Ð¤ò½é´ü²½¤·¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:4061
+#: c-decl.c:3843
#, c-format
msgid "size of array `%s' has non-integer type"
msgstr "ÇÛÎó `%s' ¤ÎÂ礭¤µ¤ÏÈóÀ°¿ô·¿"
-#: c-decl.c:4066
+#: c-decl.c:3848
#, c-format
msgid "ISO C forbids zero-size array `%s'"
msgstr "ISO C ¤Ï ¥µ¥¤¥º 0 ¤ÎÇÛÎó `%s' ¤ò¶Ø¤¸¤Þ¤¹"
-#: c-decl.c:4073
+#: c-decl.c:3855
#, c-format
msgid "size of array `%s' is negative"
msgstr "ÇÛÎó `%s' ¤ÎÂ礭¤µ¤¬Éé¤Ç¤¹"
-#: c-decl.c:4086
+#: c-decl.c:3868
#, fuzzy, c-format
msgid "ISO C90 forbids array `%s' whose size can't be evaluated"
msgstr "ISO C89 ¤Ï¥µ¥¤¥º¤¬É¾²Á¤Ç¤­¤Ê¤¤ÇÛÎó `%s' ¤ò¶Ø¤¸¤Þ¤¹"
-#: c-decl.c:4089
+#: c-decl.c:3871
#, fuzzy, c-format
msgid "ISO C90 forbids variable-size array `%s'"
msgstr "ISO C89 ¤Ï²ÄÊÑĹ¥µ¥¤¥º¤ÎÇÛÎó `%s' ¤ò¶Ø¤¸¤Þ¤¹"
-#: c-decl.c:4119 c-decl.c:4342 cp/decl.c:11897
+#: c-decl.c:3901 c-decl.c:4116 cp/decl.c:7723
#, c-format
msgid "size of array `%s' is too large"
msgstr "ÇÛÎó `%s' ¤ÎÂ礭¤µ¤¬Â礭¤¹¤®¤Þ¤¹"
-#: c-decl.c:4145
+#: c-decl.c:3927
#, fuzzy
msgid "ISO C90 does not support flexible array members"
msgstr "ISO C89 ¤Ï²ÄÊÑÇÛÎó¥á¥ó¥Ð¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-decl.c:4155
+#: c-decl.c:3937
msgid "array type has incomplete element type"
msgstr "ÇÛÎó¤Î·¿¤¬ÉÔ´°Á´Í×ÁÇ·¿¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:4162 c-decl.c:4392
-msgid "ISO C forbids const or volatile function types"
-msgstr "ISO C ¤Ï const ¤ä volatile ¤Î´Ø¿ô·¿¤ò¶Ø¤¸¤Þ¤¹"
-
-#: c-decl.c:4208 cp/decl.c:11445
+#: c-decl.c:3982 cp/decl.c:7320
#, c-format
msgid "`%s' declared as function returning a function"
msgstr "`%s' ¤Ï´Ø¿ô¤òÊÖ¤¹´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:4213 cp/decl.c:11450
+#: c-decl.c:3987 cp/decl.c:7325
#, c-format
msgid "`%s' declared as function returning an array"
msgstr "`%s' ¤ÏÇÛÎó¤òÊÖ¤¹´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:4241
+#: c-decl.c:4015
msgid "ISO C forbids qualified void function return type"
msgstr "ISO C ¤Ï½¤¾þÉÕ¤­ void ·¿¤ÎÌá¤êÃͤò»ý¤Ä´Ø¿ô¤ò¶Ø¤¸¤Þ¤¹"
-#: c-decl.c:4245
+#: c-decl.c:4019
msgid "type qualifiers ignored on function return type"
msgstr "´Ø¿ôÌá¤êÃͤη¿½¤¾þ»Ò¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:4274 c-decl.c:4357 c-decl.c:4481 c-decl.c:4573
+#: c-decl.c:4048 c-decl.c:4131 c-decl.c:4255 c-decl.c:4341
msgid "ISO C forbids qualified function types"
msgstr "ISO C ¤Ï´Ø¿ô¤Î·¿½¤¾þ»Ò¤ò¶Ø¤¸¤Þ¤¹"
-#: c-decl.c:4314 cp/decl.c:11684
+#: c-decl.c:4088 cp/decl.c:7545
msgid "invalid type modifier within pointer declarator"
msgstr "¥Ý¥¤¥ó¥¿Àë¸À»Ò¤ËÉÔŬÀڤʷ¿½¤¾þ»Ò"
-#: c-decl.c:4412 cp/decl.c:12182
+#: c-decl.c:4166
+msgid "ISO C forbids const or volatile function types"
+msgstr "ISO C ¤Ï const ¤ä volatile ¤Î´Ø¿ô·¿¤ò¶Ø¤¸¤Þ¤¹"
+
+#: c-decl.c:4186 cp/decl.c:8005
#, c-format
msgid "variable or field `%s' declared void"
msgstr "ÊÑ¿ô¤Þ¤¿¤ÏÎΰè `%s' ¤Ï void ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:4445
+#: c-decl.c:4219
#, fuzzy
msgid "attributes in parameter array declarator ignored"
msgstr "²¾°ú¿ôÀë¸À¤ÎÃæ¤Ç `::' ¤ò»È¤¨¤Þ¤»¤ó"
-#: c-decl.c:4470
+#: c-decl.c:4244
#, fuzzy
msgid "invalid type modifier within array declarator"
msgstr "¥Ý¥¤¥ó¥¿Àë¸À»Ò¤ËÉÔŬÀڤʷ¿½¤¾þ»Ò"
-#: c-decl.c:4515
+#: c-decl.c:4289
#, c-format
msgid "field `%s' declared as a function"
msgstr "Îΰè `%s' ¤Ï´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:4521
+#: c-decl.c:4295
#, c-format
msgid "field `%s' has incomplete type"
msgstr "Îΰè `%s' ¤ÏÉÔ´°Á´¤Ê·¿¤Ç¤¹"
-#: c-decl.c:4553 c-decl.c:4555 c-decl.c:4557 c-decl.c:4564
+#: c-decl.c:4321 c-decl.c:4323 c-decl.c:4325 c-decl.c:4332
#, c-format
msgid "invalid storage class for function `%s'"
msgstr "´Ø¿ô `%s' ¤ËÂФ·¤ÆÉÔŬÀÚ¤ÊÊݸ¥¯¥é¥¹"
-#: c-decl.c:4579
+#: c-decl.c:4347
msgid "`noreturn' function returns non-void value"
msgstr "`noreturn' ´Ø¿ô¤¬Èó void ÃͤòÊÖ¤·¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:4594
+#: c-decl.c:4362
msgid "cannot inline function `main'"
msgstr "`main' ¤ò inline ´Ø¿ô¤Ë¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: c-decl.c:4649
-#, c-format
-msgid "variable `%s' declared `inline'"
+#: c-decl.c:4415
+#, fuzzy
+msgid "variable previously declared `static' redeclared `extern'"
+msgstr "ÊÑ¿ô¤Þ¤¿¤ÏÎΰè `%s' ¤Ï void ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
+
+#: c-decl.c:4424
+#, fuzzy
+msgid "%Jvariable '%D' declared `inline'"
msgstr "ÊÑ¿ô `%s' ¤¬ `inline' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
#. A mere warning is sure to result in improper semantics
#. at runtime. Don't bother to allow this to compile.
-#: c-decl.c:4677 cp/decl.c:9951
+#: c-decl.c:4452 cp/decl.c:5877
#, fuzzy
msgid "thread-local storage not supported for this target"
msgstr "-fdata-sections ¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¼õ¤±Æþ¤ì¤é¤ì¤Þ¤»¤ó"
-#: c-decl.c:4732 c-decl.c:5880
+#: c-decl.c:4513 c-decl.c:5470
msgid "function declaration isn't a prototype"
msgstr "´Ø¿ôÀë¸À¤Ï¥×¥í¥È¥¿¥¤¥×¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-decl.c:4738
+#: c-decl.c:4519
msgid "parameter names (without types) in function declaration"
msgstr "´Ø¿ôÀë¸ÀÃæ¤Ë¡Ê·¿¤Î̵¤¤¡Ë²¾°ú¿ô̾¤¬¤¢¤ê¤Þ¤¹"
-#: c-decl.c:4770 c-decl.c:6250
+#: c-decl.c:4547
#, c-format
msgid "parameter `%s' has incomplete type"
msgstr "²¾°ú¿ô `%s' ¤ÏÉÔ´°Á´·¿¤Ç¤¹"
-#: c-decl.c:4773
+#: c-decl.c:4550
msgid "parameter has incomplete type"
msgstr "²¾°ú¿ô¤¬ÉÔ´°Á´·¿¤Ç¤¹"
-#: c-decl.c:4794
-#, c-format
-msgid "parameter `%s' points to incomplete type"
-msgstr "²¾°ú¿ô `%s' ¤ÏÉÔ´°Á´·¿¤ò»Ø¤·¤Æ¤¤¤Þ¤¹"
+#: c-decl.c:4599
+msgid "\"void\" as only parameter may not be qualified"
+msgstr ""
-#: c-decl.c:4797
-msgid "parameter points to incomplete type"
-msgstr "²¾°ú¿ô¤¬ÉÔ´°Á´·¿¤ò»Ø¤·¤Æ¤¤¤Þ¤¹"
+#: c-decl.c:4620
+msgid "\"void\" must be the only parameter"
+msgstr ""
-#: c-decl.c:4862
-#, c-format
-msgid "parameter `%s' has just a forward declaration"
+#: c-decl.c:4637
+#, fuzzy
+msgid "%Jparameter \"%D\" has just a forward declaration"
msgstr "²¾°ú¿ô `%s' ¾¯¤·Á°Êý¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:4903
-msgid "`void' in parameter list must be the entire list"
-msgstr "²¾°ú¿ô¥ê¥¹¥ÈÃæ¤Î `void' ¤Ï¥ê¥¹¥ÈÁ´ÂΤòÀê¤á¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-
-#: c-decl.c:4934
-#, fuzzy, c-format
-msgid "`struct %s' declared inside parameter list"
-msgstr "`%s %s' ¤Ï²¾°ú¿ô¥ê¥¹¥ÈÆâ¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-
-#: c-decl.c:4937
+#. The first %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4665
#, fuzzy, c-format
-msgid "`union %s' declared inside parameter list"
+msgid "\"%s %s\" declared inside parameter list"
msgstr "`%s %s' ¤Ï²¾°ú¿ô¥ê¥¹¥ÈÆâ¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:4940
+#. The %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4669
#, fuzzy, c-format
-msgid "`enum %s' declared inside parameter list"
-msgstr "`%s %s' ¤Ï²¾°ú¿ô¥ê¥¹¥ÈÆâ¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-
-#: c-decl.c:4947
-msgid "anonymous struct declared inside parameter list"
+msgid "anonymous %s declared inside parameter list"
msgstr "̵̾¹½Â¤ÂΤ¬²¾°ú¿ô¥ê¥¹¥ÈÆâ¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:4949
-msgid "anonymous union declared inside parameter list"
-msgstr "̵̾¶¦ÍÑÂΤ¬²¾°ú¿ô¥ê¥¹¥ÈÆâ¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-
-#: c-decl.c:4951
-msgid "anonymous enum declared inside parameter list"
-msgstr "̵̾Îóµó»Ò¤¬²¾°ú¿ô¥ê¥¹¥ÈÆâ¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-
-#: c-decl.c:4955
+#: c-decl.c:4673
#, fuzzy
msgid "its scope is only this definition or declaration, which is probably not what you want"
msgstr "¤½¤Î¥¹¥³¡¼¥×¤ÏÄêµÁ¤«Àë¸À¤À¤±¤Ç¤¹¡¢¶²¤é¤¯Ë¾¤ó¤À¤³¤È¤È°Û¤Ê¤ë¤Ç¤·¤ç¤¦¡£"
-#: c-decl.c:5032
+#: c-decl.c:4758
#, fuzzy, c-format
msgid "redefinition of `union %s'"
msgstr "`%s' ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:5034
+#: c-decl.c:4760
#, fuzzy, c-format
msgid "redefinition of `struct %s'"
msgstr "`%s %s' ¤ÎºÆÄêµÁ"
-#: c-decl.c:5105 cp/decl.c:7532
+#: c-decl.c:4828 cp/decl.c:3521
msgid "declaration does not declare anything"
msgstr "Àë¸À¤¬²¿¤âÀë¸À¤·¤Æ¤¤¤Þ¤»¤ó"
-#: c-decl.c:5169 c-decl.c:5172
+#: c-decl.c:4873 c-decl.c:4889
+#, fuzzy
+msgid "%Jduplicate member '%D'"
+msgstr "½ÅÊ£¤·¤¿¥á¥ó¥Ð `%s'"
+
+#: c-decl.c:4923 c-decl.c:4926
#, c-format
msgid "%s defined inside parms"
msgstr "%s¤¬²¾°ú¿ôÆâ¤ÇÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:5170 c-decl.c:5173 c-decl.c:5184
+#: c-decl.c:4924 c-decl.c:4927 c-decl.c:4938
msgid "union"
msgstr "¶¦ÍÑÂÎ"
-#: c-decl.c:5170 c-decl.c:5173
+#: c-decl.c:4924 c-decl.c:4927
msgid "structure"
msgstr "¹½Â¤ÂÎ"
-#: c-decl.c:5183
+#: c-decl.c:4937
#, c-format
msgid "%s has no %s"
msgstr "%s¤¬%s¤ò»ý¤Ã¤Æ¤¤¤Þ¤»¤ó"
-#: c-decl.c:5184
+#: c-decl.c:4938
msgid "struct"
msgstr "¹½Â¤ÂÎ"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "named members"
msgstr "̾Á°ÉÕ¤­¥á¥ó¥Ð"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "members"
msgstr "¥á¥ó¥Ð"
-#: c-decl.c:5224
+#: c-decl.c:4978
#, c-format
msgid "nested redefinition of `%s'"
msgstr "`%s' ¤Î¥Í¥¹¥È¤·¤¿ºÆÄêµÁ"
-#: c-decl.c:5237
-#, c-format
-msgid "bit-field `%s' width not an integer constant"
-msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤ÎÉý¤¬À°¿ôÄê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-
-#: c-decl.c:5248
-#, c-format
-msgid "bit-field `%s' has invalid type"
-msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤ÏÉÔŬÀڤʷ¿¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹"
-
-#: c-decl.c:5260
-#, c-format
-msgid "bit-field `%s' type invalid in ISO C"
-msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ·¿¤Ï ISO C ¤Ç¤ÏÉÔŬÀڤǤ¹"
-
-#: c-decl.c:5271
-#, c-format
-msgid "negative width in bit-field `%s'"
-msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤ÎÉý¤¬Éé¤Î¿ô¤Ç¤¹"
-
-#: c-decl.c:5273
-#, c-format
-msgid "width of `%s' exceeds its type"
-msgstr "`%s' ¤ÎÉý¤Ï¤½¤Î·¿¤Î¥µ¥¤¥º¤òĶ¤¨¤Æ¤¤¤Þ¤¹"
-
-#: c-decl.c:5275
-#, c-format
-msgid "zero width for bit-field `%s'"
-msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤ÎÉý¤¬ 0 ¤Ç¤¹"
-
-#: c-decl.c:5289
-#, c-format
-msgid "`%s' is narrower than values of its type"
-msgstr "`%s' ¤Ï¤½¤Î·¿¤ÎÃͤè¤ê¤â¶¹¤¤¤Ç¤¹"
-
-#: c-decl.c:5323
-msgid "flexible array member in union"
+#: c-decl.c:4998
+#, fuzzy
+msgid "%Jflexible array member in union"
msgstr "¶¦ÍÑÂΤ˲ÄÊÑÇÛÎó¥á¥ó¥Ð¤¬¤¢¤ê¤Þ¤¹"
-#: c-decl.c:5325
-msgid "flexible array member not at end of struct"
+#: c-decl.c:5000
+#, fuzzy
+msgid "%Jflexible array member not at end of struct"
msgstr "¹½Â¤ÂΤκǸå¤Ç¤Ï¤Ê¤¤½ê¤Ë²ÄÊÑÇÛÎó¥á¥ó¥Ð¤¬¤¢¤ê¤Þ¤¹"
-#: c-decl.c:5327
-msgid "flexible array member in otherwise empty struct"
+#: c-decl.c:5002
+#, fuzzy
+msgid "%Jflexible array member in otherwise empty struct"
msgstr "¹½Â¤ÂΤ˲ÄÊÑÇÛÎó¥á¥ó¥Ð°Ê³°¤Î¥á¥ó¥Ð¤¬¤¢¤ê¤Þ¤»¤ó"
-#: c-decl.c:5357
-#, c-format
-msgid "duplicate member `%s'"
-msgstr "½ÅÊ£¤·¤¿¥á¥ó¥Ð `%s'"
+#: c-decl.c:5007
+#, fuzzy
+msgid "%Jinvalid use of structure with flexible array member"
+msgstr "²ÄÊÑÇÛÎó¥á¥ó¥Ð¤ò½é´ü²½¤·¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:5448
+#: c-decl.c:5102
msgid "union cannot be made transparent"
msgstr "¶¦ÍÑÂΤòÆ©²áŪ¤Ë¤Ç¤­¤Þ¤»¤ó"
#. This enum is a named one that has been declared already.
-#: c-decl.c:5558
+#: c-decl.c:5171
#, c-format
msgid "redeclaration of `enum %s'"
msgstr "`enum %s' ¤ÎºÆÀë¸À"
-#: c-decl.c:5592
+#: c-decl.c:5202
msgid "enum defined inside parms"
msgstr "²¾°ú¿ôÆâ¤Ç enum ¤¬ÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:5625
+#: c-decl.c:5235
msgid "enumeration values exceed range of largest integer"
msgstr "Îóµó»Ò¤ÎÃͤ¬À°¿ô¤ÎÈϰϤκÇÂçÃͤòĶ¤¨¤Þ¤·¤¿"
-#: c-decl.c:5734
+#: c-decl.c:5338
#, c-format
msgid "enumerator value for `%s' not integer constant"
msgstr "`%s' ¤ÎÎóµóÃͤ¬À°¿ôÄê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-decl.c:5747
+#: c-decl.c:5351
msgid "overflow in enumeration values"
msgstr "ÎóµóÃͤ¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼"
-#: c-decl.c:5752
+#: c-decl.c:5356
msgid "ISO C restricts enumerator values to range of `int'"
msgstr "ISO C ¤ÏÎóµó»Ò¤ÎÃͤò `int' ¤ÎÈϰϤ˸ÂÄꤷ¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:5834
+#: c-decl.c:5432
msgid "return type is an incomplete type"
msgstr "Ìá¤êÃͤη¿¤¬ÉÔ´°Á´·¿¤Ç¤¹"
-#: c-decl.c:5842
+#: c-decl.c:5440
msgid "return type defaults to `int'"
msgstr "Ìá¤êÃͤη¿¤ò¥Ç¥Õ¥©¥ë¥È¤Î `int' ¤È¤·¤Þ¤¹"
-#: c-decl.c:5889
-#, c-format
-msgid "no previous prototype for `%s'"
+#: c-decl.c:5476
+#, fuzzy
+msgid "%Jno previous prototype for '%D'"
msgstr "`%s' ¤ÎÁ°Êý¥×¥í¥È¥¿¥¤¥×¤¬¤¢¤ê¤Þ¤»¤ó"
-#: c-decl.c:5896
-#, c-format
-msgid "`%s' was used with no prototype before its definition"
+#: c-decl.c:5482
+#, fuzzy
+msgid "%J'%D' was used with no prototype before its definition"
msgstr "`%s' ¤Ï¤½¤ÎÄêµÁ¤ÎÁ°¤Ë¥×¥í¥È¥¿¥¤¥×¤Ê¤·¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: c-decl.c:5902
-#, c-format
-msgid "no previous declaration for `%s'"
+#: c-decl.c:5489
+#, fuzzy
+msgid "%Jno previous declaration for '%D'"
msgstr "`%s' ¤ÎÁ°ÊýÀë¸À¤¬¤¢¤ê¤Þ¤»¤ó"
-#: c-decl.c:5909
-#, c-format
-msgid "`%s' was used with no declaration before its definition"
+#: c-decl.c:5495
+#, fuzzy
+msgid "%J`%D' was used with no declaration before its definition"
msgstr "`%s' ¤Ï¤½¤ÎÄêµÁ¤ÎÁ°¤ÇÀë¸À¤Ê¤·¤Ç»ÈÍѤµ¤ì¤Þ¤·¤¿"
-#: c-decl.c:5933 c-decl.c:6486
-#, c-format
-msgid "return type of `%s' is not `int'"
+#: c-decl.c:5531 c-decl.c:6037
+#, fuzzy
+msgid "%Jreturn type of '%D' is not `int'"
msgstr "`%s' ¤ÎÌá¤êÃͤη¿¤¬ `int' ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-decl.c:5949
-#, c-format
-msgid "first argument of `%s' should be `int'"
+#: c-decl.c:5546
+#, fuzzy
+msgid "%Jfirst argument of '%D' should be `int'"
msgstr "`%s' ¤ÎÂè°ì°ú¿ô¤Ï `int' ¤È¤¹¤Ù¤­¤Ç¤¹"
-#: c-decl.c:5958
-#, c-format
-msgid "second argument of `%s' should be `char **'"
+#: c-decl.c:5555
+#, fuzzy
+msgid "%Jsecond argument of '%D' should be 'char **'"
msgstr "`%s' ¤ÎÂèÆó°ú¿ô¤Ï `char **' ¤È¤¹¤Ù¤­¤Ç¤¹"
-#: c-decl.c:5967
-#, c-format
-msgid "third argument of `%s' should probably be `char **'"
+#: c-decl.c:5564
+#, fuzzy
+msgid "%Jthird argument of '%D' should probably be 'char **'"
msgstr "`%s' ¤ÎÂè»°°ú¿ô¤Ï¤ª¤½¤é¤¯ `char **' ¤È¤¹¤Ù¤­¤Ç¤·¤ç¤¦"
-#: c-decl.c:5976
-#, c-format
-msgid "`%s' takes only zero or two arguments"
+#: c-decl.c:5574
+#, fuzzy
+msgid "%J'%D' takes only zero or two arguments"
msgstr "`%s' ¤Ï 0 ¤« 2 ¸Ä¤Î°ú¿ô¤·¤«¤È¤ê¤Þ¤»¤ó"
-#: c-decl.c:5979
-#, c-format
-msgid "`%s' is normally a non-static function"
+#: c-decl.c:5577
+#, fuzzy
+msgid "%J'%D' is normally a non-static function"
msgstr "`%s' ¤ÏÄ̾Èó static ¤Ê´Ø¿ô¤Ç¤¹"
-#: c-decl.c:6077
-msgid "parm types given both in parmlist and separately"
-msgstr "²¾°ú¿ô¤Î·¿¤¬¡¢²¾°ú¿ô¥ê¥¹¥È¤È¤ÏÊ̤ΤȤ³¤í¤«¤é¤âÍ¿¤¨¤é¤ì¤Æ¤¤¤Þ¤¹"
+#: c-decl.c:5633
+msgid "%Jold-style parameter declarations in prototyped function definition"
+msgstr ""
-#: c-decl.c:6098
-msgid "parameter name omitted"
+#: c-decl.c:5647
+#, fuzzy
+msgid "%Jparameter name omitted"
msgstr "²¾°ú¿ô¤¬¾Êά¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:6102 c-decl.c:6204
-#, c-format
-msgid "parameter `%s' declared void"
-msgstr "²¾°ú¿ô `%s' ¤¬ void ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-
-#: c-decl.c:6178
-msgid "parameter name missing from parameter list"
+#: c-decl.c:5722
+#, fuzzy
+msgid "%Jparameter name missing from parameter list"
msgstr "²¾°ú¿ô¥ê¥¹¥È¤«¤é¤Î²¾°ú¿ô̾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: c-decl.c:6197
-#, c-format
-msgid "multiple parameters named `%s'"
+#: c-decl.c:5732
+#, fuzzy
+msgid "%J\"%D\" declared as a non-parameter"
+msgstr "`%s %s' ¤Ï²¾°ú¿ô¥ê¥¹¥ÈÆâ¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
+
+#: c-decl.c:5737
+#, fuzzy
+msgid "%Jmultiple parameters named \"%D\""
msgstr "½ÅÊ£¤·¤¿²¾°ú¿ô̾ `%s'"
-#: c-decl.c:6219 c-decl.c:6221
-#, c-format
-msgid "type of `%s' defaults to `int'"
+#: c-decl.c:5745
+#, fuzzy
+msgid "%Jparameter \"%D\" declared void"
+msgstr "²¾°ú¿ô `%s' ¤¬ void ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
+
+#: c-decl.c:5760 c-decl.c:5762
+#, fuzzy
+msgid "%Jtype of \"%D\" defaults to \"int\""
msgstr "`%s' ¤Î·¿¤ò¥Ç¥Õ¥©¥ë¥È¤Î `int' ¤È¤·¤Þ¤¹"
-#: c-decl.c:6257
-#, c-format
-msgid "declaration for parameter `%s' but no such parameter"
+#: c-decl.c:5776
+#, fuzzy
+msgid "%Jparameter \"%D\" has incomplete type"
+msgstr "²¾°ú¿ô¤¬ÉÔ´°Á´·¿¤Ç¤¹"
+
+#: c-decl.c:5782
+#, fuzzy
+msgid "%Jdeclaration for parameter \"%D\" but no such parameter"
msgstr "²¾°ú¿ô `%s' ¤ÎÀë¸À¤¬¤¢¤ê¤Þ¤¹¤¬¡¢¤½¤ó¤Ê²¾°ú¿ô¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-decl.c:6305
+#: c-decl.c:5834
msgid "number of arguments doesn't match prototype"
msgstr "²¾°ú¿ô¤Î¿ô¤¬¥×¥í¥È¥¿¥¤¥×¤È°ìÃפ·¤Þ¤»¤ó"
-#: c-decl.c:6335
-#, c-format
-msgid "promoted argument `%s' doesn't match prototype"
+#: c-decl.c:5835 c-decl.c:5866 c-decl.c:5873
+#, fuzzy
+msgid "%Hprototype declaration"
+msgstr "¶õ¤ÎÀë¸À¤Ç¤¹"
+
+#: c-decl.c:5864
+#, fuzzy
+msgid "promoted argument \"%D\" doesn't match prototype"
msgstr "³Ê¾å¤²¤µ¤ì¤¿²¾°ú¿ô `%s' ¤Ï¥×¥í¥È¥¿¥¤¥×¤È°ìÃפ·¤Þ¤»¤ó"
-#: c-decl.c:6345
-#, c-format
-msgid "argument `%s' doesn't match prototype"
+#: c-decl.c:5872
+#, fuzzy
+msgid "argument \"%D\" doesn't match prototype"
msgstr "²¾°ú¿ô `%s' ¤Ï¥×¥í¥È¥¿¥¤¥×¤Ë°ìÃפ·¤Þ¤»¤ó"
-#: c-decl.c:6518 cp/decl.c:15049
+#: c-decl.c:6069 cp/decl.c:10876
#, fuzzy
msgid "no return statement in function returning non-void"
msgstr "Ìá¤ê·¿¤¬´Ø¿ô¤Ç¡¢`return' ¤ËÃͤ¬¤¢¤ê¤Þ¤»¤ó"
-#: c-decl.c:6525
+#: c-decl.c:6076
msgid "this function may return with or without a value"
msgstr "¤³¤Î´Ø¿ô¤ÏÃͤòÊÖ¤·¤¿¤êÊÖ¤µ¤Ê¤«¤Ã¤¿¤ê¤¹¤ë¤Ç¤·¤ç¤¦"
-#: c-decl.c:6729
-#, c-format
-msgid "size of return value of `%s' is %u bytes"
-msgstr "`%s' ¤ÎÌá¤êÃͤΥµ¥¤¥º¤¬ %u ¥Ð¥¤¥È¤Ç¤¹"
-
-#: c-decl.c:6733
-#, c-format
-msgid "size of return value of `%s' is larger than %d bytes"
-msgstr "`%s' ¤ÎÌá¤êÃͤΥµ¥¤¥º¤¬ %d ¥Ð¥¤¥È¤è¤ê¤âÂ礭¤¯¤Ê¤ê¤Þ¤¹"
-
#. If we get here, declarations have been used in a for loop without
#. the C99 for loop scope. This doesn't make much sense, so don't
#. allow it.
-#: c-decl.c:6791
-msgid "`for' loop initial declaration used outside C99 mode"
+#: c-decl.c:6175
+#, fuzzy
+msgid "'for' loop initial declaration used outside C99 mode"
msgstr "`for' ¥ë¡¼¥×¤Î½é´ü²½Àë¸À¤¬ C99 ¥â¡¼¥É°Ê³°¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: c-decl.c:6815
+#: c-decl.c:6199
#, fuzzy, c-format
-msgid "`struct %s' declared in `for' loop initial declaration"
+msgid "'struct %s' declared in 'for' loop initial declaration"
msgstr "`%s %s' ¤¬ `for' ¥ë¡¼¥×½é´ü²½Àë¸ÀÆâ¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:6818
+#: c-decl.c:6202
#, fuzzy, c-format
-msgid "`union %s' declared in `for' loop initial declaration"
+msgid "'union %s' declared in 'for' loop initial declaration"
msgstr "`%s %s' ¤¬ `for' ¥ë¡¼¥×½é´ü²½Àë¸ÀÆâ¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:6821
+#: c-decl.c:6205
#, fuzzy, c-format
-msgid "`enum %s' declared in `for' loop initial declaration"
+msgid "'enum %s' declared in 'for' loop initial declaration"
msgstr "`%s %s' ¤¬ `for' ¥ë¡¼¥×½é´ü²½Àë¸ÀÆâ¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: c-decl.c:6829
-#, c-format
-msgid "declaration of non-variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6213
+#, fuzzy
+msgid "%Jdeclaration of non-variable '%D' in 'for' loop initial declaration"
msgstr "ÈóÊÑ¿ô `%s' ¤ÎÀë¸À¤¬ `for' ¥ë¡¼¥×½é´ü²½Àë¸À¤ÎÃæ¤Ë¤¢¤ê¤Þ¤¹"
-#: c-decl.c:6831
-#, c-format
-msgid "declaration of static variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6216
+#, fuzzy
+msgid "%Jdeclaration of static variable '%D' in 'for' loop initial declaration"
msgstr "¥¹¥¿¥Æ¥£¥Ã¥¯ÊÑ¿ô `%s' ¤ÎÀë¸À¤¬ `for' ¥ë¡¼¥×½é´ü²½Àë¸ÀÆâ¤Ë¤¢¤ê¤Þ¤¹"
-#: c-decl.c:6833
-#, c-format
-msgid "declaration of `extern' variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6219
+#, fuzzy
+msgid "%Jdeclaration of 'extern' variable '%D' in 'for' loop initial declaration"
msgstr "`extern' ÊÑ¿ô `%s' ¤ÎÀë¸À¤¬ `for' ¥ë¡¼¥×½é´ü²½Àë¸ÀÆâ¤Ë¤¢¤ê¤Þ¤¹"
-#: c-format.c:109 c-format.c:191
-msgid "format string arg not a string type"
-msgstr "¥Õ¥©¡¼¥Þ¥Ã¥Èʸ»úÎó°ú¿ô¤¬Ê¸»úÎ󷿤ǤϤ¢¤ê¤Þ¤»¤ó"
-
-#: c-format.c:124
-msgid "args to be formatted is not '...'"
-msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤µ¤ì¤ë°ú¿ô¤¬¡¢'...' ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤»¤ó"
+#: c-decl.c:6532
+#, fuzzy
+msgid "%Jredefinition of global '%D'"
+msgstr "`%s' ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-#: c-format.c:133
-msgid "strftime formats cannot format arguments"
-msgstr "strftime ¥Õ¥©¡¼¥Þ¥Ã¥È¤Ï°ú¿ô¤ò¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç¤­¤Þ¤»¤ó"
+#: c-decl.c:6533
+#, fuzzy
+msgid "%J'%D' previously defined here"
+msgstr "`%s' ¤ÏÁ°¤Ë¤³¤³¤ÇÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-#: c-format.c:168 c-format.c:270
+#: c-format.c:94 c-format.c:210
msgid "format string has invalid operand number"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥Èʸ»úÎó¤ËÉÔŬÀڤʥª¥Ú¥é¥ó¥É¿ô¤¬¤¢¤ê¤Þ¤¹"
-#: c-format.c:202
+#: c-format.c:111
msgid "function does not return string type"
msgstr "´Ø¿ô¤¬Ê¸»úÎ󷿤òÊÖ¤·¤Þ¤»¤ó"
-#: c-format.c:233
+#: c-format.c:140
+msgid "format string arg not a string type"
+msgstr "¥Õ¥©¡¼¥Þ¥Ã¥Èʸ»úÎó°ú¿ô¤¬Ê¸»úÎ󷿤ǤϤ¢¤ê¤Þ¤»¤ó"
+
+#: c-format.c:190
msgid "unrecognized format specifier"
msgstr "ǧ¼±¤Ç¤­¤Ê¤¤¥Õ¥©¡¼¥Þ¥Ã¥È»ØÄê»Ò"
-#: c-format.c:246
+#: c-format.c:203
#, c-format
msgid "`%s' is an unrecognized format function type"
msgstr "`%s' ¤Ïǧ¼±¤Ç¤­¤Ê¤¤¥Õ¥©¡¼¥Þ¥Ã¥È´Ø¿ô·¿¤Ç¤¹"
-#: c-format.c:280
+#: c-format.c:216
+#, fuzzy
+msgid "'...' has invalid operand number"
+msgstr "¥Õ¥©¡¼¥Þ¥Ã¥Èʸ»úÎó¤ËÉÔŬÀڤʥª¥Ú¥é¥ó¥É¿ô¤¬¤¢¤ê¤Þ¤¹"
+
+#: c-format.c:224
msgid "format string arg follows the args to be formatted"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥Èʸ»úÎó°ú¿ô¤¬¥Õ¥©¡¼¥Þ¥Ã¥È¤µ¤ì¤ë°ú¿ô¤Î¸å¤Ë³¤¤¤Æ¤¤¤Þ¤¹"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "` ' flag"
msgstr "` ' ¥Õ¥é¥°"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "the ` ' printf flag"
msgstr "printf ¤Î ` ' ¥Õ¥é¥°"
-#: c-format.c:602 c-format.c:673
+#: c-format.c:566 c-format.c:590 c-format.c:627 c-format.c:683
msgid "`+' flag"
msgstr "`+' ¥Õ¥é¥°"
-#: c-format.c:602
+#: c-format.c:566 c-format.c:590 c-format.c:627
msgid "the `+' printf flag"
msgstr "printf ¤Î `+' ¥Õ¥é¥°"
-#: c-format.c:603 c-format.c:649
+#: c-format.c:567 c-format.c:591 c-format.c:628 c-format.c:659
msgid "`#' flag"
msgstr "`#' ¥Õ¥é¥°"
-#: c-format.c:603
+#: c-format.c:567 c-format.c:591 c-format.c:628
msgid "the `#' printf flag"
msgstr "printf ¤Î `#' ¥Õ¥é¥°"
-#: c-format.c:604 c-format.c:647
+#: c-format.c:568 c-format.c:592 c-format.c:657
msgid "`0' flag"
msgstr "`0' ¥Õ¥é¥°"
-#: c-format.c:604
+#: c-format.c:568 c-format.c:592
msgid "the `0' printf flag"
msgstr "printf ¤Î `0' ¥Õ¥é¥°"
-#: c-format.c:605 c-format.c:646 c-format.c:676
+#: c-format.c:569 c-format.c:593 c-format.c:656 c-format.c:686
msgid "`-' flag"
msgstr "`-' ¥Õ¥é¥°"
-#: c-format.c:605
+#: c-format.c:569 c-format.c:593
msgid "the `-' printf flag"
msgstr "printf ¤Î `-' ¥Õ¥é¥°"
-#: c-format.c:606 c-format.c:630
+#: c-format.c:570 c-format.c:640
msgid "`'' flag"
msgstr "`'' ¥Õ¥é¥°"
-#: c-format.c:606
+#: c-format.c:570
msgid "the `'' printf flag"
msgstr "printf ¤Î `'' ¥Õ¥é¥°"
-#: c-format.c:607 c-format.c:631
+#: c-format.c:571 c-format.c:641
msgid "`I' flag"
msgstr "`I' ¥Õ¥é¥°"
-#: c-format.c:607
+#: c-format.c:571
msgid "the `I' printf flag"
msgstr "printf ¤Î `I' ¥Õ¥é¥°"
-#: c-format.c:608 c-format.c:628 c-format.c:650 c-format.c:677 c-format.c:1702
+#: c-format.c:572 c-format.c:594 c-format.c:638 c-format.c:660 c-format.c:687
+#: c-format.c:1802
msgid "field width"
msgstr "¥Õ¥£¡¼¥ë¥ÉÉý"
-#: c-format.c:608
+#: c-format.c:572 c-format.c:594
msgid "field width in printf format"
msgstr "printf ¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç¤Î¥Õ¥£¡¼¥ë¥ÉÉý"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision"
msgstr "ÀºÅÙ"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision in printf format"
msgstr "printf ¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç¤ÎÀºÅÙ"
-#: c-format.c:610 c-format.c:629 c-format.c:680
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630 c-format.c:639
+#: c-format.c:690
msgid "length modifier"
msgstr "Ťµ½¤¾þ»Ò"
-#: c-format.c:610
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630
msgid "length modifier in printf format"
msgstr "printf ¥Õ¥©¡¼¥Þ¥Ã¥È¤ÎŤµ½¤¾þ»Ò"
-#: c-format.c:626
+#: c-format.c:636
msgid "assignment suppression"
msgstr "ÂåÆþ¤ÎÍÞÀ©"
-#: c-format.c:626
+#: c-format.c:636
#, fuzzy
msgid "the assignment suppression scanf feature"
msgstr "ÂåÆþ¤ÎÍÞÀ©"
-#: c-format.c:627
+#: c-format.c:637
msgid "`a' flag"
msgstr "`a' ¥Õ¥é¥°"
-#: c-format.c:627
+#: c-format.c:637
msgid "the `a' scanf flag"
msgstr "scanf ¤Î `a' ¥Õ¥é¥°"
-#: c-format.c:628
+#: c-format.c:638
msgid "field width in scanf format"
msgstr "scanf ¥Õ¥©¡¼¥Þ¥Ã¥È¤Î¥Õ¥£¡¼¥ë¥ÉÉý"
-#: c-format.c:629
+#: c-format.c:639
msgid "length modifier in scanf format"
msgstr "scanf ¥Õ¥©¡¼¥Þ¥Ã¥È¤ÎŤµ½¤¾þ»Ò"
-#: c-format.c:630
+#: c-format.c:640
msgid "the `'' scanf flag"
msgstr "scanf ¤Î `'' ¥Õ¥é¥°"
-#: c-format.c:631
+#: c-format.c:641
msgid "the `I' scanf flag"
msgstr "scanf ¤Î `I' ¥Õ¥é¥°"
-#: c-format.c:645
+#: c-format.c:655
msgid "`_' flag"
msgstr "`_' ¥Õ¥é¥°"
-#: c-format.c:645
+#: c-format.c:655
msgid "the `_' strftime flag"
msgstr "strftime ¤Î `_' ¥Õ¥é¥°"
-#: c-format.c:646
+#: c-format.c:656
msgid "the `-' strftime flag"
msgstr "strftime ¤Î `-' ¥Õ¥é¥°"
-#: c-format.c:647
+#: c-format.c:657
msgid "the `0' strftime flag"
msgstr "strftime ¤Î `^' ¥Õ¥é¥°"
-#: c-format.c:648 c-format.c:672
+#: c-format.c:658 c-format.c:682
msgid "`^' flag"
msgstr "`^' ¥Õ¥é¥°"
-#: c-format.c:648
+#: c-format.c:658
msgid "the `^' strftime flag"
msgstr "strftime ¤Î `^' ¥Õ¥é¥°"
-#: c-format.c:649
+#: c-format.c:659
msgid "the `#' strftime flag"
msgstr "strftime ¤Î `#' ¥Õ¥é¥°"
-#: c-format.c:650
+#: c-format.c:660
msgid "field width in strftime format"
msgstr "strftime ¥Õ¥©¡¼¥Þ¥Ã¥È¤Î¥Õ¥£¡¼¥ë¥ÉÉý"
-#: c-format.c:651
+#: c-format.c:661
msgid "`E' modifier"
msgstr "`E' ½¤¾þ»Ò"
-#: c-format.c:651
+#: c-format.c:661
msgid "the `E' strftime modifier"
msgstr "strftime ¤Î `E' ½¤¾þ»Ò"
-#: c-format.c:652
+#: c-format.c:662
msgid "`O' modifier"
msgstr "`O' ½¤¾þ»Ò"
-#: c-format.c:652
+#: c-format.c:662
msgid "the `O' strftime modifier"
msgstr "strftime ¤Î `O' ½¤¾þ»Ò"
-#: c-format.c:653
+#: c-format.c:663
msgid "the `O' modifier"
msgstr "the `O' ½¤¾þ»Ò"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character"
msgstr "µÍ¤áʸ»ú"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character in strfmon format"
msgstr "strfmon ¥Õ¥©¡¼¥Þ¥Ã¥È¤ÎµÍ¤áʸ»ú"
-#: c-format.c:672
+#: c-format.c:682
msgid "the `^' strfmon flag"
msgstr "strfmon ¤Î `^' ¥Õ¥é¥°"
-#: c-format.c:673
+#: c-format.c:683
msgid "the `+' strfmon flag"
msgstr "strfmon ¤Î `+' ¥Õ¥é¥°"
-#: c-format.c:674
+#: c-format.c:684
msgid "`(' flag"
msgstr "`(' ¥Õ¥é¥°"
-#: c-format.c:674
+#: c-format.c:684
msgid "the `(' strfmon flag"
msgstr "strfmon ¤Î `(' ¥Õ¥é¥°"
-#: c-format.c:675
+#: c-format.c:685
msgid "`!' flag"
msgstr "`!' ¥Õ¥é¥°"
-#: c-format.c:675
+#: c-format.c:685
msgid "the `!' strfmon flag"
msgstr "strfmon ¤Î `!' ¥Õ¥é¥°"
-#: c-format.c:676
+#: c-format.c:686
msgid "the `-' strfmon flag"
msgstr "strfmon ¤Î `-' ¥Õ¥é¥°"
-#: c-format.c:677
+#: c-format.c:687
msgid "field width in strfmon format"
msgstr "strfmon ¥Õ¥©¡¼¥Þ¥Ã¥È¤Î¥Õ¥£¡¼¥ë¥ÉÉý"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision"
msgstr "º¸ÀºÅÙ"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision in strfmon format"
msgstr "strfmon ¥Õ¥©¡¼¥Þ¥Ã¥È¤Îº¸ÀºÅÙ"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision"
msgstr "±¦ÀºÅÙ"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision in strfmon format"
msgstr "strfmon ¥Õ¥©¡¼¥Þ¥Ã¥È¤Î±¦ÀºÅÙ"
-#: c-format.c:680
+#: c-format.c:690
msgid "length modifier in strfmon format"
msgstr "strfmon ¥Õ¥©¡¼¥Þ¥Ã¥È¤ÎŤµ½¤¾þ»Ò"
-#: c-format.c:983
+#: c-format.c:1107
#, c-format
msgid "function might be possible candidate for `%s' format attribute"
msgstr "´Ø¿ô¤Ï¶²¤é¤¯ `%s' format °À­¤Î¸õÊä¤È»×¤ï¤ì¤Þ¤¹"
-#: c-format.c:1107 c-format.c:1128 c-format.c:2112
+#: c-format.c:1223 c-format.c:1244 c-format.c:2212
msgid "missing $ operand number in format"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥ÈÆâ¤Ç $ ±é»»»ÒÈÖ¹æ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: c-format.c:1138
+#: c-format.c:1254
#, c-format
msgid "%s does not support %%n$ operand number formats"
msgstr "%s ¤Ï %%n$ ±é»»»ÒÈÖ¹æ¥Õ¥©¡¼¥Þ¥Ã¥È¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-format.c:1145
+#: c-format.c:1261
msgid "operand number out of range in format"
msgstr "±é»»»ÒÈֹ椬¥Õ¥©¡¼¥Þ¥Ã¥È¤ÎÈϰϳ°¤Ç¤¹"
-#: c-format.c:1168
+#: c-format.c:1284
#, c-format
msgid "format argument %d used more than once in %s format"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È°ú¿ô %d ¤¬ %s ¥Õ¥©¡¼¥Þ¥Ã¥ÈÃæ¤ÇÆó²ó°Ê¾å»È¤ï¤ì¤Þ¤·¤¿"
-#: c-format.c:1218
+#: c-format.c:1331
#, c-format
msgid "format argument %d unused before used argument %d in $-style format"
msgstr "$-¼°¥Õ¥©¡¼¥Þ¥Ã¥ÈÆâ¤Î¥Õ¥©¡¼¥Þ¥Ã¥È°ú¿ô %d ¤¬°ú¿ô %d ¤¬»È¤ï¤ì¤ëÁ°¤Ç̤»ÈÍѤǤ¹"
-#: c-format.c:1322
+#: c-format.c:1429
msgid "format not a string literal, format string not checked"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤¬Ê¸»úÎó¥ê¥Æ¥é¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤Î¤Ç¡¢¥Õ¥©¡¼¥Þ¥Ã¥È¤Ï¸¡ºº¤µ¤ì¤Þ¤»¤ó"
-#: c-format.c:1336
+#: c-format.c:1443
msgid "format not a string literal and no format arguments"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤ÏÈóʸ»úÎó¥ê¥Æ¥é¥ë¤Ç¡¢³î¤Ä¥Õ¥©¡¼¥Þ¥Ã¥È°ú¿ô¤ò»ý¤Á¤Þ¤»¤ó"
-#: c-format.c:1338
+#: c-format.c:1445
msgid "format not a string literal, argument types not checked"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤Ïʸ»úÎó¥ê¥Æ¥é¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤Î¤Ç¡¢°ú¿ô¤Î·¿¤Ï¸¡ºº¤µ¤ì¤Þ¤»¤ó"
-#: c-format.c:1351
+#: c-format.c:1458
msgid "too many arguments for format"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤Ø¤Î°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹"
-#: c-format.c:1354
+#: c-format.c:1461
msgid "unused arguments in $-style format"
msgstr "$-¼°¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç̤»ÈÍѤΰú¿ô¤¬¤¢¤ê¤Þ¤¹"
-#: c-format.c:1357
+#: c-format.c:1464
#, fuzzy, c-format
msgid "zero-length %s format string"
msgstr "Ťµ 0 ¤Î¥Õ¥©¡¼¥Þ¥Ã¥Èʸ»úÎó"
-#: c-format.c:1361
+#: c-format.c:1468
msgid "format is a wide character string"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤¬¥ï¥¤¥Éʸ»úÎó¤Ç¤¹"
-#: c-format.c:1364
+#: c-format.c:1471
msgid "unterminated format string"
msgstr "½ªÃ¼¤µ¤ì¤Æ¤¤¤Ê¤¤¥Õ¥©¡¼¥Þ¥Ã¥Èʸ»úÎó"
-#: c-format.c:1581
+#: c-format.c:1681
msgid "embedded `\\0' in format"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤Ë `\\0' ¤¬Ëä¤á¹þ¤Þ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-format.c:1596
+#: c-format.c:1696
#, c-format
msgid "spurious trailing `%%' in format"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤Ë `%%' ¤Îº¯Àפ餷¤­¤â¤Î¤¬¤¢¤ê¤Þ¤¹"
-#: c-format.c:1635 c-format.c:1872
+#: c-format.c:1735 c-format.c:1972
#, c-format
msgid "repeated %s in format"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥ÈÃæ¤Ç %s ¤ò·«¤êÊÖ¤·¤Æ¤¤¤Þ¤¹"
-#: c-format.c:1648
+#: c-format.c:1748
msgid "missing fill character at end of strfmon format"
msgstr "strfmon ¥Õ¥©¡¼¥Þ¥Ã¥È¤Î½ª¤ê¤ÇµÍ¤áʸ»ú¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: c-format.c:1687 c-format.c:1786 c-format.c:2066 c-format.c:2119
+#: c-format.c:1787 c-format.c:1886 c-format.c:2166 c-format.c:2219
msgid "too few arguments for format"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤Ø¤Î°ú¿ô¤¬¾¯¤Ê¤¹¤®¤Þ¤¹"
-#: c-format.c:1728
+#: c-format.c:1828
#, c-format
msgid "zero width in %s format"
msgstr "%s ¤ÇÉý 0 ¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç¤¹"
-#: c-format.c:1747
+#: c-format.c:1847
#, c-format
msgid "empty left precision in %s format"
msgstr "%s ¤Ç¶õ¤Îº¸ÀºÅÙ¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç¤¹"
-#: c-format.c:1801
+#: c-format.c:1901
msgid "field precision"
msgstr "¥Õ¥£¡¼¥ë¥ÉÀºÅÙ"
-#: c-format.c:1816
+#: c-format.c:1916
#, c-format
msgid "empty precision in %s format"
msgstr "%s ¤Ç¶õ¤ÎÀºÅÙ¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç¤¹"
-#: c-format.c:1856
+#: c-format.c:1956
#, c-format
msgid "%s does not support the `%s' %s length modifier"
msgstr "%s ¤Ï `%s' %s Ťµ½¤¾þ»Ò¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-format.c:1906
+#: c-format.c:2006
msgid "conversion lacks type at end of format"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤Î½ª¤ê¤Ç·¿ÊÑ´¹Ê¸»ú¤¬·ç¤±¤Æ¤¤¤Þ¤¹"
-#: c-format.c:1917
+#: c-format.c:2017
#, c-format
msgid "unknown conversion type character `%c' in format"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥ÈÆâ¤ËÉÔÌÀ¤Ê·¿ÊÑ´¹Ê¸»ú `%c' ¤¬¤¢¤ê¤Þ¤¹"
-#: c-format.c:1920
+#: c-format.c:2020
#, c-format
msgid "unknown conversion type character 0x%x in format"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥ÈÆâ¤ËÉÔÌÀ¤Ê·¿ÊÑ´¹Ê¸»ú 0x%x ¤¬¤¢¤ê¤Þ¤¹"
-#: c-format.c:1927
+#: c-format.c:2027
#, c-format
msgid "%s does not support the `%%%c' %s format"
msgstr "%s ¤Ï `%%%c' %s ¥Õ¥©¡¼¥Þ¥Ã¥È¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-format.c:1943
+#: c-format.c:2043
#, c-format
msgid "%s used with `%%%c' %s format"
msgstr "%s ¤¬ `%%%c' %s ¥Õ¥©¡¼¥Þ¥Ã¥È¤È°ì½ï¤Ë»È¤ï¤ì¤Þ¤·¤¿"
-#: c-format.c:1952
+#: c-format.c:2052
#, c-format
msgid "%s does not support %s"
msgstr "%s ¤Ï %s ¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-format.c:1961
+#: c-format.c:2061
#, c-format
msgid "%s does not support %s with the `%%%c' %s format"
msgstr "%s ¤Ï %s ¤ò `%%%c' %s ¥Õ¥©¡¼¥Þ¥Ã¥È¤È°ì½ï¤Ë»È¤¦»ö¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-format.c:1994
+#: c-format.c:2094
#, c-format
msgid "%s ignored with %s and `%%%c' %s format"
msgstr "%s ¤Ï %s µÚ¤Ó `%%%c' %s ¥Õ¥©¡¼¥Þ¥Ã¥È¤È°ì½ï¤Ë»È¤¦¤È̵»ë¤µ¤ì¤Þ¤¹"
-#: c-format.c:1998
+#: c-format.c:2098
#, c-format
msgid "%s ignored with %s in %s format"
msgstr "%s ¤Ï %s ¤ò %s ¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç°ì½ï¤Ë»È¤¦¤È̵»ë¤µ¤ì¤Þ¤¹"
-#: c-format.c:2004
+#: c-format.c:2104
#, c-format
msgid "use of %s and %s together with `%%%c' %s format"
msgstr "%s ¤È %s ¤È¤ò `%%%c' %s ¥Õ¥©¡¼¥Þ¥Ã¥È¤È°ì½ï¤Ë»È¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-format.c:2008
+#: c-format.c:2108
#, c-format
msgid "use of %s and %s together in %s format"
msgstr "%s ¤È %s ¤È¤ò %s ¥Õ¥©¡¼¥Þ¥Ã¥È¤ÎÃæ¤Ç»È¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-format.c:2027
+#: c-format.c:2127
#, c-format
msgid "`%%%c' yields only last 2 digits of year in some locales"
msgstr "`%%%c' ¤Ï¥í¥±¡¼¥ë¤Ë¤è¤Ã¤Æ¤Ï¡¢Ç¯¤Î²¼Æó·å¤À¤±¤ò¤â¤¿¤é¤·¤Þ¤¹"
-#: c-format.c:2030
+#: c-format.c:2130
#, c-format
msgid "`%%%c' yields only last 2 digits of year"
msgstr "`%%%c' ¤Ïǯ¤Î²¼Æó·å¤À¤±¤ò¤â¤¿¤é¤·¤Þ¤¹"
#. The end of the format string was reached.
-#: c-format.c:2046
+#: c-format.c:2146
#, c-format
msgid "no closing `]' for `%%[' format"
msgstr "`%%[' ¥Õ¥©¡¼¥Þ¥Ã¥È¤òÊĤ¸¤ë `]' ¤¬¤¢¤ê¤Þ¤»¤ó"
-#: c-format.c:2059
+#: c-format.c:2159
#, c-format
msgid "use of `%s' length modifier with `%c' type character"
msgstr "`%s' Ťµ½¤¾þ»Ò¤ò `%c' ·¿ÊÑ´¹Ê¸»ú¤È°ì½ï¤Ë»È¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-format.c:2080
+#: c-format.c:2180
#, c-format
msgid "%s does not support the `%%%s%c' %s format"
msgstr "%s ¤Ï `%%%s%c' %s ¥Õ¥©¡¼¥Þ¥Ã¥È¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-format.c:2095
+#: c-format.c:2195
msgid "operand number specified with suppressed assignment"
msgstr "±é»»»ÒÈֹ椬ÂåÆþ¤ÎÍÞÀ©¤È¶¦¤Ë»È¤ï¤ì¤Æ¤¤¤Þ¤¹"
-#: c-format.c:2097
+#: c-format.c:2197
msgid "operand number specified for format taking no argument"
msgstr "±é»»»ÒÈֹ椬°ú¿ô¤ò¼è¤é¤Ê¤¤¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: c-format.c:2211
+#: c-format.c:2309
#, c-format
msgid "writing through null pointer (arg %d)"
msgstr "null ¥Ý¥¤¥ó¥¿¤ò½ñ¤­¹þ¤ó¤Ç¤¤¤Þ¤¹ (°ú¿ô %d)"
-#: c-format.c:2220
+#: c-format.c:2318
#, c-format
msgid "reading through null pointer (arg %d)"
msgstr "null ¥Ý¥¤¥ó¥¿¤òÆɹþ¤ó¤Ç¤¤¤Þ¤¹ (°ú¿ô %d)"
-#: c-format.c:2240
+#: c-format.c:2338
#, c-format
msgid "writing into constant object (arg %d)"
msgstr "Äê¿ô¥ª¥Ö¥¸¥§¥¯¥È¤Ë½ñ¤­¹þ¤ó¤Ç¤¤¤Þ¤¹ (°ú¿ô %d)"
-#: c-format.c:2250
+#: c-format.c:2348
#, c-format
msgid "extra type qualifiers in format argument (arg %d)"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È°ú¿ô¤Ë;ʬ¤Ê·¿½¤¾þ»Ò¤¬¤¢¤ê¤Þ¤¹ (°ú¿ô %d)"
-#: c-format.c:2257
+#: c-format.c:2355
#, c-format
msgid "format argument is not a pointer (arg %d)"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È°ú¿ô¤¬¥Ý¥¤¥ó¥¿¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó (°ú¿ô %d)"
-#: c-format.c:2259
+#: c-format.c:2357
#, c-format
msgid "format argument is not a pointer to a pointer (arg %d)"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È°ú¿ô¤¬¥Ý¥¤¥ó¥¿¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó (°ú¿ô %d)"
-#: c-format.c:2330
+#: c-format.c:2433
msgid "pointer"
msgstr ""
-#: c-format.c:2332
+#: c-format.c:2435
#, fuzzy
msgid "different type"
msgstr "̵¸ú¤Ê»²¾È·¿¤Ç¤¹"
-#: c-format.c:2353
+#: c-format.c:2456
#, c-format
msgid "%s is not type %s (arg %d)"
msgstr "%s ¤Ï·¿ %s ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó (°ú¿ô %d)"
-#: c-format.c:2356
+#: c-format.c:2459
#, c-format
msgid "%s format, %s arg (arg %d)"
msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤Ï %s ¤Ç¤¹¤¬¡¢°ú¿ô¤Ï %s ¤Ç¤¹ (°ú¿ô %d)"
-#: c-lex.c:153
-#, fuzzy
-msgid "YYDEBUG not defined"
-msgstr "YYDEBUG ¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+#: c-format.c:2704
+msgid "args to be formatted is not '...'"
+msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤µ¤ì¤ë°ú¿ô¤¬¡¢'...' ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤»¤ó"
+
+#: c-format.c:2713
+msgid "strftime formats cannot format arguments"
+msgstr "strftime ¥Õ¥©¡¼¥Þ¥Ã¥È¤Ï°ú¿ô¤ò¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç¤­¤Þ¤»¤ó"
+
+#: c-incpath.c:68
+#, c-format
+msgid "ignoring duplicate directory \"%s\"\n"
+msgstr "½ÅÊ£¤·¤¿¥Ç¥£¥ì¥¯¥È¥ê \"%s\" ¤ò̵»ë¤·¤Þ¤¹\n"
+
+#: c-incpath.c:71
+#, c-format
+msgid " as it is a non-system directory that duplicates a system directory\n"
+msgstr ""
-#: c-lex.c:293
+#: c-incpath.c:75
+#, c-format
+msgid "ignoring nonexistent directory \"%s\"\n"
+msgstr "¸ºß¤·¤Ê¤¤¥Ç¥£¥ì¥¯¥È¥ê \"%s\" ¤ò̵»ë¤·¤Þ¤¹\n"
+
+#: c-incpath.c:273
+#, c-format
+msgid "#include \"...\" search starts here:\n"
+msgstr "#include \"...\" ¤Îõº÷¤Ï¤³¤³¤«¤é»Ï¤Þ¤ê¤Þ¤¹:\n"
+
+#: c-incpath.c:277
+#, c-format
+msgid "#include <...> search starts here:\n"
+msgstr "#include <...> ¤Îõº÷¤Ï¤³¤³¤«¤é»Ï¤Þ¤ê¤Þ¤¹:\n"
+
+#: c-incpath.c:282
+#, c-format
+msgid "End of search list.\n"
+msgstr "õº÷¥ê¥¹¥È¤Î½ª¤ï¤ê\n"
+
+#: c-lex.c:240
msgid "badly nested C headers from preprocessor"
msgstr "¥×¥ê¥×¥í¥»¥Ã¥µ¤«¤é°Û¾ï¤Ë¥Í¥¹¥È¤µ¤ì¤¿ C ¥Ø¥Ã¥À¤Ç¤¹"
-#: c-lex.c:336
+#: c-lex.c:281
#, c-format
msgid "ignoring #pragma %s %s"
msgstr "#pragma %s %s ¤ò̵»ë¤·¤Þ¤¹"
-#: c-lex.c:386
-#, c-format
-msgid "universal-character-name '\\U%08x' not valid in identifier"
-msgstr "¥æ¥Ë¥Ð¡¼¥µ¥ëʸ»ú̾ `\\U%08x' ¤Ï¼±Ê̻ҤÎÃæ¤Ç¤ÏÍ­¸ú¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+#. ... or not.
+#: c-lex.c:385
+#, fuzzy
+msgid "%Hstray '@' in program"
+msgstr "¥×¥í¥°¥é¥à¤È¤·¤Æ°ï椷¤¿Ê¸»ú '%c'"
-#: c-lex.c:632
+#: c-lex.c:393
#, c-format
-msgid "universal-character-name '\\u%04x' not valid in identifier"
-msgstr "¥æ¥Ë¥Ð¡¼¥µ¥ëʸ»ú̾ `\\u%04x' ¤Ï¼±Ê̻ҤÎÃæ¤Ç¤ÏÍ­¸ú¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+msgid "missing terminating %c character"
+msgstr "%c ʸ»ú¤Ç¤Î½ªÃ¼¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: c-lex.c:695
+#: c-lex.c:395
#, c-format
msgid "stray '%c' in program"
msgstr "¥×¥í¥°¥é¥à¤È¤·¤Æ°ï椷¤¿Ê¸»ú '%c'"
-#: c-lex.c:697
+#: c-lex.c:397
#, c-format
msgid "stray '\\%o' in program"
msgstr "¥×¥í¥°¥é¥à¤È¤·¤Æ°ï椷¤¿Ê¸»ú '\\%o'"
-#: c-lex.c:854
+#: c-lex.c:535
msgid "this decimal constant is unsigned only in ISO C90"
msgstr ""
-#: c-lex.c:857
+#: c-lex.c:538
msgid "this decimal constant would be unsigned in ISO C90"
msgstr ""
-#: c-lex.c:873
+#: c-lex.c:554
#, fuzzy, c-format
msgid "integer constant is too large for \"%s\" type"
msgstr "À°¿ôÄê¿ô¤¬Â礭¤¹¤®¤ë¤Î¤Ç unsigned ¤Ë¤Ê¤ê¤Þ¤·¤¿"
-#: c-lex.c:941
+#: c-lex.c:620
#, fuzzy, c-format
msgid "floating constant exceeds range of \"%s\""
msgstr "ÉâÆ°¾®¿ôÅÀ¿ô¤¬ '%s' ¤ÎÈϰϤòĶ¤¨¤Þ¤·¤¿"
-#: c-lex.c:977 cpplex.c:330 cpplex.c:668 cpplex.c:1942
+#: c-lex.c:696
#, fuzzy
-msgid "ignoring invalid multibyte character"
-msgstr "̵¸ú¤Ê¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»ú¤ò̵»ë¤·¤Þ¤¹"
+msgid "traditional C rejects string constant concatenation"
+msgstr "¸Å¤¤ C ¤Ç¤Ïʸ»úÎó·ë¹ç¤òµñÈݤ·¤Þ¤¹"
-#: c-opts.c:355
-#, fuzzy, c-format
-msgid "missing argument to \"-%s\""
-msgstr "`%s' ¥ª¥×¥·¥ç¥ó¤ËÂФ¹¤ë°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
+#: c-objc-common.c:82
+msgid "%Jfunction '%F' can never be inlined because it is supressed using -fno-inline"
+msgstr ""
+
+#: c-objc-common.c:92
+msgid "%Jfunction '%F' can never be inlined because it might not be bound within this unit of translation"
+msgstr ""
+
+#: c-objc-common.c:100
+msgid "%Jfunction '%F' can never be inlined because it uses attributes conflicting with inlining"
+msgstr ""
-#: c-opts.c:359
+#: c-objc-common.c:115
+msgid "%Jfunction '%F' can never be inlined because it has pending sizes"
+msgstr ""
+
+#: c-objc-common.c:128
+msgid "%Jnested function '%F' can never be inlined because it has possibly saved pending sizes"
+msgstr ""
+
+#: c-opts.c:141
#, fuzzy, c-format
-msgid "no class name specified with \"-%s\""
+msgid "no class name specified with \"%s\""
msgstr "%s ¤ËÂФ¹¤ëµ­²±¥¯¥é¥¹»ØÄê»Ò `%s'"
-#: c-opts.c:366
+#: c-opts.c:145
#, fuzzy, c-format
-msgid "missing filename after \"-%s\""
-msgstr "%s ¤Î¸å¤í¤Î¥¿¡¼¥²¥Ã¥È¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+msgid "assertion missing after \"%s\""
+msgstr "%s ¤Î¸å¤í¤Î¥¢¥µ¡¼¥·¥ç¥ó¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: c-opts.c:371
+#: c-opts.c:150
#, fuzzy, c-format
-msgid "missing target after \"-%s\""
-msgstr "static ¥Õ¥£¡¼¥ë¥É `%s' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+msgid "macro name missing after \"%s\""
+msgstr "%s ¤Î¸å¤í¤Î¥Þ¥¯¥í̾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: c-opts.c:505
-#, c-format
-msgid "options array incorrectly sorted: %s is before %s"
-msgstr ""
+#: c-opts.c:157
+#, fuzzy, c-format
+msgid "missing path after \"%s\""
+msgstr "%s ¤Î¸å¤í¤Î¥¿¡¼¥²¥Ã¥È¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: c-opts.c:550
+#: c-opts.c:166
#, fuzzy, c-format
-msgid "too many filenames given. Type %s --help for usage"
-msgstr "¥Õ¥¡¥¤¥ë̾¤¬Â¿¤¹¤®¤Þ¤¹¡£%s --help ¤È¥¿¥¤¥×¤·¤Æ»È¤¤Êý¤ò¸«¤Þ¤·¤ç¤¦"
+msgid "missing filename after \"%s\""
+msgstr "%s ¤Î¸å¤í¤Î¿ô»ú¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: c-opts.c:937
-msgid "-Wno-strict-prototypes is not supported in C++"
-msgstr "-Wno-strict-prototypes ¤Ï C++ ¤Ç¤Ï¼õ¤±ÉÕ¤±¤é¤ì¤Þ¤»¤ó"
+#: c-opts.c:171
+#, fuzzy, c-format
+msgid "missing makefile target after \"%s\""
+msgstr "Àµ¼°¤Ê²¾°ú¿ô¹à¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+
+#: c-opts.c:291
+msgid "-I- specified twice"
+msgstr "-I- ¤¬Æó²ó»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: c-opts.c:1017
+#: c-opts.c:692
#, fuzzy, c-format
msgid "switch \"%s\" is no longer supported"
msgstr "-f%s ¤Ï¤â¤Ï¤ä¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: c-opts.c:1033
-#, c-format
-msgid "switch \"%s\" is deprecated, please see documentation for details"
-msgstr ""
-
-#: c-opts.c:1153
-msgid "-fhandle-exceptions has been renamed to -fexceptions (and is now on by default)"
+#: c-opts.c:816
+#, fuzzy
+msgid "-fhandle-exceptions has been renamed -fexceptions (and is now on by default)"
msgstr "-fhandle-exceptions ¤Ï -fexception ¤ËÊѹ¹¤µ¤ì¤Þ¤·¤¿(¤µ¤é¤Ë¥Ç¥Õ¥©¥ë¥È¤ÇÍ­¸ú¤Ç¤¹)"
-#: c-opts.c:1273
+#: c-opts.c:982
#, fuzzy
msgid "output filename specified twice"
msgstr "½ÐÎÏ¥Õ¥¡¥¤¥ë̾¤¬Æó²ó»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: c-opts.c:1387
+#: c-opts.c:1106
msgid "-Wformat-y2k ignored without -Wformat"
msgstr "-Wformat-y2k ¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿¡Ê-Wformat ¤¬¤¢¤ê¤Þ¤»¤ó¡Ë"
-#: c-opts.c:1389
+#: c-opts.c:1108
msgid "-Wformat-extra-args ignored without -Wformat"
msgstr "-Wformat-extra-args ¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿¡Ê-Wformat ¤¬¤¢¤ê¤Þ¤»¤ó¡Ë"
-#: c-opts.c:1391
+#: c-opts.c:1110
#, fuzzy
msgid "-Wformat-zero-length ignored without -Wformat"
msgstr "-Wformat-extra-args ¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿¡Ê-Wformat ¤¬¤¢¤ê¤Þ¤»¤ó¡Ë"
-#: c-opts.c:1393
+#: c-opts.c:1112
msgid "-Wformat-nonliteral ignored without -Wformat"
msgstr "-Wformat-nonliteral ¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿¡Ê-Wformat ¤¬¤¢¤ê¤Þ¤»¤ó¡Ë"
-#: c-opts.c:1395
+#: c-opts.c:1114
msgid "-Wformat-security ignored without -Wformat"
msgstr "-Wformat-security ¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿¡Ê-Wformat ¤¬¤¢¤ê¤Þ¤»¤ó¡Ë"
-#: c-opts.c:1397
+#: c-opts.c:1116
msgid "-Wmissing-format-attribute ignored without -Wformat"
msgstr "-Wmissing-format-attribute ¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿¡Ê-Wformat ¤¬¤¢¤ê¤Þ¤»¤ó¡Ë"
-#: c-opts.c:1419
+#: c-opts.c:1130
#, fuzzy, c-format
-msgid "opening output file %s"
+msgid "opening output file %s: %m"
msgstr "½ÐÎÏ¥Õ¥¡¥¤¥ë `%s' ¤ò open ¤Ç¤­¤Þ¤»¤ó"
-#: c-opts.c:1474
+#: c-opts.c:1135
#, fuzzy, c-format
-msgid "opening dependency file %s"
-msgstr "ưŪ°Í¸´Ø·¸¡£\n"
+msgid "too many filenames given. Type %s --help for usage"
+msgstr "¥Õ¥¡¥¤¥ë̾¤¬Â¿¤¹¤®¤Þ¤¹¡£%s --help ¤È¥¿¥¤¥×¤·¤Æ»È¤¤Êý¤ò¸«¤Þ¤·¤ç¤¦"
+
+#: c-opts.c:1213
+#, fuzzy
+msgid "YYDEBUG not defined"
+msgstr "YYDEBUG ¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: c-opts.c:1484
+#: c-opts.c:1260
#, c-format
-msgid "closing dependency file %s"
+msgid "opening dependency file %s: %m"
msgstr ""
-#: c-opts.c:1487
+#: c-opts.c:1270
+#, c-format
+msgid "closing dependency file %s: %m"
+msgstr ""
+
+#: c-opts.c:1273
#, fuzzy, c-format
-msgid "when writing output to %s"
+msgid "when writing output to %s: %m"
msgstr "%s ¤Ø¤Î½ñ¤­¹þ¤ß¥¨¥é¡¼¤Ç¤¹"
-#: c-opts.c:1567
+#: c-opts.c:1343
#, fuzzy
msgid "to generate dependencies you must specify either -M or -MM"
msgstr "-M ¤« -MM ¤Î¤¤¤º¤ì¤«¤òÄɲÃŪ¤Ë»ØÄꤷ¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: c-opts.c:1715
-#, fuzzy, c-format
-msgid "\"-%c%s%s\" is valid for %s but not for %s"
-msgstr "(%s ÍѤȤ·¤Æ¤ÏÀµ¾ï¤Ç¤¹¤¬¡¢ÁªÂò¤µ¤ì¤¿¸À¸ì¤È¤·¤Æ¤Ï̵¸ú¤Ç¤¹)"
-
-#. To keep the lines from getting too long for some compilers, limit
-#. to about 500 characters (6 lines) per chunk.
-#: c-opts.c:1726
-msgid ""
-"Switches:\n"
-" -include <file> Include the contents of <file> before other files\n"
-" -imacros <file> Accept definition of macros in <file>\n"
-" -iprefix <path> Specify <path> as a prefix for next two options\n"
-" -iwithprefix <dir> Add <dir> to the end of the system include path\n"
-" -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
-" -isystem <dir> Add <dir> to the start of the system include path\n"
-msgstr ""
-"¥¹¥¤¥Ã¥Á:\n"
-" -include <file> ¾¤Î¥Õ¥¡¥¤¥ë¤ÎÁ°¤Ë <file> ¤ÎÆâÍƤò´Þ¤á¤ë\n"
-" -imacros <file> <file> ¤Î¥Þ¥¯¥íÄêµÁ¤ò¼õ¤±Æþ¤ì¤ë\n"
-" -iprefix <path> ¼¡¤ÎÆó¤Ä¤Î¥ª¥×¥·¥ç¥óÍÑ¥×¥ì¥Õ¥£¥¯¥¹¤Ë <path> ¤ò»ØÄê\n"
-" -iwithprefix <dir> <dir> ¤ò¥·¥¹¥Æ¥à include ¥Ñ¥¹¤Î½ª¤ê¤ËÄɲ乤ë\n"
-" -iwithprefixbefore <dir> <dir> ¤ò¥á¥¤¥ó include ¥Ñ¥¹¤Î½ª¤ê¤ËÄɲ乤ë\n"
-" -isystem <dir> <dir> ¤ò¥·¥¹¥Æ¥à include ¥Ñ¥¹¤ÎºÇ½é¤ËÄɲ乤ë\n"
-
-#: c-opts.c:1735
-msgid ""
-" -idirafter <dir> Add <dir> to the end of the system include path\n"
-" -I <dir> Add <dir> to the end of the main include path\n"
-" -I- Fine-grained include path control; see info docs\n"
-" -nostdinc Do not search system include directories\n"
-" (dirs specified with -isystem will still be used)\n"
-" -nostdinc++ Do not search system include directories for C++\n"
-" -o <file> Put output into <file>\n"
-msgstr ""
-" -idirafter <dir> <dir> ¤ò¥·¥¹¥Æ¥à include ¥Ñ¥¹¤Î½ª¤ê¤ËÄɲ乤ë\n"
-" -I <dir> <dir> ¤ò¥á¥¤¥ó include ¥Ñ¥¹¤Î½ª¤ê¤ËÄɲ乤ë\n"
-" -I- ¤­¤áºÙ¤«¤Ê include ¥Ñ¥¹À©¸æ -- info ʸ½ñ¤ò»²¾È\n"
-" -nostdinc ¥·¥¹¥Æ¥à include ¥Ç¥£¥ì¥¯¥È¥ê¤òõº÷¤·¤Ê¤¤\n"
-" (-system ¤Ç»ØÄꤵ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Ïõº÷¤µ¤ì¤ë)\n"
-" -nostdinc++ C++ ÍÑ¥·¥¹¥Æ¥à include ¥Ç¥£¥ì¥¯¥È¥ê¤òõº÷¤·¤Ê¤¤\n"
-" -o <file> <file> ¤Ø½ÐÎϤ¹¤ë\n"
-
-#: c-opts.c:1744
-#, fuzzy
-msgid ""
-" -trigraphs Support ISO C trigraphs\n"
-" -std=<std name> Specify the conformance standard; one of:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Inhibit warning messages\n"
-" -W[no-]trigraphs Warn if trigraphs are encountered\n"
-" -W[no-]comment{s} Warn if one comment starts inside another\n"
-msgstr ""
-" -std=<std name> Ŭ¹ç¤µ¤»¤ëɸ½à¤ò»ØÄê -- °Ê²¼¤è¤ê°ì¤Ä\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999\n"
-" -+ C++ ¼°¤Î¹½Ê¸²òÀϤòµö²Ä¤¹¤ë\n"
-" -w ·Ù¹ð¥á¥Ã¥»¡¼¥¸¤òÍÞÀ©¤¹¤ë\n"
-" -Wtrigraphs ¥È¥é¥¤¥°¥é¥Õ¤Ë½Ð¤¯¤ï¤·¤¿¤é·Ù¹ð¤¹¤ë\n"
-" -Wno-trigraphs ¥È¥é¥¤¥°¥é¥Õ¤Ë¤Ä¤¤¤Æ¤Î·Ù¹ð¤ò¹Ô¤Ê¤ï¤Ê¤¤\n"
-" -Wcomment{s} ¥³¥á¥ó¥È¤¬Â¾¤Î¥³¥á¥ó¥ÈÆâ¤Ç»Ï¤Þ¤Ã¤Æ¤¤¤¿¤é·Ù¹ð¤¹¤ë\n"
-
-#: c-opts.c:1753
+#: c-opts.c:1403
#, fuzzy
-msgid ""
-" -W[no-]traditional Warn about features not present in traditional C\n"
-" -W[no-]undef Warn if an undefined macro is used by #if\n"
-" -W[no-]import Warn about the use of the #import directive\n"
-msgstr ""
-" -Wno-comment{s} ¥³¥á¥ó¥È¤Ë´Ø¤¹¤ë·Ù¹ð¤ò¹Ô¤Ê¤ï¤Ê¤¤\n"
-" -Wtraditional ¸½ºß¤È¤Ï°Û¤Ê¤ë¸Å¤¤ C ¤Ç¤Îµ¡Ç½¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë\n"
-" -Wno-traditional ¸Å¤¤ C ¤Ë´Ø¤¹¤ë·Ù¹ð¤ò¹Ô¤Ê¤ï¤Ê¤¤\n"
-" -Wundef ̤ÄêµÁ¤Î¥Þ¥¯¥í¤¬ #if ¤Ç»È¤ï¤ì¤Æ¤¤¤ì¤Ð·Ù¹ð¤¹¤ë\n"
-" -Wno-undef ̤ÄêµÁ¥Þ¥¯¥í¤Îɾ²Á¤Ë´Ø¤¹¤ë·Ù¹ð¤ò¹Ô¤Ê¤ï¤Ê¤¤\n"
-" -Wimport #import ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤ÎÍøÍѤ˴ؤ·¤Æ·Ù¹ð¤¹¤ë\n"
+msgid "<built-in>"
+msgstr "<ÁȤ߹þ¤ß>"
-#: c-opts.c:1758
-#, fuzzy
-msgid ""
-" -W[no-]error Treat all warnings as errors\n"
-" -W[no-]system-headers Do not suppress warnings from system headers\n"
-" -W[no-]all Enable most preprocessor warnings\n"
-msgstr ""
-" -Wno-import #import ¤ÎÍøÍѤ˴ؤ¹¤ë·Ù¹ð¤ò¹Ô¤Ê¤ï¤Ê¤¤\n"
-" -Werror Á´¤Æ¤Î·Ù¹ð¤ò¥¨¥é¡¼¤È¤·¤Æ¼è¤ê°·¤¦\n"
-" -Wno-error ·Ù¹ð¤ò¥¨¥é¡¼¤È¤·¤Æ¼è¤ê°·¤ï¤Ê¤¤\n"
-" -Wsystem-headers ¥·¥¹¥Æ¥à¥Ø¥Ã¥À¤«¤é¤Î·Ù¹ð¤òÍÞÀ©¤·¤Ê¤¤\n"
-" -Wno-system-headers ¥·¥¹¥Æ¥à¥Ø¥Ã¥À¤«¤é¤Î·Ù¹ð¤òÍÞÀ©¤¹¤ë\n"
-" -Wall Á´¤Æ¤Î¥×¥ê¥×¥í¥»¥Ã¥µ·Ù¹ð¤òÍ­¸ú¤Ë¤¹¤ë\n"
+#: c-opts.c:1418
+msgid "<command line>"
+msgstr "<¥³¥Þ¥ó¥É¥é¥¤¥ó>"
-#: c-opts.c:1763
-#, fuzzy
-msgid ""
-" -M Generate make dependencies\n"
-" -MM As -M, but ignore system header files\n"
-" -MD Generate make dependencies and compile\n"
-" -MMD As -MD, but ignore system header files\n"
-" -MF <file> Write dependency output to the given file\n"
-" -MG Treat missing header file as generated files\n"
-msgstr ""
-" -M make °Í¸´Ø·¸¤òÀ¸À®¤¹¤ë\n"
-" -MM -M ƱÍÍ¡¢Ã¢¤·¥·¥¹¥Æ¥à¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤ò̵»ë¤¹¤ë\n"
-" -MF <file> °Í¸´Ø·¸¤Î½ÐÎϤòÍ¿¤¨¤é¤ì¤¿¥Õ¥¡¥¤¥ë¤Ë½ñ¤­¹þ¤à\n"
-" -MG ¸«¤Ä¤«¤é¤Ê¤¤¥Ø¥Ã¥À¤òÀ¸À®¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤È¤·¤Æ°·¤¦\n"
-
-#: c-opts.c:1771
-msgid ""
-" -MP\t\t\t Generate phony targets for all headers\n"
-" -MQ <target> Add a MAKE-quoted target\n"
-" -MT <target> Add an unquoted target\n"
+#: c-opts.c:1502
+msgid "too late for # directive to set debug directory"
msgstr ""
-" -MP\t\t\t Á´¤Æ¤Î¥Ø¥Ã¥À¤Ë¤Ä¤¤¤Æ phony ¥¿¡¼¥²¥Ã¥È¤òÀ¸À®¤¹¤ë\n"
-" -MQ <target> MAKE ¤Ç¤Î¥¯¥ª¡¼¥È¤µ¤ì¤¿¥¿¡¼¥²¥Ã¥È¤òÄɲ乤ë\n"
-" -MT <target> ¥¯¥ª¡¼¥È¤µ¤ì¤Ê¤¤¥¿¡¼¥²¥Ã¥È¤òÄɲ乤ë\n"
-
-#: c-opts.c:1776
-#, fuzzy
-msgid ""
-" -D<macro> Define a <macro> with string '1' as its value\n"
-" -D<macro>=<val> Define a <macro> with <val> as its value\n"
-" -A<question>=<answer> Assert the <answer> to <question>\n"
-" -A-<question>=<answer> Disable the <answer> to <question>\n"
-" -U<macro> Undefine <macro> \n"
-" -v Display the version number\n"
-msgstr ""
-" -D<macro> <macro> ¤òÄêµÁ¤·¡¢¤½¤ÎÃͤòʸ»úÎó¤Î '1' ¤È¤¹¤ë\n"
-" -D<macro>=<val> <macro> ¤òÄêµÁ¤·¡¢¤½¤ÎÃͤò <val> ¤È¤¹¤ë\n"
-" -A<question> (<answer>) <question> ¤Ë <answer> ¤ÈÀ¼ÌÀ¤¹¤ë\n"
-" -A-<question> (<answer>) <question> ¤ò <answer> ¤È¤·¤Ê¤¤\n"
-" -U<macro> <macro> ÄêµÁ¤ò²ò½ü¤¹¤ë\n"
-" -v ¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤òɽ¼¨¤¹¤ë\n"
-
-#: c-opts.c:1784
-msgid ""
-" -H Print the name of header files as they are used\n"
-" -C Do not discard comments\n"
-" -dM Display a list of macro definitions active at end\n"
-" -dD Preserve macro definitions in output\n"
-" -dN As -dD except that only the names are preserved\n"
-" -dI Include #include directives in the output\n"
-msgstr ""
-" -H »È¤ï¤ì¤¿¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤òɽ¼¨¤¹¤ë\n"
-" -C ¥³¥á¥ó¥È¤òÇË´þ¤·¤Ê¤¤\n"
-" -dM ºÇ¸å¤ËÍ­¸ú¤Ê¥Þ¥¯¥íÄêµÁ¥ê¥¹¥È¤òɽ¼¨¤¹¤ë\n"
-" -dD ½ÐÎϤ˥ޥ¯¥íÄêµÁ¤òÊݸ¤¹¤ë\n"
-" -dN -dD ¤ÈƱÍͤÀ¤¬¡¢Ì¾Á°¤À¤±¤òÊݸ¤¹¤ë\n"
-" -dI #include ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤ò½ÐÎϤ˴ޤá¤ë\n"
-
-#: c-opts.c:1792
-#, fuzzy
-msgid ""
-" -f[no-]preprocessed Treat the input file as already preprocessed\n"
-" -ftabstop=<number> Distance between tab stops for column reporting\n"
-" -P Do not generate #line directives\n"
-" -remap Remap file names when including files\n"
-" --help Display this information\n"
-msgstr ""
-" -fpreprocessed ÆþÎÏ¥Õ¥¡¥¤¥ë¤ò´û¤Ë¥×¥ê¥×¥í¥»¥¹ºÑ¤È¤·¤Æ°·¤¦\n"
-" -ftabstop=<number> ¥«¥é¥à¤Î¥¿¥Ö´Ö³Ö¤òÊó¹ð¤¹¤ë\n"
-" -P #line ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤òÀ¸À®¤·¤Ê¤¤\n"
-" -$ ¼±Ê̻ҤǤΠ'$' ¤òµö²Ä¤·¤Ê¤¤\n"
-" -remap ¥Õ¥¡¥¤¥ë¥¤¥ó¥¯¥ë¡¼¥É»þ¤Ë¥Õ¥¡¥¤¥ë̾¤òºÆ¥Þ¥Ã¥×¤¹¤ë\n"
-" --version ¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤¹¤ë\n"
-" -h or --help ¤³¤Î¾ðÊó¤òɽ¼¨¤¹¤ë\n"
#. Like YYERROR but do call yyerror.
-#: c-parse.y:55 parse.y:48 objc-parse.y:55
+#: c-parse.y:54 c-parse.c:5381 gengtype-yacc.c:1514 java/parse-scan.c:3063
+#: java/parse.c:6067 objc/objc-parse.y:54 objc/objc-parse.c:6644
msgid "syntax error"
msgstr "ʸˡ¥¨¥é¡¼"
-#: /usr/share/bison/bison.simple:179
+#: c-parse.c:2118 gengtype-yacc.c:545 java/parse-scan.c:1932 java/parse.c:2875
+#: objc/objc-parse.c:2717
msgid "syntax error: cannot back up"
msgstr "ʸˡ¥¨¥é¡¼: ÄÉ¿ï¤Ç¤­¤Þ¤»¤ó"
-#: c-parse.y:325 objc-parse.y:346
+#: c-parse.y:320 objc/objc-parse.y:344
msgid "ISO C forbids an empty source file"
msgstr "ISO C ¤Ï¶õ¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:366 c-typeck.c:6916 objc-parse.y:388
+#: c-parse.y:349 c-typeck.c:6217 objc/objc-parse.y:374
msgid "argument of `asm' is not a constant string"
msgstr "`asm' ¤Î°ú¿ô¤¬Äê¿ôʸ»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó "
-#: c-parse.y:374 objc-parse.y:396
+#: c-parse.y:357 objc/objc-parse.y:382
msgid "ISO C forbids data definition with no type or storage class"
msgstr "ISO C ¤Ï·¿¤äµ­²±¥¯¥é¥¹¤Î¤Ê¤¤¥Ç¡¼¥¿ÄêµÁ¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:376 objc-parse.y:398
+#: c-parse.y:359 objc/objc-parse.y:384
msgid "data definition has no type or storage class"
msgstr "¥Ç¡¼¥¿ÄêµÁ¤¬·¿¤äµ­²±¥¯¥é¥¹¤ò»ý¤Ã¤Æ¤¤¤Þ¤»¤ó"
-#: c-parse.y:389 objc-parse.y:411
+#: c-parse.y:372 objc/objc-parse.y:397
msgid "ISO C does not allow extra `;' outside of a function"
msgstr "ISO C ¤Ç¤Ï´Ø¿ô³°¤Ç¤Î;ʬ¤Ê `;' ¤òµö¤·¤Þ¤»¤ó"
-#: c-parse.y:449 cppexp.c:1312
+#: c-parse.y:429 cppexp.c:1253
msgid "traditional C rejects the unary plus operator"
msgstr "¸Å¤¤ C ¤Ç¤Ïñ¹à¥×¥é¥¹±é»»»Ò¤òµñÈݤ·¤Þ¤¹"
-#: c-parse.y:496 objc-parse.y:518
+#: c-parse.y:476 objc/objc-parse.y:501
msgid "`sizeof' applied to a bit-field"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤ËŬÍѤµ¤ì¤¿ `sizeof'"
-#: c-parse.y:583 objc-parse.y:605
+#: c-parse.y:563 objc/objc-parse.y:588
msgid "ISO C forbids omitting the middle term of a ?: expression"
msgstr "ISO C ¤ÏÃæ´Ö¹à¤¬¾Êά¤µ¤ì¤¿ ?: ¼°¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:632 objc-parse.y:654
+#: c-parse.y:611 objc/objc-parse.y:636
msgid "ISO C89 forbids compound literals"
msgstr "ISO C89 ¤ÏÊ£¹ç¥ê¥Æ¥é¥ë¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:646 objc-parse.y:668
+#: c-parse.y:625 objc/objc-parse.y:650
msgid "ISO C forbids braced-groups within expressions"
msgstr "ISO C ¤Ï¥Ö¥ì¡¼¥¹¤Ç¤Þ¤È¤á¤é¤ì¤¿¼°¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:677 objc-parse.y:699
+#: c-parse.y:653 objc/objc-parse.y:678
#, fuzzy
msgid "first argument to __builtin_choose_expr not a constant"
msgstr "`__builtin_args_info' ¤Î°ú¿ô¤ÏÄê¿ô¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: c-parse.y:721 objc-parse.y:767
+#: c-parse.y:696 objc/objc-parse.y:737
#, fuzzy
msgid "traditional C rejects ISO C style function definitions"
msgstr "¸Å¤¤ C ¤Ç¤Ïʸ»úÎó·ë¹ç¤òµñÈݤ·¤Þ¤¹"
-#: c-parse.y:985 c-parse.y:991 c-parse.y:997 c-parse.y:1003 c-parse.y:1024
-#: c-parse.y:1030 c-parse.y:1036 c-parse.y:1042 c-parse.y:1075 c-parse.y:1081
-#: c-parse.y:1087 c-parse.y:1093 c-parse.y:1138 c-parse.y:1144 c-parse.y:1150
-#: c-parse.y:1156 parse.y:1933 parse.y:1940 parse.y:1975 objc-parse.y:1031
-#: objc-parse.y:1037 objc-parse.y:1043 objc-parse.y:1049 objc-parse.y:1070
-#: objc-parse.y:1076 objc-parse.y:1082 objc-parse.y:1088 objc-parse.y:1121
-#: objc-parse.y:1127 objc-parse.y:1133 objc-parse.y:1139 objc-parse.y:1184
-#: objc-parse.y:1190 objc-parse.y:1196 objc-parse.y:1202
+#: c-parse.y:699 c-parse.y:705 objc/objc-parse.y:740 objc/objc-parse.y:746
+#, fuzzy
+msgid "old-style parameter declaration"
+msgstr "²¾°ú¿ôÀë¸À¤ÎÃæ¤Ç `::' ¤ò»È¤¨¤Þ¤»¤ó"
+
+#: c-parse.y:967 c-parse.y:973 c-parse.y:979 c-parse.y:985 c-parse.y:1006
+#: c-parse.y:1012 c-parse.y:1018 c-parse.y:1024 c-parse.y:1057 c-parse.y:1063
+#: c-parse.y:1069 c-parse.y:1075 c-parse.y:1120 c-parse.y:1126 c-parse.y:1132
+#: c-parse.y:1138 objc/objc-parse.y:1008 objc/objc-parse.y:1014
+#: objc/objc-parse.y:1020 objc/objc-parse.y:1026 objc/objc-parse.y:1047
+#: objc/objc-parse.y:1053 objc/objc-parse.y:1059 objc/objc-parse.y:1065
+#: objc/objc-parse.y:1098 objc/objc-parse.y:1104 objc/objc-parse.y:1110
+#: objc/objc-parse.y:1116 objc/objc-parse.y:1161 objc/objc-parse.y:1167
+#: objc/objc-parse.y:1173 objc/objc-parse.y:1179
#, c-format
msgid "`%s' is not at beginning of declaration"
msgstr "`%s' ¤ÏÀë¸À¤Î»Ï¤Þ¤ê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-parse.y:1441 objc-parse.y:1496
+#: c-parse.y:1300 objc/objc-parse.y:1350
+#, fuzzy
+msgid "`typeof' applied to a bit-field"
+msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤ËŬÍѤµ¤ì¤¿ `sizeof'"
+
+#: c-parse.y:1427 objc/objc-parse.y:1477
msgid "ISO C forbids empty initializer braces"
msgstr "ISO C ¤Ç¤Ï¶õ¤Î½é´ü²½Íѥ֥졼¥¹¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:1455 objc-parse.y:1510
+#: c-parse.y:1441 objc/objc-parse.y:1491
msgid "ISO C89 forbids specifying subobject to initialize"
msgstr "ISO C89 ¤Ï½é´ü²½ÍѤÎÉû¥ª¥Ö¥¸¥§¥¯¥È»ØÄê¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:1458 objc-parse.y:1513
+#: c-parse.y:1444 objc/objc-parse.y:1494
msgid "obsolete use of designated initializer without `='"
msgstr "`=' ¤Î¤Ê¤¤¥á¥ó¥Ð»Ø̾½é´ü²½»Ò¤ÏÇѤì¤Þ¤·¤¿"
-#: c-parse.y:1462 objc-parse.y:1517
+#: c-parse.y:1448 objc/objc-parse.y:1498
msgid "obsolete use of designated initializer with `:'"
msgstr "`:' ¤ò¤Ä¤±¤ë¥á¥ó¥Ð»Ø̾½é´ü²½»Ò¤ÏÇѤì¤Þ¤·¤¿"
-#: c-parse.y:1489 objc-parse.y:1544
+#: c-parse.y:1475 objc/objc-parse.y:1525
msgid "ISO C forbids specifying range of elements to initialize"
msgstr "ISO C ¤Ï½é´ü²½ÍѤÎÍ×ÁÇÈÏ°Ï»ØÄê¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:1497 c-parse.y:1528 objc-parse.y:1552 objc-parse.y:1583
+#: c-parse.y:1483 c-parse.y:1514 objc/objc-parse.y:1533 objc/objc-parse.y:1564
msgid "ISO C forbids nested functions"
msgstr "ISO C ¤Ï ¥Í¥¹¥È¤µ¤ì¤¿´Ø¿ô¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:1703 objc-parse.y:1760
+#: c-parse.y:1691 objc/objc-parse.y:1743
msgid "ISO C forbids forward references to `enum' types"
msgstr "ISO C ¤Ï `enum' ·¿¤ÎÁ°Êý»²¾È¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:1715 parse.y:2411 objc-parse.y:1772
+#: c-parse.y:1703 cp/parser.c:9282 objc/objc-parse.y:1755
msgid "comma at end of enumerator list"
msgstr "Îóµó»Ò¥ê¥¹¥È¤ÎºÇ¸å¤Ë¥«¥ó¥Þ¤¬¤¢¤ê¤Þ¤¹"
-#: c-parse.y:1723 objc-parse.y:1780
+#: c-parse.y:1723 objc/objc-parse.y:1775
msgid "no semicolon at end of struct or union"
msgstr "struct ¤ä union ¤ÎºÇ¸å¤Ë¥»¥ß¥³¥í¥ó¤¬¤¢¤ê¤Þ¤»¤ó"
-#: c-parse.y:1732 objc-parse.y:1789 objc-parse.y:2864
+#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846
msgid "extra semicolon in struct or union specified"
msgstr "struct ¤ä union ¤ÎÃæ¤Ç;ʬ¤Ê¥»¥ß¥³¥í¥ó¤¬»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: c-parse.y:1745 objc-parse.y:1816
+#: c-parse.y:1745 objc/objc-parse.y:1800
msgid "ISO C doesn't support unnamed structs/unions"
msgstr "ISO C ¤Ç¤Ï̵̾¹½Â¤ÂΤ䶦ÍÑÂΤò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-parse.y:1754 objc-parse.y:1825
+#: c-parse.y:1754 objc/objc-parse.y:1809
msgid "ISO C forbids member declarations with no members"
msgstr "ISO C ¤Ï¥á¥ó¥Ð¤Î¤Ê¤¤¥á¥ó¥ÐÀë¸À¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:1913 objc-parse.y:1984
-msgid "deprecated use of label at end of compound statement"
+#: c-parse.y:1915 objc/objc-parse.y:1970
+#, fuzzy
+msgid "label at end of compound statement"
msgstr "Ê£¹çʸ¤Î½ª¤ê¤Ç¥é¥Ù¥ë¤ò»È¤¦¤³¤È¤Ï¿ä¾©¤µ¤ì¤Þ¤»¤ó"
-#: c-parse.y:1930 objc-parse.y:2001
-msgid "ISO C89 forbids mixed declarations and code"
+#: c-parse.y:1934 objc/objc-parse.y:1989
+#, fuzzy
+msgid "ISO C90 forbids mixed declarations and code"
msgstr "ISO C89 ¤ÏÀë¸À¤È¥³¡¼¥É¤È¤Îº®¹ç¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:2005 objc-parse.y:2080
+#: c-parse.y:2012 objc/objc-parse.y:2069
msgid "ISO C forbids label declarations"
msgstr "ISO C ¤Ï¥é¥Ù¥ëÀë¸À¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:2055 parse.y:1638 objc-parse.y:2130
+#: c-parse.y:2062 objc/objc-parse.y:2119
msgid "braced-group within expression allowed only inside a function"
msgstr "¥Ö¥ì¡¼¥¹¤Ç¤Þ¤È¤á¤é¤ì¤¿¼°¤Ï´Ø¿ô¤ÎÆ⦤ǤΤߵö¤µ¤ì¤Þ¤¹"
-#: c-parse.y:2182 objc-parse.y:2257
+#: c-parse.y:2184 objc/objc-parse.y:2241
msgid "empty body in an else-statement"
msgstr "else ʸ¤ÎÃæ¿È¤¬¶õ¤Ç¤¹"
-#: c-parse.y:2303 objc-parse.y:2378
+#: c-parse.y:2192 objc/objc-parse.y:2249
+#, fuzzy
+msgid "%Hempty body in an if-statement"
+msgstr "else ʸ¤ÎÃæ¿È¤¬¶õ¤Ç¤¹"
+
+#: c-parse.y:2272 cp/parser.c:6028 objc/objc-parse.y:2329
+msgid "break statement not within loop or switch"
+msgstr "break ʸ¤¬ loop ¤Þ¤¿¤Ï switch ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
+
+#: c-parse.y:2281 cp/parser.c:6039 objc/objc-parse.y:2338
+msgid "continue statement not within a loop"
+msgstr "continue ʸ¤¬ loop ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
+
+#: c-parse.y:2323 objc/objc-parse.y:2380
msgid "ISO C forbids `goto *expr;'"
msgstr "ISO C `goto *¼°;' ¤Î½ñ¤­Êý¤ò¶Ø¤¸¤Þ¤¹"
-#: c-parse.y:2403 objc-parse.y:2478
-msgid "ISO C forbids forward parameter declarations"
-msgstr "ISO C ¤ÏÁ°Êý²¾°ú¿ôÀë¸À¤ò¶Ø¤¸¤Þ¤¹"
-
#. Gcc used to allow this as an extension. However, it does
#. not work for all targets, and thus has been disabled.
#. Also, since func (...) and func () are indistinguishable,
#. it caused problems with the code in expand_builtin which
#. tries to verify that BUILT_IN_NEXT_ARG is being used
#. correctly.
-#: c-parse.y:2429 objc-parse.y:2504
+#: c-parse.y:2440 objc/objc-parse.y:2548
msgid "ISO C requires a named argument before `...'"
msgstr "ISO C ¤Ï `...' ¤ÎÁ°¤Ë̾Á°¤ò¤Ä¤±¤é¤ì¤¿°ú¿ô¤òÍ׵ᤷ¤Þ¤¹"
-#: c-parse.y:2526 objc-parse.y:2601
+#: c-parse.y:2538 objc/objc-parse.y:2646
msgid "`...' in old-style identifier list"
msgstr "¸Å¤¤¥¹¥¿¥¤¥ë¤Î¼±Ê̻ҥꥹ¥È¤Ç¤Î `...'"
-#: /usr/share/bison/bison.simple:795
+#: c-parse.c:5377 gengtype-yacc.c:1510 java/parse-scan.c:3059
+#: java/parse.c:6063 objc/objc-parse.c:6640
#, fuzzy
-msgid "parse error; also virtual memory exhausted"
+msgid "syntax error; also virtual memory exhausted"
msgstr "¹½Ê¸²òÀÏ¥¨¥é¡¼ -- ¤µ¤é¤Ë²¾ÁÛ¥á¥â¥ê¤òĶ²á¤·¤Þ¤·¤¿"
-#: /usr/share/bison/bison.simple:799 cp/spew.c:364
-msgid "parse error"
-msgstr "¹½Ê¸²òÀÏ¥¨¥é¡¼"
-
-#: /usr/share/bison/bison.simple:924
+#: c-parse.c:5495 gengtype-yacc.c:1628 java/parse-scan.c:3177
+#: java/parse.c:6181 objc/objc-parse.c:6758
msgid "parser stack overflow"
msgstr "¹½Ê¸²òÀÏ´ï¤Î¥¹¥¿¥Ã¥¯¤¬°î¤ì¤Þ¤·¤¿"
-#: c-parse.y:2838 cp/spew.c:1525 objc-parse.y:3537
+#: c-parse.y:2968 objc/objc-parse.y:3663
#, c-format
-msgid "%s at end of input"
-msgstr "ÆþÎϤκǸå¤Ë %s"
+msgid "syntax error at '%s' token"
+msgstr "'%s' ¥È¡¼¥¯¥ó¤Î½ê¤Çʸˡ¥¨¥é¡¼"
-#: c-parse.y:2844 cp/spew.c:1533 objc-parse.y:3543
-#, c-format
-msgid "%s before %s'%c'"
-msgstr "%s ¤¬ %s'%c' ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
+#: c-pch.c:112
+#, fuzzy, c-format
+msgid "can't create precompiled header %s: %m"
+msgstr "¥Ç¥£¥ì¥¯¥È¥ê %s ¤òºîÀ®¤Ç¤­¤Þ¤»¤ó"
+
+#: c-pch.c:132
+#, fuzzy, c-format
+msgid "can't write to %s: %m"
+msgstr "%s ¤Ø½ñ¤­¹þ¤á¤Þ¤»¤ó"
+
+#: c-pch.c:138
+#, fuzzy, c-format
+msgid "`%s' is not a valid output file"
+msgstr "\"%s\" ¤ÏÀµ¾ï¤Ê¥Õ¥¡¥¤¥ë̾¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+
+#: c-pch.c:167 c-pch.c:183 c-pch.c:195
+#, fuzzy, c-format
+msgid "can't write %s: %m"
+msgstr "%s ¤Ø½ñ¤­¹þ¤á¤Þ¤»¤ó"
+
+#: c-pch.c:173
+#, fuzzy, c-format
+msgid "can't seek in %s: %m"
+msgstr "%s ¤ò rewind ¤Ç¤­¤Þ¤»¤ó"
+
+#: c-pch.c:181 c-pch.c:221 c-pch.c:249 c-pch.c:254 c-pch.c:324
+#, fuzzy, c-format
+msgid "can't read %s: %m"
+msgstr "%s ¤ò rewind ¤Ç¤­¤Þ¤»¤ó"
-#: c-parse.y:2846 cp/spew.c:1535 objc-parse.y:3545
+#: c-pch.c:234
#, c-format
-msgid "%s before %s'\\x%x'"
-msgstr "%s ¤¬ %s'\\x%x' ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
+msgid "%s: not compatible with this GCC version"
+msgstr ""
+
+#. It's a PCH for the wrong language.
+#: c-pch.c:237
+#, fuzzy, c-format
+msgid "%s: not for %s"
+msgstr "%s ¤Ï %s ¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
+
+#. Not any kind of PCH.
+#: c-pch.c:241
+#, fuzzy, c-format
+msgid "%s: not a PCH file"
+msgstr "%s: COFF ¥Õ¥¡¥¤¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-parse.y:2850 cp/spew.c:1542 objc-parse.y:3549
+#: c-pch.c:260
#, c-format
-msgid "%s before string constant"
-msgstr "ʸ»úÎóÄê¿ô¤ÎÁ°¤Ë %s"
+msgid "%s: created on host `%.*s', but used on host `%s'"
+msgstr ""
-#: c-parse.y:2852 cp/spew.c:1544 objc-parse.y:3551
+#: c-pch.c:270
#, c-format
-msgid "%s before numeric constant"
-msgstr "¿ôÃÍÄê¿ô¤ÎÁ°¤Ë %s"
+msgid "%s: created for target `%.*s', but used for target `%s'"
+msgstr ""
-#: c-parse.y:2854 objc-parse.y:3553
+#: c-pch.c:283
#, c-format
-msgid "%s before \"%s\""
-msgstr "%s ¤¬ \"%s\" ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
+msgid "%s: created by version `%.*s', but this is version `%s'"
+msgstr ""
-#: c-parse.y:2856 objc-parse.y:3555
+#: c-pch.c:299
#, c-format
-msgid "%s before '%s' token"
-msgstr "%s ¤¬ '%s' ¥È¡¼¥¯¥ó¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
+msgid "%s: created with -g%s, but used with -g%s"
+msgstr ""
-#: c-parse.y:2921
-msgid "traditional C rejects string concatenation"
-msgstr "¸Å¤¤ C ¤Ç¤Ïʸ»úÎó·ë¹ç¤òµñÈݤ·¤Þ¤¹"
+#: c-pch.c:313
+#, c-format
+msgid "%s: had text segment at different address"
+msgstr ""
-#: c-parse.y:3047 objc-parse.y:3779
+#: c-pch.c:330 cpperror.c:176 gcc.c:6547
#, c-format
-msgid "syntax error at '%s' token"
-msgstr "'%s' ¥È¡¼¥¯¥ó¤Î½ê¤Çʸˡ¥¨¥é¡¼"
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#: c-pch.c:361
+#, fuzzy
+msgid "calling fdopen"
+msgstr "fdopen"
+
+#: c-pch.c:369 c-pch.c:381
+#, fuzzy
+msgid "reading"
+msgstr "%s ¤òºîÀ®Ãæ.\n"
-#: c-pragma.c:107
+#: c-pragma.c:106
msgid "#pragma pack (pop) encountered without matching #pragma pack (push, <n>)"
msgstr "#pragma pack (pop) ¤¬¡¢Âбþ¤¹¤ë #pragma pack (push, <n>) ¤Ê¤·¤Ë½Ð¸½¤·¤Þ¤·¤¿"
-#: c-pragma.c:125
+#: c-pragma.c:124
#, c-format
msgid "#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s, <n>)"
msgstr "#pragma pack(pop, %s) ¤¬¡¢Âбþ¤¹¤ë #pragma pack(push, %s) ¤Ê¤·¤Ë½Ð¸½¤·¤Þ¤·¤¿"
-#: c-pragma.c:145
+#: c-pragma.c:144
#, fuzzy
msgid "#pragma pack(push[, id], <n>) is not supported on this target"
msgstr "¥¹¥¿¥Ã¥¯À©¸Â¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: c-pragma.c:147
+#: c-pragma.c:146
#, fuzzy
msgid "#pragma pack(pop[, id], <n>) is not supported on this target"
msgstr "¥¹¥¿¥Ã¥¯À©¸Â¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: c-pragma.c:167
+#: c-pragma.c:165
#, fuzzy
msgid "missing '(' after '#pragma pack' - ignored"
msgstr "¤ª¤«¤·¤Ê #pragma align - ̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: c-pragma.c:180 c-pragma.c:230
+#: c-pragma.c:178 c-pragma.c:228
#, fuzzy
msgid "malformed '#pragma pack' - ignored"
msgstr "¤ª¤«¤·¤Ê #pragma align - ̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: c-pragma.c:185
+#: c-pragma.c:183
#, fuzzy
msgid "malformed '#pragma pack(push[, id], <n>)' - ignored"
msgstr "¤ª¤«¤·¤Ê #pragma align - ̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: c-pragma.c:187
+#: c-pragma.c:185
#, fuzzy
msgid "malformed '#pragma pack(pop[, id])' - ignored"
msgstr "¤ª¤«¤·¤Ê #pragma map¡¢Ìµ»ë¤µ¤ì¤Þ¤·¤¿"
-#: c-pragma.c:196
+#: c-pragma.c:194
#, fuzzy, c-format
msgid "unknown action '%s' for '#pragma pack' - ignored"
msgstr "'#pragma pack' ¤ÎËöÈø¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: c-pragma.c:233
+#: c-pragma.c:231
msgid "junk at end of '#pragma pack'"
msgstr "'#pragma pack' ¤ÎËöÈø¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: c-pragma.c:247
+#: c-pragma.c:245
#, c-format
msgid "alignment must be a small power of two, not %d"
msgstr ""
-#: c-pragma.c:280
-#, c-format
-msgid "applying #pragma weak `%s' after first use results in unspecified behavior"
+#: c-pragma.c:278
+msgid "%Japplying #pragma weak '%D' after first use results in unspecified behavior"
msgstr ""
-#: c-pragma.c:328 c-pragma.c:333
+#: c-pragma.c:325 c-pragma.c:330
#, fuzzy
msgid "malformed #pragma weak, ignored"
msgstr "¤ª¤«¤·¤Ê #pragma map¡¢Ìµ»ë¤µ¤ì¤Þ¤·¤¿"
-#: c-pragma.c:337
+#: c-pragma.c:334
msgid "junk at end of #pragma weak"
msgstr "#pragma weak ¤ÎËöÈø¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: c-pragma.c:372 c-pragma.c:377
+#: c-pragma.c:367 c-pragma.c:372
#, fuzzy
msgid "malformed #pragma redefine_extname, ignored"
msgstr "¤ª¤«¤·¤Ê #pragma map¡¢Ìµ»ë¤µ¤ì¤Þ¤·¤¿"
-#: c-pragma.c:382
+#: c-pragma.c:377
#, fuzzy
msgid "junk at end of #pragma redefine_extname"
msgstr "#pragma weak ¤ÎËöÈø¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: c-pragma.c:389 c-pragma.c:470
+#: c-pragma.c:384 c-pragma.c:462
#, fuzzy
msgid "#pragma redefine_extname conflicts with declaration"
msgstr "¥Ç¡¼¥¿Îΰè '%s' ¤ÏÁ°¤ÎÀë¸À¤ÈÌ·½â¤·¤Þ¤¹"
-#: c-pragma.c:420
+#: c-pragma.c:413
#, fuzzy
msgid "malformed #pragma extern_prefix, ignored"
msgstr "¤ª¤«¤·¤Ê #pragma map¡¢Ìµ»ë¤µ¤ì¤Þ¤·¤¿"
-#: c-pragma.c:425
+#: c-pragma.c:418
#, fuzzy
msgid "junk at end of #pragma extern_prefix"
msgstr "#pragma map ¤Î½ª¤ê¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: c-pragma.c:457
+#: c-pragma.c:449
#, fuzzy
msgid "asm declaration conflicts with previous rename"
msgstr "`%s' ¤Î¥»¥¯¥·¥ç¥ó¤ÏÁ°Êý¤Ç¤ËÀë¸À¤µ¤ì¤¿¤â¤Î¤È¾×Æͤ·¤Þ¤¹"
-#: c-semantics.c:565
-msgid "break statement not within loop or switch"
-msgstr "break ʸ¤¬ loop ¤Þ¤¿¤Ï switch ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
-
-#: c-semantics.c:583
-msgid "continue statement not within a loop"
-msgstr "continue ʸ¤¬ loop ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
-
-#: c-semantics.c:678
-msgid "destructor needed for `%#D'"
+#: c-semantics.c:697
+#, fuzzy
+msgid "destructor needed for `%D'"
msgstr "`%#D' ¤Î¤¿¤á¤Î¥Ç¥¹¥È¥é¥¯¥¿¤¬É¬ÍפǤ¹"
-#: c-semantics.c:679
+#: c-semantics.c:698
msgid "where case label appears here"
msgstr "case ¥é¥Ù¥ë¤¬¸½¤ì¤¿¤Î¤Ï¤³¤³¤Ç¤¹"
-#: c-semantics.c:682
+#: c-semantics.c:701
msgid "(enclose actions of previous case statements requiring destructors in their own scope.)"
msgstr "(Á°¤Î case ʸ¤Î°Ï¤¤¹þ¤Þ¤ì¤¿Æ°ºî¤Ï¤½¤ì¼«¿È¤Î¥¹¥³¡¼¥×¤Ç¥Ç¥¹¥È¥é¥¯¥¿¤òÍ׵ᤷ¤Þ¤¹)"
-#: c-semantics.c:725 c-typeck.c:6942 cp/semantics.c:897
+#: c-semantics.c:737 c-typeck.c:6239 cp/semantics.c:1070
#, c-format
msgid "%s qualifier ignored on asm"
msgstr "asm ¤Ç¤Ï %s ½¤¾þ»Ò¤¬Ìµ»ë¤µ¤ì¤Þ¤¹"
-#: c-typeck.c:123
+#: c-semantics.c:991
+#, fuzzy
+msgid "will never be executed"
+msgstr "¸Æ¤Ó½Ð¤· %d ¤Ï°ìÅÙ¤â¼Â¹Ô¤»¤º\n"
+
+#: c-typeck.c:120
#, c-format
msgid "`%s' has an incomplete type"
msgstr "`%s' ¤ÏÉÔ´°Á´·¿¤Ç¤¹"
-#: c-typeck.c:145 cp/call.c:2865
+#: c-typeck.c:142 cp/call.c:2532
msgid "invalid use of void expression"
msgstr "void ¼°¤ÎÉÔŬÀڤʻÈÍÑ"
-#: c-typeck.c:153
+#: c-typeck.c:150
#, fuzzy
msgid "invalid use of flexible array member"
msgstr "²ÄÊÑÇÛÎó¥á¥ó¥Ð¤ò½é´ü²½¤·¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:159
+#: c-typeck.c:156
msgid "invalid use of array with unspecified bounds"
msgstr "¶­³¦¤¬»ØÄꤵ¤ì¤Ê¤¤ÇÛÎó¤ÎÉÔŬÀÚ¤ÊÍøÍÑ"
-#: c-typeck.c:167
+#: c-typeck.c:164
#, c-format
msgid "invalid use of undefined type `%s %s'"
msgstr "̤ÄêµÁ¤Î·¿ `%s %s' ¤Î»ÈÍѤÏÉÔŬÀڤǤ¹"
#. If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL.
-#: c-typeck.c:171
+#: c-typeck.c:168
#, c-format
msgid "invalid use of incomplete typedef `%s'"
msgstr "ÉÔ´°Á´¤Ê typedef `%s' ¤Î»ÈÍѤÏÉÔŬÀڤǤ¹"
-#: c-typeck.c:424 c-typeck.c:438
+#: c-typeck.c:415 c-typeck.c:430
msgid "function types not truly compatible in ISO C"
msgstr "´Ø¿ô·¿¤¬ ISO C ¤È´°Á´¸ß´¹¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-typeck.c:603
+#: c-typeck.c:611
msgid "types are not quite compatible"
msgstr "·¿¤ÏÁ´¤¯¸ß´¹¤¬¤¢¤ê¤Þ¤»¤ó"
-#: c-typeck.c:757 c-typeck.c:2687
+#: c-typeck.c:820
+#, fuzzy
+msgid "function return types not compatible due to `volatile'"
+msgstr "´Ø¿ô¤ÎÊÖ¤¹·¿¤¬´Ø¿ô¤Ç¤¢¤Ã¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó"
+
+#: c-typeck.c:966 c-typeck.c:2143
msgid "arithmetic on pointer to an incomplete type"
msgstr "ÉÔ´°Á´·¿¤Ø¤Î¥Ý¥¤¥ó¥¿¤ËÂФ¹¤ë±é»»"
-#: c-typeck.c:1136
+#: c-typeck.c:1339
#, c-format
msgid "%s has no member named `%s'"
msgstr "%s ¤Ë `%s' ¤È¤¤¤¦Ì¾Á°¤Î¥á¥ó¥Ð¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-typeck.c:1172
+#: c-typeck.c:1375
#, c-format
msgid "request for member `%s' in something not a structure or union"
msgstr "¹½Â¤ÂΤǤⶦÍÑÂΤǤâ¤Ê¤¤²¿¤«¤Ç¡¢¥á¥ó¥Ð `%s' ¤òÍ׵ᤵ¤ì¤Þ¤·¤¿"
-#: c-typeck.c:1204
+#: c-typeck.c:1404
msgid "dereferencing pointer to incomplete type"
msgstr "ÉÔ´°Á´·¿¤Î¥Ý¥¤¥ó¥¿¤Ø¤Î´ÖÀÜ»²¾È"
-#: c-typeck.c:1208
+#: c-typeck.c:1408
msgid "dereferencing `void *' pointer"
msgstr "`void *' ¥Ý¥¤¥ó¥¿¤Ø¤Î´ÖÀÜ»²¾È¤Ç¤¹"
-#: c-typeck.c:1225 cp/typeck.c:2369
+#: c-typeck.c:1425 cp/typeck.c:2104
#, c-format
msgid "invalid type argument of `%s'"
msgstr "`%s' ¤Î°ú¿ô¤È¤·¤Æ̵¸ú¤Ê·¿"
-#: c-typeck.c:1244 cp/typeck.c:2395
+#: c-typeck.c:1443 cp/typeck.c:2129
msgid "subscript missing in array reference"
msgstr "ÇÛÎ󻲾ȤǤÎź»ú¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:1265 cp/typeck.c:2437
+#: c-typeck.c:1464 cp/typeck.c:2171
msgid "array subscript has type `char'"
msgstr "ÇÛÎó¤Îź»ú¤¬ `char' ·¿¤Ç¤¹"
-#: c-typeck.c:1273 c-typeck.c:1362 cp/typeck.c:2444 cp/typeck.c:2523
+#: c-typeck.c:1472 c-typeck.c:1561 cp/typeck.c:2175 cp/typeck.c:2261
msgid "array subscript is not an integer"
msgstr "ÇÛÎó¤Îź»ú¤¬À°¿ô·¿¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-typeck.c:1306
+#: c-typeck.c:1505
msgid "ISO C forbids subscripting `register' array"
msgstr "ISO C ¤Ï `register' ÇÛÎó¤Ø¤Îź»ú¤ò¶Ø¤¸¤Þ¤¹"
-#: c-typeck.c:1308
+#: c-typeck.c:1507
#, fuzzy
msgid "ISO C90 forbids subscripting non-lvalue array"
msgstr "ISO C89 Èóº¸ÊÕÃÍÇÛÎó¤Ø¤Îź»ú¤ò¶Ø¤¸¤Þ¤¹"
-#: c-typeck.c:1341
+#: c-typeck.c:1540
msgid "subscript has type `char'"
msgstr "ź»ú¤¬ `char' ·¿¤ò¤â¤Á¤Þ¤¹"
-#: c-typeck.c:1357 cp/typeck.c:2518
+#: c-typeck.c:1556 cp/typeck.c:2256
msgid "subscripted value is neither array nor pointer"
msgstr "ź»ú¤ò¤Ä¤±¤é¤ì¤¿Ãͤ¬ÇÛÎó¤Ç¤â¥Ý¥¤¥ó¥¿¤Ç¤â¤¢¤ê¤Þ¤»¤ó"
-#: c-typeck.c:1411
-#, c-format
-msgid "`%s' undeclared here (not in a function)"
-msgstr "`%s' ¤¬¤³¤³¤Ç¤ÏÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó (´Ø¿ô¤ÎÃæ¤Ç¤Ï¤Ê¤¤)"
-
-#: c-typeck.c:1418
-#, c-format
-msgid "`%s' undeclared (first use in this function)"
-msgstr "`%s' ¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó (¤³¤Î´Ø¿ôÆâ¤ÇºÇ½é¤ËÍøÍÑ)"
-
-#: c-typeck.c:1423
-msgid "(Each undeclared identifier is reported only once"
-msgstr "(̤Àë¸À¤Î³ÆÊÑ¿ô¤Ë¤Ä¤¤¤Æ¤Ï¡¢¤½¤ì¤¬ºÇ½é¤Ë¸½¤ï¤ì¤¿¤½¤ì¤¾¤ì¤Î´Ø¿ô"
-
-#: c-typeck.c:1424
-msgid "for each function it appears in.)"
-msgstr " ¤ËÂФ·¤Æ°ìÅÙ¤À¤±Êó¹ð¤µ¤ì¤Þ¤¹¡£)"
-
-#: c-typeck.c:1441
+#: c-typeck.c:1586
#, c-format
msgid "local declaration of `%s' hides instance variable"
msgstr "`%s' ¤Î¥í¡¼¥«¥ëÀë¸À¤Ç¡¢¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô¤¬±£¤µ¤ì¤Þ¤¹"
-#: c-typeck.c:1518
+#: c-typeck.c:1679
msgid "called object is not a function"
msgstr "¸Æ¤Ó½Ð¤µ¤ì¤¿¥ª¥Ö¥¸¥§¥¯¥È¤Ï´Ø¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-typeck.c:1604 cp/typeck.c:2829
+#. This situation leads to run-time undefined behavior. We can't,
+#. therefore, simply error unless we can prove that all possible
+#. executions of the program must execute the code.
+#: c-typeck.c:1711
+#, fuzzy
+msgid "function called through a non-compatible type"
+msgstr "sizeof ¤¬ÉÔ´°Á´¤Ê·¿¤ËŬÍѤµ¤ì¤Þ¤·¤¿"
+
+#: c-typeck.c:1805 cp/typeck.c:2544
msgid "too many arguments to function"
msgstr "´Ø¿ô¤ËÂФ¹¤ë°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹"
-#: c-typeck.c:1625
+#: c-typeck.c:1826
#, c-format
msgid "type of formal parameter %d is incomplete"
msgstr "Àµ¼°¤Ê²¾°ú¿ô %d ¤Î·¿¤¬ÉÔ´°Á´¤Ç¤¹"
-#: c-typeck.c:1638
+#: c-typeck.c:1839
#, c-format
msgid "%s as integer rather than floating due to prototype"
msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤ÏÉâÆ°¾®¿ô·¿¤Ç¤Ï¤Ê¤¯À°¿ô·¿¤È¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:1641
+#: c-typeck.c:1842
#, c-format
msgid "%s as integer rather than complex due to prototype"
msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤ÏÊ£ÁÇ¿ô¤Ç¤Ï¤Ê¤¯À°¿ô·¿¤È¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:1644
+#: c-typeck.c:1845
#, c-format
msgid "%s as complex rather than floating due to prototype"
msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤ÏÉâÆ°¾®¿ô·¿¤Ç¤Ï¤Ê¤¯Ê£ÁÇ¿ô·¿¤È¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:1647
+#: c-typeck.c:1848
#, c-format
msgid "%s as floating rather than integer due to prototype"
msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤ÏÀ°¿ô·¿¤Ç¤Ï¤Ê¤¯ÉâÆ°¾®¿ô·¿¤È¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:1650
+#: c-typeck.c:1851
#, c-format
msgid "%s as complex rather than integer due to prototype"
msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤ÏÀ°¿ô·¿¤Ç¤Ï¤Ê¤¯Ê£ÁÇ¿ô·¿¤È¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:1653
+#: c-typeck.c:1854
#, c-format
msgid "%s as floating rather than complex due to prototype"
msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤ÏÊ£ÁÇ¿ô¤Ç¤Ï¤Ê¤¯ÉâÆ°¾®¿ô·¿¤È¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:1663
+#: c-typeck.c:1864
#, c-format
msgid "%s as `float' rather than `double' due to prototype"
msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ë¤È %s ¤Ï `double' ¤Ç¤Ê¤¯ `float' ¤È¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:1681
+#: c-typeck.c:1882
#, c-format
msgid "%s with different width due to prototype"
msgstr "%s ¤Ï¥×¥í¥È¥¿¥¤¥×¤Ç¤Î·¿¤ÎÉý¤È¤Ï°Û¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:1715
+#: c-typeck.c:1908
#, c-format
msgid "%s as unsigned due to prototype"
msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ê %s ¤ÏÉä¹ç¤Ê¤·¤È¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:1717
+#: c-typeck.c:1910
#, c-format
msgid "%s as signed due to prototype"
msgstr "¥×¥í¥È¥¿¥¤¥×¤Ë¤è¤ê %s ¤ÏÉä¹çÉÕ¤­¤È¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:1751 cp/typeck.c:2933
+#: c-typeck.c:1944 cp/typeck.c:2650
msgid "too few arguments to function"
msgstr "´Ø¿ô¤Ø¤Î°ú¿ô¤¬¾¯¤Ê¤¹¤®¤Þ¤¹"
-#: c-typeck.c:1793
+#: c-typeck.c:1984
msgid "suggest parentheses around + or - inside shift"
msgstr "¥·¥Õ¥ÈÃæ¤Î + ¤ä - ¤Î¼þ¤ê¤Ç¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹"
-#: c-typeck.c:1800
+#: c-typeck.c:1991
msgid "suggest parentheses around && within ||"
msgstr "|| ¤È¶¦¤Ë»È¤ï¤ì¤ë && ¤Î¼þ¤ê¤Ç¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹"
-#: c-typeck.c:1809
+#: c-typeck.c:2000
msgid "suggest parentheses around arithmetic in operand of |"
msgstr "·×»»¤¬ | ±é»»»Ò¤Î¹à¤È¤Ê¤ë¾ì¹ç¤Ë¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹"
-#: c-typeck.c:1812
+#: c-typeck.c:2003
msgid "suggest parentheses around comparison in operand of |"
msgstr "Èæ³Ó¤¬ | ±é»»»Ò¤Î¹à¤È¤Ê¤ë¾ì¹ç¤Ë¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹"
-#: c-typeck.c:1821
+#: c-typeck.c:2012
msgid "suggest parentheses around arithmetic in operand of ^"
msgstr "·×»»¤¬ ^ ±é»»»Ò¤Î¹à¤È¤Ê¤ë¾ì¹ç¤Ë¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹"
-#: c-typeck.c:1824
+#: c-typeck.c:2015
msgid "suggest parentheses around comparison in operand of ^"
msgstr "·×»»¤¬ ^ ±é»»»Ò¤Î¹à¤È¤Ê¤ë¾ì¹ç¤Ë¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹"
-#: c-typeck.c:1831
+#: c-typeck.c:2022
msgid "suggest parentheses around + or - in operand of &"
msgstr "& ±é»»»Ò¤Î¼þ¤ê¤Î + ¤ä - ¤Î¼þ¤ê¤Ë¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹"
-#: c-typeck.c:1834
+#: c-typeck.c:2025
msgid "suggest parentheses around comparison in operand of &"
msgstr "Èæ³Ó¤¬ & ±é»»»Ò¤Î¹à¤È¤Ê¤ë¾ì¹ç¤Ë¤Ï³ç¸Ì¤ò¤Ä¤±¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹"
-#: c-typeck.c:1841
+#: c-typeck.c:2032
msgid "comparisons like X<=Y<=Z do not have their mathematical meaning"
msgstr "X<=Y<=Z ¤ÎÍͤÊÈæ³Ó¤Ï¿ô³ØŪ¤Ê°ÕÌ£¤Ç¤Î·ë²Ì¤ò¤â¤¿¤é¤·¤Þ¤»¤ó"
-#: c-typeck.c:2001 c-typeck.c:2036
-#, fuzzy
-msgid "division by zero"
-msgstr "#if ¤Ç¥¼¥í½ü»»¤¬È¯À¸¤·¤Þ¤·¤¿"
-
-#: c-typeck.c:2081 cp/typeck.c:3194
-msgid "right shift count is negative"
-msgstr "±¦¥·¥Õ¥È²ó¿ô¤¬Éé¤Î¿ô¤Ç¤¹"
-
-#: c-typeck.c:2088 cp/typeck.c:3200
-msgid "right shift count >= width of type"
-msgstr "±¦¥·¥Õ¥È²ó¿ô >= ·¿¤ÎÉý¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
-
-#: c-typeck.c:2109 cp/typeck.c:3219
-msgid "left shift count is negative"
-msgstr "º¸¥·¥Õ¥È²ó¿ô¤¬Éé¤Î¿ô¤Ç¤¹"
-
-#: c-typeck.c:2112 cp/typeck.c:3221
-msgid "left shift count >= width of type"
-msgstr "º¸¥·¥Õ¥È²ó¿ô >= ·¿¤ÎÉý¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
-
-#: c-typeck.c:2133
-msgid "shift count is negative"
-msgstr "¥·¥Õ¥È²ó¿ô¤¬Éé¤ÎÃͤǤ¹"
-
-#: c-typeck.c:2135
-msgid "shift count >= width of type"
-msgstr "¥·¥Õ¥È²ó¿ô >= ·¿¤ÎÉý¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
-
-#: c-typeck.c:2152 cp/typeck.c:3256
-msgid "comparing floating point with == or != is unsafe"
-msgstr "ÉâÆ°¾®¿ôÅÀ¤ÎÈæ³Ó¤Ç == ¤ä != ¤ò»È¤¦¤Î¤Ï°ÂÁ´¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-
-#: c-typeck.c:2178 c-typeck.c:2184
-msgid "ISO C forbids comparison of `void *' with function pointer"
-msgstr "ISO C ¤Ï `void *' ¤È´Ø¿ô¥Ý¥¤¥ó¥¿¤È¤ÎÈæ³Ó¤ò¶Ø¤¸¤Þ¤¹"
-
-#: c-typeck.c:2187 c-typeck.c:2227 c-typeck.c:2255
-msgid "comparison of distinct pointer types lacks a cast"
-msgstr "·¿¤¬Á´¤¯°Û¤Ê¤ë¥Ý¥¤¥ó¥¿¤ÎÈæ³Ó¤Ç¥­¥ã¥¹¥È¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-
-#: c-typeck.c:2201 c-typeck.c:2206 c-typeck.c:2275 c-typeck.c:2280
-msgid "comparison between pointer and integer"
-msgstr "¥Ý¥¤¥ó¥¿¤ÈÀ°¿ô¤È¤ÎÈæ³Ó¤ò¹Ô¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
-
-#: c-typeck.c:2222 c-typeck.c:2250
-msgid "ISO C forbids ordered comparisons of pointers to functions"
-msgstr "ISO C ´Ø¿ô¥Ý¥¤¥ó¥¿¤Î½ç½øÈæ³Ó¤ò¶Ø¤¸¤Þ¤¹"
-
-#: c-typeck.c:2247
-msgid "comparison of complete and incomplete pointers"
-msgstr "´°Á´¤Ê¥Ý¥¤¥ó¥¿¤ÈÉÔ´°Á´¤Ê¥Ý¥¤¥ó¥¿¤È¤ÎÈæ³Ó¤Ç¤¹"
-
-#: c-typeck.c:2263 c-typeck.c:2270
-msgid "ordered comparison of pointer with integer zero"
-msgstr "À°¿ô 0 ¤È¥Ý¥¤¥ó¥¿¤È¤Î½ç½øÈæ³Ó¤Ç¤¹"
-
-#: c-typeck.c:2294 cp/typeck.c:3389
-msgid "unordered comparison on non-floating point argument"
-msgstr "ÈóÉâÆ°¾®¿ôÅÀ°ú¿ô¤Ç¤Î½ç½øÉÕ¤±¤é¤ì¤Ê¤¤Èæ³Ó¤Ç¤¹"
-
-#: c-typeck.c:2505
-msgid "comparison between signed and unsigned"
-msgstr "Éä¹çÉÕ¤­¤ÈÉä¹ç̵¤·¤È¤ÎÈæ³Ó¤Ç¤¹"
-
-#: c-typeck.c:2551 cp/typeck.c:3633
-msgid "comparison of promoted ~unsigned with constant"
-msgstr "~¤Çȿž¤µ¤ì¤¿³Ê¾å¤²Éä¹ç̵¤··¿¤ÈÄê¿ô¤È¤ÎÈæ³Ó¤Ç¤¹"
-
-#: c-typeck.c:2559 cp/typeck.c:3641
-msgid "comparison of promoted ~unsigned with unsigned"
-msgstr "~¤Çȿž¤µ¤ì¤¿Éä¹ç̵¤··¿¤ÈÉä¹ç̵¤··¿¤È¤ÎÈæ³Ó¤Ç¤¹"
-
-#: c-typeck.c:2639
+#: c-typeck.c:2095
msgid "pointer of type `void *' used in subtraction"
msgstr "`void *' ·¿¤Î¥Ý¥¤¥ó¥¿¤Îº¹¤òµá¤á¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:2641
+#: c-typeck.c:2097
msgid "pointer to a function used in subtraction"
msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤Îº¹¤òµá¤á¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:2738
+#: c-typeck.c:2191
msgid "wrong type argument to unary plus"
msgstr "ñ¹à¥×¥é¥¹¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:2751
+#: c-typeck.c:2204
msgid "wrong type argument to unary minus"
msgstr "ñ¹à¥Þ¥¤¥Ê¥¹¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:2768
+#: c-typeck.c:2221
msgid "ISO C does not support `~' for complex conjugation"
msgstr "ISO C ¤ÏÊ£ÁǶ¦ÌòÍѤΠ`~' ¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-typeck.c:2774
+#: c-typeck.c:2227
msgid "wrong type argument to bit-complement"
msgstr "¥Ó¥Ã¥Èȿž¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:2783
+#: c-typeck.c:2235
msgid "wrong type argument to abs"
msgstr "abs ¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:2795
+#: c-typeck.c:2247
msgid "wrong type argument to conjugation"
msgstr "Ê£ÁǶ¦Ìò(~)¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:2809
+#: c-typeck.c:2261
msgid "wrong type argument to unary exclamation mark"
msgstr "ñ¹à´¶Ã²Éä(!)¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:2852
+#: c-typeck.c:2304
msgid "ISO C does not support `++' and `--' on complex types"
msgstr "ISO C ¤Ï complex ·¿¤Ç¤Î `++' ¤È `--' ¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: c-typeck.c:2867 c-typeck.c:2899
+#: c-typeck.c:2319 c-typeck.c:2351
#, fuzzy
msgid "wrong type argument to increment"
msgstr "¥Ó¥Ã¥Èȿž¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:2869 c-typeck.c:2901
+#: c-typeck.c:2321 c-typeck.c:2353
#, fuzzy
msgid "wrong type argument to decrement"
msgstr "¥Ó¥Ã¥Èȿž¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:2890
+#: c-typeck.c:2342
#, fuzzy
msgid "increment of pointer to unknown structure"
msgstr "ÉÔÌÀ¤Ê¹½Â¤ÂΤËÂФ¹¤ë¥Ý¥¤¥ó¥¿¤Î%s"
-#: c-typeck.c:2892
+#: c-typeck.c:2344
#, fuzzy
msgid "decrement of pointer to unknown structure"
msgstr "ÉÔÌÀ¤Ê¹½Â¤ÂΤËÂФ¹¤ë¥Ý¥¤¥ó¥¿¤Î%s"
-#: c-typeck.c:3029
-msgid "ISO C forbids the address of a cast expression"
-msgstr "ISO C ¤Ï¥­¥ã¥¹¥È¼°¤Î¥¢¥É¥ì¥¹É¾²Á¤ò¶Ø¤¸¤Þ¤¹"
-
-#: c-typeck.c:3039
+#: c-typeck.c:2469
msgid "invalid lvalue in unary `&'"
msgstr "ñ¹à¤Î `&' ¤Ç¤Îº¸ÊÕÃͤ¬Ìµ¸ú¤Ç¤¹"
-#: c-typeck.c:3071
+#: c-typeck.c:2501
#, c-format
msgid "attempt to take address of bit-field structure member `%s'"
msgstr "¹½Â¤ÂÎ¥á¥ó¥Ð `%s' ¤Î¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤Î¥¢¥É¥ì¥¹¤ò¼èÆÀ¤·¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:3180 c-typeck.c:4651 c-typeck.c:4667 c-typeck.c:4683
-#: final.c:3146 final.c:3148 gcc.c:4381 rtl-error.c:122 toplev.c:1694
-#: config/cris/cris.c:545 cp/spew.c:1538 cp/typeck.c:4367 java/expr.c:364
-#: java/verify.c:1467 java/verify.c:1468 java/verify.c:1483
-#, c-format
-msgid "%s"
-msgstr "%s"
-
-#: c-typeck.c:3241
-msgid "ISO C forbids use of conditional expressions as lvalues"
+#: c-typeck.c:2634
+#, fuzzy
+msgid "use of conditional expressions as lvalues is deprecated"
msgstr "ISO C ¤Ïº¸ÊÕÃͤȤ·¤Æ¤Î¾ò·ï¼°¤ÎÍøÍѤò¶Ø¤¸¤Þ¤¹"
-#: c-typeck.c:3244
-msgid "ISO C forbids use of compound expressions as lvalues"
+#: c-typeck.c:2637
+#, fuzzy
+msgid "use of compound expressions as lvalues is deprecated"
msgstr "ISO C ¤Ïº¸ÊÕÃͤȤ·¤Æ¤ÎÊ£¹ç¼°¤ÎÍøÍѤò¶Ø¤¸¤Þ¤¹"
-#: c-typeck.c:3247
-msgid "ISO C forbids use of cast expressions as lvalues"
+#: c-typeck.c:2640
+#, fuzzy
+msgid "use of cast expressions as lvalues is deprecated"
msgstr "ISO C ¤Ïº¸ÊÕÃͤȤ·¤Æ¤Î¥­¥ã¥¹¥È¼°¤ÎÍøÍѤò¶Ø¤¸¤Þ¤¹"
-#: c-typeck.c:3264
+#: c-typeck.c:2655
#, c-format
msgid "%s of read-only member `%s'"
msgstr "%s¤¬Æɤ߹þ¤ßÀìÍÑ¥á¥ó¥Ð `%s' ¤Ë¹Ô¤ï¤ì¤Þ¤·¤¿"
-#: c-typeck.c:3268
+#: c-typeck.c:2659
#, c-format
msgid "%s of read-only variable `%s'"
msgstr "%s¤¬Æɤ߹þ¤ßÀìÍÑÊÑ¿ô `%s' ¤Ë¹Ô¤ï¤ì¤Þ¤·¤¿"
-#: c-typeck.c:3271
+#: c-typeck.c:2662
#, c-format
msgid "%s of read-only location"
msgstr "%s¤¬Æɤ߹þ¤ßÀìÍÑÎΰè¤Ç¹Ô¤ï¤ì¤Þ¤·¤¿"
-#: c-typeck.c:3290
+#: c-typeck.c:2680
#, fuzzy, c-format
msgid "cannot take address of bit-field `%s'"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤Î¥¢¥É¥ì¥¹¤ò¼èÆÀ¤Ç¤­¤Þ¤»¤ó"
-#: c-typeck.c:3318
+#: c-typeck.c:2708 treelang/treetree.c:946
#, c-format
msgid "global register variable `%s' used in nested function"
msgstr "Âç°è¥ì¥¸¥¹¥¿ÊÑ¿ô `%s' ¤¬Æþ¤ì»Ò´Ø¿ô¤ÎÃæ¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: c-typeck.c:3322
+#: c-typeck.c:2712 treelang/treetree.c:950
#, c-format
msgid "register variable `%s' used in nested function"
msgstr "¥ì¥¸¥¹¥¿ÊÑ¿ô `%s' ¤¬Æþ¤ì»Ò´Ø¿ô¤ÎÃæ¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: c-typeck.c:3329
+#: c-typeck.c:2719 treelang/treetree.c:957
#, c-format
msgid "address of global register variable `%s' requested"
msgstr "Í׵ᤵ¤ì¤¿Âç°è¥ì¥¸¥¹¥¿ÊÑ¿ô `%s' ¤Î¥¢¥É¥ì¥¹"
-#: c-typeck.c:3341
+#: c-typeck.c:2731
msgid "cannot put object with volatile field into register"
msgstr "volatile ¥Õ¥£¡¼¥ë¥É¤ò¥ì¥¸¥¹¥¿¤Ë»ý¤Ã¤Æ¤¤¤ë¤è¤¦¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤òÃÖ¤±¤Þ¤»¤ó"
-#: c-typeck.c:3345
+#: c-typeck.c:2735 treelang/treetree.c:962
#, c-format
msgid "address of register variable `%s' requested"
msgstr "register ÊÑ¿ô `%s' ¤Î¥¢¥É¥ì¥¹¤¬Í׵ᤵ¤ì¤Þ¤·¤¿"
-#: c-typeck.c:3453
+#: c-typeck.c:2820
msgid "signed and unsigned type in conditional expression"
msgstr "¾ò·ï¼°¤ËÉä¹çÉÕ¤­·¿¤ÈÉä¹ç̵¤··¿¤È¤¬¤¢¤ê¤Þ¤¹"
-#: c-typeck.c:3460
+#: c-typeck.c:2827
msgid "ISO C forbids conditional expr with only one void side"
msgstr "ISO C ¤ÏÊÒ¦¤À¤±¤¬ void ¤È¤Ê¤ë¾ò·ï¼°¤ò¶Ø¤¸¤Þ¤¹"
-#: c-typeck.c:3476 c-typeck.c:3483
+#: c-typeck.c:2843 c-typeck.c:2850
msgid "ISO C forbids conditional expr between `void *' and function pointer"
msgstr "ISO C ¤Ï `void *' ¤È´Ø¿ô¥Ý¥¤¥ó¥¿¤È¤ò¾ò·ï¼°¤È¤¹¤ë¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-#: c-typeck.c:3489
+#: c-typeck.c:2856
msgid "pointer type mismatch in conditional expression"
msgstr "¾ò·ï¼°¤Ç¤Î¥Ý¥¤¥ó¥¿¤Î·¿¤¬Å¬¹ç¤·¤Þ¤»¤ó"
-#: c-typeck.c:3496 c-typeck.c:3506
+#: c-typeck.c:2863 c-typeck.c:2873
msgid "pointer/integer type mismatch in conditional expression"
msgstr "¾ò·ï¼°¤Ç¥Ý¥¤¥ó¥¿·¿¤ÈÀ°¿ô·¿¤¬Å¬¹ç¤·¤Þ¤»¤ó"
-#: c-typeck.c:3520
+#: c-typeck.c:2887
msgid "type mismatch in conditional expression"
msgstr "¾ò·ï¼°¤Ç¤Î·¿¤ÎÁȹç¤ï¤»¤¬Å¬¹ç¤·¤Þ¤»¤ó"
-#: c-typeck.c:3591 cp/typeck.c:4623
+#: c-typeck.c:2947
msgid "left-hand operand of comma expression has no effect"
msgstr "¥«¥ó¥Þ±é»»»Ò¤Îº¸Â¦¤Î¼°¤Ë¸úÎϤ¬¤¢¤ê¤Þ¤»¤ó"
-#: c-typeck.c:3635
+#: c-typeck.c:2978
msgid "cast specifies array type"
msgstr "¥­¥ã¥¹¥È¤¬ÇÛÎ󷿤ò»ØÄꤷ¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:3641
+#: c-typeck.c:2984
msgid "cast specifies function type"
msgstr "¥­¥ã¥¹¥È¤Ï´Ø¿ô·¿¤ò»ØÄꤷ¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:3651
+#: c-typeck.c:2994
msgid "ISO C forbids casting nonscalar to the same type"
msgstr "ISO C ¤ÏÈó¥¹¥«¥é¡¼¤«¤éƱ¤¸·¿¤Ø¤Î¥­¥ã¥¹¥È¤ò¶Ø¤¸¤Þ¤¹"
-#: c-typeck.c:3670
+#: c-typeck.c:3012
msgid "ISO C forbids casts to union type"
msgstr "ISO C ¤Ï¶¦ÍÑÂη¿¤Ø¤Î¥­¥ã¥¹¥È¤ò¶Ø¤¸¤Þ¤¹"
-#: c-typeck.c:3685
+#: c-typeck.c:3020
msgid "cast to union type from type not present in union"
msgstr "¶¦ÍÑÂΤÎÃæ¤Ë¤Ê¤¤·¿¤«¤é¶¦ÍÑÂη¿¤Ø¥­¥ã¥¹¥È¤·¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:3736
+#: c-typeck.c:3071
#, fuzzy
msgid "cast adds new qualifiers to function type"
msgstr "¥­¥ã¥¹¥È¤Ï´Ø¿ô·¿¤ò»ØÄꤷ¤Æ¤¤¤Þ¤¹"
#. There are qualifiers present in IN_OTYPE that are not
#. present in IN_TYPE.
-#: c-typeck.c:3741
+#: c-typeck.c:3076
msgid "cast discards qualifiers from pointer target type"
msgstr "¥­¥ã¥¹¥È¤Ë¤è¤Ã¤Æ¥Ý¥¤¥ó¥¿¤¬¼¨¤¹·¿¤«¤é½¤¾þ»Ò¤¬ÀÚ¤ê¼Î¤Æ¤é¤ì¤Þ¤¹"
-#: c-typeck.c:3756
+#: c-typeck.c:3091
msgid "cast increases required alignment of target type"
msgstr "¥­¥ã¥¹¥È¤Ë¤è¤Ã¤Æ¥Ý¥¤¥ó¥¿¤¬¼¨¤¹·¿¤ÎÍ׵ᥢ¥é¥¤¥ó¥á¥ó¥È¤¬Áý²Ã¤·¤Þ¤¹"
-#: c-typeck.c:3762 cp/typeck.c:5144
+#: c-typeck.c:3097 cp/typeck.c:4889
msgid "cast from pointer to integer of different size"
msgstr "¥­¥ã¥¹¥È¤Ë¤è¤Ã¤Æ¥Ý¥¤¥ó¥¿¤«¤é°Û¤Ê¤ë¥µ¥¤¥º¤ÎÀ°¿ô¤È¤Ê¤ê¤Þ¤¹"
-#: c-typeck.c:3767
+#: c-typeck.c:3102
msgid "cast does not match function type"
msgstr "¥­¥ã¥¹¥È¤Ë¤è¤ë´Ø¿ô¤Î·¿¤¬Å¬¹ç¤·¤Þ¤»¤ó"
-#: c-typeck.c:3774 cp/typeck.c:5151
+#: c-typeck.c:3109 cp/typeck.c:4896
msgid "cast to pointer from integer of different size"
msgstr "°Û¤Ê¤ë¥µ¥¤¥º¤ÎÀ°¿ô¤«¤é¥Ý¥¤¥ó¥¿¤Ë¥­¥ã¥¹¥È¤µ¤ì¤Þ¤·¤¿"
-#: c-typeck.c:3786
+#: c-typeck.c:3121
msgid "type-punning to incomplete type might break strict-aliasing rules"
msgstr ""
-#: c-typeck.c:3790
+#: c-typeck.c:3125
msgid "dereferencing type-punned pointer will break strict-aliasing rules"
msgstr ""
+#: c-typeck.c:3136
+#, fuzzy
+msgid "ISO C forbids conversion of function pointer to object pointer type"
+msgstr "ISO C++ ¤Ï¥Ý¥¤¥ó¥¿·×»»¤Ë¥á¥ó¥Ð´Ø¿ô¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
+
+#: c-typeck.c:3145
+#, fuzzy
+msgid "ISO C forbids conversion of object pointer to function pointer type"
+msgstr "ISO C ¤Ï `void *' ¤È´Ø¿ô¥Ý¥¤¥ó¥¿¤È¤ÎÈæ³Ó¤ò¶Ø¤¸¤Þ¤¹"
+
#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
#. Reject anything strange now.
-#: c-typeck.c:3949
+#: c-typeck.c:3303
msgid "invalid lvalue in assignment"
msgstr "ÂåÆþ¤È¤·¤Æ̵¸ú¤Êº¸ÊÕÃͤǤ¹"
#. Convert new value to destination type.
-#: c-typeck.c:3958 c-typeck.c:3983 c-typeck.c:4000 cp/typeck.c:5266
-#: cp/typeck.c:5416
+#. Check this here to avoid odd errors when trying to convert
+#. a throw to the type of the COND_EXPR.
+#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
+#. Reject anything strange now.
+#: c-typeck.c:3312 c-typeck.c:3337 c-typeck.c:3354 cp/typeck.c:5008
+#: cp/typeck.c:5152
msgid "assignment"
msgstr "ÂåÆþ"
-#: c-typeck.c:4070
+#: c-typeck.c:3421
#, fuzzy
msgid "cannot pass rvalue to reference parameter"
msgstr "»²¾È·¿¤ËÂФ·¤Æ new ¤òŬÍѤǤ­¤Þ¤»¤ó"
-#: c-typeck.c:4174 c-typeck.c:4241
+#: c-typeck.c:3530 c-typeck.c:3606
#, c-format
msgid "%s makes qualified function pointer from unqualified"
msgstr "%s¤Ë¤è¤ê¡¢½¤¾þ¤µ¤ì¤Ê¤¤´Ø¿ô¥Ý¥¤¥ó¥¿¤«¤é¡¢½¤¾þ¤µ¤ì¤¿´Ø¿ô¥Ý¥¤¥ó¥¿¤òºî¤ê¤Þ¤¹"
-#: c-typeck.c:4178 c-typeck.c:4221
+#: c-typeck.c:3534 c-typeck.c:3586
#, c-format
msgid "%s discards qualifiers from pointer target type"
msgstr "%s¤Ë¤è¤ê¡¢¥Ý¥¤¥ó¥¿¤Î¼¨¤¹·¿¤«¤é¤Î½¤¾þ»Ò¤¬ÀÚ¤ê¼Î¤Æ¤é¤ì¤Þ¤¹"
-#: c-typeck.c:4184
+#: c-typeck.c:3540
msgid "ISO C prohibits argument conversion to union type"
msgstr "ISO C ¤Ç¤Ï°ú¿ô¤«¤é¶¦ÍÑÂΤؤÎÊÑ´¹¤ò¶Ø»ß¤·¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:4213
+#: c-typeck.c:3578
#, c-format
msgid "ISO C forbids %s between function pointer and `void *'"
msgstr "ISO C ¤Ï´Ø¿ô¥Ý¥¤¥ó¥¿¤È `void *' ¤È¤Î%s¤ò¶Ø¤¸¤Þ¤¹"
-#: c-typeck.c:4230
+#: c-typeck.c:3595
#, c-format
msgid "pointer targets in %s differ in signedness"
msgstr "%s ¤Ç¥Ý¥¤¥ó¥¿¤Î¼¨¤¹ÂоݤÎÉä¹æ¤Î̵ͭ¤¬°Û¤Ê¤ê¤Þ¤¹"
-#: c-typeck.c:4246
+#: c-typeck.c:3611
#, c-format
msgid "%s from incompatible pointer type"
msgstr "¸ß´¹À­¤Î¤Ê¤¤¥Ý¥¤¥ó¥¿·¿¤«¤é¤Î%s¤Ç¤¹"
-#: c-typeck.c:4252 c-typeck.c:4804 cp/typeck.c:1653
+#: c-typeck.c:3617 c-typeck.c:4124 cp/typeck.c:1366
msgid "invalid use of non-lvalue array"
msgstr "Èóº¸ÊÕÃÍÇÛÎó¤Î̵¸ú¤ÊÍøÍÑ"
-#: c-typeck.c:4267
+#: c-typeck.c:3631
#, c-format
msgid "%s makes pointer from integer without a cast"
msgstr "%s¤Ë¤è¤ê¡¢¥­¥ã¥¹¥È¤Ê¤·¤ÇÀ°¿ô¤«¤é¥Ý¥¤¥ó¥¿¤òºî¤ê¤Þ¤·¤¿"
-#: c-typeck.c:4275
+#: c-typeck.c:3638
#, c-format
msgid "%s makes integer from pointer without a cast"
msgstr "%s¤Ë¤è¤ê¡¢¥­¥ã¥¹¥È¤Ê¤·¤Ç¥Ý¥¤¥ó¥¿¤«¤éÀ°¿ô¤òºî¤ê¤Þ¤·¤¿"
-#: c-typeck.c:4289 c-typeck.c:4292
+#: c-typeck.c:3652 c-typeck.c:3655
#, c-format
msgid "incompatible type for argument %d of `%s'"
msgstr "%d ÈÖÌܤΰú¿ô¤¬ `%s' ¤Î·¿¤È¸ß´¹À­¤¬¤¢¤ê¤Þ¤»¤ó"
-#: c-typeck.c:4296
+#: c-typeck.c:3659
#, c-format
msgid "incompatible type for argument %d of indirect function call"
msgstr "´ÖÀÜŪ¤Ê´Ø¿ô¸Æ¤Ó½Ð¤·¤ÎÂè %d °ú¿ô¤ËÂФ·¤Æ¸ß´¹À­¤Î¤Ê¤¤·¿¤Ç¤¹"
-#: c-typeck.c:4300
+#: c-typeck.c:3663
#, c-format
msgid "incompatible types in %s"
msgstr "%s ¤Ë¸ß´¹À­¤Î¤Ê¤¤·¿"
#. Function name is known; supply it.
-#: c-typeck.c:4358
+#: c-typeck.c:3719
#, fuzzy, c-format
msgid "passing arg of `%s'"
msgstr "°ú¿ô %d ¸Ä¤Î `%s' ¤òÅϤ·¤Þ¤¹"
#. Function name unknown (call through ptr).
-#: c-typeck.c:4368
+#: c-typeck.c:3728
#, fuzzy
msgid "passing arg of pointer to function"
msgstr "°ú¿ô %d ¸Ä¤Î´Ø¿ô¥Ý¥¤¥ó¥¿¤òÅϤ·¤Þ¤¹"
#. Function name is known; supply it.
-#: c-typeck.c:4376
+#: c-typeck.c:3736
#, c-format
msgid "passing arg %d of `%s'"
msgstr "°ú¿ô %d ¸Ä¤Î `%s' ¤òÅϤ·¤Þ¤¹"
#. Function name unknown (call through ptr); just give arg number.
-#: c-typeck.c:4386
+#: c-typeck.c:3745
#, c-format
msgid "passing arg %d of pointer to function"
msgstr "°ú¿ô %d ¸Ä¤Î´Ø¿ô¥Ý¥¤¥ó¥¿¤òÅϤ·¤Þ¤¹"
-#: c-typeck.c:4452
-msgid "initializer for static variable is not constant"
-msgstr "static ÊÑ¿ô¤Î½é´ü²½»Ò¤¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-
-#: c-typeck.c:4458
-msgid "initializer for static variable uses complicated arithmetic"
-msgstr "static ÊÑ¿ô¤Î½é´ü²½»Ò¤¬Ê£»¨¤Ê·×»»¤ò»È¤Ã¤Æ¤¤¤Þ¤¹"
-
-#: c-typeck.c:4466
-msgid "aggregate initializer is not constant"
-msgstr "½¸¹çÂΤνé´ü²½»Ò¤¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-
-#: c-typeck.c:4468
-msgid "aggregate initializer uses complicated arithmetic"
-msgstr "½¸¹çÂΤνé´ü²½»Ò¤ÇÊ£»¨¤Ê·×»»¤ò¹Ô¤Ã¤Æ¤¤¤Þ¤¹"
-
-#: c-typeck.c:4475
+#: c-typeck.c:3802
msgid "traditional C rejects automatic aggregate initialization"
msgstr "¸Å¤¤ C ¤Ç¤Ï¼«Æ°Åª¤Ê½¸¹çÂΤνé´ü²½¤òµñÀ䤷¤Þ¤¹"
-#: c-typeck.c:4654 c-typeck.c:4670 c-typeck.c:4686
+#: c-typeck.c:3973 c-typeck.c:3988 c-typeck.c:4003
#, c-format
msgid "(near initialization for `%s')"
msgstr "(`%s' ¤Î½é´ü²½¤ÏÉÔ´°Á´¤Ç¤¹)"
-#: c-typeck.c:4737 cp/typeck2.c:488
+#: c-typeck.c:4052 cp/typeck2.c:559
msgid "char-array initialized from wide string"
msgstr "¥ï¥¤¥Éʸ»úÎ󤫤é char ¤ÎÇÛÎ󤬽é´ü²½¤µ¤ì¤Þ¤·¤¿"
-#: c-typeck.c:4744 cp/typeck2.c:495
+#: c-typeck.c:4059 cp/typeck2.c:566
msgid "int-array initialized from non-wide string"
msgstr "Èó¥ï¥¤¥Éʸ»úÎ󤫤é int ¤ÎÇÛÎ󤬽é´ü²½¤µ¤ì¤Þ¤·¤¿"
-#: c-typeck.c:4762 cp/typeck2.c:511
+#: c-typeck.c:4077 cp/typeck2.c:581
msgid "initializer-string for array of chars is too long"
msgstr "char ¤ÎÇÛÎó¤Ë¤È¤Ã¤Æ½é´ü²½»Òʸ»úÎó¤¬Ä¹¤¹¤®¤Þ¤¹"
-#: c-typeck.c:4822
+#: c-typeck.c:4147
msgid "array initialized from non-constant array expression"
msgstr "ÈóÄê¿ôÇÛÎó¼°¤«¤éÇÛÎ󤬽é´ü²½¤µ¤ì¤Þ¤·¤¿"
-#: c-typeck.c:4839 c-typeck.c:4841 c-typeck.c:4857 c-typeck.c:4878
-#: c-typeck.c:6281
+#: c-typeck.c:4164 c-typeck.c:4166 c-typeck.c:4182 c-typeck.c:4203
+#: c-typeck.c:5585
msgid "initializer element is not constant"
msgstr "½é´ü²½»Ò¤ÎÍ×ÁǤ¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-typeck.c:4873
+#: c-typeck.c:4198
msgid "initialization"
msgstr "½é´ü²½"
-#: c-typeck.c:4884 c-typeck.c:6286
+#: c-typeck.c:4209 c-typeck.c:5590
msgid "initializer element is not computable at load time"
msgstr "½é´ü²½»Ò¤ÎÍ×ÁÇ¤Ï¥í¡¼¥É»þ¤Ë·×»»¤µ¤ìÆÀ¤Þ¤»¤ó"
-#: c-typeck.c:4899 cp/typeck2.c:588
+#: c-typeck.c:4224 cp/typeck2.c:658
msgid "invalid initializer"
msgstr "̵¸ú¤Ê½é´ü²½»Ò"
-#: c-typeck.c:5393
+#: c-typeck.c:4509 cp/decl.c:4465
+#, fuzzy
+msgid "opaque vector types cannot be initialized"
+msgstr "²ÄÊÑĹ¥ª¥Ö¥¸¥§¥¯¥È¤Ï½é´ü²½¤µ¤ì¤Ê¤¤¤³¤È¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦"
+
+#: c-typeck.c:4703
msgid "extra brace group at end of initializer"
msgstr "½é´ü²½»Ò¤Î½ª¤ï¤ê¤Ë;ʬ¤Ê¥Ö¥ì¡¼¥¹¤Î¥°¥ë¡¼¥×"
-#: c-typeck.c:5413
+#: c-typeck.c:4723
msgid "missing braces around initializer"
msgstr "½é´ü²½»Ò¤Î¤Þ¤ï¤ê¤Î¥Ö¥ì¡¼¥¹¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:5473
+#: c-typeck.c:4783
msgid "braces around scalar initializer"
msgstr "¥¹¥«¥é¡¼½é´ü²½»Ò¤¬¥Ö¥ì¡¼¥¹¤Ç°Ï¤Þ¤ì¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:5521
+#: c-typeck.c:4830
msgid "initialization of flexible array member in a nested context"
msgstr "¥Í¥¹¥È¤·¤¿Ê¸Ì®¤Ç²ÄÊÑÇÛÎó¥á¥ó¥Ð¤ò½é´ü²½¤·¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:5523
+#: c-typeck.c:4832
msgid "initialization of a flexible array member"
msgstr "²ÄÊÑÇÛÎó¥á¥ó¥Ð¤ò½é´ü²½¤·¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:5554
+#: c-typeck.c:4863
msgid "missing initializer"
msgstr "½é´ü²½»Ò¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:5580
+#: c-typeck.c:4889
msgid "empty scalar initializer"
msgstr "¶õ¤Î¥¹¥«¥é¡¼½é´ü²½»Ò"
-#: c-typeck.c:5585
+#: c-typeck.c:4894
msgid "extra elements in scalar initializer"
msgstr "¥¹¥«¥é¡¼½é´ü²½»Ò¤Ë;ʬ¤ÊÍ×ÁÇ"
-#: c-typeck.c:5671
+#: c-typeck.c:4979
msgid "initialization designators may not nest"
msgstr "½é´ü²½»Ø̾»Ò¤Ç¤Ï¥Í¥¹¥È¤µ¤»¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó"
-#: c-typeck.c:5692 c-typeck.c:5763
+#: c-typeck.c:5000 c-typeck.c:5068
msgid "array index in non-array initializer"
msgstr "ÈóÇÛÎó¤Î½é´ü²½»Ò¤ËÇÛÎ󥤥ó¥Ç¥Ã¥¯¥¹¤¬»È¤ï¤ì¤Þ¤·¤¿"
-#: c-typeck.c:5697 c-typeck.c:5817
+#: c-typeck.c:5005 c-typeck.c:5121
msgid "field name not in record or union initializer"
msgstr "¥ì¥³¡¼¥É¤ä¶¦ÍÑÂΤ˥ե£¡¼¥ë¥É̾¤¬¤Ê¤¤½é´ü²½»Ò¤Ç¤¹"
-#: c-typeck.c:5759 c-typeck.c:5761
+#: c-typeck.c:5064 c-typeck.c:5066
msgid "nonconstant array index in initializer"
msgstr "½é´ü²½»ÒÆâ¤ËÈóÄê¿ô¤ÎÇÛÎ󥤥ó¥Ç¥Ã¥¯¥¹¤¬¤¢¤ê¤Þ¤¹"
-#: c-typeck.c:5765 c-typeck.c:5768
+#: c-typeck.c:5070 c-typeck.c:5073
msgid "array index in initializer exceeds array bounds"
msgstr "½é´ü²½»ÒÆâ¤ÎÇÛÎ󥤥ó¥Ç¥Ã¥¯¥¹¤¬ÇÛÎó¤Î¶­³¦¤òĶ¤¨¤Þ¤·¤¿"
-#: c-typeck.c:5779
+#: c-typeck.c:5084
msgid "empty index range in initializer"
msgstr "½é´ü²½»ÒÆâ¤Ë¶õ¤ÎÈÏ°Ï¥¤¥ó¥Ç¥Ã¥¯¥¹¤¬¤¢¤ê¤Þ¤¹"
-#: c-typeck.c:5788
+#: c-typeck.c:5093
msgid "array index range in initializer exceeds array bounds"
msgstr "½é´ü²½»Ò¤ÎÈÏ°Ï¥¤¥ó¥Ç¥Ã¥¯¥¹¤¬ÇÛÎó¤Î¶­³¦¤òĶ¤¨¤Þ¤·¤¿"
-#: c-typeck.c:5829
+#: c-typeck.c:5133
#, c-format
msgid "unknown field `%s' specified in initializer"
msgstr "ÉÔÌÀ¤Ê¥Õ¥£¡¼¥ë¥É `%s' ¤¬½é´ü²½»Ò¤Ç»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: c-typeck.c:5866 c-typeck.c:5887 c-typeck.c:6348
+#: c-typeck.c:5169 c-typeck.c:5190 c-typeck.c:5652
msgid "initialized field with side-effects overwritten"
msgstr "½é´ü²½¤µ¤ì¤¿¥Õ¥£¡¼¥ë¥É¤¬ÉûºîÍѤǾå½ñ¤­¤µ¤ì¤Þ¤¹"
-#: c-typeck.c:6558
+#: c-typeck.c:5860
msgid "excess elements in char array initializer"
msgstr "char ÇÛÎó½é´ü²½»ÒÆâ¤ÎÍ×ÁǤ¬Â¿¤¹¤®¤Þ¤¹"
-#: c-typeck.c:6565 c-typeck.c:6611
+#: c-typeck.c:5867 c-typeck.c:5913
msgid "excess elements in struct initializer"
msgstr "¹½Â¤Âνé´ü²½»ÒÆâ¤ÎÍ×ÁǤ¬Â¿¤¹¤®¤Þ¤¹"
-#: c-typeck.c:6626
+#: c-typeck.c:5928
#, fuzzy
msgid "non-static initialization of a flexible array member"
msgstr "²ÄÊÑÇÛÎó¥á¥ó¥Ð¤ò½é´ü²½¤·¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:6693
+#: c-typeck.c:5995
msgid "excess elements in union initializer"
msgstr "¶¦ÍÑÂνé´ü²½»ÒÆâ¤ÎÍ×ÁǤ¬Â¿¤¹¤®¤Þ¤¹"
-#: c-typeck.c:6714
+#: c-typeck.c:6016
msgid "traditional C rejects initialization of unions"
msgstr "¸Å¤¤ C ¤Ï¶¦ÍÑÂΤνé´ü¤òµñÀ䤷¤Þ¤¹"
-#: c-typeck.c:6777
+#: c-typeck.c:6079
msgid "excess elements in array initializer"
msgstr "ÇÛÎó½é´ü²½»ÒÆâ¤ÎÍ×ÁǤ¬Â¿¤¹¤®¤Þ¤¹"
-#: c-typeck.c:6806
+#: c-typeck.c:6108
#, fuzzy
msgid "excess elements in vector initializer"
msgstr "¥¹¥«¥é¡¼½é´ü²½»ÒÆâ¤ÎÍ×ÁǤ¬Â¿¤¹¤®¤Þ¤¹"
-#: c-typeck.c:6828
+#: c-typeck.c:6130
msgid "excess elements in scalar initializer"
msgstr "¥¹¥«¥é¡¼½é´ü²½»ÒÆâ¤ÎÍ×ÁǤ¬Â¿¤¹¤®¤Þ¤¹"
-#: c-typeck.c:6935
+#: c-typeck.c:6232
msgid "asm template is not a string constant"
msgstr "asm ¥Æ¥ó¥×¥ì¡¼¥È¤¬Ê¸»úÎóÄê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-typeck.c:6967
+#: c-typeck.c:6264
msgid "invalid lvalue in asm statement"
msgstr "asm ʸ¤ÎÃæ¤Ë̵¸ú¤Êº¸ÊÕÃÍ"
-#: c-typeck.c:7042
+#: c-typeck.c:6336
msgid "modification by `asm'"
msgstr "`asm' ¤Ë¤è¤ë½¤Àµ"
-#: c-typeck.c:7061 cp/typeck.c:6237
+#: c-typeck.c:6354 cp/typeck.c:5926
msgid "function declared `noreturn' has a `return' statement"
msgstr "`noreturn' ¤ÎÀë¸À¤µ¤ì¤¿´Ø¿ô¤Ë `return' ʸ¤¬¤¢¤ê¤Þ¤¹"
-#: c-typeck.c:7068
+#: c-typeck.c:6361
msgid "`return' with no value, in function returning non-void"
msgstr "Ìá¤ê·¿¤¬´Ø¿ô¤Ç¡¢`return' ¤ËÃͤ¬¤¢¤ê¤Þ¤»¤ó"
-#: c-typeck.c:7074
+#: c-typeck.c:6367
msgid "`return' with a value, in function returning void"
msgstr "Ìá¤ê·¿¤¬ void ¤Î´Ø¿ô¤Ç¡¢`return' ¤ËÃͤ¬¤¢¤ê¤Þ¤¹"
-#: c-typeck.c:7078
+#: c-typeck.c:6371
msgid "return"
msgstr "return"
-#: c-typeck.c:7130
+#: c-typeck.c:6423
msgid "function returns address of local variable"
msgstr "´Ø¿ô¤¬¥í¡¼¥«¥ëÊÑ¿ô¤Î¥¢¥É¥ì¥¹¤òÊÖ¤·¤Æ¤¤¤Þ¤¹"
-#: c-typeck.c:7186 cp/semantics.c:555
+#: c-typeck.c:6478 cp/semantics.c:749
msgid "switch quantity not an integer"
msgstr "switch ¤ÎÆâÍƤ¬À°¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: c-typeck.c:7196
+#: c-typeck.c:6488
msgid "`long' switch expression not converted to `int' in ISO C"
msgstr "ISO C ¤Ç¤Ï `long' ¤Î switch ¼°¤Ï `int' ¤ËÊÑ´¹¤µ¤ì¤Þ¤»¤ó"
-#: c-typeck.c:7231 cp/decl.c:5523
+#: c-typeck.c:6529 cp/parser.c:5538
msgid "case label not within a switch statement"
msgstr "case ¥é¥Ù¥ë¤¬ switch ʸ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
-#: c-typeck.c:7233 cp/decl.c:5528
+#: c-typeck.c:6531
msgid "`default' label not within a switch statement"
msgstr "`default' ¥é¥Ù¥ë¤¬ switch ʸ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
-#: calls.c:1934 tree-inline.c:1177
-#, c-format
-msgid "inlining failed in call to `%s'"
+#: c-typeck.c:6683 c-typeck.c:6717
+#, fuzzy
+msgid "division by zero"
+msgstr "#if ¤Ç¥¼¥í½ü»»¤¬È¯À¸¤·¤Þ¤·¤¿"
+
+#: c-typeck.c:6762 cp/typeck.c:2928
+msgid "right shift count is negative"
+msgstr "±¦¥·¥Õ¥È²ó¿ô¤¬Éé¤Î¿ô¤Ç¤¹"
+
+#: c-typeck.c:6769 cp/typeck.c:2934
+msgid "right shift count >= width of type"
+msgstr "±¦¥·¥Õ¥È²ó¿ô >= ·¿¤ÎÉý¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
+
+#: c-typeck.c:6790 cp/typeck.c:2953
+msgid "left shift count is negative"
+msgstr "º¸¥·¥Õ¥È²ó¿ô¤¬Éé¤Î¿ô¤Ç¤¹"
+
+#: c-typeck.c:6793 cp/typeck.c:2955
+msgid "left shift count >= width of type"
+msgstr "º¸¥·¥Õ¥È²ó¿ô >= ·¿¤ÎÉý¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
+
+#: c-typeck.c:6814
+msgid "shift count is negative"
+msgstr "¥·¥Õ¥È²ó¿ô¤¬Éé¤ÎÃͤǤ¹"
+
+#: c-typeck.c:6816
+msgid "shift count >= width of type"
+msgstr "¥·¥Õ¥È²ó¿ô >= ·¿¤ÎÉý¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
+
+#: c-typeck.c:6833 cp/typeck.c:2990
+msgid "comparing floating point with == or != is unsafe"
+msgstr "ÉâÆ°¾®¿ôÅÀ¤ÎÈæ³Ó¤Ç == ¤ä != ¤ò»È¤¦¤Î¤Ï°ÂÁ´¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+
+#: c-typeck.c:6859 c-typeck.c:6865
+msgid "ISO C forbids comparison of `void *' with function pointer"
+msgstr "ISO C ¤Ï `void *' ¤È´Ø¿ô¥Ý¥¤¥ó¥¿¤È¤ÎÈæ³Ó¤ò¶Ø¤¸¤Þ¤¹"
+
+#: c-typeck.c:6868 c-typeck.c:6908 c-typeck.c:6936
+msgid "comparison of distinct pointer types lacks a cast"
+msgstr "·¿¤¬Á´¤¯°Û¤Ê¤ë¥Ý¥¤¥ó¥¿¤ÎÈæ³Ó¤Ç¥­¥ã¥¹¥È¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+
+#: c-typeck.c:6882 c-typeck.c:6887 c-typeck.c:6956 c-typeck.c:6961
+msgid "comparison between pointer and integer"
+msgstr "¥Ý¥¤¥ó¥¿¤ÈÀ°¿ô¤È¤ÎÈæ³Ó¤ò¹Ô¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
+
+#: c-typeck.c:6903 c-typeck.c:6931
+msgid "ISO C forbids ordered comparisons of pointers to functions"
+msgstr "ISO C ´Ø¿ô¥Ý¥¤¥ó¥¿¤Î½ç½øÈæ³Ó¤ò¶Ø¤¸¤Þ¤¹"
+
+#: c-typeck.c:6928
+msgid "comparison of complete and incomplete pointers"
+msgstr "´°Á´¤Ê¥Ý¥¤¥ó¥¿¤ÈÉÔ´°Á´¤Ê¥Ý¥¤¥ó¥¿¤È¤ÎÈæ³Ó¤Ç¤¹"
+
+#: c-typeck.c:6944 c-typeck.c:6951
+msgid "ordered comparison of pointer with integer zero"
+msgstr "À°¿ô 0 ¤È¥Ý¥¤¥ó¥¿¤È¤Î½ç½øÈæ³Ó¤Ç¤¹"
+
+#: c-typeck.c:6975 cp/typeck.c:3126
+msgid "unordered comparison on non-floating point argument"
+msgstr "ÈóÉâÆ°¾®¿ôÅÀ°ú¿ô¤Ç¤Î½ç½øÉÕ¤±¤é¤ì¤Ê¤¤Èæ³Ó¤Ç¤¹"
+
+#: c-typeck.c:7185
+msgid "comparison between signed and unsigned"
+msgstr "Éä¹çÉÕ¤­¤ÈÉä¹ç̵¤·¤È¤ÎÈæ³Ó¤Ç¤¹"
+
+#: c-typeck.c:7231 cp/typeck.c:3373
+msgid "comparison of promoted ~unsigned with constant"
+msgstr "~¤Çȿž¤µ¤ì¤¿³Ê¾å¤²Éä¹ç̵¤··¿¤ÈÄê¿ô¤È¤ÎÈæ³Ó¤Ç¤¹"
+
+#: c-typeck.c:7239 cp/typeck.c:3381
+msgid "comparison of promoted ~unsigned with unsigned"
+msgstr "~¤Çȿž¤µ¤ì¤¿Éä¹ç̵¤··¿¤ÈÉä¹ç̵¤··¿¤È¤ÎÈæ³Ó¤Ç¤¹"
+
+#: calls.c:1838
+#, fuzzy
+msgid "%Jinlining failed in call to '%F'"
msgstr "`%s' ¤Ø¤Î¸Æ¤Ó½Ð¤·¤Î¥¤¥ó¥é¥¤¥ó²½¤Ë¼ºÇÔ¤·¤Þ¤·¤¿"
-#: calls.c:1935 calls.c:2271 tree-inline.c:1178
+#: calls.c:1839 calls.c:2208 tree-inline.c:1339 tree-inline.c:1346
msgid "called from here"
msgstr "¤³¤³¤«¤é¸Æ¤Ð¤ì¤Þ¤·¤¿"
-#: calls.c:2270
-#, c-format
-msgid "can't inline call to `%s'"
+#: calls.c:2207
+#, fuzzy
+msgid "%Jcan't inline call to '%F'"
msgstr "`%s' ¤Ø¤Î¸Æ¤Ó½Ð¤·¤Ï¥¤¥ó¥é¥¤¥ó²½¤Ç¤­¤Þ¤»¤ó"
-#: calls.c:2300
+#: calls.c:2216
+msgid "ignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2229
+msgid "ignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2239
msgid "function call has aggregate value"
msgstr "´Ø¿ô¸Æ¤Ó½Ð¤·¤¬½¸¹çÂΤÎÃͤò»ý¤Ã¤Æ¤¤¤Þ¤¹"
-#: cfgloop.c:1107
+#: cfg.c:835
#, c-format
-msgid "Size of loop %d should be %d, not %d."
+msgid "bb %d on wrong place"
msgstr ""
-#: cfgloop.c:1126
+#: cfg.c:841
#, c-format
-msgid "Bb %d do not belong to loop %d."
+msgid "prev_bb of %d should be %d, not %d"
msgstr ""
-#: cfgloop.c:1144
+#: cfg.c:857
#, c-format
-msgid "Loop %d's header does not have exactly 2 entries."
+msgid "verify_flow_info: Wrong count of block %i %i"
msgstr ""
-#: cfgloop.c:1152
+#: cfg.c:863
#, c-format
-msgid "Loop %d's latch does not have exactly 1 successor."
+msgid "verify_flow_info: Wrong frequency of block %i %i"
msgstr ""
-#: cfgloop.c:1157
+#: cfg.c:871
#, c-format
-msgid "Loop %d's latch does not have header as successor."
+msgid "verify_flow_info: Duplicate edge %i->%i"
msgstr ""
-#: cfgloop.c:1162
+#: cfg.c:877
#, c-format
-msgid "Loop %d's latch does not belong directly to it."
+msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
msgstr ""
-#: cfgloop.c:1168
+#: cfg.c:883
#, c-format
-msgid "Loop %d's header does not belong directly to it."
+msgid "verify_flow_info: Wrong count of edge %i->%i %i"
msgstr ""
-#: cfgrtl.c:1774
-#, c-format
-msgid "bb %d on wrong place"
-msgstr ""
+#: cfg.c:895
+#, fuzzy, c-format
+msgid "verify_flow_info: Basic block %d succ edge is corrupted"
+msgstr "´ðËÜ¥Ö¥í¥Ã¥¯ %d pred edge ¥ê¥¹¥È¤¬µ¡Ç½¤·¤Æ¤¤¤Þ¤»¤ó"
-#: cfgrtl.c:1780
+#: cfg.c:909 cfgrtl.c:1971
#, c-format
-msgid "prev_bb of %d should be %d, not %d"
+msgid "Wrong amount of branch edges after unconditional jump %i"
msgstr ""
-#: cfgrtl.c:1800
+#: cfg.c:917
#, fuzzy, c-format
-msgid "end insn %d for block %d not found in the insn stream"
-msgstr "½ªÎ»Ì¿Îá %d(¥Ö¥í¥Ã¥¯ %d) ¤¬°ìÏ¢¤ÎÌ¿ÎáÎó¤ÎÃæ¤Ë¸«¤Ä¤«¤ê¤Þ¤»¤ó¡£"
+msgid "basic block %d pred edge is corrupted"
+msgstr "´ðËÜ¥Ö¥í¥Ã¥¯ %d pred edge ¥ê¥¹¥È¤¬µ¡Ç½¤·¤Æ¤¤¤Þ¤»¤ó"
-#: cfgrtl.c:1814
+#: cfg.c:943
#, fuzzy, c-format
-msgid "insn %d is in multiple basic blocks (%d and %d)"
-msgstr "Ì¿Îá %d ¤¬Ê£¿ô¤Î´ðËÜ¥Ö¥í¥Ã¥¯(%d ¤È %d)¤ÎÃæ¤Ë¤¢¤ê¤Þ¤¹"
+msgid "basic block %i edge lists are corrupted"
+msgstr "´ðËÜ¥Ö¥í¥Ã¥¯ %i edge ¥ê¥¹¥È¤¬µ¡Ç½¤·¤Æ¤¤¤Þ¤»¤ó"
-#: cfgrtl.c:1826
-#, fuzzy, c-format
-msgid "head insn %d for block %d not found in the insn stream"
-msgstr "³«»ÏÌ¿Îá %d(¥Ö¥í¥Ã¥¯ %d) ¤¬°ìÏ¢¤ÎÌ¿ÎáÎó¤ÎÃæ¤Ë¸«¤Ä¤«¤ê¤Þ¤»¤ó¡£"
+#: cfg.c:955
+msgid "verify_flow_info failed"
+msgstr ""
-#: cfgrtl.c:1848
+#: cfgloop.c:1134
#, c-format
-msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
+msgid "Size of loop %d should be %d, not %d."
msgstr ""
-#: cfgrtl.c:1855
+#: cfgloop.c:1153
#, c-format
-msgid "verify_flow_info: Wrong count of block %i %i"
+msgid "Bb %d do not belong to loop %d."
msgstr ""
-#: cfgrtl.c:1861
+#: cfgloop.c:1171
#, c-format
-msgid "verify_flow_info: Wrong frequency of block %i %i"
+msgid "Loop %d's header does not have exactly 2 entries."
msgstr ""
-#: cfgrtl.c:1869
+#: cfgloop.c:1179
#, c-format
-msgid "verify_flow_info: Duplicate edge %i->%i"
+msgid "Loop %d's latch does not have exactly 1 successor."
msgstr ""
-#: cfgrtl.c:1875
+#: cfgloop.c:1184
#, c-format
-msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+msgid "Loop %d's latch does not have header as successor."
msgstr ""
-#: cfgrtl.c:1881
+#: cfgloop.c:1189
#, c-format
-msgid "verify_flow_info: Wrong count of edge %i->%i %i"
+msgid "Loop %d's latch does not belong directly to it."
msgstr ""
-#: cfgrtl.c:1911
+#: cfgloop.c:1195
#, c-format
-msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgid "Loop %d's header does not belong directly to it."
msgstr ""
-#: cfgrtl.c:1926
+#: cfgloop.c:1201
#, c-format
-msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgid "Loop %d's latch is marked as part of irreducible region."
msgstr ""
-#: cfgrtl.c:1928
-msgid "wrong insn in the fallthru edge"
+#: cfgloop.c:1231
+#, fuzzy, c-format
+msgid "Basic block %d should be marked irreducible."
+msgstr "´ðËÜ¥Ö¥í¥Ã¥¯ %d pred edge ¥ê¥¹¥È¤¬µ¡Ç½¤·¤Æ¤¤¤Þ¤»¤ó"
+
+#: cfgloop.c:1237
+#, fuzzy, c-format
+msgid "Basic block %d should not be marked irreducible."
+msgstr "´ðËÜ¥Ö¥í¥Ã¥¯¤¬Ï¢Â³Åª¤ËÈÖ¹æÉÕ¤±¤é¤ì¤Æ¤¤¤Þ¤»¤ó"
+
+#: cfgloop.c:1245
+#, c-format
+msgid "Edge from %d to %d should be marked irreducible."
msgstr ""
-#: cfgrtl.c:1935
+#: cfgloop.c:1252
+#, c-format
+msgid "Edge from %d to %d should not be marked irreducible."
+msgstr ""
+
+#: cfgrtl.c:1877
#, fuzzy, c-format
-msgid "verify_flow_info: Basic block %d succ edge is corrupted"
-msgstr "´ðËÜ¥Ö¥í¥Ã¥¯ %d pred edge ¥ê¥¹¥È¤¬µ¡Ç½¤·¤Æ¤¤¤Þ¤»¤ó"
+msgid "end insn %d for block %d not found in the insn stream"
+msgstr "½ªÎ»Ì¿Îá %d(¥Ö¥í¥Ã¥¯ %d) ¤¬°ìÏ¢¤ÎÌ¿ÎáÎó¤ÎÃæ¤Ë¸«¤Ä¤«¤ê¤Þ¤»¤ó¡£"
+
+#: cfgrtl.c:1891
+#, fuzzy, c-format
+msgid "insn %d is in multiple basic blocks (%d and %d)"
+msgstr "Ì¿Îá %d ¤¬Ê£¿ô¤Î´ðËÜ¥Ö¥í¥Ã¥¯(%d ¤È %d)¤ÎÃæ¤Ë¤¢¤ê¤Þ¤¹"
-#: cfgrtl.c:1951
+#: cfgrtl.c:1903
+#, fuzzy, c-format
+msgid "head insn %d for block %d not found in the insn stream"
+msgstr "³«»ÏÌ¿Îá %d(¥Ö¥í¥Ã¥¯ %d) ¤¬°ìÏ¢¤ÎÌ¿ÎáÎó¤ÎÃæ¤Ë¸«¤Ä¤«¤ê¤Þ¤»¤ó¡£"
+
+#: cfgrtl.c:1925
+msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i"
+msgstr ""
+
+#: cfgrtl.c:1953
#, c-format
msgid "Missing REG_EH_REGION note in the end of bb %i"
msgstr ""
-#: cfgrtl.c:1959
+#: cfgrtl.c:1961
#, c-format
msgid "Too many outgoing branch edges from bb %i"
msgstr ""
-#: cfgrtl.c:1964
+#: cfgrtl.c:1966
#, c-format
msgid "Fallthru edge after unconditional jump %i"
msgstr ""
-#: cfgrtl.c:1969
-#, c-format
-msgid "Wrong amount of branch edges after unconditional jump %i"
-msgstr ""
-
-#: cfgrtl.c:1975
+#: cfgrtl.c:1977
#, fuzzy, c-format
msgid "Wrong amount of branch edges after conditional jump %i"
msgstr "¾ò·ï¤Î¼Â¹Ô¤è¤ê¤Ïʬ´ô¤ÎÀ¸À®¤òÍ¥À褹¤ë"
-#: cfgrtl.c:1980
+#: cfgrtl.c:1982
#, c-format
msgid "Call edges for non-call insn in bb %i"
msgstr ""
-#: cfgrtl.c:1989
+#: cfgrtl.c:1991
#, c-format
msgid "Abnormal edges for no purpose in bb %i"
msgstr ""
-#: cfgrtl.c:2004
-#, c-format
-msgid "missing barrier after block %i"
-msgstr ""
-
-#: cfgrtl.c:2014
-#, fuzzy, c-format
-msgid "basic block %d pred edge is corrupted"
-msgstr "´ðËÜ¥Ö¥í¥Ã¥¯ %d pred edge ¥ê¥¹¥È¤¬µ¡Ç½¤·¤Æ¤¤¤Þ¤»¤ó"
-
-#: cfgrtl.c:2031
+#: cfgrtl.c:2001
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is NULL"
msgstr ""
-#: cfgrtl.c:2035
+#: cfgrtl.c:2005
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is %i"
msgstr ""
-#: cfgrtl.c:2049 cfgrtl.c:2059
+#: cfgrtl.c:2019 cfgrtl.c:2029
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
msgstr "NOTE_INSN_BASIC_BLOCK ¤¬¥Ö¥í¥Ã¥¯ %d ¤Ë¤¢¤ê¤Þ¤»¤ó"
-#: cfgrtl.c:2072
+#: cfgrtl.c:2042
#, fuzzy, c-format
msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
msgstr "NOTE_INSN_BASIC_BLOCK %d ¤¬´ðËÜ¥Ö¥í¥Ã¥¯ %d ¤ÎÃæ¤Û¤É¤Ë¤¢¤ê¤Þ¤¹"
-#: cfgrtl.c:2084
+#: cfgrtl.c:2052
#, fuzzy, c-format
msgid "in basic block %d:"
msgstr "´ðËÜ¥Ö¥í¥Ã¥¯ %d Æâ:"
-#: cfgrtl.c:2085
+#: cfgrtl.c:2053
msgid "flow control insn inside a basic block"
msgstr ""
-#: cfgrtl.c:2104
-#, fuzzy, c-format
-msgid "basic block %i edge lists are corrupted"
-msgstr "´ðËÜ¥Ö¥í¥Ã¥¯ %i edge ¥ê¥¹¥È¤¬µ¡Ç½¤·¤Æ¤¤¤Þ¤»¤ó"
+#: cfgrtl.c:2099
+#, c-format
+msgid "missing barrier after block %i"
+msgstr ""
+
+#: cfgrtl.c:2112
+#, c-format
+msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgstr ""
-#: cfgrtl.c:2119
+#: cfgrtl.c:2127
+#, c-format
+msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgstr ""
+
+#: cfgrtl.c:2129
+msgid "wrong insn in the fallthru edge"
+msgstr ""
+
+#: cfgrtl.c:2146
#, fuzzy
-msgid "basic blocks not numbered consecutively"
+msgid "basic blocks not laid down consecutively"
msgstr "´ðËÜ¥Ö¥í¥Ã¥¯¤¬Ï¢Â³Åª¤ËÈÖ¹æÉÕ¤±¤é¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: cfgrtl.c:2144
+#: cfgrtl.c:2171
#, fuzzy
msgid "insn outside basic block"
msgstr "´ðËÜ¥Ö¥í¥Ã¥¯ %d Æâ:"
-#: cfgrtl.c:2152
+#: cfgrtl.c:2179
#, fuzzy
msgid "return not followed by barrier"
msgstr "'#' ¤Ë¥Þ¥¯¥í²¾°ú¿ô̾¤¬Â³¤¤¤Æ¤¤¤Þ¤»¤ó"
-#: cfgrtl.c:2157
+#: cfgrtl.c:2186
#, c-format
msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr "Ì¿ÎáÏ¢º¿Ãæ¤Î bb ¤Î¿ô (%d) ¤¬ n_basic_blocks (%d) ¤È°ã¤¤¤Þ¤¹"
-#: cfgrtl.c:2161
-msgid "verify_flow_info failed"
+#: cgraph.c:161
+#, fuzzy
+msgid "function body not available"
+msgstr "´Ø¿ô¤ò inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
+
+#: cgraph.c:163 cgraphunit.c:341
+#, fuzzy
+msgid "redefined extern inline functions are not considered for inlining"
+msgstr "¥¤¥ó¥é¥¤¥ó´Ø¿ô¤ò¥¤¥ó¥é¥¤¥ó²½¤Ç¤­¤Ê¤¤¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+
+#: cgraph.c:166 cgraphunit.c:346
+#, fuzzy
+msgid "function not considered for inlining"
+msgstr "´Ø¿ô¤ò inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
+
+#: cgraph.c:168 cgraphunit.c:344
+#, fuzzy
+msgid "function not inlinable"
+msgstr "´Ø¿ô¤ò inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
+
+#: cgraph.c:476
+msgid "%D renamed after being referenced in assembly"
+msgstr ""
+
+#: cgraphunit.c:1042
+msgid "--param large-function-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1055
+msgid "--param large-function-growth limit reached while inlining the caller"
+msgstr ""
+
+#: cgraphunit.c:1120
+msgid "--param max-inline-insns-single limit reached"
+msgstr ""
+
+#: cgraphunit.c:1144
+msgid "--param max-inline-insns-single limit reached after inlining into the callee"
+msgstr ""
+
+#: cgraphunit.c:1221
+msgid "--param inline-unit-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1293 cgraphunit.c:1437
+msgid "recursive inlining"
msgstr ""
-#: collect2.c:425
+#: collect2.c:406
msgid "internal error"
msgstr "ÆâÉô¥¨¥é¡¼"
-#: collect2.c:934
+#: collect2.c:894
msgid "no arguments"
msgstr "°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: collect2.c:1263 collect2.c:1411 collect2.c:1444
+#: collect2.c:1226 collect2.c:1374 collect2.c:1407
#, c-format
msgid "fopen %s"
msgstr "fopen %s"
-#: collect2.c:1266 collect2.c:1416 collect2.c:1447
+#: collect2.c:1229 collect2.c:1379 collect2.c:1410
#, c-format
msgid "fclose %s"
msgstr "fclose %s"
-#: collect2.c:1275
+#: collect2.c:1238
#, c-format
msgid "collect2 version %s"
msgstr "collect2 version %s"
-#: collect2.c:1365
+#: collect2.c:1328
#, c-format
msgid "%d constructor(s) found\n"
msgstr "%d ¸Ä¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤¬¸«¤Ä¤«¤ê¤Þ¤·¤¿\n"
-#: collect2.c:1366
+#: collect2.c:1329
#, c-format
msgid "%d destructor(s) found\n"
msgstr "%d ¸Ä¤Î¥Ç¥¹¥È¥é¥¯¥¿¤¬¸«¤Ä¤«¤ê¤Þ¤·¤¿\n"
-#: collect2.c:1367
+#: collect2.c:1330
#, c-format
msgid "%d frame table(s) found\n"
msgstr "%d ¸Ä¤Î¥Õ¥ì¡¼¥à¥Æ¡¼¥Ö¥ë¤¬¸«¤Ä¤«¤ê¤Þ¤·¤¿\n"
-#: collect2.c:1508
+#: collect2.c:1470
#, c-format
msgid "%s terminated with signal %d [%s]%s"
msgstr "%s ¥·¥°¥Ê¥ë %d [%s]%s ¤Ç½ªÎ»¤µ¤»¤é¤ì¤Þ¤·¤¿"
-#: collect2.c:1527
+#: collect2.c:1488
#, c-format
msgid "%s returned %d exit status"
msgstr "%s ¤Ï exit ¾õÂÖ %d ¤òÊÖ¤·¤Þ¤·¤¿"
-#: collect2.c:1555
+#: collect2.c:1513
#, c-format
msgid "[cannot find %s]"
msgstr "[%s ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó]"
-#: collect2.c:1570
+#: collect2.c:1528
#, c-format
msgid "cannot find `%s'"
msgstr "`%s' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: collect2.c:1581 collect2.c:1584
+#: collect2.c:1539 collect2.c:1542
#, c-format
msgid "redirecting stdout: %s"
msgstr "stdout ¤Ø¤Î¥ê¥À¥¤¥ì¥¯¥È: %s"
-#: collect2.c:1627
+#: collect2.c:1581
#, c-format
msgid "[Leaving %s]\n"
msgstr "[%s ¤òÎ¥¤ì¤Þ¤¹]\n"
-#: collect2.c:1870
+#: collect2.c:1801
#, c-format
msgid ""
"\n"
@@ -3880,86 +3979,86 @@ msgstr ""
"\n"
"write_c_file - ½ÐÎÏ̾¤Ï %s¡¢¥×¥ì¥Õ¥£¥¯¥¹¤Ï %s\n"
-#: collect2.c:2082
+#: collect2.c:2005
msgid "cannot find `nm'"
msgstr "`nm' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: collect2.c:2092 collect2.c:2533
+#: collect2.c:2015 collect2.c:2444
msgid "pipe"
msgstr "pipe"
-#: collect2.c:2096 collect2.c:2537
+#: collect2.c:2019 collect2.c:2448
msgid "fdopen"
msgstr "fdopen"
-#: collect2.c:2122 collect2.c:2563
+#: collect2.c:2045 collect2.c:2474
#, c-format
msgid "dup2 %d 1"
msgstr "dup2 %d 1"
-#: collect2.c:2125 collect2.c:2128 collect2.c:2141 collect2.c:2566
-#: collect2.c:2569 collect2.c:2582
+#: collect2.c:2048 collect2.c:2051 collect2.c:2064 collect2.c:2477
+#: collect2.c:2480 collect2.c:2493
#, c-format
msgid "close %d"
msgstr "close %d"
-#: collect2.c:2131 collect2.c:2572
+#: collect2.c:2054 collect2.c:2483
#, c-format
msgid "execv %s"
msgstr "execv %s"
-#: collect2.c:2185
+#: collect2.c:2108
#, c-format
msgid "init function found in object %s"
msgstr "init ´Ø¿ô¤ò¥ª¥Ö¥¸¥§¥¯¥È %s ¤Ç¸«¤Ä¤±¤Þ¤·¤¿"
-#: collect2.c:2193
+#: collect2.c:2116
#, c-format
msgid "fini function found in object %s"
msgstr "fini ´Ø¿ô¤ò¥ª¥Ö¥¸¥§¥¯¥È %s ¤Ç¸«¤Ä¤±¤Þ¤·¤¿"
-#: collect2.c:2216 collect2.c:2621
+#: collect2.c:2139 collect2.c:2532
msgid "fclose"
msgstr "fclose"
-#: collect2.c:2261
+#: collect2.c:2181
#, c-format
msgid "unable to open file '%s'"
msgstr "¥Õ¥¡¥¤¥ë '%s' ¤ò open ¤Ç¤­¤Þ¤»¤ó"
-#: collect2.c:2263
+#: collect2.c:2183
#, c-format
msgid "unable to stat file '%s'"
msgstr "¥Õ¥¡¥¤¥ë '%s' ¤ò stat ¤Ç¤­¤Þ¤»¤ó"
-#: collect2.c:2269
+#: collect2.c:2189
#, c-format
msgid "unable to mmap file '%s'"
msgstr "¥Õ¥¡¥¤¥ë '%s' ¤ò mmap ¤Ç¤­¤Þ¤»¤ó"
-#: collect2.c:2422
+#: collect2.c:2335
msgid "not found\n"
msgstr "¸«¤Ä¤«¤ê¤Þ¤»¤ó\n"
-#: collect2.c:2424 collect2.c:2600
+#: collect2.c:2337 collect2.c:2511
#, c-format
msgid "dynamic dependency %s not found"
msgstr "ưŪ°Í¸´Ø·¸ %s ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: collect2.c:2444
+#: collect2.c:2356
#, c-format
msgid "bad magic number in file '%s'"
msgstr "¥Õ¥¡¥¤¥ë '%s' ¤ËÉÔÀµ¤Ê¥Þ¥¸¥Ã¥¯¥Ê¥ó¥Ð"
-#: collect2.c:2466
+#: collect2.c:2378
msgid "dynamic dependencies.\n"
msgstr "ưŪ°Í¸´Ø·¸¡£\n"
-#: collect2.c:2524
+#: collect2.c:2435
msgid "cannot find `ldd'"
msgstr "`ldd' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: collect2.c:2585
+#: collect2.c:2496
msgid ""
"\n"
"ldd output with constructors/destructors.\n"
@@ -3967,1397 +4066,1142 @@ msgstr ""
"\n"
"ldd ½ÐÎϤ¬¥³¥ó¥¹¥È¥é¥¯¥¿/¥Ç¥¹¥È¥é¥¯¥¿¤òȼ¤¤¤Þ¤¹¡£\n"
-#: collect2.c:2612
+#: collect2.c:2523
#, c-format
msgid "unable to open dynamic dependency '%s'"
msgstr "ưŪ°Í¸´Ø·¸ '%s' ¤ò³«¤±¤Þ¤»¤ó"
-#: collect2.c:2726
+#: collect2.c:2683
#, c-format
msgid "%s: not a COFF file"
msgstr "%s: COFF ¥Õ¥¡¥¤¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: collect2.c:2845
+#: collect2.c:2802
#, c-format
msgid "%s: cannot open as COFF file"
msgstr "%s: COFF ¥Õ¥¡¥¤¥ë¤È¤·¤Æ³«¤±¤Þ¤»¤ó"
-#: collect2.c:2901
+#: collect2.c:2857
#, fuzzy, c-format
msgid "library lib%s not found"
msgstr "¥é¥¤¥Ö¥é¥ê lib%s ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: collect2.c:3028
+#: combine.c:13027
#, c-format
-msgid "open %s"
-msgstr "open %s"
-
-#: collect2.c:3051
-msgid "incompatibilities between object file & expected values"
-msgstr "ξΩ¤·¤Ê¤¤¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤È´üÂÔÃÍ"
+msgid ""
+";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
+"\n"
+msgstr ""
+";; ·ë¹çÅý·×: %d »î¹Ô, %d ÂåÂØ (%d ¿·¤¿¤Ê¶õ´Ö¤òÍ×µá),\n"
+";; %d À®¸ù¡£\n"
-#: collect2.c:3124
+#: combine.c:13036
#, c-format
msgid ""
"\n"
-"Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
msgstr ""
"\n"
-"¥·¥ó¥Ü¥ë¥Æ¡¼¥Ö¥ë #%d ¤ò½èÍý¤·¤Þ¤¹¡¢¥ª¥Õ¥»¥Ã¥È = 0x%.8lx, ¼ïÎà = %s\n"
+";; ·ë¹ç¹ç·×: %d »î¹Ô, %d ÂåÂØ (%d ¿·¤¿¤Ê¶õ´Ö¤òÍ×µá),\n"
+";; %d À®¸ù¡£\n"
+
+#: convert.c:70
+msgid "cannot convert to a pointer type"
+msgstr "¥Ý¥¤¥ó¥¿·¿¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó"
+
+#: convert.c:267
+msgid "pointer value used where a floating point value was expected"
+msgstr "ÉâÆ°¾®¿ôÅÀ¿ô¤¬¤¢¤ë¤Ù¤­²Õ½ê¤Ç¡¢¥Ý¥¤¥ó¥¿Ãͤ¬»È¤ï¤ì¤Þ¤·¤¿"
-#: collect2.c:3133
-msgid "string section missing"
-msgstr "ʸ»úÎ󥻥¯¥·¥ç¥ó¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+#: convert.c:271
+msgid "aggregate value used where a float was expected"
+msgstr "ÉâÆ°¾®¿ôÅÀ·¿¤¬¤¢¤ë¤Ù¤­²Õ½ê¤Ç¡¢½¸¹çÂΤÎÃͤ¬»È¤ï¤ì¤Þ¤·¤¿"
-#: collect2.c:3136
-msgid "section pointer missing"
-msgstr "¥»¥¯¥·¥ç¥ó¥Ý¥¤¥ó¥¿¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+#: convert.c:296
+msgid "conversion to incomplete type"
+msgstr "ÉÔ´°Á´·¿¤Ø¤ÎÊÑ´¹¤Ç¤¹"
-#: collect2.c:3184
-msgid "no symbol table found"
-msgstr "¥·¥ó¥Ü¥ë¥Æ¡¼¥Ö¥ë¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
+#: convert.c:600 convert.c:678
+msgid "can't convert between vector values of different size"
+msgstr "Â礭¤µ¤Î°Û¤Ê¤ë¥Ù¥¯¥È¥ëÃÍƱ»Î¤ÎÊÑ´¹¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: collect2.c:3197
-msgid "no cmd_strings found"
-msgstr "cmd_strings ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
+#: convert.c:606
+msgid "aggregate value used where an integer was expected"
+msgstr "À°¿ô·¿¤¬¤¢¤ë¤Ù¤­²Õ½ê¤Ç¡¢½¸¹çÂΤÎÃͤ¬»È¤ï¤ì¤Þ¤·¤¿"
-#: collect2.c:3209
-msgid ""
-"\n"
-"Updating header and load commands.\n"
-"\n"
-msgstr ""
-"\n"
-"¥Ø¥Ã¥À¤È load ¥³¥Þ¥ó¥É¤ò¹¹¿·¤·¤Þ¤¹¡£\n"
+#: convert.c:657 f/com.c:1101
+msgid "pointer value used where a complex was expected"
+msgstr "Ê£ÁÇ¿ô·¿¤¬¤¢¤ë¤Ù¤­²Õ½ê¤Ç¡¢¥Ý¥¤¥ó¥¿Ãͤ¬»È¤ï¤ì¤Þ¤·¤¿"
+
+#: convert.c:661 f/com.c:1103
+msgid "aggregate value used where a complex was expected"
+msgstr "Ê£ÁÇ¿ô·¿¤¬¤¢¤ë¤Ù¤­²Õ½ê¤Ç¡¢½¸¹çÂΤÎÃͤ¬»È¤ï¤ì¤Þ¤·¤¿"
+
+#: convert.c:684
+msgid "can't convert value to a vector"
+msgstr "Ãͤò¥Ù¥¯¥È¥ë¤Ë¤ÏÊÑ´¹¤Ç¤­¤Þ¤»¤ó"
+
+#: coverage.c:164
+#, fuzzy, c-format
+msgid "`%s' is not a gcov data file"
+msgstr "\"%s\" ¤ÏÀµ¾ï¤Ê¥Õ¥¡¥¤¥ë̾¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: collect2.c:3216
+#: coverage.c:175
+#, fuzzy, c-format
+msgid "`%s' is version `%.4s', expected version `%.4s'"
+msgstr "gcc ¥É¥é¥¤¥Ð¥Ð¡¼¥¸¥ç¥ó %s ¼Â¹Ô gcc ¥Ð¡¼¥¸¥ç¥ó %s\n"
+
+#: coverage.c:255 coverage.c:263
#, c-format
-msgid "load command map, %d cmds, new size %ld.\n"
-msgstr "load ¥³¥Þ¥ó¥É¥Þ¥Ã¥×¡¢%d ¸Ä¤Î¥³¥Þ¥ó¥É¡¢¿·¤¿¤Ê¥µ¥¤¥º %ld¡£\n"
+msgid "coverage mismatch for function %u while reading execution counters."
+msgstr ""
-#: collect2.c:3247
-msgid ""
-"writing load commands.\n"
-"\n"
+#: coverage.c:257 coverage.c:340
+#, c-format
+msgid "checksum is %x instead of %x"
msgstr ""
-"load ¥³¥Þ¥ó¥É¤ò½ñ¤­¹þ¤ß¤Þ¤¹¡£\n"
-"\n"
-#: collect2.c:3267
+#: coverage.c:265 coverage.c:348
#, c-format
-msgid "close %s"
-msgstr "close %s"
+msgid "number of counters is %d instead of %d"
+msgstr ""
-#: collect2.c:3341
-msgid "could not convert 0x%l.8x into a region"
-msgstr "0x%l.8x ¤òÎΰè¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó"
+#: coverage.c:271
+#, fuzzy, c-format
+msgid "cannot merge separate %s counters for function %u"
+msgstr "¾¤Î´Ø¿ôÆâ¤Ç static ´Ø¿ô¤òÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: collect2.c:3345
-#, c-format
-msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
-msgstr "%s ´Ø¿ô, Îΰè %d, ¥ª¥Õ¥»¥Ã¥È = %ld (0x%.8lx)\n"
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' has overflowed"
+msgstr "¹½Ê¸²òÀÏ´ï¤Î¥¹¥¿¥Ã¥¯¤¬°î¤ì¤Þ¤·¤¿"
-#: collect2.c:3472
-msgid "bad magic number"
-msgstr "ÉÔÀµ¤Ê¥Þ¥¸¥Ã¥¯¥Ê¥ó¥Ð"
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' is corrupted"
+msgstr "%s: `%s' ¤ÏÊÑ´¹¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-#: collect2.c:3473
-msgid "bad header version"
-msgstr "ÉÔÀµ¤Ê¥Ø¥Ã¥À¥Ð¡¼¥¸¥ç¥ó"
+#: coverage.c:319
+#, fuzzy, c-format
+msgid "file %s not found, execution counts assumed to be zero"
+msgstr "¥Õ¥¡¥¤¥ë %s ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¤Î¤Ç¡¢¼Â¹Ô¥«¥¦¥ó¥È¤Ï¥¼¥í¤È¸«¤Ê¤·¤Þ¤¹"
-#: collect2.c:3474
-msgid "bad raw header version"
-msgstr "ÉÔÀµ¤ÊÀ¸¤Î¥Ø¥Ã¥À¥Ð¡¼¥¸¥ç¥ó"
+#: coverage.c:329
+#, fuzzy, c-format
+msgid "no coverage for function '%s' found."
+msgstr "´Ø¿ô `%s' ¤ËÂФ·¤ÆÉÔŬÀÚ¤ÊÊݸ¥¯¥é¥¹"
-#: collect2.c:3475
-msgid "raw header buffer too small"
-msgstr "¾®¤µ¤¹¤®¤ëÀ¸¤Î¥Ø¥Ã¥À¥Ð¥Ã¥Õ¥¡"
+#: coverage.c:337 coverage.c:345
+#, c-format
+msgid "coverage mismatch for function '%s' while reading counter '%s'."
+msgstr ""
-#: collect2.c:3476
-msgid "old raw header file"
-msgstr "¸Å¤¤À¸¤Î¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë"
+#: coverage.c:492
+#, fuzzy, c-format
+msgid "cannot open %s"
+msgstr "%s ¤ò³«¤±¤Þ¤»¤ó"
-#: collect2.c:3477
-msgid "unsupported version"
-msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¥Ð¡¼¥¸¥ç¥ó¤Ç¤¹"
+#: coverage.c:527
+#, fuzzy, c-format
+msgid "error writing `%s'"
+msgstr "%s ¤Ø¤Î½ñ¤­¹þ¤ß¥¨¥é¡¼¤Ç¤¹"
-#: collect2.c:3479
-#, c-format
-msgid "unknown {de,en}code_mach_o_hdr return value %d"
-msgstr "ÉÔÌÀ¤Ê {de,en}code_mach_o_hdr Ìá¤êÃÍ %d"
+#. XXX should be DL_SORRY
+#: cppcharset.c:653
+#, fuzzy, c-format
+msgid "conversion from %s to %s not supported by iconv"
+msgstr "NaN ¤«¤éÉä¹ç̵¤·À°¿ô¤Ø¤ÎÊÑ´¹¤Ç¤¹"
-#: collect2.c:3499
-#, c-format
-msgid "fstat %s"
-msgstr "fstat %s"
+#: cppcharset.c:656
+msgid "iconv_open"
+msgstr ""
-#: collect2.c:3536 collect2.c:3584
+#. XXX should be DL_SORRY
+#: cppcharset.c:664
#, c-format
-msgid "lseek %s 0"
-msgstr "lseek %s 0"
+msgid "no iconv implementation, cannot convert from %s to %s"
+msgstr ""
-#: collect2.c:3540
-#, c-format
-msgid "read %s"
-msgstr "read %s"
+#: cppcharset.c:808
+#, fuzzy
+msgid "universal character names are only valid in C++ and C99"
+msgstr "¥æ¥Ë¥Ð¡¼¥µ¥ëʸ»ú̾ `\\U%08x' ¤Ï¼±Ê̻ҤÎÃæ¤Ç¤ÏÍ­¸ú¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: collect2.c:3543
-#, c-format
-msgid "read %ld bytes, expected %ld, from %s"
-msgstr "%ld ¥Ð¥¤¥ÈÆɹþ¤ß¡£%ld (%s ¤«¤é)Æɹþ¤à¤Ï¤º¤Ç¤¹"
+#: cppcharset.c:811
+#, fuzzy, c-format
+msgid "the meaning of '\\%c' is different in traditional C"
+msgstr "'\\%c' ¤Î°ÕÌ£¤Ï -traditional ¤ò¤Ä¤±¤¿¾ì¹ç¤È°Û¤Ê¤ê¤Þ¤¹"
-#: collect2.c:3564
-#, c-format
-msgid "msync %s"
-msgstr "msync %s"
+#: cppcharset.c:837
+#, fuzzy, c-format
+msgid "incomplete universal character name %.*s"
+msgstr "̵¸ú¤Ê ¥æ¥Ë¥Ð¡¼¥µ¥ëʸ»ú̾"
-#: collect2.c:3571
-#, c-format
-msgid "munmap %s"
-msgstr "munmap %s"
+#: cppcharset.c:849
+#, fuzzy, c-format
+msgid "%.*s is not a valid universal character"
+msgstr "ÉÔŬÀڤʥæ¥Ë¥Ð¡¼¥µ¥ë¥­¥ã¥é¥¯¥¿Ì¾"
-#: collect2.c:3588
-#, c-format
-msgid "write %s"
-msgstr "write %s"
+#: cppcharset.c:859
+#, fuzzy, c-format
+msgid "universal character %.*s is not valid in an identifier"
+msgstr "¥æ¥Ë¥Ð¡¼¥µ¥ëʸ»ú̾ `\\U%08x' ¤Ï¼±Ê̻ҤÎÃæ¤Ç¤ÏÍ­¸ú¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: collect2.c:3591
-#, c-format
-msgid "wrote %ld bytes, expected %ld, to %s"
-msgstr "%ld ¥Ð¥¤¥È½ñ¹þ¤ß¡£%ld (%s ¤Ø)½ñ¹þ¤à¤Ï¤º¤Ç¤¹"
+#: cppcharset.c:863
+#, fuzzy, c-format
+msgid "universal character %.*s is not valid at the start of an identifier"
+msgstr "¥æ¥Ë¥Ð¡¼¥µ¥ëʸ»ú̾ `\\U%08x' ¤Ï¼±Ê̻ҤÎÃæ¤Ç¤ÏÍ­¸ú¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: combine.c:13222
-#, c-format
-msgid ""
-";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
-"\n"
+#: cppcharset.c:898
+msgid "converting UCN to source character set"
msgstr ""
-";; ·ë¹çÅý·×: %d »î¹Ô, %d ÂåÂØ (%d ¿·¤¿¤Ê¶õ´Ö¤òÍ×µá),\n"
-";; %d À®¸ù¡£\n"
-#: combine.c:13232
-#, c-format
-msgid ""
-"\n"
-";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
+#: cppcharset.c:902
+msgid "converting UCN to execution character set"
msgstr ""
-"\n"
-";; ·ë¹ç¹ç·×: %d »î¹Ô, %d ÂåÂØ (%d ¿·¤¿¤Ê¶õ´Ö¤òÍ×µá),\n"
-";; %d À®¸ù¡£\n"
-#: convert.c:69
-msgid "cannot convert to a pointer type"
-msgstr "¥Ý¥¤¥ó¥¿·¿¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó"
+#: cppcharset.c:967
+#, fuzzy
+msgid "the meaning of '\\x' is different in traditional C"
+msgstr "'\\a' ¤Î°ÕÌ£¤Ï -traditional ¤ò¤Ä¤±¤¿¾ì¹ç¤È°Û¤Ê¤ê¤Þ¤¹"
-#: convert.c:102
-msgid "pointer value used where a floating point value was expected"
-msgstr "ÉâÆ°¾®¿ôÅÀ¿ô¤¬¤¢¤ë¤Ù¤­²Õ½ê¤Ç¡¢¥Ý¥¤¥ó¥¿Ãͤ¬»È¤ï¤ì¤Þ¤·¤¿"
+#: cppcharset.c:984 f/lex.c:580
+msgid "\\x used with no following hex digits"
+msgstr "\\x ¤Ë¡¢¤½¤ì¤Ë³¤¯¤Ï¤º¤Î 16 ¿Ê¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: convert.c:106
-msgid "aggregate value used where a float was expected"
-msgstr "ÉâÆ°¾®¿ôÅÀ·¿¤¬¤¢¤ë¤Ù¤­²Õ½ê¤Ç¡¢½¸¹çÂΤÎÃͤ¬»È¤ï¤ì¤Þ¤·¤¿"
+#: cppcharset.c:991
+msgid "hex escape sequence out of range"
+msgstr "16 ¿Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¤¬Èϰϳ°¤Ç¤¹"
-#: convert.c:132
-msgid "conversion to incomplete type"
-msgstr "ÉÔ´°Á´·¿¤Ø¤ÎÊÑ´¹¤Ç¤¹"
+#: cppcharset.c:1030
+msgid "octal escape sequence out of range"
+msgstr "8 ¿Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¤¬Èϰϳ°¤Ç¤¹"
-#: convert.c:414 convert.c:494
-msgid "can't convert between vector values of different size"
-msgstr "Â礭¤µ¤Î°Û¤Ê¤ë¥Ù¥¯¥È¥ëÃÍƱ»Î¤ÎÊÑ´¹¤Ï¤Ç¤­¤Þ¤»¤ó"
+#: cppcharset.c:1098
+#, fuzzy
+msgid "the meaning of '\\a' is different in traditional C"
+msgstr "'\\a' ¤Î°ÕÌ£¤Ï -traditional ¤ò¤Ä¤±¤¿¾ì¹ç¤È°Û¤Ê¤ê¤Þ¤¹"
-#: convert.c:420
-msgid "aggregate value used where an integer was expected"
-msgstr "À°¿ô·¿¤¬¤¢¤ë¤Ù¤­²Õ½ê¤Ç¡¢½¸¹çÂΤÎÃͤ¬»È¤ï¤ì¤Þ¤·¤¿"
+#: cppcharset.c:1105
+#, c-format
+msgid "non-ISO-standard escape sequence, '\\%c'"
+msgstr "Èó ISO ɸ½à¤Î¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹, '\\%c'"
-#: convert.c:472 f/com.c:1100
-msgid "pointer value used where a complex was expected"
-msgstr "Ê£ÁÇ¿ô·¿¤¬¤¢¤ë¤Ù¤­²Õ½ê¤Ç¡¢¥Ý¥¤¥ó¥¿Ãͤ¬»È¤ï¤ì¤Þ¤·¤¿"
+#: cppcharset.c:1113
+#, c-format
+msgid "unknown escape sequence '\\%c'"
+msgstr "ÉÔÌÀ¤Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹ '\\%c'"
-#: convert.c:476 f/com.c:1102
-msgid "aggregate value used where a complex was expected"
-msgstr "Ê£ÁÇ¿ô·¿¤¬¤¢¤ë¤Ù¤­²Õ½ê¤Ç¡¢½¸¹çÂΤÎÃͤ¬»È¤ï¤ì¤Þ¤·¤¿"
+#: cppcharset.c:1116
+#, fuzzy, c-format
+msgid "unknown escape sequence: '\\%03o'"
+msgstr "ÉÔÌÀ¤Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹ '\\%c'"
-#: convert.c:500
-msgid "can't convert value to a vector"
-msgstr "Ãͤò¥Ù¥¯¥È¥ë¤Ë¤ÏÊÑ´¹¤Ç¤­¤Þ¤»¤ó"
+#: cppcharset.c:1122
+#, fuzzy
+msgid "converting escape sequence to execution character set"
+msgstr "ʸ»ú¤ËÂФ¹¤ë¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¤¬ÈϰϤò³°¤ì¤Æ¤¤¤Þ¤¹"
+
+#: cppcharset.c:1181
+msgid "converting to execution character set"
+msgstr ""
-#: cpperror.c:113
+#: cppcharset.c:1244 cppcharset.c:1307
+#, fuzzy
+msgid "character constant too long for its type"
+msgstr "ʸ»úÄê¿ô¤¬Ä¹¤¹¤®¤Þ¤¹"
+
+#: cppcharset.c:1247
+msgid "multi-character character constant"
+msgstr "Ê£¿ôʸ»ú¤«¤é¤Ê¤ëʸ»úÄê¿ô"
+
+#: cppcharset.c:1339
+msgid "empty character constant"
+msgstr "¶õ¤Îʸ»úÄê¿ô"
+
+#: cppcharset.c:1378
+#, c-format
+msgid "failure to convert %s to %s"
+msgstr ""
+
+#: cpperror.c:110 diagnostic.def:5
msgid "warning: "
msgstr "·Ù¹ð: "
-#: cpperror.c:115
+#: cpperror.c:112
msgid "internal error: "
msgstr "ÆâÉô¥¨¥é¡¼: "
-#: cpperror.c:189
+#: cpperror.c:174
#, fuzzy
msgid "stdout"
msgstr "¹½Â¤ÂÎ"
-#: cpperror.c:191 gcc.c:6428
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
-#: cppexp.c:199
+#: cppexp.c:192
#, fuzzy
msgid "too many decimal points in number"
msgstr "`asm' Ãæ¤ÎÂåÂØ¥­¡¼¥ï¡¼¥É¤¬Â¿¤¹¤®¤Þ¤¹"
-#: cppexp.c:219
+#: cppexp.c:212
#, fuzzy, c-format
msgid "invalid digit \"%c\" in octal constant"
msgstr "̵¸ú¤Ê¶çÆÉÅÀ `%c' ¤¬À©ÌóÆâ¤Ë¤¢¤ê¤Þ¤¹"
-#: cppexp.c:225
+#: cppexp.c:218
#, fuzzy
msgid "use of C99 hexadecimal floating constant"
msgstr "16 ¿ÊÉâÆ°¾®¿ôÄê¿ô¤¬¤Ù¤­¾è¤ò»ý¤Á¤Þ¤»¤ó"
-#: cppexp.c:234
+#: cppexp.c:227
#, fuzzy
msgid "exponent has no digits"
msgstr "ÉâÆ°¾®¿ôÄê¿ô¤Î¤Ù¤­¿ô¤¬¡¢¥¢¥é¥Ó¥¢¿ô»ú¤ò»ý¤Ã¤Æ¤¤¤Þ¤»¤ó"
-#: cppexp.c:241
+#: cppexp.c:234
#, fuzzy
msgid "hexadecimal floating constants require an exponent"
msgstr "16 ¿ÊÉâÆ°¾®¿ôÄê¿ô¤¬¤Ù¤­¾è¤ò»ý¤Á¤Þ¤»¤ó"
-#: cppexp.c:247
+#: cppexp.c:240
#, fuzzy, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "ÀÜÈø¼­ '%.*s' ¤ÏÀ°¿ôÄê¿ô¤Ë¤Ï̵¸ú¤Ç¤¹"
-#: cppexp.c:257 cppexp.c:282
+#: cppexp.c:250 cppexp.c:275
#, fuzzy, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr "¸Å¤¤ C ¤Ç¤Ï 'f' ÀÜÈø¼­¤¬µñÈݤµ¤ì¤Þ¤¹"
-#: cppexp.c:268
+#: cppexp.c:261
#, fuzzy, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "ÀÜÈø¼­ '%.*s' ¤ÏÀ°¿ôÄê¿ô¤Ë¤Ï̵¸ú¤Ç¤¹"
-#: cppexp.c:289
+#: cppexp.c:283
#, fuzzy
msgid "use of C99 long long integer constant"
msgstr "ISO C89 ¤Ç¤Ï long long À°¿ôÄê¿ô¤ò¶Ø¤¸¤Þ¤¹"
-#: cppexp.c:295
+#: cppexp.c:290
#, fuzzy
msgid "imaginary constants are a GCC extension"
msgstr "#if ¼°¤ÎÃæ¤Ç¤Ïʸ»úÎóÄê¿ô¤¬»È¤¨¤Þ¤»¤ó"
-#: cppexp.c:383
+#: cppexp.c:376
#, fuzzy
msgid "integer constant is too large for its type"
msgstr "À°¿ôÄê¿ô¤¬Â礭¤¹¤®¤ë¤Î¤Ç unsigned ¤Ë¤Ê¤ê¤Þ¤·¤¿"
-#: cppexp.c:395
+#: cppexp.c:388
msgid "integer constant is so large that it is unsigned"
msgstr "À°¿ôÄê¿ô¤¬Â礭¤¹¤®¤ë¤Î¤Ç unsigned ¤Ë¤Ê¤ê¤Þ¤·¤¿"
-#: cppexp.c:482
+#: cppexp.c:470
msgid "missing ')' after \"defined\""
msgstr "\"defined\" ¤Î¸å¤í¤Î ')' ¤¬·ç¤±¤Æ¤¤¤Þ¤¹"
-#: cppexp.c:489
+#: cppexp.c:477
msgid "operator \"defined\" requires an identifier"
msgstr "\"defined\" ±é»»»Ò¤Ï¼±Ê̻ҤòÍ׵ᤷ¤Þ¤¹"
-#: cppexp.c:497
+#: cppexp.c:485
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr "¡ÊC++ ¤Ç¤Ï \"%s\" ¤¬ \"%s\" ¤ÎÂåÂإȡ¼¥¯¥ó¤Ç¤¹¡Ë"
-#: cppexp.c:507
+#: cppexp.c:495
msgid "this use of \"defined\" may not be portable"
msgstr ""
-#: cppexp.c:545
+#: cppexp.c:531
#, fuzzy
msgid "floating constant in preprocessor expression"
msgstr "À°¿ô¤¬¥×¥ê¥×¥í¥»¥Ã¥µ¼°Æâ¤Ç¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
-#: cppexp.c:551
+#: cppexp.c:537
#, fuzzy
msgid "imaginary number in preprocessor expression"
msgstr "À°¿ô¤¬¥×¥ê¥×¥í¥»¥Ã¥µ¼°Æâ¤Ç¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
-#: cppexp.c:596
-#, c-format
-msgid "ISO C++ does not permit \"%s\" in #if"
-msgstr "ISO C++ ¤Ï #if Æâ¤Î \"%s\" ¤òµö¤·¤Þ¤»¤ó"
-
-#: cppexp.c:604
+#: cppexp.c:582
#, c-format
msgid "\"%s\" is not defined"
msgstr "\"%s\" ¤ÏÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: cppexp.c:737 cppexp.c:772
+#: cppexp.c:714 cppexp.c:743
#, c-format
msgid "missing binary operator before token \"%s\""
msgstr ""
-#: cppexp.c:756
-#, fuzzy, c-format
-msgid "invalid character '%c' in #if"
-msgstr "̵¸ú¤Êʸ»úÄê¿ô¤¬ #if ¤Ë¤¢¤ê¤Þ¤¹"
-
-#: cppexp.c:758
-#, fuzzy, c-format
-msgid "invalid character '\\%03o' in #if"
-msgstr "̵¸ú¤Êʸ»úÄê¿ô¤¬ #if ¤Ë¤¢¤ê¤Þ¤¹"
-
-#: cppexp.c:763
+#: cppexp.c:734
#, fuzzy, c-format
msgid "token \"%s\" is not valid in preprocessor expressions"
msgstr "À°¿ô¤¬¥×¥ê¥×¥í¥»¥Ã¥µ¼°Æâ¤Ç¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
-#: cppexp.c:782
+#: cppexp.c:753
#, fuzzy
msgid "void expression between '(' and ')'"
msgstr "¼°Ê¸¤¬Ìµ¸ú¤Ç¤¹"
-#: cppexp.c:785
+#: cppexp.c:756
#, fuzzy
msgid "#if with no expression"
msgstr " throw ¤µ¤ì¤¿¼°¤ÎÃæ"
-#: cppexp.c:787
+#: cppexp.c:758
#, fuzzy, c-format
msgid "operator '%s' has no right operand"
msgstr "È¿Éü»Ò `%s' ¤ÏÈóÀ°¿ô·¿¤Ç¤¹"
-#: cppexp.c:813
+#: cppexp.c:784
msgid " ':' without preceding '?'"
msgstr ""
-#: cppexp.c:840
+#: cppexp.c:811
#, fuzzy
msgid "unbalanced stack in #if"
msgstr "Âбþ¤·¤Æ¤¤¤Ê¤¤ #endif"
-#: cppexp.c:862
+#: cppexp.c:830
#, fuzzy, c-format
msgid "impossible operator '%u'"
msgstr "¤¢¤ê¤¨¤Ê¤¤±é»»»Ò '%s'"
-#: cppexp.c:954
+#: cppexp.c:922
#, fuzzy
msgid "missing ')' in expression"
msgstr "Äê¿ô¼°¤¬·ç¤±¤Æ¤¤¤ë¤«Ìµ¸ú¤Ç¤¹"
-#: cppexp.c:975
+#: cppexp.c:943
msgid "'?' without following ':'"
msgstr ""
-#: cppexp.c:985
+#: cppexp.c:953
msgid "integer overflow in preprocessor expression"
msgstr "À°¿ô¤¬¥×¥ê¥×¥í¥»¥Ã¥µ¼°Æâ¤Ç¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
-#: cppexp.c:990
+#: cppexp.c:958
#, fuzzy
msgid "missing '(' in expression"
msgstr "Äê¿ô¼°¤¬·ç¤±¤Æ¤¤¤ë¤«Ìµ¸ú¤Ç¤¹"
-#: cppexp.c:1026
+#: cppexp.c:990
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr ""
-#: cppexp.c:1031
+#: cppexp.c:995
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr ""
-#: cppexp.c:1414
+#: cppexp.c:1352
msgid "comma operator in operand of #if"
msgstr "¥«¥ó¥Þ±é»»»Ò¤¬ #if ±é»»»Ò¤ÎÃæ¤Ë¤¢¤ê¤Þ¤¹"
-#: cppexp.c:1551
+#: cppexp.c:1483
msgid "division by zero in #if"
msgstr "#if ¤Ç¥¼¥í½ü»»¤¬È¯À¸¤·¤Þ¤·¤¿"
-#: cppfiles.c:411
+#: cppfiles.c:370
+msgid "NULL directory in find_file"
+msgstr ""
+
+#: cppfiles.c:397
+msgid "one or more PCH files were found, but they were invalid"
+msgstr ""
+
+#: cppfiles.c:400
+msgid "use -Winvalid-pch for more information"
+msgstr ""
+
+#: cppfiles.c:458
+#, c-format
+msgid "%s is a block device"
+msgstr "%s ¤Ï¥Ö¥í¥Ã¥¯¥Ç¥Ð¥¤¥¹¤Ç¤¹"
+
+#: cppfiles.c:475
#, c-format
msgid "%s is too large"
msgstr "%s ¤ÏÂ礭¤¹¤®¤Þ¤¹"
-#: cppfiles.c:447
+#: cppfiles.c:510
#, c-format
msgid "%s is shorter than expected"
msgstr "%s ¤¬ËÜÍè¤è¤ê¤âû¤¤¤Ç¤¹"
-#: cppfiles.c:461
-#, c-format
-msgid "%s is a block device"
-msgstr "%s ¤Ï¥Ö¥í¥Ã¥¯¥Ç¥Ð¥¤¥¹¤Ç¤¹"
-
-#: cppfiles.c:594
+#: cppfiles.c:696
#, fuzzy, c-format
-msgid "no include path in which to find %s"
+msgid "no include path in which to search for %s"
msgstr "%s ¤ò¸«¤Ä¤±¤ë¤¿¤á¤Î¥¤¥ó¥¯¥ë¡¼¥É¥Ñ¥¹¤¬¤¢¤ê¤Þ¤»¤ó"
-#: cppfiles.c:668
+#: cppfiles.c:956
msgid "Multiple include guards may be useful for:\n"
msgstr "¿½Å include ¤«¤é¤ÎÊݸͭ±×¤È¤Ê¤ë¤Ç¤·¤ç¤¦:\n"
-#: cppfiles.c:1014
-msgid "absolute file name in remap_filename"
-msgstr "ÀäÂХѥ¹¥Õ¥¡¥¤¥ë̾¤¬ remap_filename ¤Ë¤¢¤ê¤Þ¤¹"
-
-#: cppinit.c:224
-#, c-format
-msgid "ignoring nonexistent directory \"%s\"\n"
-msgstr "¸ºß¤·¤Ê¤¤¥Ç¥£¥ì¥¯¥È¥ê \"%s\" ¤ò̵»ë¤·¤Þ¤¹\n"
-
-#: cppinit.c:231
-#, c-format
-msgid "%s: Not a directory"
-msgstr "%s: ¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-
-#: cppinit.c:287
-#, c-format
-msgid "ignoring duplicate directory \"%s\"\n"
-msgstr "½ÅÊ£¤·¤¿¥Ç¥£¥ì¥¯¥È¥ê \"%s\" ¤ò̵»ë¤·¤Þ¤¹\n"
-
-#: cppinit.c:325
-msgid " as it is a non-system directory that duplicates a system directory\n"
-msgstr ""
-
-#: cppinit.c:891
+#: cppinit.c:387
#, fuzzy
msgid "cppchar_t must be an unsigned type"
msgstr "½Ò¸ì¤Ï¼±Ê̻ҤǤʤ±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cppinit.c:895
+#: cppinit.c:391
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr ""
-#: cppinit.c:901
+#: cppinit.c:398
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr ""
-#: cppinit.c:904
+#: cppinit.c:401
msgid "target char is less than 8 bits wide"
msgstr ""
-#: cppinit.c:908
+#: cppinit.c:405
msgid "target wchar_t is narrower than target char"
msgstr ""
-#: cppinit.c:912
+#: cppinit.c:409
msgid "target int is narrower than target char"
msgstr ""
-#: cppinit.c:916
+#: cppinit.c:414
msgid "CPP half-integer narrower than CPP character"
msgstr ""
-#: cppinit.c:920
+#: cppinit.c:418
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
msgstr ""
-#: cppinit.c:972
-msgid "#include \"...\" search starts here:\n"
-msgstr "#include \"...\" ¤Îõº÷¤Ï¤³¤³¤«¤é»Ï¤Þ¤ê¤Þ¤¹:\n"
-
-#: cppinit.c:976
-msgid "#include <...> search starts here:\n"
-msgstr "#include <...> ¤Îõº÷¤Ï¤³¤³¤«¤é»Ï¤Þ¤ê¤Þ¤¹:\n"
-
-#: cppinit.c:979
-msgid "End of search list.\n"
-msgstr "õº÷¥ê¥¹¥È¤Î½ª¤ï¤ê\n"
-
-#: cppinit.c:1057
-#, fuzzy
-msgid "<built-in>"
-msgstr "<ÁȤ߹þ¤ß>"
-
-#: cppinit.c:1059
-msgid "<command line>"
-msgstr "<¥³¥Þ¥ó¥É¥é¥¤¥ó>"
-
-#. Irix6 "cc -n32" and OSF4 cc have problems with char foo[] = ("string");
-#. I.e. a const string initializer with parens around it. That is
-#. what N_("string") resolves to, so we make no_* be macros instead.
-#: cppinit.c:1164
-#, fuzzy, c-format
-msgid "assertion missing after %s"
-msgstr "%s ¤Î¸å¤í¤Î¥¢¥µ¡¼¥·¥ç¥ó¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-
-#: cppinit.c:1165
-#, fuzzy, c-format
-msgid "directory name missing after %s"
-msgstr "%s ¤Î¸å¤í¤Î¥Ç¥£¥ì¥¯¥È¥ê̾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-
-#: cppinit.c:1166
-#, fuzzy, c-format
-msgid "file name missing after %s"
-msgstr "%s ¤Î¸å¤í¤Î¥Õ¥¡¥¤¥ë̾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-
-#: cppinit.c:1167
-#, fuzzy, c-format
-msgid "macro name missing after %s"
-msgstr "%s ¤Î¸å¤í¤Î¥Þ¥¯¥í̾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-
-#: cppinit.c:1168
-#, fuzzy, c-format
-msgid "path name missing after %s"
-msgstr "%s ¤Î¸å¤í¤Î¥Ñ¥¹Ì¾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-
-#: cppinit.c:1353
-msgid "-I- specified twice"
-msgstr "-I- ¤¬Æó²ó»ØÄꤵ¤ì¤Þ¤·¤¿"
-
-#: cpplex.c:149
-#, c-format
-msgid "trigraph ??%c converted to %c"
-msgstr "¥È¥é¥¤¥°¥é¥Õ ??%c ¤Ï %c ¤ËÊÑ´¹¤µ¤ì¤Þ¤·¤¿"
-
-#: cpplex.c:157
-#, c-format
-msgid "trigraph ??%c ignored"
-msgstr "¥È¥é¥¤¥°¥é¥Õ ??%c ¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-
-#: cpplex.c:214
-msgid "backslash and newline separated by space"
-msgstr "¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤È²þ¹Ô¤¬¶õÇò¤Çʬ³ä¤µ¤ì¤Þ¤·¤¿"
-
-#: cpplex.c:221 cpptrad.c:158
-msgid "backslash-newline at end of file"
-msgstr "¥Õ¥¡¥¤¥ë¤Î½ª¤ê¤Ë¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å-²þ¹Ô¤¬¤¢¤ê¤Þ¤¹"
-
-#: cpplex.c:287 cpptrad.c:199
-msgid "\"/*\" within comment"
-msgstr "¥³¥á¥ó¥ÈÆâ¤Ë \"/*\" ¤¬¤¢¤ê¤Þ¤¹"
-
-#: cpplex.c:395
+#: cpplex.c:410
msgid "null character(s) ignored"
msgstr "null ʸ»ú¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: cpplex.c:402
-#, c-format
-msgid "%s in preprocessing directive"
-msgstr "¥×¥ê¥×¥í¥»¥¹Ì¿ÎáÃæ¤Ë %s ¤¬¤¢¤ê¤Þ¤¹"
+#: cpplex.c:445
+msgid "'$' in identifier or number"
+msgstr ""
-#: cpplex.c:475
+#: cpplex.c:492
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr "±øÀ÷¤µ¤ì¤¿ '%s' »È¤ª¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: cpplex.c:483
+#: cpplex.c:500
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr "__VA_ARGS__ ¤Ï C99 ²ÄÊÑ°ú¿ô¥Þ¥¯¥í³ÈÄ¥¤Ç¤Î¤ß½Ð¸½¤Ç¤­¤Þ¤¹"
-#: cpplex.c:555
-#, fuzzy
-msgid "'$' character(s) in identifier or number"
-msgstr "'$' ʸ»ú¤¬¼±Ê̻ҤËÆþ¤Ã¤Æ¤¤¤Þ¤¹"
-
-#: cpplex.c:698
-#, c-format
-msgid "missing terminating %c character"
-msgstr "%c ʸ»ú¤Ç¤Î½ªÃ¼¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-
-#: cpplex.c:711
+#: cpplex.c:596
msgid "null character(s) preserved in literal"
msgstr "¥ê¥Æ¥é¥ëÃæ¤Ç null ʸ»ú¤¬³ÎÊݤµ¤ì¤Þ¤·¤¿"
-#: cpplex.c:915 cpptrad.c:487
-msgid "no newline at end of file"
-msgstr "¥Õ¥¡¥¤¥ëËöÈø¤Ë²þ¹Ô¤¬¤¢¤ê¤Þ¤»¤ó"
-
-#: cpplex.c:1092 cpptrad.c:213
+#: cpplex.c:916
msgid "unterminated comment"
msgstr "½ªÃ¼¤µ¤ì¤Æ¤¤¤Ê¤¤¥³¥á¥ó¥È"
-#: cpplex.c:1103
+#: cpplex.c:927
#, fuzzy
msgid "C++ style comments are not allowed in ISO C90"
msgstr "C++ ¥¹¥¿¥¤¥ë¤Î¥³¥á¥ó¥È¤Ï ISO C89 ¤Ç¤Ïµö¤µ¤ì¤Þ¤»¤ó"
-#: cpplex.c:1105
+#: cpplex.c:929
msgid "(this will be reported only once per input file)"
msgstr "(¤³¤ì¤ÏÆþÎÏ¥Õ¥¡¥¤¥ë¤Ë¤Ä¤­°ì²ó¤À¤±Êó¹ð¤µ¤ì¤Þ¤¹)"
-#: cpplex.c:1110
+#: cpplex.c:934
msgid "multi-line comment"
msgstr "Ê£¿ô¹Ô¤Î¥³¥á¥ó¥È"
-#: cpplex.c:1425
-#, fuzzy, c-format
-msgid "unknown string token %s\n"
-msgstr "ÉÔÌÀ¤Ê¥ì¥¸¥¹¥¿Ì¾¤Ç¤¹: %s"
-
-#: cpplex.c:1438
+#: cpplex.c:1198
#, fuzzy, c-format
msgid "unspellable token %s"
msgstr "ÄÖ¤ì¤Ê¤¤¥È¡¼¥¯¥ó %s ¤Ç¤¹"
-#: cpplex.c:1695
-#, fuzzy, c-format
-msgid "the meaning of '\\%c' is different in traditional C"
-msgstr "'\\%c' ¤Î°ÕÌ£¤Ï -traditional ¤ò¤Ä¤±¤¿¾ì¹ç¤È°Û¤Ê¤ê¤Þ¤¹"
-
-#: cpplex.c:1701
-msgid "incomplete universal-character-name"
-msgstr "̵¸ú¤Ê ¥æ¥Ë¥Ð¡¼¥µ¥ëʸ»ú̾"
-
-#: cpplex.c:1715
-#, fuzzy, c-format
-msgid "non-hex digit '%c' in universal-character-name"
-msgstr "Èó 16 ¿Ê¿ô '%c' ¤¬ universal-character-name Æâ¤Ë¤¢¤ê¤Þ¤¹"
-
-#: cpplex.c:1723
-msgid "universal-character-name on EBCDIC target"
-msgstr "EBCDIC ¤Î¥¿¡¼¥²¥Ã¥È¤Ç `%c' ¤Ë¥æ¥Ë¥Ð¡¼¥µ¥ë¥­¥ã¥é¥¯¥¿Ì¾¤¬»È¤ï¤ì¤Þ¤·¤¿"
-
-#: cpplex.c:1737
-#, fuzzy
-msgid "universal-character-name out of range"
-msgstr "EBCDIC ¤Î¥¿¡¼¥²¥Ã¥È¤Ç `%c' ¤Ë¥æ¥Ë¥Ð¡¼¥µ¥ë¥­¥ã¥é¥¯¥¿Ì¾¤¬»È¤ï¤ì¤Þ¤·¤¿"
-
-#: cpplex.c:1791
-#, fuzzy
-msgid "the meaning of '\\a' is different in traditional C"
-msgstr "'\\a' ¤Î°ÕÌ£¤Ï -traditional ¤ò¤Ä¤±¤¿¾ì¹ç¤È°Û¤Ê¤ê¤Þ¤¹"
-
-#: cpplex.c:1798
-#, c-format
-msgid "non-ISO-standard escape sequence, '\\%c'"
-msgstr "Èó ISO ɸ½à¤Î¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹, '\\%c'"
-
-#: cpplex.c:1809
-#, fuzzy
-msgid "the meaning of '\\x' is different in traditional C"
-msgstr "'\\a' ¤Î°ÕÌ£¤Ï -traditional ¤ò¤Ä¤±¤¿¾ì¹ç¤È°Û¤Ê¤ê¤Þ¤¹"
-
-#: cpplex.c:1828 f/lex.c:585
-msgid "\\x used with no following hex digits"
-msgstr "\\x ¤Ë¡¢¤½¤ì¤Ë³¤¯¤Ï¤º¤Î 16 ¿Ê¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-
-#: cpplex.c:1833
-msgid "hex escape sequence out of range"
-msgstr "16 ¿Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¤¬Èϰϳ°¤Ç¤¹"
-
-#: cpplex.c:1858
-msgid "octal escape sequence out of range"
-msgstr "8 ¿Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¤¬Èϰϳ°¤Ç¤¹"
-
-#: cpplex.c:1874
-#, c-format
-msgid "unknown escape sequence '\\%c'"
-msgstr "ÉÔÌÀ¤Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹ '\\%c'"
-
-#: cpplex.c:1877
-#, fuzzy, c-format
-msgid "unknown escape sequence: '\\%03o'"
-msgstr "ÉÔÌÀ¤Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹ '\\%c'"
-
-#: cpplex.c:1882
-#, fuzzy
-msgid "escape sequence out of range for its type"
-msgstr "ʸ»ú¤ËÂФ¹¤ë¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¤¬ÈϰϤò³°¤ì¤Æ¤¤¤Þ¤¹"
-
-#: cpplex.c:1973
-msgid "empty character constant"
-msgstr "¶õ¤Îʸ»úÄê¿ô"
-
-#: cpplex.c:1983
-#, fuzzy
-msgid "character constant too long for its type"
-msgstr "ʸ»úÄê¿ô¤¬Ä¹¤¹¤®¤Þ¤¹"
-
-#: cpplex.c:1986
-msgid "multi-character character constant"
-msgstr "Ê£¿ôʸ»ú¤«¤é¤Ê¤ëʸ»úÄê¿ô"
-
-#: cpplib.c:225
+#: cpplib.c:218
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr ";ʬ¤Ê¥È¡¼¥¯¥ó¤¬ #%s ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤Î½ª¤ê¤Ë¤¢¤ê¤Þ¤¹"
-#: cpplib.c:315
+#: cpplib.c:304
#, c-format
msgid "#%s is a GCC extension"
msgstr "#%s ¤Ï GCC ¤Î³ÈÄ¥¤Ç¤¹"
-#: cpplib.c:327
+#: cpplib.c:316
msgid "suggest not using #elif in traditional C"
msgstr "¸Å¤¤ C ¤Ç¤Ï #elif ¤ò»È¤ï¤Ê¤¤Êý¤¬¤¤¤¤¤Ç¤¹"
-#: cpplib.c:330
+#: cpplib.c:319
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr "¸Å¤¤ C ¤Ç¤Ï¡¢¥¤¥ó¥Ç¥ó¥È¤µ¤ì¤¿ # ¤Î #%s ¤ò̵»ë¤·¤Þ¤¹"
-#: cpplib.c:334
+#: cpplib.c:323
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr "¥¤¥ó¥Ç¥ó¥È¤µ¤ì¤¿ # ¤¬¤¢¤ë¸Å¤¤ C ¤«¤é¤Ï #%s ¤ò±£¤¹¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹"
-#: cpplib.c:358
+#: cpplib.c:345
msgid "embedding a directive within macro arguments is not portable"
msgstr ""
-#: cpplib.c:378
+#: cpplib.c:365
#, fuzzy
msgid "style of line directive is a GCC extension"
msgstr "#%s ¤Ï GCC ¤Î³ÈÄ¥¤Ç¤¹"
-#: cpplib.c:428
+#: cpplib.c:415
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr "̵¸ú¤Ê¥×¥ê¥×¥í¥»¥¹¥Ç¥£¥ì¥¯¥Æ¥£¥ô #%s"
-#: cpplib.c:500
+#: cpplib.c:484
msgid "\"defined\" cannot be used as a macro name"
msgstr "\"defined\" ¤ò¥Þ¥¯¥í̾¤È¤·¤Æ¤Ï»È¤¨¤Þ¤»¤ó"
-#: cpplib.c:506
+#: cpplib.c:490
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr "\"%s\" ¤Ï C++ ¤Î±é»»»Ò¤Ç¤¢¤ê¡¢¥Þ¥¯¥í̾¤È¤·¤Æ»ÈÍѤ¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: cpplib.c:509
+#: cpplib.c:493
#, c-format
msgid "no macro name given in #%s directive"
msgstr "¥Þ¥¯¥í̾¤¬ #%s ¥Ç¥£¥ì¥¯¥Æ¥£¥ÖÃæ¤ËÍ¿¤¨¤é¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: cpplib.c:512
+#: cpplib.c:496
msgid "macro names must be identifiers"
msgstr "¥Þ¥¯¥í̾¤Ï¼±Ê̻ҤǤʤ¯¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó"
-#: cpplib.c:552
+#: cpplib.c:537
#, c-format
msgid "undefining \"%s\""
msgstr "\"%s\" ¤ò undef ¤·¤Þ¤¹"
-#: cpplib.c:598
+#: cpplib.c:609
msgid "missing terminating > character"
msgstr "½ªÃ¼Ê¸»ú > ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: cpplib.c:637
+#: cpplib.c:662
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr "#%s ¤Ï \"¥Õ¥¡¥¤¥ë̾\" ¤¢¤ë¤¤¤Ï <¥Õ¥¡¥¤¥ë̾> ¤òɬÍפȤ·¤Þ¤¹"
-#: cpplib.c:648
-#, c-format
-msgid "empty file name in #%s"
-msgstr "#%s ¤Ç¤Î¥Õ¥¡¥¤¥ë̾¤¬¶õ¤Ç¤¹"
+#: cpplib.c:685
+msgid "#include nested too deeply"
+msgstr "#include ¤Î¥Í¥¹¥È¤¬¿¼¤¹¤®¤Þ¤¹"
-#: cpplib.c:667
+#: cpplib.c:723
msgid "#include_next in primary source file"
msgstr "#include_next ¤¬¼ç¤¿¤ë¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤Ë¤¢¤ê¤Þ¤¹"
-#: cpplib.c:674
-msgid "#import is obsolete, use an #ifndef wrapper in the header file"
-msgstr "#import ¤Ï¸Å¤¤É½¸½¤Ç¤¹. ¥Ø¥Ã¥À¥Õ¥¡¥¤¥ëÃæ¤Ç #ifndef ¤Î¥é¥Ã¥Ñ¡¼¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤"
-
-#: cpplib.c:682
-msgid "#include nested too deeply"
-msgstr "#include ¤Î¥Í¥¹¥È¤¬¿¼¤¹¤®¤Þ¤¹"
-
-#: cpplib.c:739
+#: cpplib.c:749
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr "\"%s\" ¤Ï line ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤Ç¤Ï̵¸ú¤Ê¥Õ¥é¥°¤Ç¤¹"
-#: cpplib.c:814
+#: cpplib.c:794
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "#line ¤Î¸å¤í¤Î \"%s\" ¤¬Àµ¤ÎÀ°¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cpplib.c:820
+#: cpplib.c:800
msgid "line number out of range"
msgstr "¹ÔÈֹ椬Èϰϳ°¤Ç¤¹"
-#: cpplib.c:831 cpplib.c:902
+#: cpplib.c:812 cpplib.c:885
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr "\"%s\" ¤ÏÀµ¾ï¤Ê¥Õ¥¡¥¤¥ë̾¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cpplib.c:866
+#: cpplib.c:847
#, fuzzy, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "#line ¤Î¸å¤í¤Î \"%s\" ¤¬Àµ¤ÎÀ°¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cpplib.c:973
+#: cpplib.c:947
#, fuzzy
msgid "invalid #ident directive"
msgstr "̵¸ú¤Ê #ident"
-#: cpplib.c:1061
+#: cpplib.c:1027
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr ""
-#: cpplib.c:1064
+#: cpplib.c:1030
#, fuzzy, c-format
msgid "#pragma %s %s is already registered"
msgstr "¥¯¥é¥¹ `%s' ¤Ï´û¤Ë¸ºß¤·¤Þ¤¹"
-#: cpplib.c:1067
+#: cpplib.c:1033
#, c-format
msgid "#pragma %s is already registered"
msgstr ""
-#: cpplib.c:1143
-msgid "#pragma once is obsolete"
-msgstr "#pragma once ¤Ï¤â¤¦»È¤ï¤ì¤Æ¤¤¤Þ¤»¤ó"
-
-#: cpplib.c:1146
+#: cpplib.c:1178
msgid "#pragma once in main file"
msgstr "#pragma once ¤¬¥á¥¤¥ó¥Õ¥¡¥¤¥ë¤Ë¤¢¤ê¤Þ¤¹"
-#: cpplib.c:1170
+#: cpplib.c:1201
msgid "invalid #pragma GCC poison directive"
msgstr "#pragma GCC ±øÀ÷¥Ç¥£¥ì¥¯¥Æ¥£¥ô¤¬Ìµ¸ú¤Ç¤¹"
-#: cpplib.c:1179
+#: cpplib.c:1210
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr "´û¸¤Î¥Þ¥¯¥í \"%s' ¤ò±øÀ÷¤·¤Þ¤¹"
-#: cpplib.c:1201
+#: cpplib.c:1231
msgid "#pragma system_header ignored outside include file"
msgstr "include ¥Õ¥¡¥¤¥ë³°¤Î #pragma system_header ¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: cpplib.c:1226
-#, c-format
-msgid "cannot find source %s"
+#: cpplib.c:1255
+#, fuzzy, c-format
+msgid "cannot find source file %s"
msgstr "¥½¡¼¥¹ %s ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: cpplib.c:1230
+#: cpplib.c:1259
#, c-format
msgid "current file is older than %s"
msgstr "¸½ºß¤Î¥Õ¥¡¥¤¥ë¤Ï %s ¤è¤ê¸Å¤¤¤Ç¤¹"
-#: cpplib.c:1346
+#: cpplib.c:1373
msgid "_Pragma takes a parenthesized string literal"
msgstr "_Pramga ¤¬³ç¸Ì¤Ç°Ï¤Þ¤ì¤¿Ê¸»úÎó¥ê¥Æ¥é¥ë¤ò¼õ¤±¼è¤ê¤Þ¤·¤¿"
-#: cpplib.c:1429
+#: cpplib.c:1451
msgid "#else without #if"
msgstr "#else ¤Ë #if ¤¬¤¢¤ê¤Þ¤»¤ó"
-#: cpplib.c:1434
+#: cpplib.c:1456
msgid "#else after #else"
msgstr "#else ¤¬ #else ¤Î¸å¤í¤Ë¤¢¤ê¤Þ¤¹"
-#: cpplib.c:1436 cpplib.c:1470
-msgid "the conditional began here"
-msgstr "¤½¤Î¾ò·ï¤Ï¤³¤³¤«¤é»Ï¤Þ¤ê¤Þ¤¹"
-
-#: cpplib.c:1463
+#: cpplib.c:1484
msgid "#elif without #if"
msgstr "#elif ¤Ë #if ¤¬¤¢¤ê¤Þ¤»¤ó"
-#: cpplib.c:1468
+#: cpplib.c:1489
msgid "#elif after #else"
msgstr "#elif ¤¬ #else ¤Î¸å¤í¤Ë¤¢¤ê¤Þ¤¹"
-#: cpplib.c:1499
+#: cpplib.c:1519
msgid "#endif without #if"
msgstr "#endif ¤Ë #if ¤¬¤¢¤ê¤Þ¤»¤ó"
-#: cpplib.c:1582
+#: cpplib.c:1596
msgid "missing '(' after predicate"
msgstr "½Ò¸ì¤Î¸å¤í¤Î '(' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: cpplib.c:1597
+#: cpplib.c:1611
msgid "missing ')' to complete answer"
msgstr "²ò¤òÊä´°¤¹¤ë ')' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: cpplib.c:1617
+#: cpplib.c:1631
msgid "predicate's answer is empty"
msgstr "½Ò¸ì¤Î²ò¤¬¶õ¤Ç¤¹"
-#: cpplib.c:1647
+#: cpplib.c:1658
msgid "assertion without predicate"
msgstr "½Ò¸ì¤Î¤Ê¤¤¥¢¥µ¡¼¥·¥ç¥ó¤Ç¤¹"
-#: cpplib.c:1649
+#: cpplib.c:1660
msgid "predicate must be an identifier"
msgstr "½Ò¸ì¤Ï¼±Ê̻ҤǤʤ±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cpplib.c:1738
+#: cpplib.c:1744
#, c-format
msgid "\"%s\" re-asserted"
msgstr "\"%s\" ¤¬ºÆ¥¢¥µ¡¼¥È¤µ¤ì¤Þ¤·¤¿"
-#: cpplib.c:1968
-#, c-format
-msgid "unterminated #%s"
-msgstr "½ªÃ¼¤Î¤Ê¤¤ #%s"
-
-#: cppmacro.c:94
-#, fuzzy, c-format
-msgid "macro \"%s\" is not used"
-msgstr "\"%s\" ¤ÏÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-
-#: cppmacro.c:139 cppmacro.c:294
+#: cppmacro.c:125 cppmacro.c:280
#, fuzzy, c-format
msgid "invalid built-in macro \"%s\""
msgstr "ÁȤ߹þ¤ß¥Þ¥¯¥í \"%s\" ¤Ï̵¸ú¤Ç¤¹"
-#: cppmacro.c:234
+#: cppmacro.c:221
#, fuzzy
msgid "could not determine date and time"
msgstr "°Í¸´Ø·¸¤ÎÄÉÀפΤ¿¤á¤Î¥¿¡¼¥²¥Ã¥È̾¤¬ÆÃÄê¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿"
-#: cppmacro.c:407
+#: cppmacro.c:393
msgid "invalid string literal, ignoring final '\\'"
msgstr "ʸ»úÎó¥ê¥Æ¥é¥ë¤¬Ìµ¸ú¤Ç¤¹¡¢ºÇ¸å¤Î '\\' ¤ò̵»ë¤·¤Þ¤¹"
-#: cppmacro.c:504
+#: cppmacro.c:476
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr "\"%s\" ¤È \"%s\" ¤òŽÉÕ¤±¤Þ¤·¤¿¤¬Àµ¾ï¤Ê¥×¥ê¥×¥í¥»¥Ã¥µ¥È¡¼¥¯¥ó¤È¤Ê¤ê¤Þ¤»¤ó"
-#: cppmacro.c:546
+#: cppmacro.c:514
msgid "ISO C99 requires rest arguments to be used"
msgstr "ISO C99 ¤Ï»ÈÍѤµ¤ì¤ë¤Ù¤­»Ä¤ê¤Î¤Î°ú¿ô¤òÍ׵ᤷ¤Þ¤¹"
-#: cppmacro.c:551
+#: cppmacro.c:519
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr "¥Þ¥¯¥í \"%s\" ¤Ï°ú¿ô¤ò %u Í׵ᤷ¤Þ¤¹¤¬¡¢%u ¸Ä¤·¤«Í¿¤¨¤é¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: cppmacro.c:556
+#: cppmacro.c:524
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr "¥Þ¥¯¥í \"%s\" ¤Ë°ú¿ô¤¬ %u ÅϤµ¤ì¤Þ¤·¤¿¤¬¡¢%u ¤·¤«¼õ¤±¼è¤ê¤Þ¤»¤ó"
-#: cppmacro.c:669 cpptrad.c:774
+#: cppmacro.c:635
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr "½ªÃ¼¤µ¤ì¤Æ¤¤¤Ê¤¤°ú¿ô¥ê¥¹¥È¤¬¥Þ¥¯¥í \"%s\" ¤òµ¯Æ°¤·¤è¤¦¤È¤·¤Þ¤·¤¿"
-#: cppmacro.c:776
+#: cppmacro.c:738
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr "¸Å¤¤ C ¤Ç¤Ï¡¢´Ø¿ôŪ¥Þ¥¯¥í \"%s\" ¤Ë°ú¿ô¤¬Í¿¤¨¤é¤ì¤Í¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cppmacro.c:1314
+#: cppmacro.c:1241
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr "¥Þ¥¯¥í²¾°ú¿ô \"%s\" ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-#: cppmacro.c:1351
+#: cppmacro.c:1286
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr "\"%s\" ¤Ï¥Þ¥¯¥í²¾°ú¿ô¥ê¥¹¥È¤Ë¸½¤ì¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó"
-#: cppmacro.c:1359
+#: cppmacro.c:1294
msgid "macro parameters must be comma-separated"
msgstr "¥Þ¥¯¥í²¾°ú¿ô¤Ï¥«¥ó¥Þ¶èÀڤꤵ¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cppmacro.c:1376
+#: cppmacro.c:1311
msgid "parameter name missing"
msgstr "²¾°ú¿ô̾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: cppmacro.c:1391
+#: cppmacro.c:1326
msgid "anonymous variadic macros were introduced in C99"
msgstr "̵̾²ÄÊÑ°ú¿ô¥Þ¥¯¥í¤Ï C99 ¤ÇºÎ¤êÆþ¤ì¤é¤ì¤Þ¤·¤¿"
-#: cppmacro.c:1395
+#: cppmacro.c:1330
msgid "ISO C does not permit named variadic macros"
msgstr "ISO C ¤Ç¤Ï̾Á°¤Ä¤­²ÄÊÑ°ú¿ô¥Þ¥¯¥í¤òµö¤·¤Þ¤»¤ó"
-#: cppmacro.c:1404
+#: cppmacro.c:1339
msgid "missing ')' in macro parameter list"
msgstr "¥Þ¥¯¥í²¾°ú¿ô¥ê¥¹¥È¤Ç¡¢')' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: cppmacro.c:1472
+#: cppmacro.c:1402
msgid "ISO C requires whitespace after the macro name"
msgstr "ISO C ¤Ç¤Ï¥Þ¥¯¥í̾¤Î¸å¤í¤Ë¶õÇò¤òÍ׵ᤷ¤Þ¤¹"
-#: cppmacro.c:1500
+#: cppmacro.c:1430
msgid "'#' is not followed by a macro parameter"
msgstr "'#' ¤Ë¥Þ¥¯¥í²¾°ú¿ô̾¤¬Â³¤¤¤Æ¤¤¤Þ¤»¤ó"
-#: cppmacro.c:1519
+#: cppmacro.c:1449
msgid "'##' cannot appear at either end of a macro expansion"
msgstr "'##' ¤Ï¥Þ¥¯¥íŸ³«¤Îξü¤Ë¤Ï½Ð¸½¤Ç¤­¤Þ¤»¤ó"
-#: cppmacro.c:1601
-#, c-format
-msgid "\"%s\" redefined"
-msgstr "\"%s\" ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-
-#: cppmacro.c:1606
-msgid "this is the location of the previous definition"
-msgstr "¤³¤³¤¬°ÊÁ°¤ÎÀë¸À¤¬¤¢¤ë°ÌÃ֤Ǥ¹"
-
-#: cppmacro.c:1657
+#: cppmacro.c:1588
#, fuzzy, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr "¥Þ¥¯¥í°ú¿ô \"%s\" ¤Ï -traditional ¤ò¤Ä¤±¤ë¤Èʸ»úÎ󲽤µ¤ì¤¿»ö¤Ç¤·¤ç¤¦"
-#: cppmacro.c:1682
+#: cppmacro.c:1611
#, fuzzy, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr "dump_definition ¤Ë ̵¸ú¤Ê¥Ï¥Ã¥·¥å¥¿¥¤¥× %d"
-#: cppspec.c:109
+#: cpppch.c:84 cpppch.c:332 cpppch.c:356 cpppch.c:365
+msgid "while writing precompiled header"
+msgstr ""
+
+#: cpppch.c:463
+#, fuzzy, c-format
+msgid "%s: not used because `%.*s' not defined"
+msgstr "¥é¥Ù¥ë `%s' ¤¬»È¤ï¤ì¤Þ¤·¤¿¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+
+#: cpppch.c:475
+#, c-format
+msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
+msgstr ""
+
+#: cpppch.c:516
+#, fuzzy, c-format
+msgid "%s: not used because `%s' is defined"
+msgstr "`%s' ¤¬»È¤ï¤ì¤Þ¤·¤¿¤¬Ì¤ÄêµÁ¤Ç¤¹"
+
+#: cpppch.c:529 cpppch.c:715
+msgid "while reading precompiled header"
+msgstr ""
+
+#: cppspec.c:106
#, c-format
msgid "\"%s\" is not a valid option to the preprocessor"
msgstr "\"%s\" ¤Ï¥×¥ê¥×¥í¥»¥Ã¥µ¤ËÂФ¹¤ëÀµ¾ï¤Ê¥ª¥×¥·¥ç¥ó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cppspec.c:133
+#: cppspec.c:128
msgid "too many input files"
msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë¤¬Â¿¤¹¤®¤Þ¤¹"
-#: cpptrad.c:841
+#: cpptrad.c:744
#, fuzzy, c-format
msgid "detected recursion whilst expanding macro \"%s\""
msgstr "½ªÃ¼¤µ¤ì¤Æ¤¤¤Ê¤¤°ú¿ô¥ê¥¹¥È¤¬¥Þ¥¯¥í \"%s\" ¤òµ¯Æ°¤·¤è¤¦¤È¤·¤Þ¤·¤¿"
-#: cse.c:7195
+#: cpptrad.c:911
+#, fuzzy
+msgid "syntax error in macro parameter list"
+msgstr "\"%s\" ¤Ï¥Þ¥¯¥í²¾°ú¿ô¥ê¥¹¥È¤Ë¸½¤ì¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó"
+
+#: cse.c:7040
#, c-format
msgid ";; Processing block from %d to %d, %d sets.\n"
msgstr ";; %d ¤«¤é %d ¤Þ¤Ç¤Î½èÍý¥Ö¥í¥Ã¥¯¡¢%d ¥»¥Ã¥È¡£\n"
-#: diagnostic.c:714
-msgid "((anonymous))"
-msgstr "((̵̾))"
-
-#: diagnostic.c:928
-#, c-format
-msgid "%s: warnings being treated as errors\n"
-msgstr "%s: ·Ù¹ð¤Ï¥¨¥é¡¼¤È¤·¤Æ¼è¤ê°·¤ï¤ì¤Þ¤¹\n"
-
-#: diagnostic.c:963
-#, c-format
-msgid "%s: %s: "
-msgstr "%s: %s: "
-
-#: diagnostic.c:1054
-#, c-format
-msgid "%s "
-msgstr "%s "
-
-#: diagnostic.c:1056
-#, c-format
-msgid " %s"
-msgstr " %s"
-
-#: diagnostic.c:1078
-msgid "At top level:"
-msgstr "¥È¥Ã¥×¥ì¥Ù¥ë:"
-
-#: diagnostic.c:1083
-#, fuzzy, c-format
-msgid "In member function `%s':"
-msgstr "´Ø¿ô `%s' Æâ:"
-
-#: diagnostic.c:1087
-#, c-format
-msgid "In function `%s':"
-msgstr "´Ø¿ô `%s' Æâ:"
-
-#: diagnostic.c:1175
-msgid "compilation terminated.\n"
-msgstr "¥³¥ó¥Ñ¥¤¥ë¤¬ÃæÃǤµ¤ì¤Þ¤·¤¿¡£\n"
-
-#: diagnostic.c:1193
+#: diagnostic.c:209
#, c-format
msgid "%s:%d: confused by earlier errors, bailing out\n"
msgstr "%s:%d: Á°¤Î¥¨¥é¡¼¤Ë¤è¤êº®Í𤷤Ƥ¤¤Þ¤¹¤Î¤Ç¡¢Ã¦½Ð¤·¤Þ¤¹\n"
-#: diagnostic.c:1208 diagnostic.c:1316
-#, c-format
-msgid ""
-"Please submit a full bug report,\n"
-"with preprocessed source if appropriate.\n"
-"See %s for instructions.\n"
-msgstr ""
-"´°Á´¤Ê¥Ð¥°Êó¹ð¤òÁ÷¤Ã¤Æ²¼¤µ¤¤¡£\n"
-"ŬÀڤʤé¤Ð¥×¥ê¥×¥í¥»¥¹¸å¤Î¥½¡¼¥¹¤ò¤Ä¤±¤Æ¤¯¤À¤µ¤¤¡£\n"
-"%s ¤ò¸«¤ì¤ÐÊýË¡¤¬½ñ¤¤¤Æ¤¢¤ê¤Þ¤¹¡£\n"
+#: diagnostic.c:281
+msgid "compilation terminated.\n"
+msgstr "¥³¥ó¥Ñ¥¤¥ë¤¬ÃæÃǤµ¤ì¤Þ¤·¤¿¡£\n"
-#: diagnostic.c:1314
+#: diagnostic.c:572
msgid "Internal compiler error: Error reporting routines re-entered.\n"
msgstr "ÆâÉô¥³¥ó¥Ñ¥¤¥ë¥¨¥é¡¼: ¥¨¥é¡¼Êó¹ð¥ë¡¼¥Á¥ó¤ËºÆÆþ¤·¤Þ¤·¤¿¡£\n"
-#: diagnostic.c:1376
+#: diagnostic.c:584
#, fuzzy, c-format
msgid "in %s, at %s:%d"
msgstr "%s ¤ÇÃæÃÇ, °ÌÃÖ %s:%d"
-#: diagnostic.c:1397
-#, c-format
-msgid "In file included from %s:%d"
-msgstr "%s:%d ¤«¤é include ¤µ¤ì¤¿¥Õ¥¡¥¤¥ëÆâ"
-
-#: diagnostic.c:1400
-#, c-format
-msgid ""
-",\n"
-" from %s:%d"
-msgstr ""
-",\n"
-" %s:%d ¤«¤é"
-
-#: diagnostic.c:1401
-msgid ":\n"
-msgstr ":\n"
-
-#: diagnostic.c:1445 diagnostic.c:1462
-#, c-format
-msgid "`%s' is deprecated (declared at %s:%d)"
-msgstr ""
-
-#: diagnostic.c:1465
-#, fuzzy, c-format
-msgid "`%s' is deprecated"
-msgstr "%s ¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹"
-
-#: diagnostic.c:1468
-#, c-format
-msgid "type is deprecated (declared at %s:%d)"
-msgstr ""
-
-#: diagnostic.c:1471
-msgid "type is deprecated"
-msgstr ""
-
-#: dominance.c:728
+#: dominance.c:763
#, c-format
msgid "dominator of %d should be %d, not %d"
msgstr ""
-#: dwarf2out.c:3135
+#: dwarf2out.c:3228
#, fuzzy, c-format
msgid "DW_LOC_OP %s not implemented\n"
msgstr "DW_LOC_OP %s ¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-#: dwarfout.c:2066
-#, fuzzy, c-format
-msgid "internal regno botch: `%s' has regno = %d\n"
-msgstr "ÆâÉôŪ¤Ë regno ¤Î½èÍý¤¬ÊÑ: regno = %d\n"
-
-#: dwarfout.c:6181
-msgid "support for the DWARF1 debugging format is deprecated"
-msgstr ""
-
-#: dwarfout.c:6278
-msgid "can't get current directory"
-msgstr "¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¤ò¼èÆÀ¤Ç¤­¤Þ¤»¤ó"
-
#: emit-rtl.c:1155
#, fuzzy
msgid "can't access real part of complex value in hard register"
msgstr "¥Ï¡¼¥É¥ì¥¸¥¹¥¿Æâ¤ÇÊ£ÁÇ¿ô¤Î¼Â¿ôÉôʬ¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó"
-#: emit-rtl.c:1177
+#: emit-rtl.c:1182
msgid "can't access imaginary part of complex value in hard register"
msgstr "¥Ï¡¼¥É¥ì¥¸¥¹¥¿Æâ¤ÇÊ£ÁÇ¿ô¤Îµõ¿ôÉôʬ¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó"
-#: emit-rtl.c:3402
+#: emit-rtl.c:2263
+msgid "Invalid rtl sharing found in the insn"
+msgstr ""
+
+#: emit-rtl.c:2265
+msgid "Shared rtx"
+msgstr ""
+
+#: emit-rtl.c:3400
msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
msgstr "ICE: emit_insn ¤¬ emit_jump_insn ¤òÍפ¹¤ë½ê¤Ç»È¤ï¤ì¤Þ¤·¤¿:\n"
-#: errors.c:136
+#: errors.c:129
#, c-format
msgid "abort in %s, at %s:%d"
msgstr "%s ¤ÇÃæÃÇ, °ÌÃÖ %s:%d"
-#: except.c:369
+#: except.c:357
msgid "exception handling disabled, use -fexceptions to enable"
msgstr "Îã³°½èÍý¤ò̵¸ú¤Ë¤·¤Þ¤·¤¿. Í­¸ú¤Ë¤¹¤ë¤Ë¤Ï -fexceptions ¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤"
-#: except.c:2994
+#: except.c:2942
msgid "argument of `__builtin_eh_return_regno' must be constant"
msgstr "`__builtin_eh_return_regno' ¤Î°ú¿ô¤ÏÄê¿ô¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: except.c:3137
+#: except.c:3073
msgid "__builtin_eh_return not supported on this target"
msgstr "__builtin_eh_return ¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: explow.c:1408
+#: explow.c:1327
msgid "stack limits not supported on this target"
msgstr "¥¹¥¿¥Ã¥¯À©¸Â¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: expr.c:3355
+#: expr.c:2965
msgid "function using short complex types cannot be inline"
msgstr "short complex ·¿¤ò»È¤¦´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: expr.c:6272 expr.c:6281 expr.c:6290 expr.c:6295 expr.c:6604 expr.c:6620
-msgid "unsupported wide integer operation"
-msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¥ï¥¤¥ÉÀ°¿ô±é»»"
-
-#: expr.c:6669
-#, c-format
-msgid "prior parameter's size depends on `%s'"
+#: expr.c:6311
+#, fuzzy
+msgid "%Jprior parameter's size depends on '%D'"
msgstr "Í¥À褹¤ë²¾°ú¿ô¤Î¥µ¥¤¥º¤Ï `%s' ¼¡Âè¤Ç¤¹"
-#: expr.c:7005
+#: expr.c:6678
msgid "returned value in block_exit_expr"
msgstr "block_exit_expr ¤ÇÃͤò return ¤·¤Þ¤·¤¿"
#. We can't make a bitwise copy of this object, so fail.
-#: expr.c:9202
+#: expr.c:8823
#, fuzzy
msgid "cannot take the address of an unaligned member"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤Î¥¢¥É¥ì¥¹¤ò¼èÆÀ¤Ç¤­¤Þ¤»¤ó"
-#: final.c:1342
+#: final.c:1058
msgid "negative insn length"
msgstr ""
-#: final.c:2793
+#: final.c:2429
msgid "could not split insn"
msgstr ""
-#: final.c:3141
+#: final.c:2771
#, fuzzy
msgid "invalid `asm': "
msgstr "̵¸ú¤Ê `asm': %s"
-#: final.c:3328
+#: final.c:2954
msgid "nested assembly dialect alternatives"
msgstr ""
-#: final.c:3345 final.c:3357
+#: final.c:2971 final.c:2983
msgid "unterminated assembly dialect alternative"
msgstr ""
-#: final.c:3401
+#: final.c:3027
#, fuzzy, c-format
msgid "operand number missing after %%-letter"
msgstr "±é»»¿ô¤¬ %-letter ¤Î¸å¤Ë¤¢¤ê¤Þ¤»¤ó"
-#: final.c:3404 final.c:3443
+#: final.c:3030 final.c:3069
msgid "operand number out of range"
msgstr "±é»»¿ô¤¬Èϰϳ°¤Ç¤¹"
-#: final.c:3462
+#: final.c:3088
#, c-format
msgid "invalid %%-code"
msgstr "̵¸ú¤Ê %%-code"
-#: final.c:3493
+#: final.c:3118
#, fuzzy, c-format
msgid "`%%l' operand isn't a label"
msgstr "`%l' ±é»»¤Ï¥é¥Ù¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
-#: final.c:3600 vmsdbgout.c:466 config/i386/i386.c:6314
-#: config/pdp11/pdp11.c:1573
+#. We can't handle floating point constants; PRINT_OPERAND must
+#. handle them.
+#. We can't handle floating point constants;
+#. PRINT_OPERAND must handle them.
+#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6739
+#: config/pdp11/pdp11.c:1646
msgid "floating constant misused"
msgstr "ÉâÆ°¾®¿ôÄê¿ô¤ò»È¤¤Â»¤Í¤Þ¤·¤¿"
-#: final.c:3656 vmsdbgout.c:523 config/i386/i386.c:6392
-#: config/pdp11/pdp11.c:1620
+#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6817
+#: config/pdp11/pdp11.c:1693
msgid "invalid expression as operand"
msgstr "¥ª¥Ú¥é¥ó¥É¤È¤·¤Æ̵¸ú¤Ê¼°"
-#: flow.c:352
+#: flow.c:329
msgid "function might be possible candidate for attribute `noreturn'"
msgstr "´Ø¿ô¤Ï¶²¤é¤¯ `noreturn' °À­¤Î¸õÊä¤È»×¤ï¤ì¤Þ¤¹"
-#: flow.c:357
+#: flow.c:334
msgid "`noreturn' function does return"
msgstr "`noreturn' ´Ø¿ô¤¬ return ¤·¤Æ¤¤¤Þ¤¹"
-#: flow.c:378
+#: flow.c:355
msgid "control reaches end of non-void function"
msgstr "À©¸æ¤¬Èó void ´Ø¿ô¤Î½ª¤ê¤ËÅþ㤷¤Þ¤·¤¿"
-#: flow.c:1642
+#: flow.c:1582
msgid "Attempt to delete prologue/epilogue insn:"
msgstr ""
-#: fold-const.c:2546 fold-const.c:2559
+#: fold-const.c:2759 fold-const.c:2772
#, fuzzy, c-format
msgid "comparison is always %d due to width of bit-field"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤ÎÉý¤Î¤»¤¤¤ÇÈæ³Ó¤¬¾ï¤Ë %d ¤È¤Ê¤ê¤Þ¤¹"
-#: fold-const.c:3753 fold-const.c:3770
+#: fold-const.c:3967 fold-const.c:3984
#, c-format
msgid "comparison is always %d"
msgstr "Èæ³Ó¤¬¾ï¤Ë %d ¤È¤Ê¤ê¤Þ¤¹"
-#: fold-const.c:3901
+#: fold-const.c:4115
msgid "`or' of unmatched not-equal tests is always 1"
msgstr "°ìÃפ·¤Ê¤¤ÃÍƱ»Î¤Ç¤ÎÈóÅù²Á¤Î `or' ¥Æ¥¹¥È¤Ï¾ï¤Ë 1 ¤Ç¤¹"
-#: fold-const.c:3906
+#: fold-const.c:4120
msgid "`and' of mutually exclusive equal-tests is always 0"
msgstr "Áê¸ßÇÓ¾Ū¤ÊÃͤÎÅù²Á¤Î `and' ¥Æ¥¹¥È¤Ï¾ï¤Ë 0 ¤Ç¤¹"
-#: function.c:884 varasm.c:1503
-#, c-format
-msgid "size of variable `%s' is too large"
+#: fold-const.c:8340
+msgid "fold check: original tree changed by fold"
+msgstr ""
+
+#: function.c:884 varasm.c:1408
+#, fuzzy
+msgid "%Jsize of variable '%D' is too large"
msgstr "ÊÑ¿ô `%s' ¤Î¥µ¥¤¥º¤¬Â礭¤¹¤®¤Þ¤¹"
-#: function.c:3772
+#: function.c:3737
#, fuzzy
msgid "impossible constraint in `asm'"
msgstr "`asm' Æâ¤Ç¤Ï¥ì¥¸¥¹¥¿À©Ìó¤ò¹Ô¤Ê¤¨¤Þ¤»¤ó"
-#: function.c:5527
-#, c-format
-msgid "`%s' might be used uninitialized in this function"
+#: function.c:5697
+#, fuzzy
+msgid "%J'%D' might be used uninitialized in this function"
msgstr "`%s' ¤Ï¤³¤Î´Ø¿ôÆâ¤Ç½é´ü²½¤µ¤ì¤º¤Ë»ÈÍѤµ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹"
-#: function.c:5534
-#, c-format
-msgid "variable `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5704
+#, fuzzy
+msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'"
msgstr "ÊÑ¿ô `%s' ¤Ï `longjmp' ¤ä `vfork' ¤Ë¤è¤Ã¤Æ¹ó¤¤¤³¤È¤Ë¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹"
-#: function.c:5553
-#, c-format
-msgid "argument `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5723
+#, fuzzy
+msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'"
msgstr "°ú¿ô `%s' ¤Ï `longjmp' ¤ä `vfork' ¤Ë¤è¤Ã¤Æ¹ó¤¤¤³¤È¤Ë¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹"
-#: function.c:6420
+#: function.c:6497
msgid "function returns an aggregate"
msgstr "´Ø¿ô¤¬½¸¹çÂΤòÊÖ¤·¤Æ¤¤¤Þ¤¹"
-#: function.c:6925
-#, c-format
-msgid "unused parameter `%s'"
+#: function.c:6980
+#, fuzzy
+msgid "%Junused parameter '%D'"
msgstr "°ú¿ô `%s' ¤¬Ì¤»ÈÍѤǤ¹"
-#: gcc.c:1107
+#: gcc.c:1191
#, fuzzy, c-format
msgid "ambiguous abbreviation %s"
msgstr "¤¢¤¤¤Þ¤¤¤Ê¾Êά %s ¤Ç¤¹"
-#: gcc.c:1134
+#: gcc.c:1218
#, fuzzy, c-format
msgid "incomplete `%s' option"
msgstr "ÉÔ´°Á´¤Ê `%s' ¥ª¥×¥·¥ç¥ó¤Ç¤¹"
-#: gcc.c:1145
+#: gcc.c:1229
#, fuzzy, c-format
msgid "missing argument to `%s' option"
msgstr "`%s' ¥ª¥×¥·¥ç¥ó¤ËÂФ¹¤ë°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: gcc.c:1158
+#: gcc.c:1242
#, fuzzy, c-format
msgid "extraneous argument to `%s' option"
msgstr "`%s' ¥ª¥×¥·¥ç¥ó¤ËÂФ·¤Æ̵´Ø·¸¤Ê°ú¿ô"
-#: gcc.c:1486
+#: gcc.c:1563
#, fuzzy
msgid "Using built-in specs.\n"
msgstr "ÁȤ߹þ¤ß spec ¤ò»ÈÍÑ.\n"
-#: gcc.c:1667
+#: gcc.c:1748
#, c-format
msgid ""
"Setting spec %s to '%s'\n"
@@ -5366,42 +5210,42 @@ msgstr ""
"spec %s ¤ò '%s' ¤ËÀßÄêÃæ\n"
"\n"
-#: gcc.c:1774
+#: gcc.c:1850
#, c-format
msgid "Reading specs from %s\n"
msgstr "%s ¤«¤é spec ¤òÆɤ߹þ¤ßÃæ\n"
-#: gcc.c:1872 gcc.c:1891
+#: gcc.c:1946 gcc.c:1965
#, c-format
msgid "specs %%include syntax malformed after %ld characters"
msgstr "specs ¤Î %ld ʸ»úÌܰʹߤΠ%%include ¤Î½ñ¼°¤¬ÊѤǤ¹"
-#: gcc.c:1899
+#: gcc.c:1973
#, fuzzy, c-format
msgid "could not find specs file %s\n"
msgstr "spec ¥Õ¥¡¥¤¥ë %s ¤ò¸«¤Ä¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿\n"
-#: gcc.c:1916 gcc.c:1924 gcc.c:1933 gcc.c:1942
+#: gcc.c:1990 gcc.c:1998 gcc.c:2007 gcc.c:2016
#, c-format
msgid "specs %%rename syntax malformed after %ld characters"
msgstr "specs ¤Î %ld ʸ»úÌܰʹߤΠ%%rename ¤Î½ñ¼°¤¬ÊѤǤ¹"
-#: gcc.c:1951
+#: gcc.c:2025
#, c-format
msgid "specs %s spec was not found to be renamed"
msgstr "spec ¥Õ¥¡¥¤¥ë %s ¤Ë̾Á°¤òÊѹ¹¤¹¤ë spec ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¤Ç¤·¤¿"
-#: gcc.c:1958
+#: gcc.c:2032
#, c-format
msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
msgstr ""
-#: gcc.c:1963
+#: gcc.c:2037
#, c-format
msgid "rename spec %s to %s\n"
msgstr "spec %s ¤ò %s ¤Ë̾Á°¤òÊѹ¹\n"
-#: gcc.c:1965
+#: gcc.c:2039
#, c-format
msgid ""
"spec is '%s'\n"
@@ -5410,25 +5254,25 @@ msgstr ""
"spec ¤Ï '%s' ¤Ç¤¹\n"
"\n"
-#: gcc.c:1978
+#: gcc.c:2052
#, c-format
msgid "specs unknown %% command after %ld characters"
msgstr "spec ¥Õ¥¡¥¤¥ëÃæ¤Î %ld ʸ»ú¤Î¸å¤ËÉÔÌÀ¤Ê %% ¥³¥Þ¥ó¥É"
-#: gcc.c:1989 gcc.c:2002
+#: gcc.c:2063 gcc.c:2076
#, c-format
msgid "specs file malformed after %ld characters"
msgstr "%ld ʸ»ú¤Î¸å¤Ë¤ª¤«¤·¤Ê spec ¥Õ¥¡¥¤¥ë"
-#: gcc.c:2056
+#: gcc.c:2129
msgid "spec file has no spec for linking"
msgstr "spec ¥Õ¥¡¥¤¥ë¤Ë¥ê¥ó¥¯¤Ë´Ø¤¹¤ë spec ¤¬¤¢¤ê¤Þ¤»¤ó"
-#: gcc.c:2554
+#: gcc.c:2634
msgid "-pipe not supported"
msgstr "-pipe ¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: gcc.c:2609
+#: gcc.c:2696
msgid ""
"\n"
"Go ahead? (y or n) "
@@ -5436,7 +5280,7 @@ msgstr ""
"\n"
"³¤±¤Þ¤¹¤«? (y ¤Þ¤¿¤Ï n) "
-#: gcc.c:2735
+#: gcc.c:2822
#, c-format
msgid ""
"Internal error: %s (program %s)\n"
@@ -5447,71 +5291,71 @@ msgstr ""
"´°Á´¤Ê¥Ð¥°¥ì¥Ý¡¼¥È¤òÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤¡£\n"
"%s ¤Ë¼ê½ç¤¬½ñ¤¤¤Æ¤¢¤ê¤Þ¤¹¡£"
-#: gcc.c:2753
+#: gcc.c:2840
#, c-format
msgid "# %s %.2f %.2f\n"
msgstr "# %s %.2f %.2f\n"
-#: gcc.c:2883
+#: gcc.c:2973
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr "»È¤¤Êý: %s [¥ª¥×¥·¥ç¥ó] ¥Õ¥¡¥¤¥ë...\n"
-#: gcc.c:2884
+#: gcc.c:2974
msgid "Options:\n"
msgstr "¥ª¥×¥·¥ç¥ó:\n"
-#: gcc.c:2886
+#: gcc.c:2976
msgid " -pass-exit-codes Exit with highest error code from a phase\n"
msgstr ""
" -pass-exit-codes ¥Õ¥§¡¼¥º¤«¤é¤Î¥¨¥é¡¼¥³¡¼¥É¤ÎºÇÂçÃͤò exit\n"
" ¥³¡¼¥É¤È¤·¤ÆÊÖ¤¹\n"
-#: gcc.c:2887
+#: gcc.c:2977
msgid " --help Display this information\n"
msgstr " --help ¤³¤Î¥Ø¥ë¥×¾ðÊó¤òɽ¼¨\n"
-#: gcc.c:2888
+#: gcc.c:2978
msgid " --target-help Display target specific command line options\n"
msgstr " --target-help ¥¿¡¼¥²¥Ã¥È¸ÇÍ­¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¥ª¥×¥·¥ç¥ó¤òɽ¼¨\n"
-#: gcc.c:2890
+#: gcc.c:2980
msgid " (Use '-v --help' to display command line options of sub-processes)\n"
msgstr "(`-v --help' ¤ò»È¤¦¤È¡¢»Ò¥×¥í¥»¥¹¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¥ª¥×¥·¥ç¥ó¤òɽ¼¨)\n"
-#: gcc.c:2891
+#: gcc.c:2981
msgid " -dumpspecs Display all of the built in spec strings\n"
msgstr " -dumpspecs ÁȤ߹þ¤Þ¤ì¤¿ spec ʸ»úÎó¤òÁ´¤Æɽ¼¨\n"
-#: gcc.c:2892
+#: gcc.c:2982
msgid " -dumpversion Display the version of the compiler\n"
msgstr " -dumpversion ¥³¥ó¥Ñ¥¤¥é¤Î¥Ð¡¼¥¸¥ç¥ó¤òɽ¼¨\n"
-#: gcc.c:2893
+#: gcc.c:2983
msgid " -dumpmachine Display the compiler's target processor\n"
msgstr " -dumpmachine ¥³¥ó¥Ñ¥¤¥é¤Î¥¿¡¼¥²¥Ã¥È¥×¥í¥»¥Ã¥µ¤òɽ¼¨\n"
-#: gcc.c:2894
+#: gcc.c:2984
msgid " -print-search-dirs Display the directories in the compiler's search path\n"
msgstr " -print-search-dirs ¥³¥ó¥Ñ¥¤¥é¤Î¥µ¡¼¥Á¥Ñ¥¹¤Ë¤¢¤ë¥Ç¥£¥ì¥¯¥È¥ê¤òɽ¼¨\n"
-#: gcc.c:2895
+#: gcc.c:2985
msgid " -print-libgcc-file-name Display the name of the compiler's companion library\n"
msgstr " -print-libgcc-file-name ¥³¥ó¥Ñ¥¤¥é¤Î¥³¥ó¥Ñ¥Ë¥ª¥ó¥é¥¤¥Ö¥é¥ê̾¤òɽ¼¨\n"
-#: gcc.c:2896
+#: gcc.c:2986
msgid " -print-file-name=<lib> Display the full path to library <lib>\n"
msgstr " -print-file-name=<lib> ¥é¥¤¥Ö¥é¥ê <lib> ¤Ø¤Î¥Õ¥ë¥Ñ¥¹¤òɽ¼¨\n"
-#: gcc.c:2897
+#: gcc.c:2987
msgid " -print-prog-name=<prog> Display the full path to compiler component <prog>\n"
msgstr " -print-prog-name=<prog> ¥³¥ó¥Ñ¥¤¥é¤ÎÉôÉÊ <prog> ¤Ø¤Î¥Õ¥ë¥Ñ¥¹¤òɽ¼¨\n"
-#: gcc.c:2898
+#: gcc.c:2988
msgid " -print-multi-directory Display the root directory for versions of libgcc\n"
msgstr " -print-multi-directory libgcc ¤Î¥Ð¡¼¥¸¥ç¥ó¥Ç¥£¥ì¥¯¥È¥ê¥ë¡¼¥È¤òɽ¼¨\n"
-#: gcc.c:2899
+#: gcc.c:2989
msgid ""
" -print-multi-lib Display the mapping between command line options and\n"
" multiple library search directories\n"
@@ -5519,91 +5363,101 @@ msgstr ""
" -print-multi-lib ¥³¥Þ¥ó¥É¥é¥¤¥ó¥ª¥×¥·¥ç¥ó¤ÈÊ£¿ô¤Î¥é¥¤¥Ö¥é¥êõº÷\n"
" ¥Ç¥£¥ì¥¯¥È¥ê¤È¤ÎÂбþ¤òɽ¼¨\n"
-#: gcc.c:2902
+#: gcc.c:2992
#, fuzzy
msgid " -print-multi-os-directory Display the relative path to OS libraries\n"
msgstr " -print-multi-directory libgcc ¤Î¥Ð¡¼¥¸¥ç¥ó¥Ç¥£¥ì¥¯¥È¥ê¥ë¡¼¥È¤òɽ¼¨\n"
-#: gcc.c:2903
+#: gcc.c:2993
msgid " -Wa,<options> Pass comma-separated <options> on to the assembler\n"
msgstr " -Wa,<options> ¥«¥ó¥Þ¶èÀÚ¤ê¤Î <options> ¤ò¥¢¥»¥ó¥Ö¥é¤ËÅϤ¹\n"
-#: gcc.c:2904
+#: gcc.c:2994
msgid " -Wp,<options> Pass comma-separated <options> on to the preprocessor\n"
msgstr " -Wp,<options> ¥«¥ó¥Þ¶èÀÚ¤ê¤Î <options> ¤ò¥×¥ê¥×¥í¥»¥Ã¥µ¤ËÅϤ¹\n"
-#: gcc.c:2905
+#: gcc.c:2995
msgid " -Wl,<options> Pass comma-separated <options> on to the linker\n"
msgstr " -Wl,<options> ¥«¥ó¥Þ¶èÀÚ¤ê¤Î <options> ¤ò¥ê¥ó¥«¤ËÅϤ¹\n"
-#: gcc.c:2906
+#: gcc.c:2996
+#, fuzzy
+msgid " -Xassembler <arg> Pass <arg> on to the assembler\n"
+msgstr " -Xlinker <arg> <arg> ¤ò¥ê¥ó¥«¤ËÅϤ¹\n"
+
+#: gcc.c:2997
+#, fuzzy
+msgid " -Xpreprocessor <arg> Pass <arg> on to the preprocessor\n"
+msgstr " -Xlinker <arg> <arg> ¤ò¥ê¥ó¥«¤ËÅϤ¹\n"
+
+#: gcc.c:2998
msgid " -Xlinker <arg> Pass <arg> on to the linker\n"
msgstr " -Xlinker <arg> <arg> ¤ò¥ê¥ó¥«¤ËÅϤ¹\n"
-#: gcc.c:2907
+#: gcc.c:2999
msgid " -save-temps Do not delete intermediate files\n"
msgstr " -save-temps Ãæ´Ö¥Õ¥¡¥¤¥ë¤òºï½ü¤·¤Ê¤¤\n"
-#: gcc.c:2908
+#: gcc.c:3000
msgid " -pipe Use pipes rather than intermediate files\n"
msgstr " -pipe Ãæ´Ö¥Õ¥¡¥¤¥ë¤Ç¤Ï¤Ê¤¯¥Ñ¥¤¥×¤ò»È¤¦\n"
-#: gcc.c:2909
+#: gcc.c:3001
msgid " -time Time the execution of each subprocess\n"
msgstr " -time »Ò¥×¥í¥»¥¹¤´¤È¤Î¼Â¹Ô»þ´Ö¤ò·×¬¤¹¤ë\n"
-#: gcc.c:2910
+#: gcc.c:3002
#, fuzzy
msgid " -specs=<file> Override built-in specs with the contents of <file>\n"
msgstr " -specs=<file> ÁȤ߹þ¤ß specs ¤ò <file> ¤ÎÆâÍƤÇÃÖ¤­´¹¤¨¤ë\n"
-#: gcc.c:2911
+#: gcc.c:3003
msgid " -std=<standard> Assume that the input sources are for <standard>\n"
msgstr " -std=<standard> ÆþÎÏ¥½¡¼¥¹¤ò <standard> ¤È¸«¤Ê¤¹\n"
-#: gcc.c:2912
+#: gcc.c:3004
msgid " -B <directory> Add <directory> to the compiler's search paths\n"
msgstr " -B <directory> <directory> ¤ò¥³¥ó¥Ñ¥¤¥é¤Îõº÷¥Ñ¥¹¤ËÄɲ乤ë\n"
-#: gcc.c:2913
+#: gcc.c:3005
msgid " -b <machine> Run gcc for target <machine>, if installed\n"
msgstr ""
" -b <machine> ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ì¤Ð¥¿¡¼¥²¥Ã¥È <machine> ¤È¤·¤Æ\n"
" gcc ¤ò¼Â¹Ô¤¹¤ë\n"
-#: gcc.c:2914
+#: gcc.c:3006
msgid " -V <version> Run gcc version number <version>, if installed\n"
msgstr ""
" -V <version> ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ì¤Ð <version> ¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤Î\n"
" gcc ¤È¤·¤Æ¼Â¹Ô¤¹¤ë\n"
-#: gcc.c:2915
+#: gcc.c:3007
msgid " -v Display the programs invoked by the compiler\n"
msgstr " -v ¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤Æµ¯Æ°¤µ¤ì¤ë¥×¥í¥°¥é¥à¤òɽ¼¨\n"
-#: gcc.c:2916
+#: gcc.c:3008
msgid " -### Like -v but options quoted and commands not executed\n"
msgstr ""
-#: gcc.c:2917
+#: gcc.c:3009
msgid " -E Preprocess only; do not compile, assemble or link\n"
msgstr ""
" -E ¥×¥ê¥×¥í¥»¥¹¤Î¤ß -- ¥³¥ó¥Ñ¥¤¥ë¡¢¥¢¥»¥ó¥Ö¥ë¡¢¥ê¥ó¥¯\n"
" ¤ò¹Ô¤Ê¤ï¤Ê¤¤\n"
-#: gcc.c:2918
+#: gcc.c:3010
msgid " -S Compile only; do not assemble or link\n"
msgstr " -S ¥³¥ó¥Ñ¥¤¥ë¤Î¤ß -- ¥¢¥»¥ó¥Ö¥ë¡¢¥ê¥ó¥¯¤ò¹Ô¤Ê¤ï¤Ê¤¤\n"
-#: gcc.c:2919
+#: gcc.c:3011
msgid " -c Compile and assemble, but do not link\n"
msgstr " -c ¥³¥ó¥Ñ¥¤¥ë¡¢¥¢¥»¥ó¥Ö¥ë¤¹¤ë¤¬¡¢¥ê¥ó¥¯¤ò¹Ô¤Ê¤ï¤Ê¤¤\n"
-#: gcc.c:2920
+#: gcc.c:3012
msgid " -o <file> Place the output into <file>\n"
msgstr " -o <file> <file> ¤Ë½ÐÎϤò¹Ô¤Ê¤¦\n"
-#: gcc.c:2921
+#: gcc.c:3013
#, fuzzy
msgid ""
" -x <language> Specify the language of the following input files\n"
@@ -5616,7 +5470,7 @@ msgstr ""
" 'none' ¤ò»ØÄꤹ¤ë¤È¥Õ¥¡¥¤¥ë³ÈÄ¥»Ò¤Ë¤è¤Ã¤Æ¸À¸ì¤ò\n"
" ¿äÄꤹ¤ë¡¢¥Ç¥Õ¥©¥ë¥È¤Î¿¶¤ëÉñ¤¤¤ËÌá¤ë\n"
-#: gcc.c:2928
+#: gcc.c:3020
#, c-format
msgid ""
"\n"
@@ -5629,93 +5483,95 @@ msgstr ""
"»Ò¥×¥í¥»¥¹¤Ë¼«Æ°Åª¤ËÅϤµ¤ì¤Þ¤¹¡£¤³¤¦¤¤¤Ã¤¿¥×¥í¥»¥¹¤Ë¤½¤Î¾¤Î¥ª¥×¥·¥ç¥ó¤òÅϤ¹\n"
"¤Ë¤Ï -W<letter> ¥ª¥×¥·¥ç¥ó¤ò»È¤ï¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£\n"
-#: gcc.c:3063
+#: gcc.c:3141
#, fuzzy, c-format
msgid "`-%c' option must have argument"
msgstr "-param ¥ª¥×¥·¥ç¥ó¤Ë°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: gcc.c:3085
+#: gcc.c:3163
#, c-format
msgid "couldn't run `%s': %s"
msgstr ""
#. translate_options () has turned --version into -fversion.
-#: gcc.c:3262
+#: gcc.c:3349
#, c-format
msgid "%s (GCC) %s\n"
msgstr ""
-#: gcc.c:3263
-msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
-msgstr ""
-
-#: gcc.c:3265 gcov.c:364
+#: gcc.c:3352
msgid ""
"This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
"\n"
msgstr ""
-#: gcc.c:3366
+#: gcc.c:3453
msgid "argument to `-Xlinker' is missing"
msgstr "`-Xlinker' ¤Î°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: gcc.c:3374
+#: gcc.c:3461
+#, fuzzy
+msgid "argument to `-Xpreprocessor' is missing"
+msgstr "`-specs' ¤Î°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
+
+#: gcc.c:3468
+#, fuzzy
+msgid "argument to `-Xassembler' is missing"
+msgstr "`-Xlinker' ¤Î°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
+
+#: gcc.c:3475
#, fuzzy
msgid "argument to `-l' is missing"
msgstr "`-x' ¤Î°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: gcc.c:3391
+#: gcc.c:3491
msgid "argument to `-specs' is missing"
msgstr "`-specs' ¤Î°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: gcc.c:3406
+#: gcc.c:3505
msgid "argument to `-specs=' is missing"
msgstr "`-specs=' ¤Î°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: gcc.c:3436
+#: gcc.c:3542
#, c-format
msgid "`-%c' must come at the start of the command line"
msgstr ""
-#: gcc.c:3445
+#: gcc.c:3551
msgid "argument to `-B' is missing"
msgstr "`-B' ¤Î°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: gcc.c:3618
-msgid "cannot specify -o with -c or -S and multiple compilations"
-msgstr "-c ¤ä -S ¤È°ì½ï¤Ë -o ¤ò»ØÄꤹ¤ë¤È¡¢Ê£¿ô¥³¥ó¥Ñ¥¤¥ë¤Ç¤­¤Þ¤»¤ó"
-
-#: gcc.c:3791
+#: gcc.c:3728
#, fuzzy
msgid "warning: -pipe ignored because -save-temps specified"
msgstr "·Ù¹ð: -save-temps ¤¬»ØÄꤵ¤ì¤¿¤Î¤Ç -pipe ¤Ï̵»ë¤µ¤ì¤Þ¤¹"
-#: gcc.c:3795
+#: gcc.c:3732
#, fuzzy
msgid "warning: -pipe ignored because -time specified"
msgstr "·Ù¹ð: -time ¤¬»ØÄꤵ¤ì¤¿¤Î¤Ç -pipe ¤Ï̵»ë¤µ¤ì¤Þ¤¹"
-#: gcc.c:3807
+#: gcc.c:3944
msgid "argument to `-x' is missing"
msgstr "`-x' ¤Î°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: gcc.c:3835
+#: gcc.c:3972
#, c-format
msgid "argument to `-%s' is missing"
msgstr "`-%s' ¤Î°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: gcc.c:3896
+#: gcc.c:4033
#, fuzzy, c-format
msgid "warning: `-x %s' after last input file has no effect"
msgstr "·Ù¹ð: ºÇ¸å¤ÎÆþÎÏ¥Õ¥¡¥¤¥ë¤Î¸å¤Î `-x %s' ¤Ï²¿¤â¤·¤Þ¤»¤ó"
-#: gcc.c:4241
+#: gcc.c:4434
#, fuzzy
msgid "invalid specification! Bug in cc"
msgstr "̵¸ú¤Ê»ØÄê! cc ¤Î¥Ð¥°."
-#: gcc.c:4395
+#: gcc.c:4588
#, c-format
msgid "%s\n"
msgstr "%s\n"
@@ -5723,76 +5579,81 @@ msgstr "%s\n"
#. Catch the case where a spec string contains something like
#. '%{foo:%*}'. ie there is no * in the pattern on the left
#. hand side of the :.
-#: gcc.c:4955
+#: gcc.c:5092
#, fuzzy, c-format
msgid "spec failure: '%%*' has not been initialized by pattern match"
msgstr "spec ¥¨¥é¡¼: '%%*' ¤Ï¥Ñ¥¿¡¼¥ó¥Þ¥Ã¥Á¤Ç½é´ü²½¤µ¤ì¤Ê¤¤¤Þ¤Þ¤Ç¤¹"
-#: gcc.c:4964
+#: gcc.c:5101
#, fuzzy, c-format
msgid "warning: use of obsolete %%[ operator in specs"
msgstr "·Ù¹ð: µì¼°¤Î %%[ ±é»»»Ò¤¬ spec ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤¹"
-#: gcc.c:4982
+#: gcc.c:5119
#, c-format
msgid "Processing spec %c%s%c, which is '%s'\n"
msgstr "spec %c%s%c ¤ò½èÍýÃæ, ¤³¤ì¤Ï '%s' ¤Ç¤¹\n"
-#: gcc.c:5107
+#: gcc.c:5182
#, fuzzy, c-format
msgid "spec failure: unrecognized spec option '%c'"
msgstr "spec ¥¨¥é¡¼: ǧ¼±ÉÔǽ¤Ê spec ¥ª¥×¥·¥ç¥ó '%c'"
-#: gcc.c:5188
+#: gcc.c:5261
#, fuzzy, c-format
msgid "unknown spec function `%s'"
msgstr "´Ø¿ô `%s' Æâ:"
-#: gcc.c:5207
+#: gcc.c:5280
#, fuzzy, c-format
msgid "error in args to spec function `%s'"
msgstr "´Ø¿ô `%s' ¤ËÂФ¹¤ë°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹"
-#: gcc.c:5256
+#: gcc.c:5328
#, fuzzy
msgid "malformed spec function name"
msgstr "¥­¥ã¥¹¥È¤Ï´Ø¿ô·¿¤ò»ØÄꤷ¤Æ¤¤¤Þ¤¹"
#. )
-#: gcc.c:5259
+#: gcc.c:5331
#, fuzzy
msgid "no arguments for spec function"
msgstr "´Ø¿ô¤Ø¤Î°ú¿ô¤¬¾¯¤Ê¤¹¤®¤Þ¤¹"
-#: gcc.c:5278
+#: gcc.c:5350
msgid "malformed spec function arguments"
msgstr ""
-#: gcc.c:5386
-msgid "mismatched braces in specs"
+#: gcc.c:6076
+msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC."
+msgstr ""
+
+#: gcc.c:6086
+msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC."
msgstr ""
-#: gcc.c:6081
+#: gcc.c:6179
#, c-format
msgid "unrecognized option `-%s'"
msgstr "ǧ¼±ÉÔǽ¤Ê¥ª¥×¥·¥ç¥ó `-%s'"
-#: gcc.c:6087
+#: gcc.c:6185
#, c-format
msgid "install: %s%s\n"
msgstr "¥¤¥ó¥¹¥È¡¼¥ë: %s%s\n"
-#: gcc.c:6088
+#: gcc.c:6186
#, c-format
msgid "programs: %s\n"
msgstr "¥×¥í¥°¥é¥à: %s\n"
-#: gcc.c:6089
+#: gcc.c:6187
#, c-format
msgid "libraries: %s\n"
msgstr "¥é¥¤¥Ö¥é¥ê: %s\n"
-#: gcc.c:6146
+#: gcc.c:6244
+#, c-format
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
@@ -5800,114 +5661,127 @@ msgstr ""
"\n"
"¥Ð¥°¥ì¥Ý¡¼¥È¤Î¼ê½ç¤Ï¡¢°Ê²¼¤ò»²¾È\n"
-#: gcc.c:6162
+#: gcc.c:6260
#, c-format
msgid "Configured with: %s\n"
msgstr "¥³¥ó¥Õ¥£¥°¥ª¥×¥·¥ç¥ó: %s\n"
-#: gcc.c:6176
+#: gcc.c:6274
#, c-format
msgid "Thread model: %s\n"
msgstr "¥¹¥ì¥Ã¥É¥â¥Ç¥ë: %s\n"
-#: gcc.c:6187
+#: gcc.c:6285
#, c-format
msgid "gcc version %s\n"
msgstr "gcc ¥Ð¡¼¥¸¥ç¥ó %s\n"
-#: gcc.c:6189
+#: gcc.c:6287
#, c-format
msgid "gcc driver version %s executing gcc version %s\n"
msgstr "gcc ¥É¥é¥¤¥Ð¥Ð¡¼¥¸¥ç¥ó %s ¼Â¹Ô gcc ¥Ð¡¼¥¸¥ç¥ó %s\n"
-#: gcc.c:6197
+#: gcc.c:6295
#, fuzzy
msgid "no input files"
msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë¤¬¤¢¤ê¤Þ¤»¤ó"
-#: gcc.c:6235
-#, c-format
-msgid "%s: %s compiler not installed on this system"
-msgstr "%s: %s ¥³¥ó¥Ñ¥¤¥é¤Ï¤³¤Î¥·¥¹¥Æ¥à¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-
-#: gcc.c:6310
+#: gcc.c:6317 gcc.c:6436
#, c-format
msgid "%s: linker input file unused because linking not done"
msgstr "%s: ¥ê¥ó¥¯¤¬´°Î»¤·¤Ê¤«¤Ã¤¿¤Î¤Ç¥ê¥ó¥«¤ÎÆþÎÏ¥Õ¥¡¥¤¥ë¤Ï»È¤ï¤ì¤Þ¤»¤ó¤Ç¤·¤¿"
-#: gcc.c:6353
+#: gcc.c:6320
+#, fuzzy
+msgid "cannot specify -o with -c or -S and multiple languages"
+msgstr "-c ¤ä -S ¤È°ì½ï¤Ë -o ¤ò»ØÄꤹ¤ë¤È¡¢Ê£¿ô¥³¥ó¥Ñ¥¤¥ë¤Ç¤­¤Þ¤»¤ó"
+
+#: gcc.c:6355
+#, c-format
+msgid "%s: %s compiler not installed on this system"
+msgstr "%s: %s ¥³¥ó¥Ñ¥¤¥é¤Ï¤³¤Î¥·¥¹¥Æ¥à¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+
+#: gcc.c:6476
#, c-format
msgid "language %s not recognized"
msgstr "¸À¸ì %s ¤Ïǧ¼±¤Ç¤­¤Þ¤»¤ó"
-#: gcc.c:6456
+#: gcc.c:6573
#, fuzzy
msgid "internal gcc abort"
msgstr "ÆâÉô gcc ÃæÃÇ"
-#: gcov.c:325
+#: gcov.c:384
msgid "Internal gcov abort.\n"
msgstr "ÆâÉô gcc abort.\n"
-#: gcov.c:338
+#: gcov.c:397
msgid ""
"Usage: gcov [OPTION]... SOURCEFILE\n"
"\n"
msgstr ""
-#: gcov.c:339
+#: gcov.c:398
#, fuzzy
msgid ""
"Print code coverage information.\n"
"\n"
msgstr "¸Æ¤Ó½Ð¤·¥°¥é¥Õ¾ðÊó¤òÁ÷½Ð¤¹¤ë"
-#: gcov.c:340
+#: gcov.c:399
#, fuzzy
msgid " -h, --help Print this help, then exit\n"
msgstr " --help ¤³¤Î¥Ø¥ë¥×¾ðÊó¤òɽ¼¨\n"
-#: gcov.c:341
+#: gcov.c:400
#, fuzzy
msgid " -v, --version Print version number, then exit\n"
msgstr ""
" -V <version> ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ì¤Ð <version> ¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤Î\n"
" gcc ¤È¤·¤Æ¼Â¹Ô¤¹¤ë\n"
-#: gcov.c:342
+#: gcov.c:401
+msgid " -a, --all-blocks Show information for every basic block\n"
+msgstr ""
+
+#: gcov.c:402
msgid " -b, --branch-probabilities Include branch probabilities in output\n"
msgstr ""
-#: gcov.c:343
+#: gcov.c:403
msgid ""
" -c, --branch-counts Given counts of branches taken\n"
" rather than percentages\n"
msgstr ""
-#: gcov.c:345
+#: gcov.c:405
#, fuzzy
msgid " -n, --no-output Do not create an output file\n"
msgstr " -save-temps Ãæ´Ö¥Õ¥¡¥¤¥ë¤òºï½ü¤·¤Ê¤¤\n"
-#: gcov.c:346
+#: gcov.c:406
msgid ""
" -l, --long-file-names Use long output file names for included\n"
" source files\n"
msgstr ""
-#: gcov.c:348
+#: gcov.c:408
msgid " -f, --function-summaries Output summaries for each function\n"
msgstr ""
-#: gcov.c:349
+#: gcov.c:409
msgid " -o, --object-directory DIR|FILE Search for object files in DIR or called FILE\n"
msgstr ""
-#: gcov.c:350
+#: gcov.c:410
msgid " -p, --preserve-paths Preserve all pathname components\n"
msgstr ""
-#: gcov.c:351
+#: gcov.c:411
+msgid " -u, --unconditional-branches Show unconditional branch counts too\n"
+msgstr ""
+
+#: gcov.c:412
#, fuzzy, c-format
msgid ""
"\n"
@@ -5917,403 +5791,288 @@ msgstr ""
"\n"
"¥Ð¥°¥ì¥Ý¡¼¥È¤Î¼ê½ç¤Ï¡¢°Ê²¼¤ò»²¾È\n"
-#: gcov.c:361
+#: gcov.c:422
#, c-format
msgid "gcov (GCC) %s\n"
msgstr ""
-#: gcov.c:362
-msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
+#: gcov.c:423
+msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
msgstr ""
-#: gcov.c:500
-#, c-format
-msgid "Could not open basic block file %s.\n"
-msgstr "´ðËÜ¥Ö¥í¥Ã¥¯¥Õ¥¡¥¤¥ë %s ¤ò³«¤±¤Þ¤»¤ó¤Ç¤·¤¿¡£\n"
-
-#: gcov.c:507
-#, c-format
-msgid "Could not open program flow graph file %s.\n"
-msgstr "¥×¥í¥°¥é¥à¥Õ¥í¡¼¥Õ¥¡¥¤¥ë %s ¤ò³«¤±¤Þ¤»¤ó¤Ç¤·¤¿¡£\n"
-
-#: gcov.c:524
-#, c-format
-msgid "Could not open data file %s.\n"
-msgstr "¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë %s ¤ò³«¤¯¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿¡£\n"
-
-#: gcov.c:525
-msgid "Assuming that all execution counts are zero.\n"
-msgstr "Á´¼Â¹Ô¿ô¤¬¥¼¥í¤Ç¤¢¤ë¤È²¾Äꤷ¤Þ¤¹¡£\n"
-
-#: gcov.c:534
-#, c-format
-msgid "No executable code associated with file %s.\n"
-msgstr "¥Õ¥¡¥¤¥ë %s ¤Ë·ë¤ÓÉÕ¤¯¼Â¹Ô¥³¡¼¥É¤¬¤¢¤ê¤Þ¤»¤ó¡£\n"
-
-#: gcov.c:1186
-#, fuzzy, c-format
-msgid "%s of %d lines executed in %s %s\n"
-msgstr "%6.2f%%(%d ¹ÔÃæ) ¤Î¥½¡¼¥¹¹Ô¤¬¥Õ¥¡¥¤¥ë %s ¤Ç¼Â¹Ô¤µ¤ì¤Þ¤·¤¿\n"
-
-#: gcov.c:1191
-#, fuzzy, c-format
-msgid "No executable lines in %s %s\n"
-msgstr "¥Õ¥¡¥¤¥ë %s ¤Ë¼Â¹Ô²Äǽ¤Ê¥½¡¼¥¹¹Ô¤¬¤¢¤ê¤Þ¤»¤ó\n"
-
-#: gcov.c:1198
-#, fuzzy, c-format
-msgid "%s of %d branches executed in %s %s\n"
-msgstr "%6.2f%%(%d ËÜÃæ) ¤Î¥Ö¥é¥ó¥Á¤¬¥Õ¥¡¥¤¥ë %s ¤Ç¼Â¹Ô¤µ¤ì¤Þ¤·¤¿\n"
-
-#: gcov.c:1203
-#, fuzzy, c-format
-msgid "%s of %d branches taken at least once in %s %s\n"
-msgstr "%6.2f%%(%d ËÜÃæ) ¤Î¥Ö¥é¥ó¥Á¤¬¾¯¤Ê¤¯¤È¤â°ì²ó¤Ï¥Õ¥¡¥¤¥ë %s ¤Ç¼õ¼è¤é¤ì¤Þ¤·¤¿\n"
-
-#: gcov.c:1209
-#, fuzzy, c-format
-msgid "No branches in %s %s\n"
-msgstr "¥Õ¥¡¥¤¥ë %s ¤Ë¤Ï¥Ö¥é¥ó¥Á¤¬¤¢¤ê¤Þ¤»¤ó\n"
-
-#: gcov.c:1211
-#, fuzzy, c-format
-msgid "%s of %d calls executed in %s %s\n"
-msgstr "%6.2f%%(%d ²óÃæ) ¤Î¸Æ¤Ó½Ð¤·¤¬¥Õ¥¡¥¤¥ë %s Æâ¤Ç¼Â¹Ô¤µ¤ì¤Þ¤·¤¿\n"
-
-#: gcov.c:1216
-#, fuzzy, c-format
-msgid "No calls in %s %s\n"
-msgstr "¥Õ¥¡¥¤¥ë %s ¤Ë¸Æ¤Ó½Ð¤·¤¬¤¢¤ê¤Þ¤»¤ó\n"
-
-#: gcov.c:1351
-#, c-format
-msgid "didn't use all bb entries of graph, function %s\n"
-msgstr "¥°¥é¥Õ¤Î bb ¥¨¥ó¥È¥ê¤Î°ìÉô¤·¤«»È¤¤¤Þ¤»¤ó¤Ç¤·¤¿¡¢´Ø¿ô %s\n"
-
-#: gcov.c:1353
-#, c-format
-msgid "block_num = %ld, num_blocks = %d\n"
-msgstr "¥Ö¥í¥Ã¥¯¿ô = %ld¡¢ÈÖ¹æ¥Ö¥í¥Ã¥¯ = %d\n"
-
-#: gcov.c:1367
-#, fuzzy, c-format
-msgid "ERROR: unexpected line number %ld\n"
-msgstr "¹ÔÈÖ¹æ %u ¤ËÌá¤ë¤Ï¤º¤Ç¤·¤¿"
-
-#: gcov.c:1383
-#, fuzzy, c-format
-msgid "ERROR: too many basic blocks in function %s\n"
-msgstr "¥¨¥é¡¼: .bb ¥Õ¥¡¥¤¥ë %s ¤Ë´ðËÜ¥Ö¥í¥Ã¥¯¤¬Â¿¤¹¤®¤Þ¤¹\n"
-
-#: gcov.c:1398
-#, fuzzy, c-format
-msgid "ERROR: out of range line number in function %s\n"
-msgstr "´Ø¿ô %s ¤Ë¼Â¹Ô²Äǽ¤Ê¥½¡¼¥¹¹Ô¤¬¤¢¤ê¤Þ¤»¤ó\n"
-
-#: gcov.c:1470
-#, c-format
-msgid "Could not open source file %s.\n"
-msgstr "¥½¡¼¥¹¥Õ¥¡¥¤¥ë %s ¤ò³«¤±¤Þ¤»¤ó¤Ç¤·¤¿.\n"
+#: gcov.c:425
+msgid ""
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or \n"
+"FITNESS FOR A PARTICULAR PURPOSE.\n"
+"\n"
+msgstr ""
-#: gcov.c:1480
+#: gcov.c:515
#, fuzzy, c-format
-msgid "Warning: source file %s is newer than %s\n"
-msgstr "¸½ºß¤Î¥Õ¥¡¥¤¥ë¤Ï %s ¤è¤ê¸Å¤¤¤Ç¤¹"
+msgid "%s:no functions found\n"
+msgstr "cmd_strings ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: gcov.c:1510
-#, c-format
-msgid "Unexpected EOF while reading source file %s.\n"
-msgstr "¥½¡¼¥¹¥Õ¥¡¥¤¥ë %s ¤òÆɤ߹þ¤ßÃæ¤Ëͽ´ü¤»¤Ì EOF.\n"
+#: gcov.c:536 gcov.c:564
+#, fuzzy
+msgid "\n"
+msgstr ":\n"
-#: gcov.c:1532
+#: gcov.c:551
#, fuzzy, c-format
-msgid "call %2d never executed\n"
-msgstr "¸Æ¤Ó½Ð¤· %d ¤Ï°ìÅÙ¤â¼Â¹Ô¤»¤º\n"
+msgid "%s:creating `%s'\n"
+msgstr "%s ¤òºîÀ®Ãæ.\n"
-#: gcov.c:1535
+#: gcov.c:555
#, fuzzy, c-format
-msgid "call %2d returns %s\n"
-msgstr "¸Æ¤Ó½Ð¤· %d ¤ÎÌá¤ê = %d\n"
+msgid "%s:error writing output file `%s'\n"
+msgstr "%s: ¥Õ¥¡¥¤¥ë `%s' ¤Ë½ñ¤­¹þ¤ßÃæ¤Ë¥¨¥é¡¼: %s\n"
-#: gcov.c:1543
+#: gcov.c:560
#, fuzzy, c-format
-msgid "branch %2d never executed\n"
-msgstr "¥Ö¥é¥ó¥Á %d ¤Ï°ìÅÙ¤â¼Â¹Ô¤µ¤ì¤º\n"
+msgid "%s:could not open output file `%s'\n"
+msgstr "½ÐÎÏ¥Õ¥¡¥¤¥ë %s ¤ò³«¤±¤Þ¤»¤ó¤Ç¤·¤¿.\n"
-#: gcov.c:1546
+#: gcov.c:711
#, fuzzy, c-format
-msgid "branch %2d taken %s\n"
-msgstr "¥Ö¥é¥ó¥Á %d ¼õÍý = %d\n"
-
-#: gcov.c:1610
-#, c-format
-msgid "Creating %s.\n"
-msgstr "%s ¤òºîÀ®Ãæ.\n"
+msgid "%s:cannot open graph file\n"
+msgstr "%s: COFF ¥Õ¥¡¥¤¥ë¤È¤·¤Æ³«¤±¤Þ¤»¤ó"
-#: gcov.c:1613
+#: gcov.c:717
#, fuzzy, c-format
-msgid "Error writing output file %s.\n"
-msgstr "%s ¤Ø¤Î½ñ¤­¹þ¤ß¥¨¥é¡¼¤Ç¤¹"
-
-#: gcov.c:1618
-#, c-format
-msgid "Could not open output file %s.\n"
-msgstr "½ÐÎÏ¥Õ¥¡¥¤¥ë %s ¤ò³«¤±¤Þ¤»¤ó¤Ç¤·¤¿.\n"
-
-#: gcse.c:763
-#, c-format
-msgid "GCSE disabled: %d > 1000 basic blocks and %d >= 20 edges/basic block"
-msgstr "GCSE ¤ò̵¸ú²½: %d > 1000 ´ðËÜ¥Ö¥í¥Ã¥¯¡¢µÚ¤Ó %d >= 20 edge/´ðËÜ¥Ö¥í¥Ã¥¯"
+msgid "%s:not a gcov graph file\n"
+msgstr "%s: COFF ¥Õ¥¡¥¤¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: gcse.c:775
+#: gcov.c:730
#, c-format
-msgid "GCSE disabled: %d basic blocks and %d registers"
-msgstr "GCSE ¤ò̵¸ú²½: %d ´ðËÜ¥Ö¥í¥Ã¥¯¡¢µÚ¤Ó %d ¸Ä¤Î¥ì¥¸¥¹¥¿"
+msgid "%s:version `%.4s', prefer `%.4s'\n"
+msgstr ""
-#: genautomata.c:1490
+#: gcov.c:782
#, c-format
-msgid "Name `%s' contains quotes"
+msgid "%s:already seen blocks for `%s'\n"
msgstr ""
-#: genautomata.c:1621
-#, fuzzy, c-format
-msgid "invalid string `%s' in define_cpu_unit"
-msgstr "̵¸ú¤Ê¶çÆÉÅÀ `%c' ¤¬À©ÌóÆâ¤Ë¤¢¤ê¤Þ¤¹"
-
-#: genautomata.c:1650
+#: gcov.c:903 gcov.c:1062
#, c-format
-msgid "invalid string `%s' in define_query_cpu_unit"
+msgid "%s:corrupted\n"
msgstr ""
-#: genautomata.c:1682 genautomata.c:1685
+#: gcov.c:976
#, fuzzy, c-format
-msgid "invalid string `%s' in define_bypass"
-msgstr "̤ÄêµÁ¤Î·¿ `%s %s' ¤Î»ÈÍѤÏÉÔŬÀڤǤ¹"
-
-#: genautomata.c:1720
-#, fuzzy, c-format
-msgid "invalid first string `%s' in exclusion_set"
-msgstr "̵¸ú¤Ê¶çÆÉÅÀ `%c' ¤¬À©ÌóÆâ¤Ë¤¢¤ê¤Þ¤¹"
+msgid "%s:cannot open data file\n"
+msgstr "%s: COFF ¥Õ¥¡¥¤¥ë¤È¤·¤Æ³«¤±¤Þ¤»¤ó"
-#: genautomata.c:1724
+#: gcov.c:981
#, fuzzy, c-format
-msgid "invalid second string `%s' in exclusion_set"
-msgstr "̵¸ú¤Ê¶çÆÉÅÀ `%c' ¤¬À©ÌóÆâ¤Ë¤¢¤ê¤Þ¤¹"
+msgid "%s:not a gcov data file\n"
+msgstr "%s: COFF ¥Õ¥¡¥¤¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: genautomata.c:1760
+#: gcov.c:994
#, c-format
-msgid "invalid first string `%s' in presence_set"
+msgid "%s:version `%.4s', prefer version `%.4s'\n"
msgstr ""
-#: genautomata.c:1764
+#: gcov.c:1000
#, c-format
-msgid "invalid second string `%s' in presence_set"
+msgid "%s:stamp mismatch with graph file\n"
msgstr ""
-#: genautomata.c:1800
-#, c-format
-msgid "invalid first string `%s' in absence_set"
-msgstr ""
+#: gcov.c:1026
+#, fuzzy, c-format
+msgid "%s:unknown function `%u'\n"
+msgstr "´Ø¿ô `%s' Æâ:"
-#: genautomata.c:1804
+#: gcov.c:1039
#, c-format
-msgid "invalid second string `%s' in absence_set"
+msgid "%s:profile mismatch for `%s'\n"
msgstr ""
-#: genautomata.c:1837
+#: gcov.c:1062
#, fuzzy, c-format
-msgid "invalid string `%s' in define_automaton"
-msgstr "dump_definition ¤Ë ̵¸ú¤Ê¥Ï¥Ã¥·¥å¥¿¥¤¥× %d"
+msgid "%s:overflowed\n"
+msgstr "%s: ¥ª¡¼¥Ð¡¼¥Õ¥í¡¼ÈÏ°Ï¥¨¥é¡¼"
-#: genautomata.c:1868
-#, fuzzy, c-format
-msgid "invalid option `%s' in automata_option"
-msgstr "̵¸ú¤Ê¶çÆÉÅÀ `%c' ¤¬À©ÌóÆâ¤Ë¤¢¤ê¤Þ¤¹"
-
-#: genautomata.c:1890
+#: gcov.c:1085
#, c-format
-msgid "garbage after ) in reservation `%s'"
+msgid "%s:`%s' lacks entry and/or exit blocks\n"
msgstr ""
-#: genautomata.c:1921 genautomata.c:1954 genautomata.c:1981
-#, fuzzy, c-format
-msgid "invalid `%s' in reservation `%s'"
-msgstr "`%s' ¤ËÂФ¹¤ë¥ì¥¸¥¹¥¿Ì¾¤È¤·¤Æ̵¸ú¤Ç¤¹"
-
-#: genautomata.c:1932
+#: gcov.c:1090
#, c-format
-msgid "repetition `%s' <= 1 in reservation `%s'"
+msgid "%s:`%s' has arcs to entry block\n"
msgstr ""
-#: genautomata.c:2425
+#: gcov.c:1098
#, c-format
-msgid "unit `%s' in exclusion is not declared"
+msgid "%s:`%s' has arcs from exit block\n"
msgstr ""
-#: genautomata.c:2427
+#: gcov.c:1306
#, c-format
-msgid "`%s' in exclusion is not unit"
+msgid "%s:graph is unsolvable for `%s'\n"
msgstr ""
-#: genautomata.c:2465
+#: gcov.c:1386
#, fuzzy, c-format
-msgid "unit `%s' excludes itself"
-msgstr "`%s' ¤ÎÉý¤Ï¤½¤Î·¿¤Î¥µ¥¤¥º¤òĶ¤¨¤Æ¤¤¤Þ¤¹"
-
-#: genautomata.c:2473
-#, c-format
-msgid "units `%s' and `%s' in exclusion set belong to different automata"
-msgstr ""
+msgid "%s `%s'\n"
+msgstr "%s Æâ¤Î `%s':"
-#: genautomata.c:2603 genautomata.c:2609
+#: gcov.c:1389
#, c-format
-msgid "unit `%s' excludes and requires presence of `%s'"
+msgid "Lines executed:%s of %d\n"
msgstr ""
-#: genautomata.c:2623 genautomata.c:2629
-#, c-format
-msgid "unit `%s' requires absence and presence of `%s'"
-msgstr ""
+#: gcov.c:1393
+#, fuzzy
+msgid "No executable lines"
+msgstr "¥Õ¥¡¥¤¥ë %s ¤Ë¼Â¹Ô²Äǽ¤Ê¥½¡¼¥¹¹Ô¤¬¤¢¤ê¤Þ¤»¤ó\n"
-#: genautomata.c:2692 genautomata.c:2695
+#: gcov.c:1399
#, fuzzy, c-format
-msgid "repeated declaration of automaton `%s'"
-msgstr "´Ø¿ô `%s' ¤Î°ÅÌÛ¤ÎÀë¸À"
+msgid "Branches executed:%s of %d\n"
+msgstr "¥Ö¥é¥ó¥Á %d ¤Ï°ìÅÙ¤â¼Â¹Ô¤µ¤ì¤º\n"
-#: genautomata.c:2711
+#: gcov.c:1403
#, c-format
-msgid "define_insn_reservation `%s' has negative latency time"
+msgid "Taken at least once:%s of %d\n"
msgstr ""
-#: genautomata.c:2717
-#, c-format
-msgid "`%s' is already used as insn reservation name"
-msgstr ""
+#: gcov.c:1409
+#, fuzzy
+msgid "No branches\n"
+msgstr "¥Õ¥¡¥¤¥ë %s ¤Ë¤Ï¥Ö¥é¥ó¥Á¤¬¤¢¤ê¤Þ¤»¤ó\n"
-#: genautomata.c:2723
+#: gcov.c:1411
#, c-format
-msgid "define_bypass `%s - %s' has negative latency time"
+msgid "Calls executed:%s of %d\n"
msgstr ""
-#: genautomata.c:2737
-#, fuzzy, c-format
-msgid "automaton `%s' is not declared"
-msgstr "²¾°ú¿ô `%s' ¤Î·¿¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+#: gcov.c:1415
+#, fuzzy
+msgid "No calls\n"
+msgstr "¥Õ¥¡¥¤¥ë %s ¤Ë¸Æ¤Ó½Ð¤·¤¬¤¢¤ê¤Þ¤»¤ó\n"
-#: genautomata.c:2747
-#, c-format
-msgid "define_unit `%s' without automaton when one defined"
-msgstr ""
+#: gcov.c:1556
+#, fuzzy, c-format
+msgid "%s:no lines for `%s'\n"
+msgstr "%s ¤¬ `%s' ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
-#: genautomata.c:2753
+#: gcov.c:1751
#, fuzzy, c-format
-msgid "`%s' is declared as cpu unit"
-msgstr "Îΰè `%s' ¤Ï´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
+msgid "call %2d returned %s\n"
+msgstr "¸Æ¤Ó½Ð¤· %d ¤ÎÌá¤ê = %d\n"
-#: genautomata.c:2762
+#: gcov.c:1756
#, fuzzy, c-format
-msgid "`%s' is declared as cpu reservation"
-msgstr "`%s' ¤Ï´Ø¿ô¤òÊÖ¤¹´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
+msgid "call %2d never executed\n"
+msgstr "¸Æ¤Ó½Ð¤· %d ¤Ï°ìÅÙ¤â¼Â¹Ô¤»¤º\n"
-#: genautomata.c:2772
+#: gcov.c:1761
#, fuzzy, c-format
-msgid "repeated declaration of unit `%s'"
-msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
+msgid "branch %2d taken %s%s\n"
+msgstr "¥Ö¥é¥ó¥Á %d ¼õÍý = %d%%\n"
-#: genautomata.c:2775
+#: gcov.c:1765
#, fuzzy, c-format
-msgid "repeated declaration of reservation `%s'"
-msgstr "´Ø¿ô `%s' ¤Î°ÅÌÛ¤ÎÀë¸À"
+msgid "branch %2d never executed\n"
+msgstr "¥Ö¥é¥ó¥Á %d ¤Ï°ìÅÙ¤â¼Â¹Ô¤µ¤ì¤º\n"
-#: genautomata.c:2790 genautomata.c:2793
+#: gcov.c:1770
#, c-format
-msgid "there is no insn reservation `%s'"
+msgid "unconditional %2d taken %s\n"
msgstr ""
-#: genautomata.c:2810 genautomata.c:2815
-#, c-format
-msgid "the same bypass `%s - %s' is already defined"
-msgstr ""
+#: gcov.c:1773
+#, fuzzy, c-format
+msgid "unconditional %2d never executed\n"
+msgstr "¸Æ¤Ó½Ð¤· %d ¤Ï°ìÅÙ¤â¼Â¹Ô¤»¤º\n"
-#: genautomata.c:2820
+#: gcov.c:1805
#, fuzzy, c-format
-msgid "bypass `%s - %s' is already defined"
-msgstr "¥¯¥é¥¹ `%s' ¤Ï´û¤Ë¸ºß¤·¤Þ¤¹"
+msgid "%s:cannot open source file\n"
+msgstr "%s: COFF ¥Õ¥¡¥¤¥ë¤È¤·¤Æ³«¤±¤Þ¤»¤ó"
-#: genautomata.c:2925 genautomata.c:2927
-#, c-format
-msgid "automaton `%s' is not used"
+#: gcov.c:1815
+#, fuzzy, c-format
+msgid "%s:source file is newer than graph file `%s'\n"
+msgstr "%s: `%s' ¤òÊÑ´¹¤·¤Þ¤¹\n"
+
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:747
+msgid "GCSE disabled"
msgstr ""
-#: genautomata.c:2950
-#, c-format
-msgid "undeclared unit or reservation `%s'"
+#: gcse.c:6108
+msgid "NULL pointer checks disabled"
msgstr ""
-#: genautomata.c:3028 genautomata.c:3030
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:7994
+#, fuzzy
+msgid "jump bypassing disabled"
+msgstr "-g ¥ª¥×¥·¥ç¥ó¤ò̵¸ú²½¤·¤Þ¤·¤¿¡£"
+
+#: gcse.c:8055
#, fuzzy, c-format
-msgid "unit `%s' is not used"
-msgstr "`%s' ¤¬ÄêµÁ¤µ¤ì¤Þ¤·¤¿¤¬»È¤ï¤ì¤Þ¤»¤ó¤Ç¤·¤¿"
+msgid "%s: %d basic blocks and %d edges/basic block"
+msgstr "GCSE ¤ò̵¸ú²½: %d > 1000 ´ðËÜ¥Ö¥í¥Ã¥¯¡¢µÚ¤Ó %d >= 20 edge/´ðËÜ¥Ö¥í¥Ã¥¯"
-#: genautomata.c:3035 genautomata.c:3037
+#: gcse.c:8068
#, fuzzy, c-format
-msgid "reservation `%s' is not used"
-msgstr "`%s' ¤ÎÌá¤êÃͤη¿¤¬ `int' ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+msgid "%s: %d basic blocks and %d registers"
+msgstr "GCSE ¤ò̵¸ú²½: %d ´ðËÜ¥Ö¥í¥Ã¥¯¡¢µÚ¤Ó %d ¸Ä¤Î¥ì¥¸¥¹¥¿"
-#: genautomata.c:3134
+#: ggc-common.c:398 ggc-common.c:406 ggc-common.c:487 ggc-common.c:507
+#: ggc-page.c:2030 ggc-page.c:2062 ggc-page.c:2069 ggc-zone.c:1361
+#: ggc-zone.c:1367 ggc-zone.c:1372 ggc-zone.c:1379
#, fuzzy, c-format
-msgid "cycle in definition of reservation `%s'"
-msgstr "`%s %s' ¤ÎºÆÄêµÁ"
+msgid "can't write PCH file: %m"
+msgstr "%s ¤Ø½ñ¤­¹þ¤á¤Þ¤»¤ó"
-#: genautomata.c:5333
-#, c-format
-msgid "Units `%s' and `%s' should be in the same automaton"
-msgstr ""
+#: ggc-common.c:500
+#, fuzzy, c-format
+msgid "can't get position in PCH file: %m"
+msgstr "¥Õ¥¡¥¤¥ë `%s' ¤Ë¥ê¥Ý¥¸¥È¥ê¾ðÊó¤òºîÀ®¤Ç¤­¤Þ¤»¤ó"
-#: genautomata.c:9441
-#, fuzzy
-msgid "-split has no argument."
-msgstr "#%s ¤Ë°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
+#: ggc-common.c:510
+#, fuzzy, c-format
+msgid "can't write padding to PCH file: %m"
+msgstr "%s ¤Ø½ñ¤­¹þ¤á¤Þ¤»¤ó"
-#: genautomata.c:9442
-#, fuzzy
-msgid "option `-split' has not been implemented yet\n"
-msgstr "¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¤Ï¡¢¤Þ¤À¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+#: ggc-common.c:563 ggc-common.c:571 ggc-common.c:578 ggc-common.c:581
+#: ggc-common.c:654 ggc-common.c:657 ggc-page.c:2157 ggc-zone.c:1389
+#, fuzzy, c-format
+msgid "can't read PCH file: %m"
+msgstr "%s ¤«¤éÆɹþ¤á¤Þ¤»¤ó"
-#: genautomata.c:9486 genautomata.c:9491
-#, c-format
-msgid "Automaton `%s': Insn `%s' will never be issued"
+#: ggc-common.c:681
+msgid "had to relocate PCH"
msgstr ""
-#: genautomata.c:9498 genautomata.c:9501
+#: ggc-page.c:1325
#, c-format
-msgid "Insn `%s' will never be issued"
+msgid "open /dev/zero: %m"
msgstr ""
-#: genautomata.c:9649
+#: ggc-page.c:2047 ggc-page.c:2053
#, fuzzy
-msgid "Errors in DFA description"
-msgstr "ÀâÌÀ¤Ï¤Þ¤À¤¢¤ê¤Þ¤»¤ó"
-
-#: genautomata.c:9732
-#, fuzzy, c-format
-msgid "Error in writing DFA description file %s"
-msgstr "%s ¤Ø¤Î½ñ¤­¹þ¤ß¥¨¥é¡¼¤Ç¤¹"
-
-#: genconditions.c:196
-#, fuzzy
-msgid "No input file name."
-msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë¤¬¤¢¤ê¤Þ¤»¤ó"
+msgid "can't write PCH file"
+msgstr "%s ¤Ø½ñ¤­¹þ¤á¤Þ¤»¤ó"
-#: ggc-page.c:1265
-msgid "open /dev/zero"
+#: ggc-simple.c:506
+msgid "Generating PCH files is not supported when using ggc-simple.c"
msgstr ""
-#: graph.c:420 profile.c:1204 profile.c:1211 toplev.c:1836 toplev.c:5168
-#: f/com.c:14210 java/jcf-parse.c:917 java/jcf-parse.c:1063 java/lex.c:1776
-#: objc/objc-act.c:449
-#, c-format
-msgid "can't open %s"
+#: global.c:356 global.c:369 global.c:383
+#, fuzzy, c-format
+msgid "%s cannot be used in asm here"
+msgstr "\"%s\" ¤Ï¥Þ¥¯¥í̾¤È¤·¤Æ¤Ï»È¤¨¤Þ¤»¤ó"
+
+#: graph.c:403 toplev.c:1481 toplev.c:4408 f/com.c:14202 java/jcf-parse.c:883
+#: java/jcf-parse.c:1030 java/lex.c:1828 objc/objc-act.c:503
+#, fuzzy, c-format
+msgid "can't open %s: %m"
msgstr "%s ¤ò³«¤±¤Þ¤»¤ó"
#: haifa-sched.c:196
@@ -6321,71 +6080,81 @@ msgstr "%s ¤ò³«¤±¤Þ¤»¤ó"
msgid "fix_sched_param: unknown param: %s"
msgstr "fix_sched_param: ÉÔÌÀ¤Ê¥Ñ¥é¥á¥¿: %s"
-#: integrate.c:174
+#: integrate.c:166
msgid "function cannot be inline"
msgstr "´Ø¿ô¤ò inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: integrate.c:178
+#: integrate.c:170
msgid "varargs function cannot be inline"
msgstr "²ÄÊÑ°ú¿ô´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: integrate.c:181
+#: integrate.c:173
msgid "function using alloca cannot be inline"
msgstr "alloca ¤ò»È¤Ã¤Æ¤¤¤ë´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: integrate.c:184
+#: integrate.c:176
+#, fuzzy
+msgid "function using longjmp cannot be inline"
+msgstr "setjmp ¤ò»È¤Ã¤Æ¤¤¤ë´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
+
+#: integrate.c:179
msgid "function using setjmp cannot be inline"
msgstr "setjmp ¤ò»È¤Ã¤Æ¤¤¤ë´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: integrate.c:187
+#: integrate.c:182
msgid "function uses __builtin_eh_return"
msgstr "´Ø¿ô¤¬ __builtin_eh_return ¤ò»È¤¤¤Þ¤¹"
-#: integrate.c:190
+#: integrate.c:185
msgid "function with nested functions cannot be inline"
msgstr "Æþ¤ì»Ò´Ø¿ô¤ò»ý¤Ä´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: integrate.c:194
+#: integrate.c:189
msgid "function with label addresses used in initializers cannot inline"
msgstr "¥é¥Ù¥ë¥¢¥É¥ì¥¹¤ò»ý¤Á¡¢½é´ü²½»Ò¤Ç»È¤ï¤ì¤ë´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: integrate.c:201 integrate.c:245
+#: integrate.c:196 integrate.c:240
msgid "function too large to be inline"
msgstr "´Ø¿ô¤¬Â礭¤¹¤®¤Æ inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: integrate.c:211
+#: integrate.c:206
msgid "no prototype, and parameter address used; cannot be inline"
msgstr "¥×¥í¥È¥¿¥¤¥×¤¬¤Ê¤¯¡¢²¾°ú¿ô¤Î¥¢¥É¥ì¥¹¤¬»È¤ï¤ì¤Æ¤¤¤ë -- inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: integrate.c:218 integrate.c:263
+#: integrate.c:213 integrate.c:258
msgid "inline functions not supported for this return value type"
msgstr "¤³¤ÎÌá¤êÃÍ·¿¤Î inline ´Ø¿ô¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: integrate.c:223
+#: integrate.c:218
msgid "function with varying-size return value cannot be inline"
msgstr "²ÄÊÑŤÎÌá¤êÃͤòÊÖ¤¹´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: integrate.c:230
+#: integrate.c:225
msgid "function with varying-size parameter cannot be inline"
msgstr "²ÄÊÑĹ°ú¿ô¤ò»ý¤Ä´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: integrate.c:233
+#: integrate.c:228
msgid "function with transparent unit parameter cannot be inline"
msgstr "Æ©²á¶¦ÍÑÂΤΰú¿ô¤ò»ý¤Ä´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: integrate.c:252
+#: integrate.c:247
msgid "function with computed jump cannot inline"
msgstr "»»½Ð¤µ¤ì¤¿¥¸¥ã¥ó¥×¤ò¹Ô¤Ê¤¦´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: integrate.c:256
+#: integrate.c:251
msgid "function with nonlocal goto cannot be inline"
msgstr "Èó¥í¡¼¥«¥ë goto ¤ò»È¤Ã¤Æ¤¤¤ë´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: integrate.c:270
+#: integrate.c:265
msgid "function with target specific attribute(s) cannot be inlined"
msgstr "¥¿¡¼¥²¥Ã¥È¸Çͭ°À­Éդδؿô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: line-map.c:198
+#: jump.c:1896
+#, fuzzy
+msgid "%Hwill never be executed"
+msgstr "¸Æ¤Ó½Ð¤· %d ¤Ï°ìÅÙ¤â¼Â¹Ô¤»¤º\n"
+
+#: line-map.c:202
#, c-format
msgid "In file included from %s:%u"
msgstr "%s:%u ¤«¤é include ¤µ¤ì¤¿¥Õ¥¡¥¤¥ëÃæ"
@@ -6402,7 +6171,7 @@ msgstr "%s:%u ¤«¤é include ¤µ¤ì¤¿¥Õ¥¡¥¤¥ëÃæ"
#. with all the "from"s lined up.
#. The trailing comma is at the beginning of this message,
#. and the trailing colon is not translated.
-#: line-map.c:216
+#: line-map.c:220
#, c-format
msgid ""
",\n"
@@ -6411,63 +6180,155 @@ msgstr ""
",\n"
" %s:%u ¤«¤é"
+#. What to print when a switch has no documentation.
+#: opts.c:149
+msgid "This switch lacks documentation"
+msgstr ""
+
+#. Eventually this should become a hard error IMO.
+#: opts.c:318
+#, c-format
+msgid "command line option \"%s\" is valid for %s but not for %s"
+msgstr ""
+
+#: opts.c:406
+#, fuzzy, c-format
+msgid "missing argument to \"%s\""
+msgstr "`%s' ¥ª¥×¥·¥ç¥ó¤ËÂФ¹¤ë°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
+
+#: opts.c:416
+#, fuzzy, c-format
+msgid "argument to \"%s\" should be a non-negative integer"
+msgstr "`%s' ¤ÎÂè°ì°ú¿ô¤Ï `int' ¤È¤¹¤Ù¤­¤Ç¤¹"
+
+#: opts.c:463
+#, fuzzy, c-format
+msgid "unrecognized command line option \"%s\""
+msgstr "¥³¥Þ¥ó¥É¥é¥¤¥ó¥ª¥×¥·¥ç¥ó '%s' ¤ò̵»ë¤·¤Þ¤¹"
+
+#: opts.c:646
+msgid "-Wuninitialized is not supported without -O"
+msgstr "-Wuninitialized ¤Ï -O ̵¤·¤Ë¤Ï¼õ¤±Æþ¤ì¤é¤ì¤Þ¤»¤ó"
+
+#: opts.c:1350
+#, fuzzy, c-format
+msgid "unrecognized register name \"%s\""
+msgstr "ǧ¼±¤Ç¤­¤Ê¤¤¥ì¥¸¥¹¥¿Ì¾ `%s'"
+
+#: opts.c:1394
+#, fuzzy, c-format
+msgid "unknown tls-model \"%s\""
+msgstr "ÉÔÌÀ¤Ê¥Þ¥·¥ó¥â¡¼¥É `%s'"
+
+#: opts.c:1450
+msgid "-fwritable-strings is deprecated; see documentation for details"
+msgstr ""
+
+#: opts.c:1534
+#, c-format
+msgid "%s: --param arguments should be of the form NAME=VALUE"
+msgstr ""
+
+#: opts.c:1539
+#, fuzzy, c-format
+msgid "invalid --param value `%s'"
+msgstr "̵¸ú¤Ê¥Ñ¥é¥á¥¿ÃÍ `%s'"
+
+#: opts.c:1635
+#, fuzzy
+msgid "target system does not support debug output"
+msgstr "¥¿¡¼¥²¥Ã¥È CPU ¤Ï interworking ¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó"
+
+#: opts.c:1642
+#, fuzzy, c-format
+msgid "debug format \"%s\" conflicts with prior selection"
+msgstr "¥Ç¡¼¥¿Îΰè '%s' ¤ÏÁ°¤ÎÀë¸À¤ÈÌ·½â¤·¤Þ¤¹"
+
+#: opts.c:1658
+#, fuzzy, c-format
+msgid "unrecognised debug output level \"%s\""
+msgstr "ǧ¼±¤Ç¤­¤Ê¤¤¥»¥¯¥·¥ç¥ó̾ \"%s\""
+
+#: opts.c:1660
+#, c-format
+msgid "debug output level %s is too high"
+msgstr ""
+
+#: opts.c:1679
+msgid "The following options are language-independent:\n"
+msgstr ""
+
+#: opts.c:1686
+#, c-format
+msgid ""
+"The %s front end recognizes the following options:\n"
+"\n"
+msgstr ""
+
+#: opts.c:1700
+msgid "The --param option recognizes the following as parameters:\n"
+msgstr ""
+
#. If we didn't find this parameter, issue an error message.
-#: params.c:80
+#: params.c:76
#, c-format
msgid "invalid parameter `%s'"
msgstr "²¾°ú¿ô `%s' ¤Ï̵¸ú¤Ç¤¹"
-#: profile.c:397
-#, c-format
-msgid "Profile does not match flowgraph of function %s (out of date?)"
+#: profile.c:288
+msgid "corrupted profile info: run_max * runs < sum_max"
msgstr ""
-#: profile.c:400
-#, fuzzy
-msgid ".da file corrupted"
-msgstr ".da ¥Õ¥¡¥¤¥ë¤ÎÆâÍƤò»È¤¤ÀڤäƤ¤¤Þ¤»¤ó\n"
+#: profile.c:294
+msgid "corrupted profile info: sum_all is smaller than sum_max"
+msgstr ""
-#: profile.c:634
+#: profile.c:336
#, c-format
-msgid "corrupted profile info: prob for %d-%d thought to be %d"
+msgid "corrupted profile info: edge from %i to %i exceeds maximal count"
msgstr ""
-#: profile.c:1226
-#, fuzzy, c-format
-msgid "file %s not found, execution counts assumed to be zero"
-msgstr "¥Õ¥¡¥¤¥ë %s ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¤Î¤Ç¡¢¼Â¹Ô¥«¥¦¥ó¥È¤Ï¥¼¥í¤È¸«¤Ê¤·¤Þ¤¹"
+#: profile.c:499
+#, c-format
+msgid "corrupted profile info: number of iterations for basic block %d thought to be %i"
+msgstr ""
+
+#: profile.c:526
+#, c-format
+msgid "corrupted profile info: number of executions for edge %d-%d thought to be %i"
+msgstr ""
-#: protoize.c:542
+#: protoize.c:534
#, c-format
msgid "%s: internal abort\n"
msgstr "%s: ÆâÉôÃæÃÇ\n"
-#: protoize.c:633
+#: protoize.c:592
#, c-format
msgid "%s: error writing file `%s': %s\n"
msgstr "%s: ¥Õ¥¡¥¤¥ë `%s' ¤Ë½ñ¤­¹þ¤ßÃæ¤Ë¥¨¥é¡¼: %s\n"
-#: protoize.c:678
+#: protoize.c:636
#, c-format
msgid "%s: usage '%s [ -VqfnkN ] [ -i <istring> ] [ filename ... ]'\n"
msgstr "%s: »ÈÍÑË¡ '%s [ -VqfnkN ] [ -i <istring> ] [ ¥Õ¥¡¥¤¥ë̾ ... ]'\n"
-#: protoize.c:681
+#: protoize.c:639
#, c-format
msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B <dirname> ] [ filename ... ]'\n"
msgstr "%s: »ÈÍÑË¡ '%s [ -VqfnkNlgC ] [ -B <¥Ç¥£¥ì¥¯¥È¥ê̾> ] [ ¥Õ¥¡¥¤¥ë̾ ... ]'\n"
-#: protoize.c:788
+#: protoize.c:745
#, c-format
msgid "%s: warning: no read access for file `%s'\n"
msgstr "%s: ·Ù¹ð: ¥Õ¥¡¥¤¥ë `%s' ¤ËÂФ·¤ÆÆɤ߽Ф·µö²Ä¤¬¤¢¤ê¤Þ¤»¤ó\n"
-#: protoize.c:796
+#: protoize.c:753
#, c-format
msgid "%s: warning: no write access for file `%s'\n"
msgstr "%s: ·Ù¹ð: ¥Õ¥¡¥¤¥ë `%s' ¤ËÂФ·¤Æ½ñ¤­¹þ¤ßµö²Ä¤¬¤¢¤ê¤Þ¤»¤ó\n"
-#: protoize.c:804
+#: protoize.c:761
#, c-format
msgid "%s: warning: no write access for dir containing `%s'\n"
msgstr "%s: ·Ù¹ð: `%s' ¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ËÂФ·¤Æ½ñ¤­¹þ¤ßµö²Ä¤¬¤¢¤ê¤Þ¤»¤ó\n"
@@ -6475,17 +6336,17 @@ msgstr "%s: ·Ù¹ð: `%s' ¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ËÂФ·¤Æ½ñ¤­¹þ¤ßµö²Ä¤¬¤¢¤ê¤Þ¤»¤ó\n"
#. Catch cases like /.. where we try to backup to a
#. point above the absolute root of the logical file
#. system.
-#: protoize.c:1222
+#: protoize.c:1148
#, c-format
msgid "%s: invalid file name: %s\n"
msgstr "%s: ̵¸ú¤Ê¥Õ¥¡¥¤¥ë̾: %s\n"
-#: protoize.c:1374
+#: protoize.c:1296
#, c-format
msgid "%s: %s: can't get status: %s\n"
msgstr "%s: %s: ¾õÂÖ¤ò¼èÆÀ¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: protoize.c:1395
+#: protoize.c:1317
#, c-format
msgid ""
"\n"
@@ -6494,137 +6355,137 @@ msgstr ""
"\n"
"%s: Ã×̿Ū¥¨¥é¡¼: Éû info ¥Õ¥¡¥¤¥ë¤¬ %d ¹ÔÌܤDzõ¤ì¤Æ¤¤¤Þ¤¹\n"
-#: protoize.c:1731
+#: protoize.c:1646
#, c-format
msgid "%s:%d: declaration of function `%s' takes different forms\n"
msgstr "%s:%d: ´Ø¿ô `%s' ¤ÎÀë¸À¤¬Ê̤ηÁ¤ò¼è¤Ã¤Æ¤¤¤Þ¤¹\n"
-#: protoize.c:1989
+#: protoize.c:1901
#, c-format
msgid "%s: compiling `%s'\n"
msgstr "%s: `%s' ¤ò¥³¥ó¥Ñ¥¤¥ëÃæ\n"
-#: protoize.c:2012
+#: protoize.c:1924
#, c-format
msgid "%s: wait: %s\n"
msgstr "%s: ÂÔ¤Á: %s\n"
-#: protoize.c:2017
+#: protoize.c:1929
#, c-format
msgid "%s: subprocess got fatal signal %d\n"
msgstr "%s: ¥µ¥Ö¥×¥í¥»¥¹¤¬Ã×̿Ū¥·¥°¥Ê¥ë %d ¤ò¼õ¤±¼è¤ê¤Þ¤·¤¿\n"
-#: protoize.c:2025
+#: protoize.c:1937
#, c-format
msgid "%s: %s exited with status %d\n"
msgstr "%s: %s ¤Ï¥¹¥Æ¡¼¥¿¥¹ %d ¤Ç½ªÎ»¤·¤Þ¤·¤¿\n"
-#: protoize.c:2077
+#: protoize.c:1986
#, c-format
msgid "%s: warning: missing SYSCALLS file `%s'\n"
msgstr "%s: ·Ù¹ð: SYSCALLS ¥Õ¥¡¥¤¥ë `%s' ¤¬¤¢¤ê¤Þ¤»¤ó\n"
-#: protoize.c:2086 protoize.c:2115
+#: protoize.c:1995 protoize.c:2024
#, c-format
msgid "%s: can't read aux info file `%s': %s\n"
msgstr "%s: Éû info ¥Õ¥¡¥¤¥ë `%s' ¤òÆɤळ¤È¤¬¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: protoize.c:2131 protoize.c:2159
+#: protoize.c:2040 protoize.c:2068
#, c-format
msgid "%s: can't get status of aux info file `%s': %s\n"
msgstr "%s: Éû info ¥Õ¥¡¥¤¥ë `%s' ¤Î¾õÂÖ¤ò¼èÆÀ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: protoize.c:2187
+#: protoize.c:2096
#, c-format
msgid "%s: can't open aux info file `%s' for reading: %s\n"
msgstr "%s: Éû info ¥Õ¥¡¥¤¥ë `%s' ¤òÆɤ߹þ¤ßÍѤ˳«¤¯¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: protoize.c:2205
+#: protoize.c:2114
#, c-format
msgid "%s: error reading aux info file `%s': %s\n"
msgstr "%s: Éû info ¥Õ¥¡¥¤¥ë `%s' ¤òÆɤ߹þ¤ßÃæ¤Ë¥¨¥é¡¼: %s\n"
-#: protoize.c:2218
+#: protoize.c:2127
#, c-format
msgid "%s: error closing aux info file `%s': %s\n"
msgstr "%s: Éû info ¥Õ¥¡¥¤¥ë `%s' ¤òÊĤ¸¤Æ¤¤¤ëºÇÃæ¤Ë¥¨¥é¡¼: %s\n"
-#: protoize.c:2234
+#: protoize.c:2143
#, c-format
msgid "%s: can't delete aux info file `%s': %s\n"
msgstr "%s: Éû info ¥Õ¥¡¥¤¥ë `%s' ¤òºï½ü¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: protoize.c:2316 protoize.c:4318
+#: protoize.c:2225 protoize.c:4195
#, c-format
msgid "%s: can't delete file `%s': %s\n"
msgstr "%s: ¥Õ¥¡¥¤¥ë `%s' ¤òºï½ü¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: protoize.c:2395
+#: protoize.c:2303
#, c-format
msgid "%s: warning: can't rename file `%s' to `%s': %s\n"
msgstr "%s: ·Ù¹ð: ¥Õ¥¡¥¤¥ë `%s' ¤ò `%s' ̾Á°Êѹ¹¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: protoize.c:2520
+#: protoize.c:2425
#, c-format
msgid "%s: conflicting extern definitions of '%s'\n"
msgstr "%s: '%s' ¤Î³°ÉôÄêµÁ¤¬Ì·½â¤·¤Æ¤¤¤Þ¤¹\n"
-#: protoize.c:2524
+#: protoize.c:2429
#, c-format
msgid "%s: declarations of '%s' will not be converted\n"
msgstr "%s: '%s' ¤ÎÀë¸À¤ÏÊÑ´¹¤µ¤ì¤Þ¤»¤ó\n"
-#: protoize.c:2526
+#: protoize.c:2431
#, c-format
msgid "%s: conflict list for '%s' follows:\n"
msgstr "%s: `%s' ¤ËÂФ¹¤ëÌ·½â°ìÍ÷¤Ï°Ê²¼¤ÎÄ̤ê¤Ç¤¹:\n"
-#: protoize.c:2559
+#: protoize.c:2464
#, c-format
msgid "%s: warning: using formals list from %s(%d) for function `%s'\n"
msgstr "%s: ·Ù¹ð: %s(%d) ¤«¤é¤Î·Á¼°¥ê¥¹¥È¤ò¡¢´Ø¿ô `%s' ¤Î°Ù¤Ë»È¤¤¤Þ¤¹\n"
-#: protoize.c:2599
+#: protoize.c:2504
#, c-format
msgid "%s: %d: `%s' used but missing from SYSCALLS\n"
msgstr "%s: %d: `%s' ¤Ï»È¤ï¤ì¤Æ¤¤¤Þ¤¹¤¬ SYSCALLS ¤Ë¤¢¤ê¤Þ¤»¤ó\n"
-#: protoize.c:2605
+#: protoize.c:2510
#, c-format
msgid "%s: %d: warning: no extern definition for `%s'\n"
msgstr "%s: %d: ·Ù¹ð: `%s' ¤ËÂФ¹¤ë³°ÉôÄêµÁ¤¬¤¢¤ê¤Þ¤»¤ó\n"
-#: protoize.c:2636
+#: protoize.c:2540
#, c-format
msgid "%s: warning: no static definition for `%s' in file `%s'\n"
msgstr "%s: ·Ù¹ð: `%s' ¤ÎÀÅŪÄêµÁ¤¬¥Õ¥¡¥¤¥ë `%s' ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó\n"
-#: protoize.c:2642
+#: protoize.c:2546
#, c-format
msgid "%s: multiple static defs of `%s' in file `%s'\n"
msgstr "%s: `%s' ¤ÎÀÅŪÄêµÁ¤¬¥Õ¥¡¥¤¥ë `%s' ¤ÎÃæ¤Ç½ÅÊ£¤·¤Æ¤¤¤Þ¤¹\n"
-#: protoize.c:2815 protoize.c:2818
+#: protoize.c:2716 protoize.c:2719
#, c-format
msgid "%s: %d: warning: source too confusing\n"
msgstr "%s: %d: ·Ù¹ð: ¥½¡¼¥¹¤¬º®Í𤷤¹¤®¤Æ¤¤¤Þ¤¹\n"
-#: protoize.c:3024
+#: protoize.c:2915
#, c-format
msgid "%s: %d: warning: varargs function declaration not converted\n"
msgstr "%s: %d: ·Ù¹ð: varargs ´Ø¿ôÀë¸À¤¬ÊÑ´¹¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-#: protoize.c:3039
+#: protoize.c:2930
#, c-format
msgid "%s: declaration of function `%s' not converted\n"
msgstr "%s: ´Ø¿ô `%s' ¤ÎÀë¸À¤¬ÊÑ´¹¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-#: protoize.c:3162
+#: protoize.c:3053
#, c-format
msgid "%s: warning: too many parameter lists in declaration of `%s'\n"
msgstr "%s: ·Ù¹ð: `%s' ¤ÎÀë¸À¤Ç¤Î²¾°ú¿ô¥ê¥¹¥È¤¬Â¿¤¹¤®¤Þ¤¹\n"
-#: protoize.c:3183
+#: protoize.c:3074
#, c-format
msgid ""
"\n"
@@ -6633,17 +6494,17 @@ msgstr ""
"\n"
"%s: ·Ù¹ð: `%s' ¤ÎÀë¸À¤Ç¤Î²¾°ú¿ô¥ê¥¹¥È¤¬¾¯¤Ê¤¹¤®¤Þ¤¹\n"
-#: protoize.c:3281
+#: protoize.c:3170
#, c-format
msgid "%s: %d: warning: found `%s' but expected `%s'\n"
msgstr "%s: %d: ·Ù¹ð: `%s' ¤¬¸«¤Ä¤«¤ê¤Þ¤·¤¿¤¬ `%s' ¤¬´üÂÔ¤µ¤ì¤Æ¤¤¤Þ¤¹\n"
-#: protoize.c:3459
+#: protoize.c:3345
#, c-format
msgid "%s: local declaration for function `%s' not inserted\n"
msgstr "%s: ´Ø¿ô `%s' ¤Î¥í¡¼¥«¥ëÀë¸À¤¬ÁÞÆþ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-#: protoize.c:3486
+#: protoize.c:3372
#, c-format
msgid ""
"\n"
@@ -6652,64 +6513,64 @@ msgstr ""
"\n"
"%s: %d: ·Ù¹ð: `%s' ¤ÎÀë¸À¤ò¥Þ¥¯¥í¸Æ¤Ó½Ð¤·¤ËÄɲäǤ­¤Þ¤»¤ó\n"
-#: protoize.c:3560
+#: protoize.c:3444
#, c-format
msgid "%s: global declarations for file `%s' not inserted\n"
msgstr "%s: ¥Õ¥¡¥¤¥ë `%s' ¤ÎÂç°èÀë¸À¤¬ÁÞÆþ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-#: protoize.c:3651 protoize.c:3681
+#: protoize.c:3533 protoize.c:3563
#, c-format
msgid "%s: definition of function `%s' not converted\n"
msgstr "%s: ´Ø¿ô `%s' ¤ÎÄêµÁ¤¬ÊÑ´¹¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-#: protoize.c:3670
+#: protoize.c:3552
#, c-format
msgid "%s: %d: warning: definition of %s not converted\n"
msgstr "%s: %d: ·Ù¹ð: %s ¤ÎÄêµÁ¤¬ÊÑ´¹¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-#: protoize.c:4000
+#: protoize.c:3878
#, c-format
msgid "%s: found definition of `%s' at %s(%d)\n"
msgstr "%s: `%s' ¤ÎÄêµÁ¤¬ %s(%d) ¤Ë¸«¤Ä¤«¤ê¤Þ¤·¤¿\n"
#. If we make it here, then we did not know about this
#. function definition.
-#: protoize.c:4016
+#: protoize.c:3894
#, c-format
msgid "%s: %d: warning: `%s' excluded by preprocessing\n"
msgstr "%s: %d: ·Ù¹ð: `%s' ¤Ï¥×¥ê¥×¥í¥»¥¹¤«¤é½ü³°¤µ¤ì¤Æ¤¤¤Þ¤¹\n"
-#: protoize.c:4019
+#: protoize.c:3897
#, c-format
msgid "%s: function definition not converted\n"
msgstr "%s: ´Ø¿ô¤ÎÄêµÁ¤¬ÊÑ´¹¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-#: protoize.c:4078
+#: protoize.c:3955
#, c-format
msgid "%s: `%s' not converted\n"
msgstr "%s: `%s' ¤ÏÊÑ´¹¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-#: protoize.c:4086
+#: protoize.c:3963
#, c-format
msgid "%s: would convert file `%s'\n"
msgstr "%s: `%s' ¤òÊÑ´¹¤·¤Þ¤¹\n"
-#: protoize.c:4089
+#: protoize.c:3966
#, c-format
msgid "%s: converting file `%s'\n"
msgstr "%s: ¥Õ¥¡¥¤¥ë `%s' ¤òÊÑ´¹Ãæ\n"
-#: protoize.c:4099
+#: protoize.c:3976
#, c-format
msgid "%s: can't get status for file `%s': %s\n"
msgstr "%s: ¥Õ¥¡¥¤¥ë `%s' ¤Î¾õÂÖ¤ò¼èÆÀ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: protoize.c:4141
+#: protoize.c:4018
#, c-format
msgid "%s: can't open file `%s' for reading: %s\n"
msgstr "%s: Æɤ߹þ¤ßÍѤ˥ե¡¥¤¥ë `%s' ¤ò³«¤¯¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: protoize.c:4156
+#: protoize.c:4033
#, c-format
msgid ""
"\n"
@@ -6718,37 +6579,37 @@ msgstr ""
"\n"
"%s: ÆþÎÏ¥Õ¥¡¥¤¥ë `%s' ¤òÆɤ߹þ¤ßÃæ¤Ë¥¨¥é¡¼: %s\n"
-#: protoize.c:4190
+#: protoize.c:4067
#, c-format
msgid "%s: can't create/open clean file `%s': %s\n"
msgstr "%s: ¤­¤ì¤¤¤Ê¥Õ¥¡¥¤¥ë `%s' ¤òºîÀ®/¥ª¡¼¥×¥ó¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: protoize.c:4295
+#: protoize.c:4172
#, c-format
msgid "%s: warning: file `%s' already saved in `%s'\n"
msgstr "%s: ·Ù¹ð: ¥Õ¥¡¥¤¥ë `%s' ¤Ï´û¤Ë `%s' ¤ËÊݸ¤µ¤ì¤Æ¤¤¤Þ¤¹\n"
-#: protoize.c:4303
+#: protoize.c:4180
#, c-format
msgid "%s: can't link file `%s' to `%s': %s\n"
msgstr "%s: ¥Õ¥¡¥¤¥ë `%s' ¤ò `%s' ¤Ë¥ê¥ó¥¯¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: protoize.c:4333
+#: protoize.c:4210
#, c-format
msgid "%s: can't create/open output file `%s': %s\n"
msgstr "%s: ½ÐÎÏ¥Õ¥¡¥¤¥ë `%s' ¤òºîÀ®¤·¤¿¤ê³«¤¤¤¿¤ê¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: protoize.c:4366
+#: protoize.c:4243
#, c-format
msgid "%s: can't change mode of file `%s': %s\n"
msgstr "%s: ¥Õ¥¡¥¤¥ë `%s' ¤Î¥â¡¼¥É¤òÊѹ¹¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: protoize.c:4541
+#: protoize.c:4416
#, c-format
msgid "%s: cannot get working directory: %s\n"
msgstr "%s: ºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤¬Ê¬¤«¤ê¤Þ¤»¤ó: %s\n"
-#: protoize.c:4639
+#: protoize.c:4514
#, c-format
msgid "%s: input file names must have .c suffixes: %s\n"
msgstr "%s: ÆþÎÏ¥Õ¥¡¥¤¥ë̾¤Ë¤Ï³ÈÄ¥»Ò .c ¤¬¤Ê¤±¤ì¤Ð¤¤¤±¤Þ¤»¤ó: %s\n"
@@ -6757,368 +6618,410 @@ msgstr "%s: ÆþÎÏ¥Õ¥¡¥¤¥ë̾¤Ë¤Ï³ÈÄ¥»Ò .c ¤¬¤Ê¤±¤ì¤Ð¤¤¤±¤Þ¤»¤ó: %s\n"
msgid "Didn't find a coloring.\n"
msgstr ""
-#: reg-stack.c:673
+#: reg-stack.c:665
#, fuzzy, c-format
msgid "output constraint %d must specify a single register"
msgstr "½ÐÎÏÀ©Ìó %d ¤Ï°ì¤Ä¤Î¥ì¥¸¥¹¥¿¤ò»ØÄꤷ¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: reg-stack.c:683
+#: reg-stack.c:675
#, fuzzy, c-format
msgid "output constraint %d cannot be specified together with \"%s\" clobber"
msgstr "½ÐÎÏÀ©Ìó %d ¤Ï°ì¤Ä¤Î¥ì¥¸¥¹¥¿¤ò»ØÄꤷ¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: reg-stack.c:706
+#: reg-stack.c:698
#, fuzzy
msgid "output regs must be grouped at top of stack"
msgstr "½ÐÎϥ쥸¥¹¥¿¤Ï¥¹¥¿¥Ã¥¯¤Î¥È¥Ã¥×¤Ë¥°¥ë¡¼¥×¤µ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: reg-stack.c:743
+#: reg-stack.c:735
#, fuzzy
msgid "implicitly popped regs must be grouped at top of stack"
msgstr "°ÅÌÛ¤Ë pop ¤µ¤ì¤ë¥ì¥¸¥¹¥¿¤Ï¥¹¥¿¥Ã¥¯¤Î¥È¥Ã¥×¤Ë¥°¥ë¡¼¥×¤µ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: reg-stack.c:762
+#: reg-stack.c:754
#, fuzzy, c-format
msgid "output operand %d must use `&' constraint"
msgstr "½ÐÎÏ¥ª¥Ú¥é¥ó¥É %d ¤Ï `&' À©Ìó¤ò»È¤ï¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: regclass.c:756
+#: regclass.c:743
#, c-format
msgid "can't use '%s' as a %s register"
msgstr "'%s' ¤ò %s ¤Î¥ì¥¸¥¹¥¿¤È¤·¤Æ»È¤¦¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó"
-#: regclass.c:771 config/ia64/ia64.c:4304 config/ia64/ia64.c:4311
+#: regclass.c:758 config/ia64/ia64.c:4640 config/ia64/ia64.c:4647
#, c-format
msgid "unknown register name: %s"
msgstr "ÉÔÌÀ¤Ê¥ì¥¸¥¹¥¿Ì¾¤Ç¤¹: %s"
-#: regclass.c:782
+#: regclass.c:768
msgid "global register variable follows a function definition"
msgstr "Âç°è register ÊÑ¿ô¤¬´Ø¿ôÄêµÁ¤Î¸å¤í¤Ë¤¢¤ê¤Þ¤¹"
-#: regclass.c:786
+#: regclass.c:772
msgid "register used for two global register variables"
msgstr "¥ì¥¸¥¹¥¿¤¬Æó¤Ä¤Î¥°¥í¡¼¥Ð¥ë¥ì¥¸¥¹¥¿ÊÑ¿ô¤È¤·¤Æ»È¤ï¤ì¤Þ¤·¤¿"
-#: regclass.c:791
+#: regclass.c:777
msgid "call-clobbered register used for global register variable"
msgstr "¸Æ¤Ó½Ð¤·¤ÇÇ˲õ¤µ¤ì¤ë¥ì¥¸¥¹¥¿¤¬¥°¥í¡¼¥Ð¥ë¥ì¥¸¥¹¥¿ÊÑ¿ô¤È¤·¤Æ»È¤ï¤ì¤Þ¤·¤¿"
-#: regrename.c:1899
+#: regrename.c:1846
#, c-format
msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)"
msgstr ""
-#: regrename.c:1911
+#: regrename.c:1858
#, c-format
msgid "validate_value_data: Loop in regno chain (%u)"
msgstr ""
-#: regrename.c:1914
+#: regrename.c:1861
#, c-format
msgid "validate_value_data: [%u] Bad oldest_regno (%u)"
msgstr ""
-#: regrename.c:1926
+#: regrename.c:1873
#, c-format
msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
msgstr ""
-#: reload.c:1229
+#: reload.c:1254
msgid "cannot reload integer constant operand in `asm'"
msgstr "À°¿ôÄê¿ô¥ª¥Ú¥é¥ó¥É¤ò `asm' Æâ¤ÇºÆ¥í¡¼¥É¤Ç¤­¤Þ¤»¤ó"
-#: reload.c:1251
+#: reload.c:1276
msgid "impossible register constraint in `asm'"
msgstr "`asm' Æâ¤Ç¤Ï¥ì¥¸¥¹¥¿À©Ìó¤ò¹Ô¤Ê¤¨¤Þ¤»¤ó"
-#: reload.c:3461
+#: reload.c:3489
msgid "`&' constraint used with no register class"
msgstr "`&' À©Ì󤬥쥸¥¹¥¿¥¯¥é¥¹Ìµ¤·¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: reload.c:3629
+#: reload.c:3657
#, fuzzy
msgid "unable to generate reloads for:"
msgstr "¥³¡¼¥É¤¬À¸À®¤µ¤ì¤ë CPU ¤òÁªÂò¤¹¤ë"
-#: reload.c:3630 reload.c:3844
+#: reload.c:3658 reload.c:3872
msgid "inconsistent operand constraints in an `asm'"
msgstr "`asm' Æâ¤Ç¤Î¥ª¥Ú¥é¥ó¥ÉÀ©Ìó¤¬Ì·½â¤·¤Æ¤¤¤Þ¤¹"
-#: reload1.c:1250
+#: reload1.c:1212
msgid "frame size too large for reliable stack checking"
msgstr "¥Õ¥ì¡¼¥à¥µ¥¤¥º¤¬Â礭¤¹¤®¤Æ¡¢¥¹¥¿¥Ã¥¯¸¡ºº¤¬¿®Íê¤Ç¤­¤Ê¤¯¤Ê¤ê¤Þ¤¹"
-#: reload1.c:1253
+#: reload1.c:1215
msgid "try reducing the number of local variables"
msgstr "¥í¡¼¥«¥ëÊÑ¿ô¤Î¿ô¤òºï¸º¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤"
-#: reload1.c:1909
+#: reload1.c:1868
#, fuzzy, c-format
msgid "can't find a register in class `%s' while reloading `asm'"
msgstr "¥¯¥é¥¹ `%s' Æâ¤Î¥ì¥¸¥¹¥¿¤ò `asm' ºÆ¥í¡¼¥ÉÃæ¤Ë¸«¤Ä¤±¤é¤ì¤Þ¤»¤ó"
-#: reload1.c:1913
+#: reload1.c:1872
#, fuzzy, c-format
msgid "unable to find a register to spill in class `%s'"
msgstr "¥¯¥é¥¹ `%s' Æâ¤Ç¤Õ¤ë¤¤Íî¤È¤¹¥ì¥¸¥¹¥¿¤ò¸«¤Ä¤±¤é¤ì¤Þ¤»¤ó"
-#: reload1.c:1915
+#: reload1.c:1874
msgid "this is the insn:"
msgstr ""
-#: reload1.c:3938
+#: reload1.c:3871
msgid "`asm' operand requires impossible reload"
msgstr "`asm' ¥ª¥Ú¥é¥ó¥É¤ÏºÆ¥í¡¼¥É¤Ç¤­¤Ê¤¤»ö¤¬Í׵ᤵ¤ì¤Þ¤¹"
#. It's the compiler's fault.
-#: reload1.c:5052
+#: reload1.c:4963
#, fuzzy
msgid "could not find a spill register"
msgstr "spec ¥Õ¥¡¥¤¥ë %s ¤ò¸«¤Ä¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿\n"
-#: reload1.c:5057
+#: reload1.c:4968
msgid "`asm' operand constraint incompatible with operand size"
msgstr "`asm' ¥ª¥Ú¥é¥ó¥ÉÀ©Ì󤬥ª¥Ú¥é¥ó¥É¥µ¥¤¥º¤ÈÀ°¹ç¤·¤Þ¤»¤ó"
#. It's the compiler's fault.
-#: reload1.c:6679
+#: reload1.c:6590
#, fuzzy
msgid "VOIDmode on an output"
msgstr "½ÐÎÏÃæ¤Ë I/O ¥¨¥é¡¼¤¬È¯À¸"
-#: reload1.c:6680
+#: reload1.c:6591
msgid "output operand is constant in `asm'"
msgstr "½ÐÎÏ¥ª¥Ú¥é¥ó¥É¤¬ `asm' Æâ¤ÇÄê¿ô¤Ç¤¹"
-#: rtl-error.c:140
+#: rtl-error.c:124
#, fuzzy
msgid "unrecognizable insn:"
msgstr "ǧ¼±ÉÔǽ¤ÊÌ¿Îá:"
-#: rtl-error.c:142
+#: rtl-error.c:126
#, fuzzy
msgid "insn does not satisfy its constraints:"
msgstr "Ì¿Î᤬¤½¤ÎÀ©Ìó¤òËþ¤¿¤·¤Þ¤»¤ó"
-#: rtl.c:535
+#: rtl.c:477
#, c-format
msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d"
msgstr "RTL ¸¡ºº: elt %d(%s) ¤¬ºÇ¸å¤Î elt %d(%s Ãæ) ¤È°ì½ï¤Ë¥¢¥¯¥»¥¹¤·¤Þ¤¹ (%s:%d)"
-#: rtl.c:550
+#: rtl.c:487
#, c-format
msgid "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr "RTL ¸¡ºº: elt %d ·¿¤Ï '%c' ¤Î¤Ï¤º¤Ê¤Î¤Ë '%c' (rtx %s, %s Ãæ)¤Ç¤¹ (%s:%d)"
-#: rtl.c:566
+#: rtl.c:497
#, c-format
msgid "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr "RTL ¸¡ºº: elt %d ·¿¤Ï '%c' ¤« '%c' ¤Î¤Ï¤º¤Ê¤Î¤Ë '%c' (rtx %s, %s Ãæ) ¤Ç¤¹ (%s:%d)"
-#: rtl.c:579
+#: rtl.c:506
#, c-format
msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d"
msgstr "RTL ¸¡ºº: ¥³¡¼¥É `%s' ¤Î¤Ï¤º¤Ê¤Î¤Ë `%s' (%s Ãæ)¤Ç¤¹ (%s:%d)"
-#: rtl.c:593
+#: rtl.c:516
#, c-format
msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d"
msgstr "RTL ¸¡ºº: ¥³¡¼¥É `%s' ¤« `%s' ¤Î¤Ï¤º¤Ê¤Î¤Ë `%s' (%s Ãæ)¤Ç¤¹ (%s:%d)"
-#: rtl.c:608
+#: rtl.c:527
#, c-format
msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
msgstr "RTL check: ¥Ù¥¯¥È¥ë¤Î elt %d ¤òºÇ¸å¤Î elt %d (%s Ãæ)¤È°ì½ï¤Ë¥¢¥¯¥»¥¹¤·¤Þ¤¹ (%s:%d)"
-#: rtl.c:623
+#: rtl.c:538
#, fuzzy, c-format
msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d"
msgstr "RTL ¸¡ºº: ¥³¡¼¥É `%s' ¤Î¤Ï¤º¤Ê¤Î¤Ë `%s' (%s Ãæ)¤Ç¤¹ (%s:%d)"
-#: stmt.c:766
+#: stmt.c:750
#, c-format
msgid "jump to `%s' invalidly jumps into binding contour"
msgstr "`%s' ¤Ø¤Î¥¸¥ã¥ó¥×¤ÏÅ»¤á¤é¤ì¤¿¥Ö¥í¥Ã¥¯Æâ¤Ø¡¢Ìµ¸ú¤Ë¥¸¥ã¥ó¥×¤·¤Æ¤¤¤Þ¤¹"
-#: stmt.c:1002 stmt.c:3766
-#, c-format
-msgid "label `%s' used before containing binding contour"
+#: stmt.c:977 stmt.c:3793
+#, fuzzy
+msgid "%Jlabel '%D' used before containing binding contour"
msgstr "¥é¥Ù¥ë `%s' ¤¬Å»¤á¤é¤ì¤¿¥Ö¥í¥Ã¥¯¤ò¹½À®¤¹¤ëÁ°¤Ë»È¤ï¤ì¤Þ¤·¤¿"
-#: stmt.c:1190
+#: stmt.c:1156
msgid "output operand constraint lacks `='"
msgstr "½ÐÎÏ¥ª¥Ú¥é¥ó¥ÉÀ©Ìó¤Ë `=' ¤¬·ç¤±¤Æ¤¤¤Þ¤¹"
-#: stmt.c:1205
+#: stmt.c:1171
#, c-format
msgid "output constraint `%c' for operand %d is not at the beginning"
msgstr "½ÐÎÏÀ©Ìó `%c' (operand %d ÍÑ) ¤¬³«»ÏÉôʬ¤Ë¤¢¤ê¤Þ¤»¤ó"
-#: stmt.c:1227
+#: stmt.c:1193
#, fuzzy
msgid "operand constraint contains incorrectly positioned '+' or '='"
msgstr "¥ª¥Ú¥é¥ó¥ÉÀ©ÌóÃæ¡¢ÉÔÀµ¤Ê°ÌÃÖ¤Ë '+' ¤ä '=' ¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹"
-#: stmt.c:1233 stmt.c:1337
+#: stmt.c:1199 stmt.c:1301
#, c-format
msgid "`%%' constraint used with last operand"
msgstr "`%%' À©Ì󤬺Ǹå¤Î¥ª¥Ú¥é¥ó¥É¤È¤È¤â¤Ë»È¤ï¤ì¤Þ¤·¤¿"
-#: stmt.c:1252
+#: stmt.c:1218
msgid "matching constraint not valid in output operand"
msgstr "½ÐÎÏ¥ª¥Ú¥é¥ó¥ÉÆâ¤ÎÀ©Ìó¤¬Àµ¤·¤¯¤¢¤ê¤Þ¤»¤ó"
-#: stmt.c:1328
+#: stmt.c:1260
+#, fuzzy
+msgid "read-write constraint does not allow a register"
+msgstr "16 ¿Ê¿ôʸ»úÄê¿ô¤¬ 1 ¥Ð¥¤¥È¤Ë¼ý¤Þ¤ê¤Þ¤»¤ó"
+
+#: stmt.c:1292
#, c-format
msgid "input operand constraint contains `%c'"
msgstr "ÆþÎÏ¥ª¥Ú¥é¥ó¥ÉÀ©Ìó¤¬ `%c' ¤ò´Þ¤ó¤Ç¤¤¤Þ¤¹"
-#: stmt.c:1368
+#: stmt.c:1334
msgid "matching constraint references invalid operand number"
msgstr "À©Ìó¤ËŬ¹ç¤µ¤»¤ë»þ¤Ë¡¢Ìµ¸ú¤Ê¥ª¥Ú¥é¥ó¥ÉÈÖ¹æ¤ò»²¾È¤·¤Þ¤·¤¿"
-#: stmt.c:1400
+#: stmt.c:1372
#, c-format
msgid "invalid punctuation `%c' in constraint"
msgstr "̵¸ú¤Ê¶çÆÉÅÀ `%c' ¤¬À©ÌóÆâ¤Ë¤¢¤ê¤Þ¤¹"
-#: stmt.c:1450
+#: stmt.c:1396
+#, fuzzy
+msgid "matching constraint does not allow a register"
+msgstr "½ÐÎÏ¥ª¥Ú¥é¥ó¥ÉÆâ¤ÎÀ©Ìó¤¬Àµ¤·¤¯¤¢¤ê¤Þ¤»¤ó"
+
+#: stmt.c:1424
#, fuzzy, c-format
msgid "asm-specifier for variable `%s' conflicts with asm clobber list"
msgstr "`%s' ¤Î·¿½¤¾þ»Ò¤¬Á°Êý¤ÎÀë¸À¤ÈÌ·½â¤·¤Þ¤¹"
-#: stmt.c:1540
+#: stmt.c:1514
#, c-format
msgid "unknown register name `%s' in `asm'"
msgstr "`asm' Ãæ¤ËÉÔÌÀ¤Ê¥ì¥¸¥¹¥¿Ì¾ `%s' ¤¬¤¢¤ê¤Þ¤¹"
-#: stmt.c:1588
+#: stmt.c:1522
+#, fuzzy, c-format
+msgid "PIC register `%s' clobbered in `asm'"
+msgstr "`asm' Ãæ¤ËÉÔÌÀ¤Ê¥ì¥¸¥¹¥¿Ì¾ `%s' ¤¬¤¢¤ê¤Þ¤¹"
+
+#: stmt.c:1571
#, c-format
msgid "more than %d operands in `asm'"
msgstr "`asm' ¤ÎÃæ¤Ë %d ¤ò±Û¤¨¤ë¥ª¥Ú¥é¥ó¥É¤¬¤¢¤ê¤Þ¤¹"
-#: stmt.c:1650
+#: stmt.c:1633
#, c-format
msgid "output number %d not directly addressable"
msgstr "½ÐÎÏÈÖ¹æ %d ¤ÏľÀÜ¥¢¥É¥ì¥¹»ØÄê¤Ç¤­¤Þ¤»¤ó"
-#: stmt.c:1728
+#: stmt.c:1711
#, c-format
msgid "asm operand %d probably doesn't match constraints"
msgstr "asm ¥ª¥Ú¥é¥ó¥É %d ¤Ï¶²¤é¤¯À©Ìó¤ËŬ¹ç¤·¤Þ¤»¤ó"
-#: stmt.c:1738
+#: stmt.c:1721
#, c-format
msgid "use of memory input without lvalue in asm operand %d is deprecated"
msgstr ""
-#: stmt.c:1889
+#: stmt.c:1875
msgid "asm clobber conflict with output operand"
msgstr ""
-#: stmt.c:1894
+#: stmt.c:1880
msgid "asm clobber conflict with input operand"
msgstr ""
-#: stmt.c:1929
+#: stmt.c:1914
msgid "too many alternatives in `asm'"
msgstr "`asm' Ãæ¤ÎÂåÂØ¥­¡¼¥ï¡¼¥É¤¬Â¿¤¹¤®¤Þ¤¹"
-#: stmt.c:1941
+#: stmt.c:1926
msgid "operand constraints for `asm' differ in number of alternatives"
msgstr "`asm' ¤Î¥ª¥Ú¥é¥ó¥ÉÀ©Ìó¤¬ÂåÂØÈÖ¹æ¤È¤Ï°Û¤Ê¤ê¤Þ¤¹"
-#: stmt.c:1994
+#: stmt.c:1978
#, fuzzy, c-format
msgid "duplicate asm operand name '%s'"
msgstr "½ÅÊ£¤·¤¿¥á¥ó¥Ð `%s'"
-#: stmt.c:2081
+#: stmt.c:2076
msgid "missing close brace for named operand"
msgstr ""
-#: stmt.c:2109
+#: stmt.c:2104
#, fuzzy, c-format
msgid "undefined named operand '%s'"
msgstr "ÅÐÏ¿¤µ¤ì¤Æ¤¤¤Ê¤¤±é»»»Ò %s ¤Ç¤¹"
-#: stmt.c:3703
-#, c-format
-msgid "unused variable `%s'"
+#: stmt.c:2161
+msgid "%Hstatement with no effect"
+msgstr ""
+
+#: stmt.c:2317
+#, fuzzy
+msgid "%Hvalue computed is not used"
+msgstr ".da ¥Õ¥¡¥¤¥ë¤ÎÆâÍƤò»È¤¤ÀڤäƤ¤¤Þ¤»¤ó\n"
+
+#: stmt.c:3733
+#, fuzzy
+msgid "%Junused variable '%D'"
msgstr "ÊÑ¿ô `%s' ¤Ï»È¤ï¤ì¤Þ¤»¤ó¤Ç¤·¤¿"
-#: stmt.c:5189
+#: stmt.c:4508
+msgid "%Hunreachable code at beginning of %s"
+msgstr ""
+
+#: stmt.c:5136
#, c-format
msgid "enumeration value `%s' not handled in switch"
msgstr "ÎóµóÃÍ `%s' ¤Ï switch Æâ¤Ç°·¤ï¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: stmt.c:5214 stmt.c:5234
+#: stmt.c:5161 stmt.c:5181
#, c-format
msgid "case value `%ld' not in enumerated type"
msgstr "case ÃÍ `%ld' ¤ÏÎóµó·¿¤Ë¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: stmt.c:5217 stmt.c:5237
+#: stmt.c:5164 stmt.c:5184
#, c-format
msgid "case value `%ld' not in enumerated type `%s'"
msgstr "case ÃÍ `%ld' ¤ÏÎóµó·¿ `%s' ¤Ë¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: stmt.c:5310
+#: stmt.c:5401
#, fuzzy
msgid "switch missing default case"
msgstr "¤³¤ì¤¬ºÇ½é¤Î default ¥é¥Ù¥ë¤Ç¤¹"
-#: stor-layout.c:178
+#: stor-layout.c:183
msgid "type size can't be explicitly evaluated"
msgstr "·¿¤ÎÂ礭¤µ¤ÏÌÀ¼¨Åª¤Ëɾ²Á¤µ¤ì¤ë¤â¤Î¤Ç¤Ï¤¢¤ê¤¨¤Þ¤»¤ó"
-#: stor-layout.c:180
+#: stor-layout.c:185
msgid "variable-size type declared outside of any function"
msgstr "ÊÑ¿ô¥µ¥¤¥º·¿¤¬´Ø¿ô¤Î³°Â¦¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: stor-layout.c:487
-#, c-format
-msgid "size of `%s' is %d bytes"
+#: stor-layout.c:515
+#, fuzzy
+msgid "%Jsize of '%D' is %d bytes"
msgstr "`%s' ¤Î¥µ¥¤¥º¤¬ %d ¥Ð¥¤¥È¤Ç¤¹"
-#: stor-layout.c:489
-#, c-format
-msgid "size of `%s' is larger than %d bytes"
+#: stor-layout.c:517
+#, fuzzy
+msgid "%Jsize of '%D' is larger than %d bytes"
msgstr "`%s' ¤Î¥µ¥¤¥º¤¬ %d ¥Ð¥¤¥È¤è¤êÂ礭¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
-#: stor-layout.c:909 stor-layout.c:1325
-#, c-format
-msgid "packed attribute causes inefficient alignment for `%s'"
+#: stor-layout.c:883
+#, fuzzy
+msgid "%Jpacked attribute causes inefficient alignment for '%D'"
msgstr "packed °À­¤Ï `%s' ¤ËÂФ·¤ÆÉÔ¸úΨ¤Ê¥¢¥é¥¤¥ó¥á¥ó¥È¤ò°ú¤­µ¯¤³¤·¤Þ¤¹"
-#: stor-layout.c:911 stor-layout.c:1327
-#, c-format
-msgid "packed attribute is unnecessary for `%s'"
+#: stor-layout.c:886
+#, fuzzy
+msgid "%Jpacked attribute is unnecessary for '%D'"
msgstr "packed °À­¤Ï `%s' ¤Ë¤ÏɬÍפ¢¤ê¤Þ¤»¤ó"
-#: stor-layout.c:926
-#, c-format
-msgid "padding struct to align `%s'"
+#: stor-layout.c:902
+#, fuzzy
+msgid "%Jpadding struct to align '%D'"
msgstr "`%s' ¤ò¥¢¥é¥¤¥ó¤¹¤ë¤¿¤á¤Ë¹½Â¤ÂΤò¥Ñ¥Ç¥£¥ó¥°¤·¤Þ¤¹"
-#: stor-layout.c:1289
+#: stor-layout.c:1245
msgid "padding struct size to alignment boundary"
msgstr "¥¢¥é¥¤¥ó¥á¥ó¥È¶­³¦¤Î¥µ¥¤¥º¤Ë¹½Â¤ÂΤò¥Ñ¥Ç¥£¥ó¥°¤·¤Þ¤¹"
-#: stor-layout.c:1332
+#: stor-layout.c:1275
+#, c-format
+msgid "packed attribute causes inefficient alignment for `%s'"
+msgstr "packed °À­¤Ï `%s' ¤ËÂФ·¤ÆÉÔ¸úΨ¤Ê¥¢¥é¥¤¥ó¥á¥ó¥È¤ò°ú¤­µ¯¤³¤·¤Þ¤¹"
+
+#: stor-layout.c:1277
+#, c-format
+msgid "packed attribute is unnecessary for `%s'"
+msgstr "packed °À­¤Ï `%s' ¤Ë¤ÏɬÍפ¢¤ê¤Þ¤»¤ó"
+
+#: stor-layout.c:1282
msgid "packed attribute causes inefficient alignment"
msgstr "packed °À­¤ÏÉÔ¸úΨ¤Ê¥¢¥é¥¤¥ó¥á¥ó¥È¤ò°ú¤­µ¯¤³¤·¤Þ¤¹"
-#: stor-layout.c:1334
+#: stor-layout.c:1284
msgid "packed attribute is unnecessary"
msgstr "packed °À­¤ÏɬÍפ¢¤ê¤Þ¤»¤ó"
-#: timevar.c:322
+#: targhooks.c:154
+msgid "__builtin_saveregs not supported by this target"
+msgstr "__builtin_saveregs ¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+
+#: timevar.c:314
#, c-format
msgid "cannot timevar_pop '%s' when top of timevars stack is '%s'"
msgstr ""
-#: timevar.c:453
+#: timevar.c:440
msgid ""
"\n"
"Execution times (seconds)\n"
@@ -7127,1018 +7030,124 @@ msgstr ""
"¼Â¹Ô²ó¿ô (ÉÃ)\n"
#. Print total time.
-#: timevar.c:503
+#: timevar.c:490
msgid " TOTAL :"
msgstr " ¹ç·× :"
-#: timevar.c:539
+#: timevar.c:513
#, c-format
msgid "time in %s: %ld.%06ld (%ld%%)\n"
msgstr "%s ¤Ç¤Î»þ´Ö: %ld.%06ld (%ld%%)\n"
-#: tlink.c:399
+#: tlink.c:377
#, c-format
msgid "collect: reading %s\n"
msgstr "collect: %s ¤òÆɤ߹þ¤ß¤Þ¤¹\n"
-#: tlink.c:502
+#: tlink.c:478
#, c-format
msgid "collect: recompiling %s\n"
msgstr "collect: %s ¤òºÆ¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹\n"
-#: tlink.c:674
+#: tlink.c:654
#, c-format
msgid "collect: tweaking %s in %s\n"
msgstr "collect: %s ¤ò°ú¤ÃÄ¥¤ê¤Þ¤¹(%s Æâ)\n"
-#: tlink.c:721
+#: tlink.c:700
+#, c-format
msgid "collect: relinking\n"
msgstr "collect: ºÆ¥ê¥ó¥¯¤·¤Þ¤¹\n"
-#: tlink.c:730
+#: tlink.c:709
#, c-format
msgid "ld returned %d exit status"
msgstr "ld ¤Ï¥¹¥Æ¡¼¥¿¥¹ %d ¤Ç½ªÎ»¤·¤Þ¤·¤¿"
-#: toplev.c:920
-msgid "Generate debugging info in default format"
-msgstr "¥Ç¥Õ¥©¥ë¥È·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:921
-msgid "Generate debugging info in default extended format"
-msgstr "¥Ç¥Õ¥©¥ë¥È³ÈÄ¥·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:923
-msgid "Generate STABS format debug info"
-msgstr "STABS ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:924
-msgid "Generate extended STABS format debug info"
-msgstr "³ÈÄ¥ STABS ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:927
-msgid "Generate DWARF-1 format debug info"
-msgstr "DWARF-1 ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:929
-msgid "Generate extended DWARF-1 format debug info"
-msgstr "³ÈÄ¥ DWARF-1 ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:932
-msgid "Generate DWARF-2 debug info"
-msgstr "DWARF-2 ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:935
-msgid "Generate XCOFF format debug info"
-msgstr "XCOFF ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:936
-msgid "Generate extended XCOFF format debug info"
-msgstr "³ÈÄ¥ XCOFF ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:939
-msgid "Generate COFF format debug info"
-msgstr "COFF ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:942
-#, fuzzy
-msgid "Generate VMS format debug info"
-msgstr "STABS ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:981
-#, fuzzy
-msgid "Perform DWARF2 duplicate elimination"
-msgstr "ËöÈø¸Æ¤Ó½Ð¤·ºÇŬ²½¤ò¹Ô¤¦"
-
-#: toplev.c:983
-msgid "Do not store floats in registers"
-msgstr "¥ì¥¸¥¹¥¿¤ËÉâÆ°¾®¿ô¤ò³ÊǼ¤·¤Ê¤¤"
-
-#: toplev.c:985
-msgid "Consider all mem refs through pointers as volatile"
-msgstr "¥Ý¥¤¥ó¥¿·Ðͳ¤Î¥á¥â¥ê»²¾È¤òÁ´¤Æ volatile ¤È¤ß¤Ê¤¹"
-
-#: toplev.c:987
-msgid "Consider all mem refs to global data to be volatile"
-msgstr "Âç°è¥Ç¡¼¥¿¤Ø¤Î¥á¥â¥ê»²¾È¤òÁ´¤Æ volatile ¤È¤ß¤Ê¤¹"
-
-#: toplev.c:989
-msgid "Consider all mem refs to static data to be volatile"
-msgstr "ÀÅŪ¥Ç¡¼¥¿¤Ø¤Î¥á¥â¥ê»²¾È¤òÁ´¤Æ volatile ¤È¤ß¤Ê¤¹"
-
-#: toplev.c:991
-msgid "Defer popping functions args from stack until later"
-msgstr "´Ø¿ô°ú¿ô¤ò¥¹¥¿¥Ã¥¯¤«¤é pop ¤¹¤ë¤Î¤ò¸Æ¤Ó½Ð¤·¸å¤Þ¤ÇÃ٤餻¤ë"
-
-#: toplev.c:993
-msgid "When possible do not generate stack frames"
-msgstr "²Äǽ¤Ê¾ì¹ç¡¢¥¹¥¿¥Ã¥¯¥Õ¥ì¡¼¥à¤òÀ¸À®¤·¤Ê¤¤"
-
-#: toplev.c:995
-msgid "Optimize sibling and tail recursive calls"
-msgstr "sibling ¸Æ¤Ó½Ð¤·¤äËöÈøºÆµ¢¸Æ¤Ó½Ð¤·¤òºÇŬ²½¤¹¤ë"
-
-#: toplev.c:997
-msgid "Perform superblock formation via tail duplication"
-msgstr ""
-
-#: toplev.c:999
-msgid "When running CSE, follow jumps to their targets"
-msgstr "CSE ¤ÇÆ°ºî¤¹¤ë¤È¤­¡¢¤½¤ì¤é¤Î¥¿¡¼¥²¥Ã¥È¤Ø¤Î¥¸¥ã¥ó¥×¤ËÄɿ魯¤ë"
-
-#: toplev.c:1001
-msgid "When running CSE, follow conditional jumps"
-msgstr "CSE ¤ÇÆ°ºî¤¹¤ë¤È¤­¡¢¾ò·ï¥¸¥ã¥ó¥×¤ËÄɿ魯¤ë"
-
-#: toplev.c:1003
-#, fuzzy
-msgid "Perform a number of minor, expensive optimizations"
-msgstr "ÌÜΩ¤¿¤Ê¤¤¡¢¥³¥¹¥È¤Î¤«¤«¤ëºÇŬ²½¤ò¹Ô¤Ê¤¦"
-
-#: toplev.c:1005
-#, fuzzy
-msgid "Perform jump threading optimizations"
-msgstr "¥¸¥ã¥ó¥×ʬ´ôºÇŬ²½¤ò¹Ô¤Ê¤¦"
-
-#: toplev.c:1007
-#, fuzzy
-msgid "Perform strength reduction optimizations"
-msgstr "¶¯Åٺ︺ºÇŬ²½¤ò¹Ô¤Ê¤¦"
-
-#: toplev.c:1009
-msgid "Perform loop unrolling when iteration count is known"
-msgstr "È¿Éü²ó¿ô¤¬´ûÃΤΤȤ­¡¢¥ë¡¼¥×Ÿ³«¤ò¹Ô¤Ê¤¦"
-
-#: toplev.c:1011
-msgid "Perform loop unrolling for all loops"
-msgstr "Á´¤Æ¤Î¥ë¡¼¥×¤Ç¥ë¡¼¥×Ÿ³«¤ò¹Ô¤Ê¤¦"
-
-#: toplev.c:1013
-msgid "Generate prefetch instructions, if available, for arrays in loops"
-msgstr ""
-
-#: toplev.c:1015
-msgid "Force all loop invariant computations out of loops"
-msgstr "¥ë¡¼¥×Ãæ¤ËÉÔÊѤʷ׻»¤ò¥ë¡¼¥×¤Î³°¤Ë°ÜÆ°¤¹¤ë"
-
-#: toplev.c:1017
-msgid "Strength reduce all loop general induction variables"
-msgstr "¥ë¡¼¥×¤ÎÃæ¤ÎÁ´¤Æ¤Î°ìÈÌͶƳÊÑ¿ô¤ò¶¯Åٺ︺¤¹¤ë"
-
-#: toplev.c:1019
-msgid "Store strings in writable data section"
-msgstr "ʸ»úÎó¤ò½ñ¤­¹þ¤ß²Äǽ¥Ç¡¼¥¿¥»¥¯¥·¥ç¥ó¤Ë³ÊǼ¤¹¤ë"
-
-#: toplev.c:1021
-#, fuzzy
-msgid "Enable machine specific peephole optimizations"
-msgstr "µ¡¼ï¸ÇÍ­¤ÎÇÁ¤­·êºÇŬ²½¤òÍ­¸ú¤Ë¤¹¤ë"
-
-#: toplev.c:1023
-msgid "Copy memory operands into registers before using"
-msgstr "¥á¥â¥ê¥ª¥Ú¥é¥ó¥É¤òÍøÍѤ¹¤ëÁ°¤Ë¥ì¥¸¥¹¥¿¤Ø¥³¥Ô¡¼¤¹¤ë"
-
-#: toplev.c:1025
-msgid "Copy memory address constants into regs before using"
-msgstr "¥á¥â¥ê¥¢¥É¥ì¥¹Äê¿ô¤òÍøÍѤ¹¤ëÁ°¤Ë¥ì¥¸¥¹¥¿¤Ø¥³¥Ô¡¼¤¹¤ë"
-
-#: toplev.c:1027
-msgid "Allow function addresses to be held in registers"
-msgstr "´Ø¿ô¥¢¥É¥ì¥¹¤ò¥ì¥¸¥¹¥¿¤Ë»ý¤¿¤»¤ë»ö¤òµö²Ä¤¹¤ë"
-
-#: toplev.c:1029
-msgid "Integrate simple functions into their callers"
-msgstr "ñ½ã¤Ê´Ø¿ô¤ò¸Æ¤Ó½Ð¤·Â¦¤ËÅý¹ç¤¹¤ë"
-
-#: toplev.c:1031
-msgid "Generate code for funcs even if they are fully inlined"
-msgstr "Á´¤Æ¥¤¥ó¥é¥¤¥ó¤È¤µ¤ì¤¿¤È¤·¤Æ¤â´Ø¿ô¤Î¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:1033
-msgid "Pay attention to the 'inline' keyword"
-msgstr "'inline' ¥­¡¼¥ï¡¼¥É¤ËÃí°Õ¤òʧ¤¦"
-
-#: toplev.c:1035
-msgid "Emit static const variables even if they are not used"
-msgstr "»ÈÍѤµ¤ì¤Ê¤¤ÀÅŪÄê¿ôÊÑ¿ô¤Ç¤¢¤Ã¤Æ¤â½ÐÎϤ¹¤ë"
-
-#: toplev.c:1037
-msgid "Check for syntax errors, then stop"
-msgstr "ʸˡ¥¨¥é¡¼¤ò¸¡½Ð¤·¤Æ¡¢¤½¤³¤ÇÄä»ß¤¹¤ë"
-
-#: toplev.c:1039
-msgid "Mark data as shared rather than private"
-msgstr "¥Ç¡¼¥¿¤ò¥×¥é¥¤¥Ù¡¼¥È¤Ç¤Ï¤Ê¤¯¶¦Í­¤µ¤ì¤ë¤è¤¦¥Þ¡¼¥¯¤¹¤ë"
-
-#: toplev.c:1041
-msgid "Enable saving registers around function calls"
-msgstr "´Ø¿ô¸Æ¤Ó½Ð¤·¤ÎÁ°¸å¤Ç¥ì¥¸¥¹¥¿¤ÎÊݸ¤òÍ­¸ú¤Ë¤¹¤ë"
-
-#: toplev.c:1043
-msgid "Return 'short' aggregates in memory, not registers"
-msgstr "'¾®¤µ¤Ê' ½¸¹çÂΤò¥ì¥¸¥¹¥¿¤Ç¤Ï¤Ê¤¯¥á¥â¥ê¤Ë³ÊǼ¤·¤ÆÊÖ¤¹"
-
-#: toplev.c:1045
-msgid "Return 'short' aggregates in registers"
-msgstr "'¾®¤µ¤Ê' ½¸¹çÂΤò¥ì¥¸¥¹¥¿¤Ë³ÊǼ¤·¤ÆÊÖ¤¹"
-
-#: toplev.c:1047
-msgid "Attempt to fill delay slots of branch instructions"
-msgstr "ʬ´ôÌ¿Îá¤ÎÃٱ䥹¥í¥Ã¥È¤ò»È¤¦¤³¤È¤ò»î¤ß¤ë"
-
-#: toplev.c:1049
-msgid "Perform the global common subexpression elimination"
-msgstr "¥°¥í¡¼¥Ð¥ë¶¦ÄÌÉôʬ¼°¤ò½üµî¤¹¤ë"
-
-#: toplev.c:1051
-#, fuzzy
-msgid "Perform enhanced load motion during global subexpression elimination"
-msgstr "¥°¥í¡¼¥Ð¥ë¶¦ÄÌÉôʬ¼°¤ò½üµî¤¹¤ë"
-
-#: toplev.c:1053
-#, fuzzy
-msgid "Perform store motion after global subexpression elimination"
-msgstr "¥°¥í¡¼¥Ð¥ë¶¦ÄÌÉôʬ¼°¤ò½üµî¤¹¤ë"
-
-#: toplev.c:1055
-#, fuzzy
-msgid "Perform the loop optimizations"
-msgstr "ËöÈø¸Æ¤Ó½Ð¤·ºÇŬ²½¤ò¹Ô¤¦"
-
-#: toplev.c:1057
-#, fuzzy
-msgid "Perform cross-jumping optimization"
-msgstr "¥¸¥ã¥ó¥×ʬ´ôºÇŬ²½¤ò¹Ô¤Ê¤¦"
-
-#: toplev.c:1059
-msgid "Perform conversion of conditional jumps to branchless equivalents"
-msgstr ""
-
-#: toplev.c:1061
-#, fuzzy
-msgid "Perform conversion of conditional jumps to conditional execution"
-msgstr "¾ò·ïŪ¤Ê¼Â¹Ô¤Ø¤ÎÊѹ¹¤Î¤¿¤á¤ÎïçÃͤòÊѹ¹¤¹¤ë"
-
-#: toplev.c:1063
-#, fuzzy
-msgid "Run CSE pass after loop optimizations"
-msgstr "¥ë¡¼¥×ºÇŬ²½¸å¤Ë¶¦ÄÌÉôʬ¼°½üµî²áÄø¤ò¼Â¹Ô"
-
-#: toplev.c:1065
-#, fuzzy
-msgid "Run the loop optimizer twice"
-msgstr "¥ë¡¼¥×ºÇŬ²½¤òÆó²ó¼Â¹Ô¤¹¤ë"
-
-#: toplev.c:1067
-msgid "Delete useless null pointer checks"
-msgstr "̵°ÕÌ£¤Ê null ¥Ý¥¤¥ó¥¿¸¡ºº¤òºï½ü¤¹¤ë"
-
-#: toplev.c:1069
-msgid "Reschedule instructions before register allocation"
-msgstr "¥ì¥¸¥¹¥¿³ÎÊݤÎÁ°¤ËÌ¿Îá¤òÊ¤Ùľ¤¹"
-
-#: toplev.c:1071
-msgid "Reschedule instructions after register allocation"
-msgstr "¥ì¥¸¥¹¥¿³ÎÊݤθå¤ÇÌ¿Îá¤òÊ¤Ùľ¤¹"
-
-#: toplev.c:1073
-msgid "Enable scheduling across basic blocks"
-msgstr "´ðËÜ¥Ö¥í¥Ã¥¯¤ò¸Ù¤°Ì¿ÎáÇÛÃÖ¤òÍ­¸ú¤Ë¤¹¤ë"
-
-#: toplev.c:1075
-msgid "Allow speculative motion of non-loads"
-msgstr "Èó¥í¡¼¥É¤Ç¤ÎÉԳμ¤ÊÆ°ºî¤òµö²Ä¤¹¤ë"
-
-#: toplev.c:1077
-msgid "Allow speculative motion of some loads"
-msgstr "¤¤¤¯¤Ä¤«¤Î¥í¡¼¥É¤Ç¤ÎÉԳμ¤ÊÆ°ºî¤òµö²Ä¤¹¤ë"
-
-#: toplev.c:1079
-msgid "Allow speculative motion of more loads"
-msgstr "¤è¤ê¿¤¯¤Î¥í¡¼¥É¤Ç¤ÎÉԳμ¤ÊÆ°ºî¤òµö²Ä¤¹¤ë"
-
-#: toplev.c:1081
-msgid "Replace add,compare,branch with branch on count reg"
-msgstr "²Ã»»¡¢Èæ³Ó¥Ö¥é¥ó¥Á¤ÎÂå¤ï¤ê¤Ë¥«¥¦¥ó¥È¥ì¥¸¥¹¥¿¤Î¥Ö¥é¥ó¥Á¤ò»È¤¦"
-
-#: toplev.c:1083
-msgid "Generate position independent code, if possible"
-msgstr "²Äǽ¤Ç¤¢¤ì¤Ð°ÌÃÖÆÈΩ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:1086
-msgid "Enable exception handling"
-msgstr "Îã³°Ê᪤òÍ­¸ú¤Ë¤¹¤ë"
-
-#: toplev.c:1088
-msgid "Just generate unwind tables for exception handling"
-msgstr "´¬¤­Ìᤷ¤ò¹Ô¤Ê¤¦Îã³°Êä­Íѥơ¼¥Ö¥ë¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:1090
-#, fuzzy
-msgid "Generate unwind tables exact at each instruction boundary"
-msgstr "´¬¤­Ìᤷ¤ò¹Ô¤Ê¤¦Îã³°Êä­Íѥơ¼¥Ö¥ë¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:1092
-msgid "Support synchronous non-call exceptions"
-msgstr "Ʊ´üÈó¸Æ¤Ó½Ð¤·Îã³°¤ò¥µ¥Ý¡¼¥È¤¹¤ë"
-
-#: toplev.c:1094
-msgid "Insert arc based program profiling code"
-msgstr "¥×¥í¥°¥é¥à¤¬¥³¡¼¥É¥×¥í¥Õ¥¡¥¤¥ë¤¹¤ë¸µ¤Ë¤Ê¤ë¸Ì¤òÁÞÆþ¤¹¤ë"
-
-#: toplev.c:1096
-msgid "Create data files needed by gcov"
-msgstr "gcov ¤¬É¬ÍפȤ¹¤ë¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ë"
-
-#: toplev.c:1098
-msgid "Use profiling information for branch probabilities"
-msgstr "ʬ´ô·ÐÏ©¿ä¬ÍѤΥץí¥Õ¥¡¥¤¥ë¾ðÊó¤òÍøÍѤ¹¤ë"
-
-#: toplev.c:1100
-#, fuzzy
-msgid "Enable basic program profiling code"
-msgstr "¥×¥í¥°¥é¥à¤¬¥³¡¼¥É¥×¥í¥Õ¥¡¥¤¥ë¤¹¤ë¸µ¤Ë¤Ê¤ë¸Ì¤òÁÞÆþ¤¹¤ë"
-
-#: toplev.c:1102
-msgid "Reorder basic blocks to improve code placement"
-msgstr "¥³¡¼¥ÉÇÛÃÖ¤ò²þÁ±¤¹¤ë¤¿¤á¤Ë´ðËÜ¥Ö¥í¥Ã¥¯¤òºÆÀ°Íý¤¹¤ë"
-
-#: toplev.c:1104
-#, fuzzy
-msgid "Reorder functions to improve code placement"
-msgstr "¥³¡¼¥ÉÇÛÃÖ¤ò²þÁ±¤¹¤ë¤¿¤á¤Ë´ðËÜ¥Ö¥í¥Ã¥¯¤òºÆÀ°Íý¤¹¤ë"
-
-#: toplev.c:1106
-msgid "Do the register renaming optimization pass"
-msgstr "ºÇŬ²½²áÄø¤Î¥ì¥¸¥¹¥¿¤Ä¤±ÊѤ¨¤ò¹Ô¤Ê¤¦"
-
-#: toplev.c:1108
-#, fuzzy
-msgid "Do the register copy-propagation optimization pass"
-msgstr "ºÇŬ²½²áÄø¤Î¥ì¥¸¥¹¥¿¤Ä¤±ÊѤ¨¤ò¹Ô¤Ê¤¦"
-
-#: toplev.c:1110
-#, fuzzy
-msgid "Do not put uninitialized globals in the common section"
-msgstr "Âç°èÊÑ¿ôÅù¤ò½é´ü²½¤µ¤ì¤Ê¤¤¥³¥â¥ó¥»¥¯¥·¥ç¥ó¤ËÃÖ¤«¤Ê¤¤"
-
-#: toplev.c:1112
-msgid "Do not generate .size directives"
-msgstr ".size µ¿»÷Ì¿Îá¤òÀ¸À®¤·¤Ê¤¤"
-
-#: toplev.c:1114
-msgid "place each function into its own section"
-msgstr "³Æ¡¹¤Î´Ø¿ô¤ò¤½¤ì¼«¿È¤Î¥»¥¯¥·¥ç¥ó¤ËÇÛÃÖ¤¹¤ë"
-
-#: toplev.c:1116
-msgid "place data items into their own section"
-msgstr "¥Ç¡¼¥¿¹àÌܤò¤½¤ì¤é¼«¿È¤Î¥»¥¯¥·¥ç¥ó¤ËÇÛÃÖ¤¹¤ë"
-
-#: toplev.c:1118
-#, fuzzy
-msgid "Add extra commentary to assembler output"
-msgstr ";ʬ¤Ê¥³¥á¥ó¥È¤ò¥¢¥»¥ó¥Ö¥é½ÐÎϤËÄɲ乤ë"
-
-#: toplev.c:1120
-#, fuzzy
-msgid "Output GNU ld formatted global initializers"
-msgstr "GNU ld ·Á¼°¤ÎÂç°è½é´ü²½»Ò¤ò½ÐÎϤ¹¤ë"
-
-#: toplev.c:1122
-#, fuzzy
-msgid "Enables a register move optimization"
-msgstr "°ÜÆ°Ì¿ÎáºÇŬ²½¥ì¥¸¥¹¥¿¤òÍ­¸ú¤Ë¤¹¤ë"
-
-#: toplev.c:1124
-msgid "Do the full regmove optimization pass"
-msgstr "ºÇŬ²½²áÄø¤ÇºÇÂç¸Â¤Î regmove ¤ò¹Ô¤Ê¤¦"
-
-#: toplev.c:1126
-msgid "Pack structure members together without holes"
-msgstr "¹½Â¤ÂÎ¥á¥ó¥Ð¤ò·ê¤¬³«¤«¤Ê¤¤¤è¤¦¤Ë¥Ñ¥Ã¥¯¤¹¤ë"
-
-#: toplev.c:1128
-msgid "Insert stack checking code into the program"
-msgstr "¥×¥í¥°¥é¥à¤Ë¥¹¥¿¥Ã¥¯¶­³¦¸¡½Ð¥³¡¼¥É¤òÁÞÆþ¤¹¤ë"
-
-#: toplev.c:1130
-msgid "Specify that arguments may alias each other & globals"
-msgstr "°ú¿ô¤ÈÂç°è¥Ç¡¼¥¿¤ä¾¤Î°ú¿ô¤ÈÊÌ̾¤Ë¤Ê¤ê¤¦¤ë»ö¤ò»ØÄꤹ¤ë"
-
-#: toplev.c:1132
-msgid "Assume arguments may alias globals but not each other"
-msgstr "°ú¿ô¤ÈÂç°è¥Ç¡¼¥¿¤ÏÊÌ̾¤Ë¤Ê¤ê¤¦¤ë¤¬Â¾¤Î°ú¿ô¤È¤ÏÊÌ̾¤Ç¤Ï¤Ê¤¤¤È¤ß¤Ê¤¹"
-
-#: toplev.c:1134
-msgid "Assume arguments do not alias each other or globals"
-msgstr "°ú¿ô¤¬Âç°è¥Ç¡¼¥¿¤ä¾¤Î°ú¿ô¤ÈÊÌ̾¤Ë¤Ï¤Ê¤é¤Ê¤¤¤È¤ß¤Ê¤¹"
-
-#: toplev.c:1136
-msgid "Assume strict aliasing rules apply"
-msgstr "¸·Ì©¤ÊÊÌ̾µ¬Â§¤ËŬ¹ç¤¹¤ë¤È¤ß¤Ê¤¹"
-
-#: toplev.c:1138
-msgid "Align the start of loops"
-msgstr "¥ë¡¼¥×¤Î³«»Ï¤ò¥¢¥é¥¤¥ó¤¹¤ë"
-
-#: toplev.c:1140
-msgid "Align labels which are only reached by jumping"
-msgstr "¥é¥Ù¥ë¤Î¤¦¤Á¥¸¥ã¥ó¥×ÅþãÀè¤È¤Ê¤ë¤â¤Î¤À¤±¤ò¥¢¥é¥¤¥ó¤¹¤ë"
-
-#: toplev.c:1142
-msgid "Align all labels"
-msgstr "Á´¤Æ¤Î¥é¥Ù¥ë¤ò¥¢¥é¥¤¥ó¤¹¤ë"
-
-#: toplev.c:1144
-msgid "Align the start of functions"
-msgstr "´Ø¿ô¤Î³«»Ï¤ò¥¢¥é¥¤¥ó¤¹¤ë"
-
-#: toplev.c:1146
-msgid "Attempt to merge identical constants across compilation units"
-msgstr ""
-
-#: toplev.c:1148
-msgid "Attempt to merge identical constants and constant variables"
-msgstr ""
-
-#: toplev.c:1150
-msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
-msgstr "¥Ç¥Ð¥Ã¥°¥À¥ó¥×¤ÇÌ¿ÎáÈÖ¹æ¤È¹ÔÈÖ¹æ¥Î¡¼¥È¤Î½ÐÎϤòÍÞÀ©¤¹¤ë"
-
-#: toplev.c:1152
-msgid "Instrument function entry/exit with profiling calls"
-msgstr "´Ø¿ô¤ÎÆþ¤ê¸ý/½Ð¸ý¤Ç¥×¥í¥Õ¥¡¥¤¥ë¸Æ¤Ó½Ð¤·¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:1154
-#, fuzzy
-msgid "Put zero initialized data in the bss section"
-msgstr "Âç°èÊÑ¿ôÅù¤ò½é´ü²½¤µ¤ì¤Ê¤¤¥³¥â¥ó¥»¥¯¥·¥ç¥ó¤ËÃÖ¤«¤Ê¤¤"
-
-#: toplev.c:1156
-msgid "Enable SSA optimizations"
-msgstr "SSA ºÇŬ²½¤òÍ­¸ú¤Ë¤¹¤ë"
-
-#: toplev.c:1158
-#, fuzzy
-msgid "Enable SSA conditional constant propagation"
-msgstr "¾ò·ïŪ move Ì¿Îá¤ÎÍøÍѤòÍ­¸ú¤Ë¤¹¤ë"
-
-#: toplev.c:1160
-#, fuzzy
-msgid "Enable aggressive SSA dead code elimination"
-msgstr "¥Ç¥Ã¥É¥³¡¼¥É¤Î½üµî¤ò¹Ô¤Ê¤¦"
-
-#: toplev.c:1162
-msgid "External symbols have a leading underscore"
-msgstr "³°Éô¥·¥ó¥Ü¥ë¤ËƬʸ»ú¥¢¥ó¥À¡¼¥¹¥³¥¢¤ò»ý¤¿¤»¤ë"
-
-#: toplev.c:1164
-msgid "Process #ident directives"
-msgstr "#ident ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤ò½èÍý¤¹¤ë"
-
-#: toplev.c:1166
-msgid "Enables an rtl peephole pass run before sched2"
-msgstr "ÂèÆóÌ¿ÎáÇÛÃÖ¤ÎÁ°¤Ç rtl ÇÁ¤­·ê²áÄø¤òÍ­¸ú¤Ë¤¹¤ë"
-
-#: toplev.c:1168
-msgid "Assume no NaNs or +-Infs are generated"
-msgstr ""
-
-#: toplev.c:1170
-msgid "Enables guessing of branch probabilities"
-msgstr "ʬ´ô·ÐÏ©¿ä¬¤òÍ­¸ú¤Ë¤¹¤ë"
-
-#: toplev.c:1172
-msgid "Set errno after built-in math functions"
-msgstr "ÁȤ߹þ¤ß¿ô³Ø´Ø¿ô¤Î¸å¤Ë errno ¤ò¥»¥Ã¥È¤¹¤ë"
-
-#: toplev.c:1174
-#, fuzzy
-msgid "Floating-point operations can trap"
-msgstr "ÉâÆ°¾®¿ôÅÀ¤Î¨Ãͤò½ÐÎϤ¹¤ëºÝ¤Ë¥È¥é¥Ã¥×¤¬¤«¤«¤ê¤Þ¤·¤¿"
-
-#: toplev.c:1176
-msgid "Allow math optimizations that may violate IEEE or ANSI standards"
-msgstr ""
-
-#: toplev.c:1178
-msgid "Disable optimizations observable by IEEE signaling NaNs"
-msgstr ""
-
-#: toplev.c:1180
-#, fuzzy
-msgid "Generate code to check bounds before indexing arrays"
-msgstr "ÇÛÎó¤Îź»ú¤Èź»ú¶­³¦¤ò¸¡ºº¤¹¤ë¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-
-#: toplev.c:1182
-msgid "Convert floating point constant to single precision constant"
-msgstr "ÉâÆ°¾®¿ôÅÀÄê¿ô¤òñÀºÅÙÄê¿ô¤ËÊÑ´¹¤¹¤ë"
-
-#: toplev.c:1184
-msgid "Report time taken by each compiler pass at end of run"
-msgstr "¼Â¹Ô½ªÎ»»þ¤Ë¥³¥ó¥Ñ¥¤¥é¤Î³Æ²áÄø¤ËÍפ·¤¿»þ´Ö¤òÊó¹ð¤¹¤ë"
-
-#: toplev.c:1186
-msgid "Report on permanent memory allocation at end of run"
-msgstr "¼Â¹Ô½ªÎ»»þ¤Ë±Ê³Ū¤Ë³ÎÊݤµ¤ì¤¿¥á¥â¥ê¤òÊó¹ð¤¹¤ë"
-
-#: toplev.c:1188
-#, fuzzy
-msgid "Trap for signed overflow in addition / subtraction / multiplication"
-msgstr "Éä¹çÉÕ¤­¤Î²Ã»»/¸º»»/¾è»»¤Ç¤Î·å¤¢¤Õ¤ì¤ò¥È¥é¥Ã¥×¤¹¤ë"
-
-#: toplev.c:1190
-#, fuzzy
-msgid "Use graph coloring register allocation."
-msgstr "¥ì¥¸¥¹¥¿³ÎÊݤÎÁ°¤ËÌ¿Îá¤òÊ¤Ùľ¤¹"
-
-#: toplev.c:1207
-#, fuzzy
-msgid "Compile just for ISO C90"
-msgstr "ISO C89 ÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
-
-#: toplev.c:1209
-msgid "Determine language standard"
-msgstr "¸À¸ì¤Îɸ½à¤ò·èÄꤹ¤ë"
-
-#: toplev.c:1213
-#, fuzzy
-msgid "Make bit-fields by unsigned by default"
-msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤ò¥Ç¥Õ¥©¥ë¥È¤ÇÉä¹ç̵¤·¤È¤¹¤ë"
-
-#: toplev.c:1217
-msgid "Make 'char' be signed by default"
-msgstr "'char' ¤ò¥Ç¥Õ¥©¥ë¥È¤ÇÉä¹çÉÕ¤­¤È¤¹¤ë"
-
-#: toplev.c:1219
-msgid "Make 'char' be unsigned by default"
-msgstr "'char' ¤ò¥Ç¥Õ¥©¥ë¥È¤ÇÉä¹ç̵¤·¤È¤¹¤ë"
-
-#: toplev.c:1225
-#, fuzzy
-msgid "Do not recognize the 'asm' keyword"
-msgstr "'asm' ͽÌó¸ì¤òǧ¼±¤µ¤»¤Ê¤¤"
+#: toplev.c:1226
+#, c-format
+msgid "%s "
+msgstr "%s "
#: toplev.c:1228
-#, fuzzy
-msgid "Do not recognize any built in functions"
-msgstr "¤¤¤¯¤Ä¤«¤ÎÁȤ߹þ¤ß´Ø¿ô¤òǧ¼±¤µ¤»¤Ê¤¤"
-
-#: toplev.c:1230
-msgid "Assume normal C execution environment"
-msgstr "Ä̾ï¤Î C ¼Â¹Ô´Ä¶­¤òÁ°Äó¤È¤¹¤ë"
-
-#: toplev.c:1233
-msgid "Assume that standard libraries & main might not exist"
-msgstr "ɸ½à¥é¥¤¥Ö¥é¥ê¤ä main ¤¬Â¸ºß¤·¤Ê¤¤²ÄǽÀ­¤¬¤¢¤ë¤â¤Î¤È¤¹¤ë"
-
-#: toplev.c:1236
-msgid "Allow different types as args of ? operator"
-msgstr "? ±é»»»Ò¤Î°ú¿ô¤È¤·¤Æ°Û¤Ê¤Ã¤¿·¿¤òµöÍƤ¹¤ë"
-
-#: toplev.c:1239
-msgid "Allow the use of $ inside identifiers"
-msgstr "¼±ÊÌ»ÒÃæ¤Ç¤Î $ ¤Î»ÈÍѤòµöÍƤ¹¤ë"
-
-#: toplev.c:1244
-msgid "Use the same size for double as for float"
-msgstr "double ¤Î¥µ¥¤¥º¤ò float ¤ÈƱ¤¸¤È¤·¤Æ»ÈÍѤ¹¤ë"
-
-#: toplev.c:1247
-msgid "Use the smallest fitting integer to hold enums"
-msgstr "Îóµó·¿¤¬ÊÝ»ý¤Ç¤­¤ëºÇ¾®¤ÎÀ°¿ô·¿¤ò»ÈÍѤ¹¤ë"
-
-#: toplev.c:1250
-msgid "Override the underlying type for wchar_t to `unsigned short'"
-msgstr "wchar_t ¤Îº¬ËÜŪ¤Ê·¿¤ò `unsigned short' ¤Èʤ¤¹"
-
-#: toplev.c:1254
-msgid "Enable most warning messages"
-msgstr "Ëؤó¤É¤Î·Ù¹ð¥á¥Ã¥»¡¼¥¸¤òÍ­¸ú¤Ë¤¹¤ë"
-
-#: toplev.c:1256
-msgid "Warn about casting functions to incompatible types"
-msgstr "·¿¤Ë¸ß´¹À­¤Î¤Ê¤¤´Ø¿ô¤Î¥­¥ã¥¹¥È¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1259
-msgid "Warn about functions which might be candidates for format attributes"
-msgstr "format °À­¤ò¤Î¸õÊä¤È¤Ê¤ê¤½¤¦¤Ê´Ø¿ô¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1262
-msgid "Warn about casts which discard qualifiers"
-msgstr "½¤¾þ»Ò¤ò¼è¤êµî¤ë¥­¥ã¥¹¥È¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1265
-msgid "Warn about subscripts whose type is 'char'"
-msgstr "ź»ú¤Î·¿¤¬ 'char' ¤Ç¤¢¤ì¤Ð·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1268 toplev.c:1271
-msgid "Warn if nested comments are detected"
-msgstr "Æþ¤ì»Ò¤Ë¤Ê¤Ã¤¿¥³¥á¥ó¥È¤ò¸¡½Ð¤·¤¿¤È¤­¤Ë·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1274
-msgid "Warn about possibly confusing type conversions"
-msgstr "·¿ÊÑ´¹¤¬º®Í𤹤ë²ÄǽÀ­¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1278
-#, fuzzy
-msgid "Do not warn about compile-time integer division by zero"
-msgstr "À°¿ô¤Î¥¼¥í½ü»»¤ò¥È¥é¥Ã¥×¤·¤Ê¤¤"
-
-#: toplev.c:1280
-msgid "Warn about testing equality of floating point numbers"
-msgstr "ÉâÆ°¾®¿ôÅÀ¿ô¤ÎÅù²Á¥Æ¥¹¥È¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1283
-msgid "Warn about printf/scanf/strftime/strfmon format anomalies"
-msgstr "printf/scanf/strftime/strfmon ·Á¼°¤ÎÊѧŪ¤Ê¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1287
-msgid "Don't warn about too many arguments to format functions"
-msgstr "format ´Ø¿ô¤Ø¤Î¿¤¹¤®¤ë°ú¿ô¤Ë´Ø¤¹¤ë·Ù¹ð¤·¤Ê¤¤"
-
-#: toplev.c:1289
-msgid "Warn about non-string-literal format strings"
-msgstr "Èóʸ»úÎó¥ê¥Æ¥é¥ë¤Î format ʸ»úÎó¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1292
-msgid "Warn about possible security problems with format functions"
-msgstr "¥»¥­¥å¥ê¥Æ¥£Åª¤ÊÌäÂê¤È¤Ê¤ê¤¦¤ë format ´Ø¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1296
-msgid "Don't warn about strftime formats yielding 2 digit years"
-msgstr "strftime ·Á¼°¤¬Æó·å¤Çǯ¤òɽ¤·¤Æ¤¤¤ë»þ¤Î·Ù¹ð¤·¤Ê¤¤"
-
-#: toplev.c:1298
-msgid "Warn about implicit function declarations"
-msgstr "°ÅÌۤδؿôÀë¸À¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1302
-msgid "Warn when a declaration does not specify a type"
-msgstr "Àë¸À¤¬·¿¤ò»ØÄꤷ¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1307
-msgid "Warn about the use of the #import directive"
-msgstr "#import ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤ÎÍøÍѤ˴ؤ·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1311
-msgid "Do not warn about using 'long long' when -pedantic"
-msgstr "-pedantic »ØÄê»þ¤Ç¤â 'long long' ¤Î»ÈÍѤˤĤ¤¤Æ¤Ï·Ù¹ð¤·¤Ê¤¤"
-
-#: toplev.c:1313
-msgid "Warn about suspicious declarations of main"
-msgstr "µ¿¤ï¤·¤¤ main ¤ÎÀë¸À¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1316
-#, fuzzy
-msgid "Warn about possibly missing braces around initializers"
-msgstr "½é´ü²½»Ò¤Î¼þ¤ê¤Ë¥Ö¥ì¡¼¥¹¤ò·ç¤¤¤Æ¤¤¤ëÍͤǤ¢¤ì¤Ð·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1319
-msgid "Warn about global funcs without previous declarations"
-msgstr "»öÁ°¤ÎÀë¸À¤Ê¤·¤ÎÂç°è´Ø¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1322
-msgid "Warn about global funcs without prototypes"
-msgstr "¥×¥í¥È¥¿¥¤¥×¤Ê¤·¤ÎÂç°è´Ø¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1325
-msgid "Warn about use of multicharacter literals"
-msgstr "Ê£¿ôʸ»ú¥ê¥Æ¥é¥ë¤Î»ÈÍѤ˴ؤ·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1328
-msgid "Warn about externs not at file scope level"
-msgstr "¥Õ¥¡¥¤¥ë¥¹¥³¡¼¥×¥ì¥Ù¥ë¤Ç¤Ê¤¤ extern ¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1331
-msgid "Warn about possible missing parentheses"
-msgstr "³ç¸Ì¤ò·ç¤¤¤Æ¤¤¤ë²ÄǽÀ­¤¬¤¢¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1334
-msgid "Warn about function pointer arithmetic"
-msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤Î·×»»¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1337
-msgid "Warn about multiple declarations of the same object"
-msgstr "Ʊ°ì¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀë¸À¤¬Ê£¿ô¤¢¤ì¤Ð·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1340
-#, fuzzy
-msgid "Warn whenever a function's return-type defaults to int"
-msgstr "Ìá¤êÃͤη¿¤ò¥Ç¥Õ¥©¥ë¥È¤Î `int' ¤È¤·¤Þ¤¹"
-
-#: toplev.c:1343
-msgid "Warn about possible violations of sequence point rules"
-msgstr "ÉûºîÍÑ´°Î»ÅÀµ¬Â§¤òÇˤë²ÄǽÀ­¤¬¤¢¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1346
-msgid "Warn about signed/unsigned comparisons"
-msgstr "Éä¹çÉÕ¤­/Éä¹ç̵¤·¤ÎÈæ³Ó¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1349
-msgid "Warn about non-prototyped function decls"
-msgstr "¥×¥í¥È¥¿¥¤¥×¤µ¤ì¤Æ¤¤¤Ê¤¤´Ø¿ôÀë¸À¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1352
-#, fuzzy
-msgid "Warn about constructs whose meanings change in ISO C"
-msgstr "ISO C ¤Ç¤½¤Î°ÕÌ£¤¬Êѹ¹¤µ¤ì¤¿ÆâÍƤ˴ؤ·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1355
-msgid "Warn when trigraphs are encountered"
-msgstr "¥È¥é¥¤¥°¥é¥Õ¤òȯ¸«¤·¤¿¤È¤­¤Ë·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1360
-msgid "Warn about unrecognized pragmas"
-msgstr "ǧ¼±¤Ç¤­¤Ê¤¤ pragma ¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1363
-msgid "Mark strings as 'const char *'"
-msgstr "ʸ»úÎó¤ò 'const char *' ¤È¤·¤Æ¥Þ¡¼¥¯¤¹¤ë"
-
-#: toplev.c:1508
-msgid "Warn when a function is unused"
-msgstr "´Ø¿ô¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1510
-msgid "Warn when a label is unused"
-msgstr "¥é¥Ù¥ë¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1512
-msgid "Warn when a function parameter is unused"
-msgstr "´Ø¿ô¤Î²¾°ú¿ô¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1514
-msgid "Warn when a variable is unused"
-msgstr "ÊÑ¿ô¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1516
-msgid "Warn when an expression value is unused"
-msgstr "¼°¤ÎÃͤ¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1518
-msgid "Do not suppress warnings from system headers"
-msgstr "¥·¥¹¥Æ¥à¥Ø¥Ã¥À¤«¤é¤Î·Ù¹ð¤òÍÞÀ©¤·¤Ê¤¤"
-
-#: toplev.c:1520
-msgid "Treat all warnings as errors"
-msgstr "Á´¤Æ¤Î·Ù¹ð¤ò¥¨¥é¡¼¤È¤·¤Æ¼è¤ê°·¤¦"
-
-#: toplev.c:1522
-msgid "Warn when one local variable shadows another"
-msgstr "¤¢¤ë¥í¡¼¥«¥ëÊÑ¿ô¤¬Â¾¤Î¤â¤Î¤òʤ¤¤±£¤¹¤È¤­¤Ë·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1524
-#, fuzzy
-msgid "Warn about enumerated switches, with no default, missing a case"
-msgstr "ÎóµóÄê¿ô¤Î switch ¤Ç case »ØÄ꤬·ç¤±¤Æ¤¤¤ë¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1526
-#, fuzzy
-msgid "Warn about enumerated switches missing a default case"
-msgstr "ÎóµóÄê¿ô¤Î switch ¤Ç case »ØÄ꤬·ç¤±¤Æ¤¤¤ë¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1528
-#, fuzzy
-msgid "Warn about all enumerated switches missing a specific case"
-msgstr "ÎóµóÄê¿ô¤Î switch ¤Ç case »ØÄ꤬·ç¤±¤Æ¤¤¤ë¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1530
-msgid "Warn about returning structures, unions or arrays"
-msgstr "¹½Â¤ÂΡ¢¶¦ÍÑÂÎËô¤ÏÇÛÎó¤òÊÖ¤¹¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1532
-msgid "Warn about pointer casts which increase alignment"
-msgstr "¥Ý¥¤¥ó¥¿¤Î¥­¥ã¥¹¥È¤Ç¥¢¥é¥¤¥ó¥á¥ó¥È¤¬Áý²Ã¤¹¤ë¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1534
-msgid "Warn about code that will never be executed"
-msgstr "¼Â¹Ô¤µ¤ì¤ë¤³¤È¤¬¤Ê¤¤¥³¡¼¥É¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1536
-#, fuzzy
-msgid "Warn about uninitialized automatic variables"
-msgstr "½é´ü²½¤µ¤ì¤Ê¤¤¼«Æ°ÊÑ¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1538
-msgid "Warn when an inlined function cannot be inlined"
-msgstr "¥¤¥ó¥é¥¤¥ó´Ø¿ô¤ò¥¤¥ó¥é¥¤¥ó²½¤Ç¤­¤Ê¤¤¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1540
-msgid "Warn when the packed attribute has no effect on struct layout"
-msgstr "packed °À­¤¬¹½Â¤ÂÎÇÛÃ֤˱ƶÁ¤·¤Ê¤¤¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1542
-msgid "Warn when padding is required to align struct members"
-msgstr "¹½Â¤ÂÎ¥á¥ó¥Ð¤Î¥¢¥é¥¤¥ó¤Ç¡¢¥Ñ¥Ç¥£¥ó¥°¤òÍפ¹¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+#, c-format
+msgid " %s"
+msgstr " %s"
-#: toplev.c:1544
-msgid "Warn when an optimization pass is disabled"
-msgstr "ºÇŬ²½²áÄø¤¬Ìµ¸ú²½¤µ¤ì¤¿¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+#: toplev.c:1293
+#, fuzzy, c-format
+msgid "invalid option argument `%s'"
+msgstr "`%s' ¤Î°ú¿ô¤È¤·¤Æ̵¸ú¤Ê·¿"
-#: toplev.c:1546
-msgid "Warn about uses of __attribute__((deprecated)) declarations"
+#: toplev.c:1356
+#, c-format
+msgid "getting core file size maximum limit: %m"
msgstr ""
-#: toplev.c:1548
-msgid "Warn about functions which might be candidates for attribute noreturn"
-msgstr "noreturn °À­¤Î¸õÊä¤È¤Ê¤ê¤½¤¦¤Ê´Ø¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+#: toplev.c:1359
+#, c-format
+msgid "setting core file size limit to maximum: %m"
+msgstr ""
-#: toplev.c:1550
+#: toplev.c:1678
#, fuzzy
-msgid "Warn about code which might break the strict aliasing rules"
-msgstr "format °À­¤ò¤Î¸õÊä¤È¤Ê¤ê¤½¤¦¤Ê´Ø¿ô¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
-
-#: toplev.c:1627 toplev.c:4548 config/rs6000/rs6000.c:680
-#, fuzzy, c-format
-msgid "invalid option `%s'"
-msgstr "̵¸ú¤Ê¥ª¥×¥·¥ç¥ó `%s'"
-
-#: toplev.c:2031
-#, c-format
-msgid "`%s' used but never defined"
+msgid "%J'%F' used but never defined"
msgstr "`%s' ¤¬»È¤ï¤ì¤Þ¤·¤¿¤¬Ì¤ÄêµÁ¤Ç¤¹"
-#: toplev.c:2034
-#, c-format
-msgid "`%s' declared `static' but never defined"
+#: toplev.c:1680
+#, fuzzy
+msgid "%J'%F' declared `static' but never defined"
msgstr "`%s' ¤¬ `static' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿¤¬Ì¤ÄêµÁ¤Ç¤¹"
-#: toplev.c:2057
-#, c-format
-msgid "`%s' defined but not used"
+#: toplev.c:1705
+#, fuzzy
+msgid "%J'%D' defined but not used"
msgstr "`%s' ¤¬ÄêµÁ¤µ¤ì¤Þ¤·¤¿¤¬»È¤ï¤ì¤Þ¤»¤ó¤Ç¤·¤¿"
-#: toplev.c:2280
+#: toplev.c:1726 toplev.c:1743
#, c-format
-msgid "invalid register name `%s' for register variable"
-msgstr "`%s' ¤Ï¥ì¥¸¥¹¥¿ÊÑ¿ô¤È¤·¤Æ¤Ï̵¸ú¤Ê¥ì¥¸¥¹¥¿Ì¾¤Ç¤¹"
-
-#: toplev.c:3697
-msgid " -ffixed-<register> Mark <register> as being unavailable to the compiler\n"
-msgstr " -ffixed-<register> ¥³¥ó¥Ñ¥¤¥é¤ËÂФ· <register> ¤ò»ÈÍÑÉԲĤȥޡ¼¥¯¤¹¤ë\n"
-
-#: toplev.c:3698
-msgid " -fcall-used-<register> Mark <register> as being corrupted by function calls\n"
-msgstr " -fcall-used-<register> ´Ø¿ô¸Æ¤Ó½Ð¤·¤ÇÇ˲õ¤µ¤ì¤ë <register> ¤È¤·¤Æ¥Þ¡¼¥¯¤¹¤ë\n"
-
-#: toplev.c:3699
-msgid " -fcall-saved-<register> Mark <register> as being preserved across functions\n"
-msgstr " -fcall-saved-<register> <register> ¤¬´Ø¿ô¤òÄ̤¸¤ÆÊÝ»ý¤µ¤ì¤ë¤È¥Þ¡¼¥¯¤¹¤ë\n"
-
-#: toplev.c:3700
-msgid " -finline-limit=<number> Limits the size of inlined functions to <number>\n"
-msgstr " -finline-limit=<number> ¥¤¥ó¥é¥¤¥ó´Ø¿ô¤Î¥µ¥¤¥º¤ò <number> ¤ËÀ©¸Â¤¹¤ë\n"
-
-#: toplev.c:3701
-msgid " -fmessage-length=<number> Limits diagnostics messages lengths to <number> characters per line. 0 suppresses line-wrapping\n"
-msgstr " -fmessage-length=<number> ¿ÇÃÇ¥á¥Ã¥»¡¼¥¸¤ÎŤµ¤ò°ì¹ÔÊÕ¤ê <number> ʸ»ú¤ËÀ©¸Â¤¹¤ë¡£ 0 ¤À¤È²þ¹Ô¤òÍÞÀ©¤¹¤ë\n"
-
-#: toplev.c:3702
-msgid " -fdiagnostics-show-location=[once | every-line] Indicates how often source location information should be emitted, as prefix, at the beginning of diagnostics when line-wrapping\n"
-msgstr ""
-" -fdiagnostics-show-location=[once | every-line] ¿ÇÃÇ¥á¥Ã¥»¡¼¥¸¤Î²þ¹Ô¤ÎºÝ¤Ë,\n"
-" ¥½¡¼¥¹°ÌÃÖ¾ðÊ󤬹Ԥκǽé¤Ëɽ¼¨¤µ¤ì¤ëÉÑÅÙ¤ò»ØÄꤹ¤ë\n"
-
-#: toplev.c:3703
-msgid " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indicates the default thread-local storage code generation model\n"
-msgstr ""
-
-#: toplev.c:3704
-msgid " -fstack-limit-register=<register> Trap if the stack goes past <register>\n"
-msgstr ""
-
-#: toplev.c:3705
-msgid " -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>\n"
-msgstr ""
-
-#: toplev.c:3706
-msgid " -frandom-seed=<string> Make compile reproducible using <string>\n"
+msgid "`%s' is deprecated (declared at %s:%d)"
msgstr ""
-#: toplev.c:3718
-#, fuzzy
-msgid " -O[number] Set optimization level to [number]\n"
-msgstr " -O[number] ºÇŬ²½¥ì¥Ù¥ë¤ò [number] ¤ËÀßÄꤹ¤ë\n"
-
-#: toplev.c:3719
-#, fuzzy
-msgid " -Os Optimize for space rather than speed\n"
-msgstr " -Os ®ÅÙ¤è¤ê¤â¥µ¥¤¥º¤ÎºÇŬ²½¤ò¹Ô¤Ê¤¦\n"
-
-#: toplev.c:3731
-msgid " -pedantic Issue warnings needed by strict compliance to ISO C\n"
-msgstr " -pedantic ¸·Ì©¤Ê ISO C ¤Ø¤ÎŬ¹ç¤ËÍפ¹¤ë·Ù¹ð¤òȯ¤¹¤ë\n"
-
-#: toplev.c:3732
-msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
-msgstr " -pedantic-errors -pedantic ¤ÈƱÍͤÀ¤¬¡¢¥¨¥é¡¼¤òȯÀ¸¤µ¤»¤ë\n"
-
-#: toplev.c:3733
-msgid " -w Suppress warnings\n"
-msgstr " -w ·Ù¹ð¤òÍÞÀ©¤¹¤ë\n"
-
-#: toplev.c:3734
-msgid " -W Enable extra warnings\n"
-msgstr " -W ÆÃÊ̤ʷٹð¤òÍ­¸ú¤Ë¤¹¤ë\n"
-
-#: toplev.c:3745
-msgid " -Wunused Enable unused warnings\n"
-msgstr " -Wunused ̤»ÈÍѤˤĤ¤¤Æ¤Î·Ù¹ð¤òÍ­¸ú¤Ë¤¹¤ë\n"
-
-#: toplev.c:3746
-msgid " -Wlarger-than-<number> Warn if an object is larger than <number> bytes\n"
-msgstr " -Wlarger-than-<number> ¥ª¥Ö¥¸¥§¥¯¥È¤¬ <number> ¥Ð¥¤¥È¤è¤êÂ礭¤±¤ì¤Ð·Ù¹ð¤¹¤ë\n"
-
-#: toplev.c:3747
-msgid " -p Enable function profiling\n"
-msgstr " -p ´Ø¿ô¥×¥í¥Õ¥¡¥¤¥ë¤òÍ­¸ú¤Ë¤¹¤ë\n"
-
-#: toplev.c:3748
-msgid " -o <file> Place output into <file> \n"
-msgstr " -o <file> ½ÐÎϤò <file> ¤Ë½ñ¤­¹þ¤à\n"
+#: toplev.c:1746
+#, fuzzy, c-format
+msgid "`%s' is deprecated"
+msgstr "%s ¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹"
-#: toplev.c:3749
-msgid ""
-" -G <number> Put global and static data smaller than <number>\n"
-" bytes into a special section (on some targets)\n"
+#: toplev.c:1749
+#, c-format
+msgid "type is deprecated (declared at %s:%d)"
msgstr ""
-" -G <number> <number> ¥Ð¥¤¥È¤è¤ê¾®¤µ¤ÊÂç°è¤ª¤è¤ÓÀÅŪ¥Ç¡¼¥¿¤ò\n"
-" ÆÃÊ̤ʥ»¥¯¥·¥ç¥ó¤ËÃÖ¤¯ (¥¿¡¼¥²¥Ã¥È¼¡Âè)\n"
-
-#: toplev.c:3760
-msgid " -aux-info <file> Emit declaration info into <file>\n"
-msgstr " -aux-info <file> Àë¸À¾ðÊó¤ò <file> ¤Øȯ¹Ô¤¹¤ë\n"
-
-#: toplev.c:3761
-msgid " -quiet Do not display functions compiled or elapsed time\n"
-msgstr " -quiet ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿´Ø¿ô¤ä·Ð²á»þ´Ö¤òɽ¼¨¤·¤Ê¤¤\n"
-
-#: toplev.c:3762
-msgid " -version Display the compiler's version\n"
-msgstr " -version ¥³¥ó¥Ñ¥¤¥é¤Î¥Ð¡¼¥¸¥ç¥ó¤òɽ¼¨¤¹¤ë\n"
-#: toplev.c:3763
-msgid " -d[letters] Enable dumps from specific passes of the compiler\n"
-msgstr " -d[letters] ¥³¥ó¥Ñ¥¤¥é¤Î²áÄø¤«¤é¤Î¥À¥ó¥×¤òÍ­¸ú¤Ë¤¹¤ë\n"
-
-#: toplev.c:3764
-msgid " -dumpbase <file> Base name to be used for dumps from specific passes\n"
-msgstr " -dumpbase <file> ²áÄø¤«¤é¤Î¥À¥ó¥×¤Ë»È¤ï¤ì¤ë̾Á°¤Î¥Ù¡¼¥¹¤È¤¹¤ë\n"
-
-#: toplev.c:3766
-msgid " -fsched-verbose=<number> Set the verbosity level of the scheduler\n"
-msgstr " -fsched-verbose=<number> ¥¹¥±¥¸¥å¡¼¥é¤ÎñÁÀå¥ì¥Ù¥ë¤òÀßÄꤹ¤ë\n"
-
-#: toplev.c:3768
-msgid " --help Display this information\n"
-msgstr " --help ¤³¤Î¾ðÊó¤òɽ¼¨¤¹¤ë\n"
-
-#: toplev.c:3783
-msgid ""
-"\n"
-"Language specific options:\n"
+#: toplev.c:1752
+msgid "type is deprecated"
msgstr ""
-"\n"
-"¸À¸ì»ÅÍÍ¥ª¥×¥·¥ç¥ó:\n"
-#: toplev.c:3795
+#: toplev.c:1956
#, c-format
-msgid " %-23.23s [undocumented]\n"
-msgstr " %-23.23s [ʸ½ñ²½¤µ¤ì¤Æ¤¤¤Ê¤¤]\n"
+msgid "invalid register name `%s' for register variable"
+msgstr "`%s' ¤Ï¥ì¥¸¥¹¥¿ÊÑ¿ô¤È¤·¤Æ¤Ï̵¸ú¤Ê¥ì¥¸¥¹¥¿Ì¾¤Ç¤¹"
-#: toplev.c:3803 toplev.c:3817
-#, c-format
-msgid ""
-"\n"
-"There are undocumented %s specific options as well.\n"
+#: toplev.c:3522
+msgid "branch target register load optimization is not intended to be run twice"
msgstr ""
-"\n"
-"ʸ½ñ²½¤µ¤ì¤Æ¤¤¤Ê¤¤ %s »ÅÍÍ¥ª¥×¥·¥ç¥ó¤â¤¢¤ê¤Þ¤¹¡£\n"
-#: toplev.c:3807
+#: toplev.c:3689
#, c-format
msgid ""
"\n"
-" Options for %s:\n"
-msgstr ""
-"\n"
-" %s ÍÑ¥ª¥×¥·¥ç¥ó:\n"
-
-#: toplev.c:3844
-msgid ""
-"\n"
"Target specific options:\n"
msgstr ""
"\n"
"¥¿¡¼¥²¥Ã¥È»ÅÍÍ¥ª¥×¥·¥ç¥ó:\n"
-#: toplev.c:3858 toplev.c:3877
-#, c-format
-msgid " -m%-23.23s [undocumented]\n"
+#: toplev.c:3703 toplev.c:3722
+#, fuzzy, c-format
+msgid " -m%-23s [undocumented]\n"
msgstr " -m%-23.23s [ʸ½ñ²½¤µ¤ì¤Æ¤¤¤Ê¤¤]\n"
-#: toplev.c:3886
+#: toplev.c:3731
+#, c-format
msgid ""
"\n"
"There are undocumented target specific options as well.\n"
@@ -8146,74 +7155,22 @@ msgstr ""
"\n"
"ʸ½ñ²½¤µ¤ì¤Æ¤¤¤Ê¤¤¥¿¡¼¥²¥Ã¥È»ÅÍÍ¥ª¥×¥·¥ç¥ó¤â¤¢¤ê¤Þ¤¹¡£\n"
-#: toplev.c:3888
+#: toplev.c:3733
+#, c-format
msgid " They exist, but they are not documented.\n"
msgstr " ¤³¤ì¤é¤Ï¸ºß¤·¤Þ¤¹¤¬¡¢Ê¸½ñ²½¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-#: toplev.c:3941
+#: toplev.c:3788
#, c-format
msgid "unrecognized gcc debugging option: %c"
msgstr "ǧ¼±¤Ç¤­¤Ê¤¤ gcc ¥Ç¥Ð¥Ã¥°¥ª¥×¥·¥ç¥ó: %c"
-#: toplev.c:4007
+#: toplev.c:3850 config/rs6000/rs6000.c:909
#, fuzzy, c-format
-msgid "`%s': unknown tls-model option"
-msgstr "`%s': ÉÔÌÀ¤Þ¤¿¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Ê¤¤ -g ¥ª¥×¥·¥ç¥ó¤Ç¤¹"
-
-#: toplev.c:4034
-#, c-format
-msgid "unrecognized register name `%s'"
-msgstr "ǧ¼±¤Ç¤­¤Ê¤¤¥ì¥¸¥¹¥¿Ì¾ `%s'"
-
-#: toplev.c:4059 toplev.c:5012
-#, fuzzy, c-format
-msgid "unrecognized option `%s'"
-msgstr "ǧ¼±ÉÔǽ¤Ê¥ª¥×¥·¥ç¥ó `-%s'"
-
-#: toplev.c:4107
-#, fuzzy
-msgid "-Wid-clash-LEN is no longer supported"
-msgstr "-f%s ¤Ï¤â¤Ï¤ä¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-
-#: toplev.c:4184
-#, c-format
-msgid "use -gdwarf -g%d for DWARF v1, level %d"
-msgstr "-gdwarf -g%d ¤ò»ÈÍÑ (DWARF v1, ¥ì¥Ù¥ë %d)"
-
-#: toplev.c:4187
-msgid "use -gdwarf-2 for DWARF v2"
-msgstr "-gdwarf-2 ¤ò»ÈÍÑ (DWARF v2)"
-
-#: toplev.c:4192
-#, c-format
-msgid "ignoring option `%s' due to invalid debug level specification"
-msgstr "̵¸ú¤Ê¥Ç¥Ð¥Ã¥°¥ì¥Ù¥ë»ØÄê¤Ë¤è¤ê¡¢¥ª¥×¥·¥ç¥ó `%s' ¤ò̵»ë¤·¤Þ¤¹"
-
-#: toplev.c:4215 toplev.c:5010
-#, c-format
-msgid "`%s': unknown or unsupported -g option"
-msgstr "`%s': ÉÔÌÀ¤Þ¤¿¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Ê¤¤ -g ¥ª¥×¥·¥ç¥ó¤Ç¤¹"
-
-#: toplev.c:4222
-#, c-format
-msgid "`%s' ignored, conflicts with `-g%s'"
-msgstr "`%s' ¤Ï `-g%s' ¤È¶¥¹ç¤¹¤ë¤¿¤á̵»ë¤µ¤ì¤Þ¤·¤¿"
-
-#: toplev.c:4304
-msgid "-param option missing argument"
-msgstr "-param ¥ª¥×¥·¥ç¥ó¤Ë°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-
-#: toplev.c:4313
-#, c-format
-msgid "invalid --param option: %s"
-msgstr "̵¸ú¤Ê --param ¥ª¥×¥·¥ç¥ó: %s"
-
-#: toplev.c:4325
-#, c-format
-msgid "invalid parameter value `%s'"
-msgstr "̵¸ú¤Ê¥Ñ¥é¥á¥¿ÃÍ `%s'"
+msgid "invalid option `%s'"
+msgstr "̵¸ú¤Ê¥ª¥×¥·¥ç¥ó `%s'"
-#: toplev.c:4565
+#: toplev.c:3865
#, c-format
msgid ""
"%s%s%s version %s (%s)\n"
@@ -8224,539 +7181,695 @@ msgstr ""
"%s\tcompiled by GNU C version %s.\n"
"%s%s%s version %s (%s) compiled by CC.\n"
-#: toplev.c:4572
+#: toplev.c:3872
#, c-format
msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
msgstr ""
-#: toplev.c:4630
+#: toplev.c:3924
msgid "options passed: "
msgstr "ÅϤµ¤ì¤¿¥ª¥×¥·¥ç¥ó: "
-#: toplev.c:4659
+#: toplev.c:3953
msgid "options enabled: "
msgstr "Í­¸ú¥ª¥×¥·¥ç¥ó: "
-#: toplev.c:4718 java/jcf-write.c:3453
-#, c-format
-msgid "can't open %s for writing"
+#: toplev.c:4011 java/jcf-write.c:3422
+#, fuzzy, c-format
+msgid "can't open %s for writing: %m"
msgstr "%s ¤ò½ñ¤­¹þ¤ßÍѤ˳«¤±¤Þ¤»¤ó¤Ç¤·¤¿"
-#: toplev.c:5002
-#, fuzzy, c-format
-msgid "ignoring command line option '%s'"
-msgstr "¥³¥Þ¥ó¥É¥é¥¤¥ó¥ª¥×¥·¥ç¥ó '%s' ¤ò̵»ë¤·¤Þ¤¹"
+#: toplev.c:4094 config/sh/sh.c:6883
+msgid "created and used with different settings of -fpic"
+msgstr ""
-#: toplev.c:5005
-#, fuzzy, c-format
-msgid "(it is valid for %s but not the selected language)"
-msgstr "(%s ÍѤȤ·¤Æ¤ÏÀµ¾ï¤Ç¤¹¤¬¡¢ÁªÂò¤µ¤ì¤¿¸À¸ì¤È¤·¤Æ¤Ï̵¸ú¤Ç¤¹)"
+#: toplev.c:4096 config/sh/sh.c:6885
+msgid "created and used with different settings of -fpie"
+msgstr ""
-#: toplev.c:5039
-msgid "-Wuninitialized is not supported without -O"
-msgstr "-Wuninitialized ¤Ï -O ̵¤·¤Ë¤Ï¼õ¤±Æþ¤ì¤é¤ì¤Þ¤»¤ó"
+#: toplev.c:4147 config/sh/sh.c:6935
+#, c-format
+msgid "created and used with differing settings of `-m%s'"
+msgstr ""
+
+#: toplev.c:4150 config/sh/sh.c:6938
+msgid "out of memory"
+msgstr ""
-#: toplev.c:5094
+#: toplev.c:4331
msgid "instruction scheduling not supported on this target machine"
msgstr "Ì¿Î᥹¥±¥¸¥å¡¼¥ê¥ó¥°¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¥Þ¥·¥ó¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: toplev.c:5098
+#: toplev.c:4335
msgid "this target machine does not have delayed branches"
msgstr "¤³¤Î¥¿¡¼¥²¥Ã¥È¥Þ¥·¥ó¤ÏÃÙ±äʬ´ô¤ò»ý¤Ã¤Æ¤¤¤Þ¤»¤ó"
-#: toplev.c:5112
+#: toplev.c:4349
#, c-format
msgid "-f%sleading-underscore not supported on this target machine"
msgstr "-f%sleading-underscore ¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¥Þ¥·¥ó¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: toplev.c:5175
+#: toplev.c:4398
+#, fuzzy, c-format
+msgid "target system does not support the \"%s\" debug format"
+msgstr "%s ¤Ï `%%%s%c' %s ¥Õ¥©¡¼¥Þ¥Ã¥È¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
+
+#: toplev.c:4415
#, fuzzy
msgid "-ffunction-sections not supported for this target"
msgstr "-ffunction-sections ¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¼õ¤±Æþ¤ì¤é¤ì¤Þ¤»¤ó"
-#: toplev.c:5180
+#: toplev.c:4420
#, fuzzy
msgid "-fdata-sections not supported for this target"
msgstr "-fdata-sections ¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¼õ¤±Æþ¤ì¤é¤ì¤Þ¤»¤ó"
-#: toplev.c:5187
+#: toplev.c:4427
#, fuzzy
msgid "-ffunction-sections disabled; it makes profiling impossible"
msgstr "-ffunction-sections ¤¬Ìµ¸ú¤Ç¤¹ -- ¥×¥í¥Õ¥¡¥¤¥ë¤ÏÉÔ²Äǽ¤Ç¤¹"
-#: toplev.c:5194
+#: toplev.c:4434
#, fuzzy
msgid "-fprefetch-loop-arrays not supported for this target"
msgstr "-fdata-sections ¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¼õ¤±Æþ¤ì¤é¤ì¤Þ¤»¤ó"
-#: toplev.c:5200
+#: toplev.c:4440
#, fuzzy
msgid "-fprefetch-loop-arrays not supported for this target (try -march switches)"
msgstr "-f%sleading-underscore ¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¥Þ¥·¥ó¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: toplev.c:5209
+#: toplev.c:4449
#, fuzzy
msgid "-fprefetch-loop-arrays is not supported with -Os"
msgstr "-mg ¤Ç¤Î¥×¥í¥Õ¥¡¥¤¥ë¤ÏÄ󶡤µ¤ì¤Þ¤»¤ó\n"
-#: toplev.c:5215
+#: toplev.c:4455
#, fuzzy
msgid "-ffunction-sections may affect debugging on some targets"
msgstr "-ffunction-sections ¤Ï¥¿¡¼¥²¥Ã¥È¤Ë¤è¤Ã¤Æ¤Ï¥Ç¥Ð¥Ã¥°¤Ë±Æ¶Á¤¹¤ë¤«¤â¤·¤ì¤Þ¤»¤ó"
-#: toplev.c:5327
-#, c-format
-msgid "error writing to %s"
+#: toplev.c:4557
+#, fuzzy, c-format
+msgid "error writing to %s: %m"
msgstr "%s ¤Ø¤Î½ñ¤­¹þ¤ß¥¨¥é¡¼¤Ç¤¹"
-#: toplev.c:5329 java/jcf-parse.c:936 java/jcf-write.c:3460
-#, c-format
-msgid "error closing %s"
+#: toplev.c:4559 java/jcf-parse.c:902 java/jcf-write.c:3429
+#, fuzzy, c-format
+msgid "error closing %s: %m"
msgstr "¥¨¥é¡¼¤Ë¤è¤ê %s ¤òÊĤ¸¤Þ¤¹"
-#: tree-dump.c:702
+#: tree-dump.c:692
#, c-format
msgid "could not open dump file `%s'"
msgstr "¥À¥ó¥×¥Õ¥¡¥¤¥ë %s ¤ò³«¤±¤Þ¤»¤ó¤Ç¤·¤¿"
-#: tree-dump.c:778
-#, fuzzy, c-format
-msgid "ignoring unknown option `%.*s' in `-f%s'"
-msgstr "`%s'(`-f%s' ¤Î½ª¤ê¤Ë¤¢¤ë) ¤ò̵»ë¤·¤Þ¤¹"
+#: tree-dump.c:763
+#, c-format
+msgid "ignoring unknown option `%.*s' in `-fdump-%s'"
+msgstr ""
+
+#: tree-inline.c:1016
+msgid "%Jfunction '%F' can never be inlined because it uses alloca (override using the always_inline attribute)"
+msgstr ""
+
+#: tree-inline.c:1029
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp"
+msgstr ""
+
+#: tree-inline.c:1044
+msgid "%Jfunction '%F' can never be inlined because it uses variable argument lists"
+msgstr ""
+
+#: tree-inline.c:1060
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp-longjmp exception handling"
+msgstr ""
+
+#: tree-inline.c:1078
+msgid "%Jfunction '%F' can never be inlined because it contains a nested function"
+msgstr ""
+
+#: tree-inline.c:1095
+msgid "%Jfunction '%F' can never be inlined because it contains a computed goto"
+msgstr ""
+
+#: tree-inline.c:1105
+msgid "%Jfunction '%F' can never be inlined because it contains a nonlocal goto"
+msgstr ""
+
+#: tree-inline.c:1128
+msgid "%Jfunction '%F' can never be inlined because it uses variable sized variables"
+msgstr ""
+
+#: tree-inline.c:1338 tree-inline.c:1345
+#, fuzzy
+msgid "%Jinlining failed in call to '%F': %s"
+msgstr "`%s' ¤Ø¤Î¸Æ¤Ó½Ð¤·¤Î¥¤¥ó¥é¥¤¥ó²½¤Ë¼ºÇÔ¤·¤Þ¤·¤¿"
+
+#: tree-optimize.c:190
+#, fuzzy
+msgid "%Jsize of return value of '%D' is %u bytes"
+msgstr "`%s' ¤ÎÌá¤êÃͤΥµ¥¤¥º¤¬ %u ¥Ð¥¤¥È¤Ç¤¹"
-#: tree.c:3645
+#: tree-optimize.c:193
+#, fuzzy
+msgid "%Jsize of return value of '%D' is larger than %wd bytes"
+msgstr "`%s' ¤ÎÌá¤êÃͤΥµ¥¤¥º¤¬ %d ¥Ð¥¤¥È¤è¤ê¤âÂ礭¤¯¤Ê¤ê¤Þ¤¹"
+
+#: tree.c:3800
msgid "arrays of functions are not meaningful"
msgstr "´Ø¿ô¤ÎÇÛÎó¤Ï°ÕÌ£¤¬¤¢¤ê¤Þ¤»¤ó"
-#: tree.c:3702
+#: tree.c:3855
msgid "function return type cannot be function"
msgstr "´Ø¿ô¤ÎÊÖ¤¹·¿¤¬´Ø¿ô¤Ç¤¢¤Ã¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó"
-#: tree.c:4557
+#: tree.c:4684
msgid "invalid initializer for bit string"
msgstr "̵¸ú¤Ê¥Ó¥Ã¥ÈÎó½é´ü²½»Ò¤Ç¤¹"
-#: tree.c:4616
+#: tree.c:4736
#, fuzzy, c-format
msgid "tree check: expected %s, have %s in %s, at %s:%d"
msgstr "Tree ¸¡ºº: %s ¤¬¤¢¤ë¤Ù¤­½ê¤Ë %s ¤¬¤¢¤ê¤Þ¤¹(%s Æâ, %s:%d)"
-#: tree.c:4633
+#: tree.c:4749
#, fuzzy, c-format
msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d"
msgstr "Tree ¸¡ºº: ¥¯¥é¥¹ '%c' ¤Î¤Ï¤º¤¬ '%c' (%s) ¤Ç¤¹(%s Æâ, %s:%d)"
-#: tree.c:4650
+#: tree.c:4762
#, fuzzy, c-format
msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
msgstr "RTL check: ¥Ù¥¯¥È¥ë¤Î elt %d ¤òºÇ¸å¤Î elt %d (%s Ãæ)¤È°ì½ï¤Ë¥¢¥¯¥»¥¹¤·¤Þ¤¹ (%s:%d)"
-#: varasm.c:455 config/i386/winnt.c:611
-#, c-format
-msgid "%s causes a section type conflict"
+#: tree.c:4774
+#, fuzzy, c-format
+msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
+msgstr "RTL ¸¡ºº: elt %d(%s) ¤¬ºÇ¸å¤Î elt %d(%s Ãæ) ¤È°ì½ï¤Ë¥¢¥¯¥»¥¹¤·¤Þ¤¹ (%s:%d)"
+
+#: varasm.c:434
+#, fuzzy
+msgid "%J%D causes a section type conflict"
msgstr "%s ¤Ï¥»¥¯¥·¥ç¥ó¥¿¥¤¥×¤Î¶¥¹ç¤ò°ú¤­µ¯¤³¤·¤Þ¤¹"
-#: varasm.c:841
-#, c-format
-msgid "register name not specified for `%s'"
+#: varasm.c:796
+#, fuzzy
+msgid "%Jregister name not specified for '%D'"
msgstr "¥ì¥¸¥¹¥¿Ì¾¤¬ `%s' ÍѤ˻ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: varasm.c:843
-#, c-format
-msgid "invalid register name for `%s'"
+#: varasm.c:798
+#, fuzzy
+msgid "%Jinvalid register name for '%D'"
msgstr "`%s' ¤ËÂФ¹¤ë¥ì¥¸¥¹¥¿Ì¾¤È¤·¤Æ̵¸ú¤Ç¤¹"
-#: varasm.c:846
-#, c-format
-msgid "data type of `%s' isn't suitable for a register"
+#: varasm.c:800
+#, fuzzy
+msgid "%Jdata type of '%D' isn't suitable for a register"
msgstr "`%s' ¤Î¥Ç¡¼¥¿·¿¤Ï register ¤Ë¤Ï¤Õ¤µ¤ï¤·¤¯¤¢¤ê¤Þ¤»¤ó"
-#: varasm.c:849
-#, c-format
-msgid "register specified for `%s' isn't suitable for data type"
+#: varasm.c:803
+#, fuzzy
+msgid "%Jregister specified for '%D' isn't suitable for data type"
msgstr "`%s' ¤Ë»ØÄꤵ¤ì¤¿ register ¤Ï¥Ç¡¼¥¿·¿¤Ë¤Õ¤µ¤ï¤·¤¯¤¢¤ê¤Þ¤»¤ó"
-#: varasm.c:858
+#: varasm.c:813
msgid "global register variable has initial value"
msgstr "Âç°è register ÊÑ¿ô¤¬½é´üÃͤò»ý¤Ã¤Æ¤¤¤Þ¤¹"
-#: varasm.c:861
+#: varasm.c:816
msgid "volatile register variables don't work as you might wish"
msgstr "volatile register ÊÑ¿ô¤Ï°Õ¿Þ¤·¤¿¤è¤¦¤Ë¤ÏÆ°ºî¤·¤Þ¤»¤ó"
-#: varasm.c:894
-#, c-format
-msgid "register name given for non-register variable `%s'"
+#: varasm.c:848
+#, fuzzy
+msgid "%Jregister name given for non-register variable '%D'"
msgstr "¥ì¥¸¥¹¥¿Ì¾¤¬Èó register ÊÑ¿ô `%s' ¤ËÍ¿¤¨¤é¤ì¤Þ¤·¤¿"
-#: varasm.c:1542
-#, fuzzy, c-format
-msgid "alignment of `%s' is greater than maximum object file alignment. Using %d"
+#: varasm.c:1380
+#, fuzzy
+msgid "%Jstorage size of `%D' isn't known"
+msgstr "`%s' ¤ÎÎΰ襵¥¤¥º¤¬¤ï¤«¤ê¤Þ¤»¤ó"
+
+#: varasm.c:1434
+#, fuzzy
+msgid "%Jalignment of '%D' is greater than maximum object file alignment. Using %d"
msgstr "`%s' ¤Î¥¢¥é¥¤¥ó¥á¥ó¥È¤Ï¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤ÎºÇÂçÃͤè¤ê¤âÂ礭¤¤¤Ç¤¹¡£ %d ¤ò»È¤¤¤Þ¤¹¡£"
-#: varasm.c:1584
+#: varasm.c:1480
msgid "thread-local COMMON data not implemented"
msgstr ""
-#: varasm.c:1610
-#, fuzzy, c-format
-msgid "requested alignment for %s is greater than implemented alignment of %d"
+#: varasm.c:1505
+#, fuzzy
+msgid "%Jrequested alignment for '%D' is greater than implemented alignment of %d"
msgstr "%s ¤ËÍ׵ᤵ¤ì¤¿¥¢¥é¥¤¥ó¥á¥ó¥È¤Ï¼ÂÁõ¤µ¤ì¤¿¥¢¥é¥¤¥ó¥á¥ó¥È %d ¤è¤êÂ礭¤¤¤Ç¤¹"
-#: varasm.c:4048
+#: varasm.c:3787
msgid "initializer for integer value is too complicated"
msgstr "À°¿ô¤Î½é´üÀßÄê»Ò¤ÎÃͤ¬Ê£»¨¤¹¤®¤Þ¤¹"
-#: varasm.c:4053
+#: varasm.c:3792
msgid "initializer for floating value is not a floating constant"
msgstr "ÉâÆ°¾®¿ôÅÀ¿ô¤Î½é´üÀßÄê»Ò¤ÎÃͤ¬¡¢ÉâÆ°¾®¿ôÅÀÄê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: varasm.c:4120
+#: varasm.c:3858
msgid "unknown set constructor type"
msgstr "ÉÔÌÀ¤ÊÀßÄêºÑ¥³¥ó¥¹¥È¥é¥¯¥¿·¿¤Ç¤¹"
-#: varasm.c:4334
+#: varasm.c:4077
#, c-format
msgid "invalid initial value for member `%s'"
msgstr "¥á¥ó¥Ð `%s' ¤ËÂФ¹¤ë̵¸ú¤Ê½é´üÃÍ"
-#: varasm.c:4525 varasm.c:4568
-#, c-format
-msgid "weak declaration of `%s' must precede definition"
+#: varasm.c:4264 varasm.c:4308
+#, fuzzy
+msgid "%Jweak declaration of '%D' must precede definition"
msgstr "`%s' ¤Î weak Àë¸À¤ÏÄêµÁ¤è¤ê¤âÀè¤Ë¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: varasm.c:4532
-#, fuzzy, c-format
-msgid "weak declaration of `%s' after first use results in unspecified behavior"
-msgstr "`%s' ¤Î weak Àë¸À¤ÏÄêµÁ¤è¤ê¤âÀè¤Ë¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
+#: varasm.c:4272
+msgid "%Jweak declaration of '%D' after first use results in unspecified behavior"
+msgstr ""
-#: varasm.c:4566
-#, c-format
-msgid "weak declaration of `%s' must be public"
+#: varasm.c:4306
+#, fuzzy
+msgid "%Jweak declaration of '%D' must be public"
msgstr "`%s' ¤Î weak Àë¸À¤Ï public ¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: varasm.c:4575
-#, fuzzy, c-format
-msgid "weak declaration of `%s' not supported"
-msgstr "`%s' ¤Î weak Àë¸À¤Ï public ¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
+#: varasm.c:4315
+#, fuzzy
+msgid "%Jweak declaration of '%D' not supported"
+msgstr "%s: '%s' ¤ÎÀë¸À¤ÏÊÑ´¹¤µ¤ì¤Þ¤»¤ó\n"
-#: varasm.c:4602 varasm.c:4677
+#: varasm.c:4344 varasm.c:4434
msgid "only weak aliases are supported in this configuration"
msgstr "¸½ºß¤ÎÀßÄê¤Ç¤Ï weak alias ¤·¤«¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: varasm.c:4685
+#: varasm.c:4437
msgid "alias definitions not supported in this configuration; ignored"
msgstr "¸½ºß¤ÎÀßÄê¤Ç¤Ï alias ÄêµÁ¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó -- ̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: varasm.c:4716
+#: varasm.c:4466
#, fuzzy
msgid "visibility attribute not supported in this configuration; ignored"
msgstr "¸½ºß¤ÎÀßÄê¤Ç¤Ï alias ÄêµÁ¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó -- ̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: varray.c:134
+#: varray.c:194
#, fuzzy, c-format
msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d"
msgstr "²¾Áۥơ¼¥Ö¥ë %s[%lu]: Í×ÁÇ %lu ¤¬Èϰϳ°¤Ç¤¹"
+#: varray.c:204
+#, fuzzy, c-format
+msgid "underflowed virtual array %s in %s, at %s:%d"
+msgstr "%s ¤ÇÆâÉô¥³¥ó¥Ñ¥¤¥é¥¨¥é¡¼ (%s:%d)"
+
#. Print an error message for unrecognized stab codes.
-#: xcoffout.c:175
+#: xcoffout.c:173
#, fuzzy, c-format
msgid "no sclass for %s stab (0x%x)\n"
msgstr "%s ¥¹¥¿¥ÖÍѤΠsclass ¤¬¤¢¤ê¤Þ¤»¤ó (0x%x)\n"
-#: pretty-print.h:97
-#, fuzzy, c-format
-msgid "#`%s' not supported by %s#"
-msgstr "`%s' ¤Ï %s ¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
+#.
+#. Local variables:
+#. mode:c
+#. End:
+#.
+#: diagnostic.def:1
+#, fuzzy
+msgid "fatal error: "
+msgstr "ÆâÉô¥¨¥é¡¼: "
-#: params.def:53
-msgid "The maximum number of instructions in a single function eligible for inlining"
+#: diagnostic.def:2
+#, fuzzy
+msgid "internal compiler error: "
+msgstr "ÆâÉô¥³¥ó¥Ñ¥¤¥é¥¨¥é¡¼."
+
+#: diagnostic.def:3
+#, fuzzy
+msgid "error: "
+msgstr "ÆâÉô¥¨¥é¡¼: "
+
+#: diagnostic.def:4
+#, fuzzy
+msgid "sorry, unimplemented: "
+msgstr "»ÄÇ°¤Ê¤¬¤é¸«¼ÂÁõ¤Ç¤¹: "
+
+#: diagnostic.def:6
+msgid "anachronism: "
msgstr ""
-#: params.def:65
-msgid "The maximum number of instructions when automatically inlining"
+#: diagnostic.def:7
+msgid "note: "
msgstr ""
-#: params.def:84
-msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
+#: diagnostic.def:8
+msgid "debug: "
msgstr ""
-#: params.def:97
-msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
+#: params.def:53
+msgid "The maximum number of instructions in a single function eligible for inlining"
msgstr ""
-#: params.def:110
-msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
+#: params.def:65
+msgid "The maximum number of instructions when automatically inlining"
msgstr ""
-#: params.def:120
+#: params.def:75
#, fuzzy
msgid "The maximum number of instructions for the RTL inliner"
msgstr "RPTS ÍѤκÇÂçÈ¿Éü¿ô¤ò»ØÄꤹ¤ë"
-#: params.def:131
+#: params.def:86
msgid "The maximum number of instructions to consider to fill a delay slot"
msgstr ""
-#: params.def:142
+#: params.def:97
msgid "The maximum number of instructions to consider to find accurate live register information"
msgstr ""
-#: params.def:152
+#: params.def:107
msgid "The maximum length of scheduling's pending operations list"
msgstr ""
-#: params.def:159
+#: params.def:112
+msgid "The size of function body to be considered large"
+msgstr ""
+
+#: params.def:116
+msgid "Maximal growth due to inlining of large function (in percent)"
+msgstr ""
+
+#: params.def:120
+msgid "how much can given compilation unit grow because of the inlining (in percent)"
+msgstr ""
+
+#: params.def:127
msgid "The maximum amount of memory to be allocated by GCSE"
msgstr ""
-#: params.def:164
+#: params.def:132
msgid "The maximum number of passes to make when doing GCSE"
msgstr ""
-#: params.def:171
+#: params.def:139
msgid "The maximum number of instructions to consider to unroll in a loop"
msgstr ""
-#: params.def:176
-msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
+#: params.def:145
+msgid "The maximum number of instructions to consider to unroll in a loop on average"
+msgstr ""
+
+#: params.def:150
+msgid "The maximum number of unrollings of a single loop"
+msgstr ""
+
+#: params.def:155
+msgid "The maximum number of insns of a peeled loop"
+msgstr ""
+
+#: params.def:160
+msgid "The maximum number of peelings of a single loop"
+msgstr ""
+
+#: params.def:165
+msgid "The maximum number of insns of a completely peeled loop"
+msgstr ""
+
+#: params.def:170
+msgid "The maximum number of peelings of a single loop that is peeled completely"
+msgstr ""
+
+#: params.def:175
+msgid "The maximum number of insns of a peeled loop that rolls only once"
msgstr ""
#: params.def:181
-msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
+msgid "The maximum number of insns of an unswitched loop"
msgstr ""
#: params.def:186
-msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
+msgid "The maximum number of unswitchings in a single loop"
msgstr ""
#: params.def:191
-msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
+msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
msgstr ""
#: params.def:196
-msgid "Maximal code growth caused by tail duplication (in percents)"
+msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
+msgstr ""
+
+#: params.def:201
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
+msgstr ""
+
+#: params.def:206
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
+msgstr ""
+
+#: params.def:211
+msgid "Maximal code growth caused by tail duplication (in percent)"
msgstr ""
-#: params.def:200
-msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percents)"
+#: params.def:215
+msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent)"
msgstr ""
-#: params.def:205
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is available"
+#: params.def:220
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is available"
msgstr ""
-#: params.def:210
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is not available"
+#: params.def:225
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is not available"
msgstr ""
-#: params.def:217
+#: params.def:232
msgid "The maximum number of incoming edges to consider for crossjumping"
msgstr ""
-#: params.def:230
-msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap."
+#: params.def:238
+msgid "The maximum length of path considered in cse"
+msgstr ""
+
+#: params.def:243
+msgid "The maximum memory locations recorded by cselib"
msgstr ""
-#: params.def:236
-msgid "Minimum heap size before we start collecting garbage, in kilobytes."
+#: params.def:256
+msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap"
+msgstr ""
+
+#: params.def:262
+msgid "Minimum heap size before we start collecting garbage, in kilobytes"
+msgstr ""
+
+#: params.def:270
+msgid "The maximum number of instructions to search backward when looking for equivalent reload"
msgstr ""
#: config/darwin-c.c:75
msgid "too many #pragma options align=reset"
msgstr ""
-#: config/darwin-c.c:97 config/darwin-c.c:100 config/darwin-c.c:102
-#: config/darwin-c.c:104
+#: config/darwin-c.c:95 config/darwin-c.c:98 config/darwin-c.c:100
+#: config/darwin-c.c:102
#, fuzzy
msgid "malformed '#pragma options', ignoring"
msgstr "¤ª¤«¤·¤Ê #pragma map¡¢Ìµ»ë¤µ¤ì¤Þ¤·¤¿"
-#: config/darwin-c.c:107
+#: config/darwin-c.c:105
#, fuzzy
msgid "junk at end of '#pragma options'"
msgstr "'#pragma %s' ¤ÎºÇ¸å¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: config/darwin-c.c:117
+#: config/darwin-c.c:115
msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring"
msgstr ""
-#: config/darwin-c.c:130
+#: config/darwin-c.c:127
#, fuzzy
msgid "missing '(' after '#pragma unused', ignoring"
msgstr "½Ò¸ì¤Î¸å¤í¤Î '(' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: config/darwin-c.c:148
+#: config/darwin-c.c:145
#, fuzzy
msgid "missing ')' after '#pragma unused', ignoring"
msgstr "½Ò¸ì¤Î¸å¤í¤Î '(' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: config/darwin-c.c:151
+#: config/darwin-c.c:148
#, fuzzy
msgid "junk at end of '#pragma unused'"
msgstr "'#pragma %s' ¤ÎºÇ¸å¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: config/lynx-ng.h:97 config/lynx.h:121 config/rs6000/lynx.h:100
+#: config/darwin.c:1347
+#, fuzzy
+msgid "internal and protected visibility attributes not supportedin this configuration; ignored"
+msgstr "¸½ºß¤ÎÀßÄê¤Ç¤Ï alias ÄêµÁ¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó -- ̵»ë¤µ¤ì¤Þ¤·¤¿"
+
+#: config/lynx-ng.h:97 config/lynx.h:116 config/rs6000/lynx.h:73
msgid "-msystem-v and -p are incompatible"
msgstr "-msystem-v ¤È -p ¤Ï¸ß´¹À­¤¬¤¢¤ê¤Þ¤»¤ó"
-#: config/lynx-ng.h:99 config/lynx.h:123 config/rs6000/lynx.h:102
+#: config/lynx-ng.h:99 config/lynx.h:118 config/rs6000/lynx.h:75
msgid "-msystem-v and -mthreads are incompatible"
msgstr "-msystem-v ¤È -mthreads ¤Ï¸ß´¹À­¤¬¤¢¤ê¤Þ¤»¤ó"
-#: config/alpha/alpha.c:342
+#: config/windiss.h:37
+msgid "profiler support for WindISS"
+msgstr ""
+
+#: config/alpha/alpha.c:231
#, fuzzy, c-format
msgid "-f%s ignored for Unicos/Mk (not supported)"
msgstr "-f%s ¤Ï 68HC11/68HC12 ÍѤȤ·¤Æ¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿ (¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó)"
-#: config/alpha/alpha.c:366
+#: config/alpha/alpha.c:255
#, fuzzy
msgid "-mieee not supported on Unicos/Mk"
msgstr "-pipe ¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: config/alpha/alpha.c:377
+#: config/alpha/alpha.c:266
msgid "-mieee-with-inexact not supported on Unicos/Mk"
msgstr ""
-#: config/alpha/alpha.c:394
+#: config/alpha/alpha.c:283
#, c-format
msgid "bad value `%s' for -mtrap-precision switch"
msgstr "-mtrap-precision ¥¹¥¤¥Ã¥Á¤Ë¤È¤Ã¤Æ¤ÎÉÔÀµ¤ÊÃÍ `%s'"
-#: config/alpha/alpha.c:408
+#: config/alpha/alpha.c:297
#, c-format
msgid "bad value `%s' for -mfp-rounding-mode switch"
msgstr "-mfp-rounding-mode ¥¹¥¤¥Ã¥Á¤Ë¤È¤Ã¤Æ¤ÎÉÔÀµ¤ÊÃÍ `%s'"
-#: config/alpha/alpha.c:423
+#: config/alpha/alpha.c:312
#, c-format
msgid "bad value `%s' for -mfp-trap-mode switch"
msgstr "-mfp-trap-mode ¥¹¥¤¥Ã¥Á¤Ë¤È¤Ã¤Æ¤ÎÉÔÀµ¤ÊÃÍ `%s'"
-#: config/alpha/alpha.c:435
+#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1063
#, fuzzy, c-format
msgid "bad value `%s' for -mtls-size switch"
msgstr "-mcpu ¥¹¥¤¥Ã¥Á¤Ë¤È¤Ã¤Æ¤ÎÉÔÀµ¤ÊÃÍ `%s'"
-#: config/alpha/alpha.c:454 config/alpha/alpha.c:466
+#: config/alpha/alpha.c:343 config/alpha/alpha.c:355
#, c-format
msgid "bad value `%s' for -mcpu switch"
msgstr "-mcpu ¥¹¥¤¥Ã¥Á¤Ë¤È¤Ã¤Æ¤ÎÉÔÀµ¤ÊÃÍ `%s'"
-#: config/alpha/alpha.c:473
+#: config/alpha/alpha.c:362
#, fuzzy
msgid "trap mode not supported on Unicos/Mk"
msgstr "VAX ÉâÆ°¾®¿ô¤Ç¤Ï¥È¥é¥Ã¥×¥â¡¼¥É¤òÍøÍѤǤ­¤Þ¤»¤ó"
-#: config/alpha/alpha.c:480
+#: config/alpha/alpha.c:369
msgid "fp software completion requires -mtrap-precision=i"
msgstr "ÉâÆ°¾®¿ôÅÀÊä´°¤Ï -mtrap-precision=i ¤òɬÍפȤ·¤Þ¤¹"
-#: config/alpha/alpha.c:496
+#: config/alpha/alpha.c:385
msgid "rounding mode not supported for VAX floats"
msgstr "VAX ÉâÆ°¾®¿ô¤Ç¤Ï´Ý¤á¥â¡¼¥É¤òÍøÍѤǤ­¤Þ¤»¤ó"
-#: config/alpha/alpha.c:501
+#: config/alpha/alpha.c:390
msgid "trap mode not supported for VAX floats"
msgstr "VAX ÉâÆ°¾®¿ô¤Ç¤Ï¥È¥é¥Ã¥×¥â¡¼¥É¤òÍøÍѤǤ­¤Þ¤»¤ó"
-#: config/alpha/alpha.c:530
+#: config/alpha/alpha.c:419
#, c-format
msgid "L%d cache latency unknown for %s"
msgstr "L%d ¥­¥ã¥Ã¥·¥å¥ì¥¤¥Æ¥ó¥·¤Ï %s ¤Ë¤È¤Ã¤ÆÉÔÌÀ¤Ç¤¹"
-#: config/alpha/alpha.c:545
+#: config/alpha/alpha.c:434
#, c-format
msgid "bad value `%s' for -mmemory-latency"
msgstr "`%s' ¤Ï -mmemory-latency ¤Ë¤È¤Ã¤ÆÉÔÀµ¤ÊÃͤǤ¹"
-#: config/alpha/alpha.c:5604 config/m88k/m88k.c:2889 config/romp/romp.c:754
-#: config/romp/romp.c:761
+#: config/alpha/alpha.c:5411
#, c-format
msgid "invalid %%H value"
msgstr "̵¸ú¤Ê %%H ÃÍ"
-#: config/alpha/alpha.c:5625
+#: config/alpha/alpha.c:5432
#, fuzzy, c-format
msgid "invalid %%J value"
msgstr "̵¸ú¤Ê %%W ÃͤǤ¹"
-#: config/alpha/alpha.c:5641 config/ia64/ia64.c:3970 config/m88k/m88k.c:3034
+#: config/alpha/alpha.c:5448 config/ia64/ia64.c:4243
#, c-format
msgid "invalid %%r value"
msgstr "̵¸ú¤Ê %%r ÃÍ"
-#: config/alpha/alpha.c:5651 config/rs6000/rs6000.c:7737
+#: config/alpha/alpha.c:5458 config/rs6000/rs6000.c:8944
+#: config/xtensa/xtensa.c:1999
#, c-format
msgid "invalid %%R value"
msgstr "̵¸ú¤Ê %%R ÃÍ"
-#: config/alpha/alpha.c:5657 config/rs6000/rs6000.c:7663
+#: config/alpha/alpha.c:5464 config/rs6000/rs6000.c:8863
+#: config/xtensa/xtensa.c:1966
#, c-format
msgid "invalid %%N value"
msgstr "̵¸ú¤Ê %%N ÃÍ"
-#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:7691
+#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:8891
#, c-format
msgid "invalid %%P value"
msgstr "̵¸ú¤Ê %%P ÃÍ"
-#: config/alpha/alpha.c:5673 config/m88k/m88k.c:2895 config/romp/romp.c:740
-#: config/romp/romp.c:747
+#: config/alpha/alpha.c:5480
#, c-format
msgid "invalid %%h value"
msgstr "̵¸ú¤Ê %%h ÃÍ"
-#: config/alpha/alpha.c:5681 config/romp/romp.c:698
+#: config/alpha/alpha.c:5488 config/xtensa/xtensa.c:1992
#, c-format
msgid "invalid %%L value"
msgstr "̵¸ú¤Ê %%L ÃÍ"
-#: config/alpha/alpha.c:5720 config/rs6000/rs6000.c:7645
+#: config/alpha/alpha.c:5527 config/rs6000/rs6000.c:8845
#, c-format
msgid "invalid %%m value"
msgstr "̵¸ú¤Ê %%m ÃÍ"
-#: config/alpha/alpha.c:5728 config/rs6000/rs6000.c:7653
+#: config/alpha/alpha.c:5535 config/rs6000/rs6000.c:8853
#, c-format
msgid "invalid %%M value"
msgstr "̵¸ú¤Ê %%M ÃÍ"
-#: config/alpha/alpha.c:5772
+#: config/alpha/alpha.c:5579
#, c-format
msgid "invalid %%U value"
msgstr "̵¸ú¤Ê %%U ÃÍ"
-#: config/alpha/alpha.c:5784 config/alpha/alpha.c:5798 config/romp/romp.c:706
-#: config/rs6000/rs6000.c:7745
+#: config/alpha/alpha.c:5591 config/alpha/alpha.c:5605
+#: config/rs6000/rs6000.c:8952
#, c-format
msgid "invalid %%s value"
msgstr "̵¸ú¤Ê %%s ÃÍ"
-#: config/alpha/alpha.c:5821 config/m88k/m88k.c:2997
+#: config/alpha/alpha.c:5628
#, c-format
msgid "invalid %%C value"
msgstr "̵¸ú¤Ê %%C ÃÍ"
-#: config/alpha/alpha.c:5858 config/m88k/m88k.c:3018
-#: config/rs6000/rs6000.c:7502
+#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:8702
#, c-format
msgid "invalid %%E value"
msgstr "̵¸ú¤Ê %%E ÃÍ"
-#: config/alpha/alpha.c:5883 config/alpha/alpha.c:5933
+#: config/alpha/alpha.c:5690 config/alpha/alpha.c:5738
#, fuzzy
msgid "unknown relocation unspec"
msgstr "ÉÔÌÀ¤ÊÀßÄêºÑ¥³¥ó¥¹¥È¥é¥¯¥¿·¿¤Ç¤¹"
-#: config/alpha/alpha.c:5892 config/romp/romp.c:981
-#: config/rs6000/rs6000.c:8052
+#: config/alpha/alpha.c:5699 config/rs6000/rs6000.c:9265
#, c-format
msgid "invalid %%xn code"
msgstr "̵¸ú¤Ê %%xn ¥³¡¼¥É"
-#: config/alpha/alpha.c:6618 config/alpha/alpha.c:6621 config/s390/s390.c:6069
-#: config/s390/s390.c:6072
+#: config/alpha/alpha.c:6634 config/alpha/alpha.c:6637 config/s390/s390.c:6572
+#: config/s390/s390.c:6575
#, fuzzy
msgid "bad builtin fcode"
msgstr "ÁȤ߹þ¤ß¥Þ¥¯¥í \"%s\" ¤Ï̵¸ú¤Ç¤¹"
@@ -8766,87 +7879,99 @@ msgstr "ÁȤ߹þ¤ß¥Þ¥¯¥í \"%s\" ¤Ï̵¸ú¤Ç¤¹"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/alpha/alpha.h:279 config/i386/i386.h:294 config/i386/i386.h:296
-#: config/i386/i386.h:298 config/ns32k/ns32k.h:140 config/rs6000/rs6000.h:292
-#: config/s390/s390.h:68 config/sparc/sparc.h:522 config/sparc/sparc.h:527
+#. WARNING: Do not mark empty strings for translation, as calling
+#. gettext on an empty string does NOT return an empty
+#. string.
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/alpha/alpha.h:286 config/i386/i386.h:327 config/i386/i386.h:329
+#: config/i386/i386.h:331 config/ns32k/ns32k.h:140 config/s390/s390.h:124
+#: config/sparc/sparc.h:537 config/sparc/sparc.h:542
msgid "Use hardware fp"
msgstr "¥Ï¡¼¥É¥¦¥§¥¢ÉâÆ°¾®¿ôÅÀ¤òÍøÍÑ"
-#: config/alpha/alpha.h:280 config/i386/i386.h:295 config/i386/i386.h:297
-#: config/rs6000/rs6000.h:294 config/sparc/sparc.h:524
-#: config/sparc/sparc.h:529
+#: config/alpha/alpha.h:287 config/i386/i386.h:328 config/i386/i386.h:330
+#: config/sparc/sparc.h:539 config/sparc/sparc.h:544
msgid "Do not use hardware fp"
msgstr "¥Ï¡¼¥É¥¦¥§¥¢ÉâÆ°¾®¿ôÅÀ¤òÍøÍѤ·¤Ê¤¤"
-#: config/alpha/alpha.h:281
+#: config/alpha/alpha.h:288
msgid "Use fp registers"
msgstr "ÉâÆ°¾®¿ôÅÀ¥ì¥¸¥¹¥¿¤òÍøÍѤ¹¤ë"
-#: config/alpha/alpha.h:283
+#: config/alpha/alpha.h:290
msgid "Do not use fp registers"
msgstr "ÉâÆ°¾®¿ôÅÀ¥ì¥¸¥¹¥¿¤òÍøÍѤ·¤Ê¤¤"
-#: config/alpha/alpha.h:284
+#: config/alpha/alpha.h:291
msgid "Do not assume GAS"
msgstr "GAS ¤ÎÍøÍѤòÁ°Äó¤È¤·¤Ê¤¤"
-#: config/alpha/alpha.h:285
+#: config/alpha/alpha.h:292
msgid "Assume GAS"
msgstr "GAS ¤ÎÍøÍѤòÁ°Äó¤È¤¹¤ë"
-#: config/alpha/alpha.h:287
+#: config/alpha/alpha.h:294
msgid "Request IEEE-conformant math library routines (OSF/1)"
msgstr "IEEE ½àµò¤Î¿ô³Ø¥é¥¤¥Ö¥é¥ê¥ë¡¼¥Á¥ó (OSF/1) ¤òÍ׵᤹¤ë"
-#: config/alpha/alpha.h:289
+#: config/alpha/alpha.h:296
msgid "Emit IEEE-conformant code, without inexact exceptions"
msgstr "ÉÔŬÀÚ¤ÊÎã³°¤ò½ü¤¤¤Æ IEEE ½àµò¤Î¥³¡¼¥É¤òȯ¹Ô¤¹¤ë"
-#: config/alpha/alpha.h:291
+#: config/alpha/alpha.h:298
msgid "Emit IEEE-conformant code, with inexact exceptions"
msgstr "ÉÔŬÀÚ¤ÊÎã³°¤ò´Þ¤á¤Æ IEEE ½àµò¤Î¥³¡¼¥É¤òȯ¹Ô¤¹¤ë"
-#: config/alpha/alpha.h:293
+#: config/alpha/alpha.h:300
msgid "Do not emit complex integer constants to read-only memory"
msgstr "Ê£ÁÇ¿ô¤ÎÀ°¿ôÄê¿ô¤òÆɤ߹þ¤ßÀìÍÑ¥á¥â¥ê¤ËŸ³«¤µ¤»¤Ê¤¤"
-#: config/alpha/alpha.h:294
+#: config/alpha/alpha.h:301
msgid "Use VAX fp"
msgstr "VAX ÉâÆ°¾®¿ôÅÀ¤òÍøÍѤ¹¤ë"
-#: config/alpha/alpha.h:295
+#: config/alpha/alpha.h:302
msgid "Do not use VAX fp"
msgstr "VAX ÉâÆ°¾®¿ôÅÀ¤òÍøÍѤ·¤Ê¤¤"
-#: config/alpha/alpha.h:296
+#: config/alpha/alpha.h:303
msgid "Emit code for the byte/word ISA extension"
msgstr "¥Ð¥¤¥È/¥ï¡¼¥É ISA ³ÈÄ¥ÍѤΥ³¡¼¥É¤òȯ¹Ô¤¹¤ë"
-#: config/alpha/alpha.h:299
+#: config/alpha/alpha.h:306
msgid "Emit code for the motion video ISA extension"
msgstr "¥â¡¼¥·¥ç¥ó¥Ó¥Ç¥ª ISA ³ÈÄ¥ÍѤΥ³¡¼¥É¤òȯ¹Ô¤¹¤ë"
-#: config/alpha/alpha.h:302
+#: config/alpha/alpha.h:309
msgid "Emit code for the fp move and sqrt ISA extension"
msgstr "ÉâÆ°¾®¿ôÅÀ move ¤È sqrt ISA ³ÈÄ¥ÍѤΥ³¡¼¥É¤òȯ¹Ô¤¹¤ë"
-#: config/alpha/alpha.h:304
+#: config/alpha/alpha.h:311
msgid "Emit code for the counting ISA extension"
msgstr "¥«¥¦¥ó¥È ISA ³ÈÄ¥ÍѤΥ³¡¼¥É¤òȯ¹Ô¤¹¤ë"
-#: config/alpha/alpha.h:307
+#: config/alpha/alpha.h:314
msgid "Emit code using explicit relocation directives"
msgstr ""
-#: config/alpha/alpha.h:310
+#: config/alpha/alpha.h:317
msgid "Emit 16-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:312
+#: config/alpha/alpha.h:319
msgid "Emit 32-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:314
+#: config/alpha/alpha.h:321
+#, fuzzy
+msgid "Emit direct branches to local functions"
+msgstr "Ëöü¤Î´Ø¿ô¤Ç¤Ï¥Õ¥ì¡¼¥à¥Ý¥¤¥ó¥¿¤ò¾Êά¤¹¤ë"
+
+#: config/alpha/alpha.h:324
msgid "Emit rdval instead of rduniq for thread pointer"
msgstr ""
@@ -8857,300 +7982,323 @@ msgstr ""
#. For -mtrap-precision=[p|f|i]
#. For -mmemory-latency=
#. For -mtls-size=
-#: config/alpha/alpha.h:343
+#: config/alpha/alpha.h:353
msgid "Use features of and schedule given CPU"
msgstr "CPU ¤ËÍ¿¤¨¤é¤ì¤¿ÆÃħ¤ä¥¹¥±¥¸¥å¡¼¥ë¤òÍøÍѤ¹¤ë"
-#: config/alpha/alpha.h:345
+#: config/alpha/alpha.h:355
msgid "Schedule given CPU"
msgstr "CPU ¤ËÍ¿¤¨¤é¤ì¤¿¥¹¥±¥¸¥å¡¼¥ë¤òÍøÍѤ¹¤ë"
-#: config/alpha/alpha.h:347
+#: config/alpha/alpha.h:357
msgid "Control the generated fp rounding mode"
msgstr "À¸À®¤µ¤ì¤¿ÉâÆ°¾®¿ôÅÀ´Ý¤á¥â¡¼¥É¤òÀ©¸æ¤¹¤ë"
-#: config/alpha/alpha.h:349
+#: config/alpha/alpha.h:359
msgid "Control the IEEE trap mode"
msgstr "IEEE ¥È¥é¥Ã¥×¥â¡¼¥É¤òÀ©¸æ¤¹¤ë"
-#: config/alpha/alpha.h:351
+#: config/alpha/alpha.h:361
msgid "Control the precision given to fp exceptions"
msgstr "ÉâÆ°¾®¿ôÅÀÎã³°¤ËÍ¿¤¨¤é¤ì¤¿ÀºÅÙ¤òÀ©¸æ¤¹¤ë"
-#: config/alpha/alpha.h:353
+#: config/alpha/alpha.h:363
msgid "Tune expected memory latency"
msgstr "ͽ´ü¤µ¤ì¤ë¥á¥â¥ê¥ì¥¤¥Æ¥ó¥·¤òÄ´À°¤¹¤ë"
-#: config/alpha/alpha.h:355 config/ia64/ia64.h:225
+#: config/alpha/alpha.h:365 config/ia64/ia64.h:267 config/rs6000/sysv4.h:90
msgid "Specify bit size of immediate TLS offsets"
msgstr ""
-#: config/arc/arc.c:135
+#: config/arc/arc.c:147
#, c-format
msgid "bad value (%s) for -mcpu switch"
msgstr "-mcpu ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
-#: config/arc/arc.c:362
+#: config/arc/arc.c:369
#, fuzzy, c-format
msgid "argument of `%s' attribute is not a string constant"
msgstr "`asm' ¤Î°ú¿ô¤¬Äê¿ôʸ»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó "
-#: config/arc/arc.c:369
+#: config/arc/arc.c:376
#, c-format
msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\""
msgstr ""
-#: config/arc/arc.c:1708 config/m32r/m32r.c:2286
+#: config/arc/arc.c:1714 config/m32r/m32r.c:2325
#, fuzzy, c-format
msgid "invalid operand to %%R code"
msgstr "%R ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/arc/arc.c:1740 config/m32r/m32r.c:2309
+#: config/arc/arc.c:1746 config/m32r/m32r.c:2348
#, fuzzy, c-format
msgid "invalid operand to %%H/%%L code"
msgstr "%H/%L ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/arc/arc.c:1763 config/m32r/m32r.c:2385
+#: config/arc/arc.c:1769 config/m32r/m32r.c:2419
#, fuzzy, c-format
msgid "invalid operand to %%U code"
msgstr "%U ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/arc/arc.c:1774
+#: config/arc/arc.c:1780
#, fuzzy, c-format
msgid "invalid operand to %%V code"
msgstr "%V ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
#. Unknown flag.
-#: config/arc/arc.c:1781 config/m32r/m32r.c:2424 config/sparc/sparc.c:6533
+#. Undocumented flag.
+#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985
msgid "invalid operand output code"
msgstr "̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É½ÐÎÏ¥³¡¼¥É"
-#: config/arm/arm.c:458
+#: config/arm/arm.c:520
#, c-format
msgid "switch -mcpu=%s conflicts with -march= switch"
msgstr "-mcpu=%s ¥¹¥¤¥Ã¥Á¤Ï -march= ¥¹¥¤¥Ã¥Á¤È¶¥¹ç¤·¤Þ¤¹"
-#: config/arm/arm.c:468 config/rs6000/rs6000.c:558 config/sparc/sparc.c:393
+#: config/arm/arm.c:530 config/rs6000/rs6000.c:759 config/sparc/sparc.c:424
#, c-format
msgid "bad value (%s) for %s switch"
msgstr "ÃÍ (%s) ¤Ï %s switch ¤Ë¤È¤Ã¤ÆÀµ¤·¤¯¤¢¤ê¤Þ¤»¤ó"
-#: config/arm/arm.c:604
+#: config/arm/arm.c:672
msgid "target CPU does not support APCS-32"
msgstr "¥¿¡¼¥²¥Ã¥È CPU ¤Ï APCS-32 ¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó"
-#: config/arm/arm.c:609
+#: config/arm/arm.c:677
msgid "target CPU does not support APCS-26"
msgstr "¥¿¡¼¥²¥Ã¥È CPU ¤Ï APCS-26 ¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó"
-#: config/arm/arm.c:615
+#: config/arm/arm.c:683
msgid "target CPU does not support interworking"
msgstr "¥¿¡¼¥²¥Ã¥È CPU ¤Ï interworking ¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó"
-#: config/arm/arm.c:621
+#: config/arm/arm.c:689
#, fuzzy
msgid "target CPU does not support THUMB instructions"
msgstr "¥¿¡¼¥²¥Ã¥È CPU ¤Ï THUMB Ì¿Îá¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó"
-#: config/arm/arm.c:635
+#: config/arm/arm.c:703
#, fuzzy
msgid "enabling backtrace support is only meaningful when compiling for the Thumb"
msgstr "Thumb ÍѤ˥³¥ó¥Ñ¥¤¥ë¤·¤¿¤È¤­¤Î¤ß¡¢°ÕÌ£¤Î¤¢¤ë¥Ð¥Ã¥¯¥È¥ì¡¼¥¹¤òÍ­¸ú¤Ë¤·¤Þ¤¹"
-#: config/arm/arm.c:638
+#: config/arm/arm.c:706
#, fuzzy
msgid "enabling callee interworking support is only meaningful when compiling for the Thumb"
msgstr "Thumb ÍѤ˥³¥ó¥Ñ¥¤¥ë¤·¤¿¤È¤­¤Î¤ß¡¢Èï¸Æ¤Ó½Ð¤·Â¦ interworking ¤òÍ­¸ú¤Ë¤·¤Þ¤¹"
-#: config/arm/arm.c:641
+#: config/arm/arm.c:709
#, fuzzy
msgid "enabling caller interworking support is only meaningful when compiling for the Thumb"
msgstr "Thumb ÍѤ˥³¥ó¥Ñ¥¤¥ë¤·¤¿¤È¤­¤Î¤ß¡¢¸Æ¤Ó½Ð¤·Â¦ interworking ¤òÍ­¸ú¤Ë¤·¤Þ¤¹"
-#: config/arm/arm.c:647
+#: config/arm/arm.c:715
msgid "interworking forces APCS-32 to be used"
msgstr "interworking ¤Ï APCS-32 ¤Î»ÈÍѤò¶¯Íפ·¤Þ¤¹"
-#: config/arm/arm.c:653
+#: config/arm/arm.c:721
msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
msgstr "-mapcs-stack-check ¤Ï -mno-apcs-frame ¤È¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: config/arm/arm.c:661
+#: config/arm/arm.c:729
msgid "-fpic and -mapcs-reent are incompatible"
msgstr "-fpic ¤È -mapcs-reent ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: config/arm/arm.c:664
+#: config/arm/arm.c:732
msgid "APCS reentrant code not supported. Ignored"
msgstr "APCS ºÆÆþ²Äǽ¥³¡¼¥É¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó¡£Ìµ»ë¤µ¤ì¤Þ¤·¤¿"
-#: config/arm/arm.c:672
+#: config/arm/arm.c:740
msgid "-g with -mno-apcs-frame may not give sensible debugging"
msgstr "-g ¤Ë -mno-apcs-frame ¤ò¤Ä¤±¤ë¤È¡¢¤­¤áºÙ¤«¤Ê¥Ç¥Ð¥Ã¥°¤Ï¤Ç¤­¤Ê¤¤¤Ç¤·¤ç¤¦"
-#: config/arm/arm.c:680
+#: config/arm/arm.c:748
#, fuzzy
msgid "passing floating point arguments in fp regs not yet supported"
msgstr "ÉâÆ°¾®¿ôÅÀ°ú¿ô¤òÉâÆ°¾®¿ôÅÀ¥ì¥¸¥¹¥¿¤ÇÅϤ¹¤³¤È¤Ï¡¢¤Þ¤À¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: config/arm/arm.c:709
+#: config/arm/arm.c:792
#, fuzzy, c-format
msgid "invalid floating point emulation option: -mfpe-%s"
msgstr "̵¸ú¤ÊÉâÆ°¾®¿ôÅÀ¥¨¥ß¥å¥ì¡¼¥È¥ª¥×¥·¥ç¥ó: -mfpe-%s"
-#: config/arm/arm.c:733
+#: config/arm/arm.c:803
+msgid "-mfpe switch not supported by ep9312 target cpu - ignored."
+msgstr ""
+
+#: config/arm/arm.c:823
#, fuzzy
msgid "structure size boundary can only be set to 8 or 32"
msgstr "¹½Â¤ÂΤΥµ¥¤¥º¶­³¦¤Ï 8 Ëô¤Ï 32 ¤Ë¤·¤«ÀßÄê¤Ç¤­¤Þ¤»¤ó"
-#: config/arm/arm.c:741
+#: config/arm/arm.c:831
msgid "-mpic-register= is useless without -fpic"
msgstr "-mpic-register= ¤Ï -fpic ¤ò¤Ä¤±¤Ê¤¤¤ÈÌò¤ËΩ¤Á¤Þ¤»¤ó"
-#: config/arm/arm.c:748
+#: config/arm/arm.c:838
#, fuzzy, c-format
msgid "unable to use '%s' for PIC register"
msgstr "'%s' ¤ò PIC ¤Î¥ì¥¸¥¹¥¿¤È¤·¤Æ»È¤¦¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó"
-#: config/arm/arm.c:2064 config/arm/arm.c:2087 config/avr/avr.c:4794
-#: config/c4x/c4x.c:4644 config/h8300/h8300.c:3667 config/i386/i386.c:1396
-#: config/i386/i386.c:1425 config/ip2k/ip2k.c:3224
-#: config/m68hc11/m68hc11.c:1267 config/mcore/mcore.c:3510
-#: config/ns32k/ns32k.c:1047 config/rs6000/rs6000.c:12538 config/sh/sh.c:5681
-#: config/sh/sh.c:5706 config/sh/sh.c:5745 config/stormy16/stormy16.c:2026
-#: config/v850/v850.c:2180
+#: config/arm/arm.c:2246 config/arm/arm.c:2264 config/avr/avr.c:4558
+#: config/c4x/c4x.c:4447 config/h8300/h8300.c:4257 config/i386/i386.c:1571
+#: config/i386/i386.c:1617 config/ip2k/ip2k.c:3169
+#: config/m68hc11/m68hc11.c:1227 config/m68k/m68k.c:333
+#: config/mcore/mcore.c:3375 config/ns32k/ns32k.c:1064
+#: config/rs6000/rs6000.c:14556 config/sh/sh.c:6737 config/sh/sh.c:6758
+#: config/sh/sh.c:6793 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173
#, fuzzy, c-format
msgid "`%s' attribute only applies to functions"
msgstr "`%s' °À­¤Ï´Ø¿ô¤ËÂФ·¤Æ¤Î¤ßŬÍѤµ¤ì¤Þ¤¹"
-#: config/arm/arm.c:9459
+#: config/arm/arm.c:10573
#, fuzzy
msgid "unable to compute real location of stacked parameter"
msgstr "¥¹¥¿¥Ã¥¯¤ËÀѤޤ줿²¾°ú¿ô¤Î¼ÂºÝ¤ÎÎΰè¤ò·×»»¤Ç¤­¤Þ¤»¤ó"
-#: config/arm/arm.c:10138
+#. @@@ better error message
+#: config/arm/arm.c:11201 config/arm/arm.c:11238
+msgid "selector must be an immediate"
+msgstr "¥»¥ì¥¯¥¿¤Ï¨ÃͤǤʤ±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
+
+#. @@@ better error message
+#: config/arm/arm.c:11281 config/i386/i386.c:14219 config/i386/i386.c:14253
+msgid "mask must be an immediate"
+msgstr "¥Þ¥¹¥¯¤Ï¨ÃͤǤʤ±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
+
+#: config/arm/arm.c:11976
msgid "no low registers available for popping high registers"
msgstr "¹â°Ì¥ì¥¸¥¹¥¿¤ò pop ¤¹¤ë°Ù¤Ë»ÈÍѤǤ­¤ëÄã°Ì¥ì¥¸¥¹¥¿¤¬¤¢¤ê¤Þ¤»¤ó"
-#: config/arm/arm.c:10389
+#: config/arm/arm.c:12226
#, fuzzy
msgid "interrupt Service Routines cannot be coded in Thumb mode"
msgstr "Thumb ¥â¡¼¥É¤Ç¤Ï³ä¤ê¹þ¤ß¥µ¡¼¥Ó¥¹¥ë¡¼¥Á¥ó¤ò¥³¡¼¥É²½¤Ç¤­¤Þ¤»¤ó"
-#: config/arm/pe.c:168 config/mcore/mcore.c:3358
-#, c-format
-msgid "initialized variable `%s' is marked dllimport"
+#: config/arm/pe.c:170 config/mcore/mcore.c:3241
+#, fuzzy
+msgid "%Jinitialized variable '%D' is marked dllimport"
msgstr "½é´ü²½¤µ¤ì¤¿ÊÑ¿ô `%s' ¤Ï dllimport ¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: config/arm/pe.c:177
-#, c-format
-msgid "static variable `%s' is marked dllimport"
+#: config/arm/pe.c:179
+#, fuzzy
+msgid "%Jstatic variable '%D' is marked dllimport"
msgstr "ÀÅŪÊÑ¿ô `%s' ¤Ï dllimport ¤È¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: config/arm/arm.h:416
+#: config/arm/arm.h:450
msgid "Generate APCS conformant stack frames"
msgstr "APCS Ŭ¹ç¤·¤¿¥¹¥¿¥Ã¥¯¥Õ¥ì¡¼¥à¤òÀ¸À®¤¹¤ë"
-#: config/arm/arm.h:419
+#: config/arm/arm.h:453
msgid "Store function names in object code"
msgstr "¥ª¥Ö¥¸¥§¥¯¥È¥³¡¼¥É¤Ë´Ø¿ô̾¤ò³ÊǼ¤¹¤ë"
-#: config/arm/arm.h:423
+#: config/arm/arm.h:457
msgid "Use the 32-bit version of the APCS"
msgstr "APCS ¤Î 32 ¥Ó¥Ã¥ÈÈǤò»ÈÍѤ¹¤ë"
-#: config/arm/arm.h:425
+#: config/arm/arm.h:459
msgid "Use the 26-bit version of the APCS"
msgstr "APCS ¤Î 26 ¥Ó¥Ã¥ÈÈǤò»ÈÍѤ¹¤ë"
-#: config/arm/arm.h:429
+#: config/arm/arm.h:463
msgid "Pass FP arguments in FP registers"
msgstr "FP ¥ì¥¸¥¹¥¿¤Ç FP °ú¿ô¤òÅϤ¹"
-#: config/arm/arm.h:432
+#: config/arm/arm.h:466
msgid "Generate re-entrant, PIC code"
msgstr "ºÆÆþ²Äǽ¤Ê PIC ¥³¡¼¥É¤òÀ¸À®¤·¤Þ¤¹"
-#: config/arm/arm.h:435
+#: config/arm/arm.h:469
msgid "The MMU will trap on unaligned accesses"
msgstr "MMU ¤Ï¥¢¥é¥¤¥ó¥á¥ó¥È¤µ¤ì¤Ê¤¤¥¢¥¯¥»¥¹¤Ç¥È¥é¥Ã¥×¤òȯ¤¹¤ë¤Ç¤·¤ç¤¦"
-#: config/arm/arm.h:442
+#: config/arm/arm.h:476
msgid "Use library calls to perform FP operations"
msgstr "ÉâÆ°¾®¿ôÅÀ±é»»¤ò¹Ô¤¦¥é¥¤¥Ö¥é¥ê¸Æ¤Ó½Ð¤·¤òÍøÍѤ¹¤ë"
-#: config/arm/arm.h:444 config/i960/i960.h:281
+#: config/arm/arm.h:478 config/i960/i960.h:291
msgid "Use hardware floating point instructions"
msgstr "¥Ï¡¼¥É¥¦¥§¥¢ÉâÆ°¾®¿ôÅÀÌ¿Îá¤ò»ÈÍѤ¹¤ë"
-#: config/arm/arm.h:446
+#: config/arm/arm.h:480
msgid "Assume target CPU is configured as big endian"
msgstr "¥¿¡¼¥²¥Ã¥È CPU ¤¬¥Ó¥Ã¥¯¥¨¥ó¥Ç¥£¥¢¥ó¤È¤·¤ÆÀßÄꤵ¤ì¤Æ¤¤¤ë¤È¤ß¤Ê¤¹"
-#: config/arm/arm.h:448
+#: config/arm/arm.h:482
msgid "Assume target CPU is configured as little endian"
msgstr "¥¿¡¼¥²¥Ã¥È CPU ¤¬¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó¤È¤·¤ÆÀßÄꤵ¤ì¤Æ¤¤¤ë¤È¤ß¤Ê¤¹"
-#: config/arm/arm.h:450
+#: config/arm/arm.h:484
msgid "Assume big endian bytes, little endian words"
msgstr "byte ¤¬¥Ó¥Ã¥°¥¨¥ó¥Ç¥£¥¢¥ó¤Ç word ¤¬¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó¤È¤ß¤Ê¤¹"
-#: config/arm/arm.h:452
+#: config/arm/arm.h:486
msgid "Support calls between Thumb and ARM instruction sets"
msgstr "Thumb ¤È ARM Ì¿Î᥻¥Ã¥È´Ö¤Î¸Æ¤Ó½Ð¤·¤ò¥µ¥Ý¡¼¥È¤¹¤ë"
-#: config/arm/arm.h:455
+#: config/arm/arm.h:489
msgid "Generate a call to abort if a noreturn function returns"
msgstr "noreturn ´Ø¿ô¤¬ return ¤¹¤ë¤È¤­ abort ¤Î¸Æ¤Ó½Ð¤·¤òÀ¸À®¤¹¤ë"
-#: config/arm/arm.h:458
+#: config/arm/arm.h:492
msgid "Do not move instructions into a function's prologue"
msgstr "´Ø¿ô¤Î³«»ÏÉôʬ¤ËÌ¿Îá¤ò°ÜÆ°¤·¤Ê¤¤"
-#: config/arm/arm.h:461
+#: config/arm/arm.h:495
msgid "Do not load the PIC register in function prologues"
msgstr "´Ø¿ô¤ÎÁ°ÃÖ¤­Éôʬ¤Ë PIC ¥ì¥¸¥¹¥¿¤ò¥í¡¼¥É¤·¤Ê¤¤"
-#: config/arm/arm.h:464
+#: config/arm/arm.h:498
msgid "Generate call insns as indirect calls, if necessary"
msgstr "ɬÍפ¬¤¢¤ì¤Ð¡¢Ì¿Îá¸Æ¤Ó½Ð¤·¤ò´ÖÀܸƤӽФ·¤È¤·¤ÆÀ¸À®¤¹¤ë"
-#: config/arm/arm.h:467
+#: config/arm/arm.h:501
msgid "Compile for the Thumb not the ARM"
msgstr "ARM ¤Ç¤Ï¤Ê¤¯ Thumb ÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
-#: config/arm/arm.h:471
+#: config/arm/arm.h:505
msgid "Thumb: Generate (non-leaf) stack frames even if not needed"
msgstr "Thumb: ÉÔÍפʾì¹ç¤Ç¤â(ÈóËöü)¥¹¥¿¥Ã¥¯¥Õ¥ì¡¼¥à¤òÀ¸À®¤¹¤ë"
-#: config/arm/arm.h:474
+#: config/arm/arm.h:508
msgid "Thumb: Generate (leaf) stack frames even if not needed"
msgstr "Thumb: ÉÔÍפʾì¹ç¤Ç¤â(Ëöü)¥¹¥¿¥Ã¥¯¥Õ¥ì¡¼¥à¤òÀ¸À®¤¹¤ë"
-#: config/arm/arm.h:477
+#: config/arm/arm.h:511
msgid "Thumb: Assume non-static functions may be called from ARM code"
msgstr "Thumb: ÈóÀÅŪ´Ø¿ô¤¬ ARM ¥³¡¼¥É¤«¤é¸Æ¤Ó½Ð¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ë¤È¤ß¤Ê¤¹"
-#: config/arm/arm.h:481
+#: config/arm/arm.h:515
msgid "Thumb: Assume function pointers may go to non-Thumb aware code"
msgstr "Thumb: ´Ø¿ô¥Ý¥¤¥ó¥¿¤¬Èó Thumb ¤Èǧ¼±¤¹¤ë¥³¡¼¥É¤ËÆÍÆþ¤¹¤ë²ÄǽÀ­¤¬¤¢¤ë¤È¤ß¤Ê¤¹"
-#: config/arm/arm.h:491
+#: config/arm/arm.h:519
+msgid "Cirrus: Place NOPs to avoid invalid instruction combinations"
+msgstr ""
+
+#: config/arm/arm.h:521
+msgid "Cirrus: Do not break up invalid instruction combinations with NOPs"
+msgstr ""
+
+#: config/arm/arm.h:529
msgid "Specify the name of the target CPU"
msgstr "¥¿¡¼¥²¥Ã¥È CPU ¤Î̾Á°¤ò»ØÄꤹ¤ë"
-#: config/arm/arm.h:493
+#: config/arm/arm.h:531
msgid "Specify the name of the target architecture"
msgstr "¥¿¡¼¥²¥Ã¥È¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤Î̾Á°¤ò»ØÄꤹ¤ë"
-#: config/arm/arm.h:497
+#: config/arm/arm.h:535
msgid "Specify the version of the floating point emulator"
msgstr "ÉâÆ°¾®¿ôÅÀ¥¨¥ß¥å¥ì¡¼¥¿¤Î¥Ð¡¼¥¸¥ç¥ó¤ò»ØÄꤹ¤ë"
-#: config/arm/arm.h:499
+#: config/arm/arm.h:537
msgid "Specify the minimum bit alignment of structures"
msgstr "¹½Â¤ÂÎ¥¢¥é¥¤¥ó¥á¥ó¥È¤ÎºÇ¾®¥Ó¥Ã¥È¿ô¤ò»ØÄꤹ¤ë"
-#: config/arm/arm.h:501
+#: config/arm/arm.h:539
msgid "Specify the register to be used for PIC addressing"
msgstr "PIC ¥¢¥É¥ì¥·¥ó¥°¤ËÍøÍѤµ¤ì¤ë¥ì¥¸¥¹¥¿¤ò»ØÄꤹ¤ë"
@@ -9158,99 +8306,99 @@ msgstr "PIC ¥¢¥É¥ì¥·¥ó¥°¤ËÍøÍѤµ¤ì¤ë¥ì¥¸¥¹¥¿¤ò»ØÄꤹ¤ë"
msgid "Ignore dllimport attribute for functions"
msgstr "´Ø¿ô¤Î dllimport °À­¤ò̵»ë¤¹¤ë"
-#: config/avr/avr.c:528
+#: config/avr/avr.c:514
#, c-format
msgid "large frame pointer change (%d) with -mtiny-stack"
msgstr "-mtiny-stack ¤Ë¤è¤ê¥é¡¼¥¸¥Õ¥ì¡¼¥à¥Ý¥¤¥ó¥¿¤¬Êѹ¹¤µ¤ì¤Þ¤¹(%d)"
-#: config/avr/avr.c:1135
+#: config/avr/avr.c:1101
msgid "bad address, not (reg+disp):"
msgstr ""
-#: config/avr/avr.c:1143
+#: config/avr/avr.c:1109
#, fuzzy
msgid "internal compiler error. Bad address:"
msgstr "ÆâÉô¥³¥ó¥Ñ¥¤¥é¥¨¥é¡¼."
-#: config/avr/avr.c:1156
+#: config/avr/avr.c:1122
#, fuzzy
msgid "internal compiler error. Unknown mode:"
msgstr "ÆâÉô¥³¥ó¥Ñ¥¤¥é¥¨¥é¡¼."
-#: config/avr/avr.c:1864 config/avr/avr.c:2576
+#: config/avr/avr.c:1744 config/avr/avr.c:2405
#, fuzzy
msgid "invalid insn:"
msgstr "̵¸ú¤Ê #line"
-#: config/avr/avr.c:1901 config/avr/avr.c:1987 config/avr/avr.c:2036
-#: config/avr/avr.c:2045 config/avr/avr.c:2143 config/avr/avr.c:2315
-#: config/avr/avr.c:2613 config/avr/avr.c:2724
+#: config/avr/avr.c:1778 config/avr/avr.c:1861 config/avr/avr.c:1910
+#: config/avr/avr.c:1919 config/avr/avr.c:2014 config/avr/avr.c:2183
+#: config/avr/avr.c:2439 config/avr/avr.c:2547
msgid "incorrect insn:"
msgstr ""
-#: config/avr/avr.c:2064 config/avr/avr.c:2228 config/avr/avr.c:2386
-#: config/avr/avr.c:2768
+#: config/avr/avr.c:1938 config/avr/avr.c:2099 config/avr/avr.c:2254
+#: config/avr/avr.c:2591
#, fuzzy
msgid "unknown move insn:"
msgstr "ÉÔÌÀ¤Ê¥ì¥¸¥¹¥¿Ì¾¤Ç¤¹: %s"
-#: config/avr/avr.c:3003
+#: config/avr/avr.c:2814
msgid "bad shift insn:"
msgstr ""
-#: config/avr/avr.c:3119 config/avr/avr.c:3549 config/avr/avr.c:3929
+#: config/avr/avr.c:2927 config/avr/avr.c:3348 config/avr/avr.c:3719
#, fuzzy
msgid "internal compiler error. Incorrect shift:"
msgstr "ÆâÉô¥³¥ó¥Ñ¥¤¥é¥¨¥é¡¼."
-#: config/avr/avr.c:4767 config/ip2k/ip2k.c:3197
+#: config/avr/avr.c:4532 config/ip2k/ip2k.c:3144
#, fuzzy
msgid "only initialized variables can be placed into program memory area"
msgstr "¥×¥í¥°¥é¥à¥á¥â¥êÎΰèÆâ¤ËÇÛÃ֤Ǥ­¤ëÊÑ¿ô¤À¤±¤ò½é´ü²½¤·¤Þ¤·¤¿"
-#: config/avr/avr.c:4866
+#: config/avr/avr.c:4626
#, fuzzy
msgid "only uninitialized variables can be placed in the .noinit section"
msgstr "8 ¥Ó¥Ã¥ÈÎΰèÆâ¤ËÇÛÃ֤Ǥ­¤ëÊÑ¿ô¤À¤±¤¬½é´ü²½¤µ¤ì¤Þ¤·¤¿"
-#: config/avr/avr.c:4881
+#: config/avr/avr.c:4640
#, fuzzy, c-format
msgid "MCU `%s' supported for assembler only"
msgstr "MCU `%s' ¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: config/avr/avr.h:78
+#: config/avr/avr.h:73
msgid "Assume int to be 8 bit integer"
msgstr "int ¤ò 8 ¥Ó¥Ã¥ÈÀ°¿ô¤È¤ß¤Ê¤¹"
-#: config/avr/avr.h:80
+#: config/avr/avr.h:75
msgid "Change the stack pointer without disabling interrupts"
msgstr "³ä¤ê¹þ¤ß¤Î̵¸ú²½¤Ê¤·¤Ç¥¹¥¿¥Ã¥¯¥Ý¥¤¥ó¥¿¤òÊѹ¹¤¹¤ë"
-#: config/avr/avr.h:82
+#: config/avr/avr.h:77
msgid "Use subroutines for function prologue/epilogue"
msgstr "´Ø¿ô¤ÎÁ°ÃÖ¤­/·ë¤Ó¤Î¤¿¤á¤Î¥µ¥Ö¥ë¡¼¥Á¥ó¤òÍøÍѤ¹¤ë"
-#: config/avr/avr.h:84
+#: config/avr/avr.h:79
msgid "Change only the low 8 bits of the stack pointer"
msgstr "¥¹¥¿¥Ã¥¯¥Ý¥¤¥ó¥¿¤Î²¼°Ì 8 ¥Ó¥Ã¥È¤À¤±¤òÊѹ¹¤¹¤ë"
-#: config/avr/avr.h:86
+#: config/avr/avr.h:81
msgid "Do not generate tablejump insns"
msgstr "¥Æ¡¼¥Ö¥ë¥¸¥ã¥ó¥×Ì¿Îá¤òÀ¸À®¤·¤Ê¤¤"
-#: config/avr/avr.h:88
+#: config/avr/avr.h:83
msgid "Use rjmp/rcall (limited range) on >8K devices"
msgstr ""
-#: config/avr/avr.h:91
+#: config/avr/avr.h:85
msgid "Output instruction sizes to the asm file"
msgstr "asm ¥Õ¥¡¥¤¥ë¤ËÌ¿Î᥵¥¤¥º¤ò½ÐÎϤ¹¤ë"
-#: config/avr/avr.h:108
+#: config/avr/avr.h:102
msgid "Specify the initial stack address"
msgstr "½é´ü¥¹¥¿¥Ã¥¯¥¢¥É¥ì¥¹¤ò»ØÄꤹ¤ë"
-#: config/avr/avr.h:109
+#: config/avr/avr.h:103
msgid "Specify the MCU name"
msgstr "MCU ̾¤ò»ØÄꤹ¤ë"
@@ -9262,148 +8410,143 @@ msgstr "MCU ̾¤ò»ØÄꤹ¤ë"
#. For instance, the SH target has only positive offsets in
#. addresses. Thus sorting to put the smallest address first allows
#. the most combinations to be found.
-#: config/avr/avr.h:2450
+#: config/avr/avr.h:2267
#, fuzzy
msgid "trampolines not supported"
msgstr "¥È¥é¥ó¥Ý¥ê¥ó¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó\n"
-#: config/c4x/c4x-c.c:69
+#: config/c4x/c4x-c.c:71
#, fuzzy, c-format
msgid "missing '(' after '#pragma %s' - ignored"
msgstr "½Ò¸ì¤Î¸å¤í¤Î '(' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: config/c4x/c4x-c.c:72
+#: config/c4x/c4x-c.c:74
#, fuzzy, c-format
msgid "missing function name in '#pragma %s' - ignored"
msgstr "¤ª¤«¤·¤Ê #pragma align - ̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: config/c4x/c4x-c.c:77
+#: config/c4x/c4x-c.c:79
#, fuzzy, c-format
msgid "malformed '#pragma %s' - ignored"
msgstr "¤ª¤«¤·¤Ê #pragma align - ̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: config/c4x/c4x-c.c:79
+#: config/c4x/c4x-c.c:81
#, c-format
msgid "missing section name in '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:84
+#: config/c4x/c4x-c.c:86
#, fuzzy, c-format
msgid "missing ')' for '#pragma %s' - ignored"
msgstr "¤ª¤«¤·¤Ê #pragma align - ̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: config/c4x/c4x-c.c:87
+#: config/c4x/c4x-c.c:89
#, c-format
msgid "junk at end of '#pragma %s'"
msgstr "'#pragma %s' ¤ÎºÇ¸å¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: config/c4x/c4x.c:280
+#: config/c4x/c4x.c:300
#, fuzzy, c-format
msgid "unknown CPU version %d, using 40.\n"
msgstr "ÉÔÌÀ¤Ê CPU ¥Ð¡¼¥¸¥ç¥ó %d¡¢40 ¤ò»ÈÍѤ·¤Þ¤¹¡£\n"
-#: config/c4x/c4x.c:853
+#: config/c4x/c4x.c:850
#, fuzzy, c-format
msgid "ISR %s requires %d words of local vars, max is 32767"
msgstr "ISR %s ¤Ï %d ¥ï¡¼¥É¤Î¥í¡¼¥«¥ëÊÑ¿ô¤òÍ׵ᤷ¡¢ºÇÂç¤Ï 32767 ¤Ç¤¹¡£"
-#: config/c4x/c4x.c:1602
+#: config/c4x/c4x.c:1571
msgid "using CONST_DOUBLE for address"
msgstr ""
-#: config/c4x/c4x.c:1742
+#: config/c4x/c4x.c:1709
msgid "c4x_address_cost: Invalid addressing mode"
msgstr ""
-#: config/c4x/c4x.c:1884
+#: config/c4x/c4x.c:1844
#, fuzzy, c-format
msgid "c4x_print_operand: %%L inconsistency"
msgstr "fr30_print_operand: ǧ¼±¤Ç¤­¤Ê¤¤ %B ¥³¡¼¥É¤Ç¤¹"
-#: config/c4x/c4x.c:1890
+#: config/c4x/c4x.c:1850
#, fuzzy, c-format
msgid "c4x_print_operand: %%N inconsistency"
msgstr "fr30_print_operand: ǧ¼±¤Ç¤­¤Ê¤¤ %B ¥³¡¼¥É¤Ç¤¹"
-#: config/c4x/c4x.c:1931
+#: config/c4x/c4x.c:1891
#, fuzzy, c-format
msgid "c4x_print_operand: %%O inconsistency"
msgstr "fr30_print_operand: ǧ¼±¤Ç¤­¤Ê¤¤ %B ¥³¡¼¥É¤Ç¤¹"
-#: config/c4x/c4x.c:2026
+#: config/c4x/c4x.c:1986
#, fuzzy
msgid "c4x_print_operand: Bad operand case"
msgstr "fr30_print_operand: %A ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê±é»»»Ò¤Ç¤¹"
-#: config/c4x/c4x.c:2069
+#: config/c4x/c4x.c:2027
#, fuzzy
msgid "c4x_print_operand_address: Bad post_modify"
msgstr "fr30_print_operand_address: ½èÍý¤µ¤ì¤Ê¤¤¥¢¥É¥ì¥¹¤Ç¤¹"
-#: config/c4x/c4x.c:2091
+#: config/c4x/c4x.c:2049
#, fuzzy
msgid "c4x_print_operand_address: Bad pre_modify"
msgstr "fr30_print_operand_address: ½èÍý¤µ¤ì¤Ê¤¤¥¢¥É¥ì¥¹¤Ç¤¹"
-#: config/c4x/c4x.c:2139 config/c4x/c4x.c:2151 config/c4x/c4x.c:2166
+#: config/c4x/c4x.c:2097 config/c4x/c4x.c:2109 config/c4x/c4x.c:2124
#, fuzzy
msgid "c4x_print_operand_address: Bad operand case"
msgstr "fr30_print_operand_address: ½èÍý¤µ¤ì¤Ê¤¤¥¢¥É¥ì¥¹¤Ç¤¹"
-#: config/c4x/c4x.c:2422
+#: config/c4x/c4x.c:2375
msgid "c4x_rptb_insert: Cannot find start label"
msgstr ""
-#: config/c4x/c4x.c:3409 config/c4x/c4x.c:3429
+#: config/c4x/c4x.c:3292 config/c4x/c4x.c:3310
msgid "mode not QImode"
msgstr ""
-#: config/c4x/c4x.c:3514
+#: config/c4x/c4x.c:3380
#, fuzzy
msgid "invalid indirect memory address"
msgstr "̵¸ú¤Ê PC ¤¬¹ÔÈÖ¹æ¥Æ¡¼¥Ö¥ë¤Ë¤¢¤ê¤Þ¤¹"
-#: config/c4x/c4x.c:3603
+#: config/c4x/c4x.c:3469
msgid "invalid indirect (S) memory address"
msgstr ""
-#: config/c4x/c4x.c:3944
+#: config/c4x/c4x.c:3797
msgid "c4x_valid_operands: Internal error"
msgstr ""
-#: config/c4x/c4x.c:4424
+#: config/c4x/c4x.c:4216
#, fuzzy
msgid "c4x_operand_subword: invalid mode"
msgstr "fr30_print_operand: ̵¸ú¤Ê %x ¥³¡¼¥É¤Ç¤¹"
-#: config/c4x/c4x.c:4427
+#: config/c4x/c4x.c:4219
#, fuzzy
msgid "c4x_operand_subword: invalid operand"
msgstr "fr30_print_operand: %A ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê±é»»»Ò¤Ç¤¹"
#. We could handle these with some difficulty.
#. e.g., *p-- => *(p-=2); *(p+1).
-#: config/c4x/c4x.c:4453
+#: config/c4x/c4x.c:4245
msgid "c4x_operand_subword: invalid autoincrement"
msgstr ""
-#: config/c4x/c4x.c:4459
+#: config/c4x/c4x.c:4251
msgid "c4x_operand_subword: invalid address"
msgstr ""
-#: config/c4x/c4x.c:4470
+#: config/c4x/c4x.c:4262
msgid "c4x_operand_subword: address not offsettable"
msgstr ""
-#: config/c4x/c4x.c:4670
+#: config/c4x/c4x.c:4472
msgid "c4x_rptb_rpts_p: Repeat block top label moved\n"
msgstr ""
-#. Name of the c4x assembler.
-#. Name of the c4x linker.
-#. Define assembler options.
-#. Define linker options.
-#. Specify the end file to link with.
#. Target compilation option flags.
#. Small memory model.
#. Use 24-bit MPYI for C3x.
@@ -9623,177 +8766,177 @@ msgstr "RPTS ÍѤκÇÂçÈ¿Éü¿ô¤ò»ØÄꤹ¤ë"
msgid "Select CPU to generate code for"
msgstr "¥³¡¼¥É¤¬À¸À®¤µ¤ì¤ë CPU ¤òÁªÂò¤¹¤ë"
-#: config/cris/cris.c:599
+#: config/cris/cris.c:597
msgid "unexpected index-type in cris_print_index"
msgstr ""
-#: config/cris/cris.c:615
+#: config/cris/cris.c:611
msgid "unexpected base-type in cris_print_base"
msgstr ""
-#: config/cris/cris.c:908
+#: config/cris/cris.c:904
#, c-format
msgid "stackframe too big: %d bytes"
msgstr ""
-#: config/cris/cris.c:1223
+#: config/cris/cris.c:1215
msgid "allocated but unused delay list in epilogue"
msgstr ""
-#: config/cris/cris.c:1233
+#: config/cris/cris.c:1225
#, fuzzy
msgid "unexpected function type needing stack adjustment for __builtin_eh_return"
msgstr "´Ø¿ô¤¬ __builtin_eh_return ¤ò»È¤¤¤Þ¤¹"
-#: config/cris/cris.c:1312
+#: config/cris/cris.c:1301
#, fuzzy
msgid "invalid operand for 'b' modifier"
msgstr "%N ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/cris/cris.c:1324
+#: config/cris/cris.c:1314
#, fuzzy
msgid "invalid operand for 'v' modifier"
msgstr "%N ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/cris/cris.c:1334
+#: config/cris/cris.c:1324
#, fuzzy
msgid "invalid operand for 'P' modifier"
msgstr "%N ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/cris/cris.c:1341
+#: config/cris/cris.c:1331
#, fuzzy
msgid "invalid operand for 'p' modifier"
msgstr "%p ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/cris/cris.c:1380
+#: config/cris/cris.c:1370
#, fuzzy
msgid "invalid operand for 'z' modifier"
msgstr "%N ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/cris/cris.c:1411 config/cris/cris.c:1441
+#: config/cris/cris.c:1401 config/cris/cris.c:1431
#, fuzzy
msgid "invalid operand for 'H' modifier"
msgstr "%N ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/cris/cris.c:1417
+#: config/cris/cris.c:1407
#, fuzzy
msgid "bad register"
msgstr "ÉâÆ°¾®¿ôÅÀ¥ì¥¸¥¹¥¿¤òÍøÍѤ¹¤ë"
-#: config/cris/cris.c:1455
+#: config/cris/cris.c:1445
#, fuzzy
msgid "invalid operand for 'e' modifier"
msgstr "%N ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/cris/cris.c:1472
+#: config/cris/cris.c:1462
#, fuzzy
msgid "invalid operand for 'm' modifier"
msgstr "%N ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/cris/cris.c:1497
+#: config/cris/cris.c:1487
#, fuzzy
msgid "invalid operand for 'A' modifier"
msgstr "%N ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/cris/cris.c:1505
+#: config/cris/cris.c:1495
#, fuzzy
msgid "invalid operand for 'D' modifier"
msgstr "%N ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/cris/cris.c:1519
+#: config/cris/cris.c:1509
#, fuzzy
msgid "invalid operand for 'T' modifier"
msgstr "%N ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/cris/cris.c:1528
+#: config/cris/cris.c:1518
#, fuzzy
msgid "invalid operand modifier letter"
msgstr "̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É½ÐÎÏ¥³¡¼¥É"
-#: config/cris/cris.c:1536
+#: config/cris/cris.c:1526
#, fuzzy, c-format
msgid "internal error: bad register: %d"
msgstr "ÆâÉô¥¨¥é¡¼: "
-#: config/cris/cris.c:1584
+#: config/cris/cris.c:1574
msgid "unexpected multiplicative operand"
msgstr ""
-#: config/cris/cris.c:1604
+#: config/cris/cris.c:1594
#, fuzzy
msgid "unexpected operand"
msgstr "ͽ´ü¤µ¤ì¤ë¥á¥â¥ê¥ì¥¤¥Æ¥ó¥·¤òÄ´À°¤¹¤ë"
-#: config/cris/cris.c:1639 config/cris/cris.c:1649
+#: config/cris/cris.c:1627 config/cris/cris.c:1637
#, fuzzy
msgid "unrecognized address"
msgstr "ǧ¼±ÉÔǽ¤Î¥¨¥¹¥±¡¼¥× \\r%c"
-#: config/cris/cris.c:2005
+#: config/cris/cris.c:1987
msgid "internal error: sideeffect-insn affecting main effect"
msgstr ""
#. If we get here, the caller got its initial tests wrong.
-#: config/cris/cris.c:2292
+#: config/cris/cris.c:2380
msgid "internal error: cris_side_effect_mode_ok with bad operands"
msgstr ""
-#: config/cris/cris.c:2374 config/cris/cris.c:2432
+#: config/cris/cris.c:2457 config/cris/cris.c:2519
#, fuzzy
msgid "unrecognized supposed constant"
msgstr "ǧ¼±ÉÔǽ¤Î¥¨¥¹¥±¡¼¥× \\r%c"
-#: config/cris/cris.c:2473
+#: config/cris/cris.c:2564
msgid "unrecognized supposed constant in cris_global_pic_symbol"
msgstr ""
-#: config/cris/cris.c:2492
+#: config/cris/cris.c:2583
#, fuzzy, c-format
msgid "-max-stackframe=%d is not usable, not between 0 and %d"
msgstr "-mregparm=%d ¤¬ 0 ¤«¤é %d ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/cris/cris.c:2520
+#: config/cris/cris.c:2611
#, c-format
msgid "unknown CRIS version specification in -march= or -mcpu= : %s"
msgstr ""
-#: config/cris/cris.c:2556
+#: config/cris/cris.c:2647
#, c-format
msgid "unknown CRIS cpu version specification in -mtune= : %s"
msgstr ""
-#: config/cris/cris.c:2574
+#: config/cris/cris.c:2665
#, fuzzy
msgid "-fPIC and -fpic are not supported in this configuration"
msgstr "%s ¤Ï¤³¤Î¥³¥ó¥Õ¥£¥®¥å¥ì¡¼¥·¥ç¥ó¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: config/cris/cris.c:2590
+#: config/cris/cris.c:2681
msgid "that particular -g option is invalid with -maout and -melinux"
msgstr ""
-#: config/cris/cris.c:2824 config/cris/cris.c:2869
+#: config/cris/cris.c:2936 config/cris/cris.c:2981
msgid "unexpected side-effects in address"
msgstr ""
#. Labels are never marked as global symbols.
-#: config/cris/cris.c:2966 config/cris/cris.c:2997
+#: config/cris/cris.c:3076 config/cris/cris.c:3107
msgid "unexpected PIC symbol"
msgstr ""
-#: config/cris/cris.c:2970
+#: config/cris/cris.c:3080
msgid "PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:2983 config/cris/cris.c:3066
+#: config/cris/cris.c:3093 config/cris/cris.c:3176
#, fuzzy
msgid "unexpected address expression"
msgstr "']' ¤¬É¬Íפǡ¢Ìµ¸ú¤Ê·¿É½¸½¤Ç¤¹"
-#: config/cris/cris.c:3001
+#: config/cris/cris.c:3111
msgid "emitting PIC operand, but PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:3010
+#: config/cris/cris.c:3120
msgid "unexpected NOTE as addr_const:"
msgstr ""
@@ -9806,227 +8949,227 @@ msgid "For elinux, request a specified stack-size for this program"
msgstr ""
#. No "no-etrax" as it does not really imply any model. On the other hand, "etrax" implies the common (and large) subset matching all models.
-#: config/cris/cris.h:340
+#: config/cris/cris.h:334
msgid "Compile for ETRAX 4 (CRIS v3)"
msgstr ""
-#: config/cris/cris.h:345
+#: config/cris/cris.h:339
msgid "Compile for ETRAX 100 (CRIS v8)"
msgstr ""
-#: config/cris/cris.h:349
+#: config/cris/cris.h:343
msgid "Emit verbose debug information in assembly code"
msgstr ""
-#: config/cris/cris.h:352
+#: config/cris/cris.h:346
#, fuzzy
msgid "Do not use condition codes from normal instructions"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥ÉÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/cris/cris.h:356
+#: config/cris/cris.h:350
msgid "Do not emit addressing modes with side-effect assignment"
msgstr ""
-#: config/cris/cris.h:359
+#: config/cris/cris.h:353
#, fuzzy
msgid "Do not tune stack alignment"
msgstr "¥¹¥¿¥Ã¥¯¥Ð¥¤¥¢¥¹¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/cris/cris.h:362
+#: config/cris/cris.h:356
#, fuzzy
msgid "Do not tune writable data alignment"
msgstr "ʸ»úÎó¤ò½ñ¤­¹þ¤ß²Äǽ¥Ç¡¼¥¿¥»¥¯¥·¥ç¥ó¤Ë³ÊǼ¤¹¤ë"
-#: config/cris/cris.h:365
+#: config/cris/cris.h:359
msgid "Do not tune code and read-only data alignment"
msgstr ""
-#: config/cris/cris.h:374
+#: config/cris/cris.h:368
msgid "Align code and data to 32 bits"
msgstr ""
-#: config/cris/cris.h:387
+#: config/cris/cris.h:381
msgid "Don't align items in code or data"
msgstr ""
-#: config/cris/cris.h:390
+#: config/cris/cris.h:384
#, fuzzy
msgid "Do not emit function prologue or epilogue"
msgstr "´Ø¿ô¤ÎÁ°ÃÖ¤­/·ë¤Ó¤Î¤¿¤á¤Î¥µ¥Ö¥ë¡¼¥Á¥ó¤òÍøÍѤ¹¤ë"
#. We have to handle this m-option here since we can't wash it off in both CC1_SPEC and CC1PLUS_SPEC.
-#: config/cris/cris.h:394
+#: config/cris/cris.h:388
msgid "Use the most feature-enabling options allowed by other options"
msgstr ""
#. We must call it "override-" since calling it "no-" will cause gcc.c to forget it, if there's a "later" -mbest-lib-options. Kludgy, but needed for some multilibbed files.
-#: config/cris/cris.h:400
+#: config/cris/cris.h:394
msgid "Override -mbest-lib-options"
msgstr ""
-#: config/cris/cris.h:432
+#: config/cris/cris.h:426
#, fuzzy
msgid "Generate code for the specified chip or CPU version"
msgstr "½êÍ¿¤Î CPU ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/cris/cris.h:434
+#: config/cris/cris.h:428
#, fuzzy
msgid "Tune alignment for the specified chip or CPU version"
msgstr "`%s' ¤ËÂФ·¤Æ¤Î¥¢¥é¥¤¥ó¥á¥ó¥È¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó"
-#: config/cris/cris.h:436
+#: config/cris/cris.h:430
msgid "Warn when a stackframe is larger than the specified size"
msgstr ""
#. Node: Profiling
-#: config/cris/cris.h:1022
+#: config/cris/cris.h:1016
msgid "no FUNCTION_PROFILER for CRIS"
msgstr ""
-#: config/cris/linux.h:71
+#: config/cris/linux.h:69
msgid "Together with -fpic and -fPIC, do not use GOTPLT references"
msgstr ""
-#: config/d30v/d30v.c:207
+#: config/d30v/d30v.c:218
#, fuzzy, c-format
msgid "bad modes_tieable_p for register %s, mode1 %s, mode2 %s"
msgstr "¥ì¥¸¥¹¥¿ %s ¤Ë¤È¤Ã¤ÆÉÔÀµ¤Ê modes_tieable_p, mode1 %s, mode2 %s"
-#: config/d30v/d30v.c:2666
+#: config/d30v/d30v.c:2678
msgid "bad insn to d30v_print_operand_address:"
msgstr ""
-#: config/d30v/d30v.c:2683 config/d30v/d30v.c:2744 config/d30v/d30v.c:2765
-#: config/d30v/d30v.c:2783
+#: config/d30v/d30v.c:2695 config/d30v/d30v.c:2756 config/d30v/d30v.c:2777
+#: config/d30v/d30v.c:2795
msgid "bad insn to d30v_print_operand_memory_reference:"
msgstr ""
-#: config/d30v/d30v.c:2851
+#: config/d30v/d30v.c:2863
msgid "bad insn to d30v_print_operand, 'f' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2860
+#: config/d30v/d30v.c:2872
msgid "bad insn to d30v_print_operand, 'A' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2867
+#: config/d30v/d30v.c:2879
msgid "bad insn to d30v_print_operand, 'M' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2921
+#: config/d30v/d30v.c:2933
msgid "bad insn to print_operand, 'F' or 'T' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2932
+#: config/d30v/d30v.c:2944
msgid "bad insn to print_operand, 'B' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2939
+#: config/d30v/d30v.c:2951
msgid "bad insn to print_operand, 'E' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2957
+#: config/d30v/d30v.c:2969
msgid "bad insn to print_operand, 'R' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2966 config/d30v/d30v.c:2974
+#: config/d30v/d30v.c:2978 config/d30v/d30v.c:2986
msgid "bad insn to print_operand, 's' modifier:"
msgstr ""
-#: config/d30v/d30v.c:3003
+#: config/d30v/d30v.c:3015
msgid "bad insn in d30v_print_operand, 0 case"
msgstr ""
-#: config/d30v/d30v.c:3301
+#: config/d30v/d30v.c:3313
msgid "d30v_emit_comparison"
msgstr ""
-#: config/d30v/d30v.c:3345
+#: config/d30v/d30v.c:3357
msgid "bad call to d30v_move_2words"
msgstr ""
-#: config/d30v/d30v.h:114
+#: config/d30v/d30v.h:111
msgid "Enable use of conditional move instructions"
msgstr "¾ò·ïŪ move Ì¿Îá¤ÎÍøÍѤòÍ­¸ú¤Ë¤¹¤ë"
-#: config/d30v/d30v.h:117
+#: config/d30v/d30v.h:114
msgid "Disable use of conditional move instructions"
msgstr "¾ò·ïŪ move Ì¿Îá¤ÎÍøÍѤò̵¸ú¤Ë¤¹¤ë"
-#: config/d30v/d30v.h:120
+#: config/d30v/d30v.h:117
msgid "Debug argument support in compiler"
msgstr "¥³¥ó¥Ñ¥¤¥éÆâ¤Î¥Ç¥Ð¥Ã¥°°ú¿ô¤ò¥µ¥Ý¡¼¥È¤¹¤ë"
-#: config/d30v/d30v.h:123
+#: config/d30v/d30v.h:120
msgid "Debug stack support in compiler"
msgstr "¥³¥ó¥Ñ¥¤¥éÆâ¤Î¥Ç¥Ð¥Ã¥°¥¹¥¿¥Ã¥¯¤ò¥µ¥Ý¡¼¥È¤¹¤ë"
-#: config/d30v/d30v.h:126
+#: config/d30v/d30v.h:123
msgid "Debug memory address support in compiler"
msgstr "¥³¥ó¥Ñ¥¤¥éÆâ¤Î¥Ç¥Ð¥Ã¥°¥á¥â¥ê¥¢¥É¥ì¥¹¤ò¥µ¥Ý¡¼¥È¤¹¤ë"
-#: config/d30v/d30v.h:129
+#: config/d30v/d30v.h:126
#, fuzzy
msgid "Make adjacent short instructions parallel if possible"
msgstr "²Äǽ¤Ê¤é¤ÐÎÙÀܤ¹¤ëû¤¤Ì¿Îá¤òÊÂÎ󲽤¹¤ë"
-#: config/d30v/d30v.h:132
+#: config/d30v/d30v.h:129
#, fuzzy
msgid "Do not make adjacent short instructions parallel"
msgstr "ÎÙÀܤ¹¤ëû¤¤Ì¿Îá¤òÊÂÎ󲽤·¤Ê¤¤"
-#: config/d30v/d30v.h:135 config/d30v/d30v.h:138
+#: config/d30v/d30v.h:132 config/d30v/d30v.h:135
msgid "Link programs/data to be in external memory by default"
msgstr "¥×¥í¥°¥é¥à/¥Ç¡¼¥¿¤ò¥Ç¥Õ¥©¥ë¥È¤Ç³°Éô¥á¥â¥êÆâ¤Ë¥ê¥ó¥¯¤¹¤ë"
-#: config/d30v/d30v.h:141
+#: config/d30v/d30v.h:138
msgid "Link programs/data to be in onchip memory by default"
msgstr "¥×¥í¥°¥é¥à/¥Ç¡¼¥¿¤ò¥Ç¥Õ¥©¥ë¥È¤Ç¥Á¥Ã¥×¾å¤Î¥á¥â¥êÆâ¤Ë¥ê¥ó¥¯¤¹¤ë"
-#: config/d30v/d30v.h:149
+#: config/d30v/d30v.h:146
msgid "Change the branch costs within the compiler"
msgstr "¥³¥ó¥Ñ¥¤¥éÆâÉô¤Ç¤Îʬ´ô¥³¥¹¥È¤òÊѹ¹¤¹¤ë"
-#: config/d30v/d30v.h:152
+#: config/d30v/d30v.h:149
msgid "Change the threshold for conversion to conditional execution"
msgstr "¾ò·ïŪ¤Ê¼Â¹Ô¤Ø¤ÎÊѹ¹¤Î¤¿¤á¤ÎïçÃͤòÊѹ¹¤¹¤ë"
-#: config/dsp16xx/dsp16xx.c:1446 config/dsp16xx/dsp16xx.c:1469
+#: config/dsp16xx/dsp16xx.c:1463 config/dsp16xx/dsp16xx.c:1486
#, fuzzy
msgid "stack size > 32k"
msgstr "¥¹¥¿¥Ã¥¯¥µ¥¤¥º > 32k"
-#: config/dsp16xx/dsp16xx.c:1678
+#: config/dsp16xx/dsp16xx.c:1695
#, fuzzy
msgid "invalid addressing mode"
msgstr "Ê£»¨¤Ê¥¢¥É¥ì¥·¥ó¥°¥â¡¼¥É¤ò»ÈÍѤ¹¤ë"
-#: config/dsp16xx/dsp16xx.c:1821
+#: config/dsp16xx/dsp16xx.c:1838
#, fuzzy
msgid "bad register extension code"
msgstr "ÉÔÀµ¤Ê¥ì¥¸¥¹¥¿³ÈÄ¥¥³¡¼¥É"
-#: config/dsp16xx/dsp16xx.c:1921
+#: config/dsp16xx/dsp16xx.c:1938
#, fuzzy
msgid "invalid offset in ybase addressing"
msgstr "ybase ¥¢¥É¥ì¥·¥ó¥°¤Ë̵¸ú¤Ê¥ª¥Õ¥»¥Ã¥È"
-#: config/dsp16xx/dsp16xx.c:1924
+#: config/dsp16xx/dsp16xx.c:1941
#, fuzzy
msgid "invalid register in ybase addressing"
msgstr "ybase ¥¢¥É¥ì¥·¥ó¥°¤Ë̵¸ú¤Ê¥ª¥Õ¥»¥Ã¥È"
-#: config/dsp16xx/dsp16xx.c:2099
+#: config/dsp16xx/dsp16xx.c:2116
#, fuzzy
msgid "invalid shift operator in emit_1600_core_shift"
msgstr "emit_1600_core_shift ¤Ç¤Î̵¸ú¤Ê¥·¥Õ¥È±é»»»Ò"
-#: config/dsp16xx/dsp16xx.c:2428
+#: config/dsp16xx/dsp16xx.c:2406
#, fuzzy
msgid "invalid mode for gen_tst_reg"
msgstr "gen_tst_reg ¤Ë¤È¤Ã¤Æ¤Î̵¸ú¤Ê¥â¡¼¥É"
-#: config/dsp16xx/dsp16xx.c:2500
+#: config/dsp16xx/dsp16xx.c:2478
#, fuzzy
msgid "invalid mode for integer comparison in gen_compare_reg"
msgstr "gen_compare_reg ¤Ç¤ÎÀ°¿ôÈæ³Ó¤Ë¤È¤Ã¤Æ¤Î̵¸ú¤Ê¥â¡¼¥É"
@@ -10139,8 +9282,12 @@ msgstr ""
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/dsp16xx/dsp16xx.h:1218 config/dsp16xx/dsp16xx.h:1772
-#: config/dsp16xx/dsp16xx.h:1777
+#. This is how to output an insn to push a register on the stack.
+#. It need not be very fast code since it is used only for profiling
+#. This is how to output an insn to pop a register from the stack.
+#. It need not be very fast code since it is used only for profiling
+#: config/dsp16xx/dsp16xx.h:1216 config/dsp16xx/dsp16xx.h:1667
+#: config/dsp16xx/dsp16xx.h:1672
#, fuzzy
msgid "profiling not implemented yet"
msgstr "¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¤Ï¡¢¤Þ¤À¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
@@ -10148,51 +9295,51 @@ msgstr "¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¤Ï¡¢¤Þ¤À¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
#. Emit RTL insns to initialize the variable parts of a trampoline.
#. FNADDR is an RTX for the address of the function's pure code.
#. CXT is an RTX for the static chain value for the function.
-#: config/dsp16xx/dsp16xx.h:1228 config/dsp16xx/dsp16xx.h:1240
+#: config/dsp16xx/dsp16xx.h:1226 config/dsp16xx/dsp16xx.h:1238
#, fuzzy
msgid "trampolines not yet implemented"
msgstr "Trampoline ¤Ï¡¢¤Þ¤À¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: config/fr30/fr30.c:453
+#: config/fr30/fr30.c:451
msgid "fr30_print_operand_address: unhandled address"
msgstr "fr30_print_operand_address: ½èÍý¤µ¤ì¤Ê¤¤¥¢¥É¥ì¥¹¤Ç¤¹"
-#: config/fr30/fr30.c:480
+#: config/fr30/fr30.c:475
#, fuzzy, c-format
msgid "fr30_print_operand: unrecognized %%p code"
msgstr "fr30_print_operand: ǧ¼±¤Ç¤­¤Ê¤¤ %p ¥³¡¼¥É¤Ç¤¹"
-#: config/fr30/fr30.c:500
+#: config/fr30/fr30.c:495
#, fuzzy, c-format
msgid "fr30_print_operand: unrecognized %%b code"
msgstr "fr30_print_operand: ǧ¼±¤Ç¤­¤Ê¤¤ %b ¥³¡¼¥É¤Ç¤¹"
-#: config/fr30/fr30.c:521
+#: config/fr30/fr30.c:516
#, fuzzy, c-format
msgid "fr30_print_operand: unrecognized %%B code"
msgstr "fr30_print_operand: ǧ¼±¤Ç¤­¤Ê¤¤ %B ¥³¡¼¥É¤Ç¤¹"
-#: config/fr30/fr30.c:529
+#: config/fr30/fr30.c:524
#, fuzzy, c-format
msgid "fr30_print_operand: invalid operand to %%A code"
msgstr "fr30_print_operand: %A ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê±é»»»Ò¤Ç¤¹"
-#: config/fr30/fr30.c:546
+#: config/fr30/fr30.c:541
#, fuzzy, c-format
msgid "fr30_print_operand: invalid %%x code"
msgstr "fr30_print_operand: ̵¸ú¤Ê %x ¥³¡¼¥É¤Ç¤¹"
-#: config/fr30/fr30.c:553
+#: config/fr30/fr30.c:548
#, fuzzy, c-format
msgid "fr30_print_operand: invalid %%F code"
msgstr "fr30_print_operand: ̵¸ú¤Ê %F ¥³¡¼¥É¤Ç¤¹"
-#: config/fr30/fr30.c:570
+#: config/fr30/fr30.c:565
msgid "fr30_print_operand: unknown code"
msgstr "fr30_print_operand: ÉÔÌÀ¤Ê¥³¡¼¥É¤Ç¤¹"
-#: config/fr30/fr30.c:599 config/fr30/fr30.c:608 config/fr30/fr30.c:619
-#: config/fr30/fr30.c:632
+#: config/fr30/fr30.c:594 config/fr30/fr30.c:603 config/fr30/fr30.c:614
+#: config/fr30/fr30.c:627
msgid "fr30_print_operand: unhandled MEM"
msgstr "fr30_print_operand: ½èÍý¤µ¤ì¤Ê¤¤ MEM ¤Ç¤¹"
@@ -10200,140 +9347,140 @@ msgstr "fr30_print_operand: ½èÍý¤µ¤ì¤Ê¤¤ MEM ¤Ç¤¹"
msgid "Assume small address space"
msgstr "¥¹¥â¡¼¥ë¥¢¥É¥ì¥¹¶õ´Ö¤È¤ß¤Ê¤¹"
-#: config/frv/frv.c:410 config/frv/frv.c:428
+#: config/frv/frv.c:392 config/frv/frv.c:410
#, c-format
msgid "Unknown cpu: -mcpu=%s"
msgstr ""
-#: config/frv/frv.c:451
+#: config/frv/frv.c:433
msgid "-fpic and -gdwarf are incompatible (-fpic and -g/-gdwarf-2 are fine)"
msgstr ""
-#: config/frv/frv.c:2520
+#: config/frv/frv.c:2397
#, fuzzy
msgid "Bad insn to frv_print_operand_address:"
msgstr "fr30_print_operand_address: ½èÍý¤µ¤ì¤Ê¤¤¥¢¥É¥ì¥¹¤Ç¤¹"
-#: config/frv/frv.c:2533
+#: config/frv/frv.c:2408
msgid "Bad register to frv_print_operand_memory_reference_reg:"
msgstr ""
-#: config/frv/frv.c:2574 config/frv/frv.c:2584 config/frv/frv.c:2593
-#: config/frv/frv.c:2621 config/frv/frv.c:2633 config/frv/frv.c:2637
+#: config/frv/frv.c:2446 config/frv/frv.c:2456 config/frv/frv.c:2465
+#: config/frv/frv.c:2493 config/frv/frv.c:2506 config/frv/frv.c:2510
msgid "Bad insn to frv_print_operand_memory_reference:"
msgstr ""
-#: config/frv/frv.c:2779
+#: config/frv/frv.c:2648
#, fuzzy
msgid "Bad insn in frv_print_operand, bad const_double"
msgstr "¥ª¥Ú¥é¥ó¥É¤Ï const_double ¤Ç¤¹"
-#: config/frv/frv.c:2824
+#: config/frv/frv.c:2693
msgid "Bad insn to frv_print_operand, 'C' modifier:"
msgstr ""
-#: config/frv/frv.c:2847
+#: config/frv/frv.c:2716
msgid "Bad insn to frv_print_operand, 'c' modifier:"
msgstr ""
-#: config/frv/frv.c:2872
+#: config/frv/frv.c:2741
msgid "Bad insn to frv_print_operand, 'e' modifier:"
msgstr ""
-#: config/frv/frv.c:2880
+#: config/frv/frv.c:2749
msgid "Bad insn to frv_print_operand, 'F' modifier:"
msgstr ""
-#: config/frv/frv.c:2896
+#: config/frv/frv.c:2765
msgid "Bad insn to frv_print_operand, 'f' modifier:"
msgstr ""
-#: config/frv/frv.c:2949
+#: config/frv/frv.c:2818
msgid "Bad insn to frv_print_operand, 'L' modifier:"
msgstr ""
-#: config/frv/frv.c:2962
+#: config/frv/frv.c:2831
msgid "Bad insn to frv_print_operand, 'M/N' modifier:"
msgstr ""
-#: config/frv/frv.c:2983
+#: config/frv/frv.c:2852
msgid "Bad insn to frv_print_operand, 'O' modifier:"
msgstr ""
-#: config/frv/frv.c:3001
+#: config/frv/frv.c:2870
msgid "Bad insn to frv_print_operand, P modifier:"
msgstr ""
-#: config/frv/frv.c:3021
+#: config/frv/frv.c:2890
msgid "Bad insn in frv_print_operand, z case"
msgstr ""
-#: config/frv/frv.c:3049
+#: config/frv/frv.c:2918
msgid "Bad insn in frv_print_operand, 0 case"
msgstr ""
-#: config/frv/frv.c:3054
+#: config/frv/frv.c:2923
#, fuzzy
msgid "frv_print_operand: unknown code"
msgstr "fr30_print_operand: ÉÔÌÀ¤Ê¥³¡¼¥É¤Ç¤¹"
-#: config/frv/frv.c:5737
+#: config/frv/frv.c:5474
msgid "Bad output_move_single operand"
msgstr ""
-#: config/frv/frv.c:5866
+#: config/frv/frv.c:5601
msgid "Bad output_move_double operand"
msgstr ""
-#: config/frv/frv.c:6010
+#: config/frv/frv.c:5743
msgid "Bad output_condmove_single operand"
msgstr ""
-#: config/frv/frv.c:8315
+#: config/frv/frv.c:8031
msgid "frv_registers_update"
msgstr ""
-#: config/frv/frv.c:8475
+#: config/frv/frv.c:8188
msgid "frv_registers_used_p"
msgstr ""
-#: config/frv/frv.c:8604
+#: config/frv/frv.c:8314
msgid "frv_registers_set_p"
msgstr ""
-#: config/frv/frv.c:9171
+#: config/frv/frv.c:8910
#, fuzzy
msgid "accumulator is not a constant integer"
msgstr "`asm' ¤Î°ú¿ô¤¬Äê¿ôʸ»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó "
-#: config/frv/frv.c:9176
+#: config/frv/frv.c:8915
msgid "accumulator number is out of bounds"
msgstr ""
-#: config/frv/frv.c:9187
+#: config/frv/frv.c:8926
#, fuzzy, c-format
msgid "inappropriate accumulator for `%s'"
msgstr "`%s' ¤ÎÁ°ÊýÀë¸À¤¬¤¢¤ê¤Þ¤»¤ó"
-#: config/frv/frv.c:9253
+#: config/frv/frv.c:8986
#, c-format
msgid "`%s' expects a constant argument"
msgstr ""
-#: config/frv/frv.c:9258
+#: config/frv/frv.c:8991
#, fuzzy, c-format
msgid "constant argument out of range for `%s'"
msgstr "±é»»»ÒÈֹ椬¥Õ¥©¡¼¥Þ¥Ã¥È¤ÎÈϰϳ°¤Ç¤¹"
-#: config/frv/frv.c:9638
+#: config/frv/frv.c:9338
msgid "media functions are not available unless -mmedia is used"
msgstr ""
-#: config/frv/frv.c:9650
+#: config/frv/frv.c:9350
msgid "this media function is only available on the fr500"
msgstr ""
-#: config/frv/frv.c:9678
+#: config/frv/frv.c:9378
msgid "this media function is only available on the fr400"
msgstr ""
@@ -10346,16 +9493,17 @@ msgstr ""
#. #else
#. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)");
#. #endif
-#: config/frv/frv.h:512
+#: config/frv/frv.h:506
+#, c-format
msgid " (frv)"
msgstr ""
-#: config/h8300/h8300.c:314
+#: config/h8300/h8300.c:288
#, fuzzy
msgid "-ms2600 is used without -ms"
msgstr "-ms2600 ¤¬ -ms ¤Ê¤·¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: config/h8300/h8300.c:320
+#: config/h8300/h8300.c:294
#, fuzzy
msgid "-mn is used without -mh or -ms"
msgstr "-ms2600 ¤¬ -ms ¤Ê¤·¤Ç»È¤ï¤ì¤Þ¤·¤¿"
@@ -10365,79 +9513,79 @@ msgstr "-ms2600 ¤¬ -ms ¤Ê¤·¤Ç»È¤ï¤ì¤Þ¤·¤¿"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/h8300/h8300.h:150
+#: config/h8300/h8300.h:145
#, fuzzy
msgid "Generate H8S code"
msgstr "H8/S ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/h8300/h8300.h:151
+#: config/h8300/h8300.h:146
#, fuzzy
msgid "Do not generate H8S code"
msgstr "H8/S ¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
-#: config/h8300/h8300.h:152
+#: config/h8300/h8300.h:147
#, fuzzy
msgid "Generate H8S/2600 code"
msgstr "H8/S2600 ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/h8300/h8300.h:153
+#: config/h8300/h8300.h:148
#, fuzzy
msgid "Do not generate H8S/2600 code"
msgstr "H8/S2600 ¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
-#: config/h8300/h8300.h:154
+#: config/h8300/h8300.h:149
msgid "Make integers 32 bits wide"
msgstr "À°¿ô¤ò 32 ¥Ó¥Ã¥ÈÉý¤È¤¹¤ë"
-#: config/h8300/h8300.h:157
+#: config/h8300/h8300.h:152
msgid "Use registers for argument passing"
msgstr "°ú¿ô¤ò¥ì¥¸¥¹¥¿ÅϤ·¤Ë¤¹¤ë"
-#: config/h8300/h8300.h:159
+#: config/h8300/h8300.h:154
msgid "Do not use registers for argument passing"
msgstr "°ú¿ô¤ò¥ì¥¸¥¹¥¿ÅϤ·¤Ë¤·¤Ê¤¤"
-#: config/h8300/h8300.h:161
+#: config/h8300/h8300.h:156
msgid "Consider access to byte sized memory slow"
msgstr "¥Ð¥¤¥È¥µ¥¤¥ºÃ±°Ì¤Î¥á¥â¥ê¥¢¥¯¥»¥¹¤¬ÃÙ¤¤¤³¤È¤ò¹Íθ¤¹¤ë"
-#: config/h8300/h8300.h:162
+#: config/h8300/h8300.h:157
msgid "Enable linker relaxing"
msgstr "¥ê¥ó¥«¤Î -relax ¥ª¥×¥·¥ç¥ó¤òÍ­¸ú¤Ë¤¹¤ë"
-#: config/h8300/h8300.h:164
+#: config/h8300/h8300.h:158
msgid "Generate H8/300H code"
msgstr "H8/300H ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/h8300/h8300.h:165
+#: config/h8300/h8300.h:159
msgid "Enable the normal mode"
msgstr ""
-#: config/h8300/h8300.h:166
+#: config/h8300/h8300.h:160
msgid "Do not generate H8/300H code"
msgstr "H8/300H ¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
-#: config/h8300/h8300.h:167
+#: config/h8300/h8300.h:161
msgid "Use H8/300 alignment rules"
msgstr "H8/300 ¥¢¥é¥¤¥ó¥á¥ó¥Èµ¬Â§¤ò»ÈÍѤ¹¤ë"
-#: config/i370/i370-c.c:53
+#: config/i370/i370-c.c:55
msgid "junk at end of #pragma map"
msgstr "#pragma map ¤Î½ª¤ê¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: config/i370/i370-c.c:59
+#: config/i370/i370-c.c:61
msgid "malformed #pragma map, ignored"
msgstr "¤ª¤«¤·¤Ê #pragma map¡¢Ìµ»ë¤µ¤ì¤Þ¤·¤¿"
-#: config/i370/i370.c:915
+#: config/i370/i370.c:784
msgid "real name is too long - alias ignored"
msgstr "ËÜÍè¤Î̾Á°¤¬Ä¹¤¹¤®¤Þ¤¹ - ÊÌ̾¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: config/i370/i370.c:920
+#: config/i370/i370.c:789
msgid "alias name is too long - alias ignored"
msgstr "ÊÌ̾¤¬Ä¹¤¹¤®¤Þ¤¹ - ÊÌ̾¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: config/i370/i370.c:1191
+#: config/i370/i370.c:1060
msgid "internal error--no jump follows compare:"
msgstr ""
@@ -10453,425 +9601,480 @@ msgstr "ʸ»úÌ¿Îá¤òÀ¸À®¤¹¤ë"
msgid "Do not generate char instructions"
msgstr "ʸ»úÌ¿Îá¤òÀ¸À®¤·¤Ê¤¤"
-#: config/i386/i386.c:1050
+#: config/i386/i386.c:1161
#, fuzzy, c-format
msgid "code model %s not supported in PIC mode"
msgstr "-mcmodel= ¤Ï 32 bit ¥·¥¹¥Æ¥à¾å¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: config/i386/i386.c:1060 config/sparc/sparc.c:356
+#: config/i386/i386.c:1171 config/sparc/sparc.c:387
#, c-format
msgid "bad value (%s) for -mcmodel= switch"
msgstr "-mcmodel= ¥¹¥¤¥Ã¥Á¤Ë¤È¤Ã¤ÆÉÔÀµ¤ÊÃÍ (%s)"
-#: config/i386/i386.c:1075
+#: config/i386/i386.c:1186
#, fuzzy, c-format
msgid "bad value (%s) for -masm= switch"
msgstr "-mabi= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
-#: config/i386/i386.c:1078
+#: config/i386/i386.c:1189
#, fuzzy, c-format
msgid "code model `%s' not supported in the %s bit mode"
msgstr "-mcmodel= ¤Ï 32 bit ¥·¥¹¥Æ¥à¾å¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: config/i386/i386.c:1081
+#: config/i386/i386.c:1192
#, fuzzy
msgid "code model `large' not supported yet"
msgstr "`%s' ¤Ï %s ¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: config/i386/i386.c:1083
+#: config/i386/i386.c:1194
#, c-format
msgid "%i-bit mode not compiled in"
msgstr ""
-#: config/i386/i386.c:1113
+#: config/i386/i386.c:1221 config/i386/i386.c:1233
+#, fuzzy
+msgid "CPU you selected does not support x86-64 instruction set"
+msgstr "¥¿¡¼¥²¥Ã¥È CPU ¤Ï THUMB Ì¿Îá¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó"
+
+#: config/i386/i386.c:1226 config/iq2000/iq2000.c:1840
#, c-format
msgid "bad value (%s) for -march= switch"
msgstr "-march= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
-#: config/i386/i386.c:1124
-#, c-format
-msgid "bad value (%s) for -mcpu= switch"
+#: config/i386/i386.c:1239
+#, fuzzy, c-format
+msgid "bad value (%s) for -mtune= switch"
msgstr "-mcpu= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
-#: config/i386/i386.c:1141
+#: config/i386/i386.c:1256
#, c-format
msgid "-mregparm=%d is not between 0 and %d"
msgstr "-mregparm=%d ¤¬ 0 ¤«¤é %d ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/i386/i386.c:1154
+#: config/i386/i386.c:1269
#, fuzzy
msgid "-malign-loops is obsolete, use -falign-loops"
msgstr "-malign-loops=%d ¤¬ 0 ¤«¤é %d ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/i386/i386.c:1159 config/i386/i386.c:1172 config/i386/i386.c:1185
+#: config/i386/i386.c:1274 config/i386/i386.c:1287 config/i386/i386.c:1300
#, c-format
msgid "-malign-loops=%d is not between 0 and %d"
msgstr "-malign-loops=%d ¤¬ 0 ¤«¤é %d ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/i386/i386.c:1167
+#: config/i386/i386.c:1282
#, fuzzy
msgid "-malign-jumps is obsolete, use -falign-jumps"
msgstr "-malign-jumps=%d ¤¬ 0 ¤«¤é %d ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/i386/i386.c:1180
+#: config/i386/i386.c:1295
#, fuzzy
msgid "-malign-functions is obsolete, use -falign-functions"
msgstr "-malign-functions=%d ¤¬ 0 ¤«¤é %d ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/i386/i386.c:1218
+#: config/i386/i386.c:1333
#, fuzzy, c-format
msgid "-mpreferred-stack-boundary=%d is not between %d and 12"
msgstr "-mpreferred-stack-boundary=%d ¤¬ 2 ¤«¤é 31 ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/i386/i386.c:1230
+#: config/i386/i386.c:1345
#, c-format
msgid "-mbranch-cost=%d is not between 0 and 5"
msgstr "-mbranch-cost=%d ¤¬ 0 ¤«¤é 5 ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/i386/i386.c:1242
+#: config/i386/i386.c:1357
#, fuzzy, c-format
msgid "bad value (%s) for -mtls-dialect= switch"
msgstr "-msdata ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
-#: config/i386/i386.c:1263
+#: config/i386/i386.c:1386
msgid "-malign-double makes no sense in the 64bit mode"
msgstr ""
-#: config/i386/i386.c:1265
+#: config/i386/i386.c:1388
#, fuzzy
msgid "-mrtd calling convention not supported in the 64bit mode"
msgstr "PIC ¥³¡¼¥ÉÀ¸À®¤Ï²Äȼ¹Իþ¥â¥Ç¥ë¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó\n"
-#: config/i386/i386.c:1281 config/i386/i386.c:1292
+#: config/i386/i386.c:1410 config/i386/i386.c:1421
#, fuzzy
msgid "SSE instruction set disabled, using 387 arithmetics"
msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤¬·×»»¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: config/i386/i386.c:1297
+#: config/i386/i386.c:1426
#, fuzzy
msgid "387 instruction set disabled, using SSE arithmetics"
msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤¬·×»»¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: config/i386/i386.c:1304
+#: config/i386/i386.c:1433
#, fuzzy, c-format
msgid "bad value (%s) for -mfpmath= switch"
msgstr "-march= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
-#: config/i386/i386.c:1436
+#: config/i386/i386.c:1581 config/i386/i386.c:1592
+#, fuzzy
+msgid "fastcall and stdcall attributes are not compatible"
+msgstr "shared ¤È mdll ¤È¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
+
+#: config/i386/i386.c:1585 config/i386/i386.c:1641
+#, fuzzy
+msgid "fastcall and regparm attributes are not compatible"
+msgstr "shared ¤È mdll ¤È¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
+
+#: config/i386/i386.c:1628
#, fuzzy, c-format
msgid "`%s' attribute requires an integer constant argument"
msgstr "3 ¤Ä¤Î 'l' ÀÜÈø¼­¤¬À°¿ôÄê¿ô¤Ë¤Ä¤¤¤Æ¤¤¤Þ¤¹"
-#: config/i386/i386.c:1442
+#: config/i386/i386.c:1634
#, fuzzy, c-format
msgid "argument to `%s' attribute larger than %d"
msgstr "ÄêµÁ¤Î¸å¤Ç `%s' °À­¤ò¥»¥Ã¥È¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: config/i386/i386.c:2504
+#: config/i386/i386.c:2593
+msgid "SSE vector argument without SSE enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2609
+msgid "MMX vector argument without MMX enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2837
msgid "SSE vector return without SSE enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:6386
+#: config/i386/i386.c:6811
msgid "invalid UNSPEC as operand"
msgstr "¥ª¥Ú¥é¥ó¥É¤È¤·¤Æ̵¸ú¤Ê UNSPEC"
-#: config/i386/i386.c:6648
+#: config/i386/i386.c:7069
msgid "extended registers have no high halves"
msgstr ""
-#: config/i386/i386.c:6663
+#: config/i386/i386.c:7084
msgid "unsupported operand size for extended register"
msgstr ""
-#: config/i386/i386.c:6978
+#: config/i386/i386.c:7399
msgid "operand is neither a constant nor a condition code, invalid operand code 'c'"
msgstr ""
-#: config/i386/i386.c:7024
+#: config/i386/i386.c:7445
#, fuzzy, c-format
msgid "invalid operand code `%c'"
msgstr "%N ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/i386/i386.c:7071
+#: config/i386/i386.c:7488
#, fuzzy
msgid "invalid constraints for operand"
msgstr "¥ª¥Ú¥é¥ó¥É¤È¤·¤Æ̵¸ú¤Ê¼°"
-#: config/i386/i386.c:11271
+#: config/i386/i386.c:11889
#, fuzzy
msgid "unknown insn mode"
msgstr "ÉÔÌÀ¤Ê¥Þ¥·¥ó¥â¡¼¥É `%s'"
-#. @@@ better error message
-#: config/i386/i386.c:13391 config/i386/i386.c:13427
-msgid "selector must be an immediate"
-msgstr "¥»¥ì¥¯¥¿¤Ï¨ÃͤǤʤ±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-
-#. @@@ better error message
-#: config/i386/i386.c:13588 config/i386/i386.c:13622
-msgid "mask must be an immediate"
-msgstr "¥Þ¥¹¥¯¤Ï¨ÃͤǤʤ±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
+#: config/i386/i386.c:14021 config/i386/i386.c:14057
+#, c-format
+msgid "selector must be an integer constant in the range 0..%i"
+msgstr ""
-#: config/i386/i386.c:13654
+#: config/i386/i386.c:14285
#, fuzzy
msgid "shift must be an immediate"
msgstr "¥Þ¥¹¥¯¤Ï¨ÃͤǤʤ±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: config/i386/winnt.c:96
+#: config/i386/i386.c:15308
#, fuzzy, c-format
-msgid "function `%s' definition is marked dllimport."
-msgstr "´Ø¿ô¤ÎÄêµÁ¤¬ `auto' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
+msgid "`%s' incompatible attribute ignored"
+msgstr "`%s' °À­¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
#: config/i386/winnt.c:104
-#, fuzzy, c-format
-msgid "variable `%s' definition is marked dllimport."
+#, fuzzy
+msgid "%Jfunction `%D' definition is marked dllimport."
+msgstr "´Ø¿ô¤ÎÄêµÁ¤¬ `auto' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
+
+#: config/i386/winnt.c:112
+#, fuzzy
+msgid "%Jvariable `%D' definition is marked dllimport."
msgstr "ÀÅŪÊÑ¿ô `%s' ¤Ï dllimport ¤È¥Þ¡¼¥¯¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: config/i386/winnt.c:123
-#, c-format
-msgid "external linkage required for symbol '%s' because of '%s' attribute."
+#: config/i386/winnt.c:132
+msgid "%Jexternal linkage required for symbol '%D' because of '%s' attribute."
msgstr ""
-#: config/i386/winnt.c:143
+#: config/i386/winnt.c:149
#, fuzzy, c-format
msgid "`%s' attribute only applies to variables"
msgstr "`%s' °À­¤Ï·¿¤Ë¤ÏŬÍѤµ¤ì¤Þ¤»¤ó"
-#: config/i386/winnt.c:242
-#, c-format
-msgid "function '%s' is defined after prior declaration as dllimport: attribute ignored."
+#: config/i386/winnt.c:247
+msgid "%Jfunction '%D' is defined after prior declaration as dllimport: attribute ignored"
msgstr ""
-#: config/i386/winnt.c:252
-#, fuzzy, c-format
-msgid "inline function '%s' is declared as dllimport: attribute ignored."
-msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤ÏÈó´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
+#: config/i386/winnt.c:258
+msgid "%Jinline function '%D' is declared as dllimport: attribute ignored."
+msgstr ""
-#: config/i386/winnt.c:263
-#, c-format
-msgid "definition of static data member '%s' of dllimport'd class."
+#: config/i386/winnt.c:270
+msgid "%Jdefinition of static data member '%D' of dllimport'd class."
msgstr ""
-#: config/i386/winnt.c:322
-#, c-format
-msgid "inconsistent dll linkage for '%s': dllexport assumed."
+#: config/i386/winnt.c:329
+msgid "%Jinconsistent dll linkage for '%D', dllexport assumed."
msgstr ""
-#: config/i386/winnt.c:364
+#: config/i386/winnt.c:371
#, fuzzy, c-format
msgid "`%s' declared as both exported to and imported from a DLL"
msgstr "`%s' ¤¬ DLL ¤«¤é import¡¢DLL ¤Ë export ¤ÎξÊý¤È¤·¤ÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: config/i386/winnt.c:373
-#, c-format
-msgid "failure in redeclaration of '%s': dllimport'd symbol lacks external linkage."
+#: config/i386/winnt.c:380
+msgid "%Jfailure in redeclaration of '%D': dllimport'd symbol lacks external linkage."
msgstr ""
-#: config/i386/winnt.c:479
-#, c-format
-msgid "'%s' %s after being referenced with dllimport linkage."
+#: config/i386/winnt.c:529
+msgid "%J'%D' defined locally after being referenced with dllimport linkage"
msgstr ""
-#: config/i386/cygwin.h:45
+#: config/i386/winnt.c:532
+msgid "%J'%D' redeclared without dllimport attribute after being referenced with dllimport linkage"
+msgstr ""
+
+#: config/i386/winnt.c:701
+#, fuzzy
+msgid "%J'%D' causes a section type conflict"
+msgstr "%s ¤Ï¥»¥¯¥·¥ç¥ó¥¿¥¤¥×¤Î¶¥¹ç¤ò°ú¤­µ¯¤³¤·¤Þ¤¹"
+
+#: config/i386/cygming.h:40
msgid "Use the Cygwin interface"
msgstr "Cygwin ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ò»ÈÍѤ¹¤ë"
-#: config/i386/cygwin.h:46
+#: config/i386/cygming.h:41
msgid "Use the Mingw32 interface"
msgstr "Mingw32 ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ò»ÈÍѤ¹¤ë"
-#: config/i386/cygwin.h:47
+#: config/i386/cygming.h:42
msgid "Create GUI application"
msgstr "GUI ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òºî¤ë"
-#: config/i386/cygwin.h:48
+#: config/i386/cygming.h:43
msgid "Don't set Windows defines"
msgstr "Windows ¤Î define ¤òÀßÄꤷ¤Ê¤¤"
-#: config/i386/cygwin.h:49
+#: config/i386/cygming.h:44
msgid "Set Windows defines"
msgstr "Windows ¤Î define ¤òÀßÄꤹ¤ë"
-#: config/i386/cygwin.h:50
+#: config/i386/cygming.h:45
msgid "Create console application"
msgstr "¥³¥ó¥½¡¼¥ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òºî¤ë"
-#: config/i386/cygwin.h:51 config/i386/win32.h:59
+#: config/i386/cygming.h:46
msgid "Generate code for a DLL"
msgstr "DLL ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/i386/cygwin.h:53 config/i386/win32.h:61
+#: config/i386/cygming.h:48
msgid "Ignore dllimport for functions"
msgstr "´Ø¿ô¤Ø¤Î dllimport ¤ò̵»ë¤¹¤ë"
-#: config/i386/cygwin.h:55
+#: config/i386/cygming.h:50
msgid "Use Mingw-specific thread support"
msgstr "Mingw ¸ÇÍ­¤Î¥¹¥ì¥Ã¥É¥µ¥Ý¡¼¥È¤ò»ÈÍѤ¹¤ë"
-#: config/i386/cygwin.h:245
+#: config/i386/cygming.h:169
#, c-format
msgid "-f%s ignored for target (all code is position independent)"
msgstr "-f%s ¤Ï¥¿¡¼¥²¥Ã¥È¤Ç̵»ë¤µ¤ì¤Þ¤¹ (Á´¤Æ¤Î¥³¡¼¥É¤Ï°ÌÃÖÈó°Í¸¤Ç¤¹)"
-#: config/i386/djgpp.h:206
+#: config/i386/djgpp.h:191
#, fuzzy
msgid "-mbnu210 is ignored (option is obsolete)"
msgstr "-mbnu210 ¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿(ÇѤ줿¥ª¥×¥·¥ç¥ó¤Ç¤¹)"
+#: config/i386/i386-interix.h:256
+#, fuzzy
+msgid "ms-bitfields not supported for objc"
+msgstr "-pipe ¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
-#: config/i386/i386.h:306
+#: config/i386/i386.h:339
msgid "Alternate calling convention"
msgstr "¸Æ¤Ó½Ð¤·µ¬Ìó¤òÆþ¤ìÂؤ¨¤ë"
-#: config/i386/i386.h:308 config/m68k/m68k.h:180 config/ns32k/ns32k.h:144
+#: config/i386/i386.h:341 config/m68k/m68k.h:344 config/ns32k/ns32k.h:144
msgid "Use normal calling convention"
msgstr "ÉáÄ̤θƤӽФ·µ¬Ìó¤ò»È¤¦"
-#: config/i386/i386.h:310
+#: config/i386/i386.h:343
msgid "Align some doubles on dword boundary"
msgstr "double ¤ò dword ¶­³¦¤Ë¥¢¥é¥¤¥ó¥á¥ó¥È¤¹¤ë"
-#: config/i386/i386.h:312
+#: config/i386/i386.h:345
msgid "Align doubles on word boundary"
msgstr "double ¤ò word ¶­³¦¤Ë¥¢¥é¥¤¥ó¥á¥ó¥È¤¹¤ë"
-#: config/i386/i386.h:314
+#: config/i386/i386.h:347
msgid "Uninitialized locals in .bss"
msgstr ".bss ¤Ë¤¢¤ë¥í¡¼¥«¥ë¤Ê¤â¤Î¤Ï½é´ü²½¤µ¤ì¤Ê¤¤"
-#: config/i386/i386.h:316
+#: config/i386/i386.h:349
msgid "Uninitialized locals in .data"
msgstr ".data ¤Ë¤¢¤ë¥í¡¼¥«¥ë¤Ê¤â¤Î¤Ï½é´ü²½¤µ¤ì¤Ê¤¤"
-#: config/i386/i386.h:318 config/m68k/linux-aout.h:45 config/m68k/linux.h:50
-#: config/ns32k/ns32k.h:167
+#: config/i386/i386.h:351 config/m68k/linux.h:35 config/ns32k/ns32k.h:167
msgid "Use IEEE math for fp comparisons"
msgstr "ÉâÆ°¾®¿ôÅÀÈæ³Ó¤Ë IEEE µ¬³Ê¤ò»È¤¦"
-#: config/i386/i386.h:320 config/ns32k/ns32k.h:169
+#: config/i386/i386.h:353 config/ns32k/ns32k.h:169
msgid "Do not use IEEE math for fp comparisons"
msgstr "ÉâÆ°¾®¿ôÅÀÈæ³Ó¤Ë IEEE µ¬³Ê¤ò»È¤ï¤Ê¤¤"
-#: config/i386/i386.h:322
+#: config/i386/i386.h:355
msgid "Return values of functions in FPU registers"
msgstr "FPU ¥ì¥¸¥¹¥¿Æâ¤Îµ¡Ç½¤ÎÃͤòÊÖ¤¹"
-#: config/i386/i386.h:324
+#: config/i386/i386.h:357
msgid "Do not return values of functions in FPU registers"
msgstr "FPU ¥ì¥¸¥¹¥¿Æâ¤Îµ¡Ç½¤ÎÃͤòÊÖ¤µ¤Ê¤¤"
-#: config/i386/i386.h:326
+#: config/i386/i386.h:359
msgid "Do not generate sin, cos, sqrt for FPU"
msgstr "FPU ÍѤΠsin, cos, sqrt ¤òÀ¸À®¤·¤Ê¤¤"
-#: config/i386/i386.h:328
+#: config/i386/i386.h:361
msgid "Generate sin, cos, sqrt for FPU"
msgstr "FPU ÍѤΠsin, cos, sqrt ¤òÀ¸À®¤¹¤ë"
-#: config/i386/i386.h:330
+#: config/i386/i386.h:363
msgid "Omit the frame pointer in leaf functions"
msgstr "Ëöü¤Î´Ø¿ô¤Ç¤Ï¥Õ¥ì¡¼¥à¥Ý¥¤¥ó¥¿¤ò¾Êά¤¹¤ë"
-#: config/i386/i386.h:333
+#: config/i386/i386.h:366
msgid "Enable stack probing"
msgstr "¥¹¥¿¥Ã¥¯Ãµº÷¤òÍ­¸ú¤Ë¤¹¤ë"
#. undocumented
#. undocumented
-#: config/i386/i386.h:338
+#: config/i386/i386.h:371
msgid "Align destination of the string operations"
msgstr "ʸ»úÎóÁàºî¤Î½ñ¹þ¤ßÀè¤ò¥¢¥é¥¤¥ó¥á¥ó¥È¤¹¤ë"
-#: config/i386/i386.h:340
+#: config/i386/i386.h:373
msgid "Do not align destination of the string operations"
msgstr "ʸ»úÎóÁàºî¤Î½ñ¹þ¤ßÀè¤ò¥¢¥é¥¤¥ó¥á¥ó¥È¤·¤Ê¤¤"
-#: config/i386/i386.h:342
+#: config/i386/i386.h:375
msgid "Inline all known string operations"
msgstr "´ûÃΤÎÁ´¤Æ¤Îʸ»úÎóÁàºî¤ò inline ¤Ë¤¹¤ë"
-#: config/i386/i386.h:344
+#: config/i386/i386.h:377
msgid "Do not inline all known string operations"
msgstr "´ûÃΤÎÁ´¤Æ¤Îʸ»úÎóÁàºî¤ò inline ¤Ë¤·¤Ê¤¤"
-#: config/i386/i386.h:346 config/i386/i386.h:350
+#: config/i386/i386.h:379 config/i386/i386.h:383
msgid "Use push instructions to save outgoing arguments"
msgstr "½ÐÎϤ¹¤ë°ú¿ô¤ò¥»¡¼¥Ö¤¹¤ë¤¿¤á push Ì¿Îá¤ò»È¤¦"
-#: config/i386/i386.h:348 config/i386/i386.h:352
+#: config/i386/i386.h:381 config/i386/i386.h:385
msgid "Do not use push instructions to save outgoing arguments"
msgstr "½ÐÎϤ¹¤ë°ú¿ô¤ò¥»¡¼¥Ö¤¹¤ë¤¿¤á¤Ë¤Ï push Ì¿Îá¤ò»È¤ï¤Ê¤¤"
-#: config/i386/i386.h:354
+#: config/i386/i386.h:387
#, fuzzy
msgid "Support MMX built-in functions"
msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤òʤ¤¤±£¤·¤Þ¤¹"
-#: config/i386/i386.h:356
+#: config/i386/i386.h:389
#, fuzzy
msgid "Do not support MMX built-in functions"
msgstr "¤¤¤¯¤Ä¤«¤ÎÁȤ߹þ¤ß´Ø¿ô¤òǧ¼±¤µ¤»¤Ê¤¤"
-#: config/i386/i386.h:358
+#: config/i386/i386.h:391
#, fuzzy
msgid "Support 3DNow! built-in functions"
msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤òʤ¤¤±£¤·¤Þ¤¹"
-#: config/i386/i386.h:360
+#: config/i386/i386.h:393
#, fuzzy
msgid "Do not support 3DNow! built-in functions"
msgstr "¤¤¤¯¤Ä¤«¤ÎÁȤ߹þ¤ß´Ø¿ô¤òǧ¼±¤µ¤»¤Ê¤¤"
-#: config/i386/i386.h:362
+#: config/i386/i386.h:395
msgid "Support MMX and SSE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:364
+#: config/i386/i386.h:397
msgid "Do not support MMX and SSE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:366
+#: config/i386/i386.h:399
msgid "Support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:368
+#: config/i386/i386.h:401
msgid "Do not support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:370
+#: config/i386/i386.h:403
+msgid "Support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr ""
+
+#: config/i386/i386.h:405
+msgid "Do not support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr ""
+
+#: config/i386/i386.h:407
#, fuzzy
msgid "sizeof(long double) is 16"
msgstr "sizeof(long double) ¤Ï 16 ¤È¤¹¤ë¡£"
-#: config/i386/i386.h:372
+#: config/i386/i386.h:409
#, fuzzy
msgid "sizeof(long double) is 12"
msgstr "sizeof(long double) ¤Ï 12 ¤È¤¹¤ë¡£"
-#: config/i386/i386.h:374
+#: config/i386/i386.h:411
#, fuzzy
msgid "Generate 64bit x86-64 code"
msgstr "H8/S ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/i386/i386.h:376
+#: config/i386/i386.h:413
#, fuzzy
msgid "Generate 32bit i386 code"
msgstr "¥Ó¥Ã¥°¥¨¥ó¥Ç¥£¥¢¥ó¤Î¥³¡¼¥É¤òÀ¸À®"
-#: config/i386/i386.h:378
+#: config/i386/i386.h:415
+msgid "Use native (MS) bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:417
+msgid "Use gcc default bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:419
msgid "Use red-zone in the x86-64 code"
msgstr ""
-#: config/i386/i386.h:380
+#: config/i386/i386.h:421
#, fuzzy
msgid "Do not use red-zone in the x86-64 code"
msgstr "H8/S ¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
+#: config/i386/i386.h:423
+#, c-format
+msgid "Use direct references against %gs when accessing tls data"
+msgstr ""
+
+#: config/i386/i386.h:425
+#, c-format
+msgid "Do not use direct references against %gs when accessing tls data"
+msgstr ""
+
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10881,24 +10084,25 @@ msgstr "H8/S ¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:409 config/rs6000/rs6000.h:393 config/sparc/sparc.h:635
+#: config/i386/i386.h:459 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437
+#: config/s390/s390.h:146 config/sparc/sparc.h:650
msgid "Schedule code for given CPU"
msgstr "½êÍ¿¤Î CPU ÍѤΥ³¡¼¥É¤ò¥¹¥±¥¸¥å¡¼¥ë¤¹¤ë"
-#: config/i386/i386.h:411
+#: config/i386/i386.h:461
#, fuzzy
msgid "Generate floating point mathematics using given instruction set"
msgstr "¥Ï¡¼¥É¥¦¥§¥¢ÉâÆ°¾®¿ôÅÀÌ¿Îá¤ò»ÈÍѤ¹¤ë"
-#: config/i386/i386.h:413
+#: config/i386/i386.h:463 config/s390/s390.h:148
msgid "Generate code for given CPU"
msgstr "½êÍ¿¤Î CPU ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/i386/i386.h:415
+#: config/i386/i386.h:465
msgid "Number of registers used to pass integer arguments"
msgstr "¥ì¥¸¥¹¥¿¤Î¿ô¤¬À°¿ô¤ò°ú¿ô¤òÅϤ¹¤¿¤á¤Ë»È¤ï¤ì¤ë"
-#. TARGET_DEFAULT is defined in sun*.h and isi.h, etc.
+#. TARGET_DEFAULT is defined in m68k-none.h, netbsd.h, etc.
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10908,100 +10112,101 @@ msgstr "¥ì¥¸¥¹¥¿¤Î¿ô¤¬À°¿ô¤ò°ú¿ô¤òÅϤ¹¤¿¤á¤Ë»È¤ï¤ì¤ë"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:417 config/m68k/m68k.h:263
+#: config/i386/i386.h:467 config/m68k/m68k.h:360
msgid "Loop code aligned to this power of 2"
msgstr "¥ë¡¼¥×¥³¡¼¥É¤ò¤³¤ÎÃͤÎÆó¾è¤Ë¥¢¥é¥¤¥ó¥á¥ó¥È¤¹¤ë"
-#: config/i386/i386.h:419 config/m68k/m68k.h:265
+#: config/i386/i386.h:469 config/m68k/m68k.h:362
msgid "Jump targets are aligned to this power of 2"
msgstr "¥¸¥ã¥ó¥×Àè¤ò¤³¤ÎÃͤÎÆó¾è¤Ë¥¢¥é¥¤¥ó¥á¥ó¥È¤¹¤ë"
-#: config/i386/i386.h:421 config/m68k/m68k.h:267
+#: config/i386/i386.h:471 config/m68k/m68k.h:364
msgid "Function starts are aligned to this power of 2"
msgstr "´Ø¿ô¤Î³«»Ï°ÌÃÖ¤ò¤³¤ÎÃͤÎÆó¾è¤Ë¥¢¥é¥¤¥ó¥á¥ó¥È¤¹¤ë"
-#: config/i386/i386.h:424
+#: config/i386/i386.h:474
msgid "Attempt to keep stack aligned to this power of 2"
msgstr "¤Ç¤­¤ë¤À¤±¥¹¥¿¥Ã¥¯¤ò¤³¤ÎÃͤÎÆó¾è¤Ë¥¢¥é¥¤¥ó¥á¥ó¥È¤¹¤ë"
-#: config/i386/i386.h:426
+#: config/i386/i386.h:476
msgid "Branches are this expensive (1-5, arbitrary units)"
msgstr "¥Ö¥é¥ó¥Á¤Î¥³¥¹¥È¤ò»Ø¼¨¤¹¤ë (1-5, Ǥ°Õ¤Î¸Ä¿ô)"
-#: config/i386/i386.h:428
+#: config/i386/i386.h:478
#, fuzzy
msgid "Use given x86-64 code model"
msgstr "Í¿¤¨¤é¤ì¤¿ Sparc ¥³¡¼¥É¥â¥Ç¥ë¤ò»ÈÍѤ¹¤ë"
#. Undocumented.
#. Undocumented.
-#: config/i386/i386.h:434
+#: config/i386/i386.h:484
#, fuzzy
msgid "Use given assembler dialect"
msgstr "DEC ¥¢¥»¥ó¥Ö¥éʸˡ¤ò»ÈÍѤ¹¤ë"
-#: config/i386/i386.h:436
+#: config/i386/i386.h:486
msgid "Use given thread-local storage dialect"
msgstr ""
-#: config/i386/sco5.h:297
+#: config/i386/sco5.h:292
msgid "Generate ELF output"
msgstr "ELF ½ÐÎϤòÀ¸À®¤¹¤ë"
-#: config/i386/win32.h:53
-msgid "Use Mingw32 interface"
-msgstr "Mingw32 ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ò»ÈÍѤ¹¤ë"
-
-#: config/i386/win32.h:55
-msgid "Use Cygwin interface"
-msgstr "Cygwin ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ò»ÈÍѤ¹¤ë"
-
-#: config/i386/win32.h:57
-msgid "Use bare Windows interface"
-msgstr "ÁǤΠWindows ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ò»ÈÍѤ¹¤ë"
-
#. If the environment variable DJDIR is not defined, then DJGPP is not installed correctly and GCC will quickly become confused with the default prefix settings. Report the problem now so the user doesn't receive deceptive "file not found" error messages later.
#. DJDIR is automatically defined by the DJGPP environment config file pointed to by the environment variable DJGPP. Examine DJGPP to try and figure out what's wrong.
-#: config/i386/xm-djgpp.h:71
+#: config/i386/xm-djgpp.h:64
#, fuzzy
msgid "environment variable DJGPP not defined"
msgstr "´Ä¶­ÊÑ¿ô DJGPP ¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: config/i386/xm-djgpp.h:73
+#: config/i386/xm-djgpp.h:66
#, fuzzy, c-format
msgid "environment variable DJGPP points to missing file '%s'"
msgstr "´Ä¶­ÊÑ¿ô DJGPP ¤¬¡¢¸«¤Ä¤«¤é¤Ê¤¤¥Õ¥¡¥¤¥ë '%s' ¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£"
-#: config/i386/xm-djgpp.h:76
+#: config/i386/xm-djgpp.h:69
#, fuzzy, c-format
msgid "environment variable DJGPP points to corrupt file '%s'"
msgstr "´Ä¶­ÊÑ¿ô DJGPP ¤¬¡¢²õ¤ì¤¿¥Õ¥¡¥¤¥ë '%s' ¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£"
-#: config/i960/i960-c.c:66
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/i860/i860.h:60
+msgid "Generate code which uses the FPU"
+msgstr "ÉâÆ°¾®¿ôÅÀ¥æ¥Ë¥Ã¥È¤òÍøÍѤ¹¤ë¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
+
+#: config/i860/i860.h:61 config/i860/i860.h:62
+msgid "Do not generate code which uses the FPU"
+msgstr "ÉâÆ°¾®¿ôÅÀ¥æ¥Ë¥Ã¥È¤òÍøÍѤ¹¤ë¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
+
+#: config/i960/i960-c.c:68
msgid "sorry, not implemented: #pragma align NAME=SIZE"
msgstr "»ÄÇ°¡¢¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó: #pragma align NAME=SIZE"
-#: config/i960/i960-c.c:71
+#: config/i960/i960-c.c:73
msgid "malformed #pragma align - ignored"
msgstr "¤ª¤«¤·¤Ê #pragma align - ̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: config/i960/i960-c.c:109
+#: config/i960/i960-c.c:111
msgid "sorry, not implemented: #pragma noalign NAME"
msgstr "»ÄÇ°¡¢¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó: #pragma noalign NAME"
-#: config/i960/i960.c:121 config/i960/i960.c:131
+#: config/i960/i960.c:134 config/i960/i960.c:144
msgid "conflicting architectures defined - using C series"
msgstr "¶¥¹ç¤¹¤ë architecture ¤¬ÄêµÁ¤µ¤ì¤Þ¤·¤¿ - C ¥·¥ê¡¼¥º»ÈÍÑ"
-#: config/i960/i960.c:126
+#: config/i960/i960.c:139
msgid "conflicting architectures defined - using K series"
msgstr "¶¥¹ç¤¹¤ë architecture ¤¬ÄêµÁ¤µ¤ì¤Þ¤·¤¿ - K ¥·¥ê¡¼¥º»ÈÍÑ<"
-#: config/i960/i960.c:141
+#: config/i960/i960.c:154
msgid "iC2.0 and iC3.0 are incompatible - using iC3.0"
msgstr "iC2.0 ¤È iC3.0 ¤È¤Ï¸ß´¹À­¤¬¤¢¤ê¤Þ¤»¤ó - iC3.0 ¤ò»ÈÍѤ·¤Þ¤¹"
-#: config/i960/i960.c:1448 config/m68k/m68k.c:559 config/rs6000/rs6000.c:9976
+#: config/i960/i960.c:1456 config/m68k/m68k.c:588 config/rs6000/rs6000.c:11296
msgid "stack limit expression is not supported"
msgstr "¥¹¥¿¥Ã¥¯À©¸Â¼°¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
@@ -11012,412 +10217,564 @@ msgstr "¥¹¥¿¥Ã¥¯À©¸Â¼°¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
#. An empty string NAME is used to identify the default VALUE.
#. ??? Not all ten of these architecture variations actually exist, but I
#. am not sure which are real and which aren't.
-#: config/i960/i960.h:240
+#: config/i960/i960.h:250
msgid "Generate SA code"
msgstr "SA ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/i960/i960.h:243
+#: config/i960/i960.h:253
msgid "Generate SB code"
msgstr "SB ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
#. {"sc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate SC code")},
-#: config/i960/i960.h:248
+#: config/i960/i960.h:258
msgid "Generate KA code"
msgstr "KA ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/i960/i960.h:251
+#: config/i960/i960.h:261
msgid "Generate KB code"
msgstr "KB ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
#. {"kc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate KC code")},
-#: config/i960/i960.h:256
+#: config/i960/i960.h:266
msgid "Generate JA code"
msgstr "JA ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/i960/i960.h:258
+#: config/i960/i960.h:268
msgid "Generate JD code"
msgstr "JD ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/i960/i960.h:261
+#: config/i960/i960.h:271
msgid "Generate JF code"
msgstr "JF ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/i960/i960.h:263
+#: config/i960/i960.h:273
msgid "generate RP code"
msgstr "RP ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/i960/i960.h:266
+#: config/i960/i960.h:276
msgid "Generate MC code"
msgstr "MC ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/i960/i960.h:269
+#: config/i960/i960.h:279
msgid "Generate CA code"
msgstr "CA ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
#. {"cb", (TARGET_FLAG_NUMERICS|TARGET_FLAG_C_SERIES| TARGET_FLAG_BRANCH_PREDICT|TARGET_FLAG_CODE_ALIGN), N_("Generate CB code")}, {"cc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_C_SERIES|TARGET_FLAG_BRANCH_PREDICT| TARGET_FLAG_CODE_ALIGN), N_("Generate CC code")},
-#: config/i960/i960.h:279
+#: config/i960/i960.h:289
msgid "Generate CF code"
msgstr "CF ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/i960/i960.h:283 config/mips/mips.h:568 config/pa/pa.h:266
+#: config/i960/i960.h:293 config/mips/mips.h:539 config/pa/pa.h:266
msgid "Use software floating point"
msgstr "¥½¥Õ¥ÈÉâÆ°¾®¿ôÅÀ¤òÍøÍѤ¹¤ë"
-#: config/i960/i960.h:285
+#: config/i960/i960.h:295
msgid "Use alternate leaf function entries"
msgstr "´Ø¿ô¹àÌܤÎÂå¤ï¤ê¤òÍøÍѤ¹¤ë"
-#: config/i960/i960.h:287
+#: config/i960/i960.h:297
msgid "Do not use alternate leaf function entries"
msgstr "´Ø¿ô¹àÌÜËöÈø¤ÎÂå¤ï¤ê¤ÏÍøÍѤ·¤Ê¤¤"
-#: config/i960/i960.h:289
+#: config/i960/i960.h:299
msgid "Perform tail call optimization"
msgstr "ËöÈø¸Æ¤Ó½Ð¤·ºÇŬ²½¤ò¹Ô¤¦"
-#: config/i960/i960.h:291
+#: config/i960/i960.h:301
msgid "Do not perform tail call optimization"
msgstr "ËöÈø¸Æ¤Ó½Ð¤·ºÇŬ²½¤ò¹Ô¤ï¤Ê¤¤"
-#: config/i960/i960.h:293
+#: config/i960/i960.h:303
msgid "Use complex addressing modes"
msgstr "Ê£»¨¤Ê¥¢¥É¥ì¥·¥ó¥°¥â¡¼¥É¤ò»ÈÍѤ¹¤ë"
-#: config/i960/i960.h:295
+#: config/i960/i960.h:305
msgid "Do not use complex addressing modes"
msgstr "Ê£»¨¤Ê¥¢¥É¥ì¥·¥ó¥°¥â¡¼¥É¤òÍøÍѤ·¤Ê¤¤"
-#: config/i960/i960.h:297
+#: config/i960/i960.h:307
msgid "Align code to 8 byte boundary"
msgstr "¥³¡¼¥É¤ò 8 ¥Ð¥¤¥È¶­³¦¤Ë¥¢¥é¥¤¥ó¤¹¤ë"
-#: config/i960/i960.h:299
+#: config/i960/i960.h:309
msgid "Do not align code to 8 byte boundary"
msgstr "¥³¡¼¥É¤ò 8 bit ¥³¡¼¥É¤Ë¥¢¥é¥¤¥ó¤·¤Ê¤¤"
#. {"clean-linkage", (TARGET_FLAG_CLEAN_LINKAGE), N_("Force use of prototypes")}, {"no-clean-linkage", -(TARGET_FLAG_CLEAN_LINKAGE), N_("Do not force use of prototypes")},
-#: config/i960/i960.h:305 config/i960/i960.h:307
+#: config/i960/i960.h:315 config/i960/i960.h:317
msgid "Enable compatibility with iC960 v2.0"
msgstr "iC960 v2.0 ¤È¤Î¸ß´¹À­¤òÍ­¸ú¤Ë¤¹¤ë"
-#: config/i960/i960.h:309
+#: config/i960/i960.h:319
msgid "Enable compatibility with iC960 v3.0"
msgstr "iC960 v3.0 ¤È¤Î¸ß´¹À­¤òÍ­¸ú¤Ë¤¹¤ë"
-#: config/i960/i960.h:311 config/i960/i960.h:313
+#: config/i960/i960.h:321 config/i960/i960.h:323
msgid "Enable compatibility with ic960 assembler"
msgstr "ic960 ¥¢¥»¥ó¥Ö¥é¤È¤Î¸ß´¹À­¤òÍ­¸ú¤Ë¤¹¤ë"
-#: config/i960/i960.h:315
+#: config/i960/i960.h:325
msgid "Do not permit unaligned accesses"
msgstr "¥¢¥é¥¤¥ó¤µ¤ì¤Ê¤¤¥¢¥¯¥»¥¹¤òµö²Ä¤·¤Ê¤¤"
-#: config/i960/i960.h:317
+#: config/i960/i960.h:327
msgid "Permit unaligned accesses"
msgstr "¥¢¥é¥¤¥ó¤µ¤ì¤Ê¤¤¥¢¥¯¥»¥¹¤òµö²Ä¤¹¤ë"
-#: config/i960/i960.h:319
+#: config/i960/i960.h:329
msgid "Layout types like Intel's v1.3 gcc"
msgstr "Intel ¤Î v1.3 gcc ¤ÎÍͤʥ¿¥¤¥×¤ËÇÛÃÖ¤¹¤ë"
-#: config/i960/i960.h:321
+#: config/i960/i960.h:331
msgid "Do not layout types like Intel's v1.3 gcc"
msgstr "Intel v1.3 gcc ¤ÎÍͤʥ¿¥¤¥×¤ÎÇÛÃÖ¤ò¹Ô¤Ê¤ï¤Ê¤¤"
-#: config/i960/i960.h:323 config/sparc/freebsd.h:80 config/sparc/linux.h:86
-#: config/sparc/linux64.h:88 config/sparc/netbsd-elf.h:238
+#: config/i960/i960.h:333 config/sparc/freebsd.h:76 config/sparc/linux.h:91
+#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215
msgid "Use 64 bit long doubles"
msgstr "64 ¥Ó¥Ã¥È long double ¤ò»ÈÍѤ¹¤ë"
-#: config/i960/i960.h:325
+#: config/i960/i960.h:335
msgid "Enable linker relaxation"
msgstr "¥ê¥ó¥«¤Î´ËϤòÍ­¸ú¤Ë¤¹¤ë"
-#: config/i960/i960.h:327
+#: config/i960/i960.h:337
msgid "Do not enable linker relaxation"
msgstr "¥ê¥ó¥«¤Î´ËϤòÍ­¸ú¤Ë¤·¤Ê¤¤"
-#: config/ia64/ia64-c.c:51
+#: config/ia64/ia64-c.c:52
#, fuzzy
msgid "malformed #pragma builtin"
msgstr "¤ª¤«¤·¤Ê #pragma implementation"
-#: config/ia64/ia64.c:4015
+#: config/ia64/ia64.c:1021 config/m32r/m32r.c:354
+#, fuzzy, c-format
+msgid "invalid argument of `%s' attribute"
+msgstr "`%s' ¤Î°ú¿ô¤È¤·¤Æ̵¸ú¤Ê·¿"
+
+#: config/ia64/ia64.c:1033
+#, fuzzy
+msgid "%Jan address area attribute cannot be specified for local variables"
+msgstr "¥Ç¡¼¥¿Îΰè°À­¤ò¥í¡¼¥«¥ëÊÑ¿ô¤Ë¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó"
+
+#: config/ia64/ia64.c:1040
+#, fuzzy
+msgid "%Jaddress area of '%s' conflicts with previous declaration"
+msgstr "¥Ç¡¼¥¿Îΰè '%s' ¤ÏÁ°¤ÎÀë¸À¤ÈÌ·½â¤·¤Þ¤¹"
+
+#: config/ia64/ia64.c:1047
+#, fuzzy
+msgid "%Jaddress area attribute cannot be specified for functions"
+msgstr "¥Ç¡¼¥¿Îΰè°À­¤ò¥í¡¼¥«¥ëÊÑ¿ô¤Ë¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó"
+
+#: config/ia64/ia64.c:4288
msgid "ia64_print_operand: unknown code"
msgstr "ia64_print_operand: ÉÔÌÀ¤Ê¥³¡¼¥É¤Ç¤¹"
-#: config/ia64/ia64.c:4292
+#: config/ia64/ia64.c:4628
msgid "value of -mfixed-range must have form REG1-REG2"
msgstr "-mfixed-range ¤ÎÃÍ¤Ï REG1-REG2 ·Á¼°¤ò»ý¤¿¤Í¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: config/ia64/ia64.c:4319
+#: config/ia64/ia64.c:4655
#, c-format
msgid "%s-%s is an empty range"
msgstr "%s-%s ¤¬¶õ¤ÎÈϰϤǤ¹"
-#: config/ia64/ia64.c:4350
+#: config/ia64/ia64.c:4703
#, fuzzy
msgid "cannot optimize floating point division for both latency and throughput"
msgstr "¥ì¥¤¥Æ¥ó¥·¤È¥¹¥ë¡¼¥×¥Ã¥ÈξÊý¤Îʬ³äºÇŬ²½¤Ï¹Ô¤Ê¤¨¤Þ¤»¤ó"
-#: config/ia64/ia64.c:4356
+#: config/ia64/ia64.c:4709
#, fuzzy
msgid "cannot optimize integer division for both latency and throughput"
msgstr "¥ì¥¤¥Æ¥ó¥·¤È¥¹¥ë¡¼¥×¥Ã¥ÈξÊý¤Îʬ³äºÇŬ²½¤Ï¹Ô¤Ê¤¨¤Þ¤»¤ó"
-#: config/ia64/ia64.c:4368
+#: config/ia64/ia64.c:4715
+#, fuzzy
+msgid "cannot optimize square root for both latency and throughput"
+msgstr "¥ì¥¤¥Æ¥ó¥·¤È¥¹¥ë¡¼¥×¥Ã¥ÈξÊý¤Îʬ³äºÇŬ²½¤Ï¹Ô¤Ê¤¨¤Þ¤»¤ó"
+
+#: config/ia64/ia64.c:4721
+msgid "not yet implemented: latency-optimized inline square root"
+msgstr ""
+
+#: config/ia64/ia64.c:4733
#, fuzzy, c-format
msgid "bad value (%s) for -mtls-size= switch"
msgstr "-mabi= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
+#: config/ia64/ia64.c:4749
+#, fuzzy, c-format
+msgid "bad value (%s) for -tune= switch"
+msgstr "-mcpu= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
+
#. This macro defines names of command options to set and clear bits in
#. `target_flags'. Its definition is an initializer with a subgrouping for
#. each command option.
-#: config/ia64/ia64.h:154
+#: config/ia64/ia64.h:172
msgid "Generate big endian code"
msgstr "¥Ó¥Ã¥°¥¨¥ó¥Ç¥£¥¢¥ó¤Î¥³¡¼¥É¤òÀ¸À®"
-#: config/ia64/ia64.h:156 config/mcore/mcore.h:159
+#: config/ia64/ia64.h:174 config/mcore/mcore.h:154
msgid "Generate little endian code"
msgstr "¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó¤Î¥³¡¼¥É¤òÀ¸À®"
-#: config/ia64/ia64.h:158
+#: config/ia64/ia64.h:176
msgid "Generate code for GNU as"
msgstr "GNU as ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/ia64/ia64.h:160
+#: config/ia64/ia64.h:178
msgid "Generate code for Intel as"
msgstr "Intel as ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/ia64/ia64.h:162
+#: config/ia64/ia64.h:180
msgid "Generate code for GNU ld"
msgstr "GNU ld ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/ia64/ia64.h:164
+#: config/ia64/ia64.h:182
msgid "Generate code for Intel ld"
msgstr "Intel ld ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/ia64/ia64.h:166
+#: config/ia64/ia64.h:184
msgid "Generate code without GP reg"
msgstr "GP ¥ì¥¸¥¹¥¿ÉÔ»ÈÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/ia64/ia64.h:168
+#: config/ia64/ia64.h:186
msgid "Emit stop bits before and after volatile extended asms"
msgstr "³ÈÄ¥¥¢¥»¥ó¥Ö¥ê volatile ¤ÎÁ°¸å¤Ë stop ¥Ó¥Ã¥È¤òÁ÷½Ð¤¹¤ë"
-#: config/ia64/ia64.h:170
+#: config/ia64/ia64.h:188
msgid "Don't emit stop bits before and after volatile extended asms"
msgstr "³ÈÄ¥¥¢¥»¥ó¥Ö¥ê volatile ¤ÎÁ°¸å¤Ë stop ¥Ó¥Ã¥È¤òÁ÷½Ð¤¹¤ë"
-#: config/ia64/ia64.h:172
+#: config/ia64/ia64.h:190
msgid "Emit code for Itanium (TM) processor B step"
msgstr "Itanium (TM) ¥×¥í¥»¥Ã¥µ B step ÍÑ¥³¡¼¥É¤òÁ÷½Ð¤¹¤ë"
-#: config/ia64/ia64.h:174
+#: config/ia64/ia64.h:192
msgid "Use in/loc/out register names"
msgstr "in/loc/out ¥ì¥¸¥¹¥¿Ì¾¤ò»ÈÍѤ¹¤ë"
-#: config/ia64/ia64.h:176
+#: config/ia64/ia64.h:194
msgid "Disable use of sdata/scommon/sbss"
msgstr "sdata/scommon/sbss ¤Î»ÈÍѤò̵¸ú¤Ë¤¹¤ë"
-#: config/ia64/ia64.h:178
+#: config/ia64/ia64.h:196
msgid "Enable use of sdata/scommon/sbss"
msgstr "sdata/scommon/sbss ¤Î»ÈÍѤòÍ­¸ú¤Ë¤¹¤ë"
-#: config/ia64/ia64.h:180
+#: config/ia64/ia64.h:198
msgid "gp is constant (but save/restore gp on indirect calls)"
msgstr "gp ¤òÄê¿ô¤È¤¹¤ë¡Êâ¡¢´ÖÀܸƤӽФ·¤Ç¤Ï gp ¤ò save/restore ¤¹¤ë¡Ë"
-#: config/ia64/ia64.h:182
+#: config/ia64/ia64.h:200
msgid "Generate self-relocatable code"
msgstr "¼«¸ÊºÆÇÛÃÖ²Äǽ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/ia64/ia64.h:184
+#: config/ia64/ia64.h:202
#, fuzzy
msgid "Generate inline floating point division, optimize for latency"
msgstr "¥ì¥¤¥Æ¥ó¥·¤òºÇŬ²½¤¹¤ë¥¤¥ó¥é¥¤¥ó¶èʬ¤òÀ¸À®¤¹¤ë"
-#: config/ia64/ia64.h:186
+#: config/ia64/ia64.h:204
#, fuzzy
msgid "Generate inline floating point division, optimize for throughput"
msgstr "¥¹¥ë¡¼¥×¥Ã¥È¤òºÇŬ²½¤¹¤ë¥¤¥ó¥é¥¤¥ó¶èʬ¤òÀ¸À®¤¹¤ë"
-#: config/ia64/ia64.h:188
+#: config/ia64/ia64.h:206
#, fuzzy
msgid "Generate inline integer division, optimize for latency"
msgstr "¥ì¥¤¥Æ¥ó¥·¤òºÇŬ²½¤¹¤ë¥¤¥ó¥é¥¤¥ó¶èʬ¤òÀ¸À®¤¹¤ë"
-#: config/ia64/ia64.h:190
+#: config/ia64/ia64.h:208
#, fuzzy
msgid "Generate inline integer division, optimize for throughput"
msgstr "¥¹¥ë¡¼¥×¥Ã¥È¤òºÇŬ²½¤¹¤ë¥¤¥ó¥é¥¤¥ó¶èʬ¤òÀ¸À®¤¹¤ë"
-#: config/ia64/ia64.h:192
+#: config/ia64/ia64.h:210
+#, fuzzy
+msgid "Generate inline square root, optimize for latency"
+msgstr "¥ì¥¤¥Æ¥ó¥·¤òºÇŬ²½¤¹¤ë¥¤¥ó¥é¥¤¥ó¶èʬ¤òÀ¸À®¤¹¤ë"
+
+#: config/ia64/ia64.h:212
+#, fuzzy
+msgid "Generate inline square root, optimize for throughput"
+msgstr "¥¹¥ë¡¼¥×¥Ã¥È¤òºÇŬ²½¤¹¤ë¥¤¥ó¥é¥¤¥ó¶èʬ¤òÀ¸À®¤¹¤ë"
+
+#: config/ia64/ia64.h:214
msgid "Enable Dwarf 2 line debug info via GNU as"
msgstr "GNU as ¤òÄ̤¸¤¿ Dwarf2 ¤Î¹Ô¥Ç¥Ð¥Ã¥°¤òÍ­¸ú¤Ë¤¹¤ë"
-#: config/ia64/ia64.h:194
+#: config/ia64/ia64.h:216
msgid "Disable Dwarf 2 line debug info via GNU as"
msgstr "GNU as ¤òÄ̤¸¤¿ Dwarf2 ¤Î¹Ô¥Ç¥Ð¥Ã¥°¤ò̵¸ú¤Ë¤¹¤ë"
-#: config/ia64/ia64.h:223
+#: config/ia64/ia64.h:218
+msgid "Enable earlier placing stop bits for better scheduling"
+msgstr ""
+
+#: config/ia64/ia64.h:220
+#, fuzzy
+msgid "Disable earlier placing stop bits"
+msgstr "ÊÂÎóÌ¿Îá¤ò̵¸ú¤Ë¤¹¤ë"
+
+#: config/ia64/ia64.h:265
#, fuzzy
msgid "Specify range of registers to make fixed"
msgstr "¸ÇÄꤹ¤ë¤¿¤á¤Î¥ì¥¸¥¹¥¿¤ÎÈϰϤò»ØÄꤹ¤ë"
-#: config/ip2k/ip2k.c:1090
+#: config/ip2k/ip2k.c:1074
#, fuzzy
msgid "bad operand"
msgstr "̵¸ú¤Ê %P ¥ª¥Ú¥é¥ó¥É¤Ç¤¹"
-#: config/m32r/m32r.c:139
+#: config/iq2000/iq2000.c:1816
+#, c-format
+msgid "bad value (%s) for -mcpu= switch"
+msgstr "-mcpu= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
+
+#: config/iq2000/iq2000.c:1845
+#, fuzzy, c-format
+msgid "The compiler does not support -march=%s."
+msgstr "¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ï -mabi ¥¹¥¤¥Ã¥Á¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó"
+
+#: config/iq2000/iq2000.c:2232
+#, c-format
+msgid "gp_offset (%ld) or end_offset (%ld) is less than zero."
+msgstr "gp_offset (%ld) Ëô¤Ï end_offset (%ld) ¤¬¥¼¥í¤è¤ê¤â¾®¤µ¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
+
+#: config/iq2000/iq2000.c:3023
+#, fuzzy, c-format
+msgid "argument `%d' is not a constant"
+msgstr "`asm' ¤Î°ú¿ô¤¬Äê¿ôʸ»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó "
+
+#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2081
+msgid "PRINT_OPERAND_ADDRESS, null pointer"
+msgstr "PRINT_OPERAND_ADDRESS, null ¥Ý¥¤¥ó¥¿"
+
+#: config/iq2000/iq2000.c:3469
+#, c-format
+msgid "PRINT_OPERAND: Unknown punctuation '%c'"
+msgstr "PRINT_OPERAND: ÉÔÌÀ¤Ê¶çÆÉÅÀ '%c'"
+
+#: config/iq2000/iq2000.c:3478 config/mips/mips.c:5457
+#: config/xtensa/xtensa.c:1935
+msgid "PRINT_OPERAND null pointer"
+msgstr "PRINT_OPERAND NULL ¥Ý¥¤¥ó¥¿"
+
+#: config/iq2000/iq2000.c:3547
+#, fuzzy, c-format
+msgid "invalid %%P operand"
+msgstr "̵¸ú¤Ê %P ¥ª¥Ú¥é¥ó¥É¤Ç¤¹"
+
+#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8881
+#, c-format
+msgid "invalid %%p value"
+msgstr "̵¸ú¤Ê %%p ÃͤǤ¹"
+
+#: config/iq2000/iq2000.c:3619 config/mips/mips.c:5587
+#, c-format
+msgid "invalid use of %%d, %%x, or %%X"
+msgstr "̵¸ú¤ÊÍÑË¡¤Î of %%d, %%x, Ëô¤Ï %%X"
+
+#: config/iq2000/iq2000.h:72 config/mn10300/mn10300.h:74
+msgid "No default crt0.o"
+msgstr "crt0.o ¤ò¥Ç¥Õ¥©¥ë¥È¤È¤·¤Ê¤¤"
+
+#: config/iq2000/iq2000.h:74
+msgid "Use GP relative sdata/sbss sections"
+msgstr "GP ´ØÏ¢ sdata/sbss ¥»¥¯¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë"
+
+#: config/iq2000/iq2000.h:76
+msgid "Don't use GP relative sdata/sbss sections"
+msgstr "GP ´ØÏ¢ sdata/sbss ¥»¥¯¥·¥ç¥ó¤ò»ÈÍѤ·¤Ê¤¤"
+
+#: config/iq2000/iq2000.h:78 config/mips/mips.h:563
+msgid "Use ROM instead of RAM"
+msgstr "RAM ¤ÎÂå¤ï¤ê¤Ë ROM ¤òÍøÍѤ¹¤ë"
+
+#: config/iq2000/iq2000.h:80 config/mips/mips.h:565
+msgid "Don't use ROM instead of RAM"
+msgstr "RAM ¤ÎÂå¤ï¤ê¤Ë ROM ¤òÍøÍѤ·¤Ê¤¤"
+
+#: config/iq2000/iq2000.h:82 config/mips/mips.h:567
+msgid "Put uninitialized constants in ROM (needs -membedded-data)"
+msgstr "̤½é´ü²½Äê¿ô¤ò ROM ¤ËÃÖ¤¯(Í× -membedded-data)"
+
+#: config/iq2000/iq2000.h:84 config/mips/mips.h:569
+msgid "Don't put uninitialized constants in ROM"
+msgstr "̤½é´ü²½Äê¿ô¤ò ROM ¤ËÃÖ¤«¤Ê¤¤"
+
+#: config/iq2000/iq2000.h:106 config/mips/mips.h:731 config/pa/pa.h:310
+msgid "Specify CPU for scheduling purposes"
+msgstr "Ì¿Î᥹¥±¥¸¥å¡¼¥ê¥ó¥°¤Î¤¿¤á¤Ë CPU ¤ò»ØÄꤹ¤ë"
+
+#: config/iq2000/iq2000.h:108 config/mips/mips.h:733
+#, fuzzy
+msgid "Specify CPU for code generation purposes"
+msgstr "Ì¿Î᥹¥±¥¸¥å¡¼¥ê¥ó¥°¤Î¤¿¤á¤Ë CPU ¤ò»ØÄꤹ¤ë"
+
+#: config/m32r/m32r.c:172
#, c-format
msgid "bad value (%s) for -mmodel switch"
msgstr "-mmodel ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
-#: config/m32r/m32r.c:148
+#: config/m32r/m32r.c:181
#, c-format
msgid "bad value (%s) for -msdata switch"
msgstr "-msdata ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
-#: config/m32r/m32r.c:319
+#: config/m32r/m32r.c:188
#, fuzzy, c-format
-msgid "invalid argument of `%s' attribute"
-msgstr "`%s' ¤Î°ú¿ô¤È¤·¤Æ̵¸ú¤Ê·¿"
-
-#: config/m32r/m32r.c:422
-msgid "const objects cannot go in .sdata/.sbss"
-msgstr "const ¥ª¥Ö¥¸¥§¥¯¥È¤Ï .sdata/.sbss ¤ËÃÖ¤±¤Þ¤»¤ó"
+msgid "bad value (%s) for -flush-trap=n (0=<n<=15)"
+msgstr "-msdata ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
-#: config/m32r/m32r.c:2256
+#: config/m32r/m32r.c:2295
#, fuzzy, c-format
msgid "invalid operand to %%s code"
msgstr "%s ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/m32r/m32r.c:2263
+#: config/m32r/m32r.c:2302
#, fuzzy, c-format
msgid "invalid operand to %%p code"
msgstr "%p ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/m32r/m32r.c:2318
+#: config/m32r/m32r.c:2357
msgid "bad insn for 'A'"
msgstr ""
-#: config/m32r/m32r.c:2370
+#: config/m32r/m32r.c:2404
#, fuzzy, c-format
msgid "invalid operand to %%T/%%B code"
msgstr "%T/%B ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/m32r/m32r.c:2393
+#: config/m32r/m32r.c:2427
#, fuzzy, c-format
msgid "invalid operand to %%N code"
msgstr "%N ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/m32r/m32r.c:2438
+#: config/m32r/m32r.c:2460
#, fuzzy
msgid "pre-increment address is not a register"
msgstr "`%d' ¥ª¥Ú¥é¥ó¥É¤¬¥ì¥¸¥¹¥¿¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/m32r/m32r.c:2445
+#: config/m32r/m32r.c:2467
#, fuzzy
msgid "pre-decrement address is not a register"
msgstr "thumb_load_double_from_address: ¥Ù¡¼¥¹¤¬¥ì¥¸¥¹¥¿¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/m32r/m32r.c:2452
+#: config/m32r/m32r.c:2474
msgid "post-increment address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2530 config/m32r/m32r.c:2546
-#: config/rs6000/rs6000.c:12802
+#: config/m32r/m32r.c:2550 config/m32r/m32r.c:2566
+#: config/rs6000/rs6000.c:14753
#, fuzzy
msgid "bad address"
msgstr "ÉÔÀµ¤Ê¥Ø¥Ã¥À¥Ð¡¼¥¸¥ç¥ó"
-#: config/m32r/m32r.c:2551
+#: config/m32r/m32r.c:2571
#, fuzzy
msgid "lo_sum not of register"
msgstr "ÉâÆ°¾®¿ôÅÀ¥ì¥¸¥¹¥¿¤òÍøÍѤ·¤Ê¤¤"
#. { "relax", TARGET_RELAX_MASK, "" }, { "no-relax", -TARGET_RELAX_MASK, "" },
-#: config/m32r/m32r.h:241
+#: config/m32r/m32r.h:277
msgid "Display compile time statistics"
msgstr "¥³¥ó¥Ñ¥¤¥ë»þ´ÖÅý·×Ãͤòɽ¼¨¤¹¤ë"
-#: config/m32r/m32r.h:243
+#: config/m32r/m32r.h:279
msgid "Align all loops to 32 byte boundary"
msgstr "Á´¤Æ¤Î¥ë¡¼¥×¤ò 32 ¥Ð¥¤¥È¶­³¦¤Ë¥¢¥é¥¤¥ó¤¹¤ë"
-#: config/m32r/m32r.h:246
+#: config/m32r/m32r.h:282
msgid "Only issue one instruction per cycle"
msgstr "¥µ¥¤¥¯¥ëËè¤Ë°ì¤Ä¤ÎÌ¿Îá¤À¤±¤òȯ¹Ô¤¹¤ë"
-#: config/m32r/m32r.h:249
+#: config/m32r/m32r.h:285
msgid "Prefer branches over conditional execution"
msgstr "¾ò·ï¤Î¼Â¹Ô¤è¤ê¤Ïʬ´ô¤ÎÀ¸À®¤òÍ¥À褹¤ë"
-#: config/m32r/m32r.h:265
+#: config/m32r/m32r.h:306
msgid "Code size: small, medium or large"
msgstr "¥³¡¼¥É¥µ¥¤¥º: small, medium Ëô¤Ï large"
-#: config/m32r/m32r.h:267
+#: config/m32r/m32r.h:308
msgid "Small data area: none, sdata, use"
msgstr "¥¹¥â¡¼¥ë¥Ç¡¼¥¿Îΰè: none, sdata, use"
-#: config/m68hc11/m68hc11.c:242
+#: config/m32r/m32r.h:310 config/mips/mips.h:739
+#, fuzzy
+msgid "Don't call any cache flush functions"
+msgstr "´Ø¿ô %s ¤Ë¸Æ¤Ó½Ð¤·¤¬¤¢¤ê¤Þ¤»¤ó\n"
+
+#: config/m32r/m32r.h:312 config/mips/mips.h:741
+msgid "Specify cache flush function"
+msgstr ""
+
+#: config/m32r/m32r.h:314
+msgid "Don't call any cache flush trap"
+msgstr ""
+
+#: config/m32r/m32r.h:316
+msgid "Specify cache flush trap number"
+msgstr ""
+
+#: config/m68hc11/m68hc11.c:269
#, c-format
msgid "-f%s ignored for 68HC11/68HC12 (not supported)"
msgstr "-f%s ¤Ï 68HC11/68HC12 ÍѤȤ·¤Æ¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿ (¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó)"
-#: config/m68hc11/m68hc11.c:1305
+#: config/m68hc11/m68hc11.c:1260
msgid "`trap' and `far' attributes are not compatible, ignoring `far'"
msgstr ""
-#: config/m68hc11/m68hc11.c:1311
+#: config/m68hc11/m68hc11.c:1266
#, fuzzy
msgid "`trap' attribute is already used"
msgstr "`%s' °À­¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
#. !!!! SCz wrong here.
-#: config/m68hc11/m68hc11.c:3327 config/m68hc11/m68hc11.c:3733
+#: config/m68hc11/m68hc11.c:3222 config/m68hc11/m68hc11.c:3606
msgid "move insn not handled"
msgstr ""
-#: config/m68hc11/m68hc11.c:3579 config/m68hc11/m68hc11.c:3663
-#: config/m68hc11/m68hc11.c:3946
+#: config/m68hc11/m68hc11.c:3454 config/m68hc11/m68hc11.c:3538
+#: config/m68hc11/m68hc11.c:3809
#, fuzzy
msgid "invalid register in the move instruction"
msgstr "`%s' ¤ËÂФ¹¤ë¥ì¥¸¥¹¥¿Ì¾¤È¤·¤Æ̵¸ú¤Ç¤¹"
-#: config/m68hc11/m68hc11.c:3613
+#: config/m68hc11/m68hc11.c:3488
#, fuzzy
msgid "invalid operand in the instruction"
msgstr "%s ¥³¡¼¥É¤ËÂФ¹¤ë̵¸ú¤Ê¥ª¥Ú¥é¥ó¥É"
-#: config/m68hc11/m68hc11.c:3920
+#: config/m68hc11/m68hc11.c:3783
#, fuzzy
msgid "invalid register in the instruction"
msgstr "`%s' ¤ËÂФ¹¤ë¥ì¥¸¥¹¥¿Ì¾¤È¤·¤Æ̵¸ú¤Ç¤¹"
-#: config/m68hc11/m68hc11.c:3953
+#: config/m68hc11/m68hc11.c:3816
#, fuzzy
msgid "operand 1 must be a hard register"
msgstr "`%d' ¥ª¥Ú¥é¥ó¥É¤¬¥ì¥¸¥¹¥¿¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/m68hc11/m68hc11.c:3970
+#: config/m68hc11/m68hc11.c:3830
#, fuzzy
msgid "invalid rotate insn"
msgstr "²¾°ú¿ô `%s' ¤Ï̵¸ú¤Ç¤¹"
-#: config/m68hc11/m68hc11.c:4391
+#: config/m68hc11/m68hc11.c:4246
msgid "registers IX, IY and Z used in the same INSN"
msgstr ""
-#: config/m68hc11/m68hc11.c:4728 config/m68hc11/m68hc11.c:5031
+#: config/m68hc11/m68hc11.c:4583 config/m68hc11/m68hc11.c:4883
msgid "cannot do z-register replacement"
msgstr ""
-#: config/m68hc11/m68hc11.c:5094
+#: config/m68hc11/m68hc11.c:4946
#, fuzzy
msgid "invalid Z register replacement for insn"
msgstr "`%s' ¤ËÂФ¹¤ë¥ì¥¸¥¹¥¿Ì¾¤È¤·¤Æ̵¸ú¤Ç¤¹"
@@ -11426,60 +10783,60 @@ msgstr "`%s' ¤ËÂФ¹¤ë¥ì¥¸¥¹¥¿Ì¾¤È¤·¤Æ̵¸ú¤Ç¤¹"
#. pairs in braces, each pair being { "NAME", VALUE } where VALUE is the bits
#. to set or minus the bits to clear. An empty string NAME is used to
#. identify the default VALUE.
-#: config/m68hc11/m68hc11.h:172
+#: config/m68hc11/m68hc11.h:177
msgid "Compile with 16-bit integer mode"
msgstr "16 ¥Ó¥Ã¥ÈÀ°¿ô¥â¡¼¥É¤Ç¥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
-#: config/m68hc11/m68hc11.h:174
+#: config/m68hc11/m68hc11.h:179
msgid "Compile with 32-bit integer mode"
msgstr "32 ¥Ó¥Ã¥ÈÀ°¿ô¥â¡¼¥É¤Ç¥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
-#: config/m68hc11/m68hc11.h:176
+#: config/m68hc11/m68hc11.h:181
msgid "Auto pre/post decrement increment allowed"
msgstr "¼«Æ° pre/post ¥Ç¥¯¥ê¥á¥ó¥È ¥¤¥ó¥¯¥ê¥á¥ó¥È¤òµöÍƤ¹¤ë"
-#: config/m68hc11/m68hc11.h:178
+#: config/m68hc11/m68hc11.h:183
msgid "Auto pre/post decrement increment not allowed"
msgstr "¼«Æ° pre/post ¥Ç¥¯¥ê¥á¥ó¥È ¥¤¥ó¥¯¥ê¥á¥ó¥È¤òµöÍƤ·¤Ê¤¤"
-#: config/m68hc11/m68hc11.h:180
+#: config/m68hc11/m68hc11.h:185
msgid "Min/max instructions allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:182
+#: config/m68hc11/m68hc11.h:187
#, fuzzy
msgid "Min/max instructions not allowed"
msgstr "ret Ì¿Îá¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: config/m68hc11/m68hc11.h:184
+#: config/m68hc11/m68hc11.h:189
#, fuzzy
msgid "Use call and rtc for function calls and returns"
msgstr "noreturn ´Ø¿ô¤¬ return ¤¹¤ë¤È¤­ abort ¤Î¸Æ¤Ó½Ð¤·¤òÀ¸À®¤¹¤ë"
-#: config/m68hc11/m68hc11.h:186
+#: config/m68hc11/m68hc11.h:191
#, fuzzy
msgid "Use jsr and rts for function calls and returns"
msgstr "´Ø¿ô³«»ÏÉôʬÍѤΥ¹¥¿¥Ö¤ò»ÈÍѤ¹¤ë"
-#: config/m68hc11/m68hc11.h:188
+#: config/m68hc11/m68hc11.h:193
#, fuzzy
msgid "Do not use direct addressing mode for soft registers"
msgstr "Ê£»¨¤Ê¥¢¥É¥ì¥·¥ó¥°¥â¡¼¥É¤òÍøÍѤ·¤Ê¤¤"
-#: config/m68hc11/m68hc11.h:190
+#: config/m68hc11/m68hc11.h:195
#, fuzzy
msgid "Use direct addressing mode for soft registers"
msgstr "'¾®¤µ¤Ê' ½¸¹çÂΤò¥ì¥¸¥¹¥¿¤Ç¤Ï¤Ê¤¯¥á¥â¥ê¤Ë³ÊǼ¤·¤ÆÊÖ¤¹"
-#: config/m68hc11/m68hc11.h:192 config/m68hc11/m68hc11.h:198
+#: config/m68hc11/m68hc11.h:197 config/m68hc11/m68hc11.h:203
msgid "Compile for a 68HC11"
msgstr "68HC11 ÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
-#: config/m68hc11/m68hc11.h:194 config/m68hc11/m68hc11.h:200
+#: config/m68hc11/m68hc11.h:199 config/m68hc11/m68hc11.h:205
msgid "Compile for a 68HC12"
msgstr "68HC12 ÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
-#: config/m68hc11/m68hc11.h:196 config/m68hc11/m68hc11.h:202
+#: config/m68hc11/m68hc11.h:201 config/m68hc11/m68hc11.h:207
#, fuzzy
msgid "Compile for a 68HCS12"
msgstr "68HC12 ÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
@@ -11493,30 +10850,44 @@ msgstr "68HC12 ÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/m68hc11/m68hc11.h:216
+#: config/m68hc11/m68hc11.h:221
msgid "Specify the register allocation order"
msgstr "¥ì¥¸¥¹¥¿³ÎÊݽç¤ò»ØÄꤹ¤ë"
-#: config/m68hc11/m68hc11.h:218
+#: config/m68hc11/m68hc11.h:223
msgid "Indicate the number of soft registers available"
msgstr "ÍøÍѲÄǽ¥½¥Õ¥È¥ì¥¸¥¹¥¿¤Î¿ô¤ò¼¨¤¹"
-#: config/m68k/m68k.c:158
+#: config/m68k/m68k.c:227
#, c-format
msgid "-malign-loops=%d is not between 1 and %d"
msgstr "-malign-loops=%d ¤¬ 1 ¤«¤é %d ¤Î´Ö¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤»¤ó"
-#: config/m68k/m68k.c:169
+#: config/m68k/m68k.c:238
+msgid "-mshared-library-id= specified without -mid-shared-library"
+msgstr ""
+
+#: config/m68k/m68k.c:241
+#, fuzzy, c-format
+msgid "-mshared-library-id=%d is not between 0 and %d"
+msgstr "-mregparm=%d ¤¬ 0 ¤«¤é %d ¤Î´Ö¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+
+#: config/m68k/m68k.c:255
+#, fuzzy
+msgid "cannot specify both -msep-data and -mid-shared-library"
+msgstr "-C ¤È -o ¤ÏξÊý¤ò°ì½ï¤Ë»ØÄê¤Ç¤­¤Þ¤»¤ó"
+
+#: config/m68k/m68k.c:270
#, c-format
msgid "-malign-jumps=%d is not between 1 and %d"
msgstr "-malign-jumps=%d ¤¬ 1 ¤«¤é %d ¤Î´Ö¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤»¤ó"
-#: config/m68k/m68k.c:180
+#: config/m68k/m68k.c:281
#, c-format
msgid "-malign-functions=%d is not between 1 and %d"
msgstr "-malign-functions=%d ¤¬ 1 ¤«¤é %d ¤Î´Ö¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤»¤ó"
-#: config/m68k/m68k.c:189
+#: config/m68k/m68k.c:290
msgid "-fPIC is not currently supported on the 68000 or 68010\n"
msgstr "º£¤Î¤È¤³¤í 68000 ¤ä 68010 ¤Ç¤Ï -fPIC ¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
@@ -11525,540 +10896,468 @@ msgstr "º£¤Î¤È¤³¤í 68000 ¤ä 68010 ¤Ç¤Ï -fPIC ¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/m68k/m68k.h:162 config/m68k/m68k.h:164
+#: config/m68k/m68k.h:248 config/m68k/m68k.h:250
#, fuzzy
msgid "Generate code for a 68020"
msgstr "c2 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:169 config/m68k/m68k.h:172
+#: config/m68k/m68k.h:255 config/m68k/m68k.h:258
#, fuzzy
msgid "Generate code for a 68000"
msgstr "DLL ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:174
+#: config/m68k/m68k.h:260
#, fuzzy
msgid "Use the bit-field instructions"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥ÉÌ¿Îá¤ò»ÈÍѤ¹¤ë"
-#: config/m68k/m68k.h:176
+#: config/m68k/m68k.h:262
#, fuzzy
msgid "Do not use the bit-field instructions"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥ÉÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/m68k/m68k.h:178
-#, fuzzy
-msgid "Use different calling convention using 'rtd'"
-msgstr "ÉáÄ̤θƤӽФ·µ¬Ìó¤ò»È¤¦"
-
-#: config/m68k/m68k.h:182
+#: config/m68k/m68k.h:264
msgid "Consider type `int' to be 16 bits wide"
msgstr ""
-#: config/m68k/m68k.h:184
+#: config/m68k/m68k.h:266
msgid "Consider type `int' to be 32 bits wide"
msgstr ""
-#: config/m68k/m68k.h:186
-#, fuzzy
-msgid "Generate code for a Sun FPA"
-msgstr "DLL ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-
-#: config/m68k/m68k.h:189
-#, fuzzy
-msgid "Do not generate code for a Sun FPA"
-msgstr "ÉâÆ°¾®¿ôÅÀ¥æ¥Ë¥Ã¥È¤òÍøÍѤ¹¤ë¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
-
-#: config/m68k/m68k.h:191 config/m68k/m68k.h:193
-#, fuzzy
-msgid "Generate code for a Sun Sky board"
-msgstr "DLL ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-
-#: config/m68k/m68k.h:195
-#, fuzzy
-msgid "Do not use Sky linkage convention"
-msgstr "¥ê¥ó¥«¤Î´ËϤòÍ­¸ú¤Ë¤·¤Ê¤¤"
-
-#: config/m68k/m68k.h:197
-#, fuzzy
-msgid "Generate code for a 68881"
-msgstr "c1 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-
-#: config/m68k/m68k.h:200
+#: config/m68k/m68k.h:269
msgid "Generate code with library calls for floating point"
msgstr ""
-#: config/m68k/m68k.h:202
+#: config/m68k/m68k.h:271
#, fuzzy
msgid "Generate code for a 68040, without any new instructions"
msgstr "update Ì¿Îá¤È°ì½ï¤Ë¥í¡¼¥É/¥¹¥È¥¢Ì¿Îá¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:205
+#: config/m68k/m68k.h:274
#, fuzzy
msgid "Generate code for a 68060, without any new instructions"
msgstr "update Ì¿Îá¤È°ì½ï¤Ë¥í¡¼¥É/¥¹¥È¥¢Ì¿Îá¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:209
+#: config/m68k/m68k.h:278
#, fuzzy
msgid "Generate code for a 68030"
msgstr "DLL ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:212
+#: config/m68k/m68k.h:281
#, fuzzy
msgid "Generate code for a 68040"
msgstr "11/40 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:216
+#: config/m68k/m68k.h:285
#, fuzzy
msgid "Generate code for a 68060"
msgstr "DLL ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:221
+#: config/m68k/m68k.h:290
#, fuzzy
msgid "Generate code for a 520X"
msgstr "c2 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:224
+#: config/m68k/m68k.h:294
+#, fuzzy
+msgid "Generate code for a 5206e"
+msgstr "c2 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
+
+#: config/m68k/m68k.h:298
+#, fuzzy
+msgid "Generate code for a 528x"
+msgstr "c2 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
+
+#: config/m68k/m68k.h:302
+#, fuzzy
+msgid "Generate code for a 5307"
+msgstr "DLL ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
+
+#: config/m68k/m68k.h:306
+#, fuzzy
+msgid "Generate code for a 5407"
+msgstr "11/40 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
+
+#: config/m68k/m68k.h:309
#, fuzzy
msgid "Generate code for a 68851"
msgstr "c1 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:226
+#: config/m68k/m68k.h:311
#, fuzzy
msgid "Do no generate code for a 68851"
msgstr "c1 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:229
+#: config/m68k/m68k.h:314
#, fuzzy
msgid "Generate code for a 68302"
msgstr "c32 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:232
+#: config/m68k/m68k.h:317
#, fuzzy
msgid "Generate code for a 68332"
msgstr "c32 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:236
+#: config/m68k/m68k.h:321
#, fuzzy
msgid "Generate code for a cpu32"
msgstr "c32 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:239
+#: config/m68k/m68k.h:324
#, fuzzy
msgid "Align variables on a 32-bit boundary"
msgstr "Á´¤Æ¤Î¥ë¡¼¥×¤ò 32 ¥Ð¥¤¥È¶­³¦¤Ë¥¢¥é¥¤¥ó¤¹¤ë"
-#: config/m68k/m68k.h:241
+#: config/m68k/m68k.h:326
#, fuzzy
msgid "Align variables on a 16-bit boundary"
msgstr "double ¤ò word ¶­³¦¤Ë¥¢¥é¥¤¥ó¥á¥ó¥È¤¹¤ë"
-#: config/m68k/m68k.h:243
+#: config/m68k/m68k.h:328
+msgid "Enable separate data segment"
+msgstr ""
+
+#: config/m68k/m68k.h:330
+msgid "Disable separate data segment"
+msgstr ""
+
+#: config/m68k/m68k.h:332
+msgid "Enable ID based shared library"
+msgstr ""
+
+#: config/m68k/m68k.h:334
+msgid "Disable ID based shared library"
+msgstr ""
+
+#: config/m68k/m68k.h:336
#, fuzzy
msgid "Generate pc-relative code"
msgstr "¼«¸ÊºÆÇÛÃÖ²Äǽ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/m68k/m68k.h:245
+#: config/m68k/m68k.h:338
#, fuzzy
msgid "Do not use unaligned memory references"
msgstr "¥¢¥é¥¤¥ó¤µ¤ì¤Ê¤¤¥¢¥¯¥»¥¹¤òµö²Ä¤·¤Ê¤¤"
-#: config/m68k/m68k.h:247
+#: config/m68k/m68k.h:340
#, fuzzy
msgid "Use unaligned memory references"
msgstr "¥é¡¼¥¸¥á¥â¥ê¥â¥Ç¥ë¤òÍøÍÑ"
-#: config/m88k/m88k.c:903
-#, fuzzy, c-format
-msgid "internal gcc monitor: short-branch(%x)"
-msgstr "ÆâÉô gcc ¥â¥Ë¥¿: ¥·¥ç¡¼¥È¥Ö¥é¥ó¥Á(%x)"
-
-#: config/m88k/m88k.c:2302
+#: config/m68k/m68k.h:342
#, fuzzy
-msgid "internal gcc error: Can't express symbolic location"
-msgstr "ÆâÉô gcc ¥¨¥é¡¼: °ÌÃÖ¤ò¥·¥ó¥Ü¥ëɽ¸½¤Ç¤­¤Þ¤»¤ó"
-
-#: config/m88k/m88k.c:2517
-#, c-format
-msgid "argument #%d is a structure"
-msgstr "°ú¿ô #%d ¤Ï¹½Â¤ÂΤǤ¹"
-
-#: config/m88k/m88k.c:2816
-#, fuzzy, c-format
-msgid "%%R not followed by %%B/C/D/E"
-msgstr "%R ¤Î¸å¤Ë %B/C/D/E ¤ÏÃÖ¤±¤Þ¤»¤ó"
-
-#: config/m88k/m88k.c:2884
-#, fuzzy, c-format
-msgid "invalid %%x/X value"
-msgstr "̵¸ú¤Ê %x/X ÃͤǤ¹"
-
-#: config/m88k/m88k.c:2901
-#, c-format
-msgid "invalid %%Q value"
-msgstr "̵¸ú¤Ê %%Q ÃÍ"
-
-#: config/m88k/m88k.c:2907 config/rs6000/rs6000.c:7718
-#, c-format
-msgid "invalid %%q value"
-msgstr "̵¸ú¤Ê %%q ÃͤǤ¹"
-
-#: config/m88k/m88k.c:2913
-#, fuzzy, c-format
-msgid "invalid %%o value"
-msgstr "̵¸ú¤Ê %o ÃͤǤ¹"
-
-#: config/m88k/m88k.c:2920 config/rs6000/rs6000.c:7681
-#, c-format
-msgid "invalid %%p value"
-msgstr "̵¸ú¤Ê %%p ÃͤǤ¹"
-
-#: config/m88k/m88k.c:2933 config/m88k/m88k.c:2938
-#, fuzzy, c-format
-msgid "invalid %%s/S value"
-msgstr "̵¸ú¤Ê %s/S ÃͤǤ¹"
-
-#: config/m88k/m88k.c:2949
-#, fuzzy, c-format
-msgid "invalid %%P operand"
-msgstr "̵¸ú¤Ê %P ¥ª¥Ú¥é¥ó¥É¤Ç¤¹"
-
-#: config/m88k/m88k.c:2980 config/romp/romp.c:690
-#, c-format
-msgid "invalid %%B value"
-msgstr "̵¸ú¤Ê %%B ÃÍ"
-
-#: config/m88k/m88k.c:3010
-#, fuzzy, c-format
-msgid "invalid %%D value"
-msgstr "̵¸ú¤Ê %D ÃͤǤ¹"
-
-#: config/m88k/m88k.c:3023
-#, fuzzy, c-format
-msgid "`%%d' operand isn't a register"
-msgstr "`%d' ¥ª¥Ú¥é¥ó¥É¤¬¥ì¥¸¥¹¥¿¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-
-#: config/m88k/m88k.c:3041
-msgid "operand is r0"
-msgstr "¥ª¥Ú¥é¥ó¥É¤Ï r0 ¤Ç¤¹"
-
-#: config/m88k/m88k.c:3055
-msgid "operand is const_double"
-msgstr "¥ª¥Ú¥é¥ó¥É¤Ï const_double ¤Ç¤¹"
-
-#: config/m88k/m88k.c:3074
-msgid "invalid code"
-msgstr "̵¸ú¤Ê¥³¡¼¥É¤Ç¤¹"
-
-#. Do any checking or such that is needed after processing the -m switches.
-#: config/m88k/m88k.h:277
-msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
-msgstr "-mtrap-large-shift ¤È -mhandle-large-shift ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-
-#: config/m88k/m88k.h:299
-#, fuzzy, c-format
-msgid "invalid option `-mshort-data-%s'"
-msgstr "̵¸ú¤Ê¥ª¥×¥·¥ç¥ó `-mshort-data-%s'"
-
-#: config/m88k/m88k.h:304
-#, c-format
-msgid "-mshort-data-%s is too large "
-msgstr "-mshort-data-%s ¤¬Â礭¤¹¤®¤Þ¤¹¡£"
+msgid "Use different calling convention using 'rtd'"
+msgstr "ÉáÄ̤θƤӽФ·µ¬Ìó¤ò»È¤¦"
-#: config/m88k/m88k.h:306
-#, c-format
-msgid "-mshort-data-%s and PIC are incompatible"
-msgstr "-mshort-data-%s ¤È PIC ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
+#: config/m68k/m68k.h:366
+msgid "ID of shared library to build"
+msgstr ""
-#: config/mcore/mcore.c:3078
+#: config/mcore/mcore.c:2973
#, fuzzy, c-format
msgid "invalid option `-mstack-increment=%s'"
msgstr "`-mstack-increment=%s' ¤Ï̵¸ú¤Ê¥ª¥×¥·¥ç¥ó¤Ç¤¹"
-#: config/mcore/mcore.h:126
+#: config/mcore/mcore.h:121
msgid "Inline constants if it can be done in 2 insns or less"
msgstr "2 Ì¿Îá°Ê²¼¤Ç¹Ô¤Ê¤¨¤ëÉÔÊѽèÍý¤ò¥¤¥ó¥é¥¤¥ó¤Ë¤¹¤ë"
-#: config/mcore/mcore.h:128
+#: config/mcore/mcore.h:123
#, fuzzy
msgid "Inline constants if it only takes 1 instruction"
msgstr "1 Ì¿Îá¤À¤±¤ò¤È¤ëÉÔÊѽèÍý¤ò¥¤¥ó¥é¥¤¥ó¤Ë¤¹¤ë"
-#: config/mcore/mcore.h:130
+#: config/mcore/mcore.h:125
msgid "Set maximum alignment to 4"
msgstr "ºÇÂ祢¥é¥¤¥ó¥á¥ó¥È¤ò 4 ¤ËÀßÄꤹ¤ë"
-#: config/mcore/mcore.h:132
+#: config/mcore/mcore.h:127
msgid "Set maximum alignment to 8"
msgstr "ºÇÂ祢¥é¥¤¥ó¥á¥ó¥È¤ò 8 ¤ËÀßÄꤹ¤ë"
-#: config/mcore/mcore.h:136
+#: config/mcore/mcore.h:131
msgid "Do not use the divide instruction"
msgstr "ʬ³äÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/mcore/mcore.h:140
+#: config/mcore/mcore.h:135
#, fuzzy
msgid "Do not arbitrary sized immediates in bit operations"
msgstr "¥Ó¥Ã¥È±é»»¤Ç¤Î¨ÃÍ¥µ¥¤¥º¤òÄ´Ä䤷¤Ê¤¤"
-#: config/mcore/mcore.h:142
+#: config/mcore/mcore.h:137
#, fuzzy
msgid "Always treat bit-field as int-sized"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤ò¾ï¤Ë int ¤Î¥µ¥¤¥º¤È¤·¤Æ°·¤¦"
-#: config/mcore/mcore.h:146
+#: config/mcore/mcore.h:141
msgid "Force functions to be aligned to a 4 byte boundary"
msgstr "´Ø¿ô¤ò¶¯À©Åª¤Ë 4 ¥Ð¥¤¥È¶­³¦¤Ë¥¢¥é¥¤¥ó¤¹¤ë"
-#: config/mcore/mcore.h:148
+#: config/mcore/mcore.h:143
msgid "Force functions to be aligned to a 2 byte boundary"
msgstr "´Ø¿ô¤ò¶¯À©Åª¤Ë 2 ¥Ð¥¤¥È¶­³¦¤Ë¥¢¥é¥¤¥ó¤¹¤ë"
-#: config/mcore/mcore.h:150
+#: config/mcore/mcore.h:145
msgid "Emit call graph information"
msgstr "¸Æ¤Ó½Ð¤·¥°¥é¥Õ¾ðÊó¤òÁ÷½Ð¤¹¤ë"
-#: config/mcore/mcore.h:154
+#: config/mcore/mcore.h:149
msgid "Prefer word accesses over byte accesses"
msgstr "¥Ð¥¤¥È¥¢¥¯¥»¥¹¤è¤ê¥ï¡¼¥É¥¢¥¯¥»¥¹¤òÁª¤Ö"
-#: config/mcore/mcore.h:165
+#: config/mcore/mcore.h:160
msgid "Generate code for the M*Core M340"
msgstr "M*Core M340 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/mcore/mcore.h:178
+#: config/mcore/mcore.h:173
msgid "Maximum amount for a single stack increment operation"
msgstr "ñ°ì¥¹¥¿¥Ã¥¯¥¤¥ó¥¯¥ê¥á¥ó¥ÈÁàºî¤ÎºÇÂçÃÍ"
-#: config/mips/mips.c:5128
+#: config/mips/mips.c:3115 config/xtensa/xtensa.c:992
+#: config/xtensa/xtensa.c:1024 config/xtensa/xtensa.c:1033
+msgid "bad test"
+msgstr ""
+
+#: config/mips/mips.c:4593
#, c-format
msgid "bad value (%s) for -mabi= switch"
msgstr "-mabi= ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
-#: config/mips/mips.c:5158
+#: config/mips/mips.c:4616
#, c-format
-msgid "-mips%d conflicts with the other architecture options, which specify a MIPS%d processor"
+msgid "-mips%s conflicts with the other architecture options, which specify a MIPS%d processor"
msgstr ""
-#: config/mips/mips.c:5165
-#, c-format
-msgid "bad value (%s) for -mips switch"
-msgstr "-mips ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
-
-#: config/mips/mips.c:5180
+#: config/mips/mips.c:4635
#, c-format
msgid "-march=%s is not compatible with the selected ABI"
msgstr ""
-#: config/mips/mips.c:5192
+#: config/mips/mips.c:4650
msgid "-mgp64 used with a 32-bit processor"
msgstr ""
-#: config/mips/mips.c:5194
+#: config/mips/mips.c:4652
#, fuzzy
msgid "-mgp32 used with a 64-bit ABI"
msgstr "64 ¥Ó¥Ã¥È ABI ¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.c:5196
+#: config/mips/mips.c:4654
#, fuzzy
msgid "-mgp64 used with a 32-bit ABI"
msgstr "32 ¥Ó¥Ã¥È ABI ¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.c:5214 config/mips/mips.c:5216 config/mips/mips.c:5218
+#: config/mips/mips.c:4672 config/mips/mips.c:4674 config/mips/mips.c:4676
+#: config/mips/mips.c:4804
#, fuzzy, c-format
msgid "unsupported combination: %s"
msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¥Ð¡¼¥¸¥ç¥ó¤Ç¤¹"
-#: config/mips/mips.c:5288
+#: config/mips/mips.c:4768
+#, fuzzy
+msgid "-g is only supported using GNU as,"
+msgstr "-g ¤Ï¤³¤Î¥×¥í¥»¥Ã¥µ¤Ç¤Ï GAS ¤ò»ÈÍѤ¹¤ë»þ¤À¤±¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹"
+
+#: config/mips/mips.c:4770
+#, fuzzy
+msgid "-g is only supported using GNU as with -mabi=32,"
+msgstr "-g ¤Ï¤³¤Î¥×¥í¥»¥Ã¥µ¤Ç¤Ï GAS ¤ò»ÈÍѤ¹¤ë»þ¤À¤±¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹"
+
+#: config/mips/mips.c:4771 config/pa/pa.c:353
+#, fuzzy
+msgid "-g option disabled"
+msgstr "-g ¥ª¥×¥·¥ç¥ó¤ò̵¸ú²½¤·¤Þ¤·¤¿¡£"
+
+#: config/mips/mips.c:4799
msgid "generation of Branch Likely instructions enabled, but not supported by architecture"
msgstr ""
-#: config/mips/mips.c:5299
+#: config/mips/mips.c:4816
msgid "-G is incompatible with PIC code which is the default"
msgstr "-G ¤Ï¥Ç¥Õ¥©¥ë¥È¤Î PIC ¥³¡¼¥É¤È¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: config/mips/mips.c:5315
+#: config/mips/mips.c:4844
msgid "-membedded-pic and -mabicalls are incompatible"
msgstr "-membedded-pic ¤È -mabicalls ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: config/mips/mips.c:5318
+#: config/mips/mips.c:4847
msgid "-G and -membedded-pic are incompatible"
msgstr "-G ¤È -membedded-pic ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: config/mips/mips.c:5369
-#, fuzzy, c-format
-msgid "invalid option `entry%s'"
-msgstr "̵¸ú¤Ê¥ª¥×¥·¥ç¥ó `entry%s'"
+#: config/mips/mips.c:4879
+msgid "non-PIC n64 with explicit relocations"
+msgstr ""
-#: config/mips/mips.c:5372
-msgid "-mentry is only meaningful with -mips-16"
-msgstr "-mentry ¤Ï -mips-16 ¤ò»ØÄꤷ¤¿¤È¤­¤À¤±°ÕÌ£¤ò»ý¤Á¤Þ¤¹"
+#: config/mips/mips.c:5267
+msgid "mips_debugger_offset called with non stack/frame/arg pointer"
+msgstr ""
-#: config/mips/mips.c:5781
+#: config/mips/mips.c:5394
#, c-format
msgid "internal error: %%) found without a %%( in assembler pattern"
msgstr "ÆâÉô¥¨¥é¡¼: ¥¢¥»¥ó¥Ö¥é¥Ñ¥¿¡¼¥ó¤Ç %%( ¤Ê¤·¤Î %%) ¤¬¸«¤Ä¤«¤ê¤Þ¤·¤¿"
-#: config/mips/mips.c:5795
+#: config/mips/mips.c:5408
#, c-format
msgid "internal error: %%] found without a %%[ in assembler pattern"
msgstr "ÆâÉô¥¨¥é¡¼: ¥¢¥»¥ó¥Ö¥é¥Ñ¥¿¡¼¥ó¤Ç %%[ ¤Ê¤·¤Î %%] ¤¬¸«¤Ä¤«¤ê¤Þ¤·¤¿"
-#: config/mips/mips.c:5808
+#: config/mips/mips.c:5421
#, c-format
msgid "internal error: %%> found without a %%< in assembler pattern"
msgstr "ÆâÉô¥¨¥é¡¼: ¥¢¥»¥ó¥Ö¥é¥Ñ¥¿¡¼¥ó¤Ç %%< ¤Ê¤·¤Î %%> ¤¬¸«¤Ä¤«¤ê¤Þ¤·¤¿"
-#: config/mips/mips.c:5821
+#: config/mips/mips.c:5434
#, c-format
msgid "internal error: %%} found without a %%{ in assembler pattern"
msgstr "ÆâÉô¥¨¥é¡¼: ¥¢¥»¥ó¥Ö¥é¥Ñ¥¿¡¼¥ó¤Ç %%{ ¤Ê¤·¤Î %%} ¤¬¸«¤Ä¤«¤ê¤Þ¤·¤¿"
-#: config/mips/mips.c:5835
+#: config/mips/mips.c:5448
#, fuzzy, c-format
msgid "PRINT_OPERAND: unknown punctuation '%c'"
msgstr "PRINT_OPERAND: ÉÔÌÀ¤Ê¶çÆÉÅÀ '%c'"
-#: config/mips/mips.c:5844 config/xtensa/xtensa.c:1939
-msgid "PRINT_OPERAND null pointer"
+#: config/mips/mips.c:5477
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%C"
msgstr "PRINT_OPERAND NULL ¥Ý¥¤¥ó¥¿"
-#: config/mips/mips.c:5975
-#, c-format
-msgid "invalid use of %%d, %%x, or %%X"
-msgstr "̵¸ú¤ÊÍÑË¡¤Î of %%d, %%x, Ëô¤Ï %%X"
-
-#: config/mips/mips.c:6013 config/xtensa/xtensa.c:2033
-msgid "PRINT_OPERAND_ADDRESS, null pointer"
-msgstr "PRINT_OPERAND_ADDRESS, null ¥Ý¥¤¥ó¥¿"
-
-#: config/mips/mips.c:6242
-msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
-msgstr "MIPS ECOFF ·Á¼°¤Ç¤Ï #line ¤ò»ý¤Ä´Ø¿ô¤Ç¤Î¥Õ¥¡¥¤¥ë̾Êѹ¹¤Ïµö²Ä¤µ¤ì¤Þ¤»¤ó"
-
-#: config/mips/mips.c:6552
-#, fuzzy
-msgid "can't rewind temp file"
-msgstr "%s ¤ò rewind ¤Ç¤­¤Þ¤»¤ó"
-
-#: config/mips/mips.c:6556
-#, fuzzy
-msgid "can't write to output file"
-msgstr "%s ¤Ø½ñ¤­¹þ¤á¤Þ¤»¤ó"
-
-#: config/mips/mips.c:6559
-#, fuzzy
-msgid "can't read from temp file"
-msgstr "%s ¤«¤éÆɹþ¤á¤Þ¤»¤ó"
-
-#: config/mips/mips.c:6562
-#, fuzzy
-msgid "can't close temp file"
-msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë %s ¤ò close ¤Ç¤­¤Þ¤»¤ó"
+#: config/mips/mips.c:5494
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%N"
+msgstr "PRINT_OPERAND NULL ¥Ý¥¤¥ó¥¿"
-#: config/mips/mips.c:7003
+#: config/mips/mips.c:5503
#, fuzzy, c-format
-msgid "gp_offset (%ld) or end_offset (%ld) is less than zero"
-msgstr "gp_offset (%ld) Ëô¤Ï end_offset (%ld) ¤¬¥¼¥í¤è¤ê¤â¾®¤µ¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
+msgid "PRINT_OPERAND, invalid insn for %%F"
+msgstr "PRINT_OPERAND NULL ¥Ý¥¤¥ó¥¿"
-#: config/mips/mips.c:7112
+#: config/mips/mips.c:5512
#, fuzzy, c-format
-msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
-msgstr "fp_offset (%ld) Ëô¤Ï end_offset (%ld) ¤¬¥¼¥í¤è¤ê¤â¾®¤µ¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£"
+msgid "PRINT_OPERAND, invalid insn for %%W"
+msgstr "PRINT_OPERAND NULL ¥Ý¥¤¥ó¥¿"
+
+#: config/mips/mips.c:5618
+msgid "PRINT_OPERAND, invalid operand for relocation"
+msgstr ""
-#: config/mips/mips.c:9335
+#: config/mips/mips.c:8252
#, c-format
msgid "can not handle inconsistent calls to `%s'"
msgstr "`%s' ¤Ø¤ÎÌ·½â¤·¤¿¸Æ¤Ó½Ð¤·¤òÊ᪤Ǥ­¤Þ¤»¤ó"
-#: config/mips/mips.c:10467
+#: config/mips/mips.c:9258
#, fuzzy
msgid "the cpu name must be lower case"
msgstr "¥·¥ó¥Ü¥ë̾¤ò¾®Ê¸»ú¤È¤¹¤ë"
-#: config/mips/mips.c:10489
+#: config/mips/mips.c:9280
#, fuzzy, c-format
msgid "bad value (%s) for %s"
msgstr "ÃÍ (%s) ¤Ï %s switch ¤Ë¤È¤Ã¤ÆÀµ¤·¤¯¤¢¤ê¤Þ¤»¤ó"
+#: config/mips/mips.c:9549
+#, fuzzy, c-format
+msgid "can't rewind temp file: %m"
+msgstr "%s ¤ò rewind ¤Ç¤­¤Þ¤»¤ó"
+
+#: config/mips/mips.c:9553
+#, fuzzy, c-format
+msgid "can't write to output file: %m"
+msgstr "½ÐÎÏ¥Õ¥¡¥¤¥ë `%s' ¤ò open ¤Ç¤­¤Þ¤»¤ó"
+
+#: config/mips/mips.c:9556
+#, fuzzy, c-format
+msgid "can't read from temp file: %m"
+msgstr "%s ¤«¤éÆɹþ¤á¤Þ¤»¤ó"
+
+#: config/mips/mips.c:9559
+#, fuzzy, c-format
+msgid "can't close temp file: %m"
+msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë %s ¤ò close ¤Ç¤­¤Þ¤»¤ó"
+
+#: config/mips/linux64.h:39
+msgid "Same as -mabi=32, just trickier"
+msgstr ""
+
#. Target CPU builtins.
#. We do this here because __mips is defined below and so we can't use builtin_define_std.
#. Treat _R3000 and _R4000 like register-size defines, which is how they've historically been used.
#. Macros dependent on the C dialect.
-#. Bizzare, but needed at least for Irix.
+#. Bizarre, but needed at least for Irix.
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:528 config/mn10300/mn10300.h:64
-msgid "No default crt0.o"
-msgstr "crt0.o ¤ò¥Ç¥Õ¥©¥ë¥È¤È¤·¤Ê¤¤"
-
-#: config/mips/mips.h:530
+#: config/mips/mips.h:501
msgid "Use 64-bit int type"
msgstr "64 ¥Ó¥Ã¥È int ·¿¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:532
+#: config/mips/mips.h:503
msgid "Use 64-bit long type"
msgstr "64 ¥Ó¥Ã¥È long ·¿¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:534
+#: config/mips/mips.h:505
msgid "Use 32-bit long type"
msgstr "32 ¥Ó¥Ã¥È long ·¿¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:536
+#: config/mips/mips.h:507
msgid "Optimize lui/addiu address loads"
msgstr "lui/addiu ¥¢¥É¥ì¥¹¥í¡¼¥É¤òºÇŬ²½¤¹¤ë"
-#: config/mips/mips.h:538
+#: config/mips/mips.h:509
msgid "Don't optimize lui/addiu address loads"
msgstr "lui/addiu ¥¢¥É¥ì¥¹¥í¡¼¥É¤òºÇŬ²½¤·¤Ê¤¤"
-#: config/mips/mips.h:540
+#: config/mips/mips.h:511
msgid "Use MIPS as"
msgstr "MIPS as ¤òÍøÍѤ¹¤ë"
-#: config/mips/mips.h:542
+#: config/mips/mips.h:513
msgid "Use GNU as"
msgstr "GNU as ¤òÍøÍѤ¹¤ë"
-#: config/mips/mips.h:544
+#: config/mips/mips.h:515
msgid "Use symbolic register names"
msgstr "¥·¥ó¥Ü¥ê¥Ã¥¯¥ì¥¸¥¹¥¿Ì¾¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:546
+#: config/mips/mips.h:517
msgid "Don't use symbolic register names"
msgstr "¥·¥ó¥Ü¥ê¥Ã¥¯¥ì¥¸¥¹¥¿Ì¾¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/mips/mips.h:548 config/mips/mips.h:550
-msgid "Use GP relative sdata/sbss sections"
+#: config/mips/mips.h:519 config/mips/mips.h:521
+#, fuzzy
+msgid "Use GP relative sdata/sbss sections (now ignored)"
msgstr "GP ´ØÏ¢ sdata/sbss ¥»¥¯¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:552 config/mips/mips.h:554
-msgid "Don't use GP relative sdata/sbss sections"
+#: config/mips/mips.h:523 config/mips/mips.h:525
+#, fuzzy
+msgid "Don't use GP relative sdata/sbss sections (now ignored)"
msgstr "GP ´ØÏ¢ sdata/sbss ¥»¥¯¥·¥ç¥ó¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/mips/mips.h:556
-msgid "Output compiler statistics"
+#: config/mips/mips.h:527
+#, fuzzy
+msgid "Output compiler statistics (now ignored)"
msgstr "¥³¥ó¥Ñ¥¤¥éÅý·×¤ò½ÐÎϤ¹¤ë"
-#: config/mips/mips.h:558
+#: config/mips/mips.h:529
msgid "Don't output compiler statistics"
msgstr "¥³¥ó¥Ñ¥¤¥éÅý·×¤ò½ÐÎϤ·¤Ê¤¤"
-#: config/mips/mips.h:560
+#: config/mips/mips.h:531
msgid "Don't optimize block moves"
msgstr "¥Ö¥í¥Ã¥¯°ÜÆ°¤òºÇŬ²½¤·¤Ê¤¤"
-#: config/mips/mips.h:562
+#: config/mips/mips.h:533
msgid "Optimize block moves"
msgstr "¥Ö¥í¥Ã¥¯°ÜÆ°¤òºÇŬ²½¤¹¤ë"
-#: config/mips/mips.h:564
+#: config/mips/mips.h:535
msgid "Use mips-tfile asm postpass"
msgstr "asm ¸å²áÄø¤Ç mips-tfile ¤òÍøÍѤ¹¤ë"
-#: config/mips/mips.h:566
+#: config/mips/mips.h:537
msgid "Don't use mips-tfile asm postpass"
msgstr "asm ¸å²áÄø¤Ç mips-tfile ¤òÍøÍѤ·¤Ê¤¤"
@@ -12068,276 +11367,242 @@ msgstr "asm ¸å²áÄø¤Ç mips-tfile ¤òÍøÍѤ·¤Ê¤¤"
#. where VALUE is the bits to set or minus the bits to clear and DOC
#. is the documentation for --help (NULL if intentionally undocumented).
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:570 config/pdp11/pdp11.h:56
+#: config/mips/mips.h:541 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:314
msgid "Use hardware floating point"
msgstr "¥Ï¡¼¥É¥¦¥§¥¢ÉâÆ°¾®¿ôÅÀ¤òÍøÍѤ¹¤ë"
-#: config/mips/mips.h:572
+#: config/mips/mips.h:543
msgid "Use 64-bit FP registers"
msgstr "64 ¥Ó¥Ã¥È FP ¥ì¥¸¥¹¥¿¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:574
+#: config/mips/mips.h:545
msgid "Use 32-bit FP registers"
msgstr "32 ¥Ó¥Ã¥È FP ¥ì¥¸¥¹¥¿¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:576
+#: config/mips/mips.h:547
msgid "Use 64-bit general registers"
msgstr "64 ¥Ó¥Ã¥È°ìÈ̥쥸¥¹¥¿¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:578
+#: config/mips/mips.h:549
msgid "Use 32-bit general registers"
msgstr "32 ¥Ó¥Ã¥È°ìÈ̥쥸¥¹¥¿¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:580
+#: config/mips/mips.h:551
msgid "Use Irix PIC"
msgstr "Irix PIC ¤òÍøÍѤ¹¤ë"
-#: config/mips/mips.h:582
+#: config/mips/mips.h:553
msgid "Don't use Irix PIC"
msgstr "Irix PIC ¤òÍøÍѤ·¤Ê¤¤"
-#: config/mips/mips.h:584
+#: config/mips/mips.h:555
msgid "Use indirect calls"
msgstr "´ÖÀܸƤӽФ·¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:586
+#: config/mips/mips.h:557
msgid "Don't use indirect calls"
msgstr "´ÖÀܸƤӽФ·¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/mips/mips.h:588
+#: config/mips/mips.h:559
msgid "Use embedded PIC"
msgstr "Ëä¤á¹þ¤ß PIC ¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:590
+#: config/mips/mips.h:561
msgid "Don't use embedded PIC"
msgstr "Ëä¤á¹þ¤ß PIC ¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/mips/mips.h:592
-msgid "Use ROM instead of RAM"
-msgstr "RAM ¤ÎÂå¤ï¤ê¤Ë ROM ¤òÍøÍѤ¹¤ë"
-
-#: config/mips/mips.h:594
-msgid "Don't use ROM instead of RAM"
-msgstr "RAM ¤ÎÂå¤ï¤ê¤Ë ROM ¤òÍøÍѤ·¤Ê¤¤"
-
-#: config/mips/mips.h:596
-msgid "Put uninitialized constants in ROM (needs -membedded-data)"
-msgstr "̤½é´ü²½Äê¿ô¤ò ROM ¤ËÃÖ¤¯(Í× -membedded-data)"
-
-#: config/mips/mips.h:598
-msgid "Don't put uninitialized constants in ROM"
-msgstr "̤½é´ü²½Äê¿ô¤ò ROM ¤ËÃÖ¤«¤Ê¤¤"
-
-#. Macro to define tables used to set the flags.
-#: config/mips/mips.h:600 config/xtensa/xtensa.h:110
+#: config/mips/mips.h:571
msgid "Use big-endian byte order"
msgstr "¥Ó¥Ã¥°¥¨¥ó¥Ç¥£¥¢¥ó¤Î¥Ð¥¤¥È½ç¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:602 config/xtensa/xtensa.h:112
+#: config/mips/mips.h:573
msgid "Use little-endian byte order"
msgstr "¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó¤Î¥Ð¥¤¥È½ç¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:604
+#: config/mips/mips.h:575
msgid "Use single (32-bit) FP only"
msgstr "ñÀºÅÙ(32bit) FP ¤Î¤ß¤òÍøÍѤ¹¤ë"
-#: config/mips/mips.h:606
+#: config/mips/mips.h:577
msgid "Don't use single (32-bit) FP only"
msgstr "ñÀºÅÙ(32bit) FP °Ê³°¤âÍøÍѤ¹¤ë"
-#: config/mips/mips.h:608
+#: config/mips/mips.h:579
msgid "Use multiply accumulate"
msgstr "¾è»»Ì¿Îá¤ò»ÈÍѤ¹¤ë"
-#: config/mips/mips.h:610
+#: config/mips/mips.h:581
msgid "Don't use multiply accumulate"
msgstr "¾è»»¡¦²Ã»»Ì¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/mips/mips.h:612 config/rs6000/rs6000.h:314
+#: config/mips/mips.h:583
msgid "Don't generate fused multiply/add instructions"
msgstr "ÉâÆ°¾®¿ô¤Î¾è»»/²Ã»»Ì¿Îá¤òÀ¸À®¤·¤Ê¤¤"
-#: config/mips/mips.h:614 config/rs6000/rs6000.h:312
+#: config/mips/mips.h:585 config/rs6000/rs6000.h:330
msgid "Generate fused multiply/add instructions"
msgstr "ÉâÆ°¾®¿ô¤Î¾è»»/²Ã»»Ì¿Îá¤òÀ¸À®¤¹¤ë"
-#: config/mips/mips.h:616
+#: config/mips/mips.h:587
msgid "Work around early 4300 hardware bug"
msgstr "½é´ü¤Î 4300 ¥Ï¡¼¥É¥¦¥§¥¢¥Ð¥°¤ÎÂнè¤ò¹Ô¤¦"
-#: config/mips/mips.h:618
+#: config/mips/mips.h:589
msgid "Don't work around early 4300 hardware bug"
msgstr "½é´ü¤Î 4300 ¥Ï¡¼¥É¥¦¥§¥¢¥Ð¥°¤ÎÂнè¤ò¹Ô¤ï¤Ê¤¤"
-#: config/mips/mips.h:620
+#: config/mips/mips.h:591
+msgid "Work around errata for early SB-1 revision 2 cores"
+msgstr ""
+
+#: config/mips/mips.h:593
+msgid "Don't work around errata for early SB-1 revision 2 cores"
+msgstr ""
+
+#: config/mips/mips.h:595
msgid "Trap on integer divide by zero"
msgstr "À°¿ô¤Î¥¼¥í½ü»»¤ò¥È¥é¥Ã¥×¤¹¤ë"
-#: config/mips/mips.h:622
+#: config/mips/mips.h:597
msgid "Don't trap on integer divide by zero"
msgstr "À°¿ô¤Î¥¼¥í½ü»»¤ò¥È¥é¥Ã¥×¤·¤Ê¤¤"
-#: config/mips/mips.h:624
-msgid "Trap on integer divide overflow"
-msgstr "À°¿ô½ü»»¤Î¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤ò¥È¥é¥Ã¥×¤¹¤ë"
-
-#: config/mips/mips.h:626
-msgid "Don't trap on integer divide overflow"
-msgstr "À°¿ô½ü»»¤Î¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤ò¥È¥é¥Ã¥×¤·¤Ê¤¤"
-
-#: config/mips/mips.h:628
+#: config/mips/mips.h:599
msgid "Use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:630
+#: config/mips/mips.h:601
msgid "Don't use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:744 config/pa/pa.h:310
-msgid "Specify CPU for scheduling purposes"
-msgstr "Ì¿Î᥹¥±¥¸¥å¡¼¥ê¥ó¥°¤Î¤¿¤á¤Ë CPU ¤ò»ØÄꤹ¤ë"
+#: config/mips/mips.h:603
+msgid "Use NewABI-style %reloc() assembly operators"
+msgstr ""
-#: config/mips/mips.h:746
-#, fuzzy
-msgid "Specify CPU for code generation purposes"
-msgstr "Ì¿Î᥹¥±¥¸¥å¡¼¥ê¥ó¥°¤Î¤¿¤á¤Ë CPU ¤ò»ØÄꤹ¤ë"
+#: config/mips/mips.h:605
+msgid "Use assembler macros instead of relocation operators"
+msgstr ""
-#: config/mips/mips.h:748
+#: config/mips/mips.h:607
#, fuzzy
-msgid "Specify an ABI"
-msgstr "MIPS ISA ¤ò»ØÄꤹ¤ë"
+msgid "Generate mips16 code"
+msgstr "SA ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/mips/mips.h:750
+#: config/mips/mips.h:609
#, fuzzy
-msgid "Specify a Standard MIPS ISA"
-msgstr "MIPS ISA ¤ò»ØÄꤹ¤ë"
+msgid "Generate normal-mode code"
+msgstr "SA ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/mips/mips.h:752
-msgid "Use mips16 entry/exit psuedo ops"
-msgstr "mips16 ¤Î entry/exit µ¿»÷¥ª¥Ú¥é¥ó¥É¤ò»ÈÍѤ¹¤ë"
+#: config/mips/mips.h:611
+msgid "Lift restrictions on GOT size"
+msgstr ""
-#: config/mips/mips.h:754
-msgid "Don't use MIPS16 instructions"
-msgstr "MIPS16 Ì¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
+#: config/mips/mips.h:613
+msgid "Do not lift restrictions on GOT size"
+msgstr ""
-#: config/mips/mips.h:756
+#: config/mips/mips.h:735
#, fuzzy
-msgid "Don't call any cache flush functions"
-msgstr "´Ø¿ô %s ¤Ë¸Æ¤Ó½Ð¤·¤¬¤¢¤ê¤Þ¤»¤ó\n"
+msgid "Specify an ABI"
+msgstr "MIPS ISA ¤ò»ØÄꤹ¤ë"
-#: config/mips/mips.h:758
-msgid "Specify cache flush function"
-msgstr ""
+#: config/mips/mips.h:737
+#, fuzzy
+msgid "Specify a Standard MIPS ISA"
+msgstr "MIPS ISA ¤ò»ØÄꤹ¤ë"
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/mips/mips.h:2900
+#: config/mips/mips.h:2403
msgid "mips16 function profiling"
msgstr "mips16 ´Ø¿ô¥×¥í¥Õ¥¡¥¤¥ë"
-#: config/mmix/mmix.c:189
+#: config/mmix/mmix.c:207
#, fuzzy, c-format
msgid "-f%s not supported: ignored"
msgstr "`%s' ¤Ï %s ¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: config/mmix/mmix.c:644
+#: config/mmix/mmix.c:633
#, c-format
msgid "too large function value type, needs %d registers, have only %d registers for this"
msgstr ""
-#: config/mmix/mmix.c:826
+#: config/mmix/mmix.c:803
msgid "function_profiler support for MMIX"
msgstr ""
-#: config/mmix/mmix.c:848
+#: config/mmix/mmix.c:823
msgid "MMIX Internal: Last named vararg would not fit in a register"
msgstr ""
-#: config/mmix/mmix.c:1639 config/mmix/mmix.c:1769
+#: config/mmix/mmix.c:1538 config/mmix/mmix.c:1668
msgid "MMIX Internal: Expected a CONST_INT, not this"
msgstr ""
-#: config/mmix/mmix.c:1647 config/mmix/mmix.c:1671 config/mmix/mmix.c:1787
+#: config/mmix/mmix.c:1546 config/mmix/mmix.c:1570 config/mmix/mmix.c:1686
#, c-format
msgid "MMIX Internal: Bad register: %d"
msgstr ""
-#: config/mmix/mmix.c:1718
+#: config/mmix/mmix.c:1617
msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
msgstr ""
-#: config/mmix/mmix.c:1737
+#: config/mmix/mmix.c:1636
msgid "MMIX Internal: Expected a register, not this"
msgstr ""
-#: config/mmix/mmix.c:1747
+#: config/mmix/mmix.c:1646
msgid "MMIX Internal: Expected a constant, not this"
msgstr ""
#. Presumably there's a missing case above if we get here.
-#: config/mmix/mmix.c:1779
+#: config/mmix/mmix.c:1678
#, c-format
msgid "MMIX Internal: Missing `%c' case in mmix_print_operand"
msgstr ""
#. We need the original here.
-#: config/mmix/mmix.c:1831
+#: config/mmix/mmix.c:1730
msgid "MMIX Internal: Cannot decode this operand"
msgstr ""
-#: config/mmix/mmix.c:1891
+#: config/mmix/mmix.c:1787
msgid "MMIX Internal: This is not a recognized address"
msgstr ""
-#: config/mmix/mmix.c:2082
+#: config/mmix/mmix.c:1964
#, c-format
msgid "stack frame not a multiple of 8 bytes: %d"
msgstr ""
-#: config/mmix/mmix.c:2321
+#: config/mmix/mmix.c:2203
#, c-format
msgid "stack frame not a multiple of octabyte: %d"
msgstr ""
-#: config/mmix/mmix.c:2818 config/mmix/mmix.c:2887
+#: config/mmix/mmix.c:2677 config/mmix/mmix.c:2741
#, c-format
msgid "MMIX Internal: %s is not a shiftable int"
msgstr ""
-#: config/mmix/mmix.c:3006
+#: config/mmix/mmix.c:2857
msgid "MMIX Internal: Trying to output invalidly reversed condition:"
msgstr ""
-#: config/mmix/mmix.c:3013
+#: config/mmix/mmix.c:2864
msgid "MMIX Internal: What's the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:3017
+#: config/mmix/mmix.c:2868
msgid "MMIX Internal: What is the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:3088
+#: config/mmix/mmix.c:2938
#, fuzzy
msgid "MMIX Internal: This is not a constant:"
msgstr "¥Õ¥£¡¼¥ë¥É½é´üÀßÄê»Ò¤¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#. For these target macros, there is no generic documentation here. You
-#. should read `Using and Porting GCC' for that. Only comments specific
-#. to the MMIX target are here.
-#.
-#. There are however references to the specific texinfo node (comments
-#. with "Node:"), so there should be little or nothing amiss. Probably
-#. the opposite, since we don't have to care about old littering and
-#. soon outdated generic comments.
-#. Node: Driver
-#. User symbols are in the same name-space as built-in symbols, but we
-#. don't need the built-in symbols, so remove those and instead apply
-#. stricter operand checking. Don't warn when expanding insns.
-#. Pass on -mset-program-start=N and -mset-data-start=M to the linker.
-#. Provide default program start 0x100 unless -mno-set-program-start.
-#. Don't do this if linking relocatably, with -r. For a final link,
-#. produce mmo, unless ELF is requested or when linking relocatably.
-#. Put unused option values here.
#: config/mmix/mmix.h:132
#, fuzzy
msgid "Set start-address of the program"
@@ -12415,24 +11680,29 @@ msgstr "noreturn ´Ø¿ô¤¬ return ¤¹¤ë¤È¤­ abort ¤Î¸Æ¤Ó½Ð¤·¤òÀ¸À®¤¹¤ë"
msgid "Do not generate a single exit point for each function"
msgstr "multm Ì¿Îá¤òÀ¸À®¤·¤Ê¤¤"
-#: config/mn10300/mn10300.h:59
-msgid "Work around hardware multiply bug"
-msgstr "¥Ï¡¼¥É¥¦¥§¥¢¾è»»¥Ð¥°¤ËÂн褹¤ë"
-
-#: config/mn10300/mn10300.h:60
-msgid "Do not work around hardware multiply bug"
-msgstr "¥Ï¡¼¥É¥¦¥§¥¢¾è»»¥Ð¥°¤ËÂн褷¤Ê¤¤"
-
-#: config/mn10300/mn10300.h:61
+#: config/mn10300/linux.h:60 config/mn10300/mn10300.h:71
msgid "Target the AM33 processor"
msgstr "AM33 ¥×¥í¥»¥Ã¥µ¤ò¥¿¡¼¥²¥Ã¥È¤È¤¹¤ë"
-#: config/mn10300/mn10300.h:65
+#: config/mn10300/linux.h:61 config/mn10300/mn10300.h:75
+#, fuzzy
+msgid "Target the AM33/2.0 processor"
+msgstr "AM33 ¥×¥í¥»¥Ã¥µ¤ò¥¿¡¼¥²¥Ã¥È¤È¤¹¤ë"
+
+#: config/mn10300/linux.h:62 config/mn10300/mn10300.h:78
#, fuzzy
msgid "Enable linker relaxations"
msgstr "¥ê¥ó¥«¤Î´ËϤòÍ­¸ú¤Ë¤¹¤ë"
-#: config/ns32k/ns32k.h:142 config/s390/s390.h:69
+#: config/mn10300/mn10300.h:69
+msgid "Work around hardware multiply bug"
+msgstr "¥Ï¡¼¥É¥¦¥§¥¢¾è»»¥Ð¥°¤ËÂн褹¤ë"
+
+#: config/mn10300/mn10300.h:70
+msgid "Do not work around hardware multiply bug"
+msgstr "¥Ï¡¼¥É¥¦¥§¥¢¾è»»¥Ð¥°¤ËÂн褷¤Ê¤¤"
+
+#: config/ns32k/ns32k.h:142 config/s390/s390.h:125
msgid "Don't use hardware fp"
msgstr "¥Ï¡¼¥É¥¦¥§¥¢ÉâÆ°¾®¿ôÅÀ¤ò»ÈÍѤ·¤Ê¤¤"
@@ -12506,7 +11776,7 @@ msgstr "\"¥¹¥â¡¼¥ë¥ì¥¸¥¹¥¿¥¯¥é¥¹\" ¤Î¥Ä¥®¥Ï¥®(kludge)¤ò¹Ô¤Ê¤¦"
msgid "No \"Small register classes\" kludge"
msgstr "\"¥¹¥â¡¼¥ë¥ì¥¸¥¹¥¿¥¯¥é¥¹\" ¤Î¥Ä¥®¥Ï¥®(kludge)¤ò¹Ô¤Ê¤ï¤Ê¤¤"
-#: config/pa/pa.c:261
+#: config/pa/pa.c:304
#, fuzzy, c-format
msgid ""
"unknown -mschedule= option (%s).\n"
@@ -12515,7 +11785,7 @@ msgstr ""
"ÉÔÌÀ¤Ê -mschedule= ¥ª¥×¥·¥ç¥ó (%s).\n"
"Àµ¾ï¤Ê¥ª¥×¥·¥ç¥ó¤Ï 700, 7100, 7100LC, 7200, µÚ¤Ó 8000 ¤Ç¤¹\n"
-#: config/pa/pa.c:286
+#: config/pa/pa.c:329
#, fuzzy, c-format
msgid ""
"unknown -march= option (%s).\n"
@@ -12524,31 +11794,24 @@ msgstr ""
"ÉÔÌÀ¤Ê -march= ¥ª¥×¥·¥ç¥ó (%s).\n"
"Àµ¾ï¤Ê¥ª¥×¥·¥ç¥ó¤Ï 1.0, 1.1, µÚ¤Ó 2.0\n"
-#: config/pa/pa.c:299
+#: config/pa/pa.c:342
msgid "PIC code generation is not supported in the portable runtime model\n"
msgstr "PIC ¥³¡¼¥ÉÀ¸À®¤Ï²Äȼ¹Իþ¥â¥Ç¥ë¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó\n"
-#: config/pa/pa.c:304
+#: config/pa/pa.c:347
msgid "PIC code generation is not compatible with fast indirect calls\n"
msgstr "PIC ¥³¡¼¥ÉÀ¸À®¤Ï¹â®´ÖÀܸƤӽФ·¤ÈÁêÍƤì¤Þ¤»¤ó\n"
-#: config/pa/pa.c:309
+#: config/pa/pa.c:352
msgid "-g is only supported when using GAS on this processor,"
msgstr "-g ¤Ï¤³¤Î¥×¥í¥»¥Ã¥µ¤Ç¤Ï GAS ¤ò»ÈÍѤ¹¤ë»þ¤À¤±¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹"
-#: config/pa/pa.c:310
-#, fuzzy
-msgid "-g option disabled"
-msgstr "-g ¥ª¥×¥·¥ç¥ó¤ò̵¸ú²½¤·¤Þ¤·¤¿¡£"
-
-#: config/pa/pa-hiux.h:75 config/pa/pa-hpux.h:87 config/pa/pa-hpux7.h:81
-#: config/pa/pa64-hpux.h:25
+#: config/pa/pa-hpux.h:91 config/pa/pa64-hpux.h:25
#, fuzzy
msgid "Generate cpp defines for server IO"
msgstr "½êÍ¿¤Î CPU ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/pa/pa-hiux.h:76 config/pa/pa-hpux.h:88 config/pa/pa-hpux7.h:82
-#: config/pa/pa64-hpux.h:27
+#: config/pa/pa-hpux.h:92 config/pa/pa64-hpux.h:27
#, fuzzy
msgid "Generate cpp defines for workstation IO"
msgstr "11/40 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
@@ -12687,50 +11950,50 @@ msgstr ""
msgid "Assume code will be linked by HP ld"
msgstr ""
-#: config/pdp11/pdp11.h:57
+#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:316
msgid "Do not use hardware floating point"
msgstr "¥Ï¡¼¥É¥¦¥§¥¢ÉâÆ°¾®¿ôÅÀ¤òÍøÍѤ·¤Ê¤¤"
#. return float result in ac0
-#: config/pdp11/pdp11.h:59
+#: config/pdp11/pdp11.h:64
msgid "Return floating point results in ac0"
msgstr "ÉâÆ°¾®¿ôÅÀ¤Î·ë²Ì¤ò ac0 ¤ÇÊÖ¤¹"
-#: config/pdp11/pdp11.h:60
+#: config/pdp11/pdp11.h:65
msgid "Return floating point results in memory"
msgstr "ÉâÆ°¾®¿ôÅÀ¤Î·ë²Ì¤ò¥á¥â¥ê¤ÇÊÖ¤¹"
#. is 11/40
-#: config/pdp11/pdp11.h:62
+#: config/pdp11/pdp11.h:67
msgid "Generate code for an 11/40"
msgstr "11/40 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
#. is 11/45
-#: config/pdp11/pdp11.h:65
+#: config/pdp11/pdp11.h:70
msgid "Generate code for an 11/45"
msgstr "11/45 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
#. is 11/10
-#: config/pdp11/pdp11.h:68
+#: config/pdp11/pdp11.h:73
msgid "Generate code for an 11/10"
msgstr "11/10 ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
#. use movstrhi for bcopy
#. use 32 bit for int
-#: config/pdp11/pdp11.h:73 config/pdp11/pdp11.h:74
+#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
msgid "Use 32 bit int"
msgstr "32 ¥Ó¥Ã¥ÈÀ°¿ô¤ò»ÈÍѤ¹¤ë"
-#: config/pdp11/pdp11.h:75 config/pdp11/pdp11.h:76
+#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
msgid "Use 16 bit int"
msgstr "16 ¥Ó¥Ã¥ÈÀ°¿ô¤ò»ÈÍѤ¹¤ë"
#. use 32 bit for float
-#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
+#: config/pdp11/pdp11.h:83 config/pdp11/pdp11.h:84
msgid "Use 32 bit float"
msgstr "32 ¥Ó¥Ã¥ÈÉâÆ°¾®¿ô¤ò»ÈÍѤ¹¤ë"
-#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
+#: config/pdp11/pdp11.h:85 config/pdp11/pdp11.h:86
msgid "Use 64 bit float"
msgstr "64 ¥Ó¥Ã¥ÈÉâÆ°¾®¿ô¤ò»ÈÍѤ¹¤ë"
@@ -12738,70 +12001,54 @@ msgstr "64 ¥Ó¥Ã¥ÈÉâÆ°¾®¿ô¤ò»ÈÍѤ¹¤ë"
#. is branching expensive - on a PDP, it's actually really cheap
#. this is just to play around and check what code gcc generates
#. split instruction and data memory?
-#: config/pdp11/pdp11.h:90
+#: config/pdp11/pdp11.h:95
msgid "Target has split I&D"
msgstr "¥¿¡¼¥²¥Ã¥È¤Ï split Ì¿Îá¤È¥Ç¡¼¥¿¥á¥â¥ê¤ò»ý¤Ä"
-#: config/pdp11/pdp11.h:91
+#: config/pdp11/pdp11.h:96
msgid "Target does not have split I&D"
msgstr "¥¿¡¼¥²¥Ã¥È¤Ï split Ì¿Îá¤È¥Ç¡¼¥¿¥á¥â¥ê¤ò»ý¤¿¤Ê¤¤"
#. UNIX assembler syntax?
-#: config/pdp11/pdp11.h:93
+#: config/pdp11/pdp11.h:98
msgid "Use UNIX assembler syntax"
msgstr "UNIX ¥¢¥»¥ó¥Ö¥éʸˡ¤ò»ÈÍѤ¹¤ë"
-#: config/pdp11/pdp11.h:94
+#: config/pdp11/pdp11.h:99
msgid "Use DEC assembler syntax"
msgstr "DEC ¥¢¥»¥ó¥Ö¥éʸˡ¤ò»ÈÍѤ¹¤ë"
-#: config/romp/romp.c:717 config/rs6000/rs6000.c:7755
-#, c-format
-msgid "invalid %%S value"
-msgstr "̵¸ú¤Ê %%S ÃÍ"
+#: config/rs6000/host-darwin.c:52
+msgid "Segmentation Fault (code)"
+msgstr ""
-#: config/romp/romp.c:726 config/romp/romp.c:733
-#, c-format
-msgid "invalid %%b value"
-msgstr "̵¸ú¤Ê %%b ÃÍ"
+#: config/rs6000/host-darwin.c:83
+msgid "Out of stack space.\n"
+msgstr ""
-#: config/romp/romp.c:773 config/romp/romp.c:784
+#: config/rs6000/host-darwin.c:104
#, c-format
-msgid "invalid %%z value"
-msgstr "̵¸ú¤Ê %%z ÃÍ"
+msgid "Try running `%s' in the shell to raise its limit.\n"
+msgstr ""
-#: config/romp/romp.c:792 config/romp/romp.c:800
-#, c-format
-msgid "invalid %%Z value"
-msgstr "̵¸ú¤Ê %%Z ÃÍ"
+#: config/rs6000/host-darwin.c:117
+msgid "Segmentation Fault"
+msgstr ""
-#: config/romp/romp.c:807 config/romp/romp.c:816 config/romp/romp.c:823
-#: config/rs6000/rs6000.c:7584
+#: config/rs6000/host-darwin.c:131
#, c-format
-msgid "invalid %%k value"
-msgstr "̵¸ú¤Ê %%k ÃÍ"
+msgid "While setting up signal stack: %m"
+msgstr ""
-#: config/romp/romp.c:908 config/romp/romp.c:951
+#: config/rs6000/host-darwin.c:137
#, c-format
-msgid "invalid %%j value"
-msgstr "̵¸ú¤Ê %%j ÃÍ"
+msgid "While setting up signal handler: %m"
+msgstr ""
-#. Perform any needed actions needed for a function that is receiving a
-#. variable number of arguments.
-#.
-#. CUM is as above.
-#.
-#. MODE and TYPE are the mode and type of the current parameter.
-#.
-#. PRETEND_SIZE is a variable that should be set to the amount of stack
-#. that must be pushed by the prolog to pretend that our caller pushed
-#. it.
-#.
-#. Normally, this macro will push all remaining incoming registers on the
-#. stack and set PRETEND_SIZE to the length of the registers pushed.
-#: config/romp/romp.h:648
-msgid "can't have varargs with -mfp-arg-in-fp-regs"
-msgstr "-mfp-arg-in-fp-regs ¤ò»È¤¦¤È²ÄÊѸİú¿ô¤ò»ý¤Æ¤Þ¤»¤ó"
+#: config/rs6000/host-darwin.c:184
+#, c-format
+msgid "couldn't unmap pch_address_space: %m\n"
+msgstr ""
#. Handle the machine specific pragma longcall. Its syntax is
#.
@@ -12812,204 +12059,255 @@ msgstr "-mfp-arg-in-fp-regs ¤ò»È¤¦¤È²ÄÊѸİú¿ô¤ò»ý¤Æ¤Þ¤»¤ó"
#. rs6000_default_long_calls is set to the value of TOGGLE, changing
#. whether or not new function declarations receive a longcall
#. attribute by default.
-#: config/rs6000/rs6000-c.c:44
+#: config/rs6000/rs6000-c.c:46
#, fuzzy
msgid "ignoring malformed #pragma longcall"
msgstr "#pragma %s ¤ò̵»ë¤·¤Þ¤¹"
-#: config/rs6000/rs6000-c.c:58
+#: config/rs6000/rs6000-c.c:59
#, fuzzy
msgid "missing open paren"
msgstr "Code °À­¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: config/rs6000/rs6000-c.c:60
+#: config/rs6000/rs6000-c.c:61
#, fuzzy
msgid "missing number"
msgstr "̾Á°¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: config/rs6000/rs6000-c.c:62
+#: config/rs6000/rs6000-c.c:63
#, fuzzy
msgid "missing close paren"
msgstr "¥¯¥é¥¹Ì¾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: config/rs6000/rs6000-c.c:65
+#: config/rs6000/rs6000-c.c:66
msgid "number must be 0 or 1"
msgstr ""
-#: config/rs6000/rs6000-c.c:68
+#: config/rs6000/rs6000-c.c:69
#, fuzzy
msgid "junk at end of #pragma longcall"
msgstr "#pragma map ¤Î½ª¤ê¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: config/rs6000/rs6000.c:592
+#: config/rs6000/rs6000.c:793
msgid "-mmultiple is not supported on little endian systems"
msgstr "-mmultiple ¤Ï¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó¥·¥¹¥Æ¥à¾å¤Ç¤Ï¼õ¤±Æþ¤ì¤é¤ì¤Þ¤»¤ó"
-#: config/rs6000/rs6000.c:599
+#: config/rs6000/rs6000.c:800
msgid "-mstring is not supported on little endian systems"
msgstr "-mstring ¤Ï¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó¥·¥¹¥Æ¥à¾å¤Ç¤Ï¼õ¤±Æþ¤ì¤é¤ì¤Þ¤»¤ó"
-#: config/rs6000/rs6000.c:623
+#: config/rs6000/rs6000.c:814
#, fuzzy, c-format
msgid "unknown -mdebug-%s switch"
msgstr "ÉÔÌÀ¤Ê -mdebug-%s ¥¹¥¤¥Ã¥Á¤Ç¤¹"
-#: config/rs6000/rs6000.c:635
+#: config/rs6000/rs6000.c:826
#, c-format
msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'"
msgstr ""
-#: config/rs6000/rs6000.c:646
+#: config/rs6000/rs6000.c:837
#, c-format
msgid "Unknown switch -mlong-double-%s"
msgstr ""
-#: config/rs6000/rs6000.c:738
+#: config/rs6000/rs6000.c:1008
#, c-format
-msgid "unknown -misel= option specified: '%s'"
+msgid "unknown -m%s= option specified: '%s'"
msgstr ""
-#: config/rs6000/rs6000.c:753
+#: config/rs6000/rs6000.c:1025
#, c-format
-msgid "unknown -mvrsave= option specified: '%s'"
+msgid "not configured for ABI: '%s'"
msgstr ""
-#: config/rs6000/rs6000.c:772
+#: config/rs6000/rs6000.c:1031
#, fuzzy, c-format
msgid "unknown ABI specified: '%s'"
msgstr "ÉÔÌÀ¤Ê¥Þ¥·¥ó¥â¡¼¥É `%s'"
-#: config/rs6000/rs6000.c:4206
+#: config/rs6000/rs6000.c:1045
+#, c-format
+msgid "unknown -malign-XXXXX option specified: '%s'"
+msgstr ""
+
+#: config/rs6000/rs6000.c:5358
msgid "argument 1 must be a 5-bit signed literal"
msgstr ""
-#: config/rs6000/rs6000.c:4313 config/rs6000/rs6000.c:4903
+#: config/rs6000/rs6000.c:5460 config/rs6000/rs6000.c:6083
msgid "argument 2 must be a 5-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:4356
+#: config/rs6000/rs6000.c:5500
#, fuzzy
msgid "argument 1 of __builtin_altivec_predicate must be a constant"
msgstr "`__builtin_eh_return_regno' ¤Î°ú¿ô¤ÏÄê¿ô¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: config/rs6000/rs6000.c:4410
+#: config/rs6000/rs6000.c:5554
#, fuzzy
msgid "argument 1 of __builtin_altivec_predicate is out of range"
msgstr "`__builtin_args_info' ¤Î°ú¿ô¤¬Èϰϳ°¤Ç¤¹"
-#: config/rs6000/rs6000.c:4489
+#: config/rs6000/rs6000.c:5682
msgid "argument 3 must be a 4-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:4666
+#: config/rs6000/rs6000.c:5852
#, fuzzy, c-format
msgid "argument to `%s' must be a 2-bit unsigned literal"
msgstr "`%s' ¤Ø¤Î°ú¿ô¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: config/rs6000/rs6000.c:4782
+#: config/rs6000/rs6000.c:5965
msgid "argument to dss must be a 2-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:5013
+#: config/rs6000/rs6000.c:6203
#, fuzzy
msgid "argument 1 of __builtin_spe_predicate must be a constant"
msgstr "`__builtin_eh_return_regno' ¤Î°ú¿ô¤ÏÄê¿ô¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: config/rs6000/rs6000.c:5086
+#: config/rs6000/rs6000.c:6276
#, fuzzy
msgid "argument 1 of __builtin_spe_predicate is out of range"
msgstr "`__builtin_args_info' ¤Î°ú¿ô¤¬Èϰϳ°¤Ç¤¹"
-#: config/rs6000/rs6000.c:7511
+#: config/rs6000/rs6000.c:8711
#, c-format
msgid "invalid %%f value"
msgstr "̵¸ú¤Ê %%f ÃͤǤ¹"
-#: config/rs6000/rs6000.c:7520
+#: config/rs6000/rs6000.c:8720
#, c-format
msgid "invalid %%F value"
msgstr "̵¸ú¤Ê %%F ÃͤǤ¹"
-#: config/rs6000/rs6000.c:7529
+#: config/rs6000/rs6000.c:8729
#, c-format
msgid "invalid %%G value"
msgstr "̵¸ú¤Ê %%G ÃͤǤ¹"
-#: config/rs6000/rs6000.c:7564
+#: config/rs6000/rs6000.c:8764
#, c-format
msgid "invalid %%j code"
msgstr "̵¸ú¤Ê %%j ¥³¡¼¥É¤Ç¤¹"
-#: config/rs6000/rs6000.c:7574
+#: config/rs6000/rs6000.c:8774
#, c-format
msgid "invalid %%J code"
msgstr "̵¸ú¤Ê %%J ¥³¡¼¥É¤Ç¤¹"
-#: config/rs6000/rs6000.c:7604
+#: config/rs6000/rs6000.c:8784
+#, c-format
+msgid "invalid %%k value"
+msgstr "̵¸ú¤Ê %%k ÃÍ"
+
+#: config/rs6000/rs6000.c:8804 config/xtensa/xtensa.c:1985
#, c-format
msgid "invalid %%K value"
msgstr "̵¸ú¤Ê %%K ÃͤǤ¹"
-#: config/rs6000/rs6000.c:7671
+#: config/rs6000/rs6000.c:8871
#, c-format
msgid "invalid %%O value"
msgstr "̵¸ú¤Ê %%O ÃÍ"
-#: config/rs6000/rs6000.c:7793
+#: config/rs6000/rs6000.c:8918
+#, c-format
+msgid "invalid %%q value"
+msgstr "̵¸ú¤Ê %%q ÃͤǤ¹"
+
+#: config/rs6000/rs6000.c:8962
+#, c-format
+msgid "invalid %%S value"
+msgstr "̵¸ú¤Ê %%S ÃÍ"
+
+#: config/rs6000/rs6000.c:9004
#, c-format
msgid "invalid %%T value"
msgstr "̵¸ú¤Ê %%T ÃͤǤ¹"
-#: config/rs6000/rs6000.c:7803
+#: config/rs6000/rs6000.c:9014
#, c-format
msgid "invalid %%u value"
msgstr "̵¸ú¤Ê %%u ÃͤǤ¹"
-#: config/rs6000/rs6000.c:7812
+#: config/rs6000/rs6000.c:9023 config/xtensa/xtensa.c:1955
#, c-format
msgid "invalid %%v value"
msgstr "̵¸ú¤Ê %%v ÃͤǤ¹"
-#: config/rs6000/rs6000.c:12242
+#: config/rs6000/rs6000.c:13513
msgid "no profiling of 64-bit code for this ABI"
msgstr ""
-#: config/rs6000/aix.h:160 config/rs6000/beos.h:32
+#: config/rs6000/aix.h:184 config/rs6000/beos.h:32
msgid "Always pass floating-point arguments in memory"
msgstr "ÉâÆ°¾®¿ôÅÀ°ú¿ô¤Ï¾ï¤Ë¥á¥â¥êÅϤ·¤È¤¹¤ë"
-#: config/rs6000/aix.h:162 config/rs6000/beos.h:34
+#: config/rs6000/aix.h:186 config/rs6000/beos.h:34
msgid "Don't always pass floating-point arguments in memory"
msgstr "ÉâÆ°¾®¿ôÅÀ°ú¿ô¤Ï¾ï¤Ë¥á¥â¥êÅϤ·¤È¤·¤Ê¤¤"
-#: config/rs6000/aix41.h:28 config/rs6000/aix43.h:32 config/rs6000/aix51.h:32
-#: config/rs6000/aix52.h:32
+#: config/rs6000/aix41.h:27 config/rs6000/aix43.h:31 config/rs6000/aix51.h:31
+#: config/rs6000/aix52.h:31
msgid "Support message passing with the Parallel Environment"
msgstr "ÊÂÎó´Ä¶­¤Ç¤Î¥á¥Ã¥»¡¼¥¸¥Ñ¥Ã¥·¥ó¥°¤ò¥µ¥Ý¡¼¥È¤¹¤ë"
-#: config/rs6000/aix43.h:28 config/rs6000/aix51.h:28 config/rs6000/aix52.h:28
+#: config/rs6000/aix43.h:27 config/rs6000/aix51.h:27 config/rs6000/aix52.h:27
msgid "Compile for 64-bit pointers"
msgstr "64 ¥Ó¥Ã¥È¥Ý¥¤¥ó¥¿ÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
-#: config/rs6000/aix43.h:30 config/rs6000/aix51.h:30 config/rs6000/aix52.h:30
+#: config/rs6000/aix43.h:29 config/rs6000/aix51.h:29 config/rs6000/aix52.h:29
msgid "Compile for 32-bit pointers"
msgstr "32 ¥Ó¥Ã¥È¥Ý¥¤¥ó¥¿ÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
-#: config/rs6000/aix43.h:49 config/rs6000/aix51.h:49 config/rs6000/aix52.h:49
+#: config/rs6000/aix43.h:48 config/rs6000/aix51.h:48 config/rs6000/aix52.h:48
#, fuzzy
msgid "-maix64 and POWER architecture are incompatible"
msgstr "-maix64 ¤È POWER ¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤È¤Ç¤Ï¸ß´¹À­¤¬¤¢¤ê¤Þ¤»¤ó"
-#: config/rs6000/aix43.h:54 config/rs6000/aix51.h:54 config/rs6000/aix52.h:54
+#: config/rs6000/aix43.h:53 config/rs6000/aix51.h:53 config/rs6000/aix52.h:53
#, fuzzy
msgid "-maix64 requires PowerPC64 architecture remain enabled"
msgstr "PowerPC64 ¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤Ç¤Ê¤¤¤È -maix64 ¤òÍ­¸ú¤Ë¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: config/rs6000/aix43.h:58 config/rs6000/aix51.h:58 config/rs6000/aix52.h:58
+#: config/rs6000/aix43.h:57 config/rs6000/aix51.h:57 config/rs6000/aix52.h:57
#, fuzzy
msgid "-maix64 required: 64-bit computation with 32-bit addressing not yet supported"
msgstr "-maix64 Í×µá: 32 bit ¥¢¥É¥ì¥·¥ó¥°²¼¤Î 64 bit ·×»»¤Ï¤Þ¤ÀÍøÍѤǤ­¤Þ¤»¤ó"
+#: config/rs6000/darwin.h:64
+msgid "Generate code suitable for executables (NOT shared libs)"
+msgstr ""
+
+#. The Darwin ABI always includes AltiVec, can't be (validly) turned
+#. off.
+#: config/rs6000/darwin.h:80
+msgid "-mdynamic-no-pic overrides -fpic or -fPIC"
+msgstr ""
+
+#. Darwin doesn't support -fpic.
+#: config/rs6000/darwin.h:86
+#, fuzzy
+msgid "-fpic is not supported; -fPIC assumed"
+msgstr "-pipe ¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+
+#: config/rs6000/linux64.h:96
+#, fuzzy
+msgid "-m64 requires a PowerPC64 cpu"
+msgstr "PowerPC64 ¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤Ç¤Ê¤¤¤È -maix64 ¤òÍ­¸ú¤Ë¤Ï¤Ç¤­¤Þ¤»¤ó"
+
+#: config/rs6000/linux64.h:201
+#, fuzzy
+msgid "Call mcount for profiling before a function prologue"
+msgstr "´Ø¿ô¤Î³«»ÏÉôʬ¤ËÌ¿Îá¤ò°ÜÆ°¤·¤Ê¤¤"
+
+#: config/rs6000/linux64.h:203
+#, fuzzy
+msgid "Call mcount for profiling after a function prologue"
+msgstr "´Ø¿ô¤Î³«»ÏÉôʬ¤ËÌ¿Îá¤ò°ÜÆ°¤·¤Ê¤¤"
+
#. Run-time compilation parameters selecting different hardware subsets.
#.
#. Macro to define tables used to set the flags.
@@ -13017,166 +12315,213 @@ msgstr "-maix64 Í×µá: 32 bit ¥¢¥É¥ì¥·¥ó¥°²¼¤Î 64 bit ·×»»¤Ï¤Þ¤ÀÍøÍѤǤ­¤Þ¤»¤ó"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/rs6000/rs6000.h:240
+#: config/rs6000/rs6000.h:262
msgid "Use POWER instruction set"
msgstr "POWER Ì¿Î᥻¥Ã¥È¤ò»ÈÍѤ¹¤ë"
-#: config/rs6000/rs6000.h:243
+#: config/rs6000/rs6000.h:265
msgid "Use POWER2 instruction set"
msgstr "POWER2 Ì¿Î᥻¥Ã¥È¤ò»ÈÍѤ¹¤ë"
-#: config/rs6000/rs6000.h:245
+#: config/rs6000/rs6000.h:267
msgid "Do not use POWER2 instruction set"
msgstr "POWER2 Ì¿Î᥻¥Ã¥È¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/rs6000/rs6000.h:248
+#: config/rs6000/rs6000.h:270
msgid "Do not use POWER instruction set"
msgstr "POWER Ì¿Î᥻¥Ã¥È¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/rs6000/rs6000.h:250
+#: config/rs6000/rs6000.h:272
msgid "Use PowerPC instruction set"
msgstr "PowerPC Ì¿Î᥻¥Ã¥È¤ò»ÈÍѤ¹¤ë"
-#: config/rs6000/rs6000.h:253
+#: config/rs6000/rs6000.h:275
msgid "Do not use PowerPC instruction set"
msgstr "PowerPC Ì¿Î᥻¥Ã¥È¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/rs6000/rs6000.h:255
+#: config/rs6000/rs6000.h:277
msgid "Use PowerPC General Purpose group optional instructions"
msgstr "PowerPC °ìÈÌÍÑÅÓ¥°¥ë¡¼¥×¥ª¥×¥·¥ç¥óÌ¿Îá¤ò»ÈÍѤ¹¤ë"
-#: config/rs6000/rs6000.h:257
-msgid "Don't use PowerPC General Purpose group optional instructions"
+#: config/rs6000/rs6000.h:279
+#, fuzzy
+msgid "Do not use PowerPC General Purpose group optional instructions"
msgstr "PowerPC °ìÈÌÍÑÅÓ¥°¥ë¡¼¥×¥ª¥×¥·¥ç¥óÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/rs6000/rs6000.h:259
+#: config/rs6000/rs6000.h:281
msgid "Use PowerPC Graphics group optional instructions"
msgstr "PowerPC ¥°¥é¥Õ¥£¥¯¥¹¥°¥ë¡¼¥×¥ª¥×¥·¥ç¥óÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/rs6000/rs6000.h:261
-msgid "Don't use PowerPC Graphics group optional instructions"
+#: config/rs6000/rs6000.h:283
+#, fuzzy
+msgid "Do not use PowerPC Graphics group optional instructions"
msgstr "PowerPC ¥°¥é¥Õ¥£¥¯¥¹¥°¥ë¡¼¥×¥ª¥×¥·¥ç¥óÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/rs6000/rs6000.h:263
+#: config/rs6000/rs6000.h:285
msgid "Use PowerPC-64 instruction set"
msgstr "PowerPC-64 Ì¿Î᥻¥Ã¥È¤ò»ÈÍѤ¹¤ë"
-#: config/rs6000/rs6000.h:265
-msgid "Don't use PowerPC-64 instruction set"
+#: config/rs6000/rs6000.h:287
+#, fuzzy
+msgid "Do not use PowerPC-64 instruction set"
msgstr "PowerPC-64 Ì¿Î᥻¥Ã¥È¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/rs6000/rs6000.h:267
+#: config/rs6000/rs6000.h:289
#, fuzzy
msgid "Use AltiVec instructions"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥ÉÌ¿Îá¤ò»ÈÍѤ¹¤ë"
-#: config/rs6000/rs6000.h:269
+#: config/rs6000/rs6000.h:291
#, fuzzy
-msgid "Don't use AltiVec instructions"
+msgid "Do not use AltiVec instructions"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥ÉÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/rs6000/rs6000.h:271
+#: config/rs6000/rs6000.h:293
msgid "Use new mnemonics for PowerPC architecture"
msgstr "PowerPC ¥¢¡¼¥­¥Æ¥¯¥Á¥ãÍѤο·¤·¤¤¥Ë¡¼¥â¥Ë¥Ã¥¯¤ò»ÈÍѤ¹¤ë"
-#: config/rs6000/rs6000.h:273
+#: config/rs6000/rs6000.h:295
msgid "Use old mnemonics for PowerPC architecture"
msgstr "PowerPC ¥¢¡¼¥­¥Æ¥¯¥Á¥ãÍѤθŤ¤¥Ë¡¼¥â¥Ë¥Ã¥¯¤ò»ÈÍѤ¹¤ë"
-#: config/rs6000/rs6000.h:276
+#: config/rs6000/rs6000.h:298
msgid "Put everything in the regular TOC"
msgstr "Á´¤Æ¤òÄ̾ï TOC Æâ¤ËÇÛÃÖ¤¹¤ë"
-#: config/rs6000/rs6000.h:278
+#: config/rs6000/rs6000.h:300
msgid "Place floating point constants in TOC"
msgstr "ÉâÆ°¾®¿ôÅÀÄê¿ô¤ò TOC Æâ¤ËÇÛÃÖ¤¹¤ë"
-#: config/rs6000/rs6000.h:280
-msgid "Don't place floating point constants in TOC"
+#: config/rs6000/rs6000.h:302
+#, fuzzy
+msgid "Do not place floating point constants in TOC"
msgstr "ÉâÆ°¾®¿ôÅÀÄê¿ô¤ò TOC Æâ¤ËÇÛÃÖ¤·¤Ê¤¤"
-#: config/rs6000/rs6000.h:282
+#: config/rs6000/rs6000.h:304
msgid "Place symbol+offset constants in TOC"
msgstr "¥·¥ó¥Ü¥ë+¥ª¥Õ¥»¥Ã¥ÈÄê¿ô¤ò TOC Æâ¤ËÇÛÃÖ¤¹¤ë"
-#: config/rs6000/rs6000.h:284
-msgid "Don't place symbol+offset constants in TOC"
+#: config/rs6000/rs6000.h:306
+#, fuzzy
+msgid "Do not place symbol+offset constants in TOC"
msgstr "¥·¥ó¥Ü¥ë+¥ª¥Õ¥»¥Ã¥ÈÄê¿ô¤ò TOC Æâ¤ËÇÛÃÖ¤·¤Ê¤¤"
-#: config/rs6000/rs6000.h:290
+#: config/rs6000/rs6000.h:312
msgid "Place variable addresses in the regular TOC"
msgstr "ÊÑ¿ô¥¢¥É¥ì¥¹¤òÄ̾ï TOC Æâ¤ËÇÛÃÖ¤¹¤ë"
-#: config/rs6000/rs6000.h:296
+#: config/rs6000/rs6000.h:318
msgid "Generate load/store multiple instructions"
msgstr "Ê£¿ôÌ¿Îá¤Î¥í¡¼¥É/¥¹¥È¥¢¤òÀ¸À®¤¹¤ë"
-#: config/rs6000/rs6000.h:298
+#: config/rs6000/rs6000.h:320
msgid "Do not generate load/store multiple instructions"
msgstr "Ê£¿ôÌ¿Îá¤Î¥í¡¼¥É/¥¹¥È¥¢¤òÀ¸À®¤·¤Ê¤¤"
-#: config/rs6000/rs6000.h:302
+#: config/rs6000/rs6000.h:322
msgid "Generate string instructions for block moves"
msgstr "¥Ö¥í¥Ã¥¯°ÜÆ°ÍѤΠstring Ì¿Îá¤òÀ¸À®¤¹¤ë"
-#: config/rs6000/rs6000.h:304
+#: config/rs6000/rs6000.h:324
msgid "Do not generate string instructions for block moves"
msgstr "¥Ö¥í¥Ã¥¯°ÜÆ°ÍѤΠstring Ì¿Îá¤òÀ¸À®¤·¤Ê¤¤"
-#: config/rs6000/rs6000.h:308
+#: config/rs6000/rs6000.h:326
msgid "Generate load/store with update instructions"
msgstr "update Ì¿Îá¤È°ì½ï¤Ë¥í¡¼¥É/¥¹¥È¥¢Ì¿Îá¤òÀ¸À®¤¹¤ë"
-#: config/rs6000/rs6000.h:310
+#: config/rs6000/rs6000.h:328
msgid "Do not generate load/store with update instructions"
msgstr "update Ì¿Îá¤È°ì½ï¤Ë¥í¡¼¥É/¥¹¥È¥¢Ì¿Îá¤òÀ¸À®¤·¤Ê¤¤"
-#: config/rs6000/rs6000.h:318
-msgid "Don't schedule the start and end of the procedure"
+#: config/rs6000/rs6000.h:332
+#, fuzzy
+msgid "Do not generate fused multiply/add instructions"
+msgstr "ÉâÆ°¾®¿ô¤Î¾è»»/²Ã»»Ì¿Îá¤òÀ¸À®¤·¤Ê¤¤"
+
+#: config/rs6000/rs6000.h:336
+#, fuzzy
+msgid "Do not schedule the start and end of the procedure"
msgstr "¥×¥í¥·¡¼¥¸¥ã³«»Ï¤È½ªÎ»¤Î¥¹¥±¥¸¥å¡¼¥ë¤ò¹Ô¤Ê¤ï¤Ê¤¤"
-#: config/rs6000/rs6000.h:324
+#: config/rs6000/rs6000.h:342
msgid "Return all structures in memory (AIX default)"
msgstr ""
-#: config/rs6000/rs6000.h:326
+#: config/rs6000/rs6000.h:344
msgid "Return small structures in registers (SVR4 default)"
msgstr ""
-#: config/rs6000/rs6000.h:391 config/sparc/sparc.h:633
+#: config/rs6000/rs6000.h:350
+#, fuzzy
+msgid "Generate single field mfcr instruction"
+msgstr "ʸ»úÌ¿Îá¤òÀ¸À®¤¹¤ë"
+
+#: config/rs6000/rs6000.h:352
+#, fuzzy
+msgid "Do not generate single field mfcr instruction"
+msgstr "ʸ»úÌ¿Îá¤òÀ¸À®¤·¤Ê¤¤"
+
+#: config/rs6000/rs6000.h:435 config/sparc/sparc.h:648
msgid "Use features of and schedule code for given CPU"
msgstr "Í¿¤¨¤é¤ì¤¿ CPU ÍѤε¡Ç½¤È¥¹¥±¥¸¥å¡¼¥ë¥³¡¼¥É¤òÍøÍѤ¹¤ë"
-#: config/rs6000/rs6000.h:394
+#: config/rs6000/rs6000.h:438
msgid "Enable debug output"
msgstr "¥Ç¥Ð¥Ã¥°½ÐÎϤòÍ­¸ú¤Ë¤¹¤ë"
-#: config/rs6000/rs6000.h:396
+#: config/rs6000/rs6000.h:440
msgid "Select full, part, or no traceback table"
msgstr ""
-#: config/rs6000/rs6000.h:397
+#: config/rs6000/rs6000.h:441
msgid "Specify ABI to use"
msgstr ""
-#: config/rs6000/rs6000.h:399
+#: config/rs6000/rs6000.h:443
#, fuzzy
msgid "Specify size of long double (64 or 128 bits)"
msgstr "sizeof(long double) ¤Ï 12 ¤È¤¹¤ë¡£"
-#: config/rs6000/rs6000.h:401
+#: config/rs6000/rs6000.h:445
msgid "Specify yes/no if isel instructions should be generated"
msgstr ""
-#: config/rs6000/rs6000.h:403
+#: config/rs6000/rs6000.h:447
+msgid "Specify yes/no if SPE SIMD instructions should be generated"
+msgstr ""
+
+#: config/rs6000/rs6000.h:449
+#, fuzzy
+msgid "Specify yes/no if using floating point in the GPRs"
+msgstr "ÉâÆ°¾®¿ôÅÀ¥¨¥ß¥å¥ì¡¼¥¿¤Î¥Ð¡¼¥¸¥ç¥ó¤ò»ØÄꤹ¤ë"
+
+#: config/rs6000/rs6000.h:451
msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec"
msgstr ""
-#: config/rs6000/rs6000.h:405
+#: config/rs6000/rs6000.h:453
#, fuzzy
msgid "Avoid all range limits on call instructions"
msgstr "ÊÂÎóÌ¿Îá¤ò̵¸ú¤Ë¤¹¤ë"
+#: config/rs6000/rs6000.h:456
+msgid "Determine which dependences between insns are considered costly"
+msgstr ""
+
+#: config/rs6000/rs6000.h:458
+msgid "Specify which post scheduling nop insertion scheme to apply"
+msgstr ""
+
+#: config/rs6000/rs6000.h:460
+#, fuzzy
+msgid "Specify alignment of structure fields default/natural"
+msgstr "¹½Â¤ÂÎ¥¢¥é¥¤¥ó¥á¥ó¥È¤ÎºÇ¾®¥Ó¥Ã¥È¿ô¤ò»ØÄꤹ¤ë"
+
+#: config/rs6000/rs6000.h:462
+msgid "Specify scheduling priority for dispatch slot restricted insns"
+msgstr ""
+
#. Definitions for __builtin_return_address and __builtin_frame_address.
#. __builtin_return_address (0) should give link register (65), enable
#. this.
@@ -13189,7 +12534,7 @@ msgstr "ÊÂÎóÌ¿Îá¤ò̵¸ú¤Ë¤¹¤ë"
#. Number of bytes into the frame return addresses can be found. See
#. rs6000_stack_info in rs6000.c for more information on how the different
#. abi's store the return address.
-#: config/rs6000/rs6000.h:1884
+#: config/rs6000/rs6000.h:1926
msgid "RETURN_ADDRESS_OFFSET not supported"
msgstr "RETURN_ADDRESS_OFFSET ¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
@@ -13203,105 +12548,114 @@ msgstr "ABI ¸Æ¤Ó½Ð¤·µ¬Ìó¤òÁªÂò¤¹¤ë"
msgid "Select method for sdata handling"
msgstr "sdata ¼è¤ê°·¤¤¤Î¤¿¤á¤Î¥á¥½¥Ã¥É¤òÁªÂò¤¹¤ë"
-#: config/rs6000/sysv4.h:103
+#: config/rs6000/sysv4.h:100
#, fuzzy
msgid "Align to the base type of the bit-field"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤Î¥Ù¡¼¥¹¥¿¥¤¥×¤Ë¥¢¥é¥¤¥ó¤¹¤ë"
-#: config/rs6000/sysv4.h:105
+#: config/rs6000/sysv4.h:102
#, fuzzy
msgid "Don't align to the base type of the bit-field"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤Î¥Ù¡¼¥¹¥¿¥¤¥×¤Ë¥¢¥é¥¤¥ó¤·¤Ê¤¤"
-#: config/rs6000/sysv4.h:107
+#: config/rs6000/sysv4.h:104
msgid "Don't assume that unaligned accesses are handled by the system"
msgstr "¥¢¥é¥¤¥ó¤µ¤ì¤Ê¤¤¥¢¥¯¥»¥¹¤¬¥·¥¹¥Æ¥à¤Ë¤è¤Ã¤Æ¥Ï¥ó¥É¥ë¤µ¤ì¤ë¤È¤Ï¤ß¤Ê¤µ¤Ê¤¤"
-#: config/rs6000/sysv4.h:109
+#: config/rs6000/sysv4.h:106
msgid "Assume that unaligned accesses are handled by the system"
msgstr "¥¢¥é¥¤¥ó¤µ¤ì¤Ê¤¤¥¢¥¯¥»¥¹¤¬¥·¥¹¥Æ¥à¤Ë¤è¤Ã¤Æ¥Ï¥ó¥É¥ë¤µ¤ì¤ë¤È¤ß¤Ê¤¹"
-#: config/rs6000/sysv4.h:111 config/rs6000/sysv4.h:115
+#: config/rs6000/sysv4.h:108 config/rs6000/sysv4.h:112
#, fuzzy
msgid "Produce code relocatable at runtime"
msgstr "¼Â¹Ô»þ¤ËºÆÇÛÃÖ²Äǽ¤Ê¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/rs6000/sysv4.h:113 config/rs6000/sysv4.h:117
+#: config/rs6000/sysv4.h:110 config/rs6000/sysv4.h:114
#, fuzzy
msgid "Don't produce code relocatable at runtime"
msgstr "¼Â¹Ô»þ¤ËºÆÇÛÃÖ²Äǽ¤Ê¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/rs6000/sysv4.h:119 config/rs6000/sysv4.h:121
+#: config/rs6000/sysv4.h:116 config/rs6000/sysv4.h:118
#, fuzzy
msgid "Produce little endian code"
msgstr "¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:125
+#: config/rs6000/sysv4.h:120 config/rs6000/sysv4.h:122
#, fuzzy
msgid "Produce big endian code"
msgstr "¥Ó¥Ã¥°¥¨¥ó¥Ç¥£¥¢¥ó¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/rs6000/sysv4.h:126 config/rs6000/sysv4.h:127
-#: config/rs6000/sysv4.h:128 config/rs6000/sysv4.h:129
-#: config/rs6000/sysv4.h:130 config/rs6000/sysv4.h:131
-#: config/rs6000/sysv4.h:141 config/rs6000/sysv4.h:142
-#: config/rs6000/sysv4.h:153 config/rs6000/sysv4.h:155
-#: config/rs6000/sysv4.h:157
+#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:124
+#: config/rs6000/sysv4.h:125 config/rs6000/sysv4.h:126
+#: config/rs6000/sysv4.h:127 config/rs6000/sysv4.h:128
+#: config/rs6000/sysv4.h:138 config/rs6000/sysv4.h:139
+#: config/rs6000/sysv4.h:151 config/rs6000/sysv4.h:157
msgid "no description yet"
msgstr "ÀâÌÀ¤Ï¤Þ¤À¤¢¤ê¤Þ¤»¤ó"
-#: config/rs6000/sysv4.h:132
+#: config/rs6000/sysv4.h:129
#, fuzzy
msgid "Use EABI"
msgstr "EABI ¤òÍøÍѤ¹¤ë¡£"
-#: config/rs6000/sysv4.h:133
+#: config/rs6000/sysv4.h:130
#, fuzzy
msgid "Don't use EABI"
msgstr "EABI ¤òÍøÍѤ·¤Ê¤¤¡£"
-#: config/rs6000/sysv4.h:136
+#: config/rs6000/sysv4.h:133
msgid "Do not allow bit-fields to cross word boundaries"
msgstr ""
-#: config/rs6000/sysv4.h:138
+#: config/rs6000/sysv4.h:135
#, fuzzy
msgid "Use alternate register names"
msgstr "ÂåÂإ쥸¥¹¥¿Ì¾¤ò»ÈÍѤ¹¤ë"
-#: config/rs6000/sysv4.h:140
+#: config/rs6000/sysv4.h:137
#, fuzzy
msgid "Don't use alternate register names"
msgstr "ÂåÂإ쥸¥¹¥¿Ì¾¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/rs6000/sysv4.h:144
+#: config/rs6000/sysv4.h:141
#, fuzzy
msgid "Link with libsim.a, libc.a and sim-crt0.o"
msgstr "libsim.a, libc.a µÚ¤Ó sim-crt0.o ¤È¥ê¥ó¥¯¤¹¤ë¡£"
-#: config/rs6000/sysv4.h:146
+#: config/rs6000/sysv4.h:143
#, fuzzy
msgid "Link with libads.a, libc.a and crt0.o"
msgstr "libads.a, libc.a µÚ¤Ó crt0.o ¤È¥ê¥ó¥¯¤¹¤ë¡£"
-#: config/rs6000/sysv4.h:148
+#: config/rs6000/sysv4.h:145
#, fuzzy
msgid "Link with libyk.a, libc.a and crt0.o"
msgstr "libyk.a, libc.a µÚ¤Ó crt0.o ¤È¥ê¥ó¥¯¤¹¤ë¡£"
-#: config/rs6000/sysv4.h:150
+#: config/rs6000/sysv4.h:147
#, fuzzy
msgid "Link with libmvme.a, libc.a and crt0.o"
msgstr "libmvme.a, libc.a µÚ¤Ó crt0.o ¤È¥ê¥ó¥¯¤¹¤ë¡£"
-#: config/rs6000/sysv4.h:152
+#: config/rs6000/sysv4.h:149
msgid "Set the PPC_EMB bit in the ELF flags header"
msgstr "PPC_EMB ¥Ó¥Ã¥È¤ò ELF ¥Õ¥é¥°¥Ø¥Ã¥ÀÆâ¤Ë¥»¥Ã¥È¤¹¤ë"
-#: config/rs6000/sysv4.h:154
+#: config/rs6000/sysv4.h:150
msgid "Use the WindISS simulator"
msgstr ""
+#: config/rs6000/sysv4.h:153
+#, fuzzy
+msgid "Generate 64-bit code"
+msgstr "SA ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
+
+#: config/rs6000/sysv4.h:155
+#, fuzzy
+msgid "Generate 32-bit code"
+msgstr "SA ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
+
#. Sometimes certain combinations of command options do not make sense
#. on a particular target machine. You can define a macro
#. `OVERRIDE_OPTIONS' to take account of this. This macro, if
@@ -13325,375 +12679,446 @@ msgstr "-msdata=%s ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ"
msgid "-mrelocatable and -msdata=%s are incompatible"
msgstr "-mrelocatable ¤È -msdata=%s ¤È¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: config/rs6000/sysv4.h:255
+#: config/rs6000/sysv4.h:256
#, fuzzy, c-format
msgid "-f%s and -msdata=%s are incompatible"
msgstr "-f%s ¤È -msdata=%s ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: config/rs6000/sysv4.h:264
+#: config/rs6000/sysv4.h:265
#, fuzzy, c-format
msgid "-msdata=%s and -mcall-%s are incompatible"
msgstr "-msdata=%s ¤È -mcall-%s ¤È¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: config/rs6000/sysv4.h:273
+#: config/rs6000/sysv4.h:274
#, fuzzy
msgid "-mrelocatable and -mno-minimal-toc are incompatible"
msgstr "-mrelocatable ¤È -mno-minimal-toc ¤È¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: config/rs6000/sysv4.h:279
+#: config/rs6000/sysv4.h:280
#, fuzzy, c-format
msgid "-mrelocatable and -mcall-%s are incompatible"
msgstr "-mrelocatable ¤È -mcall-%s ¤È¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: config/rs6000/sysv4.h:286
+#: config/rs6000/sysv4.h:287
#, fuzzy, c-format
msgid "-fPIC and -mcall-%s are incompatible"
msgstr "-fPIC ¤È -mcall-%s ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: config/rs6000/sysv4.h:293
+#: config/rs6000/sysv4.h:294
msgid "-mcall-aixdesc must be big endian"
msgstr "-mcall-aixdesc ¤Ï¥Ó¥Ã¥°¥¨¥ó¥Ç¥£¥¢¥ó¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: config/s390/s390.c:3063
+#: config/rs6000/sysv4.h:309
+#, fuzzy, c-format
+msgid "-m%s not supported in this configuration"
+msgstr "%s ¤Ï¤³¤Î¥³¥ó¥Õ¥£¥®¥å¥ì¡¼¥·¥ç¥ó¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
+
+#: config/s390/s390.c:926
+#, c-format
+msgid "Unknown cpu used in -march=%s."
+msgstr ""
+
+#: config/s390/s390.c:945
+#, c-format
+msgid "Unknown cpu used in -mtune=%s."
+msgstr ""
+
+#: config/s390/s390.c:950
+#, fuzzy, c-format
+msgid "z/Architecture mode not supported on %s."
+msgstr "VAX ÉâÆ°¾®¿ô¤Ç¤Ï¥È¥é¥Ã¥×¥â¡¼¥É¤òÍøÍѤǤ­¤Þ¤»¤ó"
+
+#: config/s390/s390.c:952
+msgid "64-bit ABI not supported in ESA/390 mode."
+msgstr ""
+
+#: config/s390/s390.c:3337
#, fuzzy
msgid "invalid UNSPEC as operand (1)"
msgstr "¥ª¥Ú¥é¥ó¥É¤È¤·¤Æ̵¸ú¤Ê UNSPEC"
-#: config/s390/s390.c:3123
+#: config/s390/s390.c:3385
#, fuzzy
msgid "invalid UNSPEC as operand (2)"
msgstr "¥ª¥Ú¥é¥ó¥É¤È¤·¤Æ̵¸ú¤Ê UNSPEC"
-#: config/s390/s390.c:3129
+#: config/s390/s390.c:3391
msgid "UNKNOWN in s390_output_symbolic_const !?"
msgstr ""
-#: config/s390/s390.c:3147
+#: config/s390/s390.c:3407
#, fuzzy
msgid "Cannot decompose address."
msgstr "Ê£»¨¤Ê¥¢¥É¥ì¥·¥ó¥°¥â¡¼¥É¤òÍøÍѤ·¤Ê¤¤"
-#: config/s390/s390.c:3308
+#: config/s390/s390.c:3578
msgid "UNKNOWN in print_operand !?"
msgstr ""
-#: config/s390/s390.c:4961
+#: config/s390/s390.c:5301
msgid "Total size of local variables exceeds architecture limit."
msgstr ""
-#: config/s390/s390.h:70
+#: config/s390/s390.h:126
msgid "Set backchain"
msgstr ""
-#: config/s390/s390.h:71
+#: config/s390/s390.h:127
msgid "Don't set backchain (faster, but debug harder"
msgstr ""
-#: config/s390/s390.h:72
+#: config/s390/s390.h:128
msgid "Use bras for executable < 64k"
msgstr ""
-#: config/s390/s390.h:73
+#: config/s390/s390.h:129
#, fuzzy
msgid "Don't use bras"
msgstr "EABI ¤òÍøÍѤ·¤Ê¤¤¡£"
-#: config/s390/s390.h:74
+#: config/s390/s390.h:130
msgid "Additional debug prints"
msgstr ""
-#: config/s390/s390.h:75
+#: config/s390/s390.h:131
msgid "Don't print additional debug prints"
msgstr ""
-#: config/s390/s390.h:76
-msgid "64 bit mode"
+#: config/s390/s390.h:132
+#, fuzzy
+msgid "64 bit ABI"
+msgstr "64 ¥Ó¥Ã¥È ABI ¤ò»ÈÍѤ¹¤ë"
+
+#: config/s390/s390.h:133
+#, fuzzy
+msgid "31 bit ABI"
+msgstr "64 ¥Ó¥Ã¥È ABI ¤ò»ÈÍѤ¹¤ë"
+
+#: config/s390/s390.h:134
+msgid "z/Architecture"
msgstr ""
-#: config/s390/s390.h:77
-msgid "31 bit mode"
+#: config/s390/s390.h:135
+msgid "ESA/390 architecture"
msgstr ""
-#: config/s390/s390.h:78
+#: config/s390/s390.h:136
msgid "mvcle use"
msgstr ""
-#: config/s390/s390.h:79
+#: config/s390/s390.h:137
msgid "mvc&ex"
msgstr ""
-#: config/sh/sh.c:5137
+#: config/s390/s390.h:138
+#, fuzzy
+msgid "enable tpf OS code"
+msgstr "SA ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
+
+#: config/s390/s390.h:139
+msgid "disable tpf OS code"
+msgstr ""
+
+#: config/s390/s390.h:140
+#, fuzzy
+msgid "disable fused multiply/add instructions"
+msgstr "ÉâÆ°¾®¿ô¤Î¾è»»/²Ã»»Ì¿Îá¤òÀ¸À®¤¹¤ë"
+
+#: config/s390/s390.h:141
+#, fuzzy
+msgid "enable fused multiply/add instructions"
+msgstr "ÉâÆ°¾®¿ô¤Î¾è»»/²Ã»»Ì¿Îá¤òÀ¸À®¤¹¤ë"
+
+#: config/sh/sh.c:5841
#, fuzzy
msgid "__builtin_saveregs not supported by this subtarget"
msgstr "__builtin_saveregs ¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: config/sh/sh.c:5687
+#: config/sh/sh.c:6743
msgid "attribute interrupt_handler is not compatible with -m5-compact"
msgstr ""
#. The sp_switch attribute only has meaning for interrupt functions.
-#: config/sh/sh.c:5713 config/sh/sh.c:5752
+#. The trap_exit attribute only has meaning for interrupt functions.
+#: config/sh/sh.c:6765 config/sh/sh.c:6800
#, fuzzy, c-format
msgid "`%s' attribute only applies to interrupt functions"
msgstr "`%s' °À­¤Ï´Ø¿ô¤ËÂФ·¤Æ¤Î¤ßŬÍѤµ¤ì¤Þ¤¹"
#. The argument must be a constant string.
-#: config/sh/sh.c:5720
+#: config/sh/sh.c:6772
#, fuzzy, c-format
msgid "`%s' attribute argument not a string constant"
msgstr "asm ¥Æ¥ó¥×¥ì¡¼¥È¤¬Ê¸»úÎóÄê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
#. The argument must be a constant integer.
-#: config/sh/sh.c:5759
+#: config/sh/sh.c:6807
#, fuzzy, c-format
msgid "`%s' attribute argument not an integer constant"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤ÎÉý¤¬À°¿ôÄê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
#. There are no delay slots on SHmedia.
#. Relaxation isn't yet supported for SHmedia
-#: config/sh/sh.h:437
+#. -fprofile-arcs needs a working libgcov . In unified tree configurations with newlib, this requires to configure with --with-newlib --with-headers. But there is no way to check here we have a working libgcov, so just assume that we have.
+#: config/sh/sh.h:478
#, fuzzy
msgid "Profiling is not supported on this target."
msgstr "¥¹¥¿¥Ã¥¯À©¸Â¤Ï¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: config/sparc/sparc.c:329
+#: config/sparc/sparc.c:360
#, c-format
msgid "%s is not supported by this configuration"
msgstr "%s ¤Ï¤³¤Î¥³¥ó¥Õ¥£¥®¥å¥ì¡¼¥·¥ç¥ó¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: config/sparc/sparc.c:336
+#: config/sparc/sparc.c:367
msgid "-mlong-double-64 not allowed with -m64"
msgstr "-m64 »ØÄê¥â¡¼¥É¤Ç¤Ï -mlong-double-64 ¤Ïµö²Ä¤µ¤ì¤Þ¤»¤ó"
-#: config/sparc/sparc.c:361
+#: config/sparc/sparc.c:392
msgid "-mcmodel= is not supported on 32 bit systems"
msgstr "-mcmodel= ¤Ï 32 bit ¥·¥¹¥Æ¥à¾å¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: config/sparc/sparc.c:6341 config/sparc/sparc.c:6347
+#: config/sparc/sparc.c:6793 config/sparc/sparc.c:6799
#, fuzzy, c-format
msgid "invalid %%Y operand"
msgstr "̵¸ú¤Ê %%Y ¥ª¥Ú¥é¥ó¥É"
-#: config/sparc/sparc.c:6417
+#: config/sparc/sparc.c:6869
#, fuzzy, c-format
msgid "invalid %%A operand"
msgstr "̵¸ú¤Ê %%A ¥ª¥Ú¥é¥ó¥É"
-#: config/sparc/sparc.c:6427
+#: config/sparc/sparc.c:6879
#, fuzzy, c-format
msgid "invalid %%B operand"
msgstr "̵¸ú¤Ê %%B ¥ª¥Ú¥é¥ó¥É"
-#: config/sparc/sparc.c:6466
+#: config/sparc/sparc.c:6918
#, fuzzy, c-format
msgid "invalid %%c operand"
msgstr "̵¸ú¤Ê %%c ¥ª¥Ú¥é¥ó¥É"
-#: config/sparc/sparc.c:6467
+#: config/sparc/sparc.c:6919
#, fuzzy, c-format
msgid "invalid %%C operand"
msgstr "̵¸ú¤Ê %%C ¥ª¥Ú¥é¥ó¥É"
-#: config/sparc/sparc.c:6488
+#: config/sparc/sparc.c:6940
#, fuzzy, c-format
msgid "invalid %%d operand"
msgstr "̵¸ú¤Ê %%d ¥ª¥Ú¥é¥ó¥É"
-#: config/sparc/sparc.c:6489
+#: config/sparc/sparc.c:6941
#, fuzzy, c-format
msgid "invalid %%D operand"
msgstr "̵¸ú¤Ê %%D ¥ª¥Ú¥é¥ó¥É"
-#: config/sparc/sparc.c:6505
+#: config/sparc/sparc.c:6957
#, fuzzy, c-format
msgid "invalid %%f operand"
msgstr "̵¸ú¤Ê %%f ¥ª¥Ú¥é¥ó¥É"
-#: config/sparc/sparc.c:6519
+#: config/sparc/sparc.c:6971
#, fuzzy, c-format
msgid "invalid %%s operand"
msgstr "̵¸ú¤Ê %P ¥ª¥Ú¥é¥ó¥É¤Ç¤¹"
-#: config/sparc/sparc.c:6573
+#: config/sparc/sparc.c:7025
msgid "long long constant not a valid immediate operand"
msgstr "long long Äê¿ô¤ÏÀµ¾ï¤Ê¨ÃÍ¥ª¥Ú¥é¥ó¥É¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/sparc/sparc.c:6576
+#: config/sparc/sparc.c:7028
msgid "floating point constant not a valid immediate operand"
msgstr "ÉâÆ°¾®¿ôÄê¿ô¤ÏÀµ¾ï¤Ê¨ÃÍ¥ª¥Ú¥é¥ó¥É¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/sparc/freebsd.h:81 config/sparc/linux.h:87 config/sparc/linux64.h:89
-#: config/sparc/netbsd-elf.h:239
+#: config/sparc/freebsd.h:77 config/sparc/linux.h:92
+#: config/sparc/linux64.h:104 config/sparc/netbsd-elf.h:216
msgid "Use 128 bit long doubles"
msgstr "128 ¥Ó¥Ã¥È¤Î long double ¤ò»ÈÍѤ¹¤ë"
-#: config/sparc/sp64-elf.h:84 config/sparc/splet.h:29
+#: config/sparc/sp64-elf.h:90
msgid "Generate code for big endian"
msgstr "¥Ó¥Ã¥°¥¨¥ó¥Ç¥£¥¢¥óÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/sparc/sp64-elf.h:85 config/sparc/splet.h:30
+#: config/sparc/sp64-elf.h:91
msgid "Generate code for little endian"
msgstr "¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥óÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: config/sparc/sp86x-aout.h:51 config/sparc/sp86x-elf.h:65
+#: config/sparc/sp86x-elf.h:68
msgid "Use little-endian byte order for data"
msgstr "¥Ç¡¼¥¿¤Î¥Ð¥¤¥È½ç¤Ë¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó¤ò»ÈÍѤ¹¤ë"
-#: config/sparc/sparc.h:532
+#: config/sparc/sparc.h:547
msgid "Assume possible double misalignment"
msgstr "double ¤¬¸í¤Ã¤¿¥¢¥é¥¤¥ó¥á¥ó¥È¤È¤Ê¤ë²ÄǽÀ­¤¬¤¢¤ë¤È¤ß¤Ê¤¹"
-#: config/sparc/sparc.h:534
+#: config/sparc/sparc.h:549
msgid "Assume all doubles are aligned"
msgstr "Á´¤Æ¤Î double ¤ò¥¢¥é¥¤¥ó¤µ¤ì¤¿¤â¤Î¤È¤ß¤Ê¤¹"
-#: config/sparc/sparc.h:536
+#: config/sparc/sparc.h:551
msgid "Pass -assert pure-text to linker"
msgstr "¥ê¥ó¥«¤Ë -assert pure-text ¤òÅϤ¹"
-#: config/sparc/sparc.h:538
+#: config/sparc/sparc.h:553
msgid "Do not pass -assert pure-text to linker"
msgstr "¥ê¥ó¥«¤Ë -assert pure-text ¤òÅϤµ¤Ê¤¤"
-#: config/sparc/sparc.h:540
+#: config/sparc/sparc.h:555
msgid "Use flat register window model"
msgstr "¥Õ¥é¥Ã¥È¥ì¥¸¥¹¥¿¥¦¥£¥ó¥É¥¦¥â¥Ç¥ë¤ò»ÈÍѤ¹¤ë"
-#: config/sparc/sparc.h:542
+#: config/sparc/sparc.h:557
msgid "Do not use flat register window model"
msgstr "¥Õ¥é¥Ã¥È¥ì¥¸¥¹¥¿¥¦¥£¥ó¥É¥¦¥â¥Ç¥ë¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/sparc/sparc.h:544
+#: config/sparc/sparc.h:559
msgid "Use ABI reserved registers"
msgstr "ABI ͽÌó¥ì¥¸¥¹¥¿¤ò»ÈÍѤ¹¤ë"
-#: config/sparc/sparc.h:546
+#: config/sparc/sparc.h:561
msgid "Do not use ABI reserved registers"
msgstr "ABI ͽÌó¥ì¥¸¥¹¥¿¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/sparc/sparc.h:548
+#: config/sparc/sparc.h:563
msgid "Use hardware quad fp instructions"
msgstr "»ÍÇÜÀºÅÙÉâÆ°¾®¿ôÅÀÌ¿Îá¤ò»ÈÍѤ¹¤ë"
-#: config/sparc/sparc.h:550
+#: config/sparc/sparc.h:565
msgid "Do not use hardware quad fp instructions"
msgstr "»ÍÇÜÀºÅÙÉâÆ°¾®¿ôÅÀÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/sparc/sparc.h:552
+#: config/sparc/sparc.h:567
msgid "Compile for v8plus ABI"
msgstr "v8plus ABI ÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
-#: config/sparc/sparc.h:554
+#: config/sparc/sparc.h:569
msgid "Do not compile for v8plus ABI"
msgstr "v8plus ABI ÍѤ˥³¥ó¥Ñ¥¤¥ë¤·¤Ê¤¤"
-#: config/sparc/sparc.h:556
+#: config/sparc/sparc.h:571
msgid "Utilize Visual Instruction Set"
msgstr "Visual Ì¿Î᥻¥Ã¥È¤òÍøÍѤ¹¤ë"
-#: config/sparc/sparc.h:558
+#: config/sparc/sparc.h:573
msgid "Do not utilize Visual Instruction Set"
msgstr "Visual Ì¿Î᥻¥Ã¥È¤òÍøÍѤ·¤Ê¤¤"
#. ??? These are deprecated, coerced to -mcpu=. Delete in 2.9.
-#: config/sparc/sparc.h:561
+#: config/sparc/sparc.h:576
msgid "Optimize for Cypress processors"
msgstr "Cypress ¥×¥í¥»¥Ã¥µÍѤ˺ÇŬ²½¤¹¤ë"
-#: config/sparc/sparc.h:563
+#: config/sparc/sparc.h:578
#, fuzzy
msgid "Optimize for SPARCLite processors"
msgstr "SparcLite ¥×¥í¥»¥Ã¥µÍѤ˺ÇŬ²½¤¹¤ë"
-#: config/sparc/sparc.h:565
+#: config/sparc/sparc.h:580
msgid "Optimize for F930 processors"
msgstr "F930 ¥×¥í¥»¥Ã¥µÍѤ˺ÇŬ²½¤¹¤ë"
-#: config/sparc/sparc.h:567
+#: config/sparc/sparc.h:582
msgid "Optimize for F934 processors"
msgstr "F934 ¥×¥í¥»¥Ã¥µÍѤ˺ÇŬ²½¤¹¤ë"
-#: config/sparc/sparc.h:569
+#: config/sparc/sparc.h:584
#, fuzzy
msgid "Use V8 SPARC ISA"
msgstr "V8 Sparc ISA ¤ò»ÈÍѤ¹¤ë"
-#: config/sparc/sparc.h:571
+#: config/sparc/sparc.h:586
#, fuzzy
msgid "Optimize for SuperSPARC processors"
msgstr "SuperSparc ¥×¥í¥»¥Ã¥µÍѤ˺ÇŬ²½¤¹¤ë"
#. End of deprecated options.
-#: config/sparc/sparc.h:574
+#: config/sparc/sparc.h:589
msgid "Pointers are 64-bit"
msgstr "¥Ý¥¤¥ó¥¿¤ò 64 ¥Ó¥Ã¥È¤È¤¹¤ë"
-#: config/sparc/sparc.h:576
+#: config/sparc/sparc.h:591
msgid "Pointers are 32-bit"
msgstr "¥Ý¥¤¥ó¥¿¤ò 32 ¥Ó¥Ã¥È¤È¤¹¤ë"
-#: config/sparc/sparc.h:578
+#: config/sparc/sparc.h:593
msgid "Use 32-bit ABI"
msgstr "32 ¥Ó¥Ã¥È ABI ¤ò»ÈÍѤ¹¤ë"
-#: config/sparc/sparc.h:580
+#: config/sparc/sparc.h:595
msgid "Use 64-bit ABI"
msgstr "64 ¥Ó¥Ã¥È ABI ¤ò»ÈÍѤ¹¤ë"
-#: config/sparc/sparc.h:582
+#: config/sparc/sparc.h:597
msgid "Use stack bias"
msgstr "¥¹¥¿¥Ã¥¯¥Ð¥¤¥¢¥¹¤ò»ÈÍѤ¹¤ë"
-#: config/sparc/sparc.h:584
+#: config/sparc/sparc.h:599
msgid "Do not use stack bias"
msgstr "¥¹¥¿¥Ã¥¯¥Ð¥¤¥¢¥¹¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/sparc/sparc.h:586
+#: config/sparc/sparc.h:601
msgid "Use structs on stronger alignment for double-word copies"
msgstr "¥À¥Ö¥ë¥ï¡¼¥É¥³¥Ô¡¼ÍѤζ¯¤¯¥¢¥é¥¤¥ó¤µ¤ì¤¿¹½Â¤ÂΤò»ÈÍѤ¹¤ë"
-#: config/sparc/sparc.h:588
+#: config/sparc/sparc.h:603
msgid "Do not use structs on stronger alignment for double-word copies"
msgstr "¥À¥Ö¥ë¥ï¡¼¥É¥³¥Ô¡¼ÍѤζ¯¤¯¥¢¥é¥¤¥ó¤µ¤ì¤¿¹½Â¤ÂΤò»ÈÍѤ·¤Ê¤¤"
-#: config/sparc/sparc.h:590
+#: config/sparc/sparc.h:605
msgid "Optimize tail call instructions in assembler and linker"
msgstr "¥¢¥»¥ó¥Ö¥é¤È¥ê¥ó¥«¤ÇËöÈø¸Æ¤Ó½Ð¤·Ì¿Îá¤òºÇŬ²½¤¹¤ë"
-#: config/sparc/sparc.h:592
+#: config/sparc/sparc.h:607
msgid "Do not optimize tail call instructions in assembler or linker"
msgstr "¥¢¥»¥ó¥Ö¥é¤È¥ê¥ó¥«¤ÇËöÈø¸Æ¤Ó½Ð¤·Ì¿Îá¤òºÇŬ²½¤·¤Ê¤¤"
-#: config/sparc/sparc.h:637
+#: config/sparc/sparc.h:652
#, fuzzy
msgid "Use given SPARC code model"
msgstr "Í¿¤¨¤é¤ì¤¿ Sparc ¥³¡¼¥É¥â¥Ç¥ë¤ò»ÈÍѤ¹¤ë"
-#: config/stormy16/stormy16.c:1192
+#: config/stormy16/stormy16.c:526
+msgid "Constant halfword load operand out of range."
+msgstr ""
+
+#: config/stormy16/stormy16.c:536
+msgid "Constant arithmetic operand out of range."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1027
+msgid "Local variable memory requirements exceed capacity."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1193
+msgid "function_profiler support"
+msgstr ""
+
+#: config/stormy16/stormy16.c:1292
#, fuzzy
msgid "cannot use va_start in interrupt function"
msgstr "¾¤Î´Ø¿ôÆâ¤Ç static ´Ø¿ô¤òÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: config/stormy16/stormy16.c:1552
+#: config/stormy16/stormy16.c:1624
#, fuzzy
msgid "`B' operand is not constant"
msgstr "½ÐÎÏ¥ª¥Ú¥é¥ó¥É¤¬ `asm' Æâ¤ÇÄê¿ô¤Ç¤¹"
-#: config/stormy16/stormy16.c:1558
+#: config/stormy16/stormy16.c:1630
msgid "`B' operand has multiple bits set"
msgstr ""
-#: config/stormy16/stormy16.c:1585
+#: config/stormy16/stormy16.c:1656
#, fuzzy
msgid "`o' operand is not constant"
msgstr "½ÐÎÏ¥ª¥Ú¥é¥ó¥É¤¬ `asm' Æâ¤ÇÄê¿ô¤Ç¤¹"
-#: config/stormy16/stormy16.c:1600
+#: config/stormy16/stormy16.c:1670
#, fuzzy
msgid "xstormy16_print_operand: unknown code"
msgstr "ia64_print_operand: ÉÔÌÀ¤Ê¥³¡¼¥É¤Ç¤¹"
-#: config/stormy16/stormy16.c:1650
+#: config/stormy16/stormy16.c:1716
#, fuzzy, c-format
msgid "switch statement of size %lu entries too large"
msgstr "ÊÑ¿ô `%s' ¤Î¥µ¥¤¥º¤¬Â礭¤¹¤®¤Þ¤¹"
@@ -13716,105 +13141,106 @@ msgstr "interrupt °À­¤òÀßÄê¤Ç¤­¤Þ¤»¤ó: ¸½ºß¤Î´Ø¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
msgid "cannot set interrupt attribute: no such identifier"
msgstr "interrupt °À­¤òÀßÄê¤Ç¤­¤Þ¤»¤ó: ¤½¤ÎÍͤʼ±Ê̻Ҥ¬¤¢¤ê¤Þ¤»¤ó"
-#: config/v850/v850-c.c:148
+#: config/v850/v850-c.c:147
msgid "junk at end of #pragma ghs section"
msgstr "#pragma ghs section ¤Î½ª¤ê¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: config/v850/v850-c.c:165
+#: config/v850/v850-c.c:164
#, fuzzy, c-format
msgid "unrecognized section name \"%s\""
msgstr "ǧ¼±¤Ç¤­¤Ê¤¤¥»¥¯¥·¥ç¥ó̾ \"%s\""
-#: config/v850/v850-c.c:180
+#: config/v850/v850-c.c:179
msgid "malformed #pragma ghs section"
msgstr "¤ª¤«¤·¤Ê #pragma ghs section"
-#: config/v850/v850-c.c:200
+#: config/v850/v850-c.c:198
msgid "junk at end of #pragma ghs interrupt"
msgstr "#pragma ghs interrupt ¤Î½ª¤ê¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: config/v850/v850-c.c:212
+#: config/v850/v850-c.c:209
msgid "junk at end of #pragma ghs starttda"
msgstr "#pragma ghs starttda ¤Î½ª¤ê¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: config/v850/v850-c.c:224
+#: config/v850/v850-c.c:220
msgid "junk at end of #pragma ghs startsda"
msgstr "#pragma ghs startsda ¤Î½ª¤ê¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: config/v850/v850-c.c:236
+#: config/v850/v850-c.c:231
msgid "junk at end of #pragma ghs startzda"
msgstr "#pragma ghs startzda ¤Î½ª¤ê¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: config/v850/v850-c.c:248
+#: config/v850/v850-c.c:242
msgid "junk at end of #pragma ghs endtda"
msgstr "#pragma ghs endtda ¤Î½ª¤ê¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: config/v850/v850-c.c:260
+#: config/v850/v850-c.c:253
msgid "junk at end of #pragma ghs endsda"
msgstr "#pragma ghs endsda ¤Î½ª¤ê¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: config/v850/v850-c.c:272
+#: config/v850/v850-c.c:264
msgid "junk at end of #pragma ghs endzda"
msgstr "#pragma ghs ¤Î½ª¤ê¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: config/v850/v850.c:129
+#: config/v850/v850.c:142
#, fuzzy, c-format
msgid "%s=%s is not numeric"
msgstr "%s=%s ¤Ï¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó"
-#: config/v850/v850.c:136
+#: config/v850/v850.c:149
#, fuzzy, c-format
msgid "%s=%s is too large"
msgstr "%s=%s ¤ÏÂ礭¤¹¤®¤Þ¤¹¡£"
-#: config/v850/v850.c:302
+#: config/v850/v850.c:301
msgid "const_double_split got a bad insn:"
msgstr ""
-#: config/v850/v850.c:837
+#: config/v850/v850.c:866
msgid "output_move_single:"
msgstr ""
-#: config/v850/v850.c:2217
-msgid "a data area attribute cannot be specified for local variables"
+#: config/v850/v850.c:2209
+#, fuzzy
+msgid "%Jdata area attributes cannot be specified for local variables"
msgstr "¥Ç¡¼¥¿Îΰè°À­¤ò¥í¡¼¥«¥ëÊÑ¿ô¤Ë¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó"
-#: config/v850/v850.c:2228
-#, c-format
-msgid "data area of '%s' conflicts with previous declaration"
+#: config/v850/v850.c:2220
+#, fuzzy
+msgid "%Jdata area of '%D' conflicts with previous declaration"
msgstr "¥Ç¡¼¥¿Îΰè '%s' ¤ÏÁ°¤ÎÀë¸À¤ÈÌ·½â¤·¤Þ¤¹"
-#: config/v850/v850.c:2447
+#: config/v850/v850.c:2419
#, fuzzy, c-format
msgid "bogus JR construction: %d\n"
msgstr "¸íËâ²½¤µ¤ì¤¿ JR ¹½Â¤: %d\n"
-#: config/v850/v850.c:2468 config/v850/v850.c:2670
+#: config/v850/v850.c:2440 config/v850/v850.c:2643
#, fuzzy, c-format
msgid "bad amount of stack space removal: %d"
msgstr "¥¹¥¿¥Ã¥¯¶õ´Öºï½üÎ̤¬ÉÔÀµ¤Ç¤¹: %d"
-#: config/v850/v850.c:2646
+#: config/v850/v850.c:2619
#, fuzzy, c-format
msgid "bogus JARL construction: %d\n"
msgstr "¸íËâ²½¤µ¤ì¤¿ JARL ¹½Â¤: %d\n"
-#: config/v850/v850.c:3026
+#: config/v850/v850.c:2989
#, fuzzy, c-format
msgid "Bogus DISPOSE construction: %d\n"
msgstr "¸íËâ²½¤µ¤ì¤¿ JR ¹½Â¤: %d\n"
-#: config/v850/v850.c:3048
+#: config/v850/v850.c:3011
#, c-format
msgid "Too much stack space to dispose of: %d"
msgstr ""
-#: config/v850/v850.c:3224
+#: config/v850/v850.c:3184
#, fuzzy, c-format
msgid "Bogus PREPEARE construction: %d\n"
msgstr "¸íËâ²½¤µ¤ì¤¿ JARL ¹½Â¤: %d\n"
-#: config/v850/v850.c:3246
+#: config/v850/v850.c:3206
#, fuzzy, c-format
msgid "Too much stack space to prepare: %d"
msgstr "¥¹¥¿¥Ã¥¯¶õ´Öºï½üÎ̤¬ÉÔÀµ¤Ç¤¹: %d"
@@ -13824,862 +13250,792 @@ msgstr "¥¹¥¿¥Ã¥¯¶õ´Öºï½üÎ̤¬ÉÔÀµ¤Ç¤¹: %d"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/v850/v850.h:158
+#: config/v850/v850.h:174
msgid "Support Green Hills ABI"
msgstr "Green Hill ¤Î ABI ¤ò¥µ¥Ý¡¼¥È¤¹¤ë"
-#: config/v850/v850.h:161
+#: config/v850/v850.h:177
msgid "Prohibit PC relative function calls"
msgstr "PC ´ØÏ¢¤Î´Ø¿ô¸Æ¤Ó½Ð¤·¤ò¶Ø¤¸¤ë"
-#: config/v850/v850.h:164
+#: config/v850/v850.h:180
msgid "Reuse r30 on a per function basis"
msgstr "´Ø¿ô¤Î¼çÍ×ÉôʬËè¤Ë r30 ¤òºÆÍøÍѤ¹¤ë"
-#: config/v850/v850.h:167
+#: config/v850/v850.h:183
msgid "Use stubs for function prologues"
msgstr "´Ø¿ô³«»ÏÉôʬÍѤΥ¹¥¿¥Ö¤ò»ÈÍѤ¹¤ë"
-#: config/v850/v850.h:170
+#: config/v850/v850.h:186
msgid "Same as: -mep -mprolog-function"
msgstr "-mep -mprolog-function ¤ÈƱÍÍ"
-#: config/v850/v850.h:171
+#: config/v850/v850.h:187
msgid "Enable backend debugging"
msgstr "¥Ð¥Ã¥¯¥¨¥ó¥É¥Ç¥Ð¥Ã¥°¤òÍ­¸ú¤Ë¤¹¤ë"
-#: config/v850/v850.h:173
+#: config/v850/v850.h:189
msgid "Compile for the v850 processor"
msgstr "v850 ¥×¥í¥»¥Ã¥µÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
-#: config/v850/v850.h:175
+#: config/v850/v850.h:191
+#, fuzzy
+msgid "Compile for v850e1 processor"
+msgstr "v850 ¥×¥í¥»¥Ã¥µÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
+
+#. Make sure that the other bits are cleared.
+#: config/v850/v850.h:193
#, fuzzy
msgid "Compile for v850e processor"
msgstr "v850 ¥×¥í¥»¥Ã¥µÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
#. Make sure that the other bits are cleared.
-#: config/v850/v850.h:177
+#: config/v850/v850.h:195
#, fuzzy
msgid "Enable the use of the short load instructions"
msgstr "DB Ì¿Îá¤Î»ÈÍѤòÍ­¸ú¤Ë¤¹¤ë"
-#: config/v850/v850.h:180
+#: config/v850/v850.h:198
#, fuzzy
msgid "Do not use the callt instruction"
msgstr "ʬ³äÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/v850/v850.h:187
+#: config/v850/v850.h:205
#, fuzzy
msgid "Do not use registers r2 and r5"
msgstr "sb ¥ì¥¸¥¹¥¿¤ò»ÈÍѤ·¤Ê¤¤"
-#: config/v850/v850.h:189
+#: config/v850/v850.h:207
msgid "Enforce strict alignment"
msgstr ""
-#: config/v850/v850.h:192
+#: config/v850/v850.h:210
msgid "Use 4 byte entries in switch tables"
msgstr "switch ¥Æ¡¼¥Ö¥ë¤Ç 4 ¥Ð¥¤¥È¥¨¥ó¥È¥ê¤ò»ÈÍѤ¹¤ë"
-#: config/v850/v850.h:218
+#: config/v850/v850.h:236
msgid "Set the max size of data eligible for the TDA area"
msgstr "TDA Îΰè¤Ë¤È¤Ã¤Æ˾¤Þ¤·¤¤ºÇÂç¥Ç¡¼¥¿¥µ¥¤¥º¤òÀßÄꤹ¤ë"
-#: config/v850/v850.h:221
+#: config/v850/v850.h:239
msgid "Set the max size of data eligible for the SDA area"
msgstr "SDA Îΰè¤Ë¤È¤Ã¤Æ˾¤Þ¤·¤¤ºÇÂç¥Ç¡¼¥¿¥µ¥¤¥º¤òÀßÄꤹ¤ë"
-#: config/v850/v850.h:224
+#: config/v850/v850.h:242
msgid "Set the max size of data eligible for the ZDA area"
msgstr "ZDA Îΰè¤Ë¤È¤Ã¤Æ˾¤Þ¤·¤¤ºÇÂç¥Ç¡¼¥¿¥µ¥¤¥º¤òÀßÄꤹ¤ë"
-#: config/xtensa/xtensa.c:1062 config/xtensa/xtensa.c:1096
-#: config/xtensa/xtensa.c:1105
-msgid "bad test"
+#: config/xtensa/xtensa.c:1814
+msgid "boolean registers required for the floating-point option"
msgstr ""
-#: config/xtensa/xtensa.c:1824
-msgid "boolean registers required for the floating-point option"
+#: config/xtensa/xtensa.c:1868
+#, fuzzy, c-format
+msgid "-f%s is not supported with CONST16 instructions"
+msgstr "%s ¤Ï¤³¤Î¥³¥ó¥Õ¥£¥®¥å¥ì¡¼¥·¥ç¥ó¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
+
+#: config/xtensa/xtensa.c:1873
+msgid "PIC is required but not supported with CONST16 instructions"
msgstr ""
-#: config/xtensa/xtensa.c:1991
+#: config/xtensa/xtensa.c:1943
+#, fuzzy, c-format
+msgid "invalid %%D value"
+msgstr "̵¸ú¤Ê %D ÃͤǤ¹"
+
+#: config/xtensa/xtensa.c:1980
#, fuzzy
msgid "invalid mask"
msgstr "̵¸ú¤Ê #pragma %s ¤Ç¤¹"
-#: config/xtensa/xtensa.c:2038
+#: config/xtensa/xtensa.c:2006
+#, fuzzy, c-format
+msgid "invalid %%x value"
+msgstr "̵¸ú¤Ê %%W ÃͤǤ¹"
+
+#: config/xtensa/xtensa.c:2013
+#, fuzzy, c-format
+msgid "invalid %%d value"
+msgstr "̵¸ú¤Ê %%W ÃͤǤ¹"
+
+#: config/xtensa/xtensa.c:2034 config/xtensa/xtensa.c:2044
+#, fuzzy, c-format
+msgid "invalid %%t/%%b value"
+msgstr "̵¸ú¤Ê %%b ÃÍ"
+
+#: config/xtensa/xtensa.c:2086
#, fuzzy
msgid "invalid address"
msgstr "̵¸ú¤Ê¥³¡¼¥É¤Ç¤¹"
-#: config/xtensa/xtensa.c:2063
+#: config/xtensa/xtensa.c:2111
#, fuzzy
msgid "no register in address"
msgstr "ÉÔÌÀ¤Ê¥ì¥¸¥¹¥¿Ì¾¤Ç¤¹: %s"
-#: config/xtensa/xtensa.c:2071
+#: config/xtensa/xtensa.c:2119
#, fuzzy
msgid "address offset not a constant"
msgstr "Í׵ᤵ¤ì¤¿¥¢¥é¥¤¥ó¥á¥ó¥È¤¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: config/xtensa/xtensa.c:2794
+#: config/xtensa/xtensa.c:2802
#, fuzzy
msgid "only uninitialized variables can be placed in a .bss section"
msgstr "8 ¥Ó¥Ã¥ÈÎΰèÆâ¤ËÇÛÃ֤Ǥ­¤ëÊÑ¿ô¤À¤±¤¬½é´ü²½¤µ¤ì¤Þ¤·¤¿"
-#: config/xtensa/xtensa.h:114
-msgid "Use the Xtensa code density option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:116
+#: config/xtensa/xtensa.h:79
#, fuzzy
-msgid "Do not use the Xtensa code density option"
-msgstr "ʬ³äÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-
-#: config/xtensa/xtensa.h:118
-msgid "Use the Xtensa MAC16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:120
-#, fuzzy
-msgid "Do not use the Xtensa MAC16 option"
-msgstr "ʬ³äÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-
-#: config/xtensa/xtensa.h:122
-msgid "Use the Xtensa MUL16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:124
-#, fuzzy
-msgid "Do not use the Xtensa MUL16 option"
-msgstr "ʬ³äÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-
-#: config/xtensa/xtensa.h:126
-msgid "Use the Xtensa MUL32 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:128
-#, fuzzy
-msgid "Do not use the Xtensa MUL32 option"
-msgstr "ʬ³äÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:134
-msgid "Use the Xtensa NSA option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:136
-#, fuzzy
-msgid "Do not use the Xtensa NSA option"
-msgstr "ʬ³äÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-
-#: config/xtensa/xtensa.h:138
-msgid "Use the Xtensa MIN/MAX option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:140
-#, fuzzy
-msgid "Do not use the Xtensa MIN/MAX option"
-msgstr "ʬ³äÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-
-#: config/xtensa/xtensa.h:142
-msgid "Use the Xtensa SEXT option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:144
-#, fuzzy
-msgid "Do not use the Xtensa SEXT option"
-msgstr "ʬ³äÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
+msgid "Use CONST16 instruction to load constants"
+msgstr "½ÐÎϤ¹¤ë°ú¿ô¤ò¥»¡¼¥Ö¤¹¤ë¤¿¤á push Ì¿Îá¤ò»È¤¦"
-#: config/xtensa/xtensa.h:146
-msgid "Use the Xtensa boolean register option"
+#: config/xtensa/xtensa.h:81
+msgid "Use PC-relative L32R instruction to load constants"
msgstr ""
-#: config/xtensa/xtensa.h:148
-#, fuzzy
-msgid "Do not use the Xtensa boolean register option"
-msgstr "ʬ³äÌ¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
-
-#: config/xtensa/xtensa.h:150
-#, fuzzy
-msgid "Use the Xtensa floating-point unit"
-msgstr "¥Ï¡¼¥É¥¦¥§¥¢ÉâÆ°¾®¿ôÅÀ¤òÍøÍѤ¹¤ë"
-
-#: config/xtensa/xtensa.h:152
-#, fuzzy
-msgid "Do not use the Xtensa floating-point unit"
-msgstr "¥Ï¡¼¥É¥¦¥§¥¢ÉâÆ°¾®¿ôÅÀ¤òÍøÍѤ·¤Ê¤¤"
-
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:170
+#: config/xtensa/xtensa.h:83
#, fuzzy
msgid "Disable fused multiply/add and multiply/subtract FP instructions"
msgstr "ÉâÆ°¾®¿ô¤Î¾è»»/²Ã»»Ì¿Îá¤òÀ¸À®¤¹¤ë"
-#: config/xtensa/xtensa.h:172
+#: config/xtensa/xtensa.h:85
#, fuzzy
msgid "Enable fused multiply/add and multiply/subtract FP instructions"
msgstr "ÉâÆ°¾®¿ô¤Î¾è»»/²Ã»»Ì¿Îá¤òÀ¸À®¤¹¤ë"
-#: config/xtensa/xtensa.h:174
-msgid "Serialize volatile memory references with MEMW instructions"
-msgstr ""
-
-#: config/xtensa/xtensa.h:176
-#, fuzzy
-msgid "Do not serialize volatile memory references with MEMW instructions"
-msgstr "update Ì¿Îá¤È°ì½ï¤Ë¥í¡¼¥É/¥¹¥È¥¢Ì¿Îá¤òÀ¸À®¤·¤Ê¤¤"
-
-#: config/xtensa/xtensa.h:178
+#: config/xtensa/xtensa.h:87
msgid "Intersperse literal pools with code in the text section"
msgstr ""
-#: config/xtensa/xtensa.h:180
+#: config/xtensa/xtensa.h:89
msgid "Put literal pools in a separate literal section"
msgstr ""
-#: config/xtensa/xtensa.h:182
+#: config/xtensa/xtensa.h:91
msgid "Automatically align branch targets to reduce branch penalties"
msgstr ""
-#: config/xtensa/xtensa.h:184
+#: config/xtensa/xtensa.h:93
msgid "Do not automatically align branch targets"
msgstr ""
-#: config/xtensa/xtensa.h:186
+#: config/xtensa/xtensa.h:95
msgid "Use indirect CALLXn instructions for large programs"
msgstr ""
-#: config/xtensa/xtensa.h:188
+#: config/xtensa/xtensa.h:97
#, fuzzy
msgid "Use direct CALLn instructions for fast calls"
msgstr "ÁȤ߹þ¤ß¤Î½ü»»Ì¿Îá¤ò»ÈÍѤ¹¤ë"
-#: ada/misc.c:233
-msgid "`-gnat' misspelled as `-gant'"
-msgstr ""
-
-#: cp/call.c:261 cp/init.c:1594
-msgid "qualified type `%T' does not match destructor name `~%T'"
-msgstr ""
-
-#: cp/call.c:270
-msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
-msgstr ""
-
-#: cp/call.c:279
-msgid "`%D' is a namespace"
-msgstr ""
+#: ada/misc.c:240
+#, fuzzy, c-format
+msgid "missing argument to \"-%s\""
+msgstr "`%s' ¥ª¥×¥·¥ç¥ó¤ËÂФ¹¤ë°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: cp/call.c:287
-msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
+#: ada/misc.c:281
+msgid "`-gnat' misspelled as `-gant'"
msgstr ""
-#: cp/call.c:369
+#: cp/call.c:217
msgid "unable to call pointer to member function here"
msgstr "¤³¤³¤Ç¤Ï¥á¥ó¥Ð´Ø¿ô¥Ý¥¤¥ó¥¿¸Æ¤Ó½Ð¤·¤¬¤Ç¤­¤Þ¤»¤ó"
-#: cp/call.c:518
-msgid "destructors take no parameters"
-msgstr "¥Ç¥¹¥È¥é¥¯¥¿¤Ï²¾°ú¿ô¤ò¼è¤ê¤Þ¤»¤ó"
-
-#: cp/call.c:522
-msgid "destructor name `~%T' does not match type `%T' of expression"
-msgstr ""
-
-#: cp/call.c:543 cp/call.c:5000
-msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
-msgstr ""
-
-#: cp/call.c:567
-#, fuzzy
-msgid "request for member `%D' is ambiguous"
-msgstr "Í׵ᤵ¤ì¤¿¥á¥ó¥Ð `%s' ¤Ï¿½Å·Ñ¾µ¥°¥é¥Õ¤ÎÃæ¤ÇÛ£Ëæ¤Ç¤¹"
-
-#: cp/call.c:2537
+#: cp/call.c:2228
msgid "%s %D(%T, %T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2542
+#: cp/call.c:2233
msgid "%s %D(%T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2546
+#: cp/call.c:2237
#, fuzzy
msgid "%s %D(%T) <built-in>"
msgstr "<ÁȤ߹þ¤ß>"
-#: cp/call.c:2550
+#: cp/call.c:2241
msgid "%s %T <conversion>"
msgstr ""
-#: cp/call.c:2552
-#, fuzzy
-msgid "%s %+#D%s"
-msgstr "%s: %s"
-
-#: cp/call.c:2726
-#, fuzzy
-msgid "conversion from `%T' to `%T' is ambiguous"
-msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤Ï¤¢¤¤¤Þ¤¤¤Ç¤¹\n"
+#: cp/call.c:2243
+msgid "%J%s %+#D <near match>"
+msgstr ""
-#: cp/call.c:2803
-#, fuzzy
-msgid "`%T' is not a class type"
-msgstr "`%s' ¤Ï¤½¤Î·¿¤ÎÃͤè¤ê¤â¶¹¤¤¤Ç¤¹"
+#: cp/call.c:2245
+msgid "%J%s %+#D"
+msgstr ""
-#: cp/call.c:2811
-msgid "incomplete type '%T' cannot be used to name a scope"
+#: cp/call.c:2280
+msgid "candidates are:"
msgstr ""
-#: cp/call.c:2831 cp/typeck.c:2188 cp/typeck.c:2217
+#: cp/call.c:2468
#, fuzzy
-msgid "'%D' has no member named '%E'"
-msgstr "%s ¤Ë `%s' ¤È¤¤¤¦Ì¾Á°¤Î¥á¥ó¥Ð¤Ï¤¢¤ê¤Þ¤»¤ó"
+msgid "conversion from `%T' to `%T' is ambiguous"
+msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤Ï¤¢¤¤¤Þ¤¤¤Ç¤¹\n"
-#: cp/call.c:2933
+#: cp/call.c:2619 cp/call.c:2663
msgid "no matching function for call to `%D(%A)'"
msgstr ""
-#: cp/call.c:2944 cp/call.c:5087
+#: cp/call.c:2622 cp/call.c:2666
msgid "call of overloaded `%D(%A)' is ambiguous"
msgstr ""
#. It's no good looking for an overloaded operator() on a
#. pointer-to-member-function.
-#: cp/call.c:2971
+#: cp/call.c:2732
#, c-format
msgid "pointer-to-member function %E cannot be called without an object; consider using .* or ->*"
msgstr ""
-#: cp/call.c:3036
+#: cp/call.c:2798
msgid "no match for call to `(%T) (%A)'"
msgstr ""
-#: cp/call.c:3046
+#: cp/call.c:2806
#, fuzzy
msgid "call of `(%T) (%A)' is ambiguous"
msgstr "%s: ¥ª¥×¥·¥ç¥ó `-W %s' ¤Ï¤¢¤¤¤Þ¤¤¤Ç¤¹\n"
-#: cp/call.c:3081
+#: cp/call.c:2839
#, c-format
msgid "%s for ternary 'operator?:' in '%E ? %E : %E'"
msgstr ""
-#: cp/call.c:3087
+#: cp/call.c:2845
#, c-format
msgid "%s for 'operator%s' in '%E%s'"
msgstr ""
-#: cp/call.c:3091
+#: cp/call.c:2849
#, c-format
msgid "%s for 'operator[]' in '%E[%E]'"
msgstr ""
-#: cp/call.c:3096
+#: cp/call.c:2854
+#, fuzzy, c-format
+msgid "%s for '%s' in '%s %E'"
+msgstr "¥Õ¥£¡¼¥ë¥É '%s'('%s' Æâ) ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+
+#: cp/call.c:2859
#, c-format
msgid "%s for 'operator%s' in '%E %s %E'"
msgstr ""
-#: cp/call.c:3099
+#: cp/call.c:2862
#, c-format
msgid "%s for 'operator%s' in '%s%E'"
msgstr ""
-#: cp/call.c:3191
+#: cp/call.c:2957
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
msgstr "ISO C++ ¤ÏÃæ´Ö¹à¤¬¾Êά¤µ¤ì¤¿ ?: ¼°¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/call.c:3250
+#: cp/call.c:3018
#, c-format
msgid "`%E' has type `void' and is not a throw-expression"
msgstr ""
-#: cp/call.c:3283 cp/call.c:3475
+#: cp/call.c:3051 cp/call.c:3242
msgid "operands to ?: have different types"
msgstr ""
-#: cp/call.c:3428
+#: cp/call.c:3196
#, fuzzy
msgid "enumeral mismatch in conditional expression: `%T' vs `%T'"
msgstr "¾ò·ï¼°¤Ç¤Î·¿¤ÎÁȹç¤ï¤»¤¬Å¬¹ç¤·¤Þ¤»¤ó"
-#: cp/call.c:3435
+#: cp/call.c:3203
#, fuzzy
msgid "enumeral and non-enumeral type in conditional expression"
msgstr "¾ò·ï¼°¤ËÉä¹çÉÕ¤­·¿¤ÈÉä¹ç̵¤··¿¤È¤¬¤¢¤ê¤Þ¤¹"
-#: cp/call.c:3516
-#, fuzzy
-msgid "`%D' must be declared before use"
-msgstr "`%s' ¤ÏÁ°¤Ë¤³¤³¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-
-#: cp/call.c:3706
+#: cp/call.c:3487
msgid "no `%D(int)' declared for postfix `%s', trying prefix operator instead"
msgstr ""
-#: cp/call.c:3753
+#: cp/call.c:3532
msgid "using synthesized `%#D' for copy assignment"
msgstr ""
-#: cp/call.c:3755
+#: cp/call.c:3534
msgid " where cfront would use `%#D'"
msgstr ""
-#: cp/call.c:3782
+#: cp/call.c:3557
#, fuzzy
msgid "comparison between `%#T' and `%#T'"
msgstr "Éä¹çÉÕ¤­¤ÈÉä¹ç̵¤·¤È¤ÎÈæ³Ó¤Ç¤¹"
-#: cp/call.c:4021
+#: cp/call.c:3803
#, fuzzy
-msgid "no suitable `operator delete' for `%T'"
+msgid "no suitable `operator %s' for `%T'"
msgstr "¤¢¤ê¤¨¤Ê¤¤±é»»»Ò '%s'"
-#: cp/call.c:4040
+#: cp/call.c:3820
msgid "`%+#D' is private"
msgstr ""
-#: cp/call.c:4042
+#: cp/call.c:3822
msgid "`%+#D' is protected"
msgstr ""
-#: cp/call.c:4044
+#: cp/call.c:3824
msgid "`%+#D' is inaccessible"
msgstr ""
-#: cp/call.c:4045
+#: cp/call.c:3825
msgid "within this context"
msgstr ""
-#: cp/call.c:4088
+#: cp/call.c:3895
#, fuzzy
msgid "invalid conversion from `%T' to `%T'"
msgstr "NaN ¤«¤éÀ°¿ô¤Ø¤ÎÊÑ´¹¤Ç¤¹"
-#: cp/call.c:4090 cp/call.c:4229 cp/call.c:4231
+#: cp/call.c:3897
#, fuzzy
msgid " initializing argument %P of `%D'"
msgstr "`%s' ¤Î°ú¿ô¤È¤·¤Æ̵¸ú¤Ê·¿"
-#: cp/call.c:4152 cp/call.c:4156
-msgid " initializing argument %P of `%D' from result of `%D'"
-msgstr ""
+#: cp/call.c:4050
+#, fuzzy
+msgid "cannot bind bitfield `%E' to `%T'"
+msgstr "%s: ¥Õ¥¡¥¤¥ë `%s' ¤ò `%s' ¤Ë¥ê¥ó¥¯¤Ç¤­¤Þ¤»¤ó: %s\n"
-#: cp/call.c:4162 cp/call.c:4165
-msgid " initializing temporary from result of `%D'"
-msgstr ""
+#: cp/call.c:4053
+#, fuzzy
+msgid "cannot bind packed field `%E' to `%T'"
+msgstr "%s: ¥Õ¥¡¥¤¥ë `%s' ¤ò `%s' ¤Ë¥ê¥ó¥¯¤Ç¤­¤Þ¤»¤ó: %s\n"
-#. Undefined behavior [expr.call] 5.2.2/7. We used to just warn
-#. here and do a bitwise copy, but now cp_expr_size will abort if we
-#. try to do that.
-#: cp/call.c:4316
+#: cp/call.c:4056
+#, fuzzy
+msgid "cannot bind rvalue `%E' to `%T'"
+msgstr "%s: ¥Õ¥¡¥¤¥ë `%s' ¤ò `%s' ¤Ë¥ê¥ó¥¯¤Ç¤­¤Þ¤»¤ó: %s\n"
+
+#: cp/call.c:4144
msgid "cannot pass objects of non-POD type `%#T' through `...'; call will abort at runtime"
msgstr ""
#. Undefined behavior [expr.call] 5.2.2/7.
-#: cp/call.c:4343
-msgid "cannot receive objects of non-POD type `%#T' through `...'"
+#: cp/call.c:4168
+msgid "cannot receive objects of non-POD type `%#T' through `...'; call will abort at runtime"
+msgstr ""
+
+#: cp/call.c:4208
+msgid "the default argument for parameter %d of `%D' has not yet been parsed"
msgstr ""
-#: cp/call.c:4523
+#: cp/call.c:4403
msgid "passing `%T' as `this' argument of `%#D' discards qualifiers"
msgstr ""
-#: cp/call.c:4542
+#: cp/call.c:4422
msgid "`%T' is not an accessible base of `%T'"
msgstr ""
-#: cp/call.c:4786
+#: cp/call.c:4696
#, fuzzy
msgid "could not find class$ field in java interface type `%T'"
msgstr "`%s' ¤Ø¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤Ë´ðÄ쥯¥é¥¹¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: cp/call.c:4974
+#: cp/call.c:4951
#, fuzzy
msgid "call to non-function `%D'"
msgstr "virtual ¤ÊÈ󥯥饹´Ø¿ô `%s'"
-#: cp/call.c:5076
-msgid "no matching function for call to `%T::%D(%A)%#V'"
+#: cp/call.c:4977
+msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
+msgstr ""
+
+#: cp/call.c:5055
+msgid "no matching function for call to `%T::%s(%A)%#V'"
msgstr ""
-#: cp/call.c:5106
+#: cp/call.c:5072
+#, fuzzy, c-format
+msgid "call of overloaded `%s(%A)' is ambiguous"
+msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤Ï¤¢¤¤¤Þ¤¤¤Ç¤¹\n"
+
+#: cp/call.c:5093
msgid "cannot call member function `%D' without object"
msgstr ""
-#: cp/call.c:5704
+#: cp/call.c:5678
msgid "passing `%T' chooses `%T' over `%T'"
msgstr ""
-#: cp/call.c:5706 cp/decl2.c:4154
+#: cp/call.c:5680 cp/name-lookup.c:4057
#, fuzzy
msgid " in call to `%D'"
msgstr "`%s' ¤Ø¤Î¸Æ¤Ó½Ð¤·¤Ï¥¤¥ó¥é¥¤¥ó²½¤Ç¤­¤Þ¤»¤ó"
-#: cp/call.c:5755
+#: cp/call.c:5737
msgid "choosing `%D' over `%D'"
msgstr ""
-#: cp/call.c:5756
+#: cp/call.c:5738
#, fuzzy
msgid " for conversion from `%T' to `%T'"
msgstr "NaN ¤«¤éÀ°¿ô¤Ø¤ÎÊÑ´¹¤Ç¤¹"
-#: cp/call.c:5758
+#: cp/call.c:5740
msgid " because conversion sequence for the argument is better"
msgstr ""
-#: cp/call.c:5879
-msgid "ISO C++ says that `%D' and `%D' are ambiguous even though the worst conversion for the former is better than the worst conversion for the latter"
+#: cp/call.c:5860
+msgid "ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:"
msgstr ""
-#: cp/call.c:5996
+#: cp/call.c:5864
+msgid "candidate 1:"
+msgstr ""
+
+#: cp/call.c:5865
+msgid "candidate 2:"
+msgstr ""
+
+#: cp/call.c:5974
#, fuzzy
msgid "could not convert `%E' to `%T'"
msgstr "0x%l.8x ¤òÎΰè¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó"
-#: cp/call.c:6105
+#: cp/call.c:6079
msgid "invalid initialization of non-const reference of type '%T' from a temporary of type '%T'"
msgstr ""
-#: cp/call.c:6109
+#: cp/call.c:6083
msgid "invalid initialization of reference of type '%T' from expression of type '%T'"
msgstr ""
-#: cp/class.c:287
+#: cp/class.c:281
msgid "cannot convert from base `%T' to derived type `%T' via virtual base `%T'"
msgstr ""
-#: cp/class.c:992
+#: cp/class.c:764
+msgid "Java class '%T' cannot have an implicit non-trivial destructor"
+msgstr ""
+
+#: cp/class.c:765
+msgid "Java class '%T' cannot have a destructor"
+msgstr ""
+
+#: cp/class.c:933
msgid "`%#D' and `%#D' cannot be overloaded"
msgstr ""
-#: cp/class.c:1076
+#: cp/class.c:1016
#, fuzzy
msgid "duplicate enum value `%D'"
msgstr "½ÅÊ£¤·¤¿ case ¤ÎÃÍ"
-#: cp/class.c:1079
+#: cp/class.c:1019
msgid "duplicate field `%D' (as enum and non-enum)"
msgstr ""
-#: cp/class.c:1086
+#: cp/class.c:1026
#, fuzzy
msgid "duplicate nested type `%D'"
msgstr "½ÅÊ£¤·¤¿¥á¥ó¥Ð `%s'"
-#: cp/class.c:1097
+#: cp/class.c:1037
msgid "duplicate field `%D' (as type and non-type)"
msgstr ""
-#: cp/class.c:1101
+#: cp/class.c:1041
#, fuzzy
msgid "duplicate member `%D'"
msgstr "½ÅÊ£¤·¤¿¥á¥ó¥Ð `%s'"
-#: cp/class.c:1144
+#: cp/class.c:1079
#, fuzzy
msgid "conflicting access specifications for method `%D', ignored"
msgstr "¥Õ¥£¡¼¥ë¥É `%s' ¤ËÂФ¹¤ë¥¢¥¯¥»¥¹»ØÄê»Ò¤¬¶¥¹ç¤·¤¿¤¿¤á¡¢Ìµ»ë¤µ¤ì¤Þ¤·¤¿"
-#: cp/class.c:1146
+#: cp/class.c:1081
#, c-format
msgid "conflicting access specifications for field `%s', ignored"
msgstr "¥Õ¥£¡¼¥ë¥É `%s' ¤ËÂФ¹¤ë¥¢¥¯¥»¥¹»ØÄê»Ò¤¬¶¥¹ç¤·¤¿¤¿¤á¡¢Ìµ»ë¤µ¤ì¤Þ¤·¤¿"
-#: cp/class.c:1194
+#: cp/class.c:1131
msgid "`%D' names constructor"
msgstr ""
-#: cp/class.c:1199
+#: cp/class.c:1136
#, fuzzy
msgid "`%D' invalid in `%T'"
msgstr "̵¸ú¤Ê¥ª¥×¥·¥ç¥ó `%s'"
-#: cp/class.c:1207
+#: cp/class.c:1144
msgid "no members matching `%D' in `%#T'"
msgstr ""
-#: cp/class.c:1239 cp/class.c:1247
+#: cp/class.c:1176 cp/class.c:1184
#, fuzzy
msgid "`%D' invalid in `%#T'"
msgstr "̵¸ú¤Ê¥ª¥×¥·¥ç¥ó `%s'"
-#: cp/class.c:1240
+#: cp/class.c:1177
msgid " because of local method `%#D' with same name"
msgstr ""
-#: cp/class.c:1248
+#: cp/class.c:1185
msgid " because of local member `%#D' with same name"
msgstr ""
-#: cp/class.c:1320
+#: cp/class.c:1255
#, fuzzy
msgid "base class `%#T' has a non-virtual destructor"
msgstr "Èó²¾Áۥǥ¹¥È¥é¥¯¥¿¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
-#: cp/class.c:1340
+#: cp/class.c:1275
msgid "base `%T' with only non-default constructor in class without a constructor"
msgstr ""
-#: cp/class.c:1912
+#: cp/class.c:1659
msgid "all member functions in class `%T' are private"
msgstr ""
-#: cp/class.c:1926
+#: cp/class.c:1670
msgid "`%#T' only defines a private destructor and has no friends"
msgstr ""
-#: cp/class.c:1969
+#: cp/class.c:1712
msgid "`%#T' only defines private constructors and has no friends"
msgstr ""
-#: cp/class.c:2090 cp/class.c:5276
-#, fuzzy
-msgid "redefinition of `%#T'"
-msgstr "`%s' ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-
-#: cp/class.c:2091
-#, fuzzy
-msgid "previous definition of `%#T'"
-msgstr "`%s' ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-
-#: cp/class.c:2365
+#: cp/class.c:2097
msgid "no unique final overrider for `%D' in `%T'"
msgstr ""
#. Here we know it is a hider, and no overrider exists.
-#: cp/class.c:2712
+#: cp/class.c:2542
msgid "`%D' was hidden"
msgstr ""
-#: cp/class.c:2713
+#: cp/class.c:2543
msgid " by `%D'"
msgstr ""
-#: cp/class.c:2755
+#: cp/class.c:2584
msgid "ISO C++ forbids member `%D' with same name as enclosing class"
msgstr ""
-#: cp/class.c:2760 cp/decl2.c:1331
+#: cp/class.c:2589 cp/decl2.c:1167
msgid "`%#D' invalid; an anonymous union can only have non-static data members"
msgstr ""
-#: cp/class.c:2766 cp/decl2.c:1337
+#: cp/class.c:2595 cp/decl2.c:1174
msgid "private member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2769 cp/decl2.c:1339
+#: cp/class.c:2598 cp/decl2.c:1176
msgid "protected member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2894
+#: cp/class.c:2717
msgid "vtable layout for class `%T' may not be ABI-compliant and may change in a future version of GCC due to implicit virtual destructor"
msgstr ""
-#: cp/class.c:2958
+#: cp/class.c:2777
#, fuzzy
msgid "bit-field `%#D' with non-integral type"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤ÎÉý¤¬À°¿ôÄê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/class.c:2978
+#: cp/class.c:2797
#, fuzzy
msgid "bit-field `%D' width not an integer constant"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤ÎÉý¤¬À°¿ôÄê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/class.c:2984
+#: cp/class.c:2803
#, fuzzy
msgid "negative width in bit-field `%D'"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤ÎÉý¤¬Éé¤Î¿ô¤Ç¤¹"
-#: cp/class.c:2989
+#: cp/class.c:2808
#, fuzzy
msgid "zero width for bit-field `%D'"
msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ¤ÎÉý¤¬ 0 ¤Ç¤¹"
-#: cp/class.c:2995
+#: cp/class.c:2814
#, fuzzy
msgid "width of `%D' exceeds its type"
msgstr "`%s' ¤ÎÉý¤Ï¤½¤Î·¿¤Î¥µ¥¤¥º¤òĶ¤¨¤Æ¤¤¤Þ¤¹"
-#: cp/class.c:3004
+#: cp/class.c:2823
msgid "`%D' is too small to hold all values of `%#T'"
msgstr ""
-#: cp/class.c:3088
+#: cp/class.c:2885
msgid "member `%#D' with constructor not allowed in union"
msgstr ""
-#: cp/class.c:3091
+#: cp/class.c:2888
msgid "member `%#D' with destructor not allowed in union"
msgstr ""
-#: cp/class.c:3094
+#: cp/class.c:2891
msgid "member `%#D' with copy assignment operator not allowed in union"
msgstr ""
-#: cp/class.c:3121
+#: cp/class.c:2918
#, fuzzy
msgid "multiple fields in union `%T' initialized"
msgstr "¶¦ÍÑÂνé´ü²½»ÒÆâ¤ÎÍ×ÁǤ¬Â¿¤¹¤®¤Þ¤¹"
-#: cp/class.c:3234
+#: cp/class.c:2987
+msgid "ignoring packed attribute on unpacked non-POD field `%#D'"
+msgstr ""
+
+#: cp/class.c:3039
msgid "field `%D' in local class cannot be static"
msgstr ""
-#: cp/class.c:3240
+#: cp/class.c:3045
#, fuzzy
msgid "field `%D' invalidly declared function type"
msgstr "Îΰè `%s' ¤Ï´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: cp/class.c:3247
+#: cp/class.c:3052
#, fuzzy
msgid "field `%D' invalidly declared method type"
msgstr "¥Ñ¥é¥á¥¿¤Ï¥á¥½¥Ã¥É¤Î·¿¤òÉÔÀµ¤ËÀë¸À¤·¤Þ¤·¤¿"
-#: cp/class.c:3253
-#, fuzzy
-msgid "field `%D' invalidly declared offset type"
-msgstr "¥Ñ¥é¥á¥¿¤¬¥ª¥Õ¥»¥Ã¥È¤Î·¿¤òÉÔÀµ¤ËÀë¸À¤·¤Þ¤·¤¿"
-
#. Unions cannot have static members.
-#: cp/class.c:3271
+#: cp/class.c:3070
#, fuzzy
msgid "field `%D' declared static in union"
msgstr "Îΰè `%s' ¤Ï´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: cp/class.c:3298
+#: cp/class.c:3097
msgid "non-static reference `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3333
+#: cp/class.c:3132
msgid "non-static const member `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3349
+#: cp/class.c:3147
msgid "field `%#D' with same name as class"
msgstr ""
-#: cp/class.c:3367
+#: cp/class.c:3165
#, fuzzy
msgid "`%#T' has pointer data members"
msgstr "¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¤Î̵¸ú¤Ê `%s' ¤Î»ÈÍÑ"
-#: cp/class.c:3371
+#: cp/class.c:3169
msgid " but does not override `%T(const %T&)'"
msgstr ""
-#: cp/class.c:3373
+#: cp/class.c:3171
msgid " or `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3376
+#: cp/class.c:3174
msgid " but does not override `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3826
+#: cp/class.c:3604
msgid "offset of empty base `%T' may not be ABI-compliant and maychange in a future version of GCC"
msgstr ""
-#: cp/class.c:3935
+#: cp/class.c:3714
msgid "class `%T' will be considered nearly empty in a future version of GCC"
msgstr ""
-#: cp/class.c:4025
+#: cp/class.c:3801
#, fuzzy
msgid "initializer specified for non-virtual method `%D'"
msgstr "Èó´Ø¿ô `%s' ¤Î°ú¿ô¤Ë format °À­¤¬»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: cp/class.c:4761
+#: cp/class.c:4489
msgid "offset of virtual base `%T' is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:4861
+#: cp/class.c:4579
msgid "direct base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:4874
+#: cp/class.c:4592
msgid "virtual base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:5030
+#: cp/class.c:4766
msgid "size assigned to `%T' may not be ABI-compliant and may change in a future version of GCC"
msgstr ""
#. Versions of G++ before G++ 3.4 did not reset the
#. DECL_MODE.
-#: cp/class.c:5053
+#: cp/class.c:4805
msgid "the offset of `%D' may not be ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5079
+#: cp/class.c:4828
msgid "offset of `%D' is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5088
+#: cp/class.c:4837
msgid "`%D' contains empty classes which may cause base classes to be placed at different locations in a future version of GCC"
msgstr ""
-#: cp/class.c:5147
+#: cp/class.c:4896
msgid "layout of classes derived from empty class `%T' may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5432
+#: cp/class.c:5026 cp/semantics.c:2029
+#, fuzzy
+msgid "redefinition of `%#T'"
+msgstr "`%s' ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
+
+#: cp/class.c:5196
#, fuzzy
msgid "`%#T' has virtual functions but non-virtual destructor"
msgstr "Èó²¾Áۥǥ¹¥È¥é¥¯¥¿¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
-#: cp/class.c:5516
+#: cp/class.c:5275
#, fuzzy
msgid "trying to finish struct, but kicked out due to previous parse errors"
msgstr "¹½Ê¸²òÀϤ¬¹½Â¤ÂΤνª¤ê¤Ëº¹¤·³Ý¤«¤ê¤Þ¤·¤¿¤¬¡¢Á°¤Î¥¨¥é¡¼¤Î¤»¤¤¤Çʸ̮¤ò¸«¼º¤¤¤Þ¤·¤¿"
-#: cp/class.c:5982
+#: cp/class.c:5717
#, c-format
msgid "language string `\"%s\"' not recognized"
msgstr "¸À¸ìʸ»úÎó `\"%s\"' ¤Ïǧ¼±¤µ¤ì¤Þ¤»¤ó"
-#: cp/class.c:6078
+#: cp/class.c:5805
msgid "cannot resolve overloaded function `%D' based on conversion to type `%T'"
msgstr ""
-#: cp/class.c:6203
+#: cp/class.c:5930
msgid "no matches converting function `%D' to type `%#T'"
msgstr ""
-#: cp/class.c:6226
+#: cp/class.c:5953
msgid "converting overloaded function `%D' to type `%#T' is ambiguous"
msgstr ""
-#: cp/class.c:6252
+#: cp/class.c:5979
#, fuzzy
msgid "assuming pointer to member `%D'"
msgstr " ¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð¤Ø¤ÎÊÑ´¹¤Ç"
-#: cp/class.c:6255
+#: cp/class.c:5982
#, c-format
msgid "(a pointer to member can only be formed with `&%E')"
msgstr ""
-#: cp/class.c:6306 cp/class.c:6477 cp/class.c:6484
+#: cp/class.c:6027 cp/class.c:6209 cp/class.c:6216
msgid "not enough type information"
msgstr "ÉÔ½½Ê¬¤Ê·¿¾ðÊó"
-#: cp/class.c:6315
+#: cp/class.c:6044
#, fuzzy
msgid "argument of type `%T' does not match `%T'"
msgstr "²¾°ú¿ô `%s' ¤Ï¥×¥í¥È¥¿¥¤¥×¤Ë°ìÃפ·¤Þ¤»¤ó"
-#: cp/class.c:6461
+#: cp/class.c:6193
msgid "invalid operation on uninstantiated type"
msgstr "¥¤¥ó¥¹¥¿¥ó¥¹²½¤µ¤ì¤Ê¤¤·¿¤ËÂФ¹¤ë̵¸ú¤ÊÁàºî¤Ç¤¹"
@@ -14688,15 +14044,20 @@ msgstr "¥¤¥ó¥¹¥¿¥ó¥¹²½¤µ¤ì¤Ê¤¤·¿¤ËÂФ¹¤ë̵¸ú¤ÊÁàºî¤Ç¤¹"
#. A name N used in a class S shall refer to the same declaration
#. in its context and when re-evaluated in the completed scope of
#. S.
-#: cp/class.c:6745 cp/decl.c:1254 cp/decl.c:3379 cp/pt.c:2004
+#: cp/class.c:6451 cp/decl.c:1225 cp/name-lookup.c:495 cp/pt.c:2093
#, fuzzy
msgid "declaration of `%#D'"
msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/class.c:6746
+#: cp/class.c:6452
msgid "changes meaning of `%D' from `%+#D'"
msgstr ""
+#: cp/cp-lang.c:398
+#, fuzzy
+msgid "inter-module optimisations not implemented yet"
+msgstr "¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¤Ï¡¢¤Þ¤À¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£"
+
#: cp/cvt.c:88
#, fuzzy
msgid "can't convert from incomplete type `%T' to `%T'"
@@ -14706,283 +14067,268 @@ msgstr "ÉÔ´°Á´·¿¤Ø¤ÎÊÑ´¹¤Ç¤¹"
msgid "conversion of `%E' from `%T' to `%T' is ambiguous"
msgstr ""
-#: cp/cvt.c:126
+#: cp/cvt.c:113 cp/cvt.c:127
#, fuzzy
msgid "converting from `%T' to `%T'"
msgstr "NaN ¤«¤éÀ°¿ô¤Ø¤ÎÊÑ´¹¤Ç¤¹"
-#: cp/cvt.c:203 cp/cvt.c:207
-msgid "pointer to member cast from `%T' to `%T' is via virtual base"
-msgstr ""
-
-#: cp/cvt.c:225 cp/cvt.c:236 cp/cvt.c:283
+#: cp/cvt.c:185 cp/cvt.c:253 cp/cvt.c:297
#, fuzzy
msgid "cannot convert `%E' from type `%T' to type `%T'"
msgstr "¥Ý¥¤¥ó¥¿·¿¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó"
-#: cp/cvt.c:262
+#: cp/cvt.c:214 cp/cvt.c:218
+msgid "pointer to member cast from `%T' to `%T' is via virtual base"
+msgstr ""
+
+#: cp/cvt.c:276
#, fuzzy
msgid "invalid conversion from '%T' to '%T'"
msgstr "NaN ¤«¤éÀ°¿ô¤Ø¤ÎÊÑ´¹¤Ç¤¹"
-#: cp/cvt.c:504
+#: cp/cvt.c:508
msgid "conversion from `%T' to `%T' discards qualifiers"
msgstr ""
-#: cp/cvt.c:522
+#: cp/cvt.c:526
msgid "casting `%T' to `%T' does not dereference pointer"
msgstr ""
-#: cp/cvt.c:551
+#: cp/cvt.c:553
#, fuzzy
msgid "cannot convert type `%T' to type `%T'"
msgstr "¥Ý¥¤¥ó¥¿·¿¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó"
-#: cp/cvt.c:683
+#: cp/cvt.c:679
#, fuzzy
msgid "conversion from `%#T' to `%#T'"
msgstr "NaN ¤«¤éÀ°¿ô¤Ø¤ÎÊÑ´¹¤Ç¤¹"
-#: cp/cvt.c:695
+#: cp/cvt.c:691
#, fuzzy
msgid "`%#T' used where a `%T' was expected"
msgstr "Ê£ÁÇ¿ô·¿¤¬¤¢¤ë¤Ù¤­²Õ½ê¤Ç¡¢¥Ý¥¤¥ó¥¿Ãͤ¬»È¤ï¤ì¤Þ¤·¤¿"
-#: cp/cvt.c:712
-msgid "the address of `%D', will always be `true'"
-msgstr ""
-
-#: cp/cvt.c:732
+#: cp/cvt.c:715
#, fuzzy
msgid "`%#T' used where a floating point value was expected"
msgstr "ÉâÆ°¾®¿ôÅÀ¿ô¤¬¤¢¤ë¤Ù¤­²Õ½ê¤Ç¡¢¥Ý¥¤¥ó¥¿Ãͤ¬»È¤ï¤ì¤Þ¤·¤¿"
-#: cp/cvt.c:779
+#: cp/cvt.c:762
#, fuzzy
msgid "conversion from `%T' to non-scalar type `%T' requested"
msgstr "Èó¥¹¥«¥é¡¼·¿¤Ø¤ÎÊÑ´¹¤¬Í׵ᤵ¤ì¤Þ¤¹"
-#: cp/cvt.c:865
+#: cp/cvt.c:850
msgid "object of incomplete type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:868
+#: cp/cvt.c:853
msgid "object of type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:884
+#: cp/cvt.c:869
msgid "object `%E' of incomplete type `%T' will not be accessed in %s"
msgstr ""
#. [over.over] enumerates the places where we can take the address
#. of an overloaded function, and this is not one of them.
-#: cp/cvt.c:904
+#: cp/cvt.c:885
#, fuzzy, c-format
msgid "%s cannot resolve address of overloaded function"
msgstr "À©¸æ¤¬Èó void ´Ø¿ô¤Î½ª¤ê¤ËÅþ㤷¤Þ¤·¤¿"
#. Only warn when there is no &.
-#: cp/cvt.c:909
+#: cp/cvt.c:891
#, c-format
msgid "%s is a reference, not call, to function `%E'"
msgstr ""
-#: cp/cvt.c:1039
+#: cp/cvt.c:898
+#, fuzzy, c-format
+msgid "%s has no effect"
+msgstr "%s¤¬%s¤ò»ý¤Ã¤Æ¤¤¤Þ¤»¤ó"
+
+#: cp/cvt.c:1009
#, fuzzy
msgid "converting NULL to non-pointer type"
msgstr "ÉÔ´°Á´·¿¤Ø¤ÎÊÑ´¹¤Ç¤¹"
-#: cp/cvt.c:1115
+#: cp/cvt.c:1081
msgid "ambiguous default type conversion from `%T'"
msgstr ""
-#: cp/cvt.c:1117
+#: cp/cvt.c:1083
msgid " candidate conversions include `%D' and `%D'"
msgstr ""
-#: cp/decl.c:736
-#, c-format
-msgid "push %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:770
-#, c-format
-msgid "pop %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:776 cp/decl.c:814
-msgid "XXX is_class_level != (current_binding_level == class_binding_level)\n"
-msgstr ""
-
-#: cp/decl.c:808
-#, c-format
-msgid "suspend %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:837
-#, c-format
-msgid "resume %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:1255 cp/decl.c:3490
-#, fuzzy
-msgid "conflicts with previous declaration `%#D'"
-msgstr "`%s' ¤Î¥»¥¯¥·¥ç¥ó¤ÏÁ°Êý¤Ç¤ËÀë¸À¤µ¤ì¤¿¤â¤Î¤È¾×Æͤ·¤Þ¤¹"
-
-#: cp/decl.c:1467
+#: cp/decl.c:374
#, fuzzy
msgid "label `%D' used but not defined"
msgstr "¥é¥Ù¥ë `%s' ¤¬»È¤ï¤ì¤Þ¤·¤¿¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: cp/decl.c:1472
+#: cp/decl.c:381
#, fuzzy
msgid "label `%D' defined but not used"
msgstr "¥é¥Ù¥ë `%s' ¤¬ÄêµÁ¤µ¤ì¤Þ¤·¤¿¤¬»È¤ï¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: cp/decl.c:2489
-msgid "namespace alias `%D' not allowed here, assuming `%D'"
-msgstr ""
+#: cp/decl.c:1133 cp/decl.c:1559
+#, fuzzy
+msgid "previous declaration of `%D'"
+msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: cp/decl.c:2825
-msgid "XXX entering pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1181
+#, fuzzy
+msgid "%Jfunction '%D' redeclared as inline"
+msgstr "¥é¥¤¥Ö¥é¥ê´Ø¿ô `%s' ¤ÏÈó´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:2834
-msgid "XXX leaving pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1182
+#, fuzzy
+msgid "%Jprevious declaration of '%D' with attribute noinline"
+msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: cp/decl.c:3285 cp/decl.c:3700
+#: cp/decl.c:1189
#, fuzzy
-msgid "previous declaration of `%D'"
+msgid "%Jfunction '%D' redeclared with attribute noinline"
+msgstr "´Ø¿ô¤¬Â礭¤¹¤®¤Æ inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
+
+#: cp/decl.c:1191
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was inline"
msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: cp/decl.c:3366 cp/decl.c:3404
+#: cp/decl.c:1212 cp/decl.c:1250
#, fuzzy
msgid "shadowing %s function `%#D'"
msgstr "¥é¥¤¥Ö¥é¥ê´Ø¿ô `%s' ¤òʤ¤¤±£¤·¤Þ¤¹"
-#: cp/decl.c:3375
+#: cp/decl.c:1221
#, fuzzy
msgid "library function `%#D' redeclared as non-function `%#D'"
msgstr "¥é¥¤¥Ö¥é¥ê´Ø¿ô `%s' ¤ÏÈó´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:3380
+#: cp/decl.c:1226
#, fuzzy
msgid "conflicts with built-in declaration `%#D'"
msgstr "`%s' ¤ÎÀë¸À¤¬Ì·½â¤·¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:3399 cp/decl.c:3504 cp/decl.c:3520
+#: cp/decl.c:1245 cp/decl.c:1357 cp/decl.c:1373
#, fuzzy
msgid "new declaration `%#D'"
msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:3400
+#: cp/decl.c:1246
#, fuzzy
msgid "ambiguates built-in declaration `%#D'"
msgstr "¥é¥Ù¥ë¤ÎÀë¸À `%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:3464
+#: cp/decl.c:1317
#, fuzzy
msgid "`%#D' redeclared as different kind of symbol"
msgstr "`%s' ¤¬Ê̤Υ·¥ó¥Ü¥ë¼ï¤È¤·¤ÆºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:3467
+#: cp/decl.c:1320
#, fuzzy
msgid "previous declaration of `%#D'"
msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: cp/decl.c:3489
+#: cp/decl.c:1342
#, fuzzy
msgid "declaration of template `%#D'"
msgstr "`enum %s' ¤ÎºÆÀë¸À"
-#: cp/decl.c:3505 cp/decl.c:3521
+#: cp/decl.c:1343 cp/name-lookup.c:496
+#, fuzzy
+msgid "conflicts with previous declaration `%#D'"
+msgstr "`%s' ¤Î¥»¥¯¥·¥ç¥ó¤ÏÁ°Êý¤Ç¤ËÀë¸À¤µ¤ì¤¿¤â¤Î¤È¾×Æͤ·¤Þ¤¹"
+
+#: cp/decl.c:1358 cp/decl.c:1374
#, fuzzy
msgid "ambiguates old declaration `%#D'"
msgstr "¥é¥Ù¥ë¤ÎÀë¸À `%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:3513
+#: cp/decl.c:1366
#, fuzzy
msgid "declaration of C function `%#D' conflicts with"
msgstr "%s: ´Ø¿ô `%s' ¤ÎÀë¸À¤¬ÊÑ´¹¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-#: cp/decl.c:3515
+#: cp/decl.c:1368
#, fuzzy
msgid "previous declaration `%#D' here"
msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: cp/decl.c:3533
+#: cp/decl.c:1384
#, fuzzy
-msgid "conflicting types for `%#D'"
-msgstr "`%s' ¤È·¿¤¬Ì·½â¤·¤Þ¤¹"
+msgid "conflicting declaration '%#D'"
+msgstr "`%s' ¤ÎÀë¸À¤¬Ì·½â¤·¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:3534
+#: cp/decl.c:1385
#, fuzzy
-msgid "previous declaration as `%#D'"
+msgid "'%D' has a previous declaration as `%#D'"
msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: cp/decl.c:3577
+#: cp/decl.c:1438
#, fuzzy
msgid "`%#D' previously defined here"
msgstr "`%s' ¤ÏÁ°¤Ë¤³¤³¤ÇÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:3578
+#: cp/decl.c:1439
#, fuzzy
msgid "`%#D' previously declared here"
msgstr "`%s' ¤ÏÁ°¤Ë¤³¤³¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
#. Prototype decl follows defn w/o prototype.
-#: cp/decl.c:3587
+#: cp/decl.c:1448
#, fuzzy
msgid "prototype for `%#D'"
msgstr "`%s' ¤Î¥×¥í¥È¥¿¥¤¥×¤¬¸å¤í¤Ë¤¢¤ê¤Þ¤¹"
-#: cp/decl.c:3588
+#: cp/decl.c:1449
#, fuzzy
-msgid "follows non-prototype definition here"
+msgid "%Jfollows non-prototype definition here"
msgstr "Èó¥×¥í¥È¥¿¥¤¥×ÄêµÁ¤¬¤³¤³¤Ë¤¢¤ê¤Þ¤¹"
-#: cp/decl.c:3600
+#: cp/decl.c:1461
#, fuzzy
msgid "previous declaration of `%#D' with %L linkage"
msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: cp/decl.c:3602
+#: cp/decl.c:1463
#, fuzzy
msgid "conflicts with new declaration with %L linkage"
msgstr "`%s' ¤ÎÀë¸À¤¬Ì·½â¤·¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:3625 cp/decl.c:3632
+#: cp/decl.c:1486 cp/decl.c:1493
#, fuzzy
msgid "default argument given for parameter %d of `%#D'"
msgstr "¥Þ¥¯¥í `%s' ¤Ë°ú¿ô¤¬Í¿¤¨¤é¤ì¤Þ¤·¤¿"
-#: cp/decl.c:3627 cp/decl.c:3634
+#: cp/decl.c:1488 cp/decl.c:1495
#, fuzzy
msgid "after previous specification in `%#D'"
msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: cp/decl.c:3643
+#: cp/decl.c:1504
#, fuzzy
msgid "`%#D' was used before it was declared inline"
msgstr "`%s' ¤Ï¤½¤ÎÄêµÁ¤ÎÁ°¤Ë¥×¥í¥È¥¿¥¤¥×¤Ê¤·¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: cp/decl.c:3645
+#: cp/decl.c:1505
#, fuzzy
-msgid "previous non-inline declaration here"
+msgid "%Jprevious non-inline declaration here"
msgstr "Á°Êý¤Ç¤Î `%s' ¤Î°ÅÌÛŪ¤ÊÀë¸À"
-#: cp/decl.c:3699
+#: cp/decl.c:1558
#, fuzzy
msgid "redundant redeclaration of `%D' in same scope"
msgstr "`%s' ¤Î¾éĹ¤ÊºÆÀë¸À¤¬Æ±°ì¥¹¥³¡¼¥×Æâ¤Ë¤¢¤ê¤Þ¤¹"
-#: cp/decl.c:3780
+#: cp/decl.c:1649
#, fuzzy, c-format
msgid "declaration of `%F' throws different exceptions"
msgstr "`%s' ¤ÎÀë¸À¤Ï´Ø¿ô¤ÎÇÛÎó"
-#: cp/decl.c:3782
+#: cp/decl.c:1651
#, fuzzy, c-format
msgid "than previous declaration `%F'"
msgstr "`%s' ¤ÎÁ°ÊýÀë¸À¤¬¤¢¤ê¤Þ¤»¤ó"
@@ -14995,352 +14341,226 @@ msgstr "`%s' ¤ÎÁ°ÊýÀë¸À¤¬¤¢¤ê¤Þ¤»¤ó"
#. that specialization that would cause an implicit
#. instantiation to take place, in every translation unit in
#. which such a use occurs.
-#: cp/decl.c:3922
+#: cp/decl.c:1798
msgid "explicit specialization of %D after first use"
msgstr ""
-#: cp/decl.c:4187
-#, fuzzy
-msgid "`%#D' used prior to declaration"
-msgstr "`%s' ¤ÏÀë¸À¤è¤ê¤âÀè¤Ë»ÈÍѤµ¤ì¤Þ¤·¤¿"
-
-#: cp/decl.c:4218
-#, fuzzy
-msgid "redeclaration of `wchar_t' as `%T'"
-msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-
-#. A redeclaration of main, but not a duplicate of the
-#. previous one.
-#.
-#. [basic.start.main]
-#.
-#. This function shall not be overloaded.
-#: cp/decl.c:4246
-#, fuzzy
-msgid "invalid redeclaration of `%D'"
-msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-
-#: cp/decl.c:4247
-msgid "as `%D'"
+#: cp/decl.c:1880
+msgid "%J'%D': visibility attribute ignored because it"
msgstr ""
-#: cp/decl.c:4337
-#, fuzzy
-msgid "previous external decl of `%#D'"
-msgstr "Á°Êý¤Î `%s' ¤Î³°ÉôÀë¸À"
-
-#: cp/decl.c:4378
-#, fuzzy
-msgid "`%D' was previously implicitly declared to return `int'"
-msgstr "`%s' ¤ÏÁ°Êý¤Ç°ÅÌÛŪ¤Ë `int' ¤òÊÖ¤¹¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
-
-#: cp/decl.c:4438
+#: cp/decl.c:1882
#, fuzzy
-msgid "extern declaration of `%#D' doesn't match"
-msgstr "`%s' ¤Îextern Àë¸À¤Ï¥°¥í¡¼¥Ð¥ë¤Î¤½¤ì¤È°ìÃפ·¤Þ¤»¤ó"
-
-#: cp/decl.c:4439
-#, fuzzy
-msgid "global declaration `%#D'"
-msgstr "¥é¥Ù¥ë¤ÎÀë¸À `%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-
-#: cp/decl.c:4472
-#, fuzzy
-msgid "declaration of `%#D' shadows a parameter"
-msgstr "`%s' ¤ÎÀë¸À¤Ï²¾°ú¿ô¤òʤ¤¤±£¤·¤Þ¤¹"
-
-#: cp/decl.c:4492
-#, c-format
-msgid "declaration of `%s' shadows a member of `this'"
-msgstr "`%s' ¤ÎÀë¸À¤Ë¤è¤ê `this' ¤Î¥á¥ó¥Ð¤¬Ê¤¤¤±£¤µ¤ì¤Þ¤¹"
-
-#: cp/decl.c:4889
-#, fuzzy
-msgid "`%#D' hides constructor for `%#T'"
-msgstr "`%#D' ¤Î¤¿¤á¤Î¥Ç¥¹¥È¥é¥¯¥¿¤¬É¬ÍפǤ¹"
-
-#: cp/decl.c:4904
-#, fuzzy
-msgid "`%#D' conflicts with previous using declaration `%#D'"
+msgid "%Jconflicts with previous declaration here"
msgstr "`%s' ¤Î¥»¥¯¥·¥ç¥ó¤ÏÁ°Êý¤Ç¤ËÀë¸À¤µ¤ì¤¿¤â¤Î¤È¾×Æͤ·¤Þ¤¹"
-#: cp/decl.c:4916
-#, fuzzy
-msgid "previous non-function declaration `%#D'"
-msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-
-#: cp/decl.c:4917
-#, fuzzy
-msgid "conflicts with function declaration `%#D'"
-msgstr "`%s' ¤ÎÀë¸À¤¬Ì·½â¤·¤Æ¤¤¤Þ¤¹"
-
-#: cp/decl.c:5007
+#: cp/decl.c:1976
#, fuzzy
msgid "implicit declaration of function `%#D'"
msgstr "´Ø¿ô `%s' ¤Î°ÅÌÛ¤ÎÀë¸À"
-#: cp/decl.c:5167
+#: cp/decl.c:2124
#, c-format
msgid "label `%s' referenced outside of any function"
msgstr "¥é¥Ù¥ë `%s' ¤¬´Ø¿ô¤Î³°Â¦¤Î²¿¤«¤ò»²¾È¤·¤Þ¤·¤¿"
-#: cp/decl.c:5270 cp/decl.c:5294 cp/decl.c:5387
+#: cp/decl.c:2221 cp/decl.c:2245 cp/decl.c:2333
#, fuzzy
msgid "jump to label `%D'"
msgstr "case ¥é¥Ù¥ë¤Ë¥¸¥ã¥ó¥×¤·¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:5272 cp/decl.c:5296
+#: cp/decl.c:2223 cp/decl.c:2247
msgid "jump to case label"
msgstr "case ¥é¥Ù¥ë¤Ë¥¸¥ã¥ó¥×¤·¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:5280
+#: cp/decl.c:2226 cp/decl.c:2250
+#, fuzzy
+msgid "%H from here"
+msgstr " ¤³¤³¤«¤é"
+
+#: cp/decl.c:2231
#, fuzzy
msgid " crosses initialization of `%#D'"
msgstr "(`%s' ¤Î½é´ü²½¤ÏÉÔ´°Á´¤Ç¤¹)"
-#: cp/decl.c:5283 cp/decl.c:5403
+#: cp/decl.c:2234 cp/decl.c:2349
msgid " enters scope of non-POD `%#D'"
msgstr ""
-#: cp/decl.c:5303 cp/decl.c:5407
+#: cp/decl.c:2254 cp/decl.c:2353
msgid " enters try block"
msgstr " try ¥Ö¥í¥Ã¥¯¤ËÆþ¤ê¤Þ¤¹"
-#. Can't skip init of __exception_info.
-#: cp/decl.c:5305 cp/decl.c:5399 cp/decl.c:5409
+#: cp/decl.c:2256 cp/decl.c:2355
msgid " enters catch block"
msgstr " catch ¥Ö¥í¥Ã¥¯¤ËÆþ¤ê¤Þ¤¹"
-#: cp/decl.c:5388
+#: cp/decl.c:2334
msgid " from here"
msgstr " ¤³¤³¤«¤é"
-#: cp/decl.c:5401
+#. Can't skip init of __exception_info.
+#: cp/decl.c:2345
+#, fuzzy
+msgid "%J enters catch block"
+msgstr " catch ¥Ö¥í¥Ã¥¯¤ËÆþ¤ê¤Þ¤¹"
+
+#: cp/decl.c:2347
#, fuzzy
msgid " skips initialization of `%#D'"
msgstr "(`%s' ¤Î½é´ü²½¤ÏÉÔ´°Á´¤Ç¤¹)"
-#: cp/decl.c:5437
+#: cp/decl.c:2381
msgid "label named wchar_t"
msgstr ""
-#: cp/decl.c:5440
+#: cp/decl.c:2384
#, fuzzy
msgid "duplicate label `%D'"
msgstr "½ÅÊ£¤·¤¿¥á¥ó¥Ð `%s'"
-#: cp/decl.c:5525
-#, fuzzy, c-format
-msgid "case label `%E' not within a switch statement"
-msgstr "case ¥é¥Ù¥ë¤¬ switch ʸ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
-
-#. Definition isn't the kind we were looking for.
-#: cp/decl.c:5704 cp/decl.c:5723
-msgid "`%#D' redeclared as %C"
-msgstr ""
-
-#. This happens for A::B where B is a template, and there are no
-#. template arguments.
-#: cp/decl.c:5811 cp/typeck.c:2069 cp/typeck.c:2229
-#, fuzzy
-msgid "invalid use of `%D'"
-msgstr "`restrict' ¤ÎÍÑË¡¤¬ÉÔŬÀڤǤ¹"
-
-#: cp/decl.c:5852
-#, fuzzy
-msgid "`%D::%D' is not a template"
-msgstr "¥Æ¥ó¥×¥ì¡¼¥ÈÆâ¤Ç `%s' ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹"
-
-#: cp/decl.c:5869
-msgid "`%D' undeclared in namespace `%D'"
-msgstr ""
-
-#: cp/decl.c:6002
+#: cp/decl.c:2612 cp/parser.c:3178
msgid "`%D' used without template parameters"
msgstr ""
-#: cp/decl.c:6013 cp/decl.c:6029 cp/decl.c:6139
+#: cp/decl.c:2622 cp/decl.c:2638 cp/decl.c:2726
msgid "no class template named `%#T' in `%#T'"
msgstr ""
-#: cp/decl.c:6055 cp/decl.c:6065 cp/decl.c:6100
+#: cp/decl.c:2659 cp/decl.c:2669 cp/decl.c:2689
#, fuzzy
msgid "no type named `%#T' in `%#T'"
msgstr "`asm' Ãæ¤ËÉÔÌÀ¤Ê¥ì¥¸¥¹¥¿Ì¾ `%s' ¤¬¤¢¤ê¤Þ¤¹"
-#: cp/decl.c:6329
-#, fuzzy
-msgid "lookup of `%D' finds `%#D'"
-msgstr "`%s' ¤Î̾Á°°ú¤­¤ÏÊѹ¹¤µ¤ì¤Þ¤·¤¿"
-
-#: cp/decl.c:6331
-msgid " instead of `%D' from dependent base class"
-msgstr ""
-
-#: cp/decl.c:6333
-msgid " (use `typename %T::%D' if that's what you meant)"
-msgstr ""
-
-#: cp/decl.c:6364
-#, fuzzy
-msgid "name lookup of `%D' changed"
-msgstr "`%s' ¤Î̾Á°°ú¤­¤ÏÊѹ¹¤µ¤ì¤Þ¤·¤¿"
-
-#: cp/decl.c:6366
-msgid " matches this `%D' under ISO standard rules"
-msgstr ""
-
-#: cp/decl.c:6368
-msgid " matches this `%D' under old rules"
-msgstr ""
-
-#: cp/decl.c:6382 cp/decl.c:6389
-#, fuzzy
-msgid "name lookup of `%D' changed for new ISO `for' scoping"
-msgstr "`%s' ¤Î̾Á°°ú¤­¤Ï¿·¤¿¤Ê ISO `for' ¥¹¥³¡¼¥×¤ËÊѤï¤ê¤Þ¤·¤¿"
-
-#: cp/decl.c:6384
-msgid " cannot use obsolete binding at `%D' because it has a destructor"
-msgstr ""
-
-#: cp/decl.c:6391
-msgid " using obsolete binding at `%D'"
+#: cp/decl.c:3416
+msgid "%Jan anonymous union cannot have function members"
msgstr ""
-#: cp/decl.c:6609
-msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
-msgstr ""
-
-#: cp/decl.c:7432
-#, fuzzy
-msgid "an anonymous union cannot have function members"
-msgstr "̵̾¶¦ÍÑÂΤ˥á¥ó¥Ð¤¬¤¢¤ê¤Þ¤»¤ó"
-
-#: cp/decl.c:7449
+#: cp/decl.c:3434
msgid "member %#D' with constructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7452
+#: cp/decl.c:3437
msgid "member %#D' with destructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7455
+#: cp/decl.c:3440
msgid "member %#D' with copy assignment operator not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7493
+#: cp/decl.c:3480
#, fuzzy
msgid "redeclaration of C++ built-in type `%T'"
msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:7529
+#: cp/decl.c:3518
msgid "multiple types in one declaration"
msgstr "°ì¤Ä¤ÎÀë¸À¤ËÊ£¿ô¤Î·¿¤¬¤¢¤ê¤Þ¤¹"
-#: cp/decl.c:7556
+#: cp/decl.c:3544
#, fuzzy
msgid "missing type-name in typedef-declaration"
msgstr "typdef Àë¸À¤Ç·¿Ì¾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:7563
+#: cp/decl.c:3552
msgid "ISO C++ prohibits anonymous structs"
msgstr "ISO C++ ¤Ï̵̾¹½Â¤ÂΤò¶Ø»ß¤·¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:7570
+#: cp/decl.c:3559
#, fuzzy
msgid "`%D' can only be specified for functions"
msgstr "Èó´Ø¿ô `%s' ¤Î°ú¿ô¤Ë format °À­¤¬»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:7572
+#: cp/decl.c:3561
msgid "`%D' can only be specified inside a class"
msgstr ""
-#: cp/decl.c:7574
+#: cp/decl.c:3563
#, fuzzy
msgid "`%D' can only be specified for constructors"
msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤ËÂФ¹¤ëÌá¤êÃͤη¿»ØÄê¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:7577
+#: cp/decl.c:3566
#, fuzzy
msgid "`%D' can only be specified for objects and functions"
msgstr "Èó´Ø¿ô `%s' ¤Î°ú¿ô¤Ë format °À­¤¬»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:7719 cp/decl2.c:936
+#: cp/decl.c:3708 cp/decl2.c:861
#, fuzzy
msgid "typedef `%D' is initialized (use __typeof__ instead)"
msgstr "typedef `%s' ¤¬½é´ü²½¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:7724
+#: cp/decl.c:3713
#, fuzzy
msgid "function `%#D' is initialized like a variable"
msgstr "´Ø¿ô `%s' ¤¬ÊÑ¿ô¤Ç¤¢¤ë¤«¤Î¤è¤¦¤Ë½é´ü²½¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:7736
+#: cp/decl.c:3725
#, fuzzy
msgid "declaration of `%#D' has `extern' and is initialized"
msgstr "`%s' ¤ÎÀë¸À¤Ë `extern' ¤¬¤Ä¤¤¤Æ¤ª¤ê¡¢½é´ü²½¤â¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:7770
+#: cp/decl.c:3758
#, fuzzy
msgid "`%#D' is not a static member of `%#T'"
msgstr "static ¥Õ¥£¡¼¥ë¥É `%s' ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl.c:7775
+#: cp/decl.c:3764
#, fuzzy
msgid "ISO C++ does not permit `%T::%D' to be defined as `%T::%D'"
msgstr "ISO C++ ¤Ï #if Æâ¤Î \"%s\" ¤òµö¤·¤Þ¤»¤ó"
-#: cp/decl.c:7786
+#: cp/decl.c:3775
#, fuzzy
msgid "duplicate initialization of %D"
msgstr "½ÅÊ£¤·¤¿½é´ü²½»Ò"
-#: cp/decl.c:7815
+#: cp/decl.c:3806
#, fuzzy
msgid "declaration of `%#D' outside of class is not definition"
msgstr "`%s' ¤Î weak Àë¸À¤ÏÄêµÁ¤è¤ê¤âÀè¤Ë¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cp/decl.c:7865
+#: cp/decl.c:3857
#, fuzzy
msgid "variable `%#D' has initializer but incomplete type"
msgstr "ÊÑ¿ô `%s' ¤Ë¤Ï½é´ü²½»Ò¤¬¤¢¤ê¤Þ¤¹¤¬¡¢ÉÔ´°Á´·¿¤Ç¤¹"
-#: cp/decl.c:7873 cp/decl.c:8432
+#: cp/decl.c:3865 cp/decl.c:4426
#, fuzzy
msgid "elements of array `%#D' have incomplete type"
msgstr "ÇÛÎó `%s' ¤ÎÍ×ÁǤËÉÔ´°Á´·¿¤¬¤¢¤ê¤Þ¤¹"
-#: cp/decl.c:7889
+#: cp/decl.c:3881
#, fuzzy
msgid "aggregate `%#D' has incomplete type and cannot be defined"
msgstr "²¾°ú¿ô `%s' ¤ÏÉÔ´°Á´·¿¤Ç¤¹"
-#: cp/decl.c:7931
+#: cp/decl.c:3923
#, fuzzy
msgid "`%D' declared as reference but not initialized"
msgstr "`%s' ¤¬Ê̤Υ·¥ó¥Ü¥ë¼ï¤È¤·¤ÆºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:7940
+#: cp/decl.c:3929
#, fuzzy
msgid "ISO C++ forbids use of initializer list to initialize reference `%D'"
msgstr "ISO C++ ¤Ï new ¤Ø¤Î½¸¹çÂνé´ü²½»Ò¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/decl.c:7970
+#: cp/decl.c:3957
#, fuzzy
msgid "cannot initialize `%T' from `%T'"
msgstr "friend ´Ø¿ô `%s' ¤ò½é´ü²½¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:8004
+#: cp/decl.c:3989
#, fuzzy
msgid "initializer fails to determine size of `%D'"
msgstr "½é´ü²½»Ò¤Ï `%s' ¤Î¥µ¥¤¥º¤ÎÆÃÄê¤Ë¼ºÇÔ¤·¤Þ¤·¤¿"
-#: cp/decl.c:8009
+#: cp/decl.c:3994
#, fuzzy
msgid "array size missing in `%D'"
msgstr "`%s' ¤Ç¤ÎÇÛÎó¥µ¥¤¥º¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:8021
+#: cp/decl.c:4006
#, fuzzy
msgid "zero-size array `%D'"
msgstr "ISO C ¤Ï ¥µ¥¤¥º 0 ¤ÎÇÛÎó `%s' ¤ò¶Ø¤¸¤Þ¤¹"
@@ -15348,343 +14568,333 @@ msgstr "ISO C ¤Ï ¥µ¥¤¥º 0 ¤ÎÇÛÎó `%s' ¤ò¶Ø¤¸¤Þ¤¹"
#. An automatic variable with an incomplete type: that is an error.
#. Don't talk about array types here, since we took care of that
#. message in grokdeclarator.
-#: cp/decl.c:8059
+#: cp/decl.c:4043
#, fuzzy
msgid "storage size of `%D' isn't known"
msgstr "`%s' ¤ÎÎΰ襵¥¤¥º¤¬¤ï¤«¤ê¤Þ¤»¤ó"
-#: cp/decl.c:8081
+#: cp/decl.c:4065
#, fuzzy
msgid "storage size of `%D' isn't constant"
msgstr "`%s' ¤ÎÎΰ襵¥¤¥º¤¬°ìÄê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl.c:8137
+#: cp/decl.c:4120
msgid "sorry: semantics of inline function static data `%#D' are wrong (you'll wind up with multiple copies)"
msgstr ""
-#: cp/decl.c:8138
-msgid " you can work around this by removing the initializer"
+#: cp/decl.c:4121
+msgid "%J you can work around this by removing the initializer"
msgstr ""
-#: cp/decl.c:8164
+#: cp/decl.c:4147
#, fuzzy
msgid "uninitialized const `%D'"
msgstr "friend ´Ø¿ô `%s' ¤ò½é´ü²½¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:8249
+#: cp/decl.c:4226
#, fuzzy
msgid "brace-enclosed initializer used to initialize `%T'"
msgstr "´ðÄ쥯¥é¥¹½é´üÀßÄê»Ò¤¬»ØÄꤵ¤ì¤Þ¤·¤¿¤¬¡¢½é´ü²½¤¹¤Ù¤­´ðÄ쥯¥é¥¹¤¬¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl.c:8313
+#: cp/decl.c:4290
msgid "initializer for `%T' must be brace-enclosed"
msgstr ""
-#: cp/decl.c:8328
+#: cp/decl.c:4307
#, fuzzy
msgid "ISO C++ does not allow designated initializers"
msgstr "ISO C++ ¤Ï̾Á°¤Ä¤­Ìá¤êÃͤòµö²Ä¤·¤Þ¤»¤ó"
-#: cp/decl.c:8332
+#: cp/decl.c:4311
#, fuzzy
msgid "`%T' has no non-static data member named `%D'"
msgstr "%s ¤Ë `%s' ¤È¤¤¤¦Ì¾Á°¤Î¥á¥ó¥Ð¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl.c:8389
+#: cp/decl.c:4359
+msgid "name `%D' used in a GNU-style designated initializer for an array"
+msgstr ""
+
+#: cp/decl.c:4382
#, fuzzy
msgid "too many initializers for `%T'"
msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë¤¬Â¿¤¹¤®¤Þ¤¹"
-#: cp/decl.c:8426
+#: cp/decl.c:4420
#, fuzzy
msgid "variable-sized object `%D' may not be initialized"
msgstr "²ÄÊÑĹ¥ª¥Ö¥¸¥§¥¯¥È¤Ï½é´ü²½¤µ¤ì¤Ê¤¤¤³¤È¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦"
-#: cp/decl.c:8437
+#: cp/decl.c:4431
#, fuzzy
msgid "`%D' has incomplete type"
msgstr "`%s' ¤ÏÉÔ´°Á´·¿¤Ç¤¹"
-#: cp/decl.c:8486
+#: cp/decl.c:4486
msgid "`%D' must be initialized by constructor, not by `{...}'"
msgstr ""
-#: cp/decl.c:8527
+#: cp/decl.c:4530
msgid "structure `%D' with uninitialized const members"
msgstr ""
-#: cp/decl.c:8529
+#: cp/decl.c:4532
msgid "structure `%D' with uninitialized reference members"
msgstr ""
-#: cp/decl.c:8770
+#: cp/decl.c:4713
msgid "assignment (not initialization) in declaration"
msgstr "Àë¸À¤ÎÃæ¤ËÂåÆþ(½é´ü²½¤Ç¤Ï¤Ê¤¯)¤¬¤¢¤ê¤Þ¤¹"
-#: cp/decl.c:8785
+#: cp/decl.c:4730
#, fuzzy
msgid "cannot initialize `%D' to namespace `%D'"
msgstr "friend ´Ø¿ô `%s' ¤ò½é´ü²½¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:8836
+#: cp/decl.c:4780
#, fuzzy
msgid "shadowing previous type declaration of `%#D'"
msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: cp/decl.c:8883
+#: cp/decl.c:4816
msgid "`%D' cannot be thread-local because it has non-POD type `%T'"
msgstr ""
-#: cp/decl.c:8898
+#: cp/decl.c:4831
msgid "`%D' is thread-local and so cannot be dynamically initialized"
msgstr ""
-#: cp/decl.c:9298 cp/init.c:562
-#, fuzzy
-msgid "multiple initializations given for `%D'"
-msgstr "(`%s' ¤Î½é´ü²½¤ÏÉÔ´°Á´¤Ç¤¹)"
-
-#: cp/decl.c:9390
+#: cp/decl.c:5313
msgid "invalid catch parameter"
msgstr "̵¸ú¤Ê catch ¤Î°ú¿ô"
-#: cp/decl.c:9508
+#: cp/decl.c:5427
#, fuzzy
msgid "destructor for alien class `%T' cannot be a member"
msgstr "¾¤Î¥¯¥é¥¹ `%s' ¤Î¥Ç¥¹¥È¥é¥¯¥¿¤ò¡¢¥á¥ó¥Ð¤Ë¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:9511
+#: cp/decl.c:5430
#, fuzzy
msgid "constructor for alien class `%T' cannot be a member"
msgstr "¾¤Î¥¯¥é¥¹ `%s' ¤Î¥Ç¥¹¥È¥é¥¯¥¿¤ò¡¢¥á¥ó¥Ð¤Ë¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:9530
+#: cp/decl.c:5452
msgid "`%D' declared as a `virtual' %s"
msgstr ""
-#: cp/decl.c:9532
+#: cp/decl.c:5454
#, fuzzy
msgid "`%D' declared as an `inline' %s"
msgstr "ÊÑ¿ô `%s' ¤¬ `inline' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:9534
+#: cp/decl.c:5456
#, fuzzy
msgid "`const' and `volatile' function specifiers on `%D' invalid in %s declaration"
msgstr "²¾°ú¿ôÀë¸À¤ÎÃæ¤Îµ­²±¥¯¥é¥¹»ØÄê»Ò¤Ï̵¸ú¤Ç¤¹"
-#: cp/decl.c:9537
+#: cp/decl.c:5459
#, fuzzy
msgid "`%D' declared as a friend"
msgstr "Îΰè `%s' ¤Ï´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:9543
+#: cp/decl.c:5465
#, fuzzy
msgid "`%D' declared with an exception specification"
msgstr "Îã³°»ÅÍͤθ¡ºº¤ò¤¹¤ë¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
-#: cp/decl.c:9618
+#: cp/decl.c:5544
msgid "cannot declare `::main' to be a template"
msgstr "`::main' ¤ò template ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:9620
+#: cp/decl.c:5546
msgid "cannot declare `::main' to be inline"
msgstr "`::main' ¤ò inline ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:9622
+#: cp/decl.c:5548
msgid "cannot declare `::main' to be static"
msgstr "`::main' ¤ò static ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:9625
+#: cp/decl.c:5551
msgid "`main' must return `int'"
msgstr "`main' ¤Ï `int' ¤òÊÖ¤µ¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cp/decl.c:9653
+#: cp/decl.c:5579
msgid "non-local function `%#D' uses anonymous type"
msgstr ""
-#: cp/decl.c:9656
+#: cp/decl.c:5582
msgid "`%#D' does not refer to the unqualified type, so it is not used for linkage"
msgstr ""
-#: cp/decl.c:9662
+#: cp/decl.c:5588
msgid "non-local function `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:9691
+#: cp/decl.c:5612
msgid "%smember function `%D' cannot have `%T' method qualifier"
msgstr ""
-#: cp/decl.c:9715
+#: cp/decl.c:5636
#, fuzzy
msgid "defining explicit specialization `%D' in friend declaration"
msgstr "Àë¸À¤ÎÃæ¤ËÂåÆþ(½é´ü²½¤Ç¤Ï¤Ê¤¯)¤¬¤¢¤ê¤Þ¤¹"
#. Something like `template <class T> friend void f<T>()'.
-#: cp/decl.c:9725
+#: cp/decl.c:5646
msgid "invalid use of template-id `%D' in declaration of primary template"
msgstr ""
-#: cp/decl.c:9753
+#: cp/decl.c:5673
msgid "default arguments are not allowed in declaration of friend template specialization `%D'"
msgstr ""
-#: cp/decl.c:9760
+#: cp/decl.c:5680
msgid "`inline' is not allowed in declaration of friend template specialization `%D'"
msgstr ""
-#: cp/decl.c:9822
+#: cp/decl.c:5741
#, fuzzy
msgid "definition of implicitly-declared `%D'"
msgstr "´Ø¿ô¤ÎÄêµÁ¤¬ `auto' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:9834 cp/decl2.c:785
+#: cp/decl.c:5759 cp/decl2.c:744
#, fuzzy
msgid "no `%#D' member function declared in class `%T'"
msgstr "¥á¥ó¥Ð´Ø¿ô¤Ø¤Î¥Ý¥¤¥ó¥¿¤¬¸Æ¤Ð¤ì¤Þ¤·¤¿¤¬¡¢¥¯¥é¥¹¥¹¥³¡¼¥×Æâ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl.c:9967
+#: cp/decl.c:5893
msgid "non-local variable `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:10064
+#: cp/decl.c:6008
msgid "invalid in-class initialization of static data member of non-integral type `%T'"
msgstr ""
-#: cp/decl.c:10073
+#: cp/decl.c:6017
#, fuzzy
msgid "ISO C++ forbids in-class initialization of non-const static member `%D'"
msgstr "ISO C++ ¤Ï new ¼°¤Î½é´ü²½¤Ç¤Î `=' ¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/decl.c:10076
+#: cp/decl.c:6020
#, fuzzy
msgid "ISO C++ forbids initialization of member constant `%D' of non-integral type `%T'"
msgstr "ISO C++ ¤Ï new ¼°¤Î½é´ü²½¤Ç¤Î `=' ¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/decl.c:10126
+#: cp/decl.c:6039
#, fuzzy
-msgid "size of array `%D' has non-integer type"
+msgid "size of array `%D' has non-integral type `%T'"
msgstr "ÇÛÎó `%s' ¤ÎÂ礭¤µ¤ÏÈóÀ°¿ô·¿"
-#: cp/decl.c:10128
+#: cp/decl.c:6041
#, fuzzy
-msgid "size of array has non-integer type"
+msgid "size of array has non-integral type `%T'"
msgstr "ÇÛÎó `%s' ¤ÎÂ礭¤µ¤ÏÈóÀ°¿ô·¿"
-#: cp/decl.c:10148
+#: cp/decl.c:6077
#, fuzzy
msgid "size of array `%D' is negative"
msgstr "ÇÛÎó `%s' ¤ÎÂ礭¤µ¤¬Éé¤Ç¤¹"
-#: cp/decl.c:10150
+#: cp/decl.c:6079
#, fuzzy
msgid "size of array is negative"
msgstr "ÇÛÎó `%s' ¤ÎÂ礭¤µ¤¬Éé¤Ç¤¹"
-#: cp/decl.c:10159
+#: cp/decl.c:6087
#, fuzzy
msgid "ISO C++ forbids zero-size array `%D'"
msgstr "ISO C ¤Ï ¥µ¥¤¥º 0 ¤ÎÇÛÎó `%s' ¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/decl.c:10161
+#: cp/decl.c:6089
#, fuzzy
msgid "ISO C++ forbids zero-size array"
msgstr "ISO C ¤Ï ¥µ¥¤¥º 0 ¤ÎÇÛÎó `%s' ¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/decl.c:10168
+#: cp/decl.c:6096
#, fuzzy
msgid "size of array `%D' is not an integral constant-expression"
msgstr "ÇÛÎó `%s' ¤ÎÂ礭¤µ¤ÏÈóÀ°¿ô·¿"
-#: cp/decl.c:10171
+#: cp/decl.c:6099
#, fuzzy
msgid "size of array is not an integral constant-expression"
msgstr "Äê¿ô¼°¤¬·ç¤±¤Æ¤¤¤ë¤«Ìµ¸ú¤Ç¤¹"
-#: cp/decl.c:10189
+#: cp/decl.c:6104
#, fuzzy
msgid "ISO C++ forbids variable-size array `%D'"
msgstr "ISO C89 ¤Ï²ÄÊÑĹ¥µ¥¤¥º¤ÎÇÛÎó `%s' ¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/decl.c:10192
+#: cp/decl.c:6106
#, fuzzy
msgid "ISO C++ forbids variable-size array"
msgstr "ISO C89 ¤Ï²ÄÊÑĹ¥µ¥¤¥º¤ÎÇÛÎó `%s' ¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/decl.c:10203
+#: cp/decl.c:6128
msgid "overflow in array dimension"
msgstr "ÇÛÎó¤Î¼¡¸µ¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
-#: cp/decl.c:10262
+#: cp/decl.c:6222
#, fuzzy
msgid "declaration of `%D' as %s"
msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:10264
+#: cp/decl.c:6224
#, fuzzy, c-format
msgid "creating %s"
msgstr "%s ¤òºîÀ®Ãæ.\n"
-#: cp/decl.c:10276
+#: cp/decl.c:6236
msgid "declaration of `%D' as multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:10279
+#: cp/decl.c:6239
msgid "multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:10308
+#: cp/decl.c:6267
#, fuzzy
msgid "return type specification for constructor invalid"
msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤ËÂФ¹¤ëÌá¤êÃͤη¿»ØÄê¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:10315
+#: cp/decl.c:6274
#, fuzzy
msgid "return type specification for destructor invalid"
msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤ËÂФ¹¤ëÌá¤êÃͤη¿»ØÄê¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:10321
+#: cp/decl.c:6280
#, fuzzy
msgid "operator `%T' declared to return `%T'"
msgstr "`operator delete' ¤ÎÌá¤ê·¿¤Ï `void' ¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cp/decl.c:10323
+#: cp/decl.c:6282
#, fuzzy
msgid "return type specified for `operator %T'"
msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤ËÂФ¹¤ëÌá¤êÃͤη¿»ØÄê¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:10491
+#: cp/decl.c:6425
msgid "destructors must be member functions"
msgstr "¥Ç¥¹¥È¥é¥¯¥¿¤Ï¥á¥ó¥Ð´Ø¿ô¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cp/decl.c:10510
+#: cp/decl.c:6444
msgid "destructor `%T' must match class name `%T'"
msgstr ""
-#: cp/decl.c:10539
-msgid "variable declaration is not allowed here"
-msgstr ""
-
-#: cp/decl.c:10566
-#, fuzzy
-msgid "invalid declarator"
-msgstr "̵¸ú¤ÊÀë¸À¤Ç¤¹"
-
-#: cp/decl.c:10617
+#: cp/decl.c:6507
msgid "declarator-id missing; using reserved word `%D'"
msgstr ""
-#: cp/decl.c:10674
+#: cp/decl.c:6561
#, fuzzy
msgid "type `%T' is not derived from type `%T'"
msgstr "È¿Éü»Ò `%s' ¤ÏÇÉÀ¸·¿¤Ç¤¹"
#. Parse error puts this typespec where
#. a declarator should go.
-#: cp/decl.c:10726
+#: cp/decl.c:6624
msgid "`%T' specified as declarator-id"
msgstr ""
-#: cp/decl.c:10728
+#: cp/decl.c:6626
msgid " perhaps you want `%T' for a constructor"
msgstr ""
@@ -15692,325 +14902,324 @@ msgstr ""
#. decl-specifier like in
#. std::allocator alloc;
#. Handle that gracefully.
-#: cp/decl.c:10750
+#: cp/decl.c:6648
#, fuzzy, c-format
msgid "invalid use of template-name '%E' in a declarator"
msgstr "¥Ý¥¤¥ó¥¿Àë¸À»Ò¤ËÉÔŬÀڤʷ¿½¤¾þ»Ò"
-#: cp/decl.c:10770
+#: cp/decl.c:6668
#, fuzzy
msgid "declaration of `%D' as non-function"
msgstr "`%s' ¤ÎÀë¸À¤Ï´Ø¿ô¤ÎÇÛÎó"
-#: cp/decl.c:10847
+#: cp/decl.c:6745
msgid "`bool' is now a keyword"
msgstr "`bool' ¤Ïº£¤ä¥­¡¼¥ï¡¼¥É¤Ç¤¹"
-#: cp/decl.c:10849
+#: cp/decl.c:6747
msgid "extraneous `%T' ignored"
msgstr ""
-#: cp/decl.c:10865 cp/decl.c:10910
+#: cp/decl.c:6763 cp/decl.c:6807
#, fuzzy
msgid "multiple declarations `%T' and `%T'"
msgstr "¥á¥½¥Ã¥É `%s' ¤ÎÀë¸À¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£"
-#: cp/decl.c:10878
+#: cp/decl.c:6776
msgid "ISO C++ does not support `long long'"
msgstr "ISO C++ ¤Ï `long long' ¤ò¼õ¤±Æþ¤ì¤Þ¤»¤ó"
-#: cp/decl.c:10983 cp/decl.c:10986
+#: cp/decl.c:6880 cp/decl.c:6883
#, fuzzy, c-format
msgid "ISO C++ forbids declaration of `%s' with no type"
msgstr "ISO C ¤Ï¥á¥ó¥Ð¤Î¤Ê¤¤¥á¥ó¥ÐÀë¸À¤ò¶Ø¤¸¤Þ¤¹"
-#. The implicit typename extension is deprecated and will be
-#. removed. Warn about its use now.
-#: cp/decl.c:10996
-msgid "`%T' is implicitly a typename"
-msgstr ""
-
-#: cp/decl.c:11032
+#: cp/decl.c:6914
#, c-format
msgid "short, signed or unsigned invalid for `%s'"
msgstr "short, Éä¹ç¤Ä¤­¤Þ¤¿¤ÏÉä¹ç¤Ê¤·¤Ï `%s' ¤Ë¤È¤Ã¤Æ̵¸ú¤Ç¤¹"
-#: cp/decl.c:11037
+#: cp/decl.c:6919
#, c-format
msgid "long and short specified together for `%s'"
msgstr "long ¤È short ¤¬ `%s' ¤ËÂФ·¤Æ°ì½ï¤Ë»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:11048
+#: cp/decl.c:6930
#, c-format
msgid "signed and unsigned given together for `%s'"
msgstr "Éä¹çÉÕ¤­¤ÈÉä¹ç̵¤·¤¬ `%s' ¤ËÂФ·¤Æ°ì½ï¤ËÍ¿¤¨¤é¤ì¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:11157
+#: cp/decl.c:7039
#, fuzzy
msgid "qualifiers are not allowed on declaration of `operator %T'"
msgstr "`operator delete' ¤ÎÀë¸ÀÆâ¤Ë¿¤¹¤®¤ë°ú¿ô"
-#: cp/decl.c:11179
+#: cp/decl.c:7061
#, fuzzy
msgid "member `%D' cannot be declared both virtual and static"
msgstr "Èó¥á¥ó¥Ð `%s' ¤ò `mutable' ¤È¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11188
+#: cp/decl.c:7070
#, fuzzy
msgid "`%T::%D' is not a valid declarator"
msgstr "`%s' ¤ÏÀë¸À¤Î»Ï¤Þ¤ê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl.c:11200
+#: cp/decl.c:7082
msgid "storage class specifiers invalid in parameter declarations"
msgstr "²¾°ú¿ôÀë¸À¤ÎÃæ¤Îµ­²±¥¯¥é¥¹»ØÄê»Ò¤Ï̵¸ú¤Ç¤¹"
-#: cp/decl.c:11204
+#: cp/decl.c:7086
msgid "typedef declaration invalid in parameter declaration"
msgstr "²¾°ú¿ôÀë¸À¤ÎÃæ¤Î typedef Àë¸À¤Ï̵¸ú¤Ç¤¹"
-#: cp/decl.c:11217
+#: cp/decl.c:7099
msgid "virtual outside class declaration"
msgstr "¥¯¥é¥¹Àë¸À¤Î³°Â¦¤Ç virtual »ØÄꤷ¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:11278
+#: cp/decl.c:7158
#, c-format
msgid "storage class specified for %s `%s'"
msgstr "%s ¤ËÂФ¹¤ëµ­²±¥¯¥é¥¹»ØÄê»Ò `%s'"
-#: cp/decl.c:11325
+#: cp/decl.c:7193
+#, c-format
+msgid "top-level declaration of `%s' specifies `auto'"
+msgstr "`%s' ¤Î¥È¥Ã¥×¥ì¥Ù¥ë¤ÎÀë¸À¤¬ `auto' ¤ò»ØÄꤷ¤Þ¤¹"
+
+#: cp/decl.c:7205
msgid "storage class specifiers invalid in friend function declarations"
msgstr "friend ´Ø¿ôÀë¸ÀÆâ¤Îµ­²±¥¯¥é¥¹»ØÄê»Ò¤Ï̵¸ú¤Ç¤¹"
-#: cp/decl.c:11495
+#: cp/decl.c:7370
msgid "destructor cannot be static member function"
msgstr "¥Ç¥¹¥È¥é¥¯¥¿¤òÀÅŪ¥á¥ó¥Ð´Ø¿ô¤È¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11498
+#: cp/decl.c:7373
#, fuzzy, c-format
msgid "destructors may not be `%s'"
msgstr "¥Ç¥¹¥È¥é¥¯¥¿¤Ï²¾°ú¿ô¤ò¼è¤ê¤Þ¤»¤ó"
-#: cp/decl.c:11519
+#: cp/decl.c:7394
msgid "constructor cannot be static member function"
msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤òÀÅŪ¥á¥ó¥Ð´Ø¿ô¤È¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11522
+#: cp/decl.c:7397
msgid "constructors cannot be declared virtual"
msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤Ï virtual Àë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11527
+#: cp/decl.c:7402
#, fuzzy, c-format
msgid "constructors may not be `%s'"
msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤Ï virtual Àë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11537
+#: cp/decl.c:7412
msgid "return value type specifier for constructor ignored"
msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤ËÂФ¹¤ëÌá¤êÃͤη¿»ØÄê¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:11556
+#: cp/decl.c:7431
#, c-format
msgid "can't initialize friend function `%s'"
msgstr "friend ´Ø¿ô `%s' ¤ò½é´ü²½¤Ç¤­¤Þ¤»¤ó"
#. Cannot be both friend and virtual.
-#: cp/decl.c:11560
+#: cp/decl.c:7435
msgid "virtual functions cannot be friends"
msgstr "²¾ÁÛ´Ø¿ô¤Ï friend ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11565
+#: cp/decl.c:7440
msgid "friend declaration not in class definition"
msgstr "friend Àë¸À¤¬¥¯¥é¥¹ÄêµÁ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl.c:11567
+#: cp/decl.c:7442
#, fuzzy, c-format
msgid "can't define friend function `%s' in a local class definition"
msgstr "friend Àë¸À¤¬¥¯¥é¥¹ÄêµÁ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl.c:11591
+#: cp/decl.c:7463
#, fuzzy
msgid "destructors may not have parameters"
msgstr "¥Ç¥¹¥È¥é¥¯¥¿¤Ï²¾°ú¿ô¤ò¼è¤ê¤Þ¤»¤ó"
-#: cp/decl.c:11622 cp/decl.c:11629
+#: cp/decl.c:7483 cp/decl.c:7490
#, fuzzy
msgid "cannot declare reference to `%#T'"
msgstr "»²¾È¤ò»²¾È¤È¤·¤ÆÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11623
+#: cp/decl.c:7484
#, fuzzy
msgid "cannot declare pointer to `%#T'"
msgstr "¥Ý¥¤¥ó¥¿¤ò»²¾È¤È¤·¤ÆÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11628
+#: cp/decl.c:7489
#, fuzzy
msgid "cannot declare pointer to `%#T' member"
msgstr "¥Ý¥¤¥ó¥¿¤ò»²¾È¤È¤·¤ÆÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11804
+#: cp/decl.c:7627
msgid "extra qualification `%T::' on member `%s' ignored"
msgstr ""
-#: cp/decl.c:11814
+#: cp/decl.c:7639
msgid "cannot declare member function `%T::%s' within `%T'"
msgstr ""
-#: cp/decl.c:11829
+#: cp/decl.c:7654
msgid "cannot declare member `%T::%s' within `%T'"
msgstr ""
-#: cp/decl.c:11908
+#: cp/decl.c:7734
msgid "data member may not have variably modified type `%T'"
msgstr ""
-#: cp/decl.c:11910
+#: cp/decl.c:7736
msgid "parameter may not have variably modified type `%T'"
msgstr ""
#. [dcl.fct.spec] The explicit specifier shall only be used in
#. declarations of constructors within a class definition.
-#: cp/decl.c:11918
+#: cp/decl.c:7744
msgid "only declarations of constructors can be `explicit'"
msgstr "`explicit' ¤Ë¤Ç¤­¤ë¤Î¤Ï¡¢¥³¥ó¥¹¥È¥é¥¯¥¿¤À¤±¤Ç¤¹"
-#: cp/decl.c:11926
+#: cp/decl.c:7752
#, c-format
msgid "non-member `%s' cannot be declared `mutable'"
msgstr "Èó¥á¥ó¥Ð `%s' ¤ò `mutable' ¤È¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11931
+#: cp/decl.c:7757
#, c-format
msgid "non-object member `%s' cannot be declared `mutable'"
msgstr "È󥪥֥¸¥§¥¯¥È¥á¥ó¥Ð `%s' ¤ò `mutable' ¤È¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11937
+#: cp/decl.c:7763
#, c-format
msgid "function `%s' cannot be declared `mutable'"
msgstr "´Ø¿ô `%s' ¤ò `mutable' ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11942
+#: cp/decl.c:7768
#, c-format
msgid "static `%s' cannot be declared `mutable'"
msgstr "static `%s' ¤ò mutable ¤È¤·¤ÆÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11947
+#: cp/decl.c:7773
#, c-format
msgid "const `%s' cannot be declared `mutable'"
msgstr "const `%s' ¤ò `mutable' ¤È¤·¤ÆÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:11960
+#: cp/decl.c:7786
#, fuzzy
msgid "template-id `%D' used as a declarator"
msgstr "²¾°ú¿ô `%s' ¾¯¤·Á°Êý¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:11981
+#: cp/decl.c:7807
msgid "ISO C++ forbids nested type `%D' with same name as enclosing class"
msgstr ""
-#: cp/decl.c:12030
-msgid "typedef name may not be class-qualified"
+#: cp/decl.c:7815
+msgid "%Jtypedef name may not be a nested-name-specifier"
msgstr ""
-#: cp/decl.c:12038
+#: cp/decl.c:7861
#, fuzzy
-msgid "invalid type qualifier for non-member function type"
+msgid "%Jinvalid type qualifier for non-member function type"
msgstr "Èó¥á¥ó¥Ð´Ø¿ô¤Ç¤Î `this' ¤Î»ÈÍѤÏ̵¸ú¤Ç¤¹"
-#: cp/decl.c:12101
+#: cp/decl.c:7925
#, fuzzy
msgid "type qualifiers specified for friend class declaration"
msgstr "°ì¤Ä¤Î¶õ¤ÎÀë¸ÀÃæ¤Ë¡¢Æó¤Ä¤Î·¿¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:12106
+#: cp/decl.c:7930
#, fuzzy
msgid "`inline' specified for friend class declaration"
msgstr "¥¯¥é¥¹Àë¸À¤Î³°Â¦¤Ç virtual »ØÄꤷ¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:12114
+#: cp/decl.c:7938
#, fuzzy
msgid "template parameters cannot be friends"
msgstr "Ê£»¨¤Ê¥Ñ¥é¥á¥¿¤ò¤â¤Ä´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:12116
+#: cp/decl.c:7940
msgid "friend declaration requires class-key, i.e. `friend class %T::%D'"
msgstr ""
-#: cp/decl.c:12120
+#: cp/decl.c:7944
#, fuzzy
msgid "friend declaration requires class-key, i.e. `friend %#T'"
msgstr "friend Àë¸À¤¬¥¯¥é¥¹ÄêµÁ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl.c:12134
+#: cp/decl.c:7957
#, fuzzy
msgid "trying to make class `%T' a friend of global scope"
msgstr "¥¯¥é¥¹ `%s' ¤òÂç°è¥¹¥³¡¼¥×¤Î friend ¤Ë¤·¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:12145
+#: cp/decl.c:7968
#, fuzzy
msgid "invalid qualifiers on non-member function type"
msgstr "Èó¥á¥ó¥Ð´Ø¿ô¤Ç¤Î `this' ¤Î»ÈÍѤÏ̵¸ú¤Ç¤¹"
-#: cp/decl.c:12164
+#: cp/decl.c:7987
#, fuzzy
msgid "abstract declarator `%T' used as declaration"
msgstr "`%s' ¤ÎÀë¸À¤Ï¥°¥í¡¼¥Ð¥ëÀë¸À¤òʤ¤¤±£¤·¤Þ¤¹"
-#: cp/decl.c:12176
+#: cp/decl.c:7999
msgid "unnamed variable or field declared void"
msgstr "̵̾ÊÑ¿ô¤ä¥Õ¥£¡¼¥ë¥É¤¬ void ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:12185
+#: cp/decl.c:8008
msgid "variable or field declared void"
msgstr "ÊÑ¿ô¤Þ¤¿¤Ï¥Õ¥£¡¼¥ë¥É¤¬ void ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:12195
+#: cp/decl.c:8018
msgid "cannot use `::' in parameter declaration"
msgstr "²¾°ú¿ôÀë¸À¤ÎÃæ¤Ç `::' ¤ò»È¤¨¤Þ¤»¤ó"
#. Something like struct S { int N::j; };
-#: cp/decl.c:12234
+#: cp/decl.c:8063
#, fuzzy
msgid "invalid use of `::'"
msgstr "`restrict' ¤ÎÍÑË¡¤¬ÉÔŬÀڤǤ¹"
-#: cp/decl.c:12246
+#: cp/decl.c:8075
#, fuzzy
msgid "function `%D' cannot be declared friend"
msgstr "´Ø¿ô `%s' ¤ò `mutable' ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:12258
+#: cp/decl.c:8087
msgid "can't make `%D' into a method -- not in a class"
msgstr ""
-#: cp/decl.c:12267
+#: cp/decl.c:8096
#, fuzzy
msgid "function `%D' declared virtual inside a union"
msgstr "Îΰè `%s' ¤Ï´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:12279
+#: cp/decl.c:8108
msgid "`%D' cannot be declared virtual, since it is always static"
msgstr ""
-#: cp/decl.c:12355
+#: cp/decl.c:8185
#, fuzzy
msgid "field `%D' has incomplete type"
msgstr "Îΰè `%s' ¤ÏÉÔ´°Á´¤Ê·¿¤Ç¤¹"
-#: cp/decl.c:12357
+#: cp/decl.c:8187
#, fuzzy
msgid "name `%T' has incomplete type"
msgstr "²¾°ú¿ô `%s' ¤ÏÉÔ´°Á´·¿¤Ç¤¹"
-#: cp/decl.c:12366
+#: cp/decl.c:8196
#, fuzzy
msgid " in instantiation of template `%T'"
msgstr "%s: `%s' ¤Î½é´ü²½:\n"
-#: cp/decl.c:12376
+#: cp/decl.c:8206
#, c-format
msgid "`%s' is neither function nor member function; cannot be declared friend"
msgstr "`%s' ¤Ï´Ø¿ô¤Ç¤â¥á¥ó¥Ð´Ø¿ô¤Ç¤â¤¢¤ê¤Þ¤»¤ó -- friend ¤È¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:12387
+#: cp/decl.c:8217
msgid "member functions are implicitly friends of their class"
msgstr "¥á¥ó¥Ð´Ø¿ô¤Ï°ÅÌÛŪ¤Ë¤½¤Î¥¯¥é¥¹¤Î friend ¤Ç¤¹"
@@ -16026,105 +15235,100 @@ msgstr "¥á¥ó¥Ð´Ø¿ô¤Ï°ÅÌÛŪ¤Ë¤½¤Î¥¯¥é¥¹¤Î friend ¤Ç¤¹"
#. the rest of the compiler does not correctly
#. handle the initialization unless the member is
#. static so we make it static below.
-#: cp/decl.c:12434
+#: cp/decl.c:8258
#, fuzzy
msgid "ISO C++ forbids initialization of member `%D'"
msgstr "ISO C++ ¤Ï new ¼°¤Î½é´ü²½¤Ç¤Î `=' ¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/decl.c:12436
+#: cp/decl.c:8260
msgid "making `%D' static"
msgstr ""
-#: cp/decl.c:12460
+#: cp/decl.c:8283
msgid "ISO C++ forbids static data member `%D' with same name as enclosing class"
msgstr ""
-#: cp/decl.c:12501
+#: cp/decl.c:8323
#, c-format
msgid "storage class `auto' invalid for function `%s'"
msgstr "´Ø¿ô `%s' ¤ËÂФ¹¤ëµ­²±¥¯¥é¥¹ `auto' ¤Ï̵¸ú¤Ç¤¹"
-#: cp/decl.c:12503
+#: cp/decl.c:8325
#, c-format
msgid "storage class `register' invalid for function `%s'"
msgstr "´Ø¿ô `%s' ¤ËÂФ¹¤ëµ­²±¥¯¥é¥¹ `register' ¤Ï̵¸ú¤Ç¤¹"
-#: cp/decl.c:12505
+#: cp/decl.c:8327
#, fuzzy, c-format
msgid "storage class `__thread' invalid for function `%s'"
msgstr "´Ø¿ô `%s' ¤ËÂФ¹¤ëµ­²±¥¯¥é¥¹ `auto' ¤Ï̵¸ú¤Ç¤¹"
-#: cp/decl.c:12516
+#: cp/decl.c:8338
#, c-format
msgid "storage class `static' invalid for function `%s' declared out of global scope"
msgstr "Âç°è¥¹¥³¡¼¥×³°¤Î´Ø¿ô `%s' ¤ËÂФ¹¤ëµ­²±¥¯¥é¥¹ `static' ¤Ï̵¸ú¤Ç¤¹"
-#: cp/decl.c:12518
+#: cp/decl.c:8340
#, c-format
msgid "storage class `inline' invalid for function `%s' declared out of global scope"
msgstr "Âç°è¥¹¥³¡¼¥×³°¤Î´Ø¿ô `%s' ¤ËÂФ¹¤ëµ­²±¥¯¥é¥¹ `inline' ¤Ï̵¸ú¤Ç¤¹"
-#: cp/decl.c:12525
+#: cp/decl.c:8347
#, c-format
msgid "virtual non-class function `%s'"
msgstr "virtual ¤ÊÈ󥯥饹´Ø¿ô `%s'"
-#: cp/decl.c:12554
+#: cp/decl.c:8377
#, fuzzy
msgid "cannot declare member function `%D' to have static linkage"
msgstr "`::main' ¤ò static ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
#. FIXME need arm citation
-#: cp/decl.c:12560
+#: cp/decl.c:8383
msgid "cannot declare static function inside another function"
msgstr "¾¤Î´Ø¿ôÆâ¤Ç static ´Ø¿ô¤òÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:12588
+#: cp/decl.c:8411
msgid "`static' may not be used when defining (as opposed to declaring) a static data member"
msgstr ""
-#: cp/decl.c:12594
+#: cp/decl.c:8417
#, fuzzy
msgid "static member `%D' declared `register'"
msgstr "`register' ¤ÈÀë¸À¤µ¤ì¤¿ÇÛÎó¤Ëź»ú¤ò¤Ä¤±¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:12599
+#: cp/decl.c:8422
msgid "cannot explicitly declare member `%#D' to have extern linkage"
msgstr ""
-#: cp/decl.c:12774
+#: cp/decl.c:8564
#, fuzzy
msgid "default argument for `%#D' has type `%T'"
msgstr "`%s' ¤ÎÂè°ì°ú¿ô¤Ï `int' ¤È¤¹¤Ù¤­¤Ç¤¹"
-#: cp/decl.c:12777
+#: cp/decl.c:8567
msgid "default argument for parameter of type `%T' has type `%T'"
msgstr ""
-#: cp/decl.c:12794
+#: cp/decl.c:8584
msgid "default argument `%E' uses local variable `%D'"
msgstr ""
-#: cp/decl.c:12839
+#: cp/decl.c:8628
#, fuzzy, c-format
msgid "invalid string constant `%E'"
msgstr "ÉÔÀµ¤Êʸ»úÎóÄê¿ô¤Ç¤¹"
-#: cp/decl.c:12841
+#: cp/decl.c:8630
msgid "invalid integer constant in parameter list, did you forget to give parameter name?"
msgstr "²¾°ú¿ô¥ê¥¹¥È¤Ë̵¸ú¤ÊÀ°¿ôÄê¿ô¤¬¤¢¤ê¤Þ¤¹¡£²¾°ú¿ô̾¤òÍ¿¤¨Ëº¤ì¤¿¤Î¤Ç¤Ï¡©"
-#: cp/decl.c:12879
+#: cp/decl.c:8668
#, fuzzy
msgid "parameter `%D' invalidly declared method type"
msgstr "¥Ñ¥é¥á¥¿¤Ï¥á¥½¥Ã¥É¤Î·¿¤òÉÔÀµ¤ËÀë¸À¤·¤Þ¤·¤¿"
-#: cp/decl.c:12885
-#, fuzzy
-msgid "parameter `%D' invalidly declared offset type"
-msgstr "¥Ñ¥é¥á¥¿¤¬¥ª¥Õ¥»¥Ã¥È¤Î·¿¤òÉÔÀµ¤ËÀë¸À¤·¤Þ¤·¤¿"
-
-#: cp/decl.c:12909
+#: cp/decl.c:8692
msgid "parameter `%D' includes %s to array of unknown bound `%T'"
msgstr ""
@@ -16143,558 +15347,382 @@ msgstr ""
#. or implicitly defined), there's no need to worry about their
#. existence. Theoretically, they should never even be
#. instantiated, but that's hard to forestall.
-#: cp/decl.c:13071
+#: cp/decl.c:8851
msgid "invalid constructor; you probably meant `%T (const %T&)'"
msgstr ""
-#: cp/decl.c:13222
+#: cp/decl.c:8991
#, fuzzy
msgid "`%D' must be a nonstatic member function"
msgstr "`this' ¤ÏÀÅŪ¥á¥ó¥Ð´Ø¿ô¤«¤é»ÈÍѤǤ­¤Þ¤»¤ó"
-#: cp/decl.c:13228
+#: cp/decl.c:8997
msgid "`%D' must be either a non-static member function or a non-member function"
msgstr ""
-#: cp/decl.c:13245
+#: cp/decl.c:9014
msgid "`%D' must have an argument of class or enumerated type"
msgstr ""
-#: cp/decl.c:13277
+#: cp/decl.c:9049
#, c-format
msgid "conversion to %s%s will never use a type conversion operator"
msgstr "%s%s ¤Ø¤ÎÊÑ´¹¤Ç·¿ÊÑ´¹±é»»»Ò¤¬ÍøÍѤµ¤ì¤ë¤³¤È¤Ï·è¤·¤Æ¤¢¤ê¤Þ¤»¤ó"
#. 13.4.0.3
-#: cp/decl.c:13284
+#: cp/decl.c:9056
#, fuzzy
msgid "ISO C++ prohibits overloading operator ?:"
msgstr "ISO C++ ¤Ï̵̾¹½Â¤ÂΤò¶Ø»ß¤·¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:13334
+#: cp/decl.c:9106
msgid "postfix `%D' must take `int' as its argument"
msgstr ""
-#: cp/decl.c:13338
+#: cp/decl.c:9110
msgid "postfix `%D' must take `int' as its second argument"
msgstr ""
-#: cp/decl.c:13345
+#: cp/decl.c:9117
#, fuzzy
msgid "`%D' must take either zero or one argument"
msgstr "`%s' ¤Ï 0 ¤« 2 ¸Ä¤Î°ú¿ô¤·¤«¤È¤ê¤Þ¤»¤ó"
-#: cp/decl.c:13347
+#: cp/decl.c:9119
#, fuzzy
msgid "`%D' must take either one or two arguments"
msgstr "`%s' ¤Ï 0 ¤« 2 ¸Ä¤Î°ú¿ô¤·¤«¤È¤ê¤Þ¤»¤ó"
-#: cp/decl.c:13368
+#: cp/decl.c:9140
msgid "prefix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:13374
+#: cp/decl.c:9146
msgid "postfix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:13383
+#: cp/decl.c:9155
msgid "`%D' must take `void'"
msgstr ""
-#: cp/decl.c:13385 cp/decl.c:13393
+#: cp/decl.c:9157 cp/decl.c:9165
#, fuzzy
msgid "`%D' must take exactly one argument"
msgstr "`%s' ¤Ï 0 ¤« 2 ¸Ä¤Î°ú¿ô¤·¤«¤È¤ê¤Þ¤»¤ó"
-#: cp/decl.c:13395
+#: cp/decl.c:9167
#, fuzzy
msgid "`%D' must take exactly two arguments"
msgstr "`%s' ¤Ï 0 ¤« 2 ¸Ä¤Î°ú¿ô¤·¤«¤È¤ê¤Þ¤»¤ó"
-#: cp/decl.c:13403
+#: cp/decl.c:9175
msgid "user-defined `%D' always evaluates both arguments"
msgstr ""
-#: cp/decl.c:13417
+#: cp/decl.c:9189
msgid "`%D' should return by value"
msgstr ""
-#: cp/decl.c:13429 cp/decl.c:13432
+#: cp/decl.c:9201 cp/decl.c:9204
msgid "`%D' cannot have default arguments"
msgstr ""
-#: cp/decl.c:13475
+#: cp/decl.c:9264
msgid "using typedef-name `%D' after `%s'"
msgstr ""
-#: cp/decl.c:13481
+#: cp/decl.c:9270
#, fuzzy
msgid "using template type parameter `%T' after `%s'"
msgstr "%d ÈÖÌܤΰú¿ô¤¬ `%s' ¤Î·¿¤È¸ß´¹À­¤¬¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl.c:13542
+#: cp/decl.c:9278
#, fuzzy
-msgid "`%s %T' declares a new type at namespace scope"
-msgstr "`%s %s' ¤Ï²¾°ú¿ô¥ê¥¹¥ÈÆâ¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
+msgid "`%T' referred to as `%s'"
+msgstr "`%s' ¤Ï `%s' ¤Ë±þÅú¤·¤Þ¤»¤ó"
-#: cp/decl.c:13545
-msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
+#: cp/decl.c:9284
+msgid "`%T' referred to as enum"
msgstr ""
-#: cp/decl.c:13663
+#. If a class template appears as elaborated type specifier
+#. without a template header such as:
+#.
+#. template <class T> class C {};
+#. void f(class C); // No template header here
+#.
+#. then the required template argument is missing.
+#: cp/decl.c:9299
+#, fuzzy
+msgid "template argument required for `%s %T'"
+msgstr "¥ì¥¸¥¹¥¿Ì¾¤¬ `%s' ÍѤ˻ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó"
+
+#: cp/decl.c:9445
#, fuzzy
msgid "use of enum `%#D' without previous declaration"
msgstr "`%s' ¤Î¥»¥¯¥·¥ç¥ó¤ÏÁ°Êý¤Ç¤ËÀë¸À¤µ¤ì¤¿¤â¤Î¤È¾×Æͤ·¤Þ¤¹"
-#: cp/decl.c:13749
+#: cp/decl.c:9530
msgid "derived union `%T' invalid"
msgstr ""
-#: cp/decl.c:13795
+#: cp/decl.c:9583
#, fuzzy
msgid "base type `%T' fails to be a struct or class type"
msgstr "`%s' ¤ò typedef ¤Þ¤¿¤ÏÁȤ߹þ¤ß·¿¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl.c:13805
-#, fuzzy
-msgid "base class `%T' has incomplete type"
-msgstr "Îΰè `%s' ¤ÏÉÔ´°Á´¤Ê·¿¤Ç¤¹"
-
-#: cp/decl.c:13813
+#: cp/decl.c:9591
msgid "recursive type `%T' undefined"
msgstr ""
-#: cp/decl.c:13815
+#: cp/decl.c:9593
#, fuzzy
msgid "duplicate base type `%T' invalid"
msgstr "½ÅÊ£¤·¤¿ case ¤ÎÃÍ"
-#: cp/decl.c:13926
+#: cp/decl.c:9671
+msgid "Java class '%T' cannot have multiple bases"
+msgstr ""
+
+#: cp/decl.c:9673
+msgid "Java class '%T' cannot have virtual bases"
+msgstr ""
+
+#: cp/decl.c:9713
#, fuzzy
msgid "multiple definition of `%#T'"
msgstr "`%s' ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:13927
+#: cp/decl.c:9714
#, fuzzy
-msgid "previous definition here"
+msgid "%Jprevious definition here"
msgstr "`%s' ¤ÏÁ°¤Ë¤³¤³¤ÇÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl.c:14030
+#. DR 377
+#.
+#. IF no integral type can represent all the enumerator values, the
+#. enumeration is ill-formed.
+#: cp/decl.c:9849
msgid "no integral type can represent all of the enumerator values for `%T'"
msgstr ""
-#: cp/decl.c:14106
+#: cp/decl.c:9939
#, fuzzy
msgid "enumerator value for `%D' not integer constant"
msgstr "`%s' ¤ÎÎóµóÃͤ¬À°¿ôÄê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl.c:14126
+#: cp/decl.c:9959
#, fuzzy
msgid "overflow in enumeration values at `%D'"
msgstr "ÎóµóÃͤ¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼"
-#: cp/decl.c:14195
+#: cp/decl.c:10028
#, fuzzy
msgid "return type `%#T' is incomplete"
msgstr "Ìá¤êÃͤη¿¤¬ÉÔ´°Á´·¿¤Ç¤¹"
-#: cp/decl.c:14309
-#, fuzzy
-msgid "semicolon missing after declaration of `%#T'"
-msgstr "%s Àë¸À¤Î¸å¤í¤Î¥»¥ß¥³¥í¥ó¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-
-#: cp/decl.c:14330
+#: cp/decl.c:10148
msgid "return type for `main' changed to `int'"
msgstr "`main' ¤Î return ·¿¤Ï `int' ¤ËÊѤ¨¤Þ¤·¤¿"
-#: cp/decl.c:14361
+#: cp/decl.c:10178
#, fuzzy
msgid "`%D' implicitly declared before its definition"
msgstr "`%s' ¤Ï¤½¤ÎÄêµÁ¤è¤ê¤â¸å¤Ç inline Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:14383 cp/typeck.c:6314
+#: cp/decl.c:10200 cp/typeck.c:6011
msgid "`operator=' should return a reference to `*this'"
msgstr ""
-#: cp/decl.c:14643
+#: cp/decl.c:10472
#, fuzzy
msgid "parameter `%D' declared void"
msgstr "²¾°ú¿ô `%s' ¤¬ void ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: cp/decl.c:15130
+#: cp/decl.c:10938
+#, fuzzy
+msgid "invalid member function declaration"
+msgstr "̵¸ú¤ÊÀë¸À¤Ç¤¹"
+
+#: cp/decl.c:10955
msgid "`%D' is already defined in class `%T'"
msgstr ""
-#: cp/decl.c:15348
+#: cp/decl.c:11168
#, fuzzy
msgid "static member function `%#D' declared with type qualifiers"
msgstr "¥Í¥¹¥È¤·¤¿´Ø¿ô `%s' ¤Ï `extern' ¤ËÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl2.c:153
+#: cp/decl2.c:143
#, fuzzy, c-format
msgid "duplicate type qualifiers in %s declaration"
msgstr "°ì¤Ä¤ÎÀë¸À¤ËÊ£¿ô¤Î·¿¤¬¤¢¤ê¤Þ¤¹"
-#: cp/decl2.c:192
-msgid "template `%#D' instantiated in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:198
-msgid "template `%#D' defined in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:365
+#: cp/decl2.c:316
msgid "name missing for member function"
msgstr "¥á¥ó¥Ð´Ø¿ô¤Î̾Á°¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#. Something has gone very wrong. Assume we are mistakenly reducing
-#. an expression instead of a declaration.
-#: cp/decl2.c:428
-msgid "parser may be lost: is there a '{' missing somewhere?"
-msgstr "¹½Ê¸²òÀϴ郎Ì»Ҥˤʤ俤褦¤Ç¤¹: ¤É¤³¤«¤Ç '{' ¤ò˺¤ì¤Æ¤¤¤ë¤Î¤Ç¤Ï¡©"
-
-#: cp/decl2.c:459 cp/decl2.c:473
+#: cp/decl2.c:408 cp/decl2.c:422
msgid "ambiguous conversion for array subscript"
msgstr "ÇÛÎó¤Îź»ú¤ËÂФ¹¤ëÛ£Ëæ¤ÊÊÑ´¹"
-#: cp/decl2.c:467
+#: cp/decl2.c:416
#, fuzzy
msgid "invalid types `%T[%T]' for array subscript"
msgstr "ÇÛÎó¤Îź»ú¤ËÂФ¹¤ëÛ£Ëæ¤ÊÊÑ´¹"
-#: cp/decl2.c:515
+#: cp/decl2.c:464
msgid "type `%#T' argument given to `delete', expected pointer"
msgstr ""
-#: cp/decl2.c:523
+#: cp/decl2.c:472
msgid "anachronistic use of array size in vector delete"
msgstr "¥Ù¥¯¥È¥ë¤Î delete ¤ÇÇÛÎó¥µ¥¤¥º¤ò»È¤¦¤Î¤ÏÁ°»þÂåŪ¤Ç¤¹"
-#: cp/decl2.c:533
+#: cp/decl2.c:482
msgid "cannot delete a function. Only pointer-to-objects are valid arguments to `delete'"
msgstr "´Ø¿ô¤Ï delete ¤Ç¤­¤Þ¤»¤ó¡£ ¥ª¥Ö¥¸¥§¥¯¥È¤Ø¤Î¥Ý¥¤¥ó¥¿¤À¤±¤¬ `delete' °ú¿ô¤È¤·¤ÆÍ­¸ú¤Ç¤¹"
-#: cp/decl2.c:540
+#: cp/decl2.c:489
#, fuzzy
msgid "deleting `%T' is undefined"
msgstr "`%s' ¤Ç¤Î±é»»¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¤È»×¤ï¤ì¤Þ¤¹"
-#: cp/decl2.c:548
+#: cp/decl2.c:497
msgid "deleting array `%#D'"
msgstr ""
#. 14.5.2.2 [temp.mem]
#.
#. A local class shall not have member templates.
-#: cp/decl2.c:582
+#: cp/decl2.c:530
msgid "invalid declaration of member template `%#D' in local class"
msgstr ""
-#: cp/decl2.c:591
+#: cp/decl2.c:539
#, fuzzy
msgid "invalid use of `virtual' in template declaration of `%#D'"
msgstr "ÉÔ´°Á´¤Ê typedef `%s' ¤Î»ÈÍѤÏÉÔŬÀڤǤ¹"
-#: cp/decl2.c:601 cp/pt.c:2745
+#: cp/decl2.c:549 cp/pt.c:2830
#, fuzzy
msgid "template declaration of `%#D'"
msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/decl2.c:651
+#: cp/decl2.c:598
msgid "Java method '%D' has non-Java return type `%T'"
msgstr ""
-#: cp/decl2.c:660
+#: cp/decl2.c:614
msgid "Java method '%D' has non-Java parameter type `%T'"
msgstr ""
-#: cp/decl2.c:746
+#: cp/decl2.c:705
msgid "prototype for `%#D' does not match any in class `%T'"
msgstr ""
-#: cp/decl2.c:828
+#: cp/decl2.c:784
msgid "local class `%#T' shall not have static data member `%#D'"
msgstr ""
-#: cp/decl2.c:836
+#: cp/decl2.c:792
msgid "initializer invalid for static member with constructor"
msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤ÎÀÅŪ¥á¥ó¥Ð½é´ü²½»Ò¤Ï̵¸ú¤Ç¤¹"
-#: cp/decl2.c:839
+#: cp/decl2.c:795
msgid "(an out of class initialization is required)"
msgstr "(¥¯¥é¥¹³°¤Ç¤Î½é´ü²½¤òɬÍפȤ·¤Þ¤¹)"
-#: cp/decl2.c:898
-#, fuzzy
-msgid "invalid data member initialization"
-msgstr "̵¸ú¤Ê `#pragma implementation'"
-
-#: cp/decl2.c:901
-msgid "(use `=' to initialize static data members)"
-msgstr ""
-
-#: cp/decl2.c:947
+#: cp/decl2.c:878
msgid "member `%D' conflicts with virtual function table field name"
msgstr ""
-#: cp/decl2.c:967
+#: cp/decl2.c:895
msgid "`%D' is already defined in `%T'"
msgstr ""
-#: cp/decl2.c:1014
+#: cp/decl2.c:942
msgid "field initializer is not constant"
msgstr "¥Õ¥£¡¼¥ë¥É½é´üÀßÄê»Ò¤¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl2.c:1038
+#: cp/decl2.c:970
msgid "`asm' specifiers are not permitted on non-static data members"
msgstr ""
-#: cp/decl2.c:1090
+#: cp/decl2.c:1020
#, fuzzy
msgid "cannot declare `%D' to be a bit-field type"
msgstr "`::main' ¤ò template ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl2.c:1100
+#: cp/decl2.c:1030
#, fuzzy
msgid "cannot declare bit-field `%D' with function type"
msgstr "´Ø¿ô·¿¤ËÂФ·¤Æ new ¤òŬÍѤǤ­¤Þ¤»¤ó"
-#: cp/decl2.c:1107
+#: cp/decl2.c:1037
msgid "`%D' is already defined in the class %T"
msgstr ""
-#: cp/decl2.c:1114
+#: cp/decl2.c:1044
#, fuzzy
msgid "static member `%D' cannot be a bit-field"
msgstr "static `%s' ¤ò mutable ¤È¤·¤ÆÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/decl2.c:1201
+#: cp/decl2.c:1103
#, fuzzy
msgid "initializer specified for non-member function `%D'"
msgstr "½é´ü²½»Ò¥ê¥¹¥È¤ÏÈó¥á¥ó¥Ð´Ø¿ô¤Ç¤Ï»È¤¨¤Þ¤»¤ó"
-#: cp/decl2.c:1205
+#: cp/decl2.c:1107
#, fuzzy
msgid "invalid initializer for virtual method `%D'"
msgstr "̵¸ú¤Ê¥Ó¥Ã¥ÈÎó½é´ü²½»Ò¤Ç¤¹"
-#: cp/decl2.c:1319
+#: cp/decl2.c:1154
msgid "anonymous struct not inside named type"
msgstr "̵̾¹½Â¤ÂΤ¬Ì¾Á°¤Ä¤­·¿¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl2.c:1415
+#: cp/decl2.c:1224
msgid "namespace-scope anonymous aggregates must be static"
msgstr "anonumous ̾Á°¶õ´Ö¤Î½¸¹çÂÎ¤Ï static ¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cp/decl2.c:1428
-msgid "anonymous aggregate with no members"
+#: cp/decl2.c:1231
+#, fuzzy
+msgid "anonymous union with no members"
msgstr "̵̾¶¦ÍÑÂΤ˥á¥ó¥Ð¤¬¤¢¤ê¤Þ¤»¤ó"
-#: cp/decl2.c:1497
+#: cp/decl2.c:1265
#, fuzzy
msgid "`operator new' must return type `%T'"
msgstr "`operator delete' ¤ÎÌá¤ê·¿¤Ï `void' ¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cp/decl2.c:1505
+#: cp/decl2.c:1273
#, fuzzy
msgid "`operator new' takes type `size_t' (`%T') as first parameter"
msgstr "`operator new' ¤ÏÂè°ì°ú¿ô¤È¤·¤Æ `size_t' ¤ò¤È¤ê¤Þ¤¹"
-#: cp/decl2.c:1532
+#: cp/decl2.c:1299
#, fuzzy
msgid "`operator delete' must return type `%T'"
msgstr "`operator delete' ¤ÎÌá¤ê·¿¤Ï `void' ¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cp/decl2.c:1540
+#: cp/decl2.c:1307
#, fuzzy
msgid "`operator delete' takes type `%T' as first parameter"
msgstr "`operator delete' ¤ÏÂè°ì°ú¿ô¤È¤·¤Æ `void *' ·¿¤ò¤È¤ê¤Þ¤¹"
-#. Overflow occurred. That means there are at least 4 billion
-#. initialization functions.
-#: cp/decl2.c:2282
-msgid "too many initialization functions required"
-msgstr "ɬÍפȤµ¤ì¤ë½é´ü²½´Ø¿ô¤Î¿ô¤¬Â¿¤¹¤®¤Þ¤¹"
-
-#: cp/decl2.c:3006
+#: cp/decl2.c:2814
#, fuzzy
msgid "inline function `%D' used but never defined"
msgstr "`%s' ¤¬»È¤ï¤ì¤Þ¤·¤¿¤¬Ì¤ÄêµÁ¤Ç¤¹"
-#: cp/decl2.c:3135
-msgid "use of old-style cast"
-msgstr "¸Å¤¤¥¹¥¿¥¤¥ë¤Î¥­¥ã¥¹¥È¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹"
-
-#: cp/decl2.c:3860
-#, fuzzy
-msgid "use of `%D' is ambiguous"
-msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤Ï¤¢¤¤¤Þ¤¤¤Ç¤¹\n"
-
-#: cp/decl2.c:3861
-msgid " first declared as `%#D' here"
-msgstr ""
-
-#: cp/decl2.c:3864
-msgid " also declared as `%#D' here"
-msgstr ""
-
-#: cp/decl2.c:3879
-msgid "`%D' denotes an ambiguous type"
-msgstr ""
-
-#: cp/decl2.c:3880
-#, fuzzy
-msgid " first type here"
-msgstr " ¤³¤³¤«¤é"
-
-#: cp/decl2.c:3881
-msgid " other type here"
-msgstr ""
-
-#: cp/decl2.c:3982
-#, fuzzy
-msgid "declaration of `%D' not in a namespace surrounding `%D'"
-msgstr "`%s' ¤ÎÀë¸À¤Ë¤è¤ê `this' ¤Î¥á¥ó¥Ð¤¬Ê¤¤¤±£¤µ¤ì¤Þ¤¹"
-
-#: cp/decl2.c:4016
-msgid "`%D' should have been declared inside `%D'"
-msgstr ""
-
-#: cp/decl2.c:4152
-#, fuzzy
-msgid "`%D' is not a function,"
-msgstr "`%s' ¤ÏÄ̾ï¤Ï´Ø¿ô¤Ç¤¹"
-
-#: cp/decl2.c:4153
-#, fuzzy
-msgid " conflict with `%D'"
-msgstr "`%s' ¤Ï `-g%s' ¤È¶¥¹ç¤¹¤ë¤¿¤á̵»ë¤µ¤ì¤Þ¤·¤¿"
-
-#. The parser did not find it, so it's not there.
-#: cp/decl2.c:4473
-#, fuzzy
-msgid "unknown namespace `%D'"
-msgstr "ÉÔÌÀ¤Ê #pragma namespace %s ¤Ç¤¹"
-
-#: cp/decl2.c:4507 cp/decl2.c:4794
-msgid "`%T' is not a namespace"
-msgstr ""
-
-#: cp/decl2.c:4509
-msgid "`%D' is not a namespace"
-msgstr ""
-
-#: cp/decl2.c:4518
-msgid "a using-declaration cannot specify a template-id. Try `using %D'"
-msgstr ""
-
-#: cp/decl2.c:4532
-#, fuzzy
-msgid "namespace `%D' not allowed in using-declaration"
-msgstr "`%s' ¤ÏÀë¸À¤Î»Ï¤Þ¤ê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-
-#: cp/decl2.c:4561
-#, fuzzy
-msgid "`%D' not declared"
-msgstr "`%s' ¤ÏÁ°¤Ë¤³¤³¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-
-#. If the OLD_FN was really declared, the
-#. declarations don't match.
-#: cp/decl2.c:4573 cp/decl2.c:4615 cp/decl2.c:4640
-msgid "`%D' is already declared in this scope"
-msgstr ""
-
-#: cp/decl2.c:4646
-msgid "using declaration `%D' introduced ambiguous type `%T'"
-msgstr ""
-
-#: cp/decl2.c:4740
-msgid "using-declaration for non-member at class scope"
-msgstr ""
-
-#: cp/decl2.c:4746
-#, fuzzy
-msgid "using-declaration for destructor"
-msgstr "¥á¥½¥Ã¥É `%s' ¤ÎÀë¸À¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£"
-
-#: cp/decl2.c:4752
-msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
-msgstr ""
-
-#: cp/decl2.c:4788
-#, fuzzy
-msgid "namespace `%T' undeclared"
-msgstr "²¾°ú¿ô `%s' ¤¬ void ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-
-#: cp/decl2.c:4817
+#: cp/decl2.c:2960
#, fuzzy
msgid "default argument missing for parameter %P of `%+#D'"
msgstr "²¾°ú¿ô¥ê¥¹¥È¤«¤é¤Î²¾°ú¿ô̾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: cp/decl2.c:4941
-msgid "extra qualification `%T::' on member `%D' ignored"
-msgstr ""
-
-#: cp/decl2.c:4945
-msgid "`%T' does not have a class or union named `%D'"
-msgstr ""
-
-#: cp/decl2.c:4963
-#, fuzzy
-msgid "`%T' is not a class or union type"
-msgstr "ISO C ¤Ï¶¦ÍÑÂη¿¤Ø¤Î¥­¥ã¥¹¥È¤ò¶Ø¤¸¤Þ¤¹"
-
-#: cp/decl2.c:4977
-#, fuzzy
-msgid "template argument is required for `%T'"
-msgstr "¥ì¥¸¥¹¥¿Ì¾¤¬ `%s' ÍѤ˻ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó"
-
-#: cp/decl2.c:4995
-msgid "declaration of `%D' in `%D' which does not enclose `%D'"
-msgstr ""
-
-#: cp/error.c:35
-#, c-format
-msgid "`%s' not supported by %s"
-msgstr "`%s' ¤Ï %s ¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-
-#: cp/error.c:571
-#, c-format
-msgid "<anonymous %s>"
-msgstr "<̵̾ %s>"
-
-#: cp/error.c:810
-#, c-format
-msgid "(static %s for %s)"
-msgstr "(ÀÅŪ%s: %s ÍÑ)"
-
-#: cp/error.c:1503
-#, c-format
-msgid "\\x%x"
-msgstr ""
-
-#: cp/error.c:2473
-#, c-format
-msgid "In %s `%s':"
-msgstr "%s Æâ¤Î `%s':"
-
-#: cp/error.c:2530
-#, c-format
-msgid "%s: In instantiation of `%s':\n"
-msgstr "%s: `%s' ¤Î½é´ü²½:\n"
-
-#: cp/error.c:2554
-#, c-format
-msgid "%s:%d: instantiated from `%s'\n"
-msgstr "%s:%d: `%s' ¤«¤é¼ÂÂ⽤µ¤ì¤Þ¤·¤¿\n"
-
-#: cp/error.c:2559
-#, c-format
-msgid "%s:%d: instantiated from here\n"
-msgstr "%s:%d: ¤³¤³¤Ç¼ÂÂ⽤µ¤ì¤Þ¤·¤¿\n"
-
#. damn ICE suppression
-#: cp/error.c:2713
+#: cp/error.c:2374
#, c-format
msgid "unexpected letter `%c' in locate_error\n"
msgstr ""
@@ -16713,45 +15741,44 @@ msgstr "Java `catch' ¤ä `throw' ¤¬¸Æ¤Ð¤ì¤Þ¤·¤¿¤¬¡¢`jthrowable' ¤Ï̤ÄêµÁ¤Ç¤¹"
msgid "type `%T' is not derived from `java::lang::Throwable'"
msgstr ""
-#: cp/except.c:322
+#: cp/except.c:321
msgid "mixing C++ and Java catches in a single translation unit"
msgstr "C++ ¤È Java ¤Î `catch' ¤ò°ì¤Ä¤ÎËÝÌõ¥æ¥Ë¥Ã¥È¤Ë¤Þ¤È¤á¤Þ¤¹"
-#: cp/except.c:639
+#: cp/except.c:630
msgid "throwing NULL, which has integral, not pointer type"
msgstr ""
-#: cp/except.c:730
+#: cp/except.c:653 cp/init.c:2029
+msgid "`%D' should never be overloaded"
+msgstr ""
+
+#: cp/except.c:722
msgid " in thrown expression"
msgstr " throw ¤µ¤ì¤¿¼°¤ÎÃæ"
-#: cp/except.c:856
+#: cp/except.c:843
msgid "expression '%E' of abstract class type '%T' cannot be used in throw-expression"
msgstr ""
-#: cp/except.c:944
+#: cp/except.c:925
msgid "exception of type `%T' will be caught"
msgstr ""
-#: cp/except.c:947
+#: cp/except.c:928
msgid " by earlier handler for `%T'"
msgstr ""
-#: cp/except.c:968
+#: cp/except.c:949
msgid "`...' handler must be the last handler for its try block"
msgstr ""
-#: cp/friend.c:159
+#: cp/friend.c:151
#, fuzzy
msgid "`%D' is already a friend of class `%T'"
msgstr "'%s' ¥¯¥é¥¹¤ò¸«¤Ä¤±¤ë¤Î¤Ë¼ºÇÔ¤·¤Þ¤·¤¿"
-#: cp/friend.c:161
-#, fuzzy
-msgid "previous friend declaration of `%D'"
-msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-
-#: cp/friend.c:206
+#: cp/friend.c:202
#, fuzzy
msgid "invalid type `%T' declared `friend'"
msgstr "ÊÑ¿ô `%s' ¤¬ `inline' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
@@ -16759,126 +15786,146 @@ msgstr "ÊÑ¿ô `%s' ¤¬ `inline' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
#. [temp.friend]
#. Friend declarations shall not declare partial
#. specializations.
-#: cp/friend.c:222
+#: cp/friend.c:218
#, fuzzy
msgid "partial specialization `%T' declared `friend'"
msgstr "ÊÑ¿ô `%s' ¤¬ `inline' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/friend.c:231
+#: cp/friend.c:228
msgid "class `%T' is implicitly friends with itself"
msgstr ""
#. template <class T> friend typename S<T>::X;
-#: cp/friend.c:249
+#: cp/friend.c:246
#, fuzzy
msgid "typename type `%#T' declared `friend'"
msgstr "²¾°ú¿ô `%s' ¤¬ void ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
#. template <class T> friend class T;
-#: cp/friend.c:255
+#: cp/friend.c:252
#, fuzzy
msgid "template parameter type `%T' declared `friend'"
msgstr "²¾°ú¿ô `%s' ¤¬ void ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
#. template <class T> friend class A; where A is not a template
-#: cp/friend.c:261
+#: cp/friend.c:258
#, fuzzy
msgid "`%#T' is not a template"
msgstr "¥Æ¥ó¥×¥ì¡¼¥ÈÆâ¤Ç `%s' ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹"
-#: cp/friend.c:276
+#: cp/friend.c:277
+msgid "`%D' is already a friend of `%T'"
+msgstr ""
+
+#: cp/friend.c:287
msgid "`%T' is already a friend of `%T'"
msgstr ""
-#: cp/friend.c:376
+#: cp/friend.c:413
msgid "member `%D' declared as friend before type `%T' defined"
msgstr ""
-#: cp/friend.c:431
+#: cp/friend.c:470
#, fuzzy
msgid "friend declaration `%#D' declares a non-template function"
msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤ÏÈó´Ø¿ô¤È¤·¤ÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/friend.c:434
+#: cp/friend.c:473
#, fuzzy
msgid "(if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) -Wno-non-template-friend disables this warning"
msgstr "¡Ê¤â¤·¤³¤ì¤¬¤¢¤Ê¤¿¤Î°Õ¿Þ¤·¤¿¤â¤Î¤Ç¤Ê¤±¤ì¤Ð¡¢´Ø¿ô¥Æ¥ó¥×¥ì¡¼¥È¤Ï´û¤ËÀë¸ÀºÑ¤Ç¤¢¤ë»ö¤ò³Îǧ¤·¡¢¤³¤³¤Î´Ø¿ô̾¤Î¸å¤í¤Ë <> ¤òÉÕ¤±Â­¤·¤Æ¤¯¤À¤µ¤¤¡Ë -Wno-non-template-friend ¤Ç¤³¤Î·Ù¹ðɽ¼¨¤ò̵¸ú¤Ë¤·¤Þ¤¹"
-#: cp/g++spec.c:211 java/jvspec.c:423
+#: cp/g++spec.c:229 java/jvspec.c:415
#, c-format
msgid "argument to `%s' missing\n"
msgstr "`%s' ¤Ø¤Î°ú¿ô¤ò·ç¤¤¤Æ¤¤¤Þ¤¹\n"
-#: cp/init.c:334
+#: cp/init.c:318
msgid "`%D' should be initialized in the member initialization list"
msgstr ""
-#: cp/init.c:384
+#: cp/init.c:368
msgid "default-initialization of `%#D', which has reference type"
msgstr ""
-#: cp/init.c:389
+#: cp/init.c:373
#, fuzzy
msgid "uninitialized reference member `%D'"
msgstr "¥á¥ó¥Ð `%s' ¤ËÂФ¹¤ë̵¸ú¤Ê½é´üÃÍ"
-#: cp/init.c:397
-msgid "initializer list treated as compound expression"
-msgstr "½é´ü²½»Ò¥ê¥¹¥È¤ÏÊ£¹ç¼°¤È¤·¤Æ¼è¤ê°·¤ï¤ì¤Þ¤·¤¿"
-
-#: cp/init.c:538
+#: cp/init.c:511
msgid "`%D' will be initialized after"
msgstr ""
-#: cp/init.c:541
+#: cp/init.c:514
#, fuzzy
msgid "base `%T' will be initialized after"
msgstr "²¾°ú¿ô `%s' ¤¬½é´ü²½¤µ¤ì¤Þ¤·¤¿"
-#: cp/init.c:544
+#: cp/init.c:517
msgid " `%#D'"
msgstr ""
-#: cp/init.c:546
+#: cp/init.c:519
msgid " base `%T'"
msgstr ""
-#: cp/init.c:564
+#: cp/init.c:520
+#, fuzzy
+msgid " when initialized here"
+msgstr "̵¸ú¤Ê½é´ü²½»Ò"
+
+#: cp/init.c:536
+#, fuzzy
+msgid "multiple initializations given for `%D'"
+msgstr "(`%s' ¤Î½é´ü²½¤ÏÉÔ´°Á´¤Ç¤¹)"
+
+#: cp/init.c:538
#, fuzzy
msgid "multiple initializations given for base `%T'"
msgstr "(`%s' ¤Î½é´ü²½¤ÏÉÔ´°Á´¤Ç¤¹)"
-#: cp/init.c:631
+#: cp/init.c:605
#, fuzzy
msgid "initializations for multiple members of `%T'"
msgstr "²ÄÊÑÇÛÎó¥á¥ó¥Ð¤ò½é´ü²½¤·¤Æ¤¤¤Þ¤¹"
-#: cp/init.c:688
+#: cp/init.c:662
msgid "base class `%#T' should be explicitly initialized in the copy constructor"
msgstr ""
-#: cp/init.c:926
+#: cp/init.c:892 cp/init.c:911
msgid "class `%T' does not have any field named `%D'"
msgstr ""
-#: cp/init.c:932
-msgid "field `%#D' is static; the only point of initialization is its definition"
-msgstr ""
+#: cp/init.c:898
+#, fuzzy
+msgid "`%#D' is a static data member; it can only be initialized at its definition"
+msgstr "`com_interface' °À­¤Ï¥¯¥é¥¹ÄêµÁ¤Ë¤Î¤ßÍѤ¤¤ë»ö¤¬¤Ç¤­¤Þ¤¹"
+
+#: cp/init.c:905
+#, fuzzy
+msgid "`%#D' is not a non-static data member of `%T'"
+msgstr "`%s' ¤ÏÄ̾Èó static ¤Ê´Ø¿ô¤Ç¤¹"
-#: cp/init.c:965
+#: cp/init.c:944
#, fuzzy
msgid "unnamed initializer for `%T', which has no base classes"
msgstr "´ðÄ쥯¥é¥¹¤ò»ý¤Ä¥¯¥é¥¹¤Î¥ª¥Ö¥¸¥§¥¯¥ÈÍѤνé´ü²½»Ò¥ê¥¹¥È¤Ç¤¹"
-#: cp/init.c:972
+#: cp/init.c:951
msgid "unnamed initializer for `%T', which uses multiple inheritance"
msgstr ""
-#: cp/init.c:1007
+#: cp/init.c:1006
+msgid "'%D' is both a direct base and an indirect virtual base"
+msgstr ""
+
+#: cp/init.c:1014
msgid "type `%D' is not a direct or virtual base of `%T'"
msgstr ""
-#: cp/init.c:1010
+#: cp/init.c:1017
msgid "type `%D' is not a direct base of `%T'"
msgstr ""
@@ -16894,573 +15941,892 @@ msgstr ""
#. COMPLEX zees(1.0, 0.0)[10];
#. }
#.
-#: cp/init.c:1104
+#: cp/init.c:1109
msgid "bad array initializer"
msgstr "ÇÛÎó¤ÎÉÔÀµ¤Ê½é´ü²½"
-#: cp/init.c:1311
+#: cp/init.c:1303
#, fuzzy
msgid "`%T' is not an aggregate type"
msgstr "È󽸹çÂη¿¤ËÂФ·¤ÆŬÍѤµ¤ì¤¿ `sigof'"
-#: cp/init.c:1334
+#: cp/init.c:1324
#, fuzzy
msgid "`%T' fails to be an aggregate typedef"
msgstr "È󽸹çÂη¿¤ËÂФ·¤ÆŬÍѤµ¤ì¤¿ `sigof'"
-#: cp/init.c:1343
+#: cp/init.c:1333
#, fuzzy
msgid "type `%T' is of non-aggregate type"
msgstr "È󽸹çÂη¿¤ËÂФ·¤ÆŬÍѤµ¤ì¤¿ `sigof'"
-#: cp/init.c:1446
-msgid "cannot call destructor `%T::~%T' without object"
+#: cp/init.c:1425 cp/typeck.c:1798
+msgid "qualified type `%T' does not match destructor name `~%T'"
msgstr ""
-#: cp/init.c:1490
-#, fuzzy
-msgid "invalid use of non-static field `%D'"
-msgstr "ÉÔ´°Á´¤Ê typedef `%s' ¤Î»ÈÍѤÏÉÔŬÀڤǤ¹"
-
-#. We can get here when processing a bad default
-#. argument, like:
-#. struct S { int a; void f(int i = a); }
-#: cp/init.c:1499 cp/method.c:160
-#, fuzzy
-msgid "invalid use of member `%D'"
-msgstr "¥á¥ó¥Ð `%s' ¤ËÂФ¹¤ë̵¸ú¤Ê½é´üÃÍ"
-
-#: cp/init.c:1509
-#, fuzzy
-msgid "no method `%T::%D'"
-msgstr "¥á¥½¥Ã¥É `%s' Æâ:"
-
-#: cp/init.c:1602
+#: cp/init.c:1433
msgid "incomplete type `%T' does not have member `%D'"
msgstr ""
-#: cp/init.c:1676
+#: cp/init.c:1452
#, fuzzy
msgid "`%D' is not a member of type `%T'"
msgstr "%s ¤Ë `%s' ¤È¤¤¤¦Ì¾Á°¤Î¥á¥ó¥Ð¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/init.c:1695
+#: cp/init.c:1471
#, fuzzy
msgid "invalid pointer to bit-field `%D'"
msgstr "̵¸ú¤Ê¼±ÊÌ»Ò `%s'"
-#: cp/init.c:1734
-msgid "object missing in use of pointer-to-member construct"
-msgstr "¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¹½ÃۤλÈÍѤǥª¥Ö¥¸¥§¥¯¥È¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-
-#: cp/init.c:1774
-msgid "member `%D' is non-static but referenced as a static member"
-msgstr ""
-
-#: cp/init.c:1776 cp/typeck.c:2826 cp/typeck.c:2930
-msgid "at this point in file"
-msgstr "¥Õ¥¡¥¤¥ë¤Î¤³¤Î°ÌÃÖ"
+#: cp/init.c:1573
+#, fuzzy
+msgid "invalid use of non-static member function `%D'"
+msgstr "Èó¥á¥ó¥Ð´Ø¿ô¤Ç¤Î `this' ¤Î»ÈÍѤÏ̵¸ú¤Ç¤¹"
-#: cp/init.c:1813
-#, fuzzy, c-format
-msgid "object missing in `%E'"
-msgstr "`%s' ¤Ç¤ÎÇÛÎó¥µ¥¤¥º¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+#: cp/init.c:1579 cp/semantics.c:1236
+#, fuzzy
+msgid "invalid use of non-static data member `%D'"
+msgstr "¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¤Î̵¸ú¤Ê `%s' ¤Î»ÈÍÑ"
-#: cp/init.c:1944
+#: cp/init.c:1718
msgid "new of array type fails to specify size"
msgstr "ÇÛÎ󷿤Πnew ¤Ï¥µ¥¤¥º¤Î»ØÄê¤Ë¼ºÇÔ¤·¤Þ¤¹"
-#: cp/init.c:1955
+#: cp/init.c:1729
msgid "size in array new must have integral type"
msgstr "ÇÛÎó new ¤Ç¤Î¥µ¥¤¥º¤Ï´°Á´¤Ê·¿¤ò»ý¤¿¤Í¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cp/init.c:1961
+#: cp/init.c:1735
msgid "zero size array reserves no space"
msgstr "¥µ¥¤¥º¥¼¥í¤ÎÇÛÎó¤Ï¶õ´Ö¤ò³ÎÊݤ·¤Þ¤»¤ó"
-#: cp/init.c:2026
+#: cp/init.c:1801
msgid "new cannot be applied to a reference type"
msgstr "»²¾È·¿¤ËÂФ·¤Æ new ¤òŬÍѤǤ­¤Þ¤»¤ó"
-#: cp/init.c:2032
+#: cp/init.c:1807
msgid "new cannot be applied to a function type"
msgstr "´Ø¿ô·¿¤ËÂФ·¤Æ new ¤òŬÍѤǤ­¤Þ¤»¤ó"
-#: cp/init.c:2079
+#: cp/init.c:1853
msgid "call to Java constructor, while `jclass' undefined"
msgstr "Java ¥³¥ó¥¹¥È¥é¥¯¥¿¤¬¸Æ¤Ð¤ì¤Þ¤·¤¿¤¬¡¢`jclass' ¤Ï̤ÄêµÁ¤Ç¤¹"
-#: cp/init.c:2095
+#: cp/init.c:1869
#, fuzzy
msgid "can't find class$"
msgstr "class$ ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: cp/init.c:2209
+#: cp/init.c:1995
msgid "invalid type `void' for new"
msgstr "new ¤ËÂФ·¤Æ̵¸ú¤Ê·¿¤Ç¤¢¤ë `void'"
-#: cp/init.c:2261
+#: cp/init.c:2005
+#, fuzzy
+msgid "uninitialized const in `new' of `%#T'"
+msgstr "½é´ü²½»Ò¤Ï `%s' ¤Î¥µ¥¤¥º¤ÎÆÃÄê¤Ë¼ºÇÔ¤·¤Þ¤·¤¿"
+
+#: cp/init.c:2024
#, c-format
msgid "call to Java constructor with `%s' undefined"
msgstr "Java ¥³¥ó¥¹¥È¥é¥¯¥¿¤¬¸Æ¤Ð¤ì¤Þ¤·¤¿¤¬¡¢`%s' ¤Ï̤ÄêµÁ¤Ç¤¹"
-#: cp/init.c:2369
+#: cp/init.c:2065
+#, fuzzy
+msgid "request for member `%D' is ambiguous"
+msgstr "Í׵ᤵ¤ì¤¿¥á¥ó¥Ð `%s' ¤Ï¿½Å·Ñ¾µ¥°¥é¥Õ¤ÎÃæ¤ÇÛ£Ëæ¤Ç¤¹"
+
+#: cp/init.c:2189
#, fuzzy
msgid "ISO C++ forbids initialization in array new"
msgstr "ISO C++ ¤Ï new ¼°¤Î½é´ü²½¤Ç¤Î `=' ¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/init.c:2391 cp/typeck2.c:367 cp/typeck2.c:1208
-msgid "initializer list being treated as compound expression"
-msgstr "½é´ü²½»Ò¥ê¥¹¥È¤¬Ê£¹ç¼°¤È¤·¤Æ¼è¤ê°·¤ï¤ì¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-
-#: cp/init.c:2397
+#: cp/init.c:2213
msgid "ISO C++ forbids aggregate initializer to new"
msgstr "ISO C++ ¤Ï new ¤Ø¤Î½¸¹çÂνé´ü²½»Ò¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/init.c:2485
-#, fuzzy
-msgid "uninitialized const in `new' of `%#T'"
-msgstr "½é´ü²½»Ò¤Ï `%s' ¤Î¥µ¥¤¥º¤ÎÆÃÄê¤Ë¼ºÇÔ¤·¤Þ¤·¤¿"
-
-#: cp/init.c:2864
+#: cp/init.c:2658
msgid "initializer ends prematurely"
msgstr "½é´üÀßÄê»Ò¤ÎËöÈø¤¬ËÜÍè¤è¤êÁ᤯½Ð¸½¤·¤Þ¤·¤¿"
-#: cp/init.c:2934
+#: cp/init.c:2715
msgid "cannot initialize multi-dimensional array with initializer"
msgstr "¿¼¡¸µÇÛÎó¤Ï½é´ü²½»Ò¤Ç½é´ü²½¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó"
-#: cp/init.c:3124
+#: cp/init.c:2876
+msgid "possible problem detected in invocation of delete operator:"
+msgstr ""
+
+#: cp/init.c:2879
+msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined."
+msgstr ""
+
+#: cp/init.c:2900
msgid "unknown array size in delete"
msgstr "delete ¤Ç¤ÎÇÛÎó¥µ¥¤¥º¤¬ÉÔÌÀ¤Ç¤¹"
-#: cp/init.c:3389
+#: cp/init.c:3165
msgid "type to vector delete is neither pointer or array type"
msgstr "¥Ù¥¯¥È¥ë·¿¤Î delete ¤Ç¤¹¤¬¡¢¥Ý¥¤¥ó¥¿¤Ç¤âÇÛÎ󷿤Ǥ⤢¤ê¤Þ¤»¤ó"
-#: cp/lex.c:136
+#: cp/lex.c:99
msgid "type name expected before `*'"
msgstr "`*' ¤ÎÁ°¤Ë·¿¤Î̾Á°¤¬¤¢¤ë¤Ù¤­¤Ç¤¹"
-#: cp/lex.c:158
-msgid "cannot declare references to references"
-msgstr "»²¾È¤ò»²¾È¤È¤·¤ÆÀë¸À¤Ç¤­¤Þ¤»¤ó"
-
-#: cp/lex.c:163
-msgid "cannot declare pointers to references"
-msgstr "¥Ý¥¤¥ó¥¿¤ò»²¾È¤È¤·¤ÆÀë¸À¤Ç¤­¤Þ¤»¤ó"
-
-#: cp/lex.c:167
-msgid "type name expected before `&'"
-msgstr "`&' ¤ÎÁ°¤Ë·¿¤Î̾Á°¤¬¤¢¤ë¤Ù¤­¤Ç¤¹"
-
-#: cp/lex.c:894
-#, c-format
-msgid "semicolon missing after %s declaration"
-msgstr "%s Àë¸À¤Î¸å¤í¤Î¥»¥ß¥³¥í¥ó¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-
-#: cp/lex.c:897
-#, fuzzy
-msgid "semicolon missing after declaration of `%T'"
-msgstr "%s Àë¸À¤Î¸å¤í¤Î¥»¥ß¥³¥í¥ó¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-
-#: cp/lex.c:945
+#: cp/lex.c:501
#, c-format
msgid "junk at end of #pragma %s"
msgstr "#pragma %s ¤ÎËöÈø¤Ë¥´¥ß"
-#: cp/lex.c:952
+#: cp/lex.c:508
#, c-format
msgid "invalid #pragma %s"
msgstr "̵¸ú¤Ê #pragma %s ¤Ç¤¹"
-#: cp/lex.c:961
+#: cp/lex.c:516
#, fuzzy
msgid "#pragma vtable no longer supported"
msgstr "--driver ¤ÏºÇÁ᥵¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: cp/lex.c:1038
+#: cp/lex.c:590
#, c-format
msgid "#pragma implementation for %s appears after file is included"
msgstr "%s ¤Ø¤Î #pragma implementation ¤Ï¥Õ¥¡¥¤¥ë¤¬ include ¤µ¤ì¤¿¸å¤Ç½Ð¸½¤·¤Þ¤·¤¿"
-#: cp/lex.c:1063
+#: cp/lex.c:614
msgid "junk at end of #pragma GCC java_exceptions"
msgstr "#pragma GCC java_exceptions ¤ÎËöÈø¤Ë¥´¥ß"
-#: cp/lex.c:1107
+#: cp/lex.c:628
#, fuzzy
msgid "`%D' not defined"
msgstr "\"%s\" ¤ÏÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: cp/lex.c:1110
+#: cp/lex.c:631
#, fuzzy
msgid "`%D' was not declared in this scope"
msgstr "`%s' ¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó (¤³¤Î´Ø¿ôÆâ¤ÇºÇ½é¤ËÍøÍÑ)"
-#: cp/lex.c:1118
+#: cp/lex.c:639
#, fuzzy
msgid "`%D' undeclared (first use this function)"
msgstr "`%s' ¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó (¤³¤Î´Ø¿ôÆâ¤ÇºÇ½é¤ËÍøÍÑ)"
-#: cp/lex.c:1122
+#: cp/lex.c:643
msgid "(Each undeclared identifier is reported only once for each function it appears in.)"
msgstr "(̤Àë¸ÀÊÑ¿ô¤Ë¤Ä¤¤¤Æ¤Ï¡¢¤½¤ì¤¬´Ø¿ôÆâ¤ÇºÇ½é¤Ë¸½¤ï¤ì¤¿»þ¤À¤±Êó¹ð¤µ¤ì¤Þ¤¹¡£)"
-#: cp/lex.c:1242
-#, fuzzy
-msgid "`::%D' undeclared (first use here)"
-msgstr "`%s' ¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó (¤³¤Î´Ø¿ôÆâ¤ÇºÇ½é¤ËÍøÍÑ)"
+#. In a template, it is invalid to write "f()" or "f(3)" if no
+#. declaration of "f" is available. Historically, G++ and most
+#. other compilers accepted that usage since they deferred all name
+#. lookup until instantiation time rather than doing unqualified
+#. name lookup at template definition time; explain to the user what
+#. is going wrong.
+#.
+#. Note that we have the exact wording of the following message in
+#. the manual (trouble.texi, node "Name lookup"), so they need to
+#. be kept in synch.
+#: cp/lex.c:674
+msgid "there are no arguments to `%D' that depend on a template parameter, so a declaration of `%D' must be available"
+msgstr ""
+
+#: cp/lex.c:683
+msgid "(if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)"
+msgstr ""
-#: cp/mangle.c:2051
+#: cp/mangle.c:2036
#, fuzzy
msgid "call_expr cannot be mangled due to a defect in the C++ ABI"
msgstr "´Ø¿ô·¿¤ËÂФ·¤Æ new ¤òŬÍѤǤ­¤Þ¤»¤ó"
-#: cp/mangle.c:2363
+#: cp/mangle.c:2089
+msgid "omitted middle operand to `?:' operand cannot be mangled"
+msgstr ""
+
+#: cp/mangle.c:2388
msgid "the mangled name of `%D' will change in a future version of GCC"
msgstr ""
-#: cp/method.c:154
+#: cp/method.c:456
+msgid "generic thunk code fails for method `%#D' which uses `...'"
+msgstr ""
+
+#: cp/method.c:681
+msgid "non-static const member `%#D', can't use default assignment operator"
+msgstr ""
+
+#: cp/method.c:686
+msgid "non-static reference member `%#D', can't use default assignment operator"
+msgstr ""
+
+#: cp/name-lookup.c:649
#, fuzzy
-msgid "invalid use of member `%D' in static member function"
-msgstr "Èó¥á¥ó¥Ð´Ø¿ô¤Ç¤Î `this' ¤Î»ÈÍѤÏ̵¸ú¤Ç¤¹"
+msgid "`%#D' used prior to declaration"
+msgstr "`%s' ¤ÏÀë¸À¤è¤ê¤âÀè¤Ë»ÈÍѤµ¤ì¤Þ¤·¤¿"
-#: cp/method.c:216
-msgid "use of namespace `%D' as expression"
+#: cp/name-lookup.c:680
+#, fuzzy
+msgid "redeclaration of `wchar_t' as `%T'"
+msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
+
+#. A redeclaration of main, but not a duplicate of the
+#. previous one.
+#.
+#. [basic.start.main]
+#.
+#. This function shall not be overloaded.
+#: cp/name-lookup.c:712
+#, fuzzy
+msgid "invalid redeclaration of `%D'"
+msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
+
+#: cp/name-lookup.c:713
+msgid "as `%D'"
msgstr ""
-#: cp/method.c:221
-msgid "use of class template `%T' as expression"
+#: cp/name-lookup.c:801
+#, fuzzy
+msgid "type mismatch with previous external decl of `%#D'"
+msgstr "·¿¤¬Á°Êý¤Î³°ÉôÀë¸À¤È°ìÃפ·¤Þ¤»¤ó"
+
+#: cp/name-lookup.c:802
+#, fuzzy
+msgid "previous external decl of `%#D'"
+msgstr "Á°Êý¤Î `%s' ¤Î³°ÉôÀë¸À"
+
+#: cp/name-lookup.c:844
+#, fuzzy
+msgid "`%D' was previously implicitly declared to return `int'"
+msgstr "`%s' ¤ÏÁ°Êý¤Ç°ÅÌÛŪ¤Ë `int' ¤òÊÖ¤¹¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
+
+#: cp/name-lookup.c:902
+#, fuzzy
+msgid "extern declaration of `%#D' doesn't match"
+msgstr "`%s' ¤Îextern Àë¸À¤Ï¥°¥í¡¼¥Ð¥ë¤Î¤½¤ì¤È°ìÃפ·¤Þ¤»¤ó"
+
+#: cp/name-lookup.c:903
+#, fuzzy
+msgid "global declaration `%#D'"
+msgstr "¥é¥Ù¥ë¤ÎÀë¸À `%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
+
+#: cp/name-lookup.c:939
+#, fuzzy
+msgid "declaration of `%#D' shadows a parameter"
+msgstr "`%s' ¤ÎÀë¸À¤Ï²¾°ú¿ô¤òʤ¤¤±£¤·¤Þ¤¹"
+
+#: cp/name-lookup.c:960
+#, c-format
+msgid "declaration of `%s' shadows a member of `this'"
+msgstr "`%s' ¤ÎÀë¸À¤Ë¤è¤ê `this' ¤Î¥á¥ó¥Ð¤¬Ê¤¤¤±£¤µ¤ì¤Þ¤¹"
+
+#: cp/name-lookup.c:1136
+#, fuzzy
+msgid "name lookup of `%D' changed"
+msgstr "`%s' ¤Î̾Á°°ú¤­¤ÏÊѹ¹¤µ¤ì¤Þ¤·¤¿"
+
+#: cp/name-lookup.c:1138
+msgid " matches this `%D' under ISO standard rules"
+msgstr ""
+
+#: cp/name-lookup.c:1140
+msgid " matches this `%D' under old rules"
msgstr ""
-#: cp/method.c:234
+#: cp/name-lookup.c:1154 cp/name-lookup.c:1161
+#, fuzzy
+msgid "name lookup of `%D' changed for new ISO `for' scoping"
+msgstr "`%s' ¤Î̾Á°°ú¤­¤Ï¿·¤¿¤Ê ISO `for' ¥¹¥³¡¼¥×¤ËÊѤï¤ê¤Þ¤·¤¿"
+
+#: cp/name-lookup.c:1156
+msgid " cannot use obsolete binding at `%D' because it has a destructor"
+msgstr ""
+
+#: cp/name-lookup.c:1163
+msgid " using obsolete binding at `%D'"
+msgstr ""
+
+#: cp/name-lookup.c:1216
#, c-format
-msgid "use of %s from containing function"
+msgid "%s %s(%E) %p %d\n"
+msgstr ""
+
+#: cp/name-lookup.c:1219
+#, fuzzy, c-format
+msgid "%s %s %p %d\n"
+msgstr "%s: %s: "
+
+#: cp/name-lookup.c:1338
+msgid "XXX is_class_level != (current_scope == class_scope)\n"
msgstr ""
-#: cp/method.c:237
+#: cp/name-lookup.c:1975
#, fuzzy
-msgid " `%#D' declared here"
+msgid "`%#D' hides constructor for `%#T'"
+msgstr "`%#D' ¤Î¤¿¤á¤Î¥Ç¥¹¥È¥é¥¯¥¿¤¬É¬ÍפǤ¹"
+
+#: cp/name-lookup.c:1990
+#, fuzzy
+msgid "`%#D' conflicts with previous using declaration `%#D'"
+msgstr "`%s' ¤Î¥»¥¯¥·¥ç¥ó¤ÏÁ°Êý¤Ç¤ËÀë¸À¤µ¤ì¤¿¤â¤Î¤È¾×Æͤ·¤Þ¤¹"
+
+#: cp/name-lookup.c:2002
+#, fuzzy
+msgid "previous non-function declaration `%#D'"
+msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
+
+#: cp/name-lookup.c:2003
+#, fuzzy
+msgid "conflicts with function declaration `%#D'"
+msgstr "`%s' ¤ÎÀë¸À¤¬Ì·½â¤·¤Æ¤¤¤Þ¤¹"
+
+#. 7.3.3/5
+#. A using-declaration shall not name a template-id.
+#: cp/name-lookup.c:2080
+msgid "a using-declaration cannot specify a template-id. Try `using %D'"
+msgstr ""
+
+#: cp/name-lookup.c:2086
+#, fuzzy
+msgid "namespace `%D' not allowed in using-declaration"
+msgstr "`%s' ¤ÏÀë¸À¤Î»Ï¤Þ¤ê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+
+#. It's a nested name with template parameter dependent scope.
+#. This can only be using-declaration for class member.
+#: cp/name-lookup.c:2094 cp/name-lookup.c:2108 cp/name-lookup.c:3283
+msgid "`%T' is not a namespace"
+msgstr ""
+
+#: cp/name-lookup.c:2132
+#, fuzzy
+msgid "`%D' not declared"
msgstr "`%s' ¤ÏÁ°¤Ë¤³¤³¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/method.c:255
+#. If the OLD_FN was really declared, the
+#. declarations don't match.
+#: cp/name-lookup.c:2144 cp/name-lookup.c:2186 cp/name-lookup.c:2211
+msgid "`%D' is already declared in this scope"
+msgstr ""
+
+#: cp/name-lookup.c:2217
+msgid "using declaration `%D' introduced ambiguous type `%T'"
+msgstr ""
+
+#. Definition isn't the kind we were looking for.
+#: cp/name-lookup.c:2376 cp/name-lookup.c:2395
+msgid "`%#D' redeclared as %C"
+msgstr ""
+
+#: cp/name-lookup.c:2805
+msgid "using-declaration for non-member at class scope"
+msgstr ""
+
+#: cp/name-lookup.c:2812
#, fuzzy
-msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
-msgstr "Í׵ᤵ¤ì¤¿¥á¥ó¥Ð `%s' ¤Ï¿½Å·Ñ¾µ¥°¥é¥Õ¤ÎÃæ¤ÇÛ£Ëæ¤Ç¤¹"
+msgid "using-declaration cannot name destructor"
+msgstr "friend Àë¸À¤¬¥¯¥é¥¹ÄêµÁ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
-#: cp/method.c:458
-msgid "generic thunk code fails for method `%#D' which uses `...'"
+#: cp/name-lookup.c:2908
+#, fuzzy
+msgid "declaration of `%D' not in a namespace surrounding `%D'"
+msgstr "`%s' ¤ÎÀë¸À¤Ë¤è¤ê `this' ¤Î¥á¥ó¥Ð¤¬Ê¤¤¤±£¤µ¤ì¤Þ¤¹"
+
+#: cp/name-lookup.c:2948
+msgid "`%D' should have been declared inside `%D'"
msgstr ""
-#: cp/method.c:697
-msgid "non-static const member `%#D', can't use default assignment operator"
+#: cp/name-lookup.c:3012
+msgid "namespace alias `%D' not allowed here, assuming `%D'"
msgstr ""
-#: cp/method.c:702
-msgid "non-static reference member `%#D', can't use default assignment operator"
+#. The parser did not find it, so it's not there.
+#: cp/name-lookup.c:3127
+#, fuzzy
+msgid "unknown namespace `%D'"
+msgstr "ÉÔÌÀ¤Ê #pragma namespace %s ¤Ç¤¹"
+
+#: cp/name-lookup.c:3277
+#, fuzzy
+msgid "namespace `%T' undeclared"
+msgstr "²¾°ú¿ô `%s' ¤¬ void ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
+
+#: cp/name-lookup.c:3310
+msgid "strong using only meaningful at namespace scope"
msgstr ""
-#: parse.y:262
-msgid "`%s' tag used in naming `%#T'"
+#: cp/name-lookup.c:3317
+#, fuzzy
+msgid "`%D' attribute directive ignored"
+msgstr "`%s' °À­¤Îµ¿»÷Ì¿Î᤬̵»ë¤µ¤ì¤Þ¤·¤¿"
+
+#: cp/name-lookup.c:3450
+#, fuzzy
+msgid "use of `%D' is ambiguous"
+msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤Ï¤¢¤¤¤Þ¤¤¤Ç¤¹\n"
+
+#: cp/name-lookup.c:3451
+msgid " first declared as `%#D' here"
msgstr ""
-#: parse.y:542
-msgid "keyword `export' not implemented, and will be ignored"
+#: cp/name-lookup.c:3454
+msgid " also declared as `%#D' here"
msgstr ""
-#: parse.y:646
-msgid "use of linkage spec `%D' is different from previous spec `%D'"
+#: cp/name-lookup.c:3469
+msgid "`%D' denotes an ambiguous type"
msgstr ""
-#: parse.y:943
-msgid "no base or member initializers given following ':'"
-msgstr "´ðÄì¤ä¥á¥ó¥Ð½é´ü²½»Ò¥ê¥¹¥È¤¬ ':' ¤Î¸å¤Ë³¤¤¤Æ¤¤¤Þ¤»¤ó"
+#: cp/name-lookup.c:3470
+#, fuzzy
+msgid "%J first type here"
+msgstr " ¤³¤³¤«¤é"
+
+#: cp/name-lookup.c:3471
+msgid "%J other type here"
+msgstr ""
-#: parse.y:984
-msgid "anachronistic old style base class initializer"
-msgstr "Á°»þÂåŪ¤Ê¸Å¤¤¥¹¥¿¥¤¥ë¤Î´ðÄ쥯¥é¥¹½é´ü²½»Ò¤Ç¤¹"
+#. This happens for A::B where B is a template, and there are no
+#. template arguments.
+#: cp/name-lookup.c:3536 cp/typeck.c:1773
+#, fuzzy
+msgid "invalid use of `%D'"
+msgstr "`restrict' ¤ÎÍÑË¡¤¬ÉÔŬÀڤǤ¹"
-#. Handle `Class<Class<Type>>' without space in the `>>'
-#: parse.y:1117
-msgid "`>>' should be `> >' in template class name"
-msgstr "`>>' ¤Ï¥Æ¥ó¥×¥ì¡¼¥È¥¯¥é¥¹Ì¾¤Ï `> >' ¤È¤¹¤Ù¤­¤Ç¤¹"
+#: cp/name-lookup.c:3577
+#, fuzzy
+msgid "`%D::%D' is not a template"
+msgstr "¥Æ¥ó¥×¥ì¡¼¥ÈÆâ¤Ç `%s' ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹"
-#: parse.y:1164
-msgid "use of template qualifier outside template"
+#: cp/name-lookup.c:3594
+msgid "`%D' undeclared in namespace `%D'"
msgstr ""
-#: parse.y:1193 parse.y:1202
-#, c-format
-msgid "ISO C++ forbids an empty condition for `%s'"
-msgstr "ISO C++ ¤Ï `%s' ¤ËÂФ¹¤ë¶õ¤Î¾ò·ï¤ò¶Ø¤¸¤Þ¤¹"
+#: cp/name-lookup.c:4055
+#, fuzzy
+msgid "`%D' is not a function,"
+msgstr "`%s' ¤ÏÄ̾ï¤Ï´Ø¿ô¤Ç¤¹"
-#: parse.y:1225
+#: cp/name-lookup.c:4056
#, fuzzy
-msgid "definition of class `%T' in condition"
-msgstr "%s: ´Ø¿ô `%s' ¤ÎÄêµÁ¤¬ÊÑ´¹¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
+msgid " conflict with `%D'"
+msgstr "`%s' ¤Ï `-g%s' ¤È¶¥¹ç¤¹¤ë¤¿¤á̵»ë¤µ¤ì¤Þ¤·¤¿"
+
+#: cp/name-lookup.c:4794
+msgid "XXX entering pop_everything ()\n"
+msgstr ""
+
+#: cp/name-lookup.c:4803
+msgid "XXX leaving pop_everything ()\n"
+msgstr ""
-#: parse.y:1227
+#: cp/parser.c:609
#, fuzzy
-msgid "definition of enum `%T' in condition"
-msgstr "%s: ´Ø¿ô `%s' ¤ÎÄêµÁ¤¬ÊÑ´¹¤µ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
+msgid "invalid token"
+msgstr "̵¸ú¤Ê¥³¡¼¥É¤Ç¤¹"
-#: parse.y:1238
+#: cp/parser.c:1806
+msgid "`%D::%D' has not been declared"
+msgstr ""
+
+#: cp/parser.c:1809 cp/semantics.c:2284
+msgid "`::%D' has not been declared"
+msgstr ""
+
+#: cp/parser.c:1811
#, fuzzy
-msgid "definition of array `%#D' in condition"
-msgstr "`%c%s' ¤Î¥á¥½¥Ã¥ÉÄêµÁ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
+msgid "`%D' has not been declared"
+msgstr "`%s' ¤ÏÀë¸À¤Î»Ï¤Þ¤ê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: parse.y:1351
-msgid "old style placement syntax, use () instead"
+#: cp/parser.c:1814
+msgid "`%D::%D' %s"
msgstr ""
-#: parse.y:1362
+#: cp/parser.c:1816
+msgid "`::%D' %s"
+msgstr ""
+
+#: cp/parser.c:1818
#, fuzzy
-msgid "`%T' is not a valid expression"
-msgstr "\"%s\" ¤ÏÀµ¾ï¤Ê¥Õ¥¡¥¤¥ë̾¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+msgid "`%D' %s"
+msgstr "%s: %s"
-#. This was previously allowed as an extension, but
-#. was removed in G++ 3.3.
-#: parse.y:1369
+#: cp/parser.c:1870
#, fuzzy
-msgid "initialization of new expression with `='"
-msgstr "ISO C++ ¤Ï new ¼°¤Î½é´ü²½¤Ç¤Î `=' ¤ò¶Ø¤¸¤Þ¤¹"
+msgid "new types may not be defined in a return type"
+msgstr "»²¾È·¿¤ËÂФ·¤Æ new ¤òŬÍѤǤ­¤Þ¤»¤ó"
-#: parse.y:1395
-msgid "ISO C++ forbids compound literals"
-msgstr "ISO C++ ¤ÏÊ£¹ç¥ê¥Æ¥é¥ë¤ò¶Ø¤¸¤Þ¤¹"
+#: cp/parser.c:1888 cp/pt.c:4185
+#, fuzzy
+msgid "`%T' is not a template"
+msgstr "¥Æ¥ó¥×¥ì¡¼¥ÈÆâ¤Ç `%s' ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹"
+
+#: cp/parser.c:1890
+#, fuzzy, c-format
+msgid "`%s' is not a template"
+msgstr "¥Æ¥ó¥×¥ì¡¼¥ÈÆâ¤Ç `%s' ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹"
+
+#: cp/parser.c:1892
+#, fuzzy
+msgid "invalid template-id"
+msgstr "̵¸ú¤Ê·¿: `void &'"
-#: parse.y:1642
+#: cp/parser.c:1927
+#, fuzzy, c-format
+msgid "%s cannot appear in a constant-expression"
+msgstr "Äê¿ô¼°¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
+
+#. Issue an error message.
+#: cp/parser.c:1954
+#, fuzzy, c-format
+msgid "`%s' does not name a type"
+msgstr "`%s' °À­¤Ï·¿¤Ë¤ÏŬÍѤµ¤ì¤Þ¤»¤ó"
+
+#: cp/parser.c:1985
+msgid "(perhaps `typename %T::%s' was intended)"
+msgstr ""
+
+#: cp/parser.c:2407
msgid "ISO C++ forbids braced-groups within expressions"
msgstr "ISO C++ ¤Ï¥Ö¥ì¡¼¥¹¤Ç¤Þ¤È¤á¤é¤ì¤¿¼°¤ò¶Ø¤¸¤Þ¤¹"
-#: parse.y:1721
+#: cp/parser.c:2416
#, fuzzy
-msgid "invalid use of template `%D'"
-msgstr "ÉÔ´°Á´¤Ê typedef `%s' ¤Î»ÈÍѤÏÉÔŬÀڤǤ¹"
+msgid "statement-expressions are allowed only inside functions"
+msgstr "¥Ö¥ì¡¼¥¹¤Ç¤Þ¤È¤á¤é¤ì¤¿¼°¤Ï´Ø¿ô¤ÎÆ⦤ǤΤߵö¤µ¤ì¤Þ¤¹"
-#: parse.y:2053 parse.y:2068
-msgid "sigof type specifier"
-msgstr "·¿»ØÄê»Ò¤Î sigof ¤Ç¤¹"
+#: cp/parser.c:2467
+#, fuzzy
+msgid "`this' may not be used in this context"
+msgstr "¥Þ¥¯¥í°ú¿ôÆâ¤Ç¥Ç¥£¥ì¥¯¥È¥ê¤ò»È¤¦¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: parse.y:2058
-msgid "`sigof' applied to non-aggregate expression"
-msgstr "È󽸹çÂμ°¤ËÂФ·¤ÆŬÍѤµ¤ì¤¿ `sigof'"
+#: cp/parser.c:2617
+msgid "local variable `%D' may not appear in this context"
+msgstr ""
-#: parse.y:2073
-msgid "`sigof' applied to non-aggregate type"
-msgstr "È󽸹çÂη¿¤ËÂФ·¤ÆŬÍѤµ¤ì¤¿ `sigof'"
+#: cp/parser.c:2982
+msgid "typedef-name `%D' used as destructor declarator"
+msgstr ""
+
+#: cp/parser.c:3627
+#, fuzzy
+msgid "ISO C++ forbids compound-literals"
+msgstr "ISO C++ ¤ÏÊ£¹ç¥ê¥Æ¥é¥ë¤ò¶Ø¤¸¤Þ¤¹"
+
+#: cp/parser.c:4599
+#, fuzzy
+msgid "expression in new-declarator must have integral or enumeration type"
+msgstr "ÇÛÎó new ¤Ç¤Î¥µ¥¤¥º¤Ï´°Á´¤Ê·¿¤ò»ý¤¿¤Í¤Ð¤Ê¤ê¤Þ¤»¤ó"
+
+#: cp/parser.c:4775
+msgid "use of old-style cast"
+msgstr "¸Å¤¤¥¹¥¿¥¤¥ë¤Î¥­¥ã¥¹¥È¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹"
+
+#: cp/parser.c:5528
+#, fuzzy, c-format
+msgid "case label `%E' not within a switch statement"
+msgstr "case ¥é¥Ù¥ë¤¬ switch ʸ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
+
+#: cp/parser.c:6070
+msgid "ISO C++ forbids computed gotos"
+msgstr "ISO C++ ¤Ï·×»»·¿ goto ¤ò¶Ø¤¸¤Þ¤¹"
+
+#: cp/parser.c:6190
+msgid "extra `;'"
+msgstr ""
+
+#: cp/parser.c:6485
+msgid "mixing declarations and function-definitions is forbidden"
+msgstr ""
+
+#: cp/parser.c:6623
+#, fuzzy
+msgid "duplicate `friend'"
+msgstr "`%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
+
+#: cp/parser.c:6772
+#, fuzzy
+msgid "class definition may not be declared a friend"
+msgstr "`%s' ¤Ï´Ø¿ô¤Ç¤â¥á¥ó¥Ð´Ø¿ô¤Ç¤â¤¢¤ê¤Þ¤»¤ó -- friend ¤È¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
+
+#: cp/parser.c:7086
+msgid "only constructors take base initializers"
+msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤·¤«´ðÄì½é´ü²½»Ò¥ê¥¹¥È¤ò¤È¤ê¤Þ¤»¤ó"
+
+#: cp/parser.c:7137
+#, fuzzy
+msgid "anachronistic old-style base class initializer"
+msgstr "Á°»þÂåŪ¤Ê¸Å¤¤¥¹¥¿¥¤¥ë¤Î´ðÄ쥯¥é¥¹½é´ü²½»Ò¤Ç¤¹"
+
+#. Warn that we do not support `export'.
+#: cp/parser.c:7530
+msgid "keyword `export' not implemented, and will be ignored"
+msgstr ""
+
+#. Otherwise, emit an error about the invalid digraph, but continue
+#. parsing because we got our argument list.
+#: cp/parser.c:7890
+msgid "`<::' cannot begin a template-argument list"
+msgstr ""
-#: parse.y:2339
+#: cp/parser.c:7891
+msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'"
+msgstr ""
+
+#: cp/parser.c:7898
+msgid "(if you use `-fpermissive' G++ will accept your code)"
+msgstr ""
+
+#. Explain what went wrong.
+#: cp/parser.c:8070
+#, fuzzy
+msgid "non-template `%D' used as template"
+msgstr "`::main' ¤ò template ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
+
+#: cp/parser.c:8071
+msgid "(use `%T::template %D' to indicate that it is a template)"
+msgstr ""
+
+#: cp/parser.c:9000
msgid "using `typename' outside of template"
msgstr ""
-#: parse.y:2356
-msgid "qualified name does not name a class"
+#: cp/parser.c:9122
+msgid "expected type-name"
msgstr ""
-#: parse.y:2417
-#, c-format
-msgid "storage class specifier `%s' not allowed after struct or class"
-msgstr "µ­²±¥¯¥é¥¹»ØÄê»Ò `%s' ¤Ï struct ¤ä class ¤Î¸å¤Ë¤Ï»È¤¨¤Þ¤»¤ó"
+#: cp/parser.c:9181
+msgid "type attributes are honored only at type definition"
+msgstr ""
-#: parse.y:2419
-#, c-format
-msgid "type specifier `%s' not allowed after struct or class"
-msgstr "·¿»ØÄê»Ò `%s' ¤Ï struct ¤ä class ¤Î¸å¤Ë¤Ï»È¤¨¤Þ¤»¤ó"
+#. [namespace.udecl]
+#.
+#. A using declaration shall not name a template-id.
+#: cp/parser.c:9565
+msgid "a template-id may not appear in a using-declaration"
+msgstr ""
-#: parse.y:2421
-#, c-format
-msgid "type qualifier `%s' not allowed after struct or class"
-msgstr "·¿½¤¾þ»Ò `%s' ¤Ï struct ¤ä class ¤Î¸å¤Ë¤Ï»È¤¨¤Þ¤»¤ó"
+#: cp/parser.c:9891
+#, fuzzy
+msgid "an asm-specification is not allowed on a function-definition"
+msgstr "½é´ü²½»Ò¥ê¥¹¥È¤ÏÈó¥á¥ó¥Ð´Ø¿ô¤Ç¤Ï»È¤¨¤Þ¤»¤ó"
+
+#: cp/parser.c:9893
+#, fuzzy
+msgid "attributes are not allowed on a function-definition"
+msgstr "Âç°è register ÊÑ¿ô¤¬´Ø¿ôÄêµÁ¤Î¸å¤í¤Ë¤¢¤ê¤Þ¤¹"
-#: parse.y:2423
-msgid "no body nor ';' separates two class, struct or union declarations"
-msgstr "ËÜÂΤ¬¤Ê¤¯¡¢class, struct °¿¤¤¤Ï union Àë¸À¤ò¶èÀÚ¤ë ';' ¤â¤¢¤ê¤Þ¤»¤ó"
+#: cp/parser.c:10026
+msgid "attributes after parenthesized initializer ignored"
+msgstr ""
-#: parse.y:2553
+#: cp/parser.c:11223
#, fuzzy
-msgid "no bases given following `:'"
-msgstr "´ðÄì¤ä¥á¥ó¥Ð½é´ü²½»Ò¥ê¥¹¥È¤¬ ':' ¤Î¸å¤Ë³¤¤¤Æ¤¤¤Þ¤»¤ó"
+msgid "file ends in default argument"
+msgstr "̵¸ú¤Ê¥Ç¥Õ¥©¥ë¥È¥Æ¥ó¥×¥ì¡¼¥È°ú¿ô"
-#: parse.y:2584 parse.y:2599
-msgid "`%D' access"
+#: cp/parser.c:11279
+msgid "deprecated use of default argument for parameter of non-function"
msgstr ""
-#: parse.y:2589
-msgid "multiple access specifiers"
-msgstr "½ÅÊ£¤¹¤ë¥¢¥¯¥»¥¹»ØÄê»Ò"
+#: cp/parser.c:11282
+#, fuzzy
+msgid "default arguments are only permitted for function parameters"
+msgstr "¥á¥½¥Ã¥É¤Ï´Ø¿ô¥Ý¥¤¥ó¥¿¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó"
-#: parse.y:2607
-msgid "multiple `virtual' specifiers"
-msgstr "½ÅÊ£¤¹¤ë `virtual' »ØÄê»Ò"
+#: cp/parser.c:12007
+msgid "declaration of `%D' in `%D' which does not enclose `%D'"
+msgstr ""
-#: parse.y:2644
-msgid "missing ';' before right brace"
-msgstr "±¦Â¦¥Ö¥ì¡¼¥¹¤ÎÁ°¤Î ';' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+#: cp/parser.c:12020
+msgid "extra qualification ignored"
+msgstr ""
-#: parse.y:2865
-msgid "ISO C++ forbids array dimensions with parenthesized type in new"
-msgstr "ISO C++ ¤Ï new Ãæ¤Ç¤Ï¡¢³ç¸Ì¤Î¤Ä¤¤¤¿ÇÛÎ󼡸µ¤ò¶Ø¤¸¤Þ¤¹"
+#: cp/parser.c:12031
+msgid "an explicit specialization must be preceded by 'template <>'"
+msgstr ""
-#: parse.y:3152 parse.y:3172 parse.y:3181 parse.y:3210
-msgid "`%T' is not a class or namespace"
+#: cp/parser.c:12311
+msgid "extra semicolon"
msgstr ""
-#: parse.y:3377
-msgid "ISO C++ forbids label declarations"
-msgstr "ISO C++ ¤Ï¥é¥Ù¥ëÀë¸À¤ò¶Ø¤¸¤Æ¤¤¤Þ¤¹"
+#: cp/parser.c:12329
+msgid "a class-key must be used when declaring a friend"
+msgstr ""
-#: parse.y:3537
-msgid "ISO C++ forbids computed gotos"
-msgstr "ISO C++ ¤Ï·×»»·¿ goto ¤ò¶Ø¤¸¤Þ¤¹"
+#: cp/parser.c:12360
+#, fuzzy
+msgid "friend declaration does not name a class or function"
+msgstr "friend Àë¸À¤¬¥¯¥é¥¹ÄêµÁ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó"
-#: parse.y:3545
-msgid "label must be followed by statement"
-msgstr "¥é¥Ù¥ë¤Î¸å¤í¤Ë¤Ïʸ¤¬É¬ÍפǤ¹"
+#: cp/parser.c:12531
+msgid "pure-specifier on function-definition"
+msgstr ""
-#: parse.y:3590
-msgid "must have at least one catch per try block"
+#: cp/parser.c:12804
+msgid "keyword `typename' not allowed outside of templates"
msgstr ""
-#: parse.y:3650
-msgid "ISO C++ forbids compound statements inside for initializations"
-msgstr "ISO C++ ½é´ü²½»Ò¤ÎÆâÉô¤Ç¤Ïʣʸ¤¬¶Ø¤¸¤é¤ì¤Æ¤¤¤Þ¤¹"
+#: cp/parser.c:12806
+msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)"
+msgstr ""
-#. This helps us recover from really nasty
-#. parse errors, for example, a missing right
-#. parenthesis.
-#: parse.y:3737 parse.y:3747
-msgid "possibly missing ')'"
-msgstr "¤ª¤½¤é¤¯ ')' ¤ò˺¤ì¤Æ¤¤¤Þ¤¹"
+#: cp/parser.c:13624
+#, fuzzy
+msgid "reference to `%D' is ambiguous"
+msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤Ï¤¢¤¤¤Þ¤¤¤Ç¤¹\n"
-#: parse.y:3840
-msgid "type specifier omitted for parameter"
-msgstr "·¿»ØÄê»Ò¤Ï²¾°ú¿ôÍѤ˾Êά¤µ¤ì¤Þ¤·¤¿"
+#: cp/parser.c:13798
+msgid "too few template-parameter-lists"
+msgstr ""
-#: parse.y:3849
-#, c-format
-msgid "`%E' is not a type, use `typename %E' to make it one"
+#. Otherwise, there are too many template parameter lists. We have
+#. something like:
+#.
+#. template <class T> template <class U> void S::f();
+#: cp/parser.c:13813
+msgid "too many template-parameter-lists"
msgstr ""
-#: parse.y:3851
+#. If begin_function_definition didn't like the definition, skip
+#. the entire function.
+#: cp/parser.c:14090
#, fuzzy
-msgid "no type `%D' in `%T'"
-msgstr "`%s' ¤ÎÌá¤êÃͤη¿¤¬ `int' ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+msgid "invalid function declaration"
+msgstr "̵¸ú¤ÊÀë¸À¤Ç¤¹"
-#: parse.y:3854
-#, fuzzy, c-format
-msgid "type specifier omitted for parameter `%E'"
-msgstr "·¿»ØÄê»Ò¤Ï²¾°ú¿ôÍѤ˾Êά¤µ¤ì¤Þ¤·¤¿"
+#. Issue an error message.
+#: cp/parser.c:14127
+#, fuzzy
+msgid "named return values are no longer supported"
+msgstr "--driver ¤ÏºÇÁ᥵¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: parse.y:3862
-msgid "'%D' is used as a type, but is not defined as a type."
+#: cp/parser.c:14455
+#, fuzzy
+msgid "`>>' should be `> >' within a nested template argument list"
+msgstr "`>>' ¤Ï¥Æ¥ó¥×¥ì¡¼¥È¥¯¥é¥¹Ì¾¤Ï `> >' ¤È¤¹¤Ù¤­¤Ç¤¹"
+
+#. If this is not a nested template argument list, the '>>' is
+#. a typo for '>'. Emit an error message and continue.
+#: cp/parser.c:14463
+msgid "spurious `>>', use `>' to terminate a template argument list"
+msgstr ""
+
+#: cp/parser.c:14950
+msgid "`%s' tag used in naming `%#T'"
msgstr ""
-#: cp/pt.c:284
+#: cp/parser.c:14970
+#, fuzzy
+msgid "%D redeclared with different access"
+msgstr "`%s' ¤¬Ê̤Υ·¥ó¥Ü¥ë¼ï¤È¤·¤ÆºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
+
+#: cp/parser.c:14987
+msgid "`template' (as a disambiguator) is only allowed within templates"
+msgstr ""
+
+#: cp/pt.c:243
#, fuzzy
msgid "data member `%D' cannot be a member template"
msgstr "Èó¥á¥ó¥Ð `%s' ¤ò `mutable' ¤È¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/pt.c:296
+#: cp/pt.c:255
#, fuzzy
msgid "invalid member template declaration `%D'"
msgstr "¥é¥Ù¥ë¤ÎÀë¸À `%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-#: cp/pt.c:691
+#: cp/pt.c:637
msgid "explicit specialization in non-namespace scope `%D'"
msgstr ""
-#: cp/pt.c:703
+#: cp/pt.c:649
msgid "enclosing class templates are not explicitly specialized"
msgstr ""
-#: cp/pt.c:792 cp/pt.c:833
+#: cp/pt.c:739 cp/pt.c:780
msgid "specializing `%#T' in different namespace"
msgstr ""
-#: cp/pt.c:793 cp/pt.c:834
+#: cp/pt.c:740 cp/pt.c:781
#, fuzzy
msgid " from definition of `%#D'"
msgstr "`%s' ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-#: cp/pt.c:801
+#: cp/pt.c:748
#, fuzzy
msgid "specialization of `%T' after instantiation"
msgstr "`%s' ¤ÎÀë¸À¤Ë `extern' ¤¬¤Ä¤¤¤Æ¤ª¤ê¡¢½é´ü²½¤â¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: cp/pt.c:848
+#: cp/pt.c:795
msgid "specialization `%T' after instantiation `%T'"
msgstr ""
-#: cp/pt.c:860
+#: cp/pt.c:807
#, fuzzy
msgid "explicit specialization of non-template `%T'"
msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë"
-#: cp/pt.c:992
+#: cp/pt.c:1067
msgid "specialization of %D after instantiation"
msgstr ""
-#: cp/pt.c:1096
+#: cp/pt.c:1192
#, fuzzy
msgid "%s %+#D"
msgstr "%s: %s"
-#: cp/pt.c:1147
+#: cp/pt.c:1241
#, fuzzy
msgid "`%D' is not a function template"
msgstr "¥­¥ã¥¹¥È¤Ë¤è¤ë´Ø¿ô¤Î·¿¤¬Å¬¹ç¤·¤Þ¤»¤ó"
-#: cp/pt.c:1286
+#: cp/pt.c:1380
msgid "template-id `%D' for `%+D' does not match any template declaration"
msgstr ""
-#: cp/pt.c:1294
+#: cp/pt.c:1388
msgid "ambiguous template specialization `%D' for `%+D'"
msgstr ""
#. This case handles bogus declarations like template <>
#. template <class T> void f<int>();
-#: cp/pt.c:1521 cp/pt.c:1595
+#: cp/pt.c:1611 cp/pt.c:1685
#, fuzzy
msgid "template-id `%D' in declaration of primary template"
msgstr "`operator delete' ¤ÎÀë¸ÀÆâ¤Ë¿¤¹¤®¤ë°ú¿ô"
-#: cp/pt.c:1534
+#: cp/pt.c:1624
#, fuzzy
msgid "template parameter list used in explicit instantiation"
msgstr "#define Ãæ¤Î²¾°ú¿ô¥ê¥¹¥È¤¬½ªÃ¼¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: cp/pt.c:1540
+#: cp/pt.c:1630
msgid "definition provided for explicit instantiation"
msgstr ""
-#: cp/pt.c:1546
+#: cp/pt.c:1636
#, fuzzy
msgid "too many template parameter lists in declaration of `%D'"
msgstr "%s: ·Ù¹ð: `%s' ¤ÎÀë¸À¤Ç¤Î²¾°ú¿ô¥ê¥¹¥È¤¬Â¿¤¹¤®¤Þ¤¹\n"
-#: cp/pt.c:1562
+#: cp/pt.c:1652
#, fuzzy
msgid "too few template parameter lists in declaration of `%D'"
msgstr ""
"\n"
"%s: ·Ù¹ð: `%s' ¤ÎÀë¸À¤Ç¤Î²¾°ú¿ô¥ê¥¹¥È¤¬¾¯¤Ê¤¹¤®¤Þ¤¹\n"
-#: cp/pt.c:1579
+#: cp/pt.c:1669
msgid "explicit specialization not preceded by `template <>'"
msgstr ""
-#: cp/pt.c:1592
+#: cp/pt.c:1682
msgid "partial specialization `%D' of function template"
msgstr ""
-#: cp/pt.c:1624
+#: cp/pt.c:1714
msgid "default argument specified in explicit specialization"
msgstr ""
-#: cp/pt.c:1628
+#: cp/pt.c:1718
msgid "template specialization with C linkage"
msgstr ""
@@ -17472,108 +16838,115 @@ msgstr ""
#. program is ill-formed.
#.
#. Similar language is found in [temp.explicit].
-#: cp/pt.c:1715
+#: cp/pt.c:1802
msgid "specialization of implicitly-declared special member function"
msgstr ""
-#: cp/pt.c:1759
+#: cp/pt.c:1846
#, fuzzy
msgid "no member function `%D' declared in `%T'"
msgstr "¥Í¥¹¥È¤·¤¿´Ø¿ô `%s' ¤Ï `extern' ¤ËÀë¸À¤µ¤ì¤Þ¤·¤¿"
#. There are two many template parameter lists.
-#: cp/pt.c:1909
+#: cp/pt.c:2001
#, fuzzy
msgid "too many template parameter lists in declaration of `%T'"
msgstr "%s: ·Ù¹ð: `%s' ¤ÎÀë¸À¤Ç¤Î²¾°ú¿ô¥ê¥¹¥È¤¬Â¿¤¹¤®¤Þ¤¹\n"
-#: cp/pt.c:2005
+#: cp/pt.c:2094
msgid " shadows template parm `%#D'"
msgstr ""
-#: cp/pt.c:2409
+#: cp/pt.c:2491
msgid "template parameters not used in partial specialization:"
msgstr ""
-#: cp/pt.c:2413
+#: cp/pt.c:2495
msgid " `%D'"
msgstr ""
-#: cp/pt.c:2425
+#: cp/pt.c:2507
msgid "partial specialization `%T' does not specialize any template arguments"
msgstr ""
-#: cp/pt.c:2450
+#: cp/pt.c:2532
#, c-format
msgid "template argument `%E' involves template parameter(s)"
msgstr ""
-#: cp/pt.c:2494
+#: cp/pt.c:2576
msgid "type `%T' of template argument `%E' depends on template parameter(s)"
msgstr ""
-#: cp/pt.c:2582
+#: cp/pt.c:2661
#, fuzzy
msgid "no default argument for `%D'"
msgstr "`%s' ¤Î°ú¿ô¤È¤·¤Æ̵¸ú¤Ê·¿"
-#: cp/pt.c:2735
+#: cp/pt.c:2810
msgid "template with C linkage"
msgstr ""
-#: cp/pt.c:2738
+#: cp/pt.c:2813
msgid "template class without a name"
msgstr ""
-#: cp/pt.c:2815
+#. [temp.mem]
+#.
+#. A destructor shall not be a member template.
+#: cp/pt.c:2820
+msgid "destructor `%D' declared as member template"
+msgstr ""
+
+#: cp/pt.c:2900
msgid "`%D' does not declare a template type"
msgstr ""
-#: cp/pt.c:2821
+#: cp/pt.c:2906
#, fuzzy
msgid "template definition of non-template `%#D'"
msgstr "¥¤¥ó¥¹¥¿¥ó¥¹¥á¥½¥Ã¥É `%s' ¤ÎÄêµÁ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£"
-#: cp/pt.c:2862
+#: cp/pt.c:2947
msgid "expected %d levels of template parms for `%#D', got %d"
msgstr ""
-#: cp/pt.c:2874
+#: cp/pt.c:2959
#, fuzzy
msgid "got %d template parameters for `%#D'"
msgstr "½ÅÊ£¤·¤¿²¾°ú¿ô̾ `%s'"
-#: cp/pt.c:2877
+#: cp/pt.c:2962
#, fuzzy
msgid "got %d template parameters for `%#T'"
msgstr "½ÅÊ£¤·¤¿²¾°ú¿ô̾ `%s'"
-#: cp/pt.c:2879
+#: cp/pt.c:2964
#, c-format
msgid " but %d required"
msgstr ""
-#: cp/pt.c:2962
+#: cp/pt.c:3042
#, fuzzy
msgid "`%T' is not a template type"
msgstr "`%s' ¤ÏÉÔ´°Á´·¿¤Ç¤¹"
-#: cp/pt.c:2978
+#: cp/pt.c:3058
#, fuzzy
msgid "previous declaration `%D'"
msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
-#: cp/pt.c:2979
+#: cp/pt.c:3059
#, fuzzy, c-format
msgid "used %d template parameter%s instead of %d"
msgstr "½ÅÊ£¤·¤¿²¾°ú¿ô̾ `%s'"
-#: cp/pt.c:2995
+#: cp/pt.c:3075
#, fuzzy
msgid "template parameter `%#D'"
msgstr "°ú¿ô `%s' ¤¬Ì¤»ÈÍѤǤ¹"
-#: cp/pt.c:2996
+#: cp/pt.c:3076
msgid "redeclared here as `%#D'"
msgstr ""
@@ -17581,763 +16954,780 @@ msgstr ""
#.
#. A template-parameter may not be given default arguments
#. by two different declarations in the same scope.
-#: cp/pt.c:3006
+#: cp/pt.c:3086
#, fuzzy
msgid "redefinition of default argument for `%#D'"
msgstr "`%s' ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
-#: cp/pt.c:3007
-#, fuzzy
-msgid " original definition appeared here"
-msgstr "´Ø¿ô¤ÎÄêµÁ¤¬ `typedef' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
+#: cp/pt.c:3087
+msgid "%J original definition appeared here"
+msgstr ""
-#: cp/pt.c:3100
+#: cp/pt.c:3235
#, fuzzy, c-format
msgid "`%E' is not a valid template argument"
msgstr "̵¸ú¤Ê¥Ç¥Õ¥©¥ë¥È¥Æ¥ó¥×¥ì¡¼¥È°ú¿ô"
-#: cp/pt.c:3104
+#: cp/pt.c:3239
msgid "it must be the address of a function with external linkage"
msgstr ""
-#: cp/pt.c:3106
+#: cp/pt.c:3241
msgid "it must be the address of an object with external linkage"
msgstr ""
-#: cp/pt.c:3110
+#: cp/pt.c:3244
msgid "it must be a pointer-to-member of the form `&X::Y'"
msgstr ""
-#: cp/pt.c:3121
+#: cp/pt.c:3255
#, c-format
msgid "string literal %E is not a valid template argument because it is the address of an object with static linkage"
msgstr ""
-#: cp/pt.c:3133
+#: cp/pt.c:3270
#, c-format
msgid "address of non-extern `%E' cannot be used as template argument"
msgstr ""
-#: cp/pt.c:3144
+#: cp/pt.c:3279
#, fuzzy, c-format
msgid "non-constant `%E' cannot be used as template argument"
msgstr "const `%s' ¤ò `mutable' ¤È¤·¤ÆÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/pt.c:3151
+#: cp/pt.c:3287
+msgid "type '%T' cannot be used as a value for a non-type template-parameter"
+msgstr ""
+
+#: cp/pt.c:3290
+#, fuzzy
+msgid "invalid use of '%D' as a non-type template-argument"
+msgstr "̵¸ú¤Ê¥Ç¥Õ¥©¥ë¥È¥Æ¥ó¥×¥ì¡¼¥È°ú¿ô"
+
+#: cp/pt.c:3292
#, fuzzy, c-format
-msgid "object `%E' cannot be used as template argument"
-msgstr "\"%s\" ¤Ï¥Þ¥¯¥í̾¤È¤·¤Æ¤Ï»È¤¨¤Þ¤»¤ó"
+msgid "invalid use of '%E' as a non-type template-argument"
+msgstr "̵¸ú¤Ê¥Ç¥Õ¥©¥ë¥È¥Æ¥ó¥×¥ì¡¼¥È°ú¿ô"
-#: cp/pt.c:3526
+#: cp/pt.c:3657
#, c-format
msgid "to refer to a type member of a template parameter, use `typename %E'"
msgstr ""
-#: cp/pt.c:3539 cp/pt.c:3555 cp/pt.c:3594
+#: cp/pt.c:3670 cp/pt.c:3688 cp/pt.c:3727
msgid "type/value mismatch at argument %d in template parameter list for `%D'"
msgstr ""
-#: cp/pt.c:3542
+#: cp/pt.c:3673
msgid " expected a constant of type `%T', got `%T'"
msgstr ""
-#: cp/pt.c:3546
+#: cp/pt.c:3677
+#, c-format
+msgid " expected a class template, got `%E'"
+msgstr ""
+
+#: cp/pt.c:3679
#, fuzzy, c-format
msgid " expected a type, got `%E'"
msgstr "ͽ´ü¤·¤Ê¤¤·¿¤¬ `id' (%s) ¤Ë»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: cp/pt.c:3558
+#: cp/pt.c:3691
#, fuzzy
msgid " expected a type, got `%T'"
msgstr "ͽ´ü¤·¤Ê¤¤·¿¤¬ `id' (%s) ¤Ë»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: cp/pt.c:3560
+#: cp/pt.c:3693
msgid " expected a class template, got `%T'"
msgstr ""
-#: cp/pt.c:3596
+#: cp/pt.c:3729
msgid " expected a template of type `%D', got `%D'"
msgstr ""
-#: cp/pt.c:3618
-msgid "template-argument `%T' uses anonymous type"
-msgstr ""
-
-#: cp/pt.c:3621
-msgid "template-argument `%T' uses local type `%T'"
-msgstr ""
-
-#: cp/pt.c:3631
-msgid "template-argument `%T' is a variably modified type"
-msgstr ""
-
-#: cp/pt.c:3666
+#: cp/pt.c:3764
msgid "could not convert template argument `%E' to `%T'"
msgstr ""
-#: cp/pt.c:3710
+#: cp/pt.c:3804
#, c-format
msgid "wrong number of template arguments (%d, should be %d)"
msgstr ""
-#: cp/pt.c:3714
+#: cp/pt.c:3808
#, fuzzy
msgid "provided for `%D'"
msgstr "`%#D' ¤Î¤¿¤á¤Î¥Ç¥¹¥È¥é¥¯¥¿¤¬É¬ÍפǤ¹"
-#: cp/pt.c:3761
+#: cp/pt.c:3836
#, fuzzy, c-format
msgid "template argument %d is invalid"
msgstr "¥Þ¥¯¥í°ú¿ô \"%s\" ¤Ïʸ»úÎ󲽤µ¤ì¤Þ¤¹"
-#: cp/pt.c:3997
+#: cp/pt.c:4057
msgid "non-template used as template"
msgstr ""
-#: cp/pt.c:4139
-#, fuzzy
-msgid "`%T' is not a template"
-msgstr "¥Æ¥ó¥×¥ì¡¼¥ÈÆâ¤Ç `%s' ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹"
-
-#: cp/pt.c:4152
+#: cp/pt.c:4197
msgid "non-template type `%T' used as a template"
msgstr ""
-#: cp/pt.c:4154
+#: cp/pt.c:4199
#, fuzzy
msgid "for template declaration `%D'"
msgstr "¶õ¤ÎÀë¸À¤Ç¤¹"
-#: cp/pt.c:4770
+#: cp/pt.c:4846
msgid "template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN to increase the maximum) instantiating `%D'"
msgstr ""
-#: cp/pt.c:5247
+#: cp/pt.c:5286
#, fuzzy
msgid "ambiguous class template instantiation for `%#T'"
msgstr "¼«Æ°¥Æ¥ó¥×¥ì¡¼¥È¼ÂÂ⽤òÍ­¸ú¤Ë¤¹¤ë"
-#: cp/pt.c:5254
+#: cp/pt.c:5292
#, fuzzy
msgid "%s %+#T"
msgstr "%s: %s"
-#: cp/pt.c:6284 cp/pt.c:6396
+#: cp/pt.c:6291 cp/pt.c:6411
#, fuzzy
msgid "instantiation of `%D' as type `%T'"
msgstr "%s: `%s' ¤Î½é´ü²½:\n"
-#: cp/pt.c:6440
+#: cp/pt.c:6453
#, fuzzy
msgid "invalid parameter type `%T'"
msgstr "²¾°ú¿ô `%s' ¤Ï̵¸ú¤Ç¤¹"
-#: cp/pt.c:6442
+#: cp/pt.c:6455
#, fuzzy
msgid "in declaration `%D'"
msgstr "`%s' ¤¬ºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/pt.c:6517
+#: cp/pt.c:6529
#, fuzzy
msgid "creating pointer to member function of non-class type `%T'"
msgstr "¥á¥ó¥Ð´Ø¿ô¤Ø¤Î¥Ý¥¤¥ó¥¿¤¬¸Æ¤Ð¤ì¤Þ¤·¤¿¤¬¡¢¥¯¥é¥¹¥¹¥³¡¼¥×Æâ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/pt.c:6680
+#: cp/pt.c:6668
msgid "creating array with size zero"
msgstr "Â礭¤µ¥¼¥í¤ÎÇÛÎó¤òºî¤í¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: cp/pt.c:6694
+#: cp/pt.c:6682
#, fuzzy, c-format
msgid "creating array with size zero (`%E')"
msgstr "Â礭¤µ¥¼¥í¤ÎÇÛÎó¤òºî¤í¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: cp/pt.c:6933
+#: cp/pt.c:6921
#, fuzzy
msgid "forming reference to void"
msgstr "°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤Ø¤Î»²¾È¤òÊÖ¤½¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: cp/pt.c:6935
+#: cp/pt.c:6923
msgid "forming %s to reference type `%T'"
msgstr ""
-#: cp/pt.c:6973
+#: cp/pt.c:6960
#, fuzzy
msgid "creating pointer to member of non-class type `%T'"
msgstr " ¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð¤Ø¤ÎÊÑ´¹¤Ç"
-#: cp/pt.c:6979
+#: cp/pt.c:6966
#, fuzzy
msgid "creating pointer to member reference type `%T'"
msgstr " ¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð¤Ø¤ÎÊÑ´¹¤Ç"
-#: cp/pt.c:7057
+#: cp/pt.c:7052
#, fuzzy
msgid "creating array of `%T'"
msgstr "°ú¿ô %d ¸Ä¤Î `%s' ¤òÅϤ·¤Þ¤¹"
-#: cp/pt.c:7100
+#: cp/pt.c:7058
+msgid "creating array of `%T', which is an abstract class type"
+msgstr ""
+
+#: cp/pt.c:7102
msgid "`%T' is not a class, struct, or union type"
msgstr ""
-#: cp/pt.c:7213
+#: cp/pt.c:7215
#, c-format
msgid "use of `%s' in template"
msgstr "¥Æ¥ó¥×¥ì¡¼¥ÈÆâ¤Ç `%s' ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹"
-#: cp/pt.c:7975
-msgid "type `%T' composed from a local class is not a valid template-argument"
+#: cp/pt.c:7327
+#, c-format
+msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type"
msgstr ""
-#: cp/pt.c:7976
+#: cp/pt.c:7329
+#, c-format
+msgid "say `typename %E' if a type is meant"
+msgstr ""
+
+#: cp/pt.c:8586
+msgid "`%T' uses anonymous type"
+msgstr ""
+
+#: cp/pt.c:8588
+msgid "`%T' uses local type `%T'"
+msgstr ""
+
+#: cp/pt.c:8596
+msgid "`%T' is a variably modified type"
+msgstr ""
+
+#: cp/pt.c:8607
+#, fuzzy, c-format
+msgid "integral expression `%E' is not constant"
+msgstr "½é´ü²½»Ò¤ÎÍ×ÁǤ¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+
+#: cp/pt.c:8612
#, fuzzy
msgid " trying to instantiate `%D'"
msgstr "%s:%d: `%s' ¤«¤é¼ÂÂ⽤µ¤ì¤Þ¤·¤¿\n"
-#: cp/pt.c:8421
+#: cp/pt.c:9125
msgid "incomplete type unification"
msgstr "ÉÔ´°Á´¤Ê·¿¤Îñ°ì²½"
-#: cp/pt.c:9387
+#: cp/pt.c:10072
#, c-format
msgid "use of `%s' in template type unification"
msgstr "¥Æ¥ó¥×¥ì¡¼¥È·¿Åý°ìÃæ `%s' ¤¬»ÈÍѤµ¤ì¤Þ¤·¤¿"
-#: cp/pt.c:9821 cp/pt.c:9893
+#: cp/pt.c:10506 cp/pt.c:10578
#, fuzzy
msgid "explicit instantiation of non-template `%#D'"
msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë"
-#: cp/pt.c:9837 cp/pt.c:9888
+#: cp/pt.c:10522 cp/pt.c:10573
msgid "no matching template for `%D' found"
msgstr ""
-#: cp/pt.c:9843
+#: cp/pt.c:10528
#, fuzzy
msgid "explicit instantiation of `%#D'"
msgstr "%s: `%s' ¤Î½é´ü²½:\n"
-#: cp/pt.c:9880
+#: cp/pt.c:10565
#, fuzzy
msgid "duplicate explicit instantiation of `%#D'"
msgstr "¥é¥Ù¥ë¤ÎÀë¸À `%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-#: cp/pt.c:9905
+#: cp/pt.c:10587
#, fuzzy
msgid "ISO C++ forbids the use of `extern' on explicit instantiations"
msgstr "ISO C++ ¤Ï¸º»»¤Ë¥á¥½¥Ã¥É¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/pt.c:9909 cp/pt.c:9999
+#: cp/pt.c:10591 cp/pt.c:10672
#, fuzzy
msgid "storage class `%D' applied to template instantiation"
msgstr "¼«Æ°¥Æ¥ó¥×¥ì¡¼¥È¼ÂÂ⽤òÍ­¸ú¤Ë¤¹¤ë"
-#: cp/pt.c:9966
+#: cp/pt.c:10644
#, fuzzy
msgid "explicit instantiation of non-template type `%T'"
msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë"
-#: cp/pt.c:9980
+#: cp/pt.c:10653
#, fuzzy
msgid "explicit instantiation of `%#T' before definition of template"
msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë"
-#: cp/pt.c:9988
+#: cp/pt.c:10661
#, fuzzy, c-format
msgid "ISO C++ forbids the use of `%s' on explicit instantiations"
msgstr "ISO C++ ¤Ï¸º»»¤Ë´Ø¿ô¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/pt.c:10032
+#: cp/pt.c:10705
#, fuzzy
msgid "duplicate explicit instantiation of `%#T'"
msgstr "¥é¥Ù¥ë¤ÎÀë¸À `%s' ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-#: cp/pt.c:10412
+#: cp/pt.c:11086
#, fuzzy
msgid "explicit instantiation of `%D' but no definition available"
msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë"
-#: cp/pt.c:10815
+#: cp/pt.c:11520
#, fuzzy
msgid "`%#T' is not a valid type for a template constant parameter"
msgstr "'#' ¤Ë¥Þ¥¯¥í²¾°ú¿ô̾¤¬Â³¤¤¤Æ¤¤¤Þ¤»¤ó"
-#: cp/repo.c:271
+#: cp/repo.c:259
msgid "-frepo must be used with -c"
msgstr "-frepo ¤Ï -c ÉÕ¤­¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cp/repo.c:361
+#: cp/repo.c:346
#, c-format
msgid "mysterious repository information in %s"
msgstr "%s ¤ËÉԲIJò¤Ê¥ê¥Ý¥¸¥È¥ê¾ðÊ󤬤¢¤ê¤Þ¤¹"
-#: cp/repo.c:376
+#: cp/repo.c:361
#, c-format
msgid "can't create repository information file `%s'"
msgstr "¥Õ¥¡¥¤¥ë `%s' ¤Ë¥ê¥Ý¥¸¥È¥ê¾ðÊó¤òºîÀ®¤Ç¤­¤Þ¤»¤ó"
-#: cp/rtti.c:240
+#: cp/rtti.c:248
msgid "cannot use typeid with -fno-rtti"
msgstr "-fno-rtti ¤¬»ØÄꤵ¤ì¤ë¤È typeid ¤ò»È¤¨¤Þ¤»¤ó"
-#: cp/rtti.c:246
+#: cp/rtti.c:254
msgid "must #include <typeinfo> before using typeid"
msgstr "typeid ¤ò»È¤¦Á°¤Ë #include <typeinfo> ¤È¤·¤Ê¤¤¤È¤¤¤±¤Þ¤»¤ó"
-#: cp/rtti.c:320
+#: cp/rtti.c:326
msgid "cannot create type information for type `%T' because its size is variable"
msgstr ""
-#: cp/rtti.c:584 cp/rtti.c:598
+#: cp/rtti.c:580 cp/rtti.c:594
msgid "dynamic_cast of `%#D' to `%#T' can never succeed"
msgstr ""
-#: cp/rtti.c:674
+#: cp/rtti.c:675
msgid "cannot dynamic_cast `%E' (of type `%#T') to type `%#T' (%s)"
msgstr ""
-#: cp/search.c:332
+#: cp/search.c:306
msgid "`%T' is an ambiguous base of `%T'"
msgstr ""
-#: cp/search.c:350
+#: cp/search.c:324
msgid "`%T' is an inaccessible base of `%T'"
msgstr ""
-#. At parse time, we don't want to give this error, since
-#. we won't have enough state to make this kind of
-#. decision properly. But there are times (e.g., with
-#. enums in nested classes) when we do need to call
-#. this fn at parse time. So, in those cases, we pass
-#. complain as a 0 and just return a NULL_TREE.
-#: cp/search.c:1638
-#, fuzzy
-msgid "assignment to non-static member `%D' of enclosing class `%T'"
-msgstr "final static ¥Õ¥£¡¼¥ë¥É `%s' ¤Ø¤ÎÂåÆþ¤Ç¤¹¤¬¡¢¤½¤Î¥Õ¥£¡¼¥ë¥É¤Î¥¯¥é¥¹Æâ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-
-#: cp/search.c:2050
-msgid "adjusting pointers for covariant returns"
-msgstr "¶¦ÊÑ(covariant)Ìá¤êÃͤؤΥݥ¤¥ó¥¿¤òÄ´À°¤·¤Þ¤¹"
-
-#: cp/search.c:2054 cp/search.c:2061
+#: cp/search.c:1756
#, fuzzy
msgid "invalid covariant return type for `%#D'"
msgstr "`%s' ¤ËÂФ¹¤ë¥ì¥¸¥¹¥¿Ì¾¤È¤·¤Æ̵¸ú¤Ç¤¹"
-#: cp/search.c:2055
-msgid " overriding `%#D' (must be pointer or reference to class)"
-msgstr ""
-
-#: cp/search.c:2062
-msgid " overriding `%#D' (must use pointer or reference)"
+#: cp/search.c:1757 cp/search.c:1763
+msgid " overriding `%#D'"
msgstr ""
-#: cp/search.c:2067
+#: cp/search.c:1761
#, fuzzy
msgid "conflicting return type specified for `%#D'"
msgstr "`%s' ¤È·¿¤¬Ì·½â¤·¤Þ¤¹"
-#: cp/search.c:2068
-msgid " overriding `%#D'"
-msgstr ""
-
-#: cp/search.c:2077
+#: cp/search.c:1775
#, fuzzy, c-format
msgid "looser throw specifier for `%#F'"
msgstr "`%s' ¤ËÂФ·¤Æ char ¤È¤È¤â¤Ë long ¤Þ¤¿¤Ï short ¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹"
-#: cp/search.c:2078
+#: cp/search.c:1776
#, c-format
msgid " overriding `%#F'"
msgstr ""
#. A static member function cannot match an inherited
#. virtual member function.
-#: cp/search.c:2167
+#: cp/search.c:1866
#, fuzzy
msgid "`%#D' cannot be declared"
msgstr "const `%s' ¤ò `mutable' ¤È¤·¤ÆÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/search.c:2168
+#: cp/search.c:1867
msgid " since `%#D' declared in base class"
msgstr ""
-#: cp/search.c:2309
+#: cp/search.c:1944
msgid "`%#D' needs a final overrider"
msgstr ""
-#: cp/semantics.c:919
+#: cp/semantics.c:1092
#, fuzzy, c-format
msgid "type of asm operand `%E' could not be determined"
msgstr "²¾°ú¿ô `%s' ¤Î·¿¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: cp/semantics.c:1051
-msgid "ISO C++ does not permit named return values"
-msgstr "ISO C++ ¤Ï̾Á°¤Ä¤­Ìá¤êÃͤòµö²Ä¤·¤Þ¤»¤ó"
+#: cp/semantics.c:1233
+#, fuzzy
+msgid "invalid use of member `%D' in static member function"
+msgstr "Èó¥á¥ó¥Ð´Ø¿ô¤Ç¤Î `this' ¤Î»ÈÍѤÏ̵¸ú¤Ç¤¹"
-#: cp/semantics.c:1060
-msgid "return identifier `%D' already in place"
+#: cp/semantics.c:1237 cp/semantics.c:1276
+msgid "from this location"
msgstr ""
-#: cp/semantics.c:1068
-msgid "can't redefine default return value for constructors"
-msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿ÍѤΥǥե©¥ë¥ÈÌá¤êÃͤòºÆÄêµÁ¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
+#: cp/semantics.c:1275
+#, fuzzy
+msgid "object missing in reference to `%D'"
+msgstr "ÇÛÎ󻲾ȤǤÎź»ú¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: cp/semantics.c:1100
-msgid "only constructors take base initializers"
-msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤·¤«´ðÄì½é´ü²½»Ò¥ê¥¹¥È¤ò¤È¤ê¤Þ¤»¤ó"
+#: cp/semantics.c:1721
+#, fuzzy
+msgid "arguments to destructor are not allowed"
+msgstr "°ú¿ô¤¬¹½Â¤ÂΤǤ¹"
-#: cp/semantics.c:1343
+#: cp/semantics.c:1769
msgid "`this' is unavailable for static member functions"
msgstr "`this' ¤ÏÀÅŪ¥á¥ó¥Ð´Ø¿ô¤«¤é»ÈÍѤǤ­¤Þ¤»¤ó"
-#: cp/semantics.c:1349
+#: cp/semantics.c:1775
msgid "invalid use of `this' in non-member function"
msgstr "Èó¥á¥ó¥Ð´Ø¿ô¤Ç¤Î `this' ¤Î»ÈÍѤÏ̵¸ú¤Ç¤¹"
-#: cp/semantics.c:1351
+#: cp/semantics.c:1777
msgid "invalid use of `this' at top level"
msgstr "¥È¥Ã¥×¥ì¥Ù¥ë¤Ç¤Î `this' ¤Î»ÈÍѤÏ̵¸ú¤Ç¤¹"
-#: cp/semantics.c:1381
-msgid "calling type `%T' like a method"
-msgstr ""
-
-#: cp/semantics.c:1419
-msgid "destructor specifier `%T::~%T()' must have matching names"
+#: cp/semantics.c:1801
+msgid "invalid qualifying scope in pseudo-destructor name"
msgstr ""
-#: cp/semantics.c:1425
+#: cp/semantics.c:1807
#, fuzzy
msgid "`%E' is not of type `%T'"
msgstr "`%s' ¤Ï `%s' ¤Ë±þÅú¤·¤Þ¤»¤ó"
-#: cp/semantics.c:1613
+#: cp/semantics.c:1918
msgid "template type parameters must use the keyword `class' or `typename'"
msgstr "¥Æ¥ó¥×¥ì¡¼¥È·¿²¾°ú¿ô¤Ë¤Ï `class' ¤ä `typename' ͽÌó¸ì¤ò»È¤ï¤Í¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: cp/semantics.c:1652
-msgid "invalid default template argument"
+#: cp/semantics.c:1962
+msgid "invalid use of type `%T' as a default value for a template template-parameter"
+msgstr ""
+
+#: cp/semantics.c:1965
+msgid "invalid use of `%D' as a default value for a template template-parameter"
+msgstr ""
+
+#: cp/semantics.c:1969
+#, fuzzy
+msgid "invalid default argument for a template template parameter"
msgstr "̵¸ú¤Ê¥Ç¥Õ¥©¥ë¥È¥Æ¥ó¥×¥ì¡¼¥È°ú¿ô"
-#: cp/semantics.c:1694
+#: cp/semantics.c:2004
#, fuzzy
msgid "definition of `%#T' inside template parameter list"
msgstr "`%s' ¤ÎÀë¸À¤Ï²¾°ú¿ô¥ê¥¹¥È¤Î¥·¥ó¥Ü¥ë¤òʤ¤¤±£¤·¤Þ¤¹"
-#: cp/semantics.c:1710
+#: cp/semantics.c:2015
#, fuzzy
msgid "invalid definition of qualified type `%T'"
msgstr "̤ÄêµÁ¤Î·¿ `%s %s' ¤Î»ÈÍѤÏÉÔŬÀڤǤ¹"
-#: cp/semantics.c:2053
+#: cp/semantics.c:2030
+#, fuzzy
+msgid "previous definition of `%#T'"
+msgstr "`%s' ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
+
+#: cp/semantics.c:2225
#, fuzzy
msgid "invalid base-class specification"
msgstr "̵¸ú¤ÊÀë¸À¤Ç¤¹"
-#: cp/semantics.c:2062
+#: cp/semantics.c:2234
msgid "base class `%T' has cv qualifiers"
msgstr ""
-#: cp/semantics.c:2093
+#: cp/semantics.c:2266
#, fuzzy
msgid "multiple declarators in template declaration"
msgstr "°ì¤Ä¤ÎÀë¸À¤ËÊ£¿ô¤Î·¿¤¬¤¢¤ê¤Þ¤¹"
-#: cp/semantics.c:2120
-#, fuzzy, c-format
-msgid "type of `%E' is unknown"
-msgstr "¥ì¥¸¥¹¥¿ '%c' ¤¬ÉÔÌÀ¤Ç¤¹"
-
-#: cp/spew.c:225
-#, c-format
-msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
-msgstr "¼±ÊÌ»Ò̾ `%s' ¤Ï GNU C++ ÆâÉô¤Î¥Í¡¼¥ß¥ó¥°Àïά¤È¶¥¹ç¤·¤Þ¤¹"
-
-#: cp/spew.c:1002 cp/spew.c:1340
-msgid "parse error at end of saved function text"
-msgstr "ÊݸºÑ¤ß´Ø¿ô¥Æ¥­¥¹¥È¤ÎËöÈø¤Ç¹½Ê¸²òÀÏ¥¨¥é¡¼"
+#: cp/semantics.c:2277
+msgid "incomplete type `%T' used in nested name specifier"
+msgstr ""
-#: cp/spew.c:1090 cp/spew.c:1178
+#: cp/semantics.c:2279 cp/typeck.c:1616
#, fuzzy
-msgid "%Hend of file read inside definition"
-msgstr "ʸ»úÎóÄê¿ô¤ÎÃæ¤Ç¥Õ¥¡¥¤¥ë¤Î½ªÃ¼¤ò¸¡½Ð¤·¤Þ¤·¤¿"
+msgid "`%D' is not a member of `%T'"
+msgstr "%s ¤Ë `%s' ¤È¤¤¤¦Ì¾Á°¤Î¥á¥ó¥Ð¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/spew.c:1121
-msgid "parse error in method specification"
-msgstr "¥á¥½¥Ã¥É»ÅÍÍÆâ¤Ç¤Î¹½Ê¸²òÀÏ¥¨¥é¡¼"
+#: cp/semantics.c:2282
+#, fuzzy
+msgid "`%D' is not a member of `%D'"
+msgstr "%s ¤Ë `%s' ¤È¤¤¤¦Ì¾Á°¤Î¥á¥ó¥Ð¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/spew.c:1161
-msgid "function body for constructor missing"
-msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤Î´Ø¿ôËÜÂΤò·ç¤¤¤Æ¤¤¤Þ¤¹"
+#: cp/semantics.c:2400
+msgid "template parameter `%D' of type `%T' is not allowed in an integral constant expression because it is not of integral or enumeration type"
+msgstr ""
-#: cp/spew.c:1262
+#: cp/semantics.c:2553
#, fuzzy
-msgid "%Hend of file read inside default argument"
-msgstr "ʸ»úÄê¿ô¤ÎÃæ¤Ç¥Õ¥¡¥¤¥ë¤Î½ªÃ¼¤ò¸¡½Ð¤·¤Þ¤·¤¿"
+msgid "`%D' cannot appear in a constant-expression"
+msgstr "Äê¿ô¼°¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
-#: cp/spew.c:1419
-msgid "circular dependency in default args of `%#D'"
+#: cp/semantics.c:2562
+msgid "use of namespace `%D' as expression"
msgstr ""
-#: cp/spew.c:1483
-#, fuzzy
-msgid "invalid type `%T' for default argument to `%T'"
-msgstr "`%s' ¤Î°ú¿ô¤È¤·¤Æ̵¸ú¤Ê·¿"
+#: cp/semantics.c:2567
+msgid "use of class template `%T' as expression"
+msgstr ""
-#: cp/spew.c:1548
-#, c-format
-msgid "%s before `%s'"
-msgstr "%s ¤¬ `%s' ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
+#. Ambiguous reference to base members.
+#: cp/semantics.c:2573
+#, fuzzy
+msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
+msgstr "Í׵ᤵ¤ì¤¿¥á¥ó¥Ð `%s' ¤Ï¿½Å·Ñ¾µ¥°¥é¥Õ¤ÎÃæ¤ÇÛ£Ëæ¤Ç¤¹"
-#: cp/spew.c:1550
+#: cp/semantics.c:2633
#, c-format
-msgid "%s before `%c'"
-msgstr "%s ¤¬ `%c' ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
+msgid "use of %s from containing function"
+msgstr ""
-#: cp/spew.c:1552
-#, c-format
-msgid "%s before `\\%o'"
-msgstr "%s ¤¬ `\\%o' ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
+#: cp/semantics.c:2636
+#, fuzzy
+msgid " `%#D' declared here"
+msgstr "`%s' ¤ÏÁ°¤Ë¤³¤³¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
-#: cp/spew.c:1555
-#, c-format
-msgid "%s before `%s' token"
-msgstr "%s ¤¬ `%s' ¥È¡¼¥¯¥ó¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
+#: cp/semantics.c:2687
+#, fuzzy, c-format
+msgid "type of `%E' is unknown"
+msgstr "¥ì¥¸¥¹¥¿ '%c' ¤¬ÉÔÌÀ¤Ç¤¹"
-#: cp/tree.c:263 cp/tree.c:275
+#: cp/tree.c:222
#, c-format
msgid "non-lvalue in %s"
msgstr "%s ¤Ëº¸ÊÕÃͤǤϤʤ¤ÃÍ"
-#: cp/tree.c:562
+#: cp/tree.c:539
#, fuzzy
msgid "`%V' qualifiers cannot be applied to `%T'"
msgstr "`%s' ¤Ï `%s' ¤Ë±þÅú¤·¤Þ¤»¤ó"
-#: cp/tree.c:1941
+#: cp/tree.c:1830
#, fuzzy, c-format
msgid "`%s' attribute can only be applied to Java class definitions"
msgstr "`java_interface' °À­¤Ï Java ¥¯¥é¥¹ÄêµÁ¤ËÂФ·¤Æ¤Î¤ßÍѤ¤¤ë»ö¤¬¤Ç¤­¤Þ¤¹"
-#: cp/tree.c:1971
+#: cp/tree.c:1859
#, fuzzy, c-format
msgid "`%s' attribute can only be applied to class definitions"
msgstr "`com_interface' °À­¤Ï¥¯¥é¥¹ÄêµÁ¤Ë¤Î¤ßÍѤ¤¤ë»ö¤¬¤Ç¤­¤Þ¤¹"
-#: cp/tree.c:1977
+#: cp/tree.c:1865
#, c-format
msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default"
msgstr ""
-#: cp/tree.c:2002
+#: cp/tree.c:1889
msgid "requested init_priority is not an integer constant"
msgstr "Í׵ᤵ¤ì¤¿ init_priority ¤ÏÀ°¿ô·¿¤ÎÄê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/tree.c:2023
+#: cp/tree.c:1910
#, fuzzy, c-format
msgid "can only use `%s' attribute on file-scope definitions of objects of class type"
msgstr "init_priority °À­¤Ï¥¯¥é¥¹·¿¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Õ¥¡¥¤¥ë¥¹¥³¡¼¥×ÄêµÁ¤Ç¤Î¤ß»È¤¨¤Þ¤¹"
-#: cp/tree.c:2031
+#: cp/tree.c:1918
msgid "requested init_priority is out of range"
msgstr "Í׵ᤵ¤ì¤¿ init_priority ¤¬Èϰϳ°¤Ç¤¹"
-#: cp/tree.c:2041
+#: cp/tree.c:1928
msgid "requested init_priority is reserved for internal use"
msgstr "Í׵ᤵ¤ì¤¿ init_priority ¤ÏÆâÉô¤Ç»ÈÍѤ¹¤ë¤¿¤á¤ËͽÌ󤵤ì¤Æ¤¤¤Þ¤¹"
-#: cp/tree.c:2051
+#: cp/tree.c:1938
#, fuzzy, c-format
msgid "`%s' attribute is not supported on this platform"
msgstr "init_priority °À­¤Ï¤³¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: cp/tree.c:2588
+#: cp/tree.c:2459
#, fuzzy, c-format
msgid "lang_* check: failed in %s, at %s:%d"
msgstr "Tree ¸¡ºº: %s ¤¬¤¢¤ë¤Ù¤­½ê¤Ë %s ¤¬¤¢¤ê¤Þ¤¹(%s Æâ, %s:%d)"
-#: cp/typeck.c:524
+#: cp/typeck.c:438 cp/typeck.c:453 cp/typeck.c:543
+#, fuzzy
+msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+msgstr "·¿¤¬Á´¤¯°Û¤Ê¤ë¥Ý¥¤¥ó¥¿¤ÎÈæ³Ó¤Ç¥­¥ã¥¹¥È¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+
+#: cp/typeck.c:513
#, c-format
msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
msgstr "ISO C++ ¤Ï `void *' ·¿¥Ý¥¤¥ó¥¿¤È´Ø¿ô¥Ý¥¤¥ó¥¿¤È¤Î %s ¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:545
+#: cp/typeck.c:563
#, fuzzy
-msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast"
msgstr "·¿¤¬Á´¤¯°Û¤Ê¤ë¥Ý¥¤¥ó¥¿¤ÎÈæ³Ó¤Ç¥­¥ã¥¹¥È¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: cp/typeck.c:1436
-#, fuzzy
-msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
-msgstr "ISO C ¤Ç¤Ï°ú¿ô¤«¤é¶¦ÍÑÂΤؤÎÊÑ´¹¤ò¶Ø»ß¤·¤Æ¤¤¤Þ¤¹"
-
-#: cp/typeck.c:1514
+#: cp/typeck.c:1235
#, fuzzy, c-format
msgid "invalid application of `%s' to a member function"
msgstr "Èó¥á¥ó¥Ð´Ø¿ô¤Ç¤Î `this' ¤Î»ÈÍѤÏ̵¸ú¤Ç¤¹"
-#: cp/typeck.c:1520
+#: cp/typeck.c:1268
#, fuzzy, c-format
-msgid "invalid application of `%s' to non-static member"
-msgstr "¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¤Î̵¸ú¤Ê `%s' ¤Î»ÈÍÑ"
-
-#: cp/typeck.c:1538
-msgid "sizeof applied to a bit-field"
-msgstr "sizeof ¤¬¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤ËŬÍѤµ¤ì¤Þ¤·¤¿"
+msgid "invalid application of `%s' to a bit-field"
+msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤Ë `__alignof' ¤¬Å¬ÍѤµ¤ì¤Þ¤·¤¿"
-#: cp/typeck.c:1541
-msgid "ISO C++ forbids applying `sizeof' to an expression of function type"
+#: cp/typeck.c:1273
+#, fuzzy, c-format
+msgid "ISO C++ forbids applying `%s' to an expression of function type"
msgstr "ISO C++ ¤Ï´Ø¿ô·¿¤Î¼°¤Ø¤Î `sizeof' ¤ÎŬÍѤò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:1759
+#: cp/typeck.c:1342
+#, fuzzy
+msgid "invalid use of non-static member function"
+msgstr "Èó¥á¥ó¥Ð´Ø¿ô¤Ç¤Î `this' ¤Î»ÈÍѤÏ̵¸ú¤Ç¤¹"
+
+#: cp/typeck.c:1476
#, fuzzy
msgid "deprecated conversion from string constant to `%T'"
msgstr "ʸ»úÎóÄê¿ôÃæ¤Î \\r ¥¨¥¹¥±¡¼¥×"
-#: cp/typeck.c:1890 cp/typeck.c:2122
+#: cp/typeck.c:1587 cp/typeck.c:1874
msgid "request for member `%D' in `%E', which is of non-class type `%T'"
msgstr ""
-#: cp/typeck.c:1916
-#, fuzzy
-msgid "`%D' is not a member of `%T'"
-msgstr "%s ¤Ë `%s' ¤È¤¤¤¦Ì¾Á°¤Î¥á¥ó¥Ð¤Ï¤¢¤ê¤Þ¤»¤ó"
+#: cp/typeck.c:1614
+#, fuzzy, c-format
+msgid "invalid use of nonstatic data member '%E'"
+msgstr "¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¤Î̵¸ú¤Ê `%s' ¤Î»ÈÍÑ"
-#: cp/typeck.c:1957 cp/typeck.c:1978
+#: cp/typeck.c:1666 cp/typeck.c:1688
msgid "invalid access to non-static data member `%D' of NULL object"
msgstr ""
-#: cp/typeck.c:1959 cp/typeck.c:1980
+#: cp/typeck.c:1668 cp/typeck.c:1690
msgid "(perhaps the `offsetof' macro was used incorrectly)"
msgstr ""
-#: cp/typeck.c:2168
+#: cp/typeck.c:1804
+msgid "the type being destroyed is '%T', but the destructor refers to `%T'"
+msgstr ""
+
+#: cp/typeck.c:1924
#, fuzzy
msgid "`%D::%D' is not a member of `%T'"
msgstr "%s ¤Ë `%s' ¤È¤¤¤¦Ì¾Á°¤Î¥á¥ó¥Ð¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/typeck.c:2179
+#: cp/typeck.c:1935
#, fuzzy
msgid "`%T' is not a base of `%T'"
msgstr "`%s' ¤Ï `%s' ¤Ë±þÅú¤·¤Þ¤»¤ó"
-#: cp/typeck.c:2199
-msgid "destructor specifier `%T::~%T' must have matching names"
-msgstr ""
-
-#: cp/typeck.c:2205
-msgid "type `%T' has no destructor"
-msgstr ""
+#: cp/typeck.c:1954
+#, fuzzy
+msgid "'%D' has no member named '%E'"
+msgstr "%s ¤Ë `%s' ¤È¤¤¤¦Ì¾Á°¤Î¥á¥ó¥Ð¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/typeck.c:2244
+#: cp/typeck.c:1969
#, fuzzy
msgid "`%D' is not a member template function"
msgstr "`%s' ¤ÏÄ̾Èó static ¤Ê´Ø¿ô¤Ç¤¹"
#. A pointer to incomplete type (other than cv void) can be
#. dereferenced [expr.unary.op]/1
-#: cp/typeck.c:2338
+#: cp/typeck.c:2075
msgid "`%T' is not a pointer-to-object type"
msgstr ""
-#: cp/typeck.c:2365
+#: cp/typeck.c:2100
#, c-format
msgid "invalid use of `%s' on pointer to member"
msgstr "¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¤Î̵¸ú¤Ê `%s' ¤Î»ÈÍÑ"
-#: cp/typeck.c:2371
+#: cp/typeck.c:2106
msgid "invalid type argument"
msgstr "̵¸ú¤Ê·¿°ú¿ô¤Ç¤¹"
-#: cp/typeck.c:2474
+#: cp/typeck.c:2212
msgid "ISO C++ forbids subscripting non-lvalue array"
msgstr "ISO C++ ¤Ïº¸ÊÕÃͤǤϤʤ¤ÇÛÎó¤Îź»ú¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:2485
+#: cp/typeck.c:2223
msgid "subscripting array declared `register'"
msgstr "`register' ¤ÈÀë¸À¤µ¤ì¤¿ÇÛÎó¤Ëź»ú¤ò¤Ä¤±¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: cp/typeck.c:2570
+#: cp/typeck.c:2306
#, fuzzy, c-format
msgid "object missing in use of `%E'"
msgstr "¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¹½ÃۤλÈÍѤǥª¥Ö¥¸¥§¥¯¥È¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: cp/typeck.c:2674
+#: cp/typeck.c:2408
msgid "ISO C++ forbids calling `::main' from within program"
msgstr "ISO C++ ¤Ï¥×¥í¥°¥é¥à¤ÎÃ椫¤é `::main' ¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:2699
+#: cp/typeck.c:2433
#, fuzzy, c-format
msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'"
msgstr "¤³¤³¤Ç¤Ï¥á¥ó¥Ð´Ø¿ô¥Ý¥¤¥ó¥¿¸Æ¤Ó½Ð¤·¤¬¤Ç¤­¤Þ¤»¤ó"
-#: cp/typeck.c:2712
+#: cp/typeck.c:2446
#, fuzzy, c-format
msgid "`%E' cannot be used as a function"
msgstr "\"%s\" ¤Ï¥Þ¥¯¥í̾¤È¤·¤Æ¤Ï»È¤¨¤Þ¤»¤ó"
-#: cp/typeck.c:2824
+#: cp/typeck.c:2539
#, fuzzy
msgid "too many arguments to %s `%+#D'"
msgstr "´Ø¿ô `%s' ¤ËÂФ¹¤ë°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹"
-#: cp/typeck.c:2865
-msgid "parameter type of called function is incomplete"
-msgstr "¸Æ¤Ð¤ì¤¿´Ø¿ô¤Î²¾°ú¿ô¤Î·¿¤¬ÉÔ´°Á´¤Ç¤¹"
+#: cp/typeck.c:2541 cp/typeck.c:2647
+msgid "at this point in file"
+msgstr "¥Õ¥¡¥¤¥ë¤Î¤³¤Î°ÌÃÖ"
+
+#: cp/typeck.c:2578
+#, fuzzy
+msgid "parameter %P of `%D' has incomplete type `%T'"
+msgstr "²¾°ú¿ô `%s' ¤ÏÉÔ´°Á´·¿¤Ç¤¹"
+
+#: cp/typeck.c:2581
+#, fuzzy
+msgid "parameter %P has incomplete type `%T'"
+msgstr "²¾°ú¿ô¤¬ÉÔ´°Á´·¿¤Ç¤¹"
-#: cp/typeck.c:2928
+#: cp/typeck.c:2645
#, fuzzy
msgid "too few arguments to %s `%+#D'"
msgstr "´Ø¿ô `%s' ¤Ø¤Î°ú¿ô¤¬¾¯¤Ê¤¹¤®¤Þ¤¹"
-#: cp/typeck.c:3056 cp/typeck.c:3066
+#: cp/typeck.c:2790 cp/typeck.c:2800
msgid "assuming cast to type `%T' from overloaded function"
msgstr ""
-#: cp/typeck.c:3126
+#: cp/typeck.c:2861
#, fuzzy, c-format
msgid "division by zero in `%E / 0'"
msgstr "#if ¤Ç¥¼¥í½ü»»¤¬È¯À¸¤·¤Þ¤·¤¿"
-#: cp/typeck.c:3128
+#: cp/typeck.c:2863
#, fuzzy, c-format
msgid "division by zero in `%E / 0.'"
msgstr "#if ¤Ç¥¼¥í½ü»»¤¬È¯À¸¤·¤Þ¤·¤¿"
-#: cp/typeck.c:3158
+#: cp/typeck.c:2892
#, fuzzy, c-format
msgid "division by zero in `%E %% 0'"
msgstr "#if ¤Ç¥¼¥í½ü»»¤¬È¯À¸¤·¤Þ¤·¤¿"
-#: cp/typeck.c:3160
+#: cp/typeck.c:2894
#, fuzzy, c-format
msgid "division by zero in `%E %% 0.'"
msgstr "#if ¤Ç¥¼¥í½ü»»¤¬È¯À¸¤·¤Þ¤·¤¿"
-#: cp/typeck.c:3240
+#: cp/typeck.c:2974
#, c-format
msgid "%s rotate count is negative"
msgstr "%s ¥í¡¼¥Æ¡¼¥È²ó¿ô¤¬Éé¤ÎÃͤǤ¹"
-#: cp/typeck.c:3243
+#: cp/typeck.c:2977
#, c-format
msgid "%s rotate count >= width of type"
msgstr "%s ¥í¡¼¥Æ¡¼¥È²ó¿ô >= ·¿¤ÎÉý¤Ç¤¹"
-#: cp/typeck.c:3274 cp/typeck.c:3279 cp/typeck.c:3370 cp/typeck.c:3375
+#: cp/typeck.c:3011 cp/typeck.c:3016 cp/typeck.c:3107 cp/typeck.c:3112
msgid "ISO C++ forbids comparison between pointer and integer"
msgstr "ISO C++ ¤Ï¥Ý¥¤¥ó¥¿¤ÈÀ°¿ô¤È¤ÎÈæ³Ó¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:3553
+#: cp/typeck.c:3293
#, fuzzy
msgid "comparison between types `%#T' and `%#T'"
msgstr "¥Ý¥¤¥ó¥¿¤ÈÀ°¿ô¤È¤ÎÈæ³Ó¤ò¹Ô¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
-#: cp/typeck.c:3589
+#: cp/typeck.c:3329
msgid "comparison between signed and unsigned integer expressions"
msgstr "Éä¹çÉÕ¤­¤ÈÉä¹ç̵¤·¤ÎÀ°¿ô¼°Æ±»Î¤ÎÈæ³Ó¤Ç¤¹"
-#: cp/typeck.c:3654
+#: cp/typeck.c:3394
#, fuzzy
msgid "invalid operands of types `%T' and `%T' to binary `%O'"
msgstr "Æó¹à±é»»»Ò %s ¤¬ÉÔŬÀڤǤ¹"
@@ -18346,734 +17736,557 @@ msgstr "Æó¹à±é»»»Ò %s ¤¬ÉÔŬÀڤǤ¹"
#. performed. Note that pointer-difference and pointer-addition
#. have already been handled above, and so we don't end up here in
#. that case.
-#: cp/typeck.c:3676
+#: cp/typeck.c:3416
#, fuzzy
msgid "NULL used in arithmetic"
msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤¬·×»»¤Ç»È¤ï¤ì¤Þ¤·¤¿"
-#: cp/typeck.c:3743
+#: cp/typeck.c:3479
msgid "ISO C++ forbids using pointer of type `void *' in subtraction"
msgstr "ISO C++ ¤Ï¸º»»¤Ë `void *' ·¿¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:3745
+#: cp/typeck.c:3481
msgid "ISO C++ forbids using pointer to a function in subtraction"
msgstr "ISO C++ ¤Ï¸º»»¤Ë´Ø¿ô¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:3747
+#: cp/typeck.c:3483
msgid "ISO C++ forbids using pointer to a method in subtraction"
msgstr "ISO C++ ¤Ï¸º»»¤Ë¥á¥½¥Ã¥É¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:3749
-msgid "ISO C++ forbids using pointer to a member in subtraction"
-msgstr "ISO C++ ¤Ï¸º»»¤Ë¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-
-#: cp/typeck.c:3761
+#: cp/typeck.c:3495
msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
msgstr "¥Ý¥¤¥ó¥¿±é»»¤ÇÉÔ´°Á´·¿¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤Ï̵¸ú¤Ç¤¹"
-#: cp/typeck.c:3821
+#: cp/typeck.c:3550
#, c-format
msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id."
msgstr ""
-#: cp/typeck.c:3827
+#: cp/typeck.c:3556
#, c-format
msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function"
msgstr ""
-#: cp/typeck.c:3850
+#: cp/typeck.c:3578
msgid "taking address of temporary"
msgstr "°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥É¥ì¥¹¤ò¼è¤í¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: cp/typeck.c:4091
+#: cp/typeck.c:3813
#, c-format
msgid "ISO C++ forbids %sing an enum"
msgstr "ISO C++ ¤Ï enum ¤Î %s ¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:4103
+#: cp/typeck.c:3824
#, fuzzy
msgid "cannot %s a pointer to incomplete type `%T'"
msgstr "²¾°ú¿ô `%s' ¤ÏÉÔ´°Á´·¿¤ò»Ø¤·¤Æ¤¤¤Þ¤¹"
-#: cp/typeck.c:4110
+#: cp/typeck.c:3830
#, fuzzy
msgid "ISO C++ forbids %sing a pointer of type `%T'"
msgstr "ISO C++ ¤Ï¸º»»¤Ë `void *' ·¿¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:4135
+#: cp/typeck.c:3855
msgid "cast to non-reference type used as lvalue"
msgstr "º¸ÊÕÃͤȤ·¤Æ»È¤ï¤ì¤ëÈ󻲾ȷ¿¤Ø¤Î¥­¥ã¥¹¥È¤Ç¤¹"
-#: cp/typeck.c:4169
+#: cp/typeck.c:3889
#, fuzzy
msgid "invalid use of `--' on bool variable `%D'"
msgstr "¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¤Î̵¸ú¤Ê `%s' ¤Î»ÈÍÑ"
#. ARM $3.4
-#: cp/typeck.c:4202
+#: cp/typeck.c:3920
msgid "ISO C++ forbids taking address of function `::main'"
msgstr "ISO C++ ¤Ï `::main' ´Ø¿ô¤Î¥¢¥É¥ì¥¹¤ò¼è¤ë¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
#. An expression like &memfn.
-#: cp/typeck.c:4269
-msgid "ISO C++ forbids taking the address of an unqualified non-static member function to form a pointer to member function. Say `&%T::%D'"
+#: cp/typeck.c:3991
+msgid "ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function. Say `&%T::%D'"
msgstr ""
-#: cp/typeck.c:4271
+#: cp/typeck.c:3996
#, fuzzy
msgid "ISO C++ forbids taking the address of a bound member function to form a pointer to member function. Say `&%T::%D'"
msgstr "ISO C++ ¤ÏÈóº¸ÊÕÃͼ°¤Ø¤Î¥­¥ã¥¹¥È¤Î¥¢¥É¥ì¥¹¤ò¼è¤ë¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:4295
+#: cp/typeck.c:4024
msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression"
msgstr "ISO C++ ¤ÏÈóº¸ÊÕÃͼ°¤Ø¤Î¥­¥ã¥¹¥È¤Î¥¢¥É¥ì¥¹¤ò¼è¤ë¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:4324
+#: cp/typeck.c:4040
+msgid "unary `&'"
+msgstr "ñ¹à¤Î `&'"
+
+#: cp/typeck.c:4069
#, fuzzy
msgid "attempt to take address of bit-field structure member `%D'"
msgstr "¹½Â¤ÂÎ¥á¥ó¥Ð `%s' ¤Î¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤Î¥¢¥É¥ì¥¹¤ò¼èÆÀ¤·¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: cp/typeck.c:4444
+#: cp/typeck.c:4183
#, fuzzy
msgid "taking address of destructor"
msgstr "°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥É¥ì¥¹¤ò¼è¤í¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: cp/typeck.c:4457
+#: cp/typeck.c:4196
#, fuzzy
msgid "taking address of bound pointer-to-member expression"
msgstr " ¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð¤Ø¤ÎÊÑ´¹¤Ç"
-#: cp/typeck.c:4473
+#: cp/typeck.c:4204
#, fuzzy
msgid "cannot create pointer to reference member `%D'"
msgstr "¥Ý¥¤¥ó¥¿¤ò»²¾È¤È¤·¤ÆÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/typeck.c:4536
+#: cp/typeck.c:4266
msgid "cannot take the address of `this', which is an rvalue expression"
msgstr "`this' ¤Ï±¦ÊÕÃͼ°¤Ç¤¢¤ê¡¢¤½¤Î¥¢¥É¥ì¥¹¤ò¼è¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: cp/typeck.c:4555
+#: cp/typeck.c:4285
msgid "address requested for `%D', which is declared `register'"
msgstr ""
-#: cp/typeck.c:4682
-msgid "static_cast from type `%T' to type `%T' casts away constness"
+#: cp/typeck.c:4353
+#, fuzzy, c-format
+msgid "%s expression list treated as compound expression"
+msgstr "½é´ü²½»Ò¥ê¥¹¥È¤ÏÊ£¹ç¼°¤È¤·¤Æ¼è¤ê°·¤ï¤ì¤Þ¤·¤¿"
+
+#: cp/typeck.c:4426
+msgid "%s from type `%T' to type `%T' casts away constness"
msgstr ""
-#: cp/typeck.c:4871
+#: cp/typeck.c:4618
msgid "invalid static_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4910
+#: cp/typeck.c:4658
msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4930
+#: cp/typeck.c:4678
msgid "reinterpret_cast from `%T' to `%T' loses precision"
msgstr ""
-#: cp/typeck.c:4943
-msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
-msgstr ""
-
-#: cp/typeck.c:4952
+#: cp/typeck.c:4697
msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object"
msgstr "ISO C++ ¤Ï´Ø¿ô¥Ý¥¤¥ó¥¿¤È¥ª¥Ö¥¸¥§¥¯¥È¥Ý¥¤¥ó¥¿¤Î´Ö¤Ç¤Î¥­¥ã¥¹¥È¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:4958
+#: cp/typeck.c:4703
msgid "invalid reinterpret_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4985
+#: cp/typeck.c:4731
msgid "invalid use of const_cast with type `%T', which is not a pointer, reference, nor a pointer-to-data-member type"
msgstr ""
-#: cp/typeck.c:4988
+#: cp/typeck.c:4734
msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type"
msgstr ""
-#: cp/typeck.c:5011
+#: cp/typeck.c:4757
msgid "invalid const_cast of an rvalue of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:5027
+#: cp/typeck.c:4774
msgid "invalid const_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:5069 cp/typeck.c:5074
+#: cp/typeck.c:4814 cp/typeck.c:4819
#, fuzzy
msgid "ISO C++ forbids casting to an array type `%T'"
msgstr "ISO C ¤Ï¶¦ÍÑÂη¿¤Ø¤Î¥­¥ã¥¹¥È¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:5082
+#: cp/typeck.c:4827
#, fuzzy
msgid "invalid cast to function type `%T'"
msgstr "´Ø¿ô `%s' ¤ËÂФ·¤ÆÉÔŬÀÚ¤ÊÊݸ¥¯¥é¥¹"
-#: cp/typeck.c:5138
+#: cp/typeck.c:4883
#, fuzzy
msgid "cast from `%T' to `%T' discards qualifiers from pointer target type"
msgstr "¥­¥ã¥¹¥È¤Ë¤è¤Ã¤Æ¥Ý¥¤¥ó¥¿¤¬¼¨¤¹·¿¤«¤é½¤¾þ»Ò¤¬ÀÚ¤ê¼Î¤Æ¤é¤ì¤Þ¤¹"
-#: cp/typeck.c:5184
+#: cp/typeck.c:4929
#, fuzzy
msgid "cast from `%T' to `%T' increases required alignment of target type"
msgstr "¥­¥ã¥¹¥È¤Ë¤è¤Ã¤Æ¥Ý¥¤¥ó¥¿¤¬¼¨¤¹·¿¤ÎÍ׵ᥢ¥é¥¤¥ó¥á¥ó¥È¤¬Áý²Ã¤·¤Þ¤¹"
-#: cp/typeck.c:5357
+#: cp/typeck.c:5093
msgid " in evaluation of `%Q(%#T, %#T)'"
msgstr ""
-#: cp/typeck.c:5399
+#: cp/typeck.c:5135
msgid "ISO C++ forbids cast to non-reference type used as lvalue"
msgstr "ISO C++ ¤Ïº¸ÊÕÃͤȤ·¤Æ»È¤ï¤ì¤ëÈ󻲾ȷ¿¤Ø¤Î¥­¥ã¥¹¥È¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:5463
+#: cp/typeck.c:5208
#, fuzzy
msgid "incompatible types in assignment of `%T' to `%T'"
msgstr "%d ÈÖÌܤΰú¿ô¤¬ `%s' ¤Î·¿¤È¸ß´¹À­¤¬¤¢¤ê¤Þ¤»¤ó"
-#: cp/typeck.c:5470
+#: cp/typeck.c:5215
msgid "ISO C++ forbids assignment of arrays"
msgstr "ISO C++ ¤ÏÇÛÎó¤ÎÂåÆþ¤ò¶Ø¤¸¤Þ¤¹"
-#: cp/typeck.c:5577
+#: cp/typeck.c:5314
msgid " in pointer to member function conversion"
msgstr " ¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð´Ø¿ô¤Ø¤ÎÊÑ´¹¤Ç"
-#: cp/typeck.c:5585
+#: cp/typeck.c:5322
msgid " in pointer to member conversion"
msgstr " ¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð¤Ø¤ÎÊÑ´¹¤Ç"
#. This is a reinterpret cast, we choose to do nothing.
-#: cp/typeck.c:5596 cp/typeck.c:5615
-msgid "pointer to member cast via virtual base `%T' of `%T'"
+#: cp/typeck.c:5332 cp/typeck.c:5347
+msgid "pointer to member cast via virtual base `%T'"
msgstr ""
-#: cp/typeck.c:5619
+#: cp/typeck.c:5350
#, fuzzy
-msgid "pointer to member conversion via virtual base `%T' of `%T'"
+msgid "pointer to member conversion via virtual base `%T'"
msgstr " ¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð¤Ø¤ÎÊÑ´¹¤Ç"
-#: cp/typeck.c:5695
+#: cp/typeck.c:5420
#, fuzzy
msgid "invalid conversion to type `%T' from type `%T'"
msgstr "¥ì¥·¡¼¥Ð·¿ `%s' ¤¬Ìµ¸ú¤Ç¤¹"
-#: cp/typeck.c:5860
+#: cp/typeck.c:5576
msgid "passing NULL used for non-pointer %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5863
+#: cp/typeck.c:5579
msgid "%s to non-pointer type `%T' from NULL"
msgstr ""
-#: cp/typeck.c:5871
+#: cp/typeck.c:5587
#, fuzzy
msgid "passing `%T' for %s %P of `%D'"
msgstr "°ú¿ô %d ¸Ä¤Î `%s' ¤òÅϤ·¤Þ¤¹"
-#: cp/typeck.c:5874
+#: cp/typeck.c:5590
msgid "%s to `%T' from `%T'"
msgstr ""
-#: cp/typeck.c:5884
+#: cp/typeck.c:5600
msgid "passing negative value `%E' for %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5887
+#: cp/typeck.c:5603
msgid "%s of negative value `%E' to `%T'"
msgstr ""
-#: cp/typeck.c:5982
+#: cp/typeck.c:5691
msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'"
msgstr ""
-#: cp/typeck.c:5985
+#: cp/typeck.c:5694
#, fuzzy
msgid "cannot convert `%T' to `%T' in %s"
msgstr "¥Ý¥¤¥ó¥¿·¿¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó"
-#: cp/typeck.c:6073 cp/typeck.c:6075
+#: cp/typeck.c:5771 cp/typeck.c:5773
#, fuzzy
msgid "in passing argument %P of `%+D'"
msgstr "°ú¿ô %d ¸Ä¤Î `%s' ¤òÅϤ·¤Þ¤¹"
-#: cp/typeck.c:6190
+#: cp/typeck.c:5880
msgid "returning reference to temporary"
msgstr "°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤Ø¤Î»²¾È¤òÊÖ¤½¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: cp/typeck.c:6197
+#: cp/typeck.c:5887
msgid "reference to non-lvalue returned"
msgstr "Èóº¸ÊÕÃͤؤλ²¾È¤¬ÊÖ¤µ¤ì¤Þ¤·¤¿"
-#: cp/typeck.c:6209
+#: cp/typeck.c:5899
#, fuzzy
msgid "reference to local variable `%D' returned"
msgstr "Èóº¸ÊÕÃͤؤλ²¾È¤¬ÊÖ¤µ¤ì¤Þ¤·¤¿"
-#: cp/typeck.c:6212
+#: cp/typeck.c:5902
#, fuzzy
msgid "address of local variable `%D' returned"
msgstr "Í׵ᤵ¤ì¤¿Âç°è¥ì¥¸¥¹¥¿ÊÑ¿ô `%s' ¤Î¥¢¥É¥ì¥¹"
-#: cp/typeck.c:6243
+#: cp/typeck.c:5932
msgid "returning a value from a destructor"
msgstr "¥Ç¥¹¥È¥é¥¯¥¿¤«¤éÃͤòÊÖ¤½¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
#. If a return statement appears in a handler of the
#. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.c:6251
+#: cp/typeck.c:5940
msgid "cannot return from a handler of a function-try-block of a constructor"
msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤Î´Ø¿ô try ¥Ö¥í¥Ã¥¯¤Î¥Ï¥ó¥É¥é¤«¤é¤Ï return ¤Ç¤­¤Þ¤»¤ó"
#. You can't return a value from a constructor.
-#: cp/typeck.c:6254
+#: cp/typeck.c:5943
msgid "returning a value from a constructor"
msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤«¤éÃͤòÊÖ¤½¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: cp/typeck.c:6271
-msgid "return-statement with no value, in function declared with a non-void return type"
-msgstr "return ʸ¤¬Ãͤò»ý¤Á¤Þ¤»¤ó¡£´Ø¿ôÀë¸À¤Ç¤ÏÈó void ¤ÎÌá¤êÃͤò»ý¤Á¤Þ¤¹"
+#: cp/typeck.c:5966
+#, fuzzy
+msgid "return-statement with no value, in function returning '%T'"
+msgstr "Ìá¤ê·¿¤¬´Ø¿ô¤Ç¡¢`return' ¤ËÃͤ¬¤¢¤ê¤Þ¤»¤ó"
-#: cp/typeck.c:6287
-msgid "return-statement with a value, in function declared with a void return type"
-msgstr "return ʸ¤¬Ãͤò»ý¤Á¤Þ¤¹¡£´Ø¿ôÀë¸À¤Ç¤ÏÌá¤ê·¿¤¬ void ¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
+#: cp/typeck.c:5983
+#, fuzzy
+msgid "return-statement with a value, in function returning 'void'"
+msgstr "Ìá¤ê·¿¤¬ void ¤Î´Ø¿ô¤Ç¡¢`return' ¤ËÃͤ¬¤¢¤ê¤Þ¤¹"
-#: cp/typeck.c:6308
+#: cp/typeck.c:6005
msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)"
msgstr ""
-#: cp/typeck2.c:54
+#: cp/typeck2.c:55
msgid "type `%T' is not a base type for type `%T'"
msgstr ""
-#: cp/typeck2.c:157
+#: cp/typeck2.c:151
#, fuzzy
msgid "cannot declare variable `%D' to be of type `%T'"
msgstr "`::main' ¤ò template ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/typeck2.c:160
+#: cp/typeck2.c:154
#, fuzzy
msgid "cannot declare parameter `%D' to be of type `%T'"
msgstr "`::main' ¤ò template ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/typeck2.c:163
+#: cp/typeck2.c:157
#, fuzzy
msgid "cannot declare field `%D' to be of type `%T'"
msgstr "`::main' ¤ò template ¤È¤·¤Æ¤ÏÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#: cp/typeck2.c:167
+#: cp/typeck2.c:161
#, fuzzy
msgid "invalid return type for member function `%#D'"
msgstr "´Ø¿ô¤ÎÊÖ¤¹·¿¤¬´Ø¿ô¤Ç¤¢¤Ã¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó"
-#: cp/typeck2.c:169
+#: cp/typeck2.c:163
#, fuzzy
msgid "invalid return type for function `%#D'"
msgstr "´Ø¿ô `%s' ¤ËÂФ·¤ÆÉÔŬÀÚ¤ÊÊݸ¥¯¥é¥¹"
-#: cp/typeck2.c:172
+#: cp/typeck2.c:166
#, fuzzy
msgid "cannot allocate an object of type `%T'"
msgstr "`id' ·¿¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ËÂΤ¹¤ëÀÅŪ¥¢¥¯¥»¥¹¤Ç¤¹"
-#: cp/typeck2.c:179
+#: cp/typeck2.c:173
msgid " because the following virtual functions are abstract:"
msgstr " °Ê²¼¤Î²¾ÁÛ´Ø¿ô¤¬Ãê¾Ý¤Ç¤¢¤ë¤¿¤á¤Ç¤¹:"
-#: cp/typeck2.c:181
+#: cp/typeck2.c:175
msgid "\t%#D"
msgstr ""
-#: cp/typeck2.c:184
+#: cp/typeck2.c:178
msgid " since type `%T' has abstract virtual functions"
msgstr ""
-#: cp/typeck2.c:338
+#: cp/typeck2.c:426
msgid "constructor syntax used, but no constructor declared for type `%T'"
msgstr ""
-#: cp/typeck2.c:349
-msgid "comma expression used to initialize return value"
-msgstr "¥«¥ó¥Þ±é»»»Ò¤¬Ìá¤êÃͤò½é´ü²½¤¹¤ë¤¿¤á¤Ë»È¤ï¤ì¤Þ¤·¤¿"
-
-#: cp/typeck2.c:358
+#: cp/typeck2.c:439
msgid "cannot initialize arrays using this syntax"
msgstr "¤³¤Îʸˡ¤ò»È¤Ã¤ÆÇÛÎó¤ò½é´ü²½¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: cp/typeck2.c:473
+#: cp/typeck2.c:544
msgid "initializing array with parameter list"
msgstr "ÇÛÎó¤ò²¾°ú¿ô¥ê¥¹¥È¤Ë¤è¤Ã¤Æ½é´ü²½¤·¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
-#: cp/typeck2.c:529
+#: cp/typeck2.c:599
msgid "initializer for scalar variable requires one element"
msgstr "¥¹¥«¥é¡¼ÊÑ¿ô¤Î½é´ü²½»Ò¤Ï°ì¤Ä¤ÎÍ×ÁǤòÍ׵ᤷ¤Þ¤¹"
-#: cp/typeck2.c:536
+#: cp/typeck2.c:606
#, fuzzy
msgid "braces around scalar initializer for `%T'"
msgstr "¥¹¥«¥é¡¼½é´ü²½»Ò¤¬¥Ö¥ì¡¼¥¹¤Ç°Ï¤Þ¤ì¤Æ¤¤¤Þ¤¹"
-#: cp/typeck2.c:539
+#: cp/typeck2.c:609
#, fuzzy
msgid "ignoring extra initializers for `%T'"
msgstr "(`%s' ¤Î½é´ü²½¤ÏÉÔ´°Á´¤Ç¤¹)"
-#: cp/typeck2.c:551
+#: cp/typeck2.c:621
#, fuzzy
msgid "variable-sized object of type `%T' may not be initialized"
msgstr "²ÄÊÑĹ¥ª¥Ö¥¸¥§¥¯¥È¤Ï½é´ü²½¤µ¤ì¤Ê¤¤¤³¤È¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦"
-#: cp/typeck2.c:561
+#: cp/typeck2.c:631
msgid "subobject of type `%T' must be initialized by constructor, not by `%E'"
msgstr ""
-#: cp/typeck2.c:627
+#: cp/typeck2.c:696
msgid "aggregate has a partly bracketed initializer"
msgstr "½¸¹çÂΤ¬ÉôʬŪ¤Ë¥Ö¥é¥±¥Ã¥È¤Î½é´ü²½»Ò¤ò»ý¤Á¤Þ¤¹"
-#: cp/typeck2.c:665 cp/typeck2.c:770
+#: cp/typeck2.c:734 cp/typeck2.c:839
msgid "non-trivial labeled initializers"
msgstr "¼«ÌÀ¤Ç¤Ê¤¤¥é¥Ù¥ë¤Î¤Ä¤¤¤¿½é´ü²½»Ò¤Ç¤¹"
-#: cp/typeck2.c:682
+#: cp/typeck2.c:751
msgid "non-empty initializer for array of empty elements"
msgstr "Í×ÁǤΤʤ¤ÇÛÎó¤ËÂФ¹¤ë¡¢¶õ¤Ç¤Ï¤Ê¤¤½é´ü²½»Ò¤Ç¤¹"
-#: cp/typeck2.c:736
+#: cp/typeck2.c:805
msgid "initializer list for object of class with virtual base classes"
msgstr "²¾ÁÛ´ðÄ쥯¥é¥¹¤ò»ý¤Ä¥¯¥é¥¹¤Î¥ª¥Ö¥¸¥§¥¯¥ÈÍѤνé´ü²½»Ò¥ê¥¹¥È¤Ç¤¹"
-#: cp/typeck2.c:742
+#: cp/typeck2.c:811
msgid "initializer list for object of class with base classes"
msgstr "´ðÄ쥯¥é¥¹¤ò»ý¤Ä¥¯¥é¥¹¤Î¥ª¥Ö¥¸¥§¥¯¥ÈÍѤνé´ü²½»Ò¥ê¥¹¥È¤Ç¤¹"
-#: cp/typeck2.c:748
+#: cp/typeck2.c:817
msgid "initializer list for object using virtual functions"
msgstr "²¾ÁÛ´Ø¿ô¤ò»ÈÍѤ¹¤ë¥ª¥Ö¥¸¥§¥¯¥ÈÍѤνé´ü²½»Ò¥ê¥¹¥È¤Ç¤¹"
-#: cp/typeck2.c:811 cp/typeck2.c:827
+#: cp/typeck2.c:879 cp/typeck2.c:895
#, fuzzy
msgid "missing initializer for member `%D'"
msgstr "¥á¥ó¥Ð `%s' ¤ËÂФ¹¤ë̵¸ú¤Ê½é´üÃÍ"
-#: cp/typeck2.c:816
+#: cp/typeck2.c:884
#, fuzzy
msgid "uninitialized const member `%D'"
msgstr "¥á¥ó¥Ð `%s' ¤ËÂФ¹¤ë̵¸ú¤Ê½é´üÃÍ"
-#: cp/typeck2.c:818
+#: cp/typeck2.c:886
#, fuzzy
msgid "member `%D' with uninitialized const fields"
msgstr "̤½é´ü²½Äê¿ô¤ò ROM ¤ËÃÖ¤«¤Ê¤¤"
-#: cp/typeck2.c:821
+#: cp/typeck2.c:889
#, fuzzy
msgid "member `%D' is uninitialized reference"
msgstr "²¾°ú¿ô `%s' ¤¬½é´ü²½¤µ¤ì¤Þ¤·¤¿"
-#: cp/typeck2.c:868
+#: cp/typeck2.c:936
msgid "index value instead of field name in union initializer"
msgstr "union ½é´ü²½»Ò¤¬¥Õ¥£¡¼¥ë¥É̾¤Ç¤Ï¤Ê¤¯¥¤¥ó¥Ç¥Ã¥¯¥¹ÃͤˤʤäƤ¤¤Þ¤¹"
-#: cp/typeck2.c:880
+#: cp/typeck2.c:948
#, fuzzy
msgid "no field `%D' in union being initialized"
msgstr "ÉÔÌÀ¤Ê¥Õ¥£¡¼¥ë¥É `%s' ¤¬½é´ü²½»Ò¤Ç»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: cp/typeck2.c:888
+#: cp/typeck2.c:956
#, fuzzy
msgid "union `%T' with no named members cannot be initialized"
msgstr "Ê£»¨¤Ê¥Ñ¥é¥á¥¿¤ò¤â¤Ä´Ø¿ô¤Ï inline ¤Ë¤Ç¤­¤Þ¤»¤ó"
-#: cp/typeck2.c:924
+#: cp/typeck2.c:992
msgid "excess elements in aggregate initializer"
msgstr "½¸¹çÂνé´ü²½»ÒÆâ¤Ç¤½¤ÎÍ×ÁǤ¬°î¤ì¤Þ¤·¤¿"
-#: cp/typeck2.c:1038
+#: cp/typeck2.c:1100
msgid "circular pointer delegation detected"
msgstr "½Û´Ä¥Ý¥¤¥ó¥¿¤ÎÂåɽ¤ò¸¡½Ð¤·¤Þ¤·¤¿"
-#: cp/typeck2.c:1051
+#: cp/typeck2.c:1113
#, fuzzy
msgid "base operand of `->' has non-pointer type `%T'"
msgstr "`->' ¤Î¥Ù¡¼¥¹¥ª¥Ú¥é¥ó¥É¤¬¥Ý¥¤¥ó¥¿¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/typeck2.c:1065
+#: cp/typeck2.c:1137
msgid "result of `operator->()' yields non-pointer result"
msgstr "`operator->()'¤Î·ë²Ì¤¬Èó¥Ý¥¤¥ó¥¿¤Î·ë²Ì¤ò¤â¤¿¤é¤·¤Þ¤¹"
-#: cp/typeck2.c:1067
+#: cp/typeck2.c:1139
msgid "base operand of `->' is not a pointer"
msgstr "`->' ¤Î¥Ù¡¼¥¹¥ª¥Ú¥é¥ó¥É¤¬¥Ý¥¤¥ó¥¿¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: cp/typeck2.c:1133
+#: cp/typeck2.c:1162
#, fuzzy
msgid "`%E' cannot be used as a member pointer, since it is of type `%T'"
msgstr "\"%s\" ¤Ï C++ ¤Î±é»»»Ò¤Ç¤¢¤ê¡¢¥Þ¥¯¥í̾¤È¤·¤Æ»ÈÍѤ¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
-#: cp/typeck2.c:1140
+#: cp/typeck2.c:1170
msgid "cannot apply member pointer `%E' to `%E', which is of non-aggregate type `%T'"
msgstr ""
-#: cp/typeck2.c:1149
+#: cp/typeck2.c:1180
msgid "member type `%T::' incompatible with object type `%T'"
msgstr ""
-#: cp/typeck2.c:1186
-#, fuzzy
-msgid "`%T' fails to be a typedef or built-in type"
-msgstr "`%s' ¤ò typedef ¤Þ¤¿¤ÏÁȤ߹þ¤ß·¿¤Ë¤Ç¤­¤Þ¤»¤ó"
-
-#: cp/typeck2.c:1259
-#, c-format
-msgid "ISO C++ forbids defining types within %s"
-msgstr "ISO C++ ¤Ï %s Ãæ¤Î·¿ÄêµÁ¤ò¶Ø¤¸¤Þ¤¹"
-
-#: cp/typeck2.c:1384
+#: cp/typeck2.c:1396
msgid "call to function `%D' which throws incomplete type `%#T'"
msgstr ""
-#: cp/typeck2.c:1387
+#: cp/typeck2.c:1399
#, fuzzy
msgid "call to function which throws incomplete type `%#T'"
msgstr "ÉÔ´°Á´·¿¤Ø¤ÎÊÑ´¹¤Ç¤¹"
#. XXX Not i18n clean.
-#: cp/cp-tree.h:3936
+#: cp/cp-tree.h:3756
#, c-format
msgid "%s is deprecated, please see the documentation for details"
msgstr ""
-#: cp/lang-options.h:29
-msgid "Do not obey access control semantics"
-msgstr "¥¢¥¯¥»¥¹À©¸æ¤Î°ÕÌ£¤Ë½¾¤ï¤Ê¤¤"
-
-#: cp/lang-options.h:31
-msgid "Change when template instances are emitted"
-msgstr "¥Æ¥ó¥×¥ì¡¼¥È¥¤¥ó¥¹¥¿¥ó¥¹¤¬Á÷½Ð¤µ¤ì¤¿»þ¤ËÊѹ¹¤¹¤ë"
-
-#: cp/lang-options.h:36
-msgid "Check the return value of new"
-msgstr "new ¤ÎÌá¤êÃͤò¸¡ºº¤¹¤ë"
-
-#: cp/lang-options.h:39
-msgid "Reduce size of object files"
-msgstr "¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤Î¥µ¥¤¥º¤ò¾®¤µ¤¯¤¹¤ë"
-
-#: cp/lang-options.h:43
-msgid "Make string literals `char[]' instead of `const char[]'"
-msgstr "ʸ»úÎó¥ê¥Æ¥é¥ë¤ò `const char[]' ¤ÎÂå¤ï¤ê¤Ë `char[]' ¤È¤¹¤ë"
-
-#: cp/lang-options.h:46
-msgid "Dump the entire translation unit to a file"
-msgstr "ËÝÌõñ°ÌÁ´ÂΤò¥Õ¥¡¥¤¥ë¤Ë¥À¥ó¥×¤¹¤ë"
-
-#: cp/lang-options.h:48
-msgid "Do not inline member functions by default"
-msgstr "¥á¥ó¥Ð´Ø¿ô¤ò¥Ç¥Õ¥©¥ë¥È¤Ç¥¤¥ó¥é¥¤¥ó¤È¤·¤Ê¤¤"
-
-#: cp/lang-options.h:51
-msgid "Do not generate run time type descriptor information"
-msgstr "¼Â¹Ô»þ·¿µ­½Ò¾ðÊó¤òÀ¸À®¤·¤Ê¤¤"
-
-#: cp/lang-options.h:56
-msgid "Do not generate code to check exception specifications"
-msgstr "Îã³°»ÅÍͤθ¡ºº¤ò¤¹¤ë¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
-
-#: cp/lang-options.h:61
-msgid "Scope of for-init-statement vars extends outside"
-msgstr "for ½é´ü²½Ê¸¤ÎÊÑ¿ô¤ò¥¹¥³¡¼¥×³°¤Ë³ÈÂ礹¤ë"
-
-#: cp/lang-options.h:64
-#, fuzzy
-msgid "Do not recognize GNU defined keywords"
-msgstr "GNU ÄêµÁ¤ÎͽÌó¸ì¤òǧ¼±¤µ¤»¤Ê¤¤"
-
-#: cp/lang-options.h:68
-msgid "Enable support for huge objects"
-msgstr "Â礭¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Î¥µ¥Ý¡¼¥È"
-
-#: cp/lang-options.h:72
-msgid "Export functions even if they can be inlined"
-msgstr "¥¤¥ó¥é¥¤¥ó¤Ë¤Ç¤­¤ë´Ø¿ô¤Ç¤â export ¤¹¤ë"
-
-#: cp/lang-options.h:75
-#, fuzzy
-msgid "Only emit explicit template instantiations"
-msgstr "ÌÀ¼¨Åª¤Ê¥Æ¥ó¥×¥ì¡¼¥È¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë"
-
-#: cp/lang-options.h:78
-#, fuzzy
-msgid "Only emit explicit instantiations of inline templates"
-msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë"
-
-#: cp/lang-options.h:84
-msgid "Don't pedwarn about uses of Microsoft extensions"
-msgstr "Microsoft ³ÈÄ¥¤ÎÍøÍѤ˴ؤ·¤Æ pedantic ·Ù¹ð¤ò¹Ô¤ï¤Ê¤¤"
-
-#: cp/lang-options.h:87
-#, fuzzy
-msgid "Recognize and/bitand/bitor/compl/not/or/xor"
-msgstr "and/bitand/bitor/compl/not/or/xor ¤òǧ¼±¤¹¤ë"
-
-#: cp/lang-options.h:91
-msgid "Disable optional diagnostics"
-msgstr "¥ª¥×¥·¥ç¥ó¤Î¿ÇÃÇ¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Ê¤¤"
-
-#: cp/lang-options.h:93
-msgid "Downgrade conformance errors to warnings"
-msgstr "µ¬³ÊŬ¹çÀ­¥¨¥é¡¼¤ò·Ù¹ð¤Ë³Ê²¼¤²¤¹¤ë"
-
-#: cp/lang-options.h:96
-msgid "Enable automatic template instantiation"
-msgstr "¼«Æ°¥Æ¥ó¥×¥ì¡¼¥È¼ÂÂ⽤òÍ­¸ú¤Ë¤¹¤ë"
-
-#: cp/lang-options.h:101
-msgid "Display statistics accumulated during compilation"
-msgstr "¥³¥ó¥Ñ¥¤¥ëÃæ¤ËÃßÀѤµ¤ì¤¿Åý·×¾ðÊó¤òɽ¼¨¤¹¤ë"
-
-#: cp/lang-options.h:104
-msgid "Specify maximum template instantiation depth"
-msgstr "¥Æ¥ó¥×¥ì¡¼¥È¼ÂÂβ½¤Î¿¼¤µ¤ÎºÇÂçÃͤò»ØÄꤹ¤ë"
-
-#: cp/lang-options.h:106
-#, fuzzy
-msgid "Use __cxa_atexit to register destructors"
-msgstr "¥Ç¥¹¥È¥é¥¯¥¿¤ÎÅÐÏ¿¤Ë __cxa_atexit ¤òÍøÍѤ¹¤ë"
-
-#: cp/lang-options.h:109
-msgid "Discard unused virtual functions"
-msgstr "»È¤ï¤ì¤Ê¤¤²¾ÁÛ´Ø¿ô¤òÀÚ¤ê¼Î¤Æ¤ë"
-
-#: cp/lang-options.h:112
-msgid "Implement vtables using thunks"
-msgstr "thunk ¤ò»È¤Ã¤Æ vtable ¤ò¼ÂÁõ¤¹¤ë"
-
-#: cp/lang-options.h:115
-msgid "Emit common-like symbols as weak symbols"
-msgstr "¥³¥â¥ó¥·¥ó¥Ü¥ë¤ò¥¦¥£¡¼¥¯¥·¥ó¥Ü¥ë¤ÎÍͤËÀ¸À®¤¹¤ë"
-
-#: cp/lang-options.h:118
-msgid "Emit cross referencing information"
-msgstr "Áê¸ß»²¾È¾ðÊó¤òÀ¸À®¤¹¤ë"
-
-#: cp/lang-options.h:122
-msgid "Warn about inconsistent return types"
-msgstr "Ìá¤êÃͤη¿¤È°ìÃפ·¤Ê¤¤¤â¤Î¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
-
-#: cp/lang-options.h:125
-msgid "Warn about overloaded virtual function names"
-msgstr "¥ª¡¼¥Ð¡¼¥í¡¼¥É¤µ¤ì¤¿²¾ÁÛ´Ø¿ô̾¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
-
-#: cp/lang-options.h:129
-msgid "Don't warn when all ctors/dtors are private"
-msgstr "Á´¤Æ¤Î¥³¥ó¥¹¥È¥é¥¯¥¿/¥Ç¥¹¥È¥é¥¯¥¿¤¬ private ¤Ç¤â·Ù¹ð¤·¤Ê¤¤"
-
-#: cp/lang-options.h:131
-msgid "Warn about non virtual destructors"
-msgstr "Èó²¾Áۥǥ¹¥È¥é¥¯¥¿¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
-
-#: cp/lang-options.h:134
-msgid "Warn when a function is declared extern, then inline"
-msgstr "´Ø¿ô¤¬ extern Àë¸À¤µ¤ì¤¿¸å¡¢inline ¤È¤µ¤ì¤¿¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
-
-#: cp/lang-options.h:137
-msgid "Warn when the compiler reorders code"
-msgstr "¥³¥ó¥Ñ¥¤¥é¤¬¥³¡¼¥É¤òʤÙÂؤ¨¤ë¤È¤­¤Ë·Ù¹ð¤¹¤ë"
-
-#: cp/lang-options.h:140
-#, fuzzy
-msgid "Warn when synthesis behavior differs from Cfront"
-msgstr "¹çÀ®¤Î¿¶¤ëÉñ¤¤¤¬ Cfront ¤È°Û¤Ê¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
-
-#: cp/lang-options.h:144
-msgid "Don't warn when type converting pointers to member functions"
-msgstr "¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð´Ø¿ô¤Ø¤Î·¿ÊÑ´¹¤Î¾ì¹ç¤Ç¤â·Ù¹ð¤·¤Ê¤¤"
-
-#: cp/lang-options.h:146
-msgid "Warn about violations of Effective C++ style rules"
-msgstr "Effective C++ ¼°¤Î»Ø¿Ë¤«¤é¤Ï¤º¤ì¤ë¤â¤Î¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
-
-#: cp/lang-options.h:149
-msgid "Warn when overload promotes from unsigned to signed"
-msgstr "¥ª¡¼¥Ð¡¼¥í¡¼¥É¤¬Éä¹ç̵¤·¤«¤éÉä¹çÉÕ¤­¤Ë³Ê¾å¤²¤È¤Ê¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
-
-#: cp/lang-options.h:152
-msgid "Warn if a C style cast is used in a program"
-msgstr "C ¼°¤Î¥­¥ã¥¹¥È¤¬¥×¥í¥°¥é¥à¤Ç»È¤ï¤ì¤¿¤é·Ù¹ð¤¹¤ë"
-
-#: cp/lang-options.h:156
-msgid "Don't warn when non-templatized friend functions are declared within a template"
-msgstr "template Æâ¤ÇÈó template ¤Î friend ´Ø¿ô¤¬Àë¸À¤µ¤ì¤¿¾ì¹ç¤Ç¤â·Ù¹ð¤·¤Ê¤¤"
-
-#: cp/lang-options.h:159
-msgid "Don't announce deprecation of compiler features"
-msgstr "¿ä¾©¤µ¤ì¤Ê¤¤¥³¥ó¥Ñ¥¤¥é¤Îµ¡Ç½¤ò¹ðÃΤ·¤Ê¤¤"
-
-#: f/bad.c:387
+#: f/bad.c:388
msgid "note:"
msgstr ""
-#: f/bad.c:391
+#: f/bad.c:392
#, fuzzy
msgid "warning:"
msgstr "·Ù¹ð: "
-#: f/bad.c:395
+#: f/bad.c:396
msgid "fatal:"
msgstr ""
-#: f/bad.c:437
+#: f/bad.c:438
msgid "(continued):"
msgstr ""
-#: f/bad.c:487 f/bad.c:505
+#: f/bad.c:488 f/bad.c:506
msgid "[REPORT BUG!!] %"
msgstr ""
-#: f/bad.c:494 f/bad.c:526
+#: f/bad.c:495 f/bad.c:527
msgid "[REPORT BUG!!]"
msgstr ""
-#: f/com.c:3132
+#: f/com.c:3125
#, no-c-format
msgid "ASSIGN'ed label cannot fit into `%A' at %0 -- using wider sibling"
msgstr ""
-#: f/com.c:11623
+#: f/com.c:11565
msgid "no INTEGER type can hold a pointer on this configuration"
msgstr "¸½ºß¤ÎÀßÄê¤Ç¤ÏÈó INTEGER ·¿¤¬¥Ý¥¤¥ó¥¿¤òÊÝ»ý¤Ç¤­¤Þ¤¹"
-#: f/com.c:11844
+#: f/com.c:11839
#, c-format
msgid "configuration: REAL, INTEGER, and LOGICAL are %d bits wide,"
msgstr "ÀßÄê: REAL, INTEGER µÚ¤Ó LOGICAL ¤Ï %d ¥Ó¥Ã¥ÈÉý¤Ç¡¢"
-#: f/com.c:11846
+#: f/com.c:11841
#, c-format
msgid "and pointers are %d bits wide, but g77 doesn't yet work"
msgstr "¥Ý¥¤¥ó¥¿¤Ï %d ¥Ó¥Ã¥ÈÉý¤Ç¤¹¤¬¡¢¤½¤ì¤éÁ´¤Æ¤¬ 32 ¥Ó¥Ã¥ÈÉý"
-#: f/com.c:11848
+#: f/com.c:11843
#, fuzzy
msgid "properly unless they all are 32 bits wide"
msgstr "¤Ç¤Ê¤¤¤È g77 ¤ÏÀµ¾ï¤ËÆ°ºî¤·¤Þ¤»¤ó¡£"
-#: f/com.c:11849
+#: f/com.c:11844
#, fuzzy
msgid "Please keep this in mind before you report bugs."
msgstr "¥Ð¥°¥ì¥Ý¡¼¥È¤òÁ÷¤ëÁ°¤Ë¤³¤Î»ö¤ò¿´¤Ëα¤á¤ÆÃÖ¤¤¤Æ¤¯¤À¤µ¤¤¡£"
#. I/O will probably crash.
-#: f/com.c:11857
+#: f/com.c:11852
#, c-format
msgid "configuration: char * holds %d bits, but ftnlen only %d"
msgstr "ÀßÄê: char * ¤Ï %d ¥Ó¥Ã¥È³ÎÊݤ·¤Þ¤¹¤¬¡¢ftnlen ¤¬¤¿¤Ã¤¿ %d ¥Ó¥Ã¥È¤Ç¤¹"
#. ASSIGN 10 TO I will crash.
-#: f/com.c:11866
+#: f/com.c:11861
#, c-format
msgid ""
"configuration: char * holds %d bits, but INTEGER only %d --\n"
@@ -19082,70 +18295,66 @@ msgstr ""
"ÀßÄê: char * ¤Ï %d ¥Ó¥Ã¥È³ÎÊݤ·¤Þ¤¹¤¬¡¢INTEGER ¤¬¤¿¤Ã¤¿ %d ¥Ó¥Ã¥È¤Ç¤¹ --\n"
" ¶²¤é¤¯ ASSIGN ʸ¤¬¼ºÇÔ¤·¤Þ¤¹"
-#: f/com.c:13681
+#: f/com.c:13677
#, fuzzy
msgid "In statement function"
msgstr "´Ø¿ô¤ËÂФ¹¤ë°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹"
-#: f/com.c:13691
+#: f/com.c:13687
+#, c-format
msgid "Outside of any program unit:\n"
msgstr ""
-#: f/com.c:15320
+#: f/com.c:15283
#, no-c-format
msgid "%A from %B at %0%C"
msgstr ""
-#: f/com.c:15497
-#, fuzzy
-msgid "directory name must immediately follow -I"
-msgstr "¥Ç¥¤¥ì¥¯¥È¥ê̾¤Ï -I ¤Î¤¹¤°¸å¤í¤Ë¤Ä¤±¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-
-#: f/com.c:15640
+#: f/com.c:15593
#, fuzzy, no-c-format
msgid "At %0, INCLUDE file %A exists, but is not readable"
msgstr "include ¤µ¤ì¤¿¥Õ¥¡¥¤¥ë `%s' ¤Ï¡¢Â¸ºß¤·¤Þ¤¹¤¬Æɤá¤Þ¤»¤ó"
-#: f/com.c:15675
+#: f/com.c:15628
#, no-c-format
msgid "At %0, INCLUDE nesting too deep"
msgstr ""
-#: f/expr.c:9614
+#: f/expr.c:8706
#, no-c-format
msgid "Two arithmetic operators in a row at %0 and %1 -- use parentheses"
msgstr ""
-#: f/expr.c:9664
+#: f/expr.c:8756
#, no-c-format
msgid "Operator at %0 has lower precedence than that at %1 -- use parentheses"
msgstr ""
-#: f/expr.c:10525
+#: f/expr.c:9639
#, no-c-format
msgid "Use .EQV./.NEQV. instead of .EQ./.NE. at %0 for LOGICAL operands at %1 and %2"
msgstr ""
-#: f/expr.c:10896
+#: f/expr.c:10010
#, no-c-format
msgid "Unsupported operand for ** at %1 -- converting to default INTEGER"
msgstr ""
-#: f/g77spec.c:234
+#: f/g77spec.c:230
#, c-format
msgid "overflowed output arg list for `%s'"
msgstr "`%s' ÍѤνÐÎÏ°ú¿ô¥ê¥¹¥È¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
-#: f/g77spec.c:373
+#: f/g77spec.c:367
msgid "--driver no longer supported"
msgstr "--driver ¤ÏºÇÁ᥵¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
-#: f/g77spec.c:386
+#: f/g77spec.c:380
#, c-format
msgid "argument to `%s' missing"
msgstr "`%s' ¤Ø¤Î°ú¿ô¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: f/g77spec.c:390
+#: f/g77spec.c:384
#, fuzzy
msgid "no input files; unwilling to write output files"
msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë¤¬¤¢¤ê¤Þ¤»¤ó -- ÉÔËܰդʽÐÎÏ¥Õ¥¡¥¤¥ë¤Ø¤Î½ñ¤­¹þ¤ß"
@@ -19155,134 +18364,129 @@ msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë¤¬¤¢¤ê¤Þ¤»¤ó -- ÉÔËܰդʽÐÎÏ¥Õ¥¡¥¤¥ë¤Ø¤Î½ñ¤­¹þ¤ß"
msgid "Implicit declaration of `%A' at %0"
msgstr "Á°Êý¤Ç¤Î `%s' ¤Î°ÅÌÛŪ¤ÊÀë¸À"
-#: f/lex.c:326
+#: f/lex.c:321
#, fuzzy, no-c-format
msgid "Non-ISO-C-standard escape sequence `\\%A' at %0"
msgstr "Èó ISO ɸ½à¤Î¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹, '\\%c'"
-#: f/lex.c:345
+#: f/lex.c:340
#, fuzzy, no-c-format
msgid "Unknown escape sequence `\\%A' at %0"
msgstr "ÉÔÌÀ¤Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹ `\\%c'"
-#: f/lex.c:354
+#: f/lex.c:349
#, fuzzy, no-c-format
msgid "Unterminated escape sequence `\\' at %0"
msgstr "ÉÔÌÀ¤Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹ `\\%c'"
-#: f/lex.c:365
+#: f/lex.c:360
#, fuzzy, no-c-format
msgid "Unknown escape sequence `\\' followed by char code 0x%A at %0"
msgstr "ÉÔÌÀ¤Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹: `\\' ¤Î¸å¤Ëʸ»ú¥³¡¼¥É 0x%x"
-#: f/lex.c:393
+#: f/lex.c:388
#, fuzzy, no-c-format
msgid "\\x used at %0 with no following hex digits"
msgstr "\\x ¤Ë¡¢¤½¤ì¤Ë³¤¯¤Ï¤º¤Î 16 ¿Ê¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: f/lex.c:407
+#: f/lex.c:402
#, fuzzy, no-c-format
msgid "Hex escape at %0 out of range"
msgstr "16 ¿Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¤¬Èϰϳ°¤Ç¤¹"
-#: f/lex.c:441
+#: f/lex.c:436
#, fuzzy, no-c-format
msgid "Escape sequence at %0 out of range for character"
msgstr "ʸ»ú¤ËÂФ¹¤ë¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¤¬ÈϰϤò³°¤ì¤Æ¤¤¤Þ¤¹"
-#: f/lex.c:595
+#: f/lex.c:590
msgid "hex escape out of range"
msgstr "16 ¿Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¤¬Èϰϳ°¤Ç¤¹"
-#: f/lex.c:648
+#: f/lex.c:643
#, c-format
msgid "non-ANSI-standard escape sequence, `\\%c'"
msgstr "Èó ANSI ɸ½à¤Î¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¡¢`\\%c'"
-#: f/lex.c:661
+#: f/lex.c:656
#, fuzzy, c-format
msgid "non-ISO escape sequence `\\%c'"
msgstr "Èó ANSI ¤Î¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹¡¢`\\%c'"
-#: f/lex.c:665
+#: f/lex.c:660
#, c-format
msgid "unknown escape sequence `\\%c'"
msgstr "ÉÔÌÀ¤Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹ `\\%c'"
-#: f/lex.c:667
+#: f/lex.c:662
#, c-format
msgid "unknown escape sequence: `\\' followed by char code 0x%x"
msgstr "ÉÔÌÀ¤Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹: `\\' ¤Î¸å¤Ëʸ»ú¥³¡¼¥É 0x%x"
-#: f/lex.c:744
+#: f/lex.c:739
#, fuzzy
msgid "badly formed directive -- no closing quote"
msgstr "ÉÔÀµ¤Ê·Á¤Î¥Ç¥£¥ì¥¯¥Æ¥£¥Ö -- ÊĤ¸¥¯¥©¡¼¥È¤¬¤¢¤ê¤Þ¤»¤ó"
-#: f/lex.c:802
+#: f/lex.c:797
msgid "#-lines for entering and leaving files don't match"
msgstr "¥Õ¥¡¥¤¥ë¤Ø¤Î½ÐÆþ¤ê¸ý¤È¤Ê¤ë #-¹Ô ¤¬À°¹ç¤·¤Þ¤»¤ó"
-#: f/lex.c:964
+#: f/lex.c:957
#, fuzzy
msgid "bad directive -- missing close-quote"
msgstr "ÉÔÀµ¤Ê¥Ç¥£¥ì¥¯¥Æ¥£¥Ö -- ÊĤ¸¥¯¥©¡¼¥È¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: f/lex.c:1078
-#, c-format
-msgid "ignoring pragma: %s"
-msgstr "pragma ¤ò̵»ë¤·¤Þ¤¹: %s"
-
-#: f/lex.c:1156
+#: f/lex.c:1096
msgid "invalid #ident"
msgstr "̵¸ú¤Ê #ident"
-#: f/lex.c:1173
+#: f/lex.c:1113
msgid "undefined or invalid # directive"
msgstr "̤ÄêµÁËô¤ÏÉÔÀµ¤Ê # ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤Ç¤¹"
-#: f/lex.c:1229
+#: f/lex.c:1168
msgid "invalid #line"
msgstr "̵¸ú¤Ê #line"
-#: f/lex.c:1285 f/lex.c:1329
+#: f/lex.c:1224 f/lex.c:1268
#, fuzzy
msgid "use `#line ...' instead of `# ...' in first line"
msgstr "ºÇ½é¤Î¹Ô¤Ç¤Ï `# ...' ¤ÎÂå¤ê¤Ë `#line ...' ¤ò»È¤¤¤Þ¤·¤ç¤¦"
-#: f/lex.c:1339
+#: f/lex.c:1278
msgid "invalid #-line"
msgstr "̵¸ú¤Ê #-¹Ô"
-#: f/lex.c:1432
+#: f/lex.c:1371
#, fuzzy, no-c-format
msgid "Null character at %0 -- line ignored"
msgstr "null ʸ»ú¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: f/stb.c:12078
+#: f/stb.c:9177
#, no-c-format
msgid "INCLUDE at %0 not the only statement on the source line"
msgstr ""
-#: f/ste.c:1400 f/ste.c:1747
+#: f/ste.c:1397 f/ste.c:1744
msgid "ASSIGNed FORMAT specifier is too small"
msgstr "ASSIGN ¤µ¤ì¤¿ FORMAT »ØÄê»Ò¤¬¾®¤µ¤¹¤®¤Þ¤¹"
#. ~~~Someday handle CHARACTER*1, CHARACTER*N
-#: f/ste.c:2624
+#: f/ste.c:2621
#, no-c-format
msgid "SELECT CASE on CHARACTER type (at %0) not supported -- sorry"
msgstr ""
-#: f/ste.c:2729
+#: f/ste.c:2725
msgid "SELECT (at %0) has duplicate cases -- check integer overflow of CASE(s)"
msgstr ""
-#: f/ste.c:2959
+#: f/ste.c:2957
msgid "ASSIGN to variable that is too small"
msgstr "ASSIGN Àè¤ÎÊÑ¿ô¤¬¾®¤µ¤¹¤®¤Þ¤¹"
-#: f/ste.c:2987
+#: f/ste.c:2989
msgid "ASSIGNed GOTO target variable is too small"
msgstr "ASSIGN ¤µ¤ì¤¿ GOTO ÀèÊÑ¿ô¤¬¾®¤µ¤¹¤®¤Þ¤¹"
@@ -19291,333 +18495,25 @@ msgstr "ASSIGN ¤µ¤ì¤¿ GOTO ÀèÊÑ¿ô¤¬¾®¤µ¤¹¤®¤Þ¤¹"
msgid "Local adjustable symbol `%A' at %0"
msgstr ""
-#: f/target.c:2550
+#: f/target.c:2545
msgid "data initializer on host with different endianness"
msgstr ""
-#: f/top.c:237
-#, c-format
-msgid "%s no longer supported -- try -fvxt"
+#: f/top.c:244
+#, fuzzy
+msgid "-fvxt-not-f90 no longer supported -- try -fvxt"
msgstr "%s ¤ÏºÇÁ᥵¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó -- -fvxt ¤È¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤"
-#: f/top.c:239
-#, c-format
-msgid "%s no longer supported -- try -fno-vxt -ff90"
+#: f/top.c:248
+#, fuzzy
+msgid "-ff90-not-vxt no longer supported -- try -fno-vxt -ff90"
msgstr "%s ¤ÏºÇÁ᥵¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó -- -fno-vxt -ff90 ¤È¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤"
-#: f/top.c:307 f/top.c:309
-#, c-format
-msgid "%s disabled, use normal debugging flags"
+#: f/top.c:318
+#, fuzzy
+msgid "-fdebug-kludge is disabled, use normal debugging flags"
msgstr "%s ¤¬Ìµ¸ú¤Ç¤¹¡£Ä̾ï¥Ç¥Ð¥Ã¥°¥Õ¥é¥°¤ò»È¤¤¤Þ¤·¤ç¤¦"
-#: f/lang-options.h:33
-msgid "Print g77-specific compiler version info, run internal tests"
-msgstr "g77 ¸ÇÍ­¤Î¥³¥ó¥Ñ¥¤¥é¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¡¢ÆâÉô¥Æ¥¹¥È¤Î¼Â¹Ô"
-
-#: f/lang-options.h:37
-msgid "Program is written in typical FORTRAN 66 dialect"
-msgstr "¥×¥í¥°¥é¥à¤¬Åµ·¿Åª¤Ê FORTRAN 66 Êý¸À¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
-
-#: f/lang-options.h:40
-msgid "Program is written in typical Unix f77 dialect"
-msgstr "¥×¥í¥°¥é¥à¤¬Åµ·¿Åª¤Ê Unix f77 Êý¸À¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
-
-#: f/lang-options.h:42
-msgid "Program does not use Unix-f77 dialectal features"
-msgstr "¥×¥í¥°¥é¥à¤¬ Unix-f77 Êý¸À¤Îµ¡Ç½¤ò»È¤Ã¤Æ¤¤¤Ê¤¤"
-
-#: f/lang-options.h:44
-msgid "Program is written in Fortran-90-ish dialect"
-msgstr "¥×¥í¥°¥é¥à¤¬ Fortran-90 ŪÊý¸À¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
-
-#: f/lang-options.h:48
-msgid "Treat local vars and COMMON blocks as if they were named in SAVE statements"
-msgstr "¥í¡¼¥«¥ëÊÑ¿ô¤È COMMON ¥Ö¥í¥Ã¥¯¤ò SAVE ʸ¤Ç̾Á°ÉÕ¤±¤é¤ì¤¿¤è¤¦¤Ë¼è¤ê°·¤¦"
-
-#: f/lang-options.h:50
-msgid "Allow $ in symbol names"
-msgstr "$ ¤ò¥·¥ó¥Ü¥ë̾¤È¤·¤Æ»È¤¨¤ë¤è¤¦¤Ë¤¹¤ë"
-
-#: f/lang-options.h:54
-msgid "f2c-compatible code need not be generated"
-msgstr "f2c ¸ß´¹¥³¡¼¥É¤òÀ¸À®¤¹¤ëɬÍפ¬¤Ê¤¤"
-
-#: f/lang-options.h:57
-msgid "Unsupported; do not generate libf2c-calling code"
-msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Ê¤¤ -- libf2c-calling ¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
-
-#: f/lang-options.h:59
-msgid "Unsupported; affects code-generation of arrays"
-msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Ê¤¤ -- ÇÛÎó¤Î¥³¡¼¥ÉÀ¸À®¤Ë±Æ¶Á¤¹¤ë"
-
-#: f/lang-options.h:62
-msgid "Program is written in Fortran-90-ish free form"
-msgstr "¥×¥í¥°¥é¥à¤Ï Fortran-90 Ū¥Õ¥ê¡¼¥Õ¥©¡¼¥à¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
-
-#: f/lang-options.h:67
-msgid "Warn about use of (only a few for now) Fortran extensions"
-msgstr "Fortran ³ÈÄ¥(º£¤Ï¾¯¤Ê¤¤¤¬)¤Î»ÈÍѤˤĤ¤¤Æ·Ù¹ð¤¹¤ë"
-
-#: f/lang-options.h:70
-msgid "Program is written in VXT (Digital-like) FORTRAN"
-msgstr "¥×¥í¥°¥é¥à¤Ï VXT (Digital) FORTRAN ¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
-
-#: f/lang-options.h:73
-msgid "Disallow all ugly features"
-msgstr "Á´¤Æ¤Î½¹¤¤µ¡Ç½¤òµö²Ä¤·¤Ê¤¤"
-
-#: f/lang-options.h:76
-msgid "Hollerith and typeless constants not passed as arguments"
-msgstr "Hollerith ¤ä·¿¤Ê¤·Äê¿ô¤ò°ú¿ô¤È¤·¤ÆÅϤµ¤Ê¤¤"
-
-#: f/lang-options.h:78
-msgid "Allow ordinary copying of ASSIGN'ed vars"
-msgstr "ASSIGN ¤µ¤ì¤¿ÊÑ¿ô¤ÎÄ̾ï¤Î¥³¥Ô¡¼¤òµö²Ä¤¹¤ë"
-
-#: f/lang-options.h:81
-msgid "Dummy array dimensioned to (1) is assumed-size"
-msgstr "¥À¥ß¡¼ÇÛÎó¤Î¼¡¸µ¤ò (1) ¤È¤ß¤Ê¤¹"
-
-#: f/lang-options.h:84
-msgid "Trailing comma in procedure call denotes null argument"
-msgstr "¥×¥í¥·¡¼¥¸¥ã¸Æ¤Ó½Ð¤·Ãæ¤ÎϢ³¥«¥ó¥Þ¤Ç null °ú¿ô¤òɽ¸½¤¹¤ë"
-
-#: f/lang-options.h:87
-msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
-msgstr "DOUBLE COMPLEX Z ¤Ç¤Î REAL(Z) ¤È AIMAG(Z) ¤òµö²Ä¤¹¤ë"
-
-#: f/lang-options.h:91
-msgid "Initialization via DATA and PARAMETER is type-compatible"
-msgstr "DATA ¤ä PARAMETER ·Ðͳ¤Î½é´ü²½¤Ï·¿¸ß´¹¤Ç¤¢¤ë"
-
-#: f/lang-options.h:93
-msgid "Allow INTEGER and LOGICAL interchangeability"
-msgstr "INTEGER ¤È LOGICAL ¤ÏÁê¸ß¤ËÊѹ¹²Äǽ¤Ç¤¢¤ë¤È¤¹¤ë"
-
-#: f/lang-options.h:96
-msgid "Print internal debugging-related info"
-msgstr "ÆâÉô¥Ç¥Ð¥Ã¥°´ØÏ¢¾ðÊó¤òɽ¼¨¤¹¤ë"
-
-#: f/lang-options.h:99
-msgid "Initialize local vars and arrays to zero"
-msgstr "¥í¡¼¥«¥ëÊÑ¿ô¤äÇÛÎó¤ò¥¼¥í¤Ë½é´ü²½¤¹¤ë"
-
-#: f/lang-options.h:103
-msgid "Backslashes in character/hollerith constants not special (C-style)"
-msgstr "ʸ»ú/hollerith Äê¿ô¤Ç¤Î¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤òÆüì¤Ê¤â¤Î¤È¤·¤Ê¤¤ (C ¼°)"
-
-#: f/lang-options.h:105
-msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
-msgstr "COMPLEX ·×»»¤Î¥Ð¥°¤ò²óÈò¤ò¥¨¥ß¥å¥ì¡¼¥È¤¹¤ë¥Õ¥í¥ó¥È¥¨¥ó¥É¤ò»ý¤Ä"
-
-#: f/lang-options.h:109
-msgid "Disable the appending of underscores to externals"
-msgstr "³°ÉôÊÑ¿ô¤Ë¥¢¥ó¥À¡¼¥¹¥³¥¢¤òÉÕ¤±Â­¤µ¤Ê¤¤"
-
-#: f/lang-options.h:112
-msgid "Never append a second underscore to externals"
-msgstr "³°ÉôÊÑ¿ô¤ËÆó¤ÄÌܤΥ¢¥ó¥À¡¼¥¹¥³¥¢¤òÉÕ¤±Â­¤µ¤Ê¤¤"
-
-#: f/lang-options.h:114
-msgid "Intrinsics spelled as e.g. SqRt"
-msgstr "intrinsic ¤¬Î㤨¤Ð SqRt ¤ÎÍѤËÄÖ¤é¤ì¤ë"
-
-#: f/lang-options.h:116
-msgid "Intrinsics in uppercase"
-msgstr "intrinsic ¤ò±ÑÂçʸ»ú¤È¤¹¤ë"
-
-#: f/lang-options.h:119
-msgid "Intrinsics letters in arbitrary cases"
-msgstr "intrinsic ʸ»ú¤ÏǤ°Õ¤Î¥±¡¼¥¹¤È¤¹¤ë"
-
-#: f/lang-options.h:121
-msgid "Language keywords spelled as e.g. IOStat"
-msgstr "¸À¸ìͽÌó¸ì¤¬Î㤨¤Ð IOStat ¤ÎÍѤËÄÖ¤é¤ì¤ë"
-
-#: f/lang-options.h:123
-msgid "Language keywords in uppercase"
-msgstr "¸À¸ìͽÌó¸ì¤Ï±ÑÂçʸ»ú¤È¤¹¤ë"
-
-#: f/lang-options.h:126
-msgid "Language keyword letters in arbitrary cases"
-msgstr "¸À¸ìͽÌó¸ìʸ»ú¤ÏǤ°Õ¤Î¥±¡¼¥¹¤È¤¹¤ë"
-
-#: f/lang-options.h:128
-msgid "Internally convert most source to uppercase"
-msgstr "ÆâÉôŪ¤ÊÊÑ´¹¤Ç¤Ï¥½¡¼¥¹¤ÎËؤó¤É¤ò±ÑÂçʸ»ú¤È¤¹¤ë"
-
-#: f/lang-options.h:131
-msgid "Internally preserve source case"
-msgstr "ÆâÉôŪ¤Ë¥½¡¼¥¹¤Î¥±¡¼¥¹¤òÊÝ»ý¤¹¤ë"
-
-#: f/lang-options.h:133
-msgid "Symbol names spelled in mixed case"
-msgstr "¥·¥ó¥Ü¥ë̾¤Ï¥±¡¼¥¹º®ºß¤ÇÄÖ¤é¤ì¤ë"
-
-#: f/lang-options.h:135
-msgid "Symbol names in uppercase"
-msgstr "¥·¥ó¥Ü¥ë̾¤òÂçʸ»ú¤È¤¹¤ë"
-
-#: f/lang-options.h:137
-msgid "Symbol names in lowercase"
-msgstr "¥·¥ó¥Ü¥ë̾¤ò¾®Ê¸»ú¤È¤¹¤ë"
-
-#: f/lang-options.h:140
-msgid "Program written in uppercase"
-msgstr "¥×¥í¥°¥é¥à¤¬±ÑÂçʸ»ú¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
-
-#: f/lang-options.h:142
-msgid "Program written in lowercase"
-msgstr "¥×¥í¥°¥é¥à¤¬±Ñ¾®Ê¸»ú¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
-
-#: f/lang-options.h:144
-msgid "Program written in strict mixed-case"
-msgstr "¥×¥í¥°¥é¥à¤¬¸·Ì©¤Ë¥±¡¼¥¹º®ºß¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
-
-#: f/lang-options.h:146
-msgid "Compile as if program written in uppercase"
-msgstr "¥×¥í¥°¥é¥à¤¬±ÑÂçʸ»ú¤Ç½ñ¤«¤ì¤¿Íͤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
-
-#: f/lang-options.h:148
-msgid "Compile as if program written in lowercase"
-msgstr "¥×¥í¥°¥é¥à¤¬±Ñ¾®Ê¸»ú¤Ç½ñ¤«¤ì¤¿Íͤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
-
-#: f/lang-options.h:150
-msgid "Preserve all spelling (case) used in program"
-msgstr "¥×¥í¥°¥é¥à¤Ç»È¤ï¤ì¤¿ÄÖ¤ê(¤Î¥±¡¼¥¹)¤òÁ´¤ÆÊÝ»ý¤¹¤ë"
-
-#: f/lang-options.h:152
-msgid "Delete libU77 intrinsics with bad interfaces"
-msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ëºï½ü¤¹¤ë"
-
-#: f/lang-options.h:154
-msgid "Disable libU77 intrinsics with bad interfaces"
-msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ë̵¸ú²½¤¹¤ë"
-
-#: f/lang-options.h:157
-msgid "Hide libU77 intrinsics with bad interfaces"
-msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ë±£¤¹"
-
-#: f/lang-options.h:159
-msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
-msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë"
-
-#: f/lang-options.h:161
-msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
-msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë"
-
-#: f/lang-options.h:164
-msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
-msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹"
-
-#: f/lang-options.h:166
-msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
-msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë"
-
-#: f/lang-options.h:168
-msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
-msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë"
-
-#: f/lang-options.h:171
-msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
-msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹"
-
-#: f/lang-options.h:173
-msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
-msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë"
-
-#: f/lang-options.h:175
-msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
-msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë"
-
-#: f/lang-options.h:178
-msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
-msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹"
-
-#: f/lang-options.h:180
-msgid "Delete MIL-STD 1753 intrinsics"
-msgstr "MIL-STD 1753 intrinsic ¤òºï½ü¤¹¤ë"
-
-#: f/lang-options.h:182
-msgid "Disable MIL-STD 1753 intrinsics"
-msgstr "MIL-STD 1753 intrinsic ¤ò̵¸ú²½¤¹¤ë"
-
-#: f/lang-options.h:185
-msgid "Hide MIL-STD 1753 intrinsics"
-msgstr "MIL-STD 1753 intrinsic ¤ò±£¤¹"
-
-#: f/lang-options.h:187
-msgid "Delete libU77 intrinsics"
-msgstr "libU77 intrinsic ¤òºï½ü¤¹¤ë"
-
-#: f/lang-options.h:189
-msgid "Disable libU77 intrinsics"
-msgstr "libU77 intrinsic ¤ò̵¸ú²½¤¹¤ë"
-
-#: f/lang-options.h:192
-msgid "Hide libU77 intrinsics"
-msgstr "libU77 intrinsic ¤ò±£¤¹"
-
-#: f/lang-options.h:194
-msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë"
-
-#: f/lang-options.h:196
-msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë"
-
-#: f/lang-options.h:199
-msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹"
-
-#: f/lang-options.h:201
-msgid "Treat initial values of 0 like non-zero values"
-msgstr "0 ¤Î½é´ü²½ÃͤòÈó¥¼¥íÃͤȤ·¤Æ¼è¤ê°·¤¦"
-
-#: f/lang-options.h:204
-msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
-msgstr "COMMON ¤ä EQUIVALENCE ÍѤÎÆÃÊ̤ʥǥХå°¾ðÊó¤òȯ¹Ô¤¹¤ë¡Ê̵¸ú²½¤µ¤ì¤Æ¤¤¤ë¡Ë"
-
-#: f/lang-options.h:207
-msgid "Take at least one trip through each iterative DO loop"
-msgstr "ºÇÄã¤Ç¤â°ì²ó¤Ï³ÆÈ¿Éü DO ¥ë¡¼¥×¤¬½èÍý¤µ¤ì¤ë¤È¤¹¤ë"
-
-#: f/lang-options.h:211
-msgid "Print names of program units as they are compiled"
-msgstr "¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥×¥í¥°¥é¥àñ°Ì¤Î̾Á°¤òɽ¼¨¤¹¤ë"
-
-#: f/lang-options.h:214
-msgid "Disable fatal diagnostics about inter-procedural problems"
-msgstr "inter-procedural ÌäÂê¤Ë¤Ä¤¤¤Æ¤ÎÃ×̿Ū¤Ê¿ÇÃÇɽ¼¨¤òɽ¼¨¤·¤Ê¤¤"
-
-#: f/lang-options.h:216
-msgid "Make prefix-radix non-decimal constants be typeless"
-msgstr "ÈóÀ°¿ôÄê¿ô¤ÎÀÜÈø´ð¿ô¤¬·¿¤Ê¤·¤Ç¤¢¤ë¤È¤¹¤ë"
-
-#: f/lang-options.h:219
-msgid "Generate code to check subscript and substring bounds"
-msgstr "ÇÛÎó¤Îź»ú¤Èź»ú¶­³¦¤ò¸¡ºº¤¹¤ë¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
-
-#: f/lang-options.h:222
-msgid "Fortran-specific form of -fbounds-check"
-msgstr "Fortran ¸ÇÍ­¤Î -fbounds-check ¤Î·Á¼°"
-
-#: f/lang-options.h:226
-msgid "Disable warnings about inter-procedural problems"
-msgstr "inter-procedural ÌäÂê¤Ë¤Ä¤¤¤Æ¤Î·Ù¹ðɽ¼¨¤òɽ¼¨¤·¤Ê¤¤"
-
-#: f/lang-options.h:230
-msgid "Warn about constructs with surprising meanings"
-msgstr "²ò¼á¤Ë¸í²ò¤ò¾·¤¯¤â¤Î¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
-
-#: f/lang-options.h:235
-msgid "Add a directory for INCLUDE searching"
-msgstr "INCLUDE õº÷ÍѤΥǥ£¥ì¥¯¥È¥ê¤òÄɲ乤ë"
-
-#: f/lang-options.h:237
-msgid "Set the maximum line length"
-msgstr "¹Ô¤ÎŤµ¤ÎºÇÂçÃͤòÀßÄꤹ¤ë"
-
#: f/bad.def:39
#, fuzzy, no-c-format
msgid "Missing first operand for binary operator at %0"
@@ -20524,324 +19420,353 @@ msgstr ""
msgid "In anything"
msgstr ""
-#: java/check-init.c:917
+#: java/check-init.c:905
#, c-format
msgid "internal error in check-init: tree code not implemented: %s"
msgstr "check-init ¤ÇÆâÉô¥¨¥é¡¼: ¥Ä¥ê¡¼¥³¡¼¥É¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó: %s"
-#: java/check-init.c:990
-#, fuzzy, c-format
-msgid "final field '%s' may not have been initialized"
+#: java/check-init.c:977
+#, fuzzy
+msgid "%Jfinal field '%D' may not have been initialized"
msgstr "²ÄÊÑĹ¥ª¥Ö¥¸¥§¥¯¥È¤Ï½é´ü²½¤µ¤ì¤Ê¤¤¤³¤È¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦"
-#: java/class.c:539 java/class.c:564
+#: java/class.c:592 java/class.c:616
msgid "internal error - too many interface type"
msgstr "ÆâÉô¥¨¥é¡¼ - interface ·¿¤¬Â¿¤¹¤®¤Þ¤¹"
-#: java/class.c:677
+#: java/class.c:715
msgid "bad method signature"
msgstr "ÉÔÀµ¤Ê¥á¥½¥Ã¥É¥·¥°¥Í¥¤¥Á¥ã¤Ç¤¹"
-#: java/class.c:726
+#: java/class.c:759
msgid "misplaced ConstantValue attribute (not in any field)"
msgstr "ConstantValue °À­¤Î¾ì½ê¤ò´Ö°ã¤¨¤Æ¤¤¤Þ¤¹¡Ê¤É¤Î¥Õ¥£¡¼¥ë¥É¤Ç¤â¤¢¤ê¤Þ¤»¤ó¡Ë"
-#: java/class.c:728
+#: java/class.c:761
#, fuzzy, c-format
msgid "duplicate ConstantValue attribute for field '%s'"
msgstr "¥Õ¥£¡¼¥ë¥É '%s' ¤Î ConstantValue °À­¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-#: java/class.c:739
+#: java/class.c:772
#, fuzzy, c-format
msgid "ConstantValue attribute of field '%s' has wrong type"
msgstr "¥Õ¥£¡¼¥ë¥É '%s' ¤Î ConstantValue °À­¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-#: java/class.c:1103
+#: java/class.c:1067
#, c-format
msgid "field '%s' not found in class"
msgstr "¥Õ¥£¡¼¥ë¥É '%s' ¤¬¥¯¥é¥¹Æâ¤Ë¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: java/class.c:1365
-msgid "abstract method in non-abstract class"
+#: java/class.c:1324
+#, fuzzy
+msgid "%Jabstract method in non-abstract class"
msgstr "abstract ¥á¥½¥Ã¥É¤¬ÈóÃê¾Ý¥¯¥é¥¹¤Ë¤¢¤ê¤Þ¤¹"
-#: java/class.c:2078
-#, c-format
-msgid "non-static method '%s' overrides static method"
+#: java/class.c:2140
+#, fuzzy
+msgid "%Jnon-static method '%D' overrides static method"
msgstr "ÈóÀÅŪ¥á¥½¥Ã¥É '%s' ¤¬ÀÅŪ¥á¥½¥Ã¥É¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¤¤¤Þ¤¹"
-#: java/decl.c:1541
+#: java/decl.c:1018
+#, fuzzy
+msgid "%J'%D' used prior to declaration"
+msgstr "`%s' ¤ÏÀë¸À¤è¤ê¤âÀè¤Ë»ÈÍѤµ¤ì¤Þ¤·¤¿"
+
+#: java/decl.c:1059
+#, c-format
+msgid "declaration of `%s' shadows a parameter"
+msgstr "`%s' ¤ÎÀë¸À¤Ï²¾°ú¿ô¤òʤ¤¤±£¤·¤Þ¤¹"
+
+#: java/decl.c:1062
#, c-format
-msgid "In %s: overlapped variable and exception ranges at %d"
+msgid "declaration of `%s' shadows a symbol from the parameter list"
+msgstr "`%s' ¤ÎÀë¸À¤Ï²¾°ú¿ô¥ê¥¹¥È¤Î¥·¥ó¥Ü¥ë¤òʤ¤¤±£¤·¤Þ¤¹"
+
+#: java/decl.c:1361
+#, fuzzy
+msgid "%Jlabel '%D' used but not defined"
+msgstr "¥é¥Ù¥ë `%s' ¤¬»È¤ï¤ì¤Þ¤·¤¿¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+
+#: java/decl.c:1366
+#, fuzzy
+msgid "%Jlabel '%D' defined but not used"
+msgstr "¥é¥Ù¥ë `%s' ¤¬ÄêµÁ¤µ¤ì¤Þ¤·¤¿¤¬»È¤ï¤ì¤Æ¤¤¤Þ¤»¤ó"
+
+#: java/decl.c:1494
+#, fuzzy
+msgid "%JIn %D: overlapped variable and exception ranges at %d"
msgstr "%s Æâ: ÊÑ¿ô¤ÈÎã³°ÈϰϤ¬ %d ¤Ç½Å¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
-#: java/decl.c:1622
+#: java/decl.c:1572
msgid "bad type in parameter debug info"
msgstr "²¾°ú¿ô¥Ç¥Ð¥Ã¥°¾ðÊó¤ËÉÔÀµ¤Ê·¿¤¬¤¢¤ê¤Þ¤¹"
-#: java/decl.c:1632
-#, c-format
-msgid "bad PC range for debug info for local `%s'"
+#: java/decl.c:1581
+#, fuzzy
+msgid "%Jbad PC range for debug info for local '%D'"
msgstr "¥í¡¼¥«¥ë¤Î `%s' ÍѥǥХå°¾ðÊó¤Î¤¿¤á¤Î PC ÈϰϤ¬ÉÔÀµ¤Ç¤¹"
-#: java/expr.c:530
+#: java/expr.c:519
msgid "stack underflow - dup* operation"
msgstr "¥¹¥¿¥Ã¥¯¥¢¥ó¥À¡¼¥Õ¥í¡¼ - dup* Áàºî"
-#: java/expr.c:1534
+#: java/expr.c:1469
#, c-format
msgid "reference `%s' is ambiguous: appears in interface `%s' and interface `%s'"
msgstr "»²¾È `%s' ¤ÏÛ£Ëæ¤Ç¤¹: interface `%s' ¤È interface `%s' ¤Ë¸½¤ì¤Þ¤·¤¿"
-#: java/expr.c:1563
+#: java/expr.c:1497
#, c-format
msgid "field `%s' not found"
msgstr "¥Õ¥£¡¼¥ë¥É `%s' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: java/expr.c:1715
+#: java/expr.c:1658
msgid "ret instruction not implemented"
msgstr "ret Ì¿Îá¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: java/expr.c:1857
+#: java/expr.c:1815
#, c-format
msgid "method '%s' not found in class"
msgstr "¥á¥½¥Ã¥É '%s' ¤Ï¥¯¥é¥¹Æâ¤Ë¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: java/expr.c:2060
+#: java/expr.c:2020
#, c-format
msgid "failed to find class '%s'"
msgstr "'%s' ¥¯¥é¥¹¤ò¸«¤Ä¤±¤ë¤Î¤Ë¼ºÇÔ¤·¤Þ¤·¤¿"
-#: java/expr.c:2070
+#: java/expr.c:2030
#, fuzzy, c-format
msgid "class '%s' has no method named '%s' matching signature '%s'"
msgstr "¥¯¥é¥¹ '%s' ¤Ï̾Á°¤¬ '%s' ¤Ç¥·¥°¥Í¥¤¥Á¥ã '%s' ¤È°ìÃפ¹¤ë¥á¥½¥Ã¥É¤ò»ý¤Ã¤Æ¤¤¤Þ¤»¤ó"
-#: java/expr.c:2080
+#: java/expr.c:2040
msgid "invokestatic on non static method"
msgstr "ÈóÀÅŪ¥á¥½¥Ã¥É¤Ë invokestatic ¤·¤Þ¤·¤¿"
-#: java/expr.c:2085
+#: java/expr.c:2045
msgid "invokestatic on abstract method"
msgstr "Ãê¾Ý¥á¥½¥Ã¥É¤Ë invokestatic ¤·¤Þ¤·¤¿"
-#: java/expr.c:2093
+#: java/expr.c:2053
msgid "invoke[non-static] on static method"
msgstr "ÀÅŪ¥á¥½¥Ã¥É¤Ë invoke[Èó static] ¤·¤Þ¤·¤¿"
-#: java/expr.c:2396
+#: java/expr.c:2352
#, fuzzy, c-format
msgid "missing field '%s' in '%s'"
msgstr "¥Õ¥£¡¼¥ë¥É '%s'('%s' Æâ) ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: java/expr.c:2402
+#: java/expr.c:2358
#, fuzzy, c-format
msgid "mismatching signature for field '%s' in '%s'"
msgstr "¥Õ¥£¡¼¥ë¥É '%s'('%s' Æâ) ¤Î¥·¥°¥Í¥¤¥Á¥ã¤¬°ìÃפ·¤Þ¤»¤ó"
-#: java/expr.c:2425
-#, c-format
-msgid "assignment to final field `%s' not in field's class"
+#: java/expr.c:2380
+#, fuzzy
+msgid "%Jassignment to final field '%D' not in field's class"
msgstr "final ¥Õ¥£¡¼¥ë¥É `%s' ¤Ø¤ÎÂåÆþ¤Ç¤¹¤¬¡¢¤½¤Î¥Õ¥£¡¼¥ë¥É¤Î¥¯¥é¥¹Æâ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: java/expr.c:2430
-#, c-format
-msgid "assignment to final static field `%s' not in class initializer"
+#: java/expr.c:2385
+#, fuzzy
+msgid "%Jassignment to final static field `%D' not in class initializer"
msgstr "final static ¥Õ¥£¡¼¥ë¥É `%s' ¤Ø¤ÎÂåÆþ¤Ç¤¹¤¬¡¢¤½¤Î¥Õ¥£¡¼¥ë¥É¤Î¥¯¥é¥¹Æâ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: java/expr.c:2437
-#, c-format
-msgid "assignment to final field `%s' not in constructor"
+#: java/expr.c:2393
+#, fuzzy
+msgid "%Jassignment to final field '%D' not in constructor"
msgstr "final ¥Õ¥£¡¼¥ë¥É `%s' ¤Ø¤ÎÂåÆþ¤Ç¤¹¤¬¡¢¥³¥ó¥¹¥È¥é¥¯¥¿Æâ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: java/expr.c:2684
+#: java/expr.c:2636
#, fuzzy, c-format
msgid "can't expand %s"
msgstr "%s ¤òŸ³«¤Ç¤­¤Þ¤»¤ó"
-#: java/expr.c:2861
+#: java/expr.c:2808
msgid "invalid PC in line number table"
msgstr "̵¸ú¤Ê PC ¤¬¹ÔÈÖ¹æ¥Æ¡¼¥Ö¥ë¤Ë¤¢¤ê¤Þ¤¹"
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2906
+#: java/expr.c:2854
#, fuzzy, c-format
msgid "unreachable bytecode from %d to before %d"
msgstr "%d ¤«¤é %d ¤ÎÁ°¤Þ¤Ç¤Î¥Ð¥¤¥È¥³¡¼¥É¤Ë¤ÏÅþã¤Ç¤­¤Þ¤»¤ó"
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2943
+#: java/expr.c:2892
#, fuzzy, c-format
msgid "unreachable bytecode from %d to the end of the method"
msgstr "%d ¤«¤é¥á¥½¥Ã¥É¤Î½ª¤ê¤Þ¤Ç¤Î¥Ð¥¤¥È¥³¡¼¥É¤Ë¤ÏÅþã¤Ç¤­¤Þ¤»¤ó"
#. duplicate code from LOAD macro
-#: java/expr.c:3261
+#: java/expr.c:3206
msgid "unrecogized wide sub-instruction"
msgstr "ǧ¼±¤Ç¤­¤Ê¤¤ wide sub Ì¿Îá¤Ç¤¹"
-#: java/jcf-io.c:543
+#: java/jcf-io.c:534
#, fuzzy, c-format
msgid "source file for class `%s' is newer than its matching class file. Source file `%s' used instead"
msgstr "¥¯¥é¥¹ `%s' ¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤Ï¡¢°ìÃפ¹¤ë¥¯¥é¥¹¥Õ¥¡¥¤¥ë¤è¤ê¿·¤·¤¤¤Ç¤¹¡£¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤òÂå¤ê¤Ë»È¤¤¤Þ¤¹"
-#: java/jcf-parse.c:338
+#: java/jcf-parse.c:330
msgid "bad string constant"
msgstr "ÉÔÀµ¤Êʸ»úÎóÄê¿ô¤Ç¤¹"
-#: java/jcf-parse.c:356
+#: java/jcf-parse.c:348
#, c-format
msgid "bad value constant type %d, index %d"
msgstr "ÉÔÀµ¤ÊÄê¿ôÃÍ·¿ %d, ¥¤¥ó¥Ç¥Ã¥¯¥¹ %d"
-#: java/jcf-parse.c:528
-#, c-format
-msgid "can't reopen %s"
+#: java/jcf-parse.c:514
+#, fuzzy, c-format
+msgid "can't reopen %s: %m"
msgstr "%s ¤òºÆ open ¤Ç¤­¤Þ¤»¤ó"
-#: java/jcf-parse.c:533
-#, c-format
-msgid "can't close %s"
+#: java/jcf-parse.c:519
+#, fuzzy, c-format
+msgid "can't close %s: %m"
msgstr "%s ¤ò close ¤Ç¤­¤Þ¤»¤ó"
-#: java/jcf-parse.c:619
+#: java/jcf-parse.c:604
#, fuzzy, c-format
msgid "cannot find file for class %s"
msgstr "¥¯¥é¥¹ %s ÍѤΥե¡¥¤¥ë¤ò¸«¤Ä¤±¤é¤ì¤Þ¤»¤ó¡£"
-#: java/jcf-parse.c:631
+#: java/jcf-parse.c:615
msgid "not a valid Java .class file"
msgstr "Àµ¾ï¤Ê Java .class ¥Õ¥¡¥¤¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: java/jcf-parse.c:634
+#: java/jcf-parse.c:618
msgid "error while parsing constant pool"
msgstr "constant ¥×¡¼¥ë¤Î¹½Ê¸²òÀÏÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿"
-#: java/jcf-parse.c:637
+#: java/jcf-parse.c:621
#, c-format
msgid "error in constant pool entry #%d\n"
msgstr "constant ¥×¡¼¥ë¹àÌÜ #%d Æâ¤Ç¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿\n"
#. FIXME - where was first time
-#: java/jcf-parse.c:649
+#: java/jcf-parse.c:633
#, c-format
msgid "reading class %s for the second time from %s"
msgstr "class %s ¤òÆɹþ¤à¤Î¤Ï %s ¤«¤éÆó²óÌܤˤʤê¤Þ¤¹"
-#: java/jcf-parse.c:667
+#: java/jcf-parse.c:651
msgid "error while parsing fields"
msgstr "¥Õ¥£¡¼¥ë¥É¤Î¹½Ê¸²òÀÏÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿"
-#: java/jcf-parse.c:670
+#: java/jcf-parse.c:654
msgid "error while parsing methods"
msgstr "¥á¥½¥Ã¥É¤Î¹½Ê¸²òÀÏÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿"
-#: java/jcf-parse.c:673
+#: java/jcf-parse.c:657
msgid "error while parsing final attributes"
msgstr "final °À­¤Î¹½Ê¸²òÀÏÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿"
-#: java/jcf-parse.c:687
+#: java/jcf-parse.c:671
#, fuzzy, c-format
msgid "the `java.lang.Object' that was found in `%s' didn't have the special zero-length `gnu.gcj.gcj-compiled' attribute. This generally means that your classpath is incorrectly set. Use `info gcj \"Input Options\"' to see the info page describing how to set the classpath"
msgstr "`%s' Æâ¤Ç¸«¤Ä¤«¤Ã¤¿ `java.lang.Object' ¤Ï¡¢Ä¹¤µ¥¼¥í¤ÎÆÃÊÌ¤Ê `gnu.gcj.gcj-compiled' °À­¤ò»ý¤Ã¤Æ¤¤¤Þ¤»¤ó¡£¤³¤ì¤ÏÉáÄ̤¢¤Ê¤¿¤Î¥¯¥é¥¹¥Ñ¥¹¤¬Àµ¤·¤¯ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤»ö¤ò°ÕÌ£¤·¤Þ¤¹¡£`info gcj \"Input Options\"' ¤ò»È¤Ã¤Æ¡¢¥¯¥é¥¹¥Ñ¥¹¤ÎÀßÄêÊýË¡¤òÀâÌÀ¤·¤Æ¤¢¤ë info ¥Ú¡¼¥¸¤ò¸«¤Æ²¼¤µ¤¤"
-#: java/jcf-parse.c:777
+#: java/jcf-parse.c:749
msgid "missing Code attribute"
msgstr "Code °À­¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: java/jcf-parse.c:1014
+#: java/jcf-parse.c:981
#, fuzzy
-msgid "source file seen twice on command line and will be compiled only once"
+msgid "%Hsource file seen twice on command line and will be compiled only once"
msgstr "¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤¬¥³¥Þ¥ó¥É¥é¥¤¥ó¤ËºÆ¤Ó¸½¤ì¤Þ¤·¤¿¤¬¡¢¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë¤Î¤Ï°ìÅÙ¤À¤±¤Ç¤¹"
-#: java/jcf-parse.c:1030
+#: java/jcf-parse.c:997
msgid "no input file specified"
msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: java/jcf-parse.c:1059
-#, c-format
-msgid "can't close input file %s"
+#: java/jcf-parse.c:1026
+#, fuzzy, c-format
+msgid "can't close input file %s: %m"
msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë %s ¤ò close ¤Ç¤­¤Þ¤»¤ó"
-#: java/jcf-parse.c:1096
+#: java/jcf-parse.c:1064
#, c-format
msgid "bad zip/jar file %s"
msgstr "zip/jar ¥Õ¥¡¥¤¥ë %s ¤ÏÉÔÀµ¤Ç¤¹"
-#: java/jcf-write.c:2650
+#: java/jcf-parse.c:1236
+#, fuzzy, c-format
+msgid "error while reading %s from zip file"
+msgstr "¥Õ¥£¡¼¥ë¥É¤Î¹½Ê¸²òÀÏÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿"
+
+#: java/jcf-write.c:2602
#, c-format
msgid "internal error in generate_bytecode_insn - tree code not implemented: %s"
msgstr "generate_bytecode_insn ¤ÇÆâÉô¥¨¥é¡¼ - ¥Ä¥ê¡¼¥³¡¼¥É¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó: %s"
-#: java/jcf-write.c:2988
+#: java/jcf-write.c:2934
#, fuzzy
msgid "field initializer type mismatch"
msgstr "¥Õ¥£¡¼¥ë¥É½é´üÀßÄê»Ò¤¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: java/jcf-write.c:3419
-#, c-format
-msgid "can't create directory %s"
+#: java/jcf-write.c:3389
+#, fuzzy, c-format
+msgid "can't create directory %s: %m"
msgstr "¥Ç¥£¥ì¥¯¥È¥ê %s ¤òºîÀ®¤Ç¤­¤Þ¤»¤ó"
-#: java/jcf-write.c:3473
+#: java/jcf-write.c:3442
#, fuzzy, c-format
-msgid "can't create %s"
+msgid "can't create %s: %m"
msgstr "%s ¤òºÆ open ¤Ç¤­¤Þ¤»¤ó"
-#: java/jv-scan.c:187
+#: java/jv-scan.c:185
#, fuzzy
msgid "only one of `--print-main', `--list-class', and `--complexity' allowed"
msgstr "`--print-main', `--list-class', `--complexity' ¤«¤é¤Ï°ì¤Ä¤·¤«Áª¤Ù¤Þ¤»¤ó"
-#: java/jv-scan.c:190
+#: java/jv-scan.c:188
#, fuzzy, c-format
msgid "can't open output file `%s'"
msgstr "½ÐÎÏ¥Õ¥¡¥¤¥ë `%s' ¤ò open ¤Ç¤­¤Þ¤»¤ó"
-#: java/jv-scan.c:224
+#: java/jv-scan.c:222
#, fuzzy, c-format
msgid "file not found `%s'"
msgstr "¥Õ¥¡¥¤¥ë `%s' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: java/jvspec.c:426
+#: java/jvspec.c:418
msgid "can't specify `-D' without `--main'\n"
msgstr "`--main' ̵¤·¤Ç¤Ï `-D' ¤ò»ØÄê¤Ç¤­¤Þ¤»¤ó\n"
-#: java/jvspec.c:429
+#: java/jvspec.c:421
#, fuzzy, c-format
msgid "`%s' is not a valid class name"
msgstr "\"%s\" ¤ÏÀµ¾ï¤Ê¥Õ¥¡¥¤¥ë̾¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: java/jvspec.c:435
+#: java/jvspec.c:427
msgid "--resource requires -o"
msgstr ""
-#: java/jvspec.c:442
+#: java/jvspec.c:434
#, fuzzy
msgid "warning: already-compiled .class files ignored with -C"
msgstr "·Ù¹ð: ¥³¥ó¥Ñ¥¤¥ëºÑ .class ¥Õ¥¡¥¤¥ë¤Ï -C ¤Ë¤è¤ê̵»ë¤µ¤ì¤Þ¤·¤¿"
-#: java/jvspec.c:449
+#: java/jvspec.c:441
msgid "cannot specify both -C and -o"
msgstr "-C ¤È -o ¤ÏξÊý¤ò°ì½ï¤Ë»ØÄê¤Ç¤­¤Þ¤»¤ó"
-#: java/jvspec.c:461
+#: java/jvspec.c:453
msgid "cannot create temporary file"
msgstr "°ì»þ¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Þ¤»¤ó"
-#: java/jvspec.c:489
+#: java/jvspec.c:481
msgid "using both @FILE with multiple files not implemented"
msgstr "@FILE ¤Ç¤ÎÊ£¿ô¥Õ¥¡¥¤¥ë¤Î»ÈÍѤϼÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: java/jvspec.c:538
+#: java/jvspec.c:530
msgid "cannot specify `main' class when not linking"
msgstr "¥ê¥ó¥¯»þ°Ê³°¤Ë¤Ï `main' ¥¯¥é¥¹¤ò»ØÄê¤Ç¤­¤Þ¤»¤ó"
-#: java/lang.c:548
+#: java/lang.c:740
msgid "can't do dependency tracking with input from stdin"
msgstr "ɸ½àÆþÎϤ«¤é¤ÎÆþÎϤǤϰ͸´Ø·¸¤ÎÄÉÀפ¬¤Ç¤­¤Þ¤»¤ó"
-#: java/lang.c:564
+#: java/lang.c:756
msgid "couldn't determine target name for dependency tracking"
msgstr "°Í¸´Ø·¸¤ÎÄÉÀפΤ¿¤á¤Î¥¿¡¼¥²¥Ã¥È̾¤¬ÆÃÄê¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿"
@@ -20860,300 +19785,210 @@ msgstr ""
"¤ÎÆÃÄꥨ¥ó¥³¡¼¥É¤ò»È¤¦¤Î¤Ç¤Ê¤±¤ì¤Ð¡¢`--encoding=UTF-8' ¥ª¥×¥·¥ç¥ó\n"
"¤ò»È¤Ã¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£"
-#: java/mangle.c:85
+#: java/mangle.c:89
#, fuzzy, c-format
msgid "can't mangle %s"
msgstr "%s ¤Î̾Á°ÊÑ´¹(mangle) ¤Ç¤­¤Þ¤»¤ó"
-#: java/mangle_name.c:144 java/mangle_name.c:216
+#: java/mangle_name.c:140 java/mangle_name.c:210
msgid "internal error - invalid Utf8 name"
msgstr "ÆâÉô¥¨¥é¡¼ - ̵¸ú¤Ê Utf8 ̾¤Ç¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:881
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:962
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1303
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1364
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1574
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1796
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1805
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1816
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1827
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1839
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1854
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1871
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1873
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1945
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2116
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2178
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2330
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2342
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2349
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2356
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2367
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2369
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2407
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2409
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2411
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2432
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2434
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2436
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2452
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2454
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2475
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2477
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2479
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2507
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2509
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2511
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2513
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2531
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2533
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2555
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2566
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2577
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2588
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2601
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2605
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2607
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2620
+#: java/parse-scan.y:880 java/parse.y:949 java/parse.y:1290 java/parse.y:1351
+#: java/parse.y:1555 java/parse.y:1777 java/parse.y:1786 java/parse.y:1797
+#: java/parse.y:1808 java/parse.y:1820 java/parse.y:1835 java/parse.y:1852
+#: java/parse.y:1854 java/parse.y:1935 java/parse.y:2106 java/parse.y:2168
+#: java/parse.y:2320 java/parse.y:2332 java/parse.y:2339 java/parse.y:2346
+#: java/parse.y:2357 java/parse.y:2359 java/parse.y:2397 java/parse.y:2399
+#: java/parse.y:2401 java/parse.y:2422 java/parse.y:2424 java/parse.y:2426
+#: java/parse.y:2442 java/parse.y:2444 java/parse.y:2465 java/parse.y:2467
+#: java/parse.y:2469 java/parse.y:2497 java/parse.y:2499 java/parse.y:2501
+#: java/parse.y:2503 java/parse.y:2521 java/parse.y:2523 java/parse.y:2534
+#: java/parse.y:2545 java/parse.y:2556 java/parse.y:2567 java/parse.y:2578
+#: java/parse.y:2591 java/parse.y:2595 java/parse.y:2597 java/parse.y:2610
msgid "Missing term"
msgstr "¹à¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:883
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:734
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:772
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:797
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:983
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1338
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1550
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1552
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1781
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1807
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1818
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1829
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1841
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1856
+#: java/parse-scan.y:882 java/parse.y:721 java/parse.y:759 java/parse.y:784
+#: java/parse.y:970 java/parse.y:1325 java/parse.y:1531 java/parse.y:1533
+#: java/parse.y:1762 java/parse.y:1788 java/parse.y:1799 java/parse.y:1810
+#: java/parse.y:1822 java/parse.y:1837
msgid "';' expected"
msgstr "';' ¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:732
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:770
+#: java/parse.y:719 java/parse.y:757
msgid "Missing name"
msgstr "̾Á°¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:795
+#: java/parse.y:782
msgid "'*' expected"
msgstr "'*' ¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:809
+#: java/parse.y:796
msgid "Class or interface declaration expected"
msgstr "¥¯¥é¥¹¤ä¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹Àë¸À¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:846
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:848
+#: java/parse.y:833 java/parse.y:835
msgid "Missing class name"
msgstr "¥¯¥é¥¹Ì¾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:851
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:855
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:863
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1023
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1284
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1616
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1867
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1899
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1952
+#: java/parse.y:838 java/parse.y:842 java/parse.y:850 java/parse.y:1010
+#: java/parse.y:1271 java/parse.y:1273 java/parse.y:1597 java/parse.y:1848
+#: java/parse.y:1880 java/parse.y:1942
msgid "'{' expected"
msgstr "'{' ¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:865
+#: java/parse.y:852
msgid "Missing super class name"
msgstr "¥¹¡¼¥Ñ¡¼¥¯¥é¥¹Ì¾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:875
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:891
+#: java/parse.y:862 java/parse.y:878
msgid "Missing interface name"
msgstr "¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹Ì¾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:977
+#: java/parse.y:964
msgid "Missing variable initializer"
msgstr "ÊÑ¿ô½é´ü²½»Ò¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:994
+#: java/parse.y:981
msgid "Invalid declaration"
msgstr "̵¸ú¤ÊÀë¸À¤Ç¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:997
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1082
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2153
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2175
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2179
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2214
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2291
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2301
+#: java/parse.y:984 java/parse.y:1069 java/parse.y:2143 java/parse.y:2165
+#: java/parse.y:2169 java/parse.y:2204 java/parse.y:2281 java/parse.y:2291
msgid "']' expected"
msgstr "']' ¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1001
+#: java/parse.y:988
msgid "Unbalanced ']'"
msgstr "Âбþ¤Î¤Ê¤¤ ']' ¤Ç¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1037
+#: java/parse.y:1024
msgid "Invalid method declaration, method name required"
msgstr "̵¸ú¤Ê¥á¥½¥Ã¥ÉÀë¸À¤Ç¤¹¡£¥á¥½¥Ã¥É̾¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1042
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1047
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1052
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2036
+#: java/parse.y:1029 java/parse.y:1034 java/parse.y:1039 java/parse.y:2026
msgid "Identifier expected"
msgstr "¼±Ê̻Ҥ¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1057
+#: java/parse.y:1044
msgid "Invalid method declaration, return type required"
msgstr "̵¸ú¤Ê¥á¥½¥Ã¥ÉÀë¸À¤Ç¤¹¡£¥á¥½¥Ã¥É̾¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1080
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1530
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1537
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1546
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1548
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1576
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1684
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1981
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2034
+#: java/parse.y:1067 java/parse.y:1511 java/parse.y:1518 java/parse.y:1527
+#: java/parse.y:1529 java/parse.y:1557 java/parse.y:1665 java/parse.y:1971
+#: java/parse.y:2024
msgid "')' expected"
msgstr "')' ¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1096
+#: java/parse.y:1083
msgid "Missing formal parameter term"
msgstr "Àµ¼°¤Ê²¾°ú¿ô¹à¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1111
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1116
+#: java/parse.y:1098 java/parse.y:1103
msgid "Missing identifier"
msgstr "¼±Ê̻Ҥò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1136
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1145
+#: java/parse.y:1123 java/parse.y:1132
msgid "Missing class type term"
msgstr "¥¯¥é¥¹¥¿¥¤¥×¹à¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1301
+#: java/parse.y:1288
msgid "Invalid interface type"
msgstr "¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹·¿¤¬Ìµ¸ú¤Ç¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1494
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1663
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1665
+#: java/parse.y:1475 java/parse.y:1644 java/parse.y:1646
msgid "':' expected"
msgstr "':' ¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1516
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1521
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1526
+#: java/parse.y:1497 java/parse.y:1502 java/parse.y:1507
msgid "Invalid expression statement"
msgstr "¼°Ê¸¤¬Ìµ¸ú¤Ç¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1572
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1612
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1680
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1748
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1869
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1938
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2028
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2030
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2038
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2274
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2276
+#: java/parse.y:1525 java/parse.y:1553 java/parse.y:1593 java/parse.y:1661
+#: java/parse.y:1729 java/parse.y:1850 java/parse.y:1928 java/parse.y:2018
+#: java/parse.y:2020 java/parse.y:2028 java/parse.y:2264 java/parse.y:2266
msgid "'(' expected"
msgstr "'(' ¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1614
+#: java/parse.y:1595
msgid "Missing term or ')'"
msgstr "¹à¤Þ¤¿¤Ï ')' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1661
+#: java/parse.y:1642
msgid "Missing or invalid constant expression"
msgstr "Äê¿ô¼°¤¬·ç¤±¤Æ¤¤¤ë¤«Ìµ¸ú¤Ç¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1682
+#: java/parse.y:1663
msgid "Missing term and ')' expected"
msgstr "¹à¤Èɬ¿Ü¤Î ')' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1721
+#: java/parse.y:1702
msgid "Invalid control expression"
msgstr "̵¸ú¤ÊÀ©¸æ¼°¤Ç¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1723
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1725
+#: java/parse.y:1704 java/parse.y:1706
msgid "Invalid update expression"
msgstr "̵¸ú¤Ê¹¹¿·¼°¤Ç¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1750
+#: java/parse.y:1731
msgid "Invalid init statement"
msgstr "̵¸ú¤Ê½é´ü²½¼°¤Ç¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1941
+#: java/parse.y:1931
msgid "Missing term or ')' expected"
msgstr "¹à¤Þ¤¿¤Ïɬ¿Ü¤Î ')' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1983
+#: java/parse.y:1973
msgid "'class' or 'this' expected"
msgstr "'class' ¤Þ¤¿¤Ï 'this' ¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1985
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1987
+#: java/parse.y:1975 java/parse.y:1977
msgid "'class' expected"
msgstr "'class' ¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2032
+#: java/parse.y:2022
msgid "')' or term expected"
msgstr "')' ¤Þ¤¿¤Ï¹à¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2151
+#: java/parse.y:2141
msgid "'[' expected"
msgstr "'[' ¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2229
+#: java/parse.y:2219
msgid "Field expected"
msgstr "¥Õ¥£¡¼¥ë¥É¤¬É¬ÍפǤ¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2296
+#: java/parse.y:2276 java/parse.y:2286
msgid "Missing term and ']' expected"
msgstr "¹à¤Èɬ¿Ü¤Î ']' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2400
+#: java/parse.y:2390
msgid "']' expected, invalid type expression"
msgstr "']' ¤¬É¬Íפǡ¢Ìµ¸ú¤Ê·¿É½¸½¤Ç¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2403
+#: java/parse.y:2393
msgid "Invalid type expression"
msgstr "̵¸ú¤Ê·¿É½¸½¤Ç¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2515
+#: java/parse.y:2505
msgid "Invalid reference type"
msgstr "̵¸ú¤Ê»²¾È·¿¤Ç¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2993
+#: java/parse.y:2977
msgid "Constructor invocation must be first thing in a constructor"
msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤Îµ¯Æ°¤Ï¥³¥ó¥¹¥È¥é¥¯¥¿Æâ¤ÇºÇ½é¤Ë¹Ô¤Ê¤ï¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2995
+#: java/parse.y:2979
msgid "Only constructors can invoke constructors"
msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤À¤±¤¬¥³¥ó¥¹¥È¥é¥¯¥¿¤òµ¯Æ°¤Ç¤­¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3004
+#: java/parse.y:2987
#, c-format
msgid ": `%s' JDK1.1(TM) feature"
msgstr ": `%s' ¤Ï JDK1.1(TM) ¤Îµ¡Ç½¤Ç¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3064
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3066
+#: java/parse.y:3046 java/parse.y:3048
#, c-format
msgid ""
"%s.\n"
@@ -21162,249 +19997,228 @@ msgstr ""
"%s.\n"
"%s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6879
+#: java/parse.y:6908
#, c-format
msgid "malformed .zip archive in CLASSPATH: %s"
msgstr "CLASSPATH Æâ¤ËÊÑ¤Ê .zip ¥¢¡¼¥«¥¤¥Ö¤¬¤¢¤ê¤Þ¤¹: %s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6950
+#: java/parse.y:6979
#, fuzzy, c-format
msgid "Can't find default package `%s'. Check the CLASSPATH environment variable and the access to the archives"
msgstr "¥Ç¥Õ¥©¥ë¥È¥Ñ¥Ã¥±¡¼¥¸ `%s' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¡£CLASSPATH ´Ä¶­ÊÑ¿ô¤È¥¢¡¼¥«¥¤¥Ö¤Ø¤Î¥¢¥¯¥»¥¹¤ò³Î¤«¤á¤Æ¤¯¤À¤µ¤¤¡£"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12352
+#: java/parse.y:12192
#, c-format
msgid "missing static field `%s'"
msgstr "static ¥Õ¥£¡¼¥ë¥É `%s' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12357
+#: java/parse.y:12197
#, c-format
msgid "not a static field `%s'"
msgstr "static ¥Õ¥£¡¼¥ë¥É `%s' ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12400
+#: java/parse.y:12240
#, c-format
msgid "No case for %s"
msgstr "%s ¤Î¤¿¤á¤Î case ¤¬¤¢¤ê¤Þ¤»¤ó"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:13365
+#: java/parse.y:13172
#, c-format
msgid "unregistered operator %s"
msgstr "ÅÐÏ¿¤µ¤ì¤Æ¤¤¤Ê¤¤±é»»»Ò %s ¤Ç¤¹"
-#: java/typeck.c:553
+#: java/typeck.c:530
msgid "junk at end of signature string"
msgstr "¥·¥°¥Í¥¤¥Á¥ãʸ»úÎó¤Î½ª¤ê¤Ë¥´¥ß¤¬¤¢¤ê¤Þ¤¹"
-#: java/verify.c:479
+#: java/verify.c:471
msgid "bad pc in exception_table"
msgstr "exception_table ¤ËÉÔÀµ¤Ê pc ¤¬¤¢¤ê¤Þ¤¹"
-#: java/verify.c:485
-msgid "exception handler inside code that is being protected"
-msgstr ""
-
-#: java/verify.c:1395
+#: java/verify.c:1384
#, c-format
msgid "unknown opcode %d@pc=%d during verification"
msgstr "ÉÔÌÀ¤Ê opcode %d@pc=%d ¤ò¸¡¾ÚÃæ¤Ëȯ¸«¤·¤Þ¤·¤¿"
-#: java/verify.c:1465 java/verify.c:1478 java/verify.c:1482
+#: java/verify.c:1454 java/verify.c:1467 java/verify.c:1471
#, c-format
msgid "verification error at PC=%d"
msgstr "¸¡¾Ú¥¨¥é¡¼ (PC=%d)"
-#: java/lang-options.h:32
-msgid "Disable automatic array bounds checking"
-msgstr "¼«Æ°Åª¤ÊÇÛÎó¶­³¦¸¡ºº¤ò¹Ô¤ï¤Ê¤¤"
-
-#: java/lang-options.h:34
-msgid "Disable assignability checks for stores into object arrays"
-msgstr ""
-
-#: java/lang-options.h:36
-msgid "Assume native functions are implemented using JNI"
-msgstr "native ´Ø¿ô¤¬ JNI ¤òÍøÍѤ·¤Æ¼ÂÁõ¤·¤Æ¤¤¤ë¤â¤Î¤È¤ß¤Ê¤¹"
-
-#: java/lang-options.h:38
-#, fuzzy
-msgid "Replace system path"
-msgstr "¥¯¥é¥¹¥Ñ¥¹¤òÀßÄꤹ¤ë"
-
-#: java/lang-options.h:40
-msgid "Set class path"
-msgstr "¥¯¥é¥¹¥Ñ¥¹¤òÀßÄꤹ¤ë"
-
-#: java/lang-options.h:42
-msgid "Set class path (deprecated: use --classpath instead)"
-msgstr ""
-
-#: java/lang-options.h:44
-msgid "Choose class whose main method should be used"
-msgstr "main ¥á¥½¥Ã¥É¤¬»È¤ï¤ì¤ë¤Ù¤­¥¯¥é¥¹¤òÁªÂò¤¹¤ë"
-
-#: java/lang-options.h:46
-#, fuzzy
-msgid "Choose input encoding (default comes from locale)"
-msgstr "ÆþÎÏ¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤òÁªÂò¤¹¤ë(¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï UTF-8)"
-
-#: java/lang-options.h:48
-msgid "Add directory to class path"
-msgstr "¥¯¥é¥¹¥Ñ¥¹¤Ë¥Ç¥£¥ì¥¯¥È¥ê¤òÄɲ乤ë"
-
-#: java/lang-options.h:50
-msgid "Directory where class files should be written"
-msgstr "¥¯¥é¥¹¥Õ¥¡¥¤¥ë¤¬½ñ¤­¹þ¤Þ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê"
-
-#: java/lang-options.h:52
-msgid "Warn if modifiers are specified when not necessary"
-msgstr "»ØÄꤵ¤ì¤¿½¤¾þ»Ò¤¬ÉÔÍפʤâ¤Î¤Ç¤¢¤ì¤Ð·Ù¹ð¤¹¤ë"
-
-#: java/lang-options.h:54
-msgid "Warn if deprecated empty statements are found"
-msgstr "¿ä¾©¤µ¤ì¤Ê¤¤¶õʸ¤¬¸«¤Ä¤«¤ì¤Ð·Ù¹ð¤¹¤ë"
-
-#: java/lang-options.h:56
-msgid "Warn if .class files are out of date"
-msgstr ".class ¥Õ¥¡¥¤¥ë¤¬¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤è¤ê¸Å¤±¤ì¤Ð·Ù¹ð¤¹¤ë"
-
-#: java/lang-options.h:58
-msgid "Always check for non gcj generated classes archives"
-msgstr "gcj ¤¬À¸À®¤·¤Æ¤¤¤Ê¤¤¥¯¥é¥¹¥¢¡¼¥«¥¤¥Ö¤ò¾ï¤Ë¸¡ºº¤¹¤ë"
-
-#: java/lang-options.h:60
-msgid "Never optimize static class initialization code"
-msgstr ""
-
-#: java/lang-options.h:62
-msgid "Use offset tables for virtual method calls"
-msgstr ""
-
-#: objc/objc-act.c:651
+#: objc/objc-act.c:689
#, c-format
msgid "object does not conform to the `%s' protocol"
msgstr "¥ª¥Ö¥¸¥§¥¯¥È¤¬ `%s' ¥×¥í¥È¥³¥ë¤ËŬ¹ç¤·¤Þ¤»¤ó"
-#: objc/objc-act.c:737 objc/objc-act.c:810
+#: objc/objc-act.c:775 objc/objc-act.c:848
#, c-format
msgid "class `%s' does not implement the `%s' protocol"
msgstr "¥¯¥é¥¹ `%s' ¤Ï `%s' ¥×¥í¥È¥³¥ë¤ò¼ÂÁõ¤·¤Æ¤¤¤Þ¤»¤ó"
-#: objc/objc-act.c:914
-#, c-format
-msgid "`%s' cannot be statically allocated"
-msgstr "`%s' ¤òÀÅŪ¤Ë³ÎÊݤǤ­¤Þ¤»¤ó"
+#: objc/objc-act.c:951
+#, fuzzy, c-format
+msgid "statically allocated instance of Objective-C class `%s'"
+msgstr "¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀÅŪ¤Ê³äÅö¤Æ¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: objc/objc-act.c:963
+#: objc/objc-act.c:998
#, fuzzy, c-format
msgid "unexpected type for `id' (%s)"
msgstr "ͽ´ü¤·¤Ê¤¤·¿¤¬ `id' (%s) ¤Ë»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: objc/objc-act.c:968
+#: objc/objc-act.c:1003
#, fuzzy
msgid "undefined type `id', please import <objc/objc.h>"
msgstr "`id' ·¿¤¬Ì¤ÄêµÁ¤Ç¤¹¡£<objc/objc.h> ¤ò import ¤·¤Æ²¼¤µ¤¤"
-#: objc/objc-act.c:1019
+#: objc/objc-act.c:1052
#, c-format
msgid "protocol `%s' has circular dependency"
msgstr ""
-#: objc/objc-act.c:1041 objc/objc-act.c:5301
+#: objc/objc-act.c:1074 objc/objc-act.c:5982
#, fuzzy, c-format
msgid "cannot find protocol declaration for `%s'"
msgstr "`%s' ¤ËÂФ¹¤ë¥×¥í¥È¥³¥ëÀë¸À¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: objc/objc-act.c:1289 objc/objc-act.c:5877 objc/objc-act.c:6195
-#: objc/objc-act.c:6244 objc/objc-act.c:6280 objc-parse.y:1799
+#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6513
+#: objc/objc-act.c:6822 objc/objc-act.c:6875 objc/objc-act.c:6900
#, fuzzy, c-format
msgid "cannot find interface declaration for `%s'"
msgstr "`%s' ¤ËÂФ¹¤ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹Àë¸À¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: objc/objc-act.c:1328
+#: objc/objc-act.c:1423
+#, fuzzy, c-format
+msgid "interface `%s' does not have valid constant string layout"
+msgstr "`asm' ¤Î°ú¿ô¤¬Äê¿ôʸ»úÎó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó "
+
+#: objc/objc-act.c:1439
#, fuzzy, c-format
msgid "cannot find reference tag for class `%s'"
msgstr "¥¯¥é¥¹ %s ÍѤΥե¡¥¤¥ë¤ò¸«¤Ä¤±¤é¤ì¤Þ¤»¤ó¡£"
-#: objc/objc-act.c:2050
+#: objc/objc-act.c:2179
#, fuzzy, c-format
msgid "creating selector for non existant method %s"
msgstr "²ÄǽÀ­¤Î¤¢¤ë¥»¥ì¥¯¥¿¤¬¥á¥½¥Ã¥É `%s' ¤È¶¥¹ç¤·¤Þ¤¹"
-#: objc/objc-act.c:2364
+#: objc/objc-act.c:2389
+#, c-format
+msgid "`%s' is not an Objective-C class name or alias"
+msgstr ""
+
+#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6769
+#: objc/objc-act.c:7059 objc/objc-act.c:7088
+msgid "Objective-C declarations may only appear in global scope"
+msgstr ""
+
+#: objc/objc-act.c:2505
#, fuzzy, c-format
msgid "cannot find class `%s'"
msgstr "¥¯¥é¥¹ `%s' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: objc/objc-act.c:2366
+#: objc/objc-act.c:2507
#, fuzzy, c-format
msgid "class `%s' already exists"
msgstr "¥¯¥é¥¹ `%s' ¤Ï´û¤Ë¸ºß¤·¤Þ¤¹"
+#: objc/objc-act.c:2532 objc/objc-act.c:6791
+#, c-format
+msgid "`%s' redeclared as different kind of symbol"
+msgstr "`%s' ¤¬Ê̤Υ·¥ó¥Ü¥ë¼ï¤È¤·¤ÆºÆÀë¸À¤µ¤ì¤Þ¤·¤¿"
+
#. fatal did not work with 2 args...should fix
-#: objc/objc-act.c:2473
+#: objc/objc-act.c:2680
#, fuzzy, c-format
msgid "cannot find interface declaration for `%s', superclass of `%s'"
msgstr "`%s' ¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹Àë¸À¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¡Ê`%s' ¤Î´ðÄ쥯¥é¥¹¤Ç¤¹¡Ë"
-#: objc/objc-act.c:2480
+#: objc/objc-act.c:2687
#, fuzzy, c-format
msgid "circular inheritance in interface declaration for `%s'"
msgstr "`%s' ¤Ø¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹Àë¸À¤¬½Û´ÄŪ¤Ê·Ñ¾µ¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
-#: objc/objc-act.c:3566 objc/objc-act.c:3583
+#: objc/objc-act.c:2780 objc/objc-act.c:2924 objc/objc-act.c:3024
+#: objc/objc-act.c:3200 objc/objc-act.c:3240
+msgid "Use `-fobjc-exceptions' to enable Objective-C exception syntax"
+msgstr ""
+
+#: objc/objc-act.c:2787
+msgid "`@throw;' (rethrow) used outside of a `@catch' block"
+msgstr ""
+
+#: objc/objc-act.c:3027
+msgid "`@catch' parameter is not a known Objective-C class type"
+msgstr ""
+
+#: objc/objc-act.c:3036
+msgid "Exception already handled by preceding `@catch(id)'"
+msgstr ""
+
+#: objc/objc-act.c:3041
+#, c-format
+msgid "Exception of type `%s *' already handled by `@catch (%s *)'"
+msgstr ""
+
+#: objc/objc-act.c:3206
+msgid "`@try' without `@catch' or `@finally'"
+msgstr ""
+
+#: objc/objc-act.c:3647
+msgid "%Jtype '%D' does not have a known size"
+msgstr ""
+
+#: objc/objc-act.c:4256
+#, fuzzy
+msgid "%J%s `%s'"
+msgstr "%s Æâ¤Î `%s':"
+
+#: objc/objc-act.c:4281 objc/objc-act.c:4300
msgid "inconsistent instance variable specification"
msgstr "¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô¤Î»ÅÍͤ¬°ì´Ó¤·¤Æ¤¤¤Þ¤»¤ó"
-#: objc/objc-act.c:4580
+#: objc/objc-act.c:5303
msgid "can not use an object as parameter to a method\n"
msgstr ""
-#: objc/objc-act.c:4780
-#, c-format
-msgid "multiple declarations for method `%s'"
-msgstr "¥á¥½¥Ã¥É `%s' ¤ÎÀë¸À¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£"
+#: objc/objc-act.c:5504
+#, fuzzy, c-format
+msgid "multiple %s named `%c%s' found"
+msgstr "½ÅÊ£¤·¤¿²¾°ú¿ô̾ `%s'"
-#: objc/objc-act.c:4946
+#: objc/objc-act.c:5721
+#, fuzzy, c-format
+msgid "no super class declared in @interface for `%s'"
+msgstr "`%s' ¤Ø¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤Ë´ðÄ쥯¥é¥¹¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+
+#: objc/objc-act.c:5809
#, c-format
msgid "invalid receiver type `%s'"
msgstr "¥ì¥·¡¼¥Ð·¿ `%s' ¤¬Ìµ¸ú¤Ç¤¹"
-#: objc/objc-act.c:4977 objc/objc-act.c:5003 objc/objc-act.c:5051
-#, c-format
-msgid "`%s' does not respond to `%s'"
+#: objc/objc-act.c:5820
+#, fuzzy, c-format
+msgid "`%s' may not respond to `%c%s'"
msgstr "`%s' ¤Ï `%s' ¤Ë±þÅú¤·¤Þ¤»¤ó"
-#: objc/objc-act.c:4983 objc/objc-act.c:7318
-#, c-format
-msgid "no super class declared in interface for `%s'"
-msgstr "`%s' ¤Ø¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤Ë´ðÄ쥯¥é¥¹¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-
-#: objc/objc-act.c:5081
-#, fuzzy
-msgid "cannot find class (factory) method"
-msgstr "¥¯¥é¥¹ (factory) ¥á¥½¥Ã¥É¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-
-#: objc/objc-act.c:5082 objc/objc-act.c:5126
-#, c-format
-msgid "return type for `%s' defaults to id"
-msgstr "`%s' ¤ÎÌá¤êÃͤη¿¤Ï¥Ç¥Õ¥©¥ë¥È¤Î id ¤È¤·¤Þ¤¹"
-
-#: objc/objc-act.c:5099
+#: objc/objc-act.c:5825
#, fuzzy, c-format
-msgid "method `%s' not implemented by protocol"
+msgid "`%c%s' not implemented by protocol(s)"
msgstr "¥á¥½¥Ã¥É `%s' ¤Ï¥×¥í¥È¥³¥ë¤Ë¤è¤Ã¤Æ¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: objc/objc-act.c:5108
-msgid "return type defaults to id"
-msgstr "Ìá¤êÃͤη¿¤ò¥Ç¥Õ¥©¥ë¥È¤Î id ¤È¤·¤Þ¤¹"
+#: objc/objc-act.c:5830
+msgid "(Messages without a matching method signature"
+msgstr ""
-#: objc/objc-act.c:5125
+#: objc/objc-act.c:5831
+msgid "will be assumed to return `id' and accept"
+msgstr ""
+
+#: objc/objc-act.c:5832
#, fuzzy
-msgid "cannot find method"
-msgstr "¥á¥½¥Ã¥É¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¡£"
+msgid "`...' as arguments.)"
+msgstr "°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
-#: objc/objc-act.c:5399
+#: objc/objc-act.c:6079
#, c-format
msgid "undeclared selector `%s'"
msgstr ""
@@ -21418,324 +20232,2178 @@ msgstr ""
#. to an instance variable. It's better to catch the cases
#. where this is done unknowingly than to support the above
#. paradigm.
-#: objc/objc-act.c:5443
+#: objc/objc-act.c:6121
#, c-format
msgid "instance variable `%s' accessed in class method"
msgstr "¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô `%s' ¤¬¥¯¥é¥¹¥á¥½¥Ã¥É¤«¤é¥¢¥¯¥»¥¹¤µ¤ì¤Þ¤·¤¿"
-#: objc/objc-act.c:5678
+#: objc/objc-act.c:6327
#, fuzzy, c-format
-msgid "duplicate definition of class method `%s'"
-msgstr "¥¯¥é¥¹¥á¥½¥Ã¥É `%s' ¤ÎÄêµÁ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£"
+msgid "duplicate declaration of method `%c%s'"
+msgstr "¥¯¥é¥¹¥á¥½¥Ã¥É `%s' ¤ÎÀë¸À¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£"
+
+#: objc/objc-act.c:6368
+#, c-format
+msgid "duplicate interface declaration for category `%s(%s)'"
+msgstr "¥«¥Æ¥´¥ê `%s(%s)' ¤Ø¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹Àë¸À¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-#: objc/objc-act.c:5684
+#: objc/objc-act.c:6398
#, fuzzy, c-format
-msgid "duplicate declaration of class method `%s'"
-msgstr "¥¯¥é¥¹¥á¥½¥Ã¥É `%s' ¤ÎÀë¸À¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£"
+msgid "illegal reference type specified for instance variable `%s'"
+msgstr "Èó static ¥í¡¼¥«¥ëÊÑ¿ô `%s' ¤Ø¤Î asm »ØÄê»Ò¤Ï̵»ë¤µ¤ì¤Þ¤¹"
-#: objc/objc-act.c:5720
+#: objc/objc-act.c:6414
#, fuzzy, c-format
-msgid "duplicate definition of instance method `%s'"
-msgstr "¥¤¥ó¥¹¥¿¥ó¥¹¥á¥½¥Ã¥É `%s' ¤ÎÄêµÁ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£"
+msgid "instance variable `%s' has unknown size"
+msgstr "¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô `%s' ¤Ï %s ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
+
+#. vtable pointers are Real Bad(tm), since Obj-C cannot initialize them
+#: objc/objc-act.c:6428
+#, fuzzy, c-format
+msgid "type `%s' has virtual member functions"
+msgstr "`this' ¤ÏÀÅŪ¥á¥ó¥Ð´Ø¿ô¤«¤é»ÈÍѤǤ­¤Þ¤»¤ó"
-#: objc/objc-act.c:5726
+#: objc/objc-act.c:6429
#, fuzzy, c-format
-msgid "duplicate declaration of instance method `%s'"
-msgstr "¥¤¥ó¥¹¥¿¥ó¥¹¥á¥½¥Ã¥É `%s' ¤ÎÀë¸À¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£"
+msgid "illegal aggregate type `%s' specified for instance variable `%s'"
+msgstr "Èó static ¥í¡¼¥«¥ëÊÑ¿ô `%s' ¤Ø¤Î asm »ØÄê»Ò¤Ï̵»ë¤µ¤ì¤Þ¤¹"
-#: objc/objc-act.c:5766
+#: objc/objc-act.c:6437
#, c-format
-msgid "duplicate interface declaration for category `%s(%s)'"
-msgstr "¥«¥Æ¥´¥ê `%s(%s)' ¤Ø¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹Àë¸À¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
+msgid "type `%s' has a user-defined constructor"
+msgstr ""
-#: objc/objc-act.c:5852
+#: objc/objc-act.c:6439
+#, c-format
+msgid "type `%s' has a user-defined destructor"
+msgstr ""
+
+#: objc/objc-act.c:6440
+msgid "C++ constructors and destructors will not be invoked for Objective-C fields"
+msgstr ""
+
+#: objc/objc-act.c:6490
#, c-format
msgid "instance variable `%s' is declared private"
msgstr "¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô `%s' ¤Ï private ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: objc/objc-act.c:5899
+#: objc/objc-act.c:6539
+#, fuzzy, c-format
+msgid "instance variable `%s' is %s; this will be a hard error in the future"
+msgstr "¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô `%s' ¤Ï private ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
+
+#: objc/objc-act.c:6546
#, c-format
msgid "instance variable `%s' is declared %s"
msgstr "¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô `%s' ¤Ï %s ¤ÈÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
-#: objc/objc-act.c:5909
+#: objc/objc-act.c:6556
msgid "static access to object of type `id'"
msgstr "`id' ·¿¤Î¥ª¥Ö¥¸¥§¥¯¥È¤ËÂΤ¹¤ëÀÅŪ¥¢¥¯¥»¥¹¤Ç¤¹"
-#: objc/objc-act.c:5934 objc/objc-act.c:6027
+#: objc/objc-act.c:6578 objc/objc-act.c:6666
#, c-format
msgid "incomplete implementation of class `%s'"
msgstr "¥¯¥é¥¹ `%s' ¤Î¼ÂÁõ¤¬ÉÔ´°Á´¤Ç¤¹"
-#: objc/objc-act.c:5938 objc/objc-act.c:6032
+#: objc/objc-act.c:6582 objc/objc-act.c:6671
#, c-format
msgid "incomplete implementation of category `%s'"
msgstr "¥«¥Æ¥´¥ê `%s' ¤Î¼ÂÁõ¤¬ÉÔ´°Á´¤Ç¤¹"
-#: objc/objc-act.c:5943 objc/objc-act.c:6037
+#: objc/objc-act.c:6587 objc/objc-act.c:6676
#, c-format
msgid "method definition for `%c%s' not found"
msgstr "`%c%s' ¤Î¥á¥½¥Ã¥ÉÄêµÁ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
-#: objc/objc-act.c:6081
+#: objc/objc-act.c:6717
#, c-format
msgid "%s `%s' does not fully implement the `%s' protocol"
msgstr "%s `%s' ¤Ï `%s' ¥×¥í¥È¥³¥ë¤ò´°Á´¤Ë¤Ï¼ÂÁõ¤·¤Æ¤¤¤Þ¤»¤ó"
-#: objc/objc-act.c:6139 objc/objc-act.c:8249
+#: objc/objc-act.c:6775 objc/objc-act.c:8803
#, fuzzy
msgid "`@end' missing in implementation context"
msgstr "`@end' ¤Ï¼ÂÁõ¥³¥ó¥Æ¥¯¥¹¥È¤Ë¸½¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: objc/objc-act.c:6167
+#: objc/objc-act.c:6805
#, c-format
msgid "reimplementation of class `%s'"
msgstr "¥¯¥é¥¹ `%s' ¤ÎºÆ¼ÂÁõ¤Ç¤¹"
-#: objc/objc-act.c:6209
+#: objc/objc-act.c:6836
#, c-format
msgid "conflicting super class name `%s'"
msgstr "´ðÄ쥯¥é¥¹Ì¾ `%s' ¤¬¾×Æͤ·¤Æ¤¤¤Þ¤¹"
-#: objc/objc-act.c:6224
+#: objc/objc-act.c:6838
+#, c-format
+msgid "previous declaration of `%s'"
+msgstr "Á°Êý¤Ç¤Î `%s' ¤ÎÀë¸À"
+
+#: objc/objc-act.c:6852 objc/objc-act.c:6854
#, c-format
msgid "duplicate interface declaration for class `%s'"
msgstr "¥¯¥é¥¹ `%s' ¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹Àë¸À¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-#: objc/objc-act.c:6506
+#: objc/objc-act.c:7121
#, c-format
msgid "duplicate declaration for protocol `%s'"
msgstr "¥×¥í¥È¥³¥ë '%s' ¤ÎÀë¸À¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹"
-#: objc/objc-act.c:7363
-msgid "[super ...] must appear in a method context"
-msgstr "[super ...] ¤Ï¥á¥½¥Ã¥É¥³¥ó¥Æ¥­¥¹¥È¤Ë¸½¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
+#. Add a readable method name to the warning.
+#: objc/objc-act.c:7613
+#, fuzzy
+msgid "%J%s `%c%s'"
+msgstr "%s Æâ¤Î `%s':"
-#: objc/objc-act.c:8354 objc/objc-act.c:8370
+#: objc/objc-act.c:7908
#, c-format
-msgid "potential selector conflict for method `%s'"
-msgstr "²ÄǽÀ­¤Î¤¢¤ë¥»¥ì¥¯¥¿¤¬¥á¥½¥Ã¥É `%s' ¤È¶¥¹ç¤·¤Þ¤¹"
+msgid "no super class declared in interface for `%s'"
+msgstr "`%s' ¤Ø¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤Ë´ðÄ쥯¥é¥¹¤¬Àë¸À¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: objc-parse.y:2655
+#: objc/objc-act.c:7956
+msgid "[super ...] must appear in a method context"
+msgstr "[super ...] ¤Ï¥á¥½¥Ã¥É¥³¥ó¥Æ¥­¥¹¥È¤Ë¸½¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
+
+#: objc/objc-parse.y:2700
msgid "`@end' must appear in an implementation context"
msgstr "`@end' ¤Ï¼ÂÁõ¥³¥ó¥Æ¥¯¥¹¥È¤Ë¸½¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
-#: objc-parse.y:2931
+#: objc/objc-parse.y:2913
msgid "method definition not in class context"
msgstr "¥á¥½¥Ã¥ÉÄêµÁ¤¬¥¯¥é¥¹¥³¥ó¥Æ¥­¥¹¥ÈÆâ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#: objc/lang-options.h:27
-msgid "Dump decls to a .decl file"
-msgstr "Àë¸À¤ò .decl ¥Õ¥¡¥¤¥ë¤Ë¥À¥ó¥×¤¹¤ë"
+#: options.c:24
+#, fuzzy
+msgid "Display this information"
+msgstr " --help ¤³¤Î¾ðÊó¤òɽ¼¨¤¹¤ë\n"
+
+#: options.c:30
+msgid "--param <param>=<value>\tSet paramter <param> to value. See below for a complete list of parameters"
+msgstr ""
+
+#: options.c:39
+msgid "-A<question>=<answer>\tAssert the <answer> to <question>. Putting '-' before <question> disables the <answer> to <question>"
+msgstr ""
+
+#: options.c:42
+#, fuzzy
+msgid "Do not discard comments"
+msgstr "½ªÃ¼¤µ¤ì¤Æ¤¤¤Ê¤¤¥³¥á¥ó¥È"
+
+#: options.c:45
+#, fuzzy
+msgid "Do not discard comments in macro expansions"
+msgstr "¥Ó¥Ã¥È±é»»¤Ç¤Î¨ÃÍ¥µ¥¤¥º¤òÄ´Ä䤷¤Ê¤¤"
+
+#: options.c:48
+msgid "-D<macro>[=<val>]\tDefine a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1"
+msgstr ""
+
+#: options.c:54
+#, fuzzy
+msgid "-G<number>\tPut global and static data smaller than <number> bytes into a special section (on some targets)"
+msgstr ""
+" -G <number> <number> ¥Ð¥¤¥È¤è¤ê¾®¤µ¤ÊÂç°è¤ª¤è¤ÓÀÅŪ¥Ç¡¼¥¿¤ò\n"
+" ÆÃÊ̤ʥ»¥¯¥·¥ç¥ó¤ËÃÖ¤¯ (¥¿¡¼¥²¥Ã¥È¼¡Âè)\n"
+
+#: options.c:57
+#, fuzzy
+msgid "Print the name of header files as they are used"
+msgstr "¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥×¥í¥°¥é¥àñ°Ì¤Î̾Á°¤òɽ¼¨¤¹¤ë"
+
+#: options.c:66
+#, fuzzy
+msgid "Generate make dependencies and compile"
+msgstr "¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó¤Î¥³¡¼¥É¤òÀ¸À®"
+
+#: options.c:75
+msgid "Treat missing header files as generated files"
+msgstr ""
+
+#: options.c:81
+msgid "Like -MD but ignore system header files"
+msgstr ""
+
+#: options.c:90
+msgid "-MQ <target>\tAdd a MAKE-quoted target"
+msgstr ""
+
+#: options.c:96
+#, fuzzy
+msgid "-O<number>\tSet optimization level to <number>"
+msgstr " -O[number] ºÇŬ²½¥ì¥Ù¥ë¤ò [number] ¤ËÀßÄꤹ¤ë\n"
-#: objc/lang-options.h:29
+#: options.c:99
+#, fuzzy
+msgid "Optimize for space rather than speed"
+msgstr " -Os ®ÅÙ¤è¤ê¤â¥µ¥¤¥º¤ÎºÇŬ²½¤ò¹Ô¤Ê¤¦\n"
+
+#: options.c:102
+#, fuzzy
+msgid "Do not generate #line directives"
+msgstr ".size µ¿»÷Ì¿Îá¤òÀ¸À®¤·¤Ê¤¤"
+
+#: options.c:105
+msgid "-U<macro>\tUndefine <macro>"
+msgstr ""
+
+#: options.c:108
+msgid "This switch is deprecated; use -Wextra instead"
+msgstr ""
+
+#: options.c:114
+msgid "Warn about returning structures, unions or arrays"
+msgstr "¹½Â¤ÂΡ¢¶¦ÍÑÂÎËô¤ÏÇÛÎó¤òÊÖ¤¹¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:120
+msgid "Warn about casting functions to incompatible types"
+msgstr "·¿¤Ë¸ß´¹À­¤Î¤Ê¤¤´Ø¿ô¤Î¥­¥ã¥¹¥È¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:123
+msgid "Warn about pointer casts which increase alignment"
+msgstr "¥Ý¥¤¥ó¥¿¤Î¥­¥ã¥¹¥È¤Ç¥¢¥é¥¤¥ó¥á¥ó¥È¤¬Áý²Ã¤¹¤ë¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:126
+msgid "Warn about casts which discard qualifiers"
+msgstr "½¤¾þ»Ò¤ò¼è¤êµî¤ë¥­¥ã¥¹¥È¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:129
+#, fuzzy
+msgid "Warn about subscripts whose type is \"char\""
+msgstr "ź»ú¤Î·¿¤¬ 'char' ¤Ç¤¢¤ì¤Ð·Ù¹ð¤¹¤ë"
+
+#: options.c:138
+msgid "Warn about possibly confusing type conversions"
+msgstr "·¿ÊÑ´¹¤¬º®Í𤹤ë²ÄǽÀ­¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:141
+#, fuzzy
+msgid "Warn when all constructors and destructors are private"
+msgstr "Á´¤Æ¤Î¥³¥ó¥¹¥È¥é¥¯¥¿/¥Ç¥¹¥È¥é¥¯¥¿¤¬ private ¤Ç¤â·Ù¹ð¤·¤Ê¤¤"
+
+#: options.c:144
+#, fuzzy
+msgid "Warn when a declaration is found after a statement"
+msgstr "Àë¸À¤¬·¿¤ò»ØÄꤷ¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:147
+#, fuzzy
+msgid "Warn if deprecated class, method, or field is used"
+msgstr "¿ä¾©¤µ¤ì¤Ê¤¤¶õʸ¤¬¸«¤Ä¤«¤ì¤Ð·Ù¹ð¤¹¤ë"
+
+#: options.c:150
+msgid "Warn about uses of __attribute__((deprecated)) declarations"
+msgstr ""
+
+#: options.c:153
+msgid "Warn when an optimization pass is disabled"
+msgstr "ºÇŬ²½²áÄø¤¬Ìµ¸ú²½¤µ¤ì¤¿¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:156
+#, fuzzy
+msgid "Warn about compile-time integer division by zero"
+msgstr "À°¿ô¤Î¥¼¥í½ü»»¤ò¥È¥é¥Ã¥×¤¹¤ë"
+
+#: options.c:159
+msgid "Warn about violations of Effective C++ style rules"
+msgstr "Effective C++ ¼°¤Î»Ø¿Ë¤«¤é¤Ï¤º¤ì¤ë¤â¤Î¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:162
+msgid "Warn about stray tokens after #elif and #endif"
+msgstr ""
+
+#: options.c:165
+msgid "Treat all warnings as errors"
+msgstr "Á´¤Æ¤Î·Ù¹ð¤ò¥¨¥é¡¼¤È¤·¤Æ¼è¤ê°·¤¦"
+
+#: options.c:168
+#, fuzzy
+msgid "Make implicit function declarations an error"
+msgstr "°ÅÌۤδؿôÀë¸À¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:171
+msgid "Print extra (possibly unwanted) warnings"
+msgstr ""
+
+#: options.c:174
+msgid "Warn if deprecated empty statements are found"
+msgstr "¿ä¾©¤µ¤ì¤Ê¤¤¶õʸ¤¬¸«¤Ä¤«¤ì¤Ð·Ù¹ð¤¹¤ë"
+
+#: options.c:177
+#, fuzzy
+msgid "Warn if testing floating point numbers for equality"
+msgstr "ÉâÆ°¾®¿ôÅÀ¿ô¤ÎÅù²Á¥Æ¥¹¥È¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:180
+#, fuzzy
+msgid "Warn about printf/scanf/strftime/strfmon format string anomalies"
+msgstr "printf/scanf/strftime/strfmon ·Á¼°¤ÎÊѧŪ¤Ê¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:183
+#, fuzzy
+msgid "Warn if passing too many arguments to a function for its format string"
+msgstr "`va_start' ¤ËÂФ¹¤ë°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹"
+
+#: options.c:186
+#, fuzzy
+msgid "Warn about format strings that are not literals"
+msgstr "Ê£¿ôʸ»ú¥ê¥Æ¥é¥ë¤Î»ÈÍѤ˴ؤ·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:189
+msgid "Warn about possible security problems with format functions"
+msgstr "¥»¥­¥å¥ê¥Æ¥£Åª¤ÊÌäÂê¤È¤Ê¤ê¤¦¤ë format ´Ø¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:192
+#, fuzzy
+msgid "Warn about strftime formats yielding 2-digit years"
+msgstr "strftime ·Á¼°¤¬Æó·å¤Çǯ¤òɽ¤·¤Æ¤¤¤ë»þ¤Î·Ù¹ð¤·¤Ê¤¤"
+
+#: options.c:201
+#, fuzzy
+msgid "Enable warnings about inter-procedural problems"
+msgstr "inter-procedural ÌäÂê¤Ë¤Ä¤¤¤Æ¤Î·Ù¹ðɽ¼¨¤òɽ¼¨¤·¤Ê¤¤"
+
+#: options.c:207
+msgid "Warn about implicit function declarations"
+msgstr "°ÅÌۤδؿôÀë¸À¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:210
+msgid "Warn when a declaration does not specify a type"
+msgstr "Àë¸À¤¬·¿¤ò»ØÄꤷ¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:216
+msgid "Warn about variables which are initialized to themselves."
+msgstr ""
+
+#: options.c:219
+msgid "Warn when an inlined function cannot be inlined"
+msgstr "¥¤¥ó¥é¥¤¥ó´Ø¿ô¤ò¥¤¥ó¥é¥¤¥ó²½¤Ç¤­¤Ê¤¤¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:222
+#, fuzzy
+msgid "Warn about invalid uses of the \"offsetof\" macro"
+msgstr "#import ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤ÎÍøÍѤ˴ؤ·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:225
+msgid "Warn about PCH files that are found but not used"
+msgstr ""
+
+#: options.c:228
+#, fuzzy
+msgid "-Wlarger-than-<number>\tWarn if an object is larger than <number> bytes"
+msgstr " -Wlarger-than-<number> ¥ª¥Ö¥¸¥§¥¯¥È¤¬ <number> ¥Ð¥¤¥È¤è¤êÂ礭¤±¤ì¤Ð·Ù¹ð¤¹¤ë\n"
+
+#: options.c:231
+#, fuzzy
+msgid "Do not warn about using \"long long\" when -pedantic"
+msgstr "-pedantic »ØÄê»þ¤Ç¤â 'long long' ¤Î»ÈÍѤˤĤ¤¤Æ¤Ï·Ù¹ð¤·¤Ê¤¤"
+
+#: options.c:234
+#, fuzzy
+msgid "Warn about suspicious declarations of \"main\""
+msgstr "µ¿¤ï¤·¤¤ main ¤ÎÀë¸À¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:237
+#, fuzzy
+msgid "Warn about possibly missing braces around initializers"
+msgstr "½é´ü²½»Ò¤Î¼þ¤ê¤Ë¥Ö¥ì¡¼¥¹¤ò·ç¤¤¤Æ¤¤¤ëÍͤǤ¢¤ì¤Ð·Ù¹ð¤¹¤ë"
+
+#: options.c:240
+#, fuzzy
+msgid "Warn about global functions without previous declarations"
+msgstr "»öÁ°¤ÎÀë¸À¤Ê¤·¤ÎÂç°è´Ø¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:243
+msgid "Warn about functions which might be candidates for format attributes"
+msgstr "format °À­¤ò¤Î¸õÊä¤È¤Ê¤ê¤½¤¦¤Ê´Ø¿ô¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:246
+#, fuzzy
+msgid "Warn about functions which might be candidates for __attribute__((noreturn))"
+msgstr "noreturn °À­¤Î¸õÊä¤È¤Ê¤ê¤½¤¦¤Ê´Ø¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:249
+#, fuzzy
+msgid "Warn about global functions without prototypes"
+msgstr "¥×¥í¥È¥¿¥¤¥×¤Ê¤·¤ÎÂç°è´Ø¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:252
+#, fuzzy
+msgid "Warn about use of multi-character character constants"
+msgstr "Ê£¿ôʸ»ú¥ê¥Æ¥é¥ë¤Î»ÈÍѤ˴ؤ·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:255
+#, fuzzy
+msgid "Warn about \"extern\" declarations not at file scope"
+msgstr "¥Õ¥¡¥¤¥ë¥¹¥³¡¼¥×¥ì¥Ù¥ë¤Ç¤Ê¤¤ extern ¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:258
+#, fuzzy
+msgid "Warn when non-templatized friend functions are declared within a template"
+msgstr "template Æâ¤ÇÈó template ¤Î friend ´Ø¿ô¤¬Àë¸À¤µ¤ì¤¿¾ì¹ç¤Ç¤â·Ù¹ð¤·¤Ê¤¤"
+
+#: options.c:261
+#, fuzzy
+msgid "Warn about non-virtual destructors"
+msgstr "Èó²¾Áۥǥ¹¥È¥é¥¯¥¿¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:267
+#, fuzzy
+msgid "Warn if a C-style cast is used in a program"
+msgstr "C ¼°¤Î¥­¥ã¥¹¥È¤¬¥×¥í¥°¥é¥à¤Ç»È¤ï¤ì¤¿¤é·Ù¹ð¤¹¤ë"
+
+#: options.c:270
+#, fuzzy
+msgid "Warn if an old-style parameter definition is used"
+msgstr "´Ø¿ô¤Î²¾°ú¿ô¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:273
+msgid "Warn if .class files are out of date"
+msgstr ".class ¥Õ¥¡¥¤¥ë¤¬¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤è¤ê¸Å¤±¤ì¤Ð·Ù¹ð¤¹¤ë"
+
+#: options.c:276
+msgid "Warn about overloaded virtual function names"
+msgstr "¥ª¡¼¥Ð¡¼¥í¡¼¥É¤µ¤ì¤¿²¾ÁÛ´Ø¿ô̾¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:279
+msgid "Warn when the packed attribute has no effect on struct layout"
+msgstr "packed °À­¤¬¹½Â¤ÂÎÇÛÃ֤˱ƶÁ¤·¤Ê¤¤¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:282
+#, fuzzy
+msgid "Warn when padding is required to align structure members"
+msgstr "¹½Â¤ÂÎ¥á¥ó¥Ð¤Î¥¢¥é¥¤¥ó¤Ç¡¢¥Ñ¥Ç¥£¥ó¥°¤òÍפ¹¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:285
+#, fuzzy
+msgid "Warn about possibly missing parentheses"
+msgstr "³ç¸Ì¤ò·ç¤¤¤Æ¤¤¤ë²ÄǽÀ­¤¬¤¢¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:288
+#, fuzzy
+msgid "Warn when converting the type of pointers to member functions"
+msgstr "¥Ý¥¤¥ó¥¿¤«¤é¥á¥ó¥Ð´Ø¿ô¤Ø¤Î·¿ÊÑ´¹¤Î¾ì¹ç¤Ç¤â·Ù¹ð¤·¤Ê¤¤"
+
+#: options.c:291
+msgid "Warn about function pointer arithmetic"
+msgstr "´Ø¿ô¥Ý¥¤¥ó¥¿¤Î·×»»¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:294
+#, fuzzy
+msgid "Warn if inherited methods are unimplemented"
+msgstr "ÇÉÀ¸¥á¥½¥Ã¥É¤¬Ì¤¼ÂÁõ¤Î¾ì¹ç¤Ç¤â·Ù¹ð¤·¤Ê¤¤"
+
+#: options.c:297
+msgid "Warn about multiple declarations of the same object"
+msgstr "Ʊ°ì¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀë¸À¤¬Ê£¿ô¤¢¤ì¤Ð·Ù¹ð¤¹¤ë"
+
+#: options.c:300
+msgid "Warn if modifiers are specified when not necessary"
+msgstr "»ØÄꤵ¤ì¤¿½¤¾þ»Ò¤¬ÉÔÍפʤâ¤Î¤Ç¤¢¤ì¤Ð·Ù¹ð¤¹¤ë"
+
+#: options.c:303
+msgid "Warn when the compiler reorders code"
+msgstr "¥³¥ó¥Ñ¥¤¥é¤¬¥³¡¼¥É¤òʤÙÂؤ¨¤ë¤È¤­¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:306
+msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)"
+msgstr ""
+
+#: options.c:309
+msgid "Warn if a selector has multiple methods"
+msgstr "¥»¥ì¥¯¥¿¤¬Ê£¿ô¤Î¥á¥½¥Ã¥É¤ò»ý¤Ã¤Æ¤¤¤ì¤Ð·Ù¹ð¤¹¤ë"
+
+#: options.c:312
+msgid "Warn about possible violations of sequence point rules"
+msgstr "ÉûºîÍÑ´°Î»ÅÀµ¬Â§¤òÇˤë²ÄǽÀ­¤¬¤¢¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:315
+msgid "Warn when one local variable shadows another"
+msgstr "¤¢¤ë¥í¡¼¥«¥ëÊÑ¿ô¤¬Â¾¤Î¤â¤Î¤òʤ¤¤±£¤¹¤È¤­¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:318
+#, fuzzy
+msgid "Warn about signed-unsigned comparisons"
+msgstr "Éä¹çÉÕ¤­/Éä¹ç̵¤·¤ÎÈæ³Ó¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:321
+msgid "Warn when overload promotes from unsigned to signed"
+msgstr "¥ª¡¼¥Ð¡¼¥í¡¼¥É¤¬Éä¹ç̵¤·¤«¤éÉä¹çÉÕ¤­¤Ë³Ê¾å¤²¤È¤Ê¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:324
+#, fuzzy
+msgid "Warn about code which might break strict aliasing rules"
+msgstr "format °À­¤ò¤Î¸õÊä¤È¤Ê¤ê¤½¤¦¤Ê´Ø¿ô¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:327
+#, fuzzy
+msgid "Warn about unprototyped function declarations"
+msgstr "¥×¥í¥È¥¿¥¤¥×¤µ¤ì¤Æ¤¤¤Ê¤¤´Ø¿ôÀë¸À¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:330
+msgid "Warn about constructs with surprising meanings"
+msgstr "²ò¼á¤Ë¸í²ò¤ò¾·¤¯¤â¤Î¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:333
+#, fuzzy
+msgid "Warn about enumerated switches, with no default, missing a case"
+msgstr "ÎóµóÄê¿ô¤Î switch ¤Ç case »ØÄ꤬·ç¤±¤Æ¤¤¤ë¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:336
+#, fuzzy
+msgid "Warn about enumerated switches missing a \"default:\" statement"
+msgstr "ÎóµóÄê¿ô¤Î switch ¤Ç case »ØÄ꤬·ç¤±¤Æ¤¤¤ë¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:339
+#, fuzzy
+msgid "Warn about all enumerated switches missing a specific case"
+msgstr "ÎóµóÄê¿ô¤Î switch ¤Ç case »ØÄ꤬·ç¤±¤Æ¤¤¤ë¤â¤Î¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:342
+#, fuzzy
+msgid "Warn when synthesis behavior differs from Cfront"
+msgstr "¹çÀ®¤Î¿¶¤ëÉñ¤¤¤¬ Cfront ¤È°Û¤Ê¤ë¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:345
+msgid "Do not suppress warnings from system headers"
+msgstr "¥·¥¹¥Æ¥à¥Ø¥Ã¥À¤«¤é¤Î·Ù¹ð¤òÍÞÀ©¤·¤Ê¤¤"
+
+#: options.c:348
+#, fuzzy
+msgid "Warn about features not present in traditional C"
+msgstr "¸Å¤¤ C ¤Ç¤Ï #elif ¤ò»È¤ï¤Ê¤¤Êý¤¬¤¤¤¤¤Ç¤¹"
+
+#: options.c:357
+#, fuzzy
+msgid "Warn if an undefined macro is used in an #if directive"
+msgstr "̤ÄêµÁËô¤ÏÉÔÀµ¤Ê # ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤Ç¤¹"
+
+#: options.c:360
+#, fuzzy
+msgid "Warn about uninitialized automatic variables"
+msgstr "½é´ü²½¤µ¤ì¤Ê¤¤¼«Æ°ÊÑ¿ô¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:363
+msgid "Warn about unrecognized pragmas"
+msgstr "ǧ¼±¤Ç¤­¤Ê¤¤ pragma ¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:366
+msgid "Warn about code that will never be executed"
+msgstr "¼Â¹Ô¤µ¤ì¤ë¤³¤È¤¬¤Ê¤¤¥³¡¼¥É¤Ë´Ø¤·¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:369
+msgid "Enable all -Wunused- warnings"
+msgstr ""
+
+#: options.c:372
+msgid "Warn when a function is unused"
+msgstr "´Ø¿ô¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:375
+msgid "Warn when a label is unused"
+msgstr "¥é¥Ù¥ë¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:378
+msgid "Warn about macros defined in the main file that are not used"
+msgstr ""
+
+#: options.c:381
+msgid "Warn when a function parameter is unused"
+msgstr "´Ø¿ô¤Î²¾°ú¿ô¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:384
+msgid "Warn when an expression value is unused"
+msgstr "¼°¤ÎÃͤ¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:387
+msgid "Warn when a variable is unused"
+msgstr "ÊÑ¿ô¤¬»È¤ï¤ì¤Ê¤¤¤È¤­¤Ë·Ù¹ð¤¹¤ë"
+
+#: options.c:390
+msgid "Give strings the type \"array of char\""
+msgstr ""
+
+#: options.c:393
+msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead"
+msgstr ""
+
+#: options.c:396
+#, fuzzy
+msgid "-aux-info <file>\tEmit declaration information into <file>"
+msgstr " -aux-info <file> Àë¸À¾ðÊó¤ò <file> ¤Øȯ¹Ô¤¹¤ë\n"
+
+#: options.c:408
+#, fuzzy
+msgid "-d<letters>\tEnable dumps from specific passes of the compiler"
+msgstr " -d[letters] ¥³¥ó¥Ñ¥¤¥é¤Î²áÄø¤«¤é¤Î¥À¥ó¥×¤òÍ­¸ú¤Ë¤¹¤ë\n"
+
+#: options.c:411
+#, fuzzy
+msgid "-dumpbase <file>\tSet the file basename to be used for dumps"
+msgstr " -dumpbase <file> ²áÄø¤«¤é¤Î¥À¥ó¥×¤Ë»È¤ï¤ì¤ë̾Á°¤Î¥Ù¡¼¥¹¤È¤¹¤ë\n"
+
+#: options.c:414
+msgid "--CLASSPATH\tDeprecated; use --classpath instead"
+msgstr ""
+
+#: options.c:429
+#, fuzzy
+msgid "Enforce class member access control semantics"
+msgstr "¥¢¥¯¥»¥¹À©¸æ¤Î°ÕÌ£¤Ë½¾¤ï¤Ê¤¤"
+
+#: options.c:432
+msgid "Align the start of functions"
+msgstr "´Ø¿ô¤Î³«»Ï¤ò¥¢¥é¥¤¥ó¤¹¤ë"
+
+#: options.c:438
+msgid "Align labels which are only reached by jumping"
+msgstr "¥é¥Ù¥ë¤Î¤¦¤Á¥¸¥ã¥ó¥×ÅþãÀè¤È¤Ê¤ë¤â¤Î¤À¤±¤ò¥¢¥é¥¤¥ó¤¹¤ë"
+
+#: options.c:444
+msgid "Align all labels"
+msgstr "Á´¤Æ¤Î¥é¥Ù¥ë¤ò¥¢¥é¥¤¥ó¤¹¤ë"
+
+#: options.c:450
+msgid "Align the start of loops"
+msgstr "¥ë¡¼¥×¤Î³«»Ï¤ò¥¢¥é¥¤¥ó¤¹¤ë"
+
+#: options.c:459
+msgid "Change when template instances are emitted"
+msgstr "¥Æ¥ó¥×¥ì¡¼¥È¥¤¥ó¥¹¥¿¥ó¥¹¤¬Á÷½Ð¤µ¤ì¤¿»þ¤ËÊѹ¹¤¹¤ë"
+
+#: options.c:462
+#, fuzzy
+msgid "Specify that arguments may alias each other and globals"
+msgstr "°ú¿ô¤ÈÂç°è¥Ç¡¼¥¿¤ä¾¤Î°ú¿ô¤ÈÊÌ̾¤Ë¤Ê¤ê¤¦¤ë»ö¤ò»ØÄꤹ¤ë"
+
+#: options.c:465
+msgid "Assume arguments may alias globals but not each other"
+msgstr "°ú¿ô¤ÈÂç°è¥Ç¡¼¥¿¤ÏÊÌ̾¤Ë¤Ê¤ê¤¦¤ë¤¬Â¾¤Î°ú¿ô¤È¤ÏÊÌ̾¤Ç¤Ï¤Ê¤¤¤È¤ß¤Ê¤¹"
+
+#: options.c:468
+#, fuzzy
+msgid "Assume arguments alias neither each other nor globals"
+msgstr "°ú¿ô¤¬Âç°è¥Ç¡¼¥¿¤ä¾¤Î°ú¿ô¤ÈÊÌ̾¤Ë¤Ï¤Ê¤é¤Ê¤¤¤È¤ß¤Ê¤¹"
+
+#: options.c:471
+#, fuzzy
+msgid "Recognize the \"asm\" keyword"
+msgstr "'asm' ͽÌó¸ì¤òǧ¼±¤µ¤»¤Ê¤¤"
+
+#: options.c:483
+#, fuzzy
+msgid "Generate unwind tables that are exact at each instruction boundary"
+msgstr "´¬¤­Ìᤷ¤ò¹Ô¤Ê¤¦Îã³°Êä­Íѥơ¼¥Ö¥ë¤òÀ¸À®¤¹¤ë"
+
+#: options.c:486
+#, fuzzy
+msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements"
+msgstr "¥í¡¼¥«¥ëÊÑ¿ô¤È COMMON ¥Ö¥í¥Ã¥¯¤ò SAVE ʸ¤Ç̾Á°ÉÕ¤±¤é¤ì¤¿¤è¤¦¤Ë¼è¤ê°·¤¦"
+
+#: options.c:489
+#, fuzzy
+msgid "Backslashes in character and hollerith constants are special (not C-style)"
+msgstr "ʸ»ú/hollerith Äê¿ô¤Ç¤Î¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤òÆüì¤Ê¤â¤Î¤È¤·¤Ê¤¤ (C ¼°)"
+
+#: options.c:492
+msgid "Delete libU77 intrinsics with bad interfaces"
+msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ëºï½ü¤¹¤ë"
+
+#: options.c:495
+msgid "Disable libU77 intrinsics with bad interfaces"
+msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ë̵¸ú²½¤¹¤ë"
+
+#: options.c:498
+#, fuzzy
+msgid "Enable libU77 intrinsics with bad interfaces"
+msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ë̵¸ú²½¤¹¤ë"
+
+#: options.c:501
+msgid "Hide libU77 intrinsics with bad interfaces"
+msgstr "libU77 intrinsic ¤òÉÔÀµ¤Ê interface ¤È¶¦¤Ë±£¤¹"
+
+#: options.c:504
+#, fuzzy
+msgid "--bootclasspath=<path>\tReplace system path"
+msgstr "¥¯¥é¥¹¥Ñ¥¹¤òÀßÄꤷ¤Æ¥·¥¹¥Æ¥à¥Ñ¥¹¤ò±£¤¹"
+
+#: options.c:507
+#, fuzzy
+msgid "Generate code to check bounds before indexing arrays"
+msgstr "ÇÛÎó¤Îź»ú¤Èź»ú¶­³¦¤ò¸¡ºº¤¹¤ë¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
+
+#: options.c:510
+#, fuzzy
+msgid "Replace add, compare, branch with branch on count register"
+msgstr "²Ã»»¡¢Èæ³Ó¥Ö¥é¥ó¥Á¤ÎÂå¤ï¤ê¤Ë¥«¥¦¥ó¥È¥ì¥¸¥¹¥¿¤Î¥Ö¥é¥ó¥Á¤ò»È¤¦"
+
+#: options.c:513
+msgid "Use profiling information for branch probabilities"
+msgstr "ʬ´ô·ÐÏ©¿ä¬ÍѤΥץí¥Õ¥¡¥¤¥ë¾ðÊó¤òÍøÍѤ¹¤ë"
+
+#: options.c:516
+msgid "Perform branch target load optimization before prologue / epilogue threading"
+msgstr ""
+
+#: options.c:519
+msgid "Perform branch target load optimization after prologue / epilogue threading"
+msgstr ""
+
+#: options.c:522
+#, fuzzy
+msgid "Recognize built-in functions"
+msgstr "¤¤¤¯¤Ä¤«¤ÎÁȤ߹þ¤ß´Ø¿ô¤òǧ¼±¤µ¤»¤Ê¤¤"
+
+#: options.c:528
+#, fuzzy
+msgid "-fcall-saved-<register>\tMark <register> as being preserved across functions"
+msgstr " -fcall-saved-<register> <register> ¤¬´Ø¿ô¤òÄ̤¸¤ÆÊÝ»ý¤µ¤ì¤ë¤È¥Þ¡¼¥¯¤¹¤ë\n"
+
+#: options.c:531
+#, fuzzy
+msgid "-fcall-used-<register>\tMark <register> as being corrupted by function calls"
+msgstr " -fcall-used-<register> ´Ø¿ô¸Æ¤Ó½Ð¤·¤ÇÇ˲õ¤µ¤ì¤ë <register> ¤È¤·¤Æ¥Þ¡¼¥¯¤¹¤ë\n"
+
+#: options.c:534
+#, fuzzy
+msgid "Save registers around function calls"
+msgstr "´Ø¿ô¸Æ¤Ó½Ð¤·¤ÎÁ°¸å¤Ç¥ì¥¸¥¹¥¿¤ÎÊݸ¤òÍ­¸ú¤Ë¤¹¤ë"
+
+#: options.c:537
+msgid "Program written in strict mixed-case"
+msgstr "¥×¥í¥°¥é¥à¤¬¸·Ì©¤Ë¥±¡¼¥¹º®ºß¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
+
+#: options.c:540
+msgid "Compile as if program written in lowercase"
+msgstr "¥×¥í¥°¥é¥à¤¬±Ñ¾®Ê¸»ú¤Ç½ñ¤«¤ì¤¿Íͤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
+
+#: options.c:543
+#, fuzzy
+msgid "Preserve case used in program"
+msgstr "¥×¥í¥°¥é¥à¤Ç»È¤ï¤ì¤¿ÄÖ¤ê(¤Î¥±¡¼¥¹)¤òÁ´¤ÆÊÝ»ý¤¹¤ë"
+
+#: options.c:546
+msgid "Program written in lowercase"
+msgstr "¥×¥í¥°¥é¥à¤¬±Ñ¾®Ê¸»ú¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
+
+#: options.c:549
+msgid "Program written in uppercase"
+msgstr "¥×¥í¥°¥é¥à¤¬±ÑÂçʸ»ú¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
+
+#: options.c:552
+msgid "Compile as if program written in uppercase"
+msgstr "¥×¥í¥°¥é¥à¤¬±ÑÂçʸ»ú¤Ç½ñ¤«¤ì¤¿Íͤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
+
+#: options.c:555
+msgid "Check the return value of new"
+msgstr "new ¤ÎÌá¤êÃͤò¸¡ºº¤¹¤ë"
+
+#: options.c:561
+msgid "--classpath=<path>\tSet class path"
+msgstr ""
+
+#: options.c:564
+#, fuzzy
+msgid "Do not put uninitialized globals in the common section"
+msgstr "Âç°èÊÑ¿ôÅù¤ò½é´ü²½¤µ¤ì¤Ê¤¤¥³¥â¥ó¥»¥¯¥·¥ç¥ó¤ËÃÖ¤«¤Ê¤¤"
+
+#: options.c:570
+msgid "Allow the arguments of the '?' operator to have different types"
+msgstr ""
+
+#: options.c:573
+#, fuzzy
+msgid "Reduce the size of object files"
+msgstr "¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤Î¥µ¥¤¥º¤ò¾®¤µ¤¯¤¹¤ë"
+
+#: options.c:576
+#, fuzzy
+msgid "Make string literals \"const char[]\" not \"char[]\""
+msgstr "ʸ»úÎó¥ê¥Æ¥é¥ë¤ò `const char[]' ¤ÎÂå¤ï¤ê¤Ë `char[]' ¤È¤¹¤ë"
+
+#: options.c:579
+msgid "-fconst-string-class=<name>\tUse class <name> for constant strings"
+msgstr ""
+
+#: options.c:582
+#, fuzzy
+msgid "Perform a register copy-propagation optimization pass"
+msgstr "ºÇŬ²½²áÄø¤Î¥ì¥¸¥¹¥¿¤Ä¤±ÊѤ¨¤ò¹Ô¤Ê¤¦"
+
+#: options.c:585
+#, fuzzy
+msgid "Perform cross-jumping optimization"
+msgstr "¥¸¥ã¥ó¥×ʬ´ôºÇŬ²½¤ò¹Ô¤Ê¤¦"
+
+#: options.c:588
+msgid "When running CSE, follow jumps to their targets"
+msgstr "CSE ¤ÇÆ°ºî¤¹¤ë¤È¤­¡¢¤½¤ì¤é¤Î¥¿¡¼¥²¥Ã¥È¤Ø¤Î¥¸¥ã¥ó¥×¤ËÄɿ魯¤ë"
+
+#: options.c:591
+msgid "When running CSE, follow conditional jumps"
+msgstr "CSE ¤ÇÆ°ºî¤¹¤ë¤È¤­¡¢¾ò·ï¥¸¥ã¥ó¥×¤ËÄɿ魯¤ë"
+
+#: options.c:594
+#, fuzzy
+msgid "Place data items into their own section"
+msgstr "¥Ç¡¼¥¿¹àÌܤò¤½¤ì¤é¼«¿È¤Î¥»¥¯¥·¥ç¥ó¤ËÇÛÃÖ¤¹¤ë"
+
+#: options.c:597
+msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
+msgstr "COMMON ¤ä EQUIVALENCE ÍѤÎÆÃÊ̤ʥǥХå°¾ðÊó¤òȯ¹Ô¤¹¤ë¡Ê̵¸ú²½¤µ¤ì¤Æ¤¤¤ë¡Ë"
+
+#: options.c:600
+#, fuzzy
+msgid "Inline member functions by default"
+msgstr "¥á¥ó¥Ð´Ø¿ô¤ò¥Ç¥Õ¥©¥ë¥È¤Ç¥¤¥ó¥é¥¤¥ó¤È¤·¤Ê¤¤"
+
+#: options.c:603
+msgid "Defer popping functions args from stack until later"
+msgstr "´Ø¿ô°ú¿ô¤ò¥¹¥¿¥Ã¥¯¤«¤é pop ¤¹¤ë¤Î¤ò¸Æ¤Ó½Ð¤·¸å¤Þ¤ÇÃ٤餻¤ë"
+
+#: options.c:606
+msgid "Attempt to fill delay slots of branch instructions"
+msgstr "ʬ´ôÌ¿Îá¤ÎÃٱ䥹¥í¥Ã¥È¤ò»È¤¦¤³¤È¤ò»î¤ß¤ë"
+
+#: options.c:609
+msgid "Delete useless null pointer checks"
+msgstr "̵°ÕÌ£¤Ê null ¥Ý¥¤¥ó¥¿¸¡ºº¤òºï½ü¤¹¤ë"
+
+#: options.c:612
+#, fuzzy
+msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics"
+msgstr ""
+" -fdiagnostics-show-location=[once | every-line] ¿ÇÃÇ¥á¥Ã¥»¡¼¥¸¤Î²þ¹Ô¤ÎºÝ¤Ë,\n"
+" ¥½¡¼¥¹°ÌÃÖ¾ðÊ󤬹Ԥκǽé¤Ëɽ¼¨¤µ¤ì¤ëÉÑÅÙ¤ò»ØÄꤹ¤ë\n"
+
+#: options.c:615
+#, fuzzy
+msgid "Allow '$' in symbol names"
+msgstr "$ ¤ò¥·¥ó¥Ü¥ë̾¤È¤·¤Æ»È¤¨¤ë¤è¤¦¤Ë¤¹¤ë"
+
+#: options.c:618
+#, fuzzy
+msgid "Permit '$' as an identifier character"
+msgstr "¥Õ¥©¡¼¥Þ¥Ã¥È¤¬¥ï¥¤¥Éʸ»úÎó¤Ç¤¹"
+
+#: options.c:624
+msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
+msgstr "¥Ç¥Ð¥Ã¥°¥À¥ó¥×¤ÇÌ¿ÎáÈÖ¹æ¤È¹ÔÈÖ¹æ¥Î¡¼¥È¤Î½ÐÎϤòÍÞÀ©¤¹¤ë"
+
+#: options.c:630
+#, fuzzy
+msgid "Perform DWARF2 duplicate elimination"
+msgstr "ËöÈø¸Æ¤Ó½Ð¤·ºÇŬ²½¤ò¹Ô¤¦"
+
+#: options.c:633 options.c:636
+msgid "Perform unused type elimination in debug info"
+msgstr ""
+
+#: options.c:645
+msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
+msgstr "COMPLEX ·×»»¤Î¥Ð¥°¤ò²óÈò¤ò¥¨¥ß¥å¥ì¡¼¥È¤¹¤ë¥Õ¥í¥ó¥È¥¨¥ó¥É¤ò»ý¤Ä"
+
+#: options.c:648
+msgid "--encoding=<encoding>\tChoose input encoding (defaults from your locale)"
+msgstr ""
+
+#: options.c:651
+#, fuzzy
+msgid "Generate code to check exception specifications"
+msgstr "Îã³°»ÅÍͤθ¡ºº¤ò¤¹¤ë¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
+
+#: options.c:657
+msgid "Enable exception handling"
+msgstr "Îã³°Ê᪤òÍ­¸ú¤Ë¤¹¤ë"
+
+#: options.c:660
+msgid "-fexec-charset=<cset>\tConvert all strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:663
+#, fuzzy
+msgid "Perform a number of minor, expensive optimizations"
+msgstr "ÌÜΩ¤¿¤Ê¤¤¡¢¥³¥¹¥È¤Î¤«¤«¤ëºÇŬ²½¤ò¹Ô¤Ê¤¦"
+
+#: options.c:672
+#, fuzzy
+msgid "f2c-compatible code can be generated"
+msgstr "f2c ¸ß´¹¥³¡¼¥É¤òÀ¸À®¤¹¤ëɬÍפ¬¤Ê¤¤"
+
+#: options.c:675
+msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
+msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë"
+
+#: options.c:678
+msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
+msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë"
+
+#: options.c:681
+#, fuzzy
+msgid "Enable non-FORTRAN-77 intrinsics f2c supports"
+msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë"
+
+#: options.c:684
+msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
+msgstr "f2c ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹"
+
+#: options.c:687
+#, fuzzy
+msgid "Unsupported; generate libf2c-calling code"
+msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Ê¤¤ -- libf2c-calling ¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
+
+#: options.c:690
+msgid "Program is written in typical FORTRAN 66 dialect"
+msgstr "¥×¥í¥°¥é¥à¤¬Åµ·¿Åª¤Ê FORTRAN 66 Êý¸À¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
+
+#: options.c:693
+#, fuzzy
+msgid "Program is written in typical Unix-f77 dialect"
+msgstr "¥×¥í¥°¥é¥à¤¬Åµ·¿Åª¤Ê Unix f77 Êý¸À¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
+
+#: options.c:696
+msgid "Program is written in Fortran-90-ish dialect"
+msgstr "¥×¥í¥°¥é¥à¤¬ Fortran-90 ŪÊý¸À¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
+
+#: options.c:699
+msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
+msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë"
+
+#: options.c:702
+msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
+msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë"
+
+#: options.c:705
+#, fuzzy
+msgid "Enable non-FORTRAN-77 intrinsics F90 supports"
+msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë"
+
+#: options.c:708
+msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
+msgstr "F90 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹"
+
+#: options.c:720
+msgid "Assume no NaNs or infinities are generated"
+msgstr ""
+
+#: options.c:723
+#, fuzzy
+msgid "-ffixed-<register>\tMark <register> as being unavailable to the compiler"
+msgstr " -ffixed-<register> ¥³¥ó¥Ñ¥¤¥é¤ËÂФ· <register> ¤ò»ÈÍÑÉԲĤȥޡ¼¥¯¤¹¤ë\n"
+
+#: options.c:729
+#, fuzzy
+msgid "ffixed-line-length-<number>\tSet the maximum line length to <number>"
+msgstr " -finline-limit=<number> ¥¤¥ó¥é¥¤¥ó´Ø¿ô¤Î¥µ¥¤¥º¤ò <number> ¤ËÀ©¸Â¤¹¤ë\n"
+
+#: options.c:732
+#, fuzzy
+msgid "Unsupported; affects code generation of arrays"
+msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Ê¤¤ -- ÇÛÎó¤Î¥³¡¼¥ÉÀ¸À®¤Ë±Æ¶Á¤¹¤ë"
+
+#: options.c:735
+msgid "Do not store floats in registers"
+msgstr "¥ì¥¸¥¹¥¿¤ËÉâÆ°¾®¿ô¤ò³ÊǼ¤·¤Ê¤¤"
+
+#: options.c:738
+#, fuzzy
+msgid "Scope of for-init-statement variables is local to the loop"
+msgstr "for ½é´ü²½Ê¸¤ÎÊÑ¿ô¤ò¥¹¥³¡¼¥×³°¤Ë³ÈÂ礹¤ë"
+
+#: options.c:741
+#, fuzzy
+msgid "Copy memory address constants into registers before use"
+msgstr "¥á¥â¥ê¥¢¥É¥ì¥¹Äê¿ô¤òÍøÍѤ¹¤ëÁ°¤Ë¥ì¥¸¥¹¥¿¤Ø¥³¥Ô¡¼¤¹¤ë"
+
+#: options.c:744
+msgid "Always check for non gcj generated classes archives"
+msgstr "gcj ¤¬À¸À®¤·¤Æ¤¤¤Ê¤¤¥¯¥é¥¹¥¢¡¼¥«¥¤¥Ö¤ò¾ï¤Ë¸¡ºº¤¹¤ë"
+
+#: options.c:747
+#, fuzzy
+msgid "Copy memory operands into registers before use"
+msgstr "¥á¥â¥ê¥ª¥Ú¥é¥ó¥É¤òÍøÍѤ¹¤ëÁ°¤Ë¥ì¥¸¥¹¥¿¤Ø¥³¥Ô¡¼¤¹¤ë"
+
+#: options.c:750
+msgid "Generate code to check subscript and substring bounds"
+msgstr "ÇÛÎó¤Îź»ú¤Èź»ú¶­³¦¤ò¸¡ºº¤¹¤ë¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
+
+#: options.c:753
+msgid "Program is written in Fortran-90-ish free form"
+msgstr "¥×¥í¥°¥é¥à¤Ï Fortran-90 Ū¥Õ¥ê¡¼¥Õ¥©¡¼¥à¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
+
+#: options.c:756
+#, fuzzy
+msgid "Do not assume that standard C libraries and \"main\" exist"
+msgstr "ɸ½à¥é¥¤¥Ö¥é¥ê¤ä main ¤¬Â¸ºß¤·¤Ê¤¤²ÄǽÀ­¤¬¤¢¤ë¤â¤Î¤È¤¹¤ë"
+
+#: options.c:759
+msgid "Allow function addresses to be held in registers"
+msgstr "´Ø¿ô¥¢¥É¥ì¥¹¤ò¥ì¥¸¥¹¥¿¤Ë»ý¤¿¤»¤ë»ö¤òµö²Ä¤¹¤ë"
+
+#: options.c:762
+#, fuzzy
+msgid "Place each function into its own section"
+msgstr "³Æ¡¹¤Î´Ø¿ô¤ò¤½¤ì¼«¿È¤Î¥»¥¯¥·¥ç¥ó¤ËÇÛÃÖ¤¹¤ë"
+
+#: options.c:765
+#, fuzzy
+msgid "Perform global common subexpression elimination"
+msgstr "¥°¥í¡¼¥Ð¥ë¶¦ÄÌÉôʬ¼°¤ò½üµî¤¹¤ë"
+
+#: options.c:768
+#, fuzzy
+msgid "Perform redundant load after store elimination in global common subexpression elimination"
+msgstr "¥°¥í¡¼¥Ð¥ë¶¦ÄÌÉôʬ¼°¤ò½üµî¤¹¤ë"
+
+#: options.c:771
+#, fuzzy
+msgid "Perform enhanced load motion during global common subexpression elimination"
+msgstr "¥°¥í¡¼¥Ð¥ë¶¦ÄÌÉôʬ¼°¤ò½üµî¤¹¤ë"
+
+#: options.c:774
+#, fuzzy
+msgid "Perform store motion after global common subexpression elimination"
+msgstr "¥°¥í¡¼¥Ð¥ë¶¦ÄÌÉôʬ¼°¤ò½üµî¤¹¤ë"
+
+#: options.c:777
+#, fuzzy
+msgid "Enable fatal diagnostics about inter-procedural problems"
+msgstr "inter-procedural ÌäÂê¤Ë¤Ä¤¤¤Æ¤ÎÃ×̿Ū¤Ê¿ÇÃÇɽ¼¨¤òɽ¼¨¤·¤Ê¤¤"
+
+#: options.c:780
+msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
+msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë"
+
+#: options.c:783
+msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
+msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë"
+
+#: options.c:786
+#, fuzzy
+msgid "Enable non-FORTRAN 77 intrinsics F90 supports"
+msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë"
+
+#: options.c:789
+msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
+msgstr "g77 ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹"
+
+#: options.c:792
+#, fuzzy
+msgid "Recognize GNU-defined keywords"
+msgstr "GNU ÄêµÁ¤ÎͽÌó¸ì¤òǧ¼±¤µ¤»¤Ê¤¤"
+
+#: options.c:795
msgid "Generate code for GNU runtime environment"
msgstr "GNU ¼Â¹Ô´Ä¶­ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: objc/lang-options.h:32
-msgid "Generate code for NeXT runtime environment"
+#: options.c:798
+#, fuzzy
+msgid "Enable guessing of branch probabilities"
+msgstr "ʬ´ô·ÐÏ©¿ä¬¤òÍ­¸ú¤Ë¤¹¤ë"
+
+#: options.c:813
+msgid "Assume normal C execution environment"
+msgstr "Ä̾ï¤Î C ¼Â¹Ô´Ä¶­¤òÁ°Äó¤È¤¹¤ë"
+
+#: options.c:816
+msgid "Enable support for huge objects"
+msgstr "Â礭¤Ê¥ª¥Ö¥¸¥§¥¯¥È¤Î¥µ¥Ý¡¼¥È"
+
+#: options.c:819
+msgid "Process #ident directives"
+msgstr "#ident ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤ò½èÍý¤¹¤ë"
+
+#: options.c:822
+msgid "Perform conversion of conditional jumps to branchless equivalents"
+msgstr ""
+
+#: options.c:825
+#, fuzzy
+msgid "Perform conversion of conditional jumps to conditional execution"
+msgstr "¾ò·ïŪ¤Ê¼Â¹Ô¤Ø¤ÎÊѹ¹¤Î¤¿¤á¤ÎïçÃͤòÊѹ¹¤¹¤ë"
+
+#: options.c:828
+msgid "Export functions even if they can be inlined"
+msgstr "¥¤¥ó¥é¥¤¥ó¤Ë¤Ç¤­¤ë´Ø¿ô¤Ç¤â export ¤¹¤ë"
+
+#: options.c:831
+#, fuzzy
+msgid "Emit implicit instantiations of inline templates"
+msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë"
+
+#: options.c:834
+#, fuzzy
+msgid "Emit implicit instantiations of templates"
+msgstr "¥¤¥ó¥é¥¤¥ó¥Æ¥ó¥×¥ì¡¼¥È¤ÎÌÀ¼¨Åª¤Ê¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë"
+
+#: options.c:837
+msgid "Use offset tables for virtual method calls"
+msgstr ""
+
+#: options.c:840
+msgid "Do not generate .size directives"
+msgstr ".size µ¿»÷Ì¿Îá¤òÀ¸À®¤·¤Ê¤¤"
+
+#: options.c:843
+msgid "Initialize local vars and arrays to zero"
+msgstr "¥í¡¼¥«¥ëÊÑ¿ô¤äÇÛÎó¤ò¥¼¥í¤Ë½é´ü²½¤¹¤ë"
+
+#: options.c:846
+#, fuzzy
+msgid "Pay attention to the \"inline\" keyword"
+msgstr "'inline' ¥­¡¼¥ï¡¼¥É¤ËÃí°Õ¤òʧ¤¦"
+
+#: options.c:855
+#, fuzzy
+msgid "-finline-limit=<number>\tLimit the size of inlined functions to <number>"
+msgstr " -finline-limit=<number> ¥¤¥ó¥é¥¤¥ó´Ø¿ô¤Î¥µ¥¤¥º¤ò <number> ¤ËÀ©¸Â¤¹¤ë\n"
+
+#: options.c:858
+msgid "-finput-charset=<cset> Specify the default character set for source files."
+msgstr ""
+
+#: options.c:861
+#, fuzzy
+msgid "Instrument function entry and exit with profiling calls"
+msgstr "´Ø¿ô¤ÎÆþ¤ê¸ý/½Ð¸ý¤Ç¥×¥í¥Õ¥¡¥¤¥ë¸Æ¤Ó½Ð¤·¤òÀ¸À®¤¹¤ë"
+
+#: options.c:864
+msgid "Intrinsics letters in arbitrary cases"
+msgstr "intrinsic ʸ»ú¤ÏǤ°Õ¤Î¥±¡¼¥¹¤È¤¹¤ë"
+
+#: options.c:867
+msgid "Intrinsics spelled as e.g. SqRt"
+msgstr "intrinsic ¤¬Î㤨¤Ð SqRt ¤ÎÍѤËÄÖ¤é¤ì¤ë"
+
+#: options.c:870
+#, fuzzy
+msgid "Intrinsics in lowercase"
+msgstr "intrinsic ¤ò±ÑÂçʸ»ú¤È¤¹¤ë"
+
+#: options.c:873
+msgid "Intrinsics in uppercase"
+msgstr "intrinsic ¤ò±ÑÂçʸ»ú¤È¤¹¤ë"
+
+#: options.c:876
+msgid "Assume native functions are implemented using JNI"
+msgstr "native ´Ø¿ô¤¬ JNI ¤òÍøÍѤ·¤Æ¼ÂÁõ¤·¤Æ¤¤¤ë¤â¤Î¤È¤ß¤Ê¤¹"
+
+#: options.c:879
+#, fuzzy
+msgid "Generate code for functions even if they are fully inlined"
+msgstr "Á´¤Æ¥¤¥ó¥é¥¤¥ó¤È¤µ¤ì¤¿¤È¤·¤Æ¤â´Ø¿ô¤Î¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
+
+#: options.c:882
+msgid "Emit static const variables even if they are not used"
+msgstr "»ÈÍѤµ¤ì¤Ê¤¤ÀÅŪÄê¿ôÊÑ¿ô¤Ç¤¢¤Ã¤Æ¤â½ÐÎϤ¹¤ë"
+
+#: options.c:888
+#, fuzzy
+msgid "Give external symbols a leading underscore"
+msgstr "³°Éô¥·¥ó¥Ü¥ë¤ËƬʸ»ú¥¢¥ó¥À¡¼¥¹¥³¥¢¤ò»ý¤¿¤»¤ë"
+
+#: options.c:891
+#, fuzzy
+msgid "Perform loop optimizations"
+msgstr "ËöÈø¸Æ¤Ó½Ð¤·ºÇŬ²½¤ò¹Ô¤¦"
+
+#: options.c:894
+msgid "Language keyword letters in arbitrary cases"
+msgstr "¸À¸ìͽÌó¸ìʸ»ú¤ÏǤ°Õ¤Î¥±¡¼¥¹¤È¤¹¤ë"
+
+#: options.c:897
+msgid "Language keywords spelled as e.g. IOStat"
+msgstr "¸À¸ìͽÌó¸ì¤¬Î㤨¤Ð IOStat ¤ÎÍѤËÄÖ¤é¤ì¤ë"
+
+#: options.c:900
+#, fuzzy
+msgid "Language keywords in lowercase"
+msgstr "¸À¸ìͽÌó¸ì¤Ï±ÑÂçʸ»ú¤È¤¹¤ë"
+
+#: options.c:903
+msgid "Language keywords in uppercase"
+msgstr "¸À¸ìͽÌó¸ì¤Ï±ÑÂçʸ»ú¤È¤¹¤ë"
+
+#: options.c:906
+msgid "Set errno after built-in math functions"
+msgstr "ÁȤ߹þ¤ß¿ô³Ø´Ø¿ô¤Î¸å¤Ë errno ¤ò¥»¥Ã¥È¤¹¤ë"
+
+#: options.c:909
+#, fuzzy
+msgid "Report on permanent memory allocation"
+msgstr "¼Â¹Ô½ªÎ»»þ¤Ë±Ê³Ū¤Ë³ÎÊݤµ¤ì¤¿¥á¥â¥ê¤òÊó¹ð¤¹¤ë"
+
+#: options.c:912
+msgid "Attempt to merge identical constants and constant variables"
+msgstr ""
+
+#: options.c:915
+msgid "Attempt to merge identical constants across compilation units"
+msgstr ""
+
+#: options.c:918
+#, fuzzy
+msgid "-fmessage-length=<number>\tLimit diagnostics to <number> characters per line. 0 suppresses line-wrapping"
+msgstr " -fmessage-length=<number> ¿ÇÃÇ¥á¥Ã¥»¡¼¥¸¤ÎŤµ¤ò°ì¹ÔÊÕ¤ê <number> ʸ»ú¤ËÀ©¸Â¤¹¤ë¡£ 0 ¤À¤È²þ¹Ô¤òÍÞÀ©¤¹¤ë\n"
+
+#: options.c:921
+msgid "Delete MIL-STD 1753 intrinsics"
+msgstr "MIL-STD 1753 intrinsic ¤òºï½ü¤¹¤ë"
+
+#: options.c:924
+msgid "Disable MIL-STD 1753 intrinsics"
+msgstr "MIL-STD 1753 intrinsic ¤ò̵¸ú²½¤¹¤ë"
+
+#: options.c:927
+#, fuzzy
+msgid "Enable MIL-STD 1753 intrinsics"
+msgstr "MIL-STD 1753 intrinsic ¤ò̵¸ú²½¤¹¤ë"
+
+#: options.c:930
+msgid "Hide MIL-STD 1753 intrinsics"
+msgstr "MIL-STD 1753 intrinsic ¤ò±£¤¹"
+
+#: options.c:933
+msgid "Force all loop invariant computations out of loops"
+msgstr "¥ë¡¼¥×Ãæ¤ËÉÔÊѤʷ׻»¤ò¥ë¡¼¥×¤Î³°¤Ë°ÜÆ°¤¹¤ë"
+
+#: options.c:936
+#, fuzzy
+msgid "Don't warn about uses of Microsoft extensions"
+msgstr "Microsoft ³ÈÄ¥¤ÎÍøÍѤ˴ؤ·¤Æ pedantic ·Ù¹ð¤ò¹Ô¤ï¤Ê¤¤"
+
+#: options.c:945
+#, fuzzy
+msgid "Use graph-coloring register allocation"
+msgstr "¥ì¥¸¥¹¥¿³ÎÊݤÎÁ°¤ËÌ¿Îá¤òÊ¤Ùľ¤¹"
+
+#: options.c:948
+#, fuzzy
+msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
msgstr "NeXT ¼Â¹Ô´Ä¶­ÍѤΥ³¡¼¥É¤òÀ¸À®¤¹¤ë"
-#: objc/lang-options.h:35
-msgid "Warn if a selector has multiple methods"
-msgstr "¥»¥ì¥¯¥¿¤¬Ê£¿ô¤Î¥á¥½¥Ã¥É¤ò»ý¤Ã¤Æ¤¤¤ì¤Ð·Ù¹ð¤¹¤ë"
+#: options.c:951
+msgid "Assume that receivers of Objective-C messages may be nil"
+msgstr ""
-#: objc/lang-options.h:39
-msgid "Do not warn if inherited methods are unimplemented"
-msgstr "ÇÉÀ¸¥á¥½¥Ã¥É¤¬Ì¤¼ÂÁõ¤Î¾ì¹ç¤Ç¤â·Ù¹ð¤·¤Ê¤¤"
+#: options.c:954
+msgid "Support synchronous non-call exceptions"
+msgstr "Ʊ´üÈó¸Æ¤Ó½Ð¤·Îã³°¤ò¥µ¥Ý¡¼¥È¤¹¤ë"
+
+#: options.c:963
+msgid "Enable Objective-C exception and synchronization syntax"
+msgstr ""
+
+#: options.c:966 options.c:1290
+msgid "Perform loop unrolling for all loops"
+msgstr "Á´¤Æ¤Î¥ë¡¼¥×¤Ç¥ë¡¼¥×Ÿ³«¤ò¹Ô¤Ê¤¦"
+
+#: options.c:969 options.c:1293
+msgid "Perform loop unrolling when iteration count is known"
+msgstr "È¿Éü²ó¿ô¤¬´ûÃΤΤȤ­¡¢¥ë¡¼¥×Ÿ³«¤ò¹Ô¤Ê¤¦"
+
+#: options.c:972
+msgid "When possible do not generate stack frames"
+msgstr "²Äǽ¤Ê¾ì¹ç¡¢¥¹¥¿¥Ã¥¯¥Õ¥ì¡¼¥à¤òÀ¸À®¤·¤Ê¤¤"
+
+#: options.c:975
+msgid "Take at least one trip through each iterative DO loop"
+msgstr "ºÇÄã¤Ç¤â°ì²ó¤Ï³ÆÈ¿Éü DO ¥ë¡¼¥×¤¬½èÍý¤µ¤ì¤ë¤È¤¹¤ë"
+
+#: options.c:978
+msgid "Recognize C++ kewords like \"compl\" and \"xor\""
+msgstr ""
+
+#: options.c:981
+#, fuzzy
+msgid "Do the full register move optimization pass"
+msgstr "ºÇŬ²½²áÄø¤ÇºÇÂç¸Â¤Î regmove ¤ò¹Ô¤Ê¤¦"
+
+#: options.c:984
+msgid "Optimize sibling and tail recursive calls"
+msgstr "sibling ¸Æ¤Ó½Ð¤·¤äËöÈøºÆµ¢¸Æ¤Ó½Ð¤·¤òºÇŬ²½¤¹¤ë"
+
+#: options.c:987
+#, fuzzy
+msgid "Enable optimization of static class initialization code"
+msgstr "(¥¯¥é¥¹³°¤Ç¤Î½é´ü²½¤òɬÍפȤ·¤Þ¤¹)"
+
+#: options.c:990
+#, fuzzy
+msgid "Enable optional diagnostics"
+msgstr "¥ª¥×¥·¥ç¥ó¤Î¿ÇÃÇ¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Ê¤¤"
+
+#: options.c:996
+msgid "Pack structure members together without holes"
+msgstr "¹½Â¤ÂÎ¥á¥ó¥Ð¤ò·ê¤¬³«¤«¤Ê¤¤¤è¤¦¤Ë¥Ñ¥Ã¥¯¤¹¤ë"
+
+#: options.c:999
+#, fuzzy
+msgid "Return small aggregates in memory, not registers"
+msgstr "'¾®¤µ¤Ê' ½¸¹çÂΤò¥ì¥¸¥¹¥¿¤Ç¤Ï¤Ê¤¯¥á¥â¥ê¤Ë³ÊǼ¤·¤ÆÊÖ¤¹"
+
+#: options.c:1005
+msgid "Warn about use of (only a few for now) Fortran extensions"
+msgstr "Fortran ³ÈÄ¥(º£¤Ï¾¯¤Ê¤¤¤¬)¤Î»ÈÍѤˤĤ¤¤Æ·Ù¹ð¤¹¤ë"
+
+#: options.c:1008
+#, fuzzy
+msgid "Perform loop peeling"
+msgstr "Á´¤Æ¤Î¥ë¡¼¥×¤Ç¥ë¡¼¥×Ÿ³«¤ò¹Ô¤Ê¤¦"
+
+#: options.c:1011
+#, fuzzy
+msgid "Enable machine specific peephole optimizations"
+msgstr "µ¡¼ï¸ÇÍ­¤ÎÇÁ¤­·êºÇŬ²½¤òÍ­¸ú¤Ë¤¹¤ë"
+
+#: options.c:1014
+#, fuzzy
+msgid "Enable an RTL peephole pass before sched2"
+msgstr "ÂèÆóÌ¿ÎáÇÛÃÖ¤ÎÁ°¤Ç rtl ÇÁ¤­·ê²áÄø¤òÍ­¸ú¤Ë¤¹¤ë"
+
+#: options.c:1017
+msgid "Downgrade conformance errors to warnings"
+msgstr "µ¬³ÊŬ¹çÀ­¥¨¥é¡¼¤ò·Ù¹ð¤Ë³Ê²¼¤²¤¹¤ë"
+
+#: options.c:1020
+#, fuzzy
+msgid "Generate position-independent code if possible"
+msgstr "²Äǽ¤Ç¤¢¤ì¤Ð°ÌÃÖÆÈΩ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
+
+#: options.c:1023
+#, fuzzy
+msgid "Generate position-independent code for executables if possible"
+msgstr "²Äǽ¤Ç¤¢¤ì¤Ð°ÌÃÖÆÈΩ¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
+
+#: options.c:1026
+msgid "Generate prefetch instructions, if available, for arrays in loops"
+msgstr ""
+
+#: options.c:1032
+#, fuzzy
+msgid "Enable basic program profiling code"
+msgstr "¥×¥í¥°¥é¥à¤¬¥³¡¼¥É¥×¥í¥Õ¥¡¥¤¥ë¤¹¤ë¸µ¤Ë¤Ê¤ë¸Ì¤òÁÞÆþ¤¹¤ë"
+
+#: options.c:1035
+#, fuzzy
+msgid "Insert arc-based program profiling code"
+msgstr "¥×¥í¥°¥é¥à¤¬¥³¡¼¥É¥×¥í¥Õ¥¡¥¤¥ë¤¹¤ë¸µ¤Ë¤Ê¤ë¸Ì¤òÁÞÆþ¤¹¤ë"
+
+#: options.c:1038
+msgid "Enable common options for generating profile info for profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1041
+msgid "Enable common options for performing profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1044
+msgid "Insert code to profile values of expressions"
+msgstr ""
+
+#: options.c:1050
+msgid "-frandom-seed=<string>\tMake compile reproducible using <string>"
+msgstr ""
+
+#: options.c:1053
+msgid "Strength reduce all loop general induction variables"
+msgstr "¥ë¡¼¥×¤ÎÃæ¤ÎÁ´¤Æ¤Î°ìÈÌͶƳÊÑ¿ô¤ò¶¯Åٺ︺¤¹¤ë"
+
+#: options.c:1056
+#, fuzzy
+msgid "Return small aggregates in registers"
+msgstr "'¾®¤µ¤Ê' ½¸¹çÂΤò¥ì¥¸¥¹¥¿¤Ë³ÊǼ¤·¤ÆÊÖ¤¹"
+
+#: options.c:1059
+#, fuzzy
+msgid "Enables a register move optimization"
+msgstr "°ÜÆ°Ì¿ÎáºÇŬ²½¥ì¥¸¥¹¥¿¤òÍ­¸ú¤Ë¤¹¤ë"
+
+#: options.c:1062
+#, fuzzy
+msgid "Perform a register renaming optimization pass"
+msgstr "ºÇŬ²½²áÄø¤Î¥ì¥¸¥¹¥¿¤Ä¤±ÊѤ¨¤ò¹Ô¤Ê¤¦"
+
+#: options.c:1065
+msgid "Reorder basic blocks to improve code placement"
+msgstr "¥³¡¼¥ÉÇÛÃÖ¤ò²þÁ±¤¹¤ë¤¿¤á¤Ë´ðËÜ¥Ö¥í¥Ã¥¯¤òºÆÀ°Íý¤¹¤ë"
+
+#: options.c:1068
+#, fuzzy
+msgid "Reorder functions to improve code placement"
+msgstr "¥³¡¼¥ÉÇÛÃÖ¤ò²þÁ±¤¹¤ë¤¿¤á¤Ë´ðËÜ¥Ö¥í¥Ã¥¯¤òºÆÀ°Íý¤¹¤ë"
+
+#: options.c:1071
+msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime"
+msgstr ""
+
+#: options.c:1074
+msgid "Enable automatic template instantiation"
+msgstr "¼«Æ°¥Æ¥ó¥×¥ì¡¼¥È¼ÂÂ⽤òÍ­¸ú¤Ë¤¹¤ë"
+
+#: options.c:1077
+#, fuzzy
+msgid "Add a common subexpression elimination pass after loop optimizations"
+msgstr "¥ë¡¼¥×ºÇŬ²½¸å¤Ë¶¦ÄÌÉôʬ¼°½üµî²áÄø¤ò¼Â¹Ô"
+
+#: options.c:1080
+#, fuzzy
+msgid "Run the loop optimizer twice"
+msgstr "¥ë¡¼¥×ºÇŬ²½¤òÆó²ó¼Â¹Ô¤¹¤ë"
+
+#: options.c:1083
+msgid "Disable optimizations that assume default FP rounding behavior"
+msgstr ""
+
+#: options.c:1086
+#, fuzzy
+msgid "Generate run time type descriptor information"
+msgstr "¼Â¹Ô»þ·¿µ­½Ò¾ðÊó¤òÀ¸À®¤·¤Ê¤¤"
+
+#: options.c:1089
+msgid "Enable scheduling across basic blocks"
+msgstr "´ðËÜ¥Ö¥í¥Ã¥¯¤ò¸Ù¤°Ì¿ÎáÇÛÃÖ¤òÍ­¸ú¤Ë¤¹¤ë"
+
+#: options.c:1092
+msgid "Allow speculative motion of non-loads"
+msgstr "Èó¥í¡¼¥É¤Ç¤ÎÉԳμ¤ÊÆ°ºî¤òµö²Ä¤¹¤ë"
+
+#: options.c:1095
+msgid "Allow speculative motion of some loads"
+msgstr "¤¤¤¯¤Ä¤«¤Î¥í¡¼¥É¤Ç¤ÎÉԳμ¤ÊÆ°ºî¤òµö²Ä¤¹¤ë"
+
+#: options.c:1098
+msgid "Allow speculative motion of more loads"
+msgstr "¤è¤ê¿¤¯¤Î¥í¡¼¥É¤Ç¤ÎÉԳμ¤ÊÆ°ºî¤òµö²Ä¤¹¤ë"
-#: objc/lang-options.h:41
-msgid "Generate C header of platform specific features"
+#: options.c:1101
+msgid "Allow premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1104
+msgid "Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1107
+msgid "-fsched-stalled-insns-dep=<number> Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1110
+msgid "-fsched-stalled-insns=<number> Set number of queued insns that can be prematurely scheduled"
+msgstr ""
+
+#: options.c:1113
+#, fuzzy
+msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler"
+msgstr " -fsched-verbose=<number> ¥¹¥±¥¸¥å¡¼¥é¤ÎñÁÀå¥ì¥Ù¥ë¤òÀßÄꤹ¤ë\n"
+
+#: options.c:1116
+msgid "If scheduling post reload, do superblock scheduling"
+msgstr ""
+
+#: options.c:1119
+msgid "If scheduling post reload, do trace scheduling"
+msgstr ""
+
+#: options.c:1122
+msgid "Reschedule instructions before register allocation"
+msgstr "¥ì¥¸¥¹¥¿³ÎÊݤÎÁ°¤ËÌ¿Îá¤òÊ¤Ùľ¤¹"
+
+#: options.c:1125
+msgid "Reschedule instructions after register allocation"
+msgstr "¥ì¥¸¥¹¥¿³ÎÊݤθå¤ÇÌ¿Îá¤òÊ¤Ùľ¤¹"
+
+#: options.c:1128
+#, fuzzy
+msgid "Allow appending a second underscore to externals"
+msgstr "³°ÉôÊÑ¿ô¤ËÆó¤ÄÌܤΥ¢¥ó¥À¡¼¥¹¥³¥¢¤òÉÕ¤±Â­¤µ¤Ê¤¤"
+
+#: options.c:1131
+msgid "Mark data as shared rather than private"
+msgstr "¥Ç¡¼¥¿¤ò¥×¥é¥¤¥Ù¡¼¥È¤Ç¤Ï¤Ê¤¯¶¦Í­¤µ¤ì¤ë¤è¤¦¥Þ¡¼¥¯¤¹¤ë"
+
+#: options.c:1134
+msgid "Use the same size for double as for float"
+msgstr "double ¤Î¥µ¥¤¥º¤ò float ¤ÈƱ¤¸¤È¤·¤Æ»ÈÍѤ¹¤ë"
+
+#: options.c:1137
+msgid "Use the narrowest integer type possible for enumeration types"
+msgstr ""
+
+#: options.c:1140
+#, fuzzy
+msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\""
+msgstr "wchar_t ¤Îº¬ËÜŪ¤Ê·¿¤ò `unsigned short' ¤Èʤ¤¹"
+
+#: options.c:1146
+msgid "Disable optimizations observable by IEEE signaling NaNs"
+msgstr ""
+
+#: options.c:1149
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed"
+msgstr ""
+
+#: options.c:1152
+#, fuzzy
+msgid "Make \"char\" signed by default"
+msgstr "'char' ¤ò¥Ç¥Õ¥©¥ë¥È¤ÇÉä¹çÉÕ¤­¤È¤¹¤ë"
+
+#: options.c:1155
+#, fuzzy
+msgid "Do not print names of program units as they are compiled"
+msgstr "¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥×¥í¥°¥é¥àñ°Ì¤Î̾Á°¤òɽ¼¨¤¹¤ë"
+
+#: options.c:1158
+#, fuzzy
+msgid "Convert floating point constants to single precision constants"
+msgstr "ÉâÆ°¾®¿ôÅÀÄê¿ô¤òñÀºÅÙÄê¿ô¤ËÊÑ´¹¤¹¤ë"
+
+#: options.c:1161
+#, fuzzy
+msgid "Internally convert most source to lowercase"
+msgstr "ÆâÉôŪ¤ÊÊÑ´¹¤Ç¤Ï¥½¡¼¥¹¤ÎËؤó¤É¤ò±ÑÂçʸ»ú¤È¤¹¤ë"
+
+#: options.c:1164
+msgid "Internally preserve source case"
+msgstr "ÆâÉôŪ¤Ë¥½¡¼¥¹¤Î¥±¡¼¥¹¤òÊÝ»ý¤¹¤ë"
+
+#: options.c:1167
+msgid "Internally convert most source to uppercase"
+msgstr "ÆâÉôŪ¤ÊÊÑ´¹¤Ç¤Ï¥½¡¼¥¹¤ÎËؤó¤É¤ò±ÑÂçʸ»ú¤È¤¹¤ë"
+
+#: options.c:1173
+msgid "Insert stack checking code into the program"
+msgstr "¥×¥í¥°¥é¥à¤Ë¥¹¥¿¥Ã¥¯¶­³¦¸¡½Ð¥³¡¼¥É¤òÁÞÆþ¤¹¤ë"
+
+#: options.c:1179
+msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>"
+msgstr ""
+
+#: options.c:1182
+msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>"
+msgstr ""
+
+#: options.c:1185
+msgid "Display statistics accumulated during compilation"
+msgstr "¥³¥ó¥Ñ¥¤¥ëÃæ¤ËÃßÀѤµ¤ì¤¿Åý·×¾ðÊó¤òɽ¼¨¤¹¤ë"
+
+#: options.c:1188
+msgid "Enable assignability checks for stores into object arrays"
+msgstr ""
+
+#: options.c:1191
+#, fuzzy
+msgid "Perform strength reduction optimizations"
+msgstr "¶¯Åٺ︺ºÇŬ²½¤ò¹Ô¤Ê¤¦"
+
+#: options.c:1194
+msgid "Assume strict aliasing rules apply"
+msgstr "¸·Ì©¤ÊÊÌ̾µ¬Â§¤ËŬ¹ç¤¹¤ë¤È¤ß¤Ê¤¹"
+
+#: options.c:1203
+msgid "Symbol names spelled in mixed case"
+msgstr "¥·¥ó¥Ü¥ë̾¤Ï¥±¡¼¥¹º®ºß¤ÇÄÖ¤é¤ì¤ë"
+
+#: options.c:1206
+msgid "Symbol names in lowercase"
+msgstr "¥·¥ó¥Ü¥ë̾¤ò¾®Ê¸»ú¤È¤¹¤ë"
+
+#: options.c:1209
+msgid "Symbol names in uppercase"
+msgstr "¥·¥ó¥Ü¥ë̾¤òÂçʸ»ú¤È¤¹¤ë"
+
+#: options.c:1212
+msgid "Check for syntax errors, then stop"
+msgstr "ʸˡ¥¨¥é¡¼¤ò¸¡½Ð¤·¤Æ¡¢¤½¤³¤ÇÄä»ß¤¹¤ë"
+
+#: options.c:1215
+msgid "-ftabstop=<number>\tDistance between tab stops for column reporting"
+msgstr ""
+
+#: options.c:1218
+#, fuzzy
+msgid "-ftemplate-depth-<number>\tSpecify maximum template instantiation depth"
+msgstr "¥Æ¥ó¥×¥ì¡¼¥È¼ÂÂβ½¤Î¿¼¤µ¤ÎºÇÂçÃͤò»ØÄꤹ¤ë"
+
+#: options.c:1221
+#, fuzzy
+msgid "Create data files needed by \"gcov\""
+msgstr "gcov ¤¬É¬ÍפȤ¹¤ë¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ë"
+
+#: options.c:1227
+#, fuzzy
+msgid "Perform jump threading optimizations"
+msgstr "¥¸¥ã¥ó¥×ʬ´ôºÇŬ²½¤ò¹Ô¤Ê¤¦"
+
+#: options.c:1230
+#, fuzzy
+msgid "Report the time taken by each compiler pass"
+msgstr "¼Â¹Ô½ªÎ»»þ¤Ë¥³¥ó¥Ñ¥¤¥é¤Î³Æ²áÄø¤ËÍפ·¤¿»þ´Ö¤òÊó¹ð¤¹¤ë"
+
+#: options.c:1233
+msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model"
+msgstr ""
+
+#: options.c:1236
+msgid "Perform superblock formation via tail duplication"
+msgstr ""
+
+#: options.c:1239
+msgid "Assume floating-point operations can trap"
+msgstr ""
+
+#: options.c:1242
+#, fuzzy
+msgid "Trap for signed overflow in addition, subtraction and multiplication"
+msgstr "Éä¹çÉÕ¤­¤Î²Ã»»/¸º»»/¾è»»¤Ç¤Î·å¤¢¤Õ¤ì¤ò¥È¥é¥Ã¥×¤¹¤ë"
+
+#: options.c:1245
+msgid "Make prefix-radix non-decimal constants be typeless"
+msgstr "ÈóÀ°¿ôÄê¿ô¤ÎÀÜÈø´ð¿ô¤¬·¿¤Ê¤·¤Ç¤¢¤ë¤È¤¹¤ë"
+
+#: options.c:1248
+#, fuzzy
+msgid "Allow all ugly features"
+msgstr "Á´¤Æ¤Î½¹¤¤µ¡Ç½¤òµö²Ä¤·¤Ê¤¤"
+
+#: options.c:1251
+#, fuzzy
+msgid "Hollerith and typeless can be passed as arguments"
+msgstr "Hollerith ¤ä·¿¤Ê¤·Äê¿ô¤ò°ú¿ô¤È¤·¤ÆÅϤµ¤Ê¤¤"
+
+#: options.c:1254
+msgid "Allow ordinary copying of ASSIGN'ed vars"
+msgstr "ASSIGN ¤µ¤ì¤¿ÊÑ¿ô¤ÎÄ̾ï¤Î¥³¥Ô¡¼¤òµö²Ä¤¹¤ë"
+
+#: options.c:1257
+msgid "Dummy array dimensioned to (1) is assumed-size"
+msgstr "¥À¥ß¡¼ÇÛÎó¤Î¼¡¸µ¤ò (1) ¤È¤ß¤Ê¤¹"
+
+#: options.c:1260
+msgid "Trailing comma in procedure call denotes null argument"
+msgstr "¥×¥í¥·¡¼¥¸¥ã¸Æ¤Ó½Ð¤·Ãæ¤ÎϢ³¥«¥ó¥Þ¤Ç null °ú¿ô¤òɽ¸½¤¹¤ë"
+
+#: options.c:1263
+msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
+msgstr "DOUBLE COMPLEX Z ¤Ç¤Î REAL(Z) ¤È AIMAG(Z) ¤òµö²Ä¤¹¤ë"
+
+#: options.c:1266
+#, fuzzy
+msgid "Initialization via DATA and PARAMETER is not type-compatible"
+msgstr "DATA ¤ä PARAMETER ·Ðͳ¤Î½é´ü²½¤Ï·¿¸ß´¹¤Ç¤¢¤ë"
+
+#: options.c:1269
+msgid "Allow INTEGER and LOGICAL interchangeability"
+msgstr "INTEGER ¤È LOGICAL ¤ÏÁê¸ß¤ËÊѹ¹²Äǽ¤Ç¤¢¤ë¤È¤¹¤ë"
+
+#: options.c:1272
+#, fuzzy
+msgid "Append underscores to externals"
+msgstr "³°ÉôÊÑ¿ô¤ËÆó¤ÄÌܤΥ¢¥ó¥À¡¼¥¹¥³¥¢¤òÉÕ¤±Â­¤µ¤Ê¤¤"
+
+#: options.c:1275
+#, fuzzy
+msgid "Compile whole compilation unit at a time"
+msgstr "ËÝÌõñ°ÌÁ´ÂΤò¥Õ¥¡¥¤¥ë¤Ë¥À¥ó¥×¤¹¤ë"
+
+#: options.c:1278
+msgid "Delete libU77 intrinsics"
+msgstr "libU77 intrinsic ¤òºï½ü¤¹¤ë"
+
+#: options.c:1281
+msgid "Disable libU77 intrinsics"
+msgstr "libU77 intrinsic ¤ò̵¸ú²½¤¹¤ë"
+
+#: options.c:1284
+#, fuzzy
+msgid "Enable libU77 intrinsics"
+msgstr "libU77 intrinsic ¤ò̵¸ú²½¤¹¤ë"
+
+#: options.c:1287
+msgid "Hide libU77 intrinsics"
+msgstr "libU77 intrinsic ¤ò±£¤¹"
+
+#: options.c:1296
+msgid "Allow math optimizations that may violate IEEE or ISO standards"
+msgstr ""
+
+#: options.c:1299
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned"
+msgstr ""
+
+#: options.c:1302
+#, fuzzy
+msgid "Make \"char\" unsigned by default"
+msgstr "'char' ¤ò¥Ç¥Õ¥©¥ë¥È¤ÇÉä¹ç̵¤·¤È¤¹¤ë"
+
+#: options.c:1305
+#, fuzzy
+msgid "Perform loop unswitching"
+msgstr "Á´¤Æ¤Î¥ë¡¼¥×¤Ç¥ë¡¼¥×Ÿ³«¤ò¹Ô¤Ê¤¦"
+
+#: options.c:1308
+msgid "Just generate unwind tables for exception handling"
+msgstr "´¬¤­Ìᤷ¤ò¹Ô¤Ê¤¦Îã³°Êä­Íѥơ¼¥Ö¥ë¤òÀ¸À®¤¹¤ë"
+
+#: options.c:1314
+#, fuzzy
+msgid "Use __cxa_atexit to register destructors"
+msgstr "¥Ç¥¹¥È¥é¥¯¥¿¤ÎÅÐÏ¿¤Ë __cxa_atexit ¤òÍøÍѤ¹¤ë"
+
+#: options.c:1320
+#, fuzzy
+msgid "Add extra commentary to assembler output"
+msgstr ";ʬ¤Ê¥³¥á¥ó¥È¤ò¥¢¥»¥ó¥Ö¥é½ÐÎϤËÄɲ乤ë"
+
+#: options.c:1323
+#, fuzzy
+msgid "Print g77-specific version information and run internal tests"
+msgstr "g77 ¸ÇÍ­¤Î¥³¥ó¥Ñ¥¤¥é¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¡¢ÆâÉô¥Æ¥¹¥È¤Î¼Â¹Ô"
+
+#: options.c:1326
+msgid "Use expression value profiles in optimizations"
+msgstr ""
+
+#: options.c:1329
+msgid "Discard unused virtual functions"
+msgstr "»È¤ï¤ì¤Ê¤¤²¾ÁÛ´Ø¿ô¤òÀÚ¤ê¼Î¤Æ¤ë"
+
+#: options.c:1332
+msgid "Implement vtables using thunks"
+msgstr "thunk ¤ò»È¤Ã¤Æ vtable ¤ò¼ÂÁõ¤¹¤ë"
+
+#: options.c:1335
+msgid "Program is written in VXT (Digital-like) FORTRAN"
+msgstr "¥×¥í¥°¥é¥à¤Ï VXT (Digital) FORTRAN ¤Ç½ñ¤«¤ì¤Æ¤¤¤ë"
+
+#: options.c:1338
+msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤òºï½ü¤¹¤ë"
+
+#: options.c:1341
+msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë"
+
+#: options.c:1344
+#, fuzzy
+msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò̵¸ú²½¤¹¤ë"
+
+#: options.c:1347
+msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr "VXT FORTRAN ¤¬¥µ¥Ý¡¼¥È¤¹¤ëÈó FORTRAN-77 intrinsics ¤ò±£¤¹"
+
+#: options.c:1353
+msgid "Emit common-like symbols as weak symbols"
+msgstr "¥³¥â¥ó¥·¥ó¥Ü¥ë¤ò¥¦¥£¡¼¥¯¥·¥ó¥Ü¥ë¤ÎÍͤËÀ¸À®¤¹¤ë"
+
+#: options.c:1356
+msgid "Construct webs and split unrelated uses of single variable"
+msgstr ""
+
+#: options.c:1359
+msgid "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:1362
+msgid "Generate a #line directive pointing at the current working directory"
+msgstr ""
+
+#: options.c:1365
+msgid "Assume signed arithmetic overflow wraps around"
+msgstr ""
+
+#: options.c:1368
+msgid "Store strings in writable data section"
+msgstr "ʸ»úÎó¤ò½ñ¤­¹þ¤ß²Äǽ¥Ç¡¼¥¿¥»¥¯¥·¥ç¥ó¤Ë³ÊǼ¤¹¤ë"
+
+#: options.c:1371
+msgid "Emit cross referencing information"
+msgstr "Áê¸ß»²¾È¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#: options.c:1374
+#, fuzzy
+msgid "Print internal debugging-related information"
+msgstr "ÆâÉô¥Ç¥Ð¥Ã¥°´ØÏ¢¾ðÊó¤òɽ¼¨¤¹¤ë"
+
+#: options.c:1377
+#, fuzzy
+msgid "Put zero initialized data in the bss section"
+msgstr "Âç°èÊÑ¿ôÅù¤ò½é´ü²½¤µ¤ì¤Ê¤¤¥³¥â¥ó¥»¥¯¥·¥ç¥ó¤ËÃÖ¤«¤Ê¤¤"
+
+#: options.c:1380
+msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode"
+msgstr ""
+
+#: options.c:1383
+msgid "Treat initial values of 0 like non-zero values"
+msgstr "0 ¤Î½é´ü²½ÃͤòÈó¥¼¥íÃͤȤ·¤Æ¼è¤ê°·¤¦"
+
+#: options.c:1386
+#, fuzzy
+msgid "Generate debug information in default format"
+msgstr "¥Ç¥Õ¥©¥ë¥È·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#: options.c:1392
+#, fuzzy
+msgid "Generate debug information in COFF format"
+msgstr "¥Ç¥Õ¥©¥ë¥È·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#: options.c:1395
+#, fuzzy
+msgid "Generate debug information in DWARF v2 format"
+msgstr "¥Ç¥Õ¥©¥ë¥È·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#: options.c:1398
+#, fuzzy
+msgid "Dump declarations to a .decl file"
+msgstr "Àë¸À¤ò .decl ¥Õ¥¡¥¤¥ë¤Ë¥À¥ó¥×¤¹¤ë"
+
+#: options.c:1401
+#, fuzzy
+msgid "Generate debug information in default extended format"
+msgstr "¥Ç¥Õ¥©¥ë¥È³ÈÄ¥·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#: options.c:1404
+msgid "-gnat<options>\tSpecify options to GNAT"
+msgstr ""
+
+#: options.c:1407
+#, fuzzy
+msgid "Generate debug information in STABS format"
+msgstr "¥Ç¥Õ¥©¥ë¥È·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#: options.c:1410
+#, fuzzy
+msgid "Generate debug information in extended STABS format"
+msgstr "¥Ç¥Õ¥©¥ë¥È³ÈÄ¥·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#: options.c:1413
+#, fuzzy
+msgid "Generate debug information in VMS format"
+msgstr "¥Ç¥Õ¥©¥ë¥È·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#: options.c:1416
+#, fuzzy
+msgid "Generate debug information in XCOFF format"
+msgstr "¥Ç¥Õ¥©¥ë¥È·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#: options.c:1419
+#, fuzzy
+msgid "Generate debug information in extended XCOFF format"
+msgstr "¥Ç¥Õ¥©¥ë¥È³ÈÄ¥·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#: options.c:1422
+msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1425
+msgid "-imacros <file>\tAccept definition of macros in <file>"
+msgstr ""
+
+#: options.c:1428
+msgid "-include <file>\tInclude the contents of <file> before other files"
+msgstr ""
+
+#: options.c:1431
+msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options"
+msgstr ""
+
+#: options.c:1434
+msgid "-isysroot <dir>\tSet <dir> to be the system root directory"
+msgstr ""
+
+#: options.c:1437
+msgid "-isystem <dir>\tAdd <dir> to the start of the system include path"
+msgstr ""
+
+#: options.c:1440
+msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1443
+msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path"
+msgstr ""
+
+#: options.c:1455
+msgid "Do not search standard system include directories (those specified with -isystem will still be used)"
+msgstr ""
+
+#: options.c:1458
+msgid "Do not search standard system include directories for C++"
+msgstr ""
+
+#: options.c:1464
+#, fuzzy
+msgid "-o <file>\tPlace output into <file>"
+msgstr " -o <file> ½ÐÎϤò <file> ¤Ë½ñ¤­¹þ¤à\n"
+
+#: options.c:1467
+#, fuzzy
+msgid "Enable function profiling"
+msgstr "mips16 ´Ø¿ô¥×¥í¥Õ¥¡¥¤¥ë"
+
+#: options.c:1470
+#, fuzzy
+msgid "Issue warnings needed for strict compliance to the standard"
+msgstr " -pedantic ¸·Ì©¤Ê ISO C ¤Ø¤ÎŬ¹ç¤ËÍפ¹¤ë·Ù¹ð¤òȯ¤¹¤ë\n"
+
+#: options.c:1473
+msgid "Like -pedantic but issue them as errors"
+msgstr ""
+
+#: options.c:1476
+#, fuzzy
+msgid "Generate C header of platform-specific features"
msgstr "¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¸ÇÍ­¤Îµ¡Ç½¤Î C ¥Ø¥Ã¥À¤òÀ¸À®¤¹¤ë"
-#: objc/lang-options.h:43
-msgid "Specify the name of the class for constant strings"
-msgstr "Äê¿ôʸ»úÎóÍѤΥ¯¥é¥¹Ì¾¤ò»ØÄꤹ¤ë"
+#: options.c:1479
+#, fuzzy
+msgid "Do not display functions compiled or elapsed time"
+msgstr " -quiet ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿´Ø¿ô¤ä·Ð²á»þ´Ö¤òɽ¼¨¤·¤Ê¤¤\n"
-#. This is the contribution to the `lang_options' array in gcc.c for
-#. treelang.
-#: treelang/lang-options.h:26
-msgid "(debug) trace parsing process"
+#: options.c:1482
+#, fuzzy
+msgid "Remap file names when including files"
+msgstr "#%s ¤Ç¤Î¥Õ¥¡¥¤¥ë̾¤¬¶õ¤Ç¤¹"
+
+#: options.c:1485
+msgid "Conform to the ISO 1998 C++ standard"
msgstr ""
-#: treelang/lang-options.h:27
-msgid "(debug) trace lexical analysis"
+#: options.c:1488
+msgid "Conform to the ISO 1990 C standard"
msgstr ""
-#: config/rs6000/darwin.h:62
-msgid " conflicting code gen style switches are used"
+#: options.c:1491
+msgid "Conform to the ISO 1999 C standard"
msgstr ""
-#: config/i386/mingw32.h:85 config/i386/cygwin.h:171
-msgid "shared and mdll are not compatible"
-msgstr "shared ¤È mdll ¤È¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
+#: options.c:1494 options.c:1515 options.c:1518
+msgid "Deprecated in favor of -std=c99"
+msgstr ""
-#: java/lang-specs.h:33
-msgid "-fjni and -femit-class-files are incompatible"
-msgstr "-fjni ¤È -femit-class-files ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
+#: options.c:1497
+msgid "Conform to the ISO 1998 C++ standard with GNU extensions"
+msgstr ""
-#: java/lang-specs.h:34
-msgid "-fjni and -femit-class-file are incompatible"
-msgstr "-fjini ¤È -femit-class-file ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
+#: options.c:1500
+msgid "Conform to the ISO 1990 C standard with GNU extensions"
+msgstr ""
-#: java/lang-specs.h:35 java/lang-specs.h:36
-msgid "-femit-class-file should used along with -fsyntax-only"
+#: options.c:1503
+msgid "Conform to the ISO 1999 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1506
+msgid "Deprecated in favor of -std=gnu99"
+msgstr ""
+
+#: options.c:1509
+msgid "Deprecated in favor of -std=c89"
+msgstr ""
+
+#: options.c:1512
+msgid "Conform to the ISO 1990 C standard as amended in 1994"
+msgstr ""
+
+#: options.c:1521
+#, fuzzy
+msgid "Enable traditional preprocessing"
+msgstr "¥¹¥¿¥Ã¥¯Ãµº÷¤òÍ­¸ú¤Ë¤¹¤ë"
+
+#: options.c:1524
+msgid "-trigraphs\tSupport ISO C trigraphs"
+msgstr ""
+
+#: options.c:1527
+msgid "Do not predefine system-specific and GCC-specific macros"
msgstr ""
-#: ada/lang-specs.h:38 java/jvspec.c:77 gcc.c:716
+#: options.c:1530
+#, fuzzy
+msgid "Enable verbose output"
+msgstr "¥Ç¥Ð¥Ã¥°½ÐÎϤòÍ­¸ú¤Ë¤¹¤ë"
+
+#: options.c:1536
+#, fuzzy
+msgid "Suppress warnings"
+msgstr "%s: ·Ù¹ð: "
+
+#: config/rs6000/darwin.h:98
+msgid " conflicting code gen style switches are used"
+msgstr ""
+
+#: gcc.c:743
+#, fuzzy
+msgid "GCC does not support -C or -CC without -E"
+msgstr "GNU C ¤Ï -E ¤òȼ¤ï¤Ê¤¤ -C ¤ò¼ÂÁõ¤·¤Æ¤¤¤Þ¤»¤ó"
+
+#: gcc.c:767 java/jvspec.c:80 ada/lang-specs.h:34
msgid "-pg and -fomit-frame-pointer are incompatible"
msgstr "-pg ¤È -fomit-frame-pointer ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: ada/lang-specs.h:41
-msgid "-c or -S required for Ada"
-msgstr ""
+#: gcc.c:915
+msgid "-E required when input is from standard input"
+msgstr "ÆþÎϤ¬É¸½àÆþÎϤξì¹ç¤Ï -E ¤¬É¬ÍפǤ¹"
+
+#: config/arm/arm.h:197
+msgid "-mapcs-26 and -mapcs-32 may not be used together"
+msgstr "-mapcs-26 ¤È -mapcs-32 ¤ÏƱ»þ¤Ë»È¤¨¤Þ¤»¤ó"
+
+#: config/arm/arm.h:199
+msgid "-msoft-float and -mhard_float may not be used together"
+msgstr "-msoft-float ¤È -mhard_float ¤ÏƱ»þ¤Ë»È¤¨¤Þ¤»¤ó"
+
+#: config/arm/arm.h:201
+msgid "-mbig-endian and -mlittle-endian may not be used together"
+msgstr "-mbig-endian ¤È -mlittle-endian ¤ÏƱ»þ¤Ë»È¤¨¤Þ¤»¤ó"
+
+#: config/i386/mingw32.h:58 config/i386/cygwin.h:70
+msgid "shared and mdll are not compatible"
+msgstr "shared ¤È mdll ¤È¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: config/darwin.h:212
+#: config/mips/mips.h:975
+#, fuzzy
+msgid "-pipe is not supported"
+msgstr "-pipe ¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+
+#: config/mips/mips.h:1130 config/arc/arc.h:63
+msgid "may not use both -EB and -EL"
+msgstr "-EB ¤È -EL ¤ÎξÊý¤ò»È¤¦¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
+
+#: config/darwin.h:215
msgid "-current_version only allowed with -dynamiclib"
msgstr ""
-#: config/darwin.h:215
+#: config/darwin.h:218
msgid "-install_name only allowed with -dynamiclib"
msgstr ""
-#: config/darwin.h:220
+#: config/darwin.h:223
#, fuzzy
msgid "-bundle not allowed with -dynamiclib"
msgstr "-m64 »ØÄê¥â¡¼¥É¤Ç¤Ï -mlong-double-64 ¤Ïµö²Ä¤µ¤ì¤Þ¤»¤ó"
-#: config/darwin.h:221
+#: config/darwin.h:224
#, fuzzy
msgid "-bundle_loader not allowed with -dynamiclib"
msgstr "-m64 »ØÄê¥â¡¼¥É¤Ç¤Ï -mlong-double-64 ¤Ïµö²Ä¤µ¤ì¤Þ¤»¤ó"
-#: config/darwin.h:222
+#: config/darwin.h:225
#, fuzzy
msgid "-client_name not allowed with -dynamiclib"
msgstr "-m64 »ØÄê¥â¡¼¥É¤Ç¤Ï -mlong-double-64 ¤Ïµö²Ä¤µ¤ì¤Þ¤»¤ó"
-#: config/darwin.h:225
+#: config/darwin.h:228
msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
msgstr ""
-#: config/darwin.h:226
+#: config/darwin.h:229
msgid "-force_flat_namespace not allowed with -dynamiclib"
msgstr ""
-#: config/darwin.h:228
+#: config/darwin.h:231
msgid "-keep_private_externs not allowed with -dynamiclib"
msgstr ""
-#: config/darwin.h:229
+#: config/darwin.h:232
#, fuzzy
msgid "-private_bundle not allowed with -dynamiclib"
msgstr "-m64 »ØÄê¥â¡¼¥É¤Ç¤Ï -mlong-double-64 ¤Ïµö²Ä¤µ¤ì¤Þ¤»¤ó"
-#: config/sparc/freebsd.h:34 config/ia64/freebsd.h:23
-#: config/alpha/freebsd.h:44 config/rs6000/sysv4.h:1107
-#: config/i386/freebsd-aout.h:213
-msgid "`-p' not supported; use `-pg' and gprof(1)"
-msgstr "`-p' ¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó. `-pg' ¤È gprof(1) ¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤"
-
-#: config/sparc/linux64.h:197 config/sparc/linux64.h:208
-#: config/sparc/netbsd-elf.h:163 config/sparc/netbsd-elf.h:182
-#: config/sparc/sol2-bi.h:168 config/sparc/sol2-bi.h:178
+#: config/vax/netbsd-elf.h:42
#, fuzzy
-msgid "may not use both -m32 and -m64"
-msgstr "-mfp64 ¤È -m4650 ¤ÎξÊý¤ò»È¤¦¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
-
-#: config/arm/arm.h:178
-msgid "-mapcs-26 and -mapcs-32 may not be used together"
-msgstr "-mapcs-26 ¤È -mapcs-32 ¤ÏƱ»þ¤Ë»È¤¨¤Þ¤»¤ó"
-
-#: config/arm/arm.h:180
-msgid "-msoft-float and -mhard_float may not be used together"
-msgstr "-msoft-float ¤È -mhard_float ¤ÏƱ»þ¤Ë»È¤¨¤Þ¤»¤ó"
-
-#: config/arm/arm.h:182
-msgid "-mbig-endian and -mlittle-endian may not be used together"
-msgstr "-mbig-endian ¤È -mlittle-endian ¤ÏƱ»þ¤Ë»È¤¨¤Þ¤»¤ó"
+msgid "The -shared option is not currently supported for VAX ELF."
+msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤Ï¸½ºß¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: config/i386/sco5.h:195
+#: config/i386/sco5.h:191
#, fuzzy
msgid "-pg not supported on this platform"
msgstr "init_priority °À­¤Ï¤³¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-#: config/i386/sco5.h:196
+#: config/i386/sco5.h:192
#, fuzzy
msgid "-p and -pp specified - pick one"
msgstr "-I- ¤¬Æó²ó»ØÄꤵ¤ì¤Þ¤·¤¿"
-#: config/i386/sco5.h:271
+#: config/i386/sco5.h:266
#, fuzzy
msgid "-G and -static are mutually exclusive"
msgstr "-pedantic ¤È -traditional ¤È¤ÏÁê¸ßÇÓ¾Ū¤Ç¤¹"
-#: f/lang-specs.h:38 gcc.c:689
-msgid "GNU C does not support -C without using -E"
-msgstr "GNU C ¤Ï -E ¤òȼ¤ï¤Ê¤¤ -C ¤ò¼ÂÁõ¤·¤Æ¤¤¤Þ¤»¤ó"
+#: treelang/lang-specs.h:52
+#, fuzzy
+msgid "-pg or -p and -fomit-frame-pointer are incompatible"
+msgstr "-pg ¤È -fomit-frame-pointer ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: f/lang-specs.h:39 gcc.c:690
+#: f/lang-specs.h:38
#, fuzzy
-msgid "GNU C does not support -CC without using -E"
+msgid "GCC does not support -C without using -E"
msgstr "GNU C ¤Ï -E ¤òȼ¤ï¤Ê¤¤ -C ¤ò¼ÂÁõ¤·¤Æ¤¤¤Þ¤»¤ó"
-#: config/mcore/mcore.h:60
-msgid "choose either big or little endian, not both"
-msgstr "¥Ó¥Ã¥°¤Þ¤¿¤Ï¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥óξÊý¤Ç¤Ï¤Ê¤¯¡¢¤É¤Á¤é¤«¤òÁª¤ó¤Ç¤¯¤À¤µ¤¤"
-
-#: config/mcore/mcore.h:63
-msgid "choose either m340 or m210 not both"
-msgstr "m340 ¤Þ¤¿¤Ï m210 ¤ÎξÊý¤Ç¤Ï¤Ê¤¯¡¢¤É¤Á¤é¤«¤òÁª¤ó¤Ç¤¯¤À¤µ¤¤"
-
-#: config/mcore/mcore.h:64
-msgid "the m210 does not have little endian support"
-msgstr "m210 ¤Ï¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó¥µ¥Ý¡¼¥È¤ò¹Ô¤Ê¤¨¤Þ¤»¤ó"
-
-#: config/i386/cygwin.h:115
-msgid "mno-cygwin and mno-win32 are not compatible"
-msgstr "mno-cygwin ¤È mno-win32 ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
+#: f/lang-specs.h:39
+#, fuzzy
+msgid "GCC does not support -CC without using -E"
+msgstr "GNU C ¤Ï -E ¤òȼ¤ï¤Ê¤¤ -C ¤ò¼ÂÁõ¤·¤Æ¤¤¤Þ¤»¤ó"
-#: config/vax/netbsd-elf.h:42
+#: config/mips/r3900.h:35
#, fuzzy
-msgid "The -shared option is not currently supported for VAX ELF."
-msgstr "ÁȤ߹þ¤ß´Ø¿ô `%s' ¤Ï¸½ºß¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+msgid "-mhard-float not supported"
+msgstr "-mhard-float ¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó."
-#: treelang/lang-specs.h:52
+#: config/mips/r3900.h:37
#, fuzzy
-msgid "-pg or -p and -fomit-frame-pointer are incompatible"
-msgstr "-pg ¤È -fomit-frame-pointer ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
+msgid "-msingle-float and -msoft-float can not both be specified"
+msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
-#: gcc.c:847
-msgid "-E required when input is from standard input"
-msgstr "ÆþÎϤ¬É¸½àÆþÎϤξì¹ç¤Ï -E ¤¬É¬ÍפǤ¹"
+#: config/rs6000/sysv4.h:1094 config/i386/freebsd-aout.h:215
+msgid "`-p' not supported; use `-pg' and gprof(1)"
+msgstr "`-p' ¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó. `-pg' ¤È gprof(1) ¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤"
-#: gcc.c:851
+#: config/sparc/linux64.h:208 config/sparc/linux64.h:219
+#: config/sparc/netbsd-elf.h:140 config/sparc/netbsd-elf.h:159
+#: config/sparc/sol2-bi.h:195 config/sparc/sol2-bi.h:205
#, fuzzy
-msgid "compilation of header file requested"
-msgstr "¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤Î¥³¥ó¥Ñ¥¤¥ë¤¬Í׵ᤵ¤ì¤Þ¤·¤¿"
+msgid "may not use both -m32 and -m64"
+msgstr "-mfp64 ¤È -m4650 ¤ÎξÊý¤ò»È¤¦¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
#: config/vax/vax.h:50 config/vax/vax.h:51
msgid "profiling not supported with -mg\n"
msgstr "-mg ¤Ç¤Î¥×¥í¥Õ¥¡¥¤¥ë¤ÏÄ󶡤µ¤ì¤Þ¤»¤ó\n"
-#: config/mips/mips.h:954
-#, fuzzy
-msgid "-pipe is not supported"
-msgstr "-pipe ¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+#: config/i386/cygwin.h:29
+msgid "mno-cygwin and mno-win32 are not compatible"
+msgstr "mno-cygwin ¤È mno-win32 ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
-#: config/mips/mips.h:1156 config/arc/arc.h:63
-msgid "may not use both -EB and -EL"
-msgstr "-EB ¤È -EL ¤ÎξÊý¤ò»È¤¦¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
+#: ada/lang-specs.h:36
+msgid "one of -c, -S, -gnatc, -gnatz, or -gnats is required for Ada"
+msgstr ""
-#: config/mips/r3900.h:35
+#: config/sparc/sol2-bi.h:167 config/sparc/sol2-bi.h:172
+#: config/sparc/sol2-gld-bi.h:17 config/sparc/sol2-gld-bi.h:22
#, fuzzy
-msgid "-mhard-float not supported"
-msgstr "-mhard-float ¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó."
+msgid "does not support multilib"
+msgstr "%s ¤Ï %s ¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
-#: config/mips/r3900.h:37
-#, fuzzy
-msgid "-msingle-float and -msoft-float can not both be specified"
-msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
+#: java/lang-specs.h:34
+msgid "-fjni and -femit-class-files are incompatible"
+msgstr "-fjni ¤È -femit-class-files ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
+
+#: java/lang-specs.h:35
+msgid "-fjni and -femit-class-file are incompatible"
+msgstr "-fjini ¤È -femit-class-file ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
+
+#: java/lang-specs.h:36 java/lang-specs.h:37
+msgid "-femit-class-file should used along with -fsyntax-only"
+msgstr ""
+
+#: config/mcore/mcore.h:65
+msgid "the m210 does not have little endian support"
+msgstr "m210 ¤Ï¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó¥µ¥Ý¡¼¥È¤ò¹Ô¤Ê¤¨¤Þ¤»¤ó"
#~ msgid "__builtin_trap not supported by this target"
#~ msgstr "__builtin_trap ¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ç¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
@@ -21743,36 +22411,96 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "type with more precision than %s"
#~ msgstr "%s ¤è¤ê¤âÀºÌ©¤Ê·¿"
+#~ msgid "ISO C++ forbids range expressions in switch statements"
+#~ msgstr "ISO C++ ¤Ç¤Ï switch ʸ¤Ç¤ÎÈϰϼ°¤Ï¶Ø¤¸¤é¤ì¤Æ¤¤¤Þ¤¹"
+
#~ msgid "unknown C standard `%s'"
#~ msgstr "ÉÔÌÀ¤Ê C ɸ½à `%s'"
+#~ msgid "`struct %s' incomplete in scope ending here"
+#~ msgstr "¥¹¥³¡¼¥×¤¬½ª¤ï¤ë¤³¤Î°ÌÃ֤ǡ¢`struct %s' ¤¬ÉÔ´°Á´¤Ç¤¹"
+
+#~ msgid "`union %s' incomplete in scope ending here"
+#~ msgstr "¥¹¥³¡¼¥×¤¬½ª¤ï¤ë¤³¤ÎÉôʬ¤Ç `union %s' ¤¬ÉÔ´°Á´¤Ç¤¹"
+
+#~ msgid "`enum %s' incomplete in scope ending here"
+#~ msgstr "¥¹¥³¡¼¥×¤¬½ª¤ï¤ë¤³¤ÎÉôʬ¤Ç `enum %s' ¤¬ÉÔ´°Á´¤Ç¤¹"
+
+#~ msgid "prototype for `%s' follows and number of arguments doesn't match"
+#~ msgstr "`%s' ¤Î¥×¥í¥È¥¿¥¤¥×¤¬¸å¤í¤Ë¤¢¤ê¡¢°ú¿ô¤Î¸Ä¿ô¤¬°ìÃפ·¤Þ¤»¤ó"
+
+#~ msgid "prototype for `%s' follows and argument %d doesn't match"
+#~ msgstr "`%s' ¤Î¥×¥í¥È¥¿¥¤¥×¤¬¸å¤í¤Ë¤¢¤ê¡¢°ú¿ô %d ¤¬°ìÃפ·¤Þ¤»¤ó"
+
+#~ msgid "`%s' was declared implicitly `extern' and later `static'"
+#~ msgstr "`%s' ¤Ï°ÅÌÛ¤Ë `extern' Àë¸À¤µ¤ì¡¢¸å¤Ë `static' Àë¸À¤µ¤ì¤Þ¤·¤¿"
+
+#~ msgid "type mismatch with previous implicit declaration"
+#~ msgstr "·¿¤¬Á°Êý¤Î°ÅÌÛ¤ÎÀë¸À¤È°ìÃפ·¤Þ¤»¤ó"
+
#~ msgid "type of external `%s' is not global"
#~ msgstr "³°Éô `%s' ¤Î·¿¤Ï¥°¥í¡¼¥Ð¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-#~ msgid "declaration of `%s' shadows previous local"
-#~ msgstr "`%s' ¤ÎÀë¸À¤ÏÁ°Êý¤Î¥í¡¼¥«¥ë¥·¥ó¥Ü¥ë¤òʤ¤¤±£¤·¤Þ¤¹"
+#~ msgid "`%s' was declared `extern' and later `static'"
+#~ msgstr "`%s' ¤Ï `extern' ¤ÈÀë¸À¤µ¤ì¡¢¸å¤Ç `static' ¤ÈÀë¸À¤µ¤ì¤Þ¤·¤¿"
+
+#~ msgid "`%s' locally external but globally static"
+#~ msgstr "`%s' ¤Ï¥í¡¼¥«¥ëŪ¤Ë¤Ï extern ¤Ç¤¹¤¬¡¢¥°¥í¡¼¥Ð¥ëŪ¤Ë static ¤Ç¤¹"
+
+#~ msgid "function `%s' was previously declared within a block"
+#~ msgstr "´Ø¿ô `%s' ¤Ï¥Ö¥í¥Ã¥¯Æâ¤ÎÁ°Êý¤ÇÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹"
+
+#~ msgid "ANSI C forbids parameter `%s' shadowing typedef"
+#~ msgstr "ANSI C ¤Ï typedef ¤òʤ¤¤±£¤¹²¾°ú¿ô `%s' ¤ò¶Ø¤¸¤Æ¤¤¤Þ¤¹"
#~ msgid "ANSI C forbids const or volatile function types"
#~ msgstr "ANSI C ¤Ï const ¤ä volatile ´Ø¿ô·¿¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó"
+#~ msgid "parameter points to incomplete type"
+#~ msgstr "²¾°ú¿ô¤¬ÉÔ´°Á´·¿¤ò»Ø¤·¤Æ¤¤¤Þ¤¹"
+
+#~ msgid "`void' in parameter list must be the entire list"
+#~ msgstr "²¾°ú¿ô¥ê¥¹¥ÈÃæ¤Î `void' ¤Ï¥ê¥¹¥ÈÁ´ÂΤòÀê¤á¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
+
+#~ msgid "anonymous union declared inside parameter list"
+#~ msgstr "̵̾¶¦ÍÑÂΤ¬²¾°ú¿ô¥ê¥¹¥ÈÆâ¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
+
+#~ msgid "anonymous enum declared inside parameter list"
+#~ msgstr "̵̾Îóµó»Ò¤¬²¾°ú¿ô¥ê¥¹¥ÈÆâ¤ÇÀë¸À¤µ¤ì¤Þ¤·¤¿"
+
+#~ msgid "bit-field `%s' type invalid in ISO C"
+#~ msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É `%s' ·¿¤Ï ISO C ¤Ç¤ÏÉÔŬÀڤǤ¹"
+
+#~ msgid "parm types given both in parmlist and separately"
+#~ msgstr "²¾°ú¿ô¤Î·¿¤¬¡¢²¾°ú¿ô¥ê¥¹¥È¤È¤ÏÊ̤ΤȤ³¤í¤«¤é¤âÍ¿¤¨¤é¤ì¤Æ¤¤¤Þ¤¹"
+
+#~ msgid "ignoring `%s' at end of `-f%s'"
+#~ msgstr "`%s'(`-f%s' ¤Î½ª¤ê¤Ë¤¢¤ë) ¤ò̵»ë¤·¤Þ¤¹"
+
#~ msgid "null format string"
#~ msgstr "¥Õ¥©¡¼¥Þ¥Ã¥Èʸ»úÎó¤¬ null ¤Ç¤¹"
#~ msgid "leaving more files than we entered"
#~ msgstr "Æþ¤Ã¤¿¥Õ¥¡¥¤¥ë¤è¤ê¤â½Ð¤¿¥Õ¥¡¥¤¥ë¤ÎÊý¤¬Â¿¤¯¤Ê¤ê¤Þ¤·¤¿"
+#~ msgid "non hex digit '%c' in universal-character-name"
+#~ msgstr "Èó 16 ¿Ê¿ô '%c' ¤¬ universal-character-name Æâ¤Ë¤¢¤ê¤Þ¤¹"
+
+#~ msgid "universal-character-name on EBCDIC target"
+#~ msgstr "EBCDIC ¤Î¥¿¡¼¥²¥Ã¥È¤Ç `%c' ¤Ë¥æ¥Ë¥Ð¡¼¥µ¥ë¥­¥ã¥é¥¯¥¿Ì¾¤¬»È¤ï¤ì¤Þ¤·¤¿"
+
#~ msgid "universal-character-name used for '%c'"
#~ msgstr "`%c' ¤Ë¥æ¥Ë¥Ð¡¼¥µ¥ë¥­¥ã¥é¥¯¥¿Ì¾¤¬»È¤ï¤ì¤Þ¤·¤¿"
-#~ msgid "invalid universal-character-name"
-#~ msgstr "ÉÔŬÀڤʥæ¥Ë¥Ð¡¼¥µ¥ë¥­¥ã¥é¥¯¥¿Ì¾"
-
#~ msgid "the meaning of `\\x' varies with -traditional"
#~ msgstr "`\\x' ¤Î°ÕÌ£¤Ï -traditional ¤ò¤Ä¤±¤¿¾ì¹ç¤È°Û¤Ê¤ê¤Þ¤¹"
#~ msgid "unknown escape sequence: '\\' followed by char 0x%x"
#~ msgstr "ÉÔÌÀ¤Ê¥¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹: ʸ»ú 0x%x ¤¬¸å¤Ë³¤¯ '\\'"
+#~ msgid "universal-character-name '\\u%04x' not valid in identifier"
+#~ msgstr "¥æ¥Ë¥Ð¡¼¥µ¥ëʸ»ú̾ `\\u%04x' ¤Ï¼±Ê̻ҤÎÃæ¤Ç¤ÏÍ­¸ú¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+
#~ msgid "both 'f' and 'l' suffixes on floating constant"
#~ msgstr "ÉâÆ°¾®¿ôÄê¿ô¤Ë 'f' ¤È 'l' ÀÜÈø¼­¤ÎξÊý¤¬¤¢¤ê¤Þ¤¹"
@@ -21824,6 +22552,9 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "missing white space after number '%.*s'"
#~ msgstr "¿ô»ú '%.*s' ¤Î¸å¤Ë¶õÇò¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+#~ msgid "Ignoring invalid multibyte character"
+#~ msgstr "̵¸ú¤Ê¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»ú¤ò̵»ë¤·¤Þ¤¹"
+
#~ msgid "ISO C forbids `&&'"
#~ msgstr "ISO C ¤Ï `&&' ¤ò¶Ø¤¸¤Þ¤¹"
@@ -21839,9 +22570,6 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "sizeof applied to a void type"
#~ msgstr "sizeof ¤¬ void ·¿¤ËŬÍѤµ¤ì¤Þ¤·¤¿"
-#~ msgid "sizeof applied to an incomplete type"
-#~ msgstr "sizeof ¤¬ÉÔ´°Á´¤Ê·¿¤ËŬÍѤµ¤ì¤Þ¤·¤¿"
-
#~ msgid "wrong type argument to %s"
#~ msgstr "%s ¤Ø¤Î°ú¿ô¤Î·¿¤¬´Ö°ã¤Ã¤Æ¤¤¤Þ¤¹"
@@ -21857,6 +22585,21 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "decrement"
#~ msgstr "¥Ç¥¯¥ê¥á¥ó¥È"
+#~ msgid "ISO C forbids the address of a cast expression"
+#~ msgstr "ISO C ¤Ï¥­¥ã¥¹¥È¼°¤Î¥¢¥É¥ì¥¹É¾²Á¤ò¶Ø¤¸¤Þ¤¹"
+
+#~ msgid "initializer for static variable is not constant"
+#~ msgstr "static ÊÑ¿ô¤Î½é´ü²½»Ò¤¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+
+#~ msgid "initializer for static variable uses complicated arithmetic"
+#~ msgstr "static ÊÑ¿ô¤Î½é´ü²½»Ò¤¬Ê£»¨¤Ê·×»»¤ò»È¤Ã¤Æ¤¤¤Þ¤¹"
+
+#~ msgid "aggregate initializer is not constant"
+#~ msgstr "½¸¹çÂΤνé´ü²½»Ò¤¬Äê¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+
+#~ msgid "aggregate initializer uses complicated arithmetic"
+#~ msgstr "½¸¹çÂΤνé´ü²½»Ò¤ÇÊ£»¨¤Ê·×»»¤ò¹Ô¤Ã¤Æ¤¤¤Þ¤¹"
+
#~ msgid "deprecated initialization of zero-length array"
#~ msgstr "Ťµ 0 ¤Î½é´ü²½¤Ï¿ä¾©¤µ¤ì¤Þ¤»¤ó"
@@ -21875,9 +22618,97 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "execvp %s"
#~ msgstr "execvp %s"
+#~ msgid "open %s"
+#~ msgstr "open %s"
+
+#~ msgid "incompatibilities between object file & expected values"
+#~ msgstr "ξΩ¤·¤Ê¤¤¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤È´üÂÔÃÍ"
+
+#~ msgid ""
+#~ "\n"
+#~ "Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+#~ msgstr ""
+#~ "\n"
+#~ "¥·¥ó¥Ü¥ë¥Æ¡¼¥Ö¥ë #%d ¤ò½èÍý¤·¤Þ¤¹¡¢¥ª¥Õ¥»¥Ã¥È = 0x%.8lx, ¼ïÎà = %s\n"
+
+#~ msgid "string section missing"
+#~ msgstr "ʸ»úÎ󥻥¯¥·¥ç¥ó¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+
+#~ msgid "section pointer missing"
+#~ msgstr "¥»¥¯¥·¥ç¥ó¥Ý¥¤¥ó¥¿¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+
+#~ msgid "no symbol table found"
+#~ msgstr "¥·¥ó¥Ü¥ë¥Æ¡¼¥Ö¥ë¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
+
+#~ msgid ""
+#~ "\n"
+#~ "Updating header and load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "¥Ø¥Ã¥À¤È load ¥³¥Þ¥ó¥É¤ò¹¹¿·¤·¤Þ¤¹¡£\n"
+
+#~ msgid "load command map, %d cmds, new size %ld.\n"
+#~ msgstr "load ¥³¥Þ¥ó¥É¥Þ¥Ã¥×¡¢%d ¸Ä¤Î¥³¥Þ¥ó¥É¡¢¿·¤¿¤Ê¥µ¥¤¥º %ld¡£\n"
+
+#~ msgid ""
+#~ "writing load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "load ¥³¥Þ¥ó¥É¤ò½ñ¤­¹þ¤ß¤Þ¤¹¡£\n"
+#~ "\n"
+
+#~ msgid "close %s"
+#~ msgstr "close %s"
+
+#~ msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
+#~ msgstr "%s ´Ø¿ô, Îΰè %d, ¥ª¥Õ¥»¥Ã¥È = %ld (0x%.8lx)\n"
+
+#~ msgid "bad magic number"
+#~ msgstr "ÉÔÀµ¤Ê¥Þ¥¸¥Ã¥¯¥Ê¥ó¥Ð"
+
+#~ msgid "bad raw header version"
+#~ msgstr "ÉÔÀµ¤ÊÀ¸¤Î¥Ø¥Ã¥À¥Ð¡¼¥¸¥ç¥ó"
+
+#~ msgid "raw header buffer too small"
+#~ msgstr "¾®¤µ¤¹¤®¤ëÀ¸¤Î¥Ø¥Ã¥À¥Ð¥Ã¥Õ¥¡"
+
+#~ msgid "old raw header file"
+#~ msgstr "¸Å¤¤À¸¤Î¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë"
+
+#~ msgid "unknown {de,en}code_mach_o_hdr return value %d"
+#~ msgstr "ÉÔÌÀ¤Ê {de,en}code_mach_o_hdr Ìá¤êÃÍ %d"
+
+#~ msgid "fstat %s"
+#~ msgstr "fstat %s"
+
+#~ msgid "lseek %s 0"
+#~ msgstr "lseek %s 0"
+
+#~ msgid "read %s"
+#~ msgstr "read %s"
+
+#~ msgid "read %ld bytes, expected %ld, from %s"
+#~ msgstr "%ld ¥Ð¥¤¥ÈÆɹþ¤ß¡£%ld (%s ¤«¤é)Æɹþ¤à¤Ï¤º¤Ç¤¹"
+
+#~ msgid "msync %s"
+#~ msgstr "msync %s"
+
+#~ msgid "munmap %s"
+#~ msgstr "munmap %s"
+
+#~ msgid "write %s"
+#~ msgstr "write %s"
+
+#~ msgid "wrote %ld bytes, expected %ld, to %s"
+#~ msgstr "%ld ¥Ð¥¤¥È½ñ¹þ¤ß¡£%ld (%s ¤Ø)½ñ¹þ¤à¤Ï¤º¤Ç¤¹"
+
#~ msgid "Use VAX-C alignment"
#~ msgstr "VAX-C ¥¢¥é¥¤¥ó¥á¥ó¥È¤ò»ÈÍÑ"
+#~ msgid "invalid %%Q value"
+#~ msgstr "̵¸ú¤Ê %%Q ÃÍ"
+
#~ msgid "invalid %%V value"
#~ msgstr "̵¸ú¤Ê %%V ÃÍ"
@@ -22001,9 +22832,6 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "Warn when a function arg is a structure"
#~ msgstr "´Ø¿ô¤Î°ú¿ô¤¬¹½Â¤ÂΤÀ¤Ã¤¿¤é·Ù¹ð¤¹¤ë"
-#~ msgid "argument is a structure"
-#~ msgstr "°ú¿ô¤¬¹½Â¤ÂΤǤ¹"
-
#~ msgid "Register '%c' already specified in allocation order"
#~ msgstr "¥ì¥¸¥¹¥¿ '%c' ¤Ï´û¤Ë³ÎÊݽç¤Ç»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹"
@@ -22052,12 +22880,36 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "Use mcount_ptr for profiling"
#~ msgstr "¥×¥í¥Õ¥¡¥¤¥ë¤Î¤¿¤á¤Ë mcount_ptr ¤òÍøÍѤ¹¤ë"
-#~ msgid "Generate code which uses the FPU"
-#~ msgstr "ÉâÆ°¾®¿ôÅÀ¥æ¥Ë¥Ã¥È¤òÍøÍѤ¹¤ë¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤¤"
+#~ msgid "Use Mingw32 interface"
+#~ msgstr "Mingw32 ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ò»ÈÍѤ¹¤ë"
+
+#~ msgid "Use Cygwin interface"
+#~ msgstr "Cygwin ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ò»ÈÍѤ¹¤ë"
+
+#~ msgid "Use bare Windows interface"
+#~ msgstr "ÁǤΠWindows ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ò»ÈÍѤ¹¤ë"
#~ msgid "The -mlong-double-64 option does not work yet."
#~ msgstr "-mlong-double-64 ¥ª¥×¥·¥ç¥ó¤Ï¤Þ¤ÀÆ°ºî¤·¤Þ¤»¤ó"
+#~ msgid "const objects cannot go in .sdata/.sbss"
+#~ msgstr "const ¥ª¥Ö¥¸¥§¥¯¥È¤Ï .sdata/.sbss ¤ËÃÖ¤±¤Þ¤»¤ó"
+
+#~ msgid "Internal gcc monitor: short-branch(%x)"
+#~ msgstr "ÆâÉô gcc ¥â¥Ë¥¿: ¥·¥ç¡¼¥È¥Ö¥é¥ó¥Á(%x)"
+
+#~ msgid "Internal gcc error: Can't express symbolic location"
+#~ msgstr "ÆâÉô gcc ¥¨¥é¡¼: °ÌÃÖ¤ò¥·¥ó¥Ü¥ëɽ¸½¤Ç¤­¤Þ¤»¤ó"
+
+#~ msgid "argument #%d is a structure"
+#~ msgstr "°ú¿ô #%d ¤Ï¹½Â¤ÂΤǤ¹"
+
+#~ msgid "%R not followed by %B/C/D/E"
+#~ msgstr "%R ¤Î¸å¤Ë %B/C/D/E ¤ÏÃÖ¤±¤Þ¤»¤ó"
+
+#~ msgid "invalid %x/X value"
+#~ msgstr "̵¸ú¤Ê %x/X ÃͤǤ¹"
+
#~ msgid "invalid %H value"
#~ msgstr "̵¸ú¤Ê %H ÃͤǤ¹"
@@ -22070,9 +22922,15 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "invalid %q value"
#~ msgstr "̵¸ú¤Ê %q ÃͤǤ¹"
+#~ msgid "invalid %o value"
+#~ msgstr "̵¸ú¤Ê %o ÃͤǤ¹"
+
#~ msgid "invalid %p value"
#~ msgstr "̵¸ú¤Ê %p ÃͤǤ¹"
+#~ msgid "invalid %s/S value"
+#~ msgstr "̵¸ú¤Ê %s/S ÃͤǤ¹"
+
#~ msgid "invalid %B value"
#~ msgstr "̵¸ú¤Ê %B ÃͤǤ¹"
@@ -22085,18 +22943,33 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "invalid %r value"
#~ msgstr "̵¸ú¤Ê %r ÃͤǤ¹"
+#~ msgid "operand is r0"
+#~ msgstr "¥ª¥Ú¥é¥ó¥É¤Ï r0 ¤Ç¤¹"
+
+#~ msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
+#~ msgstr "-mtrap-large-shift ¤È -mhandle-large-shift ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
+
+#~ msgid "Invalid option `-mshort-data-%s'"
+#~ msgstr "̵¸ú¤Ê¥ª¥×¥·¥ç¥ó `-mshort-data-%s'"
+
+#~ msgid "-mshort-data-%s is too large "
+#~ msgstr "-mshort-data-%s ¤¬Â礭¤¹¤®¤Þ¤¹¡£"
+
+#~ msgid "-mshort-data-%s and PIC are incompatible"
+#~ msgstr "-mshort-data-%s ¤È PIC ¤Ï¶¦Â¸¤Ç¤­¤Þ¤»¤ó"
+
#~ msgid "-mips%d not supported"
#~ msgstr "-mips%d ¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
+#~ msgid "bad value (%s) for -mips switch"
+#~ msgstr "-mips ¥¹¥¤¥Ã¥Á¤ËÂФ¹¤ëÉÔÀµ¤ÊÃÍ (%s)"
+
#~ msgid "-mabi=%s does not support -mips%d"
#~ msgstr "-mabi=%s ¤Ï -mips%d ¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó"
#~ msgid "The -mabi=32 support does not work yet."
#~ msgstr "-mabi=32 ¥µ¥Ý¡¼¥È¤Ï¤Þ¤ÀÆ°ºî¤·¤Þ¤»¤ó"
-#~ msgid "This target does not support the -mabi switch."
-#~ msgstr "¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ï -mabi ¥¹¥¤¥Ã¥Á¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó"
-
#~ msgid "-mcpu=%s does not support -mips%d"
#~ msgstr "-mcpu=%s ¤Ï -mips%d ¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤»¤ó"
@@ -22106,6 +22979,18 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "-mips%d does not support 64 bit gp registers"
#~ msgstr "-mips%d ¤Ï 64 bit gp ¥ì¥¸¥¹¥¿¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤»¤ó"
+#~ msgid "Invalid option `entry%s'"
+#~ msgstr "̵¸ú¤Ê¥ª¥×¥·¥ç¥ó `entry%s'"
+
+#~ msgid "-mentry is only meaningful with -mips-16"
+#~ msgstr "-mentry ¤Ï -mips-16 ¤ò»ØÄꤷ¤¿¤È¤­¤À¤±°ÕÌ£¤ò»ý¤Á¤Þ¤¹"
+
+#~ msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
+#~ msgstr "MIPS ECOFF ·Á¼°¤Ç¤Ï #line ¤ò»ý¤Ä´Ø¿ô¤Ç¤Î¥Õ¥¡¥¤¥ë̾Êѹ¹¤Ïµö²Ä¤µ¤ì¤Þ¤»¤ó"
+
+#~ msgid "fp_offset (%ld) or end_offset (%ld) is less than zero."
+#~ msgstr "fp_offset (%ld) Ëô¤Ï end_offset (%ld) ¤¬¥¼¥í¤è¤ê¤â¾®¤µ¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£"
+
#~ msgid "Use OSF PIC"
#~ msgstr "OSF PIC ¤òÍøÍѤ¹¤ë"
@@ -22118,6 +23003,18 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "Optimize for 3900"
#~ msgstr "3900 ÍѤ˺ÇŬ²½¤¹¤ë"
+#~ msgid "Trap on integer divide overflow"
+#~ msgstr "À°¿ô½ü»»¤Î¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤ò¥È¥é¥Ã¥×¤¹¤ë"
+
+#~ msgid "Don't trap on integer divide overflow"
+#~ msgstr "À°¿ô½ü»»¤Î¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤ò¥È¥é¥Ã¥×¤·¤Ê¤¤"
+
+#~ msgid "Use mips16 entry/exit psuedo ops"
+#~ msgstr "mips16 ¤Î entry/exit µ¿»÷¥ª¥Ú¥é¥ó¥É¤ò»ÈÍѤ¹¤ë"
+
+#~ msgid "Don't use MIPS16 instructions"
+#~ msgstr "MIPS16 Ì¿Îá¤ò»ÈÍѤ·¤Ê¤¤"
+
#~ msgid "optimization turned on"
#~ msgstr "ºÇŬ²½¤òÍ­¸ú¤Ë¤¹¤ë"
@@ -22148,6 +23045,21 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "Disable reorganization pass"
#~ msgstr "ºÆÊÔÀ®¹©Äø¤ò̵¸ú¤Ë¤¹¤ë"
+#~ msgid "invalid %%B value"
+#~ msgstr "̵¸ú¤Ê %%B ÃÍ"
+
+#~ msgid "invalid %%z value"
+#~ msgstr "̵¸ú¤Ê %%z ÃÍ"
+
+#~ msgid "invalid %%Z value"
+#~ msgstr "̵¸ú¤Ê %%Z ÃÍ"
+
+#~ msgid "invalid %%j value"
+#~ msgstr "̵¸ú¤Ê %%j ÃÍ"
+
+#~ msgid "can't have varargs with -mfp-arg-in-fp-regs"
+#~ msgstr "-mfp-arg-in-fp-regs ¤ò»È¤¦¤È²ÄÊѸİú¿ô¤ò»ý¤Æ¤Þ¤»¤ó"
+
#~ msgid "-f%s ignored for AIX (all code is position independent)"
#~ msgstr "AIX ÍÑ¤Ë -f%s ¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿¡ÊÁ´¤Æ¤Î¥³¡¼¥É¤Ï°ÌÃÖÈó°Í¸¤Ç¤¹¡Ë"
@@ -22187,9 +23099,6 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "cannot declare %s to references"
#~ msgstr "%s ¤ò»²¾È¤È¤·¤ÆÀë¸À¤Ç¤­¤Þ¤»¤ó"
-#~ msgid "invalid type: `void &'"
-#~ msgstr "̵¸ú¤Ê·¿: `void &'"
-
#~ msgid "discarding `const' applied to a reference"
#~ msgstr "»²¾È¤ËÍѤ¤¤é¤ì¤¿ `const' ¤Ï¼Î¤Æ¤é¤ì¤Þ¤¹"
@@ -22202,9 +23111,24 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "-fname-mangling-version is no longer supported"
#~ msgstr "-fname-mangling-version ¤Ï¤â¤Ï¤ä¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó"
+#~ msgid "-Wno-strict-prototypes is not supported in C++"
+#~ msgstr "-Wno-strict-prototypes ¤Ï C++ ¤Ç¤Ï¼õ¤±ÉÕ¤±¤é¤ì¤Þ¤»¤ó"
+
#~ msgid "`__alignof__' applied to a bit-field"
#~ msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤ËÂФ·¤ÆŬÍѤµ¤ì¤¿ `__alignof__'"
+#~ msgid "parser may be lost: is there a '{' missing somewhere?"
+#~ msgstr "¹½Ê¸²òÀϴ郎Ì»Ҥˤʤ俤褦¤Ç¤¹: ¤É¤³¤«¤Ç '{' ¤ò˺¤ì¤Æ¤¤¤ë¤Î¤Ç¤Ï¡©"
+
+#~ msgid "too many initialization functions required"
+#~ msgstr "ɬÍפȤµ¤ì¤ë½é´ü²½´Ø¿ô¤Î¿ô¤¬Â¿¤¹¤®¤Þ¤¹"
+
+#~ msgid "(static %s for %s)"
+#~ msgstr "(ÀÅŪ%s: %s ÍÑ)"
+
+#~ msgid "%s:%d: instantiated from here\n"
+#~ msgstr "%s:%d: ¤³¤³¤Ç¼ÂÂ⽤µ¤ì¤Þ¤·¤¿\n"
+
#~ msgid " will be re-ordered to match declaration order"
#~ msgstr " Àë¸À½ç¤È°ìÃפ¹¤ë¤è¤¦¤ËʤÓÂؤ¨¤é¤ì¤Þ¤¹"
@@ -22217,30 +23141,132 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "no base class to initialize"
#~ msgstr "½é´ü²½¤¹¤Ù¤­´ðÄ쥯¥é¥¹¤¬¤¢¤ê¤Þ¤»¤ó"
+#~ msgid "initializer list being treated as compound expression"
+#~ msgstr "½é´ü²½»Ò¥ê¥¹¥È¤¬Ê£¹ç¼°¤È¤·¤Æ¼è¤ê°·¤ï¤ì¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
+
#~ msgid "Do not treat the namespace `std' as a normal namespace"
#~ msgstr "̾Á°¶õ´Ö `std' ¤òÄ̾ï¤Î̾Á°¶õ´Ö¤È¤·¤Æ¼è¤ê°·¤ï¤Ê¤¤"
+#~ msgid "Only emit explicit template instatiations"
+#~ msgstr "ÌÀ¼¨Åª¤Ê¥Æ¥ó¥×¥ì¡¼¥È¼ÂÂβ½¤Î¤ß¤òÀ¸À®¤¹¤ë"
+
+#~ msgid "Recognise and/bitand/bitor/compl/not/or/xor"
+#~ msgstr "and/bitand/bitor/compl/not/or/xor ¤òǧ¼±¤¹¤ë"
+
+#~ msgid "Warn about inconsistent return types"
+#~ msgstr "Ìá¤êÃͤη¿¤È°ìÃפ·¤Ê¤¤¤â¤Î¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
+
+#~ msgid "Warn when a function is declared extern, then inline"
+#~ msgstr "´Ø¿ô¤¬ extern Àë¸À¤µ¤ì¤¿¸å¡¢inline ¤È¤µ¤ì¤¿¾ì¹ç¤Ë·Ù¹ð¤¹¤ë"
+
+#~ msgid "Don't announce deprecation of compiler features"
+#~ msgstr "¿ä¾©¤µ¤ì¤Ê¤¤¥³¥ó¥Ñ¥¤¥é¤Îµ¡Ç½¤ò¹ðÃΤ·¤Ê¤¤"
+
+#~ msgid "type name expected before `&'"
+#~ msgstr "`&' ¤ÎÁ°¤Ë·¿¤Î̾Á°¤¬¤¢¤ë¤Ù¤­¤Ç¤¹"
+
+#~ msgid "semicolon missing after %s declaration"
+#~ msgstr "%s Àë¸À¤Î¸å¤í¤Î¥»¥ß¥³¥í¥ó¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+
#~ msgid "real-valued template parameters when cross-compiling"
#~ msgstr "¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë»þ¤Î¼Â¿ôÃͥƥó¥×¥ì¡¼¥È²¾°ú¿ô"
-#~ msgid "methods cannot be converted to function pointers"
-#~ msgstr "¥á¥½¥Ã¥É¤Ï´Ø¿ô¥Ý¥¤¥ó¥¿¤ËÊÑ´¹¤Ç¤­¤Þ¤»¤ó"
-
#~ msgid "ambiguous request for method pointer `%s'"
#~ msgstr "¥á¥½¥Ã¥É¥Ý¥¤¥ó¥¿ `%s' ¤Ø¤ÎÍ׵᤬ۣËæ¤Ç¤¹"
+#~ msgid "no base or member initializers given following ':'"
+#~ msgstr "´ðÄì¤ä¥á¥ó¥Ð½é´ü²½»Ò¥ê¥¹¥È¤¬ ':' ¤Î¸å¤Ë³¤¤¤Æ¤¤¤Þ¤»¤ó"
+
+#~ msgid "ISO C++ forbids an empty condition for `%s'"
+#~ msgstr "ISO C++ ¤Ï `%s' ¤ËÂФ¹¤ë¶õ¤Î¾ò·ï¤ò¶Ø¤¸¤Þ¤¹"
+
#~ msgid "ISO C++ forbids `&&'"
#~ msgstr "ISO C++ ¤Ï `&&' ¤ò¶Ø¤¸¤Þ¤¹"
+#~ msgid "sigof type specifier"
+#~ msgstr "·¿»ØÄê»Ò¤Î sigof ¤Ç¤¹"
+
+#~ msgid "`sigof' applied to non-aggregate expression"
+#~ msgstr "È󽸹çÂμ°¤ËÂФ·¤ÆŬÍѤµ¤ì¤¿ `sigof'"
+
+#~ msgid "storage class specifier `%s' not allowed after struct or class"
+#~ msgstr "µ­²±¥¯¥é¥¹»ØÄê»Ò `%s' ¤Ï struct ¤ä class ¤Î¸å¤Ë¤Ï»È¤¨¤Þ¤»¤ó"
+
+#~ msgid "type specifier `%s' not allowed after struct or class"
+#~ msgstr "·¿»ØÄê»Ò `%s' ¤Ï struct ¤ä class ¤Î¸å¤Ë¤Ï»È¤¨¤Þ¤»¤ó"
+
+#~ msgid "type qualifier `%s' not allowed after struct or class"
+#~ msgstr "·¿½¤¾þ»Ò `%s' ¤Ï struct ¤ä class ¤Î¸å¤Ë¤Ï»È¤¨¤Þ¤»¤ó"
+
+#~ msgid "no body nor ';' separates two class, struct or union declarations"
+#~ msgstr "ËÜÂΤ¬¤Ê¤¯¡¢class, struct °¿¤¤¤Ï union Àë¸À¤ò¶èÀÚ¤ë ';' ¤â¤¢¤ê¤Þ¤»¤ó"
+
+#~ msgid "multiple access specifiers"
+#~ msgstr "½ÅÊ£¤¹¤ë¥¢¥¯¥»¥¹»ØÄê»Ò"
+
+#~ msgid "multiple `virtual' specifiers"
+#~ msgstr "½ÅÊ£¤¹¤ë `virtual' »ØÄê»Ò"
+
+#~ msgid "missing ';' before right brace"
+#~ msgstr "±¦Â¦¥Ö¥ì¡¼¥¹¤ÎÁ°¤Î ';' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+
+#~ msgid "ISO C++ forbids array dimensions with parenthesized type in new"
+#~ msgstr "ISO C++ ¤Ï new Ãæ¤Ç¤Ï¡¢³ç¸Ì¤Î¤Ä¤¤¤¿ÇÛÎ󼡸µ¤ò¶Ø¤¸¤Þ¤¹"
+
+#~ msgid "ISO C++ forbids label declarations"
+#~ msgstr "ISO C++ ¤Ï¥é¥Ù¥ëÀë¸À¤ò¶Ø¤¸¤Æ¤¤¤Þ¤¹"
+
+#~ msgid "label must be followed by statement"
+#~ msgstr "¥é¥Ù¥ë¤Î¸å¤í¤Ë¤Ïʸ¤¬É¬ÍפǤ¹"
+
+#~ msgid "ISO C++ forbids compound statements inside for initializations"
+#~ msgstr "ISO C++ ½é´ü²½»Ò¤ÎÆâÉô¤Ç¤Ïʣʸ¤¬¶Ø¤¸¤é¤ì¤Æ¤¤¤Þ¤¹"
+
+#~ msgid "possibly missing ')'"
+#~ msgstr "¤ª¤½¤é¤¯ ')' ¤ò˺¤ì¤Æ¤¤¤Þ¤¹"
+
+#~ msgid "type specifier omitted for parameter"
+#~ msgstr "·¿»ØÄê»Ò¤Ï²¾°ú¿ôÍѤ˾Êά¤µ¤ì¤Þ¤·¤¿"
+
#~ msgid "taking dynamic typeid of object with -fno-rtti"
#~ msgstr "-fno-rtti ¤Î»ØÄê¤È°ì½ï¤Ë¥ª¥Ö¥¸¥§¥¯¥È¤ÎưŪ typeid ¤ò¼è¤í¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
+#~ msgid "adjusting pointers for covariant returns"
+#~ msgstr "¶¦ÊÑ(covariant)Ìá¤êÃͤؤΥݥ¤¥ó¥¿¤òÄ´À°¤·¤Þ¤¹"
+
#~ msgid "recoverable compiler error, fixups for virtual function"
#~ msgstr "²óÉü²Äǽ¤Ê¥³¥ó¥Ñ¥¤¥é¤Î¥¨¥é¡¼¡¢²¾ÁÛ´Ø¿ô¤Î½¤Àµ"
+#~ msgid "can't redefine default return value for constructors"
+#~ msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿ÍѤΥǥե©¥ë¥ÈÌá¤êÃͤòºÆÄêµÁ¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
+
#~ msgid " will be re-ordered to precede member initializations"
#~ msgstr " Àè¤Ë¤¢¤ë¥á¥ó¥Ð½é´ü²½»Ò¤ÈʤÓÂؤ¨¤é¤ì¤Þ¤¹"
+#~ msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
+#~ msgstr "¼±ÊÌ»Ò̾ `%s' ¤Ï GNU C++ ÆâÉô¤Î¥Í¡¼¥ß¥ó¥°Àïά¤È¶¥¹ç¤·¤Þ¤¹"
+
+#~ msgid "parse error"
+#~ msgstr "¹½Ê¸²òÀÏ¥¨¥é¡¼"
+
+#~ msgid "parse error at end of saved function text"
+#~ msgstr "ÊݸºÑ¤ß´Ø¿ô¥Æ¥­¥¹¥È¤ÎËöÈø¤Ç¹½Ê¸²òÀÏ¥¨¥é¡¼"
+
+#~ msgid "parse error in method specification"
+#~ msgstr "¥á¥½¥Ã¥É»ÅÍÍÆâ¤Ç¤Î¹½Ê¸²òÀÏ¥¨¥é¡¼"
+
+#~ msgid "function body for constructor missing"
+#~ msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤Î´Ø¿ôËÜÂΤò·ç¤¤¤Æ¤¤¤Þ¤¹"
+
+#~ msgid "%s before `%c'"
+#~ msgstr "%s ¤¬ `%c' ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
+
+#~ msgid "%s before `\\%o'"
+#~ msgstr "%s ¤¬ `\\%o' ¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
+
+#~ msgid "%s before `%s' token"
+#~ msgstr "%s ¤¬ `%s' ¥È¡¼¥¯¥ó¤ÎÁ°¤Ë¤¢¤ê¤Þ¤¹"
+
#~ msgid "`com_interface' only supported with -fvtable-thunks"
#~ msgstr "`com_interface' ¤Ï -fvtable-thunks ¤ò»ØÄꤷ¤¿¤È¤­¤À¤±¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹"
@@ -22250,39 +23276,54 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "ISO C++ forbids applying `sizeof' to type `void' which is an incomplete type"
#~ msgstr "ISO C++ ¤ÏÉÔ´°Á´·¿¤Ç¤¢¤ë `void' ·¿¤Ø¤Î `sizeof' ¤ÎŬÍѤò¶Ø¤¸¤Þ¤¹"
+#~ msgid "sizeof applied to a bit-field"
+#~ msgstr "sizeof ¤¬¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤ËŬÍѤµ¤ì¤Þ¤·¤¿"
+
#~ msgid "invalid reference to NULL ptr, use ptr-to-member instead"
#~ msgstr "NULL ¥Ý¥¤¥ó¥¿¤Ø¤Î̵¸ú¤Ê»²¾È¡¢Âå¤ï¤ê¤Ë¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¤¤Þ¤·¤ç¤¦"
#~ msgid "invalid call to member function needing `this' in static member function scope"
#~ msgstr "ÀÅŪ¥á¥ó¥Ð´Ø¿ô¥¹¥³¡¼¥×Æâ¤Ç¤Ï `this' ¤òÍפ¹¤ë¥á¥ó¥Ð´Ø¿ô¤Î¸Æ¤Ó½Ð¤·¤Ï̵¸ú¤Ç¤¹"
+#~ msgid "parameter type of called function is incomplete"
+#~ msgstr "¸Æ¤Ð¤ì¤¿´Ø¿ô¤Î²¾°ú¿ô¤Î·¿¤¬ÉÔ´°Á´¤Ç¤¹"
+
#~ msgid "ISO C++ forbids using pointer of type `void *' in pointer arithmetic"
#~ msgstr "ISO C++ ¤Ï¥Ý¥¤¥ó¥¿·×»»¤Ë `void *' ·¿¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
#~ msgid "ISO C++ forbids using a pointer-to-function in pointer arithmetic"
#~ msgstr "ISO C++ ¤Ï¥Ý¥¤¥ó¥¿·×»»¤Ë´Ø¿ô¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-#~ msgid "ISO C++ forbids using a pointer to member function in pointer arithmetic"
-#~ msgstr "ISO C++ ¤Ï¥Ý¥¤¥ó¥¿·×»»¤Ë¥á¥ó¥Ð´Ø¿ô¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-
#~ msgid "ISO C++ forbids using pointer to a member in pointer arithmetic"
#~ msgstr "ISO C++ ¤Ï¥Ý¥¤¥ó¥¿·×»»¤Ë¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
-#~ msgid "unary `&'"
-#~ msgstr "ñ¹à¤Î `&'"
+#~ msgid "ISO C++ forbids using pointer to a member in subtraction"
+#~ msgstr "ISO C++ ¤Ï¸º»»¤Ë¥á¥ó¥Ð¤Ø¤Î¥Ý¥¤¥ó¥¿¤ò»È¤¦¤³¤È¤ò¶Ø¤¸¤Þ¤¹"
#~ msgid "return value from function receives multiple initializations"
#~ msgstr "´Ø¿ô¤«¤é¤ÎÌá¤êÃͤ¬Ê£¿ô¤Î½é´ü²½¤ò¼õ¤±¼è¤ê¤Þ¤·¤¿"
+#~ msgid "return-statement with no value, in function declared with a non-void return type"
+#~ msgstr "return ʸ¤¬Ãͤò»ý¤Á¤Þ¤»¤ó¡£´Ø¿ôÀë¸À¤Ç¤ÏÈó void ¤ÎÌá¤êÃͤò»ý¤Á¤Þ¤¹"
+
+#~ msgid "return-statement with a value, in function declared with a void return type"
+#~ msgstr "return ʸ¤¬Ãͤò»ý¤Á¤Þ¤¹¡£´Ø¿ôÀë¸À¤Ç¤ÏÌá¤ê·¿¤¬ void ¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹"
+
#~ msgid "Internal error #%d."
#~ msgstr "ÆâÉô¥¨¥é¡¼: #%d¡£"
#~ msgid "due to the presence of a constructor"
#~ msgstr "¥³¥ó¥¹¥È¥é¥¯¥¿¤¬¤¢¤ë¤³¤È¤Ë¤è¤ë"
+#~ msgid "comma expression used to initialize return value"
+#~ msgstr "¥«¥ó¥Þ±é»»»Ò¤¬Ìá¤êÃͤò½é´ü²½¤¹¤ë¤¿¤á¤Ë»È¤ï¤ì¤Þ¤·¤¿"
+
#~ msgid "ANSI C++ forbids non-constant aggregate initializer expressions"
#~ msgstr "ANSI C++ ¤ÏÄê¿ô¤Ç¤Ê¤¤½¸¹çÂΤνé´ü²½»Ò¼°¤ò¶Ø¤¸¤Þ¤¹"
+#~ msgid "ISO C++ forbids defining types within %s"
+#~ msgstr "ISO C++ ¤Ï %s Ãæ¤Î·¿ÄêµÁ¤ò¶Ø¤¸¤Þ¤¹"
+
#~ msgid "Can't create cross-reference file `%s'"
#~ msgstr "Áê¸ß»²¾È¥Õ¥¡¥¤¥ë `%s' ¤òºî¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó"
@@ -22298,6 +23339,12 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "\"defined\" operator appears during macro expansion"
#~ msgstr "\"defined\" ±é»»»Ò¤¬¥Þ¥¯¥íŸ³«Ãæ¤Ë¸½¤ì¤Þ¤·¤¿"
+#~ msgid "absolute file name in remap_filename"
+#~ msgstr "ÀäÂХѥ¹¥Õ¥¡¥¤¥ë̾¤¬ remap_filename ¤Ë¤¢¤ê¤Þ¤¹"
+
+#~ msgid "%s: Not a directory"
+#~ msgstr "%s: ¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
+
#~ msgid "-include and -imacros cannot be used with -fpreprocessed"
#~ msgstr "-include ¤ä -imacros ¤Ï -fpreprocessed ¤È°ì½ï¤Ë»È¤¦¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
@@ -22307,8 +23354,14 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "Argument missing after %s"
#~ msgstr "%s ¤Î¸å¤í¤Î°ú¿ô¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
-#~ msgid "Number missing after %s"
-#~ msgstr "%s ¤Î¸å¤í¤Î¿ô»ú¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+#~ msgid "Directory name missing after %s"
+#~ msgstr "%s ¤Î¸å¤í¤Î¥Ç¥£¥ì¥¯¥È¥ê̾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+
+#~ msgid "File name missing after %s"
+#~ msgstr "%s ¤Î¸å¤í¤Î¥Õ¥¡¥¤¥ë̾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
+
+#~ msgid "Path name missing after %s"
+#~ msgstr "%s ¤Î¸å¤í¤Î¥Ñ¥¹Ì¾¤ò·ç¤¤¤Æ¤¤¤Þ¤¹"
#~ msgid "GNU CPP version %s (cpplib)"
#~ msgstr "GNU CPP version %s (cpplib)"
@@ -22317,6 +23370,40 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgstr "»È¤¤Êý: %s [¥¹¥¤¥Ã¥Á] ÆþÎÏ ½ÐÎÏ\n"
#~ msgid ""
+#~ "Switches:\n"
+#~ " -include <file> Include the contents of <file> before other files\n"
+#~ " -imacros <file> Accept definition of macros in <file>\n"
+#~ " -iprefix <path> Specify <path> as a prefix for next two options\n"
+#~ " -iwithprefix <dir> Add <dir> to the end of the system include path\n"
+#~ " -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
+#~ " -isystem <dir> Add <dir> to the start of the system include path\n"
+#~ msgstr ""
+#~ "¥¹¥¤¥Ã¥Á:\n"
+#~ " -include <file> ¾¤Î¥Õ¥¡¥¤¥ë¤ÎÁ°¤Ë <file> ¤ÎÆâÍƤò´Þ¤á¤ë\n"
+#~ " -imacros <file> <file> ¤Î¥Þ¥¯¥íÄêµÁ¤ò¼õ¤±Æþ¤ì¤ë\n"
+#~ " -iprefix <path> ¼¡¤ÎÆó¤Ä¤Î¥ª¥×¥·¥ç¥óÍÑ¥×¥ì¥Õ¥£¥¯¥¹¤Ë <path> ¤ò»ØÄê\n"
+#~ " -iwithprefix <dir> <dir> ¤ò¥·¥¹¥Æ¥à include ¥Ñ¥¹¤Î½ª¤ê¤ËÄɲ乤ë\n"
+#~ " -iwithprefixbefore <dir> <dir> ¤ò¥á¥¤¥ó include ¥Ñ¥¹¤Î½ª¤ê¤ËÄɲ乤ë\n"
+#~ " -isystem <dir> <dir> ¤ò¥·¥¹¥Æ¥à include ¥Ñ¥¹¤ÎºÇ½é¤ËÄɲ乤ë\n"
+
+#~ msgid ""
+#~ " -idirafter <dir> Add <dir> to the end of the system include path\n"
+#~ " -I <dir> Add <dir> to the end of the main include path\n"
+#~ " -I- Fine-grained include path control; see info docs\n"
+#~ " -nostdinc Do not search system include directories\n"
+#~ " (dirs specified with -isystem will still be used)\n"
+#~ " -nostdinc++ Do not search system include directories for C++\n"
+#~ " -o <file> Put output into <file>\n"
+#~ msgstr ""
+#~ " -idirafter <dir> <dir> ¤ò¥·¥¹¥Æ¥à include ¥Ñ¥¹¤Î½ª¤ê¤ËÄɲ乤ë\n"
+#~ " -I <dir> <dir> ¤ò¥á¥¤¥ó include ¥Ñ¥¹¤Î½ª¤ê¤ËÄɲ乤ë\n"
+#~ " -I- ¤­¤áºÙ¤«¤Ê include ¥Ñ¥¹À©¸æ -- info ʸ½ñ¤ò»²¾È\n"
+#~ " -nostdinc ¥·¥¹¥Æ¥à include ¥Ç¥£¥ì¥¯¥È¥ê¤òõº÷¤·¤Ê¤¤\n"
+#~ " (-system ¤Ç»ØÄꤵ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Ïõº÷¤µ¤ì¤ë)\n"
+#~ " -nostdinc++ C++ ÍÑ¥·¥¹¥Æ¥à include ¥Ç¥£¥ì¥¯¥È¥ê¤òõº÷¤·¤Ê¤¤\n"
+#~ " -o <file> <file> ¤Ø½ÐÎϤ¹¤ë\n"
+
+#~ msgid ""
#~ " -pedantic Issue all warnings demanded by strict ISO C\n"
#~ " -pedantic-errors Issue -pedantic warnings as errors instead\n"
#~ " -trigraphs Support ISO C trigraphs\n"
@@ -22340,14 +23427,151 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ " -lang-objc++ ÆþÎÏ¥½¡¼¥¹¤ò ObjectiveC++ ¤È¤ß¤Ê¤¹\n"
#~ " -lang-asm ÆþÎÏ¥½¡¼¥¹¤ò¥¢¥»¥ó¥Ö¥ê¸À¸ì¤È¤ß¤Ê¤¹\n"
+#~ msgid ""
+#~ " -std=<std name> Specify the conformance standard; one of:\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999\n"
+#~ " -+ Allow parsing of C++ style features\n"
+#~ " -w Inhibit warning messages\n"
+#~ " -Wtrigraphs Warn if trigraphs are encountered\n"
+#~ " -Wno-trigraphs Do not warn about trigraphs\n"
+#~ " -Wcomment{s} Warn if one comment starts inside another\n"
+#~ msgstr ""
+#~ " -std=<std name> Ŭ¹ç¤µ¤»¤ëɸ½à¤ò»ØÄê -- °Ê²¼¤è¤ê°ì¤Ä\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999\n"
+#~ " -+ C++ ¼°¤Î¹½Ê¸²òÀϤòµö²Ä¤¹¤ë\n"
+#~ " -w ·Ù¹ð¥á¥Ã¥»¡¼¥¸¤òÍÞÀ©¤¹¤ë\n"
+#~ " -Wtrigraphs ¥È¥é¥¤¥°¥é¥Õ¤Ë½Ð¤¯¤ï¤·¤¿¤é·Ù¹ð¤¹¤ë\n"
+#~ " -Wno-trigraphs ¥È¥é¥¤¥°¥é¥Õ¤Ë¤Ä¤¤¤Æ¤Î·Ù¹ð¤ò¹Ô¤Ê¤ï¤Ê¤¤\n"
+#~ " -Wcomment{s} ¥³¥á¥ó¥È¤¬Â¾¤Î¥³¥á¥ó¥ÈÆâ¤Ç»Ï¤Þ¤Ã¤Æ¤¤¤¿¤é·Ù¹ð¤¹¤ë\n"
+
+#~ msgid ""
+#~ " -Wno-comment{s} Do not warn about comments\n"
+#~ " -Wtraditional Warn about features not present in traditional C\n"
+#~ " -Wno-traditional Do not warn about traditional C\n"
+#~ " -Wundef Warn if an undefined macro is used by #if\n"
+#~ " -Wno-undef Do not warn about testing undefined macros\n"
+#~ " -Wimport Warn about the use of the #import directive\n"
+#~ msgstr ""
+#~ " -Wno-comment{s} ¥³¥á¥ó¥È¤Ë´Ø¤¹¤ë·Ù¹ð¤ò¹Ô¤Ê¤ï¤Ê¤¤\n"
+#~ " -Wtraditional ¸½ºß¤È¤Ï°Û¤Ê¤ë¸Å¤¤ C ¤Ç¤Îµ¡Ç½¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë\n"
+#~ " -Wno-traditional ¸Å¤¤ C ¤Ë´Ø¤¹¤ë·Ù¹ð¤ò¹Ô¤Ê¤ï¤Ê¤¤\n"
+#~ " -Wundef ̤ÄêµÁ¤Î¥Þ¥¯¥í¤¬ #if ¤Ç»È¤ï¤ì¤Æ¤¤¤ì¤Ð·Ù¹ð¤¹¤ë\n"
+#~ " -Wno-undef ̤ÄêµÁ¥Þ¥¯¥í¤Îɾ²Á¤Ë´Ø¤¹¤ë·Ù¹ð¤ò¹Ô¤Ê¤ï¤Ê¤¤\n"
+#~ " -Wimport #import ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤ÎÍøÍѤ˴ؤ·¤Æ·Ù¹ð¤¹¤ë\n"
+
+#~ msgid ""
+#~ " -Wno-import Do not warn about the use of #import\n"
+#~ " -Werror Treat all warnings as errors\n"
+#~ " -Wno-error Do not treat warnings as errors\n"
+#~ " -Wsystem-headers Do not suppress warnings from system headers\n"
+#~ " -Wno-system-headers Suppress warnings from system headers\n"
+#~ " -Wall Enable all preprocessor warnings\n"
+#~ msgstr ""
+#~ " -Wno-import #import ¤ÎÍøÍѤ˴ؤ¹¤ë·Ù¹ð¤ò¹Ô¤Ê¤ï¤Ê¤¤\n"
+#~ " -Werror Á´¤Æ¤Î·Ù¹ð¤ò¥¨¥é¡¼¤È¤·¤Æ¼è¤ê°·¤¦\n"
+#~ " -Wno-error ·Ù¹ð¤ò¥¨¥é¡¼¤È¤·¤Æ¼è¤ê°·¤ï¤Ê¤¤\n"
+#~ " -Wsystem-headers ¥·¥¹¥Æ¥à¥Ø¥Ã¥À¤«¤é¤Î·Ù¹ð¤òÍÞÀ©¤·¤Ê¤¤\n"
+#~ " -Wno-system-headers ¥·¥¹¥Æ¥à¥Ø¥Ã¥À¤«¤é¤Î·Ù¹ð¤òÍÞÀ©¤¹¤ë\n"
+#~ " -Wall Á´¤Æ¤Î¥×¥ê¥×¥í¥»¥Ã¥µ·Ù¹ð¤òÍ­¸ú¤Ë¤¹¤ë\n"
+
+#~ msgid ""
+#~ " -M Generate make dependencies\n"
+#~ " -MM As -M, but ignore system header files\n"
+#~ " -MF <file> Write dependency output to the given file\n"
+#~ " -MG Treat missing header file as generated files\n"
+#~ msgstr ""
+#~ " -M make °Í¸´Ø·¸¤òÀ¸À®¤¹¤ë\n"
+#~ " -MM -M ƱÍÍ¡¢Ã¢¤·¥·¥¹¥Æ¥à¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤ò̵»ë¤¹¤ë\n"
+#~ " -MF <file> °Í¸´Ø·¸¤Î½ÐÎϤòÍ¿¤¨¤é¤ì¤¿¥Õ¥¡¥¤¥ë¤Ë½ñ¤­¹þ¤à\n"
+#~ " -MG ¸«¤Ä¤«¤é¤Ê¤¤¥Ø¥Ã¥À¤òÀ¸À®¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤È¤·¤Æ°·¤¦\n"
+
+#~ msgid ""
+#~ " -MP\t\t\t Generate phony targets for all headers\n"
+#~ " -MQ <target> Add a MAKE-quoted target\n"
+#~ " -MT <target> Add an unquoted target\n"
+#~ msgstr ""
+#~ " -MP\t\t\t Á´¤Æ¤Î¥Ø¥Ã¥À¤Ë¤Ä¤¤¤Æ phony ¥¿¡¼¥²¥Ã¥È¤òÀ¸À®¤¹¤ë\n"
+#~ " -MQ <target> MAKE ¤Ç¤Î¥¯¥ª¡¼¥È¤µ¤ì¤¿¥¿¡¼¥²¥Ã¥È¤òÄɲ乤ë\n"
+#~ " -MT <target> ¥¯¥ª¡¼¥È¤µ¤ì¤Ê¤¤¥¿¡¼¥²¥Ã¥È¤òÄɲ乤ë\n"
+
+#~ msgid ""
+#~ " -D<macro> Define a <macro> with string '1' as its value\n"
+#~ " -D<macro>=<val> Define a <macro> with <val> as its value\n"
+#~ " -A<question> (<answer>) Assert the <answer> to <question>\n"
+#~ " -A-<question> (<answer>) Disable the <answer> to <question>\n"
+#~ " -U<macro> Undefine <macro> \n"
+#~ " -v Display the version number\n"
+#~ msgstr ""
+#~ " -D<macro> <macro> ¤òÄêµÁ¤·¡¢¤½¤ÎÃͤòʸ»úÎó¤Î '1' ¤È¤¹¤ë\n"
+#~ " -D<macro>=<val> <macro> ¤òÄêµÁ¤·¡¢¤½¤ÎÃͤò <val> ¤È¤¹¤ë\n"
+#~ " -A<question> (<answer>) <question> ¤Ë <answer> ¤ÈÀ¼ÌÀ¤¹¤ë\n"
+#~ " -A-<question> (<answer>) <question> ¤ò <answer> ¤È¤·¤Ê¤¤\n"
+#~ " -U<macro> <macro> ÄêµÁ¤ò²ò½ü¤¹¤ë\n"
+#~ " -v ¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤òɽ¼¨¤¹¤ë\n"
+
+#~ msgid ""
+#~ " -H Print the name of header files as they are used\n"
+#~ " -C Do not discard comments\n"
+#~ " -dM Display a list of macro definitions active at end\n"
+#~ " -dD Preserve macro definitions in output\n"
+#~ " -dN As -dD except that only the names are preserved\n"
+#~ " -dI Include #include directives in the output\n"
+#~ msgstr ""
+#~ " -H »È¤ï¤ì¤¿¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤òɽ¼¨¤¹¤ë\n"
+#~ " -C ¥³¥á¥ó¥È¤òÇË´þ¤·¤Ê¤¤\n"
+#~ " -dM ºÇ¸å¤ËÍ­¸ú¤Ê¥Þ¥¯¥íÄêµÁ¥ê¥¹¥È¤òɽ¼¨¤¹¤ë\n"
+#~ " -dD ½ÐÎϤ˥ޥ¯¥íÄêµÁ¤òÊݸ¤¹¤ë\n"
+#~ " -dN -dD ¤ÈƱÍͤÀ¤¬¡¢Ì¾Á°¤À¤±¤òÊݸ¤¹¤ë\n"
+#~ " -dI #include ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤ò½ÐÎϤ˴ޤá¤ë\n"
+
+#~ msgid ""
+#~ " -fpreprocessed Treat the input file as already preprocessed\n"
+#~ " -ftabstop=<number> Distance between tab stops for column reporting\n"
+#~ " -P Do not generate #line directives\n"
+#~ " -$ Do not allow '$' in identifiers\n"
+#~ " -remap Remap file names when including files.\n"
+#~ " --version Display version information\n"
+#~ " -h or --help Display this information\n"
+#~ msgstr ""
+#~ " -fpreprocessed ÆþÎÏ¥Õ¥¡¥¤¥ë¤ò´û¤Ë¥×¥ê¥×¥í¥»¥¹ºÑ¤È¤·¤Æ°·¤¦\n"
+#~ " -ftabstop=<number> ¥«¥é¥à¤Î¥¿¥Ö´Ö³Ö¤òÊó¹ð¤¹¤ë\n"
+#~ " -P #line ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤òÀ¸À®¤·¤Ê¤¤\n"
+#~ " -$ ¼±Ê̻ҤǤΠ'$' ¤òµö²Ä¤·¤Ê¤¤\n"
+#~ " -remap ¥Õ¥¡¥¤¥ë¥¤¥ó¥¯¥ë¡¼¥É»þ¤Ë¥Õ¥¡¥¤¥ë̾¤òºÆ¥Þ¥Ã¥×¤¹¤ë\n"
+#~ " --version ¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤¹¤ë\n"
+#~ " -h or --help ¤³¤Î¾ðÊó¤òɽ¼¨¤¹¤ë\n"
+
+#~ msgid "trigraph ??%c converted to %c"
+#~ msgstr "¥È¥é¥¤¥°¥é¥Õ ??%c ¤Ï %c ¤ËÊÑ´¹¤µ¤ì¤Þ¤·¤¿"
+
+#~ msgid "trigraph ??%c ignored"
+#~ msgstr "¥È¥é¥¤¥°¥é¥Õ ??%c ¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿"
+
+#~ msgid "backslash and newline separated by space"
+#~ msgstr "¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤È²þ¹Ô¤¬¶õÇò¤Çʬ³ä¤µ¤ì¤Þ¤·¤¿"
+
+#~ msgid "backslash-newline at end of file"
+#~ msgstr "¥Õ¥¡¥¤¥ë¤Î½ª¤ê¤Ë¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å-²þ¹Ô¤¬¤¢¤ê¤Þ¤¹"
+
+#~ msgid "\"/*\" within comment"
+#~ msgstr "¥³¥á¥ó¥ÈÆâ¤Ë \"/*\" ¤¬¤¢¤ê¤Þ¤¹"
+
+#~ msgid "%s in preprocessing directive"
+#~ msgstr "¥×¥ê¥×¥í¥»¥¹Ì¿ÎáÃæ¤Ë %s ¤¬¤¢¤ê¤Þ¤¹"
+
+#~ msgid "'$' character(s) in identifier"
+#~ msgstr "'$' ʸ»ú¤¬¼±Ê̻ҤËÆþ¤Ã¤Æ¤¤¤Þ¤¹"
+
#~ msgid "possible start of unterminated string literal"
#~ msgstr "½ªÃ¼¤Î¤Ê¤¤Ê¸»úÎó¥ê¥Æ¥é¥ë¤Î¿äÄ곫»Ï°ÌÃÖ"
#~ msgid "multi-line string literals are deprecated"
#~ msgstr "Ê£¿ô¹Ôʸ»úÎó¥ê¥Æ¥é¥ë¤Ï¿ä¾©¤µ¤ì¤Þ¤»¤ó"
-#~ msgid "directives may not be used inside a macro argument"
-#~ msgstr "¥Þ¥¯¥í°ú¿ôÆâ¤Ç¥Ç¥£¥ì¥¯¥È¥ê¤ò»È¤¦¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
+#~ msgid "no newline at end of file"
+#~ msgstr "¥Õ¥¡¥¤¥ëËöÈø¤Ë²þ¹Ô¤¬¤¢¤ê¤Þ¤»¤ó"
#~ msgid "# followed by integer"
#~ msgstr "À°¿ô¤¬ # ¤Ë³¤¤¤Æ¤¤¤Þ¤¹"
@@ -22355,39 +23579,115 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "attempt to push file buffer with contexts stacked"
#~ msgstr "¥¹¥¿¥Ã¥¯¤µ¤ì¤¿¥³¥ó¥Æ¥¯¥¹¥È¤È°ì½ï¤Ë¥Õ¥¡¥¤¥ë¥Ð¥Ã¥Õ¥¡¤ò push ¤·¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹"
+#~ msgid "#import is obsolete, use an #ifndef wrapper in the header file"
+#~ msgstr "#import ¤Ï¸Å¤¤É½¸½¤Ç¤¹. ¥Ø¥Ã¥À¥Õ¥¡¥¤¥ëÃæ¤Ç #ifndef ¤Î¥é¥Ã¥Ñ¡¼¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤"
+
#~ msgid "file \"%s\" left but not entered"
#~ msgstr "¥Õ¥¡¥¤¥ë \"%s\" ¤«¤é½Ð¤Þ¤·¤¿¤¬Æþ¤Ã¤Æ¤¤¤Þ¤»¤ó"
#~ msgid "expected to return to file \"%s\""
#~ msgstr "¥Õ¥¡¥¤¥ë \"%s\" ¤ËÌá¤ë¤Ï¤º¤Ç¤·¤¿"
+#~ msgid "expected to return to line number %u"
+#~ msgstr "¹ÔÈÖ¹æ %u ¤ËÌá¤ë¤Ï¤º¤Ç¤·¤¿"
+
#~ msgid "header flags for \"%s\" have changed"
#~ msgstr "\"%s\" ¤Î¥Ø¥Ã¥À¥Õ¥é¥°¤¬Êѹ¹¤µ¤ì¤Þ¤·¤¿"
+#~ msgid "#pragma once is obsolete"
+#~ msgstr "#pragma once ¤Ï¤â¤¦»È¤ï¤ì¤Æ¤¤¤Þ¤»¤ó"
+
+#~ msgid "the conditional began here"
+#~ msgstr "¤½¤Î¾ò·ï¤Ï¤³¤³¤«¤é»Ï¤Þ¤ê¤Þ¤¹"
+
#~ msgid "<stdin>"
#~ msgstr "<ɸ½àÆþÎÏ>"
+#~ msgid "unterminated #%s"
+#~ msgstr "½ªÃ¼¤Î¤Ê¤¤ #%s"
+
#~ msgid "file \"%s\" entered but not left"
#~ msgstr "¥Õ¥¡¥¤¥ë \"%s\" ¤ËÆþ¤ê¤Þ¤·¤¿¤¬½Ð¤Þ¤»¤ó¤Ç¤·¤¿"
+#~ msgid "\"%s\" redefined"
+#~ msgstr "\"%s\" ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿"
+
+#~ msgid "this is the location of the previous definition"
+#~ msgstr "¤³¤³¤¬°ÊÁ°¤ÎÀë¸À¤¬¤¢¤ë°ÌÃ֤Ǥ¹"
+
#~ msgid "Invalid option %s"
#~ msgstr "̵¸ú¤Ê¥ª¥×¥·¥ç¥ó %s"
#~ msgid "%s:%d: warning: "
#~ msgstr "%s:%d: ·Ù¹ð: "
-#~ msgid "%s: warning: "
-#~ msgstr "%s: ·Ù¹ð: "
+#~ msgid "((anonymous))"
+#~ msgstr "((̵̾))"
+
+#~ msgid "%s: warnings being treated as errors\n"
+#~ msgstr "%s: ·Ù¹ð¤Ï¥¨¥é¡¼¤È¤·¤Æ¼è¤ê°·¤ï¤ì¤Þ¤¹\n"
+
+#~ msgid "At top level:"
+#~ msgstr "¥È¥Ã¥×¥ì¥Ù¥ë:"
+
+#~ msgid "In method `%s':"
+#~ msgstr "¥á¥½¥Ã¥É `%s' Æâ:"
+
+#~ msgid ""
+#~ "Please submit a full bug report,\n"
+#~ "with preprocessed source if appropriate.\n"
+#~ "See %s for instructions.\n"
+#~ msgstr ""
+#~ "´°Á´¤Ê¥Ð¥°Êó¹ð¤òÁ÷¤Ã¤Æ²¼¤µ¤¤¡£\n"
+#~ "ŬÀڤʤé¤Ð¥×¥ê¥×¥í¥»¥¹¸å¤Î¥½¡¼¥¹¤ò¤Ä¤±¤Æ¤¯¤À¤µ¤¤¡£\n"
+#~ "%s ¤ò¸«¤ì¤ÐÊýË¡¤¬½ñ¤¤¤Æ¤¢¤ê¤Þ¤¹¡£\n"
+
+#~ msgid "In file included from %s:%d"
+#~ msgstr "%s:%d ¤«¤é include ¤µ¤ì¤¿¥Õ¥¡¥¤¥ëÆâ"
+
+#~ msgid ""
+#~ ",\n"
+#~ " from %s:%d"
+#~ msgstr ""
+#~ ",\n"
+#~ " %s:%d ¤«¤é"
+
+#~ msgid "internal regno botch: regno = %d\n"
+#~ msgstr "ÆâÉôŪ¤Ë regno ¤Î½èÍý¤¬ÊÑ: regno = %d\n"
+
+#~ msgid "can't get current directory"
+#~ msgstr "¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¤ò¼èÆÀ¤Ç¤­¤Þ¤»¤ó"
-#~ msgid "sorry, not implemented: "
-#~ msgstr "»ÄÇ°¤Ê¤¬¤é¸«¼ÂÁõ¤Ç¤¹: "
+#~ msgid "unsupported wide integer operation"
+#~ msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¥ï¥¤¥ÉÀ°¿ô±é»»"
#~ msgid "support non-32-bit machines better as of version 0.6."
#~ msgstr "g77 ¤Ï¤¤¤º¤ì version 0.6 ƱÍͤËÈó 32 ¥Ó¥Ã¥Èµ¡¤Ç¤â¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤¹"
+#~ msgid "Directory name must immediately follow -I"
+#~ msgstr "¥Ç¥¤¥ì¥¯¥È¥ê̾¤Ï -I ¤Î¤¹¤°¸å¤í¤Ë¤Ä¤±¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
+
+#~ msgid "Program does not use Unix-f77 dialectal features"
+#~ msgstr "¥×¥í¥°¥é¥à¤¬ Unix-f77 Êý¸À¤Îµ¡Ç½¤ò»È¤Ã¤Æ¤¤¤Ê¤¤"
+
+#~ msgid "Disable the appending of underscores to externals"
+#~ msgstr "³°ÉôÊÑ¿ô¤Ë¥¢¥ó¥À¡¼¥¹¥³¥¢¤òÉÕ¤±Â­¤µ¤Ê¤¤"
+
+#~ msgid "Fortran-specific form of -fbounds-check"
+#~ msgstr "Fortran ¸ÇÍ­¤Î -fbounds-check ¤Î·Á¼°"
+
+#~ msgid "Add a directory for INCLUDE searching"
+#~ msgstr "INCLUDE õº÷ÍѤΥǥ£¥ì¥¯¥È¥ê¤òÄɲ乤ë"
+
+#~ msgid "Set the maximum line length"
+#~ msgstr "¹Ô¤ÎŤµ¤ÎºÇÂçÃͤòÀßÄꤹ¤ë"
+
#~ msgid "the meaning of `\\a' varies with -traditional"
#~ msgstr "-traditional ¤Ç¤Ï `\\a' ¤Î°ÕÌ£¤¬°Û¤Ê¤ê¤Þ¤¹"
+#~ msgid "ignoring pragma: %s"
+#~ msgstr "pragma ¤ò̵»ë¤·¤Þ¤¹: %s"
+
#~ msgid "output_operand: %s"
#~ msgstr "output_operand: %s"
@@ -22406,12 +23706,30 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "gcov [-b] [-v] [-n] [-l] [-f] [-o OBJDIR] file\n"
#~ msgstr "gcov [-b] [-v] [-n] [-l] [-f] [-o OBJDIR] ¥Õ¥¡¥¤¥ë\n"
+#~ msgid "Could not open basic block file %s.\n"
+#~ msgstr "´ðËÜ¥Ö¥í¥Ã¥¯¥Õ¥¡¥¤¥ë %s ¤ò³«¤±¤Þ¤»¤ó¤Ç¤·¤¿¡£\n"
+
+#~ msgid "Could not open data file %s.\n"
+#~ msgstr "¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë %s ¤ò³«¤¯¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿¡£\n"
+
+#~ msgid "Assuming that all execution counts are zero.\n"
+#~ msgstr "Á´¼Â¹Ô¿ô¤¬¥¼¥í¤Ç¤¢¤ë¤È²¾Äꤷ¤Þ¤¹¡£\n"
+
+#~ msgid "Could not open program flow graph file %s.\n"
+#~ msgstr "¥×¥í¥°¥é¥à¥Õ¥í¡¼¥Õ¥¡¥¤¥ë %s ¤ò³«¤±¤Þ¤»¤ó¤Ç¤·¤¿¡£\n"
+
+#~ msgid "No executable code associated with file %s.\n"
+#~ msgstr "¥Õ¥¡¥¤¥ë %s ¤Ë·ë¤ÓÉÕ¤¯¼Â¹Ô¥³¡¼¥É¤¬¤¢¤ê¤Þ¤»¤ó¡£\n"
+
#~ msgid ".da file contents exhausted too early\n"
#~ msgstr ".da ¥Õ¥¡¥¤¥ë¤ÎÆâÍƤò¤¢¤Þ¤ê¤ËÁ᤯»È¤¤ÀڤäƤ·¤Þ¤¤¤Þ¤·¤¿\n"
#~ msgid "%6.2f%% of %d source lines executed in function %s\n"
#~ msgstr "%6.2f%%(%d ¹ÔÃæ) ¤Î¥½¡¼¥¹¹Ô¤¬´Ø¿ô %s ¤Ç¼Â¹Ô¤µ¤ì¤Þ¤·¤¿\n"
+#~ msgid "No executable source lines in function %s\n"
+#~ msgstr "´Ø¿ô %s ¤Ë¼Â¹Ô²Äǽ¤Ê¥½¡¼¥¹¹Ô¤¬¤¢¤ê¤Þ¤»¤ó\n"
+
#~ msgid "%6.2f%% of %d branches executed in function %s\n"
#~ msgstr "%6.2f%%(%d ËÜÃæ) ¤Î¥Ö¥é¥ó¥Á¤¬´Ø¿ô %s Æâ¤Ç¼Â¹Ô¤µ¤ì¤Þ¤·¤¿\n"
@@ -22424,11 +23742,38 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "%6.2f%% of %d calls executed in function %s\n"
#~ msgstr "%6.2f%%(%d ²ó) ¤Î¸Æ¤Ó½Ð¤·¤¬´Ø¿ô %s ¤Ç¼Â¹Ô¤µ¤ì¤Þ¤·¤¿\n"
+#~ msgid "didn't use all bb entries of graph, function %s\n"
+#~ msgstr "¥°¥é¥Õ¤Î bb ¥¨¥ó¥È¥ê¤Î°ìÉô¤·¤«»È¤¤¤Þ¤»¤ó¤Ç¤·¤¿¡¢´Ø¿ô %s\n"
+
+#~ msgid "block_num = %ld, num_blocks = %d\n"
+#~ msgstr "¥Ö¥í¥Ã¥¯¿ô = %ld¡¢ÈÖ¹æ¥Ö¥í¥Ã¥¯ = %d\n"
+
+#~ msgid "ERROR: too many basic blocks in .bb file %s\n"
+#~ msgstr "¥¨¥é¡¼: .bb ¥Õ¥¡¥¤¥ë %s ¤Ë´ðËÜ¥Ö¥í¥Ã¥¯¤¬Â¿¤¹¤®¤Þ¤¹\n"
+
+#~ msgid "%6.2f%% of %d source lines executed in file %s\n"
+#~ msgstr "%6.2f%%(%d ¹ÔÃæ) ¤Î¥½¡¼¥¹¹Ô¤¬¥Õ¥¡¥¤¥ë %s ¤Ç¼Â¹Ô¤µ¤ì¤Þ¤·¤¿\n"
+
+#~ msgid "%6.2f%% of %d branches executed in file %s\n"
+#~ msgstr "%6.2f%%(%d ËÜÃæ) ¤Î¥Ö¥é¥ó¥Á¤¬¥Õ¥¡¥¤¥ë %s ¤Ç¼Â¹Ô¤µ¤ì¤Þ¤·¤¿\n"
+
+#~ msgid "%6.2f%% of %d branches taken at least once in file %s\n"
+#~ msgstr "%6.2f%%(%d ËÜÃæ) ¤Î¥Ö¥é¥ó¥Á¤¬¾¯¤Ê¤¯¤È¤â°ì²ó¤Ï¥Õ¥¡¥¤¥ë %s ¤Ç¼õ¼è¤é¤ì¤Þ¤·¤¿\n"
+
+#~ msgid "%6.2f%% of %d calls executed in file %s\n"
+#~ msgstr "%6.2f%%(%d ²óÃæ) ¤Î¸Æ¤Ó½Ð¤·¤¬¥Õ¥¡¥¤¥ë %s Æâ¤Ç¼Â¹Ô¤µ¤ì¤Þ¤·¤¿\n"
+
+#~ msgid "Could not open source file %s.\n"
+#~ msgstr "¥½¡¼¥¹¥Õ¥¡¥¤¥ë %s ¤ò³«¤±¤Þ¤»¤ó¤Ç¤·¤¿.\n"
+
#~ msgid "call %d returns = %d%%\n"
#~ msgstr "¸Æ¤Ó½Ð¤· %d ¤ÎÌá¤ê = %d%%\n"
-#~ msgid "branch %d taken = %d%%\n"
-#~ msgstr "¥Ö¥é¥ó¥Á %d ¼õÍý = %d%%\n"
+#~ msgid "branch %d taken = %d\n"
+#~ msgstr "¥Ö¥é¥ó¥Á %d ¼õÍý = %d\n"
+
+#~ msgid "Unexpected EOF while reading source file %s.\n"
+#~ msgstr "¥½¡¼¥¹¥Õ¥¡¥¤¥ë %s ¤òÆɤ߹þ¤ßÃæ¤Ëͽ´ü¤»¤Ì EOF.\n"
#~ msgid "Premature end of input file %s"
#~ msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë %s ¤Î½ª¤ê¤Ë㤹¤ë¤Î¤¬Á᤹¤®¤Þ¤¹"
@@ -22436,6 +23781,9 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "can't to open %s"
#~ msgstr "%s ¤ò open ¤Ç¤­¤Þ¤»¤ó"
+#~ msgid "Disable automatic array bounds checking"
+#~ msgstr "¼«Æ°Åª¤ÊÇÛÎó¶­³¦¸¡ºº¤ò¹Ô¤ï¤Ê¤¤"
+
#~ msgid "Make is_compiled_class return 1"
#~ msgstr "is_compiled_class ¤¬ 1 ¤òÊÖ¤¹¤è¤¦¤Ë¤¹¤ë"
@@ -22451,8 +23799,20 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "Don't put synchronization structure in each object"
#~ msgstr "Ʊ´ü¹½Â¤ÂΤò³Æ¥ª¥Ö¥¸¥§¥¯¥È¤ËÁȤßÆþ¤ì¤Ê¤¤"
-#~ msgid "Set class path and suppress system path"
-#~ msgstr "¥¯¥é¥¹¥Ñ¥¹¤òÀßÄꤷ¤Æ¥·¥¹¥Æ¥à¥Ñ¥¹¤ò±£¤¹"
+#~ msgid "Set class path"
+#~ msgstr "¥¯¥é¥¹¥Ñ¥¹¤òÀßÄꤹ¤ë"
+
+#~ msgid "Choose class whose main method should be used"
+#~ msgstr "main ¥á¥½¥Ã¥É¤¬»È¤ï¤ì¤ë¤Ù¤­¥¯¥é¥¹¤òÁªÂò¤¹¤ë"
+
+#~ msgid "Choose input encoding (default is UTF-8)"
+#~ msgstr "ÆþÎÏ¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤òÁªÂò¤¹¤ë(¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï UTF-8)"
+
+#~ msgid "Add directory to class path"
+#~ msgstr "¥¯¥é¥¹¥Ñ¥¹¤Ë¥Ç¥£¥ì¥¯¥È¥ê¤òÄɲ乤ë"
+
+#~ msgid "Directory where class files should be written"
+#~ msgstr "¥¯¥é¥¹¥Õ¥¡¥¤¥ë¤¬½ñ¤­¹þ¤Þ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê"
#~ msgid "Can't specify array dimension in a declaration"
#~ msgstr "ÇÛÎó¤Î¼¡¸µ¤òÀë¸À¤Ç»ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
@@ -22466,15 +23826,33 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "no class name specified as argument to -fconstant-string-class"
#~ msgstr "-fconstant-string-class ¤Ë°ú¿ô¤È¤·¤Æ»ØÄꤵ¤ì¤¿¥¯¥é¥¹¤¬¤¢¤ê¤Þ¤»¤ó"
+#~ msgid "`%s' cannot be statically allocated"
+#~ msgstr "`%s' ¤òÀÅŪ¤Ë³ÎÊݤǤ­¤Þ¤»¤ó"
+
+#~ msgid "cannot find class (factory) method."
+#~ msgstr "¥¯¥é¥¹ (factory) ¥á¥½¥Ã¥É¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó"
+
+#~ msgid "return type for `%s' defaults to id"
+#~ msgstr "`%s' ¤ÎÌá¤êÃͤη¿¤Ï¥Ç¥Õ¥©¥ë¥È¤Î id ¤È¤·¤Þ¤¹"
+
+#~ msgid "return type defaults to id"
+#~ msgstr "Ìá¤êÃͤη¿¤ò¥Ç¥Õ¥©¥ë¥È¤Î id ¤È¤·¤Þ¤¹"
+
+#~ msgid "cannot find method."
+#~ msgstr "¥á¥½¥Ã¥É¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¡£"
+
+#~ msgid "duplicate definition of class method `%s'."
+#~ msgstr "¥¯¥é¥¹¥á¥½¥Ã¥É `%s' ¤ÎÄêµÁ¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£"
+
+#~ msgid "duplicate declaration of instance method `%s'."
+#~ msgstr "¥¤¥ó¥¹¥¿¥ó¥¹¥á¥½¥Ã¥É `%s' ¤ÎÀë¸À¤¬½ÅÊ£¤·¤Æ¤¤¤Þ¤¹¡£"
+
#~ msgid "syntax error at '@' token"
#~ msgstr "'@' ¥È¡¼¥¯¥ó¤Çʸˡ¥¨¥é¡¼"
#~ msgid "Arc profiling: some edge counts were bad."
#~ msgstr "¸Ì(arc)¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°: ´ö¤Ä¤«¤Î edge ¥«¥¦¥ó¥È¤ÏÉÔÀµ¤Ç¤¹¡£"
-#~ msgid "conversion from NaN to unsigned int"
-#~ msgstr "NaN ¤«¤éÉä¹ç̵¤·À°¿ô¤Ø¤ÎÊÑ´¹¤Ç¤¹"
-
#~ msgid "floating point overflow"
#~ msgstr "ÉâÆ°¾®¿ôÅÀ¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿"
@@ -22490,9 +23868,6 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "%s: function singularity"
#~ msgstr "%s: ´Ø¿ô¤Îñ°ìÀ­"
-#~ msgid "%s: overflow range error"
-#~ msgstr "%s: ¥ª¡¼¥Ð¡¼¥Õ¥í¡¼ÈÏ°Ï¥¨¥é¡¼"
-
#~ msgid "%s: underflow range error"
#~ msgstr "%s: ¥¢¥ó¥À¡¼¥Õ¥í¡¼ÈÏ°Ï¥¨¥é¡¼"
@@ -22520,48 +23895,189 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "\"%s\" and \"%s\" identical in first %d characters"
#~ msgstr "\"%s\" ¤È \"%s\" ¤ÏºÇ½é¤Î %d ʸ»ú¤¬Á´¤¯Æ±¤¸¤Ç¤¹"
+#~ msgid "Generate STABS format debug info"
+#~ msgstr "STABS ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#~ msgid "Generate extended STABS format debug info"
+#~ msgstr "³ÈÄ¥ STABS ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#~ msgid "Generate DWARF-1 format debug info"
+#~ msgstr "DWARF-1 ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#~ msgid "Generate extended DWARF-1 format debug info"
+#~ msgstr "³ÈÄ¥ DWARF-1 ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#~ msgid "Generate DWARF-2 debug info"
+#~ msgstr "DWARF-2 ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#~ msgid "Generate XCOFF format debug info"
+#~ msgstr "XCOFF ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#~ msgid "Generate extended XCOFF format debug info"
+#~ msgstr "³ÈÄ¥ XCOFF ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#~ msgid "Generate COFF format debug info"
+#~ msgstr "COFF ·Á¼°¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òÀ¸À®¤¹¤ë"
+
+#~ msgid "Consider all mem refs through pointers as volatile"
+#~ msgstr "¥Ý¥¤¥ó¥¿·Ðͳ¤Î¥á¥â¥ê»²¾È¤òÁ´¤Æ volatile ¤È¤ß¤Ê¤¹"
+
+#~ msgid "Consider all mem refs to global data to be volatile"
+#~ msgstr "Âç°è¥Ç¡¼¥¿¤Ø¤Î¥á¥â¥ê»²¾È¤òÁ´¤Æ volatile ¤È¤ß¤Ê¤¹"
+
+#~ msgid "Consider all mem refs to static data to be volatile"
+#~ msgstr "ÀÅŪ¥Ç¡¼¥¿¤Ø¤Î¥á¥â¥ê»²¾È¤òÁ´¤Æ volatile ¤È¤ß¤Ê¤¹"
+
+#~ msgid "Integrate simple functions into their callers"
+#~ msgstr "ñ½ã¤Ê´Ø¿ô¤ò¸Æ¤Ó½Ð¤·Â¦¤ËÅý¹ç¤¹¤ë"
+
#~ msgid "Pretend that host and target use the same FP format"
#~ msgstr "¥Û¥¹¥È¤È¥¿¡¼¥²¥Ã¥È¤¬Æ±¤¸ÉâÆ°¾®¿ô·Á¼°¤ò»È¤¦¿¶¤ëÉñ¤¤¤ò¤µ¤»¤ë"
#~ msgid "Improve FP speed by violating ANSI & IEEE rules"
#~ msgstr "ANSI & IEEE µ¬Â§¤òÇˤäÆÉâÆ°¾®¿ô¤Î®ÅÙ¤ò²þÁ±¤¹¤ë"
+#~ msgid "Output GNU ld formatted global initialisers"
+#~ msgstr "GNU ld ·Á¼°¤ÎÂç°è½é´ü²½»Ò¤ò½ÐÎϤ¹¤ë"
+
#~ msgid "Generate code to check every memory access"
#~ msgstr "³Æ¥á¥â¥ê¥¢¥¯¥»¥¹¤ò¸¡½Ð¤¹¤ë¥³¡¼¥É¤òÀ¸À®¤¹¤ë"
#~ msgid "Add a prefix to all function names"
#~ msgstr "Á´¤Æ¤Î´Ø¿ô̾¤ËÀÜƬ¼­¤òÄɲ乤ë"
+#~ msgid "Enable dead code elimination"
+#~ msgstr "¥Ç¥Ã¥É¥³¡¼¥É¤Î½üµî¤ò¹Ô¤Ê¤¦"
+
+#~ msgid "Compile just for ISO C89"
+#~ msgstr "ISO C89 ÍѤ˥³¥ó¥Ñ¥¤¥ë¤¹¤ë"
+
#~ msgid "Do not promote floats to double if using -traditional"
#~ msgstr "-traditional »ÈÍÑ»þ¤Ë¤Ï¡¢ÉâÆ°¾®¿ô¤Ë´Ø¤· float ¤«¤é double ¤Ë³Ê¾å¤²¤·¤Ê¤¤"
+#~ msgid "Determine language standard"
+#~ msgstr "¸À¸ì¤Îɸ½à¤ò·èÄꤹ¤ë"
+
+#~ msgid "Make bitfields by unsigned by default"
+#~ msgstr "¥Ó¥Ã¥È¥Õ¥£¡¼¥ë¥É¤ò¥Ç¥Õ¥©¥ë¥È¤ÇÉä¹ç̵¤·¤È¤¹¤ë"
+
#~ msgid "Attempt to support traditional K&R style C"
#~ msgstr "¸Å¤¤ K&R ¼°¤Î C ¤Î¥µ¥Ý¡¼¥È¤ò»î¤ß¤ë"
+#~ msgid "Allow different types as args of ? operator"
+#~ msgstr "? ±é»»»Ò¤Î°ú¿ô¤È¤·¤Æ°Û¤Ê¤Ã¤¿·¿¤òµöÍƤ¹¤ë"
+
+#~ msgid "Allow the use of $ inside identifiers"
+#~ msgstr "¼±ÊÌ»ÒÃæ¤Ç¤Î $ ¤Î»ÈÍѤòµöÍƤ¹¤ë"
+
+#~ msgid "Use the smallest fitting integer to hold enums"
+#~ msgstr "Îóµó·¿¤¬ÊÝ»ý¤Ç¤­¤ëºÇ¾®¤ÎÀ°¿ô·¿¤ò»ÈÍѤ¹¤ë"
+
+#~ msgid "Enable most warning messages"
+#~ msgstr "Ëؤó¤É¤Î·Ù¹ð¥á¥Ã¥»¡¼¥¸¤òÍ­¸ú¤Ë¤¹¤ë"
+
+#~ msgid "Warn if nested comments are detected"
+#~ msgstr "Æþ¤ì»Ò¤Ë¤Ê¤Ã¤¿¥³¥á¥ó¥È¤ò¸¡½Ð¤·¤¿¤È¤­¤Ë·Ù¹ð¤¹¤ë"
+
+#~ msgid "Don't warn about too many arguments to format functions"
+#~ msgstr "format ´Ø¿ô¤Ø¤Î¿¤¹¤®¤ë°ú¿ô¤Ë´Ø¤¹¤ë·Ù¹ð¤·¤Ê¤¤"
+
+#~ msgid "Warn about non-string-literal format strings"
+#~ msgstr "Èóʸ»úÎó¥ê¥Æ¥é¥ë¤Î format ʸ»úÎó¤Ë¤Ä¤¤¤Æ·Ù¹ð¤¹¤ë"
+
+#~ msgid "Warn about constructs whose meaning change in ISO C"
+#~ msgstr "ISO C ¤Ç¤½¤Î°ÕÌ£¤¬Êѹ¹¤µ¤ì¤¿ÆâÍƤ˴ؤ·¤Æ·Ù¹ð¤¹¤ë"
+
+#~ msgid "Warn when trigraphs are encountered"
+#~ msgstr "¥È¥é¥¤¥°¥é¥Õ¤òȯ¸«¤·¤¿¤È¤­¤Ë·Ù¹ð¤¹¤ë"
+
+#~ msgid "Mark strings as 'const char *'"
+#~ msgstr "ʸ»úÎó¤ò 'const char *' ¤È¤·¤Æ¥Þ¡¼¥¯¤¹¤ë"
+
#~ msgid "Internal error: %s"
#~ msgstr "ÆâÉô¥¨¥é¡¼: %s"
#~ msgid "Errors detected in input file (your bison.simple is out of date)\n"
#~ msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ëÃæ¤Ë¥¨¥é¡¼ (¤¢¤Ê¤¿¤Î bison.simple ¤Ï¸Å¤¹¤®¤Þ¤¹)\n"
+#~ msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
+#~ msgstr " -pedantic-errors -pedantic ¤ÈƱÍͤÀ¤¬¡¢¥¨¥é¡¼¤òȯÀ¸¤µ¤»¤ë\n"
+
+#~ msgid " -w Suppress warnings\n"
+#~ msgstr " -w ·Ù¹ð¤òÍÞÀ©¤¹¤ë\n"
+
+#~ msgid " -W Enable extra warnings\n"
+#~ msgstr " -W ÆÃÊ̤ʷٹð¤òÍ­¸ú¤Ë¤¹¤ë\n"
+
+#~ msgid " -Wunused Enable unused warnings\n"
+#~ msgstr " -Wunused ̤»ÈÍѤˤĤ¤¤Æ¤Î·Ù¹ð¤òÍ­¸ú¤Ë¤¹¤ë\n"
+
#~ msgid " -Wid-clash-<num> Warn if 2 identifiers have the same first <num> chars\n"
#~ msgstr " -Wid-clash-<num> Æó¤Ä¤Î¼±Ê̻Ҥ¬ <num> ʸ»úʬ°ìÃפ·¤Æ¤¤¤ì¤Ð·Ù¹ð¤¹¤ë\n"
+#~ msgid " -p Enable function profiling\n"
+#~ msgstr " -p ´Ø¿ô¥×¥í¥Õ¥¡¥¤¥ë¤òÍ­¸ú¤Ë¤¹¤ë\n"
+
#~ msgid " -a Enable block profiling \n"
#~ msgstr " -a ¥Ö¥í¥Ã¥¯¥×¥í¥Õ¥¡¥¤¥ë¤òÍ­¸ú¤Ë¤¹¤ë\n"
#~ msgid " -ax Enable jump profiling \n"
#~ msgstr " -ax ¥¸¥ã¥ó¥×¥×¥í¥Õ¥¡¥¤¥ë¤òÍ­¸ú¤Ë¤¹¤ë\n"
+#~ msgid " -version Display the compiler's version\n"
+#~ msgstr " -version ¥³¥ó¥Ñ¥¤¥é¤Î¥Ð¡¼¥¸¥ç¥ó¤òɽ¼¨¤¹¤ë\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "Language specific options:\n"
+#~ msgstr ""
+#~ "\n"
+#~ "¸À¸ì»ÅÍÍ¥ª¥×¥·¥ç¥ó:\n"
+
+#~ msgid " %-23.23s [undocumented]\n"
+#~ msgstr " %-23.23s [ʸ½ñ²½¤µ¤ì¤Æ¤¤¤Ê¤¤]\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "There are undocumented %s specific options as well.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "ʸ½ñ²½¤µ¤ì¤Æ¤¤¤Ê¤¤ %s »ÅÍÍ¥ª¥×¥·¥ç¥ó¤â¤¢¤ê¤Þ¤¹¡£\n"
+
+#~ msgid ""
+#~ "\n"
+#~ " Options for %s:\n"
+#~ msgstr ""
+#~ "\n"
+#~ " %s ÍÑ¥ª¥×¥·¥ç¥ó:\n"
+
#~ msgid "Unrecognized option `%s'"
#~ msgstr "ǧ¼±ÉÔǽ¤Ê¥ª¥×¥·¥ç¥ó `%s'"
+#~ msgid "use -gdwarf -g%d for DWARF v1, level %d"
+#~ msgstr "-gdwarf -g%d ¤ò»ÈÍÑ (DWARF v1, ¥ì¥Ù¥ë %d)"
+
+#~ msgid "use -gdwarf-2 for DWARF v2"
+#~ msgstr "-gdwarf-2 ¤ò»ÈÍÑ (DWARF v2)"
+
+#~ msgid "ignoring option `%s' due to invalid debug level specification"
+#~ msgstr "̵¸ú¤Ê¥Ç¥Ð¥Ã¥°¥ì¥Ù¥ë»ØÄê¤Ë¤è¤ê¡¢¥ª¥×¥·¥ç¥ó `%s' ¤ò̵»ë¤·¤Þ¤¹"
+
+#~ msgid "`%s': unknown or unsupported -g option"
+#~ msgstr "`%s': ÉÔÌÀ¤Þ¤¿¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Ê¤¤ -g ¥ª¥×¥·¥ç¥ó¤Ç¤¹"
+
+#~ msgid "invalid --param option: %s"
+#~ msgstr "̵¸ú¤Ê --param ¥ª¥×¥·¥ç¥ó: %s"
+
#~ msgid "`-a' option (basic block profile) not supported"
#~ msgstr "`-a' ¥ª¥×¥·¥ç¥ó(´ðËÜ¥Ö¥í¥Ã¥¯¥×¥í¥Õ¥¡¥¤¥ë)¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
#~ msgid "`-ax' option (jump profiling) not supported"
#~ msgstr "`-ax' ¥ª¥×¥·¥ç¥ó(¥¸¥ã¥ó¥×¥×¥í¥Õ¥¡¥¤¥ë)¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
+#~ msgid "(It is valid for %s but not the selected language)"
+#~ msgstr "(%s ÍѤȤ·¤Æ¤ÏÀµ¾ï¤Ç¤¹¤¬¡¢ÁªÂò¤µ¤ì¤¿¸À¸ì¤È¤·¤Æ¤Ï̵¸ú¤Ç¤¹)"
+
#~ msgid "`-ax' and `-a' are conflicting options. `-a' ignored."
#~ msgstr "`-ax' ¤È `-a' ¤ÏÌ·½â¤¹¤ë¥ª¥×¥·¥ç¥ó¤Ç¤¹¡£`-a' ¤ò̵»ë¤·¤Þ¤·¤¿¡£"
@@ -22583,9 +24099,6 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "octal character constant does not fit in a byte"
#~ msgstr "8 ¿Ê¿ôʸ»úÄê¿ô¤¬ 1 ¥Ð¥¤¥È¤Ë¼ý¤Þ¤ê¤Þ¤»¤ó"
-#~ msgid "hex character constant does not fit in a byte"
-#~ msgstr "16 ¿Ê¿ôʸ»úÄê¿ô¤¬ 1 ¥Ð¥¤¥È¤Ë¼ý¤Þ¤ê¤Þ¤»¤ó"
-
#~ msgid "empty #if expression"
#~ msgstr "¶õ¤Î #if ¼°¤Ç¤¹"
@@ -22718,6 +24231,9 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ "´°Á´¤Ê¥Ð¥°¥ì¥Ý¡¼¥È¤òÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤¡£\n"
#~ "%s ¤Ç¤½¤Î¼ê½ç¤ò¸«¤Æ¤¯¤À¤µ¤¤"
+#~ msgid "floating point trap outputting a constant"
+#~ msgstr "ÉâÆ°¾®¿ôÅÀ¤Î¨Ãͤò½ÐÎϤ¹¤ëºÝ¤Ë¥È¥é¥Ã¥×¤¬¤«¤«¤ê¤Þ¤·¤¿"
+
#~ msgid "Incompatible interworking options"
#~ msgstr "¸ß´¹À­¤Î¤Ê¤¤ interworking ¥ª¥×¥·¥ç¥ó"
@@ -22766,12 +24282,21 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "-p option not supported: use -pg instead"
#~ msgstr "-p ¥ª¥×¥·¥ç¥ó¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó. Âå¤ï¤ê¤Ë -pg ¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤"
+#~ msgid "choose either big or little endian, not both"
+#~ msgstr "¥Ó¥Ã¥°¤Þ¤¿¤Ï¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥óξÊý¤Ç¤Ï¤Ê¤¯¡¢¤É¤Á¤é¤«¤òÁª¤ó¤Ç¤¯¤À¤µ¤¤"
+
+#~ msgid "choose either m340 or m210 not both"
+#~ msgstr "m340 ¤Þ¤¿¤Ï m210 ¤ÎξÊý¤Ç¤Ï¤Ê¤¯¡¢¤É¤Á¤é¤«¤òÁª¤ó¤Ç¤¯¤À¤µ¤¤"
+
#~ msgid "may not use both -mfp64 and -msingle-float"
#~ msgstr "-mfp64 ¤È -msingle-float ¤ÎξÊý¤ò»È¤¦¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó"
#~ msgid "-p profiling is no longer supported. Use -pg instead."
#~ msgstr "-p ¤Ç¤Î¥×¥í¥Õ¥¡¥¤¥ë¤Ï¤â¤¦Ä󶡤µ¤ì¤Þ¤»¤ó¡£Âå¤ï¤ê¤Ë -pg ¤ò»È¤¤¤Þ¤·¤ç¤¦¡£"
+#~ msgid "Compilation of header file requested"
+#~ msgstr "¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤Î¥³¥ó¥Ñ¥¤¥ë¤¬Í׵ᤵ¤ì¤Þ¤·¤¿"
+
#~ msgid "%s before character constant"
#~ msgstr "ʸ»úÄê¿ô¤ÎÁ°¤Ë %s"
@@ -22844,6 +24369,9 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "virtual memory exhausted"
#~ msgstr "²¾ÁÛ¥á¥â¥ê¤ò»È¤¤²Ì¤¿¤·¤Þ¤·¤¿"
+#~ msgid "parameter invalidly declared offset type"
+#~ msgstr "¥Ñ¥é¥á¥¿¤¬¥ª¥Õ¥»¥Ã¥È¤Î·¿¤òÉÔÀµ¤ËÀë¸À¤·¤Þ¤·¤¿"
+
#~ msgid "`void' in parameter list must be entire list"
#~ msgstr "¥Ñ¥é¥á¥¿¥ê¥¹¥ÈÆâ¤Î `void' ¤Ï¥ê¥¹¥ÈÁ´ÂΤǤʤ±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
@@ -22862,9 +24390,18 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "`default' label within scope of cleanup or variable array"
#~ msgstr "`default' ¥é¥Ù¥ë¤¬¡¢²òÂΤޤ¿¤Ï²ÄÊÑÇÛÎó¤Î¥¹¥³¡¼¥×Æâ¤Ë¤¢¤ê¤Þ¤¹"
+#~ msgid "end of file encountered inside string constant"
+#~ msgstr "ʸ»úÎóÄê¿ô¤ÎÃæ¤Ç¥Õ¥¡¥¤¥ë¤Î½ªÃ¼¤ò¸¡½Ð¤·¤Þ¤·¤¿"
+
+#~ msgid "end of file encountered inside character constant"
+#~ msgstr "ʸ»úÄê¿ô¤ÎÃæ¤Ç¥Õ¥¡¥¤¥ë¤Î½ªÃ¼¤ò¸¡½Ð¤·¤Þ¤·¤¿"
+
#~ msgid "invalid #pragma vtable"
#~ msgstr "̵¸ú¤Ê #pragma vtable"
+#~ msgid "invalid `#pragma implementation'"
+#~ msgstr "̵¸ú¤Ê `#pragma implementation'"
+
#~ msgid "universal-character-name designates `%c', part of the basic source character set"
#~ msgstr "universal-character-name ¤Ï `%c' ¤ò»Ø¼¨¤·¤Þ¤·¤¿¤¬¡¢´ðËÜŪ¤Êʸ»ú½¸¹ç¤Î°ìÉô¤Ç¤¹"
@@ -23147,6 +24684,9 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "cannot undefine poisoned \"%s\""
#~ msgstr "±øÀ÷¤µ¤ì¤¿ \"%s\" ¤ò undefine ¤Ç¤­¤Þ¤»¤ó"
+#~ msgid "#%s with no argument"
+#~ msgstr "#%s ¤Ë°ú¿ô¤¬¤¢¤ê¤Þ¤»¤ó"
+
#~ msgid "#%s with invalid argument"
#~ msgstr "̵¸ú¤Ê°ú¿ô¤ò»ý¤Ã¤¿ #%s"
@@ -23192,9 +24732,6 @@ msgstr "-msingle-float ¤È -msoft-float ¤ò°ìÅ٤˻ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£"
#~ msgid "Objective-C text in C source file"
#~ msgstr "C ¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ëÃæ¤Ë Objective-C ¤Îʸ»úÎó"
-#~ msgid "statically allocated objects not supported"
-#~ msgstr "¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀÅŪ¤Ê³äÅö¤Æ¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó"
-
#~ msgid "output pipe has been closed"
#~ msgstr "½ÐÎϤΥѥ¤¥×¤¬ÊĤ¸¤é¤ì¤Þ¤·¤¿"
diff --git a/gcc/po/nl.po b/gcc/po/nl.po
index 06e95bbaf3a..b8422de6715 100644
--- a/gcc/po/nl.po
+++ b/gcc/po/nl.po
@@ -8,7 +8,8 @@
msgid ""
msgstr ""
"Project-Id-Version: gcc 3.3.2\n"
-"POT-Creation-Date: 2003-10-24 13:20+0200\n"
+"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
+"POT-Creation-Date: 2004-02-06 01:40+0000\n"
"PO-Revision-Date: 2003-10-26 10:40+0100\n"
"Last-Translator: Tim Van Holder <tim.van.holder@pandora.be>\n"
"Language-Team: Dutch <vertaling@nl.linux.org>\n"
@@ -17,1061 +18,1148 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: attribs.c:185
+#: attribs.c:178
#, c-format
msgid "`%s' attribute directive ignored"
msgstr "attribuut-commando `%s' wordt genegeerd"
-#: attribs.c:193
+#: attribs.c:186
#, c-format
msgid "wrong number of arguments specified for `%s' attribute"
msgstr "verkeerd aantal argumenten opgegeven voor het `%s' attribuut"
-#: attribs.c:210
+#: attribs.c:203
#, c-format
msgid "`%s' attribute does not apply to types"
msgstr "het `%s' attribuut heeft geen betekenis voor types"
-#: attribs.c:247
+#: attribs.c:249
#, c-format
msgid "`%s' attribute only applies to function types"
msgstr "het `%s' attribuut heeft enkel betekenis voor functie-types"
-#: attribs.c:404 c-common.c:5275 c-common.c:5297 c-common.c:5319
-#: c-common.c:5350 c-common.c:5372 c-common.c:5397 c-common.c:5423
-#: c-common.c:5453 c-common.c:5491 c-common.c:5538 c-common.c:5568
-#: c-common.c:5598 c-common.c:5621 c-common.c:5878 c-common.c:5900
-#: c-common.c:5943 c-common.c:6020 c-common.c:6076 c-common.c:6103
-#: c-common.c:6186 c-common.c:6220 c-common.c:6574 config/arm/arm.c:2101
-#: config/arm/arm.c:2128 config/avr/avr.c:4774 config/h8300/h8300.c:3693
-#: config/h8300/h8300.c:3718 config/i386/i386.c:1403 config/i386/winnt.c:78
-#: config/ip2k/ip2k.c:3204
+#: attribs.c:416 c-common.c:4344 c-common.c:4363 c-common.c:4381
+#: c-common.c:4408 c-common.c:4427 c-common.c:4450 c-common.c:4473
+#: c-common.c:4499 c-common.c:4533 c-common.c:4577 c-common.c:4605
+#: c-common.c:4633 c-common.c:4652 c-common.c:4907 c-common.c:4929
+#: c-common.c:4964 c-common.c:5031 c-common.c:5077 c-common.c:5135
+#: c-common.c:5166 c-common.c:5512 c-common.c:5535 c-common.c:5574
+#: config/arm/arm.c:2278 config/arm/arm.c:2305 config/avr/avr.c:4539
+#: config/h8300/h8300.c:4281 config/h8300/h8300.c:4304 config/i386/i386.c:1599
+#: config/i386/i386.c:15299 config/i386/winnt.c:86 config/ia64/ia64.c:1053
+#: config/ip2k/ip2k.c:3151
#, c-format
msgid "`%s' attribute ignored"
msgstr "het `%s' attribuut wordt genegeerd"
-#: builtins.c:285
+#: builtins.c:318
msgid "offset outside bounds of constant string"
msgstr "offset buiten de grenzen van een constante string"
-#: builtins.c:765
+#: builtins.c:786
msgid "second arg to `__builtin_prefetch' must be a constant"
msgstr "tweede argument voor `__builtin_prefetch' moet een constante zijn"
-#: builtins.c:772
+#: builtins.c:793
msgid "invalid second arg to __builtin_prefetch; using zero"
msgstr "ongeldig tweede argument voor __builtin_prefetch; zal nul gebruiken"
-#: builtins.c:779
+#: builtins.c:800
msgid "third arg to `__builtin_prefetch' must be a constant"
msgstr "derde argument voor `__builtin_prefetch' moet een constante zijn"
-#: builtins.c:786
+#: builtins.c:807
msgid "invalid third arg to __builtin_prefetch; using zero"
msgstr "ongeldig derde argument voor __builtin_prefetch; zal nul gebruiken"
-#. ??? We used to try and build up a call to the out of line function,
-#. guessing about what registers needed saving etc. This became much
-#. harder with __builtin_va_start, since we don't have a tree for a
-#. call to __builtin_saveregs to fall back on. There was exactly one
-#. port (i860) that used this code, and I'm unconvinced it could actually
-#. handle the general case. So we no longer try to handle anything
-#. weird and make the backend absorb the evil.
-#: builtins.c:2875
-msgid "__builtin_saveregs not supported by this target"
-msgstr "__builtin_saveregs wordt niet ondersteund op dit doelsysteem"
-
-#: builtins.c:2917
+#: builtins.c:3828
msgid "argument of `__builtin_args_info' must be constant"
msgstr "argument voor `__builtin_args_info' moet een constante zijn"
-#: builtins.c:2923
+#: builtins.c:3834
msgid "argument of `__builtin_args_info' out of range"
msgstr "argument voor `__builtin_args_info' buiten bereik"
-#: builtins.c:2929
+#: builtins.c:3840
msgid "missing argument in `__builtin_args_info'"
msgstr "ontbrekend argument in `__builtin_args_info'"
-#: builtins.c:2960
+#: builtins.c:3856
msgid "`va_start' used in function with fixed args"
msgstr "`va_start' gebruikt in functie met vaste argumenten"
-#: builtins.c:2979
+#: builtins.c:3875
msgid "second parameter of `va_start' not last named argument"
msgstr "de tweede parameter van `va_start' is niet het laatste benoemde argument"
#. Evidently an out of date version of <stdarg.h>; can't validate
#. va_start's second argument, but can still work as intended.
-#: builtins.c:2984
+#: builtins.c:3880
msgid "`__builtin_next_arg' called without an argument"
msgstr "`__builtin_next_arg' opgeroepen zonder argument"
-#: builtins.c:3070
+#: builtins.c:3969
msgid "too many arguments to function `va_start'"
msgstr "teveel argumenten voor functie `va_start'"
# Of misschien beter "... niet van het `va_list' type"?
-#: builtins.c:3172
+#: builtins.c:4091
msgid "first argument to `va_arg' not of type `va_list'"
msgstr "het eerste argument van `va_arg' is geen `va_list'"
#. Unfortunately, this is merely undefined, rather than a constraint
#. violation, so we cannot make this an error. If this call is never
#. executed, the program is still strictly conforming.
-#: builtins.c:3204
+#: builtins.c:4123
#, c-format
msgid "`%s' is promoted to `%s' when passed through `...'"
msgstr "`%s' wordt naar `%s' gepromoveerd indien het via `...' wordt doorgegeven"
-#: builtins.c:3209
+#: builtins.c:4128
#, c-format
msgid "(so you should pass `%s' not `%s' to `va_arg')"
msgstr "(dus U zou `%s' en niet `%s' moeten doorgeven aan `va_arg')"
-#: builtins.c:3340
+#: builtins.c:4240
msgid "invalid arg to `__builtin_frame_address'"
msgstr "ongeldig argument voor `__builtin_frame_address'"
-#: builtins.c:3342
+#: builtins.c:4242
msgid "invalid arg to `__builtin_return_address'"
msgstr "ongeldig argument voor `__builtin_return_address'"
-#: builtins.c:3356
+#: builtins.c:4256
msgid "unsupported arg to `__builtin_frame_address'"
msgstr "niet-ondersteund argument voor `__builtin_frame_address'"
-#: builtins.c:3358
+#: builtins.c:4258
msgid "unsupported arg to `__builtin_return_address'"
msgstr "niet-ondersteund argument voor `__builtin_return_address'"
-#: builtins.c:3530
+#: builtins.c:4418
msgid "second arg to `__builtin_expect' must be a constant"
msgstr "tweede argument voor `__builtin_expect' moet een constante zijn"
-#: builtins.c:4028
+#: builtins.c:5359
msgid "__builtin_longjmp second argument must be 1"
msgstr "tweede argument van `__builtin_longjmp' moet 1 zijn"
-#. just do library call, if unknown builtin
-#: builtins.c:4092 c-common.c:4459
+#: builtins.c:5454
#, c-format
msgid "built-in function `%s' not currently supported"
msgstr "ingebouwde functie `%s' wordt op het ogenblik niet ondersteund"
-#: builtins.c:4165
+#: builtins.c:5594
msgid "target format does not support infinity"
msgstr "doelformaat ondersteunt geen oneindige waarde"
+#: c-common.c:934
+msgid "%Hsuggest explicit braces to avoid ambiguous `else'"
+msgstr ""
+
# betere vertaling voor 'function scope'?
-#: c-common.c:1168
-#, c-format
-msgid "`%s' is not defined outside of function scope"
+#: c-common.c:1158
+#, fuzzy
+msgid "%J'%D' is not defined outside of function scope"
msgstr "`%s' is niet gedefinieerd buiten een functie"
-#: c-common.c:1189
+#: c-common.c:1178
#, c-format
msgid "string length `%d' is greater than the length `%d' ISO C%d compilers are required to support"
msgstr "stringlengte `%d' is groter dan `%d', de lengte die ISO C%d compilers moeten ondersteunen"
-#: c-common.c:1247
-msgid "concatenation of string literals with __FUNCTION__ is deprecated"
-msgstr "concatenatie van stringconstantes met __FUNCTION__ is verouderd"
-
-#: c-common.c:1343
+#: c-common.c:1218
msgid "overflow in constant expression"
msgstr "overflow in constante expressie"
-#: c-common.c:1364
+#: c-common.c:1238
msgid "integer overflow in expression"
msgstr "integer overflow in expressie"
-#: c-common.c:1373
+#: c-common.c:1247
msgid "floating point overflow in expression"
msgstr "floating-point overflow in expressie"
-#: c-common.c:1379
+#: c-common.c:1253
msgid "vector overflow in expression"
msgstr "vector overflow in expressie"
#. This detects cases like converting -129 or 256 to unsigned char.
-#: c-common.c:1402
+#: c-common.c:1275
msgid "large integer implicitly truncated to unsigned type"
msgstr "grote integer impliciet afgekapt naar 'unsigned' type"
-#: c-common.c:1404
+#: c-common.c:1277
msgid "negative integer implicitly converted to unsigned type"
msgstr "negatieve integer impliciet omgezet naar 'unsigned' type"
-#: c-common.c:1452
+#: c-common.c:1323
msgid "overflow in implicit constant conversion"
msgstr "overflow in impliciete omzetting van constante"
-#: c-common.c:1600
+#: c-common.c:1459
#, c-format
msgid "operation on `%s' may be undefined"
msgstr "bewerking op `%s' is mogelijk niet gedefinieerd"
# vertaling voor 'statement'?
-#: c-common.c:1891
+#: c-common.c:1743
msgid "expression statement has incomplete type"
msgstr "expressie-statement heeft onvolledig type"
-#: c-common.c:1924
+#: c-common.c:1775
msgid "case label does not reduce to an integer constant"
msgstr "case-label valt niet te herleiden tot een integerconstante"
-#: c-common.c:2228
+#: c-common.c:2105
msgid "invalid truth-value expression"
msgstr "ongeldige waarheidsexpressie"
-#: c-common.c:2279
+#: c-common.c:2156
#, c-format
msgid "invalid operands to binary %s"
msgstr "ongeldige operanden voor binaire %s-operator"
-#: c-common.c:2513
+#: c-common.c:2390
msgid "comparison is always false due to limited range of data type"
msgstr "vergelijking is altijd vals omwille van het beperkte bereik van het datatype"
-#: c-common.c:2515
+#: c-common.c:2392
msgid "comparison is always true due to limited range of data type"
msgstr "vergelijking is altijd waar omwille van het beperkte bereik van het datatype"
-#: c-common.c:2585
+#: c-common.c:2462
msgid "comparison of unsigned expression >= 0 is always true"
msgstr "vergelijking van 'unsigned' expressie >= 0 is altijd waar"
-#: c-common.c:2594
+#: c-common.c:2471
msgid "comparison of unsigned expression < 0 is always false"
msgstr "vergelijking van 'unsigned' expressie < 0 is altijd vals"
-#: c-common.c:2641
+#: c-common.c:2516
msgid "pointer of type `void *' used in arithmetic"
msgstr "pointer van type `void *' gebruikt in rekensom"
-#: c-common.c:2647
+#: c-common.c:2522
msgid "pointer to a function used in arithmetic"
msgstr "pointer naar functie gebruikt in rekensom"
-#: c-common.c:2653
+#: c-common.c:2528
msgid "pointer to member function used in arithmetic"
msgstr "pointer naar lid-functie gebruikt in rekensom"
-#: c-common.c:2659
+#: c-common.c:2534
msgid "pointer to a member used in arithmetic"
msgstr "pointer naar een lid gebruikt in rekensom"
-#: c-common.c:2746 f/com.c:14762
+#: c-common.c:2623 f/com.c:14734
msgid "struct type value used where scalar is required"
msgstr "waarde van struct-type gebruikt waar een scalair nodig is"
-#: c-common.c:2750 f/com.c:14766
+#: c-common.c:2627 f/com.c:14738
msgid "union type value used where scalar is required"
msgstr "waarde van union-type gebruikt waar een scalair nodig is"
-#: c-common.c:2754 f/com.c:14770
+#: c-common.c:2631 f/com.c:14742
msgid "array type value used where scalar is required"
msgstr "waarde van array-type gebruikt waar een scalair nodig is"
-#: c-common.c:2874 f/com.c:14903
+#. Common Ada/Pascal programmer's mistake. We always warn
+#. about this since it is so bad.
+#: c-common.c:2668
+msgid "the address of `%D', will always evaluate as `true'"
+msgstr ""
+
+#: c-common.c:2762 f/com.c:14874
msgid "suggest parentheses around assignment used as truth value"
msgstr "gebruik liefst haakjes rond toewijzingen die als waarheid gebruikt worden"
-#: c-common.c:2918 c-common.c:2950
+#: c-common.c:2808 c-common.c:2848
msgid "invalid use of `restrict'"
msgstr "ongeldig gebruik van `restrict'"
-#: c-common.c:3064
+#: c-common.c:2958
msgid "invalid application of `sizeof' to a function type"
msgstr "ongeldige toepassing van `sizeof' op een functietype"
-#: c-common.c:3074
+#: c-common.c:2968
#, c-format
msgid "invalid application of `%s' to a void type"
msgstr "ongeldige toepasing van `%s' op een void-type"
-#: c-common.c:3080
+#: c-common.c:2974
#, c-format
msgid "invalid application of `%s' to an incomplete type"
msgstr "ongeldige toepassing van `%s' op een onvolledig type"
-#: c-common.c:3121
+#: c-common.c:3014
msgid "`__alignof' applied to a bit-field"
msgstr "`__alignof' toegepast op bitveld"
-#: c-common.c:3618
+#: c-common.c:3506
#, c-format
msgid "cannot disable built-in function `%s'"
msgstr "ingebouwde functie `%s' kan niet uitgeschakeld worden"
-#: c-common.c:3787 c-typeck.c:1748
+#: c-common.c:3667 c-typeck.c:1941
#, c-format
msgid "too few arguments to function `%s'"
msgstr "te weinig argumenten voor functie `%s'"
-#: c-common.c:3793 c-typeck.c:1601
+#: c-common.c:3673 c-typeck.c:1802
#, c-format
msgid "too many arguments to function `%s'"
msgstr "teveel argumenten voor functie `%s'"
-#: c-common.c:3812
+#: c-common.c:3692
#, c-format
msgid "non-floating-point argument to function `%s'"
msgstr "niet-floating-point argument voor functie `%s'"
-#: c-common.c:4081
+#: c-common.c:3919
msgid "pointers are not permitted as case values"
msgstr "pointers zijn niet toegestaan als case-waarden"
-# betere vertaling voor 'range expressions'?
-#: c-common.c:4087
-msgid "ISO C++ forbids range expressions in switch statements"
-msgstr "ISO C++ verbiedt het gebruik van bereik-expressies in switch statements"
-
-#: c-common.c:4089
-msgid "ISO C forbids range expressions in switch statements"
+#: c-common.c:3923
+#, fuzzy
+msgid "range expressions in switch statements are non-standard"
msgstr "ISO C verbiedt het gebruik van bereik-expressies in switch statements"
-#: c-common.c:4119
+#: c-common.c:3952
msgid "empty range specified"
msgstr "leeg bereik opgegeven"
-#: c-common.c:4170
+#: c-common.c:4003
msgid "duplicate (or overlapping) case value"
msgstr "herhaalde (of overlappende) case-waarde"
-#: c-common.c:4172
-msgid "this is the first entry overlapping that value"
+#: c-common.c:4004
+#, fuzzy
+msgid "%Jthis is the first entry overlapping that value"
msgstr "dit is de eerste waarde die die waarde overlapt"
-#: c-common.c:4176
+#: c-common.c:4008
msgid "duplicate case value"
msgstr "herhaalde case-waarde"
-#: c-common.c:4177
-msgid "previously used here"
+#: c-common.c:4009
+#, fuzzy
+msgid "%Jpreviously used here"
msgstr "tevoren hier gebruikt"
-#: c-common.c:4181
+#: c-common.c:4013
msgid "multiple default labels in one switch"
msgstr "meerdere default-labels in één switch"
-#: c-common.c:4182
-msgid "this is the first default label"
+#: c-common.c:4014
+#, fuzzy
+msgid "%Jthis is the first default label"
msgstr "dit is het eerste default-label"
-#: c-common.c:4210
-msgid "ISO C++ forbids taking the address of a label"
-msgstr "ISO C++ verbiedt het nemen van het adres van een label"
-
-#: c-common.c:4212
-msgid "ISO C forbids taking the address of a label"
+#: c-common.c:4039
+#, fuzzy
+msgid "taking the address of a label is non-standard"
msgstr "ISO C verbiedt het nemen van het adres van een label"
-#: c-common.c:5235
-#, c-format
-msgid "declaration of `%s' shadows %s"
-msgstr "de declaratie van `%s' verbergt %s"
+#: c-common.c:4085
+msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
-#: c-common.c:5654
+#: c-common.c:4090
+msgid "%Hignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
+
+#. SW_PARAM
+#: c-common.c:4297
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a parameter"
+msgstr "de declaratie van `%s' verbergt een parameter"
+
+#. SW_LOCAL
+#: c-common.c:4298
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a previous local"
+msgstr "de declaratie van `%s' verbergt een parameter"
+
+#. SW_GLOBAL
+#: c-common.c:4299
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a global declaration"
+msgstr "de declaratie van `%s' verbergt een parameter"
+
+#: c-common.c:4303
+#, fuzzy
+msgid "%Jshadowed declaration is here"
+msgstr "eerdere declaratie van `%s'"
+
+#: c-common.c:4686
#, c-format
msgid "unknown machine mode `%s'"
msgstr "onbekende machine-modus `%s'"
-#: c-common.c:5657
+#: c-common.c:4689
#, c-format
msgid "no data type for mode `%s'"
msgstr "geen datatype voor modus `%s'"
+#: c-common.c:4693
+#, fuzzy, c-format
+msgid "invalid pointer mode `%s'"
+msgstr "ongeldige operand van %s"
+
# Misschien beter 'emuleren' dan nabootsen?
-#: c-common.c:5666 c-common.c:6316
+#: c-common.c:4700 c-common.c:5263
#, c-format
msgid "unable to emulate '%s'"
msgstr "kan '%s' niet nabootsen"
-#: c-common.c:5702
-msgid "section attribute cannot be specified for local variables"
+#: c-common.c:4744
+#, fuzzy
+msgid "%Jsection attribute cannot be specified for local variables"
msgstr "sectie-attribuut kan niet opgegeven worden voor lokale variabelen"
-#: c-common.c:5713
-#, c-format
-msgid "section of `%s' conflicts with previous declaration"
+#: c-common.c:4755
+#, fuzzy
+msgid "%Jsection of '%D' conflicts with previous declaration"
msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie"
-#: c-common.c:5722
-#, c-format
-msgid "section attribute not allowed for `%s'"
+#: c-common.c:4764
+#, fuzzy
+msgid "%Jsection attribute not allowed for '%D'"
msgstr "sectie-attribuut niet toegestaan voor `%s'"
-#: c-common.c:5729
-msgid "section attributes are not supported for this target"
+#: c-common.c:4770
+#, fuzzy
+msgid "%Jsection attributes are not supported for this target"
msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem"
-#: c-common.c:5771
+#: c-common.c:4808
msgid "requested alignment is not a constant"
msgstr "gevraagd alignment is geen constante"
-#: c-common.c:5776
+#: c-common.c:4813
msgid "requested alignment is not a power of 2"
msgstr "gevraagd alignment is geen macht van 2"
-#: c-common.c:5781
+#: c-common.c:4818
msgid "requested alignment is too large"
msgstr "gevraagd alignment is te groot"
-#: c-common.c:5808
-#, c-format
-msgid "alignment may not be specified for `%s'"
+#: c-common.c:4844
+#, fuzzy
+msgid "%Jalignment may not be specified for '%D'"
msgstr "er kan geen alignment opgegeven worden voor `%s'"
-#: c-common.c:5853
-#, c-format
-msgid "`%s' defined both normally and as an alias"
+#: c-common.c:4882
+#, fuzzy
+msgid "%J'%D' defined both normally and as an alias"
msgstr "`%s' is zowel als alias en als normale naam gedefinieerd"
-#: c-common.c:5863
+#: c-common.c:4892
msgid "alias arg not a string"
msgstr "alias-argument is geen string"
# Of moet dit vertaald worden als 'zichtbaarheidsargument is ...'?
-#: c-common.c:5910
+#: c-common.c:4935
msgid "visibility arg not a string"
msgstr "argument 'visibility' is geen string"
-#: c-common.c:5919
+#: c-common.c:4948
msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\""
msgstr "argument 'visibility' moet \"default\", \"hidden\", \"protected\" of \"internal\" zijn"
-#: c-common.c:5953
+#: c-common.c:4974
msgid "tls_model arg not a string"
msgstr "argument 'tls_model' is geen string"
-#: c-common.c:5962
+#: c-common.c:4983
msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\""
msgstr "argument 'tls_model' moet \"local-exec\", \"initial-exec\", \"local-dynamic\" of \"global-dynamic\" zijn"
-#: c-common.c:5987 c-common.c:6043
-#, c-format
-msgid "`%s' attribute applies only to functions"
-msgstr "het `%s' attribuut heeft enkel betekenis voor functies"
-
-#: c-common.c:5994 c-common.c:6050
-#, c-format
-msgid "can't set `%s' attribute after definition"
-msgstr "kan het `%s' attribuut niet instellen na een definitie"
-
-#: c-common.c:6114
+#: c-common.c:5005 c-common.c:5051
#, fuzzy
-msgid "cleanup arg not an identifier"
-msgstr "`defined' zonder een naam"
+msgid "%J'%E' attribute applies only to functions"
+msgstr "het `%s' attribuut heeft enkel betekenis voor functies"
-#: c-common.c:6121
+#: c-common.c:5010 c-common.c:5056
#, fuzzy
-msgid "cleanup arg not a function"
-msgstr "opgeroepen object is geen functie"
+msgid "%Jcan't set '%E' attribute after definition"
+msgstr "kan het `%s' attribuut niet instellen na een definitie"
-#: c-common.c:6183
+#: c-common.c:5132
#, c-format
msgid "`%s' attribute ignored for `%s'"
msgstr "het `%s' attribuut wordt genegeerd voor `%s'"
# Is the %s the argument, or is it 'of' the argument?
-#: c-common.c:6248
+#: c-common.c:5195
#, c-format
msgid "invalid vector type for attribute `%s'"
msgstr "ongeldig vector-type voor attribuut `%s'"
-#: c-common.c:6272 c-common.c:6304
+#: c-common.c:5219 c-common.c:5251
msgid "no vector mode with the size and type specified could be found"
msgstr "er kon geen vectormodus gevonden worden met de opgegeven grootte en type"
-#: c-common.c:6403
+#: c-common.c:5353
msgid "nonnull attribute without arguments on a non-prototype"
msgstr "nonnull attribuut zonder argumenten gebruikt voor een niet-prototype"
-#: c-common.c:6418
+#: c-common.c:5368
#, fuzzy, c-format
msgid "nonnull argument has invalid operand number (arg %lu)"
msgstr "de formaatstring heeft een niet-constant operand-nummer"
-#: c-common.c:6437
+#: c-common.c:5387
#, c-format
msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)"
msgstr "nonnull argument met operandnummer dat buiten bereik is (arg %lu, operand %lu)"
-#: c-common.c:6445
+#: c-common.c:5395
#, c-format
msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)"
msgstr "nonnull argument verwijst naar niet-pointer operand (arg %lu, operand %lu)"
-#: c-common.c:6531
+#: c-common.c:5475
#, c-format
msgid "null argument where non-null required (arg %lu)"
msgstr "null argument waar een niet-null argument vereist is (arg %lu)"
-#: c-convert.c:80 c-typeck.c:988 c-typeck.c:4059 cp/typeck.c:1615
-#: cp/typeck.c:5939
-msgid "void value not ignored as it ought to be"
-msgstr "void-waarde niet genegeerd zoals het hoort"
+#: c-common.c:5546
+#, fuzzy
+msgid "cleanup arg not an identifier"
+msgstr "`defined' zonder een naam"
-#: c-convert.c:112 java/typeck.c:150
-msgid "conversion to non-scalar type requested"
-msgstr "conversie naar niet-scalair type gevraagd"
+#: c-common.c:5553
+#, fuzzy
+msgid "cleanup arg not a function"
+msgstr "opgeroepen object is geen functie"
-#: c-decl.c:340
+#: c-common.c:5914
#, c-format
-msgid "array `%s' assumed to have one element"
-msgstr "array `%s' wordt aangenomen één element te bevatten"
+msgid "%s at end of input"
+msgstr "%s aan einde van invoer"
-#: c-decl.c:526
-#, c-format
-msgid "`struct %s' incomplete in scope ending here"
-msgstr "`struct %s' onvolledig in bereik dat hier eindigt"
+#: c-common.c:5920
+#, fuzzy, c-format
+msgid "%s before %s'%c'"
+msgstr "%s voor `%s'"
-#: c-decl.c:529
-#, c-format
-msgid "`union %s' incomplete in scope ending here"
-msgstr "`union %s' onvolledig in bereik dat hier eindigt"
+#: c-common.c:5922
+#, fuzzy, c-format
+msgid "%s before %s'\\x%x'"
+msgstr "%s voor `%s'"
-#: c-decl.c:532
+#: c-common.c:5926
#, c-format
-msgid "`enum %s' incomplete in scope ending here"
-msgstr "`enum %s' onvolledig in bereik dat hier eindigt"
+msgid "%s before string constant"
+msgstr "%s voor stringconstante"
+
+#: c-common.c:5928
+#, fuzzy, c-format
+msgid "%s before numeric constant"
+msgstr "%s voor stringconstante"
+
+#: c-common.c:5930
+#, fuzzy, c-format
+msgid "%s before \"%s\""
+msgstr "%s voor `%s'"
+
+#: c-common.c:5932
+#, fuzzy, c-format
+msgid "%s before '%s' token"
+msgstr "%s voor `%s'"
-#: c-decl.c:646 c-decl.c:771 java/decl.c:1403
+#. Use `%s' to print the string in case there are any escape
+#. characters in the message.
+#: c-common.c:5934 c-typeck.c:2578 c-typeck.c:3970 c-typeck.c:3985
+#: c-typeck.c:4000 final.c:2776 final.c:2778 gcc.c:4574 rtl-error.c:109
+#: toplev.c:1340 config/cris/cris.c:545 cp/parser.c:1848 cp/typeck.c:4111
+#: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472
#, c-format
-msgid "label `%s' used but not defined"
+msgid "%s"
+msgstr ""
+
+#: c-convert.c:82 c-typeck.c:1193 c-typeck.c:3410 cp/typeck.c:1337
+#: cp/typeck.c:5648 treelang/tree-convert.c:79
+msgid "void value not ignored as it ought to be"
+msgstr "void-waarde niet genegeerd zoals het hoort"
+
+#: c-convert.c:114 java/typeck.c:148 treelang/tree-convert.c:105
+msgid "conversion to non-scalar type requested"
+msgstr "conversie naar niet-scalair type gevraagd"
+
+#: c-decl.c:371
+#, fuzzy
+msgid "%Jarray '%D' assumed to have one element"
+msgstr "array `%s' wordt aangenomen één element te bevatten"
+
+#: c-decl.c:580
+#, fuzzy
+msgid "%Jlabel `%D' used but not defined"
msgstr "label `%s' gebruikt maar niet gedefinieerd"
-#: c-decl.c:652 c-decl.c:778 java/decl.c:1409
-#, c-format
-msgid "label `%s' defined but not used"
+#: c-decl.c:586
+#, fuzzy
+msgid "%Jlabel `%D' defined but not used"
msgstr "label `%s' gedefinieerd maar niet gebruikt"
-#: c-decl.c:893 cp/decl.c:3335
-#, c-format
-msgid "function `%s' redeclared as inline"
-msgstr "functie `%s' geherdeclareerd als inline"
+#: c-decl.c:588
+#, fuzzy
+msgid "%Jlabel `%D' declared but not defined"
+msgstr "label `%s' gebruikt maar niet gedefinieerd"
-#: c-decl.c:895 cp/decl.c:3337
-#, c-format
-msgid "previous declaration of function `%s' with attribute noinline"
-msgstr "eerdere declaratie van functie `%s' had het noinline attribuut"
+#: c-decl.c:613
+#, fuzzy
+msgid "%Junused variable `%D'"
+msgstr "%s van alleen-lezen variabele `%s'"
-#: c-decl.c:902 cp/decl.c:3344
-#, c-format
-msgid "function `%s' redeclared with attribute noinline"
-msgstr "functie `%s' geherdeclareerd met noinline attribuut"
+#: c-decl.c:821
+msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
+msgstr "een parameterlijst met een beletselteken kan niet overeenkomen met een declaratie met lege parameterlijst"
-#: c-decl.c:904 cp/decl.c:3346
-#, c-format
-msgid "previous declaration of function `%s' was inline"
-msgstr "eerdere declaratie van functie `%s' was inline"
+#: c-decl.c:828
+msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
+msgstr "een argumenttype dat een standaardpromotie heeft kan niet overeenkomen met een declaratie met lege parameterlijst"
-#: c-decl.c:933 c-decl.c:979
-#, c-format
-msgid "shadowing built-in function `%s'"
-msgstr "ingebouwde functie `%s' wordt verborgen"
+#: c-decl.c:864
+msgid "%Jprototype for '%D' declares more arguments than previous old-style definition"
+msgstr ""
-#: c-decl.c:935
-#, c-format
-msgid "shadowing library function `%s'"
-msgstr "bibliotheekfunctie `%s' wordt verborgen"
+#: c-decl.c:870
+msgid "%Jprototype for '%D' declares fewer arguments than previous old-style definition"
+msgstr ""
-#: c-decl.c:941
-#, c-format
-msgid "library function `%s' declared as non-function"
-msgstr "bibliotheekfunctie `%s' gedeclareerd als niet-functie"
+#: c-decl.c:879
+msgid "%Jprototype for '%D' declares arg %d with incompatible type"
+msgstr ""
-#: c-decl.c:945 c-decl.c:948
-#, c-format
-msgid "built-in function `%s' declared as non-function"
-msgstr "ingebouwde functie `%s' gedeclareerd als niet-functie"
+#. If we get here, no errors were found, but do issue a warning
+#. for this poor-style construct.
+#: c-decl.c:891
+#, fuzzy
+msgid "%Jprototype for '%D' follows non-prototype definition"
+msgstr "niet-prototype definitie hier"
-#: c-decl.c:952 objc/objc-act.c:2384 objc/objc-act.c:6154
-#, c-format
-msgid "`%s' redeclared as different kind of symbol"
-msgstr "`%s' als ander soort symbool geherdeclareerd"
+#: c-decl.c:906
+#, fuzzy
+msgid "%Jprevious definition of '%D' was here"
+msgstr "eerdere definitie van `%s'"
-#: c-decl.c:953 c-decl.c:1144 c-decl.c:1158 c-decl.c:1165 c-decl.c:1310
-#: objc/objc-act.c:2386 objc/objc-act.c:6156 objc/objc-act.c:6211
-#, c-format
-msgid "previous declaration of `%s'"
+#: c-decl.c:908
+#, fuzzy
+msgid "%Jprevious implicit declaration of '%D' was here"
+msgstr "eerdere impliciete declaratie van `%s'"
+
+#: c-decl.c:910
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was here"
msgstr "eerdere declaratie van `%s'"
-#. If types don't match for a built-in, throw away the built-in.
-#: c-decl.c:1048
-#, c-format
-msgid "conflicting types for built-in function `%s'"
+#: c-decl.c:944
+#, fuzzy
+msgid "%J'%D' redeclared as different kind of symbol"
+msgstr "`%s' als ander soort symbool geherdeclareerd"
+
+#: c-decl.c:949
+#, fuzzy
+msgid "%Jbuilt-in function '%D' declared as non-function"
+msgstr "ingebouwde functie `%s' gedeclareerd als niet-functie"
+
+#: c-decl.c:952 c-decl.c:1042
+#, fuzzy
+msgid "%Jshadowing built-in function '%D'"
+msgstr "ingebouwde functie `%s' wordt verborgen"
+
+#. If types don't match for a built-in, throw away the
+#. built-in. No point in calling locate_old_decl here, it
+#. won't print anything.
+#: c-decl.c:972
+#, fuzzy
+msgid "%Jconflicting types for built-in function '%D'"
msgstr "conflicterende types voor ingebouwde functie `%s'"
-#: c-decl.c:1091 c-decl.c:1110
-#, c-format
-msgid "conflicting types for `%s'"
+#: c-decl.c:996 c-decl.c:1004
+#, fuzzy
+msgid "%Jconflicting types for '%D'"
msgstr "conflicterende types voor `%s'"
-#: c-decl.c:1133
-msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
-msgstr "een parameterlijst met een beletselteken kan niet overeenkomen met een declaratie met lege parameterlijst"
+#. allow OLDDECL to continue in use
+#: c-decl.c:1019
+#, fuzzy
+msgid "%Jredefinition of typedef '%D'"
+msgstr "herdefinitie van `%s'"
-#: c-decl.c:1139
-msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
-msgstr "een argumenttype dat een standaardpromotie heeft kan niet overeenkomen met een declaratie met lege parameterlijst"
+#: c-decl.c:1055 c-decl.c:1119
+#, fuzzy
+msgid "%Jredefinition of '%D'"
+msgstr "herdefinitie van `%s'"
-#: c-decl.c:1157
-#, fuzzy, c-format
-msgid "thread-local declaration of `%s' follows non thread-local declaration"
+#: c-decl.c:1086 c-decl.c:1136
+#, fuzzy
+msgid "%Jstatic declaration of '%D' follows non-static declaration"
msgstr "static declaratie voor `%s' volgt niet-static declaratie"
-#: c-decl.c:1164
-#, fuzzy, c-format
-msgid "non thread-local declaration of `%s' follows thread-local declaration"
+#: c-decl.c:1094 c-decl.c:1133
+#, fuzzy
+msgid "%Jnon-static declaration of '%D' follows static declaration"
msgstr "niet-static declaratie voor `%s' volgt static declaratie"
-#: c-decl.c:1175 c-decl.c:1198
-#, c-format
-msgid "redefinition of `%s'"
-msgstr "herdefinitie van `%s'"
+#: c-decl.c:1106
+#, fuzzy
+msgid "%Jthread-local declaration of '%D' follows non-thread-local declaration"
+msgstr "static declaratie voor `%s' volgt niet-static declaratie"
-#: c-decl.c:1178
-#, c-format
-msgid "redeclaration of `%s'"
-msgstr "herdeclaratie van `%s'"
+#: c-decl.c:1109
+#, fuzzy
+msgid "%Jnon-thread-local declaration of '%D' follows thread-local declaration"
+msgstr "niet-static declaratie voor `%s' volgt static declaratie"
-#: c-decl.c:1181
-#, c-format
-msgid "conflicting declarations of `%s'"
-msgstr "conflicterende declaraties van `%s'"
+#: c-decl.c:1149
+#, fuzzy
+msgid "%Jextern declaration of '%D' follows declaration with no linkage"
+msgstr "externe declaratie van `%s' komt niet overeen met de globale declaratie"
-#: c-decl.c:1225
-#, c-format
-msgid "prototype for `%s' follows"
-msgstr "prototype voor `%s' volgt"
+#: c-decl.c:1152
+#, fuzzy
+msgid "%Jdeclaration of '%D' with no linkage follows extern declaration"
+msgstr "`%s' wordt gedeclareerd als een array van functies"
-#: c-decl.c:1226 c-decl.c:1234 c-decl.c:1245
-msgid "non-prototype definition here"
-msgstr "niet-prototype definitie hier"
+#: c-decl.c:1155
+#, fuzzy
+msgid "%Jredeclaration of '%D' with no linkage"
+msgstr "eerdere declaratie van `%s'"
-#: c-decl.c:1233
-#, c-format
-msgid "prototype for `%s' follows and number of arguments doesn't match"
-msgstr "prototype voor `%s' volgt en aantal argumenten komt niet overeen"
+#: c-decl.c:1169
+msgid "%Jredeclaration of '%D' with different visibility (old visibility preserved)"
+msgstr ""
-#: c-decl.c:1243
-#, c-format
-msgid "prototype for `%s' follows and argument %d doesn't match"
-msgstr "prototype voor `%s' volgt en argument %d komt niet overeen"
+#: c-decl.c:1180
+#, fuzzy
+msgid "%Jinline declaration of '%D' follows declaration with attribute noinline"
+msgstr "eerdere declaratie van functie `%s' had het noinline attribuut"
-#: c-decl.c:1261
-#, c-format
-msgid "`%s' declared inline after being called"
+#: c-decl.c:1187
+#, fuzzy
+msgid "%Jdeclaration of '%D' with attribute noinline follows inline declaration "
+msgstr "de declaratie van `%s' verbergt een globale declaratie"
+
+#: c-decl.c:1199
+#, fuzzy
+msgid "%J'%D' declared inline after being called"
msgstr "`%s' als 'inline' gedeclareerd na oproep"
-#: c-decl.c:1267
-#, c-format
-msgid "`%s' declared inline after its definition"
+#: c-decl.c:1205
+#, fuzzy
+msgid "%J'%D' declared inline after its definition"
msgstr "`%s' als 'inline' gedeclareerd na de definitie"
-#: c-decl.c:1274
-#, c-format
-msgid "static declaration for `%s' follows non-static"
+#: c-decl.c:1217
+#, fuzzy
+msgid "%Jvolatile declaration of '%D' follows non-volatile declaration"
msgstr "static declaratie voor `%s' volgt niet-static declaratie"
-#: c-decl.c:1282
-#, c-format
-msgid "non-static declaration for `%s' follows static"
+#: c-decl.c:1220
+#, fuzzy
+msgid "%Jnon-volatile declaration of '%D' follows volatile declaration"
msgstr "niet-static declaratie voor `%s' volgt static declaratie"
-#: c-decl.c:1289
-#, c-format
-msgid "const declaration for `%s' follows non-const"
+#: c-decl.c:1227
+#, fuzzy
+msgid "%Jconst declaration of '%D' follows non-const declaration"
msgstr "'const' declaratie voor `%s' volgt niet-'const' declaratie"
-#: c-decl.c:1296
-#, c-format
-msgid "type qualifiers for `%s' conflict with previous decl"
-msgstr "type-qualifiers voor `%s' geven een conflict met een eerdere declaratie"
+#: c-decl.c:1230
+#, fuzzy
+msgid "%Jnon-const declaration of '%D' follows const declaration"
+msgstr "niet-static declaratie voor `%s' volgt static declaratie"
-#: c-decl.c:1309
-#, c-format
-msgid "redundant redeclaration of `%s' in same scope"
+#: c-decl.c:1246
+#, fuzzy
+msgid "%Jredundant redeclaration of '%D'"
msgstr "overbodige herdeclaratie van `%s' in zelfde bereik"
-#: c-decl.c:1619 java/decl.c:1102
-#, c-format
-msgid "declaration of `%s' shadows a parameter"
-msgstr "de declaratie van `%s' verbergt een parameter"
-
-#: c-decl.c:1622 java/decl.c:1105
-#, c-format
-msgid "declaration of `%s' shadows a symbol from the parameter list"
-msgstr "de declaratie van `%s' verbergt een symbool uit de parameterlijst"
-
-#: c-decl.c:1643 cp/decl.c:4479
-msgid "a parameter"
-msgstr "een parameter"
-
-#: c-decl.c:1645 cp/decl.c:4496
-msgid "a previous local"
-msgstr "een eerdere locale"
-
-#. XXX shadow warnings in outer-more namespaces
-#: c-decl.c:1649 cp/decl.c:4500
-msgid "a global declaration"
-msgstr "een globale declaratie"
-
-#: c-decl.c:1693
+#: c-decl.c:1690
#, c-format
msgid "nested extern declaration of `%s'"
msgstr "geneste externe declaratie van `%s'"
-#: c-decl.c:1712 java/decl.c:1055
-#, c-format
-msgid "`%s' used prior to declaration"
-msgstr "`%s' gebruikt vóór declaratie"
-
-#: c-decl.c:1726 c-decl.c:1901
-#, c-format
-msgid "`%s' was declared implicitly `extern' and later `static'"
-msgstr "`%s' was impliciet als `extern' gedeclareerd en daarna als `static'"
-
-#: c-decl.c:1829 cp/decl.c:4336
-msgid "type mismatch with previous external decl"
-msgstr "type-conflict met eerdere externe declaratie"
-
-#: c-decl.c:1830
-#, c-format
-msgid "previous external decl of `%s'"
-msgstr "eerdere externe declaratie van `%s'"
-
-#: c-decl.c:1843
-msgid "type mismatch with previous implicit declaration"
-msgstr "type-conflict met eerdere impliciete declaratie"
-
-#: c-decl.c:1845
-#, c-format
-msgid "previous implicit declaration of `%s'"
-msgstr "eerdere impliciete declaratie van `%s'"
-
-#: c-decl.c:1880
-#, c-format
-msgid "`%s' was previously implicitly declared to return `int'"
-msgstr "`%s' was tevoren impliciet gedeclareerd om een `int' terug te geven"
+#: c-decl.c:1829 objc/objc-act.c:2534 objc/objc-act.c:6793
+#, fuzzy
+msgid "%Jprevious declaration of '%D'"
+msgstr "eerdere declaratie van `%s'"
-#: c-decl.c:1905
+#: c-decl.c:1870 c-decl.c:1872
#, c-format
-msgid "`%s' was declared `extern' and later `static'"
-msgstr "`%s' was als `extern' gedeclareerd en daarna als `static'"
+msgid "implicit declaration of function `%s'"
+msgstr "impliciete declaratie van functie `%s'"
-#: c-decl.c:1929
+#: c-decl.c:1888
#, c-format
-msgid "extern declaration of `%s' doesn't match global one"
-msgstr "externe declaratie van `%s' komt niet overeen met de globale declaratie"
+msgid "`%s' undeclared here (not in a function)"
+msgstr "`%s' is hier niet gedeclareerd (niet in een functie)"
-#: c-decl.c:1971
+#: c-decl.c:1894
#, c-format
-msgid "`%s' locally external but globally static"
-msgstr "`%s' is locaal `extern', maar globaal `static'"
+msgid "`%s' undeclared (first use in this function)"
+msgstr "`%s' is hier niet gedeclareerd (eerste gebruik in deze functie)"
-#: c-decl.c:2095
-#, c-format
-msgid "function `%s' was previously declared within a block"
-msgstr "functie `%s' was tevoren binnen een blok gedeclareerd"
+#: c-decl.c:1899
+msgid "(Each undeclared identifier is reported only once"
+msgstr "(Elke niet-gedeclareerde naam wordt slechts één"
-#: c-decl.c:2115 c-decl.c:2117
-#, c-format
-msgid "implicit declaration of function `%s'"
-msgstr "impliciete declaratie van functie `%s'"
+#: c-decl.c:1900
+msgid "for each function it appears in.)"
+msgstr "keer vermeld voor elke functie waarin hij staat.)"
-#: c-decl.c:2196
+#: c-decl.c:1953
#, c-format
msgid "label %s referenced outside of any function"
msgstr "naar label %s gerefereerd buiten enige functie"
-#: c-decl.c:2253
+#: c-decl.c:2000
#, c-format
msgid "duplicate label declaration `%s'"
msgstr "herhaalde label-declaratie `%s'"
-#: c-decl.c:2256
-msgid "this is a previous declaration"
+#: c-decl.c:2001
+#, fuzzy
+msgid "%Jthis is a previous declaration"
msgstr "dit is een eerdere declaratie"
-#: c-decl.c:2679
+#: c-decl.c:2036
+#, fuzzy
+msgid "%Hduplicate label `%D'"
+msgstr "herhaald label `%s'"
+
+#: c-decl.c:2038
+#, fuzzy
+msgid "%J`%D' previously defined here"
+msgstr "`%s' tevoren hier gedefinieerd"
+
+#: c-decl.c:2040
+#, fuzzy
+msgid "%J`%D' previously declared here"
+msgstr "`%s' tevoren hier gedeclareerd"
+
+#: c-decl.c:2060
+msgid "%Htraditional C lacks a separate namespace for labels, identifier `%s' conflicts"
+msgstr ""
+
+#: c-decl.c:2131
+#, fuzzy
+msgid "%H`%s' defined as wrong kind of tag"
+msgstr "`%s' als ander soort symbool geherdeclareerd"
+
+#: c-decl.c:2369
msgid "unnamed struct/union that defines no instances"
msgstr "naamloze struct/union die geen instanties definieert"
-#: c-decl.c:2698
+#: c-decl.c:2388
msgid "useless keyword or type name in empty declaration"
msgstr "nutteloos sleutelwoord of typenaam in lege declaratie"
-#: c-decl.c:2705
+#: c-decl.c:2395
msgid "two types specified in one empty declaration"
msgstr "twee types opgegeven in één lege declaratie"
-#: c-decl.c:2710 c-parse.y:753 c-parse.y:755 parse.y:766 parse.y:1853
-#: objc-parse.y:799 objc-parse.y:801 objc-parse.y:3042
+#: c-decl.c:2400 c-parse.y:735 c-parse.y:737 objc/objc-parse.y:776
+#: objc/objc-parse.y:778 objc/objc-parse.y:3016
msgid "empty declaration"
msgstr "lege declaratie"
-#: c-decl.c:2740
+#: c-decl.c:2426
#, fuzzy
msgid "ISO C90 does not support `static' or type qualifiers in parameter array declarators"
msgstr "ISO C89 ondersteunt geen `static' of type-qualificaties in declaratoren van parameter arrays"
-#: c-decl.c:2742
+#: c-decl.c:2428
#, fuzzy
msgid "ISO C90 does not support `[*]' array declarators"
msgstr "ISO C89 ondersteunt geen `[*]' declaratoren van arrays"
-#: c-decl.c:2745
+#: c-decl.c:2431
msgid "GCC does not yet properly implement `[*]' array declarators"
msgstr "GCC heeft nog geen fatsoenlijke implementatie van `[*]' declaratoren van arrays"
-#: c-decl.c:2764
+#: c-decl.c:2447
msgid "static or type qualifiers in abstract declarator"
msgstr "`static' of type-modifier in abstracte declarator"
-#: c-decl.c:2838
-#, c-format
-msgid "`%s' is usually a function"
+#: c-decl.c:2517
+#, fuzzy
+msgid "%J'%D' is usually a function"
msgstr "`%s' is meestal een functie"
-#: c-decl.c:2847
+#: c-decl.c:2526
#, fuzzy, c-format
msgid "typedef `%s' is initialized (use __typeof__ instead)"
msgstr "typedef `%s' krijgt beginwaarde"
-#: c-decl.c:2853
+#: c-decl.c:2532
#, c-format
msgid "function `%s' is initialized like a variable"
msgstr "typedef `%s' krijgt beginwaarde alsof het een variabele is"
#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
-#: c-decl.c:2860
+#: c-decl.c:2539
#, c-format
msgid "parameter `%s' is initialized"
msgstr "parameter `%s' krijgt beginwaarde"
-#: c-decl.c:2880 c-typeck.c:4895
+#: c-decl.c:2559 c-typeck.c:4220
msgid "variable-sized object may not be initialized"
msgstr "object van variabele lengte mag geen beginwaarde krijgen"
-#: c-decl.c:2886
+#: c-decl.c:2565
#, c-format
msgid "variable `%s' has initializer but incomplete type"
msgstr "variabele `%s' heeft beginwaarde, maar een onvolledig type"
-#: c-decl.c:2892
+#: c-decl.c:2571
#, c-format
msgid "elements of array `%s' have incomplete type"
msgstr "elementen van array `%s' hebben een onvolledig type"
-#: c-decl.c:2905
-#, c-format
-msgid "declaration of `%s' has `extern' and is initialized"
-msgstr "de declaratie van `%s' is `extern' en heeft een beginwaarde"
-
-#: c-decl.c:2954 c-decl.c:5828 cp/decl.c:7760 cp/decl.c:14339
-#, fuzzy, c-format
-msgid "inline function `%s' given attribute noinline"
+#: c-decl.c:2640 c-decl.c:5426 cp/decl.c:3748 cp/decl.c:10156
+#, fuzzy
+msgid "%Jinline function '%D' given attribute noinline"
msgstr "ingebouwde functie `%s' als niet-functie gedeclareerd"
-#: c-decl.c:3028
-#, c-format
-msgid "initializer fails to determine size of `%s'"
+#: c-decl.c:2716
+#, fuzzy
+msgid "%Jinitializer fails to determine size of '%D'"
msgstr "beginwaarde legt grootte van `%s' niet vast"
-#: c-decl.c:3033
-#, c-format
-msgid "array size missing in `%s'"
+#: c-decl.c:2721
+#, fuzzy
+msgid "%Jarray size missing in '%D'"
msgstr "array-grootte ontbreekt in `%s'"
-#: c-decl.c:3049
-#, c-format
-msgid "zero or negative size array `%s'"
+#: c-decl.c:2737
+#, fuzzy
+msgid "%Jzero or negative size array '%D'"
msgstr "array `%s' heeft grootte die negatief of 0 is"
-#: c-decl.c:3077
-#, c-format
-msgid "storage size of `%s' isn't known"
+#: c-decl.c:2765
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't known"
msgstr "opslaggrootte van `%s' is onbekend"
-#: c-decl.c:3087
-#, c-format
-msgid "storage size of `%s' isn't constant"
+#: c-decl.c:2775
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't constant"
msgstr "opslaggrootte van `%s' is niet constant"
-#: c-decl.c:3147
-#, fuzzy, c-format
-msgid "ignoring asm-specifier for non-static local variable `%s'"
+#: c-decl.c:2858
+#, fuzzy
+msgid "%Jignoring asm-specifier for non-static local variable '%D'"
msgstr "registernaam opgegeven voor niet-registervariabele `%s'"
-#: c-decl.c:3247
-#, fuzzy, c-format
-msgid "ISO C forbids parameter `%s' shadowing typedef"
-msgstr "ANSI C verbiedt het verbergen van een typedef door parameter `%s'"
+# Of is 'verbiedt parameterdeclaraties op voorhand' beter?
+#: c-decl.c:2969
+#, fuzzy
+msgid "ISO C forbids forward parameter declarations"
+msgstr "ANSI C verbiedt voorwaartse declaraties van parameters"
+
+#: c-decl.c:3151
+msgid "<anonymous>"
+msgstr ""
+
+#: c-decl.c:3160
+#, c-format
+msgid "bit-field `%s' width not an integer constant"
+msgstr "breedte van bitveld `%s' is geen integerconstante"
+
+#: c-decl.c:3168
+#, c-format
+msgid "negative width in bit-field `%s'"
+msgstr "bitveld `%s' heeft een negatieve breedte"
+
+#: c-decl.c:3173
+#, c-format
+msgid "zero width for bit-field `%s'"
+msgstr "bitveld `%s' heeft breedte 0"
-#: c-decl.c:3592 cp/decl.c:10880
+#: c-decl.c:3183
+#, c-format
+msgid "bit-field `%s' has invalid type"
+msgstr "bitveld `%s' heeft een ongeldig type"
+
+#: c-decl.c:3192
+#, c-format
+msgid "type of bit-field `%s' is a GCC extension"
+msgstr ""
+
+#: c-decl.c:3201
+#, c-format
+msgid "width of `%s' exceeds its type"
+msgstr "breedte van `%s' overschrijdt zijn type"
+
+#: c-decl.c:3211
+#, c-format
+msgid "`%s' is narrower than values of its type"
+msgstr "`%s' is smaller dan waarden van zijn type"
+
+#: c-decl.c:3361 cp/decl.c:6778
msgid "`long long long' is too long for GCC"
msgstr "`long long long' is te lang voor GCC"
-#: c-decl.c:3597
+#: c-decl.c:3366
#, fuzzy
msgid "ISO C90 does not support `long long'"
msgstr "ANSI C ondersteunt `long long' niet"
-#: c-decl.c:3606 c-decl.c:3609 cp/decl.c:10885
+#: c-decl.c:3375 c-decl.c:3378 cp/decl.c:6783
#, c-format
msgid "duplicate `%s'"
msgstr "herhaalde `%s'"
-#: c-decl.c:3619 cp/decl.c:10892
+#: c-decl.c:3388 cp/decl.c:6789
msgid "`__thread' before `extern'"
msgstr "`__thread' voor `extern'"
-#: c-decl.c:3621 cp/decl.c:10894
+#: c-decl.c:3390 cp/decl.c:6791
msgid "`__thread' before `static'"
msgstr "`__thread' voor `static'"
-#: c-decl.c:3629 cp/decl.c:10921
+#: c-decl.c:3398 cp/decl.c:6818
#, c-format
msgid "two or more data types in declaration of `%s'"
msgstr "twee of meer data types in de declaratie van `%s'"
-#: c-decl.c:3649 cp/decl.c:10926
+#: c-decl.c:3418 cp/decl.c:6823
#, c-format
msgid "`%s' fails to be a typedef or built in type"
msgstr "`%s' is geen typedef of ingebouwd type"
-#: c-decl.c:3688
+#: c-decl.c:3457
#, c-format
msgid "type defaults to `int' in declaration of `%s'"
msgstr "type krijgt standaardwaarde `int' in de declaratie van `%s'"
-#: c-decl.c:3717
+#: c-decl.c:3486
#, c-format
msgid "both long and short specified for `%s'"
msgstr "zowel 'long' als 'short' opgegeven voor `%s'"
-#: c-decl.c:3721 cp/decl.c:11041
+#: c-decl.c:3490 cp/decl.c:6923
#, c-format
msgid "long or short specified with char for `%s'"
msgstr "'long' of 'short' opgegeven bij 'char' voor `%s'"
-#: c-decl.c:3728 cp/decl.c:11045
+#: c-decl.c:3497 cp/decl.c:6927
#, c-format
msgid "long or short specified with floating type for `%s'"
msgstr "'long' of 'short' opgegeven bij floating-point type voor `%s'"
-#: c-decl.c:3731
+#: c-decl.c:3500
msgid "the only valid combination is `long double'"
msgstr "de enige geldige combinatie is `long double'"
-#: c-decl.c:3737
+#: c-decl.c:3506
#, c-format
msgid "both signed and unsigned specified for `%s'"
msgstr "zowel 'signed' als 'unsigned' opgegeven voor `%s'"
-#: c-decl.c:3739 cp/decl.c:11034
+#: c-decl.c:3508 cp/decl.c:6916
#, c-format
msgid "long, short, signed or unsigned invalid for `%s'"
msgstr "'long', 'short', 'signed' of 'unsigned' ongeldig voor `%s'"
-#: c-decl.c:3745 cp/decl.c:11054
+#: c-decl.c:3514 cp/decl.c:6936
#, c-format
msgid "long, short, signed or unsigned used invalidly for `%s'"
msgstr "ongeldig gebruik van 'long', 'short', 'signed' of 'unsigned' voor `%s'"
-#: c-decl.c:3763 cp/decl.c:11075
+#: c-decl.c:3532 cp/decl.c:6957
#, c-format
msgid "complex invalid for `%s'"
msgstr "'complex' ongeldig voor `%s'"
-#: c-decl.c:3805
+#: c-decl.c:3574
#, fuzzy
msgid "ISO C90 does not support complex types"
msgstr "ISO C89 ondersteunt geen complexe types"
-#: c-decl.c:3817
+#: c-decl.c:3586
msgid "ISO C does not support plain `complex' meaning `double complex'"
msgstr "ISO C ondersteunt simpele `complex' niet in de betekenis van `double complex'"
-#: c-decl.c:3823 c-decl.c:3835
+#: c-decl.c:3592 c-decl.c:3604
#, fuzzy
msgid "ISO C does not support complex integer types"
msgstr "ANSI C ondersteunt `long long' niet"
-#: c-decl.c:3850 c-decl.c:4316 cp/decl.c:11688
+#: c-decl.c:3632 c-decl.c:4090 cp/decl.c:7549
msgid "duplicate `const'"
msgstr "herhaalde `const'"
-#: c-decl.c:3852 c-decl.c:4320 cp/decl.c:11692
+#: c-decl.c:3634 c-decl.c:4094 cp/decl.c:7553
msgid "duplicate `restrict'"
msgstr "herhaalde `restrict'"
-#: c-decl.c:3854 c-decl.c:4318 cp/decl.c:11690
+#: c-decl.c:3636 c-decl.c:4092 cp/decl.c:7551
msgid "duplicate `volatile'"
msgstr "herhaalde `volatile'"
-#: c-decl.c:3882 cp/decl.c:11238
+#: c-decl.c:3664 cp/decl.c:7120
#, c-format
msgid "multiple storage classes in declaration of `%s'"
msgstr "meerdere opslagklassen in declaratie van `%s'"
-#: c-decl.c:3892
+#: c-decl.c:3674
msgid "function definition declared `auto'"
msgstr "functie-definitie als `auto' gedeclareerd"
-#: c-decl.c:3894
+#: c-decl.c:3676
msgid "function definition declared `register'"
msgstr "functie-definitie als `register' gedeclareerd"
-#: c-decl.c:3896
+#: c-decl.c:3678
msgid "function definition declared `typedef'"
msgstr "functie-definitie als `typdef' gedeclareerd"
-#: c-decl.c:3898
+#: c-decl.c:3680
#, fuzzy
msgid "function definition declared `__thread'"
msgstr "functie-definitie als `typdef' gedeclareerd"
-#: c-decl.c:3911
+#: c-decl.c:3693
#, c-format
msgid "storage class specified for structure field `%s'"
msgstr "opslagklasse opgegeven voor structure-veld `%s'"
-#: c-decl.c:3915 cp/decl.c:11285
+#: c-decl.c:3697 cp/decl.c:7165
#, c-format
msgid "storage class specified for parameter `%s'"
msgstr "opslagklasse opgegeven voor parameter `%s'"
-#: c-decl.c:3918 cp/decl.c:11287
+#: c-decl.c:3700 cp/decl.c:7167
msgid "storage class specified for typename"
msgstr "opslagklasse opgegeven voor typenaam"
-#: c-decl.c:3930 cp/decl.c:11302
+#: c-decl.c:3712 cp/decl.c:7182
#, c-format
msgid "`%s' initialized and declared `extern'"
msgstr "`%s' krijgt beginwaarde en is als `extern' gedeclareerd"
-#: c-decl.c:3932 cp/decl.c:11305
+#: c-decl.c:3714 cp/decl.c:7185
#, c-format
msgid "`%s' has both `extern' and initializer"
msgstr "`%s' heeft zowel `extern' als een beginwaarde"
-#: c-decl.c:3937 cp/decl.c:11313
-#, c-format
-msgid "top-level declaration of `%s' specifies `auto'"
+#: c-decl.c:3719
+#, fuzzy, c-format
+msgid "file-scope declaration of `%s' specifies `auto'"
msgstr "top-level declaratie van `%s' specifieert `auto'"
-#: c-decl.c:3942 cp/decl.c:11309
+#: c-decl.c:3724 cp/decl.c:7189
#, c-format
msgid "nested function `%s' declared `extern'"
msgstr "geneste functie `%s' is als `extern' gedeclareerd"
-#: c-decl.c:3948 cp/decl.c:11319
+#: c-decl.c:3730 cp/decl.c:7199
#, fuzzy, c-format
msgid "function-scope `%s' implicitly auto and declared `__thread'"
msgstr "geneste functie `%s' is als `extern' gedeclareerd"
@@ -1079,1454 +1167,1418 @@ msgstr "geneste functie `%s' is als `extern' gedeclareerd"
#. Only the innermost declarator (making a parameter be of
#. array type which is converted to pointer type)
#. may have static or type qualifiers.
-#: c-decl.c:3987 c-decl.c:4188
+#: c-decl.c:3769 c-decl.c:3962
#, fuzzy
msgid "static or type qualifiers in non-parameter array declarator"
msgstr "ongeldige type-modifier binnen pointer-declarator"
-#: c-decl.c:4031
+#: c-decl.c:3813
#, c-format
msgid "declaration of `%s' as array of voids"
msgstr "`%s' wordt gedeclareerd als een array van voids"
-#: c-decl.c:4037
+#: c-decl.c:3819
#, c-format
msgid "declaration of `%s' as array of functions"
msgstr "`%s' wordt gedeclareerd als een array van functies"
-#: c-decl.c:4042 c-decl.c:5332
+#: c-decl.c:3824
#, fuzzy
msgid "invalid use of structure with flexible array member"
msgstr "ongeldig gebruik van onvolledige typedef `%s'"
-#: c-decl.c:4061
+#: c-decl.c:3843
#, c-format
msgid "size of array `%s' has non-integer type"
msgstr "grootte van array `%s' is van een niet-integraal type"
-#: c-decl.c:4066
+#: c-decl.c:3848
#, fuzzy, c-format
msgid "ISO C forbids zero-size array `%s'"
msgstr "ANSI C verbiedt array `%s' met lengte 0"
-#: c-decl.c:4073
+#: c-decl.c:3855
#, c-format
msgid "size of array `%s' is negative"
msgstr "grootte van array `%s' is negatief"
-#: c-decl.c:4086
+#: c-decl.c:3868
#, fuzzy, c-format
msgid "ISO C90 forbids array `%s' whose size can't be evaluated"
msgstr "ANSI C verbiedt array `%s', wiens grootte niet geëvalueerd kan worden"
-#: c-decl.c:4089
+#: c-decl.c:3871
#, fuzzy, c-format
msgid "ISO C90 forbids variable-size array `%s'"
msgstr "ANSI C verbiedt array `%s' van variabele lengte"
-#: c-decl.c:4119 c-decl.c:4342 cp/decl.c:11897
+#: c-decl.c:3901 c-decl.c:4116 cp/decl.c:7723
#, c-format
msgid "size of array `%s' is too large"
msgstr "omvang van array `%s' is te groot"
-#: c-decl.c:4145
+#: c-decl.c:3927
#, fuzzy
msgid "ISO C90 does not support flexible array members"
msgstr "ANSI C ondersteun geen formaatbreedte voor strftime"
-#: c-decl.c:4155
+#: c-decl.c:3937
msgid "array type has incomplete element type"
msgstr "arraytype heeft onvolledig elementtype"
-#: c-decl.c:4162 c-decl.c:4392
-#, fuzzy
-msgid "ISO C forbids const or volatile function types"
-msgstr "ANSI C verbiedt 'const' of 'volatile' functietypes"
-
-#: c-decl.c:4208 cp/decl.c:11445
+#: c-decl.c:3982 cp/decl.c:7320
#, c-format
msgid "`%s' declared as function returning a function"
msgstr "`%s' gedeclareerd als een functie die een functie teruggeeft"
-#: c-decl.c:4213 cp/decl.c:11450
+#: c-decl.c:3987 cp/decl.c:7325
#, c-format
msgid "`%s' declared as function returning an array"
msgstr "`%s' gedeclareerd als een functie die een array teruggeeft"
-#: c-decl.c:4241
+#: c-decl.c:4015
#, fuzzy
msgid "ISO C forbids qualified void function return type"
msgstr "ANSI C verbiedt een gekwalificeerde void als teruggeefwaarde voor een functie"
-#: c-decl.c:4245
+#: c-decl.c:4019
#, fuzzy
msgid "type qualifiers ignored on function return type"
msgstr "ANSI C verbiedt een gekwalificeerde void als teruggeefwaarde voor een functie"
-#: c-decl.c:4274 c-decl.c:4357 c-decl.c:4481 c-decl.c:4573
+#: c-decl.c:4048 c-decl.c:4131 c-decl.c:4255 c-decl.c:4341
#, fuzzy
msgid "ISO C forbids qualified function types"
msgstr "ANSI C verbiedt een gekwalificeerd functietype"
-#: c-decl.c:4314 cp/decl.c:11684
+#: c-decl.c:4088 cp/decl.c:7545
msgid "invalid type modifier within pointer declarator"
msgstr "ongeldige type-modifier binnen pointer-declarator"
-#: c-decl.c:4412 cp/decl.c:12182
+#: c-decl.c:4166
+#, fuzzy
+msgid "ISO C forbids const or volatile function types"
+msgstr "ANSI C verbiedt 'const' of 'volatile' functietypes"
+
+#: c-decl.c:4186 cp/decl.c:8005
#, c-format
msgid "variable or field `%s' declared void"
msgstr "variabele of veld `%s' als void gedeclareerd"
-#: c-decl.c:4445
+#: c-decl.c:4219
msgid "attributes in parameter array declarator ignored"
msgstr "attributen genegeerd in declarator van parameter-array"
-#: c-decl.c:4470
+#: c-decl.c:4244
#, fuzzy
msgid "invalid type modifier within array declarator"
msgstr "ongeldige type-modifier binnen pointer-declarator"
-#: c-decl.c:4515
+#: c-decl.c:4289
#, c-format
msgid "field `%s' declared as a function"
msgstr "veld `%s' als een functie gedeclareerd"
-#: c-decl.c:4521
+#: c-decl.c:4295
#, c-format
msgid "field `%s' has incomplete type"
msgstr "veld `%s' heeft een onvolledig type"
-#: c-decl.c:4553 c-decl.c:4555 c-decl.c:4557 c-decl.c:4564
+#: c-decl.c:4321 c-decl.c:4323 c-decl.c:4325 c-decl.c:4332
#, c-format
msgid "invalid storage class for function `%s'"
msgstr "ongeldige opslagklasse voor functie `%s'"
-#: c-decl.c:4579
+#: c-decl.c:4347
msgid "`noreturn' function returns non-void value"
msgstr "`noreturn' functie geeft niet-void waarde terug"
-#: c-decl.c:4594
+#: c-decl.c:4362
msgid "cannot inline function `main'"
msgstr "kan functie `main' niet inline maken"
-#: c-decl.c:4649
-#, c-format
-msgid "variable `%s' declared `inline'"
+#: c-decl.c:4415
+#, fuzzy
+msgid "variable previously declared `static' redeclared `extern'"
+msgstr "variabele of veld `%s' als void gedeclareerd"
+
+#: c-decl.c:4424
+#, fuzzy
+msgid "%Jvariable '%D' declared `inline'"
msgstr "variabele `%s' als inline gedeclareerd"
#. A mere warning is sure to result in improper semantics
#. at runtime. Don't bother to allow this to compile.
-#: c-decl.c:4677 cp/decl.c:9951
+#: c-decl.c:4452 cp/decl.c:5877
#, fuzzy
msgid "thread-local storage not supported for this target"
msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem"
-#: c-decl.c:4732 c-decl.c:5880
+#: c-decl.c:4513 c-decl.c:5470
msgid "function declaration isn't a prototype"
msgstr "functie-declaratie is geen prototype"
-#: c-decl.c:4738
+#: c-decl.c:4519
msgid "parameter names (without types) in function declaration"
msgstr "parameternamen (zonder types) in functiedeclaratie"
-#: c-decl.c:4770 c-decl.c:6250
+#: c-decl.c:4547
#, c-format
msgid "parameter `%s' has incomplete type"
msgstr "parameter `%s' heeft een onvolledig type"
-#: c-decl.c:4773
+#: c-decl.c:4550
msgid "parameter has incomplete type"
msgstr "parameter heeft een onvolledig type"
-#: c-decl.c:4794
-#, c-format
-msgid "parameter `%s' points to incomplete type"
-msgstr "parameter `%s' wijst naar een onvolledig type"
+#: c-decl.c:4599
+msgid "\"void\" as only parameter may not be qualified"
+msgstr ""
-#: c-decl.c:4797
-msgid "parameter points to incomplete type"
-msgstr "parameter wijst naar een onvolledig type"
+#: c-decl.c:4620
+msgid "\"void\" must be the only parameter"
+msgstr ""
-#: c-decl.c:4862
-#, c-format
-msgid "parameter `%s' has just a forward declaration"
+#: c-decl.c:4637
+#, fuzzy
+msgid "%Jparameter \"%D\" has just a forward declaration"
msgstr "parameter `%s' heeft enkel een voorwaartse declaratie"
-#: c-decl.c:4903
-msgid "`void' in parameter list must be the entire list"
-msgstr "`void' in parameterlijst moet de gehele parameterlijst zijn"
-
-#: c-decl.c:4934
-#, fuzzy, c-format
-msgid "`struct %s' declared inside parameter list"
-msgstr "`%s %s' binnen parameterlijst gedeclareerd"
-
-#: c-decl.c:4937
+#. The first %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4665
#, fuzzy, c-format
-msgid "`union %s' declared inside parameter list"
+msgid "\"%s %s\" declared inside parameter list"
msgstr "`%s %s' binnen parameterlijst gedeclareerd"
-#: c-decl.c:4940
+#. The %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4669
#, fuzzy, c-format
-msgid "`enum %s' declared inside parameter list"
-msgstr "`%s %s' binnen parameterlijst gedeclareerd"
-
-#: c-decl.c:4947
-#, fuzzy
-msgid "anonymous struct declared inside parameter list"
-msgstr "anonieme %s gedeclareerd binnen parameterlijst"
-
-#: c-decl.c:4949
-#, fuzzy
-msgid "anonymous union declared inside parameter list"
-msgstr "anonieme %s gedeclareerd binnen parameterlijst"
-
-#: c-decl.c:4951
-#, fuzzy
-msgid "anonymous enum declared inside parameter list"
+msgid "anonymous %s declared inside parameter list"
msgstr "anonieme %s gedeclareerd binnen parameterlijst"
-#: c-decl.c:4955
+#: c-decl.c:4673
#, fuzzy
msgid "its scope is only this definition or declaration, which is probably not what you want"
msgstr "het bereik ervan is enkel deze definitie of declaratie, wat waarschijnlijk niet de bedoeling is"
-#: c-decl.c:5032
+#: c-decl.c:4758
#, c-format
msgid "redefinition of `union %s'"
msgstr "herdefinitie van `union %s'"
-#: c-decl.c:5034
+#: c-decl.c:4760
#, c-format
msgid "redefinition of `struct %s'"
msgstr "herdefinitie van `struct %s'"
-#: c-decl.c:5105 cp/decl.c:7532
+#: c-decl.c:4828 cp/decl.c:3521
msgid "declaration does not declare anything"
msgstr "declaratie declareert niets"
-#: c-decl.c:5169 c-decl.c:5172
+#: c-decl.c:4873 c-decl.c:4889
+#, fuzzy
+msgid "%Jduplicate member '%D'"
+msgstr "herhaald lid `%s'"
+
+#: c-decl.c:4923 c-decl.c:4926
#, fuzzy, c-format
msgid "%s defined inside parms"
msgstr "enum gedinieerd binnen parameters"
-#: c-decl.c:5170 c-decl.c:5173 c-decl.c:5184
+#: c-decl.c:4924 c-decl.c:4927 c-decl.c:4938
msgid "union"
msgstr "union"
# Of beter onvertaald laten?
-#: c-decl.c:5170 c-decl.c:5173
+#: c-decl.c:4924 c-decl.c:4927
msgid "structure"
msgstr "structuur"
-#: c-decl.c:5183
+#: c-decl.c:4937
#, fuzzy, c-format
msgid "%s has no %s"
msgstr "%s heeft geen leden"
-#: c-decl.c:5184
+#: c-decl.c:4938
msgid "struct"
msgstr "struct"
-#: c-decl.c:5185
+#: c-decl.c:4939
#, fuzzy
msgid "named members"
msgstr "%s heeft geen benoemde leden"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "members"
msgstr "leden"
-#: c-decl.c:5224
+#: c-decl.c:4978
#, c-format
msgid "nested redefinition of `%s'"
msgstr "geneste herdefinitie van `%s'"
-#: c-decl.c:5237
-#, c-format
-msgid "bit-field `%s' width not an integer constant"
-msgstr "breedte van bitveld `%s' is geen integerconstante"
-
-#: c-decl.c:5248
-#, c-format
-msgid "bit-field `%s' has invalid type"
-msgstr "bitveld `%s' heeft een ongeldig type"
-
-#: c-decl.c:5260
-#, fuzzy, c-format
-msgid "bit-field `%s' type invalid in ISO C"
-msgstr "type van bitveld `%s' is ongeldig in ANSI C"
-
-#: c-decl.c:5271
-#, c-format
-msgid "negative width in bit-field `%s'"
-msgstr "bitveld `%s' heeft een negatieve breedte"
-
-#: c-decl.c:5273
-#, c-format
-msgid "width of `%s' exceeds its type"
-msgstr "breedte van `%s' overschrijdt zijn type"
-
-#: c-decl.c:5275
-#, c-format
-msgid "zero width for bit-field `%s'"
-msgstr "bitveld `%s' heeft breedte 0"
-
-#: c-decl.c:5289
-#, c-format
-msgid "`%s' is narrower than values of its type"
-msgstr "`%s' is smaller dan waarden van zijn type"
-
-#: c-decl.c:5323
-msgid "flexible array member in union"
+#: c-decl.c:4998
+#, fuzzy
+msgid "%Jflexible array member in union"
msgstr "flexibele array als lid van union"
-#: c-decl.c:5325
-msgid "flexible array member not at end of struct"
+#: c-decl.c:5000
+#, fuzzy
+msgid "%Jflexible array member not at end of struct"
msgstr "flexibele array niet laatste lid van struct"
-#: c-decl.c:5327
-msgid "flexible array member in otherwise empty struct"
+#: c-decl.c:5002
+#, fuzzy
+msgid "%Jflexible array member in otherwise empty struct"
msgstr "flexibele array als lid in overigens lege struct"
-#: c-decl.c:5357
-#, c-format
-msgid "duplicate member `%s'"
-msgstr "herhaald lid `%s'"
+#: c-decl.c:5007
+#, fuzzy
+msgid "%Jinvalid use of structure with flexible array member"
+msgstr "ongeldig gebruik van onvolledige typedef `%s'"
-#: c-decl.c:5448
+#: c-decl.c:5102
msgid "union cannot be made transparent"
msgstr "union kan niet transparant gemaakt worden"
#. This enum is a named one that has been declared already.
-#: c-decl.c:5558
+#: c-decl.c:5171
#, c-format
msgid "redeclaration of `enum %s'"
msgstr "herdeclaratie van `enum %s'"
-#: c-decl.c:5592
+#: c-decl.c:5202
msgid "enum defined inside parms"
msgstr "enum gedinieerd binnen parameters"
-#: c-decl.c:5625
+#: c-decl.c:5235
msgid "enumeration values exceed range of largest integer"
msgstr "enumeratiewaarden overschrijden het bereik van de grootste integer"
-#: c-decl.c:5734
+#: c-decl.c:5338
#, c-format
msgid "enumerator value for `%s' not integer constant"
msgstr "enumeratiewaarde voor `%s' is geen integrale constante"
-#: c-decl.c:5747
+#: c-decl.c:5351
msgid "overflow in enumeration values"
msgstr "overflow in enumeratiewaarden"
-#: c-decl.c:5752
+#: c-decl.c:5356
#, fuzzy
msgid "ISO C restricts enumerator values to range of `int'"
msgstr "ANSI C beperkt enumeratiewaarden tot het bereik van het `int' type"
-#: c-decl.c:5834
+#: c-decl.c:5432
#, fuzzy
msgid "return type is an incomplete type"
msgstr "type van teruggeefwaarde is onvolledig"
-#: c-decl.c:5842
+#: c-decl.c:5440
#, fuzzy
msgid "return type defaults to `int'"
msgstr "teruggeefwaarde krijgt standaardtype `int'"
-#: c-decl.c:5889
-#, c-format
-msgid "no previous prototype for `%s'"
+#: c-decl.c:5476
+#, fuzzy
+msgid "%Jno previous prototype for '%D'"
msgstr "geen eerder prototype voor `%s'"
-#: c-decl.c:5896
-#, c-format
-msgid "`%s' was used with no prototype before its definition"
+#: c-decl.c:5482
+#, fuzzy
+msgid "%J'%D' was used with no prototype before its definition"
msgstr "`%s' werd voor haar definitie gebruikt zonder protoype"
-#: c-decl.c:5902
-#, c-format
-msgid "no previous declaration for `%s'"
+#: c-decl.c:5489
+#, fuzzy
+msgid "%Jno previous declaration for '%D'"
msgstr "geen eerdere declaratie voor `%s'"
-#: c-decl.c:5909
-#, c-format
-msgid "`%s' was used with no declaration before its definition"
+#: c-decl.c:5495
+#, fuzzy
+msgid "%J`%D' was used with no declaration before its definition"
msgstr "`%s' werd voor haar definitie gebruikt zonder declaratie"
-#: c-decl.c:5933 c-decl.c:6486
-#, c-format
-msgid "return type of `%s' is not `int'"
+#: c-decl.c:5531 c-decl.c:6037
+#, fuzzy
+msgid "%Jreturn type of '%D' is not `int'"
msgstr "het type van de teruggeefwaarde van `%s' is niet `int'"
-#: c-decl.c:5949
-#, c-format
-msgid "first argument of `%s' should be `int'"
+#: c-decl.c:5546
+#, fuzzy
+msgid "%Jfirst argument of '%D' should be `int'"
msgstr "eerste argument van `%s' zou een `int' moeten zijn"
-#: c-decl.c:5958
-#, c-format
-msgid "second argument of `%s' should be `char **'"
+#: c-decl.c:5555
+#, fuzzy
+msgid "%Jsecond argument of '%D' should be 'char **'"
msgstr "tweede argument van `%s' zou een `char **' moeten zijn"
-#: c-decl.c:5967
-#, c-format
-msgid "third argument of `%s' should probably be `char **'"
+#: c-decl.c:5564
+#, fuzzy
+msgid "%Jthird argument of '%D' should probably be 'char **'"
msgstr "derde argument van `%s' zou waarschijnlijk een `char **' moeten zijn"
-#: c-decl.c:5976
-#, c-format
-msgid "`%s' takes only zero or two arguments"
+#: c-decl.c:5574
+#, fuzzy
+msgid "%J'%D' takes only zero or two arguments"
msgstr "`%s' neemt ofwel geen, ofwel twee argumenten"
-#: c-decl.c:5979
-#, c-format
-msgid "`%s' is normally a non-static function"
+#: c-decl.c:5577
+#, fuzzy
+msgid "%J'%D' is normally a non-static function"
msgstr "`%s' is gewoonlijk een niet-static funtie"
-#: c-decl.c:6077
-msgid "parm types given both in parmlist and separately"
-msgstr "parametertypes zowel in parameterlijst als apart opgegeven"
+#: c-decl.c:5633
+msgid "%Jold-style parameter declarations in prototyped function definition"
+msgstr ""
-#: c-decl.c:6098
-msgid "parameter name omitted"
+#: c-decl.c:5647
+#, fuzzy
+msgid "%Jparameter name omitted"
msgstr "parameternaam weggelaten"
-#: c-decl.c:6102 c-decl.c:6204
-#, c-format
-msgid "parameter `%s' declared void"
-msgstr "parameter `%s' als void gedeclareerd"
-
-#: c-decl.c:6178
-msgid "parameter name missing from parameter list"
+#: c-decl.c:5722
+#, fuzzy
+msgid "%Jparameter name missing from parameter list"
msgstr "parameternaam ontbreekt uit parameterlijst"
-#: c-decl.c:6197
-#, c-format
-msgid "multiple parameters named `%s'"
+#: c-decl.c:5732
+#, fuzzy
+msgid "%J\"%D\" declared as a non-parameter"
+msgstr "veld `%s' als een functie gedeclareerd"
+
+#: c-decl.c:5737
+#, fuzzy
+msgid "%Jmultiple parameters named \"%D\""
msgstr "meerdere parameters hebben de naam `%s'"
-#: c-decl.c:6219 c-decl.c:6221
-#, c-format
-msgid "type of `%s' defaults to `int'"
+#: c-decl.c:5745
+#, fuzzy
+msgid "%Jparameter \"%D\" declared void"
+msgstr "parameter `%s' als void gedeclareerd"
+
+#: c-decl.c:5760 c-decl.c:5762
+#, fuzzy
+msgid "%Jtype of \"%D\" defaults to \"int\""
msgstr "`%s' krijgt standaardtype `int'"
-#: c-decl.c:6257
-#, c-format
-msgid "declaration for parameter `%s' but no such parameter"
+#: c-decl.c:5776
+#, fuzzy
+msgid "%Jparameter \"%D\" has incomplete type"
+msgstr "parameter heeft een onvolledig type"
+
+#: c-decl.c:5782
+#, fuzzy
+msgid "%Jdeclaration for parameter \"%D\" but no such parameter"
msgstr "declaratie voor parameter `%s' maar er is zo geen parameter"
-#: c-decl.c:6305
+#: c-decl.c:5834
msgid "number of arguments doesn't match prototype"
msgstr "aantal argumenten kom niet overeen met prototype"
-#: c-decl.c:6335
-#, c-format
-msgid "promoted argument `%s' doesn't match prototype"
+#: c-decl.c:5835 c-decl.c:5866 c-decl.c:5873
+#, fuzzy
+msgid "%Hprototype declaration"
+msgstr "lege declaratie"
+
+#: c-decl.c:5864
+#, fuzzy
+msgid "promoted argument \"%D\" doesn't match prototype"
msgstr "gepromoveerd argument `%s' komt niet overeen met prototype"
-#: c-decl.c:6345
-#, c-format
-msgid "argument `%s' doesn't match prototype"
+#: c-decl.c:5872
+#, fuzzy
+msgid "argument \"%D\" doesn't match prototype"
msgstr "argument `%s' komt niet overeen met prototype"
-#: c-decl.c:6518 cp/decl.c:15049
+#: c-decl.c:6069 cp/decl.c:10876
#, fuzzy
msgid "no return statement in function returning non-void"
msgstr "`return' zonder waarde in een functie die een niet-void waarde teruggeeft"
-#: c-decl.c:6525
+#: c-decl.c:6076
msgid "this function may return with or without a value"
msgstr "deze functie kan met of zonder waarde tergukeren"
-#: c-decl.c:6729
-#, c-format
-msgid "size of return value of `%s' is %u bytes"
-msgstr "grootte van teruggeefwaarde van `%s' is %u bytes"
-
-#: c-decl.c:6733
-#, fuzzy, c-format
-msgid "size of return value of `%s' is larger than %d bytes"
-msgstr "grootte van teruggeefwaarde van `%s' is %u bytes"
-
#. If we get here, declarations have been used in a for loop without
#. the C99 for loop scope. This doesn't make much sense, so don't
#. allow it.
-#: c-decl.c:6791
-msgid "`for' loop initial declaration used outside C99 mode"
+#: c-decl.c:6175
+#, fuzzy
+msgid "'for' loop initial declaration used outside C99 mode"
msgstr "initiële declaratie voor `for' lus gebruikt buiten C99 modus"
-#: c-decl.c:6815
+#: c-decl.c:6199
#, fuzzy, c-format
-msgid "`struct %s' declared in `for' loop initial declaration"
+msgid "'struct %s' declared in 'for' loop initial declaration"
msgstr "`%s' als 'inline' gedeclareerd na de definitie"
-#: c-decl.c:6818
+#: c-decl.c:6202
#, fuzzy, c-format
-msgid "`union %s' declared in `for' loop initial declaration"
+msgid "'union %s' declared in 'for' loop initial declaration"
msgstr "`%s' als 'inline' gedeclareerd na de definitie"
-#: c-decl.c:6821
+#: c-decl.c:6205
#, fuzzy, c-format
-msgid "`enum %s' declared in `for' loop initial declaration"
+msgid "'enum %s' declared in 'for' loop initial declaration"
msgstr "`%s' als 'inline' gedeclareerd na de definitie"
-#: c-decl.c:6829
-#, fuzzy, c-format
-msgid "declaration of non-variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6213
+#, fuzzy
+msgid "%Jdeclaration of non-variable '%D' in 'for' loop initial declaration"
msgstr "de declaratie van `%s' verbergt een globale declaratie"
-#: c-decl.c:6831
-#, fuzzy, c-format
-msgid "declaration of static variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6216
+#, fuzzy
+msgid "%Jdeclaration of static variable '%D' in 'for' loop initial declaration"
msgstr "de declaratie van `%s' verbergt een globale declaratie"
-#: c-decl.c:6833
-#, fuzzy, c-format
-msgid "declaration of `extern' variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6219
+#, fuzzy
+msgid "%Jdeclaration of 'extern' variable '%D' in 'for' loop initial declaration"
msgstr "de declaratie van `%s' verbergt een globale declaratie"
-#: c-format.c:109 c-format.c:191
-msgid "format string arg not a string type"
-msgstr "de formaatstring is geen string-type"
-
-#: c-format.c:124
+#: c-decl.c:6532
#, fuzzy
-msgid "args to be formatted is not '...'"
-msgstr "de te formatteren argumenten zijn niet ..."
+msgid "%Jredefinition of global '%D'"
+msgstr "herdefinitie van `%s'"
-# Klinkt wat vreemd...
-#: c-format.c:133
-msgid "strftime formats cannot format arguments"
-msgstr "strftime formaten kunnen geen argumenten formatteren"
+#: c-decl.c:6533
+#, fuzzy
+msgid "%J'%D' previously defined here"
+msgstr "`%s' tevoren hier gedefinieerd"
-#: c-format.c:168 c-format.c:270
+#: c-format.c:94 c-format.c:210
#, fuzzy
msgid "format string has invalid operand number"
msgstr "de formaatstring heeft een niet-constant operand-nummer"
-#: c-format.c:202
+#: c-format.c:111
msgid "function does not return string type"
msgstr "functie geeft geen string-type terug"
-#: c-format.c:233
+#: c-format.c:140
+msgid "format string arg not a string type"
+msgstr "de formaatstring is geen string-type"
+
+#: c-format.c:190
msgid "unrecognized format specifier"
msgstr "onbekende formaatspecificatie"
-#: c-format.c:246
+#: c-format.c:203
#, c-format
msgid "`%s' is an unrecognized format function type"
msgstr "`%s' is een onbekend type formaatfunctie"
-#: c-format.c:280
+#: c-format.c:216
+#, fuzzy
+msgid "'...' has invalid operand number"
+msgstr "de formaatstring heeft een niet-constant operand-nummer"
+
+#: c-format.c:224
msgid "format string arg follows the args to be formatted"
msgstr "de formaatstring volgt de te formatteren argumenten"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "` ' flag"
msgstr "` ' vlag"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "the ` ' printf flag"
msgstr "de ` ' printf-vlag"
-#: c-format.c:602 c-format.c:673
+#: c-format.c:566 c-format.c:590 c-format.c:627 c-format.c:683
msgid "`+' flag"
msgstr "`+' vlag"
-#: c-format.c:602
+#: c-format.c:566 c-format.c:590 c-format.c:627
msgid "the `+' printf flag"
msgstr "de `+' printf-vlag"
-#: c-format.c:603 c-format.c:649
+#: c-format.c:567 c-format.c:591 c-format.c:628 c-format.c:659
msgid "`#' flag"
msgstr "`#' vlag"
-#: c-format.c:603
+#: c-format.c:567 c-format.c:591 c-format.c:628
msgid "the `#' printf flag"
msgstr "de `#' printf-vlag"
-#: c-format.c:604 c-format.c:647
+#: c-format.c:568 c-format.c:592 c-format.c:657
msgid "`0' flag"
msgstr "`0' vlag"
-#: c-format.c:604
+#: c-format.c:568 c-format.c:592
msgid "the `0' printf flag"
msgstr "de `0' printf-vlag"
-#: c-format.c:605 c-format.c:646 c-format.c:676
+#: c-format.c:569 c-format.c:593 c-format.c:656 c-format.c:686
msgid "`-' flag"
msgstr "`-' vlag"
-#: c-format.c:605
+#: c-format.c:569 c-format.c:593
msgid "the `-' printf flag"
msgstr "de `-' printf-vlag"
-#: c-format.c:606 c-format.c:630
+#: c-format.c:570 c-format.c:640
msgid "`'' flag"
msgstr "`'' vlag"
-#: c-format.c:606
+#: c-format.c:570
msgid "the `'' printf flag"
msgstr "de `'' printf-vlag"
-#: c-format.c:607 c-format.c:631
+#: c-format.c:571 c-format.c:641
msgid "`I' flag"
msgstr "`I' vlag"
-#: c-format.c:607
+#: c-format.c:571
msgid "the `I' printf flag"
msgstr "de `I' printf-vlag"
-#: c-format.c:608 c-format.c:628 c-format.c:650 c-format.c:677 c-format.c:1702
+#: c-format.c:572 c-format.c:594 c-format.c:638 c-format.c:660 c-format.c:687
+#: c-format.c:1802
msgid "field width"
msgstr "veldbreedte"
-#: c-format.c:608
+#: c-format.c:572 c-format.c:594
msgid "field width in printf format"
msgstr "veldbreedte in printf-formaat"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision"
msgstr "precisie"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision in printf format"
msgstr "precisie in printf-formaat"
# Goede vertaling voor modifier? "aanpasser" en "veranderaar" klinken nogal duf...
-#: c-format.c:610 c-format.c:629 c-format.c:680
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630 c-format.c:639
+#: c-format.c:690
msgid "length modifier"
msgstr "lengte-modifier"
-#: c-format.c:610
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630
msgid "length modifier in printf format"
msgstr "lengte-modifier in printf-formaat"
# moet beter kunnen...
-#: c-format.c:626
+#: c-format.c:636
#, fuzzy
msgid "assignment suppression"
msgstr "toewijzingsonderdrukking"
# dit wringt nogal...
-#: c-format.c:626
+#: c-format.c:636
msgid "the assignment suppression scanf feature"
msgstr "de scanf toewijzingsonderdrukking mogelijkheid"
-#: c-format.c:627
+#: c-format.c:637
msgid "`a' flag"
msgstr "`a' vlag"
-#: c-format.c:627
+#: c-format.c:637
msgid "the `a' scanf flag"
msgstr "de `a' scanf-vlag"
-#: c-format.c:628
+#: c-format.c:638
msgid "field width in scanf format"
msgstr "veldbreedte in scanf-formaat"
-#: c-format.c:629
+#: c-format.c:639
msgid "length modifier in scanf format"
msgstr "lengte-modifier in scanf-formaat"
-#: c-format.c:630
+#: c-format.c:640
msgid "the `'' scanf flag"
msgstr "de `'' scanf-vlag"
-#: c-format.c:631
+#: c-format.c:641
msgid "the `I' scanf flag"
msgstr "de `I' scanf-vlag"
-#: c-format.c:645
+#: c-format.c:655
msgid "`_' flag"
msgstr "`_' vlag"
-#: c-format.c:645
+#: c-format.c:655
msgid "the `_' strftime flag"
msgstr "de `_' strftime-vlag"
-#: c-format.c:646
+#: c-format.c:656
msgid "the `-' strftime flag"
msgstr "de `-' strftime-vlag"
-#: c-format.c:647
+#: c-format.c:657
msgid "the `0' strftime flag"
msgstr "de `0' strftime-vlag"
-#: c-format.c:648 c-format.c:672
+#: c-format.c:658 c-format.c:682
msgid "`^' flag"
msgstr "`^' vlag"
-#: c-format.c:648
+#: c-format.c:658
msgid "the `^' strftime flag"
msgstr "de `^' strftime-vlag"
-#: c-format.c:649
+#: c-format.c:659
msgid "the `#' strftime flag"
msgstr "de `#' strftime-vlag"
-#: c-format.c:650
+#: c-format.c:660
msgid "field width in strftime format"
msgstr "veldbreedte in strftime-formaat"
# Wat is een correcte vertaling voor 'identifier'? Ik kies voor 'naam'.
-#: c-format.c:651
+#: c-format.c:661
#, fuzzy
msgid "`E' modifier"
msgstr "`E' modifier"
-#: c-format.c:651
+#: c-format.c:661
msgid "the `E' strftime modifier"
msgstr "de `E' strftime-modifier"
# Wat is een correcte vertaling voor 'identifier'? Ik kies voor 'naam'.
-#: c-format.c:652
+#: c-format.c:662
#, fuzzy
msgid "`O' modifier"
msgstr "`O' modifier"
-#: c-format.c:652
+#: c-format.c:662
msgid "the `O' strftime modifier"
msgstr "de `O' strftime-modifier"
-#: c-format.c:653
+#: c-format.c:663
msgid "the `O' modifier"
msgstr "de `O' modifier"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character"
msgstr "opvulkarakter"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character in strfmon format"
msgstr "opvulkarakter in strfmon-formaat"
-#: c-format.c:672
+#: c-format.c:682
msgid "the `^' strfmon flag"
msgstr "de `^' strfmon-vlag"
-#: c-format.c:673
+#: c-format.c:683
msgid "the `+' strfmon flag"
msgstr "de `+' strfmon-vlag"
-#: c-format.c:674
+#: c-format.c:684
msgid "`(' flag"
msgstr "`(' vlag"
-#: c-format.c:674
+#: c-format.c:684
msgid "the `(' strfmon flag"
msgstr "de `(' strfmon-vlag"
-#: c-format.c:675
+#: c-format.c:685
msgid "`!' flag"
msgstr "`!' vlag"
-#: c-format.c:675
+#: c-format.c:685
msgid "the `!' strfmon flag"
msgstr "de `!' strfmon-vlag"
-#: c-format.c:676
+#: c-format.c:686
msgid "the `-' strfmon flag"
msgstr "de `-' strfmon-vlag"
-#: c-format.c:677
+#: c-format.c:687
msgid "field width in strfmon format"
msgstr "veldbreedte in strfmon-formaat"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision"
msgstr "linkse precisie"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision in strfmon format"
msgstr "linkse precisie in strfmon-formaat"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision"
msgstr "rechtse precisie"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision in strfmon format"
msgstr "rechtse precisie in strfmon-formaat"
-#: c-format.c:680
+#: c-format.c:690
msgid "length modifier in strfmon format"
msgstr "lengte-modifier in strfmon-formaat"
-#: c-format.c:983
+#: c-format.c:1107
#, c-format
msgid "function might be possible candidate for `%s' format attribute"
msgstr "deze functie is een mogelijke kandidaat voor het `%s' formaat-attribuut"
# niet zeker of '$-operandnummer' wel de juiste betekenis vervat
-#: c-format.c:1107 c-format.c:1128 c-format.c:2112
+#: c-format.c:1223 c-format.c:1244 c-format.c:2212
msgid "missing $ operand number in format"
msgstr "$-operandnummer ontbreekt in formaat"
-#: c-format.c:1138
+#: c-format.c:1254
#, c-format
msgid "%s does not support %%n$ operand number formats"
msgstr "%s ondersteunt geen %%n$ operandnummer formaten"
-#: c-format.c:1145
+#: c-format.c:1261
msgid "operand number out of range in format"
msgstr "operandnummer buiten bereik in formaat"
-#: c-format.c:1168
+#: c-format.c:1284
#, c-format
msgid "format argument %d used more than once in %s format"
msgstr "formaat-argument %d meer dan eens gebruikt in %s formaat"
# moet beter kunnen
-#: c-format.c:1218
+#: c-format.c:1331
#, c-format
msgid "format argument %d unused before used argument %d in $-style format"
msgstr "formaat-argument %d ongebruikt voor gebruikt argument %d in $-stijl formaat"
-#: c-format.c:1322
+#: c-format.c:1429
msgid "format not a string literal, format string not checked"
msgstr "formaat is geen stringconstante, de formaatstring werd dus niet nagekeken"
-#: c-format.c:1336
+#: c-format.c:1443
msgid "format not a string literal and no format arguments"
msgstr "formaat is geen stringconstante en er zijn geen formaat-argumenten"
-#: c-format.c:1338
+#: c-format.c:1445
msgid "format not a string literal, argument types not checked"
msgstr "formaat is geen stringconstante, de argumenttypes werden dus niet nagekeken"
-#: c-format.c:1351
+#: c-format.c:1458
msgid "too many arguments for format"
msgstr "teveel argumenten voor formaat"
-#: c-format.c:1354
+#: c-format.c:1461
msgid "unused arguments in $-style format"
msgstr "ongebruikte argumenten in $-stijl formaat"
-#: c-format.c:1357
+#: c-format.c:1464
#, c-format
msgid "zero-length %s format string"
msgstr "%s formaatstring van lengte 0"
# "brede string"? "string met brede karakters/tekens"?
-#: c-format.c:1361
+#: c-format.c:1468
msgid "format is a wide character string"
msgstr "formaat is een wide-character string"
-#: c-format.c:1364
+#: c-format.c:1471
msgid "unterminated format string"
msgstr "formaatstring niet beëindigd"
-#: c-format.c:1581
+#: c-format.c:1681
msgid "embedded `\\0' in format"
msgstr "ingesloten `\\0' in formaat"
-#: c-format.c:1596
+#: c-format.c:1696
#, c-format
msgid "spurious trailing `%%' in format"
msgstr "overbodige `%%' achteraan formaat"
-#: c-format.c:1635 c-format.c:1872
+#: c-format.c:1735 c-format.c:1972
#, c-format
msgid "repeated %s in format"
msgstr "herhaalde %s in formaat"
-#: c-format.c:1648
+#: c-format.c:1748
msgid "missing fill character at end of strfmon format"
msgstr "opvulkarakter ontbreekt aan het einde van dit strfmon-formaat"
-#: c-format.c:1687 c-format.c:1786 c-format.c:2066 c-format.c:2119
+#: c-format.c:1787 c-format.c:1886 c-format.c:2166 c-format.c:2219
msgid "too few arguments for format"
msgstr "te weinig argumenten voor formaat"
-#: c-format.c:1728
+#: c-format.c:1828
#, c-format
msgid "zero width in %s format"
msgstr "breedte van nul in %s formaat"
-#: c-format.c:1747
+#: c-format.c:1847
#, c-format
msgid "empty left precision in %s format"
msgstr "lege linkse precisie gebruikt in %s formaat"
-#: c-format.c:1801
+#: c-format.c:1901
msgid "field precision"
msgstr "veldprecisie"
-#: c-format.c:1816
+#: c-format.c:1916
#, c-format
msgid "empty precision in %s format"
msgstr "lege precisie in %s formaat"
-#: c-format.c:1856
+#: c-format.c:1956
#, c-format
msgid "%s does not support the `%s' %s length modifier"
msgstr "%s ondersteunt de `%s' %s lengte-modifier niet"
-#: c-format.c:1906
+#: c-format.c:2006
msgid "conversion lacks type at end of format"
msgstr "conversie mist type aan het einde van het formaat"
-#: c-format.c:1917
+#: c-format.c:2017
#, c-format
msgid "unknown conversion type character `%c' in format"
msgstr "onbekend typeconversie-karakter `%c' in formaat"
-#: c-format.c:1920
+#: c-format.c:2020
#, c-format
msgid "unknown conversion type character 0x%x in format"
msgstr "onbekend typeconversie-karakter 0x%x in formaat"
-#: c-format.c:1927
+#: c-format.c:2027
#, c-format
msgid "%s does not support the `%%%c' %s format"
msgstr "%s ondersteunt het `%%%c' %s formaat niet"
-#: c-format.c:1943
+#: c-format.c:2043
#, c-format
msgid "%s used with `%%%c' %s format"
msgstr "%s gebruikt bij `%%%c' %s formaat"
-#: c-format.c:1952
+#: c-format.c:2052
#, c-format
msgid "%s does not support %s"
msgstr "%s ondersteunt %s niet"
-#: c-format.c:1961
+#: c-format.c:2061
#, c-format
msgid "%s does not support %s with the `%%%c' %s format"
msgstr "%s ondersteunt %s niet bij het `%%%c' %s formaat"
-#: c-format.c:1994
+#: c-format.c:2094
#, c-format
msgid "%s ignored with %s and `%%%c' %s format"
msgstr "%s wordt genegeerd bij %s en `%%%c' %s formaat"
-#: c-format.c:1998
+#: c-format.c:2098
#, c-format
msgid "%s ignored with %s in %s format"
msgstr "%s wordt genegeerd bij %s in %s formaat"
-#: c-format.c:2004
+#: c-format.c:2104
#, c-format
msgid "use of %s and %s together with `%%%c' %s format"
msgstr "zowel %s als %s gebruikt bij '%%%c' %s formaat"
-#: c-format.c:2008
+#: c-format.c:2108
#, c-format
msgid "use of %s and %s together in %s format"
msgstr "zowel %s als %s gebruikt in %s formaat"
-#: c-format.c:2027
+#: c-format.c:2127
#, c-format
msgid "`%%%c' yields only last 2 digits of year in some locales"
msgstr "`%%%c' geeft enkel de laatste twee cijfers van het jaartal in sommige omgevingen"
-#: c-format.c:2030
+#: c-format.c:2130
#, c-format
msgid "`%%%c' yields only last 2 digits of year"
msgstr "`%%%c' geeft enkel de laatste twee cijfers van het jaartal"
#. The end of the format string was reached.
-#: c-format.c:2046
+#: c-format.c:2146
#, c-format
msgid "no closing `]' for `%%[' format"
msgstr "geen eind-`]' voor `%%[' formaat"
-#: c-format.c:2059
+#: c-format.c:2159
#, c-format
msgid "use of `%s' length modifier with `%c' type character"
msgstr "`%s' lengte-modifier samen met typekarakter `%c' gebruikt"
-#: c-format.c:2080
+#: c-format.c:2180
#, c-format
msgid "%s does not support the `%%%s%c' %s format"
msgstr "%s ondersteunt het `%%%s%c' %s formaat niet"
-#: c-format.c:2095
+#: c-format.c:2195
msgid "operand number specified with suppressed assignment"
msgstr "operandnummer opgegeven met onderdukte uitlijning"
-#: c-format.c:2097
+#: c-format.c:2197
msgid "operand number specified for format taking no argument"
msgstr "operandnummer opgegeven voor formaat dat geen argument heeft"
-#: c-format.c:2211
+#: c-format.c:2309
#, c-format
msgid "writing through null pointer (arg %d)"
msgstr "beschrijving via null pointer (arg %d)"
-#: c-format.c:2220
+#: c-format.c:2318
#, c-format
msgid "reading through null pointer (arg %d)"
msgstr "uitlezing via null-pointer (arg %d)"
-#: c-format.c:2240
+#: c-format.c:2338
#, c-format
msgid "writing into constant object (arg %d)"
msgstr "constant object wordt beschreven (argument %d)"
-#: c-format.c:2250
+#: c-format.c:2348
#, c-format
msgid "extra type qualifiers in format argument (arg %d)"
msgstr ""
-#: c-format.c:2257
+#: c-format.c:2355
#, c-format
msgid "format argument is not a pointer (arg %d)"
msgstr "formaat-argument is geen pointer (argument %d)"
-#: c-format.c:2259
+#: c-format.c:2357
#, c-format
msgid "format argument is not a pointer to a pointer (arg %d)"
msgstr "formaat-argument is geen pointer naar een pointer (argument %d)"
-#: c-format.c:2330
+#: c-format.c:2433
msgid "pointer"
msgstr ""
-#: c-format.c:2332
+#: c-format.c:2435
msgid "different type"
msgstr "verschillend type"
-#: c-format.c:2353
+#: c-format.c:2456
#, fuzzy, c-format
msgid "%s is not type %s (arg %d)"
msgstr "veldbreedte is niet van het type 'int' (argument %d)"
-#: c-format.c:2356
+#: c-format.c:2459
#, c-format
msgid "%s format, %s arg (arg %d)"
msgstr "%s formaat, %s argument (argument %d)"
-#: c-lex.c:153
-msgid "YYDEBUG not defined"
-msgstr "YYDEBUG niet gedefinieerd"
+#: c-format.c:2704
+#, fuzzy
+msgid "args to be formatted is not '...'"
+msgstr "de te formatteren argumenten zijn niet ..."
-#: c-lex.c:293
-msgid "badly nested C headers from preprocessor"
-msgstr ""
+# Klinkt wat vreemd...
+#: c-format.c:2713
+msgid "strftime formats cannot format arguments"
+msgstr "strftime formaten kunnen geen argumenten formatteren"
-#: c-lex.c:336
+#: c-incpath.c:68
#, fuzzy, c-format
-msgid "ignoring #pragma %s %s"
-msgstr "pragma wordt genegeerd: %s"
+msgid "ignoring duplicate directory \"%s\"\n"
+msgstr "dubbele folder `%s' wordt genegeerd\n"
-#: c-lex.c:386
+#: c-incpath.c:71
#, c-format
-msgid "universal-character-name '\\U%08x' not valid in identifier"
+msgid " as it is a non-system directory that duplicates a system directory\n"
msgstr ""
-#: c-lex.c:632
+#: c-incpath.c:75
+#, fuzzy, c-format
+msgid "ignoring nonexistent directory \"%s\"\n"
+msgstr "dubbele folder `%s' wordt genegeerd\n"
+
+#: c-incpath.c:273
+#, c-format
+msgid "#include \"...\" search starts here:\n"
+msgstr "Zoektocht voor #include \"...\" begint hier:\n"
+
+#: c-incpath.c:277
#, c-format
-msgid "universal-character-name '\\u%04x' not valid in identifier"
+msgid "#include <...> search starts here:\n"
+msgstr "Zoektocht voor #include <...> begint hier:\n"
+
+#: c-incpath.c:282
+#, c-format
+msgid "End of search list.\n"
+msgstr "Einde van opzoekingslijst.\n"
+
+#: c-lex.c:240
+msgid "badly nested C headers from preprocessor"
msgstr ""
-#: c-lex.c:695
+#: c-lex.c:281
+#, fuzzy, c-format
+msgid "ignoring #pragma %s %s"
+msgstr "pragma wordt genegeerd: %s"
+
+#. ... or not.
+#: c-lex.c:385
+#, fuzzy
+msgid "%Hstray '@' in program"
+msgstr "misplaatste '\\' in programma"
+
+#: c-lex.c:393
+#, fuzzy, c-format
+msgid "missing terminating %c character"
+msgstr "niet-beëindigde string- of karakterconstante"
+
+#: c-lex.c:395
#, fuzzy, c-format
msgid "stray '%c' in program"
msgstr "misplaatste '\\' in programma"
-#: c-lex.c:697
+#: c-lex.c:397
#, fuzzy, c-format
msgid "stray '\\%o' in program"
msgstr "misplaatste '\\' in programma"
-#: c-lex.c:854
+#: c-lex.c:535
msgid "this decimal constant is unsigned only in ISO C90"
msgstr ""
-#: c-lex.c:857
+#: c-lex.c:538
msgid "this decimal constant would be unsigned in ISO C90"
msgstr ""
-#: c-lex.c:873
+#: c-lex.c:554
#, fuzzy, c-format
msgid "integer constant is too large for \"%s\" type"
msgstr "integerconstante is zo groot dat hij unsigned is"
-#: c-lex.c:941
+#: c-lex.c:620
#, fuzzy, c-format
msgid "floating constant exceeds range of \"%s\""
msgstr "floating-point getal overschrijdt het bereik van een `float'"
-#: c-lex.c:977 cpplex.c:330 cpplex.c:668 cpplex.c:1942
-#, fuzzy
-msgid "ignoring invalid multibyte character"
-msgstr "ongeldig multibyte-karakter wordt genegeerd"
+#: c-lex.c:696
+msgid "traditional C rejects string constant concatenation"
+msgstr ""
-#: c-opts.c:355
-#, fuzzy, c-format
-msgid "missing argument to \"-%s\""
-msgstr "Bestandsnaam ontbreekt na `%s' optie"
+#: c-objc-common.c:82
+msgid "%Jfunction '%F' can never be inlined because it is supressed using -fno-inline"
+msgstr ""
+
+#: c-objc-common.c:92
+msgid "%Jfunction '%F' can never be inlined because it might not be bound within this unit of translation"
+msgstr ""
+
+#: c-objc-common.c:100
+msgid "%Jfunction '%F' can never be inlined because it uses attributes conflicting with inlining"
+msgstr ""
+
+#: c-objc-common.c:115
+msgid "%Jfunction '%F' can never be inlined because it has pending sizes"
+msgstr ""
+
+#: c-objc-common.c:128
+msgid "%Jnested function '%F' can never be inlined because it has possibly saved pending sizes"
+msgstr ""
-#: c-opts.c:359
+#: c-opts.c:141
#, fuzzy, c-format
-msgid "no class name specified with \"-%s\""
+msgid "no class name specified with \"%s\""
msgstr "Bestandsnaam voor uitvoer twee keer opgegeven"
-#: c-opts.c:366
+# Assertie? Dat moet beter kunnen!
+#: c-opts.c:145
#, fuzzy, c-format
-msgid "missing filename after \"-%s\""
-msgstr "beginwaarde ontbreekt"
+msgid "assertion missing after \"%s\""
+msgstr "Assertie ontbreekt na -A optie"
+
+#: c-opts.c:150
+#, fuzzy, c-format
+msgid "macro name missing after \"%s\""
+msgstr "Macro-naam ontbreekt na -U optie"
# 'whitespace' -> 'witruimte'?
-#: c-opts.c:371
+#: c-opts.c:157
#, fuzzy, c-format
-msgid "missing target after \"-%s\""
+msgid "missing path after \"%s\""
msgstr "ontbrekende witruimte na getal `%s'"
-#: c-opts.c:505
-#, c-format
-msgid "options array incorrectly sorted: %s is before %s"
-msgstr ""
+#: c-opts.c:166
+#, fuzzy, c-format
+msgid "missing filename after \"%s\""
+msgstr "beginwaarde ontbreekt"
-#: c-opts.c:550
-#, c-format
-msgid "too many filenames given. Type %s --help for usage"
-msgstr ""
+# 'whitespace' -> 'witruimte'?
+#: c-opts.c:171
+#, fuzzy, c-format
+msgid "missing makefile target after \"%s\""
+msgstr "ontbrekende witruimte na getal `%s'"
-#: c-opts.c:937
-#, fuzzy
-msgid "-Wno-strict-prototypes is not supported in C++"
-msgstr "-pipe wordt niet ondersteund"
+#: c-opts.c:291
+msgid "-I- specified twice"
+msgstr "-I- twee keer opgegeven"
-#: c-opts.c:1017
+#: c-opts.c:692
#, fuzzy, c-format
msgid "switch \"%s\" is no longer supported"
msgstr "-pipe wordt niet ondersteund"
-#: c-opts.c:1033
-#, c-format
-msgid "switch \"%s\" is deprecated, please see documentation for details"
-msgstr ""
-
-#: c-opts.c:1153
-msgid "-fhandle-exceptions has been renamed to -fexceptions (and is now on by default)"
+#: c-opts.c:816
+msgid "-fhandle-exceptions has been renamed -fexceptions (and is now on by default)"
msgstr ""
-#: c-opts.c:1273
+#: c-opts.c:982
#, fuzzy
msgid "output filename specified twice"
msgstr "Bestandsnaam voor uitvoer twee keer opgegeven"
-#: c-opts.c:1387
+#: c-opts.c:1106
msgid "-Wformat-y2k ignored without -Wformat"
msgstr "-Wformat-y2k genegeerd zonder -Wformat"
-#: c-opts.c:1389
+#: c-opts.c:1108
msgid "-Wformat-extra-args ignored without -Wformat"
msgstr "-Wformat-extra-args genegeerd zonder -Wformat"
-#: c-opts.c:1391
+#: c-opts.c:1110
#, fuzzy
msgid "-Wformat-zero-length ignored without -Wformat"
msgstr "-Wformat-extra-args genegeerd zonder -Wformat"
-#: c-opts.c:1393
+#: c-opts.c:1112
msgid "-Wformat-nonliteral ignored without -Wformat"
msgstr "-Wformat-nonliteral genegeerd zonder -Wformat"
-#: c-opts.c:1395
+#: c-opts.c:1114
msgid "-Wformat-security ignored without -Wformat"
msgstr "-Wformat-security genegeerd zonder -Wformat"
-#: c-opts.c:1397
+#: c-opts.c:1116
msgid "-Wmissing-format-attribute ignored without -Wformat"
msgstr "-Wmissing-format-attribute genegeerd zonder -Wformat"
-#: c-opts.c:1419
+#: c-opts.c:1130
#, fuzzy, c-format
-msgid "opening output file %s"
+msgid "opening output file %s: %m"
msgstr "kan bestand '%s' niet openen"
-#: c-opts.c:1474
+#: c-opts.c:1135
+#, c-format
+msgid "too many filenames given. Type %s --help for usage"
+msgstr ""
+
+#: c-opts.c:1213
+msgid "YYDEBUG not defined"
+msgstr "YYDEBUG niet gedefinieerd"
+
+#: c-opts.c:1260
#, fuzzy, c-format
-msgid "opening dependency file %s"
+msgid "opening dependency file %s: %m"
msgstr "dynamische dependencies.\n"
-#: c-opts.c:1484
-#, c-format
-msgid "closing dependency file %s"
-msgstr ""
+#: c-opts.c:1270
+#, fuzzy, c-format
+msgid "closing dependency file %s: %m"
+msgstr "dynamische dependencies.\n"
-#: c-opts.c:1487
-#, c-format
-msgid "when writing output to %s"
-msgstr ""
+#: c-opts.c:1273
+#, fuzzy, c-format
+msgid "when writing output to %s: %m"
+msgstr "kan bestand '%s' niet openen"
-#: c-opts.c:1567
+#: c-opts.c:1343
#, fuzzy
msgid "to generate dependencies you must specify either -M or -MM"
msgstr "-MG moet samen met ofwel -M, ofwel -MM gebruikt worden"
-#: c-opts.c:1715
-#, c-format
-msgid "\"-%c%s%s\" is valid for %s but not for %s"
-msgstr ""
-
-#. To keep the lines from getting too long for some compilers, limit
-#. to about 500 characters (6 lines) per chunk.
-#: c-opts.c:1726
-msgid ""
-"Switches:\n"
-" -include <file> Include the contents of <file> before other files\n"
-" -imacros <file> Accept definition of macros in <file>\n"
-" -iprefix <path> Specify <path> as a prefix for next two options\n"
-" -iwithprefix <dir> Add <dir> to the end of the system include path\n"
-" -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
-" -isystem <dir> Add <dir> to the start of the system include path\n"
-msgstr ""
-
-#: c-opts.c:1735
-msgid ""
-" -idirafter <dir> Add <dir> to the end of the system include path\n"
-" -I <dir> Add <dir> to the end of the main include path\n"
-" -I- Fine-grained include path control; see info docs\n"
-" -nostdinc Do not search system include directories\n"
-" (dirs specified with -isystem will still be used)\n"
-" -nostdinc++ Do not search system include directories for C++\n"
-" -o <file> Put output into <file>\n"
-msgstr ""
-
-#: c-opts.c:1744
-msgid ""
-" -trigraphs Support ISO C trigraphs\n"
-" -std=<std name> Specify the conformance standard; one of:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Inhibit warning messages\n"
-" -W[no-]trigraphs Warn if trigraphs are encountered\n"
-" -W[no-]comment{s} Warn if one comment starts inside another\n"
-msgstr ""
-
-#: c-opts.c:1753
-msgid ""
-" -W[no-]traditional Warn about features not present in traditional C\n"
-" -W[no-]undef Warn if an undefined macro is used by #if\n"
-" -W[no-]import Warn about the use of the #import directive\n"
-msgstr ""
-
-#: c-opts.c:1758
-msgid ""
-" -W[no-]error Treat all warnings as errors\n"
-" -W[no-]system-headers Do not suppress warnings from system headers\n"
-" -W[no-]all Enable most preprocessor warnings\n"
-msgstr ""
-
-#: c-opts.c:1763
-msgid ""
-" -M Generate make dependencies\n"
-" -MM As -M, but ignore system header files\n"
-" -MD Generate make dependencies and compile\n"
-" -MMD As -MD, but ignore system header files\n"
-" -MF <file> Write dependency output to the given file\n"
-" -MG Treat missing header file as generated files\n"
-msgstr ""
-
-#: c-opts.c:1771
-msgid ""
-" -MP\t\t\t Generate phony targets for all headers\n"
-" -MQ <target> Add a MAKE-quoted target\n"
-" -MT <target> Add an unquoted target\n"
-msgstr ""
-
-#: c-opts.c:1776
-msgid ""
-" -D<macro> Define a <macro> with string '1' as its value\n"
-" -D<macro>=<val> Define a <macro> with <val> as its value\n"
-" -A<question>=<answer> Assert the <answer> to <question>\n"
-" -A-<question>=<answer> Disable the <answer> to <question>\n"
-" -U<macro> Undefine <macro> \n"
-" -v Display the version number\n"
+#: c-opts.c:1403
+msgid "<built-in>"
msgstr ""
-#: c-opts.c:1784
-msgid ""
-" -H Print the name of header files as they are used\n"
-" -C Do not discard comments\n"
-" -dM Display a list of macro definitions active at end\n"
-" -dD Preserve macro definitions in output\n"
-" -dN As -dD except that only the names are preserved\n"
-" -dI Include #include directives in the output\n"
+#: c-opts.c:1418
+msgid "<command line>"
msgstr ""
-#: c-opts.c:1792
-msgid ""
-" -f[no-]preprocessed Treat the input file as already preprocessed\n"
-" -ftabstop=<number> Distance between tab stops for column reporting\n"
-" -P Do not generate #line directives\n"
-" -remap Remap file names when including files\n"
-" --help Display this information\n"
+#: c-opts.c:1502
+msgid "too late for # directive to set debug directory"
msgstr ""
#. Like YYERROR but do call yyerror.
-#: c-parse.y:55 parse.y:48 objc-parse.y:55
+#: c-parse.y:54 c-parse.c:5381 gengtype-yacc.c:1514 java/parse-scan.c:3063
+#: java/parse.c:6067 objc/objc-parse.y:54 objc/objc-parse.c:6644
msgid "syntax error"
msgstr ""
-#: /usr/share/bison/bison.simple:179
+#: c-parse.c:2118 gengtype-yacc.c:545 java/parse-scan.c:1932 java/parse.c:2875
+#: objc/objc-parse.c:2717
msgid "syntax error: cannot back up"
msgstr ""
-#: c-parse.y:325 objc-parse.y:346
+#: c-parse.y:320 objc/objc-parse.y:344
#, fuzzy
msgid "ISO C forbids an empty source file"
msgstr "ANSI C verbiedt een leeg bronbestand"
-#: c-parse.y:366 c-typeck.c:6916 objc-parse.y:388
+#: c-parse.y:349 c-typeck.c:6217 objc/objc-parse.y:374
msgid "argument of `asm' is not a constant string"
msgstr "het argument van `asm' is geen constante string"
-#: c-parse.y:374 objc-parse.y:396
+#: c-parse.y:357 objc/objc-parse.y:382
#, fuzzy
msgid "ISO C forbids data definition with no type or storage class"
msgstr "ANSI C verbiedt een datadefinitie zonder type of opslagklasse"
-#: c-parse.y:376 objc-parse.y:398
+#: c-parse.y:359 objc/objc-parse.y:384
msgid "data definition has no type or storage class"
msgstr "datadefinitie heeft geen type of opslagklasse"
-#: c-parse.y:389 objc-parse.y:411
+#: c-parse.y:372 objc/objc-parse.y:397
#, fuzzy
msgid "ISO C does not allow extra `;' outside of a function"
msgstr "ANSI C staat geen extra `;' buiten een functie toe"
-#: c-parse.y:449 cppexp.c:1312
+#: c-parse.y:429 cppexp.c:1253
msgid "traditional C rejects the unary plus operator"
msgstr ""
-#: c-parse.y:496 objc-parse.y:518
+#: c-parse.y:476 objc/objc-parse.y:501
msgid "`sizeof' applied to a bit-field"
msgstr "`sizeof' toegepast op een bitveld"
-#: c-parse.y:583 objc-parse.y:605
+#: c-parse.y:563 objc/objc-parse.y:588
#, fuzzy
msgid "ISO C forbids omitting the middle term of a ?: expression"
msgstr "ANSI C verbiedt het weglaten van de middelste term van een ?: expresie"
-#: c-parse.y:632 objc-parse.y:654
+#: c-parse.y:611 objc/objc-parse.y:636
#, fuzzy
msgid "ISO C89 forbids compound literals"
msgstr "ANSI C verbiedt het gebruik van samengestelde expressies als lvalues"
-#: c-parse.y:646 objc-parse.y:668
+#: c-parse.y:625 objc/objc-parse.y:650
#, fuzzy
msgid "ISO C forbids braced-groups within expressions"
msgstr "ANSI C verbiedt accolade-groepen in expressies"
-#: c-parse.y:677 objc-parse.y:699
+#: c-parse.y:653 objc/objc-parse.y:678
#, fuzzy
msgid "first argument to __builtin_choose_expr not a constant"
msgstr "gevraagd alignment is geen constante"
-#: c-parse.y:721 objc-parse.y:767
+#: c-parse.y:696 objc/objc-parse.y:737
msgid "traditional C rejects ISO C style function definitions"
msgstr ""
-#: c-parse.y:985 c-parse.y:991 c-parse.y:997 c-parse.y:1003 c-parse.y:1024
-#: c-parse.y:1030 c-parse.y:1036 c-parse.y:1042 c-parse.y:1075 c-parse.y:1081
-#: c-parse.y:1087 c-parse.y:1093 c-parse.y:1138 c-parse.y:1144 c-parse.y:1150
-#: c-parse.y:1156 parse.y:1933 parse.y:1940 parse.y:1975 objc-parse.y:1031
-#: objc-parse.y:1037 objc-parse.y:1043 objc-parse.y:1049 objc-parse.y:1070
-#: objc-parse.y:1076 objc-parse.y:1082 objc-parse.y:1088 objc-parse.y:1121
-#: objc-parse.y:1127 objc-parse.y:1133 objc-parse.y:1139 objc-parse.y:1184
-#: objc-parse.y:1190 objc-parse.y:1196 objc-parse.y:1202
+# Of is 'verbiedt parameterdeclaraties op voorhand' beter?
+#: c-parse.y:699 c-parse.y:705 objc/objc-parse.y:740 objc/objc-parse.y:746
+#, fuzzy
+msgid "old-style parameter declaration"
+msgstr "ANSI C verbiedt voorwaartse declaraties van parameters"
+
+#: c-parse.y:967 c-parse.y:973 c-parse.y:979 c-parse.y:985 c-parse.y:1006
+#: c-parse.y:1012 c-parse.y:1018 c-parse.y:1024 c-parse.y:1057 c-parse.y:1063
+#: c-parse.y:1069 c-parse.y:1075 c-parse.y:1120 c-parse.y:1126 c-parse.y:1132
+#: c-parse.y:1138 objc/objc-parse.y:1008 objc/objc-parse.y:1014
+#: objc/objc-parse.y:1020 objc/objc-parse.y:1026 objc/objc-parse.y:1047
+#: objc/objc-parse.y:1053 objc/objc-parse.y:1059 objc/objc-parse.y:1065
+#: objc/objc-parse.y:1098 objc/objc-parse.y:1104 objc/objc-parse.y:1110
+#: objc/objc-parse.y:1116 objc/objc-parse.y:1161 objc/objc-parse.y:1167
+#: objc/objc-parse.y:1173 objc/objc-parse.y:1179
#, c-format
msgid "`%s' is not at beginning of declaration"
msgstr "`%s' staat niet aan het begin van een declaratie"
-#: c-parse.y:1441 objc-parse.y:1496
+#: c-parse.y:1300 objc/objc-parse.y:1350
+#, fuzzy
+msgid "`typeof' applied to a bit-field"
+msgstr "`sizeof' toegepast op een bitveld"
+
+#: c-parse.y:1427 objc/objc-parse.y:1477
#, fuzzy
msgid "ISO C forbids empty initializer braces"
msgstr "ANSI C verbiedt lege initialisatie-accolades"
-#: c-parse.y:1455 objc-parse.y:1510
+#: c-parse.y:1441 objc/objc-parse.y:1491
#, fuzzy
msgid "ISO C89 forbids specifying subobject to initialize"
msgstr "ANSI C verbiedt het opgeven van het te initialiseren element"
-#: c-parse.y:1458 objc-parse.y:1513
+#: c-parse.y:1444 objc/objc-parse.y:1494
msgid "obsolete use of designated initializer without `='"
msgstr ""
-#: c-parse.y:1462 objc-parse.y:1517
+#: c-parse.y:1448 objc/objc-parse.y:1498
msgid "obsolete use of designated initializer with `:'"
msgstr ""
-#: c-parse.y:1489 objc-parse.y:1544
+#: c-parse.y:1475 objc/objc-parse.y:1525
#, fuzzy
msgid "ISO C forbids specifying range of elements to initialize"
msgstr "ANSI C verbiedt het opgeven van het te initialiseren element"
-#: c-parse.y:1497 c-parse.y:1528 objc-parse.y:1552 objc-parse.y:1583
+#: c-parse.y:1483 c-parse.y:1514 objc/objc-parse.y:1533 objc/objc-parse.y:1564
#, fuzzy
msgid "ISO C forbids nested functions"
msgstr "ANSI C verbiedt geneste functies"
-#: c-parse.y:1703 objc-parse.y:1760
+#: c-parse.y:1691 objc/objc-parse.y:1743
#, fuzzy
msgid "ISO C forbids forward references to `enum' types"
msgstr "ANSI C verbiedt voorwaartse referenties naar `enum' types"
-#: c-parse.y:1715 parse.y:2411 objc-parse.y:1772
+#: c-parse.y:1703 cp/parser.c:9282 objc/objc-parse.y:1755
msgid "comma at end of enumerator list"
msgstr "komma aan het einde van enumerator-lijst"
-#: c-parse.y:1723 objc-parse.y:1780
+#: c-parse.y:1723 objc/objc-parse.y:1775
msgid "no semicolon at end of struct or union"
msgstr "geen puntkomma aan het einde van een struct of union"
-#: c-parse.y:1732 objc-parse.y:1789 objc-parse.y:2864
+#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846
msgid "extra semicolon in struct or union specified"
msgstr "extra puntkomma opgegeven in struct of union"
-#: c-parse.y:1745 objc-parse.y:1816
+#: c-parse.y:1745 objc/objc-parse.y:1800
msgid "ISO C doesn't support unnamed structs/unions"
msgstr ""
-#: c-parse.y:1754 objc-parse.y:1825
+#: c-parse.y:1754 objc/objc-parse.y:1809
#, fuzzy
msgid "ISO C forbids member declarations with no members"
msgstr "ANSI C verbiedt lid-declaraties zonder leden"
-#: c-parse.y:1913 objc-parse.y:1984
+#: c-parse.y:1915 objc/objc-parse.y:1970
#, fuzzy
-msgid "deprecated use of label at end of compound statement"
+msgid "label at end of compound statement"
msgstr "ANSI C verbiedt een label aan het einde van een samengesteld statement"
-#: c-parse.y:1930 objc-parse.y:2001
+#: c-parse.y:1934 objc/objc-parse.y:1989
#, fuzzy
-msgid "ISO C89 forbids mixed declarations and code"
+msgid "ISO C90 forbids mixed declarations and code"
msgstr "ANSI C verbiedt labeldeclaraties"
-#: c-parse.y:2005 objc-parse.y:2080
+#: c-parse.y:2012 objc/objc-parse.y:2069
#, fuzzy
msgid "ISO C forbids label declarations"
msgstr "ANSI C verbiedt labeldeclaraties"
# 'braced-group'? Wie schrijft verdorie die foutmeldingen?
-#: c-parse.y:2055 parse.y:1638 objc-parse.y:2130
+#: c-parse.y:2062 objc/objc-parse.y:2119
msgid "braced-group within expression allowed only inside a function"
msgstr "accolade-groep in expressie enkel toegestaan binnen een functie"
-#: c-parse.y:2182 objc-parse.y:2257
+#: c-parse.y:2184 objc/objc-parse.y:2241
msgid "empty body in an else-statement"
msgstr "leeg body in een else-statement"
-#: c-parse.y:2303 objc-parse.y:2378
+#: c-parse.y:2192 objc/objc-parse.y:2249
#, fuzzy
-msgid "ISO C forbids `goto *expr;'"
-msgstr "ANSI C verbiedt `goto *expr;'"
+msgid "%Hempty body in an if-statement"
+msgstr "leeg body in een else-statement"
-# Of is 'verbiedt parameterdeclaraties op voorhand' beter?
-#: c-parse.y:2403 objc-parse.y:2478
+#: c-parse.y:2272 cp/parser.c:6028 objc/objc-parse.y:2329
+msgid "break statement not within loop or switch"
+msgstr "break-statement niet in een lus of switch"
+
+#: c-parse.y:2281 cp/parser.c:6039 objc/objc-parse.y:2338
+msgid "continue statement not within a loop"
+msgstr "continue-statement niet in een lus"
+
+#: c-parse.y:2323 objc/objc-parse.y:2380
#, fuzzy
-msgid "ISO C forbids forward parameter declarations"
-msgstr "ANSI C verbiedt voorwaartse declaraties van parameters"
+msgid "ISO C forbids `goto *expr;'"
+msgstr "ANSI C verbiedt `goto *expr;'"
#. Gcc used to allow this as an extension. However, it does
#. not work for all targets, and thus has been disabled.
@@ -2534,1339 +2586,1447 @@ msgstr "ANSI C verbiedt voorwaartse declaraties van parameters"
#. it caused problems with the code in expand_builtin which
#. tries to verify that BUILT_IN_NEXT_ARG is being used
#. correctly.
-#: c-parse.y:2429 objc-parse.y:2504
+#: c-parse.y:2440 objc/objc-parse.y:2548
#, fuzzy
msgid "ISO C requires a named argument before `...'"
msgstr "ANSI C heeft een benoemd argument nodig vóór `...'"
-#: c-parse.y:2526 objc-parse.y:2601
+#: c-parse.y:2538 objc/objc-parse.y:2646
msgid "`...' in old-style identifier list"
msgstr "`...' in naamlijst in oude stijl"
-#: /usr/share/bison/bison.simple:795
+#: c-parse.c:5377 gengtype-yacc.c:1510 java/parse-scan.c:3059
+#: java/parse.c:6063 objc/objc-parse.c:6640
#, fuzzy
-msgid "parse error; also virtual memory exhausted"
+msgid "syntax error; also virtual memory exhausted"
msgstr "parse-fout; ook is het virtueel geheugen opgebruikt"
-#: /usr/share/bison/bison.simple:799 cp/spew.c:364
-msgid "parse error"
-msgstr "parse-fout"
-
# 'parser' en 'stack overflow' vertalen?
-#: /usr/share/bison/bison.simple:924
+#: c-parse.c:5495 gengtype-yacc.c:1628 java/parse-scan.c:3177
+#: java/parse.c:6181 objc/objc-parse.c:6758
msgid "parser stack overflow"
msgstr "stack overflow in parser"
-#: c-parse.y:2838 cp/spew.c:1525 objc-parse.y:3537
+#: c-parse.y:2968 objc/objc-parse.y:3663
#, c-format
-msgid "%s at end of input"
-msgstr "%s aan einde van invoer"
+msgid "syntax error at '%s' token"
+msgstr ""
-#: c-parse.y:2844 cp/spew.c:1533 objc-parse.y:3543
+#: c-pch.c:112
#, fuzzy, c-format
-msgid "%s before %s'%c'"
-msgstr "%s voor `%s'"
+msgid "can't create precompiled header %s: %m"
+msgstr "dubbele folder `%s' wordt genegeerd\n"
-#: c-parse.y:2846 cp/spew.c:1535 objc-parse.y:3545
+#: c-pch.c:132
#, fuzzy, c-format
-msgid "%s before %s'\\x%x'"
-msgstr "%s voor `%s'"
+msgid "can't write to %s: %m"
+msgstr "kan bestand '%s' niet openen"
-#: c-parse.y:2850 cp/spew.c:1542 objc-parse.y:3549
-#, c-format
-msgid "%s before string constant"
-msgstr "%s voor stringconstante"
+#: c-pch.c:138
+#, fuzzy, c-format
+msgid "`%s' is not a valid output file"
+msgstr "-fPIC is niet geldig met -mcoff"
-#: c-parse.y:2852 cp/spew.c:1544 objc-parse.y:3551
+#: c-pch.c:167 c-pch.c:183 c-pch.c:195
#, fuzzy, c-format
-msgid "%s before numeric constant"
-msgstr "%s voor stringconstante"
+msgid "can't write %s: %m"
+msgstr "open %s"
-#: c-parse.y:2854 objc-parse.y:3553
+#: c-pch.c:173
#, fuzzy, c-format
-msgid "%s before \"%s\""
-msgstr "%s voor `%s'"
+msgid "can't seek in %s: %m"
+msgstr "open %s"
-#: c-parse.y:2856 objc-parse.y:3555
+#: c-pch.c:181 c-pch.c:221 c-pch.c:249 c-pch.c:254 c-pch.c:324
#, fuzzy, c-format
-msgid "%s before '%s' token"
-msgstr "%s voor `%s'"
+msgid "can't read %s: %m"
+msgstr "open %s"
+
+#: c-pch.c:234
+#, fuzzy, c-format
+msgid "%s: not compatible with this GCC version"
+msgstr "case-selector niet compatibel met label"
+
+#. It's a PCH for the wrong language.
+#: c-pch.c:237
+#, fuzzy, c-format
+msgid "%s: not for %s"
+msgstr "%s ondersteunt %s niet"
+
+#. Not any kind of PCH.
+#: c-pch.c:241
+#, fuzzy, c-format
+msgid "%s: not a PCH file"
+msgstr "%s: geen COFF-bestand"
-#: c-parse.y:2921
-msgid "traditional C rejects string concatenation"
+#: c-pch.c:260
+#, c-format
+msgid "%s: created on host `%.*s', but used on host `%s'"
msgstr ""
-#: c-parse.y:3047 objc-parse.y:3779
+#: c-pch.c:270
#, c-format
-msgid "syntax error at '%s' token"
+msgid "%s: created for target `%.*s', but used for target `%s'"
+msgstr ""
+
+#: c-pch.c:283
+#, c-format
+msgid "%s: created by version `%.*s', but this is version `%s'"
+msgstr ""
+
+#: c-pch.c:299
+#, c-format
+msgid "%s: created with -g%s, but used with -g%s"
+msgstr ""
+
+#: c-pch.c:313
+#, c-format
+msgid "%s: had text segment at different address"
+msgstr ""
+
+#: c-pch.c:330 cpperror.c:176 gcc.c:6547
+#, c-format
+msgid "%s: %s"
msgstr ""
-#: c-pragma.c:107
+#: c-pch.c:361
+#, fuzzy
+msgid "calling fdopen"
+msgstr "fdopen"
+
+#: c-pch.c:369 c-pch.c:381
+#, fuzzy
+msgid "reading"
+msgstr "read %s"
+
+#: c-pragma.c:106
msgid "#pragma pack (pop) encountered without matching #pragma pack (push, <n>)"
msgstr "#pragma pack (pop) tegengekomen zonder overeenkomstige #pragma pack (push, <n>)"
-#: c-pragma.c:125
+#: c-pragma.c:124
#, c-format
msgid "#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s, <n>)"
msgstr "#pragma pack (pop, %s) tegengekomen zonder overeenkomstige #pragma pack (push, %s, <n>)"
-#: c-pragma.c:145
+#: c-pragma.c:144
#, fuzzy
msgid "#pragma pack(push[, id], <n>) is not supported on this target"
msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem"
-#: c-pragma.c:147
+#: c-pragma.c:146
#, fuzzy
msgid "#pragma pack(pop[, id], <n>) is not supported on this target"
msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem"
-#: c-pragma.c:167
+#: c-pragma.c:165
msgid "missing '(' after '#pragma pack' - ignored"
msgstr ""
-#: c-pragma.c:180 c-pragma.c:230
+#: c-pragma.c:178 c-pragma.c:228
#, fuzzy
msgid "malformed '#pragma pack' - ignored"
msgstr "misvormde #pragma pack"
-#: c-pragma.c:185
+#: c-pragma.c:183
#, fuzzy
msgid "malformed '#pragma pack(push[, id], <n>)' - ignored"
msgstr "misvormde #pragma pack(push[,id],<n>)"
-#: c-pragma.c:187
+#: c-pragma.c:185
#, fuzzy
msgid "malformed '#pragma pack(pop[, id])' - ignored"
msgstr "misvormde #pragma pack(pop[,id])"
-#: c-pragma.c:196
+#: c-pragma.c:194
#, c-format
msgid "unknown action '%s' for '#pragma pack' - ignored"
msgstr ""
-#: c-pragma.c:233
+#: c-pragma.c:231
#, fuzzy
msgid "junk at end of '#pragma pack'"
msgstr "misvormde #pragma pack"
-#: c-pragma.c:247
+#: c-pragma.c:245
#, fuzzy, c-format
msgid "alignment must be a small power of two, not %d"
msgstr "Alignment moet een kleine macht van twee zijn, en niet %d, in #pragma pack"
-#: c-pragma.c:280
-#, c-format
-msgid "applying #pragma weak `%s' after first use results in unspecified behavior"
-msgstr ""
+#: c-pragma.c:278
+#, fuzzy
+msgid "%Japplying #pragma weak '%D' after first use results in unspecified behavior"
+msgstr "de zwakke declaratie van `%s' moet aan de definitie voorafgaan"
-#: c-pragma.c:328 c-pragma.c:333
+#: c-pragma.c:325 c-pragma.c:330
#, fuzzy
msgid "malformed #pragma weak, ignored"
msgstr "misvormde #pragma weak"
-#: c-pragma.c:337
+#: c-pragma.c:334
#, fuzzy
msgid "junk at end of #pragma weak"
msgstr "misvormde #pragma weak"
-#: c-pragma.c:372 c-pragma.c:377
+#: c-pragma.c:367 c-pragma.c:372
#, fuzzy
msgid "malformed #pragma redefine_extname, ignored"
msgstr "misvormde #pragma weak"
-#: c-pragma.c:382
+#: c-pragma.c:377
#, fuzzy
msgid "junk at end of #pragma redefine_extname"
msgstr "misvormde #pragma weak"
-#: c-pragma.c:389 c-pragma.c:470
+#: c-pragma.c:384 c-pragma.c:462
msgid "#pragma redefine_extname conflicts with declaration"
msgstr ""
-#: c-pragma.c:420
+#: c-pragma.c:413
#, fuzzy
msgid "malformed #pragma extern_prefix, ignored"
msgstr "misvormde #pragma pack(pop[,id])"
# Moet 'signature-string' vertaald worden?
-#: c-pragma.c:425
+#: c-pragma.c:418
#, fuzzy
msgid "junk at end of #pragma extern_prefix"
msgstr "Brol aan einde van signature-string."
-#: c-pragma.c:457
+#: c-pragma.c:449
#, fuzzy
msgid "asm declaration conflicts with previous rename"
msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie"
-#: c-semantics.c:565
-msgid "break statement not within loop or switch"
-msgstr "break-statement niet in een lus of switch"
-
-#: c-semantics.c:583
-msgid "continue statement not within a loop"
-msgstr "continue-statement niet in een lus"
-
-#: c-semantics.c:678
-msgid "destructor needed for `%#D'"
-msgstr ""
+#: c-semantics.c:697
+#, fuzzy
+msgid "destructor needed for `%D'"
+msgstr "eerdere grant voor `%s'"
-#: c-semantics.c:679
+#: c-semantics.c:698
msgid "where case label appears here"
msgstr ""
-#: c-semantics.c:682
+#: c-semantics.c:701
msgid "(enclose actions of previous case statements requiring destructors in their own scope.)"
msgstr ""
-#: c-semantics.c:725 c-typeck.c:6942 cp/semantics.c:897
+#: c-semantics.c:737 c-typeck.c:6239 cp/semantics.c:1070
#, c-format
msgid "%s qualifier ignored on asm"
msgstr ""
-#: c-typeck.c:123
+#: c-semantics.c:991
+msgid "will never be executed"
+msgstr ""
+
+#: c-typeck.c:120
#, c-format
msgid "`%s' has an incomplete type"
msgstr "`%s' heeft een onvolledig type"
-#: c-typeck.c:145 cp/call.c:2865
+#: c-typeck.c:142 cp/call.c:2532
msgid "invalid use of void expression"
msgstr "ongeldig gebruik van een void-expressie"
-#: c-typeck.c:153
+#: c-typeck.c:150
#, fuzzy
msgid "invalid use of flexible array member"
msgstr "ongeldig gebruik van array die geen lvalue is"
-#: c-typeck.c:159
+#: c-typeck.c:156
msgid "invalid use of array with unspecified bounds"
msgstr "ongeldig gebruik van een array zonder opgegeven grenzen"
-#: c-typeck.c:167
+#: c-typeck.c:164
#, c-format
msgid "invalid use of undefined type `%s %s'"
msgstr "ongeldig gebruik van het niet gedefinieerde type `%s %s'"
#. If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL.
-#: c-typeck.c:171
+#: c-typeck.c:168
#, c-format
msgid "invalid use of incomplete typedef `%s'"
msgstr "ongeldig gebruik van onvolledige typedef `%s'"
-#: c-typeck.c:424 c-typeck.c:438
+#: c-typeck.c:415 c-typeck.c:430
#, fuzzy
msgid "function types not truly compatible in ISO C"
msgstr "functie-types zijn niet echt compatibel in ANSI C"
-#: c-typeck.c:603
+#: c-typeck.c:611
msgid "types are not quite compatible"
msgstr "types zijn niet helemaal compatibel"
+#: c-typeck.c:820
+#, fuzzy
+msgid "function return types not compatible due to `volatile'"
+msgstr "de terugkeerwaarde van een functie kan geen funtie zijn"
+
# 'Arithmetic'?? 'rekensom' is wel correct, maar het klinkt zo stom.
-#: c-typeck.c:757 c-typeck.c:2687
+#: c-typeck.c:966 c-typeck.c:2143
msgid "arithmetic on pointer to an incomplete type"
msgstr "rekensom met pointer naar onvolledig type"
-#: c-typeck.c:1136
+#: c-typeck.c:1339
#, fuzzy, c-format
msgid "%s has no member named `%s'"
msgstr "union heeft geen lid dat `%s' heet"
-#: c-typeck.c:1172
+#: c-typeck.c:1375
#, c-format
msgid "request for member `%s' in something not a structure or union"
msgstr "vraag naar lid `%s' in iets dat geen structure of union is"
-#: c-typeck.c:1204
+#: c-typeck.c:1404
msgid "dereferencing pointer to incomplete type"
msgstr "dereferentie van pointer naar onvolledig type"
-#: c-typeck.c:1208
+#: c-typeck.c:1408
msgid "dereferencing `void *' pointer"
msgstr "`void *' pointer wordt gederefereerd"
# Is the %s the argument, or is it 'of' the argument?
-#: c-typeck.c:1225 cp/typeck.c:2369
+#: c-typeck.c:1425 cp/typeck.c:2104
#, c-format
msgid "invalid type argument of `%s'"
msgstr "ongeldig type-argument `%s'"
-#: c-typeck.c:1244 cp/typeck.c:2395
+#: c-typeck.c:1443 cp/typeck.c:2129
msgid "subscript missing in array reference"
msgstr "subscript ontbreekt in array-referentie"
-#: c-typeck.c:1265 cp/typeck.c:2437
+#: c-typeck.c:1464 cp/typeck.c:2171
msgid "array subscript has type `char'"
msgstr "array subscript is van het type `char'"
-#: c-typeck.c:1273 c-typeck.c:1362 cp/typeck.c:2444 cp/typeck.c:2523
+#: c-typeck.c:1472 c-typeck.c:1561 cp/typeck.c:2175 cp/typeck.c:2261
msgid "array subscript is not an integer"
msgstr "array subscript is geen integer"
-#: c-typeck.c:1306
+#: c-typeck.c:1505
#, fuzzy
msgid "ISO C forbids subscripting `register' array"
msgstr "ANSI C verbiedt het gebruik van subscripts bij een `register' array"
-#: c-typeck.c:1308
+#: c-typeck.c:1507
#, fuzzy
msgid "ISO C90 forbids subscripting non-lvalue array"
msgstr "ANSI C verbiedt het gebruik van subscripts bij een array die geen lvalue is"
-#: c-typeck.c:1341
+#: c-typeck.c:1540
msgid "subscript has type `char'"
msgstr "subscript is van het type `char'"
-#: c-typeck.c:1357 cp/typeck.c:2518
+#: c-typeck.c:1556 cp/typeck.c:2256
msgid "subscripted value is neither array nor pointer"
msgstr "waarde met subscript is noch een array, noch een pointer"
-#: c-typeck.c:1411
-#, c-format
-msgid "`%s' undeclared here (not in a function)"
-msgstr "`%s' is hier niet gedeclareerd (niet in een functie)"
-
-#: c-typeck.c:1418
-#, c-format
-msgid "`%s' undeclared (first use in this function)"
-msgstr "`%s' is hier niet gedeclareerd (eerste gebruik in deze functie)"
-
-#: c-typeck.c:1423
-msgid "(Each undeclared identifier is reported only once"
-msgstr "(Elke niet-gedeclareerde naam wordt slechts één"
-
-#: c-typeck.c:1424
-msgid "for each function it appears in.)"
-msgstr "keer vermeld voor elke functie waarin hij staat.)"
-
-#: c-typeck.c:1441
+#: c-typeck.c:1586
#, c-format
msgid "local declaration of `%s' hides instance variable"
msgstr ""
-#: c-typeck.c:1518
+#: c-typeck.c:1679
msgid "called object is not a function"
msgstr "opgeroepen object is geen functie"
-#: c-typeck.c:1604 cp/typeck.c:2829
+#. This situation leads to run-time undefined behavior. We can't,
+#. therefore, simply error unless we can prove that all possible
+#. executions of the program must execute the code.
+#: c-typeck.c:1711
+msgid "function called through a non-compatible type"
+msgstr ""
+
+#: c-typeck.c:1805 cp/typeck.c:2544
msgid "too many arguments to function"
msgstr "teveel argumenten voor functie"
-#: c-typeck.c:1625
+#: c-typeck.c:1826
#, c-format
msgid "type of formal parameter %d is incomplete"
msgstr "het type van formele parameter %d is onvolledig"
-#: c-typeck.c:1638
+#: c-typeck.c:1839
#, c-format
msgid "%s as integer rather than floating due to prototype"
msgstr "%s als integer in plaats van floating-point ten gevolge van een prototype"
-#: c-typeck.c:1641
+#: c-typeck.c:1842
#, fuzzy, c-format
msgid "%s as integer rather than complex due to prototype"
msgstr "%s als floating-point in plaats van complex ten gevolge van een prototype"
-#: c-typeck.c:1644
+#: c-typeck.c:1845
#, c-format
msgid "%s as complex rather than floating due to prototype"
msgstr "%s als complex in plaats van floating-point ten gevolge van een prototype"
-#: c-typeck.c:1647
+#: c-typeck.c:1848
#, c-format
msgid "%s as floating rather than integer due to prototype"
msgstr "%s als floating-point in plaats van integer ten gevolge van een prototype"
-#: c-typeck.c:1650
+#: c-typeck.c:1851
#, fuzzy, c-format
msgid "%s as complex rather than integer due to prototype"
msgstr "%s als complex in plaats van floating-point ten gevolge van een prototype"
-#: c-typeck.c:1653
+#: c-typeck.c:1854
#, c-format
msgid "%s as floating rather than complex due to prototype"
msgstr "%s als floating-point in plaats van complex ten gevolge van een prototype"
-#: c-typeck.c:1663
+#: c-typeck.c:1864
#, c-format
msgid "%s as `float' rather than `double' due to prototype"
msgstr "%s als `float' in plaats van `double' ten gevolge van een prototype"
-#: c-typeck.c:1681
+#: c-typeck.c:1882
#, c-format
msgid "%s with different width due to prototype"
msgstr "%s met andere breedte ten gevolge van prototype"
-#: c-typeck.c:1715
+#: c-typeck.c:1908
#, c-format
msgid "%s as unsigned due to prototype"
msgstr "%s als unsigned ten gevolge van prototype"
-#: c-typeck.c:1717
+#: c-typeck.c:1910
#, c-format
msgid "%s as signed due to prototype"
msgstr "%s als signed ten gevolge van prototype"
-#: c-typeck.c:1751 cp/typeck.c:2933
+#: c-typeck.c:1944 cp/typeck.c:2650
msgid "too few arguments to function"
msgstr "te weinig argument voor functie"
-#: c-typeck.c:1793
+#: c-typeck.c:1984
msgid "suggest parentheses around + or - inside shift"
msgstr "gebruik liefst haakjes rond + of - binnen een shift"
-#: c-typeck.c:1800
+#: c-typeck.c:1991
msgid "suggest parentheses around && within ||"
msgstr "gebruik liefst haakjes rond && binnen ||"
-#: c-typeck.c:1809
+#: c-typeck.c:2000
msgid "suggest parentheses around arithmetic in operand of |"
msgstr "gebruik liefst haakjes rond een rekensom in een operand van |"
-#: c-typeck.c:1812
+#: c-typeck.c:2003
msgid "suggest parentheses around comparison in operand of |"
msgstr "gebruik liefst haakjes rond een vergelijking in een operand van |"
-#: c-typeck.c:1821
+#: c-typeck.c:2012
msgid "suggest parentheses around arithmetic in operand of ^"
msgstr "gebruik liefst haakjes rond een rekensom in een operand van ^"
-#: c-typeck.c:1824
+#: c-typeck.c:2015
msgid "suggest parentheses around comparison in operand of ^"
msgstr "gebruik liefst haakjes rond een vergelijking in een operand van ^"
-#: c-typeck.c:1831
+#: c-typeck.c:2022
msgid "suggest parentheses around + or - in operand of &"
msgstr "gebruik liefst haakjes rond + of - in een operand van &"
-#: c-typeck.c:1834
+#: c-typeck.c:2025
msgid "suggest parentheses around comparison in operand of &"
msgstr "gebruik liefst haakjes rond een vergelijking in een operand van &"
-#: c-typeck.c:1841
+#: c-typeck.c:2032
msgid "comparisons like X<=Y<=Z do not have their mathematical meaning"
msgstr "vergelijkingen als 'X <= Y <= Z' hebben niet hun wiskundige betekenis"
-#: c-typeck.c:2001 c-typeck.c:2036
-msgid "division by zero"
-msgstr "deling door nul"
-
-#: c-typeck.c:2081 cp/typeck.c:3194
-msgid "right shift count is negative"
-msgstr "teller van rechtse shift is negatief"
-
-#: c-typeck.c:2088 cp/typeck.c:3200
-msgid "right shift count >= width of type"
-msgstr "teller van rechtse shift is >= breedte van het type"
-
-#: c-typeck.c:2109 cp/typeck.c:3219
-msgid "left shift count is negative"
-msgstr "teller van links shift is negatief"
-
-#: c-typeck.c:2112 cp/typeck.c:3221
-msgid "left shift count >= width of type"
-msgstr "teller van links shift is >= breedte van het type"
-
-#: c-typeck.c:2133
-msgid "shift count is negative"
-msgstr "teller van shift is negatief"
-
-#: c-typeck.c:2135
-msgid "shift count >= width of type"
-msgstr "teller van shift is >= breedte van het type"
-
-#: c-typeck.c:2152 cp/typeck.c:3256
-msgid "comparing floating point with == or != is unsafe"
-msgstr ""
-
-#: c-typeck.c:2178 c-typeck.c:2184
-#, fuzzy
-msgid "ISO C forbids comparison of `void *' with function pointer"
-msgstr "ANSI C verbiedt een vergelijking van `void *' met een functie-pointer"
-
-#: c-typeck.c:2187 c-typeck.c:2227 c-typeck.c:2255
-msgid "comparison of distinct pointer types lacks a cast"
-msgstr "een cast ontbreekt bij vergelijking van ongelijke pointer-types"
-
-#: c-typeck.c:2201 c-typeck.c:2206 c-typeck.c:2275 c-typeck.c:2280
-msgid "comparison between pointer and integer"
-msgstr "vergelijking tussen pointer en integer"
-
-# 'ordered' -> 'bevolen' of 'geordend'? Waarschijnlijk het laatste.
-#: c-typeck.c:2222 c-typeck.c:2250
-#, fuzzy
-msgid "ISO C forbids ordered comparisons of pointers to functions"
-msgstr "ANSI C verbiedt geordende vergelijkingen tussen pointers naar functies"
-
-#: c-typeck.c:2247
-msgid "comparison of complete and incomplete pointers"
-msgstr "vergelijking van volledige en onvolledige pointers"
-
-#: c-typeck.c:2263 c-typeck.c:2270
-msgid "ordered comparison of pointer with integer zero"
-msgstr "geordende vergelijking van een pointer met integer nul"
-
-#: c-typeck.c:2294 cp/typeck.c:3389
-#, fuzzy
-msgid "unordered comparison on non-floating point argument"
-msgstr "geordende vergelijking van een pointer met integer nul"
-
-#: c-typeck.c:2505
-msgid "comparison between signed and unsigned"
-msgstr "vergelijking tussen signed en unsigned"
-
-#: c-typeck.c:2551 cp/typeck.c:3633
-msgid "comparison of promoted ~unsigned with constant"
-msgstr "vergelijking van gepromoveerde ~unsigned met constante"
-
-#: c-typeck.c:2559 cp/typeck.c:3641
-msgid "comparison of promoted ~unsigned with unsigned"
-msgstr "vergelijking van gepromoveerde ~unsigned met unsigned"
-
-#: c-typeck.c:2639
+#: c-typeck.c:2095
msgid "pointer of type `void *' used in subtraction"
msgstr "pointer van type `void *' gebruikt in aftrekking"
-#: c-typeck.c:2641
+#: c-typeck.c:2097
msgid "pointer to a function used in subtraction"
msgstr "pointer naar functie gebruikt in aftrekking"
# 'unary' = 'unair'?
-#: c-typeck.c:2738
+#: c-typeck.c:2191
msgid "wrong type argument to unary plus"
msgstr "argument van verkeerd type voor unaire plus"
-#: c-typeck.c:2751
+#: c-typeck.c:2204
msgid "wrong type argument to unary minus"
msgstr "argument van verkeerd type voor unaire min"
-#: c-typeck.c:2768
+#: c-typeck.c:2221
#, fuzzy
msgid "ISO C does not support `~' for complex conjugation"
msgstr "ANSI C ondersteunt het `%c' formaat niet"
-#: c-typeck.c:2774
+#: c-typeck.c:2227
msgid "wrong type argument to bit-complement"
msgstr "argument van verkeerd type voor bit-complement"
-#: c-typeck.c:2783
+#: c-typeck.c:2235
msgid "wrong type argument to abs"
msgstr "argument van verkeerd type voor abs"
# OK, ik geef het op: wat is hier een goede vertaling voor 'conjugation'?
-#: c-typeck.c:2795
+#: c-typeck.c:2247
msgid "wrong type argument to conjugation"
msgstr "argument van verkeerd type voor vervoeging"
-#: c-typeck.c:2809
+#: c-typeck.c:2261
msgid "wrong type argument to unary exclamation mark"
msgstr "argument van verkeerd type voor unair uitroepingsteken"
-#: c-typeck.c:2852
+#: c-typeck.c:2304
#, fuzzy
msgid "ISO C does not support `++' and `--' on complex types"
msgstr "ANSI C ondersteunt het `%c' formaat niet"
# Wat is beter: 'incrementeren', 'incrementering', of 'increment'?
-#: c-typeck.c:2867 c-typeck.c:2899
+#: c-typeck.c:2319 c-typeck.c:2351
msgid "wrong type argument to increment"
msgstr "argument van verkeerd type voor incrementeren"
-#: c-typeck.c:2869 c-typeck.c:2901
+#: c-typeck.c:2321 c-typeck.c:2353
msgid "wrong type argument to decrement"
msgstr "argument van verkeerd type voor decrementeren"
-#: c-typeck.c:2890
+#: c-typeck.c:2342
msgid "increment of pointer to unknown structure"
msgstr "incrementeren van pointer naar onbekend structure"
-#: c-typeck.c:2892
+#: c-typeck.c:2344
msgid "decrement of pointer to unknown structure"
msgstr "decrementeren van pointer naar onbekend structure"
-#: c-typeck.c:3029
-msgid "ISO C forbids the address of a cast expression"
-msgstr "ANSI C verbiedt het adres van een cast-expressie"
-
-#: c-typeck.c:3039
+#: c-typeck.c:2469
msgid "invalid lvalue in unary `&'"
msgstr "ongeldige lvalue bij unaire `&'"
-#: c-typeck.c:3071
+#: c-typeck.c:2501
#, c-format
msgid "attempt to take address of bit-field structure member `%s'"
msgstr "poging om het adres te nemen van lid `%s' van een bitveld-structure"
-#: c-typeck.c:3180 c-typeck.c:4651 c-typeck.c:4667 c-typeck.c:4683
-#: final.c:3146 final.c:3148 gcc.c:4381 rtl-error.c:122 toplev.c:1694
-#: config/cris/cris.c:545 cp/spew.c:1538 cp/typeck.c:4367 java/expr.c:364
-#: java/verify.c:1467 java/verify.c:1468 java/verify.c:1483
-#, c-format
-msgid "%s"
-msgstr ""
-
-#: c-typeck.c:3241
+#: c-typeck.c:2634
#, fuzzy
-msgid "ISO C forbids use of conditional expressions as lvalues"
+msgid "use of conditional expressions as lvalues is deprecated"
msgstr "ANSI C verbiedt het gebruikt van voorwaardelijke expressies als lvalues"
-#: c-typeck.c:3244
+#: c-typeck.c:2637
#, fuzzy
-msgid "ISO C forbids use of compound expressions as lvalues"
+msgid "use of compound expressions as lvalues is deprecated"
msgstr "ANSI C verbiedt het gebruik van samengestelde expressies als lvalues"
-#: c-typeck.c:3247
+#: c-typeck.c:2640
#, fuzzy
-msgid "ISO C forbids use of cast expressions as lvalues"
+msgid "use of cast expressions as lvalues is deprecated"
msgstr "ANSI C verbiedt het gebruik van cast-expressies als lvalues"
-#: c-typeck.c:3264
+#: c-typeck.c:2655
#, c-format
msgid "%s of read-only member `%s'"
msgstr "%s van alleen-lezen lid `%s'"
-#: c-typeck.c:3268
+#: c-typeck.c:2659
#, c-format
msgid "%s of read-only variable `%s'"
msgstr "%s van alleen-lezen variabele `%s'"
-#: c-typeck.c:3271
+#: c-typeck.c:2662
#, c-format
msgid "%s of read-only location"
msgstr "%s van alleen-lezen locatie"
-#: c-typeck.c:3290
+#: c-typeck.c:2680
#, fuzzy, c-format
msgid "cannot take address of bit-field `%s'"
msgstr "kan adres van bitveld `%s' niet nemen"
-#: c-typeck.c:3318
+#: c-typeck.c:2708 treelang/treetree.c:946
#, c-format
msgid "global register variable `%s' used in nested function"
msgstr "globale registervariabele `%s' gebruikt in geneste functie"
-#: c-typeck.c:3322
+#: c-typeck.c:2712 treelang/treetree.c:950
#, c-format
msgid "register variable `%s' used in nested function"
msgstr "registervariabele `%s' gebruikt in geneste functie"
-#: c-typeck.c:3329
+#: c-typeck.c:2719 treelang/treetree.c:957
#, c-format
msgid "address of global register variable `%s' requested"
msgstr "adres van globale registervariabele `%s' gevraagd"
-#: c-typeck.c:3341
+#: c-typeck.c:2731
msgid "cannot put object with volatile field into register"
msgstr "een object met een volatile veld kan niet in een register geplaatst worden"
-#: c-typeck.c:3345
+#: c-typeck.c:2735 treelang/treetree.c:962
#, c-format
msgid "address of register variable `%s' requested"
msgstr "adres van registervariabele `%s' gevraagd"
# Of moet/mag 'boolean' hier vertaald worden?
-#: c-typeck.c:3453
+#: c-typeck.c:2820
#, fuzzy
msgid "signed and unsigned type in conditional expression"
msgstr "niet-boolean modus in voorwaardelijke expressie"
-#: c-typeck.c:3460
+#: c-typeck.c:2827
#, fuzzy
msgid "ISO C forbids conditional expr with only one void side"
msgstr "ANSI C verbiedt voorwaardelijke expressies met maar één void-zijde"
-#: c-typeck.c:3476 c-typeck.c:3483
+#: c-typeck.c:2843 c-typeck.c:2850
#, fuzzy
msgid "ISO C forbids conditional expr between `void *' and function pointer"
msgstr "ANSI C verbiedt voorwaardelijke expressies tussen `void *' en een functiepointer"
-#: c-typeck.c:3489
+#: c-typeck.c:2856
msgid "pointer type mismatch in conditional expression"
msgstr "pointertypes in voorwaardelijke expressie komen niet overeen"
-#: c-typeck.c:3496 c-typeck.c:3506
+#: c-typeck.c:2863 c-typeck.c:2873
msgid "pointer/integer type mismatch in conditional expression"
msgstr "types in voorwaardelijke expressie komen niet overeen (pointer/integer)"
-#: c-typeck.c:3520
+#: c-typeck.c:2887
msgid "type mismatch in conditional expression"
msgstr "types in voorwaardelijke expressie komen niet overeen"
-#: c-typeck.c:3591 cp/typeck.c:4623
+#: c-typeck.c:2947
msgid "left-hand operand of comma expression has no effect"
msgstr "linker operand van comma-expressie heeft geen effect"
-#: c-typeck.c:3635
+#: c-typeck.c:2978
msgid "cast specifies array type"
msgstr "cast geeft array-type op"
-#: c-typeck.c:3641
+#: c-typeck.c:2984
msgid "cast specifies function type"
msgstr "cast geeft functie-type op"
-#: c-typeck.c:3651
+#: c-typeck.c:2994
#, fuzzy
msgid "ISO C forbids casting nonscalar to the same type"
msgstr "ANSI C verbiedt het casten van een niet-scalair naar hetzelfde type"
-#: c-typeck.c:3670
+#: c-typeck.c:3012
#, fuzzy
msgid "ISO C forbids casts to union type"
msgstr "ANSI C verbiedt casts naar een union-type"
-#: c-typeck.c:3685
+#: c-typeck.c:3020
msgid "cast to union type from type not present in union"
msgstr "cast naar union-type van een type dat geen deel uitmaakt van de union"
-#: c-typeck.c:3736
+#: c-typeck.c:3071
#, fuzzy
msgid "cast adds new qualifiers to function type"
msgstr "cast geeft functie-type op"
#. There are qualifiers present in IN_OTYPE that are not
#. present in IN_TYPE.
-#: c-typeck.c:3741
+#: c-typeck.c:3076
msgid "cast discards qualifiers from pointer target type"
msgstr "cast laat qualifiers van doeltype van pointer vallen"
-#: c-typeck.c:3756
+#: c-typeck.c:3091
msgid "cast increases required alignment of target type"
msgstr "cast verhoogt het benodigde alignment van het doeltype"
-#: c-typeck.c:3762 cp/typeck.c:5144
+#: c-typeck.c:3097 cp/typeck.c:4889
msgid "cast from pointer to integer of different size"
msgstr "cast van pointer naar integer met andere grootte"
# 'A function type' of 'THE function type'?
-#: c-typeck.c:3767
+#: c-typeck.c:3102
msgid "cast does not match function type"
msgstr "cast komt niet overeen met het functietype"
-#: c-typeck.c:3774 cp/typeck.c:5151
+#: c-typeck.c:3109 cp/typeck.c:4896
msgid "cast to pointer from integer of different size"
msgstr "cast naar pointer van integer met andere grootte"
-#: c-typeck.c:3786
+#: c-typeck.c:3121
msgid "type-punning to incomplete type might break strict-aliasing rules"
msgstr ""
-#: c-typeck.c:3790
+#: c-typeck.c:3125
msgid "dereferencing type-punned pointer will break strict-aliasing rules"
msgstr ""
+#: c-typeck.c:3136
+#, fuzzy
+msgid "ISO C forbids conversion of function pointer to object pointer type"
+msgstr "ANSI C verbiedt een vergelijking van `void *' met een functie-pointer"
+
+#: c-typeck.c:3145
+#, fuzzy
+msgid "ISO C forbids conversion of object pointer to function pointer type"
+msgstr "ANSI C verbiedt een vergelijking van `void *' met een functie-pointer"
+
#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
#. Reject anything strange now.
-#: c-typeck.c:3949
+#: c-typeck.c:3303
msgid "invalid lvalue in assignment"
msgstr "ongeldige lvalue in toewijzing"
#. Convert new value to destination type.
-#: c-typeck.c:3958 c-typeck.c:3983 c-typeck.c:4000 cp/typeck.c:5266
-#: cp/typeck.c:5416
+#. Check this here to avoid odd errors when trying to convert
+#. a throw to the type of the COND_EXPR.
+#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
+#. Reject anything strange now.
+#: c-typeck.c:3312 c-typeck.c:3337 c-typeck.c:3354 cp/typeck.c:5008
+#: cp/typeck.c:5152
msgid "assignment"
msgstr "toewijzing"
-#: c-typeck.c:4070
+#: c-typeck.c:3421
msgid "cannot pass rvalue to reference parameter"
msgstr ""
-#: c-typeck.c:4174 c-typeck.c:4241
+#: c-typeck.c:3530 c-typeck.c:3606
#, c-format
msgid "%s makes qualified function pointer from unqualified"
msgstr "%s maakt gekwalificeerde functiepointer van een niet gekwalificeerde"
-#: c-typeck.c:4178 c-typeck.c:4221
+#: c-typeck.c:3534 c-typeck.c:3586
#, c-format
msgid "%s discards qualifiers from pointer target type"
msgstr "%s laat qualifiers van doeltype van pointer vallen"
-#: c-typeck.c:4184
+#: c-typeck.c:3540
#, fuzzy
msgid "ISO C prohibits argument conversion to union type"
msgstr "ANSI C verbiedt conversie van argumenten naar union type"
-#: c-typeck.c:4213
+#: c-typeck.c:3578
#, fuzzy, c-format
msgid "ISO C forbids %s between function pointer and `void *'"
msgstr "ANSI C verbiedt %s tussen functiepointer en `void *'"
# 'signedness' = 'signed-heid'?
-#: c-typeck.c:4230
+#: c-typeck.c:3595
#, c-format
msgid "pointer targets in %s differ in signedness"
msgstr "doelen van pointer in %s verschillen in signedness"
-#: c-typeck.c:4246
+#: c-typeck.c:3611
#, c-format
msgid "%s from incompatible pointer type"
msgstr "%s van incompatibel pointertype"
-#: c-typeck.c:4252 c-typeck.c:4804 cp/typeck.c:1653
+#: c-typeck.c:3617 c-typeck.c:4124 cp/typeck.c:1366
msgid "invalid use of non-lvalue array"
msgstr "ongeldig gebruik van array die geen lvalue is"
-#: c-typeck.c:4267
+#: c-typeck.c:3631
#, c-format
msgid "%s makes pointer from integer without a cast"
msgstr "%s maakt pointer van integer zonder een cast"
-#: c-typeck.c:4275
+#: c-typeck.c:3638
#, c-format
msgid "%s makes integer from pointer without a cast"
msgstr "%s maakt integer van pointer zonder een cast"
-#: c-typeck.c:4289 c-typeck.c:4292
+#: c-typeck.c:3652 c-typeck.c:3655
#, c-format
msgid "incompatible type for argument %d of `%s'"
msgstr "incompatibel type voor argument %d van `%s'"
-#: c-typeck.c:4296
+#: c-typeck.c:3659
#, c-format
msgid "incompatible type for argument %d of indirect function call"
msgstr "incompatibel type voor argument %d van onrechtstreekse functie-oproep"
-#: c-typeck.c:4300
+#: c-typeck.c:3663
#, c-format
msgid "incompatible types in %s"
msgstr "incompatibele types bij %s"
#. Function name is known; supply it.
-#: c-typeck.c:4358
+#: c-typeck.c:3719
#, fuzzy, c-format
msgid "passing arg of `%s'"
msgstr "doorgeven van argument %d van `%s'"
#. Function name unknown (call through ptr).
-#: c-typeck.c:4368
+#: c-typeck.c:3728
#, fuzzy
msgid "passing arg of pointer to function"
msgstr "doorgeven van argument %d van pointer naar functie"
#. Function name is known; supply it.
-#: c-typeck.c:4376
+#: c-typeck.c:3736
#, c-format
msgid "passing arg %d of `%s'"
msgstr "doorgeven van argument %d van `%s'"
#. Function name unknown (call through ptr); just give arg number.
-#: c-typeck.c:4386
+#: c-typeck.c:3745
#, c-format
msgid "passing arg %d of pointer to function"
msgstr "doorgeven van argument %d van pointer naar functie"
-#: c-typeck.c:4452
-msgid "initializer for static variable is not constant"
-msgstr "beginwaarde voor static variabele is geen constante"
-
-#: c-typeck.c:4458
-msgid "initializer for static variable uses complicated arithmetic"
-msgstr "beginwaarde voor static variabele gebruikt ingewikkelde berekening"
-
-#: c-typeck.c:4466
-msgid "aggregate initializer is not constant"
-msgstr "aggregaat-beginwaarde is geen constante"
-
-#: c-typeck.c:4468
-msgid "aggregate initializer uses complicated arithmetic"
-msgstr "aggregaat-beginwaarde gebruikt ingewikkelde berekening"
-
-#: c-typeck.c:4475
+#: c-typeck.c:3802
msgid "traditional C rejects automatic aggregate initialization"
msgstr ""
-#: c-typeck.c:4654 c-typeck.c:4670 c-typeck.c:4686
+#: c-typeck.c:3973 c-typeck.c:3988 c-typeck.c:4003
#, c-format
msgid "(near initialization for `%s')"
msgstr "(dicht bij initialisatie van `%s')"
-#: c-typeck.c:4737 cp/typeck2.c:488
+#: c-typeck.c:4052 cp/typeck2.c:559
msgid "char-array initialized from wide string"
msgstr "char-array heeft wide string als beginwaarde"
-#: c-typeck.c:4744 cp/typeck2.c:495
+#: c-typeck.c:4059 cp/typeck2.c:566
msgid "int-array initialized from non-wide string"
msgstr "int-array heeft niet-wide string als beginwaarde"
-#: c-typeck.c:4762 cp/typeck2.c:511
+#: c-typeck.c:4077 cp/typeck2.c:581
msgid "initializer-string for array of chars is too long"
msgstr "beginwaarde-string voor array van chars is te lang"
-#: c-typeck.c:4822
+#: c-typeck.c:4147
msgid "array initialized from non-constant array expression"
msgstr "array krijgt niet-constante array-expressie als beginwaarde"
-#: c-typeck.c:4839 c-typeck.c:4841 c-typeck.c:4857 c-typeck.c:4878
-#: c-typeck.c:6281
+#: c-typeck.c:4164 c-typeck.c:4166 c-typeck.c:4182 c-typeck.c:4203
+#: c-typeck.c:5585
msgid "initializer element is not constant"
msgstr "beginwaarde-element is niet constant"
-#: c-typeck.c:4873
+#: c-typeck.c:4198
msgid "initialization"
msgstr "initialisatie"
-#: c-typeck.c:4884 c-typeck.c:6286
+#: c-typeck.c:4209 c-typeck.c:5590
msgid "initializer element is not computable at load time"
msgstr "beginwaarde-element kan niet berekend worden tijdens het laden"
-#: c-typeck.c:4899 cp/typeck2.c:588
+#: c-typeck.c:4224 cp/typeck2.c:658
msgid "invalid initializer"
msgstr "ongeldige beginwaarde"
-#: c-typeck.c:5393
+#: c-typeck.c:4509 cp/decl.c:4465
+#, fuzzy
+msgid "opaque vector types cannot be initialized"
+msgstr "object van variabele lengte mag geen beginwaarde krijgen"
+
+#: c-typeck.c:4703
msgid "extra brace group at end of initializer"
msgstr "extra accolade-groep aan einde van beginwaarde"
-#: c-typeck.c:5413
+#: c-typeck.c:4723
msgid "missing braces around initializer"
msgstr "accolades ontbreken rond beginwaarde"
-#: c-typeck.c:5473
+#: c-typeck.c:4783
msgid "braces around scalar initializer"
msgstr "accolades rond scalaire beginwaarde"
-#: c-typeck.c:5521
+#: c-typeck.c:4830
msgid "initialization of flexible array member in a nested context"
msgstr ""
-#: c-typeck.c:5523
+#: c-typeck.c:4832
msgid "initialization of a flexible array member"
msgstr ""
-#: c-typeck.c:5554
+#: c-typeck.c:4863
msgid "missing initializer"
msgstr "beginwaarde ontbreekt"
-#: c-typeck.c:5580
+#: c-typeck.c:4889
msgid "empty scalar initializer"
msgstr "lege scalaire beginwaarde"
-#: c-typeck.c:5585
+#: c-typeck.c:4894
msgid "extra elements in scalar initializer"
msgstr "extra elementen in scalaire beginwaarde"
-#: c-typeck.c:5671
+#: c-typeck.c:4979
msgid "initialization designators may not nest"
msgstr ""
-#: c-typeck.c:5692 c-typeck.c:5763
+#: c-typeck.c:5000 c-typeck.c:5068
msgid "array index in non-array initializer"
msgstr "array-index in beginwaarde van niet-array"
-#: c-typeck.c:5697 c-typeck.c:5817
+#: c-typeck.c:5005 c-typeck.c:5121
#, fuzzy
msgid "field name not in record or union initializer"
msgstr "overtollige elementen in beginwaarde van union"
-#: c-typeck.c:5759 c-typeck.c:5761
+#: c-typeck.c:5064 c-typeck.c:5066
msgid "nonconstant array index in initializer"
msgstr "niet-constante array-index in beginwaarde"
-#: c-typeck.c:5765 c-typeck.c:5768
+#: c-typeck.c:5070 c-typeck.c:5073
#, fuzzy
msgid "array index in initializer exceeds array bounds"
msgstr "array-index in beginwaarde van niet-array"
-#: c-typeck.c:5779
+#: c-typeck.c:5084
msgid "empty index range in initializer"
msgstr "leeg indexbereik in beginwaarde"
-#: c-typeck.c:5788
+#: c-typeck.c:5093
#, fuzzy
msgid "array index range in initializer exceeds array bounds"
msgstr "leeg indexbereik in beginwaarde"
-#: c-typeck.c:5829
+#: c-typeck.c:5133
#, c-format
msgid "unknown field `%s' specified in initializer"
msgstr "onbekend veld `%s' opgegeven in beginwaarde"
-#: c-typeck.c:5866 c-typeck.c:5887 c-typeck.c:6348
+#: c-typeck.c:5169 c-typeck.c:5190 c-typeck.c:5652
msgid "initialized field with side-effects overwritten"
msgstr ""
-#: c-typeck.c:6558
+#: c-typeck.c:5860
#, fuzzy
msgid "excess elements in char array initializer"
msgstr "overtollige elementen in beginwaarde van array"
-#: c-typeck.c:6565 c-typeck.c:6611
+#: c-typeck.c:5867 c-typeck.c:5913
msgid "excess elements in struct initializer"
msgstr "overtollige elementen in beginwaarde van struct"
-#: c-typeck.c:6626
+#: c-typeck.c:5928
msgid "non-static initialization of a flexible array member"
msgstr ""
-#: c-typeck.c:6693
+#: c-typeck.c:5995
msgid "excess elements in union initializer"
msgstr "overtollige elementen in beginwaarde van union"
-#: c-typeck.c:6714
+#: c-typeck.c:6016
msgid "traditional C rejects initialization of unions"
msgstr ""
-#: c-typeck.c:6777
+#: c-typeck.c:6079
msgid "excess elements in array initializer"
msgstr "overtollige elementen in beginwaarde van array"
-#: c-typeck.c:6806
+#: c-typeck.c:6108
#, fuzzy
msgid "excess elements in vector initializer"
msgstr "overtollige elementen in beginwaarde van scalair"
-#: c-typeck.c:6828
+#: c-typeck.c:6130
msgid "excess elements in scalar initializer"
msgstr "overtollige elementen in beginwaarde van scalair"
-#: c-typeck.c:6935
+#: c-typeck.c:6232
msgid "asm template is not a string constant"
msgstr "asm-template is geen stringconstante"
-#: c-typeck.c:6967
+#: c-typeck.c:6264
#, fuzzy
msgid "invalid lvalue in asm statement"
msgstr "ongeldige lvalue in toewijzing"
-#: c-typeck.c:7042
+#: c-typeck.c:6336
msgid "modification by `asm'"
msgstr "aanpassing door `asm'"
-#: c-typeck.c:7061 cp/typeck.c:6237
+#: c-typeck.c:6354 cp/typeck.c:5926
msgid "function declared `noreturn' has a `return' statement"
msgstr "als `noreturn' gedeclareerde functie bevat een `return' statement"
-#: c-typeck.c:7068
+#: c-typeck.c:6361
msgid "`return' with no value, in function returning non-void"
msgstr "`return' zonder waarde in een functie die een niet-void waarde teruggeeft"
-#: c-typeck.c:7074
+#: c-typeck.c:6367
msgid "`return' with a value, in function returning void"
msgstr "`return' met waarde in een functie die void teruggeeft"
-#: c-typeck.c:7078
+#: c-typeck.c:6371
msgid "return"
msgstr "return"
-#: c-typeck.c:7130
+#: c-typeck.c:6423
msgid "function returns address of local variable"
msgstr "functie geeft adres van lokale variabele terug"
-#: c-typeck.c:7186 cp/semantics.c:555
+#: c-typeck.c:6478 cp/semantics.c:749
msgid "switch quantity not an integer"
msgstr "switch-waarde is geen integer"
-#: c-typeck.c:7196
+#: c-typeck.c:6488
#, fuzzy
msgid "`long' switch expression not converted to `int' in ISO C"
msgstr "`long' switch-expressie wordt in ANSI C niet naar `int' geconverteerd"
-#: c-typeck.c:7231 cp/decl.c:5523
+#: c-typeck.c:6529 cp/parser.c:5538
msgid "case label not within a switch statement"
msgstr "case-label niet in een switch-statement"
-#: c-typeck.c:7233 cp/decl.c:5528
+#: c-typeck.c:6531
#, fuzzy
msgid "`default' label not within a switch statement"
msgstr "default-label niet in een switch-statement"
-#: calls.c:1934 tree-inline.c:1177
-#, c-format
-msgid "inlining failed in call to `%s'"
+#: c-typeck.c:6683 c-typeck.c:6717
+msgid "division by zero"
+msgstr "deling door nul"
+
+#: c-typeck.c:6762 cp/typeck.c:2928
+msgid "right shift count is negative"
+msgstr "teller van rechtse shift is negatief"
+
+#: c-typeck.c:6769 cp/typeck.c:2934
+msgid "right shift count >= width of type"
+msgstr "teller van rechtse shift is >= breedte van het type"
+
+#: c-typeck.c:6790 cp/typeck.c:2953
+msgid "left shift count is negative"
+msgstr "teller van links shift is negatief"
+
+#: c-typeck.c:6793 cp/typeck.c:2955
+msgid "left shift count >= width of type"
+msgstr "teller van links shift is >= breedte van het type"
+
+#: c-typeck.c:6814
+msgid "shift count is negative"
+msgstr "teller van shift is negatief"
+
+#: c-typeck.c:6816
+msgid "shift count >= width of type"
+msgstr "teller van shift is >= breedte van het type"
+
+#: c-typeck.c:6833 cp/typeck.c:2990
+msgid "comparing floating point with == or != is unsafe"
+msgstr ""
+
+#: c-typeck.c:6859 c-typeck.c:6865
+#, fuzzy
+msgid "ISO C forbids comparison of `void *' with function pointer"
+msgstr "ANSI C verbiedt een vergelijking van `void *' met een functie-pointer"
+
+#: c-typeck.c:6868 c-typeck.c:6908 c-typeck.c:6936
+msgid "comparison of distinct pointer types lacks a cast"
+msgstr "een cast ontbreekt bij vergelijking van ongelijke pointer-types"
+
+#: c-typeck.c:6882 c-typeck.c:6887 c-typeck.c:6956 c-typeck.c:6961
+msgid "comparison between pointer and integer"
+msgstr "vergelijking tussen pointer en integer"
+
+# 'ordered' -> 'bevolen' of 'geordend'? Waarschijnlijk het laatste.
+#: c-typeck.c:6903 c-typeck.c:6931
+#, fuzzy
+msgid "ISO C forbids ordered comparisons of pointers to functions"
+msgstr "ANSI C verbiedt geordende vergelijkingen tussen pointers naar functies"
+
+#: c-typeck.c:6928
+msgid "comparison of complete and incomplete pointers"
+msgstr "vergelijking van volledige en onvolledige pointers"
+
+#: c-typeck.c:6944 c-typeck.c:6951
+msgid "ordered comparison of pointer with integer zero"
+msgstr "geordende vergelijking van een pointer met integer nul"
+
+#: c-typeck.c:6975 cp/typeck.c:3126
+#, fuzzy
+msgid "unordered comparison on non-floating point argument"
+msgstr "geordende vergelijking van een pointer met integer nul"
+
+#: c-typeck.c:7185
+msgid "comparison between signed and unsigned"
+msgstr "vergelijking tussen signed en unsigned"
+
+#: c-typeck.c:7231 cp/typeck.c:3373
+msgid "comparison of promoted ~unsigned with constant"
+msgstr "vergelijking van gepromoveerde ~unsigned met constante"
+
+#: c-typeck.c:7239 cp/typeck.c:3381
+msgid "comparison of promoted ~unsigned with unsigned"
+msgstr "vergelijking van gepromoveerde ~unsigned met unsigned"
+
+#: calls.c:1838
+#, fuzzy
+msgid "%Jinlining failed in call to '%F'"
msgstr "inline maken mislukt in oproep van `%s'"
-#: calls.c:1935 calls.c:2271 tree-inline.c:1178
+#: calls.c:1839 calls.c:2208 tree-inline.c:1339 tree-inline.c:1346
msgid "called from here"
msgstr "van hieruit opgeroepen"
-#: calls.c:2270
-#, c-format
-msgid "can't inline call to `%s'"
+#: calls.c:2207
+#, fuzzy
+msgid "%Jcan't inline call to '%F'"
msgstr "kan oproep van `%s' niet inline maken"
+#: calls.c:2216
+msgid "ignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2229
+msgid "ignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
+
# dit klinkt niet al te best
-#: calls.c:2300
+#: calls.c:2239
msgid "function call has aggregate value"
msgstr "functie-oproep heeft geaggregeerde waarde"
-#: cfgloop.c:1107
+#: cfg.c:835
#, c-format
-msgid "Size of loop %d should be %d, not %d."
+msgid "bb %d on wrong place"
msgstr ""
-#: cfgloop.c:1126
+#: cfg.c:841
#, c-format
-msgid "Bb %d do not belong to loop %d."
+msgid "prev_bb of %d should be %d, not %d"
msgstr ""
-#: cfgloop.c:1144
+#: cfg.c:857
#, c-format
-msgid "Loop %d's header does not have exactly 2 entries."
+msgid "verify_flow_info: Wrong count of block %i %i"
msgstr ""
-#: cfgloop.c:1152
+#: cfg.c:863
#, c-format
-msgid "Loop %d's latch does not have exactly 1 successor."
+msgid "verify_flow_info: Wrong frequency of block %i %i"
msgstr ""
-#: cfgloop.c:1157
+#: cfg.c:871
#, c-format
-msgid "Loop %d's latch does not have header as successor."
+msgid "verify_flow_info: Duplicate edge %i->%i"
msgstr ""
-#: cfgloop.c:1162
+#: cfg.c:877
#, c-format
-msgid "Loop %d's latch does not belong directly to it."
+msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
msgstr ""
-#: cfgloop.c:1168
+#: cfg.c:883
#, c-format
-msgid "Loop %d's header does not belong directly to it."
+msgid "verify_flow_info: Wrong count of edge %i->%i %i"
msgstr ""
-#: cfgrtl.c:1774
+#: cfg.c:895
#, c-format
-msgid "bb %d on wrong place"
+msgid "verify_flow_info: Basic block %d succ edge is corrupted"
msgstr ""
-#: cfgrtl.c:1780
+#: cfg.c:909 cfgrtl.c:1971
#, c-format
-msgid "prev_bb of %d should be %d, not %d"
+msgid "Wrong amount of branch edges after unconditional jump %i"
msgstr ""
-#: cfgrtl.c:1800
+#: cfg.c:917
#, c-format
-msgid "end insn %d for block %d not found in the insn stream"
+msgid "basic block %d pred edge is corrupted"
msgstr ""
-#: cfgrtl.c:1814
+#: cfg.c:943
#, c-format
-msgid "insn %d is in multiple basic blocks (%d and %d)"
+msgid "basic block %i edge lists are corrupted"
msgstr ""
-#: cfgrtl.c:1826
+#: cfg.c:955
+msgid "verify_flow_info failed"
+msgstr ""
+
+#: cfgloop.c:1134
#, c-format
-msgid "head insn %d for block %d not found in the insn stream"
+msgid "Size of loop %d should be %d, not %d."
msgstr ""
-#: cfgrtl.c:1848
+#: cfgloop.c:1153
#, c-format
-msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
+msgid "Bb %d do not belong to loop %d."
msgstr ""
-#: cfgrtl.c:1855
+#: cfgloop.c:1171
#, c-format
-msgid "verify_flow_info: Wrong count of block %i %i"
+msgid "Loop %d's header does not have exactly 2 entries."
msgstr ""
-#: cfgrtl.c:1861
+#: cfgloop.c:1179
#, c-format
-msgid "verify_flow_info: Wrong frequency of block %i %i"
+msgid "Loop %d's latch does not have exactly 1 successor."
msgstr ""
-#: cfgrtl.c:1869
+#: cfgloop.c:1184
#, c-format
-msgid "verify_flow_info: Duplicate edge %i->%i"
+msgid "Loop %d's latch does not have header as successor."
msgstr ""
-#: cfgrtl.c:1875
+#: cfgloop.c:1189
#, c-format
-msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+msgid "Loop %d's latch does not belong directly to it."
msgstr ""
-#: cfgrtl.c:1881
+#: cfgloop.c:1195
#, c-format
-msgid "verify_flow_info: Wrong count of edge %i->%i %i"
+msgid "Loop %d's header does not belong directly to it."
msgstr ""
-#: cfgrtl.c:1911
+#: cfgloop.c:1201
#, c-format
-msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgid "Loop %d's latch is marked as part of irreducible region."
msgstr ""
-#: cfgrtl.c:1926
+#: cfgloop.c:1231
#, c-format
-msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgid "Basic block %d should be marked irreducible."
msgstr ""
-#: cfgrtl.c:1928
-msgid "wrong insn in the fallthru edge"
+#: cfgloop.c:1237
+#, c-format
+msgid "Basic block %d should not be marked irreducible."
msgstr ""
-#: cfgrtl.c:1935
+#: cfgloop.c:1245
#, c-format
-msgid "verify_flow_info: Basic block %d succ edge is corrupted"
+msgid "Edge from %d to %d should be marked irreducible."
msgstr ""
-#: cfgrtl.c:1951
+#: cfgloop.c:1252
#, c-format
-msgid "Missing REG_EH_REGION note in the end of bb %i"
+msgid "Edge from %d to %d should not be marked irreducible."
msgstr ""
-#: cfgrtl.c:1959
+#: cfgrtl.c:1877
#, c-format
-msgid "Too many outgoing branch edges from bb %i"
+msgid "end insn %d for block %d not found in the insn stream"
msgstr ""
-#: cfgrtl.c:1964
+#: cfgrtl.c:1891
#, c-format
-msgid "Fallthru edge after unconditional jump %i"
+msgid "insn %d is in multiple basic blocks (%d and %d)"
msgstr ""
-#: cfgrtl.c:1969
+#: cfgrtl.c:1903
#, c-format
-msgid "Wrong amount of branch edges after unconditional jump %i"
+msgid "head insn %d for block %d not found in the insn stream"
msgstr ""
-#: cfgrtl.c:1975
-#, fuzzy, c-format
-msgid "Wrong amount of branch edges after conditional jump %i"
-msgstr "types in voorwaardelijke expressie komen niet overeen"
+#: cfgrtl.c:1925
+msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i"
+msgstr ""
-#: cfgrtl.c:1980
+#: cfgrtl.c:1953
#, c-format
-msgid "Call edges for non-call insn in bb %i"
+msgid "Missing REG_EH_REGION note in the end of bb %i"
msgstr ""
-#: cfgrtl.c:1989
+#: cfgrtl.c:1961
#, c-format
-msgid "Abnormal edges for no purpose in bb %i"
+msgid "Too many outgoing branch edges from bb %i"
msgstr ""
-#: cfgrtl.c:2004
+#: cfgrtl.c:1966
#, c-format
-msgid "missing barrier after block %i"
+msgid "Fallthru edge after unconditional jump %i"
+msgstr ""
+
+#: cfgrtl.c:1977
+#, fuzzy, c-format
+msgid "Wrong amount of branch edges after conditional jump %i"
+msgstr "types in voorwaardelijke expressie komen niet overeen"
+
+#: cfgrtl.c:1982
+#, c-format
+msgid "Call edges for non-call insn in bb %i"
msgstr ""
-#: cfgrtl.c:2014
+#: cfgrtl.c:1991
#, c-format
-msgid "basic block %d pred edge is corrupted"
+msgid "Abnormal edges for no purpose in bb %i"
msgstr ""
-#: cfgrtl.c:2031
+#: cfgrtl.c:2001
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is NULL"
msgstr ""
-#: cfgrtl.c:2035
+#: cfgrtl.c:2005
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is %i"
msgstr ""
-#: cfgrtl.c:2049 cfgrtl.c:2059
+#: cfgrtl.c:2019 cfgrtl.c:2029
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
msgstr ""
-#: cfgrtl.c:2072
+#: cfgrtl.c:2042
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
msgstr ""
-#: cfgrtl.c:2084
+#: cfgrtl.c:2052
#, c-format
msgid "in basic block %d:"
msgstr ""
-#: cfgrtl.c:2085
+#: cfgrtl.c:2053
msgid "flow control insn inside a basic block"
msgstr ""
-#: cfgrtl.c:2104
+#: cfgrtl.c:2099
#, c-format
-msgid "basic block %i edge lists are corrupted"
+msgid "missing barrier after block %i"
+msgstr ""
+
+#: cfgrtl.c:2112
+#, c-format
+msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgstr ""
+
+#: cfgrtl.c:2127
+#, c-format
+msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgstr ""
+
+#: cfgrtl.c:2129
+msgid "wrong insn in the fallthru edge"
msgstr ""
-#: cfgrtl.c:2119
-msgid "basic blocks not numbered consecutively"
+#: cfgrtl.c:2146
+msgid "basic blocks not laid down consecutively"
msgstr ""
-#: cfgrtl.c:2144
+#: cfgrtl.c:2171
msgid "insn outside basic block"
msgstr ""
-#: cfgrtl.c:2152
+#: cfgrtl.c:2179
#, fuzzy
msgid "return not followed by barrier"
msgstr "`#' gevolgd door een integer"
-#: cfgrtl.c:2157
+#: cfgrtl.c:2186
#, c-format
msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr ""
-#: cfgrtl.c:2161
-msgid "verify_flow_info failed"
+#: cgraph.c:161
+#, fuzzy
+msgid "function body not available"
+msgstr "de terugkeerwaarde van een functie kan geen funtie zijn"
+
+#: cgraph.c:163 cgraphunit.c:341
+#, fuzzy
+msgid "redefined extern inline functions are not considered for inlining"
+msgstr "kan functie `main' niet inline maken"
+
+#: cgraph.c:166 cgraphunit.c:346
+#, fuzzy
+msgid "function not considered for inlining"
+msgstr "de terugkeerwaarde van een functie kan geen funtie zijn"
+
+#: cgraph.c:168 cgraphunit.c:344
+#, fuzzy
+msgid "function not inlinable"
+msgstr "de terugkeerwaarde van een functie kan geen funtie zijn"
+
+#: cgraph.c:476
+msgid "%D renamed after being referenced in assembly"
+msgstr ""
+
+#: cgraphunit.c:1042
+msgid "--param large-function-growth limit reached"
msgstr ""
-#: collect2.c:425
+#: cgraphunit.c:1055
+msgid "--param large-function-growth limit reached while inlining the caller"
+msgstr ""
+
+#: cgraphunit.c:1120
+msgid "--param max-inline-insns-single limit reached"
+msgstr ""
+
+#: cgraphunit.c:1144
+msgid "--param max-inline-insns-single limit reached after inlining into the callee"
+msgstr ""
+
+#: cgraphunit.c:1221
+msgid "--param inline-unit-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1293 cgraphunit.c:1437
+msgid "recursive inlining"
+msgstr ""
+
+#: collect2.c:406
msgid "internal error"
msgstr "interne fout"
-#: collect2.c:934
+#: collect2.c:894
msgid "no arguments"
msgstr "geen argumenten"
-#: collect2.c:1263 collect2.c:1411 collect2.c:1444
+#: collect2.c:1226 collect2.c:1374 collect2.c:1407
#, c-format
msgid "fopen %s"
msgstr "fopen %s"
-#: collect2.c:1266 collect2.c:1416 collect2.c:1447
+#: collect2.c:1229 collect2.c:1379 collect2.c:1410
#, c-format
msgid "fclose %s"
msgstr "fclose %s"
-#: collect2.c:1275
+#: collect2.c:1238
#, c-format
msgid "collect2 version %s"
msgstr "collect2 versie %s"
-#: collect2.c:1365
+#: collect2.c:1328
#, c-format
msgid "%d constructor(s) found\n"
msgstr "%d constructor(s) gevonden\n"
-#: collect2.c:1366
+#: collect2.c:1329
#, c-format
msgid "%d destructor(s) found\n"
msgstr "%d destructor(s) gevonden\n"
-#: collect2.c:1367
+#: collect2.c:1330
#, c-format
msgid "%d frame table(s) found\n"
msgstr "%d frame-tabel(len) gevonden\n"
-#: collect2.c:1508
+#: collect2.c:1470
#, fuzzy, c-format
msgid "%s terminated with signal %d [%s]%s"
msgstr "%s beëindigd met signaal %d [%s]"
-#: collect2.c:1527
+#: collect2.c:1488
#, c-format
msgid "%s returned %d exit status"
msgstr "%s gaf exit-status %d terug"
-#: collect2.c:1555
+#: collect2.c:1513
#, c-format
msgid "[cannot find %s]"
msgstr "[kan %s niet vinden]"
-#: collect2.c:1570
+#: collect2.c:1528
#, c-format
msgid "cannot find `%s'"
msgstr "kan %s niet vinden"
-#: collect2.c:1581 collect2.c:1584
+#: collect2.c:1539 collect2.c:1542
#, c-format
msgid "redirecting stdout: %s"
msgstr "bij het herleiden van standaarduitvoer: %s"
-#: collect2.c:1627
+#: collect2.c:1581
#, c-format
msgid "[Leaving %s]\n"
msgstr "[%s wordt verlaten]\n"
-#: collect2.c:1870
+#: collect2.c:1801
#, c-format
msgid ""
"\n"
@@ -3875,87 +4035,87 @@ msgstr ""
"\n"
"write_c_file - uitvoernaam is %s, prefix is %s\n"
-#: collect2.c:2082
+#: collect2.c:2005
msgid "cannot find `nm'"
msgstr "kan `nm' niet vinden"
-#: collect2.c:2092 collect2.c:2533
+#: collect2.c:2015 collect2.c:2444
msgid "pipe"
msgstr "pipe"
-#: collect2.c:2096 collect2.c:2537
+#: collect2.c:2019 collect2.c:2448
msgid "fdopen"
msgstr "fdopen"
-#: collect2.c:2122 collect2.c:2563
+#: collect2.c:2045 collect2.c:2474
#, c-format
msgid "dup2 %d 1"
msgstr "dup2 %d 1"
-#: collect2.c:2125 collect2.c:2128 collect2.c:2141 collect2.c:2566
-#: collect2.c:2569 collect2.c:2582
+#: collect2.c:2048 collect2.c:2051 collect2.c:2064 collect2.c:2477
+#: collect2.c:2480 collect2.c:2493
#, c-format
msgid "close %d"
msgstr "close %d"
-#: collect2.c:2131 collect2.c:2572
+#: collect2.c:2054 collect2.c:2483
#, c-format
msgid "execv %s"
msgstr "execv %s"
-#: collect2.c:2185
+#: collect2.c:2108
#, c-format
msgid "init function found in object %s"
msgstr "init-functie gevonden in object %s"
-#: collect2.c:2193
+#: collect2.c:2116
#, c-format
msgid "fini function found in object %s"
msgstr "fini-functie gevonden in object %s"
-#: collect2.c:2216 collect2.c:2621
+#: collect2.c:2139 collect2.c:2532
msgid "fclose"
msgstr "fclose"
-#: collect2.c:2261
+#: collect2.c:2181
#, c-format
msgid "unable to open file '%s'"
msgstr "kan bestand '%s' niet openen"
-#: collect2.c:2263
+#: collect2.c:2183
#, c-format
msgid "unable to stat file '%s'"
msgstr "kan bestand '%s' niet stat'en"
-#: collect2.c:2269
+#: collect2.c:2189
#, c-format
msgid "unable to mmap file '%s'"
msgstr "kan bestand '%s' niet mmap'en"
-#: collect2.c:2422
+#: collect2.c:2335
msgid "not found\n"
msgstr "niet gevonden\n"
# 'dependency'? 'afhankelijkheid' klinkt niet echt goed...
-#: collect2.c:2424 collect2.c:2600
+#: collect2.c:2337 collect2.c:2511
#, c-format
msgid "dynamic dependency %s not found"
msgstr "dynamische dependency %s niet gevonden"
-#: collect2.c:2444
+#: collect2.c:2356
#, c-format
msgid "bad magic number in file '%s'"
msgstr "slecht magisch getal in bestand '%s'"
-#: collect2.c:2466
+#: collect2.c:2378
msgid "dynamic dependencies.\n"
msgstr "dynamische dependencies.\n"
-#: collect2.c:2524
+#: collect2.c:2435
msgid "cannot find `ldd'"
msgstr "kan `ldd' niet vinden"
-#: collect2.c:2585
+#: collect2.c:2496
msgid ""
"\n"
"ldd output with constructors/destructors.\n"
@@ -3963,17 +4123,17 @@ msgstr ""
"\n"
"uitvoer van ldd met constructors/destructors.\n"
-#: collect2.c:2612
+#: collect2.c:2523
#, c-format
msgid "unable to open dynamic dependency '%s'"
msgstr "kan dynamische dependency '%s' niet openen"
-#: collect2.c:2726
+#: collect2.c:2683
#, c-format
msgid "%s: not a COFF file"
msgstr "%s: geen COFF-bestand"
-#: collect2.c:2845
+#: collect2.c:2802
#, c-format
msgid "%s: cannot open as COFF file"
msgstr "%s: kan niet openen als COFF-bestand"
@@ -3982,1489 +4142,1231 @@ msgstr "%s: kan niet openen als COFF-bestand"
# dikwijls 'bibliotheek' zien gebruiken.
# De vertaalde boodschappen voor make gebruiken dat op het ogenblik wél, maar
# ik ben van plan daar verandering in te brengen.
-#: collect2.c:2901
+#: collect2.c:2857
#, fuzzy, c-format
msgid "library lib%s not found"
msgstr "Library lib%s niet gevonden"
-#: collect2.c:3028
+#: combine.c:13027
#, c-format
-msgid "open %s"
-msgstr "open %s"
-
-#: collect2.c:3051
-msgid "incompatibilities between object file & expected values"
-msgstr "incompatibiliteiten tussen objectbestand & verwachte waarden"
+msgid ""
+";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
+"\n"
+msgstr ""
+";; Combiner-statistieken: %d pogingen, %d vervangingen (%d hadden nieuwe ruimte\n"
+";; nodig), %d successen.\n"
+"\n"
-#: collect2.c:3124
+#: combine.c:13036
#, c-format
msgid ""
"\n"
-"Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
msgstr ""
"\n"
-"Symbooltabel #%d wordt verwerkt (offset = 0x%.8lx, soort = %s)\n"
-
-#: collect2.c:3133
-msgid "string section missing"
-msgstr "string-sectie ontbreekt"
+";; Combiner-totalen: %d pogingen, %d vervangingen (%d hadden nieuwe ruimte\n"
+";; nodig), %d successen.\n"
-#: collect2.c:3136
-msgid "section pointer missing"
-msgstr "sectie-pointer ontbreekt"
+#: convert.c:70
+msgid "cannot convert to a pointer type"
+msgstr ""
-#: collect2.c:3184
-msgid "no symbol table found"
-msgstr "geen symbooltabel gevonden"
+#: convert.c:267
+msgid "pointer value used where a floating point value was expected"
+msgstr ""
-#: collect2.c:3197
-msgid "no cmd_strings found"
-msgstr "geen cmd_strings gevonden"
+#: convert.c:271
+msgid "aggregate value used where a float was expected"
+msgstr ""
-#: collect2.c:3209
-msgid ""
-"\n"
-"Updating header and load commands.\n"
-"\n"
+#: convert.c:296
+msgid "conversion to incomplete type"
msgstr ""
-"\n"
-"Hoofding en laadcommandos worden aangepast.\n"
-"\n"
-#: collect2.c:3216
-#, c-format
-msgid "load command map, %d cmds, new size %ld.\n"
-msgstr "laadcommando-kaart, %d commando's, nieuwe grootte %ld.\n"
+#: convert.c:600 convert.c:678
+#, fuzzy
+msgid "can't convert between vector values of different size"
+msgstr "cast van pointer naar integer met andere grootte"
-#: collect2.c:3247
-msgid ""
-"writing load commands.\n"
-"\n"
+#: convert.c:606
+msgid "aggregate value used where an integer was expected"
msgstr ""
-"laadcommandos worden geschreven.\n"
-"\n"
-#: collect2.c:3267
-#, c-format
-msgid "close %s"
-msgstr "close %s"
+#: convert.c:657 f/com.c:1101
+msgid "pointer value used where a complex was expected"
+msgstr ""
+
+#: convert.c:661 f/com.c:1103
+msgid "aggregate value used where a complex was expected"
+msgstr ""
# 'regio' klinkt niet echt, maar 'streek' lijkt me nog slechter
-#: collect2.c:3341
-msgid "could not convert 0x%l.8x into a region"
+#: convert.c:684
+#, fuzzy
+msgid "can't convert value to a vector"
msgstr "kon 0x%l.8x niet naar een regio omzetten"
-#: collect2.c:3345
-#, c-format
-msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
-msgstr "%s-functie, regio %d, offset = %ld (0x%.8lx)\n"
+#: coverage.c:164
+#, fuzzy, c-format
+msgid "`%s' is not a gcov data file"
+msgstr "-fPIC is niet geldig met -mcoff"
-#: collect2.c:3472
-msgid "bad magic number"
-msgstr "slecht magisch getal"
+#: coverage.c:175
+#, fuzzy, c-format
+msgid "`%s' is version `%.4s', expected version `%.4s'"
+msgstr "gcc stuurprogramma versie %s voert gcc versie %s uit\n"
-#: collect2.c:3473
-msgid "bad header version"
-msgstr "slechte versie van hoofding"
+#: coverage.c:255 coverage.c:263
+#, c-format
+msgid "coverage mismatch for function %u while reading execution counters."
+msgstr ""
-# trekt op nie veel
-#: collect2.c:3474
-msgid "bad raw header version"
-msgstr "slechte versie van rauwe hoofding"
+#: coverage.c:257 coverage.c:340
+#, c-format
+msgid "checksum is %x instead of %x"
+msgstr ""
-#: collect2.c:3475
-msgid "raw header buffer too small"
-msgstr "buffer voor rauwe hoofding te klein"
+#: coverage.c:265 coverage.c:348
+#, c-format
+msgid "number of counters is %d instead of %d"
+msgstr ""
-#: collect2.c:3476
-msgid "old raw header file"
-msgstr "oud bestand met rauwe hoofding"
+#: coverage.c:271
+#, fuzzy, c-format
+msgid "cannot merge separate %s counters for function %u"
+msgstr "kan functie `main' niet inline maken"
-#: collect2.c:3477
-msgid "unsupported version"
-msgstr "niet-ondersteunde versie"
+# 'parser' en 'stack overflow' vertalen?
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' has overflowed"
+msgstr "stack overflow in parser"
-#: collect2.c:3479
-#, c-format
-msgid "unknown {de,en}code_mach_o_hdr return value %d"
-msgstr "onbekende returnwaarde %d voor {de,en}code_mach_o_hdr"
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' is corrupted"
+msgstr "`%.*s' is niet gedefinieerd"
-#: collect2.c:3499
+#: coverage.c:319
#, c-format
-msgid "fstat %s"
-msgstr "fstat %s"
+msgid "file %s not found, execution counts assumed to be zero"
+msgstr ""
-#: collect2.c:3536 collect2.c:3584
-#, c-format
-msgid "lseek %s 0"
-msgstr "lseek %s 0"
+#: coverage.c:329
+#, fuzzy, c-format
+msgid "no coverage for function '%s' found."
+msgstr "ongeldige opslagklasse voor functie `%s'"
-#: collect2.c:3540
+#: coverage.c:337 coverage.c:345
#, c-format
-msgid "read %s"
-msgstr "read %s"
+msgid "coverage mismatch for function '%s' while reading counter '%s'."
+msgstr ""
-#: collect2.c:3543
-#, c-format
-msgid "read %ld bytes, expected %ld, from %s"
-msgstr "%ld bytes gelezen (%ld verwacht) van %s"
+#: coverage.c:492
+#, fuzzy, c-format
+msgid "cannot open %s"
+msgstr "open %s"
-#: collect2.c:3564
-#, c-format
-msgid "msync %s"
-msgstr "msync %s"
+#: coverage.c:527
+#, fuzzy, c-format
+msgid "error writing `%s'"
+msgstr "#error %s"
-#: collect2.c:3571
-#, c-format
-msgid "munmap %s"
-msgstr "munmap %s"
+#. XXX should be DL_SORRY
+#: cppcharset.c:653
+#, fuzzy, c-format
+msgid "conversion from %s to %s not supported by iconv"
+msgstr "afrondingsmodus niet ondersteund voor VAX-floats"
-#: collect2.c:3588
-#, c-format
-msgid "write %s"
-msgstr "write %s"
+#: cppcharset.c:656
+msgid "iconv_open"
+msgstr ""
-#: collect2.c:3591
+#. XXX should be DL_SORRY
+#: cppcharset.c:664
#, c-format
-msgid "wrote %ld bytes, expected %ld, to %s"
-msgstr "%ld bytes geschreven (%ld verwacht) naar %s"
+msgid "no iconv implementation, cannot convert from %s to %s"
+msgstr ""
-#: combine.c:13222
+#: cppcharset.c:808
+#, fuzzy
+msgid "universal character names are only valid in C++ and C99"
+msgstr "case-waarde buiten bereik"
+
+#: cppcharset.c:811
+#, fuzzy, c-format
+msgid "the meaning of '\\%c' is different in traditional C"
+msgstr "de betekenis van `\\a' varieert naargelang -traditional al dan niet gebruikt wordt"
+
+#: cppcharset.c:837
#, c-format
-msgid ""
-";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
-"\n"
+msgid "incomplete universal character name %.*s"
msgstr ""
-";; Combiner-statistieken: %d pogingen, %d vervangingen (%d hadden nieuwe ruimte\n"
-";; nodig), %d successen.\n"
-"\n"
-#: combine.c:13232
+#: cppcharset.c:849
+#, fuzzy, c-format
+msgid "%.*s is not a valid universal character"
+msgstr "`%s' is geen iterator"
+
+#: cppcharset.c:859
#, c-format
-msgid ""
-"\n"
-";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
+msgid "universal character %.*s is not valid in an identifier"
msgstr ""
-"\n"
-";; Combiner-totalen: %d pogingen, %d vervangingen (%d hadden nieuwe ruimte\n"
-";; nodig), %d successen.\n"
-#: convert.c:69
-msgid "cannot convert to a pointer type"
+#: cppcharset.c:863
+#, c-format
+msgid "universal character %.*s is not valid at the start of an identifier"
msgstr ""
-#: convert.c:102
-msgid "pointer value used where a floating point value was expected"
+#: cppcharset.c:898
+msgid "converting UCN to source character set"
msgstr ""
-#: convert.c:106
-msgid "aggregate value used where a float was expected"
+#: cppcharset.c:902
+msgid "converting UCN to execution character set"
msgstr ""
-#: convert.c:132
-msgid "conversion to incomplete type"
-msgstr ""
+#: cppcharset.c:967
+#, fuzzy
+msgid "the meaning of '\\x' is different in traditional C"
+msgstr "de betekenis van `\\x' varieert naargelang -traditional al dan niet gebruikt wordt"
+
+#: cppcharset.c:984 f/lex.c:580
+msgid "\\x used with no following hex digits"
+msgstr "\\x gebruikt zonder daaropvolgende hexadecimale cijfers"
+
+#: cppcharset.c:991
+msgid "hex escape sequence out of range"
+msgstr "hexadecimale escape sequence buiten bereik"
+
+#: cppcharset.c:1030
+msgid "octal escape sequence out of range"
+msgstr "octale escape sequence buiten bereik"
-#: convert.c:414 convert.c:494
+#: cppcharset.c:1098
#, fuzzy
-msgid "can't convert between vector values of different size"
-msgstr "cast van pointer naar integer met andere grootte"
+msgid "the meaning of '\\a' is different in traditional C"
+msgstr "de betekenis van `\\a' varieert naargelang -traditional al dan niet gebruikt wordt"
-#: convert.c:420
-msgid "aggregate value used where an integer was expected"
-msgstr ""
+#: cppcharset.c:1105
+#, fuzzy, c-format
+msgid "non-ISO-standard escape sequence, '\\%c'"
+msgstr "niet-ANSI-standaard escape sequence `\\%c'"
-#: convert.c:472 f/com.c:1100
-msgid "pointer value used where a complex was expected"
-msgstr ""
+#: cppcharset.c:1113
+#, fuzzy, c-format
+msgid "unknown escape sequence '\\%c'"
+msgstr "onbekende escape sequence `\\%c'"
-#: convert.c:476 f/com.c:1102
-msgid "aggregate value used where a complex was expected"
+#: cppcharset.c:1116
+#, fuzzy, c-format
+msgid "unknown escape sequence: '\\%03o'"
+msgstr "onbekende escape sequence `\\%c'"
+
+#: cppcharset.c:1122
+#, fuzzy
+msgid "converting escape sequence to execution character set"
+msgstr "octale escape sequence buiten bereik"
+
+#: cppcharset.c:1181
+msgid "converting to execution character set"
msgstr ""
-# 'regio' klinkt niet echt, maar 'streek' lijkt me nog slechter
-#: convert.c:500
+#: cppcharset.c:1244 cppcharset.c:1307
#, fuzzy
-msgid "can't convert value to a vector"
+msgid "character constant too long for its type"
+msgstr "karakterconstante te lang"
+
+#: cppcharset.c:1247
+msgid "multi-character character constant"
+msgstr "karakterconstante met meer dan één karakter"
+
+#: cppcharset.c:1339
+msgid "empty character constant"
+msgstr "lege karakterconstante"
+
+# 'regio' klinkt niet echt, maar 'streek' lijkt me nog slechter
+#: cppcharset.c:1378
+#, fuzzy, c-format
+msgid "failure to convert %s to %s"
msgstr "kon 0x%l.8x niet naar een regio omzetten"
# Dit zou misschien beter 'warning' blijven
-#: cpperror.c:113
+#: cpperror.c:110 diagnostic.def:5
msgid "warning: "
msgstr "let op: "
-#: cpperror.c:115
+#: cpperror.c:112
#, fuzzy
msgid "internal error: "
msgstr "interne fout"
-#: cpperror.c:189
+#: cpperror.c:174
#, fuzzy
msgid "stdout"
msgstr "struct"
-#: cpperror.c:191 gcc.c:6428
-#, c-format
-msgid "%s: %s"
-msgstr ""
-
-#: cppexp.c:199
+#: cppexp.c:192
#, fuzzy
msgid "too many decimal points in number"
msgstr "teveel `l'en in integerconstante"
-#: cppexp.c:219
+#: cppexp.c:212
#, fuzzy, c-format
msgid "invalid digit \"%c\" in octal constant"
msgstr "twee `u's in integerconstante"
-#: cppexp.c:225
+#: cppexp.c:218
#, fuzzy
msgid "use of C99 hexadecimal floating constant"
msgstr "hexadecimale floating-point constante heeft geen exponent"
-#: cppexp.c:234
+#: cppexp.c:227
#, fuzzy
msgid "exponent has no digits"
msgstr "exponent van floating-point constante heeft geen cijfers"
-#: cppexp.c:241
+#: cppexp.c:234
#, fuzzy
msgid "hexadecimal floating constants require an exponent"
msgstr "hexadecimale floating-point constante heeft geen exponent"
-#: cppexp.c:247
+#: cppexp.c:240
#, fuzzy, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "misvormde floating-point constante"
-#: cppexp.c:257 cppexp.c:282
+#: cppexp.c:250 cppexp.c:275
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr ""
-#: cppexp.c:268
+#: cppexp.c:261
#, fuzzy, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "twee `u's in integerconstante"
-#: cppexp.c:289
+#: cppexp.c:283
#, fuzzy
msgid "use of C99 long long integer constant"
msgstr "ANSI C verbiedt long long integerconstantes"
-#: cppexp.c:295
+#: cppexp.c:290
msgid "imaginary constants are a GCC extension"
msgstr ""
-#: cppexp.c:383
+#: cppexp.c:376
#, fuzzy
msgid "integer constant is too large for its type"
msgstr "integerconstante is zo groot dat hij unsigned is"
-#: cppexp.c:395
+#: cppexp.c:388
msgid "integer constant is so large that it is unsigned"
msgstr "integerconstante is zo groot dat hij unsigned is"
-#: cppexp.c:482
+#: cppexp.c:470
#, fuzzy
msgid "missing ')' after \"defined\""
msgstr "witruimte ontbreekt na `#define %.*s'"
-#: cppexp.c:489
+#: cppexp.c:477
#, fuzzy
msgid "operator \"defined\" requires an identifier"
msgstr "`defined' zonder een naam"
-#: cppexp.c:497
+#: cppexp.c:485
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr ""
-#: cppexp.c:507
+#: cppexp.c:495
msgid "this use of \"defined\" may not be portable"
msgstr ""
-#: cppexp.c:545
+#: cppexp.c:531
#, fuzzy
msgid "floating constant in preprocessor expression"
msgstr "integer-overflow in preprocessor-expressie"
-#: cppexp.c:551
+#: cppexp.c:537
#, fuzzy
msgid "imaginary number in preprocessor expression"
msgstr "integer-overflow in preprocessor-expressie"
-#: cppexp.c:596
-#, fuzzy, c-format
-msgid "ISO C++ does not permit \"%s\" in #if"
-msgstr "ANSI C staat het gebruik van `varargs.h' niet toe"
-
-#: cppexp.c:604
+#: cppexp.c:582
#, fuzzy, c-format
msgid "\"%s\" is not defined"
msgstr "`%.*s' is niet gedefinieerd"
# 'whitespace' -> 'witruimte'?
-#: cppexp.c:737 cppexp.c:772
+#: cppexp.c:714 cppexp.c:743
#, fuzzy, c-format
msgid "missing binary operator before token \"%s\""
msgstr "ontbrekende witruimte na getal `%s'"
-#: cppexp.c:756
-#, fuzzy, c-format
-msgid "invalid character '%c' in #if"
-msgstr "ongeldig karakter in naam van macro-parameter"
-
-#: cppexp.c:758
-#, fuzzy, c-format
-msgid "invalid character '\\%03o' in #if"
-msgstr "ongeldig karakter in naam van macro-parameter"
-
-#: cppexp.c:763
+#: cppexp.c:734
#, fuzzy, c-format
msgid "token \"%s\" is not valid in preprocessor expressions"
msgstr "stringconstantes zijn niet toegestaan in #if-expressies"
-#: cppexp.c:782
+#: cppexp.c:753
#, fuzzy
msgid "void expression between '(' and ')'"
msgstr "ongeldige expressie als operand"
-#: cppexp.c:785
+#: cppexp.c:756
#, fuzzy
msgid "#if with no expression"
msgstr "modi in %s expressie komen niet overeen"
-#: cppexp.c:787
+#: cppexp.c:758
#, fuzzy, c-format
msgid "operator '%s' has no right operand"
msgstr "iterator `%s' is van een niet-integraal type"
-#: cppexp.c:813
+#: cppexp.c:784
msgid " ':' without preceding '?'"
msgstr ""
-#: cppexp.c:840
+#: cppexp.c:811
#, fuzzy
msgid "unbalanced stack in #if"
msgstr "niet-gebalanceerde `#endif'"
-#: cppexp.c:862
+#: cppexp.c:830
#, fuzzy, c-format
msgid "impossible operator '%u'"
msgstr "incompatibele operands voor %s"
-#: cppexp.c:954
+#: cppexp.c:922
#, fuzzy
msgid "missing ')' in expression"
msgstr "ontbrekende index-expressie"
-#: cppexp.c:975
+#: cppexp.c:943
msgid "'?' without following ':'"
msgstr ""
-#: cppexp.c:985
+#: cppexp.c:953
msgid "integer overflow in preprocessor expression"
msgstr "integer-overflow in preprocessor-expressie"
-#: cppexp.c:990
+#: cppexp.c:958
#, fuzzy
msgid "missing '(' in expression"
msgstr "ontbrekende index-expressie"
-#: cppexp.c:1026
+#: cppexp.c:990
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr ""
-#: cppexp.c:1031
+#: cppexp.c:995
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr ""
-#: cppexp.c:1414
+#: cppexp.c:1352
#, fuzzy
msgid "comma operator in operand of #if"
msgstr "comma-operator in operand van `#if'"
-#: cppexp.c:1551
+#: cppexp.c:1483
msgid "division by zero in #if"
msgstr "deling door nul in `#if'"
-#: cppfiles.c:411
-#, fuzzy, c-format
-msgid "%s is too large"
-msgstr "bestand `%s' is te groot"
-
-#: cppfiles.c:447
-#, c-format
-msgid "%s is shorter than expected"
+#: cppfiles.c:370
+msgid "NULL directory in find_file"
msgstr ""
-#: cppfiles.c:461
-#, c-format
-msgid "%s is a block device"
+#: cppfiles.c:397
+msgid "one or more PCH files were found, but they were invalid"
msgstr ""
-#: cppfiles.c:594
-#, fuzzy, c-format
-msgid "no include path in which to find %s"
-msgstr "Geen include-pad waarin %s kan gevonden worden"
-
-#: cppfiles.c:668
-msgid "Multiple include guards may be useful for:\n"
+#: cppfiles.c:400
+msgid "use -Winvalid-pch for more information"
msgstr ""
-#: cppfiles.c:1014
-msgid "absolute file name in remap_filename"
+#: cppfiles.c:458
+#, c-format
+msgid "%s is a block device"
msgstr ""
-#: cppinit.c:224
+#: cppfiles.c:475
#, fuzzy, c-format
-msgid "ignoring nonexistent directory \"%s\"\n"
-msgstr "dubbele folder `%s' wordt genegeerd\n"
+msgid "%s is too large"
+msgstr "bestand `%s' is te groot"
-#: cppinit.c:231
-#, fuzzy, c-format
-msgid "%s: Not a directory"
-msgstr "%s: %s: Is geen folder"
+#: cppfiles.c:510
+#, c-format
+msgid "%s is shorter than expected"
+msgstr ""
-#: cppinit.c:287
+#: cppfiles.c:696
#, fuzzy, c-format
-msgid "ignoring duplicate directory \"%s\"\n"
-msgstr "dubbele folder `%s' wordt genegeerd\n"
+msgid "no include path in which to search for %s"
+msgstr "Geen include-pad waarin %s kan gevonden worden"
-#: cppinit.c:325
-msgid " as it is a non-system directory that duplicates a system directory\n"
+#: cppfiles.c:956
+msgid "Multiple include guards may be useful for:\n"
msgstr ""
-#: cppinit.c:891
+#: cppinit.c:387
#, fuzzy
msgid "cppchar_t must be an unsigned type"
msgstr "`defined' zonder een naam"
-#: cppinit.c:895
+#: cppinit.c:391
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr ""
-#: cppinit.c:901
+#: cppinit.c:398
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr ""
-#: cppinit.c:904
+#: cppinit.c:401
msgid "target char is less than 8 bits wide"
msgstr ""
-#: cppinit.c:908
+#: cppinit.c:405
msgid "target wchar_t is narrower than target char"
msgstr ""
-#: cppinit.c:912
+#: cppinit.c:409
msgid "target int is narrower than target char"
msgstr ""
-#: cppinit.c:916
+#: cppinit.c:414
msgid "CPP half-integer narrower than CPP character"
msgstr ""
-#: cppinit.c:920
+#: cppinit.c:418
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
msgstr ""
-#: cppinit.c:972
-msgid "#include \"...\" search starts here:\n"
-msgstr "Zoektocht voor #include \"...\" begint hier:\n"
-
-#: cppinit.c:976
-msgid "#include <...> search starts here:\n"
-msgstr "Zoektocht voor #include <...> begint hier:\n"
-
-#: cppinit.c:979
-msgid "End of search list.\n"
-msgstr "Einde van opzoekingslijst.\n"
-
-#: cppinit.c:1057
-msgid "<built-in>"
-msgstr ""
-
-#: cppinit.c:1059
-msgid "<command line>"
-msgstr ""
-
-# Assertie? Dat moet beter kunnen!
-#. Irix6 "cc -n32" and OSF4 cc have problems with char foo[] = ("string");
-#. I.e. a const string initializer with parens around it. That is
-#. what N_("string") resolves to, so we make no_* be macros instead.
-#: cppinit.c:1164
-#, fuzzy, c-format
-msgid "assertion missing after %s"
-msgstr "Assertie ontbreekt na -A optie"
-
-#: cppinit.c:1165
-#, fuzzy, c-format
-msgid "directory name missing after %s"
-msgstr "Foldernaam ontbreekt na `%s' optie"
-
-#: cppinit.c:1166
-#, fuzzy, c-format
-msgid "file name missing after %s"
-msgstr "Bestandsnaam ontbreekt na %s optie"
-
-#: cppinit.c:1167
-#, fuzzy, c-format
-msgid "macro name missing after %s"
-msgstr "Macro-naam ontbreekt na -U optie"
-
-#: cppinit.c:1168
-#, fuzzy, c-format
-msgid "path name missing after %s"
-msgstr "Bestandsnaam ontbreekt na %s optie"
-
-#: cppinit.c:1353
-msgid "-I- specified twice"
-msgstr "-I- twee keer opgegeven"
-
-#: cpplex.c:149
-#, c-format
-msgid "trigraph ??%c converted to %c"
-msgstr ""
-
-#: cpplex.c:157
-#, c-format
-msgid "trigraph ??%c ignored"
-msgstr ""
-
-#: cpplex.c:214
-msgid "backslash and newline separated by space"
-msgstr ""
-
-#: cpplex.c:221 cpptrad.c:158
-msgid "backslash-newline at end of file"
-msgstr ""
-
-#: cpplex.c:287 cpptrad.c:199
-#, fuzzy
-msgid "\"/*\" within comment"
-msgstr "`/*' binnen commentaar"
-
-#: cpplex.c:395
+#: cpplex.c:410
#, fuzzy
msgid "null character(s) ignored"
msgstr "%s bij nulkarakter"
-#: cpplex.c:402
-#, c-format
-msgid "%s in preprocessing directive"
-msgstr ""
+# Wat is een correcte vertaling voor 'identifier'? Ik kies voor 'naam'.
+#: cpplex.c:445
+#, fuzzy
+msgid "'$' in identifier or number"
+msgstr "`$' in naam"
-#: cpplex.c:475
+#: cpplex.c:492
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr ""
-#: cpplex.c:483
+#: cpplex.c:500
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr ""
-# Wat is een correcte vertaling voor 'identifier'? Ik kies voor 'naam'.
-#: cpplex.c:555
-#, fuzzy
-msgid "'$' character(s) in identifier or number"
-msgstr "`$' in naam"
-
-#: cpplex.c:698
-#, fuzzy, c-format
-msgid "missing terminating %c character"
-msgstr "niet-beëindigde string- of karakterconstante"
-
-#: cpplex.c:711
+#: cpplex.c:596
msgid "null character(s) preserved in literal"
msgstr ""
-#: cpplex.c:915 cpptrad.c:487
-#, fuzzy
-msgid "no newline at end of file"
-msgstr "niet-herkende tekst op einde van #line"
-
-#: cpplex.c:1092 cpptrad.c:213
+#: cpplex.c:916
msgid "unterminated comment"
msgstr "niet-beëindigde commentaar"
-#: cpplex.c:1103
+#: cpplex.c:927
msgid "C++ style comments are not allowed in ISO C90"
msgstr ""
-#: cpplex.c:1105
+#: cpplex.c:929
msgid "(this will be reported only once per input file)"
msgstr ""
-#: cpplex.c:1110
+#: cpplex.c:934
#, fuzzy
msgid "multi-line comment"
msgstr "'//'-commentaar op meerdere lijnen"
-#: cpplex.c:1425
-#, fuzzy, c-format
-msgid "unknown string token %s\n"
-msgstr "onbekende machine-modus `%s'"
-
-#: cpplex.c:1438
+#: cpplex.c:1198
#, fuzzy, c-format
msgid "unspellable token %s"
msgstr "kan bestand '%s' niet openen"
-#: cpplex.c:1695
-#, fuzzy, c-format
-msgid "the meaning of '\\%c' is different in traditional C"
-msgstr "de betekenis van `\\a' varieert naargelang -traditional al dan niet gebruikt wordt"
-
-#: cpplex.c:1701
-msgid "incomplete universal-character-name"
-msgstr ""
-
-#: cpplex.c:1715
-#, c-format
-msgid "non-hex digit '%c' in universal-character-name"
-msgstr ""
-
-#: cpplex.c:1723
-msgid "universal-character-name on EBCDIC target"
-msgstr ""
-
-#: cpplex.c:1737
-#, fuzzy
-msgid "universal-character-name out of range"
-msgstr "case-waarde buiten bereik"
-
-#: cpplex.c:1791
-#, fuzzy
-msgid "the meaning of '\\a' is different in traditional C"
-msgstr "de betekenis van `\\a' varieert naargelang -traditional al dan niet gebruikt wordt"
-
-#: cpplex.c:1798
-#, fuzzy, c-format
-msgid "non-ISO-standard escape sequence, '\\%c'"
-msgstr "niet-ANSI-standaard escape sequence `\\%c'"
-
-#: cpplex.c:1809
-#, fuzzy
-msgid "the meaning of '\\x' is different in traditional C"
-msgstr "de betekenis van `\\x' varieert naargelang -traditional al dan niet gebruikt wordt"
-
-#: cpplex.c:1828 f/lex.c:585
-msgid "\\x used with no following hex digits"
-msgstr "\\x gebruikt zonder daaropvolgende hexadecimale cijfers"
-
-#: cpplex.c:1833
-msgid "hex escape sequence out of range"
-msgstr "hexadecimale escape sequence buiten bereik"
-
-#: cpplex.c:1858
-msgid "octal escape sequence out of range"
-msgstr "octale escape sequence buiten bereik"
-
-#: cpplex.c:1874
-#, fuzzy, c-format
-msgid "unknown escape sequence '\\%c'"
-msgstr "onbekende escape sequence `\\%c'"
-
-#: cpplex.c:1877
-#, fuzzy, c-format
-msgid "unknown escape sequence: '\\%03o'"
-msgstr "onbekende escape sequence `\\%c'"
-
-# "escape-sequentie"?! Maar wat is er beter?
-#: cpplex.c:1882
-#, fuzzy
-msgid "escape sequence out of range for its type"
-msgstr "escape-sequentie buiten bereik voor karakter"
-
-#: cpplex.c:1973
-msgid "empty character constant"
-msgstr "lege karakterconstante"
-
-#: cpplex.c:1983
-#, fuzzy
-msgid "character constant too long for its type"
-msgstr "karakterconstante te lang"
-
-#: cpplex.c:1986
-msgid "multi-character character constant"
-msgstr "karakterconstante met meer dan één karakter"
-
# OK, OK... Dit hoort thuis in lang nl@be, niet nl
-#: cpplib.c:225
+#: cpplib.c:218
#, fuzzy, c-format
msgid "extra tokens at end of #%s directive"
msgstr "brol aan einde van `#line'-commando"
-#: cpplib.c:315
+#: cpplib.c:304
#, c-format
msgid "#%s is a GCC extension"
msgstr ""
-#: cpplib.c:327
+#: cpplib.c:316
msgid "suggest not using #elif in traditional C"
msgstr ""
-#: cpplib.c:330
+#: cpplib.c:319
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr ""
-#: cpplib.c:334
+#: cpplib.c:323
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr ""
-#: cpplib.c:358
+#: cpplib.c:345
msgid "embedding a directive within macro arguments is not portable"
msgstr ""
-#: cpplib.c:378
+#: cpplib.c:365
msgid "style of line directive is a GCC extension"
msgstr ""
-#: cpplib.c:428
+#: cpplib.c:415
#, fuzzy, c-format
msgid "invalid preprocessing directive #%s"
msgstr "ongeldig preprocessing-commando"
-#: cpplib.c:500
+#: cpplib.c:484
msgid "\"defined\" cannot be used as a macro name"
msgstr ""
-#: cpplib.c:506
+#: cpplib.c:490
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr ""
-#: cpplib.c:509
+#: cpplib.c:493
#, c-format
msgid "no macro name given in #%s directive"
msgstr ""
-#: cpplib.c:512
+#: cpplib.c:496
msgid "macro names must be identifiers"
msgstr ""
# is ongedefinieerd beter? ik denk van nie
-#: cpplib.c:552
+#: cpplib.c:537
#, fuzzy, c-format
msgid "undefining \"%s\""
msgstr "`%s' wordt geondefinieerd"
-#: cpplib.c:598
+#: cpplib.c:609
#, fuzzy
msgid "missing terminating > character"
msgstr "niet-beëindigde string- of karakterconstante"
-#: cpplib.c:637
+#: cpplib.c:662
#, fuzzy, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr "`#%s' verwacht \"BESTAND\" of <BESTAND>"
-#: cpplib.c:648
-#, fuzzy, c-format
-msgid "empty file name in #%s"
-msgstr "lege bestandsnaam in `#%s'"
-
-#: cpplib.c:667
-msgid "#include_next in primary source file"
-msgstr ""
-
-#: cpplib.c:674
-msgid "#import is obsolete, use an #ifndef wrapper in the header file"
+#: cpplib.c:685
+msgid "#include nested too deeply"
msgstr ""
-#: cpplib.c:682
-msgid "#include nested too deeply"
+#: cpplib.c:723
+msgid "#include_next in primary source file"
msgstr ""
-#: cpplib.c:739
+#: cpplib.c:749
#, fuzzy, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr "`#line'-commando in slecht formaat"
-#: cpplib.c:814
+#: cpplib.c:794
#, fuzzy, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "switch-waarde is geen integer"
-#: cpplib.c:820
+#: cpplib.c:800
#, fuzzy
msgid "line number out of range"
msgstr "case-waarde buiten bereik"
-#: cpplib.c:831 cpplib.c:902
+#: cpplib.c:812 cpplib.c:885
#, fuzzy, c-format
msgid "\"%s\" is not a valid filename"
msgstr "-fPIC is niet geldig met -mcoff"
-#: cpplib.c:866
+#: cpplib.c:847
#, fuzzy, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "switch-waarde is geen integer"
-#: cpplib.c:973
+#: cpplib.c:947
#, fuzzy
msgid "invalid #ident directive"
msgstr "`#line'-commando in slecht formaat"
-#: cpplib.c:1061
+#: cpplib.c:1027
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr ""
-#: cpplib.c:1064
+#: cpplib.c:1030
#, c-format
msgid "#pragma %s %s is already registered"
msgstr ""
-#: cpplib.c:1067
+#: cpplib.c:1033
#, c-format
msgid "#pragma %s is already registered"
msgstr ""
-#: cpplib.c:1143
-#, fuzzy
-msgid "#pragma once is obsolete"
-msgstr "`#pragma once' is verouderd"
-
-#: cpplib.c:1146
+#: cpplib.c:1178
#, fuzzy
msgid "#pragma once in main file"
msgstr "`#pragma once' is verouderd"
-#: cpplib.c:1170
+#: cpplib.c:1201
#, fuzzy
msgid "invalid #pragma GCC poison directive"
msgstr "ongeldig preprocessing-commando"
-#: cpplib.c:1179
+#: cpplib.c:1210
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr ""
-#: cpplib.c:1201
+#: cpplib.c:1231
msgid "#pragma system_header ignored outside include file"
msgstr ""
-#: cpplib.c:1226
+#: cpplib.c:1255
#, fuzzy, c-format
-msgid "cannot find source %s"
+msgid "cannot find source file %s"
msgstr "[kan %s niet vinden]"
-#: cpplib.c:1230
+#: cpplib.c:1259
#, c-format
msgid "current file is older than %s"
msgstr ""
-#: cpplib.c:1346
+#: cpplib.c:1373
#, fuzzy
msgid "_Pragma takes a parenthesized string literal"
msgstr "Onbeëindigde stringconstante"
-#: cpplib.c:1429
+#: cpplib.c:1451
msgid "#else without #if"
msgstr ""
-#: cpplib.c:1434
+#: cpplib.c:1456
#, fuzzy
msgid "#else after #else"
msgstr "`#else' na `#else'"
-#: cpplib.c:1436 cpplib.c:1470
-msgid "the conditional began here"
-msgstr ""
-
-#: cpplib.c:1463
+#: cpplib.c:1484
msgid "#elif without #if"
msgstr ""
-#: cpplib.c:1468
+#: cpplib.c:1489
#, fuzzy
msgid "#elif after #else"
msgstr "`#elif' na `#else'"
-#: cpplib.c:1499
+#: cpplib.c:1519
msgid "#endif without #if"
msgstr ""
-#: cpplib.c:1582
+#: cpplib.c:1596
msgid "missing '(' after predicate"
msgstr ""
-#: cpplib.c:1597
+#: cpplib.c:1611
msgid "missing ')' to complete answer"
msgstr ""
-#: cpplib.c:1617
+#: cpplib.c:1631
msgid "predicate's answer is empty"
msgstr ""
-#: cpplib.c:1647
+#: cpplib.c:1658
msgid "assertion without predicate"
msgstr ""
-#: cpplib.c:1649
+#: cpplib.c:1660
#, fuzzy
msgid "predicate must be an identifier"
msgstr "`defined' zonder een naam"
-#: cpplib.c:1738
+#: cpplib.c:1744
#, c-format
msgid "\"%s\" re-asserted"
msgstr ""
-#: cpplib.c:1968
-#, fuzzy, c-format
-msgid "unterminated #%s"
-msgstr "niet-beëindigde commentaar"
-
-#: cppmacro.c:94
-#, fuzzy, c-format
-msgid "macro \"%s\" is not used"
-msgstr "`%.*s' is niet gedefinieerd"
-
-#: cppmacro.c:139 cppmacro.c:294
+#: cppmacro.c:125 cppmacro.c:280
#, fuzzy, c-format
msgid "invalid built-in macro \"%s\""
msgstr "ongeldige macronaam"
-#: cppmacro.c:234
+#: cppmacro.c:221
msgid "could not determine date and time"
msgstr ""
-#: cppmacro.c:407
+#: cppmacro.c:393
msgid "invalid string literal, ignoring final '\\'"
msgstr ""
-#: cppmacro.c:504
+#: cppmacro.c:476
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr ""
-#: cppmacro.c:546
+#: cppmacro.c:514
#, fuzzy
msgid "ISO C99 requires rest arguments to be used"
msgstr "ANSI C heeft een benoemd argument nodig vóór `...'"
-#: cppmacro.c:551
+#: cppmacro.c:519
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr ""
-#: cppmacro.c:556
+#: cppmacro.c:524
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr ""
-#: cppmacro.c:669 cpptrad.c:774
+#: cppmacro.c:635
#, fuzzy, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr "niet-beëindigde parameterlijst in `#define'"
-#: cppmacro.c:776
+#: cppmacro.c:738
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr ""
-#: cppmacro.c:1314
+#: cppmacro.c:1241
#, fuzzy, c-format
msgid "duplicate macro parameter \"%s\""
msgstr "herhaald lid `%s'"
-#: cppmacro.c:1351
+#: cppmacro.c:1286
#, fuzzy, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr "ongeldig karakter in naam van macro-parameter"
-#: cppmacro.c:1359
+#: cppmacro.c:1294
#, fuzzy
msgid "macro parameters must be comma-separated"
msgstr "parameter 2 moet een locatie zijn"
-#: cppmacro.c:1376
+#: cppmacro.c:1311
#, fuzzy
msgid "parameter name missing"
msgstr "parameternaam weggelaten"
-#: cppmacro.c:1391
+#: cppmacro.c:1326
msgid "anonymous variadic macros were introduced in C99"
msgstr ""
-#: cppmacro.c:1395
+#: cppmacro.c:1330
#, fuzzy
msgid "ISO C does not permit named variadic macros"
msgstr "ANSI C staat het gebruik van `varargs.h' niet toe"
-#: cppmacro.c:1404
+#: cppmacro.c:1339
#, fuzzy
msgid "missing ')' in macro parameter list"
msgstr "parameternaam ontbreekt uit parameterlijst"
-#: cppmacro.c:1472
+#: cppmacro.c:1402
msgid "ISO C requires whitespace after the macro name"
msgstr ""
-#: cppmacro.c:1500
+#: cppmacro.c:1430
#, fuzzy
msgid "'#' is not followed by a macro parameter"
msgstr "`#' operator wordt niet gevolgd door een naam van een macro-argument"
-#: cppmacro.c:1519
+#: cppmacro.c:1449
msgid "'##' cannot appear at either end of a macro expansion"
msgstr ""
-#: cppmacro.c:1601
-#, fuzzy, c-format
-msgid "\"%s\" redefined"
-msgstr "`%.*s' opnieuw gedefinieerd"
-
-#: cppmacro.c:1606
-#, fuzzy
-msgid "this is the location of the previous definition"
-msgstr "dit is een eerdere declaratie"
-
-#: cppmacro.c:1657
+#: cppmacro.c:1588
#, fuzzy, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr "macro-argument `%.*s' zou met -traditional string gemaakt worden."
-#: cppmacro.c:1682
+#: cppmacro.c:1611
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr ""
-#: cppspec.c:109
-#, c-format
-msgid "\"%s\" is not a valid option to the preprocessor"
+#: cpppch.c:84 cpppch.c:332 cpppch.c:356 cpppch.c:365
+msgid "while writing precompiled header"
msgstr ""
-#: cppspec.c:133
-#, fuzzy
-msgid "too many input files"
-msgstr "Geen invoerbestanden"
-
-#: cpptrad.c:841
+#: cpppch.c:463
#, fuzzy, c-format
-msgid "detected recursion whilst expanding macro \"%s\""
-msgstr "niet-beëindigde parameterlijst in `#define'"
+msgid "%s: not used because `%.*s' not defined"
+msgstr "label `%s' gebruikt maar niet gedefinieerd"
-#: cse.c:7195
+#: cpppch.c:475
#, c-format
-msgid ";; Processing block from %d to %d, %d sets.\n"
-msgstr ""
-
-#: diagnostic.c:714
-msgid "((anonymous))"
+msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
msgstr ""
-#: diagnostic.c:928
+#: cpppch.c:516
#, c-format
-msgid "%s: warnings being treated as errors\n"
+msgid "%s: not used because `%s' is defined"
msgstr ""
-#: diagnostic.c:963
-#, c-format
-msgid "%s: %s: "
+#: cpppch.c:529 cpppch.c:715
+msgid "while reading precompiled header"
msgstr ""
-#: diagnostic.c:1054
+#: cppspec.c:106
#, c-format
-msgid "%s "
+msgid "\"%s\" is not a valid option to the preprocessor"
msgstr ""
-#: diagnostic.c:1056
-#, fuzzy, c-format
-msgid " %s"
-msgstr "%s voor `%s'"
-
-#: diagnostic.c:1078
-msgid "At top level:"
-msgstr ""
+#: cppspec.c:128
+#, fuzzy
+msgid "too many input files"
+msgstr "Geen invoerbestanden"
-#: diagnostic.c:1083
+#: cpptrad.c:744
#, fuzzy, c-format
-msgid "In member function `%s':"
-msgstr "bibliotheekfunctie `%s' wordt verborgen"
+msgid "detected recursion whilst expanding macro \"%s\""
+msgstr "niet-beëindigde parameterlijst in `#define'"
-#: diagnostic.c:1087
-#, fuzzy, c-format
-msgid "In function `%s':"
-msgstr "Ongeldige optie `%s'"
+#: cpptrad.c:911
+#, fuzzy
+msgid "syntax error in macro parameter list"
+msgstr "ongeldig karakter in naam van macro-parameter"
-#: diagnostic.c:1175
-msgid "compilation terminated.\n"
+#: cse.c:7040
+#, c-format
+msgid ";; Processing block from %d to %d, %d sets.\n"
msgstr ""
-#: diagnostic.c:1193
+#: diagnostic.c:209
#, c-format
msgid "%s:%d: confused by earlier errors, bailing out\n"
msgstr ""
-#: diagnostic.c:1208 diagnostic.c:1316
-#, c-format
-msgid ""
-"Please submit a full bug report,\n"
-"with preprocessed source if appropriate.\n"
-"See %s for instructions.\n"
+#: diagnostic.c:281
+msgid "compilation terminated.\n"
msgstr ""
-#: diagnostic.c:1314
+#: diagnostic.c:572
#, fuzzy
msgid "Internal compiler error: Error reporting routines re-entered.\n"
msgstr "Interne compilerfout: programma %s kreeg fataal signaal %d"
-#: diagnostic.c:1376
+#: diagnostic.c:584
#, fuzzy, c-format
msgid "in %s, at %s:%d"
msgstr "%s voor `%s'"
-#: diagnostic.c:1397
-#, c-format
-msgid "In file included from %s:%d"
-msgstr ""
-
-#: diagnostic.c:1400
-#, c-format
-msgid ""
-",\n"
-" from %s:%d"
-msgstr ""
-
-#: diagnostic.c:1401
-msgid ":\n"
-msgstr ""
-
-#: diagnostic.c:1445 diagnostic.c:1462
-#, c-format
-msgid "`%s' is deprecated (declared at %s:%d)"
-msgstr ""
-
-#: diagnostic.c:1465
-#, fuzzy, c-format
-msgid "`%s' is deprecated"
-msgstr "`%.*s' is niet gedefinieerd"
-
-#: diagnostic.c:1468
-#, c-format
-msgid "type is deprecated (declared at %s:%d)"
-msgstr ""
-
-#: diagnostic.c:1471
-msgid "type is deprecated"
-msgstr ""
-
-#: dominance.c:728
+#: dominance.c:763
#, c-format
msgid "dominator of %d should be %d, not %d"
msgstr ""
-#: dwarf2out.c:3135
+#: dwarf2out.c:3228
#, c-format
msgid "DW_LOC_OP %s not implemented\n"
msgstr ""
-#: dwarfout.c:2066
-#, c-format
-msgid "internal regno botch: `%s' has regno = %d\n"
-msgstr ""
-
-#: dwarfout.c:6181
-msgid "support for the DWARF1 debugging format is deprecated"
-msgstr ""
-
-#: dwarfout.c:6278
-msgid "can't get current directory"
-msgstr ""
-
#: emit-rtl.c:1155
msgid "can't access real part of complex value in hard register"
msgstr ""
-#: emit-rtl.c:1177
+#: emit-rtl.c:1182
msgid "can't access imaginary part of complex value in hard register"
msgstr ""
-#: emit-rtl.c:3402
+#: emit-rtl.c:2263
+#, fuzzy
+msgid "Invalid rtl sharing found in the insn"
+msgstr "ongeldige operand voor %s-code"
+
+#: emit-rtl.c:2265
+msgid "Shared rtx"
+msgstr ""
+
+#: emit-rtl.c:3400
msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
msgstr ""
-#: errors.c:136
+#: errors.c:129
#, c-format
msgid "abort in %s, at %s:%d"
msgstr ""
-#: except.c:369
+#: except.c:357
msgid "exception handling disabled, use -fexceptions to enable"
msgstr ""
-#: except.c:2994
+#: except.c:2942
msgid "argument of `__builtin_eh_return_regno' must be constant"
msgstr ""
-#: except.c:3137
+#: except.c:3073
#, fuzzy
msgid "__builtin_eh_return not supported on this target"
msgstr "instructie-scheduling wordt niet ondersteund op deze doelmachine"
-#: explow.c:1408
+#: explow.c:1327
#, fuzzy
msgid "stack limits not supported on this target"
msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem"
-#: expr.c:3355
+#: expr.c:2965
#, fuzzy
msgid "function using short complex types cannot be inline"
msgstr "de terugkeerwaarde van een functie kan geen funtie zijn"
-#: expr.c:6272 expr.c:6281 expr.c:6290 expr.c:6295 expr.c:6604 expr.c:6620
-msgid "unsupported wide integer operation"
-msgstr ""
-
-#: expr.c:6669
-#, c-format
-msgid "prior parameter's size depends on `%s'"
+#: expr.c:6311
+msgid "%Jprior parameter's size depends on '%D'"
msgstr ""
-#: expr.c:7005
+#: expr.c:6678
msgid "returned value in block_exit_expr"
msgstr ""
#. We can't make a bitwise copy of this object, so fail.
-#: expr.c:9202
+#: expr.c:8823
#, fuzzy
msgid "cannot take the address of an unaligned member"
msgstr "kan adres van bitveld `%s' niet nemen"
-#: final.c:1342
+#: final.c:1058
#, fuzzy
msgid "negative insn length"
msgstr "Onbeëindigde stringconstante"
-#: final.c:2793
+#: final.c:2429
msgid "could not split insn"
msgstr ""
# (%s = 'parameter <NUM>')
-#: final.c:3141
+#: final.c:2771
#, fuzzy
msgid "invalid `asm': "
msgstr "ongeldige %s"
-#: final.c:3328
+#: final.c:2954
msgid "nested assembly dialect alternatives"
msgstr ""
-#: final.c:3345 final.c:3357
+#: final.c:2971 final.c:2983
#, fuzzy
msgid "unterminated assembly dialect alternative"
msgstr "Onbeëindigde stringconstante"
-#: final.c:3401
+#: final.c:3027
#, fuzzy, c-format
msgid "operand number missing after %%-letter"
msgstr "Bestandsnaam ontbreekt na %s optie"
-#: final.c:3404 final.c:3443
+#: final.c:3030 final.c:3069
msgid "operand number out of range"
msgstr ""
-#: final.c:3462
+#: final.c:3088
#, c-format
msgid "invalid %%-code"
msgstr ""
-#: final.c:3493
+#: final.c:3118
#, fuzzy, c-format
msgid "`%%l' operand isn't a label"
msgstr "operand `%d' is geen register"
#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
-#: final.c:3600 vmsdbgout.c:466 config/i386/i386.c:6314
-#: config/pdp11/pdp11.c:1573
+#. We can't handle floating point constants; PRINT_OPERAND must
+#. handle them.
+#. We can't handle floating point constants;
+#. PRINT_OPERAND must handle them.
+#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6739
+#: config/pdp11/pdp11.c:1646
msgid "floating constant misused"
msgstr "floating-point constante verkeerd gebruikt"
-#: final.c:3656 vmsdbgout.c:523 config/i386/i386.c:6392
-#: config/pdp11/pdp11.c:1620
+#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6817
+#: config/pdp11/pdp11.c:1693
msgid "invalid expression as operand"
msgstr "ongeldige expressie als operand"
-#: flow.c:352
+#: flow.c:329
msgid "function might be possible candidate for attribute `noreturn'"
msgstr "deze functie is een mogelijke kandidaat voor het `noreturn' attribuut"
-#: flow.c:357
+#: flow.c:334
msgid "`noreturn' function does return"
msgstr "`noreturn' functie keert terug"
-#: flow.c:378
+#: flow.c:355
msgid "control reaches end of non-void function"
msgstr "einde van niet-void functie werd bereikt zonder teruggeefwaarde"
-#: flow.c:1642
+#: flow.c:1582
msgid "Attempt to delete prologue/epilogue insn:"
msgstr ""
-#: fold-const.c:2546 fold-const.c:2559
+#: fold-const.c:2759 fold-const.c:2772
#, fuzzy, c-format
msgid "comparison is always %d due to width of bit-field"
msgstr "vergelijking is altijd waar omwille van het beperkte bereik van het datatype"
-#: fold-const.c:3753 fold-const.c:3770
+#: fold-const.c:3967 fold-const.c:3984
#, c-format
msgid "comparison is always %d"
msgstr ""
-#: fold-const.c:3901
+#: fold-const.c:4115
msgid "`or' of unmatched not-equal tests is always 1"
msgstr ""
-#: fold-const.c:3906
+#: fold-const.c:4120
msgid "`and' of mutually exclusive equal-tests is always 0"
msgstr ""
-#: function.c:884 varasm.c:1503
-#, c-format
-msgid "size of variable `%s' is too large"
+#: fold-const.c:8340
+msgid "fold check: original tree changed by fold"
+msgstr ""
+
+#: function.c:884 varasm.c:1408
+#, fuzzy
+msgid "%Jsize of variable '%D' is too large"
msgstr "variabele `%s' is te groot"
-#: function.c:3772
+#: function.c:3737
#, fuzzy
msgid "impossible constraint in `asm'"
msgstr "incompatibele operands voor %s"
-#: function.c:5527
-#, c-format
-msgid "`%s' might be used uninitialized in this function"
+#: function.c:5697
+msgid "%J'%D' might be used uninitialized in this function"
msgstr ""
-#: function.c:5534
-#, c-format
-msgid "variable `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5704
+msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'"
msgstr ""
-#: function.c:5553
-#, c-format
-msgid "argument `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5723
+msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'"
msgstr ""
-#: function.c:6420
+#: function.c:6497
msgid "function returns an aggregate"
msgstr ""
-#: function.c:6925
-#, c-format
-msgid "unused parameter `%s'"
-msgstr ""
+#: function.c:6980
+#, fuzzy
+msgid "%Junused parameter '%D'"
+msgstr "ongeldige macronaam `%.*s'"
-#: gcc.c:1107
+#: gcc.c:1191
#, c-format
msgid "ambiguous abbreviation %s"
msgstr ""
-#: gcc.c:1134
+#: gcc.c:1218
#, fuzzy, c-format
msgid "incomplete `%s' option"
msgstr "Bestandsnaam ontbreekt na `%s' optie"
-#: gcc.c:1145
+#: gcc.c:1229
#, fuzzy, c-format
msgid "missing argument to `%s' option"
msgstr "Bestandsnaam ontbreekt na `%s' optie"
-#: gcc.c:1158
+#: gcc.c:1242
#, fuzzy, c-format
msgid "extraneous argument to `%s' option"
msgstr "teveel argumenten voor functie"
-#: gcc.c:1486
+#: gcc.c:1563
msgid "Using built-in specs.\n"
msgstr ""
-#: gcc.c:1667
+#: gcc.c:1748
#, c-format
msgid ""
"Setting spec %s to '%s'\n"
"\n"
msgstr ""
-#: gcc.c:1774
+#: gcc.c:1850
#, c-format
msgid "Reading specs from %s\n"
msgstr ""
-#: gcc.c:1872 gcc.c:1891
+#: gcc.c:1946 gcc.c:1965
#, c-format
msgid "specs %%include syntax malformed after %ld characters"
msgstr ""
-#: gcc.c:1899
+#: gcc.c:1973
#, c-format
msgid "could not find specs file %s\n"
msgstr ""
-#: gcc.c:1916 gcc.c:1924 gcc.c:1933 gcc.c:1942
+#: gcc.c:1990 gcc.c:1998 gcc.c:2007 gcc.c:2016
#, c-format
msgid "specs %%rename syntax malformed after %ld characters"
msgstr ""
-#: gcc.c:1951
+#: gcc.c:2025
#, c-format
msgid "specs %s spec was not found to be renamed"
msgstr ""
-#: gcc.c:1958
+#: gcc.c:2032
#, c-format
msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
msgstr ""
-#: gcc.c:1963
+#: gcc.c:2037
#, c-format
msgid "rename spec %s to %s\n"
msgstr ""
-#: gcc.c:1965
+#: gcc.c:2039
#, c-format
msgid ""
"spec is '%s'\n"
"\n"
msgstr ""
-#: gcc.c:1978
+#: gcc.c:2052
#, c-format
msgid "specs unknown %% command after %ld characters"
msgstr ""
-#: gcc.c:1989 gcc.c:2002
+#: gcc.c:2063 gcc.c:2076
#, c-format
msgid "specs file malformed after %ld characters"
msgstr ""
-#: gcc.c:2056
+#: gcc.c:2129
msgid "spec file has no spec for linking"
msgstr ""
-#: gcc.c:2554
+#: gcc.c:2634
msgid "-pipe not supported"
msgstr ""
-#: gcc.c:2609
+#: gcc.c:2696
msgid ""
"\n"
"Go ahead? (y or n) "
msgstr ""
-#: gcc.c:2735
+#: gcc.c:2822
#, c-format
msgid ""
"Internal error: %s (program %s)\n"
@@ -5472,151 +5374,159 @@ msgid ""
"See %s for instructions."
msgstr ""
-#: gcc.c:2753
+#: gcc.c:2840
#, c-format
msgid "# %s %.2f %.2f\n"
msgstr ""
-#: gcc.c:2883
+#: gcc.c:2973
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr ""
-#: gcc.c:2884
+#: gcc.c:2974
msgid "Options:\n"
msgstr ""
-#: gcc.c:2886
+#: gcc.c:2976
msgid " -pass-exit-codes Exit with highest error code from a phase\n"
msgstr ""
-#: gcc.c:2887
+#: gcc.c:2977
msgid " --help Display this information\n"
msgstr ""
-#: gcc.c:2888
+#: gcc.c:2978
msgid " --target-help Display target specific command line options\n"
msgstr ""
-#: gcc.c:2890
+#: gcc.c:2980
msgid " (Use '-v --help' to display command line options of sub-processes)\n"
msgstr ""
-#: gcc.c:2891
+#: gcc.c:2981
msgid " -dumpspecs Display all of the built in spec strings\n"
msgstr ""
-#: gcc.c:2892
+#: gcc.c:2982
msgid " -dumpversion Display the version of the compiler\n"
msgstr ""
-#: gcc.c:2893
+#: gcc.c:2983
msgid " -dumpmachine Display the compiler's target processor\n"
msgstr ""
-#: gcc.c:2894
+#: gcc.c:2984
msgid " -print-search-dirs Display the directories in the compiler's search path\n"
msgstr ""
-#: gcc.c:2895
+#: gcc.c:2985
msgid " -print-libgcc-file-name Display the name of the compiler's companion library\n"
msgstr ""
-#: gcc.c:2896
+#: gcc.c:2986
msgid " -print-file-name=<lib> Display the full path to library <lib>\n"
msgstr ""
-#: gcc.c:2897
+#: gcc.c:2987
msgid " -print-prog-name=<prog> Display the full path to compiler component <prog>\n"
msgstr ""
-#: gcc.c:2898
+#: gcc.c:2988
msgid " -print-multi-directory Display the root directory for versions of libgcc\n"
msgstr ""
-#: gcc.c:2899
+#: gcc.c:2989
msgid ""
" -print-multi-lib Display the mapping between command line options and\n"
" multiple library search directories\n"
msgstr ""
-#: gcc.c:2902
+#: gcc.c:2992
msgid " -print-multi-os-directory Display the relative path to OS libraries\n"
msgstr ""
-#: gcc.c:2903
+#: gcc.c:2993
msgid " -Wa,<options> Pass comma-separated <options> on to the assembler\n"
msgstr ""
-#: gcc.c:2904
+#: gcc.c:2994
msgid " -Wp,<options> Pass comma-separated <options> on to the preprocessor\n"
msgstr ""
-#: gcc.c:2905
+#: gcc.c:2995
msgid " -Wl,<options> Pass comma-separated <options> on to the linker\n"
msgstr ""
-#: gcc.c:2906
+#: gcc.c:2996
+msgid " -Xassembler <arg> Pass <arg> on to the assembler\n"
+msgstr ""
+
+#: gcc.c:2997
+msgid " -Xpreprocessor <arg> Pass <arg> on to the preprocessor\n"
+msgstr ""
+
+#: gcc.c:2998
msgid " -Xlinker <arg> Pass <arg> on to the linker\n"
msgstr ""
-#: gcc.c:2907
+#: gcc.c:2999
msgid " -save-temps Do not delete intermediate files\n"
msgstr ""
-#: gcc.c:2908
+#: gcc.c:3000
msgid " -pipe Use pipes rather than intermediate files\n"
msgstr ""
-#: gcc.c:2909
+#: gcc.c:3001
msgid " -time Time the execution of each subprocess\n"
msgstr ""
-#: gcc.c:2910
+#: gcc.c:3002
msgid " -specs=<file> Override built-in specs with the contents of <file>\n"
msgstr ""
-#: gcc.c:2911
+#: gcc.c:3003
msgid " -std=<standard> Assume that the input sources are for <standard>\n"
msgstr ""
-#: gcc.c:2912
+#: gcc.c:3004
msgid " -B <directory> Add <directory> to the compiler's search paths\n"
msgstr ""
-#: gcc.c:2913
+#: gcc.c:3005
msgid " -b <machine> Run gcc for target <machine>, if installed\n"
msgstr ""
-#: gcc.c:2914
+#: gcc.c:3006
msgid " -V <version> Run gcc version number <version>, if installed\n"
msgstr ""
-#: gcc.c:2915
+#: gcc.c:3007
msgid " -v Display the programs invoked by the compiler\n"
msgstr ""
-#: gcc.c:2916
+#: gcc.c:3008
msgid " -### Like -v but options quoted and commands not executed\n"
msgstr ""
-#: gcc.c:2917
+#: gcc.c:3009
msgid " -E Preprocess only; do not compile, assemble or link\n"
msgstr ""
-#: gcc.c:2918
+#: gcc.c:3010
msgid " -S Compile only; do not assemble or link\n"
msgstr ""
-#: gcc.c:2919
+#: gcc.c:3011
msgid " -c Compile and assemble, but do not link\n"
msgstr ""
-#: gcc.c:2920
+#: gcc.c:3012
msgid " -o <file> Place the output into <file>\n"
msgstr ""
-#: gcc.c:2921
+#: gcc.c:3013
msgid ""
" -x <language> Specify the language of the following input files\n"
" Permissible languages include: c c++ assembler none\n"
@@ -5624,7 +5534,7 @@ msgid ""
" guessing the language based on the file's extension\n"
msgstr ""
-#: gcc.c:2928
+#: gcc.c:3020
#, c-format
msgid ""
"\n"
@@ -5633,90 +5543,92 @@ msgid ""
" other options on to these processes the -W<letter> options must be used.\n"
msgstr ""
-#: gcc.c:3063
+#: gcc.c:3141
#, fuzzy, c-format
msgid "`-%c' option must have argument"
msgstr "`%s' neemt ofwel geen, ofwel twee argumenten"
-#: gcc.c:3085
+#: gcc.c:3163
#, c-format
msgid "couldn't run `%s': %s"
msgstr ""
#. translate_options () has turned --version into -fversion.
-#: gcc.c:3262
+#: gcc.c:3349
#, c-format
msgid "%s (GCC) %s\n"
msgstr ""
-#: gcc.c:3263
-msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
-msgstr ""
-
-#: gcc.c:3265 gcov.c:364
+#: gcc.c:3352
msgid ""
"This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
"\n"
msgstr ""
-#: gcc.c:3366
+#: gcc.c:3453
msgid "argument to `-Xlinker' is missing"
msgstr ""
-#: gcc.c:3374
+#: gcc.c:3461
+#, fuzzy
+msgid "argument to `-Xpreprocessor' is missing"
+msgstr "het argument van `asm' is geen constante string"
+
+#: gcc.c:3468
+#, fuzzy
+msgid "argument to `-Xassembler' is missing"
+msgstr "het argument van `asm' is geen constante string"
+
+#: gcc.c:3475
#, fuzzy
msgid "argument to `-l' is missing"
msgstr "het argument van `asm' is geen constante string"
-#: gcc.c:3391
+#: gcc.c:3491
msgid "argument to `-specs' is missing"
msgstr ""
-#: gcc.c:3406
+#: gcc.c:3505
msgid "argument to `-specs=' is missing"
msgstr ""
-#: gcc.c:3436
+#: gcc.c:3542
#, c-format
msgid "`-%c' must come at the start of the command line"
msgstr ""
-#: gcc.c:3445
+#: gcc.c:3551
msgid "argument to `-B' is missing"
msgstr ""
-#: gcc.c:3618
-msgid "cannot specify -o with -c or -S and multiple compilations"
-msgstr ""
-
-#: gcc.c:3791
+#: gcc.c:3728
msgid "warning: -pipe ignored because -save-temps specified"
msgstr ""
-#: gcc.c:3795
+#: gcc.c:3732
msgid "warning: -pipe ignored because -time specified"
msgstr ""
-#: gcc.c:3807
+#: gcc.c:3944
msgid "argument to `-x' is missing"
msgstr ""
-#: gcc.c:3835
+#: gcc.c:3972
#, c-format
msgid "argument to `-%s' is missing"
msgstr ""
-#: gcc.c:3896
+#: gcc.c:4033
#, c-format
msgid "warning: `-x %s' after last input file has no effect"
msgstr ""
-#: gcc.c:4241
+#: gcc.c:4434
msgid "invalid specification! Bug in cc"
msgstr ""
-#: gcc.c:4395
+#: gcc.c:4588
#, c-format
msgid "%s\n"
msgstr ""
@@ -5724,183 +5636,201 @@ msgstr ""
#. Catch the case where a spec string contains something like
#. '%{foo:%*}'. ie there is no * in the pattern on the left
#. hand side of the :.
-#: gcc.c:4955
+#: gcc.c:5092
#, c-format
msgid "spec failure: '%%*' has not been initialized by pattern match"
msgstr ""
-#: gcc.c:4964
+#: gcc.c:5101
#, fuzzy, c-format
msgid "warning: use of obsolete %%[ operator in specs"
msgstr "Let Op: verouderde operator %%[ gebruikt in specs"
-#: gcc.c:4982
+#: gcc.c:5119
#, c-format
msgid "Processing spec %c%s%c, which is '%s'\n"
msgstr ""
-#: gcc.c:5107
+#: gcc.c:5182
#, c-format
msgid "spec failure: unrecognized spec option '%c'"
msgstr ""
-#: gcc.c:5188
+#: gcc.c:5261
#, fuzzy, c-format
msgid "unknown spec function `%s'"
msgstr "Ongeldige optie `%s'"
-#: gcc.c:5207
+#: gcc.c:5280
#, fuzzy, c-format
msgid "error in args to spec function `%s'"
msgstr "teveel argumenten voor functie `%s'"
-#: gcc.c:5256
+#: gcc.c:5328
#, fuzzy
msgid "malformed spec function name"
msgstr "cast geeft functie-type op"
#. )
-#: gcc.c:5259
+#: gcc.c:5331
#, fuzzy
msgid "no arguments for spec function"
msgstr "te weinig argument voor functie"
-#: gcc.c:5278
+#: gcc.c:5350
msgid "malformed spec function arguments"
msgstr ""
-#: gcc.c:5386
-msgid "mismatched braces in specs"
+#: gcc.c:6076
+msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC."
+msgstr ""
+
+#: gcc.c:6086
+msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC."
msgstr ""
-#: gcc.c:6081
+#: gcc.c:6179
#, c-format
msgid "unrecognized option `-%s'"
msgstr ""
-#: gcc.c:6087
+#: gcc.c:6185
#, c-format
msgid "install: %s%s\n"
msgstr ""
-#: gcc.c:6088
+#: gcc.c:6186
#, c-format
msgid "programs: %s\n"
msgstr ""
-#: gcc.c:6089
+#: gcc.c:6187
#, c-format
msgid "libraries: %s\n"
msgstr ""
-#: gcc.c:6146
+#: gcc.c:6244
+#, c-format
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
msgstr ""
-#: gcc.c:6162
+#: gcc.c:6260
#, c-format
msgid "Configured with: %s\n"
msgstr ""
-#: gcc.c:6176
+#: gcc.c:6274
#, c-format
msgid "Thread model: %s\n"
msgstr ""
-#: gcc.c:6187
+#: gcc.c:6285
#, c-format
msgid "gcc version %s\n"
msgstr "gcc versie %s\n"
-#: gcc.c:6189
+#: gcc.c:6287
#, c-format
msgid "gcc driver version %s executing gcc version %s\n"
msgstr "gcc stuurprogramma versie %s voert gcc versie %s uit\n"
-#: gcc.c:6197
+#: gcc.c:6295
#, fuzzy
msgid "no input files"
msgstr "Geen invoerbestanden"
-#: gcc.c:6235
-#, c-format
-msgid "%s: %s compiler not installed on this system"
-msgstr "%s: %s compiler niet geïnstalleerd op dit systeem"
-
-#: gcc.c:6310
+#: gcc.c:6317 gcc.c:6436
#, c-format
msgid "%s: linker input file unused because linking not done"
msgstr ""
-#: gcc.c:6353
+#: gcc.c:6320
+#, fuzzy
+msgid "cannot specify -o with -c or -S and multiple languages"
+msgstr "-EB en -EL mogen niet samen gebruikt worden"
+
+#: gcc.c:6355
+#, c-format
+msgid "%s: %s compiler not installed on this system"
+msgstr "%s: %s compiler niet geïnstalleerd op dit systeem"
+
+#: gcc.c:6476
#, c-format
msgid "language %s not recognized"
msgstr "taal %s niet herkend"
-#: gcc.c:6456
+#: gcc.c:6573
msgid "internal gcc abort"
msgstr ""
-#: gcov.c:325
+#: gcov.c:384
#, fuzzy
msgid "Internal gcov abort.\n"
msgstr "Interne abort van gcc."
-#: gcov.c:338
+#: gcov.c:397
msgid ""
"Usage: gcov [OPTION]... SOURCEFILE\n"
"\n"
msgstr ""
-#: gcov.c:339
+#: gcov.c:398
msgid ""
"Print code coverage information.\n"
"\n"
msgstr ""
-#: gcov.c:340
+#: gcov.c:399
msgid " -h, --help Print this help, then exit\n"
msgstr ""
-#: gcov.c:341
+#: gcov.c:400
msgid " -v, --version Print version number, then exit\n"
msgstr ""
-#: gcov.c:342
+#: gcov.c:401
+msgid " -a, --all-blocks Show information for every basic block\n"
+msgstr ""
+
+#: gcov.c:402
msgid " -b, --branch-probabilities Include branch probabilities in output\n"
msgstr ""
-#: gcov.c:343
+#: gcov.c:403
msgid ""
" -c, --branch-counts Given counts of branches taken\n"
" rather than percentages\n"
msgstr ""
-#: gcov.c:345
+#: gcov.c:405
msgid " -n, --no-output Do not create an output file\n"
msgstr ""
-#: gcov.c:346
+#: gcov.c:406
msgid ""
" -l, --long-file-names Use long output file names for included\n"
" source files\n"
msgstr ""
-#: gcov.c:348
+#: gcov.c:408
msgid " -f, --function-summaries Output summaries for each function\n"
msgstr ""
-#: gcov.c:349
+#: gcov.c:409
msgid " -o, --object-directory DIR|FILE Search for object files in DIR or called FILE\n"
msgstr ""
-#: gcov.c:350
+#: gcov.c:410
msgid " -p, --preserve-paths Preserve all pathname components\n"
msgstr ""
-#: gcov.c:351
+#: gcov.c:411
+msgid " -u, --unconditional-branches Show unconditional branch counts too\n"
+msgstr ""
+
+#: gcov.c:412
#, c-format
msgid ""
"\n"
@@ -5908,406 +5838,284 @@ msgid ""
"%s.\n"
msgstr ""
-#: gcov.c:361
+#: gcov.c:422
#, c-format
msgid "gcov (GCC) %s\n"
msgstr ""
-#: gcov.c:362
-msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
-msgstr ""
-
-#: gcov.c:500
-#, c-format
-msgid "Could not open basic block file %s.\n"
-msgstr ""
-
-#: gcov.c:507
-#, c-format
-msgid "Could not open program flow graph file %s.\n"
-msgstr ""
-
-#: gcov.c:524
-#, c-format
-msgid "Could not open data file %s.\n"
+#: gcov.c:423
+msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
msgstr ""
-#: gcov.c:525
-msgid "Assuming that all execution counts are zero.\n"
+#: gcov.c:425
+msgid ""
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or \n"
+"FITNESS FOR A PARTICULAR PURPOSE.\n"
+"\n"
msgstr ""
-#: gcov.c:534
-#, c-format
-msgid "No executable code associated with file %s.\n"
-msgstr ""
+#: gcov.c:515
+#, fuzzy, c-format
+msgid "%s:no functions found\n"
+msgstr "geen cmd_strings gevonden"
-#: gcov.c:1186
-#, c-format
-msgid "%s of %d lines executed in %s %s\n"
+#: gcov.c:536 gcov.c:564
+msgid "\n"
msgstr ""
-#: gcov.c:1191
-#, c-format
-msgid "No executable lines in %s %s\n"
-msgstr ""
+#: gcov.c:551
+#, fuzzy, c-format
+msgid "%s:creating `%s'\n"
+msgstr "read %s"
-#: gcov.c:1198
-#, c-format
-msgid "%s of %d branches executed in %s %s\n"
-msgstr ""
+#: gcov.c:555
+#, fuzzy, c-format
+msgid "%s:error writing output file `%s'\n"
+msgstr "kan bestand '%s' niet openen"
-#: gcov.c:1203
-#, c-format
-msgid "%s of %d branches taken at least once in %s %s\n"
-msgstr ""
+#: gcov.c:560
+#, fuzzy, c-format
+msgid "%s:could not open output file `%s'\n"
+msgstr "kan bestand '%s' niet openen"
-#: gcov.c:1209
-#, c-format
-msgid "No branches in %s %s\n"
-msgstr ""
+#: gcov.c:711
+#, fuzzy, c-format
+msgid "%s:cannot open graph file\n"
+msgstr "%s: kan niet openen als COFF-bestand"
-#: gcov.c:1211
-#, c-format
-msgid "%s of %d calls executed in %s %s\n"
-msgstr ""
+#: gcov.c:717
+#, fuzzy, c-format
+msgid "%s:not a gcov graph file\n"
+msgstr "%s: geen COFF-bestand"
-#: gcov.c:1216
+#: gcov.c:730
#, c-format
-msgid "No calls in %s %s\n"
+msgid "%s:version `%.4s', prefer `%.4s'\n"
msgstr ""
-#: gcov.c:1351
+#: gcov.c:782
#, c-format
-msgid "didn't use all bb entries of graph, function %s\n"
+msgid "%s:already seen blocks for `%s'\n"
msgstr ""
-#: gcov.c:1353
+#: gcov.c:903 gcov.c:1062
#, c-format
-msgid "block_num = %ld, num_blocks = %d\n"
+msgid "%s:corrupted\n"
msgstr ""
-#: gcov.c:1367
-#, c-format
-msgid "ERROR: unexpected line number %ld\n"
-msgstr ""
+#: gcov.c:976
+#, fuzzy, c-format
+msgid "%s:cannot open data file\n"
+msgstr "%s: kan niet openen als COFF-bestand"
-#: gcov.c:1383
+#: gcov.c:981
#, fuzzy, c-format
-msgid "ERROR: too many basic blocks in function %s\n"
-msgstr "teveel argumenten voor functie `%s'"
+msgid "%s:not a gcov data file\n"
+msgstr "%s: geen COFF-bestand"
-#: gcov.c:1398
+#: gcov.c:994
#, c-format
-msgid "ERROR: out of range line number in function %s\n"
+msgid "%s:version `%.4s', prefer version `%.4s'\n"
msgstr ""
-#: gcov.c:1470
+#: gcov.c:1000
#, c-format
-msgid "Could not open source file %s.\n"
+msgid "%s:stamp mismatch with graph file\n"
msgstr ""
-#: gcov.c:1480
-#, c-format
-msgid "Warning: source file %s is newer than %s\n"
-msgstr ""
+#: gcov.c:1026
+#, fuzzy, c-format
+msgid "%s:unknown function `%u'\n"
+msgstr "Ongeldige optie `%s'"
-#: gcov.c:1510
+#: gcov.c:1039
#, c-format
-msgid "Unexpected EOF while reading source file %s.\n"
+msgid "%s:profile mismatch for `%s'\n"
msgstr ""
-#: gcov.c:1532
+#: gcov.c:1062
#, c-format
-msgid "call %2d never executed\n"
+msgid "%s:overflowed\n"
msgstr ""
-#: gcov.c:1535
+#: gcov.c:1085
#, c-format
-msgid "call %2d returns %s\n"
+msgid "%s:`%s' lacks entry and/or exit blocks\n"
msgstr ""
-#: gcov.c:1543
+#: gcov.c:1090
#, c-format
-msgid "branch %2d never executed\n"
+msgid "%s:`%s' has arcs to entry block\n"
msgstr ""
-#: gcov.c:1546
+#: gcov.c:1098
#, c-format
-msgid "branch %2d taken %s\n"
+msgid "%s:`%s' has arcs from exit block\n"
msgstr ""
-#: gcov.c:1610
+#: gcov.c:1306
#, c-format
-msgid "Creating %s.\n"
+msgid "%s:graph is unsolvable for `%s'\n"
msgstr ""
-#: gcov.c:1613
+#: gcov.c:1386
#, fuzzy, c-format
-msgid "Error writing output file %s.\n"
-msgstr "kan bestand '%s' niet openen"
-
-#: gcov.c:1618
-#, c-format
-msgid "Could not open output file %s.\n"
-msgstr ""
-
-#: gcse.c:763
-#, c-format
-msgid "GCSE disabled: %d > 1000 basic blocks and %d >= 20 edges/basic block"
-msgstr ""
+msgid "%s `%s'\n"
+msgstr "%s voor `%s'"
-#: gcse.c:775
+#: gcov.c:1389
#, c-format
-msgid "GCSE disabled: %d basic blocks and %d registers"
+msgid "Lines executed:%s of %d\n"
msgstr ""
-#: genautomata.c:1490
-#, c-format
-msgid "Name `%s' contains quotes"
+#: gcov.c:1393
+msgid "No executable lines"
msgstr ""
-#: genautomata.c:1621
+#: gcov.c:1399
#, c-format
-msgid "invalid string `%s' in define_cpu_unit"
+msgid "Branches executed:%s of %d\n"
msgstr ""
-#: genautomata.c:1650
+#: gcov.c:1403
#, c-format
-msgid "invalid string `%s' in define_query_cpu_unit"
+msgid "Taken at least once:%s of %d\n"
msgstr ""
-#: genautomata.c:1682 genautomata.c:1685
-#, fuzzy, c-format
-msgid "invalid string `%s' in define_bypass"
-msgstr "ongeldig gebruik van het niet gedefinieerde type `%s %s'"
-
-#: genautomata.c:1720
-#, c-format
-msgid "invalid first string `%s' in exclusion_set"
+#: gcov.c:1409
+msgid "No branches\n"
msgstr ""
-#: genautomata.c:1724
+#: gcov.c:1411
#, c-format
-msgid "invalid second string `%s' in exclusion_set"
+msgid "Calls executed:%s of %d\n"
msgstr ""
-#: genautomata.c:1760
-#, c-format
-msgid "invalid first string `%s' in presence_set"
+#: gcov.c:1415
+msgid "No calls\n"
msgstr ""
-#: genautomata.c:1764
+#: gcov.c:1556
#, fuzzy, c-format
-msgid "invalid second string `%s' in presence_set"
-msgstr "ongeldige macronaam"
-
-#: genautomata.c:1800
-#, c-format
-msgid "invalid first string `%s' in absence_set"
-msgstr ""
+msgid "%s:no lines for `%s'\n"
+msgstr "%s voor `%s'"
-#: genautomata.c:1804
+#: gcov.c:1751
#, c-format
-msgid "invalid second string `%s' in absence_set"
+msgid "call %2d returned %s\n"
msgstr ""
-#: genautomata.c:1837
+#: gcov.c:1756
#, c-format
-msgid "invalid string `%s' in define_automaton"
+msgid "call %2d never executed\n"
msgstr ""
-#: genautomata.c:1868
-#, fuzzy, c-format
-msgid "invalid option `%s' in automata_option"
-msgstr "Ongeldige optie `%s'"
-
-#: genautomata.c:1890
+#: gcov.c:1761
#, c-format
-msgid "garbage after ) in reservation `%s'"
+msgid "branch %2d taken %s%s\n"
msgstr ""
-#: genautomata.c:1921 genautomata.c:1954 genautomata.c:1981
-#, fuzzy, c-format
-msgid "invalid `%s' in reservation `%s'"
-msgstr "herdeclaratie van `%s'"
-
-#: genautomata.c:1932
+#: gcov.c:1765
#, c-format
-msgid "repetition `%s' <= 1 in reservation `%s'"
+msgid "branch %2d never executed\n"
msgstr ""
-#: genautomata.c:2425
+#: gcov.c:1770
#, fuzzy, c-format
-msgid "unit `%s' in exclusion is not declared"
-msgstr "`%.*s' is niet gedefinieerd"
+msgid "unconditional %2d taken %s\n"
+msgstr "onbekende machine-modus `%s'"
-#: genautomata.c:2427
+#: gcov.c:1773
#, c-format
-msgid "`%s' in exclusion is not unit"
+msgid "unconditional %2d never executed\n"
msgstr ""
-#: genautomata.c:2465
+#: gcov.c:1805
#, fuzzy, c-format
-msgid "unit `%s' excludes itself"
-msgstr "breedte van `%s' overschrijdt zijn type"
-
-#: genautomata.c:2473
-#, c-format
-msgid "units `%s' and `%s' in exclusion set belong to different automata"
-msgstr ""
+msgid "%s:cannot open source file\n"
+msgstr "%s: kan niet openen als COFF-bestand"
-#: genautomata.c:2603 genautomata.c:2609
+#: gcov.c:1815
#, c-format
-msgid "unit `%s' excludes and requires presence of `%s'"
+msgid "%s:source file is newer than graph file `%s'\n"
msgstr ""
-#: genautomata.c:2623 genautomata.c:2629
-#, c-format
-msgid "unit `%s' requires absence and presence of `%s'"
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:747
+msgid "GCSE disabled"
msgstr ""
-#: genautomata.c:2692 genautomata.c:2695
-#, fuzzy, c-format
-msgid "repeated declaration of automaton `%s'"
-msgstr "impliciete declaratie van functie `%s'"
-
-#: genautomata.c:2711
-#, c-format
-msgid "define_insn_reservation `%s' has negative latency time"
+#: gcse.c:6108
+msgid "NULL pointer checks disabled"
msgstr ""
-#: genautomata.c:2717
-#, c-format
-msgid "`%s' is already used as insn reservation name"
-msgstr ""
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:7994
+#, fuzzy
+msgid "jump bypassing disabled"
+msgstr "ingeschakelde opties: "
-#: genautomata.c:2723
+#: gcse.c:8055
#, c-format
-msgid "define_bypass `%s - %s' has negative latency time"
+msgid "%s: %d basic blocks and %d edges/basic block"
msgstr ""
-#: genautomata.c:2737
-#, fuzzy, c-format
-msgid "automaton `%s' is not declared"
-msgstr "`%.*s' is niet gedefinieerd"
-
-#: genautomata.c:2747
+#: gcse.c:8068
#, c-format
-msgid "define_unit `%s' without automaton when one defined"
+msgid "%s: %d basic blocks and %d registers"
msgstr ""
-#: genautomata.c:2753
-#, fuzzy, c-format
-msgid "`%s' is declared as cpu unit"
-msgstr "veld `%s' als een functie gedeclareerd"
-
-#: genautomata.c:2762
+#: ggc-common.c:398 ggc-common.c:406 ggc-common.c:487 ggc-common.c:507
+#: ggc-page.c:2030 ggc-page.c:2062 ggc-page.c:2069 ggc-zone.c:1361
+#: ggc-zone.c:1367 ggc-zone.c:1372 ggc-zone.c:1379
#, fuzzy, c-format
-msgid "`%s' is declared as cpu reservation"
-msgstr "veld `%s' als een functie gedeclareerd"
+msgid "can't write PCH file: %m"
+msgstr "kan bestand '%s' niet openen"
-#: genautomata.c:2772
+#: ggc-common.c:500
#, fuzzy, c-format
-msgid "repeated declaration of unit `%s'"
-msgstr "herdeclaratie van `%s'"
+msgid "can't get position in PCH file: %m"
+msgstr "kan bestand '%s' niet openen"
-#: genautomata.c:2775
+#: ggc-common.c:510
#, fuzzy, c-format
-msgid "repeated declaration of reservation `%s'"
-msgstr "impliciete declaratie van functie `%s'"
+msgid "can't write padding to PCH file: %m"
+msgstr "kan bestand '%s' niet openen"
-#: genautomata.c:2790 genautomata.c:2793
+#: ggc-common.c:563 ggc-common.c:571 ggc-common.c:578 ggc-common.c:581
+#: ggc-common.c:654 ggc-common.c:657 ggc-page.c:2157 ggc-zone.c:1389
#, fuzzy, c-format
-msgid "there is no insn reservation `%s'"
-msgstr "geen eerdere declaratie voor `%s'"
+msgid "can't read PCH file: %m"
+msgstr "kan bestand '%s' niet openen"
-#: genautomata.c:2810 genautomata.c:2815
-#, c-format
-msgid "the same bypass `%s - %s' is already defined"
+#: ggc-common.c:681
+msgid "had to relocate PCH"
msgstr ""
-#: genautomata.c:2820
-#, fuzzy, c-format
-msgid "bypass `%s - %s' is already defined"
-msgstr "veld `%s' heeft al een beginwaarde gekregen"
-
-#: genautomata.c:2925 genautomata.c:2927
-#, fuzzy, c-format
-msgid "automaton `%s' is not used"
-msgstr "modus van `%s' is geen modus"
-
-#: genautomata.c:2950
-#, fuzzy, c-format
-msgid "undeclared unit or reservation `%s'"
-msgstr "ongeldige naam `%s'"
-
-# Ik zou 'library' kunnen vertalen, maar ik heb in compiler-manuals nog niet
-# dikwijls 'bibliotheek' zien gebruiken.
-# De vertaalde boodschappen voor make gebruiken dat op het ogenblik wél, maar
-# ik ben van plan daar verandering in te brengen.
-#: genautomata.c:3028 genautomata.c:3030
-#, fuzzy, c-format
-msgid "unit `%s' is not used"
-msgstr "veld `%s' niet gevonden"
-
-#: genautomata.c:3035 genautomata.c:3037
-#, fuzzy, c-format
-msgid "reservation `%s' is not used"
-msgstr "de zwakke declaratie van `%s' moet publiek zijn"
-
-#: genautomata.c:3134
-#, fuzzy, c-format
-msgid "cycle in definition of reservation `%s'"
-msgstr "herdefinitie van `union %s'"
-
-#: genautomata.c:5333
+#: ggc-page.c:1325
#, c-format
-msgid "Units `%s' and `%s' should be in the same automaton"
+msgid "open /dev/zero: %m"
msgstr ""
-#: genautomata.c:9441
-#, fuzzy
-msgid "-split has no argument."
-msgstr "geen argumenten"
-
-#: genautomata.c:9442
+#: ggc-page.c:2047 ggc-page.c:2053
#, fuzzy
-msgid "option `-split' has not been implemented yet\n"
-msgstr "profileren wordt niet ondersteund wanneer -mg gebruikt wordt\n"
-
-#: genautomata.c:9486 genautomata.c:9491
-#, c-format
-msgid "Automaton `%s': Insn `%s' will never be issued"
-msgstr ""
-
-#: genautomata.c:9498 genautomata.c:9501
-#, c-format
-msgid "Insn `%s' will never be issued"
-msgstr ""
-
-#: genautomata.c:9649
-msgid "Errors in DFA description"
-msgstr ""
+msgid "can't write PCH file"
+msgstr "kan bestand '%s' niet openen"
-#: genautomata.c:9732
-#, c-format
-msgid "Error in writing DFA description file %s"
+#: ggc-simple.c:506
+msgid "Generating PCH files is not supported when using ggc-simple.c"
msgstr ""
-#: genconditions.c:196
-#, fuzzy
-msgid "No input file name."
-msgstr "Geen invoerbestanden"
-
-#: ggc-page.c:1265
-msgid "open /dev/zero"
-msgstr ""
+#: global.c:356 global.c:369 global.c:383
+#, fuzzy, c-format
+msgid "%s cannot be used in asm here"
+msgstr "veld `%s' als een functie gedeclareerd"
-#: graph.c:420 profile.c:1204 profile.c:1211 toplev.c:1836 toplev.c:5168
-#: f/com.c:14210 java/jcf-parse.c:917 java/jcf-parse.c:1063 java/lex.c:1776
-#: objc/objc-act.c:449
+#: graph.c:403 toplev.c:1481 toplev.c:4408 f/com.c:14202 java/jcf-parse.c:883
+#: java/jcf-parse.c:1030 java/lex.c:1828 objc/objc-act.c:503
#, fuzzy, c-format
-msgid "can't open %s"
+msgid "can't open %s: %m"
msgstr "open %s"
#: haifa-sched.c:196
@@ -6315,73 +6123,82 @@ msgstr "open %s"
msgid "fix_sched_param: unknown param: %s"
msgstr ""
-#: integrate.c:174
+#: integrate.c:166
#, fuzzy
msgid "function cannot be inline"
msgstr "de terugkeerwaarde van een functie kan geen funtie zijn"
-#: integrate.c:178
+#: integrate.c:170
msgid "varargs function cannot be inline"
msgstr ""
-#: integrate.c:181
+#: integrate.c:173
msgid "function using alloca cannot be inline"
msgstr ""
-#: integrate.c:184
+#: integrate.c:176
+#, fuzzy
+msgid "function using longjmp cannot be inline"
+msgstr "de terugkeerwaarde van een functie kan geen funtie zijn"
+
+#: integrate.c:179
#, fuzzy
msgid "function using setjmp cannot be inline"
msgstr "de terugkeerwaarde van een functie kan geen funtie zijn"
-#: integrate.c:187
+#: integrate.c:182
msgid "function uses __builtin_eh_return"
msgstr ""
-#: integrate.c:190
+#: integrate.c:185
msgid "function with nested functions cannot be inline"
msgstr ""
-#: integrate.c:194
+#: integrate.c:189
msgid "function with label addresses used in initializers cannot inline"
msgstr ""
-#: integrate.c:201 integrate.c:245
+#: integrate.c:196 integrate.c:240
msgid "function too large to be inline"
msgstr ""
-#: integrate.c:211
+#: integrate.c:206
msgid "no prototype, and parameter address used; cannot be inline"
msgstr ""
-#: integrate.c:218 integrate.c:263
+#: integrate.c:213 integrate.c:258
msgid "inline functions not supported for this return value type"
msgstr ""
-#: integrate.c:223
+#: integrate.c:218
msgid "function with varying-size return value cannot be inline"
msgstr ""
-#: integrate.c:230
+#: integrate.c:225
msgid "function with varying-size parameter cannot be inline"
msgstr ""
-#: integrate.c:233
+#: integrate.c:228
msgid "function with transparent unit parameter cannot be inline"
msgstr ""
-#: integrate.c:252
+#: integrate.c:247
msgid "function with computed jump cannot inline"
msgstr ""
-#: integrate.c:256
+#: integrate.c:251
msgid "function with nonlocal goto cannot be inline"
msgstr ""
-#: integrate.c:270
+#: integrate.c:265
msgid "function with target specific attribute(s) cannot be inlined"
msgstr ""
-#: line-map.c:198
+#: jump.c:1896
+msgid "%Hwill never be executed"
+msgstr ""
+
+#: line-map.c:202
#, fuzzy, c-format
msgid "In file included from %s:%u"
msgstr "In bestand ingevoegd door "
@@ -6398,7 +6215,7 @@ msgstr "In bestand ingevoegd door "
#. with all the "from"s lined up.
#. The trailing comma is at the beginning of this message,
#. and the trailing colon is not translated.
-#: line-map.c:216
+#: line-map.c:220
#, fuzzy, c-format
msgid ""
",\n"
@@ -6407,62 +6224,156 @@ msgstr ""
",\n"
" door "
+#. What to print when a switch has no documentation.
+#: opts.c:149
+msgid "This switch lacks documentation"
+msgstr ""
+
+#. Eventually this should become a hard error IMO.
+#: opts.c:318
+#, c-format
+msgid "command line option \"%s\" is valid for %s but not for %s"
+msgstr ""
+
+#: opts.c:406
+#, fuzzy, c-format
+msgid "missing argument to \"%s\""
+msgstr "Bestandsnaam ontbreekt na `%s' optie"
+
+#: opts.c:416
+#, fuzzy, c-format
+msgid "argument to \"%s\" should be a non-negative integer"
+msgstr "argument van `%s' moet van een integraal type zijn."
+
+# Moet 'command line' vertaald worden?
+#: opts.c:463
+#, fuzzy, c-format
+msgid "unrecognized command line option \"%s\""
+msgstr "Foldernaam ontbreekt na command-line optie"
+
+#: opts.c:646
+msgid "-Wuninitialized is not supported without -O"
+msgstr "-Wuninitialized wordt niet ondersteund zonder -O"
+
+#: opts.c:1350
+#, fuzzy, c-format
+msgid "unrecognized register name \"%s\""
+msgstr "geen argumenten"
+
+#: opts.c:1394
+#, fuzzy, c-format
+msgid "unknown tls-model \"%s\""
+msgstr "onbekende machine-modus `%s'"
+
+#: opts.c:1450
+msgid "-fwritable-strings is deprecated; see documentation for details"
+msgstr ""
+
+#: opts.c:1534
+#, c-format
+msgid "%s: --param arguments should be of the form NAME=VALUE"
+msgstr ""
+
+#: opts.c:1539
+#, fuzzy, c-format
+msgid "invalid --param value `%s'"
+msgstr "ongeldige registernaam voor `%s'"
+
+#: opts.c:1635
+#, fuzzy
+msgid "target system does not support debug output"
+msgstr "doelformaat ondersteunt geen oneindige waarde"
+
+#: opts.c:1642
+#, fuzzy, c-format
+msgid "debug format \"%s\" conflicts with prior selection"
+msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie"
+
+#: opts.c:1658
+#, fuzzy, c-format
+msgid "unrecognised debug output level \"%s\""
+msgstr "signature-string niet herkend"
+
+#: opts.c:1660
+#, c-format
+msgid "debug output level %s is too high"
+msgstr ""
+
+#: opts.c:1679
+msgid "The following options are language-independent:\n"
+msgstr ""
+
+#: opts.c:1686
+#, c-format
+msgid ""
+"The %s front end recognizes the following options:\n"
+"\n"
+msgstr ""
+
+#: opts.c:1700
+msgid "The --param option recognizes the following as parameters:\n"
+msgstr ""
+
#. If we didn't find this parameter, issue an error message.
-#: params.c:80
+#: params.c:76
#, fuzzy, c-format
msgid "invalid parameter `%s'"
msgstr "ongeldige macronaam `%.*s'"
-#: profile.c:397
-#, c-format
-msgid "Profile does not match flowgraph of function %s (out of date?)"
+#: profile.c:288
+msgid "corrupted profile info: run_max * runs < sum_max"
msgstr ""
-#: profile.c:400
-msgid ".da file corrupted"
+#: profile.c:294
+msgid "corrupted profile info: sum_all is smaller than sum_max"
msgstr ""
-#: profile.c:634
+#: profile.c:336
#, c-format
-msgid "corrupted profile info: prob for %d-%d thought to be %d"
+msgid "corrupted profile info: edge from %i to %i exceeds maximal count"
msgstr ""
-#: profile.c:1226
+#: profile.c:499
#, c-format
-msgid "file %s not found, execution counts assumed to be zero"
+msgid "corrupted profile info: number of iterations for basic block %d thought to be %i"
msgstr ""
-#: protoize.c:542
+#: profile.c:526
+#, c-format
+msgid "corrupted profile info: number of executions for edge %d-%d thought to be %i"
+msgstr ""
+
+#: protoize.c:534
#, c-format
msgid "%s: internal abort\n"
msgstr ""
-#: protoize.c:633
+#: protoize.c:592
#, c-format
msgid "%s: error writing file `%s': %s\n"
msgstr ""
-#: protoize.c:678
+#: protoize.c:636
#, c-format
msgid "%s: usage '%s [ -VqfnkN ] [ -i <istring> ] [ filename ... ]'\n"
msgstr ""
-#: protoize.c:681
+#: protoize.c:639
#, c-format
msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B <dirname> ] [ filename ... ]'\n"
msgstr ""
-#: protoize.c:788
+#: protoize.c:745
#, c-format
msgid "%s: warning: no read access for file `%s'\n"
msgstr ""
-#: protoize.c:796
+#: protoize.c:753
#, c-format
msgid "%s: warning: no write access for file `%s'\n"
msgstr ""
-#: protoize.c:804
+#: protoize.c:761
#, c-format
msgid "%s: warning: no write access for dir containing `%s'\n"
msgstr ""
@@ -6470,272 +6381,272 @@ msgstr ""
#. Catch cases like /.. where we try to backup to a
#. point above the absolute root of the logical file
#. system.
-#: protoize.c:1222
+#: protoize.c:1148
#, c-format
msgid "%s: invalid file name: %s\n"
msgstr ""
-#: protoize.c:1374
+#: protoize.c:1296
#, c-format
msgid "%s: %s: can't get status: %s\n"
msgstr ""
-#: protoize.c:1395
+#: protoize.c:1317
#, c-format
msgid ""
"\n"
"%s: fatal error: aux info file corrupted at line %d\n"
msgstr ""
-#: protoize.c:1731
+#: protoize.c:1646
#, c-format
msgid "%s:%d: declaration of function `%s' takes different forms\n"
msgstr ""
-#: protoize.c:1989
+#: protoize.c:1901
#, c-format
msgid "%s: compiling `%s'\n"
msgstr ""
-#: protoize.c:2012
+#: protoize.c:1924
#, c-format
msgid "%s: wait: %s\n"
msgstr ""
-#: protoize.c:2017
+#: protoize.c:1929
#, c-format
msgid "%s: subprocess got fatal signal %d\n"
msgstr ""
-#: protoize.c:2025
+#: protoize.c:1937
#, c-format
msgid "%s: %s exited with status %d\n"
msgstr ""
-#: protoize.c:2077
+#: protoize.c:1986
#, c-format
msgid "%s: warning: missing SYSCALLS file `%s'\n"
msgstr ""
-#: protoize.c:2086 protoize.c:2115
+#: protoize.c:1995 protoize.c:2024
#, c-format
msgid "%s: can't read aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2131 protoize.c:2159
+#: protoize.c:2040 protoize.c:2068
#, c-format
msgid "%s: can't get status of aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2187
+#: protoize.c:2096
#, c-format
msgid "%s: can't open aux info file `%s' for reading: %s\n"
msgstr ""
-#: protoize.c:2205
+#: protoize.c:2114
#, c-format
msgid "%s: error reading aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2218
+#: protoize.c:2127
#, c-format
msgid "%s: error closing aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2234
+#: protoize.c:2143
#, c-format
msgid "%s: can't delete aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2316 protoize.c:4318
+#: protoize.c:2225 protoize.c:4195
#, c-format
msgid "%s: can't delete file `%s': %s\n"
msgstr ""
-#: protoize.c:2395
+#: protoize.c:2303
#, c-format
msgid "%s: warning: can't rename file `%s' to `%s': %s\n"
msgstr ""
-#: protoize.c:2520
+#: protoize.c:2425
#, c-format
msgid "%s: conflicting extern definitions of '%s'\n"
msgstr ""
-#: protoize.c:2524
+#: protoize.c:2429
#, c-format
msgid "%s: declarations of '%s' will not be converted\n"
msgstr ""
-#: protoize.c:2526
+#: protoize.c:2431
#, c-format
msgid "%s: conflict list for '%s' follows:\n"
msgstr ""
-#: protoize.c:2559
+#: protoize.c:2464
#, c-format
msgid "%s: warning: using formals list from %s(%d) for function `%s'\n"
msgstr ""
-#: protoize.c:2599
+#: protoize.c:2504
#, c-format
msgid "%s: %d: `%s' used but missing from SYSCALLS\n"
msgstr ""
-#: protoize.c:2605
+#: protoize.c:2510
#, c-format
msgid "%s: %d: warning: no extern definition for `%s'\n"
msgstr ""
-#: protoize.c:2636
+#: protoize.c:2540
#, c-format
msgid "%s: warning: no static definition for `%s' in file `%s'\n"
msgstr ""
-#: protoize.c:2642
+#: protoize.c:2546
#, c-format
msgid "%s: multiple static defs of `%s' in file `%s'\n"
msgstr ""
-#: protoize.c:2815 protoize.c:2818
+#: protoize.c:2716 protoize.c:2719
#, c-format
msgid "%s: %d: warning: source too confusing\n"
msgstr ""
-#: protoize.c:3024
+#: protoize.c:2915
#, c-format
msgid "%s: %d: warning: varargs function declaration not converted\n"
msgstr ""
-#: protoize.c:3039
+#: protoize.c:2930
#, c-format
msgid "%s: declaration of function `%s' not converted\n"
msgstr ""
-#: protoize.c:3162
+#: protoize.c:3053
#, c-format
msgid "%s: warning: too many parameter lists in declaration of `%s'\n"
msgstr ""
-#: protoize.c:3183
+#: protoize.c:3074
#, c-format
msgid ""
"\n"
"%s: warning: too few parameter lists in declaration of `%s'\n"
msgstr ""
-#: protoize.c:3281
+#: protoize.c:3170
#, c-format
msgid "%s: %d: warning: found `%s' but expected `%s'\n"
msgstr ""
-#: protoize.c:3459
+#: protoize.c:3345
#, c-format
msgid "%s: local declaration for function `%s' not inserted\n"
msgstr ""
-#: protoize.c:3486
+#: protoize.c:3372
#, c-format
msgid ""
"\n"
"%s: %d: warning: can't add declaration of `%s' into macro call\n"
msgstr ""
-#: protoize.c:3560
+#: protoize.c:3444
#, c-format
msgid "%s: global declarations for file `%s' not inserted\n"
msgstr ""
-#: protoize.c:3651 protoize.c:3681
+#: protoize.c:3533 protoize.c:3563
#, c-format
msgid "%s: definition of function `%s' not converted\n"
msgstr ""
-#: protoize.c:3670
+#: protoize.c:3552
#, c-format
msgid "%s: %d: warning: definition of %s not converted\n"
msgstr ""
-#: protoize.c:4000
+#: protoize.c:3878
#, c-format
msgid "%s: found definition of `%s' at %s(%d)\n"
msgstr ""
#. If we make it here, then we did not know about this
#. function definition.
-#: protoize.c:4016
+#: protoize.c:3894
#, c-format
msgid "%s: %d: warning: `%s' excluded by preprocessing\n"
msgstr ""
-#: protoize.c:4019
+#: protoize.c:3897
#, c-format
msgid "%s: function definition not converted\n"
msgstr ""
-#: protoize.c:4078
+#: protoize.c:3955
#, c-format
msgid "%s: `%s' not converted\n"
msgstr ""
-#: protoize.c:4086
+#: protoize.c:3963
#, c-format
msgid "%s: would convert file `%s'\n"
msgstr ""
-#: protoize.c:4089
+#: protoize.c:3966
#, c-format
msgid "%s: converting file `%s'\n"
msgstr ""
-#: protoize.c:4099
+#: protoize.c:3976
#, c-format
msgid "%s: can't get status for file `%s': %s\n"
msgstr ""
-#: protoize.c:4141
+#: protoize.c:4018
#, c-format
msgid "%s: can't open file `%s' for reading: %s\n"
msgstr ""
-#: protoize.c:4156
+#: protoize.c:4033
#, c-format
msgid ""
"\n"
"%s: error reading input file `%s': %s\n"
msgstr ""
-#: protoize.c:4190
+#: protoize.c:4067
#, c-format
msgid "%s: can't create/open clean file `%s': %s\n"
msgstr ""
-#: protoize.c:4295
+#: protoize.c:4172
#, c-format
msgid "%s: warning: file `%s' already saved in `%s'\n"
msgstr ""
-#: protoize.c:4303
+#: protoize.c:4180
#, fuzzy, c-format
msgid "%s: can't link file `%s' to `%s': %s\n"
msgstr "kan oproep van `%s' niet inline maken"
-#: protoize.c:4333
+#: protoize.c:4210
#, c-format
msgid "%s: can't create/open output file `%s': %s\n"
msgstr ""
-#: protoize.c:4366
+#: protoize.c:4243
#, c-format
msgid "%s: can't change mode of file `%s': %s\n"
msgstr ""
-#: protoize.c:4541
+#: protoize.c:4416
#, c-format
msgid "%s: cannot get working directory: %s\n"
msgstr ""
-#: protoize.c:4639
+#: protoize.c:4514
#, c-format
msgid "%s: input file names must have .c suffixes: %s\n"
msgstr ""
@@ -6744,1431 +6655,546 @@ msgstr ""
msgid "Didn't find a coloring.\n"
msgstr ""
-#: reg-stack.c:673
+#: reg-stack.c:665
#, c-format
msgid "output constraint %d must specify a single register"
msgstr ""
-#: reg-stack.c:683
+#: reg-stack.c:675
#, c-format
msgid "output constraint %d cannot be specified together with \"%s\" clobber"
msgstr ""
-#: reg-stack.c:706
+#: reg-stack.c:698
msgid "output regs must be grouped at top of stack"
msgstr ""
-#: reg-stack.c:743
+#: reg-stack.c:735
msgid "implicitly popped regs must be grouped at top of stack"
msgstr ""
-#: reg-stack.c:762
+#: reg-stack.c:754
#, c-format
msgid "output operand %d must use `&' constraint"
msgstr ""
-#: regclass.c:756
+#: regclass.c:743
#, c-format
msgid "can't use '%s' as a %s register"
msgstr ""
-#: regclass.c:771 config/ia64/ia64.c:4304 config/ia64/ia64.c:4311
+#: regclass.c:758 config/ia64/ia64.c:4640 config/ia64/ia64.c:4647
#, c-format
msgid "unknown register name: %s"
msgstr ""
-#: regclass.c:782
+#: regclass.c:768
msgid "global register variable follows a function definition"
msgstr "globale registervariabele volgt op een functiedefinitie"
-#: regclass.c:786
+#: regclass.c:772
msgid "register used for two global register variables"
msgstr ""
-#: regclass.c:791
+#: regclass.c:777
msgid "call-clobbered register used for global register variable"
msgstr ""
-#: regrename.c:1899
+#: regrename.c:1846
#, c-format
msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)"
msgstr ""
-#: regrename.c:1911
+#: regrename.c:1858
#, c-format
msgid "validate_value_data: Loop in regno chain (%u)"
msgstr ""
-#: regrename.c:1914
+#: regrename.c:1861
#, c-format
msgid "validate_value_data: [%u] Bad oldest_regno (%u)"
msgstr ""
-#: regrename.c:1926
+#: regrename.c:1873
#, c-format
msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
msgstr ""
-#: reload.c:1229
+#: reload.c:1254
msgid "cannot reload integer constant operand in `asm'"
msgstr ""
-#: reload.c:1251
+#: reload.c:1276
msgid "impossible register constraint in `asm'"
msgstr ""
-#: reload.c:3461
+#: reload.c:3489
msgid "`&' constraint used with no register class"
msgstr ""
-#: reload.c:3629
+#: reload.c:3657
msgid "unable to generate reloads for:"
msgstr ""
-#: reload.c:3630 reload.c:3844
+#: reload.c:3658 reload.c:3872
msgid "inconsistent operand constraints in an `asm'"
msgstr ""
-#: reload1.c:1250
+#: reload1.c:1212
msgid "frame size too large for reliable stack checking"
msgstr ""
-#: reload1.c:1253
+#: reload1.c:1215
msgid "try reducing the number of local variables"
msgstr ""
-#: reload1.c:1909
+#: reload1.c:1868
#, c-format
msgid "can't find a register in class `%s' while reloading `asm'"
msgstr ""
-#: reload1.c:1913
+#: reload1.c:1872
#, c-format
msgid "unable to find a register to spill in class `%s'"
msgstr ""
-#: reload1.c:1915
+#: reload1.c:1874
#, fuzzy
msgid "this is the insn:"
msgstr "dit is het eerste ELSE-label"
-#: reload1.c:3938
+#: reload1.c:3871
msgid "`asm' operand requires impossible reload"
msgstr ""
#. It's the compiler's fault.
-#: reload1.c:5052
+#: reload1.c:4963
msgid "could not find a spill register"
msgstr ""
-#: reload1.c:5057
+#: reload1.c:4968
msgid "`asm' operand constraint incompatible with operand size"
msgstr ""
#. It's the compiler's fault.
-#: reload1.c:6679
+#: reload1.c:6590
msgid "VOIDmode on an output"
msgstr ""
-#: reload1.c:6680
+#: reload1.c:6591
msgid "output operand is constant in `asm'"
msgstr ""
-#: rtl-error.c:140
+#: rtl-error.c:124
#, fuzzy
msgid "unrecognizable insn:"
msgstr "signature-string niet herkend"
-#: rtl-error.c:142
+#: rtl-error.c:126
msgid "insn does not satisfy its constraints:"
msgstr ""
-#: rtl.c:535
+#: rtl.c:477
#, c-format
msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d"
msgstr ""
-#: rtl.c:550
+#: rtl.c:487
#, c-format
msgid "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr ""
-#: rtl.c:566
+#: rtl.c:497
#, c-format
msgid "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr ""
-#: rtl.c:579
+#: rtl.c:506
#, c-format
msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d"
msgstr ""
-#: rtl.c:593
+#: rtl.c:516
#, c-format
msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d"
msgstr ""
-#: rtl.c:608
+#: rtl.c:527
#, c-format
msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
msgstr ""
-#: rtl.c:623
+#: rtl.c:538
#, c-format
msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d"
msgstr ""
-#: stmt.c:766
+#: stmt.c:750
#, c-format
msgid "jump to `%s' invalidly jumps into binding contour"
msgstr ""
-#: stmt.c:1002 stmt.c:3766
-#, c-format
-msgid "label `%s' used before containing binding contour"
+#: stmt.c:977 stmt.c:3793
+msgid "%Jlabel '%D' used before containing binding contour"
msgstr ""
-#: stmt.c:1190
+#: stmt.c:1156
msgid "output operand constraint lacks `='"
msgstr ""
-#: stmt.c:1205
+#: stmt.c:1171
#, c-format
msgid "output constraint `%c' for operand %d is not at the beginning"
msgstr ""
-#: stmt.c:1227
+#: stmt.c:1193
msgid "operand constraint contains incorrectly positioned '+' or '='"
msgstr ""
-#: stmt.c:1233 stmt.c:1337
+#: stmt.c:1199 stmt.c:1301
#, c-format
msgid "`%%' constraint used with last operand"
msgstr ""
-#: stmt.c:1252
+#: stmt.c:1218
msgid "matching constraint not valid in output operand"
msgstr ""
-#: stmt.c:1328
+#: stmt.c:1260
+#, fuzzy
+msgid "read-write constraint does not allow a register"
+msgstr "operand `%d' is geen register"
+
+#: stmt.c:1292
#, c-format
msgid "input operand constraint contains `%c'"
msgstr ""
-#: stmt.c:1368
+#: stmt.c:1334
msgid "matching constraint references invalid operand number"
msgstr ""
-#: stmt.c:1400
+#: stmt.c:1372
#, c-format
msgid "invalid punctuation `%c' in constraint"
msgstr ""
-#: stmt.c:1450
+#: stmt.c:1396
+#, fuzzy
+msgid "matching constraint does not allow a register"
+msgstr "numerieke constante zonder cijfers"
+
+#: stmt.c:1424
#, fuzzy, c-format
msgid "asm-specifier for variable `%s' conflicts with asm clobber list"
msgstr "type-qualifiers voor `%s' geven een conflict met een eerdere declaratie"
-#: stmt.c:1540
+#: stmt.c:1514
#, c-format
msgid "unknown register name `%s' in `asm'"
msgstr ""
-#: stmt.c:1588
+#: stmt.c:1522
+#, c-format
+msgid "PIC register `%s' clobbered in `asm'"
+msgstr ""
+
+#: stmt.c:1571
#, c-format
msgid "more than %d operands in `asm'"
msgstr ""
-#: stmt.c:1650
+#: stmt.c:1633
#, c-format
msgid "output number %d not directly addressable"
msgstr ""
-#: stmt.c:1728
+#: stmt.c:1711
#, c-format
msgid "asm operand %d probably doesn't match constraints"
msgstr ""
-#: stmt.c:1738
+#: stmt.c:1721
#, c-format
msgid "use of memory input without lvalue in asm operand %d is deprecated"
msgstr ""
-#: stmt.c:1889
+#: stmt.c:1875
msgid "asm clobber conflict with output operand"
msgstr ""
-#: stmt.c:1894
+#: stmt.c:1880
msgid "asm clobber conflict with input operand"
msgstr ""
-#: stmt.c:1929
+#: stmt.c:1914
msgid "too many alternatives in `asm'"
msgstr ""
-#: stmt.c:1941
+#: stmt.c:1926
msgid "operand constraints for `asm' differ in number of alternatives"
msgstr ""
-#: stmt.c:1994
+#: stmt.c:1978
#, fuzzy, c-format
msgid "duplicate asm operand name '%s'"
msgstr "herhaald lid `%s'"
-#: stmt.c:2081
+#: stmt.c:2076
msgid "missing close brace for named operand"
msgstr ""
-#: stmt.c:2109
+#: stmt.c:2104
#, fuzzy, c-format
msgid "undefined named operand '%s'"
msgstr "ongeldige operand van %s"
-#: stmt.c:3703
-#, c-format
-msgid "unused variable `%s'"
+#: stmt.c:2161
+msgid "%Hstatement with no effect"
+msgstr ""
+
+#: stmt.c:2317
+#, fuzzy
+msgid "%Hvalue computed is not used"
+msgstr "modus van `%s' is geen modus"
+
+#: stmt.c:3733
+#, fuzzy
+msgid "%Junused variable '%D'"
+msgstr "%s van alleen-lezen variabele `%s'"
+
+#: stmt.c:4508
+msgid "%Hunreachable code at beginning of %s"
msgstr ""
-#: stmt.c:5189
+#: stmt.c:5136
#, c-format
msgid "enumeration value `%s' not handled in switch"
msgstr ""
-#: stmt.c:5214 stmt.c:5234
+#: stmt.c:5161 stmt.c:5181
#, c-format
msgid "case value `%ld' not in enumerated type"
msgstr ""
-#: stmt.c:5217 stmt.c:5237
+#: stmt.c:5164 stmt.c:5184
#, c-format
msgid "case value `%ld' not in enumerated type `%s'"
msgstr ""
-#: stmt.c:5310
+#: stmt.c:5401
#, fuzzy
msgid "switch missing default case"
msgstr "dit is het eerste default-label"
-#: stor-layout.c:178
+#: stor-layout.c:183
msgid "type size can't be explicitly evaluated"
msgstr ""
-#: stor-layout.c:180
+#: stor-layout.c:185
msgid "variable-size type declared outside of any function"
msgstr ""
-#: stor-layout.c:487
-#, fuzzy, c-format
-msgid "size of `%s' is %d bytes"
+#: stor-layout.c:515
+#, fuzzy
+msgid "%Jsize of '%D' is %d bytes"
msgstr "grootte van `%s' is %u bytes"
-#: stor-layout.c:489
-#, fuzzy, c-format
-msgid "size of `%s' is larger than %d bytes"
+#: stor-layout.c:517
+#, fuzzy
+msgid "%Jsize of '%D' is larger than %d bytes"
msgstr "grootte van `%s' is %u bytes"
-#: stor-layout.c:909 stor-layout.c:1325
-#, c-format
-msgid "packed attribute causes inefficient alignment for `%s'"
+#: stor-layout.c:883
+msgid "%Jpacked attribute causes inefficient alignment for '%D'"
msgstr ""
-#: stor-layout.c:911 stor-layout.c:1327
-#, c-format
-msgid "packed attribute is unnecessary for `%s'"
+#: stor-layout.c:886
+#, fuzzy
+msgid "%Jpacked attribute is unnecessary for '%D'"
+msgstr "het `%s' attribuut wordt genegeerd voor `%s'"
+
+#: stor-layout.c:902
+msgid "%Jpadding struct to align '%D'"
+msgstr ""
+
+#: stor-layout.c:1245
+msgid "padding struct size to alignment boundary"
msgstr ""
-#: stor-layout.c:926
+#: stor-layout.c:1275
#, c-format
-msgid "padding struct to align `%s'"
+msgid "packed attribute causes inefficient alignment for `%s'"
msgstr ""
-#: stor-layout.c:1289
-msgid "padding struct size to alignment boundary"
+#: stor-layout.c:1277
+#, c-format
+msgid "packed attribute is unnecessary for `%s'"
msgstr ""
-#: stor-layout.c:1332
+#: stor-layout.c:1282
msgid "packed attribute causes inefficient alignment"
msgstr ""
-#: stor-layout.c:1334
+#: stor-layout.c:1284
msgid "packed attribute is unnecessary"
msgstr ""
-#: timevar.c:322
+#: targhooks.c:154
+msgid "__builtin_saveregs not supported by this target"
+msgstr "__builtin_saveregs wordt niet ondersteund op dit doelsysteem"
+
+#: timevar.c:314
#, c-format
msgid "cannot timevar_pop '%s' when top of timevars stack is '%s'"
msgstr ""
-#: timevar.c:453
+#: timevar.c:440
msgid ""
"\n"
"Execution times (seconds)\n"
msgstr ""
#. Print total time.
-#: timevar.c:503
+#: timevar.c:490
#, fuzzy
msgid " TOTAL :"
msgstr ""
",\n"
" door "
-#: timevar.c:539
+#: timevar.c:513
#, c-format
msgid "time in %s: %ld.%06ld (%ld%%)\n"
msgstr ""
-#: tlink.c:399
+#: tlink.c:377
#, fuzzy, c-format
msgid "collect: reading %s\n"
msgstr "collect2 versie %s"
-#: tlink.c:502
+#: tlink.c:478
#, fuzzy, c-format
msgid "collect: recompiling %s\n"
msgstr "collect2 versie %s"
-#: tlink.c:674
+#: tlink.c:654
#, fuzzy, c-format
msgid "collect: tweaking %s in %s\n"
msgstr "collect2 versie %s"
-#: tlink.c:721
+#: tlink.c:700
+#, c-format
msgid "collect: relinking\n"
msgstr ""
-#: tlink.c:730
+#: tlink.c:709
#, c-format
msgid "ld returned %d exit status"
msgstr "ld gaf exit-status %d terug"
-#: toplev.c:920
-msgid "Generate debugging info in default format"
-msgstr ""
-
-#: toplev.c:921
-msgid "Generate debugging info in default extended format"
-msgstr ""
-
-#: toplev.c:923
-msgid "Generate STABS format debug info"
-msgstr ""
-
-#: toplev.c:924
-msgid "Generate extended STABS format debug info"
-msgstr ""
-
-#: toplev.c:927
-msgid "Generate DWARF-1 format debug info"
-msgstr ""
-
-#: toplev.c:929
-msgid "Generate extended DWARF-1 format debug info"
-msgstr ""
-
-#: toplev.c:932
-msgid "Generate DWARF-2 debug info"
-msgstr ""
-
-#: toplev.c:935
-msgid "Generate XCOFF format debug info"
-msgstr ""
-
-#: toplev.c:936
-msgid "Generate extended XCOFF format debug info"
-msgstr ""
-
-#: toplev.c:939
-msgid "Generate COFF format debug info"
-msgstr ""
-
-#: toplev.c:942
-msgid "Generate VMS format debug info"
-msgstr ""
-
-#: toplev.c:981
-msgid "Perform DWARF2 duplicate elimination"
-msgstr ""
-
-#: toplev.c:983
-msgid "Do not store floats in registers"
-msgstr ""
-
-#: toplev.c:985
-msgid "Consider all mem refs through pointers as volatile"
-msgstr ""
-
-#: toplev.c:987
-msgid "Consider all mem refs to global data to be volatile"
-msgstr ""
-
-#: toplev.c:989
-msgid "Consider all mem refs to static data to be volatile"
-msgstr ""
-
-#: toplev.c:991
-msgid "Defer popping functions args from stack until later"
-msgstr ""
-
-#: toplev.c:993
-msgid "When possible do not generate stack frames"
-msgstr ""
-
-#: toplev.c:995
-msgid "Optimize sibling and tail recursive calls"
-msgstr ""
-
-#: toplev.c:997
-msgid "Perform superblock formation via tail duplication"
-msgstr ""
-
-#: toplev.c:999
-msgid "When running CSE, follow jumps to their targets"
-msgstr ""
-
-#: toplev.c:1001
-msgid "When running CSE, follow conditional jumps"
-msgstr ""
-
-#: toplev.c:1003
-msgid "Perform a number of minor, expensive optimizations"
-msgstr ""
-
-#: toplev.c:1005
-msgid "Perform jump threading optimizations"
-msgstr ""
-
-#: toplev.c:1007
-msgid "Perform strength reduction optimizations"
-msgstr ""
-
-#: toplev.c:1009
-msgid "Perform loop unrolling when iteration count is known"
-msgstr ""
-
-#: toplev.c:1011
-msgid "Perform loop unrolling for all loops"
-msgstr ""
-
-#: toplev.c:1013
-msgid "Generate prefetch instructions, if available, for arrays in loops"
-msgstr ""
-
-#: toplev.c:1015
-msgid "Force all loop invariant computations out of loops"
-msgstr ""
-
-#: toplev.c:1017
-msgid "Strength reduce all loop general induction variables"
-msgstr ""
-
-#: toplev.c:1019
-msgid "Store strings in writable data section"
-msgstr ""
-
-#: toplev.c:1021
-msgid "Enable machine specific peephole optimizations"
-msgstr ""
-
-#: toplev.c:1023
-msgid "Copy memory operands into registers before using"
-msgstr ""
-
-#: toplev.c:1025
-msgid "Copy memory address constants into regs before using"
-msgstr ""
-
-#: toplev.c:1027
-msgid "Allow function addresses to be held in registers"
-msgstr ""
-
-#: toplev.c:1029
-msgid "Integrate simple functions into their callers"
-msgstr ""
-
-#: toplev.c:1031
-msgid "Generate code for funcs even if they are fully inlined"
-msgstr ""
-
-#: toplev.c:1033
-msgid "Pay attention to the 'inline' keyword"
-msgstr ""
-
-#: toplev.c:1035
-msgid "Emit static const variables even if they are not used"
-msgstr ""
-
-#: toplev.c:1037
-msgid "Check for syntax errors, then stop"
-msgstr ""
-
-#: toplev.c:1039
-msgid "Mark data as shared rather than private"
-msgstr ""
-
-#: toplev.c:1041
-msgid "Enable saving registers around function calls"
-msgstr ""
-
-#: toplev.c:1043
-msgid "Return 'short' aggregates in memory, not registers"
-msgstr ""
-
-#: toplev.c:1045
-msgid "Return 'short' aggregates in registers"
-msgstr ""
-
-#: toplev.c:1047
-msgid "Attempt to fill delay slots of branch instructions"
-msgstr ""
-
-#: toplev.c:1049
-msgid "Perform the global common subexpression elimination"
-msgstr ""
-
-#: toplev.c:1051
-msgid "Perform enhanced load motion during global subexpression elimination"
-msgstr ""
-
-#: toplev.c:1053
-msgid "Perform store motion after global subexpression elimination"
-msgstr ""
-
-#: toplev.c:1055
-msgid "Perform the loop optimizations"
-msgstr ""
-
-#: toplev.c:1057
-msgid "Perform cross-jumping optimization"
-msgstr ""
-
-#: toplev.c:1059
-msgid "Perform conversion of conditional jumps to branchless equivalents"
-msgstr ""
-
-#: toplev.c:1061
-#, fuzzy
-msgid "Perform conversion of conditional jumps to conditional execution"
-msgstr "types in voorwaardelijke expressie komen niet overeen"
-
-#: toplev.c:1063
-msgid "Run CSE pass after loop optimizations"
-msgstr ""
-
-#: toplev.c:1065
-msgid "Run the loop optimizer twice"
-msgstr ""
-
-#: toplev.c:1067
-msgid "Delete useless null pointer checks"
-msgstr ""
-
-#: toplev.c:1069
-msgid "Reschedule instructions before register allocation"
-msgstr ""
-
-#: toplev.c:1071
-msgid "Reschedule instructions after register allocation"
-msgstr ""
-
-#: toplev.c:1073
-msgid "Enable scheduling across basic blocks"
-msgstr ""
-
-#: toplev.c:1075
-msgid "Allow speculative motion of non-loads"
-msgstr ""
-
-#: toplev.c:1077
-msgid "Allow speculative motion of some loads"
-msgstr ""
-
-#: toplev.c:1079
-msgid "Allow speculative motion of more loads"
-msgstr ""
-
-#: toplev.c:1081
-msgid "Replace add,compare,branch with branch on count reg"
-msgstr ""
-
-#: toplev.c:1083
-#, fuzzy
-msgid "Generate position independent code, if possible"
-msgstr "Positie-onafhankelijke code wordt niet ondersteund. Genegeerd"
-
-#: toplev.c:1086
-msgid "Enable exception handling"
-msgstr ""
-
-#: toplev.c:1088
-msgid "Just generate unwind tables for exception handling"
-msgstr ""
-
-#: toplev.c:1090
-msgid "Generate unwind tables exact at each instruction boundary"
-msgstr ""
-
-#: toplev.c:1092
-msgid "Support synchronous non-call exceptions"
-msgstr ""
-
-#: toplev.c:1094
-msgid "Insert arc based program profiling code"
-msgstr ""
-
-#: toplev.c:1096
-msgid "Create data files needed by gcov"
-msgstr ""
-
-#: toplev.c:1098
-msgid "Use profiling information for branch probabilities"
-msgstr ""
-
-#: toplev.c:1100
-msgid "Enable basic program profiling code"
-msgstr ""
-
-#: toplev.c:1102
-msgid "Reorder basic blocks to improve code placement"
-msgstr ""
-
-#: toplev.c:1104
-msgid "Reorder functions to improve code placement"
-msgstr ""
-
-#: toplev.c:1106
-msgid "Do the register renaming optimization pass"
-msgstr ""
-
-#: toplev.c:1108
-msgid "Do the register copy-propagation optimization pass"
-msgstr ""
-
-#: toplev.c:1110
-msgid "Do not put uninitialized globals in the common section"
-msgstr ""
-
-#: toplev.c:1112
-msgid "Do not generate .size directives"
-msgstr ""
-
-#: toplev.c:1114
-#, fuzzy
-msgid "place each function into its own section"
-msgstr "keer vermeld voor elke functie waarin hij staat.)"
-
-#: toplev.c:1116
-msgid "place data items into their own section"
-msgstr ""
-
-#: toplev.c:1118
-msgid "Add extra commentary to assembler output"
-msgstr ""
-
-#: toplev.c:1120
-msgid "Output GNU ld formatted global initializers"
-msgstr ""
-
-#: toplev.c:1122
-msgid "Enables a register move optimization"
-msgstr ""
-
-#: toplev.c:1124
-msgid "Do the full regmove optimization pass"
-msgstr ""
-
-#: toplev.c:1126
-msgid "Pack structure members together without holes"
-msgstr ""
-
-#: toplev.c:1128
-msgid "Insert stack checking code into the program"
-msgstr ""
-
-#: toplev.c:1130
-msgid "Specify that arguments may alias each other & globals"
-msgstr ""
-
-#: toplev.c:1132
-msgid "Assume arguments may alias globals but not each other"
-msgstr ""
-
-#: toplev.c:1134
-msgid "Assume arguments do not alias each other or globals"
-msgstr ""
-
-#: toplev.c:1136
-msgid "Assume strict aliasing rules apply"
-msgstr ""
-
-#: toplev.c:1138
-msgid "Align the start of loops"
-msgstr ""
-
-#: toplev.c:1140
-msgid "Align labels which are only reached by jumping"
-msgstr ""
-
-#: toplev.c:1142
-msgid "Align all labels"
-msgstr ""
-
-#: toplev.c:1144
-#, fuzzy
-msgid "Align the start of functions"
-msgstr "impliciete declaratie van functie `%s'"
-
-#: toplev.c:1146
-msgid "Attempt to merge identical constants across compilation units"
-msgstr ""
-
-#: toplev.c:1148
-msgid "Attempt to merge identical constants and constant variables"
-msgstr ""
-
-#: toplev.c:1150
-msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
-msgstr ""
-
-#: toplev.c:1152
-msgid "Instrument function entry/exit with profiling calls"
-msgstr ""
-
-#: toplev.c:1154
-msgid "Put zero initialized data in the bss section"
-msgstr ""
-
-#: toplev.c:1156
-msgid "Enable SSA optimizations"
-msgstr ""
-
-#: toplev.c:1158
-msgid "Enable SSA conditional constant propagation"
-msgstr ""
-
-#: toplev.c:1160
-msgid "Enable aggressive SSA dead code elimination"
-msgstr ""
-
-#: toplev.c:1162
-msgid "External symbols have a leading underscore"
-msgstr ""
-
-#: toplev.c:1164
-#, fuzzy
-msgid "Process #ident directives"
-msgstr "ongeldig preprocessing-commando"
-
-#: toplev.c:1166
-msgid "Enables an rtl peephole pass run before sched2"
-msgstr ""
-
-#: toplev.c:1168
-msgid "Assume no NaNs or +-Infs are generated"
-msgstr ""
-
-#: toplev.c:1170
-msgid "Enables guessing of branch probabilities"
-msgstr ""
-
-#: toplev.c:1172
-#, fuzzy
-msgid "Set errno after built-in math functions"
-msgstr "interne fout - slechte ingebouwde functie `%s'"
-
-#: toplev.c:1174
-#, fuzzy
-msgid "Floating-point operations can trap"
-msgstr "floating-point constante buiten bereik"
-
-#: toplev.c:1176
-msgid "Allow math optimizations that may violate IEEE or ANSI standards"
-msgstr ""
-
-#: toplev.c:1178
-msgid "Disable optimizations observable by IEEE signaling NaNs"
-msgstr ""
-
-#: toplev.c:1180
-msgid "Generate code to check bounds before indexing arrays"
-msgstr ""
-
-#: toplev.c:1182
-#, fuzzy
-msgid "Convert floating point constant to single precision constant"
-msgstr "floating-point fout bij het uitschrijven van een constante"
-
-#: toplev.c:1184
-msgid "Report time taken by each compiler pass at end of run"
-msgstr ""
-
-#: toplev.c:1186
-msgid "Report on permanent memory allocation at end of run"
-msgstr ""
-
-#: toplev.c:1188
-msgid "Trap for signed overflow in addition / subtraction / multiplication"
-msgstr ""
-
-#: toplev.c:1190
-msgid "Use graph coloring register allocation."
-msgstr ""
-
-#: toplev.c:1207
-msgid "Compile just for ISO C90"
-msgstr ""
-
-#: toplev.c:1209
-msgid "Determine language standard"
-msgstr ""
-
-#: toplev.c:1213
-msgid "Make bit-fields by unsigned by default"
-msgstr ""
-
-#: toplev.c:1217
-msgid "Make 'char' be signed by default"
-msgstr ""
-
-#: toplev.c:1219
-msgid "Make 'char' be unsigned by default"
-msgstr ""
-
-#: toplev.c:1225
-msgid "Do not recognize the 'asm' keyword"
+#: toplev.c:1226
+#, c-format
+msgid "%s "
msgstr ""
#: toplev.c:1228
-#, fuzzy
-msgid "Do not recognize any built in functions"
-msgstr "interne fout - slechte ingebouwde functie `%s'"
-
-#: toplev.c:1230
-msgid "Assume normal C execution environment"
-msgstr ""
-
-#: toplev.c:1233
-msgid "Assume that standard libraries & main might not exist"
-msgstr ""
-
-#: toplev.c:1236
-msgid "Allow different types as args of ? operator"
-msgstr ""
-
-#: toplev.c:1239
-msgid "Allow the use of $ inside identifiers"
-msgstr ""
-
-#: toplev.c:1244
-msgid "Use the same size for double as for float"
-msgstr ""
-
-#: toplev.c:1247
-msgid "Use the smallest fitting integer to hold enums"
-msgstr ""
-
-#: toplev.c:1250
-msgid "Override the underlying type for wchar_t to `unsigned short'"
-msgstr ""
-
-#: toplev.c:1254
-msgid "Enable most warning messages"
-msgstr ""
-
-#: toplev.c:1256
-#, fuzzy
-msgid "Warn about casting functions to incompatible types"
-msgstr "parameter wijst naar een onvolledig type"
-
-#: toplev.c:1259
-#, fuzzy
-msgid "Warn about functions which might be candidates for format attributes"
-msgstr "deze functie is een mogelijke kandidaat voor het `noreturn' attribuut"
-
-#: toplev.c:1262
-msgid "Warn about casts which discard qualifiers"
-msgstr ""
-
-#: toplev.c:1265
-#, fuzzy
-msgid "Warn about subscripts whose type is 'char'"
-msgstr "array subscript is van het type `char'"
-
-#: toplev.c:1268 toplev.c:1271
-msgid "Warn if nested comments are detected"
-msgstr ""
-
-#: toplev.c:1274
-msgid "Warn about possibly confusing type conversions"
-msgstr ""
-
-#: toplev.c:1278
-msgid "Do not warn about compile-time integer division by zero"
-msgstr ""
-
-#: toplev.c:1280
-msgid "Warn about testing equality of floating point numbers"
-msgstr ""
-
-#: toplev.c:1283
-msgid "Warn about printf/scanf/strftime/strfmon format anomalies"
-msgstr ""
-
-#: toplev.c:1287
-#, fuzzy
-msgid "Don't warn about too many arguments to format functions"
-msgstr "teveel argumenten voor functie"
-
-#: toplev.c:1289
-#, fuzzy
-msgid "Warn about non-string-literal format strings"
-msgstr "formaatstring niet beëindigd"
-
-#: toplev.c:1292
-msgid "Warn about possible security problems with format functions"
-msgstr ""
-
-#: toplev.c:1296
-msgid "Don't warn about strftime formats yielding 2 digit years"
-msgstr ""
-
-#: toplev.c:1298
-#, fuzzy
-msgid "Warn about implicit function declarations"
-msgstr "parameternamen (zonder types) in functiedeclaratie"
-
-#: toplev.c:1302
-msgid "Warn when a declaration does not specify a type"
-msgstr ""
-
-#: toplev.c:1307
-#, fuzzy
-msgid "Warn about the use of the #import directive"
-msgstr "lijnnummer buiten bereik in `#line'-commando"
-
-#: toplev.c:1311
-msgid "Do not warn about using 'long long' when -pedantic"
-msgstr ""
-
-#: toplev.c:1313
-#, fuzzy
-msgid "Warn about suspicious declarations of main"
-msgstr "geen eerdere declaratie voor `%s'"
-
-#: toplev.c:1316
-#, fuzzy
-msgid "Warn about possibly missing braces around initializers"
-msgstr "accolades ontbreken rond beginwaarde"
-
-#: toplev.c:1319
-#, fuzzy
-msgid "Warn about global funcs without previous declarations"
-msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie"
-
-#: toplev.c:1322
-msgid "Warn about global funcs without prototypes"
-msgstr ""
-
-#: toplev.c:1325
-msgid "Warn about use of multicharacter literals"
-msgstr ""
-
-#: toplev.c:1328
-msgid "Warn about externs not at file scope level"
-msgstr ""
-
-#: toplev.c:1331
-msgid "Warn about possible missing parentheses"
-msgstr ""
-
-#: toplev.c:1334
-#, fuzzy
-msgid "Warn about function pointer arithmetic"
-msgstr "pointer naar functie gebruikt in rekensom"
-
-#: toplev.c:1337
-#, fuzzy
-msgid "Warn about multiple declarations of the same object"
-msgstr "overbodige herdeclaratie van `%s' in zelfde bereik"
-
-#: toplev.c:1340
-#, fuzzy
-msgid "Warn whenever a function's return-type defaults to int"
-msgstr "teruggeefwaarde krijgt standaardtype `int'"
-
-#: toplev.c:1343
-msgid "Warn about possible violations of sequence point rules"
-msgstr ""
-
-#: toplev.c:1346
-msgid "Warn about signed/unsigned comparisons"
-msgstr ""
-
-#: toplev.c:1349
-#, fuzzy
-msgid "Warn about non-prototyped function decls"
-msgstr "niet-prototype definitie hier"
-
-#: toplev.c:1352
-#, fuzzy
-msgid "Warn about constructs whose meanings change in ISO C"
-msgstr "array subscript is van het type `char'"
-
-#: toplev.c:1355
-#, fuzzy
-msgid "Warn when trigraphs are encountered"
-msgstr "%lu trigraph(s) tegengekomen"
-
-#: toplev.c:1360
-msgid "Warn about unrecognized pragmas"
-msgstr ""
-
-#: toplev.c:1363
-#, fuzzy
-msgid "Mark strings as 'const char *'"
-msgstr "slechte stringconstante"
-
-#: toplev.c:1508
-msgid "Warn when a function is unused"
-msgstr ""
-
-#: toplev.c:1510
-msgid "Warn when a label is unused"
-msgstr ""
-
-#: toplev.c:1512
-msgid "Warn when a function parameter is unused"
-msgstr ""
-
-#: toplev.c:1514
-msgid "Warn when a variable is unused"
-msgstr ""
+#, fuzzy, c-format
+msgid " %s"
+msgstr "%s voor `%s'"
-#: toplev.c:1516
-msgid "Warn when an expression value is unused"
-msgstr ""
+#: toplev.c:1293
+#, fuzzy, c-format
+msgid "invalid option argument `%s'"
+msgstr "Ongeldige optie `%s'"
-#: toplev.c:1518
-msgid "Do not suppress warnings from system headers"
+#: toplev.c:1356
+#, c-format
+msgid "getting core file size maximum limit: %m"
msgstr ""
-#: toplev.c:1520
-msgid "Treat all warnings as errors"
+#: toplev.c:1359
+#, c-format
+msgid "setting core file size limit to maximum: %m"
msgstr ""
-#: toplev.c:1522
+#: toplev.c:1678
#, fuzzy
-msgid "Warn when one local variable shadows another"
-msgstr "De locale variabele `insn' heeft de waarde:"
-
-#: toplev.c:1524
-msgid "Warn about enumerated switches, with no default, missing a case"
-msgstr ""
-
-#: toplev.c:1526
-msgid "Warn about enumerated switches missing a default case"
-msgstr ""
-
-#: toplev.c:1528
-msgid "Warn about all enumerated switches missing a specific case"
-msgstr ""
-
-#: toplev.c:1530
-msgid "Warn about returning structures, unions or arrays"
-msgstr ""
-
-#: toplev.c:1532
-msgid "Warn about pointer casts which increase alignment"
-msgstr ""
-
-#: toplev.c:1534
-msgid "Warn about code that will never be executed"
-msgstr ""
+msgid "%J'%F' used but never defined"
+msgstr "label `%s' gebruikt maar niet gedefinieerd"
-#: toplev.c:1536
-msgid "Warn about uninitialized automatic variables"
+#: toplev.c:1680
+msgid "%J'%F' declared `static' but never defined"
msgstr ""
-#: toplev.c:1538
+#: toplev.c:1705
#, fuzzy
-msgid "Warn when an inlined function cannot be inlined"
-msgstr "kan functie `main' niet inline maken"
-
-#: toplev.c:1540
-msgid "Warn when the packed attribute has no effect on struct layout"
-msgstr ""
-
-#: toplev.c:1542
-msgid "Warn when padding is required to align struct members"
-msgstr ""
-
-#: toplev.c:1544
-msgid "Warn when an optimization pass is disabled"
-msgstr ""
+msgid "%J'%D' defined but not used"
+msgstr "label `%s' gedefinieerd maar niet gebruikt"
-#: toplev.c:1546
-msgid "Warn about uses of __attribute__((deprecated)) declarations"
+#: toplev.c:1726 toplev.c:1743
+#, c-format
+msgid "`%s' is deprecated (declared at %s:%d)"
msgstr ""
-#: toplev.c:1548
-#, fuzzy
-msgid "Warn about functions which might be candidates for attribute noreturn"
-msgstr "deze functie is een mogelijke kandidaat voor het `noreturn' attribuut"
-
-#: toplev.c:1550
-#, fuzzy
-msgid "Warn about code which might break the strict aliasing rules"
-msgstr "deze functie is een mogelijke kandidaat voor het `noreturn' attribuut"
-
-#: toplev.c:1627 toplev.c:4548 config/rs6000/rs6000.c:680
+#: toplev.c:1746
#, fuzzy, c-format
-msgid "invalid option `%s'"
-msgstr "Ongeldige optie `%s'"
-
-#: toplev.c:2031
-#, c-format
-msgid "`%s' used but never defined"
-msgstr ""
+msgid "`%s' is deprecated"
+msgstr "`%.*s' is niet gedefinieerd"
-#: toplev.c:2034
+#: toplev.c:1749
#, c-format
-msgid "`%s' declared `static' but never defined"
+msgid "type is deprecated (declared at %s:%d)"
msgstr ""
-#: toplev.c:2057
-#, c-format
-msgid "`%s' defined but not used"
+#: toplev.c:1752
+msgid "type is deprecated"
msgstr ""
-#: toplev.c:2280
+#: toplev.c:1956
#, c-format
msgid "invalid register name `%s' for register variable"
msgstr ""
-#: toplev.c:3697
-msgid " -ffixed-<register> Mark <register> as being unavailable to the compiler\n"
-msgstr ""
-
-#: toplev.c:3698
-msgid " -fcall-used-<register> Mark <register> as being corrupted by function calls\n"
-msgstr ""
-
-#: toplev.c:3699
-msgid " -fcall-saved-<register> Mark <register> as being preserved across functions\n"
-msgstr ""
-
-#: toplev.c:3700
-msgid " -finline-limit=<number> Limits the size of inlined functions to <number>\n"
-msgstr ""
-
-#: toplev.c:3701
-msgid " -fmessage-length=<number> Limits diagnostics messages lengths to <number> characters per line. 0 suppresses line-wrapping\n"
-msgstr ""
-
-#: toplev.c:3702
-msgid " -fdiagnostics-show-location=[once | every-line] Indicates how often source location information should be emitted, as prefix, at the beginning of diagnostics when line-wrapping\n"
-msgstr ""
-
-#: toplev.c:3703
-msgid " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indicates the default thread-local storage code generation model\n"
-msgstr ""
-
-#: toplev.c:3704
-msgid " -fstack-limit-register=<register> Trap if the stack goes past <register>\n"
-msgstr ""
-
-#: toplev.c:3705
-msgid " -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>\n"
-msgstr ""
-
-#: toplev.c:3706
-msgid " -frandom-seed=<string> Make compile reproducible using <string>\n"
-msgstr ""
-
-#: toplev.c:3718
-msgid " -O[number] Set optimization level to [number]\n"
-msgstr ""
-
-#: toplev.c:3719
-msgid " -Os Optimize for space rather than speed\n"
-msgstr ""
-
-#: toplev.c:3731
-msgid " -pedantic Issue warnings needed by strict compliance to ISO C\n"
-msgstr ""
-
-#: toplev.c:3732
-msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
-msgstr ""
-
-#: toplev.c:3733
-msgid " -w Suppress warnings\n"
-msgstr ""
-
-#: toplev.c:3734
-msgid " -W Enable extra warnings\n"
-msgstr ""
-
-#: toplev.c:3745
-msgid " -Wunused Enable unused warnings\n"
-msgstr ""
-
-#: toplev.c:3746
-msgid " -Wlarger-than-<number> Warn if an object is larger than <number> bytes\n"
+#: toplev.c:3522
+msgid "branch target register load optimization is not intended to be run twice"
msgstr ""
-#: toplev.c:3747
-msgid " -p Enable function profiling\n"
-msgstr ""
-
-#: toplev.c:3748
-msgid " -o <file> Place output into <file> \n"
-msgstr ""
-
-#: toplev.c:3749
-msgid ""
-" -G <number> Put global and static data smaller than <number>\n"
-" bytes into a special section (on some targets)\n"
-msgstr ""
-
-#: toplev.c:3760
-msgid " -aux-info <file> Emit declaration info into <file>\n"
-msgstr ""
-
-#: toplev.c:3761
-msgid " -quiet Do not display functions compiled or elapsed time\n"
-msgstr ""
-
-#: toplev.c:3762
-msgid " -version Display the compiler's version\n"
-msgstr ""
-
-#: toplev.c:3763
-msgid " -d[letters] Enable dumps from specific passes of the compiler\n"
-msgstr ""
-
-#: toplev.c:3764
-msgid " -dumpbase <file> Base name to be used for dumps from specific passes\n"
-msgstr ""
-
-#: toplev.c:3766
-msgid " -fsched-verbose=<number> Set the verbosity level of the scheduler\n"
-msgstr ""
-
-#: toplev.c:3768
-msgid " --help Display this information\n"
-msgstr ""
-
-#: toplev.c:3783
-msgid ""
-"\n"
-"Language specific options:\n"
-msgstr ""
-
-#: toplev.c:3795
-#, c-format
-msgid " %-23.23s [undocumented]\n"
-msgstr ""
-
-#: toplev.c:3803 toplev.c:3817
-#, c-format
-msgid ""
-"\n"
-"There are undocumented %s specific options as well.\n"
-msgstr ""
-
-#: toplev.c:3807
+#: toplev.c:3689
#, c-format
msgid ""
"\n"
-" Options for %s:\n"
-msgstr ""
-
-#: toplev.c:3844
-msgid ""
-"\n"
"Target specific options:\n"
msgstr ""
-#: toplev.c:3858 toplev.c:3877
+#: toplev.c:3703 toplev.c:3722
#, c-format
-msgid " -m%-23.23s [undocumented]\n"
+msgid " -m%-23s [undocumented]\n"
msgstr ""
-#: toplev.c:3886
+#: toplev.c:3731
+#, c-format
msgid ""
"\n"
"There are undocumented target specific options as well.\n"
msgstr ""
-#: toplev.c:3888
+#: toplev.c:3733
+#, c-format
msgid " They exist, but they are not documented.\n"
msgstr ""
-#: toplev.c:3941
+#: toplev.c:3788
#, c-format
msgid "unrecognized gcc debugging option: %c"
msgstr ""
-#: toplev.c:4007
-#, c-format
-msgid "`%s': unknown tls-model option"
-msgstr ""
-
-#: toplev.c:4034
-#, fuzzy, c-format
-msgid "unrecognized register name `%s'"
-msgstr "geen argumenten"
-
-#: toplev.c:4059 toplev.c:5012
-#, fuzzy, c-format
-msgid "unrecognized option `%s'"
-msgstr "onbekende formaatspecificatie"
-
-#: toplev.c:4107
-#, fuzzy
-msgid "-Wid-clash-LEN is no longer supported"
-msgstr "-pipe wordt niet ondersteund"
-
-#: toplev.c:4184
-#, c-format
-msgid "use -gdwarf -g%d for DWARF v1, level %d"
-msgstr ""
-
-#: toplev.c:4187
-msgid "use -gdwarf-2 for DWARF v2"
-msgstr ""
-
-#: toplev.c:4192
-#, c-format
-msgid "ignoring option `%s' due to invalid debug level specification"
-msgstr ""
-
-#: toplev.c:4215 toplev.c:5010
-#, c-format
-msgid "`%s': unknown or unsupported -g option"
-msgstr ""
-
-#: toplev.c:4222
-#, c-format
-msgid "`%s' ignored, conflicts with `-g%s'"
-msgstr ""
-
-#: toplev.c:4304
-msgid "-param option missing argument"
-msgstr ""
-
-#: toplev.c:4313
+#: toplev.c:3850 config/rs6000/rs6000.c:909
#, fuzzy, c-format
-msgid "invalid --param option: %s"
+msgid "invalid option `%s'"
msgstr "Ongeldige optie `%s'"
-#: toplev.c:4325
-#, fuzzy, c-format
-msgid "invalid parameter value `%s'"
-msgstr "ongeldige registernaam voor `%s'"
-
-#: toplev.c:4565
+#: toplev.c:3865
#, fuzzy, c-format
msgid ""
"%s%s%s version %s (%s)\n"
@@ -8178,540 +7204,694 @@ msgstr ""
"%s%s%s versie %s (%s) gecompileerd door GNU C versie %s.\n"
"%s%s%s versie %s (%s) gecompileerd door CC.\n"
-#: toplev.c:4572
+#: toplev.c:3872
#, c-format
msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
msgstr ""
-#: toplev.c:4630
+#: toplev.c:3924
msgid "options passed: "
msgstr "meegegeven opties: "
-#: toplev.c:4659
+#: toplev.c:3953
msgid "options enabled: "
msgstr "ingeschakelde opties: "
-#: toplev.c:4718 java/jcf-write.c:3453
+#: toplev.c:4011 java/jcf-write.c:3422
#, fuzzy, c-format
-msgid "can't open %s for writing"
+msgid "can't open %s for writing: %m"
msgstr "open %s"
-# Moet 'command line' vertaald worden?
-#: toplev.c:5002
-#, fuzzy, c-format
-msgid "ignoring command line option '%s'"
-msgstr "Foldernaam ontbreekt na command-line optie"
+#: toplev.c:4094 config/sh/sh.c:6883
+msgid "created and used with different settings of -fpic"
+msgstr ""
+
+#: toplev.c:4096 config/sh/sh.c:6885
+msgid "created and used with different settings of -fpie"
+msgstr ""
-#: toplev.c:5005
+#: toplev.c:4147 config/sh/sh.c:6935
#, c-format
-msgid "(it is valid for %s but not the selected language)"
+msgid "created and used with differing settings of `-m%s'"
msgstr ""
-#: toplev.c:5039
-msgid "-Wuninitialized is not supported without -O"
-msgstr "-Wuninitialized wordt niet ondersteund zonder -O"
+#: toplev.c:4150 config/sh/sh.c:6938
+msgid "out of memory"
+msgstr ""
-#: toplev.c:5094
+#: toplev.c:4331
msgid "instruction scheduling not supported on this target machine"
msgstr "instructie-scheduling wordt niet ondersteund op deze doelmachine"
-#: toplev.c:5098
+#: toplev.c:4335
msgid "this target machine does not have delayed branches"
msgstr "deze doelmachine heeft geen delayed branches"
-#: toplev.c:5112
+#: toplev.c:4349
#, c-format
msgid "-f%sleading-underscore not supported on this target machine"
msgstr "-f%sleading-underscore wordt niet ondersteund op deze doelmachine"
-#: toplev.c:5175
+#: toplev.c:4398
+#, fuzzy, c-format
+msgid "target system does not support the \"%s\" debug format"
+msgstr "%s ondersteunt het `%%%s%c' %s formaat niet"
+
+#: toplev.c:4415
#, fuzzy
msgid "-ffunction-sections not supported for this target"
msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem"
-#: toplev.c:5180
+#: toplev.c:4420
#, fuzzy
msgid "-fdata-sections not supported for this target"
msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem"
-#: toplev.c:5187
+#: toplev.c:4427
msgid "-ffunction-sections disabled; it makes profiling impossible"
msgstr ""
-#: toplev.c:5194
+#: toplev.c:4434
#, fuzzy
msgid "-fprefetch-loop-arrays not supported for this target"
msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem"
-#: toplev.c:5200
+#: toplev.c:4440
#, fuzzy
msgid "-fprefetch-loop-arrays not supported for this target (try -march switches)"
msgstr "-f%sleading-underscore wordt niet ondersteund op deze doelmachine"
-#: toplev.c:5209
+#: toplev.c:4449
#, fuzzy
msgid "-fprefetch-loop-arrays is not supported with -Os"
msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem"
-#: toplev.c:5215
+#: toplev.c:4455
msgid "-ffunction-sections may affect debugging on some targets"
msgstr ""
-#: toplev.c:5327
-#, c-format
-msgid "error writing to %s"
-msgstr ""
+#: toplev.c:4557
+#, fuzzy, c-format
+msgid "error writing to %s: %m"
+msgstr "kan bestand '%s' niet openen"
-#: toplev.c:5329 java/jcf-parse.c:936 java/jcf-write.c:3460
+#: toplev.c:4559 java/jcf-parse.c:902 java/jcf-write.c:3429
#, fuzzy, c-format
-msgid "error closing %s"
+msgid "error closing %s: %m"
msgstr "#error %s"
-#: tree-dump.c:702
+#: tree-dump.c:692
#, fuzzy, c-format
msgid "could not open dump file `%s'"
msgstr "kan bestand '%s' niet openen"
-#: tree-dump.c:778
+#: tree-dump.c:763
#, c-format
-msgid "ignoring unknown option `%.*s' in `-f%s'"
+msgid "ignoring unknown option `%.*s' in `-fdump-%s'"
+msgstr ""
+
+#: tree-inline.c:1016
+msgid "%Jfunction '%F' can never be inlined because it uses alloca (override using the always_inline attribute)"
+msgstr ""
+
+#: tree-inline.c:1029
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp"
+msgstr ""
+
+#: tree-inline.c:1044
+msgid "%Jfunction '%F' can never be inlined because it uses variable argument lists"
+msgstr ""
+
+#: tree-inline.c:1060
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp-longjmp exception handling"
msgstr ""
-#: tree.c:3645
+#: tree-inline.c:1078
+msgid "%Jfunction '%F' can never be inlined because it contains a nested function"
+msgstr ""
+
+#: tree-inline.c:1095
+msgid "%Jfunction '%F' can never be inlined because it contains a computed goto"
+msgstr ""
+
+#: tree-inline.c:1105
+msgid "%Jfunction '%F' can never be inlined because it contains a nonlocal goto"
+msgstr ""
+
+#: tree-inline.c:1128
+msgid "%Jfunction '%F' can never be inlined because it uses variable sized variables"
+msgstr ""
+
+#: tree-inline.c:1338 tree-inline.c:1345
+#, fuzzy
+msgid "%Jinlining failed in call to '%F': %s"
+msgstr "inline maken mislukt in oproep van `%s'"
+
+#: tree-optimize.c:190
+#, fuzzy
+msgid "%Jsize of return value of '%D' is %u bytes"
+msgstr "grootte van teruggeefwaarde van `%s' is %u bytes"
+
+#: tree-optimize.c:193
+#, fuzzy
+msgid "%Jsize of return value of '%D' is larger than %wd bytes"
+msgstr "grootte van teruggeefwaarde van `%s' is %u bytes"
+
+#: tree.c:3800
msgid "arrays of functions are not meaningful"
msgstr "arrays van functies zijn niet betekenisvol"
-#: tree.c:3702
+#: tree.c:3855
msgid "function return type cannot be function"
msgstr "de terugkeerwaarde van een functie kan geen funtie zijn"
-#: tree.c:4557
+#: tree.c:4684
msgid "invalid initializer for bit string"
msgstr "ongeldige beginwaarde voor bit-string"
-#: tree.c:4616
+#: tree.c:4736
#, c-format
msgid "tree check: expected %s, have %s in %s, at %s:%d"
msgstr ""
-#: tree.c:4633
+#: tree.c:4749
#, c-format
msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d"
msgstr ""
-#: tree.c:4650
+#: tree.c:4762
#, c-format
msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
msgstr ""
-#: varasm.c:455 config/i386/winnt.c:611
+#: tree.c:4774
#, c-format
-msgid "%s causes a section type conflict"
+msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
msgstr ""
-#: varasm.c:841
-#, c-format
-msgid "register name not specified for `%s'"
+#: varasm.c:434
+msgid "%J%D causes a section type conflict"
+msgstr ""
+
+#: varasm.c:796
+#, fuzzy
+msgid "%Jregister name not specified for '%D'"
msgstr "registernaam niet opgegeven voor `%s'"
-#: varasm.c:843
-#, c-format
-msgid "invalid register name for `%s'"
+#: varasm.c:798
+#, fuzzy
+msgid "%Jinvalid register name for '%D'"
msgstr "ongeldige registernaam voor `%s'"
-#: varasm.c:846
-#, c-format
-msgid "data type of `%s' isn't suitable for a register"
+#: varasm.c:800
+#, fuzzy
+msgid "%Jdata type of '%D' isn't suitable for a register"
msgstr "datatype van `%s' is niet geschikt voor een register"
-#: varasm.c:849
-#, fuzzy, c-format
-msgid "register specified for `%s' isn't suitable for data type"
+#: varasm.c:803
+#, fuzzy
+msgid "%Jregister specified for '%D' isn't suitable for data type"
msgstr "het registernummer voor `%s' is niet geschikt voor dat datatype"
-#: varasm.c:858
+#: varasm.c:813
msgid "global register variable has initial value"
msgstr "globale registervariabele heeft beginwaarde"
-#: varasm.c:861
+#: varasm.c:816
msgid "volatile register variables don't work as you might wish"
msgstr "'volatile' registervariabelen werken niet zoals U zou willen"
-#: varasm.c:894
-#, c-format
-msgid "register name given for non-register variable `%s'"
+#: varasm.c:848
+#, fuzzy
+msgid "%Jregister name given for non-register variable '%D'"
msgstr "registernaam opgegeven voor niet-registervariabele `%s'"
-#: varasm.c:1542
-#, fuzzy, c-format
-msgid "alignment of `%s' is greater than maximum object file alignment. Using %d"
+#: varasm.c:1380
+#, fuzzy
+msgid "%Jstorage size of `%D' isn't known"
+msgstr "opslaggrootte van `%s' is onbekend"
+
+#: varasm.c:1434
+#, fuzzy
+msgid "%Jalignment of '%D' is greater than maximum object file alignment. Using %d"
msgstr "alignment van `%s' is groter dan het maximale alignment van het objectbestand. %d wordt gebruikt."
-#: varasm.c:1584
+#: varasm.c:1480
msgid "thread-local COMMON data not implemented"
msgstr ""
-#: varasm.c:1610
-#, fuzzy, c-format
-msgid "requested alignment for %s is greater than implemented alignment of %d"
+#: varasm.c:1505
+#, fuzzy
+msgid "%Jrequested alignment for '%D' is greater than implemented alignment of %d"
msgstr "het gevraagde alignment voor %s is groter dan het geïmplementeerde aligment van %d."
-#: varasm.c:4048
+#: varasm.c:3787
msgid "initializer for integer value is too complicated"
msgstr "initializer voor integerwaarde is te ingewikkeld"
-#: varasm.c:4053
+#: varasm.c:3792
msgid "initializer for floating value is not a floating constant"
msgstr "initializer voor floating-point waarde is geen floating-point constante"
-#: varasm.c:4120
+#: varasm.c:3858
msgid "unknown set constructor type"
msgstr "onbekend type verzameling-constructor"
-#: varasm.c:4334
+#: varasm.c:4077
#, c-format
msgid "invalid initial value for member `%s'"
msgstr "ongeldige beginwaarde voor member `%s'"
-#: varasm.c:4525 varasm.c:4568
-#, c-format
-msgid "weak declaration of `%s' must precede definition"
+#: varasm.c:4264 varasm.c:4308
+#, fuzzy
+msgid "%Jweak declaration of '%D' must precede definition"
msgstr "de zwakke declaratie van `%s' moet aan de definitie voorafgaan"
-#: varasm.c:4532
-#, fuzzy, c-format
-msgid "weak declaration of `%s' after first use results in unspecified behavior"
+#: varasm.c:4272
+#, fuzzy
+msgid "%Jweak declaration of '%D' after first use results in unspecified behavior"
msgstr "de zwakke declaratie van `%s' moet aan de definitie voorafgaan"
-#: varasm.c:4566
-#, c-format
-msgid "weak declaration of `%s' must be public"
+#: varasm.c:4306
+#, fuzzy
+msgid "%Jweak declaration of '%D' must be public"
msgstr "de zwakke declaratie van `%s' moet publiek zijn"
-#: varasm.c:4575
-#, fuzzy, c-format
-msgid "weak declaration of `%s' not supported"
+#: varasm.c:4315
+#, fuzzy
+msgid "%Jweak declaration of '%D' not supported"
msgstr "de zwakke declaratie van `%s' moet publiek zijn"
-#: varasm.c:4602 varasm.c:4677
+#: varasm.c:4344 varasm.c:4434
msgid "only weak aliases are supported in this configuration"
msgstr "enkel zwakke aliasen worden in deze configuratie ondersteund"
-#: varasm.c:4685
+#: varasm.c:4437
msgid "alias definitions not supported in this configuration; ignored"
msgstr "alias-definities worden niet ondersteund in deze configuratie; genegeerd"
-#: varasm.c:4716
+#: varasm.c:4466
#, fuzzy
msgid "visibility attribute not supported in this configuration; ignored"
msgstr "alias-definities worden niet ondersteund in deze configuratie; genegeerd"
-#: varray.c:134
+#: varray.c:194
#, c-format
msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d"
msgstr ""
+#: varray.c:204
+#, c-format
+msgid "underflowed virtual array %s in %s, at %s:%d"
+msgstr ""
+
#. Print an error message for unrecognized stab codes.
-#: xcoffout.c:175
+#: xcoffout.c:173
#, c-format
msgid "no sclass for %s stab (0x%x)\n"
msgstr ""
-#: pretty-print.h:97
-#, fuzzy, c-format
-msgid "#`%s' not supported by %s#"
-msgstr "-pipe wordt niet ondersteund"
+#.
+#. Local variables:
+#. mode:c
+#. End:
+#.
+#: diagnostic.def:1
+#, fuzzy
+msgid "fatal error: "
+msgstr "interne fout"
-#: params.def:53
-msgid "The maximum number of instructions in a single function eligible for inlining"
+#: diagnostic.def:2
+#, fuzzy
+msgid "internal compiler error: "
+msgstr "interne fout"
+
+#: diagnostic.def:3
+#, fuzzy
+msgid "error: "
+msgstr "interne fout"
+
+#: diagnostic.def:4
+msgid "sorry, unimplemented: "
msgstr ""
-#: params.def:65
-msgid "The maximum number of instructions when automatically inlining"
+#: diagnostic.def:6
+msgid "anachronism: "
msgstr ""
-#: params.def:84
-msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
+#: diagnostic.def:7
+msgid "note: "
msgstr ""
-#: params.def:97
-msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
+#: diagnostic.def:8
+msgid "debug: "
+msgstr ""
+
+#: params.def:53
+msgid "The maximum number of instructions in a single function eligible for inlining"
msgstr ""
-#: params.def:110
-msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
+#: params.def:65
+msgid "The maximum number of instructions when automatically inlining"
msgstr ""
-#: params.def:120
+#: params.def:75
msgid "The maximum number of instructions for the RTL inliner"
msgstr ""
-#: params.def:131
+#: params.def:86
msgid "The maximum number of instructions to consider to fill a delay slot"
msgstr ""
-#: params.def:142
+#: params.def:97
msgid "The maximum number of instructions to consider to find accurate live register information"
msgstr ""
-#: params.def:152
+#: params.def:107
msgid "The maximum length of scheduling's pending operations list"
msgstr ""
-#: params.def:159
+#: params.def:112
+msgid "The size of function body to be considered large"
+msgstr ""
+
+#: params.def:116
+msgid "Maximal growth due to inlining of large function (in percent)"
+msgstr ""
+
+#: params.def:120
+msgid "how much can given compilation unit grow because of the inlining (in percent)"
+msgstr ""
+
+#: params.def:127
msgid "The maximum amount of memory to be allocated by GCSE"
msgstr ""
-#: params.def:164
+#: params.def:132
msgid "The maximum number of passes to make when doing GCSE"
msgstr ""
-#: params.def:171
+#: params.def:139
msgid "The maximum number of instructions to consider to unroll in a loop"
msgstr ""
-#: params.def:176
-msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
+#: params.def:145
+msgid "The maximum number of instructions to consider to unroll in a loop on average"
+msgstr ""
+
+#: params.def:150
+msgid "The maximum number of unrollings of a single loop"
+msgstr ""
+
+#: params.def:155
+msgid "The maximum number of insns of a peeled loop"
+msgstr ""
+
+#: params.def:160
+msgid "The maximum number of peelings of a single loop"
+msgstr ""
+
+#: params.def:165
+msgid "The maximum number of insns of a completely peeled loop"
+msgstr ""
+
+#: params.def:170
+msgid "The maximum number of peelings of a single loop that is peeled completely"
+msgstr ""
+
+#: params.def:175
+msgid "The maximum number of insns of a peeled loop that rolls only once"
msgstr ""
#: params.def:181
-msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
+msgid "The maximum number of insns of an unswitched loop"
msgstr ""
#: params.def:186
-msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
+msgid "The maximum number of unswitchings in a single loop"
msgstr ""
#: params.def:191
-msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
+msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
msgstr ""
#: params.def:196
-msgid "Maximal code growth caused by tail duplication (in percents)"
+msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
msgstr ""
-#: params.def:200
-msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percents)"
+#: params.def:201
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
+msgstr ""
+
+#: params.def:206
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
+msgstr ""
+
+#: params.def:211
+msgid "Maximal code growth caused by tail duplication (in percent)"
msgstr ""
-#: params.def:205
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is available"
+#: params.def:215
+msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent)"
msgstr ""
-#: params.def:210
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is not available"
+#: params.def:220
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is available"
msgstr ""
-#: params.def:217
+#: params.def:225
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is not available"
+msgstr ""
+
+#: params.def:232
msgid "The maximum number of incoming edges to consider for crossjumping"
msgstr ""
-#: params.def:230
-msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap."
+#: params.def:238
+msgid "The maximum length of path considered in cse"
+msgstr ""
+
+#: params.def:243
+msgid "The maximum memory locations recorded by cselib"
+msgstr ""
+
+#: params.def:256
+msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap"
msgstr ""
-#: params.def:236
-msgid "Minimum heap size before we start collecting garbage, in kilobytes."
+#: params.def:262
+msgid "Minimum heap size before we start collecting garbage, in kilobytes"
+msgstr ""
+
+#: params.def:270
+msgid "The maximum number of instructions to search backward when looking for equivalent reload"
msgstr ""
#: config/darwin-c.c:75
msgid "too many #pragma options align=reset"
msgstr ""
-#: config/darwin-c.c:97 config/darwin-c.c:100 config/darwin-c.c:102
-#: config/darwin-c.c:104
+#: config/darwin-c.c:95 config/darwin-c.c:98 config/darwin-c.c:100
+#: config/darwin-c.c:102
#, fuzzy
msgid "malformed '#pragma options', ignoring"
msgstr "misvormde #pragma pack"
# Moet 'signature-string' vertaald worden?
-#: config/darwin-c.c:107
+#: config/darwin-c.c:105
#, fuzzy
msgid "junk at end of '#pragma options'"
msgstr "Brol aan einde van signature-string."
-#: config/darwin-c.c:117
+#: config/darwin-c.c:115
msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring"
msgstr ""
-#: config/darwin-c.c:130
+#: config/darwin-c.c:127
msgid "missing '(' after '#pragma unused', ignoring"
msgstr ""
-#: config/darwin-c.c:148
+#: config/darwin-c.c:145
msgid "missing ')' after '#pragma unused', ignoring"
msgstr ""
# Moet 'signature-string' vertaald worden?
-#: config/darwin-c.c:151
+#: config/darwin-c.c:148
#, fuzzy
msgid "junk at end of '#pragma unused'"
msgstr "Brol aan einde van signature-string."
-#: config/lynx-ng.h:97 config/lynx.h:121 config/rs6000/lynx.h:100
+#: config/darwin.c:1347
+#, fuzzy
+msgid "internal and protected visibility attributes not supportedin this configuration; ignored"
+msgstr "alias-definities worden niet ondersteund in deze configuratie; genegeerd"
+
+#: config/lynx-ng.h:97 config/lynx.h:116 config/rs6000/lynx.h:73
#, fuzzy
msgid "-msystem-v and -p are incompatible"
msgstr "-mbsd en -mxopen zijn niet compatibel"
-#: config/lynx-ng.h:99 config/lynx.h:123 config/rs6000/lynx.h:102
+#: config/lynx-ng.h:99 config/lynx.h:118 config/rs6000/lynx.h:75
#, fuzzy
msgid "-msystem-v and -mthreads are incompatible"
msgstr "-mbsd en -pedantic zijn niet compatibel"
-#: config/alpha/alpha.c:342
+#: config/windiss.h:37
+msgid "profiler support for WindISS"
+msgstr ""
+
+#: config/alpha/alpha.c:231
#, fuzzy, c-format
msgid "-f%s ignored for Unicos/Mk (not supported)"
msgstr "-pipe wordt niet ondersteund"
-#: config/alpha/alpha.c:366
+#: config/alpha/alpha.c:255
#, fuzzy
msgid "-mieee not supported on Unicos/Mk"
msgstr "-pipe wordt niet ondersteund"
-#: config/alpha/alpha.c:377
+#: config/alpha/alpha.c:266
msgid "-mieee-with-inexact not supported on Unicos/Mk"
msgstr ""
-#: config/alpha/alpha.c:394
+#: config/alpha/alpha.c:283
#, c-format
msgid "bad value `%s' for -mtrap-precision switch"
msgstr "slechte waarde `%s' voor optie -mtrap-precision"
-#: config/alpha/alpha.c:408
+#: config/alpha/alpha.c:297
#, c-format
msgid "bad value `%s' for -mfp-rounding-mode switch"
msgstr "slechte waarde `%s' voor optie -mfp-rounding-mode"
-#: config/alpha/alpha.c:423
+#: config/alpha/alpha.c:312
#, c-format
msgid "bad value `%s' for -mfp-trap-mode switch"
msgstr "slechte waarde `%s' voor optie -mfp-trap-mode"
-#: config/alpha/alpha.c:435
+#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1063
#, fuzzy, c-format
msgid "bad value `%s' for -mtls-size switch"
msgstr "slechte waarde `%s' voor optie -mcpu"
-#: config/alpha/alpha.c:454 config/alpha/alpha.c:466
+#: config/alpha/alpha.c:343 config/alpha/alpha.c:355
#, c-format
msgid "bad value `%s' for -mcpu switch"
msgstr "slechte waarde `%s' voor optie -mcpu"
-#: config/alpha/alpha.c:473
+#: config/alpha/alpha.c:362
#, fuzzy
msgid "trap mode not supported on Unicos/Mk"
msgstr "trapmodus niet ondersteund voor VAX-floats"
-#: config/alpha/alpha.c:480
+#: config/alpha/alpha.c:369
msgid "fp software completion requires -mtrap-precision=i"
msgstr "fp vervollediging in software heeft -mtrap-precision=i nodig"
-#: config/alpha/alpha.c:496
+#: config/alpha/alpha.c:385
msgid "rounding mode not supported for VAX floats"
msgstr "afrondingsmodus niet ondersteund voor VAX-floats"
-#: config/alpha/alpha.c:501
+#: config/alpha/alpha.c:390
msgid "trap mode not supported for VAX floats"
msgstr "trapmodus niet ondersteund voor VAX-floats"
# goed Nederlands voor 'latency'
-#: config/alpha/alpha.c:530
+#: config/alpha/alpha.c:419
#, c-format
msgid "L%d cache latency unknown for %s"
msgstr "L%d cache-latency niet gekend voor %s"
-#: config/alpha/alpha.c:545
+#: config/alpha/alpha.c:434
#, c-format
msgid "bad value `%s' for -mmemory-latency"
msgstr "slechte waarde `%s' voor -mmeroy-latency"
-#: config/alpha/alpha.c:5604 config/m88k/m88k.c:2889 config/romp/romp.c:754
-#: config/romp/romp.c:761
+#: config/alpha/alpha.c:5411
#, c-format
msgid "invalid %%H value"
msgstr ""
-#: config/alpha/alpha.c:5625
+#: config/alpha/alpha.c:5432
#, fuzzy, c-format
msgid "invalid %%J value"
msgstr "ongeldige waarde voor %%E"
-#: config/alpha/alpha.c:5641 config/ia64/ia64.c:3970 config/m88k/m88k.c:3034
+#: config/alpha/alpha.c:5448 config/ia64/ia64.c:4243
#, c-format
msgid "invalid %%r value"
msgstr "ongeldige waarde voor %%r"
-#: config/alpha/alpha.c:5651 config/rs6000/rs6000.c:7737
+#: config/alpha/alpha.c:5458 config/rs6000/rs6000.c:8944
+#: config/xtensa/xtensa.c:1999
#, c-format
msgid "invalid %%R value"
msgstr "ongeldige waarde voor %%R"
-#: config/alpha/alpha.c:5657 config/rs6000/rs6000.c:7663
+#: config/alpha/alpha.c:5464 config/rs6000/rs6000.c:8863
+#: config/xtensa/xtensa.c:1966
#, c-format
msgid "invalid %%N value"
msgstr "ongeldige waarde voor %%N"
-#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:7691
+#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:8891
#, c-format
msgid "invalid %%P value"
msgstr "ongeldige waarde voor %%P"
-#: config/alpha/alpha.c:5673 config/m88k/m88k.c:2895 config/romp/romp.c:740
-#: config/romp/romp.c:747
+#: config/alpha/alpha.c:5480
#, c-format
msgid "invalid %%h value"
msgstr "ongeldige waarde voor %%h"
-#: config/alpha/alpha.c:5681 config/romp/romp.c:698
+#: config/alpha/alpha.c:5488 config/xtensa/xtensa.c:1992
#, c-format
msgid "invalid %%L value"
msgstr "ongeldige waarde voor %%L"
-#: config/alpha/alpha.c:5720 config/rs6000/rs6000.c:7645
+#: config/alpha/alpha.c:5527 config/rs6000/rs6000.c:8845
#, c-format
msgid "invalid %%m value"
msgstr "ongeldige waarde voor %%m"
-#: config/alpha/alpha.c:5728 config/rs6000/rs6000.c:7653
+#: config/alpha/alpha.c:5535 config/rs6000/rs6000.c:8853
#, c-format
msgid "invalid %%M value"
msgstr "ongeldige waarde voor %%M"
-#: config/alpha/alpha.c:5772
+#: config/alpha/alpha.c:5579
#, c-format
msgid "invalid %%U value"
msgstr "ongeldige waarde voor %%U"
-#: config/alpha/alpha.c:5784 config/alpha/alpha.c:5798 config/romp/romp.c:706
-#: config/rs6000/rs6000.c:7745
+#: config/alpha/alpha.c:5591 config/alpha/alpha.c:5605
+#: config/rs6000/rs6000.c:8952
#, c-format
msgid "invalid %%s value"
msgstr "ongeldige waarde voor %%s"
-#: config/alpha/alpha.c:5821 config/m88k/m88k.c:2997
+#: config/alpha/alpha.c:5628
#, c-format
msgid "invalid %%C value"
msgstr "ongeldige waarde voor %%C"
-#: config/alpha/alpha.c:5858 config/m88k/m88k.c:3018
-#: config/rs6000/rs6000.c:7502
+#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:8702
#, c-format
msgid "invalid %%E value"
msgstr "ongeldige waarde voor %%E"
-#: config/alpha/alpha.c:5883 config/alpha/alpha.c:5933
+#: config/alpha/alpha.c:5690 config/alpha/alpha.c:5738
#, fuzzy
msgid "unknown relocation unspec"
msgstr "onbekend type verzameling-constructor"
-#: config/alpha/alpha.c:5892 config/romp/romp.c:981
-#: config/rs6000/rs6000.c:8052
+#: config/alpha/alpha.c:5699 config/rs6000/rs6000.c:9265
#, c-format
msgid "invalid %%xn code"
msgstr "ongeldige code voor %%xn"
-#: config/alpha/alpha.c:6618 config/alpha/alpha.c:6621 config/s390/s390.c:6069
-#: config/s390/s390.c:6072
+#: config/alpha/alpha.c:6634 config/alpha/alpha.c:6637 config/s390/s390.c:6572
+#: config/s390/s390.c:6575
msgid "bad builtin fcode"
msgstr ""
@@ -8720,88 +7900,100 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/alpha/alpha.h:279 config/i386/i386.h:294 config/i386/i386.h:296
-#: config/i386/i386.h:298 config/ns32k/ns32k.h:140 config/rs6000/rs6000.h:292
-#: config/s390/s390.h:68 config/sparc/sparc.h:522 config/sparc/sparc.h:527
+#. WARNING: Do not mark empty strings for translation, as calling
+#. gettext on an empty string does NOT return an empty
+#. string.
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/alpha/alpha.h:286 config/i386/i386.h:327 config/i386/i386.h:329
+#: config/i386/i386.h:331 config/ns32k/ns32k.h:140 config/s390/s390.h:124
+#: config/sparc/sparc.h:537 config/sparc/sparc.h:542
msgid "Use hardware fp"
msgstr ""
-#: config/alpha/alpha.h:280 config/i386/i386.h:295 config/i386/i386.h:297
-#: config/rs6000/rs6000.h:294 config/sparc/sparc.h:524
-#: config/sparc/sparc.h:529
+#: config/alpha/alpha.h:287 config/i386/i386.h:328 config/i386/i386.h:330
+#: config/sparc/sparc.h:539 config/sparc/sparc.h:544
msgid "Do not use hardware fp"
msgstr ""
-#: config/alpha/alpha.h:281
+#: config/alpha/alpha.h:288
msgid "Use fp registers"
msgstr ""
-#: config/alpha/alpha.h:283
+#: config/alpha/alpha.h:290
msgid "Do not use fp registers"
msgstr ""
-#: config/alpha/alpha.h:284
+#: config/alpha/alpha.h:291
msgid "Do not assume GAS"
msgstr ""
-#: config/alpha/alpha.h:285
+#: config/alpha/alpha.h:292
msgid "Assume GAS"
msgstr ""
-#: config/alpha/alpha.h:287
+#: config/alpha/alpha.h:294
msgid "Request IEEE-conformant math library routines (OSF/1)"
msgstr ""
-#: config/alpha/alpha.h:289
+#: config/alpha/alpha.h:296
msgid "Emit IEEE-conformant code, without inexact exceptions"
msgstr ""
-#: config/alpha/alpha.h:291
+#: config/alpha/alpha.h:298
msgid "Emit IEEE-conformant code, with inexact exceptions"
msgstr ""
-#: config/alpha/alpha.h:293
+#: config/alpha/alpha.h:300
#, fuzzy
msgid "Do not emit complex integer constants to read-only memory"
msgstr "complexe integerconstante is te breed voor `complex int'"
-#: config/alpha/alpha.h:294
+#: config/alpha/alpha.h:301
msgid "Use VAX fp"
msgstr ""
-#: config/alpha/alpha.h:295
+#: config/alpha/alpha.h:302
msgid "Do not use VAX fp"
msgstr ""
-#: config/alpha/alpha.h:296
+#: config/alpha/alpha.h:303
msgid "Emit code for the byte/word ISA extension"
msgstr ""
-#: config/alpha/alpha.h:299
+#: config/alpha/alpha.h:306
msgid "Emit code for the motion video ISA extension"
msgstr ""
-#: config/alpha/alpha.h:302
+#: config/alpha/alpha.h:309
msgid "Emit code for the fp move and sqrt ISA extension"
msgstr ""
-#: config/alpha/alpha.h:304
+#: config/alpha/alpha.h:311
msgid "Emit code for the counting ISA extension"
msgstr ""
-#: config/alpha/alpha.h:307
+#: config/alpha/alpha.h:314
msgid "Emit code using explicit relocation directives"
msgstr ""
-#: config/alpha/alpha.h:310
+#: config/alpha/alpha.h:317
msgid "Emit 16-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:312
+#: config/alpha/alpha.h:319
msgid "Emit 32-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:314
+#: config/alpha/alpha.h:321
+#, fuzzy
+msgid "Emit direct branches to local functions"
+msgstr "impliciete declaratie van functie `%s'"
+
+#: config/alpha/alpha.h:324
msgid "Emit rdval instead of rduniq for thread pointer"
msgstr ""
@@ -8812,65 +8004,65 @@ msgstr ""
#. For -mtrap-precision=[p|f|i]
#. For -mmemory-latency=
#. For -mtls-size=
-#: config/alpha/alpha.h:343
+#: config/alpha/alpha.h:353
msgid "Use features of and schedule given CPU"
msgstr ""
-#: config/alpha/alpha.h:345
+#: config/alpha/alpha.h:355
msgid "Schedule given CPU"
msgstr ""
-#: config/alpha/alpha.h:347
+#: config/alpha/alpha.h:357
msgid "Control the generated fp rounding mode"
msgstr ""
-#: config/alpha/alpha.h:349
+#: config/alpha/alpha.h:359
msgid "Control the IEEE trap mode"
msgstr ""
-#: config/alpha/alpha.h:351
+#: config/alpha/alpha.h:361
msgid "Control the precision given to fp exceptions"
msgstr ""
-#: config/alpha/alpha.h:353
+#: config/alpha/alpha.h:363
msgid "Tune expected memory latency"
msgstr ""
-#: config/alpha/alpha.h:355 config/ia64/ia64.h:225
+#: config/alpha/alpha.h:365 config/ia64/ia64.h:267 config/rs6000/sysv4.h:90
msgid "Specify bit size of immediate TLS offsets"
msgstr ""
-#: config/arc/arc.c:135
+#: config/arc/arc.c:147
#, c-format
msgid "bad value (%s) for -mcpu switch"
msgstr "slechte waarde (%s) voor optie -mcpu"
-#: config/arc/arc.c:362
+#: config/arc/arc.c:369
#, fuzzy, c-format
msgid "argument of `%s' attribute is not a string constant"
msgstr "het argument van `asm' is geen constante string"
-#: config/arc/arc.c:369
+#: config/arc/arc.c:376
#, c-format
msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\""
msgstr ""
-#: config/arc/arc.c:1708 config/m32r/m32r.c:2286
+#: config/arc/arc.c:1714 config/m32r/m32r.c:2325
#, fuzzy, c-format
msgid "invalid operand to %%R code"
msgstr "ongeldige operand voor %R-code"
-#: config/arc/arc.c:1740 config/m32r/m32r.c:2309
+#: config/arc/arc.c:1746 config/m32r/m32r.c:2348
#, fuzzy, c-format
msgid "invalid operand to %%H/%%L code"
msgstr "ongeldige operand voor %H/%L-code"
-#: config/arc/arc.c:1763 config/m32r/m32r.c:2385
+#: config/arc/arc.c:1769 config/m32r/m32r.c:2419
#, fuzzy, c-format
msgid "invalid operand to %%U code"
msgstr "ongeldige operand voor %U-code"
-#: config/arc/arc.c:1774
+#: config/arc/arc.c:1780
#, fuzzy, c-format
msgid "invalid operand to %%V code"
msgstr "ongeldige operand voor %V-code"
@@ -8878,233 +8070,256 @@ msgstr "ongeldige operand voor %V-code"
# Hoe moet dit exact geïnterpreteerd worden?
# Zowel 'operand van uitvoercode' als 'code voor operanduitvoer' is mogelijk.
#. Unknown flag.
-#: config/arc/arc.c:1781 config/m32r/m32r.c:2424 config/sparc/sparc.c:6533
+#. Undocumented flag.
+#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985
msgid "invalid operand output code"
msgstr "ongeldige operand voor uitvoercode"
-#: config/arm/arm.c:458
+#: config/arm/arm.c:520
#, fuzzy, c-format
msgid "switch -mcpu=%s conflicts with -march= switch"
msgstr "optie -mcpu=%s geeft conflicten met optie -mtune="
-#: config/arm/arm.c:468 config/rs6000/rs6000.c:558 config/sparc/sparc.c:393
+#: config/arm/arm.c:530 config/rs6000/rs6000.c:759 config/sparc/sparc.c:424
#, c-format
msgid "bad value (%s) for %s switch"
msgstr "slechte waarde (%s) foor optie %s"
-#: config/arm/arm.c:604
+#: config/arm/arm.c:672
msgid "target CPU does not support APCS-32"
msgstr "doel-CPU ondersteunt APCS-32 niet"
-#: config/arm/arm.c:609
+#: config/arm/arm.c:677
msgid "target CPU does not support APCS-26"
msgstr "doel-CPU ondersteunt APCS-26 niet"
-#: config/arm/arm.c:615
+#: config/arm/arm.c:683
msgid "target CPU does not support interworking"
msgstr "doel-CPU ondersteunt geen interworking"
-#: config/arm/arm.c:621
+#: config/arm/arm.c:689
#, fuzzy
msgid "target CPU does not support THUMB instructions"
msgstr "doel-CPU ondersteunt geen interworking"
-#: config/arm/arm.c:635
+#: config/arm/arm.c:703
msgid "enabling backtrace support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:638
+#: config/arm/arm.c:706
msgid "enabling callee interworking support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:641
+#: config/arm/arm.c:709
msgid "enabling caller interworking support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:647
+#: config/arm/arm.c:715
msgid "interworking forces APCS-32 to be used"
msgstr "interworking forceert het gebruikt van APCS-32"
-#: config/arm/arm.c:653
+#: config/arm/arm.c:721
msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
msgstr "-mapcs-stack-check is niet compatibel met -mno-apcs-frame"
-#: config/arm/arm.c:661
+#: config/arm/arm.c:729
msgid "-fpic and -mapcs-reent are incompatible"
msgstr "-fpic en -mapcs-reent zijn niet compatibel"
-#: config/arm/arm.c:664
+#: config/arm/arm.c:732
msgid "APCS reentrant code not supported. Ignored"
msgstr "APCS reentrant code wordt niet ondersteund. Genegeerd"
-#: config/arm/arm.c:672
+#: config/arm/arm.c:740
#, fuzzy
msgid "-g with -mno-apcs-frame may not give sensible debugging"
msgstr "-g met -fomit-frame-pointer geeft mogelijk geen fatsoenlijke debug-mogelijkheden"
-#: config/arm/arm.c:680
+#: config/arm/arm.c:748
#, fuzzy
msgid "passing floating point arguments in fp regs not yet supported"
msgstr "Het doorgeven van floating-point argumenten in fp registers wordt nog niet ondersteund"
-#: config/arm/arm.c:709
+#: config/arm/arm.c:792
#, fuzzy, c-format
msgid "invalid floating point emulation option: -mfpe-%s"
msgstr "Ongeldige optie voor floating-point emulatie: -mfpe-%s"
-#: config/arm/arm.c:733
+#: config/arm/arm.c:803
+msgid "-mfpe switch not supported by ep9312 target cpu - ignored."
+msgstr ""
+
+#: config/arm/arm.c:823
#, fuzzy
msgid "structure size boundary can only be set to 8 or 32"
msgstr "Grens voor structure-grootte kan enkel op 8 of 32 insgesteld worden"
-#: config/arm/arm.c:741
+#: config/arm/arm.c:831
msgid "-mpic-register= is useless without -fpic"
msgstr ""
-#: config/arm/arm.c:748
+#: config/arm/arm.c:838
#, c-format
msgid "unable to use '%s' for PIC register"
msgstr ""
-#: config/arm/arm.c:2064 config/arm/arm.c:2087 config/avr/avr.c:4794
-#: config/c4x/c4x.c:4644 config/h8300/h8300.c:3667 config/i386/i386.c:1396
-#: config/i386/i386.c:1425 config/ip2k/ip2k.c:3224
-#: config/m68hc11/m68hc11.c:1267 config/mcore/mcore.c:3510
-#: config/ns32k/ns32k.c:1047 config/rs6000/rs6000.c:12538 config/sh/sh.c:5681
-#: config/sh/sh.c:5706 config/sh/sh.c:5745 config/stormy16/stormy16.c:2026
-#: config/v850/v850.c:2180
+#: config/arm/arm.c:2246 config/arm/arm.c:2264 config/avr/avr.c:4558
+#: config/c4x/c4x.c:4447 config/h8300/h8300.c:4257 config/i386/i386.c:1571
+#: config/i386/i386.c:1617 config/ip2k/ip2k.c:3169
+#: config/m68hc11/m68hc11.c:1227 config/m68k/m68k.c:333
+#: config/mcore/mcore.c:3375 config/ns32k/ns32k.c:1064
+#: config/rs6000/rs6000.c:14556 config/sh/sh.c:6737 config/sh/sh.c:6758
+#: config/sh/sh.c:6793 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173
#, fuzzy, c-format
msgid "`%s' attribute only applies to functions"
msgstr "het `%s' attribuut heeft enkel betekenis voor functies"
-#: config/arm/arm.c:9459
+#: config/arm/arm.c:10573
msgid "unable to compute real location of stacked parameter"
msgstr ""
-#: config/arm/arm.c:10138
+#. @@@ better error message
+#: config/arm/arm.c:11201 config/arm/arm.c:11238
+msgid "selector must be an immediate"
+msgstr ""
+
+#. @@@ better error message
+#: config/arm/arm.c:11281 config/i386/i386.c:14219 config/i386/i386.c:14253
+msgid "mask must be an immediate"
+msgstr ""
+
+#: config/arm/arm.c:11976
msgid "no low registers available for popping high registers"
msgstr ""
-#: config/arm/arm.c:10389
+#: config/arm/arm.c:12226
msgid "interrupt Service Routines cannot be coded in Thumb mode"
msgstr ""
-#: config/arm/pe.c:168 config/mcore/mcore.c:3358
-#, c-format
-msgid "initialized variable `%s' is marked dllimport"
+#: config/arm/pe.c:170 config/mcore/mcore.c:3241
+#, fuzzy
+msgid "%Jinitialized variable '%D' is marked dllimport"
msgstr "variable met beginwaarde `%s' is als dllimport aangeduid"
-#: config/arm/pe.c:177
-#, c-format
-msgid "static variable `%s' is marked dllimport"
+#: config/arm/pe.c:179
+#, fuzzy
+msgid "%Jstatic variable '%D' is marked dllimport"
msgstr "statische variable `%s' is als dllimport aangeduid"
-#: config/arm/arm.h:416
+#: config/arm/arm.h:450
msgid "Generate APCS conformant stack frames"
msgstr ""
-#: config/arm/arm.h:419
+#: config/arm/arm.h:453
#, fuzzy
msgid "Store function names in object code"
msgstr "init-functie gevonden in object %s"
-#: config/arm/arm.h:423
+#: config/arm/arm.h:457
msgid "Use the 32-bit version of the APCS"
msgstr ""
-#: config/arm/arm.h:425
+#: config/arm/arm.h:459
msgid "Use the 26-bit version of the APCS"
msgstr ""
-#: config/arm/arm.h:429
+#: config/arm/arm.h:463
msgid "Pass FP arguments in FP registers"
msgstr ""
-#: config/arm/arm.h:432
+#: config/arm/arm.h:466
msgid "Generate re-entrant, PIC code"
msgstr ""
-#: config/arm/arm.h:435
+#: config/arm/arm.h:469
msgid "The MMU will trap on unaligned accesses"
msgstr ""
-#: config/arm/arm.h:442
+#: config/arm/arm.h:476
msgid "Use library calls to perform FP operations"
msgstr ""
-#: config/arm/arm.h:444 config/i960/i960.h:281
+#: config/arm/arm.h:478 config/i960/i960.h:291
msgid "Use hardware floating point instructions"
msgstr ""
-#: config/arm/arm.h:446
+#: config/arm/arm.h:480
msgid "Assume target CPU is configured as big endian"
msgstr ""
-#: config/arm/arm.h:448
+#: config/arm/arm.h:482
msgid "Assume target CPU is configured as little endian"
msgstr ""
-#: config/arm/arm.h:450
+#: config/arm/arm.h:484
msgid "Assume big endian bytes, little endian words"
msgstr ""
-#: config/arm/arm.h:452
+#: config/arm/arm.h:486
msgid "Support calls between Thumb and ARM instruction sets"
msgstr ""
-#: config/arm/arm.h:455
+#: config/arm/arm.h:489
msgid "Generate a call to abort if a noreturn function returns"
msgstr ""
-#: config/arm/arm.h:458
+#: config/arm/arm.h:492
msgid "Do not move instructions into a function's prologue"
msgstr ""
-#: config/arm/arm.h:461
+#: config/arm/arm.h:495
msgid "Do not load the PIC register in function prologues"
msgstr ""
-#: config/arm/arm.h:464
+#: config/arm/arm.h:498
msgid "Generate call insns as indirect calls, if necessary"
msgstr ""
-#: config/arm/arm.h:467
+#: config/arm/arm.h:501
msgid "Compile for the Thumb not the ARM"
msgstr ""
-#: config/arm/arm.h:471
+#: config/arm/arm.h:505
msgid "Thumb: Generate (non-leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.h:474
+#: config/arm/arm.h:508
msgid "Thumb: Generate (leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.h:477
+#: config/arm/arm.h:511
msgid "Thumb: Assume non-static functions may be called from ARM code"
msgstr ""
-#: config/arm/arm.h:481
+#: config/arm/arm.h:515
msgid "Thumb: Assume function pointers may go to non-Thumb aware code"
msgstr ""
-#: config/arm/arm.h:491
+#: config/arm/arm.h:519
+msgid "Cirrus: Place NOPs to avoid invalid instruction combinations"
+msgstr ""
+
+#: config/arm/arm.h:521
+msgid "Cirrus: Do not break up invalid instruction combinations with NOPs"
+msgstr ""
+
+#: config/arm/arm.h:529
msgid "Specify the name of the target CPU"
msgstr ""
-#: config/arm/arm.h:493
+#: config/arm/arm.h:531
msgid "Specify the name of the target architecture"
msgstr ""
-#: config/arm/arm.h:497
+#: config/arm/arm.h:535
msgid "Specify the version of the floating point emulator"
msgstr ""
-#: config/arm/arm.h:499
+#: config/arm/arm.h:537
msgid "Specify the minimum bit alignment of structures"
msgstr ""
-#: config/arm/arm.h:501
+#: config/arm/arm.h:539
#, fuzzy
msgid "Specify the register to be used for PIC addressing"
msgstr "Ongeldig register in ybase-addressering"
@@ -9113,100 +8328,100 @@ msgstr "Ongeldig register in ybase-addressering"
msgid "Ignore dllimport attribute for functions"
msgstr ""
-#: config/avr/avr.c:528
+#: config/avr/avr.c:514
#, c-format
msgid "large frame pointer change (%d) with -mtiny-stack"
msgstr ""
-#: config/avr/avr.c:1135
+#: config/avr/avr.c:1101
msgid "bad address, not (reg+disp):"
msgstr ""
-#: config/avr/avr.c:1143
+#: config/avr/avr.c:1109
#, fuzzy
msgid "internal compiler error. Bad address:"
msgstr "Interne compilerfout."
-#: config/avr/avr.c:1156
+#: config/avr/avr.c:1122
#, fuzzy
msgid "internal compiler error. Unknown mode:"
msgstr "Interne compilerfout."
# (%s = 'parameter <NUM>')
-#: config/avr/avr.c:1864 config/avr/avr.c:2576
+#: config/avr/avr.c:1744 config/avr/avr.c:2405
#, fuzzy
msgid "invalid insn:"
msgstr "ongeldige %s"
-#: config/avr/avr.c:1901 config/avr/avr.c:1987 config/avr/avr.c:2036
-#: config/avr/avr.c:2045 config/avr/avr.c:2143 config/avr/avr.c:2315
-#: config/avr/avr.c:2613 config/avr/avr.c:2724
+#: config/avr/avr.c:1778 config/avr/avr.c:1861 config/avr/avr.c:1910
+#: config/avr/avr.c:1919 config/avr/avr.c:2014 config/avr/avr.c:2183
+#: config/avr/avr.c:2439 config/avr/avr.c:2547
msgid "incorrect insn:"
msgstr ""
-#: config/avr/avr.c:2064 config/avr/avr.c:2228 config/avr/avr.c:2386
-#: config/avr/avr.c:2768
+#: config/avr/avr.c:1938 config/avr/avr.c:2099 config/avr/avr.c:2254
+#: config/avr/avr.c:2591
#, fuzzy
msgid "unknown move insn:"
msgstr "onbekende machine-modus `%s'"
-#: config/avr/avr.c:3003
+#: config/avr/avr.c:2814
msgid "bad shift insn:"
msgstr ""
-#: config/avr/avr.c:3119 config/avr/avr.c:3549 config/avr/avr.c:3929
+#: config/avr/avr.c:2927 config/avr/avr.c:3348 config/avr/avr.c:3719
#, fuzzy
msgid "internal compiler error. Incorrect shift:"
msgstr "Interne compilerfout."
-#: config/avr/avr.c:4767 config/ip2k/ip2k.c:3197
+#: config/avr/avr.c:4532 config/ip2k/ip2k.c:3144
#, fuzzy
msgid "only initialized variables can be placed into program memory area"
msgstr "Enkel variabelen met beginwaarde kunnen in het 8-bit gebied geplaatst worden."
-#: config/avr/avr.c:4866
+#: config/avr/avr.c:4626
#, fuzzy
msgid "only uninitialized variables can be placed in the .noinit section"
msgstr "Enkel variabelen met beginwaarde kunnen in het 8-bit gebied geplaatst worden."
-#: config/avr/avr.c:4881
+#: config/avr/avr.c:4640
#, fuzzy, c-format
msgid "MCU `%s' supported for assembler only"
msgstr "-pipe wordt niet ondersteund"
-#: config/avr/avr.h:78
+#: config/avr/avr.h:73
msgid "Assume int to be 8 bit integer"
msgstr ""
-#: config/avr/avr.h:80
+#: config/avr/avr.h:75
msgid "Change the stack pointer without disabling interrupts"
msgstr ""
-#: config/avr/avr.h:82
+#: config/avr/avr.h:77
msgid "Use subroutines for function prologue/epilogue"
msgstr ""
-#: config/avr/avr.h:84
+#: config/avr/avr.h:79
msgid "Change only the low 8 bits of the stack pointer"
msgstr ""
-#: config/avr/avr.h:86
+#: config/avr/avr.h:81
msgid "Do not generate tablejump insns"
msgstr ""
-#: config/avr/avr.h:88
+#: config/avr/avr.h:83
msgid "Use rjmp/rcall (limited range) on >8K devices"
msgstr ""
-#: config/avr/avr.h:91
+#: config/avr/avr.h:85
msgid "Output instruction sizes to the asm file"
msgstr ""
-#: config/avr/avr.h:108
+#: config/avr/avr.h:102
msgid "Specify the initial stack address"
msgstr ""
-#: config/avr/avr.h:109
+#: config/avr/avr.h:103
msgid "Specify the MCU name"
msgstr ""
@@ -9218,146 +8433,141 @@ msgstr ""
#. For instance, the SH target has only positive offsets in
#. addresses. Thus sorting to put the smallest address first allows
#. the most combinations to be found.
-#: config/avr/avr.h:2450
+#: config/avr/avr.h:2267
#, fuzzy
msgid "trampolines not supported"
msgstr "-pipe wordt niet ondersteund"
-#: config/c4x/c4x-c.c:69
+#: config/c4x/c4x-c.c:71
#, c-format
msgid "missing '(' after '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:72
+#: config/c4x/c4x-c.c:74
#, c-format
msgid "missing function name in '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:77
+#: config/c4x/c4x-c.c:79
#, fuzzy, c-format
msgid "malformed '#pragma %s' - ignored"
msgstr "misvormde #pragma pack"
-#: config/c4x/c4x-c.c:79
+#: config/c4x/c4x-c.c:81
#, c-format
msgid "missing section name in '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:84
+#: config/c4x/c4x-c.c:86
#, c-format
msgid "missing ')' for '#pragma %s' - ignored"
msgstr ""
# Moet 'signature-string' vertaald worden?
-#: config/c4x/c4x-c.c:87
+#: config/c4x/c4x-c.c:89
#, fuzzy, c-format
msgid "junk at end of '#pragma %s'"
msgstr "Brol aan einde van signature-string."
-#: config/c4x/c4x.c:280
+#: config/c4x/c4x.c:300
#, c-format
msgid "unknown CPU version %d, using 40.\n"
msgstr ""
-#: config/c4x/c4x.c:853
+#: config/c4x/c4x.c:850
#, c-format
msgid "ISR %s requires %d words of local vars, max is 32767"
msgstr ""
-#: config/c4x/c4x.c:1602
+#: config/c4x/c4x.c:1571
msgid "using CONST_DOUBLE for address"
msgstr ""
-#: config/c4x/c4x.c:1742
+#: config/c4x/c4x.c:1709
msgid "c4x_address_cost: Invalid addressing mode"
msgstr "c4x_address_cost: Ongeldige addresseringsmodus"
-#: config/c4x/c4x.c:1884
+#: config/c4x/c4x.c:1844
#, c-format
msgid "c4x_print_operand: %%L inconsistency"
msgstr ""
-#: config/c4x/c4x.c:1890
+#: config/c4x/c4x.c:1850
#, c-format
msgid "c4x_print_operand: %%N inconsistency"
msgstr ""
-#: config/c4x/c4x.c:1931
+#: config/c4x/c4x.c:1891
#, c-format
msgid "c4x_print_operand: %%O inconsistency"
msgstr ""
-#: config/c4x/c4x.c:2026
+#: config/c4x/c4x.c:1986
msgid "c4x_print_operand: Bad operand case"
msgstr ""
-#: config/c4x/c4x.c:2069
+#: config/c4x/c4x.c:2027
msgid "c4x_print_operand_address: Bad post_modify"
msgstr ""
-#: config/c4x/c4x.c:2091
+#: config/c4x/c4x.c:2049
msgid "c4x_print_operand_address: Bad pre_modify"
msgstr ""
-#: config/c4x/c4x.c:2139 config/c4x/c4x.c:2151 config/c4x/c4x.c:2166
+#: config/c4x/c4x.c:2097 config/c4x/c4x.c:2109 config/c4x/c4x.c:2124
msgid "c4x_print_operand_address: Bad operand case"
msgstr ""
-#: config/c4x/c4x.c:2422
+#: config/c4x/c4x.c:2375
msgid "c4x_rptb_insert: Cannot find start label"
msgstr ""
-#: config/c4x/c4x.c:3409 config/c4x/c4x.c:3429
+#: config/c4x/c4x.c:3292 config/c4x/c4x.c:3310
#, fuzzy
msgid "mode not QImode"
msgstr "modus van `%s' is geen modus"
-#: config/c4x/c4x.c:3514
+#: config/c4x/c4x.c:3380
#, fuzzy
msgid "invalid indirect memory address"
msgstr "Ongeldig indirect geheugenadres"
-#: config/c4x/c4x.c:3603
+#: config/c4x/c4x.c:3469
#, fuzzy
msgid "invalid indirect (S) memory address"
msgstr "Ongeldig indirect (S) geheugenadres"
-#: config/c4x/c4x.c:3944
+#: config/c4x/c4x.c:3797
msgid "c4x_valid_operands: Internal error"
msgstr ""
-#: config/c4x/c4x.c:4424
+#: config/c4x/c4x.c:4216
msgid "c4x_operand_subword: invalid mode"
msgstr ""
-#: config/c4x/c4x.c:4427
+#: config/c4x/c4x.c:4219
msgid "c4x_operand_subword: invalid operand"
msgstr ""
#. We could handle these with some difficulty.
#. e.g., *p-- => *(p-=2); *(p+1).
-#: config/c4x/c4x.c:4453
+#: config/c4x/c4x.c:4245
msgid "c4x_operand_subword: invalid autoincrement"
msgstr ""
-#: config/c4x/c4x.c:4459
+#: config/c4x/c4x.c:4251
msgid "c4x_operand_subword: invalid address"
msgstr ""
# klinkt niet
-#: config/c4x/c4x.c:4470
+#: config/c4x/c4x.c:4262
msgid "c4x_operand_subword: address not offsettable"
msgstr "c4x_operand_subword: adres kan niet geoffset worden"
-#: config/c4x/c4x.c:4670
+#: config/c4x/c4x.c:4472
msgid "c4x_rptb_rpts_p: Repeat block top label moved\n"
msgstr ""
-#. Name of the c4x assembler.
-#. Name of the c4x linker.
-#. Define assembler options.
-#. Define linker options.
-#. Specify the end file to link with.
#. Target compilation option flags.
#. Small memory model.
#. Use 24-bit MPYI for C3x.
@@ -9580,177 +8790,177 @@ msgstr ""
msgid "Select CPU to generate code for"
msgstr ""
-#: config/cris/cris.c:599
+#: config/cris/cris.c:597
msgid "unexpected index-type in cris_print_index"
msgstr ""
-#: config/cris/cris.c:615
+#: config/cris/cris.c:611
msgid "unexpected base-type in cris_print_base"
msgstr ""
-#: config/cris/cris.c:908
+#: config/cris/cris.c:904
#, c-format
msgid "stackframe too big: %d bytes"
msgstr ""
-#: config/cris/cris.c:1223
+#: config/cris/cris.c:1215
msgid "allocated but unused delay list in epilogue"
msgstr ""
-#: config/cris/cris.c:1233
+#: config/cris/cris.c:1225
msgid "unexpected function type needing stack adjustment for __builtin_eh_return"
msgstr ""
-#: config/cris/cris.c:1312
+#: config/cris/cris.c:1301
#, fuzzy
msgid "invalid operand for 'b' modifier"
msgstr "ongeldige operand voor %N-code"
-#: config/cris/cris.c:1324
+#: config/cris/cris.c:1314
#, fuzzy
msgid "invalid operand for 'v' modifier"
msgstr "ongeldige operand voor %N-code"
-#: config/cris/cris.c:1334
+#: config/cris/cris.c:1324
#, fuzzy
msgid "invalid operand for 'P' modifier"
msgstr "ongeldige operand voor %N-code"
-#: config/cris/cris.c:1341
+#: config/cris/cris.c:1331
#, fuzzy
msgid "invalid operand for 'p' modifier"
msgstr "ongeldige operand voor %p-code"
-#: config/cris/cris.c:1380
+#: config/cris/cris.c:1370
#, fuzzy
msgid "invalid operand for 'z' modifier"
msgstr "ongeldige operand voor %N-code"
-#: config/cris/cris.c:1411 config/cris/cris.c:1441
+#: config/cris/cris.c:1401 config/cris/cris.c:1431
#, fuzzy
msgid "invalid operand for 'H' modifier"
msgstr "ongeldige operand voor %N-code"
# of is het 'slechte register-uitbreidingscode'?
-#: config/cris/cris.c:1417
+#: config/cris/cris.c:1407
#, fuzzy
msgid "bad register"
msgstr "Slechte code voor registeruitbreiding"
-#: config/cris/cris.c:1455
+#: config/cris/cris.c:1445
#, fuzzy
msgid "invalid operand for 'e' modifier"
msgstr "ongeldige operand voor %N-code"
-#: config/cris/cris.c:1472
+#: config/cris/cris.c:1462
#, fuzzy
msgid "invalid operand for 'm' modifier"
msgstr "ongeldige operand voor %N-code"
-#: config/cris/cris.c:1497
+#: config/cris/cris.c:1487
#, fuzzy
msgid "invalid operand for 'A' modifier"
msgstr "ongeldige operand voor %N-code"
-#: config/cris/cris.c:1505
+#: config/cris/cris.c:1495
#, fuzzy
msgid "invalid operand for 'D' modifier"
msgstr "ongeldige operand voor %N-code"
-#: config/cris/cris.c:1519
+#: config/cris/cris.c:1509
#, fuzzy
msgid "invalid operand for 'T' modifier"
msgstr "ongeldige operand voor %N-code"
-#: config/cris/cris.c:1528
+#: config/cris/cris.c:1518
#, fuzzy
msgid "invalid operand modifier letter"
msgstr "ongeldige operand van %s"
-#: config/cris/cris.c:1536
+#: config/cris/cris.c:1526
#, fuzzy, c-format
msgid "internal error: bad register: %d"
msgstr "formaatstring niet beëindigd"
-#: config/cris/cris.c:1584
+#: config/cris/cris.c:1574
msgid "unexpected multiplicative operand"
msgstr ""
-#: config/cris/cris.c:1604
+#: config/cris/cris.c:1594
#, fuzzy
msgid "unexpected operand"
msgstr "ongeldige operand van %s"
-#: config/cris/cris.c:1639 config/cris/cris.c:1649
+#: config/cris/cris.c:1627 config/cris/cris.c:1637
#, fuzzy
msgid "unrecognized address"
msgstr "geen argumenten"
-#: config/cris/cris.c:2005
+#: config/cris/cris.c:1987
msgid "internal error: sideeffect-insn affecting main effect"
msgstr ""
#. If we get here, the caller got its initial tests wrong.
-#: config/cris/cris.c:2292
+#: config/cris/cris.c:2380
msgid "internal error: cris_side_effect_mode_ok with bad operands"
msgstr ""
-#: config/cris/cris.c:2374 config/cris/cris.c:2432
+#: config/cris/cris.c:2457 config/cris/cris.c:2519
#, fuzzy
msgid "unrecognized supposed constant"
msgstr "signature-string niet herkend"
-#: config/cris/cris.c:2473
+#: config/cris/cris.c:2564
msgid "unrecognized supposed constant in cris_global_pic_symbol"
msgstr ""
-#: config/cris/cris.c:2492
+#: config/cris/cris.c:2583
#, fuzzy, c-format
msgid "-max-stackframe=%d is not usable, not between 0 and %d"
msgstr "-mregparm=%d ligt niet tussen 0 en %d"
-#: config/cris/cris.c:2520
+#: config/cris/cris.c:2611
#, c-format
msgid "unknown CRIS version specification in -march= or -mcpu= : %s"
msgstr ""
-#: config/cris/cris.c:2556
+#: config/cris/cris.c:2647
#, c-format
msgid "unknown CRIS cpu version specification in -mtune= : %s"
msgstr ""
-#: config/cris/cris.c:2574
+#: config/cris/cris.c:2665
#, fuzzy
msgid "-fPIC and -fpic are not supported in this configuration"
msgstr "alias-definities worden niet ondersteund in deze configuratie; genegeerd"
-#: config/cris/cris.c:2590
+#: config/cris/cris.c:2681
msgid "that particular -g option is invalid with -maout and -melinux"
msgstr ""
-#: config/cris/cris.c:2824 config/cris/cris.c:2869
+#: config/cris/cris.c:2936 config/cris/cris.c:2981
msgid "unexpected side-effects in address"
msgstr ""
#. Labels are never marked as global symbols.
-#: config/cris/cris.c:2966 config/cris/cris.c:2997
+#: config/cris/cris.c:3076 config/cris/cris.c:3107
msgid "unexpected PIC symbol"
msgstr ""
-#: config/cris/cris.c:2970
+#: config/cris/cris.c:3080
msgid "PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:2983 config/cris/cris.c:3066
+#: config/cris/cris.c:3093 config/cris/cris.c:3176
#, fuzzy
msgid "unexpected address expression"
msgstr "ongeldige waarheidsexpressie"
-#: config/cris/cris.c:3001
+#: config/cris/cris.c:3111
msgid "emitting PIC operand, but PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:3010
+#: config/cris/cris.c:3120
msgid "unexpected NOTE as addr_const:"
msgstr ""
@@ -9763,221 +8973,221 @@ msgid "For elinux, request a specified stack-size for this program"
msgstr ""
#. No "no-etrax" as it does not really imply any model. On the other hand, "etrax" implies the common (and large) subset matching all models.
-#: config/cris/cris.h:340
+#: config/cris/cris.h:334
msgid "Compile for ETRAX 4 (CRIS v3)"
msgstr ""
-#: config/cris/cris.h:345
+#: config/cris/cris.h:339
msgid "Compile for ETRAX 100 (CRIS v8)"
msgstr ""
-#: config/cris/cris.h:349
+#: config/cris/cris.h:343
msgid "Emit verbose debug information in assembly code"
msgstr ""
-#: config/cris/cris.h:352
+#: config/cris/cris.h:346
msgid "Do not use condition codes from normal instructions"
msgstr ""
-#: config/cris/cris.h:356
+#: config/cris/cris.h:350
msgid "Do not emit addressing modes with side-effect assignment"
msgstr ""
-#: config/cris/cris.h:359
+#: config/cris/cris.h:353
msgid "Do not tune stack alignment"
msgstr ""
-#: config/cris/cris.h:362
+#: config/cris/cris.h:356
msgid "Do not tune writable data alignment"
msgstr ""
-#: config/cris/cris.h:365
+#: config/cris/cris.h:359
msgid "Do not tune code and read-only data alignment"
msgstr ""
-#: config/cris/cris.h:374
+#: config/cris/cris.h:368
msgid "Align code and data to 32 bits"
msgstr ""
-#: config/cris/cris.h:387
+#: config/cris/cris.h:381
msgid "Don't align items in code or data"
msgstr ""
-#: config/cris/cris.h:390
+#: config/cris/cris.h:384
msgid "Do not emit function prologue or epilogue"
msgstr ""
#. We have to handle this m-option here since we can't wash it off in both CC1_SPEC and CC1PLUS_SPEC.
-#: config/cris/cris.h:394
+#: config/cris/cris.h:388
msgid "Use the most feature-enabling options allowed by other options"
msgstr ""
#. We must call it "override-" since calling it "no-" will cause gcc.c to forget it, if there's a "later" -mbest-lib-options. Kludgy, but needed for some multilibbed files.
-#: config/cris/cris.h:400
+#: config/cris/cris.h:394
msgid "Override -mbest-lib-options"
msgstr ""
-#: config/cris/cris.h:432
+#: config/cris/cris.h:426
msgid "Generate code for the specified chip or CPU version"
msgstr ""
-#: config/cris/cris.h:434
+#: config/cris/cris.h:428
#, fuzzy
msgid "Tune alignment for the specified chip or CPU version"
msgstr "er kan geen alignment opgegeven worden voor `%s'"
-#: config/cris/cris.h:436
+#: config/cris/cris.h:430
msgid "Warn when a stackframe is larger than the specified size"
msgstr ""
#. Node: Profiling
-#: config/cris/cris.h:1022
+#: config/cris/cris.h:1016
msgid "no FUNCTION_PROFILER for CRIS"
msgstr ""
-#: config/cris/linux.h:71
+#: config/cris/linux.h:69
msgid "Together with -fpic and -fPIC, do not use GOTPLT references"
msgstr ""
-#: config/d30v/d30v.c:207
+#: config/d30v/d30v.c:218
#, c-format
msgid "bad modes_tieable_p for register %s, mode1 %s, mode2 %s"
msgstr ""
-#: config/d30v/d30v.c:2666
+#: config/d30v/d30v.c:2678
msgid "bad insn to d30v_print_operand_address:"
msgstr ""
-#: config/d30v/d30v.c:2683 config/d30v/d30v.c:2744 config/d30v/d30v.c:2765
-#: config/d30v/d30v.c:2783
+#: config/d30v/d30v.c:2695 config/d30v/d30v.c:2756 config/d30v/d30v.c:2777
+#: config/d30v/d30v.c:2795
msgid "bad insn to d30v_print_operand_memory_reference:"
msgstr ""
-#: config/d30v/d30v.c:2851
+#: config/d30v/d30v.c:2863
msgid "bad insn to d30v_print_operand, 'f' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2860
+#: config/d30v/d30v.c:2872
msgid "bad insn to d30v_print_operand, 'A' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2867
+#: config/d30v/d30v.c:2879
msgid "bad insn to d30v_print_operand, 'M' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2921
+#: config/d30v/d30v.c:2933
msgid "bad insn to print_operand, 'F' or 'T' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2932
+#: config/d30v/d30v.c:2944
msgid "bad insn to print_operand, 'B' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2939
+#: config/d30v/d30v.c:2951
msgid "bad insn to print_operand, 'E' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2957
+#: config/d30v/d30v.c:2969
msgid "bad insn to print_operand, 'R' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2966 config/d30v/d30v.c:2974
+#: config/d30v/d30v.c:2978 config/d30v/d30v.c:2986
msgid "bad insn to print_operand, 's' modifier:"
msgstr ""
-#: config/d30v/d30v.c:3003
+#: config/d30v/d30v.c:3015
msgid "bad insn in d30v_print_operand, 0 case"
msgstr ""
-#: config/d30v/d30v.c:3301
+#: config/d30v/d30v.c:3313
msgid "d30v_emit_comparison"
msgstr ""
-#: config/d30v/d30v.c:3345
+#: config/d30v/d30v.c:3357
msgid "bad call to d30v_move_2words"
msgstr ""
-#: config/d30v/d30v.h:114
+#: config/d30v/d30v.h:111
msgid "Enable use of conditional move instructions"
msgstr ""
-#: config/d30v/d30v.h:117
+#: config/d30v/d30v.h:114
msgid "Disable use of conditional move instructions"
msgstr ""
-#: config/d30v/d30v.h:120
+#: config/d30v/d30v.h:117
msgid "Debug argument support in compiler"
msgstr ""
-#: config/d30v/d30v.h:123
+#: config/d30v/d30v.h:120
msgid "Debug stack support in compiler"
msgstr ""
-#: config/d30v/d30v.h:126
+#: config/d30v/d30v.h:123
msgid "Debug memory address support in compiler"
msgstr ""
-#: config/d30v/d30v.h:129
+#: config/d30v/d30v.h:126
msgid "Make adjacent short instructions parallel if possible"
msgstr ""
-#: config/d30v/d30v.h:132
+#: config/d30v/d30v.h:129
msgid "Do not make adjacent short instructions parallel"
msgstr ""
-#: config/d30v/d30v.h:135 config/d30v/d30v.h:138
+#: config/d30v/d30v.h:132 config/d30v/d30v.h:135
msgid "Link programs/data to be in external memory by default"
msgstr ""
-#: config/d30v/d30v.h:141
+#: config/d30v/d30v.h:138
msgid "Link programs/data to be in onchip memory by default"
msgstr ""
-#: config/d30v/d30v.h:149
+#: config/d30v/d30v.h:146
msgid "Change the branch costs within the compiler"
msgstr ""
-#: config/d30v/d30v.h:152
+#: config/d30v/d30v.h:149
msgid "Change the threshold for conversion to conditional execution"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1446 config/dsp16xx/dsp16xx.c:1469
+#: config/dsp16xx/dsp16xx.c:1463 config/dsp16xx/dsp16xx.c:1486
#, fuzzy
msgid "stack size > 32k"
msgstr "Stackgrootte > 32k"
-#: config/dsp16xx/dsp16xx.c:1678
+#: config/dsp16xx/dsp16xx.c:1695
#, fuzzy
msgid "invalid addressing mode"
msgstr "Ongeldige addresseringsmodus"
# of is het 'slechte register-uitbreidingscode'?
-#: config/dsp16xx/dsp16xx.c:1821
+#: config/dsp16xx/dsp16xx.c:1838
#, fuzzy
msgid "bad register extension code"
msgstr "Slechte code voor registeruitbreiding"
-#: config/dsp16xx/dsp16xx.c:1921
+#: config/dsp16xx/dsp16xx.c:1938
#, fuzzy
msgid "invalid offset in ybase addressing"
msgstr "Ongeldige offset in ybase-addressering"
-#: config/dsp16xx/dsp16xx.c:1924
+#: config/dsp16xx/dsp16xx.c:1941
#, fuzzy
msgid "invalid register in ybase addressing"
msgstr "Ongeldig register in ybase-addressering"
-#: config/dsp16xx/dsp16xx.c:2099
+#: config/dsp16xx/dsp16xx.c:2116
#, fuzzy
msgid "invalid shift operator in emit_1600_core_shift"
msgstr "Ongeldige shift-operator in emit_1600_core_shift"
-#: config/dsp16xx/dsp16xx.c:2428
+#: config/dsp16xx/dsp16xx.c:2406
#, fuzzy
msgid "invalid mode for gen_tst_reg"
msgstr "Ongeldige modus voor gen_tst_reg"
-#: config/dsp16xx/dsp16xx.c:2500
+#: config/dsp16xx/dsp16xx.c:2478
#, fuzzy
msgid "invalid mode for integer comparison in gen_compare_reg"
msgstr "Ongeldige modus voor integervergelijking in gen_compare_reg"
@@ -10073,8 +9283,12 @@ msgstr ""
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/dsp16xx/dsp16xx.h:1218 config/dsp16xx/dsp16xx.h:1772
-#: config/dsp16xx/dsp16xx.h:1777
+#. This is how to output an insn to push a register on the stack.
+#. It need not be very fast code since it is used only for profiling
+#. This is how to output an insn to pop a register from the stack.
+#. It need not be very fast code since it is used only for profiling
+#: config/dsp16xx/dsp16xx.h:1216 config/dsp16xx/dsp16xx.h:1667
+#: config/dsp16xx/dsp16xx.h:1672
#, fuzzy
msgid "profiling not implemented yet"
msgstr "profileren wordt niet ondersteund wanneer -mg gebruikt wordt\n"
@@ -10082,51 +9296,51 @@ msgstr "profileren wordt niet ondersteund wanneer -mg gebruikt wordt\n"
#. Emit RTL insns to initialize the variable parts of a trampoline.
#. FNADDR is an RTX for the address of the function's pure code.
#. CXT is an RTX for the static chain value for the function.
-#: config/dsp16xx/dsp16xx.h:1228 config/dsp16xx/dsp16xx.h:1240
+#: config/dsp16xx/dsp16xx.h:1226 config/dsp16xx/dsp16xx.h:1238
#, fuzzy
msgid "trampolines not yet implemented"
msgstr "parameter wijst naar een onvolledig type"
-#: config/fr30/fr30.c:453
+#: config/fr30/fr30.c:451
msgid "fr30_print_operand_address: unhandled address"
msgstr ""
-#: config/fr30/fr30.c:480
+#: config/fr30/fr30.c:475
#, fuzzy, c-format
msgid "fr30_print_operand: unrecognized %%p code"
msgstr "ongeldige operand voor %N-code"
-#: config/fr30/fr30.c:500
+#: config/fr30/fr30.c:495
#, fuzzy, c-format
msgid "fr30_print_operand: unrecognized %%b code"
msgstr "ongeldige operand voor %N-code"
-#: config/fr30/fr30.c:521
+#: config/fr30/fr30.c:516
#, fuzzy, c-format
msgid "fr30_print_operand: unrecognized %%B code"
msgstr "ongeldige operand voor %N-code"
-#: config/fr30/fr30.c:529
+#: config/fr30/fr30.c:524
#, fuzzy, c-format
msgid "fr30_print_operand: invalid operand to %%A code"
msgstr "ongeldige operand voor %N-code"
-#: config/fr30/fr30.c:546
+#: config/fr30/fr30.c:541
#, fuzzy, c-format
msgid "fr30_print_operand: invalid %%x code"
msgstr "ongeldige operand voor %N-code"
-#: config/fr30/fr30.c:553
+#: config/fr30/fr30.c:548
#, fuzzy, c-format
msgid "fr30_print_operand: invalid %%F code"
msgstr "ongeldige operand voor %N-code"
-#: config/fr30/fr30.c:570
+#: config/fr30/fr30.c:565
msgid "fr30_print_operand: unknown code"
msgstr ""
-#: config/fr30/fr30.c:599 config/fr30/fr30.c:608 config/fr30/fr30.c:619
-#: config/fr30/fr30.c:632
+#: config/fr30/fr30.c:594 config/fr30/fr30.c:603 config/fr30/fr30.c:614
+#: config/fr30/fr30.c:627
msgid "fr30_print_operand: unhandled MEM"
msgstr ""
@@ -10134,138 +9348,138 @@ msgstr ""
msgid "Assume small address space"
msgstr ""
-#: config/frv/frv.c:410 config/frv/frv.c:428
+#: config/frv/frv.c:392 config/frv/frv.c:410
#, c-format
msgid "Unknown cpu: -mcpu=%s"
msgstr ""
-#: config/frv/frv.c:451
+#: config/frv/frv.c:433
msgid "-fpic and -gdwarf are incompatible (-fpic and -g/-gdwarf-2 are fine)"
msgstr ""
-#: config/frv/frv.c:2520
+#: config/frv/frv.c:2397
msgid "Bad insn to frv_print_operand_address:"
msgstr ""
-#: config/frv/frv.c:2533
+#: config/frv/frv.c:2408
msgid "Bad register to frv_print_operand_memory_reference_reg:"
msgstr ""
-#: config/frv/frv.c:2574 config/frv/frv.c:2584 config/frv/frv.c:2593
-#: config/frv/frv.c:2621 config/frv/frv.c:2633 config/frv/frv.c:2637
+#: config/frv/frv.c:2446 config/frv/frv.c:2456 config/frv/frv.c:2465
+#: config/frv/frv.c:2493 config/frv/frv.c:2506 config/frv/frv.c:2510
msgid "Bad insn to frv_print_operand_memory_reference:"
msgstr ""
-#: config/frv/frv.c:2779
+#: config/frv/frv.c:2648
msgid "Bad insn in frv_print_operand, bad const_double"
msgstr ""
-#: config/frv/frv.c:2824
+#: config/frv/frv.c:2693
msgid "Bad insn to frv_print_operand, 'C' modifier:"
msgstr ""
-#: config/frv/frv.c:2847
+#: config/frv/frv.c:2716
msgid "Bad insn to frv_print_operand, 'c' modifier:"
msgstr ""
-#: config/frv/frv.c:2872
+#: config/frv/frv.c:2741
msgid "Bad insn to frv_print_operand, 'e' modifier:"
msgstr ""
-#: config/frv/frv.c:2880
+#: config/frv/frv.c:2749
msgid "Bad insn to frv_print_operand, 'F' modifier:"
msgstr ""
-#: config/frv/frv.c:2896
+#: config/frv/frv.c:2765
msgid "Bad insn to frv_print_operand, 'f' modifier:"
msgstr ""
-#: config/frv/frv.c:2949
+#: config/frv/frv.c:2818
msgid "Bad insn to frv_print_operand, 'L' modifier:"
msgstr ""
-#: config/frv/frv.c:2962
+#: config/frv/frv.c:2831
msgid "Bad insn to frv_print_operand, 'M/N' modifier:"
msgstr ""
-#: config/frv/frv.c:2983
+#: config/frv/frv.c:2852
msgid "Bad insn to frv_print_operand, 'O' modifier:"
msgstr ""
-#: config/frv/frv.c:3001
+#: config/frv/frv.c:2870
msgid "Bad insn to frv_print_operand, P modifier:"
msgstr ""
-#: config/frv/frv.c:3021
+#: config/frv/frv.c:2890
msgid "Bad insn in frv_print_operand, z case"
msgstr ""
-#: config/frv/frv.c:3049
+#: config/frv/frv.c:2918
msgid "Bad insn in frv_print_operand, 0 case"
msgstr ""
-#: config/frv/frv.c:3054
+#: config/frv/frv.c:2923
#, fuzzy
msgid "frv_print_operand: unknown code"
msgstr "ongeldige operand voor %N-code"
-#: config/frv/frv.c:5737
+#: config/frv/frv.c:5474
msgid "Bad output_move_single operand"
msgstr ""
-#: config/frv/frv.c:5866
+#: config/frv/frv.c:5601
msgid "Bad output_move_double operand"
msgstr ""
-#: config/frv/frv.c:6010
+#: config/frv/frv.c:5743
msgid "Bad output_condmove_single operand"
msgstr ""
-#: config/frv/frv.c:8315
+#: config/frv/frv.c:8031
msgid "frv_registers_update"
msgstr ""
-#: config/frv/frv.c:8475
+#: config/frv/frv.c:8188
msgid "frv_registers_used_p"
msgstr ""
-#: config/frv/frv.c:8604
+#: config/frv/frv.c:8314
msgid "frv_registers_set_p"
msgstr ""
-#: config/frv/frv.c:9171
+#: config/frv/frv.c:8910
#, fuzzy
msgid "accumulator is not a constant integer"
msgstr "het argument van `asm' is geen constante string"
-#: config/frv/frv.c:9176
+#: config/frv/frv.c:8915
msgid "accumulator number is out of bounds"
msgstr ""
-#: config/frv/frv.c:9187
+#: config/frv/frv.c:8926
#, fuzzy, c-format
msgid "inappropriate accumulator for `%s'"
msgstr "geen eerdere declaratie voor `%s'"
-#: config/frv/frv.c:9253
+#: config/frv/frv.c:8986
#, c-format
msgid "`%s' expects a constant argument"
msgstr ""
-#: config/frv/frv.c:9258
+#: config/frv/frv.c:8991
#, fuzzy, c-format
msgid "constant argument out of range for `%s'"
msgstr "teveel argumenten voor procedure `%s'"
-#: config/frv/frv.c:9638
+#: config/frv/frv.c:9338
msgid "media functions are not available unless -mmedia is used"
msgstr ""
-#: config/frv/frv.c:9650
+#: config/frv/frv.c:9350
msgid "this media function is only available on the fr500"
msgstr ""
-#: config/frv/frv.c:9678
+#: config/frv/frv.c:9378
msgid "this media function is only available on the fr400"
msgstr ""
@@ -10278,16 +9492,17 @@ msgstr ""
#. #else
#. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)");
#. #endif
-#: config/frv/frv.h:512
+#: config/frv/frv.h:506
+#, c-format
msgid " (frv)"
msgstr ""
-#: config/h8300/h8300.c:314
+#: config/h8300/h8300.c:288
#, fuzzy
msgid "-ms2600 is used without -ms"
msgstr "macro `%s' gebruikt zonder argumenten"
-#: config/h8300/h8300.c:320
+#: config/h8300/h8300.c:294
#, fuzzy
msgid "-mn is used without -mh or -ms"
msgstr "macro `%s' gebruikt zonder argumenten"
@@ -10297,79 +9512,79 @@ msgstr "macro `%s' gebruikt zonder argumenten"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/h8300/h8300.h:150
+#: config/h8300/h8300.h:145
msgid "Generate H8S code"
msgstr ""
-#: config/h8300/h8300.h:151
+#: config/h8300/h8300.h:146
msgid "Do not generate H8S code"
msgstr ""
-#: config/h8300/h8300.h:152
+#: config/h8300/h8300.h:147
msgid "Generate H8S/2600 code"
msgstr ""
-#: config/h8300/h8300.h:153
+#: config/h8300/h8300.h:148
msgid "Do not generate H8S/2600 code"
msgstr ""
-#: config/h8300/h8300.h:154
+#: config/h8300/h8300.h:149
msgid "Make integers 32 bits wide"
msgstr ""
-#: config/h8300/h8300.h:157
+#: config/h8300/h8300.h:152
msgid "Use registers for argument passing"
msgstr ""
-#: config/h8300/h8300.h:159
+#: config/h8300/h8300.h:154
msgid "Do not use registers for argument passing"
msgstr ""
-#: config/h8300/h8300.h:161
+#: config/h8300/h8300.h:156
msgid "Consider access to byte sized memory slow"
msgstr ""
-#: config/h8300/h8300.h:162
+#: config/h8300/h8300.h:157
msgid "Enable linker relaxing"
msgstr ""
-#: config/h8300/h8300.h:164
+#: config/h8300/h8300.h:158
msgid "Generate H8/300H code"
msgstr ""
-#: config/h8300/h8300.h:165
+#: config/h8300/h8300.h:159
#, fuzzy
msgid "Enable the normal mode"
msgstr "incompatibele record-modus"
-#: config/h8300/h8300.h:166
+#: config/h8300/h8300.h:160
msgid "Do not generate H8/300H code"
msgstr ""
-#: config/h8300/h8300.h:167
+#: config/h8300/h8300.h:161
msgid "Use H8/300 alignment rules"
msgstr ""
# Moet 'signature-string' vertaald worden?
-#: config/i370/i370-c.c:53
+#: config/i370/i370-c.c:55
#, fuzzy
msgid "junk at end of #pragma map"
msgstr "Brol aan einde van signature-string."
-#: config/i370/i370-c.c:59
+#: config/i370/i370-c.c:61
#, fuzzy
msgid "malformed #pragma map, ignored"
msgstr "misvormde #pragma pack(pop[,id])"
-#: config/i370/i370.c:915
+#: config/i370/i370.c:784
msgid "real name is too long - alias ignored"
msgstr ""
-#: config/i370/i370.c:920
+#: config/i370/i370.c:789
msgid "alias name is too long - alias ignored"
msgstr ""
-#: config/i370/i370.c:1191
+#: config/i370/i370.c:1060
#, fuzzy
msgid "internal error--no jump follows compare:"
msgstr "interne fout - dup-operatie"
@@ -10386,422 +9601,480 @@ msgstr ""
msgid "Do not generate char instructions"
msgstr ""
-#: config/i386/i386.c:1050
+#: config/i386/i386.c:1161
#, fuzzy, c-format
msgid "code model %s not supported in PIC mode"
msgstr "afrondingsmodus niet ondersteund voor VAX-floats"
-#: config/i386/i386.c:1060 config/sparc/sparc.c:356
+#: config/i386/i386.c:1171 config/sparc/sparc.c:387
#, c-format
msgid "bad value (%s) for -mcmodel= switch"
msgstr "slechte waarde (%s) voor optie -mcmodel="
-#: config/i386/i386.c:1075
+#: config/i386/i386.c:1186
#, fuzzy, c-format
msgid "bad value (%s) for -masm= switch"
msgstr "slechte waarde (%s) voor optie -mabi="
-#: config/i386/i386.c:1078
+#: config/i386/i386.c:1189
#, fuzzy, c-format
msgid "code model `%s' not supported in the %s bit mode"
msgstr "ANSI C ondersteunt de `%c' lengte-optie niet"
-#: config/i386/i386.c:1081
+#: config/i386/i386.c:1192
msgid "code model `large' not supported yet"
msgstr ""
-#: config/i386/i386.c:1083
+#: config/i386/i386.c:1194
#, c-format
msgid "%i-bit mode not compiled in"
msgstr ""
-#: config/i386/i386.c:1113
+#: config/i386/i386.c:1221 config/i386/i386.c:1233
+#, fuzzy
+msgid "CPU you selected does not support x86-64 instruction set"
+msgstr "doel-CPU ondersteunt geen interworking"
+
+#: config/i386/i386.c:1226 config/iq2000/iq2000.c:1840
#, c-format
msgid "bad value (%s) for -march= switch"
msgstr "slechte waarde (%s) voor de -march= optie"
-#: config/i386/i386.c:1124
-#, c-format
-msgid "bad value (%s) for -mcpu= switch"
+#: config/i386/i386.c:1239
+#, fuzzy, c-format
+msgid "bad value (%s) for -mtune= switch"
msgstr "slechte waarde (%s) voor de -march= optie"
-#: config/i386/i386.c:1141
+#: config/i386/i386.c:1256
#, c-format
msgid "-mregparm=%d is not between 0 and %d"
msgstr "-mregparm=%d ligt niet tussen 0 en %d"
-#: config/i386/i386.c:1154
+#: config/i386/i386.c:1269
#, fuzzy
msgid "-malign-loops is obsolete, use -falign-loops"
msgstr "-malign-loops=%d ligt niet tussen 0 en %d"
-#: config/i386/i386.c:1159 config/i386/i386.c:1172 config/i386/i386.c:1185
+#: config/i386/i386.c:1274 config/i386/i386.c:1287 config/i386/i386.c:1300
#, c-format
msgid "-malign-loops=%d is not between 0 and %d"
msgstr "-malign-loops=%d ligt niet tussen 0 en %d"
-#: config/i386/i386.c:1167
+#: config/i386/i386.c:1282
#, fuzzy
msgid "-malign-jumps is obsolete, use -falign-jumps"
msgstr "-malign-jumps=%d ligt niet tussen 0 en %d"
-#: config/i386/i386.c:1180
+#: config/i386/i386.c:1295
#, fuzzy
msgid "-malign-functions is obsolete, use -falign-functions"
msgstr "-malign-functions=%d ligt niet tussen 0 en %d"
-#: config/i386/i386.c:1218
+#: config/i386/i386.c:1333
#, fuzzy, c-format
msgid "-mpreferred-stack-boundary=%d is not between %d and 12"
msgstr "-mpreferred_stack_boundary=%d ligt niet tussen 2 en 31"
-#: config/i386/i386.c:1230
+#: config/i386/i386.c:1345
#, c-format
msgid "-mbranch-cost=%d is not between 0 and 5"
msgstr "-mbranch-cost=%d ligt niet tussen 0 en 5"
-#: config/i386/i386.c:1242
+#: config/i386/i386.c:1357
#, fuzzy, c-format
msgid "bad value (%s) for -mtls-dialect= switch"
msgstr "slechte waarde (%s) voor optie -msdata"
-#: config/i386/i386.c:1263
+#: config/i386/i386.c:1386
msgid "-malign-double makes no sense in the 64bit mode"
msgstr ""
-#: config/i386/i386.c:1265
+#: config/i386/i386.c:1388
#, fuzzy
msgid "-mrtd calling convention not supported in the 64bit mode"
msgstr "alias-definities worden niet ondersteund in deze configuratie; genegeerd"
-#: config/i386/i386.c:1281 config/i386/i386.c:1292
+#: config/i386/i386.c:1410 config/i386/i386.c:1421
#, fuzzy
msgid "SSE instruction set disabled, using 387 arithmetics"
msgstr "pointer naar functie gebruikt in rekensom"
-#: config/i386/i386.c:1297
+#: config/i386/i386.c:1426
#, fuzzy
msgid "387 instruction set disabled, using SSE arithmetics"
msgstr "pointer naar functie gebruikt in rekensom"
-#: config/i386/i386.c:1304
+#: config/i386/i386.c:1433
#, fuzzy, c-format
msgid "bad value (%s) for -mfpmath= switch"
msgstr "slechte waarde (%s) voor de -march= optie"
-#: config/i386/i386.c:1436
+#: config/i386/i386.c:1581 config/i386/i386.c:1592
+#, fuzzy
+msgid "fastcall and stdcall attributes are not compatible"
+msgstr "-pg en -fomit-frame-pointer zijn niet compatibel"
+
+#: config/i386/i386.c:1585 config/i386/i386.c:1641
+#, fuzzy
+msgid "fastcall and regparm attributes are not compatible"
+msgstr "-pg en -fomit-frame-pointer zijn niet compatibel"
+
+#: config/i386/i386.c:1628
#, c-format
msgid "`%s' attribute requires an integer constant argument"
msgstr ""
-#: config/i386/i386.c:1442
+#: config/i386/i386.c:1634
#, fuzzy, c-format
msgid "argument to `%s' attribute larger than %d"
msgstr "kan het `%s' attribuut niet instellen na een definitie"
-#: config/i386/i386.c:2504
+#: config/i386/i386.c:2593
+msgid "SSE vector argument without SSE enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2609
+msgid "MMX vector argument without MMX enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2837
msgid "SSE vector return without SSE enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:6386
+#: config/i386/i386.c:6811
msgid "invalid UNSPEC as operand"
msgstr "ongeldige UNSPEC als operand"
-#: config/i386/i386.c:6648
+#: config/i386/i386.c:7069
msgid "extended registers have no high halves"
msgstr ""
-#: config/i386/i386.c:6663
+#: config/i386/i386.c:7084
msgid "unsupported operand size for extended register"
msgstr ""
-#: config/i386/i386.c:6978
+#: config/i386/i386.c:7399
msgid "operand is neither a constant nor a condition code, invalid operand code 'c'"
msgstr ""
-#: config/i386/i386.c:7024
+#: config/i386/i386.c:7445
#, fuzzy, c-format
msgid "invalid operand code `%c'"
msgstr "ongeldige operand van %s"
-#: config/i386/i386.c:7071
+#: config/i386/i386.c:7488
#, fuzzy
msgid "invalid constraints for operand"
msgstr "ongeldige operand voor %P"
-#: config/i386/i386.c:11271
+#: config/i386/i386.c:11889
#, fuzzy
msgid "unknown insn mode"
msgstr "onbekende machine-modus `%s'"
-#. @@@ better error message
-#: config/i386/i386.c:13391 config/i386/i386.c:13427
-msgid "selector must be an immediate"
-msgstr ""
-
-#. @@@ better error message
-#: config/i386/i386.c:13588 config/i386/i386.c:13622
-msgid "mask must be an immediate"
+#: config/i386/i386.c:14021 config/i386/i386.c:14057
+#, c-format
+msgid "selector must be an integer constant in the range 0..%i"
msgstr ""
-#: config/i386/i386.c:13654
+#: config/i386/i386.c:14285
#, fuzzy
msgid "shift must be an immediate"
msgstr "`defined' zonder een naam"
-#: config/i386/winnt.c:96
+#: config/i386/i386.c:15308
#, fuzzy, c-format
-msgid "function `%s' definition is marked dllimport."
-msgstr "functie-definitie als `auto' gedeclareerd"
+msgid "`%s' incompatible attribute ignored"
+msgstr "het `%s' attribuut wordt genegeerd"
#: config/i386/winnt.c:104
-#, fuzzy, c-format
-msgid "variable `%s' definition is marked dllimport."
+#, fuzzy
+msgid "%Jfunction `%D' definition is marked dllimport."
+msgstr "functie-definitie als `auto' gedeclareerd"
+
+#: config/i386/winnt.c:112
+#, fuzzy
+msgid "%Jvariable `%D' definition is marked dllimport."
msgstr "statische variable `%s' is als dllimport aangeduid"
-#: config/i386/winnt.c:123
-#, c-format
-msgid "external linkage required for symbol '%s' because of '%s' attribute."
+#: config/i386/winnt.c:132
+msgid "%Jexternal linkage required for symbol '%D' because of '%s' attribute."
msgstr ""
-#: config/i386/winnt.c:143
+#: config/i386/winnt.c:149
#, fuzzy, c-format
msgid "`%s' attribute only applies to variables"
msgstr "het `%s' attribuut heeft geen betekenis voor types"
-#: config/i386/winnt.c:242
-#, c-format
-msgid "function '%s' is defined after prior declaration as dllimport: attribute ignored."
-msgstr ""
+#: config/i386/winnt.c:247
+#, fuzzy
+msgid "%Jfunction '%D' is defined after prior declaration as dllimport: attribute ignored"
+msgstr "functie `%s' geherdeclareerd met noinline attribuut"
-#: config/i386/winnt.c:252
-#, fuzzy, c-format
-msgid "inline function '%s' is declared as dllimport: attribute ignored."
+#: config/i386/winnt.c:258
+#, fuzzy
+msgid "%Jinline function '%D' is declared as dllimport: attribute ignored."
msgstr "functie `%s' geherdeclareerd met noinline attribuut"
-#: config/i386/winnt.c:263
-#, c-format
-msgid "definition of static data member '%s' of dllimport'd class."
+#: config/i386/winnt.c:270
+msgid "%Jdefinition of static data member '%D' of dllimport'd class."
msgstr ""
-#: config/i386/winnt.c:322
-#, c-format
-msgid "inconsistent dll linkage for '%s': dllexport assumed."
+#: config/i386/winnt.c:329
+msgid "%Jinconsistent dll linkage for '%D', dllexport assumed."
msgstr ""
-#: config/i386/winnt.c:364
+#: config/i386/winnt.c:371
#, fuzzy, c-format
msgid "`%s' declared as both exported to and imported from a DLL"
msgstr "`%s' gedeclareerd als geëxporteerd naar én geïmporteerd uit een DLL."
-#: config/i386/winnt.c:373
-#, c-format
-msgid "failure in redeclaration of '%s': dllimport'd symbol lacks external linkage."
+#: config/i386/winnt.c:380
+msgid "%Jfailure in redeclaration of '%D': dllimport'd symbol lacks external linkage."
msgstr ""
-#: config/i386/winnt.c:479
-#, c-format
-msgid "'%s' %s after being referenced with dllimport linkage."
+#: config/i386/winnt.c:529
+msgid "%J'%D' defined locally after being referenced with dllimport linkage"
+msgstr ""
+
+#: config/i386/winnt.c:532
+msgid "%J'%D' redeclared without dllimport attribute after being referenced with dllimport linkage"
+msgstr ""
+
+#: config/i386/winnt.c:701
+msgid "%J'%D' causes a section type conflict"
msgstr ""
-#: config/i386/cygwin.h:45
+#: config/i386/cygming.h:40
msgid "Use the Cygwin interface"
msgstr ""
-#: config/i386/cygwin.h:46
+#: config/i386/cygming.h:41
msgid "Use the Mingw32 interface"
msgstr ""
-#: config/i386/cygwin.h:47
+#: config/i386/cygming.h:42
msgid "Create GUI application"
msgstr ""
-#: config/i386/cygwin.h:48
+#: config/i386/cygming.h:43
msgid "Don't set Windows defines"
msgstr ""
-#: config/i386/cygwin.h:49
+#: config/i386/cygming.h:44
msgid "Set Windows defines"
msgstr ""
-#: config/i386/cygwin.h:50
+#: config/i386/cygming.h:45
msgid "Create console application"
msgstr ""
-#: config/i386/cygwin.h:51 config/i386/win32.h:59
+#: config/i386/cygming.h:46
msgid "Generate code for a DLL"
msgstr ""
-#: config/i386/cygwin.h:53 config/i386/win32.h:61
+#: config/i386/cygming.h:48
msgid "Ignore dllimport for functions"
msgstr ""
-#: config/i386/cygwin.h:55
+#: config/i386/cygming.h:50
msgid "Use Mingw-specific thread support"
msgstr ""
-#: config/i386/cygwin.h:245
+#: config/i386/cygming.h:169
#, c-format
msgid "-f%s ignored for target (all code is position independent)"
msgstr ""
-#: config/i386/djgpp.h:206
+#: config/i386/djgpp.h:191
msgid "-mbnu210 is ignored (option is obsolete)"
msgstr ""
+#: config/i386/i386-interix.h:256
+#, fuzzy
+msgid "ms-bitfields not supported for objc"
+msgstr "-pipe wordt niet ondersteund"
+
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
-#: config/i386/i386.h:306
+#: config/i386/i386.h:339
#, fuzzy
msgid "Alternate calling convention"
msgstr "Onbeëindigde stringconstante"
-#: config/i386/i386.h:308 config/m68k/m68k.h:180 config/ns32k/ns32k.h:144
+#: config/i386/i386.h:341 config/m68k/m68k.h:344 config/ns32k/ns32k.h:144
msgid "Use normal calling convention"
msgstr ""
-#: config/i386/i386.h:310
+#: config/i386/i386.h:343
msgid "Align some doubles on dword boundary"
msgstr ""
-#: config/i386/i386.h:312
+#: config/i386/i386.h:345
msgid "Align doubles on word boundary"
msgstr ""
-#: config/i386/i386.h:314
+#: config/i386/i386.h:347
msgid "Uninitialized locals in .bss"
msgstr ""
-#: config/i386/i386.h:316
+#: config/i386/i386.h:349
msgid "Uninitialized locals in .data"
msgstr ""
-#: config/i386/i386.h:318 config/m68k/linux-aout.h:45 config/m68k/linux.h:50
-#: config/ns32k/ns32k.h:167
+#: config/i386/i386.h:351 config/m68k/linux.h:35 config/ns32k/ns32k.h:167
msgid "Use IEEE math for fp comparisons"
msgstr ""
-#: config/i386/i386.h:320 config/ns32k/ns32k.h:169
+#: config/i386/i386.h:353 config/ns32k/ns32k.h:169
msgid "Do not use IEEE math for fp comparisons"
msgstr ""
-#: config/i386/i386.h:322
+#: config/i386/i386.h:355
msgid "Return values of functions in FPU registers"
msgstr ""
-#: config/i386/i386.h:324
+#: config/i386/i386.h:357
#, fuzzy
msgid "Do not return values of functions in FPU registers"
msgstr "grootte van teruggeefwaarde van `%s' is %u bytes"
-#: config/i386/i386.h:326
+#: config/i386/i386.h:359
msgid "Do not generate sin, cos, sqrt for FPU"
msgstr ""
-#: config/i386/i386.h:328
+#: config/i386/i386.h:361
msgid "Generate sin, cos, sqrt for FPU"
msgstr ""
-#: config/i386/i386.h:330
+#: config/i386/i386.h:363
msgid "Omit the frame pointer in leaf functions"
msgstr ""
-#: config/i386/i386.h:333
+#: config/i386/i386.h:366
msgid "Enable stack probing"
msgstr ""
#. undocumented
#. undocumented
-#: config/i386/i386.h:338
+#: config/i386/i386.h:371
#, fuzzy
msgid "Align destination of the string operations"
msgstr "ANSI C staat het testen van asserties niet toe"
-#: config/i386/i386.h:340
+#: config/i386/i386.h:373
msgid "Do not align destination of the string operations"
msgstr ""
-#: config/i386/i386.h:342
+#: config/i386/i386.h:375
msgid "Inline all known string operations"
msgstr ""
-#: config/i386/i386.h:344
+#: config/i386/i386.h:377
#, fuzzy
msgid "Do not inline all known string operations"
msgstr "ANSI C staat het testen van asserties niet toe"
-#: config/i386/i386.h:346 config/i386/i386.h:350
+#: config/i386/i386.h:379 config/i386/i386.h:383
msgid "Use push instructions to save outgoing arguments"
msgstr ""
-#: config/i386/i386.h:348 config/i386/i386.h:352
+#: config/i386/i386.h:381 config/i386/i386.h:385
msgid "Do not use push instructions to save outgoing arguments"
msgstr ""
-#: config/i386/i386.h:354
+#: config/i386/i386.h:387
#, fuzzy
msgid "Support MMX built-in functions"
msgstr "ingebouwde functie `%s' is niet geïmplementeerd"
-#: config/i386/i386.h:356
+#: config/i386/i386.h:389
#, fuzzy
msgid "Do not support MMX built-in functions"
msgstr "conflicterende types voor ingebouwde functie `%s'"
-#: config/i386/i386.h:358
+#: config/i386/i386.h:391
#, fuzzy
msgid "Support 3DNow! built-in functions"
msgstr "ingebouwde functie `%s' wordt verborgen"
-#: config/i386/i386.h:360
+#: config/i386/i386.h:393
#, fuzzy
msgid "Do not support 3DNow! built-in functions"
msgstr "conflicterende types voor ingebouwde functie `%s'"
-#: config/i386/i386.h:362
+#: config/i386/i386.h:395
msgid "Support MMX and SSE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:364
+#: config/i386/i386.h:397
msgid "Do not support MMX and SSE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:366
+#: config/i386/i386.h:399
msgid "Support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:368
+#: config/i386/i386.h:401
msgid "Do not support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.h:370
+#: config/i386/i386.h:403
+#, fuzzy
+msgid "Support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr "ingebouwde functie `%s' is niet geïmplementeerd"
+
+#: config/i386/i386.h:405
+#, fuzzy
+msgid "Do not support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr "conflicterende types voor ingebouwde functie `%s'"
+
+#: config/i386/i386.h:407
msgid "sizeof(long double) is 16"
msgstr ""
-#: config/i386/i386.h:372
+#: config/i386/i386.h:409
msgid "sizeof(long double) is 12"
msgstr ""
-#: config/i386/i386.h:374
+#: config/i386/i386.h:411
msgid "Generate 64bit x86-64 code"
msgstr ""
-#: config/i386/i386.h:376
+#: config/i386/i386.h:413
msgid "Generate 32bit i386 code"
msgstr ""
-#: config/i386/i386.h:378
+#: config/i386/i386.h:415
+msgid "Use native (MS) bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:417
+msgid "Use gcc default bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:419
msgid "Use red-zone in the x86-64 code"
msgstr ""
-#: config/i386/i386.h:380
+#: config/i386/i386.h:421
msgid "Do not use red-zone in the x86-64 code"
msgstr ""
+#: config/i386/i386.h:423
+#, c-format
+msgid "Use direct references against %gs when accessing tls data"
+msgstr ""
+
+#: config/i386/i386.h:425
+#, c-format
+msgid "Do not use direct references against %gs when accessing tls data"
+msgstr ""
+
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10811,23 +10084,24 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:409 config/rs6000/rs6000.h:393 config/sparc/sparc.h:635
+#: config/i386/i386.h:459 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437
+#: config/s390/s390.h:146 config/sparc/sparc.h:650
msgid "Schedule code for given CPU"
msgstr ""
-#: config/i386/i386.h:411
+#: config/i386/i386.h:461
msgid "Generate floating point mathematics using given instruction set"
msgstr ""
-#: config/i386/i386.h:413
+#: config/i386/i386.h:463 config/s390/s390.h:148
msgid "Generate code for given CPU"
msgstr ""
-#: config/i386/i386.h:415
+#: config/i386/i386.h:465
msgid "Number of registers used to pass integer arguments"
msgstr ""
-#. TARGET_DEFAULT is defined in sun*.h and isi.h, etc.
+#. TARGET_DEFAULT is defined in m68k-none.h, netbsd.h, etc.
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10837,101 +10111,103 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:417 config/m68k/m68k.h:263
+#: config/i386/i386.h:467 config/m68k/m68k.h:360
#, fuzzy
msgid "Loop code aligned to this power of 2"
msgstr "gevraagd alignment is geen macht van 2"
-#: config/i386/i386.h:419 config/m68k/m68k.h:265
+#: config/i386/i386.h:469 config/m68k/m68k.h:362
#, fuzzy
msgid "Jump targets are aligned to this power of 2"
msgstr "gevraagd alignment is geen macht van 2"
-#: config/i386/i386.h:421 config/m68k/m68k.h:267
+#: config/i386/i386.h:471 config/m68k/m68k.h:364
#, fuzzy
msgid "Function starts are aligned to this power of 2"
msgstr "gevraagd alignment is geen macht van 2"
-#: config/i386/i386.h:424
+#: config/i386/i386.h:474
msgid "Attempt to keep stack aligned to this power of 2"
msgstr ""
-#: config/i386/i386.h:426
+#: config/i386/i386.h:476
msgid "Branches are this expensive (1-5, arbitrary units)"
msgstr ""
-#: config/i386/i386.h:428
+#: config/i386/i386.h:478
msgid "Use given x86-64 code model"
msgstr ""
#. Undocumented.
#. Undocumented.
-#: config/i386/i386.h:434
+#: config/i386/i386.h:484
msgid "Use given assembler dialect"
msgstr ""
-#: config/i386/i386.h:436
+#: config/i386/i386.h:486
msgid "Use given thread-local storage dialect"
msgstr ""
-#: config/i386/sco5.h:297
+#: config/i386/sco5.h:292
msgid "Generate ELF output"
msgstr ""
-#: config/i386/win32.h:53
-msgid "Use Mingw32 interface"
-msgstr ""
-
-#: config/i386/win32.h:55
-msgid "Use Cygwin interface"
-msgstr ""
-
-#: config/i386/win32.h:57
-msgid "Use bare Windows interface"
-msgstr ""
-
#. If the environment variable DJDIR is not defined, then DJGPP is not installed correctly and GCC will quickly become confused with the default prefix settings. Report the problem now so the user doesn't receive deceptive "file not found" error messages later.
#. DJDIR is automatically defined by the DJGPP environment config file pointed to by the environment variable DJGPP. Examine DJGPP to try and figure out what's wrong.
-#: config/i386/xm-djgpp.h:71
+#: config/i386/xm-djgpp.h:64
msgid "environment variable DJGPP not defined"
msgstr ""
-#: config/i386/xm-djgpp.h:73
+#: config/i386/xm-djgpp.h:66
#, c-format
msgid "environment variable DJGPP points to missing file '%s'"
msgstr ""
-#: config/i386/xm-djgpp.h:76
+#: config/i386/xm-djgpp.h:69
#, c-format
msgid "environment variable DJGPP points to corrupt file '%s'"
msgstr ""
-#: config/i960/i960-c.c:66
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/i860/i860.h:60
+#, fuzzy
+msgid "Generate code which uses the FPU"
+msgstr "case-label niet in een switch-statement"
+
+#: config/i860/i860.h:61 config/i860/i860.h:62
+msgid "Do not generate code which uses the FPU"
+msgstr ""
+
+#: config/i960/i960-c.c:68
msgid "sorry, not implemented: #pragma align NAME=SIZE"
msgstr ""
-#: config/i960/i960-c.c:71
+#: config/i960/i960-c.c:73
#, fuzzy
msgid "malformed #pragma align - ignored"
msgstr "misvormde #pragma weak"
-#: config/i960/i960-c.c:109
+#: config/i960/i960-c.c:111
msgid "sorry, not implemented: #pragma noalign NAME"
msgstr ""
-#: config/i960/i960.c:121 config/i960/i960.c:131
+#: config/i960/i960.c:134 config/i960/i960.c:144
msgid "conflicting architectures defined - using C series"
msgstr ""
-#: config/i960/i960.c:126
+#: config/i960/i960.c:139
msgid "conflicting architectures defined - using K series"
msgstr ""
-#: config/i960/i960.c:141
+#: config/i960/i960.c:154
msgid "iC2.0 and iC3.0 are incompatible - using iC3.0"
msgstr ""
-#: config/i960/i960.c:1448 config/m68k/m68k.c:559 config/rs6000/rs6000.c:9976
+#: config/i960/i960.c:1456 config/m68k/m68k.c:588 config/rs6000/rs6000.c:11296
#, fuzzy
msgid "stack limit expression is not supported"
msgstr "-pipe wordt niet ondersteund"
@@ -10943,412 +10219,558 @@ msgstr "-pipe wordt niet ondersteund"
#. An empty string NAME is used to identify the default VALUE.
#. ??? Not all ten of these architecture variations actually exist, but I
#. am not sure which are real and which aren't.
-#: config/i960/i960.h:240
+#: config/i960/i960.h:250
msgid "Generate SA code"
msgstr ""
-#: config/i960/i960.h:243
+#: config/i960/i960.h:253
msgid "Generate SB code"
msgstr ""
#. {"sc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate SC code")},
-#: config/i960/i960.h:248
+#: config/i960/i960.h:258
msgid "Generate KA code"
msgstr ""
-#: config/i960/i960.h:251
+#: config/i960/i960.h:261
msgid "Generate KB code"
msgstr ""
#. {"kc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate KC code")},
-#: config/i960/i960.h:256
+#: config/i960/i960.h:266
msgid "Generate JA code"
msgstr ""
-#: config/i960/i960.h:258
+#: config/i960/i960.h:268
msgid "Generate JD code"
msgstr ""
-#: config/i960/i960.h:261
+#: config/i960/i960.h:271
msgid "Generate JF code"
msgstr ""
-#: config/i960/i960.h:263
+#: config/i960/i960.h:273
msgid "generate RP code"
msgstr ""
-#: config/i960/i960.h:266
+#: config/i960/i960.h:276
msgid "Generate MC code"
msgstr ""
-#: config/i960/i960.h:269
+#: config/i960/i960.h:279
msgid "Generate CA code"
msgstr ""
#. {"cb", (TARGET_FLAG_NUMERICS|TARGET_FLAG_C_SERIES| TARGET_FLAG_BRANCH_PREDICT|TARGET_FLAG_CODE_ALIGN), N_("Generate CB code")}, {"cc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_C_SERIES|TARGET_FLAG_BRANCH_PREDICT| TARGET_FLAG_CODE_ALIGN), N_("Generate CC code")},
-#: config/i960/i960.h:279
+#: config/i960/i960.h:289
msgid "Generate CF code"
msgstr ""
-#: config/i960/i960.h:283 config/mips/mips.h:568 config/pa/pa.h:266
+#: config/i960/i960.h:293 config/mips/mips.h:539 config/pa/pa.h:266
msgid "Use software floating point"
msgstr ""
-#: config/i960/i960.h:285
+#: config/i960/i960.h:295
#, fuzzy
msgid "Use alternate leaf function entries"
msgstr "sizeof toegepast op een functie-type"
-#: config/i960/i960.h:287
+#: config/i960/i960.h:297
msgid "Do not use alternate leaf function entries"
msgstr ""
-#: config/i960/i960.h:289
+#: config/i960/i960.h:299
msgid "Perform tail call optimization"
msgstr ""
-#: config/i960/i960.h:291
+#: config/i960/i960.h:301
msgid "Do not perform tail call optimization"
msgstr ""
-#: config/i960/i960.h:293
+#: config/i960/i960.h:303
#, fuzzy
msgid "Use complex addressing modes"
msgstr "Ongeldige addresseringsmodus"
-#: config/i960/i960.h:295
+#: config/i960/i960.h:305
#, fuzzy
msgid "Do not use complex addressing modes"
msgstr "Ongeldige addresseringsmodus"
-#: config/i960/i960.h:297
+#: config/i960/i960.h:307
msgid "Align code to 8 byte boundary"
msgstr ""
-#: config/i960/i960.h:299
+#: config/i960/i960.h:309
msgid "Do not align code to 8 byte boundary"
msgstr ""
#. {"clean-linkage", (TARGET_FLAG_CLEAN_LINKAGE), N_("Force use of prototypes")}, {"no-clean-linkage", -(TARGET_FLAG_CLEAN_LINKAGE), N_("Do not force use of prototypes")},
-#: config/i960/i960.h:305 config/i960/i960.h:307
+#: config/i960/i960.h:315 config/i960/i960.h:317
msgid "Enable compatibility with iC960 v2.0"
msgstr ""
-#: config/i960/i960.h:309
+#: config/i960/i960.h:319
msgid "Enable compatibility with iC960 v3.0"
msgstr ""
-#: config/i960/i960.h:311 config/i960/i960.h:313
+#: config/i960/i960.h:321 config/i960/i960.h:323
msgid "Enable compatibility with ic960 assembler"
msgstr ""
-#: config/i960/i960.h:315
+#: config/i960/i960.h:325
msgid "Do not permit unaligned accesses"
msgstr ""
-#: config/i960/i960.h:317
+#: config/i960/i960.h:327
msgid "Permit unaligned accesses"
msgstr ""
-#: config/i960/i960.h:319
+#: config/i960/i960.h:329
msgid "Layout types like Intel's v1.3 gcc"
msgstr ""
-#: config/i960/i960.h:321
+#: config/i960/i960.h:331
msgid "Do not layout types like Intel's v1.3 gcc"
msgstr ""
-#: config/i960/i960.h:323 config/sparc/freebsd.h:80 config/sparc/linux.h:86
-#: config/sparc/linux64.h:88 config/sparc/netbsd-elf.h:238
+#: config/i960/i960.h:333 config/sparc/freebsd.h:76 config/sparc/linux.h:91
+#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215
msgid "Use 64 bit long doubles"
msgstr ""
-#: config/i960/i960.h:325
+#: config/i960/i960.h:335
#, fuzzy
msgid "Enable linker relaxation"
msgstr "lege declaratie"
-#: config/i960/i960.h:327
+#: config/i960/i960.h:337
msgid "Do not enable linker relaxation"
msgstr ""
-#: config/ia64/ia64-c.c:51
+#: config/ia64/ia64-c.c:52
#, fuzzy
msgid "malformed #pragma builtin"
msgstr "misvormde #pragma weak"
-#: config/ia64/ia64.c:4015
+# Is the %s the argument, or is it 'of' the argument?
+#: config/ia64/ia64.c:1021 config/m32r/m32r.c:354
+#, fuzzy, c-format
+msgid "invalid argument of `%s' attribute"
+msgstr "ongeldig type-argument `%s'"
+
+#: config/ia64/ia64.c:1033
+#, fuzzy
+msgid "%Jan address area attribute cannot be specified for local variables"
+msgstr "sectie-attribuut kan niet opgegeven worden voor lokale variabelen"
+
+#: config/ia64/ia64.c:1040
+#, fuzzy
+msgid "%Jaddress area of '%s' conflicts with previous declaration"
+msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie"
+
+#: config/ia64/ia64.c:1047
+#, fuzzy
+msgid "%Jaddress area attribute cannot be specified for functions"
+msgstr "sectie-attribuut kan niet opgegeven worden voor lokale variabelen"
+
+#: config/ia64/ia64.c:4288
msgid "ia64_print_operand: unknown code"
msgstr ""
-#: config/ia64/ia64.c:4292
+#: config/ia64/ia64.c:4628
msgid "value of -mfixed-range must have form REG1-REG2"
msgstr ""
-#: config/ia64/ia64.c:4319
+#: config/ia64/ia64.c:4655
#, fuzzy, c-format
msgid "%s-%s is an empty range"
msgstr "leeg bereik"
-#: config/ia64/ia64.c:4350
+#: config/ia64/ia64.c:4703
msgid "cannot optimize floating point division for both latency and throughput"
msgstr ""
-#: config/ia64/ia64.c:4356
+#: config/ia64/ia64.c:4709
msgid "cannot optimize integer division for both latency and throughput"
msgstr ""
-#: config/ia64/ia64.c:4368
+#: config/ia64/ia64.c:4715
+msgid "cannot optimize square root for both latency and throughput"
+msgstr ""
+
+#: config/ia64/ia64.c:4721
+msgid "not yet implemented: latency-optimized inline square root"
+msgstr ""
+
+#: config/ia64/ia64.c:4733
#, fuzzy, c-format
msgid "bad value (%s) for -mtls-size= switch"
msgstr "slechte waarde (%s) voor de -march= optie"
+#: config/ia64/ia64.c:4749
+#, fuzzy, c-format
+msgid "bad value (%s) for -tune= switch"
+msgstr "slechte waarde (%s) voor de -march= optie"
+
#. This macro defines names of command options to set and clear bits in
#. `target_flags'. Its definition is an initializer with a subgrouping for
#. each command option.
-#: config/ia64/ia64.h:154
+#: config/ia64/ia64.h:172
msgid "Generate big endian code"
msgstr ""
-#: config/ia64/ia64.h:156 config/mcore/mcore.h:159
+#: config/ia64/ia64.h:174 config/mcore/mcore.h:154
msgid "Generate little endian code"
msgstr ""
-#: config/ia64/ia64.h:158
+#: config/ia64/ia64.h:176
msgid "Generate code for GNU as"
msgstr ""
-#: config/ia64/ia64.h:160
+#: config/ia64/ia64.h:178
msgid "Generate code for Intel as"
msgstr ""
-#: config/ia64/ia64.h:162
+#: config/ia64/ia64.h:180
msgid "Generate code for GNU ld"
msgstr ""
-#: config/ia64/ia64.h:164
+#: config/ia64/ia64.h:182
msgid "Generate code for Intel ld"
msgstr ""
-#: config/ia64/ia64.h:166
+#: config/ia64/ia64.h:184
msgid "Generate code without GP reg"
msgstr ""
-#: config/ia64/ia64.h:168
+#: config/ia64/ia64.h:186
msgid "Emit stop bits before and after volatile extended asms"
msgstr ""
-#: config/ia64/ia64.h:170
+#: config/ia64/ia64.h:188
msgid "Don't emit stop bits before and after volatile extended asms"
msgstr ""
-#: config/ia64/ia64.h:172
+#: config/ia64/ia64.h:190
msgid "Emit code for Itanium (TM) processor B step"
msgstr ""
-#: config/ia64/ia64.h:174
+#: config/ia64/ia64.h:192
#, fuzzy
msgid "Use in/loc/out register names"
msgstr "ongeldige registernaam voor `%s'"
-#: config/ia64/ia64.h:176
+#: config/ia64/ia64.h:194
msgid "Disable use of sdata/scommon/sbss"
msgstr ""
-#: config/ia64/ia64.h:178
+#: config/ia64/ia64.h:196
msgid "Enable use of sdata/scommon/sbss"
msgstr ""
-#: config/ia64/ia64.h:180
+#: config/ia64/ia64.h:198
msgid "gp is constant (but save/restore gp on indirect calls)"
msgstr ""
-#: config/ia64/ia64.h:182
+#: config/ia64/ia64.h:200
msgid "Generate self-relocatable code"
msgstr ""
-#: config/ia64/ia64.h:184
+#: config/ia64/ia64.h:202
msgid "Generate inline floating point division, optimize for latency"
msgstr ""
-#: config/ia64/ia64.h:186
+#: config/ia64/ia64.h:204
msgid "Generate inline floating point division, optimize for throughput"
msgstr ""
-#: config/ia64/ia64.h:188
+#: config/ia64/ia64.h:206
msgid "Generate inline integer division, optimize for latency"
msgstr ""
-#: config/ia64/ia64.h:190
+#: config/ia64/ia64.h:208
msgid "Generate inline integer division, optimize for throughput"
msgstr ""
-#: config/ia64/ia64.h:192
+#: config/ia64/ia64.h:210
+msgid "Generate inline square root, optimize for latency"
+msgstr ""
+
+#: config/ia64/ia64.h:212
+msgid "Generate inline square root, optimize for throughput"
+msgstr ""
+
+#: config/ia64/ia64.h:214
msgid "Enable Dwarf 2 line debug info via GNU as"
msgstr ""
-#: config/ia64/ia64.h:194
+#: config/ia64/ia64.h:216
msgid "Disable Dwarf 2 line debug info via GNU as"
msgstr ""
-#: config/ia64/ia64.h:223
+#: config/ia64/ia64.h:218
+msgid "Enable earlier placing stop bits for better scheduling"
+msgstr ""
+
+#: config/ia64/ia64.h:220
+msgid "Disable earlier placing stop bits"
+msgstr ""
+
+#: config/ia64/ia64.h:265
msgid "Specify range of registers to make fixed"
msgstr ""
-#: config/ip2k/ip2k.c:1090
+#: config/ip2k/ip2k.c:1074
#, fuzzy
msgid "bad operand"
msgstr "ongeldige operand voor %P"
-#: config/m32r/m32r.c:139
+#: config/iq2000/iq2000.c:1816
+#, c-format
+msgid "bad value (%s) for -mcpu= switch"
+msgstr "slechte waarde (%s) voor de -march= optie"
+
+#: config/iq2000/iq2000.c:1845
+#, fuzzy, c-format
+msgid "The compiler does not support -march=%s."
+msgstr "%s ondersteunt %s niet"
+
+#: config/iq2000/iq2000.c:2232
+#, c-format
+msgid "gp_offset (%ld) or end_offset (%ld) is less than zero."
+msgstr ""
+
+#: config/iq2000/iq2000.c:3023
+#, fuzzy, c-format
+msgid "argument `%d' is not a constant"
+msgstr "het argument van `asm' is geen constante string"
+
+#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2081
+msgid "PRINT_OPERAND_ADDRESS, null pointer"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3469
+#, c-format
+msgid "PRINT_OPERAND: Unknown punctuation '%c'"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3478 config/mips/mips.c:5457
+#: config/xtensa/xtensa.c:1935
+msgid "PRINT_OPERAND null pointer"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3547
+#, fuzzy, c-format
+msgid "invalid %%P operand"
+msgstr "ongeldige operand voor %P"
+
+#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8881
+#, c-format
+msgid "invalid %%p value"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3619 config/mips/mips.c:5587
+#, fuzzy, c-format
+msgid "invalid use of %%d, %%x, or %%X"
+msgstr "ongeldig gebruik van een void-expressie"
+
+#: config/iq2000/iq2000.h:72 config/mn10300/mn10300.h:74
+msgid "No default crt0.o"
+msgstr ""
+
+#: config/iq2000/iq2000.h:74
+msgid "Use GP relative sdata/sbss sections"
+msgstr ""
+
+#: config/iq2000/iq2000.h:76
+msgid "Don't use GP relative sdata/sbss sections"
+msgstr ""
+
+#: config/iq2000/iq2000.h:78 config/mips/mips.h:563
+msgid "Use ROM instead of RAM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:80 config/mips/mips.h:565
+msgid "Don't use ROM instead of RAM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:82 config/mips/mips.h:567
+msgid "Put uninitialized constants in ROM (needs -membedded-data)"
+msgstr ""
+
+#: config/iq2000/iq2000.h:84 config/mips/mips.h:569
+msgid "Don't put uninitialized constants in ROM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:106 config/mips/mips.h:731 config/pa/pa.h:310
+msgid "Specify CPU for scheduling purposes"
+msgstr ""
+
+#: config/iq2000/iq2000.h:108 config/mips/mips.h:733
+msgid "Specify CPU for code generation purposes"
+msgstr ""
+
+#: config/m32r/m32r.c:172
#, c-format
msgid "bad value (%s) for -mmodel switch"
msgstr "slechte waarde (%s) voor optie -mmodel"
-#: config/m32r/m32r.c:148
+#: config/m32r/m32r.c:181
#, c-format
msgid "bad value (%s) for -msdata switch"
msgstr "slechte waarde (%s) voor optie -msdata"
-# Is the %s the argument, or is it 'of' the argument?
-#: config/m32r/m32r.c:319
+#: config/m32r/m32r.c:188
#, fuzzy, c-format
-msgid "invalid argument of `%s' attribute"
-msgstr "ongeldig type-argument `%s'"
-
-#: config/m32r/m32r.c:422
-msgid "const objects cannot go in .sdata/.sbss"
-msgstr "constante objecten kunnen niet in .sdata/.sbbs geplaatst worden"
+msgid "bad value (%s) for -flush-trap=n (0=<n<=15)"
+msgstr "slechte waarde (%s) voor optie -msdata"
-#: config/m32r/m32r.c:2256
+#: config/m32r/m32r.c:2295
#, fuzzy, c-format
msgid "invalid operand to %%s code"
msgstr "ongeldige operand voor %s-code"
-#: config/m32r/m32r.c:2263
+#: config/m32r/m32r.c:2302
#, fuzzy, c-format
msgid "invalid operand to %%p code"
msgstr "ongeldige operand voor %p-code"
-#: config/m32r/m32r.c:2318
+#: config/m32r/m32r.c:2357
msgid "bad insn for 'A'"
msgstr ""
-#: config/m32r/m32r.c:2370
+#: config/m32r/m32r.c:2404
#, fuzzy, c-format
msgid "invalid operand to %%T/%%B code"
msgstr "ongeldige operand voor %T/%B-code"
-#: config/m32r/m32r.c:2393
+#: config/m32r/m32r.c:2427
#, fuzzy, c-format
msgid "invalid operand to %%N code"
msgstr "ongeldige operand voor %N-code"
-#: config/m32r/m32r.c:2438
+#: config/m32r/m32r.c:2460
#, fuzzy
msgid "pre-increment address is not a register"
msgstr "operand `%d' is geen register"
-#: config/m32r/m32r.c:2445
+#: config/m32r/m32r.c:2467
#, fuzzy
msgid "pre-decrement address is not a register"
msgstr "operand `%d' is geen register"
-#: config/m32r/m32r.c:2452
+#: config/m32r/m32r.c:2474
#, fuzzy
msgid "post-increment address is not a register"
msgstr "switch-waarde is geen integer"
-#: config/m32r/m32r.c:2530 config/m32r/m32r.c:2546
-#: config/rs6000/rs6000.c:12802
+#: config/m32r/m32r.c:2550 config/m32r/m32r.c:2566
+#: config/rs6000/rs6000.c:14753
msgid "bad address"
msgstr ""
-#: config/m32r/m32r.c:2551
+#: config/m32r/m32r.c:2571
msgid "lo_sum not of register"
msgstr ""
#. { "relax", TARGET_RELAX_MASK, "" }, { "no-relax", -TARGET_RELAX_MASK, "" },
-#: config/m32r/m32r.h:241
+#: config/m32r/m32r.h:277
msgid "Display compile time statistics"
msgstr ""
-#: config/m32r/m32r.h:243
+#: config/m32r/m32r.h:279
msgid "Align all loops to 32 byte boundary"
msgstr ""
-#: config/m32r/m32r.h:246
+#: config/m32r/m32r.h:282
msgid "Only issue one instruction per cycle"
msgstr ""
-#: config/m32r/m32r.h:249
+#: config/m32r/m32r.h:285
#, fuzzy
msgid "Prefer branches over conditional execution"
msgstr "types in voorwaardelijke expressie komen niet overeen"
-#: config/m32r/m32r.h:265
+#: config/m32r/m32r.h:306
msgid "Code size: small, medium or large"
msgstr ""
-#: config/m32r/m32r.h:267
+#: config/m32r/m32r.h:308
msgid "Small data area: none, sdata, use"
msgstr ""
-#: config/m68hc11/m68hc11.c:242
+#: config/m32r/m32r.h:310 config/mips/mips.h:739
+msgid "Don't call any cache flush functions"
+msgstr ""
+
+#: config/m32r/m32r.h:312 config/mips/mips.h:741
+msgid "Specify cache flush function"
+msgstr ""
+
+#: config/m32r/m32r.h:314
+msgid "Don't call any cache flush trap"
+msgstr ""
+
+#: config/m32r/m32r.h:316
+msgid "Specify cache flush trap number"
+msgstr ""
+
+#: config/m68hc11/m68hc11.c:269
#, c-format
msgid "-f%s ignored for 68HC11/68HC12 (not supported)"
msgstr ""
-#: config/m68hc11/m68hc11.c:1305
+#: config/m68hc11/m68hc11.c:1260
msgid "`trap' and `far' attributes are not compatible, ignoring `far'"
msgstr ""
-#: config/m68hc11/m68hc11.c:1311
+#: config/m68hc11/m68hc11.c:1266
#, fuzzy
msgid "`trap' attribute is already used"
msgstr "het `%s' attribuut wordt genegeerd"
#. !!!! SCz wrong here.
-#: config/m68hc11/m68hc11.c:3327 config/m68hc11/m68hc11.c:3733
+#: config/m68hc11/m68hc11.c:3222 config/m68hc11/m68hc11.c:3606
#, fuzzy
msgid "move insn not handled"
msgstr "onvolledige CASE - %s niet opgevangen"
-#: config/m68hc11/m68hc11.c:3579 config/m68hc11/m68hc11.c:3663
-#: config/m68hc11/m68hc11.c:3946
+#: config/m68hc11/m68hc11.c:3454 config/m68hc11/m68hc11.c:3538
+#: config/m68hc11/m68hc11.c:3809
#, fuzzy
msgid "invalid register in the move instruction"
msgstr "Ongeldig register in ybase-addressering"
-#: config/m68hc11/m68hc11.c:3613
+#: config/m68hc11/m68hc11.c:3488
#, fuzzy
msgid "invalid operand in the instruction"
msgstr "ongeldige operand voor %s-code"
-#: config/m68hc11/m68hc11.c:3920
+#: config/m68hc11/m68hc11.c:3783
#, fuzzy
msgid "invalid register in the instruction"
msgstr "Ongeldig register in ybase-addressering"
-#: config/m68hc11/m68hc11.c:3953
+#: config/m68hc11/m68hc11.c:3816
#, fuzzy
msgid "operand 1 must be a hard register"
msgstr "operand `%d' is geen register"
-#: config/m68hc11/m68hc11.c:3970
+#: config/m68hc11/m68hc11.c:3830
#, fuzzy
msgid "invalid rotate insn"
msgstr "ongeldig karakter in naam van macro-parameter"
-#: config/m68hc11/m68hc11.c:4391
+#: config/m68hc11/m68hc11.c:4246
msgid "registers IX, IY and Z used in the same INSN"
msgstr ""
-#: config/m68hc11/m68hc11.c:4728 config/m68hc11/m68hc11.c:5031
+#: config/m68hc11/m68hc11.c:4583 config/m68hc11/m68hc11.c:4883
msgid "cannot do z-register replacement"
msgstr ""
-#: config/m68hc11/m68hc11.c:5094
+#: config/m68hc11/m68hc11.c:4946
#, fuzzy
msgid "invalid Z register replacement for insn"
msgstr "ongeldige registernaam voor `%s'"
@@ -11357,57 +10779,57 @@ msgstr "ongeldige registernaam voor `%s'"
#. pairs in braces, each pair being { "NAME", VALUE } where VALUE is the bits
#. to set or minus the bits to clear. An empty string NAME is used to
#. identify the default VALUE.
-#: config/m68hc11/m68hc11.h:172
+#: config/m68hc11/m68hc11.h:177
msgid "Compile with 16-bit integer mode"
msgstr ""
-#: config/m68hc11/m68hc11.h:174
+#: config/m68hc11/m68hc11.h:179
msgid "Compile with 32-bit integer mode"
msgstr ""
-#: config/m68hc11/m68hc11.h:176
+#: config/m68hc11/m68hc11.h:181
msgid "Auto pre/post decrement increment allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:178
+#: config/m68hc11/m68hc11.h:183
msgid "Auto pre/post decrement increment not allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:180
+#: config/m68hc11/m68hc11.h:185
msgid "Min/max instructions allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:182
+#: config/m68hc11/m68hc11.h:187
msgid "Min/max instructions not allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:184
+#: config/m68hc11/m68hc11.h:189
msgid "Use call and rtc for function calls and returns"
msgstr ""
-#: config/m68hc11/m68hc11.h:186
+#: config/m68hc11/m68hc11.h:191
msgid "Use jsr and rts for function calls and returns"
msgstr ""
-#: config/m68hc11/m68hc11.h:188
+#: config/m68hc11/m68hc11.h:193
#, fuzzy
msgid "Do not use direct addressing mode for soft registers"
msgstr "Ongeldige addresseringsmodus"
-#: config/m68hc11/m68hc11.h:190
+#: config/m68hc11/m68hc11.h:195
#, fuzzy
msgid "Use direct addressing mode for soft registers"
msgstr "operand `%d' is geen register"
-#: config/m68hc11/m68hc11.h:192 config/m68hc11/m68hc11.h:198
+#: config/m68hc11/m68hc11.h:197 config/m68hc11/m68hc11.h:203
msgid "Compile for a 68HC11"
msgstr ""
-#: config/m68hc11/m68hc11.h:194 config/m68hc11/m68hc11.h:200
+#: config/m68hc11/m68hc11.h:199 config/m68hc11/m68hc11.h:205
msgid "Compile for a 68HC12"
msgstr ""
-#: config/m68hc11/m68hc11.h:196 config/m68hc11/m68hc11.h:202
+#: config/m68hc11/m68hc11.h:201 config/m68hc11/m68hc11.h:207
msgid "Compile for a 68HCS12"
msgstr ""
@@ -11420,30 +10842,44 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/m68hc11/m68hc11.h:216
+#: config/m68hc11/m68hc11.h:221
msgid "Specify the register allocation order"
msgstr ""
-#: config/m68hc11/m68hc11.h:218
+#: config/m68hc11/m68hc11.h:223
msgid "Indicate the number of soft registers available"
msgstr ""
-#: config/m68k/m68k.c:158
+#: config/m68k/m68k.c:227
#, c-format
msgid "-malign-loops=%d is not between 1 and %d"
msgstr "-malign-loops=%d ligt niet tussen 1 en %d"
-#: config/m68k/m68k.c:169
+#: config/m68k/m68k.c:238
+msgid "-mshared-library-id= specified without -mid-shared-library"
+msgstr ""
+
+#: config/m68k/m68k.c:241
+#, fuzzy, c-format
+msgid "-mshared-library-id=%d is not between 0 and %d"
+msgstr "-mregparm=%d ligt niet tussen 0 en %d"
+
+#: config/m68k/m68k.c:255
+#, fuzzy
+msgid "cannot specify both -msep-data and -mid-shared-library"
+msgstr "-EB en -EL mogen niet samen gebruikt worden"
+
+#: config/m68k/m68k.c:270
#, c-format
msgid "-malign-jumps=%d is not between 1 and %d"
msgstr "-malign-jumps=%d ligt niet tussen 1 en %d"
-#: config/m68k/m68k.c:180
+#: config/m68k/m68k.c:281
#, c-format
msgid "-malign-functions=%d is not between 1 and %d"
msgstr "-malign-functions=%d ligt niet tussen 1 en %d"
-#: config/m68k/m68k.c:189
+#: config/m68k/m68k.c:290
msgid "-fPIC is not currently supported on the 68000 or 68010\n"
msgstr ""
@@ -11452,509 +10888,433 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/m68k/m68k.h:162 config/m68k/m68k.h:164
+#: config/m68k/m68k.h:248 config/m68k/m68k.h:250
msgid "Generate code for a 68020"
msgstr ""
-#: config/m68k/m68k.h:169 config/m68k/m68k.h:172
+#: config/m68k/m68k.h:255 config/m68k/m68k.h:258
msgid "Generate code for a 68000"
msgstr ""
-#: config/m68k/m68k.h:174
+#: config/m68k/m68k.h:260
msgid "Use the bit-field instructions"
msgstr ""
-#: config/m68k/m68k.h:176
+#: config/m68k/m68k.h:262
msgid "Do not use the bit-field instructions"
msgstr ""
-#: config/m68k/m68k.h:178
-msgid "Use different calling convention using 'rtd'"
-msgstr ""
-
-#: config/m68k/m68k.h:182
+#: config/m68k/m68k.h:264
msgid "Consider type `int' to be 16 bits wide"
msgstr ""
-#: config/m68k/m68k.h:184
+#: config/m68k/m68k.h:266
msgid "Consider type `int' to be 32 bits wide"
msgstr ""
-#: config/m68k/m68k.h:186
-msgid "Generate code for a Sun FPA"
-msgstr ""
-
-#: config/m68k/m68k.h:189
-msgid "Do not generate code for a Sun FPA"
-msgstr ""
-
-#: config/m68k/m68k.h:191 config/m68k/m68k.h:193
-msgid "Generate code for a Sun Sky board"
-msgstr ""
-
-#: config/m68k/m68k.h:195
-msgid "Do not use Sky linkage convention"
-msgstr ""
-
-#: config/m68k/m68k.h:197
-msgid "Generate code for a 68881"
-msgstr ""
-
-#: config/m68k/m68k.h:200
+#: config/m68k/m68k.h:269
msgid "Generate code with library calls for floating point"
msgstr ""
-#: config/m68k/m68k.h:202
+#: config/m68k/m68k.h:271
msgid "Generate code for a 68040, without any new instructions"
msgstr ""
-#: config/m68k/m68k.h:205
+#: config/m68k/m68k.h:274
msgid "Generate code for a 68060, without any new instructions"
msgstr ""
-#: config/m68k/m68k.h:209
+#: config/m68k/m68k.h:278
msgid "Generate code for a 68030"
msgstr ""
-#: config/m68k/m68k.h:212
+#: config/m68k/m68k.h:281
msgid "Generate code for a 68040"
msgstr ""
-#: config/m68k/m68k.h:216
+#: config/m68k/m68k.h:285
msgid "Generate code for a 68060"
msgstr ""
-#: config/m68k/m68k.h:221
+#: config/m68k/m68k.h:290
msgid "Generate code for a 520X"
msgstr ""
-#: config/m68k/m68k.h:224
+#: config/m68k/m68k.h:294
+#, fuzzy
+msgid "Generate code for a 5206e"
+msgstr "case-label niet in een switch-statement"
+
+#: config/m68k/m68k.h:298
+msgid "Generate code for a 528x"
+msgstr ""
+
+#: config/m68k/m68k.h:302
+msgid "Generate code for a 5307"
+msgstr ""
+
+#: config/m68k/m68k.h:306
+msgid "Generate code for a 5407"
+msgstr ""
+
+#: config/m68k/m68k.h:309
msgid "Generate code for a 68851"
msgstr ""
-#: config/m68k/m68k.h:226
+#: config/m68k/m68k.h:311
msgid "Do no generate code for a 68851"
msgstr ""
-#: config/m68k/m68k.h:229
+#: config/m68k/m68k.h:314
msgid "Generate code for a 68302"
msgstr ""
-#: config/m68k/m68k.h:232
+#: config/m68k/m68k.h:317
msgid "Generate code for a 68332"
msgstr ""
-#: config/m68k/m68k.h:236
+#: config/m68k/m68k.h:321
msgid "Generate code for a cpu32"
msgstr ""
-#: config/m68k/m68k.h:239
+#: config/m68k/m68k.h:324
msgid "Align variables on a 32-bit boundary"
msgstr ""
-#: config/m68k/m68k.h:241
+#: config/m68k/m68k.h:326
msgid "Align variables on a 16-bit boundary"
msgstr ""
-#: config/m68k/m68k.h:243
-msgid "Generate pc-relative code"
+#: config/m68k/m68k.h:328
+msgid "Enable separate data segment"
msgstr ""
-#: config/m68k/m68k.h:245
-msgid "Do not use unaligned memory references"
+#: config/m68k/m68k.h:330
+msgid "Disable separate data segment"
msgstr ""
-#: config/m68k/m68k.h:247
-msgid "Use unaligned memory references"
+#: config/m68k/m68k.h:332
+msgid "Enable ID based shared library"
msgstr ""
-# Ik ben niet zeker of short-branch vertaald moet worden.
-#: config/m88k/m88k.c:903
-#, fuzzy, c-format
-msgid "internal gcc monitor: short-branch(%x)"
-msgstr "Interne monitor van gcc: short-branch(%x)"
-
-#: config/m88k/m88k.c:2302
-#, fuzzy
-msgid "internal gcc error: Can't express symbolic location"
-msgstr "Interne fout van gcc: Kan symbolische locatie niet uitdrukken"
-
-#: config/m88k/m88k.c:2517
-#, c-format
-msgid "argument #%d is a structure"
-msgstr "argument #%d is een structure"
-
-#: config/m88k/m88k.c:2816
-#, fuzzy, c-format
-msgid "%%R not followed by %%B/C/D/E"
-msgstr "%E niet gevolgd door %B/C/D/E"
-
-#: config/m88k/m88k.c:2884
-#, fuzzy, c-format
-msgid "invalid %%x/X value"
-msgstr "ongeldige waarde voor %x/X"
-
-#: config/m88k/m88k.c:2901
-#, c-format
-msgid "invalid %%Q value"
-msgstr "ongeldige waarde voor %%Q"
-
-#: config/m88k/m88k.c:2907 config/rs6000/rs6000.c:7718
-#, fuzzy, c-format
-msgid "invalid %%q value"
-msgstr "ongeldige waarde voor %q"
-
-#: config/m88k/m88k.c:2913
-#, fuzzy, c-format
-msgid "invalid %%o value"
-msgstr "ongeldige waarde voor %o"
-
-#: config/m88k/m88k.c:2920 config/rs6000/rs6000.c:7681
-#, c-format
-msgid "invalid %%p value"
+#: config/m68k/m68k.h:334
+msgid "Disable ID based shared library"
msgstr ""
-#: config/m88k/m88k.c:2933 config/m88k/m88k.c:2938
-#, fuzzy, c-format
-msgid "invalid %%s/S value"
-msgstr "ongeldige waarde voor %s/S"
-
-#: config/m88k/m88k.c:2949
-#, fuzzy, c-format
-msgid "invalid %%P operand"
-msgstr "ongeldige operand voor %P"
-
-#: config/m88k/m88k.c:2980 config/romp/romp.c:690
-#, c-format
-msgid "invalid %%B value"
+#: config/m68k/m68k.h:336
+msgid "Generate pc-relative code"
msgstr ""
-#: config/m88k/m88k.c:3010
-#, fuzzy, c-format
-msgid "invalid %%D value"
-msgstr "ongeldige waarde voor %D"
-
-#: config/m88k/m88k.c:3023
-#, fuzzy, c-format
-msgid "`%%d' operand isn't a register"
-msgstr "operand `%d' is geen register"
-
-#: config/m88k/m88k.c:3041
-msgid "operand is r0"
+#: config/m68k/m68k.h:338
+msgid "Do not use unaligned memory references"
msgstr ""
-#: config/m88k/m88k.c:3055
-msgid "operand is const_double"
+#: config/m68k/m68k.h:340
+msgid "Use unaligned memory references"
msgstr ""
-#: config/m88k/m88k.c:3074
-msgid "invalid code"
+#: config/m68k/m68k.h:342
+msgid "Use different calling convention using 'rtd'"
msgstr ""
-#. Do any checking or such that is needed after processing the -m switches.
-#: config/m88k/m88k.h:277
-#, fuzzy
-msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
-msgstr "-fpic en -mapcs-reent zijn niet compatibel"
-
-#: config/m88k/m88k.h:299
-#, fuzzy, c-format
-msgid "invalid option `-mshort-data-%s'"
-msgstr "Pngeldige optie `-%s'"
-
-#: config/m88k/m88k.h:304
-#, fuzzy, c-format
-msgid "-mshort-data-%s is too large "
-msgstr "omvang van array `%s' is te groot"
-
-#: config/m88k/m88k.h:306
-#, fuzzy, c-format
-msgid "-mshort-data-%s and PIC are incompatible"
-msgstr "-mbsd en -mxopen zijn niet compatibel"
+#: config/m68k/m68k.h:366
+msgid "ID of shared library to build"
+msgstr ""
-#: config/mcore/mcore.c:3078
+#: config/mcore/mcore.c:2973
#, fuzzy, c-format
msgid "invalid option `-mstack-increment=%s'"
msgstr "Pngeldige optie `-%s'"
-#: config/mcore/mcore.h:126
+#: config/mcore/mcore.h:121
msgid "Inline constants if it can be done in 2 insns or less"
msgstr ""
-#: config/mcore/mcore.h:128
+#: config/mcore/mcore.h:123
msgid "Inline constants if it only takes 1 instruction"
msgstr ""
-#: config/mcore/mcore.h:130
+#: config/mcore/mcore.h:125
msgid "Set maximum alignment to 4"
msgstr ""
-#: config/mcore/mcore.h:132
+#: config/mcore/mcore.h:127
msgid "Set maximum alignment to 8"
msgstr ""
-#: config/mcore/mcore.h:136
+#: config/mcore/mcore.h:131
msgid "Do not use the divide instruction"
msgstr ""
-#: config/mcore/mcore.h:140
+#: config/mcore/mcore.h:135
msgid "Do not arbitrary sized immediates in bit operations"
msgstr ""
-#: config/mcore/mcore.h:142
+#: config/mcore/mcore.h:137
msgid "Always treat bit-field as int-sized"
msgstr ""
-#: config/mcore/mcore.h:146
+#: config/mcore/mcore.h:141
msgid "Force functions to be aligned to a 4 byte boundary"
msgstr ""
-#: config/mcore/mcore.h:148
+#: config/mcore/mcore.h:143
msgid "Force functions to be aligned to a 2 byte boundary"
msgstr ""
-#: config/mcore/mcore.h:150
+#: config/mcore/mcore.h:145
msgid "Emit call graph information"
msgstr ""
-#: config/mcore/mcore.h:154
+#: config/mcore/mcore.h:149
msgid "Prefer word accesses over byte accesses"
msgstr ""
-#: config/mcore/mcore.h:165
+#: config/mcore/mcore.h:160
msgid "Generate code for the M*Core M340"
msgstr ""
-#: config/mcore/mcore.h:178
+#: config/mcore/mcore.h:173
msgid "Maximum amount for a single stack increment operation"
msgstr ""
-#: config/mips/mips.c:5128
+#: config/mips/mips.c:3115 config/xtensa/xtensa.c:992
+#: config/xtensa/xtensa.c:1024 config/xtensa/xtensa.c:1033
+msgid "bad test"
+msgstr ""
+
+#: config/mips/mips.c:4593
#, c-format
msgid "bad value (%s) for -mabi= switch"
msgstr "slechte waarde (%s) voor optie -mabi="
-#: config/mips/mips.c:5158
+#: config/mips/mips.c:4616
#, c-format
-msgid "-mips%d conflicts with the other architecture options, which specify a MIPS%d processor"
+msgid "-mips%s conflicts with the other architecture options, which specify a MIPS%d processor"
msgstr ""
-#: config/mips/mips.c:5165
-#, c-format
-msgid "bad value (%s) for -mips switch"
-msgstr "slechte waarde (%s) voor optie -mips"
-
-#: config/mips/mips.c:5180
+#: config/mips/mips.c:4635
#, fuzzy, c-format
msgid "-march=%s is not compatible with the selected ABI"
msgstr "case-selector niet compatibel met label"
-#: config/mips/mips.c:5192
+#: config/mips/mips.c:4650
msgid "-mgp64 used with a 32-bit processor"
msgstr ""
-#: config/mips/mips.c:5194
+#: config/mips/mips.c:4652
msgid "-mgp32 used with a 64-bit ABI"
msgstr ""
-#: config/mips/mips.c:5196
+#: config/mips/mips.c:4654
msgid "-mgp64 used with a 32-bit ABI"
msgstr ""
-#: config/mips/mips.c:5214 config/mips/mips.c:5216 config/mips/mips.c:5218
+#: config/mips/mips.c:4672 config/mips/mips.c:4674 config/mips/mips.c:4676
+#: config/mips/mips.c:4804
#, fuzzy, c-format
msgid "unsupported combination: %s"
msgstr "niet-ondersteunde versie"
-#: config/mips/mips.c:5288
+#: config/mips/mips.c:4768
+msgid "-g is only supported using GNU as,"
+msgstr ""
+
+#: config/mips/mips.c:4770
+msgid "-g is only supported using GNU as with -mabi=32,"
+msgstr ""
+
+#: config/mips/mips.c:4771 config/pa/pa.c:353
+#, fuzzy
+msgid "-g option disabled"
+msgstr "ingeschakelde opties: "
+
+#: config/mips/mips.c:4799
msgid "generation of Branch Likely instructions enabled, but not supported by architecture"
msgstr ""
-#: config/mips/mips.c:5299
+#: config/mips/mips.c:4816
msgid "-G is incompatible with PIC code which is the default"
msgstr ""
-#: config/mips/mips.c:5315
+#: config/mips/mips.c:4844
msgid "-membedded-pic and -mabicalls are incompatible"
msgstr ""
-#: config/mips/mips.c:5318
+#: config/mips/mips.c:4847
msgid "-G and -membedded-pic are incompatible"
msgstr ""
-#: config/mips/mips.c:5369
-#, fuzzy, c-format
-msgid "invalid option `entry%s'"
-msgstr "Ongeldige optie `%s'"
+#: config/mips/mips.c:4879
+msgid "non-PIC n64 with explicit relocations"
+msgstr ""
-#: config/mips/mips.c:5372
-msgid "-mentry is only meaningful with -mips-16"
+#: config/mips/mips.c:5267
+msgid "mips_debugger_offset called with non stack/frame/arg pointer"
msgstr ""
-#: config/mips/mips.c:5781
+#: config/mips/mips.c:5394
#, c-format
msgid "internal error: %%) found without a %%( in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5795
+#: config/mips/mips.c:5408
#, c-format
msgid "internal error: %%] found without a %%[ in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5808
+#: config/mips/mips.c:5421
#, c-format
msgid "internal error: %%> found without a %%< in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5821
+#: config/mips/mips.c:5434
#, c-format
msgid "internal error: %%} found without a %%{ in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5835
+#: config/mips/mips.c:5448
#, c-format
msgid "PRINT_OPERAND: unknown punctuation '%c'"
msgstr ""
-#: config/mips/mips.c:5844 config/xtensa/xtensa.c:1939
-msgid "PRINT_OPERAND null pointer"
-msgstr ""
-
-#: config/mips/mips.c:5975
-#, fuzzy, c-format
-msgid "invalid use of %%d, %%x, or %%X"
-msgstr "ongeldig gebruik van een void-expressie"
-
-#: config/mips/mips.c:6013 config/xtensa/xtensa.c:2033
-msgid "PRINT_OPERAND_ADDRESS, null pointer"
+#: config/mips/mips.c:5477
+#, c-format
+msgid "PRINT_OPERAND, invalid insn for %%C"
msgstr ""
-#: config/mips/mips.c:6242
-msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
+#: config/mips/mips.c:5494
+#, c-format
+msgid "PRINT_OPERAND, invalid insn for %%N"
msgstr ""
-#: config/mips/mips.c:6552
-#, fuzzy
-msgid "can't rewind temp file"
-msgstr "kan bestand '%s' niet openen"
-
-#: config/mips/mips.c:6556
-#, fuzzy
-msgid "can't write to output file"
-msgstr "kan bestand '%s' niet openen"
-
-#: config/mips/mips.c:6559
-msgid "can't read from temp file"
+#: config/mips/mips.c:5503
+#, c-format
+msgid "PRINT_OPERAND, invalid insn for %%F"
msgstr ""
-#: config/mips/mips.c:6562
-#, fuzzy
-msgid "can't close temp file"
-msgstr "close %s"
-
-#: config/mips/mips.c:7003
+#: config/mips/mips.c:5512
#, c-format
-msgid "gp_offset (%ld) or end_offset (%ld) is less than zero"
+msgid "PRINT_OPERAND, invalid insn for %%W"
msgstr ""
-#: config/mips/mips.c:7112
-#, c-format
-msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
+#: config/mips/mips.c:5618
+msgid "PRINT_OPERAND, invalid operand for relocation"
msgstr ""
-#: config/mips/mips.c:9335
+#: config/mips/mips.c:8252
#, c-format
msgid "can not handle inconsistent calls to `%s'"
msgstr ""
-#: config/mips/mips.c:10467
+#: config/mips/mips.c:9258
msgid "the cpu name must be lower case"
msgstr ""
-#: config/mips/mips.c:10489
+#: config/mips/mips.c:9280
#, fuzzy, c-format
msgid "bad value (%s) for %s"
msgstr "slechte waarde (%s) foor optie %s"
+#: config/mips/mips.c:9549
+#, fuzzy, c-format
+msgid "can't rewind temp file: %m"
+msgstr "kan bestand '%s' niet openen"
+
+#: config/mips/mips.c:9553
+#, fuzzy, c-format
+msgid "can't write to output file: %m"
+msgstr "kan bestand '%s' niet openen"
+
+#: config/mips/mips.c:9556
+#, fuzzy, c-format
+msgid "can't read from temp file: %m"
+msgstr "kan bestand '%s' niet openen"
+
+#: config/mips/mips.c:9559
+#, fuzzy, c-format
+msgid "can't close temp file: %m"
+msgstr "close %s"
+
+#: config/mips/linux64.h:39
+msgid "Same as -mabi=32, just trickier"
+msgstr ""
+
#. Target CPU builtins.
#. We do this here because __mips is defined below and so we can't use builtin_define_std.
#. Treat _R3000 and _R4000 like register-size defines, which is how they've historically been used.
#. Macros dependent on the C dialect.
-#. Bizzare, but needed at least for Irix.
+#. Bizarre, but needed at least for Irix.
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:528 config/mn10300/mn10300.h:64
-msgid "No default crt0.o"
-msgstr ""
-
-#: config/mips/mips.h:530
+#: config/mips/mips.h:501
msgid "Use 64-bit int type"
msgstr ""
-#: config/mips/mips.h:532
+#: config/mips/mips.h:503
msgid "Use 64-bit long type"
msgstr ""
-#: config/mips/mips.h:534
+#: config/mips/mips.h:505
msgid "Use 32-bit long type"
msgstr ""
-#: config/mips/mips.h:536
+#: config/mips/mips.h:507
msgid "Optimize lui/addiu address loads"
msgstr ""
-#: config/mips/mips.h:538
+#: config/mips/mips.h:509
msgid "Don't optimize lui/addiu address loads"
msgstr ""
-#: config/mips/mips.h:540
+#: config/mips/mips.h:511
msgid "Use MIPS as"
msgstr ""
-#: config/mips/mips.h:542
+#: config/mips/mips.h:513
msgid "Use GNU as"
msgstr ""
-#: config/mips/mips.h:544
+#: config/mips/mips.h:515
msgid "Use symbolic register names"
msgstr ""
-#: config/mips/mips.h:546
+#: config/mips/mips.h:517
msgid "Don't use symbolic register names"
msgstr ""
-#: config/mips/mips.h:548 config/mips/mips.h:550
-msgid "Use GP relative sdata/sbss sections"
+#: config/mips/mips.h:519 config/mips/mips.h:521
+msgid "Use GP relative sdata/sbss sections (now ignored)"
msgstr ""
-#: config/mips/mips.h:552 config/mips/mips.h:554
-msgid "Don't use GP relative sdata/sbss sections"
+#: config/mips/mips.h:523 config/mips/mips.h:525
+msgid "Don't use GP relative sdata/sbss sections (now ignored)"
msgstr ""
-#: config/mips/mips.h:556
-msgid "Output compiler statistics"
+#: config/mips/mips.h:527
+msgid "Output compiler statistics (now ignored)"
msgstr ""
-#: config/mips/mips.h:558
+#: config/mips/mips.h:529
msgid "Don't output compiler statistics"
msgstr ""
-#: config/mips/mips.h:560
+#: config/mips/mips.h:531
msgid "Don't optimize block moves"
msgstr ""
-#: config/mips/mips.h:562
+#: config/mips/mips.h:533
msgid "Optimize block moves"
msgstr ""
-#: config/mips/mips.h:564
+#: config/mips/mips.h:535
msgid "Use mips-tfile asm postpass"
msgstr ""
-#: config/mips/mips.h:566
+#: config/mips/mips.h:537
msgid "Don't use mips-tfile asm postpass"
msgstr ""
@@ -11964,272 +11324,239 @@ msgstr ""
#. where VALUE is the bits to set or minus the bits to clear and DOC
#. is the documentation for --help (NULL if intentionally undocumented).
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:570 config/pdp11/pdp11.h:56
+#: config/mips/mips.h:541 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:314
msgid "Use hardware floating point"
msgstr ""
-#: config/mips/mips.h:572
+#: config/mips/mips.h:543
msgid "Use 64-bit FP registers"
msgstr ""
-#: config/mips/mips.h:574
+#: config/mips/mips.h:545
msgid "Use 32-bit FP registers"
msgstr ""
-#: config/mips/mips.h:576
+#: config/mips/mips.h:547
msgid "Use 64-bit general registers"
msgstr ""
-#: config/mips/mips.h:578
+#: config/mips/mips.h:549
msgid "Use 32-bit general registers"
msgstr ""
-#: config/mips/mips.h:580
+#: config/mips/mips.h:551
msgid "Use Irix PIC"
msgstr ""
-#: config/mips/mips.h:582
+#: config/mips/mips.h:553
msgid "Don't use Irix PIC"
msgstr ""
-#: config/mips/mips.h:584
+#: config/mips/mips.h:555
msgid "Use indirect calls"
msgstr ""
-#: config/mips/mips.h:586
+#: config/mips/mips.h:557
msgid "Don't use indirect calls"
msgstr ""
-#: config/mips/mips.h:588
+#: config/mips/mips.h:559
msgid "Use embedded PIC"
msgstr ""
-#: config/mips/mips.h:590
+#: config/mips/mips.h:561
msgid "Don't use embedded PIC"
msgstr ""
-#: config/mips/mips.h:592
-msgid "Use ROM instead of RAM"
-msgstr ""
-
-#: config/mips/mips.h:594
-msgid "Don't use ROM instead of RAM"
-msgstr ""
-
-#: config/mips/mips.h:596
-msgid "Put uninitialized constants in ROM (needs -membedded-data)"
-msgstr ""
-
-#: config/mips/mips.h:598
-msgid "Don't put uninitialized constants in ROM"
-msgstr ""
-
-#. Macro to define tables used to set the flags.
-#: config/mips/mips.h:600 config/xtensa/xtensa.h:110
+#: config/mips/mips.h:571
msgid "Use big-endian byte order"
msgstr ""
-#: config/mips/mips.h:602 config/xtensa/xtensa.h:112
+#: config/mips/mips.h:573
msgid "Use little-endian byte order"
msgstr ""
-#: config/mips/mips.h:604
+#: config/mips/mips.h:575
msgid "Use single (32-bit) FP only"
msgstr ""
-#: config/mips/mips.h:606
+#: config/mips/mips.h:577
msgid "Don't use single (32-bit) FP only"
msgstr ""
-#: config/mips/mips.h:608
+#: config/mips/mips.h:579
msgid "Use multiply accumulate"
msgstr ""
-#: config/mips/mips.h:610
+#: config/mips/mips.h:581
msgid "Don't use multiply accumulate"
msgstr ""
-#: config/mips/mips.h:612 config/rs6000/rs6000.h:314
+#: config/mips/mips.h:583
msgid "Don't generate fused multiply/add instructions"
msgstr ""
-#: config/mips/mips.h:614 config/rs6000/rs6000.h:312
+#: config/mips/mips.h:585 config/rs6000/rs6000.h:330
msgid "Generate fused multiply/add instructions"
msgstr ""
-#: config/mips/mips.h:616
+#: config/mips/mips.h:587
msgid "Work around early 4300 hardware bug"
msgstr ""
-#: config/mips/mips.h:618
+#: config/mips/mips.h:589
msgid "Don't work around early 4300 hardware bug"
msgstr ""
-#: config/mips/mips.h:620
-msgid "Trap on integer divide by zero"
+#: config/mips/mips.h:591
+msgid "Work around errata for early SB-1 revision 2 cores"
msgstr ""
-#: config/mips/mips.h:622
-msgid "Don't trap on integer divide by zero"
+#: config/mips/mips.h:593
+msgid "Don't work around errata for early SB-1 revision 2 cores"
msgstr ""
-#: config/mips/mips.h:624
-msgid "Trap on integer divide overflow"
+#: config/mips/mips.h:595
+msgid "Trap on integer divide by zero"
msgstr ""
-#: config/mips/mips.h:626
-msgid "Don't trap on integer divide overflow"
+#: config/mips/mips.h:597
+msgid "Don't trap on integer divide by zero"
msgstr ""
-#: config/mips/mips.h:628
+#: config/mips/mips.h:599
msgid "Use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:630
+#: config/mips/mips.h:601
msgid "Don't use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:744 config/pa/pa.h:310
-msgid "Specify CPU for scheduling purposes"
+#: config/mips/mips.h:603
+msgid "Use NewABI-style %reloc() assembly operators"
msgstr ""
-#: config/mips/mips.h:746
-msgid "Specify CPU for code generation purposes"
+#: config/mips/mips.h:605
+msgid "Use assembler macros instead of relocation operators"
msgstr ""
-#: config/mips/mips.h:748
-msgid "Specify an ABI"
+#: config/mips/mips.h:607
+msgid "Generate mips16 code"
msgstr ""
-#: config/mips/mips.h:750
-msgid "Specify a Standard MIPS ISA"
-msgstr ""
+#: config/mips/mips.h:609
+#, fuzzy
+msgid "Generate normal-mode code"
+msgstr "incompatibele record-modus"
-#: config/mips/mips.h:752
-msgid "Use mips16 entry/exit psuedo ops"
+#: config/mips/mips.h:611
+msgid "Lift restrictions on GOT size"
msgstr ""
-#: config/mips/mips.h:754
-msgid "Don't use MIPS16 instructions"
+#: config/mips/mips.h:613
+msgid "Do not lift restrictions on GOT size"
msgstr ""
-#: config/mips/mips.h:756
-msgid "Don't call any cache flush functions"
+#: config/mips/mips.h:735
+msgid "Specify an ABI"
msgstr ""
-#: config/mips/mips.h:758
-msgid "Specify cache flush function"
+#: config/mips/mips.h:737
+msgid "Specify a Standard MIPS ISA"
msgstr ""
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/mips/mips.h:2900
+#: config/mips/mips.h:2403
msgid "mips16 function profiling"
msgstr ""
-#: config/mmix/mmix.c:189
+#: config/mmix/mmix.c:207
#, fuzzy, c-format
msgid "-f%s not supported: ignored"
msgstr "-pipe wordt niet ondersteund"
-#: config/mmix/mmix.c:644
+#: config/mmix/mmix.c:633
#, c-format
msgid "too large function value type, needs %d registers, have only %d registers for this"
msgstr ""
-#: config/mmix/mmix.c:826
+#: config/mmix/mmix.c:803
msgid "function_profiler support for MMIX"
msgstr ""
-#: config/mmix/mmix.c:848
+#: config/mmix/mmix.c:823
msgid "MMIX Internal: Last named vararg would not fit in a register"
msgstr ""
-#: config/mmix/mmix.c:1639 config/mmix/mmix.c:1769
+#: config/mmix/mmix.c:1538 config/mmix/mmix.c:1668
msgid "MMIX Internal: Expected a CONST_INT, not this"
msgstr ""
-#: config/mmix/mmix.c:1647 config/mmix/mmix.c:1671 config/mmix/mmix.c:1787
+#: config/mmix/mmix.c:1546 config/mmix/mmix.c:1570 config/mmix/mmix.c:1686
#, c-format
msgid "MMIX Internal: Bad register: %d"
msgstr ""
-#: config/mmix/mmix.c:1718
+#: config/mmix/mmix.c:1617
msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
msgstr ""
-#: config/mmix/mmix.c:1737
+#: config/mmix/mmix.c:1636
msgid "MMIX Internal: Expected a register, not this"
msgstr ""
-#: config/mmix/mmix.c:1747
+#: config/mmix/mmix.c:1646
msgid "MMIX Internal: Expected a constant, not this"
msgstr ""
#. Presumably there's a missing case above if we get here.
-#: config/mmix/mmix.c:1779
+#: config/mmix/mmix.c:1678
#, c-format
msgid "MMIX Internal: Missing `%c' case in mmix_print_operand"
msgstr ""
#. We need the original here.
-#: config/mmix/mmix.c:1831
+#: config/mmix/mmix.c:1730
msgid "MMIX Internal: Cannot decode this operand"
msgstr ""
-#: config/mmix/mmix.c:1891
+#: config/mmix/mmix.c:1787
msgid "MMIX Internal: This is not a recognized address"
msgstr ""
-#: config/mmix/mmix.c:2082
+#: config/mmix/mmix.c:1964
#, c-format
msgid "stack frame not a multiple of 8 bytes: %d"
msgstr ""
-#: config/mmix/mmix.c:2321
+#: config/mmix/mmix.c:2203
#, c-format
msgid "stack frame not a multiple of octabyte: %d"
msgstr ""
-#: config/mmix/mmix.c:2818 config/mmix/mmix.c:2887
+#: config/mmix/mmix.c:2677 config/mmix/mmix.c:2741
#, c-format
msgid "MMIX Internal: %s is not a shiftable int"
msgstr ""
-#: config/mmix/mmix.c:3006
+#: config/mmix/mmix.c:2857
msgid "MMIX Internal: Trying to output invalidly reversed condition:"
msgstr ""
-#: config/mmix/mmix.c:3013
+#: config/mmix/mmix.c:2864
msgid "MMIX Internal: What's the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:3017
+#: config/mmix/mmix.c:2868
msgid "MMIX Internal: What is the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:3088
+#: config/mmix/mmix.c:2938
#, fuzzy
msgid "MMIX Internal: This is not a constant:"
msgstr "gevraagd alignment is geen constante"
-#. For these target macros, there is no generic documentation here. You
-#. should read `Using and Porting GCC' for that. Only comments specific
-#. to the MMIX target are here.
-#.
-#. There are however references to the specific texinfo node (comments
-#. with "Node:"), so there should be little or nothing amiss. Probably
-#. the opposite, since we don't have to care about old littering and
-#. soon outdated generic comments.
-#. Node: Driver
-#. User symbols are in the same name-space as built-in symbols, but we
-#. don't need the built-in symbols, so remove those and instead apply
-#. stricter operand checking. Don't warn when expanding insns.
-#. Pass on -mset-program-start=N and -mset-data-start=M to the linker.
-#. Provide default program start 0x100 unless -mno-set-program-start.
-#. Don't do this if linking relocatably, with -r. For a final link,
-#. produce mmo, unless ELF is requested or when linking relocatably.
-#. Put unused option values here.
#: config/mmix/mmix.h:132
msgid "Set start-address of the program"
msgstr ""
@@ -12300,23 +11627,27 @@ msgstr ""
msgid "Do not generate a single exit point for each function"
msgstr "interne fout - slechte ingebouwde functie `%s'"
-#: config/mn10300/mn10300.h:59
-msgid "Work around hardware multiply bug"
+#: config/mn10300/linux.h:60 config/mn10300/mn10300.h:71
+msgid "Target the AM33 processor"
msgstr ""
-#: config/mn10300/mn10300.h:60
-msgid "Do not work around hardware multiply bug"
+#: config/mn10300/linux.h:61 config/mn10300/mn10300.h:75
+msgid "Target the AM33/2.0 processor"
msgstr ""
-#: config/mn10300/mn10300.h:61
-msgid "Target the AM33 processor"
+#: config/mn10300/linux.h:62 config/mn10300/mn10300.h:78
+msgid "Enable linker relaxations"
msgstr ""
-#: config/mn10300/mn10300.h:65
-msgid "Enable linker relaxations"
+#: config/mn10300/mn10300.h:69
+msgid "Work around hardware multiply bug"
+msgstr ""
+
+#: config/mn10300/mn10300.h:70
+msgid "Do not work around hardware multiply bug"
msgstr ""
-#: config/ns32k/ns32k.h:142 config/s390/s390.h:69
+#: config/ns32k/ns32k.h:142 config/s390/s390.h:125
msgid "Don't use hardware fp"
msgstr ""
@@ -12391,44 +11722,37 @@ msgstr "Ongeldige registerklasse-letter %c"
msgid "No \"Small register classes\" kludge"
msgstr "Ongeldige registerklasse-letter %c"
-#: config/pa/pa.c:261
+#: config/pa/pa.c:304
#, c-format
msgid ""
"unknown -mschedule= option (%s).\n"
"Valid options are 700, 7100, 7100LC, 7200, 7300, and 8000\n"
msgstr ""
-#: config/pa/pa.c:286
+#: config/pa/pa.c:329
#, c-format
msgid ""
"unknown -march= option (%s).\n"
"Valid options are 1.0, 1.1, and 2.0\n"
msgstr ""
-#: config/pa/pa.c:299
+#: config/pa/pa.c:342
msgid "PIC code generation is not supported in the portable runtime model\n"
msgstr ""
-#: config/pa/pa.c:304
+#: config/pa/pa.c:347
msgid "PIC code generation is not compatible with fast indirect calls\n"
msgstr ""
-#: config/pa/pa.c:309
+#: config/pa/pa.c:352
msgid "-g is only supported when using GAS on this processor,"
msgstr ""
-#: config/pa/pa.c:310
-#, fuzzy
-msgid "-g option disabled"
-msgstr "ingeschakelde opties: "
-
-#: config/pa/pa-hiux.h:75 config/pa/pa-hpux.h:87 config/pa/pa-hpux7.h:81
-#: config/pa/pa64-hpux.h:25
+#: config/pa/pa-hpux.h:91 config/pa/pa64-hpux.h:25
msgid "Generate cpp defines for server IO"
msgstr ""
-#: config/pa/pa-hiux.h:76 config/pa/pa-hpux.h:88 config/pa/pa-hpux7.h:82
-#: config/pa/pa64-hpux.h:27
+#: config/pa/pa-hpux.h:92 config/pa/pa64-hpux.h:27
msgid "Generate cpp defines for workstation IO"
msgstr ""
@@ -12557,52 +11881,52 @@ msgstr ""
msgid "Assume code will be linked by HP ld"
msgstr ""
-#: config/pdp11/pdp11.h:57
+#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:316
msgid "Do not use hardware floating point"
msgstr ""
#. return float result in ac0
-#: config/pdp11/pdp11.h:59
+#: config/pdp11/pdp11.h:64
#, fuzzy
msgid "Return floating point results in ac0"
msgstr "floating-point constante buiten bereik"
-#: config/pdp11/pdp11.h:60
+#: config/pdp11/pdp11.h:65
#, fuzzy
msgid "Return floating point results in memory"
msgstr "Ongeldige optie voor floating-point emulatie: -mfpe-%s"
#. is 11/40
-#: config/pdp11/pdp11.h:62
+#: config/pdp11/pdp11.h:67
msgid "Generate code for an 11/40"
msgstr ""
#. is 11/45
-#: config/pdp11/pdp11.h:65
+#: config/pdp11/pdp11.h:70
msgid "Generate code for an 11/45"
msgstr ""
#. is 11/10
-#: config/pdp11/pdp11.h:68
+#: config/pdp11/pdp11.h:73
msgid "Generate code for an 11/10"
msgstr ""
#. use movstrhi for bcopy
#. use 32 bit for int
-#: config/pdp11/pdp11.h:73 config/pdp11/pdp11.h:74
+#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
msgid "Use 32 bit int"
msgstr ""
-#: config/pdp11/pdp11.h:75 config/pdp11/pdp11.h:76
+#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
msgid "Use 16 bit int"
msgstr ""
#. use 32 bit for float
-#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
+#: config/pdp11/pdp11.h:83 config/pdp11/pdp11.h:84
msgid "Use 32 bit float"
msgstr ""
-#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
+#: config/pdp11/pdp11.h:85 config/pdp11/pdp11.h:86
msgid "Use 64 bit float"
msgstr ""
@@ -12610,69 +11934,53 @@ msgstr ""
#. is branching expensive - on a PDP, it's actually really cheap
#. this is just to play around and check what code gcc generates
#. split instruction and data memory?
-#: config/pdp11/pdp11.h:90
+#: config/pdp11/pdp11.h:95
msgid "Target has split I&D"
msgstr ""
-#: config/pdp11/pdp11.h:91
+#: config/pdp11/pdp11.h:96
msgid "Target does not have split I&D"
msgstr ""
#. UNIX assembler syntax?
-#: config/pdp11/pdp11.h:93
+#: config/pdp11/pdp11.h:98
msgid "Use UNIX assembler syntax"
msgstr ""
-#: config/pdp11/pdp11.h:94
+#: config/pdp11/pdp11.h:99
msgid "Use DEC assembler syntax"
msgstr ""
-#: config/romp/romp.c:717 config/rs6000/rs6000.c:7755
-#, c-format
-msgid "invalid %%S value"
+#: config/rs6000/host-darwin.c:52
+msgid "Segmentation Fault (code)"
msgstr ""
-#: config/romp/romp.c:726 config/romp/romp.c:733
-#, c-format
-msgid "invalid %%b value"
+#: config/rs6000/host-darwin.c:83
+msgid "Out of stack space.\n"
msgstr ""
-#: config/romp/romp.c:773 config/romp/romp.c:784
+#: config/rs6000/host-darwin.c:104
#, c-format
-msgid "invalid %%z value"
+msgid "Try running `%s' in the shell to raise its limit.\n"
msgstr ""
-#: config/romp/romp.c:792 config/romp/romp.c:800
-#, c-format
-msgid "invalid %%Z value"
+#: config/rs6000/host-darwin.c:117
+msgid "Segmentation Fault"
msgstr ""
-#: config/romp/romp.c:807 config/romp/romp.c:816 config/romp/romp.c:823
-#: config/rs6000/rs6000.c:7584
+#: config/rs6000/host-darwin.c:131
#, c-format
-msgid "invalid %%k value"
+msgid "While setting up signal stack: %m"
msgstr ""
-#: config/romp/romp.c:908 config/romp/romp.c:951
+#: config/rs6000/host-darwin.c:137
#, c-format
-msgid "invalid %%j value"
+msgid "While setting up signal handler: %m"
msgstr ""
-#. Perform any needed actions needed for a function that is receiving a
-#. variable number of arguments.
-#.
-#. CUM is as above.
-#.
-#. MODE and TYPE are the mode and type of the current parameter.
-#.
-#. PRETEND_SIZE is a variable that should be set to the amount of stack
-#. that must be pushed by the prolog to pretend that our caller pushed
-#. it.
-#.
-#. Normally, this macro will push all remaining incoming registers on the
-#. stack and set PRETEND_SIZE to the length of the registers pushed.
-#: config/romp/romp.h:648
-msgid "can't have varargs with -mfp-arg-in-fp-regs"
+#: config/rs6000/host-darwin.c:184
+#, c-format
+msgid "couldn't unmap pch_address_space: %m\n"
msgstr ""
#. Handle the machine specific pragma longcall. Its syntax is
@@ -12684,209 +11992,257 @@ msgstr ""
#. rs6000_default_long_calls is set to the value of TOGGLE, changing
#. whether or not new function declarations receive a longcall
#. attribute by default.
-#: config/rs6000/rs6000-c.c:44
+#: config/rs6000/rs6000-c.c:46
#, fuzzy
msgid "ignoring malformed #pragma longcall"
msgstr "pragma wordt genegeerd: %s"
-#: config/rs6000/rs6000-c.c:58
+#: config/rs6000/rs6000-c.c:59
#, fuzzy
msgid "missing open paren"
msgstr "beginwaarde ontbreekt"
-#: config/rs6000/rs6000-c.c:60
+#: config/rs6000/rs6000-c.c:61
#, fuzzy
msgid "missing number"
msgstr "beginwaarde ontbreekt"
-#: config/rs6000/rs6000-c.c:62
+#: config/rs6000/rs6000-c.c:63
#, fuzzy
msgid "missing close paren"
msgstr "ontbrekende index-expressie"
-#: config/rs6000/rs6000-c.c:65
+#: config/rs6000/rs6000-c.c:66
msgid "number must be 0 or 1"
msgstr ""
# Moet 'signature-string' vertaald worden?
-#: config/rs6000/rs6000-c.c:68
+#: config/rs6000/rs6000-c.c:69
#, fuzzy
msgid "junk at end of #pragma longcall"
msgstr "Brol aan einde van signature-string."
-#: config/rs6000/rs6000.c:592
+#: config/rs6000/rs6000.c:793
msgid "-mmultiple is not supported on little endian systems"
msgstr ""
-#: config/rs6000/rs6000.c:599
+#: config/rs6000/rs6000.c:800
msgid "-mstring is not supported on little endian systems"
msgstr ""
-#: config/rs6000/rs6000.c:623
+#: config/rs6000/rs6000.c:814
#, c-format
msgid "unknown -mdebug-%s switch"
msgstr ""
-#: config/rs6000/rs6000.c:635
+#: config/rs6000/rs6000.c:826
#, c-format
msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'"
msgstr ""
-#: config/rs6000/rs6000.c:646
+#: config/rs6000/rs6000.c:837
#, c-format
msgid "Unknown switch -mlong-double-%s"
msgstr ""
-#: config/rs6000/rs6000.c:738
+#: config/rs6000/rs6000.c:1008
#, fuzzy, c-format
-msgid "unknown -misel= option specified: '%s'"
+msgid "unknown -m%s= option specified: '%s'"
msgstr "onbekende machine-modus `%s'"
-#: config/rs6000/rs6000.c:753
+#: config/rs6000/rs6000.c:1025
+#, c-format
+msgid "not configured for ABI: '%s'"
+msgstr ""
+
+#: config/rs6000/rs6000.c:1031
#, fuzzy, c-format
-msgid "unknown -mvrsave= option specified: '%s'"
+msgid "unknown ABI specified: '%s'"
msgstr "onbekende machine-modus `%s'"
-#: config/rs6000/rs6000.c:772
+#: config/rs6000/rs6000.c:1045
#, fuzzy, c-format
-msgid "unknown ABI specified: '%s'"
+msgid "unknown -malign-XXXXX option specified: '%s'"
msgstr "onbekende machine-modus `%s'"
-#: config/rs6000/rs6000.c:4206
+#: config/rs6000/rs6000.c:5358
#, fuzzy
msgid "argument 1 must be a 5-bit signed literal"
msgstr "argument van `%s' moet van een integraal type zijn."
-#: config/rs6000/rs6000.c:4313 config/rs6000/rs6000.c:4903
+#: config/rs6000/rs6000.c:5460 config/rs6000/rs6000.c:6083
#, fuzzy
msgid "argument 2 must be a 5-bit unsigned literal"
msgstr "argument van `%s' moet van een integraal type zijn."
-#: config/rs6000/rs6000.c:4356
+#: config/rs6000/rs6000.c:5500
#, fuzzy
msgid "argument 1 of __builtin_altivec_predicate must be a constant"
msgstr "argument voor `__builtin_args_info' moet een constante zijn"
-#: config/rs6000/rs6000.c:4410
+#: config/rs6000/rs6000.c:5554
#, fuzzy
msgid "argument 1 of __builtin_altivec_predicate is out of range"
msgstr "argument voor `__builtin_args_info' buiten bereik"
-#: config/rs6000/rs6000.c:4489
+#: config/rs6000/rs6000.c:5682
#, fuzzy
msgid "argument 3 must be a 4-bit unsigned literal"
msgstr "argument van `%s' moet van een integraal type zijn."
-#: config/rs6000/rs6000.c:4666
+#: config/rs6000/rs6000.c:5852
#, fuzzy, c-format
msgid "argument to `%s' must be a 2-bit unsigned literal"
msgstr "argument van `%s' moet van een integraal type zijn."
-#: config/rs6000/rs6000.c:4782
+#: config/rs6000/rs6000.c:5965
#, fuzzy
msgid "argument to dss must be a 2-bit unsigned literal"
msgstr "argument van `%s' moet van een integraal type zijn."
-#: config/rs6000/rs6000.c:5013
+#: config/rs6000/rs6000.c:6203
#, fuzzy
msgid "argument 1 of __builtin_spe_predicate must be a constant"
msgstr "argument voor `__builtin_args_info' moet een constante zijn"
-#: config/rs6000/rs6000.c:5086
+#: config/rs6000/rs6000.c:6276
#, fuzzy
msgid "argument 1 of __builtin_spe_predicate is out of range"
msgstr "argument voor `__builtin_args_info' buiten bereik"
-#: config/rs6000/rs6000.c:7511
+#: config/rs6000/rs6000.c:8711
#, c-format
msgid "invalid %%f value"
msgstr ""
-#: config/rs6000/rs6000.c:7520
+#: config/rs6000/rs6000.c:8720
#, c-format
msgid "invalid %%F value"
msgstr ""
-#: config/rs6000/rs6000.c:7529
+#: config/rs6000/rs6000.c:8729
#, c-format
msgid "invalid %%G value"
msgstr ""
-#: config/rs6000/rs6000.c:7564
+#: config/rs6000/rs6000.c:8764
#, c-format
msgid "invalid %%j code"
msgstr ""
-#: config/rs6000/rs6000.c:7574
+#: config/rs6000/rs6000.c:8774
#, c-format
msgid "invalid %%J code"
msgstr ""
-#: config/rs6000/rs6000.c:7604
+#: config/rs6000/rs6000.c:8784
+#, c-format
+msgid "invalid %%k value"
+msgstr ""
+
+#: config/rs6000/rs6000.c:8804 config/xtensa/xtensa.c:1985
#, fuzzy, c-format
msgid "invalid %%K value"
msgstr "ongeldige waarde voor %%E"
-#: config/rs6000/rs6000.c:7671
+#: config/rs6000/rs6000.c:8871
#, c-format
msgid "invalid %%O value"
msgstr "ongeldige waarde voor %%O"
-#: config/rs6000/rs6000.c:7793
+#: config/rs6000/rs6000.c:8918
+#, fuzzy, c-format
+msgid "invalid %%q value"
+msgstr "ongeldige waarde voor %q"
+
+#: config/rs6000/rs6000.c:8962
+#, c-format
+msgid "invalid %%S value"
+msgstr ""
+
+#: config/rs6000/rs6000.c:9004
#, c-format
msgid "invalid %%T value"
msgstr ""
-#: config/rs6000/rs6000.c:7803
+#: config/rs6000/rs6000.c:9014
#, c-format
msgid "invalid %%u value"
msgstr ""
-#: config/rs6000/rs6000.c:7812
+#: config/rs6000/rs6000.c:9023 config/xtensa/xtensa.c:1955
#, c-format
msgid "invalid %%v value"
msgstr ""
-#: config/rs6000/rs6000.c:12242
+#: config/rs6000/rs6000.c:13513
msgid "no profiling of 64-bit code for this ABI"
msgstr ""
-#: config/rs6000/aix.h:160 config/rs6000/beos.h:32
+#: config/rs6000/aix.h:184 config/rs6000/beos.h:32
#, fuzzy
msgid "Always pass floating-point arguments in memory"
msgstr "Het doorgeven van floating-point argumenten in fp registers wordt nog niet ondersteund"
-#: config/rs6000/aix.h:162 config/rs6000/beos.h:34
+#: config/rs6000/aix.h:186 config/rs6000/beos.h:34
#, fuzzy
msgid "Don't always pass floating-point arguments in memory"
msgstr "Het doorgeven van floating-point argumenten in fp registers wordt nog niet ondersteund"
-#: config/rs6000/aix41.h:28 config/rs6000/aix43.h:32 config/rs6000/aix51.h:32
-#: config/rs6000/aix52.h:32
+#: config/rs6000/aix41.h:27 config/rs6000/aix43.h:31 config/rs6000/aix51.h:31
+#: config/rs6000/aix52.h:31
msgid "Support message passing with the Parallel Environment"
msgstr ""
-#: config/rs6000/aix43.h:28 config/rs6000/aix51.h:28 config/rs6000/aix52.h:28
+#: config/rs6000/aix43.h:27 config/rs6000/aix51.h:27 config/rs6000/aix52.h:27
msgid "Compile for 64-bit pointers"
msgstr ""
-#: config/rs6000/aix43.h:30 config/rs6000/aix51.h:30 config/rs6000/aix52.h:30
+#: config/rs6000/aix43.h:29 config/rs6000/aix51.h:29 config/rs6000/aix52.h:29
msgid "Compile for 32-bit pointers"
msgstr ""
-#: config/rs6000/aix43.h:49 config/rs6000/aix51.h:49 config/rs6000/aix52.h:49
+#: config/rs6000/aix43.h:48 config/rs6000/aix51.h:48 config/rs6000/aix52.h:48
#, fuzzy
msgid "-maix64 and POWER architecture are incompatible"
msgstr "-fpic en -mapcs-reent zijn niet compatibel"
-#: config/rs6000/aix43.h:54 config/rs6000/aix51.h:54 config/rs6000/aix52.h:54
+#: config/rs6000/aix43.h:53 config/rs6000/aix51.h:53 config/rs6000/aix52.h:53
msgid "-maix64 requires PowerPC64 architecture remain enabled"
msgstr ""
-#: config/rs6000/aix43.h:58 config/rs6000/aix51.h:58 config/rs6000/aix52.h:58
+#: config/rs6000/aix43.h:57 config/rs6000/aix51.h:57 config/rs6000/aix52.h:57
msgid "-maix64 required: 64-bit computation with 32-bit addressing not yet supported"
msgstr ""
+#: config/rs6000/darwin.h:64
+msgid "Generate code suitable for executables (NOT shared libs)"
+msgstr ""
+
+#. The Darwin ABI always includes AltiVec, can't be (validly) turned
+#. off.
+#: config/rs6000/darwin.h:80
+msgid "-mdynamic-no-pic overrides -fpic or -fPIC"
+msgstr ""
+
+#. Darwin doesn't support -fpic.
+#: config/rs6000/darwin.h:86
+#, fuzzy
+msgid "-fpic is not supported; -fPIC assumed"
+msgstr "-pipe wordt niet ondersteund"
+
+#: config/rs6000/linux64.h:96
+msgid "-m64 requires a PowerPC64 cpu"
+msgstr ""
+
+#: config/rs6000/linux64.h:201
+msgid "Call mcount for profiling before a function prologue"
+msgstr ""
+
+#: config/rs6000/linux64.h:203
+msgid "Call mcount for profiling after a function prologue"
+msgstr ""
+
#. Run-time compilation parameters selecting different hardware subsets.
#.
#. Macro to define tables used to set the flags.
@@ -12894,163 +12250,207 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/rs6000/rs6000.h:240
+#: config/rs6000/rs6000.h:262
msgid "Use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:243
+#: config/rs6000/rs6000.h:265
msgid "Use POWER2 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:245
+#: config/rs6000/rs6000.h:267
msgid "Do not use POWER2 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:248
+#: config/rs6000/rs6000.h:270
msgid "Do not use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:250
+#: config/rs6000/rs6000.h:272
msgid "Use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:253
+#: config/rs6000/rs6000.h:275
msgid "Do not use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:255
+#: config/rs6000/rs6000.h:277
msgid "Use PowerPC General Purpose group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:257
-msgid "Don't use PowerPC General Purpose group optional instructions"
+#: config/rs6000/rs6000.h:279
+msgid "Do not use PowerPC General Purpose group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:259
+#: config/rs6000/rs6000.h:281
msgid "Use PowerPC Graphics group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:261
-msgid "Don't use PowerPC Graphics group optional instructions"
-msgstr ""
+#: config/rs6000/rs6000.h:283
+#, fuzzy
+msgid "Do not use PowerPC Graphics group optional instructions"
+msgstr "ongeldig gebruik van `restrict'"
-#: config/rs6000/rs6000.h:263
+#: config/rs6000/rs6000.h:285
msgid "Use PowerPC-64 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:265
-msgid "Don't use PowerPC-64 instruction set"
-msgstr ""
+#: config/rs6000/rs6000.h:287
+#, fuzzy
+msgid "Do not use PowerPC-64 instruction set"
+msgstr "ongeldig gebruik van `restrict'"
-#: config/rs6000/rs6000.h:267
+#: config/rs6000/rs6000.h:289
msgid "Use AltiVec instructions"
msgstr ""
-#: config/rs6000/rs6000.h:269
-msgid "Don't use AltiVec instructions"
-msgstr ""
+#: config/rs6000/rs6000.h:291
+#, fuzzy
+msgid "Do not use AltiVec instructions"
+msgstr "ongeldig gebruik van `restrict'"
-#: config/rs6000/rs6000.h:271
+#: config/rs6000/rs6000.h:293
msgid "Use new mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.h:273
+#: config/rs6000/rs6000.h:295
msgid "Use old mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.h:276
+#: config/rs6000/rs6000.h:298
msgid "Put everything in the regular TOC"
msgstr ""
-#: config/rs6000/rs6000.h:278
+#: config/rs6000/rs6000.h:300
#, fuzzy
msgid "Place floating point constants in TOC"
msgstr "misvormde floating-point constante"
-#: config/rs6000/rs6000.h:280
-msgid "Don't place floating point constants in TOC"
-msgstr ""
+#: config/rs6000/rs6000.h:302
+#, fuzzy
+msgid "Do not place floating point constants in TOC"
+msgstr "misvormde floating-point constante"
-#: config/rs6000/rs6000.h:282
+#: config/rs6000/rs6000.h:304
msgid "Place symbol+offset constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:284
-msgid "Don't place symbol+offset constants in TOC"
-msgstr ""
+#: config/rs6000/rs6000.h:306
+#, fuzzy
+msgid "Do not place symbol+offset constants in TOC"
+msgstr "misvormde floating-point constante"
-#: config/rs6000/rs6000.h:290
+#: config/rs6000/rs6000.h:312
msgid "Place variable addresses in the regular TOC"
msgstr ""
-#: config/rs6000/rs6000.h:296
+#: config/rs6000/rs6000.h:318
msgid "Generate load/store multiple instructions"
msgstr ""
-#: config/rs6000/rs6000.h:298
+#: config/rs6000/rs6000.h:320
msgid "Do not generate load/store multiple instructions"
msgstr ""
-#: config/rs6000/rs6000.h:302
+#: config/rs6000/rs6000.h:322
msgid "Generate string instructions for block moves"
msgstr ""
-#: config/rs6000/rs6000.h:304
+#: config/rs6000/rs6000.h:324
msgid "Do not generate string instructions for block moves"
msgstr ""
-#: config/rs6000/rs6000.h:308
+#: config/rs6000/rs6000.h:326
msgid "Generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.h:310
+#: config/rs6000/rs6000.h:328
msgid "Do not generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.h:318
-msgid "Don't schedule the start and end of the procedure"
+#: config/rs6000/rs6000.h:332
+#, fuzzy
+msgid "Do not generate fused multiply/add instructions"
+msgstr "ongeldig gebruik van `restrict'"
+
+#: config/rs6000/rs6000.h:336
+msgid "Do not schedule the start and end of the procedure"
msgstr ""
-#: config/rs6000/rs6000.h:324
+#: config/rs6000/rs6000.h:342
msgid "Return all structures in memory (AIX default)"
msgstr ""
-#: config/rs6000/rs6000.h:326
+#: config/rs6000/rs6000.h:344
msgid "Return small structures in registers (SVR4 default)"
msgstr ""
-#: config/rs6000/rs6000.h:391 config/sparc/sparc.h:633
+#: config/rs6000/rs6000.h:350
+#, fuzzy
+msgid "Generate single field mfcr instruction"
+msgstr "ongeldig gebruik van `restrict'"
+
+#: config/rs6000/rs6000.h:352
+#, fuzzy
+msgid "Do not generate single field mfcr instruction"
+msgstr "interne fout - slechte ingebouwde functie `%s'"
+
+#: config/rs6000/rs6000.h:435 config/sparc/sparc.h:648
msgid "Use features of and schedule code for given CPU"
msgstr ""
-#: config/rs6000/rs6000.h:394
+#: config/rs6000/rs6000.h:438
msgid "Enable debug output"
msgstr ""
-#: config/rs6000/rs6000.h:396
+#: config/rs6000/rs6000.h:440
msgid "Select full, part, or no traceback table"
msgstr ""
-#: config/rs6000/rs6000.h:397
+#: config/rs6000/rs6000.h:441
msgid "Specify ABI to use"
msgstr ""
-#: config/rs6000/rs6000.h:399
+#: config/rs6000/rs6000.h:443
msgid "Specify size of long double (64 or 128 bits)"
msgstr ""
-#: config/rs6000/rs6000.h:401
+#: config/rs6000/rs6000.h:445
msgid "Specify yes/no if isel instructions should be generated"
msgstr ""
-#: config/rs6000/rs6000.h:403
+#: config/rs6000/rs6000.h:447
+msgid "Specify yes/no if SPE SIMD instructions should be generated"
+msgstr ""
+
+#: config/rs6000/rs6000.h:449
+msgid "Specify yes/no if using floating point in the GPRs"
+msgstr ""
+
+#: config/rs6000/rs6000.h:451
msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec"
msgstr ""
-#: config/rs6000/rs6000.h:405
+#: config/rs6000/rs6000.h:453
msgid "Avoid all range limits on call instructions"
msgstr ""
+#: config/rs6000/rs6000.h:456
+msgid "Determine which dependences between insns are considered costly"
+msgstr ""
+
+#: config/rs6000/rs6000.h:458
+msgid "Specify which post scheduling nop insertion scheme to apply"
+msgstr ""
+
+#: config/rs6000/rs6000.h:460
+msgid "Specify alignment of structure fields default/natural"
+msgstr ""
+
+#: config/rs6000/rs6000.h:462
+msgid "Specify scheduling priority for dispatch slot restricted insns"
+msgstr ""
+
#. Definitions for __builtin_return_address and __builtin_frame_address.
#. __builtin_return_address (0) should give link register (65), enable
#. this.
@@ -13063,7 +12463,7 @@ msgstr ""
#. Number of bytes into the frame return addresses can be found. See
#. rs6000_stack_info in rs6000.c for more information on how the different
#. abi's store the return address.
-#: config/rs6000/rs6000.h:1884
+#: config/rs6000/rs6000.h:1926
msgid "RETURN_ADDRESS_OFFSET not supported"
msgstr ""
@@ -13075,92 +12475,99 @@ msgstr ""
msgid "Select method for sdata handling"
msgstr ""
-#: config/rs6000/sysv4.h:103
+#: config/rs6000/sysv4.h:100
#, fuzzy
msgid "Align to the base type of the bit-field"
msgstr "`__alignof' toegepast op bitveld"
-#: config/rs6000/sysv4.h:105
+#: config/rs6000/sysv4.h:102
msgid "Don't align to the base type of the bit-field"
msgstr ""
-#: config/rs6000/sysv4.h:107
+#: config/rs6000/sysv4.h:104
msgid "Don't assume that unaligned accesses are handled by the system"
msgstr ""
-#: config/rs6000/sysv4.h:109
+#: config/rs6000/sysv4.h:106
msgid "Assume that unaligned accesses are handled by the system"
msgstr ""
-#: config/rs6000/sysv4.h:111 config/rs6000/sysv4.h:115
+#: config/rs6000/sysv4.h:108 config/rs6000/sysv4.h:112
msgid "Produce code relocatable at runtime"
msgstr ""
-#: config/rs6000/sysv4.h:113 config/rs6000/sysv4.h:117
+#: config/rs6000/sysv4.h:110 config/rs6000/sysv4.h:114
msgid "Don't produce code relocatable at runtime"
msgstr ""
-#: config/rs6000/sysv4.h:119 config/rs6000/sysv4.h:121
+#: config/rs6000/sysv4.h:116 config/rs6000/sysv4.h:118
msgid "Produce little endian code"
msgstr ""
-#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:125
+#: config/rs6000/sysv4.h:120 config/rs6000/sysv4.h:122
msgid "Produce big endian code"
msgstr ""
-#: config/rs6000/sysv4.h:126 config/rs6000/sysv4.h:127
-#: config/rs6000/sysv4.h:128 config/rs6000/sysv4.h:129
-#: config/rs6000/sysv4.h:130 config/rs6000/sysv4.h:131
-#: config/rs6000/sysv4.h:141 config/rs6000/sysv4.h:142
-#: config/rs6000/sysv4.h:153 config/rs6000/sysv4.h:155
-#: config/rs6000/sysv4.h:157
+#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:124
+#: config/rs6000/sysv4.h:125 config/rs6000/sysv4.h:126
+#: config/rs6000/sysv4.h:127 config/rs6000/sysv4.h:128
+#: config/rs6000/sysv4.h:138 config/rs6000/sysv4.h:139
+#: config/rs6000/sysv4.h:151 config/rs6000/sysv4.h:157
msgid "no description yet"
msgstr ""
-#: config/rs6000/sysv4.h:132
+#: config/rs6000/sysv4.h:129
msgid "Use EABI"
msgstr ""
-#: config/rs6000/sysv4.h:133
+#: config/rs6000/sysv4.h:130
msgid "Don't use EABI"
msgstr ""
-#: config/rs6000/sysv4.h:136
+#: config/rs6000/sysv4.h:133
msgid "Do not allow bit-fields to cross word boundaries"
msgstr ""
-#: config/rs6000/sysv4.h:138
+#: config/rs6000/sysv4.h:135
msgid "Use alternate register names"
msgstr ""
-#: config/rs6000/sysv4.h:140
+#: config/rs6000/sysv4.h:137
msgid "Don't use alternate register names"
msgstr ""
-#: config/rs6000/sysv4.h:144
+#: config/rs6000/sysv4.h:141
msgid "Link with libsim.a, libc.a and sim-crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:146
+#: config/rs6000/sysv4.h:143
msgid "Link with libads.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:148
+#: config/rs6000/sysv4.h:145
msgid "Link with libyk.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:150
+#: config/rs6000/sysv4.h:147
msgid "Link with libmvme.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.h:152
+#: config/rs6000/sysv4.h:149
msgid "Set the PPC_EMB bit in the ELF flags header"
msgstr ""
-#: config/rs6000/sysv4.h:154
+#: config/rs6000/sysv4.h:150
msgid "Use the WindISS simulator"
msgstr ""
+#: config/rs6000/sysv4.h:153
+msgid "Generate 64-bit code"
+msgstr ""
+
+#: config/rs6000/sysv4.h:155
+msgid "Generate 32-bit code"
+msgstr ""
+
#. Sometimes certain combinations of command options do not make sense
#. on a particular target machine. You can define a macro
#. `OVERRIDE_OPTIONS' to take account of this. This macro, if
@@ -13184,368 +12591,440 @@ msgstr "slechte waarde (%s) voor optie -msdata"
msgid "-mrelocatable and -msdata=%s are incompatible"
msgstr "-fpic en -mapcs-reent zijn niet compatibel"
-#: config/rs6000/sysv4.h:255
+#: config/rs6000/sysv4.h:256
#, fuzzy, c-format
msgid "-f%s and -msdata=%s are incompatible"
msgstr "-fpic en -mapcs-reent zijn niet compatibel"
-#: config/rs6000/sysv4.h:264
+#: config/rs6000/sysv4.h:265
#, fuzzy, c-format
msgid "-msdata=%s and -mcall-%s are incompatible"
msgstr "-mbsd en -mxopen zijn niet compatibel"
-#: config/rs6000/sysv4.h:273
+#: config/rs6000/sysv4.h:274
#, fuzzy
msgid "-mrelocatable and -mno-minimal-toc are incompatible"
msgstr "-fpic en -mapcs-reent zijn niet compatibel"
-#: config/rs6000/sysv4.h:279
+#: config/rs6000/sysv4.h:280
#, fuzzy, c-format
msgid "-mrelocatable and -mcall-%s are incompatible"
msgstr "-fpic en -mapcs-reent zijn niet compatibel"
-#: config/rs6000/sysv4.h:286
+#: config/rs6000/sysv4.h:287
#, fuzzy, c-format
msgid "-fPIC and -mcall-%s are incompatible"
msgstr "-fpic en -mapcs-reent zijn niet compatibel"
-#: config/rs6000/sysv4.h:293
+#: config/rs6000/sysv4.h:294
msgid "-mcall-aixdesc must be big endian"
msgstr ""
-#: config/s390/s390.c:3063
+#: config/rs6000/sysv4.h:309
+#, fuzzy, c-format
+msgid "-m%s not supported in this configuration"
+msgstr "alias-definities worden niet ondersteund in deze configuratie; genegeerd"
+
+#: config/s390/s390.c:926
+#, c-format
+msgid "Unknown cpu used in -march=%s."
+msgstr ""
+
+#: config/s390/s390.c:945
+#, c-format
+msgid "Unknown cpu used in -mtune=%s."
+msgstr ""
+
+#: config/s390/s390.c:950
+#, fuzzy, c-format
+msgid "z/Architecture mode not supported on %s."
+msgstr "trapmodus niet ondersteund voor VAX-floats"
+
+#: config/s390/s390.c:952
+#, fuzzy
+msgid "64-bit ABI not supported in ESA/390 mode."
+msgstr "afrondingsmodus niet ondersteund voor VAX-floats"
+
+#: config/s390/s390.c:3337
#, fuzzy
msgid "invalid UNSPEC as operand (1)"
msgstr "ongeldige UNSPEC als operand"
-#: config/s390/s390.c:3123
+#: config/s390/s390.c:3385
#, fuzzy
msgid "invalid UNSPEC as operand (2)"
msgstr "ongeldige UNSPEC als operand"
-#: config/s390/s390.c:3129
+#: config/s390/s390.c:3391
msgid "UNKNOWN in s390_output_symbolic_const !?"
msgstr ""
-#: config/s390/s390.c:3147
+#: config/s390/s390.c:3407
msgid "Cannot decompose address."
msgstr ""
-#: config/s390/s390.c:3308
+#: config/s390/s390.c:3578
msgid "UNKNOWN in print_operand !?"
msgstr ""
-#: config/s390/s390.c:4961
+#: config/s390/s390.c:5301
msgid "Total size of local variables exceeds architecture limit."
msgstr ""
-#: config/s390/s390.h:70
+#: config/s390/s390.h:126
msgid "Set backchain"
msgstr ""
-#: config/s390/s390.h:71
+#: config/s390/s390.h:127
msgid "Don't set backchain (faster, but debug harder"
msgstr ""
-#: config/s390/s390.h:72
+#: config/s390/s390.h:128
msgid "Use bras for executable < 64k"
msgstr ""
-#: config/s390/s390.h:73
+#: config/s390/s390.h:129
msgid "Don't use bras"
msgstr ""
-#: config/s390/s390.h:74
+#: config/s390/s390.h:130
msgid "Additional debug prints"
msgstr ""
-#: config/s390/s390.h:75
+#: config/s390/s390.h:131
msgid "Don't print additional debug prints"
msgstr ""
-#: config/s390/s390.h:76
-msgid "64 bit mode"
+#: config/s390/s390.h:132
+msgid "64 bit ABI"
+msgstr ""
+
+#: config/s390/s390.h:133
+msgid "31 bit ABI"
+msgstr ""
+
+#: config/s390/s390.h:134
+msgid "z/Architecture"
msgstr ""
-#: config/s390/s390.h:77
-msgid "31 bit mode"
+#: config/s390/s390.h:135
+msgid "ESA/390 architecture"
msgstr ""
-#: config/s390/s390.h:78
+#: config/s390/s390.h:136
msgid "mvcle use"
msgstr ""
-#: config/s390/s390.h:79
+#: config/s390/s390.h:137
msgid "mvc&ex"
msgstr ""
-#: config/sh/sh.c:5137
+#: config/s390/s390.h:138
+#, fuzzy
+msgid "enable tpf OS code"
+msgstr "incompatibele record-modus"
+
+#: config/s390/s390.h:139
+msgid "disable tpf OS code"
+msgstr ""
+
+#: config/s390/s390.h:140
+#, fuzzy
+msgid "disable fused multiply/add instructions"
+msgstr "ongeldig gebruik van `restrict'"
+
+#: config/s390/s390.h:141
+#, fuzzy
+msgid "enable fused multiply/add instructions"
+msgstr "ongeldig gebruik van `restrict'"
+
+#: config/sh/sh.c:5841
#, fuzzy
msgid "__builtin_saveregs not supported by this subtarget"
msgstr "__builtin_saveregs wordt niet ondersteund op dit doelsysteem"
-#: config/sh/sh.c:5687
+#: config/sh/sh.c:6743
msgid "attribute interrupt_handler is not compatible with -m5-compact"
msgstr ""
#. The sp_switch attribute only has meaning for interrupt functions.
-#: config/sh/sh.c:5713 config/sh/sh.c:5752
+#. The trap_exit attribute only has meaning for interrupt functions.
+#: config/sh/sh.c:6765 config/sh/sh.c:6800
#, fuzzy, c-format
msgid "`%s' attribute only applies to interrupt functions"
msgstr "het `%s' attribuut heeft enkel betekenis voor functies"
#. The argument must be a constant string.
-#: config/sh/sh.c:5720
+#: config/sh/sh.c:6772
#, fuzzy, c-format
msgid "`%s' attribute argument not a string constant"
msgstr "asm-template is geen stringconstante"
#. The argument must be a constant integer.
-#: config/sh/sh.c:5759
+#: config/sh/sh.c:6807
#, fuzzy, c-format
msgid "`%s' attribute argument not an integer constant"
msgstr "herhalings-aantal is geen integerconstante"
#. There are no delay slots on SHmedia.
#. Relaxation isn't yet supported for SHmedia
-#: config/sh/sh.h:437
+#. -fprofile-arcs needs a working libgcov . In unified tree configurations with newlib, this requires to configure with --with-newlib --with-headers. But there is no way to check here we have a working libgcov, so just assume that we have.
+#: config/sh/sh.h:478
#, fuzzy
msgid "Profiling is not supported on this target."
msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem"
-#: config/sparc/sparc.c:329
+#: config/sparc/sparc.c:360
#, c-format
msgid "%s is not supported by this configuration"
msgstr ""
-#: config/sparc/sparc.c:336
+#: config/sparc/sparc.c:367
msgid "-mlong-double-64 not allowed with -m64"
msgstr ""
-#: config/sparc/sparc.c:361
+#: config/sparc/sparc.c:392
msgid "-mcmodel= is not supported on 32 bit systems"
msgstr ""
-#: config/sparc/sparc.c:6341 config/sparc/sparc.c:6347
+#: config/sparc/sparc.c:6793 config/sparc/sparc.c:6799
#, fuzzy, c-format
msgid "invalid %%Y operand"
msgstr "ongeldige operand voor %P"
-#: config/sparc/sparc.c:6417
+#: config/sparc/sparc.c:6869
#, fuzzy, c-format
msgid "invalid %%A operand"
msgstr "ongeldige operand voor %P"
-#: config/sparc/sparc.c:6427
+#: config/sparc/sparc.c:6879
#, fuzzy, c-format
msgid "invalid %%B operand"
msgstr "ongeldige operand voor %P"
-#: config/sparc/sparc.c:6466
+#: config/sparc/sparc.c:6918
#, fuzzy, c-format
msgid "invalid %%c operand"
msgstr "ongeldige operand voor %P"
-#: config/sparc/sparc.c:6467
+#: config/sparc/sparc.c:6919
#, fuzzy, c-format
msgid "invalid %%C operand"
msgstr "Ongeldige operand voor %%C"
-#: config/sparc/sparc.c:6488
+#: config/sparc/sparc.c:6940
#, fuzzy, c-format
msgid "invalid %%d operand"
msgstr "ongeldige operand voor %P"
-#: config/sparc/sparc.c:6489
+#: config/sparc/sparc.c:6941
#, fuzzy, c-format
msgid "invalid %%D operand"
msgstr "ongeldige operand voor %P"
-#: config/sparc/sparc.c:6505
+#: config/sparc/sparc.c:6957
#, fuzzy, c-format
msgid "invalid %%f operand"
msgstr "ongeldige operand voor %P"
-#: config/sparc/sparc.c:6519
+#: config/sparc/sparc.c:6971
#, fuzzy, c-format
msgid "invalid %%s operand"
msgstr "ongeldige operand voor %P"
-#: config/sparc/sparc.c:6573
+#: config/sparc/sparc.c:7025
msgid "long long constant not a valid immediate operand"
msgstr ""
-#: config/sparc/sparc.c:6576
+#: config/sparc/sparc.c:7028
msgid "floating point constant not a valid immediate operand"
msgstr ""
-#: config/sparc/freebsd.h:81 config/sparc/linux.h:87 config/sparc/linux64.h:89
-#: config/sparc/netbsd-elf.h:239
+#: config/sparc/freebsd.h:77 config/sparc/linux.h:92
+#: config/sparc/linux64.h:104 config/sparc/netbsd-elf.h:216
msgid "Use 128 bit long doubles"
msgstr ""
-#: config/sparc/sp64-elf.h:84 config/sparc/splet.h:29
+#: config/sparc/sp64-elf.h:90
msgid "Generate code for big endian"
msgstr ""
-#: config/sparc/sp64-elf.h:85 config/sparc/splet.h:30
+#: config/sparc/sp64-elf.h:91
msgid "Generate code for little endian"
msgstr ""
-#: config/sparc/sp86x-aout.h:51 config/sparc/sp86x-elf.h:65
+#: config/sparc/sp86x-elf.h:68
msgid "Use little-endian byte order for data"
msgstr ""
-#: config/sparc/sparc.h:532
+#: config/sparc/sparc.h:547
msgid "Assume possible double misalignment"
msgstr ""
-#: config/sparc/sparc.h:534
+#: config/sparc/sparc.h:549
msgid "Assume all doubles are aligned"
msgstr ""
-#: config/sparc/sparc.h:536
+#: config/sparc/sparc.h:551
msgid "Pass -assert pure-text to linker"
msgstr ""
-#: config/sparc/sparc.h:538
+#: config/sparc/sparc.h:553
msgid "Do not pass -assert pure-text to linker"
msgstr ""
-#: config/sparc/sparc.h:540
+#: config/sparc/sparc.h:555
msgid "Use flat register window model"
msgstr ""
-#: config/sparc/sparc.h:542
+#: config/sparc/sparc.h:557
msgid "Do not use flat register window model"
msgstr ""
-#: config/sparc/sparc.h:544
+#: config/sparc/sparc.h:559
msgid "Use ABI reserved registers"
msgstr ""
-#: config/sparc/sparc.h:546
+#: config/sparc/sparc.h:561
msgid "Do not use ABI reserved registers"
msgstr ""
-#: config/sparc/sparc.h:548
+#: config/sparc/sparc.h:563
msgid "Use hardware quad fp instructions"
msgstr ""
-#: config/sparc/sparc.h:550
+#: config/sparc/sparc.h:565
msgid "Do not use hardware quad fp instructions"
msgstr ""
-#: config/sparc/sparc.h:552
+#: config/sparc/sparc.h:567
msgid "Compile for v8plus ABI"
msgstr ""
-#: config/sparc/sparc.h:554
+#: config/sparc/sparc.h:569
msgid "Do not compile for v8plus ABI"
msgstr ""
-#: config/sparc/sparc.h:556
+#: config/sparc/sparc.h:571
msgid "Utilize Visual Instruction Set"
msgstr ""
-#: config/sparc/sparc.h:558
+#: config/sparc/sparc.h:573
msgid "Do not utilize Visual Instruction Set"
msgstr ""
#. ??? These are deprecated, coerced to -mcpu=. Delete in 2.9.
-#: config/sparc/sparc.h:561
+#: config/sparc/sparc.h:576
msgid "Optimize for Cypress processors"
msgstr ""
-#: config/sparc/sparc.h:563
+#: config/sparc/sparc.h:578
msgid "Optimize for SPARCLite processors"
msgstr ""
-#: config/sparc/sparc.h:565
+#: config/sparc/sparc.h:580
msgid "Optimize for F930 processors"
msgstr ""
-#: config/sparc/sparc.h:567
+#: config/sparc/sparc.h:582
msgid "Optimize for F934 processors"
msgstr ""
-#: config/sparc/sparc.h:569
+#: config/sparc/sparc.h:584
msgid "Use V8 SPARC ISA"
msgstr ""
-#: config/sparc/sparc.h:571
+#: config/sparc/sparc.h:586
msgid "Optimize for SuperSPARC processors"
msgstr ""
#. End of deprecated options.
-#: config/sparc/sparc.h:574
+#: config/sparc/sparc.h:589
msgid "Pointers are 64-bit"
msgstr ""
-#: config/sparc/sparc.h:576
+#: config/sparc/sparc.h:591
msgid "Pointers are 32-bit"
msgstr ""
-#: config/sparc/sparc.h:578
+#: config/sparc/sparc.h:593
msgid "Use 32-bit ABI"
msgstr ""
-#: config/sparc/sparc.h:580
+#: config/sparc/sparc.h:595
msgid "Use 64-bit ABI"
msgstr ""
-#: config/sparc/sparc.h:582
+#: config/sparc/sparc.h:597
msgid "Use stack bias"
msgstr ""
-#: config/sparc/sparc.h:584
+#: config/sparc/sparc.h:599
msgid "Do not use stack bias"
msgstr ""
-#: config/sparc/sparc.h:586
+#: config/sparc/sparc.h:601
msgid "Use structs on stronger alignment for double-word copies"
msgstr ""
-#: config/sparc/sparc.h:588
+#: config/sparc/sparc.h:603
msgid "Do not use structs on stronger alignment for double-word copies"
msgstr ""
-#: config/sparc/sparc.h:590
+#: config/sparc/sparc.h:605
msgid "Optimize tail call instructions in assembler and linker"
msgstr ""
-#: config/sparc/sparc.h:592
+#: config/sparc/sparc.h:607
msgid "Do not optimize tail call instructions in assembler or linker"
msgstr ""
-#: config/sparc/sparc.h:637
+#: config/sparc/sparc.h:652
msgid "Use given SPARC code model"
msgstr ""
-#: config/stormy16/stormy16.c:1192
+#: config/stormy16/stormy16.c:526
+#, fuzzy
+msgid "Constant halfword load operand out of range."
+msgstr "teveel argumenten voor procedure `%s'"
+
+#: config/stormy16/stormy16.c:536
+#, fuzzy
+msgid "Constant arithmetic operand out of range."
+msgstr "teveel argumenten voor procedure `%s'"
+
+#: config/stormy16/stormy16.c:1027
+msgid "Local variable memory requirements exceed capacity."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1193
+msgid "function_profiler support"
+msgstr ""
+
+#: config/stormy16/stormy16.c:1292
#, fuzzy
msgid "cannot use va_start in interrupt function"
msgstr "kan functie `main' niet inline maken"
-#: config/stormy16/stormy16.c:1552
+#: config/stormy16/stormy16.c:1624
#, fuzzy
msgid "`B' operand is not constant"
msgstr "operand `%d' is geen register"
-#: config/stormy16/stormy16.c:1558
+#: config/stormy16/stormy16.c:1630
msgid "`B' operand has multiple bits set"
msgstr ""
-#: config/stormy16/stormy16.c:1585
+#: config/stormy16/stormy16.c:1656
#, fuzzy
msgid "`o' operand is not constant"
msgstr "operand `%d' is geen register"
-#: config/stormy16/stormy16.c:1600
+#: config/stormy16/stormy16.c:1670
msgid "xstormy16_print_operand: unknown code"
msgstr ""
-#: config/stormy16/stormy16.c:1650
+#: config/stormy16/stormy16.c:1716
#, fuzzy, c-format
msgid "switch statement of size %lu entries too large"
msgstr "variabele `%s' is te groot"
@@ -13568,121 +13047,122 @@ msgid "cannot set interrupt attribute: no such identifier"
msgstr ""
# Moet 'signature-string' vertaald worden?
-#: config/v850/v850-c.c:148
+#: config/v850/v850-c.c:147
#, fuzzy
msgid "junk at end of #pragma ghs section"
msgstr "Brol aan einde van signature-string."
-#: config/v850/v850-c.c:165
+#: config/v850/v850-c.c:164
#, fuzzy, c-format
msgid "unrecognized section name \"%s\""
msgstr "signature-string niet herkend"
-#: config/v850/v850-c.c:180
+#: config/v850/v850-c.c:179
#, fuzzy
msgid "malformed #pragma ghs section"
msgstr "misvormde #pragma weak"
# Moet 'signature-string' vertaald worden?
-#: config/v850/v850-c.c:200
+#: config/v850/v850-c.c:198
#, fuzzy
msgid "junk at end of #pragma ghs interrupt"
msgstr "Brol aan einde van signature-string."
# Moet 'signature-string' vertaald worden?
-#: config/v850/v850-c.c:212
+#: config/v850/v850-c.c:209
#, fuzzy
msgid "junk at end of #pragma ghs starttda"
msgstr "Brol aan einde van signature-string."
# Moet 'signature-string' vertaald worden?
-#: config/v850/v850-c.c:224
+#: config/v850/v850-c.c:220
#, fuzzy
msgid "junk at end of #pragma ghs startsda"
msgstr "Brol aan einde van signature-string."
# Moet 'signature-string' vertaald worden?
-#: config/v850/v850-c.c:236
+#: config/v850/v850-c.c:231
#, fuzzy
msgid "junk at end of #pragma ghs startzda"
msgstr "Brol aan einde van signature-string."
# Moet 'signature-string' vertaald worden?
-#: config/v850/v850-c.c:248
+#: config/v850/v850-c.c:242
#, fuzzy
msgid "junk at end of #pragma ghs endtda"
msgstr "Brol aan einde van signature-string."
# Moet 'signature-string' vertaald worden?
-#: config/v850/v850-c.c:260
+#: config/v850/v850-c.c:253
#, fuzzy
msgid "junk at end of #pragma ghs endsda"
msgstr "Brol aan einde van signature-string."
# Moet 'signature-string' vertaald worden?
-#: config/v850/v850-c.c:272
+#: config/v850/v850-c.c:264
#, fuzzy
msgid "junk at end of #pragma ghs endzda"
msgstr "Brol aan einde van signature-string."
-#: config/v850/v850.c:129
+#: config/v850/v850.c:142
#, fuzzy, c-format
msgid "%s=%s is not numeric"
msgstr "`%s' is geen iterator"
-#: config/v850/v850.c:136
+#: config/v850/v850.c:149
#, fuzzy, c-format
msgid "%s=%s is too large"
msgstr "bestand `%s' is te groot"
-#: config/v850/v850.c:302
+#: config/v850/v850.c:301
msgid "const_double_split got a bad insn:"
msgstr ""
-#: config/v850/v850.c:837
+#: config/v850/v850.c:866
msgid "output_move_single:"
msgstr ""
-#: config/v850/v850.c:2217
-msgid "a data area attribute cannot be specified for local variables"
-msgstr ""
+#: config/v850/v850.c:2209
+#, fuzzy
+msgid "%Jdata area attributes cannot be specified for local variables"
+msgstr "sectie-attribuut kan niet opgegeven worden voor lokale variabelen"
-#: config/v850/v850.c:2228
-#, c-format
-msgid "data area of '%s' conflicts with previous declaration"
-msgstr ""
+#: config/v850/v850.c:2220
+#, fuzzy
+msgid "%Jdata area of '%D' conflicts with previous declaration"
+msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie"
-#: config/v850/v850.c:2447
+#: config/v850/v850.c:2419
#, c-format
msgid "bogus JR construction: %d\n"
msgstr ""
-#: config/v850/v850.c:2468 config/v850/v850.c:2670
+#: config/v850/v850.c:2440 config/v850/v850.c:2643
#, c-format
msgid "bad amount of stack space removal: %d"
msgstr ""
-#: config/v850/v850.c:2646
+#: config/v850/v850.c:2619
#, c-format
msgid "bogus JARL construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3026
+#: config/v850/v850.c:2989
#, c-format
msgid "Bogus DISPOSE construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3048
+#: config/v850/v850.c:3011
#, c-format
msgid "Too much stack space to dispose of: %d"
msgstr ""
-#: config/v850/v850.c:3224
+#: config/v850/v850.c:3184
#, c-format
msgid "Bogus PREPEARE construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3246
+#: config/v850/v850.c:3206
#, c-format
msgid "Too much stack space to prepare: %d"
msgstr ""
@@ -13692,843 +13172,786 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/v850/v850.h:158
+#: config/v850/v850.h:174
msgid "Support Green Hills ABI"
msgstr ""
-#: config/v850/v850.h:161
+#: config/v850/v850.h:177
msgid "Prohibit PC relative function calls"
msgstr ""
-#: config/v850/v850.h:164
+#: config/v850/v850.h:180
msgid "Reuse r30 on a per function basis"
msgstr ""
-#: config/v850/v850.h:167
+#: config/v850/v850.h:183
msgid "Use stubs for function prologues"
msgstr ""
-#: config/v850/v850.h:170
+#: config/v850/v850.h:186
msgid "Same as: -mep -mprolog-function"
msgstr ""
-#: config/v850/v850.h:171
+#: config/v850/v850.h:187
msgid "Enable backend debugging"
msgstr ""
-#: config/v850/v850.h:173
+#: config/v850/v850.h:189
msgid "Compile for the v850 processor"
msgstr ""
-#: config/v850/v850.h:175
+#: config/v850/v850.h:191
+msgid "Compile for v850e1 processor"
+msgstr ""
+
+#. Make sure that the other bits are cleared.
+#: config/v850/v850.h:193
msgid "Compile for v850e processor"
msgstr ""
#. Make sure that the other bits are cleared.
-#: config/v850/v850.h:177
+#: config/v850/v850.h:195
#, fuzzy
msgid "Enable the use of the short load instructions"
msgstr "ongeldig gebruik van `restrict'"
-#: config/v850/v850.h:180
+#: config/v850/v850.h:198
#, fuzzy
msgid "Do not use the callt instruction"
msgstr "ongeldig gebruik van `restrict'"
-#: config/v850/v850.h:187
+#: config/v850/v850.h:205
msgid "Do not use registers r2 and r5"
msgstr ""
-#: config/v850/v850.h:189
+#: config/v850/v850.h:207
msgid "Enforce strict alignment"
msgstr ""
-#: config/v850/v850.h:192
+#: config/v850/v850.h:210
msgid "Use 4 byte entries in switch tables"
msgstr ""
-#: config/v850/v850.h:218
+#: config/v850/v850.h:236
msgid "Set the max size of data eligible for the TDA area"
msgstr ""
-#: config/v850/v850.h:221
+#: config/v850/v850.h:239
msgid "Set the max size of data eligible for the SDA area"
msgstr ""
-#: config/v850/v850.h:224
+#: config/v850/v850.h:242
msgid "Set the max size of data eligible for the ZDA area"
msgstr ""
-#: config/xtensa/xtensa.c:1062 config/xtensa/xtensa.c:1096
-#: config/xtensa/xtensa.c:1105
-msgid "bad test"
+#: config/xtensa/xtensa.c:1814
+msgid "boolean registers required for the floating-point option"
msgstr ""
-#: config/xtensa/xtensa.c:1824
-msgid "boolean registers required for the floating-point option"
+#: config/xtensa/xtensa.c:1868
+#, fuzzy, c-format
+msgid "-f%s is not supported with CONST16 instructions"
+msgstr "doel-CPU ondersteunt geen interworking"
+
+#: config/xtensa/xtensa.c:1873
+msgid "PIC is required but not supported with CONST16 instructions"
msgstr ""
+#: config/xtensa/xtensa.c:1943
+#, fuzzy, c-format
+msgid "invalid %%D value"
+msgstr "ongeldige waarde voor %D"
+
# (%s = 'parameter <NUM>')
-#: config/xtensa/xtensa.c:1991
+#: config/xtensa/xtensa.c:1980
#, fuzzy
msgid "invalid mask"
msgstr "ongeldige %s"
-#: config/xtensa/xtensa.c:2038
+#: config/xtensa/xtensa.c:2006
+#, fuzzy, c-format
+msgid "invalid %%x value"
+msgstr "ongeldige waarde voor %x/X"
+
+#: config/xtensa/xtensa.c:2013
+#, fuzzy, c-format
+msgid "invalid %%d value"
+msgstr "ongeldige waarde voor %%O"
+
+#: config/xtensa/xtensa.c:2034 config/xtensa/xtensa.c:2044
+#, fuzzy, c-format
+msgid "invalid %%t/%%b value"
+msgstr "ongeldige waarde voor %s/S"
+
+#: config/xtensa/xtensa.c:2086
#, fuzzy
msgid "invalid address"
msgstr "Ongeldige addresseringsmodus"
-#: config/xtensa/xtensa.c:2063
+#: config/xtensa/xtensa.c:2111
#, fuzzy
msgid "no register in address"
msgstr "Ongeldig register in ybase-addressering"
-#: config/xtensa/xtensa.c:2071
+#: config/xtensa/xtensa.c:2119
#, fuzzy
msgid "address offset not a constant"
msgstr "het argument van `asm' is geen constante string"
-#: config/xtensa/xtensa.c:2794
+#: config/xtensa/xtensa.c:2802
#, fuzzy
msgid "only uninitialized variables can be placed in a .bss section"
msgstr "Enkel variabelen met beginwaarde kunnen in het 8-bit gebied geplaatst worden."
-#: config/xtensa/xtensa.h:114
-msgid "Use the Xtensa code density option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:116
-msgid "Do not use the Xtensa code density option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:118
-msgid "Use the Xtensa MAC16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:120
-msgid "Do not use the Xtensa MAC16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:122
-msgid "Use the Xtensa MUL16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:124
-msgid "Do not use the Xtensa MUL16 option"
+#: config/xtensa/xtensa.h:79
+msgid "Use CONST16 instruction to load constants"
msgstr ""
-#: config/xtensa/xtensa.h:126
-msgid "Use the Xtensa MUL32 option"
+#: config/xtensa/xtensa.h:81
+msgid "Use PC-relative L32R instruction to load constants"
msgstr ""
-#: config/xtensa/xtensa.h:128
-msgid "Do not use the Xtensa MUL32 option"
-msgstr ""
-
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:134
-msgid "Use the Xtensa NSA option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:136
-msgid "Do not use the Xtensa NSA option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:138
-msgid "Use the Xtensa MIN/MAX option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:140
-msgid "Do not use the Xtensa MIN/MAX option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:142
-msgid "Use the Xtensa SEXT option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:144
-msgid "Do not use the Xtensa SEXT option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:146
-msgid "Use the Xtensa boolean register option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:148
-msgid "Do not use the Xtensa boolean register option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:150
-msgid "Use the Xtensa floating-point unit"
-msgstr ""
-
-#: config/xtensa/xtensa.h:152
-msgid "Do not use the Xtensa floating-point unit"
-msgstr ""
-
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:170
+#: config/xtensa/xtensa.h:83
msgid "Disable fused multiply/add and multiply/subtract FP instructions"
msgstr ""
-#: config/xtensa/xtensa.h:172
+#: config/xtensa/xtensa.h:85
msgid "Enable fused multiply/add and multiply/subtract FP instructions"
msgstr ""
-#: config/xtensa/xtensa.h:174
-msgid "Serialize volatile memory references with MEMW instructions"
-msgstr ""
-
-#: config/xtensa/xtensa.h:176
-msgid "Do not serialize volatile memory references with MEMW instructions"
-msgstr ""
-
-#: config/xtensa/xtensa.h:178
+#: config/xtensa/xtensa.h:87
msgid "Intersperse literal pools with code in the text section"
msgstr ""
-#: config/xtensa/xtensa.h:180
+#: config/xtensa/xtensa.h:89
msgid "Put literal pools in a separate literal section"
msgstr ""
-#: config/xtensa/xtensa.h:182
+#: config/xtensa/xtensa.h:91
msgid "Automatically align branch targets to reduce branch penalties"
msgstr ""
-#: config/xtensa/xtensa.h:184
+#: config/xtensa/xtensa.h:93
msgid "Do not automatically align branch targets"
msgstr ""
-#: config/xtensa/xtensa.h:186
+#: config/xtensa/xtensa.h:95
msgid "Use indirect CALLXn instructions for large programs"
msgstr ""
-#: config/xtensa/xtensa.h:188
+#: config/xtensa/xtensa.h:97
msgid "Use direct CALLn instructions for fast calls"
msgstr ""
-#: ada/misc.c:233
-msgid "`-gnat' misspelled as `-gant'"
-msgstr ""
-
-#: cp/call.c:261 cp/init.c:1594
-msgid "qualified type `%T' does not match destructor name `~%T'"
-msgstr ""
-
-#: cp/call.c:270
-msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
-msgstr ""
-
-#: cp/call.c:279
-msgid "`%D' is a namespace"
-msgstr ""
+#: ada/misc.c:240
+#, fuzzy, c-format
+msgid "missing argument to \"-%s\""
+msgstr "Bestandsnaam ontbreekt na `%s' optie"
-#: cp/call.c:287
-msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
+#: ada/misc.c:281
+msgid "`-gnat' misspelled as `-gant'"
msgstr ""
-#: cp/call.c:369
+#: cp/call.c:217
msgid "unable to call pointer to member function here"
msgstr ""
-#: cp/call.c:518
-msgid "destructors take no parameters"
-msgstr ""
-
-#: cp/call.c:522
-msgid "destructor name `~%T' does not match type `%T' of expression"
-msgstr ""
-
-#: cp/call.c:543 cp/call.c:5000
-msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
-msgstr ""
-
-#: cp/call.c:567
-#, fuzzy
-msgid "request for member `%D' is ambiguous"
-msgstr "grootte van `%s' is %u bytes"
-
-#: cp/call.c:2537
+#: cp/call.c:2228
msgid "%s %D(%T, %T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2542
+#: cp/call.c:2233
msgid "%s %D(%T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2546
+#: cp/call.c:2237
msgid "%s %D(%T) <built-in>"
msgstr ""
-#: cp/call.c:2550
+#: cp/call.c:2241
msgid "%s %T <conversion>"
msgstr ""
-#: cp/call.c:2552
-msgid "%s %+#D%s"
+#: cp/call.c:2243
+msgid "%J%s %+#D <near match>"
msgstr ""
-#: cp/call.c:2726
-msgid "conversion from `%T' to `%T' is ambiguous"
+#: cp/call.c:2245
+msgid "%J%s %+#D"
msgstr ""
-#: cp/call.c:2803
-#, fuzzy
-msgid "`%T' is not a class type"
-msgstr "`%s' is smaller dan waarden van zijn type"
-
-#: cp/call.c:2811
-msgid "incomplete type '%T' cannot be used to name a scope"
+#: cp/call.c:2280
+msgid "candidates are:"
msgstr ""
-#: cp/call.c:2831 cp/typeck.c:2188 cp/typeck.c:2217
-#, fuzzy
-msgid "'%D' has no member named '%E'"
-msgstr "union heeft geen lid dat `%s' heet"
+#: cp/call.c:2468
+msgid "conversion from `%T' to `%T' is ambiguous"
+msgstr ""
-#: cp/call.c:2933
+#: cp/call.c:2619 cp/call.c:2663
#, fuzzy
msgid "no matching function for call to `%D(%A)'"
msgstr "Teveel argumenten in oproep van `%s'"
-#: cp/call.c:2944 cp/call.c:5087
+#: cp/call.c:2622 cp/call.c:2666
msgid "call of overloaded `%D(%A)' is ambiguous"
msgstr ""
#. It's no good looking for an overloaded operator() on a
#. pointer-to-member-function.
-#: cp/call.c:2971
+#: cp/call.c:2732
#, c-format
msgid "pointer-to-member function %E cannot be called without an object; consider using .* or ->*"
msgstr ""
-#: cp/call.c:3036
+#: cp/call.c:2798
msgid "no match for call to `(%T) (%A)'"
msgstr ""
-#: cp/call.c:3046
+#: cp/call.c:2806
msgid "call of `(%T) (%A)' is ambiguous"
msgstr ""
-#: cp/call.c:3081
+#: cp/call.c:2839
#, c-format
msgid "%s for ternary 'operator?:' in '%E ? %E : %E'"
msgstr ""
-#: cp/call.c:3087
+#: cp/call.c:2845
#, c-format
msgid "%s for 'operator%s' in '%E%s'"
msgstr ""
-#: cp/call.c:3091
+#: cp/call.c:2849
#, c-format
msgid "%s for 'operator[]' in '%E[%E]'"
msgstr ""
-#: cp/call.c:3096
+#: cp/call.c:2854
+#, fuzzy, c-format
+msgid "%s for '%s' in '%s %E'"
+msgstr "beginwaarde ontbreekt"
+
+#: cp/call.c:2859
#, c-format
msgid "%s for 'operator%s' in '%E %s %E'"
msgstr ""
-#: cp/call.c:3099
+#: cp/call.c:2862
#, c-format
msgid "%s for 'operator%s' in '%s%E'"
msgstr ""
-#: cp/call.c:3191
+#: cp/call.c:2957
#, fuzzy
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
msgstr "ANSI C verbiedt het weglaten van de middelste term van een ?: expresie"
-#: cp/call.c:3250
+#: cp/call.c:3018
#, c-format
msgid "`%E' has type `void' and is not a throw-expression"
msgstr ""
-#: cp/call.c:3283 cp/call.c:3475
+#: cp/call.c:3051 cp/call.c:3242
msgid "operands to ?: have different types"
msgstr ""
-#: cp/call.c:3428
+#: cp/call.c:3196
#, fuzzy
msgid "enumeral mismatch in conditional expression: `%T' vs `%T'"
msgstr "types in voorwaardelijke expressie komen niet overeen"
-#: cp/call.c:3435
+#: cp/call.c:3203
msgid "enumeral and non-enumeral type in conditional expression"
msgstr ""
-#: cp/call.c:3516
-#, fuzzy
-msgid "`%D' must be declared before use"
-msgstr "`%s' mag niet als alleen-lezen gedeclareerd worden"
-
-#: cp/call.c:3706
+#: cp/call.c:3487
msgid "no `%D(int)' declared for postfix `%s', trying prefix operator instead"
msgstr ""
-#: cp/call.c:3753
+#: cp/call.c:3532
msgid "using synthesized `%#D' for copy assignment"
msgstr ""
-#: cp/call.c:3755
+#: cp/call.c:3534
msgid " where cfront would use `%#D'"
msgstr ""
-#: cp/call.c:3782
+#: cp/call.c:3557
#, fuzzy
msgid "comparison between `%#T' and `%#T'"
msgstr "vergelijking tussen signed en unsigned"
-#: cp/call.c:4021
-msgid "no suitable `operator delete' for `%T'"
-msgstr ""
+#: cp/call.c:3803
+#, fuzzy
+msgid "no suitable `operator %s' for `%T'"
+msgstr "incompatibele operands voor %s"
-#: cp/call.c:4040
+#: cp/call.c:3820
msgid "`%+#D' is private"
msgstr ""
-#: cp/call.c:4042
+#: cp/call.c:3822
#, fuzzy
msgid "`%+#D' is protected"
msgstr "`%.*s' is niet gedefinieerd"
-#: cp/call.c:4044
+#: cp/call.c:3824
#, fuzzy
msgid "`%+#D' is inaccessible"
msgstr "%s is niet addresseerbaar"
-#: cp/call.c:4045
+#: cp/call.c:3825
msgid "within this context"
msgstr ""
-#: cp/call.c:4088
+#: cp/call.c:3895
#, fuzzy
msgid "invalid conversion from `%T' to `%T'"
msgstr "ongeldige registernaam voor `%s'"
# Is the %s the argument, or is it 'of' the argument?
-#: cp/call.c:4090 cp/call.c:4229 cp/call.c:4231
+#: cp/call.c:3897
#, fuzzy
msgid " initializing argument %P of `%D'"
msgstr "ongeldig type-argument `%s'"
-#: cp/call.c:4152 cp/call.c:4156
-msgid " initializing argument %P of `%D' from result of `%D'"
-msgstr ""
+#: cp/call.c:4050
+#, fuzzy
+msgid "cannot bind bitfield `%E' to `%T'"
+msgstr "niet-constante beginwaarde voor `%s'"
-#: cp/call.c:4162 cp/call.c:4165
-msgid " initializing temporary from result of `%D'"
-msgstr ""
+#: cp/call.c:4053
+#, fuzzy
+msgid "cannot bind packed field `%E' to `%T'"
+msgstr "niet-constante beginwaarde voor `%s'"
+
+#: cp/call.c:4056
+#, fuzzy
+msgid "cannot bind rvalue `%E' to `%T'"
+msgstr "niet-constante beginwaarde voor `%s'"
-#. Undefined behavior [expr.call] 5.2.2/7. We used to just warn
-#. here and do a bitwise copy, but now cp_expr_size will abort if we
-#. try to do that.
-#: cp/call.c:4316
+#: cp/call.c:4144
msgid "cannot pass objects of non-POD type `%#T' through `...'; call will abort at runtime"
msgstr ""
#. Undefined behavior [expr.call] 5.2.2/7.
-#: cp/call.c:4343
-msgid "cannot receive objects of non-POD type `%#T' through `...'"
+#: cp/call.c:4168
+msgid "cannot receive objects of non-POD type `%#T' through `...'; call will abort at runtime"
msgstr ""
-#: cp/call.c:4523
+#: cp/call.c:4208
+#, fuzzy
+msgid "the default argument for parameter %d of `%D' has not yet been parsed"
+msgstr "argumenten aan macro `%s' gegeven"
+
+#: cp/call.c:4403
msgid "passing `%T' as `this' argument of `%#D' discards qualifiers"
msgstr ""
-#: cp/call.c:4542
+#: cp/call.c:4422
#, fuzzy
msgid "`%T' is not an accessible base of `%T'"
msgstr "`%s' is geen bestand, pipe of tty"
-#: cp/call.c:4786
+#: cp/call.c:4696
msgid "could not find class$ field in java interface type `%T'"
msgstr ""
-#: cp/call.c:4974
+#: cp/call.c:4951
#, fuzzy
msgid "call to non-function `%D'"
msgstr "kan functie `main' niet inline maken"
-#: cp/call.c:5076
-msgid "no matching function for call to `%T::%D(%A)%#V'"
+#: cp/call.c:4977
+msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
msgstr ""
-#: cp/call.c:5106
+#: cp/call.c:5055
+#, fuzzy
+msgid "no matching function for call to `%T::%s(%A)%#V'"
+msgstr "Teveel argumenten in oproep van `%s'"
+
+#: cp/call.c:5072
+#, fuzzy, c-format
+msgid "call of overloaded `%s(%A)' is ambiguous"
+msgstr "grootte van `%s' is %u bytes"
+
+#: cp/call.c:5093
msgid "cannot call member function `%D' without object"
msgstr ""
-#: cp/call.c:5704
+#: cp/call.c:5678
msgid "passing `%T' chooses `%T' over `%T'"
msgstr ""
-#: cp/call.c:5706 cp/decl2.c:4154
+#: cp/call.c:5680 cp/name-lookup.c:4057
#, fuzzy
msgid " in call to `%D'"
msgstr "kan oproep van `%s' niet inline maken"
-#: cp/call.c:5755
+#: cp/call.c:5737
msgid "choosing `%D' over `%D'"
msgstr ""
-#: cp/call.c:5756
+#: cp/call.c:5738
msgid " for conversion from `%T' to `%T'"
msgstr ""
-#: cp/call.c:5758
+#: cp/call.c:5740
msgid " because conversion sequence for the argument is better"
msgstr ""
-#: cp/call.c:5879
-msgid "ISO C++ says that `%D' and `%D' are ambiguous even though the worst conversion for the former is better than the worst conversion for the latter"
+#: cp/call.c:5860
+msgid "ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:"
+msgstr ""
+
+#: cp/call.c:5864
+msgid "candidate 1:"
+msgstr ""
+
+#: cp/call.c:5865
+msgid "candidate 2:"
msgstr ""
# 'regio' klinkt niet echt, maar 'streek' lijkt me nog slechter
-#: cp/call.c:5996
+#: cp/call.c:5974
#, fuzzy
msgid "could not convert `%E' to `%T'"
msgstr "kon 0x%l.8x niet naar een regio omzetten"
-#: cp/call.c:6105
+#: cp/call.c:6079
msgid "invalid initialization of non-const reference of type '%T' from a temporary of type '%T'"
msgstr ""
-#: cp/call.c:6109
+#: cp/call.c:6083
msgid "invalid initialization of reference of type '%T' from expression of type '%T'"
msgstr ""
-#: cp/class.c:287
+#: cp/class.c:281
msgid "cannot convert from base `%T' to derived type `%T' via virtual base `%T'"
msgstr ""
-#: cp/class.c:992
+#: cp/class.c:764
+msgid "Java class '%T' cannot have an implicit non-trivial destructor"
+msgstr ""
+
+#: cp/class.c:765
+msgid "Java class '%T' cannot have a destructor"
+msgstr ""
+
+#: cp/class.c:933
msgid "`%#D' and `%#D' cannot be overloaded"
msgstr ""
-#: cp/class.c:1076
+#: cp/class.c:1016
#, fuzzy
msgid "duplicate enum value `%D'"
msgstr "herhaalde case-waarde"
-#: cp/class.c:1079
+#: cp/class.c:1019
msgid "duplicate field `%D' (as enum and non-enum)"
msgstr ""
-#: cp/class.c:1086
+#: cp/class.c:1026
#, fuzzy
msgid "duplicate nested type `%D'"
msgstr "herhaald lid `%s'"
-#: cp/class.c:1097
+#: cp/class.c:1037
msgid "duplicate field `%D' (as type and non-type)"
msgstr ""
-#: cp/class.c:1101
+#: cp/class.c:1041
#, fuzzy
msgid "duplicate member `%D'"
msgstr "herhaald lid `%s'"
-#: cp/class.c:1144
+#: cp/class.c:1079
msgid "conflicting access specifications for method `%D', ignored"
msgstr ""
-#: cp/class.c:1146
+#: cp/class.c:1081
#, c-format
msgid "conflicting access specifications for field `%s', ignored"
msgstr ""
-#: cp/class.c:1194
+#: cp/class.c:1131
msgid "`%D' names constructor"
msgstr ""
-#: cp/class.c:1199
+#: cp/class.c:1136
#, fuzzy
msgid "`%D' invalid in `%T'"
msgstr "Ongeldige optie `%s'"
-#: cp/class.c:1207
+#: cp/class.c:1144
msgid "no members matching `%D' in `%#T'"
msgstr ""
-#: cp/class.c:1239 cp/class.c:1247
+#: cp/class.c:1176 cp/class.c:1184
#, fuzzy
msgid "`%D' invalid in `%#T'"
msgstr "Ongeldige optie `%s'"
-#: cp/class.c:1240
+#: cp/class.c:1177
msgid " because of local method `%#D' with same name"
msgstr ""
-#: cp/class.c:1248
+#: cp/class.c:1185
msgid " because of local member `%#D' with same name"
msgstr ""
-#: cp/class.c:1320
+#: cp/class.c:1255
msgid "base class `%#T' has a non-virtual destructor"
msgstr ""
-#: cp/class.c:1340
+#: cp/class.c:1275
msgid "base `%T' with only non-default constructor in class without a constructor"
msgstr ""
-#: cp/class.c:1912
+#: cp/class.c:1659
msgid "all member functions in class `%T' are private"
msgstr ""
-#: cp/class.c:1926
+#: cp/class.c:1670
msgid "`%#T' only defines a private destructor and has no friends"
msgstr ""
-#: cp/class.c:1969
+#: cp/class.c:1712
msgid "`%#T' only defines private constructors and has no friends"
msgstr ""
-#: cp/class.c:2090 cp/class.c:5276
-#, fuzzy
-msgid "redefinition of `%#T'"
-msgstr "herdefinitie van `%s'"
-
-#: cp/class.c:2091
-#, fuzzy
-msgid "previous definition of `%#T'"
-msgstr "eerdere definitie van `%s'"
-
-#: cp/class.c:2365
+#: cp/class.c:2097
msgid "no unique final overrider for `%D' in `%T'"
msgstr ""
#. Here we know it is a hider, and no overrider exists.
-#: cp/class.c:2712
+#: cp/class.c:2542
msgid "`%D' was hidden"
msgstr ""
-#: cp/class.c:2713
+#: cp/class.c:2543
#, fuzzy
msgid " by `%D'"
msgstr "%s voor `%s'"
-#: cp/class.c:2755
+#: cp/class.c:2584
msgid "ISO C++ forbids member `%D' with same name as enclosing class"
msgstr ""
-#: cp/class.c:2760 cp/decl2.c:1331
+#: cp/class.c:2589 cp/decl2.c:1167
msgid "`%#D' invalid; an anonymous union can only have non-static data members"
msgstr ""
-#: cp/class.c:2766 cp/decl2.c:1337
+#: cp/class.c:2595 cp/decl2.c:1174
msgid "private member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2769 cp/decl2.c:1339
+#: cp/class.c:2598 cp/decl2.c:1176
msgid "protected member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2894
+#: cp/class.c:2717
msgid "vtable layout for class `%T' may not be ABI-compliant and may change in a future version of GCC due to implicit virtual destructor"
msgstr ""
-#: cp/class.c:2958
+#: cp/class.c:2777
#, fuzzy
msgid "bit-field `%#D' with non-integral type"
msgstr "breedte van bitveld `%s' is geen integerconstante"
-#: cp/class.c:2978
+#: cp/class.c:2797
#, fuzzy
msgid "bit-field `%D' width not an integer constant"
msgstr "breedte van bitveld `%s' is geen integerconstante"
-#: cp/class.c:2984
+#: cp/class.c:2803
#, fuzzy
msgid "negative width in bit-field `%D'"
msgstr "bitveld `%s' heeft een negatieve breedte"
-#: cp/class.c:2989
+#: cp/class.c:2808
#, fuzzy
msgid "zero width for bit-field `%D'"
msgstr "bitveld `%s' heeft breedte 0"
-#: cp/class.c:2995
+#: cp/class.c:2814
#, fuzzy
msgid "width of `%D' exceeds its type"
msgstr "breedte van `%s' overschrijdt zijn type"
-#: cp/class.c:3004
+#: cp/class.c:2823
msgid "`%D' is too small to hold all values of `%#T'"
msgstr ""
-#: cp/class.c:3088
+#: cp/class.c:2885
msgid "member `%#D' with constructor not allowed in union"
msgstr ""
-#: cp/class.c:3091
+#: cp/class.c:2888
msgid "member `%#D' with destructor not allowed in union"
msgstr ""
-#: cp/class.c:3094
+#: cp/class.c:2891
msgid "member `%#D' with copy assignment operator not allowed in union"
msgstr ""
-#: cp/class.c:3121
+#: cp/class.c:2918
#, fuzzy
msgid "multiple fields in union `%T' initialized"
msgstr "overtollige elementen in beginwaarde van union"
-#: cp/class.c:3234
+#: cp/class.c:2987
+msgid "ignoring packed attribute on unpacked non-POD field `%#D'"
+msgstr ""
+
+#: cp/class.c:3039
msgid "field `%D' in local class cannot be static"
msgstr ""
-#: cp/class.c:3240
+#: cp/class.c:3045
#, fuzzy
msgid "field `%D' invalidly declared function type"
msgstr "veld `%s' als een functie gedeclareerd"
-#: cp/class.c:3247
+#: cp/class.c:3052
#, fuzzy
msgid "field `%D' invalidly declared method type"
msgstr "bitveld `%s' heeft een ongeldig type"
-#: cp/class.c:3253
-#, fuzzy
-msgid "field `%D' invalidly declared offset type"
-msgstr "bitveld `%s' heeft een ongeldig type"
-
#. Unions cannot have static members.
-#: cp/class.c:3271
+#: cp/class.c:3070
#, fuzzy
msgid "field `%D' declared static in union"
msgstr "veld `%s' als een functie gedeclareerd"
-#: cp/class.c:3298
+#: cp/class.c:3097
msgid "non-static reference `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3333
+#: cp/class.c:3132
msgid "non-static const member `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3349
+#: cp/class.c:3147
msgid "field `%#D' with same name as class"
msgstr ""
-#: cp/class.c:3367
+#: cp/class.c:3165
#, fuzzy
msgid "`%#T' has pointer data members"
msgstr "%s heeft geen benoemde leden"
-#: cp/class.c:3371
+#: cp/class.c:3169
msgid " but does not override `%T(const %T&)'"
msgstr ""
-#: cp/class.c:3373
+#: cp/class.c:3171
msgid " or `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3376
+#: cp/class.c:3174
msgid " but does not override `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3826
+#: cp/class.c:3604
msgid "offset of empty base `%T' may not be ABI-compliant and maychange in a future version of GCC"
msgstr ""
-#: cp/class.c:3935
+#: cp/class.c:3714
msgid "class `%T' will be considered nearly empty in a future version of GCC"
msgstr ""
-#: cp/class.c:4025
+#: cp/class.c:3801
#, fuzzy
msgid "initializer specified for non-virtual method `%D'"
msgstr "geen beginwaarde voor variant-veld `%s'"
-#: cp/class.c:4761
+#: cp/class.c:4489
msgid "offset of virtual base `%T' is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:4861
+#: cp/class.c:4579
msgid "direct base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:4874
+#: cp/class.c:4592
msgid "virtual base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:5030
+#: cp/class.c:4766
msgid "size assigned to `%T' may not be ABI-compliant and may change in a future version of GCC"
msgstr ""
#. Versions of G++ before G++ 3.4 did not reset the
#. DECL_MODE.
-#: cp/class.c:5053
+#: cp/class.c:4805
msgid "the offset of `%D' may not be ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5079
+#: cp/class.c:4828
msgid "offset of `%D' is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5088
+#: cp/class.c:4837
msgid "`%D' contains empty classes which may cause base classes to be placed at different locations in a future version of GCC"
msgstr ""
-#: cp/class.c:5147
+#: cp/class.c:4896
msgid "layout of classes derived from empty class `%T' may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5432
+#: cp/class.c:5026 cp/semantics.c:2029
+#, fuzzy
+msgid "redefinition of `%#T'"
+msgstr "herdefinitie van `%s'"
+
+#: cp/class.c:5196
msgid "`%#T' has virtual functions but non-virtual destructor"
msgstr ""
-#: cp/class.c:5516
+#: cp/class.c:5275
msgid "trying to finish struct, but kicked out due to previous parse errors"
msgstr ""
-#: cp/class.c:5982
+#: cp/class.c:5717
#, c-format
msgid "language string `\"%s\"' not recognized"
msgstr ""
-#: cp/class.c:6078
+#: cp/class.c:5805
msgid "cannot resolve overloaded function `%D' based on conversion to type `%T'"
msgstr ""
-#: cp/class.c:6203
+#: cp/class.c:5930
msgid "no matches converting function `%D' to type `%#T'"
msgstr ""
-#: cp/class.c:6226
+#: cp/class.c:5953
msgid "converting overloaded function `%D' to type `%#T' is ambiguous"
msgstr ""
-#: cp/class.c:6252
+#: cp/class.c:5979
#, fuzzy
msgid "assuming pointer to member `%D'"
msgstr "herhaald lid `%s'"
-#: cp/class.c:6255
+#: cp/class.c:5982
#, c-format
msgid "(a pointer to member can only be formed with `&%E')"
msgstr ""
-#: cp/class.c:6306 cp/class.c:6477 cp/class.c:6484
+#: cp/class.c:6027 cp/class.c:6209 cp/class.c:6216
msgid "not enough type information"
msgstr ""
-#: cp/class.c:6315
+#: cp/class.c:6044
#, fuzzy
msgid "argument of type `%T' does not match `%T'"
msgstr "argument `%s' komt niet overeen met prototype"
-#: cp/class.c:6461
+#: cp/class.c:6193
msgid "invalid operation on uninstantiated type"
msgstr ""
@@ -14537,15 +13960,20 @@ msgstr ""
#. A name N used in a class S shall refer to the same declaration
#. in its context and when re-evaluated in the completed scope of
#. S.
-#: cp/class.c:6745 cp/decl.c:1254 cp/decl.c:3379 cp/pt.c:2004
+#: cp/class.c:6451 cp/decl.c:1225 cp/name-lookup.c:495 cp/pt.c:2093
#, fuzzy
msgid "declaration of `%#D'"
msgstr "herdeclaratie van `%s'"
-#: cp/class.c:6746
+#: cp/class.c:6452
msgid "changes meaning of `%D' from `%+#D'"
msgstr ""
+#: cp/cp-lang.c:398
+#, fuzzy
+msgid "inter-module optimisations not implemented yet"
+msgstr "profileren wordt niet ondersteund wanneer -mg gebruikt wordt\n"
+
#: cp/cvt.c:88
msgid "can't convert from incomplete type `%T' to `%T'"
msgstr ""
@@ -14554,277 +13982,262 @@ msgstr ""
msgid "conversion of `%E' from `%T' to `%T' is ambiguous"
msgstr ""
-#: cp/cvt.c:126
+#: cp/cvt.c:113 cp/cvt.c:127
msgid "converting from `%T' to `%T'"
msgstr ""
-#: cp/cvt.c:203 cp/cvt.c:207
-msgid "pointer to member cast from `%T' to `%T' is via virtual base"
+#: cp/cvt.c:185 cp/cvt.c:253 cp/cvt.c:297
+msgid "cannot convert `%E' from type `%T' to type `%T'"
msgstr ""
-#: cp/cvt.c:225 cp/cvt.c:236 cp/cvt.c:283
-msgid "cannot convert `%E' from type `%T' to type `%T'"
+#: cp/cvt.c:214 cp/cvt.c:218
+msgid "pointer to member cast from `%T' to `%T' is via virtual base"
msgstr ""
-#: cp/cvt.c:262
+#: cp/cvt.c:276
#, fuzzy
msgid "invalid conversion from '%T' to '%T'"
msgstr "ongeldige registernaam voor `%s'"
-#: cp/cvt.c:504
+#: cp/cvt.c:508
msgid "conversion from `%T' to `%T' discards qualifiers"
msgstr ""
-#: cp/cvt.c:522
+#: cp/cvt.c:526
#, fuzzy
msgid "casting `%T' to `%T' does not dereference pointer"
msgstr "kan niet derefereren, is geen pointer."
-#: cp/cvt.c:551
+#: cp/cvt.c:553
msgid "cannot convert type `%T' to type `%T'"
msgstr ""
-#: cp/cvt.c:683
+#: cp/cvt.c:679
msgid "conversion from `%#T' to `%#T'"
msgstr ""
-#: cp/cvt.c:695
+#: cp/cvt.c:691
msgid "`%#T' used where a `%T' was expected"
msgstr ""
-#: cp/cvt.c:712
-msgid "the address of `%D', will always be `true'"
-msgstr ""
-
-#: cp/cvt.c:732
+#: cp/cvt.c:715
msgid "`%#T' used where a floating point value was expected"
msgstr ""
-#: cp/cvt.c:779
+#: cp/cvt.c:762
#, fuzzy
msgid "conversion from `%T' to non-scalar type `%T' requested"
msgstr "conversie naar niet-scalair type gevraagd"
-#: cp/cvt.c:865
+#: cp/cvt.c:850
msgid "object of incomplete type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:868
+#: cp/cvt.c:853
msgid "object of type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:884
+#: cp/cvt.c:869
msgid "object `%E' of incomplete type `%T' will not be accessed in %s"
msgstr ""
#. [over.over] enumerates the places where we can take the address
#. of an overloaded function, and this is not one of them.
-#: cp/cvt.c:904
+#: cp/cvt.c:885
#, fuzzy, c-format
msgid "%s cannot resolve address of overloaded function"
msgstr "einde van niet-void functie werd bereikt zonder teruggeefwaarde"
#. Only warn when there is no &.
-#: cp/cvt.c:909
+#: cp/cvt.c:891
#, c-format
msgid "%s is a reference, not call, to function `%E'"
msgstr ""
-#: cp/cvt.c:1039
+#: cp/cvt.c:898
+#, fuzzy, c-format
+msgid "%s has no effect"
+msgstr "%s heeft geen leden"
+
+#: cp/cvt.c:1009
msgid "converting NULL to non-pointer type"
msgstr ""
-#: cp/cvt.c:1115
+#: cp/cvt.c:1081
msgid "ambiguous default type conversion from `%T'"
msgstr ""
-#: cp/cvt.c:1117
+#: cp/cvt.c:1083
msgid " candidate conversions include `%D' and `%D'"
msgstr ""
-#: cp/decl.c:736
-#, c-format
-msgid "push %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:770
-#, c-format
-msgid "pop %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:776 cp/decl.c:814
-msgid "XXX is_class_level != (current_binding_level == class_binding_level)\n"
-msgstr ""
-
-#: cp/decl.c:808
-#, c-format
-msgid "suspend %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:837
-#, c-format
-msgid "resume %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:1255 cp/decl.c:3490
-#, fuzzy
-msgid "conflicts with previous declaration `%#D'"
-msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie"
-
-#: cp/decl.c:1467
+#: cp/decl.c:374
#, fuzzy
msgid "label `%D' used but not defined"
msgstr "label `%s' gebruikt maar niet gedefinieerd"
-#: cp/decl.c:1472
+#: cp/decl.c:381
#, fuzzy
msgid "label `%D' defined but not used"
msgstr "label `%s' gedefinieerd maar niet gebruikt"
-#: cp/decl.c:2489
-msgid "namespace alias `%D' not allowed here, assuming `%D'"
-msgstr ""
+#: cp/decl.c:1133 cp/decl.c:1559
+#, fuzzy
+msgid "previous declaration of `%D'"
+msgstr "eerdere declaratie van `%s'"
-#: cp/decl.c:2825
-msgid "XXX entering pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1181
+#, fuzzy
+msgid "%Jfunction '%D' redeclared as inline"
+msgstr "functie `%s' geherdeclareerd als inline"
-#: cp/decl.c:2834
-msgid "XXX leaving pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1182
+#, fuzzy
+msgid "%Jprevious declaration of '%D' with attribute noinline"
+msgstr "eerdere declaratie van functie `%s' had het noinline attribuut"
-#: cp/decl.c:3285 cp/decl.c:3700
+#: cp/decl.c:1189
#, fuzzy
-msgid "previous declaration of `%D'"
-msgstr "eerdere declaratie van `%s'"
+msgid "%Jfunction '%D' redeclared with attribute noinline"
+msgstr "functie `%s' geherdeclareerd met noinline attribuut"
+
+#: cp/decl.c:1191
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was inline"
+msgstr "eerdere declaratie van functie `%s' was inline"
-#: cp/decl.c:3366 cp/decl.c:3404
+#: cp/decl.c:1212 cp/decl.c:1250
#, fuzzy
msgid "shadowing %s function `%#D'"
msgstr "bibliotheekfunctie `%s' wordt verborgen"
-#: cp/decl.c:3375
+#: cp/decl.c:1221
#, fuzzy
msgid "library function `%#D' redeclared as non-function `%#D'"
msgstr "bibliotheekfunctie `%s' als niet-functie gedeclareerd"
-#: cp/decl.c:3380
+#: cp/decl.c:1226
#, fuzzy
msgid "conflicts with built-in declaration `%#D'"
msgstr "conflicterende declaraties van `%s'"
-#: cp/decl.c:3399 cp/decl.c:3504 cp/decl.c:3520
+#: cp/decl.c:1245 cp/decl.c:1357 cp/decl.c:1373
#, fuzzy
msgid "new declaration `%#D'"
msgstr "herdeclaratie van `%s'"
-#: cp/decl.c:3400
+#: cp/decl.c:1246
#, fuzzy
msgid "ambiguates built-in declaration `%#D'"
msgstr "herhaalde label-declaratie `%s'"
-#: cp/decl.c:3464
+#: cp/decl.c:1317
#, fuzzy
msgid "`%#D' redeclared as different kind of symbol"
msgstr "`%s' als ander soort symbool geherdeclareerd"
-#: cp/decl.c:3467
+#: cp/decl.c:1320
#, fuzzy
msgid "previous declaration of `%#D'"
msgstr "eerdere declaratie van `%s'"
-#: cp/decl.c:3489
+#: cp/decl.c:1342
#, fuzzy
msgid "declaration of template `%#D'"
msgstr "herdeclaratie van `enum %s'"
-#: cp/decl.c:3505 cp/decl.c:3521
+#: cp/decl.c:1343 cp/name-lookup.c:496
+#, fuzzy
+msgid "conflicts with previous declaration `%#D'"
+msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie"
+
+#: cp/decl.c:1358 cp/decl.c:1374
#, fuzzy
msgid "ambiguates old declaration `%#D'"
msgstr "herhaalde label-declaratie `%s'"
-#: cp/decl.c:3513
+#: cp/decl.c:1366
#, fuzzy
msgid "declaration of C function `%#D' conflicts with"
msgstr "impliciete declaratie van functie `%s'"
-#: cp/decl.c:3515
+#: cp/decl.c:1368
#, fuzzy
msgid "previous declaration `%#D' here"
msgstr "eerdere declaratie van `%s'"
-#: cp/decl.c:3533
+#: cp/decl.c:1384
#, fuzzy
-msgid "conflicting types for `%#D'"
-msgstr "conflicterende types voor `%s'"
+msgid "conflicting declaration '%#D'"
+msgstr "conflicterende declaraties van `%s'"
-#: cp/decl.c:3534
+#: cp/decl.c:1385
#, fuzzy
-msgid "previous declaration as `%#D'"
+msgid "'%D' has a previous declaration as `%#D'"
msgstr "eerdere declaratie van `%s'"
-#: cp/decl.c:3577
+#: cp/decl.c:1438
#, fuzzy
msgid "`%#D' previously defined here"
msgstr "`%s' tevoren hier gedefinieerd"
-#: cp/decl.c:3578
+#: cp/decl.c:1439
#, fuzzy
msgid "`%#D' previously declared here"
msgstr "`%s' tevoren hier gedeclareerd"
#. Prototype decl follows defn w/o prototype.
-#: cp/decl.c:3587
+#: cp/decl.c:1448
#, fuzzy
msgid "prototype for `%#D'"
msgstr "prototype voor `%s' volgt"
-#: cp/decl.c:3588
+#: cp/decl.c:1449
#, fuzzy
-msgid "follows non-prototype definition here"
+msgid "%Jfollows non-prototype definition here"
msgstr "niet-prototype definitie hier"
-#: cp/decl.c:3600
+#: cp/decl.c:1461
#, fuzzy
msgid "previous declaration of `%#D' with %L linkage"
msgstr "eerdere declaratie van `%s'"
-#: cp/decl.c:3602
+#: cp/decl.c:1463
#, fuzzy
msgid "conflicts with new declaration with %L linkage"
msgstr "conflicterende declaraties van `%s'"
-#: cp/decl.c:3625 cp/decl.c:3632
+#: cp/decl.c:1486 cp/decl.c:1493
#, fuzzy
msgid "default argument given for parameter %d of `%#D'"
msgstr "argumenten aan macro `%s' gegeven"
-#: cp/decl.c:3627 cp/decl.c:3634
+#: cp/decl.c:1488 cp/decl.c:1495
#, fuzzy
msgid "after previous specification in `%#D'"
msgstr "eerdere definitie van `%s'"
-#: cp/decl.c:3643
+#: cp/decl.c:1504
#, fuzzy
msgid "`%#D' was used before it was declared inline"
msgstr "`%s' werd voor haar definitie gebruikt zonder protoype"
-#: cp/decl.c:3645
+#: cp/decl.c:1505
#, fuzzy
-msgid "previous non-inline declaration here"
+msgid "%Jprevious non-inline declaration here"
msgstr "eerdere impliciete declaratie van `%s'"
-#: cp/decl.c:3699
+#: cp/decl.c:1558
#, fuzzy
msgid "redundant redeclaration of `%D' in same scope"
msgstr "overbodige herdeclaratie van `%s' in zelfde bereik"
-#: cp/decl.c:3780
+#: cp/decl.c:1649
#, fuzzy, c-format
msgid "declaration of `%F' throws different exceptions"
msgstr "`%s' wordt gedeclareerd als een array van functies"
-#: cp/decl.c:3782
+#: cp/decl.c:1651
#, fuzzy, c-format
msgid "than previous declaration `%F'"
msgstr "geen eerdere declaratie voor `%s'"
@@ -14837,349 +14250,224 @@ msgstr "geen eerdere declaratie voor `%s'"
#. that specialization that would cause an implicit
#. instantiation to take place, in every translation unit in
#. which such a use occurs.
-#: cp/decl.c:3922
+#: cp/decl.c:1798
msgid "explicit specialization of %D after first use"
msgstr ""
-#: cp/decl.c:4187
-#, fuzzy
-msgid "`%#D' used prior to declaration"
-msgstr "`%s' gebruikt vóór declaratie"
-
-#: cp/decl.c:4218
-#, fuzzy
-msgid "redeclaration of `wchar_t' as `%T'"
-msgstr "herdeclaratie van `%s'"
-
-#. A redeclaration of main, but not a duplicate of the
-#. previous one.
-#.
-#. [basic.start.main]
-#.
-#. This function shall not be overloaded.
-#: cp/decl.c:4246
-#, fuzzy
-msgid "invalid redeclaration of `%D'"
-msgstr "herdeclaratie van `%s'"
-
-#: cp/decl.c:4247
-#, fuzzy
-msgid "as `%D'"
-msgstr "%s voor `%s'"
-
-#: cp/decl.c:4337
-#, fuzzy
-msgid "previous external decl of `%#D'"
-msgstr "eerdere externe declaratie van `%s'"
-
-#: cp/decl.c:4378
-#, fuzzy
-msgid "`%D' was previously implicitly declared to return `int'"
-msgstr "`%s' was tevoren impliciet gedeclareerd om een `int' terug te geven"
-
-#: cp/decl.c:4438
-#, fuzzy
-msgid "extern declaration of `%#D' doesn't match"
-msgstr "externe declaratie van `%s' komt niet overeen met de globale declaratie"
-
-#: cp/decl.c:4439
-#, fuzzy
-msgid "global declaration `%#D'"
-msgstr "herhaalde label-declaratie `%s'"
-
-#: cp/decl.c:4472
-#, fuzzy
-msgid "declaration of `%#D' shadows a parameter"
-msgstr "de declaratie van `%s' verbergt een parameter"
-
-#: cp/decl.c:4492
-#, fuzzy, c-format
-msgid "declaration of `%s' shadows a member of `this'"
-msgstr "de declaratie van `%s' verbergt een parameter"
-
-#: cp/decl.c:4889
-msgid "`%#D' hides constructor for `%#T'"
+#: cp/decl.c:1880
+msgid "%J'%D': visibility attribute ignored because it"
msgstr ""
-#: cp/decl.c:4904
+#: cp/decl.c:1882
#, fuzzy
-msgid "`%#D' conflicts with previous using declaration `%#D'"
+msgid "%Jconflicts with previous declaration here"
msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie"
-#: cp/decl.c:4916
-#, fuzzy
-msgid "previous non-function declaration `%#D'"
-msgstr "eerdere declaratie van `%s'"
-
-#: cp/decl.c:4917
-#, fuzzy
-msgid "conflicts with function declaration `%#D'"
-msgstr "conflicterende declaraties van `%s'"
-
-#: cp/decl.c:5007
+#: cp/decl.c:1976
#, fuzzy
msgid "implicit declaration of function `%#D'"
msgstr "impliciete declaratie van functie `%s'"
-#: cp/decl.c:5167
+#: cp/decl.c:2124
#, c-format
msgid "label `%s' referenced outside of any function"
msgstr ""
-#: cp/decl.c:5270 cp/decl.c:5294 cp/decl.c:5387
+#: cp/decl.c:2221 cp/decl.c:2245 cp/decl.c:2333
#, fuzzy
msgid "jump to label `%D'"
msgstr "herhaald label `%s'"
-#: cp/decl.c:5272 cp/decl.c:5296
+#: cp/decl.c:2223 cp/decl.c:2247
msgid "jump to case label"
msgstr ""
-#: cp/decl.c:5280
+#: cp/decl.c:2226 cp/decl.c:2250
+#, fuzzy
+msgid "%H from here"
+msgstr "van hieruit opgeroepen"
+
+#: cp/decl.c:2231
#, fuzzy
msgid " crosses initialization of `%#D'"
msgstr "(dicht bij initialisatie van `%s')"
-#: cp/decl.c:5283 cp/decl.c:5403
+#: cp/decl.c:2234 cp/decl.c:2349
msgid " enters scope of non-POD `%#D'"
msgstr ""
-#: cp/decl.c:5303 cp/decl.c:5407
+#: cp/decl.c:2254 cp/decl.c:2353
msgid " enters try block"
msgstr ""
-#. Can't skip init of __exception_info.
-#: cp/decl.c:5305 cp/decl.c:5399 cp/decl.c:5409
+#: cp/decl.c:2256 cp/decl.c:2355
msgid " enters catch block"
msgstr ""
-#: cp/decl.c:5388
+#: cp/decl.c:2334
#, fuzzy
msgid " from here"
msgstr "van hieruit opgeroepen"
-#: cp/decl.c:5401
+#. Can't skip init of __exception_info.
+#: cp/decl.c:2345
+msgid "%J enters catch block"
+msgstr ""
+
+#: cp/decl.c:2347
#, fuzzy
msgid " skips initialization of `%#D'"
msgstr "(dicht bij initialisatie van `%s')"
-#: cp/decl.c:5437
+#: cp/decl.c:2381
#, fuzzy
msgid "label named wchar_t"
msgstr "er is geen label dat `%s' heet"
-#: cp/decl.c:5440
+#: cp/decl.c:2384
#, fuzzy
msgid "duplicate label `%D'"
msgstr "herhaald label `%s'"
-#: cp/decl.c:5525
-#, fuzzy, c-format
-msgid "case label `%E' not within a switch statement"
-msgstr "case-label niet in een switch-statement"
-
-#. Definition isn't the kind we were looking for.
-#: cp/decl.c:5704 cp/decl.c:5723
-#, fuzzy
-msgid "`%#D' redeclared as %C"
-msgstr "`%s' tevoren hier gedeclareerd"
-
-#. This happens for A::B where B is a template, and there are no
-#. template arguments.
-#: cp/decl.c:5811 cp/typeck.c:2069 cp/typeck.c:2229
-#, fuzzy
-msgid "invalid use of `%D'"
-msgstr "ongeldig gebruik van `restrict'"
-
-#: cp/decl.c:5852
-#, fuzzy
-msgid "`%D::%D' is not a template"
-msgstr "`%s' is geen iterator"
-
-#: cp/decl.c:5869
-#, fuzzy
-msgid "`%D' undeclared in namespace `%D'"
-msgstr "ongeldige naam `%s'"
-
-#: cp/decl.c:6002
+#: cp/decl.c:2612 cp/parser.c:3178
#, fuzzy
msgid "`%D' used without template parameters"
msgstr "macro `%s' gebruikt zonder argumenten"
-#: cp/decl.c:6013 cp/decl.c:6029 cp/decl.c:6139
+#: cp/decl.c:2622 cp/decl.c:2638 cp/decl.c:2726
msgid "no class template named `%#T' in `%#T'"
msgstr ""
-#: cp/decl.c:6055 cp/decl.c:6065 cp/decl.c:6100
+#: cp/decl.c:2659 cp/decl.c:2669 cp/decl.c:2689
msgid "no type named `%#T' in `%#T'"
msgstr ""
-#: cp/decl.c:6329
-msgid "lookup of `%D' finds `%#D'"
-msgstr ""
-
-#: cp/decl.c:6331
-msgid " instead of `%D' from dependent base class"
-msgstr ""
-
-#: cp/decl.c:6333
-msgid " (use `typename %T::%D' if that's what you meant)"
-msgstr ""
-
-#: cp/decl.c:6364
-msgid "name lookup of `%D' changed"
-msgstr ""
-
-#: cp/decl.c:6366
-msgid " matches this `%D' under ISO standard rules"
-msgstr ""
-
-#: cp/decl.c:6368
-msgid " matches this `%D' under old rules"
-msgstr ""
-
-#: cp/decl.c:6382 cp/decl.c:6389
-msgid "name lookup of `%D' changed for new ISO `for' scoping"
-msgstr ""
-
-#: cp/decl.c:6384
-msgid " cannot use obsolete binding at `%D' because it has a destructor"
-msgstr ""
-
-#: cp/decl.c:6391
-msgid " using obsolete binding at `%D'"
-msgstr ""
-
-#: cp/decl.c:6609
-msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
+#: cp/decl.c:3416
+msgid "%Jan anonymous union cannot have function members"
msgstr ""
-#: cp/decl.c:7432
-msgid "an anonymous union cannot have function members"
-msgstr ""
-
-#: cp/decl.c:7449
+#: cp/decl.c:3434
msgid "member %#D' with constructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7452
+#: cp/decl.c:3437
msgid "member %#D' with destructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7455
+#: cp/decl.c:3440
msgid "member %#D' with copy assignment operator not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7493
+#: cp/decl.c:3480
#, fuzzy
msgid "redeclaration of C++ built-in type `%T'"
msgstr "herdeclaratie van `%s'"
-#: cp/decl.c:7529
+#: cp/decl.c:3518
msgid "multiple types in one declaration"
msgstr ""
-#: cp/decl.c:7556
+#: cp/decl.c:3544
#, fuzzy
msgid "missing type-name in typedef-declaration"
msgstr "nutteloos sleutelwoord of typenaam in lege declaratie"
-#: cp/decl.c:7563
+#: cp/decl.c:3552
msgid "ISO C++ prohibits anonymous structs"
msgstr ""
-#: cp/decl.c:7570
+#: cp/decl.c:3559
#, fuzzy
msgid "`%D' can only be specified for functions"
msgstr "argument-formaat opgegeven voor niet-functie `%s'"
-#: cp/decl.c:7572
+#: cp/decl.c:3561
msgid "`%D' can only be specified inside a class"
msgstr ""
-#: cp/decl.c:7574
+#: cp/decl.c:3563
msgid "`%D' can only be specified for constructors"
msgstr ""
-#: cp/decl.c:7577
+#: cp/decl.c:3566
#, fuzzy
msgid "`%D' can only be specified for objects and functions"
msgstr "argument-formaat opgegeven voor niet-functie `%s'"
-#: cp/decl.c:7719 cp/decl2.c:936
+#: cp/decl.c:3708 cp/decl2.c:861
#, fuzzy
msgid "typedef `%D' is initialized (use __typeof__ instead)"
msgstr "typedef `%s' krijgt beginwaarde"
-#: cp/decl.c:7724
+#: cp/decl.c:3713
#, fuzzy
msgid "function `%#D' is initialized like a variable"
msgstr "typedef `%s' krijgt beginwaarde alsof het een variabele is"
-#: cp/decl.c:7736
+#: cp/decl.c:3725
#, fuzzy
msgid "declaration of `%#D' has `extern' and is initialized"
msgstr "de declaratie van `%s' is `extern' en heeft een beginwaarde"
-#: cp/decl.c:7770
+#: cp/decl.c:3758
#, fuzzy
msgid "`%#D' is not a static member of `%#T'"
msgstr "`%s' is geen static veld"
-#: cp/decl.c:7775
+#: cp/decl.c:3764
msgid "ISO C++ does not permit `%T::%D' to be defined as `%T::%D'"
msgstr ""
-#: cp/decl.c:7786
+#: cp/decl.c:3775
#, fuzzy
msgid "duplicate initialization of %D"
msgstr "dubbele beginwaarde"
-#: cp/decl.c:7815
+#: cp/decl.c:3806
#, fuzzy
msgid "declaration of `%#D' outside of class is not definition"
msgstr "de zwakke declaratie van `%s' moet aan de definitie voorafgaan"
-#: cp/decl.c:7865
+#: cp/decl.c:3857
#, fuzzy
msgid "variable `%#D' has initializer but incomplete type"
msgstr "variabele `%s' heeft beginwaarde, maar een onvolledig type"
-#: cp/decl.c:7873 cp/decl.c:8432
+#: cp/decl.c:3865 cp/decl.c:4426
#, fuzzy
msgid "elements of array `%#D' have incomplete type"
msgstr "elementen van array `%s' hebben een onvolledig type"
-#: cp/decl.c:7889
+#: cp/decl.c:3881
#, fuzzy
msgid "aggregate `%#D' has incomplete type and cannot be defined"
msgstr "parameter `%s' heeft een onvolledig type"
-#: cp/decl.c:7931
+#: cp/decl.c:3923
#, fuzzy
msgid "`%D' declared as reference but not initialized"
msgstr "`%s' als ander soort symbool geherdeclareerd"
-#: cp/decl.c:7940
+#: cp/decl.c:3929
msgid "ISO C++ forbids use of initializer list to initialize reference `%D'"
msgstr ""
-#: cp/decl.c:7970
+#: cp/decl.c:3957
#, fuzzy
msgid "cannot initialize `%T' from `%T'"
msgstr "niet-constante beginwaarde voor `%s'"
-#: cp/decl.c:8004
+#: cp/decl.c:3989
#, fuzzy
msgid "initializer fails to determine size of `%D'"
msgstr "beginwaarde legt grootte van `%s' niet vast"
-#: cp/decl.c:8009
+#: cp/decl.c:3994
#, fuzzy
msgid "array size missing in `%D'"
msgstr "array-grootte ontbreekt in `%s'"
-#: cp/decl.c:8021
+#: cp/decl.c:4006
#, fuzzy
msgid "zero-size array `%D'"
msgstr "array `%s' heeft grootte die negatief of 0 is"
@@ -15187,333 +14475,323 @@ msgstr "array `%s' heeft grootte die negatief of 0 is"
#. An automatic variable with an incomplete type: that is an error.
#. Don't talk about array types here, since we took care of that
#. message in grokdeclarator.
-#: cp/decl.c:8059
+#: cp/decl.c:4043
#, fuzzy
msgid "storage size of `%D' isn't known"
msgstr "opslaggrootte van `%s' is onbekend"
-#: cp/decl.c:8081
+#: cp/decl.c:4065
#, fuzzy
msgid "storage size of `%D' isn't constant"
msgstr "opslaggrootte van `%s' is niet constant"
-#: cp/decl.c:8137
+#: cp/decl.c:4120
msgid "sorry: semantics of inline function static data `%#D' are wrong (you'll wind up with multiple copies)"
msgstr ""
-#: cp/decl.c:8138
-msgid " you can work around this by removing the initializer"
+#: cp/decl.c:4121
+msgid "%J you can work around this by removing the initializer"
msgstr ""
-#: cp/decl.c:8164
+#: cp/decl.c:4147
#, fuzzy
msgid "uninitialized const `%D'"
msgstr "niet-constante beginwaarde voor `%s'"
-#: cp/decl.c:8249
+#: cp/decl.c:4226
#, fuzzy
msgid "brace-enclosed initializer used to initialize `%T'"
msgstr "geen beginwaarde voor variant-veld `%s'"
-#: cp/decl.c:8313
+#: cp/decl.c:4290
msgid "initializer for `%T' must be brace-enclosed"
msgstr ""
-#: cp/decl.c:8328
+#: cp/decl.c:4307
#, fuzzy
msgid "ISO C++ does not allow designated initializers"
msgstr "ANSI C staat het gebruik van `varargs.h' niet toe"
-#: cp/decl.c:8332
+#: cp/decl.c:4311
#, fuzzy
msgid "`%T' has no non-static data member named `%D'"
msgstr "union heeft geen lid dat `%s' heet"
-#: cp/decl.c:8389
+#: cp/decl.c:4359
+msgid "name `%D' used in a GNU-style designated initializer for an array"
+msgstr ""
+
+#: cp/decl.c:4382
#, fuzzy
msgid "too many initializers for `%T'"
msgstr "ongeldige beginwaarde voor veld `%s'"
-#: cp/decl.c:8426
+#: cp/decl.c:4420
#, fuzzy
msgid "variable-sized object `%D' may not be initialized"
msgstr "object van variabele lengte mag geen beginwaarde krijgen"
-#: cp/decl.c:8437
+#: cp/decl.c:4431
#, fuzzy
msgid "`%D' has incomplete type"
msgstr "`%s' heeft een onvolledig type"
-#: cp/decl.c:8486
+#: cp/decl.c:4486
msgid "`%D' must be initialized by constructor, not by `{...}'"
msgstr ""
-#: cp/decl.c:8527
+#: cp/decl.c:4530
msgid "structure `%D' with uninitialized const members"
msgstr ""
-#: cp/decl.c:8529
+#: cp/decl.c:4532
msgid "structure `%D' with uninitialized reference members"
msgstr ""
-#: cp/decl.c:8770
+#: cp/decl.c:4713
msgid "assignment (not initialization) in declaration"
msgstr ""
-#: cp/decl.c:8785
+#: cp/decl.c:4730
msgid "cannot initialize `%D' to namespace `%D'"
msgstr ""
-#: cp/decl.c:8836
+#: cp/decl.c:4780
#, fuzzy
msgid "shadowing previous type declaration of `%#D'"
msgstr "eerdere declaratie van `%s'"
-#: cp/decl.c:8883
+#: cp/decl.c:4816
msgid "`%D' cannot be thread-local because it has non-POD type `%T'"
msgstr ""
-#: cp/decl.c:8898
+#: cp/decl.c:4831
msgid "`%D' is thread-local and so cannot be dynamically initialized"
msgstr ""
-#: cp/decl.c:9298 cp/init.c:562
-#, fuzzy
-msgid "multiple initializations given for `%D'"
-msgstr "(dicht bij initialisatie van `%s')"
-
-#: cp/decl.c:9390
+#: cp/decl.c:5313
msgid "invalid catch parameter"
msgstr ""
-#: cp/decl.c:9508
+#: cp/decl.c:5427
msgid "destructor for alien class `%T' cannot be a member"
msgstr ""
-#: cp/decl.c:9511
+#: cp/decl.c:5430
msgid "constructor for alien class `%T' cannot be a member"
msgstr ""
-#: cp/decl.c:9530
+#: cp/decl.c:5452
msgid "`%D' declared as a `virtual' %s"
msgstr ""
-#: cp/decl.c:9532
+#: cp/decl.c:5454
#, fuzzy
msgid "`%D' declared as an `inline' %s"
msgstr "variabele `%s' als inline gedeclareerd"
-#: cp/decl.c:9534
+#: cp/decl.c:5456
msgid "`const' and `volatile' function specifiers on `%D' invalid in %s declaration"
msgstr ""
-#: cp/decl.c:9537
+#: cp/decl.c:5459
#, fuzzy
msgid "`%D' declared as a friend"
msgstr "veld `%s' als een functie gedeclareerd"
-#: cp/decl.c:9543
+#: cp/decl.c:5465
#, fuzzy
msgid "`%D' declared with an exception specification"
msgstr "`%s' gedeclareerd als een functie die een functie teruggeeft"
-#: cp/decl.c:9618
+#: cp/decl.c:5544
msgid "cannot declare `::main' to be a template"
msgstr ""
-#: cp/decl.c:9620
+#: cp/decl.c:5546
msgid "cannot declare `::main' to be inline"
msgstr ""
-#: cp/decl.c:9622
+#: cp/decl.c:5548
msgid "cannot declare `::main' to be static"
msgstr ""
-#: cp/decl.c:9625
+#: cp/decl.c:5551
msgid "`main' must return `int'"
msgstr ""
-#: cp/decl.c:9653
+#: cp/decl.c:5579
msgid "non-local function `%#D' uses anonymous type"
msgstr ""
-#: cp/decl.c:9656
+#: cp/decl.c:5582
msgid "`%#D' does not refer to the unqualified type, so it is not used for linkage"
msgstr ""
-#: cp/decl.c:9662
+#: cp/decl.c:5588
msgid "non-local function `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:9691
+#: cp/decl.c:5612
msgid "%smember function `%D' cannot have `%T' method qualifier"
msgstr ""
-#: cp/decl.c:9715
+#: cp/decl.c:5636
msgid "defining explicit specialization `%D' in friend declaration"
msgstr ""
#. Something like `template <class T> friend void f<T>()'.
-#: cp/decl.c:9725
+#: cp/decl.c:5646
msgid "invalid use of template-id `%D' in declaration of primary template"
msgstr ""
-#: cp/decl.c:9753
+#: cp/decl.c:5673
msgid "default arguments are not allowed in declaration of friend template specialization `%D'"
msgstr ""
-#: cp/decl.c:9760
+#: cp/decl.c:5680
msgid "`inline' is not allowed in declaration of friend template specialization `%D'"
msgstr ""
-#: cp/decl.c:9822
+#: cp/decl.c:5741
#, fuzzy
msgid "definition of implicitly-declared `%D'"
msgstr "functie-definitie als `auto' gedeclareerd"
-#: cp/decl.c:9834 cp/decl2.c:785
+#: cp/decl.c:5759 cp/decl2.c:744
msgid "no `%#D' member function declared in class `%T'"
msgstr ""
-#: cp/decl.c:9967
+#: cp/decl.c:5893
msgid "non-local variable `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:10064
+#: cp/decl.c:6008
msgid "invalid in-class initialization of static data member of non-integral type `%T'"
msgstr ""
-#: cp/decl.c:10073
+#: cp/decl.c:6017
msgid "ISO C++ forbids in-class initialization of non-const static member `%D'"
msgstr ""
-#: cp/decl.c:10076
+#: cp/decl.c:6020
msgid "ISO C++ forbids initialization of member constant `%D' of non-integral type `%T'"
msgstr ""
-#: cp/decl.c:10126
+#: cp/decl.c:6039
#, fuzzy
-msgid "size of array `%D' has non-integer type"
+msgid "size of array `%D' has non-integral type `%T'"
msgstr "grootte van array `%s' is van een niet-integraal type"
-#: cp/decl.c:10128
+#: cp/decl.c:6041
#, fuzzy
-msgid "size of array has non-integer type"
+msgid "size of array has non-integral type `%T'"
msgstr "grootte van array `%s' is van een niet-integraal type"
-#: cp/decl.c:10148
+#: cp/decl.c:6077
#, fuzzy
msgid "size of array `%D' is negative"
msgstr "grootte van array `%s' is negatief"
-#: cp/decl.c:10150
+#: cp/decl.c:6079
#, fuzzy
msgid "size of array is negative"
msgstr "grootte van array `%s' is negatief"
-#: cp/decl.c:10159
+#: cp/decl.c:6087
#, fuzzy
msgid "ISO C++ forbids zero-size array `%D'"
msgstr "ANSI C verbiedt array `%s' met lengte 0"
-#: cp/decl.c:10161
+#: cp/decl.c:6089
#, fuzzy
msgid "ISO C++ forbids zero-size array"
msgstr "ANSI C verbiedt array `%s' met lengte 0"
-#: cp/decl.c:10168
+#: cp/decl.c:6096
#, fuzzy
msgid "size of array `%D' is not an integral constant-expression"
msgstr "grootte van array `%s' is van een niet-integraal type"
-#: cp/decl.c:10171
+#: cp/decl.c:6099
#, fuzzy
msgid "size of array is not an integral constant-expression"
msgstr "ongeldig gebruik van een void-expressie"
-#: cp/decl.c:10189
+#: cp/decl.c:6104
#, fuzzy
msgid "ISO C++ forbids variable-size array `%D'"
msgstr "ANSI C verbiedt array `%s' van variabele lengte"
-#: cp/decl.c:10192
+#: cp/decl.c:6106
#, fuzzy
msgid "ISO C++ forbids variable-size array"
msgstr "ANSI C verbiedt array `%s' van variabele lengte"
-#: cp/decl.c:10203
+#: cp/decl.c:6128
msgid "overflow in array dimension"
msgstr ""
-#: cp/decl.c:10262
+#: cp/decl.c:6222
#, fuzzy
msgid "declaration of `%D' as %s"
msgstr "herdeclaratie van `%s'"
-#: cp/decl.c:10264
+#: cp/decl.c:6224
#, fuzzy, c-format
msgid "creating %s"
msgstr "read %s"
-#: cp/decl.c:10276
+#: cp/decl.c:6236
msgid "declaration of `%D' as multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:10279
+#: cp/decl.c:6239
msgid "multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:10308
+#: cp/decl.c:6267
msgid "return type specification for constructor invalid"
msgstr ""
-#: cp/decl.c:10315
+#: cp/decl.c:6274
msgid "return type specification for destructor invalid"
msgstr ""
-#: cp/decl.c:10321
+#: cp/decl.c:6280
#, fuzzy
msgid "operator `%T' declared to return `%T'"
msgstr "parameter `%s' als void gedeclareerd"
-#: cp/decl.c:10323
+#: cp/decl.c:6282
#, fuzzy
msgid "return type specified for `operator %T'"
msgstr "registernaam niet opgegeven voor `%s'"
-#: cp/decl.c:10491
+#: cp/decl.c:6425
msgid "destructors must be member functions"
msgstr ""
-#: cp/decl.c:10510
+#: cp/decl.c:6444
msgid "destructor `%T' must match class name `%T'"
msgstr ""
-#: cp/decl.c:10539
-msgid "variable declaration is not allowed here"
-msgstr ""
-
-#: cp/decl.c:10566
-#, fuzzy
-msgid "invalid declarator"
-msgstr "lege declaratie"
-
-#: cp/decl.c:10617
+#: cp/decl.c:6507
msgid "declarator-id missing; using reserved word `%D'"
msgstr ""
-#: cp/decl.c:10674
+#: cp/decl.c:6561
#, fuzzy
msgid "type `%T' is not derived from type `%T'"
msgstr "iterator `%s' is van een afgeleid type"
#. Parse error puts this typespec where
#. a declarator should go.
-#: cp/decl.c:10726
+#: cp/decl.c:6624
msgid "`%T' specified as declarator-id"
msgstr ""
-#: cp/decl.c:10728
+#: cp/decl.c:6626
msgid " perhaps you want `%T' for a constructor"
msgstr ""
@@ -15521,318 +14799,318 @@ msgstr ""
#. decl-specifier like in
#. std::allocator alloc;
#. Handle that gracefully.
-#: cp/decl.c:10750
+#: cp/decl.c:6648
#, fuzzy, c-format
msgid "invalid use of template-name '%E' in a declarator"
msgstr "ongeldig gebruik van een void-expressie"
-#: cp/decl.c:10770
+#: cp/decl.c:6668
#, fuzzy
msgid "declaration of `%D' as non-function"
msgstr "`%s' wordt gedeclareerd als een array van functies"
-#: cp/decl.c:10847
+#: cp/decl.c:6745
msgid "`bool' is now a keyword"
msgstr ""
-#: cp/decl.c:10849
+#: cp/decl.c:6747
msgid "extraneous `%T' ignored"
msgstr ""
-#: cp/decl.c:10865 cp/decl.c:10910
+#: cp/decl.c:6763 cp/decl.c:6807
#, fuzzy
msgid "multiple declarations `%T' and `%T'"
msgstr "meerdere parameters hebben de naam `%s'"
-#: cp/decl.c:10878
+#: cp/decl.c:6776
#, fuzzy
msgid "ISO C++ does not support `long long'"
msgstr "ANSI C ondersteunt `long long' niet"
-#: cp/decl.c:10983 cp/decl.c:10986
+#: cp/decl.c:6880 cp/decl.c:6883
#, fuzzy, c-format
msgid "ISO C++ forbids declaration of `%s' with no type"
msgstr "ANSI C verbiedt lid-declaraties zonder leden"
-#. The implicit typename extension is deprecated and will be
-#. removed. Warn about its use now.
-#: cp/decl.c:10996
-msgid "`%T' is implicitly a typename"
-msgstr ""
-
-#: cp/decl.c:11032
+#: cp/decl.c:6914
#, c-format
msgid "short, signed or unsigned invalid for `%s'"
msgstr ""
-#: cp/decl.c:11037
+#: cp/decl.c:6919
#, c-format
msgid "long and short specified together for `%s'"
msgstr ""
-#: cp/decl.c:11048
+#: cp/decl.c:6930
#, c-format
msgid "signed and unsigned given together for `%s'"
msgstr ""
-#: cp/decl.c:11157
+#: cp/decl.c:7039
msgid "qualifiers are not allowed on declaration of `operator %T'"
msgstr ""
-#: cp/decl.c:11179
+#: cp/decl.c:7061
msgid "member `%D' cannot be declared both virtual and static"
msgstr ""
-#: cp/decl.c:11188
+#: cp/decl.c:7070
#, fuzzy
msgid "`%T::%D' is not a valid declarator"
msgstr "`%s' is geen iterator"
-#: cp/decl.c:11200
+#: cp/decl.c:7082
msgid "storage class specifiers invalid in parameter declarations"
msgstr ""
-#: cp/decl.c:11204
+#: cp/decl.c:7086
msgid "typedef declaration invalid in parameter declaration"
msgstr ""
-#: cp/decl.c:11217
+#: cp/decl.c:7099
msgid "virtual outside class declaration"
msgstr ""
-#: cp/decl.c:11278
+#: cp/decl.c:7158
#, c-format
msgid "storage class specified for %s `%s'"
msgstr ""
-#: cp/decl.c:11325
+#: cp/decl.c:7193
+#, c-format
+msgid "top-level declaration of `%s' specifies `auto'"
+msgstr "top-level declaratie van `%s' specifieert `auto'"
+
+#: cp/decl.c:7205
msgid "storage class specifiers invalid in friend function declarations"
msgstr ""
-#: cp/decl.c:11495
+#: cp/decl.c:7370
msgid "destructor cannot be static member function"
msgstr ""
-#: cp/decl.c:11498
+#: cp/decl.c:7373
#, fuzzy, c-format
msgid "destructors may not be `%s'"
msgstr "structure heeft geen lid dat `%s' heet"
-#: cp/decl.c:11519
+#: cp/decl.c:7394
msgid "constructor cannot be static member function"
msgstr ""
-#: cp/decl.c:11522
+#: cp/decl.c:7397
msgid "constructors cannot be declared virtual"
msgstr ""
-#: cp/decl.c:11527
+#: cp/decl.c:7402
#, fuzzy, c-format
msgid "constructors may not be `%s'"
msgstr "structure heeft geen lid dat `%s' heet"
-#: cp/decl.c:11537
+#: cp/decl.c:7412
msgid "return value type specifier for constructor ignored"
msgstr ""
-#: cp/decl.c:11556
+#: cp/decl.c:7431
#, c-format
msgid "can't initialize friend function `%s'"
msgstr ""
#. Cannot be both friend and virtual.
-#: cp/decl.c:11560
+#: cp/decl.c:7435
msgid "virtual functions cannot be friends"
msgstr ""
-#: cp/decl.c:11565
+#: cp/decl.c:7440
msgid "friend declaration not in class definition"
msgstr ""
-#: cp/decl.c:11567
+#: cp/decl.c:7442
#, c-format
msgid "can't define friend function `%s' in a local class definition"
msgstr ""
-#: cp/decl.c:11591
+#: cp/decl.c:7463
msgid "destructors may not have parameters"
msgstr ""
-#: cp/decl.c:11622 cp/decl.c:11629
+#: cp/decl.c:7483 cp/decl.c:7490
#, fuzzy
msgid "cannot declare reference to `%#T'"
msgstr "kan niet derefereren, is geen pointer."
-#: cp/decl.c:11623
+#: cp/decl.c:7484
#, fuzzy
msgid "cannot declare pointer to `%#T'"
msgstr "parameter `%s' wijst naar een onvolledig type"
-#: cp/decl.c:11628
+#: cp/decl.c:7489
msgid "cannot declare pointer to `%#T' member"
msgstr ""
-#: cp/decl.c:11804
+#: cp/decl.c:7627
msgid "extra qualification `%T::' on member `%s' ignored"
msgstr ""
-#: cp/decl.c:11814
+#: cp/decl.c:7639
msgid "cannot declare member function `%T::%s' within `%T'"
msgstr ""
-#: cp/decl.c:11829
+#: cp/decl.c:7654
msgid "cannot declare member `%T::%s' within `%T'"
msgstr ""
-#: cp/decl.c:11908
+#: cp/decl.c:7734
msgid "data member may not have variably modified type `%T'"
msgstr ""
-#: cp/decl.c:11910
+#: cp/decl.c:7736
msgid "parameter may not have variably modified type `%T'"
msgstr ""
#. [dcl.fct.spec] The explicit specifier shall only be used in
#. declarations of constructors within a class definition.
-#: cp/decl.c:11918
+#: cp/decl.c:7744
msgid "only declarations of constructors can be `explicit'"
msgstr ""
-#: cp/decl.c:11926
+#: cp/decl.c:7752
#, c-format
msgid "non-member `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11931
+#: cp/decl.c:7757
#, c-format
msgid "non-object member `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11937
+#: cp/decl.c:7763
#, fuzzy, c-format
msgid "function `%s' cannot be declared `mutable'"
msgstr "geneste functie `%s' is als `extern' gedeclareerd"
-#: cp/decl.c:11942
+#: cp/decl.c:7768
#, c-format
msgid "static `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11947
+#: cp/decl.c:7773
#, c-format
msgid "const `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11960
+#: cp/decl.c:7786
#, fuzzy
msgid "template-id `%D' used as a declarator"
msgstr "parameter `%s' heeft enkel een voorwaartse declaratie"
-#: cp/decl.c:11981
+#: cp/decl.c:7807
msgid "ISO C++ forbids nested type `%D' with same name as enclosing class"
msgstr ""
-#: cp/decl.c:12030
-msgid "typedef name may not be class-qualified"
+#: cp/decl.c:7815
+msgid "%Jtypedef name may not be a nested-name-specifier"
msgstr ""
-#: cp/decl.c:12038
-msgid "invalid type qualifier for non-member function type"
-msgstr ""
+#: cp/decl.c:7861
+#, fuzzy
+msgid "%Jinvalid type qualifier for non-member function type"
+msgstr "%s laat qualifiers van doeltype van pointer vallen"
-#: cp/decl.c:12101
+#: cp/decl.c:7925
#, fuzzy
msgid "type qualifiers specified for friend class declaration"
msgstr "twee types opgegeven in één lege declaratie"
-#: cp/decl.c:12106
+#: cp/decl.c:7930
#, fuzzy
msgid "`inline' specified for friend class declaration"
msgstr "POS mag niet opgegeven worden voor een lijst van veld-declaraties"
-#: cp/decl.c:12114
+#: cp/decl.c:7938
#, fuzzy
msgid "template parameters cannot be friends"
msgstr "niet-beëindigde parameterlijst in `#define'"
-#: cp/decl.c:12116
+#: cp/decl.c:7940
msgid "friend declaration requires class-key, i.e. `friend class %T::%D'"
msgstr ""
-#: cp/decl.c:12120
+#: cp/decl.c:7944
msgid "friend declaration requires class-key, i.e. `friend %#T'"
msgstr ""
-#: cp/decl.c:12134
+#: cp/decl.c:7957
msgid "trying to make class `%T' a friend of global scope"
msgstr ""
-#: cp/decl.c:12145
+#: cp/decl.c:7968
#, fuzzy
msgid "invalid qualifiers on non-member function type"
msgstr "%s laat qualifiers van doeltype van pointer vallen"
-#: cp/decl.c:12164
+#: cp/decl.c:7987
#, fuzzy
msgid "abstract declarator `%T' used as declaration"
msgstr "de declaratie van `%s' verbergt een globale declaratie"
-#: cp/decl.c:12176
+#: cp/decl.c:7999
msgid "unnamed variable or field declared void"
msgstr ""
-#: cp/decl.c:12185
+#: cp/decl.c:8008
msgid "variable or field declared void"
msgstr ""
-#: cp/decl.c:12195
+#: cp/decl.c:8018
msgid "cannot use `::' in parameter declaration"
msgstr ""
#. Something like struct S { int N::j; };
-#: cp/decl.c:12234
+#: cp/decl.c:8063
#, fuzzy
msgid "invalid use of `::'"
msgstr "ongeldig gebruik van `restrict'"
-#: cp/decl.c:12246
+#: cp/decl.c:8075
#, fuzzy
msgid "function `%D' cannot be declared friend"
msgstr "`%s' mag niet als alleen-lezen gedeclareerd worden"
-#: cp/decl.c:12258
+#: cp/decl.c:8087
msgid "can't make `%D' into a method -- not in a class"
msgstr ""
-#: cp/decl.c:12267
+#: cp/decl.c:8096
#, fuzzy
msgid "function `%D' declared virtual inside a union"
msgstr "veld `%s' als een functie gedeclareerd"
-#: cp/decl.c:12279
+#: cp/decl.c:8108
msgid "`%D' cannot be declared virtual, since it is always static"
msgstr ""
-#: cp/decl.c:12355
+#: cp/decl.c:8185
#, fuzzy
msgid "field `%D' has incomplete type"
msgstr "veld `%s' heeft een onvolledig type"
-#: cp/decl.c:12357
+#: cp/decl.c:8187
#, fuzzy
msgid "name `%T' has incomplete type"
msgstr "parameter `%s' heeft een onvolledig type"
-#: cp/decl.c:12366
+#: cp/decl.c:8196
msgid " in instantiation of template `%T'"
msgstr ""
-#: cp/decl.c:12376
+#: cp/decl.c:8206
#, c-format
msgid "`%s' is neither function nor member function; cannot be declared friend"
msgstr ""
-#: cp/decl.c:12387
+#: cp/decl.c:8217
msgid "member functions are implicitly friends of their class"
msgstr ""
@@ -15848,104 +15126,99 @@ msgstr ""
#. the rest of the compiler does not correctly
#. handle the initialization unless the member is
#. static so we make it static below.
-#: cp/decl.c:12434
+#: cp/decl.c:8258
#, fuzzy
msgid "ISO C++ forbids initialization of member `%D'"
msgstr "(dicht bij initialisatie van `%s')"
-#: cp/decl.c:12436
+#: cp/decl.c:8260
msgid "making `%D' static"
msgstr ""
-#: cp/decl.c:12460
+#: cp/decl.c:8283
msgid "ISO C++ forbids static data member `%D' with same name as enclosing class"
msgstr ""
-#: cp/decl.c:12501
+#: cp/decl.c:8323
#, c-format
msgid "storage class `auto' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:12503
+#: cp/decl.c:8325
#, c-format
msgid "storage class `register' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:12505
+#: cp/decl.c:8327
#, fuzzy, c-format
msgid "storage class `__thread' invalid for function `%s'"
msgstr "ongeldige opslagklasse voor functie `%s'"
-#: cp/decl.c:12516
+#: cp/decl.c:8338
#, c-format
msgid "storage class `static' invalid for function `%s' declared out of global scope"
msgstr ""
-#: cp/decl.c:12518
+#: cp/decl.c:8340
#, c-format
msgid "storage class `inline' invalid for function `%s' declared out of global scope"
msgstr ""
-#: cp/decl.c:12525
+#: cp/decl.c:8347
#, c-format
msgid "virtual non-class function `%s'"
msgstr ""
-#: cp/decl.c:12554
+#: cp/decl.c:8377
msgid "cannot declare member function `%D' to have static linkage"
msgstr ""
#. FIXME need arm citation
-#: cp/decl.c:12560
+#: cp/decl.c:8383
msgid "cannot declare static function inside another function"
msgstr ""
-#: cp/decl.c:12588
+#: cp/decl.c:8411
msgid "`static' may not be used when defining (as opposed to declaring) a static data member"
msgstr ""
-#: cp/decl.c:12594
+#: cp/decl.c:8417
#, fuzzy
msgid "static member `%D' declared `register'"
msgstr "variabele `%s' als inline gedeclareerd"
-#: cp/decl.c:12599
+#: cp/decl.c:8422
msgid "cannot explicitly declare member `%#D' to have extern linkage"
msgstr ""
-#: cp/decl.c:12774
+#: cp/decl.c:8564
#, fuzzy
msgid "default argument for `%#D' has type `%T'"
msgstr "eerste argument van `%s' zou een `int' moeten zijn"
-#: cp/decl.c:12777
+#: cp/decl.c:8567
msgid "default argument for parameter of type `%T' has type `%T'"
msgstr ""
-#: cp/decl.c:12794
+#: cp/decl.c:8584
msgid "default argument `%E' uses local variable `%D'"
msgstr ""
-#: cp/decl.c:12839
+#: cp/decl.c:8628
#, fuzzy, c-format
msgid "invalid string constant `%E'"
msgstr "slechte stringconstante"
-#: cp/decl.c:12841
+#: cp/decl.c:8630
msgid "invalid integer constant in parameter list, did you forget to give parameter name?"
msgstr ""
-#: cp/decl.c:12879
+#: cp/decl.c:8668
#, fuzzy
msgid "parameter `%D' invalidly declared method type"
msgstr "parameter `%s' als void gedeclareerd"
-#: cp/decl.c:12885
-#, fuzzy
-msgid "parameter `%D' invalidly declared offset type"
-msgstr "parameter `%s' als void gedeclareerd"
-
-#: cp/decl.c:12909
+#: cp/decl.c:8692
msgid "parameter `%D' includes %s to array of unknown bound `%T'"
msgstr ""
@@ -15964,553 +15237,377 @@ msgstr ""
#. or implicitly defined), there's no need to worry about their
#. existence. Theoretically, they should never even be
#. instantiated, but that's hard to forestall.
-#: cp/decl.c:13071
+#: cp/decl.c:8851
msgid "invalid constructor; you probably meant `%T (const %T&)'"
msgstr ""
-#: cp/decl.c:13222
+#: cp/decl.c:8991
#, fuzzy
msgid "`%D' must be a nonstatic member function"
msgstr "`this' is niet beschikbaar in static member-funties"
-#: cp/decl.c:13228
+#: cp/decl.c:8997
msgid "`%D' must be either a non-static member function or a non-member function"
msgstr ""
-#: cp/decl.c:13245
+#: cp/decl.c:9014
msgid "`%D' must have an argument of class or enumerated type"
msgstr ""
-#: cp/decl.c:13277
+#: cp/decl.c:9049
#, c-format
msgid "conversion to %s%s will never use a type conversion operator"
msgstr ""
#. 13.4.0.3
-#: cp/decl.c:13284
+#: cp/decl.c:9056
msgid "ISO C++ prohibits overloading operator ?:"
msgstr ""
-#: cp/decl.c:13334
+#: cp/decl.c:9106
msgid "postfix `%D' must take `int' as its argument"
msgstr ""
-#: cp/decl.c:13338
+#: cp/decl.c:9110
msgid "postfix `%D' must take `int' as its second argument"
msgstr ""
-#: cp/decl.c:13345
+#: cp/decl.c:9117
#, fuzzy
msgid "`%D' must take either zero or one argument"
msgstr "`%s' neemt ofwel geen, ofwel twee argumenten"
-#: cp/decl.c:13347
+#: cp/decl.c:9119
#, fuzzy
msgid "`%D' must take either one or two arguments"
msgstr "`%s' neemt ofwel geen, ofwel twee argumenten"
-#: cp/decl.c:13368
+#: cp/decl.c:9140
msgid "prefix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:13374
+#: cp/decl.c:9146
msgid "postfix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:13383
+#: cp/decl.c:9155
msgid "`%D' must take `void'"
msgstr ""
-#: cp/decl.c:13385 cp/decl.c:13393
+#: cp/decl.c:9157 cp/decl.c:9165
#, fuzzy
msgid "`%D' must take exactly one argument"
msgstr "`%s' neemt ofwel geen, ofwel twee argumenten"
-#: cp/decl.c:13395
+#: cp/decl.c:9167
#, fuzzy
msgid "`%D' must take exactly two arguments"
msgstr "`%s' neemt ofwel geen, ofwel twee argumenten"
-#: cp/decl.c:13403
+#: cp/decl.c:9175
msgid "user-defined `%D' always evaluates both arguments"
msgstr ""
-#: cp/decl.c:13417
+#: cp/decl.c:9189
msgid "`%D' should return by value"
msgstr ""
-#: cp/decl.c:13429 cp/decl.c:13432
+#: cp/decl.c:9201 cp/decl.c:9204
msgid "`%D' cannot have default arguments"
msgstr ""
-#: cp/decl.c:13475
+#: cp/decl.c:9264
msgid "using typedef-name `%D' after `%s'"
msgstr ""
-#: cp/decl.c:13481
+#: cp/decl.c:9270
#, fuzzy
msgid "using template type parameter `%T' after `%s'"
msgstr "incompatibel type voor argument %d van `%s'"
-#: cp/decl.c:13542
+#: cp/decl.c:9278
#, fuzzy
-msgid "`%s %T' declares a new type at namespace scope"
-msgstr "`%s %s' binnen parameterlijst gedeclareerd"
+msgid "`%T' referred to as `%s'"
+msgstr "`%s' tevoren hier gedeclareerd"
-#: cp/decl.c:13545
-msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
-msgstr ""
+#: cp/decl.c:9284
+#, fuzzy
+msgid "`%T' referred to as enum"
+msgstr "`%s' tevoren hier gedeclareerd"
+
+#. If a class template appears as elaborated type specifier
+#. without a template header such as:
+#.
+#. template <class T> class C {};
+#. void f(class C); // No template header here
+#.
+#. then the required template argument is missing.
+#: cp/decl.c:9299
+#, fuzzy
+msgid "template argument required for `%s %T'"
+msgstr "meerdere parameters hebben de naam `%s'"
-#: cp/decl.c:13663
+#: cp/decl.c:9445
#, fuzzy
msgid "use of enum `%#D' without previous declaration"
msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie"
-#: cp/decl.c:13749
+#: cp/decl.c:9530
msgid "derived union `%T' invalid"
msgstr ""
-#: cp/decl.c:13795
+#: cp/decl.c:9583
#, fuzzy
msgid "base type `%T' fails to be a struct or class type"
msgstr "`%s' is geen typedef of ingebouwd type"
-#: cp/decl.c:13805
-#, fuzzy
-msgid "base class `%T' has incomplete type"
-msgstr "veld `%s' heeft een onvolledig type"
-
-#: cp/decl.c:13813
+#: cp/decl.c:9591
msgid "recursive type `%T' undefined"
msgstr ""
-#: cp/decl.c:13815
+#: cp/decl.c:9593
#, fuzzy
msgid "duplicate base type `%T' invalid"
msgstr "herhaalde case-waarde"
-#: cp/decl.c:13926
+#: cp/decl.c:9671
+msgid "Java class '%T' cannot have multiple bases"
+msgstr ""
+
+#: cp/decl.c:9673
+msgid "Java class '%T' cannot have virtual bases"
+msgstr ""
+
+#: cp/decl.c:9713
#, fuzzy
msgid "multiple definition of `%#T'"
msgstr "herdefinitie van `%s'"
-#: cp/decl.c:13927
+#: cp/decl.c:9714
#, fuzzy
-msgid "previous definition here"
+msgid "%Jprevious definition here"
msgstr "eerdere definitie van `%s'"
-#: cp/decl.c:14030
+#. DR 377
+#.
+#. IF no integral type can represent all the enumerator values, the
+#. enumeration is ill-formed.
+#: cp/decl.c:9849
msgid "no integral type can represent all of the enumerator values for `%T'"
msgstr ""
-#: cp/decl.c:14106
+#: cp/decl.c:9939
#, fuzzy
msgid "enumerator value for `%D' not integer constant"
msgstr "enumeratiewaarde voor `%s' is geen integrale constante"
-#: cp/decl.c:14126
+#: cp/decl.c:9959
#, fuzzy
msgid "overflow in enumeration values at `%D'"
msgstr "overflow in enumeratiewaarden"
-#: cp/decl.c:14195
+#: cp/decl.c:10028
#, fuzzy
msgid "return type `%#T' is incomplete"
msgstr "type van teruggeefwaarde is onvolledig"
-#: cp/decl.c:14309
-#, fuzzy
-msgid "semicolon missing after declaration of `%#T'"
-msgstr "conflicterende declaraties van `%s'"
-
-#: cp/decl.c:14330
+#: cp/decl.c:10148
msgid "return type for `main' changed to `int'"
msgstr ""
-#: cp/decl.c:14361
+#: cp/decl.c:10178
#, fuzzy
msgid "`%D' implicitly declared before its definition"
msgstr "`%s' impliciet als functie gedeclareerd"
-#: cp/decl.c:14383 cp/typeck.c:6314
+#: cp/decl.c:10200 cp/typeck.c:6011
msgid "`operator=' should return a reference to `*this'"
msgstr ""
-#: cp/decl.c:14643
+#: cp/decl.c:10472
#, fuzzy
msgid "parameter `%D' declared void"
msgstr "parameter `%s' als void gedeclareerd"
-#: cp/decl.c:15130
+#: cp/decl.c:10938
+#, fuzzy
+msgid "invalid member function declaration"
+msgstr "herhaalde label-declaratie `%s'"
+
+#: cp/decl.c:10955
msgid "`%D' is already defined in class `%T'"
msgstr ""
-#: cp/decl.c:15348
+#: cp/decl.c:11168
#, fuzzy
msgid "static member function `%#D' declared with type qualifiers"
msgstr "geneste functie `%s' is als `extern' gedeclareerd"
-#: cp/decl2.c:153
+#: cp/decl2.c:143
#, fuzzy, c-format
msgid "duplicate type qualifiers in %s declaration"
msgstr "herhaalde label-declaratie `%s'"
-#: cp/decl2.c:192
-msgid "template `%#D' instantiated in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:198
-msgid "template `%#D' defined in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:365
+#: cp/decl2.c:316
msgid "name missing for member function"
msgstr ""
-#. Something has gone very wrong. Assume we are mistakenly reducing
-#. an expression instead of a declaration.
-#: cp/decl2.c:428
-msgid "parser may be lost: is there a '{' missing somewhere?"
-msgstr ""
-
-#: cp/decl2.c:459 cp/decl2.c:473
+#: cp/decl2.c:408 cp/decl2.c:422
msgid "ambiguous conversion for array subscript"
msgstr ""
-#: cp/decl2.c:467
+#: cp/decl2.c:416
msgid "invalid types `%T[%T]' for array subscript"
msgstr ""
-#: cp/decl2.c:515
+#: cp/decl2.c:464
msgid "type `%#T' argument given to `delete', expected pointer"
msgstr ""
-#: cp/decl2.c:523
+#: cp/decl2.c:472
msgid "anachronistic use of array size in vector delete"
msgstr ""
-#: cp/decl2.c:533
+#: cp/decl2.c:482
msgid "cannot delete a function. Only pointer-to-objects are valid arguments to `delete'"
msgstr ""
-#: cp/decl2.c:540
+#: cp/decl2.c:489
#, fuzzy
msgid "deleting `%T' is undefined"
msgstr "`%.*s' is niet gedefinieerd"
-#: cp/decl2.c:548
+#: cp/decl2.c:497
msgid "deleting array `%#D'"
msgstr ""
#. 14.5.2.2 [temp.mem]
#.
#. A local class shall not have member templates.
-#: cp/decl2.c:582
+#: cp/decl2.c:530
msgid "invalid declaration of member template `%#D' in local class"
msgstr ""
-#: cp/decl2.c:591
+#: cp/decl2.c:539
#, fuzzy
msgid "invalid use of `virtual' in template declaration of `%#D'"
msgstr "ongeldig gebruik van onvolledige typedef `%s'"
-#: cp/decl2.c:601 cp/pt.c:2745
+#: cp/decl2.c:549 cp/pt.c:2830
#, fuzzy
msgid "template declaration of `%#D'"
msgstr "herdeclaratie van `%s'"
-#: cp/decl2.c:651
+#: cp/decl2.c:598
msgid "Java method '%D' has non-Java return type `%T'"
msgstr ""
-#: cp/decl2.c:660
+#: cp/decl2.c:614
msgid "Java method '%D' has non-Java parameter type `%T'"
msgstr ""
-#: cp/decl2.c:746
+#: cp/decl2.c:705
msgid "prototype for `%#D' does not match any in class `%T'"
msgstr ""
-#: cp/decl2.c:828
+#: cp/decl2.c:784
#, fuzzy
msgid "local class `%#T' shall not have static data member `%#D'"
msgstr "`%s' is geen static veld"
-#: cp/decl2.c:836
+#: cp/decl2.c:792
msgid "initializer invalid for static member with constructor"
msgstr ""
-#: cp/decl2.c:839
+#: cp/decl2.c:795
msgid "(an out of class initialization is required)"
msgstr ""
-#: cp/decl2.c:898
-#, fuzzy
-msgid "invalid data member initialization"
-msgstr "ongeldige beginwaarde"
-
-#: cp/decl2.c:901
-msgid "(use `=' to initialize static data members)"
-msgstr ""
-
-#: cp/decl2.c:947
+#: cp/decl2.c:878
msgid "member `%D' conflicts with virtual function table field name"
msgstr ""
-#: cp/decl2.c:967
+#: cp/decl2.c:895
msgid "`%D' is already defined in `%T'"
msgstr ""
-#: cp/decl2.c:1014
+#: cp/decl2.c:942
msgid "field initializer is not constant"
msgstr ""
-#: cp/decl2.c:1038
+#: cp/decl2.c:970
msgid "`asm' specifiers are not permitted on non-static data members"
msgstr ""
-#: cp/decl2.c:1090
+#: cp/decl2.c:1020
msgid "cannot declare `%D' to be a bit-field type"
msgstr ""
-#: cp/decl2.c:1100
+#: cp/decl2.c:1030
#, fuzzy
msgid "cannot declare bit-field `%D' with function type"
msgstr "cast geeft functie-type op"
-#: cp/decl2.c:1107
+#: cp/decl2.c:1037
msgid "`%D' is already defined in the class %T"
msgstr ""
-#: cp/decl2.c:1114
+#: cp/decl2.c:1044
msgid "static member `%D' cannot be a bit-field"
msgstr ""
-#: cp/decl2.c:1201
+#: cp/decl2.c:1103
#, fuzzy
msgid "initializer specified for non-member function `%D'"
msgstr "argument-formaat opgegeven voor niet-functie `%s'"
-#: cp/decl2.c:1205
+#: cp/decl2.c:1107
#, fuzzy
msgid "invalid initializer for virtual method `%D'"
msgstr "ongeldige beginwaarde voor bit-string"
-#: cp/decl2.c:1319
+#: cp/decl2.c:1154
#, fuzzy
msgid "anonymous struct not inside named type"
msgstr "anonieme %s gedeclareerd binnen parameterlijst"
-#: cp/decl2.c:1415
+#: cp/decl2.c:1224
msgid "namespace-scope anonymous aggregates must be static"
msgstr ""
-#: cp/decl2.c:1428
-msgid "anonymous aggregate with no members"
-msgstr ""
+#: cp/decl2.c:1231
+#, fuzzy
+msgid "anonymous union with no members"
+msgstr "anonieme %s gedeclareerd binnen parameterlijst"
-#: cp/decl2.c:1497
+#: cp/decl2.c:1265
msgid "`operator new' must return type `%T'"
msgstr ""
-#: cp/decl2.c:1505
+#: cp/decl2.c:1273
msgid "`operator new' takes type `size_t' (`%T') as first parameter"
msgstr ""
-#: cp/decl2.c:1532
+#: cp/decl2.c:1299
msgid "`operator delete' must return type `%T'"
msgstr ""
-#: cp/decl2.c:1540
+#: cp/decl2.c:1307
msgid "`operator delete' takes type `%T' as first parameter"
msgstr ""
-#. Overflow occurred. That means there are at least 4 billion
-#. initialization functions.
-#: cp/decl2.c:2282
-msgid "too many initialization functions required"
-msgstr ""
-
-#: cp/decl2.c:3006
+#: cp/decl2.c:2814
#, fuzzy
msgid "inline function `%D' used but never defined"
msgstr "label `%s' gebruikt maar niet gedefinieerd"
-#: cp/decl2.c:3135
-msgid "use of old-style cast"
-msgstr ""
-
-#: cp/decl2.c:3860
-#, fuzzy
-msgid "use of `%D' is ambiguous"
-msgstr "grootte van `%s' is %u bytes"
-
-#: cp/decl2.c:3861
-msgid " first declared as `%#D' here"
-msgstr ""
-
-#: cp/decl2.c:3864
-msgid " also declared as `%#D' here"
-msgstr ""
-
-#: cp/decl2.c:3879
-msgid "`%D' denotes an ambiguous type"
-msgstr ""
-
-#: cp/decl2.c:3880
-msgid " first type here"
-msgstr ""
-
-#: cp/decl2.c:3881
-msgid " other type here"
-msgstr ""
-
-#: cp/decl2.c:3982
-#, fuzzy
-msgid "declaration of `%D' not in a namespace surrounding `%D'"
-msgstr "`%s' wordt gedeclareerd als een array van functies"
-
-#: cp/decl2.c:4016
-msgid "`%D' should have been declared inside `%D'"
-msgstr ""
-
-#: cp/decl2.c:4152
-#, fuzzy
-msgid "`%D' is not a function,"
-msgstr "`%s' is meestal een functie"
-
-#: cp/decl2.c:4153
-#, fuzzy
-msgid " conflict with `%D'"
-msgstr "conflicterende types voor `%s'"
-
-#. The parser did not find it, so it's not there.
-#: cp/decl2.c:4473
-#, fuzzy
-msgid "unknown namespace `%D'"
-msgstr "onbekende machine-modus `%s'"
-
-#: cp/decl2.c:4507 cp/decl2.c:4794
-#, fuzzy
-msgid "`%T' is not a namespace"
-msgstr "`%s' is geen iterator"
-
-#: cp/decl2.c:4509
-#, fuzzy
-msgid "`%D' is not a namespace"
-msgstr "`%s' is geen iterator"
-
-#: cp/decl2.c:4518
-msgid "a using-declaration cannot specify a template-id. Try `using %D'"
-msgstr ""
-
-#: cp/decl2.c:4532
-#, fuzzy
-msgid "namespace `%D' not allowed in using-declaration"
-msgstr "`%s' staat niet aan het begin van een declaratie"
-
-#: cp/decl2.c:4561
-#, fuzzy
-msgid "`%D' not declared"
-msgstr "`%.*s' is niet gedefinieerd"
-
-#. If the OLD_FN was really declared, the
-#. declarations don't match.
-#: cp/decl2.c:4573 cp/decl2.c:4615 cp/decl2.c:4640
-msgid "`%D' is already declared in this scope"
-msgstr ""
-
-#: cp/decl2.c:4646
-msgid "using declaration `%D' introduced ambiguous type `%T'"
-msgstr ""
-
-#: cp/decl2.c:4740
-msgid "using-declaration for non-member at class scope"
-msgstr ""
-
-#: cp/decl2.c:4746
-msgid "using-declaration for destructor"
-msgstr ""
-
-#: cp/decl2.c:4752
-msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
-msgstr ""
-
-#: cp/decl2.c:4788
-#, fuzzy
-msgid "namespace `%T' undeclared"
-msgstr "`%s' tevoren hier gedeclareerd"
-
-#: cp/decl2.c:4817
+#: cp/decl2.c:2960
#, fuzzy
msgid "default argument missing for parameter %P of `%+#D'"
msgstr "parameternaam ontbreekt uit parameterlijst"
-#: cp/decl2.c:4941
-msgid "extra qualification `%T::' on member `%D' ignored"
-msgstr ""
-
-#: cp/decl2.c:4945
-msgid "`%T' does not have a class or union named `%D'"
-msgstr ""
-
-#: cp/decl2.c:4963
-#, fuzzy
-msgid "`%T' is not a class or union type"
-msgstr "`%s' is smaller dan waarden van zijn type"
-
-#: cp/decl2.c:4977
-#, fuzzy
-msgid "template argument is required for `%T'"
-msgstr "meerdere parameters hebben de naam `%s'"
-
-#: cp/decl2.c:4995
-#, fuzzy
-msgid "declaration of `%D' in `%D' which does not enclose `%D'"
-msgstr "`%s' wordt gedeclareerd als een array van functies"
-
-#: cp/error.c:35
-#, fuzzy, c-format
-msgid "`%s' not supported by %s"
-msgstr "-pipe wordt niet ondersteund"
-
-#: cp/error.c:571
-#, c-format
-msgid "<anonymous %s>"
-msgstr ""
-
-#: cp/error.c:810
-#, c-format
-msgid "(static %s for %s)"
-msgstr ""
-
-#: cp/error.c:1503
-#, c-format
-msgid "\\x%x"
-msgstr ""
-
-#: cp/error.c:2473
-#, fuzzy, c-format
-msgid "In %s `%s':"
-msgstr "%s voor `%s'"
-
-#: cp/error.c:2530
-#, fuzzy, c-format
-msgid "%s: In instantiation of `%s':\n"
-msgstr "(dicht bij initialisatie van `%s')"
-
-#: cp/error.c:2554
-#, c-format
-msgid "%s:%d: instantiated from `%s'\n"
-msgstr ""
-
-#: cp/error.c:2559
-#, c-format
-msgid "%s:%d: instantiated from here\n"
-msgstr ""
-
#. damn ICE suppression
-#: cp/error.c:2713
+#: cp/error.c:2374
#, c-format
msgid "unexpected letter `%c' in locate_error\n"
msgstr ""
@@ -16529,45 +15626,44 @@ msgstr ""
msgid "type `%T' is not derived from `java::lang::Throwable'"
msgstr ""
-#: cp/except.c:322
+#: cp/except.c:321
msgid "mixing C++ and Java catches in a single translation unit"
msgstr ""
-#: cp/except.c:639
+#: cp/except.c:630
msgid "throwing NULL, which has integral, not pointer type"
msgstr ""
-#: cp/except.c:730
+#: cp/except.c:653 cp/init.c:2029
+msgid "`%D' should never be overloaded"
+msgstr ""
+
+#: cp/except.c:722
msgid " in thrown expression"
msgstr ""
-#: cp/except.c:856
+#: cp/except.c:843
msgid "expression '%E' of abstract class type '%T' cannot be used in throw-expression"
msgstr ""
-#: cp/except.c:944
+#: cp/except.c:925
msgid "exception of type `%T' will be caught"
msgstr ""
-#: cp/except.c:947
+#: cp/except.c:928
msgid " by earlier handler for `%T'"
msgstr ""
-#: cp/except.c:968
+#: cp/except.c:949
msgid "`...' handler must be the last handler for its try block"
msgstr ""
-#: cp/friend.c:159
+#: cp/friend.c:151
#, fuzzy
msgid "`%D' is already a friend of class `%T'"
msgstr "kan klasse '%s' niet vinden"
-#: cp/friend.c:161
-#, fuzzy
-msgid "previous friend declaration of `%D'"
-msgstr "eerdere declaratie van `%s'"
-
-#: cp/friend.c:206
+#: cp/friend.c:202
#, fuzzy
msgid "invalid type `%T' declared `friend'"
msgstr "variabele `%s' als inline gedeclareerd"
@@ -16575,127 +15671,148 @@ msgstr "variabele `%s' als inline gedeclareerd"
#. [temp.friend]
#. Friend declarations shall not declare partial
#. specializations.
-#: cp/friend.c:222
+#: cp/friend.c:218
#, fuzzy
msgid "partial specialization `%T' declared `friend'"
msgstr "variabele `%s' als inline gedeclareerd"
-#: cp/friend.c:231
+#: cp/friend.c:228
msgid "class `%T' is implicitly friends with itself"
msgstr ""
#. template <class T> friend typename S<T>::X;
-#: cp/friend.c:249
+#: cp/friend.c:246
#, fuzzy
msgid "typename type `%#T' declared `friend'"
msgstr "parameter `%s' als void gedeclareerd"
#. template <class T> friend class T;
-#: cp/friend.c:255
+#: cp/friend.c:252
#, fuzzy
msgid "template parameter type `%T' declared `friend'"
msgstr "parameter `%s' als void gedeclareerd"
#. template <class T> friend class A; where A is not a template
-#: cp/friend.c:261
+#: cp/friend.c:258
#, fuzzy
msgid "`%#T' is not a template"
msgstr "`%s' is geen iterator"
-#: cp/friend.c:276
+#: cp/friend.c:277
+#, fuzzy
+msgid "`%D' is already a friend of `%T'"
+msgstr "kan klasse '%s' niet vinden"
+
+#: cp/friend.c:287
msgid "`%T' is already a friend of `%T'"
msgstr ""
-#: cp/friend.c:376
+#: cp/friend.c:413
msgid "member `%D' declared as friend before type `%T' defined"
msgstr ""
-#: cp/friend.c:431
+#: cp/friend.c:470
#, fuzzy
msgid "friend declaration `%#D' declares a non-template function"
msgstr "ingebouwde functie `%s' als niet-functie gedeclareerd"
-#: cp/friend.c:434
+#: cp/friend.c:473
msgid "(if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) -Wno-non-template-friend disables this warning"
msgstr ""
-#: cp/g++spec.c:211 java/jvspec.c:423
+#: cp/g++spec.c:229 java/jvspec.c:415
#, fuzzy, c-format
msgid "argument to `%s' missing\n"
msgstr "argument van `%s' moet van een integraal type zijn."
-#: cp/init.c:334
+#: cp/init.c:318
msgid "`%D' should be initialized in the member initialization list"
msgstr ""
-#: cp/init.c:384
+#: cp/init.c:368
msgid "default-initialization of `%#D', which has reference type"
msgstr ""
-#: cp/init.c:389
+#: cp/init.c:373
#, fuzzy
msgid "uninitialized reference member `%D'"
msgstr "ongeldige beginwaarde voor member `%s'"
-#: cp/init.c:397
-msgid "initializer list treated as compound expression"
-msgstr ""
-
-#: cp/init.c:538
+#: cp/init.c:511
#, fuzzy
msgid "`%D' will be initialized after"
msgstr "parameter `%s' krijgt beginwaarde"
-#: cp/init.c:541
+#: cp/init.c:514
#, fuzzy
msgid "base `%T' will be initialized after"
msgstr "veld `%s' heeft al een beginwaarde gekregen"
-#: cp/init.c:544
+#: cp/init.c:517
#, fuzzy
msgid " `%#D'"
msgstr "%s voor `%s'"
-#: cp/init.c:546
+#: cp/init.c:519
#, fuzzy
msgid " base `%T'"
msgstr "%s voor `%s'"
-#: cp/init.c:564
+#: cp/init.c:520
+#, fuzzy
+msgid " when initialized here"
+msgstr "parameter `%s' krijgt beginwaarde"
+
+#: cp/init.c:536
+#, fuzzy
+msgid "multiple initializations given for `%D'"
+msgstr "(dicht bij initialisatie van `%s')"
+
+#: cp/init.c:538
#, fuzzy
msgid "multiple initializations given for base `%T'"
msgstr "(dicht bij initialisatie van `%s')"
-#: cp/init.c:631
+#: cp/init.c:605
#, fuzzy
msgid "initializations for multiple members of `%T'"
msgstr "beginwaarde legt grootte van `%s' niet vast"
-#: cp/init.c:688
+#: cp/init.c:662
msgid "base class `%#T' should be explicitly initialized in the copy constructor"
msgstr ""
-#: cp/init.c:926
+#: cp/init.c:892 cp/init.c:911
msgid "class `%T' does not have any field named `%D'"
msgstr ""
-#: cp/init.c:932
-msgid "field `%#D' is static; the only point of initialization is its definition"
-msgstr ""
+#: cp/init.c:898
+#, fuzzy
+msgid "`%#D' is a static data member; it can only be initialized at its definition"
+msgstr "het `%s' attribuut heeft enkel betekenis voor functies"
+
+#: cp/init.c:905
+#, fuzzy
+msgid "`%#D' is not a non-static data member of `%T'"
+msgstr "`%s' is geen static veld"
-#: cp/init.c:965
+#: cp/init.c:944
msgid "unnamed initializer for `%T', which has no base classes"
msgstr ""
-#: cp/init.c:972
+#: cp/init.c:951
msgid "unnamed initializer for `%T', which uses multiple inheritance"
msgstr ""
-#: cp/init.c:1007
+#: cp/init.c:1006
+msgid "'%D' is both a direct base and an indirect virtual base"
+msgstr ""
+
+#: cp/init.c:1014
msgid "type `%D' is not a direct or virtual base of `%T'"
msgstr ""
-#: cp/init.c:1010
+#: cp/init.c:1017
msgid "type `%D' is not a direct base of `%T'"
msgstr ""
@@ -16711,571 +15828,901 @@ msgstr ""
#. COMPLEX zees(1.0, 0.0)[10];
#. }
#.
-#: cp/init.c:1104
+#: cp/init.c:1109
msgid "bad array initializer"
msgstr ""
-#: cp/init.c:1311
+#: cp/init.c:1303
#, fuzzy
msgid "`%T' is not an aggregate type"
msgstr "`%s' is geen iterator"
-#: cp/init.c:1334
+#: cp/init.c:1324
#, fuzzy
msgid "`%T' fails to be an aggregate typedef"
msgstr "`%s' is geen typedef of ingebouwd type"
-#: cp/init.c:1343
+#: cp/init.c:1333
msgid "type `%T' is of non-aggregate type"
msgstr ""
-#: cp/init.c:1446
-msgid "cannot call destructor `%T::~%T' without object"
-msgstr ""
-
-#: cp/init.c:1490
-#, fuzzy
-msgid "invalid use of non-static field `%D'"
-msgstr "ongeldig gebruik van onvolledige typedef `%s'"
-
-#. We can get here when processing a bad default
-#. argument, like:
-#. struct S { int a; void f(int i = a); }
-#: cp/init.c:1499 cp/method.c:160
-#, fuzzy
-msgid "invalid use of member `%D'"
-msgstr "ongeldige beginwaarde voor member `%s'"
-
-#: cp/init.c:1509
-msgid "no method `%T::%D'"
+#: cp/init.c:1425 cp/typeck.c:1798
+msgid "qualified type `%T' does not match destructor name `~%T'"
msgstr ""
-#: cp/init.c:1602
+#: cp/init.c:1433
msgid "incomplete type `%T' does not have member `%D'"
msgstr ""
-#: cp/init.c:1676
+#: cp/init.c:1452
#, fuzzy
msgid "`%D' is not a member of type `%T'"
msgstr "`%s' is geen bestand, pipe of tty"
-#: cp/init.c:1695
+#: cp/init.c:1471
#, fuzzy
msgid "invalid pointer to bit-field `%D'"
msgstr "bitveld `%s' heeft een negatieve breedte"
-#: cp/init.c:1734
-msgid "object missing in use of pointer-to-member construct"
-msgstr ""
-
-#: cp/init.c:1774
-msgid "member `%D' is non-static but referenced as a static member"
-msgstr ""
-
-#: cp/init.c:1776 cp/typeck.c:2826 cp/typeck.c:2930
-msgid "at this point in file"
-msgstr ""
+#: cp/init.c:1573
+#, fuzzy
+msgid "invalid use of non-static member function `%D'"
+msgstr "ongeldig gebruik van onvolledige typedef `%s'"
-#: cp/init.c:1813
-#, fuzzy, c-format
-msgid "object missing in `%E'"
-msgstr "array-grootte ontbreekt in `%s'"
+#: cp/init.c:1579 cp/semantics.c:1236
+#, fuzzy
+msgid "invalid use of non-static data member `%D'"
+msgstr "ongeldig gebruik van onvolledige typedef `%s'"
-#: cp/init.c:1944
+#: cp/init.c:1718
msgid "new of array type fails to specify size"
msgstr ""
-#: cp/init.c:1955
+#: cp/init.c:1729
msgid "size in array new must have integral type"
msgstr ""
-#: cp/init.c:1961
+#: cp/init.c:1735
msgid "zero size array reserves no space"
msgstr ""
-#: cp/init.c:2026
+#: cp/init.c:1801
msgid "new cannot be applied to a reference type"
msgstr ""
-#: cp/init.c:2032
+#: cp/init.c:1807
msgid "new cannot be applied to a function type"
msgstr ""
-#: cp/init.c:2079
+#: cp/init.c:1853
msgid "call to Java constructor, while `jclass' undefined"
msgstr ""
-#: cp/init.c:2095
+#: cp/init.c:1869
#, fuzzy
msgid "can't find class$"
msgstr "kan %s niet vinden"
-#: cp/init.c:2209
+#: cp/init.c:1995
msgid "invalid type `void' for new"
msgstr ""
-#: cp/init.c:2261
+#: cp/init.c:2005
+#, fuzzy
+msgid "uninitialized const in `new' of `%#T'"
+msgstr "beginwaarde legt grootte van `%s' niet vast"
+
+#: cp/init.c:2024
#, c-format
msgid "call to Java constructor with `%s' undefined"
msgstr ""
-#: cp/init.c:2369
+#: cp/init.c:2065
+#, fuzzy
+msgid "request for member `%D' is ambiguous"
+msgstr "grootte van `%s' is %u bytes"
+
+#: cp/init.c:2189
#, fuzzy
msgid "ISO C++ forbids initialization in array new"
msgstr "ANSI C verbiedt lege initialisatie-accolades"
-#: cp/init.c:2391 cp/typeck2.c:367 cp/typeck2.c:1208
-msgid "initializer list being treated as compound expression"
-msgstr ""
-
-#: cp/init.c:2397
+#: cp/init.c:2213
#, fuzzy
msgid "ISO C++ forbids aggregate initializer to new"
msgstr "ANSI C verbiedt lege initialisatie-accolades"
-#: cp/init.c:2485
-#, fuzzy
-msgid "uninitialized const in `new' of `%#T'"
-msgstr "beginwaarde legt grootte van `%s' niet vast"
-
-#: cp/init.c:2864
+#: cp/init.c:2658
msgid "initializer ends prematurely"
msgstr ""
-#: cp/init.c:2934
+#: cp/init.c:2715
msgid "cannot initialize multi-dimensional array with initializer"
msgstr ""
-#: cp/init.c:3124
-msgid "unknown array size in delete"
-msgstr ""
-
-#: cp/init.c:3389
-msgid "type to vector delete is neither pointer or array type"
-msgstr ""
-
-#: cp/lex.c:136
-msgid "type name expected before `*'"
+#: cp/init.c:2876
+msgid "possible problem detected in invocation of delete operator:"
msgstr ""
-#: cp/lex.c:158
-msgid "cannot declare references to references"
+#: cp/init.c:2879
+msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined."
msgstr ""
-#: cp/lex.c:163
-msgid "cannot declare pointers to references"
+#: cp/init.c:2900
+msgid "unknown array size in delete"
msgstr ""
-#: cp/lex.c:167
-msgid "type name expected before `&'"
+#: cp/init.c:3165
+msgid "type to vector delete is neither pointer or array type"
msgstr ""
-#: cp/lex.c:894
-#, c-format
-msgid "semicolon missing after %s declaration"
+#: cp/lex.c:99
+msgid "type name expected before `*'"
msgstr ""
-#: cp/lex.c:897
-#, fuzzy
-msgid "semicolon missing after declaration of `%T'"
-msgstr "conflicterende declaraties van `%s'"
-
# Moet 'signature-string' vertaald worden?
-#: cp/lex.c:945
+#: cp/lex.c:501
#, fuzzy, c-format
msgid "junk at end of #pragma %s"
msgstr "Brol aan einde van signature-string."
-#: cp/lex.c:952
+#: cp/lex.c:508
#, fuzzy, c-format
msgid "invalid #pragma %s"
msgstr "ongeldige operand van %s"
-#: cp/lex.c:961
+#: cp/lex.c:516
msgid "#pragma vtable no longer supported"
msgstr ""
-#: cp/lex.c:1038
+#: cp/lex.c:590
#, fuzzy, c-format
msgid "#pragma implementation for %s appears after file is included"
msgstr "`#pragma implementation' voor \"%s\" staat na diens #include"
-#: cp/lex.c:1063
+#: cp/lex.c:614
msgid "junk at end of #pragma GCC java_exceptions"
msgstr ""
-#: cp/lex.c:1107
+#: cp/lex.c:628
#, fuzzy
msgid "`%D' not defined"
msgstr "`%.*s' is niet gedefinieerd"
-#: cp/lex.c:1110
+#: cp/lex.c:631
#, fuzzy
msgid "`%D' was not declared in this scope"
msgstr "`%.*s' is niet gedefinieerd"
-#: cp/lex.c:1118
+#: cp/lex.c:639
#, fuzzy
msgid "`%D' undeclared (first use this function)"
msgstr "`%s' is hier niet gedeclareerd (eerste gebruik in deze functie)"
-#: cp/lex.c:1122
+#: cp/lex.c:643
#, fuzzy
msgid "(Each undeclared identifier is reported only once for each function it appears in.)"
msgstr "(Elke niet-gedeclareerde naam wordt slechts één"
-#: cp/lex.c:1242
-#, fuzzy
-msgid "`::%D' undeclared (first use here)"
-msgstr "`%s' is hier niet gedeclareerd (eerste gebruik in deze functie)"
+#. In a template, it is invalid to write "f()" or "f(3)" if no
+#. declaration of "f" is available. Historically, G++ and most
+#. other compilers accepted that usage since they deferred all name
+#. lookup until instantiation time rather than doing unqualified
+#. name lookup at template definition time; explain to the user what
+#. is going wrong.
+#.
+#. Note that we have the exact wording of the following message in
+#. the manual (trouble.texi, node "Name lookup"), so they need to
+#. be kept in synch.
+#: cp/lex.c:674
+msgid "there are no arguments to `%D' that depend on a template parameter, so a declaration of `%D' must be available"
+msgstr ""
-#: cp/mangle.c:2051
+#: cp/lex.c:683
+msgid "(if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)"
+msgstr ""
+
+#: cp/mangle.c:2036
msgid "call_expr cannot be mangled due to a defect in the C++ ABI"
msgstr ""
-#: cp/mangle.c:2363
+#: cp/mangle.c:2089
+msgid "omitted middle operand to `?:' operand cannot be mangled"
+msgstr ""
+
+#: cp/mangle.c:2388
msgid "the mangled name of `%D' will change in a future version of GCC"
msgstr ""
-#: cp/method.c:154
+#: cp/method.c:456
+msgid "generic thunk code fails for method `%#D' which uses `...'"
+msgstr ""
+
+#: cp/method.c:681
+msgid "non-static const member `%#D', can't use default assignment operator"
+msgstr ""
+
+#: cp/method.c:686
+msgid "non-static reference member `%#D', can't use default assignment operator"
+msgstr ""
+
+#: cp/name-lookup.c:649
#, fuzzy
-msgid "invalid use of member `%D' in static member function"
-msgstr "`this' is niet beschikbaar in static member-funties"
+msgid "`%#D' used prior to declaration"
+msgstr "`%s' gebruikt vóór declaratie"
-#: cp/method.c:216
+#: cp/name-lookup.c:680
#, fuzzy
-msgid "use of namespace `%D' as expression"
-msgstr "modi in %s expressie komen niet overeen"
+msgid "redeclaration of `wchar_t' as `%T'"
+msgstr "herdeclaratie van `%s'"
-#: cp/method.c:221
-msgid "use of class template `%T' as expression"
+#. A redeclaration of main, but not a duplicate of the
+#. previous one.
+#.
+#. [basic.start.main]
+#.
+#. This function shall not be overloaded.
+#: cp/name-lookup.c:712
+#, fuzzy
+msgid "invalid redeclaration of `%D'"
+msgstr "herdeclaratie van `%s'"
+
+#: cp/name-lookup.c:713
+#, fuzzy
+msgid "as `%D'"
+msgstr "%s voor `%s'"
+
+#: cp/name-lookup.c:801
+#, fuzzy
+msgid "type mismatch with previous external decl of `%#D'"
+msgstr "type-conflict met eerdere externe declaratie"
+
+#: cp/name-lookup.c:802
+#, fuzzy
+msgid "previous external decl of `%#D'"
+msgstr "eerdere externe declaratie van `%s'"
+
+#: cp/name-lookup.c:844
+#, fuzzy
+msgid "`%D' was previously implicitly declared to return `int'"
+msgstr "`%s' was tevoren impliciet gedeclareerd om een `int' terug te geven"
+
+#: cp/name-lookup.c:902
+#, fuzzy
+msgid "extern declaration of `%#D' doesn't match"
+msgstr "externe declaratie van `%s' komt niet overeen met de globale declaratie"
+
+#: cp/name-lookup.c:903
+#, fuzzy
+msgid "global declaration `%#D'"
+msgstr "herhaalde label-declaratie `%s'"
+
+#: cp/name-lookup.c:939
+#, fuzzy
+msgid "declaration of `%#D' shadows a parameter"
+msgstr "de declaratie van `%s' verbergt een parameter"
+
+#: cp/name-lookup.c:960
+#, fuzzy, c-format
+msgid "declaration of `%s' shadows a member of `this'"
+msgstr "de declaratie van `%s' verbergt een parameter"
+
+#: cp/name-lookup.c:1136
+msgid "name lookup of `%D' changed"
+msgstr ""
+
+#: cp/name-lookup.c:1138
+msgid " matches this `%D' under ISO standard rules"
msgstr ""
-#: cp/method.c:234
+#: cp/name-lookup.c:1140
+msgid " matches this `%D' under old rules"
+msgstr ""
+
+#: cp/name-lookup.c:1154 cp/name-lookup.c:1161
+msgid "name lookup of `%D' changed for new ISO `for' scoping"
+msgstr ""
+
+#: cp/name-lookup.c:1156
+msgid " cannot use obsolete binding at `%D' because it has a destructor"
+msgstr ""
+
+#: cp/name-lookup.c:1163
+msgid " using obsolete binding at `%D'"
+msgstr ""
+
+#: cp/name-lookup.c:1216
#, c-format
-msgid "use of %s from containing function"
+msgid "%s %s(%E) %p %d\n"
+msgstr ""
+
+#: cp/name-lookup.c:1219
+#, c-format
+msgid "%s %s %p %d\n"
+msgstr ""
+
+#: cp/name-lookup.c:1338
+msgid "XXX is_class_level != (current_scope == class_scope)\n"
msgstr ""
-#: cp/method.c:237
+#: cp/name-lookup.c:1975
+msgid "`%#D' hides constructor for `%#T'"
+msgstr ""
+
+#: cp/name-lookup.c:1990
#, fuzzy
-msgid " `%#D' declared here"
-msgstr "`%s' tevoren hier gedeclareerd"
+msgid "`%#D' conflicts with previous using declaration `%#D'"
+msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie"
-#: cp/method.c:255
-msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
+#: cp/name-lookup.c:2002
+#, fuzzy
+msgid "previous non-function declaration `%#D'"
+msgstr "eerdere declaratie van `%s'"
+
+#: cp/name-lookup.c:2003
+#, fuzzy
+msgid "conflicts with function declaration `%#D'"
+msgstr "conflicterende declaraties van `%s'"
+
+#. 7.3.3/5
+#. A using-declaration shall not name a template-id.
+#: cp/name-lookup.c:2080
+msgid "a using-declaration cannot specify a template-id. Try `using %D'"
msgstr ""
-#: cp/method.c:458
-msgid "generic thunk code fails for method `%#D' which uses `...'"
+#: cp/name-lookup.c:2086
+#, fuzzy
+msgid "namespace `%D' not allowed in using-declaration"
+msgstr "`%s' staat niet aan het begin van een declaratie"
+
+#. It's a nested name with template parameter dependent scope.
+#. This can only be using-declaration for class member.
+#: cp/name-lookup.c:2094 cp/name-lookup.c:2108 cp/name-lookup.c:3283
+#, fuzzy
+msgid "`%T' is not a namespace"
+msgstr "`%s' is geen iterator"
+
+#: cp/name-lookup.c:2132
+#, fuzzy
+msgid "`%D' not declared"
+msgstr "`%.*s' is niet gedefinieerd"
+
+#. If the OLD_FN was really declared, the
+#. declarations don't match.
+#: cp/name-lookup.c:2144 cp/name-lookup.c:2186 cp/name-lookup.c:2211
+msgid "`%D' is already declared in this scope"
msgstr ""
-#: cp/method.c:697
-msgid "non-static const member `%#D', can't use default assignment operator"
+#: cp/name-lookup.c:2217
+msgid "using declaration `%D' introduced ambiguous type `%T'"
msgstr ""
-#: cp/method.c:702
-msgid "non-static reference member `%#D', can't use default assignment operator"
+#. Definition isn't the kind we were looking for.
+#: cp/name-lookup.c:2376 cp/name-lookup.c:2395
+#, fuzzy
+msgid "`%#D' redeclared as %C"
+msgstr "`%s' tevoren hier gedeclareerd"
+
+#: cp/name-lookup.c:2805
+msgid "using-declaration for non-member at class scope"
msgstr ""
-#: parse.y:262
+#: cp/name-lookup.c:2812
+msgid "using-declaration cannot name destructor"
+msgstr ""
+
+#: cp/name-lookup.c:2908
#, fuzzy
-msgid "`%s' tag used in naming `%#T'"
-msgstr "Ongeldige optie `%s'"
+msgid "declaration of `%D' not in a namespace surrounding `%D'"
+msgstr "`%s' wordt gedeclareerd als een array van functies"
-#: parse.y:542
-msgid "keyword `export' not implemented, and will be ignored"
+#: cp/name-lookup.c:2948
+msgid "`%D' should have been declared inside `%D'"
msgstr ""
-#: parse.y:646
-msgid "use of linkage spec `%D' is different from previous spec `%D'"
+#: cp/name-lookup.c:3012
+msgid "namespace alias `%D' not allowed here, assuming `%D'"
msgstr ""
-#: parse.y:943
-msgid "no base or member initializers given following ':'"
+#. The parser did not find it, so it's not there.
+#: cp/name-lookup.c:3127
+#, fuzzy
+msgid "unknown namespace `%D'"
+msgstr "onbekende machine-modus `%s'"
+
+#: cp/name-lookup.c:3277
+#, fuzzy
+msgid "namespace `%T' undeclared"
+msgstr "`%s' tevoren hier gedeclareerd"
+
+#: cp/name-lookup.c:3310
+msgid "strong using only meaningful at namespace scope"
msgstr ""
-#: parse.y:984
-msgid "anachronistic old style base class initializer"
+#: cp/name-lookup.c:3317
+#, fuzzy
+msgid "`%D' attribute directive ignored"
+msgstr "attribuut-commando `%s' wordt genegeerd"
+
+#: cp/name-lookup.c:3450
+#, fuzzy
+msgid "use of `%D' is ambiguous"
+msgstr "grootte van `%s' is %u bytes"
+
+#: cp/name-lookup.c:3451
+msgid " first declared as `%#D' here"
msgstr ""
-#. Handle `Class<Class<Type>>' without space in the `>>'
-#: parse.y:1117
-msgid "`>>' should be `> >' in template class name"
+#: cp/name-lookup.c:3454
+msgid " also declared as `%#D' here"
msgstr ""
-#: parse.y:1164
-msgid "use of template qualifier outside template"
+#: cp/name-lookup.c:3469
+msgid "`%D' denotes an ambiguous type"
msgstr ""
-#: parse.y:1193 parse.y:1202
-#, fuzzy, c-format
-msgid "ISO C++ forbids an empty condition for `%s'"
-msgstr "ANSI C verbiedt een leeg bronbestand"
+#: cp/name-lookup.c:3470
+#, fuzzy
+msgid "%J first type here"
+msgstr "van hieruit opgeroepen"
+
+#: cp/name-lookup.c:3471
+msgid "%J other type here"
+msgstr ""
-#: parse.y:1225
+#. This happens for A::B where B is a template, and there are no
+#. template arguments.
+#: cp/name-lookup.c:3536 cp/typeck.c:1773
#, fuzzy
-msgid "definition of class `%T' in condition"
-msgstr "herdefinitie van `union %s'"
+msgid "invalid use of `%D'"
+msgstr "ongeldig gebruik van `restrict'"
-#: parse.y:1227
+#: cp/name-lookup.c:3577
#, fuzzy
-msgid "definition of enum `%T' in condition"
-msgstr "herdefinitie van `union %s'"
+msgid "`%D::%D' is not a template"
+msgstr "`%s' is geen iterator"
-#: parse.y:1238
+#: cp/name-lookup.c:3594
#, fuzzy
-msgid "definition of array `%#D' in condition"
-msgstr "herdefinitie van `union %s'"
+msgid "`%D' undeclared in namespace `%D'"
+msgstr "ongeldige naam `%s'"
-#: parse.y:1351
-msgid "old style placement syntax, use () instead"
-msgstr ""
+#: cp/name-lookup.c:4055
+#, fuzzy
+msgid "`%D' is not a function,"
+msgstr "`%s' is meestal een functie"
-#: parse.y:1362
+#: cp/name-lookup.c:4056
#, fuzzy
-msgid "`%T' is not a valid expression"
-msgstr "ongeldig gebruik van een void-expressie"
+msgid " conflict with `%D'"
+msgstr "conflicterende types voor `%s'"
+
+#: cp/name-lookup.c:4794
+msgid "XXX entering pop_everything ()\n"
+msgstr ""
-#. This was previously allowed as an extension, but
-#. was removed in G++ 3.3.
-#: parse.y:1369
+#: cp/name-lookup.c:4803
+msgid "XXX leaving pop_everything ()\n"
+msgstr ""
+
+#: cp/parser.c:609
#, fuzzy
-msgid "initialization of new expression with `='"
-msgstr "Ongeldig token in expressie"
+msgid "invalid token"
+msgstr "ongeldige #ident"
-#: parse.y:1395
+#: cp/parser.c:1806
#, fuzzy
-msgid "ISO C++ forbids compound literals"
-msgstr "ANSI C verbiedt het gebruik van samengestelde expressies als lvalues"
+msgid "`%D::%D' has not been declared"
+msgstr "`%.*s' is niet gedefinieerd"
-#: parse.y:1642
+#: cp/parser.c:1809 cp/semantics.c:2284
#, fuzzy
-msgid "ISO C++ forbids braced-groups within expressions"
-msgstr "ANSI C verbiedt accolade-groepen in expressies"
+msgid "`::%D' has not been declared"
+msgstr "`%.*s' is niet gedefinieerd"
-#: parse.y:1721
+#: cp/parser.c:1811
#, fuzzy
-msgid "invalid use of template `%D'"
-msgstr "ongeldige beginwaarde voor member `%s'"
+msgid "`%D' has not been declared"
+msgstr "`%.*s' is niet gedefinieerd"
-#: parse.y:2053 parse.y:2068
-msgid "sigof type specifier"
+#: cp/parser.c:1814
+msgid "`%D::%D' %s"
msgstr ""
-#: parse.y:2058
-msgid "`sigof' applied to non-aggregate expression"
+#: cp/parser.c:1816
+msgid "`::%D' %s"
msgstr ""
-#: parse.y:2073
-msgid "`sigof' applied to non-aggregate type"
+#: cp/parser.c:1818
+#, fuzzy
+msgid "`%D' %s"
+msgstr "%s voor `%s'"
+
+#: cp/parser.c:1870
+msgid "new types may not be defined in a return type"
msgstr ""
-#: parse.y:2339
-msgid "using `typename' outside of template"
+#: cp/parser.c:1888 cp/pt.c:4185
+#, fuzzy
+msgid "`%T' is not a template"
+msgstr "`%s' is geen iterator"
+
+#: cp/parser.c:1890
+#, fuzzy, c-format
+msgid "`%s' is not a template"
+msgstr "`%s' is geen iterator"
+
+#: cp/parser.c:1892
+#, fuzzy
+msgid "invalid template-id"
+msgstr "ongeldig karakter in naam van macro-parameter"
+
+#: cp/parser.c:1927
+#, fuzzy, c-format
+msgid "%s cannot appear in a constant-expression"
+msgstr "overflow in constante expressie"
+
+#. Issue an error message.
+#: cp/parser.c:1954
+#, fuzzy, c-format
+msgid "`%s' does not name a type"
+msgstr "`%s' is smaller dan waarden van zijn type"
+
+#: cp/parser.c:1985
+msgid "(perhaps `typename %T::%s' was intended)"
msgstr ""
-#: parse.y:2356
-msgid "qualified name does not name a class"
+#: cp/parser.c:2407
+#, fuzzy
+msgid "ISO C++ forbids braced-groups within expressions"
+msgstr "ANSI C verbiedt accolade-groepen in expressies"
+
+# 'braced-group'? Wie schrijft verdorie die foutmeldingen?
+#: cp/parser.c:2416
+#, fuzzy
+msgid "statement-expressions are allowed only inside functions"
+msgstr "accolade-groep in expressie enkel toegestaan binnen een functie"
+
+#: cp/parser.c:2467
+#, fuzzy
+msgid "`this' may not be used in this context"
+msgstr "`%.*s' is niet gedefinieerd"
+
+#: cp/parser.c:2617
+#, fuzzy
+msgid "local variable `%D' may not appear in this context"
+msgstr "`%.*s' is niet gedefinieerd"
+
+#: cp/parser.c:2982
+#, fuzzy
+msgid "typedef-name `%D' used as destructor declarator"
+msgstr "parameter `%s' heeft enkel een voorwaartse declaratie"
+
+#: cp/parser.c:3627
+#, fuzzy
+msgid "ISO C++ forbids compound-literals"
+msgstr "ANSI C verbiedt het gebruik van samengestelde expressies als lvalues"
+
+#: cp/parser.c:4599
+msgid "expression in new-declarator must have integral or enumeration type"
msgstr ""
-#: parse.y:2417
-#, c-format
-msgid "storage class specifier `%s' not allowed after struct or class"
+#: cp/parser.c:4775
+msgid "use of old-style cast"
msgstr ""
-#: parse.y:2419
-#, c-format
-msgid "type specifier `%s' not allowed after struct or class"
+#: cp/parser.c:5528
+#, fuzzy, c-format
+msgid "case label `%E' not within a switch statement"
+msgstr "case-label niet in een switch-statement"
+
+#: cp/parser.c:6070
+#, fuzzy
+msgid "ISO C++ forbids computed gotos"
+msgstr "ANSI C verbiedt geneste functies"
+
+#: cp/parser.c:6190
+msgid "extra `;'"
msgstr ""
-#: parse.y:2421
-#, c-format
-msgid "type qualifier `%s' not allowed after struct or class"
+#: cp/parser.c:6485
+msgid "mixing declarations and function-definitions is forbidden"
msgstr ""
-#: parse.y:2423
-msgid "no body nor ';' separates two class, struct or union declarations"
+#: cp/parser.c:6623
+#, fuzzy
+msgid "duplicate `friend'"
+msgstr "herhaalde `%s'"
+
+#: cp/parser.c:6772
+#, fuzzy
+msgid "class definition may not be declared a friend"
+msgstr "`%s' mag niet als alleen-lezen gedeclareerd worden"
+
+#: cp/parser.c:7086
+msgid "only constructors take base initializers"
msgstr ""
-#: parse.y:2553
-msgid "no bases given following `:'"
+#: cp/parser.c:7137
+msgid "anachronistic old-style base class initializer"
msgstr ""
-#: parse.y:2584 parse.y:2599
-msgid "`%D' access"
+#. Warn that we do not support `export'.
+#: cp/parser.c:7530
+msgid "keyword `export' not implemented, and will be ignored"
msgstr ""
-#: parse.y:2589
-msgid "multiple access specifiers"
+#. Otherwise, emit an error about the invalid digraph, but continue
+#. parsing because we got our argument list.
+#: cp/parser.c:7890
+#, fuzzy
+msgid "`<::' cannot begin a template-argument list"
+msgstr "`%s' is geen iterator"
+
+#: cp/parser.c:7891
+msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'"
msgstr ""
-#: parse.y:2607
-msgid "multiple `virtual' specifiers"
+#: cp/parser.c:7898
+msgid "(if you use `-fpermissive' G++ will accept your code)"
msgstr ""
-#: parse.y:2644
-msgid "missing ';' before right brace"
+#. Explain what went wrong.
+#: cp/parser.c:8070
+#, fuzzy
+msgid "non-template `%D' used as template"
+msgstr "parameter `%s' heeft enkel een voorwaartse declaratie"
+
+#: cp/parser.c:8071
+msgid "(use `%T::template %D' to indicate that it is a template)"
msgstr ""
-#: parse.y:2865
-msgid "ISO C++ forbids array dimensions with parenthesized type in new"
+#: cp/parser.c:9000
+msgid "using `typename' outside of template"
msgstr ""
-#: parse.y:3152 parse.y:3172 parse.y:3181 parse.y:3210
-msgid "`%T' is not a class or namespace"
+#: cp/parser.c:9122
+#, fuzzy
+msgid "expected type-name"
+msgstr "ongeldige operand van %s"
+
+#: cp/parser.c:9181
+#, fuzzy
+msgid "type attributes are honored only at type definition"
+msgstr "het `%s' attribuut heeft enkel betekenis voor functies"
+
+#. [namespace.udecl]
+#.
+#. A using declaration shall not name a template-id.
+#: cp/parser.c:9565
+#, fuzzy
+msgid "a template-id may not appear in a using-declaration"
+msgstr "`%s' staat niet aan het begin van een declaratie"
+
+#: cp/parser.c:9891
+msgid "an asm-specification is not allowed on a function-definition"
msgstr ""
-#: parse.y:3377
+#: cp/parser.c:9893
#, fuzzy
-msgid "ISO C++ forbids label declarations"
-msgstr "ANSI C verbiedt labeldeclaraties"
+msgid "attributes are not allowed on a function-definition"
+msgstr "globale registervariabele volgt op een functiedefinitie"
-#: parse.y:3537
+#: cp/parser.c:10026
#, fuzzy
-msgid "ISO C++ forbids computed gotos"
-msgstr "ANSI C verbiedt geneste functies"
+msgid "attributes after parenthesized initializer ignored"
+msgstr "attributen genegeerd in declarator van parameter-array"
+
+# Is the %s the argument, or is it 'of' the argument?
+#: cp/parser.c:11223
+#, fuzzy
+msgid "file ends in default argument"
+msgstr "ongeldig type-argument `%s'"
+
+#: cp/parser.c:11279
+#, fuzzy
+msgid "deprecated use of default argument for parameter of non-function"
+msgstr "argumenten aan macro `%s' gegeven"
+
+#: cp/parser.c:11282
+#, fuzzy
+msgid "default arguments are only permitted for function parameters"
+msgstr "argumenten aan macro `%s' gegeven"
+
+#: cp/parser.c:12007
+#, fuzzy
+msgid "declaration of `%D' in `%D' which does not enclose `%D'"
+msgstr "`%s' wordt gedeclareerd als een array van functies"
-#: parse.y:3545
-msgid "label must be followed by statement"
+#: cp/parser.c:12020
+msgid "extra qualification ignored"
msgstr ""
-#: parse.y:3590
-msgid "must have at least one catch per try block"
+#: cp/parser.c:12031
+#, fuzzy
+msgid "an explicit specialization must be preceded by 'template <>'"
+msgstr "impliciete declaratie van functie `%s'"
+
+#: cp/parser.c:12311
+msgid "extra semicolon"
msgstr ""
-#: parse.y:3650
-msgid "ISO C++ forbids compound statements inside for initializations"
+#: cp/parser.c:12329
+msgid "a class-key must be used when declaring a friend"
msgstr ""
-#. This helps us recover from really nasty
-#. parse errors, for example, a missing right
-#. parenthesis.
-#: parse.y:3737 parse.y:3747
-msgid "possibly missing ')'"
+#: cp/parser.c:12360
+#, fuzzy
+msgid "friend declaration does not name a class or function"
+msgstr "ingebouwde functie `%s' als niet-functie gedeclareerd"
+
+#: cp/parser.c:12531
+msgid "pure-specifier on function-definition"
msgstr ""
-#: parse.y:3840
-msgid "type specifier omitted for parameter"
+#: cp/parser.c:12804
+msgid "keyword `typename' not allowed outside of templates"
msgstr ""
-#: parse.y:3849
-#, c-format
-msgid "`%E' is not a type, use `typename %E' to make it one"
+#: cp/parser.c:12806
+msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)"
msgstr ""
-#: parse.y:3851
+#: cp/parser.c:13624
#, fuzzy
-msgid "no type `%D' in `%T'"
-msgstr "het type van de teruggeefwaarde van `%s' is niet `int'"
+msgid "reference to `%D' is ambiguous"
+msgstr "grootte van `%s' is %u bytes"
-#: parse.y:3854
-#, fuzzy, c-format
-msgid "type specifier omitted for parameter `%E'"
-msgstr "opslagklasse opgegeven voor parameter `%s'"
+#: cp/parser.c:13798
+#, fuzzy
+msgid "too few template-parameter-lists"
+msgstr "twee of meer data types in de declaratie van `%s'"
+
+#. Otherwise, there are too many template parameter lists. We have
+#. something like:
+#.
+#. template <class T> template <class U> void S::f();
+#: cp/parser.c:13813
+#, fuzzy
+msgid "too many template-parameter-lists"
+msgstr "meerdere opslagklassen in declaratie van `%s'"
+
+#. If begin_function_definition didn't like the definition, skip
+#. the entire function.
+#: cp/parser.c:14090
+#, fuzzy
+msgid "invalid function declaration"
+msgstr "lege declaratie"
+
+#. Issue an error message.
+#: cp/parser.c:14127
+#, fuzzy
+msgid "named return values are no longer supported"
+msgstr "-pipe wordt niet ondersteund"
-#: parse.y:3862
-msgid "'%D' is used as a type, but is not defined as a type."
+#: cp/parser.c:14455
+msgid "`>>' should be `> >' within a nested template argument list"
msgstr ""
-#: cp/pt.c:284
+#. If this is not a nested template argument list, the '>>' is
+#. a typo for '>'. Emit an error message and continue.
+#: cp/parser.c:14463
+msgid "spurious `>>', use `>' to terminate a template argument list"
+msgstr ""
+
+#: cp/parser.c:14950
+#, fuzzy
+msgid "`%s' tag used in naming `%#T'"
+msgstr "Ongeldige optie `%s'"
+
+#: cp/parser.c:14970
+#, fuzzy
+msgid "%D redeclared with different access"
+msgstr "`%s' als ander soort symbool geherdeclareerd"
+
+#: cp/parser.c:14987
+msgid "`template' (as a disambiguator) is only allowed within templates"
+msgstr ""
+
+#: cp/pt.c:243
msgid "data member `%D' cannot be a member template"
msgstr ""
-#: cp/pt.c:296
+#: cp/pt.c:255
#, fuzzy
msgid "invalid member template declaration `%D'"
msgstr "herhaalde label-declaratie `%s'"
-#: cp/pt.c:691
+#: cp/pt.c:637
msgid "explicit specialization in non-namespace scope `%D'"
msgstr ""
-#: cp/pt.c:703
+#: cp/pt.c:649
msgid "enclosing class templates are not explicitly specialized"
msgstr ""
-#: cp/pt.c:792 cp/pt.c:833
+#: cp/pt.c:739 cp/pt.c:780
msgid "specializing `%#T' in different namespace"
msgstr ""
-#: cp/pt.c:793 cp/pt.c:834
+#: cp/pt.c:740 cp/pt.c:781
#, fuzzy
msgid " from definition of `%#D'"
msgstr "herdefinitie van `%s'"
-#: cp/pt.c:801
+#: cp/pt.c:748
#, fuzzy
msgid "specialization of `%T' after instantiation"
msgstr "de declaratie van `%s' is `extern' en heeft een beginwaarde"
-#: cp/pt.c:848
+#: cp/pt.c:795
#, fuzzy
msgid "specialization `%T' after instantiation `%T'"
msgstr "de declaratie van `%s' is `extern' en heeft een beginwaarde"
-#: cp/pt.c:860
+#: cp/pt.c:807
#, fuzzy
msgid "explicit specialization of non-template `%T'"
msgstr "impliciete declaratie van functie `%s'"
-#: cp/pt.c:992
+#: cp/pt.c:1067
msgid "specialization of %D after instantiation"
msgstr ""
-#: cp/pt.c:1096
+#: cp/pt.c:1192
msgid "%s %+#D"
msgstr ""
-#: cp/pt.c:1147
+#: cp/pt.c:1241
#, fuzzy
msgid "`%D' is not a function template"
msgstr "`%s' is geen iterator"
-#: cp/pt.c:1286
+#: cp/pt.c:1380
msgid "template-id `%D' for `%+D' does not match any template declaration"
msgstr ""
-#: cp/pt.c:1294
+#: cp/pt.c:1388
msgid "ambiguous template specialization `%D' for `%+D'"
msgstr ""
#. This case handles bogus declarations like template <>
#. template <class T> void f<int>();
-#: cp/pt.c:1521 cp/pt.c:1595
+#: cp/pt.c:1611 cp/pt.c:1685
msgid "template-id `%D' in declaration of primary template"
msgstr ""
-#: cp/pt.c:1534
+#: cp/pt.c:1624
msgid "template parameter list used in explicit instantiation"
msgstr ""
-#: cp/pt.c:1540
+#: cp/pt.c:1630
msgid "definition provided for explicit instantiation"
msgstr ""
-#: cp/pt.c:1546
+#: cp/pt.c:1636
#, fuzzy
msgid "too many template parameter lists in declaration of `%D'"
msgstr "meerdere opslagklassen in declaratie van `%s'"
-#: cp/pt.c:1562
+#: cp/pt.c:1652
#, fuzzy
msgid "too few template parameter lists in declaration of `%D'"
msgstr "twee of meer data types in de declaratie van `%s'"
-#: cp/pt.c:1579
+#: cp/pt.c:1669
msgid "explicit specialization not preceded by `template <>'"
msgstr ""
-#: cp/pt.c:1592
+#: cp/pt.c:1682
msgid "partial specialization `%D' of function template"
msgstr ""
-#: cp/pt.c:1624
+#: cp/pt.c:1714
msgid "default argument specified in explicit specialization"
msgstr ""
-#: cp/pt.c:1628
+#: cp/pt.c:1718
msgid "template specialization with C linkage"
msgstr ""
@@ -17287,110 +16734,118 @@ msgstr ""
#. program is ill-formed.
#.
#. Similar language is found in [temp.explicit].
-#: cp/pt.c:1715
+#: cp/pt.c:1802
#, fuzzy
msgid "specialization of implicitly-declared special member function"
msgstr "`%s' impliciet als functie gedeclareerd"
-#: cp/pt.c:1759
+#: cp/pt.c:1846
#, fuzzy
msgid "no member function `%D' declared in `%T'"
msgstr "geneste functie `%s' is als `extern' gedeclareerd"
#. There are two many template parameter lists.
-#: cp/pt.c:1909
+#: cp/pt.c:2001
#, fuzzy
msgid "too many template parameter lists in declaration of `%T'"
msgstr "meerdere opslagklassen in declaratie van `%s'"
-#: cp/pt.c:2005
+#: cp/pt.c:2094
msgid " shadows template parm `%#D'"
msgstr ""
-#: cp/pt.c:2409
+#: cp/pt.c:2491
msgid "template parameters not used in partial specialization:"
msgstr ""
-#: cp/pt.c:2413
+#: cp/pt.c:2495
msgid " `%D'"
msgstr ""
-#: cp/pt.c:2425
+#: cp/pt.c:2507
msgid "partial specialization `%T' does not specialize any template arguments"
msgstr ""
-#: cp/pt.c:2450
+#: cp/pt.c:2532
#, c-format
msgid "template argument `%E' involves template parameter(s)"
msgstr ""
-#: cp/pt.c:2494
+#: cp/pt.c:2576
msgid "type `%T' of template argument `%E' depends on template parameter(s)"
msgstr ""
# Is the %s the argument, or is it 'of' the argument?
-#: cp/pt.c:2582
+#: cp/pt.c:2661
#, fuzzy
msgid "no default argument for `%D'"
msgstr "ongeldig type-argument `%s'"
-#: cp/pt.c:2735
+#: cp/pt.c:2810
msgid "template with C linkage"
msgstr ""
-#: cp/pt.c:2738
+#: cp/pt.c:2813
msgid "template class without a name"
msgstr ""
-#: cp/pt.c:2815
+#. [temp.mem]
+#.
+#. A destructor shall not be a member template.
+#: cp/pt.c:2820
+#, fuzzy
+msgid "destructor `%D' declared as member template"
+msgstr "`%s %s' binnen parameterlijst gedeclareerd"
+
+#: cp/pt.c:2900
msgid "`%D' does not declare a template type"
msgstr ""
-#: cp/pt.c:2821
+#: cp/pt.c:2906
#, fuzzy
msgid "template definition of non-template `%#D'"
msgstr "herdefinitie van `union %s'"
-#: cp/pt.c:2862
+#: cp/pt.c:2947
msgid "expected %d levels of template parms for `%#D', got %d"
msgstr ""
-#: cp/pt.c:2874
+#: cp/pt.c:2959
#, fuzzy
msgid "got %d template parameters for `%#D'"
msgstr "meerdere parameters hebben de naam `%s'"
-#: cp/pt.c:2877
+#: cp/pt.c:2962
#, fuzzy
msgid "got %d template parameters for `%#T'"
msgstr "meerdere parameters hebben de naam `%s'"
-#: cp/pt.c:2879
+#: cp/pt.c:2964
#, c-format
msgid " but %d required"
msgstr ""
-#: cp/pt.c:2962
+#: cp/pt.c:3042
#, fuzzy
msgid "`%T' is not a template type"
msgstr "`%s' is geen iterator"
-#: cp/pt.c:2978
+#: cp/pt.c:3058
#, fuzzy
msgid "previous declaration `%D'"
msgstr "eerdere declaratie van `%s'"
-#: cp/pt.c:2979
+#: cp/pt.c:3059
#, fuzzy, c-format
msgid "used %d template parameter%s instead of %d"
msgstr "meerdere parameters hebben de naam `%s'"
-#: cp/pt.c:2995
+#: cp/pt.c:3075
#, fuzzy
msgid "template parameter `%#D'"
msgstr "meerdere parameters hebben de naam `%s'"
-#: cp/pt.c:2996
+#: cp/pt.c:3076
#, fuzzy
msgid "redeclared here as `%#D'"
msgstr "ongeldige naam `%s'"
@@ -17399,752 +16854,773 @@ msgstr "ongeldige naam `%s'"
#.
#. A template-parameter may not be given default arguments
#. by two different declarations in the same scope.
-#: cp/pt.c:3006
+#: cp/pt.c:3086
#, fuzzy
msgid "redefinition of default argument for `%#D'"
msgstr "herdefinitie van `struct %s'"
-#: cp/pt.c:3007
+#: cp/pt.c:3087
#, fuzzy
-msgid " original definition appeared here"
+msgid "%J original definition appeared here"
msgstr "functie-definitie als `typdef' gedeclareerd"
-#: cp/pt.c:3100
+#: cp/pt.c:3235
#, fuzzy, c-format
msgid "`%E' is not a valid template argument"
msgstr "`%s' is geen iterator"
-#: cp/pt.c:3104
+#: cp/pt.c:3239
msgid "it must be the address of a function with external linkage"
msgstr ""
-#: cp/pt.c:3106
+#: cp/pt.c:3241
msgid "it must be the address of an object with external linkage"
msgstr ""
-#: cp/pt.c:3110
+#: cp/pt.c:3244
msgid "it must be a pointer-to-member of the form `&X::Y'"
msgstr ""
-#: cp/pt.c:3121
+#: cp/pt.c:3255
#, c-format
msgid "string literal %E is not a valid template argument because it is the address of an object with static linkage"
msgstr ""
-#: cp/pt.c:3133
+#: cp/pt.c:3270
#, c-format
msgid "address of non-extern `%E' cannot be used as template argument"
msgstr ""
-#: cp/pt.c:3144
+#: cp/pt.c:3279
#, c-format
msgid "non-constant `%E' cannot be used as template argument"
msgstr ""
-#: cp/pt.c:3151
+#: cp/pt.c:3287
+msgid "type '%T' cannot be used as a value for a non-type template-parameter"
+msgstr ""
+
+#: cp/pt.c:3290
+msgid "invalid use of '%D' as a non-type template-argument"
+msgstr ""
+
+#: cp/pt.c:3292
#, c-format
-msgid "object `%E' cannot be used as template argument"
+msgid "invalid use of '%E' as a non-type template-argument"
msgstr ""
-#: cp/pt.c:3526
+#: cp/pt.c:3657
#, c-format
msgid "to refer to a type member of a template parameter, use `typename %E'"
msgstr ""
-#: cp/pt.c:3539 cp/pt.c:3555 cp/pt.c:3594
+#: cp/pt.c:3670 cp/pt.c:3688 cp/pt.c:3727
msgid "type/value mismatch at argument %d in template parameter list for `%D'"
msgstr ""
-#: cp/pt.c:3542
+#: cp/pt.c:3673
msgid " expected a constant of type `%T', got `%T'"
msgstr ""
-#: cp/pt.c:3546
+#: cp/pt.c:3677
+#, c-format
+msgid " expected a class template, got `%E'"
+msgstr ""
+
+#: cp/pt.c:3679
#, c-format
msgid " expected a type, got `%E'"
msgstr ""
-#: cp/pt.c:3558
+#: cp/pt.c:3691
msgid " expected a type, got `%T'"
msgstr ""
-#: cp/pt.c:3560
+#: cp/pt.c:3693
msgid " expected a class template, got `%T'"
msgstr ""
-#: cp/pt.c:3596
+#: cp/pt.c:3729
msgid " expected a template of type `%D', got `%D'"
msgstr ""
-#: cp/pt.c:3618
-msgid "template-argument `%T' uses anonymous type"
-msgstr ""
-
-#: cp/pt.c:3621
-msgid "template-argument `%T' uses local type `%T'"
-msgstr ""
-
-# Ik weet het, 'alleen-lezen' is lelijk, maar het is de min of meer geijkte vertaling.
-#: cp/pt.c:3631
-#, fuzzy
-msgid "template-argument `%T' is a variably modified type"
-msgstr "argument %d is alleen-lezen"
-
-#: cp/pt.c:3666
+#: cp/pt.c:3764
msgid "could not convert template argument `%E' to `%T'"
msgstr ""
-#: cp/pt.c:3710
+#: cp/pt.c:3804
#, c-format
msgid "wrong number of template arguments (%d, should be %d)"
msgstr ""
-#: cp/pt.c:3714
+#: cp/pt.c:3808
#, fuzzy
msgid "provided for `%D'"
msgstr "eerdere grant voor `%s'"
# Ik weet het, 'alleen-lezen' is lelijk, maar het is de min of meer geijkte vertaling.
-#: cp/pt.c:3761
+#: cp/pt.c:3836
#, fuzzy, c-format
msgid "template argument %d is invalid"
msgstr "argument %d is alleen-lezen"
-#: cp/pt.c:3997
+#: cp/pt.c:4057
msgid "non-template used as template"
msgstr ""
-#: cp/pt.c:4139
-#, fuzzy
-msgid "`%T' is not a template"
-msgstr "`%s' is geen iterator"
-
-#: cp/pt.c:4152
+#: cp/pt.c:4197
msgid "non-template type `%T' used as a template"
msgstr ""
-#: cp/pt.c:4154
+#: cp/pt.c:4199
#, fuzzy
msgid "for template declaration `%D'"
msgstr "lege declaratie"
-#: cp/pt.c:4770
+#: cp/pt.c:4846
msgid "template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN to increase the maximum) instantiating `%D'"
msgstr ""
-#: cp/pt.c:5247
+#: cp/pt.c:5286
msgid "ambiguous class template instantiation for `%#T'"
msgstr ""
-#: cp/pt.c:5254
+#: cp/pt.c:5292
msgid "%s %+#T"
msgstr ""
-#: cp/pt.c:6284 cp/pt.c:6396
+#: cp/pt.c:6291 cp/pt.c:6411
msgid "instantiation of `%D' as type `%T'"
msgstr ""
-#: cp/pt.c:6440
+#: cp/pt.c:6453
#, fuzzy
msgid "invalid parameter type `%T'"
msgstr "ongeldige operand voor %p-code"
-#: cp/pt.c:6442
+#: cp/pt.c:6455
#, fuzzy
msgid "in declaration `%D'"
msgstr "herdeclaratie van `%s'"
-#: cp/pt.c:6517
+#: cp/pt.c:6529
msgid "creating pointer to member function of non-class type `%T'"
msgstr ""
-#: cp/pt.c:6680
+#: cp/pt.c:6668
msgid "creating array with size zero"
msgstr ""
-#: cp/pt.c:6694
+#: cp/pt.c:6682
#, c-format
msgid "creating array with size zero (`%E')"
msgstr ""
-#: cp/pt.c:6933
+#: cp/pt.c:6921
msgid "forming reference to void"
msgstr ""
-#: cp/pt.c:6935
+#: cp/pt.c:6923
msgid "forming %s to reference type `%T'"
msgstr ""
-#: cp/pt.c:6973
+#: cp/pt.c:6960
msgid "creating pointer to member of non-class type `%T'"
msgstr ""
-#: cp/pt.c:6979
+#: cp/pt.c:6966
msgid "creating pointer to member reference type `%T'"
msgstr ""
-#: cp/pt.c:7057
+#: cp/pt.c:7052
#, fuzzy
msgid "creating array of `%T'"
msgstr "doorgeven van argument %d van `%s'"
-#: cp/pt.c:7100
+#: cp/pt.c:7058
+msgid "creating array of `%T', which is an abstract class type"
+msgstr ""
+
+#: cp/pt.c:7102
#, fuzzy
msgid "`%T' is not a class, struct, or union type"
msgstr "`%s' is geen bestand, pipe of tty"
-#: cp/pt.c:7213
+#: cp/pt.c:7215
#, c-format
msgid "use of `%s' in template"
msgstr ""
-#: cp/pt.c:7975
-msgid "type `%T' composed from a local class is not a valid template-argument"
+#: cp/pt.c:7327
+#, c-format
+msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type"
+msgstr ""
+
+#: cp/pt.c:7329
+#, c-format
+msgid "say `typename %E' if a type is meant"
msgstr ""
-#: cp/pt.c:7976
+#: cp/pt.c:8586
+#, fuzzy
+msgid "`%T' uses anonymous type"
+msgstr "`%s' is smaller dan waarden van zijn type"
+
+#: cp/pt.c:8588
+#, fuzzy
+msgid "`%T' uses local type `%T'"
+msgstr "`%c' optie gebruikt bij type `%c'"
+
+# Ik weet het, 'alleen-lezen' is lelijk, maar het is de min of meer geijkte vertaling.
+#: cp/pt.c:8596
+#, fuzzy
+msgid "`%T' is a variably modified type"
+msgstr "argument %d is alleen-lezen"
+
+#: cp/pt.c:8607
+#, fuzzy, c-format
+msgid "integral expression `%E' is not constant"
+msgstr "opslaggrootte van `%s' is niet constant"
+
+#: cp/pt.c:8612
msgid " trying to instantiate `%D'"
msgstr ""
-#: cp/pt.c:8421
+#: cp/pt.c:9125
msgid "incomplete type unification"
msgstr ""
-#: cp/pt.c:9387
+#: cp/pt.c:10072
#, c-format
msgid "use of `%s' in template type unification"
msgstr ""
-#: cp/pt.c:9821 cp/pt.c:9893
+#: cp/pt.c:10506 cp/pt.c:10578
msgid "explicit instantiation of non-template `%#D'"
msgstr ""
-#: cp/pt.c:9837 cp/pt.c:9888
+#: cp/pt.c:10522 cp/pt.c:10573
msgid "no matching template for `%D' found"
msgstr ""
-#: cp/pt.c:9843
+#: cp/pt.c:10528
#, fuzzy
msgid "explicit instantiation of `%#D'"
msgstr "eerdere impliciete declaratie van `%s'"
-#: cp/pt.c:9880
+#: cp/pt.c:10565
#, fuzzy
msgid "duplicate explicit instantiation of `%#D'"
msgstr "herhaalde definitie `%s'"
-#: cp/pt.c:9905
+#: cp/pt.c:10587
msgid "ISO C++ forbids the use of `extern' on explicit instantiations"
msgstr ""
-#: cp/pt.c:9909 cp/pt.c:9999
+#: cp/pt.c:10591 cp/pt.c:10672
msgid "storage class `%D' applied to template instantiation"
msgstr ""
-#: cp/pt.c:9966
+#: cp/pt.c:10644
msgid "explicit instantiation of non-template type `%T'"
msgstr ""
-#: cp/pt.c:9980
+#: cp/pt.c:10653
msgid "explicit instantiation of `%#T' before definition of template"
msgstr ""
-#: cp/pt.c:9988
+#: cp/pt.c:10661
#, c-format
msgid "ISO C++ forbids the use of `%s' on explicit instantiations"
msgstr ""
-#: cp/pt.c:10032
+#: cp/pt.c:10705
#, fuzzy
msgid "duplicate explicit instantiation of `%#T'"
msgstr "herhaalde definitie `%s'"
-#: cp/pt.c:10412
+#: cp/pt.c:11086
msgid "explicit instantiation of `%D' but no definition available"
msgstr ""
-#: cp/pt.c:10815
+#: cp/pt.c:11520
msgid "`%#T' is not a valid type for a template constant parameter"
msgstr ""
-#: cp/repo.c:271
+#: cp/repo.c:259
msgid "-frepo must be used with -c"
msgstr ""
-#: cp/repo.c:361
+#: cp/repo.c:346
#, c-format
msgid "mysterious repository information in %s"
msgstr ""
-#: cp/repo.c:376
+#: cp/repo.c:361
#, c-format
msgid "can't create repository information file `%s'"
msgstr ""
-#: cp/rtti.c:240
+#: cp/rtti.c:248
msgid "cannot use typeid with -fno-rtti"
msgstr ""
-#: cp/rtti.c:246
+#: cp/rtti.c:254
msgid "must #include <typeinfo> before using typeid"
msgstr ""
-#: cp/rtti.c:320
+#: cp/rtti.c:326
msgid "cannot create type information for type `%T' because its size is variable"
msgstr ""
-#: cp/rtti.c:584 cp/rtti.c:598
+#: cp/rtti.c:580 cp/rtti.c:594
msgid "dynamic_cast of `%#D' to `%#T' can never succeed"
msgstr ""
-#: cp/rtti.c:674
+#: cp/rtti.c:675
msgid "cannot dynamic_cast `%E' (of type `%#T') to type `%#T' (%s)"
msgstr ""
-#: cp/search.c:332
+#: cp/search.c:306
msgid "`%T' is an ambiguous base of `%T'"
msgstr ""
-#: cp/search.c:350
+#: cp/search.c:324
msgid "`%T' is an inaccessible base of `%T'"
msgstr ""
-#. At parse time, we don't want to give this error, since
-#. we won't have enough state to make this kind of
-#. decision properly. But there are times (e.g., with
-#. enums in nested classes) when we do need to call
-#. this fn at parse time. So, in those cases, we pass
-#. complain as a 0 and just return a NULL_TREE.
-#: cp/search.c:1638
-msgid "assignment to non-static member `%D' of enclosing class `%T'"
-msgstr ""
-
-#: cp/search.c:2050
-msgid "adjusting pointers for covariant returns"
-msgstr ""
-
-#: cp/search.c:2054 cp/search.c:2061
+#: cp/search.c:1756
#, fuzzy
msgid "invalid covariant return type for `%#D'"
msgstr "ongeldige registernaam voor `%s'"
-#: cp/search.c:2055
-msgid " overriding `%#D' (must be pointer or reference to class)"
-msgstr ""
-
-#: cp/search.c:2062
-msgid " overriding `%#D' (must use pointer or reference)"
+#: cp/search.c:1757 cp/search.c:1763
+msgid " overriding `%#D'"
msgstr ""
-#: cp/search.c:2067
+#: cp/search.c:1761
#, fuzzy
msgid "conflicting return type specified for `%#D'"
msgstr "conflicterende types voor `%s'"
-#: cp/search.c:2068
-msgid " overriding `%#D'"
-msgstr ""
-
-#: cp/search.c:2077
+#: cp/search.c:1775
#, fuzzy, c-format
msgid "looser throw specifier for `%#F'"
msgstr "'long' of 'short' opgegeven bij 'char' voor `%s'"
-#: cp/search.c:2078
+#: cp/search.c:1776
#, c-format
msgid " overriding `%#F'"
msgstr ""
#. A static member function cannot match an inherited
#. virtual member function.
-#: cp/search.c:2167
+#: cp/search.c:1866
#, fuzzy
msgid "`%#D' cannot be declared"
msgstr "`%.*s' is niet gedefinieerd"
-#: cp/search.c:2168
+#: cp/search.c:1867
msgid " since `%#D' declared in base class"
msgstr ""
-#: cp/search.c:2309
+#: cp/search.c:1944
msgid "`%#D' needs a final overrider"
msgstr ""
-#: cp/semantics.c:919
+#: cp/semantics.c:1092
#, fuzzy, c-format
msgid "type of asm operand `%E' could not be determined"
msgstr "type van parameter `%s' is niet gedeclareerd"
-#: cp/semantics.c:1051
+#: cp/semantics.c:1233
#, fuzzy
-msgid "ISO C++ does not permit named return values"
-msgstr "ANSI C staat het gebruik van `varargs.h' niet toe"
+msgid "invalid use of member `%D' in static member function"
+msgstr "`this' is niet beschikbaar in static member-funties"
-#: cp/semantics.c:1060
-msgid "return identifier `%D' already in place"
+#: cp/semantics.c:1237 cp/semantics.c:1276
+msgid "from this location"
msgstr ""
-#: cp/semantics.c:1068
-msgid "can't redefine default return value for constructors"
-msgstr ""
+#: cp/semantics.c:1275
+#, fuzzy
+msgid "object missing in reference to `%D'"
+msgstr "array-grootte ontbreekt in `%s'"
-#: cp/semantics.c:1100
-msgid "only constructors take base initializers"
-msgstr ""
+#: cp/semantics.c:1721
+#, fuzzy
+msgid "arguments to destructor are not allowed"
+msgstr "kan het `%s' attribuut niet instellen na een definitie"
-#: cp/semantics.c:1343
+#: cp/semantics.c:1769
msgid "`this' is unavailable for static member functions"
msgstr "`this' is niet beschikbaar in static member-funties"
-#: cp/semantics.c:1349
+#: cp/semantics.c:1775
msgid "invalid use of `this' in non-member function"
msgstr ""
-#: cp/semantics.c:1351
+#: cp/semantics.c:1777
msgid "invalid use of `this' at top level"
msgstr "ongeldig gebruik van `this' op hoogste niveau"
-#: cp/semantics.c:1381
-msgid "calling type `%T' like a method"
-msgstr ""
-
-#: cp/semantics.c:1419
-msgid "destructor specifier `%T::~%T()' must have matching names"
-msgstr ""
+#: cp/semantics.c:1801
+#, fuzzy
+msgid "invalid qualifying scope in pseudo-destructor name"
+msgstr "%s laat qualifiers van doeltype van pointer vallen"
-#: cp/semantics.c:1425
+#: cp/semantics.c:1807
#, fuzzy
msgid "`%E' is not of type `%T'"
msgstr "`%c' optie gebruikt bij type `%c'"
-#: cp/semantics.c:1613
+#: cp/semantics.c:1918
msgid "template type parameters must use the keyword `class' or `typename'"
msgstr ""
-#: cp/semantics.c:1652
-msgid "invalid default template argument"
+#: cp/semantics.c:1962
+msgid "invalid use of type `%T' as a default value for a template template-parameter"
+msgstr ""
+
+#: cp/semantics.c:1965
+msgid "invalid use of `%D' as a default value for a template template-parameter"
+msgstr ""
+
+#: cp/semantics.c:1969
+msgid "invalid default argument for a template template parameter"
msgstr ""
-#: cp/semantics.c:1694
+#: cp/semantics.c:2004
#, fuzzy
msgid "definition of `%#T' inside template parameter list"
msgstr "de declaratie van `%s' verbergt een symbool uit de parameterlijst"
-#: cp/semantics.c:1710
+#: cp/semantics.c:2015
#, fuzzy
msgid "invalid definition of qualified type `%T'"
msgstr "ongeldig gebruik van het niet gedefinieerde type `%s %s'"
-#: cp/semantics.c:2053
+#: cp/semantics.c:2030
+#, fuzzy
+msgid "previous definition of `%#T'"
+msgstr "eerdere definitie van `%s'"
+
+#: cp/semantics.c:2225
#, fuzzy
msgid "invalid base-class specification"
msgstr "ongeldige linker operand van %s"
-#: cp/semantics.c:2062
+#: cp/semantics.c:2234
msgid "base class `%T' has cv qualifiers"
msgstr ""
-#: cp/semantics.c:2093
+#: cp/semantics.c:2266
#, fuzzy
msgid "multiple declarators in template declaration"
msgstr "meerdere opslagklassen in declaratie van `%s'"
-#: cp/semantics.c:2120
-#, fuzzy, c-format
-msgid "type of `%E' is unknown"
-msgstr "opslaggrootte van `%s' is onbekend"
-
-#: cp/spew.c:225
-#, c-format
-msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
+#: cp/semantics.c:2277
+msgid "incomplete type `%T' used in nested name specifier"
msgstr ""
-#: cp/spew.c:1002 cp/spew.c:1340
-msgid "parse error at end of saved function text"
-msgstr ""
+#: cp/semantics.c:2279 cp/typeck.c:1616
+#, fuzzy
+msgid "`%D' is not a member of `%T'"
+msgstr "`%s' is geen bestand, pipe of tty"
-#: cp/spew.c:1090 cp/spew.c:1178
-msgid "%Hend of file read inside definition"
-msgstr ""
+#: cp/semantics.c:2282
+#, fuzzy
+msgid "`%D' is not a member of `%D'"
+msgstr "`%s' is geen bestand, pipe of tty"
-#: cp/spew.c:1121
-msgid "parse error in method specification"
+#: cp/semantics.c:2400
+msgid "template parameter `%D' of type `%T' is not allowed in an integral constant expression because it is not of integral or enumeration type"
msgstr ""
-#: cp/spew.c:1161
-msgid "function body for constructor missing"
-msgstr ""
+#: cp/semantics.c:2553
+#, fuzzy
+msgid "`%D' cannot appear in a constant-expression"
+msgstr "grootte van array `%s' is van een niet-integraal type"
-#: cp/spew.c:1262
-msgid "%Hend of file read inside default argument"
-msgstr ""
+#: cp/semantics.c:2562
+#, fuzzy
+msgid "use of namespace `%D' as expression"
+msgstr "modi in %s expressie komen niet overeen"
-#: cp/spew.c:1419
-msgid "circular dependency in default args of `%#D'"
+#: cp/semantics.c:2567
+msgid "use of class template `%T' as expression"
msgstr ""
-# Is the %s the argument, or is it 'of' the argument?
-#: cp/spew.c:1483
-#, fuzzy
-msgid "invalid type `%T' for default argument to `%T'"
-msgstr "ongeldig type-argument `%s'"
+#. Ambiguous reference to base members.
+#: cp/semantics.c:2573
+msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
+msgstr ""
-#: cp/spew.c:1548
+#: cp/semantics.c:2633
#, c-format
-msgid "%s before `%s'"
-msgstr "%s voor `%s'"
-
-#: cp/spew.c:1550
-#, fuzzy, c-format
-msgid "%s before `%c'"
-msgstr "%s voor `%s'"
+msgid "use of %s from containing function"
+msgstr ""
-#: cp/spew.c:1552
-#, fuzzy, c-format
-msgid "%s before `\\%o'"
-msgstr "%s voor `%s'"
+#: cp/semantics.c:2636
+#, fuzzy
+msgid " `%#D' declared here"
+msgstr "`%s' tevoren hier gedeclareerd"
-#: cp/spew.c:1555
+#: cp/semantics.c:2687
#, fuzzy, c-format
-msgid "%s before `%s' token"
-msgstr "%s voor `%s'"
+msgid "type of `%E' is unknown"
+msgstr "opslaggrootte van `%s' is onbekend"
-#: cp/tree.c:263 cp/tree.c:275
+#: cp/tree.c:222
#, c-format
msgid "non-lvalue in %s"
msgstr ""
-#: cp/tree.c:562
+#: cp/tree.c:539
msgid "`%V' qualifiers cannot be applied to `%T'"
msgstr ""
-#: cp/tree.c:1941
+#: cp/tree.c:1830
#, fuzzy, c-format
msgid "`%s' attribute can only be applied to Java class definitions"
msgstr "het `%s' attribuut heeft enkel betekenis voor functies"
-#: cp/tree.c:1971
+#: cp/tree.c:1859
#, fuzzy, c-format
msgid "`%s' attribute can only be applied to class definitions"
msgstr "het `%s' attribuut heeft enkel betekenis voor functies"
-#: cp/tree.c:1977
+#: cp/tree.c:1865
#, c-format
msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default"
msgstr ""
-#: cp/tree.c:2002
+#: cp/tree.c:1889
msgid "requested init_priority is not an integer constant"
msgstr ""
-#: cp/tree.c:2023
+#: cp/tree.c:1910
#, c-format
msgid "can only use `%s' attribute on file-scope definitions of objects of class type"
msgstr ""
-#: cp/tree.c:2031
+#: cp/tree.c:1918
msgid "requested init_priority is out of range"
msgstr ""
-#: cp/tree.c:2041
+#: cp/tree.c:1928
msgid "requested init_priority is reserved for internal use"
msgstr ""
-#: cp/tree.c:2051
+#: cp/tree.c:1938
#, fuzzy, c-format
msgid "`%s' attribute is not supported on this platform"
msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem"
-#: cp/tree.c:2588
+#: cp/tree.c:2459
#, c-format
msgid "lang_* check: failed in %s, at %s:%d"
msgstr ""
-#: cp/typeck.c:524
+#: cp/typeck.c:438 cp/typeck.c:453 cp/typeck.c:543
+#, fuzzy
+msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+msgstr "een cast ontbreekt bij vergelijking van ongelijke pointer-types"
+
+#: cp/typeck.c:513
#, fuzzy, c-format
msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
msgstr "pointer van type `void *' gebruikt in aftrekking"
-#: cp/typeck.c:545
+#: cp/typeck.c:563
#, fuzzy
-msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast"
msgstr "een cast ontbreekt bij vergelijking van ongelijke pointer-types"
-#: cp/typeck.c:1436
-msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
-msgstr ""
-
-#: cp/typeck.c:1514
+#: cp/typeck.c:1235
#, fuzzy, c-format
msgid "invalid application of `%s' to a member function"
msgstr "`this' is niet beschikbaar in static member-funties"
-#: cp/typeck.c:1520
+#: cp/typeck.c:1268
#, fuzzy, c-format
-msgid "invalid application of `%s' to non-static member"
-msgstr "`sizeof' toegepast op een bitveld"
+msgid "invalid application of `%s' to a bit-field"
+msgstr "ongeldige toepasing van `%s' op een void-type"
-#: cp/typeck.c:1538
-msgid "sizeof applied to a bit-field"
-msgstr ""
+#: cp/typeck.c:1273
+#, fuzzy, c-format
+msgid "ISO C++ forbids applying `%s' to an expression of function type"
+msgstr "ANSI C verbiedt het adres van een gecaste expressie"
-#: cp/typeck.c:1541
-msgid "ISO C++ forbids applying `sizeof' to an expression of function type"
-msgstr ""
+#: cp/typeck.c:1342
+#, fuzzy
+msgid "invalid use of non-static member function"
+msgstr "`this' is niet beschikbaar in static member-funties"
-#: cp/typeck.c:1759
+#: cp/typeck.c:1476
msgid "deprecated conversion from string constant to `%T'"
msgstr ""
-#: cp/typeck.c:1890 cp/typeck.c:2122
+#: cp/typeck.c:1587 cp/typeck.c:1874
msgid "request for member `%D' in `%E', which is of non-class type `%T'"
msgstr ""
-#: cp/typeck.c:1916
-#, fuzzy
-msgid "`%D' is not a member of `%T'"
-msgstr "`%s' is geen bestand, pipe of tty"
+#: cp/typeck.c:1614
+#, fuzzy, c-format
+msgid "invalid use of nonstatic data member '%E'"
+msgstr "ongeldig gebruik van onvolledige typedef `%s'"
-#: cp/typeck.c:1957 cp/typeck.c:1978
+#: cp/typeck.c:1666 cp/typeck.c:1688
#, fuzzy
msgid "invalid access to non-static data member `%D' of NULL object"
msgstr "ongeldig gebruik van onvolledige typedef `%s'"
-#: cp/typeck.c:1959 cp/typeck.c:1980
+#: cp/typeck.c:1668 cp/typeck.c:1690
msgid "(perhaps the `offsetof' macro was used incorrectly)"
msgstr ""
-#: cp/typeck.c:2168
+#: cp/typeck.c:1804
+msgid "the type being destroyed is '%T', but the destructor refers to `%T'"
+msgstr ""
+
+#: cp/typeck.c:1924
#, fuzzy
msgid "`%D::%D' is not a member of `%T'"
msgstr "`%s' is geen bestand, pipe of tty"
-#: cp/typeck.c:2179
+#: cp/typeck.c:1935
#, fuzzy
msgid "`%T' is not a base of `%T'"
msgstr "`%s' is geen bestand, pipe of tty"
-#: cp/typeck.c:2199
-msgid "destructor specifier `%T::~%T' must have matching names"
-msgstr ""
-
-#: cp/typeck.c:2205
-msgid "type `%T' has no destructor"
-msgstr ""
+#: cp/typeck.c:1954
+#, fuzzy
+msgid "'%D' has no member named '%E'"
+msgstr "union heeft geen lid dat `%s' heet"
-#: cp/typeck.c:2244
+#: cp/typeck.c:1969
#, fuzzy
msgid "`%D' is not a member template function"
msgstr "`%s' is meestal een functie"
#. A pointer to incomplete type (other than cv void) can be
#. dereferenced [expr.unary.op]/1
-#: cp/typeck.c:2338
+#: cp/typeck.c:2075
#, fuzzy
msgid "`%T' is not a pointer-to-object type"
msgstr "`%s' is geen iterator"
-#: cp/typeck.c:2365
+#: cp/typeck.c:2100
#, c-format
msgid "invalid use of `%s' on pointer to member"
msgstr ""
-#: cp/typeck.c:2371
+#: cp/typeck.c:2106
msgid "invalid type argument"
msgstr ""
-#: cp/typeck.c:2474
+#: cp/typeck.c:2212
#, fuzzy
msgid "ISO C++ forbids subscripting non-lvalue array"
msgstr "ANSI C verbiedt het gebruik van subscripts bij een array die geen lvalue is"
-#: cp/typeck.c:2485
+#: cp/typeck.c:2223
msgid "subscripting array declared `register'"
msgstr ""
-#: cp/typeck.c:2570
+#: cp/typeck.c:2306
#, fuzzy, c-format
msgid "object missing in use of `%E'"
msgstr "array-grootte ontbreekt in `%s'"
-#: cp/typeck.c:2674
+#: cp/typeck.c:2408
msgid "ISO C++ forbids calling `::main' from within program"
msgstr ""
-#: cp/typeck.c:2699
+#: cp/typeck.c:2433
#, c-format
msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'"
msgstr ""
-#: cp/typeck.c:2712
+#: cp/typeck.c:2446
#, fuzzy, c-format
msgid "`%E' cannot be used as a function"
msgstr "veld `%s' als een functie gedeclareerd"
-#: cp/typeck.c:2824
+#: cp/typeck.c:2539
#, fuzzy
msgid "too many arguments to %s `%+#D'"
msgstr "teveel argumenten voor functie `%s'"
-#: cp/typeck.c:2865
-msgid "parameter type of called function is incomplete"
+#: cp/typeck.c:2541 cp/typeck.c:2647
+msgid "at this point in file"
msgstr ""
-#: cp/typeck.c:2928
+#: cp/typeck.c:2578
+#, fuzzy
+msgid "parameter %P of `%D' has incomplete type `%T'"
+msgstr "parameter `%s' heeft een onvolledig type"
+
+#: cp/typeck.c:2581
+#, fuzzy
+msgid "parameter %P has incomplete type `%T'"
+msgstr "parameter heeft een onvolledig type"
+
+#: cp/typeck.c:2645
#, fuzzy
msgid "too few arguments to %s `%+#D'"
msgstr "te weinig argumenten voor functie `%s'"
-#: cp/typeck.c:3056 cp/typeck.c:3066
+#: cp/typeck.c:2790 cp/typeck.c:2800
msgid "assuming cast to type `%T' from overloaded function"
msgstr ""
-#: cp/typeck.c:3126
+#: cp/typeck.c:2861
#, fuzzy, c-format
msgid "division by zero in `%E / 0'"
msgstr "deling door nul in `#if'"
-#: cp/typeck.c:3128
+#: cp/typeck.c:2863
#, fuzzy, c-format
msgid "division by zero in `%E / 0.'"
msgstr "deling door nul in `#if'"
-#: cp/typeck.c:3158
+#: cp/typeck.c:2892
#, fuzzy, c-format
msgid "division by zero in `%E %% 0'"
msgstr "deling door nul in `#if'"
-#: cp/typeck.c:3160
+#: cp/typeck.c:2894
#, fuzzy, c-format
msgid "division by zero in `%E %% 0.'"
msgstr "deling door nul in `#if'"
-#: cp/typeck.c:3240
+#: cp/typeck.c:2974
#, c-format
msgid "%s rotate count is negative"
msgstr ""
-#: cp/typeck.c:3243
+#: cp/typeck.c:2977
#, c-format
msgid "%s rotate count >= width of type"
msgstr ""
-#: cp/typeck.c:3274 cp/typeck.c:3279 cp/typeck.c:3370 cp/typeck.c:3375
+#: cp/typeck.c:3011 cp/typeck.c:3016 cp/typeck.c:3107 cp/typeck.c:3112
#, fuzzy
msgid "ISO C++ forbids comparison between pointer and integer"
msgstr "vergelijking tussen pointer en integer"
-#: cp/typeck.c:3553
+#: cp/typeck.c:3293
#, fuzzy
msgid "comparison between types `%#T' and `%#T'"
msgstr "vergelijking tussen pointer en integer"
-#: cp/typeck.c:3589
+#: cp/typeck.c:3329
#, fuzzy
msgid "comparison between signed and unsigned integer expressions"
msgstr "vergelijking tussen signed en unsigned"
-#: cp/typeck.c:3654
+#: cp/typeck.c:3394
#, fuzzy
msgid "invalid operands of types `%T' and `%T' to binary `%O'"
msgstr "ongeldige operanden voor binaire %s-operator"
@@ -18153,805 +17629,625 @@ msgstr "ongeldige operanden voor binaire %s-operator"
#. performed. Note that pointer-difference and pointer-addition
#. have already been handled above, and so we don't end up here in
#. that case.
-#: cp/typeck.c:3676
+#: cp/typeck.c:3416
#, fuzzy
msgid "NULL used in arithmetic"
msgstr "pointer naar functie gebruikt in rekensom"
-#: cp/typeck.c:3743
+#: cp/typeck.c:3479
#, fuzzy
msgid "ISO C++ forbids using pointer of type `void *' in subtraction"
msgstr "pointer van type `void *' gebruikt in aftrekking"
-#: cp/typeck.c:3745
+#: cp/typeck.c:3481
#, fuzzy
msgid "ISO C++ forbids using pointer to a function in subtraction"
msgstr "pointer naar functie gebruikt in aftrekking"
-#: cp/typeck.c:3747
+#: cp/typeck.c:3483
#, fuzzy
msgid "ISO C++ forbids using pointer to a method in subtraction"
msgstr "pointer naar functie gebruikt in aftrekking"
-#: cp/typeck.c:3749
-msgid "ISO C++ forbids using pointer to a member in subtraction"
-msgstr ""
-
# 'Arithmetic'?? 'rekensom' is wel correct, maar het klinkt zo stom.
-#: cp/typeck.c:3761
+#: cp/typeck.c:3495
#, fuzzy
msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
msgstr "rekensom met pointer naar onvolledig type"
-#: cp/typeck.c:3821
+#: cp/typeck.c:3550
#, c-format
msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id."
msgstr ""
-#: cp/typeck.c:3827
+#: cp/typeck.c:3556
#, c-format
msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function"
msgstr ""
-#: cp/typeck.c:3850
+#: cp/typeck.c:3578
msgid "taking address of temporary"
msgstr ""
-#: cp/typeck.c:4091
+#: cp/typeck.c:3813
#, fuzzy, c-format
msgid "ISO C++ forbids %sing an enum"
msgstr "ANSI C verbiedt case-bereiken"
-#: cp/typeck.c:4103
+#: cp/typeck.c:3824
#, fuzzy
msgid "cannot %s a pointer to incomplete type `%T'"
msgstr "parameter `%s' wijst naar een onvolledig type"
-#: cp/typeck.c:4110
+#: cp/typeck.c:3830
#, fuzzy
msgid "ISO C++ forbids %sing a pointer of type `%T'"
msgstr "ANSI C verbiedt het casten van een niet-scalair naar hetzelfde type"
-#: cp/typeck.c:4135
+#: cp/typeck.c:3855
msgid "cast to non-reference type used as lvalue"
msgstr ""
-#: cp/typeck.c:4169
+#: cp/typeck.c:3889
#, fuzzy
msgid "invalid use of `--' on bool variable `%D'"
msgstr "ongeldig gebruik van array die geen lvalue is"
#. ARM $3.4
-#: cp/typeck.c:4202
+#: cp/typeck.c:3920
#, fuzzy
msgid "ISO C++ forbids taking address of function `::main'"
msgstr "ANSI C verbiedt het adres van een gecaste expressie"
#. An expression like &memfn.
-#: cp/typeck.c:4269
-msgid "ISO C++ forbids taking the address of an unqualified non-static member function to form a pointer to member function. Say `&%T::%D'"
+#: cp/typeck.c:3991
+msgid "ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function. Say `&%T::%D'"
msgstr ""
-#: cp/typeck.c:4271
+#: cp/typeck.c:3996
msgid "ISO C++ forbids taking the address of a bound member function to form a pointer to member function. Say `&%T::%D'"
msgstr ""
-#: cp/typeck.c:4295
+#: cp/typeck.c:4024
#, fuzzy
msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression"
msgstr "ANSI C verbiedt het adres van een gecaste expressie"
-#: cp/typeck.c:4324
+#: cp/typeck.c:4040
+msgid "unary `&'"
+msgstr ""
+
+#: cp/typeck.c:4069
#, fuzzy
msgid "attempt to take address of bit-field structure member `%D'"
msgstr "poging om het adres te nemen van lid `%s' van een bitveld-structure"
-#: cp/typeck.c:4444
+#: cp/typeck.c:4183
msgid "taking address of destructor"
msgstr ""
-#: cp/typeck.c:4457
+#: cp/typeck.c:4196
#, fuzzy
msgid "taking address of bound pointer-to-member expression"
msgstr "ongeldig gebruik van een void-expressie"
-#: cp/typeck.c:4473
+#: cp/typeck.c:4204
msgid "cannot create pointer to reference member `%D'"
msgstr ""
-#: cp/typeck.c:4536
+#: cp/typeck.c:4266
msgid "cannot take the address of `this', which is an rvalue expression"
msgstr ""
-#: cp/typeck.c:4555
+#: cp/typeck.c:4285
msgid "address requested for `%D', which is declared `register'"
msgstr ""
-#: cp/typeck.c:4682
-msgid "static_cast from type `%T' to type `%T' casts away constness"
+# vertaling voor 'statement'?
+#: cp/typeck.c:4353
+#, fuzzy, c-format
+msgid "%s expression list treated as compound expression"
+msgstr "expressie-statement heeft onvolledig type"
+
+#: cp/typeck.c:4426
+msgid "%s from type `%T' to type `%T' casts away constness"
msgstr ""
-#: cp/typeck.c:4871
+#: cp/typeck.c:4618
msgid "invalid static_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4910
+#: cp/typeck.c:4658
msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4930
+#: cp/typeck.c:4678
msgid "reinterpret_cast from `%T' to `%T' loses precision"
msgstr ""
-#: cp/typeck.c:4943
-msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
-msgstr ""
-
-#: cp/typeck.c:4952
+#: cp/typeck.c:4697
#, fuzzy
msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object"
msgstr "ANSI C verbiedt voorwaardelijke expressies tussen 0 en een functiepointer"
-#: cp/typeck.c:4958
+#: cp/typeck.c:4703
msgid "invalid reinterpret_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4985
+#: cp/typeck.c:4731
msgid "invalid use of const_cast with type `%T', which is not a pointer, reference, nor a pointer-to-data-member type"
msgstr ""
-#: cp/typeck.c:4988
+#: cp/typeck.c:4734
msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type"
msgstr ""
-#: cp/typeck.c:5011
+#: cp/typeck.c:4757
msgid "invalid const_cast of an rvalue of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:5027
+#: cp/typeck.c:4774
msgid "invalid const_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:5069 cp/typeck.c:5074
+#: cp/typeck.c:4814 cp/typeck.c:4819
#, fuzzy
msgid "ISO C++ forbids casting to an array type `%T'"
msgstr "ANSI C verbiedt casts naar een union-type"
-#: cp/typeck.c:5082
+#: cp/typeck.c:4827
#, fuzzy
msgid "invalid cast to function type `%T'"
msgstr "ongeldige opslagklasse voor functie `%s'"
-#: cp/typeck.c:5138
+#: cp/typeck.c:4883
#, fuzzy
msgid "cast from `%T' to `%T' discards qualifiers from pointer target type"
msgstr "cast laat qualifiers van doeltype van pointer vallen"
-#: cp/typeck.c:5184
+#: cp/typeck.c:4929
#, fuzzy
msgid "cast from `%T' to `%T' increases required alignment of target type"
msgstr "cast verhoogt het benodigde alignment van het doeltype"
-#: cp/typeck.c:5357
+#: cp/typeck.c:5093
msgid " in evaluation of `%Q(%#T, %#T)'"
msgstr ""
-#: cp/typeck.c:5399
+#: cp/typeck.c:5135
#, fuzzy
msgid "ISO C++ forbids cast to non-reference type used as lvalue"
msgstr "ANSI C verbiedt casts naar een union-type"
-#: cp/typeck.c:5463
+#: cp/typeck.c:5208
#, fuzzy
msgid "incompatible types in assignment of `%T' to `%T'"
msgstr "incompatibel type voor argument %d van `%s'"
-#: cp/typeck.c:5470
+#: cp/typeck.c:5215
#, fuzzy
msgid "ISO C++ forbids assignment of arrays"
msgstr "ANSI C verbiedt array `%s' met lengte 0"
-#: cp/typeck.c:5577
+#: cp/typeck.c:5314
msgid " in pointer to member function conversion"
msgstr ""
-#: cp/typeck.c:5585
+#: cp/typeck.c:5322
msgid " in pointer to member conversion"
msgstr ""
#. This is a reinterpret cast, we choose to do nothing.
-#: cp/typeck.c:5596 cp/typeck.c:5615
-msgid "pointer to member cast via virtual base `%T' of `%T'"
-msgstr ""
+#: cp/typeck.c:5332 cp/typeck.c:5347
+#, fuzzy
+msgid "pointer to member cast via virtual base `%T'"
+msgstr "pointer naar een lid gebruikt in rekensom"
-#: cp/typeck.c:5619
-msgid "pointer to member conversion via virtual base `%T' of `%T'"
-msgstr ""
+#: cp/typeck.c:5350
+#, fuzzy
+msgid "pointer to member conversion via virtual base `%T'"
+msgstr "pointer naar lid-functie gebruikt in rekensom"
-#: cp/typeck.c:5695
+#: cp/typeck.c:5420
msgid "invalid conversion to type `%T' from type `%T'"
msgstr ""
-#: cp/typeck.c:5860
+#: cp/typeck.c:5576
msgid "passing NULL used for non-pointer %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5863
+#: cp/typeck.c:5579
msgid "%s to non-pointer type `%T' from NULL"
msgstr ""
-#: cp/typeck.c:5871
+#: cp/typeck.c:5587
#, fuzzy
msgid "passing `%T' for %s %P of `%D'"
msgstr "doorgeven van argument %d van `%s'"
-#: cp/typeck.c:5874
+#: cp/typeck.c:5590
msgid "%s to `%T' from `%T'"
msgstr ""
-#: cp/typeck.c:5884
+#: cp/typeck.c:5600
msgid "passing negative value `%E' for %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5887
+#: cp/typeck.c:5603
msgid "%s of negative value `%E' to `%T'"
msgstr ""
-#: cp/typeck.c:5982
+#: cp/typeck.c:5691
msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'"
msgstr ""
-#: cp/typeck.c:5985
+#: cp/typeck.c:5694
msgid "cannot convert `%T' to `%T' in %s"
msgstr ""
-#: cp/typeck.c:6073 cp/typeck.c:6075
+#: cp/typeck.c:5771 cp/typeck.c:5773
#, fuzzy
msgid "in passing argument %P of `%+D'"
msgstr "doorgeven van argument %d van `%s'"
-#: cp/typeck.c:6190
+#: cp/typeck.c:5880
msgid "returning reference to temporary"
msgstr ""
-#: cp/typeck.c:6197
+#: cp/typeck.c:5887
msgid "reference to non-lvalue returned"
msgstr ""
-#: cp/typeck.c:6209
+#: cp/typeck.c:5899
#, fuzzy
msgid "reference to local variable `%D' returned"
msgstr "adres van globale registervariabele `%s' gevraagd"
-#: cp/typeck.c:6212
+#: cp/typeck.c:5902
#, fuzzy
msgid "address of local variable `%D' returned"
msgstr "adres van globale registervariabele `%s' gevraagd"
-#: cp/typeck.c:6243
+#: cp/typeck.c:5932
msgid "returning a value from a destructor"
msgstr ""
#. If a return statement appears in a handler of the
#. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.c:6251
+#: cp/typeck.c:5940
msgid "cannot return from a handler of a function-try-block of a constructor"
msgstr ""
#. You can't return a value from a constructor.
-#: cp/typeck.c:6254
+#: cp/typeck.c:5943
msgid "returning a value from a constructor"
msgstr ""
-#: cp/typeck.c:6271
+#: cp/typeck.c:5966
#, fuzzy
-msgid "return-statement with no value, in function declared with a non-void return type"
+msgid "return-statement with no value, in function returning '%T'"
msgstr "`return' zonder waarde in een functie die een niet-void waarde teruggeeft"
-#: cp/typeck.c:6287
+#: cp/typeck.c:5983
#, fuzzy
-msgid "return-statement with a value, in function declared with a void return type"
+msgid "return-statement with a value, in function returning 'void'"
msgstr "`return' met waarde in een functie die void teruggeeft"
-#: cp/typeck.c:6308
+#: cp/typeck.c:6005
msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)"
msgstr ""
-#: cp/typeck2.c:54
+#: cp/typeck2.c:55
#, fuzzy
msgid "type `%T' is not a base type for type `%T'"
msgstr "`%s' is geen bestand, pipe of tty"
-#: cp/typeck2.c:157
+#: cp/typeck2.c:151
msgid "cannot declare variable `%D' to be of type `%T'"
msgstr ""
-#: cp/typeck2.c:160
+#: cp/typeck2.c:154
msgid "cannot declare parameter `%D' to be of type `%T'"
msgstr ""
-#: cp/typeck2.c:163
+#: cp/typeck2.c:157
msgid "cannot declare field `%D' to be of type `%T'"
msgstr ""
-#: cp/typeck2.c:167
+#: cp/typeck2.c:161
#, fuzzy
msgid "invalid return type for member function `%#D'"
msgstr "de terugkeerwaarde van een functie kan geen funtie zijn"
-#: cp/typeck2.c:169
+#: cp/typeck2.c:163
#, fuzzy
msgid "invalid return type for function `%#D'"
msgstr "ongeldige opslagklasse voor functie `%s'"
-#: cp/typeck2.c:172
+#: cp/typeck2.c:166
msgid "cannot allocate an object of type `%T'"
msgstr ""
-#: cp/typeck2.c:179
+#: cp/typeck2.c:173
msgid " because the following virtual functions are abstract:"
msgstr ""
-#: cp/typeck2.c:181
+#: cp/typeck2.c:175
msgid "\t%#D"
msgstr ""
-#: cp/typeck2.c:184
+#: cp/typeck2.c:178
msgid " since type `%T' has abstract virtual functions"
msgstr ""
-#: cp/typeck2.c:338
+#: cp/typeck2.c:426
msgid "constructor syntax used, but no constructor declared for type `%T'"
msgstr ""
-#: cp/typeck2.c:349
-msgid "comma expression used to initialize return value"
-msgstr ""
-
-#: cp/typeck2.c:358
+#: cp/typeck2.c:439
msgid "cannot initialize arrays using this syntax"
msgstr ""
-#: cp/typeck2.c:473
+#: cp/typeck2.c:544
msgid "initializing array with parameter list"
msgstr ""
-#: cp/typeck2.c:529
+#: cp/typeck2.c:599
msgid "initializer for scalar variable requires one element"
msgstr ""
-#: cp/typeck2.c:536
+#: cp/typeck2.c:606
#, fuzzy
msgid "braces around scalar initializer for `%T'"
msgstr "accolades rond scalaire beginwaarde"
-#: cp/typeck2.c:539
+#: cp/typeck2.c:609
#, fuzzy
msgid "ignoring extra initializers for `%T'"
msgstr "niet-constante beginwaarde voor `%s'"
-#: cp/typeck2.c:551
+#: cp/typeck2.c:621
#, fuzzy
msgid "variable-sized object of type `%T' may not be initialized"
msgstr "object van variabele lengte mag geen beginwaarde krijgen"
-#: cp/typeck2.c:561
+#: cp/typeck2.c:631
msgid "subobject of type `%T' must be initialized by constructor, not by `%E'"
msgstr ""
-#: cp/typeck2.c:627
+#: cp/typeck2.c:696
msgid "aggregate has a partly bracketed initializer"
msgstr ""
-#: cp/typeck2.c:665 cp/typeck2.c:770
+#: cp/typeck2.c:734 cp/typeck2.c:839
msgid "non-trivial labeled initializers"
msgstr ""
-#: cp/typeck2.c:682
+#: cp/typeck2.c:751
msgid "non-empty initializer for array of empty elements"
msgstr ""
-#: cp/typeck2.c:736
+#: cp/typeck2.c:805
msgid "initializer list for object of class with virtual base classes"
msgstr ""
-#: cp/typeck2.c:742
+#: cp/typeck2.c:811
msgid "initializer list for object of class with base classes"
msgstr ""
-#: cp/typeck2.c:748
+#: cp/typeck2.c:817
msgid "initializer list for object using virtual functions"
msgstr ""
-#: cp/typeck2.c:811 cp/typeck2.c:827
+#: cp/typeck2.c:879 cp/typeck2.c:895
#, fuzzy
msgid "missing initializer for member `%D'"
msgstr "ongeldige beginwaarde voor member `%s'"
-#: cp/typeck2.c:816
+#: cp/typeck2.c:884
#, fuzzy
msgid "uninitialized const member `%D'"
msgstr "ongeldige beginwaarde voor member `%s'"
-#: cp/typeck2.c:818
+#: cp/typeck2.c:886
#, fuzzy
msgid "member `%D' with uninitialized const fields"
msgstr "parameter `%s' krijgt beginwaarde"
-#: cp/typeck2.c:821
+#: cp/typeck2.c:889
#, fuzzy
msgid "member `%D' is uninitialized reference"
msgstr "parameter `%s' krijgt beginwaarde"
-#: cp/typeck2.c:868
+#: cp/typeck2.c:936
msgid "index value instead of field name in union initializer"
msgstr ""
-#: cp/typeck2.c:880
+#: cp/typeck2.c:948
#, fuzzy
msgid "no field `%D' in union being initialized"
msgstr "onbekend veld `%s' opgegeven in beginwaarde"
-#: cp/typeck2.c:888
+#: cp/typeck2.c:956
msgid "union `%T' with no named members cannot be initialized"
msgstr ""
-#: cp/typeck2.c:924
+#: cp/typeck2.c:992
msgid "excess elements in aggregate initializer"
msgstr ""
-#: cp/typeck2.c:1038
+#: cp/typeck2.c:1100
msgid "circular pointer delegation detected"
msgstr ""
-#: cp/typeck2.c:1051
+#: cp/typeck2.c:1113
#, fuzzy
msgid "base operand of `->' has non-pointer type `%T'"
msgstr "grootte van array `%s' is van een niet-integraal type"
-#: cp/typeck2.c:1065
+#: cp/typeck2.c:1137
msgid "result of `operator->()' yields non-pointer result"
msgstr ""
-#: cp/typeck2.c:1067
+#: cp/typeck2.c:1139
msgid "base operand of `->' is not a pointer"
msgstr ""
-#: cp/typeck2.c:1133
+#: cp/typeck2.c:1162
msgid "`%E' cannot be used as a member pointer, since it is of type `%T'"
msgstr ""
-#: cp/typeck2.c:1140
+#: cp/typeck2.c:1170
msgid "cannot apply member pointer `%E' to `%E', which is of non-aggregate type `%T'"
msgstr ""
-#: cp/typeck2.c:1149
+#: cp/typeck2.c:1180
msgid "member type `%T::' incompatible with object type `%T'"
msgstr ""
-#: cp/typeck2.c:1186
-#, fuzzy
-msgid "`%T' fails to be a typedef or built-in type"
-msgstr "`%s' is geen typedef of ingebouwd type"
-
-#: cp/typeck2.c:1259
-#, c-format
-msgid "ISO C++ forbids defining types within %s"
-msgstr ""
-
-#: cp/typeck2.c:1384
+#: cp/typeck2.c:1396
#, fuzzy
msgid "call to function `%D' which throws incomplete type `%#T'"
msgstr "parameter `%s' wijst naar een onvolledig type"
-#: cp/typeck2.c:1387
+#: cp/typeck2.c:1399
#, fuzzy
msgid "call to function which throws incomplete type `%#T'"
msgstr "parameter `%s' wijst naar een onvolledig type"
#. XXX Not i18n clean.
-#: cp/cp-tree.h:3936
+#: cp/cp-tree.h:3756
#, c-format
msgid "%s is deprecated, please see the documentation for details"
msgstr ""
-#: cp/lang-options.h:29
-msgid "Do not obey access control semantics"
-msgstr ""
-
-#: cp/lang-options.h:31
-msgid "Change when template instances are emitted"
-msgstr ""
-
-#: cp/lang-options.h:36
-msgid "Check the return value of new"
-msgstr ""
-
-#: cp/lang-options.h:39
-msgid "Reduce size of object files"
-msgstr ""
-
-#: cp/lang-options.h:43
-msgid "Make string literals `char[]' instead of `const char[]'"
-msgstr ""
-
-#: cp/lang-options.h:46
-msgid "Dump the entire translation unit to a file"
-msgstr ""
-
-#: cp/lang-options.h:48
-#, fuzzy
-msgid "Do not inline member functions by default"
-msgstr "kan functie `main' niet inline maken"
-
-#: cp/lang-options.h:51
-msgid "Do not generate run time type descriptor information"
-msgstr ""
-
-#: cp/lang-options.h:56
-msgid "Do not generate code to check exception specifications"
-msgstr ""
-
-#: cp/lang-options.h:61
-msgid "Scope of for-init-statement vars extends outside"
-msgstr ""
-
-#: cp/lang-options.h:64
-msgid "Do not recognize GNU defined keywords"
-msgstr ""
-
-#: cp/lang-options.h:68
-msgid "Enable support for huge objects"
-msgstr ""
-
-#: cp/lang-options.h:72
-#, fuzzy
-msgid "Export functions even if they can be inlined"
-msgstr "de terugkeerwaarde van een functie kan geen funtie zijn"
-
-#: cp/lang-options.h:75
-#, fuzzy
-msgid "Only emit explicit template instantiations"
-msgstr "herhaalde definitie `%s'"
-
-#: cp/lang-options.h:78
-#, fuzzy
-msgid "Only emit explicit instantiations of inline templates"
-msgstr "impliciete declaratie van functie `%s'"
-
-#: cp/lang-options.h:84
-msgid "Don't pedwarn about uses of Microsoft extensions"
-msgstr ""
-
-#: cp/lang-options.h:87
-msgid "Recognize and/bitand/bitor/compl/not/or/xor"
-msgstr ""
-
-#: cp/lang-options.h:91
-msgid "Disable optional diagnostics"
-msgstr ""
-
-#: cp/lang-options.h:93
-msgid "Downgrade conformance errors to warnings"
-msgstr ""
-
-#: cp/lang-options.h:96
-msgid "Enable automatic template instantiation"
-msgstr ""
-
-#: cp/lang-options.h:101
-msgid "Display statistics accumulated during compilation"
-msgstr ""
-
-#: cp/lang-options.h:104
-msgid "Specify maximum template instantiation depth"
-msgstr ""
-
-#: cp/lang-options.h:106
-msgid "Use __cxa_atexit to register destructors"
-msgstr ""
-
-#: cp/lang-options.h:109
-msgid "Discard unused virtual functions"
-msgstr ""
-
-#: cp/lang-options.h:112
-msgid "Implement vtables using thunks"
-msgstr ""
-
-#: cp/lang-options.h:115
-msgid "Emit common-like symbols as weak symbols"
-msgstr ""
-
-#: cp/lang-options.h:118
-msgid "Emit cross referencing information"
-msgstr ""
-
-#: cp/lang-options.h:122
-msgid "Warn about inconsistent return types"
-msgstr ""
-
-#: cp/lang-options.h:125
-msgid "Warn about overloaded virtual function names"
-msgstr ""
-
-#: cp/lang-options.h:129
-msgid "Don't warn when all ctors/dtors are private"
-msgstr ""
-
-#: cp/lang-options.h:131
-msgid "Warn about non virtual destructors"
-msgstr ""
-
-#: cp/lang-options.h:134
-#, fuzzy
-msgid "Warn when a function is declared extern, then inline"
-msgstr "geneste functie `%s' is als `extern' gedeclareerd"
-
-#: cp/lang-options.h:137
-#, fuzzy
-msgid "Warn when the compiler reorders code"
-msgstr "incompatibele record-modus"
-
-#: cp/lang-options.h:140
-msgid "Warn when synthesis behavior differs from Cfront"
-msgstr ""
-
-#: cp/lang-options.h:144
-msgid "Don't warn when type converting pointers to member functions"
-msgstr ""
-
-#: cp/lang-options.h:146
-msgid "Warn about violations of Effective C++ style rules"
-msgstr ""
-
-#: cp/lang-options.h:149
-#, fuzzy
-msgid "Warn when overload promotes from unsigned to signed"
-msgstr "vergelijking van gepromoveerde ~unsigned met unsigned"
-
-#: cp/lang-options.h:152
-msgid "Warn if a C style cast is used in a program"
-msgstr ""
-
-#: cp/lang-options.h:156
-msgid "Don't warn when non-templatized friend functions are declared within a template"
-msgstr ""
-
-#: cp/lang-options.h:159
-msgid "Don't announce deprecation of compiler features"
-msgstr ""
-
-#: f/bad.c:387
+#: f/bad.c:388
msgid "note:"
msgstr ""
# Dit zou misschien beter 'warning' blijven
-#: f/bad.c:391
+#: f/bad.c:392
msgid "warning:"
msgstr "let op:"
-#: f/bad.c:395
+#: f/bad.c:396
msgid "fatal:"
msgstr ""
-#: f/bad.c:437
+#: f/bad.c:438
msgid "(continued):"
msgstr ""
-#: f/bad.c:487 f/bad.c:505
+#: f/bad.c:488 f/bad.c:506
msgid "[REPORT BUG!!] %"
msgstr ""
-#: f/bad.c:494 f/bad.c:526
+#: f/bad.c:495 f/bad.c:527
msgid "[REPORT BUG!!]"
msgstr ""
-#: f/com.c:3132
+#: f/com.c:3125
#, no-c-format
msgid "ASSIGN'ed label cannot fit into `%A' at %0 -- using wider sibling"
msgstr ""
-#: f/com.c:11623
+#: f/com.c:11565
msgid "no INTEGER type can hold a pointer on this configuration"
msgstr "geen enkel INTEGER-type kan een pointer bevatten in deze configuratie"
-#: f/com.c:11844
+#: f/com.c:11839
#, c-format
msgid "configuration: REAL, INTEGER, and LOGICAL are %d bits wide,"
msgstr ""
-#: f/com.c:11846
+#: f/com.c:11841
#, c-format
msgid "and pointers are %d bits wide, but g77 doesn't yet work"
msgstr ""
-#: f/com.c:11848
+#: f/com.c:11843
msgid "properly unless they all are 32 bits wide"
msgstr ""
-#: f/com.c:11849
+#: f/com.c:11844
msgid "Please keep this in mind before you report bugs."
msgstr ""
#. I/O will probably crash.
-#: f/com.c:11857
+#: f/com.c:11852
#, c-format
msgid "configuration: char * holds %d bits, but ftnlen only %d"
msgstr ""
#. ASSIGN 10 TO I will crash.
-#: f/com.c:11866
+#: f/com.c:11861
#, c-format
msgid ""
"configuration: char * holds %d bits, but INTEGER only %d --\n"
" ASSIGN statement might fail"
msgstr ""
-#: f/com.c:13681
+#: f/com.c:13677
#, fuzzy
msgid "In statement function"
msgstr "teveel argumenten voor functie"
-#: f/com.c:13691
+#: f/com.c:13687
+#, c-format
msgid "Outside of any program unit:\n"
msgstr ""
-#: f/com.c:15320
+#: f/com.c:15283
#, no-c-format
msgid "%A from %B at %0%C"
msgstr ""
-#: f/com.c:15497
-msgid "directory name must immediately follow -I"
-msgstr ""
-
-#: f/com.c:15640
+#: f/com.c:15593
#, no-c-format
msgid "At %0, INCLUDE file %A exists, but is not readable"
msgstr ""
-#: f/com.c:15675
+#: f/com.c:15628
#, no-c-format
msgid "At %0, INCLUDE nesting too deep"
msgstr ""
-#: f/expr.c:9614
+#: f/expr.c:8706
#, no-c-format
msgid "Two arithmetic operators in a row at %0 and %1 -- use parentheses"
msgstr ""
-#: f/expr.c:9664
+#: f/expr.c:8756
#, no-c-format
msgid "Operator at %0 has lower precedence than that at %1 -- use parentheses"
msgstr ""
-#: f/expr.c:10525
+#: f/expr.c:9639
#, no-c-format
msgid "Use .EQV./.NEQV. instead of .EQ./.NE. at %0 for LOGICAL operands at %1 and %2"
msgstr ""
-#: f/expr.c:10896
+#: f/expr.c:10010
#, no-c-format
msgid "Unsupported operand for ** at %1 -- converting to default INTEGER"
msgstr ""
-#: f/g77spec.c:234
+#: f/g77spec.c:230
#, c-format
msgid "overflowed output arg list for `%s'"
msgstr ""
-#: f/g77spec.c:373
+#: f/g77spec.c:367
#, fuzzy
msgid "--driver no longer supported"
msgstr "-pipe wordt niet ondersteund"
-#: f/g77spec.c:386
+#: f/g77spec.c:380
#, fuzzy, c-format
msgid "argument to `%s' missing"
msgstr "argument van `%s' moet van een integraal type zijn."
-#: f/g77spec.c:390
+#: f/g77spec.c:384
msgid "no input files; unwilling to write output files"
msgstr ""
@@ -18960,132 +18256,127 @@ msgstr ""
msgid "Implicit declaration of `%A' at %0"
msgstr "eerdere impliciete declaratie van `%s'"
-#: f/lex.c:326
+#: f/lex.c:321
#, fuzzy, no-c-format
msgid "Non-ISO-C-standard escape sequence `\\%A' at %0"
msgstr "niet-ANSI-standaard escape sequence `\\%c'"
-#: f/lex.c:345
+#: f/lex.c:340
#, fuzzy, no-c-format
msgid "Unknown escape sequence `\\%A' at %0"
msgstr "onbekende escape sequence `\\%c'"
-#: f/lex.c:354
+#: f/lex.c:349
#, fuzzy, no-c-format
msgid "Unterminated escape sequence `\\' at %0"
msgstr "onbekende escape sequence `\\%c'"
-#: f/lex.c:365
+#: f/lex.c:360
#, fuzzy, no-c-format
msgid "Unknown escape sequence `\\' followed by char code 0x%A at %0"
msgstr "onbekende escape sequence: `\\' gevolgd door karaktercode 0x%x"
-#: f/lex.c:393
+#: f/lex.c:388
#, fuzzy, no-c-format
msgid "\\x used at %0 with no following hex digits"
msgstr "\\x gebruikt zonder daaropvolgende hexadecimale cijfers"
-#: f/lex.c:407
+#: f/lex.c:402
#, fuzzy, no-c-format
msgid "Hex escape at %0 out of range"
msgstr "hexadecimale escape-waarde buiten bereik"
# "escape-sequentie"?! Maar wat is er beter?
-#: f/lex.c:441
+#: f/lex.c:436
#, fuzzy, no-c-format
msgid "Escape sequence at %0 out of range for character"
msgstr "escape-sequentie buiten bereik voor karakter"
-#: f/lex.c:595
+#: f/lex.c:590
msgid "hex escape out of range"
msgstr "hexadecimale escape-waarde buiten bereik"
-#: f/lex.c:648
+#: f/lex.c:643
#, c-format
msgid "non-ANSI-standard escape sequence, `\\%c'"
msgstr "niet-ANSI-standaard escape sequence `\\%c'"
-#: f/lex.c:661
+#: f/lex.c:656
#, fuzzy, c-format
msgid "non-ISO escape sequence `\\%c'"
msgstr "niet-ANSI escape sequence `\\%c'"
-#: f/lex.c:665
+#: f/lex.c:660
#, c-format
msgid "unknown escape sequence `\\%c'"
msgstr "onbekende escape sequence `\\%c'"
-#: f/lex.c:667
+#: f/lex.c:662
#, c-format
msgid "unknown escape sequence: `\\' followed by char code 0x%x"
msgstr "onbekende escape sequence: `\\' gevolgd door karaktercode 0x%x"
-#: f/lex.c:744
+#: f/lex.c:739
msgid "badly formed directive -- no closing quote"
msgstr ""
-#: f/lex.c:802
+#: f/lex.c:797
msgid "#-lines for entering and leaving files don't match"
msgstr "#-lijnen voor het binnengaan en verlaten van bestanden komen niet overeen"
-#: f/lex.c:964
+#: f/lex.c:957
msgid "bad directive -- missing close-quote"
msgstr ""
-#: f/lex.c:1078
-#, c-format
-msgid "ignoring pragma: %s"
-msgstr "pragma wordt genegeerd: %s"
-
-#: f/lex.c:1156
+#: f/lex.c:1096
msgid "invalid #ident"
msgstr "ongeldige #ident"
-#: f/lex.c:1173
+#: f/lex.c:1113
msgid "undefined or invalid # directive"
msgstr "ongedefinieerd of ongeldig #-commando"
-#: f/lex.c:1229
+#: f/lex.c:1168
msgid "invalid #line"
msgstr "ongeldige #line"
-#: f/lex.c:1285 f/lex.c:1329
+#: f/lex.c:1224 f/lex.c:1268
msgid "use `#line ...' instead of `# ...' in first line"
msgstr ""
-#: f/lex.c:1339
+#: f/lex.c:1278
msgid "invalid #-line"
msgstr "ongeldige #-lijn"
-#: f/lex.c:1432
+#: f/lex.c:1371
#, no-c-format
msgid "Null character at %0 -- line ignored"
msgstr ""
-#: f/stb.c:12078
+#: f/stb.c:9177
#, no-c-format
msgid "INCLUDE at %0 not the only statement on the source line"
msgstr ""
-#: f/ste.c:1400 f/ste.c:1747
+#: f/ste.c:1397 f/ste.c:1744
msgid "ASSIGNed FORMAT specifier is too small"
msgstr ""
#. ~~~Someday handle CHARACTER*1, CHARACTER*N
-#: f/ste.c:2624
+#: f/ste.c:2621
#, no-c-format
msgid "SELECT CASE on CHARACTER type (at %0) not supported -- sorry"
msgstr ""
-#: f/ste.c:2729
+#: f/ste.c:2725
msgid "SELECT (at %0) has duplicate cases -- check integer overflow of CASE(s)"
msgstr ""
-#: f/ste.c:2959
+#: f/ste.c:2957
msgid "ASSIGN to variable that is too small"
msgstr "ASSIGN naar een variabele die te klein is"
-#: f/ste.c:2987
+#: f/ste.c:2989
msgid "ASSIGNed GOTO target variable is too small"
msgstr ""
@@ -19094,333 +18385,20 @@ msgstr ""
msgid "Local adjustable symbol `%A' at %0"
msgstr ""
-#: f/target.c:2550
+#: f/target.c:2545
msgid "data initializer on host with different endianness"
msgstr ""
-#: f/top.c:237
-#, c-format
-msgid "%s no longer supported -- try -fvxt"
-msgstr ""
-
-#: f/top.c:239
-#, c-format
-msgid "%s no longer supported -- try -fno-vxt -ff90"
-msgstr ""
-
-#: f/top.c:307 f/top.c:309
-#, c-format
-msgid "%s disabled, use normal debugging flags"
-msgstr ""
-
-#: f/lang-options.h:33
-msgid "Print g77-specific compiler version info, run internal tests"
-msgstr ""
-
-#: f/lang-options.h:37
-msgid "Program is written in typical FORTRAN 66 dialect"
-msgstr ""
-
-#: f/lang-options.h:40
-msgid "Program is written in typical Unix f77 dialect"
-msgstr ""
-
-#: f/lang-options.h:42
-msgid "Program does not use Unix-f77 dialectal features"
-msgstr ""
-
-#: f/lang-options.h:44
-msgid "Program is written in Fortran-90-ish dialect"
-msgstr ""
-
-#: f/lang-options.h:48
-msgid "Treat local vars and COMMON blocks as if they were named in SAVE statements"
-msgstr ""
-
-#: f/lang-options.h:50
-msgid "Allow $ in symbol names"
-msgstr ""
-
-#: f/lang-options.h:54
-msgid "f2c-compatible code need not be generated"
-msgstr ""
-
-#: f/lang-options.h:57
-msgid "Unsupported; do not generate libf2c-calling code"
-msgstr ""
-
-#: f/lang-options.h:59
-msgid "Unsupported; affects code-generation of arrays"
-msgstr ""
-
-#: f/lang-options.h:62
-msgid "Program is written in Fortran-90-ish free form"
-msgstr ""
-
-#: f/lang-options.h:67
-msgid "Warn about use of (only a few for now) Fortran extensions"
-msgstr ""
-
-#: f/lang-options.h:70
-msgid "Program is written in VXT (Digital-like) FORTRAN"
-msgstr ""
-
-#: f/lang-options.h:73
-msgid "Disallow all ugly features"
-msgstr ""
-
-#: f/lang-options.h:76
-msgid "Hollerith and typeless constants not passed as arguments"
-msgstr ""
-
-#: f/lang-options.h:78
-msgid "Allow ordinary copying of ASSIGN'ed vars"
-msgstr ""
-
-#: f/lang-options.h:81
-msgid "Dummy array dimensioned to (1) is assumed-size"
-msgstr ""
-
-#: f/lang-options.h:84
-msgid "Trailing comma in procedure call denotes null argument"
-msgstr ""
-
-#: f/lang-options.h:87
-msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
-msgstr ""
-
-#: f/lang-options.h:91
-msgid "Initialization via DATA and PARAMETER is type-compatible"
-msgstr ""
-
-#: f/lang-options.h:93
-msgid "Allow INTEGER and LOGICAL interchangeability"
-msgstr ""
-
-#: f/lang-options.h:96
-msgid "Print internal debugging-related info"
-msgstr ""
-
-# Is 'mode' enkel van toepassing op 'string', of ook op 'array'?
-#: f/lang-options.h:99
-#, fuzzy
-msgid "Initialize local vars and arrays to zero"
-msgstr "beginwaarde is geen array of string-modus"
-
-#: f/lang-options.h:103
-msgid "Backslashes in character/hollerith constants not special (C-style)"
-msgstr ""
-
-#: f/lang-options.h:105
-msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
-msgstr ""
-
-#: f/lang-options.h:109
-msgid "Disable the appending of underscores to externals"
-msgstr ""
-
-#: f/lang-options.h:112
-msgid "Never append a second underscore to externals"
-msgstr ""
-
-#: f/lang-options.h:114
-msgid "Intrinsics spelled as e.g. SqRt"
-msgstr ""
-
-#: f/lang-options.h:116
-msgid "Intrinsics in uppercase"
-msgstr ""
-
-#: f/lang-options.h:119
-msgid "Intrinsics letters in arbitrary cases"
-msgstr ""
-
-#: f/lang-options.h:121
-msgid "Language keywords spelled as e.g. IOStat"
-msgstr ""
-
-#: f/lang-options.h:123
-msgid "Language keywords in uppercase"
-msgstr ""
-
-#: f/lang-options.h:126
-msgid "Language keyword letters in arbitrary cases"
-msgstr ""
-
-#: f/lang-options.h:128
-msgid "Internally convert most source to uppercase"
-msgstr ""
-
-#: f/lang-options.h:131
-msgid "Internally preserve source case"
-msgstr ""
-
-#: f/lang-options.h:133
-msgid "Symbol names spelled in mixed case"
-msgstr ""
-
-#: f/lang-options.h:135
-msgid "Symbol names in uppercase"
-msgstr ""
-
-#: f/lang-options.h:137
-msgid "Symbol names in lowercase"
-msgstr ""
-
-#: f/lang-options.h:140
-msgid "Program written in uppercase"
-msgstr ""
-
-#: f/lang-options.h:142
-msgid "Program written in lowercase"
-msgstr ""
-
-#: f/lang-options.h:144
-msgid "Program written in strict mixed-case"
-msgstr ""
-
-#: f/lang-options.h:146
-msgid "Compile as if program written in uppercase"
-msgstr ""
-
-#: f/lang-options.h:148
-msgid "Compile as if program written in lowercase"
-msgstr ""
-
-#: f/lang-options.h:150
-msgid "Preserve all spelling (case) used in program"
-msgstr ""
-
-#: f/lang-options.h:152
-msgid "Delete libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:154
-msgid "Disable libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:157
-msgid "Hide libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:159
-msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:161
-msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:164
-msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:166
-msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:168
-msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:171
-msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:173
-msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
-msgstr ""
-
-#: f/lang-options.h:175
-msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:178
-msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:180
-msgid "Delete MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:182
-msgid "Disable MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:185
-msgid "Hide MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:187
-msgid "Delete libU77 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:189
-msgid "Disable libU77 intrinsics"
+#: f/top.c:244
+msgid "-fvxt-not-f90 no longer supported -- try -fvxt"
msgstr ""
-#: f/lang-options.h:192
-msgid "Hide libU77 intrinsics"
+#: f/top.c:248
+msgid "-ff90-not-vxt no longer supported -- try -fno-vxt -ff90"
msgstr ""
-#: f/lang-options.h:194
-msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:196
-msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:199
-msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:201
-msgid "Treat initial values of 0 like non-zero values"
-msgstr ""
-
-#: f/lang-options.h:204
-msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
-msgstr ""
-
-#: f/lang-options.h:207
-msgid "Take at least one trip through each iterative DO loop"
-msgstr ""
-
-#: f/lang-options.h:211
-msgid "Print names of program units as they are compiled"
-msgstr ""
-
-#: f/lang-options.h:214
-msgid "Disable fatal diagnostics about inter-procedural problems"
-msgstr ""
-
-#: f/lang-options.h:216
-msgid "Make prefix-radix non-decimal constants be typeless"
-msgstr ""
-
-#: f/lang-options.h:219
-msgid "Generate code to check subscript and substring bounds"
-msgstr ""
-
-#: f/lang-options.h:222
-msgid "Fortran-specific form of -fbounds-check"
-msgstr ""
-
-#: f/lang-options.h:226
-msgid "Disable warnings about inter-procedural problems"
-msgstr ""
-
-#: f/lang-options.h:230
-msgid "Warn about constructs with surprising meanings"
-msgstr ""
-
-#: f/lang-options.h:235
-msgid "Add a directory for INCLUDE searching"
-msgstr ""
-
-#: f/lang-options.h:237
-msgid "Set the maximum line length"
+#: f/top.c:318
+msgid "-fdebug-kludge is disabled, use normal debugging flags"
msgstr ""
#: f/bad.def:39
@@ -20326,72 +19304,95 @@ msgstr ""
msgid "In anything"
msgstr ""
-#: java/check-init.c:917
+#: java/check-init.c:905
#, c-format
msgid "internal error in check-init: tree code not implemented: %s"
msgstr ""
-#: java/check-init.c:990
-#, fuzzy, c-format
-msgid "final field '%s' may not have been initialized"
+#: java/check-init.c:977
+#, fuzzy
+msgid "%Jfinal field '%D' may not have been initialized"
msgstr "object van variabele lengte mag geen beginwaarde krijgen"
-#: java/class.c:539 java/class.c:564
+#: java/class.c:592 java/class.c:616
msgid "internal error - too many interface type"
msgstr ""
-#: java/class.c:677
+#: java/class.c:715
msgid "bad method signature"
msgstr ""
-#: java/class.c:726
+#: java/class.c:759
msgid "misplaced ConstantValue attribute (not in any field)"
msgstr ""
-#: java/class.c:728
+#: java/class.c:761
#, fuzzy, c-format
msgid "duplicate ConstantValue attribute for field '%s'"
msgstr "niet-constante waarde voor tagveld `%s'"
-#: java/class.c:739
+#: java/class.c:772
#, c-format
msgid "ConstantValue attribute of field '%s' has wrong type"
msgstr ""
-#: java/class.c:1103
+#: java/class.c:1067
#, c-format
msgid "field '%s' not found in class"
msgstr ""
-#: java/class.c:1365
-msgid "abstract method in non-abstract class"
+#: java/class.c:1324
+msgid "%Jabstract method in non-abstract class"
msgstr ""
# goede vertaling voor 'overrides'?
-#: java/class.c:2078
-#, c-format
-msgid "non-static method '%s' overrides static method"
+#: java/class.c:2140
+#, fuzzy
+msgid "%Jnon-static method '%D' overrides static method"
msgstr "niet-static methode '%s' vervangt static methode"
-#: java/decl.c:1541
+#: java/decl.c:1018
+#, fuzzy
+msgid "%J'%D' used prior to declaration"
+msgstr "`%s' gebruikt vóór declaratie"
+
+#: java/decl.c:1059
#, c-format
-msgid "In %s: overlapped variable and exception ranges at %d"
+msgid "declaration of `%s' shadows a parameter"
+msgstr "de declaratie van `%s' verbergt een parameter"
+
+#: java/decl.c:1062
+#, c-format
+msgid "declaration of `%s' shadows a symbol from the parameter list"
+msgstr "de declaratie van `%s' verbergt een symbool uit de parameterlijst"
+
+#: java/decl.c:1361
+#, fuzzy
+msgid "%Jlabel '%D' used but not defined"
+msgstr "label `%s' gebruikt maar niet gedefinieerd"
+
+#: java/decl.c:1366
+#, fuzzy
+msgid "%Jlabel '%D' defined but not used"
+msgstr "label `%s' gedefinieerd maar niet gebruikt"
+
+#: java/decl.c:1494
+msgid "%JIn %D: overlapped variable and exception ranges at %d"
msgstr ""
-#: java/decl.c:1622
+#: java/decl.c:1572
msgid "bad type in parameter debug info"
msgstr ""
-#: java/decl.c:1632
-#, c-format
-msgid "bad PC range for debug info for local `%s'"
+#: java/decl.c:1581
+msgid "%Jbad PC range for debug info for local '%D'"
msgstr ""
-#: java/expr.c:530
+#: java/expr.c:519
msgid "stack underflow - dup* operation"
msgstr ""
-#: java/expr.c:1534
+#: java/expr.c:1469
#, c-format
msgid "reference `%s' is ambiguous: appears in interface `%s' and interface `%s'"
msgstr ""
@@ -20400,257 +19401,260 @@ msgstr ""
# dikwijls 'bibliotheek' zien gebruiken.
# De vertaalde boodschappen voor make gebruiken dat op het ogenblik wél, maar
# ik ben van plan daar verandering in te brengen.
-#: java/expr.c:1563
+#: java/expr.c:1497
#, c-format
msgid "field `%s' not found"
msgstr "veld `%s' niet gevonden"
-#: java/expr.c:1715
+#: java/expr.c:1658
msgid "ret instruction not implemented"
msgstr ""
-#: java/expr.c:1857
+#: java/expr.c:1815
#, c-format
msgid "method '%s' not found in class"
msgstr ""
-#: java/expr.c:2060
+#: java/expr.c:2020
#, c-format
msgid "failed to find class '%s'"
msgstr "kan klasse '%s' niet vinden"
-#: java/expr.c:2070
+#: java/expr.c:2030
#, c-format
msgid "class '%s' has no method named '%s' matching signature '%s'"
msgstr ""
-#: java/expr.c:2080
+#: java/expr.c:2040
msgid "invokestatic on non static method"
msgstr ""
-#: java/expr.c:2085
+#: java/expr.c:2045
msgid "invokestatic on abstract method"
msgstr ""
-#: java/expr.c:2093
+#: java/expr.c:2053
msgid "invoke[non-static] on static method"
msgstr ""
-#: java/expr.c:2396
+#: java/expr.c:2352
#, fuzzy, c-format
msgid "missing field '%s' in '%s'"
msgstr "beginwaarde ontbreekt"
-#: java/expr.c:2402
+#: java/expr.c:2358
#, c-format
msgid "mismatching signature for field '%s' in '%s'"
msgstr ""
-#: java/expr.c:2425
-#, c-format
-msgid "assignment to final field `%s' not in field's class"
-msgstr ""
+#: java/expr.c:2380
+#, fuzzy
+msgid "%Jassignment to final field '%D' not in field's class"
+msgstr "toekenning aan final-veld `%s' niet in constructor"
-#: java/expr.c:2430
-#, c-format
-msgid "assignment to final static field `%s' not in class initializer"
-msgstr ""
+#: java/expr.c:2385
+#, fuzzy
+msgid "%Jassignment to final static field `%D' not in class initializer"
+msgstr "toekenning aan final-veld `%s' niet in constructor"
-#: java/expr.c:2437
-#, c-format
-msgid "assignment to final field `%s' not in constructor"
+#: java/expr.c:2393
+#, fuzzy
+msgid "%Jassignment to final field '%D' not in constructor"
msgstr "toekenning aan final-veld `%s' niet in constructor"
-#: java/expr.c:2684
+#: java/expr.c:2636
#, fuzzy, c-format
msgid "can't expand %s"
msgstr "open %s"
-#: java/expr.c:2861
+#: java/expr.c:2808
msgid "invalid PC in line number table"
msgstr "ongeldige PC in tabel met regelnummers"
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2906
+#: java/expr.c:2854
#, c-format
msgid "unreachable bytecode from %d to before %d"
msgstr ""
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2943
+#: java/expr.c:2892
#, c-format
msgid "unreachable bytecode from %d to the end of the method"
msgstr ""
#. duplicate code from LOAD macro
-#: java/expr.c:3261
+#: java/expr.c:3206
#, fuzzy
msgid "unrecogized wide sub-instruction"
msgstr "signature-string niet herkend"
-#: java/jcf-io.c:543
+#: java/jcf-io.c:534
#, c-format
msgid "source file for class `%s' is newer than its matching class file. Source file `%s' used instead"
msgstr ""
-#: java/jcf-parse.c:338
+#: java/jcf-parse.c:330
msgid "bad string constant"
msgstr "slechte stringconstante"
-#: java/jcf-parse.c:356
+#: java/jcf-parse.c:348
#, c-format
msgid "bad value constant type %d, index %d"
msgstr ""
-#: java/jcf-parse.c:528
+#: java/jcf-parse.c:514
#, fuzzy, c-format
-msgid "can't reopen %s"
+msgid "can't reopen %s: %m"
msgstr "open %s"
-#: java/jcf-parse.c:533
+#: java/jcf-parse.c:519
#, fuzzy, c-format
-msgid "can't close %s"
+msgid "can't close %s: %m"
msgstr "close %s"
-#: java/jcf-parse.c:619
+#: java/jcf-parse.c:604
#, fuzzy, c-format
msgid "cannot find file for class %s"
msgstr "[kan %s niet vinden]"
-#: java/jcf-parse.c:631
+#: java/jcf-parse.c:615
#, fuzzy
msgid "not a valid Java .class file"
msgstr "ongeldige basisklasse"
-#: java/jcf-parse.c:634
+#: java/jcf-parse.c:618
#, fuzzy
msgid "error while parsing constant pool"
msgstr "%s voor stringconstante"
-#: java/jcf-parse.c:637
+#: java/jcf-parse.c:621
#, fuzzy, c-format
msgid "error in constant pool entry #%d\n"
msgstr "constant object wordt beschreven (argument %d)"
#. FIXME - where was first time
-#: java/jcf-parse.c:649
+#: java/jcf-parse.c:633
#, c-format
msgid "reading class %s for the second time from %s"
msgstr ""
-#: java/jcf-parse.c:667
+#: java/jcf-parse.c:651
msgid "error while parsing fields"
msgstr ""
-#: java/jcf-parse.c:670
+#: java/jcf-parse.c:654
msgid "error while parsing methods"
msgstr ""
-#: java/jcf-parse.c:673
+#: java/jcf-parse.c:657
msgid "error while parsing final attributes"
msgstr ""
-#: java/jcf-parse.c:687
+#: java/jcf-parse.c:671
#, c-format
msgid "the `java.lang.Object' that was found in `%s' didn't have the special zero-length `gnu.gcj.gcj-compiled' attribute. This generally means that your classpath is incorrectly set. Use `info gcj \"Input Options\"' to see the info page describing how to set the classpath"
msgstr ""
-#: java/jcf-parse.c:777
+#: java/jcf-parse.c:749
msgid "missing Code attribute"
msgstr ""
-#: java/jcf-parse.c:1014
-msgid "source file seen twice on command line and will be compiled only once"
+#: java/jcf-parse.c:981
+msgid "%Hsource file seen twice on command line and will be compiled only once"
msgstr ""
-#: java/jcf-parse.c:1030
+#: java/jcf-parse.c:997
#, fuzzy
msgid "no input file specified"
msgstr "Geen invoerbestanden"
-#: java/jcf-parse.c:1059
+#: java/jcf-parse.c:1026
#, fuzzy, c-format
-msgid "can't close input file %s"
+msgid "can't close input file %s: %m"
msgstr "kan bestand '%s' niet openen"
-#: java/jcf-parse.c:1096
+#: java/jcf-parse.c:1064
#, c-format
msgid "bad zip/jar file %s"
msgstr ""
-#: java/jcf-write.c:2650
+#: java/jcf-parse.c:1236
+#, fuzzy, c-format
+msgid "error while reading %s from zip file"
+msgstr "%s voor stringconstante"
+
+#: java/jcf-write.c:2602
#, c-format
msgid "internal error in generate_bytecode_insn - tree code not implemented: %s"
msgstr ""
-#: java/jcf-write.c:2988
+#: java/jcf-write.c:2934
#, fuzzy
msgid "field initializer type mismatch"
msgstr "ongeldige beginwaarde voor bit-string"
-#: java/jcf-write.c:3419
+#: java/jcf-write.c:3389
#, fuzzy, c-format
-msgid "can't create directory %s"
+msgid "can't create directory %s: %m"
msgstr "dubbele folder `%s' wordt genegeerd\n"
-#: java/jcf-write.c:3473
+#: java/jcf-write.c:3442
#, fuzzy, c-format
-msgid "can't create %s"
+msgid "can't create %s: %m"
msgstr "open %s"
-#: java/jv-scan.c:187
+#: java/jv-scan.c:185
msgid "only one of `--print-main', `--list-class', and `--complexity' allowed"
msgstr ""
-#: java/jv-scan.c:190
+#: java/jv-scan.c:188
#, fuzzy, c-format
msgid "can't open output file `%s'"
msgstr "kan bestand '%s' niet openen"
-#: java/jv-scan.c:224
+#: java/jv-scan.c:222
#, fuzzy, c-format
msgid "file not found `%s'"
msgstr "kan %s niet vinden"
-#: java/jvspec.c:426
+#: java/jvspec.c:418
msgid "can't specify `-D' without `--main'\n"
msgstr ""
-#: java/jvspec.c:429
+#: java/jvspec.c:421
#, fuzzy, c-format
msgid "`%s' is not a valid class name"
msgstr "-fPIC is niet geldig met -mcoff"
-#: java/jvspec.c:435
+#: java/jvspec.c:427
msgid "--resource requires -o"
msgstr ""
-#: java/jvspec.c:442
+#: java/jvspec.c:434
msgid "warning: already-compiled .class files ignored with -C"
msgstr ""
-#: java/jvspec.c:449
+#: java/jvspec.c:441
#, fuzzy
msgid "cannot specify both -C and -o"
msgstr "-EB en -EL mogen niet samen gebruikt worden"
-#: java/jvspec.c:461
+#: java/jvspec.c:453
msgid "cannot create temporary file"
msgstr ""
-#: java/jvspec.c:489
+#: java/jvspec.c:481
msgid "using both @FILE with multiple files not implemented"
msgstr ""
-#: java/jvspec.c:538
+#: java/jvspec.c:530
msgid "cannot specify `main' class when not linking"
msgstr ""
-#: java/lang.c:548
+#: java/lang.c:740
msgid "can't do dependency tracking with input from stdin"
msgstr ""
-#: java/lang.c:564
+#: java/lang.c:756
msgid "couldn't determine target name for dependency tracking"
msgstr ""
@@ -20664,563 +19668,455 @@ msgid ""
"`--encoding=UTF-8' option"
msgstr ""
-#: java/mangle.c:85
+#: java/mangle.c:89
#, fuzzy, c-format
msgid "can't mangle %s"
msgstr "close %s"
-#: java/mangle_name.c:144 java/mangle_name.c:216
+#: java/mangle_name.c:140 java/mangle_name.c:210
msgid "internal error - invalid Utf8 name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:881
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:962
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1303
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1364
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1574
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1796
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1805
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1816
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1827
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1839
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1854
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1871
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1873
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1945
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2116
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2178
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2330
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2342
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2349
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2356
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2367
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2369
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2407
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2409
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2411
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2432
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2434
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2436
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2452
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2454
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2475
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2477
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2479
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2507
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2509
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2511
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2513
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2531
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2533
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2555
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2566
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2577
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2588
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2601
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2605
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2607
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2620
+#: java/parse-scan.y:880 java/parse.y:949 java/parse.y:1290 java/parse.y:1351
+#: java/parse.y:1555 java/parse.y:1777 java/parse.y:1786 java/parse.y:1797
+#: java/parse.y:1808 java/parse.y:1820 java/parse.y:1835 java/parse.y:1852
+#: java/parse.y:1854 java/parse.y:1935 java/parse.y:2106 java/parse.y:2168
+#: java/parse.y:2320 java/parse.y:2332 java/parse.y:2339 java/parse.y:2346
+#: java/parse.y:2357 java/parse.y:2359 java/parse.y:2397 java/parse.y:2399
+#: java/parse.y:2401 java/parse.y:2422 java/parse.y:2424 java/parse.y:2426
+#: java/parse.y:2442 java/parse.y:2444 java/parse.y:2465 java/parse.y:2467
+#: java/parse.y:2469 java/parse.y:2497 java/parse.y:2499 java/parse.y:2501
+#: java/parse.y:2503 java/parse.y:2521 java/parse.y:2523 java/parse.y:2534
+#: java/parse.y:2545 java/parse.y:2556 java/parse.y:2567 java/parse.y:2578
+#: java/parse.y:2591 java/parse.y:2595 java/parse.y:2597 java/parse.y:2610
#, fuzzy
msgid "Missing term"
msgstr "beginwaarde ontbreekt"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:883
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:734
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:772
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:797
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:983
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1338
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1550
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1552
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1781
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1807
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1818
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1829
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1841
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1856
+#: java/parse-scan.y:882 java/parse.y:721 java/parse.y:759 java/parse.y:784
+#: java/parse.y:970 java/parse.y:1325 java/parse.y:1531 java/parse.y:1533
+#: java/parse.y:1762 java/parse.y:1788 java/parse.y:1799 java/parse.y:1810
+#: java/parse.y:1822 java/parse.y:1837
msgid "';' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:732
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:770
+#: java/parse.y:719 java/parse.y:757
#, fuzzy
msgid "Missing name"
msgstr "beginwaarde ontbreekt"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:795
+#: java/parse.y:782
msgid "'*' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:809
+#: java/parse.y:796
msgid "Class or interface declaration expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:846
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:848
+#: java/parse.y:833 java/parse.y:835
msgid "Missing class name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:851
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:855
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:863
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1023
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1284
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1616
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1867
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1899
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1952
+#: java/parse.y:838 java/parse.y:842 java/parse.y:850 java/parse.y:1010
+#: java/parse.y:1271 java/parse.y:1273 java/parse.y:1597 java/parse.y:1848
+#: java/parse.y:1880 java/parse.y:1942
msgid "'{' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:865
+#: java/parse.y:852
msgid "Missing super class name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:875
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:891
+#: java/parse.y:862 java/parse.y:878
msgid "Missing interface name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:977
+#: java/parse.y:964
#, fuzzy
msgid "Missing variable initializer"
msgstr "beginwaarde ontbreekt"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:994
+#: java/parse.y:981
#, fuzzy
msgid "Invalid declaration"
msgstr "lege declaratie"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:997
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1082
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2153
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2175
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2179
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2214
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2291
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2301
+#: java/parse.y:984 java/parse.y:1069 java/parse.y:2143 java/parse.y:2165
+#: java/parse.y:2169 java/parse.y:2204 java/parse.y:2281 java/parse.y:2291
msgid "']' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1001
+#: java/parse.y:988
#, fuzzy
msgid "Unbalanced ']'"
msgstr "niet-gebalanceerde `#endif'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1037
+#: java/parse.y:1024
msgid "Invalid method declaration, method name required"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1042
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1047
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1052
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2036
+#: java/parse.y:1029 java/parse.y:1034 java/parse.y:1039 java/parse.y:2026
msgid "Identifier expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1057
+#: java/parse.y:1044
msgid "Invalid method declaration, return type required"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1080
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1530
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1537
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1546
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1548
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1576
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1684
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1981
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2034
+#: java/parse.y:1067 java/parse.y:1511 java/parse.y:1518 java/parse.y:1527
+#: java/parse.y:1529 java/parse.y:1557 java/parse.y:1665 java/parse.y:1971
+#: java/parse.y:2024
msgid "')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1096
+#: java/parse.y:1083
#, fuzzy
msgid "Missing formal parameter term"
msgstr "parameternaam ontbreekt uit parameterlijst"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1111
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1116
+#: java/parse.y:1098 java/parse.y:1103
#, fuzzy
msgid "Missing identifier"
msgstr "beginwaarde ontbreekt"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1136
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1145
+#: java/parse.y:1123 java/parse.y:1132
msgid "Missing class type term"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1301
+#: java/parse.y:1288
#, fuzzy
msgid "Invalid interface type"
msgstr "Ongeldig register voor vergelijking"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1494
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1663
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1665
+#: java/parse.y:1475 java/parse.y:1644 java/parse.y:1646
msgid "':' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1516
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1521
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1526
+#: java/parse.y:1497 java/parse.y:1502 java/parse.y:1507
#, fuzzy
msgid "Invalid expression statement"
msgstr "ongeldige expressie als operand"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1572
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1612
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1680
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1748
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1869
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1938
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2028
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2030
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2038
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2274
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2276
+#: java/parse.y:1525 java/parse.y:1553 java/parse.y:1593 java/parse.y:1661
+#: java/parse.y:1729 java/parse.y:1850 java/parse.y:1928 java/parse.y:2018
+#: java/parse.y:2020 java/parse.y:2028 java/parse.y:2264 java/parse.y:2266
msgid "'(' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1614
+#: java/parse.y:1595
msgid "Missing term or ')'"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1661
+#: java/parse.y:1642
#, fuzzy
msgid "Missing or invalid constant expression"
msgstr "overflow in constante expressie"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1682
+#: java/parse.y:1663
msgid "Missing term and ')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1721
+#: java/parse.y:1702
#, fuzzy
msgid "Invalid control expression"
msgstr "Ongeldig token in expressie"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1723
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1725
+#: java/parse.y:1704 java/parse.y:1706
#, fuzzy
msgid "Invalid update expression"
msgstr "Ongeldig token in expressie"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1750
+#: java/parse.y:1731
#, fuzzy
msgid "Invalid init statement"
msgstr "ongeldige beginwaarde"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1941
+#: java/parse.y:1931
msgid "Missing term or ')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1983
+#: java/parse.y:1973
msgid "'class' or 'this' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1985
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1987
+#: java/parse.y:1975 java/parse.y:1977
msgid "'class' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2032
+#: java/parse.y:2022
msgid "')' or term expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2151
+#: java/parse.y:2141
msgid "'[' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2229
+#: java/parse.y:2219
msgid "Field expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2296
+#: java/parse.y:2276 java/parse.y:2286
msgid "Missing term and ']' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2400
+#: java/parse.y:2390
#, fuzzy
msgid "']' expected, invalid type expression"
msgstr "ongeldige waarheidsexpressie"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2403
+#: java/parse.y:2393
#, fuzzy
msgid "Invalid type expression"
msgstr "Ongeldig token in expressie"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2515
+#: java/parse.y:2505
#, fuzzy
msgid "Invalid reference type"
msgstr "Ongeldige modus voor gen_tst_reg"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2993
+#: java/parse.y:2977
msgid "Constructor invocation must be first thing in a constructor"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2995
+#: java/parse.y:2979
msgid "Only constructors can invoke constructors"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3004
+#: java/parse.y:2987
#, c-format
msgid ": `%s' JDK1.1(TM) feature"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3064
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3066
+#: java/parse.y:3046 java/parse.y:3048
#, c-format
msgid ""
"%s.\n"
"%s"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6879
+#: java/parse.y:6908
#, c-format
msgid "malformed .zip archive in CLASSPATH: %s"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6950
+#: java/parse.y:6979
#, c-format
msgid "Can't find default package `%s'. Check the CLASSPATH environment variable and the access to the archives"
msgstr ""
# 'whitespace' -> 'witruimte'?
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12352
+#: java/parse.y:12192
#, fuzzy, c-format
msgid "missing static field `%s'"
msgstr "ontbrekende witruimte na getal `%s'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12357
+#: java/parse.y:12197
#, c-format
msgid "not a static field `%s'"
msgstr "`%s' is geen static veld"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12400
+#: java/parse.y:12240
#, c-format
msgid "No case for %s"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:13365
+#: java/parse.y:13172
#, fuzzy, c-format
msgid "unregistered operator %s"
msgstr "registernaam niet opgegeven voor `%s'"
# Moet 'signature-string' vertaald worden?
-#: java/typeck.c:553
+#: java/typeck.c:530
msgid "junk at end of signature string"
msgstr "Brol aan einde van signature-string."
-#: java/verify.c:479
+#: java/verify.c:471
msgid "bad pc in exception_table"
msgstr ""
-#: java/verify.c:485
-msgid "exception handler inside code that is being protected"
-msgstr ""
-
-#: java/verify.c:1395
+#: java/verify.c:1384
#, c-format
msgid "unknown opcode %d@pc=%d during verification"
msgstr ""
-#: java/verify.c:1465 java/verify.c:1478 java/verify.c:1482
+#: java/verify.c:1454 java/verify.c:1467 java/verify.c:1471
#, c-format
msgid "verification error at PC=%d"
msgstr ""
-#: java/lang-options.h:32
-msgid "Disable automatic array bounds checking"
-msgstr ""
-
-#: java/lang-options.h:34
-msgid "Disable assignability checks for stores into object arrays"
-msgstr ""
-
-#: java/lang-options.h:36
-msgid "Assume native functions are implemented using JNI"
-msgstr ""
-
-#: java/lang-options.h:38
-msgid "Replace system path"
-msgstr ""
-
-#: java/lang-options.h:40
-msgid "Set class path"
-msgstr ""
-
-#: java/lang-options.h:42
-msgid "Set class path (deprecated: use --classpath instead)"
-msgstr ""
-
-#: java/lang-options.h:44
-msgid "Choose class whose main method should be used"
-msgstr ""
-
-#: java/lang-options.h:46
-msgid "Choose input encoding (default comes from locale)"
-msgstr ""
-
-#: java/lang-options.h:48
-msgid "Add directory to class path"
-msgstr ""
-
-#: java/lang-options.h:50
-msgid "Directory where class files should be written"
-msgstr ""
-
-#: java/lang-options.h:52
-msgid "Warn if modifiers are specified when not necessary"
-msgstr ""
-
-#: java/lang-options.h:54
-msgid "Warn if deprecated empty statements are found"
-msgstr ""
-
-#: java/lang-options.h:56
-msgid "Warn if .class files are out of date"
-msgstr ""
-
-#: java/lang-options.h:58
-msgid "Always check for non gcj generated classes archives"
-msgstr ""
-
-#: java/lang-options.h:60
-msgid "Never optimize static class initialization code"
-msgstr ""
-
-#: java/lang-options.h:62
-msgid "Use offset tables for virtual method calls"
-msgstr ""
-
-#: objc/objc-act.c:651
+#: objc/objc-act.c:689
#, c-format
msgid "object does not conform to the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:737 objc/objc-act.c:810
+#: objc/objc-act.c:775 objc/objc-act.c:848
#, c-format
msgid "class `%s' does not implement the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:914
+#: objc/objc-act.c:951
#, c-format
-msgid "`%s' cannot be statically allocated"
-msgstr "`%s' kan niet statisch gealloceerd worden"
+msgid "statically allocated instance of Objective-C class `%s'"
+msgstr ""
-#: objc/objc-act.c:963
+#: objc/objc-act.c:998
#, c-format
msgid "unexpected type for `id' (%s)"
msgstr ""
-#: objc/objc-act.c:968
+#: objc/objc-act.c:1003
msgid "undefined type `id', please import <objc/objc.h>"
msgstr ""
-#: objc/objc-act.c:1019
+#: objc/objc-act.c:1052
#, c-format
msgid "protocol `%s' has circular dependency"
msgstr ""
-#: objc/objc-act.c:1041 objc/objc-act.c:5301
+#: objc/objc-act.c:1074 objc/objc-act.c:5982
#, fuzzy, c-format
msgid "cannot find protocol declaration for `%s'"
msgstr "geen eerdere declaratie voor `%s'"
-#: objc/objc-act.c:1289 objc/objc-act.c:5877 objc/objc-act.c:6195
-#: objc/objc-act.c:6244 objc/objc-act.c:6280 objc-parse.y:1799
+#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6513
+#: objc/objc-act.c:6822 objc/objc-act.c:6875 objc/objc-act.c:6900
#, fuzzy, c-format
msgid "cannot find interface declaration for `%s'"
msgstr "geen eerdere declaratie voor `%s'"
-#: objc/objc-act.c:1328
+#: objc/objc-act.c:1423
+#, fuzzy, c-format
+msgid "interface `%s' does not have valid constant string layout"
+msgstr "het argument van `asm' is geen constante string"
+
+#: objc/objc-act.c:1439
#, fuzzy, c-format
msgid "cannot find reference tag for class `%s'"
msgstr "kan niet derefereren, is geen pointer."
-#: objc/objc-act.c:2050
+#: objc/objc-act.c:2179
#, c-format
msgid "creating selector for non existant method %s"
msgstr ""
-#: objc/objc-act.c:2364
+#: objc/objc-act.c:2389
+#, fuzzy, c-format
+msgid "`%s' is not an Objective-C class name or alias"
+msgstr "-fPIC is niet geldig met -mcoff"
+
+#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6769
+#: objc/objc-act.c:7059 objc/objc-act.c:7088
+msgid "Objective-C declarations may only appear in global scope"
+msgstr ""
+
+#: objc/objc-act.c:2505
#, fuzzy, c-format
msgid "cannot find class `%s'"
msgstr "kan %s niet vinden"
-#: objc/objc-act.c:2366
+#: objc/objc-act.c:2507
#, fuzzy, c-format
msgid "class `%s' already exists"
msgstr "veld `%s' heeft al een beginwaarde gekregen"
+#: objc/objc-act.c:2532 objc/objc-act.c:6791
+#, c-format
+msgid "`%s' redeclared as different kind of symbol"
+msgstr "`%s' als ander soort symbool geherdeclareerd"
+
#. fatal did not work with 2 args...should fix
-#: objc/objc-act.c:2473
+#: objc/objc-act.c:2680
#, c-format
msgid "cannot find interface declaration for `%s', superclass of `%s'"
msgstr ""
-#: objc/objc-act.c:2480
+#: objc/objc-act.c:2687
#, fuzzy, c-format
msgid "circular inheritance in interface declaration for `%s'"
msgstr "geneste externe declaratie van `%s'"
-#: objc/objc-act.c:3566 objc/objc-act.c:3583
-msgid "inconsistent instance variable specification"
+#: objc/objc-act.c:2780 objc/objc-act.c:2924 objc/objc-act.c:3024
+#: objc/objc-act.c:3200 objc/objc-act.c:3240
+msgid "Use `-fobjc-exceptions' to enable Objective-C exception syntax"
msgstr ""
-#: objc/objc-act.c:4580
-msgid "can not use an object as parameter to a method\n"
+#: objc/objc-act.c:2787
+msgid "`@throw;' (rethrow) used outside of a `@catch' block"
msgstr ""
-#: objc/objc-act.c:4780
-#, c-format
-msgid "multiple declarations for method `%s'"
+#: objc/objc-act.c:3027
+msgid "`@catch' parameter is not a known Objective-C class type"
msgstr ""
-#: objc/objc-act.c:4946
-#, c-format
-msgid "invalid receiver type `%s'"
+#: objc/objc-act.c:3036
+msgid "Exception already handled by preceding `@catch(id)'"
msgstr ""
-#: objc/objc-act.c:4977 objc/objc-act.c:5003 objc/objc-act.c:5051
+#: objc/objc-act.c:3041
#, c-format
-msgid "`%s' does not respond to `%s'"
+msgid "Exception of type `%s *' already handled by `@catch (%s *)'"
msgstr ""
-#: objc/objc-act.c:4983 objc/objc-act.c:7318
-#, c-format
-msgid "no super class declared in interface for `%s'"
+#: objc/objc-act.c:3206
+msgid "`@try' without `@catch' or `@finally'"
+msgstr ""
+
+#: objc/objc-act.c:3647
+msgid "%Jtype '%D' does not have a known size"
+msgstr ""
+
+#: objc/objc-act.c:4256
+#, fuzzy
+msgid "%J%s `%s'"
+msgstr "%s voor `%s'"
+
+#: objc/objc-act.c:4281 objc/objc-act.c:4300
+msgid "inconsistent instance variable specification"
msgstr ""
-#: objc/objc-act.c:5081
-msgid "cannot find class (factory) method"
+#: objc/objc-act.c:5303
+msgid "can not use an object as parameter to a method\n"
msgstr ""
-#: objc/objc-act.c:5082 objc/objc-act.c:5126
+#: objc/objc-act.c:5504
+#, fuzzy, c-format
+msgid "multiple %s named `%c%s' found"
+msgstr "meerdere parameters hebben de naam `%s'"
+
+#: objc/objc-act.c:5721
+#, fuzzy, c-format
+msgid "no super class declared in @interface for `%s'"
+msgstr "geen eerdere declaratie voor `%s'"
+
+#: objc/objc-act.c:5809
#, c-format
-msgid "return type for `%s' defaults to id"
+msgid "invalid receiver type `%s'"
msgstr ""
-#: objc/objc-act.c:5099
+#: objc/objc-act.c:5820
+#, fuzzy, c-format
+msgid "`%s' may not respond to `%c%s'"
+msgstr "-pipe wordt niet ondersteund"
+
+#: objc/objc-act.c:5825
#, c-format
-msgid "method `%s' not implemented by protocol"
+msgid "`%c%s' not implemented by protocol(s)"
+msgstr ""
+
+#: objc/objc-act.c:5830
+msgid "(Messages without a matching method signature"
msgstr ""
-#: objc/objc-act.c:5108
-msgid "return type defaults to id"
+#: objc/objc-act.c:5831
+msgid "will be assumed to return `id' and accept"
msgstr ""
-#: objc/objc-act.c:5125
+#: objc/objc-act.c:5832
#, fuzzy
-msgid "cannot find method"
-msgstr "kan `nm' niet vinden"
+msgid "`...' as arguments.)"
+msgstr "geen argumenten"
-#: objc/objc-act.c:5399
+#: objc/objc-act.c:6079
#, fuzzy, c-format
msgid "undeclared selector `%s'"
msgstr "ongeldige naam `%s'"
@@ -21234,312 +20130,1993 @@ msgstr "ongeldige naam `%s'"
#. to an instance variable. It's better to catch the cases
#. where this is done unknowingly than to support the above
#. paradigm.
-#: objc/objc-act.c:5443
+#: objc/objc-act.c:6121
#, c-format
msgid "instance variable `%s' accessed in class method"
msgstr ""
-#: objc/objc-act.c:5678
+#: objc/objc-act.c:6327
#, fuzzy, c-format
-msgid "duplicate definition of class method `%s'"
-msgstr "herhaalde definitie `%s'"
+msgid "duplicate declaration of method `%c%s'"
+msgstr "impliciete declaratie van functie `%s'"
+
+#: objc/objc-act.c:6368
+#, c-format
+msgid "duplicate interface declaration for category `%s(%s)'"
+msgstr ""
-#: objc/objc-act.c:5684
+#: objc/objc-act.c:6398
#, fuzzy, c-format
-msgid "duplicate declaration of class method `%s'"
-msgstr "impliciete declaratie van functie `%s'"
+msgid "illegal reference type specified for instance variable `%s'"
+msgstr "registernaam opgegeven voor niet-registervariabele `%s'"
-#: objc/objc-act.c:5720
+#: objc/objc-act.c:6414
#, fuzzy, c-format
-msgid "duplicate definition of instance method `%s'"
-msgstr "herhaalde definitie `%s'"
+msgid "instance variable `%s' has unknown size"
+msgstr "statische variable `%s' is als dllimport aangeduid"
-#: objc/objc-act.c:5726
+#. vtable pointers are Real Bad(tm), since Obj-C cannot initialize them
+#: objc/objc-act.c:6428
#, fuzzy, c-format
-msgid "duplicate declaration of instance method `%s'"
-msgstr "impliciete declaratie van functie `%s'"
+msgid "type `%s' has virtual member functions"
+msgstr "`this' is niet beschikbaar in static member-funties"
-#: objc/objc-act.c:5766
+#: objc/objc-act.c:6429
+#, fuzzy, c-format
+msgid "illegal aggregate type `%s' specified for instance variable `%s'"
+msgstr "registernaam opgegeven voor niet-registervariabele `%s'"
+
+#: objc/objc-act.c:6437
#, c-format
-msgid "duplicate interface declaration for category `%s(%s)'"
+msgid "type `%s' has a user-defined constructor"
+msgstr ""
+
+#: objc/objc-act.c:6439
+#, c-format
+msgid "type `%s' has a user-defined destructor"
msgstr ""
-#: objc/objc-act.c:5852
+#: objc/objc-act.c:6440
+msgid "C++ constructors and destructors will not be invoked for Objective-C fields"
+msgstr ""
+
+#: objc/objc-act.c:6490
#, c-format
msgid "instance variable `%s' is declared private"
msgstr ""
-#: objc/objc-act.c:5899
+#: objc/objc-act.c:6539
+#, c-format
+msgid "instance variable `%s' is %s; this will be a hard error in the future"
+msgstr ""
+
+#: objc/objc-act.c:6546
#, c-format
msgid "instance variable `%s' is declared %s"
msgstr ""
-#: objc/objc-act.c:5909
+#: objc/objc-act.c:6556
msgid "static access to object of type `id'"
msgstr ""
-#: objc/objc-act.c:5934 objc/objc-act.c:6027
+#: objc/objc-act.c:6578 objc/objc-act.c:6666
#, c-format
msgid "incomplete implementation of class `%s'"
msgstr ""
-#: objc/objc-act.c:5938 objc/objc-act.c:6032
+#: objc/objc-act.c:6582 objc/objc-act.c:6671
#, c-format
msgid "incomplete implementation of category `%s'"
msgstr ""
-#: objc/objc-act.c:5943 objc/objc-act.c:6037
+#: objc/objc-act.c:6587 objc/objc-act.c:6676
#, c-format
msgid "method definition for `%c%s' not found"
msgstr ""
-#: objc/objc-act.c:6081
+#: objc/objc-act.c:6717
#, c-format
msgid "%s `%s' does not fully implement the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:6139 objc/objc-act.c:8249
+#: objc/objc-act.c:6775 objc/objc-act.c:8803
msgid "`@end' missing in implementation context"
msgstr ""
-#: objc/objc-act.c:6167
+#: objc/objc-act.c:6805
#, c-format
msgid "reimplementation of class `%s'"
msgstr ""
-#: objc/objc-act.c:6209
+#: objc/objc-act.c:6836
#, c-format
msgid "conflicting super class name `%s'"
msgstr ""
-#: objc/objc-act.c:6224
+#: objc/objc-act.c:6838
+#, c-format
+msgid "previous declaration of `%s'"
+msgstr "eerdere declaratie van `%s'"
+
+#: objc/objc-act.c:6852 objc/objc-act.c:6854
#, c-format
msgid "duplicate interface declaration for class `%s'"
msgstr ""
-#: objc/objc-act.c:6506
+#: objc/objc-act.c:7121
#, c-format
msgid "duplicate declaration for protocol `%s'"
msgstr ""
-#: objc/objc-act.c:7363
-msgid "[super ...] must appear in a method context"
-msgstr ""
+#. Add a readable method name to the warning.
+#: objc/objc-act.c:7613
+#, fuzzy
+msgid "%J%s `%c%s'"
+msgstr "%s voor `%s'"
-#: objc/objc-act.c:8354 objc/objc-act.c:8370
+#: objc/objc-act.c:7908
#, c-format
-msgid "potential selector conflict for method `%s'"
+msgid "no super class declared in interface for `%s'"
+msgstr ""
+
+#: objc/objc-act.c:7956
+msgid "[super ...] must appear in a method context"
msgstr ""
-#: objc-parse.y:2655
+#: objc/objc-parse.y:2700
msgid "`@end' must appear in an implementation context"
msgstr ""
-#: objc-parse.y:2931
+#: objc/objc-parse.y:2913
msgid "method definition not in class context"
msgstr ""
-#: objc/lang-options.h:27
-msgid "Dump decls to a .decl file"
+#: options.c:24
+msgid "Display this information"
msgstr ""
-#: objc/lang-options.h:29
-msgid "Generate code for GNU runtime environment"
+#: options.c:30
+msgid "--param <param>=<value>\tSet paramter <param> to value. See below for a complete list of parameters"
+msgstr ""
+
+#: options.c:39
+msgid "-A<question>=<answer>\tAssert the <answer> to <question>. Putting '-' before <question> disables the <answer> to <question>"
+msgstr ""
+
+#: options.c:42
+#, fuzzy
+msgid "Do not discard comments"
+msgstr "niet-beëindigde commentaar"
+
+#: options.c:45
+msgid "Do not discard comments in macro expansions"
+msgstr ""
+
+#: options.c:48
+msgid "-D<macro>[=<val>]\tDefine a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1"
+msgstr ""
+
+#: options.c:54
+msgid "-G<number>\tPut global and static data smaller than <number> bytes into a special section (on some targets)"
+msgstr ""
+
+#: options.c:57
+msgid "Print the name of header files as they are used"
+msgstr ""
+
+#: options.c:66
+#, fuzzy
+msgid "Generate make dependencies and compile"
+msgstr "Positie-onafhankelijke code wordt niet ondersteund. Genegeerd"
+
+#: options.c:75
+msgid "Treat missing header files as generated files"
+msgstr ""
+
+#: options.c:81
+msgid "Like -MD but ignore system header files"
+msgstr ""
+
+#: options.c:90
+msgid "-MQ <target>\tAdd a MAKE-quoted target"
+msgstr ""
+
+#: options.c:96
+msgid "-O<number>\tSet optimization level to <number>"
+msgstr ""
+
+#: options.c:99
+msgid "Optimize for space rather than speed"
+msgstr ""
+
+#: options.c:102
+#, fuzzy
+msgid "Do not generate #line directives"
+msgstr "interne fout - slechte ingebouwde functie `%s'"
+
+#: options.c:105
+msgid "-U<macro>\tUndefine <macro>"
+msgstr ""
+
+#: options.c:108
+msgid "This switch is deprecated; use -Wextra instead"
+msgstr ""
+
+#: options.c:114
+msgid "Warn about returning structures, unions or arrays"
+msgstr ""
+
+#: options.c:120
+#, fuzzy
+msgid "Warn about casting functions to incompatible types"
+msgstr "parameter wijst naar een onvolledig type"
+
+#: options.c:123
+msgid "Warn about pointer casts which increase alignment"
+msgstr ""
+
+#: options.c:126
+msgid "Warn about casts which discard qualifiers"
+msgstr ""
+
+#: options.c:129
+#, fuzzy
+msgid "Warn about subscripts whose type is \"char\""
+msgstr "array subscript is van het type `char'"
+
+#: options.c:138
+msgid "Warn about possibly confusing type conversions"
+msgstr ""
+
+#: options.c:141
+msgid "Warn when all constructors and destructors are private"
+msgstr ""
+
+#: options.c:144
+msgid "Warn when a declaration is found after a statement"
+msgstr ""
+
+#: options.c:147
+msgid "Warn if deprecated class, method, or field is used"
+msgstr ""
+
+#: options.c:150
+msgid "Warn about uses of __attribute__((deprecated)) declarations"
+msgstr ""
+
+#: options.c:153
+msgid "Warn when an optimization pass is disabled"
+msgstr ""
+
+#: options.c:156
+msgid "Warn about compile-time integer division by zero"
+msgstr ""
+
+#: options.c:159
+msgid "Warn about violations of Effective C++ style rules"
+msgstr ""
+
+#: options.c:162
+msgid "Warn about stray tokens after #elif and #endif"
+msgstr ""
+
+#: options.c:165
+msgid "Treat all warnings as errors"
+msgstr ""
+
+#: options.c:168
+#, fuzzy
+msgid "Make implicit function declarations an error"
+msgstr "parameternamen (zonder types) in functiedeclaratie"
+
+#: options.c:171
+msgid "Print extra (possibly unwanted) warnings"
+msgstr ""
+
+#: options.c:174
+msgid "Warn if deprecated empty statements are found"
+msgstr ""
+
+#: options.c:177
+msgid "Warn if testing floating point numbers for equality"
+msgstr ""
+
+#: options.c:180
+#, fuzzy
+msgid "Warn about printf/scanf/strftime/strfmon format string anomalies"
+msgstr "formaatstring niet beëindigd"
+
+#: options.c:183
+#, fuzzy
+msgid "Warn if passing too many arguments to a function for its format string"
+msgstr "teveel argumenten voor functie `va_start'"
+
+#: options.c:186
+msgid "Warn about format strings that are not literals"
+msgstr ""
+
+#: options.c:189
+msgid "Warn about possible security problems with format functions"
+msgstr ""
+
+#: options.c:192
+msgid "Warn about strftime formats yielding 2-digit years"
msgstr ""
-#: objc/lang-options.h:32
-msgid "Generate code for NeXT runtime environment"
+#: options.c:201
+msgid "Enable warnings about inter-procedural problems"
msgstr ""
-#: objc/lang-options.h:35
+#: options.c:207
+#, fuzzy
+msgid "Warn about implicit function declarations"
+msgstr "parameternamen (zonder types) in functiedeclaratie"
+
+#: options.c:210
+msgid "Warn when a declaration does not specify a type"
+msgstr ""
+
+#: options.c:216
+msgid "Warn about variables which are initialized to themselves."
+msgstr ""
+
+#: options.c:219
+#, fuzzy
+msgid "Warn when an inlined function cannot be inlined"
+msgstr "kan functie `main' niet inline maken"
+
+#: options.c:222
+#, fuzzy
+msgid "Warn about invalid uses of the \"offsetof\" macro"
+msgstr "lijnnummer buiten bereik in `#line'-commando"
+
+#: options.c:225
+msgid "Warn about PCH files that are found but not used"
+msgstr ""
+
+#: options.c:228
+msgid "-Wlarger-than-<number>\tWarn if an object is larger than <number> bytes"
+msgstr ""
+
+#: options.c:231
+msgid "Do not warn about using \"long long\" when -pedantic"
+msgstr ""
+
+#: options.c:234
+#, fuzzy
+msgid "Warn about suspicious declarations of \"main\""
+msgstr "geen eerdere declaratie voor `%s'"
+
+#: options.c:237
+#, fuzzy
+msgid "Warn about possibly missing braces around initializers"
+msgstr "accolades ontbreken rond beginwaarde"
+
+#: options.c:240
+#, fuzzy
+msgid "Warn about global functions without previous declarations"
+msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie"
+
+#: options.c:243
+#, fuzzy
+msgid "Warn about functions which might be candidates for format attributes"
+msgstr "deze functie is een mogelijke kandidaat voor het `noreturn' attribuut"
+
+#: options.c:246
+#, fuzzy
+msgid "Warn about functions which might be candidates for __attribute__((noreturn))"
+msgstr "deze functie is een mogelijke kandidaat voor het `noreturn' attribuut"
+
+#: options.c:249
+#, fuzzy
+msgid "Warn about global functions without prototypes"
+msgstr "sectie van `%s' geeft een conflict met een eerdere declaratie"
+
+#: options.c:252
+#, fuzzy
+msgid "Warn about use of multi-character character constants"
+msgstr "karakterconstante met meer dan één karakter"
+
+#: options.c:255
+#, fuzzy
+msgid "Warn about \"extern\" declarations not at file scope"
+msgstr "overbodige herdeclaratie van `%s' in zelfde bereik"
+
+#: options.c:258
+#, fuzzy
+msgid "Warn when non-templatized friend functions are declared within a template"
+msgstr "geneste functie `%s' is als `extern' gedeclareerd"
+
+#: options.c:261
+#, fuzzy
+msgid "Warn about non-virtual destructors"
+msgstr "niet-prototype definitie hier"
+
+#: options.c:267
+msgid "Warn if a C-style cast is used in a program"
+msgstr ""
+
+#: options.c:270
+msgid "Warn if an old-style parameter definition is used"
+msgstr ""
+
+#: options.c:273
+msgid "Warn if .class files are out of date"
+msgstr ""
+
+#: options.c:276
+msgid "Warn about overloaded virtual function names"
+msgstr ""
+
+#: options.c:279
+msgid "Warn when the packed attribute has no effect on struct layout"
+msgstr ""
+
+#: options.c:282
+msgid "Warn when padding is required to align structure members"
+msgstr ""
+
+#: options.c:285
+#, fuzzy
+msgid "Warn about possibly missing parentheses"
+msgstr "accolades ontbreken rond beginwaarde"
+
+#: options.c:288
+msgid "Warn when converting the type of pointers to member functions"
+msgstr ""
+
+#: options.c:291
+#, fuzzy
+msgid "Warn about function pointer arithmetic"
+msgstr "pointer naar functie gebruikt in rekensom"
+
+#: options.c:294
+msgid "Warn if inherited methods are unimplemented"
+msgstr ""
+
+#: options.c:297
+#, fuzzy
+msgid "Warn about multiple declarations of the same object"
+msgstr "overbodige herdeclaratie van `%s' in zelfde bereik"
+
+#: options.c:300
+msgid "Warn if modifiers are specified when not necessary"
+msgstr ""
+
+#: options.c:303
+#, fuzzy
+msgid "Warn when the compiler reorders code"
+msgstr "incompatibele record-modus"
+
+#: options.c:306
+#, fuzzy
+msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)"
+msgstr "teruggeefwaarde krijgt standaardtype `int'"
+
+#: options.c:309
msgid "Warn if a selector has multiple methods"
msgstr ""
-#: objc/lang-options.h:39
-msgid "Do not warn if inherited methods are unimplemented"
+#: options.c:312
+msgid "Warn about possible violations of sequence point rules"
+msgstr ""
+
+#: options.c:315
+#, fuzzy
+msgid "Warn when one local variable shadows another"
+msgstr "De locale variabele `insn' heeft de waarde:"
+
+#: options.c:318
+#, fuzzy
+msgid "Warn about signed-unsigned comparisons"
+msgstr "formaatstring niet beëindigd"
+
+#: options.c:321
+#, fuzzy
+msgid "Warn when overload promotes from unsigned to signed"
+msgstr "vergelijking van gepromoveerde ~unsigned met unsigned"
+
+#: options.c:324
+#, fuzzy
+msgid "Warn about code which might break strict aliasing rules"
+msgstr "deze functie is een mogelijke kandidaat voor het `noreturn' attribuut"
+
+#: options.c:327
+#, fuzzy
+msgid "Warn about unprototyped function declarations"
+msgstr "niet-prototype definitie hier"
+
+#: options.c:330
+msgid "Warn about constructs with surprising meanings"
+msgstr ""
+
+#: options.c:333
+msgid "Warn about enumerated switches, with no default, missing a case"
+msgstr ""
+
+#: options.c:336
+msgid "Warn about enumerated switches missing a \"default:\" statement"
msgstr ""
-#: objc/lang-options.h:41
-msgid "Generate C header of platform specific features"
+#: options.c:339
+msgid "Warn about all enumerated switches missing a specific case"
msgstr ""
-#: objc/lang-options.h:43
+#: options.c:342
+msgid "Warn when synthesis behavior differs from Cfront"
+msgstr ""
+
+#: options.c:345
+msgid "Do not suppress warnings from system headers"
+msgstr ""
+
+#: options.c:348
+msgid "Warn about features not present in traditional C"
+msgstr ""
+
+#: options.c:357
#, fuzzy
-msgid "Specify the name of the class for constant strings"
-msgstr "het argument van `asm' is geen constante string"
+msgid "Warn if an undefined macro is used in an #if directive"
+msgstr "ongedefinieerd of ongeldig #-commando"
-#. This is the contribution to the `lang_options' array in gcc.c for
-#. treelang.
-#: treelang/lang-options.h:26
-msgid "(debug) trace parsing process"
+#: options.c:360
+msgid "Warn about uninitialized automatic variables"
msgstr ""
-#: treelang/lang-options.h:27
-msgid "(debug) trace lexical analysis"
+#: options.c:363
+msgid "Warn about unrecognized pragmas"
msgstr ""
-#: config/rs6000/darwin.h:62
-msgid " conflicting code gen style switches are used"
+#: options.c:366
+msgid "Warn about code that will never be executed"
+msgstr ""
+
+#: options.c:369
+msgid "Enable all -Wunused- warnings"
+msgstr ""
+
+#: options.c:372
+msgid "Warn when a function is unused"
msgstr ""
-#: config/i386/mingw32.h:85 config/i386/cygwin.h:171
+#: options.c:375
+msgid "Warn when a label is unused"
+msgstr ""
+
+#: options.c:378
+msgid "Warn about macros defined in the main file that are not used"
+msgstr ""
+
+#: options.c:381
+msgid "Warn when a function parameter is unused"
+msgstr ""
+
+#: options.c:384
+msgid "Warn when an expression value is unused"
+msgstr ""
+
+#: options.c:387
+msgid "Warn when a variable is unused"
+msgstr ""
+
+#: options.c:390
+msgid "Give strings the type \"array of char\""
+msgstr ""
+
+#: options.c:393
+msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead"
+msgstr ""
+
+#: options.c:396
+msgid "-aux-info <file>\tEmit declaration information into <file>"
+msgstr ""
+
+#: options.c:408
+msgid "-d<letters>\tEnable dumps from specific passes of the compiler"
+msgstr ""
+
+#: options.c:411
+msgid "-dumpbase <file>\tSet the file basename to be used for dumps"
+msgstr ""
+
+#: options.c:414
+msgid "--CLASSPATH\tDeprecated; use --classpath instead"
+msgstr ""
+
+#: options.c:429
+msgid "Enforce class member access control semantics"
+msgstr ""
+
+#: options.c:432
#, fuzzy
-msgid "shared and mdll are not compatible"
-msgstr "-pg en -fomit-frame-pointer zijn niet compatibel"
+msgid "Align the start of functions"
+msgstr "impliciete declaratie van functie `%s'"
+
+#: options.c:438
+msgid "Align labels which are only reached by jumping"
+msgstr ""
+
+#: options.c:444
+msgid "Align all labels"
+msgstr ""
+
+#: options.c:450
+msgid "Align the start of loops"
+msgstr ""
+
+#: options.c:459
+msgid "Change when template instances are emitted"
+msgstr ""
+
+#: options.c:462
+msgid "Specify that arguments may alias each other and globals"
+msgstr ""
+
+#: options.c:465
+msgid "Assume arguments may alias globals but not each other"
+msgstr ""
+
+#: options.c:468
+msgid "Assume arguments alias neither each other nor globals"
+msgstr ""
-#: java/lang-specs.h:33
+#: options.c:471
+msgid "Recognize the \"asm\" keyword"
+msgstr ""
+
+#: options.c:483
+msgid "Generate unwind tables that are exact at each instruction boundary"
+msgstr ""
+
+#: options.c:486
+msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements"
+msgstr ""
+
+#: options.c:489
+msgid "Backslashes in character and hollerith constants are special (not C-style)"
+msgstr ""
+
+#: options.c:492
+msgid "Delete libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:495
+msgid "Disable libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:498
+msgid "Enable libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:501
+msgid "Hide libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:504
+msgid "--bootclasspath=<path>\tReplace system path"
+msgstr ""
+
+#: options.c:507
+msgid "Generate code to check bounds before indexing arrays"
+msgstr ""
+
+#: options.c:510
+msgid "Replace add, compare, branch with branch on count register"
+msgstr ""
+
+#: options.c:513
+msgid "Use profiling information for branch probabilities"
+msgstr ""
+
+#: options.c:516
+msgid "Perform branch target load optimization before prologue / epilogue threading"
+msgstr ""
+
+#: options.c:519
+msgid "Perform branch target load optimization after prologue / epilogue threading"
+msgstr ""
+
+#: options.c:522
#, fuzzy
-msgid "-fjni and -femit-class-files are incompatible"
-msgstr "-fpic en -mapcs-reent zijn niet compatibel"
+msgid "Recognize built-in functions"
+msgstr "interne fout - slechte ingebouwde functie `%s'"
-#: java/lang-specs.h:34
+#: options.c:528
+msgid "-fcall-saved-<register>\tMark <register> as being preserved across functions"
+msgstr ""
+
+#: options.c:531
+msgid "-fcall-used-<register>\tMark <register> as being corrupted by function calls"
+msgstr ""
+
+#: options.c:534
+msgid "Save registers around function calls"
+msgstr ""
+
+#: options.c:537
+msgid "Program written in strict mixed-case"
+msgstr ""
+
+#: options.c:540
+msgid "Compile as if program written in lowercase"
+msgstr ""
+
+#: options.c:543
#, fuzzy
-msgid "-fjni and -femit-class-file are incompatible"
-msgstr "-fpic en -mapcs-reent zijn niet compatibel"
+msgid "Preserve case used in program"
+msgstr "misplaatste '\\' in programma"
-#: java/lang-specs.h:35 java/lang-specs.h:36
-msgid "-femit-class-file should used along with -fsyntax-only"
+#: options.c:546
+msgid "Program written in lowercase"
msgstr ""
-#: ada/lang-specs.h:38 java/jvspec.c:77 gcc.c:716
-msgid "-pg and -fomit-frame-pointer are incompatible"
-msgstr "-pg en -fomit-frame-pointer zijn niet compatibel"
+#: options.c:549
+msgid "Program written in uppercase"
+msgstr ""
-#: ada/lang-specs.h:41
-msgid "-c or -S required for Ada"
+#: options.c:552
+msgid "Compile as if program written in uppercase"
msgstr ""
-#: config/darwin.h:212
-msgid "-current_version only allowed with -dynamiclib"
+#: options.c:555
+msgid "Check the return value of new"
msgstr ""
-#: config/darwin.h:215
-msgid "-install_name only allowed with -dynamiclib"
+#: options.c:561
+msgid "--classpath=<path>\tSet class path"
msgstr ""
-#: config/darwin.h:220
-msgid "-bundle not allowed with -dynamiclib"
+#: options.c:564
+msgid "Do not put uninitialized globals in the common section"
msgstr ""
-#: config/darwin.h:221
-msgid "-bundle_loader not allowed with -dynamiclib"
+#: options.c:570
+msgid "Allow the arguments of the '?' operator to have different types"
msgstr ""
-#: config/darwin.h:222
-msgid "-client_name not allowed with -dynamiclib"
+#: options.c:573
+msgid "Reduce the size of object files"
msgstr ""
-#: config/darwin.h:225
-msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
+#: options.c:576
+#, fuzzy
+msgid "Make string literals \"const char[]\" not \"char[]\""
+msgstr "slechte stringconstante"
+
+#: options.c:579
+msgid "-fconst-string-class=<name>\tUse class <name> for constant strings"
msgstr ""
-#: config/darwin.h:226
-msgid "-force_flat_namespace not allowed with -dynamiclib"
+#: options.c:582
+msgid "Perform a register copy-propagation optimization pass"
msgstr ""
-#: config/darwin.h:228
-msgid "-keep_private_externs not allowed with -dynamiclib"
+#: options.c:585
+msgid "Perform cross-jumping optimization"
msgstr ""
-#: config/darwin.h:229
-msgid "-private_bundle not allowed with -dynamiclib"
+#: options.c:588
+msgid "When running CSE, follow jumps to their targets"
msgstr ""
-#: config/sparc/freebsd.h:34 config/ia64/freebsd.h:23
-#: config/alpha/freebsd.h:44 config/rs6000/sysv4.h:1107
-#: config/i386/freebsd-aout.h:213
-msgid "`-p' not supported; use `-pg' and gprof(1)"
-msgstr "`-p' wordt niet ondersteund; gebruik `-pg' en gprof(1)"
+#: options.c:591
+msgid "When running CSE, follow conditional jumps"
+msgstr ""
-#: config/sparc/linux64.h:197 config/sparc/linux64.h:208
-#: config/sparc/netbsd-elf.h:163 config/sparc/netbsd-elf.h:182
-#: config/sparc/sol2-bi.h:168 config/sparc/sol2-bi.h:178
+#: options.c:594
#, fuzzy
-msgid "may not use both -m32 and -m64"
-msgstr "-mfp64 en -m4650 mogen niet samen gebruikt worden"
+msgid "Place data items into their own section"
+msgstr "keer vermeld voor elke functie waarin hij staat.)"
+
+#: options.c:597
+msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
+msgstr ""
+
+#: options.c:600
+#, fuzzy
+msgid "Inline member functions by default"
+msgstr "kan functie `main' niet inline maken"
+
+#: options.c:603
+msgid "Defer popping functions args from stack until later"
+msgstr ""
+
+#: options.c:606
+msgid "Attempt to fill delay slots of branch instructions"
+msgstr ""
+
+#: options.c:609
+msgid "Delete useless null pointer checks"
+msgstr ""
+
+#: options.c:612
+msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics"
+msgstr ""
+
+#: options.c:615
+msgid "Allow '$' in symbol names"
+msgstr ""
+
+# "brede string"? "string met brede karakters/tekens"?
+#: options.c:618
+#, fuzzy
+msgid "Permit '$' as an identifier character"
+msgstr "formaat is een wide-character string"
+
+#: options.c:624
+msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
+msgstr ""
+
+#: options.c:630
+msgid "Perform DWARF2 duplicate elimination"
+msgstr ""
+
+#: options.c:633 options.c:636
+msgid "Perform unused type elimination in debug info"
+msgstr ""
+
+#: options.c:645
+msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
+msgstr ""
+
+#: options.c:648
+msgid "--encoding=<encoding>\tChoose input encoding (defaults from your locale)"
+msgstr ""
+
+#: options.c:651
+#, fuzzy
+msgid "Generate code to check exception specifications"
+msgstr "`%s' gedeclareerd als een functie die een functie teruggeeft"
+
+#: options.c:657
+msgid "Enable exception handling"
+msgstr ""
+
+#: options.c:660
+msgid "-fexec-charset=<cset>\tConvert all strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:663
+msgid "Perform a number of minor, expensive optimizations"
+msgstr ""
+
+#: options.c:672
+msgid "f2c-compatible code can be generated"
+msgstr ""
+
+#: options.c:675
+msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:678
+msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:681
+msgid "Enable non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:684
+msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:687
+msgid "Unsupported; generate libf2c-calling code"
+msgstr ""
+
+#: options.c:690
+msgid "Program is written in typical FORTRAN 66 dialect"
+msgstr ""
+
+#: options.c:693
+msgid "Program is written in typical Unix-f77 dialect"
+msgstr ""
+
+#: options.c:696
+msgid "Program is written in Fortran-90-ish dialect"
+msgstr ""
+
+#: options.c:699
+msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:702
+msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:705
+msgid "Enable non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:708
+msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:720
+msgid "Assume no NaNs or infinities are generated"
+msgstr ""
+
+#: options.c:723
+msgid "-ffixed-<register>\tMark <register> as being unavailable to the compiler"
+msgstr ""
+
+#: options.c:729
+msgid "ffixed-line-length-<number>\tSet the maximum line length to <number>"
+msgstr ""
+
+#: options.c:732
+msgid "Unsupported; affects code generation of arrays"
+msgstr ""
+
+#: options.c:735
+msgid "Do not store floats in registers"
+msgstr ""
+
+#: options.c:738
+msgid "Scope of for-init-statement variables is local to the loop"
+msgstr ""
+
+#: options.c:741
+#, fuzzy
+msgid "Copy memory address constants into registers before use"
+msgstr "numerieke constante zonder cijfers"
+
+#: options.c:744
+msgid "Always check for non gcj generated classes archives"
+msgstr ""
+
+#: options.c:747
+msgid "Copy memory operands into registers before use"
+msgstr ""
+
+#: options.c:750
+msgid "Generate code to check subscript and substring bounds"
+msgstr ""
+
+#: options.c:753
+msgid "Program is written in Fortran-90-ish free form"
+msgstr ""
+
+#: options.c:756
+msgid "Do not assume that standard C libraries and \"main\" exist"
+msgstr ""
+
+#: options.c:759
+msgid "Allow function addresses to be held in registers"
+msgstr ""
+
+#: options.c:762
+#, fuzzy
+msgid "Place each function into its own section"
+msgstr "keer vermeld voor elke functie waarin hij staat.)"
+
+#: options.c:765
+msgid "Perform global common subexpression elimination"
+msgstr ""
+
+#: options.c:768
+msgid "Perform redundant load after store elimination in global common subexpression elimination"
+msgstr ""
+
+#: options.c:771
+msgid "Perform enhanced load motion during global common subexpression elimination"
+msgstr ""
+
+#: options.c:774
+msgid "Perform store motion after global common subexpression elimination"
+msgstr ""
+
+#: options.c:777
+msgid "Enable fatal diagnostics about inter-procedural problems"
+msgstr ""
+
+#: options.c:780
+msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
+msgstr ""
+
+#: options.c:783
+msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:786
+msgid "Enable non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:789
+msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:792
+msgid "Recognize GNU-defined keywords"
+msgstr ""
+
+#: options.c:795
+msgid "Generate code for GNU runtime environment"
+msgstr ""
+
+#: options.c:798
+msgid "Enable guessing of branch probabilities"
+msgstr ""
+
+#: options.c:813
+msgid "Assume normal C execution environment"
+msgstr ""
+
+#: options.c:816
+msgid "Enable support for huge objects"
+msgstr ""
+
+#: options.c:819
+#, fuzzy
+msgid "Process #ident directives"
+msgstr "ongeldig preprocessing-commando"
+
+#: options.c:822
+msgid "Perform conversion of conditional jumps to branchless equivalents"
+msgstr ""
+
+#: options.c:825
+#, fuzzy
+msgid "Perform conversion of conditional jumps to conditional execution"
+msgstr "types in voorwaardelijke expressie komen niet overeen"
+
+#: options.c:828
+#, fuzzy
+msgid "Export functions even if they can be inlined"
+msgstr "de terugkeerwaarde van een functie kan geen funtie zijn"
+
+#: options.c:831
+#, fuzzy
+msgid "Emit implicit instantiations of inline templates"
+msgstr "impliciete declaratie van functie `%s'"
+
+#: options.c:834
+#, fuzzy
+msgid "Emit implicit instantiations of templates"
+msgstr "impliciete declaratie van functie `%s'"
+
+#: options.c:837
+msgid "Use offset tables for virtual method calls"
+msgstr ""
+
+#: options.c:840
+msgid "Do not generate .size directives"
+msgstr ""
+
+# Is 'mode' enkel van toepassing op 'string', of ook op 'array'?
+#: options.c:843
+#, fuzzy
+msgid "Initialize local vars and arrays to zero"
+msgstr "beginwaarde is geen array of string-modus"
+
+#: options.c:846
+msgid "Pay attention to the \"inline\" keyword"
+msgstr ""
+
+#: options.c:855
+msgid "-finline-limit=<number>\tLimit the size of inlined functions to <number>"
+msgstr ""
+
+#: options.c:858
+msgid "-finput-charset=<cset> Specify the default character set for source files."
+msgstr ""
+
+#: options.c:861
+msgid "Instrument function entry and exit with profiling calls"
+msgstr ""
+
+#: options.c:864
+msgid "Intrinsics letters in arbitrary cases"
+msgstr ""
+
+#: options.c:867
+msgid "Intrinsics spelled as e.g. SqRt"
+msgstr ""
+
+#: options.c:870
+msgid "Intrinsics in lowercase"
+msgstr ""
+
+#: options.c:873
+msgid "Intrinsics in uppercase"
+msgstr ""
+
+#: options.c:876
+msgid "Assume native functions are implemented using JNI"
+msgstr ""
+
+#: options.c:879
+#, fuzzy
+msgid "Generate code for functions even if they are fully inlined"
+msgstr "de terugkeerwaarde van een functie kan geen funtie zijn"
+
+#: options.c:882
+msgid "Emit static const variables even if they are not used"
+msgstr ""
+
+#: options.c:888
+msgid "Give external symbols a leading underscore"
+msgstr ""
+
+#: options.c:891
+#, fuzzy
+msgid "Perform loop optimizations"
+msgstr "lege declaratie"
+
+#: options.c:894
+msgid "Language keyword letters in arbitrary cases"
+msgstr ""
+
+#: options.c:897
+msgid "Language keywords spelled as e.g. IOStat"
+msgstr ""
+
+#: options.c:900
+msgid "Language keywords in lowercase"
+msgstr ""
+
+#: options.c:903
+msgid "Language keywords in uppercase"
+msgstr ""
+
+#: options.c:906
+#, fuzzy
+msgid "Set errno after built-in math functions"
+msgstr "interne fout - slechte ingebouwde functie `%s'"
+
+#: options.c:909
+msgid "Report on permanent memory allocation"
+msgstr ""
+
+#: options.c:912
+msgid "Attempt to merge identical constants and constant variables"
+msgstr ""
+
+#: options.c:915
+msgid "Attempt to merge identical constants across compilation units"
+msgstr ""
+
+#: options.c:918
+msgid "-fmessage-length=<number>\tLimit diagnostics to <number> characters per line. 0 suppresses line-wrapping"
+msgstr ""
+
+#: options.c:921
+msgid "Delete MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:924
+msgid "Disable MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:927
+msgid "Enable MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:930
+msgid "Hide MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:933
+msgid "Force all loop invariant computations out of loops"
+msgstr ""
+
+#: options.c:936
+#, fuzzy
+msgid "Don't warn about uses of Microsoft extensions"
+msgstr "teveel argumenten voor functie"
-#: config/arm/arm.h:178
+#: options.c:945
+msgid "Use graph-coloring register allocation"
+msgstr ""
+
+#: options.c:948
+msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
+msgstr ""
+
+#: options.c:951
+msgid "Assume that receivers of Objective-C messages may be nil"
+msgstr ""
+
+#: options.c:954
+msgid "Support synchronous non-call exceptions"
+msgstr ""
+
+#: options.c:963
+msgid "Enable Objective-C exception and synchronization syntax"
+msgstr ""
+
+#: options.c:966 options.c:1290
+msgid "Perform loop unrolling for all loops"
+msgstr ""
+
+#: options.c:969 options.c:1293
+msgid "Perform loop unrolling when iteration count is known"
+msgstr ""
+
+#: options.c:972
+msgid "When possible do not generate stack frames"
+msgstr ""
+
+#: options.c:975
+msgid "Take at least one trip through each iterative DO loop"
+msgstr ""
+
+#: options.c:978
+msgid "Recognize C++ kewords like \"compl\" and \"xor\""
+msgstr ""
+
+#: options.c:981
+msgid "Do the full register move optimization pass"
+msgstr ""
+
+#: options.c:984
+msgid "Optimize sibling and tail recursive calls"
+msgstr ""
+
+#: options.c:987
+msgid "Enable optimization of static class initialization code"
+msgstr ""
+
+#: options.c:990
+msgid "Enable optional diagnostics"
+msgstr ""
+
+#: options.c:996
+msgid "Pack structure members together without holes"
+msgstr ""
+
+#: options.c:999
+msgid "Return small aggregates in memory, not registers"
+msgstr ""
+
+#: options.c:1005
+msgid "Warn about use of (only a few for now) Fortran extensions"
+msgstr ""
+
+#: options.c:1008
+msgid "Perform loop peeling"
+msgstr ""
+
+#: options.c:1011
+msgid "Enable machine specific peephole optimizations"
+msgstr ""
+
+#: options.c:1014
+msgid "Enable an RTL peephole pass before sched2"
+msgstr ""
+
+#: options.c:1017
+msgid "Downgrade conformance errors to warnings"
+msgstr ""
+
+#: options.c:1020
+#, fuzzy
+msgid "Generate position-independent code if possible"
+msgstr "Positie-onafhankelijke code wordt niet ondersteund. Genegeerd"
+
+#: options.c:1023
+#, fuzzy
+msgid "Generate position-independent code for executables if possible"
+msgstr "Positie-onafhankelijke code wordt niet ondersteund. Genegeerd"
+
+#: options.c:1026
+msgid "Generate prefetch instructions, if available, for arrays in loops"
+msgstr ""
+
+#: options.c:1032
+msgid "Enable basic program profiling code"
+msgstr ""
+
+#: options.c:1035
+msgid "Insert arc-based program profiling code"
+msgstr ""
+
+#: options.c:1038
+msgid "Enable common options for generating profile info for profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1041
+msgid "Enable common options for performing profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1044
+msgid "Insert code to profile values of expressions"
+msgstr ""
+
+#: options.c:1050
+msgid "-frandom-seed=<string>\tMake compile reproducible using <string>"
+msgstr ""
+
+#: options.c:1053
+msgid "Strength reduce all loop general induction variables"
+msgstr ""
+
+#: options.c:1056
+#, fuzzy
+msgid "Return small aggregates in registers"
+msgstr "te weinig argument voor functie"
+
+#: options.c:1059
+msgid "Enables a register move optimization"
+msgstr ""
+
+#: options.c:1062
+msgid "Perform a register renaming optimization pass"
+msgstr ""
+
+#: options.c:1065
+msgid "Reorder basic blocks to improve code placement"
+msgstr ""
+
+#: options.c:1068
+msgid "Reorder functions to improve code placement"
+msgstr ""
+
+#: options.c:1071
+msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime"
+msgstr ""
+
+#: options.c:1074
+msgid "Enable automatic template instantiation"
+msgstr ""
+
+#: options.c:1077
+msgid "Add a common subexpression elimination pass after loop optimizations"
+msgstr ""
+
+#: options.c:1080
+msgid "Run the loop optimizer twice"
+msgstr ""
+
+#: options.c:1083
+msgid "Disable optimizations that assume default FP rounding behavior"
+msgstr ""
+
+#: options.c:1086
+msgid "Generate run time type descriptor information"
+msgstr ""
+
+#: options.c:1089
+msgid "Enable scheduling across basic blocks"
+msgstr ""
+
+#: options.c:1092
+msgid "Allow speculative motion of non-loads"
+msgstr ""
+
+#: options.c:1095
+msgid "Allow speculative motion of some loads"
+msgstr ""
+
+#: options.c:1098
+msgid "Allow speculative motion of more loads"
+msgstr ""
+
+#: options.c:1101
+msgid "Allow premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1104
+msgid "Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1107
+msgid "-fsched-stalled-insns-dep=<number> Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1110
+msgid "-fsched-stalled-insns=<number> Set number of queued insns that can be prematurely scheduled"
+msgstr ""
+
+#: options.c:1113
+msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler"
+msgstr ""
+
+#: options.c:1116
+msgid "If scheduling post reload, do superblock scheduling"
+msgstr ""
+
+#: options.c:1119
+msgid "If scheduling post reload, do trace scheduling"
+msgstr ""
+
+#: options.c:1122
+msgid "Reschedule instructions before register allocation"
+msgstr ""
+
+#: options.c:1125
+msgid "Reschedule instructions after register allocation"
+msgstr ""
+
+#: options.c:1128
+msgid "Allow appending a second underscore to externals"
+msgstr ""
+
+#: options.c:1131
+msgid "Mark data as shared rather than private"
+msgstr ""
+
+#: options.c:1134
+msgid "Use the same size for double as for float"
+msgstr ""
+
+#: options.c:1137
+msgid "Use the narrowest integer type possible for enumeration types"
+msgstr ""
+
+#: options.c:1140
+msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\""
+msgstr ""
+
+#: options.c:1146
+msgid "Disable optimizations observable by IEEE signaling NaNs"
+msgstr ""
+
+#: options.c:1149
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed"
+msgstr ""
+
+#: options.c:1152
+msgid "Make \"char\" signed by default"
+msgstr ""
+
+#: options.c:1155
+msgid "Do not print names of program units as they are compiled"
+msgstr ""
+
+#: options.c:1158
+#, fuzzy
+msgid "Convert floating point constants to single precision constants"
+msgstr "floating-point fout bij het uitschrijven van een constante"
+
+#: options.c:1161
+msgid "Internally convert most source to lowercase"
+msgstr ""
+
+#: options.c:1164
+msgid "Internally preserve source case"
+msgstr ""
+
+#: options.c:1167
+msgid "Internally convert most source to uppercase"
+msgstr ""
+
+#: options.c:1173
+msgid "Insert stack checking code into the program"
+msgstr ""
+
+#: options.c:1179
+msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>"
+msgstr ""
+
+#: options.c:1182
+msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>"
+msgstr ""
+
+#: options.c:1185
+msgid "Display statistics accumulated during compilation"
+msgstr ""
+
+#: options.c:1188
+msgid "Enable assignability checks for stores into object arrays"
+msgstr ""
+
+#: options.c:1191
+msgid "Perform strength reduction optimizations"
+msgstr ""
+
+#: options.c:1194
+msgid "Assume strict aliasing rules apply"
+msgstr ""
+
+#: options.c:1203
+msgid "Symbol names spelled in mixed case"
+msgstr ""
+
+#: options.c:1206
+msgid "Symbol names in lowercase"
+msgstr ""
+
+#: options.c:1209
+msgid "Symbol names in uppercase"
+msgstr ""
+
+#: options.c:1212
+msgid "Check for syntax errors, then stop"
+msgstr ""
+
+#: options.c:1215
+msgid "-ftabstop=<number>\tDistance between tab stops for column reporting"
+msgstr ""
+
+#: options.c:1218
+msgid "-ftemplate-depth-<number>\tSpecify maximum template instantiation depth"
+msgstr ""
+
+#: options.c:1221
+msgid "Create data files needed by \"gcov\""
+msgstr ""
+
+#: options.c:1227
+msgid "Perform jump threading optimizations"
+msgstr ""
+
+#: options.c:1230
+msgid "Report the time taken by each compiler pass"
+msgstr ""
+
+#: options.c:1233
+msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model"
+msgstr ""
+
+#: options.c:1236
+msgid "Perform superblock formation via tail duplication"
+msgstr ""
+
+#: options.c:1239
+#, fuzzy
+msgid "Assume floating-point operations can trap"
+msgstr "floating-point constante buiten bereik"
+
+#: options.c:1242
+msgid "Trap for signed overflow in addition, subtraction and multiplication"
+msgstr ""
+
+#: options.c:1245
+msgid "Make prefix-radix non-decimal constants be typeless"
+msgstr ""
+
+#: options.c:1248
+msgid "Allow all ugly features"
+msgstr ""
+
+#: options.c:1251
+msgid "Hollerith and typeless can be passed as arguments"
+msgstr ""
+
+#: options.c:1254
+msgid "Allow ordinary copying of ASSIGN'ed vars"
+msgstr ""
+
+#: options.c:1257
+msgid "Dummy array dimensioned to (1) is assumed-size"
+msgstr ""
+
+#: options.c:1260
+msgid "Trailing comma in procedure call denotes null argument"
+msgstr ""
+
+#: options.c:1263
+msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
+msgstr ""
+
+#: options.c:1266
+msgid "Initialization via DATA and PARAMETER is not type-compatible"
+msgstr ""
+
+#: options.c:1269
+msgid "Allow INTEGER and LOGICAL interchangeability"
+msgstr ""
+
+#: options.c:1272
+msgid "Append underscores to externals"
+msgstr ""
+
+#: options.c:1275
+msgid "Compile whole compilation unit at a time"
+msgstr ""
+
+#: options.c:1278
+msgid "Delete libU77 intrinsics"
+msgstr ""
+
+#: options.c:1281
+msgid "Disable libU77 intrinsics"
+msgstr ""
+
+#: options.c:1284
+msgid "Enable libU77 intrinsics"
+msgstr ""
+
+#: options.c:1287
+msgid "Hide libU77 intrinsics"
+msgstr ""
+
+#: options.c:1296
+msgid "Allow math optimizations that may violate IEEE or ISO standards"
+msgstr ""
+
+#: options.c:1299
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned"
+msgstr ""
+
+#: options.c:1302
+msgid "Make \"char\" unsigned by default"
+msgstr ""
+
+#: options.c:1305
+msgid "Perform loop unswitching"
+msgstr ""
+
+#: options.c:1308
+msgid "Just generate unwind tables for exception handling"
+msgstr ""
+
+#: options.c:1314
+msgid "Use __cxa_atexit to register destructors"
+msgstr ""
+
+#: options.c:1320
+msgid "Add extra commentary to assembler output"
+msgstr ""
+
+#: options.c:1323
+msgid "Print g77-specific version information and run internal tests"
+msgstr ""
+
+#: options.c:1326
+#, fuzzy
+msgid "Use expression value profiles in optimizations"
+msgstr "lege declaratie"
+
+#: options.c:1329
+msgid "Discard unused virtual functions"
+msgstr ""
+
+#: options.c:1332
+msgid "Implement vtables using thunks"
+msgstr ""
+
+#: options.c:1335
+msgid "Program is written in VXT (Digital-like) FORTRAN"
+msgstr ""
+
+#: options.c:1338
+msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1341
+msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1344
+msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1347
+msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1353
+msgid "Emit common-like symbols as weak symbols"
+msgstr ""
+
+#: options.c:1356
+msgid "Construct webs and split unrelated uses of single variable"
+msgstr ""
+
+#: options.c:1359
+msgid "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:1362
+msgid "Generate a #line directive pointing at the current working directory"
+msgstr ""
+
+#: options.c:1365
+msgid "Assume signed arithmetic overflow wraps around"
+msgstr ""
+
+#: options.c:1368
+msgid "Store strings in writable data section"
+msgstr ""
+
+#: options.c:1371
+msgid "Emit cross referencing information"
+msgstr ""
+
+#: options.c:1374
+msgid "Print internal debugging-related information"
+msgstr ""
+
+#: options.c:1377
+msgid "Put zero initialized data in the bss section"
+msgstr ""
+
+#: options.c:1380
+msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode"
+msgstr ""
+
+#: options.c:1383
+msgid "Treat initial values of 0 like non-zero values"
+msgstr ""
+
+#: options.c:1386
+msgid "Generate debug information in default format"
+msgstr ""
+
+#: options.c:1392
+msgid "Generate debug information in COFF format"
+msgstr ""
+
+#: options.c:1395
+msgid "Generate debug information in DWARF v2 format"
+msgstr ""
+
+#: options.c:1398
+#, fuzzy
+msgid "Dump declarations to a .decl file"
+msgstr "declaratie declareert niets"
+
+#: options.c:1401
+msgid "Generate debug information in default extended format"
+msgstr ""
+
+#: options.c:1404
+msgid "-gnat<options>\tSpecify options to GNAT"
+msgstr ""
+
+#: options.c:1407
+msgid "Generate debug information in STABS format"
+msgstr ""
+
+#: options.c:1410
+msgid "Generate debug information in extended STABS format"
+msgstr ""
+
+#: options.c:1413
+msgid "Generate debug information in VMS format"
+msgstr ""
+
+#: options.c:1416
+msgid "Generate debug information in XCOFF format"
+msgstr ""
+
+#: options.c:1419
+msgid "Generate debug information in extended XCOFF format"
+msgstr ""
+
+#: options.c:1422
+msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1425
+msgid "-imacros <file>\tAccept definition of macros in <file>"
+msgstr ""
+
+#: options.c:1428
+msgid "-include <file>\tInclude the contents of <file> before other files"
+msgstr ""
+
+#: options.c:1431
+msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options"
+msgstr ""
+
+#: options.c:1434
+msgid "-isysroot <dir>\tSet <dir> to be the system root directory"
+msgstr ""
+
+#: options.c:1437
+msgid "-isystem <dir>\tAdd <dir> to the start of the system include path"
+msgstr ""
+
+#: options.c:1440
+msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1443
+msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path"
+msgstr ""
+
+#: options.c:1455
+msgid "Do not search standard system include directories (those specified with -isystem will still be used)"
+msgstr ""
+
+#: options.c:1458
+msgid "Do not search standard system include directories for C++"
+msgstr ""
+
+#: options.c:1464
+msgid "-o <file>\tPlace output into <file>"
+msgstr ""
+
+#: options.c:1467
+msgid "Enable function profiling"
+msgstr ""
+
+#: options.c:1470
+msgid "Issue warnings needed for strict compliance to the standard"
+msgstr ""
+
+#: options.c:1473
+msgid "Like -pedantic but issue them as errors"
+msgstr ""
+
+#: options.c:1476
+msgid "Generate C header of platform-specific features"
+msgstr ""
+
+#: options.c:1479
+msgid "Do not display functions compiled or elapsed time"
+msgstr ""
+
+#: options.c:1482
+#, fuzzy
+msgid "Remap file names when including files"
+msgstr "lege bestandsnaam in `#%s'"
+
+#: options.c:1485
+msgid "Conform to the ISO 1998 C++ standard"
+msgstr ""
+
+#: options.c:1488
+msgid "Conform to the ISO 1990 C standard"
+msgstr ""
+
+#: options.c:1491
+msgid "Conform to the ISO 1999 C standard"
+msgstr ""
+
+#: options.c:1494 options.c:1515 options.c:1518
+msgid "Deprecated in favor of -std=c99"
+msgstr ""
+
+#: options.c:1497
+msgid "Conform to the ISO 1998 C++ standard with GNU extensions"
+msgstr ""
+
+#: options.c:1500
+msgid "Conform to the ISO 1990 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1503
+msgid "Conform to the ISO 1999 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1506
+msgid "Deprecated in favor of -std=gnu99"
+msgstr ""
+
+#: options.c:1509
+msgid "Deprecated in favor of -std=c89"
+msgstr ""
+
+#: options.c:1512
+msgid "Conform to the ISO 1990 C standard as amended in 1994"
+msgstr ""
+
+#: options.c:1521
+msgid "Enable traditional preprocessing"
+msgstr ""
+
+#: options.c:1524
+msgid "-trigraphs\tSupport ISO C trigraphs"
+msgstr ""
+
+#: options.c:1527
+msgid "Do not predefine system-specific and GCC-specific macros"
+msgstr ""
+
+#: options.c:1530
+msgid "Enable verbose output"
+msgstr ""
+
+#: options.c:1536
+msgid "Suppress warnings"
+msgstr ""
+
+#: config/rs6000/darwin.h:98
+msgid " conflicting code gen style switches are used"
+msgstr ""
+
+#: gcc.c:743
+#, fuzzy
+msgid "GCC does not support -C or -CC without -E"
+msgstr "GNU C ondersteunt -C niet wanneer -E niet gebruikt wordt"
+
+#: gcc.c:767 java/jvspec.c:80 ada/lang-specs.h:34
+msgid "-pg and -fomit-frame-pointer are incompatible"
+msgstr "-pg en -fomit-frame-pointer zijn niet compatibel"
+
+#: gcc.c:915
+msgid "-E required when input is from standard input"
+msgstr "-E is nodig wanneer de invoer van standaardinvoer komt"
+
+#: config/arm/arm.h:197
msgid "-mapcs-26 and -mapcs-32 may not be used together"
msgstr "-mapcs-26 en -mapcs-32 mogen niet samen gebruikt worden"
-#: config/arm/arm.h:180
+#: config/arm/arm.h:199
msgid "-msoft-float and -mhard_float may not be used together"
msgstr "-msoft-float en -mhard_float mogen niet samen gebruikt worden"
-#: config/arm/arm.h:182
+#: config/arm/arm.h:201
msgid "-mbig-endian and -mlittle-endian may not be used together"
msgstr "-mbig-endian en -mlittle-endian mogen niet samen gebruikt worden"
-#: config/i386/sco5.h:195
+#: config/i386/mingw32.h:58 config/i386/cygwin.h:70
#, fuzzy
-msgid "-pg not supported on this platform"
-msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem"
+msgid "shared and mdll are not compatible"
+msgstr "-pg en -fomit-frame-pointer zijn niet compatibel"
-#: config/i386/sco5.h:196
+#: config/mips/mips.h:975
#, fuzzy
-msgid "-p and -pp specified - pick one"
-msgstr "-I- twee keer opgegeven"
+msgid "-pipe is not supported"
+msgstr "-pipe wordt niet ondersteund"
-#: config/i386/sco5.h:271
-msgid "-G and -static are mutually exclusive"
+#: config/mips/mips.h:1130 config/arc/arc.h:63
+msgid "may not use both -EB and -EL"
+msgstr "-EB en -EL mogen niet samen gebruikt worden"
+
+#: config/darwin.h:215
+msgid "-current_version only allowed with -dynamiclib"
msgstr ""
-#: f/lang-specs.h:38 gcc.c:689
-msgid "GNU C does not support -C without using -E"
-msgstr "GNU C ondersteunt -C niet wanneer -E niet gebruikt wordt"
+#: config/darwin.h:218
+msgid "-install_name only allowed with -dynamiclib"
+msgstr ""
-#: f/lang-specs.h:39 gcc.c:690
-#, fuzzy
-msgid "GNU C does not support -CC without using -E"
-msgstr "GNU C ondersteunt -C niet wanneer -E niet gebruikt wordt"
+#: config/darwin.h:223
+msgid "-bundle not allowed with -dynamiclib"
+msgstr ""
-#: config/mcore/mcore.h:60
-msgid "choose either big or little endian, not both"
+#: config/darwin.h:224
+msgid "-bundle_loader not allowed with -dynamiclib"
msgstr ""
-#: config/mcore/mcore.h:63
-msgid "choose either m340 or m210 not both"
+#: config/darwin.h:225
+msgid "-client_name not allowed with -dynamiclib"
msgstr ""
-#: config/mcore/mcore.h:64
-msgid "the m210 does not have little endian support"
+#: config/darwin.h:228
+msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
msgstr ""
-#: config/i386/cygwin.h:115
-#, fuzzy
-msgid "mno-cygwin and mno-win32 are not compatible"
-msgstr "-pg en -fomit-frame-pointer zijn niet compatibel"
+#: config/darwin.h:229
+msgid "-force_flat_namespace not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:231
+msgid "-keep_private_externs not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:232
+msgid "-private_bundle not allowed with -dynamiclib"
+msgstr ""
#: config/vax/netbsd-elf.h:42
#, fuzzy
msgid "The -shared option is not currently supported for VAX ELF."
msgstr "ingebouwde functie `%s' wordt op het ogenblik niet ondersteund"
-#: treelang/lang-specs.h:52
+#: config/i386/sco5.h:191
#, fuzzy
-msgid "-pg or -p and -fomit-frame-pointer are incompatible"
-msgstr "-pg en -fomit-frame-pointer zijn niet compatibel"
+msgid "-pg not supported on this platform"
+msgstr "sectie-attributen worden niet ondersteund op dit doelsysteem"
-#: gcc.c:847
-msgid "-E required when input is from standard input"
-msgstr "-E is nodig wanneer de invoer van standaardinvoer komt"
+#: config/i386/sco5.h:192
+#, fuzzy
+msgid "-p and -pp specified - pick one"
+msgstr "-I- twee keer opgegeven"
-#: gcc.c:851
-msgid "compilation of header file requested"
+#: config/i386/sco5.h:266
+msgid "-G and -static are mutually exclusive"
msgstr ""
-#: config/vax/vax.h:50 config/vax/vax.h:51
-msgid "profiling not supported with -mg\n"
-msgstr "profileren wordt niet ondersteund wanneer -mg gebruikt wordt\n"
+#: treelang/lang-specs.h:52
+#, fuzzy
+msgid "-pg or -p and -fomit-frame-pointer are incompatible"
+msgstr "-pg en -fomit-frame-pointer zijn niet compatibel"
-#: config/mips/mips.h:954
+#: f/lang-specs.h:38
#, fuzzy
-msgid "-pipe is not supported"
-msgstr "-pipe wordt niet ondersteund"
+msgid "GCC does not support -C without using -E"
+msgstr "GNU C ondersteunt -C niet wanneer -E niet gebruikt wordt"
-#: config/mips/mips.h:1156 config/arc/arc.h:63
-msgid "may not use both -EB and -EL"
-msgstr "-EB en -EL mogen niet samen gebruikt worden"
+#: f/lang-specs.h:39
+#, fuzzy
+msgid "GCC does not support -CC without using -E"
+msgstr "GNU C ondersteunt -C niet wanneer -E niet gebruikt wordt"
#: config/mips/r3900.h:35
#, fuzzy
@@ -21550,3 +22127,728 @@ msgstr "-mhard-float wordt niet ondersteund"
#, fuzzy
msgid "-msingle-float and -msoft-float can not both be specified"
msgstr "-msingle-float en -msoft-float kunnen niet samen gebruikt worden."
+
+#: config/rs6000/sysv4.h:1094 config/i386/freebsd-aout.h:215
+msgid "`-p' not supported; use `-pg' and gprof(1)"
+msgstr "`-p' wordt niet ondersteund; gebruik `-pg' en gprof(1)"
+
+#: config/sparc/linux64.h:208 config/sparc/linux64.h:219
+#: config/sparc/netbsd-elf.h:140 config/sparc/netbsd-elf.h:159
+#: config/sparc/sol2-bi.h:195 config/sparc/sol2-bi.h:205
+#, fuzzy
+msgid "may not use both -m32 and -m64"
+msgstr "-mfp64 en -m4650 mogen niet samen gebruikt worden"
+
+#: config/vax/vax.h:50 config/vax/vax.h:51
+msgid "profiling not supported with -mg\n"
+msgstr "profileren wordt niet ondersteund wanneer -mg gebruikt wordt\n"
+
+#: config/i386/cygwin.h:29
+#, fuzzy
+msgid "mno-cygwin and mno-win32 are not compatible"
+msgstr "-pg en -fomit-frame-pointer zijn niet compatibel"
+
+#: ada/lang-specs.h:36
+msgid "one of -c, -S, -gnatc, -gnatz, or -gnats is required for Ada"
+msgstr ""
+
+#: config/sparc/sol2-bi.h:167 config/sparc/sol2-bi.h:172
+#: config/sparc/sol2-gld-bi.h:17 config/sparc/sol2-gld-bi.h:22
+#, fuzzy
+msgid "does not support multilib"
+msgstr "%s ondersteunt %s niet"
+
+#: java/lang-specs.h:34
+#, fuzzy
+msgid "-fjni and -femit-class-files are incompatible"
+msgstr "-fpic en -mapcs-reent zijn niet compatibel"
+
+#: java/lang-specs.h:35
+#, fuzzy
+msgid "-fjni and -femit-class-file are incompatible"
+msgstr "-fpic en -mapcs-reent zijn niet compatibel"
+
+#: java/lang-specs.h:36 java/lang-specs.h:37
+msgid "-femit-class-file should used along with -fsyntax-only"
+msgstr ""
+
+#: config/mcore/mcore.h:65
+msgid "the m210 does not have little endian support"
+msgstr ""
+
+#~ msgid "concatenation of string literals with __FUNCTION__ is deprecated"
+#~ msgstr "concatenatie van stringconstantes met __FUNCTION__ is verouderd"
+
+# betere vertaling voor 'range expressions'?
+#~ msgid "ISO C++ forbids range expressions in switch statements"
+#~ msgstr "ISO C++ verbiedt het gebruik van bereik-expressies in switch statements"
+
+#~ msgid "ISO C++ forbids taking the address of a label"
+#~ msgstr "ISO C++ verbiedt het nemen van het adres van een label"
+
+#~ msgid "declaration of `%s' shadows %s"
+#~ msgstr "de declaratie van `%s' verbergt %s"
+
+#~ msgid "`struct %s' incomplete in scope ending here"
+#~ msgstr "`struct %s' onvolledig in bereik dat hier eindigt"
+
+#~ msgid "`union %s' incomplete in scope ending here"
+#~ msgstr "`union %s' onvolledig in bereik dat hier eindigt"
+
+#~ msgid "`enum %s' incomplete in scope ending here"
+#~ msgstr "`enum %s' onvolledig in bereik dat hier eindigt"
+
+#~ msgid "label `%s' defined but not used"
+#~ msgstr "label `%s' gedefinieerd maar niet gebruikt"
+
+#~ msgid "shadowing library function `%s'"
+#~ msgstr "bibliotheekfunctie `%s' wordt verborgen"
+
+#~ msgid "library function `%s' declared as non-function"
+#~ msgstr "bibliotheekfunctie `%s' gedeclareerd als niet-functie"
+
+#~ msgid "conflicting types for `%s'"
+#~ msgstr "conflicterende types voor `%s'"
+
+#~ msgid "redeclaration of `%s'"
+#~ msgstr "herdeclaratie van `%s'"
+
+#~ msgid "prototype for `%s' follows"
+#~ msgstr "prototype voor `%s' volgt"
+
+#~ msgid "non-prototype definition here"
+#~ msgstr "niet-prototype definitie hier"
+
+#~ msgid "prototype for `%s' follows and number of arguments doesn't match"
+#~ msgstr "prototype voor `%s' volgt en aantal argumenten komt niet overeen"
+
+#~ msgid "prototype for `%s' follows and argument %d doesn't match"
+#~ msgstr "prototype voor `%s' volgt en argument %d komt niet overeen"
+
+#~ msgid "type qualifiers for `%s' conflict with previous decl"
+#~ msgstr "type-qualifiers voor `%s' geven een conflict met een eerdere declaratie"
+
+#~ msgid "redundant redeclaration of `%s' in same scope"
+#~ msgstr "overbodige herdeclaratie van `%s' in zelfde bereik"
+
+#~ msgid "a parameter"
+#~ msgstr "een parameter"
+
+#~ msgid "a previous local"
+#~ msgstr "een eerdere locale"
+
+#~ msgid "a global declaration"
+#~ msgstr "een globale declaratie"
+
+#~ msgid "`%s' used prior to declaration"
+#~ msgstr "`%s' gebruikt vóór declaratie"
+
+#~ msgid "`%s' was declared implicitly `extern' and later `static'"
+#~ msgstr "`%s' was impliciet als `extern' gedeclareerd en daarna als `static'"
+
+#~ msgid "previous external decl of `%s'"
+#~ msgstr "eerdere externe declaratie van `%s'"
+
+#~ msgid "type mismatch with previous implicit declaration"
+#~ msgstr "type-conflict met eerdere impliciete declaratie"
+
+#~ msgid "`%s' was previously implicitly declared to return `int'"
+#~ msgstr "`%s' was tevoren impliciet gedeclareerd om een `int' terug te geven"
+
+#~ msgid "`%s' was declared `extern' and later `static'"
+#~ msgstr "`%s' was als `extern' gedeclareerd en daarna als `static'"
+
+#~ msgid "`%s' locally external but globally static"
+#~ msgstr "`%s' is locaal `extern', maar globaal `static'"
+
+#~ msgid "function `%s' was previously declared within a block"
+#~ msgstr "functie `%s' was tevoren binnen een blok gedeclareerd"
+
+#~ msgid "declaration of `%s' has `extern' and is initialized"
+#~ msgstr "de declaratie van `%s' is `extern' en heeft een beginwaarde"
+
+#~ msgid "initializer fails to determine size of `%s'"
+#~ msgstr "beginwaarde legt grootte van `%s' niet vast"
+
+#~ msgid "array size missing in `%s'"
+#~ msgstr "array-grootte ontbreekt in `%s'"
+
+#~ msgid "storage size of `%s' isn't known"
+#~ msgstr "opslaggrootte van `%s' is onbekend"
+
+#~ msgid "storage size of `%s' isn't constant"
+#~ msgstr "opslaggrootte van `%s' is niet constant"
+
+#, fuzzy
+#~ msgid "ISO C forbids parameter `%s' shadowing typedef"
+#~ msgstr "ANSI C verbiedt het verbergen van een typedef door parameter `%s'"
+
+#~ msgid "parameter `%s' points to incomplete type"
+#~ msgstr "parameter `%s' wijst naar een onvolledig type"
+
+#~ msgid "parameter points to incomplete type"
+#~ msgstr "parameter wijst naar een onvolledig type"
+
+#~ msgid "`void' in parameter list must be the entire list"
+#~ msgstr "`void' in parameterlijst moet de gehele parameterlijst zijn"
+
+#, fuzzy
+#~ msgid "`union %s' declared inside parameter list"
+#~ msgstr "`%s %s' binnen parameterlijst gedeclareerd"
+
+#, fuzzy
+#~ msgid "`enum %s' declared inside parameter list"
+#~ msgstr "`%s %s' binnen parameterlijst gedeclareerd"
+
+#, fuzzy
+#~ msgid "anonymous enum declared inside parameter list"
+#~ msgstr "anonieme %s gedeclareerd binnen parameterlijst"
+
+#, fuzzy
+#~ msgid "bit-field `%s' type invalid in ISO C"
+#~ msgstr "type van bitveld `%s' is ongeldig in ANSI C"
+
+#~ msgid "duplicate member `%s'"
+#~ msgstr "herhaald lid `%s'"
+
+#~ msgid "parm types given both in parmlist and separately"
+#~ msgstr "parametertypes zowel in parameterlijst als apart opgegeven"
+
+#~ msgid "parameter `%s' declared void"
+#~ msgstr "parameter `%s' als void gedeclareerd"
+
+#, fuzzy
+#~ msgid "ignoring invalid multibyte character"
+#~ msgstr "ongeldig multibyte-karakter wordt genegeerd"
+
+#, fuzzy
+#~ msgid "-Wno-strict-prototypes is not supported in C++"
+#~ msgstr "-pipe wordt niet ondersteund"
+
+#~ msgid "parse error"
+#~ msgstr "parse-fout"
+
+#~ msgid "ISO C forbids the address of a cast expression"
+#~ msgstr "ANSI C verbiedt het adres van een cast-expressie"
+
+#~ msgid "initializer for static variable is not constant"
+#~ msgstr "beginwaarde voor static variabele is geen constante"
+
+#~ msgid "initializer for static variable uses complicated arithmetic"
+#~ msgstr "beginwaarde voor static variabele gebruikt ingewikkelde berekening"
+
+#~ msgid "aggregate initializer is not constant"
+#~ msgstr "aggregaat-beginwaarde is geen constante"
+
+#~ msgid "aggregate initializer uses complicated arithmetic"
+#~ msgstr "aggregaat-beginwaarde gebruikt ingewikkelde berekening"
+
+#~ msgid "open %s"
+#~ msgstr "open %s"
+
+#~ msgid "incompatibilities between object file & expected values"
+#~ msgstr "incompatibiliteiten tussen objectbestand & verwachte waarden"
+
+#~ msgid ""
+#~ "\n"
+#~ "Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Symbooltabel #%d wordt verwerkt (offset = 0x%.8lx, soort = %s)\n"
+
+#~ msgid "string section missing"
+#~ msgstr "string-sectie ontbreekt"
+
+#~ msgid "section pointer missing"
+#~ msgstr "sectie-pointer ontbreekt"
+
+#~ msgid "no symbol table found"
+#~ msgstr "geen symbooltabel gevonden"
+
+#~ msgid ""
+#~ "\n"
+#~ "Updating header and load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Hoofding en laadcommandos worden aangepast.\n"
+#~ "\n"
+
+#~ msgid "load command map, %d cmds, new size %ld.\n"
+#~ msgstr "laadcommando-kaart, %d commando's, nieuwe grootte %ld.\n"
+
+#~ msgid ""
+#~ "writing load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "laadcommandos worden geschreven.\n"
+#~ "\n"
+
+#~ msgid "close %s"
+#~ msgstr "close %s"
+
+# 'regio' klinkt niet echt, maar 'streek' lijkt me nog slechter
+#~ msgid "could not convert 0x%l.8x into a region"
+#~ msgstr "kon 0x%l.8x niet naar een regio omzetten"
+
+#~ msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
+#~ msgstr "%s-functie, regio %d, offset = %ld (0x%.8lx)\n"
+
+#~ msgid "bad magic number"
+#~ msgstr "slecht magisch getal"
+
+#~ msgid "bad header version"
+#~ msgstr "slechte versie van hoofding"
+
+# trekt op nie veel
+#~ msgid "bad raw header version"
+#~ msgstr "slechte versie van rauwe hoofding"
+
+#~ msgid "raw header buffer too small"
+#~ msgstr "buffer voor rauwe hoofding te klein"
+
+#~ msgid "old raw header file"
+#~ msgstr "oud bestand met rauwe hoofding"
+
+#~ msgid "unsupported version"
+#~ msgstr "niet-ondersteunde versie"
+
+#~ msgid "unknown {de,en}code_mach_o_hdr return value %d"
+#~ msgstr "onbekende returnwaarde %d voor {de,en}code_mach_o_hdr"
+
+#~ msgid "fstat %s"
+#~ msgstr "fstat %s"
+
+#~ msgid "lseek %s 0"
+#~ msgstr "lseek %s 0"
+
+#~ msgid "read %s"
+#~ msgstr "read %s"
+
+#~ msgid "read %ld bytes, expected %ld, from %s"
+#~ msgstr "%ld bytes gelezen (%ld verwacht) van %s"
+
+#~ msgid "msync %s"
+#~ msgstr "msync %s"
+
+#~ msgid "munmap %s"
+#~ msgstr "munmap %s"
+
+#~ msgid "write %s"
+#~ msgstr "write %s"
+
+#~ msgid "wrote %ld bytes, expected %ld, to %s"
+#~ msgstr "%ld bytes geschreven (%ld verwacht) naar %s"
+
+#, fuzzy
+#~ msgid "ISO C++ does not permit \"%s\" in #if"
+#~ msgstr "ANSI C staat het gebruik van `varargs.h' niet toe"
+
+#, fuzzy
+#~ msgid "invalid character '%c' in #if"
+#~ msgstr "ongeldig karakter in naam van macro-parameter"
+
+#, fuzzy
+#~ msgid "invalid character '\\%03o' in #if"
+#~ msgstr "ongeldig karakter in naam van macro-parameter"
+
+#, fuzzy
+#~ msgid "%s: Not a directory"
+#~ msgstr "%s: %s: Is geen folder"
+
+#, fuzzy
+#~ msgid "directory name missing after %s"
+#~ msgstr "Foldernaam ontbreekt na `%s' optie"
+
+#, fuzzy
+#~ msgid "file name missing after %s"
+#~ msgstr "Bestandsnaam ontbreekt na %s optie"
+
+#, fuzzy
+#~ msgid "path name missing after %s"
+#~ msgstr "Bestandsnaam ontbreekt na %s optie"
+
+#, fuzzy
+#~ msgid "\"/*\" within comment"
+#~ msgstr "`/*' binnen commentaar"
+
+#, fuzzy
+#~ msgid "no newline at end of file"
+#~ msgstr "niet-herkende tekst op einde van #line"
+
+# "escape-sequentie"?! Maar wat is er beter?
+#, fuzzy
+#~ msgid "escape sequence out of range for its type"
+#~ msgstr "escape-sequentie buiten bereik voor karakter"
+
+#, fuzzy
+#~ msgid "#pragma once is obsolete"
+#~ msgstr "`#pragma once' is verouderd"
+
+#, fuzzy
+#~ msgid "unterminated #%s"
+#~ msgstr "niet-beëindigde commentaar"
+
+#, fuzzy
+#~ msgid "macro \"%s\" is not used"
+#~ msgstr "`%.*s' is niet gedefinieerd"
+
+#, fuzzy
+#~ msgid "\"%s\" redefined"
+#~ msgstr "`%.*s' opnieuw gedefinieerd"
+
+#, fuzzy
+#~ msgid "this is the location of the previous definition"
+#~ msgstr "dit is een eerdere declaratie"
+
+#, fuzzy
+#~ msgid "In member function `%s':"
+#~ msgstr "bibliotheekfunctie `%s' wordt verborgen"
+
+#, fuzzy
+#~ msgid "In function `%s':"
+#~ msgstr "Ongeldige optie `%s'"
+
+#, fuzzy
+#~ msgid "ERROR: too many basic blocks in function %s\n"
+#~ msgstr "teveel argumenten voor functie `%s'"
+
+#, fuzzy
+#~ msgid "invalid string `%s' in define_bypass"
+#~ msgstr "ongeldig gebruik van het niet gedefinieerde type `%s %s'"
+
+#, fuzzy
+#~ msgid "invalid second string `%s' in presence_set"
+#~ msgstr "ongeldige macronaam"
+
+#, fuzzy
+#~ msgid "invalid option `%s' in automata_option"
+#~ msgstr "Ongeldige optie `%s'"
+
+#, fuzzy
+#~ msgid "invalid `%s' in reservation `%s'"
+#~ msgstr "herdeclaratie van `%s'"
+
+#, fuzzy
+#~ msgid "unit `%s' in exclusion is not declared"
+#~ msgstr "`%.*s' is niet gedefinieerd"
+
+#, fuzzy
+#~ msgid "unit `%s' excludes itself"
+#~ msgstr "breedte van `%s' overschrijdt zijn type"
+
+#, fuzzy
+#~ msgid "repeated declaration of automaton `%s'"
+#~ msgstr "impliciete declaratie van functie `%s'"
+
+#, fuzzy
+#~ msgid "automaton `%s' is not declared"
+#~ msgstr "`%.*s' is niet gedefinieerd"
+
+#, fuzzy
+#~ msgid "`%s' is declared as cpu unit"
+#~ msgstr "veld `%s' als een functie gedeclareerd"
+
+#, fuzzy
+#~ msgid "`%s' is declared as cpu reservation"
+#~ msgstr "veld `%s' als een functie gedeclareerd"
+
+#, fuzzy
+#~ msgid "repeated declaration of unit `%s'"
+#~ msgstr "herdeclaratie van `%s'"
+
+#, fuzzy
+#~ msgid "repeated declaration of reservation `%s'"
+#~ msgstr "impliciete declaratie van functie `%s'"
+
+#, fuzzy
+#~ msgid "there is no insn reservation `%s'"
+#~ msgstr "geen eerdere declaratie voor `%s'"
+
+#, fuzzy
+#~ msgid "bypass `%s - %s' is already defined"
+#~ msgstr "veld `%s' heeft al een beginwaarde gekregen"
+
+#, fuzzy
+#~ msgid "undeclared unit or reservation `%s'"
+#~ msgstr "ongeldige naam `%s'"
+
+# Ik zou 'library' kunnen vertalen, maar ik heb in compiler-manuals nog niet
+# dikwijls 'bibliotheek' zien gebruiken.
+# De vertaalde boodschappen voor make gebruiken dat op het ogenblik wél, maar
+# ik ben van plan daar verandering in te brengen.
+#, fuzzy
+#~ msgid "unit `%s' is not used"
+#~ msgstr "veld `%s' niet gevonden"
+
+#, fuzzy
+#~ msgid "reservation `%s' is not used"
+#~ msgstr "de zwakke declaratie van `%s' moet publiek zijn"
+
+#, fuzzy
+#~ msgid "cycle in definition of reservation `%s'"
+#~ msgstr "herdefinitie van `union %s'"
+
+#, fuzzy
+#~ msgid "-split has no argument."
+#~ msgstr "geen argumenten"
+
+#, fuzzy
+#~ msgid "option `-split' has not been implemented yet\n"
+#~ msgstr "profileren wordt niet ondersteund wanneer -mg gebruikt wordt\n"
+
+#, fuzzy
+#~ msgid "No input file name."
+#~ msgstr "Geen invoerbestanden"
+
+#, fuzzy
+#~ msgid "Warn about constructs whose meanings change in ISO C"
+#~ msgstr "array subscript is van het type `char'"
+
+#, fuzzy
+#~ msgid "Warn when trigraphs are encountered"
+#~ msgstr "%lu trigraph(s) tegengekomen"
+
+#, fuzzy
+#~ msgid "unrecognized option `%s'"
+#~ msgstr "onbekende formaatspecificatie"
+
+#, fuzzy
+#~ msgid "-Wid-clash-LEN is no longer supported"
+#~ msgstr "-pipe wordt niet ondersteund"
+
+#, fuzzy
+#~ msgid "invalid --param option: %s"
+#~ msgstr "Ongeldige optie `%s'"
+
+#, fuzzy
+#~ msgid "#`%s' not supported by %s#"
+#~ msgstr "-pipe wordt niet ondersteund"
+
+#~ msgid "const objects cannot go in .sdata/.sbss"
+#~ msgstr "constante objecten kunnen niet in .sdata/.sbbs geplaatst worden"
+
+# Ik ben niet zeker of short-branch vertaald moet worden.
+#, fuzzy
+#~ msgid "internal gcc monitor: short-branch(%x)"
+#~ msgstr "Interne monitor van gcc: short-branch(%x)"
+
+#, fuzzy
+#~ msgid "internal gcc error: Can't express symbolic location"
+#~ msgstr "Interne fout van gcc: Kan symbolische locatie niet uitdrukken"
+
+#~ msgid "argument #%d is a structure"
+#~ msgstr "argument #%d is een structure"
+
+#, fuzzy
+#~ msgid "%%R not followed by %%B/C/D/E"
+#~ msgstr "%E niet gevolgd door %B/C/D/E"
+
+#~ msgid "invalid %%Q value"
+#~ msgstr "ongeldige waarde voor %%Q"
+
+#, fuzzy
+#~ msgid "invalid %%o value"
+#~ msgstr "ongeldige waarde voor %o"
+
+#, fuzzy
+#~ msgid "`%%d' operand isn't a register"
+#~ msgstr "operand `%d' is geen register"
+
+#, fuzzy
+#~ msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
+#~ msgstr "-fpic en -mapcs-reent zijn niet compatibel"
+
+#, fuzzy
+#~ msgid "invalid option `-mshort-data-%s'"
+#~ msgstr "Pngeldige optie `-%s'"
+
+#, fuzzy
+#~ msgid "-mshort-data-%s is too large "
+#~ msgstr "omvang van array `%s' is te groot"
+
+#, fuzzy
+#~ msgid "-mshort-data-%s and PIC are incompatible"
+#~ msgstr "-mbsd en -mxopen zijn niet compatibel"
+
+#~ msgid "bad value (%s) for -mips switch"
+#~ msgstr "slechte waarde (%s) voor optie -mips"
+
+#, fuzzy
+#~ msgid "invalid option `entry%s'"
+#~ msgstr "Ongeldige optie `%s'"
+
+#, fuzzy
+#~ msgid "unknown -mvrsave= option specified: '%s'"
+#~ msgstr "onbekende machine-modus `%s'"
+
+#, fuzzy
+#~ msgid "`%D' must be declared before use"
+#~ msgstr "`%s' mag niet als alleen-lezen gedeclareerd worden"
+
+#, fuzzy
+#~ msgid "field `%D' invalidly declared offset type"
+#~ msgstr "bitveld `%s' heeft een ongeldig type"
+
+#, fuzzy
+#~ msgid "invalid declarator"
+#~ msgstr "lege declaratie"
+
+#, fuzzy
+#~ msgid "parameter `%D' invalidly declared offset type"
+#~ msgstr "parameter `%s' als void gedeclareerd"
+
+#, fuzzy
+#~ msgid "`%s %T' declares a new type at namespace scope"
+#~ msgstr "`%s %s' binnen parameterlijst gedeclareerd"
+
+#, fuzzy
+#~ msgid "base class `%T' has incomplete type"
+#~ msgstr "veld `%s' heeft een onvolledig type"
+
+#, fuzzy
+#~ msgid "semicolon missing after declaration of `%#T'"
+#~ msgstr "conflicterende declaraties van `%s'"
+
+#, fuzzy
+#~ msgid "invalid data member initialization"
+#~ msgstr "ongeldige beginwaarde"
+
+#, fuzzy
+#~ msgid "`%D' is not a namespace"
+#~ msgstr "`%s' is geen iterator"
+
+#, fuzzy
+#~ msgid "`%T' is not a class or union type"
+#~ msgstr "`%s' is smaller dan waarden van zijn type"
+
+#, fuzzy
+#~ msgid "%s: In instantiation of `%s':\n"
+#~ msgstr "(dicht bij initialisatie van `%s')"
+
+#, fuzzy
+#~ msgid "previous friend declaration of `%D'"
+#~ msgstr "eerdere declaratie van `%s'"
+
+#, fuzzy
+#~ msgid "invalid use of member `%D'"
+#~ msgstr "ongeldige beginwaarde voor member `%s'"
+
+#, fuzzy
+#~ msgid "object missing in `%E'"
+#~ msgstr "array-grootte ontbreekt in `%s'"
+
+#, fuzzy
+#~ msgid "semicolon missing after declaration of `%T'"
+#~ msgstr "conflicterende declaraties van `%s'"
+
+#, fuzzy
+#~ msgid "`::%D' undeclared (first use here)"
+#~ msgstr "`%s' is hier niet gedeclareerd (eerste gebruik in deze functie)"
+
+#, fuzzy
+#~ msgid "ISO C++ forbids an empty condition for `%s'"
+#~ msgstr "ANSI C verbiedt een leeg bronbestand"
+
+#, fuzzy
+#~ msgid "definition of class `%T' in condition"
+#~ msgstr "herdefinitie van `union %s'"
+
+#, fuzzy
+#~ msgid "definition of enum `%T' in condition"
+#~ msgstr "herdefinitie van `union %s'"
+
+#, fuzzy
+#~ msgid "definition of array `%#D' in condition"
+#~ msgstr "herdefinitie van `union %s'"
+
+#, fuzzy
+#~ msgid "`%T' is not a valid expression"
+#~ msgstr "ongeldig gebruik van een void-expressie"
+
+#, fuzzy
+#~ msgid "initialization of new expression with `='"
+#~ msgstr "Ongeldig token in expressie"
+
+#, fuzzy
+#~ msgid "invalid use of template `%D'"
+#~ msgstr "ongeldige beginwaarde voor member `%s'"
+
+#, fuzzy
+#~ msgid "ISO C++ forbids label declarations"
+#~ msgstr "ANSI C verbiedt labeldeclaraties"
+
+#, fuzzy
+#~ msgid "no type `%D' in `%T'"
+#~ msgstr "het type van de teruggeefwaarde van `%s' is niet `int'"
+
+#, fuzzy
+#~ msgid "type specifier omitted for parameter `%E'"
+#~ msgstr "opslagklasse opgegeven voor parameter `%s'"
+
+#, fuzzy
+#~ msgid "ISO C++ does not permit named return values"
+#~ msgstr "ANSI C staat het gebruik van `varargs.h' niet toe"
+
+# Is the %s the argument, or is it 'of' the argument?
+#, fuzzy
+#~ msgid "invalid type `%T' for default argument to `%T'"
+#~ msgstr "ongeldig type-argument `%s'"
+
+#, fuzzy
+#~ msgid "%s before `%c'"
+#~ msgstr "%s voor `%s'"
+
+#, fuzzy
+#~ msgid "%s before `\\%o'"
+#~ msgstr "%s voor `%s'"
+
+#, fuzzy
+#~ msgid "%s before `%s' token"
+#~ msgstr "%s voor `%s'"
+
+#, fuzzy
+#~ msgid "invalid application of `%s' to non-static member"
+#~ msgstr "`sizeof' toegepast op een bitveld"
+
+#, fuzzy
+#~ msgid "return-statement with no value, in function declared with a non-void return type"
+#~ msgstr "`return' zonder waarde in een functie die een niet-void waarde teruggeeft"
+
+#, fuzzy
+#~ msgid "return-statement with a value, in function declared with a void return type"
+#~ msgstr "`return' met waarde in een functie die void teruggeeft"
+
+#, fuzzy
+#~ msgid "`%T' fails to be a typedef or built-in type"
+#~ msgstr "`%s' is geen typedef of ingebouwd type"
+
+#, fuzzy
+#~ msgid "Only emit explicit template instantiations"
+#~ msgstr "herhaalde definitie `%s'"
+
+#~ msgid "ignoring pragma: %s"
+#~ msgstr "pragma wordt genegeerd: %s"
+
+#~ msgid "`%s' cannot be statically allocated"
+#~ msgstr "`%s' kan niet statisch gealloceerd worden"
+
+#, fuzzy
+#~ msgid "cannot find method"
+#~ msgstr "kan `nm' niet vinden"
+
+#, fuzzy
+#~ msgid "duplicate definition of class method `%s'"
+#~ msgstr "herhaalde definitie `%s'"
+
+#, fuzzy
+#~ msgid "duplicate definition of instance method `%s'"
+#~ msgstr "herhaalde definitie `%s'"
+
+#, fuzzy
+#~ msgid "duplicate declaration of instance method `%s'"
+#~ msgstr "impliciete declaratie van functie `%s'"
+
+#, fuzzy
+#~ msgid "Specify the name of the class for constant strings"
+#~ msgstr "het argument van `asm' is geen constante string"
diff --git a/gcc/po/sv.po b/gcc/po/sv.po
index a8ebd4eafe8..faeb1d709e3 100644
--- a/gcc/po/sv.po
+++ b/gcc/po/sv.po
@@ -26,7 +26,8 @@
msgid ""
msgstr ""
"Project-Id-Version: gcc 3.2\n"
-"POT-Creation-Date: 2003-10-24 13:20+0200\n"
+"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
+"POT-Creation-Date: 2004-02-06 01:40+0000\n"
"PO-Revision-Date: 2002-08-26 12:58+0200\n"
"Last-Translator: Dennis Björklund <db@zigo.dhs.org>\n"
"Language-Team: Swedish <sv@li.org>\n"
@@ -34,1065 +35,1149 @@ msgstr ""
"Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8-bit\n"
-#: attribs.c:185
+#: attribs.c:178
#, c-format
msgid "`%s' attribute directive ignored"
msgstr "attributet \"%s\" ignorerat"
-#: attribs.c:193
+#: attribs.c:186
#, c-format
msgid "wrong number of arguments specified for `%s' attribute"
msgstr "fel antal argument angett för attributet `%s'"
-#: attribs.c:210
+#: attribs.c:203
#, c-format
msgid "`%s' attribute does not apply to types"
msgstr "attributet \"%s\" är inte applicerbart på typer"
-#: attribs.c:247
+#: attribs.c:249
#, c-format
msgid "`%s' attribute only applies to function types"
msgstr "attributet \"%s\" fungerar bara på funktionstyper"
-#: attribs.c:404 c-common.c:5275 c-common.c:5297 c-common.c:5319
-#: c-common.c:5350 c-common.c:5372 c-common.c:5397 c-common.c:5423
-#: c-common.c:5453 c-common.c:5491 c-common.c:5538 c-common.c:5568
-#: c-common.c:5598 c-common.c:5621 c-common.c:5878 c-common.c:5900
-#: c-common.c:5943 c-common.c:6020 c-common.c:6076 c-common.c:6103
-#: c-common.c:6186 c-common.c:6220 c-common.c:6574 config/arm/arm.c:2101
-#: config/arm/arm.c:2128 config/avr/avr.c:4774 config/h8300/h8300.c:3693
-#: config/h8300/h8300.c:3718 config/i386/i386.c:1403 config/i386/winnt.c:78
-#: config/ip2k/ip2k.c:3204
+#: attribs.c:416 c-common.c:4344 c-common.c:4363 c-common.c:4381
+#: c-common.c:4408 c-common.c:4427 c-common.c:4450 c-common.c:4473
+#: c-common.c:4499 c-common.c:4533 c-common.c:4577 c-common.c:4605
+#: c-common.c:4633 c-common.c:4652 c-common.c:4907 c-common.c:4929
+#: c-common.c:4964 c-common.c:5031 c-common.c:5077 c-common.c:5135
+#: c-common.c:5166 c-common.c:5512 c-common.c:5535 c-common.c:5574
+#: config/arm/arm.c:2278 config/arm/arm.c:2305 config/avr/avr.c:4539
+#: config/h8300/h8300.c:4281 config/h8300/h8300.c:4304 config/i386/i386.c:1599
+#: config/i386/i386.c:15299 config/i386/winnt.c:86 config/ia64/ia64.c:1053
+#: config/ip2k/ip2k.c:3151
#, c-format
msgid "`%s' attribute ignored"
msgstr "attributet `%s' ignorerat"
-#: builtins.c:285
+#: builtins.c:318
msgid "offset outside bounds of constant string"
msgstr "index till en konstant sträng pekar utanför dess gränser"
-#: builtins.c:765
+#: builtins.c:786
msgid "second arg to `__builtin_prefetch' must be a constant"
msgstr "andra argumentet till \"__builtin_prefetch\" måste vara en konstant"
-#: builtins.c:772
+#: builtins.c:793
msgid "invalid second arg to __builtin_prefetch; using zero"
msgstr "ogiltigt andra argument till __builtin_prefetch; använder noll"
-#: builtins.c:779
+#: builtins.c:800
msgid "third arg to `__builtin_prefetch' must be a constant"
msgstr "tredje argumentet till \"__builtin_prefetch\" måste vara en konstant"
-#: builtins.c:786
+#: builtins.c:807
msgid "invalid third arg to __builtin_prefetch; using zero"
msgstr "ogiltigt tredje argument till __builtin_prefetch; använder noll"
-#. ??? We used to try and build up a call to the out of line function,
-#. guessing about what registers needed saving etc. This became much
-#. harder with __builtin_va_start, since we don't have a tree for a
-#. call to __builtin_saveregs to fall back on. There was exactly one
-#. port (i860) that used this code, and I'm unconvinced it could actually
-#. handle the general case. So we no longer try to handle anything
-#. weird and make the backend absorb the evil.
-#: builtins.c:2875
-msgid "__builtin_saveregs not supported by this target"
-msgstr "__builtin_saveregs stöds inte på denna målarkitektur"
-
-#: builtins.c:2917
+#: builtins.c:3828
msgid "argument of `__builtin_args_info' must be constant"
msgstr "argumentet till \"__builtin_args_info\" måste vara konstant"
-#: builtins.c:2923
+#: builtins.c:3834
msgid "argument of `__builtin_args_info' out of range"
msgstr "argument till \"__builtin_args_info\" är utanför sitt intervall"
-#: builtins.c:2929
+#: builtins.c:3840
msgid "missing argument in `__builtin_args_info'"
msgstr "argument saknas till \"__builtin_args_info\""
-#: builtins.c:2960
+#: builtins.c:3856
msgid "`va_start' used in function with fixed args"
msgstr "\"va_start\" används i en funktion med fixt antal parametrar"
-#: builtins.c:2979
+#: builtins.c:3875
msgid "second parameter of `va_start' not last named argument"
msgstr "andra parametern till \"va_start\" var inte det sista namngivna argumentet"
#. Evidently an out of date version of <stdarg.h>; can't validate
#. va_start's second argument, but can still work as intended.
-#: builtins.c:2984
+#: builtins.c:3880
msgid "`__builtin_next_arg' called without an argument"
msgstr "\"__builtin_next_arg\" anropad utan argument"
-#: builtins.c:3070
+#: builtins.c:3969
msgid "too many arguments to function `va_start'"
msgstr "För många argument till funktionen \"va_start\""
-#: builtins.c:3172
+#: builtins.c:4091
msgid "first argument to `va_arg' not of type `va_list'"
msgstr "första argumentet till \"va_arg\" är inte av typen \"va_list\""
#. Unfortunately, this is merely undefined, rather than a constraint
#. violation, so we cannot make this an error. If this call is never
#. executed, the program is still strictly conforming.
-#: builtins.c:3204
+#: builtins.c:4123
#, c-format
msgid "`%s' is promoted to `%s' when passed through `...'"
msgstr "\"%s\" konverteras till \"%s\" när det skickas via \"...\""
-#: builtins.c:3209
+#: builtins.c:4128
#, c-format
msgid "(so you should pass `%s' not `%s' to `va_arg')"
msgstr "(alltså skall du skicka \"%s\" och inte \"%s\" till \"va_arg\")"
-#: builtins.c:3340
+#: builtins.c:4240
msgid "invalid arg to `__builtin_frame_address'"
msgstr "ogiltigt argument till \"__builtin_frame_address\""
-#: builtins.c:3342
+#: builtins.c:4242
msgid "invalid arg to `__builtin_return_address'"
msgstr "ogiltigt argument till \"__builtin_return_address\""
-#: builtins.c:3356
+#: builtins.c:4256
msgid "unsupported arg to `__builtin_frame_address'"
msgstr "Icke supportat argument till \"__builtin_frame_address\""
-#: builtins.c:3358
+#: builtins.c:4258
msgid "unsupported arg to `__builtin_return_address'"
msgstr "Icke supportat argument till \"__builtin_return_address\""
-#: builtins.c:3530
+#: builtins.c:4418
msgid "second arg to `__builtin_expect' must be a constant"
msgstr "andra argumentet till \"__builtin_expect\" måste vara en konstant"
-#: builtins.c:4028
+#: builtins.c:5359
msgid "__builtin_longjmp second argument must be 1"
msgstr "andra argumentet till __builtin_longjmp måste vara 1"
-#. just do library call, if unknown builtin
-#: builtins.c:4092 c-common.c:4459
+#: builtins.c:5454
#, c-format
msgid "built-in function `%s' not currently supported"
msgstr "inbyggd funktion \"%s\" stöds inte för närvarande"
-#: builtins.c:4165
+#: builtins.c:5594
#, fuzzy
msgid "target format does not support infinity"
msgstr "målprocessorn stödjer inte THUMB-instruktioner"
-#: c-common.c:1168
-#, c-format
-msgid "`%s' is not defined outside of function scope"
+#: c-common.c:934
+msgid "%Hsuggest explicit braces to avoid ambiguous `else'"
+msgstr ""
+
+#: c-common.c:1158
+#, fuzzy
+msgid "%J'%D' is not defined outside of function scope"
msgstr "\"%s\" är inte definierad utanför funktions-scope"
-#: c-common.c:1189
+#: c-common.c:1178
#, c-format
msgid "string length `%d' is greater than the length `%d' ISO C%d compilers are required to support"
msgstr "stränglängden \"%d\" är större än den minsta längden \"%d\" som ISO C%d kompilatorer behöver stödja"
-#: c-common.c:1247
-msgid "concatenation of string literals with __FUNCTION__ is deprecated"
-msgstr "sammanslagning av strängliteraler tillsammans med __FUNCTION__ är föråldrat"
-
-#: c-common.c:1343
+#: c-common.c:1218
msgid "overflow in constant expression"
msgstr "spill i konstant uttryck"
-#: c-common.c:1364
+#: c-common.c:1238
msgid "integer overflow in expression"
msgstr "heltalsspill i uttryck"
-#: c-common.c:1373
+#: c-common.c:1247
msgid "floating point overflow in expression"
msgstr "flyttalsspill i uttryck"
-#: c-common.c:1379
+#: c-common.c:1253
#, fuzzy
msgid "vector overflow in expression"
msgstr "heltalsspill i uttryck"
#. This detects cases like converting -129 or 256 to unsigned char.
-#: c-common.c:1402
+#: c-common.c:1275
msgid "large integer implicitly truncated to unsigned type"
msgstr "stort heltal implicit trunkerat till unsigned typ"
-#: c-common.c:1404
+#: c-common.c:1277
msgid "negative integer implicitly converted to unsigned type"
msgstr "negativt heltal implicit konverterat till unsigned typ"
-#: c-common.c:1452
+#: c-common.c:1323
msgid "overflow in implicit constant conversion"
msgstr "spill i implicit constant konvertering"
-#: c-common.c:1600
+#: c-common.c:1459
#, c-format
msgid "operation on `%s' may be undefined"
msgstr "operation på \"%s\" kan vara odefinierad"
-#: c-common.c:1891
+#: c-common.c:1743
msgid "expression statement has incomplete type"
msgstr "uttryckssats har inkomplett typ"
-#: c-common.c:1924
+#: c-common.c:1775
msgid "case label does not reduce to an integer constant"
msgstr "case-etikett reducerar inte till en heltalskonstant"
-#: c-common.c:2228
+#: c-common.c:2105
msgid "invalid truth-value expression"
msgstr "ogiltigt sanningsvärdeuttryck"
-#: c-common.c:2279
+#: c-common.c:2156
#, c-format
msgid "invalid operands to binary %s"
msgstr "ogiltiga operander till binär %s"
-#: c-common.c:2513
+#: c-common.c:2390
msgid "comparison is always false due to limited range of data type"
msgstr "jämförelsen är alltid falsk på grund av begränsat intervall för datatypen"
-#: c-common.c:2515
+#: c-common.c:2392
msgid "comparison is always true due to limited range of data type"
msgstr "jämförelsen är alltid sann på grund av begränsat intervall för datatypen"
-#: c-common.c:2585
+#: c-common.c:2462
msgid "comparison of unsigned expression >= 0 is always true"
msgstr "jämförelse med unsigned-uttryck >= 0 är alltid sant"
-#: c-common.c:2594
+#: c-common.c:2471
msgid "comparison of unsigned expression < 0 is always false"
msgstr "jämförelse med unsigned-uttryck < 0 är alltid falskt"
-#: c-common.c:2641
+#: c-common.c:2516
msgid "pointer of type `void *' used in arithmetic"
msgstr "pekare av typen \"void *\" använd med aritmetik"
-#: c-common.c:2647
+#: c-common.c:2522
msgid "pointer to a function used in arithmetic"
msgstr "pekare till funktion använd med aritmetik"
-#: c-common.c:2653
+#: c-common.c:2528
msgid "pointer to member function used in arithmetic"
msgstr "pekare till medlemsfunktion använd med aritmetik"
-#: c-common.c:2659
+#: c-common.c:2534
msgid "pointer to a member used in arithmetic"
msgstr "pekare till en medlemsfunktion använd med aritmetik"
-#: c-common.c:2746 f/com.c:14762
+#: c-common.c:2623 f/com.c:14734
msgid "struct type value used where scalar is required"
msgstr "struct-värde använt där skalär krävs"
-#: c-common.c:2750 f/com.c:14766
+#: c-common.c:2627 f/com.c:14738
msgid "union type value used where scalar is required"
msgstr "union-värde använt där skalär krävs"
-#: c-common.c:2754 f/com.c:14770
+#: c-common.c:2631 f/com.c:14742
msgid "array type value used where scalar is required"
msgstr "fält-värde använd där skalär krävs"
-#: c-common.c:2874 f/com.c:14903
+#. Common Ada/Pascal programmer's mistake. We always warn
+#. about this since it is so bad.
+#: c-common.c:2668
+msgid "the address of `%D', will always evaluate as `true'"
+msgstr ""
+
+#: c-common.c:2762 f/com.c:14874
msgid "suggest parentheses around assignment used as truth value"
msgstr "föreslår parenteser runt tilldelning som används som sanningsvärde"
-#: c-common.c:2918 c-common.c:2950
+#: c-common.c:2808 c-common.c:2848
msgid "invalid use of `restrict'"
msgstr "ogiltigt användande av \"restrict\""
-#: c-common.c:3064
+#: c-common.c:2958
#, fuzzy
msgid "invalid application of `sizeof' to a function type"
msgstr "ISO C++ förbjuder användning av \"sizeof\" på funktioner"
-#: c-common.c:3074
+#: c-common.c:2968
#, fuzzy, c-format
msgid "invalid application of `%s' to a void type"
msgstr "ogiltig operation på oinstansierad typ"
-#: c-common.c:3080
+#: c-common.c:2974
#, fuzzy, c-format
msgid "invalid application of `%s' to an incomplete type"
msgstr "sizeof applicerat på en inkomplett typ"
-#: c-common.c:3121
+#: c-common.c:3014
msgid "`__alignof' applied to a bit-field"
msgstr ""
-#: c-common.c:3618
+#: c-common.c:3506
#, fuzzy, c-format
msgid "cannot disable built-in function `%s'"
msgstr "döljer inbyggd funktion \"%s\""
-#: c-common.c:3787 c-typeck.c:1748
+#: c-common.c:3667 c-typeck.c:1941
#, c-format
msgid "too few arguments to function `%s'"
msgstr "för få argument till funktionen \"%s\""
-#: c-common.c:3793 c-typeck.c:1601
+#: c-common.c:3673 c-typeck.c:1802
#, c-format
msgid "too many arguments to function `%s'"
msgstr "för många argument till funktionen \"%s\""
-#: c-common.c:3812
+#: c-common.c:3692
#, fuzzy, c-format
msgid "non-floating-point argument to function `%s'"
msgstr "för många argument till funktionen \"%s\""
-#: c-common.c:4081
+#: c-common.c:3919
msgid "pointers are not permitted as case values"
msgstr "pekare är inte tillåtna case-värden"
-#: c-common.c:4087
-msgid "ISO C++ forbids range expressions in switch statements"
-msgstr "ISO C++ förbjuder intervalluttryck i switch-satser"
-
-#: c-common.c:4089
-msgid "ISO C forbids range expressions in switch statements"
+#: c-common.c:3923
+#, fuzzy
+msgid "range expressions in switch statements are non-standard"
msgstr "ISO C förbjuder intervalluttryck i switch-satser"
-#: c-common.c:4119
+#: c-common.c:3952
msgid "empty range specified"
msgstr "tomt intervall angivet"
-#: c-common.c:4170
+#: c-common.c:4003
msgid "duplicate (or overlapping) case value"
msgstr "dubbla (eller överlappand) case-värden"
-#: c-common.c:4172
-msgid "this is the first entry overlapping that value"
+#: c-common.c:4004
+#, fuzzy
+msgid "%Jthis is the first entry overlapping that value"
msgstr "detta är det första fallet som överlappar det värdet"
-#: c-common.c:4176
+#: c-common.c:4008
msgid "duplicate case value"
msgstr "upprepat case-värde"
-#: c-common.c:4177
-msgid "previously used here"
+#: c-common.c:4009
+#, fuzzy
+msgid "%Jpreviously used here"
msgstr "tidigare använd här"
-#: c-common.c:4181
+#: c-common.c:4013
msgid "multiple default labels in one switch"
msgstr "flera default-etiketter i en switch"
-#: c-common.c:4182
-msgid "this is the first default label"
+#: c-common.c:4014
+#, fuzzy
+msgid "%Jthis is the first default label"
msgstr "detta är den första default-etiketten"
-#: c-common.c:4210
+#: c-common.c:4039
#, fuzzy
-msgid "ISO C++ forbids taking the address of a label"
+msgid "taking the address of a label is non-standard"
msgstr "ISO C++ förbjuder att man tar adressen till funktionen \"::main\""
-#: c-common.c:4212
-#, fuzzy
-msgid "ISO C forbids taking the address of a label"
-msgstr "ISO C++ förbjuder att man tar adressen till funktionen \"::main\""
+#: c-common.c:4085
+msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
-#: c-common.c:5235
-#, c-format
-msgid "declaration of `%s' shadows %s"
-msgstr "deklaration av \"%s\" döljer %s"
+#: c-common.c:4090
+msgid "%Hignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
-#: c-common.c:5654
+#. SW_PARAM
+#: c-common.c:4297
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a parameter"
+msgstr "deklaration av \"%s\" döljer en parameter"
+
+# local, det kan troligen vara både lokal variabel och lokal funktion??
+#. SW_LOCAL
+#: c-common.c:4298
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a previous local"
+msgstr "deklaration av \"%s\" döljer en tidigare lokal"
+
+#. SW_GLOBAL
+#: c-common.c:4299
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a global declaration"
+msgstr "deklaration av \"%s\" döljer en parameter"
+
+#: c-common.c:4303
+#, fuzzy
+msgid "%Jshadowed declaration is here"
+msgstr "tidigare deklaration av \"%s\""
+
+#: c-common.c:4686
#, c-format
msgid "unknown machine mode `%s'"
msgstr "okänt maskinläge `%s'"
-#: c-common.c:5657
+#: c-common.c:4689
#, c-format
msgid "no data type for mode `%s'"
msgstr "ingen datatyp för läge `%s'"
-#: c-common.c:5666 c-common.c:6316
+#: c-common.c:4693
+#, fuzzy, c-format
+msgid "invalid pointer mode `%s'"
+msgstr "ogiltig operand för %V"
+
+#: c-common.c:4700 c-common.c:5263
#, fuzzy, c-format
msgid "unable to emulate '%s'"
msgstr "kan inte öppna fil \"%s\""
-#: c-common.c:5702
-msgid "section attribute cannot be specified for local variables"
+#: c-common.c:4744
+#, fuzzy
+msgid "%Jsection attribute cannot be specified for local variables"
msgstr "attributet \"section\" kan inte anges för lokala variabler"
-#: c-common.c:5713
-#, c-format
-msgid "section of `%s' conflicts with previous declaration"
+#: c-common.c:4755
+#, fuzzy
+msgid "%Jsection of '%D' conflicts with previous declaration"
msgstr "sektion \"%s\" står i konflikt med tidigare deklaration"
-#: c-common.c:5722
-#, c-format
-msgid "section attribute not allowed for `%s'"
+#: c-common.c:4764
+#, fuzzy
+msgid "%Jsection attribute not allowed for '%D'"
msgstr "attributet \"section\" är inte tillåten för \"%s\""
-#: c-common.c:5729
-msgid "section attributes are not supported for this target"
+#: c-common.c:4770
+#, fuzzy
+msgid "%Jsection attributes are not supported for this target"
msgstr "attributet \"section\" stöds inte för denna målarkitektur"
-#: c-common.c:5771
+#: c-common.c:4808
msgid "requested alignment is not a constant"
msgstr "efterfrågad minnesjustering är inte konstant"
-#: c-common.c:5776
+#: c-common.c:4813
msgid "requested alignment is not a power of 2"
msgstr "efterrågad minnesjustering är inte en potens av 2"
-#: c-common.c:5781
+#: c-common.c:4818
msgid "requested alignment is too large"
msgstr "efterfrågad minnesjustering är för stor"
-#: c-common.c:5808
-#, c-format
-msgid "alignment may not be specified for `%s'"
+#: c-common.c:4844
+#, fuzzy
+msgid "%Jalignment may not be specified for '%D'"
msgstr "minnesjustering kan inte anges för \"%s\""
-#: c-common.c:5853
-#, c-format
-msgid "`%s' defined both normally and as an alias"
+#: c-common.c:4882
+#, fuzzy
+msgid "%J'%D' defined both normally and as an alias"
msgstr "\"%s\" är definierad både normalt och som ett alias"
-#: c-common.c:5863
+#: c-common.c:4892
msgid "alias arg not a string"
msgstr "aliasargumentet är inte en sträng"
-#: c-common.c:5910
+#: c-common.c:4935
#, fuzzy
msgid "visibility arg not a string"
msgstr "aliasargumentet är inte en sträng"
-#: c-common.c:5919
+#: c-common.c:4948
msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\""
msgstr ""
-#: c-common.c:5953
+#: c-common.c:4974
#, fuzzy
msgid "tls_model arg not a string"
msgstr "aliasargumentet är inte en sträng"
-#: c-common.c:5962
+#: c-common.c:4983
msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\""
msgstr ""
-#: c-common.c:5987 c-common.c:6043
-#, c-format
-msgid "`%s' attribute applies only to functions"
-msgstr "attributet \"%s\" fungerar bara på funktioner"
-
-#: c-common.c:5994 c-common.c:6050
-#, c-format
-msgid "can't set `%s' attribute after definition"
-msgstr "kan inte sätta attributet \"%s\" efter definitionen"
-
-#: c-common.c:6114
+#: c-common.c:5005 c-common.c:5051
#, fuzzy
-msgid "cleanup arg not an identifier"
-msgstr "predikat måste vara en identifierare"
+msgid "%J'%E' attribute applies only to functions"
+msgstr "attributet \"%s\" fungerar bara på funktioner"
-#: c-common.c:6121
+#: c-common.c:5010 c-common.c:5056
#, fuzzy
-msgid "cleanup arg not a function"
-msgstr "anropat objekt är inte en funktion"
+msgid "%Jcan't set '%E' attribute after definition"
+msgstr "kan inte sätta attributet \"%s\" efter definitionen"
-#: c-common.c:6183
+#: c-common.c:5132
#, c-format
msgid "`%s' attribute ignored for `%s'"
msgstr "attributet `%s' ignorerat för \"%s\""
-#: c-common.c:6248
+#: c-common.c:5195
#, c-format
msgid "invalid vector type for attribute `%s'"
msgstr "ogiltigt vektortype för attribut \"%s\""
-#: c-common.c:6272 c-common.c:6304
+#: c-common.c:5219 c-common.c:5251
msgid "no vector mode with the size and type specified could be found"
msgstr ""
-#: c-common.c:6403
+#: c-common.c:5353
#, fuzzy
msgid "nonnull attribute without arguments on a non-prototype"
msgstr "antalet argument matchar inte prototypen"
-#: c-common.c:6418
+#: c-common.c:5368
#, fuzzy, c-format
msgid "nonnull argument has invalid operand number (arg %lu)"
msgstr "formatsträng har ett ogiltigt antal operander"
-#: c-common.c:6437
+#: c-common.c:5387
#, c-format
msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)"
msgstr ""
-#: c-common.c:6445
+#: c-common.c:5395
#, c-format
msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)"
msgstr ""
-#: c-common.c:6531
+#: c-common.c:5475
#, c-format
msgid "null argument where non-null required (arg %lu)"
msgstr ""
-#: c-convert.c:80 c-typeck.c:988 c-typeck.c:4059 cp/typeck.c:1615
-#: cp/typeck.c:5939
-msgid "void value not ignored as it ought to be"
-msgstr "värdet av typen void ignoreras inte vilket bör göras"
+#: c-common.c:5546
+#, fuzzy
+msgid "cleanup arg not an identifier"
+msgstr "predikat måste vara en identifierare"
-#: c-convert.c:112 java/typeck.c:150
-msgid "conversion to non-scalar type requested"
-msgstr "konvertering till icke-skalär typ begärd"
+#: c-common.c:5553
+#, fuzzy
+msgid "cleanup arg not a function"
+msgstr "anropat objekt är inte en funktion"
-#: c-decl.c:340
+#: c-common.c:5914
#, c-format
-msgid "array `%s' assumed to have one element"
-msgstr "fält \"%s\" antas ha ett element"
+msgid "%s at end of input"
+msgstr "%s vid slutet av indatan"
-#: c-decl.c:526
+#: c-common.c:5920
#, c-format
-msgid "`struct %s' incomplete in scope ending here"
-msgstr "\"struct %s\" är inkomplett i scope-område som slutar här"
+msgid "%s before %s'%c'"
+msgstr "%s före %s'%c'"
-#: c-decl.c:529
+#: c-common.c:5922
#, c-format
-msgid "`union %s' incomplete in scope ending here"
-msgstr "\"union %s\" är inkomplett i scope-område som slutar här"
+msgid "%s before %s'\\x%x'"
+msgstr "%s före %s'\\x%x'"
-#: c-decl.c:532
+#: c-common.c:5926
#, c-format
-msgid "`enum %s' incomplete in scope ending here"
-msgstr "\"enum %s\" är inkomplett i scope-område som slutar här"
+msgid "%s before string constant"
+msgstr "%s före strängkonstant"
-#: c-decl.c:646 c-decl.c:771 java/decl.c:1403
+#: c-common.c:5928
#, c-format
-msgid "label `%s' used but not defined"
-msgstr "etikett \"%s\" använd men inte definierad"
+msgid "%s before numeric constant"
+msgstr "%s före numerisk konstant"
-#: c-decl.c:652 c-decl.c:778 java/decl.c:1409
+#: c-common.c:5930
#, c-format
-msgid "label `%s' defined but not used"
-msgstr "etikett \"%s\" definierad men inte använd"
-
-#: c-decl.c:893 cp/decl.c:3335
-#, fuzzy, c-format
-msgid "function `%s' redeclared as inline"
-msgstr "biblioteksfunktion \"%s\" deklarerad som icke-funktion"
-
-#: c-decl.c:895 cp/decl.c:3337
-#, fuzzy, c-format
-msgid "previous declaration of function `%s' with attribute noinline"
-msgstr "implicit deklaration av funktion \"%s\""
-
-#: c-decl.c:902 cp/decl.c:3344
-#, fuzzy, c-format
-msgid "function `%s' redeclared with attribute noinline"
-msgstr "funktionen \"%s\" deklarerades tidigare i ett block"
-
-#: c-decl.c:904 cp/decl.c:3346
-#, fuzzy, c-format
-msgid "previous declaration of function `%s' was inline"
-msgstr "tidigare deklaration av \"%s\""
+msgid "%s before \"%s\""
+msgstr "%s före \"%s\""
-#: c-decl.c:933 c-decl.c:979
+#: c-common.c:5932
#, c-format
-msgid "shadowing built-in function `%s'"
-msgstr "döljer inbyggd funktion \"%s\""
+msgid "%s before '%s' token"
+msgstr "%s före symbolen '%s'"
-#: c-decl.c:935
+#. Use `%s' to print the string in case there are any escape
+#. characters in the message.
+#: c-common.c:5934 c-typeck.c:2578 c-typeck.c:3970 c-typeck.c:3985
+#: c-typeck.c:4000 final.c:2776 final.c:2778 gcc.c:4574 rtl-error.c:109
+#: toplev.c:1340 config/cris/cris.c:545 cp/parser.c:1848 cp/typeck.c:4111
+#: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472
#, c-format
-msgid "shadowing library function `%s'"
-msgstr "döljer biblioteksfunktion \"%s\""
+msgid "%s"
+msgstr "%s"
-#: c-decl.c:941
-#, c-format
-msgid "library function `%s' declared as non-function"
-msgstr "biblioteksfunktion \"%s\" deklarerad som icke-funktion"
+#: c-convert.c:82 c-typeck.c:1193 c-typeck.c:3410 cp/typeck.c:1337
+#: cp/typeck.c:5648 treelang/tree-convert.c:79
+msgid "void value not ignored as it ought to be"
+msgstr "värdet av typen void ignoreras inte vilket bör göras"
-#: c-decl.c:945 c-decl.c:948
-#, c-format
-msgid "built-in function `%s' declared as non-function"
-msgstr "inbyggd funktion \"%s\" deklarerad som icke-funktion"
+#: c-convert.c:114 java/typeck.c:148 treelang/tree-convert.c:105
+msgid "conversion to non-scalar type requested"
+msgstr "konvertering till icke-skalär typ begärd"
-#: c-decl.c:952 objc/objc-act.c:2384 objc/objc-act.c:6154
-#, c-format
-msgid "`%s' redeclared as different kind of symbol"
-msgstr "\"%s\" omdeklarerad som en annan sorts symbol"
+#: c-decl.c:371
+#, fuzzy
+msgid "%Jarray '%D' assumed to have one element"
+msgstr "fält \"%s\" antas ha ett element"
-#: c-decl.c:953 c-decl.c:1144 c-decl.c:1158 c-decl.c:1165 c-decl.c:1310
-#: objc/objc-act.c:2386 objc/objc-act.c:6156 objc/objc-act.c:6211
-#, c-format
-msgid "previous declaration of `%s'"
-msgstr "tidigare deklaration av \"%s\""
+#: c-decl.c:580
+#, fuzzy
+msgid "%Jlabel `%D' used but not defined"
+msgstr "etikett \"%s\" använd men inte definierad"
-#. If types don't match for a built-in, throw away the built-in.
-#: c-decl.c:1048
-#, c-format
-msgid "conflicting types for built-in function `%s'"
-msgstr "motstridiga typer på inbyggd funktion \"%s\""
+#: c-decl.c:586
+#, fuzzy
+msgid "%Jlabel `%D' defined but not used"
+msgstr "etikett \"%s\" definierad men inte använd"
-#: c-decl.c:1091 c-decl.c:1110
-#, c-format
-msgid "conflicting types for `%s'"
-msgstr "motstridiga typer på \"%s\""
+#: c-decl.c:588
+#, fuzzy
+msgid "%Jlabel `%D' declared but not defined"
+msgstr "etikett \"%s\" använd men inte definierad"
+
+#: c-decl.c:613
+#, fuzzy
+msgid "%Junused variable `%D'"
+msgstr "oanvänd variabel \"%s\""
-#: c-decl.c:1133
+#: c-decl.c:821
#, fuzzy
msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
msgstr "En parameterlista med ellips kan inte matcha en tom namnlistdeklaration."
-#: c-decl.c:1139
+#: c-decl.c:828
#, fuzzy
msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
msgstr "En parameterlista med ellips kan inte matcha en tom namnlistdeklaration."
-#: c-decl.c:1157
-#, fuzzy, c-format
-msgid "thread-local declaration of `%s' follows non thread-local declaration"
-msgstr "statisk deklaration av \"%s\" följer på icke-statisk"
+#: c-decl.c:864
+msgid "%Jprototype for '%D' declares more arguments than previous old-style definition"
+msgstr ""
-#: c-decl.c:1164
-#, fuzzy, c-format
-msgid "non thread-local declaration of `%s' follows thread-local declaration"
-msgstr "icke-statisk deklaration av \"%s\" följer på statisk"
+#: c-decl.c:870
+msgid "%Jprototype for '%D' declares fewer arguments than previous old-style definition"
+msgstr ""
-#: c-decl.c:1175 c-decl.c:1198
-#, c-format
-msgid "redefinition of `%s'"
-msgstr "omdefiniering av \"%s\""
+#: c-decl.c:879
+msgid "%Jprototype for '%D' declares arg %d with incompatible type"
+msgstr ""
-#: c-decl.c:1178
-#, c-format
-msgid "redeclaration of `%s'"
-msgstr "omdeklaration av \"%s\""
+#. If we get here, no errors were found, but do issue a warning
+#. for this poor-style construct.
+#: c-decl.c:891
+#, fuzzy
+msgid "%Jprototype for '%D' follows non-prototype definition"
+msgstr "icke-prototypdefinition here"
-#: c-decl.c:1181
-#, c-format
-msgid "conflicting declarations of `%s'"
-msgstr "motstridande deklarationer av \"%s\""
+#: c-decl.c:906
+#, fuzzy
+msgid "%Jprevious definition of '%D' was here"
+msgstr "\"%s\" definierades tidigare här"
-#: c-decl.c:1225
-#, c-format
-msgid "prototype for `%s' follows"
-msgstr "prototyp för \"%s\" följer"
+#: c-decl.c:908
+#, fuzzy
+msgid "%Jprevious implicit declaration of '%D' was here"
+msgstr "tidigare implicit deklaration av \"%s\""
-#: c-decl.c:1226 c-decl.c:1234 c-decl.c:1245
-msgid "non-prototype definition here"
-msgstr "icke-prototypdefinition here"
+#: c-decl.c:910
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was here"
+msgstr "tidigare deklaration av \"%s\""
-#: c-decl.c:1233
-#, c-format
-msgid "prototype for `%s' follows and number of arguments doesn't match"
-msgstr "prototyp för \"%s\" följer och antalet argument matchar inte"
+#: c-decl.c:944
+#, fuzzy
+msgid "%J'%D' redeclared as different kind of symbol"
+msgstr "\"%s\" omdeklarerad som en annan sorts symbol"
-#: c-decl.c:1243
-#, c-format
-msgid "prototype for `%s' follows and argument %d doesn't match"
-msgstr "prototyp för `%s' följer och argument %d matchar inte"
+#: c-decl.c:949
+#, fuzzy
+msgid "%Jbuilt-in function '%D' declared as non-function"
+msgstr "inbyggd funktion \"%s\" deklarerad som icke-funktion"
-#: c-decl.c:1261
-#, c-format
-msgid "`%s' declared inline after being called"
-msgstr "\"%s\" är deklarerad inline efter att den blivit anropad"
+#: c-decl.c:952 c-decl.c:1042
+#, fuzzy
+msgid "%Jshadowing built-in function '%D'"
+msgstr "döljer inbyggd funktion \"%s\""
-#: c-decl.c:1267
-#, c-format
-msgid "`%s' declared inline after its definition"
-msgstr "\"%s\" deklarerad inline efter sin definition"
+#. If types don't match for a built-in, throw away the
+#. built-in. No point in calling locate_old_decl here, it
+#. won't print anything.
+#: c-decl.c:972
+#, fuzzy
+msgid "%Jconflicting types for built-in function '%D'"
+msgstr "motstridiga typer på inbyggd funktion \"%s\""
-#: c-decl.c:1274
-#, c-format
-msgid "static declaration for `%s' follows non-static"
+#: c-decl.c:996 c-decl.c:1004
+#, fuzzy
+msgid "%Jconflicting types for '%D'"
+msgstr "motstridiga typer på \"%s\""
+
+#. allow OLDDECL to continue in use
+#: c-decl.c:1019
+#, fuzzy
+msgid "%Jredefinition of typedef '%D'"
+msgstr "omdefiniering av \"%s\""
+
+#: c-decl.c:1055 c-decl.c:1119
+#, fuzzy
+msgid "%Jredefinition of '%D'"
+msgstr "omdefiniering av \"%s\""
+
+#: c-decl.c:1086 c-decl.c:1136
+#, fuzzy
+msgid "%Jstatic declaration of '%D' follows non-static declaration"
msgstr "statisk deklaration av \"%s\" följer på icke-statisk"
-#: c-decl.c:1282
-#, c-format
-msgid "non-static declaration for `%s' follows static"
+#: c-decl.c:1094 c-decl.c:1133
+#, fuzzy
+msgid "%Jnon-static declaration of '%D' follows static declaration"
msgstr "icke-statisk deklaration av \"%s\" följer på statisk"
-#: c-decl.c:1289
-#, c-format
-msgid "const declaration for `%s' follows non-const"
-msgstr "const-deklaration för \"%s\" följer på icke-const"
-
-#: c-decl.c:1296
-#, c-format
-msgid "type qualifiers for `%s' conflict with previous decl"
-msgstr "typkvalificerare för \"%s\" i konflikt med tidigare dekl"
+#: c-decl.c:1106
+#, fuzzy
+msgid "%Jthread-local declaration of '%D' follows non-thread-local declaration"
+msgstr "statisk deklaration av \"%s\" följer på icke-statisk"
-#: c-decl.c:1309
-#, c-format
-msgid "redundant redeclaration of `%s' in same scope"
-msgstr "redundant omdeklaration av \"%s\" i samma scope"
+#: c-decl.c:1109
+#, fuzzy
+msgid "%Jnon-thread-local declaration of '%D' follows thread-local declaration"
+msgstr "icke-statisk deklaration av \"%s\" följer på statisk"
-#: c-decl.c:1619 java/decl.c:1102
-#, c-format
-msgid "declaration of `%s' shadows a parameter"
-msgstr "deklaration av \"%s\" döljer en parameter"
+#: c-decl.c:1149
+#, fuzzy
+msgid "%Jextern declaration of '%D' follows declaration with no linkage"
+msgstr "extern deklaration av \"%s\" matchar inte den globala"
-#: c-decl.c:1622 java/decl.c:1105
-#, c-format
-msgid "declaration of `%s' shadows a symbol from the parameter list"
-msgstr "deklaration av \"%s\" döljer symbol från parameterlista"
+#: c-decl.c:1152
+#, fuzzy
+msgid "%Jdeclaration of '%D' with no linkage follows extern declaration"
+msgstr "deklaration av \"%s\" som ett fält med funktioner"
-#: c-decl.c:1643 cp/decl.c:4479
+#: c-decl.c:1155
#, fuzzy
-msgid "a parameter"
-msgstr "oanvänd parameter \"%s\""
+msgid "%Jredeclaration of '%D' with no linkage"
+msgstr "tidigare deklaration av \"%s\""
-#: c-decl.c:1645 cp/decl.c:4496
-msgid "a previous local"
+#: c-decl.c:1169
+msgid "%Jredeclaration of '%D' with different visibility (old visibility preserved)"
msgstr ""
-#. XXX shadow warnings in outer-more namespaces
-#: c-decl.c:1649 cp/decl.c:4500
+#: c-decl.c:1180
#, fuzzy
-msgid "a global declaration"
-msgstr "dubbel deklaration av etikett \"%s\""
+msgid "%Jinline declaration of '%D' follows declaration with attribute noinline"
+msgstr "implicit deklaration av funktion \"%s\""
-#: c-decl.c:1693
-#, c-format
-msgid "nested extern declaration of `%s'"
-msgstr "nästlad extern deklaration av \"%s\""
+#: c-decl.c:1187
+#, fuzzy
+msgid "%Jdeclaration of '%D' with attribute noinline follows inline declaration "
+msgstr "implicit deklaration av funktion \"%s\""
-#: c-decl.c:1712 java/decl.c:1055
-#, c-format
-msgid "`%s' used prior to declaration"
-msgstr "\"%s\" är använd innan sin deklaration"
+#: c-decl.c:1199
+#, fuzzy
+msgid "%J'%D' declared inline after being called"
+msgstr "\"%s\" är deklarerad inline efter att den blivit anropad"
-#: c-decl.c:1726 c-decl.c:1901
-#, c-format
-msgid "`%s' was declared implicitly `extern' and later `static'"
-msgstr "\"%s\" deklarerades implicit \"extern\" och senare \"static\""
+#: c-decl.c:1205
+#, fuzzy
+msgid "%J'%D' declared inline after its definition"
+msgstr "\"%s\" deklarerad inline efter sin definition"
-#: c-decl.c:1829 cp/decl.c:4336
-msgid "type mismatch with previous external decl"
-msgstr "typ skiljer sig från tidigare extern deklaration"
+#: c-decl.c:1217
+#, fuzzy
+msgid "%Jvolatile declaration of '%D' follows non-volatile declaration"
+msgstr "statisk deklaration av \"%s\" följer på icke-statisk"
-#: c-decl.c:1830
-#, c-format
-msgid "previous external decl of `%s'"
-msgstr "föregående externa dekl. av \"%s\""
+#: c-decl.c:1220
+#, fuzzy
+msgid "%Jnon-volatile declaration of '%D' follows volatile declaration"
+msgstr "icke-statisk deklaration av \"%s\" följer på statisk"
-#: c-decl.c:1843
-msgid "type mismatch with previous implicit declaration"
-msgstr "typ skiljer sig från tidigare implicit deklaration"
+#: c-decl.c:1227
+#, fuzzy
+msgid "%Jconst declaration of '%D' follows non-const declaration"
+msgstr "const-deklaration för \"%s\" följer på icke-const"
-#: c-decl.c:1845
-#, c-format
-msgid "previous implicit declaration of `%s'"
-msgstr "tidigare implicit deklaration av \"%s\""
+#: c-decl.c:1230
+#, fuzzy
+msgid "%Jnon-const declaration of '%D' follows const declaration"
+msgstr "icke-statisk deklaration av \"%s\" följer på statisk"
-#: c-decl.c:1880
-#, c-format
-msgid "`%s' was previously implicitly declared to return `int'"
-msgstr "\"%s\" deklarerades tidigare implicit att returnera \"int\""
+#: c-decl.c:1246
+#, fuzzy
+msgid "%Jredundant redeclaration of '%D'"
+msgstr "redundant omdeklaration av \"%s\" i samma scope"
-#: c-decl.c:1905
+#: c-decl.c:1690
#, c-format
-msgid "`%s' was declared `extern' and later `static'"
-msgstr "\"%s\" deklarerades \"extern\" och senare \"static\""
+msgid "nested extern declaration of `%s'"
+msgstr "nästlad extern deklaration av \"%s\""
-#: c-decl.c:1929
-#, c-format
-msgid "extern declaration of `%s' doesn't match global one"
-msgstr "extern deklaration av \"%s\" matchar inte den globala"
+#: c-decl.c:1829 objc/objc-act.c:2534 objc/objc-act.c:6793
+#, fuzzy
+msgid "%Jprevious declaration of '%D'"
+msgstr "tidigare deklaration av \"%s\""
-#: c-decl.c:1971
+#: c-decl.c:1870 c-decl.c:1872
#, c-format
-msgid "`%s' locally external but globally static"
-msgstr "\"%s\" är lokalt extern men globalt static"
+msgid "implicit declaration of function `%s'"
+msgstr "implicit deklaration av funktion \"%s\""
-#: c-decl.c:2095
+#: c-decl.c:1888
#, c-format
-msgid "function `%s' was previously declared within a block"
-msgstr "funktionen \"%s\" deklarerades tidigare i ett block"
+msgid "`%s' undeclared here (not in a function)"
+msgstr "\"%s\" odeklarerad här (inte i en funktion)"
-#: c-decl.c:2115 c-decl.c:2117
+#: c-decl.c:1894
#, c-format
-msgid "implicit declaration of function `%s'"
-msgstr "implicit deklaration av funktion \"%s\""
+msgid "`%s' undeclared (first use in this function)"
+msgstr "\"%s\" odeklarerad (första förekomsten i denna funktionen)"
+
+#: c-decl.c:1899
+msgid "(Each undeclared identifier is reported only once"
+msgstr "(Varje odeklarerad identifierare rapporteras bara"
+
+#: c-decl.c:1900
+msgid "for each function it appears in.)"
+msgstr "en gång för varje funktion den finns i.)"
-#: c-decl.c:2196
+#: c-decl.c:1953
#, c-format
msgid "label %s referenced outside of any function"
msgstr "etikett %s är refererad till utanför en funktion"
-#: c-decl.c:2253
+#: c-decl.c:2000
#, c-format
msgid "duplicate label declaration `%s'"
msgstr "dubbel deklaration av etikett \"%s\""
-#: c-decl.c:2256
-msgid "this is a previous declaration"
+#: c-decl.c:2001
+#, fuzzy
+msgid "%Jthis is a previous declaration"
msgstr "detta är en tidigare deklaration"
-#: c-decl.c:2679
+#: c-decl.c:2036
+#, fuzzy
+msgid "%Hduplicate label `%D'"
+msgstr "upprepning av medlem \"%s\""
+
+#: c-decl.c:2038
+#, fuzzy
+msgid "%J`%D' previously defined here"
+msgstr "\"%s\" definierades tidigare här"
+
+#: c-decl.c:2040
+#, fuzzy
+msgid "%J`%D' previously declared here"
+msgstr "\"%s\" är tidigare deklarerad här"
+
+#: c-decl.c:2060
+msgid "%Htraditional C lacks a separate namespace for labels, identifier `%s' conflicts"
+msgstr ""
+
+#: c-decl.c:2131
+#, fuzzy
+msgid "%H`%s' defined as wrong kind of tag"
+msgstr "\"%s\" omdeklarerad som en annan sorts symbol"
+
+#: c-decl.c:2369
msgid "unnamed struct/union that defines no instances"
msgstr "odöpt struktur/union som inte har någon instans"
-#: c-decl.c:2698
+#: c-decl.c:2388
msgid "useless keyword or type name in empty declaration"
msgstr "oanvändbart nyckelord eller typnamn i tom deklaration"
-#: c-decl.c:2705
+#: c-decl.c:2395
msgid "two types specified in one empty declaration"
msgstr "två typer angivna i en tom deklaration"
-#: c-decl.c:2710 c-parse.y:753 c-parse.y:755 parse.y:766 parse.y:1853
-#: objc-parse.y:799 objc-parse.y:801 objc-parse.y:3042
+#: c-decl.c:2400 c-parse.y:735 c-parse.y:737 objc/objc-parse.y:776
+#: objc/objc-parse.y:778 objc/objc-parse.y:3016
msgid "empty declaration"
msgstr "tom deklaration"
-#: c-decl.c:2740
+#: c-decl.c:2426
#, fuzzy
msgid "ISO C90 does not support `static' or type qualifiers in parameter array declarators"
msgstr "ISO C89 stöder inte flexibla fältmedlemmar"
-#: c-decl.c:2742
+#: c-decl.c:2428
#, fuzzy
msgid "ISO C90 does not support `[*]' array declarators"
msgstr "ISO C89 stöder inte flexibla fältmedlemmar"
-#: c-decl.c:2745
+#: c-decl.c:2431
msgid "GCC does not yet properly implement `[*]' array declarators"
msgstr ""
-#: c-decl.c:2764
+#: c-decl.c:2447
msgid "static or type qualifiers in abstract declarator"
msgstr ""
-#: c-decl.c:2838
-#, c-format
-msgid "`%s' is usually a function"
+#: c-decl.c:2517
+#, fuzzy
+msgid "%J'%D' is usually a function"
msgstr "\"%s\" är vanligtvis en funktion"
-#: c-decl.c:2847
+#: c-decl.c:2526
#, fuzzy, c-format
msgid "typedef `%s' is initialized (use __typeof__ instead)"
msgstr "typedef \"%s\" är initierad"
-#: c-decl.c:2853
+#: c-decl.c:2532
#, c-format
msgid "function `%s' is initialized like a variable"
msgstr "funktion \"%s\" är initierad som en variabel"
#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
-#: c-decl.c:2860
+#: c-decl.c:2539
#, c-format
msgid "parameter `%s' is initialized"
msgstr "parameter \"%s\" är initierad"
-#: c-decl.c:2880 c-typeck.c:4895
+#: c-decl.c:2559 c-typeck.c:4220
msgid "variable-sized object may not be initialized"
msgstr "objekt med variabel storlek kan inte initieras"
-#: c-decl.c:2886
+#: c-decl.c:2565
#, c-format
msgid "variable `%s' has initializer but incomplete type"
msgstr "variabel \"%s\" har initierare men är av inkomplett typ"
-#: c-decl.c:2892
+#: c-decl.c:2571
#, c-format
msgid "elements of array `%s' have incomplete type"
msgstr "elementen i fält \"%s\" har en ofullständig typ"
-#: c-decl.c:2905
-#, c-format
-msgid "declaration of `%s' has `extern' and is initialized"
-msgstr "deklaration av \"%s\" är \"extern\" och initierad"
-
-#: c-decl.c:2954 c-decl.c:5828 cp/decl.c:7760 cp/decl.c:14339
-#, fuzzy, c-format
-msgid "inline function `%s' given attribute noinline"
+#: c-decl.c:2640 c-decl.c:5426 cp/decl.c:3748 cp/decl.c:10156
+#, fuzzy
+msgid "%Jinline function '%D' given attribute noinline"
msgstr "inbyggd funktion \"%s\" deklarerad som icke-funktion"
-#: c-decl.c:3028
-#, c-format
-msgid "initializer fails to determine size of `%s'"
+#: c-decl.c:2716
+#, fuzzy
+msgid "%Jinitializer fails to determine size of '%D'"
msgstr "initierare misslyckas med att bestämma storlek på \"%s\""
-#: c-decl.c:3033
-#, c-format
-msgid "array size missing in `%s'"
+#: c-decl.c:2721
+#, fuzzy
+msgid "%Jarray size missing in '%D'"
msgstr "fältstorlek saknas i \"%s\""
-#: c-decl.c:3049
-#, c-format
-msgid "zero or negative size array `%s'"
+#: c-decl.c:2737
+#, fuzzy
+msgid "%Jzero or negative size array '%D'"
msgstr "noll eller negativ storlek på fält \"%s\""
-#: c-decl.c:3077
-#, c-format
-msgid "storage size of `%s' isn't known"
+#: c-decl.c:2765
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't known"
msgstr "lagringsstorlek på \"%s\" är okänd"
-#: c-decl.c:3087
-#, c-format
-msgid "storage size of `%s' isn't constant"
+#: c-decl.c:2775
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't constant"
msgstr "lagringsstorlek på \"%s\" är inte konstant"
-#: c-decl.c:3147
-#, c-format
-msgid "ignoring asm-specifier for non-static local variable `%s'"
+#: c-decl.c:2858
+#, fuzzy
+msgid "%Jignoring asm-specifier for non-static local variable '%D'"
msgstr "ignorerar asm för ickestatisk lokal variabel \"%s\""
-#: c-decl.c:3247
+#: c-decl.c:2969
+msgid "ISO C forbids forward parameter declarations"
+msgstr ""
+
+#: c-decl.c:3151
+#, fuzzy
+msgid "<anonymous>"
+msgstr "<anonym %s>"
+
+#: c-decl.c:3160
+#, c-format
+msgid "bit-field `%s' width not an integer constant"
+msgstr ""
+
+#: c-decl.c:3168
+#, c-format
+msgid "negative width in bit-field `%s'"
+msgstr "negativ storlek i bitfält \"%s\""
+
+#: c-decl.c:3173
+#, c-format
+msgid "zero width for bit-field `%s'"
+msgstr "Storleken noll på bitfält \"%s\""
+
+#: c-decl.c:3183
+#, c-format
+msgid "bit-field `%s' has invalid type"
+msgstr "bitfält \"%s\" har en icke godkänd typ"
+
+#: c-decl.c:3192
#, fuzzy, c-format
-msgid "ISO C forbids parameter `%s' shadowing typedef"
-msgstr "ANSI C förbjuder att parameter \"%s\" döljer typedef"
+msgid "type of bit-field `%s' is a GCC extension"
+msgstr "#%s är en GCC-utvidgning"
+
+#: c-decl.c:3201
+#, c-format
+msgid "width of `%s' exceeds its type"
+msgstr "storleken på \"%s\" är större än sin typ"
-#: c-decl.c:3592 cp/decl.c:10880
+#: c-decl.c:3211
+#, c-format
+msgid "`%s' is narrower than values of its type"
+msgstr ""
+
+#: c-decl.c:3361 cp/decl.c:6778
msgid "`long long long' is too long for GCC"
msgstr "\"long long long\" är för långt för GCC"
-#: c-decl.c:3597
+#: c-decl.c:3366
#, fuzzy
msgid "ISO C90 does not support `long long'"
msgstr "ISO C89 stödjer inte \"long long\"'"
-#: c-decl.c:3606 c-decl.c:3609 cp/decl.c:10885
+#: c-decl.c:3375 c-decl.c:3378 cp/decl.c:6783
#, c-format
msgid "duplicate `%s'"
msgstr "flera \"%s\""
-#: c-decl.c:3619 cp/decl.c:10892
+#: c-decl.c:3388 cp/decl.c:6789
msgid "`__thread' before `extern'"
msgstr ""
-#: c-decl.c:3621 cp/decl.c:10894
+#: c-decl.c:3390 cp/decl.c:6791
msgid "`__thread' before `static'"
msgstr ""
-#: c-decl.c:3629 cp/decl.c:10921
+#: c-decl.c:3398 cp/decl.c:6818
#, c-format
msgid "two or more data types in declaration of `%s'"
msgstr "två eller fler datatyper i deklaration av \"%s\""
-#: c-decl.c:3649 cp/decl.c:10926
+#: c-decl.c:3418 cp/decl.c:6823
#, c-format
msgid "`%s' fails to be a typedef or built in type"
msgstr ""
-#: c-decl.c:3688
+#: c-decl.c:3457
#, c-format
msgid "type defaults to `int' in declaration of `%s'"
msgstr ""
-#: c-decl.c:3717
+#: c-decl.c:3486
#, c-format
msgid "both long and short specified for `%s'"
msgstr "både long och short angivet för \"%s\""
-#: c-decl.c:3721 cp/decl.c:11041
+#: c-decl.c:3490 cp/decl.c:6923
#, c-format
msgid "long or short specified with char for `%s'"
msgstr "long eller short angiven med char för \"%s\""
-#: c-decl.c:3728 cp/decl.c:11045
+#: c-decl.c:3497 cp/decl.c:6927
#, c-format
msgid "long or short specified with floating type for `%s'"
msgstr "long eller short angiven med flyttalstyp för \"%s\""
-#: c-decl.c:3731
+#: c-decl.c:3500
msgid "the only valid combination is `long double'"
msgstr "den enda giltiga kombinationen är \"long double\""
-#: c-decl.c:3737
+#: c-decl.c:3506
#, c-format
msgid "both signed and unsigned specified for `%s'"
msgstr "både signed och unsigned specificerat för \"%s\""
-#: c-decl.c:3739 cp/decl.c:11034
+#: c-decl.c:3508 cp/decl.c:6916
#, c-format
msgid "long, short, signed or unsigned invalid for `%s'"
msgstr "long, short, signed eller unsigned ogiltig för \"%s\""
-#: c-decl.c:3745 cp/decl.c:11054
+#: c-decl.c:3514 cp/decl.c:6936
#, c-format
msgid "long, short, signed or unsigned used invalidly for `%s'"
msgstr "long, short, signed eller unsigned använd felaktigt på \"%s\""
-#: c-decl.c:3763 cp/decl.c:11075
+#: c-decl.c:3532 cp/decl.c:6957
#, c-format
msgid "complex invalid for `%s'"
msgstr "complex ogiltig för \"%s\""
-#: c-decl.c:3805
+#: c-decl.c:3574
#, fuzzy
msgid "ISO C90 does not support complex types"
msgstr "ISO C89 stöder inte typen complex"
-#: c-decl.c:3817
+#: c-decl.c:3586
msgid "ISO C does not support plain `complex' meaning `double complex'"
msgstr "ISO C stöder inte bara \"complex\" i meningen \"double complex\""
-#: c-decl.c:3823 c-decl.c:3835
+#: c-decl.c:3592 c-decl.c:3604
msgid "ISO C does not support complex integer types"
msgstr "ISO C stöder inte komplexa heltalstyper"
-#: c-decl.c:3850 c-decl.c:4316 cp/decl.c:11688
+#: c-decl.c:3632 c-decl.c:4090 cp/decl.c:7549
msgid "duplicate `const'"
msgstr "upprepning av \"const\""
-#: c-decl.c:3852 c-decl.c:4320 cp/decl.c:11692
+#: c-decl.c:3634 c-decl.c:4094 cp/decl.c:7553
msgid "duplicate `restrict'"
msgstr "upprepning av \"restrict\""
-#: c-decl.c:3854 c-decl.c:4318 cp/decl.c:11690
+#: c-decl.c:3636 c-decl.c:4092 cp/decl.c:7551
msgid "duplicate `volatile'"
msgstr "upprepning av \"volatile\""
-#: c-decl.c:3882 cp/decl.c:11238
+#: c-decl.c:3664 cp/decl.c:7120
#, c-format
msgid "multiple storage classes in declaration of `%s'"
msgstr "flera lagringsklasser i deklaration av \"%s\""
-#: c-decl.c:3892
+#: c-decl.c:3674
msgid "function definition declared `auto'"
msgstr "funktionsdefinition deklarerad som \"auto\""
-#: c-decl.c:3894
+#: c-decl.c:3676
msgid "function definition declared `register'"
msgstr "funktionsdefinition deklarerad som \"register\""
-#: c-decl.c:3896
+#: c-decl.c:3678
msgid "function definition declared `typedef'"
msgstr "funktionsdefinition deklarerad som \"typedef\""
-#: c-decl.c:3898
+#: c-decl.c:3680
#, fuzzy
msgid "function definition declared `__thread'"
msgstr "funktionsdefinition deklarerad som \"typedef\""
-#: c-decl.c:3911
+#: c-decl.c:3693
#, c-format
msgid "storage class specified for structure field `%s'"
msgstr "lagringsklass angiven för strukturfält \"%s\""
-#: c-decl.c:3915 cp/decl.c:11285
+#: c-decl.c:3697 cp/decl.c:7165
#, c-format
msgid "storage class specified for parameter `%s'"
msgstr "lagringsklass angiven för parameter \"%s\""
-#: c-decl.c:3918 cp/decl.c:11287
+#: c-decl.c:3700 cp/decl.c:7167
msgid "storage class specified for typename"
msgstr "lagringsklass angiven för typnamn"
-#: c-decl.c:3930 cp/decl.c:11302
+#: c-decl.c:3712 cp/decl.c:7182
#, c-format
msgid "`%s' initialized and declared `extern'"
msgstr "`%s' initierad och deklarerad \"extern\""
-#: c-decl.c:3932 cp/decl.c:11305
+#: c-decl.c:3714 cp/decl.c:7185
#, c-format
msgid "`%s' has both `extern' and initializer"
msgstr "\"%s\" är både \"extern\" och initierare"
-#: c-decl.c:3937 cp/decl.c:11313
-#, c-format
-msgid "top-level declaration of `%s' specifies `auto'"
+#: c-decl.c:3719
+#, fuzzy, c-format
+msgid "file-scope declaration of `%s' specifies `auto'"
msgstr "toppnivådeklaration av \"%s\" anger \"auto\""
-#: c-decl.c:3942 cp/decl.c:11309
+#: c-decl.c:3724 cp/decl.c:7189
#, c-format
msgid "nested function `%s' declared `extern'"
msgstr "nästlad funktion \"%s\" är deklarerad \"extern\""
-#: c-decl.c:3948 cp/decl.c:11319
+#: c-decl.c:3730 cp/decl.c:7199
#, fuzzy, c-format
msgid "function-scope `%s' implicitly auto and declared `__thread'"
msgstr "funktion \"%s\" kan inte deklareras som \"mutable\""
@@ -1100,4305 +1185,4063 @@ msgstr "funktion \"%s\" kan inte deklareras som \"mutable\""
#. Only the innermost declarator (making a parameter be of
#. array type which is converted to pointer type)
#. may have static or type qualifiers.
-#: c-decl.c:3987 c-decl.c:4188
+#: c-decl.c:3769 c-decl.c:3962
#, fuzzy
msgid "static or type qualifiers in non-parameter array declarator"
msgstr "två typer angivna i en tom deklaration"
-#: c-decl.c:4031
+#: c-decl.c:3813
#, c-format
msgid "declaration of `%s' as array of voids"
msgstr "deklaration av \"%s\" som ett fält med void"
-#: c-decl.c:4037
+#: c-decl.c:3819
#, c-format
msgid "declaration of `%s' as array of functions"
msgstr "deklaration av \"%s\" som ett fält med funktioner"
-#: c-decl.c:4042 c-decl.c:5332
+#: c-decl.c:3824
#, fuzzy
msgid "invalid use of structure with flexible array member"
msgstr "ISO C89 stöder inte flexibla fältmedlemmar"
-#: c-decl.c:4061
+#: c-decl.c:3843
#, c-format
msgid "size of array `%s' has non-integer type"
msgstr "storlek på fält \"%s\" är inte av heltalstyp"
-#: c-decl.c:4066
+#: c-decl.c:3848
#, c-format
msgid "ISO C forbids zero-size array `%s'"
msgstr "ISO C förbjuder fält \"%s\" med storlek noll"
-#: c-decl.c:4073
+#: c-decl.c:3855
#, c-format
msgid "size of array `%s' is negative"
msgstr "storlek på fält \"%s\" är negativt"
-#: c-decl.c:4086
+#: c-decl.c:3868
#, fuzzy, c-format
msgid "ISO C90 forbids array `%s' whose size can't be evaluated"
msgstr "ISO C89 förbjuder fält \"%s\" vars storlek inte kan beräknas"
-#: c-decl.c:4089
+#: c-decl.c:3871
#, fuzzy, c-format
msgid "ISO C90 forbids variable-size array `%s'"
msgstr "ISO C89 förbjuder fält \"%s\" med variabel storlek"
-#: c-decl.c:4119 c-decl.c:4342 cp/decl.c:11897
+#: c-decl.c:3901 c-decl.c:4116 cp/decl.c:7723
#, c-format
msgid "size of array `%s' is too large"
msgstr "fältet \"%s\" är för stort"
-#: c-decl.c:4145
+#: c-decl.c:3927
#, fuzzy
msgid "ISO C90 does not support flexible array members"
msgstr "ISO C89 stöder inte flexibla fältmedlemmar"
-#: c-decl.c:4155
+#: c-decl.c:3937
msgid "array type has incomplete element type"
msgstr "fälttyp har inkomplett elementtyp"
-#: c-decl.c:4162 c-decl.c:4392
-msgid "ISO C forbids const or volatile function types"
-msgstr ""
-
-#: c-decl.c:4208 cp/decl.c:11445
+#: c-decl.c:3982 cp/decl.c:7320
#, c-format
msgid "`%s' declared as function returning a function"
msgstr "\"%s\" är deklarerad som en funktion som returnerar en funktion"
-#: c-decl.c:4213 cp/decl.c:11450
+#: c-decl.c:3987 cp/decl.c:7325
#, c-format
msgid "`%s' declared as function returning an array"
msgstr "\"%s\" är deklarerad som en funktion som returnerar ett fält"
-#: c-decl.c:4241
+#: c-decl.c:4015
msgid "ISO C forbids qualified void function return type"
msgstr ""
-#: c-decl.c:4245
+#: c-decl.c:4019
msgid "type qualifiers ignored on function return type"
msgstr ""
-#: c-decl.c:4274 c-decl.c:4357 c-decl.c:4481 c-decl.c:4573
+#: c-decl.c:4048 c-decl.c:4131 c-decl.c:4255 c-decl.c:4341
msgid "ISO C forbids qualified function types"
msgstr ""
-#: c-decl.c:4314 cp/decl.c:11684
+#: c-decl.c:4088 cp/decl.c:7545
msgid "invalid type modifier within pointer declarator"
msgstr ""
-#: c-decl.c:4412 cp/decl.c:12182
+#: c-decl.c:4166
+msgid "ISO C forbids const or volatile function types"
+msgstr ""
+
+#: c-decl.c:4186 cp/decl.c:8005
#, c-format
msgid "variable or field `%s' declared void"
msgstr "variabel eller fält \"%s\" deklarerad som void"
-#: c-decl.c:4445
+#: c-decl.c:4219
msgid "attributes in parameter array declarator ignored"
msgstr ""
-#: c-decl.c:4470
+#: c-decl.c:4244
msgid "invalid type modifier within array declarator"
msgstr ""
-#: c-decl.c:4515
+#: c-decl.c:4289
#, c-format
msgid "field `%s' declared as a function"
msgstr "fält \"%s\" deklarerad som en funktion"
-#: c-decl.c:4521
+#: c-decl.c:4295
#, c-format
msgid "field `%s' has incomplete type"
msgstr "fält \"%s\" har en inkomplett typ"
-#: c-decl.c:4553 c-decl.c:4555 c-decl.c:4557 c-decl.c:4564
+#: c-decl.c:4321 c-decl.c:4323 c-decl.c:4325 c-decl.c:4332
#, c-format
msgid "invalid storage class for function `%s'"
msgstr "ogiltig lagringsklass för funktion \"%s\""
-#: c-decl.c:4579
+#: c-decl.c:4347
msgid "`noreturn' function returns non-void value"
msgstr "\"noreturn\"-funktion returnerar ett icke-void värde"
-#: c-decl.c:4594
+#: c-decl.c:4362
msgid "cannot inline function `main'"
msgstr "kan inte inline:a funktion \"main\""
-#: c-decl.c:4649
-#, c-format
-msgid "variable `%s' declared `inline'"
+#: c-decl.c:4415
+#, fuzzy
+msgid "variable previously declared `static' redeclared `extern'"
+msgstr "variabel eller fält \"%s\" deklarerad som void"
+
+#: c-decl.c:4424
+#, fuzzy
+msgid "%Jvariable '%D' declared `inline'"
msgstr "variabel \"%s\" deklarerad \"inline\""
#. A mere warning is sure to result in improper semantics
#. at runtime. Don't bother to allow this to compile.
-#: c-decl.c:4677 cp/decl.c:9951
+#: c-decl.c:4452 cp/decl.c:5877
#, fuzzy
msgid "thread-local storage not supported for this target"
msgstr "-fdata-sections stöds inte för AIX"
-#: c-decl.c:4732 c-decl.c:5880
+#: c-decl.c:4513 c-decl.c:5470
msgid "function declaration isn't a prototype"
msgstr "funktionsdeklaration är inte en prototyp"
-#: c-decl.c:4738
+#: c-decl.c:4519
msgid "parameter names (without types) in function declaration"
msgstr ""
-#: c-decl.c:4770 c-decl.c:6250
+#: c-decl.c:4547
#, c-format
msgid "parameter `%s' has incomplete type"
msgstr "parameter \"%s\" har en inkomplett typ"
-#: c-decl.c:4773
+#: c-decl.c:4550
msgid "parameter has incomplete type"
msgstr "parameter har en inkomplett typ"
-#: c-decl.c:4794
-#, c-format
-msgid "parameter `%s' points to incomplete type"
-msgstr "parameter \"%s\" pekar på inkomplett typ"
+#: c-decl.c:4599
+msgid "\"void\" as only parameter may not be qualified"
+msgstr ""
-#: c-decl.c:4797
-msgid "parameter points to incomplete type"
-msgstr "parameter pekar på inkomplett typ"
+#: c-decl.c:4620
+#, fuzzy
+msgid "\"void\" must be the only parameter"
+msgstr "ogiltigt typargument"
-#: c-decl.c:4862
-#, c-format
-msgid "parameter `%s' has just a forward declaration"
+#: c-decl.c:4637
+msgid "%Jparameter \"%D\" has just a forward declaration"
msgstr ""
-#: c-decl.c:4903
-msgid "`void' in parameter list must be the entire list"
-msgstr "\"void\" i parameterlistan måste vara hela listan"
-
-#: c-decl.c:4934
+#. The first %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4665
#, fuzzy, c-format
-msgid "`struct %s' declared inside parameter list"
+msgid "\"%s %s\" declared inside parameter list"
msgstr "\"%s %s\" deklarerad inuti parameterlista"
-#: c-decl.c:4937
-#, c-format
-msgid "`union %s' declared inside parameter list"
-msgstr "\"union %s\" deklarerad inuti parameterlista"
-
-#: c-decl.c:4940
-#, c-format
-msgid "`enum %s' declared inside parameter list"
-msgstr "\"enum %s\" deklarerad inuti parameterlista"
-
-#: c-decl.c:4947
-msgid "anonymous struct declared inside parameter list"
+#. The %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4669
+#, fuzzy, c-format
+msgid "anonymous %s declared inside parameter list"
msgstr "anonym struktur deklarerad i parameterlista"
-#: c-decl.c:4949
-msgid "anonymous union declared inside parameter list"
-msgstr "anonym union deklarerad i parameterlista"
-
-#: c-decl.c:4951
-msgid "anonymous enum declared inside parameter list"
-msgstr "anonym uppräkningstyp deklarerad i parameterlista"
-
-#: c-decl.c:4955
+#: c-decl.c:4673
msgid "its scope is only this definition or declaration, which is probably not what you want"
msgstr "dess scope-område är endast denna definition eller deklaration, vilket troligen inte är vad du vill."
-#: c-decl.c:5032
+#: c-decl.c:4758
#, c-format
msgid "redefinition of `union %s'"
msgstr "omdefiniering av \"union %s\""
-#: c-decl.c:5034
+#: c-decl.c:4760
#, c-format
msgid "redefinition of `struct %s'"
msgstr "omdefiniering av \"struct %s\""
-#: c-decl.c:5105 cp/decl.c:7532
+#: c-decl.c:4828 cp/decl.c:3521
msgid "declaration does not declare anything"
msgstr ""
-#: c-decl.c:5169 c-decl.c:5172
+#: c-decl.c:4873 c-decl.c:4889
+#, fuzzy
+msgid "%Jduplicate member '%D'"
+msgstr "upprepning av medlem \"%s\""
+
+#: c-decl.c:4923 c-decl.c:4926
#, c-format
msgid "%s defined inside parms"
msgstr ""
-#: c-decl.c:5170 c-decl.c:5173 c-decl.c:5184
+#: c-decl.c:4924 c-decl.c:4927 c-decl.c:4938
msgid "union"
msgstr "union"
-#: c-decl.c:5170 c-decl.c:5173
+#: c-decl.c:4924 c-decl.c:4927
msgid "structure"
msgstr "struktur"
-#: c-decl.c:5183
+#: c-decl.c:4937
#, c-format
msgid "%s has no %s"
msgstr "%s har ingen %s"
-#: c-decl.c:5184
+#: c-decl.c:4938
msgid "struct"
msgstr "struct"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "named members"
msgstr "namngivna medlemmar"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "members"
msgstr "medlemmar"
-#: c-decl.c:5224
+#: c-decl.c:4978
#, c-format
msgid "nested redefinition of `%s'"
msgstr "nästlad omdefinition av \"%s\""
-#: c-decl.c:5237
-#, c-format
-msgid "bit-field `%s' width not an integer constant"
-msgstr ""
-
-#: c-decl.c:5248
-#, c-format
-msgid "bit-field `%s' has invalid type"
-msgstr "bitfält \"%s\" har en icke godkänd typ"
-
-#: c-decl.c:5260
-#, c-format
-msgid "bit-field `%s' type invalid in ISO C"
-msgstr "bitfält \"%s\" har en icke godkänd typ enligt ISO C"
-
-#: c-decl.c:5271
-#, c-format
-msgid "negative width in bit-field `%s'"
-msgstr "negativ storlek i bitfält \"%s\""
-
-#: c-decl.c:5273
-#, c-format
-msgid "width of `%s' exceeds its type"
-msgstr "storleken på \"%s\" är större än sin typ"
-
-#: c-decl.c:5275
-#, c-format
-msgid "zero width for bit-field `%s'"
-msgstr "Storleken noll på bitfält \"%s\""
-
-#: c-decl.c:5289
-#, c-format
-msgid "`%s' is narrower than values of its type"
-msgstr ""
-
-#: c-decl.c:5323
-msgid "flexible array member in union"
-msgstr ""
+#: c-decl.c:4998
+#, fuzzy
+msgid "%Jflexible array member in union"
+msgstr "ISO C89 stöder inte flexibla fältmedlemmar"
-#: c-decl.c:5325
-msgid "flexible array member not at end of struct"
+#: c-decl.c:5000
+msgid "%Jflexible array member not at end of struct"
msgstr ""
-#: c-decl.c:5327
-msgid "flexible array member in otherwise empty struct"
+#: c-decl.c:5002
+msgid "%Jflexible array member in otherwise empty struct"
msgstr ""
-#: c-decl.c:5357
-#, c-format
-msgid "duplicate member `%s'"
-msgstr "upprepning av medlem \"%s\""
+#: c-decl.c:5007
+#, fuzzy
+msgid "%Jinvalid use of structure with flexible array member"
+msgstr "ISO C89 stöder inte flexibla fältmedlemmar"
-#: c-decl.c:5448
+#: c-decl.c:5102
msgid "union cannot be made transparent"
msgstr ""
#. This enum is a named one that has been declared already.
-#: c-decl.c:5558
+#: c-decl.c:5171
#, c-format
msgid "redeclaration of `enum %s'"
msgstr "omdeklaration av \"enum %s\""
-#: c-decl.c:5592
+#: c-decl.c:5202
msgid "enum defined inside parms"
msgstr ""
-#: c-decl.c:5625
+#: c-decl.c:5235
msgid "enumeration values exceed range of largest integer"
msgstr ""
-#: c-decl.c:5734
+#: c-decl.c:5338
#, c-format
msgid "enumerator value for `%s' not integer constant"
msgstr "uppräkningsvärde för \"%s\" är inte en heltalskonstant"
-#: c-decl.c:5747
+#: c-decl.c:5351
msgid "overflow in enumeration values"
msgstr "överspill i uppräkningsvärden"
-#: c-decl.c:5752
+#: c-decl.c:5356
msgid "ISO C restricts enumerator values to range of `int'"
msgstr "ISO C begränsar enumreringsvärden till intervallet av en \"int\""
-#: c-decl.c:5834
+#: c-decl.c:5432
msgid "return type is an incomplete type"
msgstr "returtypen är en inkomplett typ"
-#: c-decl.c:5842
+#: c-decl.c:5440
msgid "return type defaults to `int'"
msgstr "returtyp sätts till \"int\""
-#: c-decl.c:5889
-#, c-format
-msgid "no previous prototype for `%s'"
+#: c-decl.c:5476
+#, fuzzy
+msgid "%Jno previous prototype for '%D'"
msgstr "ingen tidigare prototyp för `%s'"
-#: c-decl.c:5896
-#, c-format
-msgid "`%s' was used with no prototype before its definition"
+#: c-decl.c:5482
+#, fuzzy
+msgid "%J'%D' was used with no prototype before its definition"
msgstr "\"%s\" användes utan någon prototyp innan sin definition"
-#: c-decl.c:5902
-#, c-format
-msgid "no previous declaration for `%s'"
+#: c-decl.c:5489
+#, fuzzy
+msgid "%Jno previous declaration for '%D'"
msgstr "ingen tidigare deklaration av \"%s\""
-#: c-decl.c:5909
-#, c-format
-msgid "`%s' was used with no declaration before its definition"
+#: c-decl.c:5495
+#, fuzzy
+msgid "%J`%D' was used with no declaration before its definition"
msgstr "\"%s\" användes utan någon deklaration innan sin definition"
-#: c-decl.c:5933 c-decl.c:6486
-#, c-format
-msgid "return type of `%s' is not `int'"
+#: c-decl.c:5531 c-decl.c:6037
+#, fuzzy
+msgid "%Jreturn type of '%D' is not `int'"
msgstr "returtypen på \"%s\" är inte \"int\""
-#: c-decl.c:5949
-#, c-format
-msgid "first argument of `%s' should be `int'"
+#: c-decl.c:5546
+#, fuzzy
+msgid "%Jfirst argument of '%D' should be `int'"
msgstr "första argumentet till \"%s\" skall vara \"int\""
-#: c-decl.c:5958
-#, c-format
-msgid "second argument of `%s' should be `char **'"
+#: c-decl.c:5555
+#, fuzzy
+msgid "%Jsecond argument of '%D' should be 'char **'"
msgstr "andra argumentet till \"%s\" skall vara \"char **\""
-#: c-decl.c:5967
-#, c-format
-msgid "third argument of `%s' should probably be `char **'"
+#: c-decl.c:5564
+#, fuzzy
+msgid "%Jthird argument of '%D' should probably be 'char **'"
msgstr "tredje argumentet till \"%s2 skall troligen vara \"char **\""
-#: c-decl.c:5976
-#, c-format
-msgid "`%s' takes only zero or two arguments"
+#: c-decl.c:5574
+#, fuzzy
+msgid "%J'%D' takes only zero or two arguments"
msgstr "\"%s\" tar bara noll eller två argument"
-#: c-decl.c:5979
-#, c-format
-msgid "`%s' is normally a non-static function"
+#: c-decl.c:5577
+#, fuzzy
+msgid "%J'%D' is normally a non-static function"
msgstr "\"%s\" är normalt en icke-statisk function"
-#: c-decl.c:6077
-msgid "parm types given both in parmlist and separately"
+#: c-decl.c:5633
+msgid "%Jold-style parameter declarations in prototyped function definition"
msgstr ""
-#: c-decl.c:6098
-msgid "parameter name omitted"
+#: c-decl.c:5647
+#, fuzzy
+msgid "%Jparameter name omitted"
msgstr "parameternamn utlämnat"
-#: c-decl.c:6102 c-decl.c:6204
-#, c-format
-msgid "parameter `%s' declared void"
-msgstr "parameter \"%s\" deklarerad som void"
-
-#: c-decl.c:6178
-msgid "parameter name missing from parameter list"
+#: c-decl.c:5722
+#, fuzzy
+msgid "%Jparameter name missing from parameter list"
msgstr "parameternamn saknas i parameterlista"
-#: c-decl.c:6197
-#, c-format
-msgid "multiple parameters named `%s'"
+#: c-decl.c:5732
+#, fuzzy
+msgid "%J\"%D\" declared as a non-parameter"
+msgstr "fält \"%s\" deklarerad som en funktion"
+
+#: c-decl.c:5737
+#, fuzzy
+msgid "%Jmultiple parameters named \"%D\""
msgstr "flera parametrar med namn \"%s\""
-#: c-decl.c:6219 c-decl.c:6221
-#, c-format
-msgid "type of `%s' defaults to `int'"
+#: c-decl.c:5745
+#, fuzzy
+msgid "%Jparameter \"%D\" declared void"
+msgstr "parameter \"%s\" deklarerad som void"
+
+#: c-decl.c:5760 c-decl.c:5762
+#, fuzzy
+msgid "%Jtype of \"%D\" defaults to \"int\""
msgstr "typen på \"%s\" sätts till \"int\""
-#: c-decl.c:6257
-#, c-format
-msgid "declaration for parameter `%s' but no such parameter"
+#: c-decl.c:5776
+#, fuzzy
+msgid "%Jparameter \"%D\" has incomplete type"
+msgstr "parameter har en inkomplett typ"
+
+#: c-decl.c:5782
+#, fuzzy
+msgid "%Jdeclaration for parameter \"%D\" but no such parameter"
msgstr "deklaration av parameter \"%s\" med det finns ingen sådan parameter"
-#: c-decl.c:6305
+#: c-decl.c:5834
msgid "number of arguments doesn't match prototype"
msgstr "antalet argument matchar inte prototypen"
-#: c-decl.c:6335
-#, c-format
-msgid "promoted argument `%s' doesn't match prototype"
-msgstr ""
+#: c-decl.c:5835 c-decl.c:5866 c-decl.c:5873
+#, fuzzy
+msgid "%Hprototype declaration"
+msgstr "tom deklaration"
-#: c-decl.c:6345
-#, c-format
-msgid "argument `%s' doesn't match prototype"
+#: c-decl.c:5864
+#, fuzzy
+msgid "promoted argument \"%D\" doesn't match prototype"
+msgstr "argument \"%s\" matchar inte prototypen"
+
+#: c-decl.c:5872
+#, fuzzy
+msgid "argument \"%D\" doesn't match prototype"
msgstr "argument \"%s\" matchar inte prototypen"
-#: c-decl.c:6518 cp/decl.c:15049
+#: c-decl.c:6069 cp/decl.c:10876
msgid "no return statement in function returning non-void"
msgstr "ingen return i funktion som returnerar icke-void"
-#: c-decl.c:6525
+#: c-decl.c:6076
msgid "this function may return with or without a value"
msgstr "denna funktion kan returnera med eller utan ett värde"
-#: c-decl.c:6729
-#, c-format
-msgid "size of return value of `%s' is %u bytes"
-msgstr "storleken på returvärdet från \"%s\" är %u bytes"
-
-#: c-decl.c:6733
-#, c-format
-msgid "size of return value of `%s' is larger than %d bytes"
-msgstr "storleken på returvärdet från \"%s\" är större än %d bytes"
-
#. If we get here, declarations have been used in a for loop without
#. the C99 for loop scope. This doesn't make much sense, so don't
#. allow it.
-#: c-decl.c:6791
-msgid "`for' loop initial declaration used outside C99 mode"
+#: c-decl.c:6175
+msgid "'for' loop initial declaration used outside C99 mode"
msgstr ""
-#: c-decl.c:6815
-#, c-format
-msgid "`struct %s' declared in `for' loop initial declaration"
+#: c-decl.c:6199
+#, fuzzy, c-format
+msgid "'struct %s' declared in 'for' loop initial declaration"
msgstr "\"struct %s\" är deklarerad i en for-loops init-deklaration"
-#: c-decl.c:6818
-#, c-format
-msgid "`union %s' declared in `for' loop initial declaration"
+#: c-decl.c:6202
+#, fuzzy, c-format
+msgid "'union %s' declared in 'for' loop initial declaration"
msgstr "\"union %s\" är deklarerad i en for-loops init-deklaration"
-#: c-decl.c:6821
-#, c-format
-msgid "`enum %s' declared in `for' loop initial declaration"
+#: c-decl.c:6205
+#, fuzzy, c-format
+msgid "'enum %s' declared in 'for' loop initial declaration"
msgstr "\"enum %s\" är deklarerad i en for-loops init-deklaration"
-#: c-decl.c:6829
-#, c-format
-msgid "declaration of non-variable `%s' in `for' loop initial declaration"
-msgstr ""
-
-#: c-decl.c:6831
-#, c-format
-msgid "declaration of static variable `%s' in `for' loop initial declaration"
-msgstr ""
+#: c-decl.c:6213
+#, fuzzy
+msgid "%Jdeclaration of non-variable '%D' in 'for' loop initial declaration"
+msgstr "\"enum %s\" är deklarerad i en for-loops init-deklaration"
-#: c-decl.c:6833
-#, c-format
-msgid "declaration of `extern' variable `%s' in `for' loop initial declaration"
-msgstr ""
+#: c-decl.c:6216
+#, fuzzy
+msgid "%Jdeclaration of static variable '%D' in 'for' loop initial declaration"
+msgstr "\"union %s\" är deklarerad i en for-loops init-deklaration"
-#: c-format.c:109 c-format.c:191
-msgid "format string arg not a string type"
-msgstr "argument för formatsträng är inte av strängtyp"
+#: c-decl.c:6219
+#, fuzzy
+msgid "%Jdeclaration of 'extern' variable '%D' in 'for' loop initial declaration"
+msgstr "\"union %s\" är deklarerad i en for-loops init-deklaration"
-#: c-format.c:124
-msgid "args to be formatted is not '...'"
-msgstr "argumenten som skall formateras är inte \"...\""
+#: c-decl.c:6532
+#, fuzzy
+msgid "%Jredefinition of global '%D'"
+msgstr "omdefiniering av \"%s\""
-#: c-format.c:133
-msgid "strftime formats cannot format arguments"
-msgstr ""
+#: c-decl.c:6533
+#, fuzzy
+msgid "%J'%D' previously defined here"
+msgstr "\"%s\" definierades tidigare här"
-#: c-format.c:168 c-format.c:270
+#: c-format.c:94 c-format.c:210
msgid "format string has invalid operand number"
msgstr "formatsträng har ett ogiltigt antal operander"
-#: c-format.c:202
+#: c-format.c:111
msgid "function does not return string type"
msgstr ""
-#: c-format.c:233
+#: c-format.c:140
+msgid "format string arg not a string type"
+msgstr "argument för formatsträng är inte av strängtyp"
+
+#: c-format.c:190
msgid "unrecognized format specifier"
msgstr "oigenkänd formatangivelse"
-#: c-format.c:246
+#: c-format.c:203
#, c-format
msgid "`%s' is an unrecognized format function type"
msgstr "\"%s\" är ett ej känt funktionsformat"
-#: c-format.c:280
+#: c-format.c:216
+#, fuzzy
+msgid "'...' has invalid operand number"
+msgstr "formatsträng har ett ogiltigt antal operander"
+
+#: c-format.c:224
msgid "format string arg follows the args to be formatted"
msgstr "formatsträngen kommer efter argumenten som skall formateras"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "` ' flag"
msgstr ""
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "the ` ' printf flag"
msgstr ""
-#: c-format.c:602 c-format.c:673
+#: c-format.c:566 c-format.c:590 c-format.c:627 c-format.c:683
msgid "`+' flag"
msgstr ""
-#: c-format.c:602
+#: c-format.c:566 c-format.c:590 c-format.c:627
msgid "the `+' printf flag"
msgstr ""
-#: c-format.c:603 c-format.c:649
+#: c-format.c:567 c-format.c:591 c-format.c:628 c-format.c:659
msgid "`#' flag"
msgstr ""
-#: c-format.c:603
+#: c-format.c:567 c-format.c:591 c-format.c:628
msgid "the `#' printf flag"
msgstr ""
-#: c-format.c:604 c-format.c:647
+#: c-format.c:568 c-format.c:592 c-format.c:657
msgid "`0' flag"
msgstr ""
-#: c-format.c:604
+#: c-format.c:568 c-format.c:592
msgid "the `0' printf flag"
msgstr ""
-#: c-format.c:605 c-format.c:646 c-format.c:676
+#: c-format.c:569 c-format.c:593 c-format.c:656 c-format.c:686
msgid "`-' flag"
msgstr ""
-#: c-format.c:605
+#: c-format.c:569 c-format.c:593
msgid "the `-' printf flag"
msgstr ""
-#: c-format.c:606 c-format.c:630
+#: c-format.c:570 c-format.c:640
msgid "`'' flag"
msgstr ""
-#: c-format.c:606
+#: c-format.c:570
msgid "the `'' printf flag"
msgstr ""
-#: c-format.c:607 c-format.c:631
+#: c-format.c:571 c-format.c:641
msgid "`I' flag"
msgstr ""
-#: c-format.c:607
+#: c-format.c:571
msgid "the `I' printf flag"
msgstr ""
-#: c-format.c:608 c-format.c:628 c-format.c:650 c-format.c:677 c-format.c:1702
+#: c-format.c:572 c-format.c:594 c-format.c:638 c-format.c:660 c-format.c:687
+#: c-format.c:1802
msgid "field width"
msgstr ""
-#: c-format.c:608
+#: c-format.c:572 c-format.c:594
msgid "field width in printf format"
msgstr ""
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision"
msgstr ""
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision in printf format"
msgstr ""
-#: c-format.c:610 c-format.c:629 c-format.c:680
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630 c-format.c:639
+#: c-format.c:690
msgid "length modifier"
msgstr ""
-#: c-format.c:610
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630
msgid "length modifier in printf format"
msgstr ""
-#: c-format.c:626
+#: c-format.c:636
msgid "assignment suppression"
msgstr ""
-#: c-format.c:626
+#: c-format.c:636
msgid "the assignment suppression scanf feature"
msgstr ""
-#: c-format.c:627
+#: c-format.c:637
msgid "`a' flag"
msgstr ""
-#: c-format.c:627
+#: c-format.c:637
msgid "the `a' scanf flag"
msgstr ""
-#: c-format.c:628
+#: c-format.c:638
msgid "field width in scanf format"
msgstr ""
-#: c-format.c:629
+#: c-format.c:639
msgid "length modifier in scanf format"
msgstr ""
-#: c-format.c:630
+#: c-format.c:640
msgid "the `'' scanf flag"
msgstr ""
-#: c-format.c:631
+#: c-format.c:641
msgid "the `I' scanf flag"
msgstr ""
-#: c-format.c:645
+#: c-format.c:655
msgid "`_' flag"
msgstr ""
-#: c-format.c:645
+#: c-format.c:655
msgid "the `_' strftime flag"
msgstr ""
-#: c-format.c:646
+#: c-format.c:656
msgid "the `-' strftime flag"
msgstr ""
-#: c-format.c:647
+#: c-format.c:657
msgid "the `0' strftime flag"
msgstr ""
-#: c-format.c:648 c-format.c:672
+#: c-format.c:658 c-format.c:682
msgid "`^' flag"
msgstr ""
-#: c-format.c:648
+#: c-format.c:658
msgid "the `^' strftime flag"
msgstr ""
-#: c-format.c:649
+#: c-format.c:659
msgid "the `#' strftime flag"
msgstr ""
-#: c-format.c:650
+#: c-format.c:660
msgid "field width in strftime format"
msgstr ""
-#: c-format.c:651
+#: c-format.c:661
msgid "`E' modifier"
msgstr ""
-#: c-format.c:651
+#: c-format.c:661
msgid "the `E' strftime modifier"
msgstr ""
-#: c-format.c:652
+#: c-format.c:662
msgid "`O' modifier"
msgstr ""
-#: c-format.c:652
+#: c-format.c:662
msgid "the `O' strftime modifier"
msgstr ""
-#: c-format.c:653
+#: c-format.c:663
msgid "the `O' modifier"
msgstr ""
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character"
msgstr ""
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character in strfmon format"
msgstr ""
-#: c-format.c:672
+#: c-format.c:682
msgid "the `^' strfmon flag"
msgstr ""
-#: c-format.c:673
+#: c-format.c:683
msgid "the `+' strfmon flag"
msgstr ""
-#: c-format.c:674
+#: c-format.c:684
msgid "`(' flag"
msgstr ""
-#: c-format.c:674
+#: c-format.c:684
msgid "the `(' strfmon flag"
msgstr ""
-#: c-format.c:675
+#: c-format.c:685
msgid "`!' flag"
msgstr ""
-#: c-format.c:675
+#: c-format.c:685
msgid "the `!' strfmon flag"
msgstr ""
-#: c-format.c:676
+#: c-format.c:686
msgid "the `-' strfmon flag"
msgstr ""
-#: c-format.c:677
+#: c-format.c:687
msgid "field width in strfmon format"
msgstr ""
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision"
msgstr ""
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision in strfmon format"
msgstr ""
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision"
msgstr ""
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision in strfmon format"
msgstr ""
-#: c-format.c:680
+#: c-format.c:690
msgid "length modifier in strfmon format"
msgstr ""
-#: c-format.c:983
+#: c-format.c:1107
#, c-format
msgid "function might be possible candidate for `%s' format attribute"
msgstr "funktionen är en möjlig kandidat för formatattributet \"%s\""
-#: c-format.c:1107 c-format.c:1128 c-format.c:2112
+#: c-format.c:1223 c-format.c:1244 c-format.c:2212
msgid "missing $ operand number in format"
msgstr "saknar numerisk $-operand i formatsträng"
-#: c-format.c:1138
+#: c-format.c:1254
#, c-format
msgid "%s does not support %%n$ operand number formats"
msgstr ""
-#: c-format.c:1145
+#: c-format.c:1261
msgid "operand number out of range in format"
msgstr ""
-#: c-format.c:1168
+#: c-format.c:1284
#, c-format
msgid "format argument %d used more than once in %s format"
msgstr ""
-#: c-format.c:1218
+#: c-format.c:1331
#, c-format
msgid "format argument %d unused before used argument %d in $-style format"
msgstr ""
-#: c-format.c:1322
+#: c-format.c:1429
msgid "format not a string literal, format string not checked"
msgstr ""
-#: c-format.c:1336
+#: c-format.c:1443
msgid "format not a string literal and no format arguments"
msgstr ""
-#: c-format.c:1338
+#: c-format.c:1445
msgid "format not a string literal, argument types not checked"
msgstr ""
-#: c-format.c:1351
+#: c-format.c:1458
msgid "too many arguments for format"
msgstr "för många argument för för formatsträng"
-#: c-format.c:1354
+#: c-format.c:1461
msgid "unused arguments in $-style format"
msgstr ""
-#: c-format.c:1357
+#: c-format.c:1464
#, fuzzy, c-format
msgid "zero-length %s format string"
msgstr "formatsträng med längden noll"
-#: c-format.c:1361
+#: c-format.c:1468
msgid "format is a wide character string"
msgstr ""
-#: c-format.c:1364
+#: c-format.c:1471
msgid "unterminated format string"
msgstr "icke terminerad formatsträng"
-#: c-format.c:1581
+#: c-format.c:1681
msgid "embedded `\\0' in format"
msgstr ""
-#: c-format.c:1596
+#: c-format.c:1696
#, c-format
msgid "spurious trailing `%%' in format"
msgstr ""
-#: c-format.c:1635 c-format.c:1872
+#: c-format.c:1735 c-format.c:1972
#, c-format
msgid "repeated %s in format"
msgstr ""
-#: c-format.c:1648
+#: c-format.c:1748
msgid "missing fill character at end of strfmon format"
msgstr ""
-#: c-format.c:1687 c-format.c:1786 c-format.c:2066 c-format.c:2119
+#: c-format.c:1787 c-format.c:1886 c-format.c:2166 c-format.c:2219
msgid "too few arguments for format"
msgstr "för få argument enligt formatsträngen"
-#: c-format.c:1728
+#: c-format.c:1828
#, c-format
msgid "zero width in %s format"
msgstr "nollstorlek i %s formatsträng"
-#: c-format.c:1747
+#: c-format.c:1847
#, c-format
msgid "empty left precision in %s format"
msgstr ""
-#: c-format.c:1801
+#: c-format.c:1901
msgid "field precision"
msgstr ""
-#: c-format.c:1816
+#: c-format.c:1916
#, c-format
msgid "empty precision in %s format"
msgstr ""
-#: c-format.c:1856
+#: c-format.c:1956
#, c-format
msgid "%s does not support the `%s' %s length modifier"
msgstr ""
-#: c-format.c:1906
+#: c-format.c:2006
msgid "conversion lacks type at end of format"
msgstr ""
-#: c-format.c:1917
+#: c-format.c:2017
#, c-format
msgid "unknown conversion type character `%c' in format"
msgstr ""
-#: c-format.c:1920
+#: c-format.c:2020
#, c-format
msgid "unknown conversion type character 0x%x in format"
msgstr ""
-#: c-format.c:1927
+#: c-format.c:2027
#, c-format
msgid "%s does not support the `%%%c' %s format"
msgstr ""
-#: c-format.c:1943
+#: c-format.c:2043
#, c-format
msgid "%s used with `%%%c' %s format"
msgstr ""
-#: c-format.c:1952
+#: c-format.c:2052
#, c-format
msgid "%s does not support %s"
msgstr ""
-#: c-format.c:1961
+#: c-format.c:2061
#, c-format
msgid "%s does not support %s with the `%%%c' %s format"
msgstr ""
-#: c-format.c:1994
+#: c-format.c:2094
#, c-format
msgid "%s ignored with %s and `%%%c' %s format"
msgstr ""
-#: c-format.c:1998
+#: c-format.c:2098
#, c-format
msgid "%s ignored with %s in %s format"
msgstr ""
-#: c-format.c:2004
+#: c-format.c:2104
#, c-format
msgid "use of %s and %s together with `%%%c' %s format"
msgstr ""
-#: c-format.c:2008
+#: c-format.c:2108
#, c-format
msgid "use of %s and %s together in %s format"
msgstr ""
# fixme: ordet locale borde standardiseras
-#: c-format.c:2027
+#: c-format.c:2127
#, c-format
msgid "`%%%c' yields only last 2 digits of year in some locales"
msgstr "\"%%%c\" ger bara de sista två siffrorna i året i vissa landsinställningar"
-#: c-format.c:2030
+#: c-format.c:2130
#, c-format
msgid "`%%%c' yields only last 2 digits of year"
msgstr "\"%%%c\" ger bara de sista två siffrorna i året"
#. The end of the format string was reached.
-#: c-format.c:2046
+#: c-format.c:2146
#, c-format
msgid "no closing `]' for `%%[' format"
msgstr ""
-#: c-format.c:2059
+#: c-format.c:2159
#, c-format
msgid "use of `%s' length modifier with `%c' type character"
msgstr ""
-#: c-format.c:2080
+#: c-format.c:2180
#, c-format
msgid "%s does not support the `%%%s%c' %s format"
msgstr ""
-#: c-format.c:2095
+#: c-format.c:2195
msgid "operand number specified with suppressed assignment"
msgstr ""
-#: c-format.c:2097
+#: c-format.c:2197
msgid "operand number specified for format taking no argument"
msgstr ""
-#: c-format.c:2211
+#: c-format.c:2309
#, c-format
msgid "writing through null pointer (arg %d)"
msgstr ""
-#: c-format.c:2220
+#: c-format.c:2318
#, c-format
msgid "reading through null pointer (arg %d)"
msgstr ""
-#: c-format.c:2240
+#: c-format.c:2338
#, c-format
msgid "writing into constant object (arg %d)"
msgstr ""
-#: c-format.c:2250
+#: c-format.c:2348
#, c-format
msgid "extra type qualifiers in format argument (arg %d)"
msgstr ""
-#: c-format.c:2257
+#: c-format.c:2355
#, c-format
msgid "format argument is not a pointer (arg %d)"
msgstr ""
-#: c-format.c:2259
+#: c-format.c:2357
#, c-format
msgid "format argument is not a pointer to a pointer (arg %d)"
msgstr ""
-#: c-format.c:2330
+#: c-format.c:2433
msgid "pointer"
msgstr ""
-#: c-format.c:2332
+#: c-format.c:2435
msgid "different type"
msgstr ""
-#: c-format.c:2353
+#: c-format.c:2456
#, c-format
msgid "%s is not type %s (arg %d)"
msgstr ""
-#: c-format.c:2356
+#: c-format.c:2459
#, c-format
msgid "%s format, %s arg (arg %d)"
msgstr ""
-#: c-lex.c:153
-#, fuzzy
-msgid "YYDEBUG not defined"
-msgstr "YYDEBUG är inte definierad."
+#: c-format.c:2704
+msgid "args to be formatted is not '...'"
+msgstr "argumenten som skall formateras är inte \"...\""
+
+#: c-format.c:2713
+msgid "strftime formats cannot format arguments"
+msgstr ""
+
+#: c-incpath.c:68
+#, c-format
+msgid "ignoring duplicate directory \"%s\"\n"
+msgstr ""
+
+#: c-incpath.c:71
+#, c-format
+msgid " as it is a non-system directory that duplicates a system directory\n"
+msgstr ""
+
+#: c-incpath.c:75
+#, c-format
+msgid "ignoring nonexistent directory \"%s\"\n"
+msgstr "ignorerar ej existerande katalog \"%s\"\n"
+
+#: c-incpath.c:273
+#, c-format
+msgid "#include \"...\" search starts here:\n"
+msgstr "#include \"...\" sökning startar här:\n"
+
+#: c-incpath.c:277
+#, c-format
+msgid "#include <...> search starts here:\n"
+msgstr "#include <...> sökning startar här:\n"
-#: c-lex.c:293
+#: c-incpath.c:282
+#, c-format
+msgid "End of search list.\n"
+msgstr "Slut på söklistan.\n"
+
+#: c-lex.c:240
msgid "badly nested C headers from preprocessor"
msgstr ""
-#: c-lex.c:336
+#: c-lex.c:281
#, c-format
msgid "ignoring #pragma %s %s"
msgstr "ignorerar #pragma %s %s"
-#: c-lex.c:386
-#, c-format
-msgid "universal-character-name '\\U%08x' not valid in identifier"
+#. ... or not.
+#: c-lex.c:385
+msgid "%Hstray '@' in program"
msgstr ""
-#: c-lex.c:632
+#: c-lex.c:393
#, c-format
-msgid "universal-character-name '\\u%04x' not valid in identifier"
+msgid "missing terminating %c character"
msgstr ""
-#: c-lex.c:695
+#: c-lex.c:395
#, c-format
msgid "stray '%c' in program"
msgstr ""
-#: c-lex.c:697
+#: c-lex.c:397
#, c-format
msgid "stray '\\%o' in program"
msgstr ""
-#: c-lex.c:854
+#: c-lex.c:535
msgid "this decimal constant is unsigned only in ISO C90"
msgstr ""
-#: c-lex.c:857
+#: c-lex.c:538
msgid "this decimal constant would be unsigned in ISO C90"
msgstr ""
-#: c-lex.c:873
+#: c-lex.c:554
#, fuzzy, c-format
msgid "integer constant is too large for \"%s\" type"
msgstr "heltalskonstant är större än maximala värdet för sin typ"
-#: c-lex.c:941
+#: c-lex.c:620
#, fuzzy, c-format
msgid "floating constant exceeds range of \"%s\""
msgstr "flyttal utanför intervallet för \"%s\""
-#: c-lex.c:977 cpplex.c:330 cpplex.c:668 cpplex.c:1942
-msgid "ignoring invalid multibyte character"
-msgstr "ignorerar ogiltigt flerbytestecken"
+#: c-lex.c:696
+#, fuzzy
+msgid "traditional C rejects string constant concatenation"
+msgstr "traditionell C stödjer inte sträng-sammanslagning"
-#: c-opts.c:355
-#, fuzzy, c-format
-msgid "missing argument to \"-%s\""
-msgstr "Saknar argument till flaggan \"%s\""
+#: c-objc-common.c:82
+msgid "%Jfunction '%F' can never be inlined because it is supressed using -fno-inline"
+msgstr ""
+
+#: c-objc-common.c:92
+msgid "%Jfunction '%F' can never be inlined because it might not be bound within this unit of translation"
+msgstr ""
+
+#: c-objc-common.c:100
+msgid "%Jfunction '%F' can never be inlined because it uses attributes conflicting with inlining"
+msgstr ""
+
+#: c-objc-common.c:115
+msgid "%Jfunction '%F' can never be inlined because it has pending sizes"
+msgstr ""
-#: c-opts.c:359
+#: c-objc-common.c:128
+msgid "%Jnested function '%F' can never be inlined because it has possibly saved pending sizes"
+msgstr ""
+
+#: c-opts.c:141
#, fuzzy, c-format
-msgid "no class name specified with \"-%s\""
+msgid "no class name specified with \"%s\""
msgstr "Utdatafilnamn angivet två gånger"
-#: c-opts.c:366
+#: c-opts.c:145
#, fuzzy, c-format
-msgid "missing filename after \"-%s\""
-msgstr "Filnamn saknas efter %s"
+msgid "assertion missing after \"%s\""
+msgstr "Makronamn saknas efter %s"
+
+#: c-opts.c:150
+#, fuzzy, c-format
+msgid "macro name missing after \"%s\""
+msgstr "Makronamn saknas efter %s"
-#: c-opts.c:371
+#: c-opts.c:157
#, fuzzy, c-format
-msgid "missing target after \"-%s\""
+msgid "missing path after \"%s\""
msgstr "Argument saknas efter %s"
-#: c-opts.c:505
-#, c-format
-msgid "options array incorrectly sorted: %s is before %s"
-msgstr ""
+#: c-opts.c:166
+#, fuzzy, c-format
+msgid "missing filename after \"%s\""
+msgstr "Filnamn saknas efter %s"
-#: c-opts.c:550
+#: c-opts.c:171
#, fuzzy, c-format
-msgid "too many filenames given. Type %s --help for usage"
-msgstr "För många filnamn. Skriv %s --help för användningsinformation"
+msgid "missing makefile target after \"%s\""
+msgstr "saknar mellanrum efter nummer \"%.*s\""
-#: c-opts.c:937
-msgid "-Wno-strict-prototypes is not supported in C++"
-msgstr "-Wno-strict-prototypes stödjs inte för C++"
+#: c-opts.c:291
+msgid "-I- specified twice"
+msgstr "-I- angiven två gånger"
-#: c-opts.c:1017
+#: c-opts.c:692
#, fuzzy, c-format
msgid "switch \"%s\" is no longer supported"
msgstr "-f%s stödjs inte längre"
-#: c-opts.c:1033
-#, c-format
-msgid "switch \"%s\" is deprecated, please see documentation for details"
-msgstr ""
-
-#: c-opts.c:1153
-msgid "-fhandle-exceptions has been renamed to -fexceptions (and is now on by default)"
+#: c-opts.c:816
+msgid "-fhandle-exceptions has been renamed -fexceptions (and is now on by default)"
msgstr ""
-#: c-opts.c:1273
+#: c-opts.c:982
#, fuzzy
msgid "output filename specified twice"
msgstr "Utdatafilnamn angivet två gånger"
-#: c-opts.c:1387
+#: c-opts.c:1106
msgid "-Wformat-y2k ignored without -Wformat"
msgstr "-Wformat-y2k ignorerad utan -Wformat"
-#: c-opts.c:1389
+#: c-opts.c:1108
msgid "-Wformat-extra-args ignored without -Wformat"
msgstr "-Wformat-extra-args ignorerad utan -Wformat"
-#: c-opts.c:1391
+#: c-opts.c:1110
#, fuzzy
msgid "-Wformat-zero-length ignored without -Wformat"
msgstr "-Wformat-extra-args ignorerad utan -Wformat"
-#: c-opts.c:1393
+#: c-opts.c:1112
msgid "-Wformat-nonliteral ignored without -Wformat"
msgstr "-Wformat-nonliteral ignorerad utan -Wformat"
-#: c-opts.c:1395
+#: c-opts.c:1114
msgid "-Wformat-security ignored without -Wformat"
msgstr "-Wformat-security ignorerad utan -Wformat"
-#: c-opts.c:1397
+#: c-opts.c:1116
msgid "-Wmissing-format-attribute ignored without -Wformat"
msgstr "-Wmissing-format-attribute ignorerad utan -Wformat"
-#: c-opts.c:1419
+#: c-opts.c:1130
#, fuzzy, c-format
-msgid "opening output file %s"
+msgid "opening output file %s: %m"
msgstr "Kan inte öppna utdatafil \"%s\""
-#: c-opts.c:1474
-#, fuzzy, c-format
-msgid "opening dependency file %s"
-msgstr "dynamiskt beroende.\n"
-
-#: c-opts.c:1484
-#, fuzzy, c-format
-msgid "closing dependency file %s"
-msgstr "Kunde inte öppna källkodsfil %s.\n"
-
-#: c-opts.c:1487
+#: c-opts.c:1135
#, fuzzy, c-format
-msgid "when writing output to %s"
-msgstr "fel vid skrivning till %s"
+msgid "too many filenames given. Type %s --help for usage"
+msgstr "För många filnamn. Skriv %s --help för användningsinformation"
-#: c-opts.c:1567
+#: c-opts.c:1213
#, fuzzy
-msgid "to generate dependencies you must specify either -M or -MM"
-msgstr "du måste dessutom ange antingen -M eller -MM"
+msgid "YYDEBUG not defined"
+msgstr "YYDEBUG är inte definierad."
-#: c-opts.c:1715
+#: c-opts.c:1260
#, c-format
-msgid "\"-%c%s%s\" is valid for %s but not for %s"
+msgid "opening dependency file %s: %m"
msgstr ""
-#. To keep the lines from getting too long for some compilers, limit
-#. to about 500 characters (6 lines) per chunk.
-#: c-opts.c:1726
-msgid ""
-"Switches:\n"
-" -include <file> Include the contents of <file> before other files\n"
-" -imacros <file> Accept definition of macros in <file>\n"
-" -iprefix <path> Specify <path> as a prefix for next two options\n"
-" -iwithprefix <dir> Add <dir> to the end of the system include path\n"
-" -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
-" -isystem <dir> Add <dir> to the start of the system include path\n"
-msgstr ""
-"Flaggor:\n"
-" -include <fil> Inkludera innehållet i <fil> före andra filer\n"
-" -imacros <fil> Använd makrodefinitioner i <fil>\n"
-" -iprefix <sökväg> Sätt <sökväg> som prefix för följande två flaggor\n"
-" -iwithprefix <katalog> Sätt <katalog> i slutet på systemets include-sökväg\n"
-" -iwithprefixbefore <kat> Sätt <kat> i slutet på huvud-include-sökvägen\n"
-" -isystem <katalog> Sätt <katalog> först på systemets include-sökväg\n"
-
-#: c-opts.c:1735
-msgid ""
-" -idirafter <dir> Add <dir> to the end of the system include path\n"
-" -I <dir> Add <dir> to the end of the main include path\n"
-" -I- Fine-grained include path control; see info docs\n"
-" -nostdinc Do not search system include directories\n"
-" (dirs specified with -isystem will still be used)\n"
-" -nostdinc++ Do not search system include directories for C++\n"
-" -o <file> Put output into <file>\n"
-msgstr ""
-" -idirafter <katalog> Sätt <katalog> i slutet på systemets include-sökväg\n"
-" -I <katalog> Sätt <katalog> i slutet på huvud-include-sökvägen\n"
-" -I- Detaljerad include-sökväg kontroll; se info-hjälp\n"
-" -nostdinc Använd inte systemets include-sökväg (kataloger\n"
-" satta med -isystem kommer fortfarande användas)\n"
-" -nostdinc++ Använd inte systemets include-sökväg för C++\n"
-" -o <fil> Skriv utdata till <fil>\n"
-
-#: c-opts.c:1744
-#, fuzzy
-msgid ""
-" -trigraphs Support ISO C trigraphs\n"
-" -std=<std name> Specify the conformance standard; one of:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Inhibit warning messages\n"
-" -W[no-]trigraphs Warn if trigraphs are encountered\n"
-" -W[no-]comment{s} Warn if one comment starts inside another\n"
-msgstr ""
-" -std=<std namn> Ange standard att följa; en av:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999\n"
-" -+ Tillåt användning av C++ finesser\n"
-" -w Stoppa varningsmeddelande\n"
-" -Wtrigraphs Varna om trigrapher påträffas\n"
-" -Wno-trigraphs Varna inte om trigrapher\n"
-" -Wcomment{s} Varna om en kommentar börjar i en annan kommentar\n"
-
-#: c-opts.c:1753
-#, fuzzy
-msgid ""
-" -W[no-]traditional Warn about features not present in traditional C\n"
-" -W[no-]undef Warn if an undefined macro is used by #if\n"
-" -W[no-]import Warn about the use of the #import directive\n"
+#: c-opts.c:1270
+#, c-format
+msgid "closing dependency file %s: %m"
msgstr ""
-" -Wno-comment{s} Varna inte om kommentarer\n"
-" -Wtraditional Varna om finesser som inte finns i traditionell C\n"
-" -Wno-traditional Varna inte om traditionell C\n"
-" -Wundef Varna om ett odefinierat makro används av #if\n"
-" -Wno-undef Varna inte om att testa odefinierade makron\n"
-" -Wimport Varna om användande av direktivet #import\n"
-#: c-opts.c:1758
+#: c-opts.c:1273
+#, fuzzy, c-format
+msgid "when writing output to %s: %m"
+msgstr "fel vid skrivning till %s"
+
+#: c-opts.c:1343
#, fuzzy
-msgid ""
-" -W[no-]error Treat all warnings as errors\n"
-" -W[no-]system-headers Do not suppress warnings from system headers\n"
-" -W[no-]all Enable most preprocessor warnings\n"
-msgstr ""
-" -Wno-import Varna inte om användande av #import\n"
-" -Werror Behandla alla varningar som fel\n"
-" -Wno-error Behandla inte varningar som fel\n"
-" -Wsystem-headers Dölj inte varningar från system-include-filer\n"
-" -Wno-system-headers Dölj varningar från system-include-filer\n"
-" -Wall Aktivera alla preprocessor-varningar\n"
+msgid "to generate dependencies you must specify either -M or -MM"
+msgstr "du måste dessutom ange antingen -M eller -MM"
-#: c-opts.c:1763
+#: c-opts.c:1403
#, fuzzy
-msgid ""
-" -M Generate make dependencies\n"
-" -MM As -M, but ignore system header files\n"
-" -MD Generate make dependencies and compile\n"
-" -MMD As -MD, but ignore system header files\n"
-" -MF <file> Write dependency output to the given file\n"
-" -MG Treat missing header file as generated files\n"
-msgstr ""
-" -M Generera make beroenden\n"
-" -MM Som -M, men ignorera system-include-filer\n"
-" -MF <fil> Skriv beroenden till den givna filen\n"
-" -MG Behandla saknade filer som genererade filer\n"
+msgid "<built-in>"
+msgstr "<inbyggd>"
-# fixme: vad menas med unquoted
-#: c-opts.c:1771
-msgid ""
-" -MP\t\t\t Generate phony targets for all headers\n"
-" -MQ <target> Add a MAKE-quoted target\n"
-" -MT <target> Add an unquoted target\n"
+#: c-opts.c:1418
+msgid "<command line>"
msgstr ""
-" -MP\t\t\t Generera phony-mål för alla include-filer\n"
-" -MQ <mål> Lägg till MAKE-citerat mål\n"
-" -MT <mål> Lägg till ociterat mål\n"
-#: c-opts.c:1776
-#, fuzzy
-msgid ""
-" -D<macro> Define a <macro> with string '1' as its value\n"
-" -D<macro>=<val> Define a <macro> with <val> as its value\n"
-" -A<question>=<answer> Assert the <answer> to <question>\n"
-" -A-<question>=<answer> Disable the <answer> to <question>\n"
-" -U<macro> Undefine <macro> \n"
-" -v Display the version number\n"
-msgstr ""
-" -D<makro> Definiera <makro> med strängen \"1\" som sitt värde\n"
-" -D<makro>=<värde> Definiera <makro> with <värde> som sitt värde\n"
-" -A<fråga> (<svar>) Ange svaret <svar> på frågan <fråga>\n"
-" -A-<fråga> (<svar>) Slå av svaret <svar> på frågan <fråga>\n"
-" -U<makro> Gör <makro> till icke definierat\n"
-" -v Visa versionsnummer\n"
-
-#: c-opts.c:1784
-msgid ""
-" -H Print the name of header files as they are used\n"
-" -C Do not discard comments\n"
-" -dM Display a list of macro definitions active at end\n"
-" -dD Preserve macro definitions in output\n"
-" -dN As -dD except that only the names are preserved\n"
-" -dI Include #include directives in the output\n"
-msgstr ""
-" -H Skriv namnet på include-filer när de används\n"
-" -C Släng inte bort kommentarer\n"
-" -dM Visa en lista med aktiva makron i slutet\n"
-" -dD Bevara mokrodefinitioner i utdata\n"
-" -dN Som -dD men bara namnet bevaras\n"
-" -dI Ta med #include-direktives i utdata\n"
-
-#: c-opts.c:1792
-#, fuzzy
-msgid ""
-" -f[no-]preprocessed Treat the input file as already preprocessed\n"
-" -ftabstop=<number> Distance between tab stops for column reporting\n"
-" -P Do not generate #line directives\n"
-" -remap Remap file names when including files\n"
-" --help Display this information\n"
-msgstr ""
-" -fpreprocessed Tolka infiler som redan preprocessade\n"
-" -ftabstop=<nummer> Avstånd mellan tabbar för kolumutskrifter\n"
-" -P Genererar inte #line-direktiv\n"
-" -$ Tillåt inte '$' i identifierare\n"
-" -remap Mappa om filnamn vid inkludering av filer\n"
-" --version Visa versionsinformation\n"
-" -h or --help Visa denna information\n"
+#: c-opts.c:1502
+msgid "too late for # directive to set debug directory"
+msgstr ""
#. Like YYERROR but do call yyerror.
-#: c-parse.y:55 parse.y:48 objc-parse.y:55
+#: c-parse.y:54 c-parse.c:5381 gengtype-yacc.c:1514 java/parse-scan.c:3063
+#: java/parse.c:6067 objc/objc-parse.y:54 objc/objc-parse.c:6644
msgid "syntax error"
msgstr "syntaxfel"
-#: /usr/share/bison/bison.simple:179
+#: c-parse.c:2118 gengtype-yacc.c:545 java/parse-scan.c:1932 java/parse.c:2875
+#: objc/objc-parse.c:2717
msgid "syntax error: cannot back up"
msgstr "syntaxfel: kan inte backa tillbaka"
-#: c-parse.y:325 objc-parse.y:346
+#: c-parse.y:320 objc/objc-parse.y:344
msgid "ISO C forbids an empty source file"
msgstr "ISO C förbjuder tomma källkodsfiler"
-#: c-parse.y:366 c-typeck.c:6916 objc-parse.y:388
+#: c-parse.y:349 c-typeck.c:6217 objc/objc-parse.y:374
msgid "argument of `asm' is not a constant string"
msgstr "argumentet till \"asm\" är inte en konstant sträng"
-#: c-parse.y:374 objc-parse.y:396
+#: c-parse.y:357 objc/objc-parse.y:382
msgid "ISO C forbids data definition with no type or storage class"
msgstr "ISO C förbjuder datadefinition utan typ eller lagringsklass"
-#: c-parse.y:376 objc-parse.y:398
+#: c-parse.y:359 objc/objc-parse.y:384
msgid "data definition has no type or storage class"
msgstr "datadefinition har ingen typ eller lagringsklass"
-#: c-parse.y:389 objc-parse.y:411
+#: c-parse.y:372 objc/objc-parse.y:397
msgid "ISO C does not allow extra `;' outside of a function"
msgstr "ISO C tillåter inte extra \";\" utanför funktioner"
-#: c-parse.y:449 cppexp.c:1312
+#: c-parse.y:429 cppexp.c:1253
msgid "traditional C rejects the unary plus operator"
msgstr "traditionell C hanterar inte operatorn unärt plus"
-#: c-parse.y:496 objc-parse.y:518
+#: c-parse.y:476 objc/objc-parse.y:501
msgid "`sizeof' applied to a bit-field"
msgstr "\"sizeof\" applicerat på ett bitfält"
-#: c-parse.y:583 objc-parse.y:605
+#: c-parse.y:563 objc/objc-parse.y:588
msgid "ISO C forbids omitting the middle term of a ?: expression"
msgstr "ISO C förbjuder uteslutande av den mittersta termen i ett ?: uttryck"
-#: c-parse.y:632 objc-parse.y:654
+#: c-parse.y:611 objc/objc-parse.y:636
msgid "ISO C89 forbids compound literals"
msgstr ""
-#: c-parse.y:646 objc-parse.y:668
+#: c-parse.y:625 objc/objc-parse.y:650
msgid "ISO C forbids braced-groups within expressions"
msgstr ""
-#: c-parse.y:677 objc-parse.y:699
+#: c-parse.y:653 objc/objc-parse.y:678
msgid "first argument to __builtin_choose_expr not a constant"
msgstr "första argumentet till \"__builtin_choose_expr\" är inte en konstant"
-#: c-parse.y:721 objc-parse.y:767
+#: c-parse.y:696 objc/objc-parse.y:737
#, fuzzy
msgid "traditional C rejects ISO C style function definitions"
msgstr "traditionell C stödjer inte sträng-sammanslagning"
-#: c-parse.y:985 c-parse.y:991 c-parse.y:997 c-parse.y:1003 c-parse.y:1024
-#: c-parse.y:1030 c-parse.y:1036 c-parse.y:1042 c-parse.y:1075 c-parse.y:1081
-#: c-parse.y:1087 c-parse.y:1093 c-parse.y:1138 c-parse.y:1144 c-parse.y:1150
-#: c-parse.y:1156 parse.y:1933 parse.y:1940 parse.y:1975 objc-parse.y:1031
-#: objc-parse.y:1037 objc-parse.y:1043 objc-parse.y:1049 objc-parse.y:1070
-#: objc-parse.y:1076 objc-parse.y:1082 objc-parse.y:1088 objc-parse.y:1121
-#: objc-parse.y:1127 objc-parse.y:1133 objc-parse.y:1139 objc-parse.y:1184
-#: objc-parse.y:1190 objc-parse.y:1196 objc-parse.y:1202
+#: c-parse.y:699 c-parse.y:705 objc/objc-parse.y:740 objc/objc-parse.y:746
+#, fuzzy
+msgid "old-style parameter declaration"
+msgstr "tom deklaration"
+
+#: c-parse.y:967 c-parse.y:973 c-parse.y:979 c-parse.y:985 c-parse.y:1006
+#: c-parse.y:1012 c-parse.y:1018 c-parse.y:1024 c-parse.y:1057 c-parse.y:1063
+#: c-parse.y:1069 c-parse.y:1075 c-parse.y:1120 c-parse.y:1126 c-parse.y:1132
+#: c-parse.y:1138 objc/objc-parse.y:1008 objc/objc-parse.y:1014
+#: objc/objc-parse.y:1020 objc/objc-parse.y:1026 objc/objc-parse.y:1047
+#: objc/objc-parse.y:1053 objc/objc-parse.y:1059 objc/objc-parse.y:1065
+#: objc/objc-parse.y:1098 objc/objc-parse.y:1104 objc/objc-parse.y:1110
+#: objc/objc-parse.y:1116 objc/objc-parse.y:1161 objc/objc-parse.y:1167
+#: objc/objc-parse.y:1173 objc/objc-parse.y:1179
#, c-format
msgid "`%s' is not at beginning of declaration"
msgstr "\"%s\" är inte i början av deklarationen"
-#: c-parse.y:1441 objc-parse.y:1496
+#: c-parse.y:1300 objc/objc-parse.y:1350
+#, fuzzy
+msgid "`typeof' applied to a bit-field"
+msgstr "\"sizeof\" applicerat på ett bitfält"
+
+#: c-parse.y:1427 objc/objc-parse.y:1477
msgid "ISO C forbids empty initializer braces"
msgstr ""
-#: c-parse.y:1455 objc-parse.y:1510
+#: c-parse.y:1441 objc/objc-parse.y:1491
msgid "ISO C89 forbids specifying subobject to initialize"
msgstr "ISO C89 förbjuder specifiering av subobjekt som skall initieras"
-#: c-parse.y:1458 objc-parse.y:1513
+#: c-parse.y:1444 objc/objc-parse.y:1494
msgid "obsolete use of designated initializer without `='"
msgstr "obsolet angivelse av initierare utan \"=\""
-#: c-parse.y:1462 objc-parse.y:1517
+#: c-parse.y:1448 objc/objc-parse.y:1498
msgid "obsolete use of designated initializer with `:'"
msgstr "obsolet användning av initierare med \":\""
-#: c-parse.y:1489 objc-parse.y:1544
+#: c-parse.y:1475 objc/objc-parse.y:1525
msgid "ISO C forbids specifying range of elements to initialize"
msgstr ""
-#: c-parse.y:1497 c-parse.y:1528 objc-parse.y:1552 objc-parse.y:1583
+#: c-parse.y:1483 c-parse.y:1514 objc/objc-parse.y:1533 objc/objc-parse.y:1564
msgid "ISO C forbids nested functions"
msgstr "ISO C förbjuder nästlade funktioner"
-#: c-parse.y:1703 objc-parse.y:1760
+#: c-parse.y:1691 objc/objc-parse.y:1743
msgid "ISO C forbids forward references to `enum' types"
msgstr ""
-#: c-parse.y:1715 parse.y:2411 objc-parse.y:1772
+#: c-parse.y:1703 cp/parser.c:9282 objc/objc-parse.y:1755
msgid "comma at end of enumerator list"
msgstr "komma i slutet av uppräkningslista"
-#: c-parse.y:1723 objc-parse.y:1780
+#: c-parse.y:1723 objc/objc-parse.y:1775
msgid "no semicolon at end of struct or union"
msgstr "inget semikolon vid slutet av struktur eller union"
-#: c-parse.y:1732 objc-parse.y:1789 objc-parse.y:2864
+#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846
msgid "extra semicolon in struct or union specified"
msgstr "extra semikolon i struktur eller union angivet"
-#: c-parse.y:1745 objc-parse.y:1816
+#: c-parse.y:1745 objc/objc-parse.y:1800
msgid "ISO C doesn't support unnamed structs/unions"
msgstr "ISO C stödjer inte ej namnsatta strukturer/unioner"
-#: c-parse.y:1754 objc-parse.y:1825
+#: c-parse.y:1754 objc/objc-parse.y:1809
msgid "ISO C forbids member declarations with no members"
msgstr "ISO C förbjuder medlemsdeklarationer utan medlemmar"
-#: c-parse.y:1913 objc-parse.y:1984
-msgid "deprecated use of label at end of compound statement"
+#: c-parse.y:1915 objc/objc-parse.y:1970
+msgid "label at end of compound statement"
msgstr ""
-#: c-parse.y:1930 objc-parse.y:2001
-msgid "ISO C89 forbids mixed declarations and code"
+#: c-parse.y:1934 objc/objc-parse.y:1989
+#, fuzzy
+msgid "ISO C90 forbids mixed declarations and code"
msgstr "ISO C89 förbjuder blandade deklarationer och kod"
-#: c-parse.y:2005 objc-parse.y:2080
+#: c-parse.y:2012 objc/objc-parse.y:2069
msgid "ISO C forbids label declarations"
msgstr ""
-#: c-parse.y:2055 parse.y:1638 objc-parse.y:2130
+#: c-parse.y:2062 objc/objc-parse.y:2119
msgid "braced-group within expression allowed only inside a function"
msgstr ""
-#: c-parse.y:2182 objc-parse.y:2257
+#: c-parse.y:2184 objc/objc-parse.y:2241
msgid "empty body in an else-statement"
msgstr "tom kropp i else-sats"
-#: c-parse.y:2303 objc-parse.y:2378
+#: c-parse.y:2192 objc/objc-parse.y:2249
+#, fuzzy
+msgid "%Hempty body in an if-statement"
+msgstr "tom kropp i else-sats"
+
+#: c-parse.y:2272 cp/parser.c:6028 objc/objc-parse.y:2329
+msgid "break statement not within loop or switch"
+msgstr "break-sats som inte är i en loop eller switch"
+
+#: c-parse.y:2281 cp/parser.c:6039 objc/objc-parse.y:2338
+msgid "continue statement not within a loop"
+msgstr "continue-sats som inte är i en loop"
+
+#: c-parse.y:2323 objc/objc-parse.y:2380
msgid "ISO C forbids `goto *expr;'"
msgstr "ISO C förbjuder \"goto *expr;\""
-#: c-parse.y:2403 objc-parse.y:2478
-msgid "ISO C forbids forward parameter declarations"
-msgstr ""
-
#. Gcc used to allow this as an extension. However, it does
#. not work for all targets, and thus has been disabled.
#. Also, since func (...) and func () are indistinguishable,
#. it caused problems with the code in expand_builtin which
#. tries to verify that BUILT_IN_NEXT_ARG is being used
#. correctly.
-#: c-parse.y:2429 objc-parse.y:2504
+#: c-parse.y:2440 objc/objc-parse.y:2548
msgid "ISO C requires a named argument before `...'"
msgstr "ISO C kräver ett namnsatt argument före \"...\""
-#: c-parse.y:2526 objc-parse.y:2601
+#: c-parse.y:2538 objc/objc-parse.y:2646
msgid "`...' in old-style identifier list"
msgstr "\"...\" i en gammaldags identifierarlista"
-#: /usr/share/bison/bison.simple:795
+#: c-parse.c:5377 gengtype-yacc.c:1510 java/parse-scan.c:3059
+#: java/parse.c:6063 objc/objc-parse.c:6640
#, fuzzy
-msgid "parse error; also virtual memory exhausted"
+msgid "syntax error; also virtual memory exhausted"
msgstr "parsningsfel; och det virtuella minnet tog slut"
-#: /usr/share/bison/bison.simple:799 cp/spew.c:364
-msgid "parse error"
-msgstr "parsningsfel"
-
-#: /usr/share/bison/bison.simple:924
+#: c-parse.c:5495 gengtype-yacc.c:1628 java/parse-scan.c:3177
+#: java/parse.c:6181 objc/objc-parse.c:6758
msgid "parser stack overflow"
msgstr "parsestack överfull"
-#: c-parse.y:2838 cp/spew.c:1525 objc-parse.y:3537
+#: c-parse.y:2968 objc/objc-parse.y:3663
#, c-format
-msgid "%s at end of input"
-msgstr "%s vid slutet av indatan"
+msgid "syntax error at '%s' token"
+msgstr "syntaxfel vid token \"%s\""
-#: c-parse.y:2844 cp/spew.c:1533 objc-parse.y:3543
-#, c-format
-msgid "%s before %s'%c'"
-msgstr "%s före %s'%c'"
+#: c-pch.c:112
+#, fuzzy, c-format
+msgid "can't create precompiled header %s: %m"
+msgstr "kan inte skapa katalog %s"
+
+#: c-pch.c:132
+#, fuzzy, c-format
+msgid "can't write to %s: %m"
+msgstr "kan inte skriva till %s"
+
+#: c-pch.c:138
+#, fuzzy, c-format
+msgid "`%s' is not a valid output file"
+msgstr "\"%s\" är inte ett giltigt filnamn"
-#: c-parse.y:2846 cp/spew.c:1535 objc-parse.y:3545
+#: c-pch.c:167 c-pch.c:183 c-pch.c:195
+#, fuzzy, c-format
+msgid "can't write %s: %m"
+msgstr "kan inte stänga %s"
+
+#: c-pch.c:173
+#, fuzzy, c-format
+msgid "can't seek in %s: %m"
+msgstr "kan inte öppna %s"
+
+# fixme: spola tillbaka är inte perfekt
+#: c-pch.c:181 c-pch.c:221 c-pch.c:249 c-pch.c:254 c-pch.c:324
+#, fuzzy, c-format
+msgid "can't read %s: %m"
+msgstr "kan inte spola tillbaka %s"
+
+#: c-pch.c:234
#, c-format
-msgid "%s before %s'\\x%x'"
-msgstr "%s före %s'\\x%x'"
+msgid "%s: not compatible with this GCC version"
+msgstr ""
+
+#. It's a PCH for the wrong language.
+#: c-pch.c:237
+#, fuzzy, c-format
+msgid "%s: not for %s"
+msgstr "%s före \"%s\""
+
+#. Not any kind of PCH.
+#: c-pch.c:241
+#, fuzzy, c-format
+msgid "%s: not a PCH file"
+msgstr "%s: är inte en COFF-fil"
-#: c-parse.y:2850 cp/spew.c:1542 objc-parse.y:3549
+#: c-pch.c:260
#, c-format
-msgid "%s before string constant"
-msgstr "%s före strängkonstant"
+msgid "%s: created on host `%.*s', but used on host `%s'"
+msgstr ""
-#: c-parse.y:2852 cp/spew.c:1544 objc-parse.y:3551
+#: c-pch.c:270
#, c-format
-msgid "%s before numeric constant"
-msgstr "%s före numerisk konstant"
+msgid "%s: created for target `%.*s', but used for target `%s'"
+msgstr ""
-#: c-parse.y:2854 objc-parse.y:3553
+#: c-pch.c:283
#, c-format
-msgid "%s before \"%s\""
-msgstr "%s före \"%s\""
+msgid "%s: created by version `%.*s', but this is version `%s'"
+msgstr ""
-#: c-parse.y:2856 objc-parse.y:3555
+#: c-pch.c:299
#, c-format
-msgid "%s before '%s' token"
-msgstr "%s före symbolen '%s'"
+msgid "%s: created with -g%s, but used with -g%s"
+msgstr ""
-#: c-parse.y:2921
-msgid "traditional C rejects string concatenation"
-msgstr "traditionell C stödjer inte sträng-sammanslagning"
+#: c-pch.c:313
+#, c-format
+msgid "%s: had text segment at different address"
+msgstr ""
-#: c-parse.y:3047 objc-parse.y:3779
+#: c-pch.c:330 cpperror.c:176 gcc.c:6547
#, c-format
-msgid "syntax error at '%s' token"
-msgstr "syntaxfel vid token \"%s\""
+msgid "%s: %s"
+msgstr "%s: %s"
-#: c-pragma.c:107
+#: c-pch.c:361
+#, fuzzy
+msgid "calling fdopen"
+msgstr "fdopen"
+
+#: c-pch.c:369 c-pch.c:381
+#, fuzzy
+msgid "reading"
+msgstr "Skapar %s.\n"
+
+#: c-pragma.c:106
msgid "#pragma pack (pop) encountered without matching #pragma pack (push, <n>)"
msgstr "#pragma pack (pop) påträffat utan matchande #pragma pack (push, <n>)"
-#: c-pragma.c:125
+#: c-pragma.c:124
#, c-format
msgid "#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s, <n>)"
msgstr "#pragma pack(pop, %s) påträffat utan matchande #pragma pack(push, %s, <n>)"
-#: c-pragma.c:145
+#: c-pragma.c:144
#, fuzzy
msgid "#pragma pack(push[, id], <n>) is not supported on this target"
msgstr "attributet \"section\" stöds inte för denna målarkitektur"
-#: c-pragma.c:147
+#: c-pragma.c:146
#, fuzzy
msgid "#pragma pack(pop[, id], <n>) is not supported on this target"
msgstr "attributet \"section\" stöds inte för denna målarkitektur"
-#: c-pragma.c:167
+#: c-pragma.c:165
#, fuzzy
msgid "missing '(' after '#pragma pack' - ignored"
msgstr "saknas '(' efter predikat"
-#: c-pragma.c:180 c-pragma.c:230
+#: c-pragma.c:178 c-pragma.c:228
msgid "malformed '#pragma pack' - ignored"
msgstr ""
-#: c-pragma.c:185
+#: c-pragma.c:183
msgid "malformed '#pragma pack(push[, id], <n>)' - ignored"
msgstr ""
-#: c-pragma.c:187
+#: c-pragma.c:185
msgid "malformed '#pragma pack(pop[, id])' - ignored"
msgstr ""
-#: c-pragma.c:196
+#: c-pragma.c:194
#, fuzzy, c-format
msgid "unknown action '%s' for '#pragma pack' - ignored"
msgstr "skräp vid slutet av \"#pragma pack\""
-#: c-pragma.c:233
+#: c-pragma.c:231
msgid "junk at end of '#pragma pack'"
msgstr "skräp vid slutet av \"#pragma pack\""
-#: c-pragma.c:247
+#: c-pragma.c:245
#, c-format
msgid "alignment must be a small power of two, not %d"
msgstr ""
-#: c-pragma.c:280
-#, c-format
-msgid "applying #pragma weak `%s' after first use results in unspecified behavior"
+#: c-pragma.c:278
+msgid "%Japplying #pragma weak '%D' after first use results in unspecified behavior"
msgstr ""
-#: c-pragma.c:328 c-pragma.c:333
+#: c-pragma.c:325 c-pragma.c:330
msgid "malformed #pragma weak, ignored"
msgstr ""
-#: c-pragma.c:337
+#: c-pragma.c:334
msgid "junk at end of #pragma weak"
msgstr "skräp vid slutet av #pragma weak"
-#: c-pragma.c:372 c-pragma.c:377
+#: c-pragma.c:367 c-pragma.c:372
msgid "malformed #pragma redefine_extname, ignored"
msgstr ""
-#: c-pragma.c:382
+#: c-pragma.c:377
#, fuzzy
msgid "junk at end of #pragma redefine_extname"
msgstr "skräp vid slutet av #pragma weak"
-#: c-pragma.c:389 c-pragma.c:470
+#: c-pragma.c:384 c-pragma.c:462
msgid "#pragma redefine_extname conflicts with declaration"
msgstr ""
-#: c-pragma.c:420
+#: c-pragma.c:413
msgid "malformed #pragma extern_prefix, ignored"
msgstr ""
-#: c-pragma.c:425
+#: c-pragma.c:418
#, fuzzy
msgid "junk at end of #pragma extern_prefix"
msgstr "skräp vid slutet av #pragma weak"
-#: c-pragma.c:457
+#: c-pragma.c:449
#, fuzzy
msgid "asm declaration conflicts with previous rename"
msgstr "sektion \"%s\" står i konflikt med tidigare deklaration"
-#: c-semantics.c:565
-msgid "break statement not within loop or switch"
-msgstr "break-sats som inte är i en loop eller switch"
-
-#: c-semantics.c:583
-msgid "continue statement not within a loop"
-msgstr "continue-sats som inte är i en loop"
-
-#: c-semantics.c:678
-msgid "destructor needed for `%#D'"
+#: c-semantics.c:697
+#, fuzzy
+msgid "destructor needed for `%D'"
msgstr "destruerare behövs för \"%#D\""
-#: c-semantics.c:679
+#: c-semantics.c:698
msgid "where case label appears here"
msgstr ""
-#: c-semantics.c:682
+#: c-semantics.c:701
msgid "(enclose actions of previous case statements requiring destructors in their own scope.)"
msgstr ""
-#: c-semantics.c:725 c-typeck.c:6942 cp/semantics.c:897
+#: c-semantics.c:737 c-typeck.c:6239 cp/semantics.c:1070
#, c-format
msgid "%s qualifier ignored on asm"
msgstr ""
-#: c-typeck.c:123
+#: c-semantics.c:991
+#, fuzzy
+msgid "will never be executed"
+msgstr "anrop %d aldrig utfört\n"
+
+#: c-typeck.c:120
#, c-format
msgid "`%s' has an incomplete type"
msgstr "\"%s\" har en inkomplett typ"
-#: c-typeck.c:145 cp/call.c:2865
+#: c-typeck.c:142 cp/call.c:2532
msgid "invalid use of void expression"
msgstr "ogiltig användning av void-uttryck"
-#: c-typeck.c:153
+#: c-typeck.c:150
#, fuzzy
msgid "invalid use of flexible array member"
msgstr "ISO C89 stöder inte flexibla fältmedlemmar"
-#: c-typeck.c:159
+#: c-typeck.c:156
msgid "invalid use of array with unspecified bounds"
msgstr ""
-#: c-typeck.c:167
+#: c-typeck.c:164
#, c-format
msgid "invalid use of undefined type `%s %s'"
msgstr ""
#. If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL.
-#: c-typeck.c:171
+#: c-typeck.c:168
#, c-format
msgid "invalid use of incomplete typedef `%s'"
msgstr ""
-#: c-typeck.c:424 c-typeck.c:438
+#: c-typeck.c:415 c-typeck.c:430
msgid "function types not truly compatible in ISO C"
msgstr "funktionstyper inte riktigt kompatibla i ISO C"
-#: c-typeck.c:603
+#: c-typeck.c:611
msgid "types are not quite compatible"
msgstr "typerna är inte riktigt kompatibla"
-#: c-typeck.c:757 c-typeck.c:2687
+#: c-typeck.c:820
+#, fuzzy
+msgid "function return types not compatible due to `volatile'"
+msgstr "funktionstyper inte riktigt kompatibla i ISO C"
+
+#: c-typeck.c:966 c-typeck.c:2143
msgid "arithmetic on pointer to an incomplete type"
msgstr "aritmetik på pekare till inkomplett typ"
-#: c-typeck.c:1136
+#: c-typeck.c:1339
#, c-format
msgid "%s has no member named `%s'"
msgstr "%s har ingen medlem med namn \"%s\""
-#: c-typeck.c:1172
+#: c-typeck.c:1375
#, c-format
msgid "request for member `%s' in something not a structure or union"
msgstr "begäran av medlem \"%s\" i något som inte är en struktur eller union"
-#: c-typeck.c:1204
+#: c-typeck.c:1404
msgid "dereferencing pointer to incomplete type"
msgstr "derefererar pekare till inkomplett typ"
-#: c-typeck.c:1208
+#: c-typeck.c:1408
msgid "dereferencing `void *' pointer"
msgstr "derefererar \"void *\"-pekare"
-#: c-typeck.c:1225 cp/typeck.c:2369
+#: c-typeck.c:1425 cp/typeck.c:2104
#, c-format
msgid "invalid type argument of `%s'"
msgstr "ogiltigt typargument till \"%s\""
-#: c-typeck.c:1244 cp/typeck.c:2395
+#: c-typeck.c:1443 cp/typeck.c:2129
msgid "subscript missing in array reference"
msgstr ""
-#: c-typeck.c:1265 cp/typeck.c:2437
+#: c-typeck.c:1464 cp/typeck.c:2171
msgid "array subscript has type `char'"
msgstr "fältindex har typen \"char\""
-#: c-typeck.c:1273 c-typeck.c:1362 cp/typeck.c:2444 cp/typeck.c:2523
+#: c-typeck.c:1472 c-typeck.c:1561 cp/typeck.c:2175 cp/typeck.c:2261
msgid "array subscript is not an integer"
msgstr "fältindex är inte ett heltal"
-#: c-typeck.c:1306
+#: c-typeck.c:1505
msgid "ISO C forbids subscripting `register' array"
msgstr ""
-#: c-typeck.c:1308
+#: c-typeck.c:1507
#, fuzzy
msgid "ISO C90 forbids subscripting non-lvalue array"
msgstr "ISO C++ förbjuder tilldelning av fält"
-#: c-typeck.c:1341
+#: c-typeck.c:1540
msgid "subscript has type `char'"
msgstr "index har typen \"char\""
-#: c-typeck.c:1357 cp/typeck.c:2518
+#: c-typeck.c:1556 cp/typeck.c:2256
msgid "subscripted value is neither array nor pointer"
msgstr ""
-#: c-typeck.c:1411
-#, c-format
-msgid "`%s' undeclared here (not in a function)"
-msgstr "\"%s\" odeklarerad här (inte i en funktion)"
-
-#: c-typeck.c:1418
-#, c-format
-msgid "`%s' undeclared (first use in this function)"
-msgstr "\"%s\" odeklarerad (första förekomsten i denna funktionen)"
-
-#: c-typeck.c:1423
-msgid "(Each undeclared identifier is reported only once"
-msgstr "(Varje odeklarerad identifierare rapporteras bara"
-
-#: c-typeck.c:1424
-msgid "for each function it appears in.)"
-msgstr "en gång för varje funktion den finns i.)"
-
-#: c-typeck.c:1441
+#: c-typeck.c:1586
#, c-format
msgid "local declaration of `%s' hides instance variable"
msgstr ""
-#: c-typeck.c:1518
+#: c-typeck.c:1679
msgid "called object is not a function"
msgstr "anropat objekt är inte en funktion"
-#: c-typeck.c:1604 cp/typeck.c:2829
+#. This situation leads to run-time undefined behavior. We can't,
+#. therefore, simply error unless we can prove that all possible
+#. executions of the program must execute the code.
+#: c-typeck.c:1711
+#, fuzzy
+msgid "function called through a non-compatible type"
+msgstr "sizeof applicerat på en inkomplett typ"
+
+#: c-typeck.c:1805 cp/typeck.c:2544
msgid "too many arguments to function"
msgstr "för många argument till funktion"
-#: c-typeck.c:1625
+#: c-typeck.c:1826
#, c-format
msgid "type of formal parameter %d is incomplete"
msgstr ""
-#: c-typeck.c:1638
+#: c-typeck.c:1839
#, c-format
msgid "%s as integer rather than floating due to prototype"
msgstr ""
-#: c-typeck.c:1641
+#: c-typeck.c:1842
#, c-format
msgid "%s as integer rather than complex due to prototype"
msgstr ""
-#: c-typeck.c:1644
+#: c-typeck.c:1845
#, c-format
msgid "%s as complex rather than floating due to prototype"
msgstr ""
-#: c-typeck.c:1647
+#: c-typeck.c:1848
#, c-format
msgid "%s as floating rather than integer due to prototype"
msgstr ""
-#: c-typeck.c:1650
+#: c-typeck.c:1851
#, c-format
msgid "%s as complex rather than integer due to prototype"
msgstr "%s som complex istället för heltal grund av prototyp"
-#: c-typeck.c:1653
+#: c-typeck.c:1854
#, c-format
msgid "%s as floating rather than complex due to prototype"
msgstr ""
-#: c-typeck.c:1663
+#: c-typeck.c:1864
#, c-format
msgid "%s as `float' rather than `double' due to prototype"
msgstr ""
-#: c-typeck.c:1681
+#: c-typeck.c:1882
#, c-format
msgid "%s with different width due to prototype"
msgstr ""
-#: c-typeck.c:1715
+#: c-typeck.c:1908
#, c-format
msgid "%s as unsigned due to prototype"
msgstr "%s som unsigned på grund av prototyp"
-#: c-typeck.c:1717
+#: c-typeck.c:1910
#, c-format
msgid "%s as signed due to prototype"
msgstr "%s som signed på grund av prototyp"
-#: c-typeck.c:1751 cp/typeck.c:2933
+#: c-typeck.c:1944 cp/typeck.c:2650
msgid "too few arguments to function"
msgstr "för få argument till funktion"
-#: c-typeck.c:1793
+#: c-typeck.c:1984
msgid "suggest parentheses around + or - inside shift"
msgstr "föreslår parenteser runt + eller - inuti skift"
-#: c-typeck.c:1800
+#: c-typeck.c:1991
msgid "suggest parentheses around && within ||"
msgstr "föreslår parenteser runt && inuti ||"
-#: c-typeck.c:1809
+#: c-typeck.c:2000
msgid "suggest parentheses around arithmetic in operand of |"
msgstr "föreslår parenteser runt aritmetik inuti operanden till |"
-#: c-typeck.c:1812
+#: c-typeck.c:2003
msgid "suggest parentheses around comparison in operand of |"
msgstr "föreslår parenteser runt jämförelse inuti operanden till |"
-#: c-typeck.c:1821
+#: c-typeck.c:2012
msgid "suggest parentheses around arithmetic in operand of ^"
msgstr "föreslår parenteser runt aritmetik inuti operanden till ^"
-#: c-typeck.c:1824
+#: c-typeck.c:2015
msgid "suggest parentheses around comparison in operand of ^"
msgstr "föreslår parenteser runt jämförelse inuti operanden till ^"
-#: c-typeck.c:1831
+#: c-typeck.c:2022
msgid "suggest parentheses around + or - in operand of &"
msgstr "föreslår parenteser runt + eller - inuti operanden till &"
-#: c-typeck.c:1834
+#: c-typeck.c:2025
msgid "suggest parentheses around comparison in operand of &"
msgstr "föreslår parenteser runt jämförelser inuti operanden till &"
-#: c-typeck.c:1841
+#: c-typeck.c:2032
msgid "comparisons like X<=Y<=Z do not have their mathematical meaning"
msgstr "jämförelser som X<=Y<=Z har inte sin matematiska mening"
-#: c-typeck.c:2001 c-typeck.c:2036
-msgid "division by zero"
-msgstr ""
-
-#: c-typeck.c:2081 cp/typeck.c:3194
-msgid "right shift count is negative"
-msgstr "högershiftoperanden är negativ"
-
-#: c-typeck.c:2088 cp/typeck.c:3200
-msgid "right shift count >= width of type"
-msgstr "högershiftoperanden >= storleken på typen"
-
-#: c-typeck.c:2109 cp/typeck.c:3219
-msgid "left shift count is negative"
-msgstr "vänstershiftoperanden är negativ"
-
-#: c-typeck.c:2112 cp/typeck.c:3221
-msgid "left shift count >= width of type"
-msgstr "vänstershiftoperanden >= storleken på typen"
-
-#: c-typeck.c:2133
-msgid "shift count is negative"
-msgstr "shiftoperanden är negativ"
-
-#: c-typeck.c:2135
-msgid "shift count >= width of type"
-msgstr "shiftoperanden >= storleken på typen"
-
-#: c-typeck.c:2152 cp/typeck.c:3256
-msgid "comparing floating point with == or != is unsafe"
-msgstr "jämföra flyttal med == eller != är osäkert"
-
-#: c-typeck.c:2178 c-typeck.c:2184
-msgid "ISO C forbids comparison of `void *' with function pointer"
-msgstr "ISO C förbjuder jämförelse mellan \"void *\" och funktionspekare"
-
-#: c-typeck.c:2187 c-typeck.c:2227 c-typeck.c:2255
-msgid "comparison of distinct pointer types lacks a cast"
-msgstr ""
-
-#: c-typeck.c:2201 c-typeck.c:2206 c-typeck.c:2275 c-typeck.c:2280
-msgid "comparison between pointer and integer"
-msgstr "jämförelse mellan pekare och heltal"
-
-#: c-typeck.c:2222 c-typeck.c:2250
-msgid "ISO C forbids ordered comparisons of pointers to functions"
-msgstr "ISO C förbjuder ordningsjämförelse på pekare till funktioner"
-
-#: c-typeck.c:2247
-msgid "comparison of complete and incomplete pointers"
-msgstr "jämförelse av kompletta och inkompletta pekare"
-
-#: c-typeck.c:2263 c-typeck.c:2270
-msgid "ordered comparison of pointer with integer zero"
-msgstr ""
-
-#: c-typeck.c:2294 cp/typeck.c:3389
-msgid "unordered comparison on non-floating point argument"
-msgstr ""
-
-#: c-typeck.c:2505
-msgid "comparison between signed and unsigned"
-msgstr "jämföreslse mellan signed och unsigned"
-
-#: c-typeck.c:2551 cp/typeck.c:3633
-msgid "comparison of promoted ~unsigned with constant"
-msgstr ""
-
-#: c-typeck.c:2559 cp/typeck.c:3641
-msgid "comparison of promoted ~unsigned with unsigned"
-msgstr ""
-
-#: c-typeck.c:2639
+#: c-typeck.c:2095
msgid "pointer of type `void *' used in subtraction"
msgstr "pekare av typ \"void *\" använd i subtraktion"
-#: c-typeck.c:2641
+#: c-typeck.c:2097
msgid "pointer to a function used in subtraction"
msgstr "pekare till funktion använd i subtraktion"
-#: c-typeck.c:2738
+#: c-typeck.c:2191
msgid "wrong type argument to unary plus"
msgstr ""
-#: c-typeck.c:2751
+#: c-typeck.c:2204
msgid "wrong type argument to unary minus"
msgstr ""
-#: c-typeck.c:2768
+#: c-typeck.c:2221
msgid "ISO C does not support `~' for complex conjugation"
msgstr "ISO C stödjer inte ~ för komplex konjugering"
-#: c-typeck.c:2774
+#: c-typeck.c:2227
msgid "wrong type argument to bit-complement"
msgstr ""
-#: c-typeck.c:2783
+#: c-typeck.c:2235
msgid "wrong type argument to abs"
msgstr "fel typ på argument till abs"
-#: c-typeck.c:2795
+#: c-typeck.c:2247
msgid "wrong type argument to conjugation"
msgstr ""
-#: c-typeck.c:2809
+#: c-typeck.c:2261
msgid "wrong type argument to unary exclamation mark"
msgstr ""
-#: c-typeck.c:2852
+#: c-typeck.c:2304
msgid "ISO C does not support `++' and `--' on complex types"
msgstr "ISO C stöder inte \"++\" och \"--\" på komplexa typer"
-#: c-typeck.c:2867 c-typeck.c:2899
+#: c-typeck.c:2319 c-typeck.c:2351
#, fuzzy
msgid "wrong type argument to increment"
msgstr "fel typ på argument till %s"
-#: c-typeck.c:2869 c-typeck.c:2901
+#: c-typeck.c:2321 c-typeck.c:2353
#, fuzzy
msgid "wrong type argument to decrement"
msgstr "fel typ på argument till %s"
-#: c-typeck.c:2890
+#: c-typeck.c:2342
msgid "increment of pointer to unknown structure"
msgstr ""
-#: c-typeck.c:2892
+#: c-typeck.c:2344
msgid "decrement of pointer to unknown structure"
msgstr ""
-#: c-typeck.c:3029
-msgid "ISO C forbids the address of a cast expression"
-msgstr ""
-
-#: c-typeck.c:3039
+#: c-typeck.c:2469
msgid "invalid lvalue in unary `&'"
msgstr ""
-#: c-typeck.c:3071
+#: c-typeck.c:2501
#, c-format
msgid "attempt to take address of bit-field structure member `%s'"
msgstr ""
-#: c-typeck.c:3180 c-typeck.c:4651 c-typeck.c:4667 c-typeck.c:4683
-#: final.c:3146 final.c:3148 gcc.c:4381 rtl-error.c:122 toplev.c:1694
-#: config/cris/cris.c:545 cp/spew.c:1538 cp/typeck.c:4367 java/expr.c:364
-#: java/verify.c:1467 java/verify.c:1468 java/verify.c:1483
-#, c-format
-msgid "%s"
-msgstr "%s"
-
-#: c-typeck.c:3241
-msgid "ISO C forbids use of conditional expressions as lvalues"
+#: c-typeck.c:2634
+msgid "use of conditional expressions as lvalues is deprecated"
msgstr ""
-#: c-typeck.c:3244
-msgid "ISO C forbids use of compound expressions as lvalues"
+#: c-typeck.c:2637
+msgid "use of compound expressions as lvalues is deprecated"
msgstr ""
-#: c-typeck.c:3247
-msgid "ISO C forbids use of cast expressions as lvalues"
+#: c-typeck.c:2640
+msgid "use of cast expressions as lvalues is deprecated"
msgstr ""
-#: c-typeck.c:3264
+#: c-typeck.c:2655
#, c-format
msgid "%s of read-only member `%s'"
msgstr ""
-#: c-typeck.c:3268
+#: c-typeck.c:2659
#, c-format
msgid "%s of read-only variable `%s'"
msgstr ""
-#: c-typeck.c:3271
+#: c-typeck.c:2662
#, c-format
msgid "%s of read-only location"
msgstr ""
-#: c-typeck.c:3290
+#: c-typeck.c:2680
#, fuzzy, c-format
msgid "cannot take address of bit-field `%s'"
msgstr "kan inte ta adressen till bitfält \"%s\""
-#: c-typeck.c:3318
+#: c-typeck.c:2708 treelang/treetree.c:946
#, c-format
msgid "global register variable `%s' used in nested function"
msgstr "global registervariabel \"%s\" använd i nästlad funktion"
-#: c-typeck.c:3322
+#: c-typeck.c:2712 treelang/treetree.c:950
#, c-format
msgid "register variable `%s' used in nested function"
msgstr "registervariabel \\\"%s\\\" använd i nästlad funktion"
-#: c-typeck.c:3329
+#: c-typeck.c:2719 treelang/treetree.c:957
#, c-format
msgid "address of global register variable `%s' requested"
msgstr "adress på global registervariabel \"%s\" efterfrågad"
-#: c-typeck.c:3341
+#: c-typeck.c:2731
msgid "cannot put object with volatile field into register"
msgstr ""
-#: c-typeck.c:3345
+#: c-typeck.c:2735 treelang/treetree.c:962
#, c-format
msgid "address of register variable `%s' requested"
msgstr "adress på register variabel \"%s\" efterfrågad"
-#: c-typeck.c:3453
+#: c-typeck.c:2820
msgid "signed and unsigned type in conditional expression"
msgstr "typ signed och unsigned i villkorsuttryck"
-#: c-typeck.c:3460
+#: c-typeck.c:2827
msgid "ISO C forbids conditional expr with only one void side"
msgstr ""
-#: c-typeck.c:3476 c-typeck.c:3483
+#: c-typeck.c:2843 c-typeck.c:2850
msgid "ISO C forbids conditional expr between `void *' and function pointer"
msgstr ""
-#: c-typeck.c:3489
+#: c-typeck.c:2856
msgid "pointer type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:3496 c-typeck.c:3506
+#: c-typeck.c:2863 c-typeck.c:2873
msgid "pointer/integer type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:3520
+#: c-typeck.c:2887
msgid "type mismatch in conditional expression"
msgstr "typfel i villkorsuttryck"
-#: c-typeck.c:3591 cp/typeck.c:4623
+#: c-typeck.c:2947
msgid "left-hand operand of comma expression has no effect"
msgstr ""
-#: c-typeck.c:3635
+#: c-typeck.c:2978
msgid "cast specifies array type"
msgstr ""
-#: c-typeck.c:3641
+#: c-typeck.c:2984
msgid "cast specifies function type"
msgstr ""
-#: c-typeck.c:3651
+#: c-typeck.c:2994
msgid "ISO C forbids casting nonscalar to the same type"
msgstr ""
-#: c-typeck.c:3670
+#: c-typeck.c:3012
msgid "ISO C forbids casts to union type"
msgstr "ISO C förbjuder typkonvertering till unionstyper"
-#: c-typeck.c:3685
+#: c-typeck.c:3020
msgid "cast to union type from type not present in union"
msgstr "typkonvertering till unionstyp från typ som ej finns i unionen"
-#: c-typeck.c:3736
+#: c-typeck.c:3071
#, fuzzy
msgid "cast adds new qualifiers to function type"
msgstr "typkonvertering matchar inte en funktionstyp"
#. There are qualifiers present in IN_OTYPE that are not
#. present in IN_TYPE.
-#: c-typeck.c:3741
+#: c-typeck.c:3076
msgid "cast discards qualifiers from pointer target type"
msgstr ""
-#: c-typeck.c:3756
+#: c-typeck.c:3091
msgid "cast increases required alignment of target type"
msgstr ""
-#: c-typeck.c:3762 cp/typeck.c:5144
+#: c-typeck.c:3097 cp/typeck.c:4889
msgid "cast from pointer to integer of different size"
msgstr "typkonvertering från pekare till heltal av annan storlek"
-#: c-typeck.c:3767
+#: c-typeck.c:3102
msgid "cast does not match function type"
msgstr "typkonvertering matchar inte en funktionstyp"
-#: c-typeck.c:3774 cp/typeck.c:5151
+#: c-typeck.c:3109 cp/typeck.c:4896
msgid "cast to pointer from integer of different size"
msgstr "typkonvertering till pekare från heltal med annan storlek"
-#: c-typeck.c:3786
+#: c-typeck.c:3121
msgid "type-punning to incomplete type might break strict-aliasing rules"
msgstr ""
-#: c-typeck.c:3790
+#: c-typeck.c:3125
msgid "dereferencing type-punned pointer will break strict-aliasing rules"
msgstr ""
+#: c-typeck.c:3136
+#, fuzzy
+msgid "ISO C forbids conversion of function pointer to object pointer type"
+msgstr "ISO C++ förbjuder användning av pekare till medlem i pekararitmetik"
+
+#: c-typeck.c:3145
+#, fuzzy
+msgid "ISO C forbids conversion of object pointer to function pointer type"
+msgstr "ISO C förbjuder jämförelse mellan \"void *\" och funktionspekare"
+
#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
#. Reject anything strange now.
-#: c-typeck.c:3949
+#: c-typeck.c:3303
msgid "invalid lvalue in assignment"
msgstr "ogiltigt lvalue i tilldelning"
#. Convert new value to destination type.
-#: c-typeck.c:3958 c-typeck.c:3983 c-typeck.c:4000 cp/typeck.c:5266
-#: cp/typeck.c:5416
+#. Check this here to avoid odd errors when trying to convert
+#. a throw to the type of the COND_EXPR.
+#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
+#. Reject anything strange now.
+#: c-typeck.c:3312 c-typeck.c:3337 c-typeck.c:3354 cp/typeck.c:5008
+#: cp/typeck.c:5152
msgid "assignment"
msgstr "tilldelning"
-#: c-typeck.c:4070
+#: c-typeck.c:3421
#, fuzzy
msgid "cannot pass rvalue to reference parameter"
msgstr "kan inte deklarera pekare till referenser"
-#: c-typeck.c:4174 c-typeck.c:4241
+#: c-typeck.c:3530 c-typeck.c:3606
#, c-format
msgid "%s makes qualified function pointer from unqualified"
msgstr ""
-#: c-typeck.c:4178 c-typeck.c:4221
+#: c-typeck.c:3534 c-typeck.c:3586
#, c-format
msgid "%s discards qualifiers from pointer target type"
msgstr ""
-#: c-typeck.c:4184
+#: c-typeck.c:3540
msgid "ISO C prohibits argument conversion to union type"
msgstr ""
-#: c-typeck.c:4213
+#: c-typeck.c:3578
#, c-format
msgid "ISO C forbids %s between function pointer and `void *'"
msgstr "ISO C förbjuder %s mellan funktionspekare och \"void *\""
-#: c-typeck.c:4230
+#: c-typeck.c:3595
#, c-format
msgid "pointer targets in %s differ in signedness"
msgstr ""
-#: c-typeck.c:4246
+#: c-typeck.c:3611
#, c-format
msgid "%s from incompatible pointer type"
msgstr ""
-#: c-typeck.c:4252 c-typeck.c:4804 cp/typeck.c:1653
+#: c-typeck.c:3617 c-typeck.c:4124 cp/typeck.c:1366
msgid "invalid use of non-lvalue array"
msgstr ""
# fixme: vad är %s
-#: c-typeck.c:4267
+#: c-typeck.c:3631
#, c-format
msgid "%s makes pointer from integer without a cast"
msgstr "%s skapar pekare från heltal utan typkonvertering"
-#: c-typeck.c:4275
+#: c-typeck.c:3638
#, c-format
msgid "%s makes integer from pointer without a cast"
msgstr ""
-#: c-typeck.c:4289 c-typeck.c:4292
+#: c-typeck.c:3652 c-typeck.c:3655
#, c-format
msgid "incompatible type for argument %d of `%s'"
msgstr ""
-#: c-typeck.c:4296
+#: c-typeck.c:3659
#, c-format
msgid "incompatible type for argument %d of indirect function call"
msgstr ""
-#: c-typeck.c:4300
+#: c-typeck.c:3663
#, c-format
msgid "incompatible types in %s"
msgstr "inkompatibla typer i %s"
#. Function name is known; supply it.
-#: c-typeck.c:4358
+#: c-typeck.c:3719
#, fuzzy, c-format
msgid "passing arg of `%s'"
msgstr "Saknar argument till flaggan \"%s\""
#. Function name unknown (call through ptr).
-#: c-typeck.c:4368
+#: c-typeck.c:3728
#, fuzzy
msgid "passing arg of pointer to function"
msgstr "för många argument till funktion"
#. Function name is known; supply it.
-#: c-typeck.c:4376
+#: c-typeck.c:3736
#, c-format
msgid "passing arg %d of `%s'"
msgstr ""
#. Function name unknown (call through ptr); just give arg number.
-#: c-typeck.c:4386
+#: c-typeck.c:3745
#, c-format
msgid "passing arg %d of pointer to function"
msgstr ""
-#: c-typeck.c:4452
-msgid "initializer for static variable is not constant"
-msgstr "initierare för statisk variabel är inte konstant"
-
-#: c-typeck.c:4458
-msgid "initializer for static variable uses complicated arithmetic"
-msgstr ""
-
-#: c-typeck.c:4466
-msgid "aggregate initializer is not constant"
-msgstr ""
-
-#: c-typeck.c:4468
-msgid "aggregate initializer uses complicated arithmetic"
-msgstr ""
-
-#: c-typeck.c:4475
+#: c-typeck.c:3802
msgid "traditional C rejects automatic aggregate initialization"
msgstr ""
-#: c-typeck.c:4654 c-typeck.c:4670 c-typeck.c:4686
+#: c-typeck.c:3973 c-typeck.c:3988 c-typeck.c:4003
#, c-format
msgid "(near initialization for `%s')"
msgstr ""
-#: c-typeck.c:4737 cp/typeck2.c:488
+#: c-typeck.c:4052 cp/typeck2.c:559
msgid "char-array initialized from wide string"
msgstr ""
-#: c-typeck.c:4744 cp/typeck2.c:495
+#: c-typeck.c:4059 cp/typeck2.c:566
msgid "int-array initialized from non-wide string"
msgstr ""
-#: c-typeck.c:4762 cp/typeck2.c:511
+#: c-typeck.c:4077 cp/typeck2.c:581
msgid "initializer-string for array of chars is too long"
msgstr ""
-#: c-typeck.c:4822
+#: c-typeck.c:4147
msgid "array initialized from non-constant array expression"
msgstr ""
-#: c-typeck.c:4839 c-typeck.c:4841 c-typeck.c:4857 c-typeck.c:4878
-#: c-typeck.c:6281
+#: c-typeck.c:4164 c-typeck.c:4166 c-typeck.c:4182 c-typeck.c:4203
+#: c-typeck.c:5585
msgid "initializer element is not constant"
msgstr ""
-#: c-typeck.c:4873
+#: c-typeck.c:4198
msgid "initialization"
msgstr "initiering"
-#: c-typeck.c:4884 c-typeck.c:6286
+#: c-typeck.c:4209 c-typeck.c:5590
msgid "initializer element is not computable at load time"
msgstr ""
-#: c-typeck.c:4899 cp/typeck2.c:588
+#: c-typeck.c:4224 cp/typeck2.c:658
msgid "invalid initializer"
msgstr ""
-#: c-typeck.c:5393
+#: c-typeck.c:4509 cp/decl.c:4465
+#, fuzzy
+msgid "opaque vector types cannot be initialized"
+msgstr "objekt med variabel storlek kan inte initieras"
+
+#: c-typeck.c:4703
msgid "extra brace group at end of initializer"
msgstr ""
-#: c-typeck.c:5413
+#: c-typeck.c:4723
msgid "missing braces around initializer"
msgstr ""
-#: c-typeck.c:5473
+#: c-typeck.c:4783
msgid "braces around scalar initializer"
msgstr ""
-#: c-typeck.c:5521
+#: c-typeck.c:4830
msgid "initialization of flexible array member in a nested context"
msgstr ""
-#: c-typeck.c:5523
+#: c-typeck.c:4832
msgid "initialization of a flexible array member"
msgstr ""
-#: c-typeck.c:5554
+#: c-typeck.c:4863
msgid "missing initializer"
msgstr ""
-#: c-typeck.c:5580
+#: c-typeck.c:4889
msgid "empty scalar initializer"
msgstr ""
-#: c-typeck.c:5585
+#: c-typeck.c:4894
msgid "extra elements in scalar initializer"
msgstr ""
-#: c-typeck.c:5671
+#: c-typeck.c:4979
msgid "initialization designators may not nest"
msgstr ""
-#: c-typeck.c:5692 c-typeck.c:5763
+#: c-typeck.c:5000 c-typeck.c:5068
msgid "array index in non-array initializer"
msgstr ""
-#: c-typeck.c:5697 c-typeck.c:5817
+#: c-typeck.c:5005 c-typeck.c:5121
msgid "field name not in record or union initializer"
msgstr ""
-#: c-typeck.c:5759 c-typeck.c:5761
+#: c-typeck.c:5064 c-typeck.c:5066
msgid "nonconstant array index in initializer"
msgstr ""
-#: c-typeck.c:5765 c-typeck.c:5768
+#: c-typeck.c:5070 c-typeck.c:5073
msgid "array index in initializer exceeds array bounds"
msgstr ""
-#: c-typeck.c:5779
+#: c-typeck.c:5084
msgid "empty index range in initializer"
msgstr ""
-#: c-typeck.c:5788
+#: c-typeck.c:5093
msgid "array index range in initializer exceeds array bounds"
msgstr ""
-#: c-typeck.c:5829
+#: c-typeck.c:5133
#, c-format
msgid "unknown field `%s' specified in initializer"
msgstr ""
-#: c-typeck.c:5866 c-typeck.c:5887 c-typeck.c:6348
+#: c-typeck.c:5169 c-typeck.c:5190 c-typeck.c:5652
msgid "initialized field with side-effects overwritten"
msgstr ""
-#: c-typeck.c:6558
+#: c-typeck.c:5860
msgid "excess elements in char array initializer"
msgstr ""
-#: c-typeck.c:6565 c-typeck.c:6611
+#: c-typeck.c:5867 c-typeck.c:5913
msgid "excess elements in struct initializer"
msgstr ""
-#: c-typeck.c:6626
+#: c-typeck.c:5928
msgid "non-static initialization of a flexible array member"
msgstr ""
-#: c-typeck.c:6693
+#: c-typeck.c:5995
msgid "excess elements in union initializer"
msgstr ""
-#: c-typeck.c:6714
+#: c-typeck.c:6016
msgid "traditional C rejects initialization of unions"
msgstr ""
-#: c-typeck.c:6777
+#: c-typeck.c:6079
msgid "excess elements in array initializer"
msgstr ""
-#: c-typeck.c:6806
+#: c-typeck.c:6108
msgid "excess elements in vector initializer"
msgstr ""
-#: c-typeck.c:6828
+#: c-typeck.c:6130
msgid "excess elements in scalar initializer"
msgstr ""
-#: c-typeck.c:6935
+#: c-typeck.c:6232
msgid "asm template is not a string constant"
msgstr ""
-#: c-typeck.c:6967
+#: c-typeck.c:6264
msgid "invalid lvalue in asm statement"
msgstr ""
-#: c-typeck.c:7042
+#: c-typeck.c:6336
msgid "modification by `asm'"
msgstr ""
-#: c-typeck.c:7061 cp/typeck.c:6237
+#: c-typeck.c:6354 cp/typeck.c:5926
msgid "function declared `noreturn' has a `return' statement"
msgstr ""
-#: c-typeck.c:7068
+#: c-typeck.c:6361
msgid "`return' with no value, in function returning non-void"
msgstr ""
-#: c-typeck.c:7074
+#: c-typeck.c:6367
msgid "`return' with a value, in function returning void"
msgstr "\"return\" med värde i funktion som returnerar void"
-#: c-typeck.c:7078
+#: c-typeck.c:6371
msgid "return"
msgstr "return"
-#: c-typeck.c:7130
+#: c-typeck.c:6423
msgid "function returns address of local variable"
msgstr "funktionen returnerar adress till en lokal variabel"
-#: c-typeck.c:7186 cp/semantics.c:555
+#: c-typeck.c:6478 cp/semantics.c:749
msgid "switch quantity not an integer"
msgstr "switch-argument är inte ett heltal"
-#: c-typeck.c:7196
+#: c-typeck.c:6488
msgid "`long' switch expression not converted to `int' in ISO C"
msgstr ""
-#: c-typeck.c:7231 cp/decl.c:5523
+#: c-typeck.c:6529 cp/parser.c:5538
msgid "case label not within a switch statement"
msgstr "case-etikett är inte i en switch-sats"
-#: c-typeck.c:7233 cp/decl.c:5528
+#: c-typeck.c:6531
msgid "`default' label not within a switch statement"
msgstr "\"default\"-etikett är inte i en switch-sats"
-#: calls.c:1934 tree-inline.c:1177
-#, c-format
-msgid "inlining failed in call to `%s'"
+#: c-typeck.c:6683 c-typeck.c:6717
+msgid "division by zero"
+msgstr ""
+
+#: c-typeck.c:6762 cp/typeck.c:2928
+msgid "right shift count is negative"
+msgstr "högershiftoperanden är negativ"
+
+#: c-typeck.c:6769 cp/typeck.c:2934
+msgid "right shift count >= width of type"
+msgstr "högershiftoperanden >= storleken på typen"
+
+#: c-typeck.c:6790 cp/typeck.c:2953
+msgid "left shift count is negative"
+msgstr "vänstershiftoperanden är negativ"
+
+#: c-typeck.c:6793 cp/typeck.c:2955
+msgid "left shift count >= width of type"
+msgstr "vänstershiftoperanden >= storleken på typen"
+
+#: c-typeck.c:6814
+msgid "shift count is negative"
+msgstr "shiftoperanden är negativ"
+
+#: c-typeck.c:6816
+msgid "shift count >= width of type"
+msgstr "shiftoperanden >= storleken på typen"
+
+#: c-typeck.c:6833 cp/typeck.c:2990
+msgid "comparing floating point with == or != is unsafe"
+msgstr "jämföra flyttal med == eller != är osäkert"
+
+#: c-typeck.c:6859 c-typeck.c:6865
+msgid "ISO C forbids comparison of `void *' with function pointer"
+msgstr "ISO C förbjuder jämförelse mellan \"void *\" och funktionspekare"
+
+#: c-typeck.c:6868 c-typeck.c:6908 c-typeck.c:6936
+msgid "comparison of distinct pointer types lacks a cast"
+msgstr ""
+
+#: c-typeck.c:6882 c-typeck.c:6887 c-typeck.c:6956 c-typeck.c:6961
+msgid "comparison between pointer and integer"
+msgstr "jämförelse mellan pekare och heltal"
+
+#: c-typeck.c:6903 c-typeck.c:6931
+msgid "ISO C forbids ordered comparisons of pointers to functions"
+msgstr "ISO C förbjuder ordningsjämförelse på pekare till funktioner"
+
+#: c-typeck.c:6928
+msgid "comparison of complete and incomplete pointers"
+msgstr "jämförelse av kompletta och inkompletta pekare"
+
+#: c-typeck.c:6944 c-typeck.c:6951
+msgid "ordered comparison of pointer with integer zero"
+msgstr ""
+
+#: c-typeck.c:6975 cp/typeck.c:3126
+msgid "unordered comparison on non-floating point argument"
+msgstr ""
+
+#: c-typeck.c:7185
+msgid "comparison between signed and unsigned"
+msgstr "jämföreslse mellan signed och unsigned"
+
+#: c-typeck.c:7231 cp/typeck.c:3373
+msgid "comparison of promoted ~unsigned with constant"
+msgstr ""
+
+#: c-typeck.c:7239 cp/typeck.c:3381
+msgid "comparison of promoted ~unsigned with unsigned"
+msgstr ""
+
+#: calls.c:1838
+#, fuzzy
+msgid "%Jinlining failed in call to '%F'"
msgstr "inlining misslyckades i anrop av \"%s\""
-#: calls.c:1935 calls.c:2271 tree-inline.c:1178
+#: calls.c:1839 calls.c:2208 tree-inline.c:1339 tree-inline.c:1346
msgid "called from here"
msgstr "anropad härifrån"
-#: calls.c:2270
-#, c-format
-msgid "can't inline call to `%s'"
+#: calls.c:2207
+#, fuzzy
+msgid "%Jcan't inline call to '%F'"
msgstr "kan inte inline:a anrop till \"%s\""
-#: calls.c:2300
+#: calls.c:2216
+msgid "ignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2229
+msgid "ignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2239
msgid "function call has aggregate value"
msgstr ""
-#: cfgloop.c:1107
+#: cfg.c:835
#, c-format
-msgid "Size of loop %d should be %d, not %d."
+msgid "bb %d on wrong place"
msgstr ""
-#: cfgloop.c:1126
+#: cfg.c:841
#, c-format
-msgid "Bb %d do not belong to loop %d."
+msgid "prev_bb of %d should be %d, not %d"
msgstr ""
-#: cfgloop.c:1144
+#: cfg.c:857
#, c-format
-msgid "Loop %d's header does not have exactly 2 entries."
+msgid "verify_flow_info: Wrong count of block %i %i"
msgstr ""
-#: cfgloop.c:1152
+#: cfg.c:863
#, c-format
-msgid "Loop %d's latch does not have exactly 1 successor."
+msgid "verify_flow_info: Wrong frequency of block %i %i"
msgstr ""
-#: cfgloop.c:1157
+#: cfg.c:871
#, c-format
-msgid "Loop %d's latch does not have header as successor."
+msgid "verify_flow_info: Duplicate edge %i->%i"
msgstr ""
-#: cfgloop.c:1162
+#: cfg.c:877
#, c-format
-msgid "Loop %d's latch does not belong directly to it."
+msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
msgstr ""
-#: cfgloop.c:1168
+#: cfg.c:883
#, c-format
-msgid "Loop %d's header does not belong directly to it."
+msgid "verify_flow_info: Wrong count of edge %i->%i %i"
msgstr ""
-#: cfgrtl.c:1774
+#: cfg.c:895
#, c-format
-msgid "bb %d on wrong place"
+msgid "verify_flow_info: Basic block %d succ edge is corrupted"
msgstr ""
-#: cfgrtl.c:1780
+#: cfg.c:909 cfgrtl.c:1971
#, c-format
-msgid "prev_bb of %d should be %d, not %d"
+msgid "Wrong amount of branch edges after unconditional jump %i"
msgstr ""
-#: cfgrtl.c:1800
+#: cfg.c:917
#, c-format
-msgid "end insn %d for block %d not found in the insn stream"
+msgid "basic block %d pred edge is corrupted"
msgstr ""
-#: cfgrtl.c:1814
+#: cfg.c:943
#, c-format
-msgid "insn %d is in multiple basic blocks (%d and %d)"
+msgid "basic block %i edge lists are corrupted"
+msgstr ""
+
+#: cfg.c:955
+msgid "verify_flow_info failed"
msgstr ""
-#: cfgrtl.c:1826
+#: cfgloop.c:1134
#, c-format
-msgid "head insn %d for block %d not found in the insn stream"
+msgid "Size of loop %d should be %d, not %d."
msgstr ""
-#: cfgrtl.c:1848
+#: cfgloop.c:1153
#, c-format
-msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
+msgid "Bb %d do not belong to loop %d."
msgstr ""
-#: cfgrtl.c:1855
+#: cfgloop.c:1171
#, c-format
-msgid "verify_flow_info: Wrong count of block %i %i"
+msgid "Loop %d's header does not have exactly 2 entries."
msgstr ""
-#: cfgrtl.c:1861
+#: cfgloop.c:1179
#, c-format
-msgid "verify_flow_info: Wrong frequency of block %i %i"
+msgid "Loop %d's latch does not have exactly 1 successor."
msgstr ""
-#: cfgrtl.c:1869
+#: cfgloop.c:1184
#, c-format
-msgid "verify_flow_info: Duplicate edge %i->%i"
+msgid "Loop %d's latch does not have header as successor."
msgstr ""
-#: cfgrtl.c:1875
+#: cfgloop.c:1189
#, c-format
-msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+msgid "Loop %d's latch does not belong directly to it."
msgstr ""
-#: cfgrtl.c:1881
+#: cfgloop.c:1195
#, c-format
-msgid "verify_flow_info: Wrong count of edge %i->%i %i"
+msgid "Loop %d's header does not belong directly to it."
msgstr ""
-#: cfgrtl.c:1911
+#: cfgloop.c:1201
#, c-format
-msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgid "Loop %d's latch is marked as part of irreducible region."
msgstr ""
-#: cfgrtl.c:1926
+#: cfgloop.c:1231
#, c-format
-msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgid "Basic block %d should be marked irreducible."
msgstr ""
-#: cfgrtl.c:1928
-msgid "wrong insn in the fallthru edge"
+#: cfgloop.c:1237
+#, c-format
+msgid "Basic block %d should not be marked irreducible."
msgstr ""
-#: cfgrtl.c:1935
+#: cfgloop.c:1245
#, c-format
-msgid "verify_flow_info: Basic block %d succ edge is corrupted"
+msgid "Edge from %d to %d should be marked irreducible."
msgstr ""
-#: cfgrtl.c:1951
+#: cfgloop.c:1252
#, c-format
-msgid "Missing REG_EH_REGION note in the end of bb %i"
+msgid "Edge from %d to %d should not be marked irreducible."
msgstr ""
-#: cfgrtl.c:1959
+#: cfgrtl.c:1877
#, c-format
-msgid "Too many outgoing branch edges from bb %i"
+msgid "end insn %d for block %d not found in the insn stream"
msgstr ""
-#: cfgrtl.c:1964
+#: cfgrtl.c:1891
#, c-format
-msgid "Fallthru edge after unconditional jump %i"
+msgid "insn %d is in multiple basic blocks (%d and %d)"
msgstr ""
-#: cfgrtl.c:1969
+#: cfgrtl.c:1903
#, c-format
-msgid "Wrong amount of branch edges after unconditional jump %i"
+msgid "head insn %d for block %d not found in the insn stream"
msgstr ""
-#: cfgrtl.c:1975
-#, fuzzy, c-format
-msgid "Wrong amount of branch edges after conditional jump %i"
-msgstr "Föredra hopp framför villkorlig körning"
+#: cfgrtl.c:1925
+msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i"
+msgstr ""
-#: cfgrtl.c:1980
+#: cfgrtl.c:1953
#, c-format
-msgid "Call edges for non-call insn in bb %i"
+msgid "Missing REG_EH_REGION note in the end of bb %i"
msgstr ""
-#: cfgrtl.c:1989
+#: cfgrtl.c:1961
#, c-format
-msgid "Abnormal edges for no purpose in bb %i"
+msgid "Too many outgoing branch edges from bb %i"
msgstr ""
-#: cfgrtl.c:2004
+#: cfgrtl.c:1966
#, c-format
-msgid "missing barrier after block %i"
+msgid "Fallthru edge after unconditional jump %i"
msgstr ""
-#: cfgrtl.c:2014
+#: cfgrtl.c:1977
+#, fuzzy, c-format
+msgid "Wrong amount of branch edges after conditional jump %i"
+msgstr "Föredra hopp framför villkorlig körning"
+
+#: cfgrtl.c:1982
#, c-format
-msgid "basic block %d pred edge is corrupted"
+msgid "Call edges for non-call insn in bb %i"
+msgstr ""
+
+#: cfgrtl.c:1991
+#, c-format
+msgid "Abnormal edges for no purpose in bb %i"
msgstr ""
-#: cfgrtl.c:2031
+#: cfgrtl.c:2001
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is NULL"
msgstr ""
-#: cfgrtl.c:2035
+#: cfgrtl.c:2005
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is %i"
msgstr ""
-#: cfgrtl.c:2049 cfgrtl.c:2059
+#: cfgrtl.c:2019 cfgrtl.c:2029
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
msgstr ""
-#: cfgrtl.c:2072
+#: cfgrtl.c:2042
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
msgstr ""
-#: cfgrtl.c:2084
+#: cfgrtl.c:2052
#, c-format
msgid "in basic block %d:"
msgstr ""
-#: cfgrtl.c:2085
+#: cfgrtl.c:2053
msgid "flow control insn inside a basic block"
msgstr ""
-#: cfgrtl.c:2104
+#: cfgrtl.c:2099
#, c-format
-msgid "basic block %i edge lists are corrupted"
+msgid "missing barrier after block %i"
+msgstr ""
+
+#: cfgrtl.c:2112
+#, c-format
+msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgstr ""
+
+#: cfgrtl.c:2127
+#, c-format
+msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgstr ""
+
+#: cfgrtl.c:2129
+msgid "wrong insn in the fallthru edge"
msgstr ""
-#: cfgrtl.c:2119
-msgid "basic blocks not numbered consecutively"
+#: cfgrtl.c:2146
+msgid "basic blocks not laid down consecutively"
msgstr ""
-#: cfgrtl.c:2144
+#: cfgrtl.c:2171
msgid "insn outside basic block"
msgstr ""
-#: cfgrtl.c:2152
+#: cfgrtl.c:2179
msgid "return not followed by barrier"
msgstr ""
-#: cfgrtl.c:2157
+#: cfgrtl.c:2186
#, c-format
msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr ""
-#: cfgrtl.c:2161
-msgid "verify_flow_info failed"
+#: cgraph.c:161
+#, fuzzy
+msgid "function body not available"
+msgstr "funktion \"%s\" kan inte deklareras som \"mutable\""
+
+#: cgraph.c:163 cgraphunit.c:341
+msgid "redefined extern inline functions are not considered for inlining"
+msgstr ""
+
+#: cgraph.c:166 cgraphunit.c:346
+#, fuzzy
+msgid "function not considered for inlining"
+msgstr "funktion \"%s\" kan inte deklareras som \"mutable\""
+
+#: cgraph.c:168 cgraphunit.c:344
+#, fuzzy
+msgid "function not inlinable"
+msgstr "funktion \"%s\" kan inte deklareras som \"mutable\""
+
+#: cgraph.c:476
+msgid "%D renamed after being referenced in assembly"
+msgstr ""
+
+#: cgraphunit.c:1042
+msgid "--param large-function-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1055
+msgid "--param large-function-growth limit reached while inlining the caller"
+msgstr ""
+
+#: cgraphunit.c:1120
+msgid "--param max-inline-insns-single limit reached"
+msgstr ""
+
+#: cgraphunit.c:1144
+msgid "--param max-inline-insns-single limit reached after inlining into the callee"
msgstr ""
-#: collect2.c:425
+#: cgraphunit.c:1221
+msgid "--param inline-unit-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1293 cgraphunit.c:1437
+msgid "recursive inlining"
+msgstr ""
+
+#: collect2.c:406
msgid "internal error"
msgstr "internt fel"
-#: collect2.c:934
+#: collect2.c:894
msgid "no arguments"
msgstr "inga argument"
-#: collect2.c:1263 collect2.c:1411 collect2.c:1444
+#: collect2.c:1226 collect2.c:1374 collect2.c:1407
#, c-format
msgid "fopen %s"
msgstr "fopen %s"
-#: collect2.c:1266 collect2.c:1416 collect2.c:1447
+#: collect2.c:1229 collect2.c:1379 collect2.c:1410
#, c-format
msgid "fclose %s"
msgstr "fclose %s"
-#: collect2.c:1275
+#: collect2.c:1238
#, c-format
msgid "collect2 version %s"
msgstr ""
-#: collect2.c:1365
+#: collect2.c:1328
#, c-format
msgid "%d constructor(s) found\n"
msgstr "%d konstruerare hittad(e)\n"
-#: collect2.c:1366
+#: collect2.c:1329
#, c-format
msgid "%d destructor(s) found\n"
msgstr "%d destruerare hittad(e)\n"
-#: collect2.c:1367
+#: collect2.c:1330
#, c-format
msgid "%d frame table(s) found\n"
msgstr ""
-#: collect2.c:1508
+#: collect2.c:1470
#, c-format
msgid "%s terminated with signal %d [%s]%s"
msgstr "%s terminerade med signal %d [%s]%s"
-#: collect2.c:1527
+#: collect2.c:1488
#, c-format
msgid "%s returned %d exit status"
msgstr "%s returnerade avslutningsstatus %d"
-#: collect2.c:1555
+#: collect2.c:1513
#, c-format
msgid "[cannot find %s]"
msgstr "[kan inte hitta %s]"
-#: collect2.c:1570
+#: collect2.c:1528
#, c-format
msgid "cannot find `%s'"
msgstr "kan inte hitta \"%s\""
-#: collect2.c:1581 collect2.c:1584
+#: collect2.c:1539 collect2.c:1542
#, c-format
msgid "redirecting stdout: %s"
msgstr "omdirigerar stdout: %s"
-#: collect2.c:1627
+#: collect2.c:1581
#, c-format
msgid "[Leaving %s]\n"
msgstr "[Lämnar %s]\n"
-#: collect2.c:1870
+#: collect2.c:1801
#, c-format
msgid ""
"\n"
"write_c_file - output name is %s, prefix is %s\n"
msgstr ""
-#: collect2.c:2082
+#: collect2.c:2005
msgid "cannot find `nm'"
msgstr "kan inte hitta \"nm\""
-#: collect2.c:2092 collect2.c:2533
+#: collect2.c:2015 collect2.c:2444
msgid "pipe"
msgstr "rör"
-#: collect2.c:2096 collect2.c:2537
+#: collect2.c:2019 collect2.c:2448
msgid "fdopen"
msgstr "fdopen"
-#: collect2.c:2122 collect2.c:2563
+#: collect2.c:2045 collect2.c:2474
#, c-format
msgid "dup2 %d 1"
msgstr "dup2 %d 1"
-#: collect2.c:2125 collect2.c:2128 collect2.c:2141 collect2.c:2566
-#: collect2.c:2569 collect2.c:2582
+#: collect2.c:2048 collect2.c:2051 collect2.c:2064 collect2.c:2477
+#: collect2.c:2480 collect2.c:2493
#, c-format
msgid "close %d"
msgstr "close %d"
-#: collect2.c:2131 collect2.c:2572
+#: collect2.c:2054 collect2.c:2483
#, c-format
msgid "execv %s"
msgstr "execv %s"
-#: collect2.c:2185
+#: collect2.c:2108
#, c-format
msgid "init function found in object %s"
msgstr ""
-#: collect2.c:2193
+#: collect2.c:2116
#, c-format
msgid "fini function found in object %s"
msgstr ""
-#: collect2.c:2216 collect2.c:2621
+#: collect2.c:2139 collect2.c:2532
msgid "fclose"
msgstr "fclose"
-#: collect2.c:2261
+#: collect2.c:2181
#, c-format
msgid "unable to open file '%s'"
msgstr "kan inte öppna fil \"%s\""
-#: collect2.c:2263
+#: collect2.c:2183
#, c-format
msgid "unable to stat file '%s'"
msgstr ""
-#: collect2.c:2269
+#: collect2.c:2189
#, c-format
msgid "unable to mmap file '%s'"
msgstr "kan inte göra mmap på fil \"%s\""
-#: collect2.c:2422
+#: collect2.c:2335
msgid "not found\n"
msgstr "hittades inte\n"
-#: collect2.c:2424 collect2.c:2600
+#: collect2.c:2337 collect2.c:2511
#, c-format
msgid "dynamic dependency %s not found"
msgstr ""
-#: collect2.c:2444
+#: collect2.c:2356
#, c-format
msgid "bad magic number in file '%s'"
msgstr "felaktigt magiskt nummer i fil \"%s\""
-#: collect2.c:2466
+#: collect2.c:2378
msgid "dynamic dependencies.\n"
msgstr "dynamiskt beroende.\n"
-#: collect2.c:2524
+#: collect2.c:2435
msgid "cannot find `ldd'"
msgstr "kan inte hitta \"ldd\""
-#: collect2.c:2585
+#: collect2.c:2496
msgid ""
"\n"
"ldd output with constructors/destructors.\n"
msgstr ""
-#: collect2.c:2612
+#: collect2.c:2523
#, c-format
msgid "unable to open dynamic dependency '%s'"
msgstr ""
-#: collect2.c:2726
+#: collect2.c:2683
#, c-format
msgid "%s: not a COFF file"
msgstr "%s: är inte en COFF-fil"
-#: collect2.c:2845
+#: collect2.c:2802
#, c-format
msgid "%s: cannot open as COFF file"
msgstr "%s: kan inte öppna som COFF-fil"
-#: collect2.c:2901
+#: collect2.c:2857
#, fuzzy, c-format
msgid "library lib%s not found"
msgstr "Hittade inte bibliotek lib%s"
-#: collect2.c:3028
+#: combine.c:13027
#, c-format
-msgid "open %s"
-msgstr "open %s"
-
-#: collect2.c:3051
-msgid "incompatibilities between object file & expected values"
+msgid ""
+";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
+"\n"
msgstr ""
-#: collect2.c:3124
+#: combine.c:13036
#, c-format
msgid ""
"\n"
-"Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
msgstr ""
-"\n"
-"Processar symboltabell #%d, index = 0x%.8lx, sort = %s\n"
-#: collect2.c:3133
-msgid "string section missing"
-msgstr "strängsektionen saknas"
+#: convert.c:70
+msgid "cannot convert to a pointer type"
+msgstr "kan inte konvertera till en pekartyp"
-#: collect2.c:3136
-msgid "section pointer missing"
-msgstr "sektionspekare saknas"
+#: convert.c:267
+msgid "pointer value used where a floating point value was expected"
+msgstr ""
-#: collect2.c:3184
-msgid "no symbol table found"
-msgstr "hittade ingen symboltabell"
+#: convert.c:271
+msgid "aggregate value used where a float was expected"
+msgstr ""
-#: collect2.c:3197
-msgid "no cmd_strings found"
-msgstr "hittar ingen cmd_strings"
+#: convert.c:296
+msgid "conversion to incomplete type"
+msgstr ""
-#: collect2.c:3209
-msgid ""
-"\n"
-"Updating header and load commands.\n"
-"\n"
+#: convert.c:600 convert.c:678
+msgid "can't convert between vector values of different size"
msgstr ""
-#: collect2.c:3216
-#, c-format
-msgid "load command map, %d cmds, new size %ld.\n"
-msgstr "ladda kommandomappning, %d kommandon, ny storlek %ld.\n"
+#: convert.c:606
+msgid "aggregate value used where an integer was expected"
+msgstr ""
-#: collect2.c:3247
-msgid ""
-"writing load commands.\n"
-"\n"
+#: convert.c:657 f/com.c:1101
+msgid "pointer value used where a complex was expected"
msgstr ""
-#: collect2.c:3267
-#, c-format
-msgid "close %s"
+#: convert.c:661 f/com.c:1103
+msgid "aggregate value used where a complex was expected"
msgstr ""
-#: collect2.c:3341
-msgid "could not convert 0x%l.8x into a region"
+#: convert.c:684
+msgid "can't convert value to a vector"
msgstr ""
-#: collect2.c:3345
+#: coverage.c:164
+#, fuzzy, c-format
+msgid "`%s' is not a gcov data file"
+msgstr "\"%s\" är inte ett giltigt filnamn"
+
+#: coverage.c:175
#, c-format
-msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
+msgid "`%s' is version `%.4s', expected version `%.4s'"
msgstr ""
-#: collect2.c:3472
-msgid "bad magic number"
+#: coverage.c:255 coverage.c:263
+#, c-format
+msgid "coverage mismatch for function %u while reading execution counters."
msgstr ""
-#: collect2.c:3473
-msgid "bad header version"
+#: coverage.c:257 coverage.c:340
+#, c-format
+msgid "checksum is %x instead of %x"
msgstr ""
-#: collect2.c:3474
-msgid "bad raw header version"
+#: coverage.c:265 coverage.c:348
+#, c-format
+msgid "number of counters is %d instead of %d"
msgstr ""
-#: collect2.c:3475
-msgid "raw header buffer too small"
-msgstr ""
+#: coverage.c:271
+#, fuzzy, c-format
+msgid "cannot merge separate %s counters for function %u"
+msgstr "kan inte deklarera en statisk funktion i en annan funktion"
-#: collect2.c:3476
-msgid "old raw header file"
-msgstr ""
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' has overflowed"
+msgstr "parsestack överfull"
-#: collect2.c:3477
-msgid "unsupported version"
-msgstr "ej stödd version"
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' is corrupted"
+msgstr "tredje argumentet till \"%s\" är inte länge rekommenderat"
-#: collect2.c:3479
+#: coverage.c:319
#, c-format
-msgid "unknown {de,en}code_mach_o_hdr return value %d"
+msgid "file %s not found, execution counts assumed to be zero"
msgstr ""
-#: collect2.c:3499
-#, c-format
-msgid "fstat %s"
-msgstr "fstat %s"
+#: coverage.c:329
+#, fuzzy, c-format
+msgid "no coverage for function '%s' found."
+msgstr "ogiltig lagringsklass för funktion \"%s\""
-#: collect2.c:3536 collect2.c:3584
+#: coverage.c:337 coverage.c:345
#, c-format
-msgid "lseek %s 0"
-msgstr "lseek %s 0"
+msgid "coverage mismatch for function '%s' while reading counter '%s'."
+msgstr ""
-#: collect2.c:3540
-#, c-format
-msgid "read %s"
-msgstr "read %s"
+#: coverage.c:492
+#, fuzzy, c-format
+msgid "cannot open %s"
+msgstr "kan inte öppna %s"
-#: collect2.c:3543
-#, c-format
-msgid "read %ld bytes, expected %ld, from %s"
-msgstr "läste %ld bytes, förväntade %ld, från %s"
+#: coverage.c:527
+#, fuzzy, c-format
+msgid "error writing `%s'"
+msgstr "fel vid skrivning till %s"
-#: collect2.c:3564
-#, c-format
-msgid "msync %s"
-msgstr "msync %s"
+#. XXX should be DL_SORRY
+#: cppcharset.c:653
+#, fuzzy, c-format
+msgid "conversion from %s to %s not supported by iconv"
+msgstr "konveretering från NaN till unsigned int"
-#: collect2.c:3571
-#, c-format
-msgid "munmap %s"
-msgstr "munmap %s"
+#: cppcharset.c:656
+msgid "iconv_open"
+msgstr ""
-#: collect2.c:3588
+#. XXX should be DL_SORRY
+#: cppcharset.c:664
#, c-format
-msgid "write %s"
-msgstr "write %s"
+msgid "no iconv implementation, cannot convert from %s to %s"
+msgstr ""
+
+#: cppcharset.c:808
+msgid "universal character names are only valid in C++ and C99"
+msgstr ""
-#: collect2.c:3591
+#: cppcharset.c:811
+#, fuzzy, c-format
+msgid "the meaning of '\\%c' is different in traditional C"
+msgstr "semantiken för \"\\%c\" varierar med -traditional"
+
+#: cppcharset.c:837
#, c-format
-msgid "wrote %ld bytes, expected %ld, to %s"
-msgstr "skrev %ld bytes, förväntade %ld, till %s"
+msgid "incomplete universal character name %.*s"
+msgstr ""
+
+#: cppcharset.c:849
+#, fuzzy, c-format
+msgid "%.*s is not a valid universal character"
+msgstr "\"%s\" är inte i början av deklarationen"
-#: combine.c:13222
+#: cppcharset.c:859
#, c-format
-msgid ""
-";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
-"\n"
+msgid "universal character %.*s is not valid in an identifier"
msgstr ""
-#: combine.c:13232
+#: cppcharset.c:863
#, c-format
-msgid ""
-"\n"
-";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
+msgid "universal character %.*s is not valid at the start of an identifier"
msgstr ""
-#: convert.c:69
-msgid "cannot convert to a pointer type"
+#: cppcharset.c:898
+#, fuzzy
+msgid "converting UCN to source character set"
msgstr "kan inte konvertera till en pekartyp"
-#: convert.c:102
-msgid "pointer value used where a floating point value was expected"
-msgstr ""
+#: cppcharset.c:902
+#, fuzzy
+msgid "converting UCN to execution character set"
+msgstr "kan inte konvertera till en pekartyp"
-#: convert.c:106
-msgid "aggregate value used where a float was expected"
-msgstr ""
+#: cppcharset.c:967
+#, fuzzy
+msgid "the meaning of '\\x' is different in traditional C"
+msgstr "semantiken för \"\\x\" varierar med -traditional"
-#: convert.c:132
-msgid "conversion to incomplete type"
+#: cppcharset.c:984 f/lex.c:580
+msgid "\\x used with no following hex digits"
msgstr ""
-#: convert.c:414 convert.c:494
-msgid "can't convert between vector values of different size"
+#: cppcharset.c:991
+msgid "hex escape sequence out of range"
msgstr ""
-#: convert.c:420
-msgid "aggregate value used where an integer was expected"
+#: cppcharset.c:1030
+msgid "octal escape sequence out of range"
msgstr ""
-#: convert.c:472 f/com.c:1100
-msgid "pointer value used where a complex was expected"
-msgstr ""
+#: cppcharset.c:1098
+#, fuzzy
+msgid "the meaning of '\\a' is different in traditional C"
+msgstr "semantiken för \"\\a\" varierar med -traditional"
-#: convert.c:476 f/com.c:1102
-msgid "aggregate value used where a complex was expected"
+#: cppcharset.c:1105
+#, c-format
+msgid "non-ISO-standard escape sequence, '\\%c'"
msgstr ""
-#: convert.c:500
-msgid "can't convert value to a vector"
+#: cppcharset.c:1113
+#, c-format
+msgid "unknown escape sequence '\\%c'"
+msgstr "okänd escape-sekvens \"\\%c\""
+
+#: cppcharset.c:1116
+#, fuzzy, c-format
+msgid "unknown escape sequence: '\\%03o'"
+msgstr "okänd escape-sekvens \"\\%c\""
+
+#: cppcharset.c:1122
+#, fuzzy
+msgid "converting escape sequence to execution character set"
+msgstr "escape-sekvens ryms ej i ett tecken"
+
+#: cppcharset.c:1181
+msgid "converting to execution character set"
msgstr ""
-#: cpperror.c:113
+#: cppcharset.c:1244 cppcharset.c:1307
+#, fuzzy
+msgid "character constant too long for its type"
+msgstr "teckenkonstant för lång"
+
+#: cppcharset.c:1247
+msgid "multi-character character constant"
+msgstr "flerteckens teckenkonstant"
+
+#: cppcharset.c:1339
+msgid "empty character constant"
+msgstr "tom teckenkonstant"
+
+#: cppcharset.c:1378
+#, fuzzy, c-format
+msgid "failure to convert %s to %s"
+msgstr "kunde inte öppna dump-fil \"%s\""
+
+#: cpperror.c:110 diagnostic.def:5
msgid "warning: "
msgstr "varning: "
-#: cpperror.c:115
+#: cpperror.c:112
msgid "internal error: "
msgstr "internt fel: "
-#: cpperror.c:189
+#: cpperror.c:174
#, fuzzy
msgid "stdout"
msgstr "struct"
-#: cpperror.c:191 gcc.c:6428
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
-#: cppexp.c:199
+#: cppexp.c:192
#, fuzzy
msgid "too many decimal points in number"
msgstr "för många decimalpunker i flyttalskonstant"
-#: cppexp.c:219
+#: cppexp.c:212
#, fuzzy, c-format
msgid "invalid digit \"%c\" in octal constant"
msgstr "ogiltigt suffix på heltalskonstant"
-#: cppexp.c:225
+#: cppexp.c:218
#, fuzzy
msgid "use of C99 hexadecimal floating constant"
msgstr "för många decimalpunker i flyttalskonstant"
-#: cppexp.c:234
+#: cppexp.c:227
#, fuzzy
msgid "exponent has no digits"
msgstr "numerisk kostant utan siffror"
-#: cppexp.c:241
+#: cppexp.c:234
msgid "hexadecimal floating constants require an exponent"
msgstr ""
-#: cppexp.c:247
+#: cppexp.c:240
#, fuzzy, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "både suffix 'f' och 'l' på flyttalskonstant"
-#: cppexp.c:257 cppexp.c:282
+#: cppexp.c:250 cppexp.c:275
#, fuzzy, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr "traditionell C stödjer inte suffixet 'f'"
-#: cppexp.c:268
+#: cppexp.c:261
#, fuzzy, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "ogiltigt suffix på heltalskonstant"
-#: cppexp.c:289
+#: cppexp.c:283
#, fuzzy
msgid "use of C99 long long integer constant"
msgstr "ISO C89 förbjuder long long integer konstanter"
-#: cppexp.c:295
+#: cppexp.c:290
msgid "imaginary constants are a GCC extension"
msgstr ""
-#: cppexp.c:383
+#: cppexp.c:376
#, fuzzy
msgid "integer constant is too large for its type"
msgstr "heltalskonstant är större än maximala värdet för sin typ"
-#: cppexp.c:395
+#: cppexp.c:388
msgid "integer constant is so large that it is unsigned"
msgstr ""
-#: cppexp.c:482
+#: cppexp.c:470
msgid "missing ')' after \"defined\""
msgstr "saknar ')' efter \"defined\""
-#: cppexp.c:489
+#: cppexp.c:477
msgid "operator \"defined\" requires an identifier"
msgstr ""
-#: cppexp.c:497
+#: cppexp.c:485
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr ""
-#: cppexp.c:507
+#: cppexp.c:495
msgid "this use of \"defined\" may not be portable"
msgstr ""
-#: cppexp.c:545
+#: cppexp.c:531
#, fuzzy
msgid "floating constant in preprocessor expression"
msgstr "flyttalsspill i uttryck"
-#: cppexp.c:551
+#: cppexp.c:537
#, fuzzy
msgid "imaginary number in preprocessor expression"
msgstr "ogiltig användning av void-uttryck"
-#: cppexp.c:596
-#, c-format
-msgid "ISO C++ does not permit \"%s\" in #if"
-msgstr "ISO C++ tillåter inte \"%s\" i #if"
-
-#: cppexp.c:604
+#: cppexp.c:582
#, c-format
msgid "\"%s\" is not defined"
msgstr "\"%s\" är inte definierad"
-#: cppexp.c:737 cppexp.c:772
+#: cppexp.c:714 cppexp.c:743
#, fuzzy, c-format
msgid "missing binary operator before token \"%s\""
msgstr "saknar mellanrum efter nummer \"%.*s\""
-#: cppexp.c:756
-#, c-format
-msgid "invalid character '%c' in #if"
-msgstr ""
-
-#: cppexp.c:758
-#, c-format
-msgid "invalid character '\\%03o' in #if"
-msgstr ""
-
-#: cppexp.c:763
+#: cppexp.c:734
#, fuzzy, c-format
msgid "token \"%s\" is not valid in preprocessor expressions"
msgstr "\"%s\" är inte ett giltigt filnamn"
-#: cppexp.c:782
+#: cppexp.c:753
msgid "void expression between '(' and ')'"
msgstr ""
-#: cppexp.c:785
+#: cppexp.c:756
#, fuzzy
msgid "#if with no expression"
msgstr "#%s utan argument"
-#: cppexp.c:787
+#: cppexp.c:758
#, c-format
msgid "operator '%s' has no right operand"
msgstr ""
-#: cppexp.c:813
+#: cppexp.c:784
#, fuzzy
msgid " ':' without preceding '?'"
msgstr "syntaxfel vid token \"%s\""
-#: cppexp.c:840
+#: cppexp.c:811
#, fuzzy
msgid "unbalanced stack in #if"
msgstr "obalanserad #endif"
-#: cppexp.c:862
+#: cppexp.c:830
#, fuzzy, c-format
msgid "impossible operator '%u'"
msgstr "saknar mellanrum efter nummer \"%.*s\""
-#: cppexp.c:954
+#: cppexp.c:922
#, fuzzy
msgid "missing ')' in expression"
msgstr "heltalsspill i uttryck"
-#: cppexp.c:975
+#: cppexp.c:943
msgid "'?' without following ':'"
msgstr ""
-#: cppexp.c:985
+#: cppexp.c:953
msgid "integer overflow in preprocessor expression"
msgstr ""
-#: cppexp.c:990
+#: cppexp.c:958
#, fuzzy
msgid "missing '(' in expression"
msgstr "heltalsspill i uttryck"
-#: cppexp.c:1026
+#: cppexp.c:990
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr ""
-#: cppexp.c:1031
+#: cppexp.c:995
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr ""
-#: cppexp.c:1414
+#: cppexp.c:1352
msgid "comma operator in operand of #if"
msgstr ""
-#: cppexp.c:1551
+#: cppexp.c:1483
msgid "division by zero in #if"
msgstr ""
-#: cppfiles.c:411
-#, c-format
-msgid "%s is too large"
-msgstr "%s är för stor"
-
-#: cppfiles.c:447
-#, c-format
-msgid "%s is shorter than expected"
-msgstr "%s är kortare än förväntat"
-
-#: cppfiles.c:461
-#, c-format
-msgid "%s is a block device"
-msgstr "%s är en blockenhet"
+#: cppfiles.c:370
+msgid "NULL directory in find_file"
+msgstr ""
-#: cppfiles.c:594
-#, c-format
-msgid "no include path in which to find %s"
+#: cppfiles.c:397
+msgid "one or more PCH files were found, but they were invalid"
msgstr ""
-#: cppfiles.c:668
-msgid "Multiple include guards may be useful for:\n"
+#: cppfiles.c:400
+msgid "use -Winvalid-pch for more information"
msgstr ""
-#: cppfiles.c:1014
-msgid "absolute file name in remap_filename"
-msgstr "absolut filnamn i remap_filename"
+#: cppfiles.c:458
+#, c-format
+msgid "%s is a block device"
+msgstr "%s är en blockenhet"
-#: cppinit.c:224
+#: cppfiles.c:475
#, c-format
-msgid "ignoring nonexistent directory \"%s\"\n"
-msgstr "ignorerar ej existerande katalog \"%s\"\n"
+msgid "%s is too large"
+msgstr "%s är för stor"
-#: cppinit.c:231
+#: cppfiles.c:510
#, c-format
-msgid "%s: Not a directory"
-msgstr "%s: Inte en katalog"
+msgid "%s is shorter than expected"
+msgstr "%s är kortare än förväntat"
-#: cppinit.c:287
+#: cppfiles.c:696
#, c-format
-msgid "ignoring duplicate directory \"%s\"\n"
+msgid "no include path in which to search for %s"
msgstr ""
-#: cppinit.c:325
-msgid " as it is a non-system directory that duplicates a system directory\n"
+#: cppfiles.c:956
+msgid "Multiple include guards may be useful for:\n"
msgstr ""
-#: cppinit.c:891
+#: cppinit.c:387
#, fuzzy
msgid "cppchar_t must be an unsigned type"
msgstr "predikat måste vara en identifierare"
-#: cppinit.c:895
+#: cppinit.c:391
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr ""
-#: cppinit.c:901
+#: cppinit.c:398
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr ""
-#: cppinit.c:904
+#: cppinit.c:401
msgid "target char is less than 8 bits wide"
msgstr ""
-#: cppinit.c:908
+#: cppinit.c:405
msgid "target wchar_t is narrower than target char"
msgstr ""
-#: cppinit.c:912
+#: cppinit.c:409
msgid "target int is narrower than target char"
msgstr ""
-#: cppinit.c:916
+#: cppinit.c:414
msgid "CPP half-integer narrower than CPP character"
msgstr ""
-#: cppinit.c:920
+#: cppinit.c:418
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
msgstr ""
-#: cppinit.c:972
-msgid "#include \"...\" search starts here:\n"
-msgstr "#include \"...\" sökning startar här:\n"
-
-#: cppinit.c:976
-msgid "#include <...> search starts here:\n"
-msgstr "#include <...> sökning startar här:\n"
-
-#: cppinit.c:979
-msgid "End of search list.\n"
-msgstr "Slut på söklistan.\n"
-
-#: cppinit.c:1057
-#, fuzzy
-msgid "<built-in>"
-msgstr "<inbyggd>"
-
-#: cppinit.c:1059
-msgid "<command line>"
-msgstr ""
-
-#. Irix6 "cc -n32" and OSF4 cc have problems with char foo[] = ("string");
-#. I.e. a const string initializer with parens around it. That is
-#. what N_("string") resolves to, so we make no_* be macros instead.
-#: cppinit.c:1164
-#, fuzzy, c-format
-msgid "assertion missing after %s"
-msgstr "Makronamn saknas efter %s"
-
-#: cppinit.c:1165
-#, fuzzy, c-format
-msgid "directory name missing after %s"
-msgstr "Katalognamn saknas efter %s"
-
-#: cppinit.c:1166
-#, fuzzy, c-format
-msgid "file name missing after %s"
-msgstr "Filnamn saknas efter %s"
-
-#: cppinit.c:1167
-#, fuzzy, c-format
-msgid "macro name missing after %s"
-msgstr "Makronamn saknas efter %s"
-
-#: cppinit.c:1168
-#, fuzzy, c-format
-msgid "path name missing after %s"
-msgstr "Sökväg saknas efter %s"
-
-#: cppinit.c:1353
-msgid "-I- specified twice"
-msgstr "-I- angiven två gånger"
-
-#: cpplex.c:149
-#, c-format
-msgid "trigraph ??%c converted to %c"
-msgstr ""
-
-#: cpplex.c:157
-#, c-format
-msgid "trigraph ??%c ignored"
-msgstr ""
-
-#: cpplex.c:214
-msgid "backslash and newline separated by space"
-msgstr ""
-
-#: cpplex.c:221 cpptrad.c:158
-msgid "backslash-newline at end of file"
-msgstr ""
-
-#: cpplex.c:287 cpptrad.c:199
-msgid "\"/*\" within comment"
-msgstr "\"/*\" i kommentar"
-
-#: cpplex.c:395
+#: cpplex.c:410
msgid "null character(s) ignored"
msgstr ""
-#: cpplex.c:402
-#, c-format
-msgid "%s in preprocessing directive"
-msgstr "%s i preprocessordirektiv"
+#: cpplex.c:445
+msgid "'$' in identifier or number"
+msgstr ""
-#: cpplex.c:475
+#: cpplex.c:492
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr "försök att använda förgiftad \"%s\""
-#: cpplex.c:483
+#: cpplex.c:500
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr ""
-#: cpplex.c:555
-#, fuzzy
-msgid "'$' character(s) in identifier or number"
-msgstr "tecknet '$' i en identifierare"
-
-#: cpplex.c:698
-#, c-format
-msgid "missing terminating %c character"
-msgstr ""
-
-#: cpplex.c:711
+#: cpplex.c:596
msgid "null character(s) preserved in literal"
msgstr ""
-#: cpplex.c:915 cpptrad.c:487
-msgid "no newline at end of file"
-msgstr "inget nyradstecken vid slutet av filen"
-
-#: cpplex.c:1092 cpptrad.c:213
+#: cpplex.c:916
msgid "unterminated comment"
msgstr "ej avslutad kommentar"
-#: cpplex.c:1103
+#: cpplex.c:927
#, fuzzy
msgid "C++ style comments are not allowed in ISO C90"
msgstr "C++ kommentarer tillåts inte av ISO C89"
-#: cpplex.c:1105
+#: cpplex.c:929
msgid "(this will be reported only once per input file)"
msgstr ""
-#: cpplex.c:1110
+#: cpplex.c:934
msgid "multi-line comment"
msgstr ""
-#: cpplex.c:1425
-#, fuzzy, c-format
-msgid "unknown string token %s\n"
-msgstr "okänt registernamn: %s"
-
-#: cpplex.c:1438
+#: cpplex.c:1198
#, fuzzy, c-format
msgid "unspellable token %s"
msgstr "kan inte öppna fil \"%s\""
-#: cpplex.c:1695
-#, fuzzy, c-format
-msgid "the meaning of '\\%c' is different in traditional C"
-msgstr "semantiken för \"\\%c\" varierar med -traditional"
-
-#: cpplex.c:1701
-msgid "incomplete universal-character-name"
-msgstr ""
-
-#: cpplex.c:1715
-#, c-format
-msgid "non-hex digit '%c' in universal-character-name"
-msgstr ""
-
-#: cpplex.c:1723
-msgid "universal-character-name on EBCDIC target"
-msgstr ""
-
-#: cpplex.c:1737
-msgid "universal-character-name out of range"
-msgstr ""
-
-#: cpplex.c:1791
-#, fuzzy
-msgid "the meaning of '\\a' is different in traditional C"
-msgstr "semantiken för \"\\a\" varierar med -traditional"
-
-#: cpplex.c:1798
-#, c-format
-msgid "non-ISO-standard escape sequence, '\\%c'"
-msgstr ""
-
-#: cpplex.c:1809
-#, fuzzy
-msgid "the meaning of '\\x' is different in traditional C"
-msgstr "semantiken för \"\\x\" varierar med -traditional"
-
-#: cpplex.c:1828 f/lex.c:585
-msgid "\\x used with no following hex digits"
-msgstr ""
-
-#: cpplex.c:1833
-msgid "hex escape sequence out of range"
-msgstr ""
-
-#: cpplex.c:1858
-msgid "octal escape sequence out of range"
-msgstr ""
-
-#: cpplex.c:1874
-#, c-format
-msgid "unknown escape sequence '\\%c'"
-msgstr "okänd escape-sekvens \"\\%c\""
-
-#: cpplex.c:1877
-#, fuzzy, c-format
-msgid "unknown escape sequence: '\\%03o'"
-msgstr "okänd escape-sekvens \"\\%c\""
-
-#: cpplex.c:1882
-#, fuzzy
-msgid "escape sequence out of range for its type"
-msgstr "escape-sekvens ryms ej i ett tecken"
-
-#: cpplex.c:1973
-msgid "empty character constant"
-msgstr "tom teckenkonstant"
-
-#: cpplex.c:1983
-#, fuzzy
-msgid "character constant too long for its type"
-msgstr "teckenkonstant för lång"
-
-#: cpplex.c:1986
-msgid "multi-character character constant"
-msgstr "flerteckens teckenkonstant"
-
-#: cpplib.c:225
+#: cpplib.c:218
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr ""
-#: cpplib.c:315
+#: cpplib.c:304
#, c-format
msgid "#%s is a GCC extension"
msgstr "#%s är en GCC-utvidgning"
-#: cpplib.c:327
+#: cpplib.c:316
msgid "suggest not using #elif in traditional C"
msgstr ""
-#: cpplib.c:330
+#: cpplib.c:319
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr "traditionell C ignorerar #%s dör tecknet # är indenterat"
-#: cpplib.c:334
+#: cpplib.c:323
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr ""
-#: cpplib.c:358
+#: cpplib.c:345
msgid "embedding a directive within macro arguments is not portable"
msgstr ""
-#: cpplib.c:378
+#: cpplib.c:365
#, fuzzy
msgid "style of line directive is a GCC extension"
msgstr "#%s är en GCC-utvidgning"
-#: cpplib.c:428
+#: cpplib.c:415
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr ""
-#: cpplib.c:500
+#: cpplib.c:484
msgid "\"defined\" cannot be used as a macro name"
msgstr ""
-#: cpplib.c:506
+#: cpplib.c:490
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr ""
-#: cpplib.c:509
+#: cpplib.c:493
#, c-format
msgid "no macro name given in #%s directive"
msgstr ""
-#: cpplib.c:512
+#: cpplib.c:496
msgid "macro names must be identifiers"
msgstr ""
-#: cpplib.c:552
+#: cpplib.c:537
#, c-format
msgid "undefining \"%s\""
msgstr ""
-#: cpplib.c:598
+#: cpplib.c:609
msgid "missing terminating > character"
msgstr "saknar avslutande tecken >"
-#: cpplib.c:637
+#: cpplib.c:662
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr ""
-#: cpplib.c:648
-#, c-format
-msgid "empty file name in #%s"
-msgstr "tomt filnamn i #%s"
+#: cpplib.c:685
+msgid "#include nested too deeply"
+msgstr "#include nästlad för djupt"
-#: cpplib.c:667
+#: cpplib.c:723
msgid "#include_next in primary source file"
msgstr ""
-#: cpplib.c:674
-msgid "#import is obsolete, use an #ifndef wrapper in the header file"
-msgstr "#import är obsolet, använd #ifndef-omslutning i includefilen"
-
-#: cpplib.c:682
-msgid "#include nested too deeply"
-msgstr "#include nästlad för djupt"
-
-#: cpplib.c:739
+#: cpplib.c:749
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr "ogiltigt flagga \"%s\" i line-direktiv"
-#: cpplib.c:814
+#: cpplib.c:794
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "\"%s\" efter #line är inte ett positivt heltal"
-#: cpplib.c:820
+#: cpplib.c:800
msgid "line number out of range"
msgstr "radnummer utanför möjligt intervall"
-#: cpplib.c:831 cpplib.c:902
+#: cpplib.c:812 cpplib.c:885
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr "\"%s\" är inte ett giltigt filnamn"
-#: cpplib.c:866
+#: cpplib.c:847
#, fuzzy, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "\"%s\" efter #line är inte ett positivt heltal"
-#: cpplib.c:973
+#: cpplib.c:947
#, fuzzy
msgid "invalid #ident directive"
msgstr "ogiltig #indent"
-#: cpplib.c:1061
+#: cpplib.c:1027
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr ""
-#: cpplib.c:1064
+#: cpplib.c:1030
#, fuzzy, c-format
msgid "#pragma %s %s is already registered"
msgstr "Klass \"%s\" finns redan"
-#: cpplib.c:1067
+#: cpplib.c:1033
#, c-format
msgid "#pragma %s is already registered"
msgstr ""
-#: cpplib.c:1143
-msgid "#pragma once is obsolete"
-msgstr "#pragma once är obsolet"
-
-#: cpplib.c:1146
+#: cpplib.c:1178
msgid "#pragma once in main file"
msgstr "#pragma once i huvudfil"
-#: cpplib.c:1170
+#: cpplib.c:1201
msgid "invalid #pragma GCC poison directive"
msgstr "ogiltigt GCC-direktiv #pragma poison"
-#: cpplib.c:1179
+#: cpplib.c:1210
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr "förgiftar existerande makro \"%s\""
-#: cpplib.c:1201
+#: cpplib.c:1231
msgid "#pragma system_header ignored outside include file"
msgstr ""
-#: cpplib.c:1226
-#, c-format
-msgid "cannot find source %s"
+#: cpplib.c:1255
+#, fuzzy, c-format
+msgid "cannot find source file %s"
msgstr "kan inte hitta källfil %s"
-#: cpplib.c:1230
+#: cpplib.c:1259
#, c-format
msgid "current file is older than %s"
msgstr "aktuell fil är äldre än %s"
-#: cpplib.c:1346
+#: cpplib.c:1373
msgid "_Pragma takes a parenthesized string literal"
msgstr ""
-#: cpplib.c:1429
+#: cpplib.c:1451
msgid "#else without #if"
msgstr "#else utan #if"
-#: cpplib.c:1434
+#: cpplib.c:1456
msgid "#else after #else"
msgstr "#else efter #else"
-#: cpplib.c:1436 cpplib.c:1470
-msgid "the conditional began here"
-msgstr "villkorssatsen började här"
-
-#: cpplib.c:1463
+#: cpplib.c:1484
msgid "#elif without #if"
msgstr "#elif utan #if"
-#: cpplib.c:1468
+#: cpplib.c:1489
msgid "#elif after #else"
msgstr "#elif efter #else"
-#: cpplib.c:1499
+#: cpplib.c:1519
msgid "#endif without #if"
msgstr "#endif utan #if"
-#: cpplib.c:1582
+#: cpplib.c:1596
msgid "missing '(' after predicate"
msgstr "saknas '(' efter predikat"
-#: cpplib.c:1597
+#: cpplib.c:1611
msgid "missing ')' to complete answer"
msgstr "saknas ')' för att avsluta svaret"
-#: cpplib.c:1617
+#: cpplib.c:1631
msgid "predicate's answer is empty"
msgstr "predikatets svar är tomt"
-#: cpplib.c:1647
+#: cpplib.c:1658
msgid "assertion without predicate"
msgstr ""
-#: cpplib.c:1649
+#: cpplib.c:1660
msgid "predicate must be an identifier"
msgstr "predikat måste vara en identifierare"
-#: cpplib.c:1738
+#: cpplib.c:1744
#, c-format
msgid "\"%s\" re-asserted"
msgstr ""
-#: cpplib.c:1968
-#, c-format
-msgid "unterminated #%s"
-msgstr ""
-
-#: cppmacro.c:94
-#, fuzzy, c-format
-msgid "macro \"%s\" is not used"
-msgstr "\"%s\" är inte definierad"
-
-#: cppmacro.c:139 cppmacro.c:294
+#: cppmacro.c:125 cppmacro.c:280
#, fuzzy, c-format
msgid "invalid built-in macro \"%s\""
msgstr "förgiftar existerande makro \"%s\""
-#: cppmacro.c:234
+#: cppmacro.c:221
#, fuzzy
msgid "could not determine date and time"
msgstr "Kunde inte öppna datafil %s.\n"
-#: cppmacro.c:407
+#: cppmacro.c:393
msgid "invalid string literal, ignoring final '\\'"
msgstr ""
-#: cppmacro.c:504
+#: cppmacro.c:476
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr ""
-#: cppmacro.c:546
+#: cppmacro.c:514
msgid "ISO C99 requires rest arguments to be used"
msgstr ""
-#: cppmacro.c:551
+#: cppmacro.c:519
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr ""
-#: cppmacro.c:556
+#: cppmacro.c:524
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr ""
-#: cppmacro.c:669 cpptrad.c:774
+#: cppmacro.c:635
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr ""
-#: cppmacro.c:776
+#: cppmacro.c:738
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr ""
-#: cppmacro.c:1314
+#: cppmacro.c:1241
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr ""
-#: cppmacro.c:1351
+#: cppmacro.c:1286
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr ""
-#: cppmacro.c:1359
+#: cppmacro.c:1294
msgid "macro parameters must be comma-separated"
msgstr ""
-#: cppmacro.c:1376
+#: cppmacro.c:1311
msgid "parameter name missing"
msgstr "parameternamn saknas"
-#: cppmacro.c:1391
+#: cppmacro.c:1326
msgid "anonymous variadic macros were introduced in C99"
msgstr ""
-#: cppmacro.c:1395
+#: cppmacro.c:1330
msgid "ISO C does not permit named variadic macros"
msgstr ""
-#: cppmacro.c:1404
+#: cppmacro.c:1339
msgid "missing ')' in macro parameter list"
msgstr ""
-#: cppmacro.c:1472
+#: cppmacro.c:1402
msgid "ISO C requires whitespace after the macro name"
msgstr ""
-#: cppmacro.c:1500
+#: cppmacro.c:1430
msgid "'#' is not followed by a macro parameter"
msgstr ""
-#: cppmacro.c:1519
+#: cppmacro.c:1449
msgid "'##' cannot appear at either end of a macro expansion"
msgstr ""
-#: cppmacro.c:1601
-#, c-format
-msgid "\"%s\" redefined"
-msgstr "\"%s\" omdefinierad"
-
-#: cppmacro.c:1606
-msgid "this is the location of the previous definition"
-msgstr "detta är platsen för den tidigare definitionen"
-
-#: cppmacro.c:1657
+#: cppmacro.c:1588
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr ""
-#: cppmacro.c:1682
+#: cppmacro.c:1611
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr ""
-#: cppspec.c:109
-#, c-format
-msgid "\"%s\" is not a valid option to the preprocessor"
+#: cpppch.c:84 cpppch.c:332 cpppch.c:356 cpppch.c:365
+msgid "while writing precompiled header"
msgstr ""
-#: cppspec.c:133
-msgid "too many input files"
-msgstr "för många indatafiler"
-
-#: cpptrad.c:841
-#, c-format
-msgid "detected recursion whilst expanding macro \"%s\""
-msgstr ""
+#: cpppch.c:463
+#, fuzzy, c-format
+msgid "%s: not used because `%.*s' not defined"
+msgstr "etikett \"%s\" använd men inte definierad"
-#: cse.c:7195
+#: cpppch.c:475
#, c-format
-msgid ";; Processing block from %d to %d, %d sets.\n"
+msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
msgstr ""
-#: diagnostic.c:714
-msgid "((anonymous))"
-msgstr "((anonym))"
+#: cpppch.c:516
+#, fuzzy, c-format
+msgid "%s: not used because `%s' is defined"
+msgstr "\"%s\" är använd men inte definierad"
-#: diagnostic.c:928
-#, c-format
-msgid "%s: warnings being treated as errors\n"
+#: cpppch.c:529 cpppch.c:715
+msgid "while reading precompiled header"
msgstr ""
-#: diagnostic.c:963
+#: cppspec.c:106
#, c-format
-msgid "%s: %s: "
-msgstr "%s: %s: "
+msgid "\"%s\" is not a valid option to the preprocessor"
+msgstr ""
-#: diagnostic.c:1054
-#, c-format
-msgid "%s "
-msgstr "%s "
+#: cppspec.c:128
+msgid "too many input files"
+msgstr "för många indatafiler"
-#: diagnostic.c:1056
+#: cpptrad.c:744
#, c-format
-msgid " %s"
-msgstr " %s"
-
-#: diagnostic.c:1078
-msgid "At top level:"
-msgstr "På toppnivå:"
+msgid "detected recursion whilst expanding macro \"%s\""
+msgstr ""
-#: diagnostic.c:1083
-#, fuzzy, c-format
-msgid "In member function `%s':"
-msgstr "I funktion `%s':"
+#: cpptrad.c:911
+#, fuzzy
+msgid "syntax error in macro parameter list"
+msgstr "parameternamn saknas i parameterlista"
-#: diagnostic.c:1087
+#: cse.c:7040
#, c-format
-msgid "In function `%s':"
-msgstr "I funktion `%s':"
-
-#: diagnostic.c:1175
-msgid "compilation terminated.\n"
-msgstr "kompilering avslutad.\n"
+msgid ";; Processing block from %d to %d, %d sets.\n"
+msgstr ""
-#: diagnostic.c:1193
+#: diagnostic.c:209
#, c-format
msgid "%s:%d: confused by earlier errors, bailing out\n"
msgstr ""
-#: diagnostic.c:1208 diagnostic.c:1316
-#, c-format
-msgid ""
-"Please submit a full bug report,\n"
-"with preprocessed source if appropriate.\n"
-"See %s for instructions.\n"
-msgstr ""
-"Var vänlig och skicka in en komplett felrapport,\n"
-"om möjligt med preprocessad källfil.\n"
-"Se %s för instruktioner.\n"
+#: diagnostic.c:281
+msgid "compilation terminated.\n"
+msgstr "kompilering avslutad.\n"
-#: diagnostic.c:1314
+#: diagnostic.c:572
msgid "Internal compiler error: Error reporting routines re-entered.\n"
msgstr "Internt kompilatorfel: Felhanteringsrutiner återanropade.\n"
-#: diagnostic.c:1376
+#: diagnostic.c:584
#, c-format
msgid "in %s, at %s:%d"
msgstr ""
-#: diagnostic.c:1397
-#, c-format
-msgid "In file included from %s:%d"
-msgstr "I fil includerad från %s:%d"
-
-#: diagnostic.c:1400
-#, c-format
-msgid ""
-",\n"
-" from %s:%d"
-msgstr ""
-",\n"
-" från %s:%d"
-
-#: diagnostic.c:1401
-msgid ":\n"
-msgstr ":\n"
-
-#: diagnostic.c:1445 diagnostic.c:1462
-#, c-format
-msgid "`%s' is deprecated (declared at %s:%d)"
-msgstr ""
-
-#: diagnostic.c:1465
-#, fuzzy, c-format
-msgid "`%s' is deprecated"
-msgstr "tredje argumentet till \"%s\" är inte länge rekommenderat"
-
-#: diagnostic.c:1468
-#, c-format
-msgid "type is deprecated (declared at %s:%d)"
-msgstr ""
-
-#: diagnostic.c:1471
-msgid "type is deprecated"
-msgstr ""
-
-#: dominance.c:728
+#: dominance.c:763
#, c-format
msgid "dominator of %d should be %d, not %d"
msgstr ""
-#: dwarf2out.c:3135
+#: dwarf2out.c:3228
#, fuzzy, c-format
msgid "DW_LOC_OP %s not implemented\n"
msgstr "DW_LOC_OP %s är inte implementerad\n"
-#: dwarfout.c:2066
-#, c-format
-msgid "internal regno botch: `%s' has regno = %d\n"
-msgstr ""
-
-#: dwarfout.c:6181
-msgid "support for the DWARF1 debugging format is deprecated"
-msgstr ""
-
-#: dwarfout.c:6278
-msgid "can't get current directory"
-msgstr ""
-
#: emit-rtl.c:1155
msgid "can't access real part of complex value in hard register"
msgstr ""
-#: emit-rtl.c:1177
+#: emit-rtl.c:1182
msgid "can't access imaginary part of complex value in hard register"
msgstr ""
-#: emit-rtl.c:3402
+#: emit-rtl.c:2263
+#, fuzzy
+msgid "Invalid rtl sharing found in the insn"
+msgstr "ogiltig operand för %V"
+
+#: emit-rtl.c:2265
+msgid "Shared rtx"
+msgstr ""
+
+#: emit-rtl.c:3400
msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
msgstr ""
-#: errors.c:136
+#: errors.c:129
#, c-format
msgid "abort in %s, at %s:%d"
msgstr ""
-#: except.c:369
+#: except.c:357
msgid "exception handling disabled, use -fexceptions to enable"
msgstr ""
-#: except.c:2994
+#: except.c:2942
msgid "argument of `__builtin_eh_return_regno' must be constant"
msgstr "argumentet till \"__builtin_eh_return_regno\" måste vara konstant"
-#: except.c:3137
+#: except.c:3073
msgid "__builtin_eh_return not supported on this target"
msgstr "__builtin_eh_return stöds inte på denna målarkitektur"
-#: explow.c:1408
+#: explow.c:1327
msgid "stack limits not supported on this target"
msgstr ""
-#: expr.c:3355
+#: expr.c:2965
msgid "function using short complex types cannot be inline"
msgstr ""
-#: expr.c:6272 expr.c:6281 expr.c:6290 expr.c:6295 expr.c:6604 expr.c:6620
-msgid "unsupported wide integer operation"
-msgstr ""
-
-#: expr.c:6669
-#, c-format
-msgid "prior parameter's size depends on `%s'"
+#: expr.c:6311
+#, fuzzy
+msgid "%Jprior parameter's size depends on '%D'"
msgstr "föregående parameterns storlek beror på \"%s\""
-#: expr.c:7005
+#: expr.c:6678
msgid "returned value in block_exit_expr"
msgstr ""
#. We can't make a bitwise copy of this object, so fail.
-#: expr.c:9202
+#: expr.c:8823
#, fuzzy
msgid "cannot take the address of an unaligned member"
msgstr "Kan inte ta adressen till \"this\", som är ett rvalue-uttryck"
-#: final.c:1342
+#: final.c:1058
msgid "negative insn length"
msgstr ""
-#: final.c:2793
+#: final.c:2429
msgid "could not split insn"
msgstr ""
-#: final.c:3141
+#: final.c:2771
#, fuzzy
msgid "invalid `asm': "
msgstr "ogiltig \"asm\": %s"
-#: final.c:3328
+#: final.c:2954
msgid "nested assembly dialect alternatives"
msgstr ""
-#: final.c:3345 final.c:3357
+#: final.c:2971 final.c:2983
msgid "unterminated assembly dialect alternative"
msgstr ""
-#: final.c:3401
+#: final.c:3027
#, fuzzy, c-format
msgid "operand number missing after %%-letter"
msgstr "Nummer saknas efter %s"
-#: final.c:3404 final.c:3443
+#: final.c:3030 final.c:3069
msgid "operand number out of range"
msgstr ""
-#: final.c:3462
+#: final.c:3088
#, c-format
msgid "invalid %%-code"
msgstr "ogiltig %%-kod"
-#: final.c:3493
+#: final.c:3118
#, c-format
msgid "`%%l' operand isn't a label"
msgstr ""
#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
-#: final.c:3600 vmsdbgout.c:466 config/i386/i386.c:6314
-#: config/pdp11/pdp11.c:1573
+#. We can't handle floating point constants; PRINT_OPERAND must
+#. handle them.
+#. We can't handle floating point constants;
+#. PRINT_OPERAND must handle them.
+#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6739
+#: config/pdp11/pdp11.c:1646
msgid "floating constant misused"
msgstr ""
-#: final.c:3656 vmsdbgout.c:523 config/i386/i386.c:6392
-#: config/pdp11/pdp11.c:1620
+#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6817
+#: config/pdp11/pdp11.c:1693
msgid "invalid expression as operand"
msgstr ""
-#: flow.c:352
+#: flow.c:329
msgid "function might be possible candidate for attribute `noreturn'"
msgstr "funktionen är en möjlig kandidat för attributet \"noreturn\""
-#: flow.c:357
+#: flow.c:334
msgid "`noreturn' function does return"
msgstr "\"noreturn\"-funktion returnerar ändå"
-#: flow.c:378
+#: flow.c:355
msgid "control reaches end of non-void function"
msgstr "Programflödet når slutet på en icke-void-funktion"
-#: flow.c:1642
+#: flow.c:1582
msgid "Attempt to delete prologue/epilogue insn:"
msgstr ""
-#: fold-const.c:2546 fold-const.c:2559
+#: fold-const.c:2759 fold-const.c:2772
#, fuzzy, c-format
msgid "comparison is always %d due to width of bit-field"
msgstr "jämförelsen är alltid sann på grund av begränsat intervall för datatypen"
-#: fold-const.c:3753 fold-const.c:3770
+#: fold-const.c:3967 fold-const.c:3984
#, c-format
msgid "comparison is always %d"
msgstr "jämförelsen är alltid %d"
-#: fold-const.c:3901
+#: fold-const.c:4115
msgid "`or' of unmatched not-equal tests is always 1"
msgstr ""
-#: fold-const.c:3906
+#: fold-const.c:4120
msgid "`and' of mutually exclusive equal-tests is always 0"
msgstr ""
-#: function.c:884 varasm.c:1503
-#, c-format
-msgid "size of variable `%s' is too large"
+#: fold-const.c:8340
+msgid "fold check: original tree changed by fold"
+msgstr ""
+
+#: function.c:884 varasm.c:1408
+#, fuzzy
+msgid "%Jsize of variable '%D' is too large"
msgstr "storleken på variabel \"%s\" är för stor"
-#: function.c:3772
+#: function.c:3737
msgid "impossible constraint in `asm'"
msgstr ""
-#: function.c:5527
-#, c-format
-msgid "`%s' might be used uninitialized in this function"
+#: function.c:5697
+msgid "%J'%D' might be used uninitialized in this function"
msgstr ""
-#: function.c:5534
-#, c-format
-msgid "variable `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5704
+msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'"
msgstr ""
-#: function.c:5553
-#, c-format
-msgid "argument `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5723
+msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'"
msgstr ""
-#: function.c:6420
+#: function.c:6497
msgid "function returns an aggregate"
msgstr ""
-#: function.c:6925
-#, c-format
-msgid "unused parameter `%s'"
+#: function.c:6980
+#, fuzzy
+msgid "%Junused parameter '%D'"
msgstr "oanvänd parameter \"%s\""
-#: gcc.c:1107
+#: gcc.c:1191
#, fuzzy, c-format
msgid "ambiguous abbreviation %s"
msgstr "Tvetydig förkortning %s"
-#: gcc.c:1134
+#: gcc.c:1218
#, fuzzy, c-format
msgid "incomplete `%s' option"
msgstr "Inkomplett flagga \"%s\""
-#: gcc.c:1145
+#: gcc.c:1229
#, fuzzy, c-format
msgid "missing argument to `%s' option"
msgstr "Saknar argument till flaggan \"%s\""
-#: gcc.c:1158
+#: gcc.c:1242
#, fuzzy, c-format
msgid "extraneous argument to `%s' option"
msgstr "Saknar argument till flaggan \"%s\""
-#: gcc.c:1486
+#: gcc.c:1563
msgid "Using built-in specs.\n"
msgstr ""
-#: gcc.c:1667
+#: gcc.c:1748
#, c-format
msgid ""
"Setting spec %s to '%s'\n"
"\n"
msgstr ""
-#: gcc.c:1774
+#: gcc.c:1850
#, c-format
msgid "Reading specs from %s\n"
msgstr ""
-#: gcc.c:1872 gcc.c:1891
+#: gcc.c:1946 gcc.c:1965
#, c-format
msgid "specs %%include syntax malformed after %ld characters"
msgstr ""
-#: gcc.c:1899
+#: gcc.c:1973
#, fuzzy, c-format
msgid "could not find specs file %s\n"
msgstr "Kunde inte öppna källkodsfil %s.\n"
-#: gcc.c:1916 gcc.c:1924 gcc.c:1933 gcc.c:1942
+#: gcc.c:1990 gcc.c:1998 gcc.c:2007 gcc.c:2016
#, c-format
msgid "specs %%rename syntax malformed after %ld characters"
msgstr ""
-#: gcc.c:1951
+#: gcc.c:2025
#, c-format
msgid "specs %s spec was not found to be renamed"
msgstr ""
-#: gcc.c:1958
+#: gcc.c:2032
#, c-format
msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
msgstr ""
-#: gcc.c:1963
+#: gcc.c:2037
#, c-format
msgid "rename spec %s to %s\n"
msgstr ""
-#: gcc.c:1965
+#: gcc.c:2039
#, c-format
msgid ""
"spec is '%s'\n"
"\n"
msgstr ""
-#: gcc.c:1978
+#: gcc.c:2052
#, c-format
msgid "specs unknown %% command after %ld characters"
msgstr ""
-#: gcc.c:1989 gcc.c:2002
+#: gcc.c:2063 gcc.c:2076
#, c-format
msgid "specs file malformed after %ld characters"
msgstr ""
-#: gcc.c:2056
+#: gcc.c:2129
msgid "spec file has no spec for linking"
msgstr "specfilen har ingen spec för länkning"
-#: gcc.c:2554
+#: gcc.c:2634
msgid "-pipe not supported"
msgstr "-pipe stöds inte"
-#: gcc.c:2609
+#: gcc.c:2696
msgid ""
"\n"
"Go ahead? (y or n) "
@@ -5406,7 +5249,7 @@ msgstr ""
"\n"
"Fortsätta? (y eller n) "
-#: gcc.c:2735
+#: gcc.c:2822
#, c-format
msgid ""
"Internal error: %s (program %s)\n"
@@ -5417,69 +5260,69 @@ msgstr ""
"Var vänlig och skicka in en felrapport.\n"
"Se %s för instruktioner."
-#: gcc.c:2753
+#: gcc.c:2840
#, c-format
msgid "# %s %.2f %.2f\n"
msgstr "# %s %.2f %.2f\n"
-#: gcc.c:2883
+#: gcc.c:2973
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr "Användning: %s [flaggor] fil...\n"
-#: gcc.c:2884
+#: gcc.c:2974
msgid "Options:\n"
msgstr "Flaggor:\n"
-#: gcc.c:2886
+#: gcc.c:2976
msgid " -pass-exit-codes Exit with highest error code from a phase\n"
msgstr " -pass-exit-codes Avsluta med högsta felkoden från någon av faserna\n"
-#: gcc.c:2887
+#: gcc.c:2977
msgid " --help Display this information\n"
msgstr " --help Visa den här informatationen\n"
-#: gcc.c:2888
+#: gcc.c:2978
msgid " --target-help Display target specific command line options\n"
msgstr " --target-help Visa specifika kommandoradsflaggor för mål\n"
-#: gcc.c:2890
+#: gcc.c:2980
msgid " (Use '-v --help' to display command line options of sub-processes)\n"
msgstr " (Använd '-v --help' för att visa kommandoradsflaggor för barnprocesser)\n"
-#: gcc.c:2891
+#: gcc.c:2981
msgid " -dumpspecs Display all of the built in spec strings\n"
msgstr " -dumpspecs Visa de inbyggda spec-strängarna\n"
-#: gcc.c:2892
+#: gcc.c:2982
msgid " -dumpversion Display the version of the compiler\n"
msgstr " -dumpversion Visa kompilatorns version\n"
-#: gcc.c:2893
+#: gcc.c:2983
msgid " -dumpmachine Display the compiler's target processor\n"
msgstr " -dumpmachine Visa kompilatorns målprocessor\n"
-#: gcc.c:2894
+#: gcc.c:2984
msgid " -print-search-dirs Display the directories in the compiler's search path\n"
msgstr " -print-search-dirs Visa katalogerna i kompilatorns sökväg\n"
-#: gcc.c:2895
+#: gcc.c:2985
msgid " -print-libgcc-file-name Display the name of the compiler's companion library\n"
msgstr " -print-libgcc-file-name Visa namnet på kompilatorns medföljande bibliotek\n"
-#: gcc.c:2896
+#: gcc.c:2986
msgid " -print-file-name=<lib> Display the full path to library <lib>\n"
msgstr " -print-file-name=<bib> Visa hela sökvägen till länkbibliotek <bib>\n"
-#: gcc.c:2897
+#: gcc.c:2987
msgid " -print-prog-name=<prog> Display the full path to compiler component <prog>\n"
msgstr " -print-prog-name=<prog> Visa fulla sökvägen till kompilatorkomponenten <prog>\n"
-#: gcc.c:2898
+#: gcc.c:2988
msgid " -print-multi-directory Display the root directory for versions of libgcc\n"
msgstr " -print-multi-directory Visa rotkatalogen för olika versioner av libgcc\n"
-#: gcc.c:2899
+#: gcc.c:2989
msgid ""
" -print-multi-lib Display the mapping between command line options and\n"
" multiple library search directories\n"
@@ -5487,87 +5330,97 @@ msgstr ""
" -print-multi-lib Visa mappningen mellan kommandoradsflaggor och\n"
" multipla biblioteks sökkataloger\n"
-#: gcc.c:2902
+#: gcc.c:2992
#, fuzzy
msgid " -print-multi-os-directory Display the relative path to OS libraries\n"
msgstr " -print-multi-directory Visa rotkatalogen för olika versioner av libgcc\n"
-#: gcc.c:2903
+#: gcc.c:2993
msgid " -Wa,<options> Pass comma-separated <options> on to the assembler\n"
msgstr " -Wa,<flaggor> Skicka kommaseparerade <flaggor> till assembleraren\n"
-#: gcc.c:2904
+#: gcc.c:2994
msgid " -Wp,<options> Pass comma-separated <options> on to the preprocessor\n"
msgstr " -Wp,<flaggor> Skicka kommaseparerade <flaggor> till preprocessorn\n"
-#: gcc.c:2905
+#: gcc.c:2995
msgid " -Wl,<options> Pass comma-separated <options> on to the linker\n"
msgstr " -Wl,<flaggor> Skicka kommaseparerade <flaggor> till länkaren\n"
-#: gcc.c:2906
+#: gcc.c:2996
+#, fuzzy
+msgid " -Xassembler <arg> Pass <arg> on to the assembler\n"
+msgstr " -Xlinker <arg> Skicka <arg> vidare till länkaren\n"
+
+#: gcc.c:2997
+#, fuzzy
+msgid " -Xpreprocessor <arg> Pass <arg> on to the preprocessor\n"
+msgstr " -Xlinker <arg> Skicka <arg> vidare till länkaren\n"
+
+#: gcc.c:2998
msgid " -Xlinker <arg> Pass <arg> on to the linker\n"
msgstr " -Xlinker <arg> Skicka <arg> vidare till länkaren\n"
-#: gcc.c:2907
+#: gcc.c:2999
msgid " -save-temps Do not delete intermediate files\n"
msgstr " -save-temps Radera inte temporära filer\n"
-#: gcc.c:2908
+#: gcc.c:3000
msgid " -pipe Use pipes rather than intermediate files\n"
msgstr " -pipe Använd rör istället för temporära filer\n"
-#: gcc.c:2909
+#: gcc.c:3001
msgid " -time Time the execution of each subprocess\n"
msgstr " -time Mät tiden det tar att exekvera varje barnprocess\n"
-#: gcc.c:2910
+#: gcc.c:3002
#, fuzzy
msgid " -specs=<file> Override built-in specs with the contents of <file>\n"
msgstr " -specs=<fil> Använd innehållet i <fil> istället för inbyggda spec\n"
-#: gcc.c:2911
+#: gcc.c:3003
msgid " -std=<standard> Assume that the input sources are for <standard>\n"
msgstr " -std=<standard> Antag att källkodsfilerna är för <standard>\n"
-#: gcc.c:2912
+#: gcc.c:3004
msgid " -B <directory> Add <directory> to the compiler's search paths\n"
msgstr " -B <katalog> Lägg till <katalog> till kompilatorns sökvägar\n"
-#: gcc.c:2913
+#: gcc.c:3005
msgid " -b <machine> Run gcc for target <machine>, if installed\n"
msgstr " -b <maskin> Kör gcc för mål <maskin>, om det är installerat\n"
-#: gcc.c:2914
+#: gcc.c:3006
msgid " -V <version> Run gcc version number <version>, if installed\n"
msgstr " -V <version> Kör gcc version <version>, om den är installerad\n"
-#: gcc.c:2915
+#: gcc.c:3007
msgid " -v Display the programs invoked by the compiler\n"
msgstr " -v Visa vilka program som körs av kompilatorn\n"
-#: gcc.c:2916
+#: gcc.c:3008
msgid " -### Like -v but options quoted and commands not executed\n"
msgstr ""
-#: gcc.c:2917
+#: gcc.c:3009
msgid " -E Preprocess only; do not compile, assemble or link\n"
msgstr ""
" -E Preprocessa bara; kompilera, assemblera och\n"
" länka inte\n"
-#: gcc.c:2918
+#: gcc.c:3010
msgid " -S Compile only; do not assemble or link\n"
msgstr " -S Kompilera bara; assemblera och länka inte\n"
-#: gcc.c:2919
+#: gcc.c:3011
msgid " -c Compile and assemble, but do not link\n"
msgstr " -c Kompilera och assemblera, men länka inte\n"
-#: gcc.c:2920
+#: gcc.c:3012
msgid " -o <file> Place the output into <file>\n"
msgstr " -o <fil> Placera utdata i <fil>\n"
-#: gcc.c:2921
+#: gcc.c:3013
#, fuzzy
msgid ""
" -x <language> Specify the language of the following input files\n"
@@ -5580,7 +5433,7 @@ msgstr ""
" 'none' innebär att man använder standardmetoden,\n"
" att man gissar språk beroende på filändelse\n"
-#: gcc.c:2928
+#: gcc.c:3020
#, c-format
msgid ""
"\n"
@@ -5593,92 +5446,94 @@ msgstr ""
"vidare till de barnprocesser som startas av %s. För att skicka med andra\n"
"flaggor till dessa processer måste flaggan -W<bokstav> användas.\n"
-#: gcc.c:3063
+#: gcc.c:3141
#, fuzzy, c-format
msgid "`-%c' option must have argument"
msgstr "\"%s\" tar bara noll eller två argument"
-#: gcc.c:3085
+#: gcc.c:3163
#, c-format
msgid "couldn't run `%s': %s"
msgstr ""
#. translate_options () has turned --version into -fversion.
-#: gcc.c:3262
+#: gcc.c:3349
#, c-format
msgid "%s (GCC) %s\n"
msgstr ""
-#: gcc.c:3263
-msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
-msgstr ""
-
-#: gcc.c:3265 gcov.c:364
+#: gcc.c:3352
msgid ""
"This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
"\n"
msgstr ""
-#: gcc.c:3366
+#: gcc.c:3453
msgid "argument to `-Xlinker' is missing"
msgstr "argument till \"-Xlinker\" saknas"
-#: gcc.c:3374
+#: gcc.c:3461
+#, fuzzy
+msgid "argument to `-Xpreprocessor' is missing"
+msgstr "argument till \"-specs\" saknas"
+
+#: gcc.c:3468
+#, fuzzy
+msgid "argument to `-Xassembler' is missing"
+msgstr "argument till \"-Xlinker\" saknas"
+
+#: gcc.c:3475
#, fuzzy
msgid "argument to `-l' is missing"
msgstr "argument till \"-x\" saknas"
-#: gcc.c:3391
+#: gcc.c:3491
msgid "argument to `-specs' is missing"
msgstr "argument till \"-specs\" saknas"
-#: gcc.c:3406
+#: gcc.c:3505
msgid "argument to `-specs=' is missing"
msgstr "argument till \"-specs=\" saknas"
-#: gcc.c:3436
+#: gcc.c:3542
#, c-format
msgid "`-%c' must come at the start of the command line"
msgstr ""
-#: gcc.c:3445
+#: gcc.c:3551
msgid "argument to `-B' is missing"
msgstr "argument till \"-B\" saknas"
-#: gcc.c:3618
-msgid "cannot specify -o with -c or -S and multiple compilations"
-msgstr ""
-
-#: gcc.c:3791
+#: gcc.c:3728
#, fuzzy
msgid "warning: -pipe ignored because -save-temps specified"
msgstr "Varning: -pipe ignorerad eftersom -save-temps angiven"
-#: gcc.c:3795
+#: gcc.c:3732
#, fuzzy
msgid "warning: -pipe ignored because -time specified"
msgstr "Varning: -pipe ignorerad eftersom -time angiven"
-#: gcc.c:3807
+#: gcc.c:3944
msgid "argument to `-x' is missing"
msgstr "argument till \"-x\" saknas"
-#: gcc.c:3835
+#: gcc.c:3972
#, c-format
msgid "argument to `-%s' is missing"
msgstr "argument till \"-%s\" saknas"
-#: gcc.c:3896
+#: gcc.c:4033
#, c-format
msgid "warning: `-x %s' after last input file has no effect"
msgstr ""
-#: gcc.c:4241
+#: gcc.c:4434
msgid "invalid specification! Bug in cc"
msgstr ""
-#: gcc.c:4395
+#: gcc.c:4588
#, c-format
msgid "%s\n"
msgstr "%s\n"
@@ -5686,75 +5541,80 @@ msgstr "%s\n"
#. Catch the case where a spec string contains something like
#. '%{foo:%*}'. ie there is no * in the pattern on the left
#. hand side of the :.
-#: gcc.c:4955
+#: gcc.c:5092
#, c-format
msgid "spec failure: '%%*' has not been initialized by pattern match"
msgstr ""
-#: gcc.c:4964
+#: gcc.c:5101
#, c-format
msgid "warning: use of obsolete %%[ operator in specs"
msgstr ""
-#: gcc.c:4982
+#: gcc.c:5119
#, c-format
msgid "Processing spec %c%s%c, which is '%s'\n"
msgstr ""
-#: gcc.c:5107
+#: gcc.c:5182
#, fuzzy, c-format
msgid "spec failure: unrecognized spec option '%c'"
msgstr "ej igenkänd flagga `-%s'"
-#: gcc.c:5188
+#: gcc.c:5261
#, fuzzy, c-format
msgid "unknown spec function `%s'"
msgstr "I funktion `%s':"
-#: gcc.c:5207
+#: gcc.c:5280
#, fuzzy, c-format
msgid "error in args to spec function `%s'"
msgstr "för många argument till funktionen \"%s\""
-#: gcc.c:5256
+#: gcc.c:5328
msgid "malformed spec function name"
msgstr ""
#. )
-#: gcc.c:5259
+#: gcc.c:5331
#, fuzzy
msgid "no arguments for spec function"
msgstr "för få argument till funktion"
-#: gcc.c:5278
+#: gcc.c:5350
msgid "malformed spec function arguments"
msgstr ""
-#: gcc.c:5386
-msgid "mismatched braces in specs"
+#: gcc.c:6076
+msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC."
+msgstr ""
+
+#: gcc.c:6086
+msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC."
msgstr ""
-#: gcc.c:6081
+#: gcc.c:6179
#, c-format
msgid "unrecognized option `-%s'"
msgstr "ej igenkänd flagga `-%s'"
-#: gcc.c:6087
+#: gcc.c:6185
#, c-format
msgid "install: %s%s\n"
msgstr ""
-#: gcc.c:6088
+#: gcc.c:6186
#, c-format
msgid "programs: %s\n"
msgstr "program: %s\n"
-#: gcc.c:6089
+#: gcc.c:6187
#, c-format
msgid "libraries: %s\n"
msgstr "bibliotek: %s\n"
-#: gcc.c:6146
+#: gcc.c:6244
+#, c-format
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
@@ -5762,112 +5622,125 @@ msgstr ""
"\n"
"Instruktioner för bugrapportering, se:\n"
-#: gcc.c:6162
+#: gcc.c:6260
#, c-format
msgid "Configured with: %s\n"
msgstr ""
-#: gcc.c:6176
+#: gcc.c:6274
#, c-format
msgid "Thread model: %s\n"
msgstr ""
-#: gcc.c:6187
+#: gcc.c:6285
#, c-format
msgid "gcc version %s\n"
msgstr "gcc version %s\n"
-#: gcc.c:6189
+#: gcc.c:6287
#, c-format
msgid "gcc driver version %s executing gcc version %s\n"
msgstr ""
-#: gcc.c:6197
+#: gcc.c:6295
#, fuzzy
msgid "no input files"
msgstr "Inga indatafiler"
-#: gcc.c:6235
-#, c-format
-msgid "%s: %s compiler not installed on this system"
-msgstr "%s: kompilatorn %s är inte installerad på detta system"
-
-#: gcc.c:6310
+#: gcc.c:6317 gcc.c:6436
#, c-format
msgid "%s: linker input file unused because linking not done"
msgstr ""
-#: gcc.c:6353
+#: gcc.c:6320
+#, fuzzy
+msgid "cannot specify -o with -c or -S and multiple languages"
+msgstr "kan inte ange både -C och -o"
+
+#: gcc.c:6355
+#, c-format
+msgid "%s: %s compiler not installed on this system"
+msgstr "%s: kompilatorn %s är inte installerad på detta system"
+
+#: gcc.c:6476
#, c-format
msgid "language %s not recognized"
msgstr "språk %s känns inte igen"
-#: gcc.c:6456
+#: gcc.c:6573
#, fuzzy
msgid "internal gcc abort"
msgstr "Intern gcc-halt (abort)."
-#: gcov.c:325
+#: gcov.c:384
msgid "Internal gcov abort.\n"
msgstr ""
-#: gcov.c:338
+#: gcov.c:397
msgid ""
"Usage: gcov [OPTION]... SOURCEFILE\n"
"\n"
msgstr ""
-#: gcov.c:339
+#: gcov.c:398
#, fuzzy
msgid ""
"Print code coverage information.\n"
"\n"
msgstr "inte tillräcklig typinformation"
-#: gcov.c:340
+#: gcov.c:399
#, fuzzy
msgid " -h, --help Print this help, then exit\n"
msgstr " --help Visa den här informatationen\n"
-#: gcov.c:341
+#: gcov.c:400
#, fuzzy
msgid " -v, --version Print version number, then exit\n"
msgstr " -V <version> Kör gcc version <version>, om den är installerad\n"
-#: gcov.c:342
+#: gcov.c:401
+msgid " -a, --all-blocks Show information for every basic block\n"
+msgstr ""
+
+#: gcov.c:402
msgid " -b, --branch-probabilities Include branch probabilities in output\n"
msgstr ""
-#: gcov.c:343
+#: gcov.c:403
msgid ""
" -c, --branch-counts Given counts of branches taken\n"
" rather than percentages\n"
msgstr ""
-#: gcov.c:345
+#: gcov.c:405
#, fuzzy
msgid " -n, --no-output Do not create an output file\n"
msgstr " -save-temps Radera inte temporära filer\n"
-#: gcov.c:346
+#: gcov.c:406
msgid ""
" -l, --long-file-names Use long output file names for included\n"
" source files\n"
msgstr ""
-#: gcov.c:348
+#: gcov.c:408
msgid " -f, --function-summaries Output summaries for each function\n"
msgstr ""
-#: gcov.c:349
+#: gcov.c:409
msgid " -o, --object-directory DIR|FILE Search for object files in DIR or called FILE\n"
msgstr ""
-#: gcov.c:350
+#: gcov.c:410
msgid " -p, --preserve-paths Preserve all pathname components\n"
msgstr ""
-#: gcov.c:351
+#: gcov.c:411
+msgid " -u, --unconditional-branches Show unconditional branch counts too\n"
+msgstr ""
+
+#: gcov.c:412
#, fuzzy, c-format
msgid ""
"\n"
@@ -5877,403 +5750,288 @@ msgstr ""
"\n"
"Instruktioner för bugrapportering, se:\n"
-#: gcov.c:361
+#: gcov.c:422
#, c-format
msgid "gcov (GCC) %s\n"
msgstr ""
-#: gcov.c:362
-msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
-msgstr ""
-
-#: gcov.c:500
-#, c-format
-msgid "Could not open basic block file %s.\n"
-msgstr ""
-
-#: gcov.c:507
-#, c-format
-msgid "Could not open program flow graph file %s.\n"
-msgstr ""
-
-#: gcov.c:524
-#, c-format
-msgid "Could not open data file %s.\n"
-msgstr "Kunde inte öppna datafil %s.\n"
-
-#: gcov.c:525
-msgid "Assuming that all execution counts are zero.\n"
+#: gcov.c:423
+msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
msgstr ""
-#: gcov.c:534
-#, c-format
-msgid "No executable code associated with file %s.\n"
+#: gcov.c:425
+msgid ""
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or \n"
+"FITNESS FOR A PARTICULAR PURPOSE.\n"
+"\n"
msgstr ""
-#: gcov.c:1186
+#: gcov.c:515
#, fuzzy, c-format
-msgid "%s of %d lines executed in %s %s\n"
-msgstr "%6.2f%% av %d källkodsrader körda i fil %s\n"
+msgid "%s:no functions found\n"
+msgstr "hittar ingen cmd_strings"
-#: gcov.c:1191
-#, fuzzy, c-format
-msgid "No executable lines in %s %s\n"
-msgstr "Inga körbara källkodsrader i funktion %s\n"
+#: gcov.c:536 gcov.c:564
+#, fuzzy
+msgid "\n"
+msgstr ":\n"
-#: gcov.c:1198
+#: gcov.c:551
#, fuzzy, c-format
-msgid "%s of %d branches executed in %s %s\n"
-msgstr "%6.2f%% av %d hopp utförda i funktion %s\n"
+msgid "%s:creating `%s'\n"
+msgstr "Skapar %s.\n"
-#: gcov.c:1203
+#: gcov.c:555
#, fuzzy, c-format
-msgid "%s of %d branches taken at least once in %s %s\n"
-msgstr "%6.2f%% av %d hopp tagna minst en gång i funktion %s\n"
+msgid "%s:error writing output file `%s'\n"
+msgstr "fel vid skrivning till %s"
-#: gcov.c:1209
+#: gcov.c:560
#, fuzzy, c-format
-msgid "No branches in %s %s\n"
-msgstr "Inga hopp i fil %s\n"
+msgid "%s:could not open output file `%s'\n"
+msgstr "Kunde inte öppna utdatafil %s.\n"
-#: gcov.c:1211
+#: gcov.c:711
#, fuzzy, c-format
-msgid "%s of %d calls executed in %s %s\n"
-msgstr "%6.2f%% av %d anrop tagna i funktion %s\n"
+msgid "%s:cannot open graph file\n"
+msgstr "%s: kan inte öppna som COFF-fil"
-#: gcov.c:1216
+#: gcov.c:717
#, fuzzy, c-format
-msgid "No calls in %s %s\n"
-msgstr "Inga anrop i fil %s\n"
+msgid "%s:not a gcov graph file\n"
+msgstr "%s: är inte en COFF-fil"
-#: gcov.c:1351
+#: gcov.c:730
#, c-format
-msgid "didn't use all bb entries of graph, function %s\n"
+msgid "%s:version `%.4s', prefer `%.4s'\n"
msgstr ""
-#: gcov.c:1353
+#: gcov.c:782
#, c-format
-msgid "block_num = %ld, num_blocks = %d\n"
+msgid "%s:already seen blocks for `%s'\n"
msgstr ""
-#: gcov.c:1367
+#: gcov.c:903 gcov.c:1062
#, c-format
-msgid "ERROR: unexpected line number %ld\n"
+msgid "%s:corrupted\n"
msgstr ""
-#: gcov.c:1383
-#, fuzzy, c-format
-msgid "ERROR: too many basic blocks in function %s\n"
-msgstr "för många argument till funktionen \"%s\""
-
-#: gcov.c:1398
+#: gcov.c:976
#, fuzzy, c-format
-msgid "ERROR: out of range line number in function %s\n"
-msgstr "Inga körbara källkodsrader i funktion %s\n"
-
-#: gcov.c:1470
-#, c-format
-msgid "Could not open source file %s.\n"
-msgstr "Kunde inte öppna källkodsfil %s.\n"
+msgid "%s:cannot open data file\n"
+msgstr "%s: kan inte öppna som COFF-fil"
-#: gcov.c:1480
+#: gcov.c:981
#, fuzzy, c-format
-msgid "Warning: source file %s is newer than %s\n"
-msgstr "aktuell fil är äldre än %s"
+msgid "%s:not a gcov data file\n"
+msgstr "%s: är inte en COFF-fil"
-#: gcov.c:1510
+#: gcov.c:994
#, c-format
-msgid "Unexpected EOF while reading source file %s.\n"
+msgid "%s:version `%.4s', prefer version `%.4s'\n"
msgstr ""
-#: gcov.c:1532
-#, fuzzy, c-format
-msgid "call %2d never executed\n"
-msgstr "anrop %d aldrig utfört\n"
-
-#: gcov.c:1535
+#: gcov.c:1000
#, c-format
-msgid "call %2d returns %s\n"
+msgid "%s:stamp mismatch with graph file\n"
msgstr ""
-#: gcov.c:1543
-#, fuzzy, c-format
-msgid "branch %2d never executed\n"
-msgstr "anrop %d aldrig utfört\n"
-
-#: gcov.c:1546
+#: gcov.c:1026
#, fuzzy, c-format
-msgid "branch %2d taken %s\n"
-msgstr "Inga hopp i fil %s\n"
-
-#: gcov.c:1610
-#, c-format
-msgid "Creating %s.\n"
-msgstr "Skapar %s.\n"
-
-#: gcov.c:1613
-#, fuzzy, c-format
-msgid "Error writing output file %s.\n"
-msgstr "fel vid skrivning till %s"
-
-#: gcov.c:1618
-#, c-format
-msgid "Could not open output file %s.\n"
-msgstr "Kunde inte öppna utdatafil %s.\n"
+msgid "%s:unknown function `%u'\n"
+msgstr "I funktion `%s':"
-#: gcse.c:763
+#: gcov.c:1039
#, c-format
-msgid "GCSE disabled: %d > 1000 basic blocks and %d >= 20 edges/basic block"
+msgid "%s:profile mismatch for `%s'\n"
msgstr ""
-#: gcse.c:775
+#: gcov.c:1062
#, c-format
-msgid "GCSE disabled: %d basic blocks and %d registers"
+msgid "%s:overflowed\n"
msgstr ""
-#: genautomata.c:1490
+#: gcov.c:1085
#, c-format
-msgid "Name `%s' contains quotes"
+msgid "%s:`%s' lacks entry and/or exit blocks\n"
msgstr ""
-#: genautomata.c:1621
+#: gcov.c:1090
#, c-format
-msgid "invalid string `%s' in define_cpu_unit"
+msgid "%s:`%s' has arcs to entry block\n"
msgstr ""
-#: genautomata.c:1650
+#: gcov.c:1098
#, c-format
-msgid "invalid string `%s' in define_query_cpu_unit"
+msgid "%s:`%s' has arcs from exit block\n"
msgstr ""
-#: genautomata.c:1682 genautomata.c:1685
+#: gcov.c:1306
#, c-format
-msgid "invalid string `%s' in define_bypass"
+msgid "%s:graph is unsolvable for `%s'\n"
msgstr ""
-#: genautomata.c:1720
-#, c-format
-msgid "invalid first string `%s' in exclusion_set"
-msgstr ""
+#: gcov.c:1386
+#, fuzzy, c-format
+msgid "%s `%s'\n"
+msgstr "%s: %s"
-#: genautomata.c:1724
+#: gcov.c:1389
#, c-format
-msgid "invalid second string `%s' in exclusion_set"
+msgid "Lines executed:%s of %d\n"
msgstr ""
-#: genautomata.c:1760
-#, c-format
-msgid "invalid first string `%s' in presence_set"
-msgstr ""
+#: gcov.c:1393
+#, fuzzy
+msgid "No executable lines"
+msgstr "Inga körbara källkodsrader i funktion %s\n"
-#: genautomata.c:1764
+#: gcov.c:1399
#, c-format
-msgid "invalid second string `%s' in presence_set"
+msgid "Branches executed:%s of %d\n"
msgstr ""
-#: genautomata.c:1800
+#: gcov.c:1403
#, c-format
-msgid "invalid first string `%s' in absence_set"
+msgid "Taken at least once:%s of %d\n"
msgstr ""
-#: genautomata.c:1804
-#, c-format
-msgid "invalid second string `%s' in absence_set"
-msgstr ""
+#: gcov.c:1409
+#, fuzzy
+msgid "No branches\n"
+msgstr "Inga hopp i fil %s\n"
-#: genautomata.c:1837
+#: gcov.c:1411
#, c-format
-msgid "invalid string `%s' in define_automaton"
+msgid "Calls executed:%s of %d\n"
msgstr ""
-#: genautomata.c:1868
+#: gcov.c:1415
+#, fuzzy
+msgid "No calls\n"
+msgstr "Inga anrop i fil %s\n"
+
+#: gcov.c:1556
#, fuzzy, c-format
-msgid "invalid option `%s' in automata_option"
-msgstr "Ogiltig flagga \"%s\""
+msgid "%s:no lines for `%s'\n"
+msgstr "%s före \"%s\""
-#: genautomata.c:1890
-#, c-format
-msgid "garbage after ) in reservation `%s'"
-msgstr ""
+#: gcov.c:1751
+#, fuzzy, c-format
+msgid "call %2d returned %s\n"
+msgstr "anrop %d aldrig utfört\n"
-#: genautomata.c:1921 genautomata.c:1954 genautomata.c:1981
+#: gcov.c:1756
#, fuzzy, c-format
-msgid "invalid `%s' in reservation `%s'"
-msgstr "omdeklaration av \"%s\""
+msgid "call %2d never executed\n"
+msgstr "anrop %d aldrig utfört\n"
-#: genautomata.c:1932
+#: gcov.c:1761
#, c-format
-msgid "repetition `%s' <= 1 in reservation `%s'"
+msgid "branch %2d taken %s%s\n"
msgstr ""
-#: genautomata.c:2425
-#, c-format
-msgid "unit `%s' in exclusion is not declared"
-msgstr ""
+#: gcov.c:1765
+#, fuzzy, c-format
+msgid "branch %2d never executed\n"
+msgstr "anrop %d aldrig utfört\n"
-#: genautomata.c:2427
-#, c-format
-msgid "`%s' in exclusion is not unit"
-msgstr ""
+#: gcov.c:1770
+#, fuzzy, c-format
+msgid "unconditional %2d taken %s\n"
+msgstr "okänt registernamn: %s"
-#: genautomata.c:2465
+#: gcov.c:1773
#, fuzzy, c-format
-msgid "unit `%s' excludes itself"
-msgstr "storleken på \"%s\" är större än sin typ"
+msgid "unconditional %2d never executed\n"
+msgstr "anrop %d aldrig utfört\n"
-#: genautomata.c:2473
-#, c-format
-msgid "units `%s' and `%s' in exclusion set belong to different automata"
-msgstr ""
+#: gcov.c:1805
+#, fuzzy, c-format
+msgid "%s:cannot open source file\n"
+msgstr "%s: kan inte öppna som COFF-fil"
-#: genautomata.c:2603 genautomata.c:2609
+#: gcov.c:1815
#, c-format
-msgid "unit `%s' excludes and requires presence of `%s'"
+msgid "%s:source file is newer than graph file `%s'\n"
msgstr ""
-#: genautomata.c:2623 genautomata.c:2629
-#, c-format
-msgid "unit `%s' requires absence and presence of `%s'"
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:747
+msgid "GCSE disabled"
msgstr ""
-#: genautomata.c:2692 genautomata.c:2695
-#, fuzzy, c-format
-msgid "repeated declaration of automaton `%s'"
-msgstr "upprepad deklaration av klassmetod \"%s\"."
-
-#: genautomata.c:2711
-#, c-format
-msgid "define_insn_reservation `%s' has negative latency time"
+#: gcse.c:6108
+msgid "NULL pointer checks disabled"
msgstr ""
-#: genautomata.c:2717
-#, c-format
-msgid "`%s' is already used as insn reservation name"
-msgstr ""
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:7994
+#, fuzzy
+msgid "jump bypassing disabled"
+msgstr "flaggan -g är avslagen."
-#: genautomata.c:2723
+#: gcse.c:8055
#, c-format
-msgid "define_bypass `%s - %s' has negative latency time"
+msgid "%s: %d basic blocks and %d edges/basic block"
msgstr ""
-#: genautomata.c:2737
-#, fuzzy, c-format
-msgid "automaton `%s' is not declared"
-msgstr "\"%s\" är tidigare deklarerad här"
-
-#: genautomata.c:2747
+#: gcse.c:8068
#, c-format
-msgid "define_unit `%s' without automaton when one defined"
+msgid "%s: %d basic blocks and %d registers"
msgstr ""
-#: genautomata.c:2753
-#, fuzzy, c-format
-msgid "`%s' is declared as cpu unit"
-msgstr "fält \"%s\" deklarerad som en funktion"
-
-#: genautomata.c:2762
-#, fuzzy, c-format
-msgid "`%s' is declared as cpu reservation"
-msgstr "fält \"%s\" deklarerad som en funktion"
-
-#: genautomata.c:2772
-#, fuzzy, c-format
-msgid "repeated declaration of unit `%s'"
-msgstr "omdeklaration av \"%s\""
-
-#: genautomata.c:2775
-#, fuzzy, c-format
-msgid "repeated declaration of reservation `%s'"
-msgstr "upprepad deklaration av klassmetod \"%s\"."
-
-#: genautomata.c:2790 genautomata.c:2793
-#, fuzzy, c-format
-msgid "there is no insn reservation `%s'"
-msgstr "ingen tidigare deklaration av \"%s\""
-
-#: genautomata.c:2810 genautomata.c:2815
+#: ggc-common.c:398 ggc-common.c:406 ggc-common.c:487 ggc-common.c:507
+#: ggc-page.c:2030 ggc-page.c:2062 ggc-page.c:2069 ggc-zone.c:1361
+#: ggc-zone.c:1367 ggc-zone.c:1372 ggc-zone.c:1379
#, fuzzy, c-format
-msgid "the same bypass `%s - %s' is already defined"
-msgstr "Klass \"%s\" finns redan"
-
-#: genautomata.c:2820
-#, fuzzy, c-format
-msgid "bypass `%s - %s' is already defined"
-msgstr "Klass \"%s\" finns redan"
-
-#: genautomata.c:2925 genautomata.c:2927
-#, c-format
-msgid "automaton `%s' is not used"
-msgstr ""
+msgid "can't write PCH file: %m"
+msgstr "kan inte skriva till %s"
-#: genautomata.c:2950
+#: ggc-common.c:500
#, c-format
-msgid "undeclared unit or reservation `%s'"
+msgid "can't get position in PCH file: %m"
msgstr ""
-#: genautomata.c:3028 genautomata.c:3030
+#: ggc-common.c:510
#, fuzzy, c-format
-msgid "unit `%s' is not used"
-msgstr "\"%s\" är definierad men inte använd"
+msgid "can't write padding to PCH file: %m"
+msgstr "kan inte skriva till %s"
-#: genautomata.c:3035 genautomata.c:3037
+#: ggc-common.c:563 ggc-common.c:571 ggc-common.c:578 ggc-common.c:581
+#: ggc-common.c:654 ggc-common.c:657 ggc-page.c:2157 ggc-zone.c:1389
#, fuzzy, c-format
-msgid "reservation `%s' is not used"
-msgstr "omdeklaration av \"%s\""
+msgid "can't read PCH file: %m"
+msgstr "kan inte läsa från %s"
-#: genautomata.c:3134
-#, fuzzy, c-format
-msgid "cycle in definition of reservation `%s'"
-msgstr "omdefiniering av \"union %s\""
+#: ggc-common.c:681
+msgid "had to relocate PCH"
+msgstr ""
-#: genautomata.c:5333
+#: ggc-page.c:1325
#, c-format
-msgid "Units `%s' and `%s' should be in the same automaton"
+msgid "open /dev/zero: %m"
msgstr ""
-#: genautomata.c:9441
-#, fuzzy
-msgid "-split has no argument."
-msgstr "inga argument"
-
-#: genautomata.c:9442
+#: ggc-page.c:2047 ggc-page.c:2053
#, fuzzy
-msgid "option `-split' has not been implemented yet\n"
-msgstr "Profilering är inte implementerat ännu."
-
-#: genautomata.c:9486 genautomata.c:9491
-#, c-format
-msgid "Automaton `%s': Insn `%s' will never be issued"
-msgstr ""
+msgid "can't write PCH file"
+msgstr "kan inte skriva till %s"
-#: genautomata.c:9498 genautomata.c:9501
-#, c-format
-msgid "Insn `%s' will never be issued"
+#: ggc-simple.c:506
+msgid "Generating PCH files is not supported when using ggc-simple.c"
msgstr ""
-#: genautomata.c:9649
-#, fuzzy
-msgid "Errors in DFA description"
-msgstr "ingen beskriving ännu"
-
-#: genautomata.c:9732
+#: global.c:356 global.c:369 global.c:383
#, fuzzy, c-format
-msgid "Error in writing DFA description file %s"
-msgstr "fel vid skrivning till %s"
-
-#: genconditions.c:196
-#, fuzzy
-msgid "No input file name."
-msgstr "Inga indatafiler"
-
-#: ggc-page.c:1265
-msgid "open /dev/zero"
-msgstr ""
+msgid "%s cannot be used in asm here"
+msgstr "fält \"%s\" deklarerad som en funktion"
-#: graph.c:420 profile.c:1204 profile.c:1211 toplev.c:1836 toplev.c:5168
-#: f/com.c:14210 java/jcf-parse.c:917 java/jcf-parse.c:1063 java/lex.c:1776
-#: objc/objc-act.c:449
-#, c-format
-msgid "can't open %s"
+#: graph.c:403 toplev.c:1481 toplev.c:4408 f/com.c:14202 java/jcf-parse.c:883
+#: java/jcf-parse.c:1030 java/lex.c:1828 objc/objc-act.c:503
+#, fuzzy, c-format
+msgid "can't open %s: %m"
msgstr "kan inte öppna %s"
#: haifa-sched.c:196
@@ -6281,71 +6039,81 @@ msgstr "kan inte öppna %s"
msgid "fix_sched_param: unknown param: %s"
msgstr "fix_sched_param: okänd param: %s"
-#: integrate.c:174
+#: integrate.c:166
msgid "function cannot be inline"
msgstr "funktion \"%s\" kan inte deklareras som \"mutable\""
-#: integrate.c:178
+#: integrate.c:170
msgid "varargs function cannot be inline"
msgstr ""
-#: integrate.c:181
+#: integrate.c:173
msgid "function using alloca cannot be inline"
msgstr ""
-#: integrate.c:184
+#: integrate.c:176
+#, fuzzy
+msgid "function using longjmp cannot be inline"
+msgstr "funktion \"%s\" kan inte deklareras som \"mutable\""
+
+#: integrate.c:179
msgid "function using setjmp cannot be inline"
msgstr ""
-#: integrate.c:187
+#: integrate.c:182
msgid "function uses __builtin_eh_return"
msgstr "funktion använder __builtin_eh_return"
-#: integrate.c:190
+#: integrate.c:185
msgid "function with nested functions cannot be inline"
msgstr ""
-#: integrate.c:194
+#: integrate.c:189
msgid "function with label addresses used in initializers cannot inline"
msgstr ""
-#: integrate.c:201 integrate.c:245
+#: integrate.c:196 integrate.c:240
msgid "function too large to be inline"
msgstr ""
-#: integrate.c:211
+#: integrate.c:206
msgid "no prototype, and parameter address used; cannot be inline"
msgstr ""
-#: integrate.c:218 integrate.c:263
+#: integrate.c:213 integrate.c:258
msgid "inline functions not supported for this return value type"
msgstr ""
-#: integrate.c:223
+#: integrate.c:218
msgid "function with varying-size return value cannot be inline"
msgstr ""
-#: integrate.c:230
+#: integrate.c:225
msgid "function with varying-size parameter cannot be inline"
msgstr ""
-#: integrate.c:233
+#: integrate.c:228
msgid "function with transparent unit parameter cannot be inline"
msgstr ""
-#: integrate.c:252
+#: integrate.c:247
msgid "function with computed jump cannot inline"
msgstr ""
-#: integrate.c:256
+#: integrate.c:251
msgid "function with nonlocal goto cannot be inline"
msgstr ""
-#: integrate.c:270
+#: integrate.c:265
msgid "function with target specific attribute(s) cannot be inlined"
msgstr ""
-#: line-map.c:198
+#: jump.c:1896
+#, fuzzy
+msgid "%Hwill never be executed"
+msgstr "anrop %d aldrig utfört\n"
+
+#: line-map.c:202
#, c-format
msgid "In file included from %s:%u"
msgstr "I fil inkluderad från %s:%u"
@@ -6362,7 +6130,7 @@ msgstr "I fil inkluderad från %s:%u"
#. with all the "from"s lined up.
#. The trailing comma is at the beginning of this message,
#. and the trailing colon is not translated.
-#: line-map.c:216
+#: line-map.c:220
#, c-format
msgid ""
",\n"
@@ -6371,62 +6139,155 @@ msgstr ""
",\n"
" från %s:%u"
+#. What to print when a switch has no documentation.
+#: opts.c:149
+msgid "This switch lacks documentation"
+msgstr ""
+
+#. Eventually this should become a hard error IMO.
+#: opts.c:318
+#, c-format
+msgid "command line option \"%s\" is valid for %s but not for %s"
+msgstr ""
+
+#: opts.c:406
+#, fuzzy, c-format
+msgid "missing argument to \"%s\""
+msgstr "Saknar argument till flaggan \"%s\""
+
+#: opts.c:416
+#, fuzzy, c-format
+msgid "argument to \"%s\" should be a non-negative integer"
+msgstr "första argumentet till \"%s\" skall vara \"int\""
+
+#: opts.c:463
+#, fuzzy, c-format
+msgid "unrecognized command line option \"%s\""
+msgstr "Ignorerar kommandoradsflagga \"%s\""
+
+#: opts.c:646
+msgid "-Wuninitialized is not supported without -O"
+msgstr ""
+
+#: opts.c:1350
+#, fuzzy, c-format
+msgid "unrecognized register name \"%s\""
+msgstr "Känner inte igen registernamn \"%s\""
+
+#: opts.c:1394
+#, fuzzy, c-format
+msgid "unknown tls-model \"%s\""
+msgstr "okänt maskinläge `%s'"
+
+#: opts.c:1450
+msgid "-fwritable-strings is deprecated; see documentation for details"
+msgstr ""
+
+#: opts.c:1534
+#, c-format
+msgid "%s: --param arguments should be of the form NAME=VALUE"
+msgstr ""
+
+#: opts.c:1539
+#, fuzzy, c-format
+msgid "invalid --param value `%s'"
+msgstr "ogiltigt parametervärde \"%s\""
+
+#: opts.c:1635
+#, fuzzy
+msgid "target system does not support debug output"
+msgstr "målprocessorn stödjer inte THUMB-instruktioner"
+
+#: opts.c:1642
+#, fuzzy, c-format
+msgid "debug format \"%s\" conflicts with prior selection"
+msgstr "sektion \"%s\" står i konflikt med tidigare deklaration"
+
+#: opts.c:1658
+#, fuzzy, c-format
+msgid "unrecognised debug output level \"%s\""
+msgstr "Känner inte igen sektionsnamn \"%s\""
+
+#: opts.c:1660
+#, c-format
+msgid "debug output level %s is too high"
+msgstr ""
+
+#: opts.c:1679
+msgid "The following options are language-independent:\n"
+msgstr ""
+
+#: opts.c:1686
+#, c-format
+msgid ""
+"The %s front end recognizes the following options:\n"
+"\n"
+msgstr ""
+
+#: opts.c:1700
+msgid "The --param option recognizes the following as parameters:\n"
+msgstr ""
+
#. If we didn't find this parameter, issue an error message.
-#: params.c:80
+#: params.c:76
#, c-format
msgid "invalid parameter `%s'"
msgstr ""
-#: profile.c:397
-#, c-format
-msgid "Profile does not match flowgraph of function %s (out of date?)"
+#: profile.c:288
+msgid "corrupted profile info: run_max * runs < sum_max"
msgstr ""
-#: profile.c:400
-msgid ".da file corrupted"
+#: profile.c:294
+msgid "corrupted profile info: sum_all is smaller than sum_max"
msgstr ""
-#: profile.c:634
+#: profile.c:336
#, c-format
-msgid "corrupted profile info: prob for %d-%d thought to be %d"
+msgid "corrupted profile info: edge from %i to %i exceeds maximal count"
msgstr ""
-#: profile.c:1226
+#: profile.c:499
#, c-format
-msgid "file %s not found, execution counts assumed to be zero"
+msgid "corrupted profile info: number of iterations for basic block %d thought to be %i"
+msgstr ""
+
+#: profile.c:526
+#, c-format
+msgid "corrupted profile info: number of executions for edge %d-%d thought to be %i"
msgstr ""
-#: protoize.c:542
+#: protoize.c:534
#, c-format
msgid "%s: internal abort\n"
msgstr "%s: intern abort\n"
-#: protoize.c:633
+#: protoize.c:592
#, c-format
msgid "%s: error writing file `%s': %s\n"
msgstr ""
-#: protoize.c:678
+#: protoize.c:636
#, c-format
msgid "%s: usage '%s [ -VqfnkN ] [ -i <istring> ] [ filename ... ]'\n"
msgstr "%s: användning '%s [ -VqfnkN ] [ -i <isträng> ] [ filnamn ... ]'\n"
-#: protoize.c:681
+#: protoize.c:639
#, c-format
msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B <dirname> ] [ filename ... ]'\n"
msgstr "%s: användning '%s [ -VqfnkNlgC ] [ -B <katalognamn> ] [ filnamn ... ]'\n"
-#: protoize.c:788
+#: protoize.c:745
#, c-format
msgid "%s: warning: no read access for file `%s'\n"
msgstr "%s: varning: ingen läsrättighet för fil \"%s\"\n"
-#: protoize.c:796
+#: protoize.c:753
#, c-format
msgid "%s: warning: no write access for file `%s'\n"
msgstr "%s: varning: ingen skrivrättighet för fil \"%s\"\n"
-#: protoize.c:804
+#: protoize.c:761
#, c-format
msgid "%s: warning: no write access for dir containing `%s'\n"
msgstr ""
@@ -6434,272 +6295,272 @@ msgstr ""
#. Catch cases like /.. where we try to backup to a
#. point above the absolute root of the logical file
#. system.
-#: protoize.c:1222
+#: protoize.c:1148
#, c-format
msgid "%s: invalid file name: %s\n"
msgstr ""
-#: protoize.c:1374
+#: protoize.c:1296
#, c-format
msgid "%s: %s: can't get status: %s\n"
msgstr "%s: %s: kan inte få status: %s\n"
-#: protoize.c:1395
+#: protoize.c:1317
#, c-format
msgid ""
"\n"
"%s: fatal error: aux info file corrupted at line %d\n"
msgstr ""
-#: protoize.c:1731
+#: protoize.c:1646
#, c-format
msgid "%s:%d: declaration of function `%s' takes different forms\n"
msgstr ""
-#: protoize.c:1989
+#: protoize.c:1901
#, c-format
msgid "%s: compiling `%s'\n"
msgstr "%s: kompilerar `%s'\n"
-#: protoize.c:2012
+#: protoize.c:1924
#, c-format
msgid "%s: wait: %s\n"
msgstr "%s: vänta: %s\n"
-#: protoize.c:2017
+#: protoize.c:1929
#, c-format
msgid "%s: subprocess got fatal signal %d\n"
msgstr "%s: subprocess fick dödlig signal %d\n"
-#: protoize.c:2025
+#: protoize.c:1937
#, c-format
msgid "%s: %s exited with status %d\n"
msgstr "%s: %s avslutade med status %d\n"
-#: protoize.c:2077
+#: protoize.c:1986
#, c-format
msgid "%s: warning: missing SYSCALLS file `%s'\n"
msgstr ""
-#: protoize.c:2086 protoize.c:2115
+#: protoize.c:1995 protoize.c:2024
#, c-format
msgid "%s: can't read aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2131 protoize.c:2159
+#: protoize.c:2040 protoize.c:2068
#, c-format
msgid "%s: can't get status of aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2187
+#: protoize.c:2096
#, c-format
msgid "%s: can't open aux info file `%s' for reading: %s\n"
msgstr ""
-#: protoize.c:2205
+#: protoize.c:2114
#, c-format
msgid "%s: error reading aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2218
+#: protoize.c:2127
#, c-format
msgid "%s: error closing aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2234
+#: protoize.c:2143
#, c-format
msgid "%s: can't delete aux info file `%s': %s\n"
msgstr ""
-#: protoize.c:2316 protoize.c:4318
+#: protoize.c:2225 protoize.c:4195
#, c-format
msgid "%s: can't delete file `%s': %s\n"
msgstr "%s: kan inte radera fil \"%s\": %s\n"
-#: protoize.c:2395
+#: protoize.c:2303
#, c-format
msgid "%s: warning: can't rename file `%s' to `%s': %s\n"
msgstr "%s: varning: kan inte döpa om fil \"%s\" till \"%s\": %s\n"
-#: protoize.c:2520
+#: protoize.c:2425
#, c-format
msgid "%s: conflicting extern definitions of '%s'\n"
msgstr ""
-#: protoize.c:2524
+#: protoize.c:2429
#, c-format
msgid "%s: declarations of '%s' will not be converted\n"
msgstr ""
-#: protoize.c:2526
+#: protoize.c:2431
#, c-format
msgid "%s: conflict list for '%s' follows:\n"
msgstr ""
-#: protoize.c:2559
+#: protoize.c:2464
#, c-format
msgid "%s: warning: using formals list from %s(%d) for function `%s'\n"
msgstr ""
-#: protoize.c:2599
+#: protoize.c:2504
#, c-format
msgid "%s: %d: `%s' used but missing from SYSCALLS\n"
msgstr ""
-#: protoize.c:2605
+#: protoize.c:2510
#, c-format
msgid "%s: %d: warning: no extern definition for `%s'\n"
msgstr ""
-#: protoize.c:2636
+#: protoize.c:2540
#, c-format
msgid "%s: warning: no static definition for `%s' in file `%s'\n"
msgstr ""
-#: protoize.c:2642
+#: protoize.c:2546
#, c-format
msgid "%s: multiple static defs of `%s' in file `%s'\n"
msgstr ""
-#: protoize.c:2815 protoize.c:2818
+#: protoize.c:2716 protoize.c:2719
#, c-format
msgid "%s: %d: warning: source too confusing\n"
msgstr ""
-#: protoize.c:3024
+#: protoize.c:2915
#, c-format
msgid "%s: %d: warning: varargs function declaration not converted\n"
msgstr ""
-#: protoize.c:3039
+#: protoize.c:2930
#, c-format
msgid "%s: declaration of function `%s' not converted\n"
msgstr ""
-#: protoize.c:3162
+#: protoize.c:3053
#, c-format
msgid "%s: warning: too many parameter lists in declaration of `%s'\n"
msgstr ""
-#: protoize.c:3183
+#: protoize.c:3074
#, c-format
msgid ""
"\n"
"%s: warning: too few parameter lists in declaration of `%s'\n"
msgstr ""
-#: protoize.c:3281
+#: protoize.c:3170
#, c-format
msgid "%s: %d: warning: found `%s' but expected `%s'\n"
msgstr ""
-#: protoize.c:3459
+#: protoize.c:3345
#, c-format
msgid "%s: local declaration for function `%s' not inserted\n"
msgstr ""
-#: protoize.c:3486
+#: protoize.c:3372
#, c-format
msgid ""
"\n"
"%s: %d: warning: can't add declaration of `%s' into macro call\n"
msgstr ""
-#: protoize.c:3560
+#: protoize.c:3444
#, c-format
msgid "%s: global declarations for file `%s' not inserted\n"
msgstr ""
-#: protoize.c:3651 protoize.c:3681
+#: protoize.c:3533 protoize.c:3563
#, c-format
msgid "%s: definition of function `%s' not converted\n"
msgstr ""
-#: protoize.c:3670
+#: protoize.c:3552
#, c-format
msgid "%s: %d: warning: definition of %s not converted\n"
msgstr ""
-#: protoize.c:4000
+#: protoize.c:3878
#, c-format
msgid "%s: found definition of `%s' at %s(%d)\n"
msgstr ""
#. If we make it here, then we did not know about this
#. function definition.
-#: protoize.c:4016
+#: protoize.c:3894
#, c-format
msgid "%s: %d: warning: `%s' excluded by preprocessing\n"
msgstr ""
-#: protoize.c:4019
+#: protoize.c:3897
#, c-format
msgid "%s: function definition not converted\n"
msgstr ""
-#: protoize.c:4078
+#: protoize.c:3955
#, c-format
msgid "%s: `%s' not converted\n"
msgstr ""
-#: protoize.c:4086
+#: protoize.c:3963
#, c-format
msgid "%s: would convert file `%s'\n"
msgstr ""
-#: protoize.c:4089
+#: protoize.c:3966
#, c-format
msgid "%s: converting file `%s'\n"
msgstr ""
-#: protoize.c:4099
+#: protoize.c:3976
#, c-format
msgid "%s: can't get status for file `%s': %s\n"
msgstr ""
-#: protoize.c:4141
+#: protoize.c:4018
#, c-format
msgid "%s: can't open file `%s' for reading: %s\n"
msgstr "%s: kan inte öppna fil `%s' för läsning: %s\n"
-#: protoize.c:4156
+#: protoize.c:4033
#, c-format
msgid ""
"\n"
"%s: error reading input file `%s': %s\n"
msgstr ""
-#: protoize.c:4190
+#: protoize.c:4067
#, c-format
msgid "%s: can't create/open clean file `%s': %s\n"
msgstr ""
-#: protoize.c:4295
+#: protoize.c:4172
#, c-format
msgid "%s: warning: file `%s' already saved in `%s'\n"
msgstr ""
-#: protoize.c:4303
+#: protoize.c:4180
#, c-format
msgid "%s: can't link file `%s' to `%s': %s\n"
msgstr "%s: kan inte länka fil \"%s\" till \"%s\": %s\n"
-#: protoize.c:4333
+#: protoize.c:4210
#, c-format
msgid "%s: can't create/open output file `%s': %s\n"
msgstr ""
-#: protoize.c:4366
+#: protoize.c:4243
#, c-format
msgid "%s: can't change mode of file `%s': %s\n"
msgstr ""
-#: protoize.c:4541
+#: protoize.c:4416
#, c-format
msgid "%s: cannot get working directory: %s\n"
msgstr ""
-#: protoize.c:4639
+#: protoize.c:4514
#, c-format
msgid "%s: input file names must have .c suffixes: %s\n"
msgstr "%s: indatafilnamn måste ha ändelsen .c: %s\n"
@@ -6708,365 +6569,402 @@ msgstr "%s: indatafilnamn måste ha ändelsen .c: %s\n"
msgid "Didn't find a coloring.\n"
msgstr ""
-#: reg-stack.c:673
+#: reg-stack.c:665
#, c-format
msgid "output constraint %d must specify a single register"
msgstr ""
-#: reg-stack.c:683
+#: reg-stack.c:675
#, c-format
msgid "output constraint %d cannot be specified together with \"%s\" clobber"
msgstr ""
-#: reg-stack.c:706
+#: reg-stack.c:698
msgid "output regs must be grouped at top of stack"
msgstr ""
-#: reg-stack.c:743
+#: reg-stack.c:735
msgid "implicitly popped regs must be grouped at top of stack"
msgstr ""
-#: reg-stack.c:762
+#: reg-stack.c:754
#, c-format
msgid "output operand %d must use `&' constraint"
msgstr ""
-#: regclass.c:756
+#: regclass.c:743
#, c-format
msgid "can't use '%s' as a %s register"
msgstr ""
-#: regclass.c:771 config/ia64/ia64.c:4304 config/ia64/ia64.c:4311
+#: regclass.c:758 config/ia64/ia64.c:4640 config/ia64/ia64.c:4647
#, c-format
msgid "unknown register name: %s"
msgstr "okänt registernamn: %s"
-#: regclass.c:782
+#: regclass.c:768
msgid "global register variable follows a function definition"
msgstr ""
-#: regclass.c:786
+#: regclass.c:772
msgid "register used for two global register variables"
msgstr ""
-#: regclass.c:791
+#: regclass.c:777
msgid "call-clobbered register used for global register variable"
msgstr ""
-#: regrename.c:1899
+#: regrename.c:1846
#, c-format
msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)"
msgstr ""
-#: regrename.c:1911
+#: regrename.c:1858
#, c-format
msgid "validate_value_data: Loop in regno chain (%u)"
msgstr ""
-#: regrename.c:1914
+#: regrename.c:1861
#, c-format
msgid "validate_value_data: [%u] Bad oldest_regno (%u)"
msgstr ""
-#: regrename.c:1926
+#: regrename.c:1873
#, c-format
msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
msgstr ""
-#: reload.c:1229
+#: reload.c:1254
msgid "cannot reload integer constant operand in `asm'"
msgstr ""
-#: reload.c:1251
+#: reload.c:1276
msgid "impossible register constraint in `asm'"
msgstr ""
-#: reload.c:3461
+#: reload.c:3489
msgid "`&' constraint used with no register class"
msgstr ""
-#: reload.c:3629
+#: reload.c:3657
#, fuzzy
msgid "unable to generate reloads for:"
msgstr "Välj CPU att generera kod för"
-#: reload.c:3630 reload.c:3844
+#: reload.c:3658 reload.c:3872
msgid "inconsistent operand constraints in an `asm'"
msgstr ""
-#: reload1.c:1250
+#: reload1.c:1212
msgid "frame size too large for reliable stack checking"
msgstr ""
-#: reload1.c:1253
+#: reload1.c:1215
msgid "try reducing the number of local variables"
msgstr ""
-#: reload1.c:1909
+#: reload1.c:1868
#, c-format
msgid "can't find a register in class `%s' while reloading `asm'"
msgstr ""
-#: reload1.c:1913
+#: reload1.c:1872
#, c-format
msgid "unable to find a register to spill in class `%s'"
msgstr ""
-#: reload1.c:1915
+#: reload1.c:1874
msgid "this is the insn:"
msgstr ""
-#: reload1.c:3938
+#: reload1.c:3871
msgid "`asm' operand requires impossible reload"
msgstr ""
#. It's the compiler's fault.
-#: reload1.c:5052
+#: reload1.c:4963
msgid "could not find a spill register"
msgstr ""
-#: reload1.c:5057
+#: reload1.c:4968
msgid "`asm' operand constraint incompatible with operand size"
msgstr ""
#. It's the compiler's fault.
-#: reload1.c:6679
+#: reload1.c:6590
#, fuzzy
msgid "VOIDmode on an output"
msgstr "I/O-fel vid utmatning"
-#: reload1.c:6680
+#: reload1.c:6591
msgid "output operand is constant in `asm'"
msgstr ""
-#: rtl-error.c:140
+#: rtl-error.c:124
#, fuzzy
msgid "unrecognizable insn:"
msgstr "ej igenkänd flagga `-%s'"
-#: rtl-error.c:142
+#: rtl-error.c:126
msgid "insn does not satisfy its constraints:"
msgstr ""
-#: rtl.c:535
+#: rtl.c:477
#, c-format
msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d"
msgstr ""
-#: rtl.c:550
+#: rtl.c:487
#, c-format
msgid "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr ""
-#: rtl.c:566
+#: rtl.c:497
#, c-format
msgid "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr ""
-#: rtl.c:579
+#: rtl.c:506
#, c-format
msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d"
msgstr ""
-#: rtl.c:593
+#: rtl.c:516
#, c-format
msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d"
msgstr ""
-#: rtl.c:608
+#: rtl.c:527
#, c-format
msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
msgstr ""
-#: rtl.c:623
+#: rtl.c:538
#, c-format
msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d"
msgstr ""
-#: stmt.c:766
+#: stmt.c:750
#, c-format
msgid "jump to `%s' invalidly jumps into binding contour"
msgstr ""
-#: stmt.c:1002 stmt.c:3766
-#, c-format
-msgid "label `%s' used before containing binding contour"
+#: stmt.c:977 stmt.c:3793
+msgid "%Jlabel '%D' used before containing binding contour"
msgstr ""
-#: stmt.c:1190
+#: stmt.c:1156
msgid "output operand constraint lacks `='"
msgstr ""
-#: stmt.c:1205
+#: stmt.c:1171
#, c-format
msgid "output constraint `%c' for operand %d is not at the beginning"
msgstr ""
-#: stmt.c:1227
+#: stmt.c:1193
msgid "operand constraint contains incorrectly positioned '+' or '='"
msgstr ""
-#: stmt.c:1233 stmt.c:1337
+#: stmt.c:1199 stmt.c:1301
#, c-format
msgid "`%%' constraint used with last operand"
msgstr ""
-#: stmt.c:1252
+#: stmt.c:1218
msgid "matching constraint not valid in output operand"
msgstr ""
-#: stmt.c:1328
+#: stmt.c:1260
+msgid "read-write constraint does not allow a register"
+msgstr ""
+
+#: stmt.c:1292
#, c-format
msgid "input operand constraint contains `%c'"
msgstr ""
-#: stmt.c:1368
+#: stmt.c:1334
msgid "matching constraint references invalid operand number"
msgstr ""
-#: stmt.c:1400
+#: stmt.c:1372
#, c-format
msgid "invalid punctuation `%c' in constraint"
msgstr ""
-#: stmt.c:1450
+#: stmt.c:1396
+#, fuzzy
+msgid "matching constraint does not allow a register"
+msgstr "flyttalskonstant utanför sitt intervall"
+
+#: stmt.c:1424
#, fuzzy, c-format
msgid "asm-specifier for variable `%s' conflicts with asm clobber list"
msgstr "typkvalificerare för \"%s\" i konflikt med tidigare dekl"
-#: stmt.c:1540
+#: stmt.c:1514
#, c-format
msgid "unknown register name `%s' in `asm'"
msgstr ""
-#: stmt.c:1588
+#: stmt.c:1522
+#, c-format
+msgid "PIC register `%s' clobbered in `asm'"
+msgstr ""
+
+#: stmt.c:1571
#, c-format
msgid "more than %d operands in `asm'"
msgstr ""
-#: stmt.c:1650
+#: stmt.c:1633
#, c-format
msgid "output number %d not directly addressable"
msgstr ""
-#: stmt.c:1728
+#: stmt.c:1711
#, c-format
msgid "asm operand %d probably doesn't match constraints"
msgstr ""
-#: stmt.c:1738
+#: stmt.c:1721
#, c-format
msgid "use of memory input without lvalue in asm operand %d is deprecated"
msgstr ""
-#: stmt.c:1889
+#: stmt.c:1875
#, fuzzy
msgid "asm clobber conflict with output operand"
msgstr "sektion \"%s\" står i konflikt med tidigare deklaration"
-#: stmt.c:1894
+#: stmt.c:1880
#, fuzzy
msgid "asm clobber conflict with input operand"
msgstr "sektion \"%s\" står i konflikt med tidigare deklaration"
-#: stmt.c:1929
+#: stmt.c:1914
msgid "too many alternatives in `asm'"
msgstr ""
-#: stmt.c:1941
+#: stmt.c:1926
msgid "operand constraints for `asm' differ in number of alternatives"
msgstr ""
-#: stmt.c:1994
+#: stmt.c:1978
#, fuzzy, c-format
msgid "duplicate asm operand name '%s'"
msgstr "upprepning av medlem \"%s\""
-#: stmt.c:2081
+#: stmt.c:2076
msgid "missing close brace for named operand"
msgstr ""
-#: stmt.c:2109
+#: stmt.c:2104
#, c-format
msgid "undefined named operand '%s'"
msgstr ""
-#: stmt.c:3703
-#, c-format
-msgid "unused variable `%s'"
+#: stmt.c:2161
+msgid "%Hstatement with no effect"
+msgstr ""
+
+#: stmt.c:2317
+msgid "%Hvalue computed is not used"
+msgstr ""
+
+#: stmt.c:3733
+#, fuzzy
+msgid "%Junused variable '%D'"
msgstr "oanvänd variabel \"%s\""
-#: stmt.c:5189
+#: stmt.c:4508
+msgid "%Hunreachable code at beginning of %s"
+msgstr ""
+
+#: stmt.c:5136
#, c-format
msgid "enumeration value `%s' not handled in switch"
msgstr ""
-#: stmt.c:5214 stmt.c:5234
+#: stmt.c:5161 stmt.c:5181
#, c-format
msgid "case value `%ld' not in enumerated type"
msgstr ""
-#: stmt.c:5217 stmt.c:5237
+#: stmt.c:5164 stmt.c:5184
#, c-format
msgid "case value `%ld' not in enumerated type `%s'"
msgstr ""
-#: stmt.c:5310
+#: stmt.c:5401
#, fuzzy
msgid "switch missing default case"
msgstr "detta är den första default-etiketten"
-#: stor-layout.c:178
+#: stor-layout.c:183
msgid "type size can't be explicitly evaluated"
msgstr ""
-#: stor-layout.c:180
+#: stor-layout.c:185
msgid "variable-size type declared outside of any function"
msgstr ""
-#: stor-layout.c:487
-#, c-format
-msgid "size of `%s' is %d bytes"
+#: stor-layout.c:515
+#, fuzzy
+msgid "%Jsize of '%D' is %d bytes"
msgstr "storleken på \"%s\" är %d bytes"
-#: stor-layout.c:489
-#, c-format
-msgid "size of `%s' is larger than %d bytes"
+#: stor-layout.c:517
+#, fuzzy
+msgid "%Jsize of '%D' is larger than %d bytes"
msgstr "storleken på \"%s\" är större än %d bytes"
-#: stor-layout.c:909 stor-layout.c:1325
-#, c-format
-msgid "packed attribute causes inefficient alignment for `%s'"
+#: stor-layout.c:883
+msgid "%Jpacked attribute causes inefficient alignment for '%D'"
msgstr ""
-#: stor-layout.c:911 stor-layout.c:1327
-#, c-format
-msgid "packed attribute is unnecessary for `%s'"
+#: stor-layout.c:886
+#, fuzzy
+msgid "%Jpacked attribute is unnecessary for '%D'"
+msgstr "attributet `%s' ignorerat för \"%s\""
+
+#: stor-layout.c:902
+msgid "%Jpadding struct to align '%D'"
+msgstr ""
+
+#: stor-layout.c:1245
+msgid "padding struct size to alignment boundary"
msgstr ""
-#: stor-layout.c:926
+#: stor-layout.c:1275
#, c-format
-msgid "padding struct to align `%s'"
+msgid "packed attribute causes inefficient alignment for `%s'"
msgstr ""
-#: stor-layout.c:1289
-msgid "padding struct size to alignment boundary"
+#: stor-layout.c:1277
+#, c-format
+msgid "packed attribute is unnecessary for `%s'"
msgstr ""
-#: stor-layout.c:1332
+#: stor-layout.c:1282
msgid "packed attribute causes inefficient alignment"
msgstr ""
-#: stor-layout.c:1334
+#: stor-layout.c:1284
msgid "packed attribute is unnecessary"
msgstr ""
-#: timevar.c:322
+#: targhooks.c:154
+msgid "__builtin_saveregs not supported by this target"
+msgstr "__builtin_saveregs stöds inte på denna målarkitektur"
+
+#: timevar.c:314
#, c-format
msgid "cannot timevar_pop '%s' when top of timevars stack is '%s'"
msgstr ""
-#: timevar.c:453
+#: timevar.c:440
msgid ""
"\n"
"Execution times (seconds)\n"
@@ -7075,977 +6973,110 @@ msgstr ""
"Exekveringstider (sekunder)\n"
#. Print total time.
-#: timevar.c:503
+#: timevar.c:490
msgid " TOTAL :"
msgstr " TOTALT :"
-#: timevar.c:539
+#: timevar.c:513
#, c-format
msgid "time in %s: %ld.%06ld (%ld%%)\n"
msgstr "tid %s: %ld.%06ld (%ld%%)\n"
-#: tlink.c:399
+#: tlink.c:377
#, c-format
msgid "collect: reading %s\n"
msgstr ""
-#: tlink.c:502
+#: tlink.c:478
#, c-format
msgid "collect: recompiling %s\n"
msgstr ""
-#: tlink.c:674
+#: tlink.c:654
#, c-format
msgid "collect: tweaking %s in %s\n"
msgstr ""
-#: tlink.c:721
+#: tlink.c:700
+#, c-format
msgid "collect: relinking\n"
msgstr ""
-#: tlink.c:730
+#: tlink.c:709
#, c-format
msgid "ld returned %d exit status"
msgstr ""
-#: toplev.c:920
-msgid "Generate debugging info in default format"
-msgstr ""
-
-#: toplev.c:921
-msgid "Generate debugging info in default extended format"
-msgstr ""
-
-#: toplev.c:923
-msgid "Generate STABS format debug info"
-msgstr ""
-
-#: toplev.c:924
-msgid "Generate extended STABS format debug info"
-msgstr ""
-
-#: toplev.c:927
-msgid "Generate DWARF-1 format debug info"
-msgstr ""
-
-#: toplev.c:929
-msgid "Generate extended DWARF-1 format debug info"
-msgstr ""
-
-#: toplev.c:932
-msgid "Generate DWARF-2 debug info"
-msgstr ""
-
-#: toplev.c:935
-msgid "Generate XCOFF format debug info"
-msgstr ""
-
-#: toplev.c:936
-msgid "Generate extended XCOFF format debug info"
-msgstr ""
-
-#: toplev.c:939
-msgid "Generate COFF format debug info"
-msgstr ""
-
-#: toplev.c:942
-#, fuzzy
-msgid "Generate VMS format debug info"
-msgstr "Generera kod för \"big endian\""
-
-#: toplev.c:981
-#, fuzzy
-msgid "Perform DWARF2 duplicate elimination"
-msgstr "Utför optimering för svansrekursion"
-
-#: toplev.c:983
-msgid "Do not store floats in registers"
-msgstr ""
-
-#: toplev.c:985
-msgid "Consider all mem refs through pointers as volatile"
-msgstr ""
-
-#: toplev.c:987
-msgid "Consider all mem refs to global data to be volatile"
-msgstr ""
-
-#: toplev.c:989
-msgid "Consider all mem refs to static data to be volatile"
-msgstr ""
-
-#: toplev.c:991
-msgid "Defer popping functions args from stack until later"
-msgstr ""
-
-#: toplev.c:993
-msgid "When possible do not generate stack frames"
-msgstr ""
-
-#: toplev.c:995
-msgid "Optimize sibling and tail recursive calls"
-msgstr ""
-
-#: toplev.c:997
-msgid "Perform superblock formation via tail duplication"
-msgstr ""
-
-#: toplev.c:999
-msgid "When running CSE, follow jumps to their targets"
-msgstr ""
-
-#: toplev.c:1001
-msgid "When running CSE, follow conditional jumps"
-msgstr ""
-
-#: toplev.c:1003
-#, fuzzy
-msgid "Perform a number of minor, expensive optimizations"
-msgstr "Utför optimering för svansrekursion"
-
-#: toplev.c:1005
-#, fuzzy
-msgid "Perform jump threading optimizations"
-msgstr "Utför optimering för svansrekursion"
-
-#: toplev.c:1007
-#, fuzzy
-msgid "Perform strength reduction optimizations"
-msgstr "Utför optimering för svansrekursion"
-
-#: toplev.c:1009
-msgid "Perform loop unrolling when iteration count is known"
-msgstr ""
-
-#: toplev.c:1011
-msgid "Perform loop unrolling for all loops"
-msgstr ""
-
-#: toplev.c:1013
-msgid "Generate prefetch instructions, if available, for arrays in loops"
-msgstr ""
-
-#: toplev.c:1015
-msgid "Force all loop invariant computations out of loops"
-msgstr ""
-
-#: toplev.c:1017
-msgid "Strength reduce all loop general induction variables"
-msgstr ""
-
-#: toplev.c:1019
-msgid "Store strings in writable data section"
-msgstr ""
-
-#: toplev.c:1021
-msgid "Enable machine specific peephole optimizations"
-msgstr ""
-
-#: toplev.c:1023
-msgid "Copy memory operands into registers before using"
-msgstr ""
-
-#: toplev.c:1025
-msgid "Copy memory address constants into regs before using"
-msgstr ""
-
-#: toplev.c:1027
-msgid "Allow function addresses to be held in registers"
-msgstr ""
-
-#: toplev.c:1029
-msgid "Integrate simple functions into their callers"
-msgstr ""
-
-#: toplev.c:1031
-msgid "Generate code for funcs even if they are fully inlined"
-msgstr ""
-
-#: toplev.c:1033
-msgid "Pay attention to the 'inline' keyword"
-msgstr ""
-
-#: toplev.c:1035
-msgid "Emit static const variables even if they are not used"
-msgstr ""
-
-#: toplev.c:1037
-msgid "Check for syntax errors, then stop"
-msgstr "Leta efter syntaxfel, stoppa sedan"
-
-#: toplev.c:1039
-msgid "Mark data as shared rather than private"
-msgstr ""
-
-#: toplev.c:1041
-msgid "Enable saving registers around function calls"
-msgstr ""
-
-#: toplev.c:1043
-msgid "Return 'short' aggregates in memory, not registers"
-msgstr ""
-
-#: toplev.c:1045
-msgid "Return 'short' aggregates in registers"
-msgstr ""
-
-#: toplev.c:1047
-msgid "Attempt to fill delay slots of branch instructions"
-msgstr ""
-
-#: toplev.c:1049
-msgid "Perform the global common subexpression elimination"
-msgstr ""
-
-#: toplev.c:1051
-msgid "Perform enhanced load motion during global subexpression elimination"
-msgstr ""
-
-#: toplev.c:1053
-msgid "Perform store motion after global subexpression elimination"
-msgstr ""
-
-#: toplev.c:1055
-#, fuzzy
-msgid "Perform the loop optimizations"
-msgstr "Utför optimering för svansrekursion"
-
-#: toplev.c:1057
-#, fuzzy
-msgid "Perform cross-jumping optimization"
-msgstr "Utför optimering för svansrekursion"
-
-#: toplev.c:1059
-msgid "Perform conversion of conditional jumps to branchless equivalents"
-msgstr ""
-
-#: toplev.c:1061
-#, fuzzy
-msgid "Perform conversion of conditional jumps to conditional execution"
-msgstr "Föredra hopp framför villkorlig körning"
-
-#: toplev.c:1063
-msgid "Run CSE pass after loop optimizations"
-msgstr ""
-
-#: toplev.c:1065
-msgid "Run the loop optimizer twice"
-msgstr ""
-
-#: toplev.c:1067
-msgid "Delete useless null pointer checks"
-msgstr ""
-
-#: toplev.c:1069
-msgid "Reschedule instructions before register allocation"
-msgstr ""
-
-#: toplev.c:1071
-msgid "Reschedule instructions after register allocation"
-msgstr ""
-
-#: toplev.c:1073
-msgid "Enable scheduling across basic blocks"
-msgstr ""
-
-#: toplev.c:1075
-msgid "Allow speculative motion of non-loads"
-msgstr ""
-
-#: toplev.c:1077
-msgid "Allow speculative motion of some loads"
-msgstr ""
-
-#: toplev.c:1079
-msgid "Allow speculative motion of more loads"
-msgstr ""
-
-#: toplev.c:1081
-msgid "Replace add,compare,branch with branch on count reg"
-msgstr ""
-
-#: toplev.c:1083
-msgid "Generate position independent code, if possible"
-msgstr ""
-
-#: toplev.c:1086
-msgid "Enable exception handling"
-msgstr ""
-
-#: toplev.c:1088
-msgid "Just generate unwind tables for exception handling"
-msgstr ""
-
-#: toplev.c:1090
-msgid "Generate unwind tables exact at each instruction boundary"
-msgstr ""
-
-#: toplev.c:1092
-msgid "Support synchronous non-call exceptions"
-msgstr ""
-
-#: toplev.c:1094
-msgid "Insert arc based program profiling code"
-msgstr ""
-
-#: toplev.c:1096
-msgid "Create data files needed by gcov"
-msgstr ""
-
-#: toplev.c:1098
-msgid "Use profiling information for branch probabilities"
-msgstr ""
-
-#: toplev.c:1100
-msgid "Enable basic program profiling code"
-msgstr ""
-
-#: toplev.c:1102
-msgid "Reorder basic blocks to improve code placement"
-msgstr ""
-
-#: toplev.c:1104
-msgid "Reorder functions to improve code placement"
-msgstr ""
-
-#: toplev.c:1106
-msgid "Do the register renaming optimization pass"
-msgstr ""
-
-#: toplev.c:1108
-msgid "Do the register copy-propagation optimization pass"
-msgstr ""
-
-#: toplev.c:1110
-msgid "Do not put uninitialized globals in the common section"
-msgstr ""
-
-#: toplev.c:1112
-msgid "Do not generate .size directives"
-msgstr "Generera inte .size-direktiv"
-
-#: toplev.c:1114
-msgid "place each function into its own section"
-msgstr "placera varje funktion i sin egen sektion"
-
-#: toplev.c:1116
-msgid "place data items into their own section"
-msgstr ""
-
-#: toplev.c:1118
-msgid "Add extra commentary to assembler output"
-msgstr ""
-
-#: toplev.c:1120
-msgid "Output GNU ld formatted global initializers"
-msgstr ""
-
-#: toplev.c:1122
-msgid "Enables a register move optimization"
-msgstr ""
-
-#: toplev.c:1124
-msgid "Do the full regmove optimization pass"
-msgstr ""
-
-#: toplev.c:1126
-msgid "Pack structure members together without holes"
-msgstr ""
-
-#: toplev.c:1128
-msgid "Insert stack checking code into the program"
-msgstr ""
-
-#: toplev.c:1130
-msgid "Specify that arguments may alias each other & globals"
-msgstr ""
-
-#: toplev.c:1132
-msgid "Assume arguments may alias globals but not each other"
-msgstr ""
-
-#: toplev.c:1134
-msgid "Assume arguments do not alias each other or globals"
-msgstr ""
-
-#: toplev.c:1136
-msgid "Assume strict aliasing rules apply"
-msgstr ""
-
-#: toplev.c:1138
-msgid "Align the start of loops"
-msgstr ""
-
-#: toplev.c:1140
-msgid "Align labels which are only reached by jumping"
-msgstr ""
-
-#: toplev.c:1142
-msgid "Align all labels"
-msgstr ""
-
-#: toplev.c:1144
-msgid "Align the start of functions"
-msgstr ""
-
-#: toplev.c:1146
-msgid "Attempt to merge identical constants across compilation units"
-msgstr ""
-
-#: toplev.c:1148
-msgid "Attempt to merge identical constants and constant variables"
-msgstr ""
-
-#: toplev.c:1150
-msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
-msgstr ""
-
-#: toplev.c:1152
-msgid "Instrument function entry/exit with profiling calls"
-msgstr ""
-
-#: toplev.c:1154
-msgid "Put zero initialized data in the bss section"
-msgstr ""
-
-#: toplev.c:1156
-msgid "Enable SSA optimizations"
-msgstr ""
-
-#: toplev.c:1158
-msgid "Enable SSA conditional constant propagation"
-msgstr ""
-
-#: toplev.c:1160
-msgid "Enable aggressive SSA dead code elimination"
-msgstr ""
-
-#: toplev.c:1162
-msgid "External symbols have a leading underscore"
-msgstr "Externa symboler startar med en understrykning"
-
-#: toplev.c:1164
-msgid "Process #ident directives"
-msgstr "Hantera #ident-direktiv"
-
-#: toplev.c:1166
-msgid "Enables an rtl peephole pass run before sched2"
-msgstr ""
-
-#: toplev.c:1168
-msgid "Assume no NaNs or +-Infs are generated"
-msgstr ""
-
-#: toplev.c:1170
-msgid "Enables guessing of branch probabilities"
-msgstr ""
-
-#: toplev.c:1172
-msgid "Set errno after built-in math functions"
-msgstr "Sätt errno efter inbyggda matematikfunktioner"
-
-#: toplev.c:1174
-msgid "Floating-point operations can trap"
-msgstr ""
-
-#: toplev.c:1176
-msgid "Allow math optimizations that may violate IEEE or ANSI standards"
-msgstr ""
-
-#: toplev.c:1178
-msgid "Disable optimizations observable by IEEE signaling NaNs"
-msgstr ""
-
-#: toplev.c:1180
-#, fuzzy
-msgid "Generate code to check bounds before indexing arrays"
-msgstr "Generera kod för Intel as"
-
-#: toplev.c:1182
-msgid "Convert floating point constant to single precision constant"
-msgstr ""
-
-#: toplev.c:1184
-msgid "Report time taken by each compiler pass at end of run"
-msgstr ""
-
-#: toplev.c:1186
-msgid "Report on permanent memory allocation at end of run"
-msgstr ""
-
-#: toplev.c:1188
-msgid "Trap for signed overflow in addition / subtraction / multiplication"
-msgstr ""
-
-#: toplev.c:1190
-msgid "Use graph coloring register allocation."
-msgstr ""
-
-#: toplev.c:1207
-msgid "Compile just for ISO C90"
-msgstr ""
-
-#: toplev.c:1209
-msgid "Determine language standard"
-msgstr ""
-
-#: toplev.c:1213
-msgid "Make bit-fields by unsigned by default"
-msgstr ""
-
-#: toplev.c:1217
-msgid "Make 'char' be signed by default"
-msgstr ""
-
-#: toplev.c:1219
-msgid "Make 'char' be unsigned by default"
-msgstr ""
-
-#: toplev.c:1225
-msgid "Do not recognize the 'asm' keyword"
-msgstr ""
+#: toplev.c:1226
+#, c-format
+msgid "%s "
+msgstr "%s "
#: toplev.c:1228
-#, fuzzy
-msgid "Do not recognize any built in functions"
-msgstr "Känn inte igen några inbyggda funktioner"
-
-#: toplev.c:1230
-msgid "Assume normal C execution environment"
-msgstr ""
-
-#: toplev.c:1233
-msgid "Assume that standard libraries & main might not exist"
-msgstr ""
-
-#: toplev.c:1236
-msgid "Allow different types as args of ? operator"
-msgstr ""
-
-#: toplev.c:1239
-msgid "Allow the use of $ inside identifiers"
-msgstr ""
-
-#: toplev.c:1244
-msgid "Use the same size for double as for float"
-msgstr ""
-
-#: toplev.c:1247
-msgid "Use the smallest fitting integer to hold enums"
-msgstr ""
-
-#: toplev.c:1250
-msgid "Override the underlying type for wchar_t to `unsigned short'"
-msgstr ""
-
-#: toplev.c:1254
-msgid "Enable most warning messages"
-msgstr ""
-
-#: toplev.c:1256
-msgid "Warn about casting functions to incompatible types"
-msgstr ""
-
-#: toplev.c:1259
-msgid "Warn about functions which might be candidates for format attributes"
-msgstr ""
-
-#: toplev.c:1262
-msgid "Warn about casts which discard qualifiers"
-msgstr ""
-
-#: toplev.c:1265
-msgid "Warn about subscripts whose type is 'char'"
-msgstr "Varna om index har typen \"char\""
-
-#: toplev.c:1268 toplev.c:1271
-msgid "Warn if nested comments are detected"
-msgstr "Varna om nästlade kommentarer upptäcks"
-
-#: toplev.c:1274
-msgid "Warn about possibly confusing type conversions"
-msgstr ""
-
-#: toplev.c:1278
-#, fuzzy
-msgid "Do not warn about compile-time integer division by zero"
-msgstr "Fånga inte heltalsdivision med noll"
-
-#: toplev.c:1280
-msgid "Warn about testing equality of floating point numbers"
-msgstr ""
-
-#: toplev.c:1283
-msgid "Warn about printf/scanf/strftime/strfmon format anomalies"
-msgstr ""
-
-#: toplev.c:1287
-msgid "Don't warn about too many arguments to format functions"
-msgstr "Varna inte om för många argument till format-funktioner"
-
-#: toplev.c:1289
-msgid "Warn about non-string-literal format strings"
-msgstr ""
-
-#: toplev.c:1292
-msgid "Warn about possible security problems with format functions"
-msgstr ""
-
-#: toplev.c:1296
-msgid "Don't warn about strftime formats yielding 2 digit years"
-msgstr ""
-
-#: toplev.c:1298
-msgid "Warn about implicit function declarations"
-msgstr ""
-
-#: toplev.c:1302
-msgid "Warn when a declaration does not specify a type"
-msgstr ""
-
-#: toplev.c:1307
-msgid "Warn about the use of the #import directive"
-msgstr ""
-
-#: toplev.c:1311
-msgid "Do not warn about using 'long long' when -pedantic"
-msgstr ""
-
-#: toplev.c:1313
-msgid "Warn about suspicious declarations of main"
-msgstr "Varna om tveksamma deklarationer av main"
-
-#: toplev.c:1316
-#, fuzzy
-msgid "Warn about possibly missing braces around initializers"
-msgstr "Varna om eventuellt saknade parenteser"
-
-#: toplev.c:1319
-msgid "Warn about global funcs without previous declarations"
-msgstr ""
-
-#: toplev.c:1322
-msgid "Warn about global funcs without prototypes"
-msgstr ""
-
-#: toplev.c:1325
-msgid "Warn about use of multicharacter literals"
-msgstr ""
-
-#: toplev.c:1328
-msgid "Warn about externs not at file scope level"
-msgstr ""
-
-#: toplev.c:1331
-msgid "Warn about possible missing parentheses"
-msgstr "Varna om eventuellt saknade parenteser"
-
-#: toplev.c:1334
-msgid "Warn about function pointer arithmetic"
-msgstr "Varna om aritmetik med funktionspekare"
-
-#: toplev.c:1337
-msgid "Warn about multiple declarations of the same object"
-msgstr "Varna om multipla deklarationer av samma objekt"
-
-#: toplev.c:1340
-#, fuzzy
-msgid "Warn whenever a function's return-type defaults to int"
-msgstr "returtyp sätts till \"int\""
-
-#: toplev.c:1343
-msgid "Warn about possible violations of sequence point rules"
-msgstr ""
-
-#: toplev.c:1346
-msgid "Warn about signed/unsigned comparisons"
-msgstr "Varna om jämförelser mellan signed/unsigned"
-
-#: toplev.c:1349
-msgid "Warn about non-prototyped function decls"
-msgstr ""
-
-#: toplev.c:1352
-#, fuzzy
-msgid "Warn about constructs whose meanings change in ISO C"
-msgstr "Varna om index har typen \"char\""
-
-#: toplev.c:1355
-msgid "Warn when trigraphs are encountered"
-msgstr ""
-
-#: toplev.c:1360
-msgid "Warn about unrecognized pragmas"
-msgstr ""
-
-#: toplev.c:1363
-msgid "Mark strings as 'const char *'"
-msgstr "Markera strängar som \"const char *\""
-
-#: toplev.c:1508
-msgid "Warn when a function is unused"
-msgstr "Varna när en funktion är oanvänd"
-
-#: toplev.c:1510
-msgid "Warn when a label is unused"
-msgstr "Varna när en etikett är oanvänd"
-
-#: toplev.c:1512
-msgid "Warn when a function parameter is unused"
-msgstr "Varna när en funktionsparameter är oanvänd"
-
-#: toplev.c:1514
-msgid "Warn when a variable is unused"
-msgstr "Varna när en variabel är oanvänd"
-
-#: toplev.c:1516
-msgid "Warn when an expression value is unused"
-msgstr "Varna när ett uttrycksvärde är oanvänt"
-
-#: toplev.c:1518
-msgid "Do not suppress warnings from system headers"
-msgstr ""
-
-#: toplev.c:1520
-msgid "Treat all warnings as errors"
-msgstr ""
-
-#: toplev.c:1522
-msgid "Warn when one local variable shadows another"
-msgstr ""
-
-#: toplev.c:1524
-msgid "Warn about enumerated switches, with no default, missing a case"
-msgstr ""
-
-#: toplev.c:1526
-#, fuzzy
-msgid "Warn about enumerated switches missing a default case"
-msgstr "Varna om eventuellt saknade parenteser"
-
-#: toplev.c:1528
-msgid "Warn about all enumerated switches missing a specific case"
-msgstr ""
-
-#: toplev.c:1530
-msgid "Warn about returning structures, unions or arrays"
-msgstr ""
-
-#: toplev.c:1532
-msgid "Warn about pointer casts which increase alignment"
-msgstr ""
-
-#: toplev.c:1534
-msgid "Warn about code that will never be executed"
-msgstr ""
-
-#: toplev.c:1536
-#, fuzzy
-msgid "Warn about uninitialized automatic variables"
-msgstr "Varna om aritmetik med funktionspekare"
-
-#: toplev.c:1538
-msgid "Warn when an inlined function cannot be inlined"
-msgstr ""
-
-#: toplev.c:1540
-msgid "Warn when the packed attribute has no effect on struct layout"
-msgstr ""
-
-#: toplev.c:1542
-msgid "Warn when padding is required to align struct members"
-msgstr ""
-
-#: toplev.c:1544
-msgid "Warn when an optimization pass is disabled"
-msgstr ""
-
-#: toplev.c:1546
-msgid "Warn about uses of __attribute__((deprecated)) declarations"
-msgstr ""
-
-#: toplev.c:1548
-msgid "Warn about functions which might be candidates for attribute noreturn"
-msgstr "Varna om funktioner som är möjliga kandidater för attributet noreturn"
-
-#: toplev.c:1550
-#, fuzzy
-msgid "Warn about code which might break the strict aliasing rules"
-msgstr "Varna om funktioner som är möjliga kandidater för attributet noreturn"
+#, c-format
+msgid " %s"
+msgstr " %s"
-#: toplev.c:1627 toplev.c:4548 config/rs6000/rs6000.c:680
+#: toplev.c:1293
#, fuzzy, c-format
-msgid "invalid option `%s'"
+msgid "invalid option argument `%s'"
msgstr "Ogiltig flagga \"%s\""
-#: toplev.c:2031
+#: toplev.c:1356
#, c-format
-msgid "`%s' used but never defined"
-msgstr "\"%s\" är använd men inte definierad"
-
-#: toplev.c:2034
-#, c-format
-msgid "`%s' declared `static' but never defined"
-msgstr "\"%s\" är deklarerad som \"static\" men definieras aldrig"
-
-#: toplev.c:2057
-#, c-format
-msgid "`%s' defined but not used"
-msgstr "\"%s\" är definierad men inte använd"
-
-#: toplev.c:2280
-#, c-format
-msgid "invalid register name `%s' for register variable"
-msgstr ""
-
-#: toplev.c:3697
-msgid " -ffixed-<register> Mark <register> as being unavailable to the compiler\n"
-msgstr " -ffixed-<register> Markera <register> som ej tillgängligt för kompilatorn\n"
-
-#: toplev.c:3698
-msgid " -fcall-used-<register> Mark <register> as being corrupted by function calls\n"
-msgstr " -fcall-used-<register> Ange att <register> förstörs av funktionsanrop\n"
-
-#: toplev.c:3699
-msgid " -fcall-saved-<register> Mark <register> as being preserved across functions\n"
-msgstr " -fcall-saved-<register> Ange att <register> bevaras av funktioner\n"
-
-#: toplev.c:3700
-msgid " -finline-limit=<number> Limits the size of inlined functions to <number>\n"
-msgstr " -finline-limit=<nummer> Begränsa storlek på inline-funktioner till <nummer>\n"
-
-#: toplev.c:3701
-msgid " -fmessage-length=<number> Limits diagnostics messages lengths to <number> characters per line. 0 suppresses line-wrapping\n"
-msgstr " -fmessage-length=<nummer> Begränsa felmeddelandens längd till <nummer> tecken per rad. 0 stänger av radbrytning\n"
-
-#: toplev.c:3702
-msgid " -fdiagnostics-show-location=[once | every-line] Indicates how often source location information should be emitted, as prefix, at the beginning of diagnostics when line-wrapping\n"
-msgstr " -fdiagnostics-show-location=[once | every-line] Anger hur ofta källkodspositioner skall skrivas ut, som prefix, i början av utskrift vid radbrytning\n"
-
-#: toplev.c:3703
-msgid " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indicates the default thread-local storage code generation model\n"
-msgstr ""
-
-#: toplev.c:3704
-msgid " -fstack-limit-register=<register> Trap if the stack goes past <register>\n"
+msgid "getting core file size maximum limit: %m"
msgstr ""
-#: toplev.c:3705
-msgid " -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>\n"
-msgstr ""
-
-#: toplev.c:3706
-msgid " -frandom-seed=<string> Make compile reproducible using <string>\n"
+#: toplev.c:1359
+#, c-format
+msgid "setting core file size limit to maximum: %m"
msgstr ""
-#: toplev.c:3718
+#: toplev.c:1678
#, fuzzy
-msgid " -O[number] Set optimization level to [number]\n"
-msgstr " -O[nummer] Sätt optimeringsnivå till [nummer]\n"
+msgid "%J'%F' used but never defined"
+msgstr "\"%s\" är använd men inte definierad"
-#: toplev.c:3719
+#: toplev.c:1680
#, fuzzy
-msgid " -Os Optimize for space rather than speed\n"
-msgstr " -Os Optimera för storlek istället för hastighet\n"
-
-#: toplev.c:3731
-msgid " -pedantic Issue warnings needed by strict compliance to ISO C\n"
-msgstr " -pedantic Ge varningar som krävs för att strikt följa ISO C\n"
-
-#: toplev.c:3732
-msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
-msgstr " -pedantic-errors Som -pedantic men ger fel istället\n"
-
-#: toplev.c:3733
-msgid " -w Suppress warnings\n"
-msgstr " -w Stoppa varningar\n"
-
-#: toplev.c:3734
-msgid " -W Enable extra warnings\n"
-msgstr " -W Slå på extra varningar\n"
-
-#: toplev.c:3745
-msgid " -Wunused Enable unused warnings\n"
-msgstr " -Wunused Slå på oanvända varningar\n"
-
-#: toplev.c:3746
-msgid " -Wlarger-than-<number> Warn if an object is larger than <number> bytes\n"
-msgstr " -Wlarger-than-<nummer> Varna om objekt är större än <nummer> bytes\n"
-
-#: toplev.c:3747
-msgid " -p Enable function profiling\n"
-msgstr " -p Slå på funktionsprofilering\n"
+msgid "%J'%F' declared `static' but never defined"
+msgstr "\"%s\" är deklarerad som \"static\" men definieras aldrig"
-#: toplev.c:3748
-msgid " -o <file> Place output into <file> \n"
-msgstr " -o <fil> Skriv utdata i <fil> \n"
+#: toplev.c:1705
+#, fuzzy
+msgid "%J'%D' defined but not used"
+msgstr "\"%s\" är definierad men inte använd"
-#: toplev.c:3749
-msgid ""
-" -G <number> Put global and static data smaller than <number>\n"
-" bytes into a special section (on some targets)\n"
+#: toplev.c:1726 toplev.c:1743
+#, c-format
+msgid "`%s' is deprecated (declared at %s:%d)"
msgstr ""
-" -G <nummer> Placera global and statisk data mindre än <nummer>\n"
-" bytes i en speciell sektion (vissa arkitekturer)\n"
-
-#: toplev.c:3760
-msgid " -aux-info <file> Emit declaration info into <file>\n"
-msgstr " -aux-info <fil> Generera deklarationsinfo till fil <fil>\n"
-
-#: toplev.c:3761
-msgid " -quiet Do not display functions compiled or elapsed time\n"
-msgstr " -quiet Visa inte kompilerade funktioner eller tiden som förbrukats\n"
-
-#: toplev.c:3762
-msgid " -version Display the compiler's version\n"
-msgstr " -version Visa kompilatorns version\n"
-
-#: toplev.c:3763
-msgid " -d[letters] Enable dumps from specific passes of the compiler\n"
-msgstr " -d[bokstäver] Slå på dumpning från angivna delar av kompilatorn\n"
-#: toplev.c:3764
-msgid " -dumpbase <file> Base name to be used for dumps from specific passes\n"
-msgstr ""
+#: toplev.c:1746
+#, fuzzy, c-format
+msgid "`%s' is deprecated"
+msgstr "tredje argumentet till \"%s\" är inte länge rekommenderat"
-#: toplev.c:3766
-msgid " -fsched-verbose=<number> Set the verbosity level of the scheduler\n"
+#: toplev.c:1749
+#, c-format
+msgid "type is deprecated (declared at %s:%d)"
msgstr ""
-#: toplev.c:3768
-msgid " --help Display this information\n"
-msgstr " --help Visa den här informatationen\n"
-
-#: toplev.c:3783
-msgid ""
-"\n"
-"Language specific options:\n"
+#: toplev.c:1752
+msgid "type is deprecated"
msgstr ""
-#: toplev.c:3795
+#: toplev.c:1956
#, c-format
-msgid " %-23.23s [undocumented]\n"
-msgstr " %-23.23s [odokumenterad]\n"
-
-#: toplev.c:3803 toplev.c:3817
-#, c-format
-msgid ""
-"\n"
-"There are undocumented %s specific options as well.\n"
+msgid "invalid register name `%s' for register variable"
msgstr ""
-"\n"
-"Det finns dessutom odokumenterade %s-specifika flaggor.\n"
-#: toplev.c:3807
-#, c-format
-msgid ""
-"\n"
-" Options for %s:\n"
+#: toplev.c:3522
+msgid "branch target register load optimization is not intended to be run twice"
msgstr ""
-"\n"
-" Flaggor för %s:\n"
-#: toplev.c:3844
+#: toplev.c:3689
+#, c-format
msgid ""
"\n"
"Target specific options:\n"
@@ -8053,12 +7084,13 @@ msgstr ""
"\n"
"Speciella flaggor för målarkitektur:\n"
-#: toplev.c:3858 toplev.c:3877
-#, c-format
-msgid " -m%-23.23s [undocumented]\n"
+#: toplev.c:3703 toplev.c:3722
+#, fuzzy, c-format
+msgid " -m%-23s [undocumented]\n"
msgstr " -m%-23.23s [odokumenterad]\n"
-#: toplev.c:3886
+#: toplev.c:3731
+#, c-format
msgid ""
"\n"
"There are undocumented target specific options as well.\n"
@@ -8066,74 +7098,22 @@ msgstr ""
"\n"
"Det finns dessutom odokumenterade flaggor speciellt för målarkitekturen.\n"
-#: toplev.c:3888
+#: toplev.c:3733
+#, c-format
msgid " They exist, but they are not documented.\n"
msgstr " De finns, men är inte dokumenterade.\n"
-#: toplev.c:3941
+#: toplev.c:3788
#, c-format
msgid "unrecognized gcc debugging option: %c"
msgstr "ej igenkänd debuggningsflagga för gcc: %c"
-#: toplev.c:4007
-#, fuzzy, c-format
-msgid "`%s': unknown tls-model option"
-msgstr "\"%s\": okänd eller icke supportad flagga till -g"
-
-#: toplev.c:4034
-#, c-format
-msgid "unrecognized register name `%s'"
-msgstr "Känner inte igen registernamn \"%s\""
-
-#: toplev.c:4059 toplev.c:5012
+#: toplev.c:3850 config/rs6000/rs6000.c:909
#, fuzzy, c-format
-msgid "unrecognized option `%s'"
-msgstr "ej igenkänd flagga `-%s'"
-
-#: toplev.c:4107
-#, fuzzy
-msgid "-Wid-clash-LEN is no longer supported"
-msgstr "-f%s stödjs inte längre"
-
-#: toplev.c:4184
-#, c-format
-msgid "use -gdwarf -g%d for DWARF v1, level %d"
-msgstr ""
-
-#: toplev.c:4187
-msgid "use -gdwarf-2 for DWARF v2"
-msgstr ""
-
-#: toplev.c:4192
-#, c-format
-msgid "ignoring option `%s' due to invalid debug level specification"
-msgstr ""
-
-#: toplev.c:4215 toplev.c:5010
-#, c-format
-msgid "`%s': unknown or unsupported -g option"
-msgstr "\"%s\": okänd eller icke supportad flagga till -g"
-
-#: toplev.c:4222
-#, c-format
-msgid "`%s' ignored, conflicts with `-g%s'"
-msgstr "\"%s\" ignorerad, i konflikt med \"-g%s\""
-
-#: toplev.c:4304
-msgid "-param option missing argument"
-msgstr ""
-
-#: toplev.c:4313
-#, c-format
-msgid "invalid --param option: %s"
-msgstr "ogiltig flagga till --param: %s"
-
-#: toplev.c:4325
-#, c-format
-msgid "invalid parameter value `%s'"
-msgstr "ogiltigt parametervärde \"%s\""
+msgid "invalid option `%s'"
+msgstr "Ogiltig flagga \"%s\""
-#: toplev.c:4565
+#: toplev.c:3865
#, c-format
msgid ""
"%s%s%s version %s (%s)\n"
@@ -8141,532 +7121,684 @@ msgid ""
"%s%s%s version %s (%s) compiled by CC.\n"
msgstr ""
-#: toplev.c:4572
+#: toplev.c:3872
#, c-format
msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
msgstr ""
-#: toplev.c:4630
+#: toplev.c:3924
msgid "options passed: "
msgstr ""
-#: toplev.c:4659
+#: toplev.c:3953
msgid "options enabled: "
msgstr ""
-#: toplev.c:4718 java/jcf-write.c:3453
-#, c-format
-msgid "can't open %s for writing"
+#: toplev.c:4011 java/jcf-write.c:3422
+#, fuzzy, c-format
+msgid "can't open %s for writing: %m"
msgstr "kan inte öppna fil %s för skrivning"
-#: toplev.c:5002
-#, fuzzy, c-format
-msgid "ignoring command line option '%s'"
-msgstr "Ignorerar kommandoradsflagga \"%s\""
+#: toplev.c:4094 config/sh/sh.c:6883
+msgid "created and used with different settings of -fpic"
+msgstr ""
-#: toplev.c:5005
-#, c-format
-msgid "(it is valid for %s but not the selected language)"
+#: toplev.c:4096 config/sh/sh.c:6885
+msgid "created and used with different settings of -fpie"
msgstr ""
-#: toplev.c:5039
-msgid "-Wuninitialized is not supported without -O"
+#: toplev.c:4147 config/sh/sh.c:6935
+#, c-format
+msgid "created and used with differing settings of `-m%s'"
msgstr ""
-#: toplev.c:5094
+#: toplev.c:4150 config/sh/sh.c:6938
+#, fuzzy
+msgid "out of memory"
+msgstr "inget minne"
+
+#: toplev.c:4331
msgid "instruction scheduling not supported on this target machine"
msgstr ""
-#: toplev.c:5098
+#: toplev.c:4335
msgid "this target machine does not have delayed branches"
msgstr ""
-#: toplev.c:5112
+#: toplev.c:4349
#, c-format
msgid "-f%sleading-underscore not supported on this target machine"
msgstr ""
-#: toplev.c:5175
+#: toplev.c:4398
+#, fuzzy, c-format
+msgid "target system does not support the \"%s\" debug format"
+msgstr "ISO C89 stöder inte \\\"%%%c\\\" i %s formatsträng"
+
+#: toplev.c:4415
#, fuzzy
msgid "-ffunction-sections not supported for this target"
msgstr "attributet \"section\" stöds inte för denna målarkitektur"
-#: toplev.c:5180
+#: toplev.c:4420
#, fuzzy
msgid "-fdata-sections not supported for this target"
msgstr "-fdata-sections stöds inte för AIX"
-#: toplev.c:5187
+#: toplev.c:4427
msgid "-ffunction-sections disabled; it makes profiling impossible"
msgstr ""
-#: toplev.c:5194
+#: toplev.c:4434
#, fuzzy
msgid "-fprefetch-loop-arrays not supported for this target"
msgstr "attributet \"section\" stöds inte för denna målarkitektur"
-#: toplev.c:5200
+#: toplev.c:4440
msgid "-fprefetch-loop-arrays not supported for this target (try -march switches)"
msgstr ""
-#: toplev.c:5209
+#: toplev.c:4449
#, fuzzy
msgid "-fprefetch-loop-arrays is not supported with -Os"
msgstr "profilering stöds inte tillsammans med -mg\n"
-#: toplev.c:5215
+#: toplev.c:4455
msgid "-ffunction-sections may affect debugging on some targets"
msgstr ""
-#: toplev.c:5327
-#, c-format
-msgid "error writing to %s"
+#: toplev.c:4557
+#, fuzzy, c-format
+msgid "error writing to %s: %m"
msgstr "fel vid skrivning till %s"
-#: toplev.c:5329 java/jcf-parse.c:936 java/jcf-write.c:3460
-#, c-format
-msgid "error closing %s"
+#: toplev.c:4559 java/jcf-parse.c:902 java/jcf-write.c:3429
+#, fuzzy, c-format
+msgid "error closing %s: %m"
msgstr "fel vid stängning av %s"
-#: tree-dump.c:702
+#: tree-dump.c:692
#, c-format
msgid "could not open dump file `%s'"
msgstr "kunde inte öppna dump-fil \"%s\""
-#: tree-dump.c:778
+#: tree-dump.c:763
#, fuzzy, c-format
-msgid "ignoring unknown option `%.*s' in `-f%s'"
+msgid "ignoring unknown option `%.*s' in `-fdump-%s'"
msgstr "Ignorerar kommandoradsflagga \"%s\""
-#: tree.c:3645
+#: tree-inline.c:1016
+msgid "%Jfunction '%F' can never be inlined because it uses alloca (override using the always_inline attribute)"
+msgstr ""
+
+#: tree-inline.c:1029
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp"
+msgstr ""
+
+#: tree-inline.c:1044
+msgid "%Jfunction '%F' can never be inlined because it uses variable argument lists"
+msgstr ""
+
+#: tree-inline.c:1060
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp-longjmp exception handling"
+msgstr ""
+
+#: tree-inline.c:1078
+msgid "%Jfunction '%F' can never be inlined because it contains a nested function"
+msgstr ""
+
+#: tree-inline.c:1095
+msgid "%Jfunction '%F' can never be inlined because it contains a computed goto"
+msgstr ""
+
+#: tree-inline.c:1105
+msgid "%Jfunction '%F' can never be inlined because it contains a nonlocal goto"
+msgstr ""
+
+#: tree-inline.c:1128
+msgid "%Jfunction '%F' can never be inlined because it uses variable sized variables"
+msgstr ""
+
+#: tree-inline.c:1338 tree-inline.c:1345
+#, fuzzy
+msgid "%Jinlining failed in call to '%F': %s"
+msgstr "inlining misslyckades i anrop av \"%s\""
+
+#: tree-optimize.c:190
+#, fuzzy
+msgid "%Jsize of return value of '%D' is %u bytes"
+msgstr "storleken på returvärdet från \"%s\" är %u bytes"
+
+#: tree-optimize.c:193
+#, fuzzy
+msgid "%Jsize of return value of '%D' is larger than %wd bytes"
+msgstr "storleken på returvärdet från \"%s\" är större än %d bytes"
+
+#: tree.c:3800
msgid "arrays of functions are not meaningful"
msgstr ""
-#: tree.c:3702
+#: tree.c:3855
msgid "function return type cannot be function"
msgstr ""
-#: tree.c:4557
+#: tree.c:4684
msgid "invalid initializer for bit string"
msgstr ""
-#: tree.c:4616
+#: tree.c:4736
#, c-format
msgid "tree check: expected %s, have %s in %s, at %s:%d"
msgstr ""
-#: tree.c:4633
+#: tree.c:4749
#, c-format
msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d"
msgstr ""
-#: tree.c:4650
+#: tree.c:4762
#, c-format
msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
msgstr ""
-#: varasm.c:455 config/i386/winnt.c:611
+#: tree.c:4774
#, c-format
-msgid "%s causes a section type conflict"
+msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
msgstr ""
-#: varasm.c:841
-#, c-format
-msgid "register name not specified for `%s'"
+#: varasm.c:434
+msgid "%J%D causes a section type conflict"
msgstr ""
-#: varasm.c:843
-#, c-format
-msgid "invalid register name for `%s'"
-msgstr ""
+#: varasm.c:796
+#, fuzzy
+msgid "%Jregister name not specified for '%D'"
+msgstr "minnesjustering kan inte anges för \"%s\""
-#: varasm.c:846
-#, c-format
-msgid "data type of `%s' isn't suitable for a register"
+#: varasm.c:798
+#, fuzzy
+msgid "%Jinvalid register name for '%D'"
+msgstr "ogiltig mottagartyp \"%s\""
+
+#: varasm.c:800
+msgid "%Jdata type of '%D' isn't suitable for a register"
msgstr ""
-#: varasm.c:849
-#, c-format
-msgid "register specified for `%s' isn't suitable for data type"
+#: varasm.c:803
+msgid "%Jregister specified for '%D' isn't suitable for data type"
msgstr ""
-#: varasm.c:858
+#: varasm.c:813
msgid "global register variable has initial value"
msgstr "global registervariabel har startvärde"
-#: varasm.c:861
+#: varasm.c:816
msgid "volatile register variables don't work as you might wish"
msgstr ""
-#: varasm.c:894
-#, c-format
-msgid "register name given for non-register variable `%s'"
+#: varasm.c:848
+msgid "%Jregister name given for non-register variable '%D'"
msgstr ""
-#: varasm.c:1542
-#, c-format
-msgid "alignment of `%s' is greater than maximum object file alignment. Using %d"
-msgstr ""
+#: varasm.c:1380
+#, fuzzy
+msgid "%Jstorage size of `%D' isn't known"
+msgstr "lagringsstorlek på \"%s\" är okänd"
-#: varasm.c:1584
+#: varasm.c:1434
+#, fuzzy
+msgid "%Jalignment of '%D' is greater than maximum object file alignment. Using %d"
+msgstr "efterrågad minnesjustering är inte en potens av 2"
+
+#: varasm.c:1480
msgid "thread-local COMMON data not implemented"
msgstr ""
-#: varasm.c:1610
-#, fuzzy, c-format
-msgid "requested alignment for %s is greater than implemented alignment of %d"
+#: varasm.c:1505
+#, fuzzy
+msgid "%Jrequested alignment for '%D' is greater than implemented alignment of %d"
msgstr "efterrågad minnesjustering är inte en potens av 2"
-#: varasm.c:4048
+#: varasm.c:3787
msgid "initializer for integer value is too complicated"
msgstr ""
-#: varasm.c:4053
+#: varasm.c:3792
msgid "initializer for floating value is not a floating constant"
msgstr ""
-#: varasm.c:4120
+#: varasm.c:3858
msgid "unknown set constructor type"
msgstr ""
-#: varasm.c:4334
+#: varasm.c:4077
#, c-format
msgid "invalid initial value for member `%s'"
msgstr ""
-#: varasm.c:4525 varasm.c:4568
-#, c-format
-msgid "weak declaration of `%s' must precede definition"
-msgstr ""
+#: varasm.c:4264 varasm.c:4308
+#, fuzzy
+msgid "%Jweak declaration of '%D' must precede definition"
+msgstr "omdeklaration av \"%s\""
-#: varasm.c:4532
-#, c-format
-msgid "weak declaration of `%s' after first use results in unspecified behavior"
+#: varasm.c:4272
+msgid "%Jweak declaration of '%D' after first use results in unspecified behavior"
msgstr ""
-#: varasm.c:4566
-#, c-format
-msgid "weak declaration of `%s' must be public"
-msgstr ""
+#: varasm.c:4306
+#, fuzzy
+msgid "%Jweak declaration of '%D' must be public"
+msgstr "omdeklaration av \"%s\""
-#: varasm.c:4575
-#, fuzzy, c-format
-msgid "weak declaration of `%s' not supported"
+#: varasm.c:4315
+#, fuzzy
+msgid "%Jweak declaration of '%D' not supported"
msgstr "omdeklaration av \"%s\""
-#: varasm.c:4602 varasm.c:4677
+#: varasm.c:4344 varasm.c:4434
msgid "only weak aliases are supported in this configuration"
msgstr ""
-#: varasm.c:4685
+#: varasm.c:4437
msgid "alias definitions not supported in this configuration; ignored"
msgstr ""
-#: varasm.c:4716
+#: varasm.c:4466
#, fuzzy
msgid "visibility attribute not supported in this configuration; ignored"
msgstr "attributet \"section\" stöds inte för denna målarkitektur"
-#: varray.c:134
+#: varray.c:194
#, c-format
msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d"
msgstr ""
+#: varray.c:204
+#, fuzzy, c-format
+msgid "underflowed virtual array %s in %s, at %s:%d"
+msgstr "Internt kompilatorfel i %s, vid %s:%d"
+
#. Print an error message for unrecognized stab codes.
-#: xcoffout.c:175
+#: xcoffout.c:173
#, c-format
msgid "no sclass for %s stab (0x%x)\n"
msgstr ""
-#: pretty-print.h:97
-#, fuzzy, c-format
-msgid "#`%s' not supported by %s#"
-msgstr "\"%s\" stöds inte av %s"
+#.
+#. Local variables:
+#. mode:c
+#. End:
+#.
+#: diagnostic.def:1
+#, fuzzy
+msgid "fatal error: "
+msgstr "internt fel: "
-#: params.def:53
-msgid "The maximum number of instructions in a single function eligible for inlining"
+#: diagnostic.def:2
+#, fuzzy
+msgid "internal compiler error: "
+msgstr "internt fel: "
+
+#: diagnostic.def:3
+#, fuzzy
+msgid "error: "
+msgstr "internt fel: "
+
+#: diagnostic.def:4
+#, fuzzy
+msgid "sorry, unimplemented: "
+msgstr "ledsen, inte implementerat: "
+
+#: diagnostic.def:6
+msgid "anachronism: "
msgstr ""
-#: params.def:65
-msgid "The maximum number of instructions when automatically inlining"
+#: diagnostic.def:7
+msgid "note: "
msgstr ""
-#: params.def:84
-msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
+#: diagnostic.def:8
+msgid "debug: "
msgstr ""
-#: params.def:97
-msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
+#: params.def:53
+msgid "The maximum number of instructions in a single function eligible for inlining"
msgstr ""
-#: params.def:110
-msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
+#: params.def:65
+msgid "The maximum number of instructions when automatically inlining"
msgstr ""
-#: params.def:120
+#: params.def:75
msgid "The maximum number of instructions for the RTL inliner"
msgstr ""
-#: params.def:131
+#: params.def:86
msgid "The maximum number of instructions to consider to fill a delay slot"
msgstr ""
-#: params.def:142
+#: params.def:97
msgid "The maximum number of instructions to consider to find accurate live register information"
msgstr ""
-#: params.def:152
+#: params.def:107
msgid "The maximum length of scheduling's pending operations list"
msgstr ""
-#: params.def:159
+#: params.def:112
+msgid "The size of function body to be considered large"
+msgstr ""
+
+#: params.def:116
+msgid "Maximal growth due to inlining of large function (in percent)"
+msgstr ""
+
+#: params.def:120
+msgid "how much can given compilation unit grow because of the inlining (in percent)"
+msgstr ""
+
+#: params.def:127
msgid "The maximum amount of memory to be allocated by GCSE"
msgstr ""
-#: params.def:164
+#: params.def:132
msgid "The maximum number of passes to make when doing GCSE"
msgstr ""
-#: params.def:171
+#: params.def:139
msgid "The maximum number of instructions to consider to unroll in a loop"
msgstr ""
-#: params.def:176
-msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
+#: params.def:145
+msgid "The maximum number of instructions to consider to unroll in a loop on average"
+msgstr ""
+
+#: params.def:150
+msgid "The maximum number of unrollings of a single loop"
+msgstr ""
+
+#: params.def:155
+msgid "The maximum number of insns of a peeled loop"
+msgstr ""
+
+#: params.def:160
+msgid "The maximum number of peelings of a single loop"
+msgstr ""
+
+#: params.def:165
+msgid "The maximum number of insns of a completely peeled loop"
+msgstr ""
+
+#: params.def:170
+msgid "The maximum number of peelings of a single loop that is peeled completely"
+msgstr ""
+
+#: params.def:175
+msgid "The maximum number of insns of a peeled loop that rolls only once"
msgstr ""
#: params.def:181
-msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
+msgid "The maximum number of insns of an unswitched loop"
msgstr ""
#: params.def:186
-msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
+msgid "The maximum number of unswitchings in a single loop"
msgstr ""
#: params.def:191
-msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
+msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
msgstr ""
#: params.def:196
-msgid "Maximal code growth caused by tail duplication (in percents)"
+msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
+msgstr ""
+
+#: params.def:201
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
+msgstr ""
+
+#: params.def:206
+msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
+msgstr ""
+
+#: params.def:211
+msgid "Maximal code growth caused by tail duplication (in percent)"
msgstr ""
-#: params.def:200
-msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percents)"
+#: params.def:215
+msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent)"
msgstr ""
-#: params.def:205
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is available"
+#: params.def:220
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is available"
msgstr ""
-#: params.def:210
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is not available"
+#: params.def:225
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is not available"
msgstr ""
-#: params.def:217
+#: params.def:232
msgid "The maximum number of incoming edges to consider for crossjumping"
msgstr ""
-#: params.def:230
-msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap."
+#: params.def:238
+msgid "The maximum length of path considered in cse"
+msgstr ""
+
+#: params.def:243
+msgid "The maximum memory locations recorded by cselib"
+msgstr ""
+
+#: params.def:256
+msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap"
+msgstr ""
+
+#: params.def:262
+msgid "Minimum heap size before we start collecting garbage, in kilobytes"
msgstr ""
-#: params.def:236
-msgid "Minimum heap size before we start collecting garbage, in kilobytes."
+#: params.def:270
+msgid "The maximum number of instructions to search backward when looking for equivalent reload"
msgstr ""
#: config/darwin-c.c:75
msgid "too many #pragma options align=reset"
msgstr ""
-#: config/darwin-c.c:97 config/darwin-c.c:100 config/darwin-c.c:102
-#: config/darwin-c.c:104
+#: config/darwin-c.c:95 config/darwin-c.c:98 config/darwin-c.c:100
+#: config/darwin-c.c:102
msgid "malformed '#pragma options', ignoring"
msgstr ""
-#: config/darwin-c.c:107
+#: config/darwin-c.c:105
#, fuzzy
msgid "junk at end of '#pragma options'"
msgstr "skräp vid slutet av \"#pragma %s\""
-#: config/darwin-c.c:117
+#: config/darwin-c.c:115
msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring"
msgstr ""
-#: config/darwin-c.c:130
+#: config/darwin-c.c:127
#, fuzzy
msgid "missing '(' after '#pragma unused', ignoring"
msgstr "saknas '(' efter predikat"
-#: config/darwin-c.c:148
+#: config/darwin-c.c:145
#, fuzzy
msgid "missing ')' after '#pragma unused', ignoring"
msgstr "saknas '(' efter predikat"
-#: config/darwin-c.c:151
+#: config/darwin-c.c:148
#, fuzzy
msgid "junk at end of '#pragma unused'"
msgstr "skräp vid slutet av \"#pragma %s\""
-#: config/lynx-ng.h:97 config/lynx.h:121 config/rs6000/lynx.h:100
+#: config/darwin.c:1347
+msgid "internal and protected visibility attributes not supportedin this configuration; ignored"
+msgstr ""
+
+#: config/lynx-ng.h:97 config/lynx.h:116 config/rs6000/lynx.h:73
msgid "-msystem-v and -p are incompatible"
msgstr ""
-#: config/lynx-ng.h:99 config/lynx.h:123 config/rs6000/lynx.h:102
+#: config/lynx-ng.h:99 config/lynx.h:118 config/rs6000/lynx.h:75
msgid "-msystem-v and -mthreads are incompatible"
msgstr ""
-#: config/alpha/alpha.c:342
+#: config/windiss.h:37
+msgid "profiler support for WindISS"
+msgstr ""
+
+#: config/alpha/alpha.c:231
#, fuzzy, c-format
msgid "-f%s ignored for Unicos/Mk (not supported)"
msgstr "-pipe stöds inte."
-#: config/alpha/alpha.c:366
+#: config/alpha/alpha.c:255
#, fuzzy
msgid "-mieee not supported on Unicos/Mk"
msgstr "-pipe stöds inte"
-#: config/alpha/alpha.c:377
+#: config/alpha/alpha.c:266
msgid "-mieee-with-inexact not supported on Unicos/Mk"
msgstr ""
-#: config/alpha/alpha.c:394
+#: config/alpha/alpha.c:283
#, c-format
msgid "bad value `%s' for -mtrap-precision switch"
msgstr ""
-#: config/alpha/alpha.c:408
+#: config/alpha/alpha.c:297
#, c-format
msgid "bad value `%s' for -mfp-rounding-mode switch"
msgstr ""
-#: config/alpha/alpha.c:423
+#: config/alpha/alpha.c:312
#, c-format
msgid "bad value `%s' for -mfp-trap-mode switch"
msgstr ""
-#: config/alpha/alpha.c:435
+#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1063
#, fuzzy, c-format
msgid "bad value `%s' for -mtls-size switch"
msgstr "ogiltigt värde (%s) till flagga -mcpu"
-#: config/alpha/alpha.c:454 config/alpha/alpha.c:466
+#: config/alpha/alpha.c:343 config/alpha/alpha.c:355
#, c-format
msgid "bad value `%s' for -mcpu switch"
msgstr ""
-#: config/alpha/alpha.c:473
+#: config/alpha/alpha.c:362
msgid "trap mode not supported on Unicos/Mk"
msgstr ""
-#: config/alpha/alpha.c:480
+#: config/alpha/alpha.c:369
msgid "fp software completion requires -mtrap-precision=i"
msgstr ""
-#: config/alpha/alpha.c:496
+#: config/alpha/alpha.c:385
msgid "rounding mode not supported for VAX floats"
msgstr ""
-#: config/alpha/alpha.c:501
+#: config/alpha/alpha.c:390
msgid "trap mode not supported for VAX floats"
msgstr ""
-#: config/alpha/alpha.c:530
+#: config/alpha/alpha.c:419
#, c-format
msgid "L%d cache latency unknown for %s"
msgstr ""
-#: config/alpha/alpha.c:545
+#: config/alpha/alpha.c:434
#, c-format
msgid "bad value `%s' for -mmemory-latency"
msgstr "ogiltigt värde \"%s\" till -memory-latency"
-#: config/alpha/alpha.c:5604 config/m88k/m88k.c:2889 config/romp/romp.c:754
-#: config/romp/romp.c:761
+#: config/alpha/alpha.c:5411
#, c-format
msgid "invalid %%H value"
msgstr ""
-#: config/alpha/alpha.c:5625
+#: config/alpha/alpha.c:5432
#, fuzzy, c-format
msgid "invalid %%J value"
msgstr "ogiltigt värde %%B"
-#: config/alpha/alpha.c:5641 config/ia64/ia64.c:3970 config/m88k/m88k.c:3034
+#: config/alpha/alpha.c:5448 config/ia64/ia64.c:4243
#, c-format
msgid "invalid %%r value"
msgstr "ogiltigt %%r-värde"
-#: config/alpha/alpha.c:5651 config/rs6000/rs6000.c:7737
+#: config/alpha/alpha.c:5458 config/rs6000/rs6000.c:8944
+#: config/xtensa/xtensa.c:1999
#, c-format
msgid "invalid %%R value"
msgstr "ogiltigt %%R-värde"
-#: config/alpha/alpha.c:5657 config/rs6000/rs6000.c:7663
+#: config/alpha/alpha.c:5464 config/rs6000/rs6000.c:8863
+#: config/xtensa/xtensa.c:1966
#, c-format
msgid "invalid %%N value"
msgstr "ogiltigt %%N-värde"
-#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:7691
+#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:8891
#, c-format
msgid "invalid %%P value"
msgstr "ogiltigt %%P-värde"
-#: config/alpha/alpha.c:5673 config/m88k/m88k.c:2895 config/romp/romp.c:740
-#: config/romp/romp.c:747
+#: config/alpha/alpha.c:5480
#, c-format
msgid "invalid %%h value"
msgstr "ogiltigt %%h-värde"
-#: config/alpha/alpha.c:5681 config/romp/romp.c:698
+#: config/alpha/alpha.c:5488 config/xtensa/xtensa.c:1992
#, c-format
msgid "invalid %%L value"
msgstr "ogiltigt %%L-värde"
-#: config/alpha/alpha.c:5720 config/rs6000/rs6000.c:7645
+#: config/alpha/alpha.c:5527 config/rs6000/rs6000.c:8845
#, c-format
msgid "invalid %%m value"
msgstr "ogiltigt %%m-värde"
-#: config/alpha/alpha.c:5728 config/rs6000/rs6000.c:7653
+#: config/alpha/alpha.c:5535 config/rs6000/rs6000.c:8853
#, c-format
msgid "invalid %%M value"
msgstr "ogiltigt %%M-värde"
-#: config/alpha/alpha.c:5772
+#: config/alpha/alpha.c:5579
#, c-format
msgid "invalid %%U value"
msgstr "ogiltigt %%U-värde"
-#: config/alpha/alpha.c:5784 config/alpha/alpha.c:5798 config/romp/romp.c:706
-#: config/rs6000/rs6000.c:7745
+#: config/alpha/alpha.c:5591 config/alpha/alpha.c:5605
+#: config/rs6000/rs6000.c:8952
#, c-format
msgid "invalid %%s value"
msgstr "ogiltigt %%s-värde"
-#: config/alpha/alpha.c:5821 config/m88k/m88k.c:2997
+#: config/alpha/alpha.c:5628
#, c-format
msgid "invalid %%C value"
msgstr "ogiltigt %%C-värde"
-#: config/alpha/alpha.c:5858 config/m88k/m88k.c:3018
-#: config/rs6000/rs6000.c:7502
+#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:8702
#, c-format
msgid "invalid %%E value"
msgstr "ogiltigt %%E-värde"
-#: config/alpha/alpha.c:5883 config/alpha/alpha.c:5933
+#: config/alpha/alpha.c:5690 config/alpha/alpha.c:5738
msgid "unknown relocation unspec"
msgstr ""
-#: config/alpha/alpha.c:5892 config/romp/romp.c:981
-#: config/rs6000/rs6000.c:8052
+#: config/alpha/alpha.c:5699 config/rs6000/rs6000.c:9265
#, c-format
msgid "invalid %%xn code"
msgstr ""
-#: config/alpha/alpha.c:6618 config/alpha/alpha.c:6621 config/s390/s390.c:6069
-#: config/s390/s390.c:6072
+#: config/alpha/alpha.c:6634 config/alpha/alpha.c:6637 config/s390/s390.c:6572
+#: config/s390/s390.c:6575
msgid "bad builtin fcode"
msgstr ""
@@ -8676,87 +7808,99 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/alpha/alpha.h:279 config/i386/i386.h:294 config/i386/i386.h:296
-#: config/i386/i386.h:298 config/ns32k/ns32k.h:140 config/rs6000/rs6000.h:292
-#: config/s390/s390.h:68 config/sparc/sparc.h:522 config/sparc/sparc.h:527
+#. WARNING: Do not mark empty strings for translation, as calling
+#. gettext on an empty string does NOT return an empty
+#. string.
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/alpha/alpha.h:286 config/i386/i386.h:327 config/i386/i386.h:329
+#: config/i386/i386.h:331 config/ns32k/ns32k.h:140 config/s390/s390.h:124
+#: config/sparc/sparc.h:537 config/sparc/sparc.h:542
msgid "Use hardware fp"
msgstr "Använd hårdvaru-fp"
-#: config/alpha/alpha.h:280 config/i386/i386.h:295 config/i386/i386.h:297
-#: config/rs6000/rs6000.h:294 config/sparc/sparc.h:524
-#: config/sparc/sparc.h:529
+#: config/alpha/alpha.h:287 config/i386/i386.h:328 config/i386/i386.h:330
+#: config/sparc/sparc.h:539 config/sparc/sparc.h:544
msgid "Do not use hardware fp"
msgstr "Använd inte hårdvaru-fp"
-#: config/alpha/alpha.h:281
+#: config/alpha/alpha.h:288
msgid "Use fp registers"
msgstr ""
-#: config/alpha/alpha.h:283
+#: config/alpha/alpha.h:290
msgid "Do not use fp registers"
msgstr ""
-#: config/alpha/alpha.h:284
+#: config/alpha/alpha.h:291
msgid "Do not assume GAS"
msgstr "Antag inte GAS"
-#: config/alpha/alpha.h:285
+#: config/alpha/alpha.h:292
msgid "Assume GAS"
msgstr "Antag GAS"
-#: config/alpha/alpha.h:287
+#: config/alpha/alpha.h:294
msgid "Request IEEE-conformant math library routines (OSF/1)"
msgstr ""
-#: config/alpha/alpha.h:289
+#: config/alpha/alpha.h:296
msgid "Emit IEEE-conformant code, without inexact exceptions"
msgstr ""
-#: config/alpha/alpha.h:291
+#: config/alpha/alpha.h:298
msgid "Emit IEEE-conformant code, with inexact exceptions"
msgstr ""
-#: config/alpha/alpha.h:293
+#: config/alpha/alpha.h:300
msgid "Do not emit complex integer constants to read-only memory"
msgstr ""
-#: config/alpha/alpha.h:294
+#: config/alpha/alpha.h:301
msgid "Use VAX fp"
msgstr "Använd VAX fp"
-#: config/alpha/alpha.h:295
+#: config/alpha/alpha.h:302
msgid "Do not use VAX fp"
msgstr "Använd inte VAX fp"
-#: config/alpha/alpha.h:296
+#: config/alpha/alpha.h:303
msgid "Emit code for the byte/word ISA extension"
msgstr ""
-#: config/alpha/alpha.h:299
+#: config/alpha/alpha.h:306
msgid "Emit code for the motion video ISA extension"
msgstr ""
-#: config/alpha/alpha.h:302
+#: config/alpha/alpha.h:309
msgid "Emit code for the fp move and sqrt ISA extension"
msgstr ""
-#: config/alpha/alpha.h:304
+#: config/alpha/alpha.h:311
msgid "Emit code for the counting ISA extension"
msgstr ""
-#: config/alpha/alpha.h:307
+#: config/alpha/alpha.h:314
msgid "Emit code using explicit relocation directives"
msgstr ""
-#: config/alpha/alpha.h:310
+#: config/alpha/alpha.h:317
msgid "Emit 16-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:312
+#: config/alpha/alpha.h:319
msgid "Emit 32-bit relocations to the small data areas"
msgstr ""
-#: config/alpha/alpha.h:314
+#: config/alpha/alpha.h:321
+#, fuzzy
+msgid "Emit direct branches to local functions"
+msgstr "Inga hopp i funktionen %s\n"
+
+#: config/alpha/alpha.h:324
msgid "Emit rdval instead of rduniq for thread pointer"
msgstr ""
@@ -8767,294 +7911,317 @@ msgstr ""
#. For -mtrap-precision=[p|f|i]
#. For -mmemory-latency=
#. For -mtls-size=
-#: config/alpha/alpha.h:343
+#: config/alpha/alpha.h:353
msgid "Use features of and schedule given CPU"
msgstr ""
-#: config/alpha/alpha.h:345
+#: config/alpha/alpha.h:355
msgid "Schedule given CPU"
msgstr "Schemalägg för given CPU"
-#: config/alpha/alpha.h:347
+#: config/alpha/alpha.h:357
msgid "Control the generated fp rounding mode"
msgstr ""
-#: config/alpha/alpha.h:349
+#: config/alpha/alpha.h:359
msgid "Control the IEEE trap mode"
msgstr ""
-#: config/alpha/alpha.h:351
+#: config/alpha/alpha.h:361
msgid "Control the precision given to fp exceptions"
msgstr ""
-#: config/alpha/alpha.h:353
+#: config/alpha/alpha.h:363
msgid "Tune expected memory latency"
msgstr ""
-#: config/alpha/alpha.h:355 config/ia64/ia64.h:225
+#: config/alpha/alpha.h:365 config/ia64/ia64.h:267 config/rs6000/sysv4.h:90
msgid "Specify bit size of immediate TLS offsets"
msgstr ""
-#: config/arc/arc.c:135
+#: config/arc/arc.c:147
#, c-format
msgid "bad value (%s) for -mcpu switch"
msgstr "ogiltigt värde (%s) till flagga -mcpu"
-#: config/arc/arc.c:362
+#: config/arc/arc.c:369
#, fuzzy, c-format
msgid "argument of `%s' attribute is not a string constant"
msgstr "argumentet till \"asm\" är inte en konstant sträng"
-#: config/arc/arc.c:369
+#: config/arc/arc.c:376
#, c-format
msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\""
msgstr ""
-#: config/arc/arc.c:1708 config/m32r/m32r.c:2286
+#: config/arc/arc.c:1714 config/m32r/m32r.c:2325
#, fuzzy, c-format
msgid "invalid operand to %%R code"
msgstr "ogiltig operand för %R"
-#: config/arc/arc.c:1740 config/m32r/m32r.c:2309
+#: config/arc/arc.c:1746 config/m32r/m32r.c:2348
#, fuzzy, c-format
msgid "invalid operand to %%H/%%L code"
msgstr "ogiltig operand för %H/%L"
-#: config/arc/arc.c:1763 config/m32r/m32r.c:2385
+#: config/arc/arc.c:1769 config/m32r/m32r.c:2419
#, fuzzy, c-format
msgid "invalid operand to %%U code"
msgstr "ogiltig operand för %U"
-#: config/arc/arc.c:1774
+#: config/arc/arc.c:1780
#, fuzzy, c-format
msgid "invalid operand to %%V code"
msgstr "ogiltig operand för %V"
#. Unknown flag.
-#: config/arc/arc.c:1781 config/m32r/m32r.c:2424 config/sparc/sparc.c:6533
+#. Undocumented flag.
+#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985
msgid "invalid operand output code"
msgstr ""
-#: config/arm/arm.c:458
+#: config/arm/arm.c:520
#, c-format
msgid "switch -mcpu=%s conflicts with -march= switch"
msgstr "flagga -mcpu=%s står i konflikt med flagga -march="
-#: config/arm/arm.c:468 config/rs6000/rs6000.c:558 config/sparc/sparc.c:393
+#: config/arm/arm.c:530 config/rs6000/rs6000.c:759 config/sparc/sparc.c:424
#, c-format
msgid "bad value (%s) for %s switch"
msgstr "ogiltigt värde (%s) till flagga %s"
-#: config/arm/arm.c:604
+#: config/arm/arm.c:672
msgid "target CPU does not support APCS-32"
msgstr "målprocessorn stödjer inte APCS-32"
-#: config/arm/arm.c:609
+#: config/arm/arm.c:677
msgid "target CPU does not support APCS-26"
msgstr "målprocessorn stödjer inte APCS-26"
-#: config/arm/arm.c:615
+#: config/arm/arm.c:683
msgid "target CPU does not support interworking"
msgstr ""
-#: config/arm/arm.c:621
+#: config/arm/arm.c:689
#, fuzzy
msgid "target CPU does not support THUMB instructions"
msgstr "målprocessorn stödjer inte THUMB-instruktioner"
-#: config/arm/arm.c:635
+#: config/arm/arm.c:703
msgid "enabling backtrace support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:638
+#: config/arm/arm.c:706
msgid "enabling callee interworking support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:641
+#: config/arm/arm.c:709
msgid "enabling caller interworking support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:647
+#: config/arm/arm.c:715
msgid "interworking forces APCS-32 to be used"
msgstr ""
-#: config/arm/arm.c:653
+#: config/arm/arm.c:721
msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
msgstr "-mapcs-stack-check är inkompatibel med -mno-apcs-frame"
-#: config/arm/arm.c:661
+#: config/arm/arm.c:729
msgid "-fpic and -mapcs-reent are incompatible"
msgstr "-fpic och -mapcs-reent är inkompatibla"
-#: config/arm/arm.c:664
+#: config/arm/arm.c:732
msgid "APCS reentrant code not supported. Ignored"
msgstr ""
-#: config/arm/arm.c:672
+#: config/arm/arm.c:740
msgid "-g with -mno-apcs-frame may not give sensible debugging"
msgstr ""
-#: config/arm/arm.c:680
+#: config/arm/arm.c:748
msgid "passing floating point arguments in fp regs not yet supported"
msgstr ""
-#: config/arm/arm.c:709
+#: config/arm/arm.c:792
#, c-format
msgid "invalid floating point emulation option: -mfpe-%s"
msgstr ""
-#: config/arm/arm.c:733
+#: config/arm/arm.c:803
+msgid "-mfpe switch not supported by ep9312 target cpu - ignored."
+msgstr ""
+
+#: config/arm/arm.c:823
#, fuzzy
msgid "structure size boundary can only be set to 8 or 32"
msgstr "Strukturstorleksgräns kan bara sättas till 8 eller 32"
-#: config/arm/arm.c:741
+#: config/arm/arm.c:831
msgid "-mpic-register= is useless without -fpic"
msgstr "-mpic-register= är oanvändbar utan -fpic"
-#: config/arm/arm.c:748
+#: config/arm/arm.c:838
#, c-format
msgid "unable to use '%s' for PIC register"
msgstr ""
-#: config/arm/arm.c:2064 config/arm/arm.c:2087 config/avr/avr.c:4794
-#: config/c4x/c4x.c:4644 config/h8300/h8300.c:3667 config/i386/i386.c:1396
-#: config/i386/i386.c:1425 config/ip2k/ip2k.c:3224
-#: config/m68hc11/m68hc11.c:1267 config/mcore/mcore.c:3510
-#: config/ns32k/ns32k.c:1047 config/rs6000/rs6000.c:12538 config/sh/sh.c:5681
-#: config/sh/sh.c:5706 config/sh/sh.c:5745 config/stormy16/stormy16.c:2026
-#: config/v850/v850.c:2180
+#: config/arm/arm.c:2246 config/arm/arm.c:2264 config/avr/avr.c:4558
+#: config/c4x/c4x.c:4447 config/h8300/h8300.c:4257 config/i386/i386.c:1571
+#: config/i386/i386.c:1617 config/ip2k/ip2k.c:3169
+#: config/m68hc11/m68hc11.c:1227 config/m68k/m68k.c:333
+#: config/mcore/mcore.c:3375 config/ns32k/ns32k.c:1064
+#: config/rs6000/rs6000.c:14556 config/sh/sh.c:6737 config/sh/sh.c:6758
+#: config/sh/sh.c:6793 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173
#, fuzzy, c-format
msgid "`%s' attribute only applies to functions"
msgstr "attributet \"%s\" fungerar bara på funktioner"
-#: config/arm/arm.c:9459
+#: config/arm/arm.c:10573
msgid "unable to compute real location of stacked parameter"
msgstr ""
-#: config/arm/arm.c:10138
+#. @@@ better error message
+#: config/arm/arm.c:11201 config/arm/arm.c:11238
+msgid "selector must be an immediate"
+msgstr ""
+
+#. @@@ better error message
+#: config/arm/arm.c:11281 config/i386/i386.c:14219 config/i386/i386.c:14253
+msgid "mask must be an immediate"
+msgstr ""
+
+#: config/arm/arm.c:11976
msgid "no low registers available for popping high registers"
msgstr ""
-#: config/arm/arm.c:10389
+#: config/arm/arm.c:12226
msgid "interrupt Service Routines cannot be coded in Thumb mode"
msgstr ""
-#: config/arm/pe.c:168 config/mcore/mcore.c:3358
-#, c-format
-msgid "initialized variable `%s' is marked dllimport"
+#: config/arm/pe.c:170 config/mcore/mcore.c:3241
+#, fuzzy
+msgid "%Jinitialized variable '%D' is marked dllimport"
msgstr "initierad variabel \"%s\" är markerad som dllimport"
-#: config/arm/pe.c:177
-#, c-format
-msgid "static variable `%s' is marked dllimport"
+#: config/arm/pe.c:179
+#, fuzzy
+msgid "%Jstatic variable '%D' is marked dllimport"
msgstr "statisk variabel \"%s\" är markerad som dllimport"
-#: config/arm/arm.h:416
+#: config/arm/arm.h:450
msgid "Generate APCS conformant stack frames"
msgstr ""
-#: config/arm/arm.h:419
+#: config/arm/arm.h:453
msgid "Store function names in object code"
msgstr ""
-#: config/arm/arm.h:423
+#: config/arm/arm.h:457
msgid "Use the 32-bit version of the APCS"
msgstr "Använd 32-bit version av APCS"
-#: config/arm/arm.h:425
+#: config/arm/arm.h:459
msgid "Use the 26-bit version of the APCS"
msgstr "Använd 26-bit version av APCS"
-#: config/arm/arm.h:429
+#: config/arm/arm.h:463
msgid "Pass FP arguments in FP registers"
msgstr "Skicka FP-argument i FP-register"
-#: config/arm/arm.h:432
+#: config/arm/arm.h:466
msgid "Generate re-entrant, PIC code"
msgstr ""
-#: config/arm/arm.h:435
+#: config/arm/arm.h:469
msgid "The MMU will trap on unaligned accesses"
msgstr ""
-#: config/arm/arm.h:442
+#: config/arm/arm.h:476
msgid "Use library calls to perform FP operations"
msgstr "Använd biblioteksrutiner för FP-operationer"
-#: config/arm/arm.h:444 config/i960/i960.h:281
+#: config/arm/arm.h:478 config/i960/i960.h:291
msgid "Use hardware floating point instructions"
msgstr "Använd flyttalsinstruktioner i hårdvara"
-#: config/arm/arm.h:446
+#: config/arm/arm.h:480
msgid "Assume target CPU is configured as big endian"
msgstr "Antag att mål-CPU:n är konfigurerad som \"big endian\""
-#: config/arm/arm.h:448
+#: config/arm/arm.h:482
msgid "Assume target CPU is configured as little endian"
msgstr "Antag att mål-CPU:n är konfigurerad som \"little endian\""
-#: config/arm/arm.h:450
+#: config/arm/arm.h:484
msgid "Assume big endian bytes, little endian words"
msgstr "Antag att bytes är \"big endian\", ord är \"little endian\""
-#: config/arm/arm.h:452
+#: config/arm/arm.h:486
msgid "Support calls between Thumb and ARM instruction sets"
msgstr ""
-#: config/arm/arm.h:455
+#: config/arm/arm.h:489
msgid "Generate a call to abort if a noreturn function returns"
msgstr ""
-#: config/arm/arm.h:458
+#: config/arm/arm.h:492
msgid "Do not move instructions into a function's prologue"
msgstr ""
-#: config/arm/arm.h:461
+#: config/arm/arm.h:495
msgid "Do not load the PIC register in function prologues"
msgstr ""
-#: config/arm/arm.h:464
+#: config/arm/arm.h:498
msgid "Generate call insns as indirect calls, if necessary"
msgstr ""
-#: config/arm/arm.h:467
+#: config/arm/arm.h:501
msgid "Compile for the Thumb not the ARM"
msgstr ""
-#: config/arm/arm.h:471
+#: config/arm/arm.h:505
msgid "Thumb: Generate (non-leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.h:474
+#: config/arm/arm.h:508
msgid "Thumb: Generate (leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.h:477
+#: config/arm/arm.h:511
msgid "Thumb: Assume non-static functions may be called from ARM code"
msgstr ""
-#: config/arm/arm.h:481
+#: config/arm/arm.h:515
msgid "Thumb: Assume function pointers may go to non-Thumb aware code"
msgstr ""
-#: config/arm/arm.h:491
+#: config/arm/arm.h:519
+msgid "Cirrus: Place NOPs to avoid invalid instruction combinations"
+msgstr ""
+
+#: config/arm/arm.h:521
+msgid "Cirrus: Do not break up invalid instruction combinations with NOPs"
+msgstr ""
+
+#: config/arm/arm.h:529
msgid "Specify the name of the target CPU"
msgstr "Ange namnet på målprocessorn"
-#: config/arm/arm.h:493
+#: config/arm/arm.h:531
msgid "Specify the name of the target architecture"
msgstr "Ange namnet på målarkitekturen"
-#: config/arm/arm.h:497
+#: config/arm/arm.h:535
msgid "Specify the version of the floating point emulator"
msgstr ""
-#: config/arm/arm.h:499
+#: config/arm/arm.h:537
msgid "Specify the minimum bit alignment of structures"
msgstr ""
-#: config/arm/arm.h:501
+#: config/arm/arm.h:539
msgid "Specify the register to be used for PIC addressing"
msgstr ""
@@ -9062,99 +8229,99 @@ msgstr ""
msgid "Ignore dllimport attribute for functions"
msgstr "Ignorera attributet dllimport för funktioner"
-#: config/avr/avr.c:528
+#: config/avr/avr.c:514
#, c-format
msgid "large frame pointer change (%d) with -mtiny-stack"
msgstr ""
-#: config/avr/avr.c:1135
+#: config/avr/avr.c:1101
msgid "bad address, not (reg+disp):"
msgstr ""
-#: config/avr/avr.c:1143
+#: config/avr/avr.c:1109
#, fuzzy
msgid "internal compiler error. Bad address:"
msgstr "Internt kompilatorfel i %s, vid %s:%d"
-#: config/avr/avr.c:1156
+#: config/avr/avr.c:1122
#, fuzzy
msgid "internal compiler error. Unknown mode:"
msgstr "Internt kompilatorfel i %s, vid %s:%d"
-#: config/avr/avr.c:1864 config/avr/avr.c:2576
+#: config/avr/avr.c:1744 config/avr/avr.c:2405
#, fuzzy
msgid "invalid insn:"
msgstr "ogiltig #line"
-#: config/avr/avr.c:1901 config/avr/avr.c:1987 config/avr/avr.c:2036
-#: config/avr/avr.c:2045 config/avr/avr.c:2143 config/avr/avr.c:2315
-#: config/avr/avr.c:2613 config/avr/avr.c:2724
+#: config/avr/avr.c:1778 config/avr/avr.c:1861 config/avr/avr.c:1910
+#: config/avr/avr.c:1919 config/avr/avr.c:2014 config/avr/avr.c:2183
+#: config/avr/avr.c:2439 config/avr/avr.c:2547
msgid "incorrect insn:"
msgstr ""
-#: config/avr/avr.c:2064 config/avr/avr.c:2228 config/avr/avr.c:2386
-#: config/avr/avr.c:2768
+#: config/avr/avr.c:1938 config/avr/avr.c:2099 config/avr/avr.c:2254
+#: config/avr/avr.c:2591
#, fuzzy
msgid "unknown move insn:"
msgstr "okänt registernamn: %s"
-#: config/avr/avr.c:3003
+#: config/avr/avr.c:2814
msgid "bad shift insn:"
msgstr ""
-#: config/avr/avr.c:3119 config/avr/avr.c:3549 config/avr/avr.c:3929
+#: config/avr/avr.c:2927 config/avr/avr.c:3348 config/avr/avr.c:3719
#, fuzzy
msgid "internal compiler error. Incorrect shift:"
msgstr "Internt kompilatorfel i %s, vid %s:%d"
-#: config/avr/avr.c:4767 config/ip2k/ip2k.c:3197
+#: config/avr/avr.c:4532 config/ip2k/ip2k.c:3144
#, fuzzy
msgid "only initialized variables can be placed into program memory area"
msgstr "Initiera bara variabler som kan placeras i 8-bits området."
-#: config/avr/avr.c:4866
+#: config/avr/avr.c:4626
#, fuzzy
msgid "only uninitialized variables can be placed in the .noinit section"
msgstr "Initiera bara variabler som kan placeras i 8-bits området."
-#: config/avr/avr.c:4881
+#: config/avr/avr.c:4640
#, fuzzy, c-format
msgid "MCU `%s' supported for assembler only"
msgstr "MCU \"%s\" stöds inte"
-#: config/avr/avr.h:78
+#: config/avr/avr.h:73
msgid "Assume int to be 8 bit integer"
msgstr ""
-#: config/avr/avr.h:80
+#: config/avr/avr.h:75
msgid "Change the stack pointer without disabling interrupts"
msgstr ""
-#: config/avr/avr.h:82
+#: config/avr/avr.h:77
msgid "Use subroutines for function prologue/epilogue"
msgstr ""
-#: config/avr/avr.h:84
+#: config/avr/avr.h:79
msgid "Change only the low 8 bits of the stack pointer"
msgstr ""
-#: config/avr/avr.h:86
+#: config/avr/avr.h:81
msgid "Do not generate tablejump insns"
msgstr ""
-#: config/avr/avr.h:88
+#: config/avr/avr.h:83
msgid "Use rjmp/rcall (limited range) on >8K devices"
msgstr ""
-#: config/avr/avr.h:91
+#: config/avr/avr.h:85
msgid "Output instruction sizes to the asm file"
msgstr ""
-#: config/avr/avr.h:108
+#: config/avr/avr.h:102
msgid "Specify the initial stack address"
msgstr ""
-#: config/avr/avr.h:109
+#: config/avr/avr.h:103
msgid "Specify the MCU name"
msgstr ""
@@ -9166,141 +8333,136 @@ msgstr ""
#. For instance, the SH target has only positive offsets in
#. addresses. Thus sorting to put the smallest address first allows
#. the most combinations to be found.
-#: config/avr/avr.h:2450
+#: config/avr/avr.h:2267
#, fuzzy
msgid "trampolines not supported"
msgstr "-pipe stöds inte"
-#: config/c4x/c4x-c.c:69
+#: config/c4x/c4x-c.c:71
#, fuzzy, c-format
msgid "missing '(' after '#pragma %s' - ignored"
msgstr "saknas '(' efter predikat"
-#: config/c4x/c4x-c.c:72
+#: config/c4x/c4x-c.c:74
#, c-format
msgid "missing function name in '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:77
+#: config/c4x/c4x-c.c:79
#, c-format
msgid "malformed '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:79
+#: config/c4x/c4x-c.c:81
#, c-format
msgid "missing section name in '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:84
+#: config/c4x/c4x-c.c:86
#, c-format
msgid "missing ')' for '#pragma %s' - ignored"
msgstr ""
-#: config/c4x/c4x-c.c:87
+#: config/c4x/c4x-c.c:89
#, c-format
msgid "junk at end of '#pragma %s'"
msgstr "skräp vid slutet av \"#pragma %s\""
-#: config/c4x/c4x.c:280
+#: config/c4x/c4x.c:300
#, c-format
msgid "unknown CPU version %d, using 40.\n"
msgstr ""
-#: config/c4x/c4x.c:853
+#: config/c4x/c4x.c:850
#, c-format
msgid "ISR %s requires %d words of local vars, max is 32767"
msgstr ""
-#: config/c4x/c4x.c:1602
+#: config/c4x/c4x.c:1571
msgid "using CONST_DOUBLE for address"
msgstr ""
-#: config/c4x/c4x.c:1742
+#: config/c4x/c4x.c:1709
msgid "c4x_address_cost: Invalid addressing mode"
msgstr ""
-#: config/c4x/c4x.c:1884
+#: config/c4x/c4x.c:1844
#, c-format
msgid "c4x_print_operand: %%L inconsistency"
msgstr ""
-#: config/c4x/c4x.c:1890
+#: config/c4x/c4x.c:1850
#, c-format
msgid "c4x_print_operand: %%N inconsistency"
msgstr ""
-#: config/c4x/c4x.c:1931
+#: config/c4x/c4x.c:1891
#, c-format
msgid "c4x_print_operand: %%O inconsistency"
msgstr ""
-#: config/c4x/c4x.c:2026
+#: config/c4x/c4x.c:1986
msgid "c4x_print_operand: Bad operand case"
msgstr ""
-#: config/c4x/c4x.c:2069
+#: config/c4x/c4x.c:2027
msgid "c4x_print_operand_address: Bad post_modify"
msgstr ""
-#: config/c4x/c4x.c:2091
+#: config/c4x/c4x.c:2049
msgid "c4x_print_operand_address: Bad pre_modify"
msgstr ""
-#: config/c4x/c4x.c:2139 config/c4x/c4x.c:2151 config/c4x/c4x.c:2166
+#: config/c4x/c4x.c:2097 config/c4x/c4x.c:2109 config/c4x/c4x.c:2124
msgid "c4x_print_operand_address: Bad operand case"
msgstr ""
-#: config/c4x/c4x.c:2422
+#: config/c4x/c4x.c:2375
msgid "c4x_rptb_insert: Cannot find start label"
msgstr ""
-#: config/c4x/c4x.c:3409 config/c4x/c4x.c:3429
+#: config/c4x/c4x.c:3292 config/c4x/c4x.c:3310
msgid "mode not QImode"
msgstr ""
-#: config/c4x/c4x.c:3514
+#: config/c4x/c4x.c:3380
msgid "invalid indirect memory address"
msgstr ""
-#: config/c4x/c4x.c:3603
+#: config/c4x/c4x.c:3469
msgid "invalid indirect (S) memory address"
msgstr ""
-#: config/c4x/c4x.c:3944
+#: config/c4x/c4x.c:3797
msgid "c4x_valid_operands: Internal error"
msgstr ""
-#: config/c4x/c4x.c:4424
+#: config/c4x/c4x.c:4216
msgid "c4x_operand_subword: invalid mode"
msgstr ""
-#: config/c4x/c4x.c:4427
+#: config/c4x/c4x.c:4219
msgid "c4x_operand_subword: invalid operand"
msgstr ""
#. We could handle these with some difficulty.
#. e.g., *p-- => *(p-=2); *(p+1).
-#: config/c4x/c4x.c:4453
+#: config/c4x/c4x.c:4245
msgid "c4x_operand_subword: invalid autoincrement"
msgstr ""
-#: config/c4x/c4x.c:4459
+#: config/c4x/c4x.c:4251
msgid "c4x_operand_subword: invalid address"
msgstr ""
-#: config/c4x/c4x.c:4470
+#: config/c4x/c4x.c:4262
msgid "c4x_operand_subword: address not offsettable"
msgstr ""
-#: config/c4x/c4x.c:4670
+#: config/c4x/c4x.c:4472
msgid "c4x_rptb_rpts_p: Repeat block top label moved\n"
msgstr ""
-#. Name of the c4x assembler.
-#. Name of the c4x linker.
-#. Define assembler options.
-#. Define linker options.
-#. Specify the end file to link with.
#. Target compilation option flags.
#. Small memory model.
#. Use 24-bit MPYI for C3x.
@@ -9519,173 +8681,173 @@ msgstr ""
msgid "Select CPU to generate code for"
msgstr "Välj CPU att generera kod för"
-#: config/cris/cris.c:599
+#: config/cris/cris.c:597
msgid "unexpected index-type in cris_print_index"
msgstr ""
-#: config/cris/cris.c:615
+#: config/cris/cris.c:611
msgid "unexpected base-type in cris_print_base"
msgstr ""
-#: config/cris/cris.c:908
+#: config/cris/cris.c:904
#, c-format
msgid "stackframe too big: %d bytes"
msgstr ""
-#: config/cris/cris.c:1223
+#: config/cris/cris.c:1215
msgid "allocated but unused delay list in epilogue"
msgstr ""
-#: config/cris/cris.c:1233
+#: config/cris/cris.c:1225
#, fuzzy
msgid "unexpected function type needing stack adjustment for __builtin_eh_return"
msgstr "funktion använder __builtin_eh_return"
-#: config/cris/cris.c:1312
+#: config/cris/cris.c:1301
#, fuzzy
msgid "invalid operand for 'b' modifier"
msgstr "ogiltig operand för %V"
-#: config/cris/cris.c:1324
+#: config/cris/cris.c:1314
#, fuzzy
msgid "invalid operand for 'v' modifier"
msgstr "ogiltig operand för %V"
-#: config/cris/cris.c:1334
+#: config/cris/cris.c:1324
#, fuzzy
msgid "invalid operand for 'P' modifier"
msgstr "ogiltig operand för %V"
-#: config/cris/cris.c:1341
+#: config/cris/cris.c:1331
#, fuzzy
msgid "invalid operand for 'p' modifier"
msgstr "ogiltig operand för %V"
-#: config/cris/cris.c:1380
+#: config/cris/cris.c:1370
#, fuzzy
msgid "invalid operand for 'z' modifier"
msgstr "ogiltig operand för %V"
-#: config/cris/cris.c:1411 config/cris/cris.c:1441
+#: config/cris/cris.c:1401 config/cris/cris.c:1431
#, fuzzy
msgid "invalid operand for 'H' modifier"
msgstr "ogiltig operand för %V"
-#: config/cris/cris.c:1417
+#: config/cris/cris.c:1407
msgid "bad register"
msgstr ""
-#: config/cris/cris.c:1455
+#: config/cris/cris.c:1445
#, fuzzy
msgid "invalid operand for 'e' modifier"
msgstr "ogiltig operand för %V"
-#: config/cris/cris.c:1472
+#: config/cris/cris.c:1462
#, fuzzy
msgid "invalid operand for 'm' modifier"
msgstr "ogiltig operand för %V"
-#: config/cris/cris.c:1497
+#: config/cris/cris.c:1487
#, fuzzy
msgid "invalid operand for 'A' modifier"
msgstr "ogiltig operand för %V"
-#: config/cris/cris.c:1505
+#: config/cris/cris.c:1495
#, fuzzy
msgid "invalid operand for 'D' modifier"
msgstr "ogiltig operand för %V"
-#: config/cris/cris.c:1519
+#: config/cris/cris.c:1509
#, fuzzy
msgid "invalid operand for 'T' modifier"
msgstr "ogiltig operand för %V"
-#: config/cris/cris.c:1528
+#: config/cris/cris.c:1518
#, fuzzy
msgid "invalid operand modifier letter"
msgstr "ogiltig operand för %V"
-#: config/cris/cris.c:1536
+#: config/cris/cris.c:1526
#, fuzzy, c-format
msgid "internal error: bad register: %d"
msgstr "internt fel: "
-#: config/cris/cris.c:1584
+#: config/cris/cris.c:1574
msgid "unexpected multiplicative operand"
msgstr ""
-#: config/cris/cris.c:1604
+#: config/cris/cris.c:1594
msgid "unexpected operand"
msgstr ""
-#: config/cris/cris.c:1639 config/cris/cris.c:1649
+#: config/cris/cris.c:1627 config/cris/cris.c:1637
#, fuzzy
msgid "unrecognized address"
msgstr "Känner inte igen registernamn \"%s\""
-#: config/cris/cris.c:2005
+#: config/cris/cris.c:1987
msgid "internal error: sideeffect-insn affecting main effect"
msgstr ""
#. If we get here, the caller got its initial tests wrong.
-#: config/cris/cris.c:2292
+#: config/cris/cris.c:2380
msgid "internal error: cris_side_effect_mode_ok with bad operands"
msgstr ""
-#: config/cris/cris.c:2374 config/cris/cris.c:2432
+#: config/cris/cris.c:2457 config/cris/cris.c:2519
#, fuzzy
msgid "unrecognized supposed constant"
msgstr "ej igenkänd flagga `-%s'"
-#: config/cris/cris.c:2473
+#: config/cris/cris.c:2564
msgid "unrecognized supposed constant in cris_global_pic_symbol"
msgstr ""
-#: config/cris/cris.c:2492
+#: config/cris/cris.c:2583
#, c-format
msgid "-max-stackframe=%d is not usable, not between 0 and %d"
msgstr ""
-#: config/cris/cris.c:2520
+#: config/cris/cris.c:2611
#, c-format
msgid "unknown CRIS version specification in -march= or -mcpu= : %s"
msgstr ""
-#: config/cris/cris.c:2556
+#: config/cris/cris.c:2647
#, c-format
msgid "unknown CRIS cpu version specification in -mtune= : %s"
msgstr ""
-#: config/cris/cris.c:2574
+#: config/cris/cris.c:2665
msgid "-fPIC and -fpic are not supported in this configuration"
msgstr ""
-#: config/cris/cris.c:2590
+#: config/cris/cris.c:2681
msgid "that particular -g option is invalid with -maout and -melinux"
msgstr ""
-#: config/cris/cris.c:2824 config/cris/cris.c:2869
+#: config/cris/cris.c:2936 config/cris/cris.c:2981
msgid "unexpected side-effects in address"
msgstr ""
#. Labels are never marked as global symbols.
-#: config/cris/cris.c:2966 config/cris/cris.c:2997
+#: config/cris/cris.c:3076 config/cris/cris.c:3107
msgid "unexpected PIC symbol"
msgstr ""
-#: config/cris/cris.c:2970
+#: config/cris/cris.c:3080
msgid "PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:2983 config/cris/cris.c:3066
+#: config/cris/cris.c:3093 config/cris/cris.c:3176
msgid "unexpected address expression"
msgstr ""
-#: config/cris/cris.c:3001
+#: config/cris/cris.c:3111
msgid "emitting PIC operand, but PIC register isn't set up"
msgstr ""
-#: config/cris/cris.c:3010
+#: config/cris/cris.c:3120
msgid "unexpected NOTE as addr_const:"
msgstr ""
@@ -9698,221 +8860,221 @@ msgid "For elinux, request a specified stack-size for this program"
msgstr ""
#. No "no-etrax" as it does not really imply any model. On the other hand, "etrax" implies the common (and large) subset matching all models.
-#: config/cris/cris.h:340
+#: config/cris/cris.h:334
msgid "Compile for ETRAX 4 (CRIS v3)"
msgstr ""
-#: config/cris/cris.h:345
+#: config/cris/cris.h:339
msgid "Compile for ETRAX 100 (CRIS v8)"
msgstr ""
-#: config/cris/cris.h:349
+#: config/cris/cris.h:343
msgid "Emit verbose debug information in assembly code"
msgstr ""
-#: config/cris/cris.h:352
+#: config/cris/cris.h:346
#, fuzzy
msgid "Do not use condition codes from normal instructions"
msgstr "Använd inte bitfältsinstruktioner"
-#: config/cris/cris.h:356
+#: config/cris/cris.h:350
msgid "Do not emit addressing modes with side-effect assignment"
msgstr ""
-#: config/cris/cris.h:359
+#: config/cris/cris.h:353
#, fuzzy
msgid "Do not tune stack alignment"
msgstr "Generera inte kod för stackkontroll"
-#: config/cris/cris.h:362
+#: config/cris/cris.h:356
msgid "Do not tune writable data alignment"
msgstr ""
-#: config/cris/cris.h:365
+#: config/cris/cris.h:359
msgid "Do not tune code and read-only data alignment"
msgstr ""
-#: config/cris/cris.h:374
+#: config/cris/cris.h:368
msgid "Align code and data to 32 bits"
msgstr ""
-#: config/cris/cris.h:387
+#: config/cris/cris.h:381
msgid "Don't align items in code or data"
msgstr ""
-#: config/cris/cris.h:390
+#: config/cris/cris.h:384
msgid "Do not emit function prologue or epilogue"
msgstr ""
#. We have to handle this m-option here since we can't wash it off in both CC1_SPEC and CC1PLUS_SPEC.
-#: config/cris/cris.h:394
+#: config/cris/cris.h:388
msgid "Use the most feature-enabling options allowed by other options"
msgstr ""
#. We must call it "override-" since calling it "no-" will cause gcc.c to forget it, if there's a "later" -mbest-lib-options. Kludgy, but needed for some multilibbed files.
-#: config/cris/cris.h:400
+#: config/cris/cris.h:394
msgid "Override -mbest-lib-options"
msgstr ""
-#: config/cris/cris.h:432
+#: config/cris/cris.h:426
#, fuzzy
msgid "Generate code for the specified chip or CPU version"
msgstr "Generera kod för en given CPU"
-#: config/cris/cris.h:434
+#: config/cris/cris.h:428
#, fuzzy
msgid "Tune alignment for the specified chip or CPU version"
msgstr "minnesjustering kan inte anges för \"%s\""
-#: config/cris/cris.h:436
+#: config/cris/cris.h:430
msgid "Warn when a stackframe is larger than the specified size"
msgstr ""
#. Node: Profiling
-#: config/cris/cris.h:1022
+#: config/cris/cris.h:1016
msgid "no FUNCTION_PROFILER for CRIS"
msgstr ""
-#: config/cris/linux.h:71
+#: config/cris/linux.h:69
msgid "Together with -fpic and -fPIC, do not use GOTPLT references"
msgstr ""
-#: config/d30v/d30v.c:207
+#: config/d30v/d30v.c:218
#, c-format
msgid "bad modes_tieable_p for register %s, mode1 %s, mode2 %s"
msgstr ""
-#: config/d30v/d30v.c:2666
+#: config/d30v/d30v.c:2678
msgid "bad insn to d30v_print_operand_address:"
msgstr ""
-#: config/d30v/d30v.c:2683 config/d30v/d30v.c:2744 config/d30v/d30v.c:2765
-#: config/d30v/d30v.c:2783
+#: config/d30v/d30v.c:2695 config/d30v/d30v.c:2756 config/d30v/d30v.c:2777
+#: config/d30v/d30v.c:2795
msgid "bad insn to d30v_print_operand_memory_reference:"
msgstr ""
-#: config/d30v/d30v.c:2851
+#: config/d30v/d30v.c:2863
msgid "bad insn to d30v_print_operand, 'f' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2860
+#: config/d30v/d30v.c:2872
msgid "bad insn to d30v_print_operand, 'A' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2867
+#: config/d30v/d30v.c:2879
msgid "bad insn to d30v_print_operand, 'M' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2921
+#: config/d30v/d30v.c:2933
msgid "bad insn to print_operand, 'F' or 'T' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2932
+#: config/d30v/d30v.c:2944
msgid "bad insn to print_operand, 'B' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2939
+#: config/d30v/d30v.c:2951
msgid "bad insn to print_operand, 'E' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2957
+#: config/d30v/d30v.c:2969
msgid "bad insn to print_operand, 'R' modifier:"
msgstr ""
-#: config/d30v/d30v.c:2966 config/d30v/d30v.c:2974
+#: config/d30v/d30v.c:2978 config/d30v/d30v.c:2986
msgid "bad insn to print_operand, 's' modifier:"
msgstr ""
-#: config/d30v/d30v.c:3003
+#: config/d30v/d30v.c:3015
msgid "bad insn in d30v_print_operand, 0 case"
msgstr ""
-#: config/d30v/d30v.c:3301
+#: config/d30v/d30v.c:3313
msgid "d30v_emit_comparison"
msgstr ""
-#: config/d30v/d30v.c:3345
+#: config/d30v/d30v.c:3357
msgid "bad call to d30v_move_2words"
msgstr ""
-#: config/d30v/d30v.h:114
+#: config/d30v/d30v.h:111
msgid "Enable use of conditional move instructions"
msgstr ""
-#: config/d30v/d30v.h:117
+#: config/d30v/d30v.h:114
msgid "Disable use of conditional move instructions"
msgstr ""
-#: config/d30v/d30v.h:120
+#: config/d30v/d30v.h:117
msgid "Debug argument support in compiler"
msgstr ""
-#: config/d30v/d30v.h:123
+#: config/d30v/d30v.h:120
msgid "Debug stack support in compiler"
msgstr ""
-#: config/d30v/d30v.h:126
+#: config/d30v/d30v.h:123
msgid "Debug memory address support in compiler"
msgstr ""
-#: config/d30v/d30v.h:129
+#: config/d30v/d30v.h:126
msgid "Make adjacent short instructions parallel if possible"
msgstr ""
-#: config/d30v/d30v.h:132
+#: config/d30v/d30v.h:129
msgid "Do not make adjacent short instructions parallel"
msgstr ""
-#: config/d30v/d30v.h:135 config/d30v/d30v.h:138
+#: config/d30v/d30v.h:132 config/d30v/d30v.h:135
msgid "Link programs/data to be in external memory by default"
msgstr ""
-#: config/d30v/d30v.h:141
+#: config/d30v/d30v.h:138
msgid "Link programs/data to be in onchip memory by default"
msgstr ""
-#: config/d30v/d30v.h:149
+#: config/d30v/d30v.h:146
msgid "Change the branch costs within the compiler"
msgstr ""
-#: config/d30v/d30v.h:152
+#: config/d30v/d30v.h:149
msgid "Change the threshold for conversion to conditional execution"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1446 config/dsp16xx/dsp16xx.c:1469
+#: config/dsp16xx/dsp16xx.c:1463 config/dsp16xx/dsp16xx.c:1486
#, fuzzy
msgid "stack size > 32k"
msgstr "Stackstorlek > 32k"
-#: config/dsp16xx/dsp16xx.c:1678
+#: config/dsp16xx/dsp16xx.c:1695
#, fuzzy
msgid "invalid addressing mode"
msgstr "ogiltig kod"
-#: config/dsp16xx/dsp16xx.c:1821
+#: config/dsp16xx/dsp16xx.c:1838
msgid "bad register extension code"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:1921
+#: config/dsp16xx/dsp16xx.c:1938
#, fuzzy
msgid "invalid offset in ybase addressing"
msgstr "ogiltig användning av void-uttryck"
-#: config/dsp16xx/dsp16xx.c:1924
+#: config/dsp16xx/dsp16xx.c:1941
#, fuzzy
msgid "invalid register in ybase addressing"
msgstr "ogiltig användning av void-uttryck"
-#: config/dsp16xx/dsp16xx.c:2099
+#: config/dsp16xx/dsp16xx.c:2116
msgid "invalid shift operator in emit_1600_core_shift"
msgstr ""
-#: config/dsp16xx/dsp16xx.c:2428
+#: config/dsp16xx/dsp16xx.c:2406
#, fuzzy
msgid "invalid mode for gen_tst_reg"
msgstr "ogiltig typ \"void\" för new"
-#: config/dsp16xx/dsp16xx.c:2500
+#: config/dsp16xx/dsp16xx.c:2478
msgid "invalid mode for integer comparison in gen_compare_reg"
msgstr ""
@@ -10022,8 +9184,12 @@ msgstr ""
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/dsp16xx/dsp16xx.h:1218 config/dsp16xx/dsp16xx.h:1772
-#: config/dsp16xx/dsp16xx.h:1777
+#. This is how to output an insn to push a register on the stack.
+#. It need not be very fast code since it is used only for profiling
+#. This is how to output an insn to pop a register from the stack.
+#. It need not be very fast code since it is used only for profiling
+#: config/dsp16xx/dsp16xx.h:1216 config/dsp16xx/dsp16xx.h:1667
+#: config/dsp16xx/dsp16xx.h:1672
#, fuzzy
msgid "profiling not implemented yet"
msgstr "Profilering är inte implementerat ännu."
@@ -10031,51 +9197,51 @@ msgstr "Profilering är inte implementerat ännu."
#. Emit RTL insns to initialize the variable parts of a trampoline.
#. FNADDR is an RTX for the address of the function's pure code.
#. CXT is an RTX for the static chain value for the function.
-#: config/dsp16xx/dsp16xx.h:1228 config/dsp16xx/dsp16xx.h:1240
+#: config/dsp16xx/dsp16xx.h:1226 config/dsp16xx/dsp16xx.h:1238
#, fuzzy
msgid "trampolines not yet implemented"
msgstr "Profilering är inte implementerat ännu."
-#: config/fr30/fr30.c:453
+#: config/fr30/fr30.c:451
msgid "fr30_print_operand_address: unhandled address"
msgstr ""
-#: config/fr30/fr30.c:480
+#: config/fr30/fr30.c:475
#, c-format
msgid "fr30_print_operand: unrecognized %%p code"
msgstr ""
-#: config/fr30/fr30.c:500
+#: config/fr30/fr30.c:495
#, c-format
msgid "fr30_print_operand: unrecognized %%b code"
msgstr ""
-#: config/fr30/fr30.c:521
+#: config/fr30/fr30.c:516
#, c-format
msgid "fr30_print_operand: unrecognized %%B code"
msgstr ""
-#: config/fr30/fr30.c:529
+#: config/fr30/fr30.c:524
#, fuzzy, c-format
msgid "fr30_print_operand: invalid operand to %%A code"
msgstr "ogiltig operand för %V"
-#: config/fr30/fr30.c:546
+#: config/fr30/fr30.c:541
#, c-format
msgid "fr30_print_operand: invalid %%x code"
msgstr ""
-#: config/fr30/fr30.c:553
+#: config/fr30/fr30.c:548
#, c-format
msgid "fr30_print_operand: invalid %%F code"
msgstr ""
-#: config/fr30/fr30.c:570
+#: config/fr30/fr30.c:565
msgid "fr30_print_operand: unknown code"
msgstr ""
-#: config/fr30/fr30.c:599 config/fr30/fr30.c:608 config/fr30/fr30.c:619
-#: config/fr30/fr30.c:632
+#: config/fr30/fr30.c:594 config/fr30/fr30.c:603 config/fr30/fr30.c:614
+#: config/fr30/fr30.c:627
msgid "fr30_print_operand: unhandled MEM"
msgstr ""
@@ -10083,145 +9249,145 @@ msgstr ""
msgid "Assume small address space"
msgstr ""
-#: config/frv/frv.c:410 config/frv/frv.c:428
+#: config/frv/frv.c:392 config/frv/frv.c:410
#, c-format
msgid "Unknown cpu: -mcpu=%s"
msgstr ""
-#: config/frv/frv.c:451
+#: config/frv/frv.c:433
msgid "-fpic and -gdwarf are incompatible (-fpic and -g/-gdwarf-2 are fine)"
msgstr ""
-#: config/frv/frv.c:2520
+#: config/frv/frv.c:2397
msgid "Bad insn to frv_print_operand_address:"
msgstr ""
-#: config/frv/frv.c:2533
+#: config/frv/frv.c:2408
msgid "Bad register to frv_print_operand_memory_reference_reg:"
msgstr ""
-#: config/frv/frv.c:2574 config/frv/frv.c:2584 config/frv/frv.c:2593
-#: config/frv/frv.c:2621 config/frv/frv.c:2633 config/frv/frv.c:2637
+#: config/frv/frv.c:2446 config/frv/frv.c:2456 config/frv/frv.c:2465
+#: config/frv/frv.c:2493 config/frv/frv.c:2506 config/frv/frv.c:2510
msgid "Bad insn to frv_print_operand_memory_reference:"
msgstr ""
-#: config/frv/frv.c:2779
+#: config/frv/frv.c:2648
msgid "Bad insn in frv_print_operand, bad const_double"
msgstr ""
-#: config/frv/frv.c:2824
+#: config/frv/frv.c:2693
#, fuzzy
msgid "Bad insn to frv_print_operand, 'C' modifier:"
msgstr "ogiltig operand för %V"
-#: config/frv/frv.c:2847
+#: config/frv/frv.c:2716
#, fuzzy
msgid "Bad insn to frv_print_operand, 'c' modifier:"
msgstr "ogiltig operand för %V"
-#: config/frv/frv.c:2872
+#: config/frv/frv.c:2741
#, fuzzy
msgid "Bad insn to frv_print_operand, 'e' modifier:"
msgstr "ogiltig operand för %V"
-#: config/frv/frv.c:2880
+#: config/frv/frv.c:2749
#, fuzzy
msgid "Bad insn to frv_print_operand, 'F' modifier:"
msgstr "ogiltig operand för %V"
-#: config/frv/frv.c:2896
+#: config/frv/frv.c:2765
#, fuzzy
msgid "Bad insn to frv_print_operand, 'f' modifier:"
msgstr "ogiltig operand för %V"
-#: config/frv/frv.c:2949
+#: config/frv/frv.c:2818
#, fuzzy
msgid "Bad insn to frv_print_operand, 'L' modifier:"
msgstr "ogiltig operand för %V"
-#: config/frv/frv.c:2962
+#: config/frv/frv.c:2831
msgid "Bad insn to frv_print_operand, 'M/N' modifier:"
msgstr ""
-#: config/frv/frv.c:2983
+#: config/frv/frv.c:2852
#, fuzzy
msgid "Bad insn to frv_print_operand, 'O' modifier:"
msgstr "ogiltig operand för %V"
-#: config/frv/frv.c:3001
+#: config/frv/frv.c:2870
msgid "Bad insn to frv_print_operand, P modifier:"
msgstr ""
-#: config/frv/frv.c:3021
+#: config/frv/frv.c:2890
msgid "Bad insn in frv_print_operand, z case"
msgstr ""
-#: config/frv/frv.c:3049
+#: config/frv/frv.c:2918
msgid "Bad insn in frv_print_operand, 0 case"
msgstr ""
-#: config/frv/frv.c:3054
+#: config/frv/frv.c:2923
#, fuzzy
msgid "frv_print_operand: unknown code"
msgstr "ogiltig operand för %V"
-#: config/frv/frv.c:5737
+#: config/frv/frv.c:5474
msgid "Bad output_move_single operand"
msgstr ""
-#: config/frv/frv.c:5866
+#: config/frv/frv.c:5601
msgid "Bad output_move_double operand"
msgstr ""
-#: config/frv/frv.c:6010
+#: config/frv/frv.c:5743
msgid "Bad output_condmove_single operand"
msgstr ""
-#: config/frv/frv.c:8315
+#: config/frv/frv.c:8031
msgid "frv_registers_update"
msgstr ""
-#: config/frv/frv.c:8475
+#: config/frv/frv.c:8188
msgid "frv_registers_used_p"
msgstr ""
-#: config/frv/frv.c:8604
+#: config/frv/frv.c:8314
msgid "frv_registers_set_p"
msgstr ""
-#: config/frv/frv.c:9171
+#: config/frv/frv.c:8910
#, fuzzy
msgid "accumulator is not a constant integer"
msgstr "argumentet till \"asm\" är inte en konstant sträng"
-#: config/frv/frv.c:9176
+#: config/frv/frv.c:8915
msgid "accumulator number is out of bounds"
msgstr ""
-#: config/frv/frv.c:9187
+#: config/frv/frv.c:8926
#, fuzzy, c-format
msgid "inappropriate accumulator for `%s'"
msgstr "ingen tidigare deklaration av \"%s\""
-#: config/frv/frv.c:9253
+#: config/frv/frv.c:8986
#, fuzzy, c-format
msgid "`%s' expects a constant argument"
msgstr "tre \"l\"-suffix på heltalskonstant"
-#: config/frv/frv.c:9258
+#: config/frv/frv.c:8991
#, fuzzy, c-format
msgid "constant argument out of range for `%s'"
msgstr "för många argument till funktionen \"%s\""
-#: config/frv/frv.c:9638
+#: config/frv/frv.c:9338
msgid "media functions are not available unless -mmedia is used"
msgstr ""
-#: config/frv/frv.c:9650
+#: config/frv/frv.c:9350
msgid "this media function is only available on the fr500"
msgstr ""
-#: config/frv/frv.c:9678
+#: config/frv/frv.c:9378
msgid "this media function is only available on the fr400"
msgstr ""
@@ -10234,16 +9400,17 @@ msgstr ""
#. #else
#. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)");
#. #endif
-#: config/frv/frv.h:512
+#: config/frv/frv.h:506
+#, c-format
msgid " (frv)"
msgstr ""
-#: config/h8300/h8300.c:314
+#: config/h8300/h8300.c:288
#, fuzzy
msgid "-ms2600 is used without -ms"
msgstr "-ms2600 används utan -ms."
-#: config/h8300/h8300.c:320
+#: config/h8300/h8300.c:294
#, fuzzy
msgid "-mn is used without -mh or -ms"
msgstr "-ms2600 används utan -ms."
@@ -10253,79 +9420,79 @@ msgstr "-ms2600 används utan -ms."
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/h8300/h8300.h:150
+#: config/h8300/h8300.h:145
#, fuzzy
msgid "Generate H8S code"
msgstr "Generera H8/S-kod"
-#: config/h8300/h8300.h:151
+#: config/h8300/h8300.h:146
#, fuzzy
msgid "Do not generate H8S code"
msgstr "Generera inte H8/S-kod"
-#: config/h8300/h8300.h:152
+#: config/h8300/h8300.h:147
#, fuzzy
msgid "Generate H8S/2600 code"
msgstr "Generera kod för H8/S2600"
-#: config/h8300/h8300.h:153
+#: config/h8300/h8300.h:148
#, fuzzy
msgid "Do not generate H8S/2600 code"
msgstr "Generera inte kod för H8/S2600"
-#: config/h8300/h8300.h:154
+#: config/h8300/h8300.h:149
msgid "Make integers 32 bits wide"
msgstr "Gör heltal 32 bitar stora"
-#: config/h8300/h8300.h:157
+#: config/h8300/h8300.h:152
msgid "Use registers for argument passing"
msgstr "Använd register för argumentskickning"
-#: config/h8300/h8300.h:159
+#: config/h8300/h8300.h:154
msgid "Do not use registers for argument passing"
msgstr "Använd inte register för argumentskickning"
-#: config/h8300/h8300.h:161
+#: config/h8300/h8300.h:156
msgid "Consider access to byte sized memory slow"
msgstr ""
-#: config/h8300/h8300.h:162
+#: config/h8300/h8300.h:157
msgid "Enable linker relaxing"
msgstr ""
-#: config/h8300/h8300.h:164
+#: config/h8300/h8300.h:158
msgid "Generate H8/300H code"
msgstr "Generera H8/300H-kod"
-#: config/h8300/h8300.h:165
+#: config/h8300/h8300.h:159
msgid "Enable the normal mode"
msgstr ""
-#: config/h8300/h8300.h:166
+#: config/h8300/h8300.h:160
msgid "Do not generate H8/300H code"
msgstr "Generera inte H8/300H-kod"
-#: config/h8300/h8300.h:167
+#: config/h8300/h8300.h:161
msgid "Use H8/300 alignment rules"
msgstr ""
-#: config/i370/i370-c.c:53
+#: config/i370/i370-c.c:55
msgid "junk at end of #pragma map"
msgstr ""
-#: config/i370/i370-c.c:59
+#: config/i370/i370-c.c:61
msgid "malformed #pragma map, ignored"
msgstr ""
-#: config/i370/i370.c:915
+#: config/i370/i370.c:784
msgid "real name is too long - alias ignored"
msgstr ""
-#: config/i370/i370.c:920
+#: config/i370/i370.c:789
msgid "alias name is too long - alias ignored"
msgstr ""
-#: config/i370/i370.c:1191
+#: config/i370/i370.c:1060
msgid "internal error--no jump follows compare:"
msgstr ""
@@ -10341,424 +9508,481 @@ msgstr ""
msgid "Do not generate char instructions"
msgstr ""
-#: config/i386/i386.c:1050
+#: config/i386/i386.c:1161
#, c-format
msgid "code model %s not supported in PIC mode"
msgstr ""
-#: config/i386/i386.c:1060 config/sparc/sparc.c:356
+#: config/i386/i386.c:1171 config/sparc/sparc.c:387
#, c-format
msgid "bad value (%s) for -mcmodel= switch"
msgstr ""
-#: config/i386/i386.c:1075
+#: config/i386/i386.c:1186
#, fuzzy, c-format
msgid "bad value (%s) for -masm= switch"
msgstr "ogiltigt värde (%s) till flagga %s"
-#: config/i386/i386.c:1078
+#: config/i386/i386.c:1189
#, fuzzy, c-format
msgid "code model `%s' not supported in the %s bit mode"
msgstr "\"%s\" stöds inte av %s"
-#: config/i386/i386.c:1081
+#: config/i386/i386.c:1192
#, fuzzy
msgid "code model `large' not supported yet"
msgstr "\"%s\" stöds inte av %s"
-#: config/i386/i386.c:1083
+#: config/i386/i386.c:1194
#, c-format
msgid "%i-bit mode not compiled in"
msgstr ""
-#: config/i386/i386.c:1113
+#: config/i386/i386.c:1221 config/i386/i386.c:1233
+#, fuzzy
+msgid "CPU you selected does not support x86-64 instruction set"
+msgstr "målprocessorn stödjer inte THUMB-instruktioner"
+
+#: config/i386/i386.c:1226 config/iq2000/iq2000.c:1840
#, c-format
msgid "bad value (%s) for -march= switch"
msgstr ""
-#: config/i386/i386.c:1124
-#, c-format
-msgid "bad value (%s) for -mcpu= switch"
-msgstr ""
+#: config/i386/i386.c:1239
+#, fuzzy, c-format
+msgid "bad value (%s) for -mtune= switch"
+msgstr "ogiltigt värde (%s) till flagga -mcpu"
-#: config/i386/i386.c:1141
+#: config/i386/i386.c:1256
#, c-format
msgid "-mregparm=%d is not between 0 and %d"
msgstr ""
-#: config/i386/i386.c:1154
+#: config/i386/i386.c:1269
msgid "-malign-loops is obsolete, use -falign-loops"
msgstr ""
-#: config/i386/i386.c:1159 config/i386/i386.c:1172 config/i386/i386.c:1185
+#: config/i386/i386.c:1274 config/i386/i386.c:1287 config/i386/i386.c:1300
#, c-format
msgid "-malign-loops=%d is not between 0 and %d"
msgstr ""
-#: config/i386/i386.c:1167
+#: config/i386/i386.c:1282
msgid "-malign-jumps is obsolete, use -falign-jumps"
msgstr ""
-#: config/i386/i386.c:1180
+#: config/i386/i386.c:1295
msgid "-malign-functions is obsolete, use -falign-functions"
msgstr ""
-#: config/i386/i386.c:1218
+#: config/i386/i386.c:1333
#, c-format
msgid "-mpreferred-stack-boundary=%d is not between %d and 12"
msgstr ""
-#: config/i386/i386.c:1230
+#: config/i386/i386.c:1345
#, c-format
msgid "-mbranch-cost=%d is not between 0 and 5"
msgstr ""
-#: config/i386/i386.c:1242
+#: config/i386/i386.c:1357
#, fuzzy, c-format
msgid "bad value (%s) for -mtls-dialect= switch"
msgstr "ogiltigt värde (%s) till flagga -mcpu"
-#: config/i386/i386.c:1263
+#: config/i386/i386.c:1386
msgid "-malign-double makes no sense in the 64bit mode"
msgstr ""
-#: config/i386/i386.c:1265
+#: config/i386/i386.c:1388
msgid "-mrtd calling convention not supported in the 64bit mode"
msgstr ""
-#: config/i386/i386.c:1281 config/i386/i386.c:1292
+#: config/i386/i386.c:1410 config/i386/i386.c:1421
#, fuzzy
msgid "SSE instruction set disabled, using 387 arithmetics"
msgstr "pekare till funktion använd med aritmetik"
-#: config/i386/i386.c:1297
+#: config/i386/i386.c:1426
#, fuzzy
msgid "387 instruction set disabled, using SSE arithmetics"
msgstr "pekare till funktion använd med aritmetik"
-#: config/i386/i386.c:1304
+#: config/i386/i386.c:1433
#, fuzzy, c-format
msgid "bad value (%s) for -mfpmath= switch"
msgstr "ogiltigt värde (%s) till flagga -mcpu"
-#: config/i386/i386.c:1436
+#: config/i386/i386.c:1581 config/i386/i386.c:1592
+#, fuzzy
+msgid "fastcall and stdcall attributes are not compatible"
+msgstr "shared och mdll är inkompatibla"
+
+#: config/i386/i386.c:1585 config/i386/i386.c:1641
+#, fuzzy
+msgid "fastcall and regparm attributes are not compatible"
+msgstr "shared och mdll är inkompatibla"
+
+#: config/i386/i386.c:1628
#, fuzzy, c-format
msgid "`%s' attribute requires an integer constant argument"
msgstr "tre \"l\"-suffix på heltalskonstant"
-#: config/i386/i386.c:1442
+#: config/i386/i386.c:1634
#, fuzzy, c-format
msgid "argument to `%s' attribute larger than %d"
msgstr "kan inte sätta attributet \"%s\" efter definitionen"
-#: config/i386/i386.c:2504
+#: config/i386/i386.c:2593
+msgid "SSE vector argument without SSE enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2609
+msgid "MMX vector argument without MMX enabled changes the ABI"
+msgstr ""
+
+#: config/i386/i386.c:2837
msgid "SSE vector return without SSE enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:6386
+#: config/i386/i386.c:6811
msgid "invalid UNSPEC as operand"
msgstr ""
-#: config/i386/i386.c:6648
+#: config/i386/i386.c:7069
msgid "extended registers have no high halves"
msgstr ""
-#: config/i386/i386.c:6663
+#: config/i386/i386.c:7084
msgid "unsupported operand size for extended register"
msgstr ""
-#: config/i386/i386.c:6978
+#: config/i386/i386.c:7399
msgid "operand is neither a constant nor a condition code, invalid operand code 'c'"
msgstr ""
-#: config/i386/i386.c:7024
+#: config/i386/i386.c:7445
#, fuzzy, c-format
msgid "invalid operand code `%c'"
msgstr "ogiltig operand för %V"
-#: config/i386/i386.c:7071
+#: config/i386/i386.c:7488
#, fuzzy
msgid "invalid constraints for operand"
msgstr "ogiltig %%-kod"
-#: config/i386/i386.c:11271
+#: config/i386/i386.c:11889
#, fuzzy
msgid "unknown insn mode"
msgstr "okänt maskinläge `%s'"
-#. @@@ better error message
-#: config/i386/i386.c:13391 config/i386/i386.c:13427
-msgid "selector must be an immediate"
-msgstr ""
-
-#. @@@ better error message
-#: config/i386/i386.c:13588 config/i386/i386.c:13622
-msgid "mask must be an immediate"
+#: config/i386/i386.c:14021 config/i386/i386.c:14057
+#, c-format
+msgid "selector must be an integer constant in the range 0..%i"
msgstr ""
-#: config/i386/i386.c:13654
+#: config/i386/i386.c:14285
#, fuzzy
msgid "shift must be an immediate"
msgstr "predikat måste vara en identifierare"
-#: config/i386/winnt.c:96
+#: config/i386/i386.c:15308
#, fuzzy, c-format
-msgid "function `%s' definition is marked dllimport."
-msgstr "funktionsdefinition deklarerad som \"auto\""
+msgid "`%s' incompatible attribute ignored"
+msgstr "attributet `%s' ignorerat"
#: config/i386/winnt.c:104
-#, fuzzy, c-format
-msgid "variable `%s' definition is marked dllimport."
+#, fuzzy
+msgid "%Jfunction `%D' definition is marked dllimport."
+msgstr "funktionsdefinition deklarerad som \"auto\""
+
+#: config/i386/winnt.c:112
+#, fuzzy
+msgid "%Jvariable `%D' definition is marked dllimport."
msgstr "statisk variabel \"%s\" är markerad som dllimport"
-#: config/i386/winnt.c:123
-#, c-format
-msgid "external linkage required for symbol '%s' because of '%s' attribute."
+#: config/i386/winnt.c:132
+msgid "%Jexternal linkage required for symbol '%D' because of '%s' attribute."
msgstr ""
-#: config/i386/winnt.c:143
+#: config/i386/winnt.c:149
#, fuzzy, c-format
msgid "`%s' attribute only applies to variables"
msgstr "attributet \"%s\" är inte applicerbart på typer"
-#: config/i386/winnt.c:242
-#, c-format
-msgid "function '%s' is defined after prior declaration as dllimport: attribute ignored."
+#: config/i386/winnt.c:247
+msgid "%Jfunction '%D' is defined after prior declaration as dllimport: attribute ignored"
msgstr ""
-#: config/i386/winnt.c:252
-#, fuzzy, c-format
-msgid "inline function '%s' is declared as dllimport: attribute ignored."
+#: config/i386/winnt.c:258
+#, fuzzy
+msgid "%Jinline function '%D' is declared as dllimport: attribute ignored."
msgstr "funktionen \"%s\" deklarerades tidigare i ett block"
-#: config/i386/winnt.c:263
-#, c-format
-msgid "definition of static data member '%s' of dllimport'd class."
+#: config/i386/winnt.c:270
+msgid "%Jdefinition of static data member '%D' of dllimport'd class."
msgstr ""
-#: config/i386/winnt.c:322
-#, c-format
-msgid "inconsistent dll linkage for '%s': dllexport assumed."
+#: config/i386/winnt.c:329
+msgid "%Jinconsistent dll linkage for '%D', dllexport assumed."
msgstr ""
-#: config/i386/winnt.c:364
+#: config/i386/winnt.c:371
#, fuzzy, c-format
msgid "`%s' declared as both exported to and imported from a DLL"
msgstr "\"%s\" är deklarerad både som exporterad till och importerad från en DLL."
-#: config/i386/winnt.c:373
-#, c-format
-msgid "failure in redeclaration of '%s': dllimport'd symbol lacks external linkage."
+#: config/i386/winnt.c:380
+msgid "%Jfailure in redeclaration of '%D': dllimport'd symbol lacks external linkage."
msgstr ""
-#: config/i386/winnt.c:479
-#, c-format
-msgid "'%s' %s after being referenced with dllimport linkage."
+#: config/i386/winnt.c:529
+msgid "%J'%D' defined locally after being referenced with dllimport linkage"
msgstr ""
-#: config/i386/cygwin.h:45
+#: config/i386/winnt.c:532
+msgid "%J'%D' redeclared without dllimport attribute after being referenced with dllimport linkage"
+msgstr ""
+
+#: config/i386/winnt.c:701
+msgid "%J'%D' causes a section type conflict"
+msgstr ""
+
+#: config/i386/cygming.h:40
msgid "Use the Cygwin interface"
msgstr "Använd Cygwin-interfacet"
-#: config/i386/cygwin.h:46
+#: config/i386/cygming.h:41
msgid "Use the Mingw32 interface"
msgstr "Använd Mingw32-interfacet"
-#: config/i386/cygwin.h:47
+#: config/i386/cygming.h:42
msgid "Create GUI application"
msgstr "Skapa GUI-applikation"
-#: config/i386/cygwin.h:48
+#: config/i386/cygming.h:43
msgid "Don't set Windows defines"
msgstr ""
-#: config/i386/cygwin.h:49
+#: config/i386/cygming.h:44
msgid "Set Windows defines"
msgstr ""
-#: config/i386/cygwin.h:50
+#: config/i386/cygming.h:45
msgid "Create console application"
msgstr "Skapa konsollapplikation"
-#: config/i386/cygwin.h:51 config/i386/win32.h:59
+#: config/i386/cygming.h:46
msgid "Generate code for a DLL"
msgstr "Generera kod för en DLL"
-#: config/i386/cygwin.h:53 config/i386/win32.h:61
+#: config/i386/cygming.h:48
msgid "Ignore dllimport for functions"
msgstr "Ignorera dllimport för funktioner"
-#: config/i386/cygwin.h:55
+#: config/i386/cygming.h:50
msgid "Use Mingw-specific thread support"
msgstr ""
-#: config/i386/cygwin.h:245
+#: config/i386/cygming.h:169
#, c-format
msgid "-f%s ignored for target (all code is position independent)"
msgstr ""
-#: config/i386/djgpp.h:206
+#: config/i386/djgpp.h:191
msgid "-mbnu210 is ignored (option is obsolete)"
msgstr ""
+#: config/i386/i386-interix.h:256
+#, fuzzy
+msgid "ms-bitfields not supported for objc"
+msgstr "\"%s\" stöds inte av %s"
+
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
-#: config/i386/i386.h:306
+#: config/i386/i386.h:339
msgid "Alternate calling convention"
msgstr ""
-#: config/i386/i386.h:308 config/m68k/m68k.h:180 config/ns32k/ns32k.h:144
+#: config/i386/i386.h:341 config/m68k/m68k.h:344 config/ns32k/ns32k.h:144
msgid "Use normal calling convention"
msgstr ""
-#: config/i386/i386.h:310
+#: config/i386/i386.h:343
msgid "Align some doubles on dword boundary"
msgstr ""
-#: config/i386/i386.h:312
+#: config/i386/i386.h:345
msgid "Align doubles on word boundary"
msgstr ""
-#: config/i386/i386.h:314
+#: config/i386/i386.h:347
msgid "Uninitialized locals in .bss"
msgstr ""
-#: config/i386/i386.h:316
+#: config/i386/i386.h:349
msgid "Uninitialized locals in .data"
msgstr ""
-#: config/i386/i386.h:318 config/m68k/linux-aout.h:45 config/m68k/linux.h:50
-#: config/ns32k/ns32k.h:167
+#: config/i386/i386.h:351 config/m68k/linux.h:35 config/ns32k/ns32k.h:167
msgid "Use IEEE math for fp comparisons"
msgstr "Använd IEEE matematik för flyttaljämförelser"
-#: config/i386/i386.h:320 config/ns32k/ns32k.h:169
+#: config/i386/i386.h:353 config/ns32k/ns32k.h:169
msgid "Do not use IEEE math for fp comparisons"
msgstr "Använd inte IEEE matematik för flyttaljämförelser"
-#: config/i386/i386.h:322
+#: config/i386/i386.h:355
msgid "Return values of functions in FPU registers"
msgstr ""
-#: config/i386/i386.h:324
+#: config/i386/i386.h:357
msgid "Do not return values of functions in FPU registers"
msgstr ""
-#: config/i386/i386.h:326
+#: config/i386/i386.h:359
msgid "Do not generate sin, cos, sqrt for FPU"
msgstr "Generera inte sin, cos, sqrt för FPU"
-#: config/i386/i386.h:328
+#: config/i386/i386.h:361
msgid "Generate sin, cos, sqrt for FPU"
msgstr "Generera sin, cos, sqrt för FPU"
-#: config/i386/i386.h:330
+#: config/i386/i386.h:363
msgid "Omit the frame pointer in leaf functions"
msgstr ""
-#: config/i386/i386.h:333
+#: config/i386/i386.h:366
msgid "Enable stack probing"
msgstr ""
#. undocumented
#. undocumented
-#: config/i386/i386.h:338
+#: config/i386/i386.h:371
msgid "Align destination of the string operations"
msgstr ""
-#: config/i386/i386.h:340
+#: config/i386/i386.h:373
msgid "Do not align destination of the string operations"
msgstr ""
-#: config/i386/i386.h:342
+#: config/i386/i386.h:375
msgid "Inline all known string operations"
msgstr ""
-#: config/i386/i386.h:344
+#: config/i386/i386.h:377
msgid "Do not inline all known string operations"
msgstr ""
-#: config/i386/i386.h:346 config/i386/i386.h:350
+#: config/i386/i386.h:379 config/i386/i386.h:383
msgid "Use push instructions to save outgoing arguments"
msgstr ""
-#: config/i386/i386.h:348 config/i386/i386.h:352
+#: config/i386/i386.h:381 config/i386/i386.h:385
msgid "Do not use push instructions to save outgoing arguments"
msgstr ""
-#: config/i386/i386.h:354
+#: config/i386/i386.h:387
#, fuzzy
msgid "Support MMX built-in functions"
msgstr "Stöd inbyggda funktioner med MMX"
-#: config/i386/i386.h:356
+#: config/i386/i386.h:389
#, fuzzy
msgid "Do not support MMX built-in functions"
msgstr "Stöd inte inbyggda funktioner med MMX"
-#: config/i386/i386.h:358
+#: config/i386/i386.h:391
#, fuzzy
msgid "Support 3DNow! built-in functions"
msgstr "döljer inbyggd funktion \"%s\""
-#: config/i386/i386.h:360
+#: config/i386/i386.h:393
#, fuzzy
msgid "Do not support 3DNow! built-in functions"
msgstr "Stöd inte inbyggda funktioner med MMX"
-#: config/i386/i386.h:362
+#: config/i386/i386.h:395
#, fuzzy
msgid "Support MMX and SSE built-in functions and code generation"
msgstr "Stöd inbyggda funktioner med MMX och SSE"
-#: config/i386/i386.h:364
+#: config/i386/i386.h:397
#, fuzzy
msgid "Do not support MMX and SSE built-in functions and code generation"
msgstr "Stöd inte inbyggda funktioner med MMX och SSE"
-#: config/i386/i386.h:366
+#: config/i386/i386.h:399
#, fuzzy
msgid "Support MMX, SSE and SSE2 built-in functions and code generation"
msgstr "Stöd inbyggda funktioner med MMX och SSE"
-#: config/i386/i386.h:368
+#: config/i386/i386.h:401
#, fuzzy
msgid "Do not support MMX, SSE and SSE2 built-in functions and code generation"
msgstr "Stöd inte inbyggda funktioner med MMX och SSE"
-#: config/i386/i386.h:370
+#: config/i386/i386.h:403
+#, fuzzy
+msgid "Support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr "Stöd inbyggda funktioner med MMX och SSE"
+
+#: config/i386/i386.h:405
+#, fuzzy
+msgid "Do not support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr "Stöd inte inbyggda funktioner med MMX och SSE"
+
+#: config/i386/i386.h:407
#, fuzzy
msgid "sizeof(long double) is 16"
msgstr "sizeof(long double) är 16."
-#: config/i386/i386.h:372
+#: config/i386/i386.h:409
#, fuzzy
msgid "sizeof(long double) is 12"
msgstr "sizeof(long double) är 12."
-#: config/i386/i386.h:374
+#: config/i386/i386.h:411
#, fuzzy
msgid "Generate 64bit x86-64 code"
msgstr "Generera H8/S-kod"
-#: config/i386/i386.h:376
+#: config/i386/i386.h:413
#, fuzzy
msgid "Generate 32bit i386 code"
msgstr "Generera \"big endian\"-kod."
-#: config/i386/i386.h:378
+#: config/i386/i386.h:415
+msgid "Use native (MS) bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:417
+msgid "Use gcc default bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:419
msgid "Use red-zone in the x86-64 code"
msgstr ""
-#: config/i386/i386.h:380
+#: config/i386/i386.h:421
#, fuzzy
msgid "Do not use red-zone in the x86-64 code"
msgstr "Generera inte H8/S-kod"
+#: config/i386/i386.h:423
+#, c-format
+msgid "Use direct references against %gs when accessing tls data"
+msgstr ""
+
+#: config/i386/i386.h:425
+#, c-format
+msgid "Do not use direct references against %gs when accessing tls data"
+msgstr ""
+
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10768,24 +9992,25 @@ msgstr "Generera inte H8/S-kod"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:409 config/rs6000/rs6000.h:393 config/sparc/sparc.h:635
+#: config/i386/i386.h:459 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437
+#: config/s390/s390.h:146 config/sparc/sparc.h:650
msgid "Schedule code for given CPU"
msgstr "Schemalägg kod för en given CPU"
-#: config/i386/i386.h:411
+#: config/i386/i386.h:461
#, fuzzy
msgid "Generate floating point mathematics using given instruction set"
msgstr "Använd flyttalsinstruktioner i hårdvara"
-#: config/i386/i386.h:413
+#: config/i386/i386.h:463 config/s390/s390.h:148
msgid "Generate code for given CPU"
msgstr "Generera kod för en given CPU"
-#: config/i386/i386.h:415
+#: config/i386/i386.h:465
msgid "Number of registers used to pass integer arguments"
msgstr "Antal register för att skicka heltalsargument"
-#. TARGET_DEFAULT is defined in sun*.h and isi.h, etc.
+#. TARGET_DEFAULT is defined in m68k-none.h, netbsd.h, etc.
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10795,100 +10020,101 @@ msgstr "Antal register för att skicka heltalsargument"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:417 config/m68k/m68k.h:263
+#: config/i386/i386.h:467 config/m68k/m68k.h:360
msgid "Loop code aligned to this power of 2"
msgstr "Loop-kod justeras till denna 2-potens"
-#: config/i386/i386.h:419 config/m68k/m68k.h:265
+#: config/i386/i386.h:469 config/m68k/m68k.h:362
msgid "Jump targets are aligned to this power of 2"
msgstr "Hoppmål justeras till denna 2-potens"
-#: config/i386/i386.h:421 config/m68k/m68k.h:267
+#: config/i386/i386.h:471 config/m68k/m68k.h:364
msgid "Function starts are aligned to this power of 2"
msgstr "Funktionsbörjan justeras till denna 2-potens"
-#: config/i386/i386.h:424
+#: config/i386/i386.h:474
msgid "Attempt to keep stack aligned to this power of 2"
msgstr "Försök håll stacken justerad till denna 2-potens"
-#: config/i386/i386.h:426
+#: config/i386/i386.h:476
msgid "Branches are this expensive (1-5, arbitrary units)"
msgstr "Hopp är dyra (1-5, godtyckliga enheter)"
-#: config/i386/i386.h:428
+#: config/i386/i386.h:478
msgid "Use given x86-64 code model"
msgstr ""
#. Undocumented.
#. Undocumented.
-#: config/i386/i386.h:434
+#: config/i386/i386.h:484
#, fuzzy
msgid "Use given assembler dialect"
msgstr "Använd assemblersyntax för DEC"
-#: config/i386/i386.h:436
+#: config/i386/i386.h:486
#, fuzzy
msgid "Use given thread-local storage dialect"
msgstr "Använd assemblersyntax för DEC"
-#: config/i386/sco5.h:297
+#: config/i386/sco5.h:292
msgid "Generate ELF output"
msgstr "Generera ELF-utdata"
-#: config/i386/win32.h:53
-msgid "Use Mingw32 interface"
-msgstr ""
-
-#: config/i386/win32.h:55
-msgid "Use Cygwin interface"
-msgstr ""
-
-#: config/i386/win32.h:57
-msgid "Use bare Windows interface"
-msgstr ""
-
#. If the environment variable DJDIR is not defined, then DJGPP is not installed correctly and GCC will quickly become confused with the default prefix settings. Report the problem now so the user doesn't receive deceptive "file not found" error messages later.
#. DJDIR is automatically defined by the DJGPP environment config file pointed to by the environment variable DJGPP. Examine DJGPP to try and figure out what's wrong.
-#: config/i386/xm-djgpp.h:71
+#: config/i386/xm-djgpp.h:64
#, fuzzy
msgid "environment variable DJGPP not defined"
msgstr "Omgivningsvariabel DJGPP är inte definierad."
-#: config/i386/xm-djgpp.h:73
+#: config/i386/xm-djgpp.h:66
#, fuzzy, c-format
msgid "environment variable DJGPP points to missing file '%s'"
msgstr "Omgivningsvariabel DJGPP pekar på fil \"%s\" som saknas"
-#: config/i386/xm-djgpp.h:76
+#: config/i386/xm-djgpp.h:69
#, fuzzy, c-format
msgid "environment variable DJGPP points to corrupt file '%s'"
msgstr "Omgivningsvariabel DJGPP pekar på fil \"%s\" som är trasig"
-#: config/i960/i960-c.c:66
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/i860/i860.h:60
+msgid "Generate code which uses the FPU"
+msgstr "Generera kod som använder FPU"
+
+#: config/i860/i860.h:61 config/i860/i860.h:62
+msgid "Do not generate code which uses the FPU"
+msgstr "Genrera inte kod som använder FPU"
+
+#: config/i960/i960-c.c:68
msgid "sorry, not implemented: #pragma align NAME=SIZE"
msgstr "ledsen, inte implementerat: #pragma align NAMN=STORLEK"
-#: config/i960/i960-c.c:71
+#: config/i960/i960-c.c:73
msgid "malformed #pragma align - ignored"
msgstr ""
-#: config/i960/i960-c.c:109
+#: config/i960/i960-c.c:111
msgid "sorry, not implemented: #pragma noalign NAME"
msgstr "ledsen, inte implementerat: #pragma noalign NAMN"
-#: config/i960/i960.c:121 config/i960/i960.c:131
+#: config/i960/i960.c:134 config/i960/i960.c:144
msgid "conflicting architectures defined - using C series"
msgstr ""
-#: config/i960/i960.c:126
+#: config/i960/i960.c:139
msgid "conflicting architectures defined - using K series"
msgstr ""
-#: config/i960/i960.c:141
+#: config/i960/i960.c:154
msgid "iC2.0 and iC3.0 are incompatible - using iC3.0"
msgstr "iC2.0 och iC3.0 är imkompatible - använder iC3.0"
-#: config/i960/i960.c:1448 config/m68k/m68k.c:559 config/rs6000/rs6000.c:9976
+#: config/i960/i960.c:1456 config/m68k/m68k.c:588 config/rs6000/rs6000.c:11296
msgid "stack limit expression is not supported"
msgstr ""
@@ -10899,400 +10125,548 @@ msgstr ""
#. An empty string NAME is used to identify the default VALUE.
#. ??? Not all ten of these architecture variations actually exist, but I
#. am not sure which are real and which aren't.
-#: config/i960/i960.h:240
+#: config/i960/i960.h:250
msgid "Generate SA code"
msgstr "Generera SA-kod"
-#: config/i960/i960.h:243
+#: config/i960/i960.h:253
msgid "Generate SB code"
msgstr "Generera SB-kod"
#. {"sc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate SC code")},
-#: config/i960/i960.h:248
+#: config/i960/i960.h:258
msgid "Generate KA code"
msgstr "Generera KA-kod"
-#: config/i960/i960.h:251
+#: config/i960/i960.h:261
msgid "Generate KB code"
msgstr "Generera KB-kod"
#. {"kc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate KC code")},
-#: config/i960/i960.h:256
+#: config/i960/i960.h:266
msgid "Generate JA code"
msgstr "Generera JA-kod"
-#: config/i960/i960.h:258
+#: config/i960/i960.h:268
msgid "Generate JD code"
msgstr "Generera JD-kod"
-#: config/i960/i960.h:261
+#: config/i960/i960.h:271
msgid "Generate JF code"
msgstr "Generera JF-kod"
-#: config/i960/i960.h:263
+#: config/i960/i960.h:273
msgid "generate RP code"
msgstr "Generera RP-kod"
-#: config/i960/i960.h:266
+#: config/i960/i960.h:276
msgid "Generate MC code"
msgstr "Generera MC-kod"
-#: config/i960/i960.h:269
+#: config/i960/i960.h:279
msgid "Generate CA code"
msgstr "Generera CA-kod"
#. {"cb", (TARGET_FLAG_NUMERICS|TARGET_FLAG_C_SERIES| TARGET_FLAG_BRANCH_PREDICT|TARGET_FLAG_CODE_ALIGN), N_("Generate CB code")}, {"cc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_C_SERIES|TARGET_FLAG_BRANCH_PREDICT| TARGET_FLAG_CODE_ALIGN), N_("Generate CC code")},
-#: config/i960/i960.h:279
+#: config/i960/i960.h:289
msgid "Generate CF code"
msgstr "Generera CF-kod"
-#: config/i960/i960.h:283 config/mips/mips.h:568 config/pa/pa.h:266
+#: config/i960/i960.h:293 config/mips/mips.h:539 config/pa/pa.h:266
msgid "Use software floating point"
msgstr "Använd mjukvaruflytttal"
-#: config/i960/i960.h:285
+#: config/i960/i960.h:295
msgid "Use alternate leaf function entries"
msgstr ""
-#: config/i960/i960.h:287
+#: config/i960/i960.h:297
msgid "Do not use alternate leaf function entries"
msgstr ""
-#: config/i960/i960.h:289
+#: config/i960/i960.h:299
msgid "Perform tail call optimization"
msgstr "Utför optimering för svansrekursion"
-#: config/i960/i960.h:291
+#: config/i960/i960.h:301
msgid "Do not perform tail call optimization"
msgstr "Utför inte optimering för svansrekursion"
-#: config/i960/i960.h:293
+#: config/i960/i960.h:303
msgid "Use complex addressing modes"
msgstr ""
-#: config/i960/i960.h:295
+#: config/i960/i960.h:305
msgid "Do not use complex addressing modes"
msgstr ""
-#: config/i960/i960.h:297
+#: config/i960/i960.h:307
msgid "Align code to 8 byte boundary"
msgstr ""
-#: config/i960/i960.h:299
+#: config/i960/i960.h:309
msgid "Do not align code to 8 byte boundary"
msgstr ""
#. {"clean-linkage", (TARGET_FLAG_CLEAN_LINKAGE), N_("Force use of prototypes")}, {"no-clean-linkage", -(TARGET_FLAG_CLEAN_LINKAGE), N_("Do not force use of prototypes")},
-#: config/i960/i960.h:305 config/i960/i960.h:307
+#: config/i960/i960.h:315 config/i960/i960.h:317
msgid "Enable compatibility with iC960 v2.0"
msgstr ""
-#: config/i960/i960.h:309
+#: config/i960/i960.h:319
msgid "Enable compatibility with iC960 v3.0"
msgstr ""
-#: config/i960/i960.h:311 config/i960/i960.h:313
+#: config/i960/i960.h:321 config/i960/i960.h:323
msgid "Enable compatibility with ic960 assembler"
msgstr ""
-#: config/i960/i960.h:315
+#: config/i960/i960.h:325
msgid "Do not permit unaligned accesses"
msgstr ""
-#: config/i960/i960.h:317
+#: config/i960/i960.h:327
msgid "Permit unaligned accesses"
msgstr ""
-#: config/i960/i960.h:319
+#: config/i960/i960.h:329
msgid "Layout types like Intel's v1.3 gcc"
msgstr ""
-#: config/i960/i960.h:321
+#: config/i960/i960.h:331
msgid "Do not layout types like Intel's v1.3 gcc"
msgstr ""
-#: config/i960/i960.h:323 config/sparc/freebsd.h:80 config/sparc/linux.h:86
-#: config/sparc/linux64.h:88 config/sparc/netbsd-elf.h:238
+#: config/i960/i960.h:333 config/sparc/freebsd.h:76 config/sparc/linux.h:91
+#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215
msgid "Use 64 bit long doubles"
msgstr "Använd 64 bits long double"
-#: config/i960/i960.h:325
+#: config/i960/i960.h:335
msgid "Enable linker relaxation"
msgstr ""
-#: config/i960/i960.h:327
+#: config/i960/i960.h:337
msgid "Do not enable linker relaxation"
msgstr ""
-#: config/ia64/ia64-c.c:51
+#: config/ia64/ia64-c.c:52
msgid "malformed #pragma builtin"
msgstr ""
-#: config/ia64/ia64.c:4015
+#: config/ia64/ia64.c:1021 config/m32r/m32r.c:354
+#, fuzzy, c-format
+msgid "invalid argument of `%s' attribute"
+msgstr "ogiltigt typargument till \"%s\""
+
+#: config/ia64/ia64.c:1033
+#, fuzzy
+msgid "%Jan address area attribute cannot be specified for local variables"
+msgstr "attributet \"section\" kan inte anges för lokala variabler"
+
+#: config/ia64/ia64.c:1040
+#, fuzzy
+msgid "%Jaddress area of '%s' conflicts with previous declaration"
+msgstr "sektion \"%s\" står i konflikt med tidigare deklaration"
+
+#: config/ia64/ia64.c:1047
+#, fuzzy
+msgid "%Jaddress area attribute cannot be specified for functions"
+msgstr "attributet \"section\" kan inte anges för lokala variabler"
+
+#: config/ia64/ia64.c:4288
msgid "ia64_print_operand: unknown code"
msgstr ""
-#: config/ia64/ia64.c:4292
+#: config/ia64/ia64.c:4628
msgid "value of -mfixed-range must have form REG1-REG2"
msgstr ""
-#: config/ia64/ia64.c:4319
+#: config/ia64/ia64.c:4655
#, c-format
msgid "%s-%s is an empty range"
msgstr "%s-%s är ett tomt intervall"
-#: config/ia64/ia64.c:4350
+#: config/ia64/ia64.c:4703
msgid "cannot optimize floating point division for both latency and throughput"
msgstr ""
-#: config/ia64/ia64.c:4356
+#: config/ia64/ia64.c:4709
msgid "cannot optimize integer division for both latency and throughput"
msgstr ""
-#: config/ia64/ia64.c:4368
+#: config/ia64/ia64.c:4715
+msgid "cannot optimize square root for both latency and throughput"
+msgstr ""
+
+#: config/ia64/ia64.c:4721
+msgid "not yet implemented: latency-optimized inline square root"
+msgstr ""
+
+#: config/ia64/ia64.c:4733
#, fuzzy, c-format
msgid "bad value (%s) for -mtls-size= switch"
msgstr "ogiltigt värde (%s) till flagga -mcpu"
+#: config/ia64/ia64.c:4749
+#, fuzzy, c-format
+msgid "bad value (%s) for -tune= switch"
+msgstr "ogiltigt värde (%s) till flagga -mcpu"
+
#. This macro defines names of command options to set and clear bits in
#. `target_flags'. Its definition is an initializer with a subgrouping for
#. each command option.
-#: config/ia64/ia64.h:154
+#: config/ia64/ia64.h:172
msgid "Generate big endian code"
msgstr "Generera \"big endian\"-kod."
-#: config/ia64/ia64.h:156 config/mcore/mcore.h:159
+#: config/ia64/ia64.h:174 config/mcore/mcore.h:154
msgid "Generate little endian code"
msgstr "Generera \"little endian\"-kod."
-#: config/ia64/ia64.h:158
+#: config/ia64/ia64.h:176
msgid "Generate code for GNU as"
msgstr "Generera kod för GNU as"
-#: config/ia64/ia64.h:160
+#: config/ia64/ia64.h:178
msgid "Generate code for Intel as"
msgstr "Generera kod för Intel as"
-#: config/ia64/ia64.h:162
+#: config/ia64/ia64.h:180
msgid "Generate code for GNU ld"
msgstr "Generera kod för GNU ld"
-#: config/ia64/ia64.h:164
+#: config/ia64/ia64.h:182
msgid "Generate code for Intel ld"
msgstr "Generera kod för Intel ld"
-#: config/ia64/ia64.h:166
+#: config/ia64/ia64.h:184
msgid "Generate code without GP reg"
msgstr ""
-#: config/ia64/ia64.h:168
+#: config/ia64/ia64.h:186
msgid "Emit stop bits before and after volatile extended asms"
msgstr ""
-#: config/ia64/ia64.h:170
+#: config/ia64/ia64.h:188
msgid "Don't emit stop bits before and after volatile extended asms"
msgstr ""
-#: config/ia64/ia64.h:172
+#: config/ia64/ia64.h:190
msgid "Emit code for Itanium (TM) processor B step"
msgstr ""
-#: config/ia64/ia64.h:174
+#: config/ia64/ia64.h:192
msgid "Use in/loc/out register names"
msgstr ""
-#: config/ia64/ia64.h:176
+#: config/ia64/ia64.h:194
msgid "Disable use of sdata/scommon/sbss"
msgstr ""
-#: config/ia64/ia64.h:178
+#: config/ia64/ia64.h:196
msgid "Enable use of sdata/scommon/sbss"
msgstr ""
-#: config/ia64/ia64.h:180
+#: config/ia64/ia64.h:198
msgid "gp is constant (but save/restore gp on indirect calls)"
msgstr ""
-#: config/ia64/ia64.h:182
+#: config/ia64/ia64.h:200
msgid "Generate self-relocatable code"
msgstr ""
-#: config/ia64/ia64.h:184
+#: config/ia64/ia64.h:202
msgid "Generate inline floating point division, optimize for latency"
msgstr ""
-#: config/ia64/ia64.h:186
+#: config/ia64/ia64.h:204
msgid "Generate inline floating point division, optimize for throughput"
msgstr ""
-#: config/ia64/ia64.h:188
+#: config/ia64/ia64.h:206
msgid "Generate inline integer division, optimize for latency"
msgstr ""
-#: config/ia64/ia64.h:190
+#: config/ia64/ia64.h:208
msgid "Generate inline integer division, optimize for throughput"
msgstr ""
-#: config/ia64/ia64.h:192
+#: config/ia64/ia64.h:210
+msgid "Generate inline square root, optimize for latency"
+msgstr ""
+
+#: config/ia64/ia64.h:212
+msgid "Generate inline square root, optimize for throughput"
+msgstr ""
+
+#: config/ia64/ia64.h:214
msgid "Enable Dwarf 2 line debug info via GNU as"
msgstr ""
-#: config/ia64/ia64.h:194
+#: config/ia64/ia64.h:216
msgid "Disable Dwarf 2 line debug info via GNU as"
msgstr ""
-#: config/ia64/ia64.h:223
+#: config/ia64/ia64.h:218
+msgid "Enable earlier placing stop bits for better scheduling"
+msgstr ""
+
+#: config/ia64/ia64.h:220
+msgid "Disable earlier placing stop bits"
+msgstr ""
+
+#: config/ia64/ia64.h:265
msgid "Specify range of registers to make fixed"
msgstr ""
-#: config/ip2k/ip2k.c:1090
+#: config/ip2k/ip2k.c:1074
#, fuzzy
msgid "bad operand"
msgstr "ogiltig %%-kod"
-#: config/m32r/m32r.c:139
+#: config/iq2000/iq2000.c:1816
#, c-format
-msgid "bad value (%s) for -mmodel switch"
+msgid "bad value (%s) for -mcpu= switch"
msgstr ""
-#: config/m32r/m32r.c:148
+#: config/iq2000/iq2000.c:1845
+#, fuzzy, c-format
+msgid "The compiler does not support -march=%s."
+msgstr "ISO C stöder inte formatstorlek i strftime"
+
+#: config/iq2000/iq2000.c:2232
#, c-format
-msgid "bad value (%s) for -msdata switch"
+msgid "gp_offset (%ld) or end_offset (%ld) is less than zero."
msgstr ""
-#: config/m32r/m32r.c:319
+#: config/iq2000/iq2000.c:3023
#, fuzzy, c-format
-msgid "invalid argument of `%s' attribute"
-msgstr "ogiltigt typargument till \"%s\""
+msgid "argument `%d' is not a constant"
+msgstr "argumentet till \"asm\" är inte en konstant sträng"
+
+#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2081
+msgid "PRINT_OPERAND_ADDRESS, null pointer"
+msgstr "PRINT_OPERAND_ADDRESS, null-pekare"
+
+#: config/iq2000/iq2000.c:3469
+#, c-format
+msgid "PRINT_OPERAND: Unknown punctuation '%c'"
+msgstr ""
-#: config/m32r/m32r.c:422
-msgid "const objects cannot go in .sdata/.sbss"
+#: config/iq2000/iq2000.c:3478 config/mips/mips.c:5457
+#: config/xtensa/xtensa.c:1935
+msgid "PRINT_OPERAND null pointer"
msgstr ""
-#: config/m32r/m32r.c:2256
+#: config/iq2000/iq2000.c:3547
+#, fuzzy, c-format
+msgid "invalid %%P operand"
+msgstr "ogiltigt %%P-värde"
+
+#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8881
+#, c-format
+msgid "invalid %%p value"
+msgstr ""
+
+#: config/iq2000/iq2000.c:3619 config/mips/mips.c:5587
+#, c-format
+msgid "invalid use of %%d, %%x, or %%X"
+msgstr "ogiltig användning av %%d, %%x eller %%x"
+
+#: config/iq2000/iq2000.h:72 config/mn10300/mn10300.h:74
+msgid "No default crt0.o"
+msgstr ""
+
+#: config/iq2000/iq2000.h:74
+msgid "Use GP relative sdata/sbss sections"
+msgstr ""
+
+#: config/iq2000/iq2000.h:76
+msgid "Don't use GP relative sdata/sbss sections"
+msgstr ""
+
+#: config/iq2000/iq2000.h:78 config/mips/mips.h:563
+msgid "Use ROM instead of RAM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:80 config/mips/mips.h:565
+msgid "Don't use ROM instead of RAM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:82 config/mips/mips.h:567
+msgid "Put uninitialized constants in ROM (needs -membedded-data)"
+msgstr ""
+
+#: config/iq2000/iq2000.h:84 config/mips/mips.h:569
+msgid "Don't put uninitialized constants in ROM"
+msgstr ""
+
+#: config/iq2000/iq2000.h:106 config/mips/mips.h:731 config/pa/pa.h:310
+msgid "Specify CPU for scheduling purposes"
+msgstr ""
+
+#: config/iq2000/iq2000.h:108 config/mips/mips.h:733
+msgid "Specify CPU for code generation purposes"
+msgstr ""
+
+#: config/m32r/m32r.c:172
+#, c-format
+msgid "bad value (%s) for -mmodel switch"
+msgstr ""
+
+#: config/m32r/m32r.c:181
+#, c-format
+msgid "bad value (%s) for -msdata switch"
+msgstr ""
+
+#: config/m32r/m32r.c:188
+#, fuzzy, c-format
+msgid "bad value (%s) for -flush-trap=n (0=<n<=15)"
+msgstr "ogiltigt värde (%s) till flagga -mcpu"
+
+#: config/m32r/m32r.c:2295
#, fuzzy, c-format
msgid "invalid operand to %%s code"
msgstr "ogiltig operand för %R"
-#: config/m32r/m32r.c:2263
+#: config/m32r/m32r.c:2302
#, fuzzy, c-format
msgid "invalid operand to %%p code"
msgstr "ogiltig operand för %R"
-#: config/m32r/m32r.c:2318
+#: config/m32r/m32r.c:2357
msgid "bad insn for 'A'"
msgstr ""
-#: config/m32r/m32r.c:2370
+#: config/m32r/m32r.c:2404
#, fuzzy, c-format
msgid "invalid operand to %%T/%%B code"
msgstr "ogiltig operand för %H/%L"
-#: config/m32r/m32r.c:2393
+#: config/m32r/m32r.c:2427
#, fuzzy, c-format
msgid "invalid operand to %%N code"
msgstr "ogiltig operand för %R"
-#: config/m32r/m32r.c:2438
+#: config/m32r/m32r.c:2460
msgid "pre-increment address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2445
+#: config/m32r/m32r.c:2467
msgid "pre-decrement address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2452
+#: config/m32r/m32r.c:2474
msgid "post-increment address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2530 config/m32r/m32r.c:2546
-#: config/rs6000/rs6000.c:12802
+#: config/m32r/m32r.c:2550 config/m32r/m32r.c:2566
+#: config/rs6000/rs6000.c:14753
msgid "bad address"
msgstr ""
-#: config/m32r/m32r.c:2551
+#: config/m32r/m32r.c:2571
#, fuzzy
msgid "lo_sum not of register"
msgstr "Skicka argument i register"
#. { "relax", TARGET_RELAX_MASK, "" }, { "no-relax", -TARGET_RELAX_MASK, "" },
-#: config/m32r/m32r.h:241
+#: config/m32r/m32r.h:277
msgid "Display compile time statistics"
msgstr ""
-#: config/m32r/m32r.h:243
+#: config/m32r/m32r.h:279
msgid "Align all loops to 32 byte boundary"
msgstr ""
-#: config/m32r/m32r.h:246
+#: config/m32r/m32r.h:282
msgid "Only issue one instruction per cycle"
msgstr "Lägg bara ut en instruktion per cykel"
-#: config/m32r/m32r.h:249
+#: config/m32r/m32r.h:285
msgid "Prefer branches over conditional execution"
msgstr "Föredra hopp framför villkorlig körning"
-#: config/m32r/m32r.h:265
+#: config/m32r/m32r.h:306
msgid "Code size: small, medium or large"
msgstr "Kodstorlek: small, medium, eller large"
-#: config/m32r/m32r.h:267
+#: config/m32r/m32r.h:308
msgid "Small data area: none, sdata, use"
msgstr "Litet dataområde: none, sdata, use"
-#: config/m68hc11/m68hc11.c:242
+#: config/m32r/m32r.h:310 config/mips/mips.h:739
+#, fuzzy
+msgid "Don't call any cache flush functions"
+msgstr "Inga anrop i funktion %s\n"
+
+#: config/m32r/m32r.h:312 config/mips/mips.h:741
+msgid "Specify cache flush function"
+msgstr ""
+
+#: config/m32r/m32r.h:314
+#, fuzzy
+msgid "Don't call any cache flush trap"
+msgstr "Inga anrop i funktion %s\n"
+
+#: config/m32r/m32r.h:316
+msgid "Specify cache flush trap number"
+msgstr ""
+
+#: config/m68hc11/m68hc11.c:269
#, c-format
msgid "-f%s ignored for 68HC11/68HC12 (not supported)"
msgstr ""
-#: config/m68hc11/m68hc11.c:1305
+#: config/m68hc11/m68hc11.c:1260
msgid "`trap' and `far' attributes are not compatible, ignoring `far'"
msgstr ""
-#: config/m68hc11/m68hc11.c:1311
+#: config/m68hc11/m68hc11.c:1266
#, fuzzy
msgid "`trap' attribute is already used"
msgstr "attributet `%s' ignorerat"
#. !!!! SCz wrong here.
-#: config/m68hc11/m68hc11.c:3327 config/m68hc11/m68hc11.c:3733
+#: config/m68hc11/m68hc11.c:3222 config/m68hc11/m68hc11.c:3606
msgid "move insn not handled"
msgstr ""
-#: config/m68hc11/m68hc11.c:3579 config/m68hc11/m68hc11.c:3663
-#: config/m68hc11/m68hc11.c:3946
+#: config/m68hc11/m68hc11.c:3454 config/m68hc11/m68hc11.c:3538
+#: config/m68hc11/m68hc11.c:3809
#, fuzzy
msgid "invalid register in the move instruction"
msgstr "Använd inte divisionsinstruktionen"
-#: config/m68hc11/m68hc11.c:3613
+#: config/m68hc11/m68hc11.c:3488
#, fuzzy
msgid "invalid operand in the instruction"
msgstr "ogiltig operand för %V"
-#: config/m68hc11/m68hc11.c:3920
+#: config/m68hc11/m68hc11.c:3783
#, fuzzy
msgid "invalid register in the instruction"
msgstr "ogiltigt flagga \"%s\" i line-direktiv"
-#: config/m68hc11/m68hc11.c:3953
+#: config/m68hc11/m68hc11.c:3816
msgid "operand 1 must be a hard register"
msgstr ""
-#: config/m68hc11/m68hc11.c:3970
+#: config/m68hc11/m68hc11.c:3830
#, fuzzy
msgid "invalid rotate insn"
msgstr "ogiltigt format på #line"
-#: config/m68hc11/m68hc11.c:4391
+#: config/m68hc11/m68hc11.c:4246
msgid "registers IX, IY and Z used in the same INSN"
msgstr ""
-#: config/m68hc11/m68hc11.c:4728 config/m68hc11/m68hc11.c:5031
+#: config/m68hc11/m68hc11.c:4583 config/m68hc11/m68hc11.c:4883
msgid "cannot do z-register replacement"
msgstr ""
-#: config/m68hc11/m68hc11.c:5094
+#: config/m68hc11/m68hc11.c:4946
msgid "invalid Z register replacement for insn"
msgstr ""
@@ -11300,55 +10674,55 @@ msgstr ""
#. pairs in braces, each pair being { "NAME", VALUE } where VALUE is the bits
#. to set or minus the bits to clear. An empty string NAME is used to
#. identify the default VALUE.
-#: config/m68hc11/m68hc11.h:172
+#: config/m68hc11/m68hc11.h:177
msgid "Compile with 16-bit integer mode"
msgstr ""
-#: config/m68hc11/m68hc11.h:174
+#: config/m68hc11/m68hc11.h:179
msgid "Compile with 32-bit integer mode"
msgstr ""
-#: config/m68hc11/m68hc11.h:176
+#: config/m68hc11/m68hc11.h:181
msgid "Auto pre/post decrement increment allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:178
+#: config/m68hc11/m68hc11.h:183
msgid "Auto pre/post decrement increment not allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:180
+#: config/m68hc11/m68hc11.h:185
msgid "Min/max instructions allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:182
+#: config/m68hc11/m68hc11.h:187
msgid "Min/max instructions not allowed"
msgstr ""
-#: config/m68hc11/m68hc11.h:184
+#: config/m68hc11/m68hc11.h:189
msgid "Use call and rtc for function calls and returns"
msgstr ""
-#: config/m68hc11/m68hc11.h:186
+#: config/m68hc11/m68hc11.h:191
msgid "Use jsr and rts for function calls and returns"
msgstr ""
-#: config/m68hc11/m68hc11.h:188
+#: config/m68hc11/m68hc11.h:193
msgid "Do not use direct addressing mode for soft registers"
msgstr ""
-#: config/m68hc11/m68hc11.h:190
+#: config/m68hc11/m68hc11.h:195
msgid "Use direct addressing mode for soft registers"
msgstr ""
-#: config/m68hc11/m68hc11.h:192 config/m68hc11/m68hc11.h:198
+#: config/m68hc11/m68hc11.h:197 config/m68hc11/m68hc11.h:203
msgid "Compile for a 68HC11"
msgstr ""
-#: config/m68hc11/m68hc11.h:194 config/m68hc11/m68hc11.h:200
+#: config/m68hc11/m68hc11.h:199 config/m68hc11/m68hc11.h:205
msgid "Compile for a 68HC12"
msgstr ""
-#: config/m68hc11/m68hc11.h:196 config/m68hc11/m68hc11.h:202
+#: config/m68hc11/m68hc11.h:201 config/m68hc11/m68hc11.h:207
msgid "Compile for a 68HCS12"
msgstr ""
@@ -11361,30 +10735,44 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/m68hc11/m68hc11.h:216
+#: config/m68hc11/m68hc11.h:221
msgid "Specify the register allocation order"
msgstr ""
-#: config/m68hc11/m68hc11.h:218
+#: config/m68hc11/m68hc11.h:223
msgid "Indicate the number of soft registers available"
msgstr ""
-#: config/m68k/m68k.c:158
+#: config/m68k/m68k.c:227
#, c-format
msgid "-malign-loops=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:169
+#: config/m68k/m68k.c:238
+msgid "-mshared-library-id= specified without -mid-shared-library"
+msgstr ""
+
+#: config/m68k/m68k.c:241
+#, c-format
+msgid "-mshared-library-id=%d is not between 0 and %d"
+msgstr ""
+
+#: config/m68k/m68k.c:255
+#, fuzzy
+msgid "cannot specify both -msep-data and -mid-shared-library"
+msgstr "kan inte ange både -C och -o"
+
+#: config/m68k/m68k.c:270
#, c-format
msgid "-malign-jumps=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:180
+#: config/m68k/m68k.c:281
#, c-format
msgid "-malign-functions=%d is not between 1 and %d"
msgstr ""
-#: config/m68k/m68k.c:189
+#: config/m68k/m68k.c:290
msgid "-fPIC is not currently supported on the 68000 or 68010\n"
msgstr ""
@@ -11393,532 +10781,458 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/m68k/m68k.h:162 config/m68k/m68k.h:164
+#: config/m68k/m68k.h:248 config/m68k/m68k.h:250
#, fuzzy
msgid "Generate code for a 68020"
msgstr "Generera kod för c2"
-#: config/m68k/m68k.h:169 config/m68k/m68k.h:172
+#: config/m68k/m68k.h:255 config/m68k/m68k.h:258
#, fuzzy
msgid "Generate code for a 68000"
msgstr "Generera kod för en DLL"
-#: config/m68k/m68k.h:174
+#: config/m68k/m68k.h:260
#, fuzzy
msgid "Use the bit-field instructions"
msgstr "Använd bitfältsinstruktioner"
-#: config/m68k/m68k.h:176
+#: config/m68k/m68k.h:262
#, fuzzy
msgid "Do not use the bit-field instructions"
msgstr "Använd inte bitfältsinstruktioner"
-#: config/m68k/m68k.h:178
-msgid "Use different calling convention using 'rtd'"
-msgstr ""
-
-#: config/m68k/m68k.h:182
+#: config/m68k/m68k.h:264
msgid "Consider type `int' to be 16 bits wide"
msgstr ""
-#: config/m68k/m68k.h:184
+#: config/m68k/m68k.h:266
msgid "Consider type `int' to be 32 bits wide"
msgstr ""
-#: config/m68k/m68k.h:186
-#, fuzzy
-msgid "Generate code for a Sun FPA"
-msgstr "Generera kod för en given CPU"
-
-#: config/m68k/m68k.h:189
-#, fuzzy
-msgid "Do not generate code for a Sun FPA"
-msgstr "Genrera inte kod som använder FPU"
-
-#: config/m68k/m68k.h:191 config/m68k/m68k.h:193
-#, fuzzy
-msgid "Generate code for a Sun Sky board"
-msgstr "Generera kod för en DLL"
-
-#: config/m68k/m68k.h:195
-#, fuzzy
-msgid "Do not use Sky linkage convention"
-msgstr "Använd inte divisionsinstruktionen"
-
-#: config/m68k/m68k.h:197
-#, fuzzy
-msgid "Generate code for a 68881"
-msgstr "Generera kod för c1"
-
-#: config/m68k/m68k.h:200
+#: config/m68k/m68k.h:269
msgid "Generate code with library calls for floating point"
msgstr ""
-#: config/m68k/m68k.h:202
+#: config/m68k/m68k.h:271
#, fuzzy
msgid "Generate code for a 68040, without any new instructions"
msgstr "Generera kod för \"little endian\""
-#: config/m68k/m68k.h:205
+#: config/m68k/m68k.h:274
#, fuzzy
msgid "Generate code for a 68060, without any new instructions"
msgstr "Generera kod för \"little endian\""
-#: config/m68k/m68k.h:209
+#: config/m68k/m68k.h:278
#, fuzzy
msgid "Generate code for a 68030"
msgstr "Generera kod för en DLL"
-#: config/m68k/m68k.h:212
+#: config/m68k/m68k.h:281
#, fuzzy
msgid "Generate code for a 68040"
msgstr "Generera kod för 11/40"
-#: config/m68k/m68k.h:216
+#: config/m68k/m68k.h:285
#, fuzzy
msgid "Generate code for a 68060"
msgstr "Generera kod för en DLL"
-#: config/m68k/m68k.h:221
+#: config/m68k/m68k.h:290
#, fuzzy
msgid "Generate code for a 520X"
msgstr "Generera kod för c2"
-#: config/m68k/m68k.h:224
+#: config/m68k/m68k.h:294
+#, fuzzy
+msgid "Generate code for a 5206e"
+msgstr "Generera kod för c2"
+
+#: config/m68k/m68k.h:298
+#, fuzzy
+msgid "Generate code for a 528x"
+msgstr "Generera kod för c2"
+
+#: config/m68k/m68k.h:302
+#, fuzzy
+msgid "Generate code for a 5307"
+msgstr "Generera kod för c2"
+
+#: config/m68k/m68k.h:306
+#, fuzzy
+msgid "Generate code for a 5407"
+msgstr "Generera kod för c2"
+
+#: config/m68k/m68k.h:309
#, fuzzy
msgid "Generate code for a 68851"
msgstr "Generera kod för c1"
-#: config/m68k/m68k.h:226
+#: config/m68k/m68k.h:311
#, fuzzy
msgid "Do no generate code for a 68851"
msgstr "Generera kod för c1"
-#: config/m68k/m68k.h:229
+#: config/m68k/m68k.h:314
#, fuzzy
msgid "Generate code for a 68302"
msgstr "Generera kod för c32"
-#: config/m68k/m68k.h:232
+#: config/m68k/m68k.h:317
#, fuzzy
msgid "Generate code for a 68332"
msgstr "Generera kod för c32"
-#: config/m68k/m68k.h:236
+#: config/m68k/m68k.h:321
#, fuzzy
msgid "Generate code for a cpu32"
msgstr "Generera kod för c32"
-#: config/m68k/m68k.h:239
+#: config/m68k/m68k.h:324
msgid "Align variables on a 32-bit boundary"
msgstr ""
-#: config/m68k/m68k.h:241
+#: config/m68k/m68k.h:326
msgid "Align variables on a 16-bit boundary"
msgstr ""
-#: config/m68k/m68k.h:243
-#, fuzzy
-msgid "Generate pc-relative code"
-msgstr "Generera SA-kod"
-
-#: config/m68k/m68k.h:245
-msgid "Do not use unaligned memory references"
-msgstr ""
-
-#: config/m68k/m68k.h:247
-#, fuzzy
-msgid "Use unaligned memory references"
-msgstr "Använd stor minnesmodell"
-
-#: config/m88k/m88k.c:903
-#, fuzzy, c-format
-msgid "internal gcc monitor: short-branch(%x)"
-msgstr "Intern gcc monitor: short-branch(%x)"
-
-#: config/m88k/m88k.c:2302
-msgid "internal gcc error: Can't express symbolic location"
+#: config/m68k/m68k.h:328
+msgid "Enable separate data segment"
msgstr ""
-#: config/m88k/m88k.c:2517
-#, c-format
-msgid "argument #%d is a structure"
-msgstr ""
-
-#: config/m88k/m88k.c:2816
-#, c-format
-msgid "%%R not followed by %%B/C/D/E"
+#: config/m68k/m68k.h:330
+msgid "Disable separate data segment"
msgstr ""
-#: config/m88k/m88k.c:2884
-#, fuzzy, c-format
-msgid "invalid %%x/X value"
-msgstr "ogiltigt värde %%B"
-
-#: config/m88k/m88k.c:2901
-#, c-format
-msgid "invalid %%Q value"
-msgstr "ogiltigt %%Q-värde"
-
-#: config/m88k/m88k.c:2907 config/rs6000/rs6000.c:7718
-#, c-format
-msgid "invalid %%q value"
+#: config/m68k/m68k.h:332
+msgid "Enable ID based shared library"
msgstr ""
-#: config/m88k/m88k.c:2913
-#, fuzzy, c-format
-msgid "invalid %%o value"
-msgstr "ogiltigt värde %%B"
-
-#: config/m88k/m88k.c:2920 config/rs6000/rs6000.c:7681
-#, c-format
-msgid "invalid %%p value"
+#: config/m68k/m68k.h:334
+msgid "Disable ID based shared library"
msgstr ""
-#: config/m88k/m88k.c:2933 config/m88k/m88k.c:2938
-#, fuzzy, c-format
-msgid "invalid %%s/S value"
-msgstr "ogiltigt %%s-värde"
-
-#: config/m88k/m88k.c:2949
-#, fuzzy, c-format
-msgid "invalid %%P operand"
-msgstr "ogiltigt %%P-värde"
-
-#: config/m88k/m88k.c:2980 config/romp/romp.c:690
-#, c-format
-msgid "invalid %%B value"
-msgstr "ogiltigt värde %%B"
-
-#: config/m88k/m88k.c:3010
-#, fuzzy, c-format
-msgid "invalid %%D value"
-msgstr "ogiltigt värde %%B"
-
-#: config/m88k/m88k.c:3023
-#, c-format
-msgid "`%%d' operand isn't a register"
-msgstr ""
-
-#: config/m88k/m88k.c:3041
-msgid "operand is r0"
-msgstr ""
-
-#: config/m88k/m88k.c:3055
-msgid "operand is const_double"
-msgstr ""
-
-#: config/m88k/m88k.c:3074
-msgid "invalid code"
-msgstr "ogiltig kod"
+#: config/m68k/m68k.h:336
+#, fuzzy
+msgid "Generate pc-relative code"
+msgstr "Generera SA-kod"
-#. Do any checking or such that is needed after processing the -m switches.
-#: config/m88k/m88k.h:277
-msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
+#: config/m68k/m68k.h:338
+msgid "Do not use unaligned memory references"
msgstr ""
-#: config/m88k/m88k.h:299
-#, fuzzy, c-format
-msgid "invalid option `-mshort-data-%s'"
-msgstr "Ogiltig flagga \"%s\""
+#: config/m68k/m68k.h:340
+#, fuzzy
+msgid "Use unaligned memory references"
+msgstr "Använd stor minnesmodell"
-#: config/m88k/m88k.h:304
-#, c-format
-msgid "-mshort-data-%s is too large "
+#: config/m68k/m68k.h:342
+msgid "Use different calling convention using 'rtd'"
msgstr ""
-#: config/m88k/m88k.h:306
-#, c-format
-msgid "-mshort-data-%s and PIC are incompatible"
+#: config/m68k/m68k.h:366
+msgid "ID of shared library to build"
msgstr ""
-#: config/mcore/mcore.c:3078
+#: config/mcore/mcore.c:2973
#, fuzzy, c-format
msgid "invalid option `-mstack-increment=%s'"
msgstr "Ogiltig flagga \"-mstack-increment=%s\""
-#: config/mcore/mcore.h:126
+#: config/mcore/mcore.h:121
msgid "Inline constants if it can be done in 2 insns or less"
msgstr ""
-#: config/mcore/mcore.h:128
+#: config/mcore/mcore.h:123
msgid "Inline constants if it only takes 1 instruction"
msgstr ""
-#: config/mcore/mcore.h:130
+#: config/mcore/mcore.h:125
msgid "Set maximum alignment to 4"
msgstr ""
-#: config/mcore/mcore.h:132
+#: config/mcore/mcore.h:127
msgid "Set maximum alignment to 8"
msgstr ""
-#: config/mcore/mcore.h:136
+#: config/mcore/mcore.h:131
msgid "Do not use the divide instruction"
msgstr "Använd inte divisionsinstruktionen"
-#: config/mcore/mcore.h:140
+#: config/mcore/mcore.h:135
msgid "Do not arbitrary sized immediates in bit operations"
msgstr ""
-#: config/mcore/mcore.h:142
+#: config/mcore/mcore.h:137
msgid "Always treat bit-field as int-sized"
msgstr ""
-#: config/mcore/mcore.h:146
+#: config/mcore/mcore.h:141
msgid "Force functions to be aligned to a 4 byte boundary"
msgstr ""
-#: config/mcore/mcore.h:148
+#: config/mcore/mcore.h:143
msgid "Force functions to be aligned to a 2 byte boundary"
msgstr ""
-#: config/mcore/mcore.h:150
+#: config/mcore/mcore.h:145
msgid "Emit call graph information"
msgstr ""
-#: config/mcore/mcore.h:154
+#: config/mcore/mcore.h:149
msgid "Prefer word accesses over byte accesses"
msgstr ""
-#: config/mcore/mcore.h:165
+#: config/mcore/mcore.h:160
msgid "Generate code for the M*Core M340"
msgstr "Genrera kod för M*Core M340"
-#: config/mcore/mcore.h:178
+#: config/mcore/mcore.h:173
msgid "Maximum amount for a single stack increment operation"
msgstr ""
-#: config/mips/mips.c:5128
-#, c-format
-msgid "bad value (%s) for -mabi= switch"
+#: config/mips/mips.c:3115 config/xtensa/xtensa.c:992
+#: config/xtensa/xtensa.c:1024 config/xtensa/xtensa.c:1033
+msgid "bad test"
msgstr ""
-#: config/mips/mips.c:5158
+#: config/mips/mips.c:4593
#, c-format
-msgid "-mips%d conflicts with the other architecture options, which specify a MIPS%d processor"
+msgid "bad value (%s) for -mabi= switch"
msgstr ""
-#: config/mips/mips.c:5165
+#: config/mips/mips.c:4616
#, c-format
-msgid "bad value (%s) for -mips switch"
+msgid "-mips%s conflicts with the other architecture options, which specify a MIPS%d processor"
msgstr ""
-#: config/mips/mips.c:5180
+#: config/mips/mips.c:4635
#, c-format
msgid "-march=%s is not compatible with the selected ABI"
msgstr ""
-#: config/mips/mips.c:5192
+#: config/mips/mips.c:4650
msgid "-mgp64 used with a 32-bit processor"
msgstr ""
-#: config/mips/mips.c:5194
+#: config/mips/mips.c:4652
#, fuzzy
msgid "-mgp32 used with a 64-bit ABI"
msgstr "Använd 64-bitars ABI"
-#: config/mips/mips.c:5196
+#: config/mips/mips.c:4654
#, fuzzy
msgid "-mgp64 used with a 32-bit ABI"
msgstr "Använd 32-bitars ABI"
-#: config/mips/mips.c:5214 config/mips/mips.c:5216 config/mips/mips.c:5218
+#: config/mips/mips.c:4672 config/mips/mips.c:4674 config/mips/mips.c:4676
+#: config/mips/mips.c:4804
#, fuzzy, c-format
msgid "unsupported combination: %s"
msgstr "ej stödd version"
-#: config/mips/mips.c:5288
+#: config/mips/mips.c:4768
+#, fuzzy
+msgid "-g is only supported using GNU as,"
+msgstr "-g stöds bara när man använder GAS på denna processor,"
+
+#: config/mips/mips.c:4770
+#, fuzzy
+msgid "-g is only supported using GNU as with -mabi=32,"
+msgstr "-g stöds bara när man använder GAS på denna processor,"
+
+#: config/mips/mips.c:4771 config/pa/pa.c:353
+#, fuzzy
+msgid "-g option disabled"
+msgstr "flaggan -g är avslagen."
+
+#: config/mips/mips.c:4799
msgid "generation of Branch Likely instructions enabled, but not supported by architecture"
msgstr ""
-#: config/mips/mips.c:5299
+#: config/mips/mips.c:4816
msgid "-G is incompatible with PIC code which is the default"
msgstr ""
-#: config/mips/mips.c:5315
+#: config/mips/mips.c:4844
msgid "-membedded-pic and -mabicalls are incompatible"
msgstr ""
-#: config/mips/mips.c:5318
+#: config/mips/mips.c:4847
msgid "-G and -membedded-pic are incompatible"
msgstr ""
-#: config/mips/mips.c:5369
-#, fuzzy, c-format
-msgid "invalid option `entry%s'"
-msgstr "Ogiltig flagga \"%s\""
+#: config/mips/mips.c:4879
+msgid "non-PIC n64 with explicit relocations"
+msgstr ""
-#: config/mips/mips.c:5372
-msgid "-mentry is only meaningful with -mips-16"
+#: config/mips/mips.c:5267
+msgid "mips_debugger_offset called with non stack/frame/arg pointer"
msgstr ""
-#: config/mips/mips.c:5781
+#: config/mips/mips.c:5394
#, c-format
msgid "internal error: %%) found without a %%( in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5795
+#: config/mips/mips.c:5408
#, c-format
msgid "internal error: %%] found without a %%[ in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5808
+#: config/mips/mips.c:5421
#, c-format
msgid "internal error: %%> found without a %%< in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5821
+#: config/mips/mips.c:5434
#, c-format
msgid "internal error: %%} found without a %%{ in assembler pattern"
msgstr ""
-#: config/mips/mips.c:5835
+#: config/mips/mips.c:5448
#, c-format
msgid "PRINT_OPERAND: unknown punctuation '%c'"
msgstr ""
-#: config/mips/mips.c:5844 config/xtensa/xtensa.c:1939
-msgid "PRINT_OPERAND null pointer"
-msgstr ""
-
-#: config/mips/mips.c:5975
-#, c-format
-msgid "invalid use of %%d, %%x, or %%X"
-msgstr "ogiltig användning av %%d, %%x eller %%x"
-
-#: config/mips/mips.c:6013 config/xtensa/xtensa.c:2033
-msgid "PRINT_OPERAND_ADDRESS, null pointer"
+#: config/mips/mips.c:5477
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%C"
msgstr "PRINT_OPERAND_ADDRESS, null-pekare"
-#: config/mips/mips.c:6242
-msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
-msgstr ""
-
-# fixme: spola tillbaka är inte perfekt
-#: config/mips/mips.c:6552
-#, fuzzy
-msgid "can't rewind temp file"
-msgstr "kan inte spola tillbaka %s"
-
-#: config/mips/mips.c:6556
-#, fuzzy
-msgid "can't write to output file"
-msgstr "kan inte skriva till %s"
-
-#: config/mips/mips.c:6559
-#, fuzzy
-msgid "can't read from temp file"
-msgstr "kan inte läsa från %s"
+#: config/mips/mips.c:5494
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%N"
+msgstr "PRINT_OPERAND_ADDRESS, null-pekare"
-#: config/mips/mips.c:6562
-#, fuzzy
-msgid "can't close temp file"
-msgstr "kan inte stänga %s"
+#: config/mips/mips.c:5503
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%F"
+msgstr "PRINT_OPERAND_ADDRESS, null-pekare"
-#: config/mips/mips.c:7003
-#, c-format
-msgid "gp_offset (%ld) or end_offset (%ld) is less than zero"
-msgstr ""
+#: config/mips/mips.c:5512
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%W"
+msgstr "PRINT_OPERAND_ADDRESS, null-pekare"
-#: config/mips/mips.c:7112
-#, c-format
-msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
+#: config/mips/mips.c:5618
+msgid "PRINT_OPERAND, invalid operand for relocation"
msgstr ""
-#: config/mips/mips.c:9335
+#: config/mips/mips.c:8252
#, c-format
msgid "can not handle inconsistent calls to `%s'"
msgstr ""
-#: config/mips/mips.c:10467
+#: config/mips/mips.c:9258
msgid "the cpu name must be lower case"
msgstr ""
-#: config/mips/mips.c:10489
+#: config/mips/mips.c:9280
#, fuzzy, c-format
msgid "bad value (%s) for %s"
msgstr "ogiltigt värde (%s) till flagga %s"
+# fixme: spola tillbaka är inte perfekt
+#: config/mips/mips.c:9549
+#, fuzzy, c-format
+msgid "can't rewind temp file: %m"
+msgstr "kan inte spola tillbaka %s"
+
+#: config/mips/mips.c:9553
+#, fuzzy, c-format
+msgid "can't write to output file: %m"
+msgstr "kan inte skriva till %s"
+
+#: config/mips/mips.c:9556
+#, fuzzy, c-format
+msgid "can't read from temp file: %m"
+msgstr "kan inte läsa från %s"
+
+#: config/mips/mips.c:9559
+#, fuzzy, c-format
+msgid "can't close temp file: %m"
+msgstr "kan inte stänga %s"
+
+#: config/mips/linux64.h:39
+msgid "Same as -mabi=32, just trickier"
+msgstr ""
+
#. Target CPU builtins.
#. We do this here because __mips is defined below and so we can't use builtin_define_std.
#. Treat _R3000 and _R4000 like register-size defines, which is how they've historically been used.
#. Macros dependent on the C dialect.
-#. Bizzare, but needed at least for Irix.
+#. Bizarre, but needed at least for Irix.
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:528 config/mn10300/mn10300.h:64
-msgid "No default crt0.o"
-msgstr ""
-
-#: config/mips/mips.h:530
+#: config/mips/mips.h:501
msgid "Use 64-bit int type"
msgstr ""
-#: config/mips/mips.h:532
+#: config/mips/mips.h:503
msgid "Use 64-bit long type"
msgstr ""
-#: config/mips/mips.h:534
+#: config/mips/mips.h:505
msgid "Use 32-bit long type"
msgstr ""
-#: config/mips/mips.h:536
+#: config/mips/mips.h:507
msgid "Optimize lui/addiu address loads"
msgstr ""
-#: config/mips/mips.h:538
+#: config/mips/mips.h:509
msgid "Don't optimize lui/addiu address loads"
msgstr ""
-#: config/mips/mips.h:540
+#: config/mips/mips.h:511
msgid "Use MIPS as"
msgstr "Använd GNU as"
-#: config/mips/mips.h:542
+#: config/mips/mips.h:513
msgid "Use GNU as"
msgstr "Använd GNU as"
-#: config/mips/mips.h:544
+#: config/mips/mips.h:515
msgid "Use symbolic register names"
msgstr ""
-#: config/mips/mips.h:546
+#: config/mips/mips.h:517
msgid "Don't use symbolic register names"
msgstr ""
-#: config/mips/mips.h:548 config/mips/mips.h:550
-msgid "Use GP relative sdata/sbss sections"
+#: config/mips/mips.h:519 config/mips/mips.h:521
+msgid "Use GP relative sdata/sbss sections (now ignored)"
msgstr ""
-#: config/mips/mips.h:552 config/mips/mips.h:554
-msgid "Don't use GP relative sdata/sbss sections"
+#: config/mips/mips.h:523 config/mips/mips.h:525
+msgid "Don't use GP relative sdata/sbss sections (now ignored)"
msgstr ""
-#: config/mips/mips.h:556
-msgid "Output compiler statistics"
+#: config/mips/mips.h:527
+msgid "Output compiler statistics (now ignored)"
msgstr ""
-#: config/mips/mips.h:558
+#: config/mips/mips.h:529
msgid "Don't output compiler statistics"
msgstr ""
-#: config/mips/mips.h:560
+#: config/mips/mips.h:531
msgid "Don't optimize block moves"
msgstr ""
-#: config/mips/mips.h:562
+#: config/mips/mips.h:533
msgid "Optimize block moves"
msgstr ""
-#: config/mips/mips.h:564
+#: config/mips/mips.h:535
msgid "Use mips-tfile asm postpass"
msgstr ""
-#: config/mips/mips.h:566
+#: config/mips/mips.h:537
msgid "Don't use mips-tfile asm postpass"
msgstr ""
@@ -11928,273 +11242,240 @@ msgstr ""
#. where VALUE is the bits to set or minus the bits to clear and DOC
#. is the documentation for --help (NULL if intentionally undocumented).
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:570 config/pdp11/pdp11.h:56
+#: config/mips/mips.h:541 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:314
msgid "Use hardware floating point"
msgstr ""
-#: config/mips/mips.h:572
+#: config/mips/mips.h:543
msgid "Use 64-bit FP registers"
msgstr ""
-#: config/mips/mips.h:574
+#: config/mips/mips.h:545
msgid "Use 32-bit FP registers"
msgstr ""
-#: config/mips/mips.h:576
+#: config/mips/mips.h:547
msgid "Use 64-bit general registers"
msgstr ""
-#: config/mips/mips.h:578
+#: config/mips/mips.h:549
msgid "Use 32-bit general registers"
msgstr ""
-#: config/mips/mips.h:580
+#: config/mips/mips.h:551
msgid "Use Irix PIC"
msgstr ""
-#: config/mips/mips.h:582
+#: config/mips/mips.h:553
msgid "Don't use Irix PIC"
msgstr ""
-#: config/mips/mips.h:584
+#: config/mips/mips.h:555
msgid "Use indirect calls"
msgstr ""
-#: config/mips/mips.h:586
+#: config/mips/mips.h:557
msgid "Don't use indirect calls"
msgstr ""
-#: config/mips/mips.h:588
+#: config/mips/mips.h:559
msgid "Use embedded PIC"
msgstr ""
-#: config/mips/mips.h:590
+#: config/mips/mips.h:561
msgid "Don't use embedded PIC"
msgstr ""
-#: config/mips/mips.h:592
-msgid "Use ROM instead of RAM"
-msgstr ""
-
-#: config/mips/mips.h:594
-msgid "Don't use ROM instead of RAM"
-msgstr ""
-
-#: config/mips/mips.h:596
-msgid "Put uninitialized constants in ROM (needs -membedded-data)"
-msgstr ""
-
-#: config/mips/mips.h:598
-msgid "Don't put uninitialized constants in ROM"
-msgstr ""
-
-#. Macro to define tables used to set the flags.
-#: config/mips/mips.h:600 config/xtensa/xtensa.h:110
+#: config/mips/mips.h:571
msgid "Use big-endian byte order"
msgstr "Använd \"big endian\" byteordning"
-#: config/mips/mips.h:602 config/xtensa/xtensa.h:112
+#: config/mips/mips.h:573
msgid "Use little-endian byte order"
msgstr "Använd \"little endian\" byteordning"
-#: config/mips/mips.h:604
+#: config/mips/mips.h:575
msgid "Use single (32-bit) FP only"
msgstr ""
-#: config/mips/mips.h:606
+#: config/mips/mips.h:577
msgid "Don't use single (32-bit) FP only"
msgstr ""
-#: config/mips/mips.h:608
+#: config/mips/mips.h:579
msgid "Use multiply accumulate"
msgstr ""
-#: config/mips/mips.h:610
+#: config/mips/mips.h:581
msgid "Don't use multiply accumulate"
msgstr ""
-#: config/mips/mips.h:612 config/rs6000/rs6000.h:314
+#: config/mips/mips.h:583
msgid "Don't generate fused multiply/add instructions"
msgstr ""
-#: config/mips/mips.h:614 config/rs6000/rs6000.h:312
+#: config/mips/mips.h:585 config/rs6000/rs6000.h:330
msgid "Generate fused multiply/add instructions"
msgstr ""
-#: config/mips/mips.h:616
+#: config/mips/mips.h:587
msgid "Work around early 4300 hardware bug"
msgstr ""
-#: config/mips/mips.h:618
+#: config/mips/mips.h:589
msgid "Don't work around early 4300 hardware bug"
msgstr ""
-#: config/mips/mips.h:620
+#: config/mips/mips.h:591
+msgid "Work around errata for early SB-1 revision 2 cores"
+msgstr ""
+
+#: config/mips/mips.h:593
+msgid "Don't work around errata for early SB-1 revision 2 cores"
+msgstr ""
+
+#: config/mips/mips.h:595
msgid "Trap on integer divide by zero"
msgstr "Fånga heltalsdivision med noll"
-#: config/mips/mips.h:622
+#: config/mips/mips.h:597
msgid "Don't trap on integer divide by zero"
msgstr "Fånga inte heltalsdivision med noll"
-#: config/mips/mips.h:624
-msgid "Trap on integer divide overflow"
-msgstr "Fånga spill vid heltalsdivsion"
-
-#: config/mips/mips.h:626
-msgid "Don't trap on integer divide overflow"
-msgstr "Fånga inte spill vid heltalsdivision"
-
-#: config/mips/mips.h:628
+#: config/mips/mips.h:599
msgid "Use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:630
+#: config/mips/mips.h:601
msgid "Don't use Branch Likely instructions, overriding default for arch"
msgstr ""
-#: config/mips/mips.h:744 config/pa/pa.h:310
-msgid "Specify CPU for scheduling purposes"
+#: config/mips/mips.h:603
+msgid "Use NewABI-style %reloc() assembly operators"
msgstr ""
-#: config/mips/mips.h:746
-msgid "Specify CPU for code generation purposes"
+#: config/mips/mips.h:605
+msgid "Use assembler macros instead of relocation operators"
msgstr ""
-#: config/mips/mips.h:748
-msgid "Specify an ABI"
-msgstr ""
+#: config/mips/mips.h:607
+#, fuzzy
+msgid "Generate mips16 code"
+msgstr "Generera SA-kod"
-#: config/mips/mips.h:750
-msgid "Specify a Standard MIPS ISA"
-msgstr ""
+#: config/mips/mips.h:609
+#, fuzzy
+msgid "Generate normal-mode code"
+msgstr "Generera SA-kod"
-#: config/mips/mips.h:752
-msgid "Use mips16 entry/exit psuedo ops"
+#: config/mips/mips.h:611
+msgid "Lift restrictions on GOT size"
msgstr ""
-#: config/mips/mips.h:754
-msgid "Don't use MIPS16 instructions"
+#: config/mips/mips.h:613
+msgid "Do not lift restrictions on GOT size"
msgstr ""
-#: config/mips/mips.h:756
-#, fuzzy
-msgid "Don't call any cache flush functions"
-msgstr "Inga anrop i funktion %s\n"
+#: config/mips/mips.h:735
+msgid "Specify an ABI"
+msgstr ""
-#: config/mips/mips.h:758
-msgid "Specify cache flush function"
+#: config/mips/mips.h:737
+msgid "Specify a Standard MIPS ISA"
msgstr ""
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/mips/mips.h:2900
+#: config/mips/mips.h:2403
msgid "mips16 function profiling"
msgstr ""
-#: config/mmix/mmix.c:189
+#: config/mmix/mmix.c:207
#, fuzzy, c-format
msgid "-f%s not supported: ignored"
msgstr "\"%s\" stöds inte av %s"
-#: config/mmix/mmix.c:644
+#: config/mmix/mmix.c:633
#, c-format
msgid "too large function value type, needs %d registers, have only %d registers for this"
msgstr ""
-#: config/mmix/mmix.c:826
+#: config/mmix/mmix.c:803
msgid "function_profiler support for MMIX"
msgstr ""
-#: config/mmix/mmix.c:848
+#: config/mmix/mmix.c:823
msgid "MMIX Internal: Last named vararg would not fit in a register"
msgstr ""
-#: config/mmix/mmix.c:1639 config/mmix/mmix.c:1769
+#: config/mmix/mmix.c:1538 config/mmix/mmix.c:1668
msgid "MMIX Internal: Expected a CONST_INT, not this"
msgstr ""
-#: config/mmix/mmix.c:1647 config/mmix/mmix.c:1671 config/mmix/mmix.c:1787
+#: config/mmix/mmix.c:1546 config/mmix/mmix.c:1570 config/mmix/mmix.c:1686
#, c-format
msgid "MMIX Internal: Bad register: %d"
msgstr ""
-#: config/mmix/mmix.c:1718
+#: config/mmix/mmix.c:1617
msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
msgstr ""
-#: config/mmix/mmix.c:1737
+#: config/mmix/mmix.c:1636
msgid "MMIX Internal: Expected a register, not this"
msgstr ""
-#: config/mmix/mmix.c:1747
+#: config/mmix/mmix.c:1646
msgid "MMIX Internal: Expected a constant, not this"
msgstr ""
#. Presumably there's a missing case above if we get here.
-#: config/mmix/mmix.c:1779
+#: config/mmix/mmix.c:1678
#, c-format
msgid "MMIX Internal: Missing `%c' case in mmix_print_operand"
msgstr ""
#. We need the original here.
-#: config/mmix/mmix.c:1831
+#: config/mmix/mmix.c:1730
msgid "MMIX Internal: Cannot decode this operand"
msgstr ""
-#: config/mmix/mmix.c:1891
+#: config/mmix/mmix.c:1787
msgid "MMIX Internal: This is not a recognized address"
msgstr ""
-#: config/mmix/mmix.c:2082
+#: config/mmix/mmix.c:1964
#, c-format
msgid "stack frame not a multiple of 8 bytes: %d"
msgstr ""
-#: config/mmix/mmix.c:2321
+#: config/mmix/mmix.c:2203
#, c-format
msgid "stack frame not a multiple of octabyte: %d"
msgstr ""
-#: config/mmix/mmix.c:2818 config/mmix/mmix.c:2887
+#: config/mmix/mmix.c:2677 config/mmix/mmix.c:2741
#, c-format
msgid "MMIX Internal: %s is not a shiftable int"
msgstr ""
-#: config/mmix/mmix.c:3006
+#: config/mmix/mmix.c:2857
msgid "MMIX Internal: Trying to output invalidly reversed condition:"
msgstr ""
-#: config/mmix/mmix.c:3013
+#: config/mmix/mmix.c:2864
msgid "MMIX Internal: What's the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:3017
+#: config/mmix/mmix.c:2868
msgid "MMIX Internal: What is the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:3088
+#: config/mmix/mmix.c:2938
#, fuzzy
msgid "MMIX Internal: This is not a constant:"
msgstr "fältinitierare är ej konstant"
-#. For these target macros, there is no generic documentation here. You
-#. should read `Using and Porting GCC' for that. Only comments specific
-#. to the MMIX target are here.
-#.
-#. There are however references to the specific texinfo node (comments
-#. with "Node:"), so there should be little or nothing amiss. Probably
-#. the opposite, since we don't have to care about old littering and
-#. soon outdated generic comments.
-#. Node: Driver
-#. User symbols are in the same name-space as built-in symbols, but we
-#. don't need the built-in symbols, so remove those and instead apply
-#. stricter operand checking. Don't warn when expanding insns.
-#. Pass on -mset-program-start=N and -mset-data-start=M to the linker.
-#. Provide default program start 0x100 unless -mno-set-program-start.
-#. Don't do this if linking relocatably, with -r. For a final link,
-#. produce mmo, unless ELF is requested or when linking relocatably.
-#. Put unused option values here.
#: config/mmix/mmix.h:132
#, fuzzy
msgid "Set start-address of the program"
@@ -12268,23 +11549,27 @@ msgstr ""
msgid "Do not generate a single exit point for each function"
msgstr "Generera inte .size-direktiv"
-#: config/mn10300/mn10300.h:59
-msgid "Work around hardware multiply bug"
+#: config/mn10300/linux.h:60 config/mn10300/mn10300.h:71
+msgid "Target the AM33 processor"
msgstr ""
-#: config/mn10300/mn10300.h:60
-msgid "Do not work around hardware multiply bug"
+#: config/mn10300/linux.h:61 config/mn10300/mn10300.h:75
+msgid "Target the AM33/2.0 processor"
msgstr ""
-#: config/mn10300/mn10300.h:61
-msgid "Target the AM33 processor"
+#: config/mn10300/linux.h:62 config/mn10300/mn10300.h:78
+msgid "Enable linker relaxations"
msgstr ""
-#: config/mn10300/mn10300.h:65
-msgid "Enable linker relaxations"
+#: config/mn10300/mn10300.h:69
+msgid "Work around hardware multiply bug"
msgstr ""
-#: config/ns32k/ns32k.h:142 config/s390/s390.h:69
+#: config/mn10300/mn10300.h:70
+msgid "Do not work around hardware multiply bug"
+msgstr ""
+
+#: config/ns32k/ns32k.h:142 config/s390/s390.h:125
msgid "Don't use hardware fp"
msgstr ""
@@ -12358,45 +11643,38 @@ msgstr ""
msgid "No \"Small register classes\" kludge"
msgstr ""
-#: config/pa/pa.c:261
+#: config/pa/pa.c:304
#, c-format
msgid ""
"unknown -mschedule= option (%s).\n"
"Valid options are 700, 7100, 7100LC, 7200, 7300, and 8000\n"
msgstr ""
-#: config/pa/pa.c:286
+#: config/pa/pa.c:329
#, c-format
msgid ""
"unknown -march= option (%s).\n"
"Valid options are 1.0, 1.1, and 2.0\n"
msgstr ""
-#: config/pa/pa.c:299
+#: config/pa/pa.c:342
msgid "PIC code generation is not supported in the portable runtime model\n"
msgstr ""
-#: config/pa/pa.c:304
+#: config/pa/pa.c:347
msgid "PIC code generation is not compatible with fast indirect calls\n"
msgstr ""
-#: config/pa/pa.c:309
+#: config/pa/pa.c:352
msgid "-g is only supported when using GAS on this processor,"
msgstr "-g stöds bara när man använder GAS på denna processor,"
-#: config/pa/pa.c:310
-#, fuzzy
-msgid "-g option disabled"
-msgstr "flaggan -g är avslagen."
-
-#: config/pa/pa-hiux.h:75 config/pa/pa-hpux.h:87 config/pa/pa-hpux7.h:81
-#: config/pa/pa64-hpux.h:25
+#: config/pa/pa-hpux.h:91 config/pa/pa64-hpux.h:25
#, fuzzy
msgid "Generate cpp defines for server IO"
msgstr "Generera kod för en given CPU"
-#: config/pa/pa-hiux.h:76 config/pa/pa-hpux.h:88 config/pa/pa-hpux7.h:82
-#: config/pa/pa64-hpux.h:27
+#: config/pa/pa-hpux.h:92 config/pa/pa64-hpux.h:27
#, fuzzy
msgid "Generate cpp defines for workstation IO"
msgstr "Generera kod för 11/40"
@@ -12532,50 +11810,50 @@ msgstr ""
msgid "Assume code will be linked by HP ld"
msgstr ""
-#: config/pdp11/pdp11.h:57
+#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:316
msgid "Do not use hardware floating point"
msgstr ""
#. return float result in ac0
-#: config/pdp11/pdp11.h:59
+#: config/pdp11/pdp11.h:64
msgid "Return floating point results in ac0"
msgstr ""
-#: config/pdp11/pdp11.h:60
+#: config/pdp11/pdp11.h:65
msgid "Return floating point results in memory"
msgstr ""
#. is 11/40
-#: config/pdp11/pdp11.h:62
+#: config/pdp11/pdp11.h:67
msgid "Generate code for an 11/40"
msgstr "Generera kod för 11/40"
#. is 11/45
-#: config/pdp11/pdp11.h:65
+#: config/pdp11/pdp11.h:70
msgid "Generate code for an 11/45"
msgstr "Generera kod för 11/45"
#. is 11/10
-#: config/pdp11/pdp11.h:68
+#: config/pdp11/pdp11.h:73
msgid "Generate code for an 11/10"
msgstr "Generera kod för 11/10"
#. use movstrhi for bcopy
#. use 32 bit for int
-#: config/pdp11/pdp11.h:73 config/pdp11/pdp11.h:74
+#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
msgid "Use 32 bit int"
msgstr "Använd 32 bits int"
-#: config/pdp11/pdp11.h:75 config/pdp11/pdp11.h:76
+#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
msgid "Use 16 bit int"
msgstr "Använd 16 bits int"
#. use 32 bit for float
-#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
+#: config/pdp11/pdp11.h:83 config/pdp11/pdp11.h:84
msgid "Use 32 bit float"
msgstr "Använd 32 bits float"
-#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
+#: config/pdp11/pdp11.h:85 config/pdp11/pdp11.h:86
msgid "Use 64 bit float"
msgstr "Använd 64 bits float"
@@ -12583,69 +11861,53 @@ msgstr "Använd 64 bits float"
#. is branching expensive - on a PDP, it's actually really cheap
#. this is just to play around and check what code gcc generates
#. split instruction and data memory?
-#: config/pdp11/pdp11.h:90
+#: config/pdp11/pdp11.h:95
msgid "Target has split I&D"
msgstr ""
-#: config/pdp11/pdp11.h:91
+#: config/pdp11/pdp11.h:96
msgid "Target does not have split I&D"
msgstr ""
#. UNIX assembler syntax?
-#: config/pdp11/pdp11.h:93
+#: config/pdp11/pdp11.h:98
msgid "Use UNIX assembler syntax"
msgstr "Använd assemblersyntax för UNIX"
-#: config/pdp11/pdp11.h:94
+#: config/pdp11/pdp11.h:99
msgid "Use DEC assembler syntax"
msgstr "Använd assemblersyntax för DEC"
-#: config/romp/romp.c:717 config/rs6000/rs6000.c:7755
-#, c-format
-msgid "invalid %%S value"
+#: config/rs6000/host-darwin.c:52
+msgid "Segmentation Fault (code)"
msgstr ""
-#: config/romp/romp.c:726 config/romp/romp.c:733
-#, c-format
-msgid "invalid %%b value"
+#: config/rs6000/host-darwin.c:83
+msgid "Out of stack space.\n"
msgstr ""
-#: config/romp/romp.c:773 config/romp/romp.c:784
+#: config/rs6000/host-darwin.c:104
#, c-format
-msgid "invalid %%z value"
+msgid "Try running `%s' in the shell to raise its limit.\n"
msgstr ""
-#: config/romp/romp.c:792 config/romp/romp.c:800
-#, c-format
-msgid "invalid %%Z value"
+#: config/rs6000/host-darwin.c:117
+msgid "Segmentation Fault"
msgstr ""
-#: config/romp/romp.c:807 config/romp/romp.c:816 config/romp/romp.c:823
-#: config/rs6000/rs6000.c:7584
+#: config/rs6000/host-darwin.c:131
#, c-format
-msgid "invalid %%k value"
+msgid "While setting up signal stack: %m"
msgstr ""
-#: config/romp/romp.c:908 config/romp/romp.c:951
+#: config/rs6000/host-darwin.c:137
#, c-format
-msgid "invalid %%j value"
+msgid "While setting up signal handler: %m"
msgstr ""
-#. Perform any needed actions needed for a function that is receiving a
-#. variable number of arguments.
-#.
-#. CUM is as above.
-#.
-#. MODE and TYPE are the mode and type of the current parameter.
-#.
-#. PRETEND_SIZE is a variable that should be set to the amount of stack
-#. that must be pushed by the prolog to pretend that our caller pushed
-#. it.
-#.
-#. Normally, this macro will push all remaining incoming registers on the
-#. stack and set PRETEND_SIZE to the length of the registers pushed.
-#: config/romp/romp.h:648
-msgid "can't have varargs with -mfp-arg-in-fp-regs"
+#: config/rs6000/host-darwin.c:184
+#, c-format
+msgid "couldn't unmap pch_address_space: %m\n"
msgstr ""
#. Handle the machine specific pragma longcall. Its syntax is
@@ -12657,204 +11919,252 @@ msgstr ""
#. rs6000_default_long_calls is set to the value of TOGGLE, changing
#. whether or not new function declarations receive a longcall
#. attribute by default.
-#: config/rs6000/rs6000-c.c:44
+#: config/rs6000/rs6000-c.c:46
#, fuzzy
msgid "ignoring malformed #pragma longcall"
msgstr "ignorerar #pragma %s"
-#: config/rs6000/rs6000-c.c:58
+#: config/rs6000/rs6000-c.c:59
#, fuzzy
msgid "missing open paren"
msgstr "heltalsspill i uttryck"
-#: config/rs6000/rs6000-c.c:60
+#: config/rs6000/rs6000-c.c:61
msgid "missing number"
msgstr ""
-#: config/rs6000/rs6000-c.c:62
+#: config/rs6000/rs6000-c.c:63
msgid "missing close paren"
msgstr ""
-#: config/rs6000/rs6000-c.c:65
+#: config/rs6000/rs6000-c.c:66
msgid "number must be 0 or 1"
msgstr ""
-#: config/rs6000/rs6000-c.c:68
+#: config/rs6000/rs6000-c.c:69
#, fuzzy
msgid "junk at end of #pragma longcall"
msgstr "skräp vid slutet av #pragma weak"
-#: config/rs6000/rs6000.c:592
+#: config/rs6000/rs6000.c:793
msgid "-mmultiple is not supported on little endian systems"
msgstr "-mmultiple stöds inte på \"little endian\"-system"
-#: config/rs6000/rs6000.c:599
+#: config/rs6000/rs6000.c:800
msgid "-mstring is not supported on little endian systems"
msgstr "-mstring stöds inte på \"little endian\"-system"
-#: config/rs6000/rs6000.c:623
+#: config/rs6000/rs6000.c:814
#, fuzzy, c-format
msgid "unknown -mdebug-%s switch"
msgstr "Okänd flagga -mdebug-%s"
-#: config/rs6000/rs6000.c:635
+#: config/rs6000/rs6000.c:826
#, c-format
msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'"
msgstr ""
-#: config/rs6000/rs6000.c:646
+#: config/rs6000/rs6000.c:837
#, c-format
msgid "Unknown switch -mlong-double-%s"
msgstr ""
-#: config/rs6000/rs6000.c:738
+#: config/rs6000/rs6000.c:1008
#, fuzzy, c-format
-msgid "unknown -misel= option specified: '%s'"
+msgid "unknown -m%s= option specified: '%s'"
msgstr "okänt maskinläge `%s'"
-#: config/rs6000/rs6000.c:753
+#: config/rs6000/rs6000.c:1025
+#, c-format
+msgid "not configured for ABI: '%s'"
+msgstr ""
+
+#: config/rs6000/rs6000.c:1031
#, fuzzy, c-format
-msgid "unknown -mvrsave= option specified: '%s'"
+msgid "unknown ABI specified: '%s'"
msgstr "okänt maskinläge `%s'"
-#: config/rs6000/rs6000.c:772
+#: config/rs6000/rs6000.c:1045
#, fuzzy, c-format
-msgid "unknown ABI specified: '%s'"
+msgid "unknown -malign-XXXXX option specified: '%s'"
msgstr "okänt maskinläge `%s'"
-#: config/rs6000/rs6000.c:4206
+#: config/rs6000/rs6000.c:5358
#, fuzzy
msgid "argument 1 must be a 5-bit signed literal"
msgstr "första argumentet till \"%s\" skall vara \"int\""
-#: config/rs6000/rs6000.c:4313 config/rs6000/rs6000.c:4903
+#: config/rs6000/rs6000.c:5460 config/rs6000/rs6000.c:6083
#, fuzzy
msgid "argument 2 must be a 5-bit unsigned literal"
msgstr "första argumentet till \"%s\" skall vara \"int\""
-#: config/rs6000/rs6000.c:4356
+#: config/rs6000/rs6000.c:5500
#, fuzzy
msgid "argument 1 of __builtin_altivec_predicate must be a constant"
msgstr "argumentet till \"__builtin_eh_return_regno\" måste vara konstant"
-#: config/rs6000/rs6000.c:4410
+#: config/rs6000/rs6000.c:5554
#, fuzzy
msgid "argument 1 of __builtin_altivec_predicate is out of range"
msgstr "argument till \"__builtin_args_info\" är utanför sitt intervall"
-#: config/rs6000/rs6000.c:4489
+#: config/rs6000/rs6000.c:5682
#, fuzzy
msgid "argument 3 must be a 4-bit unsigned literal"
msgstr "första argumentet till \"%s\" skall vara \"int\""
-#: config/rs6000/rs6000.c:4666
+#: config/rs6000/rs6000.c:5852
#, fuzzy, c-format
msgid "argument to `%s' must be a 2-bit unsigned literal"
msgstr "första argumentet till \"%s\" skall vara \"int\""
-#: config/rs6000/rs6000.c:4782
+#: config/rs6000/rs6000.c:5965
#, fuzzy
msgid "argument to dss must be a 2-bit unsigned literal"
msgstr "första argumentet till \"%s\" skall vara \"int\""
-#: config/rs6000/rs6000.c:5013
+#: config/rs6000/rs6000.c:6203
#, fuzzy
msgid "argument 1 of __builtin_spe_predicate must be a constant"
msgstr "argumentet till \"__builtin_eh_return_regno\" måste vara konstant"
-#: config/rs6000/rs6000.c:5086
+#: config/rs6000/rs6000.c:6276
#, fuzzy
msgid "argument 1 of __builtin_spe_predicate is out of range"
msgstr "argument till \"__builtin_args_info\" är utanför sitt intervall"
-#: config/rs6000/rs6000.c:7511
+#: config/rs6000/rs6000.c:8711
#, c-format
msgid "invalid %%f value"
msgstr ""
-#: config/rs6000/rs6000.c:7520
+#: config/rs6000/rs6000.c:8720
#, c-format
msgid "invalid %%F value"
msgstr ""
-#: config/rs6000/rs6000.c:7529
+#: config/rs6000/rs6000.c:8729
#, c-format
msgid "invalid %%G value"
msgstr ""
-#: config/rs6000/rs6000.c:7564
+#: config/rs6000/rs6000.c:8764
#, c-format
msgid "invalid %%j code"
msgstr ""
-#: config/rs6000/rs6000.c:7574
+#: config/rs6000/rs6000.c:8774
#, c-format
msgid "invalid %%J code"
msgstr ""
-#: config/rs6000/rs6000.c:7604
+#: config/rs6000/rs6000.c:8784
+#, c-format
+msgid "invalid %%k value"
+msgstr ""
+
+#: config/rs6000/rs6000.c:8804 config/xtensa/xtensa.c:1985
#, c-format
msgid "invalid %%K value"
msgstr ""
-#: config/rs6000/rs6000.c:7671
+#: config/rs6000/rs6000.c:8871
#, c-format
msgid "invalid %%O value"
msgstr "ogiltigt %%O-värde"
-#: config/rs6000/rs6000.c:7793
+#: config/rs6000/rs6000.c:8918
+#, c-format
+msgid "invalid %%q value"
+msgstr ""
+
+#: config/rs6000/rs6000.c:8962
+#, c-format
+msgid "invalid %%S value"
+msgstr ""
+
+#: config/rs6000/rs6000.c:9004
#, c-format
msgid "invalid %%T value"
msgstr ""
-#: config/rs6000/rs6000.c:7803
+#: config/rs6000/rs6000.c:9014
#, c-format
msgid "invalid %%u value"
msgstr ""
-#: config/rs6000/rs6000.c:7812
+#: config/rs6000/rs6000.c:9023 config/xtensa/xtensa.c:1955
#, c-format
msgid "invalid %%v value"
msgstr ""
-#: config/rs6000/rs6000.c:12242
+#: config/rs6000/rs6000.c:13513
msgid "no profiling of 64-bit code for this ABI"
msgstr ""
-#: config/rs6000/aix.h:160 config/rs6000/beos.h:32
+#: config/rs6000/aix.h:184 config/rs6000/beos.h:32
msgid "Always pass floating-point arguments in memory"
msgstr ""
-#: config/rs6000/aix.h:162 config/rs6000/beos.h:34
+#: config/rs6000/aix.h:186 config/rs6000/beos.h:34
msgid "Don't always pass floating-point arguments in memory"
msgstr ""
-#: config/rs6000/aix41.h:28 config/rs6000/aix43.h:32 config/rs6000/aix51.h:32
-#: config/rs6000/aix52.h:32
+#: config/rs6000/aix41.h:27 config/rs6000/aix43.h:31 config/rs6000/aix51.h:31
+#: config/rs6000/aix52.h:31
msgid "Support message passing with the Parallel Environment"
msgstr ""
-#: config/rs6000/aix43.h:28 config/rs6000/aix51.h:28 config/rs6000/aix52.h:28
+#: config/rs6000/aix43.h:27 config/rs6000/aix51.h:27 config/rs6000/aix52.h:27
msgid "Compile for 64-bit pointers"
msgstr ""
-#: config/rs6000/aix43.h:30 config/rs6000/aix51.h:30 config/rs6000/aix52.h:30
+#: config/rs6000/aix43.h:29 config/rs6000/aix51.h:29 config/rs6000/aix52.h:29
msgid "Compile for 32-bit pointers"
msgstr ""
-#: config/rs6000/aix43.h:49 config/rs6000/aix51.h:49 config/rs6000/aix52.h:49
+#: config/rs6000/aix43.h:48 config/rs6000/aix51.h:48 config/rs6000/aix52.h:48
#, fuzzy
msgid "-maix64 and POWER architecture are incompatible"
msgstr "-fpic och -mapcs-reent är inkompatibla"
-#: config/rs6000/aix43.h:54 config/rs6000/aix51.h:54 config/rs6000/aix52.h:54
+#: config/rs6000/aix43.h:53 config/rs6000/aix51.h:53 config/rs6000/aix52.h:53
msgid "-maix64 requires PowerPC64 architecture remain enabled"
msgstr ""
-#: config/rs6000/aix43.h:58 config/rs6000/aix51.h:58 config/rs6000/aix52.h:58
+#: config/rs6000/aix43.h:57 config/rs6000/aix51.h:57 config/rs6000/aix52.h:57
msgid "-maix64 required: 64-bit computation with 32-bit addressing not yet supported"
msgstr ""
+#: config/rs6000/darwin.h:64
+msgid "Generate code suitable for executables (NOT shared libs)"
+msgstr ""
+
+#. The Darwin ABI always includes AltiVec, can't be (validly) turned
+#. off.
+#: config/rs6000/darwin.h:80
+msgid "-mdynamic-no-pic overrides -fpic or -fPIC"
+msgstr ""
+
+#. Darwin doesn't support -fpic.
+#: config/rs6000/darwin.h:86
+#, fuzzy
+msgid "-fpic is not supported; -fPIC assumed"
+msgstr "-pipe stöds inte."
+
+#: config/rs6000/linux64.h:96
+msgid "-m64 requires a PowerPC64 cpu"
+msgstr ""
+
+#: config/rs6000/linux64.h:201
+msgid "Call mcount for profiling before a function prologue"
+msgstr ""
+
+#: config/rs6000/linux64.h:203
+msgid "Call mcount for profiling after a function prologue"
+msgstr ""
+
#. Run-time compilation parameters selecting different hardware subsets.
#.
#. Macro to define tables used to set the flags.
@@ -12862,165 +12172,207 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/rs6000/rs6000.h:240
+#: config/rs6000/rs6000.h:262
msgid "Use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:243
+#: config/rs6000/rs6000.h:265
msgid "Use POWER2 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:245
+#: config/rs6000/rs6000.h:267
msgid "Do not use POWER2 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:248
+#: config/rs6000/rs6000.h:270
msgid "Do not use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:250
+#: config/rs6000/rs6000.h:272
msgid "Use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:253
+#: config/rs6000/rs6000.h:275
msgid "Do not use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:255
+#: config/rs6000/rs6000.h:277
msgid "Use PowerPC General Purpose group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:257
-msgid "Don't use PowerPC General Purpose group optional instructions"
-msgstr ""
+#: config/rs6000/rs6000.h:279
+#, fuzzy
+msgid "Do not use PowerPC General Purpose group optional instructions"
+msgstr "Använd inte bitfältsinstruktioner"
-#: config/rs6000/rs6000.h:259
+#: config/rs6000/rs6000.h:281
msgid "Use PowerPC Graphics group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.h:261
-msgid "Don't use PowerPC Graphics group optional instructions"
-msgstr ""
+#: config/rs6000/rs6000.h:283
+#, fuzzy
+msgid "Do not use PowerPC Graphics group optional instructions"
+msgstr "Använd inte bitfältsinstruktioner"
-#: config/rs6000/rs6000.h:263
+#: config/rs6000/rs6000.h:285
msgid "Use PowerPC-64 instruction set"
msgstr ""
-#: config/rs6000/rs6000.h:265
-msgid "Don't use PowerPC-64 instruction set"
-msgstr ""
+#: config/rs6000/rs6000.h:287
+#, fuzzy
+msgid "Do not use PowerPC-64 instruction set"
+msgstr "Använd inte bitfältsinstruktioner"
-#: config/rs6000/rs6000.h:267
+#: config/rs6000/rs6000.h:289
#, fuzzy
msgid "Use AltiVec instructions"
msgstr "Använd bitfältsinstruktioner"
-#: config/rs6000/rs6000.h:269
+#: config/rs6000/rs6000.h:291
#, fuzzy
-msgid "Don't use AltiVec instructions"
+msgid "Do not use AltiVec instructions"
msgstr "Använd inte bitfältsinstruktioner"
-#: config/rs6000/rs6000.h:271
+#: config/rs6000/rs6000.h:293
msgid "Use new mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.h:273
+#: config/rs6000/rs6000.h:295
msgid "Use old mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.h:276
+#: config/rs6000/rs6000.h:298
msgid "Put everything in the regular TOC"
msgstr ""
-#: config/rs6000/rs6000.h:278
+#: config/rs6000/rs6000.h:300
msgid "Place floating point constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:280
-msgid "Don't place floating point constants in TOC"
+#: config/rs6000/rs6000.h:302
+msgid "Do not place floating point constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:282
+#: config/rs6000/rs6000.h:304
msgid "Place symbol+offset constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:284
-msgid "Don't place symbol+offset constants in TOC"
+#: config/rs6000/rs6000.h:306
+msgid "Do not place symbol+offset constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.h:290
+#: config/rs6000/rs6000.h:312
msgid "Place variable addresses in the regular TOC"
msgstr ""
-#: config/rs6000/rs6000.h:296
+#: config/rs6000/rs6000.h:318
msgid "Generate load/store multiple instructions"
msgstr ""
-#: config/rs6000/rs6000.h:298
+#: config/rs6000/rs6000.h:320
msgid "Do not generate load/store multiple instructions"
msgstr ""
-#: config/rs6000/rs6000.h:302
+#: config/rs6000/rs6000.h:322
msgid "Generate string instructions for block moves"
msgstr ""
-#: config/rs6000/rs6000.h:304
+#: config/rs6000/rs6000.h:324
msgid "Do not generate string instructions for block moves"
msgstr ""
-#: config/rs6000/rs6000.h:308
+#: config/rs6000/rs6000.h:326
msgid "Generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.h:310
+#: config/rs6000/rs6000.h:328
msgid "Do not generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.h:318
-msgid "Don't schedule the start and end of the procedure"
+#: config/rs6000/rs6000.h:332
+#, fuzzy
+msgid "Do not generate fused multiply/add instructions"
+msgstr "Använd inte bitfältsinstruktioner"
+
+#: config/rs6000/rs6000.h:336
+msgid "Do not schedule the start and end of the procedure"
msgstr ""
-#: config/rs6000/rs6000.h:324
+#: config/rs6000/rs6000.h:342
msgid "Return all structures in memory (AIX default)"
msgstr ""
-#: config/rs6000/rs6000.h:326
+#: config/rs6000/rs6000.h:344
msgid "Return small structures in registers (SVR4 default)"
msgstr ""
-#: config/rs6000/rs6000.h:391 config/sparc/sparc.h:633
+#: config/rs6000/rs6000.h:350
+#, fuzzy
+msgid "Generate single field mfcr instruction"
+msgstr "Använd inte bitfältsinstruktioner"
+
+#: config/rs6000/rs6000.h:352
+#, fuzzy
+msgid "Do not generate single field mfcr instruction"
+msgstr "Använd inte bitfältsinstruktioner"
+
+#: config/rs6000/rs6000.h:435 config/sparc/sparc.h:648
msgid "Use features of and schedule code for given CPU"
msgstr ""
-#: config/rs6000/rs6000.h:394
+#: config/rs6000/rs6000.h:438
msgid "Enable debug output"
msgstr ""
-#: config/rs6000/rs6000.h:396
+#: config/rs6000/rs6000.h:440
msgid "Select full, part, or no traceback table"
msgstr ""
-#: config/rs6000/rs6000.h:397
+#: config/rs6000/rs6000.h:441
msgid "Specify ABI to use"
msgstr ""
-#: config/rs6000/rs6000.h:399
+#: config/rs6000/rs6000.h:443
#, fuzzy
msgid "Specify size of long double (64 or 128 bits)"
msgstr "sizeof(long double) är 12."
-#: config/rs6000/rs6000.h:401
+#: config/rs6000/rs6000.h:445
msgid "Specify yes/no if isel instructions should be generated"
msgstr ""
-#: config/rs6000/rs6000.h:403
+#: config/rs6000/rs6000.h:447
+msgid "Specify yes/no if SPE SIMD instructions should be generated"
+msgstr ""
+
+#: config/rs6000/rs6000.h:449
+msgid "Specify yes/no if using floating point in the GPRs"
+msgstr ""
+
+#: config/rs6000/rs6000.h:451
msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec"
msgstr ""
-#: config/rs6000/rs6000.h:405
+#: config/rs6000/rs6000.h:453
msgid "Avoid all range limits on call instructions"
msgstr ""
+#: config/rs6000/rs6000.h:456
+msgid "Determine which dependences between insns are considered costly"
+msgstr ""
+
+#: config/rs6000/rs6000.h:458
+msgid "Specify which post scheduling nop insertion scheme to apply"
+msgstr ""
+
+#: config/rs6000/rs6000.h:460
+msgid "Specify alignment of structure fields default/natural"
+msgstr ""
+
+#: config/rs6000/rs6000.h:462
+msgid "Specify scheduling priority for dispatch slot restricted insns"
+msgstr ""
+
#. Definitions for __builtin_return_address and __builtin_frame_address.
#. __builtin_return_address (0) should give link register (65), enable
#. this.
@@ -13033,7 +12385,7 @@ msgstr ""
#. Number of bytes into the frame return addresses can be found. See
#. rs6000_stack_info in rs6000.c for more information on how the different
#. abi's store the return address.
-#: config/rs6000/rs6000.h:1884
+#: config/rs6000/rs6000.h:1926
msgid "RETURN_ADDRESS_OFFSET not supported"
msgstr ""
@@ -13045,101 +12397,110 @@ msgstr ""
msgid "Select method for sdata handling"
msgstr ""
-#: config/rs6000/sysv4.h:103
+#: config/rs6000/sysv4.h:100
msgid "Align to the base type of the bit-field"
msgstr ""
-#: config/rs6000/sysv4.h:105
+#: config/rs6000/sysv4.h:102
msgid "Don't align to the base type of the bit-field"
msgstr ""
-#: config/rs6000/sysv4.h:107
+#: config/rs6000/sysv4.h:104
msgid "Don't assume that unaligned accesses are handled by the system"
msgstr ""
-#: config/rs6000/sysv4.h:109
+#: config/rs6000/sysv4.h:106
msgid "Assume that unaligned accesses are handled by the system"
msgstr ""
-#: config/rs6000/sysv4.h:111 config/rs6000/sysv4.h:115
+#: config/rs6000/sysv4.h:108 config/rs6000/sysv4.h:112
msgid "Produce code relocatable at runtime"
msgstr ""
-#: config/rs6000/sysv4.h:113 config/rs6000/sysv4.h:117
+#: config/rs6000/sysv4.h:110 config/rs6000/sysv4.h:114
msgid "Don't produce code relocatable at runtime"
msgstr ""
-#: config/rs6000/sysv4.h:119 config/rs6000/sysv4.h:121
+#: config/rs6000/sysv4.h:116 config/rs6000/sysv4.h:118
#, fuzzy
msgid "Produce little endian code"
msgstr "Skapa \"little endian\"-kod."
-#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:125
+#: config/rs6000/sysv4.h:120 config/rs6000/sysv4.h:122
#, fuzzy
msgid "Produce big endian code"
msgstr "Skapa \"big endian\"-kod."
-#: config/rs6000/sysv4.h:126 config/rs6000/sysv4.h:127
-#: config/rs6000/sysv4.h:128 config/rs6000/sysv4.h:129
-#: config/rs6000/sysv4.h:130 config/rs6000/sysv4.h:131
-#: config/rs6000/sysv4.h:141 config/rs6000/sysv4.h:142
-#: config/rs6000/sysv4.h:153 config/rs6000/sysv4.h:155
-#: config/rs6000/sysv4.h:157
+#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:124
+#: config/rs6000/sysv4.h:125 config/rs6000/sysv4.h:126
+#: config/rs6000/sysv4.h:127 config/rs6000/sysv4.h:128
+#: config/rs6000/sysv4.h:138 config/rs6000/sysv4.h:139
+#: config/rs6000/sysv4.h:151 config/rs6000/sysv4.h:157
msgid "no description yet"
msgstr "ingen beskriving ännu"
-#: config/rs6000/sysv4.h:132
+#: config/rs6000/sysv4.h:129
#, fuzzy
msgid "Use EABI"
msgstr "Använd EABI."
-#: config/rs6000/sysv4.h:133
+#: config/rs6000/sysv4.h:130
#, fuzzy
msgid "Don't use EABI"
msgstr "Använd inte EABI."
-#: config/rs6000/sysv4.h:136
+#: config/rs6000/sysv4.h:133
msgid "Do not allow bit-fields to cross word boundaries"
msgstr ""
-#: config/rs6000/sysv4.h:138
+#: config/rs6000/sysv4.h:135
#, fuzzy
msgid "Use alternate register names"
msgstr "Använd alternativa registernamn."
-#: config/rs6000/sysv4.h:140
+#: config/rs6000/sysv4.h:137
#, fuzzy
msgid "Don't use alternate register names"
msgstr "Använd inte alternativa registernamn."
-#: config/rs6000/sysv4.h:144
+#: config/rs6000/sysv4.h:141
#, fuzzy
msgid "Link with libsim.a, libc.a and sim-crt0.o"
msgstr "Länka med libsim.a, libc.a och sim-crt0.o."
-#: config/rs6000/sysv4.h:146
+#: config/rs6000/sysv4.h:143
#, fuzzy
msgid "Link with libads.a, libc.a and crt0.o"
msgstr "Länka med libads.a, libc.a och crt0.o."
-#: config/rs6000/sysv4.h:148
+#: config/rs6000/sysv4.h:145
#, fuzzy
msgid "Link with libyk.a, libc.a and crt0.o"
msgstr "Länka med libyk.a, libc.a och crt0.o."
-#: config/rs6000/sysv4.h:150
+#: config/rs6000/sysv4.h:147
#, fuzzy
msgid "Link with libmvme.a, libc.a and crt0.o"
msgstr "Länka med libmvme.a, libc.a och crt0.o."
-#: config/rs6000/sysv4.h:152
+#: config/rs6000/sysv4.h:149
msgid "Set the PPC_EMB bit in the ELF flags header"
msgstr "Sätt biten PPC_EMB i ELF:s flaggfält"
-#: config/rs6000/sysv4.h:154
+#: config/rs6000/sysv4.h:150
msgid "Use the WindISS simulator"
msgstr ""
+#: config/rs6000/sysv4.h:153
+#, fuzzy
+msgid "Generate 64-bit code"
+msgstr "Generera H8/S-kod"
+
+#: config/rs6000/sysv4.h:155
+#, fuzzy
+msgid "Generate 32-bit code"
+msgstr "Generera \"big endian\"-kod."
+
#. Sometimes certain combinations of command options do not make sense
#. on a particular target machine. You can define a macro
#. `OVERRIDE_OPTIONS' to take account of this. This macro, if
@@ -13163,368 +12524,439 @@ msgstr "Felaktigt värde för -msdata-%s"
msgid "-mrelocatable and -msdata=%s are incompatible"
msgstr "-fpic och -mapcs-reent är inkompatibla"
-#: config/rs6000/sysv4.h:255
+#: config/rs6000/sysv4.h:256
#, fuzzy, c-format
msgid "-f%s and -msdata=%s are incompatible"
msgstr "-fpic och -mapcs-reent är inkompatibla"
-#: config/rs6000/sysv4.h:264
+#: config/rs6000/sysv4.h:265
#, fuzzy, c-format
msgid "-msdata=%s and -mcall-%s are incompatible"
msgstr "-mbsd och -mxopen är inkompatibla"
-#: config/rs6000/sysv4.h:273
+#: config/rs6000/sysv4.h:274
#, fuzzy
msgid "-mrelocatable and -mno-minimal-toc are incompatible"
msgstr "-fpic och -mapcs-reent är inkompatibla"
-#: config/rs6000/sysv4.h:279
+#: config/rs6000/sysv4.h:280
#, fuzzy, c-format
msgid "-mrelocatable and -mcall-%s are incompatible"
msgstr "-fpic och -mapcs-reent är inkompatibla"
-#: config/rs6000/sysv4.h:286
+#: config/rs6000/sysv4.h:287
#, fuzzy, c-format
msgid "-fPIC and -mcall-%s are incompatible"
msgstr "-fpic och -mapcs-reent är inkompatibla"
-#: config/rs6000/sysv4.h:293
+#: config/rs6000/sysv4.h:294
msgid "-mcall-aixdesc must be big endian"
msgstr "-mcall-aixdesc måste vara \"big endian\""
-#: config/s390/s390.c:3063
+#: config/rs6000/sysv4.h:309
+#, fuzzy, c-format
+msgid "-m%s not supported in this configuration"
+msgstr "\"%s\" stöds inte av %s"
+
+#: config/s390/s390.c:926
+#, c-format
+msgid "Unknown cpu used in -march=%s."
+msgstr ""
+
+#: config/s390/s390.c:945
+#, c-format
+msgid "Unknown cpu used in -mtune=%s."
+msgstr ""
+
+#: config/s390/s390.c:950
+#, fuzzy, c-format
+msgid "z/Architecture mode not supported on %s."
+msgstr "-pipe stöds inte"
+
+#: config/s390/s390.c:952
+msgid "64-bit ABI not supported in ESA/390 mode."
+msgstr ""
+
+#: config/s390/s390.c:3337
msgid "invalid UNSPEC as operand (1)"
msgstr ""
-#: config/s390/s390.c:3123
+#: config/s390/s390.c:3385
msgid "invalid UNSPEC as operand (2)"
msgstr ""
-#: config/s390/s390.c:3129
+#: config/s390/s390.c:3391
msgid "UNKNOWN in s390_output_symbolic_const !?"
msgstr ""
-#: config/s390/s390.c:3147
+#: config/s390/s390.c:3407
msgid "Cannot decompose address."
msgstr ""
-#: config/s390/s390.c:3308
+#: config/s390/s390.c:3578
msgid "UNKNOWN in print_operand !?"
msgstr ""
-#: config/s390/s390.c:4961
+#: config/s390/s390.c:5301
msgid "Total size of local variables exceeds architecture limit."
msgstr ""
-#: config/s390/s390.h:70
+#: config/s390/s390.h:126
msgid "Set backchain"
msgstr ""
-#: config/s390/s390.h:71
+#: config/s390/s390.h:127
msgid "Don't set backchain (faster, but debug harder"
msgstr ""
-#: config/s390/s390.h:72
+#: config/s390/s390.h:128
msgid "Use bras for executable < 64k"
msgstr ""
-#: config/s390/s390.h:73
+#: config/s390/s390.h:129
#, fuzzy
msgid "Don't use bras"
msgstr "Använd inte EABI."
-#: config/s390/s390.h:74
+#: config/s390/s390.h:130
msgid "Additional debug prints"
msgstr ""
-#: config/s390/s390.h:75
+#: config/s390/s390.h:131
msgid "Don't print additional debug prints"
msgstr ""
-#: config/s390/s390.h:76
-msgid "64 bit mode"
+#: config/s390/s390.h:132
+#, fuzzy
+msgid "64 bit ABI"
+msgstr "Använd 64-bitars ABI"
+
+#: config/s390/s390.h:133
+#, fuzzy
+msgid "31 bit ABI"
+msgstr "Använd 64-bitars ABI"
+
+#: config/s390/s390.h:134
+msgid "z/Architecture"
msgstr ""
-#: config/s390/s390.h:77
-msgid "31 bit mode"
+#: config/s390/s390.h:135
+msgid "ESA/390 architecture"
msgstr ""
-#: config/s390/s390.h:78
+#: config/s390/s390.h:136
msgid "mvcle use"
msgstr ""
-#: config/s390/s390.h:79
+#: config/s390/s390.h:137
msgid "mvc&ex"
msgstr ""
-#: config/sh/sh.c:5137
+#: config/s390/s390.h:138
+#, fuzzy
+msgid "enable tpf OS code"
+msgstr "Generera SA-kod"
+
+#: config/s390/s390.h:139
+msgid "disable tpf OS code"
+msgstr ""
+
+#: config/s390/s390.h:140
+#, fuzzy
+msgid "disable fused multiply/add instructions"
+msgstr "Använd bitfältsinstruktioner"
+
+#: config/s390/s390.h:141
+#, fuzzy
+msgid "enable fused multiply/add instructions"
+msgstr "Använd inte bitfältsinstruktioner"
+
+#: config/sh/sh.c:5841
#, fuzzy
msgid "__builtin_saveregs not supported by this subtarget"
msgstr "__builtin_saveregs stöds inte på denna målarkitektur"
-#: config/sh/sh.c:5687
+#: config/sh/sh.c:6743
msgid "attribute interrupt_handler is not compatible with -m5-compact"
msgstr ""
#. The sp_switch attribute only has meaning for interrupt functions.
-#: config/sh/sh.c:5713 config/sh/sh.c:5752
+#. The trap_exit attribute only has meaning for interrupt functions.
+#: config/sh/sh.c:6765 config/sh/sh.c:6800
#, fuzzy, c-format
msgid "`%s' attribute only applies to interrupt functions"
msgstr "attributet \"%s\" fungerar bara på funktioner"
#. The argument must be a constant string.
-#: config/sh/sh.c:5720
+#: config/sh/sh.c:6772
#, fuzzy, c-format
msgid "`%s' attribute argument not a string constant"
msgstr "%s före strängkonstant"
#. The argument must be a constant integer.
-#: config/sh/sh.c:5759
+#: config/sh/sh.c:6807
#, fuzzy, c-format
msgid "`%s' attribute argument not an integer constant"
msgstr "case-etikett reducerar inte till en heltalskonstant"
#. There are no delay slots on SHmedia.
#. Relaxation isn't yet supported for SHmedia
-#: config/sh/sh.h:437
+#. -fprofile-arcs needs a working libgcov . In unified tree configurations with newlib, this requires to configure with --with-newlib --with-headers. But there is no way to check here we have a working libgcov, so just assume that we have.
+#: config/sh/sh.h:478
#, fuzzy
msgid "Profiling is not supported on this target."
msgstr "__builtin_saveregs stöds inte på denna målarkitektur"
-#: config/sparc/sparc.c:329
+#: config/sparc/sparc.c:360
#, c-format
msgid "%s is not supported by this configuration"
msgstr ""
-#: config/sparc/sparc.c:336
+#: config/sparc/sparc.c:367
msgid "-mlong-double-64 not allowed with -m64"
msgstr ""
-#: config/sparc/sparc.c:361
+#: config/sparc/sparc.c:392
msgid "-mcmodel= is not supported on 32 bit systems"
msgstr ""
-#: config/sparc/sparc.c:6341 config/sparc/sparc.c:6347
+#: config/sparc/sparc.c:6793 config/sparc/sparc.c:6799
#, fuzzy, c-format
msgid "invalid %%Y operand"
msgstr "ogiltig %%-kod"
-#: config/sparc/sparc.c:6417
+#: config/sparc/sparc.c:6869
#, fuzzy, c-format
msgid "invalid %%A operand"
msgstr "ogiltig %%-kod"
-#: config/sparc/sparc.c:6427
+#: config/sparc/sparc.c:6879
#, fuzzy, c-format
msgid "invalid %%B operand"
msgstr "ogiltigt värde %%B"
-#: config/sparc/sparc.c:6466
+#: config/sparc/sparc.c:6918
#, fuzzy, c-format
msgid "invalid %%c operand"
msgstr "ogiltig %%-kod"
-#: config/sparc/sparc.c:6467
+#: config/sparc/sparc.c:6919
#, fuzzy, c-format
msgid "invalid %%C operand"
msgstr "ogiltigt %%C-värde"
-#: config/sparc/sparc.c:6488
+#: config/sparc/sparc.c:6940
#, fuzzy, c-format
msgid "invalid %%d operand"
msgstr "ogiltig %%-kod"
-#: config/sparc/sparc.c:6489
+#: config/sparc/sparc.c:6941
#, fuzzy, c-format
msgid "invalid %%D operand"
msgstr "ogiltig %%-kod"
-#: config/sparc/sparc.c:6505
+#: config/sparc/sparc.c:6957
#, fuzzy, c-format
msgid "invalid %%f operand"
msgstr "ogiltig %%-kod"
-#: config/sparc/sparc.c:6519
+#: config/sparc/sparc.c:6971
#, fuzzy, c-format
msgid "invalid %%s operand"
msgstr "ogiltig %%-kod"
-#: config/sparc/sparc.c:6573
+#: config/sparc/sparc.c:7025
msgid "long long constant not a valid immediate operand"
msgstr ""
-#: config/sparc/sparc.c:6576
+#: config/sparc/sparc.c:7028
msgid "floating point constant not a valid immediate operand"
msgstr ""
-#: config/sparc/freebsd.h:81 config/sparc/linux.h:87 config/sparc/linux64.h:89
-#: config/sparc/netbsd-elf.h:239
+#: config/sparc/freebsd.h:77 config/sparc/linux.h:92
+#: config/sparc/linux64.h:104 config/sparc/netbsd-elf.h:216
msgid "Use 128 bit long doubles"
msgstr "Använd 128 bit long double"
-#: config/sparc/sp64-elf.h:84 config/sparc/splet.h:29
+#: config/sparc/sp64-elf.h:90
msgid "Generate code for big endian"
msgstr "Generera kod för \"big endian\""
-#: config/sparc/sp64-elf.h:85 config/sparc/splet.h:30
+#: config/sparc/sp64-elf.h:91
msgid "Generate code for little endian"
msgstr "Generera kod för \"little endian\""
-#: config/sparc/sp86x-aout.h:51 config/sparc/sp86x-elf.h:65
+#: config/sparc/sp86x-elf.h:68
msgid "Use little-endian byte order for data"
msgstr "Använd \"little endian\" byteordning för data"
-#: config/sparc/sparc.h:532
+#: config/sparc/sparc.h:547
msgid "Assume possible double misalignment"
msgstr ""
-#: config/sparc/sparc.h:534
+#: config/sparc/sparc.h:549
msgid "Assume all doubles are aligned"
msgstr ""
-#: config/sparc/sparc.h:536
+#: config/sparc/sparc.h:551
msgid "Pass -assert pure-text to linker"
msgstr ""
-#: config/sparc/sparc.h:538
+#: config/sparc/sparc.h:553
msgid "Do not pass -assert pure-text to linker"
msgstr ""
-#: config/sparc/sparc.h:540
+#: config/sparc/sparc.h:555
msgid "Use flat register window model"
msgstr ""
-#: config/sparc/sparc.h:542
+#: config/sparc/sparc.h:557
msgid "Do not use flat register window model"
msgstr ""
-#: config/sparc/sparc.h:544
+#: config/sparc/sparc.h:559
msgid "Use ABI reserved registers"
msgstr ""
-#: config/sparc/sparc.h:546
+#: config/sparc/sparc.h:561
msgid "Do not use ABI reserved registers"
msgstr ""
-#: config/sparc/sparc.h:548
+#: config/sparc/sparc.h:563
msgid "Use hardware quad fp instructions"
msgstr ""
-#: config/sparc/sparc.h:550
+#: config/sparc/sparc.h:565
msgid "Do not use hardware quad fp instructions"
msgstr ""
-#: config/sparc/sparc.h:552
+#: config/sparc/sparc.h:567
msgid "Compile for v8plus ABI"
msgstr ""
-#: config/sparc/sparc.h:554
+#: config/sparc/sparc.h:569
msgid "Do not compile for v8plus ABI"
msgstr ""
-#: config/sparc/sparc.h:556
+#: config/sparc/sparc.h:571
msgid "Utilize Visual Instruction Set"
msgstr ""
-#: config/sparc/sparc.h:558
+#: config/sparc/sparc.h:573
msgid "Do not utilize Visual Instruction Set"
msgstr ""
#. ??? These are deprecated, coerced to -mcpu=. Delete in 2.9.
-#: config/sparc/sparc.h:561
+#: config/sparc/sparc.h:576
msgid "Optimize for Cypress processors"
msgstr ""
-#: config/sparc/sparc.h:563
+#: config/sparc/sparc.h:578
#, fuzzy
msgid "Optimize for SPARCLite processors"
msgstr "Kompilera för processorn v850"
-#: config/sparc/sparc.h:565
+#: config/sparc/sparc.h:580
msgid "Optimize for F930 processors"
msgstr ""
-#: config/sparc/sparc.h:567
+#: config/sparc/sparc.h:582
msgid "Optimize for F934 processors"
msgstr ""
-#: config/sparc/sparc.h:569
+#: config/sparc/sparc.h:584
msgid "Use V8 SPARC ISA"
msgstr ""
-#: config/sparc/sparc.h:571
+#: config/sparc/sparc.h:586
msgid "Optimize for SuperSPARC processors"
msgstr ""
#. End of deprecated options.
-#: config/sparc/sparc.h:574
+#: config/sparc/sparc.h:589
msgid "Pointers are 64-bit"
msgstr "Pekare är 64-bitars"
-#: config/sparc/sparc.h:576
+#: config/sparc/sparc.h:591
msgid "Pointers are 32-bit"
msgstr "Pekare är 32-bitars"
-#: config/sparc/sparc.h:578
+#: config/sparc/sparc.h:593
msgid "Use 32-bit ABI"
msgstr "Använd 32-bitars ABI"
-#: config/sparc/sparc.h:580
+#: config/sparc/sparc.h:595
msgid "Use 64-bit ABI"
msgstr "Använd 64-bitars ABI"
-#: config/sparc/sparc.h:582
+#: config/sparc/sparc.h:597
msgid "Use stack bias"
msgstr ""
-#: config/sparc/sparc.h:584
+#: config/sparc/sparc.h:599
msgid "Do not use stack bias"
msgstr ""
-#: config/sparc/sparc.h:586
+#: config/sparc/sparc.h:601
msgid "Use structs on stronger alignment for double-word copies"
msgstr ""
-#: config/sparc/sparc.h:588
+#: config/sparc/sparc.h:603
msgid "Do not use structs on stronger alignment for double-word copies"
msgstr ""
-#: config/sparc/sparc.h:590
+#: config/sparc/sparc.h:605
msgid "Optimize tail call instructions in assembler and linker"
msgstr ""
-#: config/sparc/sparc.h:592
+#: config/sparc/sparc.h:607
msgid "Do not optimize tail call instructions in assembler or linker"
msgstr ""
-#: config/sparc/sparc.h:637
+#: config/sparc/sparc.h:652
msgid "Use given SPARC code model"
msgstr ""
-#: config/stormy16/stormy16.c:1192
+#: config/stormy16/stormy16.c:526
+msgid "Constant halfword load operand out of range."
+msgstr ""
+
+#: config/stormy16/stormy16.c:536
+msgid "Constant arithmetic operand out of range."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1027
+msgid "Local variable memory requirements exceed capacity."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1193
+msgid "function_profiler support"
+msgstr ""
+
+#: config/stormy16/stormy16.c:1292
#, fuzzy
msgid "cannot use va_start in interrupt function"
msgstr "kan inte deklarera en statisk funktion i en annan funktion"
-#: config/stormy16/stormy16.c:1552
+#: config/stormy16/stormy16.c:1624
#, fuzzy
msgid "`B' operand is not constant"
msgstr "fältinitierare är ej konstant"
-#: config/stormy16/stormy16.c:1558
+#: config/stormy16/stormy16.c:1630
msgid "`B' operand has multiple bits set"
msgstr ""
-#: config/stormy16/stormy16.c:1585
+#: config/stormy16/stormy16.c:1656
#, fuzzy
msgid "`o' operand is not constant"
msgstr "fältinitierare är ej konstant"
-#: config/stormy16/stormy16.c:1600
+#: config/stormy16/stormy16.c:1670
msgid "xstormy16_print_operand: unknown code"
msgstr ""
-#: config/stormy16/stormy16.c:1650
+#: config/stormy16/stormy16.c:1716
#, fuzzy, c-format
msgid "switch statement of size %lu entries too large"
msgstr "storleken på variabel \"%s\" är för stor"
@@ -13546,105 +12978,106 @@ msgstr "Ignorera attributet dllimport för funktioner"
msgid "cannot set interrupt attribute: no such identifier"
msgstr ""
-#: config/v850/v850-c.c:148
+#: config/v850/v850-c.c:147
msgid "junk at end of #pragma ghs section"
msgstr ""
-#: config/v850/v850-c.c:165
+#: config/v850/v850-c.c:164
#, fuzzy, c-format
msgid "unrecognized section name \"%s\""
msgstr "Känner inte igen sektionsnamn \"%s\""
-#: config/v850/v850-c.c:180
+#: config/v850/v850-c.c:179
msgid "malformed #pragma ghs section"
msgstr ""
-#: config/v850/v850-c.c:200
+#: config/v850/v850-c.c:198
msgid "junk at end of #pragma ghs interrupt"
msgstr ""
-#: config/v850/v850-c.c:212
+#: config/v850/v850-c.c:209
msgid "junk at end of #pragma ghs starttda"
msgstr ""
-#: config/v850/v850-c.c:224
+#: config/v850/v850-c.c:220
msgid "junk at end of #pragma ghs startsda"
msgstr ""
-#: config/v850/v850-c.c:236
+#: config/v850/v850-c.c:231
msgid "junk at end of #pragma ghs startzda"
msgstr ""
-#: config/v850/v850-c.c:248
+#: config/v850/v850-c.c:242
msgid "junk at end of #pragma ghs endtda"
msgstr ""
-#: config/v850/v850-c.c:260
+#: config/v850/v850-c.c:253
msgid "junk at end of #pragma ghs endsda"
msgstr ""
-#: config/v850/v850-c.c:272
+#: config/v850/v850-c.c:264
msgid "junk at end of #pragma ghs endzda"
msgstr ""
-#: config/v850/v850.c:129
+#: config/v850/v850.c:142
#, fuzzy, c-format
msgid "%s=%s is not numeric"
msgstr "%s=%s är för stor."
-#: config/v850/v850.c:136
+#: config/v850/v850.c:149
#, fuzzy, c-format
msgid "%s=%s is too large"
msgstr "%s=%s är för stor."
-#: config/v850/v850.c:302
+#: config/v850/v850.c:301
msgid "const_double_split got a bad insn:"
msgstr ""
-#: config/v850/v850.c:837
+#: config/v850/v850.c:866
msgid "output_move_single:"
msgstr ""
-#: config/v850/v850.c:2217
-msgid "a data area attribute cannot be specified for local variables"
-msgstr ""
+#: config/v850/v850.c:2209
+#, fuzzy
+msgid "%Jdata area attributes cannot be specified for local variables"
+msgstr "attributet \"section\" kan inte anges för lokala variabler"
-#: config/v850/v850.c:2228
-#, c-format
-msgid "data area of '%s' conflicts with previous declaration"
-msgstr ""
+#: config/v850/v850.c:2220
+#, fuzzy
+msgid "%Jdata area of '%D' conflicts with previous declaration"
+msgstr "sektion \"%s\" står i konflikt med tidigare deklaration"
-#: config/v850/v850.c:2447
+#: config/v850/v850.c:2419
#, c-format
msgid "bogus JR construction: %d\n"
msgstr ""
-#: config/v850/v850.c:2468 config/v850/v850.c:2670
+#: config/v850/v850.c:2440 config/v850/v850.c:2643
#, c-format
msgid "bad amount of stack space removal: %d"
msgstr ""
-#: config/v850/v850.c:2646
+#: config/v850/v850.c:2619
#, c-format
msgid "bogus JARL construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3026
+#: config/v850/v850.c:2989
#, c-format
msgid "Bogus DISPOSE construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3048
+#: config/v850/v850.c:3011
#, c-format
msgid "Too much stack space to dispose of: %d"
msgstr ""
-#: config/v850/v850.c:3224
+#: config/v850/v850.c:3184
#, c-format
msgid "Bogus PREPEARE construction: %d\n"
msgstr ""
-#: config/v850/v850.c:3246
+#: config/v850/v850.c:3206
#, c-format
msgid "Too much stack space to prepare: %d"
msgstr ""
@@ -13654,853 +13087,787 @@ msgstr ""
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/v850/v850.h:158
+#: config/v850/v850.h:174
msgid "Support Green Hills ABI"
msgstr ""
-#: config/v850/v850.h:161
+#: config/v850/v850.h:177
msgid "Prohibit PC relative function calls"
msgstr ""
-#: config/v850/v850.h:164
+#: config/v850/v850.h:180
msgid "Reuse r30 on a per function basis"
msgstr ""
-#: config/v850/v850.h:167
+#: config/v850/v850.h:183
msgid "Use stubs for function prologues"
msgstr ""
-#: config/v850/v850.h:170
+#: config/v850/v850.h:186
msgid "Same as: -mep -mprolog-function"
msgstr ""
-#: config/v850/v850.h:171
+#: config/v850/v850.h:187
msgid "Enable backend debugging"
msgstr ""
-#: config/v850/v850.h:173
+#: config/v850/v850.h:189
msgid "Compile for the v850 processor"
msgstr "Kompilera för processorn v850"
-#: config/v850/v850.h:175
+#: config/v850/v850.h:191
+#, fuzzy
+msgid "Compile for v850e1 processor"
+msgstr "Kompilera för processorn v850"
+
+#. Make sure that the other bits are cleared.
+#: config/v850/v850.h:193
#, fuzzy
msgid "Compile for v850e processor"
msgstr "Kompilera för processorn v850"
#. Make sure that the other bits are cleared.
-#: config/v850/v850.h:177
+#: config/v850/v850.h:195
#, fuzzy
msgid "Enable the use of the short load instructions"
msgstr "Använd inte bitfältsinstruktioner"
-#: config/v850/v850.h:180
+#: config/v850/v850.h:198
#, fuzzy
msgid "Do not use the callt instruction"
msgstr "Använd inte divisionsinstruktionen"
-#: config/v850/v850.h:187
+#: config/v850/v850.h:205
#, fuzzy
msgid "Do not use registers r2 and r5"
msgstr "Använd inte register för argumentskickning"
-#: config/v850/v850.h:189
+#: config/v850/v850.h:207
#, fuzzy
msgid "Enforce strict alignment"
msgstr "Generera inte kod för stackkontroll"
-#: config/v850/v850.h:192
+#: config/v850/v850.h:210
msgid "Use 4 byte entries in switch tables"
msgstr ""
-#: config/v850/v850.h:218
+#: config/v850/v850.h:236
msgid "Set the max size of data eligible for the TDA area"
msgstr ""
-#: config/v850/v850.h:221
+#: config/v850/v850.h:239
msgid "Set the max size of data eligible for the SDA area"
msgstr ""
-#: config/v850/v850.h:224
+#: config/v850/v850.h:242
msgid "Set the max size of data eligible for the ZDA area"
msgstr ""
-#: config/xtensa/xtensa.c:1062 config/xtensa/xtensa.c:1096
-#: config/xtensa/xtensa.c:1105
-msgid "bad test"
+#: config/xtensa/xtensa.c:1814
+msgid "boolean registers required for the floating-point option"
msgstr ""
-#: config/xtensa/xtensa.c:1824
-msgid "boolean registers required for the floating-point option"
+#: config/xtensa/xtensa.c:1868
+#, fuzzy, c-format
+msgid "-f%s is not supported with CONST16 instructions"
+msgstr "målprocessorn stödjer inte THUMB-instruktioner"
+
+#: config/xtensa/xtensa.c:1873
+msgid "PIC is required but not supported with CONST16 instructions"
msgstr ""
-#: config/xtensa/xtensa.c:1991
+#: config/xtensa/xtensa.c:1943
+#, fuzzy, c-format
+msgid "invalid %%D value"
+msgstr "ogiltigt värde %%B"
+
+#: config/xtensa/xtensa.c:1980
#, fuzzy
msgid "invalid mask"
msgstr "ogiltigt #pragma %s"
-#: config/xtensa/xtensa.c:2038
+#: config/xtensa/xtensa.c:2006
+#, fuzzy, c-format
+msgid "invalid %%x value"
+msgstr "ogiltigt värde %%B"
+
+#: config/xtensa/xtensa.c:2013
+#, fuzzy, c-format
+msgid "invalid %%d value"
+msgstr "ogiltigt värde %%B"
+
+#: config/xtensa/xtensa.c:2034 config/xtensa/xtensa.c:2044
+#, fuzzy, c-format
+msgid "invalid %%t/%%b value"
+msgstr "ogiltigt %%s-värde"
+
+#: config/xtensa/xtensa.c:2086
#, fuzzy
msgid "invalid address"
msgstr "ogiltig kod"
-#: config/xtensa/xtensa.c:2063
+#: config/xtensa/xtensa.c:2111
#, fuzzy
msgid "no register in address"
msgstr "okänt registernamn: %s"
-#: config/xtensa/xtensa.c:2071
+#: config/xtensa/xtensa.c:2119
#, fuzzy
msgid "address offset not a constant"
msgstr "efterfrågad minnesjustering är inte konstant"
-#: config/xtensa/xtensa.c:2794
+#: config/xtensa/xtensa.c:2802
#, fuzzy
msgid "only uninitialized variables can be placed in a .bss section"
msgstr "Initiera bara variabler som kan placeras i 8-bits området."
-#: config/xtensa/xtensa.h:114
-msgid "Use the Xtensa code density option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:116
-#, fuzzy
-msgid "Do not use the Xtensa code density option"
-msgstr "Använd inte divisionsinstruktionen"
-
-#: config/xtensa/xtensa.h:118
-msgid "Use the Xtensa MAC16 option"
+#: config/xtensa/xtensa.h:79
+msgid "Use CONST16 instruction to load constants"
msgstr ""
-#: config/xtensa/xtensa.h:120
-#, fuzzy
-msgid "Do not use the Xtensa MAC16 option"
-msgstr "Använd inte divisionsinstruktionen"
-
-#: config/xtensa/xtensa.h:122
-msgid "Use the Xtensa MUL16 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:124
-#, fuzzy
-msgid "Do not use the Xtensa MUL16 option"
-msgstr "Använd inte divisionsinstruktionen"
-
-#: config/xtensa/xtensa.h:126
-msgid "Use the Xtensa MUL32 option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:128
-#, fuzzy
-msgid "Do not use the Xtensa MUL32 option"
-msgstr "Använd inte divisionsinstruktionen"
-
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:134
-msgid "Use the Xtensa NSA option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:136
-#, fuzzy
-msgid "Do not use the Xtensa NSA option"
-msgstr "Använd inte divisionsinstruktionen"
-
-#: config/xtensa/xtensa.h:138
-msgid "Use the Xtensa MIN/MAX option"
+#: config/xtensa/xtensa.h:81
+msgid "Use PC-relative L32R instruction to load constants"
msgstr ""
-#: config/xtensa/xtensa.h:140
-#, fuzzy
-msgid "Do not use the Xtensa MIN/MAX option"
-msgstr "Använd inte divisionsinstruktionen"
-
-#: config/xtensa/xtensa.h:142
-msgid "Use the Xtensa SEXT option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:144
-#, fuzzy
-msgid "Do not use the Xtensa SEXT option"
-msgstr "Använd inte divisionsinstruktionen"
-
-#: config/xtensa/xtensa.h:146
-msgid "Use the Xtensa boolean register option"
-msgstr ""
-
-#: config/xtensa/xtensa.h:148
-#, fuzzy
-msgid "Do not use the Xtensa boolean register option"
-msgstr "Använd inte divisionsinstruktionen"
-
-#: config/xtensa/xtensa.h:150
-#, fuzzy
-msgid "Use the Xtensa floating-point unit"
-msgstr "Använd mjukvaruflytttal"
-
-#: config/xtensa/xtensa.h:152
-msgid "Do not use the Xtensa floating-point unit"
-msgstr ""
-
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:170
+#: config/xtensa/xtensa.h:83
msgid "Disable fused multiply/add and multiply/subtract FP instructions"
msgstr ""
-#: config/xtensa/xtensa.h:172
+#: config/xtensa/xtensa.h:85
msgid "Enable fused multiply/add and multiply/subtract FP instructions"
msgstr ""
-#: config/xtensa/xtensa.h:174
-msgid "Serialize volatile memory references with MEMW instructions"
-msgstr ""
-
-#: config/xtensa/xtensa.h:176
-msgid "Do not serialize volatile memory references with MEMW instructions"
-msgstr ""
-
-#: config/xtensa/xtensa.h:178
+#: config/xtensa/xtensa.h:87
msgid "Intersperse literal pools with code in the text section"
msgstr ""
-#: config/xtensa/xtensa.h:180
+#: config/xtensa/xtensa.h:89
msgid "Put literal pools in a separate literal section"
msgstr ""
-#: config/xtensa/xtensa.h:182
+#: config/xtensa/xtensa.h:91
msgid "Automatically align branch targets to reduce branch penalties"
msgstr ""
-#: config/xtensa/xtensa.h:184
+#: config/xtensa/xtensa.h:93
msgid "Do not automatically align branch targets"
msgstr ""
-#: config/xtensa/xtensa.h:186
+#: config/xtensa/xtensa.h:95
msgid "Use indirect CALLXn instructions for large programs"
msgstr ""
-#: config/xtensa/xtensa.h:188
+#: config/xtensa/xtensa.h:97
msgid "Use direct CALLn instructions for fast calls"
msgstr ""
-#: ada/misc.c:233
-msgid "`-gnat' misspelled as `-gant'"
-msgstr ""
-
-#: cp/call.c:261 cp/init.c:1594
-msgid "qualified type `%T' does not match destructor name `~%T'"
-msgstr ""
-
-#: cp/call.c:270
-msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
-msgstr ""
-
-#: cp/call.c:279
-msgid "`%D' is a namespace"
-msgstr ""
+#: ada/misc.c:240
+#, fuzzy, c-format
+msgid "missing argument to \"-%s\""
+msgstr "Saknar argument till flaggan \"%s\""
-#: cp/call.c:287
-msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
+#: ada/misc.c:281
+msgid "`-gnat' misspelled as `-gant'"
msgstr ""
-#: cp/call.c:369
+#: cp/call.c:217
msgid "unable to call pointer to member function here"
msgstr ""
-#: cp/call.c:518
-msgid "destructors take no parameters"
-msgstr ""
-
-#: cp/call.c:522
-msgid "destructor name `~%T' does not match type `%T' of expression"
-msgstr ""
-
-#: cp/call.c:543 cp/call.c:5000
-msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
-msgstr ""
-
-#: cp/call.c:567
-#, fuzzy
-msgid "request for member `%D' is ambiguous"
-msgstr "%s: flaggan \"%s\" är tvetydig\n"
-
-#: cp/call.c:2537
+#: cp/call.c:2228
msgid "%s %D(%T, %T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2542
+#: cp/call.c:2233
msgid "%s %D(%T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2546
+#: cp/call.c:2237
#, fuzzy
msgid "%s %D(%T) <built-in>"
msgstr "<inbyggd>"
-#: cp/call.c:2550
+#: cp/call.c:2241
msgid "%s %T <conversion>"
msgstr ""
-#: cp/call.c:2552
-#, fuzzy
-msgid "%s %+#D%s"
-msgstr "%s: %s"
-
-#: cp/call.c:2726
-#, fuzzy
-msgid "conversion from `%T' to `%T' is ambiguous"
-msgstr "%s: flaggan \"%s\" är tvetydig\n"
+#: cp/call.c:2243
+msgid "%J%s %+#D <near match>"
+msgstr ""
-#: cp/call.c:2803
+#: cp/call.c:2245
#, fuzzy
-msgid "`%T' is not a class type"
-msgstr "ISO C förbjuder typkonvertering till unionstyper"
+msgid "%J%s %+#D"
+msgstr "%s: %s"
-#: cp/call.c:2811
-msgid "incomplete type '%T' cannot be used to name a scope"
+#: cp/call.c:2280
+msgid "candidates are:"
msgstr ""
-#: cp/call.c:2831 cp/typeck.c:2188 cp/typeck.c:2217
+#: cp/call.c:2468
#, fuzzy
-msgid "'%D' has no member named '%E'"
-msgstr "%s har ingen medlem med namn \"%s\""
+msgid "conversion from `%T' to `%T' is ambiguous"
+msgstr "%s: flaggan \"%s\" är tvetydig\n"
-#: cp/call.c:2933
+#: cp/call.c:2619 cp/call.c:2663
msgid "no matching function for call to `%D(%A)'"
msgstr ""
-#: cp/call.c:2944 cp/call.c:5087
+#: cp/call.c:2622 cp/call.c:2666
msgid "call of overloaded `%D(%A)' is ambiguous"
msgstr ""
#. It's no good looking for an overloaded operator() on a
#. pointer-to-member-function.
-#: cp/call.c:2971
+#: cp/call.c:2732
#, c-format
msgid "pointer-to-member function %E cannot be called without an object; consider using .* or ->*"
msgstr ""
-#: cp/call.c:3036
+#: cp/call.c:2798
msgid "no match for call to `(%T) (%A)'"
msgstr ""
-#: cp/call.c:3046
+#: cp/call.c:2806
#, fuzzy
msgid "call of `(%T) (%A)' is ambiguous"
msgstr "%s: flaggan \"%s\" är tvetydig\n"
-#: cp/call.c:3081
+#: cp/call.c:2839
#, c-format
msgid "%s for ternary 'operator?:' in '%E ? %E : %E'"
msgstr ""
-#: cp/call.c:3087
+#: cp/call.c:2845
#, fuzzy, c-format
msgid "%s for 'operator%s' in '%E%s'"
msgstr "%s före symbolen \"%s\""
-#: cp/call.c:3091
+#: cp/call.c:2849
#, c-format
msgid "%s for 'operator[]' in '%E[%E]'"
msgstr ""
-#: cp/call.c:3096
+#: cp/call.c:2854
+#, fuzzy, c-format
+msgid "%s for '%s' in '%s %E'"
+msgstr "%s före %s'%c'"
+
+#: cp/call.c:2859
#, c-format
msgid "%s for 'operator%s' in '%E %s %E'"
msgstr ""
-#: cp/call.c:3099
+#: cp/call.c:2862
#, fuzzy, c-format
msgid "%s for 'operator%s' in '%s%E'"
msgstr "%s före symbolen \"%s\""
-#: cp/call.c:3191
+#: cp/call.c:2957
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
msgstr "ISO C++ förbjuder uteslutande av mittersta termen i ett ?: uttryck"
-#: cp/call.c:3250
+#: cp/call.c:3018
#, c-format
msgid "`%E' has type `void' and is not a throw-expression"
msgstr ""
-#: cp/call.c:3283 cp/call.c:3475
+#: cp/call.c:3051 cp/call.c:3242
msgid "operands to ?: have different types"
msgstr ""
-#: cp/call.c:3428
+#: cp/call.c:3196
#, fuzzy
msgid "enumeral mismatch in conditional expression: `%T' vs `%T'"
msgstr "typfel i villkorsuttryck"
-#: cp/call.c:3435
+#: cp/call.c:3203
#, fuzzy
msgid "enumeral and non-enumeral type in conditional expression"
msgstr "typ signed och unsigned i villkorsuttryck"
-#: cp/call.c:3516
-#, fuzzy
-msgid "`%D' must be declared before use"
-msgstr "\"%s\" är tidigare deklarerad här"
-
-#: cp/call.c:3706
+#: cp/call.c:3487
msgid "no `%D(int)' declared for postfix `%s', trying prefix operator instead"
msgstr ""
-#: cp/call.c:3753
+#: cp/call.c:3532
msgid "using synthesized `%#D' for copy assignment"
msgstr ""
-#: cp/call.c:3755
+#: cp/call.c:3534
msgid " where cfront would use `%#D'"
msgstr ""
-#: cp/call.c:3782
+#: cp/call.c:3557
#, fuzzy
msgid "comparison between `%#T' and `%#T'"
msgstr "jämföreslse mellan signed och unsigned"
-#: cp/call.c:4021
-msgid "no suitable `operator delete' for `%T'"
-msgstr ""
+#: cp/call.c:3803
+#, fuzzy
+msgid "no suitable `operator %s' for `%T'"
+msgstr "kan inte initiera friend-funktion \"%s\""
-#: cp/call.c:4040
+#: cp/call.c:3820
msgid "`%+#D' is private"
msgstr ""
-#: cp/call.c:4042
+#: cp/call.c:3822
msgid "`%+#D' is protected"
msgstr ""
-#: cp/call.c:4044
+#: cp/call.c:3824
msgid "`%+#D' is inaccessible"
msgstr ""
-#: cp/call.c:4045
+#: cp/call.c:3825
msgid "within this context"
msgstr ""
-#: cp/call.c:4088
+#: cp/call.c:3895
#, fuzzy
msgid "invalid conversion from `%T' to `%T'"
msgstr "konvertering från NaN till int"
-#: cp/call.c:4090 cp/call.c:4229 cp/call.c:4231
+#: cp/call.c:3897
#, fuzzy
msgid " initializing argument %P of `%D'"
msgstr "ogiltigt typargument till \"%s\""
-#: cp/call.c:4152 cp/call.c:4156
-msgid " initializing argument %P of `%D' from result of `%D'"
-msgstr ""
+#: cp/call.c:4050
+#, fuzzy
+msgid "cannot bind bitfield `%E' to `%T'"
+msgstr "kan inte initiera friend-funktion \"%s\""
-#: cp/call.c:4162 cp/call.c:4165
-msgid " initializing temporary from result of `%D'"
-msgstr ""
+#: cp/call.c:4053
+#, fuzzy
+msgid "cannot bind packed field `%E' to `%T'"
+msgstr "kan inte deklarera \"::main\" som en mall"
-#. Undefined behavior [expr.call] 5.2.2/7. We used to just warn
-#. here and do a bitwise copy, but now cp_expr_size will abort if we
-#. try to do that.
-#: cp/call.c:4316
+#: cp/call.c:4056
+#, fuzzy
+msgid "cannot bind rvalue `%E' to `%T'"
+msgstr "kan inte initiera friend-funktion \"%s\""
+
+#: cp/call.c:4144
msgid "cannot pass objects of non-POD type `%#T' through `...'; call will abort at runtime"
msgstr ""
#. Undefined behavior [expr.call] 5.2.2/7.
-#: cp/call.c:4343
-msgid "cannot receive objects of non-POD type `%#T' through `...'"
+#: cp/call.c:4168
+msgid "cannot receive objects of non-POD type `%#T' through `...'; call will abort at runtime"
msgstr ""
-#: cp/call.c:4523
+#: cp/call.c:4208
+#, fuzzy
+msgid "the default argument for parameter %d of `%D' has not yet been parsed"
+msgstr "parameternamn saknas i parameterlista"
+
+#: cp/call.c:4403
msgid "passing `%T' as `this' argument of `%#D' discards qualifiers"
msgstr ""
-#: cp/call.c:4542
+#: cp/call.c:4422
#, fuzzy
msgid "`%T' is not an accessible base of `%T'"
msgstr "%s har ingen medlem med namn \"%s\""
-#: cp/call.c:4786
+#: cp/call.c:4696
#, fuzzy
msgid "could not find class$ field in java interface type `%T'"
msgstr "ingen superklass deklarerad i interface för \"%s\""
-#: cp/call.c:4974
+#: cp/call.c:4951
#, fuzzy
msgid "call to non-function `%D'"
msgstr "Inga anrop i funktion %s\n"
-#: cp/call.c:5076
-msgid "no matching function for call to `%T::%D(%A)%#V'"
+#: cp/call.c:4977
+msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
+msgstr ""
+
+#: cp/call.c:5055
+msgid "no matching function for call to `%T::%s(%A)%#V'"
msgstr ""
-#: cp/call.c:5106
+#: cp/call.c:5072
+#, fuzzy, c-format
+msgid "call of overloaded `%s(%A)' is ambiguous"
+msgstr "%s: flaggan \"%s\" är tvetydig\n"
+
+#: cp/call.c:5093
msgid "cannot call member function `%D' without object"
msgstr ""
-#: cp/call.c:5704
+#: cp/call.c:5678
msgid "passing `%T' chooses `%T' over `%T'"
msgstr ""
-#: cp/call.c:5706 cp/decl2.c:4154
+#: cp/call.c:5680 cp/name-lookup.c:4057
#, fuzzy
msgid " in call to `%D'"
msgstr "kan inte inline:a anrop till \"%s\""
-#: cp/call.c:5755
+#: cp/call.c:5737
msgid "choosing `%D' over `%D'"
msgstr ""
-#: cp/call.c:5756
+#: cp/call.c:5738
#, fuzzy
msgid " for conversion from `%T' to `%T'"
msgstr "konvertering från NaN till int"
-#: cp/call.c:5758
+#: cp/call.c:5740
msgid " because conversion sequence for the argument is better"
msgstr ""
-#: cp/call.c:5879
-msgid "ISO C++ says that `%D' and `%D' are ambiguous even though the worst conversion for the former is better than the worst conversion for the latter"
+#: cp/call.c:5860
+msgid "ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:"
msgstr ""
-#: cp/call.c:5996
+#: cp/call.c:5864
+msgid "candidate 1:"
+msgstr ""
+
+#: cp/call.c:5865
+msgid "candidate 2:"
+msgstr ""
+
+#: cp/call.c:5974
#, fuzzy
msgid "could not convert `%E' to `%T'"
msgstr "kunde inte öppna dump-fil \"%s\""
-#: cp/call.c:6105
+#: cp/call.c:6079
msgid "invalid initialization of non-const reference of type '%T' from a temporary of type '%T'"
msgstr ""
-#: cp/call.c:6109
+#: cp/call.c:6083
#, fuzzy
msgid "invalid initialization of reference of type '%T' from expression of type '%T'"
msgstr "ogiltig mottagartyp \"%s\""
-#: cp/class.c:287
+#: cp/class.c:281
msgid "cannot convert from base `%T' to derived type `%T' via virtual base `%T'"
msgstr ""
-#: cp/class.c:992
+#: cp/class.c:764
+msgid "Java class '%T' cannot have an implicit non-trivial destructor"
+msgstr ""
+
+#: cp/class.c:765
+msgid "Java class '%T' cannot have a destructor"
+msgstr ""
+
+#: cp/class.c:933
msgid "`%#D' and `%#D' cannot be overloaded"
msgstr ""
-#: cp/class.c:1076
+#: cp/class.c:1016
#, fuzzy
msgid "duplicate enum value `%D'"
msgstr "upprepat case-värde"
-#: cp/class.c:1079
+#: cp/class.c:1019
msgid "duplicate field `%D' (as enum and non-enum)"
msgstr ""
-#: cp/class.c:1086
+#: cp/class.c:1026
#, fuzzy
msgid "duplicate nested type `%D'"
msgstr "upprepning av medlem \"%s\""
-#: cp/class.c:1097
+#: cp/class.c:1037
msgid "duplicate field `%D' (as type and non-type)"
msgstr ""
-#: cp/class.c:1101
+#: cp/class.c:1041
#, fuzzy
msgid "duplicate member `%D'"
msgstr "upprepning av medlem \"%s\""
-#: cp/class.c:1144
+#: cp/class.c:1079
msgid "conflicting access specifications for method `%D', ignored"
msgstr ""
-#: cp/class.c:1146
+#: cp/class.c:1081
#, c-format
msgid "conflicting access specifications for field `%s', ignored"
msgstr ""
-#: cp/class.c:1194
+#: cp/class.c:1131
msgid "`%D' names constructor"
msgstr ""
-#: cp/class.c:1199
+#: cp/class.c:1136
#, fuzzy
msgid "`%D' invalid in `%T'"
msgstr "Ogiltig flagga \"%s\""
-#: cp/class.c:1207
+#: cp/class.c:1144
msgid "no members matching `%D' in `%#T'"
msgstr ""
-#: cp/class.c:1239 cp/class.c:1247
+#: cp/class.c:1176 cp/class.c:1184
#, fuzzy
msgid "`%D' invalid in `%#T'"
msgstr "Ogiltig flagga \"%s\""
-#: cp/class.c:1240
+#: cp/class.c:1177
msgid " because of local method `%#D' with same name"
msgstr ""
-#: cp/class.c:1248
+#: cp/class.c:1185
msgid " because of local member `%#D' with same name"
msgstr ""
-#: cp/class.c:1320
+#: cp/class.c:1255
msgid "base class `%#T' has a non-virtual destructor"
msgstr ""
-#: cp/class.c:1340
+#: cp/class.c:1275
msgid "base `%T' with only non-default constructor in class without a constructor"
msgstr ""
-#: cp/class.c:1912
+#: cp/class.c:1659
msgid "all member functions in class `%T' are private"
msgstr ""
-#: cp/class.c:1926
+#: cp/class.c:1670
msgid "`%#T' only defines a private destructor and has no friends"
msgstr ""
-#: cp/class.c:1969
+#: cp/class.c:1712
msgid "`%#T' only defines private constructors and has no friends"
msgstr ""
-#: cp/class.c:2090 cp/class.c:5276
-#, fuzzy
-msgid "redefinition of `%#T'"
-msgstr "omdefiniering av \"%s\""
-
-#: cp/class.c:2091
-#, fuzzy
-msgid "previous definition of `%#T'"
-msgstr "omdefiniering av \"%s\""
-
-#: cp/class.c:2365
+#: cp/class.c:2097
msgid "no unique final overrider for `%D' in `%T'"
msgstr ""
#. Here we know it is a hider, and no overrider exists.
-#: cp/class.c:2712
+#: cp/class.c:2542
msgid "`%D' was hidden"
msgstr ""
-#: cp/class.c:2713
+#: cp/class.c:2543
msgid " by `%D'"
msgstr ""
-#: cp/class.c:2755
+#: cp/class.c:2584
msgid "ISO C++ forbids member `%D' with same name as enclosing class"
msgstr ""
-#: cp/class.c:2760 cp/decl2.c:1331
+#: cp/class.c:2589 cp/decl2.c:1167
msgid "`%#D' invalid; an anonymous union can only have non-static data members"
msgstr ""
-#: cp/class.c:2766 cp/decl2.c:1337
+#: cp/class.c:2595 cp/decl2.c:1174
msgid "private member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2769 cp/decl2.c:1339
+#: cp/class.c:2598 cp/decl2.c:1176
msgid "protected member `%#D' in anonymous union"
msgstr ""
-#: cp/class.c:2894
+#: cp/class.c:2717
msgid "vtable layout for class `%T' may not be ABI-compliant and may change in a future version of GCC due to implicit virtual destructor"
msgstr ""
-#: cp/class.c:2958
+#: cp/class.c:2777
#, fuzzy
msgid "bit-field `%#D' with non-integral type"
msgstr "bitfält \"%s\" har en icke godkänd typ"
-#: cp/class.c:2978
+#: cp/class.c:2797
#, fuzzy
msgid "bit-field `%D' width not an integer constant"
msgstr "tre \"l\"-suffix på heltalskonstant"
-#: cp/class.c:2984
+#: cp/class.c:2803
#, fuzzy
msgid "negative width in bit-field `%D'"
msgstr "negativ storlek i bitfält \"%s\""
-#: cp/class.c:2989
+#: cp/class.c:2808
#, fuzzy
msgid "zero width for bit-field `%D'"
msgstr "Storleken noll på bitfält \"%s\""
-#: cp/class.c:2995
+#: cp/class.c:2814
#, fuzzy
msgid "width of `%D' exceeds its type"
msgstr "storleken på \"%s\" är större än sin typ"
-#: cp/class.c:3004
+#: cp/class.c:2823
msgid "`%D' is too small to hold all values of `%#T'"
msgstr ""
-#: cp/class.c:3088
+#: cp/class.c:2885
msgid "member `%#D' with constructor not allowed in union"
msgstr ""
-#: cp/class.c:3091
+#: cp/class.c:2888
msgid "member `%#D' with destructor not allowed in union"
msgstr ""
-#: cp/class.c:3094
+#: cp/class.c:2891
msgid "member `%#D' with copy assignment operator not allowed in union"
msgstr ""
-#: cp/class.c:3121
+#: cp/class.c:2918
msgid "multiple fields in union `%T' initialized"
msgstr ""
-#: cp/class.c:3234
+#: cp/class.c:2987
+msgid "ignoring packed attribute on unpacked non-POD field `%#D'"
+msgstr ""
+
+#: cp/class.c:3039
msgid "field `%D' in local class cannot be static"
msgstr ""
-#: cp/class.c:3240
+#: cp/class.c:3045
#, fuzzy
msgid "field `%D' invalidly declared function type"
msgstr "fält \"%s\" deklarerad som en funktion"
-#: cp/class.c:3247
+#: cp/class.c:3052
#, fuzzy
msgid "field `%D' invalidly declared method type"
msgstr "bitfält \"%s\" har en icke godkänd typ"
-#: cp/class.c:3253
-#, fuzzy
-msgid "field `%D' invalidly declared offset type"
-msgstr "bitfält \"%s\" har en icke godkänd typ"
-
#. Unions cannot have static members.
-#: cp/class.c:3271
+#: cp/class.c:3070
#, fuzzy
msgid "field `%D' declared static in union"
msgstr "fält \"%s\" deklarerad som en funktion"
-#: cp/class.c:3298
+#: cp/class.c:3097
msgid "non-static reference `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3333
+#: cp/class.c:3132
msgid "non-static const member `%#D' in class without a constructor"
msgstr ""
-#: cp/class.c:3349
+#: cp/class.c:3147
msgid "field `%#D' with same name as class"
msgstr ""
-#: cp/class.c:3367
+#: cp/class.c:3165
msgid "`%#T' has pointer data members"
msgstr ""
-#: cp/class.c:3371
+#: cp/class.c:3169
msgid " but does not override `%T(const %T&)'"
msgstr ""
-#: cp/class.c:3373
+#: cp/class.c:3171
msgid " or `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3376
+#: cp/class.c:3174
msgid " but does not override `operator=(const %T&)'"
msgstr ""
-#: cp/class.c:3826
+#: cp/class.c:3604
msgid "offset of empty base `%T' may not be ABI-compliant and maychange in a future version of GCC"
msgstr ""
-#: cp/class.c:3935
+#: cp/class.c:3714
msgid "class `%T' will be considered nearly empty in a future version of GCC"
msgstr ""
-#: cp/class.c:4025
+#: cp/class.c:3801
#, fuzzy
msgid "initializer specified for non-virtual method `%D'"
msgstr "argumentformat angivet för icke-funktion \"%s\""
-#: cp/class.c:4761
+#: cp/class.c:4489
msgid "offset of virtual base `%T' is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:4861
+#: cp/class.c:4579
msgid "direct base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:4874
+#: cp/class.c:4592
msgid "virtual base `%T' inaccessible in `%T' due to ambiguity"
msgstr ""
-#: cp/class.c:5030
+#: cp/class.c:4766
msgid "size assigned to `%T' may not be ABI-compliant and may change in a future version of GCC"
msgstr ""
#. Versions of G++ before G++ 3.4 did not reset the
#. DECL_MODE.
-#: cp/class.c:5053
+#: cp/class.c:4805
msgid "the offset of `%D' may not be ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5079
+#: cp/class.c:4828
msgid "offset of `%D' is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5088
+#: cp/class.c:4837
msgid "`%D' contains empty classes which may cause base classes to be placed at different locations in a future version of GCC"
msgstr ""
-#: cp/class.c:5147
+#: cp/class.c:4896
msgid "layout of classes derived from empty class `%T' may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5432
+#: cp/class.c:5026 cp/semantics.c:2029
+#, fuzzy
+msgid "redefinition of `%#T'"
+msgstr "omdefiniering av \"%s\""
+
+#: cp/class.c:5196
msgid "`%#T' has virtual functions but non-virtual destructor"
msgstr ""
-#: cp/class.c:5516
+#: cp/class.c:5275
msgid "trying to finish struct, but kicked out due to previous parse errors"
msgstr ""
-#: cp/class.c:5982
+#: cp/class.c:5717
#, c-format
msgid "language string `\"%s\"' not recognized"
msgstr "språksträng `\"%s\"' känns inte igen"
-#: cp/class.c:6078
+#: cp/class.c:5805
msgid "cannot resolve overloaded function `%D' based on conversion to type `%T'"
msgstr ""
-#: cp/class.c:6203
+#: cp/class.c:5930
msgid "no matches converting function `%D' to type `%#T'"
msgstr ""
-#: cp/class.c:6226
+#: cp/class.c:5953
msgid "converting overloaded function `%D' to type `%#T' is ambiguous"
msgstr ""
-#: cp/class.c:6252
+#: cp/class.c:5979
#, fuzzy
msgid "assuming pointer to member `%D'"
msgstr "upprepning av medlem \"%s\""
-#: cp/class.c:6255
+#: cp/class.c:5982
#, c-format
msgid "(a pointer to member can only be formed with `&%E')"
msgstr ""
-#: cp/class.c:6306 cp/class.c:6477 cp/class.c:6484
+#: cp/class.c:6027 cp/class.c:6209 cp/class.c:6216
msgid "not enough type information"
msgstr "inte tillräcklig typinformation"
-#: cp/class.c:6315
+#: cp/class.c:6044
#, fuzzy
msgid "argument of type `%T' does not match `%T'"
msgstr "argument \"%s\" matchar inte prototypen"
-#: cp/class.c:6461
+#: cp/class.c:6193
msgid "invalid operation on uninstantiated type"
msgstr "ogiltig operation på oinstansierad typ"
@@ -14509,15 +13876,20 @@ msgstr "ogiltig operation på oinstansierad typ"
#. A name N used in a class S shall refer to the same declaration
#. in its context and when re-evaluated in the completed scope of
#. S.
-#: cp/class.c:6745 cp/decl.c:1254 cp/decl.c:3379 cp/pt.c:2004
+#: cp/class.c:6451 cp/decl.c:1225 cp/name-lookup.c:495 cp/pt.c:2093
#, fuzzy
msgid "declaration of `%#D'"
msgstr "omdeklaration av \"%s\""
-#: cp/class.c:6746
+#: cp/class.c:6452
msgid "changes meaning of `%D' from `%+#D'"
msgstr ""
+#: cp/cp-lang.c:398
+#, fuzzy
+msgid "inter-module optimisations not implemented yet"
+msgstr "Profilering är inte implementerat ännu."
+
#: cp/cvt.c:88
#, fuzzy
msgid "can't convert from incomplete type `%T' to `%T'"
@@ -14527,280 +13899,265 @@ msgstr "kan inte konvertera till en pekartyp"
msgid "conversion of `%E' from `%T' to `%T' is ambiguous"
msgstr ""
-#: cp/cvt.c:126
+#: cp/cvt.c:113 cp/cvt.c:127
#, fuzzy
msgid "converting from `%T' to `%T'"
msgstr "konvertering från NaN till int"
-#: cp/cvt.c:203 cp/cvt.c:207
-msgid "pointer to member cast from `%T' to `%T' is via virtual base"
-msgstr ""
-
-#: cp/cvt.c:225 cp/cvt.c:236 cp/cvt.c:283
+#: cp/cvt.c:185 cp/cvt.c:253 cp/cvt.c:297
#, fuzzy
msgid "cannot convert `%E' from type `%T' to type `%T'"
msgstr "kan inte konvertera till en pekartyp"
-#: cp/cvt.c:262
+#: cp/cvt.c:214 cp/cvt.c:218
+msgid "pointer to member cast from `%T' to `%T' is via virtual base"
+msgstr ""
+
+#: cp/cvt.c:276
#, fuzzy
msgid "invalid conversion from '%T' to '%T'"
msgstr "konvertering från NaN till int"
-#: cp/cvt.c:504
+#: cp/cvt.c:508
msgid "conversion from `%T' to `%T' discards qualifiers"
msgstr ""
-#: cp/cvt.c:522
+#: cp/cvt.c:526
msgid "casting `%T' to `%T' does not dereference pointer"
msgstr ""
-#: cp/cvt.c:551
+#: cp/cvt.c:553
#, fuzzy
msgid "cannot convert type `%T' to type `%T'"
msgstr "kan inte konvertera till en pekartyp"
-#: cp/cvt.c:683
+#: cp/cvt.c:679
#, fuzzy
msgid "conversion from `%#T' to `%#T'"
msgstr "konvertering från NaN till int"
-#: cp/cvt.c:695
+#: cp/cvt.c:691
msgid "`%#T' used where a `%T' was expected"
msgstr ""
-#: cp/cvt.c:712
-msgid "the address of `%D', will always be `true'"
-msgstr ""
-
-#: cp/cvt.c:732
+#: cp/cvt.c:715
msgid "`%#T' used where a floating point value was expected"
msgstr ""
-#: cp/cvt.c:779
+#: cp/cvt.c:762
#, fuzzy
msgid "conversion from `%T' to non-scalar type `%T' requested"
msgstr "konvertering till icke-skalär typ begärd"
-#: cp/cvt.c:865
+#: cp/cvt.c:850
msgid "object of incomplete type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:868
+#: cp/cvt.c:853
msgid "object of type `%T' will not be accessed in %s"
msgstr ""
-#: cp/cvt.c:884
+#: cp/cvt.c:869
msgid "object `%E' of incomplete type `%T' will not be accessed in %s"
msgstr ""
#. [over.over] enumerates the places where we can take the address
#. of an overloaded function, and this is not one of them.
-#: cp/cvt.c:904
+#: cp/cvt.c:885
#, fuzzy, c-format
msgid "%s cannot resolve address of overloaded function"
msgstr "Programflödet når slutet på en icke-void-funktion"
#. Only warn when there is no &.
-#: cp/cvt.c:909
+#: cp/cvt.c:891
#, c-format
msgid "%s is a reference, not call, to function `%E'"
msgstr ""
-#: cp/cvt.c:1039
+#: cp/cvt.c:898
+#, fuzzy, c-format
+msgid "%s has no effect"
+msgstr "%s har ingen %s"
+
+#: cp/cvt.c:1009
#, fuzzy
msgid "converting NULL to non-pointer type"
msgstr "kan inte konvertera till en pekartyp"
-#: cp/cvt.c:1115
+#: cp/cvt.c:1081
msgid "ambiguous default type conversion from `%T'"
msgstr ""
-#: cp/cvt.c:1117
+#: cp/cvt.c:1083
msgid " candidate conversions include `%D' and `%D'"
msgstr ""
-#: cp/decl.c:736
-#, c-format
-msgid "push %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:770
-#, c-format
-msgid "pop %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:776 cp/decl.c:814
-msgid "XXX is_class_level != (current_binding_level == class_binding_level)\n"
-msgstr ""
-
-#: cp/decl.c:808
-#, c-format
-msgid "suspend %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:837
-#, c-format
-msgid "resume %s level %p line %d\n"
-msgstr ""
-
-#: cp/decl.c:1255 cp/decl.c:3490
-#, fuzzy
-msgid "conflicts with previous declaration `%#D'"
-msgstr "sektion \"%s\" står i konflikt med tidigare deklaration"
-
-#: cp/decl.c:1467
+#: cp/decl.c:374
#, fuzzy
msgid "label `%D' used but not defined"
msgstr "etikett \"%s\" använd men inte definierad"
-#: cp/decl.c:1472
+#: cp/decl.c:381
#, fuzzy
msgid "label `%D' defined but not used"
msgstr "etikett \"%s\" definierad men inte använd"
-#: cp/decl.c:2489
-msgid "namespace alias `%D' not allowed here, assuming `%D'"
-msgstr ""
+#: cp/decl.c:1133 cp/decl.c:1559
+#, fuzzy
+msgid "previous declaration of `%D'"
+msgstr "tidigare deklaration av \"%s\""
-#: cp/decl.c:2825
-msgid "XXX entering pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1181
+#, fuzzy
+msgid "%Jfunction '%D' redeclared as inline"
+msgstr "biblioteksfunktion \"%s\" deklarerad som icke-funktion"
-#: cp/decl.c:2834
-msgid "XXX leaving pop_everything ()\n"
-msgstr ""
+#: cp/decl.c:1182
+#, fuzzy
+msgid "%Jprevious declaration of '%D' with attribute noinline"
+msgstr "implicit deklaration av funktion \"%s\""
-#: cp/decl.c:3285 cp/decl.c:3700
+#: cp/decl.c:1189
#, fuzzy
-msgid "previous declaration of `%D'"
+msgid "%Jfunction '%D' redeclared with attribute noinline"
+msgstr "funktionen \"%s\" deklarerades tidigare i ett block"
+
+#: cp/decl.c:1191
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was inline"
msgstr "tidigare deklaration av \"%s\""
-#: cp/decl.c:3366 cp/decl.c:3404
+#: cp/decl.c:1212 cp/decl.c:1250
#, fuzzy
msgid "shadowing %s function `%#D'"
msgstr "döljer biblioteksfunktion \"%s\""
-#: cp/decl.c:3375
+#: cp/decl.c:1221
#, fuzzy
msgid "library function `%#D' redeclared as non-function `%#D'"
msgstr "biblioteksfunktion \"%s\" deklarerad som icke-funktion"
-#: cp/decl.c:3380
+#: cp/decl.c:1226
#, fuzzy
msgid "conflicts with built-in declaration `%#D'"
msgstr "motstridande deklarationer av \"%s\""
-#: cp/decl.c:3399 cp/decl.c:3504 cp/decl.c:3520
+#: cp/decl.c:1245 cp/decl.c:1357 cp/decl.c:1373
#, fuzzy
msgid "new declaration `%#D'"
msgstr "omdeklaration av \"%s\""
-#: cp/decl.c:3400
+#: cp/decl.c:1246
#, fuzzy
msgid "ambiguates built-in declaration `%#D'"
msgstr "dubbel deklaration av etikett \"%s\""
-#: cp/decl.c:3464
+#: cp/decl.c:1317
#, fuzzy
msgid "`%#D' redeclared as different kind of symbol"
msgstr "\"%s\" omdeklarerad som en annan sorts symbol"
-#: cp/decl.c:3467
+#: cp/decl.c:1320
#, fuzzy
msgid "previous declaration of `%#D'"
msgstr "tidigare deklaration av \"%s\""
-#: cp/decl.c:3489
+#: cp/decl.c:1342
#, fuzzy
msgid "declaration of template `%#D'"
msgstr "omdeklaration av \"enum %s\""
-#: cp/decl.c:3505 cp/decl.c:3521
+#: cp/decl.c:1343 cp/name-lookup.c:496
+#, fuzzy
+msgid "conflicts with previous declaration `%#D'"
+msgstr "sektion \"%s\" står i konflikt med tidigare deklaration"
+
+#: cp/decl.c:1358 cp/decl.c:1374
#, fuzzy
msgid "ambiguates old declaration `%#D'"
msgstr "dubbel deklaration av etikett \"%s\""
-#: cp/decl.c:3513
+#: cp/decl.c:1366
#, fuzzy
msgid "declaration of C function `%#D' conflicts with"
msgstr "implicit deklaration av funktion \"%s\""
-#: cp/decl.c:3515
+#: cp/decl.c:1368
#, fuzzy
msgid "previous declaration `%#D' here"
msgstr "tidigare deklaration av \"%s\""
-#: cp/decl.c:3533
+#: cp/decl.c:1384
#, fuzzy
-msgid "conflicting types for `%#D'"
-msgstr "motstridiga typer på \"%s\""
+msgid "conflicting declaration '%#D'"
+msgstr "motstridande deklarationer av \"%s\""
-#: cp/decl.c:3534
+#: cp/decl.c:1385
#, fuzzy
-msgid "previous declaration as `%#D'"
+msgid "'%D' has a previous declaration as `%#D'"
msgstr "tidigare deklaration av \"%s\""
-#: cp/decl.c:3577
+#: cp/decl.c:1438
#, fuzzy
msgid "`%#D' previously defined here"
msgstr "\"%s\" definierades tidigare här"
-#: cp/decl.c:3578
+#: cp/decl.c:1439
#, fuzzy
msgid "`%#D' previously declared here"
msgstr "\"%s\" är tidigare deklarerad här"
#. Prototype decl follows defn w/o prototype.
-#: cp/decl.c:3587
+#: cp/decl.c:1448
#, fuzzy
msgid "prototype for `%#D'"
msgstr "prototyp för \"%s\" följer"
-#: cp/decl.c:3588
+#: cp/decl.c:1449
#, fuzzy
-msgid "follows non-prototype definition here"
+msgid "%Jfollows non-prototype definition here"
msgstr "icke-prototypdefinition here"
-#: cp/decl.c:3600
+#: cp/decl.c:1461
#, fuzzy
msgid "previous declaration of `%#D' with %L linkage"
msgstr "tidigare deklaration av \"%s\""
-#: cp/decl.c:3602
+#: cp/decl.c:1463
#, fuzzy
msgid "conflicts with new declaration with %L linkage"
msgstr "motstridande deklarationer av \"%s\""
-#: cp/decl.c:3625 cp/decl.c:3632
+#: cp/decl.c:1486 cp/decl.c:1493
msgid "default argument given for parameter %d of `%#D'"
msgstr ""
-#: cp/decl.c:3627 cp/decl.c:3634
+#: cp/decl.c:1488 cp/decl.c:1495
#, fuzzy
msgid "after previous specification in `%#D'"
msgstr "tidigare deklaration av \"%s\""
-#: cp/decl.c:3643
+#: cp/decl.c:1504
#, fuzzy
msgid "`%#D' was used before it was declared inline"
msgstr "\"%s\" användes utan någon prototyp innan sin definition"
-#: cp/decl.c:3645
+#: cp/decl.c:1505
#, fuzzy
-msgid "previous non-inline declaration here"
+msgid "%Jprevious non-inline declaration here"
msgstr "tidigare implicit deklaration av \"%s\""
-#: cp/decl.c:3699
+#: cp/decl.c:1558
#, fuzzy
msgid "redundant redeclaration of `%D' in same scope"
msgstr "redundant omdeklaration av \"%s\" i samma scope"
-#: cp/decl.c:3780
+#: cp/decl.c:1649
#, fuzzy, c-format
msgid "declaration of `%F' throws different exceptions"
msgstr "deklaration av \"%s\" som ett fält med funktioner"
-#: cp/decl.c:3782
+#: cp/decl.c:1651
#, fuzzy, c-format
msgid "than previous declaration `%F'"
msgstr "ingen tidigare deklaration av \"%s\""
@@ -14813,346 +14170,224 @@ msgstr "ingen tidigare deklaration av \"%s\""
#. that specialization that would cause an implicit
#. instantiation to take place, in every translation unit in
#. which such a use occurs.
-#: cp/decl.c:3922
+#: cp/decl.c:1798
msgid "explicit specialization of %D after first use"
msgstr ""
-#: cp/decl.c:4187
-#, fuzzy
-msgid "`%#D' used prior to declaration"
-msgstr "\"%s\" är använd innan sin deklaration"
-
-#: cp/decl.c:4218
-#, fuzzy
-msgid "redeclaration of `wchar_t' as `%T'"
-msgstr "omdeklaration av \"%s\""
-
-#. A redeclaration of main, but not a duplicate of the
-#. previous one.
-#.
-#. [basic.start.main]
-#.
-#. This function shall not be overloaded.
-#: cp/decl.c:4246
-#, fuzzy
-msgid "invalid redeclaration of `%D'"
-msgstr "omdeklaration av \"%s\""
-
-#: cp/decl.c:4247
-msgid "as `%D'"
-msgstr ""
-
-#: cp/decl.c:4337
-#, fuzzy
-msgid "previous external decl of `%#D'"
-msgstr "föregående externa dekl. av \"%s\""
-
-#: cp/decl.c:4378
-#, fuzzy
-msgid "`%D' was previously implicitly declared to return `int'"
-msgstr "\"%s\" deklarerades tidigare implicit att returnera \"int\""
-
-#: cp/decl.c:4438
-#, fuzzy
-msgid "extern declaration of `%#D' doesn't match"
-msgstr "extern deklaration av \"%s\" matchar inte den globala"
-
-#: cp/decl.c:4439
-#, fuzzy
-msgid "global declaration `%#D'"
-msgstr "dubbel deklaration av etikett \"%s\""
-
-#: cp/decl.c:4472
-#, fuzzy
-msgid "declaration of `%#D' shadows a parameter"
-msgstr "deklaration av \"%s\" döljer en parameter"
-
-#: cp/decl.c:4492
-#, c-format
-msgid "declaration of `%s' shadows a member of `this'"
+#: cp/decl.c:1880
+msgid "%J'%D': visibility attribute ignored because it"
msgstr ""
-#: cp/decl.c:4889
-#, fuzzy
-msgid "`%#D' hides constructor for `%#T'"
-msgstr "destruerare behövs för \"%#D\""
-
-#: cp/decl.c:4904
+#: cp/decl.c:1882
#, fuzzy
-msgid "`%#D' conflicts with previous using declaration `%#D'"
+msgid "%Jconflicts with previous declaration here"
msgstr "sektion \"%s\" står i konflikt med tidigare deklaration"
-#: cp/decl.c:4916
-#, fuzzy
-msgid "previous non-function declaration `%#D'"
-msgstr "tidigare deklaration av \"%s\""
-
-#: cp/decl.c:4917
-#, fuzzy
-msgid "conflicts with function declaration `%#D'"
-msgstr "motstridande deklarationer av \"%s\""
-
-#: cp/decl.c:5007
+#: cp/decl.c:1976
#, fuzzy
msgid "implicit declaration of function `%#D'"
msgstr "implicit deklaration av funktion \"%s\""
-#: cp/decl.c:5167
+#: cp/decl.c:2124
#, c-format
msgid "label `%s' referenced outside of any function"
msgstr ""
-#: cp/decl.c:5270 cp/decl.c:5294 cp/decl.c:5387
+#: cp/decl.c:2221 cp/decl.c:2245 cp/decl.c:2333
#, fuzzy
msgid "jump to label `%D'"
msgstr "hopp till case-etikett"
-#: cp/decl.c:5272 cp/decl.c:5296
+#: cp/decl.c:2223 cp/decl.c:2247
msgid "jump to case label"
msgstr "hopp till case-etikett"
-#: cp/decl.c:5280
+#: cp/decl.c:2226 cp/decl.c:2250
+#, fuzzy
+msgid "%H from here"
+msgstr " från här"
+
+#: cp/decl.c:2231
#, fuzzy
msgid " crosses initialization of `%#D'"
msgstr "omdefiniering av \"%s\""
-#: cp/decl.c:5283 cp/decl.c:5403
+#: cp/decl.c:2234 cp/decl.c:2349
msgid " enters scope of non-POD `%#D'"
msgstr ""
-#: cp/decl.c:5303 cp/decl.c:5407
+#: cp/decl.c:2254 cp/decl.c:2353
msgid " enters try block"
msgstr " går in i try-block"
-#. Can't skip init of __exception_info.
-#: cp/decl.c:5305 cp/decl.c:5399 cp/decl.c:5409
+#: cp/decl.c:2256 cp/decl.c:2355
msgid " enters catch block"
msgstr " går in i catch-block"
-#: cp/decl.c:5388
+#: cp/decl.c:2334
msgid " from here"
msgstr " från här"
-#: cp/decl.c:5401
+#. Can't skip init of __exception_info.
+#: cp/decl.c:2345
+#, fuzzy
+msgid "%J enters catch block"
+msgstr " går in i catch-block"
+
+#: cp/decl.c:2347
#, fuzzy
msgid " skips initialization of `%#D'"
msgstr "%s: Vid instansiering av \"%s\":\n"
-#: cp/decl.c:5437
+#: cp/decl.c:2381
msgid "label named wchar_t"
msgstr ""
-#: cp/decl.c:5440
+#: cp/decl.c:2384
#, fuzzy
msgid "duplicate label `%D'"
msgstr "upprepning av medlem \"%s\""
-#: cp/decl.c:5525
-#, fuzzy, c-format
-msgid "case label `%E' not within a switch statement"
-msgstr "case-etikett är inte i en switch-sats"
-
-#. Definition isn't the kind we were looking for.
-#: cp/decl.c:5704 cp/decl.c:5723
-msgid "`%#D' redeclared as %C"
-msgstr ""
-
-#. This happens for A::B where B is a template, and there are no
-#. template arguments.
-#: cp/decl.c:5811 cp/typeck.c:2069 cp/typeck.c:2229
-#, fuzzy
-msgid "invalid use of `%D'"
-msgstr "ogiltigt användande av \"restrict\""
-
-#: cp/decl.c:5852
-#, fuzzy
-msgid "`%D::%D' is not a template"
-msgstr "användning ab `%s' i mall"
-
-#: cp/decl.c:5869
-msgid "`%D' undeclared in namespace `%D'"
-msgstr ""
-
-#: cp/decl.c:6002
+#: cp/decl.c:2612 cp/parser.c:3178
msgid "`%D' used without template parameters"
msgstr ""
-#: cp/decl.c:6013 cp/decl.c:6029 cp/decl.c:6139
+#: cp/decl.c:2622 cp/decl.c:2638 cp/decl.c:2726
msgid "no class template named `%#T' in `%#T'"
msgstr ""
-#: cp/decl.c:6055 cp/decl.c:6065 cp/decl.c:6100
+#: cp/decl.c:2659 cp/decl.c:2669 cp/decl.c:2689
msgid "no type named `%#T' in `%#T'"
msgstr ""
-#: cp/decl.c:6329
-msgid "lookup of `%D' finds `%#D'"
-msgstr ""
-
-#: cp/decl.c:6331
-msgid " instead of `%D' from dependent base class"
-msgstr ""
-
-#: cp/decl.c:6333
-msgid " (use `typename %T::%D' if that's what you meant)"
-msgstr ""
-
-#: cp/decl.c:6364
-msgid "name lookup of `%D' changed"
-msgstr ""
-
-#: cp/decl.c:6366
-msgid " matches this `%D' under ISO standard rules"
-msgstr ""
-
-#: cp/decl.c:6368
-msgid " matches this `%D' under old rules"
-msgstr ""
-
-#: cp/decl.c:6382 cp/decl.c:6389
-msgid "name lookup of `%D' changed for new ISO `for' scoping"
-msgstr ""
-
-#: cp/decl.c:6384
-msgid " cannot use obsolete binding at `%D' because it has a destructor"
-msgstr ""
-
-#: cp/decl.c:6391
-msgid " using obsolete binding at `%D'"
-msgstr ""
-
-#: cp/decl.c:6609
-msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
-msgstr ""
-
-#: cp/decl.c:7432
+#: cp/decl.c:3416
#, fuzzy
-msgid "an anonymous union cannot have function members"
+msgid "%Jan anonymous union cannot have function members"
msgstr "anonym union deklarerad i parameterlista"
-#: cp/decl.c:7449
+#: cp/decl.c:3434
msgid "member %#D' with constructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7452
+#: cp/decl.c:3437
msgid "member %#D' with destructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7455
+#: cp/decl.c:3440
msgid "member %#D' with copy assignment operator not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:7493
+#: cp/decl.c:3480
#, fuzzy
msgid "redeclaration of C++ built-in type `%T'"
msgstr "omdeklaration av \"%s\""
-#: cp/decl.c:7529
+#: cp/decl.c:3518
msgid "multiple types in one declaration"
msgstr ""
-#: cp/decl.c:7556
+#: cp/decl.c:3544
#, fuzzy
msgid "missing type-name in typedef-declaration"
msgstr "oanvändbart nyckelord eller typnamn i tom deklaration"
-#: cp/decl.c:7563
+#: cp/decl.c:3552
msgid "ISO C++ prohibits anonymous structs"
msgstr ""
-#: cp/decl.c:7570
+#: cp/decl.c:3559
#, fuzzy
msgid "`%D' can only be specified for functions"
msgstr "argumentformat angivet för icke-funktion \"%s\""
-#: cp/decl.c:7572
+#: cp/decl.c:3561
msgid "`%D' can only be specified inside a class"
msgstr ""
-#: cp/decl.c:7574
+#: cp/decl.c:3563
msgid "`%D' can only be specified for constructors"
msgstr ""
-#: cp/decl.c:7577
+#: cp/decl.c:3566
#, fuzzy
msgid "`%D' can only be specified for objects and functions"
msgstr "argumentformat angivet för icke-funktion \"%s\""
-#: cp/decl.c:7719 cp/decl2.c:936
+#: cp/decl.c:3708 cp/decl2.c:861
#, fuzzy
msgid "typedef `%D' is initialized (use __typeof__ instead)"
msgstr "typedef \"%s\" är initierad"
-#: cp/decl.c:7724
+#: cp/decl.c:3713
#, fuzzy
msgid "function `%#D' is initialized like a variable"
msgstr "funktion \"%s\" är initierad som en variabel"
-#: cp/decl.c:7736
+#: cp/decl.c:3725
#, fuzzy
msgid "declaration of `%#D' has `extern' and is initialized"
msgstr "deklaration av \"%s\" är \"extern\" och initierad"
-#: cp/decl.c:7770
+#: cp/decl.c:3758
msgid "`%#D' is not a static member of `%#T'"
msgstr ""
-#: cp/decl.c:7775
+#: cp/decl.c:3764
#, fuzzy
msgid "ISO C++ does not permit `%T::%D' to be defined as `%T::%D'"
msgstr "ISO C++ tillåter inte \"%s\" i #if"
-#: cp/decl.c:7786
+#: cp/decl.c:3775
#, fuzzy
msgid "duplicate initialization of %D"
msgstr "initiering"
-#: cp/decl.c:7815
+#: cp/decl.c:3806
#, fuzzy
msgid "declaration of `%#D' outside of class is not definition"
msgstr "deklaration av \"%s\" som ett fält med funktioner"
-#: cp/decl.c:7865
+#: cp/decl.c:3857
#, fuzzy
msgid "variable `%#D' has initializer but incomplete type"
msgstr "variabel \"%s\" har initierare men är av inkomplett typ"
-#: cp/decl.c:7873 cp/decl.c:8432
+#: cp/decl.c:3865 cp/decl.c:4426
#, fuzzy
msgid "elements of array `%#D' have incomplete type"
msgstr "elementen i fält \"%s\" har en ofullständig typ"
-#: cp/decl.c:7889
+#: cp/decl.c:3881
#, fuzzy
msgid "aggregate `%#D' has incomplete type and cannot be defined"
msgstr "parameter \"%s\" har en inkomplett typ"
-#: cp/decl.c:7931
+#: cp/decl.c:3923
#, fuzzy
msgid "`%D' declared as reference but not initialized"
msgstr "\"%s\" omdeklarerad som en annan sorts symbol"
-#: cp/decl.c:7940
+#: cp/decl.c:3929
#, fuzzy
msgid "ISO C++ forbids use of initializer list to initialize reference `%D'"
msgstr "ISO C++ förbjuder initiering av new-uttryck med \"=\""
-#: cp/decl.c:7970
+#: cp/decl.c:3957
#, fuzzy
msgid "cannot initialize `%T' from `%T'"
msgstr "kan inte initiera friend-funktion \"%s\""
-#: cp/decl.c:8004
+#: cp/decl.c:3989
#, fuzzy
msgid "initializer fails to determine size of `%D'"
msgstr "initierare misslyckas med att bestämma storlek på \"%s\""
-#: cp/decl.c:8009
+#: cp/decl.c:3994
#, fuzzy
msgid "array size missing in `%D'"
msgstr "fältstorlek saknas i \"%s\""
-#: cp/decl.c:8021
+#: cp/decl.c:4006
#, fuzzy
msgid "zero-size array `%D'"
msgstr "ISO C förbjuder fält \"%s\" med storlek noll"
@@ -15160,339 +14395,329 @@ msgstr "ISO C förbjuder fält \"%s\" med storlek noll"
#. An automatic variable with an incomplete type: that is an error.
#. Don't talk about array types here, since we took care of that
#. message in grokdeclarator.
-#: cp/decl.c:8059
+#: cp/decl.c:4043
#, fuzzy
msgid "storage size of `%D' isn't known"
msgstr "lagringsstorlek på \"%s\" är okänd"
-#: cp/decl.c:8081
+#: cp/decl.c:4065
#, fuzzy
msgid "storage size of `%D' isn't constant"
msgstr "lagringsstorlek på \"%s\" är inte konstant"
-#: cp/decl.c:8137
+#: cp/decl.c:4120
msgid "sorry: semantics of inline function static data `%#D' are wrong (you'll wind up with multiple copies)"
msgstr ""
-#: cp/decl.c:8138
-msgid " you can work around this by removing the initializer"
+#: cp/decl.c:4121
+msgid "%J you can work around this by removing the initializer"
msgstr ""
-#: cp/decl.c:8164
+#: cp/decl.c:4147
#, fuzzy
msgid "uninitialized const `%D'"
msgstr "kan inte initiera friend-funktion \"%s\""
-#: cp/decl.c:8249
+#: cp/decl.c:4226
#, fuzzy
msgid "brace-enclosed initializer used to initialize `%T'"
msgstr "kan inte initiera friend-funktion \"%s\""
-#: cp/decl.c:8313
+#: cp/decl.c:4290
msgid "initializer for `%T' must be brace-enclosed"
msgstr ""
-#: cp/decl.c:8328
+#: cp/decl.c:4307
#, fuzzy
msgid "ISO C++ does not allow designated initializers"
msgstr "ISO C89 förbjuder konstruktor-uttryck"
-#: cp/decl.c:8332
+#: cp/decl.c:4311
#, fuzzy
msgid "`%T' has no non-static data member named `%D'"
msgstr "%s har ingen medlem med namn \"%s\""
-#: cp/decl.c:8389
+#: cp/decl.c:4359
+msgid "name `%D' used in a GNU-style designated initializer for an array"
+msgstr ""
+
+#: cp/decl.c:4382
#, fuzzy
msgid "too many initializers for `%T'"
msgstr "kan inte initiera friend-funktion \"%s\""
-#: cp/decl.c:8426
+#: cp/decl.c:4420
#, fuzzy
msgid "variable-sized object `%D' may not be initialized"
msgstr "objekt med variabel storlek kan inte initieras"
-#: cp/decl.c:8437
+#: cp/decl.c:4431
#, fuzzy
msgid "`%D' has incomplete type"
msgstr "\"%s\" har en inkomplett typ"
-#: cp/decl.c:8486
+#: cp/decl.c:4486
msgid "`%D' must be initialized by constructor, not by `{...}'"
msgstr ""
-#: cp/decl.c:8527
+#: cp/decl.c:4530
msgid "structure `%D' with uninitialized const members"
msgstr ""
-#: cp/decl.c:8529
+#: cp/decl.c:4532
msgid "structure `%D' with uninitialized reference members"
msgstr ""
-#: cp/decl.c:8770
+#: cp/decl.c:4713
msgid "assignment (not initialization) in declaration"
msgstr "tilldelning (inte initieraing) i deklaration"
-#: cp/decl.c:8785
+#: cp/decl.c:4730
#, fuzzy
msgid "cannot initialize `%D' to namespace `%D'"
msgstr "kan inte initiera friend-funktion \"%s\""
-#: cp/decl.c:8836
+#: cp/decl.c:4780
#, fuzzy
msgid "shadowing previous type declaration of `%#D'"
msgstr "tidigare deklaration av \"%s\""
-#: cp/decl.c:8883
+#: cp/decl.c:4816
msgid "`%D' cannot be thread-local because it has non-POD type `%T'"
msgstr ""
-#: cp/decl.c:8898
+#: cp/decl.c:4831
msgid "`%D' is thread-local and so cannot be dynamically initialized"
msgstr ""
-#: cp/decl.c:9298 cp/init.c:562
-#, fuzzy
-msgid "multiple initializations given for `%D'"
-msgstr "multiple deklaration av metod \"%s\""
-
-#: cp/decl.c:9390
+#: cp/decl.c:5313
msgid "invalid catch parameter"
msgstr ""
-#: cp/decl.c:9508
+#: cp/decl.c:5427
#, fuzzy
msgid "destructor for alien class `%T' cannot be a member"
msgstr "destruerare kan inte vara en statisk medlemsfunktion"
-#: cp/decl.c:9511
+#: cp/decl.c:5430
#, fuzzy
msgid "constructor for alien class `%T' cannot be a member"
msgstr "konstruerare kan inte vara en statisk medlemsfunktion\""
-#: cp/decl.c:9530
+#: cp/decl.c:5452
msgid "`%D' declared as a `virtual' %s"
msgstr ""
-#: cp/decl.c:9532
+#: cp/decl.c:5454
#, fuzzy
msgid "`%D' declared as an `inline' %s"
msgstr "variabel \"%s\" deklarerad \"inline\""
-#: cp/decl.c:9534
+#: cp/decl.c:5456
msgid "`const' and `volatile' function specifiers on `%D' invalid in %s declaration"
msgstr ""
-#: cp/decl.c:9537
+#: cp/decl.c:5459
#, fuzzy
msgid "`%D' declared as a friend"
msgstr "fält \"%s\" deklarerad som en funktion"
-#: cp/decl.c:9543
+#: cp/decl.c:5465
#, fuzzy
msgid "`%D' declared with an exception specification"
msgstr "\"%s\" är deklarerad som en funktion som returnerar en funktion"
-#: cp/decl.c:9618
+#: cp/decl.c:5544
msgid "cannot declare `::main' to be a template"
msgstr "kan inte deklarera \"::main\" som en mall"
-#: cp/decl.c:9620
+#: cp/decl.c:5546
msgid "cannot declare `::main' to be inline"
msgstr ""
-#: cp/decl.c:9622
+#: cp/decl.c:5548
msgid "cannot declare `::main' to be static"
msgstr "kan inte deklarera \"::main\" som static"
-#: cp/decl.c:9625
+#: cp/decl.c:5551
msgid "`main' must return `int'"
msgstr "\"main\" måste returnera \"int\""
-#: cp/decl.c:9653
+#: cp/decl.c:5579
msgid "non-local function `%#D' uses anonymous type"
msgstr ""
-#: cp/decl.c:9656
+#: cp/decl.c:5582
msgid "`%#D' does not refer to the unqualified type, so it is not used for linkage"
msgstr ""
-#: cp/decl.c:9662
+#: cp/decl.c:5588
msgid "non-local function `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:9691
+#: cp/decl.c:5612
msgid "%smember function `%D' cannot have `%T' method qualifier"
msgstr ""
-#: cp/decl.c:9715
+#: cp/decl.c:5636
#, fuzzy
msgid "defining explicit specialization `%D' in friend declaration"
msgstr "tilldelning (inte initieraing) i deklaration"
#. Something like `template <class T> friend void f<T>()'.
-#: cp/decl.c:9725
+#: cp/decl.c:5646
msgid "invalid use of template-id `%D' in declaration of primary template"
msgstr ""
-#: cp/decl.c:9753
+#: cp/decl.c:5673
msgid "default arguments are not allowed in declaration of friend template specialization `%D'"
msgstr ""
-#: cp/decl.c:9760
+#: cp/decl.c:5680
msgid "`inline' is not allowed in declaration of friend template specialization `%D'"
msgstr ""
-#: cp/decl.c:9822
+#: cp/decl.c:5741
#, fuzzy
msgid "definition of implicitly-declared `%D'"
msgstr "funktionsdefinition deklarerad som \"auto\""
-#: cp/decl.c:9834 cp/decl2.c:785
+#: cp/decl.c:5759 cp/decl2.c:744
msgid "no `%#D' member function declared in class `%T'"
msgstr ""
-#: cp/decl.c:9967
+#: cp/decl.c:5893
msgid "non-local variable `%#D' uses local type `%T'"
msgstr ""
-#: cp/decl.c:10064
+#: cp/decl.c:6008
msgid "invalid in-class initialization of static data member of non-integral type `%T'"
msgstr ""
-#: cp/decl.c:10073
+#: cp/decl.c:6017
#, fuzzy
msgid "ISO C++ forbids in-class initialization of non-const static member `%D'"
msgstr "ISO C++ förbjuder initiering av new-uttryck med \"=\""
-#: cp/decl.c:10076
+#: cp/decl.c:6020
#, fuzzy
msgid "ISO C++ forbids initialization of member constant `%D' of non-integral type `%T'"
msgstr "ISO C++ förbjuder initiering av new-uttryck med \"=\""
-#: cp/decl.c:10126
+#: cp/decl.c:6039
#, fuzzy
-msgid "size of array `%D' has non-integer type"
+msgid "size of array `%D' has non-integral type `%T'"
msgstr "storlek på fält \"%s\" är inte av heltalstyp"
-#: cp/decl.c:10128
+#: cp/decl.c:6041
#, fuzzy
-msgid "size of array has non-integer type"
+msgid "size of array has non-integral type `%T'"
msgstr "storlek på fält \"%s\" är inte av heltalstyp"
-#: cp/decl.c:10148
+#: cp/decl.c:6077
#, fuzzy
msgid "size of array `%D' is negative"
msgstr "storlek på fält \"%s\" är negativt"
-#: cp/decl.c:10150
+#: cp/decl.c:6079
#, fuzzy
msgid "size of array is negative"
msgstr "storlek på fält \"%s\" är negativt"
-#: cp/decl.c:10159
+#: cp/decl.c:6087
#, fuzzy
msgid "ISO C++ forbids zero-size array `%D'"
msgstr "ISO C förbjuder fält \"%s\" med storlek noll"
-#: cp/decl.c:10161
+#: cp/decl.c:6089
#, fuzzy
msgid "ISO C++ forbids zero-size array"
msgstr "ISO C förbjuder fält \"%s\" med storlek noll"
-#: cp/decl.c:10168
+#: cp/decl.c:6096
#, fuzzy
msgid "size of array `%D' is not an integral constant-expression"
msgstr "storlek på fält \"%s\" är inte av heltalstyp"
-#: cp/decl.c:10171
+#: cp/decl.c:6099
#, fuzzy
msgid "size of array is not an integral constant-expression"
msgstr "storlek på fält \"%s\" är inte av heltalstyp"
-#: cp/decl.c:10189
+#: cp/decl.c:6104
#, fuzzy
msgid "ISO C++ forbids variable-size array `%D'"
msgstr "ISO C89 förbjuder fält \"%s\" med variabel storlek"
-#: cp/decl.c:10192
+#: cp/decl.c:6106
#, fuzzy
msgid "ISO C++ forbids variable-size array"
msgstr "ISO C89 förbjuder fält \"%s\" med variabel storlek"
-#: cp/decl.c:10203
+#: cp/decl.c:6128
msgid "overflow in array dimension"
msgstr ""
-#: cp/decl.c:10262
+#: cp/decl.c:6222
#, fuzzy
msgid "declaration of `%D' as %s"
msgstr "omdeklaration av \"%s\""
-#: cp/decl.c:10264
+#: cp/decl.c:6224
#, fuzzy, c-format
msgid "creating %s"
msgstr "Skapar %s.\n"
-#: cp/decl.c:10276
+#: cp/decl.c:6236
msgid "declaration of `%D' as multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:10279
+#: cp/decl.c:6239
msgid "multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:10308
+#: cp/decl.c:6267
#, fuzzy
msgid "return type specification for constructor invalid"
msgstr "funktionskroppen för konstrueraren saknas"
-#: cp/decl.c:10315
+#: cp/decl.c:6274
msgid "return type specification for destructor invalid"
msgstr ""
-#: cp/decl.c:10321
+#: cp/decl.c:6280
#, fuzzy
msgid "operator `%T' declared to return `%T'"
msgstr "parameter \"%s\" deklarerad som void"
-#: cp/decl.c:10323
+#: cp/decl.c:6282
#, fuzzy
msgid "return type specified for `operator %T'"
msgstr "lagringsklass angiven för parameter \"%s\""
-#: cp/decl.c:10491
+#: cp/decl.c:6425
msgid "destructors must be member functions"
msgstr "destruerare måste vara medlemsfunktioner"
-#: cp/decl.c:10510
+#: cp/decl.c:6444
msgid "destructor `%T' must match class name `%T'"
msgstr ""
-#: cp/decl.c:10539
-msgid "variable declaration is not allowed here"
-msgstr ""
-
-#: cp/decl.c:10566
-#, fuzzy
-msgid "invalid declarator"
-msgstr "ogiltig #indent"
-
-#: cp/decl.c:10617
+#: cp/decl.c:6507
msgid "declarator-id missing; using reserved word `%D'"
msgstr ""
-#: cp/decl.c:10674
+#: cp/decl.c:6561
msgid "type `%T' is not derived from type `%T'"
msgstr ""
#. Parse error puts this typespec where
#. a declarator should go.
-#: cp/decl.c:10726
+#: cp/decl.c:6624
msgid "`%T' specified as declarator-id"
msgstr ""
-#: cp/decl.c:10728
+#: cp/decl.c:6626
msgid " perhaps you want `%T' for a constructor"
msgstr ""
@@ -15500,320 +14725,319 @@ msgstr ""
#. decl-specifier like in
#. std::allocator alloc;
#. Handle that gracefully.
-#: cp/decl.c:10750
+#: cp/decl.c:6648
#, fuzzy, c-format
msgid "invalid use of template-name '%E' in a declarator"
msgstr "ogiltig användning av void-uttryck"
-#: cp/decl.c:10770
+#: cp/decl.c:6668
#, fuzzy
msgid "declaration of `%D' as non-function"
msgstr "deklaration av \"%s\" som ett fält med funktioner"
-#: cp/decl.c:10847
+#: cp/decl.c:6745
msgid "`bool' is now a keyword"
msgstr "\"bool\" är numera ett nyckelord"
-#: cp/decl.c:10849
+#: cp/decl.c:6747
msgid "extraneous `%T' ignored"
msgstr ""
-#: cp/decl.c:10865 cp/decl.c:10910
+#: cp/decl.c:6763 cp/decl.c:6807
#, fuzzy
msgid "multiple declarations `%T' and `%T'"
msgstr "multiple deklaration av metod \"%s\""
-#: cp/decl.c:10878
+#: cp/decl.c:6776
msgid "ISO C++ does not support `long long'"
msgstr "ISO C++ stödjer inte \"long long\""
-#: cp/decl.c:10983 cp/decl.c:10986
+#: cp/decl.c:6880 cp/decl.c:6883
#, fuzzy, c-format
msgid "ISO C++ forbids declaration of `%s' with no type"
msgstr "ISO C förbjuder medlemsdeklarationer utan medlemmar"
-#. The implicit typename extension is deprecated and will be
-#. removed. Warn about its use now.
-#: cp/decl.c:10996
-msgid "`%T' is implicitly a typename"
-msgstr ""
-
-#: cp/decl.c:11032
+#: cp/decl.c:6914
#, c-format
msgid "short, signed or unsigned invalid for `%s'"
msgstr "short, signed eller unsigned är ogiltigt för \"%s\""
-#: cp/decl.c:11037
+#: cp/decl.c:6919
#, c-format
msgid "long and short specified together for `%s'"
msgstr "både long och short angivet för \"%s\""
-#: cp/decl.c:11048
+#: cp/decl.c:6930
#, c-format
msgid "signed and unsigned given together for `%s'"
msgstr "både signed och unsigned angivet för \"%s\""
-#: cp/decl.c:11157
+#: cp/decl.c:7039
msgid "qualifiers are not allowed on declaration of `operator %T'"
msgstr ""
-#: cp/decl.c:11179
+#: cp/decl.c:7061
msgid "member `%D' cannot be declared both virtual and static"
msgstr ""
-#: cp/decl.c:11188
+#: cp/decl.c:7070
#, fuzzy
msgid "`%T::%D' is not a valid declarator"
msgstr "\"%s\" är inte i början av deklarationen"
-#: cp/decl.c:11200
+#: cp/decl.c:7082
msgid "storage class specifiers invalid in parameter declarations"
msgstr ""
-#: cp/decl.c:11204
+#: cp/decl.c:7086
msgid "typedef declaration invalid in parameter declaration"
msgstr ""
-#: cp/decl.c:11217
+#: cp/decl.c:7099
msgid "virtual outside class declaration"
msgstr ""
-#: cp/decl.c:11278
+#: cp/decl.c:7158
#, c-format
msgid "storage class specified for %s `%s'"
msgstr ""
-#: cp/decl.c:11325
+#: cp/decl.c:7193
+#, c-format
+msgid "top-level declaration of `%s' specifies `auto'"
+msgstr "toppnivådeklaration av \"%s\" anger \"auto\""
+
+#: cp/decl.c:7205
msgid "storage class specifiers invalid in friend function declarations"
msgstr ""
-#: cp/decl.c:11495
+#: cp/decl.c:7370
msgid "destructor cannot be static member function"
msgstr "destruerare kan inte vara en statisk medlemsfunktion"
-#: cp/decl.c:11498
+#: cp/decl.c:7373
#, fuzzy, c-format
msgid "destructors may not be `%s'"
msgstr "destruerare behövs för \"%#D\""
-#: cp/decl.c:11519
+#: cp/decl.c:7394
msgid "constructor cannot be static member function"
msgstr "konstruerare kan inte vara en statisk medlemsfunktion\""
-#: cp/decl.c:11522
+#: cp/decl.c:7397
msgid "constructors cannot be declared virtual"
msgstr ""
-#: cp/decl.c:11527
+#: cp/decl.c:7402
#, c-format
msgid "constructors may not be `%s'"
msgstr ""
-#: cp/decl.c:11537
+#: cp/decl.c:7412
msgid "return value type specifier for constructor ignored"
msgstr ""
-#: cp/decl.c:11556
+#: cp/decl.c:7431
#, c-format
msgid "can't initialize friend function `%s'"
msgstr "kan inte initiera friend-funktion \"%s\""
#. Cannot be both friend and virtual.
-#: cp/decl.c:11560
+#: cp/decl.c:7435
msgid "virtual functions cannot be friends"
msgstr ""
-#: cp/decl.c:11565
+#: cp/decl.c:7440
msgid "friend declaration not in class definition"
msgstr ""
-#: cp/decl.c:11567
+#: cp/decl.c:7442
#, fuzzy, c-format
msgid "can't define friend function `%s' in a local class definition"
msgstr "kan inte initiera friend-funktion \"%s\""
-#: cp/decl.c:11591
+#: cp/decl.c:7463
#, fuzzy
msgid "destructors may not have parameters"
msgstr "destruerare måste vara medlemsfunktioner"
-#: cp/decl.c:11622 cp/decl.c:11629
+#: cp/decl.c:7483 cp/decl.c:7490
#, fuzzy
msgid "cannot declare reference to `%#T'"
msgstr "kan inte deklarera referenser till referenser"
-#: cp/decl.c:11623
+#: cp/decl.c:7484
#, fuzzy
msgid "cannot declare pointer to `%#T'"
msgstr "kan inte deklarera pekare till referenser"
-#: cp/decl.c:11628
+#: cp/decl.c:7489
#, fuzzy
msgid "cannot declare pointer to `%#T' member"
msgstr "kan inte deklarera pekare till referenser"
-#: cp/decl.c:11804
+#: cp/decl.c:7627
msgid "extra qualification `%T::' on member `%s' ignored"
msgstr ""
-#: cp/decl.c:11814
+#: cp/decl.c:7639
msgid "cannot declare member function `%T::%s' within `%T'"
msgstr ""
-#: cp/decl.c:11829
+#: cp/decl.c:7654
msgid "cannot declare member `%T::%s' within `%T'"
msgstr ""
-#: cp/decl.c:11908
+#: cp/decl.c:7734
msgid "data member may not have variably modified type `%T'"
msgstr ""
-#: cp/decl.c:11910
+#: cp/decl.c:7736
msgid "parameter may not have variably modified type `%T'"
msgstr ""
#. [dcl.fct.spec] The explicit specifier shall only be used in
#. declarations of constructors within a class definition.
-#: cp/decl.c:11918
+#: cp/decl.c:7744
msgid "only declarations of constructors can be `explicit'"
msgstr ""
-#: cp/decl.c:11926
+#: cp/decl.c:7752
#, c-format
msgid "non-member `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11931
+#: cp/decl.c:7757
#, c-format
msgid "non-object member `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11937
+#: cp/decl.c:7763
#, c-format
msgid "function `%s' cannot be declared `mutable'"
msgstr "funktion \"%s\" kan inte deklareras som \"mutable\""
-#: cp/decl.c:11942
+#: cp/decl.c:7768
#, c-format
msgid "static `%s' cannot be declared `mutable'"
msgstr ""
-#: cp/decl.c:11947
+#: cp/decl.c:7773
#, c-format
msgid "const `%s' cannot be declared `mutable'"
msgstr "const \"%s\" kan inte deklareras \"mutable\""
-#: cp/decl.c:11960
+#: cp/decl.c:7786
#, fuzzy
msgid "template-id `%D' used as a declarator"
msgstr "deklaration av \"%s\" döljer global deklaration"
-#: cp/decl.c:11981
+#: cp/decl.c:7807
msgid "ISO C++ forbids nested type `%D' with same name as enclosing class"
msgstr ""
-#: cp/decl.c:12030
-msgid "typedef name may not be class-qualified"
+#: cp/decl.c:7815
+msgid "%Jtypedef name may not be a nested-name-specifier"
msgstr ""
-#: cp/decl.c:12038
+#: cp/decl.c:7861
#, fuzzy
-msgid "invalid type qualifier for non-member function type"
+msgid "%Jinvalid type qualifier for non-member function type"
msgstr "namn saknas på medlemsfunktion"
-#: cp/decl.c:12101
+#: cp/decl.c:7925
#, fuzzy
msgid "type qualifiers specified for friend class declaration"
msgstr "två typer angivna i en tom deklaration"
-#: cp/decl.c:12106
+#: cp/decl.c:7930
msgid "`inline' specified for friend class declaration"
msgstr ""
-#: cp/decl.c:12114
+#: cp/decl.c:7938
#, fuzzy
msgid "template parameters cannot be friends"
msgstr "typen på parameter \"%s\" är inte deklarerad"
-#: cp/decl.c:12116
+#: cp/decl.c:7940
msgid "friend declaration requires class-key, i.e. `friend class %T::%D'"
msgstr ""
-#: cp/decl.c:12120
+#: cp/decl.c:7944
msgid "friend declaration requires class-key, i.e. `friend %#T'"
msgstr ""
-#: cp/decl.c:12134
+#: cp/decl.c:7957
msgid "trying to make class `%T' a friend of global scope"
msgstr ""
-#: cp/decl.c:12145
+#: cp/decl.c:7968
#, fuzzy
msgid "invalid qualifiers on non-member function type"
msgstr "ogiltigt format på versionsnummer"
-#: cp/decl.c:12164
+#: cp/decl.c:7987
#, fuzzy
msgid "abstract declarator `%T' used as declaration"
msgstr "deklaration av \"%s\" döljer global deklaration"
-#: cp/decl.c:12176
+#: cp/decl.c:7999
msgid "unnamed variable or field declared void"
msgstr ""
-#: cp/decl.c:12185
+#: cp/decl.c:8008
msgid "variable or field declared void"
msgstr ""
-#: cp/decl.c:12195
+#: cp/decl.c:8018
msgid "cannot use `::' in parameter declaration"
msgstr ""
#. Something like struct S { int N::j; };
-#: cp/decl.c:12234
+#: cp/decl.c:8063
#, fuzzy
msgid "invalid use of `::'"
msgstr "ogiltigt användande av \"restrict\""
-#: cp/decl.c:12246
+#: cp/decl.c:8075
#, fuzzy
msgid "function `%D' cannot be declared friend"
msgstr "funktion \"%s\" kan inte deklareras som \"mutable\""
-#: cp/decl.c:12258
+#: cp/decl.c:8087
msgid "can't make `%D' into a method -- not in a class"
msgstr ""
-#: cp/decl.c:12267
+#: cp/decl.c:8096
#, fuzzy
msgid "function `%D' declared virtual inside a union"
msgstr "fält \"%s\" deklarerad som en funktion"
-#: cp/decl.c:12279
+#: cp/decl.c:8108
msgid "`%D' cannot be declared virtual, since it is always static"
msgstr ""
-#: cp/decl.c:12355
+#: cp/decl.c:8185
#, fuzzy
msgid "field `%D' has incomplete type"
msgstr "fält \"%s\" har en inkomplett typ"
-#: cp/decl.c:12357
+#: cp/decl.c:8187
#, fuzzy
msgid "name `%T' has incomplete type"
msgstr "parameter \"%s\" har en inkomplett typ"
-#: cp/decl.c:12366
+#: cp/decl.c:8196
#, fuzzy
msgid " in instantiation of template `%T'"
msgstr "%s: Vid instansiering av \"%s\":\n"
-#: cp/decl.c:12376
+#: cp/decl.c:8206
#, c-format
msgid "`%s' is neither function nor member function; cannot be declared friend"
msgstr ""
-#: cp/decl.c:12387
+#: cp/decl.c:8217
msgid "member functions are implicitly friends of their class"
msgstr ""
@@ -15829,105 +15053,100 @@ msgstr ""
#. the rest of the compiler does not correctly
#. handle the initialization unless the member is
#. static so we make it static below.
-#: cp/decl.c:12434
+#: cp/decl.c:8258
#, fuzzy
msgid "ISO C++ forbids initialization of member `%D'"
msgstr "ISO C++ förbjuder initiering av new-uttryck med \"=\""
-#: cp/decl.c:12436
+#: cp/decl.c:8260
msgid "making `%D' static"
msgstr ""
-#: cp/decl.c:12460
+#: cp/decl.c:8283
msgid "ISO C++ forbids static data member `%D' with same name as enclosing class"
msgstr ""
-#: cp/decl.c:12501
+#: cp/decl.c:8323
#, c-format
msgid "storage class `auto' invalid for function `%s'"
msgstr ""
-#: cp/decl.c:12503
+#: cp/decl.c:8325
#, c-format
msgid "storage class `register' invalid for function `%s'"
msgstr "lagringsklass \"register\" ogiltig för funktion \"%s\""
-#: cp/decl.c:12505
+#: cp/decl.c:8327
#, fuzzy, c-format
msgid "storage class `__thread' invalid for function `%s'"
msgstr "lagringsklass \"register\" ogiltig för funktion \"%s\""
-#: cp/decl.c:12516
+#: cp/decl.c:8338
#, c-format
msgid "storage class `static' invalid for function `%s' declared out of global scope"
msgstr ""
-#: cp/decl.c:12518
+#: cp/decl.c:8340
#, c-format
msgid "storage class `inline' invalid for function `%s' declared out of global scope"
msgstr ""
-#: cp/decl.c:12525
+#: cp/decl.c:8347
#, c-format
msgid "virtual non-class function `%s'"
msgstr ""
-#: cp/decl.c:12554
+#: cp/decl.c:8377
#, fuzzy
msgid "cannot declare member function `%D' to have static linkage"
msgstr "kan inte deklarera \"::main\" som static"
#. FIXME need arm citation
-#: cp/decl.c:12560
+#: cp/decl.c:8383
msgid "cannot declare static function inside another function"
msgstr "kan inte deklarera en statisk funktion i en annan funktion"
-#: cp/decl.c:12588
+#: cp/decl.c:8411
msgid "`static' may not be used when defining (as opposed to declaring) a static data member"
msgstr ""
-#: cp/decl.c:12594
+#: cp/decl.c:8417
#, fuzzy
msgid "static member `%D' declared `register'"
msgstr "variabel \"%s\" deklarerad \"inline\""
-#: cp/decl.c:12599
+#: cp/decl.c:8422
msgid "cannot explicitly declare member `%#D' to have extern linkage"
msgstr ""
-#: cp/decl.c:12774
+#: cp/decl.c:8564
#, fuzzy
msgid "default argument for `%#D' has type `%T'"
msgstr "första argumentet till \"%s\" skall vara \"int\""
-#: cp/decl.c:12777
+#: cp/decl.c:8567
msgid "default argument for parameter of type `%T' has type `%T'"
msgstr ""
-#: cp/decl.c:12794
+#: cp/decl.c:8584
msgid "default argument `%E' uses local variable `%D'"
msgstr ""
-#: cp/decl.c:12839
+#: cp/decl.c:8628
#, fuzzy, c-format
msgid "invalid string constant `%E'"
msgstr "ogiltig lagringsklass för funktion \"%s\""
-#: cp/decl.c:12841
+#: cp/decl.c:8630
msgid "invalid integer constant in parameter list, did you forget to give parameter name?"
msgstr ""
-#: cp/decl.c:12879
+#: cp/decl.c:8668
#, fuzzy
msgid "parameter `%D' invalidly declared method type"
msgstr "parameter \"%s\" deklarerad som void"
-#: cp/decl.c:12885
-#, fuzzy
-msgid "parameter `%D' invalidly declared offset type"
-msgstr "parameter \"%s\" deklarerad som void"
-
-#: cp/decl.c:12909
+#: cp/decl.c:8692
msgid "parameter `%D' includes %s to array of unknown bound `%T'"
msgstr ""
@@ -15946,555 +15165,378 @@ msgstr ""
#. or implicitly defined), there's no need to worry about their
#. existence. Theoretically, they should never even be
#. instantiated, but that's hard to forestall.
-#: cp/decl.c:13071
+#: cp/decl.c:8851
msgid "invalid constructor; you probably meant `%T (const %T&)'"
msgstr ""
-#: cp/decl.c:13222
+#: cp/decl.c:8991
#, fuzzy
msgid "`%D' must be a nonstatic member function"
msgstr "\"%s\" är normalt en icke-statisk function"
-#: cp/decl.c:13228
+#: cp/decl.c:8997
msgid "`%D' must be either a non-static member function or a non-member function"
msgstr ""
-#: cp/decl.c:13245
+#: cp/decl.c:9014
msgid "`%D' must have an argument of class or enumerated type"
msgstr ""
-#: cp/decl.c:13277
+#: cp/decl.c:9049
#, c-format
msgid "conversion to %s%s will never use a type conversion operator"
msgstr ""
#. 13.4.0.3
-#: cp/decl.c:13284
+#: cp/decl.c:9056
msgid "ISO C++ prohibits overloading operator ?:"
msgstr ""
-#: cp/decl.c:13334
+#: cp/decl.c:9106
msgid "postfix `%D' must take `int' as its argument"
msgstr ""
-#: cp/decl.c:13338
+#: cp/decl.c:9110
msgid "postfix `%D' must take `int' as its second argument"
msgstr ""
-#: cp/decl.c:13345
+#: cp/decl.c:9117
#, fuzzy
msgid "`%D' must take either zero or one argument"
msgstr "\"%s\" tar bara noll eller två argument"
-#: cp/decl.c:13347
+#: cp/decl.c:9119
#, fuzzy
msgid "`%D' must take either one or two arguments"
msgstr "\"%s\" tar bara noll eller två argument"
-#: cp/decl.c:13368
+#: cp/decl.c:9140
msgid "prefix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:13374
+#: cp/decl.c:9146
msgid "postfix `%D' should return `%T'"
msgstr ""
-#: cp/decl.c:13383
+#: cp/decl.c:9155
msgid "`%D' must take `void'"
msgstr ""
-#: cp/decl.c:13385 cp/decl.c:13393
+#: cp/decl.c:9157 cp/decl.c:9165
#, fuzzy
msgid "`%D' must take exactly one argument"
msgstr "\"%s\" tar bara noll eller två argument"
-#: cp/decl.c:13395
+#: cp/decl.c:9167
#, fuzzy
msgid "`%D' must take exactly two arguments"
msgstr "\"%s\" tar bara noll eller två argument"
-#: cp/decl.c:13403
+#: cp/decl.c:9175
msgid "user-defined `%D' always evaluates both arguments"
msgstr ""
-#: cp/decl.c:13417
+#: cp/decl.c:9189
msgid "`%D' should return by value"
msgstr ""
-#: cp/decl.c:13429 cp/decl.c:13432
+#: cp/decl.c:9201 cp/decl.c:9204
msgid "`%D' cannot have default arguments"
msgstr ""
-#: cp/decl.c:13475
+#: cp/decl.c:9264
msgid "using typedef-name `%D' after `%s'"
msgstr ""
-#: cp/decl.c:13481
+#: cp/decl.c:9270
#, fuzzy
msgid "using template type parameter `%T' after `%s'"
msgstr "flera parametrar med namn \"%s\""
-#: cp/decl.c:13542
+#: cp/decl.c:9278
#, fuzzy
-msgid "`%s %T' declares a new type at namespace scope"
-msgstr "\"%s %s\" deklarerad inuti parameterlista"
+msgid "`%T' referred to as `%s'"
+msgstr "kunde inte hitta klassen \"%s\""
-#: cp/decl.c:13545
-msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
+#: cp/decl.c:9284
+msgid "`%T' referred to as enum"
msgstr ""
-#: cp/decl.c:13663
+#. If a class template appears as elaborated type specifier
+#. without a template header such as:
+#.
+#. template <class T> class C {};
+#. void f(class C); // No template header here
+#.
+#. then the required template argument is missing.
+#: cp/decl.c:9299
+#, fuzzy
+msgid "template argument required for `%s %T'"
+msgstr "flera parametrar med namn \"%s\""
+
+#: cp/decl.c:9445
#, fuzzy
msgid "use of enum `%#D' without previous declaration"
msgstr "sektion \"%s\" står i konflikt med tidigare deklaration"
-#: cp/decl.c:13749
+#: cp/decl.c:9530
msgid "derived union `%T' invalid"
msgstr ""
-#: cp/decl.c:13795
+#: cp/decl.c:9583
msgid "base type `%T' fails to be a struct or class type"
msgstr ""
-#: cp/decl.c:13805
-#, fuzzy
-msgid "base class `%T' has incomplete type"
-msgstr "fält \"%s\" har en inkomplett typ"
-
-#: cp/decl.c:13813
+#: cp/decl.c:9591
msgid "recursive type `%T' undefined"
msgstr ""
-#: cp/decl.c:13815
+#: cp/decl.c:9593
#, fuzzy
msgid "duplicate base type `%T' invalid"
msgstr "upprepat case-värde"
-#: cp/decl.c:13926
+#: cp/decl.c:9671
+msgid "Java class '%T' cannot have multiple bases"
+msgstr ""
+
+#: cp/decl.c:9673
+msgid "Java class '%T' cannot have virtual bases"
+msgstr ""
+
+#: cp/decl.c:9713
#, fuzzy
msgid "multiple definition of `%#T'"
msgstr "omdefiniering av \"%s\""
-#: cp/decl.c:13927
+#: cp/decl.c:9714
#, fuzzy
-msgid "previous definition here"
+msgid "%Jprevious definition here"
msgstr "\"%s\" definierades tidigare här"
-#: cp/decl.c:14030
+#. DR 377
+#.
+#. IF no integral type can represent all the enumerator values, the
+#. enumeration is ill-formed.
+#: cp/decl.c:9849
msgid "no integral type can represent all of the enumerator values for `%T'"
msgstr ""
-#: cp/decl.c:14106
+#: cp/decl.c:9939
#, fuzzy
msgid "enumerator value for `%D' not integer constant"
msgstr "uppräkningsvärde för \"%s\" är inte en heltalskonstant"
-#: cp/decl.c:14126
+#: cp/decl.c:9959
#, fuzzy
msgid "overflow in enumeration values at `%D'"
msgstr "överspill i uppräkningsvärden"
-#: cp/decl.c:14195
+#: cp/decl.c:10028
#, fuzzy
msgid "return type `%#T' is incomplete"
msgstr "returtypen är en inkomplett typ"
-#: cp/decl.c:14309
-#, fuzzy
-msgid "semicolon missing after declaration of `%#T'"
-msgstr "motstridande deklarationer av \"%s\""
-
-#: cp/decl.c:14330
+#: cp/decl.c:10148
msgid "return type for `main' changed to `int'"
msgstr "returtypen för \"main\" ändrad till \"int\""
-#: cp/decl.c:14361
+#: cp/decl.c:10178
#, fuzzy
msgid "`%D' implicitly declared before its definition"
msgstr "\"%s\" deklarerad inline efter sin definition"
-#: cp/decl.c:14383 cp/typeck.c:6314
+#: cp/decl.c:10200 cp/typeck.c:6011
msgid "`operator=' should return a reference to `*this'"
msgstr ""
-#: cp/decl.c:14643
+#: cp/decl.c:10472
#, fuzzy
msgid "parameter `%D' declared void"
msgstr "parameter \"%s\" deklarerad som void"
-#: cp/decl.c:15130
+#: cp/decl.c:10938
+#, fuzzy
+msgid "invalid member function declaration"
+msgstr "dubbel deklaration av etikett \"%s\""
+
+#: cp/decl.c:10955
msgid "`%D' is already defined in class `%T'"
msgstr ""
-#: cp/decl.c:15348
+#: cp/decl.c:11168
#, fuzzy
msgid "static member function `%#D' declared with type qualifiers"
msgstr "nästlad funktion \"%s\" är deklarerad \"extern\""
-#: cp/decl2.c:153
+#: cp/decl2.c:143
#, fuzzy, c-format
msgid "duplicate type qualifiers in %s declaration"
msgstr "dubbel deklaration av etikett \"%s\""
-#: cp/decl2.c:192
-msgid "template `%#D' instantiated in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:198
-msgid "template `%#D' defined in file without #pragma interface"
-msgstr ""
-
-#: cp/decl2.c:365
+#: cp/decl2.c:316
msgid "name missing for member function"
msgstr "namn saknas på medlemsfunktion"
-#. Something has gone very wrong. Assume we are mistakenly reducing
-#. an expression instead of a declaration.
-#: cp/decl2.c:428
-msgid "parser may be lost: is there a '{' missing somewhere?"
-msgstr ""
-
-#: cp/decl2.c:459 cp/decl2.c:473
+#: cp/decl2.c:408 cp/decl2.c:422
msgid "ambiguous conversion for array subscript"
msgstr "tvetydig konveretering av fältindex"
-#: cp/decl2.c:467
+#: cp/decl2.c:416
#, fuzzy
msgid "invalid types `%T[%T]' for array subscript"
msgstr "tvetydig konveretering av fältindex"
-#: cp/decl2.c:515
+#: cp/decl2.c:464
msgid "type `%#T' argument given to `delete', expected pointer"
msgstr ""
-#: cp/decl2.c:523
+#: cp/decl2.c:472
msgid "anachronistic use of array size in vector delete"
msgstr ""
-#: cp/decl2.c:533
+#: cp/decl2.c:482
msgid "cannot delete a function. Only pointer-to-objects are valid arguments to `delete'"
msgstr ""
-#: cp/decl2.c:540
+#: cp/decl2.c:489
#, fuzzy
msgid "deleting `%T' is undefined"
msgstr "operation på \"%s\" kan vara odefinierad"
-#: cp/decl2.c:548
+#: cp/decl2.c:497
msgid "deleting array `%#D'"
msgstr ""
#. 14.5.2.2 [temp.mem]
#.
#. A local class shall not have member templates.
-#: cp/decl2.c:582
+#: cp/decl2.c:530
msgid "invalid declaration of member template `%#D' in local class"
msgstr ""
-#: cp/decl2.c:591
+#: cp/decl2.c:539
#, fuzzy
msgid "invalid use of `virtual' in template declaration of `%#D'"
msgstr "tidigare implicit deklaration av \"%s\""
-#: cp/decl2.c:601 cp/pt.c:2745
+#: cp/decl2.c:549 cp/pt.c:2830
#, fuzzy
msgid "template declaration of `%#D'"
msgstr "omdeklaration av \"%s\""
-#: cp/decl2.c:651
+#: cp/decl2.c:598
msgid "Java method '%D' has non-Java return type `%T'"
msgstr ""
-#: cp/decl2.c:660
+#: cp/decl2.c:614
msgid "Java method '%D' has non-Java parameter type `%T'"
msgstr ""
-#: cp/decl2.c:746
+#: cp/decl2.c:705
msgid "prototype for `%#D' does not match any in class `%T'"
msgstr ""
-#: cp/decl2.c:828
+#: cp/decl2.c:784
msgid "local class `%#T' shall not have static data member `%#D'"
msgstr ""
-#: cp/decl2.c:836
+#: cp/decl2.c:792
msgid "initializer invalid for static member with constructor"
msgstr ""
-#: cp/decl2.c:839
+#: cp/decl2.c:795
msgid "(an out of class initialization is required)"
msgstr ""
-#: cp/decl2.c:898
-#, fuzzy
-msgid "invalid data member initialization"
-msgstr "Slå på automatisk mallinstansiering"
-
-#: cp/decl2.c:901
-msgid "(use `=' to initialize static data members)"
-msgstr ""
-
-#: cp/decl2.c:947
+#: cp/decl2.c:878
msgid "member `%D' conflicts with virtual function table field name"
msgstr ""
-#: cp/decl2.c:967
+#: cp/decl2.c:895
msgid "`%D' is already defined in `%T'"
msgstr ""
-#: cp/decl2.c:1014
+#: cp/decl2.c:942
msgid "field initializer is not constant"
msgstr "fältinitierare är ej konstant"
-#: cp/decl2.c:1038
+#: cp/decl2.c:970
msgid "`asm' specifiers are not permitted on non-static data members"
msgstr ""
-#: cp/decl2.c:1090
+#: cp/decl2.c:1020
#, fuzzy
msgid "cannot declare `%D' to be a bit-field type"
msgstr "kan inte deklarera \"::main\" som en mall"
-#: cp/decl2.c:1100
+#: cp/decl2.c:1030
#, fuzzy
msgid "cannot declare bit-field `%D' with function type"
msgstr "typkonvertering matchar inte en funktionstyp"
-#: cp/decl2.c:1107
+#: cp/decl2.c:1037
msgid "`%D' is already defined in the class %T"
msgstr ""
-#: cp/decl2.c:1114
+#: cp/decl2.c:1044
msgid "static member `%D' cannot be a bit-field"
msgstr ""
-#: cp/decl2.c:1201
+#: cp/decl2.c:1103
#, fuzzy
msgid "initializer specified for non-member function `%D'"
msgstr "argumentformat angivet för icke-funktion \"%s\""
-#: cp/decl2.c:1205
+#: cp/decl2.c:1107
msgid "invalid initializer for virtual method `%D'"
msgstr ""
-#: cp/decl2.c:1319
+#: cp/decl2.c:1154
msgid "anonymous struct not inside named type"
msgstr ""
-#: cp/decl2.c:1415
+#: cp/decl2.c:1224
msgid "namespace-scope anonymous aggregates must be static"
msgstr ""
-#: cp/decl2.c:1428
-msgid "anonymous aggregate with no members"
-msgstr ""
+#: cp/decl2.c:1231
+#, fuzzy
+msgid "anonymous union with no members"
+msgstr "anonym union deklarerad i parameterlista"
-#: cp/decl2.c:1497
+#: cp/decl2.c:1265
#, fuzzy
msgid "`operator new' must return type `%T'"
msgstr "\"operator new\" måste returnera typ \"void *\""
-#: cp/decl2.c:1505
+#: cp/decl2.c:1273
#, fuzzy
msgid "`operator new' takes type `size_t' (`%T') as first parameter"
msgstr "\"operator new\" tar parameter av typ \"size_t\""
-#: cp/decl2.c:1532
+#: cp/decl2.c:1299
#, fuzzy
msgid "`operator delete' must return type `%T'"
msgstr "\"operator new\" måste returnera typ \"void *\""
-#: cp/decl2.c:1540
+#: cp/decl2.c:1307
#, fuzzy
msgid "`operator delete' takes type `%T' as first parameter"
msgstr "\"operator new\" tar parameter av typ \"size_t\""
-#. Overflow occurred. That means there are at least 4 billion
-#. initialization functions.
-#: cp/decl2.c:2282
-msgid "too many initialization functions required"
-msgstr ""
-
-#: cp/decl2.c:3006
+#: cp/decl2.c:2814
#, fuzzy
msgid "inline function `%D' used but never defined"
msgstr "\"%s\" är använd men inte definierad"
-#: cp/decl2.c:3135
-msgid "use of old-style cast"
-msgstr "användning av gammaldags typkonvertering"
-
-#: cp/decl2.c:3860
-#, fuzzy
-msgid "use of `%D' is ambiguous"
-msgstr "%s: flaggan \"%s\" är tvetydig\n"
-
-#: cp/decl2.c:3861
-msgid " first declared as `%#D' here"
-msgstr ""
-
-#: cp/decl2.c:3864
-msgid " also declared as `%#D' here"
-msgstr ""
-
-#: cp/decl2.c:3879
-msgid "`%D' denotes an ambiguous type"
-msgstr ""
-
-#: cp/decl2.c:3880
-#, fuzzy
-msgid " first type here"
-msgstr " från här"
-
-#: cp/decl2.c:3881
-msgid " other type here"
-msgstr ""
-
-#: cp/decl2.c:3982
-#, fuzzy
-msgid "declaration of `%D' not in a namespace surrounding `%D'"
-msgstr "deklaration av \"%s\" som ett fält med funktioner"
-
-#: cp/decl2.c:4016
-msgid "`%D' should have been declared inside `%D'"
-msgstr ""
-
-#: cp/decl2.c:4152
-#, fuzzy
-msgid "`%D' is not a function,"
-msgstr "\"%s\" är vanligtvis en funktion"
-
-#: cp/decl2.c:4153
-#, fuzzy
-msgid " conflict with `%D'"
-msgstr "\"%s\" ignorerad, i konflikt med \"-g%s\""
-
-#. The parser did not find it, so it's not there.
-#: cp/decl2.c:4473
-#, fuzzy
-msgid "unknown namespace `%D'"
-msgstr "okänt #pragma namespace %s"
-
-#: cp/decl2.c:4507 cp/decl2.c:4794
-msgid "`%T' is not a namespace"
-msgstr ""
-
-#: cp/decl2.c:4509
-msgid "`%D' is not a namespace"
-msgstr ""
-
-#: cp/decl2.c:4518
-msgid "a using-declaration cannot specify a template-id. Try `using %D'"
-msgstr ""
-
-#: cp/decl2.c:4532
-#, fuzzy
-msgid "namespace `%D' not allowed in using-declaration"
-msgstr "\"%s\" är inte i början av deklarationen"
-
-#: cp/decl2.c:4561
-#, fuzzy
-msgid "`%D' not declared"
-msgstr "\"%s\" är tidigare deklarerad här"
-
-#. If the OLD_FN was really declared, the
-#. declarations don't match.
-#: cp/decl2.c:4573 cp/decl2.c:4615 cp/decl2.c:4640
-msgid "`%D' is already declared in this scope"
-msgstr ""
-
-#: cp/decl2.c:4646
-msgid "using declaration `%D' introduced ambiguous type `%T'"
-msgstr ""
-
-#: cp/decl2.c:4740
-msgid "using-declaration for non-member at class scope"
-msgstr ""
-
-#: cp/decl2.c:4746
-#, fuzzy
-msgid "using-declaration for destructor"
-msgstr "multiple deklaration av metod \"%s\""
-
-#: cp/decl2.c:4752
-msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
-msgstr ""
-
-#: cp/decl2.c:4788
-#, fuzzy
-msgid "namespace `%T' undeclared"
-msgstr "parameter \"%s\" deklarerad som void"
-
-#: cp/decl2.c:4817
+#: cp/decl2.c:2960
#, fuzzy
msgid "default argument missing for parameter %P of `%+#D'"
msgstr "parameternamn saknas i parameterlista"
-#: cp/decl2.c:4941
-msgid "extra qualification `%T::' on member `%D' ignored"
-msgstr ""
-
-#: cp/decl2.c:4945
-msgid "`%T' does not have a class or union named `%D'"
-msgstr ""
-
-#: cp/decl2.c:4963
-#, fuzzy
-msgid "`%T' is not a class or union type"
-msgstr "ISO C förbjuder typkonvertering till unionstyper"
-
-#: cp/decl2.c:4977
-#, fuzzy
-msgid "template argument is required for `%T'"
-msgstr "flera parametrar med namn \"%s\""
-
-#: cp/decl2.c:4995
-#, fuzzy
-msgid "declaration of `%D' in `%D' which does not enclose `%D'"
-msgstr "deklaration av \"%s\" som ett fält med funktioner"
-
-#: cp/error.c:35
-#, c-format
-msgid "`%s' not supported by %s"
-msgstr "\"%s\" stöds inte av %s"
-
-#: cp/error.c:571
-#, c-format
-msgid "<anonymous %s>"
-msgstr "<anonym %s>"
-
-#: cp/error.c:810
-#, c-format
-msgid "(static %s for %s)"
-msgstr "(static %s för %s)"
-
-#: cp/error.c:1503
-#, c-format
-msgid "\\x%x"
-msgstr ""
-
-#: cp/error.c:2473
-#, c-format
-msgid "In %s `%s':"
-msgstr ""
-
-#: cp/error.c:2530
-#, c-format
-msgid "%s: In instantiation of `%s':\n"
-msgstr "%s: Vid instansiering av \"%s\":\n"
-
-#: cp/error.c:2554
-#, c-format
-msgid "%s:%d: instantiated from `%s'\n"
-msgstr ""
-
-#: cp/error.c:2559
-#, c-format
-msgid "%s:%d: instantiated from here\n"
-msgstr ""
-
#. damn ICE suppression
-#: cp/error.c:2713
+#: cp/error.c:2374
#, c-format
msgid "unexpected letter `%c' in locate_error\n"
msgstr ""
@@ -16513,45 +15555,44 @@ msgstr ""
msgid "type `%T' is not derived from `java::lang::Throwable'"
msgstr ""
-#: cp/except.c:322
+#: cp/except.c:321
msgid "mixing C++ and Java catches in a single translation unit"
msgstr ""
-#: cp/except.c:639
+#: cp/except.c:630
msgid "throwing NULL, which has integral, not pointer type"
msgstr ""
-#: cp/except.c:730
+#: cp/except.c:653 cp/init.c:2029
+msgid "`%D' should never be overloaded"
+msgstr ""
+
+#: cp/except.c:722
msgid " in thrown expression"
msgstr ""
-#: cp/except.c:856
+#: cp/except.c:843
msgid "expression '%E' of abstract class type '%T' cannot be used in throw-expression"
msgstr ""
-#: cp/except.c:944
+#: cp/except.c:925
msgid "exception of type `%T' will be caught"
msgstr ""
-#: cp/except.c:947
+#: cp/except.c:928
msgid " by earlier handler for `%T'"
msgstr ""
-#: cp/except.c:968
+#: cp/except.c:949
msgid "`...' handler must be the last handler for its try block"
msgstr ""
-#: cp/friend.c:159
+#: cp/friend.c:151
#, fuzzy
msgid "`%D' is already a friend of class `%T'"
msgstr "kunde inte hitta klassen \"%s\""
-#: cp/friend.c:161
-#, fuzzy
-msgid "previous friend declaration of `%D'"
-msgstr "tidigare deklaration av \"%s\""
-
-#: cp/friend.c:206
+#: cp/friend.c:202
#, fuzzy
msgid "invalid type `%T' declared `friend'"
msgstr "variabel \"%s\" deklarerad \"inline\""
@@ -16559,124 +15600,145 @@ msgstr "variabel \"%s\" deklarerad \"inline\""
#. [temp.friend]
#. Friend declarations shall not declare partial
#. specializations.
-#: cp/friend.c:222
+#: cp/friend.c:218
#, fuzzy
msgid "partial specialization `%T' declared `friend'"
msgstr "variabel \"%s\" deklarerad \"inline\""
-#: cp/friend.c:231
+#: cp/friend.c:228
msgid "class `%T' is implicitly friends with itself"
msgstr ""
#. template <class T> friend typename S<T>::X;
-#: cp/friend.c:249
+#: cp/friend.c:246
#, fuzzy
msgid "typename type `%#T' declared `friend'"
msgstr "parameter \"%s\" deklarerad som void"
#. template <class T> friend class T;
-#: cp/friend.c:255
+#: cp/friend.c:252
#, fuzzy
msgid "template parameter type `%T' declared `friend'"
msgstr "parameter \"%s\" deklarerad som void"
#. template <class T> friend class A; where A is not a template
-#: cp/friend.c:261
+#: cp/friend.c:258
#, fuzzy
msgid "`%#T' is not a template"
msgstr "användning ab `%s' i mall"
-#: cp/friend.c:276
+#: cp/friend.c:277
+#, fuzzy
+msgid "`%D' is already a friend of `%T'"
+msgstr "kunde inte hitta klassen \"%s\""
+
+#: cp/friend.c:287
msgid "`%T' is already a friend of `%T'"
msgstr ""
-#: cp/friend.c:376
+#: cp/friend.c:413
msgid "member `%D' declared as friend before type `%T' defined"
msgstr ""
-#: cp/friend.c:431
+#: cp/friend.c:470
#, fuzzy
msgid "friend declaration `%#D' declares a non-template function"
msgstr "inbyggd funktion \"%s\" deklarerad som icke-funktion"
-#: cp/friend.c:434
+#: cp/friend.c:473
msgid "(if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) -Wno-non-template-friend disables this warning"
msgstr ""
-#: cp/g++spec.c:211 java/jvspec.c:423
+#: cp/g++spec.c:229 java/jvspec.c:415
#, c-format
msgid "argument to `%s' missing\n"
msgstr "argument till \"%s\" saknas\n"
-#: cp/init.c:334
+#: cp/init.c:318
msgid "`%D' should be initialized in the member initialization list"
msgstr ""
-#: cp/init.c:384
+#: cp/init.c:368
msgid "default-initialization of `%#D', which has reference type"
msgstr ""
-#: cp/init.c:389
+#: cp/init.c:373
msgid "uninitialized reference member `%D'"
msgstr ""
-#: cp/init.c:397
-msgid "initializer list treated as compound expression"
-msgstr ""
-
-#: cp/init.c:538
+#: cp/init.c:511
#, fuzzy
msgid "`%D' will be initialized after"
msgstr "parameter \"%s\" är initierad"
-#: cp/init.c:541
+#: cp/init.c:514
#, fuzzy
msgid "base `%T' will be initialized after"
msgstr "fält \"%s\" är redan initierat"
-#: cp/init.c:544
+#: cp/init.c:517
msgid " `%#D'"
msgstr ""
-#: cp/init.c:546
+#: cp/init.c:519
msgid " base `%T'"
msgstr ""
-#: cp/init.c:564
+#: cp/init.c:520
+#, fuzzy
+msgid " when initialized here"
+msgstr "villkorssatsen började här"
+
+#: cp/init.c:536
+#, fuzzy
+msgid "multiple initializations given for `%D'"
+msgstr "multiple deklaration av metod \"%s\""
+
+#: cp/init.c:538
#, fuzzy
msgid "multiple initializations given for base `%T'"
msgstr "multiple deklaration av metod \"%s\""
-#: cp/init.c:631
+#: cp/init.c:605
#, fuzzy
msgid "initializations for multiple members of `%T'"
msgstr "initierare misslyckas med att bestämma storlek på \"%s\""
-#: cp/init.c:688
+#: cp/init.c:662
msgid "base class `%#T' should be explicitly initialized in the copy constructor"
msgstr ""
-#: cp/init.c:926
+#: cp/init.c:892 cp/init.c:911
msgid "class `%T' does not have any field named `%D'"
msgstr ""
-#: cp/init.c:932
-msgid "field `%#D' is static; the only point of initialization is its definition"
-msgstr ""
+#: cp/init.c:898
+#, fuzzy
+msgid "`%#D' is a static data member; it can only be initialized at its definition"
+msgstr "attributet \"%s\" fungerar bara på funktioner"
-#: cp/init.c:965
+#: cp/init.c:905
+#, fuzzy
+msgid "`%#D' is not a non-static data member of `%T'"
+msgstr "%s har ingen medlem med namn \"%s\""
+
+#: cp/init.c:944
msgid "unnamed initializer for `%T', which has no base classes"
msgstr ""
-#: cp/init.c:972
+#: cp/init.c:951
msgid "unnamed initializer for `%T', which uses multiple inheritance"
msgstr ""
-#: cp/init.c:1007
+#: cp/init.c:1006
+msgid "'%D' is both a direct base and an indirect virtual base"
+msgstr ""
+
+#: cp/init.c:1014
msgid "type `%D' is not a direct or virtual base of `%T'"
msgstr ""
-#: cp/init.c:1010
+#: cp/init.c:1017
msgid "type `%D' is not a direct base of `%T'"
msgstr ""
@@ -16692,566 +15754,891 @@ msgstr ""
#. COMPLEX zees(1.0, 0.0)[10];
#. }
#.
-#: cp/init.c:1104
+#: cp/init.c:1109
#, fuzzy
msgid "bad array initializer"
msgstr "fält \"%s\" är redan initierat"
-#: cp/init.c:1311
+#: cp/init.c:1303
#, fuzzy
msgid "`%T' is not an aggregate type"
msgstr "\"%s\" har en inkomplett typ"
-#: cp/init.c:1334
+#: cp/init.c:1324
msgid "`%T' fails to be an aggregate typedef"
msgstr ""
-#: cp/init.c:1343
+#: cp/init.c:1333
msgid "type `%T' is of non-aggregate type"
msgstr ""
-#: cp/init.c:1446
-msgid "cannot call destructor `%T::~%T' without object"
+#: cp/init.c:1425 cp/typeck.c:1798
+msgid "qualified type `%T' does not match destructor name `~%T'"
msgstr ""
-#: cp/init.c:1490
-#, fuzzy
-msgid "invalid use of non-static field `%D'"
-msgstr "ogiltigt användande av \"restrict\""
-
-#. We can get here when processing a bad default
-#. argument, like:
-#. struct S { int a; void f(int i = a); }
-#: cp/init.c:1499 cp/method.c:160
-#, fuzzy
-msgid "invalid use of member `%D'"
-msgstr "ogiltigt användande av \"restrict\""
-
-#: cp/init.c:1509
-#, fuzzy
-msgid "no method `%T::%D'"
-msgstr "I metod `%s':"
-
-#: cp/init.c:1602
+#: cp/init.c:1433
msgid "incomplete type `%T' does not have member `%D'"
msgstr ""
-#: cp/init.c:1676
+#: cp/init.c:1452
#, fuzzy
msgid "`%D' is not a member of type `%T'"
msgstr "%s har ingen medlem med namn \"%s\""
-#: cp/init.c:1695
+#: cp/init.c:1471
#, fuzzy
msgid "invalid pointer to bit-field `%D'"
msgstr "negativ storlek i bitfält \"%s\""
-#: cp/init.c:1734
-msgid "object missing in use of pointer-to-member construct"
-msgstr ""
-
-#: cp/init.c:1774
-msgid "member `%D' is non-static but referenced as a static member"
-msgstr ""
-
-#: cp/init.c:1776 cp/typeck.c:2826 cp/typeck.c:2930
-msgid "at this point in file"
-msgstr ""
+#: cp/init.c:1573
+#, fuzzy
+msgid "invalid use of non-static member function `%D'"
+msgstr "ogiltigt användande av \"restrict\""
-#: cp/init.c:1813
-#, fuzzy, c-format
-msgid "object missing in `%E'"
-msgstr "fältstorlek saknas i \"%s\""
+#: cp/init.c:1579 cp/semantics.c:1236
+#, fuzzy
+msgid "invalid use of non-static data member `%D'"
+msgstr "ogiltigt användande av \"restrict\""
-#: cp/init.c:1944
+#: cp/init.c:1718
msgid "new of array type fails to specify size"
msgstr ""
-#: cp/init.c:1955
+#: cp/init.c:1729
msgid "size in array new must have integral type"
msgstr ""
-#: cp/init.c:1961
+#: cp/init.c:1735
msgid "zero size array reserves no space"
msgstr ""
-#: cp/init.c:2026
+#: cp/init.c:1801
msgid "new cannot be applied to a reference type"
msgstr ""
-#: cp/init.c:2032
+#: cp/init.c:1807
msgid "new cannot be applied to a function type"
msgstr ""
-#: cp/init.c:2079
+#: cp/init.c:1853
msgid "call to Java constructor, while `jclass' undefined"
msgstr ""
-#: cp/init.c:2095
+#: cp/init.c:1869
#, fuzzy
msgid "can't find class$"
msgstr "Kan inte hitta class$"
-#: cp/init.c:2209
+#: cp/init.c:1995
msgid "invalid type `void' for new"
msgstr "ogiltig typ \"void\" för new"
-#: cp/init.c:2261
+#: cp/init.c:2005
+#, fuzzy
+msgid "uninitialized const in `new' of `%#T'"
+msgstr "initierare misslyckas med att bestämma storlek på \"%s\""
+
+#: cp/init.c:2024
#, c-format
msgid "call to Java constructor with `%s' undefined"
msgstr ""
-#: cp/init.c:2369
+#: cp/init.c:2065
+#, fuzzy
+msgid "request for member `%D' is ambiguous"
+msgstr "%s: flaggan \"%s\" är tvetydig\n"
+
+#: cp/init.c:2189
#, fuzzy
msgid "ISO C++ forbids initialization in array new"
msgstr "ISO C++ förbjuder initiering av new-uttryck med \"=\""
-#: cp/init.c:2391 cp/typeck2.c:367 cp/typeck2.c:1208
-msgid "initializer list being treated as compound expression"
-msgstr ""
-
-#: cp/init.c:2397
+#: cp/init.c:2213
msgid "ISO C++ forbids aggregate initializer to new"
msgstr ""
-#: cp/init.c:2485
-#, fuzzy
-msgid "uninitialized const in `new' of `%#T'"
-msgstr "initierare misslyckas med att bestämma storlek på \"%s\""
-
-#: cp/init.c:2864
+#: cp/init.c:2658
msgid "initializer ends prematurely"
msgstr ""
-#: cp/init.c:2934
+#: cp/init.c:2715
msgid "cannot initialize multi-dimensional array with initializer"
msgstr ""
-#: cp/init.c:3124
-msgid "unknown array size in delete"
+#: cp/init.c:2876
+msgid "possible problem detected in invocation of delete operator:"
msgstr ""
-#: cp/init.c:3389
-msgid "type to vector delete is neither pointer or array type"
+#: cp/init.c:2879
+msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined."
msgstr ""
-#: cp/lex.c:136
-msgid "type name expected before `*'"
-msgstr "typnamn förväntat före \"*\""
-
-#: cp/lex.c:158
-msgid "cannot declare references to references"
-msgstr "kan inte deklarera referenser till referenser"
-
-#: cp/lex.c:163
-msgid "cannot declare pointers to references"
-msgstr "kan inte deklarera pekare till referenser"
-
-#: cp/lex.c:167
-msgid "type name expected before `&'"
+#: cp/init.c:2900
+msgid "unknown array size in delete"
msgstr ""
-#: cp/lex.c:894
-#, c-format
-msgid "semicolon missing after %s declaration"
+#: cp/init.c:3165
+msgid "type to vector delete is neither pointer or array type"
msgstr ""
-#: cp/lex.c:897
-#, fuzzy
-msgid "semicolon missing after declaration of `%T'"
-msgstr "motstridande deklarationer av \"%s\""
+#: cp/lex.c:99
+msgid "type name expected before `*'"
+msgstr "typnamn förväntat före \"*\""
-#: cp/lex.c:945
+#: cp/lex.c:501
#, c-format
msgid "junk at end of #pragma %s"
msgstr ""
-#: cp/lex.c:952
+#: cp/lex.c:508
#, c-format
msgid "invalid #pragma %s"
msgstr "ogiltigt #pragma %s"
-#: cp/lex.c:961
+#: cp/lex.c:516
#, fuzzy
msgid "#pragma vtable no longer supported"
msgstr "--driver stödjs inte längre"
-#: cp/lex.c:1038
+#: cp/lex.c:590
#, c-format
msgid "#pragma implementation for %s appears after file is included"
msgstr ""
-#: cp/lex.c:1063
+#: cp/lex.c:614
msgid "junk at end of #pragma GCC java_exceptions"
msgstr ""
-#: cp/lex.c:1107
+#: cp/lex.c:628
#, fuzzy
msgid "`%D' not defined"
msgstr "\"%s\" är inte definierad"
-#: cp/lex.c:1110
+#: cp/lex.c:631
#, fuzzy
msgid "`%D' was not declared in this scope"
msgstr "\"%s\" odeklarerad (första förekomsten i denna funktionen)"
-#: cp/lex.c:1118
+#: cp/lex.c:639
#, fuzzy
msgid "`%D' undeclared (first use this function)"
msgstr "\"%s\" odeklarerad (första förekomsten i denna funktionen)"
-#: cp/lex.c:1122
+#: cp/lex.c:643
msgid "(Each undeclared identifier is reported only once for each function it appears in.)"
msgstr ""
-#: cp/lex.c:1242
-#, fuzzy
-msgid "`::%D' undeclared (first use here)"
-msgstr "\"%s\" odeklarerad (första förekomsten i denna funktionen)"
+#. In a template, it is invalid to write "f()" or "f(3)" if no
+#. declaration of "f" is available. Historically, G++ and most
+#. other compilers accepted that usage since they deferred all name
+#. lookup until instantiation time rather than doing unqualified
+#. name lookup at template definition time; explain to the user what
+#. is going wrong.
+#.
+#. Note that we have the exact wording of the following message in
+#. the manual (trouble.texi, node "Name lookup"), so they need to
+#. be kept in synch.
+#: cp/lex.c:674
+msgid "there are no arguments to `%D' that depend on a template parameter, so a declaration of `%D' must be available"
+msgstr ""
+
+#: cp/lex.c:683
+msgid "(if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)"
+msgstr ""
-#: cp/mangle.c:2051
+#: cp/mangle.c:2036
msgid "call_expr cannot be mangled due to a defect in the C++ ABI"
msgstr ""
-#: cp/mangle.c:2363
+#: cp/mangle.c:2089
+msgid "omitted middle operand to `?:' operand cannot be mangled"
+msgstr ""
+
+#: cp/mangle.c:2388
msgid "the mangled name of `%D' will change in a future version of GCC"
msgstr ""
-#: cp/method.c:154
+#: cp/method.c:456
+msgid "generic thunk code fails for method `%#D' which uses `...'"
+msgstr ""
+
+#: cp/method.c:681
+msgid "non-static const member `%#D', can't use default assignment operator"
+msgstr ""
+
+#: cp/method.c:686
+msgid "non-static reference member `%#D', can't use default assignment operator"
+msgstr ""
+
+#: cp/name-lookup.c:649
#, fuzzy
-msgid "invalid use of member `%D' in static member function"
-msgstr "destruerare kan inte vara en statisk medlemsfunktion"
+msgid "`%#D' used prior to declaration"
+msgstr "\"%s\" är använd innan sin deklaration"
-#: cp/method.c:216
-msgid "use of namespace `%D' as expression"
+#: cp/name-lookup.c:680
+#, fuzzy
+msgid "redeclaration of `wchar_t' as `%T'"
+msgstr "omdeklaration av \"%s\""
+
+#. A redeclaration of main, but not a duplicate of the
+#. previous one.
+#.
+#. [basic.start.main]
+#.
+#. This function shall not be overloaded.
+#: cp/name-lookup.c:712
+#, fuzzy
+msgid "invalid redeclaration of `%D'"
+msgstr "omdeklaration av \"%s\""
+
+#: cp/name-lookup.c:713
+msgid "as `%D'"
msgstr ""
-#: cp/method.c:221
-msgid "use of class template `%T' as expression"
+#: cp/name-lookup.c:801
+#, fuzzy
+msgid "type mismatch with previous external decl of `%#D'"
+msgstr "typ skiljer sig från tidigare extern deklaration"
+
+#: cp/name-lookup.c:802
+#, fuzzy
+msgid "previous external decl of `%#D'"
+msgstr "föregående externa dekl. av \"%s\""
+
+#: cp/name-lookup.c:844
+#, fuzzy
+msgid "`%D' was previously implicitly declared to return `int'"
+msgstr "\"%s\" deklarerades tidigare implicit att returnera \"int\""
+
+#: cp/name-lookup.c:902
+#, fuzzy
+msgid "extern declaration of `%#D' doesn't match"
+msgstr "extern deklaration av \"%s\" matchar inte den globala"
+
+#: cp/name-lookup.c:903
+#, fuzzy
+msgid "global declaration `%#D'"
+msgstr "dubbel deklaration av etikett \"%s\""
+
+#: cp/name-lookup.c:939
+#, fuzzy
+msgid "declaration of `%#D' shadows a parameter"
+msgstr "deklaration av \"%s\" döljer en parameter"
+
+#: cp/name-lookup.c:960
+#, c-format
+msgid "declaration of `%s' shadows a member of `this'"
+msgstr ""
+
+#: cp/name-lookup.c:1136
+msgid "name lookup of `%D' changed"
+msgstr ""
+
+#: cp/name-lookup.c:1138
+msgid " matches this `%D' under ISO standard rules"
+msgstr ""
+
+#: cp/name-lookup.c:1140
+msgid " matches this `%D' under old rules"
+msgstr ""
+
+#: cp/name-lookup.c:1154 cp/name-lookup.c:1161
+msgid "name lookup of `%D' changed for new ISO `for' scoping"
+msgstr ""
+
+#: cp/name-lookup.c:1156
+msgid " cannot use obsolete binding at `%D' because it has a destructor"
+msgstr ""
+
+#: cp/name-lookup.c:1163
+msgid " using obsolete binding at `%D'"
msgstr ""
-#: cp/method.c:234
+#: cp/name-lookup.c:1216
#, c-format
-msgid "use of %s from containing function"
+msgid "%s %s(%E) %p %d\n"
+msgstr ""
+
+#: cp/name-lookup.c:1219
+#, fuzzy, c-format
+msgid "%s %s %p %d\n"
+msgstr "%s: %s: "
+
+#: cp/name-lookup.c:1338
+msgid "XXX is_class_level != (current_scope == class_scope)\n"
msgstr ""
-#: cp/method.c:237
+#: cp/name-lookup.c:1975
#, fuzzy
-msgid " `%#D' declared here"
+msgid "`%#D' hides constructor for `%#T'"
+msgstr "destruerare behövs för \"%#D\""
+
+#: cp/name-lookup.c:1990
+#, fuzzy
+msgid "`%#D' conflicts with previous using declaration `%#D'"
+msgstr "sektion \"%s\" står i konflikt med tidigare deklaration"
+
+#: cp/name-lookup.c:2002
+#, fuzzy
+msgid "previous non-function declaration `%#D'"
+msgstr "tidigare deklaration av \"%s\""
+
+#: cp/name-lookup.c:2003
+#, fuzzy
+msgid "conflicts with function declaration `%#D'"
+msgstr "motstridande deklarationer av \"%s\""
+
+#. 7.3.3/5
+#. A using-declaration shall not name a template-id.
+#: cp/name-lookup.c:2080
+msgid "a using-declaration cannot specify a template-id. Try `using %D'"
+msgstr ""
+
+#: cp/name-lookup.c:2086
+#, fuzzy
+msgid "namespace `%D' not allowed in using-declaration"
+msgstr "\"%s\" är inte i början av deklarationen"
+
+#. It's a nested name with template parameter dependent scope.
+#. This can only be using-declaration for class member.
+#: cp/name-lookup.c:2094 cp/name-lookup.c:2108 cp/name-lookup.c:3283
+msgid "`%T' is not a namespace"
+msgstr ""
+
+#: cp/name-lookup.c:2132
+#, fuzzy
+msgid "`%D' not declared"
msgstr "\"%s\" är tidigare deklarerad här"
-#: cp/method.c:255
-msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
+#. If the OLD_FN was really declared, the
+#. declarations don't match.
+#: cp/name-lookup.c:2144 cp/name-lookup.c:2186 cp/name-lookup.c:2211
+msgid "`%D' is already declared in this scope"
msgstr ""
-#: cp/method.c:458
-msgid "generic thunk code fails for method `%#D' which uses `...'"
+#: cp/name-lookup.c:2217
+msgid "using declaration `%D' introduced ambiguous type `%T'"
msgstr ""
-#: cp/method.c:697
-msgid "non-static const member `%#D', can't use default assignment operator"
+#. Definition isn't the kind we were looking for.
+#: cp/name-lookup.c:2376 cp/name-lookup.c:2395
+msgid "`%#D' redeclared as %C"
msgstr ""
-#: cp/method.c:702
-msgid "non-static reference member `%#D', can't use default assignment operator"
+#: cp/name-lookup.c:2805
+msgid "using-declaration for non-member at class scope"
msgstr ""
-#: parse.y:262
-msgid "`%s' tag used in naming `%#T'"
+#: cp/name-lookup.c:2812
+#, fuzzy
+msgid "using-declaration cannot name destructor"
+msgstr "multiple deklaration av metod \"%s\""
+
+#: cp/name-lookup.c:2908
+#, fuzzy
+msgid "declaration of `%D' not in a namespace surrounding `%D'"
+msgstr "deklaration av \"%s\" som ett fält med funktioner"
+
+#: cp/name-lookup.c:2948
+msgid "`%D' should have been declared inside `%D'"
+msgstr ""
+
+#: cp/name-lookup.c:3012
+msgid "namespace alias `%D' not allowed here, assuming `%D'"
msgstr ""
-#: parse.y:542
+#. The parser did not find it, so it's not there.
+#: cp/name-lookup.c:3127
#, fuzzy
-msgid "keyword `export' not implemented, and will be ignored"
-msgstr "nyckelordet \"export\" är inte implementerat och kommer ignorerads"
+msgid "unknown namespace `%D'"
+msgstr "okänt #pragma namespace %s"
+
+#: cp/name-lookup.c:3277
+#, fuzzy
+msgid "namespace `%T' undeclared"
+msgstr "parameter \"%s\" deklarerad som void"
-#: parse.y:646
-msgid "use of linkage spec `%D' is different from previous spec `%D'"
+#: cp/name-lookup.c:3310
+msgid "strong using only meaningful at namespace scope"
msgstr ""
-#: parse.y:943
-msgid "no base or member initializers given following ':'"
+#: cp/name-lookup.c:3317
+#, fuzzy
+msgid "`%D' attribute directive ignored"
+msgstr "attributet \"%s\" ignorerat"
+
+#: cp/name-lookup.c:3450
+#, fuzzy
+msgid "use of `%D' is ambiguous"
+msgstr "%s: flaggan \"%s\" är tvetydig\n"
+
+#: cp/name-lookup.c:3451
+msgid " first declared as `%#D' here"
msgstr ""
-#: parse.y:984
-msgid "anachronistic old style base class initializer"
+#: cp/name-lookup.c:3454
+msgid " also declared as `%#D' here"
msgstr ""
-#. Handle `Class<Class<Type>>' without space in the `>>'
-#: parse.y:1117
-msgid "`>>' should be `> >' in template class name"
+#: cp/name-lookup.c:3469
+msgid "`%D' denotes an ambiguous type"
msgstr ""
-#: parse.y:1164
-msgid "use of template qualifier outside template"
+#: cp/name-lookup.c:3470
+#, fuzzy
+msgid "%J first type here"
+msgstr " från här"
+
+#: cp/name-lookup.c:3471
+#, fuzzy
+msgid "%J other type here"
+msgstr " från här"
+
+#. This happens for A::B where B is a template, and there are no
+#. template arguments.
+#: cp/name-lookup.c:3536 cp/typeck.c:1773
+#, fuzzy
+msgid "invalid use of `%D'"
+msgstr "ogiltigt användande av \"restrict\""
+
+#: cp/name-lookup.c:3577
+#, fuzzy
+msgid "`%D::%D' is not a template"
+msgstr "användning ab `%s' i mall"
+
+#: cp/name-lookup.c:3594
+msgid "`%D' undeclared in namespace `%D'"
msgstr ""
-#: parse.y:1193 parse.y:1202
-#, c-format
-msgid "ISO C++ forbids an empty condition for `%s'"
+#: cp/name-lookup.c:4055
+#, fuzzy
+msgid "`%D' is not a function,"
+msgstr "\"%s\" är vanligtvis en funktion"
+
+#: cp/name-lookup.c:4056
+#, fuzzy
+msgid " conflict with `%D'"
+msgstr "\"%s\" ignorerad, i konflikt med \"-g%s\""
+
+#: cp/name-lookup.c:4794
+msgid "XXX entering pop_everything ()\n"
+msgstr ""
+
+#: cp/name-lookup.c:4803
+msgid "XXX leaving pop_everything ()\n"
msgstr ""
-#: parse.y:1225
+#: cp/parser.c:609
#, fuzzy
-msgid "definition of class `%T' in condition"
-msgstr "redefinition av \"%s %s\""
+msgid "invalid token"
+msgstr "ogiltig kod"
-#: parse.y:1227
+#: cp/parser.c:1806
#, fuzzy
-msgid "definition of enum `%T' in condition"
-msgstr "omdefiniering av \"%s\""
+msgid "`%D::%D' has not been declared"
+msgstr "const \"%s\" kan inte deklareras \"mutable\""
-#: parse.y:1238
+#: cp/parser.c:1809 cp/semantics.c:2284
#, fuzzy
-msgid "definition of array `%#D' in condition"
-msgstr "metoddefinition för \"%c%s\" kan inte hittas"
+msgid "`::%D' has not been declared"
+msgstr "const \"%s\" kan inte deklareras \"mutable\""
-#: parse.y:1351
-msgid "old style placement syntax, use () instead"
+#: cp/parser.c:1811
+#, fuzzy
+msgid "`%D' has not been declared"
+msgstr "const \"%s\" kan inte deklareras \"mutable\""
+
+#: cp/parser.c:1814
+msgid "`%D::%D' %s"
msgstr ""
-#: parse.y:1362
+#: cp/parser.c:1816
+msgid "`::%D' %s"
+msgstr ""
+
+#: cp/parser.c:1818
#, fuzzy
-msgid "`%T' is not a valid expression"
-msgstr "\"%s\" är inte ett giltigt filnamn"
+msgid "`%D' %s"
+msgstr "%s: %s"
+
+#: cp/parser.c:1870
+msgid "new types may not be defined in a return type"
+msgstr ""
-#. This was previously allowed as an extension, but
-#. was removed in G++ 3.3.
-#: parse.y:1369
+#: cp/parser.c:1888 cp/pt.c:4185
#, fuzzy
-msgid "initialization of new expression with `='"
-msgstr "ISO C++ förbjuder initiering av new-uttryck med \"=\""
+msgid "`%T' is not a template"
+msgstr "användning ab `%s' i mall"
+
+#: cp/parser.c:1890
+#, fuzzy, c-format
+msgid "`%s' is not a template"
+msgstr "användning ab `%s' i mall"
+
+#: cp/parser.c:1892
+#, fuzzy
+msgid "invalid template-id"
+msgstr "ogiltigt format på #line"
-#: parse.y:1395
-msgid "ISO C++ forbids compound literals"
+#: cp/parser.c:1927
+#, fuzzy, c-format
+msgid "%s cannot appear in a constant-expression"
+msgstr "spill i konstant uttryck"
+
+#. Issue an error message.
+#: cp/parser.c:1954
+#, fuzzy, c-format
+msgid "`%s' does not name a type"
+msgstr "\"%s\" har en inkomplett typ"
+
+#: cp/parser.c:1985
+msgid "(perhaps `typename %T::%s' was intended)"
msgstr ""
-#: parse.y:1642
+#: cp/parser.c:2407
msgid "ISO C++ forbids braced-groups within expressions"
msgstr ""
-#: parse.y:1721
+#: cp/parser.c:2416
+msgid "statement-expressions are allowed only inside functions"
+msgstr ""
+
+#: cp/parser.c:2467
#, fuzzy
-msgid "invalid use of template `%D'"
-msgstr "ogiltigt användande av \"restrict\""
+msgid "`this' may not be used in this context"
+msgstr "\"%s\" odeklarerad (första förekomsten i denna funktionen)"
-#: parse.y:2053 parse.y:2068
-msgid "sigof type specifier"
+#: cp/parser.c:2617
+#, fuzzy
+msgid "local variable `%D' may not appear in this context"
+msgstr "\"%s\" odeklarerad (första förekomsten i denna funktionen)"
+
+#: cp/parser.c:2982
+#, fuzzy
+msgid "typedef-name `%D' used as destructor declarator"
+msgstr "deklaration av \"%s\" döljer global deklaration"
+
+#: cp/parser.c:3627
+#, fuzzy
+msgid "ISO C++ forbids compound-literals"
+msgstr "ISO C++ förbjuder beräknade goto"
+
+#: cp/parser.c:4599
+msgid "expression in new-declarator must have integral or enumeration type"
msgstr ""
-#: parse.y:2058
-msgid "`sigof' applied to non-aggregate expression"
+#: cp/parser.c:4775
+msgid "use of old-style cast"
+msgstr "användning av gammaldags typkonvertering"
+
+#: cp/parser.c:5528
+#, fuzzy, c-format
+msgid "case label `%E' not within a switch statement"
+msgstr "case-etikett är inte i en switch-sats"
+
+#: cp/parser.c:6070
+msgid "ISO C++ forbids computed gotos"
+msgstr "ISO C++ förbjuder beräknade goto"
+
+#: cp/parser.c:6190
+msgid "extra `;'"
msgstr ""
-#: parse.y:2073
-msgid "`sigof' applied to non-aggregate type"
+#: cp/parser.c:6485
+msgid "mixing declarations and function-definitions is forbidden"
msgstr ""
-#: parse.y:2339
-msgid "using `typename' outside of template"
+#: cp/parser.c:6623
+#, fuzzy
+msgid "duplicate `friend'"
+msgstr "flera \"%s\""
+
+#: cp/parser.c:6772
+#, fuzzy
+msgid "class definition may not be declared a friend"
+msgstr "funktion \"%s\" kan inte deklareras som \"mutable\""
+
+#: cp/parser.c:7086
+msgid "only constructors take base initializers"
msgstr ""
-#: parse.y:2356
-msgid "qualified name does not name a class"
+#: cp/parser.c:7137
+msgid "anachronistic old-style base class initializer"
msgstr ""
-#: parse.y:2417
-#, c-format
-msgid "storage class specifier `%s' not allowed after struct or class"
+#. Warn that we do not support `export'.
+#: cp/parser.c:7530
+#, fuzzy
+msgid "keyword `export' not implemented, and will be ignored"
+msgstr "nyckelordet \"export\" är inte implementerat och kommer ignorerads"
+
+#. Otherwise, emit an error about the invalid digraph, but continue
+#. parsing because we got our argument list.
+#: cp/parser.c:7890
+#, fuzzy
+msgid "`<::' cannot begin a template-argument list"
+msgstr "ogiltigt typargument"
+
+#: cp/parser.c:7891
+msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'"
msgstr ""
-#: parse.y:2419
-#, c-format
-msgid "type specifier `%s' not allowed after struct or class"
+#: cp/parser.c:7898
+msgid "(if you use `-fpermissive' G++ will accept your code)"
msgstr ""
-#: parse.y:2421
-#, c-format
-msgid "type qualifier `%s' not allowed after struct or class"
+#. Explain what went wrong.
+#: cp/parser.c:8070
+#, fuzzy
+msgid "non-template `%D' used as template"
+msgstr "deklaration av \"%s\" döljer global deklaration"
+
+#: cp/parser.c:8071
+msgid "(use `%T::template %D' to indicate that it is a template)"
msgstr ""
-#: parse.y:2423
-msgid "no body nor ';' separates two class, struct or union declarations"
+#: cp/parser.c:9000
+msgid "using `typename' outside of template"
msgstr ""
-#: parse.y:2553
-msgid "no bases given following `:'"
+#: cp/parser.c:9122
+msgid "expected type-name"
msgstr ""
-#: parse.y:2584 parse.y:2599
-msgid "`%D' access"
+#: cp/parser.c:9181
+#, fuzzy
+msgid "type attributes are honored only at type definition"
+msgstr "attributet \"%s\" fungerar bara på funktioner"
+
+#. [namespace.udecl]
+#.
+#. A using declaration shall not name a template-id.
+#: cp/parser.c:9565
+#, fuzzy
+msgid "a template-id may not appear in a using-declaration"
+msgstr "\"%s\" är inte i början av deklarationen"
+
+#: cp/parser.c:9891
+msgid "an asm-specification is not allowed on a function-definition"
msgstr ""
-#: parse.y:2589
-msgid "multiple access specifiers"
+#: cp/parser.c:9893
+#, fuzzy
+msgid "attributes are not allowed on a function-definition"
+msgstr "attributet \"%s\" fungerar bara på funktioner"
+
+#: cp/parser.c:10026
+msgid "attributes after parenthesized initializer ignored"
msgstr ""
-#: parse.y:2607
-msgid "multiple `virtual' specifiers"
+#: cp/parser.c:11223
+#, fuzzy
+msgid "file ends in default argument"
+msgstr "ogiltigt typargument till \"%s\""
+
+#: cp/parser.c:11279
+msgid "deprecated use of default argument for parameter of non-function"
msgstr ""
-#: parse.y:2644
-msgid "missing ';' before right brace"
-msgstr "saknar ';' före slutklammer"
+#: cp/parser.c:11282
+#, fuzzy
+msgid "default arguments are only permitted for function parameters"
+msgstr "metoder kan inte konverteras till funktionspekare"
+
+#: cp/parser.c:12007
+#, fuzzy
+msgid "declaration of `%D' in `%D' which does not enclose `%D'"
+msgstr "deklaration av \"%s\" som ett fält med funktioner"
-#: parse.y:2865
-msgid "ISO C++ forbids array dimensions with parenthesized type in new"
+#: cp/parser.c:12020
+msgid "extra qualification ignored"
msgstr ""
-#: parse.y:3152 parse.y:3172 parse.y:3181 parse.y:3210
-msgid "`%T' is not a class or namespace"
+#: cp/parser.c:12031
+#, fuzzy
+msgid "an explicit specialization must be preceded by 'template <>'"
+msgstr "implicit deklaration av funktion \"%s\""
+
+#: cp/parser.c:12311
+msgid "extra semicolon"
msgstr ""
-#: parse.y:3377
-msgid "ISO C++ forbids label declarations"
+#: cp/parser.c:12329
+msgid "a class-key must be used when declaring a friend"
msgstr ""
-#: parse.y:3537
-msgid "ISO C++ forbids computed gotos"
-msgstr "ISO C++ förbjuder beräknade goto"
+#: cp/parser.c:12360
+#, fuzzy
+msgid "friend declaration does not name a class or function"
+msgstr "inbyggd funktion \"%s\" deklarerad som icke-funktion"
-#: parse.y:3545
-msgid "label must be followed by statement"
+#: cp/parser.c:12531
+msgid "pure-specifier on function-definition"
msgstr ""
-#: parse.y:3590
-msgid "must have at least one catch per try block"
+#: cp/parser.c:12804
+msgid "keyword `typename' not allowed outside of templates"
msgstr ""
-#: parse.y:3650
-msgid "ISO C++ forbids compound statements inside for initializations"
+#: cp/parser.c:12806
+msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)"
msgstr ""
-#. This helps us recover from really nasty
-#. parse errors, for example, a missing right
-#. parenthesis.
-#: parse.y:3737 parse.y:3747
-msgid "possibly missing ')'"
-msgstr "saknas troligen en ')'"
+#: cp/parser.c:13624
+#, fuzzy
+msgid "reference to `%D' is ambiguous"
+msgstr "%s: flaggan \"%s\" är tvetydig\n"
+
+#: cp/parser.c:13798
+#, fuzzy
+msgid "too few template-parameter-lists"
+msgstr "två eller fler datatyper i deklaration av \"%s\""
+
+#. Otherwise, there are too many template parameter lists. We have
+#. something like:
+#.
+#. template <class T> template <class U> void S::f();
+#: cp/parser.c:13813
+#, fuzzy
+msgid "too many template-parameter-lists"
+msgstr "flera lagringsklasser i deklaration av \"%s\""
+
+#. If begin_function_definition didn't like the definition, skip
+#. the entire function.
+#: cp/parser.c:14090
+#, fuzzy
+msgid "invalid function declaration"
+msgstr "ogiltig #indent"
+
+#. Issue an error message.
+#: cp/parser.c:14127
+#, fuzzy
+msgid "named return values are no longer supported"
+msgstr "--driver stödjs inte längre"
-#: parse.y:3840
-msgid "type specifier omitted for parameter"
+#: cp/parser.c:14455
+msgid "`>>' should be `> >' within a nested template argument list"
msgstr ""
-#: parse.y:3849
-#, c-format
-msgid "`%E' is not a type, use `typename %E' to make it one"
+#. If this is not a nested template argument list, the '>>' is
+#. a typo for '>'. Emit an error message and continue.
+#: cp/parser.c:14463
+msgid "spurious `>>', use `>' to terminate a template argument list"
msgstr ""
-#: parse.y:3851
-#, fuzzy
-msgid "no type `%D' in `%T'"
-msgstr "returtypen på \"%s\" är inte \"int\""
+#: cp/parser.c:14950
+msgid "`%s' tag used in naming `%#T'"
+msgstr ""
-#: parse.y:3854
-#, fuzzy, c-format
-msgid "type specifier omitted for parameter `%E'"
-msgstr "lagringsklass angiven för parameter \"%s\""
+#: cp/parser.c:14970
+#, fuzzy
+msgid "%D redeclared with different access"
+msgstr "\"%s\" omdeklarerad som en annan sorts symbol"
-#: parse.y:3862
-msgid "'%D' is used as a type, but is not defined as a type."
+#: cp/parser.c:14987
+msgid "`template' (as a disambiguator) is only allowed within templates"
msgstr ""
-#: cp/pt.c:284
+#: cp/pt.c:243
msgid "data member `%D' cannot be a member template"
msgstr ""
-#: cp/pt.c:296
+#: cp/pt.c:255
#, fuzzy
msgid "invalid member template declaration `%D'"
msgstr "dubbel deklaration av etikett \"%s\""
-#: cp/pt.c:691
+#: cp/pt.c:637
msgid "explicit specialization in non-namespace scope `%D'"
msgstr ""
-#: cp/pt.c:703
+#: cp/pt.c:649
msgid "enclosing class templates are not explicitly specialized"
msgstr ""
-#: cp/pt.c:792 cp/pt.c:833
+#: cp/pt.c:739 cp/pt.c:780
msgid "specializing `%#T' in different namespace"
msgstr ""
-#: cp/pt.c:793 cp/pt.c:834
+#: cp/pt.c:740 cp/pt.c:781
#, fuzzy
msgid " from definition of `%#D'"
msgstr "omdefiniering av \"%s\""
-#: cp/pt.c:801
+#: cp/pt.c:748
#, fuzzy
msgid "specialization of `%T' after instantiation"
msgstr "deklaration av \"%s\" är \"extern\" och initierad"
-#: cp/pt.c:848
+#: cp/pt.c:795
#, fuzzy
msgid "specialization `%T' after instantiation `%T'"
msgstr "deklaration av \"%s\" är \"extern\" och initierad"
-#: cp/pt.c:860
+#: cp/pt.c:807
#, fuzzy
msgid "explicit specialization of non-template `%T'"
msgstr "implicit deklaration av funktion \"%s\""
-#: cp/pt.c:992
+#: cp/pt.c:1067
msgid "specialization of %D after instantiation"
msgstr ""
-#: cp/pt.c:1096
+#: cp/pt.c:1192
#, fuzzy
msgid "%s %+#D"
msgstr "%s: %s"
-#: cp/pt.c:1147
+#: cp/pt.c:1241
#, fuzzy
msgid "`%D' is not a function template"
msgstr "typkonvertering matchar inte en funktionstyp"
-#: cp/pt.c:1286
+#: cp/pt.c:1380
msgid "template-id `%D' for `%+D' does not match any template declaration"
msgstr ""
-#: cp/pt.c:1294
+#: cp/pt.c:1388
msgid "ambiguous template specialization `%D' for `%+D'"
msgstr ""
#. This case handles bogus declarations like template <>
#. template <class T> void f<int>();
-#: cp/pt.c:1521 cp/pt.c:1595
+#: cp/pt.c:1611 cp/pt.c:1685
msgid "template-id `%D' in declaration of primary template"
msgstr ""
-#: cp/pt.c:1534
+#: cp/pt.c:1624
msgid "template parameter list used in explicit instantiation"
msgstr ""
-#: cp/pt.c:1540
+#: cp/pt.c:1630
msgid "definition provided for explicit instantiation"
msgstr ""
-#: cp/pt.c:1546
+#: cp/pt.c:1636
#, fuzzy
msgid "too many template parameter lists in declaration of `%D'"
msgstr "flera lagringsklasser i deklaration av \"%s\""
-#: cp/pt.c:1562
+#: cp/pt.c:1652
#, fuzzy
msgid "too few template parameter lists in declaration of `%D'"
msgstr "två eller fler datatyper i deklaration av \"%s\""
-#: cp/pt.c:1579
+#: cp/pt.c:1669
msgid "explicit specialization not preceded by `template <>'"
msgstr ""
-#: cp/pt.c:1592
+#: cp/pt.c:1682
msgid "partial specialization `%D' of function template"
msgstr ""
-#: cp/pt.c:1624
+#: cp/pt.c:1714
msgid "default argument specified in explicit specialization"
msgstr ""
-#: cp/pt.c:1628
+#: cp/pt.c:1718
msgid "template specialization with C linkage"
msgstr ""
@@ -17263,108 +16650,116 @@ msgstr ""
#. program is ill-formed.
#.
#. Similar language is found in [temp.explicit].
-#: cp/pt.c:1715
+#: cp/pt.c:1802
msgid "specialization of implicitly-declared special member function"
msgstr ""
-#: cp/pt.c:1759
+#: cp/pt.c:1846
#, fuzzy
msgid "no member function `%D' declared in `%T'"
msgstr "nästlad funktion \"%s\" är deklarerad \"extern\""
#. There are two many template parameter lists.
-#: cp/pt.c:1909
+#: cp/pt.c:2001
#, fuzzy
msgid "too many template parameter lists in declaration of `%T'"
msgstr "flera lagringsklasser i deklaration av \"%s\""
-#: cp/pt.c:2005
+#: cp/pt.c:2094
msgid " shadows template parm `%#D'"
msgstr ""
-#: cp/pt.c:2409
+#: cp/pt.c:2491
msgid "template parameters not used in partial specialization:"
msgstr ""
-#: cp/pt.c:2413
+#: cp/pt.c:2495
msgid " `%D'"
msgstr ""
-#: cp/pt.c:2425
+#: cp/pt.c:2507
msgid "partial specialization `%T' does not specialize any template arguments"
msgstr ""
-#: cp/pt.c:2450
+#: cp/pt.c:2532
#, c-format
msgid "template argument `%E' involves template parameter(s)"
msgstr ""
-#: cp/pt.c:2494
+#: cp/pt.c:2576
msgid "type `%T' of template argument `%E' depends on template parameter(s)"
msgstr ""
-#: cp/pt.c:2582
+#: cp/pt.c:2661
#, fuzzy
msgid "no default argument for `%D'"
msgstr "ogiltigt typargument till \"%s\""
-#: cp/pt.c:2735
+#: cp/pt.c:2810
msgid "template with C linkage"
msgstr ""
-#: cp/pt.c:2738
+#: cp/pt.c:2813
msgid "template class without a name"
msgstr ""
-#: cp/pt.c:2815
+#. [temp.mem]
+#.
+#. A destructor shall not be a member template.
+#: cp/pt.c:2820
+#, fuzzy
+msgid "destructor `%D' declared as member template"
+msgstr "\"%s %s\" deklarerad inuti parameterlista"
+
+#: cp/pt.c:2900
msgid "`%D' does not declare a template type"
msgstr ""
-#: cp/pt.c:2821
+#: cp/pt.c:2906
#, fuzzy
msgid "template definition of non-template `%#D'"
msgstr "upprepad definition av klassmetod \"%s\"."
-#: cp/pt.c:2862
+#: cp/pt.c:2947
msgid "expected %d levels of template parms for `%#D', got %d"
msgstr ""
-#: cp/pt.c:2874
+#: cp/pt.c:2959
#, fuzzy
msgid "got %d template parameters for `%#D'"
msgstr "flera parametrar med namn \"%s\""
-#: cp/pt.c:2877
+#: cp/pt.c:2962
#, fuzzy
msgid "got %d template parameters for `%#T'"
msgstr "flera parametrar med namn \"%s\""
-#: cp/pt.c:2879
+#: cp/pt.c:2964
#, c-format
msgid " but %d required"
msgstr ""
-#: cp/pt.c:2962
+#: cp/pt.c:3042
#, fuzzy
msgid "`%T' is not a template type"
msgstr "\"%s\" har en inkomplett typ"
-#: cp/pt.c:2978
+#: cp/pt.c:3058
#, fuzzy
msgid "previous declaration `%D'"
msgstr "tidigare deklaration av \"%s\""
-#: cp/pt.c:2979
+#: cp/pt.c:3059
#, fuzzy, c-format
msgid "used %d template parameter%s instead of %d"
msgstr "flera parametrar med namn \"%s\""
-#: cp/pt.c:2995
+#: cp/pt.c:3075
#, fuzzy
msgid "template parameter `%#D'"
msgstr "oanvänd parameter \"%s\""
-#: cp/pt.c:2996
+#: cp/pt.c:3076
msgid "redeclared here as `%#D'"
msgstr ""
@@ -17372,749 +16767,773 @@ msgstr ""
#.
#. A template-parameter may not be given default arguments
#. by two different declarations in the same scope.
-#: cp/pt.c:3006
+#: cp/pt.c:3086
#, fuzzy
msgid "redefinition of default argument for `%#D'"
msgstr "omdefiniering av \"%s\""
-#: cp/pt.c:3007
+#: cp/pt.c:3087
#, fuzzy
-msgid " original definition appeared here"
+msgid "%J original definition appeared here"
msgstr "funktionsdefinition deklarerad som \"typedef\""
-#: cp/pt.c:3100
+#: cp/pt.c:3235
#, fuzzy, c-format
msgid "`%E' is not a valid template argument"
msgstr "ogiltigt typargument"
-#: cp/pt.c:3104
+#: cp/pt.c:3239
msgid "it must be the address of a function with external linkage"
msgstr ""
-#: cp/pt.c:3106
+#: cp/pt.c:3241
msgid "it must be the address of an object with external linkage"
msgstr ""
-#: cp/pt.c:3110
+#: cp/pt.c:3244
msgid "it must be a pointer-to-member of the form `&X::Y'"
msgstr ""
-#: cp/pt.c:3121
+#: cp/pt.c:3255
#, c-format
msgid "string literal %E is not a valid template argument because it is the address of an object with static linkage"
msgstr ""
-#: cp/pt.c:3133
+#: cp/pt.c:3270
#, c-format
msgid "address of non-extern `%E' cannot be used as template argument"
msgstr ""
-#: cp/pt.c:3144
+#: cp/pt.c:3279
#, fuzzy, c-format
msgid "non-constant `%E' cannot be used as template argument"
msgstr "const \"%s\" kan inte deklareras \"mutable\""
-#: cp/pt.c:3151
-#, c-format
-msgid "object `%E' cannot be used as template argument"
+#: cp/pt.c:3287
+msgid "type '%T' cannot be used as a value for a non-type template-parameter"
msgstr ""
-#: cp/pt.c:3526
+#: cp/pt.c:3290
+#, fuzzy
+msgid "invalid use of '%D' as a non-type template-argument"
+msgstr "ogiltigt typargument"
+
+#: cp/pt.c:3292
+#, fuzzy, c-format
+msgid "invalid use of '%E' as a non-type template-argument"
+msgstr "ogiltigt typargument"
+
+#: cp/pt.c:3657
#, c-format
msgid "to refer to a type member of a template parameter, use `typename %E'"
msgstr ""
-#: cp/pt.c:3539 cp/pt.c:3555 cp/pt.c:3594
+#: cp/pt.c:3670 cp/pt.c:3688 cp/pt.c:3727
msgid "type/value mismatch at argument %d in template parameter list for `%D'"
msgstr ""
-#: cp/pt.c:3542
+#: cp/pt.c:3673
msgid " expected a constant of type `%T', got `%T'"
msgstr ""
-#: cp/pt.c:3546
+#: cp/pt.c:3677
+#, fuzzy, c-format
+msgid " expected a class template, got `%E'"
+msgstr "Oväntad typ på \"id\" (%s)"
+
+#: cp/pt.c:3679
#, fuzzy, c-format
msgid " expected a type, got `%E'"
msgstr "Oväntad typ på \"id\" (%s)"
-#: cp/pt.c:3558
+#: cp/pt.c:3691
#, fuzzy
msgid " expected a type, got `%T'"
msgstr "Oväntad typ på \"id\" (%s)"
-#: cp/pt.c:3560
+#: cp/pt.c:3693
msgid " expected a class template, got `%T'"
msgstr ""
-#: cp/pt.c:3596
+#: cp/pt.c:3729
msgid " expected a template of type `%D', got `%D'"
msgstr ""
-#: cp/pt.c:3618
-msgid "template-argument `%T' uses anonymous type"
-msgstr ""
-
-#: cp/pt.c:3621
-msgid "template-argument `%T' uses local type `%T'"
-msgstr ""
-
-#: cp/pt.c:3631
-#, fuzzy
-msgid "template-argument `%T' is a variably modified type"
-msgstr "parameter \"%s\" är initierad"
-
-#: cp/pt.c:3666
+#: cp/pt.c:3764
msgid "could not convert template argument `%E' to `%T'"
msgstr ""
-#: cp/pt.c:3710
+#: cp/pt.c:3804
#, c-format
msgid "wrong number of template arguments (%d, should be %d)"
msgstr ""
-#: cp/pt.c:3714
+#: cp/pt.c:3808
#, fuzzy
msgid "provided for `%D'"
msgstr "destruerare behövs för \"%#D\""
-#: cp/pt.c:3761
+#: cp/pt.c:3836
#, fuzzy, c-format
msgid "template argument %d is invalid"
msgstr "parameter \"%s\" är initierad"
-#: cp/pt.c:3997
+#: cp/pt.c:4057
msgid "non-template used as template"
msgstr ""
-#: cp/pt.c:4139
-#, fuzzy
-msgid "`%T' is not a template"
-msgstr "användning ab `%s' i mall"
-
-#: cp/pt.c:4152
+#: cp/pt.c:4197
msgid "non-template type `%T' used as a template"
msgstr ""
-#: cp/pt.c:4154
+#: cp/pt.c:4199
#, fuzzy
msgid "for template declaration `%D'"
msgstr "tom deklaration"
-#: cp/pt.c:4770
+#: cp/pt.c:4846
msgid "template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN to increase the maximum) instantiating `%D'"
msgstr ""
-#: cp/pt.c:5247
+#: cp/pt.c:5286
#, fuzzy
msgid "ambiguous class template instantiation for `%#T'"
msgstr "Slå på automatisk mallinstansiering"
-#: cp/pt.c:5254
+#: cp/pt.c:5292
#, fuzzy
msgid "%s %+#T"
msgstr "%s: %s"
-#: cp/pt.c:6284 cp/pt.c:6396
+#: cp/pt.c:6291 cp/pt.c:6411
#, fuzzy
msgid "instantiation of `%D' as type `%T'"
msgstr "%s: Vid instansiering av \"%s\":\n"
-#: cp/pt.c:6440
+#: cp/pt.c:6453
#, fuzzy
msgid "invalid parameter type `%T'"
msgstr "ogiltigt parametervärde \"%s\""
-#: cp/pt.c:6442
+#: cp/pt.c:6455
#, fuzzy
msgid "in declaration `%D'"
msgstr "omdeklaration av \"%s\""
-#: cp/pt.c:6517
+#: cp/pt.c:6529
msgid "creating pointer to member function of non-class type `%T'"
msgstr ""
-#: cp/pt.c:6680
+#: cp/pt.c:6668
msgid "creating array with size zero"
msgstr "skapar ett fält med storlek noll"
-#: cp/pt.c:6694
+#: cp/pt.c:6682
#, fuzzy, c-format
msgid "creating array with size zero (`%E')"
msgstr "skapar ett fält med storlek noll"
-#: cp/pt.c:6933
+#: cp/pt.c:6921
#, fuzzy
msgid "forming reference to void"
msgstr "returnerar referens till en temporär"
-#: cp/pt.c:6935
+#: cp/pt.c:6923
msgid "forming %s to reference type `%T'"
msgstr ""
-#: cp/pt.c:6973
+#: cp/pt.c:6960
msgid "creating pointer to member of non-class type `%T'"
msgstr ""
-#: cp/pt.c:6979
+#: cp/pt.c:6966
msgid "creating pointer to member reference type `%T'"
msgstr ""
-#: cp/pt.c:7057
+#: cp/pt.c:7052
#, fuzzy
msgid "creating array of `%T'"
msgstr "skapar ett fält med storlek noll"
-#: cp/pt.c:7100
+#: cp/pt.c:7058
+msgid "creating array of `%T', which is an abstract class type"
+msgstr ""
+
+#: cp/pt.c:7102
msgid "`%T' is not a class, struct, or union type"
msgstr ""
-#: cp/pt.c:7213
+#: cp/pt.c:7215
#, c-format
msgid "use of `%s' in template"
msgstr "användning ab `%s' i mall"
-#: cp/pt.c:7975
-msgid "type `%T' composed from a local class is not a valid template-argument"
+#: cp/pt.c:7327
+#, c-format
+msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type"
msgstr ""
-#: cp/pt.c:7976
+#: cp/pt.c:7329
+#, c-format
+msgid "say `typename %E' if a type is meant"
+msgstr ""
+
+#: cp/pt.c:8586
+msgid "`%T' uses anonymous type"
+msgstr ""
+
+#: cp/pt.c:8588
+#, fuzzy
+msgid "`%T' uses local type `%T'"
+msgstr "\"%s\" svarar inte på \"%s\""
+
+#: cp/pt.c:8596
+#, fuzzy
+msgid "`%T' is a variably modified type"
+msgstr "\"%s\" har en inkomplett typ"
+
+#: cp/pt.c:8607
+#, fuzzy, c-format
+msgid "integral expression `%E' is not constant"
+msgstr "lagringsstorlek på \"%s\" är inte konstant"
+
+#: cp/pt.c:8612
msgid " trying to instantiate `%D'"
msgstr ""
-#: cp/pt.c:8421
+#: cp/pt.c:9125
msgid "incomplete type unification"
msgstr "inkomplett typunifiering"
-#: cp/pt.c:9387
+#: cp/pt.c:10072
#, c-format
msgid "use of `%s' in template type unification"
msgstr ""
-#: cp/pt.c:9821 cp/pt.c:9893
+#: cp/pt.c:10506 cp/pt.c:10578
msgid "explicit instantiation of non-template `%#D'"
msgstr ""
-#: cp/pt.c:9837 cp/pt.c:9888
+#: cp/pt.c:10522 cp/pt.c:10573
msgid "no matching template for `%D' found"
msgstr ""
-#: cp/pt.c:9843
+#: cp/pt.c:10528
#, fuzzy
msgid "explicit instantiation of `%#D'"
msgstr "%s: Vid instansiering av \"%s\":\n"
-#: cp/pt.c:9880
+#: cp/pt.c:10565
#, fuzzy
msgid "duplicate explicit instantiation of `%#D'"
msgstr "dubbel deklaration av etikett \"%s\""
-#: cp/pt.c:9905
+#: cp/pt.c:10587
msgid "ISO C++ forbids the use of `extern' on explicit instantiations"
msgstr ""
-#: cp/pt.c:9909 cp/pt.c:9999
+#: cp/pt.c:10591 cp/pt.c:10672
#, fuzzy
msgid "storage class `%D' applied to template instantiation"
msgstr "Slå på automatisk mallinstansiering"
-#: cp/pt.c:9966
+#: cp/pt.c:10644
msgid "explicit instantiation of non-template type `%T'"
msgstr ""
-#: cp/pt.c:9980
+#: cp/pt.c:10653
msgid "explicit instantiation of `%#T' before definition of template"
msgstr ""
-#: cp/pt.c:9988
+#: cp/pt.c:10661
#, c-format
msgid "ISO C++ forbids the use of `%s' on explicit instantiations"
msgstr ""
-#: cp/pt.c:10032
+#: cp/pt.c:10705
#, fuzzy
msgid "duplicate explicit instantiation of `%#T'"
msgstr "dubbel deklaration av etikett \"%s\""
-#: cp/pt.c:10412
+#: cp/pt.c:11086
msgid "explicit instantiation of `%D' but no definition available"
msgstr ""
-#: cp/pt.c:10815
+#: cp/pt.c:11520
msgid "`%#T' is not a valid type for a template constant parameter"
msgstr ""
-#: cp/repo.c:271
+#: cp/repo.c:259
msgid "-frepo must be used with -c"
msgstr "-frepo måste användas tillsammans med -c"
-#: cp/repo.c:361
+#: cp/repo.c:346
#, c-format
msgid "mysterious repository information in %s"
msgstr ""
-#: cp/repo.c:376
+#: cp/repo.c:361
#, c-format
msgid "can't create repository information file `%s'"
msgstr ""
-#: cp/rtti.c:240
+#: cp/rtti.c:248
msgid "cannot use typeid with -fno-rtti"
msgstr "kan inte använda typeid med -fno-rtti"
-#: cp/rtti.c:246
+#: cp/rtti.c:254
msgid "must #include <typeinfo> before using typeid"
msgstr "måste ha#include <typeinfo> för användande av typeid"
-#: cp/rtti.c:320
+#: cp/rtti.c:326
msgid "cannot create type information for type `%T' because its size is variable"
msgstr ""
-#: cp/rtti.c:584 cp/rtti.c:598
+#: cp/rtti.c:580 cp/rtti.c:594
msgid "dynamic_cast of `%#D' to `%#T' can never succeed"
msgstr ""
-#: cp/rtti.c:674
+#: cp/rtti.c:675
msgid "cannot dynamic_cast `%E' (of type `%#T') to type `%#T' (%s)"
msgstr ""
-#: cp/search.c:332
+#: cp/search.c:306
msgid "`%T' is an ambiguous base of `%T'"
msgstr ""
-#: cp/search.c:350
+#: cp/search.c:324
msgid "`%T' is an inaccessible base of `%T'"
msgstr ""
-#. At parse time, we don't want to give this error, since
-#. we won't have enough state to make this kind of
-#. decision properly. But there are times (e.g., with
-#. enums in nested classes) when we do need to call
-#. this fn at parse time. So, in those cases, we pass
-#. complain as a 0 and just return a NULL_TREE.
-#: cp/search.c:1638
-msgid "assignment to non-static member `%D' of enclosing class `%T'"
-msgstr ""
-
-#: cp/search.c:2050
-msgid "adjusting pointers for covariant returns"
-msgstr ""
-
-#: cp/search.c:2054 cp/search.c:2061
+#: cp/search.c:1756
#, fuzzy
msgid "invalid covariant return type for `%#D'"
msgstr "ogiltig mottagartyp \"%s\""
-#: cp/search.c:2055
-msgid " overriding `%#D' (must be pointer or reference to class)"
-msgstr ""
-
-#: cp/search.c:2062
-msgid " overriding `%#D' (must use pointer or reference)"
+#: cp/search.c:1757 cp/search.c:1763
+msgid " overriding `%#D'"
msgstr ""
-#: cp/search.c:2067
+#: cp/search.c:1761
#, fuzzy
msgid "conflicting return type specified for `%#D'"
msgstr "motstridiga typer på \"%s\""
-#: cp/search.c:2068
-msgid " overriding `%#D'"
-msgstr ""
-
-#: cp/search.c:2077
+#: cp/search.c:1775
#, fuzzy, c-format
msgid "looser throw specifier for `%#F'"
msgstr "long eller short angiven med char för \"%s\""
-#: cp/search.c:2078
+#: cp/search.c:1776
#, c-format
msgid " overriding `%#F'"
msgstr ""
#. A static member function cannot match an inherited
#. virtual member function.
-#: cp/search.c:2167
+#: cp/search.c:1866
#, fuzzy
msgid "`%#D' cannot be declared"
msgstr "const \"%s\" kan inte deklareras \"mutable\""
-#: cp/search.c:2168
+#: cp/search.c:1867
msgid " since `%#D' declared in base class"
msgstr ""
-#: cp/search.c:2309
+#: cp/search.c:1944
msgid "`%#D' needs a final overrider"
msgstr ""
-#: cp/semantics.c:919
+#: cp/semantics.c:1092
#, fuzzy, c-format
msgid "type of asm operand `%E' could not be determined"
msgstr "typen på parameter \"%s\" är inte deklarerad"
-#: cp/semantics.c:1051
-msgid "ISO C++ does not permit named return values"
-msgstr ""
+#: cp/semantics.c:1233
+#, fuzzy
+msgid "invalid use of member `%D' in static member function"
+msgstr "destruerare kan inte vara en statisk medlemsfunktion"
-#: cp/semantics.c:1060
-msgid "return identifier `%D' already in place"
+#: cp/semantics.c:1237 cp/semantics.c:1276
+msgid "from this location"
msgstr ""
-#: cp/semantics.c:1068
-msgid "can't redefine default return value for constructors"
-msgstr ""
+#: cp/semantics.c:1275
+#, fuzzy
+msgid "object missing in reference to `%D'"
+msgstr "kan inte inline:a anrop till \"%s\""
-#: cp/semantics.c:1100
-msgid "only constructors take base initializers"
-msgstr ""
+#: cp/semantics.c:1721
+#, fuzzy
+msgid "arguments to destructor are not allowed"
+msgstr "kan inte sätta attributet \"%s\" efter definitionen"
-#: cp/semantics.c:1343
+#: cp/semantics.c:1769
msgid "`this' is unavailable for static member functions"
msgstr ""
-#: cp/semantics.c:1349
+#: cp/semantics.c:1775
msgid "invalid use of `this' in non-member function"
msgstr ""
-#: cp/semantics.c:1351
+#: cp/semantics.c:1777
msgid "invalid use of `this' at top level"
msgstr ""
-#: cp/semantics.c:1381
-msgid "calling type `%T' like a method"
-msgstr ""
-
-#: cp/semantics.c:1419
-msgid "destructor specifier `%T::~%T()' must have matching names"
-msgstr ""
+#: cp/semantics.c:1801
+#, fuzzy
+msgid "invalid qualifying scope in pseudo-destructor name"
+msgstr "ogiltigt format på versionsnummer"
-#: cp/semantics.c:1425
+#: cp/semantics.c:1807
#, fuzzy
msgid "`%E' is not of type `%T'"
msgstr "\"%s\" svarar inte på \"%s\""
-#: cp/semantics.c:1613
+#: cp/semantics.c:1918
msgid "template type parameters must use the keyword `class' or `typename'"
msgstr ""
-#: cp/semantics.c:1652
-msgid "invalid default template argument"
-msgstr ""
+#: cp/semantics.c:1962
+#, fuzzy
+msgid "invalid use of type `%T' as a default value for a template template-parameter"
+msgstr "ogiltigt typargument"
+
+#: cp/semantics.c:1965
+#, fuzzy
+msgid "invalid use of `%D' as a default value for a template template-parameter"
+msgstr "ogiltigt typargument"
+
+#: cp/semantics.c:1969
+#, fuzzy
+msgid "invalid default argument for a template template parameter"
+msgstr "ogiltigt typargument"
-#: cp/semantics.c:1694
+#: cp/semantics.c:2004
#, fuzzy
msgid "definition of `%#T' inside template parameter list"
msgstr "deklaration av \"%s\" döljer symbol från parameterlista"
-#: cp/semantics.c:1710
+#: cp/semantics.c:2015
#, fuzzy
msgid "invalid definition of qualified type `%T'"
msgstr "ogiltig operation på oinstansierad typ"
-#: cp/semantics.c:2053
+#: cp/semantics.c:2030
+#, fuzzy
+msgid "previous definition of `%#T'"
+msgstr "omdefiniering av \"%s\""
+
+#: cp/semantics.c:2225
#, fuzzy
msgid "invalid base-class specification"
msgstr "ogiltig lagringsklass för funktion \"%s\""
-#: cp/semantics.c:2062
+#: cp/semantics.c:2234
msgid "base class `%T' has cv qualifiers"
msgstr ""
-#: cp/semantics.c:2093
+#: cp/semantics.c:2266
#, fuzzy
msgid "multiple declarators in template declaration"
msgstr "flera lagringsklasser i deklaration av \"%s\""
-#: cp/semantics.c:2120
-#, fuzzy, c-format
-msgid "type of `%E' is unknown"
-msgstr "Register '%c' är okänt"
-
-#: cp/spew.c:225
-#, c-format
-msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
+#: cp/semantics.c:2277
+msgid "incomplete type `%T' used in nested name specifier"
msgstr ""
-#: cp/spew.c:1002 cp/spew.c:1340
-msgid "parse error at end of saved function text"
-msgstr ""
+#: cp/semantics.c:2279 cp/typeck.c:1616
+#, fuzzy
+msgid "`%D' is not a member of `%T'"
+msgstr "%s har ingen medlem med namn \"%s\""
-#: cp/spew.c:1090 cp/spew.c:1178
-msgid "%Hend of file read inside definition"
-msgstr ""
+#: cp/semantics.c:2282
+#, fuzzy
+msgid "`%D' is not a member of `%D'"
+msgstr "%s har ingen medlem med namn \"%s\""
-#: cp/spew.c:1121
-msgid "parse error in method specification"
+#: cp/semantics.c:2400
+msgid "template parameter `%D' of type `%T' is not allowed in an integral constant expression because it is not of integral or enumeration type"
msgstr ""
-#: cp/spew.c:1161
-msgid "function body for constructor missing"
-msgstr "funktionskroppen för konstrueraren saknas"
+#: cp/semantics.c:2553
+#, fuzzy
+msgid "`%D' cannot appear in a constant-expression"
+msgstr "storlek på fält \"%s\" är inte av heltalstyp"
-#: cp/spew.c:1262
-msgid "%Hend of file read inside default argument"
+#: cp/semantics.c:2562
+msgid "use of namespace `%D' as expression"
msgstr ""
-#: cp/spew.c:1419
-msgid "circular dependency in default args of `%#D'"
+#: cp/semantics.c:2567
+msgid "use of class template `%T' as expression"
msgstr ""
-#: cp/spew.c:1483
-#, fuzzy
-msgid "invalid type `%T' for default argument to `%T'"
-msgstr "ogiltigt typargument till \"%s\""
-
-#: cp/spew.c:1548
-#, c-format
-msgid "%s before `%s'"
-msgstr "%s före \"%s\""
+#. Ambiguous reference to base members.
+#: cp/semantics.c:2573
+msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
+msgstr ""
-#: cp/spew.c:1550
+#: cp/semantics.c:2633
#, c-format
-msgid "%s before `%c'"
-msgstr "%s före \"%c\""
+msgid "use of %s from containing function"
+msgstr ""
-#: cp/spew.c:1552
-#, c-format
-msgid "%s before `\\%o'"
-msgstr "%s före \"\\%o\""
+#: cp/semantics.c:2636
+#, fuzzy
+msgid " `%#D' declared here"
+msgstr "\"%s\" är tidigare deklarerad här"
-#: cp/spew.c:1555
-#, c-format
-msgid "%s before `%s' token"
-msgstr "%s före symbolen \"%s\""
+#: cp/semantics.c:2687
+#, fuzzy, c-format
+msgid "type of `%E' is unknown"
+msgstr "Register '%c' är okänt"
-#: cp/tree.c:263 cp/tree.c:275
+#: cp/tree.c:222
#, c-format
msgid "non-lvalue in %s"
msgstr "icke-lvalue i %s"
-#: cp/tree.c:562
+#: cp/tree.c:539
#, fuzzy
msgid "`%V' qualifiers cannot be applied to `%T'"
msgstr "\"%s\" svarar inte på \"%s\""
-#: cp/tree.c:1941
+#: cp/tree.c:1830
#, fuzzy, c-format
msgid "`%s' attribute can only be applied to Java class definitions"
msgstr "attributet \"%s\" fungerar bara på funktioner"
-#: cp/tree.c:1971
+#: cp/tree.c:1859
#, fuzzy, c-format
msgid "`%s' attribute can only be applied to class definitions"
msgstr "attributet \"%s\" fungerar bara på funktioner"
-#: cp/tree.c:1977
+#: cp/tree.c:1865
#, c-format
msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default"
msgstr ""
-#: cp/tree.c:2002
+#: cp/tree.c:1889
msgid "requested init_priority is not an integer constant"
msgstr ""
-#: cp/tree.c:2023
+#: cp/tree.c:1910
#, c-format
msgid "can only use `%s' attribute on file-scope definitions of objects of class type"
msgstr ""
-#: cp/tree.c:2031
+#: cp/tree.c:1918
msgid "requested init_priority is out of range"
msgstr ""
-#: cp/tree.c:2041
+#: cp/tree.c:1928
msgid "requested init_priority is reserved for internal use"
msgstr ""
-#: cp/tree.c:2051
+#: cp/tree.c:1938
#, fuzzy, c-format
msgid "`%s' attribute is not supported on this platform"
msgstr "attributet \"section\" stöds inte för denna målarkitektur"
-#: cp/tree.c:2588
+#: cp/tree.c:2459
#, c-format
msgid "lang_* check: failed in %s, at %s:%d"
msgstr ""
-#: cp/typeck.c:524
-#, c-format
-msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
+#: cp/typeck.c:438 cp/typeck.c:453 cp/typeck.c:543
+msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
msgstr ""
-#: cp/typeck.c:545
-msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+#: cp/typeck.c:513
+#, c-format
+msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
msgstr ""
-#: cp/typeck.c:1436
-msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
+#: cp/typeck.c:563
+msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast"
msgstr ""
-#: cp/typeck.c:1514
+#: cp/typeck.c:1235
#, fuzzy, c-format
msgid "invalid application of `%s' to a member function"
msgstr "destruerare kan inte vara en statisk medlemsfunktion"
-#: cp/typeck.c:1520
+#: cp/typeck.c:1268
#, fuzzy, c-format
-msgid "invalid application of `%s' to non-static member"
-msgstr "\"sizeof\" applicerat på ett bitfält"
-
-#: cp/typeck.c:1538
-msgid "sizeof applied to a bit-field"
+msgid "invalid application of `%s' to a bit-field"
msgstr "sizeof applicerat på ett bit-fält"
-#: cp/typeck.c:1541
-msgid "ISO C++ forbids applying `sizeof' to an expression of function type"
+#: cp/typeck.c:1273
+#, fuzzy, c-format
+msgid "ISO C++ forbids applying `%s' to an expression of function type"
msgstr "ISO C++ förbjuder användning av \"sizeof\" på ett uttryck av funktionstyp"
-#: cp/typeck.c:1759
+#: cp/typeck.c:1342
+#, fuzzy
+msgid "invalid use of non-static member function"
+msgstr "destruerare kan inte vara en statisk medlemsfunktion"
+
+#: cp/typeck.c:1476
msgid "deprecated conversion from string constant to `%T'"
msgstr ""
-#: cp/typeck.c:1890 cp/typeck.c:2122
+#: cp/typeck.c:1587 cp/typeck.c:1874
msgid "request for member `%D' in `%E', which is of non-class type `%T'"
msgstr ""
-#: cp/typeck.c:1916
-#, fuzzy
-msgid "`%D' is not a member of `%T'"
-msgstr "%s har ingen medlem med namn \"%s\""
+#: cp/typeck.c:1614
+#, fuzzy, c-format
+msgid "invalid use of nonstatic data member '%E'"
+msgstr "ogiltigt användande av \"restrict\""
-#: cp/typeck.c:1957 cp/typeck.c:1978
+#: cp/typeck.c:1666 cp/typeck.c:1688
#, fuzzy
msgid "invalid access to non-static data member `%D' of NULL object"
msgstr "ogiltigt användande av \"restrict\""
-#: cp/typeck.c:1959 cp/typeck.c:1980
+#: cp/typeck.c:1668 cp/typeck.c:1690
msgid "(perhaps the `offsetof' macro was used incorrectly)"
msgstr ""
-#: cp/typeck.c:2168
+#: cp/typeck.c:1804
+msgid "the type being destroyed is '%T', but the destructor refers to `%T'"
+msgstr ""
+
+#: cp/typeck.c:1924
#, fuzzy
msgid "`%D::%D' is not a member of `%T'"
msgstr "%s har ingen medlem med namn \"%s\""
-#: cp/typeck.c:2179
+#: cp/typeck.c:1935
#, fuzzy
msgid "`%T' is not a base of `%T'"
msgstr "%s har ingen medlem med namn \"%s\""
-#: cp/typeck.c:2199
-msgid "destructor specifier `%T::~%T' must have matching names"
-msgstr ""
-
-#: cp/typeck.c:2205
-msgid "type `%T' has no destructor"
-msgstr ""
+#: cp/typeck.c:1954
+#, fuzzy
+msgid "'%D' has no member named '%E'"
+msgstr "%s har ingen medlem med namn \"%s\""
-#: cp/typeck.c:2244
+#: cp/typeck.c:1969
#, fuzzy
msgid "`%D' is not a member template function"
msgstr "\"%s\" är vanligtvis en funktion"
#. A pointer to incomplete type (other than cv void) can be
#. dereferenced [expr.unary.op]/1
-#: cp/typeck.c:2338
+#: cp/typeck.c:2075
msgid "`%T' is not a pointer-to-object type"
msgstr ""
-#: cp/typeck.c:2365
+#: cp/typeck.c:2100
#, c-format
msgid "invalid use of `%s' on pointer to member"
msgstr ""
-#: cp/typeck.c:2371
+#: cp/typeck.c:2106
msgid "invalid type argument"
msgstr "ogiltigt typargument"
-#: cp/typeck.c:2474
+#: cp/typeck.c:2212
msgid "ISO C++ forbids subscripting non-lvalue array"
msgstr ""
-#: cp/typeck.c:2485
+#: cp/typeck.c:2223
msgid "subscripting array declared `register'"
msgstr ""
-#: cp/typeck.c:2570
+#: cp/typeck.c:2306
#, fuzzy, c-format
msgid "object missing in use of `%E'"
msgstr "fältstorlek saknas i \"%s\""
-#: cp/typeck.c:2674
+#: cp/typeck.c:2408
msgid "ISO C++ forbids calling `::main' from within program"
msgstr "ISO C++ förbjuder anrop av \"::main\" inifrån programmet"
-#: cp/typeck.c:2699
+#: cp/typeck.c:2433
#, c-format
msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'"
msgstr ""
-#: cp/typeck.c:2712
+#: cp/typeck.c:2446
#, fuzzy, c-format
msgid "`%E' cannot be used as a function"
msgstr "fält \"%s\" deklarerad som en funktion"
-#: cp/typeck.c:2824
+#: cp/typeck.c:2539
#, fuzzy
msgid "too many arguments to %s `%+#D'"
msgstr "för många argument till funktionen \"%s\""
-#: cp/typeck.c:2865
-msgid "parameter type of called function is incomplete"
+#: cp/typeck.c:2541 cp/typeck.c:2647
+msgid "at this point in file"
msgstr ""
-#: cp/typeck.c:2928
+#: cp/typeck.c:2578
+#, fuzzy
+msgid "parameter %P of `%D' has incomplete type `%T'"
+msgstr "parameter \"%s\" har en inkomplett typ"
+
+#: cp/typeck.c:2581
+#, fuzzy
+msgid "parameter %P has incomplete type `%T'"
+msgstr "parameter har en inkomplett typ"
+
+#: cp/typeck.c:2645
#, fuzzy
msgid "too few arguments to %s `%+#D'"
msgstr "för få argument till funktionen \"%s\""
-#: cp/typeck.c:3056 cp/typeck.c:3066
+#: cp/typeck.c:2790 cp/typeck.c:2800
msgid "assuming cast to type `%T' from overloaded function"
msgstr ""
-#: cp/typeck.c:3126
+#: cp/typeck.c:2861
#, c-format
msgid "division by zero in `%E / 0'"
msgstr ""
-#: cp/typeck.c:3128
+#: cp/typeck.c:2863
#, c-format
msgid "division by zero in `%E / 0.'"
msgstr ""
-#: cp/typeck.c:3158
+#: cp/typeck.c:2892
#, c-format
msgid "division by zero in `%E %% 0'"
msgstr ""
-#: cp/typeck.c:3160
+#: cp/typeck.c:2894
#, c-format
msgid "division by zero in `%E %% 0.'"
msgstr ""
-#: cp/typeck.c:3240
+#: cp/typeck.c:2974
#, c-format
msgid "%s rotate count is negative"
msgstr ""
-#: cp/typeck.c:3243
+#: cp/typeck.c:2977
#, c-format
msgid "%s rotate count >= width of type"
msgstr ""
-#: cp/typeck.c:3274 cp/typeck.c:3279 cp/typeck.c:3370 cp/typeck.c:3375
+#: cp/typeck.c:3011 cp/typeck.c:3016 cp/typeck.c:3107 cp/typeck.c:3112
msgid "ISO C++ forbids comparison between pointer and integer"
msgstr "ISO C++ förbjuder jämförelse mellan pekare och heltal"
-#: cp/typeck.c:3553
+#: cp/typeck.c:3293
#, fuzzy
msgid "comparison between types `%#T' and `%#T'"
msgstr "jämförelse mellan pekare och heltal"
-#: cp/typeck.c:3589
+#: cp/typeck.c:3329
msgid "comparison between signed and unsigned integer expressions"
msgstr ""
-#: cp/typeck.c:3654
+#: cp/typeck.c:3394
#, fuzzy
msgid "invalid operands of types `%T' and `%T' to binary `%O'"
msgstr "ogiltiga operander till binär %s"
@@ -18123,789 +17542,615 @@ msgstr "ogiltiga operander till binär %s"
#. performed. Note that pointer-difference and pointer-addition
#. have already been handled above, and so we don't end up here in
#. that case.
-#: cp/typeck.c:3676
+#: cp/typeck.c:3416
#, fuzzy
msgid "NULL used in arithmetic"
msgstr "pekare till funktion använd med aritmetik"
-#: cp/typeck.c:3743
+#: cp/typeck.c:3479
msgid "ISO C++ forbids using pointer of type `void *' in subtraction"
msgstr ""
-#: cp/typeck.c:3745
+#: cp/typeck.c:3481
msgid "ISO C++ forbids using pointer to a function in subtraction"
msgstr ""
-#: cp/typeck.c:3747
+#: cp/typeck.c:3483
msgid "ISO C++ forbids using pointer to a method in subtraction"
msgstr ""
-#: cp/typeck.c:3749
-msgid "ISO C++ forbids using pointer to a member in subtraction"
-msgstr ""
-
-#: cp/typeck.c:3761
+#: cp/typeck.c:3495
msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
msgstr ""
-#: cp/typeck.c:3821
+#: cp/typeck.c:3550
#, c-format
msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id."
msgstr ""
-#: cp/typeck.c:3827
+#: cp/typeck.c:3556
#, c-format
msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function"
msgstr ""
-#: cp/typeck.c:3850
+#: cp/typeck.c:3578
msgid "taking address of temporary"
msgstr "tar adress till något temporärt"
-#: cp/typeck.c:4091
+#: cp/typeck.c:3813
#, c-format
msgid "ISO C++ forbids %sing an enum"
msgstr ""
-#: cp/typeck.c:4103
+#: cp/typeck.c:3824
#, fuzzy
msgid "cannot %s a pointer to incomplete type `%T'"
msgstr "parameter \"%s\" pekar på inkomplett typ"
-#: cp/typeck.c:4110
+#: cp/typeck.c:3830
#, fuzzy
msgid "ISO C++ forbids %sing a pointer of type `%T'"
msgstr "ISO C++ förbjuder användning av pekare av typ \"void *\" i pekararitmetik"
-#: cp/typeck.c:4135
+#: cp/typeck.c:3855
msgid "cast to non-reference type used as lvalue"
msgstr ""
-#: cp/typeck.c:4169
+#: cp/typeck.c:3889
msgid "invalid use of `--' on bool variable `%D'"
msgstr ""
#. ARM $3.4
-#: cp/typeck.c:4202
+#: cp/typeck.c:3920
msgid "ISO C++ forbids taking address of function `::main'"
msgstr "ISO C++ förbjuder att man tar adressen till funktionen \"::main\""
#. An expression like &memfn.
-#: cp/typeck.c:4269
-msgid "ISO C++ forbids taking the address of an unqualified non-static member function to form a pointer to member function. Say `&%T::%D'"
-msgstr ""
+#: cp/typeck.c:3991
+#, fuzzy
+msgid "ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function. Say `&%T::%D'"
+msgstr "ISO C++ förbjuder användning av pekare till medlemsfunktion i pekararitmetik"
-#: cp/typeck.c:4271
+#: cp/typeck.c:3996
#, fuzzy
msgid "ISO C++ forbids taking the address of a bound member function to form a pointer to member function. Say `&%T::%D'"
msgstr "ISO C++ förbjuder användning av pekare till medlemsfunktion i pekararitmetik"
-#: cp/typeck.c:4295
+#: cp/typeck.c:4024
msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression"
msgstr ""
-#: cp/typeck.c:4324
+#: cp/typeck.c:4040
+msgid "unary `&'"
+msgstr "unärt \"&\""
+
+#: cp/typeck.c:4069
#, fuzzy
msgid "attempt to take address of bit-field structure member `%D'"
msgstr "kan inte ta adressen till bitfält \"%s\""
-#: cp/typeck.c:4444
+#: cp/typeck.c:4183
#, fuzzy
msgid "taking address of destructor"
msgstr "tar adress till något temporärt"
-#: cp/typeck.c:4457
+#: cp/typeck.c:4196
msgid "taking address of bound pointer-to-member expression"
msgstr ""
-#: cp/typeck.c:4473
+#: cp/typeck.c:4204
#, fuzzy
msgid "cannot create pointer to reference member `%D'"
msgstr "kan inte deklarera pekare till referenser"
-#: cp/typeck.c:4536
+#: cp/typeck.c:4266
msgid "cannot take the address of `this', which is an rvalue expression"
msgstr "Kan inte ta adressen till \"this\", som är ett rvalue-uttryck"
-#: cp/typeck.c:4555
+#: cp/typeck.c:4285
msgid "address requested for `%D', which is declared `register'"
msgstr ""
-#: cp/typeck.c:4682
-msgid "static_cast from type `%T' to type `%T' casts away constness"
+#: cp/typeck.c:4353
+#, fuzzy, c-format
+msgid "%s expression list treated as compound expression"
+msgstr "uttryckssats har inkomplett typ"
+
+#: cp/typeck.c:4426
+msgid "%s from type `%T' to type `%T' casts away constness"
msgstr ""
-#: cp/typeck.c:4871
+#: cp/typeck.c:4618
msgid "invalid static_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4910
+#: cp/typeck.c:4658
msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4930
+#: cp/typeck.c:4678
msgid "reinterpret_cast from `%T' to `%T' loses precision"
msgstr ""
-#: cp/typeck.c:4943
-msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
-msgstr ""
-
-#: cp/typeck.c:4952
+#: cp/typeck.c:4697
msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object"
msgstr ""
-#: cp/typeck.c:4958
+#: cp/typeck.c:4703
msgid "invalid reinterpret_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:4985
+#: cp/typeck.c:4731
msgid "invalid use of const_cast with type `%T', which is not a pointer, reference, nor a pointer-to-data-member type"
msgstr ""
-#: cp/typeck.c:4988
+#: cp/typeck.c:4734
msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type"
msgstr ""
-#: cp/typeck.c:5011
+#: cp/typeck.c:4757
msgid "invalid const_cast of an rvalue of type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:5027
+#: cp/typeck.c:4774
msgid "invalid const_cast from type `%T' to type `%T'"
msgstr ""
-#: cp/typeck.c:5069 cp/typeck.c:5074
+#: cp/typeck.c:4814 cp/typeck.c:4819
#, fuzzy
msgid "ISO C++ forbids casting to an array type `%T'"
msgstr "ISO C förbjuder typkonvertering till unionstyper"
-#: cp/typeck.c:5082
+#: cp/typeck.c:4827
#, fuzzy
msgid "invalid cast to function type `%T'"
msgstr "ogiltig lagringsklass för funktion \"%s\""
-#: cp/typeck.c:5138
+#: cp/typeck.c:4883
msgid "cast from `%T' to `%T' discards qualifiers from pointer target type"
msgstr ""
-#: cp/typeck.c:5184
+#: cp/typeck.c:4929
msgid "cast from `%T' to `%T' increases required alignment of target type"
msgstr ""
-#: cp/typeck.c:5357
+#: cp/typeck.c:5093
msgid " in evaluation of `%Q(%#T, %#T)'"
msgstr ""
-#: cp/typeck.c:5399
+#: cp/typeck.c:5135
msgid "ISO C++ forbids cast to non-reference type used as lvalue"
msgstr ""
-#: cp/typeck.c:5463
+#: cp/typeck.c:5208
#, fuzzy
msgid "incompatible types in assignment of `%T' to `%T'"
msgstr "inkompatibla typer i %s"
-#: cp/typeck.c:5470
+#: cp/typeck.c:5215
msgid "ISO C++ forbids assignment of arrays"
msgstr "ISO C++ förbjuder tilldelning av fält"
-#: cp/typeck.c:5577
+#: cp/typeck.c:5314
msgid " in pointer to member function conversion"
msgstr ""
-#: cp/typeck.c:5585
+#: cp/typeck.c:5322
msgid " in pointer to member conversion"
msgstr ""
#. This is a reinterpret cast, we choose to do nothing.
-#: cp/typeck.c:5596 cp/typeck.c:5615
-msgid "pointer to member cast via virtual base `%T' of `%T'"
-msgstr ""
+#: cp/typeck.c:5332 cp/typeck.c:5347
+#, fuzzy
+msgid "pointer to member cast via virtual base `%T'"
+msgstr "pekare till en medlemsfunktion använd med aritmetik"
-#: cp/typeck.c:5619
-msgid "pointer to member conversion via virtual base `%T' of `%T'"
-msgstr ""
+#: cp/typeck.c:5350
+#, fuzzy
+msgid "pointer to member conversion via virtual base `%T'"
+msgstr "pekare till medlemsfunktion använd med aritmetik"
-#: cp/typeck.c:5695
+#: cp/typeck.c:5420
#, fuzzy
msgid "invalid conversion to type `%T' from type `%T'"
msgstr "ogiltig mottagartyp \"%s\""
-#: cp/typeck.c:5860
+#: cp/typeck.c:5576
msgid "passing NULL used for non-pointer %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5863
+#: cp/typeck.c:5579
msgid "%s to non-pointer type `%T' from NULL"
msgstr ""
-#: cp/typeck.c:5871
+#: cp/typeck.c:5587
msgid "passing `%T' for %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5874
+#: cp/typeck.c:5590
msgid "%s to `%T' from `%T'"
msgstr ""
-#: cp/typeck.c:5884
+#: cp/typeck.c:5600
msgid "passing negative value `%E' for %s %P of `%D'"
msgstr ""
-#: cp/typeck.c:5887
+#: cp/typeck.c:5603
msgid "%s of negative value `%E' to `%T'"
msgstr ""
-#: cp/typeck.c:5982
+#: cp/typeck.c:5691
msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'"
msgstr ""
-#: cp/typeck.c:5985
+#: cp/typeck.c:5694
#, fuzzy
msgid "cannot convert `%T' to `%T' in %s"
msgstr "kan inte konvertera till en pekartyp"
-#: cp/typeck.c:6073 cp/typeck.c:6075
+#: cp/typeck.c:5771 cp/typeck.c:5773
#, fuzzy
msgid "in passing argument %P of `%+D'"
msgstr "Saknar argument till flaggan \"%s\""
-#: cp/typeck.c:6190
+#: cp/typeck.c:5880
msgid "returning reference to temporary"
msgstr "returnerar referens till en temporär"
-#: cp/typeck.c:6197
+#: cp/typeck.c:5887
msgid "reference to non-lvalue returned"
msgstr ""
-#: cp/typeck.c:6209
+#: cp/typeck.c:5899
#, fuzzy
msgid "reference to local variable `%D' returned"
msgstr "adress på global registervariabel \"%s\" efterfrågad"
-#: cp/typeck.c:6212
+#: cp/typeck.c:5902
#, fuzzy
msgid "address of local variable `%D' returned"
msgstr "adress på global registervariabel \"%s\" efterfrågad"
-#: cp/typeck.c:6243
+#: cp/typeck.c:5932
msgid "returning a value from a destructor"
msgstr "returnerar ett värde från en destruktor"
#. If a return statement appears in a handler of the
#. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.c:6251
+#: cp/typeck.c:5940
msgid "cannot return from a handler of a function-try-block of a constructor"
msgstr ""
#. You can't return a value from a constructor.
-#: cp/typeck.c:6254
+#: cp/typeck.c:5943
msgid "returning a value from a constructor"
msgstr ""
-#: cp/typeck.c:6271
-msgid "return-statement with no value, in function declared with a non-void return type"
-msgstr ""
+#: cp/typeck.c:5966
+#, fuzzy
+msgid "return-statement with no value, in function returning '%T'"
+msgstr "\"return\" med värde i funktion som returnerar void"
-#: cp/typeck.c:6287
-msgid "return-statement with a value, in function declared with a void return type"
-msgstr ""
+#: cp/typeck.c:5983
+#, fuzzy
+msgid "return-statement with a value, in function returning 'void'"
+msgstr "\"return\" med värde i funktion som returnerar void"
-#: cp/typeck.c:6308
+#: cp/typeck.c:6005
msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)"
msgstr ""
-#: cp/typeck2.c:54
+#: cp/typeck2.c:55
msgid "type `%T' is not a base type for type `%T'"
msgstr ""
-#: cp/typeck2.c:157
+#: cp/typeck2.c:151
#, fuzzy
msgid "cannot declare variable `%D' to be of type `%T'"
msgstr "kan inte deklarera \"::main\" som en mall"
-#: cp/typeck2.c:160
+#: cp/typeck2.c:154
#, fuzzy
msgid "cannot declare parameter `%D' to be of type `%T'"
msgstr "kan inte deklarera \"::main\" som en mall"
-#: cp/typeck2.c:163
+#: cp/typeck2.c:157
#, fuzzy
msgid "cannot declare field `%D' to be of type `%T'"
msgstr "kan inte deklarera \"::main\" som en mall"
-#: cp/typeck2.c:167
+#: cp/typeck2.c:161
#, fuzzy
msgid "invalid return type for member function `%#D'"
msgstr "ogiltig lagringsklass för funktion \"%s\""
-#: cp/typeck2.c:169
+#: cp/typeck2.c:163
#, fuzzy
msgid "invalid return type for function `%#D'"
msgstr "ogiltig lagringsklass för funktion \"%s\""
-#: cp/typeck2.c:172
+#: cp/typeck2.c:166
#, fuzzy
msgid "cannot allocate an object of type `%T'"
msgstr "statisk access till objekt av typ \"id\""
-#: cp/typeck2.c:179
+#: cp/typeck2.c:173
msgid " because the following virtual functions are abstract:"
msgstr ""
-#: cp/typeck2.c:181
+#: cp/typeck2.c:175
msgid "\t%#D"
msgstr ""
-#: cp/typeck2.c:184
+#: cp/typeck2.c:178
msgid " since type `%T' has abstract virtual functions"
msgstr ""
-#: cp/typeck2.c:338
+#: cp/typeck2.c:426
msgid "constructor syntax used, but no constructor declared for type `%T'"
msgstr ""
-#: cp/typeck2.c:349
-msgid "comma expression used to initialize return value"
-msgstr ""
-
-#: cp/typeck2.c:358
+#: cp/typeck2.c:439
msgid "cannot initialize arrays using this syntax"
msgstr ""
-#: cp/typeck2.c:473
+#: cp/typeck2.c:544
msgid "initializing array with parameter list"
msgstr ""
-#: cp/typeck2.c:529
+#: cp/typeck2.c:599
msgid "initializer for scalar variable requires one element"
msgstr ""
-#: cp/typeck2.c:536
+#: cp/typeck2.c:606
msgid "braces around scalar initializer for `%T'"
msgstr ""
-#: cp/typeck2.c:539
+#: cp/typeck2.c:609
msgid "ignoring extra initializers for `%T'"
msgstr ""
-#: cp/typeck2.c:551
+#: cp/typeck2.c:621
#, fuzzy
msgid "variable-sized object of type `%T' may not be initialized"
msgstr "objekt med variabel storlek kan inte initieras"
-#: cp/typeck2.c:561
+#: cp/typeck2.c:631
msgid "subobject of type `%T' must be initialized by constructor, not by `%E'"
msgstr ""
-#: cp/typeck2.c:627
+#: cp/typeck2.c:696
msgid "aggregate has a partly bracketed initializer"
msgstr ""
-#: cp/typeck2.c:665 cp/typeck2.c:770
+#: cp/typeck2.c:734 cp/typeck2.c:839
msgid "non-trivial labeled initializers"
msgstr ""
-#: cp/typeck2.c:682
+#: cp/typeck2.c:751
msgid "non-empty initializer for array of empty elements"
msgstr ""
-#: cp/typeck2.c:736
+#: cp/typeck2.c:805
msgid "initializer list for object of class with virtual base classes"
msgstr ""
-#: cp/typeck2.c:742
+#: cp/typeck2.c:811
msgid "initializer list for object of class with base classes"
msgstr ""
-#: cp/typeck2.c:748
+#: cp/typeck2.c:817
msgid "initializer list for object using virtual functions"
msgstr ""
-#: cp/typeck2.c:811 cp/typeck2.c:827
+#: cp/typeck2.c:879 cp/typeck2.c:895
#, fuzzy
msgid "missing initializer for member `%D'"
msgstr "saknar mellanrum efter nummer \"%.*s\""
-#: cp/typeck2.c:816
+#: cp/typeck2.c:884
#, fuzzy
msgid "uninitialized const member `%D'"
msgstr "upprepning av medlem \"%s\""
-#: cp/typeck2.c:818
+#: cp/typeck2.c:886
#, fuzzy
msgid "member `%D' with uninitialized const fields"
msgstr "parameter \"%s\" är initierad"
-#: cp/typeck2.c:821
+#: cp/typeck2.c:889
#, fuzzy
msgid "member `%D' is uninitialized reference"
msgstr "parameter \"%s\" är initierad"
-#: cp/typeck2.c:868
+#: cp/typeck2.c:936
msgid "index value instead of field name in union initializer"
msgstr ""
-#: cp/typeck2.c:880
+#: cp/typeck2.c:948
#, fuzzy
msgid "no field `%D' in union being initialized"
msgstr "fält \"%s\" är redan initierat"
-#: cp/typeck2.c:888
+#: cp/typeck2.c:956
msgid "union `%T' with no named members cannot be initialized"
msgstr ""
-#: cp/typeck2.c:924
+#: cp/typeck2.c:992
msgid "excess elements in aggregate initializer"
msgstr ""
-#: cp/typeck2.c:1038
+#: cp/typeck2.c:1100
msgid "circular pointer delegation detected"
msgstr ""
-#: cp/typeck2.c:1051
+#: cp/typeck2.c:1113
#, fuzzy
msgid "base operand of `->' has non-pointer type `%T'"
msgstr "basoperanden till \"->\" är inte en pekare"
-#: cp/typeck2.c:1065
+#: cp/typeck2.c:1137
msgid "result of `operator->()' yields non-pointer result"
msgstr ""
-#: cp/typeck2.c:1067
+#: cp/typeck2.c:1139
msgid "base operand of `->' is not a pointer"
msgstr "basoperanden till \"->\" är inte en pekare"
-#: cp/typeck2.c:1133
+#: cp/typeck2.c:1162
msgid "`%E' cannot be used as a member pointer, since it is of type `%T'"
msgstr ""
-#: cp/typeck2.c:1140
+#: cp/typeck2.c:1170
msgid "cannot apply member pointer `%E' to `%E', which is of non-aggregate type `%T'"
msgstr ""
-#: cp/typeck2.c:1149
+#: cp/typeck2.c:1180
msgid "member type `%T::' incompatible with object type `%T'"
msgstr ""
-#: cp/typeck2.c:1186
-msgid "`%T' fails to be a typedef or built-in type"
-msgstr ""
-
-#: cp/typeck2.c:1259
-#, c-format
-msgid "ISO C++ forbids defining types within %s"
-msgstr ""
-
-#: cp/typeck2.c:1384
+#: cp/typeck2.c:1396
#, fuzzy
msgid "call to function `%D' which throws incomplete type `%#T'"
msgstr "parameter \"%s\" pekar på inkomplett typ"
-#: cp/typeck2.c:1387
+#: cp/typeck2.c:1399
#, fuzzy
msgid "call to function which throws incomplete type `%#T'"
msgstr "parameter \"%s\" pekar på inkomplett typ"
#. XXX Not i18n clean.
-#: cp/cp-tree.h:3936
+#: cp/cp-tree.h:3756
#, c-format
msgid "%s is deprecated, please see the documentation for details"
msgstr ""
-#: cp/lang-options.h:29
-msgid "Do not obey access control semantics"
-msgstr ""
-
-#: cp/lang-options.h:31
-msgid "Change when template instances are emitted"
-msgstr ""
-
-#: cp/lang-options.h:36
-msgid "Check the return value of new"
-msgstr ""
-
-#: cp/lang-options.h:39
-msgid "Reduce size of object files"
-msgstr ""
-
-#: cp/lang-options.h:43
-msgid "Make string literals `char[]' instead of `const char[]'"
-msgstr ""
-
-#: cp/lang-options.h:46
-msgid "Dump the entire translation unit to a file"
-msgstr ""
-
-#: cp/lang-options.h:48
-msgid "Do not inline member functions by default"
-msgstr ""
-
-#: cp/lang-options.h:51
-msgid "Do not generate run time type descriptor information"
-msgstr ""
-
-#: cp/lang-options.h:56
-msgid "Do not generate code to check exception specifications"
-msgstr ""
-
-#: cp/lang-options.h:61
-msgid "Scope of for-init-statement vars extends outside"
-msgstr ""
-
-#: cp/lang-options.h:64
-msgid "Do not recognize GNU defined keywords"
-msgstr ""
-
-#: cp/lang-options.h:68
-msgid "Enable support for huge objects"
-msgstr ""
-
-#: cp/lang-options.h:72
-msgid "Export functions even if they can be inlined"
-msgstr ""
-
-#: cp/lang-options.h:75
-#, fuzzy
-msgid "Only emit explicit template instantiations"
-msgstr "Slå på automatisk mallinstansiering"
-
-#: cp/lang-options.h:78
-#, fuzzy
-msgid "Only emit explicit instantiations of inline templates"
-msgstr "%s: Vid instansiering av \"%s\":\n"
-
-#: cp/lang-options.h:84
-msgid "Don't pedwarn about uses of Microsoft extensions"
-msgstr ""
-
-#: cp/lang-options.h:87
-#, fuzzy
-msgid "Recognize and/bitand/bitor/compl/not/or/xor"
-msgstr "Känn igen and/bitand/bitor/compl/not/or/xor"
-
-#: cp/lang-options.h:91
-msgid "Disable optional diagnostics"
-msgstr ""
-
-#: cp/lang-options.h:93
-msgid "Downgrade conformance errors to warnings"
-msgstr ""
-
-#: cp/lang-options.h:96
-msgid "Enable automatic template instantiation"
-msgstr "Slå på automatisk mallinstansiering"
-
-#: cp/lang-options.h:101
-msgid "Display statistics accumulated during compilation"
-msgstr ""
-
-#: cp/lang-options.h:104
-msgid "Specify maximum template instantiation depth"
-msgstr "Ange maximalt instansieringsdjup för mallar"
-
-#: cp/lang-options.h:106
-msgid "Use __cxa_atexit to register destructors"
-msgstr ""
-
-#: cp/lang-options.h:109
-msgid "Discard unused virtual functions"
-msgstr ""
-
-#: cp/lang-options.h:112
-msgid "Implement vtables using thunks"
-msgstr ""
-
-#: cp/lang-options.h:115
-msgid "Emit common-like symbols as weak symbols"
-msgstr ""
-
-#: cp/lang-options.h:118
-msgid "Emit cross referencing information"
-msgstr ""
-
-#: cp/lang-options.h:122
-msgid "Warn about inconsistent return types"
-msgstr ""
-
-#: cp/lang-options.h:125
-msgid "Warn about overloaded virtual function names"
-msgstr ""
-
-#: cp/lang-options.h:129
-msgid "Don't warn when all ctors/dtors are private"
-msgstr ""
-
-#: cp/lang-options.h:131
-msgid "Warn about non virtual destructors"
-msgstr ""
-
-#: cp/lang-options.h:134
-msgid "Warn when a function is declared extern, then inline"
-msgstr ""
-
-#: cp/lang-options.h:137
-msgid "Warn when the compiler reorders code"
-msgstr ""
-
-#: cp/lang-options.h:140
-msgid "Warn when synthesis behavior differs from Cfront"
-msgstr ""
-
-#: cp/lang-options.h:144
-msgid "Don't warn when type converting pointers to member functions"
-msgstr ""
-
-#: cp/lang-options.h:146
-msgid "Warn about violations of Effective C++ style rules"
-msgstr ""
-
-#: cp/lang-options.h:149
-msgid "Warn when overload promotes from unsigned to signed"
-msgstr ""
-
-#: cp/lang-options.h:152
-msgid "Warn if a C style cast is used in a program"
-msgstr ""
-
-#: cp/lang-options.h:156
-msgid "Don't warn when non-templatized friend functions are declared within a template"
-msgstr ""
-
-#: cp/lang-options.h:159
-msgid "Don't announce deprecation of compiler features"
-msgstr ""
-
-#: f/bad.c:387
+#: f/bad.c:388
msgid "note:"
msgstr ""
-#: f/bad.c:391
+#: f/bad.c:392
#, fuzzy
msgid "warning:"
msgstr "varning: "
-#: f/bad.c:395
+#: f/bad.c:396
msgid "fatal:"
msgstr ""
-#: f/bad.c:437
+#: f/bad.c:438
msgid "(continued):"
msgstr ""
-#: f/bad.c:487 f/bad.c:505
+#: f/bad.c:488 f/bad.c:506
msgid "[REPORT BUG!!] %"
msgstr ""
-#: f/bad.c:494 f/bad.c:526
+#: f/bad.c:495 f/bad.c:527
msgid "[REPORT BUG!!]"
msgstr ""
-#: f/com.c:3132
+#: f/com.c:3125
#, no-c-format
msgid "ASSIGN'ed label cannot fit into `%A' at %0 -- using wider sibling"
msgstr ""
-#: f/com.c:11623
+#: f/com.c:11565
msgid "no INTEGER type can hold a pointer on this configuration"
msgstr ""
-#: f/com.c:11844
+#: f/com.c:11839
#, c-format
msgid "configuration: REAL, INTEGER, and LOGICAL are %d bits wide,"
msgstr ""
-#: f/com.c:11846
+#: f/com.c:11841
#, c-format
msgid "and pointers are %d bits wide, but g77 doesn't yet work"
msgstr ""
-#: f/com.c:11848
+#: f/com.c:11843
msgid "properly unless they all are 32 bits wide"
msgstr ""
-#: f/com.c:11849
+#: f/com.c:11844
msgid "Please keep this in mind before you report bugs."
msgstr ""
#. I/O will probably crash.
-#: f/com.c:11857
+#: f/com.c:11852
#, c-format
msgid "configuration: char * holds %d bits, but ftnlen only %d"
msgstr ""
#. ASSIGN 10 TO I will crash.
-#: f/com.c:11866
+#: f/com.c:11861
#, c-format
msgid ""
"configuration: char * holds %d bits, but INTEGER only %d --\n"
" ASSIGN statement might fail"
msgstr ""
-#: f/com.c:13681
+#: f/com.c:13677
#, fuzzy
msgid "In statement function"
msgstr "för många argument till funktion"
-#: f/com.c:13691
+#: f/com.c:13687
+#, c-format
msgid "Outside of any program unit:\n"
msgstr ""
-#: f/com.c:15320
+#: f/com.c:15283
#, no-c-format
msgid "%A from %B at %0%C"
msgstr ""
-#: f/com.c:15497
-#, fuzzy
-msgid "directory name must immediately follow -I"
-msgstr "Katalognamn måste komma direkt efter -I"
-
-#: f/com.c:15640
+#: f/com.c:15593
#, no-c-format
msgid "At %0, INCLUDE file %A exists, but is not readable"
msgstr ""
-#: f/com.c:15675
+#: f/com.c:15628
#, no-c-format
msgid "At %0, INCLUDE nesting too deep"
msgstr ""
-#: f/expr.c:9614
+#: f/expr.c:8706
#, no-c-format
msgid "Two arithmetic operators in a row at %0 and %1 -- use parentheses"
msgstr ""
-#: f/expr.c:9664
+#: f/expr.c:8756
#, no-c-format
msgid "Operator at %0 has lower precedence than that at %1 -- use parentheses"
msgstr ""
-#: f/expr.c:10525
+#: f/expr.c:9639
#, no-c-format
msgid "Use .EQV./.NEQV. instead of .EQ./.NE. at %0 for LOGICAL operands at %1 and %2"
msgstr ""
-#: f/expr.c:10896
+#: f/expr.c:10010
#, no-c-format
msgid "Unsupported operand for ** at %1 -- converting to default INTEGER"
msgstr ""
-#: f/g77spec.c:234
+#: f/g77spec.c:230
#, c-format
msgid "overflowed output arg list for `%s'"
msgstr ""
-#: f/g77spec.c:373
+#: f/g77spec.c:367
msgid "--driver no longer supported"
msgstr "--driver stödjs inte längre"
-#: f/g77spec.c:386
+#: f/g77spec.c:380
#, c-format
msgid "argument to `%s' missing"
msgstr "argument till \"%s\" saknas"
-#: f/g77spec.c:390
+#: f/g77spec.c:384
msgid "no input files; unwilling to write output files"
msgstr ""
@@ -18914,131 +18159,126 @@ msgstr ""
msgid "Implicit declaration of `%A' at %0"
msgstr "tidigare implicit deklaration av \"%s\""
-#: f/lex.c:326
+#: f/lex.c:321
#, fuzzy, no-c-format
msgid "Non-ISO-C-standard escape sequence `\\%A' at %0"
msgstr "okänd escape-sekvens \"\\%c\""
-#: f/lex.c:345
+#: f/lex.c:340
#, fuzzy, no-c-format
msgid "Unknown escape sequence `\\%A' at %0"
msgstr "okänd escape-sekvens \"\\%c\""
-#: f/lex.c:354
+#: f/lex.c:349
#, fuzzy, no-c-format
msgid "Unterminated escape sequence `\\' at %0"
msgstr "okänd escape-sekvens \"\\%c\""
-#: f/lex.c:365
+#: f/lex.c:360
#, fuzzy, no-c-format
msgid "Unknown escape sequence `\\' followed by char code 0x%A at %0"
msgstr "okänd escape-sekvens: '\\' följd av tecken 0x%x"
-#: f/lex.c:393
+#: f/lex.c:388
#, no-c-format
msgid "\\x used at %0 with no following hex digits"
msgstr ""
-#: f/lex.c:407
+#: f/lex.c:402
#, fuzzy, no-c-format
msgid "Hex escape at %0 out of range"
msgstr "heltalskonstant utanför sitt intervall"
-#: f/lex.c:441
+#: f/lex.c:436
#, fuzzy, no-c-format
msgid "Escape sequence at %0 out of range for character"
msgstr "escape-sekvens ryms ej i ett tecken"
-#: f/lex.c:595
+#: f/lex.c:590
msgid "hex escape out of range"
msgstr ""
-#: f/lex.c:648
+#: f/lex.c:643
#, c-format
msgid "non-ANSI-standard escape sequence, `\\%c'"
msgstr ""
-#: f/lex.c:661
+#: f/lex.c:656
#, fuzzy, c-format
msgid "non-ISO escape sequence `\\%c'"
msgstr "okänd escape-sekvens \"\\%c\""
-#: f/lex.c:665
+#: f/lex.c:660
#, c-format
msgid "unknown escape sequence `\\%c'"
msgstr "okänd escape-sekvens \"\\%c\""
-#: f/lex.c:667
+#: f/lex.c:662
#, c-format
msgid "unknown escape sequence: `\\' followed by char code 0x%x"
msgstr "okänd escape-sekvens: '\\' följd av tecken 0x%x"
-#: f/lex.c:744
+#: f/lex.c:739
msgid "badly formed directive -- no closing quote"
msgstr ""
-#: f/lex.c:802
+#: f/lex.c:797
msgid "#-lines for entering and leaving files don't match"
msgstr ""
-#: f/lex.c:964
+#: f/lex.c:957
msgid "bad directive -- missing close-quote"
msgstr ""
-#: f/lex.c:1078
-#, c-format
-msgid "ignoring pragma: %s"
-msgstr "ignorerar #pragma: %s"
-
-#: f/lex.c:1156
+#: f/lex.c:1096
msgid "invalid #ident"
msgstr "ogiltig #indent"
-#: f/lex.c:1173
+#: f/lex.c:1113
msgid "undefined or invalid # directive"
msgstr ""
-#: f/lex.c:1229
+#: f/lex.c:1168
msgid "invalid #line"
msgstr "ogiltig #line"
-#: f/lex.c:1285 f/lex.c:1329
+#: f/lex.c:1224 f/lex.c:1268
msgid "use `#line ...' instead of `# ...' in first line"
msgstr ""
-#: f/lex.c:1339
+#: f/lex.c:1278
msgid "invalid #-line"
msgstr "ogiltig #-rad"
-#: f/lex.c:1432
+#: f/lex.c:1371
#, no-c-format
msgid "Null character at %0 -- line ignored"
msgstr ""
-#: f/stb.c:12078
+#: f/stb.c:9177
#, no-c-format
msgid "INCLUDE at %0 not the only statement on the source line"
msgstr ""
-#: f/ste.c:1400 f/ste.c:1747
+#: f/ste.c:1397 f/ste.c:1744
msgid "ASSIGNed FORMAT specifier is too small"
msgstr ""
#. ~~~Someday handle CHARACTER*1, CHARACTER*N
-#: f/ste.c:2624
+#: f/ste.c:2621
#, no-c-format
msgid "SELECT CASE on CHARACTER type (at %0) not supported -- sorry"
msgstr ""
-#: f/ste.c:2729
+#: f/ste.c:2725
msgid "SELECT (at %0) has duplicate cases -- check integer overflow of CASE(s)"
msgstr ""
-#: f/ste.c:2959
+#: f/ste.c:2957
msgid "ASSIGN to variable that is too small"
msgstr ""
-#: f/ste.c:2987
+#: f/ste.c:2989
msgid "ASSIGNed GOTO target variable is too small"
msgstr ""
@@ -19047,331 +18287,22 @@ msgstr ""
msgid "Local adjustable symbol `%A' at %0"
msgstr ""
-#: f/target.c:2550
+#: f/target.c:2545
msgid "data initializer on host with different endianness"
msgstr ""
-#: f/top.c:237
-#, c-format
-msgid "%s no longer supported -- try -fvxt"
+#: f/top.c:244
+#, fuzzy
+msgid "-fvxt-not-f90 no longer supported -- try -fvxt"
msgstr "%s stödjs inte längre -- försök -fvxt"
-#: f/top.c:239
-#, c-format
-msgid "%s no longer supported -- try -fno-vxt -ff90"
+#: f/top.c:248
+#, fuzzy
+msgid "-ff90-not-vxt no longer supported -- try -fno-vxt -ff90"
msgstr "%s stödjs inte längre -- försök -fno-vxt -ff90"
-#: f/top.c:307 f/top.c:309
-#, c-format
-msgid "%s disabled, use normal debugging flags"
-msgstr ""
-
-#: f/lang-options.h:33
-msgid "Print g77-specific compiler version info, run internal tests"
-msgstr ""
-
-#: f/lang-options.h:37
-msgid "Program is written in typical FORTRAN 66 dialect"
-msgstr ""
-
-#: f/lang-options.h:40
-msgid "Program is written in typical Unix f77 dialect"
-msgstr ""
-
-#: f/lang-options.h:42
-msgid "Program does not use Unix-f77 dialectal features"
-msgstr ""
-
-#: f/lang-options.h:44
-msgid "Program is written in Fortran-90-ish dialect"
-msgstr ""
-
-#: f/lang-options.h:48
-msgid "Treat local vars and COMMON blocks as if they were named in SAVE statements"
-msgstr ""
-
-#: f/lang-options.h:50
-msgid "Allow $ in symbol names"
-msgstr ""
-
-#: f/lang-options.h:54
-msgid "f2c-compatible code need not be generated"
-msgstr ""
-
-#: f/lang-options.h:57
-msgid "Unsupported; do not generate libf2c-calling code"
-msgstr ""
-
-#: f/lang-options.h:59
-msgid "Unsupported; affects code-generation of arrays"
-msgstr ""
-
-#: f/lang-options.h:62
-msgid "Program is written in Fortran-90-ish free form"
-msgstr ""
-
-#: f/lang-options.h:67
-msgid "Warn about use of (only a few for now) Fortran extensions"
-msgstr ""
-
-#: f/lang-options.h:70
-msgid "Program is written in VXT (Digital-like) FORTRAN"
-msgstr ""
-
-#: f/lang-options.h:73
-msgid "Disallow all ugly features"
-msgstr ""
-
-#: f/lang-options.h:76
-msgid "Hollerith and typeless constants not passed as arguments"
-msgstr ""
-
-#: f/lang-options.h:78
-msgid "Allow ordinary copying of ASSIGN'ed vars"
-msgstr ""
-
-#: f/lang-options.h:81
-msgid "Dummy array dimensioned to (1) is assumed-size"
-msgstr ""
-
-#: f/lang-options.h:84
-msgid "Trailing comma in procedure call denotes null argument"
-msgstr ""
-
-#: f/lang-options.h:87
-msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
-msgstr ""
-
-#: f/lang-options.h:91
-msgid "Initialization via DATA and PARAMETER is type-compatible"
-msgstr ""
-
-#: f/lang-options.h:93
-msgid "Allow INTEGER and LOGICAL interchangeability"
-msgstr ""
-
-#: f/lang-options.h:96
-msgid "Print internal debugging-related info"
-msgstr ""
-
-#: f/lang-options.h:99
-msgid "Initialize local vars and arrays to zero"
-msgstr ""
-
-#: f/lang-options.h:103
-msgid "Backslashes in character/hollerith constants not special (C-style)"
-msgstr ""
-
-#: f/lang-options.h:105
-msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
-msgstr ""
-
-#: f/lang-options.h:109
-msgid "Disable the appending of underscores to externals"
-msgstr ""
-
-#: f/lang-options.h:112
-msgid "Never append a second underscore to externals"
-msgstr ""
-
-#: f/lang-options.h:114
-msgid "Intrinsics spelled as e.g. SqRt"
-msgstr ""
-
-#: f/lang-options.h:116
-msgid "Intrinsics in uppercase"
-msgstr ""
-
-#: f/lang-options.h:119
-msgid "Intrinsics letters in arbitrary cases"
-msgstr ""
-
-#: f/lang-options.h:121
-msgid "Language keywords spelled as e.g. IOStat"
-msgstr ""
-
-#: f/lang-options.h:123
-msgid "Language keywords in uppercase"
-msgstr ""
-
-#: f/lang-options.h:126
-msgid "Language keyword letters in arbitrary cases"
-msgstr ""
-
-#: f/lang-options.h:128
-msgid "Internally convert most source to uppercase"
-msgstr ""
-
-#: f/lang-options.h:131
-msgid "Internally preserve source case"
-msgstr ""
-
-#: f/lang-options.h:133
-msgid "Symbol names spelled in mixed case"
-msgstr ""
-
-#: f/lang-options.h:135
-msgid "Symbol names in uppercase"
-msgstr ""
-
-#: f/lang-options.h:137
-msgid "Symbol names in lowercase"
-msgstr ""
-
-#: f/lang-options.h:140
-msgid "Program written in uppercase"
-msgstr ""
-
-#: f/lang-options.h:142
-msgid "Program written in lowercase"
-msgstr ""
-
-#: f/lang-options.h:144
-msgid "Program written in strict mixed-case"
-msgstr ""
-
-#: f/lang-options.h:146
-msgid "Compile as if program written in uppercase"
-msgstr ""
-
-#: f/lang-options.h:148
-msgid "Compile as if program written in lowercase"
-msgstr ""
-
-#: f/lang-options.h:150
-msgid "Preserve all spelling (case) used in program"
-msgstr ""
-
-#: f/lang-options.h:152
-msgid "Delete libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:154
-msgid "Disable libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:157
-msgid "Hide libU77 intrinsics with bad interfaces"
-msgstr ""
-
-#: f/lang-options.h:159
-msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:161
-msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:164
-msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-
-#: f/lang-options.h:166
-msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:168
-msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:171
-msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:173
-msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
-msgstr ""
-
-#: f/lang-options.h:175
-msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:178
-msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-
-#: f/lang-options.h:180
-msgid "Delete MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:182
-msgid "Disable MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:185
-msgid "Hide MIL-STD 1753 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:187
-msgid "Delete libU77 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:189
-msgid "Disable libU77 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:192
-msgid "Hide libU77 intrinsics"
-msgstr ""
-
-#: f/lang-options.h:194
-msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:196
-msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:199
-msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-
-#: f/lang-options.h:201
-msgid "Treat initial values of 0 like non-zero values"
-msgstr ""
-
-#: f/lang-options.h:204
-msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
-msgstr ""
-
-#: f/lang-options.h:207
-msgid "Take at least one trip through each iterative DO loop"
-msgstr ""
-
-#: f/lang-options.h:211
-msgid "Print names of program units as they are compiled"
-msgstr ""
-
-#: f/lang-options.h:214
-msgid "Disable fatal diagnostics about inter-procedural problems"
-msgstr ""
-
-#: f/lang-options.h:216
-msgid "Make prefix-radix non-decimal constants be typeless"
-msgstr ""
-
-#: f/lang-options.h:219
-msgid "Generate code to check subscript and substring bounds"
-msgstr ""
-
-#: f/lang-options.h:222
-msgid "Fortran-specific form of -fbounds-check"
-msgstr ""
-
-#: f/lang-options.h:226
-msgid "Disable warnings about inter-procedural problems"
-msgstr ""
-
-#: f/lang-options.h:230
-msgid "Warn about constructs with surprising meanings"
-msgstr ""
-
-#: f/lang-options.h:235
-msgid "Add a directory for INCLUDE searching"
-msgstr ""
-
-#: f/lang-options.h:237
-msgid "Set the maximum line length"
+#: f/top.c:318
+msgid "-fdebug-kludge is disabled, use normal debugging flags"
msgstr ""
#: f/bad.def:39
@@ -20279,322 +19210,344 @@ msgstr ""
msgid "In anything"
msgstr ""
-#: java/check-init.c:917
+#: java/check-init.c:905
#, c-format
msgid "internal error in check-init: tree code not implemented: %s"
msgstr ""
-#: java/check-init.c:990
-#, fuzzy, c-format
-msgid "final field '%s' may not have been initialized"
+#: java/check-init.c:977
+#, fuzzy
+msgid "%Jfinal field '%D' may not have been initialized"
msgstr "objekt med variabel storlek kan inte initieras"
-#: java/class.c:539 java/class.c:564
+#: java/class.c:592 java/class.c:616
msgid "internal error - too many interface type"
msgstr ""
-#: java/class.c:677
+#: java/class.c:715
msgid "bad method signature"
msgstr ""
-#: java/class.c:726
+#: java/class.c:759
msgid "misplaced ConstantValue attribute (not in any field)"
msgstr ""
-#: java/class.c:728
+#: java/class.c:761
#, c-format
msgid "duplicate ConstantValue attribute for field '%s'"
msgstr ""
-#: java/class.c:739
+#: java/class.c:772
#, c-format
msgid "ConstantValue attribute of field '%s' has wrong type"
msgstr ""
-#: java/class.c:1103
+#: java/class.c:1067
#, c-format
msgid "field '%s' not found in class"
msgstr ""
-#: java/class.c:1365
-msgid "abstract method in non-abstract class"
+#: java/class.c:1324
+msgid "%Jabstract method in non-abstract class"
msgstr ""
-#: java/class.c:2078
-#, c-format
-msgid "non-static method '%s' overrides static method"
+#: java/class.c:2140
+msgid "%Jnon-static method '%D' overrides static method"
msgstr ""
-#: java/decl.c:1541
+#: java/decl.c:1018
+#, fuzzy
+msgid "%J'%D' used prior to declaration"
+msgstr "\"%s\" är använd innan sin deklaration"
+
+#: java/decl.c:1059
+#, c-format
+msgid "declaration of `%s' shadows a parameter"
+msgstr "deklaration av \"%s\" döljer en parameter"
+
+#: java/decl.c:1062
#, c-format
-msgid "In %s: overlapped variable and exception ranges at %d"
+msgid "declaration of `%s' shadows a symbol from the parameter list"
+msgstr "deklaration av \"%s\" döljer symbol från parameterlista"
+
+#: java/decl.c:1361
+#, fuzzy
+msgid "%Jlabel '%D' used but not defined"
+msgstr "etikett \"%s\" använd men inte definierad"
+
+#: java/decl.c:1366
+#, fuzzy
+msgid "%Jlabel '%D' defined but not used"
+msgstr "etikett \"%s\" definierad men inte använd"
+
+#: java/decl.c:1494
+msgid "%JIn %D: overlapped variable and exception ranges at %d"
msgstr ""
-#: java/decl.c:1622
+#: java/decl.c:1572
msgid "bad type in parameter debug info"
msgstr ""
-#: java/decl.c:1632
-#, c-format
-msgid "bad PC range for debug info for local `%s'"
+#: java/decl.c:1581
+msgid "%Jbad PC range for debug info for local '%D'"
msgstr ""
-#: java/expr.c:530
+#: java/expr.c:519
msgid "stack underflow - dup* operation"
msgstr ""
-#: java/expr.c:1534
+#: java/expr.c:1469
#, c-format
msgid "reference `%s' is ambiguous: appears in interface `%s' and interface `%s'"
msgstr ""
-#: java/expr.c:1563
+#: java/expr.c:1497
#, c-format
msgid "field `%s' not found"
msgstr ""
-#: java/expr.c:1715
+#: java/expr.c:1658
msgid "ret instruction not implemented"
msgstr ""
-#: java/expr.c:1857
+#: java/expr.c:1815
#, c-format
msgid "method '%s' not found in class"
msgstr "metod \"%s\" kan inte hittas i klassen"
-#: java/expr.c:2060
+#: java/expr.c:2020
#, c-format
msgid "failed to find class '%s'"
msgstr "kunde inte hitta klassen \"%s\""
-#: java/expr.c:2070
+#: java/expr.c:2030
#, c-format
msgid "class '%s' has no method named '%s' matching signature '%s'"
msgstr ""
-#: java/expr.c:2080
+#: java/expr.c:2040
msgid "invokestatic on non static method"
msgstr ""
-#: java/expr.c:2085
+#: java/expr.c:2045
msgid "invokestatic on abstract method"
msgstr ""
-#: java/expr.c:2093
+#: java/expr.c:2053
msgid "invoke[non-static] on static method"
msgstr ""
-#: java/expr.c:2396
+#: java/expr.c:2352
#, c-format
msgid "missing field '%s' in '%s'"
msgstr ""
-#: java/expr.c:2402
+#: java/expr.c:2358
#, c-format
msgid "mismatching signature for field '%s' in '%s'"
msgstr ""
-#: java/expr.c:2425
-#, c-format
-msgid "assignment to final field `%s' not in field's class"
+#: java/expr.c:2380
+msgid "%Jassignment to final field '%D' not in field's class"
msgstr ""
-#: java/expr.c:2430
-#, c-format
-msgid "assignment to final static field `%s' not in class initializer"
+#: java/expr.c:2385
+msgid "%Jassignment to final static field `%D' not in class initializer"
msgstr ""
-#: java/expr.c:2437
-#, c-format
-msgid "assignment to final field `%s' not in constructor"
+#: java/expr.c:2393
+msgid "%Jassignment to final field '%D' not in constructor"
msgstr ""
# fixme: spola tillbaka är inte perfekt
-#: java/expr.c:2684
+#: java/expr.c:2636
#, fuzzy, c-format
msgid "can't expand %s"
msgstr "kan inte spola tillbaka %s"
-#: java/expr.c:2861
+#: java/expr.c:2808
msgid "invalid PC in line number table"
msgstr ""
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2906
+#: java/expr.c:2854
#, c-format
msgid "unreachable bytecode from %d to before %d"
msgstr ""
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2943
+#: java/expr.c:2892
#, c-format
msgid "unreachable bytecode from %d to the end of the method"
msgstr ""
#. duplicate code from LOAD macro
-#: java/expr.c:3261
+#: java/expr.c:3206
msgid "unrecogized wide sub-instruction"
msgstr ""
-#: java/jcf-io.c:543
+#: java/jcf-io.c:534
#, c-format
msgid "source file for class `%s' is newer than its matching class file. Source file `%s' used instead"
msgstr ""
-#: java/jcf-parse.c:338
+#: java/jcf-parse.c:330
msgid "bad string constant"
msgstr ""
-#: java/jcf-parse.c:356
+#: java/jcf-parse.c:348
#, c-format
msgid "bad value constant type %d, index %d"
msgstr ""
-#: java/jcf-parse.c:528
-#, c-format
-msgid "can't reopen %s"
-msgstr ""
+#: java/jcf-parse.c:514
+#, fuzzy, c-format
+msgid "can't reopen %s: %m"
+msgstr "kan inte öppna %s"
-#: java/jcf-parse.c:533
-#, c-format
-msgid "can't close %s"
+#: java/jcf-parse.c:519
+#, fuzzy, c-format
+msgid "can't close %s: %m"
msgstr "kan inte stänga %s"
-#: java/jcf-parse.c:619
+#: java/jcf-parse.c:604
#, fuzzy, c-format
msgid "cannot find file for class %s"
msgstr "Kan inte hitta filen med klass %s."
-#: java/jcf-parse.c:631
+#: java/jcf-parse.c:615
msgid "not a valid Java .class file"
msgstr ""
-#: java/jcf-parse.c:634
+#: java/jcf-parse.c:618
msgid "error while parsing constant pool"
msgstr ""
-#: java/jcf-parse.c:637
+#: java/jcf-parse.c:621
#, c-format
msgid "error in constant pool entry #%d\n"
msgstr ""
#. FIXME - where was first time
-#: java/jcf-parse.c:649
+#: java/jcf-parse.c:633
#, c-format
msgid "reading class %s for the second time from %s"
msgstr ""
-#: java/jcf-parse.c:667
+#: java/jcf-parse.c:651
msgid "error while parsing fields"
msgstr ""
-#: java/jcf-parse.c:670
+#: java/jcf-parse.c:654
msgid "error while parsing methods"
msgstr ""
-#: java/jcf-parse.c:673
+#: java/jcf-parse.c:657
msgid "error while parsing final attributes"
msgstr ""
-#: java/jcf-parse.c:687
+#: java/jcf-parse.c:671
#, c-format
msgid "the `java.lang.Object' that was found in `%s' didn't have the special zero-length `gnu.gcj.gcj-compiled' attribute. This generally means that your classpath is incorrectly set. Use `info gcj \"Input Options\"' to see the info page describing how to set the classpath"
msgstr ""
-#: java/jcf-parse.c:777
+#: java/jcf-parse.c:749
msgid "missing Code attribute"
msgstr ""
-#: java/jcf-parse.c:1014
-msgid "source file seen twice on command line and will be compiled only once"
+#: java/jcf-parse.c:981
+msgid "%Hsource file seen twice on command line and will be compiled only once"
msgstr ""
-#: java/jcf-parse.c:1030
+#: java/jcf-parse.c:997
msgid "no input file specified"
msgstr ""
-#: java/jcf-parse.c:1059
+#: java/jcf-parse.c:1026
+#, fuzzy, c-format
+msgid "can't close input file %s: %m"
+msgstr "kan inte stänga %s"
+
+#: java/jcf-parse.c:1064
#, c-format
-msgid "can't close input file %s"
+msgid "bad zip/jar file %s"
msgstr ""
-#: java/jcf-parse.c:1096
+#: java/jcf-parse.c:1236
#, c-format
-msgid "bad zip/jar file %s"
+msgid "error while reading %s from zip file"
msgstr ""
-#: java/jcf-write.c:2650
+#: java/jcf-write.c:2602
#, c-format
msgid "internal error in generate_bytecode_insn - tree code not implemented: %s"
msgstr ""
-#: java/jcf-write.c:2988
+#: java/jcf-write.c:2934
#, fuzzy
msgid "field initializer type mismatch"
msgstr "fältinitierare är ej konstant"
-#: java/jcf-write.c:3419
-#, c-format
-msgid "can't create directory %s"
+#: java/jcf-write.c:3389
+#, fuzzy, c-format
+msgid "can't create directory %s: %m"
msgstr "kan inte skapa katalog %s"
-#: java/jcf-write.c:3473
+#: java/jcf-write.c:3442
#, fuzzy, c-format
-msgid "can't create %s"
+msgid "can't create %s: %m"
msgstr "kan inte stänga %s"
-#: java/jv-scan.c:187
+#: java/jv-scan.c:185
msgid "only one of `--print-main', `--list-class', and `--complexity' allowed"
msgstr ""
-#: java/jv-scan.c:190
+#: java/jv-scan.c:188
#, fuzzy, c-format
msgid "can't open output file `%s'"
msgstr "Kan inte öppna utdatafil \"%s\""
-#: java/jv-scan.c:224
+#: java/jv-scan.c:222
#, fuzzy, c-format
msgid "file not found `%s'"
msgstr "Kan inte hitta filen \"%s\""
-#: java/jvspec.c:426
+#: java/jvspec.c:418
msgid "can't specify `-D' without `--main'\n"
msgstr ""
-#: java/jvspec.c:429
+#: java/jvspec.c:421
#, fuzzy, c-format
msgid "`%s' is not a valid class name"
msgstr "\"%s\" är inte ett giltigt filnamn"
-#: java/jvspec.c:435
+#: java/jvspec.c:427
msgid "--resource requires -o"
msgstr ""
-#: java/jvspec.c:442
+#: java/jvspec.c:434
msgid "warning: already-compiled .class files ignored with -C"
msgstr ""
-#: java/jvspec.c:449
+#: java/jvspec.c:441
msgid "cannot specify both -C and -o"
msgstr "kan inte ange både -C och -o"
-#: java/jvspec.c:461
+#: java/jvspec.c:453
msgid "cannot create temporary file"
msgstr ""
-#: java/jvspec.c:489
+#: java/jvspec.c:481
msgid "using both @FILE with multiple files not implemented"
msgstr ""
-#: java/jvspec.c:538
+#: java/jvspec.c:530
msgid "cannot specify `main' class when not linking"
msgstr ""
-#: java/lang.c:548
+#: java/lang.c:740
msgid "can't do dependency tracking with input from stdin"
msgstr ""
-#: java/lang.c:564
+#: java/lang.c:756
msgid "couldn't determine target name for dependency tracking"
msgstr ""
@@ -20608,300 +19561,210 @@ msgid ""
"`--encoding=UTF-8' option"
msgstr ""
-#: java/mangle.c:85
+#: java/mangle.c:89
#, fuzzy, c-format
msgid "can't mangle %s"
msgstr "kan inte stänga %s"
-#: java/mangle_name.c:144 java/mangle_name.c:216
+#: java/mangle_name.c:140 java/mangle_name.c:210
msgid "internal error - invalid Utf8 name"
msgstr "internt fel - ogiltigt Utf8-namn"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:881
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:962
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1303
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1364
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1574
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1796
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1805
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1816
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1827
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1839
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1854
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1871
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1873
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1945
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2116
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2178
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2330
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2342
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2349
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2356
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2367
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2369
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2407
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2409
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2411
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2432
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2434
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2436
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2452
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2454
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2475
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2477
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2479
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2507
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2509
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2511
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2513
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2531
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2533
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2555
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2566
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2577
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2588
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2601
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2605
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2607
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2620
+#: java/parse-scan.y:880 java/parse.y:949 java/parse.y:1290 java/parse.y:1351
+#: java/parse.y:1555 java/parse.y:1777 java/parse.y:1786 java/parse.y:1797
+#: java/parse.y:1808 java/parse.y:1820 java/parse.y:1835 java/parse.y:1852
+#: java/parse.y:1854 java/parse.y:1935 java/parse.y:2106 java/parse.y:2168
+#: java/parse.y:2320 java/parse.y:2332 java/parse.y:2339 java/parse.y:2346
+#: java/parse.y:2357 java/parse.y:2359 java/parse.y:2397 java/parse.y:2399
+#: java/parse.y:2401 java/parse.y:2422 java/parse.y:2424 java/parse.y:2426
+#: java/parse.y:2442 java/parse.y:2444 java/parse.y:2465 java/parse.y:2467
+#: java/parse.y:2469 java/parse.y:2497 java/parse.y:2499 java/parse.y:2501
+#: java/parse.y:2503 java/parse.y:2521 java/parse.y:2523 java/parse.y:2534
+#: java/parse.y:2545 java/parse.y:2556 java/parse.y:2567 java/parse.y:2578
+#: java/parse.y:2591 java/parse.y:2595 java/parse.y:2597 java/parse.y:2610
msgid "Missing term"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:883
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:734
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:772
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:797
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:983
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1338
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1550
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1552
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1781
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1807
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1818
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1829
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1841
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1856
+#: java/parse-scan.y:882 java/parse.y:721 java/parse.y:759 java/parse.y:784
+#: java/parse.y:970 java/parse.y:1325 java/parse.y:1531 java/parse.y:1533
+#: java/parse.y:1762 java/parse.y:1788 java/parse.y:1799 java/parse.y:1810
+#: java/parse.y:1822 java/parse.y:1837
msgid "';' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:732
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:770
+#: java/parse.y:719 java/parse.y:757
msgid "Missing name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:795
+#: java/parse.y:782
msgid "'*' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:809
+#: java/parse.y:796
msgid "Class or interface declaration expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:846
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:848
+#: java/parse.y:833 java/parse.y:835
msgid "Missing class name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:851
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:855
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:863
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1023
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1284
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1616
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1867
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1899
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1952
+#: java/parse.y:838 java/parse.y:842 java/parse.y:850 java/parse.y:1010
+#: java/parse.y:1271 java/parse.y:1273 java/parse.y:1597 java/parse.y:1848
+#: java/parse.y:1880 java/parse.y:1942
msgid "'{' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:865
+#: java/parse.y:852
msgid "Missing super class name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:875
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:891
+#: java/parse.y:862 java/parse.y:878
msgid "Missing interface name"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:977
+#: java/parse.y:964
msgid "Missing variable initializer"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:994
+#: java/parse.y:981
msgid "Invalid declaration"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:997
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1082
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2153
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2175
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2179
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2214
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2291
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2301
+#: java/parse.y:984 java/parse.y:1069 java/parse.y:2143 java/parse.y:2165
+#: java/parse.y:2169 java/parse.y:2204 java/parse.y:2281 java/parse.y:2291
msgid "']' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1001
+#: java/parse.y:988
msgid "Unbalanced ']'"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1037
+#: java/parse.y:1024
msgid "Invalid method declaration, method name required"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1042
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1047
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1052
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2036
+#: java/parse.y:1029 java/parse.y:1034 java/parse.y:1039 java/parse.y:2026
msgid "Identifier expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1057
+#: java/parse.y:1044
msgid "Invalid method declaration, return type required"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1080
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1530
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1537
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1546
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1548
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1576
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1684
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1981
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2034
+#: java/parse.y:1067 java/parse.y:1511 java/parse.y:1518 java/parse.y:1527
+#: java/parse.y:1529 java/parse.y:1557 java/parse.y:1665 java/parse.y:1971
+#: java/parse.y:2024
msgid "')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1096
+#: java/parse.y:1083
msgid "Missing formal parameter term"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1111
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1116
+#: java/parse.y:1098 java/parse.y:1103
msgid "Missing identifier"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1136
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1145
+#: java/parse.y:1123 java/parse.y:1132
msgid "Missing class type term"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1301
+#: java/parse.y:1288
msgid "Invalid interface type"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1494
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1663
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1665
+#: java/parse.y:1475 java/parse.y:1644 java/parse.y:1646
msgid "':' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1516
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1521
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1526
+#: java/parse.y:1497 java/parse.y:1502 java/parse.y:1507
msgid "Invalid expression statement"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1572
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1612
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1680
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1748
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1869
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1938
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2028
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2030
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2038
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2274
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2276
+#: java/parse.y:1525 java/parse.y:1553 java/parse.y:1593 java/parse.y:1661
+#: java/parse.y:1729 java/parse.y:1850 java/parse.y:1928 java/parse.y:2018
+#: java/parse.y:2020 java/parse.y:2028 java/parse.y:2264 java/parse.y:2266
msgid "'(' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1614
+#: java/parse.y:1595
msgid "Missing term or ')'"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1661
+#: java/parse.y:1642
msgid "Missing or invalid constant expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1682
+#: java/parse.y:1663
msgid "Missing term and ')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1721
+#: java/parse.y:1702
msgid "Invalid control expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1723
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1725
+#: java/parse.y:1704 java/parse.y:1706
msgid "Invalid update expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1750
+#: java/parse.y:1731
msgid "Invalid init statement"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1941
+#: java/parse.y:1931
msgid "Missing term or ')' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1983
+#: java/parse.y:1973
msgid "'class' or 'this' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1985
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1987
+#: java/parse.y:1975 java/parse.y:1977
msgid "'class' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2032
+#: java/parse.y:2022
msgid "')' or term expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2151
+#: java/parse.y:2141
msgid "'[' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2229
+#: java/parse.y:2219
msgid "Field expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2296
+#: java/parse.y:2276 java/parse.y:2286
msgid "Missing term and ']' expected"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2400
+#: java/parse.y:2390
msgid "']' expected, invalid type expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2403
+#: java/parse.y:2393
msgid "Invalid type expression"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2515
+#: java/parse.y:2505
msgid "Invalid reference type"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2993
+#: java/parse.y:2977
msgid "Constructor invocation must be first thing in a constructor"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2995
+#: java/parse.y:2979
msgid "Only constructors can invoke constructors"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3004
+#: java/parse.y:2987
#, c-format
msgid ": `%s' JDK1.1(TM) feature"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3064
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3066
+#: java/parse.y:3046 java/parse.y:3048
#, c-format
msgid ""
"%s.\n"
@@ -20910,246 +19773,227 @@ msgstr ""
"%s.\n"
"%s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6879
+#: java/parse.y:6908
#, c-format
msgid "malformed .zip archive in CLASSPATH: %s"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6950
+#: java/parse.y:6979
#, c-format
msgid "Can't find default package `%s'. Check the CLASSPATH environment variable and the access to the archives"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12352
+#: java/parse.y:12192
#, c-format
msgid "missing static field `%s'"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12357
+#: java/parse.y:12197
#, c-format
msgid "not a static field `%s'"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12400
+#: java/parse.y:12240
#, c-format
msgid "No case for %s"
msgstr ""
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:13365
+#: java/parse.y:13172
#, c-format
msgid "unregistered operator %s"
msgstr ""
-#: java/typeck.c:553
+#: java/typeck.c:530
msgid "junk at end of signature string"
msgstr ""
-#: java/verify.c:479
+#: java/verify.c:471
msgid "bad pc in exception_table"
msgstr ""
-#: java/verify.c:485
-msgid "exception handler inside code that is being protected"
-msgstr ""
-
-#: java/verify.c:1395
+#: java/verify.c:1384
#, c-format
msgid "unknown opcode %d@pc=%d during verification"
msgstr ""
-#: java/verify.c:1465 java/verify.c:1478 java/verify.c:1482
+#: java/verify.c:1454 java/verify.c:1467 java/verify.c:1471
#, c-format
msgid "verification error at PC=%d"
msgstr ""
-#: java/lang-options.h:32
-msgid "Disable automatic array bounds checking"
-msgstr ""
-
-#: java/lang-options.h:34
-msgid "Disable assignability checks for stores into object arrays"
-msgstr ""
-
-#: java/lang-options.h:36
-msgid "Assume native functions are implemented using JNI"
-msgstr ""
-
-#: java/lang-options.h:38
-msgid "Replace system path"
-msgstr ""
-
-#: java/lang-options.h:40
-msgid "Set class path"
-msgstr ""
-
-#: java/lang-options.h:42
-msgid "Set class path (deprecated: use --classpath instead)"
-msgstr ""
-
-#: java/lang-options.h:44
-msgid "Choose class whose main method should be used"
-msgstr ""
-
-#: java/lang-options.h:46
-msgid "Choose input encoding (default comes from locale)"
-msgstr ""
-
-#: java/lang-options.h:48
-msgid "Add directory to class path"
-msgstr ""
-
-#: java/lang-options.h:50
-msgid "Directory where class files should be written"
-msgstr ""
-
-#: java/lang-options.h:52
-msgid "Warn if modifiers are specified when not necessary"
-msgstr ""
-
-#: java/lang-options.h:54
-msgid "Warn if deprecated empty statements are found"
-msgstr ""
-
-#: java/lang-options.h:56
-msgid "Warn if .class files are out of date"
-msgstr ""
-
-#: java/lang-options.h:58
-msgid "Always check for non gcj generated classes archives"
-msgstr ""
-
-#: java/lang-options.h:60
-msgid "Never optimize static class initialization code"
-msgstr ""
-
-#: java/lang-options.h:62
-msgid "Use offset tables for virtual method calls"
-msgstr ""
-
-#: objc/objc-act.c:651
+#: objc/objc-act.c:689
#, c-format
msgid "object does not conform to the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:737 objc/objc-act.c:810
+#: objc/objc-act.c:775 objc/objc-act.c:848
#, c-format
msgid "class `%s' does not implement the `%s' protocol"
msgstr "klass \"%s\" implementerar inte protokollet \"%s\""
-#: objc/objc-act.c:914
-#, c-format
-msgid "`%s' cannot be statically allocated"
-msgstr "\"%s\" kan inte vara statiskt allokerad"
+#: objc/objc-act.c:951
+#, fuzzy, c-format
+msgid "statically allocated instance of Objective-C class `%s'"
+msgstr "statiskt allokerade objekt stöds inte"
-#: objc/objc-act.c:963
+#: objc/objc-act.c:998
#, fuzzy, c-format
msgid "unexpected type for `id' (%s)"
msgstr "Oväntad typ på \"id\" (%s)"
-#: objc/objc-act.c:968
+#: objc/objc-act.c:1003
msgid "undefined type `id', please import <objc/objc.h>"
msgstr ""
-#: objc/objc-act.c:1019
+#: objc/objc-act.c:1052
#, c-format
msgid "protocol `%s' has circular dependency"
msgstr ""
-#: objc/objc-act.c:1041 objc/objc-act.c:5301
+#: objc/objc-act.c:1074 objc/objc-act.c:5982
#, fuzzy, c-format
msgid "cannot find protocol declaration for `%s'"
msgstr "ingen tidigare deklaration av \"%s\""
-#: objc/objc-act.c:1289 objc/objc-act.c:5877 objc/objc-act.c:6195
-#: objc/objc-act.c:6244 objc/objc-act.c:6280 objc-parse.y:1799
+#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6513
+#: objc/objc-act.c:6822 objc/objc-act.c:6875 objc/objc-act.c:6900
#, fuzzy, c-format
msgid "cannot find interface declaration for `%s'"
msgstr "Cirkulärt arv i interfacedeklaration för \"%s\""
-#: objc/objc-act.c:1328
+#: objc/objc-act.c:1423
+#, fuzzy, c-format
+msgid "interface `%s' does not have valid constant string layout"
+msgstr "argumentet till \"asm\" är inte en konstant sträng"
+
+#: objc/objc-act.c:1439
#, fuzzy, c-format
msgid "cannot find reference tag for class `%s'"
msgstr "Kan inte hitta filen med klass %s."
-#: objc/objc-act.c:2050
+#: objc/objc-act.c:2179
#, c-format
msgid "creating selector for non existant method %s"
msgstr ""
-#: objc/objc-act.c:2364
+#: objc/objc-act.c:2389
+#, fuzzy, c-format
+msgid "`%s' is not an Objective-C class name or alias"
+msgstr "\"%s\" är inte ett giltigt filnamn"
+
+#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6769
+#: objc/objc-act.c:7059 objc/objc-act.c:7088
+msgid "Objective-C declarations may only appear in global scope"
+msgstr ""
+
+#: objc/objc-act.c:2505
#, fuzzy, c-format
msgid "cannot find class `%s'"
msgstr "Kan inte hitta klass \"%s\""
-#: objc/objc-act.c:2366
+#: objc/objc-act.c:2507
#, fuzzy, c-format
msgid "class `%s' already exists"
msgstr "Klass \"%s\" finns redan"
+#: objc/objc-act.c:2532 objc/objc-act.c:6791
+#, c-format
+msgid "`%s' redeclared as different kind of symbol"
+msgstr "\"%s\" omdeklarerad som en annan sorts symbol"
+
#. fatal did not work with 2 args...should fix
-#: objc/objc-act.c:2473
+#: objc/objc-act.c:2680
#, fuzzy, c-format
msgid "cannot find interface declaration for `%s', superclass of `%s'"
msgstr "Cirkulärt arv i interfacedeklaration för \"%s\""
-#: objc/objc-act.c:2480
+#: objc/objc-act.c:2687
#, fuzzy, c-format
msgid "circular inheritance in interface declaration for `%s'"
msgstr "Cirkulärt arv i interfacedeklaration för \"%s\""
-#: objc/objc-act.c:3566 objc/objc-act.c:3583
-msgid "inconsistent instance variable specification"
+#: objc/objc-act.c:2780 objc/objc-act.c:2924 objc/objc-act.c:3024
+#: objc/objc-act.c:3200 objc/objc-act.c:3240
+msgid "Use `-fobjc-exceptions' to enable Objective-C exception syntax"
msgstr ""
-#: objc/objc-act.c:4580
-msgid "can not use an object as parameter to a method\n"
+#: objc/objc-act.c:2787
+msgid "`@throw;' (rethrow) used outside of a `@catch' block"
msgstr ""
-#: objc/objc-act.c:4780
-#, c-format
-msgid "multiple declarations for method `%s'"
-msgstr "multiple deklaration av metod \"%s\""
+#: objc/objc-act.c:3027
+msgid "`@catch' parameter is not a known Objective-C class type"
+msgstr ""
-#: objc/objc-act.c:4946
-#, c-format
-msgid "invalid receiver type `%s'"
-msgstr "ogiltig mottagartyp \"%s\""
+#: objc/objc-act.c:3036
+msgid "Exception already handled by preceding `@catch(id)'"
+msgstr ""
-#: objc/objc-act.c:4977 objc/objc-act.c:5003 objc/objc-act.c:5051
+#: objc/objc-act.c:3041
#, c-format
-msgid "`%s' does not respond to `%s'"
-msgstr "\"%s\" svarar inte på \"%s\""
+msgid "Exception of type `%s *' already handled by `@catch (%s *)'"
+msgstr ""
-#: objc/objc-act.c:4983 objc/objc-act.c:7318
-#, c-format
-msgid "no super class declared in interface for `%s'"
-msgstr "ingen superklass deklarerad i interface för \"%s\""
+#: objc/objc-act.c:3206
+msgid "`@try' without `@catch' or `@finally'"
+msgstr ""
-#: objc/objc-act.c:5081
+#: objc/objc-act.c:3647
+msgid "%Jtype '%D' does not have a known size"
+msgstr ""
+
+#: objc/objc-act.c:4256
#, fuzzy
-msgid "cannot find class (factory) method"
-msgstr "kan inte hitta klass(fabrik)-metod"
+msgid "%J%s `%s'"
+msgstr "%s: %s"
+
+#: objc/objc-act.c:4281 objc/objc-act.c:4300
+msgid "inconsistent instance variable specification"
+msgstr ""
+
+#: objc/objc-act.c:5303
+msgid "can not use an object as parameter to a method\n"
+msgstr ""
-#: objc/objc-act.c:5082 objc/objc-act.c:5126
+#: objc/objc-act.c:5504
+#, fuzzy, c-format
+msgid "multiple %s named `%c%s' found"
+msgstr "flera parametrar med namn \"%s\""
+
+#: objc/objc-act.c:5721
+#, fuzzy, c-format
+msgid "no super class declared in @interface for `%s'"
+msgstr "ingen superklass deklarerad i interface för \"%s\""
+
+#: objc/objc-act.c:5809
#, c-format
-msgid "return type for `%s' defaults to id"
-msgstr "returtyp för \"%s\" är som standard id"
+msgid "invalid receiver type `%s'"
+msgstr "ogiltig mottagartyp \"%s\""
+
+#: objc/objc-act.c:5820
+#, fuzzy, c-format
+msgid "`%s' may not respond to `%c%s'"
+msgstr "\"%s\" svarar inte på \"%s\""
-#: objc/objc-act.c:5099
+#: objc/objc-act.c:5825
#, fuzzy, c-format
-msgid "method `%s' not implemented by protocol"
+msgid "`%c%s' not implemented by protocol(s)"
msgstr "metod \"%s\" implementeras inte av protokoll."
-#: objc/objc-act.c:5108
-msgid "return type defaults to id"
-msgstr "returtyp är som standard id"
+#: objc/objc-act.c:5830
+msgid "(Messages without a matching method signature"
+msgstr ""
-#: objc/objc-act.c:5125
+#: objc/objc-act.c:5831
+msgid "will be assumed to return `id' and accept"
+msgstr ""
+
+#: objc/objc-act.c:5832
#, fuzzy
-msgid "cannot find method"
-msgstr "kan inte hitta metod."
+msgid "`...' as arguments.)"
+msgstr "inga argument"
-#: objc/objc-act.c:5399
+#: objc/objc-act.c:6079
#, fuzzy, c-format
msgid "undeclared selector `%s'"
msgstr "omdeklaration av \"%s\""
@@ -21163,310 +20007,2007 @@ msgstr "omdeklaration av \"%s\""
#. to an instance variable. It's better to catch the cases
#. where this is done unknowingly than to support the above
#. paradigm.
-#: objc/objc-act.c:5443
+#: objc/objc-act.c:6121
#, c-format
msgid "instance variable `%s' accessed in class method"
msgstr ""
-#: objc/objc-act.c:5678
+#: objc/objc-act.c:6327
#, fuzzy, c-format
-msgid "duplicate definition of class method `%s'"
-msgstr "upprepad definition av klassmetod \"%s\"."
+msgid "duplicate declaration of method `%c%s'"
+msgstr "upprepad deklaration av klassmetod \"%s\"."
+
+#: objc/objc-act.c:6368
+#, c-format
+msgid "duplicate interface declaration for category `%s(%s)'"
+msgstr ""
-#: objc/objc-act.c:5684
+#: objc/objc-act.c:6398
#, fuzzy, c-format
-msgid "duplicate declaration of class method `%s'"
-msgstr "upprepad deklaration av klassmetod \"%s\"."
+msgid "illegal reference type specified for instance variable `%s'"
+msgstr "ignorerar asm för ickestatisk lokal variabel \"%s\""
-#: objc/objc-act.c:5720
+#: objc/objc-act.c:6414
#, fuzzy, c-format
-msgid "duplicate definition of instance method `%s'"
-msgstr "upprepad definition av klassmetod \"%s\"."
+msgid "instance variable `%s' has unknown size"
+msgstr "instansvariabel \"%s\" är deklarerad som %s"
-#: objc/objc-act.c:5726
+#. vtable pointers are Real Bad(tm), since Obj-C cannot initialize them
+#: objc/objc-act.c:6428
#, fuzzy, c-format
-msgid "duplicate declaration of instance method `%s'"
-msgstr "upprepad deklaration av klassmetod \"%s\"."
+msgid "type `%s' has virtual member functions"
+msgstr "namn saknas på medlemsfunktion"
+
+#: objc/objc-act.c:6429
+#, fuzzy, c-format
+msgid "illegal aggregate type `%s' specified for instance variable `%s'"
+msgstr "ignorerar asm för ickestatisk lokal variabel \"%s\""
-#: objc/objc-act.c:5766
+#: objc/objc-act.c:6437
#, c-format
-msgid "duplicate interface declaration for category `%s(%s)'"
+msgid "type `%s' has a user-defined constructor"
+msgstr ""
+
+#: objc/objc-act.c:6439
+#, c-format
+msgid "type `%s' has a user-defined destructor"
+msgstr ""
+
+#: objc/objc-act.c:6440
+msgid "C++ constructors and destructors will not be invoked for Objective-C fields"
msgstr ""
-#: objc/objc-act.c:5852
+#: objc/objc-act.c:6490
#, c-format
msgid "instance variable `%s' is declared private"
msgstr "instansvariabel \"%s\" är deklarerad som privat"
-#: objc/objc-act.c:5899
+#: objc/objc-act.c:6539
+#, fuzzy, c-format
+msgid "instance variable `%s' is %s; this will be a hard error in the future"
+msgstr "instansvariabel \"%s\" är deklarerad som privat"
+
+#: objc/objc-act.c:6546
#, c-format
msgid "instance variable `%s' is declared %s"
msgstr "instansvariabel \"%s\" är deklarerad som %s"
-#: objc/objc-act.c:5909
+#: objc/objc-act.c:6556
msgid "static access to object of type `id'"
msgstr "statisk access till objekt av typ \"id\""
-#: objc/objc-act.c:5934 objc/objc-act.c:6027
+#: objc/objc-act.c:6578 objc/objc-act.c:6666
#, c-format
msgid "incomplete implementation of class `%s'"
msgstr "inkomplett implementation av klass \"%s\""
-#: objc/objc-act.c:5938 objc/objc-act.c:6032
+#: objc/objc-act.c:6582 objc/objc-act.c:6671
#, c-format
msgid "incomplete implementation of category `%s'"
msgstr "inkomplett implementation av kategori \"%s\""
-#: objc/objc-act.c:5943 objc/objc-act.c:6037
+#: objc/objc-act.c:6587 objc/objc-act.c:6676
#, c-format
msgid "method definition for `%c%s' not found"
msgstr "metoddefinition för \"%c%s\" kan inte hittas"
-#: objc/objc-act.c:6081
+#: objc/objc-act.c:6717
#, c-format
msgid "%s `%s' does not fully implement the `%s' protocol"
msgstr ""
-#: objc/objc-act.c:6139 objc/objc-act.c:8249
+#: objc/objc-act.c:6775 objc/objc-act.c:8803
msgid "`@end' missing in implementation context"
msgstr ""
-#: objc/objc-act.c:6167
+#: objc/objc-act.c:6805
#, c-format
msgid "reimplementation of class `%s'"
msgstr "omimplementation av klass \"%s\""
-#: objc/objc-act.c:6209
+#: objc/objc-act.c:6836
#, c-format
msgid "conflicting super class name `%s'"
msgstr ""
-#: objc/objc-act.c:6224
+#: objc/objc-act.c:6838
+#, c-format
+msgid "previous declaration of `%s'"
+msgstr "tidigare deklaration av \"%s\""
+
+#: objc/objc-act.c:6852 objc/objc-act.c:6854
#, c-format
msgid "duplicate interface declaration for class `%s'"
msgstr ""
-#: objc/objc-act.c:6506
+#: objc/objc-act.c:7121
#, c-format
msgid "duplicate declaration for protocol `%s'"
msgstr ""
-#: objc/objc-act.c:7363
-msgid "[super ...] must appear in a method context"
-msgstr "[super ...] måste stå i metodkontext"
+#. Add a readable method name to the warning.
+#: objc/objc-act.c:7613
+#, fuzzy
+msgid "%J%s `%c%s'"
+msgstr "%s: %s"
-#: objc/objc-act.c:8354 objc/objc-act.c:8370
+#: objc/objc-act.c:7908
#, c-format
-msgid "potential selector conflict for method `%s'"
-msgstr ""
+msgid "no super class declared in interface for `%s'"
+msgstr "ingen superklass deklarerad i interface för \"%s\""
+
+#: objc/objc-act.c:7956
+msgid "[super ...] must appear in a method context"
+msgstr "[super ...] måste stå i metodkontext"
-#: objc-parse.y:2655
+#: objc/objc-parse.y:2700
msgid "`@end' must appear in an implementation context"
msgstr ""
-#: objc-parse.y:2931
+#: objc/objc-parse.y:2913
msgid "method definition not in class context"
msgstr ""
-#: objc/lang-options.h:27
-msgid "Dump decls to a .decl file"
+#: options.c:24
+#, fuzzy
+msgid "Display this information"
+msgstr " --help Visa den här informatationen\n"
+
+#: options.c:30
+msgid "--param <param>=<value>\tSet paramter <param> to value. See below for a complete list of parameters"
+msgstr ""
+
+#: options.c:39
+msgid "-A<question>=<answer>\tAssert the <answer> to <question>. Putting '-' before <question> disables the <answer> to <question>"
msgstr ""
-#: objc/lang-options.h:29
-msgid "Generate code for GNU runtime environment"
+#: options.c:42
+#, fuzzy
+msgid "Do not discard comments"
+msgstr "ej avslutad kommentar"
+
+#: options.c:45
+msgid "Do not discard comments in macro expansions"
+msgstr ""
+
+#: options.c:48
+msgid "-D<macro>[=<val>]\tDefine a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1"
+msgstr ""
+
+#: options.c:54
+#, fuzzy
+msgid "-G<number>\tPut global and static data smaller than <number> bytes into a special section (on some targets)"
+msgstr ""
+" -G <nummer> Placera global and statisk data mindre än <nummer>\n"
+" bytes i en speciell sektion (vissa arkitekturer)\n"
+
+#: options.c:57
+#, fuzzy
+msgid "Print the name of header files as they are used"
+msgstr "Kompilering av include-fil begärd"
+
+#: options.c:66
+#, fuzzy
+msgid "Generate make dependencies and compile"
+msgstr "Generera \"little endian\"-kod."
+
+#: options.c:75
+msgid "Treat missing header files as generated files"
+msgstr ""
+
+#: options.c:81
+msgid "Like -MD but ignore system header files"
+msgstr ""
+
+#: options.c:90
+msgid "-MQ <target>\tAdd a MAKE-quoted target"
+msgstr ""
+
+#: options.c:96
+#, fuzzy
+msgid "-O<number>\tSet optimization level to <number>"
+msgstr " -O[nummer] Sätt optimeringsnivå till [nummer]\n"
+
+#: options.c:99
+#, fuzzy
+msgid "Optimize for space rather than speed"
+msgstr " -Os Optimera för storlek istället för hastighet\n"
+
+#: options.c:102
+#, fuzzy
+msgid "Do not generate #line directives"
+msgstr "Generera inte .size-direktiv"
+
+#: options.c:105
+msgid "-U<macro>\tUndefine <macro>"
+msgstr ""
+
+#: options.c:108
+msgid "This switch is deprecated; use -Wextra instead"
+msgstr ""
+
+#: options.c:114
+msgid "Warn about returning structures, unions or arrays"
+msgstr ""
+
+#: options.c:120
+msgid "Warn about casting functions to incompatible types"
+msgstr ""
+
+#: options.c:123
+msgid "Warn about pointer casts which increase alignment"
+msgstr ""
+
+#: options.c:126
+msgid "Warn about casts which discard qualifiers"
+msgstr ""
+
+#: options.c:129
+#, fuzzy
+msgid "Warn about subscripts whose type is \"char\""
+msgstr "Varna om index har typen \"char\""
+
+#: options.c:138
+msgid "Warn about possibly confusing type conversions"
+msgstr ""
+
+#: options.c:141
+#, fuzzy
+msgid "Warn when all constructors and destructors are private"
+msgstr "Varna när ett funktionsargument är en struktur"
+
+#: options.c:144
+#, fuzzy
+msgid "Warn when a declaration is found after a statement"
+msgstr "Varna när en funktion är oanvänd"
+
+#: options.c:147
+msgid "Warn if deprecated class, method, or field is used"
+msgstr ""
+
+#: options.c:150
+msgid "Warn about uses of __attribute__((deprecated)) declarations"
+msgstr ""
+
+#: options.c:153
+msgid "Warn when an optimization pass is disabled"
+msgstr ""
+
+#: options.c:156
+#, fuzzy
+msgid "Warn about compile-time integer division by zero"
+msgstr "Fånga heltalsdivision med noll"
+
+#: options.c:159
+msgid "Warn about violations of Effective C++ style rules"
+msgstr ""
+
+#: options.c:162
+msgid "Warn about stray tokens after #elif and #endif"
+msgstr ""
+
+#: options.c:165
+msgid "Treat all warnings as errors"
+msgstr ""
+
+#: options.c:168
+#, fuzzy
+msgid "Make implicit function declarations an error"
+msgstr "motstridande deklarationer av \"%s\""
+
+#: options.c:171
+msgid "Print extra (possibly unwanted) warnings"
+msgstr ""
+
+#: options.c:174
+msgid "Warn if deprecated empty statements are found"
+msgstr ""
+
+#: options.c:177
+msgid "Warn if testing floating point numbers for equality"
+msgstr ""
+
+#: options.c:180
+msgid "Warn about printf/scanf/strftime/strfmon format string anomalies"
+msgstr ""
+
+#: options.c:183
+#, fuzzy
+msgid "Warn if passing too many arguments to a function for its format string"
+msgstr "För många argument till funktionen \"va_start\""
+
+#: options.c:186
+msgid "Warn about format strings that are not literals"
+msgstr ""
+
+#: options.c:189
+msgid "Warn about possible security problems with format functions"
msgstr ""
-#: objc/lang-options.h:32
-msgid "Generate code for NeXT runtime environment"
+#: options.c:192
+msgid "Warn about strftime formats yielding 2-digit years"
msgstr ""
-#: objc/lang-options.h:35
+#: options.c:201
+msgid "Enable warnings about inter-procedural problems"
+msgstr ""
+
+#: options.c:207
+msgid "Warn about implicit function declarations"
+msgstr ""
+
+#: options.c:210
+msgid "Warn when a declaration does not specify a type"
+msgstr ""
+
+#: options.c:216
+msgid "Warn about variables which are initialized to themselves."
+msgstr ""
+
+#: options.c:219
+msgid "Warn when an inlined function cannot be inlined"
+msgstr ""
+
+#: options.c:222
+msgid "Warn about invalid uses of the \"offsetof\" macro"
+msgstr ""
+
+#: options.c:225
+msgid "Warn about PCH files that are found but not used"
+msgstr ""
+
+#: options.c:228
+#, fuzzy
+msgid "-Wlarger-than-<number>\tWarn if an object is larger than <number> bytes"
+msgstr " -Wlarger-than-<nummer> Varna om objekt är större än <nummer> bytes\n"
+
+#: options.c:231
+msgid "Do not warn about using \"long long\" when -pedantic"
+msgstr ""
+
+#: options.c:234
+#, fuzzy
+msgid "Warn about suspicious declarations of \"main\""
+msgstr "Varna om tveksamma deklarationer av main"
+
+#: options.c:237
+#, fuzzy
+msgid "Warn about possibly missing braces around initializers"
+msgstr "Varna om eventuellt saknade parenteser"
+
+#: options.c:240
+#, fuzzy
+msgid "Warn about global functions without previous declarations"
+msgstr "sektion \"%s\" står i konflikt med tidigare deklaration"
+
+#: options.c:243
+msgid "Warn about functions which might be candidates for format attributes"
+msgstr ""
+
+#: options.c:246
+#, fuzzy
+msgid "Warn about functions which might be candidates for __attribute__((noreturn))"
+msgstr "Varna om funktioner som är möjliga kandidater för attributet noreturn"
+
+#: options.c:249
+#, fuzzy
+msgid "Warn about global functions without prototypes"
+msgstr "Varna om aritmetik med funktionspekare"
+
+#: options.c:252
+#, fuzzy
+msgid "Warn about use of multi-character character constants"
+msgstr "flerteckens teckenkonstant"
+
+#: options.c:255
+#, fuzzy
+msgid "Warn about \"extern\" declarations not at file scope"
+msgstr "Varna om multipla deklarationer av samma objekt"
+
+#: options.c:258
+msgid "Warn when non-templatized friend functions are declared within a template"
+msgstr ""
+
+#: options.c:261
+msgid "Warn about non-virtual destructors"
+msgstr ""
+
+#: options.c:267
+msgid "Warn if a C-style cast is used in a program"
+msgstr ""
+
+#: options.c:270
+#, fuzzy
+msgid "Warn if an old-style parameter definition is used"
+msgstr "Varna när en funktionsparameter är oanvänd"
+
+#: options.c:273
+msgid "Warn if .class files are out of date"
+msgstr ""
+
+#: options.c:276
+msgid "Warn about overloaded virtual function names"
+msgstr ""
+
+#: options.c:279
+msgid "Warn when the packed attribute has no effect on struct layout"
+msgstr ""
+
+#: options.c:282
+#, fuzzy
+msgid "Warn when padding is required to align structure members"
+msgstr "Varna när ett funktionsargument är en struktur"
+
+#: options.c:285
+#, fuzzy
+msgid "Warn about possibly missing parentheses"
+msgstr "Varna om eventuellt saknade parenteser"
+
+#: options.c:288
+msgid "Warn when converting the type of pointers to member functions"
+msgstr ""
+
+#: options.c:291
+msgid "Warn about function pointer arithmetic"
+msgstr "Varna om aritmetik med funktionspekare"
+
+#: options.c:294
+#, fuzzy
+msgid "Warn if inherited methods are unimplemented"
+msgstr "Varna om nästlade kommentarer upptäcks"
+
+#: options.c:297
+msgid "Warn about multiple declarations of the same object"
+msgstr "Varna om multipla deklarationer av samma objekt"
+
+#: options.c:300
+msgid "Warn if modifiers are specified when not necessary"
+msgstr ""
+
+#: options.c:303
+msgid "Warn when the compiler reorders code"
+msgstr ""
+
+#: options.c:306
+msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)"
+msgstr ""
+
+#: options.c:309
msgid "Warn if a selector has multiple methods"
msgstr ""
-#: objc/lang-options.h:39
-msgid "Do not warn if inherited methods are unimplemented"
+#: options.c:312
+msgid "Warn about possible violations of sequence point rules"
msgstr ""
-#: objc/lang-options.h:41
-msgid "Generate C header of platform specific features"
+#: options.c:315
+msgid "Warn when one local variable shadows another"
msgstr ""
-#: objc/lang-options.h:43
-msgid "Specify the name of the class for constant strings"
+#: options.c:318
+#, fuzzy
+msgid "Warn about signed-unsigned comparisons"
+msgstr "Varna om jämförelser mellan signed/unsigned"
+
+#: options.c:321
+msgid "Warn when overload promotes from unsigned to signed"
msgstr ""
-#. This is the contribution to the `lang_options' array in gcc.c for
-#. treelang.
-#: treelang/lang-options.h:26
-msgid "(debug) trace parsing process"
+#: options.c:324
+#, fuzzy
+msgid "Warn about code which might break strict aliasing rules"
+msgstr "Varna om funktioner som är möjliga kandidater för attributet noreturn"
+
+#: options.c:327
+#, fuzzy
+msgid "Warn about unprototyped function declarations"
+msgstr "Varna om tveksamma deklarationer av main"
+
+#: options.c:330
+msgid "Warn about constructs with surprising meanings"
msgstr ""
-#: treelang/lang-options.h:27
-msgid "(debug) trace lexical analysis"
+#: options.c:333
+msgid "Warn about enumerated switches, with no default, missing a case"
msgstr ""
-#: config/rs6000/darwin.h:62
-msgid " conflicting code gen style switches are used"
+#: options.c:336
+msgid "Warn about enumerated switches missing a \"default:\" statement"
msgstr ""
-#: config/i386/mingw32.h:85 config/i386/cygwin.h:171
-msgid "shared and mdll are not compatible"
-msgstr "shared och mdll är inkompatibla"
+#: options.c:339
+msgid "Warn about all enumerated switches missing a specific case"
+msgstr ""
-#: java/lang-specs.h:33
-msgid "-fjni and -femit-class-files are incompatible"
+#: options.c:342
+msgid "Warn when synthesis behavior differs from Cfront"
msgstr ""
-#: java/lang-specs.h:34
-msgid "-fjni and -femit-class-file are incompatible"
+#: options.c:345
+msgid "Do not suppress warnings from system headers"
msgstr ""
-#: java/lang-specs.h:35 java/lang-specs.h:36
-msgid "-femit-class-file should used along with -fsyntax-only"
+#: options.c:348
+msgid "Warn about features not present in traditional C"
msgstr ""
-#: ada/lang-specs.h:38 java/jvspec.c:77 gcc.c:716
-msgid "-pg and -fomit-frame-pointer are incompatible"
-msgstr "-pg och -fomit-frame-pointer är inkompatibla"
+#: options.c:357
+msgid "Warn if an undefined macro is used in an #if directive"
+msgstr ""
+
+#: options.c:360
+#, fuzzy
+msgid "Warn about uninitialized automatic variables"
+msgstr "Varna om aritmetik med funktionspekare"
-#: ada/lang-specs.h:41
-msgid "-c or -S required for Ada"
+#: options.c:363
+msgid "Warn about unrecognized pragmas"
msgstr ""
-#: config/darwin.h:212
-msgid "-current_version only allowed with -dynamiclib"
+#: options.c:366
+msgid "Warn about code that will never be executed"
msgstr ""
-#: config/darwin.h:215
-msgid "-install_name only allowed with -dynamiclib"
+#: options.c:369
+msgid "Enable all -Wunused- warnings"
msgstr ""
-#: config/darwin.h:220
-msgid "-bundle not allowed with -dynamiclib"
+#: options.c:372
+msgid "Warn when a function is unused"
+msgstr "Varna när en funktion är oanvänd"
+
+#: options.c:375
+msgid "Warn when a label is unused"
+msgstr "Varna när en etikett är oanvänd"
+
+#: options.c:378
+msgid "Warn about macros defined in the main file that are not used"
msgstr ""
-#: config/darwin.h:221
-msgid "-bundle_loader not allowed with -dynamiclib"
+#: options.c:381
+msgid "Warn when a function parameter is unused"
+msgstr "Varna när en funktionsparameter är oanvänd"
+
+#: options.c:384
+msgid "Warn when an expression value is unused"
+msgstr "Varna när ett uttrycksvärde är oanvänt"
+
+#: options.c:387
+msgid "Warn when a variable is unused"
+msgstr "Varna när en variabel är oanvänd"
+
+#: options.c:390
+msgid "Give strings the type \"array of char\""
msgstr ""
-#: config/darwin.h:222
-msgid "-client_name not allowed with -dynamiclib"
+#: options.c:393
+msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead"
msgstr ""
-#: config/darwin.h:225
-msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
+#: options.c:396
+#, fuzzy
+msgid "-aux-info <file>\tEmit declaration information into <file>"
+msgstr " -aux-info <fil> Generera deklarationsinfo till fil <fil>\n"
+
+#: options.c:408
+#, fuzzy
+msgid "-d<letters>\tEnable dumps from specific passes of the compiler"
+msgstr " -d[bokstäver] Slå på dumpning från angivna delar av kompilatorn\n"
+
+#: options.c:411
+msgid "-dumpbase <file>\tSet the file basename to be used for dumps"
msgstr ""
-#: config/darwin.h:226
-msgid "-force_flat_namespace not allowed with -dynamiclib"
+#: options.c:414
+msgid "--CLASSPATH\tDeprecated; use --classpath instead"
msgstr ""
-#: config/darwin.h:228
-msgid "-keep_private_externs not allowed with -dynamiclib"
+#: options.c:429
+msgid "Enforce class member access control semantics"
msgstr ""
-#: config/darwin.h:229
-msgid "-private_bundle not allowed with -dynamiclib"
+#: options.c:432
+msgid "Align the start of functions"
msgstr ""
-#: config/sparc/freebsd.h:34 config/ia64/freebsd.h:23
-#: config/alpha/freebsd.h:44 config/rs6000/sysv4.h:1107
-#: config/i386/freebsd-aout.h:213
-msgid "`-p' not supported; use `-pg' and gprof(1)"
-msgstr "\"-p\" stödjs inte; använd \"-pg\" och gprof(1)"
+#: options.c:438
+msgid "Align labels which are only reached by jumping"
+msgstr ""
+
+#: options.c:444
+msgid "Align all labels"
+msgstr ""
+
+#: options.c:450
+msgid "Align the start of loops"
+msgstr ""
+
+#: options.c:459
+msgid "Change when template instances are emitted"
+msgstr ""
+
+#: options.c:462
+msgid "Specify that arguments may alias each other and globals"
+msgstr ""
+
+#: options.c:465
+msgid "Assume arguments may alias globals but not each other"
+msgstr ""
+
+#: options.c:468
+msgid "Assume arguments alias neither each other nor globals"
+msgstr ""
+
+#: options.c:471
+msgid "Recognize the \"asm\" keyword"
+msgstr ""
+
+#: options.c:483
+msgid "Generate unwind tables that are exact at each instruction boundary"
+msgstr ""
+
+#: options.c:486
+msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements"
+msgstr ""
+
+#: options.c:489
+msgid "Backslashes in character and hollerith constants are special (not C-style)"
+msgstr ""
+
+#: options.c:492
+msgid "Delete libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:495
+msgid "Disable libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:498
+msgid "Enable libU77 intrinsics with bad interfaces"
+msgstr ""
+
+#: options.c:501
+msgid "Hide libU77 intrinsics with bad interfaces"
+msgstr ""
-#: config/sparc/linux64.h:197 config/sparc/linux64.h:208
-#: config/sparc/netbsd-elf.h:163 config/sparc/netbsd-elf.h:182
-#: config/sparc/sol2-bi.h:168 config/sparc/sol2-bi.h:178
+#: options.c:504
+msgid "--bootclasspath=<path>\tReplace system path"
+msgstr ""
+
+#: options.c:507
#, fuzzy
-msgid "may not use both -m32 and -m64"
-msgstr "får inte använda både -mfp64 och -m4650"
+msgid "Generate code to check bounds before indexing arrays"
+msgstr "Generera kod för Intel as"
-#: config/arm/arm.h:178
-msgid "-mapcs-26 and -mapcs-32 may not be used together"
-msgstr "-mapcs-26 och -mapcs-32 får inte användas tillsammans"
+#: options.c:510
+msgid "Replace add, compare, branch with branch on count register"
+msgstr ""
-#: config/arm/arm.h:180
-msgid "-msoft-float and -mhard_float may not be used together"
-msgstr "-msoft-float och -mhard_float får inte användas tillsammans"
+#: options.c:513
+msgid "Use profiling information for branch probabilities"
+msgstr ""
-#: config/arm/arm.h:182
-msgid "-mbig-endian and -mlittle-endian may not be used together"
-msgstr "-mbig-endian och -mlittle-endian får inte användas tillsammans"
+#: options.c:516
+msgid "Perform branch target load optimization before prologue / epilogue threading"
+msgstr ""
+
+#: options.c:519
+msgid "Perform branch target load optimization after prologue / epilogue threading"
+msgstr ""
-#: config/i386/sco5.h:195
+#: options.c:522
#, fuzzy
-msgid "-pg not supported on this platform"
-msgstr "attributet \"section\" stöds inte för denna målarkitektur"
+msgid "Recognize built-in functions"
+msgstr "Känn inte igen några inbyggda funktioner"
-#: config/i386/sco5.h:196
+#: options.c:528
#, fuzzy
-msgid "-p and -pp specified - pick one"
-msgstr "-I- angiven två gånger"
+msgid "-fcall-saved-<register>\tMark <register> as being preserved across functions"
+msgstr " -fcall-saved-<register> Ange att <register> bevaras av funktioner\n"
-#: config/i386/sco5.h:271
+#: options.c:531
#, fuzzy
-msgid "-G and -static are mutually exclusive"
-msgstr "-pedantic och -traditional är ömsesidigt uteslutande"
+msgid "-fcall-used-<register>\tMark <register> as being corrupted by function calls"
+msgstr " -fcall-used-<register> Ange att <register> förstörs av funktionsanrop\n"
-#: f/lang-specs.h:38 gcc.c:689
-msgid "GNU C does not support -C without using -E"
-msgstr "GNU C stödjer inte -C utan -E"
+#: options.c:534
+msgid "Save registers around function calls"
+msgstr ""
+
+#: options.c:537
+msgid "Program written in strict mixed-case"
+msgstr ""
+
+#: options.c:540
+msgid "Compile as if program written in lowercase"
+msgstr ""
+
+#: options.c:543
+msgid "Preserve case used in program"
+msgstr ""
+
+#: options.c:546
+msgid "Program written in lowercase"
+msgstr ""
+
+#: options.c:549
+msgid "Program written in uppercase"
+msgstr ""
-#: f/lang-specs.h:39 gcc.c:690
+#: options.c:552
+msgid "Compile as if program written in uppercase"
+msgstr ""
+
+#: options.c:555
+msgid "Check the return value of new"
+msgstr ""
+
+#: options.c:561
+msgid "--classpath=<path>\tSet class path"
+msgstr ""
+
+#: options.c:564
+msgid "Do not put uninitialized globals in the common section"
+msgstr ""
+
+#: options.c:570
+msgid "Allow the arguments of the '?' operator to have different types"
+msgstr ""
+
+#: options.c:573
+msgid "Reduce the size of object files"
+msgstr ""
+
+#: options.c:576
#, fuzzy
-msgid "GNU C does not support -CC without using -E"
-msgstr "GNU C stödjer inte -C utan -E"
+msgid "Make string literals \"const char[]\" not \"char[]\""
+msgstr "Markera strängar som \"const char *\""
-#: config/mcore/mcore.h:60
-msgid "choose either big or little endian, not both"
+#: options.c:579
+msgid "-fconst-string-class=<name>\tUse class <name> for constant strings"
msgstr ""
-#: config/mcore/mcore.h:63
-msgid "choose either m340 or m210 not both"
+#: options.c:582
+#, fuzzy
+msgid "Perform a register copy-propagation optimization pass"
+msgstr "Utför optimering för svansrekursion"
+
+#: options.c:585
+#, fuzzy
+msgid "Perform cross-jumping optimization"
+msgstr "Utför optimering för svansrekursion"
+
+#: options.c:588
+msgid "When running CSE, follow jumps to their targets"
msgstr ""
-#: config/mcore/mcore.h:64
-msgid "the m210 does not have little endian support"
+#: options.c:591
+msgid "When running CSE, follow conditional jumps"
msgstr ""
-#: config/i386/cygwin.h:115
-msgid "mno-cygwin and mno-win32 are not compatible"
-msgstr "mno-cygwin och mno-win32 är inkompatibla"
+#: options.c:594
+#, fuzzy
+msgid "Place data items into their own section"
+msgstr "placera varje funktion i sin egen sektion"
-#: config/vax/netbsd-elf.h:42
+#: options.c:597
+msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
+msgstr ""
+
+#: options.c:600
#, fuzzy
-msgid "The -shared option is not currently supported for VAX ELF."
-msgstr "inbyggd funktion \"%s\" stöds inte för närvarande"
+msgid "Inline member functions by default"
+msgstr "I funktion `%s':"
-#: treelang/lang-specs.h:52
+#: options.c:603
+msgid "Defer popping functions args from stack until later"
+msgstr ""
+
+#: options.c:606
+msgid "Attempt to fill delay slots of branch instructions"
+msgstr ""
+
+#: options.c:609
+msgid "Delete useless null pointer checks"
+msgstr ""
+
+#: options.c:612
#, fuzzy
-msgid "-pg or -p and -fomit-frame-pointer are incompatible"
+msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics"
+msgstr " -fdiagnostics-show-location=[once | every-line] Anger hur ofta källkodspositioner skall skrivas ut, som prefix, i början av utskrift vid radbrytning\n"
+
+#: options.c:615
+msgid "Allow '$' in symbol names"
+msgstr ""
+
+#: options.c:618
+msgid "Permit '$' as an identifier character"
+msgstr ""
+
+#: options.c:624
+msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
+msgstr ""
+
+#: options.c:630
+#, fuzzy
+msgid "Perform DWARF2 duplicate elimination"
+msgstr "Utför optimering för svansrekursion"
+
+#: options.c:633 options.c:636
+msgid "Perform unused type elimination in debug info"
+msgstr ""
+
+#: options.c:645
+msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
+msgstr ""
+
+#: options.c:648
+msgid "--encoding=<encoding>\tChoose input encoding (defaults from your locale)"
+msgstr ""
+
+#: options.c:651
+#, fuzzy
+msgid "Generate code to check exception specifications"
+msgstr "\"%s\" är deklarerad som en funktion som returnerar en funktion"
+
+#: options.c:657
+msgid "Enable exception handling"
+msgstr ""
+
+#: options.c:660
+msgid "-fexec-charset=<cset>\tConvert all strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:663
+#, fuzzy
+msgid "Perform a number of minor, expensive optimizations"
+msgstr "Utför optimering för svansrekursion"
+
+#: options.c:672
+msgid "f2c-compatible code can be generated"
+msgstr ""
+
+#: options.c:675
+msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:678
+msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:681
+msgid "Enable non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:684
+msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+
+#: options.c:687
+msgid "Unsupported; generate libf2c-calling code"
+msgstr ""
+
+#: options.c:690
+msgid "Program is written in typical FORTRAN 66 dialect"
+msgstr ""
+
+#: options.c:693
+msgid "Program is written in typical Unix-f77 dialect"
+msgstr ""
+
+#: options.c:696
+msgid "Program is written in Fortran-90-ish dialect"
+msgstr ""
+
+#: options.c:699
+msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:702
+msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:705
+msgid "Enable non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:708
+msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:720
+msgid "Assume no NaNs or infinities are generated"
+msgstr ""
+
+#: options.c:723
+#, fuzzy
+msgid "-ffixed-<register>\tMark <register> as being unavailable to the compiler"
+msgstr " -ffixed-<register> Markera <register> som ej tillgängligt för kompilatorn\n"
+
+#: options.c:729
+#, fuzzy
+msgid "ffixed-line-length-<number>\tSet the maximum line length to <number>"
+msgstr " -finline-limit=<nummer> Begränsa storlek på inline-funktioner till <nummer>\n"
+
+#: options.c:732
+msgid "Unsupported; affects code generation of arrays"
+msgstr ""
+
+#: options.c:735
+msgid "Do not store floats in registers"
+msgstr ""
+
+#: options.c:738
+msgid "Scope of for-init-statement variables is local to the loop"
+msgstr ""
+
+#: options.c:741
+msgid "Copy memory address constants into registers before use"
+msgstr ""
+
+#: options.c:744
+msgid "Always check for non gcj generated classes archives"
+msgstr ""
+
+#: options.c:747
+msgid "Copy memory operands into registers before use"
+msgstr ""
+
+#: options.c:750
+msgid "Generate code to check subscript and substring bounds"
+msgstr ""
+
+#: options.c:753
+msgid "Program is written in Fortran-90-ish free form"
+msgstr ""
+
+#: options.c:756
+msgid "Do not assume that standard C libraries and \"main\" exist"
+msgstr ""
+
+#: options.c:759
+msgid "Allow function addresses to be held in registers"
+msgstr ""
+
+#: options.c:762
+#, fuzzy
+msgid "Place each function into its own section"
+msgstr "placera varje funktion i sin egen sektion"
+
+#: options.c:765
+msgid "Perform global common subexpression elimination"
+msgstr ""
+
+#: options.c:768
+msgid "Perform redundant load after store elimination in global common subexpression elimination"
+msgstr ""
+
+#: options.c:771
+msgid "Perform enhanced load motion during global common subexpression elimination"
+msgstr ""
+
+#: options.c:774
+msgid "Perform store motion after global common subexpression elimination"
+msgstr ""
+
+#: options.c:777
+msgid "Enable fatal diagnostics about inter-procedural problems"
+msgstr ""
+
+#: options.c:780
+msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
+msgstr ""
+
+#: options.c:783
+msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:786
+msgid "Enable non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:789
+msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+
+#: options.c:792
+msgid "Recognize GNU-defined keywords"
+msgstr ""
+
+#: options.c:795
+msgid "Generate code for GNU runtime environment"
+msgstr ""
+
+#: options.c:798
+msgid "Enable guessing of branch probabilities"
+msgstr ""
+
+#: options.c:813
+msgid "Assume normal C execution environment"
+msgstr ""
+
+#: options.c:816
+msgid "Enable support for huge objects"
+msgstr ""
+
+#: options.c:819
+msgid "Process #ident directives"
+msgstr "Hantera #ident-direktiv"
+
+#: options.c:822
+msgid "Perform conversion of conditional jumps to branchless equivalents"
+msgstr ""
+
+#: options.c:825
+#, fuzzy
+msgid "Perform conversion of conditional jumps to conditional execution"
+msgstr "Föredra hopp framför villkorlig körning"
+
+#: options.c:828
+msgid "Export functions even if they can be inlined"
+msgstr ""
+
+#: options.c:831
+#, fuzzy
+msgid "Emit implicit instantiations of inline templates"
+msgstr "%s: Vid instansiering av \"%s\":\n"
+
+#: options.c:834
+#, fuzzy
+msgid "Emit implicit instantiations of templates"
+msgstr "%s: Vid instansiering av \"%s\":\n"
+
+#: options.c:837
+msgid "Use offset tables for virtual method calls"
+msgstr ""
+
+#: options.c:840
+msgid "Do not generate .size directives"
+msgstr "Generera inte .size-direktiv"
+
+#: options.c:843
+msgid "Initialize local vars and arrays to zero"
+msgstr ""
+
+#: options.c:846
+msgid "Pay attention to the \"inline\" keyword"
+msgstr ""
+
+#: options.c:855
+#, fuzzy
+msgid "-finline-limit=<number>\tLimit the size of inlined functions to <number>"
+msgstr " -finline-limit=<nummer> Begränsa storlek på inline-funktioner till <nummer>\n"
+
+#: options.c:858
+msgid "-finput-charset=<cset> Specify the default character set for source files."
+msgstr ""
+
+#: options.c:861
+msgid "Instrument function entry and exit with profiling calls"
+msgstr ""
+
+#: options.c:864
+msgid "Intrinsics letters in arbitrary cases"
+msgstr ""
+
+#: options.c:867
+msgid "Intrinsics spelled as e.g. SqRt"
+msgstr ""
+
+#: options.c:870
+msgid "Intrinsics in lowercase"
+msgstr ""
+
+#: options.c:873
+msgid "Intrinsics in uppercase"
+msgstr ""
+
+#: options.c:876
+msgid "Assume native functions are implemented using JNI"
+msgstr ""
+
+#: options.c:879
+msgid "Generate code for functions even if they are fully inlined"
+msgstr ""
+
+#: options.c:882
+msgid "Emit static const variables even if they are not used"
+msgstr ""
+
+#: options.c:888
+#, fuzzy
+msgid "Give external symbols a leading underscore"
+msgstr "Externa symboler startar med en understrykning"
+
+#: options.c:891
+#, fuzzy
+msgid "Perform loop optimizations"
+msgstr "Utför optimering för svansrekursion"
+
+#: options.c:894
+msgid "Language keyword letters in arbitrary cases"
+msgstr ""
+
+#: options.c:897
+msgid "Language keywords spelled as e.g. IOStat"
+msgstr ""
+
+#: options.c:900
+msgid "Language keywords in lowercase"
+msgstr ""
+
+#: options.c:903
+msgid "Language keywords in uppercase"
+msgstr ""
+
+#: options.c:906
+msgid "Set errno after built-in math functions"
+msgstr "Sätt errno efter inbyggda matematikfunktioner"
+
+#: options.c:909
+msgid "Report on permanent memory allocation"
+msgstr ""
+
+#: options.c:912
+msgid "Attempt to merge identical constants and constant variables"
+msgstr ""
+
+#: options.c:915
+msgid "Attempt to merge identical constants across compilation units"
+msgstr ""
+
+#: options.c:918
+#, fuzzy
+msgid "-fmessage-length=<number>\tLimit diagnostics to <number> characters per line. 0 suppresses line-wrapping"
+msgstr " -fmessage-length=<nummer> Begränsa felmeddelandens längd till <nummer> tecken per rad. 0 stänger av radbrytning\n"
+
+#: options.c:921
+msgid "Delete MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:924
+msgid "Disable MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:927
+msgid "Enable MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:930
+msgid "Hide MIL-STD 1753 intrinsics"
+msgstr ""
+
+#: options.c:933
+msgid "Force all loop invariant computations out of loops"
+msgstr ""
+
+#: options.c:936
+#, fuzzy
+msgid "Don't warn about uses of Microsoft extensions"
+msgstr "Varna inte om för många argument till format-funktioner"
+
+#: options.c:945
+msgid "Use graph-coloring register allocation"
+msgstr ""
+
+#: options.c:948
+msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
+msgstr ""
+
+#: options.c:951
+msgid "Assume that receivers of Objective-C messages may be nil"
+msgstr ""
+
+#: options.c:954
+msgid "Support synchronous non-call exceptions"
+msgstr ""
+
+#: options.c:963
+msgid "Enable Objective-C exception and synchronization syntax"
+msgstr ""
+
+#: options.c:966 options.c:1290
+msgid "Perform loop unrolling for all loops"
+msgstr ""
+
+#: options.c:969 options.c:1293
+msgid "Perform loop unrolling when iteration count is known"
+msgstr ""
+
+#: options.c:972
+msgid "When possible do not generate stack frames"
+msgstr ""
+
+#: options.c:975
+msgid "Take at least one trip through each iterative DO loop"
+msgstr ""
+
+#: options.c:978
+msgid "Recognize C++ kewords like \"compl\" and \"xor\""
+msgstr ""
+
+#: options.c:981
+msgid "Do the full register move optimization pass"
+msgstr ""
+
+#: options.c:984
+msgid "Optimize sibling and tail recursive calls"
+msgstr ""
+
+#: options.c:987
+msgid "Enable optimization of static class initialization code"
+msgstr ""
+
+#: options.c:990
+msgid "Enable optional diagnostics"
+msgstr ""
+
+#: options.c:996
+msgid "Pack structure members together without holes"
+msgstr ""
+
+#: options.c:999
+msgid "Return small aggregates in memory, not registers"
+msgstr ""
+
+#: options.c:1005
+msgid "Warn about use of (only a few for now) Fortran extensions"
+msgstr ""
+
+#: options.c:1008
+msgid "Perform loop peeling"
+msgstr ""
+
+#: options.c:1011
+msgid "Enable machine specific peephole optimizations"
+msgstr ""
+
+#: options.c:1014
+msgid "Enable an RTL peephole pass before sched2"
+msgstr ""
+
+#: options.c:1017
+msgid "Downgrade conformance errors to warnings"
+msgstr ""
+
+#: options.c:1020
+#, fuzzy
+msgid "Generate position-independent code if possible"
+msgstr "decimalpunkt i exponent - omöjligt!"
+
+#: options.c:1023
+msgid "Generate position-independent code for executables if possible"
+msgstr ""
+
+#: options.c:1026
+msgid "Generate prefetch instructions, if available, for arrays in loops"
+msgstr ""
+
+#: options.c:1032
+msgid "Enable basic program profiling code"
+msgstr ""
+
+#: options.c:1035
+msgid "Insert arc-based program profiling code"
+msgstr ""
+
+#: options.c:1038
+msgid "Enable common options for generating profile info for profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1041
+msgid "Enable common options for performing profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1044
+msgid "Insert code to profile values of expressions"
+msgstr ""
+
+#: options.c:1050
+msgid "-frandom-seed=<string>\tMake compile reproducible using <string>"
+msgstr ""
+
+#: options.c:1053
+msgid "Strength reduce all loop general induction variables"
+msgstr ""
+
+#: options.c:1056
+#, fuzzy
+msgid "Return small aggregates in registers"
+msgstr "Skicka argument i register"
+
+#: options.c:1059
+msgid "Enables a register move optimization"
+msgstr ""
+
+#: options.c:1062
+#, fuzzy
+msgid "Perform a register renaming optimization pass"
+msgstr "Utför optimering för svansrekursion"
+
+#: options.c:1065
+msgid "Reorder basic blocks to improve code placement"
+msgstr ""
+
+#: options.c:1068
+msgid "Reorder functions to improve code placement"
+msgstr ""
+
+#: options.c:1071
+msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime"
+msgstr ""
+
+#: options.c:1074
+msgid "Enable automatic template instantiation"
+msgstr "Slå på automatisk mallinstansiering"
+
+#: options.c:1077
+msgid "Add a common subexpression elimination pass after loop optimizations"
+msgstr ""
+
+#: options.c:1080
+msgid "Run the loop optimizer twice"
+msgstr ""
+
+#: options.c:1083
+msgid "Disable optimizations that assume default FP rounding behavior"
+msgstr ""
+
+#: options.c:1086
+msgid "Generate run time type descriptor information"
+msgstr ""
+
+#: options.c:1089
+msgid "Enable scheduling across basic blocks"
+msgstr ""
+
+#: options.c:1092
+msgid "Allow speculative motion of non-loads"
+msgstr ""
+
+#: options.c:1095
+msgid "Allow speculative motion of some loads"
+msgstr ""
+
+#: options.c:1098
+msgid "Allow speculative motion of more loads"
+msgstr ""
+
+#: options.c:1101
+msgid "Allow premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1104
+msgid "Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1107
+msgid "-fsched-stalled-insns-dep=<number> Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1110
+msgid "-fsched-stalled-insns=<number> Set number of queued insns that can be prematurely scheduled"
+msgstr ""
+
+#: options.c:1113
+msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler"
+msgstr ""
+
+#: options.c:1116
+msgid "If scheduling post reload, do superblock scheduling"
+msgstr ""
+
+#: options.c:1119
+msgid "If scheduling post reload, do trace scheduling"
+msgstr ""
+
+#: options.c:1122
+msgid "Reschedule instructions before register allocation"
+msgstr ""
+
+#: options.c:1125
+msgid "Reschedule instructions after register allocation"
+msgstr ""
+
+#: options.c:1128
+msgid "Allow appending a second underscore to externals"
+msgstr ""
+
+#: options.c:1131
+msgid "Mark data as shared rather than private"
+msgstr ""
+
+#: options.c:1134
+msgid "Use the same size for double as for float"
+msgstr ""
+
+#: options.c:1137
+msgid "Use the narrowest integer type possible for enumeration types"
+msgstr ""
+
+#: options.c:1140
+msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\""
+msgstr ""
+
+#: options.c:1146
+msgid "Disable optimizations observable by IEEE signaling NaNs"
+msgstr ""
+
+#: options.c:1149
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed"
+msgstr ""
+
+#: options.c:1152
+msgid "Make \"char\" signed by default"
+msgstr ""
+
+#: options.c:1155
+msgid "Do not print names of program units as they are compiled"
+msgstr ""
+
+#: options.c:1158
+#, fuzzy
+msgid "Convert floating point constants to single precision constants"
+msgstr "Använd flyttalsinstruktioner i hårdvara"
+
+#: options.c:1161
+msgid "Internally convert most source to lowercase"
+msgstr ""
+
+#: options.c:1164
+msgid "Internally preserve source case"
+msgstr ""
+
+#: options.c:1167
+msgid "Internally convert most source to uppercase"
+msgstr ""
+
+#: options.c:1173
+msgid "Insert stack checking code into the program"
+msgstr ""
+
+#: options.c:1179
+msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>"
+msgstr ""
+
+#: options.c:1182
+msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>"
+msgstr ""
+
+#: options.c:1185
+msgid "Display statistics accumulated during compilation"
+msgstr ""
+
+#: options.c:1188
+msgid "Enable assignability checks for stores into object arrays"
+msgstr ""
+
+#: options.c:1191
+#, fuzzy
+msgid "Perform strength reduction optimizations"
+msgstr "Utför optimering för svansrekursion"
+
+#: options.c:1194
+msgid "Assume strict aliasing rules apply"
+msgstr ""
+
+#: options.c:1203
+msgid "Symbol names spelled in mixed case"
+msgstr ""
+
+#: options.c:1206
+msgid "Symbol names in lowercase"
+msgstr ""
+
+#: options.c:1209
+msgid "Symbol names in uppercase"
+msgstr ""
+
+#: options.c:1212
+msgid "Check for syntax errors, then stop"
+msgstr "Leta efter syntaxfel, stoppa sedan"
+
+#: options.c:1215
+msgid "-ftabstop=<number>\tDistance between tab stops for column reporting"
+msgstr ""
+
+#: options.c:1218
+#, fuzzy
+msgid "-ftemplate-depth-<number>\tSpecify maximum template instantiation depth"
+msgstr "Ange maximalt instansieringsdjup för mallar"
+
+#: options.c:1221
+msgid "Create data files needed by \"gcov\""
+msgstr ""
+
+#: options.c:1227
+#, fuzzy
+msgid "Perform jump threading optimizations"
+msgstr "Utför optimering för svansrekursion"
+
+#: options.c:1230
+msgid "Report the time taken by each compiler pass"
+msgstr ""
+
+#: options.c:1233
+msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model"
+msgstr ""
+
+#: options.c:1236
+msgid "Perform superblock formation via tail duplication"
+msgstr ""
+
+#: options.c:1239
+msgid "Assume floating-point operations can trap"
+msgstr ""
+
+#: options.c:1242
+msgid "Trap for signed overflow in addition, subtraction and multiplication"
+msgstr ""
+
+#: options.c:1245
+msgid "Make prefix-radix non-decimal constants be typeless"
+msgstr ""
+
+#: options.c:1248
+msgid "Allow all ugly features"
+msgstr ""
+
+#: options.c:1251
+msgid "Hollerith and typeless can be passed as arguments"
+msgstr ""
+
+#: options.c:1254
+msgid "Allow ordinary copying of ASSIGN'ed vars"
+msgstr ""
+
+#: options.c:1257
+msgid "Dummy array dimensioned to (1) is assumed-size"
+msgstr ""
+
+#: options.c:1260
+msgid "Trailing comma in procedure call denotes null argument"
+msgstr ""
+
+#: options.c:1263
+msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
+msgstr ""
+
+#: options.c:1266
+msgid "Initialization via DATA and PARAMETER is not type-compatible"
+msgstr ""
+
+#: options.c:1269
+msgid "Allow INTEGER and LOGICAL interchangeability"
+msgstr ""
+
+#: options.c:1272
+msgid "Append underscores to externals"
+msgstr ""
+
+#: options.c:1275
+msgid "Compile whole compilation unit at a time"
+msgstr ""
+
+#: options.c:1278
+msgid "Delete libU77 intrinsics"
+msgstr ""
+
+#: options.c:1281
+msgid "Disable libU77 intrinsics"
+msgstr ""
+
+#: options.c:1284
+msgid "Enable libU77 intrinsics"
+msgstr ""
+
+#: options.c:1287
+msgid "Hide libU77 intrinsics"
+msgstr ""
+
+#: options.c:1296
+msgid "Allow math optimizations that may violate IEEE or ISO standards"
+msgstr ""
+
+#: options.c:1299
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned"
+msgstr ""
+
+#: options.c:1302
+msgid "Make \"char\" unsigned by default"
+msgstr ""
+
+#: options.c:1305
+msgid "Perform loop unswitching"
+msgstr ""
+
+#: options.c:1308
+msgid "Just generate unwind tables for exception handling"
+msgstr ""
+
+#: options.c:1314
+msgid "Use __cxa_atexit to register destructors"
+msgstr ""
+
+#: options.c:1320
+msgid "Add extra commentary to assembler output"
+msgstr ""
+
+#: options.c:1323
+msgid "Print g77-specific version information and run internal tests"
+msgstr ""
+
+#: options.c:1326
+msgid "Use expression value profiles in optimizations"
+msgstr ""
+
+#: options.c:1329
+msgid "Discard unused virtual functions"
+msgstr ""
+
+#: options.c:1332
+msgid "Implement vtables using thunks"
+msgstr ""
+
+#: options.c:1335
+msgid "Program is written in VXT (Digital-like) FORTRAN"
+msgstr ""
+
+#: options.c:1338
+msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1341
+msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1344
+msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1347
+msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+
+#: options.c:1353
+msgid "Emit common-like symbols as weak symbols"
+msgstr ""
+
+#: options.c:1356
+msgid "Construct webs and split unrelated uses of single variable"
+msgstr ""
+
+#: options.c:1359
+msgid "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:1362
+msgid "Generate a #line directive pointing at the current working directory"
+msgstr ""
+
+#: options.c:1365
+msgid "Assume signed arithmetic overflow wraps around"
+msgstr ""
+
+#: options.c:1368
+msgid "Store strings in writable data section"
+msgstr ""
+
+#: options.c:1371
+msgid "Emit cross referencing information"
+msgstr ""
+
+#: options.c:1374
+#, fuzzy
+msgid "Print internal debugging-related information"
+msgstr "inte tillräcklig typinformation"
+
+#: options.c:1377
+msgid "Put zero initialized data in the bss section"
+msgstr ""
+
+#: options.c:1380
+msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode"
+msgstr ""
+
+#: options.c:1383
+msgid "Treat initial values of 0 like non-zero values"
+msgstr ""
+
+#: options.c:1386
+#, fuzzy
+msgid "Generate debug information in default format"
+msgstr "Generera kod för \"big endian\""
+
+#: options.c:1392
+msgid "Generate debug information in COFF format"
+msgstr ""
+
+#: options.c:1395
+msgid "Generate debug information in DWARF v2 format"
+msgstr ""
+
+#: options.c:1398
+msgid "Dump declarations to a .decl file"
+msgstr ""
+
+#: options.c:1401
+msgid "Generate debug information in default extended format"
+msgstr ""
+
+#: options.c:1404
+msgid "-gnat<options>\tSpecify options to GNAT"
+msgstr ""
+
+#: options.c:1407
+#, fuzzy
+msgid "Generate debug information in STABS format"
+msgstr "Generera kod för en DLL"
+
+#: options.c:1410
+msgid "Generate debug information in extended STABS format"
+msgstr ""
+
+#: options.c:1413
+#, fuzzy
+msgid "Generate debug information in VMS format"
+msgstr "Generera kod för en DLL"
+
+#: options.c:1416
+msgid "Generate debug information in XCOFF format"
+msgstr ""
+
+#: options.c:1419
+msgid "Generate debug information in extended XCOFF format"
+msgstr ""
+
+#: options.c:1422
+msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1425
+msgid "-imacros <file>\tAccept definition of macros in <file>"
+msgstr ""
+
+#: options.c:1428
+msgid "-include <file>\tInclude the contents of <file> before other files"
+msgstr ""
+
+#: options.c:1431
+msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options"
+msgstr ""
+
+#: options.c:1434
+msgid "-isysroot <dir>\tSet <dir> to be the system root directory"
+msgstr ""
+
+#: options.c:1437
+msgid "-isystem <dir>\tAdd <dir> to the start of the system include path"
+msgstr ""
+
+#: options.c:1440
+msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1443
+msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path"
+msgstr ""
+
+#: options.c:1455
+msgid "Do not search standard system include directories (those specified with -isystem will still be used)"
+msgstr ""
+
+#: options.c:1458
+msgid "Do not search standard system include directories for C++"
+msgstr ""
+
+#: options.c:1464
+#, fuzzy
+msgid "-o <file>\tPlace output into <file>"
+msgstr " -o <fil> Skriv utdata i <fil> \n"
+
+#: options.c:1467
+#, fuzzy
+msgid "Enable function profiling"
+msgstr " -p Slå på funktionsprofilering\n"
+
+#: options.c:1470
+#, fuzzy
+msgid "Issue warnings needed for strict compliance to the standard"
+msgstr " -pedantic Ge varningar som krävs för att strikt följa ISO C\n"
+
+#: options.c:1473
+msgid "Like -pedantic but issue them as errors"
+msgstr ""
+
+#: options.c:1476
+msgid "Generate C header of platform-specific features"
+msgstr ""
+
+#: options.c:1479
+#, fuzzy
+msgid "Do not display functions compiled or elapsed time"
+msgstr " -quiet Visa inte kompilerade funktioner eller tiden som förbrukats\n"
+
+#: options.c:1482
+#, fuzzy
+msgid "Remap file names when including files"
+msgstr "tomt filnamn i #%s"
+
+#: options.c:1485
+msgid "Conform to the ISO 1998 C++ standard"
+msgstr ""
+
+#: options.c:1488
+msgid "Conform to the ISO 1990 C standard"
+msgstr ""
+
+#: options.c:1491
+msgid "Conform to the ISO 1999 C standard"
+msgstr ""
+
+#: options.c:1494 options.c:1515 options.c:1518
+msgid "Deprecated in favor of -std=c99"
+msgstr ""
+
+#: options.c:1497
+msgid "Conform to the ISO 1998 C++ standard with GNU extensions"
+msgstr ""
+
+#: options.c:1500
+msgid "Conform to the ISO 1990 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1503
+msgid "Conform to the ISO 1999 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1506
+msgid "Deprecated in favor of -std=gnu99"
+msgstr ""
+
+#: options.c:1509
+msgid "Deprecated in favor of -std=c89"
+msgstr ""
+
+#: options.c:1512
+msgid "Conform to the ISO 1990 C standard as amended in 1994"
+msgstr ""
+
+#: options.c:1521
+msgid "Enable traditional preprocessing"
+msgstr ""
+
+#: options.c:1524
+msgid "-trigraphs\tSupport ISO C trigraphs"
+msgstr ""
+
+#: options.c:1527
+msgid "Do not predefine system-specific and GCC-specific macros"
+msgstr ""
+
+#: options.c:1530
+msgid "Enable verbose output"
+msgstr ""
+
+#: options.c:1536
+#, fuzzy
+msgid "Suppress warnings"
+msgstr "%s: varning: "
+
+#: config/rs6000/darwin.h:98
+msgid " conflicting code gen style switches are used"
+msgstr ""
+
+#: gcc.c:743
+#, fuzzy
+msgid "GCC does not support -C or -CC without -E"
+msgstr "GNU C stödjer inte -C utan -E"
+
+#: gcc.c:767 java/jvspec.c:80 ada/lang-specs.h:34
+msgid "-pg and -fomit-frame-pointer are incompatible"
msgstr "-pg och -fomit-frame-pointer är inkompatibla"
-#: gcc.c:847
+#: gcc.c:915
msgid "-E required when input is from standard input"
msgstr "-E krävs när indata tas från standard input"
-#: gcc.c:851
-#, fuzzy
-msgid "compilation of header file requested"
-msgstr "Kompilering av include-fil begärd"
+#: config/arm/arm.h:197
+msgid "-mapcs-26 and -mapcs-32 may not be used together"
+msgstr "-mapcs-26 och -mapcs-32 får inte användas tillsammans"
-#: config/vax/vax.h:50 config/vax/vax.h:51
-msgid "profiling not supported with -mg\n"
-msgstr "profilering stöds inte tillsammans med -mg\n"
+#: config/arm/arm.h:199
+msgid "-msoft-float and -mhard_float may not be used together"
+msgstr "-msoft-float och -mhard_float får inte användas tillsammans"
-#: config/mips/mips.h:954
+#: config/arm/arm.h:201
+msgid "-mbig-endian and -mlittle-endian may not be used together"
+msgstr "-mbig-endian och -mlittle-endian får inte användas tillsammans"
+
+#: config/i386/mingw32.h:58 config/i386/cygwin.h:70
+msgid "shared and mdll are not compatible"
+msgstr "shared och mdll är inkompatibla"
+
+#: config/mips/mips.h:975
#, fuzzy
msgid "-pipe is not supported"
msgstr "-pipe stöds inte."
-#: config/mips/mips.h:1156 config/arc/arc.h:63
+#: config/mips/mips.h:1130 config/arc/arc.h:63
msgid "may not use both -EB and -EL"
msgstr "får inte använda både -EB och -EL"
+#: config/darwin.h:215
+msgid "-current_version only allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:218
+msgid "-install_name only allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:223
+msgid "-bundle not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:224
+msgid "-bundle_loader not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:225
+msgid "-client_name not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:228
+msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:229
+msgid "-force_flat_namespace not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:231
+msgid "-keep_private_externs not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:232
+msgid "-private_bundle not allowed with -dynamiclib"
+msgstr ""
+
+#: config/vax/netbsd-elf.h:42
+#, fuzzy
+msgid "The -shared option is not currently supported for VAX ELF."
+msgstr "inbyggd funktion \"%s\" stöds inte för närvarande"
+
+#: config/i386/sco5.h:191
+#, fuzzy
+msgid "-pg not supported on this platform"
+msgstr "attributet \"section\" stöds inte för denna målarkitektur"
+
+#: config/i386/sco5.h:192
+#, fuzzy
+msgid "-p and -pp specified - pick one"
+msgstr "-I- angiven två gånger"
+
+#: config/i386/sco5.h:266
+#, fuzzy
+msgid "-G and -static are mutually exclusive"
+msgstr "-pedantic och -traditional är ömsesidigt uteslutande"
+
+#: treelang/lang-specs.h:52
+#, fuzzy
+msgid "-pg or -p and -fomit-frame-pointer are incompatible"
+msgstr "-pg och -fomit-frame-pointer är inkompatibla"
+
+#: f/lang-specs.h:38
+#, fuzzy
+msgid "GCC does not support -C without using -E"
+msgstr "GNU C stödjer inte -C utan -E"
+
+#: f/lang-specs.h:39
+#, fuzzy
+msgid "GCC does not support -CC without using -E"
+msgstr "GNU C stödjer inte -C utan -E"
+
#: config/mips/r3900.h:35
#, fuzzy
msgid "-mhard-float not supported"
@@ -21477,21 +22018,196 @@ msgstr "-mhard-float stöds inte."
msgid "-msingle-float and -msoft-float can not both be specified"
msgstr "-msingle-float och -msoft-float kan inte båda anges."
+#: config/rs6000/sysv4.h:1094 config/i386/freebsd-aout.h:215
+msgid "`-p' not supported; use `-pg' and gprof(1)"
+msgstr "\"-p\" stödjs inte; använd \"-pg\" och gprof(1)"
+
+#: config/sparc/linux64.h:208 config/sparc/linux64.h:219
+#: config/sparc/netbsd-elf.h:140 config/sparc/netbsd-elf.h:159
+#: config/sparc/sol2-bi.h:195 config/sparc/sol2-bi.h:205
+#, fuzzy
+msgid "may not use both -m32 and -m64"
+msgstr "får inte använda både -mfp64 och -m4650"
+
+#: config/vax/vax.h:50 config/vax/vax.h:51
+msgid "profiling not supported with -mg\n"
+msgstr "profilering stöds inte tillsammans med -mg\n"
+
+#: config/i386/cygwin.h:29
+msgid "mno-cygwin and mno-win32 are not compatible"
+msgstr "mno-cygwin och mno-win32 är inkompatibla"
+
+#: ada/lang-specs.h:36
+msgid "one of -c, -S, -gnatc, -gnatz, or -gnats is required for Ada"
+msgstr ""
+
+#: config/sparc/sol2-bi.h:167 config/sparc/sol2-bi.h:172
+#: config/sparc/sol2-gld-bi.h:17 config/sparc/sol2-gld-bi.h:22
+#, fuzzy
+msgid "does not support multilib"
+msgstr "ISO C89 stöder inte typen complex"
+
+#: java/lang-specs.h:34
+msgid "-fjni and -femit-class-files are incompatible"
+msgstr ""
+
+#: java/lang-specs.h:35
+msgid "-fjni and -femit-class-file are incompatible"
+msgstr ""
+
+#: java/lang-specs.h:36 java/lang-specs.h:37
+msgid "-femit-class-file should used along with -fsyntax-only"
+msgstr ""
+
+#: config/mcore/mcore.h:65
+msgid "the m210 does not have little endian support"
+msgstr ""
+
+#~ msgid "concatenation of string literals with __FUNCTION__ is deprecated"
+#~ msgstr "sammanslagning av strängliteraler tillsammans med __FUNCTION__ är föråldrat"
+
+#~ msgid "ISO C++ forbids range expressions in switch statements"
+#~ msgstr "ISO C++ förbjuder intervalluttryck i switch-satser"
+
+#, fuzzy
+#~ msgid "ISO C++ forbids taking the address of a label"
+#~ msgstr "ISO C++ förbjuder att man tar adressen till funktionen \"::main\""
+
+#~ msgid "declaration of `%s' shadows %s"
+#~ msgstr "deklaration av \"%s\" döljer %s"
+
#~ msgid "unknown C standard `%s'"
#~ msgstr "okänd C-standard \"%s\""
+#~ msgid "`struct %s' incomplete in scope ending here"
+#~ msgstr "\"struct %s\" är inkomplett i scope-område som slutar här"
+
+#~ msgid "`union %s' incomplete in scope ending here"
+#~ msgstr "\"union %s\" är inkomplett i scope-område som slutar här"
+
+#~ msgid "`enum %s' incomplete in scope ending here"
+#~ msgstr "\"enum %s\" är inkomplett i scope-område som slutar här"
+
+#~ msgid "label `%s' defined but not used"
+#~ msgstr "etikett \"%s\" definierad men inte använd"
+
+#~ msgid "shadowing library function `%s'"
+#~ msgstr "döljer biblioteksfunktion \"%s\""
+
+#~ msgid "library function `%s' declared as non-function"
+#~ msgstr "biblioteksfunktion \"%s\" deklarerad som icke-funktion"
+
+#~ msgid "conflicting types for `%s'"
+#~ msgstr "motstridiga typer på \"%s\""
+
+#~ msgid "redeclaration of `%s'"
+#~ msgstr "omdeklaration av \"%s\""
+
+#~ msgid "prototype for `%s' follows"
+#~ msgstr "prototyp för \"%s\" följer"
+
+#~ msgid "non-prototype definition here"
+#~ msgstr "icke-prototypdefinition here"
+
+#~ msgid "prototype for `%s' follows and number of arguments doesn't match"
+#~ msgstr "prototyp för \"%s\" följer och antalet argument matchar inte"
+
+#~ msgid "prototype for `%s' follows and argument %d doesn't match"
+#~ msgstr "prototyp för `%s' följer och argument %d matchar inte"
+
+#~ msgid "redundant redeclaration of `%s' in same scope"
+#~ msgstr "redundant omdeklaration av \"%s\" i samma scope"
+
+#, fuzzy
+#~ msgid "a parameter"
+#~ msgstr "oanvänd parameter \"%s\""
+
+#, fuzzy
+#~ msgid "a global declaration"
+#~ msgstr "dubbel deklaration av etikett \"%s\""
+
+#~ msgid "`%s' used prior to declaration"
+#~ msgstr "\"%s\" är använd innan sin deklaration"
+
+#~ msgid "`%s' was declared implicitly `extern' and later `static'"
+#~ msgstr "\"%s\" deklarerades implicit \"extern\" och senare \"static\""
+
+#~ msgid "previous external decl of `%s'"
+#~ msgstr "föregående externa dekl. av \"%s\""
+
+#~ msgid "type mismatch with previous implicit declaration"
+#~ msgstr "typ skiljer sig från tidigare implicit deklaration"
+
#~ msgid "type of external `%s' is not global"
#~ msgstr "typen på extern \"%s\" är inte global"
+#~ msgid "`%s' was previously implicitly declared to return `int'"
+#~ msgstr "\"%s\" deklarerades tidigare implicit att returnera \"int\""
+
+#~ msgid "`%s' was declared `extern' and later `static'"
+#~ msgstr "\"%s\" deklarerades \"extern\" och senare \"static\""
+
+#~ msgid "`%s' locally external but globally static"
+#~ msgstr "\"%s\" är lokalt extern men globalt static"
+
+#~ msgid "function `%s' was previously declared within a block"
+#~ msgstr "funktionen \"%s\" deklarerades tidigare i ett block"
+
+#~ msgid "declaration of `%s' has `extern' and is initialized"
+#~ msgstr "deklaration av \"%s\" är \"extern\" och initierad"
+
+#~ msgid "initializer fails to determine size of `%s'"
+#~ msgstr "initierare misslyckas med att bestämma storlek på \"%s\""
+
+#~ msgid "array size missing in `%s'"
+#~ msgstr "fältstorlek saknas i \"%s\""
+
+#~ msgid "storage size of `%s' isn't known"
+#~ msgstr "lagringsstorlek på \"%s\" är okänd"
+
+#~ msgid "storage size of `%s' isn't constant"
+#~ msgstr "lagringsstorlek på \"%s\" är inte konstant"
+
+#, fuzzy
+#~ msgid "ISO C forbids parameter `%s' shadowing typedef"
+#~ msgstr "ANSI C förbjuder att parameter \"%s\" döljer typedef"
+
+#~ msgid "parameter `%s' points to incomplete type"
+#~ msgstr "parameter \"%s\" pekar på inkomplett typ"
+
+#~ msgid "parameter points to incomplete type"
+#~ msgstr "parameter pekar på inkomplett typ"
+
+#~ msgid "`void' in parameter list must be the entire list"
+#~ msgstr "\"void\" i parameterlistan måste vara hela listan"
+
+#~ msgid "`union %s' declared inside parameter list"
+#~ msgstr "\"union %s\" deklarerad inuti parameterlista"
+
+#~ msgid "`enum %s' declared inside parameter list"
+#~ msgstr "\"enum %s\" deklarerad inuti parameterlista"
+
+#~ msgid "anonymous union declared inside parameter list"
+#~ msgstr "anonym union deklarerad i parameterlista"
+
+#~ msgid "anonymous enum declared inside parameter list"
+#~ msgstr "anonym uppräkningstyp deklarerad i parameterlista"
+
+#~ msgid "bit-field `%s' type invalid in ISO C"
+#~ msgstr "bitfält \"%s\" har en icke godkänd typ enligt ISO C"
+
+#~ msgid "duplicate member `%s'"
+#~ msgstr "upprepning av medlem \"%s\""
+
+#~ msgid "parameter `%s' declared void"
+#~ msgstr "parameter \"%s\" deklarerad som void"
+
#~ msgid "null format string"
#~ msgstr "formatsträngen är null"
#~ msgid "both 'f' and 'l' suffixes on floating constant"
#~ msgstr "både suffix 'f' och 'l' på flyttalskonstant"
-#~ msgid "decimal point in exponent - impossible!"
-#~ msgstr "decimalpunkt i exponent - omöjligt!"
-
#~ msgid "underscore in number"
#~ msgstr "understrykningsstreck i nummer"
@@ -21516,9 +22232,6 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "ISO C forbids imaginary numeric constants"
#~ msgstr "ISO C förbjuder imaginära numeriska konstanter"
-#~ msgid "floating constant out of range"
-#~ msgstr "flyttalskonstant utanför sitt intervall"
-
#~ msgid "floating point number exceeds range of 'double'"
#~ msgstr "flyttalsnummer överskrider intervallet för en \"double\""
@@ -21567,8 +22280,8 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "decimal constant is so large that it is unsigned"
#~ msgstr "decimal konstant så stor att den är unsigned"
-#~ msgid "missing white space after number '%.*s'"
-#~ msgstr "saknar mellanrum efter nummer \"%.*s\""
+#~ msgid "ignoring invalid multibyte character"
+#~ msgstr "ignorerar ogiltigt flerbytestecken"
#~ msgid "ISO C does not permit use of `varargs.h'"
#~ msgstr "ISO C stödjer inte användning av \"varargs.h\""
@@ -21576,15 +22289,67 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "storage class specifier in array declarator"
#~ msgstr "lagringsklass angiven i array-deklarerare"
+#~ msgid "parse error"
+#~ msgstr "parsningsfel"
+
#~ msgid "sizeof applied to a function type"
#~ msgstr "sizeof applicerad på en funktionstyp"
#~ msgid "sizeof applied to a void type"
#~ msgstr "sizeof applicerat på typen void"
+#~ msgid "initializer for static variable is not constant"
+#~ msgstr "initierare för statisk variabel är inte konstant"
+
#~ msgid "execvp %s"
#~ msgstr "execvp %s"
+#~ msgid "open %s"
+#~ msgstr "open %s"
+
+#~ msgid ""
+#~ "\n"
+#~ "Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Processar symboltabell #%d, index = 0x%.8lx, sort = %s\n"
+
+#~ msgid "string section missing"
+#~ msgstr "strängsektionen saknas"
+
+#~ msgid "section pointer missing"
+#~ msgstr "sektionspekare saknas"
+
+#~ msgid "no symbol table found"
+#~ msgstr "hittade ingen symboltabell"
+
+#~ msgid "load command map, %d cmds, new size %ld.\n"
+#~ msgstr "ladda kommandomappning, %d kommandon, ny storlek %ld.\n"
+
+#~ msgid "fstat %s"
+#~ msgstr "fstat %s"
+
+#~ msgid "lseek %s 0"
+#~ msgstr "lseek %s 0"
+
+#~ msgid "read %s"
+#~ msgstr "read %s"
+
+#~ msgid "read %ld bytes, expected %ld, from %s"
+#~ msgstr "läste %ld bytes, förväntade %ld, från %s"
+
+#~ msgid "msync %s"
+#~ msgstr "msync %s"
+
+#~ msgid "munmap %s"
+#~ msgstr "munmap %s"
+
+#~ msgid "write %s"
+#~ msgstr "write %s"
+
+#~ msgid "wrote %ld bytes, expected %ld, to %s"
+#~ msgstr "skrev %ld bytes, förväntade %ld, till %s"
+
#, fuzzy
#~ msgid "floating point numbers are not valid in #if"
#~ msgstr "flyttal utanför intervallet för \"%s\""
@@ -21595,6 +22360,9 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "integer constant out of range"
#~ msgstr "heltalskonstant utanför sitt intervall"
+#~ msgid "ISO C++ does not permit \"%s\" in #if"
+#~ msgstr "ISO C++ tillåter inte \"%s\" i #if"
+
#, fuzzy
#~ msgid "missing binary operator"
#~ msgstr "saknas '(' efter predikat"
@@ -21603,6 +22371,12 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "operator '%s' has no left operand"
#~ msgstr "parameter \"%s\" har en inkomplett typ"
+#~ msgid "absolute file name in remap_filename"
+#~ msgstr "absolut filnamn i remap_filename"
+
+#~ msgid "%s: Not a directory"
+#~ msgstr "%s: Inte en katalog"
+
#, fuzzy
#~ msgid "changing search order for system directory \"%s\""
#~ msgstr "kan inte skapa katalog %s"
@@ -21615,6 +22389,14 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgstr "Argument saknas efter %s"
#, fuzzy
+#~ msgid "directory name missing after %s"
+#~ msgstr "Katalognamn saknas efter %s"
+
+#, fuzzy
+#~ msgid "path name missing after %s"
+#~ msgstr "Sökväg saknas efter %s"
+
+#, fuzzy
#~ msgid "number missing after %s"
#~ msgstr "Nummer saknas efter %s"
@@ -21622,6 +22404,40 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgstr "GNU CPP version %s (cpplib)"
#~ msgid ""
+#~ "Switches:\n"
+#~ " -include <file> Include the contents of <file> before other files\n"
+#~ " -imacros <file> Accept definition of macros in <file>\n"
+#~ " -iprefix <path> Specify <path> as a prefix for next two options\n"
+#~ " -iwithprefix <dir> Add <dir> to the end of the system include path\n"
+#~ " -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
+#~ " -isystem <dir> Add <dir> to the start of the system include path\n"
+#~ msgstr ""
+#~ "Flaggor:\n"
+#~ " -include <fil> Inkludera innehållet i <fil> före andra filer\n"
+#~ " -imacros <fil> Använd makrodefinitioner i <fil>\n"
+#~ " -iprefix <sökväg> Sätt <sökväg> som prefix för följande två flaggor\n"
+#~ " -iwithprefix <katalog> Sätt <katalog> i slutet på systemets include-sökväg\n"
+#~ " -iwithprefixbefore <kat> Sätt <kat> i slutet på huvud-include-sökvägen\n"
+#~ " -isystem <katalog> Sätt <katalog> först på systemets include-sökväg\n"
+
+#~ msgid ""
+#~ " -idirafter <dir> Add <dir> to the end of the system include path\n"
+#~ " -I <dir> Add <dir> to the end of the main include path\n"
+#~ " -I- Fine-grained include path control; see info docs\n"
+#~ " -nostdinc Do not search system include directories\n"
+#~ " (dirs specified with -isystem will still be used)\n"
+#~ " -nostdinc++ Do not search system include directories for C++\n"
+#~ " -o <file> Put output into <file>\n"
+#~ msgstr ""
+#~ " -idirafter <katalog> Sätt <katalog> i slutet på systemets include-sökväg\n"
+#~ " -I <katalog> Sätt <katalog> i slutet på huvud-include-sökvägen\n"
+#~ " -I- Detaljerad include-sökväg kontroll; se info-hjälp\n"
+#~ " -nostdinc Använd inte systemets include-sökväg (kataloger\n"
+#~ " satta med -isystem kommer fortfarande användas)\n"
+#~ " -nostdinc++ Använd inte systemets include-sökväg för C++\n"
+#~ " -o <fil> Skriv utdata till <fil>\n"
+
+#~ msgid ""
#~ " -pedantic Issue all warnings demanded by strict ISO C\n"
#~ " -pedantic-errors Issue -pedantic warnings as errors instead\n"
#~ " -trigraphs Support ISO C trigraphs\n"
@@ -21645,6 +22461,152 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ " -lang-objc++ Antag att indatakällkoden är ObjectiveC++\n"
#~ " -lang-asm Antag att indatakällkoden är assembler\n"
+#~ msgid ""
+#~ " -std=<std name> Specify the conformance standard; one of:\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999\n"
+#~ " -+ Allow parsing of C++ style features\n"
+#~ " -w Inhibit warning messages\n"
+#~ " -Wtrigraphs Warn if trigraphs are encountered\n"
+#~ " -Wno-trigraphs Do not warn about trigraphs\n"
+#~ " -Wcomment{s} Warn if one comment starts inside another\n"
+#~ msgstr ""
+#~ " -std=<std namn> Ange standard att följa; en av:\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999\n"
+#~ " -+ Tillåt användning av C++ finesser\n"
+#~ " -w Stoppa varningsmeddelande\n"
+#~ " -Wtrigraphs Varna om trigrapher påträffas\n"
+#~ " -Wno-trigraphs Varna inte om trigrapher\n"
+#~ " -Wcomment{s} Varna om en kommentar börjar i en annan kommentar\n"
+
+#~ msgid ""
+#~ " -Wno-comment{s} Do not warn about comments\n"
+#~ " -Wtraditional Warn about features not present in traditional C\n"
+#~ " -Wno-traditional Do not warn about traditional C\n"
+#~ " -Wundef Warn if an undefined macro is used by #if\n"
+#~ " -Wno-undef Do not warn about testing undefined macros\n"
+#~ " -Wimport Warn about the use of the #import directive\n"
+#~ msgstr ""
+#~ " -Wno-comment{s} Varna inte om kommentarer\n"
+#~ " -Wtraditional Varna om finesser som inte finns i traditionell C\n"
+#~ " -Wno-traditional Varna inte om traditionell C\n"
+#~ " -Wundef Varna om ett odefinierat makro används av #if\n"
+#~ " -Wno-undef Varna inte om att testa odefinierade makron\n"
+#~ " -Wimport Varna om användande av direktivet #import\n"
+
+#~ msgid ""
+#~ " -Wno-import Do not warn about the use of #import\n"
+#~ " -Werror Treat all warnings as errors\n"
+#~ " -Wno-error Do not treat warnings as errors\n"
+#~ " -Wsystem-headers Do not suppress warnings from system headers\n"
+#~ " -Wno-system-headers Suppress warnings from system headers\n"
+#~ " -Wall Enable all preprocessor warnings\n"
+#~ msgstr ""
+#~ " -Wno-import Varna inte om användande av #import\n"
+#~ " -Werror Behandla alla varningar som fel\n"
+#~ " -Wno-error Behandla inte varningar som fel\n"
+#~ " -Wsystem-headers Dölj inte varningar från system-include-filer\n"
+#~ " -Wno-system-headers Dölj varningar från system-include-filer\n"
+#~ " -Wall Aktivera alla preprocessor-varningar\n"
+
+#, fuzzy
+#~ msgid ""
+#~ " -M Generate make dependencies\n"
+#~ " -MM As -M, but ignore system header files\n"
+#~ " -MD Generate make dependencies and compile\n"
+#~ " -MMD As -MD, but ignore system header files\n"
+#~ " -MF <file> Write dependency output to the given file\n"
+#~ " -MG Treat missing header file as generated files\n"
+#~ msgstr ""
+#~ " -M Generera make beroenden\n"
+#~ " -MM Som -M, men ignorera system-include-filer\n"
+#~ " -MF <fil> Skriv beroenden till den givna filen\n"
+#~ " -MG Behandla saknade filer som genererade filer\n"
+
+# fixme: vad menas med unquoted
+#~ msgid ""
+#~ " -MP\t\t\t Generate phony targets for all headers\n"
+#~ " -MQ <target> Add a MAKE-quoted target\n"
+#~ " -MT <target> Add an unquoted target\n"
+#~ msgstr ""
+#~ " -MP\t\t\t Generera phony-mål för alla include-filer\n"
+#~ " -MQ <mål> Lägg till MAKE-citerat mål\n"
+#~ " -MT <mål> Lägg till ociterat mål\n"
+
+#, fuzzy
+#~ msgid ""
+#~ " -D<macro> Define a <macro> with string '1' as its value\n"
+#~ " -D<macro>=<val> Define a <macro> with <val> as its value\n"
+#~ " -A<question>=<answer> Assert the <answer> to <question>\n"
+#~ " -A-<question>=<answer> Disable the <answer> to <question>\n"
+#~ " -U<macro> Undefine <macro> \n"
+#~ " -v Display the version number\n"
+#~ msgstr ""
+#~ " -D<makro> Definiera <makro> med strängen \"1\" som sitt värde\n"
+#~ " -D<makro>=<värde> Definiera <makro> with <värde> som sitt värde\n"
+#~ " -A<fråga> (<svar>) Ange svaret <svar> på frågan <fråga>\n"
+#~ " -A-<fråga> (<svar>) Slå av svaret <svar> på frågan <fråga>\n"
+#~ " -U<makro> Gör <makro> till icke definierat\n"
+#~ " -v Visa versionsnummer\n"
+
+#~ msgid ""
+#~ " -H Print the name of header files as they are used\n"
+#~ " -C Do not discard comments\n"
+#~ " -dM Display a list of macro definitions active at end\n"
+#~ " -dD Preserve macro definitions in output\n"
+#~ " -dN As -dD except that only the names are preserved\n"
+#~ " -dI Include #include directives in the output\n"
+#~ msgstr ""
+#~ " -H Skriv namnet på include-filer när de används\n"
+#~ " -C Släng inte bort kommentarer\n"
+#~ " -dM Visa en lista med aktiva makron i slutet\n"
+#~ " -dD Bevara mokrodefinitioner i utdata\n"
+#~ " -dN Som -dD men bara namnet bevaras\n"
+#~ " -dI Ta med #include-direktives i utdata\n"
+
+#, fuzzy
+#~ msgid ""
+#~ " -fpreprocessed Treat the input file as already preprocessed\n"
+#~ " -ftabstop=<number> Distance between tab stops for column reporting\n"
+#~ " -P Do not generate #line directives\n"
+#~ " -$ Do not allow '$' in identifiers\n"
+#~ " -remap Remap file names when including files\n"
+#~ " --version Display version information\n"
+#~ " -h or --help Display this information\n"
+#~ msgstr ""
+#~ " -fpreprocessed Tolka infiler som redan preprocessade\n"
+#~ " -ftabstop=<nummer> Avstånd mellan tabbar för kolumutskrifter\n"
+#~ " -P Genererar inte #line-direktiv\n"
+#~ " -$ Tillåt inte '$' i identifierare\n"
+#~ " -remap Mappa om filnamn vid inkludering av filer\n"
+#~ " --version Visa versionsinformation\n"
+#~ " -h or --help Visa denna information\n"
+
+#~ msgid "\"/*\" within comment"
+#~ msgstr "\"/*\" i kommentar"
+
+#~ msgid "%s in preprocessing directive"
+#~ msgstr "%s i preprocessordirektiv"
+
+#~ msgid "'$' character(s) in identifier"
+#~ msgstr "tecknet '$' i en identifierare"
+
+#~ msgid "no newline at end of file"
+#~ msgstr "inget nyradstecken vid slutet av filen"
+
+#~ msgid "#import is obsolete, use an #ifndef wrapper in the header file"
+#~ msgstr "#import är obsolet, använd #ifndef-omslutning i includefilen"
+
+#~ msgid "#pragma once is obsolete"
+#~ msgstr "#pragma once är obsolet"
+
+#~ msgid "\"%s\" redefined"
+#~ msgstr "\"%s\" omdefinierad"
+
+#~ msgid "this is the location of the previous definition"
+#~ msgstr "detta är platsen för den tidigare definitionen"
+
#, fuzzy
#~ msgid "invalid option %s"
#~ msgstr "Ogiltig flagga %s"
@@ -21652,14 +22614,30 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "%s:%d: warning: "
#~ msgstr "%s:%d: varning: "
-#~ msgid "%s: warning: "
-#~ msgstr "%s: varning: "
+#~ msgid "((anonymous))"
+#~ msgstr "((anonym))"
+
+#~ msgid "At top level:"
+#~ msgstr "På toppnivå:"
+
+#~ msgid ""
+#~ "Please submit a full bug report,\n"
+#~ "with preprocessed source if appropriate.\n"
+#~ "See %s for instructions.\n"
+#~ msgstr ""
+#~ "Var vänlig och skicka in en komplett felrapport,\n"
+#~ "om möjligt med preprocessad källfil.\n"
+#~ "Se %s för instruktioner.\n"
-#~ msgid "sorry, not implemented: "
-#~ msgstr "ledsen, inte implementerat: "
+#~ msgid "In file included from %s:%d"
+#~ msgstr "I fil includerad från %s:%d"
-#~ msgid "Internal compiler error in %s, at %s:%d"
-#~ msgstr "Internt kompilatorfel i %s, vid %s:%d"
+#~ msgid ""
+#~ ",\n"
+#~ " from %s:%d"
+#~ msgstr ""
+#~ ",\n"
+#~ " från %s:%d"
#~ msgid "argument to `-b' is missing"
#~ msgstr "argument till \"-b\" saknas"
@@ -21673,15 +22651,27 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "%6.2f%% of %d source lines executed in function %s\n"
#~ msgstr "%6.2f%% av %d källkodsrader körda i funktion %s\n"
-#~ msgid "No branches in function %s\n"
-#~ msgstr "Inga hopp i funktionen %s\n"
+#~ msgid "%6.2f%% of %d branches executed in function %s\n"
+#~ msgstr "%6.2f%% av %d hopp utförda i funktion %s\n"
+
+#~ msgid "%6.2f%% of %d branches taken at least once in function %s\n"
+#~ msgstr "%6.2f%% av %d hopp tagna minst en gång i funktion %s\n"
+
+#~ msgid "%6.2f%% of %d calls executed in function %s\n"
+#~ msgstr "%6.2f%% av %d anrop tagna i funktion %s\n"
+
+#~ msgid "%6.2f%% of %d source lines executed in file %s\n"
+#~ msgstr "%6.2f%% av %d källkodsrader körda i fil %s\n"
+
+#~ msgid "Could not open source file %s.\n"
+#~ msgstr "Kunde inte öppna källkodsfil %s.\n"
+
+#~ msgid "Creating %s.\n"
+#~ msgstr "Skapar %s.\n"
#~ msgid "conversion from NaN to int"
#~ msgstr "konvertering från NaN till int"
-#~ msgid "conversion from NaN to unsigned int"
-#~ msgstr "konveretering från NaN till unsigned int"
-
#~ msgid "floating point overflow"
#~ msgstr "flyttalsspill"
@@ -21695,6 +22685,55 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "internal error: %s"
#~ msgstr "Internt fel: %s"
+#~ msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
+#~ msgstr " -pedantic-errors Som -pedantic men ger fel istället\n"
+
+#~ msgid " -w Suppress warnings\n"
+#~ msgstr " -w Stoppa varningar\n"
+
+#~ msgid " -W Enable extra warnings\n"
+#~ msgstr " -W Slå på extra varningar\n"
+
+#~ msgid " -Wunused Enable unused warnings\n"
+#~ msgstr " -Wunused Slå på oanvända varningar\n"
+
+#~ msgid " -version Display the compiler's version\n"
+#~ msgstr " -version Visa kompilatorns version\n"
+
+#~ msgid " %-23.23s [undocumented]\n"
+#~ msgstr " %-23.23s [odokumenterad]\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "There are undocumented %s specific options as well.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Det finns dessutom odokumenterade %s-specifika flaggor.\n"
+
+#~ msgid ""
+#~ "\n"
+#~ " Options for %s:\n"
+#~ msgstr ""
+#~ "\n"
+#~ " Flaggor för %s:\n"
+
+#, fuzzy
+#~ msgid "unrecognized option `%s'"
+#~ msgstr "ej igenkänd flagga `-%s'"
+
+#, fuzzy
+#~ msgid "-Wid-clash-LEN is no longer supported"
+#~ msgstr "-f%s stödjs inte längre"
+
+#~ msgid "`%s': unknown or unsupported -g option"
+#~ msgstr "\"%s\": okänd eller icke supportad flagga till -g"
+
+#~ msgid "`%s' ignored, conflicts with `-g%s'"
+#~ msgstr "\"%s\" ignorerad, i konflikt med \"-g%s\""
+
+#~ msgid "invalid --param option: %s"
+#~ msgstr "ogiltig flagga till --param: %s"
+
#, fuzzy
#~ msgid "invalid character constant in #if"
#~ msgstr "teckenkonstant för lång"
@@ -21783,6 +22822,9 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "optimization turned off"
#~ msgstr "optimering avslagen"
+#~ msgid "invalid %%Q value"
+#~ msgstr "ogiltigt %%Q-värde"
+
#~ msgid "invalid %%V value"
#~ msgstr "ogiltigt %%V-värde"
@@ -21834,9 +22876,6 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "Generate code an embedded assembler can handle"
#~ msgstr "Generera kod en inbäddad assemblator kan hantera"
-#~ msgid "Warn when a function arg is a structure"
-#~ msgstr "Varna när ett funktionsargument är en struktur"
-
#~ msgid "Profiling uses mcount"
#~ msgstr "Profilering använder mcount"
@@ -21852,15 +22891,36 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "Symbols have a leading underscore"
#~ msgstr "Symboler startar med en understrykning"
-#~ msgid "Generate code which uses the FPU"
-#~ msgstr "Generera kod som använder FPU"
+#, fuzzy
+#~ msgid "Generate code for a Sun FPA"
+#~ msgstr "Generera kod för en given CPU"
-#~ msgid "Do not generate code which uses the FPU"
+#, fuzzy
+#~ msgid "Do not generate code for a Sun FPA"
#~ msgstr "Genrera inte kod som använder FPU"
#, fuzzy
-#~ msgid "this target does not support the -mabi switch"
-#~ msgstr "ISO C stöder inte formatstorlek i strftime"
+#~ msgid "Generate code for a 68881"
+#~ msgstr "Generera kod för c1"
+
+#, fuzzy
+#~ msgid "internal gcc monitor: short-branch(%x)"
+#~ msgstr "Intern gcc monitor: short-branch(%x)"
+
+#, fuzzy
+#~ msgid "invalid %%o value"
+#~ msgstr "ogiltigt värde %%B"
+
+#~ msgid "invalid %%B value"
+#~ msgstr "ogiltigt värde %%B"
+
+#, fuzzy
+#~ msgid "invalid option `-mshort-data-%s'"
+#~ msgstr "Ogiltig flagga \"%s\""
+
+#, fuzzy
+#~ msgid "invalid option `entry%s'"
+#~ msgstr "Ogiltig flagga \"%s\""
#~ msgid "Optimize for 3900"
#~ msgstr "Optimera för 3900"
@@ -21868,6 +22928,12 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "Optimize for 4650"
#~ msgstr "Optimera för 4650"
+#~ msgid "Trap on integer divide overflow"
+#~ msgstr "Fånga spill vid heltalsdivsion"
+
+#~ msgid "Don't trap on integer divide overflow"
+#~ msgstr "Fånga inte spill vid heltalsdivision"
+
#~ msgid "Generate little endian data"
#~ msgstr "Generera data som \"little endian\""
@@ -21878,6 +22944,42 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgstr "-fdata-sections stöds inte för AIX"
#, fuzzy
+#~ msgid "Do not use the Xtensa code density option"
+#~ msgstr "Använd inte divisionsinstruktionen"
+
+#, fuzzy
+#~ msgid "Do not use the Xtensa MAC16 option"
+#~ msgstr "Använd inte divisionsinstruktionen"
+
+#, fuzzy
+#~ msgid "Do not use the Xtensa MUL16 option"
+#~ msgstr "Använd inte divisionsinstruktionen"
+
+#, fuzzy
+#~ msgid "Do not use the Xtensa MUL32 option"
+#~ msgstr "Använd inte divisionsinstruktionen"
+
+#, fuzzy
+#~ msgid "Do not use the Xtensa NSA option"
+#~ msgstr "Använd inte divisionsinstruktionen"
+
+#, fuzzy
+#~ msgid "Do not use the Xtensa MIN/MAX option"
+#~ msgstr "Använd inte divisionsinstruktionen"
+
+#, fuzzy
+#~ msgid "Do not use the Xtensa SEXT option"
+#~ msgstr "Använd inte divisionsinstruktionen"
+
+#, fuzzy
+#~ msgid "Do not use the Xtensa boolean register option"
+#~ msgstr "Använd inte divisionsinstruktionen"
+
+#, fuzzy
+#~ msgid "Use the Xtensa floating-point unit"
+#~ msgstr "Använd mjukvaruflytttal"
+
+#, fuzzy
#~ msgid "%s for `%T %s %T' operator"
#~ msgstr "%s före symbolen \"%s\""
@@ -21886,24 +22988,68 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgstr "%s före symbolen \"%s\""
#, fuzzy
-#~ msgid "`%D' as declarator"
-#~ msgstr "\"%s\" är använd innan sin deklaration"
+#~ msgid "`%D' must be declared before use"
+#~ msgstr "\"%s\" är tidigare deklarerad här"
#, fuzzy
-#~ msgid "size of member `%D' is not constant"
-#~ msgstr "lagringsstorlek på \"%s\" är inte konstant"
+#~ msgid "field `%D' invalidly declared offset type"
+#~ msgstr "bitfält \"%s\" har en icke godkänd typ"
+
+#, fuzzy
+#~ msgid "`%D' as declarator"
+#~ msgstr "\"%s\" är använd innan sin deklaration"
#~ msgid "invalid type: `void &'"
#~ msgstr "ogiltig typ: \"void &\""
+#, fuzzy
+#~ msgid "parameter `%D' invalidly declared offset type"
+#~ msgstr "parameter \"%s\" deklarerad som void"
+
+#, fuzzy
+#~ msgid "`%s %T' declares a new type at namespace scope"
+#~ msgstr "\"%s %s\" deklarerad inuti parameterlista"
+
+#, fuzzy
+#~ msgid "base class `%T' has incomplete type"
+#~ msgstr "fält \"%s\" har en inkomplett typ"
+
+#, fuzzy
+#~ msgid "semicolon missing after declaration of `%#T'"
+#~ msgstr "motstridande deklarationer av \"%s\""
+
#~ msgid "-fname-mangling-version is no longer supported"
#~ msgstr "-fname-mangling-version stöds inte längre"
+#~ msgid "-Wno-strict-prototypes is not supported in C++"
+#~ msgstr "-Wno-strict-prototypes stödjs inte för C++"
+
#, fuzzy
#~ msgid " %#D"
#~ msgstr " TOTALT :"
#, fuzzy
+#~ msgid "invalid data member initialization"
+#~ msgstr "Slå på automatisk mallinstansiering"
+
+#, fuzzy
+#~ msgid "`%T' is not a class or union type"
+#~ msgstr "ISO C förbjuder typkonvertering till unionstyper"
+
+#~ msgid "`%s' not supported by %s"
+#~ msgstr "\"%s\" stöds inte av %s"
+
+#~ msgid "(static %s for %s)"
+#~ msgstr "(static %s för %s)"
+
+#~ msgid "%s: In instantiation of `%s':\n"
+#~ msgstr "%s: Vid instansiering av \"%s\":\n"
+
+#, fuzzy
+#~ msgid "previous friend declaration of `%D'"
+#~ msgstr "tidigare deklaration av \"%s\""
+
+#, fuzzy
#~ msgid "member initializers for `%#D'"
#~ msgstr "complex ogiltig för \"%s\""
@@ -21912,9 +23058,77 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgstr "multiple deklaration av metod \"%s\""
#, fuzzy
+#~ msgid "invalid use of member `%D'"
+#~ msgstr "ogiltigt användande av \"restrict\""
+
+#, fuzzy
+#~ msgid "no method `%T::%D'"
+#~ msgstr "I metod `%s':"
+
+#~ msgid "cannot declare pointers to references"
+#~ msgstr "kan inte deklarera pekare till referenser"
+
+#, fuzzy
+#~ msgid "semicolon missing after declaration of `%T'"
+#~ msgstr "motstridande deklarationer av \"%s\""
+
+#, fuzzy
+#~ msgid "`::%D' undeclared (first use here)"
+#~ msgstr "\"%s\" odeklarerad (första förekomsten i denna funktionen)"
+
+#, fuzzy
+#~ msgid "definition of class `%T' in condition"
+#~ msgstr "redefinition av \"%s %s\""
+
+#, fuzzy
+#~ msgid "definition of enum `%T' in condition"
+#~ msgstr "omdefiniering av \"%s\""
+
+#, fuzzy
+#~ msgid "definition of array `%#D' in condition"
+#~ msgstr "metoddefinition för \"%c%s\" kan inte hittas"
+
+#, fuzzy
+#~ msgid "`%T' is not a valid expression"
+#~ msgstr "\"%s\" är inte ett giltigt filnamn"
+
+#~ msgid "ISO C++ forbids initialization of new expression with `='"
+#~ msgstr "ISO C++ förbjuder initiering av new-uttryck med \"=\""
+
+#~ msgid "missing ';' before right brace"
+#~ msgstr "saknar ';' före slutklammer"
+
+#~ msgid "possibly missing ')'"
+#~ msgstr "saknas troligen en ')'"
+
+#, fuzzy
+#~ msgid "no type `%D' in `%T'"
+#~ msgstr "returtypen på \"%s\" är inte \"int\""
+
+#, fuzzy
+#~ msgid "type specifier omitted for parameter `%E'"
+#~ msgstr "lagringsklass angiven för parameter \"%s\""
+
+#, fuzzy
#~ msgid "base initializer for `%T'"
#~ msgstr "kan inte initiera friend-funktion \"%s\""
+#~ msgid "function body for constructor missing"
+#~ msgstr "funktionskroppen för konstrueraren saknas"
+
+#, fuzzy
+#~ msgid "invalid type `%T' for default argument to `%T'"
+#~ msgstr "ogiltigt typargument till \"%s\""
+
+#~ msgid "%s before `%c'"
+#~ msgstr "%s före \"%c\""
+
+#~ msgid "%s before `\\%o'"
+#~ msgstr "%s före \"\\%o\""
+
+#~ msgid "%s before `%s' token"
+#~ msgstr "%s före symbolen \"%s\""
+
#~ msgid "ISO C++ forbids applying `sizeof' to a member function"
#~ msgstr "ISO C++ förbjuder användning av \"sizeof\" på medlemsfunktion"
@@ -21922,6 +23136,10 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgstr "ISO C++ förbjuder användning av \"sizeof\" på typ void som är en inkomplett typ"
#, fuzzy
+#~ msgid "`sizeof' applied to non-static member"
+#~ msgstr "\"sizeof\" applicerat på ett bitfält"
+
+#, fuzzy
#~ msgid "`sizeof' applied to incomplete type `%T'"
#~ msgstr "sizeof applicerat på en inkomplett typ"
@@ -21930,13 +23148,6 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgstr "ogiltig användning av void-uttryck"
#, fuzzy
-#~ msgid "object missing in call to method `%D'"
-#~ msgstr "kan inte inline:a anrop till \"%s\""
-
-#~ msgid "unary `&'"
-#~ msgstr "unärt \"&\""
-
-#, fuzzy
#~ msgid "invalid use of undefined type `%#T'"
#~ msgstr "ogiltig mottagartyp \"%s\""
@@ -21953,10 +23164,6 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgstr "ogiltigt användande av \"restrict\""
#, fuzzy
-#~ msgid "invalid use of template type parameter"
-#~ msgstr "ogiltigt typargument"
-
-#, fuzzy
#~ msgid "initializer list construction invalid for `%D'"
#~ msgstr "initierare misslyckas med att bestämma storlek på \"%s\""
@@ -21965,6 +23172,14 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgstr "upprepning av medlem \"%s\""
#, fuzzy
+#~ msgid "Recognize and/bitand/bitor/compl/not/or/xor"
+#~ msgstr "Känn igen and/bitand/bitor/compl/not/or/xor"
+
+#, fuzzy
+#~ msgid "directory name must immediately follow -I"
+#~ msgstr "Katalognamn måste komma direkt efter -I"
+
+#, fuzzy
#~ msgid "The meaning of `\\x' (at %0) varies with -traditional"
#~ msgstr "semantiken för \"\\x\" varierar med -traditional"
@@ -21978,6 +23193,41 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "the meaning of `\\a' varies with -traditional"
#~ msgstr "semantiken för \"\\a\" varierar med -traditional"
+#~ msgid "ignoring pragma: %s"
+#~ msgstr "ignorerar #pragma: %s"
+
+#~ msgid "`%s' cannot be statically allocated"
+#~ msgstr "\"%s\" kan inte vara statiskt allokerad"
+
+#~ msgid "multiple declarations for method `%s'"
+#~ msgstr "multiple deklaration av metod \"%s\""
+
+#, fuzzy
+#~ msgid "cannot find class (factory) method"
+#~ msgstr "kan inte hitta klass(fabrik)-metod"
+
+#~ msgid "return type for `%s' defaults to id"
+#~ msgstr "returtyp för \"%s\" är som standard id"
+
+#~ msgid "return type defaults to id"
+#~ msgstr "returtyp är som standard id"
+
+#, fuzzy
+#~ msgid "cannot find method"
+#~ msgstr "kan inte hitta metod."
+
+#, fuzzy
+#~ msgid "duplicate definition of class method `%s'"
+#~ msgstr "upprepad definition av klassmetod \"%s\"."
+
+#, fuzzy
+#~ msgid "duplicate definition of instance method `%s'"
+#~ msgstr "upprepad definition av klassmetod \"%s\"."
+
+#, fuzzy
+#~ msgid "duplicate declaration of instance method `%s'"
+#~ msgstr "upprepad deklaration av klassmetod \"%s\"."
+
#~ msgid "-mbsd and -pedantic incompatible"
#~ msgstr "-mbsd och -pedantic är inkompatibla"
@@ -22044,16 +23294,16 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "explicit specialization here"
#~ msgstr "initiering"
+#, fuzzy
+#~ msgid "explicit instantiation of `%#T' after"
+#~ msgstr "%s: Vid instansiering av \"%s\":\n"
+
#~ msgid "__builtin_trap not supported by this target"
#~ msgstr "__builtin_trap stöds inte på denna målarkitektur"
#~ msgid "type with more precision than %s"
#~ msgstr "typ med högre precision än %s"
-# local, det kan troligen vara både lokal variabel och lokal funktion??
-#~ msgid "declaration of `%s' shadows previous local"
-#~ msgstr "deklaration av \"%s\" döljer en tidigare lokal"
-
#~ msgid "ANSI C forbids const or volatile function types"
#~ msgstr "ANSI C förbjuder funktionertyper med const eller volatile"
@@ -22090,9 +23340,6 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "Do not use FUNCTION_EPILOGUE"
#~ msgstr "Använd inte FUNCTION_EPILOGUE"
-#~ msgid "methods cannot be converted to function pointers"
-#~ msgstr "metoder kan inte konverteras till funktionspekare"
-
#~ msgid "ISO C++ forbids `&&'"
#~ msgstr "ISO C++ förbjuder \"&&\""
@@ -22102,9 +23349,6 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "ISO C++ forbids using a pointer-to-function in pointer arithmetic"
#~ msgstr "ISO C++ förbjuder användning av funktionspekarepekare i pekararitmetik"
-#~ msgid "ISO C++ forbids using pointer to a member in pointer arithmetic"
-#~ msgstr "ISO C++ förbjuder användning av pekare till medlem i pekararitmetik"
-
#~ msgid "Internal error #%d."
#~ msgstr "Internt fel #%d."
@@ -22168,9 +23412,6 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "ISO C does not support the strftime `%c' flag"
#~ msgstr "ISO C stöder inte flaggan \"%c\" till strftime"
-#~ msgid "ISO C89 does not support the `%%%c' %s format"
-#~ msgstr "ISO C89 stöder inte \\\"%%%c\\\" i %s formatsträng"
-
#~ msgid "ISO C does not support `%%O%c'"
#~ msgstr "ISO C stöder inte \"%%O%c#"
@@ -22225,15 +23466,9 @@ msgstr "-msingle-float och -msoft-float kan inte båda anges."
#~ msgid "ISO C forbids text after #%s"
#~ msgstr "ISO C förbjuder text efter #%s"
-#~ msgid "no memory"
-#~ msgstr "inget minne"
-
#~ msgid "Objective-C text in C source file"
#~ msgstr "Objective-C text i C-källkodsfil"
-#~ msgid "statically allocated objects not supported"
-#~ msgstr "statiskt allokerade objekt stöds inte"
-
#~ msgid " -m%-21.21s [undocumented]\n"
#~ msgstr " -m%-21.21s [odokumenterat]\n"
diff --git a/gcc/po/tr.po b/gcc/po/tr.po
index 47ee92918fe..8f4a4e297bc 100644
--- a/gcc/po/tr.po
+++ b/gcc/po/tr.po
@@ -5,7 +5,8 @@
msgid ""
msgstr ""
"Project-Id-Version: gcc 3.3.2\n"
-"POT-Creation-Date: 2003-10-24 13:20+0200\n"
+"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
+"POT-Creation-Date: 2004-02-06 01:40+0000\n"
"PO-Revision-Date: 2003-10-25 11:35+0300\n"
"Last-Translator: Nilgün Belma Bugüner <nilgun@superonline.com>\n"
"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
@@ -14,1046 +15,1134 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.0\n"
-#: attribs.c:185
+#: attribs.c:178
#, c-format
msgid "`%s' attribute directive ignored"
msgstr "`%s' özellik yönergesi yoksayıldı"
-#: attribs.c:193
+#: attribs.c:186
#, c-format
msgid "wrong number of arguments specified for `%s' attribute"
msgstr "'%s' özelliği için belirtilen argüman sayısı hatalı"
-#: attribs.c:210
+#: attribs.c:203
#, c-format
msgid "`%s' attribute does not apply to types"
msgstr "`%s' özelliği veri türlerine uygulanmaz"
-#: attribs.c:247
+#: attribs.c:249
#, c-format
msgid "`%s' attribute only applies to function types"
msgstr "`%s' özelliği sadece işlev türlere uygulanır"
-#: attribs.c:404 c-common.c:5275 c-common.c:5297 c-common.c:5319
-#: c-common.c:5350 c-common.c:5372 c-common.c:5397 c-common.c:5423
-#: c-common.c:5453 c-common.c:5491 c-common.c:5538 c-common.c:5568
-#: c-common.c:5598 c-common.c:5621 c-common.c:5878 c-common.c:5900
-#: c-common.c:5943 c-common.c:6020 c-common.c:6076 c-common.c:6103
-#: c-common.c:6186 c-common.c:6220 c-common.c:6574 config/arm/arm.c:2101
-#: config/arm/arm.c:2128 config/avr/avr.c:4774 config/h8300/h8300.c:3693
-#: config/h8300/h8300.c:3718 config/i386/i386.c:1403 config/i386/winnt.c:78
-#: config/ip2k/ip2k.c:3204
+#: attribs.c:416 c-common.c:4344 c-common.c:4363 c-common.c:4381
+#: c-common.c:4408 c-common.c:4427 c-common.c:4450 c-common.c:4473
+#: c-common.c:4499 c-common.c:4533 c-common.c:4577 c-common.c:4605
+#: c-common.c:4633 c-common.c:4652 c-common.c:4907 c-common.c:4929
+#: c-common.c:4964 c-common.c:5031 c-common.c:5077 c-common.c:5135
+#: c-common.c:5166 c-common.c:5512 c-common.c:5535 c-common.c:5574
+#: config/arm/arm.c:2278 config/arm/arm.c:2305 config/avr/avr.c:4539
+#: config/h8300/h8300.c:4281 config/h8300/h8300.c:4304 config/i386/i386.c:1599
+#: config/i386/i386.c:15299 config/i386/winnt.c:86 config/ia64/ia64.c:1053
+#: config/ip2k/ip2k.c:3151
#, c-format
msgid "`%s' attribute ignored"
msgstr "`%s' özelliği yoksayıldı"
-#: builtins.c:285
+#: builtins.c:318
msgid "offset outside bounds of constant string"
msgstr "göreli konum sabit dizgenin sınırlarının dışında"
-#: builtins.c:765
+#: builtins.c:786
msgid "second arg to `__builtin_prefetch' must be a constant"
msgstr "`__builtin_prefetch' için 2. argüman bir sabit olmalı"
-#: builtins.c:772
+#: builtins.c:793
msgid "invalid second arg to __builtin_prefetch; using zero"
msgstr "__builtin_prefetch için 2. argüman geçersiz; sıfır kullanılıyor"
-#: builtins.c:779
+#: builtins.c:800
msgid "third arg to `__builtin_prefetch' must be a constant"
msgstr "`__builtin_prefetch' için 3. argüman bir sabit olmalı"
-#: builtins.c:786
+#: builtins.c:807
msgid "invalid third arg to __builtin_prefetch; using zero"
msgstr "__builtin_prefetch için 3. argüman geçersiz; sıfır kullanılıyor"
-#. ??? We used to try and build up a call to the out of line function,
-#. guessing about what registers needed saving etc. This became much
-#. harder with __builtin_va_start, since we don't have a tree for a
-#. call to __builtin_saveregs to fall back on. There was exactly one
-#. port (i860) that used this code, and I'm unconvinced it could actually
-#. handle the general case. So we no longer try to handle anything
-#. weird and make the backend absorb the evil.
-#: builtins.c:2875
-msgid "__builtin_saveregs not supported by this target"
-msgstr "__builtin_saveregs bu hedef tarafından desteklenmiyor"
-
-#: builtins.c:2917
+#: builtins.c:3828
msgid "argument of `__builtin_args_info' must be constant"
msgstr "`__builtin_args_info'nun argümanı bir sabit olmalıdır"
-#: builtins.c:2923
+#: builtins.c:3834
msgid "argument of `__builtin_args_info' out of range"
msgstr "`__builtin_args_info'nun argümanı kapsamdışı"
-#: builtins.c:2929
+#: builtins.c:3840
msgid "missing argument in `__builtin_args_info'"
msgstr "`__builtin_args_info'da argüman eksik"
-#: builtins.c:2960
+#: builtins.c:3856
msgid "`va_start' used in function with fixed args"
msgstr "`va_start' işlev içinde sabit argümanlarla kullanılmış"
-#: builtins.c:2979
+#: builtins.c:3875
msgid "second parameter of `va_start' not last named argument"
msgstr "`va_start'ın ikinci parametresi isimli son argüman değil"
#. Evidently an out of date version of <stdarg.h>; can't validate
#. va_start's second argument, but can still work as intended.
-#: builtins.c:2984
+#: builtins.c:3880
msgid "`__builtin_next_arg' called without an argument"
msgstr "`__builtin_next_arg' argümansız çağrılmış"
-#: builtins.c:3070
+#: builtins.c:3969
msgid "too many arguments to function `va_start'"
msgstr "`va_start' işlevine çok fazla argüman verilmiş"
-#: builtins.c:3172
+#: builtins.c:4091
msgid "first argument to `va_arg' not of type `va_list'"
msgstr "`va_arg'ın ilk argümanının türü `va_list' değil"
#. Unfortunately, this is merely undefined, rather than a constraint
#. violation, so we cannot make this an error. If this call is never
#. executed, the program is still strictly conforming.
-#: builtins.c:3204
+#: builtins.c:4123
#, c-format
msgid "`%s' is promoted to `%s' when passed through `...'"
msgstr "`%s' `...' sayesinde aktarıldığında `%s'e yükseltilmiş"
-#: builtins.c:3209
+#: builtins.c:4128
#, c-format
msgid "(so you should pass `%s' not `%s' to `va_arg')"
msgstr "(bu durumda `va_arg'a `%s' aktarılmalı, `%s' değil)"
-#: builtins.c:3340
+#: builtins.c:4240
msgid "invalid arg to `__builtin_frame_address'"
msgstr "`__builtin_frame_address'e aktarılan argüman geçersiz"
-#: builtins.c:3342
+#: builtins.c:4242
msgid "invalid arg to `__builtin_return_address'"
msgstr "`__builtin_return_address'e aktarılan argüman geçersiz"
-#: builtins.c:3356
+#: builtins.c:4256
msgid "unsupported arg to `__builtin_frame_address'"
msgstr "`__builtin_frame_address'e aktarılan argüman desteklenmiyor"
-#: builtins.c:3358
+#: builtins.c:4258
msgid "unsupported arg to `__builtin_return_address'"
msgstr "`__builtin_return_address'e aktarılan argüman desteklenmiyor"
-#: builtins.c:3530
+#: builtins.c:4418
msgid "second arg to `__builtin_expect' must be a constant"
msgstr "`__builtin_expect'e aktarılan ikinci argüman bir sabit olmalı"
-#: builtins.c:4028
+#: builtins.c:5359
msgid "__builtin_longjmp second argument must be 1"
msgstr "__builtin_longjmp'ın ikinci argümanı 1 olmalı"
-#. just do library call, if unknown builtin
-#: builtins.c:4092 c-common.c:4459
+#: builtins.c:5454
#, c-format
msgid "built-in function `%s' not currently supported"
msgstr "yerleÅŸik iÅŸlev `%s' ÅŸu an desteklenmiyor"
-#: builtins.c:4165
+#: builtins.c:5594
msgid "target format does not support infinity"
msgstr "hedef biçim sonsuzu desteklemiyor"
-#: c-common.c:1168
-#, c-format
-msgid "`%s' is not defined outside of function scope"
+#: c-common.c:934
+msgid "%Hsuggest explicit braces to avoid ambiguous `else'"
+msgstr ""
+
+#: c-common.c:1158
+#, fuzzy
+msgid "%J'%D' is not defined outside of function scope"
msgstr "`%s' işlev bağlamının dışında atanmamış"
-#: c-common.c:1189
+#: c-common.c:1178
#, c-format
msgid "string length `%d' is greater than the length `%d' ISO C%d compilers are required to support"
msgstr "dizge uzunluğu `%1$d' ISO C%3$d derleyiclerin desteklediği uzunluk %2$d den büyük"
-#: c-common.c:1247
-msgid "concatenation of string literals with __FUNCTION__ is deprecated"
-msgstr "__FUNCTION__ ile dizge sabitlerin birleştirilmesi özelliği eski kullanım"
-
-#: c-common.c:1343
+#: c-common.c:1218
msgid "overflow in constant expression"
msgstr "sabit ifadesinde taÅŸma"
-#: c-common.c:1364
+#: c-common.c:1238
msgid "integer overflow in expression"
msgstr "ifadede tamsayı taşması"
-#: c-common.c:1373
+#: c-common.c:1247
msgid "floating point overflow in expression"
msgstr "ifadede gerçel sayı taşması"
-#: c-common.c:1379
+#: c-common.c:1253
msgid "vector overflow in expression"
msgstr "ifadede vektör taşması"
#. This detects cases like converting -129 or 256 to unsigned char.
-#: c-common.c:1402
+#: c-common.c:1275
msgid "large integer implicitly truncated to unsigned type"
msgstr "büyük tamsayı örtük olarak unsigned türe indirgendi"
-#: c-common.c:1404
+#: c-common.c:1277
msgid "negative integer implicitly converted to unsigned type"
msgstr "negatif tamsayı örtük olarak unsigned türe dönüştürüldü"
-#: c-common.c:1452
+#: c-common.c:1323
msgid "overflow in implicit constant conversion"
msgstr "örtük sabit dönüşümünde taşma"
-#: c-common.c:1600
+#: c-common.c:1459
#, c-format
msgid "operation on `%s' may be undefined"
msgstr "`%s' üstündeki işlem tanımsız olabilir"
-#: c-common.c:1891
+#: c-common.c:1743
msgid "expression statement has incomplete type"
msgstr "ifade deyimi tamamlanmamış tür içeriyor"
-#: c-common.c:1924
+#: c-common.c:1775
msgid "case label does not reduce to an integer constant"
msgstr "case etiketi bir tamsayı sabite indirgenmez"
-#: c-common.c:2228
+#: c-common.c:2105
msgid "invalid truth-value expression"
msgstr "doğruluk-değeri ifadesi geçersiz"
-#: c-common.c:2279
+#: c-common.c:2156
#, c-format
msgid "invalid operands to binary %s"
msgstr "iki terimli %s için terimler geçersiz"
-#: c-common.c:2513
+#: c-common.c:2390
msgid "comparison is always false due to limited range of data type"
msgstr "veri türünün kapsadığı sınırlardan dolayı karşılaştırma sonucu daima yanlıştır"
-#: c-common.c:2515
+#: c-common.c:2392
msgid "comparison is always true due to limited range of data type"
msgstr "veri türünün kapsadığı sınırlardan dolayı karşılaştırma sonucu daima doğrudur"
-#: c-common.c:2585
+#: c-common.c:2462
msgid "comparison of unsigned expression >= 0 is always true"
msgstr "unsigned ifade >=0 daima doÄŸrudur"
-#: c-common.c:2594
+#: c-common.c:2471
msgid "comparison of unsigned expression < 0 is always false"
msgstr "unsigned ifade < 0 daima yanlıştır"
-#: c-common.c:2641
+#: c-common.c:2516
msgid "pointer of type `void *' used in arithmetic"
msgstr "aritmetikte `void *' türünde gösterici kullanılmış"
-#: c-common.c:2647
+#: c-common.c:2522
msgid "pointer to a function used in arithmetic"
msgstr "aritmetikte işlev göstericisi kullanılmış"
-#: c-common.c:2653
+#: c-common.c:2528
msgid "pointer to member function used in arithmetic"
msgstr "aritmetikte üye işlev göstericisi kullanılmış"
-#: c-common.c:2659
+#: c-common.c:2534
msgid "pointer to a member used in arithmetic"
msgstr "aritmetikte üye göstericisi kullanılmış"
-#: c-common.c:2746 f/com.c:14762
+#: c-common.c:2623 f/com.c:14734
msgid "struct type value used where scalar is required"
msgstr "sayısal değer gerekirken yapı türü değer kullanılmış"
-#: c-common.c:2750 f/com.c:14766
+#: c-common.c:2627 f/com.c:14738
msgid "union type value used where scalar is required"
msgstr "sayısal değer gerekirken birleşik yapı türü değer kullanılmış"
-#: c-common.c:2754 f/com.c:14770
+#: c-common.c:2631 f/com.c:14742
msgid "array type value used where scalar is required"
msgstr "sayısal değer gerekirken dizi türü değer kullanılmış"
-#: c-common.c:2874 f/com.c:14903
+#. Common Ada/Pascal programmer's mistake. We always warn
+#. about this since it is so bad.
+#: c-common.c:2668
+#, fuzzy
+msgid "the address of `%D', will always evaluate as `true'"
+msgstr "`%D' nin adresi, daima `true' olacak"
+
+#: c-common.c:2762 f/com.c:14874
msgid "suggest parentheses around assignment used as truth value"
msgstr "atamayı sarmalayan parantezler muhtemelen doğruluk değeri olarak kullanılmış"
-#: c-common.c:2918 c-common.c:2950
+#: c-common.c:2808 c-common.c:2848
msgid "invalid use of `restrict'"
msgstr "`restrict' kullanımı geçersiz"
-#: c-common.c:3064
+#: c-common.c:2958
msgid "invalid application of `sizeof' to a function type"
msgstr "bir işlev türüne geçersiz `sizeof' uygulaması "
-#: c-common.c:3074
+#: c-common.c:2968
#, c-format
msgid "invalid application of `%s' to a void type"
msgstr "bir void türe geçersiz `%s' uygulaması"
-#: c-common.c:3080
+#: c-common.c:2974
#, c-format
msgid "invalid application of `%s' to an incomplete type"
msgstr "bir tamalanmamış türe geçersiz `%s' uygulaması"
-#: c-common.c:3121
+#: c-common.c:3014
msgid "`__alignof' applied to a bit-field"
msgstr "`__alignof' bir bit-alanına uygulanmış"
-#: c-common.c:3618
+#: c-common.c:3506
#, c-format
msgid "cannot disable built-in function `%s'"
msgstr "`%s' yerleÅŸik iÅŸlev olduÄŸundan iptal edilemez"
-#: c-common.c:3787 c-typeck.c:1748
+#: c-common.c:3667 c-typeck.c:1941
#, c-format
msgid "too few arguments to function `%s'"
msgstr "`%s' işlevi için argümanlar çok az"
-#: c-common.c:3793 c-typeck.c:1601
+#: c-common.c:3673 c-typeck.c:1802
#, c-format
msgid "too many arguments to function `%s'"
msgstr "`%s' işlevi için argümanlar çok fazla"
-#: c-common.c:3812
+#: c-common.c:3692
#, c-format
msgid "non-floating-point argument to function `%s'"
msgstr "`%s' işlevine kayan noktalı olmayan argüman"
-#: c-common.c:4081
+#: c-common.c:3919
msgid "pointers are not permitted as case values"
msgstr "case değeri olarak göstericiler kullanılamaz"
-#: c-common.c:4087
-msgid "ISO C++ forbids range expressions in switch statements"
-msgstr "ISO C++ switch deyimlerinde aralık ifadelerine izin vermez"
-
-#: c-common.c:4089
-msgid "ISO C forbids range expressions in switch statements"
+#: c-common.c:3923
+#, fuzzy
+msgid "range expressions in switch statements are non-standard"
msgstr "ISO C switch deyimlerinde aralık ifadelerine izin vermez"
-#: c-common.c:4119
+#: c-common.c:3952
msgid "empty range specified"
msgstr "boş aralık belirtilmiş"
-#: c-common.c:4170
+#: c-common.c:4003
msgid "duplicate (or overlapping) case value"
msgstr "yinelenmiÅŸ (ya da birbirini kapsayan) case deÄŸerleri"
-#: c-common.c:4172
-msgid "this is the first entry overlapping that value"
+#: c-common.c:4004
+#, fuzzy
+msgid "%Jthis is the first entry overlapping that value"
msgstr "bu, aynı değeri kapsayan ilk girdi"
-#: c-common.c:4176
+#: c-common.c:4008
msgid "duplicate case value"
msgstr "yinelenmiÅŸ case deÄŸeri"
-#: c-common.c:4177
-msgid "previously used here"
+#: c-common.c:4009
+#, fuzzy
+msgid "%Jpreviously used here"
msgstr "önce burada kullanılmış"
-#: c-common.c:4181
+#: c-common.c:4013
msgid "multiple default labels in one switch"
msgstr "tek switch'te çok sayıda öntanımlı etiket"
-#: c-common.c:4182
-msgid "this is the first default label"
+#: c-common.c:4014
+#, fuzzy
+msgid "%Jthis is the first default label"
msgstr "bu, ilk öntanımlı etiket"
-#: c-common.c:4210
-msgid "ISO C++ forbids taking the address of a label"
-msgstr "ISO C++ da bir etiket adresinin alınmasına izin verilmez"
+#: c-common.c:4039
+#, fuzzy
+msgid "taking the address of a label is non-standard"
+msgstr "bir dizge sabitin adresinin alınması standart-dışı"
-#: c-common.c:4212
-msgid "ISO C forbids taking the address of a label"
-msgstr "ISO C de bir etiket adresinin alınmasına izin verilmez"
+#: c-common.c:4085
+msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
-#: c-common.c:5235
-#, c-format
-msgid "declaration of `%s' shadows %s"
-msgstr "`%s' bildirimi %s'i gölgeliyor"
+#: c-common.c:4090
+msgid "%Hignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
+
+#. SW_PARAM
+#: c-common.c:4297
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a parameter"
+msgstr "`%s' bildirimi bir parametreyi gölgeliyor"
+
+#. SW_LOCAL
+#: c-common.c:4298
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a previous local"
+msgstr "`%s' bildirimi bir parametreyi gölgeliyor"
+
+#. SW_GLOBAL
+#: c-common.c:4299
+#, fuzzy, c-format
+msgid "declaration of \"%s\" shadows a global declaration"
+msgstr "`%s' bildirimi bir parametreyi gölgeliyor"
-#: c-common.c:5654
+#: c-common.c:4303
+#, fuzzy
+msgid "%Jshadowed declaration is here"
+msgstr "deÄŸiÅŸken birdirimine burada izin verilmez"
+
+#: c-common.c:4686
#, c-format
msgid "unknown machine mode `%s'"
msgstr "'%s makina kipi bilinmiyor"
-#: c-common.c:5657
+#: c-common.c:4689
#, c-format
msgid "no data type for mode `%s'"
msgstr "'%s' kipi için bir veri türü yok"
-#: c-common.c:5666 c-common.c:6316
+#: c-common.c:4693
+#, fuzzy, c-format
+msgid "invalid pointer mode `%s'"
+msgstr "terim kodu `%c' geçersiz"
+
+#: c-common.c:4700 c-common.c:5263
#, c-format
msgid "unable to emulate '%s'"
msgstr "'%s' öykünümü yapılamıyor"
-#: c-common.c:5702
-msgid "section attribute cannot be specified for local variables"
+#: c-common.c:4744
+#, fuzzy
+msgid "%Jsection attribute cannot be specified for local variables"
msgstr "bölge özelliği yerel değişkenler için belirtilmiş olamaz"
-#: c-common.c:5713
-#, c-format
-msgid "section of `%s' conflicts with previous declaration"
+#: c-common.c:4755
+#, fuzzy
+msgid "%Jsection of '%D' conflicts with previous declaration"
msgstr "`%s' bölgesi önceki bildirimle çelişiyor"
-#: c-common.c:5722
-#, c-format
-msgid "section attribute not allowed for `%s'"
+#: c-common.c:4764
+#, fuzzy
+msgid "%Jsection attribute not allowed for '%D'"
msgstr "bölge özelliğine `%s' için izin verilmez"
-#: c-common.c:5729
-msgid "section attributes are not supported for this target"
+#: c-common.c:4770
+#, fuzzy
+msgid "%Jsection attributes are not supported for this target"
msgstr "bölge özellikleri bu hedef için desteklenmiyor"
-#: c-common.c:5771
+#: c-common.c:4808
msgid "requested alignment is not a constant"
msgstr "istenen ayarlama bir sabit deÄŸil"
-#: c-common.c:5776
+#: c-common.c:4813
msgid "requested alignment is not a power of 2"
msgstr "istenen ayarlama 2 nin kuvveti deÄŸil"
-#: c-common.c:5781
+#: c-common.c:4818
msgid "requested alignment is too large"
msgstr "istenen ayarlama çok büyük"
-#: c-common.c:5808
-#, c-format
-msgid "alignment may not be specified for `%s'"
+#: c-common.c:4844
+#, fuzzy
+msgid "%Jalignment may not be specified for '%D'"
msgstr "hizalama `%s' için belirtilmiş olmayabilir"
-#: c-common.c:5853
-#, c-format
-msgid "`%s' defined both normally and as an alias"
+#: c-common.c:4882
+#, fuzzy
+msgid "%J'%D' defined both normally and as an alias"
msgstr "`%s' hem normal hem de bir rumuz olarak tanımlanmış"
-#: c-common.c:5863
+#: c-common.c:4892
msgid "alias arg not a string"
msgstr "rumuz argümanı bir dizge değil"
-#: c-common.c:5910
+#: c-common.c:4935
msgid "visibility arg not a string"
msgstr "görünürlük argümanı bir dizge değil"
-#: c-common.c:5919
+#: c-common.c:4948
msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\""
msgstr "görünürlük \"default\", \"hidden\", \"protected\" veya \"internal\" değerlerinden biri olmalıdır"
-#: c-common.c:5953
+#: c-common.c:4974
msgid "tls_model arg not a string"
msgstr "tls_model argümanı bir dizge değil"
-#: c-common.c:5962
+#: c-common.c:4983
msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\""
msgstr "tls_model \"local-exec\", \"initial-exec\", \"local-dynamic\" veya \"global-dynamic\" değerlerinden biri olmalı"
-#: c-common.c:5987 c-common.c:6043
-#, c-format
-msgid "`%s' attribute applies only to functions"
+#: c-common.c:5005 c-common.c:5051
+#, fuzzy
+msgid "%J'%E' attribute applies only to functions"
msgstr "`%s' özelliği sadece işlevlere uygulanır"
-#: c-common.c:5994 c-common.c:6050
-#, c-format
-msgid "can't set `%s' attribute after definition"
+#: c-common.c:5010 c-common.c:5056
+#, fuzzy
+msgid "%Jcan't set '%E' attribute after definition"
msgstr "`%s' özelliğine tanımlandıktan sonra değer atanamaz"
-#: c-common.c:6114
-msgid "cleanup arg not an identifier"
-msgstr "temizleme argümanı bir isim değil"
-
-#: c-common.c:6121
-msgid "cleanup arg not a function"
-msgstr "temizleme argümanı bir işlev değil"
-
-#: c-common.c:6183
+#: c-common.c:5132
#, c-format
msgid "`%s' attribute ignored for `%s'"
msgstr "`%s' özelliği `%s' için yoksayıldı"
-#: c-common.c:6248
+#: c-common.c:5195
#, c-format
msgid "invalid vector type for attribute `%s'"
msgstr "`%s' özelliği vektör tür geçersiz"
-#: c-common.c:6272 c-common.c:6304
+#: c-common.c:5219 c-common.c:5251
msgid "no vector mode with the size and type specified could be found"
msgstr "belirtilen tür ve boyutta vektör kipi yok"
-#: c-common.c:6403
+#: c-common.c:5353
msgid "nonnull attribute without arguments on a non-prototype"
msgstr "bir prototip olmayanda argümansız null olmayan özellik"
-#: c-common.c:6418
+#: c-common.c:5368
#, c-format
msgid "nonnull argument has invalid operand number (arg %lu)"
msgstr "null olmayan argüman geçersiz sayıda terim içeriyor (%lu. argüman)"
-#: c-common.c:6437
+#: c-common.c:5387
#, c-format
msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)"
msgstr "null olmayan argüman kapsamdışı sayıda terim içeriyor (%lu. argüman, %lu. terim)"
-#: c-common.c:6445
+#: c-common.c:5395
#, c-format
msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)"
msgstr "null olmayan argüman gösterici olmayan terime başvuruyor (%lu. argüman, %lu. terim)"
-#: c-common.c:6531
+#: c-common.c:5475
#, c-format
msgid "null argument where non-null required (arg %lu)"
msgstr "null olamayan gerekiren yerde null argüman (%lu. argüman)"
-#: c-convert.c:80 c-typeck.c:988 c-typeck.c:4059 cp/typeck.c:1615
-#: cp/typeck.c:5939
-msgid "void value not ignored as it ought to be"
-msgstr "void değer yoksayılması gerekirken yoksayılmadı"
-
-#: c-convert.c:112 java/typeck.c:150
-msgid "conversion to non-scalar type requested"
-msgstr "sayısal olmayan türe dönüşüm istendi"
-
-#: c-decl.c:340
-#, c-format
-msgid "array `%s' assumed to have one element"
-msgstr "`%s' dizisi tek elemanlı kabul edildi"
-
-#: c-decl.c:526
-#, c-format
-msgid "`struct %s' incomplete in scope ending here"
-msgstr "kapsam sonuna gelindiÄŸinde `struct %s' hala eksik"
+#: c-common.c:5546
+msgid "cleanup arg not an identifier"
+msgstr "temizleme argümanı bir isim değil"
-#: c-decl.c:529
-#, c-format
-msgid "`union %s' incomplete in scope ending here"
-msgstr "kapsam sonuna gelindiÄŸinde `union %s' hala eksik"
+#: c-common.c:5553
+msgid "cleanup arg not a function"
+msgstr "temizleme argümanı bir işlev değil"
-#: c-decl.c:532
+#: c-common.c:5914
#, c-format
-msgid "`enum %s' incomplete in scope ending here"
-msgstr "kapsam sonuna gelindiÄŸinde `enum %s' hala eksik"
+msgid "%s at end of input"
+msgstr "%s girdinin sonunda"
-#: c-decl.c:646 c-decl.c:771 java/decl.c:1403
+#: c-common.c:5920
#, c-format
-msgid "label `%s' used but not defined"
-msgstr "`%s' etiketi tanımsız kullanılmış"
+msgid "%s before %s'%c'"
+msgstr "%2$s'%3$c'den önce %1$s"
-#: c-decl.c:652 c-decl.c:778 java/decl.c:1409
+#: c-common.c:5922
#, c-format
-msgid "label `%s' defined but not used"
-msgstr "`%s' etiketi tanımlı ama kullanılmamış"
+msgid "%s before %s'\\x%x'"
+msgstr "%2$s'\\x%3$x'den önce %1$s"
-#: c-decl.c:893 cp/decl.c:3335
+#: c-common.c:5926
#, c-format
-msgid "function `%s' redeclared as inline"
-msgstr "iÅŸlev `%s' 'inline' olarak yeniden bildirilmiÅŸ"
+msgid "%s before string constant"
+msgstr "%s dizge sabitten önce"
-#: c-decl.c:895 cp/decl.c:3337
+#: c-common.c:5928
#, c-format
-msgid "previous declaration of function `%s' with attribute noinline"
-msgstr "`%s' işlevinin önceki bildirimi 'inline' değil"
+msgid "%s before numeric constant"
+msgstr "sayısal sabitten önce %s"
-#: c-decl.c:902 cp/decl.c:3344
+#: c-common.c:5930
#, c-format
-msgid "function `%s' redeclared with attribute noinline"
-msgstr "`%s' iÅŸlevinin bildirimi 'inline' deÄŸil"
+msgid "%s before \"%s\""
+msgstr "\"%2$s\"den önce %1$s"
-#: c-decl.c:904 cp/decl.c:3346
+#: c-common.c:5932
#, c-format
-msgid "previous declaration of function `%s' was inline"
-msgstr "`%s' işlevinin önceki bildirimi 'inline' idi"
+msgid "%s before '%s' token"
+msgstr "'%2$s' dizgeciğinden önce %1$s"
-#: c-decl.c:933 c-decl.c:979
+#. Use `%s' to print the string in case there are any escape
+#. characters in the message.
+#: c-common.c:5934 c-typeck.c:2578 c-typeck.c:3970 c-typeck.c:3985
+#: c-typeck.c:4000 final.c:2776 final.c:2778 gcc.c:4574 rtl-error.c:109
+#: toplev.c:1340 config/cris/cris.c:545 cp/parser.c:1848 cp/typeck.c:4111
+#: java/expr.c:356 java/verify.c:1456 java/verify.c:1457 java/verify.c:1472
#, c-format
-msgid "shadowing built-in function `%s'"
-msgstr "yerleşik `%s' işlevinin gölgelenmesi"
+msgid "%s"
+msgstr "%s"
-#: c-decl.c:935
-#, c-format
-msgid "shadowing library function `%s'"
-msgstr "kitaplık işlevi `%s'in gölgelenmesi"
+#: c-convert.c:82 c-typeck.c:1193 c-typeck.c:3410 cp/typeck.c:1337
+#: cp/typeck.c:5648 treelang/tree-convert.c:79
+msgid "void value not ignored as it ought to be"
+msgstr "void değer yoksayılması gerekirken yoksayılmadı"
-#: c-decl.c:941
-#, c-format
-msgid "library function `%s' declared as non-function"
-msgstr "kitaplık işlevi `%s' işlev olarak bildirilmemiş"
+#: c-convert.c:114 java/typeck.c:148 treelang/tree-convert.c:105
+msgid "conversion to non-scalar type requested"
+msgstr "sayısal olmayan türe dönüşüm istendi"
-#: c-decl.c:945 c-decl.c:948
-#, c-format
-msgid "built-in function `%s' declared as non-function"
-msgstr "yerleÅŸik iÅŸlev `%s' iÅŸlev olarak bildirilmemiÅŸ"
+#: c-decl.c:371
+#, fuzzy
+msgid "%Jarray '%D' assumed to have one element"
+msgstr "`%s' dizisi tek elemanlı kabul edildi"
-#: c-decl.c:952 objc/objc-act.c:2384 objc/objc-act.c:6154
-#, c-format
-msgid "`%s' redeclared as different kind of symbol"
-msgstr "`%s' farklı bir sembol çeşidi olarak tekrar bildirilmiş"
+#: c-decl.c:580
+#, fuzzy
+msgid "%Jlabel `%D' used but not defined"
+msgstr "etiket `%D' tanımlanmadan kullanılmış"
-#: c-decl.c:953 c-decl.c:1144 c-decl.c:1158 c-decl.c:1165 c-decl.c:1310
-#: objc/objc-act.c:2386 objc/objc-act.c:6156 objc/objc-act.c:6211
-#, c-format
-msgid "previous declaration of `%s'"
-msgstr "`%s'in önceki bildirimi"
+#: c-decl.c:586
+#, fuzzy
+msgid "%Jlabel `%D' defined but not used"
+msgstr "etiket `%D' tanımlanmış ama kullanılmamış"
-#. If types don't match for a built-in, throw away the built-in.
-#: c-decl.c:1048
-#, c-format
-msgid "conflicting types for built-in function `%s'"
-msgstr "yerleşik işlev `%s' için tür çelişkisi"
+#: c-decl.c:588
+#, fuzzy
+msgid "%Jlabel `%D' declared but not defined"
+msgstr "etiket `%D' tanımlanmadan kullanılmış"
-#: c-decl.c:1091 c-decl.c:1110
-#, c-format
-msgid "conflicting types for `%s'"
-msgstr "`%s' için tür çelişkisi"
+#: c-decl.c:613
+#, fuzzy
+msgid "%Junused variable `%D'"
+msgstr "değişken `%s' kullanılmamış"
-#: c-decl.c:1133
+#: c-decl.c:821
msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
msgstr "Üç noktalı bir parametre listesi bir boş parametre isim listesi bildirimi ile eşleşemez"
-#: c-decl.c:1139
+#: c-decl.c:828
msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
msgstr "Bir öntanımlı yükseltme içeren bir argüman türü, bir boş parametre isim listesi bildirimi ile eşleşemez"
-#: c-decl.c:1157
-#, c-format
-msgid "thread-local declaration of `%s' follows non thread-local declaration"
-msgstr "`%s' yerel evreli bildirimi yerel olmayan evreli bildirim izliyor"
+#: c-decl.c:864
+msgid "%Jprototype for '%D' declares more arguments than previous old-style definition"
+msgstr ""
-#: c-decl.c:1164
-#, c-format
-msgid "non thread-local declaration of `%s' follows thread-local declaration"
-msgstr "`%s' yerel olmayan evreli bildirimi yerel evreli bildirim izliyor"
+#: c-decl.c:870
+msgid "%Jprototype for '%D' declares fewer arguments than previous old-style definition"
+msgstr ""
-#: c-decl.c:1175 c-decl.c:1198
-#, c-format
-msgid "redefinition of `%s'"
-msgstr "`%s'in yeniden tanımlanması"
+#: c-decl.c:879
+msgid "%Jprototype for '%D' declares arg %d with incompatible type"
+msgstr ""
-#: c-decl.c:1178
-#, c-format
-msgid "redeclaration of `%s'"
-msgstr "`%s'in yeniden bildirimi"
+#. If we get here, no errors were found, but do issue a warning
+#. for this poor-style construct.
+#: c-decl.c:891
+#, fuzzy
+msgid "%Jprototype for '%D' follows non-prototype definition"
+msgstr "burada prototip olmayan tanımdan sonra"
-#: c-decl.c:1181
-#, c-format
-msgid "conflicting declarations of `%s'"
-msgstr "`%s' bildirimlerinde çelişki"
+#: c-decl.c:906
+#, fuzzy
+msgid "%Jprevious definition of '%D' was here"
+msgstr "önceden burada tanımlı"
-#: c-decl.c:1225
-#, c-format
-msgid "prototype for `%s' follows"
-msgstr "`%s' için prototip izleniyor"
+#: c-decl.c:908
+#, fuzzy
+msgid "%Jprevious implicit declaration of '%D' was here"
+msgstr "`%s' örtük bildirilmiş"
-#: c-decl.c:1226 c-decl.c:1234 c-decl.c:1245
-msgid "non-prototype definition here"
-msgstr "buradaki tanımlama prototip değil"
+#: c-decl.c:910
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was here"
+msgstr "`%#D'nin önceki bildirimi ile burada çelişiyor"
-#: c-decl.c:1233
-#, c-format
-msgid "prototype for `%s' follows and number of arguments doesn't match"
-msgstr "`%s' için prototip izleniyor ve argüman sayısı eşleşmiyor"
+#: c-decl.c:944
+#, fuzzy
+msgid "%J'%D' redeclared as different kind of symbol"
+msgstr "`%#D' farklı bir sembol çeşidi olarak tekrar bildirilmiş"
-#: c-decl.c:1243
-#, c-format
-msgid "prototype for `%s' follows and argument %d doesn't match"
-msgstr "`%s' için prototip izleniyor ve %d. argüman eşleşmiyor"
+#: c-decl.c:949
+#, fuzzy
+msgid "%Jbuilt-in function '%D' declared as non-function"
+msgstr "yerleÅŸik iÅŸlev `%s' iÅŸlev olarak bildirilmemiÅŸ"
-#: c-decl.c:1261
-#, c-format
-msgid "`%s' declared inline after being called"
-msgstr "`%s' çağrıldıktan sonra `inline' bildirilmiş"
+#: c-decl.c:952 c-decl.c:1042
+#, fuzzy
+msgid "%Jshadowing built-in function '%D'"
+msgstr "yerleşik `%s' işlevinin gölgelenmesi"
-#: c-decl.c:1267
-#, c-format
-msgid "`%s' declared inline after its definition"
-msgstr "`%s' tanımlandıktan sonra `inline' bildirilmiş"
+#. If types don't match for a built-in, throw away the
+#. built-in. No point in calling locate_old_decl here, it
+#. won't print anything.
+#: c-decl.c:972
+#, fuzzy
+msgid "%Jconflicting types for built-in function '%D'"
+msgstr "yerleşik işlev `%s' için tür çelişkisi"
-#: c-decl.c:1274
-#, c-format
-msgid "static declaration for `%s' follows non-static"
+#: c-decl.c:996 c-decl.c:1004
+#, fuzzy
+msgid "%Jconflicting types for '%D'"
+msgstr "`%#D' için çelişen türler"
+
+#. allow OLDDECL to continue in use
+#: c-decl.c:1019
+#, fuzzy
+msgid "%Jredefinition of typedef '%D'"
+msgstr "`%s'in yeniden tanımlanması"
+
+#: c-decl.c:1055 c-decl.c:1119
+#, fuzzy
+msgid "%Jredefinition of '%D'"
+msgstr "`%s'in yeniden tanımlanması"
+
+#: c-decl.c:1086 c-decl.c:1136
+#, fuzzy
+msgid "%Jstatic declaration of '%D' follows non-static declaration"
msgstr "`%s' için 'static' bildirimi statik olmayan izliyor"
-#: c-decl.c:1282
-#, c-format
-msgid "non-static declaration for `%s' follows static"
+#: c-decl.c:1094 c-decl.c:1133
+#, fuzzy
+msgid "%Jnon-static declaration of '%D' follows static declaration"
msgstr "`%s' için 'static' olmayan bildirimi statik izliyor"
-#: c-decl.c:1289
-#, c-format
-msgid "const declaration for `%s' follows non-const"
-msgstr "`%s' için 'const' bildirimi sabit olmayan izliyor"
+#: c-decl.c:1106
+#, fuzzy
+msgid "%Jthread-local declaration of '%D' follows non-thread-local declaration"
+msgstr "`%s' yerel evreli bildirimi yerel olmayan evreli bildirim izliyor"
-#: c-decl.c:1296
-#, c-format
-msgid "type qualifiers for `%s' conflict with previous decl"
-msgstr "`%s' için tür niteleyicileri önceki bildirimle çelişiyor"
+#: c-decl.c:1109
+#, fuzzy
+msgid "%Jnon-thread-local declaration of '%D' follows thread-local declaration"
+msgstr "`%s' yerel olmayan evreli bildirimi yerel evreli bildirim izliyor"
-#: c-decl.c:1309
-#, c-format
-msgid "redundant redeclaration of `%s' in same scope"
-msgstr "`%s'in aynı alandaki anlamsız yeniden bildirimi"
+#: c-decl.c:1149
+#, fuzzy
+msgid "%Jextern declaration of '%D' follows declaration with no linkage"
+msgstr "`%s'in extern bildirimi genel olanıyla uyuşmuyor"
-#: c-decl.c:1619 java/decl.c:1102
-#, c-format
-msgid "declaration of `%s' shadows a parameter"
-msgstr "`%s' bildirimi bir parametreyi gölgeliyor"
+#: c-decl.c:1152
+#, fuzzy
+msgid "%Jdeclaration of '%D' with no linkage follows extern declaration"
+msgstr "`%F' bildirimi farklı olağandışılıkları yakalıyor"
-#: c-decl.c:1622 java/decl.c:1105
-#, c-format
-msgid "declaration of `%s' shadows a symbol from the parameter list"
-msgstr "`%s' bildirimi parametre listesinden bir sembolü gölgeliyor"
+#: c-decl.c:1155
+#, fuzzy
+msgid "%Jredeclaration of '%D' with no linkage"
+msgstr "%L ilintili `%#D' önceki bildirimi"
-#: c-decl.c:1643 cp/decl.c:4479
-msgid "a parameter"
-msgstr "bir parametre"
+#: c-decl.c:1169
+msgid "%Jredeclaration of '%D' with different visibility (old visibility preserved)"
+msgstr ""
-#: c-decl.c:1645 cp/decl.c:4496
-msgid "a previous local"
-msgstr "önceki yerel"
+#: c-decl.c:1180
+#, fuzzy
+msgid "%Jinline declaration of '%D' follows declaration with attribute noinline"
+msgstr "`%s' işlevinin önceki bildirimi 'inline' değil"
-#. XXX shadow warnings in outer-more namespaces
-#: c-decl.c:1649 cp/decl.c:4500
-msgid "a global declaration"
-msgstr "bir genel bildirim"
+#: c-decl.c:1187
+#, fuzzy
+msgid "%Jdeclaration of '%D' with attribute noinline follows inline declaration "
+msgstr "`for' döngüsü ilklendirme bildirimi içinde `static' değişken `%s' bildirimi"
-#: c-decl.c:1693
-#, c-format
-msgid "nested extern declaration of `%s'"
-msgstr "`%s'in iç içe 'extern' bildirimi"
+#: c-decl.c:1199
+#, fuzzy
+msgid "%J'%D' declared inline after being called"
+msgstr "`%s' çağrıldıktan sonra `inline' bildirilmiş"
-#: c-decl.c:1712 java/decl.c:1055
-#, c-format
-msgid "`%s' used prior to declaration"
-msgstr "`%s' bildirim öncesi kullanılmış"
+#: c-decl.c:1205
+#, fuzzy
+msgid "%J'%D' declared inline after its definition"
+msgstr "`%s' tanımlandıktan sonra `inline' bildirilmiş"
-#: c-decl.c:1726 c-decl.c:1901
-#, c-format
-msgid "`%s' was declared implicitly `extern' and later `static'"
-msgstr "`%s' önce örtük olarak `extern' sonra da `static' bildirilmiş"
+#: c-decl.c:1217
+#, fuzzy
+msgid "%Jvolatile declaration of '%D' follows non-volatile declaration"
+msgstr "`%s' yerel evreli bildirimi yerel olmayan evreli bildirim izliyor"
-#: c-decl.c:1829 cp/decl.c:4336
-msgid "type mismatch with previous external decl"
-msgstr "tür önceki external bildirimle çatışıyor"
+#: c-decl.c:1220
+#, fuzzy
+msgid "%Jnon-volatile declaration of '%D' follows volatile declaration"
+msgstr "`%s' yerel olmayan evreli bildirimi yerel evreli bildirim izliyor"
-#: c-decl.c:1830
-#, c-format
-msgid "previous external decl of `%s'"
-msgstr "`%s'in önceki 'external' bildirimi"
+#: c-decl.c:1227
+#, fuzzy
+msgid "%Jconst declaration of '%D' follows non-const declaration"
+msgstr "`%s' için 'const' bildirimi sabit olmayan izliyor"
-#: c-decl.c:1843
-msgid "type mismatch with previous implicit declaration"
-msgstr "tür önceki örtük bildirimle çelişiyor"
+#: c-decl.c:1230
+#, fuzzy
+msgid "%Jnon-const declaration of '%D' follows const declaration"
+msgstr "`%s' için 'static' olmayan bildirimi statik izliyor"
-#: c-decl.c:1845
-#, c-format
-msgid "previous implicit declaration of `%s'"
-msgstr "`%s' örtük bildirilmiş"
+#: c-decl.c:1246
+#, fuzzy
+msgid "%Jredundant redeclaration of '%D'"
+msgstr "aynı bağlamda `%D'nin yeniden bildirimi anlamsız"
-#: c-decl.c:1880
+#: c-decl.c:1690
#, c-format
-msgid "`%s' was previously implicitly declared to return `int'"
-msgstr "`%s' işlevinin geridönüş türü `int' türünde örtük bildirilmiş"
+msgid "nested extern declaration of `%s'"
+msgstr "`%s'in iç içe 'extern' bildirimi"
-#: c-decl.c:1905
-#, c-format
-msgid "`%s' was declared `extern' and later `static'"
-msgstr "`%s' önce `extern' sonra da `static' bildirilmiş"
+#: c-decl.c:1829 objc/objc-act.c:2534 objc/objc-act.c:6793
+#, fuzzy
+msgid "%Jprevious declaration of '%D'"
+msgstr "`%D'in önceki bildirimi"
-#: c-decl.c:1929
+#: c-decl.c:1870 c-decl.c:1872
#, c-format
-msgid "extern declaration of `%s' doesn't match global one"
-msgstr "`%s'in extern bildirimi genel olanıyla uyuşmuyor"
+msgid "implicit declaration of function `%s'"
+msgstr "`%s' işlevinin örtük bildirimi"
-#: c-decl.c:1971
+#: c-decl.c:1888
#, c-format
-msgid "`%s' locally external but globally static"
-msgstr "`%s' yerel olarak external ama genel olarak static"
+msgid "`%s' undeclared here (not in a function)"
+msgstr "`%s' burada bildirilmemiş (bir işlev içinde değil)"
-#: c-decl.c:2095
+#: c-decl.c:1894
#, c-format
-msgid "function `%s' was previously declared within a block"
-msgstr "`%s' işlevi evvelce bir blok içinde bildirilmiş"
+msgid "`%s' undeclared (first use in this function)"
+msgstr "`%s' bildirilmemiş (bu işlevde ilk kullanımı)"
-#: c-decl.c:2115 c-decl.c:2117
-#, c-format
-msgid "implicit declaration of function `%s'"
-msgstr "`%s' işlevinin örtük bildirimi"
+#: c-decl.c:1899
+msgid "(Each undeclared identifier is reported only once"
+msgstr "(Bildirilmemiş her tanıtıcı sadece bir kez raporlanır)"
+
+#: c-decl.c:1900
+msgid "for each function it appears in.)"
+msgstr "her işlev için içinde görünür.)"
-#: c-decl.c:2196
+#: c-decl.c:1953
#, c-format
msgid "label %s referenced outside of any function"
msgstr "%s etiketi işlev dışı referanslı"
-#: c-decl.c:2253
+#: c-decl.c:2000
#, c-format
msgid "duplicate label declaration `%s'"
msgstr "`%s' etiketi birden fazla bildirilmiÅŸ"
-#: c-decl.c:2256
-msgid "this is a previous declaration"
+#: c-decl.c:2001
+#, fuzzy
+msgid "%Jthis is a previous declaration"
msgstr "bu, önce bildirimdir"
-#: c-decl.c:2679
+#: c-decl.c:2036
+#, fuzzy
+msgid "%Hduplicate label `%D'"
+msgstr "yinlenmiÅŸ etiket `%D'"
+
+#: c-decl.c:2038
+#, fuzzy
+msgid "%J`%D' previously defined here"
+msgstr "`%#D' evvelce burada tanımlanmış"
+
+#: c-decl.c:2040
+#, fuzzy
+msgid "%J`%D' previously declared here"
+msgstr "`%#D' evvelce burada bildirilmiÅŸ"
+
+#: c-decl.c:2060
+msgid "%Htraditional C lacks a separate namespace for labels, identifier `%s' conflicts"
+msgstr ""
+
+#: c-decl.c:2131
+#, fuzzy
+msgid "%H`%s' defined as wrong kind of tag"
+msgstr "`%s' farklı bir sembol çeşidi olarak tekrar bildirilmiş"
+
+#: c-decl.c:2369
msgid "unnamed struct/union that defines no instances"
msgstr "ilk tanımı olmayan adsız struct/union"
-#: c-decl.c:2698
+#: c-decl.c:2388
msgid "useless keyword or type name in empty declaration"
msgstr "boş bildirimde kullanışsız tür ismi ya da anahtar sözcük"
-#: c-decl.c:2705
+#: c-decl.c:2395
msgid "two types specified in one empty declaration"
msgstr "bir boş bildirimde iki veri türü belirtilmiş"
-#: c-decl.c:2710 c-parse.y:753 c-parse.y:755 parse.y:766 parse.y:1853
-#: objc-parse.y:799 objc-parse.y:801 objc-parse.y:3042
+#: c-decl.c:2400 c-parse.y:735 c-parse.y:737 objc/objc-parse.y:776
+#: objc/objc-parse.y:778 objc/objc-parse.y:3016
msgid "empty declaration"
msgstr "boÅŸ bildirim"
-#: c-decl.c:2740
+#: c-decl.c:2426
msgid "ISO C90 does not support `static' or type qualifiers in parameter array declarators"
msgstr "ISO C90, parametre dizisi bildirimlerinde `static' ve tür niteleyicileri desteklemez"
-#: c-decl.c:2742
+#: c-decl.c:2428
msgid "ISO C90 does not support `[*]' array declarators"
msgstr "ISO C90 dizi bildirimlerinde `[*]' desteklemez"
-#: c-decl.c:2745
+#: c-decl.c:2431
msgid "GCC does not yet properly implement `[*]' array declarators"
msgstr "GCC `[*]' dizi bildirimlerini henüz tam desteklemiyor"
-#: c-decl.c:2764
+#: c-decl.c:2447
msgid "static or type qualifiers in abstract declarator"
msgstr "kuramsal bildirimde 'static' ya da tür niteleyiciler"
-#: c-decl.c:2838
-#, c-format
-msgid "`%s' is usually a function"
+#: c-decl.c:2517
+#, fuzzy
+msgid "%J'%D' is usually a function"
msgstr "`%s' çogu kez bir işlevdir"
-#: c-decl.c:2847
+#: c-decl.c:2526
#, c-format
msgid "typedef `%s' is initialized (use __typeof__ instead)"
msgstr "typedef `%s' ilkdeğerli (yerine __typeof__ kullanın)"
-#: c-decl.c:2853
+#: c-decl.c:2532
#, c-format
msgid "function `%s' is initialized like a variable"
msgstr "`%s' iÅŸlevi bir deÄŸiÅŸken gibi ilkdeÄŸerli"
#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
-#: c-decl.c:2860
+#: c-decl.c:2539
#, c-format
msgid "parameter `%s' is initialized"
msgstr "`%s' parametresi ilkdeÄŸerli"
-#: c-decl.c:2880 c-typeck.c:4895
+#: c-decl.c:2559 c-typeck.c:4220
msgid "variable-sized object may not be initialized"
msgstr "deÄŸiÅŸken-uzunluklu nesne ilkdeÄŸerli olmayabilir"
-#: c-decl.c:2886
+#: c-decl.c:2565
#, c-format
msgid "variable `%s' has initializer but incomplete type"
msgstr "`%s' değişkeni, veri türü tamamlanmayan bir ilkdeğere sahip"
-#: c-decl.c:2892
+#: c-decl.c:2571
#, c-format
msgid "elements of array `%s' have incomplete type"
msgstr "`%s' dizisinin elemanları tamamlanmayan veri türüne sahip"
-#: c-decl.c:2905
-#, c-format
-msgid "declaration of `%s' has `extern' and is initialized"
-msgstr "`%s' bildirimi hem `extern' hem de ilkdeÄŸerli"
-
-#: c-decl.c:2954 c-decl.c:5828 cp/decl.c:7760 cp/decl.c:14339
-#, c-format
-msgid "inline function `%s' given attribute noinline"
+#: c-decl.c:2640 c-decl.c:5426 cp/decl.c:3748 cp/decl.c:10156
+#, fuzzy
+msgid "%Jinline function '%D' given attribute noinline"
msgstr "özümleme işlevi `%s' özümlenmeyen özellikle verilmiş"
-#: c-decl.c:3028
-#, c-format
-msgid "initializer fails to determine size of `%s'"
-msgstr "`%s'in uzunluğunu belirlemede ilkdeğer başarısız"
+#: c-decl.c:2716
+#, fuzzy
+msgid "%Jinitializer fails to determine size of '%D'"
+msgstr "ilklendirici `%D' nin boyutunu saptayamıyor"
+
+#: c-decl.c:2721
+#, fuzzy
+msgid "%Jarray size missing in '%D'"
+msgstr "`%D' de dizi boyutu eksik"
+
+#: c-decl.c:2737
+#, fuzzy
+msgid "%Jzero or negative size array '%D'"
+msgstr "`%s' dizisi sıfır ya da negatif uzunlukta"
+
+#: c-decl.c:2765
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't known"
+msgstr "`%D' nin saklama uzunluÄŸu bilinmiyor"
-#: c-decl.c:3033
+#: c-decl.c:2775
+#, fuzzy
+msgid "%Jstorage size of '%D' isn't constant"
+msgstr "`%D' nin saklama geniÅŸliÄŸi sabit deÄŸil"
+
+#: c-decl.c:2858
+#, fuzzy
+msgid "%Jignoring asm-specifier for non-static local variable '%D'"
+msgstr "static olmayan yerel değişken `%s' için asm-belirteci yoksayılıyor"
+
+#: c-decl.c:2969
+msgid "ISO C forbids forward parameter declarations"
+msgstr "ISO C ileriye dönük parametre bildirimlerine izin vermez"
+
+#: c-decl.c:3151
+#, fuzzy
+msgid "<anonymous>"
+msgstr "<anonim %s>"
+
+#: c-decl.c:3160
#, c-format
-msgid "array size missing in `%s'"
-msgstr "`%s' içinde dizi boyu eksik"
+msgid "bit-field `%s' width not an integer constant"
+msgstr "`%s' bit alanı genişliği bir tamsayı sabit değil"
-#: c-decl.c:3049
+#: c-decl.c:3168
#, c-format
-msgid "zero or negative size array `%s'"
-msgstr "`%s' dizisi sıfır ya da negatif uzunlukta"
+msgid "negative width in bit-field `%s'"
+msgstr "`%s' bit alanının uzunluğu negatif"
-#: c-decl.c:3077
+#: c-decl.c:3173
#, c-format
-msgid "storage size of `%s' isn't known"
-msgstr "`%s'in saklama uzunluÄŸu bilinmiyor"
+msgid "zero width for bit-field `%s'"
+msgstr "bit alanı `%s' için sıfır genişlik"
-#: c-decl.c:3087
+#: c-decl.c:3183
#, c-format
-msgid "storage size of `%s' isn't constant"
-msgstr "`%s'in saklama uzunluÄŸu sabit deÄŸil"
+msgid "bit-field `%s' has invalid type"
+msgstr "`%s' bit alanı geçersiz tür içeriyor"
-#: c-decl.c:3147
+#: c-decl.c:3192
+#, fuzzy, c-format
+msgid "type of bit-field `%s' is a GCC extension"
+msgstr "satır yönergesinin tarzı bir GCC özelliğidir"
+
+#: c-decl.c:3201
#, c-format
-msgid "ignoring asm-specifier for non-static local variable `%s'"
-msgstr "static olmayan yerel değişken `%s' için asm-belirteci yoksayılıyor"
+msgid "width of `%s' exceeds its type"
+msgstr "`%s' in uzunluğu türünü aşıyor"
-#: c-decl.c:3247
+#: c-decl.c:3211
#, c-format
-msgid "ISO C forbids parameter `%s' shadowing typedef"
-msgstr "ISO C 'typedef' gölgeleyen `%s' parametresine izin vermez"
+msgid "`%s' is narrower than values of its type"
+msgstr "`%s'in uzunluğu türünün değerinden daha kısa"
-#: c-decl.c:3592 cp/decl.c:10880
+#: c-decl.c:3361 cp/decl.c:6778
msgid "`long long long' is too long for GCC"
msgstr "`long long long' GCC için çok uzun"
-#: c-decl.c:3597
+#: c-decl.c:3366
msgid "ISO C90 does not support `long long'"
msgstr "ISO C90 `long long'u desteklemez"
-#: c-decl.c:3606 c-decl.c:3609 cp/decl.c:10885
+#: c-decl.c:3375 c-decl.c:3378 cp/decl.c:6783
#, c-format
msgid "duplicate `%s'"
msgstr "`%s' yinelenmiÅŸ"
-#: c-decl.c:3619 cp/decl.c:10892
+#: c-decl.c:3388 cp/decl.c:6789
msgid "`__thread' before `extern'"
msgstr "`extern' öncesinde `__thread'"
-#: c-decl.c:3621 cp/decl.c:10894
+#: c-decl.c:3390 cp/decl.c:6791
msgid "`__thread' before `static'"
msgstr "`static' öncesinde `__thread'"
-#: c-decl.c:3629 cp/decl.c:10921
+#: c-decl.c:3398 cp/decl.c:6818
#, c-format
msgid "two or more data types in declaration of `%s'"
msgstr "`%s'in bildiriminde iki veya daha fazla veri türü"
-#: c-decl.c:3649 cp/decl.c:10926
+#: c-decl.c:3418 cp/decl.c:6823
#, c-format
msgid "`%s' fails to be a typedef or built in type"
msgstr "`%s' bir typedef veya yerleşik veri türü olarak hatalı"
-#: c-decl.c:3688
+#: c-decl.c:3457
#, c-format
msgid "type defaults to `int' in declaration of `%s'"
msgstr "`%s' bildiriminde tür `int'e öntanımlı"
-#: c-decl.c:3717
+#: c-decl.c:3486
#, c-format
msgid "both long and short specified for `%s'"
msgstr "`%s' için hem long hem de short belirtilmiş"
-#: c-decl.c:3721 cp/decl.c:11041
+#: c-decl.c:3490 cp/decl.c:6923
#, c-format
msgid "long or short specified with char for `%s'"
msgstr "`%s' için long veya short ile char türü değer belirtilmiş"
-#: c-decl.c:3728 cp/decl.c:11045
+#: c-decl.c:3497 cp/decl.c:6927
#, c-format
msgid "long or short specified with floating type for `%s'"
msgstr "`%s' için long veya short ile gerçel sayı değer belirtilmiş"
-#: c-decl.c:3731
+#: c-decl.c:3500
msgid "the only valid combination is `long double'"
msgstr "tek geçerli bileşim long double'dır"
-#: c-decl.c:3737
+#: c-decl.c:3506
#, c-format
msgid "both signed and unsigned specified for `%s'"
msgstr "`%s' için hem signed hem de unsigned belirtilmiş"
-#: c-decl.c:3739 cp/decl.c:11034
+#: c-decl.c:3508 cp/decl.c:6916
#, c-format
msgid "long, short, signed or unsigned invalid for `%s'"
msgstr "`%s' için long, short, signed ya da unsigned geçersiz"
-#: c-decl.c:3745 cp/decl.c:11054
+#: c-decl.c:3514 cp/decl.c:6936
#, c-format
msgid "long, short, signed or unsigned used invalidly for `%s'"
msgstr "`%s' için long, short, signed ya da unsigned geçersizce kullanılmış"
-#: c-decl.c:3763 cp/decl.c:11075
+#: c-decl.c:3532 cp/decl.c:6957
#, c-format
msgid "complex invalid for `%s'"
msgstr "`%s' için karmaşık geçersizlik"
-#: c-decl.c:3805
+#: c-decl.c:3574
msgid "ISO C90 does not support complex types"
msgstr "ISO C90 karmaşık türleri desteklemez"
-#: c-decl.c:3817
+#: c-decl.c:3586
msgid "ISO C does not support plain `complex' meaning `double complex'"
msgstr "ISO C salt `complex'i `double complex' anlamında desteklemez"
-#: c-decl.c:3823 c-decl.c:3835
+#: c-decl.c:3592 c-decl.c:3604
msgid "ISO C does not support complex integer types"
msgstr "ISO C karmaşık tamsayı türleri desteklemez"
-#: c-decl.c:3850 c-decl.c:4316 cp/decl.c:11688
+#: c-decl.c:3632 c-decl.c:4090 cp/decl.c:7549
msgid "duplicate `const'"
msgstr "`const' yinelenmiÅŸ"
-#: c-decl.c:3852 c-decl.c:4320 cp/decl.c:11692
+#: c-decl.c:3634 c-decl.c:4094 cp/decl.c:7553
msgid "duplicate `restrict'"
msgstr "`restrict' yinelenmiÅŸ"
-#: c-decl.c:3854 c-decl.c:4318 cp/decl.c:11690
+#: c-decl.c:3636 c-decl.c:4092 cp/decl.c:7551
msgid "duplicate `volatile'"
msgstr "`volatile' yinelenmiÅŸ"
-#: c-decl.c:3882 cp/decl.c:11238
+#: c-decl.c:3664 cp/decl.c:7120
#, c-format
msgid "multiple storage classes in declaration of `%s'"
msgstr "`%s' bildirimi içinde çok sayıda saklama sınıfı"
-#: c-decl.c:3892
+#: c-decl.c:3674
msgid "function definition declared `auto'"
msgstr "işlev tanımı `auto' olarak bildirildi"
-#: c-decl.c:3894
+#: c-decl.c:3676
msgid "function definition declared `register'"
msgstr "işlev tanımı `register' olarak bildirildi"
-#: c-decl.c:3896
+#: c-decl.c:3678
msgid "function definition declared `typedef'"
msgstr "işlev tanımı `typedef' olarak bildirildi"
-#: c-decl.c:3898
+#: c-decl.c:3680
msgid "function definition declared `__thread'"
msgstr "işlev tanımı `__thread' olarak bildirildi"
-#: c-decl.c:3911
+#: c-decl.c:3693
#, c-format
msgid "storage class specified for structure field `%s'"
msgstr "`%s' yapı alan için saklama sınıfı belirtildi"
-#: c-decl.c:3915 cp/decl.c:11285
+#: c-decl.c:3697 cp/decl.c:7165
#, c-format
msgid "storage class specified for parameter `%s'"
msgstr "`%s' parametresi için saklama sınıfı belirtildi"
-#: c-decl.c:3918 cp/decl.c:11287
+#: c-decl.c:3700 cp/decl.c:7167
msgid "storage class specified for typename"
msgstr "veri türü ismi için saklama sınıfı belirtildi"
-#: c-decl.c:3930 cp/decl.c:11302
+#: c-decl.c:3712 cp/decl.c:7182
#, c-format
msgid "`%s' initialized and declared `extern'"
msgstr "`%s' ilklendirildikten sonra `extern' olarak bildirilmiÅŸ"
-#: c-decl.c:3932 cp/decl.c:11305
+#: c-decl.c:3714 cp/decl.c:7185
#, c-format
msgid "`%s' has both `extern' and initializer"
msgstr "`%s' hem `extern' olarak bildirilmiş hem de öndeğer almış"
-#: c-decl.c:3937 cp/decl.c:11313
-#, c-format
-msgid "top-level declaration of `%s' specifies `auto'"
+#: c-decl.c:3719
+#, fuzzy, c-format
+msgid "file-scope declaration of `%s' specifies `auto'"
msgstr "`%s' için tepe-seviye bildirimi `auto' belirtiyor"
-#: c-decl.c:3942 cp/decl.c:11309
+#: c-decl.c:3724 cp/decl.c:7189
#, c-format
msgid "nested function `%s' declared `extern'"
msgstr "yuvalanmış işlev `%s' `extern' olarak bildirilmiş"
-#: c-decl.c:3948 cp/decl.c:11319
+#: c-decl.c:3730 cp/decl.c:7199
#, c-format
msgid "function-scope `%s' implicitly auto and declared `__thread'"
msgstr "`%s' işlevinin etki alanı dolaylı olarak auto ve `__thread' bildirimli"
@@ -1061,2735 +1150,2770 @@ msgstr "`%s' işlevinin etki alanı dolaylı olarak auto ve `__thread' bildiriml
#. Only the innermost declarator (making a parameter be of
#. array type which is converted to pointer type)
#. may have static or type qualifiers.
-#: c-decl.c:3987 c-decl.c:4188
+#: c-decl.c:3769 c-decl.c:3962
msgid "static or type qualifiers in non-parameter array declarator"
msgstr "parametresiz dizi bildirimi içinde 'static' veya tür niteleyiciler"
-#: c-decl.c:4031
+#: c-decl.c:3813
#, c-format
msgid "declaration of `%s' as array of voids"
msgstr "`%s' void'ler dizisi olarak bildirilmiÅŸ"
-#: c-decl.c:4037
+#: c-decl.c:3819
#, c-format
msgid "declaration of `%s' as array of functions"
msgstr "`%s' iÅŸlevler dizisi olarak bildirilmiÅŸ"
-#: c-decl.c:4042 c-decl.c:5332
+#: c-decl.c:3824
msgid "invalid use of structure with flexible array member"
msgstr "esnek dizi üyeli yapı kullanımı geçersiz"
-#: c-decl.c:4061
+#: c-decl.c:3843
#, c-format
msgid "size of array `%s' has non-integer type"
msgstr "`%s' dizisinin boyutu tamsayı değil"
-#: c-decl.c:4066
+#: c-decl.c:3848
#, c-format
msgid "ISO C forbids zero-size array `%s'"
msgstr "ISO C sıfır boyutlu `%s' dizisini yasaklar"
-#: c-decl.c:4073
+#: c-decl.c:3855
#, c-format
msgid "size of array `%s' is negative"
msgstr "`%s' dizisinin boyutu negatif"
-#: c-decl.c:4086
+#: c-decl.c:3868
#, c-format
msgid "ISO C90 forbids array `%s' whose size can't be evaluated"
msgstr "ISO C90 deÄŸerlendirilemeyen boyutlu `%s' dizisini yasaklar"
-#: c-decl.c:4089
+#: c-decl.c:3871
#, c-format
msgid "ISO C90 forbids variable-size array `%s'"
msgstr "ISO C90 deÄŸiÅŸken boyutlu `%s' dizisini yasaklar"
-#: c-decl.c:4119 c-decl.c:4342 cp/decl.c:11897
+#: c-decl.c:3901 c-decl.c:4116 cp/decl.c:7723
#, c-format
msgid "size of array `%s' is too large"
msgstr "`%s' dizisinin boyutu çok büyük"
-#: c-decl.c:4145
+#: c-decl.c:3927
msgid "ISO C90 does not support flexible array members"
msgstr "ISO C90 esnek dizi üyelerini desteklemez"
-#: c-decl.c:4155
+#: c-decl.c:3937
msgid "array type has incomplete element type"
msgstr "dizi türü içi boş öğe türü içeriyor"
-#: c-decl.c:4162 c-decl.c:4392
-msgid "ISO C forbids const or volatile function types"
-msgstr "ISO C 'const' ya da 'volatile' işlev türlerini yasaklar"
-
-#: c-decl.c:4208 cp/decl.c:11445
+#: c-decl.c:3982 cp/decl.c:7320
#, c-format
msgid "`%s' declared as function returning a function"
msgstr "`%s' bir işlevle sonuçlanan bir işlev olarak bildirilmiş"
-#: c-decl.c:4213 cp/decl.c:11450
+#: c-decl.c:3987 cp/decl.c:7325
#, c-format
msgid "`%s' declared as function returning an array"
msgstr "`%s' bir dizi ile sonuçlanan bir işlev olarak bildirilmiş"
-#: c-decl.c:4241
+#: c-decl.c:4015
msgid "ISO C forbids qualified void function return type"
msgstr "ISO C nitelemeli 'void' işlev dönüş türünü yasaklar"
-#: c-decl.c:4245
+#: c-decl.c:4019
msgid "type qualifiers ignored on function return type"
msgstr "tür niteleyicileri işlev dönen türünde yok sayıldı"
-#: c-decl.c:4274 c-decl.c:4357 c-decl.c:4481 c-decl.c:4573
+#: c-decl.c:4048 c-decl.c:4131 c-decl.c:4255 c-decl.c:4341
msgid "ISO C forbids qualified function types"
msgstr "ISO C nitelemeli işlev türlerini yasaklar"
-#: c-decl.c:4314 cp/decl.c:11684
+#: c-decl.c:4088 cp/decl.c:7545
msgid "invalid type modifier within pointer declarator"
msgstr "gösterici bildirimi içinde geçersiz tür değiştirici"
-#: c-decl.c:4412 cp/decl.c:12182
+#: c-decl.c:4166
+msgid "ISO C forbids const or volatile function types"
+msgstr "ISO C 'const' ya da 'volatile' işlev türlerini yasaklar"
+
+#: c-decl.c:4186 cp/decl.c:8005
#, c-format
msgid "variable or field `%s' declared void"
msgstr "`%s' değişkeni ya da alanı void olarak bildirilmiş"
-#: c-decl.c:4445
+#: c-decl.c:4219
msgid "attributes in parameter array declarator ignored"
msgstr "parametre dizisi bildirimindeki özellikler yoksayıldı"
-#: c-decl.c:4470
+#: c-decl.c:4244
msgid "invalid type modifier within array declarator"
msgstr "dizi bildirimi içinde geçersiz tür değiştirici"
-#: c-decl.c:4515
+#: c-decl.c:4289
#, c-format
msgid "field `%s' declared as a function"
msgstr "`%s' alanı bir işlev olarak bildirilmiş"
-#: c-decl.c:4521
+#: c-decl.c:4295
#, c-format
msgid "field `%s' has incomplete type"
msgstr "`%s' alanı tamamlanmamış türde"
-#: c-decl.c:4553 c-decl.c:4555 c-decl.c:4557 c-decl.c:4564
+#: c-decl.c:4321 c-decl.c:4323 c-decl.c:4325 c-decl.c:4332
#, c-format
msgid "invalid storage class for function `%s'"
msgstr "`%s' işlevi için geçersiz saklama sınıfı"
-#: c-decl.c:4579
+#: c-decl.c:4347
msgid "`noreturn' function returns non-void value"
msgstr "`noreturn' iÅŸlevinin sonucu void deÄŸil"
-#: c-decl.c:4594
+#: c-decl.c:4362
msgid "cannot inline function `main'"
msgstr "`main' özümlenen işlev olamaz"
-#: c-decl.c:4649
-#, c-format
-msgid "variable `%s' declared `inline'"
+#: c-decl.c:4415
+#, fuzzy
+msgid "variable previously declared `static' redeclared `extern'"
+msgstr "`%s' değişkeni ya da alanı void olarak bildirilmiş"
+
+#: c-decl.c:4424
+#, fuzzy
+msgid "%Jvariable '%D' declared `inline'"
msgstr "deÄŸiÅŸken `%s' `inline' bildirilmiÅŸ"
#. A mere warning is sure to result in improper semantics
#. at runtime. Don't bother to allow this to compile.
-#: c-decl.c:4677 cp/decl.c:9951
+#: c-decl.c:4452 cp/decl.c:5877
msgid "thread-local storage not supported for this target"
msgstr "bu hedefte yerel evreli saklama desteklenmiyor"
-#: c-decl.c:4732 c-decl.c:5880
+#: c-decl.c:4513 c-decl.c:5470
msgid "function declaration isn't a prototype"
msgstr "iÅŸlev bildirimi bir prototip deÄŸil"
-#: c-decl.c:4738
+#: c-decl.c:4519
msgid "parameter names (without types) in function declaration"
msgstr "işlev bildiriminde (türleri belirtmeksizin) parametre isimleri"
-#: c-decl.c:4770 c-decl.c:6250
+#: c-decl.c:4547
#, c-format
msgid "parameter `%s' has incomplete type"
msgstr "`%s' parametresi tamamlanmamış türde"
-#: c-decl.c:4773
+#: c-decl.c:4550
msgid "parameter has incomplete type"
msgstr "parametre tamamlanmamış türde"
-#: c-decl.c:4794
-#, c-format
-msgid "parameter `%s' points to incomplete type"
-msgstr "parametre `%s' içi boş türü gösteriyor"
+#: c-decl.c:4599
+#, fuzzy
+msgid "\"void\" as only parameter may not be qualified"
+msgstr "typedef ismi sınıf nitelemeli olmayabilir"
-#: c-decl.c:4797
-msgid "parameter points to incomplete type"
-msgstr "parametre içi boş türü gösteriyor"
+#: c-decl.c:4620
+#, fuzzy
+msgid "\"void\" must be the only parameter"
+msgstr "1. parametrede kip uyumsuzluÄŸu"
-#: c-decl.c:4862
-#, c-format
-msgid "parameter `%s' has just a forward declaration"
+#: c-decl.c:4637
+#, fuzzy
+msgid "%Jparameter \"%D\" has just a forward declaration"
msgstr "`%s' parametresi tam bir ilerletme bildirimi"
-#: c-decl.c:4903
-msgid "`void' in parameter list must be the entire list"
-msgstr "parametre listesindeki void listenin tamamı olmalıydı"
-
-#: c-decl.c:4934
-#, c-format
-msgid "`struct %s' declared inside parameter list"
+#. The first %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4665
+#, fuzzy, c-format
+msgid "\"%s %s\" declared inside parameter list"
msgstr "`struct %s' parametre listesinin içinde bildirilmiş"
-#: c-decl.c:4937
-#, c-format
-msgid "`union %s' declared inside parameter list"
-msgstr "`union %s' parametre listesi içinde bildirilmiş"
-
-#: c-decl.c:4940
-#, c-format
-msgid "`enum %s' declared inside parameter list"
-msgstr "`enum %s' parametre listesi içinde bildirilmiş"
-
-#: c-decl.c:4947
-msgid "anonymous struct declared inside parameter list"
+#. The %s will be one of 'struct', 'union', or 'enum'.
+#: c-decl.c:4669
+#, fuzzy, c-format
+msgid "anonymous %s declared inside parameter list"
msgstr "anonim yapı parametre listesinin içinde bildirilmiş"
-#: c-decl.c:4949
-msgid "anonymous union declared inside parameter list"
-msgstr "anonim birleşik yapı parametre listesinin içinde bildirilmiş"
-
-#: c-decl.c:4951
-msgid "anonymous enum declared inside parameter list"
-msgstr "anonim enum parametre listesinin içinde bildirilmiş"
-
-#: c-decl.c:4955
+#: c-decl.c:4673
msgid "its scope is only this definition or declaration, which is probably not what you want"
msgstr "O sadece bu tanımın ya da bildirimin kapsamında, sizin istediğiniz bu olmayabilir"
-#: c-decl.c:5032
+#: c-decl.c:4758
#, c-format
msgid "redefinition of `union %s'"
msgstr "`union %s' tekrar tanımlanmış"
-#: c-decl.c:5034
+#: c-decl.c:4760
#, c-format
msgid "redefinition of `struct %s'"
msgstr "`struct %s' tekrar tanımlanmış"
-#: c-decl.c:5105 cp/decl.c:7532
+#: c-decl.c:4828 cp/decl.c:3521
msgid "declaration does not declare anything"
msgstr "bildirim hiçbir şey bildirmiyor"
-#: c-decl.c:5169 c-decl.c:5172
+#: c-decl.c:4873 c-decl.c:4889
+#, fuzzy
+msgid "%Jduplicate member '%D'"
+msgstr "yinelenmiş üye `%D'"
+
+#: c-decl.c:4923 c-decl.c:4926
#, c-format
msgid "%s defined inside parms"
msgstr "%s parametrelerin içinde tanımlanmış"
-#: c-decl.c:5170 c-decl.c:5173 c-decl.c:5184
+#: c-decl.c:4924 c-decl.c:4927 c-decl.c:4938
msgid "union"
msgstr "birleşik yapı"
-#: c-decl.c:5170 c-decl.c:5173
+#: c-decl.c:4924 c-decl.c:4927
msgid "structure"
msgstr "yapı"
-#: c-decl.c:5183
+#: c-decl.c:4937
#, c-format
msgid "%s has no %s"
msgstr "%s %s içermiyor"
-#: c-decl.c:5184
+#: c-decl.c:4938
msgid "struct"
msgstr "yapı"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "named members"
msgstr "isimli üyeleri yok"
-#: c-decl.c:5185
+#: c-decl.c:4939
msgid "members"
msgstr "üyeleri yok"
-#: c-decl.c:5224
+#: c-decl.c:4978
#, c-format
msgid "nested redefinition of `%s'"
msgstr "`%s' içiçe yeniden tanımlanmış"
-#: c-decl.c:5237
-#, c-format
-msgid "bit-field `%s' width not an integer constant"
-msgstr "`%s' bit alanı genişliği bir tamsayı sabit değil"
-
-#: c-decl.c:5248
-#, c-format
-msgid "bit-field `%s' has invalid type"
-msgstr "`%s' bit alanı geçersiz tür içeriyor"
-
-#: c-decl.c:5260
-#, c-format
-msgid "bit-field `%s' type invalid in ISO C"
-msgstr "`%s' bit alanının türü ISO C'de geçersiz"
-
-#: c-decl.c:5271
-#, c-format
-msgid "negative width in bit-field `%s'"
-msgstr "`%s' bit alanının uzunluğu negatif"
-
-#: c-decl.c:5273
-#, c-format
-msgid "width of `%s' exceeds its type"
-msgstr "`%s' in uzunluğu türünü aşıyor"
-
-#: c-decl.c:5275
-#, c-format
-msgid "zero width for bit-field `%s'"
-msgstr "bit alanı `%s' için sıfır genişlik"
-
-#: c-decl.c:5289
-#, c-format
-msgid "`%s' is narrower than values of its type"
-msgstr "`%s'in uzunluğu türünün değerinden daha kısa"
-
-#: c-decl.c:5323
-msgid "flexible array member in union"
+#: c-decl.c:4998
+#, fuzzy
+msgid "%Jflexible array member in union"
msgstr "esnek dizi birleşik yapının üyesi olamaz"
-#: c-decl.c:5325
-msgid "flexible array member not at end of struct"
+#: c-decl.c:5000
+#, fuzzy
+msgid "%Jflexible array member not at end of struct"
msgstr "esnek dizi yapının son üyesi değil"
-#: c-decl.c:5327
-msgid "flexible array member in otherwise empty struct"
+#: c-decl.c:5002
+#, fuzzy
+msgid "%Jflexible array member in otherwise empty struct"
msgstr "esnek dizi üstelik boş yapının üyesi"
-#: c-decl.c:5357
-#, c-format
-msgid "duplicate member `%s'"
-msgstr "üye `%s' yinelenmiş"
+#: c-decl.c:5007
+#, fuzzy
+msgid "%Jinvalid use of structure with flexible array member"
+msgstr "esnek dizi üyeli yapı kullanımı geçersiz"
-#: c-decl.c:5448
+#: c-decl.c:5102
msgid "union cannot be made transparent"
msgstr "birleşik yapı şeffaf olamaz"
#. This enum is a named one that has been declared already.
-#: c-decl.c:5558
+#: c-decl.c:5171
#, c-format
msgid "redeclaration of `enum %s'"
msgstr "`enum %s' yeniden bildirilmiÅŸ"
-#: c-decl.c:5592
+#: c-decl.c:5202
msgid "enum defined inside parms"
msgstr "enum parametrelerin içinde tanımlanmış"
-#: c-decl.c:5625
+#: c-decl.c:5235
msgid "enumeration values exceed range of largest integer"
msgstr "sembolik sabit grubunun değerleri en büyük tamsayının kapsamını aşıyor."
-#: c-decl.c:5734
+#: c-decl.c:5338
#, c-format
msgid "enumerator value for `%s' not integer constant"
msgstr "`%s' için değer tamsayı sabit değil"
-#: c-decl.c:5747
+#: c-decl.c:5351
msgid "overflow in enumeration values"
msgstr "sembolik sabit listesi deÄŸerlerinde taÅŸma"
-#: c-decl.c:5752
+#: c-decl.c:5356
msgid "ISO C restricts enumerator values to range of `int'"
msgstr "ISO C sembolik sabit grubunun değerlerini `int' kapsamında sınırlar"
-#: c-decl.c:5834
+#: c-decl.c:5432
msgid "return type is an incomplete type"
msgstr "dönüş türü, bir içi boş tür"
-#: c-decl.c:5842
+#: c-decl.c:5440
msgid "return type defaults to `int'"
msgstr "dönen tür `int'e öntanımlı"
-#: c-decl.c:5889
-#, c-format
-msgid "no previous prototype for `%s'"
+#: c-decl.c:5476
+#, fuzzy
+msgid "%Jno previous prototype for '%D'"
msgstr "`%s' için önceki prototip yok"
-#: c-decl.c:5896
-#, c-format
-msgid "`%s' was used with no prototype before its definition"
+#: c-decl.c:5482
+#, fuzzy
+msgid "%J'%D' was used with no prototype before its definition"
msgstr "`%s' tanımlanmadan önce prototipsiz kullanılmış"
-#: c-decl.c:5902
-#, c-format
-msgid "no previous declaration for `%s'"
+#: c-decl.c:5489
+#, fuzzy
+msgid "%Jno previous declaration for '%D'"
msgstr "`%s' için önce bildirim yok"
-#: c-decl.c:5909
-#, c-format
-msgid "`%s' was used with no declaration before its definition"
+#: c-decl.c:5495
+#, fuzzy
+msgid "%J`%D' was used with no declaration before its definition"
msgstr "`%s' tanımından önce bildirimsiz kullanıldı"
-#: c-decl.c:5933 c-decl.c:6486
-#, c-format
-msgid "return type of `%s' is not `int'"
+#: c-decl.c:5531 c-decl.c:6037
+#, fuzzy
+msgid "%Jreturn type of '%D' is not `int'"
msgstr "`%s' için dönen tür `int' değil"
-#: c-decl.c:5949
-#, c-format
-msgid "first argument of `%s' should be `int'"
+#: c-decl.c:5546
+#, fuzzy
+msgid "%Jfirst argument of '%D' should be `int'"
msgstr "`%s' için ilk argüman `int' olmalıydı"
-#: c-decl.c:5958
-#, c-format
-msgid "second argument of `%s' should be `char **'"
+#: c-decl.c:5555
+#, fuzzy
+msgid "%Jsecond argument of '%D' should be 'char **'"
msgstr "`%s' için ikinci argüman `char **' olmalıydı"
-#: c-decl.c:5967
-#, c-format
-msgid "third argument of `%s' should probably be `char **'"
+#: c-decl.c:5564
+#, fuzzy
+msgid "%Jthird argument of '%D' should probably be 'char **'"
msgstr "`%s' için üçüncü argüman mümkünse `char **' olmalıydı"
-#: c-decl.c:5976
-#, c-format
-msgid "`%s' takes only zero or two arguments"
+#: c-decl.c:5574
+#, fuzzy
+msgid "%J'%D' takes only zero or two arguments"
msgstr "`%s' ya iki argüman alır ya da hiç almaz"
-#: c-decl.c:5979
-#, c-format
-msgid "`%s' is normally a non-static function"
+#: c-decl.c:5577
+#, fuzzy
+msgid "%J'%D' is normally a non-static function"
msgstr "`%s' normalde bir static olmayan iÅŸlev"
-#: c-decl.c:6077
-msgid "parm types given both in parmlist and separately"
-msgstr "parametre türleri hem liste içinde hem de ayrıca verilmiş"
+#: c-decl.c:5633
+msgid "%Jold-style parameter declarations in prototyped function definition"
+msgstr ""
-#: c-decl.c:6098
-msgid "parameter name omitted"
+#: c-decl.c:5647
+#, fuzzy
+msgid "%Jparameter name omitted"
msgstr "parametre ismi atlandı"
-#: c-decl.c:6102 c-decl.c:6204
-#, c-format
-msgid "parameter `%s' declared void"
-msgstr "parametre `%s' void bildirimli"
-
-#: c-decl.c:6178
-msgid "parameter name missing from parameter list"
+#: c-decl.c:5722
+#, fuzzy
+msgid "%Jparameter name missing from parameter list"
msgstr "parametre ismi parametre listesinde yok"
-#: c-decl.c:6197
-#, c-format
-msgid "multiple parameters named `%s'"
+#: c-decl.c:5732
+#, fuzzy
+msgid "%J\"%D\" declared as a non-parameter"
+msgstr "`%D' bir kardeÅŸ olarak bildirilmiÅŸ"
+
+#: c-decl.c:5737
+#, fuzzy
+msgid "%Jmultiple parameters named \"%D\""
msgstr "`%s' isimli çok sayıda parametre"
-#: c-decl.c:6219 c-decl.c:6221
-#, c-format
-msgid "type of `%s' defaults to `int'"
+#: c-decl.c:5745
+#, fuzzy
+msgid "%Jparameter \"%D\" declared void"
+msgstr "parametre `%D' void olarak bildirilmiÅŸ"
+
+#: c-decl.c:5760 c-decl.c:5762
+#, fuzzy
+msgid "%Jtype of \"%D\" defaults to \"int\""
msgstr "`%s' türü öntanımlı olarak `int'"
-#: c-decl.c:6257
-#, c-format
-msgid "declaration for parameter `%s' but no such parameter"
+#: c-decl.c:5776
+#, fuzzy
+msgid "%Jparameter \"%D\" has incomplete type"
+msgstr "parametre tamamlanmamış türde"
+
+#: c-decl.c:5782
+#, fuzzy
+msgid "%Jdeclaration for parameter \"%D\" but no such parameter"
msgstr "`%s' parametre bildirimi olmayan bir parametre için yapılmış"
-#: c-decl.c:6305
+#: c-decl.c:5834
msgid "number of arguments doesn't match prototype"
msgstr "argümanların sayısı prototiple uyumsuz"
-#: c-decl.c:6335
-#, c-format
-msgid "promoted argument `%s' doesn't match prototype"
+#: c-decl.c:5835 c-decl.c:5866 c-decl.c:5873
+#, fuzzy
+msgid "%Hprototype declaration"
+msgstr "boÅŸ bildirim"
+
+#: c-decl.c:5864
+#, fuzzy
+msgid "promoted argument \"%D\" doesn't match prototype"
msgstr "yükseltgenmiş argüman `%s', prototiple uyumsuz"
-#: c-decl.c:6345
-#, c-format
-msgid "argument `%s' doesn't match prototype"
+#: c-decl.c:5872
+#, fuzzy
+msgid "argument \"%D\" doesn't match prototype"
msgstr "`%s' argümanı prototipte belirtilen türle uyumsuz"
-#: c-decl.c:6518 cp/decl.c:15049
+#: c-decl.c:6069 cp/decl.c:10876
msgid "no return statement in function returning non-void"
msgstr "void olmayan dönüşlü işlevde `return' deyimi yok"
-#: c-decl.c:6525
+#: c-decl.c:6076
msgid "this function may return with or without a value"
msgstr "bu işlev bir değerle dönebileceği gibi dönmeyebilir de"
-#: c-decl.c:6729
-#, c-format
-msgid "size of return value of `%s' is %u bytes"
-msgstr "`%s' dönüş değerinin uzunluğu %u bayt"
-
-#: c-decl.c:6733
-#, c-format
-msgid "size of return value of `%s' is larger than %d bytes"
-msgstr "`%s' için dönen değerin genişliği %d bayttan büyük"
-
#. If we get here, declarations have been used in a for loop without
#. the C99 for loop scope. This doesn't make much sense, so don't
#. allow it.
-#: c-decl.c:6791
-msgid "`for' loop initial declaration used outside C99 mode"
+#: c-decl.c:6175
+#, fuzzy
+msgid "'for' loop initial declaration used outside C99 mode"
msgstr "`for' döngüsünün başlangıç bildirimi C99 kipinin dışında kullanılmış"
-#: c-decl.c:6815
-#, c-format
-msgid "`struct %s' declared in `for' loop initial declaration"
+#: c-decl.c:6199
+#, fuzzy, c-format
+msgid "'struct %s' declared in 'for' loop initial declaration"
msgstr "`struct %s' `for' döngüsünün ilklendirme bildiriminde bildirilmiş"
-#: c-decl.c:6818
-#, c-format
-msgid "`union %s' declared in `for' loop initial declaration"
+#: c-decl.c:6202
+#, fuzzy, c-format
+msgid "'union %s' declared in 'for' loop initial declaration"
msgstr "`union %s' `for' döngüsünün ilklendirme bildiriminde bildirilmiş"
-#: c-decl.c:6821
-#, c-format
-msgid "`enum %s' declared in `for' loop initial declaration"
+#: c-decl.c:6205
+#, fuzzy, c-format
+msgid "'enum %s' declared in 'for' loop initial declaration"
msgstr "`enum %s' `for' döngüsünün ilklendirme bildiriminde bildirilmiş"
-#: c-decl.c:6829
-#, c-format
-msgid "declaration of non-variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6213
+#, fuzzy
+msgid "%Jdeclaration of non-variable '%D' in 'for' loop initial declaration"
msgstr "`for' döngüsü ilklendirme bildirimi içinde değişken olmayan `%s' bildirimi"
-#: c-decl.c:6831
-#, c-format
-msgid "declaration of static variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6216
+#, fuzzy
+msgid "%Jdeclaration of static variable '%D' in 'for' loop initial declaration"
msgstr "`for' döngüsü ilklendirme bildirimi içinde `static' değişken `%s' bildirimi"
-#: c-decl.c:6833
-#, c-format
-msgid "declaration of `extern' variable `%s' in `for' loop initial declaration"
+#: c-decl.c:6219
+#, fuzzy
+msgid "%Jdeclaration of 'extern' variable '%D' in 'for' loop initial declaration"
msgstr "`for' döngüsü ilklendirme bildirimi içinde `extern' değişken `%s' bildirimi"
-#: c-format.c:109 c-format.c:191
-msgid "format string arg not a string type"
-msgstr "biçim belirtecinin argümanı bir dizge değil"
-
-#: c-format.c:124
-msgid "args to be formatted is not '...'"
-msgstr "biçimlenecek argümanlar '...' değil"
+#: c-decl.c:6532
+#, fuzzy
+msgid "%Jredefinition of global '%D'"
+msgstr "`%s'in yeniden tanımlanması"
-#: c-format.c:133
-msgid "strftime formats cannot format arguments"
-msgstr "strftime biçimleri biçim argümanları olamaz"
+#: c-decl.c:6533
+#, fuzzy
+msgid "%J'%D' previously defined here"
+msgstr "`%#D' evvelce burada tanımlanmış"
-#: c-format.c:168 c-format.c:270
+#: c-format.c:94 c-format.c:210
msgid "format string has invalid operand number"
msgstr "biçim dizgesi geçersiz sayıda terim içeriyor"
-#: c-format.c:202
+#: c-format.c:111
msgid "function does not return string type"
msgstr "işlev dizge veri türü ile dönmüyor"
-#: c-format.c:233
+#: c-format.c:140
+msgid "format string arg not a string type"
+msgstr "biçim belirtecinin argümanı bir dizge değil"
+
+#: c-format.c:190
msgid "unrecognized format specifier"
msgstr "anlaşılmayan biçim belirteci"
-#: c-format.c:246
+#: c-format.c:203
#, c-format
msgid "`%s' is an unrecognized format function type"
msgstr "`%s' biçim işlevi türü bilinmiyor"
-#: c-format.c:280
+#: c-format.c:216
+#, fuzzy
+msgid "'...' has invalid operand number"
+msgstr "biçim dizgesi geçersiz sayıda terim içeriyor"
+
+#: c-format.c:224
msgid "format string arg follows the args to be formatted"
msgstr "biçim dizgesi argümanını biçimlendirilecek argümanlar izler"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "` ' flag"
msgstr "` ' bayrağı"
-#: c-format.c:601
+#: c-format.c:565 c-format.c:589
msgid "the ` ' printf flag"
msgstr "` ' printf bayrağı"
-#: c-format.c:602 c-format.c:673
+#: c-format.c:566 c-format.c:590 c-format.c:627 c-format.c:683
msgid "`+' flag"
msgstr "`+' bayrağı"
-#: c-format.c:602
+#: c-format.c:566 c-format.c:590 c-format.c:627
msgid "the `+' printf flag"
msgstr "`+' printf bayrağı"
-#: c-format.c:603 c-format.c:649
+#: c-format.c:567 c-format.c:591 c-format.c:628 c-format.c:659
msgid "`#' flag"
msgstr "`#' bayrağı"
-#: c-format.c:603
+#: c-format.c:567 c-format.c:591 c-format.c:628
msgid "the `#' printf flag"
msgstr "`#' printf bayrağı"
-#: c-format.c:604 c-format.c:647
+#: c-format.c:568 c-format.c:592 c-format.c:657
msgid "`0' flag"
msgstr "`0' bayrağı"
-#: c-format.c:604
+#: c-format.c:568 c-format.c:592
msgid "the `0' printf flag"
msgstr "`0' printf bayrağı"
-#: c-format.c:605 c-format.c:646 c-format.c:676
+#: c-format.c:569 c-format.c:593 c-format.c:656 c-format.c:686
msgid "`-' flag"
msgstr "`-' bayrağı"
-#: c-format.c:605
+#: c-format.c:569 c-format.c:593
msgid "the `-' printf flag"
msgstr "`-' printf bayrağı"
-#: c-format.c:606 c-format.c:630
+#: c-format.c:570 c-format.c:640
msgid "`'' flag"
msgstr "`'' bayrağı"
-#: c-format.c:606
+#: c-format.c:570
msgid "the `'' printf flag"
msgstr "`'' printf bayrağı"
-#: c-format.c:607 c-format.c:631
+#: c-format.c:571 c-format.c:641
msgid "`I' flag"
msgstr "`I' bayrağı"
-#: c-format.c:607
+#: c-format.c:571
msgid "the `I' printf flag"
msgstr "`I' printf bayrağı"
-#: c-format.c:608 c-format.c:628 c-format.c:650 c-format.c:677 c-format.c:1702
+#: c-format.c:572 c-format.c:594 c-format.c:638 c-format.c:660 c-format.c:687
+#: c-format.c:1802
msgid "field width"
msgstr "alan uzunluÄŸu"
-#: c-format.c:608
+#: c-format.c:572 c-format.c:594
msgid "field width in printf format"
msgstr "alan genişliği printf biçiminde"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision"
msgstr "duyarlık"
-#: c-format.c:609
+#: c-format.c:573 c-format.c:595 c-format.c:618 c-format.c:629
msgid "precision in printf format"
msgstr "hassasiyet printf biçiminde"
-#: c-format.c:610 c-format.c:629 c-format.c:680
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630 c-format.c:639
+#: c-format.c:690
msgid "length modifier"
msgstr "uzunluk deÄŸiÅŸtirici"
-#: c-format.c:610
+#: c-format.c:574 c-format.c:596 c-format.c:619 c-format.c:630
msgid "length modifier in printf format"
msgstr "uzunluk değiştirici printf biçiminde"
-#: c-format.c:626
+#: c-format.c:636
msgid "assignment suppression"
msgstr "atama engelleme"
-#: c-format.c:626
+#: c-format.c:636
msgid "the assignment suppression scanf feature"
msgstr "atama engelleyen scanf özelliği"
-#: c-format.c:627
+#: c-format.c:637
msgid "`a' flag"
msgstr "`a' bayrağı"
-#: c-format.c:627
+#: c-format.c:637
msgid "the `a' scanf flag"
msgstr "`a' scanf bayrağı"
-#: c-format.c:628
+#: c-format.c:638
msgid "field width in scanf format"
msgstr "scanf biçiminde alan genişliği"
-#: c-format.c:629
+#: c-format.c:639
msgid "length modifier in scanf format"
msgstr "scanf biçiminde uzunluk değiştirici"
-#: c-format.c:630
+#: c-format.c:640
msgid "the `'' scanf flag"
msgstr "`'' scanf bayrağı"
-#: c-format.c:631
+#: c-format.c:641
msgid "the `I' scanf flag"
msgstr "`I' scanf bayrağı"
-#: c-format.c:645
+#: c-format.c:655
msgid "`_' flag"
msgstr "`_' bayrağı"
-#: c-format.c:645
+#: c-format.c:655
msgid "the `_' strftime flag"
msgstr "`_' strftime bayrağı"
-#: c-format.c:646
+#: c-format.c:656
msgid "the `-' strftime flag"
msgstr "`-' strftime bayrağı"
-#: c-format.c:647
+#: c-format.c:657
msgid "the `0' strftime flag"
msgstr "`0' strftime bayrağı"
-#: c-format.c:648 c-format.c:672
+#: c-format.c:658 c-format.c:682
msgid "`^' flag"
msgstr "`^' bayrağı"
-#: c-format.c:648
+#: c-format.c:658
msgid "the `^' strftime flag"
msgstr "`^' strftime bayrağı"
-#: c-format.c:649
+#: c-format.c:659
msgid "the `#' strftime flag"
msgstr "`#' strftime bayrağı"
-#: c-format.c:650
+#: c-format.c:660
msgid "field width in strftime format"
msgstr "strftime biçiminde alan genişliği"
-#: c-format.c:651
+#: c-format.c:661
msgid "`E' modifier"
msgstr "`E' deÄŸiÅŸtirici"
-#: c-format.c:651
+#: c-format.c:661
msgid "the `E' strftime modifier"
msgstr "`E' strftime deÄŸiÅŸtirici"
-#: c-format.c:652
+#: c-format.c:662
msgid "`O' modifier"
msgstr "`O' deÄŸiÅŸtirici"
-#: c-format.c:652
+#: c-format.c:662
msgid "the `O' strftime modifier"
msgstr "`O' strftime deÄŸiÅŸtirici"
-#: c-format.c:653
+#: c-format.c:663
msgid "the `O' modifier"
msgstr "`O' deÄŸiÅŸtirici"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character"
msgstr "dolgu karakteri"
-#: c-format.c:671
+#: c-format.c:681
msgid "fill character in strfmon format"
msgstr "strfmon biçiminde dolgu karakteri"
-#: c-format.c:672
+#: c-format.c:682
msgid "the `^' strfmon flag"
msgstr "`^' strfmon bayrağı"
-#: c-format.c:673
+#: c-format.c:683
msgid "the `+' strfmon flag"
msgstr "`+' strfmon bayrağı"
-#: c-format.c:674
+#: c-format.c:684
msgid "`(' flag"
msgstr "`(' bayrağı"
-#: c-format.c:674
+#: c-format.c:684
msgid "the `(' strfmon flag"
msgstr "`(' strfmon bayrağı"
-#: c-format.c:675
+#: c-format.c:685
msgid "`!' flag"
msgstr "`!' bayrağı"
-#: c-format.c:675
+#: c-format.c:685
msgid "the `!' strfmon flag"
msgstr "`!' strfmon bayrağı"
-#: c-format.c:676
+#: c-format.c:686
msgid "the `-' strfmon flag"
msgstr "`-' strfmon bayrağı"
-#: c-format.c:677
+#: c-format.c:687
msgid "field width in strfmon format"
msgstr "strfmon biçiminde alan genişliği"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision"
msgstr "sol taraf duyarlığı"
-#: c-format.c:678
+#: c-format.c:688
msgid "left precision in strfmon format"
msgstr "strfmon biçiminde sol taraf hassasiyeti"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision"
msgstr "sağ taraf duyarlığı"
-#: c-format.c:679
+#: c-format.c:689
msgid "right precision in strfmon format"
msgstr "strfmon biçiminde sağ taraf hassasiyeti"
-#: c-format.c:680
+#: c-format.c:690
msgid "length modifier in strfmon format"
msgstr "strfmon biçiminde uzunluk değiştirici"
-#: c-format.c:983
+#: c-format.c:1107
#, c-format
msgid "function might be possible candidate for `%s' format attribute"
msgstr "işlev, `%s' biçim özniteliği için olası aday olabilir"
-#: c-format.c:1107 c-format.c:1128 c-format.c:2112
+#: c-format.c:1223 c-format.c:1244 c-format.c:2212
msgid "missing $ operand number in format"
msgstr "biçim dizgesi içinde $ teriminde numara eksik"
-#: c-format.c:1138
+#: c-format.c:1254
#, c-format
msgid "%s does not support %%n$ operand number formats"
msgstr "%s %%n$ terim numaralama biçimlerini desteklemez"
-#: c-format.c:1145
+#: c-format.c:1261
msgid "operand number out of range in format"
msgstr "biçim dizgesi içindeki terim numarası kapsamdışı"
-#: c-format.c:1168
+#: c-format.c:1284
#, c-format
msgid "format argument %d used more than once in %s format"
msgstr "%d. biçim argümanı %s biçiminde birden fazla kullanılmış"
-#: c-format.c:1218
+#: c-format.c:1331
#, c-format
msgid "format argument %d unused before used argument %d in $-style format"
msgstr "%d. biçim argümanı $ tarzı biçimde %d. argümandan önce kullanılmamış"
-#: c-format.c:1322
+#: c-format.c:1429
msgid "format not a string literal, format string not checked"
msgstr "biçim bir dizge sabit değil, biçim dizgesi denetlenmedi"
-#: c-format.c:1336
+#: c-format.c:1443
msgid "format not a string literal and no format arguments"
msgstr "biçim bir dizge sabit değil ve biçim argümanları yok"
-#: c-format.c:1338
+#: c-format.c:1445
msgid "format not a string literal, argument types not checked"
msgstr "biçim bir dizge sabit değil, argüman türleri denetlenmedi"
-#: c-format.c:1351
+#: c-format.c:1458
msgid "too many arguments for format"
msgstr "biçim için argüman sayısı çok fazla"
-#: c-format.c:1354
+#: c-format.c:1461
msgid "unused arguments in $-style format"
msgstr "$ tarzı biçimde kullanılmamış argümanlar"
-#: c-format.c:1357
+#: c-format.c:1464
#, c-format
msgid "zero-length %s format string"
msgstr "sıfır uzunluklu %s biçim dizgesi"
-#: c-format.c:1361
+#: c-format.c:1468
msgid "format is a wide character string"
msgstr "biçim bir geniş karakter dizgesi"
-#: c-format.c:1364
+#: c-format.c:1471
msgid "unterminated format string"
msgstr "sonlandırılmamış biçim dizgesi"
-#: c-format.c:1581
+#: c-format.c:1681
msgid "embedded `\\0' in format"
msgstr "biçim içinde gömülü `\\0'"
-#: c-format.c:1596
+#: c-format.c:1696
#, c-format
msgid "spurious trailing `%%' in format"
msgstr "biçim sahte `%%' ile başlıyor"
-#: c-format.c:1635 c-format.c:1872
+#: c-format.c:1735 c-format.c:1972
#, c-format
msgid "repeated %s in format"
msgstr "biçim içinde %s yinelenmiş"
-#: c-format.c:1648
+#: c-format.c:1748
msgid "missing fill character at end of strfmon format"
msgstr "strfmon biçiminin sonunda dolgu karakteri eksik"
-#: c-format.c:1687 c-format.c:1786 c-format.c:2066 c-format.c:2119
+#: c-format.c:1787 c-format.c:1886 c-format.c:2166 c-format.c:2219
msgid "too few arguments for format"
msgstr "biçim için argüman sayısı yetersiz"
-#: c-format.c:1728
+#: c-format.c:1828
#, c-format
msgid "zero width in %s format"
msgstr "%s biçiminde sıfır uzunluk"
-#: c-format.c:1747
+#: c-format.c:1847
#, c-format
msgid "empty left precision in %s format"
msgstr "%s biçiminde sol taraf hassasiyeti boş"
-#: c-format.c:1801
+#: c-format.c:1901
msgid "field precision"
msgstr "alan duyarlığı"
-#: c-format.c:1816
+#: c-format.c:1916
#, c-format
msgid "empty precision in %s format"
msgstr "%s biçiminde boş hassasiyet"
-#: c-format.c:1856
+#: c-format.c:1956
#, c-format
msgid "%s does not support the `%s' %s length modifier"
msgstr "%s `%s' %s uzunluk deÄŸiÅŸtiricisini desteklemiyor"
-#: c-format.c:1906
+#: c-format.c:2006
msgid "conversion lacks type at end of format"
msgstr "dönüşüm, biçim sonunda türden yoksun"
-#: c-format.c:1917
+#: c-format.c:2017
#, c-format
msgid "unknown conversion type character `%c' in format"
msgstr "biçimdeki dönüşüm türü karakteri `%c' bilinmiyor"
-#: c-format.c:1920
+#: c-format.c:2020
#, c-format
msgid "unknown conversion type character 0x%x in format"
msgstr "biçimdeki dönüşüm türü karakteri 0x%x bilinmiyor"
-#: c-format.c:1927
+#: c-format.c:2027
#, c-format
msgid "%s does not support the `%%%c' %s format"
msgstr "%s `%%%c' %s biçimini desteklemiyor"
-#: c-format.c:1943
+#: c-format.c:2043
#, c-format
msgid "%s used with `%%%c' %s format"
msgstr "%s `%%%c' %s biçimi ile kullanılmış"
-#: c-format.c:1952
+#: c-format.c:2052
#, c-format
msgid "%s does not support %s"
msgstr "%s %s desteÄŸi vermiyor"
-#: c-format.c:1961
+#: c-format.c:2061
#, c-format
msgid "%s does not support %s with the `%%%c' %s format"
msgstr "%s %s'i `%%%c' %s biçimiyle desteklemiyor"
-#: c-format.c:1994
+#: c-format.c:2094
#, c-format
msgid "%s ignored with %s and `%%%c' %s format"
msgstr "%s, %s' ve `%%%c' %s biçimiyle yoksayıldı"
-#: c-format.c:1998
+#: c-format.c:2098
#, c-format
msgid "%s ignored with %s in %s format"
msgstr "%s, %s' ile %s biçiminde yoksayıldı"
-#: c-format.c:2004
+#: c-format.c:2104
#, c-format
msgid "use of %s and %s together with `%%%c' %s format"
msgstr "%s ve %s birlikte `%%%c' %s biçimiyle kullanımı"
-#: c-format.c:2008
+#: c-format.c:2108
#, c-format
msgid "use of %s and %s together in %s format"
msgstr "%s ve %s birlikte %s biçiminde kullanımı"
-#: c-format.c:2027
+#: c-format.c:2127
#, c-format
msgid "`%%%c' yields only last 2 digits of year in some locales"
msgstr "`%%%c' bazı yerellerde yılın son iki hanesini alır"
-#: c-format.c:2030
+#: c-format.c:2130
#, c-format
msgid "`%%%c' yields only last 2 digits of year"
msgstr "`%%%c' yılın son iki hanesini alır"
#. The end of the format string was reached.
-#: c-format.c:2046
+#: c-format.c:2146
#, c-format
msgid "no closing `]' for `%%[' format"
msgstr "`%%[' biçimi için kapanan `]' yok"
-#: c-format.c:2059
+#: c-format.c:2159
#, c-format
msgid "use of `%s' length modifier with `%c' type character"
msgstr "`%s' uzunluk değiştiricsinin `%c' tür karakteri ile kullanımı"
-#: c-format.c:2080
+#: c-format.c:2180
#, c-format
msgid "%s does not support the `%%%s%c' %s format"
msgstr "%s, `%%%s%c' %s biçimini desteklemiyor"
-#: c-format.c:2095
+#: c-format.c:2195
msgid "operand number specified with suppressed assignment"
msgstr "terim numarası engellenmiş atama ile belirtilmiş"
-#: c-format.c:2097
+#: c-format.c:2197
msgid "operand number specified for format taking no argument"
msgstr "terim numarası argüman almayan biçim için belirtilmiş"
-#: c-format.c:2211
+#: c-format.c:2309
#, c-format
msgid "writing through null pointer (arg %d)"
msgstr "boş gösterici vasıtasıyla yazma (%d. arg)"
-#: c-format.c:2220
+#: c-format.c:2318
#, c-format
msgid "reading through null pointer (arg %d)"
msgstr "boş gösterici vasıtasıyla okuma (%d. arg)"
-#: c-format.c:2240
+#: c-format.c:2338
#, c-format
msgid "writing into constant object (arg %d)"
msgstr "sabit nesne içine yazma (%d. arg)"
-#: c-format.c:2250
+#: c-format.c:2348
#, c-format
msgid "extra type qualifiers in format argument (arg %d)"
msgstr "biçim argümanında (%d. arg) fazladan tür niteleyiciler"
-#: c-format.c:2257
+#: c-format.c:2355
#, c-format
msgid "format argument is not a pointer (arg %d)"
msgstr "biçim argümanı bir gösterici değil (%d. arg)"
-#: c-format.c:2259
+#: c-format.c:2357
#, c-format
msgid "format argument is not a pointer to a pointer (arg %d)"
msgstr "biçim argümanı bir göstericinin göstericisi değil (%d. arg)"
-#: c-format.c:2330
+#: c-format.c:2433
msgid "pointer"
msgstr "gösterici"
-#: c-format.c:2332
+#: c-format.c:2435
msgid "different type"
msgstr "farklı türde"
-#: c-format.c:2353
+#: c-format.c:2456
#, c-format
msgid "%s is not type %s (arg %d)"
msgstr "%s %s türünde değil (%d. arg)"
-#: c-format.c:2356
+#: c-format.c:2459
#, c-format
msgid "%s format, %s arg (arg %d)"
msgstr "%s biçimi için %s argüman (%d. arg)"
-#: c-lex.c:153
-msgid "YYDEBUG not defined"
-msgstr "YYDEBUG tanımlı değil"
+#: c-format.c:2704
+msgid "args to be formatted is not '...'"
+msgstr "biçimlenecek argümanlar '...' değil"
+
+#: c-format.c:2713
+msgid "strftime formats cannot format arguments"
+msgstr "strftime biçimleri biçim argümanları olamaz"
+
+#: c-incpath.c:68
+#, c-format
+msgid "ignoring duplicate directory \"%s\"\n"
+msgstr "tekrar belirtilen \"%s\" dizini yoksayılıyor\n"
+
+#: c-incpath.c:71
+#, c-format
+msgid " as it is a non-system directory that duplicates a system directory\n"
+msgstr " tekrarlayan bir sistem dizini olmayan dizin olarak deÄŸiÅŸtiriliyor\n"
+
+#: c-incpath.c:75
+#, c-format
+msgid "ignoring nonexistent directory \"%s\"\n"
+msgstr " olmayan \"%s\" dizini yoksayılıyor\n"
-#: c-lex.c:293
+#: c-incpath.c:273
+#, c-format
+msgid "#include \"...\" search starts here:\n"
+msgstr "#include \"...\" araması buradan başlıyor:\n"
+
+#: c-incpath.c:277
+#, c-format
+msgid "#include <...> search starts here:\n"
+msgstr "#include <...> araması buradan başlıyor:\n"
+
+#: c-incpath.c:282
+#, c-format
+msgid "End of search list.\n"
+msgstr "Arama listesi sonu.\n"
+
+#: c-lex.c:240
msgid "badly nested C headers from preprocessor"
msgstr "önişlemciden C başlıkları hatalı yuvalanmış"
-#: c-lex.c:336
+#: c-lex.c:281
#, c-format
msgid "ignoring #pragma %s %s"
msgstr "#pragma %s %s yoksalıyor"
-#: c-lex.c:386
-#, c-format
-msgid "universal-character-name '\\U%08x' not valid in identifier"
-msgstr "evrensel karakter ismi '\\U%08x' tanıtıcı içinde geçerli değil"
+#. ... or not.
+#: c-lex.c:385
+#, fuzzy
+msgid "%Hstray '@' in program"
+msgstr "programda serseri '%c'"
-#: c-lex.c:632
+#: c-lex.c:393
#, c-format
-msgid "universal-character-name '\\u%04x' not valid in identifier"
-msgstr "evrensel karakter ismi '\\U%04x' tanıtıcı içinde geçerli değil"
+msgid "missing terminating %c character"
+msgstr "%c sonlandırma karakteri eksik"
-#: c-lex.c:695
+#: c-lex.c:395
#, c-format
msgid "stray '%c' in program"
msgstr "programda serseri '%c'"
-#: c-lex.c:697
+#: c-lex.c:397
#, c-format
msgid "stray '\\%o' in program"
msgstr "programda serseri '\\%o'"
-#: c-lex.c:854
+#: c-lex.c:535
msgid "this decimal constant is unsigned only in ISO C90"
msgstr "bu ondalık sabit sadece ISO C90'da unsigned'dır"
-#: c-lex.c:857
+#: c-lex.c:538
msgid "this decimal constant would be unsigned in ISO C90"
msgstr "bu ondalık sabit sadece ISO C90'da unsigned olmalıydı"
-#: c-lex.c:873
+#: c-lex.c:554
#, c-format
msgid "integer constant is too large for \"%s\" type"
msgstr "tamsayı sabit \"%s\" olarak oldukça büyük"
-#: c-lex.c:941
+#: c-lex.c:620
#, c-format
msgid "floating constant exceeds range of \"%s\""
msgstr "gerçel sayı \"%s\" kapsamını aşıyor"
-#: c-lex.c:977 cpplex.c:330 cpplex.c:668 cpplex.c:1942
-msgid "ignoring invalid multibyte character"
-msgstr "geçersiz çok baytlı karakter yoksayılıyor"
+#: c-lex.c:696
+#, fuzzy
+msgid "traditional C rejects string constant concatenation"
+msgstr "geleneksel C dizgelerin birleÅŸtirilmesine izin vermez"
-#: c-opts.c:355
-#, c-format
-msgid "missing argument to \"-%s\""
-msgstr "\"-%s\" seçeneğinin argümanı eksik"
+#: c-objc-common.c:82
+msgid "%Jfunction '%F' can never be inlined because it is supressed using -fno-inline"
+msgstr ""
-#: c-opts.c:359
-#, c-format
-msgid "no class name specified with \"-%s\""
+#: c-objc-common.c:92
+msgid "%Jfunction '%F' can never be inlined because it might not be bound within this unit of translation"
+msgstr ""
+
+#: c-objc-common.c:100
+msgid "%Jfunction '%F' can never be inlined because it uses attributes conflicting with inlining"
+msgstr ""
+
+#: c-objc-common.c:115
+msgid "%Jfunction '%F' can never be inlined because it has pending sizes"
+msgstr ""
+
+#: c-objc-common.c:128
+msgid "%Jnested function '%F' can never be inlined because it has possibly saved pending sizes"
+msgstr ""
+
+#: c-opts.c:141
+#, fuzzy, c-format
+msgid "no class name specified with \"%s\""
msgstr "\"-%s ile sınıf ismi belirtilmemiş"
-#: c-opts.c:366
-#, c-format
-msgid "missing filename after \"-%s\""
-msgstr "\"-%s\" den sonra dosyaismi yok"
+#: c-opts.c:145
+#, fuzzy, c-format
+msgid "assertion missing after \"%s\""
+msgstr "%s den sonra olumlama eksik"
-#: c-opts.c:371
-#, c-format
-msgid "missing target after \"-%s\""
+#: c-opts.c:150
+#, fuzzy, c-format
+msgid "macro name missing after \"%s\""
+msgstr "%s den sonra makro ismi eksik"
+
+#: c-opts.c:157
+#, fuzzy, c-format
+msgid "missing path after \"%s\""
msgstr "\"-%s\" den sonra hedef eksik"
-#: c-opts.c:505
-#, c-format
-msgid "options array incorrectly sorted: %s is before %s"
-msgstr "seçenekler dizisi yanlış sıralı: %s, %s den önce"
+#: c-opts.c:166
+#, fuzzy, c-format
+msgid "missing filename after \"%s\""
+msgstr "\"-%s\" den sonra dosyaismi yok"
-#: c-opts.c:550
-#, c-format
-msgid "too many filenames given. Type %s --help for usage"
-msgstr "çok fazla dosyaismi verildi. Kullanım bilgileri için %s --help yazınız"
+#: c-opts.c:171
+#, fuzzy, c-format
+msgid "missing makefile target after \"%s\""
+msgstr "\"-%s\" den sonra hedef eksik"
-#: c-opts.c:937
-msgid "-Wno-strict-prototypes is not supported in C++"
-msgstr "C++ da -Wno-strict-prototypes desteklenmiyor"
+#: c-opts.c:291
+msgid "-I- specified twice"
+msgstr "-I- iki kere belirtilmiÅŸ"
-#: c-opts.c:1017
+#: c-opts.c:692
#, c-format
msgid "switch \"%s\" is no longer supported"
msgstr "switch \"%s\" artık desteklenmiyor"
-#: c-opts.c:1033
-#, c-format
-msgid "switch \"%s\" is deprecated, please see documentation for details"
-msgstr "switch \"%s\" eski kullanım, lütfen ayrıntılar için belgelere bakınız"
-
-#: c-opts.c:1153
-msgid "-fhandle-exceptions has been renamed to -fexceptions (and is now on by default)"
+#: c-opts.c:816
+#, fuzzy
+msgid "-fhandle-exceptions has been renamed -fexceptions (and is now on by default)"
msgstr "-fhandle-exceptions'ın -fexceptions olarak ismi değiştirilmişti (ve şimdi öntanımlı olarak böyle)"
-#: c-opts.c:1273
+#: c-opts.c:982
msgid "output filename specified twice"
msgstr "çıktı dosyasının ismi iki kere belirtilmiş"
-#: c-opts.c:1387
+#: c-opts.c:1106
msgid "-Wformat-y2k ignored without -Wformat"
msgstr "-Wformat-y2k -Wformat'sız yoksayıldı"
-#: c-opts.c:1389
+#: c-opts.c:1108
msgid "-Wformat-extra-args ignored without -Wformat"
msgstr "-Wformat-extra-args -Wformat'sız yoksayıldı"
-#: c-opts.c:1391
+#: c-opts.c:1110
msgid "-Wformat-zero-length ignored without -Wformat"
msgstr "-Wformat-zero-length -Wformat'sız yoksayıldı"
-#: c-opts.c:1393
+#: c-opts.c:1112
msgid "-Wformat-nonliteral ignored without -Wformat"
msgstr "-Wformat-nonliteral -Wformat'sız yoksayıldı"
-#: c-opts.c:1395
+#: c-opts.c:1114
msgid "-Wformat-security ignored without -Wformat"
msgstr "-Wformat-security -Wformat'sız yoksayıldı"
-#: c-opts.c:1397
+#: c-opts.c:1116
msgid "-Wmissing-format-attribute ignored without -Wformat"
msgstr "-Wmissing-format-attribute -Wformat'sız yoksayıldı"
-#: c-opts.c:1419
-#, c-format
-msgid "opening output file %s"
+#: c-opts.c:1130
+#, fuzzy, c-format
+msgid "opening output file %s: %m"
msgstr "çıktı dosyası `%s' açılıyor"
-#: c-opts.c:1474
+#: c-opts.c:1135
#, c-format
-msgid "opening dependency file %s"
+msgid "too many filenames given. Type %s --help for usage"
+msgstr "çok fazla dosyaismi verildi. Kullanım bilgileri için %s --help yazınız"
+
+#: c-opts.c:1213
+msgid "YYDEBUG not defined"
+msgstr "YYDEBUG tanımlı değil"
+
+#: c-opts.c:1260
+#, fuzzy, c-format
+msgid "opening dependency file %s: %m"
msgstr "bağımlılık dosyası %s açılıyor"
-#: c-opts.c:1484
-#, c-format
-msgid "closing dependency file %s"
+#: c-opts.c:1270
+#, fuzzy, c-format
+msgid "closing dependency file %s: %m"
msgstr "bağımlılık dosyası %s kapatılıyor"
-#: c-opts.c:1487
-#, c-format
-msgid "when writing output to %s"
+#: c-opts.c:1273
+#, fuzzy, c-format
+msgid "when writing output to %s: %m"
msgstr "çıktı %s e yazılırken"
-#: c-opts.c:1567
+#: c-opts.c:1343
msgid "to generate dependencies you must specify either -M or -MM"
msgstr "bağımlılıkları üretmek için ya -M ya da -MM belirtmelisiniz"
-#: c-opts.c:1715
-#, c-format
-msgid "\"-%c%s%s\" is valid for %s but not for %s"
-msgstr "\"-%c%s%s\", %s için geçerli ama %s için değil"
-
-#. To keep the lines from getting too long for some compilers, limit
-#. to about 500 characters (6 lines) per chunk.
-#: c-opts.c:1726
-msgid ""
-"Switches:\n"
-" -include <file> Include the contents of <file> before other files\n"
-" -imacros <file> Accept definition of macros in <file>\n"
-" -iprefix <path> Specify <path> as a prefix for next two options\n"
-" -iwithprefix <dir> Add <dir> to the end of the system include path\n"
-" -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
-" -isystem <dir> Add <dir> to the start of the system include path\n"
-msgstr ""
-"Seçenekler:\n"
-" -include DOSYA Diğer dosyalardan önce DOSYA içeriği içerilir\n"
-" -imacros DOSYA DOSYAdaki makrolar kabul edilir\n"
-" -iprefix DOSYAYOLU Aşağıdaki iki seçenek için önek olarak DOSYAYOLU\n"
-" -iwithprefix DÄ°ZÄ°N Sistem include dosya yolunun sonuna DÄ°ZÄ°N eklenir\n"
-" -iwithprefixbefore DÄ°ZÄ°N Ana include dosya yolunun sonuna DÄ°ZÄ°N eklenir\n"
-" -isystem DİZİN Sistem include dosya yolunun başına DİZİN eklenir\n"
-
-#: c-opts.c:1735
-msgid ""
-" -idirafter <dir> Add <dir> to the end of the system include path\n"
-" -I <dir> Add <dir> to the end of the main include path\n"
-" -I- Fine-grained include path control; see info docs\n"
-" -nostdinc Do not search system include directories\n"
-" (dirs specified with -isystem will still be used)\n"
-" -nostdinc++ Do not search system include directories for C++\n"
-" -o <file> Put output into <file>\n"
-msgstr ""
-" -idirafter DÄ°ZÄ°N Sistem include dosya yolunun sonuna DÄ°ZÄ°N eklenir\n"
-" -I DÄ°ZÄ°N Ana include dosya yolunun sonuna DÄ°ZÄ°N eklenir\n"
-" -I- Ä°nceden inceye include dosya yolu denetimi;\n"
-" Daha fazla bilgi için belgelere bakınız\n"
-" -nostdinc Sistem include dizinleri için arama yapılmaz\n"
-" (-isystem ile belirtilen dizinler kullanılacak)\n"
-" -nostdinc++ C++ için sistem include dizinleri araması yapılmaz\n"
-" -o DOSYA Çıktı DOSYAya yazılır\n"
-
-#: c-opts.c:1744
-msgid ""
-" -trigraphs Support ISO C trigraphs\n"
-" -std=<std name> Specify the conformance standard; one of:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Inhibit warning messages\n"
-" -W[no-]trigraphs Warn if trigraphs are encountered\n"
-" -W[no-]comment{s} Warn if one comment starts inside another\n"
-msgstr ""
-" -trigraphs ISO C üçlü harfleri desteklenir\n"
-" -std=<std ismi> Aşağıdaki uyum standartlarından biri belirtilir:\n"
-" gnu89, gnu99, c89, c99, iso9899:1990,\n"
-" iso9899:199409, iso9899:1999, c++98\n"
-" -w Uyarı iletileri engellenir\n"
-" -W[no-]trigraphs Üçlü harfler saptandığında uyarır\n"
-" -W[no-]comment{s} İç içe açıklamalar için uyarı verilir\n"
-
-#: c-opts.c:1753
-msgid ""
-" -W[no-]traditional Warn about features not present in traditional C\n"
-" -W[no-]undef Warn if an undefined macro is used by #if\n"
-" -W[no-]import Warn about the use of the #import directive\n"
-msgstr ""
-" -W[no-]traditional Geleneksel C'de bulunmayan özellikler için uyarır\n"
-" -W[no-]undef undef'li bir makro #if ile atanmışsa uyarır\n"
-" -W[no-]import #import yönergesi kullanımı hakkında uyarır\n"
+#: c-opts.c:1403
+msgid "<built-in>"
+msgstr "<yerleÅŸik>"
-#: c-opts.c:1758
-msgid ""
-" -W[no-]error Treat all warnings as errors\n"
-" -W[no-]system-headers Do not suppress warnings from system headers\n"
-" -W[no-]all Enable most preprocessor warnings\n"
-msgstr ""
-" -W[no-]error Tüm uyarılar hata olarak değerlendirilir\n"
-" -W[no-]system-headers Sistem başlık dosyalarından kaynaklanan uyarılar\n"
-" engellenmez\n"
-" -W[no-]all Tüm önişlemci uyarıları verilir\n"
+#: c-opts.c:1418
+msgid "<command line>"
+msgstr "<komut satırı>"
-#: c-opts.c:1763
-msgid ""
-" -M Generate make dependencies\n"
-" -MM As -M, but ignore system header files\n"
-" -MD Generate make dependencies and compile\n"
-" -MMD As -MD, but ignore system header files\n"
-" -MF <file> Write dependency output to the given file\n"
-" -MG Treat missing header file as generated files\n"
-msgstr ""
-" -M make bağımlılıkları üretilir\n"
-" -MM sistem başlık dosyaları yoksayılarak -M uygulanır\n"
-" -MD make bağımlılıkları üretilir ve derleme yapılır\n"
-" -MMD sistem başlık dosyaları yoksayılarak -MD uygulanır\n"
-" -MF DOSYA Bağımlılıklar DOSYAya yazılır\n"
-" -MG Eksik başlık dosyası üretilen dosyalar olarak\n"
-" deÄŸerlendirilir\n"
-
-#: c-opts.c:1771
-msgid ""
-" -MP\t\t\t Generate phony targets for all headers\n"
-" -MQ <target> Add a MAKE-quoted target\n"
-" -MT <target> Add an unquoted target\n"
+#: c-opts.c:1502
+msgid "too late for # directive to set debug directory"
msgstr ""
-" -MP Tüm başlık dosyaları için sahte hedefler üretilir\n"
-" -MQ HEDEF Bir MAKE-tırnaklı HEDEF eklenir\n"
-" -MT HEDEF Bir MAKE-tırnaksız HEDEF eklenir\n"
-
-#: c-opts.c:1776
-msgid ""
-" -D<macro> Define a <macro> with string '1' as its value\n"
-" -D<macro>=<val> Define a <macro> with <val> as its value\n"
-" -A<question>=<answer> Assert the <answer> to <question>\n"
-" -A-<question>=<answer> Disable the <answer> to <question>\n"
-" -U<macro> Undefine <macro> \n"
-" -v Display the version number\n"
-msgstr ""
-" -D<makro> Değeri '1' dizgesi olan bir <makro> atanır\n"
-" -D<makro>=<değer> Değeri <değer> olan bir <makro> atanır\n"
-" -A<soru>=<cevap> <soru> ya <cevap> olumlanır\n"
-" -A-<soru>=<cevap> <soru> <cevap> etkisiz kılınır\n"
-" -U<makro> <macro> undef yapılır \n"
-" -v Sürüm numarası gösterilir\n"
-
-#: c-opts.c:1784
-msgid ""
-" -H Print the name of header files as they are used\n"
-" -C Do not discard comments\n"
-" -dM Display a list of macro definitions active at end\n"
-" -dD Preserve macro definitions in output\n"
-" -dN As -dD except that only the names are preserved\n"
-" -dI Include #include directives in the output\n"
-msgstr ""
-" -H Kullanılan başlık dosyası isimlerini gösterir\n"
-" -C Açıklamalar iptal edilmez\n"
-" -dM Sonuçta etkin olan makro tanımlarını listeler\n"
-" -dD Çıktıda makro tanımlarıda içerilir\n"
-" -dN -dD gibi ancak sadece isimler dışında\n"
-" -dI Çıktıda #include yönergeleri içerilir\n"
-
-#: c-opts.c:1792
-msgid ""
-" -f[no-]preprocessed Treat the input file as already preprocessed\n"
-" -ftabstop=<number> Distance between tab stops for column reporting\n"
-" -P Do not generate #line directives\n"
-" -remap Remap file names when including files\n"
-" --help Display this information\n"
-msgstr ""
-" -f[no-]preprocessed Girdi dosyası önişlenmiş olarak değerlendirilir\n"
-" -ftabstop=SAYI Sütunlu raporlamada sekme uzunluğu\n"
-" -P #line yönergeleri üretilmez\n"
-" -remap Dosyalar içerilirken dosya adları yeniden eşlenir\n"
-" --help Bu yardım iletisi gösterilir\n"
#. Like YYERROR but do call yyerror.
-#: c-parse.y:55 parse.y:48 objc-parse.y:55
+#: c-parse.y:54 c-parse.c:5381 gengtype-yacc.c:1514 java/parse-scan.c:3063
+#: java/parse.c:6067 objc/objc-parse.y:54 objc/objc-parse.c:6644
msgid "syntax error"
msgstr "sözdizimi hatası"
-#: /usr/share/bison/bison.simple:179
+#: c-parse.c:2118 gengtype-yacc.c:545 java/parse-scan.c:1932 java/parse.c:2875
+#: objc/objc-parse.c:2717
msgid "syntax error: cannot back up"
msgstr "sözdizimi hatası: yedeklenemiyor"
-#: c-parse.y:325 objc-parse.y:346
+#: c-parse.y:320 objc/objc-parse.y:344
msgid "ISO C forbids an empty source file"
msgstr "ISO C boş kaynak dosyalarına izin vermez"
-#: c-parse.y:366 c-typeck.c:6916 objc-parse.y:388
+#: c-parse.y:349 c-typeck.c:6217 objc/objc-parse.y:374
msgid "argument of `asm' is not a constant string"
msgstr "`asm' argümanı bir sabit dizge değil"
-#: c-parse.y:374 objc-parse.y:396
+#: c-parse.y:357 objc/objc-parse.y:382
msgid "ISO C forbids data definition with no type or storage class"
msgstr "ISO C tür veya saklama sınıfı belirtilmeyen veri tanımına izin vermez"
-#: c-parse.y:376 objc-parse.y:398
+#: c-parse.y:359 objc/objc-parse.y:384
msgid "data definition has no type or storage class"
msgstr "veri tanımı tür ya da saklama sınıfı içermiyor"
-#: c-parse.y:389 objc-parse.y:411
+#: c-parse.y:372 objc/objc-parse.y:397
msgid "ISO C does not allow extra `;' outside of a function"
msgstr "ISO C işlevler dışında tek başına `;'e izin vermez"
-#: c-parse.y:449 cppexp.c:1312
+#: c-parse.y:429 cppexp.c:1253
msgid "traditional C rejects the unary plus operator"
msgstr "geleneksel C tekil artı işlecini dışlar"
-#: c-parse.y:496 objc-parse.y:518
+#: c-parse.y:476 objc/objc-parse.y:501
msgid "`sizeof' applied to a bit-field"
msgstr "'sizeof' bir bit-alanına uygulandı"
-#: c-parse.y:583 objc-parse.y:605
+#: c-parse.y:563 objc/objc-parse.y:588
msgid "ISO C forbids omitting the middle term of a ?: expression"
msgstr "ISO C ?: ifadesinin orta teriminin atlanmasına izin vermez"
-#: c-parse.y:632 objc-parse.y:654
+#: c-parse.y:611 objc/objc-parse.y:636
msgid "ISO C89 forbids compound literals"
msgstr "ISO C89 bileşik sayılara izin vermez"
-#: c-parse.y:646 objc-parse.y:668
+#: c-parse.y:625 objc/objc-parse.y:650
msgid "ISO C forbids braced-groups within expressions"
msgstr "ISO C ifadelerde parantezli gruplamalara izin vermez"
-#: c-parse.y:677 objc-parse.y:699
+#: c-parse.y:653 objc/objc-parse.y:678
msgid "first argument to __builtin_choose_expr not a constant"
msgstr "__builtin_choose_expr işlevine aktarılan ilk argüman bir sabit değil"
-#: c-parse.y:721 objc-parse.y:767
+#: c-parse.y:696 objc/objc-parse.y:737
msgid "traditional C rejects ISO C style function definitions"
msgstr "geleneksel C, ISO C tarzı işlev tanımlarına izin vermez"
-#: c-parse.y:985 c-parse.y:991 c-parse.y:997 c-parse.y:1003 c-parse.y:1024
-#: c-parse.y:1030 c-parse.y:1036 c-parse.y:1042 c-parse.y:1075 c-parse.y:1081
-#: c-parse.y:1087 c-parse.y:1093 c-parse.y:1138 c-parse.y:1144 c-parse.y:1150
-#: c-parse.y:1156 parse.y:1933 parse.y:1940 parse.y:1975 objc-parse.y:1031
-#: objc-parse.y:1037 objc-parse.y:1043 objc-parse.y:1049 objc-parse.y:1070
-#: objc-parse.y:1076 objc-parse.y:1082 objc-parse.y:1088 objc-parse.y:1121
-#: objc-parse.y:1127 objc-parse.y:1133 objc-parse.y:1139 objc-parse.y:1184
-#: objc-parse.y:1190 objc-parse.y:1196 objc-parse.y:1202
+#: c-parse.y:699 c-parse.y:705 objc/objc-parse.y:740 objc/objc-parse.y:746
+#, fuzzy
+msgid "old-style parameter declaration"
+msgstr "parametre bildiriminde `::' kullanılamaz"
+
+#: c-parse.y:967 c-parse.y:973 c-parse.y:979 c-parse.y:985 c-parse.y:1006
+#: c-parse.y:1012 c-parse.y:1018 c-parse.y:1024 c-parse.y:1057 c-parse.y:1063
+#: c-parse.y:1069 c-parse.y:1075 c-parse.y:1120 c-parse.y:1126 c-parse.y:1132
+#: c-parse.y:1138 objc/objc-parse.y:1008 objc/objc-parse.y:1014
+#: objc/objc-parse.y:1020 objc/objc-parse.y:1026 objc/objc-parse.y:1047
+#: objc/objc-parse.y:1053 objc/objc-parse.y:1059 objc/objc-parse.y:1065
+#: objc/objc-parse.y:1098 objc/objc-parse.y:1104 objc/objc-parse.y:1110
+#: objc/objc-parse.y:1116 objc/objc-parse.y:1161 objc/objc-parse.y:1167
+#: objc/objc-parse.y:1173 objc/objc-parse.y:1179
#, c-format
msgid "`%s' is not at beginning of declaration"
msgstr "`%s' bildirimin başlangıcında değil"
-#: c-parse.y:1441 objc-parse.y:1496
+#: c-parse.y:1300 objc/objc-parse.y:1350
+#, fuzzy
+msgid "`typeof' applied to a bit-field"
+msgstr "'sizeof' bir bit-alanına uygulandı"
+
+#: c-parse.y:1427 objc/objc-parse.y:1477
msgid "ISO C forbids empty initializer braces"
msgstr "ISO C boÅŸ ilklendirme parantezlerine izin vermez"
-#: c-parse.y:1455 objc-parse.y:1510
+#: c-parse.y:1441 objc/objc-parse.y:1491
msgid "ISO C89 forbids specifying subobject to initialize"
msgstr "ISO C89 öndeğer olarak alt nesnelerin belirtilmesine izin vermez."
-#: c-parse.y:1458 objc-parse.y:1513
+#: c-parse.y:1444 objc/objc-parse.y:1494
msgid "obsolete use of designated initializer without `='"
msgstr "`=' olmaksızın tasarlanmış ilklendirici kullanımının modası geçti"
-#: c-parse.y:1462 objc-parse.y:1517
+#: c-parse.y:1448 objc/objc-parse.y:1498
msgid "obsolete use of designated initializer with `:'"
msgstr "`:' olmaksızın tasarlanmış ilklendirici kullanımının modası geçti"
-#: c-parse.y:1489 objc-parse.y:1544
+#: c-parse.y:1475 objc/objc-parse.y:1525
msgid "ISO C forbids specifying range of elements to initialize"
msgstr "ISO C89 öndeğer olarak eleman aralığı belirtilmesine izin vermez."
-#: c-parse.y:1497 c-parse.y:1528 objc-parse.y:1552 objc-parse.y:1583
+#: c-parse.y:1483 c-parse.y:1514 objc/objc-parse.y:1533 objc/objc-parse.y:1564
msgid "ISO C forbids nested functions"
msgstr "ISO C iç içe işlevlere izin vermez"
-#: c-parse.y:1703 objc-parse.y:1760
+#: c-parse.y:1691 objc/objc-parse.y:1743
msgid "ISO C forbids forward references to `enum' types"
msgstr "ISO C sonradan bildirilmiş `enum' türüne başvuruya izin vermez"
-#: c-parse.y:1715 parse.y:2411 objc-parse.y:1772
+#: c-parse.y:1703 cp/parser.c:9282 objc/objc-parse.y:1755
msgid "comma at end of enumerator list"
msgstr "sembolik sabitler listesinin sonunda virgül"
-#: c-parse.y:1723 objc-parse.y:1780
+#: c-parse.y:1723 objc/objc-parse.y:1775
msgid "no semicolon at end of struct or union"
msgstr "struct ya da union tanımının sonunda ; yok"
-#: c-parse.y:1732 objc-parse.y:1789 objc-parse.y:2864
+#: c-parse.y:1732 objc/objc-parse.y:1784 objc/objc-parse.y:2846
msgid "extra semicolon in struct or union specified"
msgstr "struct ya da union'da fazladan ; var"
-#: c-parse.y:1745 objc-parse.y:1816
+#: c-parse.y:1745 objc/objc-parse.y:1800
msgid "ISO C doesn't support unnamed structs/unions"
msgstr "ISO C isimsiz struct/union'lara izin vermez"
-#: c-parse.y:1754 objc-parse.y:1825
+#: c-parse.y:1754 objc/objc-parse.y:1809
msgid "ISO C forbids member declarations with no members"
msgstr "ISO C üyesiz üye bildirimlerine izin vermez"
-#: c-parse.y:1913 objc-parse.y:1984
-msgid "deprecated use of label at end of compound statement"
+#: c-parse.y:1915 objc/objc-parse.y:1970
+#, fuzzy
+msgid "label at end of compound statement"
msgstr "bileşik ifadenin sonunda etiket kullanımının modası geçti"
-#: c-parse.y:1930 objc-parse.y:2001
-msgid "ISO C89 forbids mixed declarations and code"
+#: c-parse.y:1934 objc/objc-parse.y:1989
+#, fuzzy
+msgid "ISO C90 forbids mixed declarations and code"
msgstr "ISO C kod ve bildirimlerin karışımına izin vermez"
-#: c-parse.y:2005 objc-parse.y:2080
+#: c-parse.y:2012 objc/objc-parse.y:2069
msgid "ISO C forbids label declarations"
msgstr "ISO C etiket bildirimlerine izin vermez"
-#: c-parse.y:2055 parse.y:1638 objc-parse.y:2130
+#: c-parse.y:2062 objc/objc-parse.y:2119
msgid "braced-group within expression allowed only inside a function"
msgstr "ifade içinde parantezli gruplamalara sadece bir işlevin içinde izin verilir"
-#: c-parse.y:2182 objc-parse.y:2257
+#: c-parse.y:2184 objc/objc-parse.y:2241
msgid "empty body in an else-statement"
msgstr "else ifadesinin gövdesi boş"
-#: c-parse.y:2303 objc-parse.y:2378
+#: c-parse.y:2192 objc/objc-parse.y:2249
+#, fuzzy
+msgid "%Hempty body in an if-statement"
+msgstr "else ifadesinin gövdesi boş"
+
+#: c-parse.y:2272 cp/parser.c:6028 objc/objc-parse.y:2329
+msgid "break statement not within loop or switch"
+msgstr "break deyimi switch ya da döngü içinde değil"
+
+#: c-parse.y:2281 cp/parser.c:6039 objc/objc-parse.y:2338
+msgid "continue statement not within a loop"
+msgstr "continue deyimi bir döngü içinde değil"
+
+#: c-parse.y:2323 objc/objc-parse.y:2380
msgid "ISO C forbids `goto *expr;'"
msgstr "ISO C `goto *expr;' kullanımına izin vermez"
-#: c-parse.y:2403 objc-parse.y:2478
-msgid "ISO C forbids forward parameter declarations"
-msgstr "ISO C ileriye dönük parametre bildirimlerine izin vermez"
-
#. Gcc used to allow this as an extension. However, it does
#. not work for all targets, and thus has been disabled.
#. Also, since func (...) and func () are indistinguishable,
#. it caused problems with the code in expand_builtin which
#. tries to verify that BUILT_IN_NEXT_ARG is being used
#. correctly.
-#: c-parse.y:2429 objc-parse.y:2504
+#: c-parse.y:2440 objc/objc-parse.y:2548
msgid "ISO C requires a named argument before `...'"
msgstr "ISO C `...'dan önce bir isimli argüman gerektirir"
-#: c-parse.y:2526 objc-parse.y:2601
+#: c-parse.y:2538 objc/objc-parse.y:2646
msgid "`...' in old-style identifier list"
msgstr "eski-tarz tanıtıcı listesinde `...'"
-#: /usr/share/bison/bison.simple:795
-msgid "parse error; also virtual memory exhausted"
+#: c-parse.c:5377 gengtype-yacc.c:1510 java/parse-scan.c:3059
+#: java/parse.c:6063 objc/objc-parse.c:6640
+#, fuzzy
+msgid "syntax error; also virtual memory exhausted"
msgstr "ayrıştırma hatası; ayrıca sanal bellek aşıldı"
-#: /usr/share/bison/bison.simple:799 cp/spew.c:364
-msgid "parse error"
-msgstr "ayrıştırma hatası:"
-
-#: /usr/share/bison/bison.simple:924
+#: c-parse.c:5495 gengtype-yacc.c:1628 java/parse-scan.c:3177
+#: java/parse.c:6181 objc/objc-parse.c:6758
msgid "parser stack overflow"
msgstr "ayrıştırıcı yığın taşması"
-#: c-parse.y:2838 cp/spew.c:1525 objc-parse.y:3537
+#: c-parse.y:2968 objc/objc-parse.y:3663
#, c-format
-msgid "%s at end of input"
-msgstr "%s girdinin sonunda"
+msgid "syntax error at '%s' token"
+msgstr "'%s' dizgeciğinde sözdizimi hatası"
+
+#: c-pch.c:112
+#, fuzzy, c-format
+msgid "can't create precompiled header %s: %m"
+msgstr "dizin %s oluşturulamıyor"
+
+#: c-pch.c:132
+#, fuzzy, c-format
+msgid "can't write to %s: %m"
+msgstr "%s e yazılamıyor"
-#: c-parse.y:2844 cp/spew.c:1533 objc-parse.y:3543
+#: c-pch.c:138
+#, fuzzy, c-format
+msgid "`%s' is not a valid output file"
+msgstr "\"%s\" geçerli bir dosya ismi değil"
+
+#: c-pch.c:167 c-pch.c:183 c-pch.c:195
+#, fuzzy, c-format
+msgid "can't write %s: %m"
+msgstr "%s e yazılamıyor"
+
+#: c-pch.c:173
+#, fuzzy, c-format
+msgid "can't seek in %s: %m"
+msgstr "%s tekrar açılamıyor"
+
+#: c-pch.c:181 c-pch.c:221 c-pch.c:249 c-pch.c:254 c-pch.c:324
+#, fuzzy, c-format
+msgid "can't read %s: %m"
+msgstr "`%s' geniÅŸletilemiyor"
+
+#: c-pch.c:234
+#, fuzzy, c-format
+msgid "%s: not compatible with this GCC version"
+msgstr "indeks, indeks kipiyle uyumsuz"
+
+#. It's a PCH for the wrong language.
+#: c-pch.c:237
+#, fuzzy, c-format
+msgid "%s: not for %s"
+msgstr "%s %s desteÄŸi vermiyor"
+
+#. Not any kind of PCH.
+#: c-pch.c:241
+#, fuzzy, c-format
+msgid "%s: not a PCH file"
+msgstr "%s: bir COFF dosyası değil"
+
+#: c-pch.c:260
#, c-format
-msgid "%s before %s'%c'"
-msgstr "%2$s'%3$c'den önce %1$s"
+msgid "%s: created on host `%.*s', but used on host `%s'"
+msgstr ""
-#: c-parse.y:2846 cp/spew.c:1535 objc-parse.y:3545
+#: c-pch.c:270
#, c-format
-msgid "%s before %s'\\x%x'"
-msgstr "%2$s'\\x%3$x'den önce %1$s"
+msgid "%s: created for target `%.*s', but used for target `%s'"
+msgstr ""
-#: c-parse.y:2850 cp/spew.c:1542 objc-parse.y:3549
+#: c-pch.c:283
#, c-format
-msgid "%s before string constant"
-msgstr "%s dizge sabitten önce"
+msgid "%s: created by version `%.*s', but this is version `%s'"
+msgstr ""
-#: c-parse.y:2852 cp/spew.c:1544 objc-parse.y:3551
+#: c-pch.c:299
#, c-format
-msgid "%s before numeric constant"
-msgstr "sayısal sabitten önce %s"
+msgid "%s: created with -g%s, but used with -g%s"
+msgstr ""
-#: c-parse.y:2854 objc-parse.y:3553
+#: c-pch.c:313
#, c-format
-msgid "%s before \"%s\""
-msgstr "\"%2$s\"den önce %1$s"
+msgid "%s: had text segment at different address"
+msgstr ""
-#: c-parse.y:2856 objc-parse.y:3555
+#: c-pch.c:330 cpperror.c:176 gcc.c:6547
#, c-format
-msgid "%s before '%s' token"
-msgstr "'%2$s' dizgeciğinden önce %1$s"
+msgid "%s: %s"
+msgstr "%s: %s"
-#: c-parse.y:2921
-msgid "traditional C rejects string concatenation"
-msgstr "geleneksel C dizgelerin birleÅŸtirilmesine izin vermez"
+#: c-pch.c:361
+#, fuzzy
+msgid "calling fdopen"
+msgstr "fdopen"
-#: c-parse.y:3047 objc-parse.y:3779
-#, c-format
-msgid "syntax error at '%s' token"
-msgstr "'%s' dizgeciğinde sözdizimi hatası"
+#: c-pch.c:369 c-pch.c:381
+#, fuzzy
+msgid "reading"
+msgstr "%s oluÅŸturuluyor"
-#: c-pragma.c:107
+#: c-pragma.c:106
msgid "#pragma pack (pop) encountered without matching #pragma pack (push, <n>)"
msgstr "#pragma pack (push, <n>) ile eşleşmeyen #pragma pack (pop) saptandı"
-#: c-pragma.c:125
+#: c-pragma.c:124
#, c-format
msgid "#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s, <n>)"
msgstr "#pragma pack(push, %2$s, <n>) ile eşleşmeyen #pragma pack(pop, %1$s) saptandı"
-#: c-pragma.c:145
+#: c-pragma.c:144
msgid "#pragma pack(push[, id], <n>) is not supported on this target"
msgstr "bu hedefte #pragma pack(push[, id], <n>) desteklenmiyor"
-#: c-pragma.c:147
+#: c-pragma.c:146
msgid "#pragma pack(pop[, id], <n>) is not supported on this target"
msgstr "bu hedefte #pragma pack(pop[, id], <n>) desteklenmiyor"
-#: c-pragma.c:167
+#: c-pragma.c:165
msgid "missing '(' after '#pragma pack' - ignored"
msgstr "'#pragma pack' den sonra '(' eksik - yoksayıldı"
-#: c-pragma.c:180 c-pragma.c:230
+#: c-pragma.c:178 c-pragma.c:228
msgid "malformed '#pragma pack' - ignored"
msgstr "'#pragma pack' bozuk - yoksayıldı"
-#: c-pragma.c:185
+#: c-pragma.c:183
msgid "malformed '#pragma pack(push[, id], <n>)' - ignored"
msgstr "bozuk '#pragma pack(push[, id], <n>)' - yoksayıldı"
-#: c-pragma.c:187
+#: c-pragma.c:185
msgid "malformed '#pragma pack(pop[, id])' - ignored"
msgstr "'#pragma pack(pop[, id])' bozuk - yoksayıldı"
-#: c-pragma.c:196
+#: c-pragma.c:194
#, c-format
msgid "unknown action '%s' for '#pragma pack' - ignored"
msgstr "'#pragma pack' için '%s' eylemi bilinmiyor - yoksayıldı"
-#: c-pragma.c:233
+#: c-pragma.c:231
msgid "junk at end of '#pragma pack'"
msgstr "'#pragma pack' sonunda döküntü"
-#: c-pragma.c:247
+#: c-pragma.c:245
#, c-format
msgid "alignment must be a small power of two, not %d"
msgstr "hizalama ikinin küçük bir üssü olmalı %d değil"
-#: c-pragma.c:280
-#, c-format
-msgid "applying #pragma weak `%s' after first use results in unspecified behavior"
+#: c-pragma.c:278
+#, fuzzy
+msgid "%Japplying #pragma weak '%D' after first use results in unspecified behavior"
msgstr "ilk kullanımdan sonra #pragma weak `%s' yönergesini uygulamak tanımlanmamış davranışa yol açar"
-#: c-pragma.c:328 c-pragma.c:333
+#: c-pragma.c:325 c-pragma.c:330
msgid "malformed #pragma weak, ignored"
msgstr "'#pragma weak' yönergesi bozuk - yoksayıldı"
-#: c-pragma.c:337
+#: c-pragma.c:334
msgid "junk at end of #pragma weak"
msgstr "'#pragma weak' sonunda döküntü"
-#: c-pragma.c:372 c-pragma.c:377
+#: c-pragma.c:367 c-pragma.c:372
msgid "malformed #pragma redefine_extname, ignored"
msgstr "#pragma redefine_extname yönergesi bozuk - yoksayıldı"
-#: c-pragma.c:382
+#: c-pragma.c:377
msgid "junk at end of #pragma redefine_extname"
msgstr "#pragma redefine_extname sonunda döküntü"
-#: c-pragma.c:389 c-pragma.c:470
+#: c-pragma.c:384 c-pragma.c:462
msgid "#pragma redefine_extname conflicts with declaration"
msgstr "#pragma redefine_extname bildirimiyle çelişiyor"
-#: c-pragma.c:420
+#: c-pragma.c:413
msgid "malformed #pragma extern_prefix, ignored"
msgstr "#pragma extern_prefix bozuk, yoksayıldı"
-#: c-pragma.c:425
+#: c-pragma.c:418
msgid "junk at end of #pragma extern_prefix"
msgstr "'#pragma extern_prefix' sonunda karışıklık"
-#: c-pragma.c:457
+#: c-pragma.c:449
msgid "asm declaration conflicts with previous rename"
msgstr "asm bildirimi önceki isim değişikliği ile çelişiyor"
-#: c-semantics.c:565
-msgid "break statement not within loop or switch"
-msgstr "break deyimi switch ya da döngü içinde değil"
-
-#: c-semantics.c:583
-msgid "continue statement not within a loop"
-msgstr "continue deyimi bir döngü içinde değil"
-
-#: c-semantics.c:678
-msgid "destructor needed for `%#D'"
+#: c-semantics.c:697
+#, fuzzy
+msgid "destructor needed for `%D'"
msgstr "case etiketinin yerindeki `%#D' için"
-#: c-semantics.c:679
+#: c-semantics.c:698
msgid "where case label appears here"
msgstr "yıkıcı gerekli"
-#: c-semantics.c:682
+#: c-semantics.c:701
msgid "(enclose actions of previous case statements requiring destructors in their own scope.)"
msgstr "(önceki case deyimlerinin zarflama eylemleri kendi içerinde yıkıcıları gerektiriyor)"
-#: c-semantics.c:725 c-typeck.c:6942 cp/semantics.c:897
+#: c-semantics.c:737 c-typeck.c:6239 cp/semantics.c:1070
#, c-format
msgid "%s qualifier ignored on asm"
msgstr "asm'de %s niteleyicisi yoksayıldı"
-#: c-typeck.c:123
+#: c-semantics.c:991
+#, fuzzy
+msgid "will never be executed"
+msgstr "%2d. çağrı hiç çalıştırılmadı\n"
+
+#: c-typeck.c:120
#, c-format
msgid "`%s' has an incomplete type"
msgstr "`%s' tamamlanmamış türde"
-#: c-typeck.c:145 cp/call.c:2865
+#: c-typeck.c:142 cp/call.c:2532
msgid "invalid use of void expression"
msgstr "void deyiminin kullanımı geçersiz"
-#: c-typeck.c:153
+#: c-typeck.c:150
msgid "invalid use of flexible array member"
msgstr "esnek dizi üyesinin kullanımı geçersiz"
-#: c-typeck.c:159
+#: c-typeck.c:156
msgid "invalid use of array with unspecified bounds"
msgstr "sınırları belirtilmemiş dizi; kullanımı geçersiz"
-#: c-typeck.c:167
+#: c-typeck.c:164
#, c-format
msgid "invalid use of undefined type `%s %s'"
msgstr "atanmamış tür `%s %s'; kullanımı geçersiz"
#. If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL.
-#: c-typeck.c:171
+#: c-typeck.c:168
#, c-format
msgid "invalid use of incomplete typedef `%s'"
msgstr "tamamlanmamış typedef `%s'; kullanımı geçersiz"
-#: c-typeck.c:424 c-typeck.c:438
+#: c-typeck.c:415 c-typeck.c:430
msgid "function types not truly compatible in ISO C"
msgstr "işlev türleri ISO C'de tam uyumlu değil"
-#: c-typeck.c:603
+#: c-typeck.c:611
msgid "types are not quite compatible"
msgstr "türler tam uyumlu değil"
-#: c-typeck.c:757 c-typeck.c:2687
+#: c-typeck.c:820
+#, fuzzy
+msgid "function return types not compatible due to `volatile'"
+msgstr "işlevin dönen değer türü işlev olamaz"
+
+#: c-typeck.c:966 c-typeck.c:2143
msgid "arithmetic on pointer to an incomplete type"
msgstr "bir içi boş tür gösterici üzerinde aritmetik"
-#: c-typeck.c:1136
+#: c-typeck.c:1339
#, c-format
msgid "%s has no member named `%s'"
msgstr "%s'in `%s' isimli bir üyesi yok"
-#: c-typeck.c:1172
+#: c-typeck.c:1375
#, c-format
msgid "request for member `%s' in something not a structure or union"
msgstr "bir struct veya union olmayan şeyin `%s' üyesi için istek"
-#: c-typeck.c:1204
+#: c-typeck.c:1404
msgid "dereferencing pointer to incomplete type"
msgstr "içi boş türe gösterici ilişkilendirme"
-#: c-typeck.c:1208
+#: c-typeck.c:1408
msgid "dereferencing `void *' pointer"
msgstr "`void *' gösterici ilişkilendirmesi"
-#: c-typeck.c:1225 cp/typeck.c:2369
+#: c-typeck.c:1425 cp/typeck.c:2104
#, c-format
msgid "invalid type argument of `%s'"
msgstr "`%s' için tür argümanı geçersiz"
-#: c-typeck.c:1244 cp/typeck.c:2395
+#: c-typeck.c:1443 cp/typeck.c:2129
msgid "subscript missing in array reference"
msgstr "dizi baÅŸvurusunda altindis yok"
-#: c-typeck.c:1265 cp/typeck.c:2437
+#: c-typeck.c:1464 cp/typeck.c:2171
msgid "array subscript has type `char'"
msgstr "dizi altindisi `char' türünde"
-#: c-typeck.c:1273 c-typeck.c:1362 cp/typeck.c:2444 cp/typeck.c:2523
+#: c-typeck.c:1472 c-typeck.c:1561 cp/typeck.c:2175 cp/typeck.c:2261
msgid "array subscript is not an integer"
msgstr "dizi altindisi bir tamsayı değil"
-#: c-typeck.c:1306
+#: c-typeck.c:1505
msgid "ISO C forbids subscripting `register' array"
msgstr "ISO C `register' dizisi altindislemesine izin vermez"
-#: c-typeck.c:1308
+#: c-typeck.c:1507
msgid "ISO C90 forbids subscripting non-lvalue array"
msgstr "ISO C90 sol yansız dizi indislemesine izin vermez"
-#: c-typeck.c:1341
+#: c-typeck.c:1540
msgid "subscript has type `char'"
msgstr "alt indis `char' türünde"
-#: c-typeck.c:1357 cp/typeck.c:2518
+#: c-typeck.c:1556 cp/typeck.c:2256
msgid "subscripted value is neither array nor pointer"
msgstr "indisli değer ne dizi ne de bir gösterici"
-#: c-typeck.c:1411
-#, c-format
-msgid "`%s' undeclared here (not in a function)"
-msgstr "`%s' burada bildirilmemiş (bir işlev içinde değil)"
-
-#: c-typeck.c:1418
-#, c-format
-msgid "`%s' undeclared (first use in this function)"
-msgstr "`%s' bildirilmemiş (bu işlevde ilk kullanımı)"
-
-#: c-typeck.c:1423
-msgid "(Each undeclared identifier is reported only once"
-msgstr "(Bildirilmemiş her tanıtıcı sadece bir kez raporlanır)"
-
-#: c-typeck.c:1424
-msgid "for each function it appears in.)"
-msgstr "her işlev için içinde görünür.)"
-
-#: c-typeck.c:1441
+#: c-typeck.c:1586
#, c-format
msgid "local declaration of `%s' hides instance variable"
msgstr "`%s' yerel bildirimi gerçekleme değişkenini gizliyor"
-#: c-typeck.c:1518
+#: c-typeck.c:1679
msgid "called object is not a function"
msgstr "çağrılan nesne bir işlev değil"
-#: c-typeck.c:1604 cp/typeck.c:2829
+#. This situation leads to run-time undefined behavior. We can't,
+#. therefore, simply error unless we can prove that all possible
+#. executions of the program must execute the code.
+#: c-typeck.c:1711
+#, fuzzy
+msgid "function called through a non-compatible type"
+msgstr "sizeof bir tamamlanmamış türe uygulanmış"
+
+#: c-typeck.c:1805 cp/typeck.c:2544
msgid "too many arguments to function"
msgstr "işlev için çok fazla argüman belirtildi"
-#: c-typeck.c:1625
+#: c-typeck.c:1826
#, c-format
msgid "type of formal parameter %d is incomplete"
msgstr "%d biçimsel parametre türü tamamlanmayan türde"
-#: c-typeck.c:1638
+#: c-typeck.c:1839
#, c-format
msgid "%s as integer rather than floating due to prototype"
msgstr "%sması prototipten dolayı bir gerçel sayıdan çok bir tamsayı"
-#: c-typeck.c:1641
+#: c-typeck.c:1842
#, c-format
msgid "%s as integer rather than complex due to prototype"
msgstr "%sması prototipten dolayı bir karmaşık sayıdan çok bir tamsayı"
-#: c-typeck.c:1644
+#: c-typeck.c:1845
#, c-format
msgid "%s as complex rather than floating due to prototype"
msgstr "%sması prototipten dolayı bir gerçel sayıdan çok bir karmaşık sayı"
-#: c-typeck.c:1647
+#: c-typeck.c:1848
#, c-format
msgid "%s as floating rather than integer due to prototype"
msgstr "%sması prototipten dolayı bir tamsayıdan çok bir gerçel sayı"
-#: c-typeck.c:1650
+#: c-typeck.c:1851
#, c-format
msgid "%s as complex rather than integer due to prototype"
msgstr "%sması prototipten dolayı bir tamsayıdan çok bir karmaşık sayı"
-#: c-typeck.c:1653
+#: c-typeck.c:1854
#, c-format
msgid "%s as floating rather than complex due to prototype"
msgstr "%sması prototipten dolayı bir karmaşık sayıdan çok bir gerçel sayı"
-#: c-typeck.c:1663
+#: c-typeck.c:1864
#, c-format
msgid "%s as `float' rather than `double' due to prototype"
msgstr "%sması prototipten dolayı bir «double»dan çok bir «float»"
-#: c-typeck.c:1681
+#: c-typeck.c:1882
#, c-format
msgid "%s with different width due to prototype"
msgstr "prototipten dolayı farklı genişlikle %sması"
-#: c-typeck.c:1715
+#: c-typeck.c:1908
#, c-format
msgid "%s as unsigned due to prototype"
msgstr "%sması prototipten dolayı unsigned"
-#: c-typeck.c:1717
+#: c-typeck.c:1910
#, c-format
msgid "%s as signed due to prototype"
msgstr "%sması prototipten dolayı signed"
-#: c-typeck.c:1751 cp/typeck.c:2933
+#: c-typeck.c:1944 cp/typeck.c:2650
msgid "too few arguments to function"
msgstr "işlev için çok az argüman belirtildi"
-#: c-typeck.c:1793
+#: c-typeck.c:1984
msgid "suggest parentheses around + or - inside shift"
msgstr "shift içindeki + ya da - çevresinde parantezler önerilir"
-#: c-typeck.c:1800
+#: c-typeck.c:1991
msgid "suggest parentheses around && within ||"
msgstr "|| içindeki && çevresinde parantezler önerilir"
-#: c-typeck.c:1809
+#: c-typeck.c:2000
msgid "suggest parentheses around arithmetic in operand of |"
msgstr "| işlemimindeki aritmetik çevresinde parantezler önerilir"
-#: c-typeck.c:1812
+#: c-typeck.c:2003
msgid "suggest parentheses around comparison in operand of |"
msgstr "| işlemimindeki karşılaştırma çevresinde parantezler önerilir"
-#: c-typeck.c:1821
+#: c-typeck.c:2012
msgid "suggest parentheses around arithmetic in operand of ^"
msgstr "^ işlemimindeki aritmetik çevresinde parantezler önerilir"
-#: c-typeck.c:1824
+#: c-typeck.c:2015
msgid "suggest parentheses around comparison in operand of ^"
msgstr "^ işlemimindeki karşılaştırma çevresinde parantezler önerilir"
-#: c-typeck.c:1831
+#: c-typeck.c:2022
msgid "suggest parentheses around + or - in operand of &"
msgstr "& işlemimindeki + veya - çevresinde parantezler önerilir"
-#: c-typeck.c:1834
+#: c-typeck.c:2025
msgid "suggest parentheses around comparison in operand of &"
msgstr "& işlemimindeki karşılaştırma çevresinde parantezler önerilir"
-#: c-typeck.c:1841
+#: c-typeck.c:2032
msgid "comparisons like X<=Y<=Z do not have their mathematical meaning"
msgstr "X<=Y<=Z gibi bir karşılaştıma matematiksel olarak anlamlı değil"
-#: c-typeck.c:2001 c-typeck.c:2036
-msgid "division by zero"
-msgstr "sıfırla bölme"
-
-#: c-typeck.c:2081 cp/typeck.c:3194
-msgid "right shift count is negative"
-msgstr "sağa kaydırma sayısı negatif"
-
-#: c-typeck.c:2088 cp/typeck.c:3200
-msgid "right shift count >= width of type"
-msgstr "sağa kaydırma sayısı türünden büyük yada eşit"
-
-#: c-typeck.c:2109 cp/typeck.c:3219
-msgid "left shift count is negative"
-msgstr "sola kaydırma sayısı negatif"
-
-#: c-typeck.c:2112 cp/typeck.c:3221
-msgid "left shift count >= width of type"
-msgstr "sola kaydırma sayısı türünden büyük ya da eşit"
-
-#: c-typeck.c:2133
-msgid "shift count is negative"
-msgstr "kaydırma sayısı negatif"
-
-#: c-typeck.c:2135
-msgid "shift count >= width of type"
-msgstr "kaydırma sayısı türünden büyük ya da eşit"
-
-#: c-typeck.c:2152 cp/typeck.c:3256
-msgid "comparing floating point with == or != is unsafe"
-msgstr "== veya != ile karşılaştırma gerçel sayılarda güvenli değil"
-
-#: c-typeck.c:2178 c-typeck.c:2184
-msgid "ISO C forbids comparison of `void *' with function pointer"
-msgstr "ISO C `void *' ile işlev göstericisinin karşılaştırılmasına izin vermez"
-
-#: c-typeck.c:2187 c-typeck.c:2227 c-typeck.c:2255
-msgid "comparison of distinct pointer types lacks a cast"
-msgstr "belirgin gösterici türlerinin karşılaştırması bir tür dönüşümü gerektirir"
-
-#: c-typeck.c:2201 c-typeck.c:2206 c-typeck.c:2275 c-typeck.c:2280
-msgid "comparison between pointer and integer"
-msgstr "gösterici türü ile tamsayı türü arasında karşılaştırma"
-
-#: c-typeck.c:2222 c-typeck.c:2250
-msgid "ISO C forbids ordered comparisons of pointers to functions"
-msgstr "ISO C işlev göstericilerinin sıralı karşılaştırmalarına izin vermez"
-
-#: c-typeck.c:2247
-msgid "comparison of complete and incomplete pointers"
-msgstr "tamamlanmış ve içi boş göstericilerin karşılaştırılması"
-
-#: c-typeck.c:2263 c-typeck.c:2270
-msgid "ordered comparison of pointer with integer zero"
-msgstr "tamsayı sıfır ile göstercinin sıralı karşılaştırması"
-
-#: c-typeck.c:2294 cp/typeck.c:3389
-msgid "unordered comparison on non-floating point argument"
-msgstr "gerçel sayı olmayan argümanlar arasında düzenlenmemiş karşılaştırma"
-
-#: c-typeck.c:2505
-msgid "comparison between signed and unsigned"
-msgstr "signed ile unsigned arasında karşılaştırma"
-
-#: c-typeck.c:2551 cp/typeck.c:3633
-msgid "comparison of promoted ~unsigned with constant"
-msgstr "sabitle yükseltgenmiş ~unsigned karşılaştırması"
-
-#: c-typeck.c:2559 cp/typeck.c:3641
-msgid "comparison of promoted ~unsigned with unsigned"
-msgstr "unsigned ile ~unsigned'a yükseltgenmiş türlerin karşılaştırması"
-
-#: c-typeck.c:2639
+#: c-typeck.c:2095
msgid "pointer of type `void *' used in subtraction"
msgstr "çıkartmada `void *' türünde gösterici kullanılmış"
-#: c-typeck.c:2641
+#: c-typeck.c:2097
msgid "pointer to a function used in subtraction"
msgstr "çıkartmada işlev göstericisi kullanılmış"
-#: c-typeck.c:2738
+#: c-typeck.c:2191
msgid "wrong type argument to unary plus"
msgstr "tekil artı işleminde yanlış tür argümanı"
-#: c-typeck.c:2751
+#: c-typeck.c:2204
msgid "wrong type argument to unary minus"
msgstr "tekil eksi işleminde yanlış tür argümanı"
-#: c-typeck.c:2768
+#: c-typeck.c:2221
msgid "ISO C does not support `~' for complex conjugation"
msgstr "ISO C karmaşık sayıların mantıksal çarpımında `~' desteklemez"
-#: c-typeck.c:2774
+#: c-typeck.c:2227
msgid "wrong type argument to bit-complement"
msgstr "bit-tümler için yanlış tür argümanı"
-#: c-typeck.c:2783
+#: c-typeck.c:2235
msgid "wrong type argument to abs"
msgstr "mutlak değer için yanlış tür argümanı"
-#: c-typeck.c:2795
+#: c-typeck.c:2247
msgid "wrong type argument to conjugation"
msgstr "mantıksal çarpım için yanlış tür argümanı"
-#: c-typeck.c:2809
+#: c-typeck.c:2261
msgid "wrong type argument to unary exclamation mark"
msgstr "tekil tümleyen için yanlış tür argümanı"
-#: c-typeck.c:2852
+#: c-typeck.c:2304
msgid "ISO C does not support `++' and `--' on complex types"
msgstr "ISO C karmaşık sayı türlerinde `++' ve `--' desteklemez"
-#: c-typeck.c:2867 c-typeck.c:2899
+#: c-typeck.c:2319 c-typeck.c:2351
msgid "wrong type argument to increment"
msgstr "arttırımda yanlış türde argüman"
-#: c-typeck.c:2869 c-typeck.c:2901
+#: c-typeck.c:2321 c-typeck.c:2353
msgid "wrong type argument to decrement"
msgstr "eksiltmede yanlış türde argüman"
-#: c-typeck.c:2890
+#: c-typeck.c:2342
msgid "increment of pointer to unknown structure"
msgstr "bilinmeyen yapı göstericisinde arttırma"
-#: c-typeck.c:2892
+#: c-typeck.c:2344
msgid "decrement of pointer to unknown structure"
msgstr "bilinmeyen yapı göstericisinde eksiltme"
-#: c-typeck.c:3029
-msgid "ISO C forbids the address of a cast expression"
-msgstr "ISO C tür dönüşüm ifadesi adresine izin vermez"
-
-#: c-typeck.c:3039
+#: c-typeck.c:2469
msgid "invalid lvalue in unary `&'"
msgstr "tekil `&' için geçersiz soldeğer"
-#: c-typeck.c:3071
+#: c-typeck.c:2501
#, c-format
msgid "attempt to take address of bit-field structure member `%s'"
msgstr "bit-alanı yapının `%s' üyesinin adresi alınmaya çalışılıyor"
-#: c-typeck.c:3180 c-typeck.c:4651 c-typeck.c:4667 c-typeck.c:4683
-#: final.c:3146 final.c:3148 gcc.c:4381 rtl-error.c:122 toplev.c:1694
-#: config/cris/cris.c:545 cp/spew.c:1538 cp/typeck.c:4367 java/expr.c:364
-#: java/verify.c:1467 java/verify.c:1468 java/verify.c:1483
-#, c-format
-msgid "%s"
-msgstr "%s"
-
-#: c-typeck.c:3241
-msgid "ISO C forbids use of conditional expressions as lvalues"
+#: c-typeck.c:2634
+#, fuzzy
+msgid "use of conditional expressions as lvalues is deprecated"
msgstr "ISO C koşullu ifadelerin sol tarafta kullanımına izin vermez."
-#: c-typeck.c:3244
-msgid "ISO C forbids use of compound expressions as lvalues"
+#: c-typeck.c:2637
+#, fuzzy
+msgid "use of compound expressions as lvalues is deprecated"
msgstr "ISO C bileşik ifadelerin sol tarafta kullanımına izin vermez."
-#: c-typeck.c:3247
-msgid "ISO C forbids use of cast expressions as lvalues"
+#: c-typeck.c:2640
+#, fuzzy
+msgid "use of cast expressions as lvalues is deprecated"
msgstr "ISO C tür dönüşüm ifadelerin sol tarafta kullanımına izin vermez."
-#: c-typeck.c:3264
+#: c-typeck.c:2655
#, c-format
msgid "%s of read-only member `%s'"
msgstr "salt-okunur üye `%2$s' için %1$s"
-#: c-typeck.c:3268
+#: c-typeck.c:2659
#, c-format
msgid "%s of read-only variable `%s'"
msgstr "salt-okunur değişken `%2$s' için %1$s"
-#: c-typeck.c:3271
+#: c-typeck.c:2662
#, c-format
msgid "%s of read-only location"
msgstr "salt-okunur konumun %s"
-#: c-typeck.c:3290
+#: c-typeck.c:2680
#, c-format
msgid "cannot take address of bit-field `%s'"
msgstr "`%s' bit-alanının adresi alınamıyor"
-#: c-typeck.c:3318
+#: c-typeck.c:2708 treelang/treetree.c:946
#, c-format
msgid "global register variable `%s' used in nested function"
msgstr "genel yazmaç değişkeni `%s' yuvalanmış işlevde kullanılmış"
-#: c-typeck.c:3322
+#: c-typeck.c:2712 treelang/treetree.c:950
#, c-format
msgid "register variable `%s' used in nested function"
msgstr "yazmaç değişkeni `%s' yuvalanmış işlevde kullanılmış"
-#: c-typeck.c:3329
+#: c-typeck.c:2719 treelang/treetree.c:957
#, c-format
msgid "address of global register variable `%s' requested"
msgstr "`%s' genel yazmaç değişkeninin adresi istenmiş"
-#: c-typeck.c:3341
+#: c-typeck.c:2731
msgid "cannot put object with volatile field into register"
msgstr "gelgeç alanlı nesne yazmaça konulamaz"
-#: c-typeck.c:3345
+#: c-typeck.c:2735 treelang/treetree.c:962
#, c-format
msgid "address of register variable `%s' requested"
msgstr "`%s' yazmaç değişkeninin adresi istendi"
-#: c-typeck.c:3453
+#: c-typeck.c:2820
msgid "signed and unsigned type in conditional expression"
msgstr "koşullu ifadede signed ve unsigned türler"
-#: c-typeck.c:3460
+#: c-typeck.c:2827
msgid "ISO C forbids conditional expr with only one void side"
msgstr "ISO C tek taraflı void tür içeren koşullu ifadelere izin vermez"
-#: c-typeck.c:3476 c-typeck.c:3483
+#: c-typeck.c:2843 c-typeck.c:2850
msgid "ISO C forbids conditional expr between `void *' and function pointer"
msgstr "ISO C `void *' ve işlev göstericisi arasında koşullu ifadelere izin vermez"
-#: c-typeck.c:3489
+#: c-typeck.c:2856
msgid "pointer type mismatch in conditional expression"
msgstr "koşullu ifade içinde gösterici türü uyumsuzluğu"
-#: c-typeck.c:3496 c-typeck.c:3506
+#: c-typeck.c:2863 c-typeck.c:2873
msgid "pointer/integer type mismatch in conditional expression"
msgstr "koşullu ifadede gösterici/tamsayı tür uyumsuzluğu"
-#: c-typeck.c:3520
+#: c-typeck.c:2887
msgid "type mismatch in conditional expression"
msgstr "şartlı ifade içinde tür uyumsuzluğu"
-#: c-typeck.c:3591 cp/typeck.c:4623
+#: c-typeck.c:2947
msgid "left-hand operand of comma expression has no effect"
msgstr "virgüllü ifadenin sol terimi etkisiz"
-#: c-typeck.c:3635
+#: c-typeck.c:2978
msgid "cast specifies array type"
msgstr "tür dönüşümü dizi belirtiyor"
-#: c-typeck.c:3641
+#: c-typeck.c:2984
msgid "cast specifies function type"
msgstr "tür dönüşümü işlev belirtiyor"
-#: c-typeck.c:3651
+#: c-typeck.c:2994
msgid "ISO C forbids casting nonscalar to the same type"
msgstr "ISO C skalar olmayandan aynı türe dönüşüme izin vermez"
-#: c-typeck.c:3670
+#: c-typeck.c:3012
msgid "ISO C forbids casts to union type"
msgstr "ISO C union türe dönüşüme izin vermez"
-#: c-typeck.c:3685
+#: c-typeck.c:3020
msgid "cast to union type from type not present in union"
msgstr "union içinde mevcut olmayan türden union türe dönüşüm"
-#: c-typeck.c:3736
+#: c-typeck.c:3071
msgid "cast adds new qualifiers to function type"
msgstr "tür dönüşümü, işlev türüne yeni niteleyiciler ekliyor"
#. There are qualifiers present in IN_OTYPE that are not
#. present in IN_TYPE.
-#: c-typeck.c:3741
+#: c-typeck.c:3076
msgid "cast discards qualifiers from pointer target type"
msgstr "tür dönüşümü, gösterici hedef türünden niteleyicileri iptal ediyor"
-#: c-typeck.c:3756
+#: c-typeck.c:3091
msgid "cast increases required alignment of target type"
msgstr "tür dönüşümü hedef türün gerekli hizalamasını azaltıyor"
-#: c-typeck.c:3762 cp/typeck.c:5144
+#: c-typeck.c:3097 cp/typeck.c:4889
msgid "cast from pointer to integer of different size"
msgstr "göstericiden farklı tamsayı türlere dönüşüm"
-#: c-typeck.c:3767
+#: c-typeck.c:3102
msgid "cast does not match function type"
msgstr "tür dönüşümü işlev türüyle uyumsuz"
-#: c-typeck.c:3774 cp/typeck.c:5151
+#: c-typeck.c:3109 cp/typeck.c:4896
msgid "cast to pointer from integer of different size"
msgstr "farklı boyuttaki tamsayı türden göstericye dönüşüm"
-#: c-typeck.c:3786
+#: c-typeck.c:3121
msgid "type-punning to incomplete type might break strict-aliasing rules"
msgstr "içi boş türle tür tanımı yapmak adlandırma kurallarının katılığı ile bağdaşmaz"
-#: c-typeck.c:3790
+#: c-typeck.c:3125
msgid "dereferencing type-punned pointer will break strict-aliasing rules"
msgstr "türü tanımlanmış göstericinin ilişkilendirilmesi adlandırmanın değişmezliği kurallarını bozacak"
+#: c-typeck.c:3136
+#, fuzzy
+msgid "ISO C forbids conversion of function pointer to object pointer type"
+msgstr "ISO C++ gösterge aritmetiğinde bir üye işleve gösterge kullanımına izin vermez"
+
+#: c-typeck.c:3145
+#, fuzzy
+msgid "ISO C forbids conversion of object pointer to function pointer type"
+msgstr "ISO C `void *' ile işlev göstericisinin karşılaştırılmasına izin vermez"
+
#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
#. Reject anything strange now.
-#: c-typeck.c:3949
+#: c-typeck.c:3303
msgid "invalid lvalue in assignment"
msgstr "atama içinde sol taraf geçersiz"
#. Convert new value to destination type.
-#: c-typeck.c:3958 c-typeck.c:3983 c-typeck.c:4000 cp/typeck.c:5266
-#: cp/typeck.c:5416
+#. Check this here to avoid odd errors when trying to convert
+#. a throw to the type of the COND_EXPR.
+#. Now we have handled acceptable kinds of LHS that are not truly lvalues.
+#. Reject anything strange now.
+#: c-typeck.c:3312 c-typeck.c:3337 c-typeck.c:3354 cp/typeck.c:5008
+#: cp/typeck.c:5152
msgid "assignment"
msgstr "atama"
-#: c-typeck.c:4070
+#: c-typeck.c:3421
msgid "cannot pass rvalue to reference parameter"
msgstr "sağdeğer, başvuru parametresine aktarılamaz"
-#: c-typeck.c:4174 c-typeck.c:4241
+#: c-typeck.c:3530 c-typeck.c:3606
#, c-format
msgid "%s makes qualified function pointer from unqualified"
msgstr "%s nitelemeyenden niteleyen işlev göstericisi yapıyor"
-#: c-typeck.c:4178 c-typeck.c:4221
+#: c-typeck.c:3534 c-typeck.c:3586
#, c-format
msgid "%s discards qualifiers from pointer target type"
msgstr "%s gösterici hedef türündeki niteleyicileri iptal ediyor"
-#: c-typeck.c:4184
+#: c-typeck.c:3540
msgid "ISO C prohibits argument conversion to union type"
msgstr "ISO C union türe argüman dönüşümünü yasaklar"
-#: c-typeck.c:4213
+#: c-typeck.c:3578
#, c-format
msgid "ISO C forbids %s between function pointer and `void *'"
msgstr "ISO C de işlev göstericisi ile `void *' arasında %s yasaktır"
-#: c-typeck.c:4230
+#: c-typeck.c:3595
#, c-format
msgid "pointer targets in %s differ in signedness"
msgstr "gösterici hedefleri %s içinde farklı signed'lıkta"
-#: c-typeck.c:4246
+#: c-typeck.c:3611
#, c-format
msgid "%s from incompatible pointer type"
msgstr "%s uyumsuz gösterici türünde"
-#: c-typeck.c:4252 c-typeck.c:4804 cp/typeck.c:1653
+#: c-typeck.c:3617 c-typeck.c:4124 cp/typeck.c:1366
msgid "invalid use of non-lvalue array"
msgstr "soldeğersiz dizi kullanımı geçersiz"
-#: c-typeck.c:4267
+#: c-typeck.c:3631
#, c-format
msgid "%s makes pointer from integer without a cast"
msgstr "%s sırasında bir tür dönüşümü olmaksızın tamsayıdan gösterici yapılıyor"
-#: c-typeck.c:4275
+#: c-typeck.c:3638
#, c-format
msgid "%s makes integer from pointer without a cast"
msgstr "%s bir tür dönüşümü olmaksızın göstericiden tamsayı yapılıyor"
-#: c-typeck.c:4289 c-typeck.c:4292
+#: c-typeck.c:3652 c-typeck.c:3655
#, c-format
msgid "incompatible type for argument %d of `%s'"
msgstr "`%2$s'nın %1$d. argümanı için tür uyumsuz"
-#: c-typeck.c:4296
+#: c-typeck.c:3659
#, c-format
msgid "incompatible type for argument %d of indirect function call"
msgstr "dolaylı işlev çağrısının %d. argümanı için tür uyumsuz"
-#: c-typeck.c:4300
+#: c-typeck.c:3663
#, c-format
msgid "incompatible types in %s"
msgstr "%s içinde uyumsuz türler"
#. Function name is known; supply it.
-#: c-typeck.c:4358
+#: c-typeck.c:3719
#, c-format
msgid "passing arg of `%s'"
msgstr "`%s' işlevinin argümanının aktarılması"
#. Function name unknown (call through ptr).
-#: c-typeck.c:4368
+#: c-typeck.c:3728
msgid "passing arg of pointer to function"
msgstr "işlev göstericisi olan argümanın aktarılması"
#. Function name is known; supply it.
-#: c-typeck.c:4376
+#: c-typeck.c:3736
#, c-format
msgid "passing arg %d of `%s'"
msgstr "`%2$s' işlevinin %1$d. argümanının aktarılması"
#. Function name unknown (call through ptr); just give arg number.
-#: c-typeck.c:4386
+#: c-typeck.c:3745
#, c-format
msgid "passing arg %d of pointer to function"
msgstr "işlev göstericisi olarak %d. argümanın aktarılması"
-#: c-typeck.c:4452
-msgid "initializer for static variable is not constant"
-msgstr "durağan değişken için ilklendirici bir sabit değil"
-
-#: c-typeck.c:4458
-msgid "initializer for static variable uses complicated arithmetic"
-msgstr "durağan değişken için ilklendirici karmaşık aritmetik kullanıyor"
-
-#: c-typeck.c:4466
-msgid "aggregate initializer is not constant"
-msgstr "küme ilklendiricisi bir sabit değil"
-
-#: c-typeck.c:4468
-msgid "aggregate initializer uses complicated arithmetic"
-msgstr "küme ilklendiricisi karmaşık aritmetik kullanıyor"
-
-#: c-typeck.c:4475
+#: c-typeck.c:3802
msgid "traditional C rejects automatic aggregate initialization"
msgstr "geleneksel C otomatik küme ilklendirmesini reddeder"
-#: c-typeck.c:4654 c-typeck.c:4670 c-typeck.c:4686
+#: c-typeck.c:3973 c-typeck.c:3988 c-typeck.c:4003
#, c-format
msgid "(near initialization for `%s')"
msgstr "(%s için near ilklendirme)"
-#: c-typeck.c:4737 cp/typeck2.c:488
+#: c-typeck.c:4052 cp/typeck2.c:559
msgid "char-array initialized from wide string"
msgstr "karakter dizisinin ilklendiricisi olarak geniş dizge kullanılmış"
-#: c-typeck.c:4744 cp/typeck2.c:495
+#: c-typeck.c:4059 cp/typeck2.c:566
msgid "int-array initialized from non-wide string"
msgstr "tamsayı dizisinin ilklendiricisi olarak geniş-olmayan dizge kullanılmış"
-#: c-typeck.c:4762 cp/typeck2.c:511
+#: c-typeck.c:4077 cp/typeck2.c:581
msgid "initializer-string for array of chars is too long"
msgstr "karakter dizisi için dizge-ilklendirici çok uzun"
-#: c-typeck.c:4822
+#: c-typeck.c:4147
msgid "array initialized from non-constant array expression"
msgstr "dizinin ilklendiricisi olarak sabit olmayan dizi ifadesi kullanılmış"
-#: c-typeck.c:4839 c-typeck.c:4841 c-typeck.c:4857 c-typeck.c:4878
-#: c-typeck.c:6281
+#: c-typeck.c:4164 c-typeck.c:4166 c-typeck.c:4182 c-typeck.c:4203
+#: c-typeck.c:5585
msgid "initializer element is not constant"
msgstr "ilklendirici öğe bir sabit değil"
-#: c-typeck.c:4873
+#: c-typeck.c:4198
msgid "initialization"
msgstr "ilklendirme"
-#: c-typeck.c:4884 c-typeck.c:6286
+#: c-typeck.c:4209 c-typeck.c:5590
msgid "initializer element is not computable at load time"
msgstr "başlangıç öğesi yükleme sırasında hesaplanabilir değil"
-#: c-typeck.c:4899 cp/typeck2.c:588
+#: c-typeck.c:4224 cp/typeck2.c:658
msgid "invalid initializer"
msgstr "geçersiz ilklendirici"
-#: c-typeck.c:5393
+#: c-typeck.c:4509 cp/decl.c:4465
+#, fuzzy
+msgid "opaque vector types cannot be initialized"
+msgstr "`%T' türünden değişken-uzunluklu nesne ilklendirilmiş olmayabilir"
+
+#: c-typeck.c:4703
msgid "extra brace group at end of initializer"
msgstr "ilklendiricinin sonunda fazladan parantezli grup"
-#: c-typeck.c:5413
+#: c-typeck.c:4723
msgid "missing braces around initializer"
msgstr "ilklendiriciyi çevreleyen parantezler yok"
-#: c-typeck.c:5473
+#: c-typeck.c:4783
msgid "braces around scalar initializer"
msgstr "skalar ilklendiriciyi kuÅŸatan parantezler"
-#: c-typeck.c:5521
+#: c-typeck.c:4830
msgid "initialization of flexible array member in a nested context"
msgstr "içiçe bağlam içinde esnek dizi üyesi ilklendirmesi"
-#: c-typeck.c:5523
+#: c-typeck.c:4832
msgid "initialization of a flexible array member"
msgstr "esnek dizi üyesi ilklendirmesi"
-#: c-typeck.c:5554
+#: c-typeck.c:4863
msgid "missing initializer"
msgstr "ilklendirici yok"
-#: c-typeck.c:5580
+#: c-typeck.c:4889
msgid "empty scalar initializer"
msgstr "skalar ilklendirici boÅŸ"
-#: c-typeck.c:5585
+#: c-typeck.c:4894
msgid "extra elements in scalar initializer"
msgstr "skalar ilklendiricide fazladan öğeler"
-#: c-typeck.c:5671
+#: c-typeck.c:4979
msgid "initialization designators may not nest"
msgstr "ilklendirme tasarlayıcılar yuvalanamayabilir"
-#: c-typeck.c:5692 c-typeck.c:5763
+#: c-typeck.c:5000 c-typeck.c:5068
msgid "array index in non-array initializer"
msgstr "dizi-olmayan ilklendiricide dizi indisi"
-#: c-typeck.c:5697 c-typeck.c:5817
+#: c-typeck.c:5005 c-typeck.c:5121
msgid "field name not in record or union initializer"
msgstr "alan ismi kayıt ya da union ilklendiricisinde kullanılmamış"
-#: c-typeck.c:5759 c-typeck.c:5761
+#: c-typeck.c:5064 c-typeck.c:5066
msgid "nonconstant array index in initializer"
msgstr "ilklendiricide sabit-olmayan dizi indeksi"
-#: c-typeck.c:5765 c-typeck.c:5768
+#: c-typeck.c:5070 c-typeck.c:5073
msgid "array index in initializer exceeds array bounds"
msgstr "ilklendiricideki dizi indeksi dizi sınırlarının dışında"
-#: c-typeck.c:5779
+#: c-typeck.c:5084
msgid "empty index range in initializer"
msgstr "ilklendiricide indeks aralığı boş"
-#: c-typeck.c:5788
+#: c-typeck.c:5093
msgid "array index range in initializer exceeds array bounds"
msgstr "ilklendiricideki dizi indeksi aralığı dizi sınırlarını aşıyor"
-#: c-typeck.c:5829
+#: c-typeck.c:5133
#, c-format
msgid "unknown field `%s' specified in initializer"
msgstr "ilklendiricide bilinmeyen `%s' alanı belirtilmiş"
-#: c-typeck.c:5866 c-typeck.c:5887 c-typeck.c:6348
+#: c-typeck.c:5169 c-typeck.c:5190 c-typeck.c:5652
msgid "initialized field with side-effects overwritten"
msgstr "yan-etkili ilklendirilmiş alanın üzerine yazıldı"
-#: c-typeck.c:6558
+#: c-typeck.c:5860
msgid "excess elements in char array initializer"
msgstr "karakter dizisi ilklendiricide gereğinden fazla öğe"
-#: c-typeck.c:6565 c-typeck.c:6611
+#: c-typeck.c:5867 c-typeck.c:5913
msgid "excess elements in struct initializer"
msgstr "struct ilklendiricide gereğinden fazla öğe"
-#: c-typeck.c:6626
+#: c-typeck.c:5928
msgid "non-static initialization of a flexible array member"
msgstr "esnek dizi üyesinin satatik olmayan ilklendirmesi"
-#: c-typeck.c:6693
+#: c-typeck.c:5995
msgid "excess elements in union initializer"
msgstr "union ilklendiricide gereğinden fazla öğe"
-#: c-typeck.c:6714
+#: c-typeck.c:6016
msgid "traditional C rejects initialization of unions"
msgstr "geleneksel C union ilklendirmesini reddeder"
-#: c-typeck.c:6777
+#: c-typeck.c:6079
msgid "excess elements in array initializer"
msgstr "dizi ilklendiricide gereğinden fazla öğe"
-#: c-typeck.c:6806
+#: c-typeck.c:6108
msgid "excess elements in vector initializer"
msgstr "vektör ilklendiricide gereğinden fazla öğe"
-#: c-typeck.c:6828
+#: c-typeck.c:6130
msgid "excess elements in scalar initializer"
msgstr "skalar ilklendiricide gereğinden fazla öğe"
-#: c-typeck.c:6935
+#: c-typeck.c:6232
msgid "asm template is not a string constant"
msgstr "asm ÅŸablon bir dizge sabit deÄŸil"
-#: c-typeck.c:6967
+#: c-typeck.c:6264
msgid "invalid lvalue in asm statement"
msgstr "asm deyiminde geçersiz sol taraf"
-#: c-typeck.c:7042
+#: c-typeck.c:6336
msgid "modification by `asm'"
msgstr "`asm' tarafından değişiklik"
-#: c-typeck.c:7061 cp/typeck.c:6237
+#: c-typeck.c:6354 cp/typeck.c:5926
msgid "function declared `noreturn' has a `return' statement"
msgstr "`noreturn' olarak bildirilmiş işlev `return' deyimi içeriyor"
-#: c-typeck.c:7068
+#: c-typeck.c:6361
msgid "`return' with no value, in function returning non-void"
msgstr "geridönüş değeri void olmayan işlevde `return' değer içermiyor"
-#: c-typeck.c:7074
+#: c-typeck.c:6367
msgid "`return' with a value, in function returning void"
msgstr "void dönüşlü işlevde `return' deyimi değer içeriyor"
-#: c-typeck.c:7078
+#: c-typeck.c:6371
msgid "return"
msgstr "dönüş değeri"
-#: c-typeck.c:7130
+#: c-typeck.c:6423
msgid "function returns address of local variable"
msgstr "işlev yerel değişkenin adresi ile dönüyor"
-#: c-typeck.c:7186 cp/semantics.c:555
+#: c-typeck.c:6478 cp/semantics.c:749
msgid "switch quantity not an integer"
msgstr "switch büyüklüğü bir tamsayı değil"
-#: c-typeck.c:7196
+#: c-typeck.c:6488
msgid "`long' switch expression not converted to `int' in ISO C"
msgstr "ISO C'de `long' switch ifadesi `int'e dönüştürülmez"
-#: c-typeck.c:7231 cp/decl.c:5523
+#: c-typeck.c:6529 cp/parser.c:5538
msgid "case label not within a switch statement"
msgstr "case etiketi bir switch deyimi içinde değil"
-#: c-typeck.c:7233 cp/decl.c:5528
+#: c-typeck.c:6531
msgid "`default' label not within a switch statement"
msgstr "`default' etiketi bir switch deyimi içinde değil"
-#: calls.c:1934 tree-inline.c:1177
-#, c-format
-msgid "inlining failed in call to `%s'"
+#: c-typeck.c:6683 c-typeck.c:6717
+msgid "division by zero"
+msgstr "sıfırla bölme"
+
+#: c-typeck.c:6762 cp/typeck.c:2928
+msgid "right shift count is negative"
+msgstr "sağa kaydırma sayısı negatif"
+
+#: c-typeck.c:6769 cp/typeck.c:2934
+msgid "right shift count >= width of type"
+msgstr "sağa kaydırma sayısı türünden büyük yada eşit"
+
+#: c-typeck.c:6790 cp/typeck.c:2953
+msgid "left shift count is negative"
+msgstr "sola kaydırma sayısı negatif"
+
+#: c-typeck.c:6793 cp/typeck.c:2955
+msgid "left shift count >= width of type"
+msgstr "sola kaydırma sayısı türünden büyük ya da eşit"
+
+#: c-typeck.c:6814
+msgid "shift count is negative"
+msgstr "kaydırma sayısı negatif"
+
+#: c-typeck.c:6816
+msgid "shift count >= width of type"
+msgstr "kaydırma sayısı türünden büyük ya da eşit"
+
+#: c-typeck.c:6833 cp/typeck.c:2990
+msgid "comparing floating point with == or != is unsafe"
+msgstr "== veya != ile karşılaştırma gerçel sayılarda güvenli değil"
+
+#: c-typeck.c:6859 c-typeck.c:6865
+msgid "ISO C forbids comparison of `void *' with function pointer"
+msgstr "ISO C `void *' ile işlev göstericisinin karşılaştırılmasına izin vermez"
+
+#: c-typeck.c:6868 c-typeck.c:6908 c-typeck.c:6936
+msgid "comparison of distinct pointer types lacks a cast"
+msgstr "belirgin gösterici türlerinin karşılaştırması bir tür dönüşümü gerektirir"
+
+#: c-typeck.c:6882 c-typeck.c:6887 c-typeck.c:6956 c-typeck.c:6961
+msgid "comparison between pointer and integer"
+msgstr "gösterici türü ile tamsayı türü arasında karşılaştırma"
+
+#: c-typeck.c:6903 c-typeck.c:6931
+msgid "ISO C forbids ordered comparisons of pointers to functions"
+msgstr "ISO C işlev göstericilerinin sıralı karşılaştırmalarına izin vermez"
+
+#: c-typeck.c:6928
+msgid "comparison of complete and incomplete pointers"
+msgstr "tamamlanmış ve içi boş göstericilerin karşılaştırılması"
+
+#: c-typeck.c:6944 c-typeck.c:6951
+msgid "ordered comparison of pointer with integer zero"
+msgstr "tamsayı sıfır ile göstercinin sıralı karşılaştırması"
+
+#: c-typeck.c:6975 cp/typeck.c:3126
+msgid "unordered comparison on non-floating point argument"
+msgstr "gerçel sayı olmayan argümanlar arasında düzenlenmemiş karşılaştırma"
+
+#: c-typeck.c:7185
+msgid "comparison between signed and unsigned"
+msgstr "signed ile unsigned arasında karşılaştırma"
+
+#: c-typeck.c:7231 cp/typeck.c:3373
+msgid "comparison of promoted ~unsigned with constant"
+msgstr "sabitle yükseltgenmiş ~unsigned karşılaştırması"
+
+#: c-typeck.c:7239 cp/typeck.c:3381
+msgid "comparison of promoted ~unsigned with unsigned"
+msgstr "unsigned ile ~unsigned'a yükseltgenmiş türlerin karşılaştırması"
+
+#: calls.c:1838
+#, fuzzy
+msgid "%Jinlining failed in call to '%F'"
msgstr "`%s' çağrısında özümleme başarısız"
-#: calls.c:1935 calls.c:2271 tree-inline.c:1178
+#: calls.c:1839 calls.c:2208 tree-inline.c:1339 tree-inline.c:1346
msgid "called from here"
msgstr " buradan çağrıldı"
-#: calls.c:2270
-#, c-format
-msgid "can't inline call to `%s'"
+#: calls.c:2207
+#, fuzzy
+msgid "%Jcan't inline call to '%F'"
msgstr "`%s' çağrısı `inline' olamaz"
-#: calls.c:2300
+#: calls.c:2216
+msgid "ignoring return value of `%D', declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2229
+msgid "ignoring return value of function declared with attribute warn_unused_result"
+msgstr ""
+
+#: calls.c:2239
msgid "function call has aggregate value"
msgstr "işlev çağrısı küme değeri içeriyor"
-#: cfgloop.c:1107
+#: cfg.c:835
+#, c-format
+msgid "bb %d on wrong place"
+msgstr "bb %d yanlış yerde"
+
+#: cfg.c:841
+#, c-format
+msgid "prev_bb of %d should be %d, not %d"
+msgstr "%d'nin prev_bb'si %d olmalıydı, %d değil"
+
+#: cfg.c:857
+#, c-format
+msgid "verify_flow_info: Wrong count of block %i %i"
+msgstr "verify_flow_info: blok %i %i sayısı yanlış"
+
+#: cfg.c:863
+#, c-format
+msgid "verify_flow_info: Wrong frequency of block %i %i"
+msgstr "verify_flow_info: block %i %i sıklığı yanlış"
+
+#: cfg.c:871
+#, c-format
+msgid "verify_flow_info: Duplicate edge %i->%i"
+msgstr "verify_flow_info: yinelenmiÅŸ kenar %i->%i"
+
+#: cfg.c:877
+#, c-format
+msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+msgstr "verify_flow_info: yinelenmiş kenar %i->%i %i olasılığı yanlış"
+
+#: cfg.c:883
+#, c-format
+msgid "verify_flow_info: Wrong count of edge %i->%i %i"
+msgstr "verify_flow_info: kenar %i->%i %i sayısı yanlış"
+
+#: cfg.c:895
+#, c-format
+msgid "verify_flow_info: Basic block %d succ edge is corrupted"
+msgstr "verify_flow_info: %d. temel bloğun ardıl kenarı bozuk"
+
+#: cfg.c:909 cfgrtl.c:1971
+#, c-format
+msgid "Wrong amount of branch edges after unconditional jump %i"
+msgstr "Koşulsuz jump %i den sonraki dal kenarlarının miktarı yanlış"
+
+#: cfg.c:917
+#, c-format
+msgid "basic block %d pred edge is corrupted"
+msgstr "%d. temel bloğun öncel kenarı bozuk"
+
+#: cfg.c:943
+#, c-format
+msgid "basic block %i edge lists are corrupted"
+msgstr "temel blok %i kenar listesi bozuk"
+
+#: cfg.c:955
+msgid "verify_flow_info failed"
+msgstr "verify_flow_info başarısız"
+
+#: cfgloop.c:1134
#, c-format
msgid "Size of loop %d should be %d, not %d."
msgstr "%d. döngünün boyutu %d olmalı, %d değil."
-#: cfgloop.c:1126
+#: cfgloop.c:1153
#, c-format
msgid "Bb %d do not belong to loop %d."
msgstr "Bb %d %d. döngünün üyesi değil."
-#: cfgloop.c:1144
+#: cfgloop.c:1171
#, c-format
msgid "Loop %d's header does not have exactly 2 entries."
msgstr "%d. döngünün başlığının 2 girdisi olmalı."
-#: cfgloop.c:1152
+#: cfgloop.c:1179
#, c-format
msgid "Loop %d's latch does not have exactly 1 successor."
msgstr "%d. döngünün saklayıcısının 1 ardılı olmalı."
-#: cfgloop.c:1157
+#: cfgloop.c:1184
#, c-format
msgid "Loop %d's latch does not have header as successor."
msgstr "%d. döngünün saklayıcısının ardıl olarak başlığı yok."
-#: cfgloop.c:1162
+#: cfgloop.c:1189
#, c-format
msgid "Loop %d's latch does not belong directly to it."
msgstr "%d. döngünün saklayıcısı doğrudan kendisinin üyesi değil."
-#: cfgloop.c:1168
+#: cfgloop.c:1195
#, c-format
msgid "Loop %d's header does not belong directly to it."
msgstr "%d. döngünün başlığı doğrudan kendisinin üyesi değil."
-#: cfgrtl.c:1774
+#: cfgloop.c:1201
+#, fuzzy, c-format
+msgid "Loop %d's latch is marked as part of irreducible region."
+msgstr "%d. döngünün saklayıcısı doğrudan kendisinin üyesi değil."
+
+#: cfgloop.c:1231
#, c-format
-msgid "bb %d on wrong place"
-msgstr "bb %d yanlış yerde"
+msgid "Basic block %d should be marked irreducible."
+msgstr ""
-#: cfgrtl.c:1780
+#: cfgloop.c:1237
#, c-format
-msgid "prev_bb of %d should be %d, not %d"
-msgstr "%d'nin prev_bb'si %d olmalıydı, %d değil"
+msgid "Basic block %d should not be marked irreducible."
+msgstr ""
+
+#: cfgloop.c:1245
+#, c-format
+msgid "Edge from %d to %d should be marked irreducible."
+msgstr ""
+
+#: cfgloop.c:1252
+#, c-format
+msgid "Edge from %d to %d should not be marked irreducible."
+msgstr ""
-#: cfgrtl.c:1800
+#: cfgrtl.c:1877
#, c-format
msgid "end insn %d for block %d not found in the insn stream"
msgstr "%2$d. bloğunun son komutu %1$d komut akışı içinde yok."
-#: cfgrtl.c:1814
+#: cfgrtl.c:1891
#, c-format
msgid "insn %d is in multiple basic blocks (%d and %d)"
msgstr "komut %d birden fazla temel bloğun içinde (%d ve %d)"
-#: cfgrtl.c:1826
+#: cfgrtl.c:1903
#, c-format
msgid "head insn %d for block %d not found in the insn stream"
msgstr "%2$d. bloğun ilk komutu %1$d komut akışı içinde yok."
-#: cfgrtl.c:1848
-#, c-format
-msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
+#: cfgrtl.c:1925
+#, fuzzy
+msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i"
msgstr "verify_flow_info: REG_BR_PROB ile cfg %i %i eÅŸleÅŸmiyor"
-#: cfgrtl.c:1855
-#, c-format
-msgid "verify_flow_info: Wrong count of block %i %i"
-msgstr "verify_flow_info: blok %i %i sayısı yanlış"
-
-#: cfgrtl.c:1861
-#, c-format
-msgid "verify_flow_info: Wrong frequency of block %i %i"
-msgstr "verify_flow_info: block %i %i sıklığı yanlış"
-
-#: cfgrtl.c:1869
-#, c-format
-msgid "verify_flow_info: Duplicate edge %i->%i"
-msgstr "verify_flow_info: yinelenmiÅŸ kenar %i->%i"
-
-#: cfgrtl.c:1875
-#, c-format
-msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
-msgstr "verify_flow_info: yinelenmiş kenar %i->%i %i olasılığı yanlış"
-
-#: cfgrtl.c:1881
-#, c-format
-msgid "verify_flow_info: Wrong count of edge %i->%i %i"
-msgstr "verify_flow_info: kenar %i->%i %i sayısı yanlış"
-
-#: cfgrtl.c:1911
-#, c-format
-msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
-msgstr "verify_flow_info: ardcıl %i->%i için blok sayısı yanlış"
-
-#: cfgrtl.c:1926
-#, c-format
-msgid "verify_flow_info: Incorrect fallthru %i->%i"
-msgstr "verify_flow_info: ardcıl %i->%i yanlış"
-
-#: cfgrtl.c:1928
-msgid "wrong insn in the fallthru edge"
-msgstr "ardcıl kenarda yanlış komut"
-
-#: cfgrtl.c:1935
-#, c-format
-msgid "verify_flow_info: Basic block %d succ edge is corrupted"
-msgstr "verify_flow_info: %d. temel bloğun ardıl kenarı bozuk"
-
-#: cfgrtl.c:1951
+#: cfgrtl.c:1953
#, c-format
msgid "Missing REG_EH_REGION note in the end of bb %i"
msgstr "bb %i'nin sonunda REG_EH_REGION bilgisi eksik"
-#: cfgrtl.c:1959
+#: cfgrtl.c:1961
#, c-format
msgid "Too many outgoing branch edges from bb %i"
msgstr "bb %i'den çıkan dal kenarı çok fazla"
-#: cfgrtl.c:1964
+#: cfgrtl.c:1966
#, c-format
msgid "Fallthru edge after unconditional jump %i"
msgstr "koşulsuz jump %i den sonra ardcıl kenar"
-#: cfgrtl.c:1969
-#, c-format
-msgid "Wrong amount of branch edges after unconditional jump %i"
-msgstr "Koşulsuz jump %i den sonraki dal kenarlarının miktarı yanlış"
-
-#: cfgrtl.c:1975
+#: cfgrtl.c:1977
#, c-format
msgid "Wrong amount of branch edges after conditional jump %i"
msgstr "koşullu jump %i den sonraki dal kenarlarını miktarı yanlış"
-#: cfgrtl.c:1980
+#: cfgrtl.c:1982
#, c-format
msgid "Call edges for non-call insn in bb %i"
msgstr "bb %i içindeki çağrı olmayan komut için çağrı kenarları"
-#: cfgrtl.c:1989
+#: cfgrtl.c:1991
#, c-format
msgid "Abnormal edges for no purpose in bb %i"
msgstr "bb %i içinde normaldışı amaçsız kenar sayısı "
-#: cfgrtl.c:2004
-#, c-format
-msgid "missing barrier after block %i"
-msgstr "%i. bloktan sonraki sınır eksik"
-
-#: cfgrtl.c:2014
-#, c-format
-msgid "basic block %d pred edge is corrupted"
-msgstr "%d. temel bloğun öncel kenarı bozuk"
-
-#: cfgrtl.c:2031
+#: cfgrtl.c:2001
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is NULL"
msgstr "komut %d %d. temel bloğun içinde ama block_for_insn NULL"
-#: cfgrtl.c:2035
+#: cfgrtl.c:2005
#, c-format
msgid "insn %d inside basic block %d but block_for_insn is %i"
msgstr "komut %d %d. temel bloğun içinde ama block_for_insn %i"
-#: cfgrtl.c:2049 cfgrtl.c:2059
+#: cfgrtl.c:2019 cfgrtl.c:2029
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
msgstr "NOTE_INSN_BASIC_BLOCK %d. blok için eksik"
-#: cfgrtl.c:2072
+#: cfgrtl.c:2042
#, c-format
msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
msgstr "%d. NOTE_INSN_BASIC_BLOCK %d. temel bloğun ortasında"
-#: cfgrtl.c:2084
+#: cfgrtl.c:2052
#, c-format
msgid "in basic block %d:"
msgstr "%d. temel blok içinde:"
-#: cfgrtl.c:2085
+#: cfgrtl.c:2053
msgid "flow control insn inside a basic block"
msgstr "akış kontrol komutu bir temel bloğun içinde"
-#: cfgrtl.c:2104
+#: cfgrtl.c:2099
#, c-format
-msgid "basic block %i edge lists are corrupted"
-msgstr "temel blok %i kenar listesi bozuk"
+msgid "missing barrier after block %i"
+msgstr "%i. bloktan sonraki sınır eksik"
-#: cfgrtl.c:2119
-msgid "basic blocks not numbered consecutively"
+#: cfgrtl.c:2112
+#, c-format
+msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
+msgstr "verify_flow_info: ardcıl %i->%i için blok sayısı yanlış"
+
+#: cfgrtl.c:2127
+#, c-format
+msgid "verify_flow_info: Incorrect fallthru %i->%i"
+msgstr "verify_flow_info: ardcıl %i->%i yanlış"
+
+#: cfgrtl.c:2129
+msgid "wrong insn in the fallthru edge"
+msgstr "ardcıl kenarda yanlış komut"
+
+#: cfgrtl.c:2146
+#, fuzzy
+msgid "basic blocks not laid down consecutively"
msgstr "temel bloklar ardışık olarak numaralı değil"
-#: cfgrtl.c:2144
+#: cfgrtl.c:2171
msgid "insn outside basic block"
msgstr "komut temel bloğun dışında"
-#: cfgrtl.c:2152
+#: cfgrtl.c:2179
msgid "return not followed by barrier"
msgstr "return'den sonra sınır gelmiyor"
-#: cfgrtl.c:2157
+#: cfgrtl.c:2186
#, c-format
msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr "komut zinciri (%d) içindeki bb notlarının sayısı != n_basic_blocks (%d)"
-#: cfgrtl.c:2161
-msgid "verify_flow_info failed"
-msgstr "verify_flow_info başarısız"
+#: cgraph.c:161
+#, fuzzy
+msgid "function body not available"
+msgstr "işlev özümlenemez"
+
+#: cgraph.c:163 cgraphunit.c:341
+#, fuzzy
+msgid "redefined extern inline functions are not considered for inlining"
+msgstr "Bir özümlemeli işlev özümlenemediğinde uyarır"
+
+#: cgraph.c:166 cgraphunit.c:346
+#, fuzzy
+msgid "function not considered for inlining"
+msgstr "işlev özümlenemez"
+
+#: cgraph.c:168 cgraphunit.c:344
+#, fuzzy
+msgid "function not inlinable"
+msgstr "işlev özümlenemez"
+
+#: cgraph.c:476
+#, fuzzy
+msgid "%D renamed after being referenced in assembly"
+msgstr "dllimport ilintileme ile iliÅŸkilendirildikten sonra '%s' %s."
-#: collect2.c:425
+#: cgraphunit.c:1042
+msgid "--param large-function-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1055
+msgid "--param large-function-growth limit reached while inlining the caller"
+msgstr ""
+
+#: cgraphunit.c:1120
+msgid "--param max-inline-insns-single limit reached"
+msgstr ""
+
+#: cgraphunit.c:1144
+msgid "--param max-inline-insns-single limit reached after inlining into the callee"
+msgstr ""
+
+#: cgraphunit.c:1221
+msgid "--param inline-unit-growth limit reached"
+msgstr ""
+
+#: cgraphunit.c:1293 cgraphunit.c:1437
+msgid "recursive inlining"
+msgstr ""
+
+#: collect2.c:406
msgid "internal error"
msgstr "iç hata"
-#: collect2.c:934
+#: collect2.c:894
msgid "no arguments"
msgstr "argüman yok"
-#: collect2.c:1263 collect2.c:1411 collect2.c:1444
+#: collect2.c:1226 collect2.c:1374 collect2.c:1407
#, c-format
msgid "fopen %s"
msgstr "fopen %s"
-#: collect2.c:1266 collect2.c:1416 collect2.c:1447
+#: collect2.c:1229 collect2.c:1379 collect2.c:1410
#, c-format
msgid "fclose %s"
msgstr "fclose %s"
-#: collect2.c:1275
+#: collect2.c:1238
#, c-format
msgid "collect2 version %s"
msgstr "collect2 %s sürümü"
-#: collect2.c:1365
+#: collect2.c:1328
#, c-format
msgid "%d constructor(s) found\n"
msgstr "%d kurucu bulundu\n"
-#: collect2.c:1366
+#: collect2.c:1329
#, c-format
msgid "%d destructor(s) found\n"
msgstr "%d serbestleÅŸtirici bulundu\n"
-#: collect2.c:1367
+#: collect2.c:1330
#, c-format
msgid "%d frame table(s) found\n"
msgstr "%d çerçeve tablosu bulundu\n"
-#: collect2.c:1508
+#: collect2.c:1470
#, c-format
msgid "%s terminated with signal %d [%s]%s"
msgstr "%s %d sinyali ile sonlandırıldı [%s]%s"
-#: collect2.c:1527
+#: collect2.c:1488
#, c-format
msgid "%s returned %d exit status"
msgstr "%s %d çıkış durumu ile sonuçlandı"
-#: collect2.c:1555
+#: collect2.c:1513
#, c-format
msgid "[cannot find %s]"
msgstr "[%s bulunamıyor]"
-#: collect2.c:1570
+#: collect2.c:1528
#, c-format
msgid "cannot find `%s'"
msgstr "`%s' bulunamıyor"
-#: collect2.c:1581 collect2.c:1584
+#: collect2.c:1539 collect2.c:1542
#, c-format
msgid "redirecting stdout: %s"
msgstr "standart çıktıya yönlendirme: %s"
-#: collect2.c:1627
+#: collect2.c:1581
#, c-format
msgid "[Leaving %s]\n"
msgstr "[%s bırakılıyor]\n"
-#: collect2.c:1870
+#: collect2.c:1801
#, c-format
msgid ""
"\n"
@@ -3798,86 +3922,86 @@ msgstr ""
"\n"
"write_c_file - çıktı ismi %s, önek %s\n"
-#: collect2.c:2082
+#: collect2.c:2005
msgid "cannot find `nm'"
msgstr "`nm' bulunamıyor"
-#: collect2.c:2092 collect2.c:2533
+#: collect2.c:2015 collect2.c:2444
msgid "pipe"
msgstr "veri yolu"
-#: collect2.c:2096 collect2.c:2537
+#: collect2.c:2019 collect2.c:2448
msgid "fdopen"
msgstr "fdopen"
-#: collect2.c:2122 collect2.c:2563
+#: collect2.c:2045 collect2.c:2474
#, c-format
msgid "dup2 %d 1"
msgstr "dup2 %d 1"
-#: collect2.c:2125 collect2.c:2128 collect2.c:2141 collect2.c:2566
-#: collect2.c:2569 collect2.c:2582
+#: collect2.c:2048 collect2.c:2051 collect2.c:2064 collect2.c:2477
+#: collect2.c:2480 collect2.c:2493
#, c-format
msgid "close %d"
msgstr "close %d"
-#: collect2.c:2131 collect2.c:2572
+#: collect2.c:2054 collect2.c:2483
#, c-format
msgid "execv %s"
msgstr "execv %s"
-#: collect2.c:2185
+#: collect2.c:2108
#, c-format
msgid "init function found in object %s"
msgstr "init iÅŸlevi %s nesnesinde bulundu"
-#: collect2.c:2193
+#: collect2.c:2116
#, c-format
msgid "fini function found in object %s"
msgstr "fini iÅŸlevi %s nesnesinde bulundu"
-#: collect2.c:2216 collect2.c:2621
+#: collect2.c:2139 collect2.c:2532
msgid "fclose"
msgstr "fclose"
-#: collect2.c:2261
+#: collect2.c:2181
#, c-format
msgid "unable to open file '%s'"
msgstr "'%s' dosyası açılamıyor"
-#: collect2.c:2263
+#: collect2.c:2183
#, c-format
msgid "unable to stat file '%s'"
msgstr "'%s' dosyası durumlanamıyor"
-#: collect2.c:2269
+#: collect2.c:2189
#, c-format
msgid "unable to mmap file '%s'"
msgstr "'%s' dosyası mmap'lenemiyor"
-#: collect2.c:2422
+#: collect2.c:2335
msgid "not found\n"
msgstr "yok\n"
-#: collect2.c:2424 collect2.c:2600
+#: collect2.c:2337 collect2.c:2511
#, c-format
msgid "dynamic dependency %s not found"
msgstr "%s dinamik bağımlılığı yok"
-#: collect2.c:2444
+#: collect2.c:2356
#, c-format
msgid "bad magic number in file '%s'"
msgstr "'%s' dosyasında sihirli sayı hatalı"
-#: collect2.c:2466
+#: collect2.c:2378
msgid "dynamic dependencies.\n"
msgstr "dinamik bağımlılıklar.\n"
-#: collect2.c:2524
+#: collect2.c:2435
msgid "cannot find `ldd'"
msgstr "`ldd' bulunamıyor"
-#: collect2.c:2585
+#: collect2.c:2496
msgid ""
"\n"
"ldd output with constructors/destructors.\n"
@@ -3885,1369 +4009,1119 @@ msgstr ""
"\n"
"kuruculu/yıkıcılı ldd çıktısı.\n"
-#: collect2.c:2612
+#: collect2.c:2523
#, c-format
msgid "unable to open dynamic dependency '%s'"
msgstr "'%s' dinamik bağımlılığı açılamıyor"
-#: collect2.c:2726
+#: collect2.c:2683
#, c-format
msgid "%s: not a COFF file"
msgstr "%s: bir COFF dosyası değil"
-#: collect2.c:2845
+#: collect2.c:2802
#, c-format
msgid "%s: cannot open as COFF file"
msgstr "%s: bir COFF dosyası olarak açılamıyor"
-#: collect2.c:2901
+#: collect2.c:2857
#, c-format
msgid "library lib%s not found"
msgstr "lib%s kitaplığı bulunamadı"
-#: collect2.c:3028
-#, c-format
-msgid "open %s"
-msgstr "open %s"
-
-#: collect2.c:3051
-msgid "incompatibilities between object file & expected values"
-msgstr "nesne dosyası ile umulan değerler arasında uyumsuzluklar var"
-
-#: collect2.c:3124
+#: combine.c:13027
#, c-format
msgid ""
+";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
"\n"
-"Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
msgstr ""
+";; Karıştırıcı istatistikleri: %d deneme, %d ikame (%d yeni alan gerekir),\n"
+";; %d başarı.\n"
"\n"
-"İşlenen sembol tablosu #%d, göreli konumu = 0x%.8lx, cinsi = %s\n"
-
-#: collect2.c:3133
-msgid "string section missing"
-msgstr "dizge bölümü yok"
-#: collect2.c:3136
-msgid "section pointer missing"
-msgstr "bölüm göstericisi yok"
-
-#: collect2.c:3184
-msgid "no symbol table found"
-msgstr "hiç sembol tablosu yok"
-
-#: collect2.c:3197
-msgid "no cmd_strings found"
-msgstr "hiç komut-dizgesi yok"
-
-#: collect2.c:3209
+#: combine.c:13036
+#, c-format
msgid ""
"\n"
-"Updating header and load commands.\n"
-"\n"
+";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
+";; %d successes.\n"
msgstr ""
"\n"
-"Başlık ve yük komutları güncelleniyor.\n"
-"\n"
+";; Birleştirici toplamları: %d deneme, %d ikame (%d yeni alan gerekir),\n"
+";; %d başarılı.\n"
-#: collect2.c:3216
-#, c-format
-msgid "load command map, %d cmds, new size %ld.\n"
-msgstr "yükleme komutu eşlemi, %d komut, yeni boyut %ld.\n"
+#: convert.c:70
+msgid "cannot convert to a pointer type"
+msgstr "bir gösterici türüne dönüştürülemez"
-#: collect2.c:3247
-msgid ""
-"writing load commands.\n"
-"\n"
-msgstr ""
-"yük komutları yazılıyor.\n"
-"\n"
+#: convert.c:267
+msgid "pointer value used where a floating point value was expected"
+msgstr "bir gerçel sayı değer umulurken gösterici değeri kullanılmış"
-#: collect2.c:3267
-#, c-format
-msgid "close %s"
-msgstr "close %s"
+#: convert.c:271
+msgid "aggregate value used where a float was expected"
+msgstr "bir gerçel sayı umulurken küme değeri kullanılmış"
-#: collect2.c:3341
-msgid "could not convert 0x%l.8x into a region"
-msgstr "0x%l.8x bir bölge içine dönüştürülemedi"
+#: convert.c:296
+msgid "conversion to incomplete type"
+msgstr "tamamlanmamış türe dönüşüm"
-#: collect2.c:3345
-#, c-format
-msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
-msgstr "%s işlev, %d bölge, offset = %ld (0x%.8lx)\n"
+#: convert.c:600 convert.c:678
+msgid "can't convert between vector values of different size"
+msgstr "farklı boydaki vektör değerleri arasında dönüşüm yapılamaz"
-#: collect2.c:3472
-msgid "bad magic number"
-msgstr "sihirli sayı hatalı"
+#: convert.c:606
+msgid "aggregate value used where an integer was expected"
+msgstr "bir tamsayı gerekirken küme değeri kullanılmış"
-#: collect2.c:3473
-msgid "bad header version"
-msgstr "başlık sürümü hatalı"
+#: convert.c:657 f/com.c:1101
+msgid "pointer value used where a complex was expected"
+msgstr "karmaşık sayı gereken yerde gösterici değeri kullanılmış"
-#: collect2.c:3474
-msgid "bad raw header version"
-msgstr "temel başlık sürümü hatalı"
+#: convert.c:661 f/com.c:1103
+msgid "aggregate value used where a complex was expected"
+msgstr "karmaşık sayı gereken yerde küme değeri kullanılmış"
-#: collect2.c:3475
-msgid "raw header buffer too small"
-msgstr "temel başlık tamponu çok küçük"
+#: convert.c:684
+msgid "can't convert value to a vector"
+msgstr "değer bir vektöre dönüştürülemez"
-#: collect2.c:3476
-msgid "old raw header file"
-msgstr "eski temel başlık dosyası"
+#: coverage.c:164
+#, fuzzy, c-format
+msgid "`%s' is not a gcov data file"
+msgstr "\"%s\" geçerli bir dosya ismi değil"
-#: collect2.c:3477
-msgid "unsupported version"
-msgstr "desteklenmeyen sürüm"
+#: coverage.c:175
+#, fuzzy, c-format
+msgid "`%s' is version `%.4s', expected version `%.4s'"
+msgstr "gcc sürücüsü %s sürümü gcc %s sürümünü çalıştırıyor\n"
-#: collect2.c:3479
+#: coverage.c:255 coverage.c:263
#, c-format
-msgid "unknown {de,en}code_mach_o_hdr return value %d"
-msgstr "bilinmeyen {de,en}code_mach_o_hdr sonuç değeri %d"
+msgid "coverage mismatch for function %u while reading execution counters."
+msgstr ""
-#: collect2.c:3499
+#: coverage.c:257 coverage.c:340
#, c-format
-msgid "fstat %s"
-msgstr "fstat %s"
+msgid "checksum is %x instead of %x"
+msgstr ""
-#: collect2.c:3536 collect2.c:3584
+#: coverage.c:265 coverage.c:348
#, c-format
-msgid "lseek %s 0"
-msgstr "lseek %s 0"
+msgid "number of counters is %d instead of %d"
+msgstr ""
-#: collect2.c:3540
-#, c-format
-msgid "read %s"
-msgstr "read %s"
+#: coverage.c:271
+#, fuzzy, c-format
+msgid "cannot merge separate %s counters for function %u"
+msgstr "kesme işlevinde va_start kullanılamaz"
-#: collect2.c:3543
-#, c-format
-msgid "read %ld bytes, expected %ld, from %s"
-msgstr "%3$s'den %2$ld bayt okunması umulurken %1$ld bayt okundu"
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' has overflowed"
+msgstr "ayrıştırıcı yığın taşması"
-#: collect2.c:3564
-#, c-format
-msgid "msync %s"
-msgstr "msync %s"
+#: coverage.c:296
+#, fuzzy, c-format
+msgid "`%s' is corrupted"
+msgstr "`%s' eski kullanım"
-#: collect2.c:3571
+#: coverage.c:319
#, c-format
-msgid "munmap %s"
-msgstr "munmap %s"
+msgid "file %s not found, execution counts assumed to be zero"
+msgstr "%s bulunamadı, çalıştırma sayısı sıfır kabul edildi"
-#: collect2.c:3588
-#, c-format
-msgid "write %s"
-msgstr "write %s"
+#: coverage.c:329
+#, fuzzy, c-format
+msgid "no coverage for function '%s' found."
+msgstr "`%s' işlevi için geçersiz saklama sınıfı"
-#: collect2.c:3591
+#: coverage.c:337 coverage.c:345
#, c-format
-msgid "wrote %ld bytes, expected %ld, to %s"
-msgstr "%3$s'e %2$ld bayt yazılması umulurken %1$ld bayt yazıldı"
+msgid "coverage mismatch for function '%s' while reading counter '%s'."
+msgstr ""
-#: combine.c:13222
-#, c-format
-msgid ""
-";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
-"\n"
+#: coverage.c:492
+#, fuzzy, c-format
+msgid "cannot open %s"
+msgstr "%s açılamıyor"
+
+#: coverage.c:527
+#, fuzzy, c-format
+msgid "error writing `%s'"
+msgstr "%s e yazarken hata"
+
+#. XXX should be DL_SORRY
+#: cppcharset.c:653
+#, fuzzy, c-format
+msgid "conversion from %s to %s not supported by iconv"
+msgstr "NaN'dan unsigned int'e dönüşüm"
+
+#: cppcharset.c:656
+msgid "iconv_open"
msgstr ""
-";; Karıştırıcı istatistikleri: %d deneme, %d ikame (%d yeni alan gerekir),\n"
-";; %d başarı.\n"
-"\n"
-#: combine.c:13232
+#. XXX should be DL_SORRY
+#: cppcharset.c:664
#, c-format
-msgid ""
-"\n"
-";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
-";; %d successes.\n"
+msgid "no iconv implementation, cannot convert from %s to %s"
msgstr ""
-"\n"
-";; Birleştirici toplamları: %d deneme, %d ikame (%d yeni alan gerekir),\n"
-";; %d başarılı.\n"
-#: convert.c:69
-msgid "cannot convert to a pointer type"
-msgstr "bir gösterici türüne dönüştürülemez"
+#: cppcharset.c:808
+#, fuzzy
+msgid "universal character names are only valid in C++ and C99"
+msgstr "evrensel karakter ismi '\\U%08x' tanıtıcı içinde geçerli değil"
-#: convert.c:102
-msgid "pointer value used where a floating point value was expected"
-msgstr "bir gerçel sayı değer umulurken gösterici değeri kullanılmış"
+#: cppcharset.c:811
+#, c-format
+msgid "the meaning of '\\%c' is different in traditional C"
+msgstr "`\\%c'nin anlamı geleneksel C'de farklıdır"
-#: convert.c:106
-msgid "aggregate value used where a float was expected"
-msgstr "bir gerçel sayı umulurken küme değeri kullanılmış"
+#: cppcharset.c:837
+#, fuzzy, c-format
+msgid "incomplete universal character name %.*s"
+msgstr "evrensel karakter ismi tamamlanmamış"
-#: convert.c:132
-msgid "conversion to incomplete type"
-msgstr "tamamlanmamış türe dönüşüm"
+#: cppcharset.c:849
+#, fuzzy, c-format
+msgid "%.*s is not a valid universal character"
+msgstr "`%T::%D' geçerli bir bildirici değil"
-#: convert.c:414 convert.c:494
-msgid "can't convert between vector values of different size"
-msgstr "farklı boydaki vektör değerleri arasında dönüşüm yapılamaz"
+#: cppcharset.c:859
+#, fuzzy, c-format
+msgid "universal character %.*s is not valid in an identifier"
+msgstr "evrensel karakter ismi '\\U%08x' tanıtıcı içinde geçerli değil"
-#: convert.c:420
-msgid "aggregate value used where an integer was expected"
-msgstr "bir tamsayı gerekirken küme değeri kullanılmış"
+#: cppcharset.c:863
+#, fuzzy, c-format
+msgid "universal character %.*s is not valid at the start of an identifier"
+msgstr "evrensel karakter ismi '\\U%08x' tanıtıcı içinde geçerli değil"
-#: convert.c:472 f/com.c:1100
-msgid "pointer value used where a complex was expected"
-msgstr "karmaşık sayı gereken yerde gösterici değeri kullanılmış"
+#: cppcharset.c:898
+#, fuzzy
+msgid "converting UCN to source character set"
+msgstr "NULL'dan gösterici olmayan türe dönüşüm"
-#: convert.c:476 f/com.c:1102
-msgid "aggregate value used where a complex was expected"
-msgstr "karmaşık sayı gereken yerde küme değeri kullanılmış"
+#: cppcharset.c:902
+#, fuzzy
+msgid "converting UCN to execution character set"
+msgstr "NULL'dan gösterici olmayan türe dönüşüm"
-#: convert.c:500
-msgid "can't convert value to a vector"
-msgstr "değer bir vektöre dönüştürülemez"
+#: cppcharset.c:967
+msgid "the meaning of '\\x' is different in traditional C"
+msgstr "'\\x'in anlamı geleneksel C'de farklıdır"
-#: cpperror.c:113
+#: cppcharset.c:984 f/lex.c:580
+msgid "\\x used with no following hex digits"
+msgstr "\\x izleyen onaltılık rakamlar olmaksızın kullanılmış"
+
+#: cppcharset.c:991
+msgid "hex escape sequence out of range"
+msgstr "onaltılık önceleme dizgesi kapsamdışı"
+
+#: cppcharset.c:1030
+msgid "octal escape sequence out of range"
+msgstr "sekizlik önceleme dizgesi kapsamdışı"
+
+#: cppcharset.c:1098
+msgid "the meaning of '\\a' is different in traditional C"
+msgstr "`\\a'nın anlamı geleneksel C'de farklıdır"
+
+#: cppcharset.c:1105
+#, c-format
+msgid "non-ISO-standard escape sequence, '\\%c'"
+msgstr "ISO standardı olmayan önceleme dizgesi, '\\%c'"
+
+#: cppcharset.c:1113
+#, c-format
+msgid "unknown escape sequence '\\%c'"
+msgstr "bilinmeyen önceleme dizgesi '\\%c'"
+
+#: cppcharset.c:1116
+#, c-format
+msgid "unknown escape sequence: '\\%03o'"
+msgstr "bilinmeyen önceleme dizgesi: '\\%03o'"
+
+#: cppcharset.c:1122
+#, fuzzy
+msgid "converting escape sequence to execution character set"
+msgstr "önceleme dizgesi karakter için kapsam dışı"
+
+#: cppcharset.c:1181
+msgid "converting to execution character set"
+msgstr ""
+
+#: cppcharset.c:1244 cppcharset.c:1307
+msgid "character constant too long for its type"
+msgstr "karakter sabiti, türü için çok uzun"
+
+#: cppcharset.c:1247
+msgid "multi-character character constant"
+msgstr "çoklu-karakter karakter sabiti"
+
+#: cppcharset.c:1339
+msgid "empty character constant"
+msgstr "karakter sabit boÅŸ"
+
+#: cppcharset.c:1378
+#, fuzzy, c-format
+msgid "failure to convert %s to %s"
+msgstr "`%E' den `%T' ye dönüşüm yapılamaz"
+
+#: cpperror.c:110 diagnostic.def:5
msgid "warning: "
msgstr "uyarı: "
-#: cpperror.c:115
+#: cpperror.c:112
msgid "internal error: "
msgstr "iç hata: "
-#: cpperror.c:189
+#: cpperror.c:174
msgid "stdout"
msgstr "stdÇ"
-#: cpperror.c:191 gcc.c:6428
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
-#: cppexp.c:199
+#: cppexp.c:192
msgid "too many decimal points in number"
msgstr "sayı içindeki ondalık nokta sayısı çok fazla"
-#: cppexp.c:219
+#: cppexp.c:212
#, c-format
msgid "invalid digit \"%c\" in octal constant"
msgstr "sekizlik sabit içindeki \"%c\" geçersiz"
-#: cppexp.c:225
+#: cppexp.c:218
msgid "use of C99 hexadecimal floating constant"
msgstr "C99 onaltılık gerçel sayı sabit kullanımı"
-#: cppexp.c:234
+#: cppexp.c:227
msgid "exponent has no digits"
msgstr "üs rakam içermiyor"
-#: cppexp.c:241
+#: cppexp.c:234
msgid "hexadecimal floating constants require an exponent"
msgstr "onaltılık gerçel sabitler bir üs gerektirir"
-#: cppexp.c:247
+#: cppexp.c:240
#, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "gerçel sabitin \"%.*s\" soneki geçersiz"
-#: cppexp.c:257 cppexp.c:282
+#: cppexp.c:250 cppexp.c:275
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr "geleneksel C \"%.*s\" sonekini kullanmaz"
-#: cppexp.c:268
+#: cppexp.c:261
#, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "tamsayı sabitte sonek \"%.*s\" soneki geçersiz"
-#: cppexp.c:289
+#: cppexp.c:283
msgid "use of C99 long long integer constant"
msgstr "ISO C99 long long tamsayı sabitleri yasaklar"
-#: cppexp.c:295
+#: cppexp.c:290
msgid "imaginary constants are a GCC extension"
msgstr "sanal sabitler bir GCC geniÅŸletmesidir"
-#: cppexp.c:383
+#: cppexp.c:376
msgid "integer constant is too large for its type"
msgstr "tamsayı sabit, türü için oldukça büyük"
-#: cppexp.c:395
+#: cppexp.c:388
msgid "integer constant is so large that it is unsigned"
msgstr "tamsayı sabit unsigned olarak oldukça büyük"
-#: cppexp.c:482
+#: cppexp.c:470
msgid "missing ')' after \"defined\""
msgstr "\"defined\" dan sonra ')' eksik"
-#: cppexp.c:489
+#: cppexp.c:477
msgid "operator \"defined\" requires an identifier"
msgstr "\"defined\" işleci bir tanımlayıcı gerektirir"
-#: cppexp.c:497
+#: cppexp.c:485
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr "(C++'da \"%s\" \"%s\" için bir alternatif dizgeciktir)"
-#: cppexp.c:507
+#: cppexp.c:495
msgid "this use of \"defined\" may not be portable"
msgstr "\"defined\" bu kullanımıyla uyarlanabilir olmayabilir"
-#: cppexp.c:545
+#: cppexp.c:531
msgid "floating constant in preprocessor expression"
msgstr "önişlemci ifadesinde gerçel sayı taşması"
-#: cppexp.c:551
+#: cppexp.c:537
msgid "imaginary number in preprocessor expression"
msgstr "önişlemci ifadesinde sanal sayı"
-#: cppexp.c:596
-#, c-format
-msgid "ISO C++ does not permit \"%s\" in #if"
-msgstr "ISO C++ #if içinde \"%s\" kullanımına izin vermez"
-
-#: cppexp.c:604
+#: cppexp.c:582
#, c-format
msgid "\"%s\" is not defined"
msgstr "\"%s\" tanımlı değil"
-#: cppexp.c:737 cppexp.c:772
+#: cppexp.c:714 cppexp.c:743
#, c-format
msgid "missing binary operator before token \"%s\""
msgstr "\"%s\" dizgeciğinden önceki iki terimli işleç eksik"
-#: cppexp.c:756
-#, c-format
-msgid "invalid character '%c' in #if"
-msgstr "#if ifadesinde geçersiz karakter '%c'"
-
-#: cppexp.c:758
-#, c-format
-msgid "invalid character '\\%03o' in #if"
-msgstr "#if içinde '\\%03o' karakteri geçersiz"
-
-#: cppexp.c:763
+#: cppexp.c:734
#, c-format
msgid "token \"%s\" is not valid in preprocessor expressions"
msgstr "\"%s\" dizgeciği önişlemci ifadelerinde geçersizdir"
-#: cppexp.c:782
+#: cppexp.c:753
msgid "void expression between '(' and ')'"
msgstr "'(' ve ')' arasında void ifade"
-#: cppexp.c:785
+#: cppexp.c:756
msgid "#if with no expression"
msgstr "#if ifadesiz"
-#: cppexp.c:787
+#: cppexp.c:758
#, c-format
msgid "operator '%s' has no right operand"
msgstr "`%s' işlecinin sağ tarafı yok"
-#: cppexp.c:813
+#: cppexp.c:784
msgid " ':' without preceding '?'"
msgstr "':' den önce '?' yok"
-#: cppexp.c:840
+#: cppexp.c:811
msgid "unbalanced stack in #if"
msgstr "#if ifadesinde karşılıksız yığın"
-#: cppexp.c:862
+#: cppexp.c:830
#, c-format
msgid "impossible operator '%u'"
msgstr "işleç '%u' imkansız"
-#: cppexp.c:954
+#: cppexp.c:922
msgid "missing ')' in expression"
msgstr "ifadede ')' eksik"
-#: cppexp.c:975
+#: cppexp.c:943
msgid "'?' without following ':'"
msgstr "'?' dan sonra ':' yok"
-#: cppexp.c:985
+#: cppexp.c:953
msgid "integer overflow in preprocessor expression"
msgstr "önişlemci ifadesinde tamsayı taşması"
-#: cppexp.c:990
+#: cppexp.c:958
msgid "missing '(' in expression"
msgstr "ifadede '(' eksik"
-#: cppexp.c:1026
+#: cppexp.c:990
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr "\"%s\"in soldaki terimi yükseltgenirken işaret değiştiriyor"
-#: cppexp.c:1031
+#: cppexp.c:995
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr "\"%s\"in sağdaki terimi yükseltgenirken işaret değiştiriyor"
-#: cppexp.c:1414
+#: cppexp.c:1352
msgid "comma operator in operand of #if"
msgstr "#if'in teriminde virgül"
-#: cppexp.c:1551
+#: cppexp.c:1483
msgid "division by zero in #if"
msgstr "#if içinde sıfırla bölme"
-#: cppfiles.c:411
+#: cppfiles.c:370
+msgid "NULL directory in find_file"
+msgstr ""
+
+#: cppfiles.c:397
+msgid "one or more PCH files were found, but they were invalid"
+msgstr ""
+
+#: cppfiles.c:400
+msgid "use -Winvalid-pch for more information"
+msgstr ""
+
+#: cppfiles.c:458
+#, c-format
+msgid "%s is a block device"
+msgstr "%s bir blok aygıtıdır"
+
+#: cppfiles.c:475
#, c-format
msgid "%s is too large"
msgstr "%s çok büyük"
-#: cppfiles.c:447
+#: cppfiles.c:510
#, c-format
msgid "%s is shorter than expected"
msgstr "%s beklenenden daha kısa"
-#: cppfiles.c:461
-#, c-format
-msgid "%s is a block device"
-msgstr "%s bir blok aygıtıdır"
-
-#: cppfiles.c:594
-#, c-format
-msgid "no include path in which to find %s"
+#: cppfiles.c:696
+#, fuzzy, c-format
+msgid "no include path in which to search for %s"
msgstr "%s arama yolunda include dosyaları yok"
-#: cppfiles.c:668
+#: cppfiles.c:956
msgid "Multiple include guards may be useful for:\n"
msgstr "Çoklu include önlemleri aşağıdakiler için kullanışlı olabilir:\n"
-#: cppfiles.c:1014
-msgid "absolute file name in remap_filename"
-msgstr "remap_filename içinde mutlak dosya ismi"
-
-#: cppinit.c:224
-#, c-format
-msgid "ignoring nonexistent directory \"%s\"\n"
-msgstr " olmayan \"%s\" dizini yoksayılıyor\n"
-
-#: cppinit.c:231
-#, c-format
-msgid "%s: Not a directory"
-msgstr "%s: Bir dizin deÄŸil"
-
-#: cppinit.c:287
-#, c-format
-msgid "ignoring duplicate directory \"%s\"\n"
-msgstr "tekrar belirtilen \"%s\" dizini yoksayılıyor\n"
-
-#: cppinit.c:325
-msgid " as it is a non-system directory that duplicates a system directory\n"
-msgstr " tekrarlayan bir sistem dizini olmayan dizin olarak deÄŸiÅŸtiriliyor\n"
-
-#: cppinit.c:891
+#: cppinit.c:387
msgid "cppchar_t must be an unsigned type"
msgstr "cppchar_t bir usigned tür olmalı"
-#: cppinit.c:895
+#: cppinit.c:391
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr "önişlemci aritmetiği %lu bitlik maksimum genişliğe sahip; hedef için %lu bit gerekiyor"
-#: cppinit.c:901
+#: cppinit.c:398
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr "CPP aritmetiği en azından bir hedef int kadar genişlikte olmalı "
-#: cppinit.c:904
+#: cppinit.c:401
msgid "target char is less than 8 bits wide"
msgstr "hedef char 8bitlik genişlikten küçük"
-#: cppinit.c:908
+#: cppinit.c:405
msgid "target wchar_t is narrower than target char"
msgstr "hedef wchar_t hedef char'dan daha dar"
-#: cppinit.c:912
+#: cppinit.c:409
msgid "target int is narrower than target char"
msgstr "hedef int hedef char'dan daha dar"
-#: cppinit.c:916
+#: cppinit.c:414
msgid "CPP half-integer narrower than CPP character"
msgstr "CPP half-integer'ı CPP character'dan daha dar"
-#: cppinit.c:920
+#: cppinit.c:418
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
msgstr "Bu konaktaki CPP %lu bitten büyük karakter sabitleriyle çalışamaz, hedef ise %lu bit gerektiriyor"
-#: cppinit.c:972
-msgid "#include \"...\" search starts here:\n"
-msgstr "#include \"...\" araması buradan başlıyor:\n"
-
-#: cppinit.c:976
-msgid "#include <...> search starts here:\n"
-msgstr "#include <...> araması buradan başlıyor:\n"
-
-#: cppinit.c:979
-msgid "End of search list.\n"
-msgstr "Arama listesi sonu.\n"
-
-#: cppinit.c:1057
-msgid "<built-in>"
-msgstr "<yerleÅŸik>"
-
-#: cppinit.c:1059
-msgid "<command line>"
-msgstr "<komut satırı>"
-
-#. Irix6 "cc -n32" and OSF4 cc have problems with char foo[] = ("string");
-#. I.e. a const string initializer with parens around it. That is
-#. what N_("string") resolves to, so we make no_* be macros instead.
-#: cppinit.c:1164
-#, c-format
-msgid "assertion missing after %s"
-msgstr "%s den sonra olumlama eksik"
-
-#: cppinit.c:1165
-#, c-format
-msgid "directory name missing after %s"
-msgstr "%s den sonra dizin ismi eksik"
-
-#: cppinit.c:1166
-#, c-format
-msgid "file name missing after %s"
-msgstr "%s den sonra dosya ismi eksik"
-
-#: cppinit.c:1167
-#, c-format
-msgid "macro name missing after %s"
-msgstr "%s den sonra makro ismi eksik"
-
-#: cppinit.c:1168
-#, c-format
-msgid "path name missing after %s"
-msgstr "%s den sonra dosya yolu ismi eksik"
-
-#: cppinit.c:1353
-msgid "-I- specified twice"
-msgstr "-I- iki kere belirtilmiÅŸ"
-
-#: cpplex.c:149
-#, c-format
-msgid "trigraph ??%c converted to %c"
-msgstr "??%c üçlü harfi %c olarak dönüştürüldü"
-
-#: cpplex.c:157
-#, c-format
-msgid "trigraph ??%c ignored"
-msgstr "??%c üçlü harfi yoksayıldı"
-
-#: cpplex.c:214
-msgid "backslash and newline separated by space"
-msgstr "boşlukla ayrılmış tersbölü ve satırsonu karakterleri"
-
-#: cpplex.c:221 cpptrad.c:158
-msgid "backslash-newline at end of file"
-msgstr "dosya sonunda tersbölü ve satırsonu"
-
-#: cpplex.c:287 cpptrad.c:199
-msgid "\"/*\" within comment"
-msgstr "açıklama içinde \"/*\" "
-
-#: cpplex.c:395
+#: cpplex.c:410
msgid "null character(s) ignored"
msgstr "null karakter(ler) yoksayıldı"
-#: cpplex.c:402
-#, c-format
-msgid "%s in preprocessing directive"
-msgstr "önişlemci yönergesi içinde %s"
+#: cpplex.c:445
+#, fuzzy
+msgid "'$' in identifier or number"
+msgstr "belirteç ya da sayı içinde '$' karakter(ler)i"
-#: cpplex.c:475
+#: cpplex.c:492
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr "zehirli \"%s\" kullanılmaya çalışılıyor"
-#: cpplex.c:483
+#: cpplex.c:500
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr "__VA_ARGS__ sadece argümanlarının sayısı değişebilen bir C99 makrosunun genişleme alanında görünebilir"
-#: cpplex.c:555
-msgid "'$' character(s) in identifier or number"
-msgstr "belirteç ya da sayı içinde '$' karakter(ler)i"
-
-#: cpplex.c:698
-#, c-format
-msgid "missing terminating %c character"
-msgstr "%c sonlandırma karakteri eksik"
-
-#: cpplex.c:711
+#: cpplex.c:596
msgid "null character(s) preserved in literal"
msgstr "null karakter(ler) sabit içinde saklanmış"
-#: cpplex.c:915 cpptrad.c:487
-msgid "no newline at end of file"
-msgstr "dosyanın sonunda satırsonu karakteri yok"
-
-#: cpplex.c:1092 cpptrad.c:213
+#: cpplex.c:916
msgid "unterminated comment"
msgstr "sonlandırılmamış açıklama"
-#: cpplex.c:1103
+#: cpplex.c:927
msgid "C++ style comments are not allowed in ISO C90"
msgstr "C++ tarzı açıklamalara ISO C90'da izin verilmez"
-#: cpplex.c:1105
+#: cpplex.c:929
msgid "(this will be reported only once per input file)"
msgstr "(her girdi dosyasında sadece bir kere raporlanacaktır)"
-#: cpplex.c:1110
+#: cpplex.c:934
msgid "multi-line comment"
msgstr "çok satırlı açıklama"
-#: cpplex.c:1425
-#, c-format
-msgid "unknown string token %s\n"
-msgstr "dizge dizgeciÄŸi %s bilinmiyor\n"
-
-#: cpplex.c:1438
+#: cpplex.c:1198
#, c-format
msgid "unspellable token %s"
msgstr "dizgecik %s okunabilir deÄŸil"
-#: cpplex.c:1695
-#, c-format
-msgid "the meaning of '\\%c' is different in traditional C"
-msgstr "`\\%c'nin anlamı geleneksel C'de farklıdır"
-
-#: cpplex.c:1701
-msgid "incomplete universal-character-name"
-msgstr "evrensel karakter ismi tamamlanmamış"
-
-#: cpplex.c:1715
-#, c-format
-msgid "non-hex digit '%c' in universal-character-name"
-msgstr "evrensel karakter isminde '%c' bir onaltılık rakam değil"
-
-#: cpplex.c:1723
-msgid "universal-character-name on EBCDIC target"
-msgstr "EBCDIC hedefte evrensel karakter ismi"
-
-#: cpplex.c:1737
-msgid "universal-character-name out of range"
-msgstr "evrensel karakter ismi kapsam dışı"
-
-#: cpplex.c:1791
-msgid "the meaning of '\\a' is different in traditional C"
-msgstr "`\\a'nın anlamı geleneksel C'de farklıdır"
-
-#: cpplex.c:1798
-#, c-format
-msgid "non-ISO-standard escape sequence, '\\%c'"
-msgstr "ISO standardı olmayan önceleme dizgesi, '\\%c'"
-
-#: cpplex.c:1809
-msgid "the meaning of '\\x' is different in traditional C"
-msgstr "'\\x'in anlamı geleneksel C'de farklıdır"
-
-#: cpplex.c:1828 f/lex.c:585
-msgid "\\x used with no following hex digits"
-msgstr "\\x izleyen onaltılık rakamlar olmaksızın kullanılmış"
-
-#: cpplex.c:1833
-msgid "hex escape sequence out of range"
-msgstr "onaltılık önceleme dizgesi kapsamdışı"
-
-#: cpplex.c:1858
-msgid "octal escape sequence out of range"
-msgstr "sekizlik önceleme dizgesi kapsamdışı"
-
-#: cpplex.c:1874
-#, c-format
-msgid "unknown escape sequence '\\%c'"
-msgstr "bilinmeyen önceleme dizgesi '\\%c'"
-
-#: cpplex.c:1877
-#, c-format
-msgid "unknown escape sequence: '\\%03o'"
-msgstr "bilinmeyen önceleme dizgesi: '\\%03o'"
-
-#: cpplex.c:1882
-msgid "escape sequence out of range for its type"
-msgstr "önceleme dizgesi türü için kapsam dışı"
-
-#: cpplex.c:1973
-msgid "empty character constant"
-msgstr "karakter sabit boÅŸ"
-
-#: cpplex.c:1983
-msgid "character constant too long for its type"
-msgstr "karakter sabiti, türü için çok uzun"
-
-#: cpplex.c:1986
-msgid "multi-character character constant"
-msgstr "çoklu-karakter karakter sabiti"
-
-#: cpplib.c:225
+#: cpplib.c:218
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr "#%s yönergesinin sonunda fazladan dizgecikler"
-#: cpplib.c:315
+#: cpplib.c:304
#, c-format
msgid "#%s is a GCC extension"
msgstr "#%s bir GCC uzantısıdır"
-#: cpplib.c:327
+#: cpplib.c:316
msgid "suggest not using #elif in traditional C"
msgstr "geleneksel C'de #elif kullanılmıyor varsayılır"
-#: cpplib.c:330
+#: cpplib.c:319
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr "geleneksel C'de girintili # ile #%s yoksayılır"
-#: cpplib.c:334
+#: cpplib.c:323
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr "geleneksel C'den #%s in saklanması için bir girintili # kullanılmış farzedilir"
-#: cpplib.c:358
+#: cpplib.c:345
msgid "embedding a directive within macro arguments is not portable"
msgstr "bir yönergenin makro argümanlarla gömülmesi uyarlanabilir değil"
-#: cpplib.c:378
+#: cpplib.c:365
msgid "style of line directive is a GCC extension"
msgstr "satır yönergesinin tarzı bir GCC özelliğidir"
-#: cpplib.c:428
+#: cpplib.c:415
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr "önişlem yönergesi #%s geçersiz"
-#: cpplib.c:500
+#: cpplib.c:484
msgid "\"defined\" cannot be used as a macro name"
msgstr "\"defined\" makro ismi olarak kullanılamaz"
-#: cpplib.c:506
+#: cpplib.c:490
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr "\"%s\" C++'da bir işleç olduğundan makro ismi olarak kullanılamaz"
-#: cpplib.c:509
+#: cpplib.c:493
#, c-format
msgid "no macro name given in #%s directive"
msgstr "#%s yönergesinde makro ismi verilmemiş"
-#: cpplib.c:512
+#: cpplib.c:496
msgid "macro names must be identifiers"
msgstr "makro isimleri tanımlayıcılar olmalı"
-#: cpplib.c:552
+#: cpplib.c:537
#, c-format
msgid "undefining \"%s\""
msgstr "tanımsız yapılan \"%s\""
-#: cpplib.c:598
+#: cpplib.c:609
msgid "missing terminating > character"
msgstr "sonlandıran > karakteri eksik"
-#: cpplib.c:637
+#: cpplib.c:662
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr "#%s \"DOSYA\" ya da <DOSYA> gerektirir"
-#: cpplib.c:648
-#, c-format
-msgid "empty file name in #%s"
-msgstr "#%s deyimindeki dosya ismi boÅŸ"
+#: cpplib.c:685
+msgid "#include nested too deeply"
+msgstr "#include iç içeliği çok derin"
-#: cpplib.c:667
+#: cpplib.c:723
msgid "#include_next in primary source file"
msgstr "birncil kaynak dosyasında #include_next"
-#: cpplib.c:674
-msgid "#import is obsolete, use an #ifndef wrapper in the header file"
-msgstr "#import artık kullanılmıyor, yerine başlık dosyası içinde #ifndef sarmalaması kullanın"
-
-#: cpplib.c:682
-msgid "#include nested too deeply"
-msgstr "#include iç içeliği çok derin"
-
-#: cpplib.c:739
+#: cpplib.c:749
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr "satır yönergesinde geçersiz \"%s\" seçeneği"
-#: cpplib.c:814
+#: cpplib.c:794
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "#line'dan sonraki \"%s\" bir pozitif tamsayı değil"
-#: cpplib.c:820
+#: cpplib.c:800
msgid "line number out of range"
msgstr "satır numarası kapsam dışı"
-#: cpplib.c:831 cpplib.c:902
+#: cpplib.c:812 cpplib.c:885
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr "\"%s\" geçerli bir dosya ismi değil"
-#: cpplib.c:866
+#: cpplib.c:847
#, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "#'dan sonraki \"%s\" bir pozitif tamsayı değil"
-#: cpplib.c:973
+#: cpplib.c:947
msgid "invalid #ident directive"
msgstr "geçersiz #ident yönergesi"
-#: cpplib.c:1061
+#: cpplib.c:1027
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr "\"%s\" hem pragma hem de pragma isim alanı olarak kaydediliyor"
-#: cpplib.c:1064
+#: cpplib.c:1030
#, c-format
msgid "#pragma %s %s is already registered"
msgstr "#pragma %s %s zaten kayıtlı"
-#: cpplib.c:1067
+#: cpplib.c:1033
#, c-format
msgid "#pragma %s is already registered"
msgstr "#pragma %s zaten kayıtlı"
-#: cpplib.c:1143
-msgid "#pragma once is obsolete"
-msgstr "#pragma once eskidi"
-
-#: cpplib.c:1146
+#: cpplib.c:1178
msgid "#pragma once in main file"
msgstr "main dosyasında '#pragma once'"
-#: cpplib.c:1170
+#: cpplib.c:1201
msgid "invalid #pragma GCC poison directive"
msgstr "geçersiz #pragma GCC poison yönergesi"
-#: cpplib.c:1179
+#: cpplib.c:1210
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr "zehirlenen mevcut makro \"%s\""
-#: cpplib.c:1201
+#: cpplib.c:1231
msgid "#pragma system_header ignored outside include file"
msgstr "başlık dosyasının dışındaki '#pragma system_header' yoksayıldı"
-#: cpplib.c:1226
-#, c-format
-msgid "cannot find source %s"
+#: cpplib.c:1255
+#, fuzzy, c-format
+msgid "cannot find source file %s"
msgstr "kaynak %s bulunamıyor"
-#: cpplib.c:1230
+#: cpplib.c:1259
#, c-format
msgid "current file is older than %s"
msgstr "mevcut dosya %s den daha eski"
-#: cpplib.c:1346
+#: cpplib.c:1373
msgid "_Pragma takes a parenthesized string literal"
msgstr "_Pragma bir parantezli dizge sabiti alır"
-#: cpplib.c:1429
+#: cpplib.c:1451
msgid "#else without #if"
msgstr "#if siz #else"
-#: cpplib.c:1434
+#: cpplib.c:1456
msgid "#else after #else"
msgstr "#else den sonra #else"
-#: cpplib.c:1436 cpplib.c:1470
-msgid "the conditional began here"
-msgstr "koşullu ifade buradan başladı"
-
-#: cpplib.c:1463
+#: cpplib.c:1484
msgid "#elif without #if"
msgstr "#if siz #elif "
-#: cpplib.c:1468
+#: cpplib.c:1489
msgid "#elif after #else"
msgstr "#else den sonra #elif"
-#: cpplib.c:1499
+#: cpplib.c:1519
msgid "#endif without #if"
msgstr "#if siz #endif"
-#: cpplib.c:1582
+#: cpplib.c:1596
msgid "missing '(' after predicate"
msgstr "dayanaktan sonra '(' eksik"
-#: cpplib.c:1597
+#: cpplib.c:1611
msgid "missing ')' to complete answer"
msgstr "yanıtı tamamlayacak ')' eksik"
-#: cpplib.c:1617
+#: cpplib.c:1631
msgid "predicate's answer is empty"
msgstr "dayanakların cevabı boş"
-#: cpplib.c:1647
+#: cpplib.c:1658
msgid "assertion without predicate"
msgstr "dayanaksız olumlama"
-#: cpplib.c:1649
+#: cpplib.c:1660
msgid "predicate must be an identifier"
msgstr "dayanak bir tanımlayıcı olmalı"
-#: cpplib.c:1738
+#: cpplib.c:1744
#, c-format
msgid "\"%s\" re-asserted"
msgstr "\"%s\" tekrar olumlanmış"
-#: cpplib.c:1968
-#, c-format
-msgid "unterminated #%s"
-msgstr "sonlandırılmamış #%s"
-
-#: cppmacro.c:94
-#, c-format
-msgid "macro \"%s\" is not used"
-msgstr "makro \"%s\" kullanılmamış"
-
-#: cppmacro.c:139 cppmacro.c:294
+#: cppmacro.c:125 cppmacro.c:280
#, c-format
msgid "invalid built-in macro \"%s\""
msgstr "geçersiz yerleşik makro \"%s\""
-#: cppmacro.c:234
+#: cppmacro.c:221
msgid "could not determine date and time"
msgstr "tarih ve saat saptanamadı"
-#: cppmacro.c:407
+#: cppmacro.c:393
msgid "invalid string literal, ignoring final '\\'"
msgstr "geçersiz dizge sabit, son '\\' yoksayılıyor"
-#: cppmacro.c:504
+#: cppmacro.c:476
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr "\"%s\" ve \"%s\" geçişi geçerli bir önişlem dizgeciği vermez"
-#: cppmacro.c:546
+#: cppmacro.c:514
msgid "ISO C99 requires rest arguments to be used"
msgstr "ISO C kalan argümanların kullanılmış olmasını gerektirir"
-#: cppmacro.c:551
+#: cppmacro.c:519
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr "makro \"%s\" %u argüman gerektiriyor ama sadece %u argüman verilmiş"
-#: cppmacro.c:556
+#: cppmacro.c:524
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr "makro \"%s\" için %u argüman verilmiş ama tam %u argüman alıyor"
-#: cppmacro.c:669 cpptrad.c:774
+#: cppmacro.c:635
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr "sonlandırılmamış argüman listesi çağıran makro \"%s\""
-#: cppmacro.c:776
+#: cppmacro.c:738
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr "işlev benzeri makro \"%s\" geleneksel C'de argümanlarla kullanılmalıdır"
-#: cppmacro.c:1314
+#: cppmacro.c:1241
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr "yinelenmiÅŸ makro parametresi \"%s\""
-#: cppmacro.c:1351
+#: cppmacro.c:1286
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr "\"%s\" makro parametre listesinde görünmeyebilir"
-#: cppmacro.c:1359
+#: cppmacro.c:1294
msgid "macro parameters must be comma-separated"
msgstr "makro parametreleri virgüllerle ayrılmış olmalı"
-#: cppmacro.c:1376
+#: cppmacro.c:1311
msgid "parameter name missing"
msgstr "parametre ismi eksik"
-#: cppmacro.c:1391
+#: cppmacro.c:1326
msgid "anonymous variadic macros were introduced in C99"
msgstr "argümanlarının sayısı değişebilen anonim makrolar C99 da tanıtıldı"
-#: cppmacro.c:1395
+#: cppmacro.c:1330
msgid "ISO C does not permit named variadic macros"
msgstr "ISO C argümanlarının sayısı değişebilen isimli makrolara izin vermez"
-#: cppmacro.c:1404
+#: cppmacro.c:1339
msgid "missing ')' in macro parameter list"
msgstr "makro parametre listesinde ')' eksik"
-#: cppmacro.c:1472
+#: cppmacro.c:1402
msgid "ISO C requires whitespace after the macro name"
msgstr "ISO C makro isminden sonra boÅŸluk gerektirir"
-#: cppmacro.c:1500
+#: cppmacro.c:1430
msgid "'#' is not followed by a macro parameter"
msgstr "'#' iÅŸaretinden sonra bir makro parametresi yok"
-#: cppmacro.c:1519
+#: cppmacro.c:1449
msgid "'##' cannot appear at either end of a macro expansion"
msgstr "'##' bir makronun her iki ucunda da görünemez"
-#: cppmacro.c:1601
-#, c-format
-msgid "\"%s\" redefined"
-msgstr "\"%s\" yeniden tanımlanmış"
-
-#: cppmacro.c:1606
-msgid "this is the location of the previous definition"
-msgstr "bu önceki tanımlamanın yeri"
-
-#: cppmacro.c:1657
+#: cppmacro.c:1588
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr "makro argümanı \"%s\" geleneksel C'de dizgelenmiş olmalıydı"
-#: cppmacro.c:1682
+#: cppmacro.c:1611
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr "cpp_macro_definition içindeki isimli yapı türü %d geçersiz"
-#: cppspec.c:109
+#: cpppch.c:84 cpppch.c:332 cpppch.c:356 cpppch.c:365
+msgid "while writing precompiled header"
+msgstr ""
+
+#: cpppch.c:463
+#, fuzzy, c-format
+msgid "%s: not used because `%.*s' not defined"
+msgstr "`%s' etiketi tanımsız kullanılmış"
+
+#: cpppch.c:475
+#, c-format
+msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
+msgstr ""
+
+#: cpppch.c:516
+#, fuzzy, c-format
+msgid "%s: not used because `%s' is defined"
+msgstr "`%s' tanımlanmadan kullanılmış"
+
+#: cpppch.c:529 cpppch.c:715
+msgid "while reading precompiled header"
+msgstr ""
+
+#: cppspec.c:106
#, c-format
msgid "\"%s\" is not a valid option to the preprocessor"
msgstr "\"%s\" önişlemci için geçerli bir seçenek değil"
-#: cppspec.c:133
+#: cppspec.c:128
msgid "too many input files"
msgstr "girdi dosyası sayısı çok fazla"
-#: cpptrad.c:841
+#: cpptrad.c:744
#, c-format
msgid "detected recursion whilst expanding macro \"%s\""
msgstr "makro \"%s\" genişletilirken iç içelik saptandı"
-#: cse.c:7195
+#: cpptrad.c:911
+#, fuzzy
+msgid "syntax error in macro parameter list"
+msgstr "parametre isim listesinde sözdizimi hatası"
+
+#: cse.c:7040
#, c-format
msgid ";; Processing block from %d to %d, %d sets.\n"
msgstr ";; %d den %d ye kadar, %d kümelik blok işleniyor.\n"
-#: diagnostic.c:714
-msgid "((anonymous))"
-msgstr "((anonim))"
-
-#: diagnostic.c:928
-#, c-format
-msgid "%s: warnings being treated as errors\n"
-msgstr "%s: uyarılar hata olarak ele alınıyor\n"
-
-#: diagnostic.c:963
-#, c-format
-msgid "%s: %s: "
-msgstr "%s: %s: "
-
-#: diagnostic.c:1054
-#, c-format
-msgid "%s "
-msgstr "%s "
-
-#: diagnostic.c:1056
-#, c-format
-msgid " %s"
-msgstr " %s"
-
-#: diagnostic.c:1078
-msgid "At top level:"
-msgstr "Üst düzeyde:"
-
-#: diagnostic.c:1083
-#, c-format
-msgid "In member function `%s':"
-msgstr "Ãœye iÅŸlev `%s':"
-
-#: diagnostic.c:1087
-#, c-format
-msgid "In function `%s':"
-msgstr "`%s' iÅŸlevinde:"
-
-#: diagnostic.c:1175
-msgid "compilation terminated.\n"
-msgstr "derleme sonlandırıldı.\n"
-
-#: diagnostic.c:1193
+#: diagnostic.c:209
#, c-format
msgid "%s:%d: confused by earlier errors, bailing out\n"
msgstr "%s:%d: önceki hatalar yüzünden bozulmuş, bırakılıyor\n"
-#: diagnostic.c:1208 diagnostic.c:1316
-#, c-format
-msgid ""
-"Please submit a full bug report,\n"
-"with preprocessed source if appropriate.\n"
-"See %s for instructions.\n"
-msgstr ""
-"Mümkünse önişlemli kaynakla lütfen\n"
-"ayrıntılı bir hata raporu gönderin.\n"
-"İşlemler için %s adresine bakınız.\n"
+#: diagnostic.c:281
+msgid "compilation terminated.\n"
+msgstr "derleme sonlandırıldı.\n"
-#: diagnostic.c:1314
+#: diagnostic.c:572
msgid "Internal compiler error: Error reporting routines re-entered.\n"
msgstr "Derleyici iç hatası: Hata raporlama yordamları tekrar girildi.\n"
-#: diagnostic.c:1376
+#: diagnostic.c:584
#, c-format
msgid "in %s, at %s:%d"
msgstr "%2$s dosyasının %3$d. satırındaki %1$s işlevinde"
-#: diagnostic.c:1397
-#, c-format
-msgid "In file included from %s:%d"
-msgstr ""
-"Sırayla bir altındaki dosyada içerilerek:\n"
-"\t\t%s:%d"
-
-#: diagnostic.c:1400
-#, c-format
-msgid ""
-",\n"
-" from %s:%d"
-msgstr ""
-",\n"
-"\t\t%s:%d"
-
-#: diagnostic.c:1401
-msgid ":\n"
-msgstr ". satırında:\n"
-
-#: diagnostic.c:1445 diagnostic.c:1462
-#, c-format
-msgid "`%s' is deprecated (declared at %s:%d)"
-msgstr "`%s' eski kullanım (%s:%d. satırında bildirilmiş)"
-
-#: diagnostic.c:1465
-#, c-format
-msgid "`%s' is deprecated"
-msgstr "`%s' eski kullanım"
-
-#: diagnostic.c:1468
-#, c-format
-msgid "type is deprecated (declared at %s:%d)"
-msgstr "tür eski kullanım (%s:%d. satırında bildirilmiş)"
-
-#: diagnostic.c:1471
-msgid "type is deprecated"
-msgstr "tür eski kullanım"
-
-#: dominance.c:728
+#: dominance.c:763
#, c-format
msgid "dominator of %d should be %d, not %d"
msgstr "%d nin önceli %d olmalı, %d değil"
-#: dwarf2out.c:3135
+#: dwarf2out.c:3228
#, c-format
msgid "DW_LOC_OP %s not implemented\n"
msgstr "DW_LOC_OP %s daha yazılmadı\n"
-#: dwarfout.c:2066
-#, c-format
-msgid "internal regno botch: `%s' has regno = %d\n"
-msgstr "iç yazmaç numarası beceriksizce: `%s' regno içeriyor = %d\n"
-
-#: dwarfout.c:6181
-msgid "support for the DWARF1 debugging format is deprecated"
-msgstr "DWARF1 hata ayıklama biçimi artık desteklenmeyecek"
-
-#: dwarfout.c:6278
-msgid "can't get current directory"
-msgstr "çalışılan dizin alınamıyor"
-
#: emit-rtl.c:1155
msgid "can't access real part of complex value in hard register"
msgstr "donanım yazmacındaki karmaşık değerin gerçek kısmına erişilemez"
-#: emit-rtl.c:1177
+#: emit-rtl.c:1182
msgid "can't access imaginary part of complex value in hard register"
msgstr "donanım yazmacında karmaşık değerin sanal kısmına erişilemez"
-#: emit-rtl.c:3402
+#: emit-rtl.c:2263
+#, fuzzy
+msgid "Invalid rtl sharing found in the insn"
+msgstr "komuttaki terim geçersiz"
+
+#: emit-rtl.c:2265
+msgid "Shared rtx"
+msgstr ""
+
+#: emit-rtl.c:3400
msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
msgstr "ICE: emit_jump_insn gereken yerde emit_insn kullanılmış:\n"
-#: errors.c:136
+#: errors.c:129
#, c-format
msgid "abort in %s, at %s:%d"
msgstr "%2$s dosyasının %3$d. satırındaki %1$s işlevinde programdan çıkış"
-#: except.c:369
+#: except.c:357
msgid "exception handling disabled, use -fexceptions to enable"
msgstr "olağandışılık yakalaması iptal edildi, etkinleştirmek için -fexceptions kullanın"
-#: except.c:2994
+#: except.c:2942
msgid "argument of `__builtin_eh_return_regno' must be constant"
msgstr "`__builtin_eh_return_regno' argümanı sabit olmalı"
-#: except.c:3137
+#: except.c:3073
msgid "__builtin_eh_return not supported on this target"
msgstr "__builtin_eh_return bu hedefte desteklenmiyor"
-#: explow.c:1408
+#: explow.c:1327
msgid "stack limits not supported on this target"
msgstr "bu hedefte yığın sınırları desteklenmiyor"
-#: expr.c:3355
+#: expr.c:2965
msgid "function using short complex types cannot be inline"
msgstr "short karmaşık türler kullanılan işlevler özümlenemez"
-#: expr.c:6272 expr.c:6281 expr.c:6290 expr.c:6295 expr.c:6604 expr.c:6620
-msgid "unsupported wide integer operation"
-msgstr "desteklenmeyen uzun tamsayı işlemi"
-
-#: expr.c:6669
-#, c-format
-msgid "prior parameter's size depends on `%s'"
+#: expr.c:6311
+#, fuzzy
+msgid "%Jprior parameter's size depends on '%D'"
msgstr "önceki parametrelerin uzunluğu `%s' bağımlı"
-#: expr.c:7005
+#: expr.c:6678
msgid "returned value in block_exit_expr"
msgstr "block_exit_expr'de değer döndü"
#. We can't make a bitwise copy of this object, so fail.
-#: expr.c:9202
+#: expr.c:8823
msgid "cannot take the address of an unaligned member"
msgstr "hizalanmamış bir üyenin adresi alınamaz"
-#: final.c:1342
+#: final.c:1058
msgid "negative insn length"
msgstr "negatif komut uzunluÄŸu"
-#: final.c:2793
+#: final.c:2429
msgid "could not split insn"
msgstr "komut çatallanamadı"
-#: final.c:3141
+#: final.c:2771
msgid "invalid `asm': "
msgstr "geçersiz `asm': "
-#: final.c:3328
+#: final.c:2954
msgid "nested assembly dialect alternatives"
msgstr "iç içe çevirici aksan alternatifleri"
-#: final.c:3345 final.c:3357
+#: final.c:2971 final.c:2983
msgid "unterminated assembly dialect alternative"
msgstr "sonlandırılmamış çevirici aksan alternatifi"
-#: final.c:3401
+#: final.c:3027
#, c-format
msgid "operand number missing after %%-letter"
msgstr "%%-harf'ten sonraki terim numarası eksik"
-#: final.c:3404 final.c:3443
+#: final.c:3030 final.c:3069
msgid "operand number out of range"
msgstr "terim numarası kapsamdışı"
-#: final.c:3462
+#: final.c:3088
#, c-format
msgid "invalid %%-code"
msgstr "%% kodu geçersiz"
-#: final.c:3493
+#: final.c:3118
#, c-format
msgid "`%%l' operand isn't a label"
msgstr "`%%l' terimi bir etiket deÄŸil"
#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
-#: final.c:3600 vmsdbgout.c:466 config/i386/i386.c:6314
-#: config/pdp11/pdp11.c:1573
+#. We can't handle floating point constants; PRINT_OPERAND must
+#. handle them.
+#. We can't handle floating point constants;
+#. PRINT_OPERAND must handle them.
+#: final.c:3220 vmsdbgout.c:467 config/i386/i386.c:6739
+#: config/pdp11/pdp11.c:1646
msgid "floating constant misused"
msgstr "gerçel sayı sabitler desteklenmiyor"
-#: final.c:3656 vmsdbgout.c:523 config/i386/i386.c:6392
-#: config/pdp11/pdp11.c:1620
+#: final.c:3276 vmsdbgout.c:524 config/i386/i386.c:6817
+#: config/pdp11/pdp11.c:1693
msgid "invalid expression as operand"
msgstr "veri öğesi olarak ifade geçersiz"
-#: flow.c:352
+#: flow.c:329
msgid "function might be possible candidate for attribute `noreturn'"
msgstr "işlev `noreturn' özniteliği için olası aday olmalı"
-#: flow.c:357
+#: flow.c:334
msgid "`noreturn' function does return"
msgstr "`noreturn' işlev dönüyor"
-#: flow.c:378
+#: flow.c:355
msgid "control reaches end of non-void function"
msgstr "denetim void olmayan işlevin sonunu aşıyor"
-#: flow.c:1642
+#: flow.c:1582
msgid "Attempt to delete prologue/epilogue insn:"
msgstr "Önsöz/sonsöz komutlarını silmeye çalışır"
-#: fold-const.c:2546 fold-const.c:2559
+#: fold-const.c:2759 fold-const.c:2772
#, c-format
msgid "comparison is always %d due to width of bit-field"
msgstr "karşılaştırma bit alanının genişliğinden dolayı daima %d"
-#: fold-const.c:3753 fold-const.c:3770
+#: fold-const.c:3967 fold-const.c:3984
#, c-format
msgid "comparison is always %d"
msgstr "karşılaştırma sonucu daima %d"
-#: fold-const.c:3901
+#: fold-const.c:4115
msgid "`or' of unmatched not-equal tests is always 1"
msgstr "eÅŸleÅŸmeyenlerin eÅŸitsizlik testlerininin `or' sonucu daima 1 dir"
-#: fold-const.c:3906
+#: fold-const.c:4120
msgid "`and' of mutually exclusive equal-tests is always 0"
msgstr "bağdaşmayanların eşitlik testlerinin `and' sonucu daima 0 dır"
-#: function.c:884 varasm.c:1503
-#, c-format
-msgid "size of variable `%s' is too large"
+#: fold-const.c:8340
+msgid "fold check: original tree changed by fold"
+msgstr ""
+
+#: function.c:884 varasm.c:1408
+#, fuzzy
+msgid "%Jsize of variable '%D' is too large"
msgstr "`%s' değişkeni çok geniş"
-#: function.c:3772
+#: function.c:3737
msgid "impossible constraint in `asm'"
msgstr "`asm' içindeki koşul mümkün değil"
-#: function.c:5527
-#, c-format
-msgid "`%s' might be used uninitialized in this function"
+#: function.c:5697
+#, fuzzy
+msgid "%J'%D' might be used uninitialized in this function"
msgstr "`%s' bu işlevde ilklendirilmeden kullanılmış olmalı"
-#: function.c:5534
-#, c-format
-msgid "variable `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5704
+#, fuzzy
+msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'"
msgstr "değişken `%s' `longjmp' ya da `vfork' tarafından taşırılmış olmalı"
-#: function.c:5553
-#, c-format
-msgid "argument `%s' might be clobbered by `longjmp' or `vfork'"
+#: function.c:5723
+#, fuzzy
+msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'"
msgstr "argüman `%s' `longjmp' ya da `vfork' tarafından taşırılmış olmalı"
-#: function.c:6420
+#: function.c:6497
msgid "function returns an aggregate"
msgstr "işlev bir küme ile dönüyor"
-#: function.c:6925
-#, c-format
-msgid "unused parameter `%s'"
+#: function.c:6980
+#, fuzzy
+msgid "%Junused parameter '%D'"
msgstr "parametre `%s' kullanılmamış"
-#: gcc.c:1107
+#: gcc.c:1191
#, c-format
msgid "ambiguous abbreviation %s"
msgstr "belirsiz kısaltma %s"
-#: gcc.c:1134
+#: gcc.c:1218
#, c-format
msgid "incomplete `%s' option"
msgstr "tamamlanmamış `%s' seçeneği"
-#: gcc.c:1145
+#: gcc.c:1229
#, c-format
msgid "missing argument to `%s' option"
msgstr "`%s' seçeneğinin argümanı eksik"
-#: gcc.c:1158
+#: gcc.c:1242
#, c-format
msgid "extraneous argument to `%s' option"
msgstr "`%s' seçeneğinde fazladan argüman"
-#: gcc.c:1486
+#: gcc.c:1563
msgid "Using built-in specs.\n"
msgstr "Yerleşik özellikler kullanılıyor.\n"
-#: gcc.c:1667
+#: gcc.c:1748
#, c-format
msgid ""
"Setting spec %s to '%s'\n"
@@ -5256,42 +5130,42 @@ msgstr ""
"Özelik %s '%s' e ayarlanıyor\n"
"\n"
-#: gcc.c:1774
+#: gcc.c:1850
#, c-format
msgid "Reading specs from %s\n"
msgstr "Özellikler %s'den okunuyor\n"
-#: gcc.c:1872 gcc.c:1891
+#: gcc.c:1946 gcc.c:1965
#, c-format
msgid "specs %%include syntax malformed after %ld characters"
msgstr "specs %%include sözdizimi %ld karakterden sonra bozuk"
-#: gcc.c:1899
+#: gcc.c:1973
#, c-format
msgid "could not find specs file %s\n"
msgstr "özellik dosyası %s bulunamadı\n"
-#: gcc.c:1916 gcc.c:1924 gcc.c:1933 gcc.c:1942
+#: gcc.c:1990 gcc.c:1998 gcc.c:2007 gcc.c:2016
#, c-format
msgid "specs %%rename syntax malformed after %ld characters"
msgstr "specs %%rename sözdizimi %ld karakterden sonra bozuk"
-#: gcc.c:1951
+#: gcc.c:2025
#, c-format
msgid "specs %s spec was not found to be renamed"
msgstr "ismi değişecek specs %s özelliği yok"
-#: gcc.c:1958
+#: gcc.c:2032
#, c-format
msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
msgstr "%s: '%s' belirtiminin ismi zaten '%s' belirtiminde kullanılmış"
-#: gcc.c:1963
+#: gcc.c:2037
#, c-format
msgid "rename spec %s to %s\n"
msgstr "spec %s ismi %s yapılıyor\n"
-#: gcc.c:1965
+#: gcc.c:2039
#, c-format
msgid ""
"spec is '%s'\n"
@@ -5300,25 +5174,25 @@ msgstr ""
"özellik '%s'\n"
"\n"
-#: gcc.c:1978
+#: gcc.c:2052
#, c-format
msgid "specs unknown %% command after %ld characters"
msgstr "%ld. karakterden sonra bilinmeyen specs %% komutu"
-#: gcc.c:1989 gcc.c:2002
+#: gcc.c:2063 gcc.c:2076
#, c-format
msgid "specs file malformed after %ld characters"
msgstr "%ld. karakterden sonra özellikler dosyası bozuk"
-#: gcc.c:2056
+#: gcc.c:2129
msgid "spec file has no spec for linking"
msgstr "özellik dosyası birleştirilecek özellik içermiyor"
-#: gcc.c:2554
+#: gcc.c:2634
msgid "-pipe not supported"
msgstr "-pipe desteklenmiyor"
-#: gcc.c:2609
+#: gcc.c:2696
msgid ""
"\n"
"Go ahead? (y or n) "
@@ -5326,7 +5200,7 @@ msgstr ""
"\n"
"Haydi!? (e / h) "
-#: gcc.c:2735
+#: gcc.c:2822
#, c-format
msgid ""
"Internal error: %s (program %s)\n"
@@ -5337,69 +5211,69 @@ msgstr ""
"Lütfen ayrıntılı bir hata raporu hazırlayın.\n"
"İşlemler için %s adresine bakın."
-#: gcc.c:2753
+#: gcc.c:2840
#, c-format
msgid "# %s %.2f %.2f\n"
msgstr "# %s %.2f %.2f\n"
-#: gcc.c:2883
+#: gcc.c:2973
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr "Kullanımı: %s [seçenekler] DOSYA...\n"
-#: gcc.c:2884
+#: gcc.c:2974
msgid "Options:\n"
msgstr "Seçenekler:\n"
-#: gcc.c:2886
+#: gcc.c:2976
msgid " -pass-exit-codes Exit with highest error code from a phase\n"
msgstr " -pass-exit-codes Bir safhada en yüksek hata kodu ile çıkar\n"
-#: gcc.c:2887
+#: gcc.c:2977
msgid " --help Display this information\n"
msgstr " --help Bu yardım iletisini gösterir\n"
-#: gcc.c:2888
+#: gcc.c:2978
msgid " --target-help Display target specific command line options\n"
msgstr " --target-help Hedefe özel komut satırı seçeneklerini gösterir\n"
-#: gcc.c:2890
+#: gcc.c:2980
msgid " (Use '-v --help' to display command line options of sub-processes)\n"
msgstr " (Ast süreçlerin komut satırı seçenekleri için '-v --help' kullanın)\n"
-#: gcc.c:2891
+#: gcc.c:2981
msgid " -dumpspecs Display all of the built in spec strings\n"
msgstr " -dumpspecs Bütün yerleşik spec dizgelerini gösterir\n"
-#: gcc.c:2892
+#: gcc.c:2982
msgid " -dumpversion Display the version of the compiler\n"
msgstr " -dumpversion Derleyicinin sürümünü gösterir\n"
-#: gcc.c:2893
+#: gcc.c:2983
msgid " -dumpmachine Display the compiler's target processor\n"
msgstr " -dumpmachine Derleyicilerin hedef işlemcisini gösterir\n"
-#: gcc.c:2894
+#: gcc.c:2984
msgid " -print-search-dirs Display the directories in the compiler's search path\n"
msgstr " -print-search-dirs Derleyicinin arama yolundaki dizinlerini gösterir\n"
-#: gcc.c:2895
+#: gcc.c:2985
msgid " -print-libgcc-file-name Display the name of the compiler's companion library\n"
msgstr " -print-libgcc-file-name Derleyiciyle eşleşen kitaplığın ismini gösterir\n"
-#: gcc.c:2896
+#: gcc.c:2986
msgid " -print-file-name=<lib> Display the full path to library <lib>\n"
msgstr " -print-file-name=<lib> <lib> kitaplığının tam dosya yolunu gösterir\n"
-#: gcc.c:2897
+#: gcc.c:2987
msgid " -print-prog-name=<prog> Display the full path to compiler component <prog>\n"
msgstr " -print-prog-name=<prog> Derleyici elemanı <prog>un tam dosya yolunu gösterir\n"
-#: gcc.c:2898
+#: gcc.c:2988
msgid " -print-multi-directory Display the root directory for versions of libgcc\n"
msgstr " -print-multi-directory libgcc sürümünün kök dizinini gösterir\n"
-#: gcc.c:2899
+#: gcc.c:2989
msgid ""
" -print-multi-lib Display the mapping between command line options and\n"
" multiple library search directories\n"
@@ -5407,87 +5281,97 @@ msgstr ""
" -print-multi-lib Komut satırı seçenekleri ile kitaplık arama dizinleri\n"
" arasındaki eşleşmeleri gösterir\n"
-#: gcc.c:2902
+#: gcc.c:2992
msgid " -print-multi-os-directory Display the relative path to OS libraries\n"
msgstr " -print-multi-os-directory İS kitaplıklarının göreli dosya yolunu gösterir\n"
-#: gcc.c:2903
+#: gcc.c:2993
msgid " -Wa,<options> Pass comma-separated <options> on to the assembler\n"
msgstr ""
" -Wa,<seçenekler> Virgül ayraçlı <seçenekler> listesini çeviriciye\n"
" gönderir\n"
-#: gcc.c:2904
+#: gcc.c:2994
msgid " -Wp,<options> Pass comma-separated <options> on to the preprocessor\n"
msgstr " -Wp,<seçenekler> Virgül ayraçlı <seçenekler> listesini önişlemciye gönderir\n"
-#: gcc.c:2905
+#: gcc.c:2995
msgid " -Wl,<options> Pass comma-separated <options> on to the linker\n"
msgstr " -Wl,<seçenekler> Virgül ayraçlı <seçenekler>i bağlayıcıya gönderir\n"
-#: gcc.c:2906
+#: gcc.c:2996
+#, fuzzy
+msgid " -Xassembler <arg> Pass <arg> on to the assembler\n"
+msgstr " -Xlinker <arg> Bağlayıcıya <arg>ümanı gönderir\n"
+
+#: gcc.c:2997
+#, fuzzy
+msgid " -Xpreprocessor <arg> Pass <arg> on to the preprocessor\n"
+msgstr " -Xlinker <arg> Bağlayıcıya <arg>ümanı gönderir\n"
+
+#: gcc.c:2998
msgid " -Xlinker <arg> Pass <arg> on to the linker\n"
msgstr " -Xlinker <arg> Bağlayıcıya <arg>ümanı gönderir\n"
-#: gcc.c:2907
+#: gcc.c:2999
msgid " -save-temps Do not delete intermediate files\n"
msgstr " -save-temps Aracı dosyaları silmez\n"
-#: gcc.c:2908
+#: gcc.c:3000
msgid " -pipe Use pipes rather than intermediate files\n"
msgstr " -pipe Aracı dosyalardan ziyade veri yolları kullanılır\n"
-#: gcc.c:2909
+#: gcc.c:3001
msgid " -time Time the execution of each subprocess\n"
msgstr " -time Alt işlemlerin çalıştırılma zamanlaması\n"
-#: gcc.c:2910
+#: gcc.c:3002
msgid " -specs=<file> Override built-in specs with the contents of <file>\n"
msgstr " -specs=<dosya> Yerleşik özellikler yerine <dosya>dakilere zorlar\n"
-#: gcc.c:2911
+#: gcc.c:3003
msgid " -std=<standard> Assume that the input sources are for <standard>\n"
msgstr ""
" -std=<standart> Girdi kaynaklarının bu <standart>da olduğu\n"
" varsayılır\n"
-#: gcc.c:2912
+#: gcc.c:3004
msgid " -B <directory> Add <directory> to the compiler's search paths\n"
msgstr " -B <dizin> Derleyicilerin arama dosya yoluna <dizin>i ekler\n"
-#: gcc.c:2913
+#: gcc.c:3005
msgid " -b <machine> Run gcc for target <machine>, if installed\n"
msgstr " -b <makina> gcc kurulmuşsa hedef <makina> için çalıştırılır\n"
-#: gcc.c:2914
+#: gcc.c:3006
msgid " -V <version> Run gcc version number <version>, if installed\n"
msgstr " -V <sürüm> gcc'nin kurulmuşsa <sürüm> sürümü çalıştırılır\n"
-#: gcc.c:2915
+#: gcc.c:3007
msgid " -v Display the programs invoked by the compiler\n"
msgstr " -v Derleyicinin çalıştırdığı programları gösterir\n"
-#: gcc.c:2916
+#: gcc.c:3008
msgid " -### Like -v but options quoted and commands not executed\n"
msgstr " -### -v gibi ama tırnaklı ve virgüllü seçenekler kullanılmaz\n"
-#: gcc.c:2917
+#: gcc.c:3009
msgid " -E Preprocess only; do not compile, assemble or link\n"
msgstr " -E Sadece önişlem; derleme, çeviri ve ilintileme yapılmaz\n"
-#: gcc.c:2918
+#: gcc.c:3010
msgid " -S Compile only; do not assemble or link\n"
msgstr " -S Sadece derleme; çevirme ve bağlama yapılmaz\n"
-#: gcc.c:2919
+#: gcc.c:3011
msgid " -c Compile and assemble, but do not link\n"
msgstr " -c Derler ve çevirir ancak bağlamaz\n"
-#: gcc.c:2920
+#: gcc.c:3012
msgid " -o <file> Place the output into <file>\n"
msgstr " -o DOSYA Çıktıyı DOSYAya yazar\n"
-#: gcc.c:2921
+#: gcc.c:3013
msgid ""
" -x <language> Specify the language of the following input files\n"
" Permissible languages include: c c++ assembler none\n"
@@ -5499,7 +5383,7 @@ msgstr ""
" 'none' dilin girdi dosyasının uzantısından\n"
" saptanacağı öntanımlı durum belirtilmiş olur\n"
-#: gcc.c:2928
+#: gcc.c:3020
#, c-format
msgid ""
"\n"
@@ -5515,27 +5399,23 @@ msgstr ""
"Çeviri hatalarını <gnu-tr-u12a@lists.sourceforge.net> adresine bildiriniz.\n"
"\n"
-#: gcc.c:3063
+#: gcc.c:3141
#, c-format
msgid "`-%c' option must have argument"
msgstr "`-%c' seçeneğinde argüman eksik"
-#: gcc.c:3085
+#: gcc.c:3163
#, c-format
msgid "couldn't run `%s': %s"
msgstr "`%s' çalıştırılamadı: %s"
#. translate_options () has turned --version into -fversion.
-#: gcc.c:3262
+#: gcc.c:3349
#, c-format
msgid "%s (GCC) %s\n"
msgstr "%s (GCC) %s\n"
-#: gcc.c:3263
-msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
-msgstr "Telif Hakkı © 2003 Free Software Foundation, Inc.\n"
-
-#: gcc.c:3265 gcov.c:364
+#: gcc.c:3352
msgid ""
"This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
@@ -5545,62 +5425,68 @@ msgstr ""
"Hiçbir garantisi yoktur; hatta SATILABİLİRLİĞİ veya ŞAHSİ KULLANIMINIZA\n"
"UYGUNLUĞU için bile garanti verilmez.\n"
-#: gcc.c:3366
+#: gcc.c:3453
msgid "argument to `-Xlinker' is missing"
msgstr "`-Xlinker' için argüman belirtilmemiş"
-#: gcc.c:3374
+#: gcc.c:3461
+#, fuzzy
+msgid "argument to `-Xpreprocessor' is missing"
+msgstr "`-specs' için argüman belirtilmemiş"
+
+#: gcc.c:3468
+#, fuzzy
+msgid "argument to `-Xassembler' is missing"
+msgstr "`-Xlinker' için argüman belirtilmemiş"
+
+#: gcc.c:3475
msgid "argument to `-l' is missing"
msgstr "`-l' için argüman belirtilmemiş"
-#: gcc.c:3391
+#: gcc.c:3491
msgid "argument to `-specs' is missing"
msgstr "`-specs' için argüman belirtilmemiş"
-#: gcc.c:3406
+#: gcc.c:3505
msgid "argument to `-specs=' is missing"
msgstr "`-specs=' için argüman belirtilmemiş"
-#: gcc.c:3436
+#: gcc.c:3542
#, c-format
msgid "`-%c' must come at the start of the command line"
msgstr "`-%c' komut satırının başında olmalı"
-#: gcc.c:3445
+#: gcc.c:3551
msgid "argument to `-B' is missing"
msgstr "`-B' için argüman belirtilmemiş"
-#: gcc.c:3618
-msgid "cannot specify -o with -c or -S and multiple compilations"
-msgstr "-o çoklu derlemeler, -c ya da -S ile kullanılamaz"
-
-#: gcc.c:3791
+#: gcc.c:3728
msgid "warning: -pipe ignored because -save-temps specified"
msgstr "Uyarı: -save-temps belirtildiğinden -pipe yoksayıldı"
-#: gcc.c:3795
+#: gcc.c:3732
msgid "warning: -pipe ignored because -time specified"
msgstr "Uyarı: -time belirtildiğinden -pipe yoksayıldı"
-#: gcc.c:3807
+#: gcc.c:3944
msgid "argument to `-x' is missing"
msgstr "`-x' için argüman belirtilmemiş"
-#: gcc.c:3835
+#: gcc.c:3972
#, c-format
msgid "argument to `-%s' is missing"
msgstr "`-%s' için argüman belirtilmemiş"
-#: gcc.c:3896
+#: gcc.c:4033
#, c-format
msgid "warning: `-x %s' after last input file has no effect"
msgstr "Uyarı: son girdi dosyasından sonraki `-x %s' etkisiz"
-#: gcc.c:4241
+#: gcc.c:4434
msgid "invalid specification! Bug in cc"
msgstr "özellik geçersiz! cc'de yazılım hatası."
-#: gcc.c:4395
+#: gcc.c:4588
#, c-format
msgid "%s\n"
msgstr "%s\n"
@@ -5608,74 +5494,79 @@ msgstr "%s\n"
#. Catch the case where a spec string contains something like
#. '%{foo:%*}'. ie there is no * in the pattern on the left
#. hand side of the :.
-#: gcc.c:4955
+#: gcc.c:5092
#, c-format
msgid "spec failure: '%%*' has not been initialized by pattern match"
msgstr "özellik aksaması: '%%*' kalıp eşleştirerek ilklendirilemedi"
-#: gcc.c:4964
+#: gcc.c:5101
#, c-format
msgid "warning: use of obsolete %%[ operator in specs"
msgstr "Uyarı: spec'lerde %%[ işleci artık kullanılmıyor"
-#: gcc.c:4982
+#: gcc.c:5119
#, c-format
msgid "Processing spec %c%s%c, which is '%s'\n"
msgstr "'%4$s' %1$c%2$s%3$c özelliği işleniyor\n"
-#: gcc.c:5107
+#: gcc.c:5182
#, c-format
msgid "spec failure: unrecognized spec option '%c'"
msgstr "Özellik aksaması: özellik seçeneği '%c' anlaşılamadı"
-#: gcc.c:5188
+#: gcc.c:5261
#, c-format
msgid "unknown spec function `%s'"
msgstr "bilinmeyen `%s' spec iÅŸlevi"
-#: gcc.c:5207
+#: gcc.c:5280
#, c-format
msgid "error in args to spec function `%s'"
msgstr "`%s' spec işlevi için argümanlar hatalı"
-#: gcc.c:5256
+#: gcc.c:5328
msgid "malformed spec function name"
msgstr "bozuk spec iÅŸlevi ismi"
#. )
-#: gcc.c:5259
+#: gcc.c:5331
msgid "no arguments for spec function"
msgstr "spec işlevi için argüman belirtilmedi"
-#: gcc.c:5278
+#: gcc.c:5350
msgid "malformed spec function arguments"
msgstr "belirtim işlevi argümanları bozuk"
-#: gcc.c:5386
-msgid "mismatched braces in specs"
-msgstr "özellikler içinde eşleşmeyen parantezler"
+#: gcc.c:6076
+msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC."
+msgstr ""
+
+#: gcc.c:6086
+msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC."
+msgstr ""
-#: gcc.c:6081
+#: gcc.c:6179
#, c-format
msgid "unrecognized option `-%s'"
msgstr "`-%s' seçeneği bilinmiyor"
-#: gcc.c:6087
+#: gcc.c:6185
#, c-format
msgid "install: %s%s\n"
msgstr "kurulum: %s%s\n"
-#: gcc.c:6088
+#: gcc.c:6186
#, c-format
msgid "programs: %s\n"
msgstr "programlar: %s\n"
-#: gcc.c:6089
+#: gcc.c:6187
#, c-format
msgid "libraries: %s\n"
msgstr "kitaplıklar: %s\n"
-#: gcc.c:6146
+#: gcc.c:6244
+#, c-format
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
@@ -5683,56 +5574,61 @@ msgstr ""
"\n"
"Hata raporlama işlemleri için:\n"
-#: gcc.c:6162
+#: gcc.c:6260
#, c-format
msgid "Configured with: %s\n"
msgstr ""
"%s\n"
"seçenekleriyle yapılandırıldı.\n"
-#: gcc.c:6176
+#: gcc.c:6274
#, c-format
msgid "Thread model: %s\n"
msgstr "Evre modeli: %s\n"
-#: gcc.c:6187
+#: gcc.c:6285
#, c-format
msgid "gcc version %s\n"
msgstr "gcc %s sürümü\n"
-#: gcc.c:6189
+#: gcc.c:6287
#, c-format
msgid "gcc driver version %s executing gcc version %s\n"
msgstr "gcc sürücüsü %s sürümü gcc %s sürümünü çalıştırıyor\n"
-#: gcc.c:6197
+#: gcc.c:6295
msgid "no input files"
msgstr "girdi dosyası yok"
-#: gcc.c:6235
-#, c-format
-msgid "%s: %s compiler not installed on this system"
-msgstr "%s: %s derleyici bu sitemde kurulu deÄŸil"
-
-#: gcc.c:6310
+#: gcc.c:6317 gcc.c:6436
#, c-format
msgid "%s: linker input file unused because linking not done"
msgstr "%s: birleştirme yapılmadığından birleştirici girdi dosyası kullanılmadı"
-#: gcc.c:6353
+#: gcc.c:6320
+#, fuzzy
+msgid "cannot specify -o with -c or -S and multiple languages"
+msgstr "-o çoklu derlemeler, -c ya da -S ile kullanılamaz"
+
+#: gcc.c:6355
+#, c-format
+msgid "%s: %s compiler not installed on this system"
+msgstr "%s: %s derleyici bu sitemde kurulu deÄŸil"
+
+#: gcc.c:6476
#, c-format
msgid "language %s not recognized"
msgstr "dil %s tanınmıyor"
-#: gcc.c:6456
+#: gcc.c:6573
msgid "internal gcc abort"
msgstr "dahili gcc çıkışı"
-#: gcov.c:325
+#: gcov.c:384
msgid "Internal gcov abort.\n"
msgstr "Dahili gcov çıkışı.\n"
-#: gcov.c:338
+#: gcov.c:397
msgid ""
"Usage: gcov [OPTION]... SOURCEFILE\n"
"\n"
@@ -5740,7 +5636,7 @@ msgstr ""
"Kullanımı: gcov [SEÇENEK]... KAYNAKDOSYASI\n"
"\n"
-#: gcov.c:339
+#: gcov.c:398
msgid ""
"Print code coverage information.\n"
"\n"
@@ -5748,29 +5644,33 @@ msgstr ""
"Kodu çevreleyen bilgileri gösterir\n"
"\n"
-#: gcov.c:340
+#: gcov.c:399
msgid " -h, --help Print this help, then exit\n"
msgstr " -h, --help Bu yardım iletisini gösterir ve çıkar\n"
-#: gcov.c:341
+#: gcov.c:400
msgid " -v, --version Print version number, then exit\n"
msgstr " -v, --version Sürüm bilgilerini gösterir ve çıkar\n"
-#: gcov.c:342
+#: gcov.c:401
+msgid " -a, --all-blocks Show information for every basic block\n"
+msgstr ""
+
+#: gcov.c:402
msgid " -b, --branch-probabilities Include branch probabilities in output\n"
msgstr " -b, --branch-probabilities Çıktıda dallanma olasılıkları da içerilir\n"
-#: gcov.c:343
+#: gcov.c:403
msgid ""
" -c, --branch-counts Given counts of branches taken\n"
" rather than percentages\n"
msgstr " -c, --branch-counts Yüzde yerine dallanma sayısı alınır\n"
-#: gcov.c:345
+#: gcov.c:405
msgid " -n, --no-output Do not create an output file\n"
msgstr " -n, --no-output Bir çıktı dosyası üretilmez\n"
-#: gcov.c:346
+#: gcov.c:406
msgid ""
" -l, --long-file-names Use long output file names for included\n"
" source files\n"
@@ -5778,21 +5678,25 @@ msgstr ""
" -l, --long-file-names İçerilen kaynak dosyaları için uzun çıktı dosyası\n"
" isimleri kullanılır\n"
-#: gcov.c:348
+#: gcov.c:408
msgid " -f, --function-summaries Output summaries for each function\n"
msgstr " -f, --function-summaries Her işlev için özet çıktılar\n"
-#: gcov.c:349
+#: gcov.c:409
msgid " -o, --object-directory DIR|FILE Search for object files in DIR or called FILE\n"
msgstr ""
" -o, --object-directory DZN|DSY Nesne dosyaları DZN içinde ya da DSY\n"
" dosyasında belirtilen yerlerde aranır\n"
-#: gcov.c:350
+#: gcov.c:410
msgid " -p, --preserve-paths Preserve all pathname components\n"
msgstr " -p, --preserve-paths Tüm dosya yolu elemanları saklanır\n"
-#: gcov.c:351
+#: gcov.c:411
+msgid " -u, --unconditional-branches Show unconditional branch counts too\n"
+msgstr ""
+
+#: gcov.c:412
#, c-format
msgid ""
"\n"
@@ -5803,401 +5707,294 @@ msgstr ""
"Hata raporlama işlemleri için:\n"
"%s.\n"
-#: gcov.c:361
+#: gcov.c:422
#, c-format
msgid "gcov (GCC) %s\n"
msgstr "gcov (GCC) %s\n"
-#: gcov.c:362
-msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
-msgstr "Telif Hakkı (C) 2001 Free Software Foundation, Inc.\n"
-
-#: gcov.c:500
-#, c-format
-msgid "Could not open basic block file %s.\n"
-msgstr "Temel blok dosyası %s açılamadı.\n"
-
-#: gcov.c:507
-#, c-format
-msgid "Could not open program flow graph file %s.\n"
-msgstr "Program akış diyagramı dosyası %s açılamıyor.\n"
-
-#: gcov.c:524
-#, c-format
-msgid "Could not open data file %s.\n"
-msgstr "%s veri dosyası açılamadı.\n"
-
-#: gcov.c:525
-msgid "Assuming that all execution counts are zero.\n"
-msgstr "Tüm çalıştırılanların sayısı sıfır kabul ediliyor.\n"
-
-#: gcov.c:534
-#, c-format
-msgid "No executable code associated with file %s.\n"
-msgstr "%s dosyası ile ilişkilendirilecek kod yok.\n"
-
-#: gcov.c:1186
-#, c-format
-msgid "%s of %d lines executed in %s %s\n"
-msgstr "%3$s dosyasındaki %2$d satırın %1$s satırı çalıştırıldı %4$s\n"
-
-#: gcov.c:1191
-#, c-format
-msgid "No executable lines in %s %s\n"
-msgstr "%s içinde çalıştırılacak satır yok %s\n"
-
-#: gcov.c:1198
-#, c-format
-msgid "%s of %d branches executed in %s %s\n"
-msgstr "%3$s dosyasındaki %2$d daldan %1$s dal çalıştırıldı %4$s\n"
-
-#: gcov.c:1203
-#, c-format
-msgid "%s of %d branches taken at least once in %s %s\n"
-msgstr "%3$s dosyasındaki %2$d daldan %1$s dal en az bir kere alındı %4$s\n"
-
-#: gcov.c:1209
-#, c-format
-msgid "No branches in %s %s\n"
-msgstr "%s dosyasında dal yok %s\n"
-
-#: gcov.c:1211
-#, c-format
-msgid "%s of %d calls executed in %s %s\n"
-msgstr "%3$s dosyasındaki %2$d çağrıdan %1$s çağrı çalıştırıldı %4$s\n"
-
-#: gcov.c:1216
-#, c-format
-msgid "No calls in %s %s\n"
-msgstr "%s dosyasında çağrı yok %s\n"
-
-#: gcov.c:1351
-#, c-format
-msgid "didn't use all bb entries of graph, function %s\n"
-msgstr "işlev %s ve diyagramın tüm bb girdileri kullanılmadı\n"
-
-#: gcov.c:1353
-#, c-format
-msgid "block_num = %ld, num_blocks = %d\n"
-msgstr "blok_num = %ld, blok_sayısı = %d\n"
-
-#: gcov.c:1367
-#, c-format
-msgid "ERROR: unexpected line number %ld\n"
-msgstr "HATA: satır numarası %ld beklenmiyordu\n"
-
-#: gcov.c:1383
-#, c-format
-msgid "ERROR: too many basic blocks in function %s\n"
-msgstr "HATA: %s içinde temel blok sayısı çok fazla\n"
-
-#: gcov.c:1398
-#, c-format
-msgid "ERROR: out of range line number in function %s\n"
-msgstr "%s işlevindeki satır numarası kapsamdışı\n"
-
-#: gcov.c:1470
-#, c-format
-msgid "Could not open source file %s.\n"
-msgstr "%s kaynak dosyası açılamadı.\n"
-
-#: gcov.c:1480
-#, c-format
-msgid "Warning: source file %s is newer than %s\n"
-msgstr "Uyarı: kaynak dosya %s %s den daha yeni\n"
-
-#: gcov.c:1510
-#, c-format
-msgid "Unexpected EOF while reading source file %s.\n"
-msgstr "%s kaynak dosyası okunurken anlaşılmayan dosya sonu.\n"
-
-#: gcov.c:1532
-#, c-format
-msgid "call %2d never executed\n"
-msgstr "%2d. çağrı hiç çalıştırılmadı\n"
+#: gcov.c:423
+msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
+msgstr "Telif Hakkı © 2003 Free Software Foundation, Inc.\n"
-#: gcov.c:1535
-#, c-format
-msgid "call %2d returns %s\n"
-msgstr "çağrı %2d %s döndürüyor\n"
+#: gcov.c:425
+#, fuzzy
+msgid ""
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or \n"
+"FITNESS FOR A PARTICULAR PURPOSE.\n"
+"\n"
+msgstr ""
+"Bu bir serbest yazılımdır; kopyalama koşulları için kaynak koduna bakınız.\n"
+"Hiçbir garantisi yoktur; hatta SATILABİLİRLİĞİ veya ŞAHSİ KULLANIMINIZA\n"
+"UYGUNLUĞU için bile garanti verilmez.\n"
-#: gcov.c:1543
-#, c-format
-msgid "branch %2d never executed\n"
-msgstr "%2d. dal hiç çalıştırılmadı\n"
+#: gcov.c:515
+#, fuzzy, c-format
+msgid "%s:no functions found\n"
+msgstr "hiç komut-dizgesi yok"
-#: gcov.c:1546
-#, c-format
-msgid "branch %2d taken %s\n"
-msgstr "%2d. dal alınma sayısı = %s\n"
+#: gcov.c:536 gcov.c:564
+#, fuzzy
+msgid "\n"
+msgstr ". satırında:\n"
-#: gcov.c:1610
-#, c-format
-msgid "Creating %s.\n"
-msgstr "%s oluÅŸturuluyor.\n"
+#: gcov.c:551
+#, fuzzy, c-format
+msgid "%s:creating `%s'\n"
+msgstr "%s oluÅŸturuluyor"
-#: gcov.c:1613
-#, c-format
-msgid "Error writing output file %s.\n"
+#: gcov.c:555
+#, fuzzy, c-format
+msgid "%s:error writing output file `%s'\n"
msgstr "çıktı dosyası %s yazılırken hata.\n"
-#: gcov.c:1618
-#, c-format
-msgid "Could not open output file %s.\n"
+#: gcov.c:560
+#, fuzzy, c-format
+msgid "%s:could not open output file `%s'\n"
msgstr "%s çıktı dosyası açılamadı.\n"
-#: gcse.c:763
-#, c-format
-msgid "GCSE disabled: %d > 1000 basic blocks and %d >= 20 edges/basic block"
-msgstr ""
-"Genel ortak alt ifade elemesi iptal edildi:\n"
-"%d > 1000 temel blok ve %d >= 20 kenar/temel blok"
-
-#: gcse.c:775
-#, c-format
-msgid "GCSE disabled: %d basic blocks and %d registers"
-msgstr "Genel ortak alt ifade elemesi iptal edildi: %d temel blok ve %d yazmaç"
-
-#: genautomata.c:1490
-#, c-format
-msgid "Name `%s' contains quotes"
-msgstr "`%s' ismi tırnak içeriyor"
-
-#: genautomata.c:1621
-#, c-format
-msgid "invalid string `%s' in define_cpu_unit"
-msgstr "define_cpu_unit içindeki `%s' dizgesi geçersiz"
+#: gcov.c:711
+#, fuzzy, c-format
+msgid "%s:cannot open graph file\n"
+msgstr "%s: bir COFF dosyası olarak açılamıyor"
-#: genautomata.c:1650
-#, c-format
-msgid "invalid string `%s' in define_query_cpu_unit"
-msgstr "define_query_cpu_unit içindeki `%s' dizgesi geçersiz"
+#: gcov.c:717
+#, fuzzy, c-format
+msgid "%s:not a gcov graph file\n"
+msgstr "%s: bir COFF dosyası değil"
-#: genautomata.c:1682 genautomata.c:1685
+#: gcov.c:730
#, c-format
-msgid "invalid string `%s' in define_bypass"
-msgstr "define_bypass içindeki `%s' dizgesi geçersiz"
+msgid "%s:version `%.4s', prefer `%.4s'\n"
+msgstr ""
-#: genautomata.c:1720
+#: gcov.c:782
#, c-format
-msgid "invalid first string `%s' in exclusion_set"
-msgstr "exclusion_set içindeki ilk `%s' dizgesi geçersiz"
+msgid "%s:already seen blocks for `%s'\n"
+msgstr ""
-#: genautomata.c:1724
+#: gcov.c:903 gcov.c:1062
#, c-format
-msgid "invalid second string `%s' in exclusion_set"
-msgstr "exclusion_set içindeki ikinci `%s' dizgesi geçersiz"
+msgid "%s:corrupted\n"
+msgstr ""
-#: genautomata.c:1760
-#, c-format
-msgid "invalid first string `%s' in presence_set"
-msgstr "presence_set içindeki ilk `%s' dizgesi geçersiz"
+#: gcov.c:976
+#, fuzzy, c-format
+msgid "%s:cannot open data file\n"
+msgstr "%s: bir COFF dosyası olarak açılamıyor"
-#: genautomata.c:1764
-#, c-format
-msgid "invalid second string `%s' in presence_set"
-msgstr "presence_set içindeki ikinci `%s' dizgesi geçersiz"
+#: gcov.c:981
+#, fuzzy, c-format
+msgid "%s:not a gcov data file\n"
+msgstr "%s: bir COFF dosyası değil"
-#: genautomata.c:1800
+#: gcov.c:994
#, c-format
-msgid "invalid first string `%s' in absence_set"
-msgstr "absence_set içindeki ilk `%s' dizgesi geçersiz"
+msgid "%s:version `%.4s', prefer version `%.4s'\n"
+msgstr ""
-#: genautomata.c:1804
+#: gcov.c:1000
#, c-format
-msgid "invalid second string `%s' in absence_set"
-msgstr "absence_set içindeki ikinci `%s' dizgesi geçersiz"
+msgid "%s:stamp mismatch with graph file\n"
+msgstr ""
-#: genautomata.c:1837
-#, c-format
-msgid "invalid string `%s' in define_automaton"
-msgstr "define_automaton içindeki `%s' dizgesi geçersiz"
+#: gcov.c:1026
+#, fuzzy, c-format
+msgid "%s:unknown function `%u'\n"
+msgstr "bilinmeyen `%s' spec iÅŸlevi"
-#: genautomata.c:1868
-#, c-format
-msgid "invalid option `%s' in automata_option"
-msgstr "automata_option içindeki `%s' dizgesi geçersiz"
+#: gcov.c:1039
+#, fuzzy, c-format
+msgid "%s:profile mismatch for `%s'\n"
+msgstr "`%s' için önceki yerine getirme"
-#: genautomata.c:1890
-#, c-format
-msgid "garbage after ) in reservation `%s'"
-msgstr "rezervasyon `%s' içindeki ) den sonrası bozuk"
+#: gcov.c:1062
+#, fuzzy, c-format
+msgid "%s:overflowed\n"
+msgstr "%s: kapsamın üstten taşma hatası"
-#: genautomata.c:1921 genautomata.c:1954 genautomata.c:1981
+#: gcov.c:1085
#, c-format
-msgid "invalid `%s' in reservation `%s'"
-msgstr "`%s' ilerde kullanılmak üzere ayrılırken içindeki `%s' dizgesi geçersiz"
+msgid "%s:`%s' lacks entry and/or exit blocks\n"
+msgstr ""
-#: genautomata.c:1932
+#: gcov.c:1090
#, c-format
-msgid "repetition `%s' <= 1 in reservation `%s'"
-msgstr "rezervasyon `%s' içindeki `%s' tekrar sayısı <=1"
+msgid "%s:`%s' has arcs to entry block\n"
+msgstr ""
-#: genautomata.c:2425
+#: gcov.c:1098
#, c-format
-msgid "unit `%s' in exclusion is not declared"
-msgstr "dışlama içindeki birim `%s' bildirilmemiş"
+msgid "%s:`%s' has arcs from exit block\n"
+msgstr ""
-#: genautomata.c:2427
+#: gcov.c:1306
#, c-format
-msgid "`%s' in exclusion is not unit"
-msgstr "dışlama içindeki `%s' birim değil"
+msgid "%s:graph is unsolvable for `%s'\n"
+msgstr ""
-#: genautomata.c:2465
-#, c-format
-msgid "unit `%s' excludes itself"
-msgstr "birim `%s' kendini dışlıyor"
+#: gcov.c:1386
+#, fuzzy, c-format
+msgid "%s `%s'\n"
+msgstr "%s `%s' içinde:"
-#: genautomata.c:2473
-#, c-format
-msgid "units `%s' and `%s' in exclusion set belong to different automata"
-msgstr "dışlama kümesindeki `%s' ve `%s' birimleri farklı automata'ların üyesi"
+#: gcov.c:1389
+#, fuzzy, c-format
+msgid "Lines executed:%s of %d\n"
+msgstr "%3$s dosyasındaki %2$d satırın %1$s satırı çalıştırıldı %4$s\n"
-#: genautomata.c:2603 genautomata.c:2609
-#, c-format
-msgid "unit `%s' excludes and requires presence of `%s'"
-msgstr "birim `%s' dışlanıyor ve `%s'in varlığını gerektiriyor"
+#: gcov.c:1393
+#, fuzzy
+msgid "No executable lines"
+msgstr "%s içinde çalıştırılacak satır yok %s\n"
-#: genautomata.c:2623 genautomata.c:2629
-#, c-format
-msgid "unit `%s' requires absence and presence of `%s'"
-msgstr "birim `%s', `%s'in varlığını ve yokluğunu gerektirir"
+#: gcov.c:1399
+#, fuzzy, c-format
+msgid "Branches executed:%s of %d\n"
+msgstr "%3$s dosyasındaki %2$d daldan %1$s dal çalıştırıldı %4$s\n"
-#: genautomata.c:2692 genautomata.c:2695
-#, c-format
-msgid "repeated declaration of automaton `%s'"
-msgstr "automaton `%s' birden fazla bildirilmiÅŸ"
+#: gcov.c:1403
+#, fuzzy, c-format
+msgid "Taken at least once:%s of %d\n"
+msgstr "%3$s dosyasındaki %2$d daldan %1$s dal en az bir kere alındı %4$s\n"
-#: genautomata.c:2711
-#, c-format
-msgid "define_insn_reservation `%s' has negative latency time"
-msgstr "define_insn_reservation `%s' negatif gecikme süresine sahip"
+#: gcov.c:1409
+#, fuzzy
+msgid "No branches\n"
+msgstr "%s dosyasında dal yok %s\n"
-#: genautomata.c:2717
-#, c-format
-msgid "`%s' is already used as insn reservation name"
-msgstr "`%s' zaten komut rezervasyon ismi olarak kullanılmış"
+#: gcov.c:1411
+#, fuzzy, c-format
+msgid "Calls executed:%s of %d\n"
+msgstr "%3$s dosyasındaki %2$d çağrıdan %1$s çağrı çalıştırıldı %4$s\n"
-#: genautomata.c:2723
-#, c-format
-msgid "define_bypass `%s - %s' has negative latency time"
-msgstr "define_bypass `%s - %s' negatif gecikme süresine sahip"
+#: gcov.c:1415
+#, fuzzy
+msgid "No calls\n"
+msgstr "%s dosyasında çağrı yok %s\n"
-#: genautomata.c:2737
-#, c-format
-msgid "automaton `%s' is not declared"
-msgstr "automaton `%s' bildirilmedi"
+#: gcov.c:1556
+#, fuzzy, c-format
+msgid "%s:no lines for `%s'\n"
+msgstr "`%2$s' den önce %1$s"
-#: genautomata.c:2747
-#, c-format
-msgid "define_unit `%s' without automaton when one defined"
-msgstr "tek atamada automaton'suz define_unit `%s'"
+#: gcov.c:1751
+#, fuzzy, c-format
+msgid "call %2d returned %s\n"
+msgstr "çağrı %2d %s döndürüyor\n"
-#: genautomata.c:2753
+#: gcov.c:1756
#, c-format
-msgid "`%s' is declared as cpu unit"
-msgstr "`%s' cpu birimi olarak bildirilmiÅŸ"
+msgid "call %2d never executed\n"
+msgstr "%2d. çağrı hiç çalıştırılmadı\n"
-#: genautomata.c:2762
-#, c-format
-msgid "`%s' is declared as cpu reservation"
-msgstr "`%s' iÅŸlemci rezervasyonu olarak bildirilmiÅŸ"
+#: gcov.c:1761
+#, fuzzy, c-format
+msgid "branch %2d taken %s%s\n"
+msgstr "%2d. dal alınma sayısı = %s\n"
-#: genautomata.c:2772
+#: gcov.c:1765
#, c-format
-msgid "repeated declaration of unit `%s'"
-msgstr "birim `%s'in bildirimi tekrarlanmış"
+msgid "branch %2d never executed\n"
+msgstr "%2d. dal hiç çalıştırılmadı\n"
-#: genautomata.c:2775
-#, c-format
-msgid "repeated declaration of reservation `%s'"
-msgstr "rezervasyon `%s' birden fazla bildirilmiÅŸ"
+#: gcov.c:1770
+#, fuzzy, c-format
+msgid "unconditional %2d taken %s\n"
+msgstr "%2d. dal alınma sayısı = %s\n"
-#: genautomata.c:2790 genautomata.c:2793
-#, c-format
-msgid "there is no insn reservation `%s'"
-msgstr "komut rezervasyonu `%s' yok"
+#: gcov.c:1773
+#, fuzzy, c-format
+msgid "unconditional %2d never executed\n"
+msgstr "%2d. çağrı hiç çalıştırılmadı\n"
-#: genautomata.c:2810 genautomata.c:2815
-#, c-format
-msgid "the same bypass `%s - %s' is already defined"
-msgstr "aynı bypass `%s - %s' zaten tanımlı"
+#: gcov.c:1805
+#, fuzzy, c-format
+msgid "%s:cannot open source file\n"
+msgstr "%s: bir COFF dosyası olarak açılamıyor"
-#: genautomata.c:2820
-#, c-format
-msgid "bypass `%s - %s' is already defined"
-msgstr "bypass `%s - %s' zaten tanımlı"
+#: gcov.c:1815
+#, fuzzy, c-format
+msgid "%s:source file is newer than graph file `%s'\n"
+msgstr "Uyarı: kaynak dosya %s %s den daha yeni\n"
-#: genautomata.c:2925 genautomata.c:2927
-#, c-format
-msgid "automaton `%s' is not used"
-msgstr "automaton `%s' kullanılmamış"
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:747
+msgid "GCSE disabled"
+msgstr ""
-#: genautomata.c:2950
-#, c-format
-msgid "undeclared unit or reservation `%s'"
-msgstr "bildirilmemiÅŸ birim ya da rezervasyon `%s'"
+#: gcse.c:6108
+msgid "NULL pointer checks disabled"
+msgstr ""
-#: genautomata.c:3028 genautomata.c:3030
-#, c-format
-msgid "unit `%s' is not used"
-msgstr "birim `%s' kullanılmamış"
+#. Return if there's nothing to do, or it is too expensive.
+#: gcse.c:7994
+#, fuzzy
+msgid "jump bypassing disabled"
+msgstr "-g seçeneği iptal edildi"
-#: genautomata.c:3035 genautomata.c:3037
-#, c-format
-msgid "reservation `%s' is not used"
-msgstr "rezervasyon `%s' kullanılmamış"
+#: gcse.c:8055
+#, fuzzy, c-format
+msgid "%s: %d basic blocks and %d edges/basic block"
+msgstr ""
+"Genel ortak alt ifade elemesi iptal edildi:\n"
+"%d > 1000 temel blok ve %d >= 20 kenar/temel blok"
-#: genautomata.c:3134
-#, c-format
-msgid "cycle in definition of reservation `%s'"
-msgstr "rezervasyon `%s'in tanımında döngü"
+#: gcse.c:8068
+#, fuzzy, c-format
+msgid "%s: %d basic blocks and %d registers"
+msgstr "Genel ortak alt ifade elemesi iptal edildi: %d temel blok ve %d yazmaç"
-#: genautomata.c:5333
-#, c-format
-msgid "Units `%s' and `%s' should be in the same automaton"
-msgstr "`%s' ve `%s' aynı automaton içinde olmalıydı"
+#: ggc-common.c:398 ggc-common.c:406 ggc-common.c:487 ggc-common.c:507
+#: ggc-page.c:2030 ggc-page.c:2062 ggc-page.c:2069 ggc-zone.c:1361
+#: ggc-zone.c:1367 ggc-zone.c:1372 ggc-zone.c:1379
+#, fuzzy, c-format
+msgid "can't write PCH file: %m"
+msgstr "%s e yazılamıyor"
-#: genautomata.c:9441
-msgid "-split has no argument."
-msgstr "-split argümansız."
+#: ggc-common.c:500
+#, fuzzy, c-format
+msgid "can't get position in PCH file: %m"
+msgstr "depo bilgisi `%s' dosyasında oluşturulamıyor"
-#: genautomata.c:9442
-msgid "option `-split' has not been implemented yet\n"
-msgstr "`-split' seçeneği henüz programlanmadı\n"
+#: ggc-common.c:510
+#, fuzzy, c-format
+msgid "can't write padding to PCH file: %m"
+msgstr "çıktı dosyasına yazılamıyor"
-#: genautomata.c:9486 genautomata.c:9491
-#, c-format
-msgid "Automaton `%s': Insn `%s' will never be issued"
-msgstr "Automaton `%s': Komut `%s' hiç kullanılmayacak"
+#: ggc-common.c:563 ggc-common.c:571 ggc-common.c:578 ggc-common.c:581
+#: ggc-common.c:654 ggc-common.c:657 ggc-page.c:2157 ggc-zone.c:1389
+#, fuzzy, c-format
+msgid "can't read PCH file: %m"
+msgstr "geçici dosya okunamıyor"
-#: genautomata.c:9498 genautomata.c:9501
-#, c-format
-msgid "Insn `%s' will never be issued"
-msgstr "Komut `%s' hiç kullanılmayacak"
+#: ggc-common.c:681
+msgid "had to relocate PCH"
+msgstr ""
-#: genautomata.c:9649
-msgid "Errors in DFA description"
-msgstr "DFA açıklamasında hatalar var"
+#: ggc-page.c:1325
+#, fuzzy, c-format
+msgid "open /dev/zero: %m"
+msgstr "/dev/zero açık"
-#: genautomata.c:9732
-#, c-format
-msgid "Error in writing DFA description file %s"
-msgstr "DFA açıklama dosyası %s yazılırken hata"
+#: ggc-page.c:2047 ggc-page.c:2053
+#, fuzzy
+msgid "can't write PCH file"
+msgstr "çıktı dosyasına yazılamıyor"
-#: genconditions.c:196
-msgid "No input file name."
-msgstr "Girdi dosyası yok."
+#: ggc-simple.c:506
+msgid "Generating PCH files is not supported when using ggc-simple.c"
+msgstr ""
-#: ggc-page.c:1265
-msgid "open /dev/zero"
-msgstr "/dev/zero açık"
+#: global.c:356 global.c:369 global.c:383
+#, fuzzy, c-format
+msgid "%s cannot be used in asm here"
+msgstr "\"%s\" bir makro ismi olarak kullanılamaz"
-#: graph.c:420 profile.c:1204 profile.c:1211 toplev.c:1836 toplev.c:5168
-#: f/com.c:14210 java/jcf-parse.c:917 java/jcf-parse.c:1063 java/lex.c:1776
-#: objc/objc-act.c:449
-#, c-format
-msgid "can't open %s"
+#: graph.c:403 toplev.c:1481 toplev.c:4408 f/com.c:14202 java/jcf-parse.c:883
+#: java/jcf-parse.c:1030 java/lex.c:1828 objc/objc-act.c:503
+#, fuzzy, c-format
+msgid "can't open %s: %m"
msgstr "%s açılamıyor"
#: haifa-sched.c:196
@@ -6205,71 +6002,81 @@ msgstr "%s açılamıyor"
msgid "fix_sched_param: unknown param: %s"
msgstr "fix_sched_param: bilinmeyen parametre: %s"
-#: integrate.c:174
+#: integrate.c:166
msgid "function cannot be inline"
msgstr "işlev özümlenemez"
-#: integrate.c:178
+#: integrate.c:170
msgid "varargs function cannot be inline"
msgstr "varargs işlevi özümlenemez"
-#: integrate.c:181
+#: integrate.c:173
msgid "function using alloca cannot be inline"
msgstr "alloca kullanarak işlev özümlenemez"
-#: integrate.c:184
+#: integrate.c:176
+#, fuzzy
+msgid "function using longjmp cannot be inline"
+msgstr "setjmp kullanarak işlev özümlenemez"
+
+#: integrate.c:179
msgid "function using setjmp cannot be inline"
msgstr "setjmp kullanarak işlev özümlenemez"
-#: integrate.c:187
+#: integrate.c:182
msgid "function uses __builtin_eh_return"
msgstr "işlev __builtin_eh_return kullanıyor"
-#: integrate.c:190
+#: integrate.c:185
msgid "function with nested functions cannot be inline"
msgstr "içiçe işlevleri olan bir işlev özümlenemez"
-#: integrate.c:194
+#: integrate.c:189
msgid "function with label addresses used in initializers cannot inline"
msgstr "başlangıç değerlerinde kullanılmış etiket adresli bir işlev özümlenemez"
-#: integrate.c:201 integrate.c:245
+#: integrate.c:196 integrate.c:240
msgid "function too large to be inline"
msgstr "işlev özümlenmek için fazla büyük"
-#: integrate.c:211
+#: integrate.c:206
msgid "no prototype, and parameter address used; cannot be inline"
msgstr "prototip ve kullanılan parametre adresi yok; özümlenemez"
-#: integrate.c:218 integrate.c:263
+#: integrate.c:213 integrate.c:258
msgid "inline functions not supported for this return value type"
msgstr "bu dönen değer türü için özümlenen işlevler desteklenmiyor"
-#: integrate.c:223
+#: integrate.c:218
msgid "function with varying-size return value cannot be inline"
msgstr "değişken uzunluklu dönen değerli işlevler özümlenemez"
-#: integrate.c:230
+#: integrate.c:225
msgid "function with varying-size parameter cannot be inline"
msgstr "değişken uzunluk parametreli işlevler özümlenemez"
-#: integrate.c:233
+#: integrate.c:228
msgid "function with transparent unit parameter cannot be inline"
msgstr "şeffaf birim parametreli işlevler özümlenemez"
-#: integrate.c:252
+#: integrate.c:247
msgid "function with computed jump cannot inline"
msgstr "hesaplanmış jump bulunan işlevler özümlenemez"
-#: integrate.c:256
+#: integrate.c:251
msgid "function with nonlocal goto cannot be inline"
msgstr "yerel olmayan goto bulunan işlevler özümlenemez"
-#: integrate.c:270
+#: integrate.c:265
msgid "function with target specific attribute(s) cannot be inlined"
msgstr "hedefe özel öznitelikler bulunan işlevler özümlenemez"
-#: line-map.c:198
+#: jump.c:1896
+#, fuzzy
+msgid "%Hwill never be executed"
+msgstr "%2d. çağrı hiç çalıştırılmadı\n"
+
+#: line-map.c:202
#, c-format
msgid "In file included from %s:%u"
msgstr ""
@@ -6288,7 +6095,7 @@ msgstr ""
#. with all the "from"s lined up.
#. The trailing comma is at the beginning of this message,
#. and the trailing colon is not translated.
-#: line-map.c:216
+#: line-map.c:220
#, c-format
msgid ""
",\n"
@@ -6297,62 +6104,156 @@ msgstr ""
",\n"
"\t\t%s:%u"
+#. What to print when a switch has no documentation.
+#: opts.c:149
+msgid "This switch lacks documentation"
+msgstr ""
+
+#. Eventually this should become a hard error IMO.
+#: opts.c:318
+#, fuzzy, c-format
+msgid "command line option \"%s\" is valid for %s but not for %s"
+msgstr "\"-%c%s%s\", %s için geçerli ama %s için değil"
+
+#: opts.c:406
+#, fuzzy, c-format
+msgid "missing argument to \"%s\""
+msgstr "\"-%s\" seçeneğinin argümanı eksik"
+
+#: opts.c:416
+#, fuzzy, c-format
+msgid "argument to \"%s\" should be a non-negative integer"
+msgstr "bin terimi bir negatif olmayan tamsayı sabit olmalı"
+
+#: opts.c:463
+#, fuzzy, c-format
+msgid "unrecognized command line option \"%s\""
+msgstr "yoksayılan komut satırı seçeneği `%s'"
+
+#: opts.c:646
+msgid "-Wuninitialized is not supported without -O"
+msgstr "-Wuninitialized seçeneği -O olmaksızın desteklenmiyor"
+
+#: opts.c:1350
+#, fuzzy, c-format
+msgid "unrecognized register name \"%s\""
+msgstr "yazmaç ismi `%s' bilinmiyor"
+
+#: opts.c:1394
+#, fuzzy, c-format
+msgid "unknown tls-model \"%s\""
+msgstr "`%s': bilinmeyen tls-model seçeneği"
+
+#: opts.c:1450
+#, fuzzy
+msgid "-fwritable-strings is deprecated; see documentation for details"
+msgstr "switch \"%s\" eski kullanım, lütfen ayrıntılar için belgelere bakınız"
+
+#: opts.c:1534
+#, c-format
+msgid "%s: --param arguments should be of the form NAME=VALUE"
+msgstr ""
+
+#: opts.c:1539
+#, fuzzy, c-format
+msgid "invalid --param value `%s'"
+msgstr "geçersiz parametre değeri `%s'"
+
+#: opts.c:1635
+#, fuzzy
+msgid "target system does not support debug output"
+msgstr "hedef biçim sonsuzu desteklemiyor"
+
+#: opts.c:1642
+#, fuzzy, c-format
+msgid "debug format \"%s\" conflicts with prior selection"
+msgstr "'%s' veri alanı önceki bildirimle çelişiyor"
+
+#: opts.c:1658
+#, fuzzy, c-format
+msgid "unrecognised debug output level \"%s\""
+msgstr "bölüm ismi \"%s\" bilinmiyor"
+
+#: opts.c:1660
+#, c-format
+msgid "debug output level %s is too high"
+msgstr ""
+
+#: opts.c:1679
+msgid "The following options are language-independent:\n"
+msgstr ""
+
+#: opts.c:1686
+#, c-format
+msgid ""
+"The %s front end recognizes the following options:\n"
+"\n"
+msgstr ""
+
+#: opts.c:1700
+msgid "The --param option recognizes the following as parameters:\n"
+msgstr ""
+
#. If we didn't find this parameter, issue an error message.
-#: params.c:80
+#: params.c:76
#, c-format
msgid "invalid parameter `%s'"
msgstr "geçersiz parametre `%s'"
-#: profile.c:397
-#, c-format
-msgid "Profile does not match flowgraph of function %s (out of date?)"
-msgstr "Profil %s işlevinin akış grafiği ile uyumsuz (güncel olmayabilir mi?)"
+#: profile.c:288
+msgid "corrupted profile info: run_max * runs < sum_max"
+msgstr ""
-#: profile.c:400
-msgid ".da file corrupted"
-msgstr ".da dosyası bozulmuş"
+#: profile.c:294
+msgid "corrupted profile info: sum_all is smaller than sum_max"
+msgstr ""
-#: profile.c:634
-#, c-format
-msgid "corrupted profile info: prob for %d-%d thought to be %d"
+#: profile.c:336
+#, fuzzy, c-format
+msgid "corrupted profile info: edge from %i to %i exceeds maximal count"
msgstr "bozuk profil bilgisi: %3$d olduğu halde %1$d-%2$d için sonda"
-#: profile.c:1226
-#, c-format
-msgid "file %s not found, execution counts assumed to be zero"
-msgstr "%s bulunamadı, çalıştırma sayısı sıfır kabul edildi"
+#: profile.c:499
+#, fuzzy, c-format
+msgid "corrupted profile info: number of iterations for basic block %d thought to be %i"
+msgstr "bozuk profil bilgisi: %3$d olduğu halde %1$d-%2$d için sonda"
+
+#: profile.c:526
+#, fuzzy, c-format
+msgid "corrupted profile info: number of executions for edge %d-%d thought to be %i"
+msgstr "bozuk profil bilgisi: %3$d olduğu halde %1$d-%2$d için sonda"
-#: protoize.c:542
+#: protoize.c:534
#, c-format
msgid "%s: internal abort\n"
msgstr "%s: dahili çıkış\n"
-#: protoize.c:633
+#: protoize.c:592
#, c-format
msgid "%s: error writing file `%s': %s\n"
msgstr "%s: `%s' dosyası yazılırken hata: %s\n"
-#: protoize.c:678
+#: protoize.c:636
#, c-format
msgid "%s: usage '%s [ -VqfnkN ] [ -i <istring> ] [ filename ... ]'\n"
msgstr "%s: kullanımı '%s [ -VqfnkN ] [ -i <Gdizgesi> ] [ dosya ... ]'\n"
-#: protoize.c:681
+#: protoize.c:639
#, c-format
msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B <dirname> ] [ filename ... ]'\n"
msgstr "%s: kullanımı '%s [ -VqfnkNlgC ] [ -B <dizin> ] [ dosya ... ]'\n"
-#: protoize.c:788
+#: protoize.c:745
#, c-format
msgid "%s: warning: no read access for file `%s'\n"
msgstr "%s: uyarı: `%s' dosyası için okuma erişimi yok\n"
-#: protoize.c:796
+#: protoize.c:753
#, c-format
msgid "%s: warning: no write access for file `%s'\n"
msgstr "%s: uyarı: `%s' dosyası için yazma erişimi yok\n"
-#: protoize.c:804
+#: protoize.c:761
#, c-format
msgid "%s: warning: no write access for dir containing `%s'\n"
msgstr "%s: uyarı: `%s' dosyasını içeren dizine yazma izni yok\n"
@@ -6360,17 +6261,17 @@ msgstr "%s: uyarı: `%s' dosyasını içeren dizine yazma izni yok\n"
#. Catch cases like /.. where we try to backup to a
#. point above the absolute root of the logical file
#. system.
-#: protoize.c:1222
+#: protoize.c:1148
#, c-format
msgid "%s: invalid file name: %s\n"
msgstr "%s: geçersiz dosya ismi: %s\n"
-#: protoize.c:1374
+#: protoize.c:1296
#, c-format
msgid "%s: %s: can't get status: %s\n"
msgstr "%s: %s: durum alınamıyor: %s\n"
-#: protoize.c:1395
+#: protoize.c:1317
#, c-format
msgid ""
"\n"
@@ -6379,137 +6280,137 @@ msgstr ""
"\n"
"%s: ölümcül hata: yardımcı bilgi dosyası %d. satırda bozulmuş\n"
-#: protoize.c:1731
+#: protoize.c:1646
#, c-format
msgid "%s:%d: declaration of function `%s' takes different forms\n"
msgstr "%s:%d: `%s' işlevinin bildirimi farklı şekiller alıyor\n"
-#: protoize.c:1989
+#: protoize.c:1901
#, c-format
msgid "%s: compiling `%s'\n"
msgstr "%s: `%s' derleniyor\n"
-#: protoize.c:2012
+#: protoize.c:1924
#, c-format
msgid "%s: wait: %s\n"
msgstr "%s: bekliyor: %s\n"
-#: protoize.c:2017
+#: protoize.c:1929
#, c-format
msgid "%s: subprocess got fatal signal %d\n"
msgstr "%s: altyordam %d ölümcül sinyalini aldı\n"
-#: protoize.c:2025
+#: protoize.c:1937
#, c-format
msgid "%s: %s exited with status %d\n"
msgstr "%s: %s %d durumuyla çıktı\n"
-#: protoize.c:2077
+#: protoize.c:1986
#, c-format
msgid "%s: warning: missing SYSCALLS file `%s'\n"
msgstr "%s: uyarı: SYSCALLS dosyası `%s' kayıp\n"
-#: protoize.c:2086 protoize.c:2115
+#: protoize.c:1995 protoize.c:2024
#, c-format
msgid "%s: can't read aux info file `%s': %s\n"
msgstr "%s: yardımcı bilgi dosyası `%s' okunamıyor: %s\n"
-#: protoize.c:2131 protoize.c:2159
+#: protoize.c:2040 protoize.c:2068
#, c-format
msgid "%s: can't get status of aux info file `%s': %s\n"
msgstr "%s: yardımcı bilgi dosyası `%s' için durum alınamıyor: %s\n"
-#: protoize.c:2187
+#: protoize.c:2096
#, c-format
msgid "%s: can't open aux info file `%s' for reading: %s\n"
msgstr "%s: yardımcı bilgi dosyası `%s' okumak için açılamıyor: %s\n"
-#: protoize.c:2205
+#: protoize.c:2114
#, c-format
msgid "%s: error reading aux info file `%s': %s\n"
msgstr "%s: `%s' yardımcı bilgi dosyasında okuma hatası: %s\n"
-#: protoize.c:2218
+#: protoize.c:2127
#, c-format
msgid "%s: error closing aux info file `%s': %s\n"
msgstr "%s: `%s' yardımcı bilgi dosyasında kapama hatası: %s\n"
-#: protoize.c:2234
+#: protoize.c:2143
#, c-format
msgid "%s: can't delete aux info file `%s': %s\n"
msgstr "%s: yardımcı bilgi dosyası `%s' silinemiyor: %s\n"
-#: protoize.c:2316 protoize.c:4318
+#: protoize.c:2225 protoize.c:4195
#, c-format
msgid "%s: can't delete file `%s': %s\n"
msgstr "%s: `%s' silinemiyor: %s\n"
-#: protoize.c:2395
+#: protoize.c:2303
#, c-format
msgid "%s: warning: can't rename file `%s' to `%s': %s\n"
msgstr "%s: uyarı: `%s' dosyasının ismi `%s' yapılamıyor: %s\n"
-#: protoize.c:2520
+#: protoize.c:2425
#, c-format
msgid "%s: conflicting extern definitions of '%s'\n"
msgstr "%s: '%s' extern tanımları çelişiyor\n"
-#: protoize.c:2524
+#: protoize.c:2429
#, c-format
msgid "%s: declarations of '%s' will not be converted\n"
msgstr "%s: '%s' bildirimleri dönüştürülmeyecek\n"
-#: protoize.c:2526
+#: protoize.c:2431
#, c-format
msgid "%s: conflict list for '%s' follows:\n"
msgstr "%s: '%s' için çelişki listesi:\n"
-#: protoize.c:2559
+#: protoize.c:2464
#, c-format
msgid "%s: warning: using formals list from %s(%d) for function `%s'\n"
msgstr "%1$s: uyarı: `%4$s' işlevi için biçimseller listesi %2$s(%3$d) den kullanılıyor\n"
-#: protoize.c:2599
+#: protoize.c:2504
#, c-format
msgid "%s: %d: `%s' used but missing from SYSCALLS\n"
msgstr "%s: %d: `%s' kullanıldı ama SYSCALLS dan eksik var\n"
-#: protoize.c:2605
+#: protoize.c:2510
#, c-format
msgid "%s: %d: warning: no extern definition for `%s'\n"
msgstr "%s: %d: uyarı: `%s' için extern tanımı yok\n"
-#: protoize.c:2636
+#: protoize.c:2540
#, c-format
msgid "%s: warning: no static definition for `%s' in file `%s'\n"
msgstr "%s: uyarı: `%s' için `%s' dosyasında ststic tanımı yok\n"
-#: protoize.c:2642
+#: protoize.c:2546
#, c-format
msgid "%s: multiple static defs of `%s' in file `%s'\n"
msgstr "%s: `%s' için `%s' dosyasında çok sayıda static tanımı\n"
-#: protoize.c:2815 protoize.c:2818
+#: protoize.c:2716 protoize.c:2719
#, c-format
msgid "%s: %d: warning: source too confusing\n"
msgstr "%s: %d: uyarı: kaynak çok karışık\n"
-#: protoize.c:3024
+#: protoize.c:2915
#, c-format
msgid "%s: %d: warning: varargs function declaration not converted\n"
msgstr "%s: %d: uyarı: varargs işlev bildirimi dönüştürülmedi\n"
-#: protoize.c:3039
+#: protoize.c:2930
#, c-format
msgid "%s: declaration of function `%s' not converted\n"
msgstr "%s: `%s' işlevinin bildirimi dönüştürülmedi\n"
-#: protoize.c:3162
+#: protoize.c:3053
#, c-format
msgid "%s: warning: too many parameter lists in declaration of `%s'\n"
msgstr "%s: uyarı: `%s' bildiriminde parametre listelerinin sayısı çok fazla\n"
-#: protoize.c:3183
+#: protoize.c:3074
#, c-format
msgid ""
"\n"
@@ -6518,17 +6419,17 @@ msgstr ""
"\n"
"%s: uyarı: `%s' bildiriminde parametre listelerinin sayısı çok az\n"
-#: protoize.c:3281
+#: protoize.c:3170
#, c-format
msgid "%s: %d: warning: found `%s' but expected `%s'\n"
msgstr "%s: %d: uyarı: `%s' bulundu ama `%s' gerekli\n"
-#: protoize.c:3459
+#: protoize.c:3345
#, c-format
msgid "%s: local declaration for function `%s' not inserted\n"
msgstr "%s: `%s' işlevi için yerel bildirim araya eklenmedi\n"
-#: protoize.c:3486
+#: protoize.c:3372
#, c-format
msgid ""
"\n"
@@ -6537,64 +6438,64 @@ msgstr ""
"\n"
"%s: %d: uyarı: makro çağrısına `%s' bildirimi eklenemiyor\n"
-#: protoize.c:3560
+#: protoize.c:3444
#, c-format
msgid "%s: global declarations for file `%s' not inserted\n"
msgstr "%s: `%s' işlevi için genel bildirim araya eklenmedi\n"
-#: protoize.c:3651 protoize.c:3681
+#: protoize.c:3533 protoize.c:3563
#, c-format
msgid "%s: definition of function `%s' not converted\n"
msgstr "%s: %s' işlevinin tanımı dönüştürülmedi\n"
-#: protoize.c:3670
+#: protoize.c:3552
#, c-format
msgid "%s: %d: warning: definition of %s not converted\n"
msgstr "%s: %d: uyarı: %s tanımı dönüştürülmedi\n"
-#: protoize.c:4000
+#: protoize.c:3878
#, c-format
msgid "%s: found definition of `%s' at %s(%d)\n"
msgstr "%s: `%s' tanımı %s(%d) de bulundu\n"
#. If we make it here, then we did not know about this
#. function definition.
-#: protoize.c:4016
+#: protoize.c:3894
#, c-format
msgid "%s: %d: warning: `%s' excluded by preprocessing\n"
msgstr "%s: %d: uyarı: `%s' önişlem tarafından dışlandı\n"
-#: protoize.c:4019
+#: protoize.c:3897
#, c-format
msgid "%s: function definition not converted\n"
msgstr "%s: işlev tanımı dönüştürülmedi\n"
-#: protoize.c:4078
+#: protoize.c:3955
#, c-format
msgid "%s: `%s' not converted\n"
msgstr "%s: `%s' dönüştürülmedi\n"
-#: protoize.c:4086
+#: protoize.c:3963
#, c-format
msgid "%s: would convert file `%s'\n"
msgstr "%s: `%s' dönüşüm dosyası olacaktı\n"
-#: protoize.c:4089
+#: protoize.c:3966
#, c-format
msgid "%s: converting file `%s'\n"
msgstr "%s: `%s' dönüştürülüyor\n"
-#: protoize.c:4099
+#: protoize.c:3976
#, c-format
msgid "%s: can't get status for file `%s': %s\n"
msgstr "%s: `%s' dosyası için durum bilgileri alınamadı: %s\n"
-#: protoize.c:4141
+#: protoize.c:4018
#, c-format
msgid "%s: can't open file `%s' for reading: %s\n"
msgstr "%s: `%s' okumak için açılamadı: %s\n"
-#: protoize.c:4156
+#: protoize.c:4033
#, c-format
msgid ""
"\n"
@@ -6603,37 +6504,37 @@ msgstr ""
"\n"
"%s: girdi dosyası `%s' okunurken hata: %s\n"
-#: protoize.c:4190
+#: protoize.c:4067
#, c-format
msgid "%s: can't create/open clean file `%s': %s\n"
msgstr "%s: temiz dosya `%s' oluşturulamıyor/açılamıyor: %s\n"
-#: protoize.c:4295
+#: protoize.c:4172
#, c-format
msgid "%s: warning: file `%s' already saved in `%s'\n"
msgstr "%s: uyarı: `%s' zaten `%s' içine kaydedilmiş\n"
-#: protoize.c:4303
+#: protoize.c:4180
#, c-format
msgid "%s: can't link file `%s' to `%s': %s\n"
msgstr "%s: `%s' -> `%s' bağı oluşturulamıyor: %s\n"
-#: protoize.c:4333
+#: protoize.c:4210
#, c-format
msgid "%s: can't create/open output file `%s': %s\n"
msgstr "%s: çıktı dosyası `%s' oluşturulamıyor/açılamıyor: %s\n"
-#: protoize.c:4366
+#: protoize.c:4243
#, c-format
msgid "%s: can't change mode of file `%s': %s\n"
msgstr "%s: `%s' dosyasının kipi değiştirilemiyor: %s\n"
-#: protoize.c:4541
+#: protoize.c:4416
#, c-format
msgid "%s: cannot get working directory: %s\n"
msgstr "%s: çalışma dizini alınamıyor: %s\n"
-#: protoize.c:4639
+#: protoize.c:4514
#, c-format
msgid "%s: input file names must have .c suffixes: %s\n"
msgstr "%s: girdi dosyası isimlerinin soneki .c olmalıdır: %s\n"
@@ -6642,359 +6543,402 @@ msgstr "%s: girdi dosyası isimlerinin soneki .c olmalıdır: %s\n"
msgid "Didn't find a coloring.\n"
msgstr "Bir renklendirme yok.\n"
-#: reg-stack.c:673
+#: reg-stack.c:665
#, c-format
msgid "output constraint %d must specify a single register"
msgstr "çıktı koşulu %d bir tek yazmaç belirtmeli"
-#: reg-stack.c:683
+#: reg-stack.c:675
#, c-format
msgid "output constraint %d cannot be specified together with \"%s\" clobber"
msgstr "çıktı koşulu %d \"%s\" taşırmasıyla birlikte belirtilemez"
-#: reg-stack.c:706
+#: reg-stack.c:698
msgid "output regs must be grouped at top of stack"
msgstr "çıktı yazmaçları yığının üstünde gruplanmış olmalı"
-#: reg-stack.c:743
+#: reg-stack.c:735
msgid "implicitly popped regs must be grouped at top of stack"
msgstr "örtük olarak emilmiş yazmaçlar yığının üstünde gruplanmalı"
-#: reg-stack.c:762
+#: reg-stack.c:754
#, c-format
msgid "output operand %d must use `&' constraint"
msgstr "çıktı terimi %d `&' kısıtını kullanmalı"
-#: regclass.c:756
+#: regclass.c:743
#, c-format
msgid "can't use '%s' as a %s register"
msgstr "'%s' bir %s yazmacı olarak kullanılamıyor"
-#: regclass.c:771 config/ia64/ia64.c:4304 config/ia64/ia64.c:4311
+#: regclass.c:758 config/ia64/ia64.c:4640 config/ia64/ia64.c:4647
#, c-format
msgid "unknown register name: %s"
msgstr "bilinmeyen yazmaç ismi: %s"
-#: regclass.c:782
+#: regclass.c:768
msgid "global register variable follows a function definition"
msgstr "genel yazmaç değişkeni bir işlev tanımını izliyor"
-#: regclass.c:786
+#: regclass.c:772
msgid "register used for two global register variables"
msgstr "yazmaç iki genel yazmaç değişkeni için kullanılmış"
-#: regclass.c:791
+#: regclass.c:777
msgid "call-clobbered register used for global register variable"
msgstr "çağrı-taşmalı yazmaç genel yazmaç değişkeni için kullanılmış"
-#: regrename.c:1899
+#: regrename.c:1846
#, c-format
msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)"
msgstr "validate_value_data: [%u] Boş zincir için next_regno hatalı (%u)"
-#: regrename.c:1911
+#: regrename.c:1858
#, c-format
msgid "validate_value_data: Loop in regno chain (%u)"
msgstr "validate_value_data: regno zinciri içinde döngü (%u)"
-#: regrename.c:1914
+#: regrename.c:1861
#, c-format
msgid "validate_value_data: [%u] Bad oldest_regno (%u)"
msgstr "validate_value_data: [%u] oldest_regno hatalı (%u)"
-#: regrename.c:1926
+#: regrename.c:1873
#, c-format
msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
msgstr "validate_value_data: [%u] zincir içinde boş olmayan yazmaç (%s %u %i)"
-#: reload.c:1229
+#: reload.c:1254
msgid "cannot reload integer constant operand in `asm'"
msgstr "`asm' içindeki tamsayı sabit terim yeniden yüklenemiyor"
-#: reload.c:1251
+#: reload.c:1276
msgid "impossible register constraint in `asm'"
msgstr "`asm' içindeki yazmaç şartı mümkün değil"
-#: reload.c:3461
+#: reload.c:3489
msgid "`&' constraint used with no register class"
msgstr "`&' şartı yazmaç sınıfsız kullanılmış"
-#: reload.c:3629
+#: reload.c:3657
msgid "unable to generate reloads for:"
msgstr "aşağıdakiler için yeniden yüklemeler üretilemiyor:"
-#: reload.c:3630 reload.c:3844
+#: reload.c:3658 reload.c:3872
msgid "inconsistent operand constraints in an `asm'"
msgstr "bir `asm' içindeki terim şartı çelişkili"
-#: reload1.c:1250
+#: reload1.c:1212
msgid "frame size too large for reliable stack checking"
msgstr "güvenilir yığın denetimi için çerçeve boyutu çok büyük"
-#: reload1.c:1253
+#: reload1.c:1215
msgid "try reducing the number of local variables"
msgstr "yerel değişkenlerin sayısını azaltmayı deneyin"
-#: reload1.c:1909
+#: reload1.c:1868
#, c-format
msgid "can't find a register in class `%s' while reloading `asm'"
msgstr "`asm' yeniden yüklenirken sınıf `%s' içindeki bir yazmaç ismi bulunamıyor"
-#: reload1.c:1913
+#: reload1.c:1872
#, c-format
msgid "unable to find a register to spill in class `%s'"
msgstr "`%s' sınıfı içinde dökülecek bir yazmaç bulunamadı."
-#: reload1.c:1915
+#: reload1.c:1874
msgid "this is the insn:"
msgstr "bu o komuttur:"
-#: reload1.c:3938
+#: reload1.c:3871
msgid "`asm' operand requires impossible reload"
msgstr "`asm' terimi imkansız yeniden yükleme gerektiriyor"
#. It's the compiler's fault.
-#: reload1.c:5052
+#: reload1.c:4963
msgid "could not find a spill register"
msgstr "bir döküm yazmacı bulunamadı"
-#: reload1.c:5057
+#: reload1.c:4968
msgid "`asm' operand constraint incompatible with operand size"
msgstr "`asm' teriminin koÅŸulu terim boyutu ile uyumsuz"
#. It's the compiler's fault.
-#: reload1.c:6679
+#: reload1.c:6590
msgid "VOIDmode on an output"
msgstr "bir çıktıda VOIDmode"
-#: reload1.c:6680
+#: reload1.c:6591
msgid "output operand is constant in `asm'"
msgstr "`asm' içindeki çıktı terimi bir sabit"
-#: rtl-error.c:140
+#: rtl-error.c:124
msgid "unrecognizable insn:"
msgstr "tanımlanamayan komut:"
-#: rtl-error.c:142
+#: rtl-error.c:126
msgid "insn does not satisfy its constraints:"
msgstr "komut kendi kısıtlarını gözönüne almıyor:"
-#: rtl.c:535
+#: rtl.c:477
#, c-format
msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d"
msgstr "RTL denetimi: %5$s:%6$d: %4$s işlevindeki son %3$d öğe ile `%2$s' nin %1$d. öğesinin erişimi"
-#: rtl.c:550
+#: rtl.c:487
#, c-format
msgid "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr "RTL denetimi: %6$s:%7$d: %5$s içinde öğe %1$d türü olarak '%2$c' umulurken '%3$c' var (rtx %4$s)"
-#: rtl.c:566
+#: rtl.c:497
#, c-format
msgid "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr "RTL denetimi: %7$s:%8$d: %6$s içinde öğe %1$d türü olarak'%2$c' ya da '%3$c' umulurken '%4$c' var (rtx %5$s)"
-#: rtl.c:579
+#: rtl.c:506
#, c-format
msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d"
msgstr "RTL denetimi: %4$s:%5$d: %3$s içindeki kod için `%1$s' umulurken `%2$s' var"
-#: rtl.c:593
+#: rtl.c:516
#, c-format
msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d"
msgstr "RTL denetimi: %5$s:%6$d: %4$s içindeki kod için `%1$s' ya da `%2$s' umulurken `%3$s' var"
-#: rtl.c:608
+#: rtl.c:527
#, c-format
msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
msgstr "RTL denetimi: %4$s:%5$d: %3$s işlevindeki son %2$d öğe ile vektörün %1$d. öğesinin erişimi"
-#: rtl.c:623
+#: rtl.c:538
#, c-format
msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d"
msgstr "RTL seçenek denetimi: %4$s:%5$d: `%1$s' %3$s içinde umulmayan rtx kodu `%2$s' ile kullanılmış"
-#: stmt.c:766
+#: stmt.c:750
#, c-format
msgid "jump to `%s' invalidly jumps into binding contour"
msgstr "`%s' e sıçrama geçersiz olarak bağlama sınırları içinde gerçekleşiyor"
-#: stmt.c:1002 stmt.c:3766
-#, c-format
-msgid "label `%s' used before containing binding contour"
+#: stmt.c:977 stmt.c:3793
+#, fuzzy
+msgid "%Jlabel '%D' used before containing binding contour"
msgstr "`%s' etiketi kapsanan bağ sınırından önce kullanılmış"
-#: stmt.c:1190
+#: stmt.c:1156
msgid "output operand constraint lacks `='"
msgstr "çıktı terim kısıtı eksiği `='"
-#: stmt.c:1205
+#: stmt.c:1171
#, c-format
msgid "output constraint `%c' for operand %d is not at the beginning"
msgstr "%2$d terimi için çıktı şartı `%1$c' başlangıçta değil"
-#: stmt.c:1227
+#: stmt.c:1193
msgid "operand constraint contains incorrectly positioned '+' or '='"
msgstr "terim kısıtı yanlış konumlu `+' ya da '=' içeriyor"
-#: stmt.c:1233 stmt.c:1337
+#: stmt.c:1199 stmt.c:1301
#, c-format
msgid "`%%' constraint used with last operand"
msgstr "`%%' kısıtı son terimle kullanılmış"
-#: stmt.c:1252
+#: stmt.c:1218
msgid "matching constraint not valid in output operand"
msgstr "eşleşen kısıt çıktı teriminde geçerli değil"
-#: stmt.c:1328
+#: stmt.c:1260
+#, fuzzy
+msgid "read-write constraint does not allow a register"
+msgstr "onaltılık karakter sabiti bir bayta sığmaz"
+
+#: stmt.c:1292
#, c-format
msgid "input operand constraint contains `%c'"
msgstr "girdi terimi kısıtı `%c' içeriyor"
-#: stmt.c:1368
+#: stmt.c:1334
msgid "matching constraint references invalid operand number"
msgstr "kısıt referansları geçersiz terim numaraları eşleştiriyor"
-#: stmt.c:1400
+#: stmt.c:1372
#, c-format
msgid "invalid punctuation `%c' in constraint"
msgstr "koşul içindeki `%c' işareti geçersiz"
-#: stmt.c:1450
+#: stmt.c:1396
+#, fuzzy
+msgid "matching constraint does not allow a register"
+msgstr "eşleşen kısıt çıktı teriminde geçerli değil"
+
+#: stmt.c:1424
#, c-format
msgid "asm-specifier for variable `%s' conflicts with asm clobber list"
msgstr "`%s' değişkeni için asm belirtimi, asm taşırma listesi ile çelişiyor"
-#: stmt.c:1540
+#: stmt.c:1514
#, c-format
msgid "unknown register name `%s' in `asm'"
msgstr "`asm' içindeki yazmaç ismi `%s' bilinmiyor"
-#: stmt.c:1588
+#: stmt.c:1522
+#, fuzzy, c-format
+msgid "PIC register `%s' clobbered in `asm'"
+msgstr "`asm' içindeki yazmaç ismi `%s' bilinmiyor"
+
+#: stmt.c:1571
#, c-format
msgid "more than %d operands in `asm'"
msgstr "`asm' içinde %d terimden fazlası var"
-#: stmt.c:1650
+#: stmt.c:1633
#, c-format
msgid "output number %d not directly addressable"
msgstr "çıktı numarası %d doğrudan adreslenebilir değil"
-#: stmt.c:1728
+#: stmt.c:1711
#, c-format
msgid "asm operand %d probably doesn't match constraints"
msgstr "asm terimi %d belki ÅŸartlara uymaz"
-#: stmt.c:1738
+#: stmt.c:1721
#, c-format
msgid "use of memory input without lvalue in asm operand %d is deprecated"
msgstr "asm terimi %d içindeki sol değersiz bellek girdisi kullanımının modası geçti"
-#: stmt.c:1889
+#: stmt.c:1875
msgid "asm clobber conflict with output operand"
msgstr "asm taşırıcı çıkış terimi ile çelişiyor"
-#: stmt.c:1894
+#: stmt.c:1880
msgid "asm clobber conflict with input operand"
msgstr "asm taşırıcı giriş terimi ile çelişiyor"
-#: stmt.c:1929
+#: stmt.c:1914
msgid "too many alternatives in `asm'"
msgstr "`asm' içindeki almaşıkların sayısı çok fazla"
-#: stmt.c:1941
+#: stmt.c:1926
msgid "operand constraints for `asm' differ in number of alternatives"
msgstr "`asm' için terim kısıtları farklı almaşık sayısında"
-#: stmt.c:1994
+#: stmt.c:1978
#, c-format
msgid "duplicate asm operand name '%s'"
msgstr "terim ismi '%s' yinelenmiÅŸ"
-#: stmt.c:2081
+#: stmt.c:2076
msgid "missing close brace for named operand"
msgstr "isimi terim için kapama parantezi eksik"
-#: stmt.c:2109
+#: stmt.c:2104
#, c-format
msgid "undefined named operand '%s'"
msgstr "tanımlanmamış isimli terim '%s'"
-#: stmt.c:3703
-#, c-format
-msgid "unused variable `%s'"
+#: stmt.c:2161
+msgid "%Hstatement with no effect"
+msgstr ""
+
+#: stmt.c:2317
+#, fuzzy
+msgid "%Hvalue computed is not used"
+msgstr "automaton `%s' kullanılmamış"
+
+#: stmt.c:3733
+#, fuzzy
+msgid "%Junused variable '%D'"
msgstr "değişken `%s' kullanılmamış"
-#: stmt.c:5189
+#: stmt.c:4508
+#, fuzzy
+msgid "%Hunreachable code at beginning of %s"
+msgstr "%d den %d nin öncesine baytkod erişilebilir değil"
+
+#: stmt.c:5136
#, c-format
msgid "enumeration value `%s' not handled in switch"
msgstr "sembolik sabit grubu deÄŸeri `%s' switch deyiminde elde edilemedi"
-#: stmt.c:5214 stmt.c:5234
+#: stmt.c:5161 stmt.c:5181
#, c-format
msgid "case value `%ld' not in enumerated type"
msgstr "case deÄŸeri `%ld' sembolik sabit grubunda deÄŸil"
-#: stmt.c:5217 stmt.c:5237
+#: stmt.c:5164 stmt.c:5184
#, c-format
msgid "case value `%ld' not in enumerated type `%s'"
msgstr "case değeri `%ld' sembolik sabit grubu `%s' içinde değil"
-#: stmt.c:5310
+#: stmt.c:5401
msgid "switch missing default case"
msgstr "switch içinde default eksik"
-#: stor-layout.c:178
+#: stor-layout.c:183
msgid "type size can't be explicitly evaluated"
msgstr "tür boyutu doğrudan değerlendirilemez"
-#: stor-layout.c:180
+#: stor-layout.c:185
msgid "variable-size type declared outside of any function"
msgstr "değişken boyutu türü her işlevin dışında bildirilmiş"
-#: stor-layout.c:487
-#, c-format
-msgid "size of `%s' is %d bytes"
+#: stor-layout.c:515
+#, fuzzy
+msgid "%Jsize of '%D' is %d bytes"
msgstr "`%s' için genişlik %d bayt"
-#: stor-layout.c:489
-#, c-format
-msgid "size of `%s' is larger than %d bytes"
+#: stor-layout.c:517
+#, fuzzy
+msgid "%Jsize of '%D' is larger than %d bytes"
msgstr "`%s' için genişlik %d bayttan fazla"
-#: stor-layout.c:909 stor-layout.c:1325
-#, c-format
-msgid "packed attribute causes inefficient alignment for `%s'"
+#: stor-layout.c:883
+#, fuzzy
+msgid "%Jpacked attribute causes inefficient alignment for '%D'"
msgstr "paketli öznitelik `%s' için yetersiz hizalama yapar"
-#: stor-layout.c:911 stor-layout.c:1327
-#, c-format
-msgid "packed attribute is unnecessary for `%s'"
+#: stor-layout.c:886
+#, fuzzy
+msgid "%Jpacked attribute is unnecessary for '%D'"
msgstr "paketli öznitelik `%s' için gereksiz"
-#: stor-layout.c:926
-#, c-format
-msgid "padding struct to align `%s'"
+#: stor-layout.c:902
+#, fuzzy
+msgid "%Jpadding struct to align '%D'"
msgstr "yapı hizalaması `%s' olarak ayarlanıyor"
-#: stor-layout.c:1289
+#: stor-layout.c:1245
msgid "padding struct size to alignment boundary"
msgstr "yapı boyutu hizalama sınırlarına ayarlanıyor"
-#: stor-layout.c:1332
+#: stor-layout.c:1275
+#, c-format
+msgid "packed attribute causes inefficient alignment for `%s'"
+msgstr "paketli öznitelik `%s' için yetersiz hizalama yapar"
+
+#: stor-layout.c:1277
+#, c-format
+msgid "packed attribute is unnecessary for `%s'"
+msgstr "paketli öznitelik `%s' için gereksiz"
+
+#: stor-layout.c:1282
msgid "packed attribute causes inefficient alignment"
msgstr "paketli öznitelik yetersiz hizalama yapar"
-#: stor-layout.c:1334
+#: stor-layout.c:1284
msgid "packed attribute is unnecessary"
msgstr "paketli öznitelik gereksiz"
-#: timevar.c:322
+#: targhooks.c:154
+msgid "__builtin_saveregs not supported by this target"
+msgstr "__builtin_saveregs bu hedef tarafından desteklenmiyor"
+
+#: timevar.c:314
#, c-format
msgid "cannot timevar_pop '%s' when top of timevars stack is '%s'"
msgstr "timevars yığınının tepesinde '%2$s' olduğunda timevar_pop '%1$s' yapılamaz"
-#: timevar.c:453
+#: timevar.c:440
msgid ""
"\n"
"Execution times (seconds)\n"
@@ -7003,1100 +6947,124 @@ msgstr ""
"Çalışma süreleri (saniye)\n"
#. Print total time.
-#: timevar.c:503
+#: timevar.c:490
msgid " TOTAL :"
msgstr " TOPLAM :"
-#: timevar.c:539
+#: timevar.c:513
#, c-format
msgid "time in %s: %ld.%06ld (%ld%%)\n"
msgstr "%s süresi: %ld.%06ld (%%%ld)\n"
-#: tlink.c:399
+#: tlink.c:377
#, c-format
msgid "collect: reading %s\n"
msgstr "collect: %s okunuyor\n"
-#: tlink.c:502
+#: tlink.c:478
#, c-format
msgid "collect: recompiling %s\n"
msgstr "collect: %s yeniden derleniyor\n"
-#: tlink.c:674
+#: tlink.c:654
#, c-format
msgid "collect: tweaking %s in %s\n"
msgstr "collect: %2$s içindeki %1$s şablon zayıflatması\n"
-#: tlink.c:721
+#: tlink.c:700
+#, c-format
msgid "collect: relinking\n"
msgstr "collect: yeniden birleştirme yapılıyor\n"
-#: tlink.c:730
+#: tlink.c:709
#, c-format
msgid "ld returned %d exit status"
msgstr "ld çıkış durumu %d ile döndü"
-#: toplev.c:920
-msgid "Generate debugging info in default format"
-msgstr "Öntanımlı biçimde hata ayıklama bilgisi üretir"
-
-#: toplev.c:921
-msgid "Generate debugging info in default extended format"
-msgstr ""
-"Öntanımlı gelişmiş biçimde hata ayıklama bilgisi\n"
-" üretir"
-
-#: toplev.c:923
-msgid "Generate STABS format debug info"
-msgstr "STABS biçimi hata ayıklama bilgisi üretir"
-
-#: toplev.c:924
-msgid "Generate extended STABS format debug info"
-msgstr "Gelişmiş STABS biçimi hata ayıklama bilgisi üretir"
-
-#: toplev.c:927
-msgid "Generate DWARF-1 format debug info"
-msgstr "DWARF-1 biçimi hata ayıklama bilgisi üretir"
-
-#: toplev.c:929
-msgid "Generate extended DWARF-1 format debug info"
-msgstr "Gelişmiş DWARF-1 biçimi hata ayıklama bilgisi üretir"
-
-#: toplev.c:932
-msgid "Generate DWARF-2 debug info"
-msgstr "DWARF-2 biçimi hata ayıklama bilgisi üretir"
-
-#: toplev.c:935
-msgid "Generate XCOFF format debug info"
-msgstr "XCOFF biçimi hata ayıklama bilgisi üretir"
-
-#: toplev.c:936
-msgid "Generate extended XCOFF format debug info"
-msgstr "Gelişmiş XCOFF biçimi hata ayıklama bilgisi üretir"
-
-#: toplev.c:939
-msgid "Generate COFF format debug info"
-msgstr "COFF biçimi hata ayıklama bilgisi üretilir"
-
-#: toplev.c:942
-msgid "Generate VMS format debug info"
-msgstr "VMS biçimi hata ayıklama bilgisi üretilir"
-
-#: toplev.c:981
-msgid "Perform DWARF2 duplicate elimination"
-msgstr "DWARF2 yinelenmiş elemesi uygulanır"
-
-#: toplev.c:983
-msgid "Do not store floats in registers"
-msgstr "Gerçel sayılar yazmaçlarda saklanmaz"
-
-#: toplev.c:985
-msgid "Consider all mem refs through pointers as volatile"
-msgstr ""
-"Tüm göstericili bellek referanslarının anlık\n"
-" olduğu varsayılır"
-
-#: toplev.c:987
-msgid "Consider all mem refs to global data to be volatile"
-msgstr ""
-"Global verilerin tüm bellek referanslarının anlık\n"
-" olduğu varsayılır"
-
-#: toplev.c:989
-msgid "Consider all mem refs to static data to be volatile"
-msgstr ""
-"Statik verilerin tüm bellek referanslarının anlık\n"
-" olduğu varsayılır"
-
-#: toplev.c:991
-msgid "Defer popping functions args from stack until later"
-msgstr "Yığından işlev argümanlarının çekilmesini erteler"
-
-#: toplev.c:993
-msgid "When possible do not generate stack frames"
-msgstr "Mümkün olduğunca yığın çerçeveleri üretilmez"
-
-#: toplev.c:995
-msgid "Optimize sibling and tail recursive calls"
-msgstr "Kardeş ve kuyruk özyinelemeli çağrılar eniyilenir"
-
-#: toplev.c:997
-msgid "Perform superblock formation via tail duplication"
-msgstr "Kuyruk tekrarı üzerinden süperblok oluşumu uygulanır"
-
-#: toplev.c:999
-msgid "When running CSE, follow jumps to their targets"
-msgstr ""
-"Ortak alt ifade elemesi sırasında onların\n"
-" hedeflerine dallanmalar izlenir"
-
-#: toplev.c:1001
-msgid "When running CSE, follow conditional jumps"
-msgstr ""
-"Ortak alt ifade elemesi sırasında koşullu\n"
-" dallanmalar izlenir"
-
-#: toplev.c:1003
-msgid "Perform a number of minor, expensive optimizations"
-msgstr "Masraflı eniyilemelerden birkaçını uygular"
-
-#: toplev.c:1005
-msgid "Perform jump threading optimizations"
-msgstr "Atlama evresi oluşturma eniyilemesi uygulanır"
-
-#: toplev.c:1007
-msgid "Perform strength reduction optimizations"
-msgstr "Güç azaltma eniyilemesi uygulanır"
-
-#: toplev.c:1009
-msgid "Perform loop unrolling when iteration count is known"
-msgstr "Yineleme sayısı bilindiğinde ters döngüleme uygulanır"
-
-#: toplev.c:1011
-msgid "Perform loop unrolling for all loops"
-msgstr "Tüm döngülere ters döngüleme uygulanır"
-
-#: toplev.c:1013
-msgid "Generate prefetch instructions, if available, for arrays in loops"
-msgstr ""
-"Mümkünse, döngülerdeki diziler için önalım\n"
-" komutları üretilir"
-
-#: toplev.c:1015
-msgid "Force all loop invariant computations out of loops"
-msgstr ""
-"Döngülerdeki döngü dışına taşınacak olan değişimsiz\n"
-" hesaplama etkinleÅŸtirir"
-
-#: toplev.c:1017
-msgid "Strength reduce all loop general induction variables"
-msgstr ""
-"Tüm döngülerdeki genel başlatma değişkenlerinin\n"
-" gücünü azaltır"
-
-#: toplev.c:1019
-msgid "Store strings in writable data section"
-msgstr "Dizgeler yazılabilir veri bölümünde saklanır"
-
-#: toplev.c:1021
-msgid "Enable machine specific peephole optimizations"
-msgstr "Makinaya özel gözlem deliği eniyilemesi etkinleştirilir"
-
-#: toplev.c:1023
-msgid "Copy memory operands into registers before using"
-msgstr ""
-"Kullanmadan önce bellek işlemimlerini yazmaçlara\n"
-" kopyalar"
-
-#: toplev.c:1025
-msgid "Copy memory address constants into regs before using"
-msgstr ""
-"Kullanmadan önce bellek adres sabitlerini\n"
-" yazmaçlara kopyalar"
-
-#: toplev.c:1027
-msgid "Allow function addresses to be held in registers"
-msgstr "Yazmaçlarda tutulan işlev adreslerine izin verilir"
-
-#: toplev.c:1029
-msgid "Integrate simple functions into their callers"
-msgstr "Basit işlevler onları çağıranların içine gömülür"
-
-#: toplev.c:1031
-msgid "Generate code for funcs even if they are fully inlined"
-msgstr ""
-"Tamamen özümlenmiş olsalar bile işlevler için kod\n"
-" üretilir"
-
-#: toplev.c:1033
-msgid "Pay attention to the 'inline' keyword"
-msgstr "'inline' anahtar sözcüğüne dikkat edilir"
-
-#: toplev.c:1035
-msgid "Emit static const variables even if they are not used"
-msgstr ""
-"Kullanılmamış bile olsa statik sabit değişkenler\n"
-" içerilir"
-
-#: toplev.c:1037
-msgid "Check for syntax errors, then stop"
-msgstr "Sözdizimi denetimi yaptıktan sonra durur"
-
-#: toplev.c:1039
-msgid "Mark data as shared rather than private"
-msgstr "Veriyi özelden çok paylaşımlı olarak imler"
-
-#: toplev.c:1041
-msgid "Enable saving registers around function calls"
-msgstr ""
-"İşlev çağrıları civarındaki yazmaçların kaydını\n"
-" etkinleÅŸtirir"
-
-#: toplev.c:1043
-msgid "Return 'short' aggregates in memory, not registers"
-msgstr ""
-"Yazmaçlardaki değil bellekteki 'short' küme\n"
-" döndürülür"
-
-#: toplev.c:1045
-msgid "Return 'short' aggregates in registers"
-msgstr "Yazmaçlardaki 'short' kümeleri döndürülür"
-
-#: toplev.c:1047
-msgid "Attempt to fill delay slots of branch instructions"
-msgstr ""
-"Dallanma komutlarının gecikme yuvalarını doldurmaya\n"
-" çalışır"
-
-#: toplev.c:1049
-msgid "Perform the global common subexpression elimination"
-msgstr "Genel ortak alt ifade elemesi uygulanır"
-
-#: toplev.c:1051
-msgid "Perform enhanced load motion during global subexpression elimination"
-msgstr ""
-"Genel alt ifade elemesi sırasında genişletilmiş yük\n"
-" hareketi uygulanır"
-
-#: toplev.c:1053
-msgid "Perform store motion after global subexpression elimination"
-msgstr ""
-"Genel alt ifade elemesinden sonra saklama hareketi\n"
-" uygulanır"
-
-#: toplev.c:1055
-msgid "Perform the loop optimizations"
-msgstr "Döngü eniyilemesi uygulanır"
-
-#: toplev.c:1057
-msgid "Perform cross-jumping optimization"
-msgstr "Çapraz atlama eniyilemesi uygulanır"
-
-#: toplev.c:1059
-msgid "Perform conversion of conditional jumps to branchless equivalents"
-msgstr ""
-"Dallanmasız karşılıklara koşullu atlama dönüşümü\n"
-" uygulanır"
-
-#: toplev.c:1061
-msgid "Perform conversion of conditional jumps to conditional execution"
-msgstr ""
-"Koşullu çalıştırmaya koşullu atlama dönüşümü\n"
-" uygulanır"
-
-#: toplev.c:1063
-msgid "Run CSE pass after loop optimizations"
-msgstr "Döngü eniyilemesinden sonra CSE geçişi çalıştırılır"
-
-#: toplev.c:1065
-msgid "Run the loop optimizer twice"
-msgstr "Döngü eniyilemesi iki kere çalıştırılır"
-
-#: toplev.c:1067
-msgid "Delete useless null pointer checks"
-msgstr "Kullanışsız boş gösterici denetimlerini siler"
-
-#: toplev.c:1069
-msgid "Reschedule instructions before register allocation"
-msgstr "Yazmaç tahsisinden önce komutları yeniden zamanlar"
-
-#: toplev.c:1071
-msgid "Reschedule instructions after register allocation"
-msgstr "Yazmaç tahsisinden sonra komutları yeniden zamanlar"
-
-#: toplev.c:1073
-msgid "Enable scheduling across basic blocks"
-msgstr "Temel bloklar arasında zamanlama etkinleştirilir"
-
-#: toplev.c:1075
-msgid "Allow speculative motion of non-loads"
-msgstr "Yük oluşturmayanların tahmini hareketine izin verilir"
-
-#: toplev.c:1077
-msgid "Allow speculative motion of some loads"
-msgstr "Bazı yüklerin tahmini hareketine izin verilir"
-
-#: toplev.c:1079
-msgid "Allow speculative motion of more loads"
-msgstr "Fazla yüklerin tahmini hareketine izin verilir"
-
-#: toplev.c:1081
-msgid "Replace add,compare,branch with branch on count reg"
-msgstr ""
-"Ekleme, karşılaştırma, dallanma sayaç üzerinden\n"
-" dallanma ile deÄŸiÅŸtirilir"
-
-#: toplev.c:1083
-msgid "Generate position independent code, if possible"
-msgstr "Mümkünse, konumdan bağımsız kod üretilir"
-
-#: toplev.c:1086
-msgid "Enable exception handling"
-msgstr "Olağandışılıkların yakalanması etkinleştirilir"
-
-#: toplev.c:1088
-msgid "Just generate unwind tables for exception handling"
-msgstr ""
-"Olağandışılıkların yakalanması için birbirlerini\n"
-" etkilemeyenlerin tablosu oluÅŸturulur"
-
-#: toplev.c:1090
-msgid "Generate unwind tables exact at each instruction boundary"
-msgstr ""
-"Her komut sınırında birbirlerini etkilemeyenlerin\n"
-" tablosu kesin oluÅŸturulur"
-
-#: toplev.c:1092
-msgid "Support synchronous non-call exceptions"
-msgstr "Eşzamanlı çağrısız olağandışılıklar desteklenir"
-
-#: toplev.c:1094
-msgid "Insert arc based program profiling code"
-msgstr "Dal bağlantı kodunu yerleştirir"
-
-#: toplev.c:1096
-msgid "Create data files needed by gcov"
-msgstr "gcov için gereken veri dosyaları oluşturulur"
-
-#: toplev.c:1098
-msgid "Use profiling information for branch probabilities"
-msgstr ""
-"Dallanma olasılıkları için ayrımlama bilgileri\n"
-" kullanılır"
-
-#: toplev.c:1100
-msgid "Enable basic program profiling code"
-msgstr "Temel program profil çıkarma kodu etkinleştirilir"
-
-#: toplev.c:1102
-msgid "Reorder basic blocks to improve code placement"
-msgstr ""
-"Kod yerleşimini iyileştirecek temel blokları\n"
-" yeniden sıralar"
-
-#: toplev.c:1104
-msgid "Reorder functions to improve code placement"
-msgstr ""
-"Kod yerleÅŸimini iyileÅŸtirecek iÅŸlevleri\n"
-" yeniden sıralar"
-
-#: toplev.c:1106
-msgid "Do the register renaming optimization pass"
-msgstr "Yazmaç isimlendirme eniyilemesi aşamasını uygular"
-
-#: toplev.c:1108
-msgid "Do the register copy-propagation optimization pass"
-msgstr "Yazmaç kopya-girişim eniyileme aşaması uygulanır"
-
-#: toplev.c:1110
-msgid "Do not put uninitialized globals in the common section"
-msgstr "İlklendirilmemiş global'ler ortak bölüme konmaz"
-
-#: toplev.c:1112
-msgid "Do not generate .size directives"
-msgstr ".size yönergeleri üretilmez"
-
-#: toplev.c:1114
-msgid "place each function into its own section"
-msgstr "Her işlev kendi bölümüne yerleştirilir"
-
-#: toplev.c:1116
-msgid "place data items into their own section"
-msgstr "Veri öğelerini kendi bölümlerine yerleştirir"
-
-#: toplev.c:1118
-msgid "Add extra commentary to assembler output"
-msgstr "Çevirici çıktısına fazladan açıklama ekler"
-
-#: toplev.c:1120
-msgid "Output GNU ld formatted global initializers"
-msgstr "GNU ld biçimli genel ilklendiricileri çıktılar"
-
-#: toplev.c:1122
-msgid "Enables a register move optimization"
-msgstr "Bir yazmaç taşıma eniyilemesi etkinleştirilir"
-
-#: toplev.c:1124
-msgid "Do the full regmove optimization pass"
-msgstr "Baştan başa yazmaç taşıma eniyilemesi yapar"
-
-#: toplev.c:1126
-msgid "Pack structure members together without holes"
-msgstr "Yapı üyelerini birlikte deliksiz paketler"
-
-#: toplev.c:1128
-msgid "Insert stack checking code into the program"
-msgstr "Programa yığın denetimi kodu yerleştirilir"
-
-#: toplev.c:1130
-msgid "Specify that arguments may alias each other & globals"
-msgstr ""
-"Argümanların bir diğerinin ya da globallerin takma\n"
-" adı olabileceği varsayılır"
-
-#: toplev.c:1132
-msgid "Assume arguments may alias globals but not each other"
-msgstr ""
-"Argümanların globallerden başkasına takma ad\n"
-" olamayacağı varsayılır"
-
-#: toplev.c:1134
-msgid "Assume arguments do not alias each other or globals"
-msgstr ""
-"Argümanların bir diğerine ya da globallere takma ad\n"
-" olmadığı varsayılır"
-
-#: toplev.c:1136
-msgid "Assume strict aliasing rules apply"
-msgstr "Sıkı takma ad kuralları uygulanacağı varsayılır"
-
-#: toplev.c:1138
-msgid "Align the start of loops"
-msgstr "Döngü başlangıçları bayt sınırlarına ayarlanır"
-
-#: toplev.c:1140
-msgid "Align labels which are only reached by jumping"
-msgstr ""
-"Sadece atlanarak ulaşılabilen hedefler bayt\n"
-" sınırlarına ayarlanır"
-
-#: toplev.c:1142
-msgid "Align all labels"
-msgstr "Tüm dallanma hedefleri bayt sınırlarına ayarlanır"
-
-#: toplev.c:1144
-msgid "Align the start of functions"
-msgstr "İşlevlerin başlangıcı hizalanır"
-
-#: toplev.c:1146
-msgid "Attempt to merge identical constants across compilation units"
-msgstr ""
-"Özdeş sabitler derleme birimlerine karşın\n"
-" katıştırılmaya çalışılır"
-
-#: toplev.c:1148
-msgid "Attempt to merge identical constants and constant variables"
-msgstr ""
-"Özdeş sabitler ve sabit değişkenler katıştırılmaya\n"
-" çalışılır"
-
-#: toplev.c:1150
-msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
-msgstr ""
-"Hata ayıklama dökümlerinde satır numarası ve komut\n"
-" numarası bilgilerinın çıktılanması engellenir"
-
-#: toplev.c:1152
-msgid "Instrument function entry/exit with profiling calls"
-msgstr "İşlevlere giriş ve çıkışta kullanım çağrıları üretir"
-
-#: toplev.c:1154
-msgid "Put zero initialized data in the bss section"
-msgstr "bss bölümüne sıfır ilklendirmeli veri yerleştirilir"
-
-#: toplev.c:1156
-msgid "Enable SSA optimizations"
-msgstr "SSA eniyilemesi etkinleÅŸtirilir"
-
-#: toplev.c:1158
-msgid "Enable SSA conditional constant propagation"
-msgstr "SSA koÅŸullu sabit giriÅŸimi etkinleÅŸtirilir"
-
-#: toplev.c:1160
-msgid "Enable aggressive SSA dead code elimination"
-msgstr "Girgin SSA ölü kod elemesi etkinleştirilir"
-
-#: toplev.c:1162
-msgid "External symbols have a leading underscore"
-msgstr "Alt çizgi ile başlayan sembollerde uyarır"
-
-#: toplev.c:1164
-msgid "Process #ident directives"
-msgstr "#ident yönergeleri işlenir"
-
-#: toplev.c:1166
-msgid "Enables an rtl peephole pass run before sched2"
-msgstr ""
-"sched2 çalıştırılmadan önce bir rtl gözlem deliği\n"
-" aşaması etkinleştirilir"
-
-#: toplev.c:1168
-msgid "Assume no NaNs or +-Infs are generated"
-msgstr "NaNların ya da +-Inflerin üretilmediği varsayılır"
-
-#: toplev.c:1170
-msgid "Enables guessing of branch probabilities"
-msgstr "Dallanma olasılığı tahmini etkinleştirilir"
-
-#: toplev.c:1172
-msgid "Set errno after built-in math functions"
-msgstr ""
-"YerleÅŸik matematik iÅŸlevlerinden sonra ERRNO\n"
-" kullanılır"
-
-#: toplev.c:1174
-msgid "Floating-point operations can trap"
-msgstr "kayan nokta iÅŸlemleri yakalanabilir"
-
-#: toplev.c:1176
-msgid "Allow math optimizations that may violate IEEE or ANSI standards"
-msgstr ""
-"IEEE veya ANSI standartlarını bozabilen matematiksel\n"
-" eniyilemelere izin verilir"
-
-#: toplev.c:1178
-msgid "Disable optimizations observable by IEEE signaling NaNs"
-msgstr ""
-"IEEE sinyalleme NaNları tarafından farkedilebilen\n"
-" eniyilemeler iptal edilir"
-
-#: toplev.c:1180
-msgid "Generate code to check bounds before indexing arrays"
-msgstr ""
-"Diziler indislenmeden önce sınrlarını\n"
-" denetleyecek kod üretilir"
-
-#: toplev.c:1182
-msgid "Convert floating point constant to single precision constant"
-msgstr ""
-"Kayan noktalı sabitler tek duyarlıklı sabitlere\n"
-" dönüştürülür"
-
-#: toplev.c:1184
-msgid "Report time taken by each compiler pass at end of run"
-msgstr ""
-"Çalışma bitiminde her derleme aşaması için kullanılan\n"
-" zaman raporlanır"
-
-#: toplev.c:1186
-msgid "Report on permanent memory allocation at end of run"
-msgstr ""
-"Çalıştırma sonunda ayrılan kesintisiz bellek miktarı\n"
-" raporlanır"
-
-#: toplev.c:1188
-msgid "Trap for signed overflow in addition / subtraction / multiplication"
-msgstr "Toplama, çıkartma, çarpmada signed taşması yakalanır"
-
-#: toplev.c:1190
-msgid "Use graph coloring register allocation."
-msgstr "Diyagram renklendiren yazmaç tahsisi kullanılır"
-
-#: toplev.c:1207
-msgid "Compile just for ISO C90"
-msgstr "Sadece ISO C90 için derleme yapılır"
-
-#: toplev.c:1209
-msgid "Determine language standard"
-msgstr "Dil standartı saptanır"
-
-#: toplev.c:1213
-msgid "Make bit-fields by unsigned by default"
-msgstr "Öntanımlı olarak bit alanları unsigned yapılır"
-
-#: toplev.c:1217
-msgid "Make 'char' be signed by default"
-msgstr "Öntanımlı olarak 'char' signed yapılır"
-
-#: toplev.c:1219
-msgid "Make 'char' be unsigned by default"
-msgstr "Öntanımlı olarak 'char' unsigned yapılır"
-
-#: toplev.c:1225
-msgid "Do not recognize the 'asm' keyword"
-msgstr "'asm' anahtar sözcüğü tanınmaz"
+#: toplev.c:1226
+#, c-format
+msgid "%s "
+msgstr "%s "
#: toplev.c:1228
-msgid "Do not recognize any built in functions"
-msgstr "Yerleşik işlevlerin hiçbiri tanınmaz"
-
-#: toplev.c:1230
-msgid "Assume normal C execution environment"
-msgstr "Normal C çalıştırma ortamı var sayılır"
-
-#: toplev.c:1233
-msgid "Assume that standard libraries & main might not exist"
-msgstr ""
-"Standart kitaplıkların ve main işlevinin olmadığı\n"
-" varsayılır"
-
-#: toplev.c:1236
-msgid "Allow different types as args of ? operator"
-msgstr ""
-"? işlecinin argümanları olarak farklı türlere\n"
-" izin verilir"
-
-#: toplev.c:1239
-msgid "Allow the use of $ inside identifiers"
-msgstr "Belirteçlerin içinde $ kullanımına izin verilir"
-
-#: toplev.c:1244
-msgid "Use the same size for double as for float"
-msgstr "double türler için de float tür uzunluğu kullanılır"
-
-#: toplev.c:1247
-msgid "Use the smallest fitting integer to hold enums"
-msgstr ""
-"enum türünü saklamada mümkün en küçük tamsayı tür\n"
-" kullanılır"
-
-#: toplev.c:1250
-msgid "Override the underlying type for wchar_t to `unsigned short'"
-msgstr ""
-"wchar_t için temel tür olarak `unsigned short' a\n"
-" zorlar"
-
-#: toplev.c:1254
-msgid "Enable most warning messages"
-msgstr "Uyarı sıklığı iletileri etkinleştirilir"
-
-#: toplev.c:1256
-msgid "Warn about casting functions to incompatible types"
-msgstr "İşlevlerin uyumsuz türlere dönüştürülmesi durumunda uyarır"
-
-#: toplev.c:1259
-msgid "Warn about functions which might be candidates for format attributes"
-msgstr ""
-"biçim öznitelikleri için aday olabilecek işlevler\n"
-" hakkında uyarır"
-
-#: toplev.c:1262
-msgid "Warn about casts which discard qualifiers"
-msgstr "Niteleyicileri iptal eden tür dönüşümleri hakkında uyarır"
-
-#: toplev.c:1265
-msgid "Warn about subscripts whose type is 'char'"
-msgstr "Türü 'char' olan dizi indisleri hakkında uyarır"
-
-#: toplev.c:1268 toplev.c:1271
-msgid "Warn if nested comments are detected"
-msgstr "İçiçe açıklamalar saptandığında uyarır"
-
-#: toplev.c:1274
-msgid "Warn about possibly confusing type conversions"
-msgstr "Tür dönüşümlerinin olası karışıklığı hakkında uyarır"
-
-#: toplev.c:1278
-msgid "Do not warn about compile-time integer division by zero"
-msgstr "Derleme anı sıfırla tamsayı bölme taşması için uyarmaz"
-
-#: toplev.c:1280
-msgid "Warn about testing equality of floating point numbers"
-msgstr "Gerçek sayıların eşitlik testleri hakkında uyarır"
-
-#: toplev.c:1283
-msgid "Warn about printf/scanf/strftime/strfmon format anomalies"
-msgstr ""
-"printf/scanf/strftime/strfmon biçim\n"
-" bozuklukları hakkında uyarmaz"
-
-#: toplev.c:1287
-msgid "Don't warn about too many arguments to format functions"
-msgstr ""
-"biçimleme işlevlerine çok fazla argüman\n"
-" verildiÄŸinde uyarmaz"
-
-#: toplev.c:1289
-msgid "Warn about non-string-literal format strings"
-msgstr ""
-"Dizge olmayan sabit biçimleme dizgeleri hakkında\n"
-" uyarır"
-
-#: toplev.c:1292
-msgid "Warn about possible security problems with format functions"
-msgstr ""
-"biçimleme işlevleriyle ilgili olası güvenlik\n"
-" sorunları hakkında uyarır"
-
-#: toplev.c:1296
-msgid "Don't warn about strftime formats yielding 2 digit years"
-msgstr ""
-"2 haneli yıllara yer veren strftime biçimler\n"
-" hakkında uyarır"
-
-#: toplev.c:1298
-msgid "Warn about implicit function declarations"
-msgstr "İşlevlerin dolaylı bildirimlerinde uyarır"
-
-#: toplev.c:1302
-msgid "Warn when a declaration does not specify a type"
-msgstr "Bir bildirimde tür belirtilmemişse uyarır"
-
-#: toplev.c:1307
-msgid "Warn about the use of the #import directive"
-msgstr "#import yönergesinin kullanımı hakkında uyarır"
-
-#: toplev.c:1311
-msgid "Do not warn about using 'long long' when -pedantic"
-msgstr "-pedantic ile 'long long' kullanımı hakkında uyarmaz"
-
-#: toplev.c:1313
-msgid "Warn about suspicious declarations of main"
-msgstr "Kuşkulu main bildirimleri hakkında uyarır"
-
-#: toplev.c:1316
-msgid "Warn about possibly missing braces around initializers"
-msgstr "İlklendiricileri çevreleyen parantezler yoksa uyarır"
-
-#: toplev.c:1319
-msgid "Warn about global funcs without previous declarations"
-msgstr "Önceden bildirilmemiş genel işlevler hakkında uyarır"
-
-#: toplev.c:1322
-msgid "Warn about global funcs without prototypes"
-msgstr "Prototipsiz genel işlevler hakkında uyarır"
-
-#: toplev.c:1325
-msgid "Warn about use of multicharacter literals"
-msgstr "Çoklu karakter sabitlerinin kullanımı hakkında uyarır"
-
-#: toplev.c:1328
-msgid "Warn about externs not at file scope level"
-msgstr ""
-"Dosya şemsiyesi altında bulunmayan extern'ler\n"
-" hakkında uyarır"
-
-#: toplev.c:1331
-msgid "Warn about possible missing parentheses"
-msgstr "Olası eksik parantezler hakkında uyarır"
-
-#: toplev.c:1334
-msgid "Warn about function pointer arithmetic"
-msgstr "İşlev gösterici aritmetiği hakkında uyarır"
-
-#: toplev.c:1337
-msgid "Warn about multiple declarations of the same object"
-msgstr "Aynı nesne birden fazla bildirilmişse uyarır"
-
-#: toplev.c:1340
-msgid "Warn whenever a function's return-type defaults to int"
-msgstr "bir işlevin dönen türü `int'e öntanımlılığında uyarır"
-
-#: toplev.c:1343
-msgid "Warn about possible violations of sequence point rules"
-msgstr ""
-"Ardışık nokta kurallarının olası çelişkileri\n"
-" hakkında uyarır"
-
-#: toplev.c:1346
-msgid "Warn about signed/unsigned comparisons"
-msgstr "signed/unsigned karşılaştırmalarında uyarır"
-
-#: toplev.c:1349
-msgid "Warn about non-prototyped function decls"
-msgstr "Prototipsiz işlev bildirimlerinde uyarır"
-
-#: toplev.c:1352
-msgid "Warn about constructs whose meanings change in ISO C"
-msgstr "ISO C'de anlamı değişen kurucular hakkında uyarır"
-
-#: toplev.c:1355
-msgid "Warn when trigraphs are encountered"
-msgstr "Üçlü harfler saptandığında uyarı verilir"
-
-#: toplev.c:1360
-msgid "Warn about unrecognized pragmas"
-msgstr "tanımlanamayan #pragma'lar hakkında uyarır"
-
-#: toplev.c:1363
-msgid "Mark strings as 'const char *'"
-msgstr "Dizgeler 'const char *' olarak imlenir"
-
-#: toplev.c:1508
-msgid "Warn when a function is unused"
-msgstr "Bir işlev kullanılmamışsa uyarır"
-
-#: toplev.c:1510
-msgid "Warn when a label is unused"
-msgstr "Bir etiket kullanılmamışsa uyarır"
-
-#: toplev.c:1512
-msgid "Warn when a function parameter is unused"
-msgstr "Bir işlev parametresi kullanılmamışsa uyarır"
-
-#: toplev.c:1514
-msgid "Warn when a variable is unused"
-msgstr "Bir değişken kullanılmamışsa uyarır"
-
-#: toplev.c:1516
-msgid "Warn when an expression value is unused"
-msgstr "Bir ifade değeri kullanılmamışsa uyarır"
-
-#: toplev.c:1518
-msgid "Do not suppress warnings from system headers"
-msgstr "Sistem başlık dosyalarından gelen uyarılar engellenmez"
-
-#: toplev.c:1520
-msgid "Treat all warnings as errors"
-msgstr "Tüm uyarıların hata olduğu varsayılır"
+#, c-format
+msgid " %s"
+msgstr " %s"
-#: toplev.c:1522
-msgid "Warn when one local variable shadows another"
-msgstr "Bir yerel değişken bir diğerini gölgeliyorsa uyarır"
+#: toplev.c:1293
+#, fuzzy, c-format
+msgid "invalid option argument `%s'"
+msgstr "`%s' seçeneği geçersiz"
-#: toplev.c:1524
-msgid "Warn about enumerated switches, with no default, missing a case"
+#: toplev.c:1356
+#, c-format
+msgid "getting core file size maximum limit: %m"
msgstr ""
-"Numaralı switch'lerde case eksikse veya\n"
-" default yoksa uyarır"
-
-#: toplev.c:1526
-msgid "Warn about enumerated switches missing a default case"
-msgstr "Numaralı switch'lerde default yoksa uyarır"
-#: toplev.c:1528
-msgid "Warn about all enumerated switches missing a specific case"
-msgstr "Numaralı switch'lerde belli bir case eksikse uyarır"
-
-#: toplev.c:1530
-msgid "Warn about returning structures, unions or arrays"
-msgstr "Dönen yapı, birleşim ve diziler hakkında uyarır"
-
-#: toplev.c:1532
-msgid "Warn about pointer casts which increase alignment"
-msgstr "Hizalamayı arttıran gösterici tür dönüşümlerinde uyarır"
-
-#: toplev.c:1534
-msgid "Warn about code that will never be executed"
-msgstr "Hiç çalışmayacak kod hakkında uyarır"
-
-#: toplev.c:1536
-msgid "Warn about uninitialized automatic variables"
-msgstr "İlklendirilmemiş otomatik değişkenler hakkında uyarır"
-
-#: toplev.c:1538
-msgid "Warn when an inlined function cannot be inlined"
-msgstr "Bir özümlemeli işlev özümlenemediğinde uyarır"
-
-#: toplev.c:1540
-msgid "Warn when the packed attribute has no effect on struct layout"
-msgstr "Paketli öznitelik yapı yerleşiminde etkisizse uyarır"
-
-#: toplev.c:1542
-msgid "Warn when padding is required to align struct members"
+#: toplev.c:1359
+#, c-format
+msgid "setting core file size limit to maximum: %m"
msgstr ""
-"Yapı üyelerini hizalamak için adımlama gerekliyse\n"
-" uyarır"
-
-#: toplev.c:1544
-msgid "Warn when an optimization pass is disabled"
-msgstr "Bir eniyileme aşaması iptal edildiğinde uyarır"
-#: toplev.c:1546
-msgid "Warn about uses of __attribute__((deprecated)) declarations"
-msgstr "__attribute__((eskidi)) bildirimlerinde uyarı verir"
+#: toplev.c:1678
+#, fuzzy
+msgid "%J'%F' used but never defined"
+msgstr "`%s' tanımlanmadan kullanılmış"
-#: toplev.c:1548
-msgid "Warn about functions which might be candidates for attribute noreturn"
-msgstr ""
-"noreturn özelliğine aday olabilecek işlevler\n"
-" hakkında uyarı verilir"
+#: toplev.c:1680
+#, fuzzy
+msgid "%J'%F' declared `static' but never defined"
+msgstr "`static' olarak bildirilen `%s' hiç atanmamış"
-#: toplev.c:1550
-msgid "Warn about code which might break the strict aliasing rules"
-msgstr ""
-"Adlandırma kurallarının değişmezliğini bozabilen\n"
-" kod varsa uyarır"
+#: toplev.c:1705
+#, fuzzy
+msgid "%J'%D' defined but not used"
+msgstr "`%s' atanmış ama kullanılmamış"
-#: toplev.c:1627 toplev.c:4548 config/rs6000/rs6000.c:680
+#: toplev.c:1726 toplev.c:1743
#, c-format
-msgid "invalid option `%s'"
-msgstr "`%s' seçeneği geçersiz"
+msgid "`%s' is deprecated (declared at %s:%d)"
+msgstr "`%s' eski kullanım (%s:%d. satırında bildirilmiş)"
-#: toplev.c:2031
+#: toplev.c:1746
#, c-format
-msgid "`%s' used but never defined"
-msgstr "`%s' tanımlanmadan kullanılmış"
+msgid "`%s' is deprecated"
+msgstr "`%s' eski kullanım"
-#: toplev.c:2034
+#: toplev.c:1749
#, c-format
-msgid "`%s' declared `static' but never defined"
-msgstr "`static' olarak bildirilen `%s' hiç atanmamış"
+msgid "type is deprecated (declared at %s:%d)"
+msgstr "tür eski kullanım (%s:%d. satırında bildirilmiş)"
-#: toplev.c:2057
-#, c-format
-msgid "`%s' defined but not used"
-msgstr "`%s' atanmış ama kullanılmamış"
+#: toplev.c:1752
+msgid "type is deprecated"
+msgstr "tür eski kullanım"
-#: toplev.c:2280
+#: toplev.c:1956
#, c-format
msgid "invalid register name `%s' for register variable"
msgstr "yazmaç değişkeni için yazmaç ismi `%s' geçersiz"
-#: toplev.c:3697
-msgid " -ffixed-<register> Mark <register> as being unavailable to the compiler\n"
-msgstr " -ffixed-YAZMAÇ Derleyiciye YAZMAÇ kullanışsız olarak belirtilir\n"
-
-#: toplev.c:3698
-msgid " -fcall-used-<register> Mark <register> as being corrupted by function calls\n"
+#: toplev.c:3522
+msgid "branch target register load optimization is not intended to be run twice"
msgstr ""
-" -fcall-used-YAZMAÇ YAZMAÇ işlev çağrıları tarafından bozulmuş olan\n"
-" olarak imlenir\n"
-#: toplev.c:3699
-msgid " -fcall-saved-<register> Mark <register> as being preserved across functions\n"
-msgstr " -fcall-saved-YAZMAÇ YAZMAÇ işlevlere karşı korunmuş olan olarak imlenir\n"
-
-#: toplev.c:3700
-msgid " -finline-limit=<number> Limits the size of inlined functions to <number>\n"
-msgstr " -finline-limit=SAYI Özümlenen işlevlerin uzunluğu SAYI ile sınırlanır\n"
-
-#: toplev.c:3701
-msgid " -fmessage-length=<number> Limits diagnostics messages lengths to <number> characters per line. 0 suppresses line-wrapping\n"
-msgstr ""
-" -fmessage-length=SAYI Tanı iletilerinin uzunluğu her satırda SAYI\n"
-" karakterle sınırlanır. 0 satır sarmalamayı engeller\n"
-
-#: toplev.c:3702
-msgid " -fdiagnostics-show-location=[once | every-line] Indicates how often source location information should be emitted, as prefix, at the beginning of diagnostics when line-wrapping\n"
-msgstr ""
-" -fdiagnostics-show-location=[once | every-line]\n"
-" Satır sarmalaması sırasında, önek olarak, kaynak\n"
-" konumu bilgisinin ne sıklıkta gösterileceği\n"
-" belirtilir. once: bir kere, every-line: her satırda\n"
-
-#: toplev.c:3703
-msgid " -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec] Indicates the default thread-local storage code generation model\n"
-msgstr ""
-" -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec]\n"
-" Öntanımlı yerel evreli saklama kodu üretim\n"
-" modelini belirtilir\n"
-
-#: toplev.c:3704
-msgid " -fstack-limit-register=<register> Trap if the stack goes past <register>\n"
-msgstr " -fstack-limit-register=<yazmaç> Yığıt <yazmaç>ı aşarsa yakalanır\n"
-
-#: toplev.c:3705
-msgid " -fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>\n"
-msgstr " -fstack-limit-symbol=<isim> Yığıt <isim> sembolünü aşarsa yakalanır\n"
-
-#: toplev.c:3706
-msgid " -frandom-seed=<string> Make compile reproducible using <string>\n"
-msgstr ""
-" -frandom-seed=<dizge> <dizge> kullanılarak derlemeyi yeniden türetilebilir\n"
-" yapar\n"
-
-#: toplev.c:3718
-msgid " -O[number] Set optimization level to [number]\n"
-msgstr " -O[SAYI] Eniyileme seviyesi SAYI olarak ayarlanır\n"
-
-#: toplev.c:3719
-msgid " -Os Optimize for space rather than speed\n"
-msgstr " -Os Hızdan çok boyut eniyilemesi yapılır\n"
-
-#: toplev.c:3731
-msgid " -pedantic Issue warnings needed by strict compliance to ISO C\n"
-msgstr " -pedantic ISO C uyumu için gereken uyarılar üretilir.\n"
-
-#: toplev.c:3732
-msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
-msgstr " -pedantic-errors Üretilen hatalar dışında -pedantic gibi\n"
-
-#: toplev.c:3733
-msgid " -w Suppress warnings\n"
-msgstr " -w Uyarılar engellenir\n"
-
-#: toplev.c:3734
-msgid " -W Enable extra warnings\n"
-msgstr " -W Fazladan uyarılar da verilir\n"
-
-#: toplev.c:3745
-msgid " -Wunused Enable unused warnings\n"
-msgstr " -Wunused Faydasız uyarılar da verilir\n"
-
-#: toplev.c:3746
-msgid " -Wlarger-than-<number> Warn if an object is larger than <number> bytes\n"
-msgstr " -Wlarger-than-SAYI Bir nesne SAYI bayttan büyükse uyarır\n"
-
-#: toplev.c:3747
-msgid " -p Enable function profiling\n"
-msgstr " -p İşlev ayrımlaması etkinleştirilir\n"
-
-#: toplev.c:3748
-msgid " -o <file> Place output into <file> \n"
-msgstr " -o DOSYA Çıktı DOSYAya yazılır\n"
-
-#: toplev.c:3749
-msgid ""
-" -G <number> Put global and static data smaller than <number>\n"
-" bytes into a special section (on some targets)\n"
-msgstr ""
-" -G SAYI Global ve static verileri SAYI bayttan daha\n"
-" küçükse (bazı hedeflerdeki) bir özel bölüme koyar\n"
-
-#: toplev.c:3760
-msgid " -aux-info <file> Emit declaration info into <file>\n"
-msgstr " -aux-info DOSYA Bildirim bilgileri DOSYAda gösterilir\n"
-
-#: toplev.c:3761
-msgid " -quiet Do not display functions compiled or elapsed time\n"
-msgstr " -quiet Derlenen işlevler ve geçen zaman gösterilmez\n"
-
-#: toplev.c:3762
-msgid " -version Display the compiler's version\n"
-msgstr " -version Derleyicinin sürüm bilgileri gösterilir\n"
-
-#: toplev.c:3763
-msgid " -d[letters] Enable dumps from specific passes of the compiler\n"
-msgstr " -d[HARFLER] Derleyici aşamalarının dökümlenmesi etkinleştirilir\n"
-
-#: toplev.c:3764
-msgid " -dumpbase <file> Base name to be used for dumps from specific passes\n"
-msgstr " -dumpbase DOSYA Derleyici aşamalarının dökümleneceği DOSYA\n"
-
-#: toplev.c:3766
-msgid " -fsched-verbose=<number> Set the verbosity level of the scheduler\n"
-msgstr " -fsched-verbose=SAYI Zamanlama için ayrıntı düzeyi belirtilir\n"
-
-#: toplev.c:3768
-msgid " --help Display this information\n"
-msgstr " --help Bu yardım iletisi gösterilir\n"
-
-#: toplev.c:3783
-msgid ""
-"\n"
-"Language specific options:\n"
-msgstr ""
-"\n"
-"Dile özel seçenekler:\n"
-
-#: toplev.c:3795
-#, c-format
-msgid " %-23.23s [undocumented]\n"
-msgstr " %-23.23s [belgelenemeyen]\n"
-
-#: toplev.c:3803 toplev.c:3817
+#: toplev.c:3689
#, c-format
msgid ""
"\n"
-"There are undocumented %s specific options as well.\n"
-msgstr ""
-"\n"
-"Halen belgelenememiş %s seçenek daha var.\n"
-
-#: toplev.c:3807
-#, c-format
-msgid ""
-"\n"
-" Options for %s:\n"
-msgstr ""
-"\n"
-" %s seçenekleri:\n"
-
-#: toplev.c:3844
-msgid ""
-"\n"
"Target specific options:\n"
msgstr ""
"\n"
"Hedefe özel seçenekler:\n"
-#: toplev.c:3858 toplev.c:3877
-#, c-format
-msgid " -m%-23.23s [undocumented]\n"
+#: toplev.c:3703 toplev.c:3722
+#, fuzzy, c-format
+msgid " -m%-23s [undocumented]\n"
msgstr " -m%-23.23s [belgelenemeyen]\n"
-#: toplev.c:3886
+#: toplev.c:3731
+#, c-format
msgid ""
"\n"
"There are undocumented target specific options as well.\n"
@@ -8104,73 +7072,22 @@ msgstr ""
"\n"
"Halen belgelenememiş hedefe özel seçenekler var.\n"
-#: toplev.c:3888
+#: toplev.c:3733
+#, c-format
msgid " They exist, but they are not documented.\n"
msgstr " Var fakat daha belgelendirilmedi.\n"
-#: toplev.c:3941
+#: toplev.c:3788
#, c-format
msgid "unrecognized gcc debugging option: %c"
msgstr "tanınmayan gcc hata ayıklama seçeneği: %c"
-#: toplev.c:4007
+#: toplev.c:3850 config/rs6000/rs6000.c:909
#, c-format
-msgid "`%s': unknown tls-model option"
-msgstr "`%s': bilinmeyen tls-model seçeneği"
-
-#: toplev.c:4034
-#, c-format
-msgid "unrecognized register name `%s'"
-msgstr "yazmaç ismi `%s' bilinmiyor"
-
-#: toplev.c:4059 toplev.c:5012
-#, c-format
-msgid "unrecognized option `%s'"
-msgstr "`%s' seçeneği bilinmiyor"
-
-#: toplev.c:4107
-msgid "-Wid-clash-LEN is no longer supported"
-msgstr "-Wid-clash-UZUNLUK artık desteklenmiyor."
-
-#: toplev.c:4184
-#, c-format
-msgid "use -gdwarf -g%d for DWARF v1, level %d"
-msgstr "DWARF v1, %2$d seviyesi için -gdwarf -g%1$d kullanın"
-
-#: toplev.c:4187
-msgid "use -gdwarf-2 for DWARF v2"
-msgstr "DWARF v2 için -gdwarf-2 kullanın"
-
-#: toplev.c:4192
-#, c-format
-msgid "ignoring option `%s' due to invalid debug level specification"
-msgstr "geçersiz hata ayıklama özelliğinden dolayı `%s' seçeneği yoksayılıyor"
-
-#: toplev.c:4215 toplev.c:5010
-#, c-format
-msgid "`%s': unknown or unsupported -g option"
-msgstr "`%s': -g seçeneği bilinmiyor ya da desteklenmiyor"
-
-#: toplev.c:4222
-#, c-format
-msgid "`%s' ignored, conflicts with `-g%s'"
-msgstr "`-g%2$s' ile çeliştiği için `%1$s' yoksayıldı"
-
-#: toplev.c:4304
-msgid "-param option missing argument"
-msgstr "-param seçeneğinde argüman eksik"
-
-#: toplev.c:4313
-#, c-format
-msgid "invalid --param option: %s"
-msgstr "geçersiz --param seçeneği: %s"
-
-#: toplev.c:4325
-#, c-format
-msgid "invalid parameter value `%s'"
-msgstr "geçersiz parametre değeri `%s'"
+msgid "invalid option `%s'"
+msgstr "`%s' seçeneği geçersiz"
-#: toplev.c:4565
+#: toplev.c:3865
#, c-format
msgid ""
"%s%s%s version %s (%s)\n"
@@ -8181,242 +7098,345 @@ msgstr ""
"%s\tGNU C sürüm %s tarafından derlendi.\n"
"%s%s%s sürüm %s (%s) CC tarafından derlendi.\n"
-#: toplev.c:4572
+#: toplev.c:3872
#, c-format
msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
msgstr "%s%sGGC yaklaşımları: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
-#: toplev.c:4630
+#: toplev.c:3924
msgid "options passed: "
msgstr "belirtilen seçenekler: "
-#: toplev.c:4659
+#: toplev.c:3953
msgid "options enabled: "
msgstr "etkin seçenekler: "
-#: toplev.c:4718 java/jcf-write.c:3453
-#, c-format
-msgid "can't open %s for writing"
+#: toplev.c:4011 java/jcf-write.c:3422
+#, fuzzy, c-format
+msgid "can't open %s for writing: %m"
msgstr "%s yazmak için açılamıyor"
-#: toplev.c:5002
-#, c-format
-msgid "ignoring command line option '%s'"
-msgstr "yoksayılan komut satırı seçeneği `%s'"
+#: toplev.c:4094 config/sh/sh.c:6883
+msgid "created and used with different settings of -fpic"
+msgstr ""
-#: toplev.c:5005
+#: toplev.c:4096 config/sh/sh.c:6885
+msgid "created and used with different settings of -fpie"
+msgstr ""
+
+#: toplev.c:4147 config/sh/sh.c:6935
#, c-format
-msgid "(it is valid for %s but not the selected language)"
-msgstr "(%s için geçerli ama o dil seçilmedi)"
+msgid "created and used with differing settings of `-m%s'"
+msgstr ""
-#: toplev.c:5039
-msgid "-Wuninitialized is not supported without -O"
-msgstr "-Wuninitialized seçeneği -O olmaksızın desteklenmiyor"
+#: toplev.c:4150 config/sh/sh.c:6938
+msgid "out of memory"
+msgstr ""
-#: toplev.c:5094
+#: toplev.c:4331
msgid "instruction scheduling not supported on this target machine"
msgstr "bu hedef makina için işlem zamanlaması desteklenmiyor"
-#: toplev.c:5098
+#: toplev.c:4335
msgid "this target machine does not have delayed branches"
msgstr "bu hedef makina gecikmeli dallanmalara sahip deÄŸil"
-#: toplev.c:5112
+#: toplev.c:4349
#, c-format
msgid "-f%sleading-underscore not supported on this target machine"
msgstr "bu hedef makinada -f%sleading-underscore desteklenmiyor"
-#: toplev.c:5175
+#: toplev.c:4398
+#, fuzzy, c-format
+msgid "target system does not support the \"%s\" debug format"
+msgstr "%s, `%%%s%c' %s biçimini desteklemiyor"
+
+#: toplev.c:4415
msgid "-ffunction-sections not supported for this target"
msgstr "bu hedefte -ffunction-sections desteklenmiyor"
-#: toplev.c:5180
+#: toplev.c:4420
msgid "-fdata-sections not supported for this target"
msgstr "bu hedefte -fdata-sections desteklenmiyor"
-#: toplev.c:5187
+#: toplev.c:4427
msgid "-ffunction-sections disabled; it makes profiling impossible"
msgstr "-ffunction-sections iptal edildi; ayrımlamayı mümkün kılmıyor"
-#: toplev.c:5194
+#: toplev.c:4434
msgid "-fprefetch-loop-arrays not supported for this target"
msgstr "bu hedefte -fprefetch-loop-arrays desteklenmiyor"
-#: toplev.c:5200
+#: toplev.c:4440
msgid "-fprefetch-loop-arrays not supported for this target (try -march switches)"
msgstr "-fprefetch-loop-arrays bu hedef için desteklenmiyor (-march seçeneğini deneyin)"
-#: toplev.c:5209
+#: toplev.c:4449
msgid "-fprefetch-loop-arrays is not supported with -Os"
msgstr "-fprefetch-loop-arrays, -Os ile desteklenmiyor"
-#: toplev.c:5215
+#: toplev.c:4455
msgid "-ffunction-sections may affect debugging on some targets"
msgstr "-ffunction-sections bazı hedeflerde hata ayıklamayı etkileyebilir"
-#: toplev.c:5327
-#, c-format
-msgid "error writing to %s"
+#: toplev.c:4557
+#, fuzzy, c-format
+msgid "error writing to %s: %m"
msgstr "%s e yazarken hata"
-#: toplev.c:5329 java/jcf-parse.c:936 java/jcf-write.c:3460
-#, c-format
-msgid "error closing %s"
+#: toplev.c:4559 java/jcf-parse.c:902 java/jcf-write.c:3429
+#, fuzzy, c-format
+msgid "error closing %s: %m"
msgstr "%s kapatılırken hata"
-#: tree-dump.c:702
+#: tree-dump.c:692
#, c-format
msgid "could not open dump file `%s'"
msgstr "döküm dosyası `%s' açılamadı"
-#: tree-dump.c:778
-#, c-format
-msgid "ignoring unknown option `%.*s' in `-f%s'"
+#: tree-dump.c:763
+#, fuzzy, c-format
+msgid "ignoring unknown option `%.*s' in `-fdump-%s'"
msgstr "yoksayılan bilinmeyen seçenek `%.*s' (`-f%s' içinde)"
-#: tree.c:3645
+#: tree-inline.c:1016
+msgid "%Jfunction '%F' can never be inlined because it uses alloca (override using the always_inline attribute)"
+msgstr ""
+
+#: tree-inline.c:1029
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp"
+msgstr ""
+
+#: tree-inline.c:1044
+msgid "%Jfunction '%F' can never be inlined because it uses variable argument lists"
+msgstr ""
+
+#: tree-inline.c:1060
+msgid "%Jfunction '%F' can never be inlined because it uses setjmp-longjmp exception handling"
+msgstr ""
+
+#: tree-inline.c:1078
+msgid "%Jfunction '%F' can never be inlined because it contains a nested function"
+msgstr ""
+
+#: tree-inline.c:1095
+msgid "%Jfunction '%F' can never be inlined because it contains a computed goto"
+msgstr ""
+
+#: tree-inline.c:1105
+msgid "%Jfunction '%F' can never be inlined because it contains a nonlocal goto"
+msgstr ""
+
+#: tree-inline.c:1128
+msgid "%Jfunction '%F' can never be inlined because it uses variable sized variables"
+msgstr ""
+
+#: tree-inline.c:1338 tree-inline.c:1345
+#, fuzzy
+msgid "%Jinlining failed in call to '%F': %s"
+msgstr "`%s' çağrısında özümleme başarısız"
+
+#: tree-optimize.c:190
+#, fuzzy
+msgid "%Jsize of return value of '%D' is %u bytes"
+msgstr "`%s' dönüş değerinin uzunluğu %u bayt"
+
+#: tree-optimize.c:193
+#, fuzzy
+msgid "%Jsize of return value of '%D' is larger than %wd bytes"
+msgstr "`%s' için dönen değerin genişliği %d bayttan büyük"
+
+#: tree.c:3800
msgid "arrays of functions are not meaningful"
msgstr "işlev dizileri anlamlı değil"
-#: tree.c:3702
+#: tree.c:3855
msgid "function return type cannot be function"
msgstr "işlevin dönen değer türü işlev olamaz"
-#: tree.c:4557
+#: tree.c:4684
msgid "invalid initializer for bit string"
msgstr "bit dizge için ilklendirici geçersiz"
-#: tree.c:4616
+#: tree.c:4736
#, c-format
msgid "tree check: expected %s, have %s in %s, at %s:%d"
msgstr "Ağaç denetimi: %4$s:%5$d: %3$s işlevinde '%1$s' umulurken, '%2$s' var"
-#: tree.c:4633
+#: tree.c:4749
#, c-format
msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d"
msgstr "Ağaç denetimi: %5$s:%6$d: %4$s işlevinde sınıf '%1$c' umulurken, '%2$c' (%3$s) var"
-#: tree.c:4650
+#: tree.c:4762
#, c-format
msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
msgstr "ağaç denetimi: %4$s:%5$d: %3$s işlevindeki %2$d öğeli vektörün %1$d. öğesine erişildi"
-#: varasm.c:455 config/i386/winnt.c:611
-#, c-format
-msgid "%s causes a section type conflict"
+#: tree.c:4774
+#, fuzzy, c-format
+msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
+msgstr "ağaç denetimi: %4$s:%5$d: %3$s işlevindeki %2$d öğeli vektörün %1$d. öğesine erişildi"
+
+#: varasm.c:434
+#, fuzzy
+msgid "%J%D causes a section type conflict"
msgstr "%s bir bölüm türü çelişkiye sebep oluyor"
-#: varasm.c:841
-#, c-format
-msgid "register name not specified for `%s'"
+#: varasm.c:796
+#, fuzzy
+msgid "%Jregister name not specified for '%D'"
msgstr "`%s' için yazmaç ismi belirtilmemiş"
-#: varasm.c:843
-#, c-format
-msgid "invalid register name for `%s'"
+#: varasm.c:798
+#, fuzzy
+msgid "%Jinvalid register name for '%D'"
msgstr "`%s' için yazmaç ismi geçersiz"
-#: varasm.c:846
-#, c-format
-msgid "data type of `%s' isn't suitable for a register"
+#: varasm.c:800
+#, fuzzy
+msgid "%Jdata type of '%D' isn't suitable for a register"
msgstr "`%s' veri türü bir yazmaç için kullanılabilir değil"
-#: varasm.c:849
-#, c-format
-msgid "register specified for `%s' isn't suitable for data type"
+#: varasm.c:803
+#, fuzzy
+msgid "%Jregister specified for '%D' isn't suitable for data type"
msgstr "`%s' için belirtilen yazmaç veri türü için kullanılabilir değil"
-#: varasm.c:858
+#: varasm.c:813
msgid "global register variable has initial value"
msgstr "genel yazmaç değişkeni öndeğer içeriyor"
-#: varasm.c:861
+#: varasm.c:816
msgid "volatile register variables don't work as you might wish"
msgstr "oynak yazmaç değişkenleri sizin istediğiniz gibi çalışmaz"
-#: varasm.c:894
-#, c-format
-msgid "register name given for non-register variable `%s'"
+#: varasm.c:848
+#, fuzzy
+msgid "%Jregister name given for non-register variable '%D'"
msgstr "yazmaç olmayan değişken `%s' için yazmaç ismi verilmiş"
-#: varasm.c:1542
-#, c-format
-msgid "alignment of `%s' is greater than maximum object file alignment. Using %d"
+#: varasm.c:1380
+#, fuzzy
+msgid "%Jstorage size of `%D' isn't known"
+msgstr "`%D' nin saklama uzunluÄŸu bilinmiyor"
+
+#: varasm.c:1434
+#, fuzzy
+msgid "%Jalignment of '%D' is greater than maximum object file alignment. Using %d"
msgstr "%s hizalaması en büyük nesne dosyası hizalamasından daha büyük. %d kullanılıyor"
-#: varasm.c:1584
+#: varasm.c:1480
msgid "thread-local COMMON data not implemented"
msgstr "yerel evreli COMMON verisi henüz yazılmadı"
-#: varasm.c:1610
-#, c-format
-msgid "requested alignment for %s is greater than implemented alignment of %d"
+#: varasm.c:1505
+#, fuzzy
+msgid "%Jrequested alignment for '%D' is greater than implemented alignment of %d"
msgstr "%s için istenen hizalama yerleşik hizalama %d den daha büyük"
-#: varasm.c:4048
+#: varasm.c:3787
msgid "initializer for integer value is too complicated"
msgstr "tamsayı öndeğer fazla karmaşık"
-#: varasm.c:4053
+#: varasm.c:3792
msgid "initializer for floating value is not a floating constant"
msgstr "gerçel sayı öndeğer bir gerçel sayı sabit değil"
-#: varasm.c:4120
+#: varasm.c:3858
msgid "unknown set constructor type"
msgstr "bilinmeyen set constructor türü"
-#: varasm.c:4334
+#: varasm.c:4077
#, c-format
msgid "invalid initial value for member `%s'"
msgstr "üye `%s' için öndeğer geçersiz"
-#: varasm.c:4525 varasm.c:4568
-#, c-format
-msgid "weak declaration of `%s' must precede definition"
+#: varasm.c:4264 varasm.c:4308
+#, fuzzy
+msgid "%Jweak declaration of '%D' must precede definition"
msgstr "`%s' zayıf bildirimi tanımından önce olmalı"
-#: varasm.c:4532
-#, c-format
-msgid "weak declaration of `%s' after first use results in unspecified behavior"
+#: varasm.c:4272
+#, fuzzy
+msgid "%Jweak declaration of '%D' after first use results in unspecified behavior"
msgstr "`%s' zayıf bildiriminin ilk kullanımdan sonra olması tanımlanmamış davranışa yol açar"
-#: varasm.c:4566
-#, c-format
-msgid "weak declaration of `%s' must be public"
+#: varasm.c:4306
+#, fuzzy
+msgid "%Jweak declaration of '%D' must be public"
msgstr "`%s' zayıf bildirimi 'public' olmalı"
-#: varasm.c:4575
-#, c-format
-msgid "weak declaration of `%s' not supported"
+#: varasm.c:4315
+#, fuzzy
+msgid "%Jweak declaration of '%D' not supported"
msgstr "`%s' zayıf bildirimi desteklenmiyor"
-#: varasm.c:4602 varasm.c:4677
+#: varasm.c:4344 varasm.c:4434
msgid "only weak aliases are supported in this configuration"
msgstr "bu yapılandırmada sadece zayıf takma adlar destekleniyor"
-#: varasm.c:4685
+#: varasm.c:4437
msgid "alias definitions not supported in this configuration; ignored"
msgstr "takma ad tanımlamaları bu yapılandırmada desteklenmiyor; yoksayıldı"
-#: varasm.c:4716
+#: varasm.c:4466
msgid "visibility attribute not supported in this configuration; ignored"
msgstr "görünürlük bu yapılandırmada desteklenmiyor; yoksayıldı"
-#: varray.c:134
+#: varray.c:194
#, c-format
msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d"
msgstr "Sanal dizi %1$s[%2$lu]: %5$s:%6$d: %4$s içindeki %3$lu öğesi sınırların dışında"
+#: varray.c:204
+#, fuzzy, c-format
+msgid "underflowed virtual array %s in %s, at %s:%d"
+msgstr "%2$s:%3$d. satırındaki %1$s işlevinde derleyici iç hatası"
+
#. Print an error message for unrecognized stab codes.
-#: xcoffout.c:175
+#: xcoffout.c:173
#, c-format
msgid "no sclass for %s stab (0x%x)\n"
msgstr "%s stab (0x%x) için sclass yok\n"
-#: pretty-print.h:97
-#, c-format
-msgid "#`%s' not supported by %s#"
-msgstr "#`%s', %s# tarafından desteklenmiyor"
+#.
+#. Local variables:
+#. mode:c
+#. End:
+#.
+#: diagnostic.def:1
+#, fuzzy
+msgid "fatal error: "
+msgstr "iç hata: "
+
+#: diagnostic.def:2
+#, fuzzy
+msgid "internal compiler error: "
+msgstr "iç hata: "
+
+#: diagnostic.def:3
+#, fuzzy
+msgid "error: "
+msgstr "iç hata: "
+
+#: diagnostic.def:4
+#, fuzzy
+msgid "sorry, unimplemented: "
+msgstr "daha kodlanmadı: "
+
+#: diagnostic.def:6
+msgid "anachronism: "
+msgstr ""
+
+#: diagnostic.def:7
+#, fuzzy
+msgid "note: "
+msgstr "bilgi:"
+
+#: diagnostic.def:8
+msgid "debug: "
+msgstr ""
#: params.def:53
msgid "The maximum number of instructions in a single function eligible for inlining"
@@ -8430,80 +7450,136 @@ msgstr ""
"Otomatik olarak özümlendiğinde en çok\n"
" asm komutu sayısı"
-#: params.def:84
-msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
-msgstr ""
-"GCC özümlemeyi kısmaya başlamadan önce\n"
-" tekrarlanan özümlemeye göre en çok asm\n"
-" komutu sayısı"
-
-#: params.def:97
-msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
-msgstr "Ardışık içerilme limitine ulaştıktan sonra içerilmeyi frenleyen lineer işlevin eğimi, bu parametrenin negatif ters çarpanı olarak verilmiş"
-
-#: params.def:110
-msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
-msgstr ""
-"Bir miktar ardışık özümlemeden sonraki\n"
-" özümlemede hala seçilebilir olan tek\n"
-" bir işlev içindeki asm komutu sayısı"
-
-#: params.def:120
+#: params.def:75
msgid "The maximum number of instructions for the RTL inliner"
msgstr "RTL özümleyici için en fazla komut sayısı"
-#: params.def:131
+#: params.def:86
msgid "The maximum number of instructions to consider to fill a delay slot"
msgstr ""
"Bir gecikme yuvasını dolduracağı\n"
" varsayılan en fazla komut sayısı"
-#: params.def:142
+#: params.def:97
msgid "The maximum number of instructions to consider to find accurate live register information"
msgstr ""
"tam doğru faal yazmaç bilgisinin\n"
" bulunmasını dikkate alacak asm\n"
" komutlarının maksimum sayısı"
-#: params.def:152
+#: params.def:107
msgid "The maximum length of scheduling's pending operations list"
msgstr ""
"İşlemler listesinin tamamlanmasını\n"
" bekleyenlerin en büyük uzunluğu"
-#: params.def:159
+#: params.def:112
+msgid "The size of function body to be considered large"
+msgstr ""
+
+#: params.def:116
+#, fuzzy
+msgid "Maximal growth due to inlining of large function (in percent)"
+msgstr ""
+"Kuyruk tekrarı tarafından oluşturulan en\n"
+" yüksek kod büyümesi (yüzde olarak)"
+
+#: params.def:120
+msgid "how much can given compilation unit grow because of the inlining (in percent)"
+msgstr ""
+
+#: params.def:127
msgid "The maximum amount of memory to be allocated by GCSE"
msgstr ""
"Genel ortak alt ifade elemesi tarafından\n"
" ayrılan en büyük bellek"
-#: params.def:164
+#: params.def:132
msgid "The maximum number of passes to make when doing GCSE"
msgstr ""
"Genel ortak alt ifade elemesi uygulanırken\n"
" yapılacak en çok geçiş sayısı"
-#: params.def:171
+#: params.def:139
msgid "The maximum number of instructions to consider to unroll in a loop"
msgstr ""
"Bir döngü içinde çevrime sokulmayacağı\n"
" varsayılan en fazla komut sayısı"
-#: params.def:176
+#: params.def:145
+#, fuzzy
+msgid "The maximum number of instructions to consider to unroll in a loop on average"
+msgstr ""
+"Bir döngü içinde çevrime sokulmayacağı\n"
+" varsayılan en fazla komut sayısı"
+
+#: params.def:150
+#, fuzzy
+msgid "The maximum number of unrollings of a single loop"
+msgstr "RTL özümleyici için en fazla komut sayısı"
+
+#: params.def:155
+#, fuzzy
+msgid "The maximum number of insns of a peeled loop"
+msgstr ""
+"Bir gecikme yuvasını dolduracağı\n"
+" varsayılan en fazla komut sayısı"
+
+#: params.def:160
+#, fuzzy
+msgid "The maximum number of peelings of a single loop"
+msgstr ""
+"Genel ortak alt ifade elemesi uygulanırken\n"
+" yapılacak en çok geçiş sayısı"
+
+#: params.def:165
+#, fuzzy
+msgid "The maximum number of insns of a completely peeled loop"
+msgstr ""
+"Bir döngü içinde çevrime sokulmayacağı\n"
+" varsayılan en fazla komut sayısı"
+
+#: params.def:170
+#, fuzzy
+msgid "The maximum number of peelings of a single loop that is peeled completely"
+msgstr ""
+"Özümleme için seçilebilir bir işlevde\n"
+" en çok asm komutu sayısı"
+
+#: params.def:175
+#, fuzzy
+msgid "The maximum number of insns of a peeled loop that rolls only once"
+msgstr "RTL özümleyici için en fazla komut sayısı"
+
+#: params.def:181
+#, fuzzy
+msgid "The maximum number of insns of an unswitched loop"
+msgstr ""
+"Bir döngü içinde çevrime sokulmayacağı\n"
+" varsayılan en fazla komut sayısı"
+
+#: params.def:186
+#, fuzzy
+msgid "The maximum number of unswitchings in a single loop"
+msgstr ""
+"Özümleme için seçilebilir bir işlevde\n"
+" en çok asm komutu sayısı"
+
+#: params.def:191
msgid "Select fraction of the maximal count of repetitions of basic block in program given basic block needs to have to be considered hot"
msgstr ""
"Temel bloğun sıcak olarak düşünülmesi\n"
" gereğine göre yazılımda temel bloğun\n"
" maksimum tekrar sayısının kesrini seçer"
-#: params.def:181
+#: params.def:196
msgid "Select fraction of the maximal frequency of executions of basic block in function given basic block needs to have to be considered hot"
msgstr ""
"Temel bloğun sıcak olarak düşünülmesi\n"
" gereğine göre yazılımda temel bloğun\n"
" maksimum icra sıklığının kesrini seçer"
-#: params.def:186
+#: params.def:201
msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is available"
msgstr ""
"Ä°ÅŸlevin izlenme oluÅŸumu ile kapsanacak,\n"
@@ -8511,7 +7587,7 @@ msgstr ""
" Profil geribeslemesi mevcut olduÄŸu \n"
" zaman kullanılır"
-#: params.def:191
+#: params.def:206
msgid "The percentage of function, weighted by execution frequency, that must be covered by trace formation. Used when profile feedback is not available"
msgstr ""
"Ä°ÅŸlevin izlenme oluÅŸumu ile kapsanacak,\n"
@@ -8519,241 +7595,274 @@ msgstr ""
" yüzdesi. Profil geribeslemesi mümkün\n"
" olmadığında kullanılır"
-#: params.def:196
-msgid "Maximal code growth caused by tail duplication (in percents)"
+#: params.def:211
+#, fuzzy
+msgid "Maximal code growth caused by tail duplication (in percent)"
msgstr ""
"Kuyruk tekrarı tarafından oluşturulan en\n"
" yüksek kod büyümesi (yüzde olarak)"
-#: params.def:200
-msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percents)"
+#: params.def:215
+#, fuzzy
+msgid "Stop reverse growth if the reverse probability of best edge is less than this threshold (in percent)"
msgstr ""
"En iyi kenar tersine olasılığı bu eşik\n"
" değerden (yüzde olarak) küçükse\n"
" geriye doğru büyüme durdurulur"
-#: params.def:205
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is available"
+#: params.def:220
+#, fuzzy
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is available"
msgstr ""
"En iyi kenar olasılığı bu eşik\n"
" değerden (yüzde olarak) küçükse\n"
" ileriye doğru büyüme durdurulur.\n"
" Profil geribeslemesi mümkünse kullanılır"
-#: params.def:210
-msgid "Stop forward growth if the probability of best edge is less than this threshold (in percents). Used when profile feedback is not available"
+#: params.def:225
+#, fuzzy
+msgid "Stop forward growth if the probability of best edge is less than this threshold (in percent). Used when profile feedback is not available"
msgstr ""
"En iyi kenar olasılığı bu eşik değerden\n"
" yüzde olarak) küçükse ileriye doğru\n"
" büyüme durdurulur. Profil \n"
" geribeslemesi mümkün değilse kullanılır"
-#: params.def:217
+#: params.def:232
msgid "The maximum number of incoming edges to consider for crossjumping"
msgstr ""
"Çapraz sıçrama için varsayılan gelen\n"
" kenarların azami sayısı"
-#: params.def:230
-msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap."
+#: params.def:238
+#, fuzzy
+msgid "The maximum length of path considered in cse"
+msgstr ""
+"İşlemler listesinin tamamlanmasını\n"
+" bekleyenlerin en büyük uzunluğu"
+
+#: params.def:243
+#, fuzzy
+msgid "The maximum memory locations recorded by cselib"
+msgstr "RTL özümleyici için en fazla komut sayısı"
+
+#: params.def:256
+#, fuzzy
+msgid "Minimum heap expansion to trigger garbage collection, as a percentage of the total size of the heap"
msgstr ""
"Üst bellek çöp temizliğini başlatmak için\n"
" gereken minimum artış, üst bellek\n"
" boyutunun yüzdesi olarak"
-#: params.def:236
-msgid "Minimum heap size before we start collecting garbage, in kilobytes."
+#: params.def:262
+#, fuzzy
+msgid "Minimum heap size before we start collecting garbage, in kilobytes"
msgstr ""
"Çöp toplamaya başlanmadan önceki kilobayt\n"
" cinsinden en küçük üst bellek boyutu"
+#: params.def:270
+#, fuzzy
+msgid "The maximum number of instructions to search backward when looking for equivalent reload"
+msgstr ""
+"Bir döngü içinde çevrime sokulmayacağı\n"
+" varsayılan en fazla komut sayısı"
+
#: config/darwin-c.c:75
msgid "too many #pragma options align=reset"
msgstr "çok sayıda #pragma seçeneği align=reset"
-#: config/darwin-c.c:97 config/darwin-c.c:100 config/darwin-c.c:102
-#: config/darwin-c.c:104
+#: config/darwin-c.c:95 config/darwin-c.c:98 config/darwin-c.c:100
+#: config/darwin-c.c:102
msgid "malformed '#pragma options', ignoring"
msgstr "'#pragma options' hatalı, yoksayılıyor"
-#: config/darwin-c.c:107
+#: config/darwin-c.c:105
msgid "junk at end of '#pragma options'"
msgstr "'#pragma options' sonunda karışıklık"
-#: config/darwin-c.c:117
+#: config/darwin-c.c:115
msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring"
msgstr "'#pragma options align={mac68k|power|reset}' hatalı, yoksayılıyor"
-#: config/darwin-c.c:130
+#: config/darwin-c.c:127
msgid "missing '(' after '#pragma unused', ignoring"
msgstr "'#pragma unused'dan sonra '(' eksik, yoksayılıyor"
-#: config/darwin-c.c:148
+#: config/darwin-c.c:145
msgid "missing ')' after '#pragma unused', ignoring"
msgstr "'#pragma unused'dan sonra ')' eksik, yoksayılıyor"
-#: config/darwin-c.c:151
+#: config/darwin-c.c:148
msgid "junk at end of '#pragma unused'"
msgstr "'#pragma unused' sonunda karışıklık"
-#: config/lynx-ng.h:97 config/lynx.h:121 config/rs6000/lynx.h:100
+#: config/darwin.c:1347
+#, fuzzy
+msgid "internal and protected visibility attributes not supportedin this configuration; ignored"
+msgstr "görünürlük bu yapılandırmada desteklenmiyor; yoksayıldı"
+
+#: config/lynx-ng.h:97 config/lynx.h:116 config/rs6000/lynx.h:73
msgid "-msystem-v and -p are incompatible"
msgstr "-msystem-v ile -p uyumsuz"
-#: config/lynx-ng.h:99 config/lynx.h:123 config/rs6000/lynx.h:102
+#: config/lynx-ng.h:99 config/lynx.h:118 config/rs6000/lynx.h:75
msgid "-msystem-v and -mthreads are incompatible"
msgstr "-msystem-v ile -mthreads uyumsuz"
-#: config/alpha/alpha.c:342
+#: config/windiss.h:37
+#, fuzzy
+msgid "profiler support for WindISS"
+msgstr "MMIX için function_profiler desteği"
+
+#: config/alpha/alpha.c:231
#, c-format
msgid "-f%s ignored for Unicos/Mk (not supported)"
msgstr "Unicos/Mk için -f%s yoksayıldı (desteklenmiyor)"
-#: config/alpha/alpha.c:366
+#: config/alpha/alpha.c:255
msgid "-mieee not supported on Unicos/Mk"
msgstr "Unicos/Mk üzerinde -mieee desteklenmiyor"
-#: config/alpha/alpha.c:377
+#: config/alpha/alpha.c:266
msgid "-mieee-with-inexact not supported on Unicos/Mk"
msgstr "-mieee-with-inexact Unicos/Mk üzerinde desteklenmiyor"
-#: config/alpha/alpha.c:394
+#: config/alpha/alpha.c:283
#, c-format
msgid "bad value `%s' for -mtrap-precision switch"
msgstr "-mtrap-precision seçeneği için `%s' değeri hatalı"
-#: config/alpha/alpha.c:408
+#: config/alpha/alpha.c:297
#, c-format
msgid "bad value `%s' for -mfp-rounding-mode switch"
msgstr "-mfp-rounding-mode seçeneği için `%s' değeri hatalı"
-#: config/alpha/alpha.c:423
+#: config/alpha/alpha.c:312
#, c-format
msgid "bad value `%s' for -mfp-trap-mode switch"
msgstr "-mfp-trap-mode seçeneği için `%s' değeri hatalı"
-#: config/alpha/alpha.c:435
+#: config/alpha/alpha.c:324 config/rs6000/rs6000.c:1063
#, c-format
msgid "bad value `%s' for -mtls-size switch"
msgstr "-mtls-size seçeneği için `%s' değeri hatalı"
-#: config/alpha/alpha.c:454 config/alpha/alpha.c:466
+#: config/alpha/alpha.c:343 config/alpha/alpha.c:355
#, c-format
msgid "bad value `%s' for -mcpu switch"
msgstr "-mcpu seçeneği için `%s' değeri hatalı"
-#: config/alpha/alpha.c:473
+#: config/alpha/alpha.c:362
msgid "trap mode not supported on Unicos/Mk"
msgstr "Unicos/Mk üzerinde yakalama kipi desteklenmiyor"
-#: config/alpha/alpha.c:480
+#: config/alpha/alpha.c:369
msgid "fp software completion requires -mtrap-precision=i"
msgstr "fp yazılım tamamlaması -mtrap-precision=i gerektirir"
-#: config/alpha/alpha.c:496
+#: config/alpha/alpha.c:385
msgid "rounding mode not supported for VAX floats"
msgstr "VAX gerçelleri için yuvarlama kipi desteklenmiyor"
-#: config/alpha/alpha.c:501
+#: config/alpha/alpha.c:390
msgid "trap mode not supported for VAX floats"
msgstr "VAX gerçelleri için tuzak kipi desteklenmiyor"
-#: config/alpha/alpha.c:530
+#: config/alpha/alpha.c:419
#, c-format
msgid "L%d cache latency unknown for %s"
msgstr "%2$s için L%1$d arabellek gecikmesi bilinmiyor"
-#: config/alpha/alpha.c:545
+#: config/alpha/alpha.c:434
#, c-format
msgid "bad value `%s' for -mmemory-latency"
msgstr "-mmemory-latency için değer `%s' hatalı"
-#: config/alpha/alpha.c:5604 config/m88k/m88k.c:2889 config/romp/romp.c:754
-#: config/romp/romp.c:761
+#: config/alpha/alpha.c:5411
#, c-format
msgid "invalid %%H value"
msgstr "%%H değeri geçersiz"
-#: config/alpha/alpha.c:5625
+#: config/alpha/alpha.c:5432
#, c-format
msgid "invalid %%J value"
msgstr "%%J değeri geçersiz"
-#: config/alpha/alpha.c:5641 config/ia64/ia64.c:3970 config/m88k/m88k.c:3034
+#: config/alpha/alpha.c:5448 config/ia64/ia64.c:4243
#, c-format
msgid "invalid %%r value"
msgstr "%%r değeri geçersiz"
-#: config/alpha/alpha.c:5651 config/rs6000/rs6000.c:7737
+#: config/alpha/alpha.c:5458 config/rs6000/rs6000.c:8944
+#: config/xtensa/xtensa.c:1999
#, c-format
msgid "invalid %%R value"
msgstr "%%R değeri geçersiz"
-#: config/alpha/alpha.c:5657 config/rs6000/rs6000.c:7663
+#: config/alpha/alpha.c:5464 config/rs6000/rs6000.c:8863
+#: config/xtensa/xtensa.c:1966
#, c-format
msgid "invalid %%N value"
msgstr "%%N değeri geçersiz"
-#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:7691
+#: config/alpha/alpha.c:5472 config/rs6000/rs6000.c:8891
#, c-format
msgid "invalid %%P value"
msgstr "%%P değeri geçersiz"
-#: config/alpha/alpha.c:5673 config/m88k/m88k.c:2895 config/romp/romp.c:740
-#: config/romp/romp.c:747
+#: config/alpha/alpha.c:5480
#, c-format
msgid "invalid %%h value"
msgstr "%%h değeri geçersiz"
-#: config/alpha/alpha.c:5681 config/romp/romp.c:698
+#: config/alpha/alpha.c:5488 config/xtensa/xtensa.c:1992
#, c-format
msgid "invalid %%L value"
msgstr "%%L değeri geçersiz"
-#: config/alpha/alpha.c:5720 config/rs6000/rs6000.c:7645
+#: config/alpha/alpha.c:5527 config/rs6000/rs6000.c:8845
#, c-format
msgid "invalid %%m value"
msgstr "%%m değeri geçersiz"
-#: config/alpha/alpha.c:5728 config/rs6000/rs6000.c:7653
+#: config/alpha/alpha.c:5535 config/rs6000/rs6000.c:8853
#, c-format
msgid "invalid %%M value"
msgstr "%%M değeri geçersiz"
-#: config/alpha/alpha.c:5772
+#: config/alpha/alpha.c:5579
#, c-format
msgid "invalid %%U value"
msgstr "%%U değeri geçersiz"
-#: config/alpha/alpha.c:5784 config/alpha/alpha.c:5798 config/romp/romp.c:706
-#: config/rs6000/rs6000.c:7745
+#: config/alpha/alpha.c:5591 config/alpha/alpha.c:5605
+#: config/rs6000/rs6000.c:8952
#, c-format
msgid "invalid %%s value"
msgstr "%%s değeri geçersiz"
-#: config/alpha/alpha.c:5821 config/m88k/m88k.c:2997
+#: config/alpha/alpha.c:5628
#, c-format
msgid "invalid %%C value"
msgstr "%%C değeri geçersiz"
-#: config/alpha/alpha.c:5858 config/m88k/m88k.c:3018
-#: config/rs6000/rs6000.c:7502
+#: config/alpha/alpha.c:5665 config/rs6000/rs6000.c:8702
#, c-format
msgid "invalid %%E value"
msgstr "%%E değeri geçersiz"
-#: config/alpha/alpha.c:5883 config/alpha/alpha.c:5933
+#: config/alpha/alpha.c:5690 config/alpha/alpha.c:5738
msgid "unknown relocation unspec"
msgstr "bilinmeyen yerdeÄŸiÅŸim belirtilmemiÅŸ"
-#: config/alpha/alpha.c:5892 config/romp/romp.c:981
-#: config/rs6000/rs6000.c:8052
+#: config/alpha/alpha.c:5699 config/rs6000/rs6000.c:9265
#, c-format
msgid "invalid %%xn code"
msgstr "%%xn değeri geçersiz"
-#: config/alpha/alpha.c:6618 config/alpha/alpha.c:6621 config/s390/s390.c:6069
-#: config/s390/s390.c:6072
+#: config/alpha/alpha.c:6634 config/alpha/alpha.c:6637 config/s390/s390.c:6572
+#: config/s390/s390.c:6575
msgid "bad builtin fcode"
msgstr "hatalı yerleşik fcode"
@@ -8762,87 +7871,99 @@ msgstr "hatalı yerleşik fcode"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/alpha/alpha.h:279 config/i386/i386.h:294 config/i386/i386.h:296
-#: config/i386/i386.h:298 config/ns32k/ns32k.h:140 config/rs6000/rs6000.h:292
-#: config/s390/s390.h:68 config/sparc/sparc.h:522 config/sparc/sparc.h:527
+#. WARNING: Do not mark empty strings for translation, as calling
+#. gettext on an empty string does NOT return an empty
+#. string.
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/alpha/alpha.h:286 config/i386/i386.h:327 config/i386/i386.h:329
+#: config/i386/i386.h:331 config/ns32k/ns32k.h:140 config/s390/s390.h:124
+#: config/sparc/sparc.h:537 config/sparc/sparc.h:542
msgid "Use hardware fp"
msgstr "Donanım aritmetik işlemcisi kullanılır"
-#: config/alpha/alpha.h:280 config/i386/i386.h:295 config/i386/i386.h:297
-#: config/rs6000/rs6000.h:294 config/sparc/sparc.h:524
-#: config/sparc/sparc.h:529
+#: config/alpha/alpha.h:287 config/i386/i386.h:328 config/i386/i386.h:330
+#: config/sparc/sparc.h:539 config/sparc/sparc.h:544
msgid "Do not use hardware fp"
msgstr "Donanım aritmetik işlemcisi kullanılmaz"
-#: config/alpha/alpha.h:281
+#: config/alpha/alpha.h:288
msgid "Use fp registers"
msgstr "fp yazmaçları kullanılır"
-#: config/alpha/alpha.h:283
+#: config/alpha/alpha.h:290
msgid "Do not use fp registers"
msgstr "fp yazmaçları kullanılmaz"
-#: config/alpha/alpha.h:284
+#: config/alpha/alpha.h:291
msgid "Do not assume GAS"
msgstr "GAS varsayılmaz"
-#: config/alpha/alpha.h:285
+#: config/alpha/alpha.h:292
msgid "Assume GAS"
msgstr "GAS varsayılır"
-#: config/alpha/alpha.h:287
+#: config/alpha/alpha.h:294
msgid "Request IEEE-conformant math library routines (OSF/1)"
msgstr "IEEE-uyumlu matematik kitaplığı yordamları istenir (OSF/1)"
-#: config/alpha/alpha.h:289
+#: config/alpha/alpha.h:296
msgid "Emit IEEE-conformant code, without inexact exceptions"
msgstr "Kesin olmayan istisnalar içermeden IEEE-uyumlu kod üretir"
-#: config/alpha/alpha.h:291
+#: config/alpha/alpha.h:298
msgid "Emit IEEE-conformant code, with inexact exceptions"
msgstr "Kesin olmayan istisnalar içeren IEEE-uyumlu kod üretir"
-#: config/alpha/alpha.h:293
+#: config/alpha/alpha.h:300
msgid "Do not emit complex integer constants to read-only memory"
msgstr "Salt-okunur belleğe karmaşık tamsayı sabitleri koymaz"
-#: config/alpha/alpha.h:294
+#: config/alpha/alpha.h:301
msgid "Use VAX fp"
msgstr "VAX fp kullanılır"
-#: config/alpha/alpha.h:295
+#: config/alpha/alpha.h:302
msgid "Do not use VAX fp"
msgstr "VAX fp kullanılmaz"
-#: config/alpha/alpha.h:296
+#: config/alpha/alpha.h:303
msgid "Emit code for the byte/word ISA extension"
msgstr "Bayt/word ISA genişlemesi için kod üretir"
-#: config/alpha/alpha.h:299
+#: config/alpha/alpha.h:306
msgid "Emit code for the motion video ISA extension"
msgstr "Video ISA genişlemesi için kod üretir"
-#: config/alpha/alpha.h:302
+#: config/alpha/alpha.h:309
msgid "Emit code for the fp move and sqrt ISA extension"
msgstr "fp move ve sqrt ISA genişlemesi için kod üretir"
-#: config/alpha/alpha.h:304
+#: config/alpha/alpha.h:311
msgid "Emit code for the counting ISA extension"
msgstr "Sayma ISA genişlemesi için kod üretir"
-#: config/alpha/alpha.h:307
+#: config/alpha/alpha.h:314
msgid "Emit code using explicit relocation directives"
msgstr "Kod doğrudan yer değiştirme yönergeleri kullanılarak üretilir"
-#: config/alpha/alpha.h:310
+#: config/alpha/alpha.h:317
msgid "Emit 16-bit relocations to the small data areas"
msgstr "Küçük veri alanlarına 16 bitlik yer değiştirmeler üretilir"
-#: config/alpha/alpha.h:312
+#: config/alpha/alpha.h:319
msgid "Emit 32-bit relocations to the small data areas"
msgstr "Küçük veri alanlarına 32 bitlik yer değiştirmeler üretilir"
-#: config/alpha/alpha.h:314
+#: config/alpha/alpha.h:321
+#, fuzzy
+msgid "Emit direct branches to local functions"
+msgstr "Alt düzey işlevlerde çerçeve göstericisi ihmal edilir"
+
+#: config/alpha/alpha.h:324
msgid "Emit rdval instead of rduniq for thread pointer"
msgstr "evre gösterici için rduniq yerine rdval üretir"
@@ -8853,292 +7974,315 @@ msgstr "evre gösterici için rduniq yerine rdval üretir"
#. For -mtrap-precision=[p|f|i]
#. For -mmemory-latency=
#. For -mtls-size=
-#: config/alpha/alpha.h:343
+#: config/alpha/alpha.h:353
msgid "Use features of and schedule given CPU"
msgstr "Belirtilen CPU'nun özelliklerini ve zamanlamasını kullanır"
-#: config/alpha/alpha.h:345
+#: config/alpha/alpha.h:355
msgid "Schedule given CPU"
msgstr "Belirtilen CPU'yu zamanlar"
-#: config/alpha/alpha.h:347
+#: config/alpha/alpha.h:357
msgid "Control the generated fp rounding mode"
msgstr "ÃœretilmiÅŸ kayan nokta yuvarlama kipi denetlenir"
-#: config/alpha/alpha.h:349
+#: config/alpha/alpha.h:359
msgid "Control the IEEE trap mode"
msgstr "IEEE yakalama kipi denetlenir"
-#: config/alpha/alpha.h:351
+#: config/alpha/alpha.h:361
msgid "Control the precision given to fp exceptions"
msgstr "Verilen kayan nokta olağandışılıklarının duyarlığı denetlenir"
-#: config/alpha/alpha.h:353
+#: config/alpha/alpha.h:363
msgid "Tune expected memory latency"
msgstr "Beklenen bellek gecikmesini ayarlar"
-#: config/alpha/alpha.h:355 config/ia64/ia64.h:225
+#: config/alpha/alpha.h:365 config/ia64/ia64.h:267 config/rs6000/sysv4.h:90
msgid "Specify bit size of immediate TLS offsets"
msgstr "Dolaysız TLS konumlarının bit genişliği belirtilir"
-#: config/arc/arc.c:135
+#: config/arc/arc.c:147
#, c-format
msgid "bad value (%s) for -mcpu switch"
msgstr "-mcpu seçeneği için değer (%s) hatalı"
-#: config/arc/arc.c:362
+#: config/arc/arc.c:369
#, c-format
msgid "argument of `%s' attribute is not a string constant"
msgstr "`%s' in argümanı bir sabit dizge değil"
-#: config/arc/arc.c:369
+#: config/arc/arc.c:376
#, c-format
msgid "argument of `%s' attribute is not \"ilink1\" or \"ilink2\""
msgstr "`%s' özniteliğinin argümanı \"ilink1\" ya da \"ilink2\" değildir"
-#: config/arc/arc.c:1708 config/m32r/m32r.c:2286
+#: config/arc/arc.c:1714 config/m32r/m32r.c:2325
#, c-format
msgid "invalid operand to %%R code"
msgstr "%%R kodu için terim geçersiz"
-#: config/arc/arc.c:1740 config/m32r/m32r.c:2309
+#: config/arc/arc.c:1746 config/m32r/m32r.c:2348
#, c-format
msgid "invalid operand to %%H/%%L code"
msgstr "%%H/%%L kodu için terim geçersiz"
-#: config/arc/arc.c:1763 config/m32r/m32r.c:2385
+#: config/arc/arc.c:1769 config/m32r/m32r.c:2419
#, c-format
msgid "invalid operand to %%U code"
msgstr "%%U kodu için terim geçersiz"
-#: config/arc/arc.c:1774
+#: config/arc/arc.c:1780
#, c-format
msgid "invalid operand to %%V code"
msgstr "%%V kodu için terim geçersiz"
#. Unknown flag.
-#: config/arc/arc.c:1781 config/m32r/m32r.c:2424 config/sparc/sparc.c:6533
+#. Undocumented flag.
+#: config/arc/arc.c:1787 config/m32r/m32r.c:2446 config/sparc/sparc.c:6985
msgid "invalid operand output code"
msgstr "çıkış kodu için geçersiz veri öğesi"
-#: config/arm/arm.c:458
+#: config/arm/arm.c:520
#, c-format
msgid "switch -mcpu=%s conflicts with -march= switch"
msgstr "switch -mcpu=%s ile -march= seçenekleri çelişiyor"
-#: config/arm/arm.c:468 config/rs6000/rs6000.c:558 config/sparc/sparc.c:393
+#: config/arm/arm.c:530 config/rs6000/rs6000.c:759 config/sparc/sparc.c:424
#, c-format
msgid "bad value (%s) for %s switch"
msgstr "%s seçeneği için değer (%s) hatalı"
-#: config/arm/arm.c:604
+#: config/arm/arm.c:672
msgid "target CPU does not support APCS-32"
msgstr "hedef CPU, APCS-32 desteklemiyor"
-#: config/arm/arm.c:609
+#: config/arm/arm.c:677
msgid "target CPU does not support APCS-26"
msgstr "hedef CPU, APCS-26 desteklemiyor"
-#: config/arm/arm.c:615
+#: config/arm/arm.c:683
msgid "target CPU does not support interworking"
msgstr "hedef MİB beraber çalışmayı desteklemiyor"
-#: config/arm/arm.c:621
+#: config/arm/arm.c:689
msgid "target CPU does not support THUMB instructions"
msgstr "hedef MİB THUMB komutlarını desteklemez."
-#: config/arm/arm.c:635
+#: config/arm/arm.c:703
msgid "enabling backtrace support is only meaningful when compiling for the Thumb"
msgstr "geri izleme desteğinin etkinleştirilmesi sadece Thumb komut seti için derleme yapılırken anlamlıdır"
-#: config/arm/arm.c:638
+#: config/arm/arm.c:706
msgid "enabling callee interworking support is only meaningful when compiling for the Thumb"
msgstr "çağrılan ile birlikte çalışma desteğinin etkinleştirilmesi sadece Thumb için derleme sırasına anlamlıdır"
-#: config/arm/arm.c:641
+#: config/arm/arm.c:709
msgid "enabling caller interworking support is only meaningful when compiling for the Thumb"
msgstr "çağrıcı ile birlikte çalışma desteğinin etkinleştirilmesi sadece Thumb için derleme sırasına anlamlıdır"
-#: config/arm/arm.c:647
+#: config/arm/arm.c:715
msgid "interworking forces APCS-32 to be used"
msgstr "beraber çalışma, APCS-32'nin kullanılmasını gerektirir"
-#: config/arm/arm.c:653
+#: config/arm/arm.c:721
msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
msgstr "-mapcs-stack-check ile -mno-apcs-frame uyumsuz"
-#: config/arm/arm.c:661
+#: config/arm/arm.c:729
msgid "-fpic and -mapcs-reent are incompatible"
msgstr "-fpic ve -mapcs-reent uyumsuz"
-#: config/arm/arm.c:664
+#: config/arm/arm.c:732
msgid "APCS reentrant code not supported. Ignored"
msgstr "APCS yeniden girişli kod desteklenmiyor. Yoksayıldı"
-#: config/arm/arm.c:672
+#: config/arm/arm.c:740
msgid "-g with -mno-apcs-frame may not give sensible debugging"
msgstr "-g ve -mno-apcs-frame beraberce anlamlı hata ayıklama bilgisi vermeyebilir"
-#: config/arm/arm.c:680
+#: config/arm/arm.c:748
msgid "passing floating point arguments in fp regs not yet supported"
msgstr "henüz desteklenmeyen fp yazmaçlarındaki kayan noktalı argümanların aktarılmasında"
-#: config/arm/arm.c:709
+#: config/arm/arm.c:792
#, c-format
msgid "invalid floating point emulation option: -mfpe-%s"
msgstr "Geçersiz gerçel değer öykünüm seçeneği: -mfpe-%s"
-#: config/arm/arm.c:733
+#: config/arm/arm.c:803
+msgid "-mfpe switch not supported by ep9312 target cpu - ignored."
+msgstr ""
+
+#: config/arm/arm.c:823
msgid "structure size boundary can only be set to 8 or 32"
msgstr "veri yapısı boyut sınırı sadece 8 ya da 32 ye ayarlanabilir"
-#: config/arm/arm.c:741
+#: config/arm/arm.c:831
msgid "-mpic-register= is useless without -fpic"
msgstr "-mpic-register=, -fpic olmaksızın kullanışsız"
-#: config/arm/arm.c:748
+#: config/arm/arm.c:838
#, c-format
msgid "unable to use '%s' for PIC register"
msgstr "PIC yazmacı için '%s' kullanılamıyor"
-#: config/arm/arm.c:2064 config/arm/arm.c:2087 config/avr/avr.c:4794
-#: config/c4x/c4x.c:4644 config/h8300/h8300.c:3667 config/i386/i386.c:1396
-#: config/i386/i386.c:1425 config/ip2k/ip2k.c:3224
-#: config/m68hc11/m68hc11.c:1267 config/mcore/mcore.c:3510
-#: config/ns32k/ns32k.c:1047 config/rs6000/rs6000.c:12538 config/sh/sh.c:5681
-#: config/sh/sh.c:5706 config/sh/sh.c:5745 config/stormy16/stormy16.c:2026
-#: config/v850/v850.c:2180
+#: config/arm/arm.c:2246 config/arm/arm.c:2264 config/avr/avr.c:4558
+#: config/c4x/c4x.c:4447 config/h8300/h8300.c:4257 config/i386/i386.c:1571
+#: config/i386/i386.c:1617 config/ip2k/ip2k.c:3169
+#: config/m68hc11/m68hc11.c:1227 config/m68k/m68k.c:333
+#: config/mcore/mcore.c:3375 config/ns32k/ns32k.c:1064
+#: config/rs6000/rs6000.c:14556 config/sh/sh.c:6737 config/sh/sh.c:6758
+#: config/sh/sh.c:6793 config/stormy16/stormy16.c:2073 config/v850/v850.c:2173
#, c-format
msgid "`%s' attribute only applies to functions"
msgstr "`%s' özniteliği sadece işlevlere uygulanır"
-#: config/arm/arm.c:9459
+#: config/arm/arm.c:10573
msgid "unable to compute real location of stacked parameter"
msgstr "yığındaki parametrenin gerçek konumu hesaplanamıyor"
-#: config/arm/arm.c:10138
+#. @@@ better error message
+#: config/arm/arm.c:11201 config/arm/arm.c:11238
+msgid "selector must be an immediate"
+msgstr "seçici bir şimdiki değer olmalı"
+
+#. @@@ better error message
+#: config/arm/arm.c:11281 config/i386/i386.c:14219 config/i386/i386.c:14253
+msgid "mask must be an immediate"
+msgstr "mask bir dolaysız değer olmalı"
+
+#: config/arm/arm.c:11976
msgid "no low registers available for popping high registers"
msgstr "yüksek yazmaçları emmek için alçak yazmaç bulunamadı"
-#: config/arm/arm.c:10389
+#: config/arm/arm.c:12226
msgid "interrupt Service Routines cannot be coded in Thumb mode"
msgstr "sistem kesmesi Servis Ä°ÅŸlemleri Thumb kipinde kodlanamaz"
-#: config/arm/pe.c:168 config/mcore/mcore.c:3358
-#, c-format
-msgid "initialized variable `%s' is marked dllimport"
+#: config/arm/pe.c:170 config/mcore/mcore.c:3241
+#, fuzzy
+msgid "%Jinitialized variable '%D' is marked dllimport"
msgstr "ilklendirilmiÅŸ deÄŸiÅŸken `%s' dllimport imli"
-#: config/arm/pe.c:177
-#, c-format
-msgid "static variable `%s' is marked dllimport"
+#: config/arm/pe.c:179
+#, fuzzy
+msgid "%Jstatic variable '%D' is marked dllimport"
msgstr "statik deÄŸiÅŸken `%s' dllimport imli"
-#: config/arm/arm.h:416
+#: config/arm/arm.h:450
msgid "Generate APCS conformant stack frames"
msgstr "APCS uyumlu yığıt çerçeveleri üretir"
-#: config/arm/arm.h:419
+#: config/arm/arm.h:453
msgid "Store function names in object code"
msgstr "İşlev isimleri nesne kodunda saklanır"
-#: config/arm/arm.h:423
+#: config/arm/arm.h:457
msgid "Use the 32-bit version of the APCS"
msgstr "APCS'nin 32 bitlik sürümü kullanılır"
-#: config/arm/arm.h:425
+#: config/arm/arm.h:459
msgid "Use the 26-bit version of the APCS"
msgstr "APCS'nin 26 bitlik sürümü kullanılır"
-#: config/arm/arm.h:429
+#: config/arm/arm.h:463
msgid "Pass FP arguments in FP registers"
msgstr "FP yazmaçlarındaki FP argümanları aktarılır"
-#: config/arm/arm.h:432
+#: config/arm/arm.h:466
msgid "Generate re-entrant, PIC code"
msgstr "Yeniden girişli PIC kodu üretir"
-#: config/arm/arm.h:435
+#: config/arm/arm.h:469
msgid "The MMU will trap on unaligned accesses"
msgstr "MMU, hizalanmamış erişimleri yakalar"
-#: config/arm/arm.h:442
+#: config/arm/arm.h:476
msgid "Use library calls to perform FP operations"
msgstr "Kayan nokta işlemlerini yapmada kitaplık çağrıları kullanılır"
-#: config/arm/arm.h:444 config/i960/i960.h:281
+#: config/arm/arm.h:478 config/i960/i960.h:291
msgid "Use hardware floating point instructions"
msgstr "Donanım kayan nokta komutları kullanılır"
-#: config/arm/arm.h:446
+#: config/arm/arm.h:480
msgid "Assume target CPU is configured as big endian"
msgstr "Hedef MİB büyük ilkli yapılandırmaya sahip kabul edilir"
-#: config/arm/arm.h:448
+#: config/arm/arm.h:482
msgid "Assume target CPU is configured as little endian"
msgstr "Hedef MİB küçük ilkli yapılandırmaya sahip kabul edilir"
-#: config/arm/arm.h:450
+#: config/arm/arm.h:484
msgid "Assume big endian bytes, little endian words"
msgstr "Büyük ilkli baytlar, küçük ilkli word'ler varsayılır"
-#: config/arm/arm.h:452
+#: config/arm/arm.h:486
msgid "Support calls between Thumb and ARM instruction sets"
msgstr "Thumb ve ARM komut setleri arasında çağrılar desteklenir"
-#: config/arm/arm.h:455
+#: config/arm/arm.h:489
msgid "Generate a call to abort if a noreturn function returns"
msgstr "Değer döndürmeyen işlev değer döndürürse çıkış için çağrı üretilir"
-#: config/arm/arm.h:458
+#: config/arm/arm.h:492
msgid "Do not move instructions into a function's prologue"
msgstr "Komutlar bir işlevin önbilgisine taşınmaz"
-#: config/arm/arm.h:461
+#: config/arm/arm.h:495
msgid "Do not load the PIC register in function prologues"
msgstr "İşlev önbilgisine PIC yazmacını yüklemez"
-#: config/arm/arm.h:464
+#: config/arm/arm.h:498
msgid "Generate call insns as indirect calls, if necessary"
msgstr "Gerekliyse, çağrı komutları dolaylı çağrılar olarak üretilir"
-#: config/arm/arm.h:467
+#: config/arm/arm.h:501
msgid "Compile for the Thumb not the ARM"
msgstr "Thumb için derler, ARM için değil"
-#: config/arm/arm.h:471
+#: config/arm/arm.h:505
msgid "Thumb: Generate (non-leaf) stack frames even if not needed"
msgstr "Thumb: Gerekmese dahi (yaprak olmayan) yığıt çerçeveleri üretir "
-#: config/arm/arm.h:474
+#: config/arm/arm.h:508
msgid "Thumb: Generate (leaf) stack frames even if not needed"
msgstr "Thumb: Gerekmese dahi (yaprak) yığıt çerçeveleri üretir"
-#: config/arm/arm.h:477
+#: config/arm/arm.h:511
msgid "Thumb: Assume non-static functions may be called from ARM code"
msgstr "Thumb: Statik olmayan işlevlerin ARM kodundan çağrılabileceğini varsayar"
-#: config/arm/arm.h:481
+#: config/arm/arm.h:515
msgid "Thumb: Assume function pointers may go to non-Thumb aware code"
msgstr "Thumb: İşlev göstericilerinin Thumb'dan habersiz kodu imleyebileceğini varsayar."
-#: config/arm/arm.h:491
+#: config/arm/arm.h:519
+msgid "Cirrus: Place NOPs to avoid invalid instruction combinations"
+msgstr ""
+
+#: config/arm/arm.h:521
+msgid "Cirrus: Do not break up invalid instruction combinations with NOPs"
+msgstr ""
+
+#: config/arm/arm.h:529
msgid "Specify the name of the target CPU"
msgstr "Hedef iÅŸlemcinin ismi belirtilir"
-#: config/arm/arm.h:493
+#: config/arm/arm.h:531
msgid "Specify the name of the target architecture"
msgstr "Hedef mimarinin ismi belirtilir"
-#: config/arm/arm.h:497
+#: config/arm/arm.h:535
msgid "Specify the version of the floating point emulator"
msgstr "Kayan nokta emülatörünün sürümü belirtilir"
-#: config/arm/arm.h:499
+#: config/arm/arm.h:537
msgid "Specify the minimum bit alignment of structures"
msgstr "Yapıların en küçük bit hizalaması belirtilir"
-#: config/arm/arm.h:501
+#: config/arm/arm.h:539
msgid "Specify the register to be used for PIC addressing"
msgstr "PIC adresleme için kullanılan yazmaç belirtilir"
@@ -9146,94 +8290,94 @@ msgstr "PIC adresleme için kullanılan yazmaç belirtilir"
msgid "Ignore dllimport attribute for functions"
msgstr "İşlevler için dllimport özelliği yoksayılır"
-#: config/avr/avr.c:528
+#: config/avr/avr.c:514
#, c-format
msgid "large frame pointer change (%d) with -mtiny-stack"
msgstr "-mtiny-stack ile büyük çerçeve göstericisi değişikliği (%d)"
-#: config/avr/avr.c:1135
+#: config/avr/avr.c:1101
msgid "bad address, not (reg+disp):"
msgstr "hatalı adres, (reg+disp) değil:"
-#: config/avr/avr.c:1143
+#: config/avr/avr.c:1109
msgid "internal compiler error. Bad address:"
msgstr "Derleyici iç hatası. Hatalı adres:"
-#: config/avr/avr.c:1156
+#: config/avr/avr.c:1122
msgid "internal compiler error. Unknown mode:"
msgstr "Derleyici iç hatası. Bilinmeyen kip:"
-#: config/avr/avr.c:1864 config/avr/avr.c:2576
+#: config/avr/avr.c:1744 config/avr/avr.c:2405
msgid "invalid insn:"
msgstr "geçersiz komut:"
-#: config/avr/avr.c:1901 config/avr/avr.c:1987 config/avr/avr.c:2036
-#: config/avr/avr.c:2045 config/avr/avr.c:2143 config/avr/avr.c:2315
-#: config/avr/avr.c:2613 config/avr/avr.c:2724
+#: config/avr/avr.c:1778 config/avr/avr.c:1861 config/avr/avr.c:1910
+#: config/avr/avr.c:1919 config/avr/avr.c:2014 config/avr/avr.c:2183
+#: config/avr/avr.c:2439 config/avr/avr.c:2547
msgid "incorrect insn:"
msgstr "yanlış komut:"
-#: config/avr/avr.c:2064 config/avr/avr.c:2228 config/avr/avr.c:2386
-#: config/avr/avr.c:2768
+#: config/avr/avr.c:1938 config/avr/avr.c:2099 config/avr/avr.c:2254
+#: config/avr/avr.c:2591
msgid "unknown move insn:"
msgstr "bilinmeyen taşıma komutu:"
-#: config/avr/avr.c:3003
+#: config/avr/avr.c:2814
msgid "bad shift insn:"
msgstr "hatalı kaydırma komutu:"
-#: config/avr/avr.c:3119 config/avr/avr.c:3549 config/avr/avr.c:3929
+#: config/avr/avr.c:2927 config/avr/avr.c:3348 config/avr/avr.c:3719
msgid "internal compiler error. Incorrect shift:"
msgstr "Derleyici iç hatası. Yanlış kaydırma:"
-#: config/avr/avr.c:4767 config/ip2k/ip2k.c:3197
+#: config/avr/avr.c:4532 config/ip2k/ip2k.c:3144
msgid "only initialized variables can be placed into program memory area"
msgstr "program bellek alanına sadece ilklendirilmiş değişkenler yerleştirilebilir"
-#: config/avr/avr.c:4866
+#: config/avr/avr.c:4626
msgid "only uninitialized variables can be placed in the .noinit section"
msgstr ".noinit alanına sadece ilklendirilmiş değişkenler yerleştirilebilir"
-#: config/avr/avr.c:4881
+#: config/avr/avr.c:4640
#, c-format
msgid "MCU `%s' supported for assembler only"
msgstr "MCU `%s' sadece sembolik çevirici için desteklenir"
-#: config/avr/avr.h:78
+#: config/avr/avr.h:73
msgid "Assume int to be 8 bit integer"
msgstr "int türün 8 bitlik tamsayı olduğu varsayılır"
-#: config/avr/avr.h:80
+#: config/avr/avr.h:75
msgid "Change the stack pointer without disabling interrupts"
msgstr "Yığıt göstericisi kesmeler etkisizleştirilmeden değiştirilir"
-#: config/avr/avr.h:82
+#: config/avr/avr.h:77
msgid "Use subroutines for function prologue/epilogue"
msgstr "İşlev önbilgisi/sonbilgisi için altyordamlar kullanır"
-#: config/avr/avr.h:84
+#: config/avr/avr.h:79
msgid "Change only the low 8 bits of the stack pointer"
msgstr "Yığıt göstericisinin düşük 8 biti değiştirilir"
-#: config/avr/avr.h:86
+#: config/avr/avr.h:81
msgid "Do not generate tablejump insns"
msgstr "Tablejump komutları üretilmez"
-#: config/avr/avr.h:88
+#: config/avr/avr.h:83
msgid "Use rjmp/rcall (limited range) on >8K devices"
msgstr ""
">8k aygıtlarda rjmp/rcall (sınırlı aralık)\n"
" kullanılır"
-#: config/avr/avr.h:91
+#: config/avr/avr.h:85
msgid "Output instruction sizes to the asm file"
msgstr "Komut boyutlarını asm dosyasına çıktılar"
-#: config/avr/avr.h:108
+#: config/avr/avr.h:102
msgid "Specify the initial stack address"
msgstr "İç yığın adresi belirtilir"
-#: config/avr/avr.h:109
+#: config/avr/avr.h:103
msgid "Specify the MCU name"
msgstr "MCU ismi belirtilir"
@@ -9245,140 +8389,135 @@ msgstr "MCU ismi belirtilir"
#. For instance, the SH target has only positive offsets in
#. addresses. Thus sorting to put the smallest address first allows
#. the most combinations to be found.
-#: config/avr/avr.h:2450
+#: config/avr/avr.h:2267
msgid "trampolines not supported"
msgstr "trampolines desteklenmiyor"
-#: config/c4x/c4x-c.c:69
+#: config/c4x/c4x-c.c:71
#, c-format
msgid "missing '(' after '#pragma %s' - ignored"
msgstr "'#pragma %s' den sonra '(' eksik - yoksayıldı"
-#: config/c4x/c4x-c.c:72
+#: config/c4x/c4x-c.c:74
#, c-format
msgid "missing function name in '#pragma %s' - ignored"
msgstr "'#pragma %s' içinde işlev ismi eksik - yoksayıldı"
-#: config/c4x/c4x-c.c:77
+#: config/c4x/c4x-c.c:79
#, c-format
msgid "malformed '#pragma %s' - ignored"
msgstr "'#pragma %s' bozuk - yoksayıldı"
-#: config/c4x/c4x-c.c:79
+#: config/c4x/c4x-c.c:81
#, c-format
msgid "missing section name in '#pragma %s' - ignored"
msgstr "'#pragma %s' içinde bölüm ismi eksik - yoksayıldı"
-#: config/c4x/c4x-c.c:84
+#: config/c4x/c4x-c.c:86
#, c-format
msgid "missing ')' for '#pragma %s' - ignored"
msgstr "'#pragma %s' için ')' eksik - yoksayıldı"
-#: config/c4x/c4x-c.c:87
+#: config/c4x/c4x-c.c:89
#, c-format
msgid "junk at end of '#pragma %s'"
msgstr "'#pragma %s' den sonrası karışık"
-#: config/c4x/c4x.c:280
+#: config/c4x/c4x.c:300
#, c-format
msgid "unknown CPU version %d, using 40.\n"
msgstr "MİB sürümü %d bilinmiyor, 40 kullanılıyor.\n"
-#: config/c4x/c4x.c:853
+#: config/c4x/c4x.c:850
#, c-format
msgid "ISR %s requires %d words of local vars, max is 32767"
msgstr "ISR %s yerel değişkenlerin %d sözcüğünü gerektiriyor, en çok 32767"
-#: config/c4x/c4x.c:1602
+#: config/c4x/c4x.c:1571
msgid "using CONST_DOUBLE for address"
msgstr "adres için CONST_DOUBLE kullanılıyor"
-#: config/c4x/c4x.c:1742
+#: config/c4x/c4x.c:1709
msgid "c4x_address_cost: Invalid addressing mode"
msgstr "c4x_address_cost: Adresleme kipi geçersiz"
-#: config/c4x/c4x.c:1884
+#: config/c4x/c4x.c:1844
#, c-format
msgid "c4x_print_operand: %%L inconsistency"
msgstr "c4x_print_operand: %%L uyumsuzluÄŸu"
-#: config/c4x/c4x.c:1890
+#: config/c4x/c4x.c:1850
#, c-format
msgid "c4x_print_operand: %%N inconsistency"
msgstr "c4x_print_operand: %%N uyumsuzluÄŸu"
-#: config/c4x/c4x.c:1931
+#: config/c4x/c4x.c:1891
#, c-format
msgid "c4x_print_operand: %%O inconsistency"
msgstr "c4x_print_operand: %%O uyumsuzluÄŸu"
-#: config/c4x/c4x.c:2026
+#: config/c4x/c4x.c:1986
msgid "c4x_print_operand: Bad operand case"
msgstr "c4x_print_operand: Hatalı terim case"
-#: config/c4x/c4x.c:2069
+#: config/c4x/c4x.c:2027
msgid "c4x_print_operand_address: Bad post_modify"
msgstr "c4x_print_operand_address: Hatalı post_modify"
-#: config/c4x/c4x.c:2091
+#: config/c4x/c4x.c:2049
msgid "c4x_print_operand_address: Bad pre_modify"
msgstr "c4x_print_operand_address: Hatalı pre_modify"
-#: config/c4x/c4x.c:2139 config/c4x/c4x.c:2151 config/c4x/c4x.c:2166
+#: config/c4x/c4x.c:2097 config/c4x/c4x.c:2109 config/c4x/c4x.c:2124
msgid "c4x_print_operand_address: Bad operand case"
msgstr "c4x_print_operand_address: Hatalı terim case"
-#: config/c4x/c4x.c:2422
+#: config/c4x/c4x.c:2375
msgid "c4x_rptb_insert: Cannot find start label"
msgstr "c4x_rptb_insert: başlangıç etiketi bulunamıyor"
-#: config/c4x/c4x.c:3409 config/c4x/c4x.c:3429
+#: config/c4x/c4x.c:3292 config/c4x/c4x.c:3310
msgid "mode not QImode"
msgstr "kip QImode deÄŸil"
-#: config/c4x/c4x.c:3514
+#: config/c4x/c4x.c:3380
msgid "invalid indirect memory address"
msgstr "geçersiz dolaylı bellek adresi"
-#: config/c4x/c4x.c:3603
+#: config/c4x/c4x.c:3469
msgid "invalid indirect (S) memory address"
msgstr "dolaylı (S) bellek adresi geçersiz"
-#: config/c4x/c4x.c:3944
+#: config/c4x/c4x.c:3797
msgid "c4x_valid_operands: Internal error"
msgstr "c4x_valid_operands: İç hata"
-#: config/c4x/c4x.c:4424
+#: config/c4x/c4x.c:4216
msgid "c4x_operand_subword: invalid mode"
msgstr "c4x_operand_subword: geçersiz kip"
-#: config/c4x/c4x.c:4427
+#: config/c4x/c4x.c:4219
msgid "c4x_operand_subword: invalid operand"
msgstr "c4x_operand_subword: geçersiz terim"
#. We could handle these with some difficulty.
#. e.g., *p-- => *(p-=2); *(p+1).
-#: config/c4x/c4x.c:4453
+#: config/c4x/c4x.c:4245
msgid "c4x_operand_subword: invalid autoincrement"
msgstr "c4x_operand_subword: otomatik arttırma geçersiz"
-#: config/c4x/c4x.c:4459
+#: config/c4x/c4x.c:4251
msgid "c4x_operand_subword: invalid address"
msgstr "c4x_operand_subword: geçersiz adres"
-#: config/c4x/c4x.c:4470
+#: config/c4x/c4x.c:4262
msgid "c4x_operand_subword: address not offsettable"
msgstr "c4x_operand_subword: adres konumlanabilir deÄŸil"
-#: config/c4x/c4x.c:4670
+#: config/c4x/c4x.c:4472
msgid "c4x_rptb_rpts_p: Repeat block top label moved\n"
msgstr "c4x_rptb_rpts_p: Tekar bloğu tepe etiketi taşındı\n"
-#. Name of the c4x assembler.
-#. Name of the c4x linker.
-#. Define assembler options.
-#. Define linker options.
-#. Specify the end file to link with.
#. Target compilation option flags.
#. Small memory model.
#. Use 24-bit MPYI for C3x.
@@ -9601,158 +8740,158 @@ msgstr "RPTS için maksimum yineleme sayısını belirtir"
msgid "Select CPU to generate code for"
msgstr "Kodu üretilecek MİB seçilir"
-#: config/cris/cris.c:599
+#: config/cris/cris.c:597
msgid "unexpected index-type in cris_print_index"
msgstr "cris_print_index içinde umulmayan indis türü"
-#: config/cris/cris.c:615
+#: config/cris/cris.c:611
msgid "unexpected base-type in cris_print_base"
msgstr "cris_print_base içinde beklenmeyen taban türü"
-#: config/cris/cris.c:908
+#: config/cris/cris.c:904
#, c-format
msgid "stackframe too big: %d bytes"
msgstr "yığın kapsamı çok büyük: %d bayt"
-#: config/cris/cris.c:1223
+#: config/cris/cris.c:1215
msgid "allocated but unused delay list in epilogue"
msgstr "gecikme listesi son bölümde ayrıldı ama kullanılmadı "
-#: config/cris/cris.c:1233
+#: config/cris/cris.c:1225
msgid "unexpected function type needing stack adjustment for __builtin_eh_return"
msgstr "__builtin_eh_return için yığın ayarı gerektiren işlev türü anlaşılamadı"
-#: config/cris/cris.c:1312
+#: config/cris/cris.c:1301
msgid "invalid operand for 'b' modifier"
msgstr "'b' değiştirici için terim geçersiz"
-#: config/cris/cris.c:1324
+#: config/cris/cris.c:1314
msgid "invalid operand for 'v' modifier"
msgstr "'v' değiştirici için terim geçersiz"
-#: config/cris/cris.c:1334
+#: config/cris/cris.c:1324
msgid "invalid operand for 'P' modifier"
msgstr "'P' değiştirici için terim geçersiz"
-#: config/cris/cris.c:1341
+#: config/cris/cris.c:1331
msgid "invalid operand for 'p' modifier"
msgstr "'p' değiştirici için terim geçersiz"
-#: config/cris/cris.c:1380
+#: config/cris/cris.c:1370
msgid "invalid operand for 'z' modifier"
msgstr "'z' değiştirici için terim geçersiz"
-#: config/cris/cris.c:1411 config/cris/cris.c:1441
+#: config/cris/cris.c:1401 config/cris/cris.c:1431
msgid "invalid operand for 'H' modifier"
msgstr "'H' değiştirici için terim geçersiz"
-#: config/cris/cris.c:1417
+#: config/cris/cris.c:1407
msgid "bad register"
msgstr "yazmaç kötü"
-#: config/cris/cris.c:1455
+#: config/cris/cris.c:1445
msgid "invalid operand for 'e' modifier"
msgstr "'e' değiştirici için terim geçersiz"
-#: config/cris/cris.c:1472
+#: config/cris/cris.c:1462
msgid "invalid operand for 'm' modifier"
msgstr "'m' değiştirici için terim geçersiz"
-#: config/cris/cris.c:1497
+#: config/cris/cris.c:1487
msgid "invalid operand for 'A' modifier"
msgstr "'A' değiştirici için terim geçersiz"
-#: config/cris/cris.c:1505
+#: config/cris/cris.c:1495
msgid "invalid operand for 'D' modifier"
msgstr "'D' değiştirici için terim geçersiz"
-#: config/cris/cris.c:1519
+#: config/cris/cris.c:1509
msgid "invalid operand for 'T' modifier"
msgstr "'T' değiştirici için terim geçersiz"
-#: config/cris/cris.c:1528
+#: config/cris/cris.c:1518
msgid "invalid operand modifier letter"
msgstr "terim değiştirici harfi geçersiz"
-#: config/cris/cris.c:1536
+#: config/cris/cris.c:1526
#, c-format
msgid "internal error: bad register: %d"
msgstr "iç hata: hatalı yazmaç: %d"
-#: config/cris/cris.c:1584
+#: config/cris/cris.c:1574
msgid "unexpected multiplicative operand"
msgstr "umulmayan çarpımsal terim"
-#: config/cris/cris.c:1604
+#: config/cris/cris.c:1594
msgid "unexpected operand"
msgstr "Beklenmeyen terim"
-#: config/cris/cris.c:1639 config/cris/cris.c:1649
+#: config/cris/cris.c:1627 config/cris/cris.c:1637
msgid "unrecognized address"
msgstr "bilinmeyen adres"
-#: config/cris/cris.c:2005
+#: config/cris/cris.c:1987
msgid "internal error: sideeffect-insn affecting main effect"
msgstr "iç hata: yan etkili komut main etkisi oluşturuyor"
#. If we get here, the caller got its initial tests wrong.
-#: config/cris/cris.c:2292
+#: config/cris/cris.c:2380
msgid "internal error: cris_side_effect_mode_ok with bad operands"
msgstr "iç hata: hatalı terimli cris_side_effect_mode_ok"
-#: config/cris/cris.c:2374 config/cris/cris.c:2432
+#: config/cris/cris.c:2457 config/cris/cris.c:2519
msgid "unrecognized supposed constant"
msgstr "tanınmayan tahmini sabit"
-#: config/cris/cris.c:2473
+#: config/cris/cris.c:2564
msgid "unrecognized supposed constant in cris_global_pic_symbol"
msgstr "cris_global_pic_symbol içinde tanınmayan tahmini sabit"
-#: config/cris/cris.c:2492
+#: config/cris/cris.c:2583
#, c-format
msgid "-max-stackframe=%d is not usable, not between 0 and %d"
msgstr "-max-stackframe=%d 0 ile %d arasında olmadığından kullanışsız"
-#: config/cris/cris.c:2520
+#: config/cris/cris.c:2611
#, c-format
msgid "unknown CRIS version specification in -march= or -mcpu= : %s"
msgstr "-march= veya -mcpu= seçenekleri ile belirtilen CRIS sürüm özelliği bilinmiyor: %s"
-#: config/cris/cris.c:2556
+#: config/cris/cris.c:2647
#, c-format
msgid "unknown CRIS cpu version specification in -mtune= : %s"
msgstr "-mtune= seçeneği ile belirtilen CRIS mib sürüm özelliği bilinmiyor: %s"
-#: config/cris/cris.c:2574
+#: config/cris/cris.c:2665
msgid "-fPIC and -fpic are not supported in this configuration"
msgstr "-fPIC ve -fpic bu yapılandırma ile desteklenmiyor"
-#: config/cris/cris.c:2590
+#: config/cris/cris.c:2681
msgid "that particular -g option is invalid with -maout and -melinux"
msgstr "tek başına -g seçeneği -maout ve -melinux ile geçersiz"
-#: config/cris/cris.c:2824 config/cris/cris.c:2869
+#: config/cris/cris.c:2936 config/cris/cris.c:2981
msgid "unexpected side-effects in address"
msgstr "adreste beklenmeyen yan etkiler"
#. Labels are never marked as global symbols.
-#: config/cris/cris.c:2966 config/cris/cris.c:2997
+#: config/cris/cris.c:3076 config/cris/cris.c:3107
msgid "unexpected PIC symbol"
msgstr "beklenmeyen PIC sembolü"
-#: config/cris/cris.c:2970
+#: config/cris/cris.c:3080
msgid "PIC register isn't set up"
msgstr "PIC yazmacı ayarlı değil"
-#: config/cris/cris.c:2983 config/cris/cris.c:3066
+#: config/cris/cris.c:3093 config/cris/cris.c:3176
msgid "unexpected address expression"
msgstr "beklenmeyen adres ifadesi"
-#: config/cris/cris.c:3001
+#: config/cris/cris.c:3111
msgid "emitting PIC operand, but PIC register isn't set up"
msgstr "PIC terimi üretiliyor ama PIC yazmacı ayarlı değil"
-#: config/cris/cris.c:3010
+#: config/cris/cris.c:3120
msgid "unexpected NOTE as addr_const:"
msgstr "addr_const olarak beklenmeyen NOT:"
@@ -9765,214 +8904,214 @@ msgid "For elinux, request a specified stack-size for this program"
msgstr "elinux için, bu programa belirli bir yığın boyutu isteniyor"
#. No "no-etrax" as it does not really imply any model. On the other hand, "etrax" implies the common (and large) subset matching all models.
-#: config/cris/cris.h:340
+#: config/cris/cris.h:334
msgid "Compile for ETRAX 4 (CRIS v3)"
msgstr "ETRAX 4 (CRIS v3) için derleme yapılır"
-#: config/cris/cris.h:345
+#: config/cris/cris.h:339
msgid "Compile for ETRAX 100 (CRIS v8)"
msgstr "ETRAX 100 (CRIS v8) için derleme yapılır"
-#: config/cris/cris.h:349
+#: config/cris/cris.h:343
msgid "Emit verbose debug information in assembly code"
msgstr "Çevirici kodunda ayrıntılı hata ayıklama bilgisi üretilir"
-#: config/cris/cris.h:352
+#: config/cris/cris.h:346
msgid "Do not use condition codes from normal instructions"
msgstr "Normal komutlardan koşul kodları kullanılmaz"
-#: config/cris/cris.h:356
+#: config/cris/cris.h:350
msgid "Do not emit addressing modes with side-effect assignment"
msgstr "Yan etki atamalı adresleme kipleri üretilmez"
-#: config/cris/cris.h:359
+#: config/cris/cris.h:353
msgid "Do not tune stack alignment"
msgstr "Yığın hiizalaması ayarlanmaz"
-#: config/cris/cris.h:362
+#: config/cris/cris.h:356
msgid "Do not tune writable data alignment"
msgstr "Yazılabilir veri hizalaması ayarlanmaz"
-#: config/cris/cris.h:365
+#: config/cris/cris.h:359
msgid "Do not tune code and read-only data alignment"
msgstr "Kod ve salt-okunur veri hizalaması ayarlanmaz"
-#: config/cris/cris.h:374
+#: config/cris/cris.h:368
msgid "Align code and data to 32 bits"
msgstr "Kod ve veri 32 bitlik hizalanır"
-#: config/cris/cris.h:387
+#: config/cris/cris.h:381
msgid "Don't align items in code or data"
msgstr "Kod ve verideki öğeler hizalanmaz"
-#: config/cris/cris.h:390
+#: config/cris/cris.h:384
msgid "Do not emit function prologue or epilogue"
msgstr "İşlev önsözü ya da sonsözü üretilmez"
#. We have to handle this m-option here since we can't wash it off in both CC1_SPEC and CC1PLUS_SPEC.
-#: config/cris/cris.h:394
+#: config/cris/cris.h:388
msgid "Use the most feature-enabling options allowed by other options"
msgstr "Diğer seçenekler tarafından izin verilen çoğu özellik-etkinleştirme seçeneği kullanılır"
#. We must call it "override-" since calling it "no-" will cause gcc.c to forget it, if there's a "later" -mbest-lib-options. Kludgy, but needed for some multilibbed files.
-#: config/cris/cris.h:400
+#: config/cris/cris.h:394
msgid "Override -mbest-lib-options"
msgstr "-mbest-lib-options reddedilir"
-#: config/cris/cris.h:432
+#: config/cris/cris.h:426
msgid "Generate code for the specified chip or CPU version"
msgstr "Verilen MİB sürümü ya da çip için kodu üretir"
-#: config/cris/cris.h:434
+#: config/cris/cris.h:428
msgid "Tune alignment for the specified chip or CPU version"
msgstr "Belirtilen çip veya mib için hizalama ayarlanır"
-#: config/cris/cris.h:436
+#: config/cris/cris.h:430
msgid "Warn when a stackframe is larger than the specified size"
msgstr "Bir yığın bağlamı belirli boyuttan büyük olduğunda uyarır"
#. Node: Profiling
-#: config/cris/cris.h:1022
+#: config/cris/cris.h:1016
msgid "no FUNCTION_PROFILER for CRIS"
msgstr "CRIS için FUNCTION_PROFILER yok"
-#: config/cris/linux.h:71
+#: config/cris/linux.h:69
msgid "Together with -fpic and -fPIC, do not use GOTPLT references"
msgstr "-fpic ve -fPIC ile birlikte GOTPLT başvurularını kullanmayın"
-#: config/d30v/d30v.c:207
+#: config/d30v/d30v.c:218
#, c-format
msgid "bad modes_tieable_p for register %s, mode1 %s, mode2 %s"
msgstr "yazmaç %s, kip1 %s, kip2 %s için modes_tieable_p hatalı"
-#: config/d30v/d30v.c:2666
+#: config/d30v/d30v.c:2678
msgid "bad insn to d30v_print_operand_address:"
msgstr "d30v_print_operand_address için hatalı komut:"
-#: config/d30v/d30v.c:2683 config/d30v/d30v.c:2744 config/d30v/d30v.c:2765
-#: config/d30v/d30v.c:2783
+#: config/d30v/d30v.c:2695 config/d30v/d30v.c:2756 config/d30v/d30v.c:2777
+#: config/d30v/d30v.c:2795
msgid "bad insn to d30v_print_operand_memory_reference:"
msgstr "d30v_print_operand_memory_reference için hatalı komut:"
-#: config/d30v/d30v.c:2851
+#: config/d30v/d30v.c:2863
msgid "bad insn to d30v_print_operand, 'f' modifier:"
msgstr "d30v_print_operand, 'f' değiştirici için hatalı komut:"
-#: config/d30v/d30v.c:2860
+#: config/d30v/d30v.c:2872
msgid "bad insn to d30v_print_operand, 'A' modifier:"
msgstr "d30v_print_operand, 'A' değiştirici için hatalı komut:"
-#: config/d30v/d30v.c:2867
+#: config/d30v/d30v.c:2879
msgid "bad insn to d30v_print_operand, 'M' modifier:"
msgstr "d30v_print_operand, 'M' değiştirici için hatalı komut:"
-#: config/d30v/d30v.c:2921
+#: config/d30v/d30v.c:2933
msgid "bad insn to print_operand, 'F' or 'T' modifier:"
msgstr "print_operand, 'F' ya da 'T' değiştirici için hatalı komut:"
-#: config/d30v/d30v.c:2932
+#: config/d30v/d30v.c:2944
msgid "bad insn to print_operand, 'B' modifier:"
msgstr "print_operand, 'B' değiştirici için hatalı komut:"
-#: config/d30v/d30v.c:2939
+#: config/d30v/d30v.c:2951
msgid "bad insn to print_operand, 'E' modifier:"
msgstr "print_operand, 'E' değiştirici için hatalı komut:"
-#: config/d30v/d30v.c:2957
+#: config/d30v/d30v.c:2969
msgid "bad insn to print_operand, 'R' modifier:"
msgstr "print_operand, 'R' değiştirici için hatalı komut:"
-#: config/d30v/d30v.c:2966 config/d30v/d30v.c:2974
+#: config/d30v/d30v.c:2978 config/d30v/d30v.c:2986
msgid "bad insn to print_operand, 's' modifier:"
msgstr "print_operand, 's' değiştirici için hatalı komut:"
-#: config/d30v/d30v.c:3003
+#: config/d30v/d30v.c:3015
msgid "bad insn in d30v_print_operand, 0 case"
msgstr "d30v_print_operand, 0 case içinde hatalı komut:"
-#: config/d30v/d30v.c:3301
+#: config/d30v/d30v.c:3313
msgid "d30v_emit_comparison"
msgstr "d30v_emit_comparison"
-#: config/d30v/d30v.c:3345
+#: config/d30v/d30v.c:3357
msgid "bad call to d30v_move_2words"
msgstr "d30v_move_2words çağrısı hatalı"
-#: config/d30v/d30v.h:114
+#: config/d30v/d30v.h:111
msgid "Enable use of conditional move instructions"
msgstr "Koşullu taşıma komutlarının kullanımı etkinleştirilir"
-#: config/d30v/d30v.h:117
+#: config/d30v/d30v.h:114
msgid "Disable use of conditional move instructions"
msgstr "Koşullu taşıma komutlarının kullanımı kapatılır"
-#: config/d30v/d30v.h:120
+#: config/d30v/d30v.h:117
msgid "Debug argument support in compiler"
msgstr "Derleyici argüman desteğinde hata ayıklar"
-#: config/d30v/d30v.h:123
+#: config/d30v/d30v.h:120
msgid "Debug stack support in compiler"
msgstr "Derleyici yığıt desteğinde hata ayıklar"
-#: config/d30v/d30v.h:126
+#: config/d30v/d30v.h:123
msgid "Debug memory address support in compiler"
msgstr "Derleyici bellek adresi desteğinde hata ayıklar"
-#: config/d30v/d30v.h:129
+#: config/d30v/d30v.h:126
msgid "Make adjacent short instructions parallel if possible"
msgstr ""
"Ardışık sıralı short komutlarını eğer mümkünse,\n"
" eşzamanlı işler"
-#: config/d30v/d30v.h:132
+#: config/d30v/d30v.h:129
msgid "Do not make adjacent short instructions parallel"
msgstr "Ardışık sıralı short komutlarını eşzamanlamaz"
-#: config/d30v/d30v.h:135 config/d30v/d30v.h:138
+#: config/d30v/d30v.h:132 config/d30v/d30v.h:135
msgid "Link programs/data to be in external memory by default"
msgstr "Öntanımlı olarak yazılım/verileri dış bellekte olacak şekilde bağlar"
-#: config/d30v/d30v.h:141
+#: config/d30v/d30v.h:138
msgid "Link programs/data to be in onchip memory by default"
msgstr "Öntanımlı olarak yazılım/verileri çip-içi bellekte olacak şekilde bağlar"
-#: config/d30v/d30v.h:149
+#: config/d30v/d30v.h:146
msgid "Change the branch costs within the compiler"
msgstr "Derleyicide dal maliyetlerini deÄŸiÅŸtirir"
-#: config/d30v/d30v.h:152
+#: config/d30v/d30v.h:149
msgid "Change the threshold for conversion to conditional execution"
msgstr "Koşullu çalışmaya geçiş için eşik değerini değiştirir"
-#: config/dsp16xx/dsp16xx.c:1446 config/dsp16xx/dsp16xx.c:1469
+#: config/dsp16xx/dsp16xx.c:1463 config/dsp16xx/dsp16xx.c:1486
msgid "stack size > 32k"
msgstr "Yığın uzunluğu > 32k"
-#: config/dsp16xx/dsp16xx.c:1678
+#: config/dsp16xx/dsp16xx.c:1695
msgid "invalid addressing mode"
msgstr "geçersiz adresleme kipi"
-#: config/dsp16xx/dsp16xx.c:1821
+#: config/dsp16xx/dsp16xx.c:1838
msgid "bad register extension code"
msgstr "hatalı yazmaç uzantı kodu"
-#: config/dsp16xx/dsp16xx.c:1921
+#: config/dsp16xx/dsp16xx.c:1938
msgid "invalid offset in ybase addressing"
msgstr "ybase adreslemedeki göreli konum geçersiz"
-#: config/dsp16xx/dsp16xx.c:1924
+#: config/dsp16xx/dsp16xx.c:1941
msgid "invalid register in ybase addressing"
msgstr "ybase adreslemedeki yazmaç geçersiz"
-#: config/dsp16xx/dsp16xx.c:2099
+#: config/dsp16xx/dsp16xx.c:2116
msgid "invalid shift operator in emit_1600_core_shift"
msgstr "emit_1600_core_shift içindeki kaydırma işleci geçersiz"
-#: config/dsp16xx/dsp16xx.c:2428
+#: config/dsp16xx/dsp16xx.c:2406
msgid "invalid mode for gen_tst_reg"
msgstr "gen_tst_reg için kip geçersiz"
-#: config/dsp16xx/dsp16xx.c:2500
+#: config/dsp16xx/dsp16xx.c:2478
msgid "invalid mode for integer comparison in gen_compare_reg"
msgstr "gen_compare_reg içindeki tamsayı karşılaştırması için kip geçersiz"
@@ -10067,58 +9206,62 @@ msgstr "dsp16xx çipi için alternatif isim belirtilir"
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/dsp16xx/dsp16xx.h:1218 config/dsp16xx/dsp16xx.h:1772
-#: config/dsp16xx/dsp16xx.h:1777
+#. This is how to output an insn to push a register on the stack.
+#. It need not be very fast code since it is used only for profiling
+#. This is how to output an insn to pop a register from the stack.
+#. It need not be very fast code since it is used only for profiling
+#: config/dsp16xx/dsp16xx.h:1216 config/dsp16xx/dsp16xx.h:1667
+#: config/dsp16xx/dsp16xx.h:1672
msgid "profiling not implemented yet"
msgstr "ayrımlama henüz programlanmadı."
#. Emit RTL insns to initialize the variable parts of a trampoline.
#. FNADDR is an RTX for the address of the function's pure code.
#. CXT is an RTX for the static chain value for the function.
-#: config/dsp16xx/dsp16xx.h:1228 config/dsp16xx/dsp16xx.h:1240
+#: config/dsp16xx/dsp16xx.h:1226 config/dsp16xx/dsp16xx.h:1238
msgid "trampolines not yet implemented"
msgstr "trampolines henüz programlanmadı"
-#: config/fr30/fr30.c:453
+#: config/fr30/fr30.c:451
msgid "fr30_print_operand_address: unhandled address"
msgstr "fr30_print_operand_address: bilinmeyen adres"
-#: config/fr30/fr30.c:480
+#: config/fr30/fr30.c:475
#, c-format
msgid "fr30_print_operand: unrecognized %%p code"
msgstr "fr30_print_operand: bilinmeyen %%p kodu"
-#: config/fr30/fr30.c:500
+#: config/fr30/fr30.c:495
#, c-format
msgid "fr30_print_operand: unrecognized %%b code"
msgstr "fr30_print_operand: bilinmeyen %%b kodu"
-#: config/fr30/fr30.c:521
+#: config/fr30/fr30.c:516
#, c-format
msgid "fr30_print_operand: unrecognized %%B code"
msgstr "fr30_print_operand: bilinmeyen %%B kodu"
-#: config/fr30/fr30.c:529
+#: config/fr30/fr30.c:524
#, c-format
msgid "fr30_print_operand: invalid operand to %%A code"
msgstr "fr30_print_operand: %%A koduna terim geçersiz"
-#: config/fr30/fr30.c:546
+#: config/fr30/fr30.c:541
#, c-format
msgid "fr30_print_operand: invalid %%x code"
msgstr "fr30_print_operand: %%x kodu geçersiz"
-#: config/fr30/fr30.c:553
+#: config/fr30/fr30.c:548
#, c-format
msgid "fr30_print_operand: invalid %%F code"
msgstr "fr30_print_operand: %%F kodu geçersiz"
-#: config/fr30/fr30.c:570
+#: config/fr30/fr30.c:565
msgid "fr30_print_operand: unknown code"
msgstr "fr30_print_operand: bilinmeyen kod"
-#: config/fr30/fr30.c:599 config/fr30/fr30.c:608 config/fr30/fr30.c:619
-#: config/fr30/fr30.c:632
+#: config/fr30/fr30.c:594 config/fr30/fr30.c:603 config/fr30/fr30.c:614
+#: config/fr30/fr30.c:627
msgid "fr30_print_operand: unhandled MEM"
msgstr "fr30_print_operand: bilinmeyen bellek"
@@ -10126,136 +9269,136 @@ msgstr "fr30_print_operand: bilinmeyen bellek"
msgid "Assume small address space"
msgstr "Küçük adres alanı varsayılır"
-#: config/frv/frv.c:410 config/frv/frv.c:428
+#: config/frv/frv.c:392 config/frv/frv.c:410
#, c-format
msgid "Unknown cpu: -mcpu=%s"
msgstr "Bilinmeyen iÅŸlemci: -mcpu=%s"
-#: config/frv/frv.c:451
+#: config/frv/frv.c:433
msgid "-fpic and -gdwarf are incompatible (-fpic and -g/-gdwarf-2 are fine)"
msgstr "-fpic ve -gdwarf uyumsuz (-fpic ve -g/-gdwarf-2 uyumlu)"
-#: config/frv/frv.c:2520
+#: config/frv/frv.c:2397
msgid "Bad insn to frv_print_operand_address:"
msgstr "frv_print_operand_address için hatalı komut:"
-#: config/frv/frv.c:2533
+#: config/frv/frv.c:2408
msgid "Bad register to frv_print_operand_memory_reference_reg:"
msgstr "frv_print_operand_memory_reference_reg için hatalı komut:"
-#: config/frv/frv.c:2574 config/frv/frv.c:2584 config/frv/frv.c:2593
-#: config/frv/frv.c:2621 config/frv/frv.c:2633 config/frv/frv.c:2637
+#: config/frv/frv.c:2446 config/frv/frv.c:2456 config/frv/frv.c:2465
+#: config/frv/frv.c:2493 config/frv/frv.c:2506 config/frv/frv.c:2510
msgid "Bad insn to frv_print_operand_memory_reference:"
msgstr "frv_print_operand_memory_reference için hatalı komut:"
-#: config/frv/frv.c:2779
+#: config/frv/frv.c:2648
msgid "Bad insn in frv_print_operand, bad const_double"
msgstr "frvv_print_operand içinde hatalı komut, const_double hatalı"
-#: config/frv/frv.c:2824
+#: config/frv/frv.c:2693
msgid "Bad insn to frv_print_operand, 'C' modifier:"
msgstr "frv_print_operand, 'C' değiştirici için hatalı komut:"
-#: config/frv/frv.c:2847
+#: config/frv/frv.c:2716
msgid "Bad insn to frv_print_operand, 'c' modifier:"
msgstr "frv_print_operand, 'c' değiştirici için hatalı komut:"
-#: config/frv/frv.c:2872
+#: config/frv/frv.c:2741
msgid "Bad insn to frv_print_operand, 'e' modifier:"
msgstr "frv_print_operand, 'e' değiştirici için hatalı komut:"
-#: config/frv/frv.c:2880
+#: config/frv/frv.c:2749
msgid "Bad insn to frv_print_operand, 'F' modifier:"
msgstr "frv_print_operand, 'F' değiştirici için hatalı komut:"
-#: config/frv/frv.c:2896
+#: config/frv/frv.c:2765
msgid "Bad insn to frv_print_operand, 'f' modifier:"
msgstr "frv_print_operand, 'f' değiştirici için hatalı komut:"
-#: config/frv/frv.c:2949
+#: config/frv/frv.c:2818
msgid "Bad insn to frv_print_operand, 'L' modifier:"
msgstr "frv_print_operand, 'L' değiştirici için hatalı komut:"
-#: config/frv/frv.c:2962
+#: config/frv/frv.c:2831
msgid "Bad insn to frv_print_operand, 'M/N' modifier:"
msgstr "frv_print_operand, 'M/N' değiştirici için hatalı komut:"
-#: config/frv/frv.c:2983
+#: config/frv/frv.c:2852
msgid "Bad insn to frv_print_operand, 'O' modifier:"
msgstr "frv_print_operand, 'O' değiştirici için hatalı komut:"
-#: config/frv/frv.c:3001
+#: config/frv/frv.c:2870
msgid "Bad insn to frv_print_operand, P modifier:"
msgstr "frv_print_operand, P değiştirici için hatalı komut:"
-#: config/frv/frv.c:3021
+#: config/frv/frv.c:2890
msgid "Bad insn in frv_print_operand, z case"
msgstr "frv_print_operand, z case içinde hatalı komut"
-#: config/frv/frv.c:3049
+#: config/frv/frv.c:2918
msgid "Bad insn in frv_print_operand, 0 case"
msgstr "frv_print_operand, 0 case içinde hatalı komut"
-#: config/frv/frv.c:3054
+#: config/frv/frv.c:2923
msgid "frv_print_operand: unknown code"
msgstr "frv_print_operand: bilinmeyen kod"
-#: config/frv/frv.c:5737
+#: config/frv/frv.c:5474
msgid "Bad output_move_single operand"
msgstr "output_move_single terimi hatalı"
-#: config/frv/frv.c:5866
+#: config/frv/frv.c:5601
msgid "Bad output_move_double operand"
msgstr "output_move_double terimi hatalı"
-#: config/frv/frv.c:6010
+#: config/frv/frv.c:5743
msgid "Bad output_condmove_single operand"
msgstr "output_condmove_single terimi hatalı"
-#: config/frv/frv.c:8315
+#: config/frv/frv.c:8031
msgid "frv_registers_update"
msgstr "frv_registers_update"
-#: config/frv/frv.c:8475
+#: config/frv/frv.c:8188
msgid "frv_registers_used_p"
msgstr "frv_registers_used_p"
-#: config/frv/frv.c:8604
+#: config/frv/frv.c:8314
msgid "frv_registers_set_p"
msgstr "frv_registers_set_p"
-#: config/frv/frv.c:9171
+#: config/frv/frv.c:8910
msgid "accumulator is not a constant integer"
msgstr "toplayıcı bir tamsayı sabit değil"
-#: config/frv/frv.c:9176
+#: config/frv/frv.c:8915
msgid "accumulator number is out of bounds"
msgstr "toplayıcı sayısı kapsamdışı"
-#: config/frv/frv.c:9187
+#: config/frv/frv.c:8926
#, c-format
msgid "inappropriate accumulator for `%s'"
msgstr "`%s' için ilgisiz toplayıcı"
-#: config/frv/frv.c:9253
+#: config/frv/frv.c:8986
#, c-format
msgid "`%s' expects a constant argument"
msgstr "`%s' bir tamsayı sabit argüman olarak beklenir"
-#: config/frv/frv.c:9258
+#: config/frv/frv.c:8991
#, c-format
msgid "constant argument out of range for `%s'"
msgstr "sabit argüman `%s' için kapsamdışı"
-#: config/frv/frv.c:9638
+#: config/frv/frv.c:9338
msgid "media functions are not available unless -mmedia is used"
msgstr "ortam işlevleri -mmedia kullanılmadıkça geçersizdir"
-#: config/frv/frv.c:9650
+#: config/frv/frv.c:9350
msgid "this media function is only available on the fr500"
msgstr "bu ortam işlevi sadece fr500 üzerinde kullanılabilir"
-#: config/frv/frv.c:9678
+#: config/frv/frv.c:9378
msgid "this media function is only available on the fr400"
msgstr "bu ortam işlevi sadece fr400 üzerinde kullanılabilir"
@@ -10268,15 +9411,16 @@ msgstr "bu ortam işlevi sadece fr400 üzerinde kullanılabilir"
#. #else
#. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)");
#. #endif
-#: config/frv/frv.h:512
+#: config/frv/frv.h:506
+#, c-format
msgid " (frv)"
msgstr " (frv)"
-#: config/h8300/h8300.c:314
+#: config/h8300/h8300.c:288
msgid "-ms2600 is used without -ms"
msgstr "-ms2600, -ms olmaksızın kullanılmış"
-#: config/h8300/h8300.c:320
+#: config/h8300/h8300.c:294
msgid "-mn is used without -mh or -ms"
msgstr "-mn, -mh veya -ms olmaksızın kullanılmış"
@@ -10285,75 +9429,75 @@ msgstr "-mn, -mh veya -ms olmaksızın kullanılmış"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/h8300/h8300.h:150
+#: config/h8300/h8300.h:145
msgid "Generate H8S code"
msgstr "H8S kodu üretilir"
-#: config/h8300/h8300.h:151
+#: config/h8300/h8300.h:146
msgid "Do not generate H8S code"
msgstr "H8S kodu üretilmez"
-#: config/h8300/h8300.h:152
+#: config/h8300/h8300.h:147
msgid "Generate H8S/2600 code"
msgstr "H8S/2600 kodu üretilir"
-#: config/h8300/h8300.h:153
+#: config/h8300/h8300.h:148
msgid "Do not generate H8S/2600 code"
msgstr "H8S/2600 kodu üretilmez"
-#: config/h8300/h8300.h:154
+#: config/h8300/h8300.h:149
msgid "Make integers 32 bits wide"
msgstr "Tamsayılar 32 bitlik yapılır"
-#: config/h8300/h8300.h:157
+#: config/h8300/h8300.h:152
msgid "Use registers for argument passing"
msgstr "Argüman aktarımı için yazmaçlar kullanılır"
-#: config/h8300/h8300.h:159
+#: config/h8300/h8300.h:154
msgid "Do not use registers for argument passing"
msgstr "Argüman aktarımı için yazmaçlar kullanılmaz"
-#: config/h8300/h8300.h:161
+#: config/h8300/h8300.h:156
msgid "Consider access to byte sized memory slow"
msgstr "Bayt bayt erişilen belleğin yavaş olduğu varsayılır"
-#: config/h8300/h8300.h:162
+#: config/h8300/h8300.h:157
msgid "Enable linker relaxing"
msgstr "Bağlayıcı gevşetmesi etkinleştirilir"
-#: config/h8300/h8300.h:164
+#: config/h8300/h8300.h:158
msgid "Generate H8/300H code"
msgstr "H8/300H kodu üretilir"
-#: config/h8300/h8300.h:165
+#: config/h8300/h8300.h:159
msgid "Enable the normal mode"
msgstr "Normal kip etkinleÅŸtirilir"
-#: config/h8300/h8300.h:166
+#: config/h8300/h8300.h:160
msgid "Do not generate H8/300H code"
msgstr "H8/300H kodu üretilmez"
-#: config/h8300/h8300.h:167
+#: config/h8300/h8300.h:161
msgid "Use H8/300 alignment rules"
msgstr "H8/300 hizalama kuralları kullanılır"
-#: config/i370/i370-c.c:53
+#: config/i370/i370-c.c:55
msgid "junk at end of #pragma map"
msgstr "'#pragma map' sonunda karışıklık"
-#: config/i370/i370-c.c:59
+#: config/i370/i370-c.c:61
msgid "malformed #pragma map, ignored"
msgstr "'#pragma map' bozuk, yoksayıldı"
-#: config/i370/i370.c:915
+#: config/i370/i370.c:784
msgid "real name is too long - alias ignored"
msgstr "gerçek isim çok uzun - takma ad yoksayıldı"
-#: config/i370/i370.c:920
+#: config/i370/i370.c:789
msgid "alias name is too long - alias ignored"
msgstr "takma ad çok uzun - takma ad yoksayıldı"
-#: config/i370/i370.c:1191
+#: config/i370/i370.c:1060
msgid "internal error--no jump follows compare:"
msgstr "iç hata -- karşılaştırmayı izleyen bir jump yok:"
@@ -10369,425 +9513,496 @@ msgstr "char komutları üretilir"
msgid "Do not generate char instructions"
msgstr "char komutları üretilmez"
-#: config/i386/i386.c:1050
+#: config/i386/i386.c:1161
#, c-format
msgid "code model %s not supported in PIC mode"
msgstr "PIC kipinde %s kod modeli desteklenmiyor"
-#: config/i386/i386.c:1060 config/sparc/sparc.c:356
+#: config/i386/i386.c:1171 config/sparc/sparc.c:387
#, c-format
msgid "bad value (%s) for -mcmodel= switch"
msgstr "-mcmodel= seçeneğinin değeri (%s) hatalı"
-#: config/i386/i386.c:1075
+#: config/i386/i386.c:1186
#, c-format
msgid "bad value (%s) for -masm= switch"
msgstr "-masm= seçeneğinin değeri (%s) hatalı"
-#: config/i386/i386.c:1078
+#: config/i386/i386.c:1189
#, c-format
msgid "code model `%s' not supported in the %s bit mode"
msgstr "%2$s bit kipinde `%1$s' kod modeli desteklenmiyor"
-#: config/i386/i386.c:1081
+#: config/i386/i386.c:1192
msgid "code model `large' not supported yet"
msgstr "'büyük' kod modeli henüz desteklenmiyor"
-#: config/i386/i386.c:1083
+#: config/i386/i386.c:1194
#, c-format
msgid "%i-bit mode not compiled in"
msgstr "%i bitlik kip bunun içinde derlenmiş değil:"
-#: config/i386/i386.c:1113
+#: config/i386/i386.c:1221 config/i386/i386.c:1233
+#, fuzzy
+msgid "CPU you selected does not support x86-64 instruction set"
+msgstr "hedef MİB THUMB komutlarını desteklemez."
+
+#: config/i386/i386.c:1226 config/iq2000/iq2000.c:1840
#, c-format
msgid "bad value (%s) for -march= switch"
msgstr "-march= seçeneğinin değeri (%s) hatalı"
-#: config/i386/i386.c:1124
+#: config/i386/i386.c:1239
#, c-format
-msgid "bad value (%s) for -mcpu= switch"
-msgstr "-mcpu= seçeneğinin değeri (%s) hatalı"
+msgid "bad value (%s) for -mtune= switch"
+msgstr "-mtune= seçeneğinin değeri (%s) hatalı"
-#: config/i386/i386.c:1141
+#: config/i386/i386.c:1256
#, c-format
msgid "-mregparm=%d is not between 0 and %d"
msgstr "-mregparm=%d 0 ile %d arasında değil"
-#: config/i386/i386.c:1154
+#: config/i386/i386.c:1269
msgid "-malign-loops is obsolete, use -falign-loops"
msgstr "-malign-loops artık kullanılmıyor yerine -falign-loops kullanın"
-#: config/i386/i386.c:1159 config/i386/i386.c:1172 config/i386/i386.c:1185
+#: config/i386/i386.c:1274 config/i386/i386.c:1287 config/i386/i386.c:1300
#, c-format
msgid "-malign-loops=%d is not between 0 and %d"
msgstr "-malign-loops=%d 0 ile %d arasında değil"
-#: config/i386/i386.c:1167
+#: config/i386/i386.c:1282
msgid "-malign-jumps is obsolete, use -falign-jumps"
msgstr "-malign-jumps eskidir, yerine -falign-jumps kullanın"
-#: config/i386/i386.c:1180
+#: config/i386/i386.c:1295
msgid "-malign-functions is obsolete, use -falign-functions"
msgstr "-malign-functions artık kullanılmıyor, yerine -falign-functions kullanın"
-#: config/i386/i386.c:1218
+#: config/i386/i386.c:1333
#, c-format
msgid "-mpreferred-stack-boundary=%d is not between %d and 12"
msgstr "-mpreferred-stack-boundary=%d %d ile 12 arasında değil"
-#: config/i386/i386.c:1230
+#: config/i386/i386.c:1345
#, c-format
msgid "-mbranch-cost=%d is not between 0 and 5"
msgstr "-mbranch-cost=%d 0 ile 5 arasında değil"
-#: config/i386/i386.c:1242
+#: config/i386/i386.c:1357
#, c-format
msgid "bad value (%s) for -mtls-dialect= switch"
msgstr "-mtls-dialect= seçeneğinin değeri (%s) hatalı"
-#: config/i386/i386.c:1263
+#: config/i386/i386.c:1386
msgid "-malign-double makes no sense in the 64bit mode"
msgstr "-malign-double 64bitlik kipte iÅŸ yapmaz"
-#: config/i386/i386.c:1265
+#: config/i386/i386.c:1388
msgid "-mrtd calling convention not supported in the 64bit mode"
msgstr "64bitlik kipte -mrtd çağrı uzlaşımı desteklenmiyor"
-#: config/i386/i386.c:1281 config/i386/i386.c:1292
+#: config/i386/i386.c:1410 config/i386/i386.c:1421
msgid "SSE instruction set disabled, using 387 arithmetics"
msgstr "SSE komut kümesi iptal edildi, 387 aritmetiği kullanılıyor"
-#: config/i386/i386.c:1297
+#: config/i386/i386.c:1426
msgid "387 instruction set disabled, using SSE arithmetics"
msgstr "387 komut kümesi iptal edildi, SSE aritmetiği kullanılıyor"
-#: config/i386/i386.c:1304
+#: config/i386/i386.c:1433
#, c-format
msgid "bad value (%s) for -mfpmath= switch"
msgstr "-mfpmath= seçeneğinin değeri (%s) hatalı"
-#: config/i386/i386.c:1436
+#: config/i386/i386.c:1581 config/i386/i386.c:1592
+#, fuzzy
+msgid "fastcall and stdcall attributes are not compatible"
+msgstr "shared ve mdll uyumsuz"
+
+#: config/i386/i386.c:1585 config/i386/i386.c:1641
+#, fuzzy
+msgid "fastcall and regparm attributes are not compatible"
+msgstr "`trap' ve `far' nitelikleri uyumlu değil, `far' yoksayılıyor"
+
+#: config/i386/i386.c:1628
#, c-format
msgid "`%s' attribute requires an integer constant argument"
msgstr "`%s' özniteliği bir tamsayı sabit argüman gerektirir"
-#: config/i386/i386.c:1442
+#: config/i386/i386.c:1634
#, c-format
msgid "argument to `%s' attribute larger than %d"
msgstr "`%s' özniteliğine argüman %d den büyük"
-#: config/i386/i386.c:2504
+#: config/i386/i386.c:2593
+#, fuzzy
+msgid "SSE vector argument without SSE enabled changes the ABI"
+msgstr "SSE vektörü, SSE, ABI değişikliklerini etkinleştirmeden dönüyor"
+
+#: config/i386/i386.c:2609
+#, fuzzy
+msgid "MMX vector argument without MMX enabled changes the ABI"
+msgstr "SSE vektörü, SSE, ABI değişikliklerini etkinleştirmeden dönüyor"
+
+#: config/i386/i386.c:2837
msgid "SSE vector return without SSE enabled changes the ABI"
msgstr "SSE vektörü, SSE, ABI değişikliklerini etkinleştirmeden dönüyor"
-#: config/i386/i386.c:6386
+#: config/i386/i386.c:6811
msgid "invalid UNSPEC as operand"
msgstr "veri öğesi olarak UNSPEC geçersiz"
-#: config/i386/i386.c:6648
+#: config/i386/i386.c:7069
msgid "extended registers have no high halves"
msgstr "ek yazmaçların yüksek yarıları yok"
-#: config/i386/i386.c:6663
+#: config/i386/i386.c:7084
msgid "unsupported operand size for extended register"
msgstr "ek yazmaç için desteklenmeyen terim boyutu"
-#: config/i386/i386.c:6978
+#: config/i386/i386.c:7399
msgid "operand is neither a constant nor a condition code, invalid operand code 'c'"
msgstr "terim ne bir sabit ne de bir koşul kodu, geçersiz terim kodu 'c'"
-#: config/i386/i386.c:7024
+#: config/i386/i386.c:7445
#, c-format
msgid "invalid operand code `%c'"
msgstr "terim kodu `%c' geçersiz"
-#: config/i386/i386.c:7071
+#: config/i386/i386.c:7488
msgid "invalid constraints for operand"
msgstr "kısıtlar terim için geçersiz"
-#: config/i386/i386.c:11271
+#: config/i386/i386.c:11889
msgid "unknown insn mode"
msgstr "bilinmeyen komut kipi"
-#. @@@ better error message
-#: config/i386/i386.c:13391 config/i386/i386.c:13427
-msgid "selector must be an immediate"
-msgstr "seçici bir şimdiki değer olmalı"
+#: config/i386/i386.c:14021 config/i386/i386.c:14057
+#, fuzzy, c-format
+msgid "selector must be an integer constant in the range 0..%i"
+msgstr "POS içindeki uzunluk bir tamsayı sabit olmalı"
-#. @@@ better error message
-#: config/i386/i386.c:13588 config/i386/i386.c:13622
-msgid "mask must be an immediate"
-msgstr "mask bir dolaysız değer olmalı"
-
-#: config/i386/i386.c:13654
+#: config/i386/i386.c:14285
msgid "shift must be an immediate"
msgstr "shift bir dolaysız değer olmalı"
-#: config/i386/winnt.c:96
-#, c-format
-msgid "function `%s' definition is marked dllimport."
-msgstr "%s işlevi tanımı dllimport imli."
+#: config/i386/i386.c:15308
+#, fuzzy, c-format
+msgid "`%s' incompatible attribute ignored"
+msgstr "`%s' özelliği yoksayıldı"
#: config/i386/winnt.c:104
-#, c-format
-msgid "variable `%s' definition is marked dllimport."
+#, fuzzy
+msgid "%Jfunction `%D' definition is marked dllimport."
+msgstr "%s işlevi tanımı dllimport imli."
+
+#: config/i386/winnt.c:112
+#, fuzzy
+msgid "%Jvariable `%D' definition is marked dllimport."
msgstr "`%s' değişkeninin tanımı dllimport imli."
-#: config/i386/winnt.c:123
-#, c-format
-msgid "external linkage required for symbol '%s' because of '%s' attribute."
+#: config/i386/winnt.c:132
+#, fuzzy
+msgid "%Jexternal linkage required for symbol '%D' because of '%s' attribute."
msgstr "'%2$s' özniteliğinden dolayı '%1$s' sembolü için dış ilintileme gerekli."
-#: config/i386/winnt.c:143
+#: config/i386/winnt.c:149
#, c-format
msgid "`%s' attribute only applies to variables"
msgstr "`%s' özniteliği sadece değişkenlere uygulanır"
-#: config/i386/winnt.c:242
-#, c-format
-msgid "function '%s' is defined after prior declaration as dllimport: attribute ignored."
+#: config/i386/winnt.c:247
+#, fuzzy
+msgid "%Jfunction '%D' is defined after prior declaration as dllimport: attribute ignored"
msgstr "'%s' işlevi önceki bildiriminden sonra dllimport olarak tanımlanmış: öznitelik yoksayıldı."
-#: config/i386/winnt.c:252
-#, c-format
-msgid "inline function '%s' is declared as dllimport: attribute ignored."
+#: config/i386/winnt.c:258
+#, fuzzy
+msgid "%Jinline function '%D' is declared as dllimport: attribute ignored."
msgstr "`%s' satıriçi işlevi dllimport olarak bildirilmiş: öznitelik yoksayıldı."
-#: config/i386/winnt.c:263
-#, c-format
-msgid "definition of static data member '%s' of dllimport'd class."
+#: config/i386/winnt.c:270
+#, fuzzy
+msgid "%Jdefinition of static data member '%D' of dllimport'd class."
msgstr "dllimport'lu sınıfın '%s' durağan veri üyesinin tanımı."
-#: config/i386/winnt.c:322
-#, c-format
-msgid "inconsistent dll linkage for '%s': dllexport assumed."
+#: config/i386/winnt.c:329
+#, fuzzy
+msgid "%Jinconsistent dll linkage for '%D', dllexport assumed."
msgstr "'%s' için uyumsuz dll ilintilemesi: dllexport kabul edildi."
-#: config/i386/winnt.c:364
+#: config/i386/winnt.c:371
#, c-format
msgid "`%s' declared as both exported to and imported from a DLL"
msgstr "`%s' hem bir DLL'den alınan hem de bir DLL'e aktarılan olarak bildirilmiş"
-#: config/i386/winnt.c:373
-#, c-format
-msgid "failure in redeclaration of '%s': dllimport'd symbol lacks external linkage."
+#: config/i386/winnt.c:380
+#, fuzzy
+msgid "%Jfailure in redeclaration of '%D': dllimport'd symbol lacks external linkage."
msgstr "'%s' için yeniden bildirim başarısız: dllimport'lu sembol dış ilintilemesiz."
-#: config/i386/winnt.c:479
-#, c-format
-msgid "'%s' %s after being referenced with dllimport linkage."
+#: config/i386/winnt.c:529
+#, fuzzy
+msgid "%J'%D' defined locally after being referenced with dllimport linkage"
+msgstr "dllimport ilintileme ile iliÅŸkilendirildikten sonra '%s' %s."
+
+#: config/i386/winnt.c:532
+#, fuzzy
+msgid "%J'%D' redeclared without dllimport attribute after being referenced with dllimport linkage"
msgstr "dllimport ilintileme ile iliÅŸkilendirildikten sonra '%s' %s."
-#: config/i386/cygwin.h:45
+#: config/i386/winnt.c:701
+#, fuzzy
+msgid "%J'%D' causes a section type conflict"
+msgstr "%s bir bölüm türü çelişkiye sebep oluyor"
+
+#: config/i386/cygming.h:40
msgid "Use the Cygwin interface"
msgstr "Cygwin arayüzü kullanılır"
-#: config/i386/cygwin.h:46
+#: config/i386/cygming.h:41
msgid "Use the Mingw32 interface"
msgstr "Mingw32 arayüzü kullanılır"
-#: config/i386/cygwin.h:47
+#: config/i386/cygming.h:42
msgid "Create GUI application"
msgstr "GKA uygulaması oluşturur"
-#: config/i386/cygwin.h:48
+#: config/i386/cygming.h:43
msgid "Don't set Windows defines"
msgstr "Windows atamaları ayarlanmaz"
-#: config/i386/cygwin.h:49
+#: config/i386/cygming.h:44
msgid "Set Windows defines"
msgstr "Windows atamaları ayarlanır"
-#: config/i386/cygwin.h:50
+#: config/i386/cygming.h:45
msgid "Create console application"
msgstr "Konsol uygulaması oluşturulur"
-#: config/i386/cygwin.h:51 config/i386/win32.h:59
+#: config/i386/cygming.h:46
msgid "Generate code for a DLL"
msgstr "Bir DLL için kod üretilir"
-#: config/i386/cygwin.h:53 config/i386/win32.h:61
+#: config/i386/cygming.h:48
msgid "Ignore dllimport for functions"
msgstr "İşlevler için dllimport yoksayılır"
-#: config/i386/cygwin.h:55
+#: config/i386/cygming.h:50
msgid "Use Mingw-specific thread support"
msgstr "Mingw'e özgü evre desteğini etkinleştirir"
-#: config/i386/cygwin.h:245
+#: config/i386/cygming.h:169
#, c-format
msgid "-f%s ignored for target (all code is position independent)"
msgstr "-f%s hedef için yoksayıldı (bütün kod yerden bağımsız)"
-#: config/i386/djgpp.h:206
+#: config/i386/djgpp.h:191
msgid "-mbnu210 is ignored (option is obsolete)"
msgstr "-mbnu210 yoksayıldı (seçenek artık kullanılmıyor)"
+#: config/i386/i386-interix.h:256
+#, fuzzy
+msgid "ms-bitfields not supported for objc"
+msgstr "-f%s desteklenmiyor: yoksayıldı"
+
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
#. Deprecated.
-#: config/i386/i386.h:306
+#: config/i386/i386.h:339
msgid "Alternate calling convention"
msgstr "Almaşık çağrı uzlaşımı"
-#: config/i386/i386.h:308 config/m68k/m68k.h:180 config/ns32k/ns32k.h:144
+#: config/i386/i386.h:341 config/m68k/m68k.h:344 config/ns32k/ns32k.h:144
msgid "Use normal calling convention"
msgstr "Normal çağrı uzlaşımı kullanılır"
-#: config/i386/i386.h:310
+#: config/i386/i386.h:343
msgid "Align some doubles on dword boundary"
msgstr "double'lar dword sınırlarına hizalanır"
-#: config/i386/i386.h:312
+#: config/i386/i386.h:345
msgid "Align doubles on word boundary"
msgstr "double'lar word sınırlarına hizalanır"
-#: config/i386/i386.h:314
+#: config/i386/i386.h:347
msgid "Uninitialized locals in .bss"
msgstr ".bss içinde ilklendirilmemiş yerel değerler"
-#: config/i386/i386.h:316
+#: config/i386/i386.h:349
msgid "Uninitialized locals in .data"
msgstr ".data içinde ilklendirilmemiş yerel değerler"
-#: config/i386/i386.h:318 config/m68k/linux-aout.h:45 config/m68k/linux.h:50
-#: config/ns32k/ns32k.h:167
+#: config/i386/i386.h:351 config/m68k/linux.h:35 config/ns32k/ns32k.h:167
msgid "Use IEEE math for fp comparisons"
msgstr ""
"fp karşılaştırmaları için IEEE aritmetiği\n"
" kullanılır"
-#: config/i386/i386.h:320 config/ns32k/ns32k.h:169
+#: config/i386/i386.h:353 config/ns32k/ns32k.h:169
msgid "Do not use IEEE math for fp comparisons"
msgstr ""
"fp karşılaştırmaları için IEEE aritmetiği\n"
" kullanılmaz"
-#: config/i386/i386.h:322
+#: config/i386/i386.h:355
msgid "Return values of functions in FPU registers"
msgstr ""
"FPU yazmaçlarındaki işlevlerin değerleriyle\n"
" sonuçlanır"
-#: config/i386/i386.h:324
+#: config/i386/i386.h:357
msgid "Do not return values of functions in FPU registers"
msgstr ""
"FPU yazmaçlarındaki işlevlerin değerleriyle\n"
" sonuçlanmaz"
-#: config/i386/i386.h:326
+#: config/i386/i386.h:359
msgid "Do not generate sin, cos, sqrt for FPU"
msgstr "FPU için sin, cos, sqrt üretilmez"
-#: config/i386/i386.h:328
+#: config/i386/i386.h:361
msgid "Generate sin, cos, sqrt for FPU"
msgstr "FPU için sin, cos, sqrt üretilir"
-#: config/i386/i386.h:330
+#: config/i386/i386.h:363
msgid "Omit the frame pointer in leaf functions"
msgstr "Alt düzey işlevlerde çerçeve göstericisi ihmal edilir"
-#: config/i386/i386.h:333
+#: config/i386/i386.h:366
msgid "Enable stack probing"
msgstr "Yığın sondalamayı etkinleştirir"
#. undocumented
#. undocumented
-#: config/i386/i386.h:338
+#: config/i386/i386.h:371
msgid "Align destination of the string operations"
msgstr "Dizge işlemleri hedefi hizalanır"
-#: config/i386/i386.h:340
+#: config/i386/i386.h:373
msgid "Do not align destination of the string operations"
msgstr "Dizge iÅŸlemleri hedefi hizalanmaz"
-#: config/i386/i386.h:342
+#: config/i386/i386.h:375
msgid "Inline all known string operations"
msgstr "Bilinen tüm dizge işlemleri özümlenir"
-#: config/i386/i386.h:344
+#: config/i386/i386.h:377
msgid "Do not inline all known string operations"
msgstr "Bilinen hiçbir dizge işlemi özümlenmez"
-#: config/i386/i386.h:346 config/i386/i386.h:350
+#: config/i386/i386.h:379 config/i386/i386.h:383
msgid "Use push instructions to save outgoing arguments"
msgstr ""
"Çıkan argümanları kaydedecek basma komutları \n"
" kullanılır"
-#: config/i386/i386.h:348 config/i386/i386.h:352
+#: config/i386/i386.h:381 config/i386/i386.h:385
msgid "Do not use push instructions to save outgoing arguments"
msgstr ""
"Çıkan argümanları kaydedecek basma komutları \n"
" kullanılmaz"
-#: config/i386/i386.h:354
+#: config/i386/i386.h:387
msgid "Support MMX built-in functions"
msgstr "MMX yerleÅŸik iÅŸlevleri desteklenir"
-#: config/i386/i386.h:356
+#: config/i386/i386.h:389
msgid "Do not support MMX built-in functions"
msgstr "MMX yerleÅŸik iÅŸlevleri desteklenmez"
-#: config/i386/i386.h:358
+#: config/i386/i386.h:391
msgid "Support 3DNow! built-in functions"
msgstr "3DNow! yerleÅŸik iÅŸlevleri desteklenir"
-#: config/i386/i386.h:360
+#: config/i386/i386.h:393
msgid "Do not support 3DNow! built-in functions"
msgstr "3DNow! yerleÅŸik iÅŸlevleri desteklenmez"
-#: config/i386/i386.h:362
+#: config/i386/i386.h:395
msgid "Support MMX and SSE built-in functions and code generation"
msgstr ""
"MMX ve SSE2 yerleşik işlevleri ve kod üretimi\n"
" desteklenir"
-#: config/i386/i386.h:364
+#: config/i386/i386.h:397
msgid "Do not support MMX and SSE built-in functions and code generation"
msgstr ""
"MMX ve SSE2 yerleşik işlevleri ve kod üretimi\n"
" desteklenmez"
-#: config/i386/i386.h:366
+#: config/i386/i386.h:399
msgid "Support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
"MMX, SSE ve SSE2 yerleşik işlevleri ve kod üretimi\n"
" desteklenir"
-#: config/i386/i386.h:368
+#: config/i386/i386.h:401
msgid "Do not support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
"MMX, SSE ve SSE2 yerleşik işlevleri ve kod üretimi\n"
" desteklenmez"
-#: config/i386/i386.h:370
+#: config/i386/i386.h:403
+#, fuzzy
+msgid "Support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr ""
+"MMX, SSE ve SSE2 yerleşik işlevleri ve kod üretimi\n"
+" desteklenir"
+
+#: config/i386/i386.h:405
+#, fuzzy
+msgid "Do not support MMX, SSE, SSE2 and PNI built-in functions and code generation"
+msgstr ""
+"MMX, SSE ve SSE2 yerleşik işlevleri ve kod üretimi\n"
+" desteklenmez"
+
+#: config/i386/i386.h:407
msgid "sizeof(long double) is 16"
msgstr "sizeof(long double) -> 16"
-#: config/i386/i386.h:372
+#: config/i386/i386.h:409
msgid "sizeof(long double) is 12"
msgstr "sizeof(long double) -> 12"
-#: config/i386/i386.h:374
+#: config/i386/i386.h:411
msgid "Generate 64bit x86-64 code"
msgstr "64bit x86-64 kodu üretilir"
-#: config/i386/i386.h:376
+#: config/i386/i386.h:413
msgid "Generate 32bit i386 code"
msgstr "32bit i386 kodu üretilir"
-#: config/i386/i386.h:378
+#: config/i386/i386.h:415
+msgid "Use native (MS) bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:417
+msgid "Use gcc default bitfield layout"
+msgstr ""
+
+#: config/i386/i386.h:419
msgid "Use red-zone in the x86-64 code"
msgstr "x86-64 kodda red-zone kullanılır"
-#: config/i386/i386.h:380
+#: config/i386/i386.h:421
msgid "Do not use red-zone in the x86-64 code"
msgstr "x86-64 kodda red-zone kullanılmaz"
+#: config/i386/i386.h:423
+#, c-format
+msgid "Use direct references against %gs when accessing tls data"
+msgstr ""
+
+#: config/i386/i386.h:425
+#, c-format
+msgid "Do not use direct references against %gs when accessing tls data"
+msgstr ""
+
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10797,27 +10012,28 @@ msgstr "x86-64 kodda red-zone kullanılmaz"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:409 config/rs6000/rs6000.h:393 config/sparc/sparc.h:635
+#: config/i386/i386.h:459 config/ia64/ia64.h:269 config/rs6000/rs6000.h:437
+#: config/s390/s390.h:146 config/sparc/sparc.h:650
msgid "Schedule code for given CPU"
msgstr "Verilen MİB için kodu zamanlar"
-#: config/i386/i386.h:411
+#: config/i386/i386.h:461
msgid "Generate floating point mathematics using given instruction set"
msgstr ""
"Belirtilen komut kümesini kullanan kayan nokta\n"
" aritmetiği üretilir"
-#: config/i386/i386.h:413
+#: config/i386/i386.h:463 config/s390/s390.h:148
msgid "Generate code for given CPU"
msgstr "Verilen MİB için kodu üretir"
-#: config/i386/i386.h:415
+#: config/i386/i386.h:465
msgid "Number of registers used to pass integer arguments"
msgstr ""
"Tamsayı argümanları aktarmada kullanılan\n"
" yazmaçların sayısı"
-#. TARGET_DEFAULT is defined in sun*.h and isi.h, etc.
+#. TARGET_DEFAULT is defined in m68k-none.h, netbsd.h, etc.
#. This macro is similar to `TARGET_SWITCHES' but defines names of
#. command options that have values. Its definition is an
#. initializer with a subgrouping for each command option.
@@ -10827,97 +10043,98 @@ msgstr ""
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/i386/i386.h:417 config/m68k/m68k.h:263
+#: config/i386/i386.h:467 config/m68k/m68k.h:360
msgid "Loop code aligned to this power of 2"
msgstr "Çevrim kodu bunun 2. kuvvetine ayarlandı"
-#: config/i386/i386.h:419 config/m68k/m68k.h:265
+#: config/i386/i386.h:469 config/m68k/m68k.h:362
msgid "Jump targets are aligned to this power of 2"
msgstr "Sıçrama hedefleri bunun 2.kuvvetine ayarlandı"
-#: config/i386/i386.h:421 config/m68k/m68k.h:267
+#: config/i386/i386.h:471 config/m68k/m68k.h:364
msgid "Function starts are aligned to this power of 2"
msgstr "İşlev başlangıçları bunun 2.kuvvetine ayarlandı"
-#: config/i386/i386.h:424
+#: config/i386/i386.h:474
msgid "Attempt to keep stack aligned to this power of 2"
msgstr "Bunun 2.kuvvetine ayarlanmış yığını tutmaya çalışır"
-#: config/i386/i386.h:426
+#: config/i386/i386.h:476
msgid "Branches are this expensive (1-5, arbitrary units)"
msgstr "Dallanmaların bedeli (1-5, keyfi birimler)"
-#: config/i386/i386.h:428
+#: config/i386/i386.h:478
msgid "Use given x86-64 code model"
msgstr "Verilen x86-64 kod modeli kullanılır"
#. Undocumented.
#. Undocumented.
-#: config/i386/i386.h:434
+#: config/i386/i386.h:484
msgid "Use given assembler dialect"
msgstr "Verilen çevirici aksanı kullanılır"
-#: config/i386/i386.h:436
+#: config/i386/i386.h:486
msgid "Use given thread-local storage dialect"
msgstr "Verilen yerel evreli saklama aksanı kullanılır"
-#: config/i386/sco5.h:297
+#: config/i386/sco5.h:292
msgid "Generate ELF output"
msgstr "ELF çıktı üretilir"
-#: config/i386/win32.h:53
-msgid "Use Mingw32 interface"
-msgstr "Mingw32 arayüzü kullanılır"
-
-#: config/i386/win32.h:55
-msgid "Use Cygwin interface"
-msgstr "Cygwin arayüzü kullanılır"
-
-#: config/i386/win32.h:57
-msgid "Use bare Windows interface"
-msgstr "Yalın Windows arayüzü kullanılır"
-
#. If the environment variable DJDIR is not defined, then DJGPP is not installed correctly and GCC will quickly become confused with the default prefix settings. Report the problem now so the user doesn't receive deceptive "file not found" error messages later.
#. DJDIR is automatically defined by the DJGPP environment config file pointed to by the environment variable DJGPP. Examine DJGPP to try and figure out what's wrong.
-#: config/i386/xm-djgpp.h:71
+#: config/i386/xm-djgpp.h:64
msgid "environment variable DJGPP not defined"
msgstr "ortam değişkeni DJGPP atanmamış"
-#: config/i386/xm-djgpp.h:73
+#: config/i386/xm-djgpp.h:66
#, c-format
msgid "environment variable DJGPP points to missing file '%s'"
msgstr "ortam değişkeni DJGPP olmayan '%s' dosyasını gösteriyor"
-#: config/i386/xm-djgpp.h:76
+#: config/i386/xm-djgpp.h:69
#, c-format
msgid "environment variable DJGPP points to corrupt file '%s'"
msgstr "ortam değişkeni DJGPP bozuk '%s' dosyasını gösteriyor"
-#: config/i960/i960-c.c:66
+#. Macro to define tables used to set the flags.
+#. This is a list in braces of pairs in braces,
+#. each pair being { "NAME", VALUE }
+#. where VALUE is the bits to set or minus the bits to clear.
+#. An empty string NAME is used to identify the default VALUE.
+#: config/i860/i860.h:60
+msgid "Generate code which uses the FPU"
+msgstr "Aritmetik işlemci kullanan kod üretilir"
+
+#: config/i860/i860.h:61 config/i860/i860.h:62
+msgid "Do not generate code which uses the FPU"
+msgstr "Aritmetik işlemci kullanan kod üretilmez"
+
+#: config/i960/i960-c.c:68
msgid "sorry, not implemented: #pragma align NAME=SIZE"
msgstr "Daha yazılmadı: #pragma İSİM=BOYUT hizalaması"
-#: config/i960/i960-c.c:71
+#: config/i960/i960-c.c:73
msgid "malformed #pragma align - ignored"
msgstr "'#pragma align' bozuk - yoksayıldı"
-#: config/i960/i960-c.c:109
+#: config/i960/i960-c.c:111
msgid "sorry, not implemented: #pragma noalign NAME"
msgstr "Daha yazılmadı: #pragma noalign İSİM"
-#: config/i960/i960.c:121 config/i960/i960.c:131
+#: config/i960/i960.c:134 config/i960/i960.c:144
msgid "conflicting architectures defined - using C series"
msgstr "çelişkili mimariler atanmış - C serisi kullanılıyor"
-#: config/i960/i960.c:126
+#: config/i960/i960.c:139
msgid "conflicting architectures defined - using K series"
msgstr "çelişkili mimariler atanmış - K serisi kullanılıyor"
-#: config/i960/i960.c:141
+#: config/i960/i960.c:154
msgid "iC2.0 and iC3.0 are incompatible - using iC3.0"
msgstr "iC2.0 ve iC3.0 uyumsuz - iC3.0 kullanılıyor"
-#: config/i960/i960.c:1448 config/m68k/m68k.c:559 config/rs6000/rs6000.c:9976
+#: config/i960/i960.c:1456 config/m68k/m68k.c:588 config/rs6000/rs6000.c:11296
msgid "stack limit expression is not supported"
msgstr "yığın sınırlama ifadesi desteklenmiyor"
@@ -10928,393 +10145,545 @@ msgstr "yığın sınırlama ifadesi desteklenmiyor"
#. An empty string NAME is used to identify the default VALUE.
#. ??? Not all ten of these architecture variations actually exist, but I
#. am not sure which are real and which aren't.
-#: config/i960/i960.h:240
+#: config/i960/i960.h:250
msgid "Generate SA code"
msgstr "SA kodu üretilir"
-#: config/i960/i960.h:243
+#: config/i960/i960.h:253
msgid "Generate SB code"
msgstr "SB kodu üretilir"
#. {"sc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate SC code")},
-#: config/i960/i960.h:248
+#: config/i960/i960.h:258
msgid "Generate KA code"
msgstr "KA kodu üretilir"
-#: config/i960/i960.h:251
+#: config/i960/i960.h:261
msgid "Generate KB code"
msgstr "KB kodu üretilir"
#. {"kc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_MC|TARGET_FLAG_COMPLEX_ADDR), N_("Generate KC code")},
-#: config/i960/i960.h:256
+#: config/i960/i960.h:266
msgid "Generate JA code"
msgstr " \bJA kodu üretilir"
-#: config/i960/i960.h:258
+#: config/i960/i960.h:268
msgid "Generate JD code"
msgstr "JD kodu üretilir"
-#: config/i960/i960.h:261
+#: config/i960/i960.h:271
msgid "Generate JF code"
msgstr "JF kodu üretilir"
-#: config/i960/i960.h:263
+#: config/i960/i960.h:273
msgid "generate RP code"
msgstr "RP kodu üretilir"
-#: config/i960/i960.h:266
+#: config/i960/i960.h:276
msgid "Generate MC code"
msgstr "MC kodu üretilir"
-#: config/i960/i960.h:269
+#: config/i960/i960.h:279
msgid "Generate CA code"
msgstr "\bCA kodu üretilir"
#. {"cb", (TARGET_FLAG_NUMERICS|TARGET_FLAG_C_SERIES| TARGET_FLAG_BRANCH_PREDICT|TARGET_FLAG_CODE_ALIGN), N_("Generate CB code")}, {"cc", (TARGET_FLAG_NUMERICS|TARGET_FLAG_PROTECTED| TARGET_FLAG_C_SERIES|TARGET_FLAG_BRANCH_PREDICT| TARGET_FLAG_CODE_ALIGN), N_("Generate CC code")},
-#: config/i960/i960.h:279
+#: config/i960/i960.h:289
msgid "Generate CF code"
msgstr "CF kodu üretilir"
-#: config/i960/i960.h:283 config/mips/mips.h:568 config/pa/pa.h:266
+#: config/i960/i960.h:293 config/mips/mips.h:539 config/pa/pa.h:266
msgid "Use software floating point"
msgstr "Yazılım kayan nokta kodu kullanılır"
-#: config/i960/i960.h:285
+#: config/i960/i960.h:295
msgid "Use alternate leaf function entries"
msgstr "Alternatif alt düzey işlev girdileri kullanılır"
-#: config/i960/i960.h:287
+#: config/i960/i960.h:297
msgid "Do not use alternate leaf function entries"
msgstr "Alternatif alt düzey işlev girdileri kullanılmaz"
-#: config/i960/i960.h:289
+#: config/i960/i960.h:299
msgid "Perform tail call optimization"
msgstr "Kuyruk çağrı eniyilemesi uygulanır"
-#: config/i960/i960.h:291
+#: config/i960/i960.h:301
msgid "Do not perform tail call optimization"
msgstr "Kuyruk çağrı eniyilemesi uygulanmaz"
-#: config/i960/i960.h:293
+#: config/i960/i960.h:303
msgid "Use complex addressing modes"
msgstr "Karmaşık adresleme kipleri kullanılır"
-#: config/i960/i960.h:295
+#: config/i960/i960.h:305
msgid "Do not use complex addressing modes"
msgstr "Karmaşık adresleme kipleri kullanılmaz"
-#: config/i960/i960.h:297
+#: config/i960/i960.h:307
msgid "Align code to 8 byte boundary"
msgstr "Kodu 8 baytlık sınıra hizalar"
-#: config/i960/i960.h:299
+#: config/i960/i960.h:309
msgid "Do not align code to 8 byte boundary"
msgstr "Kodu 8 baytlık sınıra hizalamaz"
#. {"clean-linkage", (TARGET_FLAG_CLEAN_LINKAGE), N_("Force use of prototypes")}, {"no-clean-linkage", -(TARGET_FLAG_CLEAN_LINKAGE), N_("Do not force use of prototypes")},
-#: config/i960/i960.h:305 config/i960/i960.h:307
+#: config/i960/i960.h:315 config/i960/i960.h:317
msgid "Enable compatibility with iC960 v2.0"
msgstr "iC960 v2.0 uyumluluÄŸu etkinleÅŸtirilir"
-#: config/i960/i960.h:309
+#: config/i960/i960.h:319
msgid "Enable compatibility with iC960 v3.0"
msgstr "iC960 v3.0 uyumluluÄŸu etkinleÅŸtirilir"
-#: config/i960/i960.h:311 config/i960/i960.h:313
+#: config/i960/i960.h:321 config/i960/i960.h:323
msgid "Enable compatibility with ic960 assembler"
msgstr "iC960 çevirici uyumluluğu etkinleştirilir"
-#: config/i960/i960.h:315
+#: config/i960/i960.h:325
msgid "Do not permit unaligned accesses"
msgstr "Hizalanmamış erişime izin verilmez"
-#: config/i960/i960.h:317
+#: config/i960/i960.h:327
msgid "Permit unaligned accesses"
msgstr "Hizalanmamış erişime izin verilir"
-#: config/i960/i960.h:319
+#: config/i960/i960.h:329
msgid "Layout types like Intel's v1.3 gcc"
msgstr "Türler Intel's v1.3 gcc gibi yerleştirilir"
-#: config/i960/i960.h:321
+#: config/i960/i960.h:331
msgid "Do not layout types like Intel's v1.3 gcc"
msgstr "Türler Intel's v1.3 gcc gibi yerleştirilmez"
-#: config/i960/i960.h:323 config/sparc/freebsd.h:80 config/sparc/linux.h:86
-#: config/sparc/linux64.h:88 config/sparc/netbsd-elf.h:238
+#: config/i960/i960.h:333 config/sparc/freebsd.h:76 config/sparc/linux.h:91
+#: config/sparc/linux64.h:103 config/sparc/netbsd-elf.h:215
msgid "Use 64 bit long doubles"
msgstr "64 bit long double'lar kullanılır"
-#: config/i960/i960.h:325
+#: config/i960/i960.h:335
msgid "Enable linker relaxation"
msgstr "Bağlayıcı gevşemesini etkinleştirir"
-#: config/i960/i960.h:327
+#: config/i960/i960.h:337
msgid "Do not enable linker relaxation"
msgstr "Bağlayıcı gevşemesini etkinleştirir"
-#: config/ia64/ia64-c.c:51
+#: config/ia64/ia64-c.c:52
msgid "malformed #pragma builtin"
msgstr "'#pragma builtin' bozuk"
-#: config/ia64/ia64.c:4015
+#: config/ia64/ia64.c:1021 config/m32r/m32r.c:354
+#, c-format
+msgid "invalid argument of `%s' attribute"
+msgstr "`%s' özniteliğinin argümanı geçersiz"
+
+#: config/ia64/ia64.c:1033
+#, fuzzy
+msgid "%Jan address area attribute cannot be specified for local variables"
+msgstr "bir veri alanı özelliği yerel değişkenler için belirtilemez"
+
+#: config/ia64/ia64.c:1040
+#, fuzzy
+msgid "%Jaddress area of '%s' conflicts with previous declaration"
+msgstr "'%s' veri alanı önceki bildirimle çelişiyor"
+
+#: config/ia64/ia64.c:1047
+#, fuzzy
+msgid "%Jaddress area attribute cannot be specified for functions"
+msgstr "bir veri alanı özelliği yerel değişkenler için belirtilemez"
+
+#: config/ia64/ia64.c:4288
msgid "ia64_print_operand: unknown code"
msgstr "ia64_print_operand: bilinmeyen kod"
-#: config/ia64/ia64.c:4292
+#: config/ia64/ia64.c:4628
msgid "value of -mfixed-range must have form REG1-REG2"
msgstr "-mfixed-range için değer YAZMAÇ1-YAZMAÇ2 şeklinde olmalı"
-#: config/ia64/ia64.c:4319
+#: config/ia64/ia64.c:4655
#, c-format
msgid "%s-%s is an empty range"
msgstr "%s-%s aralığı boş"
-#: config/ia64/ia64.c:4350
+#: config/ia64/ia64.c:4703
msgid "cannot optimize floating point division for both latency and throughput"
msgstr "Kayan noktalı bölme hem iş geçişi hem de gecikme için eniyilenemez"
-#: config/ia64/ia64.c:4356
+#: config/ia64/ia64.c:4709
msgid "cannot optimize integer division for both latency and throughput"
msgstr "tamsayı bölme hem iş geçişi hem de gecikme için eniyilenemez"
-#: config/ia64/ia64.c:4368
+#: config/ia64/ia64.c:4715
+#, fuzzy
+msgid "cannot optimize square root for both latency and throughput"
+msgstr "tamsayı bölme hem iş geçişi hem de gecikme için eniyilenemez"
+
+#: config/ia64/ia64.c:4721
+msgid "not yet implemented: latency-optimized inline square root"
+msgstr ""
+
+#: config/ia64/ia64.c:4733
#, c-format
msgid "bad value (%s) for -mtls-size= switch"
msgstr "-mtls-size= seçeneğinin değeri (%s) hatalı"
+#: config/ia64/ia64.c:4749
+#, fuzzy, c-format
+msgid "bad value (%s) for -tune= switch"
+msgstr "-mtune= seçeneğinin değeri (%s) hatalı"
+
#. This macro defines names of command options to set and clear bits in
#. `target_flags'. Its definition is an initializer with a subgrouping for
#. each command option.
-#: config/ia64/ia64.h:154
+#: config/ia64/ia64.h:172
msgid "Generate big endian code"
msgstr "Büyük ilkli kod üretilir"
-#: config/ia64/ia64.h:156 config/mcore/mcore.h:159
+#: config/ia64/ia64.h:174 config/mcore/mcore.h:154
msgid "Generate little endian code"
msgstr "Küçük ilkli kod üretilir"
-#: config/ia64/ia64.h:158
+#: config/ia64/ia64.h:176
msgid "Generate code for GNU as"
msgstr "Kod GNU as için üretilir"
-#: config/ia64/ia64.h:160
+#: config/ia64/ia64.h:178
msgid "Generate code for Intel as"
msgstr "Kod Intel as için üretilir"
-#: config/ia64/ia64.h:162
+#: config/ia64/ia64.h:180
msgid "Generate code for GNU ld"
msgstr "Kod GNU ld için üretilir"
-#: config/ia64/ia64.h:164
+#: config/ia64/ia64.h:182
msgid "Generate code for Intel ld"
msgstr "Kod Intel ld için üretilir"
-#: config/ia64/ia64.h:166
+#: config/ia64/ia64.h:184
msgid "Generate code without GP reg"
msgstr "GP yazmaçsız kod üretilir"
-#: config/ia64/ia64.h:168
+#: config/ia64/ia64.h:186
msgid "Emit stop bits before and after volatile extended asms"
msgstr "Değişken uzatılmış asmlerden önce ve sonra durma bitleri üretir"
-#: config/ia64/ia64.h:170
+#: config/ia64/ia64.h:188
msgid "Don't emit stop bits before and after volatile extended asms"
msgstr "Değişken uzatılmış asmlerden önce ve sonra durma bitleri üretir"
-#: config/ia64/ia64.h:172
+#: config/ia64/ia64.h:190
msgid "Emit code for Itanium (TM) processor B step"
msgstr "Itanium (TM) işlemcisi B adımı için kod üretir"
-#: config/ia64/ia64.h:174
+#: config/ia64/ia64.h:192
msgid "Use in/loc/out register names"
msgstr "in/loc/out yazmaç isimleri kullanılır"
-#: config/ia64/ia64.h:176
+#: config/ia64/ia64.h:194
msgid "Disable use of sdata/scommon/sbss"
msgstr "sdata/scommon/sbss kullanımı iptal edilir"
-#: config/ia64/ia64.h:178
+#: config/ia64/ia64.h:196
msgid "Enable use of sdata/scommon/sbss"
msgstr "sdata/scommon/sbss kullanımı etkinleştirilir"
-#: config/ia64/ia64.h:180
+#: config/ia64/ia64.h:198
msgid "gp is constant (but save/restore gp on indirect calls)"
msgstr "gp sabittir (ancak dolaylı çağrılarda gp kaydedilmesi/alınması yapılır)"
-#: config/ia64/ia64.h:182
+#: config/ia64/ia64.h:200
msgid "Generate self-relocatable code"
msgstr "Kendiliğinden konum değiştirebilen kod üretilir"
-#: config/ia64/ia64.h:184
+#: config/ia64/ia64.h:202
msgid "Generate inline floating point division, optimize for latency"
msgstr "Satıriçi kayan noktalı bölme üretir, geciktirme için eniyilenir"
-#: config/ia64/ia64.h:186
+#: config/ia64/ia64.h:204
msgid "Generate inline floating point division, optimize for throughput"
msgstr "Satıriçi kayan noktalı bölme üretir, iş geçişi için eniyilenir"
-#: config/ia64/ia64.h:188
+#: config/ia64/ia64.h:206
msgid "Generate inline integer division, optimize for latency"
msgstr "Satıriçi tamsayı bölme üretir, geciktirme için eniyilenir"
-#: config/ia64/ia64.h:190
+#: config/ia64/ia64.h:208
msgid "Generate inline integer division, optimize for throughput"
msgstr "Satıriçi tamsayı bölme üretir, iş geçişi için eniyilenir"
-#: config/ia64/ia64.h:192
+#: config/ia64/ia64.h:210
+#, fuzzy
+msgid "Generate inline square root, optimize for latency"
+msgstr "Satıriçi tamsayı bölme üretir, geciktirme için eniyilenir"
+
+#: config/ia64/ia64.h:212
+#, fuzzy
+msgid "Generate inline square root, optimize for throughput"
+msgstr "Satıriçi tamsayı bölme üretir, iş geçişi için eniyilenir"
+
+#: config/ia64/ia64.h:214
msgid "Enable Dwarf 2 line debug info via GNU as"
msgstr "GNU as yoluyla Dwarf 2 hata ayıklama satır bilgilerini etkinleştirir"
-#: config/ia64/ia64.h:194
+#: config/ia64/ia64.h:216
msgid "Disable Dwarf 2 line debug info via GNU as"
msgstr "GNU as yoluyla Dwarf 2 hata ayıklama satır bilgilerini etkisizleştirir"
-#: config/ia64/ia64.h:223
+#: config/ia64/ia64.h:218
+msgid "Enable earlier placing stop bits for better scheduling"
+msgstr ""
+
+#: config/ia64/ia64.h:220
+#, fuzzy
+msgid "Disable earlier placing stop bits"
+msgstr "Eşzamanlı komutlar kapatılır"
+
+#: config/ia64/ia64.h:265
msgid "Specify range of registers to make fixed"
msgstr "Belirlemek için yazmaç aralığı belirtilir"
-#: config/ip2k/ip2k.c:1090
+#: config/ip2k/ip2k.c:1074
msgid "bad operand"
msgstr "hatalı terim"
-#: config/m32r/m32r.c:139
+#: config/iq2000/iq2000.c:1816
+#, c-format
+msgid "bad value (%s) for -mcpu= switch"
+msgstr "-mcpu= seçeneğinin değeri (%s) hatalı"
+
+#: config/iq2000/iq2000.c:1845
+#, fuzzy, c-format
+msgid "The compiler does not support -march=%s."
+msgstr "%s %s desteÄŸi vermiyor"
+
+#: config/iq2000/iq2000.c:2232
+#, fuzzy, c-format
+msgid "gp_offset (%ld) or end_offset (%ld) is less than zero."
+msgstr "gp_offset (%ld) veya end_offset (%ld) sıfırdan küçük."
+
+#: config/iq2000/iq2000.c:3023
+#, fuzzy, c-format
+msgid "argument `%d' is not a constant"
+msgstr "`asm' argümanı bir sabit dizge değil"
+
+#: config/iq2000/iq2000.c:3314 config/xtensa/xtensa.c:2081
+msgid "PRINT_OPERAND_ADDRESS, null pointer"
+msgstr "PRINT_OPERAND_ADDRESS, boş gösterici"
+
+#: config/iq2000/iq2000.c:3469
+#, fuzzy, c-format
+msgid "PRINT_OPERAND: Unknown punctuation '%c'"
+msgstr "PRINT_OPERAND: '%c' noktalaması bilinmiyor"
+
+#: config/iq2000/iq2000.c:3478 config/mips/mips.c:5457
+#: config/xtensa/xtensa.c:1935
+msgid "PRINT_OPERAND null pointer"
+msgstr "PRINT_OPERAND boş gösterici"
+
+#: config/iq2000/iq2000.c:3547
+#, c-format
+msgid "invalid %%P operand"
+msgstr "%%P terimi geçersiz"
+
+#: config/iq2000/iq2000.c:3555 config/rs6000/rs6000.c:8881
+#, c-format
+msgid "invalid %%p value"
+msgstr "%%p değeri geçersiz"
+
+#: config/iq2000/iq2000.c:3619 config/mips/mips.c:5587
+#, c-format
+msgid "invalid use of %%d, %%x, or %%X"
+msgstr "%%d, %%x, ya da %%X kullanımı geçersiz"
+
+#: config/iq2000/iq2000.h:72 config/mn10300/mn10300.h:74
+msgid "No default crt0.o"
+msgstr "Öntanımlı crt0.o yok"
+
+#: config/iq2000/iq2000.h:74
+msgid "Use GP relative sdata/sbss sections"
+msgstr "GP göreli sdata/sbss bölümleri kullanılır"
+
+#: config/iq2000/iq2000.h:76
+msgid "Don't use GP relative sdata/sbss sections"
+msgstr "GP göreli sdata/sbss bölümleri kullanılmaz"
+
+#: config/iq2000/iq2000.h:78 config/mips/mips.h:563
+msgid "Use ROM instead of RAM"
+msgstr "RAM yerine ROM kullanılır"
+
+#: config/iq2000/iq2000.h:80 config/mips/mips.h:565
+msgid "Don't use ROM instead of RAM"
+msgstr "RAM yerine ROM kullanılmaz"
+
+#: config/iq2000/iq2000.h:82 config/mips/mips.h:567
+msgid "Put uninitialized constants in ROM (needs -membedded-data)"
+msgstr "Ä°lklenmemiÅŸ sabitleri ROM'a koyar (-membedded-data gerektirir)"
+
+#: config/iq2000/iq2000.h:84 config/mips/mips.h:569
+msgid "Don't put uninitialized constants in ROM"
+msgstr "Ä°lklenmemiÅŸ sabitleri ROM'a koymaz"
+
+#: config/iq2000/iq2000.h:106 config/mips/mips.h:731 config/pa/pa.h:310
+msgid "Specify CPU for scheduling purposes"
+msgstr "Zamanlama kullanımı için CPU belirtilir"
+
+#: config/iq2000/iq2000.h:108 config/mips/mips.h:733
+msgid "Specify CPU for code generation purposes"
+msgstr "Kod üretim amacıyla MİB belirtilir"
+
+#: config/m32r/m32r.c:172
#, c-format
msgid "bad value (%s) for -mmodel switch"
msgstr "-mmodel seçeneğinin değeri (%s) hatalı"
-#: config/m32r/m32r.c:148
+#: config/m32r/m32r.c:181
#, c-format
msgid "bad value (%s) for -msdata switch"
msgstr "-msdata seçeneğinin değeri (%s) hatalı"
-#: config/m32r/m32r.c:319
-#, c-format
-msgid "invalid argument of `%s' attribute"
-msgstr "`%s' özniteliğinin argümanı geçersiz"
-
-#: config/m32r/m32r.c:422
-msgid "const objects cannot go in .sdata/.sbss"
-msgstr "const nesneleri .sdata/.sbss içinde bulunamaz"
+#: config/m32r/m32r.c:188
+#, fuzzy, c-format
+msgid "bad value (%s) for -flush-trap=n (0=<n<=15)"
+msgstr "-msdata seçeneğinin değeri (%s) hatalı"
-#: config/m32r/m32r.c:2256
+#: config/m32r/m32r.c:2295
#, c-format
msgid "invalid operand to %%s code"
msgstr "%%s kodu için terim geçersiz"
-#: config/m32r/m32r.c:2263
+#: config/m32r/m32r.c:2302
#, c-format
msgid "invalid operand to %%p code"
msgstr "%%p kodu için terim geçersiz"
-#: config/m32r/m32r.c:2318
+#: config/m32r/m32r.c:2357
msgid "bad insn for 'A'"
msgstr "'A' için hatalı komut"
-#: config/m32r/m32r.c:2370
+#: config/m32r/m32r.c:2404
#, c-format
msgid "invalid operand to %%T/%%B code"
msgstr "%%T/%%B kodu için terim geçersiz"
-#: config/m32r/m32r.c:2393
+#: config/m32r/m32r.c:2427
#, c-format
msgid "invalid operand to %%N code"
msgstr "%%N kodu için terim geçersiz"
-#: config/m32r/m32r.c:2438
+#: config/m32r/m32r.c:2460
msgid "pre-increment address is not a register"
msgstr "ön arttırımlı adres bir yazmaç değil"
-#: config/m32r/m32r.c:2445
+#: config/m32r/m32r.c:2467
msgid "pre-decrement address is not a register"
msgstr "ön eksiltmeli adres bir yazmaç değil"
-#: config/m32r/m32r.c:2452
+#: config/m32r/m32r.c:2474
msgid "post-increment address is not a register"
msgstr "sonradan arttırımlı adres bir yazmaç değil"
-#: config/m32r/m32r.c:2530 config/m32r/m32r.c:2546
-#: config/rs6000/rs6000.c:12802
+#: config/m32r/m32r.c:2550 config/m32r/m32r.c:2566
+#: config/rs6000/rs6000.c:14753
msgid "bad address"
msgstr "hatalı adres"
-#: config/m32r/m32r.c:2551
+#: config/m32r/m32r.c:2571
msgid "lo_sum not of register"
msgstr "lo_sum yazmacın değil"
#. { "relax", TARGET_RELAX_MASK, "" }, { "no-relax", -TARGET_RELAX_MASK, "" },
-#: config/m32r/m32r.h:241
+#: config/m32r/m32r.h:277
msgid "Display compile time statistics"
msgstr "Derleme anı istatistikleri gösterilir"
-#: config/m32r/m32r.h:243
+#: config/m32r/m32r.h:279
msgid "Align all loops to 32 byte boundary"
msgstr "Tüm döngüler 32 bitlik sınıra hizalanır"
-#: config/m32r/m32r.h:246
+#: config/m32r/m32r.h:282
msgid "Only issue one instruction per cycle"
msgstr "Her çevrimde bir işlem işler"
-#: config/m32r/m32r.h:249
+#: config/m32r/m32r.h:285
msgid "Prefer branches over conditional execution"
msgstr "Dallanmalar koşullu çalıştırmaya tercih edilir"
-#: config/m32r/m32r.h:265
+#: config/m32r/m32r.h:306
msgid "Code size: small, medium or large"
msgstr "Kod boyutu: small, medium veya large"
-#: config/m32r/m32r.h:267
+#: config/m32r/m32r.h:308
msgid "Small data area: none, sdata, use"
msgstr "Küçük veri alanı: none, sdata, use"
-#: config/m68hc11/m68hc11.c:242
+#: config/m32r/m32r.h:310 config/mips/mips.h:739
+msgid "Don't call any cache flush functions"
+msgstr "Hiçbir arabellek boşaltma işlevi çağrılmaz"
+
+#: config/m32r/m32r.h:312 config/mips/mips.h:741
+msgid "Specify cache flush function"
+msgstr "Arabellek boÅŸaltma iÅŸlevi belirtilir"
+
+#: config/m32r/m32r.h:314
+#, fuzzy
+msgid "Don't call any cache flush trap"
+msgstr "Hiçbir arabellek boşaltma işlevi çağrılmaz"
+
+#: config/m32r/m32r.h:316
+#, fuzzy
+msgid "Specify cache flush trap number"
+msgstr "Arabellek boÅŸaltma iÅŸlevi belirtilir"
+
+#: config/m68hc11/m68hc11.c:269
#, c-format
msgid "-f%s ignored for 68HC11/68HC12 (not supported)"
msgstr "68HC11/68HC12 için -f%s yoksayıldı (desteklenmiyor)"
-#: config/m68hc11/m68hc11.c:1305
+#: config/m68hc11/m68hc11.c:1260
msgid "`trap' and `far' attributes are not compatible, ignoring `far'"
msgstr "`trap' ve `far' nitelikleri uyumlu değil, `far' yoksayılıyor"
-#: config/m68hc11/m68hc11.c:1311
+#: config/m68hc11/m68hc11.c:1266
msgid "`trap' attribute is already used"
msgstr "`trap' özelliği zaten kullanılmış"
#. !!!! SCz wrong here.
-#: config/m68hc11/m68hc11.c:3327 config/m68hc11/m68hc11.c:3733
+#: config/m68hc11/m68hc11.c:3222 config/m68hc11/m68hc11.c:3606
msgid "move insn not handled"
msgstr "taşıma komutu elde edilmedi"
-#: config/m68hc11/m68hc11.c:3579 config/m68hc11/m68hc11.c:3663
-#: config/m68hc11/m68hc11.c:3946
+#: config/m68hc11/m68hc11.c:3454 config/m68hc11/m68hc11.c:3538
+#: config/m68hc11/m68hc11.c:3809
msgid "invalid register in the move instruction"
msgstr "move komutundaki yazmaç geçersiz"
-#: config/m68hc11/m68hc11.c:3613
+#: config/m68hc11/m68hc11.c:3488
msgid "invalid operand in the instruction"
msgstr "komuttaki terim geçersiz"
-#: config/m68hc11/m68hc11.c:3920
+#: config/m68hc11/m68hc11.c:3783
msgid "invalid register in the instruction"
msgstr "komuttaki yazmaç geçersiz"
-#: config/m68hc11/m68hc11.c:3953
+#: config/m68hc11/m68hc11.c:3816
msgid "operand 1 must be a hard register"
msgstr "1. terim bir donanım yazmacı olmalı"
-#: config/m68hc11/m68hc11.c:3970
+#: config/m68hc11/m68hc11.c:3830
msgid "invalid rotate insn"
msgstr "geçersiz döngü komutu"
-#: config/m68hc11/m68hc11.c:4391
+#: config/m68hc11/m68hc11.c:4246
msgid "registers IX, IY and Z used in the same INSN"
msgstr "IX, IY ve Z yazmaçları aynı KOMUTta kullanılmış"
-#: config/m68hc11/m68hc11.c:4728 config/m68hc11/m68hc11.c:5031
+#: config/m68hc11/m68hc11.c:4583 config/m68hc11/m68hc11.c:4883
msgid "cannot do z-register replacement"
msgstr "z-yazmaç yer değiştirmesi yapılamaz"
-#: config/m68hc11/m68hc11.c:5094
+#: config/m68hc11/m68hc11.c:4946
msgid "invalid Z register replacement for insn"
msgstr "komut için Z yazmaç yerdeğiştirmesi geçersiz"
@@ -11322,55 +10691,55 @@ msgstr "komut için Z yazmaç yerdeğiştirmesi geçersiz"
#. pairs in braces, each pair being { "NAME", VALUE } where VALUE is the bits
#. to set or minus the bits to clear. An empty string NAME is used to
#. identify the default VALUE.
-#: config/m68hc11/m68hc11.h:172
+#: config/m68hc11/m68hc11.h:177
msgid "Compile with 16-bit integer mode"
msgstr "16 bitlik tamsayı kiple derleme yapılır"
-#: config/m68hc11/m68hc11.h:174
+#: config/m68hc11/m68hc11.h:179
msgid "Compile with 32-bit integer mode"
msgstr "32 bitlik tamsayı kiple derleme yapılır"
-#: config/m68hc11/m68hc11.h:176
+#: config/m68hc11/m68hc11.h:181
msgid "Auto pre/post decrement increment allowed"
msgstr "Otomatik önce/sonra eksiltme arttırmaya izin verilir"
-#: config/m68hc11/m68hc11.h:178
+#: config/m68hc11/m68hc11.h:183
msgid "Auto pre/post decrement increment not allowed"
msgstr "Otomatik önce/sonra eksiltme arttırmaya izin verilmez"
-#: config/m68hc11/m68hc11.h:180
+#: config/m68hc11/m68hc11.h:185
msgid "Min/max instructions allowed"
msgstr "Min/max komutlarına izin verilir"
-#: config/m68hc11/m68hc11.h:182
+#: config/m68hc11/m68hc11.h:187
msgid "Min/max instructions not allowed"
msgstr "Min/max komutlarına izin verilmez"
-#: config/m68hc11/m68hc11.h:184
+#: config/m68hc11/m68hc11.h:189
msgid "Use call and rtc for function calls and returns"
msgstr "İşlev çağrıları ve dönüşleri için call ve rtc kullanılır"
-#: config/m68hc11/m68hc11.h:186
+#: config/m68hc11/m68hc11.h:191
msgid "Use jsr and rts for function calls and returns"
msgstr "İşlev çağrıları ve dönüşleri için jsr ve rts kullanılır"
-#: config/m68hc11/m68hc11.h:188
+#: config/m68hc11/m68hc11.h:193
msgid "Do not use direct addressing mode for soft registers"
msgstr "Soft yazmaçlar için doğrudan adresleme kipi kullanılmaz"
-#: config/m68hc11/m68hc11.h:190
+#: config/m68hc11/m68hc11.h:195
msgid "Use direct addressing mode for soft registers"
msgstr "Soft yazmaçlar için doğrudan adresleme kipi kullanılır"
-#: config/m68hc11/m68hc11.h:192 config/m68hc11/m68hc11.h:198
+#: config/m68hc11/m68hc11.h:197 config/m68hc11/m68hc11.h:203
msgid "Compile for a 68HC11"
msgstr "68HC11 için derleme yapılır"
-#: config/m68hc11/m68hc11.h:194 config/m68hc11/m68hc11.h:200
+#: config/m68hc11/m68hc11.h:199 config/m68hc11/m68hc11.h:205
msgid "Compile for a 68HC12"
msgstr "68HC12 için derleme yapılır"
-#: config/m68hc11/m68hc11.h:196 config/m68hc11/m68hc11.h:202
+#: config/m68hc11/m68hc11.h:201 config/m68hc11/m68hc11.h:207
msgid "Compile for a 68HCS12"
msgstr "68HCS12 için derleme yapılır"
@@ -11383,30 +10752,44 @@ msgstr "68HCS12 için derleme yapılır"
#. variable, type `char *', is set to the variable part of the given
#. option if the fixed part matches. The actual option name is made
#. by appending `-m' to the specified name.
-#: config/m68hc11/m68hc11.h:216
+#: config/m68hc11/m68hc11.h:221
msgid "Specify the register allocation order"
msgstr "Yazmaç ayırma sırası belirtilir"
-#: config/m68hc11/m68hc11.h:218
+#: config/m68hc11/m68hc11.h:223
msgid "Indicate the number of soft registers available"
msgstr "Mevcut olan yazılım bazlı (soft) yazmaçları bildirir"
-#: config/m68k/m68k.c:158
+#: config/m68k/m68k.c:227
#, c-format
msgid "-malign-loops=%d is not between 1 and %d"
msgstr "-malign-loops=%d 1 ile %d arasında değil"
-#: config/m68k/m68k.c:169
+#: config/m68k/m68k.c:238
+msgid "-mshared-library-id= specified without -mid-shared-library"
+msgstr ""
+
+#: config/m68k/m68k.c:241
+#, fuzzy, c-format
+msgid "-mshared-library-id=%d is not between 0 and %d"
+msgstr "-mregparm=%d 0 ile %d arasında değil"
+
+#: config/m68k/m68k.c:255
+#, fuzzy
+msgid "cannot specify both -msep-data and -mid-shared-library"
+msgstr "hem -C hem de -o belirtilemez"
+
+#: config/m68k/m68k.c:270
#, c-format
msgid "-malign-jumps=%d is not between 1 and %d"
msgstr "-malign-jumps=%d 1 ile %d arasında değil"
-#: config/m68k/m68k.c:180
+#: config/m68k/m68k.c:281
#, c-format
msgid "-malign-functions=%d is not between 1 and %d"
msgstr "-malign-functions=%d 1 ile %d arasında değil"
-#: config/m68k/m68k.c:189
+#: config/m68k/m68k.c:290
msgid "-fPIC is not currently supported on the 68000 or 68010\n"
msgstr "-fPIC şu an 68000 veya 68010 için desteklenmiyor\n"
@@ -11415,503 +10798,441 @@ msgstr "-fPIC şu an 68000 veya 68010 için desteklenmiyor\n"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/m68k/m68k.h:162 config/m68k/m68k.h:164
+#: config/m68k/m68k.h:248 config/m68k/m68k.h:250
msgid "Generate code for a 68020"
msgstr "68020 için kod üretilir"
-#: config/m68k/m68k.h:169 config/m68k/m68k.h:172
+#: config/m68k/m68k.h:255 config/m68k/m68k.h:258
msgid "Generate code for a 68000"
msgstr "68000 için kod üretilir"
-#: config/m68k/m68k.h:174
+#: config/m68k/m68k.h:260
msgid "Use the bit-field instructions"
msgstr "Bit alanı komutları kullanılır"
-#: config/m68k/m68k.h:176
+#: config/m68k/m68k.h:262
msgid "Do not use the bit-field instructions"
msgstr "Bit alanı komutları kullanılmaz"
-#: config/m68k/m68k.h:178
-msgid "Use different calling convention using 'rtd'"
-msgstr "'rtd' kullanılan farklı çağrı uzlaşımı kullanılır"
-
-#: config/m68k/m68k.h:182
+#: config/m68k/m68k.h:264
msgid "Consider type `int' to be 16 bits wide"
msgstr "`int' tür 16 bit genişlikte varsayılır"
-#: config/m68k/m68k.h:184
+#: config/m68k/m68k.h:266
msgid "Consider type `int' to be 32 bits wide"
msgstr "`int' tür 32 bit genişlikte varsayılır"
-#: config/m68k/m68k.h:186
-msgid "Generate code for a Sun FPA"
-msgstr "Sun FPA için kod üretilir"
-
-#: config/m68k/m68k.h:189
-msgid "Do not generate code for a Sun FPA"
-msgstr "Sun FPA için kod üretilmez"
-
-#: config/m68k/m68k.h:191 config/m68k/m68k.h:193
-msgid "Generate code for a Sun Sky board"
-msgstr "Sun Sky kartı için kod üretilir"
-
-#: config/m68k/m68k.h:195
-msgid "Do not use Sky linkage convention"
-msgstr "Sky ilintileme uzlaşımı kullanılmaz"
-
-#: config/m68k/m68k.h:197
-msgid "Generate code for a 68881"
-msgstr "68881 için kod üretilir"
-
-#: config/m68k/m68k.h:200
+#: config/m68k/m68k.h:269
msgid "Generate code with library calls for floating point"
msgstr "Gerçel sayılar için kitaplık çağrılarıyla kod üretilir"
-#: config/m68k/m68k.h:202
+#: config/m68k/m68k.h:271
msgid "Generate code for a 68040, without any new instructions"
msgstr "Hiçbir yeni komut olmaksızın 68040 için kod üretilir"
-#: config/m68k/m68k.h:205
+#: config/m68k/m68k.h:274
msgid "Generate code for a 68060, without any new instructions"
msgstr "Hiçbir yeni komut olmaksızın 68060 için kod üretilir"
-#: config/m68k/m68k.h:209
+#: config/m68k/m68k.h:278
msgid "Generate code for a 68030"
msgstr "68030 için kod üretilir"
-#: config/m68k/m68k.h:212
+#: config/m68k/m68k.h:281
msgid "Generate code for a 68040"
msgstr "68040 için kod üretilir"
-#: config/m68k/m68k.h:216
+#: config/m68k/m68k.h:285
msgid "Generate code for a 68060"
msgstr "68060 için kod üretilir"
-#: config/m68k/m68k.h:221
+#: config/m68k/m68k.h:290
msgid "Generate code for a 520X"
msgstr "520X için kod üretilir"
-#: config/m68k/m68k.h:224
+#: config/m68k/m68k.h:294
+#, fuzzy
+msgid "Generate code for a 5206e"
+msgstr "520X için kod üretilir"
+
+#: config/m68k/m68k.h:298
+#, fuzzy
+msgid "Generate code for a 528x"
+msgstr "520X için kod üretilir"
+
+#: config/m68k/m68k.h:302
+#, fuzzy
+msgid "Generate code for a 5307"
+msgstr "520X için kod üretilir"
+
+#: config/m68k/m68k.h:306
+#, fuzzy
+msgid "Generate code for a 5407"
+msgstr "520X için kod üretilir"
+
+#: config/m68k/m68k.h:309
msgid "Generate code for a 68851"
msgstr "68851 için kod üretilir"
-#: config/m68k/m68k.h:226
+#: config/m68k/m68k.h:311
msgid "Do no generate code for a 68851"
msgstr "68851 için kod üretilmez"
-#: config/m68k/m68k.h:229
+#: config/m68k/m68k.h:314
msgid "Generate code for a 68302"
msgstr "68302 için kod üretilir"
-#: config/m68k/m68k.h:232
+#: config/m68k/m68k.h:317
msgid "Generate code for a 68332"
msgstr "68332 için kod üretilir"
-#: config/m68k/m68k.h:236
+#: config/m68k/m68k.h:321
msgid "Generate code for a cpu32"
msgstr "Bir cpu32 için kod üretilir"
-#: config/m68k/m68k.h:239
+#: config/m68k/m68k.h:324
msgid "Align variables on a 32-bit boundary"
msgstr "Değişkenler 32 bitlik sınıra hizalanır"
-#: config/m68k/m68k.h:241
+#: config/m68k/m68k.h:326
msgid "Align variables on a 16-bit boundary"
msgstr "Değişkenler 16 bitlik sınıra hizalanır"
-#: config/m68k/m68k.h:243
+#: config/m68k/m68k.h:328
+msgid "Enable separate data segment"
+msgstr ""
+
+#: config/m68k/m68k.h:330
+#, fuzzy
+msgid "Disable separate data segment"
+msgstr "space yazmaçları kapatılır"
+
+#: config/m68k/m68k.h:332
+msgid "Enable ID based shared library"
+msgstr ""
+
+#: config/m68k/m68k.h:334
+msgid "Disable ID based shared library"
+msgstr ""
+
+#: config/m68k/m68k.h:336
msgid "Generate pc-relative code"
msgstr "PC'ye göre kod üretilir"
-#: config/m68k/m68k.h:245
+#: config/m68k/m68k.h:338
msgid "Do not use unaligned memory references"
msgstr "Hizalamasız bellek referansları kullanılmaz"
-#: config/m68k/m68k.h:247
+#: config/m68k/m68k.h:340
msgid "Use unaligned memory references"
msgstr "Hizalanmamış bellek başvuruları kullanılır"
-#: config/m88k/m88k.c:903
-#, c-format
-msgid "internal gcc monitor: short-branch(%x)"
-msgstr "gcc iç monitörü: short-branch(%x)"
-
-#: config/m88k/m88k.c:2302
-msgid "internal gcc error: Can't express symbolic location"
-msgstr "gcc iç hatası: Sembolik konum ifade edilemiyor"
-
-#: config/m88k/m88k.c:2517
-#, c-format
-msgid "argument #%d is a structure"
-msgstr "%d. argüman bir yapı"
-
-#: config/m88k/m88k.c:2816
-#, c-format
-msgid "%%R not followed by %%B/C/D/E"
-msgstr "%%R den sonra %%B/C/D/E gelmiyor"
-
-#: config/m88k/m88k.c:2884
-#, c-format
-msgid "invalid %%x/X value"
-msgstr "%%x/X değeri geçersiz"
-
-#: config/m88k/m88k.c:2901
-#, c-format
-msgid "invalid %%Q value"
-msgstr "%%Q değeri geçersiz"
-
-#: config/m88k/m88k.c:2907 config/rs6000/rs6000.c:7718
-#, c-format
-msgid "invalid %%q value"
-msgstr "%%q değeri geçersiz"
-
-#: config/m88k/m88k.c:2913
-#, c-format
-msgid "invalid %%o value"
-msgstr "%%o değeri geçersiz"
-
-#: config/m88k/m88k.c:2920 config/rs6000/rs6000.c:7681
-#, c-format
-msgid "invalid %%p value"
-msgstr "%%p değeri geçersiz"
-
-#: config/m88k/m88k.c:2933 config/m88k/m88k.c:2938
-#, c-format
-msgid "invalid %%s/S value"
-msgstr "%%s/S değeri geçersiz"
-
-#: config/m88k/m88k.c:2949
-#, c-format
-msgid "invalid %%P operand"
-msgstr "%%P terimi geçersiz"
-
-#: config/m88k/m88k.c:2980 config/romp/romp.c:690
-#, c-format
-msgid "invalid %%B value"
-msgstr "%%B değeri geçersiz"
-
-#: config/m88k/m88k.c:3010
-#, c-format
-msgid "invalid %%D value"
-msgstr "%%D değeri geçersiz"
-
-#: config/m88k/m88k.c:3023
-#, c-format
-msgid "`%%d' operand isn't a register"
-msgstr "`%%d' terimi bir yazmaç değil"
-
-#: config/m88k/m88k.c:3041
-msgid "operand is r0"
-msgstr "veri öğesi: r0"
-
-#: config/m88k/m88k.c:3055
-msgid "operand is const_double"
-msgstr "veri öğesi: const_double"
-
-#: config/m88k/m88k.c:3074
-msgid "invalid code"
-msgstr "geçersiz kod"
-
-#. Do any checking or such that is needed after processing the -m switches.
-#: config/m88k/m88k.h:277
-msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
-msgstr "-mtrap-large-shift ve -mhandle-large-shift uyumsuz"
-
-#: config/m88k/m88k.h:299
-#, c-format
-msgid "invalid option `-mshort-data-%s'"
-msgstr "`-mshort-data-%s' seçeneği geçersiz"
-
-#: config/m88k/m88k.h:304
-#, c-format
-msgid "-mshort-data-%s is too large "
-msgstr "-mshort-data-%s çok büyük"
+#: config/m68k/m68k.h:342
+msgid "Use different calling convention using 'rtd'"
+msgstr "'rtd' kullanılan farklı çağrı uzlaşımı kullanılır"
-#: config/m88k/m88k.h:306
-#, c-format
-msgid "-mshort-data-%s and PIC are incompatible"
-msgstr "-mshort-data-%s ve PIC uyumsuz"
+#: config/m68k/m68k.h:366
+msgid "ID of shared library to build"
+msgstr ""
-#: config/mcore/mcore.c:3078
+#: config/mcore/mcore.c:2973
#, c-format
msgid "invalid option `-mstack-increment=%s'"
msgstr "`-mstack-increment=%s' seçeneği geçersiz"
-#: config/mcore/mcore.h:126
+#: config/mcore/mcore.h:121
msgid "Inline constants if it can be done in 2 insns or less"
msgstr "2 komut ya da daha azı ile yapılabiliyorsa, sabitleri özümler"
-#: config/mcore/mcore.h:128
+#: config/mcore/mcore.h:123
msgid "Inline constants if it only takes 1 instruction"
msgstr "1 komut ile yapılabiliyorsa sabitleri özümler"
-#: config/mcore/mcore.h:130
+#: config/mcore/mcore.h:125
msgid "Set maximum alignment to 4"
msgstr "En büyük hizalama 4 e ayarlanır"
-#: config/mcore/mcore.h:132
+#: config/mcore/mcore.h:127
msgid "Set maximum alignment to 8"
msgstr "En büyük hizalama 8 e ayarlanır"
-#: config/mcore/mcore.h:136
+#: config/mcore/mcore.h:131
msgid "Do not use the divide instruction"
msgstr "Bölme komutu kullanılmaz"
-#: config/mcore/mcore.h:140
+#: config/mcore/mcore.h:135
msgid "Do not arbitrary sized immediates in bit operations"
msgstr "Bit işlemlerinde herhangi bir boyda anlık değerler kullanmaz"
-#: config/mcore/mcore.h:142
+#: config/mcore/mcore.h:137
msgid "Always treat bit-field as int-sized"
msgstr "Bit alanı daima int boyutlu işlenir"
-#: config/mcore/mcore.h:146
+#: config/mcore/mcore.h:141
msgid "Force functions to be aligned to a 4 byte boundary"
msgstr "İşlevlerin 4 baytlık sınıra hizalanması zorlanır"
-#: config/mcore/mcore.h:148
+#: config/mcore/mcore.h:143
msgid "Force functions to be aligned to a 2 byte boundary"
msgstr "İşlevlerin 2 baytlık sınıra hizalanması zorlanır"
-#: config/mcore/mcore.h:150
+#: config/mcore/mcore.h:145
msgid "Emit call graph information"
msgstr "Çağrı grafiği bilgisi üretir"
-#: config/mcore/mcore.h:154
+#: config/mcore/mcore.h:149
msgid "Prefer word accesses over byte accesses"
msgstr "Word eriÅŸimlerini bayt eriÅŸimlerine tercih eder"
-#: config/mcore/mcore.h:165
+#: config/mcore/mcore.h:160
msgid "Generate code for the M*Core M340"
msgstr "Kod M*Core M340 için üretilir"
-#: config/mcore/mcore.h:178
+#: config/mcore/mcore.h:173
msgid "Maximum amount for a single stack increment operation"
msgstr "Tek yığıt artış işleminde kullanılacak maksimum miktar"
-#: config/mips/mips.c:5128
+#: config/mips/mips.c:3115 config/xtensa/xtensa.c:992
+#: config/xtensa/xtensa.c:1024 config/xtensa/xtensa.c:1033
+msgid "bad test"
+msgstr "hatalı test"
+
+#: config/mips/mips.c:4593
#, c-format
msgid "bad value (%s) for -mabi= switch"
msgstr "-mabi= seçeneğinin değeri (%s) hatalı"
-#: config/mips/mips.c:5158
-#, c-format
-msgid "-mips%d conflicts with the other architecture options, which specify a MIPS%d processor"
+#: config/mips/mips.c:4616
+#, fuzzy, c-format
+msgid "-mips%s conflicts with the other architecture options, which specify a MIPS%d processor"
msgstr "-mips%d mimarinin diğer seçenekleri tarafından bir MIPS%d işlemci belirtildiğinden çelişki yaratıyor"
-#: config/mips/mips.c:5165
-#, c-format
-msgid "bad value (%s) for -mips switch"
-msgstr "-mips seçeneğinin değeri (%s) hatalı"
-
-#: config/mips/mips.c:5180
+#: config/mips/mips.c:4635
#, c-format
msgid "-march=%s is not compatible with the selected ABI"
msgstr "-march=%s seçilen ABI ile uyumsuz"
-#: config/mips/mips.c:5192
+#: config/mips/mips.c:4650
msgid "-mgp64 used with a 32-bit processor"
msgstr "-mgp64 bir 32-bit işlemci ile kullanılmış"
-#: config/mips/mips.c:5194
+#: config/mips/mips.c:4652
msgid "-mgp32 used with a 64-bit ABI"
msgstr "-mgp32 bir 64-bit ABI ile kullanılmış"
-#: config/mips/mips.c:5196
+#: config/mips/mips.c:4654
msgid "-mgp64 used with a 32-bit ABI"
msgstr "-mgp64 bir 32-bit ABI ile kullanılmış"
-#: config/mips/mips.c:5214 config/mips/mips.c:5216 config/mips/mips.c:5218
+#: config/mips/mips.c:4672 config/mips/mips.c:4674 config/mips/mips.c:4676
+#: config/mips/mips.c:4804
#, c-format
msgid "unsupported combination: %s"
msgstr "desteklenmeyen birleÅŸim: %s"
-#: config/mips/mips.c:5288
+#: config/mips/mips.c:4768
+#, fuzzy
+msgid "-g is only supported using GNU as,"
+msgstr "-g sadece bu işlemci üzerinde GAS kullanıldığında desteklenir,"
+
+#: config/mips/mips.c:4770
+#, fuzzy
+msgid "-g is only supported using GNU as with -mabi=32,"
+msgstr "-g sadece bu işlemci üzerinde GAS kullanıldığında desteklenir,"
+
+#: config/mips/mips.c:4771 config/pa/pa.c:353
+msgid "-g option disabled"
+msgstr "-g seçeneği iptal edildi"
+
+#: config/mips/mips.c:4799
msgid "generation of Branch Likely instructions enabled, but not supported by architecture"
msgstr "Branch Likely komutlarının üretimi etkinleştirildi ama mimari desteklemiyor"
-#: config/mips/mips.c:5299
+#: config/mips/mips.c:4816
msgid "-G is incompatible with PIC code which is the default"
msgstr "-G öntanımlı olan PIC kodu ile uyumsuz"
-#: config/mips/mips.c:5315
+#: config/mips/mips.c:4844
msgid "-membedded-pic and -mabicalls are incompatible"
msgstr "-membedded-pic ile -mabicalls uyumsuz"
-#: config/mips/mips.c:5318
+#: config/mips/mips.c:4847
msgid "-G and -membedded-pic are incompatible"
msgstr "-G ile -membedded-pic uyumsuz"
-#: config/mips/mips.c:5369
-#, c-format
-msgid "invalid option `entry%s'"
-msgstr "`entry%s' seçeneği geçersiz"
+#: config/mips/mips.c:4879
+msgid "non-PIC n64 with explicit relocations"
+msgstr ""
-#: config/mips/mips.c:5372
-msgid "-mentry is only meaningful with -mips-16"
-msgstr "-mentry sadece -mips-16 ile anlamlıdır"
+#: config/mips/mips.c:5267
+msgid "mips_debugger_offset called with non stack/frame/arg pointer"
+msgstr ""
-#: config/mips/mips.c:5781
+#: config/mips/mips.c:5394
#, c-format
msgid "internal error: %%) found without a %%( in assembler pattern"
msgstr "iç hata: üretici maskı içinde %%) için bir %%( bulunamadı"
-#: config/mips/mips.c:5795
+#: config/mips/mips.c:5408
#, c-format
msgid "internal error: %%] found without a %%[ in assembler pattern"
msgstr "iç hata: üretici maskı içinde %%] için bir %%[ bulunamadı"
-#: config/mips/mips.c:5808
+#: config/mips/mips.c:5421
#, c-format
msgid "internal error: %%> found without a %%< in assembler pattern"
msgstr "iç hata: üretici maskı içinde %%> için bir %%< bulunamadı"
-#: config/mips/mips.c:5821
+#: config/mips/mips.c:5434
#, c-format
msgid "internal error: %%} found without a %%{ in assembler pattern"
msgstr "iç hata: üretici maskı içinde %%} için bir %%{ bulunamadı"
-#: config/mips/mips.c:5835
+#: config/mips/mips.c:5448
#, c-format
msgid "PRINT_OPERAND: unknown punctuation '%c'"
msgstr "PRINT_OPERAND: '%c' noktalaması bilinmiyor"
-#: config/mips/mips.c:5844 config/xtensa/xtensa.c:1939
-msgid "PRINT_OPERAND null pointer"
+#: config/mips/mips.c:5477
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%C"
msgstr "PRINT_OPERAND boş gösterici"
-#: config/mips/mips.c:5975
-#, c-format
-msgid "invalid use of %%d, %%x, or %%X"
-msgstr "%%d, %%x, ya da %%X kullanımı geçersiz"
-
-#: config/mips/mips.c:6013 config/xtensa/xtensa.c:2033
-msgid "PRINT_OPERAND_ADDRESS, null pointer"
-msgstr "PRINT_OPERAND_ADDRESS, boş gösterici"
-
-#: config/mips/mips.c:6242
-msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
-msgstr "MIPS ECOFF biçimi dosya isimlerinin #line'lı işlevlerde değiştirilmesine izin vermez"
-
-#: config/mips/mips.c:6552
-msgid "can't rewind temp file"
-msgstr "geçici dosya açılamıyor"
-
-#: config/mips/mips.c:6556
-msgid "can't write to output file"
-msgstr "çıktı dosyasına yazılamıyor"
-
-#: config/mips/mips.c:6559
-msgid "can't read from temp file"
-msgstr "geçici dosya okunamıyor"
+#: config/mips/mips.c:5494
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%N"
+msgstr "PRINT_OPERAND boş gösterici"
-#: config/mips/mips.c:6562
-msgid "can't close temp file"
-msgstr "geçici dosya kapatılamıyor"
+#: config/mips/mips.c:5503
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%F"
+msgstr "PRINT_OPERAND boş gösterici"
-#: config/mips/mips.c:7003
-#, c-format
-msgid "gp_offset (%ld) or end_offset (%ld) is less than zero"
-msgstr "gp_offset (%ld) veya end_offset (%ld) sıfırdan küçük."
+#: config/mips/mips.c:5512
+#, fuzzy, c-format
+msgid "PRINT_OPERAND, invalid insn for %%W"
+msgstr "PRINT_OPERAND boş gösterici"
-#: config/mips/mips.c:7112
-#, c-format
-msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
-msgstr "fp_offset (%ld) veya end_offset (%ld) sıfırdan küçük."
+#: config/mips/mips.c:5618
+msgid "PRINT_OPERAND, invalid operand for relocation"
+msgstr ""
-#: config/mips/mips.c:9335
+#: config/mips/mips.c:8252
#, c-format
msgid "can not handle inconsistent calls to `%s'"
msgstr "çelişkili `%s' çağrıları elde edilemez"
-#: config/mips/mips.c:10467
+#: config/mips/mips.c:9258
msgid "the cpu name must be lower case"
msgstr "işlemci ismi küçük harflerle yazılmalıdır"
-#: config/mips/mips.c:10489
+#: config/mips/mips.c:9280
#, c-format
msgid "bad value (%s) for %s"
msgstr "%2$s için değer (%1$s) hatalı"
+#: config/mips/mips.c:9549
+#, fuzzy, c-format
+msgid "can't rewind temp file: %m"
+msgstr "geçici dosya açılamıyor"
+
+#: config/mips/mips.c:9553
+#, fuzzy, c-format
+msgid "can't write to output file: %m"
+msgstr "çıktı dosyasına yazılamıyor"
+
+#: config/mips/mips.c:9556
+#, fuzzy, c-format
+msgid "can't read from temp file: %m"
+msgstr "geçici dosya okunamıyor"
+
+#: config/mips/mips.c:9559
+#, fuzzy, c-format
+msgid "can't close temp file: %m"
+msgstr "geçici dosya kapatılamıyor"
+
+#: config/mips/linux64.h:39
+msgid "Same as -mabi=32, just trickier"
+msgstr ""
+
#. Target CPU builtins.
#. We do this here because __mips is defined below and so we can't use builtin_define_std.
#. Treat _R3000 and _R4000 like register-size defines, which is how they've historically been used.
#. Macros dependent on the C dialect.
-#. Bizzare, but needed at least for Irix.
+#. Bizarre, but needed at least for Irix.
#. Macro to define tables used to set the flags.
#. This is a list in braces of pairs in braces,
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:528 config/mn10300/mn10300.h:64
-msgid "No default crt0.o"
-msgstr "Öntanımlı crt0.o yok"
-
-#: config/mips/mips.h:530
+#: config/mips/mips.h:501
msgid "Use 64-bit int type"
msgstr "64-bit int tür kullanılır"
-#: config/mips/mips.h:532
+#: config/mips/mips.h:503
msgid "Use 64-bit long type"
msgstr "64-bit long tür kullanılır"
-#: config/mips/mips.h:534
+#: config/mips/mips.h:505
msgid "Use 32-bit long type"
msgstr "32-bit long tür kullanılır"
-#: config/mips/mips.h:536
+#: config/mips/mips.h:507
msgid "Optimize lui/addiu address loads"
msgstr "lui/addiu adres yüklemeleri eniyilenir"
-#: config/mips/mips.h:538
+#: config/mips/mips.h:509
msgid "Don't optimize lui/addiu address loads"
msgstr "lui/addiu adres yüklemeleri eniyilenmez"
-#: config/mips/mips.h:540
+#: config/mips/mips.h:511
msgid "Use MIPS as"
msgstr "MIPS as kullanılır"
-#: config/mips/mips.h:542
+#: config/mips/mips.h:513
msgid "Use GNU as"
msgstr "GNU as kullanılır"
-#: config/mips/mips.h:544
+#: config/mips/mips.h:515
msgid "Use symbolic register names"
msgstr "Sembolik yazmaç isimleri kullanılır"
-#: config/mips/mips.h:546
+#: config/mips/mips.h:517
msgid "Don't use symbolic register names"
msgstr "Sembolik yazmaç isimleri kullanılmaz"
-#: config/mips/mips.h:548 config/mips/mips.h:550
-msgid "Use GP relative sdata/sbss sections"
+#: config/mips/mips.h:519 config/mips/mips.h:521
+#, fuzzy
+msgid "Use GP relative sdata/sbss sections (now ignored)"
msgstr "GP göreli sdata/sbss bölümleri kullanılır"
-#: config/mips/mips.h:552 config/mips/mips.h:554
-msgid "Don't use GP relative sdata/sbss sections"
+#: config/mips/mips.h:523 config/mips/mips.h:525
+#, fuzzy
+msgid "Don't use GP relative sdata/sbss sections (now ignored)"
msgstr "GP göreli sdata/sbss bölümleri kullanılmaz"
-#: config/mips/mips.h:556
-msgid "Output compiler statistics"
+#: config/mips/mips.h:527
+#, fuzzy
+msgid "Output compiler statistics (now ignored)"
msgstr "Derleyici istatistikleri çıktılanır"
-#: config/mips/mips.h:558
+#: config/mips/mips.h:529
msgid "Don't output compiler statistics"
msgstr "Derleyici istatistikleri çıktılanmaz"
-#: config/mips/mips.h:560
+#: config/mips/mips.h:531
msgid "Don't optimize block moves"
msgstr "Blok taşıma eniyilemesi yapılmaz"
-#: config/mips/mips.h:562
+#: config/mips/mips.h:533
msgid "Optimize block moves"
msgstr "Blok taşımalar eniyilenir"
-#: config/mips/mips.h:564
+#: config/mips/mips.h:535
msgid "Use mips-tfile asm postpass"
msgstr "mips-tfile asm postpass kullanır"
-#: config/mips/mips.h:566
+#: config/mips/mips.h:537
msgid "Don't use mips-tfile asm postpass"
msgstr "mips-tfile asm postpass kullanmaz"
@@ -11921,271 +11242,239 @@ msgstr "mips-tfile asm postpass kullanmaz"
#. where VALUE is the bits to set or minus the bits to clear and DOC
#. is the documentation for --help (NULL if intentionally undocumented).
#. An empty string NAME is used to identify the default VALUE.
-#: config/mips/mips.h:570 config/pdp11/pdp11.h:56
+#: config/mips/mips.h:541 config/pdp11/pdp11.h:61 config/rs6000/rs6000.h:314
msgid "Use hardware floating point"
msgstr "Donanım kayan nokta aritmetiği kullanılır"
-#: config/mips/mips.h:572
+#: config/mips/mips.h:543
msgid "Use 64-bit FP registers"
msgstr "64 bitlik FP yazmaçları kullanılır"
-#: config/mips/mips.h:574
+#: config/mips/mips.h:545
msgid "Use 32-bit FP registers"
msgstr "32 bitlik FP yazmaçları kullanılır"
-#: config/mips/mips.h:576
+#: config/mips/mips.h:547
msgid "Use 64-bit general registers"
msgstr "64 bitlik genel yazmaçlar kullanılır"
-#: config/mips/mips.h:578
+#: config/mips/mips.h:549
msgid "Use 32-bit general registers"
msgstr "32 bitlik genel yazmaçlar kullanılır"
-#: config/mips/mips.h:580
+#: config/mips/mips.h:551
msgid "Use Irix PIC"
msgstr "Irix PIC kullanılır"
-#: config/mips/mips.h:582
+#: config/mips/mips.h:553
msgid "Don't use Irix PIC"
msgstr "Irix PIC kullanılmaz"
-#: config/mips/mips.h:584
+#: config/mips/mips.h:555
msgid "Use indirect calls"
msgstr "Dolaylı çağrılar kullanılır"
-#: config/mips/mips.h:586
+#: config/mips/mips.h:557
msgid "Don't use indirect calls"
msgstr "Dolaylı çağrılar kullanılmaz"
-#: config/mips/mips.h:588
+#: config/mips/mips.h:559
msgid "Use embedded PIC"
msgstr "Gömülü PIC kullanılır"
-#: config/mips/mips.h:590
+#: config/mips/mips.h:561
msgid "Don't use embedded PIC"
msgstr "Gömülü PIC kullanılmaz"
-#: config/mips/mips.h:592
-msgid "Use ROM instead of RAM"
-msgstr "RAM yerine ROM kullanılır"
-
-#: config/mips/mips.h:594
-msgid "Don't use ROM instead of RAM"
-msgstr "RAM yerine ROM kullanılmaz"
-
-#: config/mips/mips.h:596
-msgid "Put uninitialized constants in ROM (needs -membedded-data)"
-msgstr "Ä°lklenmemiÅŸ sabitleri ROM'a koyar (-membedded-data gerektirir)"
-
-#: config/mips/mips.h:598
-msgid "Don't put uninitialized constants in ROM"
-msgstr "Ä°lklenmemiÅŸ sabitleri ROM'a koymaz"
-
-#. Macro to define tables used to set the flags.
-#: config/mips/mips.h:600 config/xtensa/xtensa.h:110
+#: config/mips/mips.h:571
msgid "Use big-endian byte order"
msgstr "Büyük ilkli bayt sıralaması kullanılır"
-#: config/mips/mips.h:602 config/xtensa/xtensa.h:112
+#: config/mips/mips.h:573
msgid "Use little-endian byte order"
msgstr "Küçük ilkli bayt sıralaması kullanılır"
-#: config/mips/mips.h:604
+#: config/mips/mips.h:575
msgid "Use single (32-bit) FP only"
msgstr "Sadece tek (32 bit) FP kullanır"
-#: config/mips/mips.h:606
+#: config/mips/mips.h:577
msgid "Don't use single (32-bit) FP only"
msgstr "Sadece tek (32 bit) FP kullanmaz"
-#: config/mips/mips.h:608
+#: config/mips/mips.h:579
msgid "Use multiply accumulate"
msgstr "Çarpma biriktirmesi kullanır"
-#: config/mips/mips.h:610
+#: config/mips/mips.h:581
msgid "Don't use multiply accumulate"
msgstr "Çarpma biriktirmesi kullanmaz"
-#: config/mips/mips.h:612 config/rs6000/rs6000.h:314
+#: config/mips/mips.h:583
msgid "Don't generate fused multiply/add instructions"
msgstr "Birleşik çarpma/toplama komutları üretilmez"
-#: config/mips/mips.h:614 config/rs6000/rs6000.h:312
+#: config/mips/mips.h:585 config/rs6000/rs6000.h:330
msgid "Generate fused multiply/add instructions"
msgstr "Birleşik çarpma/toplama komutları üretilir"
-#: config/mips/mips.h:616
+#: config/mips/mips.h:587
msgid "Work around early 4300 hardware bug"
msgstr "İlk üretim 4300 donanım hatasının olurunu bulur"
-#: config/mips/mips.h:618
+#: config/mips/mips.h:589
msgid "Don't work around early 4300 hardware bug"
msgstr "İlk üretim 4300 donanım hatasının olurunu bulmaz"
-#: config/mips/mips.h:620
+#: config/mips/mips.h:591
+msgid "Work around errata for early SB-1 revision 2 cores"
+msgstr ""
+
+#: config/mips/mips.h:593
+msgid "Don't work around errata for early SB-1 revision 2 cores"
+msgstr ""
+
+#: config/mips/mips.h:595
msgid "Trap on integer divide by zero"
msgstr "Sıfırla tamsayı bölme taşması yakalanır"
-#: config/mips/mips.h:622
+#: config/mips/mips.h:597
msgid "Don't trap on integer divide by zero"
msgstr "Sıfırla tamsayı bölme taşması yakalanmaz"
-#: config/mips/mips.h:624
-msgid "Trap on integer divide overflow"
-msgstr "Tamsayı bölme taşması yakalanır"
-
-#: config/mips/mips.h:626
-msgid "Don't trap on integer divide overflow"
-msgstr "Tamsayı bölme taşması yakalanmaz"
-
-#: config/mips/mips.h:628
+#: config/mips/mips.h:599
msgid "Use Branch Likely instructions, overriding default for arch"
msgstr "Öntanımlı mimariye rağmen Branch Likely komutları kullanılır"
-#: config/mips/mips.h:630
+#: config/mips/mips.h:601
msgid "Don't use Branch Likely instructions, overriding default for arch"
msgstr "Öntanımlı mimariye rağmen Branch Likely komutları kullanılmaz"
-#: config/mips/mips.h:744 config/pa/pa.h:310
-msgid "Specify CPU for scheduling purposes"
-msgstr "Zamanlama kullanımı için CPU belirtilir"
+#: config/mips/mips.h:603
+msgid "Use NewABI-style %reloc() assembly operators"
+msgstr ""
-#: config/mips/mips.h:746
-msgid "Specify CPU for code generation purposes"
-msgstr "Kod üretim amacıyla MİB belirtilir"
+#: config/mips/mips.h:605
+msgid "Use assembler macros instead of relocation operators"
+msgstr ""
-#: config/mips/mips.h:748
-msgid "Specify an ABI"
-msgstr "Bir ABI belirtilir"
+#: config/mips/mips.h:607
+#, fuzzy
+msgid "Generate mips16 code"
+msgstr "SA kodu üretilir"
-#: config/mips/mips.h:750
-msgid "Specify a Standard MIPS ISA"
-msgstr "Bir Standard MIPS ISA belirtilir"
+#: config/mips/mips.h:609
+#, fuzzy
+msgid "Generate normal-mode code"
+msgstr "SA kodu üretilir"
-#: config/mips/mips.h:752
-msgid "Use mips16 entry/exit psuedo ops"
-msgstr "mips16 giriş/çıkış sanal op'larını kullanır"
+#: config/mips/mips.h:611
+msgid "Lift restrictions on GOT size"
+msgstr ""
-#: config/mips/mips.h:754
-msgid "Don't use MIPS16 instructions"
-msgstr "MIPS16 komutları kullanılmaz"
+#: config/mips/mips.h:613
+msgid "Do not lift restrictions on GOT size"
+msgstr ""
-#: config/mips/mips.h:756
-msgid "Don't call any cache flush functions"
-msgstr "Hiçbir arabellek boşaltma işlevi çağrılmaz"
+#: config/mips/mips.h:735
+msgid "Specify an ABI"
+msgstr "Bir ABI belirtilir"
-#: config/mips/mips.h:758
-msgid "Specify cache flush function"
-msgstr "Arabellek boÅŸaltma iÅŸlevi belirtilir"
+#: config/mips/mips.h:737
+msgid "Specify a Standard MIPS ISA"
+msgstr "Bir Standard MIPS ISA belirtilir"
#. Output assembler code to FILE to increment profiler label # LABELNO
#. for profiling a function entry.
-#: config/mips/mips.h:2900
+#: config/mips/mips.h:2403
msgid "mips16 function profiling"
msgstr "mips16 işlev ayrımlama"
-#: config/mmix/mmix.c:189
+#: config/mmix/mmix.c:207
#, c-format
msgid "-f%s not supported: ignored"
msgstr "-f%s desteklenmiyor: yoksayıldı"
-#: config/mmix/mmix.c:644
+#: config/mmix/mmix.c:633
#, c-format
msgid "too large function value type, needs %d registers, have only %d registers for this"
msgstr "işlev değer türü çok büyük, bunun için %d yazmaç gerekirken sadece %d yazmaç var"
-#: config/mmix/mmix.c:826
+#: config/mmix/mmix.c:803
msgid "function_profiler support for MMIX"
msgstr "MMIX için function_profiler desteği"
-#: config/mmix/mmix.c:848
+#: config/mmix/mmix.c:823
msgid "MMIX Internal: Last named vararg would not fit in a register"
msgstr "MMIX Dahili: Son isimli argüman bir yazmaça sığamamalı"
-#: config/mmix/mmix.c:1639 config/mmix/mmix.c:1769
+#: config/mmix/mmix.c:1538 config/mmix/mmix.c:1668
msgid "MMIX Internal: Expected a CONST_INT, not this"
msgstr "MMIX Dahili: Bu deÄŸil, bir CONST_INT bekleniyor"
-#: config/mmix/mmix.c:1647 config/mmix/mmix.c:1671 config/mmix/mmix.c:1787
+#: config/mmix/mmix.c:1546 config/mmix/mmix.c:1570 config/mmix/mmix.c:1686
#, c-format
msgid "MMIX Internal: Bad register: %d"
msgstr "MMIX Dahili: Hatalı yazmaç: %d"
-#: config/mmix/mmix.c:1718
+#: config/mmix/mmix.c:1617
msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
msgstr "MMIX Dahili: 'm' için bu bir CONST_INT değil, hatalı değer"
-#: config/mmix/mmix.c:1737
+#: config/mmix/mmix.c:1636
msgid "MMIX Internal: Expected a register, not this"
msgstr "MMIX Dahili: Bu değil, bir yazmaç bekleniyor"
-#: config/mmix/mmix.c:1747
+#: config/mmix/mmix.c:1646
msgid "MMIX Internal: Expected a constant, not this"
msgstr "MMIX Dahili: Bu deÄŸil, bir sabit bekleniyor"
#. Presumably there's a missing case above if we get here.
-#: config/mmix/mmix.c:1779
+#: config/mmix/mmix.c:1678
#, c-format
msgid "MMIX Internal: Missing `%c' case in mmix_print_operand"
msgstr "MMIX Dahili: mmix_print_operand içideki `%c' case eksik"
#. We need the original here.
-#: config/mmix/mmix.c:1831
+#: config/mmix/mmix.c:1730
msgid "MMIX Internal: Cannot decode this operand"
msgstr "MMIX Dahili: Bu terim iÅŸlenemez"
-#: config/mmix/mmix.c:1891
+#: config/mmix/mmix.c:1787
msgid "MMIX Internal: This is not a recognized address"
msgstr "MMIX Dahili: Bu bilinen bir adres deÄŸil"
-#: config/mmix/mmix.c:2082
+#: config/mmix/mmix.c:1964
#, c-format
msgid "stack frame not a multiple of 8 bytes: %d"
msgstr "yığın bağlamı 8 baytın katları değil: %d"
-#: config/mmix/mmix.c:2321
+#: config/mmix/mmix.c:2203
#, c-format
msgid "stack frame not a multiple of octabyte: %d"
msgstr "yığın bağlamı 8 baytın katları değil: %d"
-#: config/mmix/mmix.c:2818 config/mmix/mmix.c:2887
+#: config/mmix/mmix.c:2677 config/mmix/mmix.c:2741
#, c-format
msgid "MMIX Internal: %s is not a shiftable int"
msgstr "MMIX Dahili: %s bir bit kaydırma yapılabilir tamsayı değil"
-#: config/mmix/mmix.c:3006
+#: config/mmix/mmix.c:2857
msgid "MMIX Internal: Trying to output invalidly reversed condition:"
msgstr "MMIX Dahili: Geçersiz olarak ters çevrien koşul çıktılanmaya çalışılıyor:"
-#: config/mmix/mmix.c:3013
+#: config/mmix/mmix.c:2864
msgid "MMIX Internal: What's the CC of this?"
msgstr "MMIX Dahili: Bunun CC'si nedir?"
-#: config/mmix/mmix.c:3017
+#: config/mmix/mmix.c:2868
msgid "MMIX Internal: What is the CC of this?"
msgstr "MMIX Dahili: Bunun CC'si nedir?"
-#: config/mmix/mmix.c:3088
+#: config/mmix/mmix.c:2938
msgid "MMIX Internal: This is not a constant:"
msgstr "MMIX Dahili: Bu bir sabit deÄŸil:"
-#. For these target macros, there is no generic documentation here. You
-#. should read `Using and Porting GCC' for that. Only comments specific
-#. to the MMIX target are here.
-#.
-#. There are however references to the specific texinfo node (comments
-#. with "Node:"), so there should be little or nothing amiss. Probably
-#. the opposite, since we don't have to care about old littering and
-#. soon outdated generic comments.
-#. Node: Driver
-#. User symbols are in the same name-space as built-in symbols, but we
-#. don't need the built-in symbols, so remove those and instead apply
-#. stricter operand checking. Don't warn when expanding insns.
-#. Pass on -mset-program-start=N and -mset-data-start=M to the linker.
-#. Provide default program start 0x100 unless -mno-set-program-start.
-#. Don't do this if linking relocatably, with -r. For a final link,
-#. produce mmo, unless ELF is requested or when linking relocatably.
-#. Put unused option values here.
#: config/mmix/mmix.h:132
msgid "Set start-address of the program"
msgstr "Programın başlangıç adresi belirtilir"
@@ -12255,23 +11544,28 @@ msgstr "Her işlev için tek çıkış noktası üretilir"
msgid "Do not generate a single exit point for each function"
msgstr "Her işlev için tek çıkış noktası üretilmez"
-#: config/mn10300/mn10300.h:59
-msgid "Work around hardware multiply bug"
-msgstr "Donanım çarpma hatasının olurunu bulur"
-
-#: config/mn10300/mn10300.h:60
-msgid "Do not work around hardware multiply bug"
-msgstr "Donanım çarpma hatasının olurunu bulmaz"
-
-#: config/mn10300/mn10300.h:61
+#: config/mn10300/linux.h:60 config/mn10300/mn10300.h:71
msgid "Target the AM33 processor"
msgstr "AM33 iÅŸlemci hedeflenir"
-#: config/mn10300/mn10300.h:65
+#: config/mn10300/linux.h:61 config/mn10300/mn10300.h:75
+#, fuzzy
+msgid "Target the AM33/2.0 processor"
+msgstr "AM33 iÅŸlemci hedeflenir"
+
+#: config/mn10300/linux.h:62 config/mn10300/mn10300.h:78
msgid "Enable linker relaxations"
msgstr "Ä°lintileyici esnekleÅŸtiriciler etkinleÅŸtirilir"
-#: config/ns32k/ns32k.h:142 config/s390/s390.h:69
+#: config/mn10300/mn10300.h:69
+msgid "Work around hardware multiply bug"
+msgstr "Donanım çarpma hatasının olurunu bulur"
+
+#: config/mn10300/mn10300.h:70
+msgid "Do not work around hardware multiply bug"
+msgstr "Donanım çarpma hatasının olurunu bulmaz"
+
+#: config/ns32k/ns32k.h:142 config/s390/s390.h:125
msgid "Don't use hardware fp"
msgstr "Donanım kayan nokta aritmetiği kullanılmaz"
@@ -12343,7 +11637,7 @@ msgstr "\"Küçük yazmaç sınıfları\" uydurması"
msgid "No \"Small register classes\" kludge"
msgstr "\"Küçük yazmaç sınıfları\" uydurması yok"
-#: config/pa/pa.c:261
+#: config/pa/pa.c:304
#, c-format
msgid ""
"unknown -mschedule= option (%s).\n"
@@ -12352,7 +11646,7 @@ msgstr ""
"bilinmeyen -mschedule= seçeneği (%s).\n"
"Geçerli seçenekler: 700, 7100, 7100LC, 7200, 7300 ve 8000\n"
-#: config/pa/pa.c:286
+#: config/pa/pa.c:329
#, c-format
msgid ""
"unknown -march= option (%s).\n"
@@ -12361,29 +11655,23 @@ msgstr ""
"bilinmeyen -march= seçeneği (%s).\n"
"Geçerli seçenekler: 1.0, 1.1, ve 2.0\n"
-#: config/pa/pa.c:299
+#: config/pa/pa.c:342
msgid "PIC code generation is not supported in the portable runtime model\n"
msgstr "PIC kod üretimi uyarlanabilir çalışma anı modeli ile uyumlu değildir\n"
-#: config/pa/pa.c:304
+#: config/pa/pa.c:347
msgid "PIC code generation is not compatible with fast indirect calls\n"
msgstr "PIC kod üretimi hızlı dolaylı çağrılar ile uyumlu değildir\n"
-#: config/pa/pa.c:309
+#: config/pa/pa.c:352
msgid "-g is only supported when using GAS on this processor,"
msgstr "-g sadece bu işlemci üzerinde GAS kullanıldığında desteklenir,"
-#: config/pa/pa.c:310
-msgid "-g option disabled"
-msgstr "-g seçeneği iptal edildi"
-
-#: config/pa/pa-hiux.h:75 config/pa/pa-hpux.h:87 config/pa/pa-hpux7.h:81
-#: config/pa/pa64-hpux.h:25
+#: config/pa/pa-hpux.h:91 config/pa/pa64-hpux.h:25
msgid "Generate cpp defines for server IO"
msgstr "Sunucu GÇ için cpp tanımları üretilir"
-#: config/pa/pa-hiux.h:76 config/pa/pa-hpux.h:88 config/pa/pa-hpux7.h:82
-#: config/pa/pa64-hpux.h:27
+#: config/pa/pa-hpux.h:92 config/pa/pa64-hpux.h:27
msgid "Generate cpp defines for workstation IO"
msgstr "İstemci GÇ için cpp tanımları üretilir"
@@ -12505,50 +11793,50 @@ msgstr "Kodun GNU ld tarafından ilintileneceği varsayılır"
msgid "Assume code will be linked by HP ld"
msgstr "Kodun HP ld tarafından ilintileneceği varsayılır"
-#: config/pdp11/pdp11.h:57
+#: config/pdp11/pdp11.h:62 config/rs6000/rs6000.h:316
msgid "Do not use hardware floating point"
msgstr "Donanım kayan nokta aritmetiği kullanılmaz"
#. return float result in ac0
-#: config/pdp11/pdp11.h:59
+#: config/pdp11/pdp11.h:64
msgid "Return floating point results in ac0"
msgstr "ac0'daki kayan noktalı sonuçlar döner"
-#: config/pdp11/pdp11.h:60
+#: config/pdp11/pdp11.h:65
msgid "Return floating point results in memory"
msgstr "Bellekteki kayan noktalı sonuçlar döner"
#. is 11/40
-#: config/pdp11/pdp11.h:62
+#: config/pdp11/pdp11.h:67
msgid "Generate code for an 11/40"
msgstr "Kod bir 11/40 için üretilir"
#. is 11/45
-#: config/pdp11/pdp11.h:65
+#: config/pdp11/pdp11.h:70
msgid "Generate code for an 11/45"
msgstr "Kod bir 11/45 için üretilir"
#. is 11/10
-#: config/pdp11/pdp11.h:68
+#: config/pdp11/pdp11.h:73
msgid "Generate code for an 11/10"
msgstr "Kod bir 11/10 için üretilir"
#. use movstrhi for bcopy
#. use 32 bit for int
-#: config/pdp11/pdp11.h:73 config/pdp11/pdp11.h:74
+#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
msgid "Use 32 bit int"
msgstr "32 bitlik tamsayı kullanılır"
-#: config/pdp11/pdp11.h:75 config/pdp11/pdp11.h:76
+#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
msgid "Use 16 bit int"
msgstr "16 bitlik tamsayı kullanılır"
#. use 32 bit for float
-#: config/pdp11/pdp11.h:78 config/pdp11/pdp11.h:79
+#: config/pdp11/pdp11.h:83 config/pdp11/pdp11.h:84
msgid "Use 32 bit float"
msgstr "32 bitlik float kullanılır"
-#: config/pdp11/pdp11.h:80 config/pdp11/pdp11.h:81
+#: config/pdp11/pdp11.h:85 config/pdp11/pdp11.h:86
msgid "Use 64 bit float"
msgstr "64 bitlik float kullanılır"
@@ -12556,70 +11844,54 @@ msgstr "64 bitlik float kullanılır"
#. is branching expensive - on a PDP, it's actually really cheap
#. this is just to play around and check what code gcc generates
#. split instruction and data memory?
-#: config/pdp11/pdp11.h:90
+#: config/pdp11/pdp11.h:95
msgid "Target has split I&D"
msgstr "Hedef ayrı işlem ve veri belleğine sahip olur"
-#: config/pdp11/pdp11.h:91
+#: config/pdp11/pdp11.h:96
msgid "Target does not have split I&D"
msgstr "Hedef ayrı işlem ve veri belleğine sahip olmaz"
#. UNIX assembler syntax?
-#: config/pdp11/pdp11.h:93
+#: config/pdp11/pdp11.h:98
msgid "Use UNIX assembler syntax"
msgstr "UNIX çevirici sözdizimi kullanılır"
-#: config/pdp11/pdp11.h:94
+#: config/pdp11/pdp11.h:99
msgid "Use DEC assembler syntax"
msgstr "DEC çevirici sözdizimi kullanılır"
-#: config/romp/romp.c:717 config/rs6000/rs6000.c:7755
-#, c-format
-msgid "invalid %%S value"
-msgstr "%%S değeri geçersiz"
+#: config/rs6000/host-darwin.c:52
+msgid "Segmentation Fault (code)"
+msgstr ""
-#: config/romp/romp.c:726 config/romp/romp.c:733
-#, c-format
-msgid "invalid %%b value"
-msgstr "%%b değeri geçersiz"
+#: config/rs6000/host-darwin.c:83
+msgid "Out of stack space.\n"
+msgstr ""
-#: config/romp/romp.c:773 config/romp/romp.c:784
+#: config/rs6000/host-darwin.c:104
#, c-format
-msgid "invalid %%z value"
-msgstr "%%z değeri geçersiz"
+msgid "Try running `%s' in the shell to raise its limit.\n"
+msgstr ""
-#: config/romp/romp.c:792 config/romp/romp.c:800
-#, c-format
-msgid "invalid %%Z value"
-msgstr "%%Z değeri geçersiz"
+#: config/rs6000/host-darwin.c:117
+msgid "Segmentation Fault"
+msgstr ""
-#: config/romp/romp.c:807 config/romp/romp.c:816 config/romp/romp.c:823
-#: config/rs6000/rs6000.c:7584
+#: config/rs6000/host-darwin.c:131
#, c-format
-msgid "invalid %%k value"
-msgstr "%%k değeri geçersiz"
+msgid "While setting up signal stack: %m"
+msgstr ""
-#: config/romp/romp.c:908 config/romp/romp.c:951
+#: config/rs6000/host-darwin.c:137
#, c-format
-msgid "invalid %%j value"
-msgstr "%%j değeri geçersiz"
+msgid "While setting up signal handler: %m"
+msgstr ""
-#. Perform any needed actions needed for a function that is receiving a
-#. variable number of arguments.
-#.
-#. CUM is as above.
-#.
-#. MODE and TYPE are the mode and type of the current parameter.
-#.
-#. PRETEND_SIZE is a variable that should be set to the amount of stack
-#. that must be pushed by the prolog to pretend that our caller pushed
-#. it.
-#.
-#. Normally, this macro will push all remaining incoming registers on the
-#. stack and set PRETEND_SIZE to the length of the registers pushed.
-#: config/romp/romp.h:648
-msgid "can't have varargs with -mfp-arg-in-fp-regs"
-msgstr "-mfp-arg-in-fp-regs ile varargs olamaz"
+#: config/rs6000/host-darwin.c:184
+#, c-format
+msgid "couldn't unmap pch_address_space: %m\n"
+msgstr ""
#. Handle the machine specific pragma longcall. Its syntax is
#.
@@ -12630,192 +11902,243 @@ msgstr "-mfp-arg-in-fp-regs ile varargs olamaz"
#. rs6000_default_long_calls is set to the value of TOGGLE, changing
#. whether or not new function declarations receive a longcall
#. attribute by default.
-#: config/rs6000/rs6000-c.c:44
+#: config/rs6000/rs6000-c.c:46
msgid "ignoring malformed #pragma longcall"
msgstr "bozuk #pragma longcall yoksayılıyor"
-#: config/rs6000/rs6000-c.c:58
+#: config/rs6000/rs6000-c.c:59
msgid "missing open paren"
msgstr "açparantez eksik"
-#: config/rs6000/rs6000-c.c:60
+#: config/rs6000/rs6000-c.c:61
msgid "missing number"
msgstr "sayı eksik"
-#: config/rs6000/rs6000-c.c:62
+#: config/rs6000/rs6000-c.c:63
msgid "missing close paren"
msgstr "kapaparantez eksik"
-#: config/rs6000/rs6000-c.c:65
+#: config/rs6000/rs6000-c.c:66
msgid "number must be 0 or 1"
msgstr "sayı 0 ya da 1 olmalı"
-#: config/rs6000/rs6000-c.c:68
+#: config/rs6000/rs6000-c.c:69
msgid "junk at end of #pragma longcall"
msgstr "'#pragma longcall' sonunda karışıklık"
-#: config/rs6000/rs6000.c:592
+#: config/rs6000/rs6000.c:793
msgid "-mmultiple is not supported on little endian systems"
msgstr "-mmultiple küçük ilkli bayt sıralaması kullanılan sistemlerde desteklenmez"
-#: config/rs6000/rs6000.c:599
+#: config/rs6000/rs6000.c:800
msgid "-mstring is not supported on little endian systems"
msgstr "-mstring küçük ilkli bayt sıralaması kullanılan sistemlerde desteklenmez"
-#: config/rs6000/rs6000.c:623
+#: config/rs6000/rs6000.c:814
#, c-format
msgid "unknown -mdebug-%s switch"
msgstr "-mdebug-%s seçeneği bilinmiyor"
-#: config/rs6000/rs6000.c:635
+#: config/rs6000/rs6000.c:826
#, c-format
msgid "unknown -mtraceback arg `%s'; expecting `full', `partial' or `none'"
msgstr "-mtraceback ile verilen `%s' bilinmiyor; `full', `partial' ya da `none' olabilir"
-#: config/rs6000/rs6000.c:646
+#: config/rs6000/rs6000.c:837
#, c-format
msgid "Unknown switch -mlong-double-%s"
msgstr "-mlong-double-%s seçeneği bilinmiyor"
-#: config/rs6000/rs6000.c:738
-#, c-format
-msgid "unknown -misel= option specified: '%s'"
+#: config/rs6000/rs6000.c:1008
+#, fuzzy, c-format
+msgid "unknown -m%s= option specified: '%s'"
msgstr "bilinmeyen -misel= seçeneği belirtilmiş: '%s'"
-#: config/rs6000/rs6000.c:753
+#: config/rs6000/rs6000.c:1025
#, c-format
-msgid "unknown -mvrsave= option specified: '%s'"
-msgstr "bilinmeyen -mvrsave= seçeneği belirtilmiş: '%s'"
+msgid "not configured for ABI: '%s'"
+msgstr ""
-#: config/rs6000/rs6000.c:772
+#: config/rs6000/rs6000.c:1031
#, c-format
msgid "unknown ABI specified: '%s'"
msgstr "bilinmeyen ABI belirtilmiÅŸ: '%s'"
-#: config/rs6000/rs6000.c:4206
+#: config/rs6000/rs6000.c:1045
+#, fuzzy, c-format
+msgid "unknown -malign-XXXXX option specified: '%s'"
+msgstr "bilinmeyen -misel= seçeneği belirtilmiş: '%s'"
+
+#: config/rs6000/rs6000.c:5358
msgid "argument 1 must be a 5-bit signed literal"
msgstr "1. argüman 5 bitlik bir işaretli sabit olmalı"
-#: config/rs6000/rs6000.c:4313 config/rs6000/rs6000.c:4903
+#: config/rs6000/rs6000.c:5460 config/rs6000/rs6000.c:6083
msgid "argument 2 must be a 5-bit unsigned literal"
msgstr "2. argüman 5 bitlik bir işaretsiz sabit olmalı"
-#: config/rs6000/rs6000.c:4356
+#: config/rs6000/rs6000.c:5500
msgid "argument 1 of __builtin_altivec_predicate must be a constant"
msgstr "`__builtin_altivec_predicate'in 1. argümanı bir sabit olmalı"
-#: config/rs6000/rs6000.c:4410
+#: config/rs6000/rs6000.c:5554
msgid "argument 1 of __builtin_altivec_predicate is out of range"
msgstr "`__builtin_altivec_predicate'in 1. argümanı kapsamdışı"
-#: config/rs6000/rs6000.c:4489
+#: config/rs6000/rs6000.c:5682
msgid "argument 3 must be a 4-bit unsigned literal"
msgstr "3. argüman 4 bitlik bir işaretsiz sabit olmalı"
-#: config/rs6000/rs6000.c:4666
+#: config/rs6000/rs6000.c:5852
#, c-format
msgid "argument to `%s' must be a 2-bit unsigned literal"
msgstr "`%s' argümanı 2 bitlik işaretsiz bir sabit olmalı"
-#: config/rs6000/rs6000.c:4782
+#: config/rs6000/rs6000.c:5965
msgid "argument to dss must be a 2-bit unsigned literal"
msgstr "dss argümanı 2 bitlik işaretsiz bir sabit olmalı"
-#: config/rs6000/rs6000.c:5013
+#: config/rs6000/rs6000.c:6203
msgid "argument 1 of __builtin_spe_predicate must be a constant"
msgstr "__builtin_spe_predicate'in 1. argümanı bir sabit olmalı"
-#: config/rs6000/rs6000.c:5086
+#: config/rs6000/rs6000.c:6276
msgid "argument 1 of __builtin_spe_predicate is out of range"
msgstr "__builtin_spe_predicate'in 1. argümanı kapsamdışı"
-#: config/rs6000/rs6000.c:7511
+#: config/rs6000/rs6000.c:8711
#, c-format
msgid "invalid %%f value"
msgstr "%%f değeri geçersiz"
-#: config/rs6000/rs6000.c:7520
+#: config/rs6000/rs6000.c:8720
#, c-format
msgid "invalid %%F value"
msgstr "%%F değeri geçersiz"
-#: config/rs6000/rs6000.c:7529
+#: config/rs6000/rs6000.c:8729
#, c-format
msgid "invalid %%G value"
msgstr "%%G değeri geçersiz"
-#: config/rs6000/rs6000.c:7564
+#: config/rs6000/rs6000.c:8764
#, c-format
msgid "invalid %%j code"
msgstr "%%j kodu geçersiz"
-#: config/rs6000/rs6000.c:7574
+#: config/rs6000/rs6000.c:8774
#, c-format
msgid "invalid %%J code"
msgstr "%%J kodu geçersiz"
-#: config/rs6000/rs6000.c:7604
+#: config/rs6000/rs6000.c:8784
+#, c-format
+msgid "invalid %%k value"
+msgstr "%%k değeri geçersiz"
+
+#: config/rs6000/rs6000.c:8804 config/xtensa/xtensa.c:1985
#, c-format
msgid "invalid %%K value"
msgstr "%%K değeri geçersiz"
-#: config/rs6000/rs6000.c:7671
+#: config/rs6000/rs6000.c:8871
#, c-format
msgid "invalid %%O value"
msgstr "%%O değeri geçersiz"
-#: config/rs6000/rs6000.c:7793
+#: config/rs6000/rs6000.c:8918
+#, c-format
+msgid "invalid %%q value"
+msgstr "%%q değeri geçersiz"
+
+#: config/rs6000/rs6000.c:8962
+#, c-format
+msgid "invalid %%S value"
+msgstr "%%S değeri geçersiz"
+
+#: config/rs6000/rs6000.c:9004
#, c-format
msgid "invalid %%T value"
msgstr "%%T değeri geçersiz"
-#: config/rs6000/rs6000.c:7803
+#: config/rs6000/rs6000.c:9014
#, c-format
msgid "invalid %%u value"
msgstr "%%u değeri geçersiz"
-#: config/rs6000/rs6000.c:7812
+#: config/rs6000/rs6000.c:9023 config/xtensa/xtensa.c:1955
#, c-format
msgid "invalid %%v value"
msgstr "%%v değeri geçersiz"
-#: config/rs6000/rs6000.c:12242
+#: config/rs6000/rs6000.c:13513
msgid "no profiling of 64-bit code for this ABI"
msgstr "bu ABI için 64 bitlik profilleme kodu yok"
-#: config/rs6000/aix.h:160 config/rs6000/beos.h:32
+#: config/rs6000/aix.h:184 config/rs6000/beos.h:32
msgid "Always pass floating-point arguments in memory"
msgstr "Bellekteki kayan noktalı argümanlar daima aktarılır"
-#: config/rs6000/aix.h:162 config/rs6000/beos.h:34
+#: config/rs6000/aix.h:186 config/rs6000/beos.h:34
msgid "Don't always pass floating-point arguments in memory"
msgstr "Bellekteki kayan noktalı argümanlar daima aktarılmaz"
-#: config/rs6000/aix41.h:28 config/rs6000/aix43.h:32 config/rs6000/aix51.h:32
-#: config/rs6000/aix52.h:32
+#: config/rs6000/aix41.h:27 config/rs6000/aix43.h:31 config/rs6000/aix51.h:31
+#: config/rs6000/aix52.h:31
msgid "Support message passing with the Parallel Environment"
msgstr "Eşzamanlı Ortam ile ileti aktarımı desteklenir"
-#: config/rs6000/aix43.h:28 config/rs6000/aix51.h:28 config/rs6000/aix52.h:28
+#: config/rs6000/aix43.h:27 config/rs6000/aix51.h:27 config/rs6000/aix52.h:27
msgid "Compile for 64-bit pointers"
msgstr "64 bit göstericiler için derleme yapılır"
-#: config/rs6000/aix43.h:30 config/rs6000/aix51.h:30 config/rs6000/aix52.h:30
+#: config/rs6000/aix43.h:29 config/rs6000/aix51.h:29 config/rs6000/aix52.h:29
msgid "Compile for 32-bit pointers"
msgstr "32 bit göstericiler için derleme yapılır"
-#: config/rs6000/aix43.h:49 config/rs6000/aix51.h:49 config/rs6000/aix52.h:49
+#: config/rs6000/aix43.h:48 config/rs6000/aix51.h:48 config/rs6000/aix52.h:48
msgid "-maix64 and POWER architecture are incompatible"
msgstr "-maix64 ile POWER mimarisi uyumsuz"
-#: config/rs6000/aix43.h:54 config/rs6000/aix51.h:54 config/rs6000/aix52.h:54
+#: config/rs6000/aix43.h:53 config/rs6000/aix51.h:53 config/rs6000/aix52.h:53
msgid "-maix64 requires PowerPC64 architecture remain enabled"
msgstr "-maix64 seçeneği PowerPC64 mimarisinin etkin kalmasını gerektirir"
-#: config/rs6000/aix43.h:58 config/rs6000/aix51.h:58 config/rs6000/aix52.h:58
+#: config/rs6000/aix43.h:57 config/rs6000/aix51.h:57 config/rs6000/aix52.h:57
msgid "-maix64 required: 64-bit computation with 32-bit addressing not yet supported"
msgstr "-maix64 gereksinimi: 32 bit adreslemeli 64 bit hesaplama henüz desteklenmiyor."
+#: config/rs6000/darwin.h:64
+msgid "Generate code suitable for executables (NOT shared libs)"
+msgstr ""
+
+#. The Darwin ABI always includes AltiVec, can't be (validly) turned
+#. off.
+#: config/rs6000/darwin.h:80
+msgid "-mdynamic-no-pic overrides -fpic or -fPIC"
+msgstr ""
+
+#. Darwin doesn't support -fpic.
+#: config/rs6000/darwin.h:86
+#, fuzzy
+msgid "-fpic is not supported; -fPIC assumed"
+msgstr "-pipe desteklenmiyor."
+
+#: config/rs6000/linux64.h:96
+#, fuzzy
+msgid "-m64 requires a PowerPC64 cpu"
+msgstr "-maix64 seçeneği PowerPC64 mimarisinin etkin kalmasını gerektirir"
+
+#: config/rs6000/linux64.h:201
+#, fuzzy
+msgid "Call mcount for profiling before a function prologue"
+msgstr "Komutlar bir işlevin önbilgisine taşınmaz"
+
+#: config/rs6000/linux64.h:203
+#, fuzzy
+msgid "Call mcount for profiling after a function prologue"
+msgstr "Komutlar bir işlevin önbilgisine taşınmaz"
+
#. Run-time compilation parameters selecting different hardware subsets.
#.
#. Macro to define tables used to set the flags.
@@ -12823,162 +12146,211 @@ msgstr "-maix64 gereksinimi: 32 bit adreslemeli 64 bit hesaplama henüz destekle
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/rs6000/rs6000.h:240
+#: config/rs6000/rs6000.h:262
msgid "Use POWER instruction set"
msgstr "POWER komut kümesi kullanılır"
-#: config/rs6000/rs6000.h:243
+#: config/rs6000/rs6000.h:265
msgid "Use POWER2 instruction set"
msgstr "POWER2 komut kümesi kullanılır"
-#: config/rs6000/rs6000.h:245
+#: config/rs6000/rs6000.h:267
msgid "Do not use POWER2 instruction set"
msgstr "POWER2 komut kümesi kullanılmaz"
-#: config/rs6000/rs6000.h:248
+#: config/rs6000/rs6000.h:270
msgid "Do not use POWER instruction set"
msgstr "POWER komut kümesi kullanılmaz"
-#: config/rs6000/rs6000.h:250
+#: config/rs6000/rs6000.h:272
msgid "Use PowerPC instruction set"
msgstr "PowerPC komut kümesi kullanılır"
-#: config/rs6000/rs6000.h:253
+#: config/rs6000/rs6000.h:275
msgid "Do not use PowerPC instruction set"
msgstr "PowerPC komut kümesi kullanılmaz"
-#: config/rs6000/rs6000.h:255
+#: config/rs6000/rs6000.h:277
msgid "Use PowerPC General Purpose group optional instructions"
msgstr "PowerPC Genel Kullanım grubu seçimlik komutları kullanılır"
-#: config/rs6000/rs6000.h:257
-msgid "Don't use PowerPC General Purpose group optional instructions"
+#: config/rs6000/rs6000.h:279
+#, fuzzy
+msgid "Do not use PowerPC General Purpose group optional instructions"
msgstr "PowerPC Genel Kullanım grubu seçimlik komutları kullanılmaz"
-#: config/rs6000/rs6000.h:259
+#: config/rs6000/rs6000.h:281
msgid "Use PowerPC Graphics group optional instructions"
msgstr "PowerPC Graphics grubu seçimlik komutları kullanılır"
-#: config/rs6000/rs6000.h:261
-msgid "Don't use PowerPC Graphics group optional instructions"
+#: config/rs6000/rs6000.h:283
+#, fuzzy
+msgid "Do not use PowerPC Graphics group optional instructions"
msgstr "PowerPC Graphics grubu seçimlik komutları kullanılmaz"
-#: config/rs6000/rs6000.h:263
+#: config/rs6000/rs6000.h:285
msgid "Use PowerPC-64 instruction set"
msgstr "PowerPC-64 komut kümesi kullanılır"
-#: config/rs6000/rs6000.h:265
-msgid "Don't use PowerPC-64 instruction set"
+#: config/rs6000/rs6000.h:287
+#, fuzzy
+msgid "Do not use PowerPC-64 instruction set"
msgstr "PowerPC-64 komut kümesi kullanılmaz"
-#: config/rs6000/rs6000.h:267
+#: config/rs6000/rs6000.h:289
msgid "Use AltiVec instructions"
msgstr "AltiVec komutları kullanılır"
-#: config/rs6000/rs6000.h:269
-msgid "Don't use AltiVec instructions"
+#: config/rs6000/rs6000.h:291
+#, fuzzy
+msgid "Do not use AltiVec instructions"
msgstr "AltiVec komutları kullanılmaz"
-#: config/rs6000/rs6000.h:271
+#: config/rs6000/rs6000.h:293
msgid "Use new mnemonics for PowerPC architecture"
msgstr "PowerPC mimarisi için yeni semboller kullanılır"
-#: config/rs6000/rs6000.h:273
+#: config/rs6000/rs6000.h:295
msgid "Use old mnemonics for PowerPC architecture"
msgstr "PowerPC mimarisi için eski semboller kullanılır"
-#: config/rs6000/rs6000.h:276
+#: config/rs6000/rs6000.h:298
msgid "Put everything in the regular TOC"
msgstr "HerÅŸeyi normal TOC'a koyar"
-#: config/rs6000/rs6000.h:278
+#: config/rs6000/rs6000.h:300
msgid "Place floating point constants in TOC"
msgstr "Kayan noktalı sabitleri TOC'a koyar"
-#: config/rs6000/rs6000.h:280
-msgid "Don't place floating point constants in TOC"
+#: config/rs6000/rs6000.h:302
+#, fuzzy
+msgid "Do not place floating point constants in TOC"
msgstr "Kayan noktalı sabitleri TOC'a koymaz"
-#: config/rs6000/rs6000.h:282
+#: config/rs6000/rs6000.h:304
msgid "Place symbol+offset constants in TOC"
msgstr "Sembol+göreli sabitleri TOC'a koyar"
-#: config/rs6000/rs6000.h:284
-msgid "Don't place symbol+offset constants in TOC"
+#: config/rs6000/rs6000.h:306
+#, fuzzy
+msgid "Do not place symbol+offset constants in TOC"
msgstr "Sembol+göreli sabitleri TOC'a koymaz"
-#: config/rs6000/rs6000.h:290
+#: config/rs6000/rs6000.h:312
msgid "Place variable addresses in the regular TOC"
msgstr "DeÄŸiÅŸken adresleri normal TOC'a koyar"
-#: config/rs6000/rs6000.h:296
+#: config/rs6000/rs6000.h:318
msgid "Generate load/store multiple instructions"
msgstr "Yükleme/saklama çoklu komutları üretilir"
-#: config/rs6000/rs6000.h:298
+#: config/rs6000/rs6000.h:320
msgid "Do not generate load/store multiple instructions"
msgstr "Yükleme/saklama çoklu komutları üretilmez"
-#: config/rs6000/rs6000.h:302
+#: config/rs6000/rs6000.h:322
msgid "Generate string instructions for block moves"
msgstr "Blok taşımalar için dizge komutları üretilir"
-#: config/rs6000/rs6000.h:304
+#: config/rs6000/rs6000.h:324
msgid "Do not generate string instructions for block moves"
msgstr "Blok taşımalar için dizge komutları üretilmez"
-#: config/rs6000/rs6000.h:308
+#: config/rs6000/rs6000.h:326
msgid "Generate load/store with update instructions"
msgstr "Güncelleme komutlu yükleme/saklama üretilir"
-#: config/rs6000/rs6000.h:310
+#: config/rs6000/rs6000.h:328
msgid "Do not generate load/store with update instructions"
msgstr "Güncelleme komutlu yükleme/saklama üretilmez"
-#: config/rs6000/rs6000.h:318
-msgid "Don't schedule the start and end of the procedure"
+#: config/rs6000/rs6000.h:332
+#, fuzzy
+msgid "Do not generate fused multiply/add instructions"
+msgstr "Birleşik çarpma/toplama komutları üretilmez"
+
+#: config/rs6000/rs6000.h:336
+#, fuzzy
+msgid "Do not schedule the start and end of the procedure"
msgstr "Altyordamın başlangıç ve bitişi zamanlanmaz"
-#: config/rs6000/rs6000.h:324
+#: config/rs6000/rs6000.h:342
msgid "Return all structures in memory (AIX default)"
msgstr "Bellekteki tüm veri yapıları döndürülür (AIX öntanımlı)"
-#: config/rs6000/rs6000.h:326
+#: config/rs6000/rs6000.h:344
msgid "Return small structures in registers (SVR4 default)"
msgstr "Yazmaçlardaki küçük veri yapıları döndürülür(SVR4 öntanımlı)"
-#: config/rs6000/rs6000.h:391 config/sparc/sparc.h:633
+#: config/rs6000/rs6000.h:350
+#, fuzzy
+msgid "Generate single field mfcr instruction"
+msgstr "char komutları üretilir"
+
+#: config/rs6000/rs6000.h:352
+#, fuzzy
+msgid "Do not generate single field mfcr instruction"
+msgstr "char komutları üretilmez"
+
+#: config/rs6000/rs6000.h:435 config/sparc/sparc.h:648
msgid "Use features of and schedule code for given CPU"
msgstr "Verilen MİB'nin özellikleri ve zamanlama kodu kullanılır"
-#: config/rs6000/rs6000.h:394
+#: config/rs6000/rs6000.h:438
msgid "Enable debug output"
msgstr "Hata ayıklamalı çıktıyı etkinleştir"
-#: config/rs6000/rs6000.h:396
+#: config/rs6000/rs6000.h:440
msgid "Select full, part, or no traceback table"
msgstr "Ya full, part seçilir ya da hiçbir traceback tablosu seçilmez"
-#: config/rs6000/rs6000.h:397
+#: config/rs6000/rs6000.h:441
msgid "Specify ABI to use"
msgstr "Kullanılacak ABI belirtilir"
-#: config/rs6000/rs6000.h:399
+#: config/rs6000/rs6000.h:443
msgid "Specify size of long double (64 or 128 bits)"
msgstr "long double için boyut belirtilir (64 ya da 128 bit)"
-#: config/rs6000/rs6000.h:401
+#: config/rs6000/rs6000.h:445
msgid "Specify yes/no if isel instructions should be generated"
msgstr "isel komutlarının üretilmesi gerekiyorsa yes/no belirtilir"
-#: config/rs6000/rs6000.h:403
+#: config/rs6000/rs6000.h:447
+#, fuzzy
+msgid "Specify yes/no if SPE SIMD instructions should be generated"
+msgstr "isel komutlarının üretilmesi gerekiyorsa yes/no belirtilir"
+
+#: config/rs6000/rs6000.h:449
+#, fuzzy
+msgid "Specify yes/no if using floating point in the GPRs"
+msgstr "Kayan nokta emülatörünün sürümü belirtilir"
+
+#: config/rs6000/rs6000.h:451
msgid "Specify yes/no if VRSAVE instructions should be generated for AltiVec"
msgstr "VRSAVE komutlarının AltiVec için üretilmesi gerekiyorsa yes/no belirtilir"
-#: config/rs6000/rs6000.h:405
+#: config/rs6000/rs6000.h:453
msgid "Avoid all range limits on call instructions"
msgstr "Çağrı komutlarında tüm kapsam sınırları engellenir"
+#: config/rs6000/rs6000.h:456
+msgid "Determine which dependences between insns are considered costly"
+msgstr ""
+
+#: config/rs6000/rs6000.h:458
+msgid "Specify which post scheduling nop insertion scheme to apply"
+msgstr ""
+
+#: config/rs6000/rs6000.h:460
+#, fuzzy
+msgid "Specify alignment of structure fields default/natural"
+msgstr "Yapıların en küçük bit hizalaması belirtilir"
+
+#: config/rs6000/rs6000.h:462
+msgid "Specify scheduling priority for dispatch slot restricted insns"
+msgstr ""
+
#. Definitions for __builtin_return_address and __builtin_frame_address.
#. __builtin_return_address (0) should give link register (65), enable
#. this.
@@ -12991,7 +12363,7 @@ msgstr "Çağrı komutlarında tüm kapsam sınırları engellenir"
#. Number of bytes into the frame return addresses can be found. See
#. rs6000_stack_info in rs6000.c for more information on how the different
#. abi's store the return address.
-#: config/rs6000/rs6000.h:1884
+#: config/rs6000/rs6000.h:1926
msgid "RETURN_ADDRESS_OFFSET not supported"
msgstr "RETURN_ADDRESS_OFFSET desteklenmiyor"
@@ -13003,91 +12375,100 @@ msgstr "ABI çağrı uzlaşımı seçilir"
msgid "Select method for sdata handling"
msgstr "sdata eldesi için yöntem seçilir"
-#: config/rs6000/sysv4.h:103
+#: config/rs6000/sysv4.h:100
msgid "Align to the base type of the bit-field"
msgstr "Bit alanı taban türüne hizalama yapılır"
-#: config/rs6000/sysv4.h:105
+#: config/rs6000/sysv4.h:102
msgid "Don't align to the base type of the bit-field"
msgstr "Bit alanı taban türüne hizalama yapılmaz"
-#: config/rs6000/sysv4.h:107
+#: config/rs6000/sysv4.h:104
msgid "Don't assume that unaligned accesses are handled by the system"
msgstr "Hizasız erişimlerin sistem tarafından yapıldığı varsayılmaz"
-#: config/rs6000/sysv4.h:109
+#: config/rs6000/sysv4.h:106
msgid "Assume that unaligned accesses are handled by the system"
msgstr "Hizasız erişimlerin sistem tarafından yapıldığı varsayılır"
-#: config/rs6000/sysv4.h:111 config/rs6000/sysv4.h:115
+#: config/rs6000/sysv4.h:108 config/rs6000/sysv4.h:112
msgid "Produce code relocatable at runtime"
msgstr "Çalışma anında kod yer değiştirilebilirliği sağlanır"
-#: config/rs6000/sysv4.h:113 config/rs6000/sysv4.h:117
+#: config/rs6000/sysv4.h:110 config/rs6000/sysv4.h:114
msgid "Don't produce code relocatable at runtime"
msgstr "Çalışma anında kod yer değiştirilebilirliği sağlanmaz"
-#: config/rs6000/sysv4.h:119 config/rs6000/sysv4.h:121
+#: config/rs6000/sysv4.h:116 config/rs6000/sysv4.h:118
msgid "Produce little endian code"
msgstr "Küçüğü başta kod üretilir"
-#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:125
+#: config/rs6000/sysv4.h:120 config/rs6000/sysv4.h:122
msgid "Produce big endian code"
msgstr "Büyüğü başta kod üretilir"
-#: config/rs6000/sysv4.h:126 config/rs6000/sysv4.h:127
-#: config/rs6000/sysv4.h:128 config/rs6000/sysv4.h:129
-#: config/rs6000/sysv4.h:130 config/rs6000/sysv4.h:131
-#: config/rs6000/sysv4.h:141 config/rs6000/sysv4.h:142
-#: config/rs6000/sysv4.h:153 config/rs6000/sysv4.h:155
-#: config/rs6000/sysv4.h:157
+#: config/rs6000/sysv4.h:123 config/rs6000/sysv4.h:124
+#: config/rs6000/sysv4.h:125 config/rs6000/sysv4.h:126
+#: config/rs6000/sysv4.h:127 config/rs6000/sysv4.h:128
+#: config/rs6000/sysv4.h:138 config/rs6000/sysv4.h:139
+#: config/rs6000/sysv4.h:151 config/rs6000/sysv4.h:157
msgid "no description yet"
msgstr "henüz bir açıklama yok"
-#: config/rs6000/sysv4.h:132
+#: config/rs6000/sysv4.h:129
msgid "Use EABI"
msgstr "EABI kullanılır"
-#: config/rs6000/sysv4.h:133
+#: config/rs6000/sysv4.h:130
msgid "Don't use EABI"
msgstr "EABI kullanılmaz"
-#: config/rs6000/sysv4.h:136
+#: config/rs6000/sysv4.h:133
msgid "Do not allow bit-fields to cross word boundaries"
msgstr "word sınırlarına karşı düşen bit alanlarına izin verilmez"
-#: config/rs6000/sysv4.h:138
+#: config/rs6000/sysv4.h:135
msgid "Use alternate register names"
msgstr "Alternatif yazmaç isimleri kullanılır"
-#: config/rs6000/sysv4.h:140
+#: config/rs6000/sysv4.h:137
msgid "Don't use alternate register names"
msgstr "Alternatif yazmaç isimleri kullanılmaz"
-#: config/rs6000/sysv4.h:144
+#: config/rs6000/sysv4.h:141
msgid "Link with libsim.a, libc.a and sim-crt0.o"
msgstr "libsim.a, libc.a ve sim-crt0.o ile ilintiler"
-#: config/rs6000/sysv4.h:146
+#: config/rs6000/sysv4.h:143
msgid "Link with libads.a, libc.a and crt0.o"
msgstr "libads.a, libc.a ve crt0.o ile ilintiler"
-#: config/rs6000/sysv4.h:148
+#: config/rs6000/sysv4.h:145
msgid "Link with libyk.a, libc.a and crt0.o"
msgstr "libyk.a, libc.a ve crt0.o ile ilintiler"
-#: config/rs6000/sysv4.h:150
+#: config/rs6000/sysv4.h:147
msgid "Link with libmvme.a, libc.a and crt0.o"
msgstr "libmvme.a, libc.a ve crt0.o ile ilintiler"
-#: config/rs6000/sysv4.h:152
+#: config/rs6000/sysv4.h:149
msgid "Set the PPC_EMB bit in the ELF flags header"
msgstr "ELF seçenekleri başlığı içindeki PPC_EMB bitini 1 yapar"
-#: config/rs6000/sysv4.h:154
+#: config/rs6000/sysv4.h:150
msgid "Use the WindISS simulator"
msgstr "WindISS benzeticisi kullanılır"
+#: config/rs6000/sysv4.h:153
+#, fuzzy
+msgid "Generate 64-bit code"
+msgstr "64bit x86-64 kodu üretilir"
+
+#: config/rs6000/sysv4.h:155
+#, fuzzy
+msgid "Generate 32-bit code"
+msgstr "32bit i386 kodu üretilir"
+
#. Sometimes certain combinations of command options do not make sense
#. on a particular target machine. You can define a macro
#. `OVERRIDE_OPTIONS' to take account of this. This macro, if
@@ -13111,362 +12492,437 @@ msgstr "-msdata=%s için değer hatalı"
msgid "-mrelocatable and -msdata=%s are incompatible"
msgstr "-mrelocatable ile -msdata=%s uyumsuz."
-#: config/rs6000/sysv4.h:255
+#: config/rs6000/sysv4.h:256
#, c-format
msgid "-f%s and -msdata=%s are incompatible"
msgstr "-f%s ile -msdata=%s uyumsuz."
-#: config/rs6000/sysv4.h:264
+#: config/rs6000/sysv4.h:265
#, c-format
msgid "-msdata=%s and -mcall-%s are incompatible"
msgstr "-msdata=%s ile -mcall-%s uyumsuz."
-#: config/rs6000/sysv4.h:273
+#: config/rs6000/sysv4.h:274
msgid "-mrelocatable and -mno-minimal-toc are incompatible"
msgstr "-mrelocatable ile -mno-minimal-toc uyumsuz."
-#: config/rs6000/sysv4.h:279
+#: config/rs6000/sysv4.h:280
#, c-format
msgid "-mrelocatable and -mcall-%s are incompatible"
msgstr "-mrelocatable ile -mcall-%s uyumsuz."
-#: config/rs6000/sysv4.h:286
+#: config/rs6000/sysv4.h:287
#, c-format
msgid "-fPIC and -mcall-%s are incompatible"
msgstr "-fPIC ile -mcall-%s uyumsuz."
-#: config/rs6000/sysv4.h:293
+#: config/rs6000/sysv4.h:294
msgid "-mcall-aixdesc must be big endian"
msgstr "-mcall-aixdesc «big endian» olmalı"
-#: config/s390/s390.c:3063
+#: config/rs6000/sysv4.h:309
+#, fuzzy, c-format
+msgid "-m%s not supported in this configuration"
+msgstr "%s bu yapılandırma ile desteklenmiyor"
+
+#: config/s390/s390.c:926
+#, fuzzy, c-format
+msgid "Unknown cpu used in -march=%s."
+msgstr "Bilinmeyen iÅŸlemci: -mcpu=%s"
+
+#: config/s390/s390.c:945
+#, fuzzy, c-format
+msgid "Unknown cpu used in -mtune=%s."
+msgstr "Bilinmeyen iÅŸlemci: -mcpu=%s"
+
+#: config/s390/s390.c:950
+#, fuzzy, c-format
+msgid "z/Architecture mode not supported on %s."
+msgstr "Unicos/Mk üzerinde yakalama kipi desteklenmiyor"
+
+#: config/s390/s390.c:952
+#, fuzzy
+msgid "64-bit ABI not supported in ESA/390 mode."
+msgstr "PIC kipinde %s kod modeli desteklenmiyor"
+
+#: config/s390/s390.c:3337
msgid "invalid UNSPEC as operand (1)"
msgstr "terim (1) olarak UNSPEC geçersiz"
-#: config/s390/s390.c:3123
+#: config/s390/s390.c:3385
msgid "invalid UNSPEC as operand (2)"
msgstr "terim (2) olarak UNSPEC geçersiz"
-#: config/s390/s390.c:3129
+#: config/s390/s390.c:3391
msgid "UNKNOWN in s390_output_symbolic_const !?"
msgstr "s390_output_symbolic_const da BÄ°LÄ°NMEYEN!?"
-#: config/s390/s390.c:3147
+#: config/s390/s390.c:3407
msgid "Cannot decompose address."
msgstr "Adres çözümlenemez"
-#: config/s390/s390.c:3308
+#: config/s390/s390.c:3578
msgid "UNKNOWN in print_operand !?"
msgstr "print_operand da BÄ°LÄ°NMEYEN !?"
-#: config/s390/s390.c:4961
+#: config/s390/s390.c:5301
msgid "Total size of local variables exceeds architecture limit."
msgstr "Yerel değişkenlerin toplam boyutu mimarinin izin verdiği sınırı aşıyor."
-#: config/s390/s390.h:70
+#: config/s390/s390.h:126
msgid "Set backchain"
msgstr "Backchain ayarlanır"
-#: config/s390/s390.h:71
+#: config/s390/s390.h:127
msgid "Don't set backchain (faster, but debug harder"
msgstr "Backchain ayarlanmaz (daha hızlı ama hata ayıklamak daha zor"
-#: config/s390/s390.h:72
+#: config/s390/s390.h:128
msgid "Use bras for executable < 64k"
msgstr "64k dan küçük çalıştırılabilirler için bras kullanılır"
-#: config/s390/s390.h:73
+#: config/s390/s390.h:129
msgid "Don't use bras"
msgstr "bras kullanılmaz"
-#: config/s390/s390.h:74
+#: config/s390/s390.h:130
msgid "Additional debug prints"
msgstr "Ek hata ayıklama iletileri çıktılar"
-#: config/s390/s390.h:75
+#: config/s390/s390.h:131
msgid "Don't print additional debug prints"
msgstr "Ek hata ayıklama bilgisi verilmez"
-#: config/s390/s390.h:76
-msgid "64 bit mode"
-msgstr "64 bitlik kip"
+#: config/s390/s390.h:132
+#, fuzzy
+msgid "64 bit ABI"
+msgstr "64-bit ABI kullanılır"
-#: config/s390/s390.h:77
-msgid "31 bit mode"
-msgstr "31 bitlik kip"
+#: config/s390/s390.h:133
+#, fuzzy
+msgid "31 bit ABI"
+msgstr "64-bit ABI kullanılır"
-#: config/s390/s390.h:78
+#: config/s390/s390.h:134
+msgid "z/Architecture"
+msgstr ""
+
+#: config/s390/s390.h:135
+msgid "ESA/390 architecture"
+msgstr ""
+
+#: config/s390/s390.h:136
msgid "mvcle use"
msgstr "mvcle kullanımı"
-#: config/s390/s390.h:79
+#: config/s390/s390.h:137
msgid "mvc&ex"
msgstr "mvc&ex"
-#: config/sh/sh.c:5137
+#: config/s390/s390.h:138
+#, fuzzy
+msgid "enable tpf OS code"
+msgstr "SA kodu üretilir"
+
+#: config/s390/s390.h:139
+msgid "disable tpf OS code"
+msgstr ""
+
+#: config/s390/s390.h:140
+#, fuzzy
+msgid "disable fused multiply/add instructions"
+msgstr "Birleşik çarpma/toplama komutları üretilir"
+
+#: config/s390/s390.h:141
+#, fuzzy
+msgid "enable fused multiply/add instructions"
+msgstr "Birleşik çarpma/toplama komutları üretilir"
+
+#: config/sh/sh.c:5841
msgid "__builtin_saveregs not supported by this subtarget"
msgstr "__builtin_saveregs bu alt hedef tarafından desteklenmiyor"
-#: config/sh/sh.c:5687
+#: config/sh/sh.c:6743
msgid "attribute interrupt_handler is not compatible with -m5-compact"
msgstr "özellik kesme yakalayıcı -m5-compact ile uyumlu değil"
#. The sp_switch attribute only has meaning for interrupt functions.
-#: config/sh/sh.c:5713 config/sh/sh.c:5752
+#. The trap_exit attribute only has meaning for interrupt functions.
+#: config/sh/sh.c:6765 config/sh/sh.c:6800
#, c-format
msgid "`%s' attribute only applies to interrupt functions"
msgstr "`%s' özniteliği sadece sistem kesmesi işlevlerine uygulanır"
#. The argument must be a constant string.
-#: config/sh/sh.c:5720
+#: config/sh/sh.c:6772
#, c-format
msgid "`%s' attribute argument not a string constant"
msgstr "`%s' öznitelik argümanı bir dizge sabit değil"
#. The argument must be a constant integer.
-#: config/sh/sh.c:5759
+#: config/sh/sh.c:6807
#, c-format
msgid "`%s' attribute argument not an integer constant"
msgstr "`%s' öznitelik argümanı bir tamsayı sabit değil"
#. There are no delay slots on SHmedia.
#. Relaxation isn't yet supported for SHmedia
-#: config/sh/sh.h:437
+#. -fprofile-arcs needs a working libgcov . In unified tree configurations with newlib, this requires to configure with --with-newlib --with-headers. But there is no way to check here we have a working libgcov, so just assume that we have.
+#: config/sh/sh.h:478
msgid "Profiling is not supported on this target."
msgstr "Ayrımsama bu hedefte desteklenmiyor."
-#: config/sparc/sparc.c:329
+#: config/sparc/sparc.c:360
#, c-format
msgid "%s is not supported by this configuration"
msgstr "%s bu yapılandırma ile desteklenmiyor"
-#: config/sparc/sparc.c:336
+#: config/sparc/sparc.c:367
msgid "-mlong-double-64 not allowed with -m64"
msgstr "-mlong-double-64 ile -m64 birarada izin verilmez"
-#: config/sparc/sparc.c:361
+#: config/sparc/sparc.c:392
msgid "-mcmodel= is not supported on 32 bit systems"
msgstr "`-mcmodel=' 32bit sistemlerde desteklenmiyor"
-#: config/sparc/sparc.c:6341 config/sparc/sparc.c:6347
+#: config/sparc/sparc.c:6793 config/sparc/sparc.c:6799
#, c-format
msgid "invalid %%Y operand"
msgstr "geçersiz %%Y terimi"
-#: config/sparc/sparc.c:6417
+#: config/sparc/sparc.c:6869
#, c-format
msgid "invalid %%A operand"
msgstr "geçersiz %%A terimi"
-#: config/sparc/sparc.c:6427
+#: config/sparc/sparc.c:6879
#, c-format
msgid "invalid %%B operand"
msgstr "geçersiz %%B terimi"
-#: config/sparc/sparc.c:6466
+#: config/sparc/sparc.c:6918
#, c-format
msgid "invalid %%c operand"
msgstr "geçersiz %%c terimi"
-#: config/sparc/sparc.c:6467
+#: config/sparc/sparc.c:6919
#, c-format
msgid "invalid %%C operand"
msgstr "geçersiz %%C terimi"
-#: config/sparc/sparc.c:6488
+#: config/sparc/sparc.c:6940
#, c-format
msgid "invalid %%d operand"
msgstr "geçersiz %%d terimi"
-#: config/sparc/sparc.c:6489
+#: config/sparc/sparc.c:6941
#, c-format
msgid "invalid %%D operand"
msgstr "geçersiz %%D terimi"
-#: config/sparc/sparc.c:6505
+#: config/sparc/sparc.c:6957
#, c-format
msgid "invalid %%f operand"
msgstr "geçersiz %%f terimi"
-#: config/sparc/sparc.c:6519
+#: config/sparc/sparc.c:6971
#, c-format
msgid "invalid %%s operand"
msgstr "geçersiz %%s terimi"
-#: config/sparc/sparc.c:6573
+#: config/sparc/sparc.c:7025
msgid "long long constant not a valid immediate operand"
msgstr "long long sabit geçerli bir anlık terim değil"
-#: config/sparc/sparc.c:6576
+#: config/sparc/sparc.c:7028
msgid "floating point constant not a valid immediate operand"
msgstr "gerçel sayı sabit geçerli bir dolaysız veri öğesi değil"
-#: config/sparc/freebsd.h:81 config/sparc/linux.h:87 config/sparc/linux64.h:89
-#: config/sparc/netbsd-elf.h:239
+#: config/sparc/freebsd.h:77 config/sparc/linux.h:92
+#: config/sparc/linux64.h:104 config/sparc/netbsd-elf.h:216
msgid "Use 128 bit long doubles"
msgstr "128 bit long double'lar kullanılır"
-#: config/sparc/sp64-elf.h:84 config/sparc/splet.h:29
+#: config/sparc/sp64-elf.h:90
msgid "Generate code for big endian"
msgstr "Büyük ilkli kod üretilir"
-#: config/sparc/sp64-elf.h:85 config/sparc/splet.h:30
+#: config/sparc/sp64-elf.h:91
msgid "Generate code for little endian"
msgstr "Küçük ilkli kod üretilir"
-#: config/sparc/sp86x-aout.h:51 config/sparc/sp86x-elf.h:65
+#: config/sparc/sp86x-elf.h:68
msgid "Use little-endian byte order for data"
msgstr "Veri için bayt sıralaması küçük ilkli yapılır"
-#: config/sparc/sparc.h:532
+#: config/sparc/sparc.h:547
msgid "Assume possible double misalignment"
msgstr "double'ların hizalanmamış oldukları varsayılır"
-#: config/sparc/sparc.h:534
+#: config/sparc/sparc.h:549
msgid "Assume all doubles are aligned"
msgstr "Tüm double'lar hizalı kabul edilir"
-#: config/sparc/sparc.h:536
+#: config/sparc/sparc.h:551
msgid "Pass -assert pure-text to linker"
msgstr "Birleştiriciye -assert salt-metin gönderir"
-#: config/sparc/sparc.h:538
+#: config/sparc/sparc.h:553
msgid "Do not pass -assert pure-text to linker"
msgstr "Birleştiriciye -assert salt-metin göndermez"
-#: config/sparc/sparc.h:540
+#: config/sparc/sparc.h:555
msgid "Use flat register window model"
msgstr "Düz yazmaç pencere modeli kullanılır"
-#: config/sparc/sparc.h:542
+#: config/sparc/sparc.h:557
msgid "Do not use flat register window model"
msgstr "Düz yazmaç pencere modeli kullanılmaz"
-#: config/sparc/sparc.h:544
+#: config/sparc/sparc.h:559
msgid "Use ABI reserved registers"
msgstr "Ayrılmış ABI yazmaçları kullanılır"
-#: config/sparc/sparc.h:546
+#: config/sparc/sparc.h:561
msgid "Do not use ABI reserved registers"
msgstr "Ayrılmış ABI yazmaçları kullanılmaz"
-#: config/sparc/sparc.h:548
+#: config/sparc/sparc.h:563
msgid "Use hardware quad fp instructions"
msgstr "Donanım bazlı quad fp komutları kullanılır"
-#: config/sparc/sparc.h:550
+#: config/sparc/sparc.h:565
msgid "Do not use hardware quad fp instructions"
msgstr "Donanım bazlı quad fp komutları kullanılmaz"
-#: config/sparc/sparc.h:552
+#: config/sparc/sparc.h:567
msgid "Compile for v8plus ABI"
msgstr "v8plus ABI için derleme yapılır"
-#: config/sparc/sparc.h:554
+#: config/sparc/sparc.h:569
msgid "Do not compile for v8plus ABI"
msgstr "v8plus ABI için derleme yapılmaz"
-#: config/sparc/sparc.h:556
+#: config/sparc/sparc.h:571
msgid "Utilize Visual Instruction Set"
msgstr "Görsel Komut Kümesi kullanılır"
-#: config/sparc/sparc.h:558
+#: config/sparc/sparc.h:573
msgid "Do not utilize Visual Instruction Set"
msgstr "Görsel Komut Kümesi kullanılmaz"
#. ??? These are deprecated, coerced to -mcpu=. Delete in 2.9.
-#: config/sparc/sparc.h:561
+#: config/sparc/sparc.h:576
msgid "Optimize for Cypress processors"
msgstr "Cypress işlemciler için eniyileme yapılır"
-#: config/sparc/sparc.h:563
+#: config/sparc/sparc.h:578
msgid "Optimize for SPARCLite processors"
msgstr "SPARCLite işlemciler için eniyileme yapılır"
-#: config/sparc/sparc.h:565
+#: config/sparc/sparc.h:580
msgid "Optimize for F930 processors"
msgstr "F930 işlemciler için eniyileme yapılır"
-#: config/sparc/sparc.h:567
+#: config/sparc/sparc.h:582
msgid "Optimize for F934 processors"
msgstr "F934 işlemciler için eniyileme yapılır"
-#: config/sparc/sparc.h:569
+#: config/sparc/sparc.h:584
msgid "Use V8 SPARC ISA"
msgstr "V8 SPARC ISA kullanılır"
-#: config/sparc/sparc.h:571
+#: config/sparc/sparc.h:586
msgid "Optimize for SuperSPARC processors"
msgstr "SuperSPARC işlemciler için eniyileme yapılır"
#. End of deprecated options.
-#: config/sparc/sparc.h:574
+#: config/sparc/sparc.h:589
msgid "Pointers are 64-bit"
msgstr "Göstericiler 64 bittir"
-#: config/sparc/sparc.h:576
+#: config/sparc/sparc.h:591
msgid "Pointers are 32-bit"
msgstr "Göstericiler 32 bittir"
-#: config/sparc/sparc.h:578
+#: config/sparc/sparc.h:593
msgid "Use 32-bit ABI"
msgstr "32-bit ABI kullanılır"
-#: config/sparc/sparc.h:580
+#: config/sparc/sparc.h:595
msgid "Use 64-bit ABI"
msgstr "64-bit ABI kullanılır"
-#: config/sparc/sparc.h:582
+#: config/sparc/sparc.h:597
msgid "Use stack bias"
msgstr "Yığıt yanlaması kullanır"
-#: config/sparc/sparc.h:584
+#: config/sparc/sparc.h:599
msgid "Do not use stack bias"
msgstr "Yığıt yanlaması kullanmaz"
-#: config/sparc/sparc.h:586
+#: config/sparc/sparc.h:601
msgid "Use structs on stronger alignment for double-word copies"
msgstr "Çift-word kopyalamada kuvvetli hizalama için struct (yapı) kullanır"
-#: config/sparc/sparc.h:588
+#: config/sparc/sparc.h:603
msgid "Do not use structs on stronger alignment for double-word copies"
msgstr "Çift-word kopyalamada kuvvetli hizalama için struct (yapı) kullanmaz"
-#: config/sparc/sparc.h:590
+#: config/sparc/sparc.h:605
msgid "Optimize tail call instructions in assembler and linker"
msgstr "Çevirici ve bağlayıcıda kuyruk çağrı komutlarını eniyiler"
-#: config/sparc/sparc.h:592
+#: config/sparc/sparc.h:607
msgid "Do not optimize tail call instructions in assembler or linker"
msgstr ""
"Çevirici veya bağlayıcıda kuyruk çağrı komutlarını\n"
" eniyilemez"
-#: config/sparc/sparc.h:637
+#: config/sparc/sparc.h:652
msgid "Use given SPARC code model"
msgstr "Belirtilen SPARC kod modeli kullanılır"
-#: config/stormy16/stormy16.c:1192
+#: config/stormy16/stormy16.c:526
+#, fuzzy
+msgid "Constant halfword load operand out of range."
+msgstr "sabit argüman `%s' için kapsamdışı"
+
+#: config/stormy16/stormy16.c:536
+#, fuzzy
+msgid "Constant arithmetic operand out of range."
+msgstr "sabit argüman `%s' için kapsamdışı"
+
+#: config/stormy16/stormy16.c:1027
+msgid "Local variable memory requirements exceed capacity."
+msgstr ""
+
+#: config/stormy16/stormy16.c:1193
+#, fuzzy
+msgid "function_profiler support"
+msgstr "MMIX için function_profiler desteği"
+
+#: config/stormy16/stormy16.c:1292
msgid "cannot use va_start in interrupt function"
msgstr "kesme işlevinde va_start kullanılamaz"
-#: config/stormy16/stormy16.c:1552
+#: config/stormy16/stormy16.c:1624
msgid "`B' operand is not constant"
msgstr "`B' terimi sabit deÄŸil"
-#: config/stormy16/stormy16.c:1558
+#: config/stormy16/stormy16.c:1630
msgid "`B' operand has multiple bits set"
msgstr "`B' terimi çoklu bit kümeleri içeriyor"
-#: config/stormy16/stormy16.c:1585
+#: config/stormy16/stormy16.c:1656
msgid "`o' operand is not constant"
msgstr "`o' terimi sabit deÄŸil"
-#: config/stormy16/stormy16.c:1600
+#: config/stormy16/stormy16.c:1670
msgid "xstormy16_print_operand: unknown code"
msgstr "xstormy16_print_operand: kod bilinmiyor"
-#: config/stormy16/stormy16.c:1650
+#: config/stormy16/stormy16.c:1716
#, c-format
msgid "switch statement of size %lu entries too large"
msgstr "%lu luk switch deyimi girdileri çok büyük"
@@ -13487,105 +12943,106 @@ msgstr "sistem kesmesi özniteliği ayarlanamıyor: böyle bir işlev yok"
msgid "cannot set interrupt attribute: no such identifier"
msgstr "sistem kesmesi özniteliği ayarlanamıyor: böyle bir tanımlayıcı yok"
-#: config/v850/v850-c.c:148
+#: config/v850/v850-c.c:147
msgid "junk at end of #pragma ghs section"
msgstr "'#pragma ghs' bölümünden sonrası karışık"
-#: config/v850/v850-c.c:165
+#: config/v850/v850-c.c:164
#, c-format
msgid "unrecognized section name \"%s\""
msgstr "bölüm ismi \"%s\" bilinmiyor"
-#: config/v850/v850-c.c:180
+#: config/v850/v850-c.c:179
msgid "malformed #pragma ghs section"
msgstr "'#pragma ghs' bölümü bozuk"
-#: config/v850/v850-c.c:200
+#: config/v850/v850-c.c:198
msgid "junk at end of #pragma ghs interrupt"
msgstr "'#pragma ghs interrupt' sonrası karışık"
-#: config/v850/v850-c.c:212
+#: config/v850/v850-c.c:209
msgid "junk at end of #pragma ghs starttda"
msgstr "'#pragma ghs starttda' sonrası karışık"
-#: config/v850/v850-c.c:224
+#: config/v850/v850-c.c:220
msgid "junk at end of #pragma ghs startsda"
msgstr "'#pragma ghs startsda' sonrası karışık"
-#: config/v850/v850-c.c:236
+#: config/v850/v850-c.c:231
msgid "junk at end of #pragma ghs startzda"
msgstr "'#pragma ghs startzda' sonrası karışık"
-#: config/v850/v850-c.c:248
+#: config/v850/v850-c.c:242
msgid "junk at end of #pragma ghs endtda"
msgstr "'#pragma ghs endtda' sonrası karışık"
-#: config/v850/v850-c.c:260
+#: config/v850/v850-c.c:253
msgid "junk at end of #pragma ghs endsda"
msgstr "'#pragma ghs endsda' sonrası karışık"
-#: config/v850/v850-c.c:272
+#: config/v850/v850-c.c:264
msgid "junk at end of #pragma ghs endzda"
msgstr "'#pragma ghs endzda' sonrası karışık"
-#: config/v850/v850.c:129
+#: config/v850/v850.c:142
#, c-format
msgid "%s=%s is not numeric"
msgstr "%s=%s sayısal değerler değil."
-#: config/v850/v850.c:136
+#: config/v850/v850.c:149
#, c-format
msgid "%s=%s is too large"
msgstr "%s=%s çok büyük"
-#: config/v850/v850.c:302
+#: config/v850/v850.c:301
msgid "const_double_split got a bad insn:"
msgstr "const_double_split got bir hatalı komut:"
-#: config/v850/v850.c:837
+#: config/v850/v850.c:866
msgid "output_move_single:"
msgstr "output_move_single:"
-#: config/v850/v850.c:2217
-msgid "a data area attribute cannot be specified for local variables"
+#: config/v850/v850.c:2209
+#, fuzzy
+msgid "%Jdata area attributes cannot be specified for local variables"
msgstr "bir veri alanı özelliği yerel değişkenler için belirtilemez"
-#: config/v850/v850.c:2228
-#, c-format
-msgid "data area of '%s' conflicts with previous declaration"
+#: config/v850/v850.c:2220
+#, fuzzy
+msgid "%Jdata area of '%D' conflicts with previous declaration"
msgstr "'%s' veri alanı önceki bildirimle çelişiyor"
-#: config/v850/v850.c:2447
+#: config/v850/v850.c:2419
#, c-format
msgid "bogus JR construction: %d\n"
msgstr "Taklit JR oluÅŸturma: %d\n"
-#: config/v850/v850.c:2468 config/v850/v850.c:2670
+#: config/v850/v850.c:2440 config/v850/v850.c:2643
#, c-format
msgid "bad amount of stack space removal: %d"
msgstr "Yığın alanı kaldırma miktarı hatalı: %d"
-#: config/v850/v850.c:2646
+#: config/v850/v850.c:2619
#, c-format
msgid "bogus JARL construction: %d\n"
msgstr "taklit JARL oluÅŸturma: %d\n"
-#: config/v850/v850.c:3026
+#: config/v850/v850.c:2989
#, c-format
msgid "Bogus DISPOSE construction: %d\n"
msgstr "Taklit DISPOSE oluÅŸturma: %d\n"
-#: config/v850/v850.c:3048
+#: config/v850/v850.c:3011
#, c-format
msgid "Too much stack space to dispose of: %d"
msgstr "DİSPOSE'sinin yığıt alanı çok fazla: %d"
-#: config/v850/v850.c:3224
+#: config/v850/v850.c:3184
#, c-format
msgid "Bogus PREPEARE construction: %d\n"
msgstr "Taklit PREPEARE oluÅŸturma: %d\n"
-#: config/v850/v850.c:3246
+#: config/v850/v850.c:3206
#, c-format
msgid "Too much stack space to prepare: %d"
msgstr "PREPARE için yığıt alanı çok fazla: %d"
@@ -13595,795 +13052,757 @@ msgstr "PREPARE için yığıt alanı çok fazla: %d"
#. each pair being { "NAME", VALUE }
#. where VALUE is the bits to set or minus the bits to clear.
#. An empty string NAME is used to identify the default VALUE.
-#: config/v850/v850.h:158
+#: config/v850/v850.h:174
msgid "Support Green Hills ABI"
msgstr "Green Hills ABI desteklenir"
-#: config/v850/v850.h:161
+#: config/v850/v850.h:177
msgid "Prohibit PC relative function calls"
msgstr "PC göreli işlev çağrılarını engeller"
-#: config/v850/v850.h:164
+#: config/v850/v850.h:180
msgid "Reuse r30 on a per function basis"
msgstr "Her işlev için r30 yeniden kullanılır"
-#: config/v850/v850.h:167
+#: config/v850/v850.h:183
msgid "Use stubs for function prologues"
msgstr "İşlev önbilgisi için koçan kullanır"
-#: config/v850/v850.h:170
+#: config/v850/v850.h:186
msgid "Same as: -mep -mprolog-function"
msgstr "-mep -mprolog-function ile aynı"
-#: config/v850/v850.h:171
+#: config/v850/v850.h:187
msgid "Enable backend debugging"
msgstr "Arkayüz hata ayıklamasını etkinleştirir"
-#: config/v850/v850.h:173
+#: config/v850/v850.h:189
msgid "Compile for the v850 processor"
msgstr "v850 işlemcisi için derleme yapılır"
-#: config/v850/v850.h:175
+#: config/v850/v850.h:191
+#, fuzzy
+msgid "Compile for v850e1 processor"
+msgstr "v850e işlemcisi için derleme yapılır"
+
+#. Make sure that the other bits are cleared.
+#: config/v850/v850.h:193
msgid "Compile for v850e processor"
msgstr "v850e işlemcisi için derleme yapılır"
#. Make sure that the other bits are cleared.
-#: config/v850/v850.h:177
+#: config/v850/v850.h:195
msgid "Enable the use of the short load instructions"
msgstr "short yükleme komutlarının kullanımı etkinleştirilir"
-#: config/v850/v850.h:180
+#: config/v850/v850.h:198
msgid "Do not use the callt instruction"
msgstr "callt komutu kullanılmaz"
-#: config/v850/v850.h:187
+#: config/v850/v850.h:205
msgid "Do not use registers r2 and r5"
msgstr "r2 ve r5 yazmaçları kullanılmaz"
-#: config/v850/v850.h:189
+#: config/v850/v850.h:207
msgid "Enforce strict alignment"
msgstr "Katı hizalamaya zorlar"
-#: config/v850/v850.h:192
+#: config/v850/v850.h:210
msgid "Use 4 byte entries in switch tables"
msgstr "Switch tablolarında 4 baytlık girdiler kullanılır"
-#: config/v850/v850.h:218
+#: config/v850/v850.h:236
msgid "Set the max size of data eligible for the TDA area"
msgstr "TDA alanı için uygun verinin maksimum boyunu belirler"
-#: config/v850/v850.h:221
+#: config/v850/v850.h:239
msgid "Set the max size of data eligible for the SDA area"
msgstr "SDA alanı için uygun verinin maksimum boyunu belirler"
-#: config/v850/v850.h:224
+#: config/v850/v850.h:242
msgid "Set the max size of data eligible for the ZDA area"
msgstr "ZDA alanı için uygun verinin maksimum boyunu belirler"
-#: config/xtensa/xtensa.c:1062 config/xtensa/xtensa.c:1096
-#: config/xtensa/xtensa.c:1105
-msgid "bad test"
-msgstr "hatalı test"
-
-#: config/xtensa/xtensa.c:1824
+#: config/xtensa/xtensa.c:1814
msgid "boolean registers required for the floating-point option"
msgstr "iki terimli yazmaçlar kayan nokta seçeneği için gerekli"
-#: config/xtensa/xtensa.c:1991
+#: config/xtensa/xtensa.c:1868
+#, fuzzy, c-format
+msgid "-f%s is not supported with CONST16 instructions"
+msgstr "%s bu yapılandırma ile desteklenmiyor"
+
+#: config/xtensa/xtensa.c:1873
+msgid "PIC is required but not supported with CONST16 instructions"
+msgstr ""
+
+#: config/xtensa/xtensa.c:1943
+#, c-format
+msgid "invalid %%D value"
+msgstr "%%D değeri geçersiz"
+
+#: config/xtensa/xtensa.c:1980
msgid "invalid mask"
msgstr "mask geçersiz"
-#: config/xtensa/xtensa.c:2038
+#: config/xtensa/xtensa.c:2006
+#, fuzzy, c-format
+msgid "invalid %%x value"
+msgstr "%%x/X değeri geçersiz"
+
+#: config/xtensa/xtensa.c:2013
+#, fuzzy, c-format
+msgid "invalid %%d value"
+msgstr "%%V değeri geçersiz"
+
+#: config/xtensa/xtensa.c:2034 config/xtensa/xtensa.c:2044
+#, fuzzy, c-format
+msgid "invalid %%t/%%b value"
+msgstr "%%b değeri geçersiz"
+
+#: config/xtensa/xtensa.c:2086
msgid "invalid address"
msgstr "adres geçersiz"
-#: config/xtensa/xtensa.c:2063
+#: config/xtensa/xtensa.c:2111
msgid "no register in address"
msgstr "adreste yazmaç yok"
-#: config/xtensa/xtensa.c:2071
+#: config/xtensa/xtensa.c:2119
msgid "address offset not a constant"
msgstr "adres deÄŸeri bir sabit deÄŸil"
-#: config/xtensa/xtensa.c:2794
+#: config/xtensa/xtensa.c:2802
msgid "only uninitialized variables can be placed in a .bss section"
msgstr "sadece ilklendirilmemiş değişkenler .bss bölümüne yerleştirilebilir"
-#: config/xtensa/xtensa.h:114
-msgid "Use the Xtensa code density option"
-msgstr "Xtensa kod yoğunluğu seçeneği kullanılır"
-
-#: config/xtensa/xtensa.h:116
-msgid "Do not use the Xtensa code density option"
-msgstr "Xtensa kod yoğunluğu seçeneği kullanılmaz"
-
-#: config/xtensa/xtensa.h:118
-msgid "Use the Xtensa MAC16 option"
-msgstr "Xtensa MAC16 seçeneği kullanılır"
-
-#: config/xtensa/xtensa.h:120
-msgid "Do not use the Xtensa MAC16 option"
-msgstr "Xtensa MAC16 seçeneği kullanılmaz"
-
-#: config/xtensa/xtensa.h:122
-msgid "Use the Xtensa MUL16 option"
-msgstr "Xtensa MUL16 seçeneği kullanılır"
-
-#: config/xtensa/xtensa.h:124
-msgid "Do not use the Xtensa MUL16 option"
-msgstr "Xtensa MUL16 seçeneği kullanılmaz"
-
-#: config/xtensa/xtensa.h:126
-msgid "Use the Xtensa MUL32 option"
-msgstr "Xtensa MUL32 seçeneği kullanılır"
-
-#: config/xtensa/xtensa.h:128
-msgid "Do not use the Xtensa MUL32 option"
-msgstr "Xtensa MUL32 seçeneği kullanılmaz"
-
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:134
-msgid "Use the Xtensa NSA option"
-msgstr "Xtensa NSA seçeneği kullanılır"
-
-#: config/xtensa/xtensa.h:136
-msgid "Do not use the Xtensa NSA option"
-msgstr "Xtensa NSA seçeneği kullanılmaz"
-
-#: config/xtensa/xtensa.h:138
-msgid "Use the Xtensa MIN/MAX option"
-msgstr "Xtensa MIN/MAX seçeneği kullanılır"
-
-#: config/xtensa/xtensa.h:140
-msgid "Do not use the Xtensa MIN/MAX option"
-msgstr "Xtensa MIN/MAX seçeneği kullanılmaz"
-
-#: config/xtensa/xtensa.h:142
-msgid "Use the Xtensa SEXT option"
-msgstr "Xtensa SEXT seçeneği kullanılır"
-
-#: config/xtensa/xtensa.h:144
-msgid "Do not use the Xtensa SEXT option"
-msgstr "Xtensa SEXT seçeneği kullanılmaz"
-
-#: config/xtensa/xtensa.h:146
-msgid "Use the Xtensa boolean register option"
-msgstr "Xtensa iki terimli yazmaç seçeneği kullanılır"
-
-#: config/xtensa/xtensa.h:148
-msgid "Do not use the Xtensa boolean register option"
-msgstr "Xtensa iki terimli yazmaç seçeneği kullanılmaz"
-
-#: config/xtensa/xtensa.h:150
-msgid "Use the Xtensa floating-point unit"
-msgstr "Xtensa kayan nokta aritmetiği kullanılır"
+#: config/xtensa/xtensa.h:79
+#, fuzzy
+msgid "Use CONST16 instruction to load constants"
+msgstr ""
+"Çıkan argümanları kaydedecek basma komutları \n"
+" kullanılır"
-#: config/xtensa/xtensa.h:152
-msgid "Do not use the Xtensa floating-point unit"
-msgstr "Xtensa kayan nokta aritmetiği kullanılmaz"
+#: config/xtensa/xtensa.h:81
+#, fuzzy
+msgid "Use PC-relative L32R instruction to load constants"
+msgstr "Hızlı çağrılar için doğrudan CALLn komutları kullanılır"
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#. undocumented
-#: config/xtensa/xtensa.h:170
+#: config/xtensa/xtensa.h:83
msgid "Disable fused multiply/add and multiply/subtract FP instructions"
msgstr "Birleşik çarpma/toplama ve çarpma/çıkarma FP komutları üretilmez"
-#: config/xtensa/xtensa.h:172
+#: config/xtensa/xtensa.h:85
msgid "Enable fused multiply/add and multiply/subtract FP instructions"
msgstr "Birleşik çarpma/toplama ve çarpma/çıkarma FP komutları üretilir"
-#: config/xtensa/xtensa.h:174
-msgid "Serialize volatile memory references with MEMW instructions"
-msgstr "MEMW komutlu oynak bellek başvuruları üretilir"
-
-#: config/xtensa/xtensa.h:176
-msgid "Do not serialize volatile memory references with MEMW instructions"
-msgstr "MEMW komutlu oynak bellek başvuruları üretilmez"
-
-#: config/xtensa/xtensa.h:178
+#: config/xtensa/xtensa.h:87
msgid "Intersperse literal pools with code in the text section"
msgstr "Sabit kümeleri metin bölümündeki kodun arasına serpiştirilir"
-#: config/xtensa/xtensa.h:180
+#: config/xtensa/xtensa.h:89
msgid "Put literal pools in a separate literal section"
msgstr "Sabit kümeleri ayrı bir sabit bölümüne konur"
-#: config/xtensa/xtensa.h:182
+#: config/xtensa/xtensa.h:91
msgid "Automatically align branch targets to reduce branch penalties"
msgstr "Dallanma sorunlarını azaltmak için dal hedefleri otomatik olarak hizalanır."
-#: config/xtensa/xtensa.h:184
+#: config/xtensa/xtensa.h:93
msgid "Do not automatically align branch targets"
msgstr "Dal hedefleri otomatik olarak hizalanmaz"
-#: config/xtensa/xtensa.h:186
+#: config/xtensa/xtensa.h:95
msgid "Use indirect CALLXn instructions for large programs"
msgstr "Büyük programlar için dolaylı CALLXn komutları kullanılır"
-#: config/xtensa/xtensa.h:188
+#: config/xtensa/xtensa.h:97
msgid "Use direct CALLn instructions for fast calls"
msgstr "Hızlı çağrılar için doğrudan CALLn komutları kullanılır"
-#: ada/misc.c:233
+#: ada/misc.c:240
+#, c-format
+msgid "missing argument to \"-%s\""
+msgstr "\"-%s\" seçeneğinin argümanı eksik"
+
+#: ada/misc.c:281
msgid "`-gnat' misspelled as `-gant'"
msgstr "`-gnat' yerine `-gant' kullanılmış"
-#: cp/call.c:261 cp/init.c:1594
-msgid "qualified type `%T' does not match destructor name `~%T'"
-msgstr "yetkin tür `%T', yıkıcı ismi `~%T' ile eşleşmiyor"
-
-#: cp/call.c:270
-msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
-msgstr "`%E' türü yıkıcı türü `%T' ile eşleşmiyor (tür `%T' idi)"
-
-#: cp/call.c:279
-msgid "`%D' is a namespace"
-msgstr "`%D' bir isim alanı"
-
-#: cp/call.c:287
-msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
-msgstr "amaçlı yöntem çağrısının taban nesnesi `%E' yeni sınıf oluşturamayan `%T' türününkidir"
-
-#: cp/call.c:369
+#: cp/call.c:217
msgid "unable to call pointer to member function here"
msgstr "buradan üye işlev göstericisi çağrılamaz"
-#: cp/call.c:518
-msgid "destructors take no parameters"
-msgstr "yıkıcılar parametre almaz"
-
-#: cp/call.c:522
-msgid "destructor name `~%T' does not match type `%T' of expression"
-msgstr "yıkıcı ismi `~%T' ifadenin türü `%T' ile eşleşmiyor"
-
-#: cp/call.c:543 cp/call.c:5000
-msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
-msgstr "bir nesne alarak oluşmayan `%3$T' türündeki `%2$E'nin üyesi `%D' için istek"
-
-#: cp/call.c:567
-msgid "request for member `%D' is ambiguous"
-msgstr "üye `%D' için istek belirsiz"
-
-#: cp/call.c:2537
+#: cp/call.c:2228
msgid "%s %D(%T, %T, %T) <built-in>"
msgstr "%s %D(%T, %T, %T) <yerleÅŸik>"
-#: cp/call.c:2542
+#: cp/call.c:2233
msgid "%s %D(%T, %T) <built-in>"
msgstr "%s %D(%T, %T) <yerleÅŸik>"
-#: cp/call.c:2546
+#: cp/call.c:2237
msgid "%s %D(%T) <built-in>"
msgstr "%s %D(%T) <yerleÅŸik>"
-#: cp/call.c:2550
+#: cp/call.c:2241
msgid "%s %T <conversion>"
msgstr "%s %T <dönüşüm>"
-#: cp/call.c:2552
-msgid "%s %+#D%s"
-msgstr "%s %+#D%s"
-
-#: cp/call.c:2726
-msgid "conversion from `%T' to `%T' is ambiguous"
-msgstr "`%T' den `%T' ye dönüşüm belirsiz"
+#: cp/call.c:2243
+msgid "%J%s %+#D <near match>"
+msgstr ""
-#: cp/call.c:2803
-msgid "`%T' is not a class type"
-msgstr "`%T' bir sınıf türü değil"
+#: cp/call.c:2245
+#, fuzzy
+msgid "%J%s %+#D"
+msgstr "%s %+#D"
-#: cp/call.c:2811
-msgid "incomplete type '%T' cannot be used to name a scope"
-msgstr "içi boş `%T' türü bir yorum alanı içinde isim olarak kullanılamaz"
+#: cp/call.c:2280
+#, fuzzy
+msgid "candidates are:"
+msgstr "aday%s: %+#D"
-#: cp/call.c:2831 cp/typeck.c:2188 cp/typeck.c:2217
-msgid "'%D' has no member named '%E'"
-msgstr "%D' `%E' isimli üyeye sahip değil"
+#: cp/call.c:2468
+msgid "conversion from `%T' to `%T' is ambiguous"
+msgstr "`%T' den `%T' ye dönüşüm belirsiz"
-#: cp/call.c:2933
+#: cp/call.c:2619 cp/call.c:2663
msgid "no matching function for call to `%D(%A)'"
msgstr "`%D(%A)' çağrısı ile eşleşen bir işlev yok"
-#: cp/call.c:2944 cp/call.c:5087
+#: cp/call.c:2622 cp/call.c:2666
msgid "call of overloaded `%D(%A)' is ambiguous"
msgstr "aşırı yüklü `%D(%A)' çağrısı belirsiz"
#. It's no good looking for an overloaded operator() on a
#. pointer-to-member-function.
-#: cp/call.c:2971
+#: cp/call.c:2732
#, c-format
msgid "pointer-to-member function %E cannot be called without an object; consider using .* or ->*"
msgstr "üye işlev %E nesnesiz çağrılamaz; .* or ->* kullanımı önerilir"
-#: cp/call.c:3036
+#: cp/call.c:2798
msgid "no match for call to `(%T) (%A)'"
msgstr "`(%T) (%A)' çağrısı için eşleşme yok"
-#: cp/call.c:3046
+#: cp/call.c:2806
msgid "call of `(%T) (%A)' is ambiguous"
msgstr "`(%T) (%A)' çağrısı belirsiz"
-#: cp/call.c:3081
+#: cp/call.c:2839
#, c-format
msgid "%s for ternary 'operator?:' in '%E ? %E : %E'"
msgstr "'%2$E ? %3$E : %4$E' içinde üç terimli ?: işleci için %1$s"
-#: cp/call.c:3087
+#: cp/call.c:2845
#, c-format
msgid "%s for 'operator%s' in '%E%s'"
msgstr "'%3$E%4$s' içinde %2$s işleci için %1$s"
-#: cp/call.c:3091
+#: cp/call.c:2849
#, c-format
msgid "%s for 'operator[]' in '%E[%E]'"
msgstr "'%2$E[%3$E]' içinde [] işleci için %1$s"
-#: cp/call.c:3096
+#: cp/call.c:2854
+#, fuzzy, c-format
+msgid "%s for '%s' in '%s %E'"
+msgstr "'%3$s%4$E' içinde %2$s işleci için %1$s"
+
+#: cp/call.c:2859
#, c-format
msgid "%s for 'operator%s' in '%E %s %E'"
msgstr "'%3$E %4$s %5$E' içinde %2$s işleci için %1$s"
-#: cp/call.c:3099
+#: cp/call.c:2862
#, c-format
msgid "%s for 'operator%s' in '%s%E'"
msgstr "'%3$s%4$E' içinde %2$s işleci için %1$s"
-#: cp/call.c:3191
+#: cp/call.c:2957
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
msgstr "ISO C++ bir ?: ifadesinde eksik orta terime izin vermez"
-#: cp/call.c:3250
+#: cp/call.c:3018
#, c-format
msgid "`%E' has type `void' and is not a throw-expression"
msgstr "`%E' `void' türünde ve bir yakalama-ifadesi değil"
-#: cp/call.c:3283 cp/call.c:3475
+#: cp/call.c:3051 cp/call.c:3242
msgid "operands to ?: have different types"
msgstr "?: için işlemimleri farklı türde"
-#: cp/call.c:3428
+#: cp/call.c:3196
msgid "enumeral mismatch in conditional expression: `%T' vs `%T'"
msgstr "şartlı ifade içinde enum uyumsuzluğu: `%T' vs `%T'"
-#: cp/call.c:3435
+#: cp/call.c:3203
msgid "enumeral and non-enumeral type in conditional expression"
msgstr "şartlı ifade içinde enum ve enum olmayan türler"
-#: cp/call.c:3516
-msgid "`%D' must be declared before use"
-msgstr "`%D' kullanmadan önce bildirilmiş olmalı"
-
-#: cp/call.c:3706
+#: cp/call.c:3487
msgid "no `%D(int)' declared for postfix `%s', trying prefix operator instead"
msgstr "sonek `%s' için `%D(int)' bildirimi yok, yerine önek işleci deneniyor"
-#: cp/call.c:3753
+#: cp/call.c:3532
msgid "using synthesized `%#D' for copy assignment"
msgstr "kopya ataması için bireşimli `%#D' kullanılıyor"
-#: cp/call.c:3755
+#: cp/call.c:3534
msgid " where cfront would use `%#D'"
msgstr " (cfront'un `%#D' kullanması gerektiği yerde)"
-#: cp/call.c:3782
+#: cp/call.c:3557
msgid "comparison between `%#T' and `%#T'"
msgstr "`%#T' ile `%#T' arasında karşılaştırma"
-#: cp/call.c:4021
-msgid "no suitable `operator delete' for `%T'"
+#: cp/call.c:3803
+#, fuzzy
+msgid "no suitable `operator %s' for `%T'"
msgstr "`%T' için uygun bir `operator delete' yok"
-#: cp/call.c:4040
+#: cp/call.c:3820
msgid "`%+#D' is private"
msgstr "`%+#D' private'dir"
-#: cp/call.c:4042
+#: cp/call.c:3822
msgid "`%+#D' is protected"
msgstr "`%+#D' protected'dır"
-#: cp/call.c:4044
+#: cp/call.c:3824
msgid "`%+#D' is inaccessible"
msgstr "`%+#D' eriÅŸilebilir deÄŸil"
-#: cp/call.c:4045
+#: cp/call.c:3825
msgid "within this context"
msgstr "bu baÄŸlamda"
-#: cp/call.c:4088
+#: cp/call.c:3895
msgid "invalid conversion from `%T' to `%T'"
msgstr "`%T' den `%T' ye dönüşüm geçersiz"
-#: cp/call.c:4090 cp/call.c:4229 cp/call.c:4231
+#: cp/call.c:3897
msgid " initializing argument %P of `%D'"
msgstr " `%D' nin %P. argümanının ilklendirilmesi"
-#: cp/call.c:4152 cp/call.c:4156
-msgid " initializing argument %P of `%D' from result of `%D'"
-msgstr " `%D'nin %P argümanı `%D'nin sonucundan ilklendiriliyor "
+#: cp/call.c:4050
+#, fuzzy
+msgid "cannot bind bitfield `%E' to `%T'"
+msgstr "`%T' `%T' den ilklendirilemez"
+
+#: cp/call.c:4053
+#, fuzzy
+msgid "cannot bind packed field `%E' to `%T'"
+msgstr "alan `%D' `%T' türünde bildirilemez"
-#: cp/call.c:4162 cp/call.c:4165
-msgid " initializing temporary from result of `%D'"
-msgstr " geçici olarak `%D'nin sonucundan ilklendiriliyor"
+#: cp/call.c:4056
+#, fuzzy
+msgid "cannot bind rvalue `%E' to `%T'"
+msgstr "`%T' `%T' den ilklendirilemez"
-#. Undefined behavior [expr.call] 5.2.2/7. We used to just warn
-#. here and do a bitwise copy, but now cp_expr_size will abort if we
-#. try to do that.
-#: cp/call.c:4316
+#: cp/call.c:4144
msgid "cannot pass objects of non-POD type `%#T' through `...'; call will abort at runtime"
msgstr "POD olmayan `%#T' türünün nesneleri `...' üzerinden aktarılamaz; çalışma anında çağrı çıkış yaptıracak"
#. Undefined behavior [expr.call] 5.2.2/7.
-#: cp/call.c:4343
-msgid "cannot receive objects of non-POD type `%#T' through `...'"
-msgstr "POD olmayan `%#T' türünün nesneleri `...' üzerinden alınamaz"
+#: cp/call.c:4168
+#, fuzzy
+msgid "cannot receive objects of non-POD type `%#T' through `...'; call will abort at runtime"
+msgstr "POD olmayan `%#T' türünün nesneleri `...' üzerinden aktarılamaz; çalışma anında çağrı çıkış yaptıracak"
-#: cp/call.c:4523
+#: cp/call.c:4208
+#, fuzzy
+msgid "the default argument for parameter %d of `%D' has not yet been parsed"
+msgstr "`%T' türündeki parametrenin öntanımlı argümanı `%T' türünde"
+
+#: cp/call.c:4403
msgid "passing `%T' as `this' argument of `%#D' discards qualifiers"
msgstr "niteleyicileri iptal eden `%#D'nin `this' argümanı olarak `%T aktarılıyor"
-#: cp/call.c:4542
+#: cp/call.c:4422
msgid "`%T' is not an accessible base of `%T'"
msgstr "`%T', `%T' tabanında erişilebilir değil"
-#: cp/call.c:4786
+#: cp/call.c:4696
msgid "could not find class$ field in java interface type `%T'"
msgstr "`%T' türündeki java arabiriminde class$ alanı bulunamadı"
-#: cp/call.c:4974
+#: cp/call.c:4951
msgid "call to non-function `%D'"
msgstr "işlev olmayan `%D' ye çağrı"
-#: cp/call.c:5076
-msgid "no matching function for call to `%T::%D(%A)%#V'"
+#: cp/call.c:4977
+msgid "request for member `%D' in `%E', which is of non-aggregate type `%T'"
+msgstr "bir nesne alarak oluşmayan `%3$T' türündeki `%2$E'nin üyesi `%D' için istek"
+
+#: cp/call.c:5055
+#, fuzzy
+msgid "no matching function for call to `%T::%s(%A)%#V'"
msgstr "`%T::%D(%A)%#V' çağrısı ile eşleşen işlev yok"
-#: cp/call.c:5106
+#: cp/call.c:5072
+#, fuzzy, c-format
+msgid "call of overloaded `%s(%A)' is ambiguous"
+msgstr "aşırı yüklü `%D(%A)' çağrısı belirsiz"
+
+#: cp/call.c:5093
msgid "cannot call member function `%D' without object"
msgstr "üye işlev `%D' nesne olmaksızın çağrılamaz"
-#: cp/call.c:5704
+#: cp/call.c:5678
msgid "passing `%T' chooses `%T' over `%T'"
msgstr "`%T' `%T'yi `%T' üzerinden seçerek aktarılıyor"
-#: cp/call.c:5706 cp/decl2.c:4154
+#: cp/call.c:5680 cp/name-lookup.c:4057
msgid " in call to `%D'"
msgstr " `%D' çağrısında"
-#: cp/call.c:5755
+#: cp/call.c:5737
msgid "choosing `%D' over `%D'"
msgstr "`%D' `%D' üzerinden seçiliyor"
-#: cp/call.c:5756
+#: cp/call.c:5738
msgid " for conversion from `%T' to `%T'"
msgstr " (`%T' den `%T' ye dönüşüm için)"
-#: cp/call.c:5758
+#: cp/call.c:5740
msgid " because conversion sequence for the argument is better"
msgstr " çünkü argüman için dönüşüm süreci daha iyi"
-#: cp/call.c:5879
-msgid "ISO C++ says that `%D' and `%D' are ambiguous even though the worst conversion for the former is better than the worst conversion for the latter"
+#: cp/call.c:5860
+#, fuzzy
+msgid "ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:"
msgstr "İlkinin en kötü dönüşümü sonuncusununkinden daha iyi olsa bile ISO C++ `%D' ve `%D' belirsizdir der "
-#: cp/call.c:5996
+#: cp/call.c:5864
+#, fuzzy
+msgid "candidate 1:"
+msgstr "aday%s: %+#D"
+
+#: cp/call.c:5865
+#, fuzzy
+msgid "candidate 2:"
+msgstr "aday%s: %+#D"
+
+#: cp/call.c:5974
msgid "could not convert `%E' to `%T'"
msgstr "`%E' den `%T' ye dönüşüm yapılamaz"
-#: cp/call.c:6105
+#: cp/call.c:6079
msgid "invalid initialization of non-const reference of type '%T' from a temporary of type '%T'"
msgstr "`%T' türündeki sabit olmayan referansın geçici `%T' türünden ilklendirilmesi geçersiz"
-#: cp/call.c:6109
+#: cp/call.c:6083
msgid "invalid initialization of reference of type '%T' from expression of type '%T'"
msgstr "`%T' türündeki referansın `%T' türü ifadeden ilklendirilmesi geçersiz"
-#: cp/class.c:287
+#: cp/class.c:281
msgid "cannot convert from base `%T' to derived type `%T' via virtual base `%T'"
msgstr "taban `%T' türünden türetilmiş `%T' türü sanal taban `%T' üzerinden dönüştürülemez"
-#: cp/class.c:992
+#: cp/class.c:764
+#, fuzzy
+msgid "Java class '%T' cannot have an implicit non-trivial destructor"
+msgstr "taban sınıf `%#T' bir sanal olmayan yıkıcıya sahip"
+
+#: cp/class.c:765
+#, fuzzy
+msgid "Java class '%T' cannot have a destructor"
+msgstr "taban sınıf `%#T' bir sanal olmayan yıkıcıya sahip"
+
+#: cp/class.c:933
msgid "`%#D' and `%#D' cannot be overloaded"
msgstr "`%#D' ve `%#D' aşırı yüklü olamaz"
-#: cp/class.c:1076
+#: cp/class.c:1016
msgid "duplicate enum value `%D'"
msgstr "yinelenmiÅŸ enum deÄŸeri `%D'"
-#: cp/class.c:1079
+#: cp/class.c:1019
msgid "duplicate field `%D' (as enum and non-enum)"
msgstr "yinelenmiÅŸ alan `%D' (hem enum hem de deÄŸil)"
-#: cp/class.c:1086
+#: cp/class.c:1026
msgid "duplicate nested type `%D'"
msgstr "yinelenmiş iç içe tür `%D'"
-#: cp/class.c:1097
+#: cp/class.c:1037
msgid "duplicate field `%D' (as type and non-type)"
msgstr "yinelenmiş alan `%D' (hem tür hem de değil)"
-#: cp/class.c:1101
+#: cp/class.c:1041
msgid "duplicate member `%D'"
msgstr "yinelenmiş üye `%D'"
-#: cp/class.c:1144
+#: cp/class.c:1079
msgid "conflicting access specifications for method `%D', ignored"
msgstr "`%D' yöntemi için erişim özellikleri çelişkili, yoksayıldı"
-#: cp/class.c:1146
+#: cp/class.c:1081
#, c-format
msgid "conflicting access specifications for field `%s', ignored"
msgstr "`%s' alanı için erişim özellikleri çelişkili, yoksayıldı"
-#: cp/class.c:1194
+#: cp/class.c:1131
msgid "`%D' names constructor"
msgstr "`%D' isimleri kurucu"
-#: cp/class.c:1199
+#: cp/class.c:1136
msgid "`%D' invalid in `%T'"
msgstr "`%T' içindeki `%D' geçersiz"
-#: cp/class.c:1207
+#: cp/class.c:1144
msgid "no members matching `%D' in `%#T'"
msgstr "`%T' içindeki `%D' ile eşleşen üye yok"
-#: cp/class.c:1239 cp/class.c:1247
+#: cp/class.c:1176 cp/class.c:1184
msgid "`%D' invalid in `%#T'"
msgstr "`%#T' içindeki `%D' geçersiz"
-#: cp/class.c:1240
+#: cp/class.c:1177
msgid " because of local method `%#D' with same name"
msgstr " çünkü yerel yöntem `%#D' ile aynı isimde"
-#: cp/class.c:1248
+#: cp/class.c:1185
msgid " because of local member `%#D' with same name"
msgstr " çünkü yerel üye `%#D' ile aynı isimde"
-#: cp/class.c:1320
+#: cp/class.c:1255
msgid "base class `%#T' has a non-virtual destructor"
msgstr "taban sınıf `%#T' bir sanal olmayan yıkıcıya sahip"
-#: cp/class.c:1340
+#: cp/class.c:1275
msgid "base `%T' with only non-default constructor in class without a constructor"
msgstr "sadece bir kurucusuz sınıftaki öntanımlı olmayan kuruculu taban `%T'"
-#: cp/class.c:1912
+#: cp/class.c:1659
msgid "all member functions in class `%T' are private"
msgstr "sınıf `%T' içindeki tüm üye işlevler 'private'"
-#: cp/class.c:1926
+#: cp/class.c:1670
msgid "`%#T' only defines a private destructor and has no friends"
msgstr "`%#T' sadece private bir yıkıcı tanımlıyor ve kardeşleri yok"
-#: cp/class.c:1969
+#: cp/class.c:1712
msgid "`%#T' only defines private constructors and has no friends"
msgstr "`%#T' sadece private kurucular tanımlıyor ve kardeşleri yok"
-#: cp/class.c:2090 cp/class.c:5276
-msgid "redefinition of `%#T'"
-msgstr "`%#T' yeniden tanımlanmış"
-
-#: cp/class.c:2091
-msgid "previous definition of `%#T'"
-msgstr "`%#T' nin önceki bildirimi"
-
-#: cp/class.c:2365
+#: cp/class.c:2097
msgid "no unique final overrider for `%D' in `%T'"
msgstr "`%D' için `%T' içinde eşsiz bir son değiştirici yok"
#. Here we know it is a hider, and no overrider exists.
-#: cp/class.c:2712
+#: cp/class.c:2542
msgid "`%D' was hidden"
msgstr "`%D'"
-#: cp/class.c:2713
+#: cp/class.c:2543
msgid " by `%D'"
msgstr " `%D' tarafından gizlendi"
-#: cp/class.c:2755
+#: cp/class.c:2584
msgid "ISO C++ forbids member `%D' with same name as enclosing class"
msgstr "ISO C++ zarflayan sınıf olarak üye `%D' ile aynı isme izin vermez"
-#: cp/class.c:2760 cp/decl2.c:1331
+#: cp/class.c:2589 cp/decl2.c:1167
msgid "`%#D' invalid; an anonymous union can only have non-static data members"
msgstr "`%#D' geçersiz; bir anonim birleşik yapı sadece statik olmayan veri üyeleri içerebilir"
-#: cp/class.c:2766 cp/decl2.c:1337
+#: cp/class.c:2595 cp/decl2.c:1174
msgid "private member `%#D' in anonymous union"
msgstr "anonim union içinde private üye `%#D'"
-#: cp/class.c:2769 cp/decl2.c:1339
+#: cp/class.c:2598 cp/decl2.c:1176
msgid "protected member `%#D' in anonymous union"
msgstr "anonim union içinde protected üye `%#D'"
-#: cp/class.c:2894
+#: cp/class.c:2717
msgid "vtable layout for class `%T' may not be ABI-compliant and may change in a future version of GCC due to implicit virtual destructor"
msgstr "sınıf `%T' için vtable yerleşimi ABI-uyumlu olamaz ve bu GCC'nin gelecek sürümünde değişebilir"
-#: cp/class.c:2958
+#: cp/class.c:2777
msgid "bit-field `%#D' with non-integral type"
msgstr "tümleyen olmayan tür ile bit-alanı `%#D'"
-#: cp/class.c:2978
+#: cp/class.c:2797
msgid "bit-field `%D' width not an integer constant"
msgstr "bit alanı `%D' için genişlik bir tamsayı sabit değil"
-#: cp/class.c:2984
+#: cp/class.c:2803
msgid "negative width in bit-field `%D'"
msgstr "bit alanı `%D' içindeki genişlik negatif"
-#: cp/class.c:2989
+#: cp/class.c:2808
msgid "zero width for bit-field `%D'"
msgstr "bit alanı `%D' için sıfır genişlik"
-#: cp/class.c:2995
+#: cp/class.c:2814
msgid "width of `%D' exceeds its type"
msgstr "`%D' türünün genişliğini aşıyor"
-#: cp/class.c:3004
+#: cp/class.c:2823
msgid "`%D' is too small to hold all values of `%#T'"
msgstr "`%D' `%#T'nin tüm değerlerini tutmak için çok küçük"
-#: cp/class.c:3088
+#: cp/class.c:2885
msgid "member `%#D' with constructor not allowed in union"
msgstr "union içinde kuruculu üye `%#D' olamaz"
-#: cp/class.c:3091
+#: cp/class.c:2888
msgid "member `%#D' with destructor not allowed in union"
msgstr "union içinde yıkıcılı üye `%#D' olamaz"
-#: cp/class.c:3094
+#: cp/class.c:2891
msgid "member `%#D' with copy assignment operator not allowed in union"
msgstr "union içinde kopya atama işleçli üye `%#D' olamaz"
-#: cp/class.c:3121
+#: cp/class.c:2918
msgid "multiple fields in union `%T' initialized"
msgstr "birleşik yapı `%T' içindeki çoklu alanlar ilklendirildi"
-#: cp/class.c:3234
+#: cp/class.c:2987
+msgid "ignoring packed attribute on unpacked non-POD field `%#D'"
+msgstr ""
+
+#: cp/class.c:3039
msgid "field `%D' in local class cannot be static"
msgstr "yerel sınıf içindeki alan `%D' static olamaz"
-#: cp/class.c:3240
+#: cp/class.c:3045
msgid "field `%D' invalidly declared function type"
msgstr "alan `%D' ile geçersiz olarak işlev türü bildirildi"
-#: cp/class.c:3247
+#: cp/class.c:3052
msgid "field `%D' invalidly declared method type"
msgstr "alan `%D' ile geçersiz olarak yöntem türü bildirildi"
-#: cp/class.c:3253
-msgid "field `%D' invalidly declared offset type"
-msgstr "alan `%D' ile geçersiz olarak göreli konum türü bildirildi"
-
#. Unions cannot have static members.
-#: cp/class.c:3271
+#: cp/class.c:3070
msgid "field `%D' declared static in union"
msgstr "alan `%D' ile birleşik yapı içinde static bildirimi"
-#: cp/class.c:3298
+#: cp/class.c:3097
msgid "non-static reference `%#D' in class without a constructor"
msgstr "bir kurucusuz sınıf içinde static olmayan başvuru `%#D'"
-#: cp/class.c:3333
+#: cp/class.c:3132
msgid "non-static const member `%#D' in class without a constructor"
msgstr "bir kurucusuz sınıf içinde static olmayan sabit üye `%#D'"
-#: cp/class.c:3349
+#: cp/class.c:3147
msgid "field `%#D' with same name as class"
msgstr "alan `%#D' sınıf ile aynı isimde"
-#: cp/class.c:3367
+#: cp/class.c:3165
msgid "`%#T' has pointer data members"
msgstr "`%#T' gösterici veri üyeleri içeriyor"
-#: cp/class.c:3371
+#: cp/class.c:3169
msgid " but does not override `%T(const %T&)'"
msgstr " ama `%T(const %T&)' ye deÄŸiÅŸtirilmiyor"
-#: cp/class.c:3373
+#: cp/class.c:3171
msgid " or `operator=(const %T&)'"
msgstr " ya da `operator=(const %T&)'"
-#: cp/class.c:3376
+#: cp/class.c:3174
msgid " but does not override `operator=(const %T&)'"
msgstr " ama `operator=(const %T&)' ye deÄŸiÅŸtirilmiyor"
-#: cp/class.c:3826
+#: cp/class.c:3604
msgid "offset of empty base `%T' may not be ABI-compliant and maychange in a future version of GCC"
msgstr "boş taban `%T' nin göreli konumu ABI-uyumlu olamaz ve bu GCC'nin gelecek sürümünde değişebilir"
-#: cp/class.c:3935
+#: cp/class.c:3714
msgid "class `%T' will be considered nearly empty in a future version of GCC"
msgstr "sınıf `%T' GCC'nin gelecek sürümünde kısmen boş sayılacak"
-#: cp/class.c:4025
+#: cp/class.c:3801
msgid "initializer specified for non-virtual method `%D'"
msgstr "sanal olmayan yöntem `%D' için ilklendirici belirtilmiş"
-#: cp/class.c:4761
+#: cp/class.c:4489
msgid "offset of virtual base `%T' is not ABI-compliant and may change in a future version of GCC"
msgstr "sanal taban `%T' nin göreli konumu ABI-uyumlu değil ve bu GCC'nin gelecek sürümünde değişebilir"
-#: cp/class.c:4861
+#: cp/class.c:4579
msgid "direct base `%T' inaccessible in `%T' due to ambiguity"
msgstr "doğrudan taban `%T' belirsizlikten dolayı `%T' içinde erişilebilir değil"
-#: cp/class.c:4874
+#: cp/class.c:4592
msgid "virtual base `%T' inaccessible in `%T' due to ambiguity"
msgstr "sanal taban `%T' belirsizlikten dolayı `%T' içinde erişilebilir değil"
-#: cp/class.c:5030
+#: cp/class.c:4766
msgid "size assigned to `%T' may not be ABI-compliant and may change in a future version of GCC"
msgstr "`%T' ye atanan boyut ABI-uyumlu olmamalı ve bu GCC'nin gelecek sürümünde değişebilir"
#. Versions of G++ before G++ 3.4 did not reset the
#. DECL_MODE.
-#: cp/class.c:5053
+#: cp/class.c:4805
msgid "the offset of `%D' may not be ABI-compliant and may change in a future version of GCC"
msgstr "`%D' nin göreli konumu ABI-uyumlu olmayabilir ve bu GCC'nin gelecek sürümünde değişebilir"
-#: cp/class.c:5079
+#: cp/class.c:4828
msgid "offset of `%D' is not ABI-compliant and may change in a future version of GCC"
msgstr "`%D' nin göreli konumu ABI-uyumlu değil ve bu GCC'nin gelecek sürümünde değişebilir"
-#: cp/class.c:5088
+#: cp/class.c:4837
msgid "`%D' contains empty classes which may cause base classes to be placed at different locations in a future version of GCC"
msgstr "`%D' GCC'nin gelecek sürümünde taban sınıfların farklı yere konmasına sebep olabilecek boş sınıfları içeriyor"
-#: cp/class.c:5147
+#: cp/class.c:4896
msgid "layout of classes derived from empty class `%T' may change in a future version of GCC"
msgstr "sınıfların yerleşimi GCC'nin gelecek sürümünde değişebilecek olan boş sınıf `%T' den türetilmiş"
-#: cp/class.c:5432
+#: cp/class.c:5026 cp/semantics.c:2029
+msgid "redefinition of `%#T'"
+msgstr "`%#T' yeniden tanımlanmış"
+
+#: cp/class.c:5196
msgid "`%#T' has virtual functions but non-virtual destructor"
msgstr "`%#T' sanal olmayan kurucuyla sanal işlevler içeriyor"
-#: cp/class.c:5516
+#: cp/class.c:5275
msgid "trying to finish struct, but kicked out due to previous parse errors"
msgstr "yapı tamamlanmaya çalışılırken önceki ayrıştırma hatalarından dolayı kesildi"
-#: cp/class.c:5982
+#: cp/class.c:5717
#, c-format
msgid "language string `\"%s\"' not recognized"
msgstr "dil dizgesi `\"%s\"' tanınmıyor"
-#: cp/class.c:6078
+#: cp/class.c:5805
msgid "cannot resolve overloaded function `%D' based on conversion to type `%T'"
msgstr "aşırı yüklü `%D' `%T' türünün dönüşümüne tabanlı olarak çözümlenemiyor"
-#: cp/class.c:6203
+#: cp/class.c:5930
msgid "no matches converting function `%D' to type `%#T'"
msgstr "işlev `%D'nin `%#T' türüne dönüşümü için eşleşme yok"
-#: cp/class.c:6226
+#: cp/class.c:5953
msgid "converting overloaded function `%D' to type `%#T' is ambiguous"
msgstr "aşırı yüklü işlev `%D'nin `%#T' türüne dönüşümü belirsiz"
-#: cp/class.c:6252
+#: cp/class.c:5979
msgid "assuming pointer to member `%D'"
msgstr "üye `%D'ye gösterici varsayılıyor"
-#: cp/class.c:6255
+#: cp/class.c:5982
#, c-format
msgid "(a pointer to member can only be formed with `&%E')"
msgstr "(bir üye göstericisi sadece `&%E' ile şekillendirilebilir)"
-#: cp/class.c:6306 cp/class.c:6477 cp/class.c:6484
+#: cp/class.c:6027 cp/class.c:6209 cp/class.c:6216
msgid "not enough type information"
msgstr "tür bilgisi yetersiz"
-#: cp/class.c:6315
+#: cp/class.c:6044
msgid "argument of type `%T' does not match `%T'"
msgstr "`%T' türündeki argüman `%T' ile uyumsuz"
-#: cp/class.c:6461
+#: cp/class.c:6193
msgid "invalid operation on uninstantiated type"
msgstr "gerçeklenmemiş tür üzerindeki işlem geçersiz"
@@ -14392,14 +13811,19 @@ msgstr "gerçeklenmemiş tür üzerindeki işlem geçersiz"
#. A name N used in a class S shall refer to the same declaration
#. in its context and when re-evaluated in the completed scope of
#. S.
-#: cp/class.c:6745 cp/decl.c:1254 cp/decl.c:3379 cp/pt.c:2004
+#: cp/class.c:6451 cp/decl.c:1225 cp/name-lookup.c:495 cp/pt.c:2093
msgid "declaration of `%#D'"
msgstr "`%#D' yeniden bildirimi"
-#: cp/class.c:6746
+#: cp/class.c:6452
msgid "changes meaning of `%D' from `%+#D'"
msgstr "`%D' nin (`%+#D' deki) anlamı değişiyor"
+#: cp/cp-lang.c:398
+#, fuzzy
+msgid "inter-module optimisations not implemented yet"
+msgstr "ayrımlama henüz programlanmadı."
+
#: cp/cvt.c:88
msgid "can't convert from incomplete type `%T' to `%T'"
msgstr "içi boş tür `%T' den `%T' ye dönüşüm yapılamaz"
@@ -14408,246 +13832,235 @@ msgstr "içi boş tür `%T' den `%T' ye dönüşüm yapılamaz"
msgid "conversion of `%E' from `%T' to `%T' is ambiguous"
msgstr "`%E' nin `%T' den `%T' ye dönüşümü belirsiz"
-#: cp/cvt.c:126
+#: cp/cvt.c:113 cp/cvt.c:127
msgid "converting from `%T' to `%T'"
msgstr "`%T' den`%T' ye dönüşüm"
-#: cp/cvt.c:203 cp/cvt.c:207
-msgid "pointer to member cast from `%T' to `%T' is via virtual base"
-msgstr "`%T' türünden `%T' türüne üye göstericisi tür dönüşümü sanal taban üzerindendir"
-
-#: cp/cvt.c:225 cp/cvt.c:236 cp/cvt.c:283
+#: cp/cvt.c:185 cp/cvt.c:253 cp/cvt.c:297
msgid "cannot convert `%E' from type `%T' to type `%T'"
msgstr "`%E' `%T' den `%T' ye çevrilemiyor"
-#: cp/cvt.c:262
+#: cp/cvt.c:214 cp/cvt.c:218
+msgid "pointer to member cast from `%T' to `%T' is via virtual base"
+msgstr "`%T' türünden `%T' türüne üye göstericisi tür dönüşümü sanal taban üzerindendir"
+
+#: cp/cvt.c:276
msgid "invalid conversion from '%T' to '%T'"
msgstr "`%T' den `%T' ye dönüşüm geçersiz"
-#: cp/cvt.c:504
+#: cp/cvt.c:508
msgid "conversion from `%T' to `%T' discards qualifiers"
msgstr "`%T' den `%T' ye dönüşüm niteleyicileri iptal ediyor"
-#: cp/cvt.c:522
+#: cp/cvt.c:526
msgid "casting `%T' to `%T' does not dereference pointer"
msgstr "`%T' türünden `%T' türüne dönüşüm gösterici referansını kaldırmaz"
-#: cp/cvt.c:551
+#: cp/cvt.c:553
msgid "cannot convert type `%T' to type `%T'"
msgstr "tür `%T' `%T' türüne dönüştürülemiyor"
-#: cp/cvt.c:683
+#: cp/cvt.c:679
msgid "conversion from `%#T' to `%#T'"
msgstr "`%#T' den `%#T' ye dönüşüm"
-#: cp/cvt.c:695
+#: cp/cvt.c:691
msgid "`%#T' used where a `%T' was expected"
msgstr "`%T' kullanılmış ama `%#T' umulmuştu"
-#: cp/cvt.c:712
-msgid "the address of `%D', will always be `true'"
-msgstr "`%D' nin adresi, daima `true' olacak"
-
-#: cp/cvt.c:732
+#: cp/cvt.c:715
msgid "`%#T' used where a floating point value was expected"
msgstr "bir gerçel sayı değer gerekirken `%#T' kullanılmış"
-#: cp/cvt.c:779
+#: cp/cvt.c:762
msgid "conversion from `%T' to non-scalar type `%T' requested"
msgstr "`%T' türünden skalar olmayan `%T' türüne dönüşüm istendi"
-#: cp/cvt.c:865
+#: cp/cvt.c:850
msgid "object of incomplete type `%T' will not be accessed in %s"
msgstr "içi boş `%T' türündeki nesne, %s içinde erişimli olmayacak"
-#: cp/cvt.c:868
+#: cp/cvt.c:853
msgid "object of type `%T' will not be accessed in %s"
msgstr "`%T' türündeki nesne, %s içinde erişimli olmayacak"
-#: cp/cvt.c:884
+#: cp/cvt.c:869
msgid "object `%E' of incomplete type `%T' will not be accessed in %s"
msgstr "içi boş `%T' türündeki nesne `%E', %s içinde erişimli olmayacak"
#. [over.over] enumerates the places where we can take the address
#. of an overloaded function, and this is not one of them.
-#: cp/cvt.c:904
+#: cp/cvt.c:885
#, c-format
msgid "%s cannot resolve address of overloaded function"
msgstr "%s aşırı yüklü işlevin adresini çözümleyemiyor"
#. Only warn when there is no &.
-#: cp/cvt.c:909
+#: cp/cvt.c:891
#, c-format
msgid "%s is a reference, not call, to function `%E'"
msgstr "%s işlev `%E' için çağrı değil referanstır"
-#: cp/cvt.c:1039
+#: cp/cvt.c:898
+#, fuzzy, c-format
+msgid "%s has no effect"
+msgstr "%s %s içermiyor"
+
+#: cp/cvt.c:1009
msgid "converting NULL to non-pointer type"
msgstr "NULL'dan gösterici olmayan türe dönüşüm"
-#: cp/cvt.c:1115
+#: cp/cvt.c:1081
msgid "ambiguous default type conversion from `%T'"
msgstr "%T' den öntanımlı türe dönüşüm belirsiz"
-#: cp/cvt.c:1117
+#: cp/cvt.c:1083
msgid " candidate conversions include `%D' and `%D'"
msgstr " aday dönüşümler `%D' ve `%D' içeriyor "
-#: cp/decl.c:736
-#, c-format
-msgid "push %s level %p line %d\n"
-msgstr "%s %p seviyesinde %d. satırda basıldı (push)\n"
-
-#: cp/decl.c:770
-#, c-format
-msgid "pop %s level %p line %d\n"
-msgstr "%s %p seviyesinde %d. satırda çekildi (pop)\n"
-
-#: cp/decl.c:776 cp/decl.c:814
-msgid "XXX is_class_level != (current_binding_level == class_binding_level)\n"
-msgstr "XXX is_class_level != (current_binding_level == class_binding_level)\n"
-
-#: cp/decl.c:808
-#, c-format
-msgid "suspend %s level %p line %d\n"
-msgstr "%s %p seviyesinde %d. satırda askıda\n"
-
-#: cp/decl.c:837
-#, c-format
-msgid "resume %s level %p line %d\n"
-msgstr "%s %p seviyesinde %d. satırda yeniden başladı\n"
-
-#: cp/decl.c:1255 cp/decl.c:3490
-msgid "conflicts with previous declaration `%#D'"
-msgstr "`%#D' önceki bildirimiyle çelişiyor"
-
-#: cp/decl.c:1467
+#: cp/decl.c:374
msgid "label `%D' used but not defined"
msgstr "etiket `%D' tanımlanmadan kullanılmış"
-#: cp/decl.c:1472
+#: cp/decl.c:381
msgid "label `%D' defined but not used"
msgstr "etiket `%D' tanımlanmış ama kullanılmamış"
-#: cp/decl.c:2489
-msgid "namespace alias `%D' not allowed here, assuming `%D'"
-msgstr "burada isim alanı rumuzu `%D' kullanılamaz, `%D' varsayılıyor"
+#: cp/decl.c:1133 cp/decl.c:1559
+msgid "previous declaration of `%D'"
+msgstr "`%D'in önceki bildirimi"
-#: cp/decl.c:2825
-msgid "XXX entering pop_everything ()\n"
-msgstr "XXX, pop_everything () iÅŸlevine giriyor\n"
+#: cp/decl.c:1181
+#, fuzzy
+msgid "%Jfunction '%D' redeclared as inline"
+msgstr "iÅŸlev `%s' 'inline' olarak yeniden bildirilmiÅŸ"
-#: cp/decl.c:2834
-msgid "XXX leaving pop_everything ()\n"
-msgstr "XXX, pop_everything () işlevini bırakıyor\n"
+#: cp/decl.c:1182
+#, fuzzy
+msgid "%Jprevious declaration of '%D' with attribute noinline"
+msgstr "`%s' işlevinin önceki bildirimi 'inline' değil"
-#: cp/decl.c:3285 cp/decl.c:3700
-msgid "previous declaration of `%D'"
-msgstr "`%D'in önceki bildirimi"
+#: cp/decl.c:1189
+#, fuzzy
+msgid "%Jfunction '%D' redeclared with attribute noinline"
+msgstr "`%s' iÅŸlevinin bildirimi 'inline' deÄŸil"
-#: cp/decl.c:3366 cp/decl.c:3404
+#: cp/decl.c:1191
+#, fuzzy
+msgid "%Jprevious declaration of '%D' was inline"
+msgstr "`%s' işlevinin önceki bildirimi 'inline' idi"
+
+#: cp/decl.c:1212 cp/decl.c:1250
msgid "shadowing %s function `%#D'"
msgstr "%s işlev `%#D' yi gölgeliyor"
-#: cp/decl.c:3375
+#: cp/decl.c:1221
msgid "library function `%#D' redeclared as non-function `%#D'"
msgstr "kitaplık işlevi `%#D' işlev olmayan `%#D' olarak yeniden bildirildi"
-#: cp/decl.c:3380
+#: cp/decl.c:1226
msgid "conflicts with built-in declaration `%#D'"
msgstr "`%#D' yerleşik bildirimiyle çelişiyor"
-#: cp/decl.c:3399 cp/decl.c:3504 cp/decl.c:3520
+#: cp/decl.c:1245 cp/decl.c:1357 cp/decl.c:1373
msgid "new declaration `%#D'"
msgstr "yeni bildirim `%#D'"
-#: cp/decl.c:3400
+#: cp/decl.c:1246
msgid "ambiguates built-in declaration `%#D'"
msgstr "`%#D' yerleÅŸik bildirimi belirsizleÅŸiyor"
-#: cp/decl.c:3464
+#: cp/decl.c:1317
msgid "`%#D' redeclared as different kind of symbol"
msgstr "`%#D' farklı bir sembol çeşidi olarak tekrar bildirilmiş"
-#: cp/decl.c:3467
+#: cp/decl.c:1320
msgid "previous declaration of `%#D'"
msgstr "`%#D'in önceki bildirimi"
-#: cp/decl.c:3489
+#: cp/decl.c:1342
msgid "declaration of template `%#D'"
msgstr "ÅŸablon bildirimi `%#D'"
-#: cp/decl.c:3505 cp/decl.c:3521
+#: cp/decl.c:1343 cp/name-lookup.c:496
+msgid "conflicts with previous declaration `%#D'"
+msgstr "`%#D' önceki bildirimiyle çelişiyor"
+
+#: cp/decl.c:1358 cp/decl.c:1374
msgid "ambiguates old declaration `%#D'"
msgstr "`%#D' eski bildirimi belirsizleÅŸiyor"
-#: cp/decl.c:3513
+#: cp/decl.c:1366
msgid "declaration of C function `%#D' conflicts with"
msgstr "C iÅŸlevi `%#D' bildirimi ile"
-#: cp/decl.c:3515
+#: cp/decl.c:1368
msgid "previous declaration `%#D' here"
msgstr "`%#D'nin önceki bildirimi ile burada çelişiyor"
-#: cp/decl.c:3533
-msgid "conflicting types for `%#D'"
-msgstr "`%#D' için çelişen türler"
+#: cp/decl.c:1384
+#, fuzzy
+msgid "conflicting declaration '%#D'"
+msgstr "`%s' bildirimlerinde çelişki"
-#: cp/decl.c:3534
-msgid "previous declaration as `%#D'"
+#: cp/decl.c:1385
+#, fuzzy
+msgid "'%D' has a previous declaration as `%#D'"
msgstr "önceki bildirim `%#D' olarak"
-#: cp/decl.c:3577
+#: cp/decl.c:1438
msgid "`%#D' previously defined here"
msgstr "`%#D' evvelce burada tanımlanmış"
-#: cp/decl.c:3578
+#: cp/decl.c:1439
msgid "`%#D' previously declared here"
msgstr "`%#D' evvelce burada bildirilmiÅŸ"
#. Prototype decl follows defn w/o prototype.
-#: cp/decl.c:3587
+#: cp/decl.c:1448
msgid "prototype for `%#D'"
msgstr "`%#D' için prototip"
-#: cp/decl.c:3588
-msgid "follows non-prototype definition here"
+#: cp/decl.c:1449
+#, fuzzy
+msgid "%Jfollows non-prototype definition here"
msgstr "burada prototip olmayan tanımdan sonra"
-#: cp/decl.c:3600
+#: cp/decl.c:1461
msgid "previous declaration of `%#D' with %L linkage"
msgstr "%L ilintili `%#D' önceki bildirimi"
-#: cp/decl.c:3602
+#: cp/decl.c:1463
msgid "conflicts with new declaration with %L linkage"
msgstr "%L ilintili yeni bildirim ile çelişiyor"
-#: cp/decl.c:3625 cp/decl.c:3632
+#: cp/decl.c:1486 cp/decl.c:1493
msgid "default argument given for parameter %d of `%#D'"
msgstr "`%#D' nin %d. parametresi için verilen öntanımlı argüman"
-#: cp/decl.c:3627 cp/decl.c:3634
+#: cp/decl.c:1488 cp/decl.c:1495
msgid "after previous specification in `%#D'"
msgstr "`%#D' içindeki önceki özellikten sonra"
-#: cp/decl.c:3643
+#: cp/decl.c:1504
msgid "`%#D' was used before it was declared inline"
msgstr "`%#D' inline olarak bildirilmeden önce"
-#: cp/decl.c:3645
-msgid "previous non-inline declaration here"
+#: cp/decl.c:1505
+#, fuzzy
+msgid "%Jprevious non-inline declaration here"
msgstr "önceki inline olmayan bildirimi burada kullanılmış"
-#: cp/decl.c:3699
+#: cp/decl.c:1558
msgid "redundant redeclaration of `%D' in same scope"
msgstr "aynı bağlamda `%D'nin yeniden bildirimi anlamsız"
-#: cp/decl.c:3780
+#: cp/decl.c:1649
#, c-format
msgid "declaration of `%F' throws different exceptions"
msgstr "`%F' bildirimi farklı olağandışılıkları yakalıyor"
-#: cp/decl.c:3782
+#: cp/decl.c:1651
#, c-format
msgid "than previous declaration `%F'"
msgstr "`%F'in önceki bildiriminden"
@@ -14660,611 +14073,499 @@ msgstr "`%F'in önceki bildiriminden"
#. that specialization that would cause an implicit
#. instantiation to take place, in every translation unit in
#. which such a use occurs.
-#: cp/decl.c:3922
+#: cp/decl.c:1798
msgid "explicit specialization of %D after first use"
msgstr "ilk kullanımından sonra %D'nin doğrudan özelleştirilmesi"
-#: cp/decl.c:4187
-msgid "`%#D' used prior to declaration"
-msgstr "`%#D' bildirim öncesi kullanılmış"
-
-#: cp/decl.c:4218
-msgid "redeclaration of `wchar_t' as `%T'"
-msgstr "`wchar_t' nin `%T' olarak yeniden bildirimi"
-
-#. A redeclaration of main, but not a duplicate of the
-#. previous one.
-#.
-#. [basic.start.main]
-#.
-#. This function shall not be overloaded.
-#: cp/decl.c:4246
-msgid "invalid redeclaration of `%D'"
-msgstr "`%D'in"
-
-#: cp/decl.c:4247
-msgid "as `%D'"
-msgstr "`%D' olarak yeniden bildirimi geçersiz"
-
-#: cp/decl.c:4337
-msgid "previous external decl of `%#D'"
-msgstr "`%D'in önceki dış bildirimi"
-
-#: cp/decl.c:4378
-msgid "`%D' was previously implicitly declared to return `int'"
-msgstr "`%D' önceden dolaylı olarak dönüş değerine `int' bildirilmiş"
-
-#: cp/decl.c:4438
-msgid "extern declaration of `%#D' doesn't match"
-msgstr "`%#D' için extern bildirim uyumsuz"
-
-#: cp/decl.c:4439
-msgid "global declaration `%#D'"
-msgstr "`%#D' genel bildirimi"
-
-#: cp/decl.c:4472
-msgid "declaration of `%#D' shadows a parameter"
-msgstr "`%#D' genel bildirimi bir parametreyi gölgeliyor"
-
-#: cp/decl.c:4492
-#, c-format
-msgid "declaration of `%s' shadows a member of `this'"
-msgstr "`%s' bildirimi bir `this' üyesini gölgeliyor"
-
-#: cp/decl.c:4889
-msgid "`%#D' hides constructor for `%#T'"
-msgstr "`%#D' `%#T' kurucusunu gizliyor"
-
-#: cp/decl.c:4904
-msgid "`%#D' conflicts with previous using declaration `%#D'"
-msgstr "`%#D' `%#D' bildiriminin önceki kullanımı ile çelişiyor"
-
-#: cp/decl.c:4916
-msgid "previous non-function declaration `%#D'"
-msgstr "önceki işlev olmayan bildirim `%#D'"
+#: cp/decl.c:1880
+msgid "%J'%D': visibility attribute ignored because it"
+msgstr ""
-#: cp/decl.c:4917
-msgid "conflicts with function declaration `%#D'"
-msgstr "işlev bildirimi `%#D' ile çelişiyor"
+#: cp/decl.c:1882
+#, fuzzy
+msgid "%Jconflicts with previous declaration here"
+msgstr "`%#D' önceki bildirimiyle çelişiyor"
-#: cp/decl.c:5007
+#: cp/decl.c:1976
msgid "implicit declaration of function `%#D'"
msgstr "işlev `%#D' nin örtük bildirimi"
-#: cp/decl.c:5167
+#: cp/decl.c:2124
#, c-format
msgid "label `%s' referenced outside of any function"
msgstr "`%s' etiketi her işlevin dışına referanslı"
-#: cp/decl.c:5270 cp/decl.c:5294 cp/decl.c:5387
+#: cp/decl.c:2221 cp/decl.c:2245 cp/decl.c:2333
msgid "jump to label `%D'"
msgstr "etiket `%D' ye sıçrama"
-#: cp/decl.c:5272 cp/decl.c:5296
+#: cp/decl.c:2223 cp/decl.c:2247
msgid "jump to case label"
msgstr "case etiketine jump"
-#: cp/decl.c:5280
+#: cp/decl.c:2226 cp/decl.c:2250
+#, fuzzy
+msgid "%H from here"
+msgstr " buradan"
+
+#: cp/decl.c:2231
msgid " crosses initialization of `%#D'"
msgstr " `%#D' ilklendirmesi çaprazlanıyor"
-#: cp/decl.c:5283 cp/decl.c:5403
+#: cp/decl.c:2234 cp/decl.c:2349
msgid " enters scope of non-POD `%#D'"
msgstr " POD olmayan `%#D' bağlamına giriyor"
-#: cp/decl.c:5303 cp/decl.c:5407
+#: cp/decl.c:2254 cp/decl.c:2353
msgid " enters try block"
msgstr " blok denemesine giriliyor"
-#. Can't skip init of __exception_info.
-#: cp/decl.c:5305 cp/decl.c:5399 cp/decl.c:5409
+#: cp/decl.c:2256 cp/decl.c:2355
msgid " enters catch block"
msgstr " tuzak bloÄŸu giriyor"
-#: cp/decl.c:5388
+#: cp/decl.c:2334
msgid " from here"
msgstr " buradan"
-#: cp/decl.c:5401
+#. Can't skip init of __exception_info.
+#: cp/decl.c:2345
+#, fuzzy
+msgid "%J enters catch block"
+msgstr " tuzak bloÄŸu giriyor"
+
+#: cp/decl.c:2347
msgid " skips initialization of `%#D'"
msgstr " `%#D' ilklendirmesi atlanyor"
-#: cp/decl.c:5437
+#: cp/decl.c:2381
msgid "label named wchar_t"
msgstr "wchar_t isimli etiket"
-#: cp/decl.c:5440
+#: cp/decl.c:2384
msgid "duplicate label `%D'"
msgstr "yinlenmiÅŸ etiket `%D'"
-#: cp/decl.c:5525
-#, c-format
-msgid "case label `%E' not within a switch statement"
-msgstr "case etiketi `%E' bir switch deyimi içinde değil"
-
-#. Definition isn't the kind we were looking for.
-#: cp/decl.c:5704 cp/decl.c:5723
-msgid "`%#D' redeclared as %C"
-msgstr "`%#D' %C olarak yeniden bildirilmiÅŸ"
-
-#. This happens for A::B where B is a template, and there are no
-#. template arguments.
-#: cp/decl.c:5811 cp/typeck.c:2069 cp/typeck.c:2229
-msgid "invalid use of `%D'"
-msgstr "`%D' kullanımı geçersiz"
-
-#: cp/decl.c:5852
-msgid "`%D::%D' is not a template"
-msgstr "`%D::%D' bir ÅŸablon deÄŸil"
-
-#: cp/decl.c:5869
-msgid "`%D' undeclared in namespace `%D'"
-msgstr "`%D' isim alanı `%D' içinde bildirimsiz"
-
-#: cp/decl.c:6002
+#: cp/decl.c:2612 cp/parser.c:3178
msgid "`%D' used without template parameters"
msgstr "`%D' şablon parametreleri olmaksızın kullanılmış"
-#: cp/decl.c:6013 cp/decl.c:6029 cp/decl.c:6139
+#: cp/decl.c:2622 cp/decl.c:2638 cp/decl.c:2726
msgid "no class template named `%#T' in `%#T'"
msgstr "`%#T' isimli sınıf şablonu `%#T' içinde yok"
-#: cp/decl.c:6055 cp/decl.c:6065 cp/decl.c:6100
+#: cp/decl.c:2659 cp/decl.c:2669 cp/decl.c:2689
msgid "no type named `%#T' in `%#T'"
msgstr "`%#T' içindeki `%#T' ismindeki tür bilinmiyor"
-#: cp/decl.c:6329
-msgid "lookup of `%D' finds `%#D'"
-msgstr "`%D' araması `%#D' buluyor"
-
-#: cp/decl.c:6331
-msgid " instead of `%D' from dependent base class"
-msgstr " bağımlı taban sınıftan `%D' yerine"
-
-#: cp/decl.c:6333
-msgid " (use `typename %T::%D' if that's what you meant)"
-msgstr " (eğer bu anlamda kullandıysanız `typename %T::%D' kullanın)"
-
-#: cp/decl.c:6364
-msgid "name lookup of `%D' changed"
-msgstr "`%D' isim araması değişti"
-
-#: cp/decl.c:6366
-msgid " matches this `%D' under ISO standard rules"
-msgstr " bu `%D' ISO standardının kuralları altında eşleşiyor"
-
-#: cp/decl.c:6368
-msgid " matches this `%D' under old rules"
-msgstr " bu `%D' eski kurallar altında eşleşiyor"
-
-#: cp/decl.c:6382 cp/decl.c:6389
-msgid "name lookup of `%D' changed for new ISO `for' scoping"
-msgstr "yeni ISO `for' etki alanında `%D' isim araması değişti"
-
-#: cp/decl.c:6384
-msgid " cannot use obsolete binding at `%D' because it has a destructor"
-msgstr " `%D' deki modası geçmiş bağlantı bir yıkıcıya sahip olduğundan kullanılamaz"
-
-#: cp/decl.c:6391
-msgid " using obsolete binding at `%D'"
-msgstr " `%D' deki modası geçmiş bağlantı kullanılıyor"
-
-#: cp/decl.c:6609
-msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
-msgstr "`%D' nin `%#T' (`%#D') bağlamındaki araması şu anki bağlam (`%#D') içindeki arama ile uyuşmuyor"
-
-#: cp/decl.c:7432
-msgid "an anonymous union cannot have function members"
+#: cp/decl.c:3416
+#, fuzzy
+msgid "%Jan anonymous union cannot have function members"
msgstr "bir anonim birleşik yapı işlev üyeler barındıramaz"
-#: cp/decl.c:7449
+#: cp/decl.c:3434
msgid "member %#D' with constructor not allowed in anonymous aggregate"
msgstr "kuruculu üye %#D' anonim kümeleme içinde kullanılamaz"
-#: cp/decl.c:7452
+#: cp/decl.c:3437
msgid "member %#D' with destructor not allowed in anonymous aggregate"
msgstr "yıkıcılı üye %#D' anonim kümeleme içinde kullanılamaz"
-#: cp/decl.c:7455
+#: cp/decl.c:3440
msgid "member %#D' with copy assignment operator not allowed in anonymous aggregate"
msgstr "kopya atama işleçli üye %#D' anonim kümeleme içinde kullanılamaz"
-#: cp/decl.c:7493
+#: cp/decl.c:3480
msgid "redeclaration of C++ built-in type `%T'"
msgstr "C++ yerleşik türü `%T' için yeniden bildirim"
-#: cp/decl.c:7529
+#: cp/decl.c:3518
msgid "multiple types in one declaration"
msgstr "bir bildirimde birden fazla tür bidirilmiş"
-#: cp/decl.c:7556
+#: cp/decl.c:3544
msgid "missing type-name in typedef-declaration"
msgstr "typedef bildiriminde tür ismi eksik"
-#: cp/decl.c:7563
+#: cp/decl.c:3552
msgid "ISO C++ prohibits anonymous structs"
msgstr "ISO C++ anonim yapıları (struct) yasaklar"
-#: cp/decl.c:7570
+#: cp/decl.c:3559
msgid "`%D' can only be specified for functions"
msgstr "`%D' sadece işlevler için belirtilebilir"
-#: cp/decl.c:7572
+#: cp/decl.c:3561
msgid "`%D' can only be specified inside a class"
msgstr "`%D' sadece bir sınıf içinde belirtilebilir"
-#: cp/decl.c:7574
+#: cp/decl.c:3563
msgid "`%D' can only be specified for constructors"
msgstr "`%D' sadece kurucular için belirtilebilir"
-#: cp/decl.c:7577
+#: cp/decl.c:3566
msgid "`%D' can only be specified for objects and functions"
msgstr "`%D' sadece işlevler ve nesneler için belirtilebilir"
-#: cp/decl.c:7719 cp/decl2.c:936
+#: cp/decl.c:3708 cp/decl2.c:861
msgid "typedef `%D' is initialized (use __typeof__ instead)"
msgstr "typedef `%D' ilklendirilmiş (yerine __typeof__ kullanın)"
-#: cp/decl.c:7724
+#: cp/decl.c:3713
msgid "function `%#D' is initialized like a variable"
msgstr "`%D' iÅŸlevi bir deÄŸiÅŸken gibi ilklendirilmiÅŸ"
-#: cp/decl.c:7736
+#: cp/decl.c:3725
msgid "declaration of `%#D' has `extern' and is initialized"
msgstr "`%#D' hem `extern' olarak bildirilmiÅŸ hem de ilklendirilmiÅŸ"
-#: cp/decl.c:7770
+#: cp/decl.c:3758
msgid "`%#D' is not a static member of `%#T'"
msgstr "`%#D' `%#T'nin bir static üyesi değildir"
-#: cp/decl.c:7775
+#: cp/decl.c:3764
msgid "ISO C++ does not permit `%T::%D' to be defined as `%T::%D'"
msgstr "ISO C++ `%T::%D' nin `%T::%D' olarak tanımlanmasına izin vermez"
-#: cp/decl.c:7786
+#: cp/decl.c:3775
msgid "duplicate initialization of %D"
msgstr "%D nin yinelenmiÅŸ ilklendirmesi"
-#: cp/decl.c:7815
+#: cp/decl.c:3806
msgid "declaration of `%#D' outside of class is not definition"
msgstr "sınıf dışında `%#D' bildirimi bir tanımlama değil"
-#: cp/decl.c:7865
+#: cp/decl.c:3857
msgid "variable `%#D' has initializer but incomplete type"
msgstr "`%#D' değişkeni ilklendirilmiş ama içi boş türde"
-#: cp/decl.c:7873 cp/decl.c:8432
+#: cp/decl.c:3865 cp/decl.c:4426
msgid "elements of array `%#D' have incomplete type"
msgstr "`%#D' dizisinin elemanları içi boş türde"
-#: cp/decl.c:7889
+#: cp/decl.c:3881
msgid "aggregate `%#D' has incomplete type and cannot be defined"
msgstr "küme `%#D' içi boş türde ve tanımlı olamaz"
-#: cp/decl.c:7931
+#: cp/decl.c:3923
msgid "`%D' declared as reference but not initialized"
msgstr "`%D' referans olarak bildirilmiÅŸ ama ilklendirilmemiÅŸ"
-#: cp/decl.c:7940
+#: cp/decl.c:3929
msgid "ISO C++ forbids use of initializer list to initialize reference `%D'"
msgstr "ISO C++ referans`%D' ilklendiren ilklendirici listesi kullanımına izin vermez"
-#: cp/decl.c:7970
+#: cp/decl.c:3957
msgid "cannot initialize `%T' from `%T'"
msgstr "`%T' `%T' den ilklendirilemez"
-#: cp/decl.c:8004
+#: cp/decl.c:3989
msgid "initializer fails to determine size of `%D'"
msgstr "ilklendirici `%D' nin boyutunu saptayamıyor"
-#: cp/decl.c:8009
+#: cp/decl.c:3994
msgid "array size missing in `%D'"
msgstr "`%D' de dizi boyutu eksik"
-#: cp/decl.c:8021
+#: cp/decl.c:4006
msgid "zero-size array `%D'"
msgstr "sıfır boyutlu dizi `%D'"
#. An automatic variable with an incomplete type: that is an error.
#. Don't talk about array types here, since we took care of that
#. message in grokdeclarator.
-#: cp/decl.c:8059
+#: cp/decl.c:4043
msgid "storage size of `%D' isn't known"
msgstr "`%D' nin saklama uzunluÄŸu bilinmiyor"
-#: cp/decl.c:8081
+#: cp/decl.c:4065
msgid "storage size of `%D' isn't constant"
msgstr "`%D' nin saklama geniÅŸliÄŸi sabit deÄŸil"
-#: cp/decl.c:8137
+#: cp/decl.c:4120
msgid "sorry: semantics of inline function static data `%#D' are wrong (you'll wind up with multiple copies)"
msgstr "özür: özümleme işlevi static verisi `%#D' nin cevabı yanlış (sizi çoklu kopyalara sürükleyecek)"
-#: cp/decl.c:8138
-msgid " you can work around this by removing the initializer"
+#: cp/decl.c:4121
+#, fuzzy
+msgid "%J you can work around this by removing the initializer"
msgstr " bunu ilklendiricileri kaldırarak aşabilirsiniz"
-#: cp/decl.c:8164
+#: cp/decl.c:4147
msgid "uninitialized const `%D'"
msgstr "ilklendirilmemiÅŸ sabit `%D'"
-#: cp/decl.c:8249
+#: cp/decl.c:4226
msgid "brace-enclosed initializer used to initialize `%T'"
msgstr "`%T' ilklendirmesinde ilklendirici {} içinde kullanılmış"
-#: cp/decl.c:8313
+#: cp/decl.c:4290
msgid "initializer for `%T' must be brace-enclosed"
msgstr "`%T' ilklendiricisi {} içinde olmalı"
-#: cp/decl.c:8328
+#: cp/decl.c:4307
msgid "ISO C++ does not allow designated initializers"
msgstr "ISO C++ tasarlanmış ilkendiricilere izin vermez"
-#: cp/decl.c:8332
+#: cp/decl.c:4311
msgid "`%T' has no non-static data member named `%D'"
msgstr "`%T' `%D' isminde bir statik olmayan üye içermiyor"
-#: cp/decl.c:8389
+#: cp/decl.c:4359
+msgid "name `%D' used in a GNU-style designated initializer for an array"
+msgstr ""
+
+#: cp/decl.c:4382
msgid "too many initializers for `%T'"
msgstr "`%T' için ilklendirici sayısı çok fazla"
-#: cp/decl.c:8426
+#: cp/decl.c:4420
msgid "variable-sized object `%D' may not be initialized"
msgstr "deÄŸiÅŸken-uzunluklu nesne `%D' ilklendirilmiÅŸ olmayabilir"
-#: cp/decl.c:8437
+#: cp/decl.c:4431
msgid "`%D' has incomplete type"
msgstr "`%s' içi boş türde"
-#: cp/decl.c:8486
+#: cp/decl.c:4486
msgid "`%D' must be initialized by constructor, not by `{...}'"
msgstr "`%D'bir kurucu ile ilklendirilmeli, `{...}' ile deÄŸil"
-#: cp/decl.c:8527
+#: cp/decl.c:4530
msgid "structure `%D' with uninitialized const members"
msgstr "ilklendirmesiz sabit üyelerle `%D' yapısı"
-#: cp/decl.c:8529
+#: cp/decl.c:4532
msgid "structure `%D' with uninitialized reference members"
msgstr "ilklendirmesiz referans üyelerle `%D' yapısı"
-#: cp/decl.c:8770
+#: cp/decl.c:4713
msgid "assignment (not initialization) in declaration"
msgstr "bildirim içinde atama (ilklendirme değil)"
-#: cp/decl.c:8785
+#: cp/decl.c:4730
msgid "cannot initialize `%D' to namespace `%D'"
msgstr "`%D' isim alanı `%D' olarak ilklendirilemez"
-#: cp/decl.c:8836
+#: cp/decl.c:4780
msgid "shadowing previous type declaration of `%#D'"
msgstr "`%#D'in önceki gölgeleyen tür bildirimi"
-#: cp/decl.c:8883
+#: cp/decl.c:4816
msgid "`%D' cannot be thread-local because it has non-POD type `%T'"
msgstr "`%D' yerel evreli olamaz çünkü POD olmayan %T' türünde"
-#: cp/decl.c:8898
+#: cp/decl.c:4831
msgid "`%D' is thread-local and so cannot be dynamically initialized"
msgstr "`%D' yerel evreli olduğundan özdevimli ilklendirilemez"
-#: cp/decl.c:9298 cp/init.c:562
-msgid "multiple initializations given for `%D'"
-msgstr "`%D' için çoklu ilklendiriciler belirtilmiş"
-
-#: cp/decl.c:9390
+#: cp/decl.c:5313
msgid "invalid catch parameter"
msgstr "yakalama parametresi geçersiz"
-#: cp/decl.c:9508
+#: cp/decl.c:5427
msgid "destructor for alien class `%T' cannot be a member"
msgstr "yabancı sınıf `%T' için yıkıcı, bir üye olamaz"
-#: cp/decl.c:9511
+#: cp/decl.c:5430
msgid "constructor for alien class `%T' cannot be a member"
msgstr "yabancı sınıf `%T' için kurucu, bir üye olamaz"
-#: cp/decl.c:9530
+#: cp/decl.c:5452
msgid "`%D' declared as a `virtual' %s"
msgstr "`%D' bir `virtual' %s olarak bildirilmiÅŸ"
-#: cp/decl.c:9532
+#: cp/decl.c:5454
msgid "`%D' declared as an `inline' %s"
msgstr "`%D' alanı bir `inline' %s olarak bildirilmiş"
-#: cp/decl.c:9534
+#: cp/decl.c:5456
msgid "`const' and `volatile' function specifiers on `%D' invalid in %s declaration"
msgstr "%s bildirimindeki `const' ve `volatile' işlev belirteçleri `%D' için geçersiz"
-#: cp/decl.c:9537
+#: cp/decl.c:5459
msgid "`%D' declared as a friend"
msgstr "`%D' bir kardeÅŸ olarak bildirilmiÅŸ"
-#: cp/decl.c:9543
+#: cp/decl.c:5465
msgid "`%D' declared with an exception specification"
msgstr "`%D' bir olağandışılık özelliğiyle bildirilmiş"
-#: cp/decl.c:9618
+#: cp/decl.c:5544
msgid "cannot declare `::main' to be a template"
msgstr "`::main' bir ÅŸablon olarak bildirilemez"
-#: cp/decl.c:9620
+#: cp/decl.c:5546
msgid "cannot declare `::main' to be inline"
msgstr "`::main' inline olarak bildirilemez"
-#: cp/decl.c:9622
+#: cp/decl.c:5548
msgid "cannot declare `::main' to be static"
msgstr "::main' «static» olarak bildirilemez"
-#: cp/decl.c:9625
+#: cp/decl.c:5551
msgid "`main' must return `int'"
msgstr "`main', `int' döndürmeli"
-#: cp/decl.c:9653
+#: cp/decl.c:5579
msgid "non-local function `%#D' uses anonymous type"
msgstr "yerel olmayan işlev `%#D' anonim tür kullanıyor"
-#: cp/decl.c:9656
+#: cp/decl.c:5582
msgid "`%#D' does not refer to the unqualified type, so it is not used for linkage"
msgstr "`%#D' niteliksiz türe başvurmuyor, bu durumda ilintileme için kullanılmamıştır"
-#: cp/decl.c:9662
+#: cp/decl.c:5588
msgid "non-local function `%#D' uses local type `%T'"
msgstr "yerel olmayan işlev `%#D' yerel tür `%T' kullanıyor"
-#: cp/decl.c:9691
+#: cp/decl.c:5612
msgid "%smember function `%D' cannot have `%T' method qualifier"
msgstr "%smember function `%D', `%T' yöntem niteleyicisini içeremez"
-#: cp/decl.c:9715
+#: cp/decl.c:5636
msgid "defining explicit specialization `%D' in friend declaration"
msgstr "kardeş bildirimlerde doğrudan özelleştirme `%D' tanımlanıyor"
#. Something like `template <class T> friend void f<T>()'.
-#: cp/decl.c:9725
+#: cp/decl.c:5646
msgid "invalid use of template-id `%D' in declaration of primary template"
msgstr "birincil şablon bildiriminde şablon kimliği `%D' kullanımı geçersiz"
-#: cp/decl.c:9753
+#: cp/decl.c:5673
msgid "default arguments are not allowed in declaration of friend template specialization `%D'"
msgstr "kardeş şablon özelleştirmesi `%D' bildiriminde öntanımlı argümalar kullanılamaz"
-#: cp/decl.c:9760
+#: cp/decl.c:5680
msgid "`inline' is not allowed in declaration of friend template specialization `%D'"
msgstr "kardeş şablon özelleştirmesi `%D' bildiriminde `inline' kullanılamaz"
-#: cp/decl.c:9822
+#: cp/decl.c:5741
msgid "definition of implicitly-declared `%D'"
msgstr "dolaylı bildirimli `%D' tanımı"
-#: cp/decl.c:9834 cp/decl2.c:785
+#: cp/decl.c:5759 cp/decl2.c:744
msgid "no `%#D' member function declared in class `%T'"
msgstr "sınıf `%T' içinde bildirilmiş `%#D' diye bir üye işlev yok"
-#: cp/decl.c:9967
+#: cp/decl.c:5893
msgid "non-local variable `%#D' uses local type `%T'"
msgstr "yerel olmayan değişken`%#D' yerel tür `%T' kullanıyor"
-#: cp/decl.c:10064
+#: cp/decl.c:6008
msgid "invalid in-class initialization of static data member of non-integral type `%T'"
msgstr "tümleyen olmayan `%T türündeki statik veri üyesinin sınıf içi ilklendirmesi geçersiz"
-#: cp/decl.c:10073
+#: cp/decl.c:6017
msgid "ISO C++ forbids in-class initialization of non-const static member `%D'"
msgstr "ISO C++ sabit olmayan statik üye `%D' nin sınıf içi ilklendirmesine izin vermez"
-#: cp/decl.c:10076
+#: cp/decl.c:6020
msgid "ISO C++ forbids initialization of member constant `%D' of non-integral type `%T'"
msgstr "ISO C++ tümleyen olmayan `%T türündeki üye sabiti `%D' nin ilklendirilmesine izin vermez"
-#: cp/decl.c:10126
-msgid "size of array `%D' has non-integer type"
+#: cp/decl.c:6039
+#, fuzzy
+msgid "size of array `%D' has non-integral type `%T'"
msgstr "`%D' dizisinin boyutu tamsayı değil"
-#: cp/decl.c:10128
-msgid "size of array has non-integer type"
+#: cp/decl.c:6041
+#, fuzzy
+msgid "size of array has non-integral type `%T'"
msgstr "dizi boyutu tamsayı değil"
-#: cp/decl.c:10148
+#: cp/decl.c:6077
msgid "size of array `%D' is negative"
msgstr "`%D' dizisinin boyutu negatif"
-#: cp/decl.c:10150
+#: cp/decl.c:6079
msgid "size of array is negative"
msgstr "dizi boyutu negatif"
-#: cp/decl.c:10159
+#: cp/decl.c:6087
msgid "ISO C++ forbids zero-size array `%D'"
msgstr "ISO C++ da sıfır boyutlu dizi `%D' yasaktır"
-#: cp/decl.c:10161
+#: cp/decl.c:6089
msgid "ISO C++ forbids zero-size array"
msgstr "ISO C++ da sıfır boyutlu dizi yasaktır"
-#: cp/decl.c:10168
+#: cp/decl.c:6096
msgid "size of array `%D' is not an integral constant-expression"
msgstr "`%D' dizisinin boyutu bir tümleyen sabitli ifade değil"
-#: cp/decl.c:10171
+#: cp/decl.c:6099
msgid "size of array is not an integral constant-expression"
msgstr "dizi boyutu bir tümleyen sabitli ifade değil"
-#: cp/decl.c:10189
+#: cp/decl.c:6104
msgid "ISO C++ forbids variable-size array `%D'"
msgstr "ISO C++ da değişken boyutlu dizi `%D' yasaktır"
-#: cp/decl.c:10192
+#: cp/decl.c:6106
msgid "ISO C++ forbids variable-size array"
msgstr "ISO C++ da değişken boyutlu dizi yasaktır"
-#: cp/decl.c:10203
+#: cp/decl.c:6128
msgid "overflow in array dimension"
msgstr "dizi boyutunda taÅŸma"
-#: cp/decl.c:10262
+#: cp/decl.c:6222
msgid "declaration of `%D' as %s"
msgstr "`%D' %s olarak bildirilmiÅŸ"
-#: cp/decl.c:10264
+#: cp/decl.c:6224
#, c-format
msgid "creating %s"
msgstr "%s oluÅŸturuluyor"
-#: cp/decl.c:10276
+#: cp/decl.c:6236
msgid "declaration of `%D' as multidimensional array must have bounds for all dimensions except the first"
msgstr "çok boyutlu dizi olarak `%D' bildiriminde ilki dışında tüm boyutlar sınırlanmış olmalıdır"
-#: cp/decl.c:10279
+#: cp/decl.c:6239
msgid "multidimensional array must have bounds for all dimensions except the first"
msgstr "çok boyutlu dizi bildiriminde ilki dışında tüm boyutlar sınırlanmış olmalıdır"
-#: cp/decl.c:10308
+#: cp/decl.c:6267
msgid "return type specification for constructor invalid"
msgstr "kurucu için dönen değer tür özelliği geçersiz"
-#: cp/decl.c:10315
+#: cp/decl.c:6274
msgid "return type specification for destructor invalid"
msgstr "yıkıcı için dönen değer tür özelliği geçersiz"
-#: cp/decl.c:10321
+#: cp/decl.c:6280
msgid "operator `%T' declared to return `%T'"
msgstr "işleç `%T' dönüş `%T' ye bildirimli"
-#: cp/decl.c:10323
+#: cp/decl.c:6282
msgid "return type specified for `operator %T'"
msgstr "`operator %T' için dönüş türü belirtilmiş"
-#: cp/decl.c:10491
+#: cp/decl.c:6425
msgid "destructors must be member functions"
msgstr "yıkıcılar üye işlevler olmalıdır"
-#: cp/decl.c:10510
+#: cp/decl.c:6444
msgid "destructor `%T' must match class name `%T'"
msgstr "yıkıcı `%T' sınıf ismi `%T' ile eşleşmeli"
-#: cp/decl.c:10539
-msgid "variable declaration is not allowed here"
-msgstr "deÄŸiÅŸken birdirimine burada izin verilmez"
-
-#: cp/decl.c:10566
-msgid "invalid declarator"
-msgstr "bildirim geçersiz"
-
-#: cp/decl.c:10617
+#: cp/decl.c:6507
msgid "declarator-id missing; using reserved word `%D'"
msgstr "bildirmci kimliği eksik; saklı yedek sözcük `%D' kullanılıyor"
-#: cp/decl.c:10674
+#: cp/decl.c:6561
msgid "type `%T' is not derived from type `%T'"
msgstr "tür `%T' `%T' türünden türetilmemiş"
#. Parse error puts this typespec where
#. a declarator should go.
-#: cp/decl.c:10726
+#: cp/decl.c:6624
msgid "`%T' specified as declarator-id"
msgstr "`%T' bildirici kimliÄŸi olarak belirtilmiÅŸ"
-#: cp/decl.c:10728
+#: cp/decl.c:6626
msgid " perhaps you want `%T' for a constructor"
msgstr " ihtimal ki bir kurucu için `%T' istiyorsunuz"
@@ -15272,301 +14573,302 @@ msgstr " ihtimal ki bir kurucu için `%T' istiyorsunuz"
#. decl-specifier like in
#. std::allocator alloc;
#. Handle that gracefully.
-#: cp/decl.c:10750
+#: cp/decl.c:6648
#, c-format
msgid "invalid use of template-name '%E' in a declarator"
msgstr "bir bildirim içinde şablon ismi `%E' kullanımı geçersiz"
-#: cp/decl.c:10770
+#: cp/decl.c:6668
msgid "declaration of `%D' as non-function"
msgstr "`%D' nin iÅŸlev olmayan olarak bildirimi"
-#: cp/decl.c:10847
+#: cp/decl.c:6745
msgid "`bool' is now a keyword"
msgstr "bool' şimdi bir anahtar sözcüktür"
-#: cp/decl.c:10849
+#: cp/decl.c:6747
msgid "extraneous `%T' ignored"
msgstr "fazlalık `%T' yoksayıldı"
-#: cp/decl.c:10865 cp/decl.c:10910
+#: cp/decl.c:6763 cp/decl.c:6807
msgid "multiple declarations `%T' and `%T'"
msgstr "`%T' ve `%T' çoklu bildirimleri"
-#: cp/decl.c:10878
+#: cp/decl.c:6776
msgid "ISO C++ does not support `long long'"
msgstr "ISO C++, `long long' desteklemiyor"
-#: cp/decl.c:10983 cp/decl.c:10986
+#: cp/decl.c:6880 cp/decl.c:6883
#, c-format
msgid "ISO C++ forbids declaration of `%s' with no type"
msgstr "ISO C++ da türsüz `%s' bildirimine izin verilmez"
-#. The implicit typename extension is deprecated and will be
-#. removed. Warn about its use now.
-#: cp/decl.c:10996
-msgid "`%T' is implicitly a typename"
-msgstr "`%T' dolaylı bir tür ismidir"
-
-#: cp/decl.c:11032
+#: cp/decl.c:6914
#, c-format
msgid "short, signed or unsigned invalid for `%s'"
msgstr "`%s' için 'short', 'signed' veya 'unsigned' geçersiz"
-#: cp/decl.c:11037
+#: cp/decl.c:6919
#, c-format
msgid "long and short specified together for `%s'"
msgstr "`%s' için 'long' ve 'short' birlikte belirtilmiş"
-#: cp/decl.c:11048
+#: cp/decl.c:6930
#, c-format
msgid "signed and unsigned given together for `%s'"
msgstr "`%s' için 'signed' ve 'unsigned' birlikte verilmiş"
-#: cp/decl.c:11157
+#: cp/decl.c:7039
msgid "qualifiers are not allowed on declaration of `operator %T'"
msgstr "`operator %T' bildiriminde niteleyicilere izin verilmez"
-#: cp/decl.c:11179
+#: cp/decl.c:7061
msgid "member `%D' cannot be declared both virtual and static"
msgstr "üye `%D', hem virtual hem de static olarak bildirilemez"
-#: cp/decl.c:11188
+#: cp/decl.c:7070
msgid "`%T::%D' is not a valid declarator"
msgstr "`%T::%D' geçerli bir bildirici değil"
-#: cp/decl.c:11200
+#: cp/decl.c:7082
msgid "storage class specifiers invalid in parameter declarations"
msgstr "saklatım öbeği belirteçleri parametre bildirimi içinde geçersiz"
-#: cp/decl.c:11204
+#: cp/decl.c:7086
msgid "typedef declaration invalid in parameter declaration"
msgstr "«typedef» bildirimi parametre bildirimi içinde geçersiz"
-#: cp/decl.c:11217
+#: cp/decl.c:7099
msgid "virtual outside class declaration"
msgstr "sanal dış öbek bildirimi"
-#: cp/decl.c:11278
+#: cp/decl.c:7158
#, c-format
msgid "storage class specified for %s `%s'"
msgstr "%s için saklatım öbeği `%s' belirtilmiş"
-#: cp/decl.c:11325
+#: cp/decl.c:7193
+#, c-format
+msgid "top-level declaration of `%s' specifies `auto'"
+msgstr "`%s' için tepe-seviye bildirimi `auto' belirtiyor"
+
+#: cp/decl.c:7205
msgid "storage class specifiers invalid in friend function declarations"
msgstr "saklatım öbeği belirteçleri dost işlev bildirimleri içinde geçersiz"
-#: cp/decl.c:11495
+#: cp/decl.c:7370
msgid "destructor cannot be static member function"
msgstr "yıkıcı, statik üye işlevi olamaz"
-#: cp/decl.c:11498
+#: cp/decl.c:7373
#, c-format
msgid "destructors may not be `%s'"
msgstr "yıkıcılar `%s' olmayabilir"
-#: cp/decl.c:11519
+#: cp/decl.c:7394
msgid "constructor cannot be static member function"
msgstr "kurucu, statik üye işlevi olamaz"
-#: cp/decl.c:11522
+#: cp/decl.c:7397
msgid "constructors cannot be declared virtual"
msgstr "kurucular virtual olarak bildirilemez"
-#: cp/decl.c:11527
+#: cp/decl.c:7402
#, c-format
msgid "constructors may not be `%s'"
msgstr "kurucular `%s' olmayabilir"
-#: cp/decl.c:11537
+#: cp/decl.c:7412
msgid "return value type specifier for constructor ignored"
msgstr "kurucu için dönen değer tür belirteci yoksayıldı"
-#: cp/decl.c:11556
+#: cp/decl.c:7431
#, c-format
msgid "can't initialize friend function `%s'"
msgstr "kardeÅŸ iÅŸlev `%s' ilklendirilemiyor"
#. Cannot be both friend and virtual.
-#: cp/decl.c:11560
+#: cp/decl.c:7435
msgid "virtual functions cannot be friends"
msgstr "sanal iÅŸlevler kardeÅŸ iÅŸlev olamaz"
-#: cp/decl.c:11565
+#: cp/decl.c:7440
msgid "friend declaration not in class definition"
msgstr "kardeş bildirimi sınıf bildiriminde değil"
-#: cp/decl.c:11567
+#: cp/decl.c:7442
#, c-format
msgid "can't define friend function `%s' in a local class definition"
msgstr "yerel sınıf tanımı içinde kardeş işlev `%s' tanımlanamaz"
-#: cp/decl.c:11591
+#: cp/decl.c:7463
msgid "destructors may not have parameters"
msgstr "yıkıcılar parametre almaz"
-#: cp/decl.c:11622 cp/decl.c:11629
+#: cp/decl.c:7483 cp/decl.c:7490
msgid "cannot declare reference to `%#T'"
msgstr "`%#T' ye referans bildirilemez"
-#: cp/decl.c:11623
+#: cp/decl.c:7484
msgid "cannot declare pointer to `%#T'"
msgstr "`%#T' türüne gösterici bildirilemez"
-#: cp/decl.c:11628
+#: cp/decl.c:7489
msgid "cannot declare pointer to `%#T' member"
msgstr "`%#T' üyeye gösterici bildirilemez"
-#: cp/decl.c:11804
+#: cp/decl.c:7627
msgid "extra qualification `%T::' on member `%s' ignored"
msgstr "fazladan niteleme `%T::' üye `%s' üzerinde yoksayıldı"
-#: cp/decl.c:11814
+#: cp/decl.c:7639
msgid "cannot declare member function `%T::%s' within `%T'"
msgstr "üye işlev `%T::%s' `%T' içinde bildirilemez"
-#: cp/decl.c:11829
+#: cp/decl.c:7654
msgid "cannot declare member `%T::%s' within `%T'"
msgstr "üye `%T::%s' `%T' içinde bildirilemez"
-#: cp/decl.c:11908
+#: cp/decl.c:7734
msgid "data member may not have variably modified type `%T'"
msgstr "veri üyesi değişkene göre değişen `%T' türünde olamaz"
-#: cp/decl.c:11910
+#: cp/decl.c:7736
msgid "parameter may not have variably modified type `%T'"
msgstr "parametre değişkene göre değişen `%T' türünde olamaz"
#. [dcl.fct.spec] The explicit specifier shall only be used in
#. declarations of constructors within a class definition.
-#: cp/decl.c:11918
+#: cp/decl.c:7744
msgid "only declarations of constructors can be `explicit'"
msgstr "sadece kurucuların bildirimleri `explicit' olabilir"
-#: cp/decl.c:11926
+#: cp/decl.c:7752
#, c-format
msgid "non-member `%s' cannot be declared `mutable'"
msgstr "üye olmayan `%s', `mutable' olarak bildirilemez"
-#: cp/decl.c:11931
+#: cp/decl.c:7757
#, c-format
msgid "non-object member `%s' cannot be declared `mutable'"
msgstr "nesne olmayan `%s' `mutable' olarak bildirilemez"
-#: cp/decl.c:11937
+#: cp/decl.c:7763
#, c-format
msgid "function `%s' cannot be declared `mutable'"
msgstr "iÅŸlev `%s' `mutable' olarak bildirilemez"
-#: cp/decl.c:11942
+#: cp/decl.c:7768
#, c-format
msgid "static `%s' cannot be declared `mutable'"
msgstr "static `%s' `mutable' olarak bildirilemez"
-#: cp/decl.c:11947
+#: cp/decl.c:7773
#, c-format
msgid "const `%s' cannot be declared `mutable'"
msgstr "const `%s' `mutable' olarak bildirilemez"
-#: cp/decl.c:11960
+#: cp/decl.c:7786
msgid "template-id `%D' used as a declarator"
msgstr "şablon kimliği `%D' bir bildirici olarak kullanılmış"
-#: cp/decl.c:11981
+#: cp/decl.c:7807
msgid "ISO C++ forbids nested type `%D' with same name as enclosing class"
msgstr "ISO C++ zarflayan sınıf ile aynı isimde yuvalanmış tür `%D' ye izin vermez"
-#: cp/decl.c:12030
-msgid "typedef name may not be class-qualified"
+#: cp/decl.c:7815
+#, fuzzy
+msgid "%Jtypedef name may not be a nested-name-specifier"
msgstr "typedef ismi sınıf nitelemeli olmayabilir"
-#: cp/decl.c:12038
-msgid "invalid type qualifier for non-member function type"
+#: cp/decl.c:7861
+#, fuzzy
+msgid "%Jinvalid type qualifier for non-member function type"
msgstr "üyesiz işlev türleri için tür niteleyici geçersiz"
-#: cp/decl.c:12101
+#: cp/decl.c:7925
msgid "type qualifiers specified for friend class declaration"
msgstr "kardeş sınıf bildirimi için tür niteleyiciler belirtilmiş"
-#: cp/decl.c:12106
+#: cp/decl.c:7930
msgid "`inline' specified for friend class declaration"
msgstr "hardeş sınıf bildirimi için `inline' belirtilmiş"
-#: cp/decl.c:12114
+#: cp/decl.c:7938
msgid "template parameters cannot be friends"
msgstr "ÅŸablon parametreleri kardeÅŸler olamaz"
-#: cp/decl.c:12116
+#: cp/decl.c:7940
msgid "friend declaration requires class-key, i.e. `friend class %T::%D'"
msgstr "friend bildirimi sınıf anahtarı gerektirir, `friend class %T::%D' gibi"
-#: cp/decl.c:12120
+#: cp/decl.c:7944
msgid "friend declaration requires class-key, i.e. `friend %#T'"
msgstr "kardeş bildirimi `friend %#T' gibi bir sınıf anahtarı gerektirir"
-#: cp/decl.c:12134
+#: cp/decl.c:7957
msgid "trying to make class `%T' a friend of global scope"
msgstr "sınıf `%T' genel bağlamın kardeşi yapılmaya çalışılıyor"
-#: cp/decl.c:12145
+#: cp/decl.c:7968
msgid "invalid qualifiers on non-member function type"
msgstr "üyesiz işlev türünde geçersiz niteleyici"
-#: cp/decl.c:12164
+#: cp/decl.c:7987
msgid "abstract declarator `%T' used as declaration"
msgstr "mutlak bildirimci `%T' bildirim olarak kullanılmış"
-#: cp/decl.c:12176
+#: cp/decl.c:7999
msgid "unnamed variable or field declared void"
msgstr "adsız değişken ya da alan void olarak bildirilmiş"
-#: cp/decl.c:12185
+#: cp/decl.c:8008
msgid "variable or field declared void"
msgstr "deÄŸiÅŸken ya da alan void olarak bildirilmiÅŸ"
-#: cp/decl.c:12195
+#: cp/decl.c:8018
msgid "cannot use `::' in parameter declaration"
msgstr "parametre bildiriminde `::' kullanılamaz"
#. Something like struct S { int N::j; };
-#: cp/decl.c:12234
+#: cp/decl.c:8063
msgid "invalid use of `::'"
msgstr "`::' kullanımı geçersiz"
-#: cp/decl.c:12246
+#: cp/decl.c:8075
msgid "function `%D' cannot be declared friend"
msgstr "iÅŸlev `%D' kardeÅŸ olarak bildirilemez"
-#: cp/decl.c:12258
+#: cp/decl.c:8087
msgid "can't make `%D' into a method -- not in a class"
msgstr "bir yöntem içinde `%D' yapılamaz -- sınıf içinde değil"
-#: cp/decl.c:12267
+#: cp/decl.c:8096
msgid "function `%D' declared virtual inside a union"
msgstr "işlev `%D' bir birleşik yapı içinde virtual olarak bildirilmiş"
-#: cp/decl.c:12279
+#: cp/decl.c:8108
msgid "`%D' cannot be declared virtual, since it is always static"
msgstr "`%D' daima static olduÄŸundan sanal bildirilemez"
-#: cp/decl.c:12355
+#: cp/decl.c:8185
msgid "field `%D' has incomplete type"
msgstr "`%D' alanı içi boş türde"
-#: cp/decl.c:12357
+#: cp/decl.c:8187
msgid "name `%T' has incomplete type"
msgstr "isim `%T' içi boş türde"
-#: cp/decl.c:12366
+#: cp/decl.c:8196
msgid " in instantiation of template `%T'"
msgstr " şablon `%T' gerçeklemesinde"
-#: cp/decl.c:12376
+#: cp/decl.c:8206
#, c-format
msgid "`%s' is neither function nor member function; cannot be declared friend"
msgstr "`%s' ne işlev ne de üye işlev; kardeş olarak bildirilemez"
-#: cp/decl.c:12387
+#: cp/decl.c:8217
msgid "member functions are implicitly friends of their class"
msgstr "üye işlevler sınıflarının örtük kardeşleridir"
@@ -15582,99 +14884,95 @@ msgstr "üye işlevler sınıflarının örtük kardeşleridir"
#. the rest of the compiler does not correctly
#. handle the initialization unless the member is
#. static so we make it static below.
-#: cp/decl.c:12434
+#: cp/decl.c:8258
msgid "ISO C++ forbids initialization of member `%D'"
msgstr "ISO C++ üye `%D' ilklendirmesine izin vermez"
-#: cp/decl.c:12436
+#: cp/decl.c:8260
msgid "making `%D' static"
msgstr "`%D' static yapılıyor"
-#: cp/decl.c:12460
+#: cp/decl.c:8283
msgid "ISO C++ forbids static data member `%D' with same name as enclosing class"
msgstr "ISO C++ zarflayan sınıf ile aynı isimde statik veri üyesi `%D' ye izin vermez"
-#: cp/decl.c:12501
+#: cp/decl.c:8323
#, c-format
msgid "storage class `auto' invalid for function `%s'"
msgstr "saklama sınıfı `auto' `%s' işlevi için geçersiz"
-#: cp/decl.c:12503
+#: cp/decl.c:8325
#, c-format
msgid "storage class `register' invalid for function `%s'"
msgstr "saklama sınıfı `register' `%s' işlevi için geçersiz"
-#: cp/decl.c:12505
+#: cp/decl.c:8327
#, c-format
msgid "storage class `__thread' invalid for function `%s'"
msgstr "saklama sınıfı `__thread' `%s' işlevi için geçersiz"
-#: cp/decl.c:12516
+#: cp/decl.c:8338
#, c-format
msgid "storage class `static' invalid for function `%s' declared out of global scope"
msgstr "saklama sınıfı `static' genel kapsam dışı bildirilmiş işlev `%s' için geçersiz"
-#: cp/decl.c:12518
+#: cp/decl.c:8340
#, c-format
msgid "storage class `inline' invalid for function `%s' declared out of global scope"
msgstr "`inline' saklama sınıfı, genel kapsam dışında bildirilen `%s' işlevi için geçersiz"
-#: cp/decl.c:12525
+#: cp/decl.c:8347
#, c-format
msgid "virtual non-class function `%s'"
msgstr "sanal sınıf olmayan işlev `%s'"
-#: cp/decl.c:12554
+#: cp/decl.c:8377
msgid "cannot declare member function `%D' to have static linkage"
msgstr "üye işlev `%D' static ilintilemeli olarak bildirilemez"
#. FIXME need arm citation
-#: cp/decl.c:12560
+#: cp/decl.c:8383
msgid "cannot declare static function inside another function"
msgstr "statik işlev diğer bir işlevin içinde bildirilemez"
-#: cp/decl.c:12588
+#: cp/decl.c:8411
msgid "`static' may not be used when defining (as opposed to declaring) a static data member"
msgstr "`static' bir statik veri üyesini tanımlarken (bildirime zıt olarak) kullanılamayabilir"
-#: cp/decl.c:12594
+#: cp/decl.c:8417
msgid "static member `%D' declared `register'"
msgstr "statik üye `%D' `register' olarak bildirilmiş"
-#: cp/decl.c:12599
+#: cp/decl.c:8422
msgid "cannot explicitly declare member `%#D' to have extern linkage"
msgstr "üye `%#D' extern ilintilemeye sahip olacak şekilde doğrudan bildirilemez"
-#: cp/decl.c:12774
+#: cp/decl.c:8564
msgid "default argument for `%#D' has type `%T'"
msgstr "`%#D' için öntanımlı argüman `%T' türünde"
-#: cp/decl.c:12777
+#: cp/decl.c:8567
msgid "default argument for parameter of type `%T' has type `%T'"
msgstr "`%T' türündeki parametrenin öntanımlı argümanı `%T' türünde"
-#: cp/decl.c:12794
+#: cp/decl.c:8584
msgid "default argument `%E' uses local variable `%D'"
msgstr "öntanımlı argüman `%E' yerel değişken `%D' yi kullanıyor"
-#: cp/decl.c:12839
+#: cp/decl.c:8628
#, c-format
msgid "invalid string constant `%E'"
msgstr "geçersiz dizge sabit `%E'"
-#: cp/decl.c:12841
+#: cp/decl.c:8630
msgid "invalid integer constant in parameter list, did you forget to give parameter name?"
msgstr "parametre listesindeki tamsayı sabit geçersiz, parametre ismi vermeyi unuttunuz mu?"
-#: cp/decl.c:12879
+#: cp/decl.c:8668
msgid "parameter `%D' invalidly declared method type"
msgstr "parametre `%D' geçersiz olarak yöntem türünde bildirilmiş"
-#: cp/decl.c:12885
-msgid "parameter `%D' invalidly declared offset type"
-msgstr "parametre `%D' geçersiz olarak göreli konum türünde bildirilmiş"
-
-#: cp/decl.c:12909
+#: cp/decl.c:8692
msgid "parameter `%D' includes %s to array of unknown bound `%T'"
msgstr "parametre `%D' bilinmeyen `%T' sınırlı diziye %s içeriyor"
@@ -15693,509 +14991,352 @@ msgstr "parametre `%D' bilinmeyen `%T' sınırlı diziye %s içeriyor"
#. or implicitly defined), there's no need to worry about their
#. existence. Theoretically, they should never even be
#. instantiated, but that's hard to forestall.
-#: cp/decl.c:13071
+#: cp/decl.c:8851
msgid "invalid constructor; you probably meant `%T (const %T&)'"
msgstr "kurucu geçersiz; `%T (const %T&)' anlamında kullandınız galiba"
-#: cp/decl.c:13222
+#: cp/decl.c:8991
msgid "`%D' must be a nonstatic member function"
msgstr "`%D' static olmayan bir üye işlev olmalıdır"
-#: cp/decl.c:13228
+#: cp/decl.c:8997
msgid "`%D' must be either a non-static member function or a non-member function"
msgstr "`%D' ya bir statik olmayan işlev ya da üye olmayan işlev olmalıdır"
-#: cp/decl.c:13245
+#: cp/decl.c:9014
msgid "`%D' must have an argument of class or enumerated type"
msgstr "`%D' bir sınıf argümanına sahip olmalı ya da enum türünde olmalı"
-#: cp/decl.c:13277
+#: cp/decl.c:9049
#, c-format
msgid "conversion to %s%s will never use a type conversion operator"
msgstr "%s%s e dönüşüm asla bir tür dönüşüm işleci kullanmayacak"
#. 13.4.0.3
-#: cp/decl.c:13284
+#: cp/decl.c:9056
msgid "ISO C++ prohibits overloading operator ?:"
msgstr "ISO C++ işleci ?: nın aşırı yüklenmesini yasaklar"
-#: cp/decl.c:13334
+#: cp/decl.c:9106
msgid "postfix `%D' must take `int' as its argument"
msgstr "sonek `%D' argüman olarak `int' almalı"
-#: cp/decl.c:13338
+#: cp/decl.c:9110
msgid "postfix `%D' must take `int' as its second argument"
msgstr "sonek `%D' ikinci argümanı olarak `int' almalı"
-#: cp/decl.c:13345
+#: cp/decl.c:9117
msgid "`%D' must take either zero or one argument"
msgstr "`%D' ya hiç argüman almamalı ya da bir argüman almalı"
-#: cp/decl.c:13347
+#: cp/decl.c:9119
msgid "`%D' must take either one or two arguments"
msgstr "`%D' ya bir ya da iki argüman almalı"
-#: cp/decl.c:13368
+#: cp/decl.c:9140
msgid "prefix `%D' should return `%T'"
msgstr "önek `%D' `%T' döndürmeli"
-#: cp/decl.c:13374
+#: cp/decl.c:9146
msgid "postfix `%D' should return `%T'"
msgstr "sonek `%D' `%T' ile dönmeli"
-#: cp/decl.c:13383
+#: cp/decl.c:9155
msgid "`%D' must take `void'"
msgstr "`%D' `void' almalı"
-#: cp/decl.c:13385 cp/decl.c:13393
+#: cp/decl.c:9157 cp/decl.c:9165
msgid "`%D' must take exactly one argument"
msgstr "`%D' kesinlikle bir argüman almalı"
-#: cp/decl.c:13395
+#: cp/decl.c:9167
msgid "`%D' must take exactly two arguments"
msgstr "`%D' kesinlikle iki argüman almalı"
-#: cp/decl.c:13403
+#: cp/decl.c:9175
msgid "user-defined `%D' always evaluates both arguments"
msgstr "kullanıcı tanımlı `%D' daima her iki argümanıyla birlikte değerlendirilir"
-#: cp/decl.c:13417
+#: cp/decl.c:9189
msgid "`%D' should return by value"
msgstr "`%D' değeriyle döndürülmeli"
-#: cp/decl.c:13429 cp/decl.c:13432
+#: cp/decl.c:9201 cp/decl.c:9204
msgid "`%D' cannot have default arguments"
msgstr "`%D' öntanımlı argümanlara sahip olamaz"
-#: cp/decl.c:13475
+#: cp/decl.c:9264
msgid "using typedef-name `%D' after `%s'"
msgstr "typedef-ismi `%D' `%s' den sonra kullanılıyor"
-#: cp/decl.c:13481
+#: cp/decl.c:9270
msgid "using template type parameter `%T' after `%s'"
msgstr "`%s' den sonra şablon tür parametresi `%T' kullanımı"
-#: cp/decl.c:13542
-msgid "`%s %T' declares a new type at namespace scope"
-msgstr "isim alanı bağlamında `%s %T' bir yeni tür bildiriyor"
+#: cp/decl.c:9278
+#, fuzzy
+msgid "`%T' referred to as `%s'"
+msgstr "`%#D' %C olarak yeniden bildirilmiÅŸ"
+
+#: cp/decl.c:9284
+#, fuzzy
+msgid "`%T' referred to as enum"
+msgstr "`%#D' %C olarak yeniden bildirilmiÅŸ"
-#: cp/decl.c:13545
-msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
-msgstr " bağımlı taban sınıflardaki isimler nitelemesiz isim aramasında görünür değil - kalıt türe başvurması için `%s %T::%T' denebilir"
+#. If a class template appears as elaborated type specifier
+#. without a template header such as:
+#.
+#. template <class T> class C {};
+#. void f(class C); // No template header here
+#.
+#. then the required template argument is missing.
+#: cp/decl.c:9299
+#, fuzzy
+msgid "template argument required for `%s %T'"
+msgstr "şablon argüman `%#T' için gereklidir"
-#: cp/decl.c:13663
+#: cp/decl.c:9445
msgid "use of enum `%#D' without previous declaration"
msgstr "önceden bildirilmeksizin enum `%#D' kullanımı"
-#: cp/decl.c:13749
+#: cp/decl.c:9530
msgid "derived union `%T' invalid"
msgstr "türetilmiş union `%T' geçersiz"
-#: cp/decl.c:13795
+#: cp/decl.c:9583
msgid "base type `%T' fails to be a struct or class type"
msgstr "taban tür `%T' bir yapı veya sınıf türü olarak hatalı"
-#: cp/decl.c:13805
-msgid "base class `%T' has incomplete type"
-msgstr "taban sınıf `%T' içi boş türde"
-
-#: cp/decl.c:13813
+#: cp/decl.c:9591
msgid "recursive type `%T' undefined"
msgstr "özyinelemeli tür `%T' tanımsız"
-#: cp/decl.c:13815
+#: cp/decl.c:9593
msgid "duplicate base type `%T' invalid"
msgstr "yinelenmiş taban türü `%T' geçersiz"
-#: cp/decl.c:13926
+#: cp/decl.c:9671
+msgid "Java class '%T' cannot have multiple bases"
+msgstr ""
+
+#: cp/decl.c:9673
+#, fuzzy
+msgid "Java class '%T' cannot have virtual bases"
+msgstr "taban sınıf `%#T' bir sanal olmayan yıkıcıya sahip"
+
+#: cp/decl.c:9713
msgid "multiple definition of `%#T'"
msgstr "`%#T' çoklu tanımları"
-#: cp/decl.c:13927
-msgid "previous definition here"
+#: cp/decl.c:9714
+#, fuzzy
+msgid "%Jprevious definition here"
msgstr "önceden burada tanımlı"
-#: cp/decl.c:14030
+#. DR 377
+#.
+#. IF no integral type can represent all the enumerator values, the
+#. enumeration is ill-formed.
+#: cp/decl.c:9849
msgid "no integral type can represent all of the enumerator values for `%T'"
msgstr "`%T' için tüm sembolik sabit değerlerini temsil edebilen bir tümleyen tür yok"
-#: cp/decl.c:14106
+#: cp/decl.c:9939
msgid "enumerator value for `%D' not integer constant"
msgstr "`%D' için sembolik sabitin değeri tamsayı sabit değil"
-#: cp/decl.c:14126
+#: cp/decl.c:9959
msgid "overflow in enumeration values at `%D'"
msgstr "`%D' de sembolik sabit listesi deÄŸerlerinde taÅŸma"
-#: cp/decl.c:14195
+#: cp/decl.c:10028
msgid "return type `%#T' is incomplete"
msgstr "dönüş türü `%#T' bir içi boş tür"
-#: cp/decl.c:14309
-msgid "semicolon missing after declaration of `%#T'"
-msgstr "`%T' bildiriminden sonra ; yok"
-
-#: cp/decl.c:14330
+#: cp/decl.c:10148
msgid "return type for `main' changed to `int'"
msgstr "`main' için dönen tür `int' olarak değişti"
-#: cp/decl.c:14361
+#: cp/decl.c:10178
msgid "`%D' implicitly declared before its definition"
msgstr "`%D' tanımından önce dolaylı olarak bildirilmiş"
-#: cp/decl.c:14383 cp/typeck.c:6314
+#: cp/decl.c:10200 cp/typeck.c:6011
msgid "`operator=' should return a reference to `*this'"
msgstr "`operator=' `*this'e bir referans döndürmeli"
-#: cp/decl.c:14643
+#: cp/decl.c:10472
msgid "parameter `%D' declared void"
msgstr "parametre `%D' void olarak bildirilmiÅŸ"
-#: cp/decl.c:15130
+#: cp/decl.c:10938
+#, fuzzy
+msgid "invalid member function declaration"
+msgstr "geçersiz üye şablonu bildirimi `%D'"
+
+#: cp/decl.c:10955
msgid "`%D' is already defined in class `%T'"
msgstr "`%D' zaten sınıf `%T' içinde tanımlı"
-#: cp/decl.c:15348
+#: cp/decl.c:11168
msgid "static member function `%#D' declared with type qualifiers"
msgstr "statik üye işlev `%#D' tür niteleyicilerle bildirilmiş"
-#: cp/decl2.c:153
+#: cp/decl2.c:143
#, c-format
msgid "duplicate type qualifiers in %s declaration"
msgstr "%s bildirimde yinelenmiş tür niteleyiciler"
-#: cp/decl2.c:192
-msgid "template `%#D' instantiated in file without #pragma interface"
-msgstr "şablon `%#D' dosya içinde #pragma arabirimsiz gerçeklendi"
-
-#: cp/decl2.c:198
-msgid "template `%#D' defined in file without #pragma interface"
-msgstr "şablon `%#D' dosya içinde #pragma arabirimsiz tanımlandı"
-
-#: cp/decl2.c:365
+#: cp/decl2.c:316
msgid "name missing for member function"
msgstr "üye işlev için isim eksik"
-#. Something has gone very wrong. Assume we are mistakenly reducing
-#. an expression instead of a declaration.
-#: cp/decl2.c:428
-msgid "parser may be lost: is there a '{' missing somewhere?"
-msgstr "ayrıştırıcı kayıp olabilir: bir yerlerde kayıp '{' var mı?"
-
-#: cp/decl2.c:459 cp/decl2.c:473
+#: cp/decl2.c:408 cp/decl2.c:422
msgid "ambiguous conversion for array subscript"
msgstr "dizi altindisi için dönüşüm belirsiz"
-#: cp/decl2.c:467
+#: cp/decl2.c:416
msgid "invalid types `%T[%T]' for array subscript"
msgstr "dizi altindisi için geçersiz türler `%T[%T]'"
-#: cp/decl2.c:515
+#: cp/decl2.c:464
msgid "type `%#T' argument given to `delete', expected pointer"
msgstr "`%#T' türünde argüman `silinecek' olarak belirtilmiş, gösterici umuluyordu"
-#: cp/decl2.c:523
+#: cp/decl2.c:472
msgid "anachronistic use of array size in vector delete"
msgstr "vektör silmede dizi boyutunun zamansız kullanımı"
-#: cp/decl2.c:533
+#: cp/decl2.c:482
msgid "cannot delete a function. Only pointer-to-objects are valid arguments to `delete'"
msgstr "bir işlev silinemez. Sadece nesnelerin göstericileri `silinecek' geçerli argümanlardır."
-#: cp/decl2.c:540
+#: cp/decl2.c:489
msgid "deleting `%T' is undefined"
msgstr "`%T' silinmesi tanımsız"
-#: cp/decl2.c:548
+#: cp/decl2.c:497
msgid "deleting array `%#D'"
msgstr "dizi `%#D' siliniyor"
#. 14.5.2.2 [temp.mem]
#.
#. A local class shall not have member templates.
-#: cp/decl2.c:582
+#: cp/decl2.c:530
msgid "invalid declaration of member template `%#D' in local class"
msgstr "yerel sınıf içinde üye şablonu `%#D' nin bildirimi geçersiz"
-#: cp/decl2.c:591
+#: cp/decl2.c:539
msgid "invalid use of `virtual' in template declaration of `%#D'"
msgstr "`%#D' şablon bildiriminde geçersiz `virtual' kullanımı"
-#: cp/decl2.c:601 cp/pt.c:2745
+#: cp/decl2.c:549 cp/pt.c:2830
msgid "template declaration of `%#D'"
msgstr "`%#D' ÅŸablon bildirimi"
-#: cp/decl2.c:651
+#: cp/decl2.c:598
msgid "Java method '%D' has non-Java return type `%T'"
msgstr "Java yöntemi '%D' Java olmayan dönen tür `%T' içeriyor"
-#: cp/decl2.c:660
+#: cp/decl2.c:614
msgid "Java method '%D' has non-Java parameter type `%T'"
msgstr "Java yöntemi '%D' Java olmayan parametre türü `%T' içeriyor"
-#: cp/decl2.c:746
+#: cp/decl2.c:705
msgid "prototype for `%#D' does not match any in class `%T'"
msgstr "`%#D' prototipi sınıf `%T' içindeki hiçbir şeyle eşleşmiyor"
-#: cp/decl2.c:828
+#: cp/decl2.c:784
msgid "local class `%#T' shall not have static data member `%#D'"
msgstr "yerel sınıf `%#T static veri üyesi `%#D' içermemeli"
-#: cp/decl2.c:836
+#: cp/decl2.c:792
msgid "initializer invalid for static member with constructor"
msgstr "kuruculu statik üye için ilklendirici geçersiz"
-#: cp/decl2.c:839
+#: cp/decl2.c:795
msgid "(an out of class initialization is required)"
msgstr "(bir sınıf dışı ilklendirme gerekli)"
-#: cp/decl2.c:898
-msgid "invalid data member initialization"
-msgstr "geçersiz veri üyesi ilklendirmesi"
-
-#: cp/decl2.c:901
-msgid "(use `=' to initialize static data members)"
-msgstr "(statik veri üyelerini ilklendirmek için `=' kullanın)"
-
-#: cp/decl2.c:947
+#: cp/decl2.c:878
msgid "member `%D' conflicts with virtual function table field name"
msgstr "üye `%D' sanal işlev tablosu alan ismi ile çelişiyor"
-#: cp/decl2.c:967
+#: cp/decl2.c:895
msgid "`%D' is already defined in `%T'"
msgstr "`%D' zaten `%T' içinde tanımlı"
-#: cp/decl2.c:1014
+#: cp/decl2.c:942
msgid "field initializer is not constant"
msgstr "alan ilklendirici sabit deÄŸil"
-#: cp/decl2.c:1038
+#: cp/decl2.c:970
msgid "`asm' specifiers are not permitted on non-static data members"
msgstr "`asm' belirteçlerinde statik olmayan veri üyeleri kullanılamaz"
-#: cp/decl2.c:1090
+#: cp/decl2.c:1020
msgid "cannot declare `%D' to be a bit-field type"
msgstr "`%D' bir bit alanı türü olarak bildirilemez"
-#: cp/decl2.c:1100
+#: cp/decl2.c:1030
msgid "cannot declare bit-field `%D' with function type"
msgstr "bir alanı `%D' işlev türle bildirilemez"
-#: cp/decl2.c:1107
+#: cp/decl2.c:1037
msgid "`%D' is already defined in the class %T"
msgstr "`%D' zaten sınıf %T içinde tanımlı"
-#: cp/decl2.c:1114
+#: cp/decl2.c:1044
msgid "static member `%D' cannot be a bit-field"
msgstr "static üye `%D' bir bit alanı olarak bildirilemez"
-#: cp/decl2.c:1201
+#: cp/decl2.c:1103
msgid "initializer specified for non-member function `%D'"
msgstr "üye olmayan işlev `%D' için ilklendirici belirtilmiş"
-#: cp/decl2.c:1205
+#: cp/decl2.c:1107
msgid "invalid initializer for virtual method `%D'"
msgstr "sanal yöntem `%D' için geçersiz ilklendirici"
-#: cp/decl2.c:1319
+#: cp/decl2.c:1154
msgid "anonymous struct not inside named type"
msgstr "anonim yapı isimli türün içinde değil"
-#: cp/decl2.c:1415
+#: cp/decl2.c:1224
msgid "namespace-scope anonymous aggregates must be static"
msgstr "isim alanı bağlamındaki anonim kümeler static olmalıdır"
-#: cp/decl2.c:1428
-msgid "anonymous aggregate with no members"
+#: cp/decl2.c:1231
+#, fuzzy
+msgid "anonymous union with no members"
msgstr "üyesiz anonim küme"
-#: cp/decl2.c:1497
+#: cp/decl2.c:1265
msgid "`operator new' must return type `%T'"
msgstr "`operator new' `%T' türünde dönmeli"
-#: cp/decl2.c:1505
+#: cp/decl2.c:1273
msgid "`operator new' takes type `size_t' (`%T') as first parameter"
msgstr "`operator new' ilk parametreyi `size_t' (`%T') türünde alır"
-#: cp/decl2.c:1532
+#: cp/decl2.c:1299
msgid "`operator delete' must return type `%T'"
msgstr "`operator delete' `%T' türünde dönmeli"
-#: cp/decl2.c:1540
+#: cp/decl2.c:1307
msgid "`operator delete' takes type `%T' as first parameter"
msgstr "`operator delete' ilk parametreyi `%T'` türünde alır"
-#. Overflow occurred. That means there are at least 4 billion
-#. initialization functions.
-#: cp/decl2.c:2282
-msgid "too many initialization functions required"
-msgstr "çok fazla ilklendirme işlevi gerekli"
-
-#: cp/decl2.c:3006
+#: cp/decl2.c:2814
msgid "inline function `%D' used but never defined"
msgstr "özümlenen işlev `%D' tanımlanmadan kullanılmış"
-#: cp/decl2.c:3135
-msgid "use of old-style cast"
-msgstr "eski tarz tür dönüşümü"
-
-#: cp/decl2.c:3860
-msgid "use of `%D' is ambiguous"
-msgstr "`%D' kullanımı belirsiz"
-
-#: cp/decl2.c:3861
-msgid " first declared as `%#D' here"
-msgstr " ilk defa burada `%#D' olarak bildirilmiÅŸ"
-
-#: cp/decl2.c:3864
-msgid " also declared as `%#D' here"
-msgstr " ayrıca burada da `%#D' olarak bildirilmiş"
-
-#: cp/decl2.c:3879
-msgid "`%D' denotes an ambiguous type"
-msgstr "`%D' bir belirsiz tür gösteriyor"
-
-#: cp/decl2.c:3880
-msgid " first type here"
-msgstr " ilk tür burada"
-
-#: cp/decl2.c:3881
-msgid " other type here"
-msgstr " diğer tür burada"
-
-#: cp/decl2.c:3982
-msgid "declaration of `%D' not in a namespace surrounding `%D'"
-msgstr "`%D' bildirimi `%D' yi kuşatan isim alanının içinde değil"
-
-#: cp/decl2.c:4016
-msgid "`%D' should have been declared inside `%D'"
-msgstr "`%D' zaten `%D' içinde bildirilmişti"
-
-#: cp/decl2.c:4152
-msgid "`%D' is not a function,"
-msgstr "`%D' bir iÅŸlev deÄŸil,"
-
-#: cp/decl2.c:4153
-msgid " conflict with `%D'"
-msgstr " `%D' ile çelişiyor"
-
-#. The parser did not find it, so it's not there.
-#: cp/decl2.c:4473
-msgid "unknown namespace `%D'"
-msgstr "bilinmeyen isim alanı `%D'"
-
-#: cp/decl2.c:4507 cp/decl2.c:4794
-msgid "`%T' is not a namespace"
-msgstr "`%T' bir isim alanı değil"
-
-#: cp/decl2.c:4509
-msgid "`%D' is not a namespace"
-msgstr "`%D' bir isim alanı değil"
-
-#: cp/decl2.c:4518
-msgid "a using-declaration cannot specify a template-id. Try `using %D'"
-msgstr "bir using bildirimi bir ÅŸablon kimliÄŸi belirtemez. `using %D' deneyin"
-
-#: cp/decl2.c:4532
-msgid "namespace `%D' not allowed in using-declaration"
-msgstr "using bildiriminde isim alanı `%D' kullanılamaz"
-
-#: cp/decl2.c:4561
-msgid "`%D' not declared"
-msgstr "`%D' bildirilmemiÅŸ"
-
-#. If the OLD_FN was really declared, the
-#. declarations don't match.
-#: cp/decl2.c:4573 cp/decl2.c:4615 cp/decl2.c:4640
-msgid "`%D' is already declared in this scope"
-msgstr "`%D' zaten bu baÄŸlamda bildirilmiÅŸ"
-
-#: cp/decl2.c:4646
-msgid "using declaration `%D' introduced ambiguous type `%T'"
-msgstr "using bildirimi `%D' belirsiz tür `%T' ye dahil edildi"
-
-#: cp/decl2.c:4740
-msgid "using-declaration for non-member at class scope"
-msgstr "sınıf bağlamında üye olmayan için using bildirimi"
-
-#: cp/decl2.c:4746
-msgid "using-declaration for destructor"
-msgstr "yıkıcı için using bildirimi"
-
-#: cp/decl2.c:4752
-msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
-msgstr "bir using bildirimi bir ÅŸablon kimliÄŸi belirtemez. `using %T::%D' deneyin"
-
-#: cp/decl2.c:4788
-msgid "namespace `%T' undeclared"
-msgstr "isim alanı `%T' bildirimsiz"
-
-#: cp/decl2.c:4817
+#: cp/decl2.c:2960
msgid "default argument missing for parameter %P of `%+#D'"
msgstr "parametre %P (`%+#D' nin) için öntanımlı argüman eksik"
-#: cp/decl2.c:4941
-msgid "extra qualification `%T::' on member `%D' ignored"
-msgstr "fazladan `%T::' nitelemesi üye `%D' üstünde yoksayıldı"
-
-#: cp/decl2.c:4945
-msgid "`%T' does not have a class or union named `%D'"
-msgstr "`%T' `%D' isminde bir sınıf ya da birleşik yapı içermiyor"
-
-#: cp/decl2.c:4963
-msgid "`%T' is not a class or union type"
-msgstr "`%T' bir sınıf ya da birleşik yapı değil"
-
-#: cp/decl2.c:4977
-msgid "template argument is required for `%T'"
-msgstr "şablon argüman `%#T' için gereklidir"
-
-#: cp/decl2.c:4995
-msgid "declaration of `%D' in `%D' which does not enclose `%D'"
-msgstr "`%D' bildirimi `%D' içinde ve bu `%D' yi kapsamıyor"
-
-#: cp/error.c:35
-#, c-format
-msgid "`%s' not supported by %s"
-msgstr "`%s', %s tarafından desteklenmiyor"
-
-#: cp/error.c:571
-#, c-format
-msgid "<anonymous %s>"
-msgstr "<anonim %s>"
-
-#: cp/error.c:810
-#, c-format
-msgid "(static %s for %s)"
-msgstr "(%2$s için statik %1$s)"
-
-#: cp/error.c:1503
-#, c-format
-msgid "\\x%x"
-msgstr "\\x%x"
-
-#: cp/error.c:2473
-#, c-format
-msgid "In %s `%s':"
-msgstr "%s `%s' içinde:"
-
-#: cp/error.c:2530
-#, c-format
-msgid "%s: In instantiation of `%s':\n"
-msgstr "%s: `%s' gerçeklemesi içinde:\n"
-
-#: cp/error.c:2554
-#, c-format
-msgid "%s:%d: instantiated from `%s'\n"
-msgstr "%s:%d: `%s' den gerçeklenmiş\n"
-
-#: cp/error.c:2559
-#, c-format
-msgid "%s:%d: instantiated from here\n"
-msgstr "%s:%d: buradan gerçeklenmiş\n"
-
#. damn ICE suppression
-#: cp/error.c:2713
+#: cp/error.c:2374
#, c-format
msgid "unexpected letter `%c' in locate_error\n"
msgstr "locate_error içinde umulmayan `%c' harfi\n"
@@ -16214,158 +15355,180 @@ msgstr "Java `catch' ya da `throw' a `jthrowable' ile çağrı tanımsız"
msgid "type `%T' is not derived from `java::lang::Throwable'"
msgstr "tür `%T' `java::lang::Throwable'dan türetilmemiştir"
-#: cp/except.c:322
+#: cp/except.c:321
msgid "mixing C++ and Java catches in a single translation unit"
msgstr "tek çeviri birimi içinde karışık C++ ve Java tuzakları"
-#: cp/except.c:639
+#: cp/except.c:630
msgid "throwing NULL, which has integral, not pointer type"
msgstr "tümleyen, gösterici olmayan NULL yakalanıyor"
-#: cp/except.c:730
+#: cp/except.c:653 cp/init.c:2029
+#, fuzzy
+msgid "`%D' should never be overloaded"
+msgstr "`%D' değeriyle döndürülmeli"
+
+#: cp/except.c:722
msgid " in thrown expression"
msgstr " düşük ifade içinde"
-#: cp/except.c:856
+#: cp/except.c:843
msgid "expression '%E' of abstract class type '%T' cannot be used in throw-expression"
msgstr "ifade '%E', '%T' mutlak sınıf türünde throw ifadesi içinde kullanılamaz"
-#: cp/except.c:944
+#: cp/except.c:925
msgid "exception of type `%T' will be caught"
msgstr "`%T' türündeki olağandışılık yakalanmış olacak"
-#: cp/except.c:947
+#: cp/except.c:928
msgid " by earlier handler for `%T'"
msgstr " `%T'nin önceki tutamağı tarafından "
-#: cp/except.c:968
+#: cp/except.c:949
msgid "`...' handler must be the last handler for its try block"
msgstr "`...' tutamağı kendi blok denemesinde son tutamak olmalıdır"
-#: cp/friend.c:159
+#: cp/friend.c:151
msgid "`%D' is already a friend of class `%T'"
msgstr "`%D' zaten sınıf `%T' nin kardeşi"
-#: cp/friend.c:161
-msgid "previous friend declaration of `%D'"
-msgstr "önceki `%D' kardeş bildirimi"
-
-#: cp/friend.c:206
+#: cp/friend.c:202
msgid "invalid type `%T' declared `friend'"
msgstr "geçersiz `friend' bildirimli tür `%T'"
#. [temp.friend]
#. Friend declarations shall not declare partial
#. specializations.
-#: cp/friend.c:222
+#: cp/friend.c:218
msgid "partial specialization `%T' declared `friend'"
msgstr "`friend' bildirimli kısmi özelleştirme `%T'"
-#: cp/friend.c:231
+#: cp/friend.c:228
msgid "class `%T' is implicitly friends with itself"
msgstr "sınıf `%T' kendisiyle dolaylı kardeş"
#. template <class T> friend typename S<T>::X;
-#: cp/friend.c:249
+#: cp/friend.c:246
msgid "typename type `%#T' declared `friend'"
msgstr "tür ismi türü `%#T' `friend' olarak bildirilmiş"
#. template <class T> friend class T;
-#: cp/friend.c:255
+#: cp/friend.c:252
msgid "template parameter type `%T' declared `friend'"
msgstr "şablon parametre türü `%T' `friend' olarak bildirilmiş"
#. template <class T> friend class A; where A is not a template
-#: cp/friend.c:261
+#: cp/friend.c:258
msgid "`%#T' is not a template"
msgstr "`%#T' bir ÅŸablon deÄŸil"
-#: cp/friend.c:276
+#: cp/friend.c:277
+#, fuzzy
+msgid "`%D' is already a friend of `%T'"
+msgstr "`%T' zaten `%T' nin kardeÅŸi"
+
+#: cp/friend.c:287
msgid "`%T' is already a friend of `%T'"
msgstr "`%T' zaten `%T' nin kardeÅŸi"
-#: cp/friend.c:376
+#: cp/friend.c:413
msgid "member `%D' declared as friend before type `%T' defined"
msgstr "üye `%D' tür `%T' tanımından önce friend olarak bildirilmiş"
-#: cp/friend.c:431
+#: cp/friend.c:470
msgid "friend declaration `%#D' declares a non-template function"
msgstr "kardeÅŸ bildirimi `%#D' bir ÅŸablon olmayan iÅŸlev bildiriyor"
-#: cp/friend.c:434
+#: cp/friend.c:473
msgid "(if this is not what you intended, make sure the function template has already been declared and add <> after the function name here) -Wno-non-template-friend disables this warning"
msgstr "(eğer istediğiniz bu değilse, işlev şablonunun zaten bildirilmiş olduğundan emin olduktan sonra burada işlev isminden sonra bir <> ekleyin)-Wno-non-template-friend bu uyarıyı iptal eder"
-#: cp/g++spec.c:211 java/jvspec.c:423
+#: cp/g++spec.c:229 java/jvspec.c:415
#, c-format
msgid "argument to `%s' missing\n"
msgstr "`%s' için argüman eksik\n"
-#: cp/init.c:334
+#: cp/init.c:318
msgid "`%D' should be initialized in the member initialization list"
msgstr "`%D' üye ilklendirici listesinde ilklendirilmiş olmalı"
-#: cp/init.c:384
+#: cp/init.c:368
msgid "default-initialization of `%#D', which has reference type"
msgstr "referans türe sahip `%#D'nin default ilklendirmesi"
-#: cp/init.c:389
+#: cp/init.c:373
msgid "uninitialized reference member `%D'"
msgstr "ilklendirilmemiş referans üyesi `%D'"
-#: cp/init.c:397
-msgid "initializer list treated as compound expression"
-msgstr "ilklendirici listesi bileşik ifade olarak ele alınıyor"
-
-#: cp/init.c:538
+#: cp/init.c:511
msgid "`%D' will be initialized after"
msgstr "`%D' sonradan ilklendirilmiÅŸ olacak"
-#: cp/init.c:541
+#: cp/init.c:514
msgid "base `%T' will be initialized after"
msgstr "`%T' tabanı sonradan ilklendirilmiş olacak"
-#: cp/init.c:544
+#: cp/init.c:517
msgid " `%#D'"
msgstr " `%#D'"
-#: cp/init.c:546
+#: cp/init.c:519
msgid " base `%T'"
msgstr " `%T' tabanı için;"
-#: cp/init.c:564
+#: cp/init.c:520
+#, fuzzy
+msgid " when initialized here"
+msgstr "`%D' sonradan ilklendirilmiÅŸ olacak"
+
+#: cp/init.c:536
+msgid "multiple initializations given for `%D'"
+msgstr "`%D' için çoklu ilklendiriciler belirtilmiş"
+
+#: cp/init.c:538
msgid "multiple initializations given for base `%T'"
msgstr "taban `%T' için çoklu ilklendiriciler belirtilmiş"
-#: cp/init.c:631
+#: cp/init.c:605
msgid "initializations for multiple members of `%T'"
msgstr "`%T' nin çoklu üyeleri için ilklendirmeler"
-#: cp/init.c:688
+#: cp/init.c:662
msgid "base class `%#T' should be explicitly initialized in the copy constructor"
msgstr "taban sınıf `%#T' kopyalama kurucusunda doğrudan ilklendirilmiş olmalı"
-#: cp/init.c:926
+#: cp/init.c:892 cp/init.c:911
msgid "class `%T' does not have any field named `%D'"
msgstr "sınıf `%T' `%D' isimli hiçbir alan içermiyor"
-#: cp/init.c:932
-msgid "field `%#D' is static; the only point of initialization is its definition"
+#: cp/init.c:898
+#, fuzzy
+msgid "`%#D' is a static data member; it can only be initialized at its definition"
msgstr "alan `%#D' static'dir; tek ilklendirme noktası onun tanımıdır"
-#: cp/init.c:965
+#: cp/init.c:905
+#, fuzzy
+msgid "`%#D' is not a non-static data member of `%T'"
+msgstr "`%#D' `%#T'nin bir static üyesi değildir"
+
+#: cp/init.c:944
msgid "unnamed initializer for `%T', which has no base classes"
msgstr "taban sınıfı olmayan `%T' için isimsiz ilklendirici"
-#: cp/init.c:972
+#: cp/init.c:951
msgid "unnamed initializer for `%T', which uses multiple inheritance"
msgstr "çoklu kalıt kullanan `%T' için isimsiz ilklendirici"
-#: cp/init.c:1007
+#: cp/init.c:1006
+#, fuzzy
+msgid "'%D' is both a direct base and an indirect virtual base"
+msgstr "tür `%D' `%T' nin bir doğrudan ya da sanal tabanı değil"
+
+#: cp/init.c:1014
msgid "type `%D' is not a direct or virtual base of `%T'"
msgstr "tür `%D' `%T' nin bir doğrudan ya da sanal tabanı değil"
-#: cp/init.c:1010
+#: cp/init.c:1017
msgid "type `%D' is not a direct base of `%T'"
msgstr "tür `%D' `%T'nin bir doğrudan tabanı değil"
@@ -16381,531 +15544,859 @@ msgstr "tür `%D' `%T'nin bir doğrudan tabanı değil"
#. COMPLEX zees(1.0, 0.0)[10];
#. }
#.
-#: cp/init.c:1104
+#: cp/init.c:1109
msgid "bad array initializer"
msgstr "dizi ilklendirici hatalı"
-#: cp/init.c:1311
+#: cp/init.c:1303
msgid "`%T' is not an aggregate type"
msgstr "`%T' bir küme türü değil"
-#: cp/init.c:1334
+#: cp/init.c:1324
msgid "`%T' fails to be an aggregate typedef"
msgstr "bir küme türü ataması olarak `%T' hatalı"
-#: cp/init.c:1343
+#: cp/init.c:1333
msgid "type `%T' is of non-aggregate type"
msgstr "`%T' küme olmayan türde"
-#: cp/init.c:1446
-msgid "cannot call destructor `%T::~%T' without object"
-msgstr "yıkıcı `%T::~%T' nesnesiz çağrılamaz"
-
-#: cp/init.c:1490
-msgid "invalid use of non-static field `%D'"
-msgstr "geçersiz static olmayan alan `%D' kullanımı"
-
-#. We can get here when processing a bad default
-#. argument, like:
-#. struct S { int a; void f(int i = a); }
-#: cp/init.c:1499 cp/method.c:160
-msgid "invalid use of member `%D'"
-msgstr "geçersiz üye `%D' kullanımı"
-
-#: cp/init.c:1509
-msgid "no method `%T::%D'"
-msgstr "`%T::%D' diye bir yöntem yok"
+#: cp/init.c:1425 cp/typeck.c:1798
+msgid "qualified type `%T' does not match destructor name `~%T'"
+msgstr "yetkin tür `%T', yıkıcı ismi `~%T' ile eşleşmiyor"
-#: cp/init.c:1602
+#: cp/init.c:1433
msgid "incomplete type `%T' does not have member `%D'"
msgstr "içi boş tür `%T' üye `%D' yi içermiyor"
-#: cp/init.c:1676
+#: cp/init.c:1452
msgid "`%D' is not a member of type `%T'"
msgstr "`%D' `%T' türünde bir üye değil"
-#: cp/init.c:1695
+#: cp/init.c:1471
msgid "invalid pointer to bit-field `%D'"
msgstr "`%D' bit alanı göstericisi geçersiz"
-#: cp/init.c:1734
-msgid "object missing in use of pointer-to-member construct"
-msgstr "üye göstericisi oluşumu kullanımında nesne eksik"
-
-#: cp/init.c:1774
-msgid "member `%D' is non-static but referenced as a static member"
-msgstr "üye `%D' statik değil ama bir statik üye olarak başvurulmuş"
-
-#: cp/init.c:1776 cp/typeck.c:2826 cp/typeck.c:2930
-msgid "at this point in file"
-msgstr "dosyanın burasında"
+#: cp/init.c:1573
+#, fuzzy
+msgid "invalid use of non-static member function `%D'"
+msgstr "geçersiz static olmayan alan `%D' kullanımı"
-#: cp/init.c:1813
-#, c-format
-msgid "object missing in `%E'"
-msgstr "`%E' içinde nesne eksik"
+#: cp/init.c:1579 cp/semantics.c:1236
+#, fuzzy
+msgid "invalid use of non-static data member `%D'"
+msgstr "geçersiz static olmayan alan `%D' kullanımı"
-#: cp/init.c:1944
+#: cp/init.c:1718
msgid "new of array type fails to specify size"
msgstr "dizi türünde new boyut belirtmede başarısız"
-#: cp/init.c:1955
+#: cp/init.c:1729
msgid "size in array new must have integral type"
msgstr "array new içindeki boyut bütünleyici türde olmalı"
-#: cp/init.c:1961
+#: cp/init.c:1735
msgid "zero size array reserves no space"
msgstr "sıfır boyutlu dizi için yer ayrılmaz"
-#: cp/init.c:2026
+#: cp/init.c:1801
msgid "new cannot be applied to a reference type"
msgstr "new bir referans türe uygulanamaz"
-#: cp/init.c:2032
+#: cp/init.c:1807
msgid "new cannot be applied to a function type"
msgstr "new bir işlev türe uygulanamaz"
-#: cp/init.c:2079
+#: cp/init.c:1853
msgid "call to Java constructor, while `jclass' undefined"
msgstr "`jclass' tanımlanmamışken Java kurucusuna çağrı"
-#: cp/init.c:2095
+#: cp/init.c:1869
msgid "can't find class$"
msgstr "class$ bulunamıyor"
-#: cp/init.c:2209
+#: cp/init.c:1995
msgid "invalid type `void' for new"
msgstr "new için `void' türü geçersiz"
-#: cp/init.c:2261
+#: cp/init.c:2005
+msgid "uninitialized const in `new' of `%#T'"
+msgstr "`%#T' nin `new' u içinde ilklendirilmemiş sabit"
+
+#: cp/init.c:2024
#, c-format
msgid "call to Java constructor with `%s' undefined"
msgstr "`%s' li Java kurucusuna çağrı tanımsız"
-#: cp/init.c:2369
+#: cp/init.c:2065
+msgid "request for member `%D' is ambiguous"
+msgstr "üye `%D' için istek belirsiz"
+
+#: cp/init.c:2189
msgid "ISO C++ forbids initialization in array new"
msgstr "ISO C++ da array new içinde ilklendirmeye izin verilmez"
-#: cp/init.c:2391 cp/typeck2.c:367 cp/typeck2.c:1208
-msgid "initializer list being treated as compound expression"
-msgstr "ilklendirici listesi bileşik ifade varsayılıyor"
-
-#: cp/init.c:2397
+#: cp/init.c:2213
msgid "ISO C++ forbids aggregate initializer to new"
msgstr "ISO C++ da new için küme ilklendiriciye izin verilmez"
-#: cp/init.c:2485
-msgid "uninitialized const in `new' of `%#T'"
-msgstr "`%#T' nin `new' u içinde ilklendirilmemiş sabit"
-
-#: cp/init.c:2864
+#: cp/init.c:2658
msgid "initializer ends prematurely"
msgstr "ilklendirici erken sonlanıyor"
-#: cp/init.c:2934
+#: cp/init.c:2715
msgid "cannot initialize multi-dimensional array with initializer"
msgstr "çok boyutlu diziler ilklendiricilerle ilklendirilemez"
-#: cp/init.c:3124
+#: cp/init.c:2876
+msgid "possible problem detected in invocation of delete operator:"
+msgstr ""
+
+#: cp/init.c:2879
+msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined."
+msgstr ""
+
+#: cp/init.c:2900
msgid "unknown array size in delete"
msgstr "delete içindeki dizi boyutu bilinmiyor"
-#: cp/init.c:3389
+#: cp/init.c:3165
msgid "type to vector delete is neither pointer or array type"
msgstr "vektör silme işlemi için tür ne gösterici ne de dizi"
-#: cp/lex.c:136
+#: cp/lex.c:99
msgid "type name expected before `*'"
msgstr "`*' dan önce tür ismi gerekli"
-#: cp/lex.c:158
-msgid "cannot declare references to references"
-msgstr "referanslara referans bildirilemez"
-
-#: cp/lex.c:163
-msgid "cannot declare pointers to references"
-msgstr "referanslara gösterici bildirilemez"
-
-#: cp/lex.c:167
-msgid "type name expected before `&'"
-msgstr "`&' den önce tür ismi gerekli"
-
-#: cp/lex.c:894
-#, c-format
-msgid "semicolon missing after %s declaration"
-msgstr "%s bildiriminden sonra ; yok"
-
-#: cp/lex.c:897
-msgid "semicolon missing after declaration of `%T'"
-msgstr "`%T' bildiriminden sonra ; yok"
-
-#: cp/lex.c:945
+#: cp/lex.c:501
#, c-format
msgid "junk at end of #pragma %s"
msgstr "'#pragma %s' sonrası karışık"
-#: cp/lex.c:952
+#: cp/lex.c:508
#, c-format
msgid "invalid #pragma %s"
msgstr "'#pragma %s' geçersiz"
-#: cp/lex.c:961
+#: cp/lex.c:516
msgid "#pragma vtable no longer supported"
msgstr "#pragma vtable artık desteklenmiyor"
-#: cp/lex.c:1038
+#: cp/lex.c:590
#, c-format
msgid "#pragma implementation for %s appears after file is included"
msgstr "%s için #pragma oluşumu dosya içerildikten sonra görünüyor"
-#: cp/lex.c:1063
+#: cp/lex.c:614
msgid "junk at end of #pragma GCC java_exceptions"
msgstr "#pragma GCC java_exceptions sonrası karışık"
-#: cp/lex.c:1107
+#: cp/lex.c:628
msgid "`%D' not defined"
msgstr "'%D' tanımlı değil"
-#: cp/lex.c:1110
+#: cp/lex.c:631
msgid "`%D' was not declared in this scope"
msgstr "bu kapsamda `%D' bildirilmemiÅŸ "
-#: cp/lex.c:1118
+#: cp/lex.c:639
msgid "`%D' undeclared (first use this function)"
msgstr "`%D' bildirilmemiş (bu işlevde ilk kullanımı)"
-#: cp/lex.c:1122
+#: cp/lex.c:643
msgid "(Each undeclared identifier is reported only once for each function it appears in.)"
msgstr "(her bildirimsiz tanımlayıcı sadece işlevin içinde ilk göründüğünde bir kere raporlanır)"
-#: cp/lex.c:1242
-msgid "`::%D' undeclared (first use here)"
-msgstr "`::%D' bildirilmemiş (burada ilk kullanımı)"
+#. In a template, it is invalid to write "f()" or "f(3)" if no
+#. declaration of "f" is available. Historically, G++ and most
+#. other compilers accepted that usage since they deferred all name
+#. lookup until instantiation time rather than doing unqualified
+#. name lookup at template definition time; explain to the user what
+#. is going wrong.
+#.
+#. Note that we have the exact wording of the following message in
+#. the manual (trouble.texi, node "Name lookup"), so they need to
+#. be kept in synch.
+#: cp/lex.c:674
+msgid "there are no arguments to `%D' that depend on a template parameter, so a declaration of `%D' must be available"
+msgstr ""
-#: cp/mangle.c:2051
+#: cp/lex.c:683
+msgid "(if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)"
+msgstr ""
+
+#: cp/mangle.c:2036
msgid "call_expr cannot be mangled due to a defect in the C++ ABI"
msgstr "çağrı ifadesi C++ ABI'deki bir bozukluktan dolayı anlamlandırılamıyor"
-#: cp/mangle.c:2363
+#: cp/mangle.c:2089
+msgid "omitted middle operand to `?:' operand cannot be mangled"
+msgstr ""
+
+#: cp/mangle.c:2388
msgid "the mangled name of `%D' will change in a future version of GCC"
msgstr "`D' nin anlamlandırılmış ismi GCC'nin gelecek sürümünde değişecek"
-#: cp/method.c:154
-msgid "invalid use of member `%D' in static member function"
-msgstr "statik üye işlev kapsamında üye `%D' kullanımı geçersiz "
-
-#: cp/method.c:216
-msgid "use of namespace `%D' as expression"
-msgstr "isim alanı `%D' nin ifade olarak kullanımı"
-
-#: cp/method.c:221
-msgid "use of class template `%T' as expression"
-msgstr "sınıf şablonu `%T' nin ifade olarak kullanımı"
-
-#: cp/method.c:234
-#, c-format
-msgid "use of %s from containing function"
-msgstr "içeren işlevden %s kullanımı"
-
-#: cp/method.c:237
-msgid " `%#D' declared here"
-msgstr " `%#D' burada bildirilmiÅŸ"
-
-#: cp/method.c:255
-msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
-msgstr "üye `%D' için istek çoklu kalıt kafesi içinde belirsiz"
-
-#: cp/method.c:458
+#: cp/method.c:456
msgid "generic thunk code fails for method `%#D' which uses `...'"
msgstr "`...' kullanan `%#D' için genel thunk kodu başarısız"
-#: cp/method.c:697
+#: cp/method.c:681
msgid "non-static const member `%#D', can't use default assignment operator"
msgstr "statik olmayan sabit üye `%#D', öntanımlı atama işleci kullanamaz"
-#: cp/method.c:702
+#: cp/method.c:686
msgid "non-static reference member `%#D', can't use default assignment operator"
msgstr "statik olmayan referans üyesi `%#D', öntanımlı atama işleci kullanamaz"
-#: parse.y:262
-msgid "`%s' tag used in naming `%#T'"
-msgstr "`%s' etiketi `%#T' isimlemesinde kullanılmış"
+#: cp/name-lookup.c:649
+msgid "`%#D' used prior to declaration"
+msgstr "`%#D' bildirim öncesi kullanılmış"
-#: parse.y:542
-msgid "keyword `export' not implemented, and will be ignored"
-msgstr "`export' anahtar sözcüğü gerçekleştirilmedi, ve yoksayılacak"
+#: cp/name-lookup.c:680
+msgid "redeclaration of `wchar_t' as `%T'"
+msgstr "`wchar_t' nin `%T' olarak yeniden bildirimi"
-#: parse.y:646
-msgid "use of linkage spec `%D' is different from previous spec `%D'"
-msgstr "özellik ilintilemesi `%D' kullanımı önceki özellik `%D' den farklı"
+#. A redeclaration of main, but not a duplicate of the
+#. previous one.
+#.
+#. [basic.start.main]
+#.
+#. This function shall not be overloaded.
+#: cp/name-lookup.c:712
+msgid "invalid redeclaration of `%D'"
+msgstr "`%D'in"
-#: parse.y:943
-msgid "no base or member initializers given following ':'"
-msgstr "':' ile bir temel ya da üye ilklendirici verilmemiş"
+#: cp/name-lookup.c:713
+msgid "as `%D'"
+msgstr "`%D' olarak yeniden bildirimi geçersiz"
-#: parse.y:984
-msgid "anachronistic old style base class initializer"
-msgstr "eski tarz temel sınıf ilklendirici zamansız"
+#: cp/name-lookup.c:801
+#, fuzzy
+msgid "type mismatch with previous external decl of `%#D'"
+msgstr "tür önceki external bildirimle çatışıyor"
-#. Handle `Class<Class<Type>>' without space in the `>>'
-#: parse.y:1117
-msgid "`>>' should be `> >' in template class name"
-msgstr "şablon sınıf ismindeki `>>', `> >' olmalıydı"
+#: cp/name-lookup.c:802
+msgid "previous external decl of `%#D'"
+msgstr "`%D'in önceki dış bildirimi"
-#: parse.y:1164
-msgid "use of template qualifier outside template"
-msgstr "şablon niteleyicisinin şablon dışında kullanımı"
+#: cp/name-lookup.c:844
+msgid "`%D' was previously implicitly declared to return `int'"
+msgstr "`%D' önceden dolaylı olarak dönüş değerine `int' bildirilmiş"
+
+#: cp/name-lookup.c:902
+msgid "extern declaration of `%#D' doesn't match"
+msgstr "`%#D' için extern bildirim uyumsuz"
-#: parse.y:1193 parse.y:1202
+#: cp/name-lookup.c:903
+msgid "global declaration `%#D'"
+msgstr "`%#D' genel bildirimi"
+
+#: cp/name-lookup.c:939
+msgid "declaration of `%#D' shadows a parameter"
+msgstr "`%#D' genel bildirimi bir parametreyi gölgeliyor"
+
+#: cp/name-lookup.c:960
#, c-format
-msgid "ISO C++ forbids an empty condition for `%s'"
-msgstr "ISO C++ `%s' için bir boş koşula izin vermez"
+msgid "declaration of `%s' shadows a member of `this'"
+msgstr "`%s' bildirimi bir `this' üyesini gölgeliyor"
-#: parse.y:1225
-msgid "definition of class `%T' in condition"
-msgstr "koşul içinde class `%T' tanımı"
+#: cp/name-lookup.c:1136
+msgid "name lookup of `%D' changed"
+msgstr "`%D' isim araması değişti"
+
+#: cp/name-lookup.c:1138
+msgid " matches this `%D' under ISO standard rules"
+msgstr " bu `%D' ISO standardının kuralları altında eşleşiyor"
-#: parse.y:1227
-msgid "definition of enum `%T' in condition"
-msgstr "koşul içinde enum `%T' tanımı"
+#: cp/name-lookup.c:1140
+msgid " matches this `%D' under old rules"
+msgstr " bu `%D' eski kurallar altında eşleşiyor"
-#: parse.y:1238
-msgid "definition of array `%#D' in condition"
-msgstr "koşul içinde dizi `%#D' tanımı"
+#: cp/name-lookup.c:1154 cp/name-lookup.c:1161
+msgid "name lookup of `%D' changed for new ISO `for' scoping"
+msgstr "yeni ISO `for' etki alanında `%D' isim araması değişti"
-#: parse.y:1351
-msgid "old style placement syntax, use () instead"
-msgstr "eski tarz yerleştirme sözdizimi, yerine () kullanın"
+#: cp/name-lookup.c:1156
+msgid " cannot use obsolete binding at `%D' because it has a destructor"
+msgstr " `%D' deki modası geçmiş bağlantı bir yıkıcıya sahip olduğundan kullanılamaz"
-#: parse.y:1362
-msgid "`%T' is not a valid expression"
-msgstr "`%T' bir geçerli ifade değil"
+#: cp/name-lookup.c:1163
+msgid " using obsolete binding at `%D'"
+msgstr " `%D' deki modası geçmiş bağlantı kullanılıyor"
-#. This was previously allowed as an extension, but
-#. was removed in G++ 3.3.
-#: parse.y:1369
-msgid "initialization of new expression with `='"
-msgstr "new ifadesinin `=' ile ilklendirilmesi"
+#: cp/name-lookup.c:1216
+#, c-format
+msgid "%s %s(%E) %p %d\n"
+msgstr ""
-#: parse.y:1395
-msgid "ISO C++ forbids compound literals"
-msgstr "ISO C++ da birleÅŸik sabitlere izin verilmez"
+#: cp/name-lookup.c:1219
+#, fuzzy, c-format
+msgid "%s %s %p %d\n"
+msgstr "%s: %s: "
-#: parse.y:1642
+#: cp/name-lookup.c:1338
+#, fuzzy
+msgid "XXX is_class_level != (current_scope == class_scope)\n"
+msgstr "XXX is_class_level != (current_binding_level == class_binding_level)\n"
+
+#: cp/name-lookup.c:1975
+msgid "`%#D' hides constructor for `%#T'"
+msgstr "`%#D' `%#T' kurucusunu gizliyor"
+
+#: cp/name-lookup.c:1990
+msgid "`%#D' conflicts with previous using declaration `%#D'"
+msgstr "`%#D' `%#D' bildiriminin önceki kullanımı ile çelişiyor"
+
+#: cp/name-lookup.c:2002
+msgid "previous non-function declaration `%#D'"
+msgstr "önceki işlev olmayan bildirim `%#D'"
+
+#: cp/name-lookup.c:2003
+msgid "conflicts with function declaration `%#D'"
+msgstr "işlev bildirimi `%#D' ile çelişiyor"
+
+#. 7.3.3/5
+#. A using-declaration shall not name a template-id.
+#: cp/name-lookup.c:2080
+msgid "a using-declaration cannot specify a template-id. Try `using %D'"
+msgstr "bir using bildirimi bir ÅŸablon kimliÄŸi belirtemez. `using %D' deneyin"
+
+#: cp/name-lookup.c:2086
+msgid "namespace `%D' not allowed in using-declaration"
+msgstr "using bildiriminde isim alanı `%D' kullanılamaz"
+
+#. It's a nested name with template parameter dependent scope.
+#. This can only be using-declaration for class member.
+#: cp/name-lookup.c:2094 cp/name-lookup.c:2108 cp/name-lookup.c:3283
+msgid "`%T' is not a namespace"
+msgstr "`%T' bir isim alanı değil"
+
+#: cp/name-lookup.c:2132
+msgid "`%D' not declared"
+msgstr "`%D' bildirilmemiÅŸ"
+
+#. If the OLD_FN was really declared, the
+#. declarations don't match.
+#: cp/name-lookup.c:2144 cp/name-lookup.c:2186 cp/name-lookup.c:2211
+msgid "`%D' is already declared in this scope"
+msgstr "`%D' zaten bu baÄŸlamda bildirilmiÅŸ"
+
+#: cp/name-lookup.c:2217
+msgid "using declaration `%D' introduced ambiguous type `%T'"
+msgstr "using bildirimi `%D' belirsiz tür `%T' ye dahil edildi"
+
+#. Definition isn't the kind we were looking for.
+#: cp/name-lookup.c:2376 cp/name-lookup.c:2395
+msgid "`%#D' redeclared as %C"
+msgstr "`%#D' %C olarak yeniden bildirilmiÅŸ"
+
+#: cp/name-lookup.c:2805
+msgid "using-declaration for non-member at class scope"
+msgstr "sınıf bağlamında üye olmayan için using bildirimi"
+
+#: cp/name-lookup.c:2812
+#, fuzzy
+msgid "using-declaration cannot name destructor"
+msgstr "yıkıcı için using bildirimi"
+
+#: cp/name-lookup.c:2908
+msgid "declaration of `%D' not in a namespace surrounding `%D'"
+msgstr "`%D' bildirimi `%D' yi kuşatan isim alanının içinde değil"
+
+#: cp/name-lookup.c:2948
+msgid "`%D' should have been declared inside `%D'"
+msgstr "`%D' zaten `%D' içinde bildirilmişti"
+
+#: cp/name-lookup.c:3012
+msgid "namespace alias `%D' not allowed here, assuming `%D'"
+msgstr "burada isim alanı rumuzu `%D' kullanılamaz, `%D' varsayılıyor"
+
+#. The parser did not find it, so it's not there.
+#: cp/name-lookup.c:3127
+msgid "unknown namespace `%D'"
+msgstr "bilinmeyen isim alanı `%D'"
+
+#: cp/name-lookup.c:3277
+msgid "namespace `%T' undeclared"
+msgstr "isim alanı `%T' bildirimsiz"
+
+#: cp/name-lookup.c:3310
+msgid "strong using only meaningful at namespace scope"
+msgstr ""
+
+#: cp/name-lookup.c:3317
+#, fuzzy
+msgid "`%D' attribute directive ignored"
+msgstr "`%s' özellik yönergesi yoksayıldı"
+
+#: cp/name-lookup.c:3450
+msgid "use of `%D' is ambiguous"
+msgstr "`%D' kullanımı belirsiz"
+
+#: cp/name-lookup.c:3451
+msgid " first declared as `%#D' here"
+msgstr " ilk defa burada `%#D' olarak bildirilmiÅŸ"
+
+#: cp/name-lookup.c:3454
+msgid " also declared as `%#D' here"
+msgstr " ayrıca burada da `%#D' olarak bildirilmiş"
+
+#: cp/name-lookup.c:3469
+msgid "`%D' denotes an ambiguous type"
+msgstr "`%D' bir belirsiz tür gösteriyor"
+
+#: cp/name-lookup.c:3470
+#, fuzzy
+msgid "%J first type here"
+msgstr " ilk tür burada"
+
+#: cp/name-lookup.c:3471
+#, fuzzy
+msgid "%J other type here"
+msgstr " diğer tür burada"
+
+#. This happens for A::B where B is a template, and there are no
+#. template arguments.
+#: cp/name-lookup.c:3536 cp/typeck.c:1773
+msgid "invalid use of `%D'"
+msgstr "`%D' kullanımı geçersiz"
+
+#: cp/name-lookup.c:3577
+msgid "`%D::%D' is not a template"
+msgstr "`%D::%D' bir ÅŸablon deÄŸil"
+
+#: cp/name-lookup.c:3594
+msgid "`%D' undeclared in namespace `%D'"
+msgstr "`%D' isim alanı `%D' içinde bildirimsiz"
+
+#: cp/name-lookup.c:4055
+msgid "`%D' is not a function,"
+msgstr "`%D' bir iÅŸlev deÄŸil,"
+
+#: cp/name-lookup.c:4056
+msgid " conflict with `%D'"
+msgstr " `%D' ile çelişiyor"
+
+#: cp/name-lookup.c:4794
+msgid "XXX entering pop_everything ()\n"
+msgstr "XXX, pop_everything () iÅŸlevine giriyor\n"
+
+#: cp/name-lookup.c:4803
+msgid "XXX leaving pop_everything ()\n"
+msgstr "XXX, pop_everything () işlevini bırakıyor\n"
+
+#: cp/parser.c:609
+#, fuzzy
+msgid "invalid token"
+msgstr "geçersiz kod"
+
+#: cp/parser.c:1806
+#, fuzzy
+msgid "`%D::%D' has not been declared"
+msgstr "`%#D' bildirilemez"
+
+#: cp/parser.c:1809 cp/semantics.c:2284
+#, fuzzy
+msgid "`::%D' has not been declared"
+msgstr "`%#D' bildirilemez"
+
+#: cp/parser.c:1811
+#, fuzzy
+msgid "`%D' has not been declared"
+msgstr "`%#D' bildirilemez"
+
+#: cp/parser.c:1814
+msgid "`%D::%D' %s"
+msgstr ""
+
+#: cp/parser.c:1816
+#, fuzzy
+msgid "`::%D' %s"
+msgstr "`%D' eriÅŸimi"
+
+#: cp/parser.c:1818
+#, fuzzy
+msgid "`%D' %s"
+msgstr "`%D' eriÅŸimi"
+
+#: cp/parser.c:1870
+#, fuzzy
+msgid "new types may not be defined in a return type"
+msgstr "new bir referans türe uygulanamaz"
+
+#: cp/parser.c:1888 cp/pt.c:4185
+msgid "`%T' is not a template"
+msgstr "`%T' bir ÅŸablon deÄŸil"
+
+#: cp/parser.c:1890
+#, fuzzy, c-format
+msgid "`%s' is not a template"
+msgstr "`%T' bir ÅŸablon deÄŸil"
+
+#: cp/parser.c:1892
+#, fuzzy
+msgid "invalid template-id"
+msgstr "geçersiz döngü komutu"
+
+#: cp/parser.c:1927
+#, fuzzy, c-format
+msgid "%s cannot appear in a constant-expression"
+msgstr "sabit ifadesinde taÅŸma"
+
+#. Issue an error message.
+#: cp/parser.c:1954
+#, fuzzy, c-format
+msgid "`%s' does not name a type"
+msgstr "`%T' bir sınıf türü değil"
+
+#: cp/parser.c:1985
+#, fuzzy
+msgid "(perhaps `typename %T::%s' was intended)"
+msgstr " ihtimal ki onu tür yapmak için `typename %T::%D' istiyorsunuz"
+
+#: cp/parser.c:2407
msgid "ISO C++ forbids braced-groups within expressions"
msgstr "ISO C++ da kaşlı ayraçla gruplanmış ifadelere izin verilmez"
-#: parse.y:1721
-msgid "invalid use of template `%D'"
-msgstr "`%D' şablonunun kullanımı geçersiz"
+#: cp/parser.c:2416
+#, fuzzy
+msgid "statement-expressions are allowed only inside functions"
+msgstr "ifade içinde parantezli gruplamalara sadece bir işlevin içinde izin verilir"
+
+#: cp/parser.c:2467
+#, fuzzy
+msgid "`this' may not be used in this context"
+msgstr "bu kapsamda `%D' bildirilmemiÅŸ "
+
+#: cp/parser.c:2617
+#, fuzzy
+msgid "local variable `%D' may not appear in this context"
+msgstr "bu kapsamda `%D' bildirilmemiÅŸ "
+
+#: cp/parser.c:2982
+#, fuzzy
+msgid "typedef-name `%D' used as destructor declarator"
+msgstr "şablon kimliği `%D' bir bildirici olarak kullanılmış"
+
+#: cp/parser.c:3627
+#, fuzzy
+msgid "ISO C++ forbids compound-literals"
+msgstr "ISO C++ da birleÅŸik sabitlere izin verilmez"
+
+#: cp/parser.c:4599
+#, fuzzy
+msgid "expression in new-declarator must have integral or enumeration type"
+msgstr "array new içindeki boyut bütünleyici türde olmalı"
+
+#: cp/parser.c:4775
+msgid "use of old-style cast"
+msgstr "eski tarz tür dönüşümü"
+
+#: cp/parser.c:5528
+#, c-format
+msgid "case label `%E' not within a switch statement"
+msgstr "case etiketi `%E' bir switch deyimi içinde değil"
+
+#: cp/parser.c:6070
+msgid "ISO C++ forbids computed gotos"
+msgstr "ISO C++ hesaplanmış goto'lara izin vermez"
-#: parse.y:2053 parse.y:2068
-msgid "sigof type specifier"
-msgstr "sigof tür belirteci"
+#: cp/parser.c:6190
+msgid "extra `;'"
+msgstr ""
-#: parse.y:2058
-msgid "`sigof' applied to non-aggregate expression"
-msgstr "küme olmayan ifadeye `sigof' uygulanmış"
+#: cp/parser.c:6485
+msgid "mixing declarations and function-definitions is forbidden"
+msgstr ""
-#: parse.y:2073
-msgid "`sigof' applied to non-aggregate type"
-msgstr "küme olmayan türe `sigof' uygulanmış"
+#: cp/parser.c:6623
+#, fuzzy
+msgid "duplicate `friend'"
+msgstr "`%s' yinelenmiÅŸ"
-#: parse.y:2339
+#: cp/parser.c:6772
+#, fuzzy
+msgid "class definition may not be declared a friend"
+msgstr "iÅŸlev `%D' kardeÅŸ olarak bildirilemez"
+
+#: cp/parser.c:7086
+msgid "only constructors take base initializers"
+msgstr "temel ilklendiricileri sadece kurucular alır"
+
+#: cp/parser.c:7137
+#, fuzzy
+msgid "anachronistic old-style base class initializer"
+msgstr "eski tarz temel sınıf ilklendirici zamansız"
+
+#. Warn that we do not support `export'.
+#: cp/parser.c:7530
+msgid "keyword `export' not implemented, and will be ignored"
+msgstr "`export' anahtar sözcüğü gerçekleştirilmedi, ve yoksayılacak"
+
+#. Otherwise, emit an error about the invalid digraph, but continue
+#. parsing because we got our argument list.
+#: cp/parser.c:7890
+#, fuzzy
+msgid "`<::' cannot begin a template-argument list"
+msgstr "nesne `%E' şablon argümanı olarak kullanılamaz"
+
+#: cp/parser.c:7891
+msgid "`<:' is an alternate spelling for `['. Insert whitespace between `<' and `::'"
+msgstr ""
+
+#: cp/parser.c:7898
+msgid "(if you use `-fpermissive' G++ will accept your code)"
+msgstr ""
+
+#. Explain what went wrong.
+#: cp/parser.c:8070
+#, fuzzy
+msgid "non-template `%D' used as template"
+msgstr "şablon olarak şablon olmayan kullanılmış"
+
+#: cp/parser.c:8071
+#, fuzzy
+msgid "(use `%T::template %D' to indicate that it is a template)"
+msgstr "birincil ÅŸablon bildiriminde ÅŸablon kimliÄŸi `%D'"
+
+#: cp/parser.c:9000
msgid "using `typename' outside of template"
msgstr "şablon dışında `typename' kullanımı"
-#: parse.y:2356
-msgid "qualified name does not name a class"
-msgstr "nitelenmiş isim bir sınıf ismi değil"
+#: cp/parser.c:9122
+#, fuzzy
+msgid "expected type-name"
+msgstr "burada bir isim umuluyordu"
-#: parse.y:2417
-#, c-format
-msgid "storage class specifier `%s' not allowed after struct or class"
-msgstr "yapı ya da sınıftan sonra saklama sınıfı belirteci `%s' kullanılamaz"
+#: cp/parser.c:9181
+#, fuzzy
+msgid "type attributes are honored only at type definition"
+msgstr "`%s' özniteliği sadece sınıf tanımlarında uygulanabilir"
-#: parse.y:2419
-#, c-format
-msgid "type specifier `%s' not allowed after struct or class"
-msgstr "yapı ya da sınıftan sonra tür belirteci `%s' kullanılamaz"
+#. [namespace.udecl]
+#.
+#. A using declaration shall not name a template-id.
+#: cp/parser.c:9565
+#, fuzzy
+msgid "a template-id may not appear in a using-declaration"
+msgstr "using bildiriminde isim alanı `%D' kullanılamaz"
-#: parse.y:2421
-#, c-format
-msgid "type qualifier `%s' not allowed after struct or class"
-msgstr "yapı ya da sınıftan sonra `%s' tür niteleyicisine izin verilmez "
+#: cp/parser.c:9891
+msgid "an asm-specification is not allowed on a function-definition"
+msgstr ""
-#: parse.y:2423
-msgid "no body nor ';' separates two class, struct or union declarations"
-msgstr "iki sınıf, yapı ya da birleşik yapı bildirimlerini ne gövdesi ne de ';' ayırır"
+#: cp/parser.c:9893
+#, fuzzy
+msgid "attributes are not allowed on a function-definition"
+msgstr "genel yazmaç değişkeni bir işlev tanımını izliyor"
-#: parse.y:2553
-msgid "no bases given following `:'"
-msgstr "':' ile bir temel verilmemiÅŸ"
+#: cp/parser.c:10026
+#, fuzzy
+msgid "attributes after parenthesized initializer ignored"
+msgstr "parametre dizisi bildirimindeki özellikler yoksayıldı"
-#: parse.y:2584 parse.y:2599
-msgid "`%D' access"
-msgstr "`%D' eriÅŸimi"
+#: cp/parser.c:11223
+#, fuzzy
+msgid "file ends in default argument"
+msgstr "%Hdosya sonu öntanımlı argüman içinde okundu"
-#: parse.y:2589
-msgid "multiple access specifiers"
-msgstr "çoklu erişim belirteçleri"
+#: cp/parser.c:11279
+#, fuzzy
+msgid "deprecated use of default argument for parameter of non-function"
+msgstr "`%#D' nin %d. parametresi için verilen öntanımlı argüman"
-#: parse.y:2607
-msgid "multiple `virtual' specifiers"
-msgstr "çoklu `virtual' belirteçleri"
+#: cp/parser.c:11282
+#, fuzzy
+msgid "default arguments are only permitted for function parameters"
+msgstr "`%#D' nin %d. parametresi için verilen öntanımlı argüman"
-#: parse.y:2644
-msgid "missing ';' before right brace"
-msgstr "'}' dan önce ';' eksik"
+#: cp/parser.c:12007
+msgid "declaration of `%D' in `%D' which does not enclose `%D'"
+msgstr "`%D' bildirimi `%D' içinde ve bu `%D' yi kapsamıyor"
-#: parse.y:2865
-msgid "ISO C++ forbids array dimensions with parenthesized type in new"
-msgstr "ISO C++ new içinde parantezli dizi indislemeye izin vermez"
+#: cp/parser.c:12020
+#, fuzzy
+msgid "extra qualification ignored"
+msgstr "fazladan `%T::' nitelemesi üye `%D' üstünde yoksayıldı"
-#: parse.y:3152 parse.y:3172 parse.y:3181 parse.y:3210
-msgid "`%T' is not a class or namespace"
-msgstr "`%T' bir sınıf ya da isim alanı değil"
+#: cp/parser.c:12031
+#, fuzzy
+msgid "an explicit specialization must be preceded by 'template <>'"
+msgstr "doğrudan özelleştirme `template <>' tarafından öncelenmiyor"
-#: parse.y:3377
-msgid "ISO C++ forbids label declarations"
-msgstr "ISO C++ etiket bildirimlerine izin vermez"
+#: cp/parser.c:12311
+msgid "extra semicolon"
+msgstr ""
-#: parse.y:3537
-msgid "ISO C++ forbids computed gotos"
-msgstr "ISO C++ hesaplanmış goto'lara izin vermez"
+#: cp/parser.c:12329
+msgid "a class-key must be used when declaring a friend"
+msgstr ""
-#: parse.y:3545
-msgid "label must be followed by statement"
-msgstr "etiketi deyim izlemeli"
+#: cp/parser.c:12360
+#, fuzzy
+msgid "friend declaration does not name a class or function"
+msgstr "kardeş bildirimi sınıf bildiriminde değil"
-#: parse.y:3590
-msgid "must have at least one catch per try block"
-msgstr "her deneme bloğu için en azından bir yakalama içermeli"
+#: cp/parser.c:12531
+msgid "pure-specifier on function-definition"
+msgstr ""
-#: parse.y:3650
-msgid "ISO C++ forbids compound statements inside for initializations"
-msgstr "ISO C++ bileşik deyimler içeren ilklendirmelere izin vermez"
+#: cp/parser.c:12804
+#, fuzzy
+msgid "keyword `typename' not allowed outside of templates"
+msgstr "şablon dışında `typename' kullanımı"
-#. This helps us recover from really nasty
-#. parse errors, for example, a missing right
-#. parenthesis.
-#: parse.y:3737 parse.y:3747
-msgid "possibly missing ')'"
-msgstr "galiba ')' eksik"
+#: cp/parser.c:12806
+msgid "keyword `typename' not allowed in this context (the base class is implicitly a type)"
+msgstr ""
-#: parse.y:3840
-msgid "type specifier omitted for parameter"
-msgstr "parametre için tür belirteci ihmal edildi"
+#: cp/parser.c:13624
+#, fuzzy
+msgid "reference to `%D' is ambiguous"
+msgstr "`%D' kullanımı belirsiz"
-#: parse.y:3849
-#, c-format
-msgid "`%E' is not a type, use `typename %E' to make it one"
-msgstr "`%E' bir tür değil, tür yapmak için `typename %E' kullanın"
+#: cp/parser.c:13798
+#, fuzzy
+msgid "too few template-parameter-lists"
+msgstr "`%D' bildiriminde şablon parametresi listesi çok az"
-#: parse.y:3851
-msgid "no type `%D' in `%T'"
-msgstr "`%T' içinde `%D' isminde bir tür yok"
+#. Otherwise, there are too many template parameter lists. We have
+#. something like:
+#.
+#. template <class T> template <class U> void S::f();
+#: cp/parser.c:13813
+#, fuzzy
+msgid "too many template-parameter-lists"
+msgstr "`%D' bildiriminde şablon parametresi listesi çok fazla"
-#: parse.y:3854
-#, c-format
-msgid "type specifier omitted for parameter `%E'"
-msgstr "parametre `%E' için tür belirteci ihmal edildi"
+#. If begin_function_definition didn't like the definition, skip
+#. the entire function.
+#: cp/parser.c:14090
+#, fuzzy
+msgid "invalid function declaration"
+msgstr "Geçersiz bildirim"
-#: parse.y:3862
-msgid "'%D' is used as a type, but is not defined as a type."
-msgstr "'%D' bir tür olarak kullanılmış ama tür olarak tanımlı değil"
+#. Issue an error message.
+#: cp/parser.c:14127
+#, fuzzy
+msgid "named return values are no longer supported"
+msgstr "--driver artık desteklenmiyor"
+
+#: cp/parser.c:14455
+#, fuzzy
+msgid "`>>' should be `> >' within a nested template argument list"
+msgstr "şablon sınıf ismindeki `>>', `> >' olmalıydı"
+
+#. If this is not a nested template argument list, the '>>' is
+#. a typo for '>'. Emit an error message and continue.
+#: cp/parser.c:14463
+msgid "spurious `>>', use `>' to terminate a template argument list"
+msgstr ""
-#: cp/pt.c:284
+#: cp/parser.c:14950
+msgid "`%s' tag used in naming `%#T'"
+msgstr "`%s' etiketi `%#T' isimlemesinde kullanılmış"
+
+#: cp/parser.c:14970
+#, fuzzy
+msgid "%D redeclared with different access"
+msgstr "`%#D' farklı bir sembol çeşidi olarak tekrar bildirilmiş"
+
+#: cp/parser.c:14987
+msgid "`template' (as a disambiguator) is only allowed within templates"
+msgstr ""
+
+#: cp/pt.c:243
msgid "data member `%D' cannot be a member template"
msgstr "veri üyesi `%D' bir üye şablonu olamaz"
-#: cp/pt.c:296
+#: cp/pt.c:255
msgid "invalid member template declaration `%D'"
msgstr "geçersiz üye şablonu bildirimi `%D'"
-#: cp/pt.c:691
+#: cp/pt.c:637
msgid "explicit specialization in non-namespace scope `%D'"
msgstr "isim alanı olmayan `%D' içinde doğrudan özelleştirme"
-#: cp/pt.c:703
+#: cp/pt.c:649
msgid "enclosing class templates are not explicitly specialized"
msgstr "sınıf şablonlarının zarflanması doğrudan özelleştirilmiyor"
-#: cp/pt.c:792 cp/pt.c:833
+#: cp/pt.c:739 cp/pt.c:780
msgid "specializing `%#T' in different namespace"
msgstr " `%#T' farklı isim alanında özelleştiriliyor"
-#: cp/pt.c:793 cp/pt.c:834
+#: cp/pt.c:740 cp/pt.c:781
msgid " from definition of `%#D'"
msgstr " `%#D' bildiriminden"
-#: cp/pt.c:801
+#: cp/pt.c:748
msgid "specialization of `%T' after instantiation"
msgstr "gerçeklemeden sonra `%T' özelleştirmesi"
-#: cp/pt.c:848
+#: cp/pt.c:795
msgid "specialization `%T' after instantiation `%T'"
msgstr "%T' özelleştirmesi, `%T' gerçeklemesinden sonra"
-#: cp/pt.c:860
+#: cp/pt.c:807
msgid "explicit specialization of non-template `%T'"
msgstr "şablon olmayan `%T' örtük özelleştirmesi"
-#: cp/pt.c:992
+#: cp/pt.c:1067
msgid "specialization of %D after instantiation"
msgstr "gerçeklemeden sonra %D özelleştirmesi"
-#: cp/pt.c:1096
+#: cp/pt.c:1192
msgid "%s %+#D"
msgstr "%s %+#D"
-#: cp/pt.c:1147
+#: cp/pt.c:1241
msgid "`%D' is not a function template"
msgstr "`%D' bir iÅŸlev ÅŸablonu deÄŸil"
-#: cp/pt.c:1286
+#: cp/pt.c:1380
msgid "template-id `%D' for `%+D' does not match any template declaration"
msgstr "şablon kimliği `%D', `%+D' için hiçbir şablon bildirimi ile eşleşmiyor"
-#: cp/pt.c:1294
+#: cp/pt.c:1388
msgid "ambiguous template specialization `%D' for `%+D'"
msgstr "şablon özelleştirmesi `%D', `%+D' için belirsiz"
#. This case handles bogus declarations like template <>
#. template <class T> void f<int>();
-#: cp/pt.c:1521 cp/pt.c:1595
+#: cp/pt.c:1611 cp/pt.c:1685
msgid "template-id `%D' in declaration of primary template"
msgstr "birincil ÅŸablon bildiriminde ÅŸablon kimliÄŸi `%D'"
-#: cp/pt.c:1534
+#: cp/pt.c:1624
msgid "template parameter list used in explicit instantiation"
msgstr "şablon parametre listesi doğrudan gerçekleme içinde kullanılmış"
-#: cp/pt.c:1540
+#: cp/pt.c:1630
msgid "definition provided for explicit instantiation"
msgstr "tanım doğrudan gerçekleme için üretilmiş"
-#: cp/pt.c:1546
+#: cp/pt.c:1636
msgid "too many template parameter lists in declaration of `%D'"
msgstr "`%D' bildiriminde şablon parametresi listesi çok fazla"
-#: cp/pt.c:1562
+#: cp/pt.c:1652
msgid "too few template parameter lists in declaration of `%D'"
msgstr "`%D' bildiriminde şablon parametresi listesi çok az"
-#: cp/pt.c:1579
+#: cp/pt.c:1669
msgid "explicit specialization not preceded by `template <>'"
msgstr "doğrudan özelleştirme `template <>' tarafından öncelenmiyor"
-#: cp/pt.c:1592
+#: cp/pt.c:1682
msgid "partial specialization `%D' of function template"
msgstr "işlev şablonunun `%D' kısmî özelleştirmesi"
-#: cp/pt.c:1624
+#: cp/pt.c:1714
msgid "default argument specified in explicit specialization"
msgstr "doğrudan özelleştirme içinde öntanımlı argüman belirtilmiş"
-#: cp/pt.c:1628
+#: cp/pt.c:1718
msgid "template specialization with C linkage"
msgstr "C ilintileme ile şablon özelleştirmesi"
@@ -16917,99 +16408,107 @@ msgstr "C ilintileme ile şablon özelleştirmesi"
#. program is ill-formed.
#.
#. Similar language is found in [temp.explicit].
-#: cp/pt.c:1715
+#: cp/pt.c:1802
msgid "specialization of implicitly-declared special member function"
msgstr "örtük bildirimli özel üye işlev özelleştirmesi"
-#: cp/pt.c:1759
+#: cp/pt.c:1846
msgid "no member function `%D' declared in `%T'"
msgstr "`%T' içinde bildirilmiş `%D' diye bir üye işlev yok"
#. There are two many template parameter lists.
-#: cp/pt.c:1909
+#: cp/pt.c:2001
msgid "too many template parameter lists in declaration of `%T'"
msgstr "`%T' bildiriminde şablon parametresi listesi çok fazla"
-#: cp/pt.c:2005
+#: cp/pt.c:2094
msgid " shadows template parm `%#D'"
msgstr " şablon parametresi `%#D' gölgeleniyor"
-#: cp/pt.c:2409
+#: cp/pt.c:2491
msgid "template parameters not used in partial specialization:"
msgstr "kısmî özelleştirmede kullanılmayan şablon parametreleri:"
-#: cp/pt.c:2413
+#: cp/pt.c:2495
msgid " `%D'"
msgstr " `%D'"
-#: cp/pt.c:2425
+#: cp/pt.c:2507
msgid "partial specialization `%T' does not specialize any template arguments"
msgstr "kısmî özelleştirme `%T' hiç bir şablon argümanını özelleştirmiyor"
-#: cp/pt.c:2450
+#: cp/pt.c:2532
#, c-format
msgid "template argument `%E' involves template parameter(s)"
msgstr "şablon argümanı `%E' şablon parametre(ler)ini içine alıyor"
-#: cp/pt.c:2494
+#: cp/pt.c:2576
msgid "type `%T' of template argument `%E' depends on template parameter(s)"
msgstr "tür `%T' (şablon argümanı `%E' nin türü) şablon parametre(ler)ine bağımlı oluyor"
-#: cp/pt.c:2582
+#: cp/pt.c:2661
msgid "no default argument for `%D'"
msgstr "`%D' için öntanımlı argüman yok"
-#: cp/pt.c:2735
+#: cp/pt.c:2810
msgid "template with C linkage"
msgstr "C ilintilemeli ÅŸablon"
-#: cp/pt.c:2738
+#: cp/pt.c:2813
msgid "template class without a name"
msgstr "bir ismi olmayan şablon sınıfı"
-#: cp/pt.c:2815
+#. [temp.mem]
+#.
+#. A destructor shall not be a member template.
+#: cp/pt.c:2820
+#, fuzzy
+msgid "destructor `%D' declared as member template"
+msgstr "veri üyesi `%D' bir üye şablonu olamaz"
+
+#: cp/pt.c:2900
msgid "`%D' does not declare a template type"
msgstr "`%D' bir şablon türü bildirmiyor"
-#: cp/pt.c:2821
+#: cp/pt.c:2906
msgid "template definition of non-template `%#D'"
msgstr "ÅŸablon olmayan `%#D' nin ÅŸablon bildirimi"
-#: cp/pt.c:2862
+#: cp/pt.c:2947
msgid "expected %d levels of template parms for `%#D', got %d"
msgstr "%d seviye umulurken `%#D' için şablon parametresi seviyesi olarak %d seviye alındı, "
-#: cp/pt.c:2874
+#: cp/pt.c:2959
msgid "got %d template parameters for `%#D'"
msgstr "%d şablon parametresi alındı (`%#D' için)"
-#: cp/pt.c:2877
+#: cp/pt.c:2962
msgid "got %d template parameters for `%#T'"
msgstr "%d şablon parametresi alındı (`%#T' için)"
-#: cp/pt.c:2879
+#: cp/pt.c:2964
#, c-format
msgid " but %d required"
msgstr " ama %d gerekiyordu"
-#: cp/pt.c:2962
+#: cp/pt.c:3042
msgid "`%T' is not a template type"
msgstr "`%T' bir şablon türü değil"
-#: cp/pt.c:2978
+#: cp/pt.c:3058
msgid "previous declaration `%D'"
msgstr "`%D' önceki bildirimi"
-#: cp/pt.c:2979
+#: cp/pt.c:3059
#, c-format
msgid "used %d template parameter%s instead of %d"
msgstr "%3$d yerine %1$d şablon parametresi kullanılmış %2$s"
-#: cp/pt.c:2995
+#: cp/pt.c:3075
msgid "template parameter `%#D'"
msgstr "ÅŸablon parametresi `%#D'"
-#: cp/pt.c:2996
+#: cp/pt.c:3076
msgid "redeclared here as `%#D'"
msgstr "burada yeniden `%#D' olarak bildirilmiÅŸ"
@@ -17017,713 +16516,742 @@ msgstr "burada yeniden `%#D' olarak bildirilmiÅŸ"
#.
#. A template-parameter may not be given default arguments
#. by two different declarations in the same scope.
-#: cp/pt.c:3006
+#: cp/pt.c:3086
msgid "redefinition of default argument for `%#D'"
msgstr "`%#D' nin öntanımlı argümanının yeniden tanımlanması"
-#: cp/pt.c:3007
-msgid " original definition appeared here"
+#: cp/pt.c:3087
+#, fuzzy
+msgid "%J original definition appeared here"
msgstr " özgün tanımı burada göründü"
-#: cp/pt.c:3100
+#: cp/pt.c:3235
#, c-format
msgid "`%E' is not a valid template argument"
msgstr "`%E' geçerli bir şablon argümanı değil"
-#: cp/pt.c:3104
+#: cp/pt.c:3239
msgid "it must be the address of a function with external linkage"
msgstr "o dış ilintilemeli bir işlevin adresi olmalı"
-#: cp/pt.c:3106
+#: cp/pt.c:3241
msgid "it must be the address of an object with external linkage"
msgstr "o dış ilintilemeli bir nesnenin adresi olmalı"
-#: cp/pt.c:3110
+#: cp/pt.c:3244
msgid "it must be a pointer-to-member of the form `&X::Y'"
msgstr "o `&X::Y' şeklinde bir üye göstericisi olmalı"
-#: cp/pt.c:3121
+#: cp/pt.c:3255
#, c-format
msgid "string literal %E is not a valid template argument because it is the address of an object with static linkage"
msgstr "statik ilintilemeli bir nesnenin adresi olduğundan, dizge sabiti %E geçerli bir şablon argümanı değil"
-#: cp/pt.c:3133
+#: cp/pt.c:3270
#, c-format
msgid "address of non-extern `%E' cannot be used as template argument"
msgstr "extern olmayan`%E' nin adresi şablon argümanı olarak kullanılamaz"
-#: cp/pt.c:3144
+#: cp/pt.c:3279
#, c-format
msgid "non-constant `%E' cannot be used as template argument"
msgstr "sabit olmayan `%E' şablon argümanı olarak kullanılamaz"
-#: cp/pt.c:3151
-#, c-format
-msgid "object `%E' cannot be used as template argument"
+#: cp/pt.c:3287
+#, fuzzy
+msgid "type '%T' cannot be used as a value for a non-type template-parameter"
msgstr "nesne `%E' şablon argümanı olarak kullanılamaz"
-#: cp/pt.c:3526
+#: cp/pt.c:3290
+#, fuzzy
+msgid "invalid use of '%D' as a non-type template-argument"
+msgstr "öntanımlı şablon argümanı geçersiz"
+
+#: cp/pt.c:3292
+#, fuzzy, c-format
+msgid "invalid use of '%E' as a non-type template-argument"
+msgstr "öntanımlı şablon argümanı geçersiz"
+
+#: cp/pt.c:3657
#, c-format
msgid "to refer to a type member of a template parameter, use `typename %E'"
msgstr "bir şablon parametresinin bir tür üyesine başvuru yapmak için `typename %E' kullanın"
-#: cp/pt.c:3539 cp/pt.c:3555 cp/pt.c:3594
+#: cp/pt.c:3670 cp/pt.c:3688 cp/pt.c:3727
msgid "type/value mismatch at argument %d in template parameter list for `%D'"
msgstr "şablon parametre listesindeki %d. argümanda (`%D' için) tür/değer çelişkisi"
-#: cp/pt.c:3542
+#: cp/pt.c:3673
msgid " expected a constant of type `%T', got `%T'"
msgstr " `%T' türünde bir sabit umulurken `%T' alındı"
-#: cp/pt.c:3546
+#: cp/pt.c:3677
+#, fuzzy, c-format
+msgid " expected a class template, got `%E'"
+msgstr " bir sınıf şablonu umulurken `%T' alındı"
+
+#: cp/pt.c:3679
#, c-format
msgid " expected a type, got `%E'"
msgstr " bir tür umulurken `%E' alındı "
-#: cp/pt.c:3558
+#: cp/pt.c:3691
msgid " expected a type, got `%T'"
msgstr " bir tür umulurken `%T' alındı"
-#: cp/pt.c:3560
+#: cp/pt.c:3693
msgid " expected a class template, got `%T'"
msgstr " bir sınıf şablonu umulurken `%T' alındı"
-#: cp/pt.c:3596
+#: cp/pt.c:3729
msgid " expected a template of type `%D', got `%D'"
msgstr " `%D' türünde bir şablon umulurken `%D' alındı"
-#: cp/pt.c:3618
-msgid "template-argument `%T' uses anonymous type"
-msgstr "şablon argümanı `%T' anonim tür kullanıyor"
-
-#: cp/pt.c:3621
-msgid "template-argument `%T' uses local type `%T'"
-msgstr "şablon argümanı `%T' yerel tür `%T' kullanıyor"
-
-#: cp/pt.c:3631
-msgid "template-argument `%T' is a variably modified type"
-msgstr "şablon argümanı `%T' değişkene göre değişen türde"
-
-#: cp/pt.c:3666
+#: cp/pt.c:3764
msgid "could not convert template argument `%E' to `%T'"
msgstr "şablon argümanı `%E' `%T' ye dönüştürülemedi"
-#: cp/pt.c:3710
+#: cp/pt.c:3804
#, c-format
msgid "wrong number of template arguments (%d, should be %d)"
msgstr "yanlış sayıda şablon argümanı (%d yerine %d olmalıydı)"
-#: cp/pt.c:3714
+#: cp/pt.c:3808
msgid "provided for `%D'"
msgstr "`%D' için sağlanmış"
-#: cp/pt.c:3761
+#: cp/pt.c:3836
#, c-format
msgid "template argument %d is invalid"
msgstr "şablon argümanı %d geçersiz"
-#: cp/pt.c:3997
+#: cp/pt.c:4057
msgid "non-template used as template"
msgstr "şablon olarak şablon olmayan kullanılmış"
-#: cp/pt.c:4139
-msgid "`%T' is not a template"
-msgstr "`%T' bir ÅŸablon deÄŸil"
-
-#: cp/pt.c:4152
+#: cp/pt.c:4197
msgid "non-template type `%T' used as a template"
msgstr "şablon olarak şablon olmayan tür `%T' kullanılmış"
-#: cp/pt.c:4154
+#: cp/pt.c:4199
msgid "for template declaration `%D'"
msgstr "şablon bildirimi `%D' için"
-#: cp/pt.c:4770
+#: cp/pt.c:4846
msgid "template instantiation depth exceeds maximum of %d (use -ftemplate-depth-NN to increase the maximum) instantiating `%D'"
msgstr "%d lik en büyük şablon gerçekleme derinliği `%D' gerçeklemesinde aşılıyor (en büyük değeri arttırmak için -ftemplate-depth-NN kullanın)"
-#: cp/pt.c:5247
+#: cp/pt.c:5286
msgid "ambiguous class template instantiation for `%#T'"
msgstr "`%#T' için sınıf şablonu gerçeklemesi belirsiz"
-#: cp/pt.c:5254
+#: cp/pt.c:5292
msgid "%s %+#T"
msgstr "%s %+#T"
-#: cp/pt.c:6284 cp/pt.c:6396
+#: cp/pt.c:6291 cp/pt.c:6411
msgid "instantiation of `%D' as type `%T'"
msgstr "`%D' gerçeklemesi `%T' türünde"
-#: cp/pt.c:6440
+#: cp/pt.c:6453
msgid "invalid parameter type `%T'"
msgstr "geçersiz parametre türü `%T'"
-#: cp/pt.c:6442
+#: cp/pt.c:6455
msgid "in declaration `%D'"
msgstr "`%D' bildiriminde"
-#: cp/pt.c:6517
+#: cp/pt.c:6529
msgid "creating pointer to member function of non-class type `%T'"
msgstr "sınıf olmayan `%T' türünde üye işlev göstericisi oluşturulması"
-#: cp/pt.c:6680
+#: cp/pt.c:6668
msgid "creating array with size zero"
msgstr "dizi sıfır uzunlukta oluşturuluyor"
-#: cp/pt.c:6694
+#: cp/pt.c:6682
#, c-format
msgid "creating array with size zero (`%E')"
msgstr "sıfır boyutlu dizi oluşturuluyor (`%E')"
-#: cp/pt.c:6933
+#: cp/pt.c:6921
msgid "forming reference to void"
msgstr "void'e referans oluÅŸturuluyor"
-#: cp/pt.c:6935
+#: cp/pt.c:6923
msgid "forming %s to reference type `%T'"
msgstr "%s tür `%T'ye referans oluşturuyor"
-#: cp/pt.c:6973
+#: cp/pt.c:6960
msgid "creating pointer to member of non-class type `%T'"
msgstr "sınıf olmayan `%T' türünde üye göstericisisi oluşturulması"
-#: cp/pt.c:6979
+#: cp/pt.c:6966
msgid "creating pointer to member reference type `%T'"
msgstr "`%T' üye referans türünde gösterici oluşturulması"
-#: cp/pt.c:7057
+#: cp/pt.c:7052
msgid "creating array of `%T'"
msgstr "`%T' dizisi oluşturulması"
-#: cp/pt.c:7100
+#: cp/pt.c:7058
+#, fuzzy
+msgid "creating array of `%T', which is an abstract class type"
+msgstr "taban sınıfı olmayan `%T' için isimsiz ilklendirici"
+
+#: cp/pt.c:7102
msgid "`%T' is not a class, struct, or union type"
msgstr "`%T' bir class, struct, veya union türünde değil"
-#: cp/pt.c:7213
+#: cp/pt.c:7215
#, c-format
msgid "use of `%s' in template"
msgstr "şablonda `%s' kullanımı"
-#: cp/pt.c:7975
-msgid "type `%T' composed from a local class is not a valid template-argument"
-msgstr "bir yerel sınıfan oluşturulan `%T' geçerli bir şablon argümanı değil"
+#: cp/pt.c:7327
+#, fuzzy, c-format
+msgid "dependent-name `%E' is parsed as a non-type, but instantiation yields a type"
+msgstr "'%D' bir tür olarak kullanılmış ama tür olarak tanımlı değil"
-#: cp/pt.c:7976
+#: cp/pt.c:7329
+#, fuzzy, c-format
+msgid "say `typename %E' if a type is meant"
+msgstr " (eğer bu anlamda kullandıysanız `typename %T::%D' kullanın)"
+
+#: cp/pt.c:8586
+#, fuzzy
+msgid "`%T' uses anonymous type"
+msgstr "şablon argümanı `%T' anonim tür kullanıyor"
+
+#: cp/pt.c:8588
+#, fuzzy
+msgid "`%T' uses local type `%T'"
+msgstr "şablon argümanı `%T' yerel tür `%T' kullanıyor"
+
+#: cp/pt.c:8596
+#, fuzzy
+msgid "`%T' is a variably modified type"
+msgstr "şablon argümanı `%T' değişkene göre değişen türde"
+
+#: cp/pt.c:8607
+#, fuzzy, c-format
+msgid "integral expression `%E' is not constant"
+msgstr "üye `%D' boyutu bir sabit değil"
+
+#: cp/pt.c:8612
msgid " trying to instantiate `%D'"
msgstr " `%D' gerçeklenmeye çalışılıyor"
-#: cp/pt.c:8421
+#: cp/pt.c:9125
msgid "incomplete type unification"
msgstr "tamamlanmamış tür birleştirme"
-#: cp/pt.c:9387
+#: cp/pt.c:10072
#, c-format
msgid "use of `%s' in template type unification"
msgstr "şablon türü birleştirmede `%s' kullanımı"
-#: cp/pt.c:9821 cp/pt.c:9893
+#: cp/pt.c:10506 cp/pt.c:10578
msgid "explicit instantiation of non-template `%#D'"
msgstr "şablon olmayan `%#D' nin doğrudan gerçeklenmesi"
-#: cp/pt.c:9837 cp/pt.c:9888
+#: cp/pt.c:10522 cp/pt.c:10573
msgid "no matching template for `%D' found"
msgstr "`%D' için eşleşen bir şablon yok"
-#: cp/pt.c:9843
+#: cp/pt.c:10528
msgid "explicit instantiation of `%#D'"
msgstr "`%#D' nin doğrudan gerçeklenmesi"
-#: cp/pt.c:9880
+#: cp/pt.c:10565
msgid "duplicate explicit instantiation of `%#D'"
msgstr "yinelenmiş doğrudan `%#D' gerçeklemesi"
-#: cp/pt.c:9905
+#: cp/pt.c:10587
msgid "ISO C++ forbids the use of `extern' on explicit instantiations"
msgstr "ISO C++ doğrudan gerçeklemelerde `extern' kullanımına izin vermez"
-#: cp/pt.c:9909 cp/pt.c:9999
+#: cp/pt.c:10591 cp/pt.c:10672
msgid "storage class `%D' applied to template instantiation"
msgstr "saklama sınıfı `%D' şablon gerçeklemesine uygulanmış"
-#: cp/pt.c:9966
+#: cp/pt.c:10644
msgid "explicit instantiation of non-template type `%T'"
msgstr "şablon olmayan tür `%T' nin doğrudan gerçeklenmesi"
-#: cp/pt.c:9980
+#: cp/pt.c:10653
msgid "explicit instantiation of `%#T' before definition of template"
msgstr "şablon tanımından önce `%T' nin doğrudan gerçeklenmesi"
-#: cp/pt.c:9988
+#: cp/pt.c:10661
#, c-format
msgid "ISO C++ forbids the use of `%s' on explicit instantiations"
msgstr "ISO C++ doğrudan gerçeklemelerde `%s' kullanımına izin vermez"
-#: cp/pt.c:10032
+#: cp/pt.c:10705
msgid "duplicate explicit instantiation of `%#T'"
msgstr "yinelenmiş doğrudan `%#T' gerçeklemesi"
-#: cp/pt.c:10412
+#: cp/pt.c:11086
msgid "explicit instantiation of `%D' but no definition available"
msgstr "bir tanımlama olmadan `%D' nin doğrudan gerçeklenmesi"
-#: cp/pt.c:10815
+#: cp/pt.c:11520
msgid "`%#T' is not a valid type for a template constant parameter"
msgstr "`%#T' bir şablon sabiti parametresi için geçerli bir tür değildir"
-#: cp/repo.c:271
+#: cp/repo.c:259
msgid "-frepo must be used with -c"
msgstr "-frepo, -c ile kullanılmalı"
-#: cp/repo.c:361
+#: cp/repo.c:346
#, c-format
msgid "mysterious repository information in %s"
msgstr "%s içinde esrarengiz depo bilgisi"
-#: cp/repo.c:376
+#: cp/repo.c:361
#, c-format
msgid "can't create repository information file `%s'"
msgstr "depo bilgisi `%s' dosyasında oluşturulamıyor"
-#: cp/rtti.c:240
+#: cp/rtti.c:248
msgid "cannot use typeid with -fno-rtti"
msgstr "typeid, -fno-rtti ile kullanılamaz"
-#: cp/rtti.c:246
+#: cp/rtti.c:254
msgid "must #include <typeinfo> before using typeid"
msgstr "typeid kullanımından önce #include <türbilgisi> olmalı"
-#: cp/rtti.c:320
+#: cp/rtti.c:326
msgid "cannot create type information for type `%T' because its size is variable"
msgstr "boyutu değişken olduğundan tür `%T' için tür bilgisi oluşturulamıyor"
-#: cp/rtti.c:584 cp/rtti.c:598
+#: cp/rtti.c:580 cp/rtti.c:594
msgid "dynamic_cast of `%#D' to `%#T' can never succeed"
msgstr "`%#D' nin `%#T' türüne özdevimli dönüşümü asla başarılı olamaz"
-#: cp/rtti.c:674
+#: cp/rtti.c:675
msgid "cannot dynamic_cast `%E' (of type `%#T') to type `%#T' (%s)"
msgstr "`%E' (`%#T' türünde) den `%#T' türüne özdevimli dönüşüm yapılamaz (%s)"
-#: cp/search.c:332
+#: cp/search.c:306
msgid "`%T' is an ambiguous base of `%T'"
msgstr "`%T', `%T' nin bir belirsiz tabanıdır"
-#: cp/search.c:350
+#: cp/search.c:324
msgid "`%T' is an inaccessible base of `%T'"
msgstr "`%T', `%T' nin bir erişilemeyen tabanıdır"
-#. At parse time, we don't want to give this error, since
-#. we won't have enough state to make this kind of
-#. decision properly. But there are times (e.g., with
-#. enums in nested classes) when we do need to call
-#. this fn at parse time. So, in those cases, we pass
-#. complain as a 0 and just return a NULL_TREE.
-#: cp/search.c:1638
-msgid "assignment to non-static member `%D' of enclosing class `%T'"
-msgstr "`%D' statik olmayan ataması, `%T' sınıfında"
-
-#: cp/search.c:2050
-msgid "adjusting pointers for covariant returns"
-msgstr "ortak değişen dönüşler için göstericiler ayarlanıyor"
-
-#: cp/search.c:2054 cp/search.c:2061
+#: cp/search.c:1756
msgid "invalid covariant return type for `%#D'"
msgstr "`%#D' için ortak değişen dönüş türü geçersiz"
-#: cp/search.c:2055
-msgid " overriding `%#D' (must be pointer or reference to class)"
-msgstr " `%#D' değiştiriliyor (gösterici ya da sınıfa referans olmalı)"
-
-#: cp/search.c:2062
-msgid " overriding `%#D' (must use pointer or reference)"
-msgstr " `%#D' değiştiriliyor (gösterici ya da referans olmalı)"
+#: cp/search.c:1757 cp/search.c:1763
+msgid " overriding `%#D'"
+msgstr " `%#D' deÄŸiÅŸtiriliyor"
-#: cp/search.c:2067
+#: cp/search.c:1761
msgid "conflicting return type specified for `%#D'"
msgstr "`%D' için çelişen dönüş türü belirtilmiş"
-#: cp/search.c:2068
-msgid " overriding `%#D'"
-msgstr " `%#D' deÄŸiÅŸtiriliyor"
-
-#: cp/search.c:2077
+#: cp/search.c:1775
#, c-format
msgid "looser throw specifier for `%#F'"
msgstr "`%#F' için throw belirteci daha gevşek"
-#: cp/search.c:2078
+#: cp/search.c:1776
#, c-format
msgid " overriding `%#F'"
msgstr " `%#F' deÄŸiÅŸtiriliyor"
#. A static member function cannot match an inherited
#. virtual member function.
-#: cp/search.c:2167
+#: cp/search.c:1866
msgid "`%#D' cannot be declared"
msgstr "`%#D' bildirilemez"
-#: cp/search.c:2168
+#: cp/search.c:1867
msgid " since `%#D' declared in base class"
msgstr " `%#D' taban sınıfta bildirildiğinden"
-#: cp/search.c:2309
+#: cp/search.c:1944
msgid "`%#D' needs a final overrider"
msgstr "`%#D' bir son deÄŸiÅŸtirici gerektiriyor"
-#: cp/semantics.c:919
+#: cp/semantics.c:1092
#, c-format
msgid "type of asm operand `%E' could not be determined"
msgstr "asm terimi `%E'nin türü saptanamadı"
-#: cp/semantics.c:1051
-msgid "ISO C++ does not permit named return values"
-msgstr "ISO C++ isimli dönen değerlere izin vermez"
+#: cp/semantics.c:1233
+msgid "invalid use of member `%D' in static member function"
+msgstr "statik üye işlev kapsamında üye `%D' kullanımı geçersiz "
-#: cp/semantics.c:1060
-msgid "return identifier `%D' already in place"
-msgstr "dönüş belirteci `%D' zaten yerinde"
+#: cp/semantics.c:1237 cp/semantics.c:1276
+msgid "from this location"
+msgstr ""
-#: cp/semantics.c:1068
-msgid "can't redefine default return value for constructors"
-msgstr "kurucular için öntanımlı dönüş değeri tekrar tanımlanamaz"
+#: cp/semantics.c:1275
+#, fuzzy
+msgid "object missing in reference to `%D'"
+msgstr "`%E' kullanımı içinde nesne eksik"
-#: cp/semantics.c:1100
-msgid "only constructors take base initializers"
-msgstr "temel ilklendiricileri sadece kurucular alır"
+#: cp/semantics.c:1721
+#, fuzzy
+msgid "arguments to destructor are not allowed"
+msgstr "`%s' özniteliğine argüman %d den büyük"
-#: cp/semantics.c:1343
+#: cp/semantics.c:1769
msgid "`this' is unavailable for static member functions"
msgstr "statik üye işlevlerde `this' kullanılmaz"
-#: cp/semantics.c:1349
+#: cp/semantics.c:1775
msgid "invalid use of `this' in non-member function"
msgstr "üye olmayan işlevde `this' kullanımı geçersiz"
-#: cp/semantics.c:1351
+#: cp/semantics.c:1777
msgid "invalid use of `this' at top level"
msgstr "tepe seviyede `this' kullanımı geçersiz"
-#: cp/semantics.c:1381
-msgid "calling type `%T' like a method"
-msgstr "tür `%T' çağrısı tıpkı bir yöntem gibi"
-
-#: cp/semantics.c:1419
-msgid "destructor specifier `%T::~%T()' must have matching names"
-msgstr "yıkıcı belirteci `%T::~%T()' uyumlu isimlere sahip olmalı"
+#: cp/semantics.c:1801
+#, fuzzy
+msgid "invalid qualifying scope in pseudo-destructor name"
+msgstr "üyesiz işlev türünde geçersiz niteleyici"
-#: cp/semantics.c:1425
+#: cp/semantics.c:1807
msgid "`%E' is not of type `%T'"
msgstr "`%E' `%T' türünde değil"
-#: cp/semantics.c:1613
+#: cp/semantics.c:1918
msgid "template type parameters must use the keyword `class' or `typename'"
msgstr "şablon türü parametrelerde `class' ya da `typename' sözcükleri kullanılmalı"
-#: cp/semantics.c:1652
-msgid "invalid default template argument"
-msgstr "öntanımlı şablon argümanı geçersiz"
+#: cp/semantics.c:1962
+#, fuzzy
+msgid "invalid use of type `%T' as a default value for a template template-parameter"
+msgstr "şablon türü parametre kullanımı geçersiz"
-#: cp/semantics.c:1694
+#: cp/semantics.c:1965
+#, fuzzy
+msgid "invalid use of `%D' as a default value for a template template-parameter"
+msgstr "şablon türü parametre kullanımı geçersiz"
+
+#: cp/semantics.c:1969
+#, fuzzy
+msgid "invalid default argument for a template template parameter"
+msgstr "şablon türü parametre kullanımı geçersiz"
+
+#: cp/semantics.c:2004
msgid "definition of `%#T' inside template parameter list"
msgstr "şablon parametre listesinde `%#T' tanımı"
-#: cp/semantics.c:1710
+#: cp/semantics.c:2015
msgid "invalid definition of qualified type `%T'"
msgstr "nitelikli tür `%T' tanımı geçersiz"
-#: cp/semantics.c:2053
+#: cp/semantics.c:2030
+msgid "previous definition of `%#T'"
+msgstr "`%#T' nin önceki bildirimi"
+
+#: cp/semantics.c:2225
msgid "invalid base-class specification"
msgstr "ana sınıf belirtimi geçersiz"
-#: cp/semantics.c:2062
+#: cp/semantics.c:2234
msgid "base class `%T' has cv qualifiers"
msgstr "taban sınıf `%T' cv niteleyiciler içeriyor"
-#: cp/semantics.c:2093
+#: cp/semantics.c:2266
msgid "multiple declarators in template declaration"
msgstr "şablon bildiriminde çoklu bildiriciler"
-#: cp/semantics.c:2120
-#, c-format
-msgid "type of `%E' is unknown"
-msgstr "`%E' türü bilinmiyor"
-
-#: cp/spew.c:225
-#, c-format
-msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
-msgstr "tanıtıcı ismi `%s' GNU C++ dahili adlandırma stratejisi ile çelişiyor"
-
-#: cp/spew.c:1002 cp/spew.c:1340
-msgid "parse error at end of saved function text"
-msgstr "kayıtlı işlev metninin sonunda ayrıştırma hatası"
+#: cp/semantics.c:2277
+#, fuzzy
+msgid "incomplete type `%T' used in nested name specifier"
+msgstr "içi boş `%T' türü bir yorum alanı içinde isim olarak kullanılamaz"
-#: cp/spew.c:1090 cp/spew.c:1178
-msgid "%Hend of file read inside definition"
-msgstr "%Hdosya sonu tanım içinde okundu"
+#: cp/semantics.c:2279 cp/typeck.c:1616
+msgid "`%D' is not a member of `%T'"
+msgstr "`%D' `%T' nin bir üyesi değil"
-#: cp/spew.c:1121
-msgid "parse error in method specification"
-msgstr "yöntem özelliklerinde ayrıştırma hatası"
+#: cp/semantics.c:2282
+#, fuzzy
+msgid "`%D' is not a member of `%D'"
+msgstr "`%D' `%T' nin bir üyesi değil"
-#: cp/spew.c:1161
-msgid "function body for constructor missing"
-msgstr "kurucu için işlev gövdesi yok"
+#: cp/semantics.c:2400
+msgid "template parameter `%D' of type `%T' is not allowed in an integral constant expression because it is not of integral or enumeration type"
+msgstr ""
-#: cp/spew.c:1262
-msgid "%Hend of file read inside default argument"
-msgstr "%Hdosya sonu öntanımlı argüman içinde okundu"
+#: cp/semantics.c:2553
+#, fuzzy
+msgid "`%D' cannot appear in a constant-expression"
+msgstr "`%D' dizisinin boyutu bir tümleyen sabitli ifade değil"
-#: cp/spew.c:1419
-msgid "circular dependency in default args of `%#D'"
-msgstr "`%#D' lik öntanımlı argümanlarda döngüsel bağımlılık"
+#: cp/semantics.c:2562
+msgid "use of namespace `%D' as expression"
+msgstr "isim alanı `%D' nin ifade olarak kullanımı"
-#: cp/spew.c:1483
-msgid "invalid type `%T' for default argument to `%T'"
-msgstr "`%T'ye öntanımlı argüman olarak geçersiz `%T' türü"
+#: cp/semantics.c:2567
+msgid "use of class template `%T' as expression"
+msgstr "sınıf şablonu `%T' nin ifade olarak kullanımı"
-#: cp/spew.c:1548
-#, c-format
-msgid "%s before `%s'"
-msgstr "`%2$s' den önce %1$s"
+#. Ambiguous reference to base members.
+#: cp/semantics.c:2573
+msgid "request for member `%D' is ambiguous in multiple inheritance lattice"
+msgstr "üye `%D' için istek çoklu kalıt kafesi içinde belirsiz"
-#: cp/spew.c:1550
+#: cp/semantics.c:2633
#, c-format
-msgid "%s before `%c'"
-msgstr "`%2$c' den önce %1$s"
+msgid "use of %s from containing function"
+msgstr "içeren işlevden %s kullanımı"
-#: cp/spew.c:1552
-#, c-format
-msgid "%s before `\\%o'"
-msgstr "`\\%2$o' den önce %1$s"
+#: cp/semantics.c:2636
+msgid " `%#D' declared here"
+msgstr " `%#D' burada bildirilmiÅŸ"
-#: cp/spew.c:1555
+#: cp/semantics.c:2687
#, c-format
-msgid "%s before `%s' token"
-msgstr "`%2$s' dizgeciğinden önce %1$s"
+msgid "type of `%E' is unknown"
+msgstr "`%E' türü bilinmiyor"
-#: cp/tree.c:263 cp/tree.c:275
+#: cp/tree.c:222
#, c-format
msgid "non-lvalue in %s"
msgstr "%s içinde olmayan sol yan"
-#: cp/tree.c:562
+#: cp/tree.c:539
msgid "`%V' qualifiers cannot be applied to `%T'"
msgstr "`%V' niteleyicisi `%T' ye uygulanamaz"
-#: cp/tree.c:1941
+#: cp/tree.c:1830
#, c-format
msgid "`%s' attribute can only be applied to Java class definitions"
msgstr "`%s' özniteliği sadece Java sınıf tanımlarında uygulanabilir"
-#: cp/tree.c:1971
+#: cp/tree.c:1859
#, c-format
msgid "`%s' attribute can only be applied to class definitions"
msgstr "`%s' özniteliği sadece sınıf tanımlarında uygulanabilir"
-#: cp/tree.c:1977
+#: cp/tree.c:1865
#, c-format
msgid "`%s' is obsolete; g++ vtables are now COM-compatible by default"
msgstr "`%s' artık kullanılmıyor; g++ vtables şimdi öntanımlı olarak COM-uyumludur"
-#: cp/tree.c:2002
+#: cp/tree.c:1889
msgid "requested init_priority is not an integer constant"
msgstr "istenen init_priority bir tamsayı sabit değil"
-#: cp/tree.c:2023
+#: cp/tree.c:1910
#, c-format
msgid "can only use `%s' attribute on file-scope definitions of objects of class type"
msgstr "`%s' özniteliği sadece sınıf türünün nesnelerinin dosya bağlamı tanımlarında kullanılabilir"
-#: cp/tree.c:2031
+#: cp/tree.c:1918
msgid "requested init_priority is out of range"
msgstr "istenen init_priority kapsamdışı"
-#: cp/tree.c:2041
+#: cp/tree.c:1928
msgid "requested init_priority is reserved for internal use"
msgstr "istenen init_priority iç kullanım için ayrılmıştır"
-#: cp/tree.c:2051
+#: cp/tree.c:1938
#, c-format
msgid "`%s' attribute is not supported on this platform"
msgstr "bu hedefte `%s' özniteliği desteklenmiyor"
-#: cp/tree.c:2588
+#: cp/tree.c:2459
#, c-format
msgid "lang_* check: failed in %s, at %s:%d"
msgstr "lang_* denetimi: %2$s:%3$d: %1$s içinde başarısız"
-#: cp/typeck.c:524
+#: cp/typeck.c:438 cp/typeck.c:453 cp/typeck.c:543
+msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+msgstr "%s farklı gösterici türleri `%T' ve `%T' arasında bir tür dönüşümünü kaldırır"
+
+#: cp/typeck.c:513
#, c-format
msgid "ISO C++ forbids %s between pointer of type `void *' and pointer-to-function"
msgstr "ISO C++'da işlev ve `void *' tür göstericileri arasında %s yasaktır"
-#: cp/typeck.c:545
-msgid "%s between distinct pointer types `%T' and `%T' lacks a cast"
+#: cp/typeck.c:563
+#, fuzzy
+msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast"
msgstr "%s farklı gösterici türleri `%T' ve `%T' arasında bir tür dönüşümünü kaldırır"
-#: cp/typeck.c:1436
-msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
-msgstr "ISO C++ `%#T' den `(...)' ya dönüşümü yasaklar"
-
-#: cp/typeck.c:1514
+#: cp/typeck.c:1235
#, c-format
msgid "invalid application of `%s' to a member function"
msgstr "üye olmayan işleve `%s' uygulanması geçersiz"
-#: cp/typeck.c:1520
-#, c-format
-msgid "invalid application of `%s' to non-static member"
-msgstr "statik olmayab üyeye `%s' uygulanması geçersiz"
-
-#: cp/typeck.c:1538
-msgid "sizeof applied to a bit-field"
-msgstr "sizeof bir bit alanına uygulandı"
+#: cp/typeck.c:1268
+#, fuzzy, c-format
+msgid "invalid application of `%s' to a bit-field"
+msgstr "bir void türe geçersiz `%s' uygulaması"
-#: cp/typeck.c:1541
-msgid "ISO C++ forbids applying `sizeof' to an expression of function type"
+#: cp/typeck.c:1273
+#, fuzzy, c-format
+msgid "ISO C++ forbids applying `%s' to an expression of function type"
msgstr "ISO C++ bir işlev türü ifadesine `sizeof' uygulanmasına izin vermez"
-#: cp/typeck.c:1759
+#: cp/typeck.c:1342
+#, fuzzy
+msgid "invalid use of non-static member function"
+msgstr "statik üye işlev kapsamında üye `%D' kullanımı geçersiz "
+
+#: cp/typeck.c:1476
msgid "deprecated conversion from string constant to `%T'"
msgstr "dizge sabitten `%T' ye modası geçmiş dönüşüm"
-#: cp/typeck.c:1890 cp/typeck.c:2122
+#: cp/typeck.c:1587 cp/typeck.c:1874
msgid "request for member `%D' in `%E', which is of non-class type `%T'"
msgstr "sınıf olmayan `%T' türündeki `%E'nin üyesi `%D' için istek"
-#: cp/typeck.c:1916
-msgid "`%D' is not a member of `%T'"
-msgstr "`%D' `%T' nin bir üyesi değil"
+#: cp/typeck.c:1614
+#, fuzzy, c-format
+msgid "invalid use of nonstatic data member '%E'"
+msgstr "geçersiz static olmayan alan `%D' kullanımı"
-#: cp/typeck.c:1957 cp/typeck.c:1978
+#: cp/typeck.c:1666 cp/typeck.c:1688
msgid "invalid access to non-static data member `%D' of NULL object"
msgstr "NULL nesnenin static olmayan `%D' veri üyesine erişimi geçersiz"
-#: cp/typeck.c:1959 cp/typeck.c:1980
+#: cp/typeck.c:1668 cp/typeck.c:1690
msgid "(perhaps the `offsetof' macro was used incorrectly)"
msgstr "(belki `offsetof' makrosu yanlış kullanıldı)"
-#: cp/typeck.c:2168
+#: cp/typeck.c:1804
+msgid "the type being destroyed is '%T', but the destructor refers to `%T'"
+msgstr ""
+
+#: cp/typeck.c:1924
msgid "`%D::%D' is not a member of `%T'"
msgstr "`%D::%D', `%T' nin bir üyesi değil"
-#: cp/typeck.c:2179
+#: cp/typeck.c:1935
msgid "`%T' is not a base of `%T'"
msgstr "`%T' `%T' tabanında değil"
-#: cp/typeck.c:2199
-msgid "destructor specifier `%T::~%T' must have matching names"
-msgstr "yıkıcı belirteci `%T::~%T' uyumlu isimlere sahip olmalı"
-
-#: cp/typeck.c:2205
-msgid "type `%T' has no destructor"
-msgstr "tür `%T' yıkıcıya sahip değil"
+#: cp/typeck.c:1954
+msgid "'%D' has no member named '%E'"
+msgstr "%D' `%E' isimli üyeye sahip değil"
-#: cp/typeck.c:2244
+#: cp/typeck.c:1969
msgid "`%D' is not a member template function"
msgstr "`%D' bir üye şablon işlevi değil"
#. A pointer to incomplete type (other than cv void) can be
#. dereferenced [expr.unary.op]/1
-#: cp/typeck.c:2338
+#: cp/typeck.c:2075
msgid "`%T' is not a pointer-to-object type"
msgstr "`%T' bir nesne gösterici türü değil"
-#: cp/typeck.c:2365
+#: cp/typeck.c:2100
#, c-format
msgid "invalid use of `%s' on pointer to member"
msgstr "üye göstericisinde `%s' kullanımı geçersiz"
-#: cp/typeck.c:2371
+#: cp/typeck.c:2106
msgid "invalid type argument"
msgstr "tür argümanı geçersiz"
-#: cp/typeck.c:2474
+#: cp/typeck.c:2212
msgid "ISO C++ forbids subscripting non-lvalue array"
msgstr "ISO C++ sol yan olmayan dizi indislemesine izin vermez"
-#: cp/typeck.c:2485
+#: cp/typeck.c:2223
msgid "subscripting array declared `register'"
msgstr "`register' olarak bildirilmiÅŸ dizi indislemesi"
-#: cp/typeck.c:2570
+#: cp/typeck.c:2306
#, c-format
msgid "object missing in use of `%E'"
msgstr "`%E' kullanımı içinde nesne eksik"
-#: cp/typeck.c:2674
+#: cp/typeck.c:2408
msgid "ISO C++ forbids calling `::main' from within program"
msgstr "ISO C++ program içinden `::main' çağrısına izin vermez"
-#: cp/typeck.c:2699
+#: cp/typeck.c:2433
#, c-format
msgid "must use .* or ->* to call pointer-to-member function in `%E (...)'"
msgstr "`%E (...)' içindeki üye göstericili işlev çağrısında .* ya da ->* kullanılmalı"
-#: cp/typeck.c:2712
+#: cp/typeck.c:2446
#, c-format
msgid "`%E' cannot be used as a function"
msgstr "`%E' bir işlev olarak kullanılamaz"
-#: cp/typeck.c:2824
+#: cp/typeck.c:2539
msgid "too many arguments to %s `%+#D'"
msgstr "%s `%+#D' için argümanlar çok fazla"
-#: cp/typeck.c:2865
-msgid "parameter type of called function is incomplete"
-msgstr "çağrılan işlevin parametre türünün içi boş"
+#: cp/typeck.c:2541 cp/typeck.c:2647
+msgid "at this point in file"
+msgstr "dosyanın burasında"
+
+#: cp/typeck.c:2578
+#, fuzzy
+msgid "parameter %P of `%D' has incomplete type `%T'"
+msgstr "`%s' parametresi tamamlanmamış türde"
+
+#: cp/typeck.c:2581
+#, fuzzy
+msgid "parameter %P has incomplete type `%T'"
+msgstr "parametre tamamlanmamış türde"
-#: cp/typeck.c:2928
+#: cp/typeck.c:2645
msgid "too few arguments to %s `%+#D'"
msgstr "%s `%+#D' için argümanlar çok az"
-#: cp/typeck.c:3056 cp/typeck.c:3066
+#: cp/typeck.c:2790 cp/typeck.c:2800
msgid "assuming cast to type `%T' from overloaded function"
msgstr "aşırı yüklü işlevden `%T' ye tür dönüşümü yapıldığı varsayılıyor"
-#: cp/typeck.c:3126
+#: cp/typeck.c:2861
#, c-format
msgid "division by zero in `%E / 0'"
msgstr "`%E / 0' da sıfırla bölme"
-#: cp/typeck.c:3128
+#: cp/typeck.c:2863
#, c-format
msgid "division by zero in `%E / 0.'"
msgstr "`%E / 0.' da sıfırla bölme"
-#: cp/typeck.c:3158
+#: cp/typeck.c:2892
#, c-format
msgid "division by zero in `%E %% 0'"
msgstr "`%E %% 0' da sıfırla bölme"
-#: cp/typeck.c:3160
+#: cp/typeck.c:2894
#, c-format
msgid "division by zero in `%E %% 0.'"
msgstr "`%E %% 0.' da sıfırla bölme"
-#: cp/typeck.c:3240
+#: cp/typeck.c:2974
#, c-format
msgid "%s rotate count is negative"
msgstr "%s döngü sayısı negatif"
-#: cp/typeck.c:3243
+#: cp/typeck.c:2977
#, c-format
msgid "%s rotate count >= width of type"
msgstr "%s döngü sayısı >= tür genişliği"
-#: cp/typeck.c:3274 cp/typeck.c:3279 cp/typeck.c:3370 cp/typeck.c:3375
+#: cp/typeck.c:3011 cp/typeck.c:3016 cp/typeck.c:3107 cp/typeck.c:3112
msgid "ISO C++ forbids comparison between pointer and integer"
msgstr "ISO C++ da gösterici ile tamsayı arasında karşılaştırmaya izin verilmez"
-#: cp/typeck.c:3553
+#: cp/typeck.c:3293
msgid "comparison between types `%#T' and `%#T'"
msgstr "`%#T' ile `%#T' türleri arasında karşılaştırma"
-#: cp/typeck.c:3589
+#: cp/typeck.c:3329
msgid "comparison between signed and unsigned integer expressions"
msgstr "işaretli ve işaretsiz tamsayı ifadeler arasında karşılaştırma"
-#: cp/typeck.c:3654
+#: cp/typeck.c:3394
msgid "invalid operands of types `%T' and `%T' to binary `%O'"
msgstr "iki terimli `%O' için `%T' ve `%T' türünde geçersiz terimler"
@@ -17731,701 +17259,519 @@ msgstr "iki terimli `%O' için `%T' ve `%T' türünde geçersiz terimler"
#. performed. Note that pointer-difference and pointer-addition
#. have already been handled above, and so we don't end up here in
#. that case.
-#: cp/typeck.c:3676
+#: cp/typeck.c:3416
msgid "NULL used in arithmetic"
msgstr "aritmetik içinde NULL kullanımı"
-#: cp/typeck.c:3743
+#: cp/typeck.c:3479
msgid "ISO C++ forbids using pointer of type `void *' in subtraction"
msgstr "ISO C++ bir çıkartma işlemi içinde `void *' türde gösterici kullanımına izin vermez"
-#: cp/typeck.c:3745
+#: cp/typeck.c:3481
msgid "ISO C++ forbids using pointer to a function in subtraction"
msgstr "ISO C++ bir çıkartma işlemi içindeki bir işlev göstericisi kullanımına izin vermez"
-#: cp/typeck.c:3747
+#: cp/typeck.c:3483
msgid "ISO C++ forbids using pointer to a method in subtraction"
msgstr "ISO C++ bir çıkartma işlemi içinde bir yöntem göstericisi kullanımına izin vermez"
-#: cp/typeck.c:3749
-msgid "ISO C++ forbids using pointer to a member in subtraction"
-msgstr "ISO C++ bir çıkartma işlemi içinde bir üye göstericisi kullanımına izin vermez"
-
-#: cp/typeck.c:3761
+#: cp/typeck.c:3495
msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
msgstr "gösterici aritmetiğinde tamamlanmamış türe gösterici kullanımı geçersiz"
-#: cp/typeck.c:3821
+#: cp/typeck.c:3550
#, c-format
msgid "invalid use of '%E' to form a pointer-to-member-function. Use a qualified-id."
msgstr "'%E' kullanımı üye işleve göstrge biçiminde geçersiz. Bir nitelikli kimlik kullanın."
-#: cp/typeck.c:3827
+#: cp/typeck.c:3556
#, c-format
msgid "parenthesis around '%E' cannot be used to form a pointer-to-member-function"
msgstr "parantez içene alınmış '%E' üye işleve gösterici biçiminde kullanılamaz"
-#: cp/typeck.c:3850
+#: cp/typeck.c:3578
msgid "taking address of temporary"
msgstr "geçicinin adresi alınıyor"
-#: cp/typeck.c:4091
+#: cp/typeck.c:3813
#, c-format
msgid "ISO C++ forbids %sing an enum"
msgstr "ISO C++ bir enum'um %s-lenmesine izin vermez"
-#: cp/typeck.c:4103
+#: cp/typeck.c:3824
msgid "cannot %s a pointer to incomplete type `%T'"
msgstr "içi boş `%T' türüne bir gösterici %s yapılamaz"
-#: cp/typeck.c:4110
+#: cp/typeck.c:3830
msgid "ISO C++ forbids %sing a pointer of type `%T'"
msgstr "ISO C++ da bir `%T' türünde göstericiye %s için izin verilmez"
-#: cp/typeck.c:4135
+#: cp/typeck.c:3855
msgid "cast to non-reference type used as lvalue"
msgstr "sol yan olarak kullanılmış referans olmayan türe dönüşüm"
-#: cp/typeck.c:4169
+#: cp/typeck.c:3889
msgid "invalid use of `--' on bool variable `%D'"
msgstr "bool değişken `%D' üstünde `--' kullanımı geçersiz"
#. ARM $3.4
-#: cp/typeck.c:4202
+#: cp/typeck.c:3920
msgid "ISO C++ forbids taking address of function `::main'"
msgstr "ISO C++ `::main' işlevinin adresinin alınmasına izin vermez"
#. An expression like &memfn.
-#: cp/typeck.c:4269
-msgid "ISO C++ forbids taking the address of an unqualified non-static member function to form a pointer to member function. Say `&%T::%D'"
+#: cp/typeck.c:3991
+#, fuzzy
+msgid "ISO C++ forbids taking the address of an unqualified or parenthesized non-static member function to form a pointer to member function. Say `&%T::%D'"
msgstr "ISO C++ üye işleve bir gösterici şekillendirecek bir niteliksiz statik olmayan üye işlevin adresinin alınmasına izin vermez. `&%T::%D' denebilir."
-#: cp/typeck.c:4271
+#: cp/typeck.c:3996
msgid "ISO C++ forbids taking the address of a bound member function to form a pointer to member function. Say `&%T::%D'"
msgstr "ISO C++ üye işleve bir gösterici şekillendirecek bir sınır üye işlevin adresinin alınmasına izin vermez. `&%T::%D' denebilir"
-#: cp/typeck.c:4295
+#: cp/typeck.c:4024
msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression"
msgstr "ISO C++ bir sol yan olmayan ifadeye dönüşüm adresi alınmasına izin vermez"
-#: cp/typeck.c:4324
+#: cp/typeck.c:4040
+msgid "unary `&'"
+msgstr "tekil `&'"
+
+#: cp/typeck.c:4069
msgid "attempt to take address of bit-field structure member `%D'"
msgstr "bit-alanı yapının `%D' üyesinin adresi alınmaya çalışılıyor"
-#: cp/typeck.c:4444
+#: cp/typeck.c:4183
msgid "taking address of destructor"
msgstr "yıkıcı adresinin alınması"
-#: cp/typeck.c:4457
+#: cp/typeck.c:4196
msgid "taking address of bound pointer-to-member expression"
msgstr "üyeye göstericili ifadenin sınır adresi alınıyor"
-#: cp/typeck.c:4473
+#: cp/typeck.c:4204
msgid "cannot create pointer to reference member `%D'"
msgstr "referans üyesi `%D' için gösterici oluşturulamaz"
-#: cp/typeck.c:4536
+#: cp/typeck.c:4266
msgid "cannot take the address of `this', which is an rvalue expression"
msgstr "bir sağ yan ifade olarak `this'in adresi alınamaz"
-#: cp/typeck.c:4555
+#: cp/typeck.c:4285
msgid "address requested for `%D', which is declared `register'"
msgstr "`register' olarak bildirilmiş `%D' için adres isteği"
-#: cp/typeck.c:4682
-msgid "static_cast from type `%T' to type `%T' casts away constness"
+#: cp/typeck.c:4353
+#, fuzzy, c-format
+msgid "%s expression list treated as compound expression"
+msgstr "ilklendirici listesi bileşik ifade olarak ele alınıyor"
+
+#: cp/typeck.c:4426
+#, fuzzy
+msgid "%s from type `%T' to type `%T' casts away constness"
msgstr "`%T' türünden `%T' türüne durağan tür dönüşümü cost'suz dışı dönüşüme sebep oluyor"
-#: cp/typeck.c:4871
+#: cp/typeck.c:4618
msgid "invalid static_cast from type `%T' to type `%T'"
msgstr "`%T' türünden `%T' türüne durağan tür dönüşümü geçersiz"
-#: cp/typeck.c:4910
+#: cp/typeck.c:4658
msgid "invalid reinterpret_cast of an rvalue expression of type `%T' to type `%T'"
msgstr "`%T' türündeki bir sağ taraf değerinin `%T' türüne yeniden yorumlamalı dönüşümü geçersiz"
-#: cp/typeck.c:4930
+#: cp/typeck.c:4678
msgid "reinterpret_cast from `%T' to `%T' loses precision"
msgstr "`%T' den `%T' ye yeniden yorumlamalı tür dönüşümü hassasiyet kaybı oluşturuyor"
-#: cp/typeck.c:4943
-msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
-msgstr "`%T' türünden `%T' türüne yeniden yorumlamalı dönüşüm const (ya da volatile) dışı dönüşüm yapıyor"
-
-#: cp/typeck.c:4952
+#: cp/typeck.c:4697
msgid "ISO C++ forbids casting between pointer-to-function and pointer-to-object"
msgstr "ISO C++ işlev ve nesne göstericileri arasında dönüşüme izin vermez"
-#: cp/typeck.c:4958
+#: cp/typeck.c:4703
msgid "invalid reinterpret_cast from type `%T' to type `%T'"
msgstr "`%T' türünden `%T' türüne yeniden yorumlamalı dönüşüm geçersiz"
-#: cp/typeck.c:4985
+#: cp/typeck.c:4731
msgid "invalid use of const_cast with type `%T', which is not a pointer, reference, nor a pointer-to-data-member type"
msgstr "ne bir gösterici ne de bir veri üyesi göstericili olan `%T' türü ile const_cast kullanımı geçersiz"
-#: cp/typeck.c:4988
+#: cp/typeck.c:4734
msgid "invalid use of const_cast with type `%T', which is a pointer or reference to a function type"
msgstr "bir gösterici ya da bir işlev türüne referans `%T' türü ile const_cast kullanımı geçersiz"
-#: cp/typeck.c:5011
+#: cp/typeck.c:4757
msgid "invalid const_cast of an rvalue of type `%T' to type `%T'"
msgstr "`%T' türündeki bir sağ taraf değerinden `%T' türüne const_cast geçersiz"
-#: cp/typeck.c:5027
+#: cp/typeck.c:4774
msgid "invalid const_cast from type `%T' to type `%T'"
msgstr "`%T' türünden `%T' türüne const_cast geçersiz"
-#: cp/typeck.c:5069 cp/typeck.c:5074
+#: cp/typeck.c:4814 cp/typeck.c:4819
msgid "ISO C++ forbids casting to an array type `%T'"
msgstr "ISO C++ da `%T' dizi türüne dönüşüme izin verilmez"
-#: cp/typeck.c:5082
+#: cp/typeck.c:4827
msgid "invalid cast to function type `%T'"
msgstr "`%T' işlev türüne dönüşüm geçersiz"
-#: cp/typeck.c:5138
+#: cp/typeck.c:4883
msgid "cast from `%T' to `%T' discards qualifiers from pointer target type"
msgstr "`%T' türünden `%T' türüne dönüşüm, gösterici hedef türünden niteleyicileri iptal ediyor"
-#: cp/typeck.c:5184
+#: cp/typeck.c:4929
msgid "cast from `%T' to `%T' increases required alignment of target type"
msgstr "`%T' türünden `%T' türüne dönüşüm hedef türün hizalama gereksinimini arttırıyor"
-#: cp/typeck.c:5357
+#: cp/typeck.c:5093
msgid " in evaluation of `%Q(%#T, %#T)'"
msgstr " `%Q(%#T, %#T)' nin geliÅŸiminde"
-#: cp/typeck.c:5399
+#: cp/typeck.c:5135
msgid "ISO C++ forbids cast to non-reference type used as lvalue"
msgstr "ISO C++ sol taraf değeri olarak kullanılmış referanssız türe dönüşüme izin vermez"
-#: cp/typeck.c:5463
+#: cp/typeck.c:5208
msgid "incompatible types in assignment of `%T' to `%T'"
msgstr "`%T' den `%T' ye değer atamada uyumsuz türler"
-#: cp/typeck.c:5470
+#: cp/typeck.c:5215
msgid "ISO C++ forbids assignment of arrays"
msgstr "ISO C++ dizilerin deÄŸer atanarak bildirimine izin vermez"
-#: cp/typeck.c:5577
+#: cp/typeck.c:5314
msgid " in pointer to member function conversion"
msgstr " üye işleve gösterici dönüşümde"
-#: cp/typeck.c:5585
+#: cp/typeck.c:5322
msgid " in pointer to member conversion"
msgstr " üyeye gösterici dönüşümde"
#. This is a reinterpret cast, we choose to do nothing.
-#: cp/typeck.c:5596 cp/typeck.c:5615
-msgid "pointer to member cast via virtual base `%T' of `%T'"
+#: cp/typeck.c:5332 cp/typeck.c:5347
+#, fuzzy
+msgid "pointer to member cast via virtual base `%T'"
msgstr "sanal taban `%T' türü (`%T' türünün) üzerinden üye göstericisine dönüşüm"
-#: cp/typeck.c:5619
-msgid "pointer to member conversion via virtual base `%T' of `%T'"
+#: cp/typeck.c:5350
+#, fuzzy
+msgid "pointer to member conversion via virtual base `%T'"
msgstr "`%T' türünün sanal tabanı `%T' türü üzerinden üye göstericisine dönüşüm"
-#: cp/typeck.c:5695
+#: cp/typeck.c:5420
msgid "invalid conversion to type `%T' from type `%T'"
msgstr "tür `%T' nin `%T' den dönüşümü geçersiz"
-#: cp/typeck.c:5860
+#: cp/typeck.c:5576
msgid "passing NULL used for non-pointer %s %P of `%D'"
msgstr "`%D' işlevinin %P. argümanında göstericisiz %s için kullanılan NULL'un aktarılmasında"
-#: cp/typeck.c:5863
+#: cp/typeck.c:5579
msgid "%s to non-pointer type `%T' from NULL"
msgstr "NULL'dan gösterici olmayan `%T' türüne %s"
-#: cp/typeck.c:5871
+#: cp/typeck.c:5587
msgid "passing `%T' for %s %P of `%D'"
msgstr "`%D' işlevinin %P. argümanında %s için `%T'nin aktarılmasında"
-#: cp/typeck.c:5874
+#: cp/typeck.c:5590
msgid "%s to `%T' from `%T'"
msgstr "`%T' nin `%T' den %s"
-#: cp/typeck.c:5884
+#: cp/typeck.c:5600
msgid "passing negative value `%E' for %s %P of `%D'"
msgstr "`%D' işlevinin %P. argümanında %s için `%T' negatif değerinin aktarılmasında"
-#: cp/typeck.c:5887
+#: cp/typeck.c:5603
msgid "%s of negative value `%E' to `%T'"
msgstr "%s `%E' nin `%T' için negatif değeridir"
-#: cp/typeck.c:5982
+#: cp/typeck.c:5691
msgid "cannot convert `%T' to `%T' for argument `%P' to `%D'"
msgstr "`%T' `%T' ye argüman `%P' den `%D' ye için dönüştürülemez"
-#: cp/typeck.c:5985
+#: cp/typeck.c:5694
msgid "cannot convert `%T' to `%T' in %s"
msgstr " `%T' `%T' ye %s içinde dönüştürülemez"
-#: cp/typeck.c:6073 cp/typeck.c:6075
+#: cp/typeck.c:5771 cp/typeck.c:5773
msgid "in passing argument %P of `%+D'"
msgstr "`%+D' nin %P. argümanının aktarılmasında"
-#: cp/typeck.c:6190
+#: cp/typeck.c:5880
msgid "returning reference to temporary"
msgstr "geçiciye referans dönüyor"
-#: cp/typeck.c:6197
+#: cp/typeck.c:5887
msgid "reference to non-lvalue returned"
msgstr "sağ yansız dönüşlüye referans"
-#: cp/typeck.c:6209
+#: cp/typeck.c:5899
msgid "reference to local variable `%D' returned"
msgstr "yerel değişken `%D' ye referansa döndürüldü"
-#: cp/typeck.c:6212
+#: cp/typeck.c:5902
msgid "address of local variable `%D' returned"
msgstr "yerel değişken `%D' adresi döndürüldü"
-#: cp/typeck.c:6243
+#: cp/typeck.c:5932
msgid "returning a value from a destructor"
msgstr "bir yıkıcıdan değer dönüyor"
#. If a return statement appears in a handler of the
#. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.c:6251
+#: cp/typeck.c:5940
msgid "cannot return from a handler of a function-try-block of a constructor"
msgstr "bir kurucunun bir işlev deneme bloğunun bir tutamağından döndürülemez"
#. You can't return a value from a constructor.
-#: cp/typeck.c:6254
+#: cp/typeck.c:5943
msgid "returning a value from a constructor"
msgstr "kurucudan bir değer döndürülemez"
-#: cp/typeck.c:6271
-msgid "return-statement with no value, in function declared with a non-void return type"
-msgstr "void olmayan dönen türlü işlevde return deyimi değer almamış"
+#: cp/typeck.c:5966
+#, fuzzy
+msgid "return-statement with no value, in function returning '%T'"
+msgstr "geridönüş değeri void olmayan işlevde `return' değer içermiyor"
-#: cp/typeck.c:6287
-msgid "return-statement with a value, in function declared with a void return type"
-msgstr "void dönüşlü bildirilmiş işlevde return deyiminde bir değer var"
+#: cp/typeck.c:5983
+#, fuzzy
+msgid "return-statement with a value, in function returning 'void'"
+msgstr "void dönüşlü işlevde `return' deyimi değer içeriyor"
-#: cp/typeck.c:6308
+#: cp/typeck.c:6005
msgid "`operator new' must not return NULL unless it is declared `throw()' (or -fcheck-new is in effect)"
msgstr "`operator new', `throw()' olarak bildirilmedikçe NULL dönmemeli (ya da -fcheck-new etkisindedir)"
-#: cp/typeck2.c:54
+#: cp/typeck2.c:55
msgid "type `%T' is not a base type for type `%T'"
msgstr "tür `%T' tür `%T' için taban tür değil"
-#: cp/typeck2.c:157
+#: cp/typeck2.c:151
msgid "cannot declare variable `%D' to be of type `%T'"
msgstr "değişken `%D' `%T' türünde bildirilemez"
-#: cp/typeck2.c:160
+#: cp/typeck2.c:154
msgid "cannot declare parameter `%D' to be of type `%T'"
msgstr "parametre `%D' `%T' türünde bildirilemez"
-#: cp/typeck2.c:163
+#: cp/typeck2.c:157
msgid "cannot declare field `%D' to be of type `%T'"
msgstr "alan `%D' `%T' türünde bildirilemez"
-#: cp/typeck2.c:167
+#: cp/typeck2.c:161
msgid "invalid return type for member function `%#D'"
msgstr "üye işlev `%#D' için dönen değer türü geçersiz"
-#: cp/typeck2.c:169
+#: cp/typeck2.c:163
msgid "invalid return type for function `%#D'"
msgstr "işlev `%#D' için dönen değer türü geçersiz"
-#: cp/typeck2.c:172
+#: cp/typeck2.c:166
msgid "cannot allocate an object of type `%T'"
msgstr "`%T' türünde bir nesne tahsis edilemez"
-#: cp/typeck2.c:179
+#: cp/typeck2.c:173
msgid " because the following virtual functions are abstract:"
msgstr " çünkü aşağıdaki sanal işlevler kuramsaldır:"
-#: cp/typeck2.c:181
+#: cp/typeck2.c:175
msgid "\t%#D"
msgstr "\t%#D"
-#: cp/typeck2.c:184
+#: cp/typeck2.c:178
msgid " since type `%T' has abstract virtual functions"
msgstr " tür `%T' mutlak sanal işlevlere sahip olduğundan"
-#: cp/typeck2.c:338
+#: cp/typeck2.c:426
msgid "constructor syntax used, but no constructor declared for type `%T'"
msgstr "kurucu sözdizimi kullanılmış ama `%T' türü için kurucu bildirilmemiş"
-#: cp/typeck2.c:349
-msgid "comma expression used to initialize return value"
-msgstr "dönen değeri ilklendirirken virgüllü ifadeler kullanılmış"
-
-#: cp/typeck2.c:358
+#: cp/typeck2.c:439
msgid "cannot initialize arrays using this syntax"
msgstr "bu sözdizimi kullanılarak diziler ilklendirilemez"
-#: cp/typeck2.c:473
+#: cp/typeck2.c:544
msgid "initializing array with parameter list"
msgstr "dizi parametre listesi ile ilklendiriliyor"
-#: cp/typeck2.c:529
+#: cp/typeck2.c:599
msgid "initializer for scalar variable requires one element"
msgstr "skalar değişken ilklendiricisi bir öğe gerektirir"
-#: cp/typeck2.c:536
+#: cp/typeck2.c:606
msgid "braces around scalar initializer for `%T'"
msgstr "`%T' için skalar ilklendiriciyi kuşatan parantezler"
-#: cp/typeck2.c:539
+#: cp/typeck2.c:609
msgid "ignoring extra initializers for `%T'"
msgstr "`%T' için fazladan ilklendiricilerin yoksayılması"
-#: cp/typeck2.c:551
+#: cp/typeck2.c:621
msgid "variable-sized object of type `%T' may not be initialized"
msgstr "`%T' türünden değişken-uzunluklu nesne ilklendirilmiş olmayabilir"
-#: cp/typeck2.c:561
+#: cp/typeck2.c:631
msgid "subobject of type `%T' must be initialized by constructor, not by `%E'"
msgstr "`%T' türündeki alt nesne kurucu tarafından ilklendirilmiş olmalı, `%E' tarafından değil"
-#: cp/typeck2.c:627
+#: cp/typeck2.c:696
msgid "aggregate has a partly bracketed initializer"
msgstr "küme kısmen köşeli parantezli ilklendirici içeriyor"
-#: cp/typeck2.c:665 cp/typeck2.c:770
+#: cp/typeck2.c:734 cp/typeck2.c:839
msgid "non-trivial labeled initializers"
msgstr "anlamsız olmayan etiketli ilklendiriciler"
-#: cp/typeck2.c:682
+#: cp/typeck2.c:751
msgid "non-empty initializer for array of empty elements"
msgstr "boş öğeler dizisi için boş olmayan ilklendirici"
-#: cp/typeck2.c:736
+#: cp/typeck2.c:805
msgid "initializer list for object of class with virtual base classes"
msgstr "sanal taban sınıflarla sınıf nesnesi için öndeğer listesi"
-#: cp/typeck2.c:742
+#: cp/typeck2.c:811
msgid "initializer list for object of class with base classes"
msgstr "taban sınıflarla sınıf nesnesi için öndeğer listesi"
-#: cp/typeck2.c:748
+#: cp/typeck2.c:817
msgid "initializer list for object using virtual functions"
msgstr "sanal işlevler kullanan nesne için ilklendirici listesi"
-#: cp/typeck2.c:811 cp/typeck2.c:827
+#: cp/typeck2.c:879 cp/typeck2.c:895
msgid "missing initializer for member `%D'"
msgstr "üye `%D' için ilklendirici eksik"
-#: cp/typeck2.c:816
+#: cp/typeck2.c:884
msgid "uninitialized const member `%D'"
msgstr "ilklendirilmemiş sabit üyesi `%D'"
-#: cp/typeck2.c:818
+#: cp/typeck2.c:886
msgid "member `%D' with uninitialized const fields"
msgstr "üye `%D' ilklendirilmemiş sabit alanlı"
-#: cp/typeck2.c:821
+#: cp/typeck2.c:889
msgid "member `%D' is uninitialized reference"
msgstr "üye `%D' ilklendirilmemiş referanstır"
-#: cp/typeck2.c:868
+#: cp/typeck2.c:936
msgid "index value instead of field name in union initializer"
msgstr "birleşik yapı ilklendiricideki alan isminin yerine index değeri"
-#: cp/typeck2.c:880
+#: cp/typeck2.c:948
msgid "no field `%D' in union being initialized"
msgstr "birleşik yapı ilklendirmesinde `%D' diye bir alan yok"
-#: cp/typeck2.c:888
+#: cp/typeck2.c:956
msgid "union `%T' with no named members cannot be initialized"
msgstr "union `%T' isimli üyeler yokken ilklendirilemez"
-#: cp/typeck2.c:924
+#: cp/typeck2.c:992
msgid "excess elements in aggregate initializer"
msgstr "küme ilklendiricide gereğinden fazla öğe"
-#: cp/typeck2.c:1038
+#: cp/typeck2.c:1100
msgid "circular pointer delegation detected"
msgstr "döngüsel gösterici görevlendirmesi saptandı"
-#: cp/typeck2.c:1051
+#: cp/typeck2.c:1113
msgid "base operand of `->' has non-pointer type `%T'"
msgstr "`->' için taban terim bir gösterici olmayan `%T' türünde"
-#: cp/typeck2.c:1065
+#: cp/typeck2.c:1137
msgid "result of `operator->()' yields non-pointer result"
msgstr "`operator->()' gösterici olmayan sonuç veriyor"
-#: cp/typeck2.c:1067
+#: cp/typeck2.c:1139
msgid "base operand of `->' is not a pointer"
msgstr "`->' için taban terim bir gösterici değil"
-#: cp/typeck2.c:1133
+#: cp/typeck2.c:1162
msgid "`%E' cannot be used as a member pointer, since it is of type `%T'"
msgstr "`%E', `%T' türünde olduğundan bir üye göstericisi olarak kullanılamaz"
-#: cp/typeck2.c:1140
+#: cp/typeck2.c:1170
msgid "cannot apply member pointer `%E' to `%E', which is of non-aggregate type `%T'"
msgstr "üye göstericisi `%E' kümeleme türü olmayan `%T' türündeki `%E' ye uygulanamaz"
-#: cp/typeck2.c:1149
+#: cp/typeck2.c:1180
msgid "member type `%T::' incompatible with object type `%T'"
msgstr "üye türü `%T::' nesne türü `%T' ile uyumsuz"
-#: cp/typeck2.c:1186
-msgid "`%T' fails to be a typedef or built-in type"
-msgstr "`%T' bir typedef veya yerleşik tür olarak hatalı"
-
-#: cp/typeck2.c:1259
-#, c-format
-msgid "ISO C++ forbids defining types within %s"
-msgstr "ISO C++ %s ile türlerin tanımlanmasına izin vermez"
-
-#: cp/typeck2.c:1384
+#: cp/typeck2.c:1396
msgid "call to function `%D' which throws incomplete type `%#T'"
msgstr "içi boş tür `%#T' yakalanırken `%D' işlevine çağrı"
-#: cp/typeck2.c:1387
+#: cp/typeck2.c:1399
msgid "call to function which throws incomplete type `%#T'"
msgstr "içi boş tür `%#T' yakalanırken işleve çağrı"
#. XXX Not i18n clean.
-#: cp/cp-tree.h:3936
+#: cp/cp-tree.h:3756
#, c-format
msgid "%s is deprecated, please see the documentation for details"
msgstr "%s artık kullanılmıyor, lütfen ayrıntılar için belgelere bakınız"
-#: cp/lang-options.h:29
-msgid "Do not obey access control semantics"
-msgstr "Erişim denetimi kurallarına uyulmaz"
-
-#: cp/lang-options.h:31
-msgid "Change when template instances are emitted"
-msgstr "Şablon gerçeklemeleri yayınlandığında değiştirilir"
-
-#: cp/lang-options.h:36
-msgid "Check the return value of new"
-msgstr "new işlemiminin dönen değeri denetlenir"
-
-#: cp/lang-options.h:39
-msgid "Reduce size of object files"
-msgstr "Nesne dosyalarını küçültür"
-
-#: cp/lang-options.h:43
-msgid "Make string literals `char[]' instead of `const char[]'"
-msgstr "Dizge sabitler `const char[]' değil `char[]' yapılır"
-
-#: cp/lang-options.h:46
-msgid "Dump the entire translation unit to a file"
-msgstr "Çeviri biriminin tamamı bir dosyaya dökümlenir"
-
-#: cp/lang-options.h:48
-msgid "Do not inline member functions by default"
-msgstr "Öntanımlı olarak üye işlevler özümlenmez"
-
-#: cp/lang-options.h:51
-msgid "Do not generate run time type descriptor information"
-msgstr "Çalışma anı tür tanımlayıcı bilgisi üretilmez"
-
-#: cp/lang-options.h:56
-msgid "Do not generate code to check exception specifications"
-msgstr ""
-"Olağandışılık özelliklerini denetleyecek kod\n"
-" üretilmez"
-
-#: cp/lang-options.h:61
-msgid "Scope of for-init-statement vars extends outside"
-msgstr ""
-"For döngüsü başlatma satırındaki değişkenlerin\n"
-" etki alanını dışarıya genişletir"
-
-#: cp/lang-options.h:64
-msgid "Do not recognize GNU defined keywords"
-msgstr "GNU tanımlı anahtar sözcükler tanınmaz"
-
-#: cp/lang-options.h:68
-msgid "Enable support for huge objects"
-msgstr "Dev nesneler için destek etkinleştirilir"
-
-#: cp/lang-options.h:72
-msgid "Export functions even if they can be inlined"
-msgstr "Özümlenebilir olsalar bile işlevler ihracedilir"
-
-#: cp/lang-options.h:75
-msgid "Only emit explicit template instantiations"
-msgstr ""
-"Sadece doğrudan belirtilmiş şablon gerçeklemeleri\n"
-" yayınlanır"
-
-#: cp/lang-options.h:78
-msgid "Only emit explicit instantiations of inline templates"
-msgstr "Sadece özümleme şablonlarının doğrudan gerçeklenmesi sağlanır"
-
-#: cp/lang-options.h:84
-msgid "Don't pedwarn about uses of Microsoft extensions"
-msgstr ""
-"Microsoft uzantılarının kullanımı hakkındaki\n"
-" gereksiz uyarılar verilmez"
-
-#: cp/lang-options.h:87
-msgid "Recognize and/bitand/bitor/compl/not/or/xor"
-msgstr "and/bitand/bitor/compl/not/or/xor tanınır"
-
-#: cp/lang-options.h:91
-msgid "Disable optional diagnostics"
-msgstr "Seçimlik teşhisler yapılmaz"
-
-#: cp/lang-options.h:93
-msgid "Downgrade conformance errors to warnings"
-msgstr "Uyumluluk hatalarını uyarılara indirger"
-
-#: cp/lang-options.h:96
-msgid "Enable automatic template instantiation"
-msgstr "Otomatik şablon gerçeklemesi etkinleştirilir"
-
-#: cp/lang-options.h:101
-msgid "Display statistics accumulated during compilation"
-msgstr "Derleme sırasında toplanan istatistikler gösterilir"
-
-#: cp/lang-options.h:104
-msgid "Specify maximum template instantiation depth"
-msgstr ""
-"En büyük şablon gerçekleme derinliği seçeneğe\n"
-" eklenen bir sayı olarak belirtilir"
-
-#: cp/lang-options.h:106
-msgid "Use __cxa_atexit to register destructors"
-msgstr "Yazmaç yıkıcılara __cxa_atexit kullanılır"
-
-#: cp/lang-options.h:109
-msgid "Discard unused virtual functions"
-msgstr "Kullanılmayan sanal işlevler iptal edilir"
-
-#: cp/lang-options.h:112
-msgid "Implement vtables using thunks"
-msgstr "İşlev gösterici tablosu aşılarla oluşturulur"
-
-#: cp/lang-options.h:115
-msgid "Emit common-like symbols as weak symbols"
-msgstr "Benzer semboller zayıf semboller olarak ele alınır"
-
-#: cp/lang-options.h:118
-msgid "Emit cross referencing information"
-msgstr "Çapraz referans bilgisi yayınlanır"
-
-#: cp/lang-options.h:122
-msgid "Warn about inconsistent return types"
-msgstr "Çelişkili dönen türler hakkında uyarır"
-
-#: cp/lang-options.h:125
-msgid "Warn about overloaded virtual function names"
-msgstr "Aşırı yüklü sanal işlev isimleri hakkında uyarır"
-
-#: cp/lang-options.h:129
-msgid "Don't warn when all ctors/dtors are private"
-msgstr "Tüm kurucu/yıkıcı işlevler private olduğunda uyarmaz"
-
-#: cp/lang-options.h:131
-msgid "Warn about non virtual destructors"
-msgstr "Sanal olmayan yıkıcılar hakkında uyarır"
-
-#: cp/lang-options.h:134
-msgid "Warn when a function is declared extern, then inline"
-msgstr ""
-"Bir işlev önce extern sonra da inline olarak\n"
-" bildirilmişse uyarır"
-
-#: cp/lang-options.h:137
-msgid "Warn when the compiler reorders code"
-msgstr "Derleyici kodu yeniden sıralarken uyarır"
-
-#: cp/lang-options.h:140
-msgid "Warn when synthesis behavior differs from Cfront"
-msgstr "Sentezleme davranışı Cfront'dan farklıysa uyarır"
-
-#: cp/lang-options.h:144
-msgid "Don't warn when type converting pointers to member functions"
-msgstr "Üye işlev göstericilerinn tür dönüşümlerinde uyarmaz"
-
-#: cp/lang-options.h:146
-msgid "Warn about violations of Effective C++ style rules"
-msgstr "Effective C++ tarzı kuralların çelişkilerinde uyarmaz"
-
-#: cp/lang-options.h:149
-msgid "Warn when overload promotes from unsigned to signed"
-msgstr ""
-"unsigned'dan signed'a yükseltmelerin aşırı\n"
-" yüklemesinde uyarır"
-
-#: cp/lang-options.h:152
-msgid "Warn if a C style cast is used in a program"
-msgstr "Bir yazılımda C tarzı tür dönüşümü kullanılmışsa uyarır"
-
-#: cp/lang-options.h:156
-msgid "Don't warn when non-templatized friend functions are declared within a template"
-msgstr ""
-"Şablonlanmış olmayan kardeş işlevler bir şablonla\n"
-" bildirildiğinde uyarır"
-
-#: cp/lang-options.h:159
-msgid "Don't announce deprecation of compiler features"
-msgstr "Derleyici özellikleri indiriminde uyarmaz"
-
-#: f/bad.c:387
+#: f/bad.c:388
msgid "note:"
msgstr "bilgi:"
-#: f/bad.c:391
+#: f/bad.c:392
msgid "warning:"
msgstr "uyarı:"
-#: f/bad.c:395
+#: f/bad.c:396
msgid "fatal:"
msgstr "ölümcül:"
-#: f/bad.c:437
+#: f/bad.c:438
msgid "(continued):"
msgstr "(devam):"
-#: f/bad.c:487 f/bad.c:505
+#: f/bad.c:488 f/bad.c:506
msgid "[REPORT BUG!!] %"
msgstr "[HATAYI RAPORLAYIN!!] %"
-#: f/bad.c:494 f/bad.c:526
+#: f/bad.c:495 f/bad.c:527
msgid "[REPORT BUG!!]"
msgstr "[HATAYI RAPORLAYIN!!]"
-#: f/com.c:3132
+#: f/com.c:3125
#, no-c-format
msgid "ASSIGN'ed label cannot fit into `%A' at %0 -- using wider sibling"
msgstr "ASSIGN'lı etiket %0 daki `%A' içine sığmıyor -- daha geniş çocuklama kullanın"
-#: f/com.c:11623
+#: f/com.c:11565
msgid "no INTEGER type can hold a pointer on this configuration"
msgstr "bu yapılandırmada bir göstericiyi tutabilen INTEGER tür yok"
-#: f/com.c:11844
+#: f/com.c:11839
#, c-format
msgid "configuration: REAL, INTEGER, and LOGICAL are %d bits wide,"
msgstr "yapılandırma: REAL, INTEGER, ve LOGICAL %d bit genişlikte,"
-#: f/com.c:11846
+#: f/com.c:11841
#, c-format
msgid "and pointers are %d bits wide, but g77 doesn't yet work"
msgstr "%d bit uzunluktadır, ama g77 hepsi 32 bit uzunlukta olmadığından henüz"
-#: f/com.c:11848
+#: f/com.c:11843
msgid "properly unless they all are 32 bits wide"
msgstr "düzgün çalışmıyor"
-#: f/com.c:11849
+#: f/com.c:11844
msgid "Please keep this in mind before you report bugs."
msgstr "Lütfen bunu gözönünde bulundurarak bir hata raporu gönderin."
#. I/O will probably crash.
-#: f/com.c:11857
+#: f/com.c:11852
#, c-format
msgid "configuration: char * holds %d bits, but ftnlen only %d"
msgstr "yapılandırma: char * %d bit tutar ama ftnlen sadece %d bittir"
#. ASSIGN 10 TO I will crash.
-#: f/com.c:11866
+#: f/com.c:11861
#, c-format
msgid ""
"configuration: char * holds %d bits, but INTEGER only %d --\n"
@@ -18434,68 +17780,65 @@ msgstr ""
"yapılandırma: char * %d bit tutar ama INTEGER sadece %d bittir\n"
" -- ASSIGN deyimi başarısız"
-#: f/com.c:13681
+#: f/com.c:13677
msgid "In statement function"
msgstr "Deyim işlevi içinde:"
-#: f/com.c:13691
+#: f/com.c:13687
+#, c-format
msgid "Outside of any program unit:\n"
msgstr "Her program biriminin dışında:\n"
-#: f/com.c:15320
+#: f/com.c:15283
#, no-c-format
msgid "%A from %B at %0%C"
msgstr "%0%C deki %B den %A"
-#: f/com.c:15497
-msgid "directory name must immediately follow -I"
-msgstr "dizin ismi -I'ye yapışık yazılmalı"
-
-#: f/com.c:15640
+#: f/com.c:15593
#, no-c-format
msgid "At %0, INCLUDE file %A exists, but is not readable"
msgstr "%0 da, INCLUDE dosyası %A var ama okunabilir değil"
-#: f/com.c:15675
+#: f/com.c:15628
#, no-c-format
msgid "At %0, INCLUDE nesting too deep"
msgstr "%0 da, INCLUDE iç içeliği çok derin"
-#: f/expr.c:9614
+#: f/expr.c:8706
#, no-c-format
msgid "Two arithmetic operators in a row at %0 and %1 -- use parentheses"
msgstr "%0 ve %1 de tek satırda iki aritmetik işleci -- parantez kullanın"
-#: f/expr.c:9664
+#: f/expr.c:8756
#, no-c-format
msgid "Operator at %0 has lower precedence than that at %1 -- use parentheses"
msgstr "%0 daki işleç %1 dekinden daha düşük önceliğe sahip -- parantez kullanın"
-#: f/expr.c:10525
+#: f/expr.c:9639
#, no-c-format
msgid "Use .EQV./.NEQV. instead of .EQ./.NE. at %0 for LOGICAL operands at %1 and %2"
msgstr "%1 ve %2 deki LOGICAL terimleri için %0 da .EQ./.NE. yerine .EQV./.NEQV. kullanın"
-#: f/expr.c:10896
+#: f/expr.c:10010
#, no-c-format
msgid "Unsupported operand for ** at %1 -- converting to default INTEGER"
msgstr "%1 deki ** için desteklenmeyen terim -- öntanımlı olan INTEGER'a dönüştürülüyor"
-#: f/g77spec.c:234
+#: f/g77spec.c:230
#, c-format
msgid "overflowed output arg list for `%s'"
msgstr "`%s' için çıktı argüman listesi taştı"
-#: f/g77spec.c:373
+#: f/g77spec.c:367
msgid "--driver no longer supported"
msgstr "--driver artık desteklenmiyor"
-#: f/g77spec.c:386
+#: f/g77spec.c:380
#, c-format
msgid "argument to `%s' missing"
msgstr "`%s' için argüman eksik"
-#: f/g77spec.c:390
+#: f/g77spec.c:384
msgid "no input files; unwilling to write output files"
msgstr "girdi dosyası yok; çıktı dosyaları istemeyerek yazılıyor"
@@ -18504,131 +17847,126 @@ msgstr "girdi dosyası yok; çıktı dosyaları istemeyerek yazılıyor"
msgid "Implicit declaration of `%A' at %0"
msgstr "`%A' %0 da örtük bildirilmiş"
-#: f/lex.c:326
+#: f/lex.c:321
#, no-c-format
msgid "Non-ISO-C-standard escape sequence `\\%A' at %0"
msgstr "%0 içinde ISO standardı olmayan önceleme dizgesi, '\\%A'"
-#: f/lex.c:345
+#: f/lex.c:340
#, no-c-format
msgid "Unknown escape sequence `\\%A' at %0"
msgstr "%0 içinde bilinmeyen önceleme dizgesi, `\\%A'"
-#: f/lex.c:354
+#: f/lex.c:349
#, no-c-format
msgid "Unterminated escape sequence `\\' at %0"
msgstr "%0 içinde sonlandırılmamış denetim dizgesi `\\'"
-#: f/lex.c:365
+#: f/lex.c:360
#, no-c-format
msgid "Unknown escape sequence `\\' followed by char code 0x%A at %0"
msgstr "0x%A karakter kodundan önceki önceleme dizgesi %0 da, `\\' anlamsız"
-#: f/lex.c:393
+#: f/lex.c:388
#, no-c-format
msgid "\\x used at %0 with no following hex digits"
msgstr "%0 içinde \\x'den sonra onaltılık rakamlar yok"
-#: f/lex.c:407
+#: f/lex.c:402
#, no-c-format
msgid "Hex escape at %0 out of range"
msgstr "Onaltılık öncelem %0 da kapsam dışı"
-#: f/lex.c:441
+#: f/lex.c:436
#, no-c-format
msgid "Escape sequence at %0 out of range for character"
msgstr "%0 daki önceleme dizgesi karakter için kapsam dışı"
-#: f/lex.c:595
+#: f/lex.c:590
msgid "hex escape out of range"
msgstr "onaltılık öncelem kapsam dışı"
-#: f/lex.c:648
+#: f/lex.c:643
#, c-format
msgid "non-ANSI-standard escape sequence, `\\%c'"
msgstr "ANSI standardı olmayan önceleme dizgesi, `\\%c'"
-#: f/lex.c:661
+#: f/lex.c:656
#, c-format
msgid "non-ISO escape sequence `\\%c'"
msgstr "ANSI standardı olmayan önceleme dizgesi, '\\%c'"
-#: f/lex.c:665
+#: f/lex.c:660
#, c-format
msgid "unknown escape sequence `\\%c'"
msgstr "bilinmeyen önceleme dizgesi, `\\%c'"
-#: f/lex.c:667
+#: f/lex.c:662
#, c-format
msgid "unknown escape sequence: `\\' followed by char code 0x%x"
msgstr "bilinmeyen önceleme dizgesi, `\\'den sonra 0x%x karakter kodu geliyor"
-#: f/lex.c:744
+#: f/lex.c:739
msgid "badly formed directive -- no closing quote"
msgstr "hatalı şekillendirilmiş yönerge -- kapatan tırnak yok"
-#: f/lex.c:802
+#: f/lex.c:797
msgid "#-lines for entering and leaving files don't match"
msgstr "girme ve bırakma dosyaları için #-satırları uyumsuz"
-#: f/lex.c:964
+#: f/lex.c:957
msgid "bad directive -- missing close-quote"
msgstr "yönerge hatalı -- kapatan tırnak eksik"
-#: f/lex.c:1078
-#, c-format
-msgid "ignoring pragma: %s"
-msgstr "pragma yoksayılıyor: %s"
-
-#: f/lex.c:1156
+#: f/lex.c:1096
msgid "invalid #ident"
msgstr "#ident geçersiz"
-#: f/lex.c:1173
+#: f/lex.c:1113
msgid "undefined or invalid # directive"
msgstr "atanmamış ya da geçersiz # yönergesi"
-#: f/lex.c:1229
+#: f/lex.c:1168
msgid "invalid #line"
msgstr "#line geçersiz"
-#: f/lex.c:1285 f/lex.c:1329
+#: f/lex.c:1224 f/lex.c:1268
msgid "use `#line ...' instead of `# ...' in first line"
msgstr "ilk satırda `# ...' yerine `#line ...' kullanın"
-#: f/lex.c:1339
+#: f/lex.c:1278
msgid "invalid #-line"
msgstr "#-satırı geçersiz"
-#: f/lex.c:1432
+#: f/lex.c:1371
#, no-c-format
msgid "Null character at %0 -- line ignored"
msgstr "%0 da null karakter(ler) -- satır yoksayıldı"
-#: f/stb.c:12078
+#: f/stb.c:9177
#, no-c-format
msgid "INCLUDE at %0 not the only statement on the source line"
msgstr "%0 daki INCLUDE, kaynak satırındaki tek deyim değil"
-#: f/ste.c:1400 f/ste.c:1747
+#: f/ste.c:1397 f/ste.c:1744
msgid "ASSIGNed FORMAT specifier is too small"
msgstr "ASSIGN'lı FORMAT belirteci çok küçük"
#. ~~~Someday handle CHARACTER*1, CHARACTER*N
-#: f/ste.c:2624
+#: f/ste.c:2621
#, no-c-format
msgid "SELECT CASE on CHARACTER type (at %0) not supported -- sorry"
msgstr "CHARACTER türü SELECT CASE (%0 da) desteklenmiyor -- özür"
-#: f/ste.c:2729
+#: f/ste.c:2725
msgid "SELECT (at %0) has duplicate cases -- check integer overflow of CASE(s)"
msgstr "SELECT (%0 da) yinelenmiş case içeriyor -- CASE(ler) için tamsayı taşmasını kontrol edin"
-#: f/ste.c:2959
+#: f/ste.c:2957
msgid "ASSIGN to variable that is too small"
msgstr "Değişkene ASSIGN çok küçük"
-#: f/ste.c:2987
+#: f/ste.c:2989
msgid "ASSIGNed GOTO target variable is too small"
msgstr "ASSIGN'lı GOTO hedef değişkeni çok küçük"
@@ -18637,381 +17975,25 @@ msgstr "ASSIGN'lı GOTO hedef değişkeni çok küçük"
msgid "Local adjustable symbol `%A' at %0"
msgstr "%0 da ayarlanabilir yerel sembol `%A'"
-#: f/target.c:2550
+#: f/target.c:2545
msgid "data initializer on host with different endianness"
msgstr "farklı kıymetli bayt sıralamalı konak üzerinde veri ilklendirmesi"
-#: f/top.c:237
-#, c-format
-msgid "%s no longer supported -- try -fvxt"
+#: f/top.c:244
+#, fuzzy
+msgid "-fvxt-not-f90 no longer supported -- try -fvxt"
msgstr "%s artık desteklenmiyor -- yerine -fvxt deneyin"
-#: f/top.c:239
-#, c-format
-msgid "%s no longer supported -- try -fno-vxt -ff90"
+#: f/top.c:248
+#, fuzzy
+msgid "-ff90-not-vxt no longer supported -- try -fno-vxt -ff90"
msgstr "%s artık desteklenmiyor -- yerine -fno-vxt -ff90 deneyin"
-#: f/top.c:307 f/top.c:309
-#, c-format
-msgid "%s disabled, use normal debugging flags"
+#: f/top.c:318
+#, fuzzy
+msgid "-fdebug-kludge is disabled, use normal debugging flags"
msgstr "%s iptal edildi, normal hata ayıklama seçeneği kullanın"
-#: f/lang-options.h:33
-msgid "Print g77-specific compiler version info, run internal tests"
-msgstr ""
-"g77 ye özel derleyici sürüm bilgisini gösterir ve\n"
-" iç testleri yapar"
-
-#: f/lang-options.h:37
-msgid "Program is written in typical FORTRAN 66 dialect"
-msgstr "Program tipik FORTRAN 66 dilinde yazılmıştır"
-
-#: f/lang-options.h:40
-msgid "Program is written in typical Unix f77 dialect"
-msgstr "Program tipik Unix f77 dilinde yazılmıştır"
-
-#: f/lang-options.h:42
-msgid "Program does not use Unix-f77 dialectal features"
-msgstr "Program Unix-f77 dilinin özelliklerini kullanmıyor"
-
-#: f/lang-options.h:44
-msgid "Program is written in Fortran-90-ish dialect"
-msgstr "Program tipik Fortran-90 dilinde yazılmıştır"
-
-#: f/lang-options.h:48
-msgid "Treat local vars and COMMON blocks as if they were named in SAVE statements"
-msgstr ""
-"Yerel değişkenler ve COMMON blokları SAVE\n"
-" deyimlerinde adlandırılmış olarak değerlendirilir."
-
-#: f/lang-options.h:50
-msgid "Allow $ in symbol names"
-msgstr "Sembol isimlerinde $ kullanımına izin verilir"
-
-#: f/lang-options.h:54
-msgid "f2c-compatible code need not be generated"
-msgstr "f2c uyumlu kod, üretilmemeyi gerektirir"
-
-#: f/lang-options.h:57
-msgid "Unsupported; do not generate libf2c-calling code"
-msgstr "Desteklenmiyor; libf2c çağrı kodu üretilmez"
-
-#: f/lang-options.h:59
-msgid "Unsupported; affects code-generation of arrays"
-msgstr "Desteklenmiyor; dizilerin kod üretimi etkilenir"
-
-#: f/lang-options.h:62
-msgid "Program is written in Fortran-90-ish free form"
-msgstr "Program Fortran-90'ca serbest biçimde yazılmış"
-
-#: f/lang-options.h:67
-msgid "Warn about use of (only a few for now) Fortran extensions"
-msgstr ""
-"Fortran uzantılarının kullanımı hakkında uyarır\n"
-" (ÅŸimdilik hepsinde deÄŸil)"
-
-#: f/lang-options.h:70
-msgid "Program is written in VXT (Digital-like) FORTRAN"
-msgstr "Program VXT (Digital-benzeri) FORTRAN da yazılmış"
-
-#: f/lang-options.h:73
-msgid "Disallow all ugly features"
-msgstr "Tüm salak özellikler kapatılır"
-
-#: f/lang-options.h:76
-msgid "Hollerith and typeless constants not passed as arguments"
-msgstr ""
-"Hollerith ve türsüz sabitler argüman olarak\n"
-" kullanılmaz"
-
-#: f/lang-options.h:78
-msgid "Allow ordinary copying of ASSIGN'ed vars"
-msgstr ""
-"ASSIGN'lı değişkenlerin olağan kopyalamasına izin\n"
-" verilir"
-
-#: f/lang-options.h:81
-msgid "Dummy array dimensioned to (1) is assumed-size"
-msgstr "Yapay dizi üstindisi (1) kabul edilir"
-
-#: f/lang-options.h:84
-msgid "Trailing comma in procedure call denotes null argument"
-msgstr "Yordam çağrılarında son virgül null argüman sayılır"
-
-#: f/lang-options.h:87
-msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
-msgstr ""
-"DOUBLE COMPLEX Z nin REAL(Z) ve AIMAG(Z) olarak\n"
-" verilmesine izin verilir"
-
-#: f/lang-options.h:91
-msgid "Initialization via DATA and PARAMETER is type-compatible"
-msgstr "DATA ve PARAMETER üzerinden ilklendirme tür uyumludur"
-
-#: f/lang-options.h:93
-msgid "Allow INTEGER and LOGICAL interchangeability"
-msgstr "INTEGER ve LOGICAL aradönüşümlerine izin verilir"
-
-#: f/lang-options.h:96
-msgid "Print internal debugging-related info"
-msgstr "İç hata ayıklama bilgilerini gösterir"
-
-#: f/lang-options.h:99
-msgid "Initialize local vars and arrays to zero"
-msgstr "Yerel değişkenler ve diziler sıfır ile ilklendirilir"
-
-#: f/lang-options.h:103
-msgid "Backslashes in character/hollerith constants not special (C-style)"
-msgstr ""
-"Tersbölüler ve karakter/hollerith sabitler özel\n"
-" değildir (C-tarzı)"
-
-#: f/lang-options.h:105
-msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
-msgstr ""
-"Hatalara sebep olmamak için COMPLEX aritmetiği\n"
-" emüle edilir"
-
-#: f/lang-options.h:109
-msgid "Disable the appending of underscores to externals"
-msgstr "external'lara altçizgi eklenmez"
-
-#: f/lang-options.h:112
-msgid "Never append a second underscore to externals"
-msgstr "external'lara ikinci altçizgi eklenemez"
-
-#: f/lang-options.h:114
-msgid "Intrinsics spelled as e.g. SqRt"
-msgstr "Yerleşikler SqRt tarzında hecelenir"
-
-#: f/lang-options.h:116
-msgid "Intrinsics in uppercase"
-msgstr "Yerleşikler büyük harfle yazılmıştır"
-
-#: f/lang-options.h:119
-msgid "Intrinsics letters in arbitrary cases"
-msgstr "Yerleşikler gelişigüzel yazılmıştır"
-
-#: f/lang-options.h:121
-msgid "Language keywords spelled as e.g. IOStat"
-msgstr "Dil anahtar sözcükleri IOStat tarzı hecelenir"
-
-#: f/lang-options.h:123
-msgid "Language keywords in uppercase"
-msgstr "Dil anahtar sözcükleri büyük harflerle yazılmıştır"
-
-#: f/lang-options.h:126
-msgid "Language keyword letters in arbitrary cases"
-msgstr "Dil anahtar sözcükleri gelişigüzel yazılmıştır"
-
-#: f/lang-options.h:128
-msgid "Internally convert most source to uppercase"
-msgstr "Büyük harfe dönüşüm içerden yapılır"
-
-#: f/lang-options.h:131
-msgid "Internally preserve source case"
-msgstr "İçerde harf büyüklüğü korunur"
-
-#: f/lang-options.h:133
-msgid "Symbol names spelled in mixed case"
-msgstr "Sembol isimlerin BüyükKüçük harflerle yazılmıştır"
-
-#: f/lang-options.h:135
-msgid "Symbol names in uppercase"
-msgstr "Sembol isimleri büyük harflerle yazılmıştır"
-
-#: f/lang-options.h:137
-msgid "Symbol names in lowercase"
-msgstr "Sembol isimleri küçük harflerle yazılmıştır"
-
-#: f/lang-options.h:140
-msgid "Program written in uppercase"
-msgstr "Program büyük harflerle yazılmıştır"
-
-#: f/lang-options.h:142
-msgid "Program written in lowercase"
-msgstr "Program küçük harflerle yazılmıştır"
-
-#: f/lang-options.h:144
-msgid "Program written in strict mixed-case"
-msgstr "Program BüyükKüçük harflerle yazılmıştır"
-
-#: f/lang-options.h:146
-msgid "Compile as if program written in uppercase"
-msgstr "Program büyük harflerle yazılmış olarak derlenir"
-
-#: f/lang-options.h:148
-msgid "Compile as if program written in lowercase"
-msgstr "Program küçük harflerle yazılmış olarak derlenir"
-
-#: f/lang-options.h:150
-msgid "Preserve all spelling (case) used in program"
-msgstr "Program derlenirken harf büyüklüklerine dokunulmaz"
-
-#: f/lang-options.h:152
-msgid "Delete libU77 intrinsics with bad interfaces"
-msgstr "Hatalı arabirimli libU77 yerleşikleri silinir"
-
-#: f/lang-options.h:154
-msgid "Disable libU77 intrinsics with bad interfaces"
-msgstr "Hatalı arabirimli libU77 yerleşikleri iptal edilir"
-
-#: f/lang-options.h:157
-msgid "Hide libU77 intrinsics with bad interfaces"
-msgstr "Hatalı arabirimli libU77 yerleşikleri gizlenir"
-
-#: f/lang-options.h:159
-msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-"FORTRAN-77 olmayan yerleÅŸiklerin f2c destekleri\n"
-" silinir"
-
-#: f/lang-options.h:161
-msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-"FORTRAN-77 olmayan yerleÅŸiklerin f2c destekleri\n"
-" iptal edilir"
-
-#: f/lang-options.h:164
-msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
-msgstr ""
-"FORTRAN-77 olmayan yerleÅŸiklerin f2c destekleri\n"
-" gizlenir"
-
-#: f/lang-options.h:166
-msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-"FORTRAN-77 olmayan yerleÅŸiklerin F90 destekleri\n"
-" silinir"
-
-#: f/lang-options.h:168
-msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-"FORTRAN-77 olmayan yerleÅŸiklerin F90 destekleri\n"
-" iptal edilir"
-
-#: f/lang-options.h:171
-msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
-msgstr ""
-"FORTRAN-77 olmayan yerleÅŸiklerin F90 destekleri\n"
-" gizlenir"
-
-#: f/lang-options.h:173
-msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
-msgstr ""
-"FORTRAN-77 olmayan yerleÅŸiklerin g77 destekleri\n"
-" silinir"
-
-#: f/lang-options.h:175
-msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-"FORTRAN-77 olmayan yerleÅŸiklerin g77 destekleri\n"
-" iptal edilir"
-
-#: f/lang-options.h:178
-msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
-msgstr ""
-"FORTRAN-77 olmayan yerleÅŸiklerin g77 destekleri\n"
-" gizlenir"
-
-#: f/lang-options.h:180
-msgid "Delete MIL-STD 1753 intrinsics"
-msgstr "MIL-STD 1753 yerleÅŸikleri silinir"
-
-#: f/lang-options.h:182
-msgid "Disable MIL-STD 1753 intrinsics"
-msgstr "MIL-STD 1753 yerleÅŸikleri iptal edilir"
-
-#: f/lang-options.h:185
-msgid "Hide MIL-STD 1753 intrinsics"
-msgstr "MIL-STD 1753 yerleÅŸikleri gizlenir"
-
-#: f/lang-options.h:187
-msgid "Delete libU77 intrinsics"
-msgstr "libU77 yerleÅŸikleri silinir"
-
-#: f/lang-options.h:189
-msgid "Disable libU77 intrinsics"
-msgstr "libU77 yerleÅŸikleri iptal edilir"
-
-#: f/lang-options.h:192
-msgid "Hide libU77 intrinsics"
-msgstr "libU77 yerleÅŸikleri gizlenir"
-
-#: f/lang-options.h:194
-msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-"FORTRAN-77 olmayan yerleÅŸiklerin VXT FORTRAN\n"
-" destekleri silinir"
-
-#: f/lang-options.h:196
-msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-"FORTRAN-77 olmayan yerleÅŸiklerin VXT FORTRAN\n"
-" destekleri iptal edilir"
-
-#: f/lang-options.h:199
-msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
-msgstr ""
-"FORTRAN-77 olmayan yerleÅŸiklerin VXT FORTRAN\n"
-" destekleri gizlenir"
-
-#: f/lang-options.h:201
-msgid "Treat initial values of 0 like non-zero values"
-msgstr ""
-"0 değerli olanlar içerde sıfır değerli olmayanlar\n"
-" gibi deÄŸerlendirilir"
-
-#: f/lang-options.h:204
-msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
-msgstr ""
-"COMMON ve EQUIVALENCE için özel hata ayıklama\n"
-" bilgileri yayınlanır (iptal edildi)"
-
-#: f/lang-options.h:207
-msgid "Take at least one trip through each iterative DO loop"
-msgstr "Her yinelemeli DO döngüsü en azından bir tur atar"
-
-#: f/lang-options.h:211
-msgid "Print names of program units as they are compiled"
-msgstr ""
-"Program birimlerinin isimleri derlenmiÅŸ olarak\n"
-" gösterilir"
-
-#: f/lang-options.h:214
-msgid "Disable fatal diagnostics about inter-procedural problems"
-msgstr ""
-"Yordamlar arası sorunlar hakkındaki ölümcül tanılar\n"
-" iptal edilir"
-
-#: f/lang-options.h:216
-msgid "Make prefix-radix non-decimal constants be typeless"
-msgstr "Ondalık olmayan taban önekli sabitler türsüz yapılır"
-
-#: f/lang-options.h:219
-msgid "Generate code to check subscript and substring bounds"
-msgstr "Dizi indislerini denetleyecek kod üretilir"
-
-#: f/lang-options.h:222
-msgid "Fortran-specific form of -fbounds-check"
-msgstr "Fortran'a özel -fbounds-check biçimi"
-
-#: f/lang-options.h:226
-msgid "Disable warnings about inter-procedural problems"
-msgstr "Yordamlar arası sorunlar hakkındaki uyarılar verilmez"
-
-#: f/lang-options.h:230
-msgid "Warn about constructs with surprising meanings"
-msgstr "Yapılar hakkında sürpriz niteliğinde uyarı verilir"
-
-#: f/lang-options.h:235
-msgid "Add a directory for INCLUDE searching"
-msgstr "INCLUDE araması için dizin eklenir"
-
-#: f/lang-options.h:237
-msgid "Set the maximum line length"
-msgstr "En büyük satır uzunluğu belirtilir"
-
#: f/bad.def:39
#, no-c-format
msgid "Missing first operand for binary operator at %0"
@@ -19914,320 +18896,350 @@ msgstr "Ä°sim listesi"
msgid "In anything"
msgstr "Hiçbirinde"
-#: java/check-init.c:917
+#: java/check-init.c:905
#, c-format
msgid "internal error in check-init: tree code not implemented: %s"
msgstr "check-init içinde hata: ağaç kodu oluşmadı: %s"
-#: java/check-init.c:990
-#, c-format
-msgid "final field '%s' may not have been initialized"
+#: java/check-init.c:977
+#, fuzzy
+msgid "%Jfinal field '%D' may not have been initialized"
msgstr "son alan '%s' ilklendirilmiÅŸ olmayabilir"
-#: java/class.c:539 java/class.c:564
+#: java/class.c:592 java/class.c:616
msgid "internal error - too many interface type"
msgstr "iç hata - çok fazla interface tür"
-#: java/class.c:677
+#: java/class.c:715
msgid "bad method signature"
msgstr "yöntem imzası hatalı"
-#: java/class.c:726
+#: java/class.c:759
msgid "misplaced ConstantValue attribute (not in any field)"
msgstr "ConstantValue özniteliği yanlış yerde (her alanda değil)"
-#: java/class.c:728
+#: java/class.c:761
#, c-format
msgid "duplicate ConstantValue attribute for field '%s'"
msgstr "alan '%s' için ConstantValue özniteliği yinelendi"
-#: java/class.c:739
+#: java/class.c:772
#, c-format
msgid "ConstantValue attribute of field '%s' has wrong type"
msgstr "Alan '%s' için ConstantValue özniteliği yanlış türde"
-#: java/class.c:1103
+#: java/class.c:1067
#, c-format
msgid "field '%s' not found in class"
msgstr "alan '%s' sınıfta yok"
-#: java/class.c:1365
-msgid "abstract method in non-abstract class"
+#: java/class.c:1324
+#, fuzzy
+msgid "%Jabstract method in non-abstract class"
msgstr "kuramsal olmayan sınıfta kuramsal yöntem"
-#: java/class.c:2078
-#, c-format
-msgid "non-static method '%s' overrides static method"
+#: java/class.c:2140
+#, fuzzy
+msgid "%Jnon-static method '%D' overrides static method"
msgstr "statik olmayan yöntem '%s' statik yönteme zorlanıyor"
-#: java/decl.c:1541
+#: java/decl.c:1018
+#, fuzzy
+msgid "%J'%D' used prior to declaration"
+msgstr "`%#D' bildirim öncesi kullanılmış"
+
+#: java/decl.c:1059
+#, c-format
+msgid "declaration of `%s' shadows a parameter"
+msgstr "`%s' bildirimi bir parametreyi gölgeliyor"
+
+#: java/decl.c:1062
#, c-format
-msgid "In %s: overlapped variable and exception ranges at %d"
+msgid "declaration of `%s' shadows a symbol from the parameter list"
+msgstr "`%s' bildirimi parametre listesinden bir sembolü gölgeliyor"
+
+#: java/decl.c:1361
+#, fuzzy
+msgid "%Jlabel '%D' used but not defined"
+msgstr "etiket `%D' tanımlanmadan kullanılmış"
+
+#: java/decl.c:1366
+#, fuzzy
+msgid "%Jlabel '%D' defined but not used"
+msgstr "etiket `%D' tanımlanmış ama kullanılmamış"
+
+#: java/decl.c:1494
+#, fuzzy
+msgid "%JIn %D: overlapped variable and exception ranges at %d"
msgstr "%s içinde: %d de birbiri içinde değişken ve olağandışılık aralıkları"
-#: java/decl.c:1622
+#: java/decl.c:1572
msgid "bad type in parameter debug info"
msgstr "parametre hata ayıklama bilgisindeki tür hatalı"
-#: java/decl.c:1632
-#, c-format
-msgid "bad PC range for debug info for local `%s'"
+#: java/decl.c:1581
+#, fuzzy
+msgid "%Jbad PC range for debug info for local '%D'"
msgstr "yerel `%s' için hata ayıklama bilgisinin program sayacı (PC) kapsamı hatalı"
-#: java/expr.c:530
+#: java/expr.c:519
msgid "stack underflow - dup* operation"
msgstr "yığın alttan taşması - dup* işlemi"
-#: java/expr.c:1534
+#: java/expr.c:1469
#, c-format
msgid "reference `%s' is ambiguous: appears in interface `%s' and interface `%s'"
msgstr "referans `%s' belirsiz; `%s' ve `%s' arayüzlerinde görünüyor"
-#: java/expr.c:1563
+#: java/expr.c:1497
#, c-format
msgid "field `%s' not found"
msgstr "alan `%s' yok"
-#: java/expr.c:1715
+#: java/expr.c:1658
msgid "ret instruction not implemented"
msgstr "ret işlemi gerçeklenmedi"
-#: java/expr.c:1857
+#: java/expr.c:1815
#, c-format
msgid "method '%s' not found in class"
msgstr "sınıf içinde yöntem '%s' yok"
-#: java/expr.c:2060
+#: java/expr.c:2020
#, c-format
msgid "failed to find class '%s'"
msgstr "sınıf '%s' bulunamadı"
-#: java/expr.c:2070
+#: java/expr.c:2030
#, c-format
msgid "class '%s' has no method named '%s' matching signature '%s'"
msgstr "sınıf '%1$s' '%3$s' ile eşleşen '%2$s' yöntem ismini içermiyor"
-#: java/expr.c:2080
+#: java/expr.c:2040
msgid "invokestatic on non static method"
msgstr "stattik olmayan yöntemde invokestatic"
-#: java/expr.c:2085
+#: java/expr.c:2045
msgid "invokestatic on abstract method"
msgstr "kuramsal yöntemde invokestatic"
-#: java/expr.c:2093
+#: java/expr.c:2053
msgid "invoke[non-static] on static method"
msgstr "statik yöntemde invoke[non-static]"
-#: java/expr.c:2396
+#: java/expr.c:2352
#, c-format
msgid "missing field '%s' in '%s'"
msgstr "'%2$s' içinde alan '%1$s' eksik"
-#: java/expr.c:2402
+#: java/expr.c:2358
#, c-format
msgid "mismatching signature for field '%s' in '%s'"
msgstr "'%2$s' içindeki alan '%1$s' için imza çelişkili"
-#: java/expr.c:2425
-#, c-format
-msgid "assignment to final field `%s' not in field's class"
+#: java/expr.c:2380
+#, fuzzy
+msgid "%Jassignment to final field '%D' not in field's class"
msgstr "bitiş alanı `%s' ataması alanların sınıfı içinde değil"
-#: java/expr.c:2430
-#, c-format
-msgid "assignment to final static field `%s' not in class initializer"
+#: java/expr.c:2385
+#, fuzzy
+msgid "%Jassignment to final static field `%D' not in class initializer"
msgstr "bitiş statik alanı `%s' ataması sınıf ilklendiricisi içinde değil"
-#: java/expr.c:2437
-#, c-format
-msgid "assignment to final field `%s' not in constructor"
+#: java/expr.c:2393
+#, fuzzy
+msgid "%Jassignment to final field '%D' not in constructor"
msgstr "bitiş alanı `%s' ataması kurucu içinde değil"
-#: java/expr.c:2684
+#: java/expr.c:2636
#, c-format
msgid "can't expand %s"
msgstr "`%s' geniÅŸletilemiyor"
-#: java/expr.c:2861
+#: java/expr.c:2808
msgid "invalid PC in line number table"
msgstr "satır numarası tablosunda geçersiz program sayacı (PC)"
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2906
+#: java/expr.c:2854
#, c-format
msgid "unreachable bytecode from %d to before %d"
msgstr "%d den %d nin öncesine baytkod erişilebilir değil"
-#. We've just reached the end of a region of dead code.
-#: java/expr.c:2943
+#: java/expr.c:2892
#, c-format
msgid "unreachable bytecode from %d to the end of the method"
msgstr "yöntemin sonundaki %d den baytkod ulaşılabilir değil"
#. duplicate code from LOAD macro
-#: java/expr.c:3261
+#: java/expr.c:3206
msgid "unrecogized wide sub-instruction"
msgstr "geniş altişlem anlaşılamadı"
-#: java/jcf-io.c:543
+#: java/jcf-io.c:534
#, c-format
msgid "source file for class `%s' is newer than its matching class file. Source file `%s' used instead"
msgstr "sınıf %s için kaynak dosyası onunla eşleşen sınıf dosyasından daha yeni. Yerine kaynak dosyası `%s' kullanıldı"
-#: java/jcf-parse.c:338
+#: java/jcf-parse.c:330
msgid "bad string constant"
msgstr "dizge sabit hatalı"
-#: java/jcf-parse.c:356
+#: java/jcf-parse.c:348
#, c-format
msgid "bad value constant type %d, index %d"
msgstr "değer sabiti türü %d, indeks %d hatalı"
-#: java/jcf-parse.c:528
-#, c-format
-msgid "can't reopen %s"
+#: java/jcf-parse.c:514
+#, fuzzy, c-format
+msgid "can't reopen %s: %m"
msgstr "%s tekrar açılamıyor"
-#: java/jcf-parse.c:533
-#, c-format
-msgid "can't close %s"
+#: java/jcf-parse.c:519
+#, fuzzy, c-format
+msgid "can't close %s: %m"
msgstr "%s kapatılamıyor"
-#: java/jcf-parse.c:619
+#: java/jcf-parse.c:604
#, c-format
msgid "cannot find file for class %s"
msgstr "sınıf %s için dosya bulunamıyor"
-#: java/jcf-parse.c:631
+#: java/jcf-parse.c:615
msgid "not a valid Java .class file"
msgstr "geçerli bir Java .class dosyası değil"
-#: java/jcf-parse.c:634
+#: java/jcf-parse.c:618
msgid "error while parsing constant pool"
msgstr "sabit havuzu çözümlenirken hata"
-#: java/jcf-parse.c:637
+#: java/jcf-parse.c:621
#, c-format
msgid "error in constant pool entry #%d\n"
msgstr "sabit havuzu girdisi #%d de hata\n"
#. FIXME - where was first time
-#: java/jcf-parse.c:649
+#: java/jcf-parse.c:633
#, c-format
msgid "reading class %s for the second time from %s"
msgstr "sınıf %s ikinci defadır %s den okunuyor"
-#: java/jcf-parse.c:667
+#: java/jcf-parse.c:651
msgid "error while parsing fields"
msgstr "alanlar çözümlenirken hata"
-#: java/jcf-parse.c:670
+#: java/jcf-parse.c:654
msgid "error while parsing methods"
msgstr "yöntemler çözümlenirken hata"
-#: java/jcf-parse.c:673
+#: java/jcf-parse.c:657
msgid "error while parsing final attributes"
msgstr "bitiş öznitelikleri çözümlenirken hata"
-#: java/jcf-parse.c:687
+#: java/jcf-parse.c:671
#, c-format
msgid "the `java.lang.Object' that was found in `%s' didn't have the special zero-length `gnu.gcj.gcj-compiled' attribute. This generally means that your classpath is incorrectly set. Use `info gcj \"Input Options\"' to see the info page describing how to set the classpath"
msgstr "`gnu.gcj.gcj-compiled' özel sıfır uzunluklu `gnu.gcj.gcj-compiled' özniteliğine sahip olmayan `%s' içinde bulundu. Bu durum genellikle sınıf dosyalarının yolu doğru belirtilmediğinde ortaya çıkar. Sınıf dosyalarının yolunun nasıl belirtileceğini açıklayan info sayfasına bakmak için komut satırından `info gcj \"Input Options\"' yazınız"
-#: java/jcf-parse.c:777
+#: java/jcf-parse.c:749
msgid "missing Code attribute"
msgstr "Code özniteliği eksik"
-#: java/jcf-parse.c:1014
-msgid "source file seen twice on command line and will be compiled only once"
+#: java/jcf-parse.c:981
+#, fuzzy
+msgid "%Hsource file seen twice on command line and will be compiled only once"
msgstr "komut satırında kaynak dosyası iki kere kullanılmış ve sadece bir kere derlenecek"
-#: java/jcf-parse.c:1030
+#: java/jcf-parse.c:997
msgid "no input file specified"
msgstr "girdi dosyası belirtilmedi"
-#: java/jcf-parse.c:1059
-#, c-format
-msgid "can't close input file %s"
+#: java/jcf-parse.c:1026
+#, fuzzy, c-format
+msgid "can't close input file %s: %m"
msgstr "girdi dosyası %s kapatılamıyor"
-#: java/jcf-parse.c:1096
+#: java/jcf-parse.c:1064
#, c-format
msgid "bad zip/jar file %s"
msgstr "zip/jar dosyası %s hatalı"
-#: java/jcf-write.c:2650
+#: java/jcf-parse.c:1236
+#, fuzzy, c-format
+msgid "error while reading %s from zip file"
+msgstr "alanlar çözümlenirken hata"
+
+#: java/jcf-write.c:2602
#, c-format
msgid "internal error in generate_bytecode_insn - tree code not implemented: %s"
msgstr "generate_bytecode_insn içinde hata - ağaç kodu oluşturulamadı: %s"
-#: java/jcf-write.c:2988
+#: java/jcf-write.c:2934
msgid "field initializer type mismatch"
msgstr "alan ilklendirici türü uyumsuzluğu"
-#: java/jcf-write.c:3419
-#, c-format
-msgid "can't create directory %s"
+#: java/jcf-write.c:3389
+#, fuzzy, c-format
+msgid "can't create directory %s: %m"
msgstr "dizin %s oluşturulamıyor"
-#: java/jcf-write.c:3473
-#, c-format
-msgid "can't create %s"
+#: java/jcf-write.c:3442
+#, fuzzy, c-format
+msgid "can't create %s: %m"
msgstr "%s oluşturulamıyor"
-#: java/jv-scan.c:187
+#: java/jv-scan.c:185
msgid "only one of `--print-main', `--list-class', and `--complexity' allowed"
msgstr "`--print-main', `--list-class' ve `--complexity' seçeneklerinden yalnız biri kullanılabilir"
-#: java/jv-scan.c:190
+#: java/jv-scan.c:188
#, c-format
msgid "can't open output file `%s'"
msgstr "çıktı dosyası `%s' açılamıyor"
-#: java/jv-scan.c:224
+#: java/jv-scan.c:222
#, c-format
msgid "file not found `%s'"
msgstr "`%s' yok"
-#: java/jvspec.c:426
+#: java/jvspec.c:418
msgid "can't specify `-D' without `--main'\n"
msgstr "`--main' olmaksızın `-D' belirtilemez\n"
-#: java/jvspec.c:429
+#: java/jvspec.c:421
#, c-format
msgid "`%s' is not a valid class name"
msgstr "\"%s\" geçerli bir sınıf ismi değil"
-#: java/jvspec.c:435
+#: java/jvspec.c:427
msgid "--resource requires -o"
msgstr "--resource, -o gerektirir"
-#: java/jvspec.c:442
+#: java/jvspec.c:434
msgid "warning: already-compiled .class files ignored with -C"
msgstr "uyarı: zaten derlenmiş olan .class dosyaları -C ile yoksayıldı"
-#: java/jvspec.c:449
+#: java/jvspec.c:441
msgid "cannot specify both -C and -o"
msgstr "hem -C hem de -o belirtilemez"
-#: java/jvspec.c:461
+#: java/jvspec.c:453
msgid "cannot create temporary file"
msgstr "geçici dosya oluşturulamıyor"
-#: java/jvspec.c:489
+#: java/jvspec.c:481
msgid "using both @FILE with multiple files not implemented"
msgstr "çoklu dosyalarla her iki @FILE kullanımı gerçeklenmedi"
-#: java/jvspec.c:538
+#: java/jvspec.c:530
msgid "cannot specify `main' class when not linking"
msgstr "ilintileme yapılmayacaksa `main' sınıfı belirtilemez"
-#: java/lang.c:548
+#: java/lang.c:740
msgid "can't do dependency tracking with input from stdin"
msgstr "Standart girdiden girdili bağımlılık izlemesi yapılamaz"
-#: java/lang.c:564
+#: java/lang.c:756
msgid "couldn't determine target name for dependency tracking"
msgstr "bağımlılık izlemesi için hedef isim saptanamıyor"
@@ -20245,300 +19257,210 @@ msgstr ""
"anlamına gelmektedir. Eğer girdi dosyanızda özellikle bir kodlama kullanmanız\n"
"gerekiyorsa `--encoding=UTF-8' seçeneğini kullanmayı deneyin."
-#: java/mangle.c:85
+#: java/mangle.c:89
#, c-format
msgid "can't mangle %s"
msgstr "%s anlamlandırılamıyor"
-#: java/mangle_name.c:144 java/mangle_name.c:216
+#: java/mangle_name.c:140 java/mangle_name.c:210
msgid "internal error - invalid Utf8 name"
msgstr "iç hata - Utf8 ismi geçersiz"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:881
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:962
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1303
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1364
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1574
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1796
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1805
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1816
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1827
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1839
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1854
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1871
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1873
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1945
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2116
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2178
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2330
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2342
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2349
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2356
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2367
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2369
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2407
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2409
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2411
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2432
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2434
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2436
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2452
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2454
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2475
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2477
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2479
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2507
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2509
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2511
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2513
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2531
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2533
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2555
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2566
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2577
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2588
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2601
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2605
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2607
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2620
+#: java/parse-scan.y:880 java/parse.y:949 java/parse.y:1290 java/parse.y:1351
+#: java/parse.y:1555 java/parse.y:1777 java/parse.y:1786 java/parse.y:1797
+#: java/parse.y:1808 java/parse.y:1820 java/parse.y:1835 java/parse.y:1852
+#: java/parse.y:1854 java/parse.y:1935 java/parse.y:2106 java/parse.y:2168
+#: java/parse.y:2320 java/parse.y:2332 java/parse.y:2339 java/parse.y:2346
+#: java/parse.y:2357 java/parse.y:2359 java/parse.y:2397 java/parse.y:2399
+#: java/parse.y:2401 java/parse.y:2422 java/parse.y:2424 java/parse.y:2426
+#: java/parse.y:2442 java/parse.y:2444 java/parse.y:2465 java/parse.y:2467
+#: java/parse.y:2469 java/parse.y:2497 java/parse.y:2499 java/parse.y:2501
+#: java/parse.y:2503 java/parse.y:2521 java/parse.y:2523 java/parse.y:2534
+#: java/parse.y:2545 java/parse.y:2556 java/parse.y:2567 java/parse.y:2578
+#: java/parse.y:2591 java/parse.y:2595 java/parse.y:2597 java/parse.y:2610
msgid "Missing term"
msgstr "Terim eksik"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse-scan.y:883
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:734
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:772
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:797
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:983
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1338
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1550
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1552
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1781
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1807
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1818
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1829
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1841
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1856
+#: java/parse-scan.y:882 java/parse.y:721 java/parse.y:759 java/parse.y:784
+#: java/parse.y:970 java/parse.y:1325 java/parse.y:1531 java/parse.y:1533
+#: java/parse.y:1762 java/parse.y:1788 java/parse.y:1799 java/parse.y:1810
+#: java/parse.y:1822 java/parse.y:1837
msgid "';' expected"
msgstr "';' gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:732
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:770
+#: java/parse.y:719 java/parse.y:757
msgid "Missing name"
msgstr "Ä°sim eksik"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:795
+#: java/parse.y:782
msgid "'*' expected"
msgstr "'*' gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:809
+#: java/parse.y:796
msgid "Class or interface declaration expected"
msgstr "Sınıf ya da arabirim bildirimi gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:846
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:848
+#: java/parse.y:833 java/parse.y:835
msgid "Missing class name"
msgstr "Sınıf ismi yok"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:851
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:855
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:863
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1023
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1284
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1616
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1867
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1899
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1952
+#: java/parse.y:838 java/parse.y:842 java/parse.y:850 java/parse.y:1010
+#: java/parse.y:1271 java/parse.y:1273 java/parse.y:1597 java/parse.y:1848
+#: java/parse.y:1880 java/parse.y:1942
msgid "'{' expected"
msgstr "'{' gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:865
+#: java/parse.y:852
msgid "Missing super class name"
msgstr "Süper sınıf ismi eksik"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:875
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:891
+#: java/parse.y:862 java/parse.y:878
msgid "Missing interface name"
msgstr "Arabirim ismi yok"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:977
+#: java/parse.y:964
msgid "Missing variable initializer"
msgstr "DeÄŸiÅŸken ilklendirici eksik"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:994
+#: java/parse.y:981
msgid "Invalid declaration"
msgstr "Geçersiz bildirim"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:997
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1082
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2153
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2175
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2179
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2214
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2291
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2301
+#: java/parse.y:984 java/parse.y:1069 java/parse.y:2143 java/parse.y:2165
+#: java/parse.y:2169 java/parse.y:2204 java/parse.y:2281 java/parse.y:2291
msgid "']' expected"
msgstr "']' gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1001
+#: java/parse.y:988
msgid "Unbalanced ']'"
msgstr "karşılıksız ']'"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1037
+#: java/parse.y:1024
msgid "Invalid method declaration, method name required"
msgstr "Yöntem bildirimi geçersiz, yöntem ismi gerekiyor"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1042
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1047
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1052
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2036
+#: java/parse.y:1029 java/parse.y:1034 java/parse.y:1039 java/parse.y:2026
msgid "Identifier expected"
msgstr "Tanıtıcı gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1057
+#: java/parse.y:1044
msgid "Invalid method declaration, return type required"
msgstr "Yöntem bildirimi geçersiz, return türü gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1080
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1530
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1537
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1546
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1548
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1576
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1684
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1981
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2034
+#: java/parse.y:1067 java/parse.y:1511 java/parse.y:1518 java/parse.y:1527
+#: java/parse.y:1529 java/parse.y:1557 java/parse.y:1665 java/parse.y:1971
+#: java/parse.y:2024
msgid "')' expected"
msgstr "')' gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1096
+#: java/parse.y:1083
msgid "Missing formal parameter term"
msgstr "Biçimsel parametre terimi eksik"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1111
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1116
+#: java/parse.y:1098 java/parse.y:1103
msgid "Missing identifier"
msgstr "Tanıtıcı eksik"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1136
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1145
+#: java/parse.y:1123 java/parse.y:1132
msgid "Missing class type term"
msgstr "class tür terimi eksik"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1301
+#: java/parse.y:1288
msgid "Invalid interface type"
msgstr "Geçersiz arabirim türü"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1494
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1663
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1665
+#: java/parse.y:1475 java/parse.y:1644 java/parse.y:1646
msgid "':' expected"
msgstr "':' gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1516
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1521
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1526
+#: java/parse.y:1497 java/parse.y:1502 java/parse.y:1507
msgid "Invalid expression statement"
msgstr "Geçersiz ifade satırı"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1544
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1572
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1612
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1680
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1748
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1869
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1938
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2028
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2030
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2038
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2274
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2276
+#: java/parse.y:1525 java/parse.y:1553 java/parse.y:1593 java/parse.y:1661
+#: java/parse.y:1729 java/parse.y:1850 java/parse.y:1928 java/parse.y:2018
+#: java/parse.y:2020 java/parse.y:2028 java/parse.y:2264 java/parse.y:2266
msgid "'(' expected"
msgstr "'(' gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1614
+#: java/parse.y:1595
msgid "Missing term or ')'"
msgstr "Terim ya da ')' eksik"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1661
+#: java/parse.y:1642
msgid "Missing or invalid constant expression"
msgstr "Geçersiz ya da eksik sabit ifadesi"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1682
+#: java/parse.y:1663
msgid "Missing term and ')' expected"
msgstr "Terim eksik ve ')' gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1721
+#: java/parse.y:1702
msgid "Invalid control expression"
msgstr "Geçersiz denetim ifadesi"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1723
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1725
+#: java/parse.y:1704 java/parse.y:1706
msgid "Invalid update expression"
msgstr "Geçersiz güncelleme ifadesi"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1750
+#: java/parse.y:1731
msgid "Invalid init statement"
msgstr "Geçersiz ilklendirme satırı"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1941
+#: java/parse.y:1931
msgid "Missing term or ')' expected"
msgstr "Terim eksik ya da ')' gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1983
+#: java/parse.y:1973
msgid "'class' or 'this' expected"
msgstr "'class' ya da 'this' gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1985
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:1987
+#: java/parse.y:1975 java/parse.y:1977
msgid "'class' expected"
msgstr "'class' gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2032
+#: java/parse.y:2022
msgid "')' or term expected"
msgstr "')' ya da terim gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2151
+#: java/parse.y:2141
msgid "'[' expected"
msgstr "'[' gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2229
+#: java/parse.y:2219
msgid "Field expected"
msgstr "Alan gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2286
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2296
+#: java/parse.y:2276 java/parse.y:2286
msgid "Missing term and ']' expected"
msgstr "Terim eksik ve ']' gerekli"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2400
+#: java/parse.y:2390
msgid "']' expected, invalid type expression"
msgstr "']' gerekli ve tür ifadesi geçersiz"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2403
+#: java/parse.y:2393
msgid "Invalid type expression"
msgstr "Geçersiz tür ifadesi"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2515
+#: java/parse.y:2505
msgid "Invalid reference type"
msgstr "Geçersiz referans türü"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2993
+#: java/parse.y:2977
msgid "Constructor invocation must be first thing in a constructor"
msgstr "Constructor çağrısı bir kurucu içindeki ilk şey olmalı"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:2995
+#: java/parse.y:2979
msgid "Only constructors can invoke constructors"
msgstr "Sadece kurucular birbirini çağırabilir"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3004
+#: java/parse.y:2987
#, c-format
msgid ": `%s' JDK1.1(TM) feature"
msgstr ": `%s' JDK1.1(TM) özelliği"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3064
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:3066
+#: java/parse.y:3046 java/parse.y:3048
#, c-format
msgid ""
"%s.\n"
@@ -20547,254 +19469,227 @@ msgstr ""
"%s.\n"
"%s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6879
+#: java/parse.y:6908
#, c-format
msgid "malformed .zip archive in CLASSPATH: %s"
msgstr "CLASSPATH içinde bozuk .zip arşivi: %s"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:6950
+#: java/parse.y:6979
#, c-format
msgid "Can't find default package `%s'. Check the CLASSPATH environment variable and the access to the archives"
msgstr "Öntanımlı `%s' paketi bulunamıyor. CLASSPATH ortam değişkenini ve arşivlere erişimi kontrol ediniz"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12352
+#: java/parse.y:12192
#, c-format
msgid "missing static field `%s'"
msgstr "statik alan `%s' eksik"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12357
+#: java/parse.y:12197
#, c-format
msgid "not a static field `%s'"
msgstr "`%s' bir statik alan deÄŸil"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:12400
+#: java/parse.y:12240
#, c-format
msgid "No case for %s"
msgstr "%s için uygun bir case yok"
-#: /home/mitchell/gcc-3.3.2/gcc-3.3.2/gcc/java/parse.y:13365
+#: java/parse.y:13172
#, c-format
msgid "unregistered operator %s"
msgstr "%s işleci tanınmıyor"
-#: java/typeck.c:553
+#: java/typeck.c:530
msgid "junk at end of signature string"
msgstr "imza dizgesinden sonrası karışık"
-#: java/verify.c:479
+#: java/verify.c:471
msgid "bad pc in exception_table"
msgstr "exception_table içindeki pc hatalı"
-#: java/verify.c:485
-msgid "exception handler inside code that is being protected"
-msgstr "hata değişkeni korunmuş kodun içinde"
-
-#: java/verify.c:1395
+#: java/verify.c:1384
#, c-format
msgid "unknown opcode %d@pc=%d during verification"
msgstr "doğrulama sırasında bilinmeyen opkod %d@pc=%d"
-#: java/verify.c:1465 java/verify.c:1478 java/verify.c:1482
+#: java/verify.c:1454 java/verify.c:1467 java/verify.c:1471
#, c-format
msgid "verification error at PC=%d"
msgstr "PC=%d de doğrulama hatası"
-#: java/lang-options.h:32
-msgid "Disable automatic array bounds checking"
-msgstr "Dizi sınırları denetimi iptal edilir"
-
-#: java/lang-options.h:34
-msgid "Disable assignability checks for stores into object arrays"
-msgstr ""
-"Nesne dizileri içinde saklamalar için atanabilirlik\n"
-" denetimleri kapatılır"
-
-#: java/lang-options.h:36
-msgid "Assume native functions are implemented using JNI"
-msgstr "Yerli işlevlerin JNI kullanarak oluştuğu varsayılır"
-
-#: java/lang-options.h:38
-msgid "Replace system path"
-msgstr "Sistem dosya yolu ile deÄŸiÅŸtirilir"
-
-#: java/lang-options.h:40
-msgid "Set class path"
-msgstr "Sınıf dosya yolu ayarlanır"
-
-#: java/lang-options.h:42
-msgid "Set class path (deprecated: use --classpath instead)"
-msgstr ""
-"Sınıf patikası belirtilir (eski kullanım: yerine\n"
-" --classpath kullanın)"
-
-#: java/lang-options.h:44
-msgid "Choose class whose main method should be used"
-msgstr "Sınıf, ana yöntem olarak kullanılır"
-
-#: java/lang-options.h:46
-msgid "Choose input encoding (default comes from locale)"
-msgstr "Girdi kodlaması seçilir (öntanımlı yerelden gelir)"
-
-#: java/lang-options.h:48
-msgid "Add directory to class path"
-msgstr "Sınıf dosya yoluna dizini ekler"
-
-#: java/lang-options.h:50
-msgid "Directory where class files should be written"
-msgstr "Sınıf dosyalarının bulunduğu dizin"
-
-#: java/lang-options.h:52
-msgid "Warn if modifiers are specified when not necessary"
-msgstr "Değiştiriciler gereksizken belirtilmişse uyarır"
-
-#: java/lang-options.h:54
-msgid "Warn if deprecated empty statements are found"
-msgstr "Eski tip boş deyimler bulunduğunda uyarır"
-
-#: java/lang-options.h:56
-msgid "Warn if .class files are out of date"
-msgstr ".class dosyaları güncel değilse uyarır"
-
-#: java/lang-options.h:58
-msgid "Always check for non gcj generated classes archives"
-msgstr ""
-"gcj üretimi olmayan sınıfların arşivleri daima\n"
-" denetlenir"
-
-#: java/lang-options.h:60
-msgid "Never optimize static class initialization code"
-msgstr ""
-"Statik sınıf ilklendirme koduna hiç bir eniyileme\n"
-" uygulanmaz"
-
-#: java/lang-options.h:62
-msgid "Use offset tables for virtual method calls"
-msgstr ""
-"Sanal yöntem çağrıları için adresleme tabloları\n"
-" kullanılır"
-
-#: objc/objc-act.c:651
+#: objc/objc-act.c:689
#, c-format
msgid "object does not conform to the `%s' protocol"
msgstr "nesne `%s'protokolüne uygun değil"
-#: objc/objc-act.c:737 objc/objc-act.c:810
+#: objc/objc-act.c:775 objc/objc-act.c:848
#, c-format
msgid "class `%s' does not implement the `%s' protocol"
msgstr "`%s' sınıfı `%s' protokolünü desteklemiyor"
-#: objc/objc-act.c:914
+#: objc/objc-act.c:951
#, c-format
-msgid "`%s' cannot be statically allocated"
-msgstr "`%s' statik olarak ayrılamıyor"
+msgid "statically allocated instance of Objective-C class `%s'"
+msgstr ""
-#: objc/objc-act.c:963
+#: objc/objc-act.c:998
#, c-format
msgid "unexpected type for `id' (%s)"
msgstr "`id' için umulmadık tür (%s)"
-#: objc/objc-act.c:968
+#: objc/objc-act.c:1003
msgid "undefined type `id', please import <objc/objc.h>"
msgstr "Atanmamış tür `id', lütfen <objc/objc.h> dahil edin"
-#: objc/objc-act.c:1019
+#: objc/objc-act.c:1052
#, c-format
msgid "protocol `%s' has circular dependency"
msgstr "protokol `%s' döngüsel bağımlılık içeriyor"
-#: objc/objc-act.c:1041 objc/objc-act.c:5301
+#: objc/objc-act.c:1074 objc/objc-act.c:5982
#, c-format
msgid "cannot find protocol declaration for `%s'"
msgstr "`%s' için protokol bildirimi bulunamıyor"
-#: objc/objc-act.c:1289 objc/objc-act.c:5877 objc/objc-act.c:6195
-#: objc/objc-act.c:6244 objc/objc-act.c:6280 objc-parse.y:1799
+#: objc/objc-act.c:1408 objc/objc-act.c:2645 objc/objc-act.c:6513
+#: objc/objc-act.c:6822 objc/objc-act.c:6875 objc/objc-act.c:6900
#, c-format
msgid "cannot find interface declaration for `%s'"
msgstr "`%s' için arabirim bildirimi bulunamıyor"
-#: objc/objc-act.c:1328
+#: objc/objc-act.c:1423
+#, fuzzy, c-format
+msgid "interface `%s' does not have valid constant string layout"
+msgstr "`asm' argümanı bir sabit dizge değil"
+
+#: objc/objc-act.c:1439
#, c-format
msgid "cannot find reference tag for class `%s'"
msgstr "sınıf `%s' için referans etiketi bulunamıyor"
-#: objc/objc-act.c:2050
+#: objc/objc-act.c:2179
#, c-format
msgid "creating selector for non existant method %s"
msgstr "omayan yöntem %s için ayraç oluşturuyor"
-#: objc/objc-act.c:2364
+#: objc/objc-act.c:2389
+#, fuzzy, c-format
+msgid "`%s' is not an Objective-C class name or alias"
+msgstr "\"%s\" geçerli bir sınıf ismi değil"
+
+#: objc/objc-act.c:2500 objc/objc-act.c:2518 objc/objc-act.c:6769
+#: objc/objc-act.c:7059 objc/objc-act.c:7088
+msgid "Objective-C declarations may only appear in global scope"
+msgstr ""
+
+#: objc/objc-act.c:2505
#, c-format
msgid "cannot find class `%s'"
msgstr "sınıf `%s' bulunamıyor"
-#: objc/objc-act.c:2366
+#: objc/objc-act.c:2507
#, c-format
msgid "class `%s' already exists"
msgstr "sınıf `%s' zaten var"
+#: objc/objc-act.c:2532 objc/objc-act.c:6791
+#, c-format
+msgid "`%s' redeclared as different kind of symbol"
+msgstr "`%s' farklı bir sembol çeşidi olarak tekrar bildirilmiş"
+
#. fatal did not work with 2 args...should fix
-#: objc/objc-act.c:2473
+#: objc/objc-act.c:2680
#, c-format
msgid "cannot find interface declaration for `%s', superclass of `%s'"
msgstr "`%s' için arabirim bildirimi ve `%s' süper sınıfı bulunamıyor"
-#: objc/objc-act.c:2480
+#: objc/objc-act.c:2687
#, c-format
msgid "circular inheritance in interface declaration for `%s'"
msgstr "`%s' için arabirim bildiriminde döngüsel kalıtım"
-#: objc/objc-act.c:3566 objc/objc-act.c:3583
+#: objc/objc-act.c:2780 objc/objc-act.c:2924 objc/objc-act.c:3024
+#: objc/objc-act.c:3200 objc/objc-act.c:3240
+msgid "Use `-fobjc-exceptions' to enable Objective-C exception syntax"
+msgstr ""
+
+#: objc/objc-act.c:2787
+msgid "`@throw;' (rethrow) used outside of a `@catch' block"
+msgstr ""
+
+#: objc/objc-act.c:3027
+msgid "`@catch' parameter is not a known Objective-C class type"
+msgstr ""
+
+#: objc/objc-act.c:3036
+msgid "Exception already handled by preceding `@catch(id)'"
+msgstr ""
+
+#: objc/objc-act.c:3041
+#, fuzzy, c-format
+msgid "Exception of type `%s *' already handled by `@catch (%s *)'"
+msgstr "`%T' türündeki olağandışılık yakalanmış olacak"
+
+#: objc/objc-act.c:3206
+msgid "`@try' without `@catch' or `@finally'"
+msgstr ""
+
+#: objc/objc-act.c:3647
+msgid "%Jtype '%D' does not have a known size"
+msgstr ""
+
+#: objc/objc-act.c:4256
+#, fuzzy
+msgid "%J%s `%s'"
+msgstr "%s `%s' içinde:"
+
+#: objc/objc-act.c:4281 objc/objc-act.c:4300
msgid "inconsistent instance variable specification"
msgstr "çelişkili gerçekleme değişkeni özelliği"
-#: objc/objc-act.c:4580
+#: objc/objc-act.c:5303
msgid "can not use an object as parameter to a method\n"
msgstr "bir nesne bir yöntemde parametre olarak kullanılamaz\n"
-#: objc/objc-act.c:4780
-#, c-format
-msgid "multiple declarations for method `%s'"
-msgstr "`%s' yöntemi için çok sayıda bildirim"
+#: objc/objc-act.c:5504
+#, fuzzy, c-format
+msgid "multiple %s named `%c%s' found"
+msgstr "`%s' isimli çok sayıda parametre"
-#: objc/objc-act.c:4946
+#: objc/objc-act.c:5721
+#, fuzzy, c-format
+msgid "no super class declared in @interface for `%s'"
+msgstr "Arabirim içinde `%s' için süper sınıf bildirilmemiş"
+
+#: objc/objc-act.c:5809
#, c-format
msgid "invalid receiver type `%s'"
msgstr "alıcı tür `%s' geçersiz"
-#: objc/objc-act.c:4977 objc/objc-act.c:5003 objc/objc-act.c:5051
-#, c-format
-msgid "`%s' does not respond to `%s'"
+#: objc/objc-act.c:5820
+#, fuzzy, c-format
+msgid "`%s' may not respond to `%c%s'"
msgstr "`%s' `%s' i yanıtlamıyor"
-#: objc/objc-act.c:4983 objc/objc-act.c:7318
-#, c-format
-msgid "no super class declared in interface for `%s'"
-msgstr "Arabirim içinde `%s' için süper sınıf bildirilmemiş"
-
-#: objc/objc-act.c:5081
-msgid "cannot find class (factory) method"
-msgstr "sınıf yöntemi bulunamıyor"
-
-#: objc/objc-act.c:5082 objc/objc-act.c:5126
-#, c-format
-msgid "return type for `%s' defaults to id"
-msgstr "`%s' için dönen tür id ye öntanımlı"
-
-#: objc/objc-act.c:5099
-#, c-format
-msgid "method `%s' not implemented by protocol"
+#: objc/objc-act.c:5825
+#, fuzzy, c-format
+msgid "`%c%s' not implemented by protocol(s)"
msgstr "yöntem `%s' protokol tarafından gerçekleştirilmiyor"
-#: objc/objc-act.c:5108
-msgid "return type defaults to id"
-msgstr "dönen tür id ye öntanımlı"
+#: objc/objc-act.c:5830
+msgid "(Messages without a matching method signature"
+msgstr ""
+
+#: objc/objc-act.c:5831
+msgid "will be assumed to return `id' and accept"
+msgstr ""
-#: objc/objc-act.c:5125
-msgid "cannot find method"
-msgstr "yöntem bulunamıyor"
+#: objc/objc-act.c:5832
+#, fuzzy
+msgid "`...' as arguments.)"
+msgstr "argüman yok"
-#: objc/objc-act.c:5399
+#: objc/objc-act.c:6079
#, c-format
msgid "undeclared selector `%s'"
msgstr "bildirilmemiş ayraç `%s'"
@@ -20808,308 +19703,3925 @@ msgstr "bildirilmemiş ayraç `%s'"
#. to an instance variable. It's better to catch the cases
#. where this is done unknowingly than to support the above
#. paradigm.
-#: objc/objc-act.c:5443
+#: objc/objc-act.c:6121
#, c-format
msgid "instance variable `%s' accessed in class method"
msgstr "gerçekleme değişkeni `%s' sınıf yönteminden erişimli"
-#: objc/objc-act.c:5678
-#, c-format
-msgid "duplicate definition of class method `%s'"
-msgstr "sınıf yöntemi `%s' birden fazla atanmış"
-
-#: objc/objc-act.c:5684
-#, c-format
-msgid "duplicate declaration of class method `%s'"
+#: objc/objc-act.c:6327
+#, fuzzy, c-format
+msgid "duplicate declaration of method `%c%s'"
msgstr "sınıf yöntemi `%s' birden fazla bildirilmiş"
-#: objc/objc-act.c:5720
-#, c-format
-msgid "duplicate definition of instance method `%s'"
-msgstr "gerçekleme yöntemi `%s' birden fazla atanmış"
-
-#: objc/objc-act.c:5726
-#, c-format
-msgid "duplicate declaration of instance method `%s'"
-msgstr "gerçekleme yöntemi `%s' birden fazla bildirilmiş"
-
-#: objc/objc-act.c:5766
+#: objc/objc-act.c:6368
#, c-format
msgid "duplicate interface declaration for category `%s(%s)'"
msgstr "`%s(%s)' kategororisi için birden fazla arayüz bildirimi"
-#: objc/objc-act.c:5852
+#: objc/objc-act.c:6398
+#, fuzzy, c-format
+msgid "illegal reference type specified for instance variable `%s'"
+msgstr "static olmayan yerel değişken `%s' için asm-belirteci yoksayılıyor"
+
+#: objc/objc-act.c:6414
+#, fuzzy, c-format
+msgid "instance variable `%s' has unknown size"
+msgstr "gerçekleme değişkeni `%s' %s olarak bildirilmiş"
+
+#. vtable pointers are Real Bad(tm), since Obj-C cannot initialize them
+#: objc/objc-act.c:6428
+#, fuzzy, c-format
+msgid "type `%s' has virtual member functions"
+msgstr " tür `%T' mutlak sanal işlevlere sahip olduğundan"
+
+#: objc/objc-act.c:6429
+#, fuzzy, c-format
+msgid "illegal aggregate type `%s' specified for instance variable `%s'"
+msgstr "static olmayan yerel değişken `%s' için asm-belirteci yoksayılıyor"
+
+#: objc/objc-act.c:6437
+#, fuzzy, c-format
+msgid "type `%s' has a user-defined constructor"
+msgstr "tür `%T' yıkıcıya sahip değil"
+
+#: objc/objc-act.c:6439
+#, fuzzy, c-format
+msgid "type `%s' has a user-defined destructor"
+msgstr "tür `%T' yıkıcıya sahip değil"
+
+#: objc/objc-act.c:6440
+msgid "C++ constructors and destructors will not be invoked for Objective-C fields"
+msgstr ""
+
+#: objc/objc-act.c:6490
#, c-format
msgid "instance variable `%s' is declared private"
msgstr "gerçekleme değişkeni `%s' private olarak bildirilmiş"
-#: objc/objc-act.c:5899
+#: objc/objc-act.c:6539
+#, fuzzy, c-format
+msgid "instance variable `%s' is %s; this will be a hard error in the future"
+msgstr "gerçekleme değişkeni `%s' private olarak bildirilmiş"
+
+#: objc/objc-act.c:6546
#, c-format
msgid "instance variable `%s' is declared %s"
msgstr "gerçekleme değişkeni `%s' %s olarak bildirilmiş"
-#: objc/objc-act.c:5909
+#: objc/objc-act.c:6556
msgid "static access to object of type `id'"
msgstr "`id' türünün nesnesine statik erişim"
-#: objc/objc-act.c:5934 objc/objc-act.c:6027
+#: objc/objc-act.c:6578 objc/objc-act.c:6666
#, c-format
msgid "incomplete implementation of class `%s'"
msgstr "`%s' sınıfının içi boş"
-#: objc/objc-act.c:5938 objc/objc-act.c:6032
+#: objc/objc-act.c:6582 objc/objc-act.c:6671
#, c-format
msgid "incomplete implementation of category `%s'"
msgstr "`%s' kategorisinin içi boş"
-#: objc/objc-act.c:5943 objc/objc-act.c:6037
+#: objc/objc-act.c:6587 objc/objc-act.c:6676
#, c-format
msgid "method definition for `%c%s' not found"
msgstr "`%c%s' için yöntem tanımı yok"
-#: objc/objc-act.c:6081
+#: objc/objc-act.c:6717
#, c-format
msgid "%s `%s' does not fully implement the `%s' protocol"
msgstr "%s `%s' `%s'protokolünü tamamen gerçekleştirmiyor"
-#: objc/objc-act.c:6139 objc/objc-act.c:8249
+#: objc/objc-act.c:6775 objc/objc-act.c:8803
msgid "`@end' missing in implementation context"
msgstr "oluşum bağlamında `@end' eksik"
-#: objc/objc-act.c:6167
+#: objc/objc-act.c:6805
#, c-format
msgid "reimplementation of class `%s'"
msgstr "`%s' sınıfının yeniden oluşumu"
-#: objc/objc-act.c:6209
+#: objc/objc-act.c:6836
#, c-format
msgid "conflicting super class name `%s'"
msgstr "süper sınıf ismi `%s' çelişiyor"
-#: objc/objc-act.c:6224
+#: objc/objc-act.c:6838
+#, c-format
+msgid "previous declaration of `%s'"
+msgstr "`%s'in önceki bildirimi"
+
+#: objc/objc-act.c:6852 objc/objc-act.c:6854
#, c-format
msgid "duplicate interface declaration for class `%s'"
msgstr "`%s' sınıfı için birden fazla arabirim bildirimi"
-#: objc/objc-act.c:6506
+#: objc/objc-act.c:7121
#, c-format
msgid "duplicate declaration for protocol `%s'"
msgstr "protokol `%s' için birden fazla bildirim"
-#: objc/objc-act.c:7363
-msgid "[super ...] must appear in a method context"
-msgstr "[super ...] bir yöntem bağlamında görünmeli"
+#. Add a readable method name to the warning.
+#: objc/objc-act.c:7613
+#, fuzzy
+msgid "%J%s `%c%s'"
+msgstr "%s `%s' içinde:"
-#: objc/objc-act.c:8354 objc/objc-act.c:8370
+#: objc/objc-act.c:7908
#, c-format
-msgid "potential selector conflict for method `%s'"
-msgstr "yöntem `%s' için olası seçici çelişiyor"
+msgid "no super class declared in interface for `%s'"
+msgstr "Arabirim içinde `%s' için süper sınıf bildirilmemiş"
-#: objc-parse.y:2655
+#: objc/objc-act.c:7956
+msgid "[super ...] must appear in a method context"
+msgstr "[super ...] bir yöntem bağlamında görünmeli"
+
+#: objc/objc-parse.y:2700
msgid "`@end' must appear in an implementation context"
msgstr "`@end' bir oluşum bağlamında görünmeli"
-#: objc-parse.y:2931
+#: objc/objc-parse.y:2913
msgid "method definition not in class context"
msgstr "yöntem tanımı sınıf bağlamında değil"
-#: objc/lang-options.h:27
-msgid "Dump decls to a .decl file"
-msgstr "Bildirimler .decl dosyasına dökümlenir"
+#: options.c:24
+#, fuzzy
+msgid "Display this information"
+msgstr " --help Bu yardım iletisi gösterilir\n"
+
+#: options.c:30
+msgid "--param <param>=<value>\tSet paramter <param> to value. See below for a complete list of parameters"
+msgstr ""
+
+#: options.c:39
+msgid "-A<question>=<answer>\tAssert the <answer> to <question>. Putting '-' before <question> disables the <answer> to <question>"
+msgstr ""
+
+#: options.c:42
+#, fuzzy
+msgid "Do not discard comments"
+msgstr "space yazmaçları kapatılmaz"
+
+#: options.c:45
+msgid "Do not discard comments in macro expansions"
+msgstr ""
+
+#: options.c:48
+msgid "-D<macro>[=<val>]\tDefine a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1"
+msgstr ""
+
+#: options.c:54
+#, fuzzy
+msgid "-G<number>\tPut global and static data smaller than <number> bytes into a special section (on some targets)"
+msgstr ""
+" -G SAYI Global ve static verileri SAYI bayttan daha\n"
+" küçükse (bazı hedeflerdeki) bir özel bölüme koyar\n"
+
+#: options.c:57
+#, fuzzy
+msgid "Print the name of header files as they are used"
+msgstr ""
+"Program birimlerinin isimleri derlenmiÅŸ olarak\n"
+" gösterilir"
+
+#: options.c:66
+#, fuzzy
+msgid "Generate make dependencies and compile"
+msgstr "Küçük ilkli kod üretilir"
+
+#: options.c:75
+msgid "Treat missing header files as generated files"
+msgstr ""
+
+#: options.c:81
+msgid "Like -MD but ignore system header files"
+msgstr ""
+
+#: options.c:90
+msgid "-MQ <target>\tAdd a MAKE-quoted target"
+msgstr ""
+
+#: options.c:96
+#, fuzzy
+msgid "-O<number>\tSet optimization level to <number>"
+msgstr " -O[SAYI] Eniyileme seviyesi SAYI olarak ayarlanır\n"
+
+#: options.c:99
+#, fuzzy
+msgid "Optimize for space rather than speed"
+msgstr " -Os Hızdan çok boyut eniyilemesi yapılır\n"
+
+#: options.c:102
+#, fuzzy
+msgid "Do not generate #line directives"
+msgstr ".size yönergeleri üretilmez"
+
+#: options.c:105
+msgid "-U<macro>\tUndefine <macro>"
+msgstr ""
+
+#: options.c:108
+#, fuzzy
+msgid "This switch is deprecated; use -Wextra instead"
+msgstr ""
+"Sınıf patikası belirtilir (eski kullanım: yerine\n"
+" --classpath kullanın)"
+
+#: options.c:114
+msgid "Warn about returning structures, unions or arrays"
+msgstr "Dönen yapı, birleşim ve diziler hakkında uyarır"
+
+#: options.c:120
+msgid "Warn about casting functions to incompatible types"
+msgstr "İşlevlerin uyumsuz türlere dönüştürülmesi durumunda uyarır"
+
+#: options.c:123
+msgid "Warn about pointer casts which increase alignment"
+msgstr "Hizalamayı arttıran gösterici tür dönüşümlerinde uyarır"
+
+#: options.c:126
+msgid "Warn about casts which discard qualifiers"
+msgstr "Niteleyicileri iptal eden tür dönüşümleri hakkında uyarır"
+
+#: options.c:129
+#, fuzzy
+msgid "Warn about subscripts whose type is \"char\""
+msgstr "Türü 'char' olan dizi indisleri hakkında uyarır"
+
+#: options.c:138
+msgid "Warn about possibly confusing type conversions"
+msgstr "Tür dönüşümlerinin olası karışıklığı hakkında uyarır"
+
+#: options.c:141
+#, fuzzy
+msgid "Warn when all constructors and destructors are private"
+msgstr "Tüm kurucu/yıkıcı işlevler private olduğunda uyarmaz"
+
+#: options.c:144
+#, fuzzy
+msgid "Warn when a declaration is found after a statement"
+msgstr "Bir bildirimde tür belirtilmemişse uyarır"
+
+#: options.c:147
+#, fuzzy
+msgid "Warn if deprecated class, method, or field is used"
+msgstr "Eski tip boş deyimler bulunduğunda uyarır"
+
+#: options.c:150
+msgid "Warn about uses of __attribute__((deprecated)) declarations"
+msgstr "__attribute__((eskidi)) bildirimlerinde uyarı verir"
+
+#: options.c:153
+msgid "Warn when an optimization pass is disabled"
+msgstr "Bir eniyileme aşaması iptal edildiğinde uyarır"
+
+#: options.c:156
+#, fuzzy
+msgid "Warn about compile-time integer division by zero"
+msgstr "Derleme anı sıfırla tamsayı bölme taşması için uyarmaz"
+
+#: options.c:159
+msgid "Warn about violations of Effective C++ style rules"
+msgstr "Effective C++ tarzı kuralların çelişkilerinde uyarmaz"
+
+#: options.c:162
+msgid "Warn about stray tokens after #elif and #endif"
+msgstr ""
+
+#: options.c:165
+msgid "Treat all warnings as errors"
+msgstr "Tüm uyarıların hata olduğu varsayılır"
+
+#: options.c:168
+#, fuzzy
+msgid "Make implicit function declarations an error"
+msgstr "İşlevlerin dolaylı bildirimlerinde uyarır"
+
+#: options.c:171
+msgid "Print extra (possibly unwanted) warnings"
+msgstr ""
+
+#: options.c:174
+msgid "Warn if deprecated empty statements are found"
+msgstr "Eski tip boş deyimler bulunduğunda uyarır"
+
+#: options.c:177
+#, fuzzy
+msgid "Warn if testing floating point numbers for equality"
+msgstr "Gerçek sayıların eşitlik testleri hakkında uyarır"
+
+#: options.c:180
+#, fuzzy
+msgid "Warn about printf/scanf/strftime/strfmon format string anomalies"
+msgstr ""
+"printf/scanf/strftime/strfmon biçim\n"
+" bozuklukları hakkında uyarmaz"
+
+#: options.c:183
+#, fuzzy
+msgid "Warn if passing too many arguments to a function for its format string"
+msgstr "bu biçem dizgesi için çok fazla argüman belirtildi"
+
+#: options.c:186
+#, fuzzy
+msgid "Warn about format strings that are not literals"
+msgstr "Çoklu karakter sabitlerinin kullanımı hakkında uyarır"
+
+#: options.c:189
+msgid "Warn about possible security problems with format functions"
+msgstr ""
+"biçimleme işlevleriyle ilgili olası güvenlik\n"
+" sorunları hakkında uyarır"
+
+#: options.c:192
+#, fuzzy
+msgid "Warn about strftime formats yielding 2-digit years"
+msgstr ""
+"2 haneli yıllara yer veren strftime biçimler\n"
+" hakkında uyarır"
+
+#: options.c:201
+#, fuzzy
+msgid "Enable warnings about inter-procedural problems"
+msgstr "Yordamlar arası sorunlar hakkındaki uyarılar verilmez"
+
+#: options.c:207
+msgid "Warn about implicit function declarations"
+msgstr "İşlevlerin dolaylı bildirimlerinde uyarır"
+
+#: options.c:210
+msgid "Warn when a declaration does not specify a type"
+msgstr "Bir bildirimde tür belirtilmemişse uyarır"
+
+#: options.c:216
+msgid "Warn about variables which are initialized to themselves."
+msgstr ""
+
+#: options.c:219
+msgid "Warn when an inlined function cannot be inlined"
+msgstr "Bir özümlemeli işlev özümlenemediğinde uyarır"
+
+#: options.c:222
+#, fuzzy
+msgid "Warn about invalid uses of the \"offsetof\" macro"
+msgstr "#import yönergesinin kullanımı hakkında uyarır"
+
+#: options.c:225
+msgid "Warn about PCH files that are found but not used"
+msgstr ""
+
+#: options.c:228
+#, fuzzy
+msgid "-Wlarger-than-<number>\tWarn if an object is larger than <number> bytes"
+msgstr " -Wlarger-than-SAYI Bir nesne SAYI bayttan büyükse uyarır\n"
+
+#: options.c:231
+#, fuzzy
+msgid "Do not warn about using \"long long\" when -pedantic"
+msgstr "-pedantic ile 'long long' kullanımı hakkında uyarmaz"
+
+#: options.c:234
+#, fuzzy
+msgid "Warn about suspicious declarations of \"main\""
+msgstr "Kuşkulu main bildirimleri hakkında uyarır"
+
+#: options.c:237
+msgid "Warn about possibly missing braces around initializers"
+msgstr "İlklendiricileri çevreleyen parantezler yoksa uyarır"
+
+#: options.c:240
+#, fuzzy
+msgid "Warn about global functions without previous declarations"
+msgstr "Önceden bildirilmemiş genel işlevler hakkında uyarır"
+
+#: options.c:243
+msgid "Warn about functions which might be candidates for format attributes"
+msgstr ""
+"biçim öznitelikleri için aday olabilecek işlevler\n"
+" hakkında uyarır"
+
+#: options.c:246
+#, fuzzy
+msgid "Warn about functions which might be candidates for __attribute__((noreturn))"
+msgstr ""
+"noreturn özelliğine aday olabilecek işlevler\n"
+" hakkında uyarı verilir"
+
+#: options.c:249
+#, fuzzy
+msgid "Warn about global functions without prototypes"
+msgstr "Prototipsiz genel işlevler hakkında uyarır"
+
+#: options.c:252
+#, fuzzy
+msgid "Warn about use of multi-character character constants"
+msgstr "Çoklu karakter sabitlerinin kullanımı hakkında uyarır"
+
+#: options.c:255
+#, fuzzy
+msgid "Warn about \"extern\" declarations not at file scope"
+msgstr ""
+"Dosya şemsiyesi altında bulunmayan extern'ler\n"
+" hakkında uyarır"
+
+#: options.c:258
+#, fuzzy
+msgid "Warn when non-templatized friend functions are declared within a template"
+msgstr ""
+"Şablonlanmış olmayan kardeş işlevler bir şablonla\n"
+" bildirildiğinde uyarır"
+
+#: options.c:261
+#, fuzzy
+msgid "Warn about non-virtual destructors"
+msgstr "Sanal olmayan yıkıcılar hakkında uyarır"
+
+#: options.c:267
+#, fuzzy
+msgid "Warn if a C-style cast is used in a program"
+msgstr "Bir yazılımda C tarzı tür dönüşümü kullanılmışsa uyarır"
+
+#: options.c:270
+#, fuzzy
+msgid "Warn if an old-style parameter definition is used"
+msgstr "Bir işlev parametresi kullanılmamışsa uyarır"
+
+#: options.c:273
+msgid "Warn if .class files are out of date"
+msgstr ".class dosyaları güncel değilse uyarır"
+
+#: options.c:276
+msgid "Warn about overloaded virtual function names"
+msgstr "Aşırı yüklü sanal işlev isimleri hakkında uyarır"
+
+#: options.c:279
+msgid "Warn when the packed attribute has no effect on struct layout"
+msgstr "Paketli öznitelik yapı yerleşiminde etkisizse uyarır"
+
+#: options.c:282
+#, fuzzy
+msgid "Warn when padding is required to align structure members"
+msgstr ""
+"Yapı üyelerini hizalamak için adımlama gerekliyse\n"
+" uyarır"
+
+#: options.c:285
+#, fuzzy
+msgid "Warn about possibly missing parentheses"
+msgstr "Olası eksik parantezler hakkında uyarır"
+
+#: options.c:288
+#, fuzzy
+msgid "Warn when converting the type of pointers to member functions"
+msgstr "Üye işlev göstericilerinn tür dönüşümlerinde uyarmaz"
+
+#: options.c:291
+msgid "Warn about function pointer arithmetic"
+msgstr "İşlev gösterici aritmetiği hakkında uyarır"
+
+#: options.c:294
+#, fuzzy
+msgid "Warn if inherited methods are unimplemented"
+msgstr "Kalıt yöntemler oluşturulmamışsa uyarır"
+
+#: options.c:297
+msgid "Warn about multiple declarations of the same object"
+msgstr "Aynı nesne birden fazla bildirilmişse uyarır"
+
+#: options.c:300
+msgid "Warn if modifiers are specified when not necessary"
+msgstr "Değiştiriciler gereksizken belirtilmişse uyarır"
+
+#: options.c:303
+msgid "Warn when the compiler reorders code"
+msgstr "Derleyici kodu yeniden sıralarken uyarır"
+
+#: options.c:306
+#, fuzzy
+msgid "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)"
+msgstr "bir işlevin dönen türü `int'e öntanımlılığında uyarır"
+
+#: options.c:309
+msgid "Warn if a selector has multiple methods"
+msgstr "Bir seçici çoklu yöntemlere sahipse uyarır"
+
+#: options.c:312
+msgid "Warn about possible violations of sequence point rules"
+msgstr ""
+"Ardışık nokta kurallarının olası çelişkileri\n"
+" hakkında uyarır"
+
+#: options.c:315
+msgid "Warn when one local variable shadows another"
+msgstr "Bir yerel değişken bir diğerini gölgeliyorsa uyarır"
+
+#: options.c:318
+#, fuzzy
+msgid "Warn about signed-unsigned comparisons"
+msgstr "signed/unsigned karşılaştırmalarında uyarır"
+
+#: options.c:321
+msgid "Warn when overload promotes from unsigned to signed"
+msgstr ""
+"unsigned'dan signed'a yükseltmelerin aşırı\n"
+" yüklemesinde uyarır"
+
+#: options.c:324
+#, fuzzy
+msgid "Warn about code which might break strict aliasing rules"
+msgstr ""
+"Adlandırma kurallarının değişmezliğini bozabilen\n"
+" kod varsa uyarır"
+
+#: options.c:327
+#, fuzzy
+msgid "Warn about unprototyped function declarations"
+msgstr "Prototipsiz işlev bildirimlerinde uyarır"
+
+#: options.c:330
+msgid "Warn about constructs with surprising meanings"
+msgstr "Yapılar hakkında sürpriz niteliğinde uyarı verilir"
+
+#: options.c:333
+msgid "Warn about enumerated switches, with no default, missing a case"
+msgstr ""
+"Numaralı switch'lerde case eksikse veya\n"
+" default yoksa uyarır"
+
+#: options.c:336
+#, fuzzy
+msgid "Warn about enumerated switches missing a \"default:\" statement"
+msgstr "Numaralı switch'lerde default yoksa uyarır"
+
+#: options.c:339
+msgid "Warn about all enumerated switches missing a specific case"
+msgstr "Numaralı switch'lerde belli bir case eksikse uyarır"
+
+#: options.c:342
+msgid "Warn when synthesis behavior differs from Cfront"
+msgstr "Sentezleme davranışı Cfront'dan farklıysa uyarır"
+
+#: options.c:345
+msgid "Do not suppress warnings from system headers"
+msgstr "Sistem başlık dosyalarından gelen uyarılar engellenmez"
+
+#: options.c:348
+#, fuzzy
+msgid "Warn about features not present in traditional C"
+msgstr "geleneksel C'de #elif kullanılmıyor varsayılır"
+
+#: options.c:357
+#, fuzzy
+msgid "Warn if an undefined macro is used in an #if directive"
+msgstr "atanmamış ya da geçersiz # yönergesi"
+
+#: options.c:360
+msgid "Warn about uninitialized automatic variables"
+msgstr "İlklendirilmemiş otomatik değişkenler hakkında uyarır"
+
+#: options.c:363
+msgid "Warn about unrecognized pragmas"
+msgstr "tanımlanamayan #pragma'lar hakkında uyarır"
+
+#: options.c:366
+msgid "Warn about code that will never be executed"
+msgstr "Hiç çalışmayacak kod hakkında uyarır"
+
+#: options.c:369
+msgid "Enable all -Wunused- warnings"
+msgstr ""
+
+#: options.c:372
+msgid "Warn when a function is unused"
+msgstr "Bir işlev kullanılmamışsa uyarır"
+
+#: options.c:375
+msgid "Warn when a label is unused"
+msgstr "Bir etiket kullanılmamışsa uyarır"
+
+#: options.c:378
+msgid "Warn about macros defined in the main file that are not used"
+msgstr ""
+
+#: options.c:381
+msgid "Warn when a function parameter is unused"
+msgstr "Bir işlev parametresi kullanılmamışsa uyarır"
+
+#: options.c:384
+msgid "Warn when an expression value is unused"
+msgstr "Bir ifade değeri kullanılmamışsa uyarır"
+
+#: options.c:387
+msgid "Warn when a variable is unused"
+msgstr "Bir değişken kullanılmamışsa uyarır"
+
+#: options.c:390
+#, fuzzy
+msgid "Give strings the type \"array of char\""
+msgstr "dizgeler karakterlerin birleşimi olmalı"
+
+#: options.c:393
+msgid "A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead"
+msgstr ""
+
+#: options.c:396
+#, fuzzy
+msgid "-aux-info <file>\tEmit declaration information into <file>"
+msgstr " -aux-info DOSYA Bildirim bilgileri DOSYAda gösterilir\n"
+
+#: options.c:408
+#, fuzzy
+msgid "-d<letters>\tEnable dumps from specific passes of the compiler"
+msgstr " -d[HARFLER] Derleyici aşamalarının dökümlenmesi etkinleştirilir\n"
+
+#: options.c:411
+#, fuzzy
+msgid "-dumpbase <file>\tSet the file basename to be used for dumps"
+msgstr " -dumpbase DOSYA Derleyici aşamalarının dökümleneceği DOSYA\n"
+
+#: options.c:414
+#, fuzzy
+msgid "--CLASSPATH\tDeprecated; use --classpath instead"
+msgstr ""
+"Sınıf patikası belirtilir (eski kullanım: yerine\n"
+" --classpath kullanın)"
+
+#: options.c:429
+#, fuzzy
+msgid "Enforce class member access control semantics"
+msgstr "Erişim denetimi kurallarına uyulmaz"
+
+#: options.c:432
+msgid "Align the start of functions"
+msgstr "İşlevlerin başlangıcı hizalanır"
+
+#: options.c:438
+msgid "Align labels which are only reached by jumping"
+msgstr ""
+"Sadece atlanarak ulaşılabilen hedefler bayt\n"
+" sınırlarına ayarlanır"
+
+#: options.c:444
+msgid "Align all labels"
+msgstr "Tüm dallanma hedefleri bayt sınırlarına ayarlanır"
+
+#: options.c:450
+msgid "Align the start of loops"
+msgstr "Döngü başlangıçları bayt sınırlarına ayarlanır"
+
+#: options.c:459
+msgid "Change when template instances are emitted"
+msgstr "Şablon gerçeklemeleri yayınlandığında değiştirilir"
+
+#: options.c:462
+#, fuzzy
+msgid "Specify that arguments may alias each other and globals"
+msgstr ""
+"Argümanların bir diğerinin ya da globallerin takma\n"
+" adı olabileceği varsayılır"
+
+#: options.c:465
+msgid "Assume arguments may alias globals but not each other"
+msgstr ""
+"Argümanların globallerden başkasına takma ad\n"
+" olamayacağı varsayılır"
+
+#: options.c:468
+#, fuzzy
+msgid "Assume arguments alias neither each other nor globals"
+msgstr ""
+"Argümanların bir diğerine ya da globallere takma ad\n"
+" olmadığı varsayılır"
+
+#: options.c:471
+#, fuzzy
+msgid "Recognize the \"asm\" keyword"
+msgstr "'asm' anahtar sözcüğü tanınmaz"
+
+#: options.c:483
+#, fuzzy
+msgid "Generate unwind tables that are exact at each instruction boundary"
+msgstr ""
+"Her komut sınırında birbirlerini etkilemeyenlerin\n"
+" tablosu kesin oluÅŸturulur"
+
+#: options.c:486
+#, fuzzy
+msgid "Do not treat local variables and COMMON blocks as if they were named in SAVE statements"
+msgstr ""
+"Yerel değişkenler ve COMMON blokları SAVE\n"
+" deyimlerinde adlandırılmış olarak değerlendirilir."
+
+#: options.c:489
+#, fuzzy
+msgid "Backslashes in character and hollerith constants are special (not C-style)"
+msgstr ""
+"Tersbölüler ve karakter/hollerith sabitler özel\n"
+" değildir (C-tarzı)"
+
+#: options.c:492
+msgid "Delete libU77 intrinsics with bad interfaces"
+msgstr "Hatalı arabirimli libU77 yerleşikleri silinir"
+
+#: options.c:495
+msgid "Disable libU77 intrinsics with bad interfaces"
+msgstr "Hatalı arabirimli libU77 yerleşikleri iptal edilir"
+
+#: options.c:498
+#, fuzzy
+msgid "Enable libU77 intrinsics with bad interfaces"
+msgstr "Hatalı arabirimli libU77 yerleşikleri iptal edilir"
+
+#: options.c:501
+msgid "Hide libU77 intrinsics with bad interfaces"
+msgstr "Hatalı arabirimli libU77 yerleşikleri gizlenir"
+
+#: options.c:504
+#, fuzzy
+msgid "--bootclasspath=<path>\tReplace system path"
+msgstr "Sistem dosya yolu ile deÄŸiÅŸtirilir"
+
+#: options.c:507
+msgid "Generate code to check bounds before indexing arrays"
+msgstr ""
+"Diziler indislenmeden önce sınrlarını\n"
+" denetleyecek kod üretilir"
+
+#: options.c:510
+#, fuzzy
+msgid "Replace add, compare, branch with branch on count register"
+msgstr ""
+"Ekleme, karşılaştırma, dallanma sayaç üzerinden\n"
+" dallanma ile deÄŸiÅŸtirilir"
+
+#: options.c:513
+msgid "Use profiling information for branch probabilities"
+msgstr ""
+"Dallanma olasılıkları için ayrımlama bilgileri\n"
+" kullanılır"
+
+#: options.c:516
+msgid "Perform branch target load optimization before prologue / epilogue threading"
+msgstr ""
+
+#: options.c:519
+msgid "Perform branch target load optimization after prologue / epilogue threading"
+msgstr ""
+
+#: options.c:522
+#, fuzzy
+msgid "Recognize built-in functions"
+msgstr "Yerleşik işlevlerin hiçbiri tanınmaz"
+
+#: options.c:528
+#, fuzzy
+msgid "-fcall-saved-<register>\tMark <register> as being preserved across functions"
+msgstr " -fcall-saved-YAZMAÇ YAZMAÇ işlevlere karşı korunmuş olan olarak imlenir\n"
+
+#: options.c:531
+#, fuzzy
+msgid "-fcall-used-<register>\tMark <register> as being corrupted by function calls"
+msgstr ""
+" -fcall-used-YAZMAÇ YAZMAÇ işlev çağrıları tarafından bozulmuş olan\n"
+" olarak imlenir\n"
+
+#: options.c:534
+#, fuzzy
+msgid "Save registers around function calls"
+msgstr ""
+"İşlev çağrıları civarındaki yazmaçların kaydını\n"
+" etkinleÅŸtirir"
+
+#: options.c:537
+msgid "Program written in strict mixed-case"
+msgstr "Program BüyükKüçük harflerle yazılmıştır"
+
+#: options.c:540
+msgid "Compile as if program written in lowercase"
+msgstr "Program küçük harflerle yazılmış olarak derlenir"
+
+#: options.c:543
+#, fuzzy
+msgid "Preserve case used in program"
+msgstr "Program derlenirken harf büyüklüklerine dokunulmaz"
+
+#: options.c:546
+msgid "Program written in lowercase"
+msgstr "Program küçük harflerle yazılmıştır"
+
+#: options.c:549
+msgid "Program written in uppercase"
+msgstr "Program büyük harflerle yazılmıştır"
+
+#: options.c:552
+msgid "Compile as if program written in uppercase"
+msgstr "Program büyük harflerle yazılmış olarak derlenir"
+
+#: options.c:555
+msgid "Check the return value of new"
+msgstr "new işlemiminin dönen değeri denetlenir"
+
+#: options.c:561
+msgid "--classpath=<path>\tSet class path"
+msgstr ""
+
+#: options.c:564
+msgid "Do not put uninitialized globals in the common section"
+msgstr "İlklendirilmemiş global'ler ortak bölüme konmaz"
+
+#: options.c:570
+#, fuzzy
+msgid "Allow the arguments of the '?' operator to have different types"
+msgstr "?: için işlemimleri farklı türde"
+
+#: options.c:573
+#, fuzzy
+msgid "Reduce the size of object files"
+msgstr "Nesne dosyalarını küçültür"
+
+#: options.c:576
+#, fuzzy
+msgid "Make string literals \"const char[]\" not \"char[]\""
+msgstr "Dizge sabitler `const char[]' değil `char[]' yapılır"
-#: objc/lang-options.h:29
+#: options.c:579
+msgid "-fconst-string-class=<name>\tUse class <name> for constant strings"
+msgstr ""
+
+#: options.c:582
+#, fuzzy
+msgid "Perform a register copy-propagation optimization pass"
+msgstr "Yazmaç kopya-girişim eniyileme aşaması uygulanır"
+
+#: options.c:585
+msgid "Perform cross-jumping optimization"
+msgstr "Çapraz atlama eniyilemesi uygulanır"
+
+#: options.c:588
+msgid "When running CSE, follow jumps to their targets"
+msgstr ""
+"Ortak alt ifade elemesi sırasında onların\n"
+" hedeflerine dallanmalar izlenir"
+
+#: options.c:591
+msgid "When running CSE, follow conditional jumps"
+msgstr ""
+"Ortak alt ifade elemesi sırasında koşullu\n"
+" dallanmalar izlenir"
+
+#: options.c:594
+#, fuzzy
+msgid "Place data items into their own section"
+msgstr "Veri öğelerini kendi bölümlerine yerleştirir"
+
+#: options.c:597
+msgid "Emit special debugging information for COMMON and EQUIVALENCE (disabled)"
+msgstr ""
+"COMMON ve EQUIVALENCE için özel hata ayıklama\n"
+" bilgileri yayınlanır (iptal edildi)"
+
+#: options.c:600
+#, fuzzy
+msgid "Inline member functions by default"
+msgstr "Öntanımlı olarak üye işlevler özümlenmez"
+
+#: options.c:603
+msgid "Defer popping functions args from stack until later"
+msgstr "Yığından işlev argümanlarının çekilmesini erteler"
+
+#: options.c:606
+msgid "Attempt to fill delay slots of branch instructions"
+msgstr ""
+"Dallanma komutlarının gecikme yuvalarını doldurmaya\n"
+" çalışır"
+
+#: options.c:609
+msgid "Delete useless null pointer checks"
+msgstr "Kullanışsız boş gösterici denetimlerini siler"
+
+#: options.c:612
+#, fuzzy
+msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics"
+msgstr ""
+" -fdiagnostics-show-location=[once | every-line]\n"
+" Satır sarmalaması sırasında, önek olarak, kaynak\n"
+" konumu bilgisinin ne sıklıkta gösterileceği\n"
+" belirtilir. once: bir kere, every-line: her satırda\n"
+
+#: options.c:615
+#, fuzzy
+msgid "Allow '$' in symbol names"
+msgstr "Sembol isimlerinde $ kullanımına izin verilir"
+
+#: options.c:618
+#, fuzzy
+msgid "Permit '$' as an identifier character"
+msgstr "biçim bir geniş karakter dizgesi"
+
+#: options.c:624
+msgid "Suppress output of instruction numbers and line number notes in debugging dumps"
+msgstr ""
+"Hata ayıklama dökümlerinde satır numarası ve komut\n"
+" numarası bilgilerinın çıktılanması engellenir"
+
+#: options.c:630
+msgid "Perform DWARF2 duplicate elimination"
+msgstr "DWARF2 yinelenmiş elemesi uygulanır"
+
+#: options.c:633 options.c:636
+msgid "Perform unused type elimination in debug info"
+msgstr ""
+
+#: options.c:645
+msgid "Have front end emulate COMPLEX arithmetic to avoid bugs"
+msgstr ""
+"Hatalara sebep olmamak için COMPLEX aritmetiği\n"
+" emüle edilir"
+
+#: options.c:648
+#, fuzzy
+msgid "--encoding=<encoding>\tChoose input encoding (defaults from your locale)"
+msgstr "Girdi kodlaması seçilir (öntanımlı yerelden gelir)"
+
+#: options.c:651
+#, fuzzy
+msgid "Generate code to check exception specifications"
+msgstr ""
+"Olağandışılık özelliklerini denetleyecek kod\n"
+" üretilmez"
+
+#: options.c:657
+msgid "Enable exception handling"
+msgstr "Olağandışılıkların yakalanması etkinleştirilir"
+
+#: options.c:660
+msgid "-fexec-charset=<cset>\tConvert all strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:663
+msgid "Perform a number of minor, expensive optimizations"
+msgstr "Masraflı eniyilemelerden birkaçını uygular"
+
+#: options.c:672
+#, fuzzy
+msgid "f2c-compatible code can be generated"
+msgstr "f2c uyumlu kod, üretilmemeyi gerektirir"
+
+#: options.c:675
+msgid "Delete non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin f2c destekleri\n"
+" silinir"
+
+#: options.c:678
+msgid "Disable non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin f2c destekleri\n"
+" iptal edilir"
+
+#: options.c:681
+#, fuzzy
+msgid "Enable non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin f2c destekleri\n"
+" iptal edilir"
+
+#: options.c:684
+msgid "Hide non-FORTRAN-77 intrinsics f2c supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin f2c destekleri\n"
+" gizlenir"
+
+#: options.c:687
+#, fuzzy
+msgid "Unsupported; generate libf2c-calling code"
+msgstr "Desteklenmiyor; libf2c çağrı kodu üretilmez"
+
+#: options.c:690
+msgid "Program is written in typical FORTRAN 66 dialect"
+msgstr "Program tipik FORTRAN 66 dilinde yazılmıştır"
+
+#: options.c:693
+#, fuzzy
+msgid "Program is written in typical Unix-f77 dialect"
+msgstr "Program tipik Unix f77 dilinde yazılmıştır"
+
+#: options.c:696
+msgid "Program is written in Fortran-90-ish dialect"
+msgstr "Program tipik Fortran-90 dilinde yazılmıştır"
+
+#: options.c:699
+msgid "Delete non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin F90 destekleri\n"
+" silinir"
+
+#: options.c:702
+msgid "Disable non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin F90 destekleri\n"
+" iptal edilir"
+
+#: options.c:705
+#, fuzzy
+msgid "Enable non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin F90 destekleri\n"
+" iptal edilir"
+
+#: options.c:708
+msgid "Hide non-FORTRAN-77 intrinsics F90 supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin F90 destekleri\n"
+" gizlenir"
+
+#: options.c:720
+#, fuzzy
+msgid "Assume no NaNs or infinities are generated"
+msgstr "NaNların ya da +-Inflerin üretilmediği varsayılır"
+
+#: options.c:723
+#, fuzzy
+msgid "-ffixed-<register>\tMark <register> as being unavailable to the compiler"
+msgstr " -ffixed-YAZMAÇ Derleyiciye YAZMAÇ kullanışsız olarak belirtilir\n"
+
+#: options.c:729
+#, fuzzy
+msgid "ffixed-line-length-<number>\tSet the maximum line length to <number>"
+msgstr " -finline-limit=SAYI Özümlenen işlevlerin uzunluğu SAYI ile sınırlanır\n"
+
+#: options.c:732
+#, fuzzy
+msgid "Unsupported; affects code generation of arrays"
+msgstr "Desteklenmiyor; dizilerin kod üretimi etkilenir"
+
+#: options.c:735
+msgid "Do not store floats in registers"
+msgstr "Gerçel sayılar yazmaçlarda saklanmaz"
+
+#: options.c:738
+#, fuzzy
+msgid "Scope of for-init-statement variables is local to the loop"
+msgstr ""
+"For döngüsü başlatma satırındaki değişkenlerin\n"
+" etki alanını dışarıya genişletir"
+
+#: options.c:741
+#, fuzzy
+msgid "Copy memory address constants into registers before use"
+msgstr ""
+"Kullanmadan önce bellek adres sabitlerini\n"
+" yazmaçlara kopyalar"
+
+#: options.c:744
+msgid "Always check for non gcj generated classes archives"
+msgstr ""
+"gcj üretimi olmayan sınıfların arşivleri daima\n"
+" denetlenir"
+
+#: options.c:747
+#, fuzzy
+msgid "Copy memory operands into registers before use"
+msgstr ""
+"Kullanmadan önce bellek işlemimlerini yazmaçlara\n"
+" kopyalar"
+
+#: options.c:750
+msgid "Generate code to check subscript and substring bounds"
+msgstr "Dizi indislerini denetleyecek kod üretilir"
+
+#: options.c:753
+msgid "Program is written in Fortran-90-ish free form"
+msgstr "Program Fortran-90'ca serbest biçimde yazılmış"
+
+#: options.c:756
+#, fuzzy
+msgid "Do not assume that standard C libraries and \"main\" exist"
+msgstr ""
+"Standart kitaplıkların ve main işlevinin olmadığı\n"
+" varsayılır"
+
+#: options.c:759
+msgid "Allow function addresses to be held in registers"
+msgstr "Yazmaçlarda tutulan işlev adreslerine izin verilir"
+
+#: options.c:762
+#, fuzzy
+msgid "Place each function into its own section"
+msgstr "Her işlev kendi bölümüne yerleştirilir"
+
+#: options.c:765
+#, fuzzy
+msgid "Perform global common subexpression elimination"
+msgstr "Genel ortak alt ifade elemesi uygulanır"
+
+#: options.c:768
+#, fuzzy
+msgid "Perform redundant load after store elimination in global common subexpression elimination"
+msgstr ""
+"Genel alt ifade elemesi sırasında genişletilmiş yük\n"
+" hareketi uygulanır"
+
+#: options.c:771
+#, fuzzy
+msgid "Perform enhanced load motion during global common subexpression elimination"
+msgstr ""
+"Genel alt ifade elemesi sırasında genişletilmiş yük\n"
+" hareketi uygulanır"
+
+#: options.c:774
+#, fuzzy
+msgid "Perform store motion after global common subexpression elimination"
+msgstr ""
+"Genel alt ifade elemesinden sonra saklama hareketi\n"
+" uygulanır"
+
+#: options.c:777
+#, fuzzy
+msgid "Enable fatal diagnostics about inter-procedural problems"
+msgstr ""
+"Yordamlar arası sorunlar hakkındaki ölümcül tanılar\n"
+" iptal edilir"
+
+#: options.c:780
+msgid "Delete non-FORTRAN-77 intrinsics g77 supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin g77 destekleri\n"
+" silinir"
+
+#: options.c:783
+msgid "Disable non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin g77 destekleri\n"
+" iptal edilir"
+
+#: options.c:786
+#, fuzzy
+msgid "Enable non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin g77 destekleri\n"
+" iptal edilir"
+
+#: options.c:789
+msgid "Hide non-FORTRAN 77 intrinsics F90 supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin g77 destekleri\n"
+" gizlenir"
+
+#: options.c:792
+#, fuzzy
+msgid "Recognize GNU-defined keywords"
+msgstr "GNU tanımlı anahtar sözcükler tanınmaz"
+
+#: options.c:795
msgid "Generate code for GNU runtime environment"
msgstr "Kod GNU çalışma ortamı için üretilir"
-#: objc/lang-options.h:32
-msgid "Generate code for NeXT runtime environment"
+#: options.c:798
+#, fuzzy
+msgid "Enable guessing of branch probabilities"
+msgstr "Dallanma olasılığı tahmini etkinleştirilir"
+
+#: options.c:813
+msgid "Assume normal C execution environment"
+msgstr "Normal C çalıştırma ortamı var sayılır"
+
+#: options.c:816
+msgid "Enable support for huge objects"
+msgstr "Dev nesneler için destek etkinleştirilir"
+
+#: options.c:819
+msgid "Process #ident directives"
+msgstr "#ident yönergeleri işlenir"
+
+#: options.c:822
+msgid "Perform conversion of conditional jumps to branchless equivalents"
+msgstr ""
+"Dallanmasız karşılıklara koşullu atlama dönüşümü\n"
+" uygulanır"
+
+#: options.c:825
+msgid "Perform conversion of conditional jumps to conditional execution"
+msgstr ""
+"Koşullu çalıştırmaya koşullu atlama dönüşümü\n"
+" uygulanır"
+
+#: options.c:828
+msgid "Export functions even if they can be inlined"
+msgstr "Özümlenebilir olsalar bile işlevler ihracedilir"
+
+#: options.c:831
+#, fuzzy
+msgid "Emit implicit instantiations of inline templates"
+msgstr "Sadece özümleme şablonlarının doğrudan gerçeklenmesi sağlanır"
+
+#: options.c:834
+#, fuzzy
+msgid "Emit implicit instantiations of templates"
+msgstr "Sadece özümleme şablonlarının doğrudan gerçeklenmesi sağlanır"
+
+#: options.c:837
+msgid "Use offset tables for virtual method calls"
+msgstr ""
+"Sanal yöntem çağrıları için adresleme tabloları\n"
+" kullanılır"
+
+#: options.c:840
+msgid "Do not generate .size directives"
+msgstr ".size yönergeleri üretilmez"
+
+#: options.c:843
+msgid "Initialize local vars and arrays to zero"
+msgstr "Yerel değişkenler ve diziler sıfır ile ilklendirilir"
+
+#: options.c:846
+#, fuzzy
+msgid "Pay attention to the \"inline\" keyword"
+msgstr "'inline' anahtar sözcüğüne dikkat edilir"
+
+#: options.c:855
+#, fuzzy
+msgid "-finline-limit=<number>\tLimit the size of inlined functions to <number>"
+msgstr " -finline-limit=SAYI Özümlenen işlevlerin uzunluğu SAYI ile sınırlanır\n"
+
+#: options.c:858
+msgid "-finput-charset=<cset> Specify the default character set for source files."
+msgstr ""
+
+#: options.c:861
+#, fuzzy
+msgid "Instrument function entry and exit with profiling calls"
+msgstr "İşlevlere giriş ve çıkışta kullanım çağrıları üretir"
+
+#: options.c:864
+msgid "Intrinsics letters in arbitrary cases"
+msgstr "Yerleşikler gelişigüzel yazılmıştır"
+
+#: options.c:867
+msgid "Intrinsics spelled as e.g. SqRt"
+msgstr "Yerleşikler SqRt tarzında hecelenir"
+
+#: options.c:870
+#, fuzzy
+msgid "Intrinsics in lowercase"
+msgstr "Yerleşikler büyük harfle yazılmıştır"
+
+#: options.c:873
+msgid "Intrinsics in uppercase"
+msgstr "Yerleşikler büyük harfle yazılmıştır"
+
+#: options.c:876
+msgid "Assume native functions are implemented using JNI"
+msgstr "Yerli işlevlerin JNI kullanarak oluştuğu varsayılır"
+
+#: options.c:879
+#, fuzzy
+msgid "Generate code for functions even if they are fully inlined"
+msgstr ""
+"Tamamen özümlenmiş olsalar bile işlevler için kod\n"
+" üretilir"
+
+#: options.c:882
+msgid "Emit static const variables even if they are not used"
+msgstr ""
+"Kullanılmamış bile olsa statik sabit değişkenler\n"
+" içerilir"
+
+#: options.c:888
+#, fuzzy
+msgid "Give external symbols a leading underscore"
+msgstr "Alt çizgi ile başlayan sembollerde uyarır"
+
+#: options.c:891
+#, fuzzy
+msgid "Perform loop optimizations"
+msgstr "Döngü eniyilemesi uygulanır"
+
+#: options.c:894
+msgid "Language keyword letters in arbitrary cases"
+msgstr "Dil anahtar sözcükleri gelişigüzel yazılmıştır"
+
+#: options.c:897
+msgid "Language keywords spelled as e.g. IOStat"
+msgstr "Dil anahtar sözcükleri IOStat tarzı hecelenir"
+
+#: options.c:900
+#, fuzzy
+msgid "Language keywords in lowercase"
+msgstr "Dil anahtar sözcükleri büyük harflerle yazılmıştır"
+
+#: options.c:903
+msgid "Language keywords in uppercase"
+msgstr "Dil anahtar sözcükleri büyük harflerle yazılmıştır"
+
+#: options.c:906
+msgid "Set errno after built-in math functions"
+msgstr ""
+"YerleÅŸik matematik iÅŸlevlerinden sonra ERRNO\n"
+" kullanılır"
+
+#: options.c:909
+#, fuzzy
+msgid "Report on permanent memory allocation"
+msgstr ""
+"Çalıştırma sonunda ayrılan kesintisiz bellek miktarı\n"
+" raporlanır"
+
+#: options.c:912
+msgid "Attempt to merge identical constants and constant variables"
+msgstr ""
+"Özdeş sabitler ve sabit değişkenler katıştırılmaya\n"
+" çalışılır"
+
+#: options.c:915
+msgid "Attempt to merge identical constants across compilation units"
+msgstr ""
+"Özdeş sabitler derleme birimlerine karşın\n"
+" katıştırılmaya çalışılır"
+
+#: options.c:918
+#, fuzzy
+msgid "-fmessage-length=<number>\tLimit diagnostics to <number> characters per line. 0 suppresses line-wrapping"
+msgstr ""
+" -fmessage-length=SAYI Tanı iletilerinin uzunluğu her satırda SAYI\n"
+" karakterle sınırlanır. 0 satır sarmalamayı engeller\n"
+
+#: options.c:921
+msgid "Delete MIL-STD 1753 intrinsics"
+msgstr "MIL-STD 1753 yerleÅŸikleri silinir"
+
+#: options.c:924
+msgid "Disable MIL-STD 1753 intrinsics"
+msgstr "MIL-STD 1753 yerleÅŸikleri iptal edilir"
+
+#: options.c:927
+#, fuzzy
+msgid "Enable MIL-STD 1753 intrinsics"
+msgstr "MIL-STD 1753 yerleÅŸikleri iptal edilir"
+
+#: options.c:930
+msgid "Hide MIL-STD 1753 intrinsics"
+msgstr "MIL-STD 1753 yerleÅŸikleri gizlenir"
+
+#: options.c:933
+msgid "Force all loop invariant computations out of loops"
+msgstr ""
+"Döngülerdeki döngü dışına taşınacak olan değişimsiz\n"
+" hesaplama etkinleÅŸtirir"
+
+#: options.c:936
+#, fuzzy
+msgid "Don't warn about uses of Microsoft extensions"
+msgstr ""
+"Microsoft uzantılarının kullanımı hakkındaki\n"
+" gereksiz uyarılar verilmez"
+
+#: options.c:945
+#, fuzzy
+msgid "Use graph-coloring register allocation"
+msgstr "Diyagram renklendiren yazmaç tahsisi kullanılır"
+
+#: options.c:948
+#, fuzzy
+msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
msgstr "Kod NeXT çalışma ortamı için üretilir"
-#: objc/lang-options.h:35
-msgid "Warn if a selector has multiple methods"
-msgstr "Bir seçici çoklu yöntemlere sahipse uyarır"
+#: options.c:951
+msgid "Assume that receivers of Objective-C messages may be nil"
+msgstr ""
-#: objc/lang-options.h:39
-msgid "Do not warn if inherited methods are unimplemented"
-msgstr "Kalıt yöntemler oluşturulmamışsa uyarır"
+#: options.c:954
+msgid "Support synchronous non-call exceptions"
+msgstr "Eşzamanlı çağrısız olağandışılıklar desteklenir"
+
+#: options.c:963
+msgid "Enable Objective-C exception and synchronization syntax"
+msgstr ""
+
+#: options.c:966 options.c:1290
+msgid "Perform loop unrolling for all loops"
+msgstr "Tüm döngülere ters döngüleme uygulanır"
+
+#: options.c:969 options.c:1293
+msgid "Perform loop unrolling when iteration count is known"
+msgstr "Yineleme sayısı bilindiğinde ters döngüleme uygulanır"
+
+#: options.c:972
+msgid "When possible do not generate stack frames"
+msgstr "Mümkün olduğunca yığın çerçeveleri üretilmez"
+
+#: options.c:975
+msgid "Take at least one trip through each iterative DO loop"
+msgstr "Her yinelemeli DO döngüsü en azından bir tur atar"
+
+#: options.c:978
+msgid "Recognize C++ kewords like \"compl\" and \"xor\""
+msgstr ""
+
+#: options.c:981
+#, fuzzy
+msgid "Do the full register move optimization pass"
+msgstr "Baştan başa yazmaç taşıma eniyilemesi yapar"
+
+#: options.c:984
+msgid "Optimize sibling and tail recursive calls"
+msgstr "Kardeş ve kuyruk özyinelemeli çağrılar eniyilenir"
+
+#: options.c:987
+#, fuzzy
+msgid "Enable optimization of static class initialization code"
+msgstr ""
+"Statik sınıf ilklendirme koduna hiç bir eniyileme\n"
+" uygulanmaz"
+
+#: options.c:990
+#, fuzzy
+msgid "Enable optional diagnostics"
+msgstr "Seçimlik teşhisler yapılmaz"
+
+#: options.c:996
+msgid "Pack structure members together without holes"
+msgstr "Yapı üyelerini birlikte deliksiz paketler"
+
+#: options.c:999
+#, fuzzy
+msgid "Return small aggregates in memory, not registers"
+msgstr ""
+"Yazmaçlardaki değil bellekteki 'short' küme\n"
+" döndürülür"
+
+#: options.c:1005
+msgid "Warn about use of (only a few for now) Fortran extensions"
+msgstr ""
+"Fortran uzantılarının kullanımı hakkında uyarır\n"
+" (ÅŸimdilik hepsinde deÄŸil)"
+
+#: options.c:1008
+#, fuzzy
+msgid "Perform loop peeling"
+msgstr "Döngü eniyilemesi uygulanır"
+
+#: options.c:1011
+msgid "Enable machine specific peephole optimizations"
+msgstr "Makinaya özel gözlem deliği eniyilemesi etkinleştirilir"
+
+#: options.c:1014
+#, fuzzy
+msgid "Enable an RTL peephole pass before sched2"
+msgstr ""
+"sched2 çalıştırılmadan önce bir rtl gözlem deliği\n"
+" aşaması etkinleştirilir"
+
+#: options.c:1017
+msgid "Downgrade conformance errors to warnings"
+msgstr "Uyumluluk hatalarını uyarılara indirger"
+
+#: options.c:1020
+#, fuzzy
+msgid "Generate position-independent code if possible"
+msgstr "Mümkünse, konumdan bağımsız kod üretilir"
+
+#: options.c:1023
+#, fuzzy
+msgid "Generate position-independent code for executables if possible"
+msgstr "Mümkünse, konumdan bağımsız kod üretilir"
+
+#: options.c:1026
+msgid "Generate prefetch instructions, if available, for arrays in loops"
+msgstr ""
+"Mümkünse, döngülerdeki diziler için önalım\n"
+" komutları üretilir"
+
+#: options.c:1032
+msgid "Enable basic program profiling code"
+msgstr "Temel program profil çıkarma kodu etkinleştirilir"
+
+#: options.c:1035
+#, fuzzy
+msgid "Insert arc-based program profiling code"
+msgstr "Dal bağlantı kodunu yerleştirir"
+
+#: options.c:1038
+msgid "Enable common options for generating profile info for profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1041
+msgid "Enable common options for performing profile feedback directed optimizations"
+msgstr ""
+
+#: options.c:1044
+msgid "Insert code to profile values of expressions"
+msgstr ""
+
+#: options.c:1050
+#, fuzzy
+msgid "-frandom-seed=<string>\tMake compile reproducible using <string>"
+msgstr ""
+" -frandom-seed=<dizge> <dizge> kullanılarak derlemeyi yeniden türetilebilir\n"
+" yapar\n"
+
+#: options.c:1053
+msgid "Strength reduce all loop general induction variables"
+msgstr ""
+"Tüm döngülerdeki genel başlatma değişkenlerinin\n"
+" gücünü azaltır"
+
+#: options.c:1056
+#, fuzzy
+msgid "Return small aggregates in registers"
+msgstr "Yazmaçlardaki 'short' kümeleri döndürülür"
+
+#: options.c:1059
+msgid "Enables a register move optimization"
+msgstr "Bir yazmaç taşıma eniyilemesi etkinleştirilir"
+
+#: options.c:1062
+#, fuzzy
+msgid "Perform a register renaming optimization pass"
+msgstr "Yazmaç isimlendirme eniyilemesi aşamasını uygular"
+
+#: options.c:1065
+msgid "Reorder basic blocks to improve code placement"
+msgstr ""
+"Kod yerleşimini iyileştirecek temel blokları\n"
+" yeniden sıralar"
+
+#: options.c:1068
+msgid "Reorder functions to improve code placement"
+msgstr ""
+"Kod yerleÅŸimini iyileÅŸtirecek iÅŸlevleri\n"
+" yeniden sıralar"
+
+#: options.c:1071
+msgid "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime"
+msgstr ""
+
+#: options.c:1074
+msgid "Enable automatic template instantiation"
+msgstr "Otomatik şablon gerçeklemesi etkinleştirilir"
+
+#: options.c:1077
+#, fuzzy
+msgid "Add a common subexpression elimination pass after loop optimizations"
+msgstr "Döngü eniyilemesinden sonra CSE geçişi çalıştırılır"
+
+#: options.c:1080
+msgid "Run the loop optimizer twice"
+msgstr "Döngü eniyilemesi iki kere çalıştırılır"
+
+#: options.c:1083
+msgid "Disable optimizations that assume default FP rounding behavior"
+msgstr ""
+
+#: options.c:1086
+#, fuzzy
+msgid "Generate run time type descriptor information"
+msgstr "Çalışma anı tür tanımlayıcı bilgisi üretilmez"
+
+#: options.c:1089
+msgid "Enable scheduling across basic blocks"
+msgstr "Temel bloklar arasında zamanlama etkinleştirilir"
+
+#: options.c:1092
+msgid "Allow speculative motion of non-loads"
+msgstr "Yük oluşturmayanların tahmini hareketine izin verilir"
+
+#: options.c:1095
+msgid "Allow speculative motion of some loads"
+msgstr "Bazı yüklerin tahmini hareketine izin verilir"
+
+#: options.c:1098
+msgid "Allow speculative motion of more loads"
+msgstr "Fazla yüklerin tahmini hareketine izin verilir"
+
+#: options.c:1101
+msgid "Allow premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1104
+msgid "Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1107
+msgid "-fsched-stalled-insns-dep=<number> Set dependence distance checking in premature scheduling of queued insns"
+msgstr ""
+
+#: options.c:1110
+msgid "-fsched-stalled-insns=<number> Set number of queued insns that can be prematurely scheduled"
+msgstr ""
+
+#: options.c:1113
+#, fuzzy
+msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler"
+msgstr " -fsched-verbose=SAYI Zamanlama için ayrıntı düzeyi belirtilir\n"
+
+#: options.c:1116
+msgid "If scheduling post reload, do superblock scheduling"
+msgstr ""
+
+#: options.c:1119
+msgid "If scheduling post reload, do trace scheduling"
+msgstr ""
+
+#: options.c:1122
+msgid "Reschedule instructions before register allocation"
+msgstr "Yazmaç tahsisinden önce komutları yeniden zamanlar"
+
+#: options.c:1125
+msgid "Reschedule instructions after register allocation"
+msgstr "Yazmaç tahsisinden sonra komutları yeniden zamanlar"
+
+#: options.c:1128
+#, fuzzy
+msgid "Allow appending a second underscore to externals"
+msgstr "external'lara ikinci altçizgi eklenemez"
+
+#: options.c:1131
+msgid "Mark data as shared rather than private"
+msgstr "Veriyi özelden çok paylaşımlı olarak imler"
+
+#: options.c:1134
+msgid "Use the same size for double as for float"
+msgstr "double türler için de float tür uzunluğu kullanılır"
+
+#: options.c:1137
+msgid "Use the narrowest integer type possible for enumeration types"
+msgstr ""
+
+#: options.c:1140
+#, fuzzy
+msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\""
+msgstr ""
+"wchar_t için temel tür olarak `unsigned short' a\n"
+" zorlar"
+
+#: options.c:1146
+msgid "Disable optimizations observable by IEEE signaling NaNs"
+msgstr ""
+"IEEE sinyalleme NaNları tarafından farkedilebilen\n"
+" eniyilemeler iptal edilir"
+
+#: options.c:1149
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed"
+msgstr ""
+
+#: options.c:1152
+#, fuzzy
+msgid "Make \"char\" signed by default"
+msgstr "Öntanımlı olarak 'char' signed yapılır"
+
+#: options.c:1155
+#, fuzzy
+msgid "Do not print names of program units as they are compiled"
+msgstr ""
+"Program birimlerinin isimleri derlenmiÅŸ olarak\n"
+" gösterilir"
+
+#: options.c:1158
+#, fuzzy
+msgid "Convert floating point constants to single precision constants"
+msgstr ""
+"Kayan noktalı sabitler tek duyarlıklı sabitlere\n"
+" dönüştürülür"
+
+#: options.c:1161
+#, fuzzy
+msgid "Internally convert most source to lowercase"
+msgstr "Büyük harfe dönüşüm içerden yapılır"
+
+#: options.c:1164
+msgid "Internally preserve source case"
+msgstr "İçerde harf büyüklüğü korunur"
+
+#: options.c:1167
+msgid "Internally convert most source to uppercase"
+msgstr "Büyük harfe dönüşüm içerden yapılır"
+
+#: options.c:1173
+msgid "Insert stack checking code into the program"
+msgstr "Programa yığın denetimi kodu yerleştirilir"
+
+#: options.c:1179
+#, fuzzy
+msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>"
+msgstr " -fstack-limit-register=<yazmaç> Yığıt <yazmaç>ı aşarsa yakalanır\n"
+
+#: options.c:1182
+#, fuzzy
+msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>"
+msgstr " -fstack-limit-symbol=<isim> Yığıt <isim> sembolünü aşarsa yakalanır\n"
+
+#: options.c:1185
+msgid "Display statistics accumulated during compilation"
+msgstr "Derleme sırasında toplanan istatistikler gösterilir"
+
+#: options.c:1188
+#, fuzzy
+msgid "Enable assignability checks for stores into object arrays"
+msgstr ""
+"Nesne dizileri içinde saklamalar için atanabilirlik\n"
+" denetimleri kapatılır"
+
+#: options.c:1191
+msgid "Perform strength reduction optimizations"
+msgstr "Güç azaltma eniyilemesi uygulanır"
+
+#: options.c:1194
+msgid "Assume strict aliasing rules apply"
+msgstr "Sıkı takma ad kuralları uygulanacağı varsayılır"
+
+#: options.c:1203
+msgid "Symbol names spelled in mixed case"
+msgstr "Sembol isimlerin BüyükKüçük harflerle yazılmıştır"
+
+#: options.c:1206
+msgid "Symbol names in lowercase"
+msgstr "Sembol isimleri küçük harflerle yazılmıştır"
+
+#: options.c:1209
+msgid "Symbol names in uppercase"
+msgstr "Sembol isimleri büyük harflerle yazılmıştır"
+
+#: options.c:1212
+msgid "Check for syntax errors, then stop"
+msgstr "Sözdizimi denetimi yaptıktan sonra durur"
+
+#: options.c:1215
+msgid "-ftabstop=<number>\tDistance between tab stops for column reporting"
+msgstr ""
+
+#: options.c:1218
+#, fuzzy
+msgid "-ftemplate-depth-<number>\tSpecify maximum template instantiation depth"
+msgstr ""
+"En büyük şablon gerçekleme derinliği seçeneğe\n"
+" eklenen bir sayı olarak belirtilir"
+
+#: options.c:1221
+#, fuzzy
+msgid "Create data files needed by \"gcov\""
+msgstr "gcov için gereken veri dosyaları oluşturulur"
+
+#: options.c:1227
+msgid "Perform jump threading optimizations"
+msgstr "Atlama evresi oluşturma eniyilemesi uygulanır"
+
+#: options.c:1230
+#, fuzzy
+msgid "Report the time taken by each compiler pass"
+msgstr ""
+"Çalışma bitiminde her derleme aşaması için kullanılan\n"
+" zaman raporlanır"
+
+#: options.c:1233
+#, fuzzy
+msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model"
+msgstr ""
+" -ftls-model=[global-dynamic | local-dynamic | initial-exec | local-exec]\n"
+" Öntanımlı yerel evreli saklama kodu üretim\n"
+" modelini belirtilir\n"
+
+#: options.c:1236
+msgid "Perform superblock formation via tail duplication"
+msgstr "Kuyruk tekrarı üzerinden süperblok oluşumu uygulanır"
+
+#: options.c:1239
+#, fuzzy
+msgid "Assume floating-point operations can trap"
+msgstr "kayan nokta iÅŸlemleri yakalanabilir"
+
+#: options.c:1242
+#, fuzzy
+msgid "Trap for signed overflow in addition, subtraction and multiplication"
+msgstr "Toplama, çıkartma, çarpmada signed taşması yakalanır"
+
+#: options.c:1245
+msgid "Make prefix-radix non-decimal constants be typeless"
+msgstr "Ondalık olmayan taban önekli sabitler türsüz yapılır"
+
+#: options.c:1248
+#, fuzzy
+msgid "Allow all ugly features"
+msgstr "Tüm salak özellikler kapatılır"
+
+#: options.c:1251
+#, fuzzy
+msgid "Hollerith and typeless can be passed as arguments"
+msgstr ""
+"Hollerith ve türsüz sabitler argüman olarak\n"
+" kullanılmaz"
+
+#: options.c:1254
+msgid "Allow ordinary copying of ASSIGN'ed vars"
+msgstr ""
+"ASSIGN'lı değişkenlerin olağan kopyalamasına izin\n"
+" verilir"
+
+#: options.c:1257
+msgid "Dummy array dimensioned to (1) is assumed-size"
+msgstr "Yapay dizi üstindisi (1) kabul edilir"
+
+#: options.c:1260
+msgid "Trailing comma in procedure call denotes null argument"
+msgstr "Yordam çağrılarında son virgül null argüman sayılır"
+
+#: options.c:1263
+msgid "Allow REAL(Z) and AIMAG(Z) given DOUBLE COMPLEX Z"
+msgstr ""
+"DOUBLE COMPLEX Z nin REAL(Z) ve AIMAG(Z) olarak\n"
+" verilmesine izin verilir"
+
+#: options.c:1266
+#, fuzzy
+msgid "Initialization via DATA and PARAMETER is not type-compatible"
+msgstr "DATA ve PARAMETER üzerinden ilklendirme tür uyumludur"
+
+#: options.c:1269
+msgid "Allow INTEGER and LOGICAL interchangeability"
+msgstr "INTEGER ve LOGICAL aradönüşümlerine izin verilir"
+
+#: options.c:1272
+#, fuzzy
+msgid "Append underscores to externals"
+msgstr "external'lara ikinci altçizgi eklenemez"
+
+#: options.c:1275
+#, fuzzy
+msgid "Compile whole compilation unit at a time"
+msgstr "Çeviri biriminin tamamı bir dosyaya dökümlenir"
+
+#: options.c:1278
+msgid "Delete libU77 intrinsics"
+msgstr "libU77 yerleÅŸikleri silinir"
+
+#: options.c:1281
+msgid "Disable libU77 intrinsics"
+msgstr "libU77 yerleÅŸikleri iptal edilir"
+
+#: options.c:1284
+#, fuzzy
+msgid "Enable libU77 intrinsics"
+msgstr "libU77 yerleÅŸikleri iptal edilir"
+
+#: options.c:1287
+msgid "Hide libU77 intrinsics"
+msgstr "libU77 yerleÅŸikleri gizlenir"
-#: objc/lang-options.h:41
-msgid "Generate C header of platform specific features"
+#: options.c:1296
+#, fuzzy
+msgid "Allow math optimizations that may violate IEEE or ISO standards"
+msgstr ""
+"IEEE veya ANSI standartlarını bozabilen matematiksel\n"
+" eniyilemelere izin verilir"
+
+#: options.c:1299
+msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned"
+msgstr ""
+
+#: options.c:1302
+#, fuzzy
+msgid "Make \"char\" unsigned by default"
+msgstr "Öntanımlı olarak 'char' unsigned yapılır"
+
+#: options.c:1305
+#, fuzzy
+msgid "Perform loop unswitching"
+msgstr "Döngü eniyilemesi uygulanır"
+
+#: options.c:1308
+msgid "Just generate unwind tables for exception handling"
+msgstr ""
+"Olağandışılıkların yakalanması için birbirlerini\n"
+" etkilemeyenlerin tablosu oluÅŸturulur"
+
+#: options.c:1314
+msgid "Use __cxa_atexit to register destructors"
+msgstr "Yazmaç yıkıcılara __cxa_atexit kullanılır"
+
+#: options.c:1320
+msgid "Add extra commentary to assembler output"
+msgstr "Çevirici çıktısına fazladan açıklama ekler"
+
+#: options.c:1323
+#, fuzzy
+msgid "Print g77-specific version information and run internal tests"
+msgstr ""
+"g77 ye özel derleyici sürüm bilgisini gösterir ve\n"
+" iç testleri yapar"
+
+#: options.c:1326
+#, fuzzy
+msgid "Use expression value profiles in optimizations"
+msgstr "ifade bir eylem deÄŸil"
+
+#: options.c:1329
+msgid "Discard unused virtual functions"
+msgstr "Kullanılmayan sanal işlevler iptal edilir"
+
+#: options.c:1332
+msgid "Implement vtables using thunks"
+msgstr "İşlev gösterici tablosu aşılarla oluşturulur"
+
+#: options.c:1335
+msgid "Program is written in VXT (Digital-like) FORTRAN"
+msgstr "Program VXT (Digital-benzeri) FORTRAN da yazılmış"
+
+#: options.c:1338
+msgid "Delete non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin VXT FORTRAN\n"
+" destekleri silinir"
+
+#: options.c:1341
+msgid "Disable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin VXT FORTRAN\n"
+" destekleri iptal edilir"
+
+#: options.c:1344
+#, fuzzy
+msgid "Enable non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin VXT FORTRAN\n"
+" destekleri iptal edilir"
+
+#: options.c:1347
+msgid "Hide non-FORTRAN-77 intrinsics VXT FORTRAN supports"
+msgstr ""
+"FORTRAN-77 olmayan yerleÅŸiklerin VXT FORTRAN\n"
+" destekleri gizlenir"
+
+#: options.c:1353
+msgid "Emit common-like symbols as weak symbols"
+msgstr "Benzer semboller zayıf semboller olarak ele alınır"
+
+#: options.c:1356
+msgid "Construct webs and split unrelated uses of single variable"
+msgstr ""
+
+#: options.c:1359
+msgid "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants to character set <cset>"
+msgstr ""
+
+#: options.c:1362
+msgid "Generate a #line directive pointing at the current working directory"
+msgstr ""
+
+#: options.c:1365
+msgid "Assume signed arithmetic overflow wraps around"
+msgstr ""
+
+#: options.c:1368
+msgid "Store strings in writable data section"
+msgstr "Dizgeler yazılabilir veri bölümünde saklanır"
+
+#: options.c:1371
+msgid "Emit cross referencing information"
+msgstr "Çapraz referans bilgisi yayınlanır"
+
+#: options.c:1374
+#, fuzzy
+msgid "Print internal debugging-related information"
+msgstr "İç hata ayıklama bilgilerini gösterir"
+
+#: options.c:1377
+msgid "Put zero initialized data in the bss section"
+msgstr "bss bölümüne sıfır ilklendirmeli veri yerleştirilir"
+
+#: options.c:1380
+msgid "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode"
+msgstr ""
+
+#: options.c:1383
+msgid "Treat initial values of 0 like non-zero values"
+msgstr ""
+"0 değerli olanlar içerde sıfır değerli olmayanlar\n"
+" gibi deÄŸerlendirilir"
+
+#: options.c:1386
+#, fuzzy
+msgid "Generate debug information in default format"
+msgstr "Öntanımlı biçimde hata ayıklama bilgisi üretir"
+
+#: options.c:1392
+#, fuzzy
+msgid "Generate debug information in COFF format"
+msgstr "Öntanımlı biçimde hata ayıklama bilgisi üretir"
+
+#: options.c:1395
+#, fuzzy
+msgid "Generate debug information in DWARF v2 format"
+msgstr "Öntanımlı biçimde hata ayıklama bilgisi üretir"
+
+#: options.c:1398
+#, fuzzy
+msgid "Dump declarations to a .decl file"
+msgstr "Bildirimler .decl dosyasına dökümlenir"
+
+#: options.c:1401
+#, fuzzy
+msgid "Generate debug information in default extended format"
+msgstr ""
+"Öntanımlı gelişmiş biçimde hata ayıklama bilgisi\n"
+" üretir"
+
+#: options.c:1404
+msgid "-gnat<options>\tSpecify options to GNAT"
+msgstr ""
+
+#: options.c:1407
+#, fuzzy
+msgid "Generate debug information in STABS format"
+msgstr "Öntanımlı biçimde hata ayıklama bilgisi üretir"
+
+#: options.c:1410
+#, fuzzy
+msgid "Generate debug information in extended STABS format"
+msgstr ""
+"Öntanımlı gelişmiş biçimde hata ayıklama bilgisi\n"
+" üretir"
+
+#: options.c:1413
+#, fuzzy
+msgid "Generate debug information in VMS format"
+msgstr "Öntanımlı biçimde hata ayıklama bilgisi üretir"
+
+#: options.c:1416
+#, fuzzy
+msgid "Generate debug information in XCOFF format"
+msgstr "Öntanımlı biçimde hata ayıklama bilgisi üretir"
+
+#: options.c:1419
+#, fuzzy
+msgid "Generate debug information in extended XCOFF format"
+msgstr ""
+"Öntanımlı gelişmiş biçimde hata ayıklama bilgisi\n"
+" üretir"
+
+#: options.c:1422
+msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1425
+msgid "-imacros <file>\tAccept definition of macros in <file>"
+msgstr ""
+
+#: options.c:1428
+msgid "-include <file>\tInclude the contents of <file> before other files"
+msgstr ""
+
+#: options.c:1431
+msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options"
+msgstr ""
+
+#: options.c:1434
+msgid "-isysroot <dir>\tSet <dir> to be the system root directory"
+msgstr ""
+
+#: options.c:1437
+msgid "-isystem <dir>\tAdd <dir> to the start of the system include path"
+msgstr ""
+
+#: options.c:1440
+msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path"
+msgstr ""
+
+#: options.c:1443
+msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path"
+msgstr ""
+
+#: options.c:1455
+msgid "Do not search standard system include directories (those specified with -isystem will still be used)"
+msgstr ""
+
+#: options.c:1458
+msgid "Do not search standard system include directories for C++"
+msgstr ""
+
+#: options.c:1464
+#, fuzzy
+msgid "-o <file>\tPlace output into <file>"
+msgstr " -o DOSYA Çıktı DOSYAya yazılır\n"
+
+#: options.c:1467
+#, fuzzy
+msgid "Enable function profiling"
+msgstr "mips16 işlev ayrımlama"
+
+#: options.c:1470
+#, fuzzy
+msgid "Issue warnings needed for strict compliance to the standard"
+msgstr " -pedantic ISO C uyumu için gereken uyarılar üretilir.\n"
+
+#: options.c:1473
+msgid "Like -pedantic but issue them as errors"
+msgstr ""
+
+#: options.c:1476
+#, fuzzy
+msgid "Generate C header of platform-specific features"
msgstr "Platforma özel niteliklerin C başlıklarını üretir"
-#: objc/lang-options.h:43
-msgid "Specify the name of the class for constant strings"
-msgstr "Sabit dizgeler için sınıf ismi belirtilir"
+#: options.c:1479
+#, fuzzy
+msgid "Do not display functions compiled or elapsed time"
+msgstr " -quiet Derlenen işlevler ve geçen zaman gösterilmez\n"
-#. This is the contribution to the `lang_options' array in gcc.c for
-#. treelang.
-#: treelang/lang-options.h:26
-msgid "(debug) trace parsing process"
-msgstr "(hata ayıklama) trace parsing process"
+#: options.c:1482
+#, fuzzy
+msgid "Remap file names when including files"
+msgstr "#%s deyimindeki dosya ismi boÅŸ"
-#: treelang/lang-options.h:27
-msgid "(debug) trace lexical analysis"
-msgstr "(hata ayıklama) trace lexical analysis"
+#: options.c:1485
+msgid "Conform to the ISO 1998 C++ standard"
+msgstr ""
-#: config/rs6000/darwin.h:62
-msgid " conflicting code gen style switches are used"
-msgstr " çelişen code gen tarzı switch'ler kullanılmış"
+#: options.c:1488
+msgid "Conform to the ISO 1990 C standard"
+msgstr ""
-#: config/i386/mingw32.h:85 config/i386/cygwin.h:171
-msgid "shared and mdll are not compatible"
-msgstr "shared ve mdll uyumsuz"
+#: options.c:1491
+msgid "Conform to the ISO 1999 C standard"
+msgstr ""
-#: java/lang-specs.h:33
-msgid "-fjni and -femit-class-files are incompatible"
-msgstr "-fjni ve -femit-class-files uyumsuz"
+#: options.c:1494 options.c:1515 options.c:1518
+msgid "Deprecated in favor of -std=c99"
+msgstr ""
-#: java/lang-specs.h:34
-msgid "-fjni and -femit-class-file are incompatible"
-msgstr "-fjni ve -femit-class-file uyumsuz"
+#: options.c:1497
+msgid "Conform to the ISO 1998 C++ standard with GNU extensions"
+msgstr ""
-#: java/lang-specs.h:35 java/lang-specs.h:36
-msgid "-femit-class-file should used along with -fsyntax-only"
-msgstr "-femit-class-file -fsyntax-only ile birlikte kullanılmalı"
+#: options.c:1500
+msgid "Conform to the ISO 1990 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1503
+msgid "Conform to the ISO 1999 C standard with GNU extensions"
+msgstr ""
+
+#: options.c:1506
+msgid "Deprecated in favor of -std=gnu99"
+msgstr ""
+
+#: options.c:1509
+msgid "Deprecated in favor of -std=c89"
+msgstr ""
-#: ada/lang-specs.h:38 java/jvspec.c:77 gcc.c:716
+#: options.c:1512
+msgid "Conform to the ISO 1990 C standard as amended in 1994"
+msgstr ""
+
+#: options.c:1521
+#, fuzzy
+msgid "Enable traditional preprocessing"
+msgstr "Yığın sondalamayı etkinleştirir"
+
+#: options.c:1524
+msgid "-trigraphs\tSupport ISO C trigraphs"
+msgstr ""
+
+#: options.c:1527
+msgid "Do not predefine system-specific and GCC-specific macros"
+msgstr ""
+
+#: options.c:1530
+#, fuzzy
+msgid "Enable verbose output"
+msgstr "Hata ayıklamalı çıktıyı etkinleştir"
+
+#: options.c:1536
+#, fuzzy
+msgid "Suppress warnings"
+msgstr "%s: uyarı: "
+
+#: config/rs6000/darwin.h:98
+msgid " conflicting code gen style switches are used"
+msgstr " çelişen code gen tarzı switch'ler kullanılmış"
+
+#: gcc.c:743
+#, fuzzy
+msgid "GCC does not support -C or -CC without -E"
+msgstr "GNU C -E kulanılmaksızın -CC desteklemiyor"
+
+#: gcc.c:767 java/jvspec.c:80 ada/lang-specs.h:34
msgid "-pg and -fomit-frame-pointer are incompatible"
msgstr "-pg ve -fomit-frame-pointer uyumsuz"
-#: ada/lang-specs.h:41
-msgid "-c or -S required for Ada"
-msgstr "Ada için -c ya da -S gerekli"
+#: gcc.c:915
+msgid "-E required when input is from standard input"
+msgstr "Standart girdiden girdi alınırken -E gereklidir"
+
+#: config/arm/arm.h:197
+msgid "-mapcs-26 and -mapcs-32 may not be used together"
+msgstr "-mapcs-26 ve -mapcs-32 birlikte kullanılamayabilir"
+
+#: config/arm/arm.h:199
+msgid "-msoft-float and -mhard_float may not be used together"
+msgstr "-msoft-float ve -mhard_float birlikte kullanılamayabilir"
+
+#: config/arm/arm.h:201
+msgid "-mbig-endian and -mlittle-endian may not be used together"
+msgstr "-mbig-endian ve -mlittle-endian birlikte kullanılamayabilir"
+
+#: config/i386/mingw32.h:58 config/i386/cygwin.h:70
+msgid "shared and mdll are not compatible"
+msgstr "shared ve mdll uyumsuz"
+
+#: config/mips/mips.h:975
+msgid "-pipe is not supported"
+msgstr "-pipe desteklenmiyor."
+
+#: config/mips/mips.h:1130 config/arc/arc.h:63
+msgid "may not use both -EB and -EL"
+msgstr "-EB ve -EL birlikte kullanılamayabilir"
-#: config/darwin.h:212
+#: config/darwin.h:215
msgid "-current_version only allowed with -dynamiclib"
msgstr "-current_version sadece -dynamiclib ile kullanılabilir"
-#: config/darwin.h:215
+#: config/darwin.h:218
msgid "-install_name only allowed with -dynamiclib"
msgstr "-install_name sadece -dynamiclib ile kullanılabilir"
-#: config/darwin.h:220
+#: config/darwin.h:223
msgid "-bundle not allowed with -dynamiclib"
msgstr "-bundle ile -dynamiclib birarada izin verilmez"
-#: config/darwin.h:221
+#: config/darwin.h:224
msgid "-bundle_loader not allowed with -dynamiclib"
msgstr "-bundle_loader ile -dynamiclib birarada izin verilmez"
-#: config/darwin.h:222
+#: config/darwin.h:225
msgid "-client_name not allowed with -dynamiclib"
msgstr "-client_name ile -dynamiclib birarada izin verilmez"
-#: config/darwin.h:225
+#: config/darwin.h:228
msgid "-force_cpusubtype_ALL not allowed with -dynamiclib"
msgstr "-force_cpusubtype_ALL ile -dynamiclib birarada izin verilmez"
-#: config/darwin.h:226
+#: config/darwin.h:229
msgid "-force_flat_namespace not allowed with -dynamiclib"
msgstr "-force_flat_namespace ile -dynamiclib birarada izin verilmez"
-#: config/darwin.h:228
+#: config/darwin.h:231
msgid "-keep_private_externs not allowed with -dynamiclib"
msgstr "-keep_private_externs ile -dynamiclib birarada izin verilmez"
-#: config/darwin.h:229
+#: config/darwin.h:232
msgid "-private_bundle not allowed with -dynamiclib"
msgstr "-private_bundle ile -dynamiclib birarada izin verilmez"
-#: config/sparc/freebsd.h:34 config/ia64/freebsd.h:23
-#: config/alpha/freebsd.h:44 config/rs6000/sysv4.h:1107
-#: config/i386/freebsd-aout.h:213
-msgid "`-p' not supported; use `-pg' and gprof(1)"
-msgstr "`-p' desteklenmiyor; `-pg' ve gprof(1) kullanın"
-
-#: config/sparc/linux64.h:197 config/sparc/linux64.h:208
-#: config/sparc/netbsd-elf.h:163 config/sparc/netbsd-elf.h:182
-#: config/sparc/sol2-bi.h:168 config/sparc/sol2-bi.h:178
-msgid "may not use both -m32 and -m64"
-msgstr "-m32 ve -m64 birlikte kullanılamaz"
-
-#: config/arm/arm.h:178
-msgid "-mapcs-26 and -mapcs-32 may not be used together"
-msgstr "-mapcs-26 ve -mapcs-32 birlikte kullanılamayabilir"
-
-#: config/arm/arm.h:180
-msgid "-msoft-float and -mhard_float may not be used together"
-msgstr "-msoft-float ve -mhard_float birlikte kullanılamayabilir"
-
-#: config/arm/arm.h:182
-msgid "-mbig-endian and -mlittle-endian may not be used together"
-msgstr "-mbig-endian ve -mlittle-endian birlikte kullanılamayabilir"
+#: config/vax/netbsd-elf.h:42
+msgid "The -shared option is not currently supported for VAX ELF."
+msgstr "-shared seçeneği VAX ELF için şu an desteklenmiyor."
-#: config/i386/sco5.h:195
+#: config/i386/sco5.h:191
msgid "-pg not supported on this platform"
msgstr "-pg bu platformda desteklenmiyor"
-#: config/i386/sco5.h:196
+#: config/i386/sco5.h:192
msgid "-p and -pp specified - pick one"
msgstr "-p ve -pp belirtilmiş - birini seçin"
-#: config/i386/sco5.h:271
+#: config/i386/sco5.h:266
msgid "-G and -static are mutually exclusive"
msgstr "-G ve -static birlikte kullanılamaz"
-#: f/lang-specs.h:38 gcc.c:689
-msgid "GNU C does not support -C without using -E"
+#: treelang/lang-specs.h:52
+msgid "-pg or -p and -fomit-frame-pointer are incompatible"
+msgstr "-pg veya -p ve -fomit-frame-pointer uyumsuz"
+
+#: f/lang-specs.h:38
+#, fuzzy
+msgid "GCC does not support -C without using -E"
msgstr "GNU C -E kulanılmaksızın -C desteklemiyor"
-#: f/lang-specs.h:39 gcc.c:690
-msgid "GNU C does not support -CC without using -E"
+#: f/lang-specs.h:39
+#, fuzzy
+msgid "GCC does not support -CC without using -E"
msgstr "GNU C -E kulanılmaksızın -CC desteklemiyor"
-#: config/mcore/mcore.h:60
-msgid "choose either big or little endian, not both"
-msgstr "ya büyük ya da küçük ilkli kullanın, ikisi birden olmaz"
+#: config/mips/r3900.h:35
+msgid "-mhard-float not supported"
+msgstr "-mhard-float desteklenmiyor"
-#: config/mcore/mcore.h:63
-msgid "choose either m340 or m210 not both"
-msgstr "Ya m340 ya da m210 kullanın, ikisi birden olmaz"
+#: config/mips/r3900.h:37
+msgid "-msingle-float and -msoft-float can not both be specified"
+msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
-#: config/mcore/mcore.h:64
-msgid "the m210 does not have little endian support"
-msgstr "m210 küçük ilkli bayt sıralamasının desteklemez"
+#: config/rs6000/sysv4.h:1094 config/i386/freebsd-aout.h:215
+msgid "`-p' not supported; use `-pg' and gprof(1)"
+msgstr "`-p' desteklenmiyor; `-pg' ve gprof(1) kullanın"
+
+#: config/sparc/linux64.h:208 config/sparc/linux64.h:219
+#: config/sparc/netbsd-elf.h:140 config/sparc/netbsd-elf.h:159
+#: config/sparc/sol2-bi.h:195 config/sparc/sol2-bi.h:205
+msgid "may not use both -m32 and -m64"
+msgstr "-m32 ve -m64 birlikte kullanılamaz"
+
+#: config/vax/vax.h:50 config/vax/vax.h:51
+msgid "profiling not supported with -mg\n"
+msgstr "-mg ile ayrımsama desteklenmiyor\n"
-#: config/i386/cygwin.h:115
+#: config/i386/cygwin.h:29
msgid "mno-cygwin and mno-win32 are not compatible"
msgstr "mno-cygwin ve mno-win32 uyumsuz"
-#: config/vax/netbsd-elf.h:42
-msgid "The -shared option is not currently supported for VAX ELF."
-msgstr "-shared seçeneği VAX ELF için şu an desteklenmiyor."
+#: ada/lang-specs.h:36
+msgid "one of -c, -S, -gnatc, -gnatz, or -gnats is required for Ada"
+msgstr ""
-#: treelang/lang-specs.h:52
-msgid "-pg or -p and -fomit-frame-pointer are incompatible"
-msgstr "-pg veya -p ve -fomit-frame-pointer uyumsuz"
+#: config/sparc/sol2-bi.h:167 config/sparc/sol2-bi.h:172
+#: config/sparc/sol2-gld-bi.h:17 config/sparc/sol2-gld-bi.h:22
+#, fuzzy
+msgid "does not support multilib"
+msgstr "%s %s desteÄŸi vermiyor"
-#: gcc.c:847
-msgid "-E required when input is from standard input"
-msgstr "Standart girdiden girdi alınırken -E gereklidir"
+#: java/lang-specs.h:34
+msgid "-fjni and -femit-class-files are incompatible"
+msgstr "-fjni ve -femit-class-files uyumsuz"
-#: gcc.c:851
-msgid "compilation of header file requested"
-msgstr "başlık dosyası derlemesi istendi"
+#: java/lang-specs.h:35
+msgid "-fjni and -femit-class-file are incompatible"
+msgstr "-fjni ve -femit-class-file uyumsuz"
-#: config/vax/vax.h:50 config/vax/vax.h:51
-msgid "profiling not supported with -mg\n"
-msgstr "-mg ile ayrımsama desteklenmiyor\n"
+#: java/lang-specs.h:36 java/lang-specs.h:37
+msgid "-femit-class-file should used along with -fsyntax-only"
+msgstr "-femit-class-file -fsyntax-only ile birlikte kullanılmalı"
-#: config/mips/mips.h:954
-msgid "-pipe is not supported"
-msgstr "-pipe desteklenmiyor."
+#: config/mcore/mcore.h:65
+msgid "the m210 does not have little endian support"
+msgstr "m210 küçük ilkli bayt sıralamasının desteklemez"
-#: config/mips/mips.h:1156 config/arc/arc.h:63
-msgid "may not use both -EB and -EL"
-msgstr "-EB ve -EL birlikte kullanılamayabilir"
+#~ msgid "concatenation of string literals with __FUNCTION__ is deprecated"
+#~ msgstr "__FUNCTION__ ile dizge sabitlerin birleştirilmesi özelliği eski kullanım"
-#: config/mips/r3900.h:35
-msgid "-mhard-float not supported"
-msgstr "-mhard-float desteklenmiyor"
+#~ msgid "ISO C++ forbids range expressions in switch statements"
+#~ msgstr "ISO C++ switch deyimlerinde aralık ifadelerine izin vermez"
-#: config/mips/r3900.h:37
-msgid "-msingle-float and -msoft-float can not both be specified"
-msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
+#~ msgid "ISO C++ forbids taking the address of a label"
+#~ msgstr "ISO C++ da bir etiket adresinin alınmasına izin verilmez"
+
+#~ msgid "ISO C forbids taking the address of a label"
+#~ msgstr "ISO C de bir etiket adresinin alınmasına izin verilmez"
+
+#~ msgid "declaration of `%s' shadows %s"
+#~ msgstr "`%s' bildirimi %s'i gölgeliyor"
+
+#~ msgid "`struct %s' incomplete in scope ending here"
+#~ msgstr "kapsam sonuna gelindiÄŸinde `struct %s' hala eksik"
+
+#~ msgid "`union %s' incomplete in scope ending here"
+#~ msgstr "kapsam sonuna gelindiÄŸinde `union %s' hala eksik"
+
+#~ msgid "`enum %s' incomplete in scope ending here"
+#~ msgstr "kapsam sonuna gelindiÄŸinde `enum %s' hala eksik"
+
+#~ msgid "label `%s' defined but not used"
+#~ msgstr "`%s' etiketi tanımlı ama kullanılmamış"
+
+#~ msgid "shadowing library function `%s'"
+#~ msgstr "kitaplık işlevi `%s'in gölgelenmesi"
+
+#~ msgid "library function `%s' declared as non-function"
+#~ msgstr "kitaplık işlevi `%s' işlev olarak bildirilmemiş"
+
+#~ msgid "conflicting types for `%s'"
+#~ msgstr "`%s' için tür çelişkisi"
+
+#~ msgid "redeclaration of `%s'"
+#~ msgstr "`%s'in yeniden bildirimi"
+
+#~ msgid "prototype for `%s' follows"
+#~ msgstr "`%s' için prototip izleniyor"
+
+#~ msgid "non-prototype definition here"
+#~ msgstr "buradaki tanımlama prototip değil"
+
+#~ msgid "prototype for `%s' follows and number of arguments doesn't match"
+#~ msgstr "`%s' için prototip izleniyor ve argüman sayısı eşleşmiyor"
+
+#~ msgid "prototype for `%s' follows and argument %d doesn't match"
+#~ msgstr "`%s' için prototip izleniyor ve %d. argüman eşleşmiyor"
+
+#~ msgid "type qualifiers for `%s' conflict with previous decl"
+#~ msgstr "`%s' için tür niteleyicileri önceki bildirimle çelişiyor"
+
+#~ msgid "redundant redeclaration of `%s' in same scope"
+#~ msgstr "`%s'in aynı alandaki anlamsız yeniden bildirimi"
+
+#~ msgid "a parameter"
+#~ msgstr "bir parametre"
+
+#~ msgid "a previous local"
+#~ msgstr "önceki yerel"
+
+#~ msgid "a global declaration"
+#~ msgstr "bir genel bildirim"
+
+#~ msgid "`%s' used prior to declaration"
+#~ msgstr "`%s' bildirim öncesi kullanılmış"
+
+#~ msgid "`%s' was declared implicitly `extern' and later `static'"
+#~ msgstr "`%s' önce örtük olarak `extern' sonra da `static' bildirilmiş"
+
+#~ msgid "previous external decl of `%s'"
+#~ msgstr "`%s'in önceki 'external' bildirimi"
+
+#~ msgid "type mismatch with previous implicit declaration"
+#~ msgstr "tür önceki örtük bildirimle çelişiyor"
+
+#~ msgid "`%s' was previously implicitly declared to return `int'"
+#~ msgstr "`%s' işlevinin geridönüş türü `int' türünde örtük bildirilmiş"
+
+#~ msgid "`%s' was declared `extern' and later `static'"
+#~ msgstr "`%s' önce `extern' sonra da `static' bildirilmiş"
+
+#~ msgid "`%s' locally external but globally static"
+#~ msgstr "`%s' yerel olarak external ama genel olarak static"
+
+#~ msgid "function `%s' was previously declared within a block"
+#~ msgstr "`%s' işlevi evvelce bir blok içinde bildirilmiş"
+
+#~ msgid "declaration of `%s' has `extern' and is initialized"
+#~ msgstr "`%s' bildirimi hem `extern' hem de ilkdeÄŸerli"
+
+#~ msgid "initializer fails to determine size of `%s'"
+#~ msgstr "`%s'in uzunluğunu belirlemede ilkdeğer başarısız"
+
+#~ msgid "array size missing in `%s'"
+#~ msgstr "`%s' içinde dizi boyu eksik"
+
+#~ msgid "storage size of `%s' isn't known"
+#~ msgstr "`%s'in saklama uzunluÄŸu bilinmiyor"
+
+#~ msgid "storage size of `%s' isn't constant"
+#~ msgstr "`%s'in saklama uzunluÄŸu sabit deÄŸil"
+
+#~ msgid "ISO C forbids parameter `%s' shadowing typedef"
+#~ msgstr "ISO C 'typedef' gölgeleyen `%s' parametresine izin vermez"
+
+#~ msgid "parameter `%s' points to incomplete type"
+#~ msgstr "parametre `%s' içi boş türü gösteriyor"
+
+#~ msgid "parameter points to incomplete type"
+#~ msgstr "parametre içi boş türü gösteriyor"
+
+#~ msgid "`void' in parameter list must be the entire list"
+#~ msgstr "parametre listesindeki void listenin tamamı olmalıydı"
+
+#~ msgid "`union %s' declared inside parameter list"
+#~ msgstr "`union %s' parametre listesi içinde bildirilmiş"
+
+#~ msgid "`enum %s' declared inside parameter list"
+#~ msgstr "`enum %s' parametre listesi içinde bildirilmiş"
+
+#~ msgid "anonymous union declared inside parameter list"
+#~ msgstr "anonim birleşik yapı parametre listesinin içinde bildirilmiş"
+
+#~ msgid "anonymous enum declared inside parameter list"
+#~ msgstr "anonim enum parametre listesinin içinde bildirilmiş"
+
+#~ msgid "bit-field `%s' type invalid in ISO C"
+#~ msgstr "`%s' bit alanının türü ISO C'de geçersiz"
+
+#~ msgid "duplicate member `%s'"
+#~ msgstr "üye `%s' yinelenmiş"
+
+#~ msgid "parm types given both in parmlist and separately"
+#~ msgstr "parametre türleri hem liste içinde hem de ayrıca verilmiş"
+
+#~ msgid "parameter `%s' declared void"
+#~ msgstr "parametre `%s' void bildirimli"
+
+#~ msgid "universal-character-name '\\u%04x' not valid in identifier"
+#~ msgstr "evrensel karakter ismi '\\U%04x' tanıtıcı içinde geçerli değil"
+
+#~ msgid "ignoring invalid multibyte character"
+#~ msgstr "geçersiz çok baytlı karakter yoksayılıyor"
+
+#~ msgid "options array incorrectly sorted: %s is before %s"
+#~ msgstr "seçenekler dizisi yanlış sıralı: %s, %s den önce"
+
+#~ msgid "-Wno-strict-prototypes is not supported in C++"
+#~ msgstr "C++ da -Wno-strict-prototypes desteklenmiyor"
+
+#~ msgid ""
+#~ "Switches:\n"
+#~ " -include <file> Include the contents of <file> before other files\n"
+#~ " -imacros <file> Accept definition of macros in <file>\n"
+#~ " -iprefix <path> Specify <path> as a prefix for next two options\n"
+#~ " -iwithprefix <dir> Add <dir> to the end of the system include path\n"
+#~ " -iwithprefixbefore <dir> Add <dir> to the end of the main include path\n"
+#~ " -isystem <dir> Add <dir> to the start of the system include path\n"
+#~ msgstr ""
+#~ "Seçenekler:\n"
+#~ " -include DOSYA Diğer dosyalardan önce DOSYA içeriği içerilir\n"
+#~ " -imacros DOSYA DOSYAdaki makrolar kabul edilir\n"
+#~ " -iprefix DOSYAYOLU Aşağıdaki iki seçenek için önek olarak DOSYAYOLU\n"
+#~ " -iwithprefix DÄ°ZÄ°N Sistem include dosya yolunun sonuna DÄ°ZÄ°N eklenir\n"
+#~ " -iwithprefixbefore DÄ°ZÄ°N Ana include dosya yolunun sonuna DÄ°ZÄ°N eklenir\n"
+#~ " -isystem DİZİN Sistem include dosya yolunun başına DİZİN eklenir\n"
+
+#~ msgid ""
+#~ " -idirafter <dir> Add <dir> to the end of the system include path\n"
+#~ " -I <dir> Add <dir> to the end of the main include path\n"
+#~ " -I- Fine-grained include path control; see info docs\n"
+#~ " -nostdinc Do not search system include directories\n"
+#~ " (dirs specified with -isystem will still be used)\n"
+#~ " -nostdinc++ Do not search system include directories for C++\n"
+#~ " -o <file> Put output into <file>\n"
+#~ msgstr ""
+#~ " -idirafter DÄ°ZÄ°N Sistem include dosya yolunun sonuna DÄ°ZÄ°N eklenir\n"
+#~ " -I DÄ°ZÄ°N Ana include dosya yolunun sonuna DÄ°ZÄ°N eklenir\n"
+#~ " -I- Ä°nceden inceye include dosya yolu denetimi;\n"
+#~ " Daha fazla bilgi için belgelere bakınız\n"
+#~ " -nostdinc Sistem include dizinleri için arama yapılmaz\n"
+#~ " (-isystem ile belirtilen dizinler kullanılacak)\n"
+#~ " -nostdinc++ C++ için sistem include dizinleri araması yapılmaz\n"
+#~ " -o DOSYA Çıktı DOSYAya yazılır\n"
+
+#~ msgid ""
+#~ " -trigraphs Support ISO C trigraphs\n"
+#~ " -std=<std name> Specify the conformance standard; one of:\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999, c++98\n"
+#~ " -w Inhibit warning messages\n"
+#~ " -W[no-]trigraphs Warn if trigraphs are encountered\n"
+#~ " -W[no-]comment{s} Warn if one comment starts inside another\n"
+#~ msgstr ""
+#~ " -trigraphs ISO C üçlü harfleri desteklenir\n"
+#~ " -std=<std ismi> Aşağıdaki uyum standartlarından biri belirtilir:\n"
+#~ " gnu89, gnu99, c89, c99, iso9899:1990,\n"
+#~ " iso9899:199409, iso9899:1999, c++98\n"
+#~ " -w Uyarı iletileri engellenir\n"
+#~ " -W[no-]trigraphs Üçlü harfler saptandığında uyarır\n"
+#~ " -W[no-]comment{s} İç içe açıklamalar için uyarı verilir\n"
+
+#~ msgid ""
+#~ " -W[no-]traditional Warn about features not present in traditional C\n"
+#~ " -W[no-]undef Warn if an undefined macro is used by #if\n"
+#~ " -W[no-]import Warn about the use of the #import directive\n"
+#~ msgstr ""
+#~ " -W[no-]traditional Geleneksel C'de bulunmayan özellikler için uyarır\n"
+#~ " -W[no-]undef undef'li bir makro #if ile atanmışsa uyarır\n"
+#~ " -W[no-]import #import yönergesi kullanımı hakkında uyarır\n"
+
+#~ msgid ""
+#~ " -W[no-]error Treat all warnings as errors\n"
+#~ " -W[no-]system-headers Do not suppress warnings from system headers\n"
+#~ " -W[no-]all Enable most preprocessor warnings\n"
+#~ msgstr ""
+#~ " -W[no-]error Tüm uyarılar hata olarak değerlendirilir\n"
+#~ " -W[no-]system-headers Sistem başlık dosyalarından kaynaklanan uyarılar\n"
+#~ " engellenmez\n"
+#~ " -W[no-]all Tüm önişlemci uyarıları verilir\n"
+
+#~ msgid ""
+#~ " -M Generate make dependencies\n"
+#~ " -MM As -M, but ignore system header files\n"
+#~ " -MD Generate make dependencies and compile\n"
+#~ " -MMD As -MD, but ignore system header files\n"
+#~ " -MF <file> Write dependency output to the given file\n"
+#~ " -MG Treat missing header file as generated files\n"
+#~ msgstr ""
+#~ " -M make bağımlılıkları üretilir\n"
+#~ " -MM sistem başlık dosyaları yoksayılarak -M uygulanır\n"
+#~ " -MD make bağımlılıkları üretilir ve derleme yapılır\n"
+#~ " -MMD sistem başlık dosyaları yoksayılarak -MD uygulanır\n"
+#~ " -MF DOSYA Bağımlılıklar DOSYAya yazılır\n"
+#~ " -MG Eksik başlık dosyası üretilen dosyalar olarak\n"
+#~ " deÄŸerlendirilir\n"
+
+#~ msgid ""
+#~ " -MP\t\t\t Generate phony targets for all headers\n"
+#~ " -MQ <target> Add a MAKE-quoted target\n"
+#~ " -MT <target> Add an unquoted target\n"
+#~ msgstr ""
+#~ " -MP Tüm başlık dosyaları için sahte hedefler üretilir\n"
+#~ " -MQ HEDEF Bir MAKE-tırnaklı HEDEF eklenir\n"
+#~ " -MT HEDEF Bir MAKE-tırnaksız HEDEF eklenir\n"
+
+#~ msgid ""
+#~ " -D<macro> Define a <macro> with string '1' as its value\n"
+#~ " -D<macro>=<val> Define a <macro> with <val> as its value\n"
+#~ " -A<question>=<answer> Assert the <answer> to <question>\n"
+#~ " -A-<question>=<answer> Disable the <answer> to <question>\n"
+#~ " -U<macro> Undefine <macro> \n"
+#~ " -v Display the version number\n"
+#~ msgstr ""
+#~ " -D<makro> Değeri '1' dizgesi olan bir <makro> atanır\n"
+#~ " -D<makro>=<değer> Değeri <değer> olan bir <makro> atanır\n"
+#~ " -A<soru>=<cevap> <soru> ya <cevap> olumlanır\n"
+#~ " -A-<soru>=<cevap> <soru> <cevap> etkisiz kılınır\n"
+#~ " -U<makro> <macro> undef yapılır \n"
+#~ " -v Sürüm numarası gösterilir\n"
+
+#~ msgid ""
+#~ " -H Print the name of header files as they are used\n"
+#~ " -C Do not discard comments\n"
+#~ " -dM Display a list of macro definitions active at end\n"
+#~ " -dD Preserve macro definitions in output\n"
+#~ " -dN As -dD except that only the names are preserved\n"
+#~ " -dI Include #include directives in the output\n"
+#~ msgstr ""
+#~ " -H Kullanılan başlık dosyası isimlerini gösterir\n"
+#~ " -C Açıklamalar iptal edilmez\n"
+#~ " -dM Sonuçta etkin olan makro tanımlarını listeler\n"
+#~ " -dD Çıktıda makro tanımlarıda içerilir\n"
+#~ " -dN -dD gibi ancak sadece isimler dışında\n"
+#~ " -dI Çıktıda #include yönergeleri içerilir\n"
+
+#~ msgid ""
+#~ " -f[no-]preprocessed Treat the input file as already preprocessed\n"
+#~ " -ftabstop=<number> Distance between tab stops for column reporting\n"
+#~ " -P Do not generate #line directives\n"
+#~ " -remap Remap file names when including files\n"
+#~ " --help Display this information\n"
+#~ msgstr ""
+#~ " -f[no-]preprocessed Girdi dosyası önişlenmiş olarak değerlendirilir\n"
+#~ " -ftabstop=SAYI Sütunlu raporlamada sekme uzunluğu\n"
+#~ " -P #line yönergeleri üretilmez\n"
+#~ " -remap Dosyalar içerilirken dosya adları yeniden eşlenir\n"
+#~ " --help Bu yardım iletisi gösterilir\n"
+
+#~ msgid "parse error"
+#~ msgstr "ayrıştırma hatası:"
+
+#~ msgid "ISO C forbids the address of a cast expression"
+#~ msgstr "ISO C tür dönüşüm ifadesi adresine izin vermez"
+
+#~ msgid "initializer for static variable is not constant"
+#~ msgstr "durağan değişken için ilklendirici bir sabit değil"
+
+#~ msgid "initializer for static variable uses complicated arithmetic"
+#~ msgstr "durağan değişken için ilklendirici karmaşık aritmetik kullanıyor"
+
+#~ msgid "aggregate initializer is not constant"
+#~ msgstr "küme ilklendiricisi bir sabit değil"
+
+#~ msgid "aggregate initializer uses complicated arithmetic"
+#~ msgstr "küme ilklendiricisi karmaşık aritmetik kullanıyor"
+
+#~ msgid "open %s"
+#~ msgstr "open %s"
+
+#~ msgid "incompatibilities between object file & expected values"
+#~ msgstr "nesne dosyası ile umulan değerler arasında uyumsuzluklar var"
+
+#~ msgid ""
+#~ "\n"
+#~ "Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
+#~ msgstr ""
+#~ "\n"
+#~ "İşlenen sembol tablosu #%d, göreli konumu = 0x%.8lx, cinsi = %s\n"
+
+#~ msgid "string section missing"
+#~ msgstr "dizge bölümü yok"
+
+#~ msgid "section pointer missing"
+#~ msgstr "bölüm göstericisi yok"
+
+#~ msgid "no symbol table found"
+#~ msgstr "hiç sembol tablosu yok"
+
+#~ msgid ""
+#~ "\n"
+#~ "Updating header and load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Başlık ve yük komutları güncelleniyor.\n"
+#~ "\n"
+
+#~ msgid "load command map, %d cmds, new size %ld.\n"
+#~ msgstr "yükleme komutu eşlemi, %d komut, yeni boyut %ld.\n"
+
+#~ msgid ""
+#~ "writing load commands.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "yük komutları yazılıyor.\n"
+#~ "\n"
+
+#~ msgid "close %s"
+#~ msgstr "close %s"
+
+#~ msgid "could not convert 0x%l.8x into a region"
+#~ msgstr "0x%l.8x bir bölge içine dönüştürülemedi"
+
+#~ msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
+#~ msgstr "%s işlev, %d bölge, offset = %ld (0x%.8lx)\n"
+
+#~ msgid "bad magic number"
+#~ msgstr "sihirli sayı hatalı"
+
+#~ msgid "bad header version"
+#~ msgstr "başlık sürümü hatalı"
+
+#~ msgid "bad raw header version"
+#~ msgstr "temel başlık sürümü hatalı"
+
+#~ msgid "raw header buffer too small"
+#~ msgstr "temel başlık tamponu çok küçük"
+
+#~ msgid "old raw header file"
+#~ msgstr "eski temel başlık dosyası"
+
+#~ msgid "unsupported version"
+#~ msgstr "desteklenmeyen sürüm"
+
+#~ msgid "unknown {de,en}code_mach_o_hdr return value %d"
+#~ msgstr "bilinmeyen {de,en}code_mach_o_hdr sonuç değeri %d"
+
+#~ msgid "fstat %s"
+#~ msgstr "fstat %s"
+
+#~ msgid "lseek %s 0"
+#~ msgstr "lseek %s 0"
+
+#~ msgid "read %s"
+#~ msgstr "read %s"
+
+#~ msgid "read %ld bytes, expected %ld, from %s"
+#~ msgstr "%3$s'den %2$ld bayt okunması umulurken %1$ld bayt okundu"
+
+#~ msgid "msync %s"
+#~ msgstr "msync %s"
+
+#~ msgid "munmap %s"
+#~ msgstr "munmap %s"
+
+#~ msgid "write %s"
+#~ msgstr "write %s"
+
+#~ msgid "wrote %ld bytes, expected %ld, to %s"
+#~ msgstr "%3$s'e %2$ld bayt yazılması umulurken %1$ld bayt yazıldı"
+
+#~ msgid "ISO C++ does not permit \"%s\" in #if"
+#~ msgstr "ISO C++ #if içinde \"%s\" kullanımına izin vermez"
+
+#~ msgid "invalid character '%c' in #if"
+#~ msgstr "#if ifadesinde geçersiz karakter '%c'"
+
+#~ msgid "invalid character '\\%03o' in #if"
+#~ msgstr "#if içinde '\\%03o' karakteri geçersiz"
+
+#~ msgid "absolute file name in remap_filename"
+#~ msgstr "remap_filename içinde mutlak dosya ismi"
+
+#~ msgid "%s: Not a directory"
+#~ msgstr "%s: Bir dizin deÄŸil"
+
+#~ msgid "directory name missing after %s"
+#~ msgstr "%s den sonra dizin ismi eksik"
+
+#~ msgid "file name missing after %s"
+#~ msgstr "%s den sonra dosya ismi eksik"
+
+#~ msgid "path name missing after %s"
+#~ msgstr "%s den sonra dosya yolu ismi eksik"
+
+#~ msgid "trigraph ??%c converted to %c"
+#~ msgstr "??%c üçlü harfi %c olarak dönüştürüldü"
+
+#~ msgid "trigraph ??%c ignored"
+#~ msgstr "??%c üçlü harfi yoksayıldı"
+
+#~ msgid "backslash and newline separated by space"
+#~ msgstr "boşlukla ayrılmış tersbölü ve satırsonu karakterleri"
+
+#~ msgid "backslash-newline at end of file"
+#~ msgstr "dosya sonunda tersbölü ve satırsonu"
+
+#~ msgid "\"/*\" within comment"
+#~ msgstr "açıklama içinde \"/*\" "
+
+#~ msgid "%s in preprocessing directive"
+#~ msgstr "önişlemci yönergesi içinde %s"
+
+#~ msgid "no newline at end of file"
+#~ msgstr "dosyanın sonunda satırsonu karakteri yok"
+
+#~ msgid "unknown string token %s\n"
+#~ msgstr "dizge dizgeciÄŸi %s bilinmiyor\n"
+
+#~ msgid "non-hex digit '%c' in universal-character-name"
+#~ msgstr "evrensel karakter isminde '%c' bir onaltılık rakam değil"
+
+#~ msgid "universal-character-name on EBCDIC target"
+#~ msgstr "EBCDIC hedefte evrensel karakter ismi"
+
+#~ msgid "universal-character-name out of range"
+#~ msgstr "evrensel karakter ismi kapsam dışı"
+
+#~ msgid "escape sequence out of range for its type"
+#~ msgstr "önceleme dizgesi türü için kapsam dışı"
+
+#~ msgid "#import is obsolete, use an #ifndef wrapper in the header file"
+#~ msgstr "#import artık kullanılmıyor, yerine başlık dosyası içinde #ifndef sarmalaması kullanın"
+
+#~ msgid "#pragma once is obsolete"
+#~ msgstr "#pragma once eskidi"
+
+#~ msgid "the conditional began here"
+#~ msgstr "koşullu ifade buradan başladı"
+
+#~ msgid "unterminated #%s"
+#~ msgstr "sonlandırılmamış #%s"
+
+#~ msgid "macro \"%s\" is not used"
+#~ msgstr "makro \"%s\" kullanılmamış"
+
+#~ msgid "\"%s\" redefined"
+#~ msgstr "\"%s\" yeniden tanımlanmış"
+
+#~ msgid "this is the location of the previous definition"
+#~ msgstr "bu önceki tanımlamanın yeri"
+
+#~ msgid "((anonymous))"
+#~ msgstr "((anonim))"
+
+#~ msgid "%s: warnings being treated as errors\n"
+#~ msgstr "%s: uyarılar hata olarak ele alınıyor\n"
+
+#~ msgid "At top level:"
+#~ msgstr "Üst düzeyde:"
+
+#~ msgid "In member function `%s':"
+#~ msgstr "Ãœye iÅŸlev `%s':"
+
+#~ msgid "In function `%s':"
+#~ msgstr "`%s' iÅŸlevinde:"
+
+#~ msgid ""
+#~ "Please submit a full bug report,\n"
+#~ "with preprocessed source if appropriate.\n"
+#~ "See %s for instructions.\n"
+#~ msgstr ""
+#~ "Mümkünse önişlemli kaynakla lütfen\n"
+#~ "ayrıntılı bir hata raporu gönderin.\n"
+#~ "İşlemler için %s adresine bakınız.\n"
+
+#~ msgid "In file included from %s:%d"
+#~ msgstr ""
+#~ "Sırayla bir altındaki dosyada içerilerek:\n"
+#~ "\t\t%s:%d"
+
+#~ msgid ""
+#~ ",\n"
+#~ " from %s:%d"
+#~ msgstr ""
+#~ ",\n"
+#~ "\t\t%s:%d"
+
+#~ msgid "internal regno botch: `%s' has regno = %d\n"
+#~ msgstr "iç yazmaç numarası beceriksizce: `%s' regno içeriyor = %d\n"
+
+#~ msgid "support for the DWARF1 debugging format is deprecated"
+#~ msgstr "DWARF1 hata ayıklama biçimi artık desteklenmeyecek"
+
+#~ msgid "can't get current directory"
+#~ msgstr "çalışılan dizin alınamıyor"
+
+#~ msgid "unsupported wide integer operation"
+#~ msgstr "desteklenmeyen uzun tamsayı işlemi"
+
+#~ msgid "mismatched braces in specs"
+#~ msgstr "özellikler içinde eşleşmeyen parantezler"
+
+#~ msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
+#~ msgstr "Telif Hakkı (C) 2001 Free Software Foundation, Inc.\n"
+
+#~ msgid "Could not open basic block file %s.\n"
+#~ msgstr "Temel blok dosyası %s açılamadı.\n"
+
+#~ msgid "Could not open program flow graph file %s.\n"
+#~ msgstr "Program akış diyagramı dosyası %s açılamıyor.\n"
+
+#~ msgid "Could not open data file %s.\n"
+#~ msgstr "%s veri dosyası açılamadı.\n"
+
+#~ msgid "Assuming that all execution counts are zero.\n"
+#~ msgstr "Tüm çalıştırılanların sayısı sıfır kabul ediliyor.\n"
+
+#~ msgid "No executable code associated with file %s.\n"
+#~ msgstr "%s dosyası ile ilişkilendirilecek kod yok.\n"
+
+#~ msgid "didn't use all bb entries of graph, function %s\n"
+#~ msgstr "işlev %s ve diyagramın tüm bb girdileri kullanılmadı\n"
+
+#~ msgid "block_num = %ld, num_blocks = %d\n"
+#~ msgstr "blok_num = %ld, blok_sayısı = %d\n"
+
+#~ msgid "ERROR: unexpected line number %ld\n"
+#~ msgstr "HATA: satır numarası %ld beklenmiyordu\n"
+
+#~ msgid "ERROR: too many basic blocks in function %s\n"
+#~ msgstr "HATA: %s içinde temel blok sayısı çok fazla\n"
+
+#~ msgid "ERROR: out of range line number in function %s\n"
+#~ msgstr "%s işlevindeki satır numarası kapsamdışı\n"
+
+#~ msgid "Could not open source file %s.\n"
+#~ msgstr "%s kaynak dosyası açılamadı.\n"
+
+#~ msgid "Unexpected EOF while reading source file %s.\n"
+#~ msgstr "%s kaynak dosyası okunurken anlaşılmayan dosya sonu.\n"
+
+#~ msgid "Creating %s.\n"
+#~ msgstr "%s oluÅŸturuluyor.\n"
+
+#~ msgid "Name `%s' contains quotes"
+#~ msgstr "`%s' ismi tırnak içeriyor"
+
+#~ msgid "invalid string `%s' in define_cpu_unit"
+#~ msgstr "define_cpu_unit içindeki `%s' dizgesi geçersiz"
+
+#~ msgid "invalid string `%s' in define_query_cpu_unit"
+#~ msgstr "define_query_cpu_unit içindeki `%s' dizgesi geçersiz"
+
+#~ msgid "invalid string `%s' in define_bypass"
+#~ msgstr "define_bypass içindeki `%s' dizgesi geçersiz"
+
+#~ msgid "invalid first string `%s' in exclusion_set"
+#~ msgstr "exclusion_set içindeki ilk `%s' dizgesi geçersiz"
+
+#~ msgid "invalid second string `%s' in exclusion_set"
+#~ msgstr "exclusion_set içindeki ikinci `%s' dizgesi geçersiz"
+
+#~ msgid "invalid first string `%s' in presence_set"
+#~ msgstr "presence_set içindeki ilk `%s' dizgesi geçersiz"
+
+#~ msgid "invalid second string `%s' in presence_set"
+#~ msgstr "presence_set içindeki ikinci `%s' dizgesi geçersiz"
+
+#~ msgid "invalid first string `%s' in absence_set"
+#~ msgstr "absence_set içindeki ilk `%s' dizgesi geçersiz"
+
+#~ msgid "invalid second string `%s' in absence_set"
+#~ msgstr "absence_set içindeki ikinci `%s' dizgesi geçersiz"
+
+#~ msgid "invalid string `%s' in define_automaton"
+#~ msgstr "define_automaton içindeki `%s' dizgesi geçersiz"
+
+#~ msgid "invalid option `%s' in automata_option"
+#~ msgstr "automata_option içindeki `%s' dizgesi geçersiz"
+
+#~ msgid "garbage after ) in reservation `%s'"
+#~ msgstr "rezervasyon `%s' içindeki ) den sonrası bozuk"
+
+#~ msgid "invalid `%s' in reservation `%s'"
+#~ msgstr "`%s' ilerde kullanılmak üzere ayrılırken içindeki `%s' dizgesi geçersiz"
+
+#~ msgid "repetition `%s' <= 1 in reservation `%s'"
+#~ msgstr "rezervasyon `%s' içindeki `%s' tekrar sayısı <=1"
+
+#~ msgid "unit `%s' in exclusion is not declared"
+#~ msgstr "dışlama içindeki birim `%s' bildirilmemiş"
+
+#~ msgid "`%s' in exclusion is not unit"
+#~ msgstr "dışlama içindeki `%s' birim değil"
+
+#~ msgid "unit `%s' excludes itself"
+#~ msgstr "birim `%s' kendini dışlıyor"
+
+#~ msgid "units `%s' and `%s' in exclusion set belong to different automata"
+#~ msgstr "dışlama kümesindeki `%s' ve `%s' birimleri farklı automata'ların üyesi"
+
+#~ msgid "unit `%s' excludes and requires presence of `%s'"
+#~ msgstr "birim `%s' dışlanıyor ve `%s'in varlığını gerektiriyor"
+
+#~ msgid "unit `%s' requires absence and presence of `%s'"
+#~ msgstr "birim `%s', `%s'in varlığını ve yokluğunu gerektirir"
+
+#~ msgid "repeated declaration of automaton `%s'"
+#~ msgstr "automaton `%s' birden fazla bildirilmiÅŸ"
+
+#~ msgid "define_insn_reservation `%s' has negative latency time"
+#~ msgstr "define_insn_reservation `%s' negatif gecikme süresine sahip"
+
+#~ msgid "`%s' is already used as insn reservation name"
+#~ msgstr "`%s' zaten komut rezervasyon ismi olarak kullanılmış"
+
+#~ msgid "define_bypass `%s - %s' has negative latency time"
+#~ msgstr "define_bypass `%s - %s' negatif gecikme süresine sahip"
+
+#~ msgid "automaton `%s' is not declared"
+#~ msgstr "automaton `%s' bildirilmedi"
+
+#~ msgid "define_unit `%s' without automaton when one defined"
+#~ msgstr "tek atamada automaton'suz define_unit `%s'"
+
+#~ msgid "`%s' is declared as cpu unit"
+#~ msgstr "`%s' cpu birimi olarak bildirilmiÅŸ"
+
+#~ msgid "`%s' is declared as cpu reservation"
+#~ msgstr "`%s' iÅŸlemci rezervasyonu olarak bildirilmiÅŸ"
+
+#~ msgid "repeated declaration of unit `%s'"
+#~ msgstr "birim `%s'in bildirimi tekrarlanmış"
+
+#~ msgid "repeated declaration of reservation `%s'"
+#~ msgstr "rezervasyon `%s' birden fazla bildirilmiÅŸ"
+
+#~ msgid "there is no insn reservation `%s'"
+#~ msgstr "komut rezervasyonu `%s' yok"
+
+#~ msgid "the same bypass `%s - %s' is already defined"
+#~ msgstr "aynı bypass `%s - %s' zaten tanımlı"
+
+#~ msgid "bypass `%s - %s' is already defined"
+#~ msgstr "bypass `%s - %s' zaten tanımlı"
+
+#~ msgid "undeclared unit or reservation `%s'"
+#~ msgstr "bildirilmemiÅŸ birim ya da rezervasyon `%s'"
+
+#~ msgid "unit `%s' is not used"
+#~ msgstr "birim `%s' kullanılmamış"
+
+#~ msgid "reservation `%s' is not used"
+#~ msgstr "rezervasyon `%s' kullanılmamış"
+
+#~ msgid "cycle in definition of reservation `%s'"
+#~ msgstr "rezervasyon `%s'in tanımında döngü"
+
+#~ msgid "Units `%s' and `%s' should be in the same automaton"
+#~ msgstr "`%s' ve `%s' aynı automaton içinde olmalıydı"
+
+#~ msgid "-split has no argument."
+#~ msgstr "-split argümansız."
+
+#~ msgid "option `-split' has not been implemented yet\n"
+#~ msgstr "`-split' seçeneği henüz programlanmadı\n"
+
+#~ msgid "Automaton `%s': Insn `%s' will never be issued"
+#~ msgstr "Automaton `%s': Komut `%s' hiç kullanılmayacak"
+
+#~ msgid "Insn `%s' will never be issued"
+#~ msgstr "Komut `%s' hiç kullanılmayacak"
+
+#~ msgid "Errors in DFA description"
+#~ msgstr "DFA açıklamasında hatalar var"
+
+#~ msgid "Error in writing DFA description file %s"
+#~ msgstr "DFA açıklama dosyası %s yazılırken hata"
+
+#~ msgid "No input file name."
+#~ msgstr "Girdi dosyası yok."
+
+#~ msgid "Profile does not match flowgraph of function %s (out of date?)"
+#~ msgstr "Profil %s işlevinin akış grafiği ile uyumsuz (güncel olmayabilir mi?)"
+
+#~ msgid ".da file corrupted"
+#~ msgstr ".da dosyası bozulmuş"
+
+#~ msgid "Generate STABS format debug info"
+#~ msgstr "STABS biçimi hata ayıklama bilgisi üretir"
+
+#~ msgid "Generate extended STABS format debug info"
+#~ msgstr "Gelişmiş STABS biçimi hata ayıklama bilgisi üretir"
+
+#~ msgid "Generate DWARF-1 format debug info"
+#~ msgstr "DWARF-1 biçimi hata ayıklama bilgisi üretir"
+
+#~ msgid "Generate extended DWARF-1 format debug info"
+#~ msgstr "Gelişmiş DWARF-1 biçimi hata ayıklama bilgisi üretir"
+
+#~ msgid "Generate DWARF-2 debug info"
+#~ msgstr "DWARF-2 biçimi hata ayıklama bilgisi üretir"
+
+#~ msgid "Generate XCOFF format debug info"
+#~ msgstr "XCOFF biçimi hata ayıklama bilgisi üretir"
+
+#~ msgid "Generate extended XCOFF format debug info"
+#~ msgstr "Gelişmiş XCOFF biçimi hata ayıklama bilgisi üretir"
+
+#~ msgid "Generate COFF format debug info"
+#~ msgstr "COFF biçimi hata ayıklama bilgisi üretilir"
+
+#~ msgid "Generate VMS format debug info"
+#~ msgstr "VMS biçimi hata ayıklama bilgisi üretilir"
+
+#~ msgid "Consider all mem refs through pointers as volatile"
+#~ msgstr ""
+#~ "Tüm göstericili bellek referanslarının anlık\n"
+#~ " olduğu varsayılır"
+
+#~ msgid "Consider all mem refs to global data to be volatile"
+#~ msgstr ""
+#~ "Global verilerin tüm bellek referanslarının anlık\n"
+#~ " olduğu varsayılır"
+
+#~ msgid "Consider all mem refs to static data to be volatile"
+#~ msgstr ""
+#~ "Statik verilerin tüm bellek referanslarının anlık\n"
+#~ " olduğu varsayılır"
+
+#~ msgid "Integrate simple functions into their callers"
+#~ msgstr "Basit işlevler onları çağıranların içine gömülür"
+
+#~ msgid "Output GNU ld formatted global initializers"
+#~ msgstr "GNU ld biçimli genel ilklendiricileri çıktılar"
+
+#~ msgid "Enable SSA optimizations"
+#~ msgstr "SSA eniyilemesi etkinleÅŸtirilir"
+
+#~ msgid "Enable SSA conditional constant propagation"
+#~ msgstr "SSA koÅŸullu sabit giriÅŸimi etkinleÅŸtirilir"
+
+#~ msgid "Enable aggressive SSA dead code elimination"
+#~ msgstr "Girgin SSA ölü kod elemesi etkinleştirilir"
+
+#~ msgid "Compile just for ISO C90"
+#~ msgstr "Sadece ISO C90 için derleme yapılır"
+
+#~ msgid "Determine language standard"
+#~ msgstr "Dil standartı saptanır"
+
+#~ msgid "Make bit-fields by unsigned by default"
+#~ msgstr "Öntanımlı olarak bit alanları unsigned yapılır"
+
+#~ msgid "Allow different types as args of ? operator"
+#~ msgstr ""
+#~ "? işlecinin argümanları olarak farklı türlere\n"
+#~ " izin verilir"
+
+#~ msgid "Allow the use of $ inside identifiers"
+#~ msgstr "Belirteçlerin içinde $ kullanımına izin verilir"
+
+#~ msgid "Use the smallest fitting integer to hold enums"
+#~ msgstr ""
+#~ "enum türünü saklamada mümkün en küçük tamsayı tür\n"
+#~ " kullanılır"
+
+#~ msgid "Enable most warning messages"
+#~ msgstr "Uyarı sıklığı iletileri etkinleştirilir"
+
+#~ msgid "Warn if nested comments are detected"
+#~ msgstr "İçiçe açıklamalar saptandığında uyarır"
+
+#~ msgid "Don't warn about too many arguments to format functions"
+#~ msgstr ""
+#~ "biçimleme işlevlerine çok fazla argüman\n"
+#~ " verildiÄŸinde uyarmaz"
+
+#~ msgid "Warn about non-string-literal format strings"
+#~ msgstr ""
+#~ "Dizge olmayan sabit biçimleme dizgeleri hakkında\n"
+#~ " uyarır"
+
+#~ msgid "Warn about constructs whose meanings change in ISO C"
+#~ msgstr "ISO C'de anlamı değişen kurucular hakkında uyarır"
+
+#~ msgid "Warn when trigraphs are encountered"
+#~ msgstr "Üçlü harfler saptandığında uyarı verilir"
+
+#~ msgid "Mark strings as 'const char *'"
+#~ msgstr "Dizgeler 'const char *' olarak imlenir"
+
+#~ msgid " -pedantic-errors Like -pedantic except that errors are produced\n"
+#~ msgstr " -pedantic-errors Üretilen hatalar dışında -pedantic gibi\n"
+
+#~ msgid " -w Suppress warnings\n"
+#~ msgstr " -w Uyarılar engellenir\n"
+
+#~ msgid " -W Enable extra warnings\n"
+#~ msgstr " -W Fazladan uyarılar da verilir\n"
+
+#~ msgid " -Wunused Enable unused warnings\n"
+#~ msgstr " -Wunused Faydasız uyarılar da verilir\n"
+
+#~ msgid " -p Enable function profiling\n"
+#~ msgstr " -p İşlev ayrımlaması etkinleştirilir\n"
+
+#~ msgid " -version Display the compiler's version\n"
+#~ msgstr " -version Derleyicinin sürüm bilgileri gösterilir\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "Language specific options:\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Dile özel seçenekler:\n"
+
+#~ msgid " %-23.23s [undocumented]\n"
+#~ msgstr " %-23.23s [belgelenemeyen]\n"
+
+#~ msgid ""
+#~ "\n"
+#~ "There are undocumented %s specific options as well.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Halen belgelenememiş %s seçenek daha var.\n"
+
+#~ msgid ""
+#~ "\n"
+#~ " Options for %s:\n"
+#~ msgstr ""
+#~ "\n"
+#~ " %s seçenekleri:\n"
+
+#~ msgid "unrecognized option `%s'"
+#~ msgstr "`%s' seçeneği bilinmiyor"
+
+#~ msgid "-Wid-clash-LEN is no longer supported"
+#~ msgstr "-Wid-clash-UZUNLUK artık desteklenmiyor."
+
+#~ msgid "use -gdwarf -g%d for DWARF v1, level %d"
+#~ msgstr "DWARF v1, %2$d seviyesi için -gdwarf -g%1$d kullanın"
+
+#~ msgid "use -gdwarf-2 for DWARF v2"
+#~ msgstr "DWARF v2 için -gdwarf-2 kullanın"
+
+#~ msgid "ignoring option `%s' due to invalid debug level specification"
+#~ msgstr "geçersiz hata ayıklama özelliğinden dolayı `%s' seçeneği yoksayılıyor"
+
+#~ msgid "`%s': unknown or unsupported -g option"
+#~ msgstr "`%s': -g seçeneği bilinmiyor ya da desteklenmiyor"
+
+#~ msgid "`%s' ignored, conflicts with `-g%s'"
+#~ msgstr "`-g%2$s' ile çeliştiği için `%1$s' yoksayıldı"
+
+#~ msgid "-param option missing argument"
+#~ msgstr "-param seçeneğinde argüman eksik"
+
+#~ msgid "invalid --param option: %s"
+#~ msgstr "geçersiz --param seçeneği: %s"
+
+#~ msgid "(it is valid for %s but not the selected language)"
+#~ msgstr "(%s için geçerli ama o dil seçilmedi)"
+
+#~ msgid "#`%s' not supported by %s#"
+#~ msgstr "#`%s', %s# tarafından desteklenmiyor"
+
+#~ msgid "The maximum number of instructions by repeated inlining before gcc starts to throttle inlining"
+#~ msgstr ""
+#~ "GCC özümlemeyi kısmaya başlamadan önce\n"
+#~ " tekrarlanan özümlemeye göre en çok asm\n"
+#~ " komutu sayısı"
+
+#~ msgid "The slope of the linear function throttling inlining after the recursive inlining limit has been reached is given by the negative reciprocal value of this parameter"
+#~ msgstr "Ardışık içerilme limitine ulaştıktan sonra içerilmeyi frenleyen lineer işlevin eğimi, bu parametrenin negatif ters çarpanı olarak verilmiş"
+
+#~ msgid "The number of instructions in a single functions still eligible to inlining after a lot recursive inlining"
+#~ msgstr ""
+#~ "Bir miktar ardışık özümlemeden sonraki\n"
+#~ " özümlemede hala seçilebilir olan tek\n"
+#~ " bir işlev içindeki asm komutu sayısı"
+
+#~ msgid "Use Mingw32 interface"
+#~ msgstr "Mingw32 arayüzü kullanılır"
+
+#~ msgid "Use Cygwin interface"
+#~ msgstr "Cygwin arayüzü kullanılır"
+
+#~ msgid "Use bare Windows interface"
+#~ msgstr "Yalın Windows arayüzü kullanılır"
+
+#~ msgid "const objects cannot go in .sdata/.sbss"
+#~ msgstr "const nesneleri .sdata/.sbss içinde bulunamaz"
+
+#~ msgid "Generate code for a Sun FPA"
+#~ msgstr "Sun FPA için kod üretilir"
+
+#~ msgid "Do not generate code for a Sun FPA"
+#~ msgstr "Sun FPA için kod üretilmez"
+
+#~ msgid "Generate code for a Sun Sky board"
+#~ msgstr "Sun Sky kartı için kod üretilir"
+
+#~ msgid "Do not use Sky linkage convention"
+#~ msgstr "Sky ilintileme uzlaşımı kullanılmaz"
+
+#~ msgid "Generate code for a 68881"
+#~ msgstr "68881 için kod üretilir"
+
+#~ msgid "internal gcc monitor: short-branch(%x)"
+#~ msgstr "gcc iç monitörü: short-branch(%x)"
+
+#~ msgid "internal gcc error: Can't express symbolic location"
+#~ msgstr "gcc iç hatası: Sembolik konum ifade edilemiyor"
+
+#~ msgid "argument #%d is a structure"
+#~ msgstr "%d. argüman bir yapı"
+
+#~ msgid "%%R not followed by %%B/C/D/E"
+#~ msgstr "%%R den sonra %%B/C/D/E gelmiyor"
+
+#~ msgid "invalid %%Q value"
+#~ msgstr "%%Q değeri geçersiz"
+
+#~ msgid "invalid %%o value"
+#~ msgstr "%%o değeri geçersiz"
+
+#~ msgid "invalid %%s/S value"
+#~ msgstr "%%s/S değeri geçersiz"
+
+#~ msgid "invalid %%B value"
+#~ msgstr "%%B değeri geçersiz"
+
+#~ msgid "`%%d' operand isn't a register"
+#~ msgstr "`%%d' terimi bir yazmaç değil"
+
+#~ msgid "operand is r0"
+#~ msgstr "veri öğesi: r0"
+
+#~ msgid "operand is const_double"
+#~ msgstr "veri öğesi: const_double"
+
+#~ msgid "-mtrap-large-shift and -mhandle-large-shift are incompatible"
+#~ msgstr "-mtrap-large-shift ve -mhandle-large-shift uyumsuz"
+
+#~ msgid "invalid option `-mshort-data-%s'"
+#~ msgstr "`-mshort-data-%s' seçeneği geçersiz"
+
+#~ msgid "-mshort-data-%s is too large "
+#~ msgstr "-mshort-data-%s çok büyük"
+
+#~ msgid "-mshort-data-%s and PIC are incompatible"
+#~ msgstr "-mshort-data-%s ve PIC uyumsuz"
+
+#~ msgid "bad value (%s) for -mips switch"
+#~ msgstr "-mips seçeneğinin değeri (%s) hatalı"
+
+#~ msgid "invalid option `entry%s'"
+#~ msgstr "`entry%s' seçeneği geçersiz"
+
+#~ msgid "-mentry is only meaningful with -mips-16"
+#~ msgstr "-mentry sadece -mips-16 ile anlamlıdır"
+
+#~ msgid "MIPS ECOFF format does not allow changing filenames within functions with #line"
+#~ msgstr "MIPS ECOFF biçimi dosya isimlerinin #line'lı işlevlerde değiştirilmesine izin vermez"
+
+#~ msgid "fp_offset (%ld) or end_offset (%ld) is less than zero"
+#~ msgstr "fp_offset (%ld) veya end_offset (%ld) sıfırdan küçük."
+
+#~ msgid "Trap on integer divide overflow"
+#~ msgstr "Tamsayı bölme taşması yakalanır"
+
+#~ msgid "Don't trap on integer divide overflow"
+#~ msgstr "Tamsayı bölme taşması yakalanmaz"
+
+#~ msgid "Use mips16 entry/exit psuedo ops"
+#~ msgstr "mips16 giriş/çıkış sanal op'larını kullanır"
+
+#~ msgid "Don't use MIPS16 instructions"
+#~ msgstr "MIPS16 komutları kullanılmaz"
+
+#~ msgid "invalid %%z value"
+#~ msgstr "%%z değeri geçersiz"
+
+#~ msgid "invalid %%Z value"
+#~ msgstr "%%Z değeri geçersiz"
+
+#~ msgid "invalid %%j value"
+#~ msgstr "%%j değeri geçersiz"
+
+#~ msgid "can't have varargs with -mfp-arg-in-fp-regs"
+#~ msgstr "-mfp-arg-in-fp-regs ile varargs olamaz"
+
+#~ msgid "unknown -mvrsave= option specified: '%s'"
+#~ msgstr "bilinmeyen -mvrsave= seçeneği belirtilmiş: '%s'"
+
+#~ msgid "64 bit mode"
+#~ msgstr "64 bitlik kip"
+
+#~ msgid "31 bit mode"
+#~ msgstr "31 bitlik kip"
+
+#~ msgid "Use the Xtensa code density option"
+#~ msgstr "Xtensa kod yoğunluğu seçeneği kullanılır"
+
+#~ msgid "Do not use the Xtensa code density option"
+#~ msgstr "Xtensa kod yoğunluğu seçeneği kullanılmaz"
+
+#~ msgid "Use the Xtensa MAC16 option"
+#~ msgstr "Xtensa MAC16 seçeneği kullanılır"
+
+#~ msgid "Do not use the Xtensa MAC16 option"
+#~ msgstr "Xtensa MAC16 seçeneği kullanılmaz"
+
+#~ msgid "Use the Xtensa MUL16 option"
+#~ msgstr "Xtensa MUL16 seçeneği kullanılır"
+
+#~ msgid "Do not use the Xtensa MUL16 option"
+#~ msgstr "Xtensa MUL16 seçeneği kullanılmaz"
+
+#~ msgid "Use the Xtensa MUL32 option"
+#~ msgstr "Xtensa MUL32 seçeneği kullanılır"
+
+#~ msgid "Do not use the Xtensa MUL32 option"
+#~ msgstr "Xtensa MUL32 seçeneği kullanılmaz"
+
+#~ msgid "Use the Xtensa NSA option"
+#~ msgstr "Xtensa NSA seçeneği kullanılır"
+
+#~ msgid "Do not use the Xtensa NSA option"
+#~ msgstr "Xtensa NSA seçeneği kullanılmaz"
+
+#~ msgid "Use the Xtensa MIN/MAX option"
+#~ msgstr "Xtensa MIN/MAX seçeneği kullanılır"
+
+#~ msgid "Do not use the Xtensa MIN/MAX option"
+#~ msgstr "Xtensa MIN/MAX seçeneği kullanılmaz"
+
+#~ msgid "Use the Xtensa SEXT option"
+#~ msgstr "Xtensa SEXT seçeneği kullanılır"
+
+#~ msgid "Do not use the Xtensa SEXT option"
+#~ msgstr "Xtensa SEXT seçeneği kullanılmaz"
+
+#~ msgid "Use the Xtensa boolean register option"
+#~ msgstr "Xtensa iki terimli yazmaç seçeneği kullanılır"
+
+#~ msgid "Do not use the Xtensa boolean register option"
+#~ msgstr "Xtensa iki terimli yazmaç seçeneği kullanılmaz"
+
+#~ msgid "Use the Xtensa floating-point unit"
+#~ msgstr "Xtensa kayan nokta aritmetiği kullanılır"
+
+#~ msgid "Do not use the Xtensa floating-point unit"
+#~ msgstr "Xtensa kayan nokta aritmetiği kullanılmaz"
+
+#~ msgid "Serialize volatile memory references with MEMW instructions"
+#~ msgstr "MEMW komutlu oynak bellek başvuruları üretilir"
+
+#~ msgid "Do not serialize volatile memory references with MEMW instructions"
+#~ msgstr "MEMW komutlu oynak bellek başvuruları üretilmez"
+
+#~ msgid "type of `%E' does not match destructor type `%T' (type was `%T')"
+#~ msgstr "`%E' türü yıkıcı türü `%T' ile eşleşmiyor (tür `%T' idi)"
+
+#~ msgid "`%D' is a namespace"
+#~ msgstr "`%D' bir isim alanı"
+
+#~ msgid "base object `%E' of scoped method call is of non-aggregate type `%T'"
+#~ msgstr "amaçlı yöntem çağrısının taban nesnesi `%E' yeni sınıf oluşturamayan `%T' türününkidir"
+
+#~ msgid "destructors take no parameters"
+#~ msgstr "yıkıcılar parametre almaz"
+
+#~ msgid "destructor name `~%T' does not match type `%T' of expression"
+#~ msgstr "yıkıcı ismi `~%T' ifadenin türü `%T' ile eşleşmiyor"
+
+#~ msgid "%s %+#D%s"
+#~ msgstr "%s %+#D%s"
+
+#~ msgid "`%D' must be declared before use"
+#~ msgstr "`%D' kullanmadan önce bildirilmiş olmalı"
+
+#~ msgid " initializing argument %P of `%D' from result of `%D'"
+#~ msgstr " `%D'nin %P argümanı `%D'nin sonucundan ilklendiriliyor "
+
+#~ msgid " initializing temporary from result of `%D'"
+#~ msgstr " geçici olarak `%D'nin sonucundan ilklendiriliyor"
+
+#~ msgid "cannot receive objects of non-POD type `%#T' through `...'"
+#~ msgstr "POD olmayan `%#T' türünün nesneleri `...' üzerinden alınamaz"
+
+#~ msgid "field `%D' invalidly declared offset type"
+#~ msgstr "alan `%D' ile geçersiz olarak göreli konum türü bildirildi"
+
+#~ msgid "push %s level %p line %d\n"
+#~ msgstr "%s %p seviyesinde %d. satırda basıldı (push)\n"
+
+#~ msgid "pop %s level %p line %d\n"
+#~ msgstr "%s %p seviyesinde %d. satırda çekildi (pop)\n"
+
+#~ msgid "suspend %s level %p line %d\n"
+#~ msgstr "%s %p seviyesinde %d. satırda askıda\n"
+
+#~ msgid "resume %s level %p line %d\n"
+#~ msgstr "%s %p seviyesinde %d. satırda yeniden başladı\n"
+
+#~ msgid "lookup of `%D' finds `%#D'"
+#~ msgstr "`%D' araması `%#D' buluyor"
+
+#~ msgid " instead of `%D' from dependent base class"
+#~ msgstr " bağımlı taban sınıftan `%D' yerine"
+
+#~ msgid "lookup of `%D' in the scope of `%#T' (`%#D') does not match lookup in the current scope (`%#D')"
+#~ msgstr "`%D' nin `%#T' (`%#D') bağlamındaki araması şu anki bağlam (`%#D') içindeki arama ile uyuşmuyor"
+
+#~ msgid "invalid declarator"
+#~ msgstr "bildirim geçersiz"
+
+#~ msgid "`%T' is implicitly a typename"
+#~ msgstr "`%T' dolaylı bir tür ismidir"
+
+#~ msgid "parameter `%D' invalidly declared offset type"
+#~ msgstr "parametre `%D' geçersiz olarak göreli konum türünde bildirilmiş"
+
+#~ msgid "`%s %T' declares a new type at namespace scope"
+#~ msgstr "isim alanı bağlamında `%s %T' bir yeni tür bildiriyor"
+
+#~ msgid " names from dependent base classes are not visible to unqualified name lookup - to refer to the inherited type, say `%s %T::%T'"
+#~ msgstr " bağımlı taban sınıflardaki isimler nitelemesiz isim aramasında görünür değil - kalıt türe başvurması için `%s %T::%T' denebilir"
+
+#~ msgid "base class `%T' has incomplete type"
+#~ msgstr "taban sınıf `%T' içi boş türde"
+
+#~ msgid "semicolon missing after declaration of `%#T'"
+#~ msgstr "`%T' bildiriminden sonra ; yok"
+
+#~ msgid "template `%#D' instantiated in file without #pragma interface"
+#~ msgstr "şablon `%#D' dosya içinde #pragma arabirimsiz gerçeklendi"
+
+#~ msgid "template `%#D' defined in file without #pragma interface"
+#~ msgstr "şablon `%#D' dosya içinde #pragma arabirimsiz tanımlandı"
+
+#~ msgid "parser may be lost: is there a '{' missing somewhere?"
+#~ msgstr "ayrıştırıcı kayıp olabilir: bir yerlerde kayıp '{' var mı?"
+
+#~ msgid "invalid data member initialization"
+#~ msgstr "geçersiz veri üyesi ilklendirmesi"
+
+#~ msgid "(use `=' to initialize static data members)"
+#~ msgstr "(statik veri üyelerini ilklendirmek için `=' kullanın)"
+
+#~ msgid "too many initialization functions required"
+#~ msgstr "çok fazla ilklendirme işlevi gerekli"
+
+#~ msgid "`%D' is not a namespace"
+#~ msgstr "`%D' bir isim alanı değil"
+
+#~ msgid "a using-declaration cannot specify a template-id. Try `using %T::%D'"
+#~ msgstr "bir using bildirimi bir ÅŸablon kimliÄŸi belirtemez. `using %T::%D' deneyin"
+
+#~ msgid "`%T' does not have a class or union named `%D'"
+#~ msgstr "`%T' `%D' isminde bir sınıf ya da birleşik yapı içermiyor"
+
+#~ msgid "`%T' is not a class or union type"
+#~ msgstr "`%T' bir sınıf ya da birleşik yapı değil"
+
+#~ msgid "`%s' not supported by %s"
+#~ msgstr "`%s', %s tarafından desteklenmiyor"
+
+#~ msgid "(static %s for %s)"
+#~ msgstr "(%2$s için statik %1$s)"
+
+#~ msgid "\\x%x"
+#~ msgstr "\\x%x"
+
+#~ msgid "%s: In instantiation of `%s':\n"
+#~ msgstr "%s: `%s' gerçeklemesi içinde:\n"
+
+#~ msgid "%s:%d: instantiated from `%s'\n"
+#~ msgstr "%s:%d: `%s' den gerçeklenmiş\n"
+
+#~ msgid "%s:%d: instantiated from here\n"
+#~ msgstr "%s:%d: buradan gerçeklenmiş\n"
+
+#~ msgid "previous friend declaration of `%D'"
+#~ msgstr "önceki `%D' kardeş bildirimi"
+
+#~ msgid "cannot call destructor `%T::~%T' without object"
+#~ msgstr "yıkıcı `%T::~%T' nesnesiz çağrılamaz"
+
+#~ msgid "invalid use of member `%D'"
+#~ msgstr "geçersiz üye `%D' kullanımı"
+
+#~ msgid "no method `%T::%D'"
+#~ msgstr "`%T::%D' diye bir yöntem yok"
+
+#~ msgid "object missing in use of pointer-to-member construct"
+#~ msgstr "üye göstericisi oluşumu kullanımında nesne eksik"
+
+#~ msgid "member `%D' is non-static but referenced as a static member"
+#~ msgstr "üye `%D' statik değil ama bir statik üye olarak başvurulmuş"
+
+#~ msgid "object missing in `%E'"
+#~ msgstr "`%E' içinde nesne eksik"
+
+#~ msgid "initializer list being treated as compound expression"
+#~ msgstr "ilklendirici listesi bileşik ifade varsayılıyor"
+
+#~ msgid "cannot declare references to references"
+#~ msgstr "referanslara referans bildirilemez"
+
+#~ msgid "cannot declare pointers to references"
+#~ msgstr "referanslara gösterici bildirilemez"
+
+#~ msgid "type name expected before `&'"
+#~ msgstr "`&' den önce tür ismi gerekli"
+
+#~ msgid "semicolon missing after %s declaration"
+#~ msgstr "%s bildiriminden sonra ; yok"
+
+#~ msgid "semicolon missing after declaration of `%T'"
+#~ msgstr "`%T' bildiriminden sonra ; yok"
+
+#~ msgid "`::%D' undeclared (first use here)"
+#~ msgstr "`::%D' bildirilmemiş (burada ilk kullanımı)"
+
+#~ msgid "use of linkage spec `%D' is different from previous spec `%D'"
+#~ msgstr "özellik ilintilemesi `%D' kullanımı önceki özellik `%D' den farklı"
+
+#~ msgid "no base or member initializers given following ':'"
+#~ msgstr "':' ile bir temel ya da üye ilklendirici verilmemiş"
+
+#~ msgid "use of template qualifier outside template"
+#~ msgstr "şablon niteleyicisinin şablon dışında kullanımı"
+
+#~ msgid "ISO C++ forbids an empty condition for `%s'"
+#~ msgstr "ISO C++ `%s' için bir boş koşula izin vermez"
+
+#~ msgid "definition of class `%T' in condition"
+#~ msgstr "koşul içinde class `%T' tanımı"
+
+#~ msgid "definition of enum `%T' in condition"
+#~ msgstr "koşul içinde enum `%T' tanımı"
+
+#~ msgid "definition of array `%#D' in condition"
+#~ msgstr "koşul içinde dizi `%#D' tanımı"
+
+#~ msgid "old style placement syntax, use () instead"
+#~ msgstr "eski tarz yerleştirme sözdizimi, yerine () kullanın"
+
+#~ msgid "`%T' is not a valid expression"
+#~ msgstr "`%T' bir geçerli ifade değil"
+
+#~ msgid "initialization of new expression with `='"
+#~ msgstr "new ifadesinin `=' ile ilklendirilmesi"
+
+#~ msgid "invalid use of template `%D'"
+#~ msgstr "`%D' şablonunun kullanımı geçersiz"
+
+#~ msgid "sigof type specifier"
+#~ msgstr "sigof tür belirteci"
+
+#~ msgid "`sigof' applied to non-aggregate expression"
+#~ msgstr "küme olmayan ifadeye `sigof' uygulanmış"
+
+#~ msgid "`sigof' applied to non-aggregate type"
+#~ msgstr "küme olmayan türe `sigof' uygulanmış"
+
+#~ msgid "qualified name does not name a class"
+#~ msgstr "nitelenmiş isim bir sınıf ismi değil"
+
+#~ msgid "storage class specifier `%s' not allowed after struct or class"
+#~ msgstr "yapı ya da sınıftan sonra saklama sınıfı belirteci `%s' kullanılamaz"
+
+#~ msgid "type specifier `%s' not allowed after struct or class"
+#~ msgstr "yapı ya da sınıftan sonra tür belirteci `%s' kullanılamaz"
+
+#~ msgid "type qualifier `%s' not allowed after struct or class"
+#~ msgstr "yapı ya da sınıftan sonra `%s' tür niteleyicisine izin verilmez "
+
+#~ msgid "no body nor ';' separates two class, struct or union declarations"
+#~ msgstr "iki sınıf, yapı ya da birleşik yapı bildirimlerini ne gövdesi ne de ';' ayırır"
+
+#~ msgid "no bases given following `:'"
+#~ msgstr "':' ile bir temel verilmemiÅŸ"
+
+#~ msgid "multiple access specifiers"
+#~ msgstr "çoklu erişim belirteçleri"
+
+#~ msgid "multiple `virtual' specifiers"
+#~ msgstr "çoklu `virtual' belirteçleri"
+
+#~ msgid "missing ';' before right brace"
+#~ msgstr "'}' dan önce ';' eksik"
+
+#~ msgid "ISO C++ forbids array dimensions with parenthesized type in new"
+#~ msgstr "ISO C++ new içinde parantezli dizi indislemeye izin vermez"
+
+#~ msgid "`%T' is not a class or namespace"
+#~ msgstr "`%T' bir sınıf ya da isim alanı değil"
+
+#~ msgid "ISO C++ forbids label declarations"
+#~ msgstr "ISO C++ etiket bildirimlerine izin vermez"
+
+#~ msgid "label must be followed by statement"
+#~ msgstr "etiketi deyim izlemeli"
+
+#~ msgid "must have at least one catch per try block"
+#~ msgstr "her deneme bloğu için en azından bir yakalama içermeli"
+
+#~ msgid "ISO C++ forbids compound statements inside for initializations"
+#~ msgstr "ISO C++ bileşik deyimler içeren ilklendirmelere izin vermez"
+
+#~ msgid "possibly missing ')'"
+#~ msgstr "galiba ')' eksik"
+
+#~ msgid "type specifier omitted for parameter"
+#~ msgstr "parametre için tür belirteci ihmal edildi"
+
+#~ msgid "`%E' is not a type, use `typename %E' to make it one"
+#~ msgstr "`%E' bir tür değil, tür yapmak için `typename %E' kullanın"
+
+#~ msgid "no type `%D' in `%T'"
+#~ msgstr "`%T' içinde `%D' isminde bir tür yok"
+
+#~ msgid "type specifier omitted for parameter `%E'"
+#~ msgstr "parametre `%E' için tür belirteci ihmal edildi"
+
+#~ msgid "type `%T' composed from a local class is not a valid template-argument"
+#~ msgstr "bir yerel sınıfan oluşturulan `%T' geçerli bir şablon argümanı değil"
+
+#~ msgid "assignment to non-static member `%D' of enclosing class `%T'"
+#~ msgstr "`%D' statik olmayan ataması, `%T' sınıfında"
+
+#~ msgid "adjusting pointers for covariant returns"
+#~ msgstr "ortak değişen dönüşler için göstericiler ayarlanıyor"
+
+#~ msgid " overriding `%#D' (must be pointer or reference to class)"
+#~ msgstr " `%#D' değiştiriliyor (gösterici ya da sınıfa referans olmalı)"
+
+#~ msgid " overriding `%#D' (must use pointer or reference)"
+#~ msgstr " `%#D' değiştiriliyor (gösterici ya da referans olmalı)"
+
+#~ msgid "ISO C++ does not permit named return values"
+#~ msgstr "ISO C++ isimli dönen değerlere izin vermez"
+
+#~ msgid "return identifier `%D' already in place"
+#~ msgstr "dönüş belirteci `%D' zaten yerinde"
+
+#~ msgid "can't redefine default return value for constructors"
+#~ msgstr "kurucular için öntanımlı dönüş değeri tekrar tanımlanamaz"
+
+#~ msgid "calling type `%T' like a method"
+#~ msgstr "tür `%T' çağrısı tıpkı bir yöntem gibi"
+
+#~ msgid "destructor specifier `%T::~%T()' must have matching names"
+#~ msgstr "yıkıcı belirteci `%T::~%T()' uyumlu isimlere sahip olmalı"
+
+#~ msgid "identifier name `%s' conflicts with GNU C++ internal naming strategy"
+#~ msgstr "tanıtıcı ismi `%s' GNU C++ dahili adlandırma stratejisi ile çelişiyor"
+
+#~ msgid "parse error at end of saved function text"
+#~ msgstr "kayıtlı işlev metninin sonunda ayrıştırma hatası"
+
+#~ msgid "%Hend of file read inside definition"
+#~ msgstr "%Hdosya sonu tanım içinde okundu"
+
+#~ msgid "parse error in method specification"
+#~ msgstr "yöntem özelliklerinde ayrıştırma hatası"
+
+#~ msgid "function body for constructor missing"
+#~ msgstr "kurucu için işlev gövdesi yok"
+
+#~ msgid "circular dependency in default args of `%#D'"
+#~ msgstr "`%#D' lik öntanımlı argümanlarda döngüsel bağımlılık"
+
+#~ msgid "invalid type `%T' for default argument to `%T'"
+#~ msgstr "`%T'ye öntanımlı argüman olarak geçersiz `%T' türü"
+
+#~ msgid "%s before `%c'"
+#~ msgstr "`%2$c' den önce %1$s"
+
+#~ msgid "%s before `\\%o'"
+#~ msgstr "`\\%2$o' den önce %1$s"
+
+#~ msgid "%s before `%s' token"
+#~ msgstr "`%2$s' dizgeciğinden önce %1$s"
+
+#~ msgid "ISO C++ prohibits conversion from `%#T' to `(...)'"
+#~ msgstr "ISO C++ `%#T' den `(...)' ya dönüşümü yasaklar"
+
+#~ msgid "invalid application of `%s' to non-static member"
+#~ msgstr "statik olmayab üyeye `%s' uygulanması geçersiz"
+
+#~ msgid "sizeof applied to a bit-field"
+#~ msgstr "sizeof bir bit alanına uygulandı"
+
+#~ msgid "destructor specifier `%T::~%T' must have matching names"
+#~ msgstr "yıkıcı belirteci `%T::~%T' uyumlu isimlere sahip olmalı"
+
+#~ msgid "parameter type of called function is incomplete"
+#~ msgstr "çağrılan işlevin parametre türünün içi boş"
+
+#~ msgid "ISO C++ forbids using pointer to a member in subtraction"
+#~ msgstr "ISO C++ bir çıkartma işlemi içinde bir üye göstericisi kullanımına izin vermez"
+
+#~ msgid "reinterpret_cast from `%T' to `%T' casts away const (or volatile)"
+#~ msgstr "`%T' türünden `%T' türüne yeniden yorumlamalı dönüşüm const (ya da volatile) dışı dönüşüm yapıyor"
+
+#~ msgid "return-statement with no value, in function declared with a non-void return type"
+#~ msgstr "void olmayan dönen türlü işlevde return deyimi değer almamış"
+
+#~ msgid "return-statement with a value, in function declared with a void return type"
+#~ msgstr "void dönüşlü bildirilmiş işlevde return deyiminde bir değer var"
+
+#~ msgid "comma expression used to initialize return value"
+#~ msgstr "dönen değeri ilklendirirken virgüllü ifadeler kullanılmış"
+
+#~ msgid "`%T' fails to be a typedef or built-in type"
+#~ msgstr "`%T' bir typedef veya yerleşik tür olarak hatalı"
+
+#~ msgid "ISO C++ forbids defining types within %s"
+#~ msgstr "ISO C++ %s ile türlerin tanımlanmasına izin vermez"
+
+#~ msgid "Only emit explicit template instantiations"
+#~ msgstr ""
+#~ "Sadece doğrudan belirtilmiş şablon gerçeklemeleri\n"
+#~ " yayınlanır"
+
+#~ msgid "Recognize and/bitand/bitor/compl/not/or/xor"
+#~ msgstr "and/bitand/bitor/compl/not/or/xor tanınır"
+
+#~ msgid "Warn about inconsistent return types"
+#~ msgstr "Çelişkili dönen türler hakkında uyarır"
+
+#~ msgid "Warn when a function is declared extern, then inline"
+#~ msgstr ""
+#~ "Bir işlev önce extern sonra da inline olarak\n"
+#~ " bildirilmişse uyarır"
+
+#~ msgid "Don't announce deprecation of compiler features"
+#~ msgstr "Derleyici özellikleri indiriminde uyarmaz"
+
+#~ msgid "directory name must immediately follow -I"
+#~ msgstr "dizin ismi -I'ye yapışık yazılmalı"
+
+#~ msgid "ignoring pragma: %s"
+#~ msgstr "pragma yoksayılıyor: %s"
+
+#~ msgid "Program does not use Unix-f77 dialectal features"
+#~ msgstr "Program Unix-f77 dilinin özelliklerini kullanmıyor"
+
+#~ msgid "Disable the appending of underscores to externals"
+#~ msgstr "external'lara altçizgi eklenmez"
+
+#~ msgid "Fortran-specific form of -fbounds-check"
+#~ msgstr "Fortran'a özel -fbounds-check biçimi"
+
+#~ msgid "Add a directory for INCLUDE searching"
+#~ msgstr "INCLUDE araması için dizin eklenir"
+
+#~ msgid "Set the maximum line length"
+#~ msgstr "En büyük satır uzunluğu belirtilir"
+
+#~ msgid "exception handler inside code that is being protected"
+#~ msgstr "hata değişkeni korunmuş kodun içinde"
+
+#~ msgid "Disable automatic array bounds checking"
+#~ msgstr "Dizi sınırları denetimi iptal edilir"
+
+#~ msgid "Set class path"
+#~ msgstr "Sınıf dosya yolu ayarlanır"
+
+#~ msgid "Choose class whose main method should be used"
+#~ msgstr "Sınıf, ana yöntem olarak kullanılır"
+
+#~ msgid "Add directory to class path"
+#~ msgstr "Sınıf dosya yoluna dizini ekler"
+
+#~ msgid "Directory where class files should be written"
+#~ msgstr "Sınıf dosyalarının bulunduğu dizin"
+
+#~ msgid "`%s' cannot be statically allocated"
+#~ msgstr "`%s' statik olarak ayrılamıyor"
+
+#~ msgid "multiple declarations for method `%s'"
+#~ msgstr "`%s' yöntemi için çok sayıda bildirim"
+
+#~ msgid "cannot find class (factory) method"
+#~ msgstr "sınıf yöntemi bulunamıyor"
+
+#~ msgid "return type for `%s' defaults to id"
+#~ msgstr "`%s' için dönen tür id ye öntanımlı"
+
+#~ msgid "return type defaults to id"
+#~ msgstr "dönen tür id ye öntanımlı"
+
+#~ msgid "cannot find method"
+#~ msgstr "yöntem bulunamıyor"
+
+#~ msgid "duplicate definition of class method `%s'"
+#~ msgstr "sınıf yöntemi `%s' birden fazla atanmış"
+
+#~ msgid "duplicate definition of instance method `%s'"
+#~ msgstr "gerçekleme yöntemi `%s' birden fazla atanmış"
+
+#~ msgid "duplicate declaration of instance method `%s'"
+#~ msgstr "gerçekleme yöntemi `%s' birden fazla bildirilmiş"
+
+#~ msgid "potential selector conflict for method `%s'"
+#~ msgstr "yöntem `%s' için olası seçici çelişiyor"
+
+#~ msgid "Specify the name of the class for constant strings"
+#~ msgstr "Sabit dizgeler için sınıf ismi belirtilir"
+
+#~ msgid "(debug) trace parsing process"
+#~ msgstr "(hata ayıklama) trace parsing process"
+
+#~ msgid "(debug) trace lexical analysis"
+#~ msgstr "(hata ayıklama) trace lexical analysis"
+
+#~ msgid "-c or -S required for Ada"
+#~ msgstr "Ada için -c ya da -S gerekli"
+
+#~ msgid "choose either big or little endian, not both"
+#~ msgstr "ya büyük ya da küçük ilkli kullanın, ikisi birden olmaz"
+
+#~ msgid "choose either m340 or m210 not both"
+#~ msgstr "Ya m340 ya da m210 kullanın, ikisi birden olmaz"
+
+#~ msgid "compilation of header file requested"
+#~ msgstr "başlık dosyası derlemesi istendi"
#~ msgid "%s for `%T ? %T : %T' operator"
#~ msgstr "%s (`%T ? %T : %T' üç terimlisi için)"
@@ -21288,9 +23800,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "sizeof applied to a void type"
#~ msgstr "bir void türe sizeof uygulanmış"
-#~ msgid "sizeof applied to an incomplete type"
-#~ msgstr "sizeof bir tamamlanmamış türe uygulanmış"
-
#~ msgid "variable offset is passed partially in stack and in reg"
#~ msgstr "değişkenin göreli konumu kısmen yığında kısmende yazmaçta aktarılmış"
@@ -21387,12 +23896,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "the meaning of '\\x' varies with -traditional"
#~ msgstr "'\\x'in anlamı -traditional ile değişir"
-#~ msgid "escape sequence out of range for character"
-#~ msgstr "önceleme dizgesi karakter için kapsam dışı"
-
-#~ msgid "\"%s\" cannot be used as a macro name"
-#~ msgstr "\"%s\" bir makro ismi olarak kullanılamaz"
-
#~ msgid "directives may not be used inside a macro argument"
#~ msgstr "yönergeler bir makro argüman içinde kullanılmayabilir"
@@ -21402,15 +23905,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "%s:%d: warning: "
#~ msgstr "%s:%d: uyarı: "
-#~ msgid "%s: warning: "
-#~ msgstr "%s: uyarı: "
-
-#~ msgid "sorry, not implemented: "
-#~ msgstr "daha kodlanmadı: "
-
-#~ msgid "Internal compiler error in %s, at %s:%d"
-#~ msgstr "%2$s:%3$d. satırındaki %1$s işlevinde derleyici iç hatası"
-
#~ msgid "Copyright (C) 2002 Free Software Foundation, Inc.\n"
#~ msgstr "Telif Hakkı (C) 2002 Free Software Foundation, Inc.\n"
@@ -21483,9 +23977,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "conversion from NaN to int"
#~ msgstr "NaN'dan int'e dönüşüm"
-#~ msgid "conversion from NaN to unsigned int"
-#~ msgstr "NaN'dan unsigned int'e dönüşüm"
-
#~ msgid "floating point overflow"
#~ msgstr "gerçel sayı taşması"
@@ -21501,9 +23992,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "%s: function singularity"
#~ msgstr "%s: iÅŸlev eÅŸsizliÄŸi"
-#~ msgid "%s: overflow range error"
-#~ msgstr "%s: kapsamın üstten taşma hatası"
-
#~ msgid "%s: underflow range error"
#~ msgstr "%s: kapsamın alttan taşma hatası"
@@ -21565,9 +24053,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "octal character constant does not fit in a byte"
#~ msgstr "sekizlik karakter sabiti bir bayta sığmaz"
-#~ msgid "hex character constant does not fit in a byte"
-#~ msgstr "onaltılık karakter sabiti bir bayta sığmaz"
-
#~ msgid "empty #if expression"
#~ msgstr "boÅŸ #if ifadesi"
@@ -21721,9 +24206,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "Use VAX-C alignment"
#~ msgstr "VAX-C hizalaması kullanılır"
-#~ msgid "invalid %%V value"
-#~ msgstr "%%V değeri geçersiz"
-
#~ msgid "Generate code assuming DW bit is set"
#~ msgstr "Kod DW biti 1 kabulüyle üretilir"
@@ -21886,12 +24368,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "Use mcount_ptr for profiling"
#~ msgstr "Ayrımlama için mcount_ptr kullanılır"
-#~ msgid "Generate code which uses the FPU"
-#~ msgstr "Aritmetik işlemci kullanan kod üretilir"
-
-#~ msgid "Do not generate code which uses the FPU"
-#~ msgstr "Aritmetik işlemci kullanan kod üretilmez"
-
#~ msgid "the -mlong-double-64 option does not work yet"
#~ msgstr "-mlong-double-64 seçeneği henüz çalışmıyor."
@@ -21907,9 +24383,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "this target does not support the -mabi switch"
#~ msgstr "bu hedef -mabi seçeneğini desteklemez."
-#~ msgid "bad value (%s) for -mtune= switch"
-#~ msgstr "-mtune= seçeneğinin değeri (%s) hatalı"
-
#~ msgid "-mips%d does not support 64 bit fp registers"
#~ msgstr "-mips%d 64 bit fp yazmaçlarını desteklemez"
@@ -21988,9 +24461,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "`%D' as declarator"
#~ msgstr "bildirici olarak `%D'"
-#~ msgid "size of member `%D' is not constant"
-#~ msgstr "üye `%D' boyutu bir sabit değil"
-
#~ msgid "cannot declare %s to references"
#~ msgstr "%s referanslara bildirilemez"
@@ -22003,9 +24473,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "-fname-mangling-version is no longer supported"
#~ msgstr "-fname-mangling-version artık desteklenmiyor"
-#~ msgid "candidate%s: %+#D"
-#~ msgstr "aday%s: %+#D"
-
#~ msgid " %#D"
#~ msgstr " %#D"
@@ -22087,9 +24554,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "invalid call to member function needing `this' in static member function scope"
#~ msgstr "statik üye işlev kapsamında `this' gerektiren üye işleve çağrı geçersiz"
-#~ msgid "unary `&'"
-#~ msgstr "tekil `&'"
-
#~ msgid "invalid use of undefined type `%#T'"
#~ msgstr "tanımsız `%#T' türünün kullanımı geçersiz"
@@ -22102,9 +24566,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "invalid use of member (did you forget the `&' ?)"
#~ msgstr "üye kullanımı geçersiz ( `&' unutuldu mu? )"
-#~ msgid "invalid use of template type parameter"
-#~ msgstr "şablon türü parametre kullanımı geçersiz"
-
#~ msgid "address of overloaded function with no contextual type information"
#~ msgstr "bağlamsal tür bilgileri olmayan aşırı yüklü işlev adresi"
@@ -22579,9 +25040,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "duplicate grant for `%s'"
#~ msgstr "`%s' için yinelenmiş yerine getirme"
-#~ msgid "previous grant for `%s'"
-#~ msgstr "`%s' için önceki yerine getirme"
-
#~ msgid "duplicate definition `%s'"
#~ msgstr "yinelenmiş tanım `%s'"
@@ -22675,9 +25133,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "parameter 1 must be referable"
#~ msgstr "1. parametre referanslanabilir olmalı"
-#~ msgid "mode mismatch in parameter 1"
-#~ msgstr "1. parametrede kip uyumsuzluÄŸu"
-
#~ msgid "parameter 2 must be a positive integer"
#~ msgstr "2. parametre bir pozitif tamsayı olmalı"
@@ -22861,9 +25316,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "-> operator not allow in constant expression"
#~ msgstr "-> işlemimiyle sabit ifadeler kullanılmaz"
-#~ msgid "taking the address of a string literal is non-standard"
-#~ msgstr "bir dizge sabitin adresinin alınması standart-dışı"
-
#~ msgid "taking the address of a function is non-standard"
#~ msgstr "bir işlev adresinin alınması standart-dışı"
@@ -22924,9 +25376,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "decode_constant_selective: cannot decode this mode"
#~ msgstr "decode_constant_selective: bu kip çözümlenemez"
-#~ msgid "can't write to %s"
-#~ msgstr "%s e yazılamıyor"
-
#~ msgid "FORBID is not yet implemented"
#~ msgstr "FORBID henüz programlanmadı"
@@ -23086,9 +25535,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "no padding character (offset %d)"
#~ msgstr "ayraç karakteri yok (göreli konum %d)"
-#~ msgid "too many arguments for this format string"
-#~ msgstr "bu biçem dizgesi için çok fazla argüman belirtildi"
-
#~ msgid "missing index expression"
#~ msgstr "indeks ifadesi eksik"
@@ -23260,9 +25706,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "'%s!' is not followed by an identifier"
#~ msgstr "'%s!' den sonra bir tanımlayıcı gelmiyor"
-#~ msgid "expected a name here"
-#~ msgstr "burada bir isim umuluyordu"
-
#~ msgid "expected a name string here"
#~ msgstr "burada bir isim dizgesi umuluyordu"
@@ -23308,9 +25751,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "expected another rename clause"
#~ msgstr "başka isimlendirme tümcesi umuluyordu"
-#~ msgid "syntax error in parameter name list"
-#~ msgstr "parametre isim listesinde sözdizimi hatası"
-
#~ msgid "NONREF specific without LOC in result attribute"
#~ msgstr "result özniteliğinde NONREF'e özel konumsuz"
@@ -23371,9 +25811,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "missing parenthesis for procedure call"
#~ msgstr "işlev çağrısında parantez eksik"
-#~ msgid "expression is not an action"
-#~ msgstr "ifade bir eylem deÄŸil"
-
#~ msgid "syntax error in action"
#~ msgstr "eylemde sözdizimi hatası"
@@ -23434,9 +25871,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "VARYING bit-strings not implemented"
#~ msgstr "VARYING bit dizgeleri henüz programlanmadı"
-#~ msgid "strings must be composed of chars"
-#~ msgstr "dizgeler karakterlerin birleşimi olmalı"
-
#~ msgid "BUFFER modes may not be readonly"
#~ msgstr "BUFFER kipler salt-okunur olmayabilir"
@@ -23707,9 +26141,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "index is not an integer expression"
#~ msgstr "indeks bir tamsayı ifadesi değil"
-#~ msgid "index not compatible with index mode"
-#~ msgstr "indeks, indeks kipiyle uyumsuz"
-
#~ msgid "index is not discrete"
#~ msgstr "indis ayrık değildir"
@@ -23776,9 +26207,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "location conversion between differently-sized modes"
#~ msgstr "farklı boyuttaki kipler arasında konum dönüşümü"
-#~ msgid "operand to bin must be a non-negative integer literal"
-#~ msgstr "bin terimi bir negatif olmayan tamsayı sabit olmalı"
-
#~ msgid "size %d of BIN too big - no such integer mode"
#~ msgstr "BIN için %d lik boyut çok büyük - böyle bir tamsayı kipi yok"
@@ -23875,9 +26303,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "starting bit in POS must be < the width of a word"
#~ msgstr "POS içindeki başlangıç biti < word genişliği olmalı"
-#~ msgid "length in POS must be an integer constant"
-#~ msgstr "POS içindeki uzunluk bir tamsayı sabit olmalı"
-
#~ msgid "length in POS must be > 0"
#~ msgstr "POS içindeki uzunluk > 0 olmalı"
@@ -23923,9 +26348,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "abstract virtual `%#D' called from destructor"
#~ msgstr "yıkıcıdan kuramsal olarak sanal `%#D' çağrıldı"
-#~ msgid " perhaps you want `typename %T::%D' to make it a type"
-#~ msgstr " ihtimal ki onu tür yapmak için `typename %T::%D' istiyorsunuz"
-
#~ msgid "discarding `const' applied to a reference"
#~ msgstr "referansa uygulanan `const' iptal ediliyor"
@@ -23956,9 +26378,6 @@ msgstr "-msingle-float ve -msoft-float birlikte belirtilemez."
#~ msgid "ISO C++ forbids using a pointer-to-function in pointer arithmetic"
#~ msgstr "ISO C++ gösterge aritmetiğinde bir işlev göstergesi kullanımına izin vermez"
-#~ msgid "ISO C++ forbids using a pointer to member function in pointer arithmetic"
-#~ msgstr "ISO C++ gösterge aritmetiğinde bir üye işleve gösterge kullanımına izin vermez"
-
#~ msgid "ISO C++ forbids using pointer to a member in pointer arithmetic"
#~ msgstr "ISO C++ gösterge aritmetiğinde bir üyeye gösterge kullanımına izin vermez"
diff --git a/gcc/postreload.c b/gcc/postreload.c
index 8d288d8f91e..6f567f07f9e 100644
--- a/gcc/postreload.c
+++ b/gcc/postreload.c
@@ -1,6 +1,6 @@
/* Perform simple optimizations to clean up the result of reload.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -423,6 +423,15 @@ reload_cse_simplify_operands (rtx insn, rtx testreg)
|| GET_CODE (SET_SRC (set)) == ZERO_EXTEND
|| GET_CODE (SET_SRC (set)) == SIGN_EXTEND)
; /* Continue ordinary processing. */
+#ifdef CANNOT_CHANGE_MODE_CLASS
+ /* If the register cannot change mode to word_mode, it follows that
+ it cannot have been used in word_mode. */
+ else if (GET_CODE (SET_DEST (set)) == REG
+ && CANNOT_CHANGE_MODE_CLASS (GET_MODE (SET_DEST (set)),
+ word_mode,
+ REGNO_REG_CLASS (REGNO (SET_DEST (set)))))
+ ; /* Continue ordinary processing. */
+#endif
/* If this is a straight load, make the extension explicit. */
else if (GET_CODE (SET_DEST (set)) == REG
&& recog_data.n_operands == 2
diff --git a/gcc/ra.h b/gcc/ra.h
index a746d91a559..252d85cadbd 100644
--- a/gcc/ra.h
+++ b/gcc/ra.h
@@ -1,5 +1,5 @@
/* Graph coloring register allocator
- Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Matz <matz@suse.de>
and Daniel Berlin <dan@cgsoftware.com>.
diff --git a/gcc/real.c b/gcc/real.c
index 5d9bc41dcb7..16432585a3e 100644
--- a/gcc/real.c
+++ b/gcc/real.c
@@ -1769,7 +1769,7 @@ real_from_string (REAL_VALUE_TYPE *r, const char *str)
else if (*str == '+')
str++;
- if (str[0] == '0' && str[1] == 'x')
+ if (str[0] == '0' && (str[1] == 'x' || str[1] == 'X'))
{
/* Hexadecimal floating point. */
int pos = SIGNIFICAND_BITS - 4, d;
@@ -3230,19 +3230,25 @@ static void
encode_ibm_extended (const struct real_format *fmt, long *buf,
const REAL_VALUE_TYPE *r)
{
- REAL_VALUE_TYPE u, v;
+ REAL_VALUE_TYPE u, normr, v;
const struct real_format *base_fmt;
base_fmt = fmt->qnan_msb_set ? &ieee_double_format : &mips_double_format;
+ /* Renormlize R before doing any arithmetic on it. */
+ normr = *r;
+ if (normr.class == rvc_normal)
+ normalize (&normr);
+
/* u = IEEE double precision portion of significand. */
- u = *r;
+ u = normr;
round_for_format (base_fmt, &u);
encode_ieee_double (base_fmt, &buf[0], &u);
- if (r->class == rvc_normal)
+ if (u.class == rvc_normal)
{
- do_add (&v, r, &u, 1);
+ do_add (&v, &normr, &u, 1);
+ /* Call round_for_format since we might need to denormalize. */
round_for_format (base_fmt, &v);
encode_ieee_double (base_fmt, &buf[2], &v);
}
diff --git a/gcc/recog.c b/gcc/recog.c
index d2338e6c9c2..2224c5ac8f4 100644
--- a/gcc/recog.c
+++ b/gcc/recog.c
@@ -1,6 +1,6 @@
/* Subroutines used by or related to instruction recognition.
Copyright (C) 1987, 1988, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998
- 1999, 2000, 2001, 2002, 2003, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/reg-stack.c b/gcc/reg-stack.c
index 8ebae4be70c..9a6c89bf310 100644
--- a/gcc/reg-stack.c
+++ b/gcc/reg-stack.c
@@ -1,6 +1,6 @@
/* Register to Stack convert for GNU compiler.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/regmove.c b/gcc/regmove.c
index d5b35cc1d4d..8dcd05486f2 100644
--- a/gcc/regmove.c
+++ b/gcc/regmove.c
@@ -1,6 +1,6 @@
/* Move registers around to reduce number of move instructions needed.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/reload.c b/gcc/reload.c
index 361a5029cee..5305b5e533a 100644
--- a/gcc/reload.c
+++ b/gcc/reload.c
@@ -1,6 +1,6 @@
/* Search an insn for pseudo regs that must be in hard regs and are not.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -173,6 +173,7 @@ struct decomposition
static rtx secondary_memlocs[NUM_MACHINE_MODES];
static rtx secondary_memlocs_elim[NUM_MACHINE_MODES][MAX_RECOG_OPERANDS];
+static int secondary_memlocs_elim_used = 0;
#endif
/* The instruction we are doing reloads for;
@@ -644,6 +645,8 @@ get_secondary_mem (rtx x ATTRIBUTE_UNUSED, enum machine_mode mode,
}
secondary_memlocs_elim[(int) mode][opnum] = loc;
+ if (secondary_memlocs_elim_used <= (int)mode)
+ secondary_memlocs_elim_used = (int)mode + 1;
return loc;
}
@@ -2540,7 +2543,12 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known,
/* The eliminated forms of any secondary memory locations are per-insn, so
clear them out here. */
- memset (secondary_memlocs_elim, 0, sizeof secondary_memlocs_elim);
+ if (secondary_memlocs_elim_used)
+ {
+ memset (secondary_memlocs_elim, 0,
+ sizeof (secondary_memlocs_elim[0]) * secondary_memlocs_elim_used);
+ secondary_memlocs_elim_used = 0;
+ }
#endif
/* Dispose quickly of (set (reg..) (reg..)) if both have hard regs and it
@@ -2605,7 +2613,17 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known,
if (i == noperands - 1)
abort ();
- commutative = i;
+ /* We currently only support one commutative pair of
+ operands. Some existing asm code currently uses more
+ than one pair. Previously, that would usually work,
+ but sometimes it would crash the compiler. We
+ continue supporting that case as well as we can by
+ silently ignoring all but the first pair. In the
+ future we may handle it correctly. */
+ if (commutative < 0)
+ commutative = i;
+ else if (!this_insn_is_asm)
+ abort ();
}
else if (ISDIGIT (c))
{
@@ -2979,9 +2997,8 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known,
break;
case '%':
- /* The last operand should not be marked commutative. */
- if (i != noperands - 1)
- commutative = i;
+ /* We only support one commutative marker, the first
+ one. We already set commutative above. */
break;
case '?':
@@ -3395,6 +3412,12 @@ find_reloads (rtx insn, int replace, int ind_levels, int live_known,
&& ! const_to_mem)
bad = 1;
+#ifdef DISPARAGE_RELOAD_CLASS
+ reject
+ += DISPARAGE_RELOAD_CLASS (operand,
+ (enum reg_class) this_alternative[i]);
+#endif
+
/* We prefer to reload pseudos over reloading other things,
since such reloads may be able to be eliminated later.
If we are reloading a SCRATCH, we won't be generating any
diff --git a/gcc/reload1.c b/gcc/reload1.c
index 9a0ad894746..a396e22f903 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -1,6 +1,6 @@
/* Reload pseudo regs into hard regs for insns that require hard regs.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -4316,6 +4316,7 @@ reload_reg_free_p (unsigned int regno, int opnum, enum reload_type type)
/* In use for anything means we can't use it for RELOAD_OTHER. */
if (TEST_HARD_REG_BIT (reload_reg_used_in_other_addr, regno)
|| TEST_HARD_REG_BIT (reload_reg_used_in_op_addr, regno)
+ || TEST_HARD_REG_BIT (reload_reg_used_in_op_addr_reload, regno)
|| TEST_HARD_REG_BIT (reload_reg_used_in_insn, regno))
return 0;
@@ -4494,6 +4495,7 @@ reload_reg_reaches_end_p (unsigned int regno, int opnum, enum reload_type type)
return 0;
return (! TEST_HARD_REG_BIT (reload_reg_used_in_op_addr, regno)
+ && ! TEST_HARD_REG_BIT (reload_reg_used_in_op_addr_reload, regno)
&& ! TEST_HARD_REG_BIT (reload_reg_used_in_insn, regno)
&& ! TEST_HARD_REG_BIT (reload_reg_used, regno));
diff --git a/gcc/reorg.c b/gcc/reorg.c
index ec15a4fb6bc..e4585c9f468 100644
--- a/gcc/reorg.c
+++ b/gcc/reorg.c
@@ -1,6 +1,6 @@
/* Perform instruction reorganizations for delay slot filling.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu).
Hacked by Michael Tiemann (tiemann@cygnus.com).
diff --git a/gcc/rtl.h b/gcc/rtl.h
index cd7b2aeac81..caf45f81630 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -1452,6 +1452,7 @@ extern rtx emit_copy_of_insn_after (rtx, rtx);
extern void set_reg_attrs_from_mem (rtx, rtx);
extern void set_mem_attrs_from_reg (rtx, rtx);
extern void set_reg_attrs_for_parm (rtx, rtx);
+extern int mem_expr_equal_p (tree, tree);
/* In rtl.c */
extern rtx rtx_alloc (RTX_CODE);
@@ -1530,19 +1531,25 @@ extern rtx assign_temp (tree, int, int, int);
/* In emit-rtl.c */
extern rtx emit_insn_before (rtx, rtx);
+extern rtx emit_insn_before_noloc (rtx, rtx);
extern rtx emit_insn_before_setloc (rtx, rtx, int);
extern rtx emit_jump_insn_before (rtx, rtx);
+extern rtx emit_jump_insn_before_noloc (rtx, rtx);
extern rtx emit_jump_insn_before_setloc (rtx, rtx, int);
extern rtx emit_call_insn_before (rtx, rtx);
+extern rtx emit_call_insn_before_noloc (rtx, rtx);
extern rtx emit_call_insn_before_setloc (rtx, rtx, int);
extern rtx emit_barrier_before (rtx);
extern rtx emit_label_before (rtx, rtx);
extern rtx emit_note_before (int, rtx);
extern rtx emit_insn_after (rtx, rtx);
+extern rtx emit_insn_after_noloc (rtx, rtx);
extern rtx emit_insn_after_setloc (rtx, rtx, int);
extern rtx emit_jump_insn_after (rtx, rtx);
+extern rtx emit_jump_insn_after_noloc (rtx, rtx);
extern rtx emit_jump_insn_after_setloc (rtx, rtx, int);
extern rtx emit_call_insn_after (rtx, rtx);
+extern rtx emit_call_insn_after_noloc (rtx, rtx);
extern rtx emit_call_insn_after_setloc (rtx, rtx, int);
extern rtx emit_barrier_after (rtx);
extern rtx emit_label_after (rtx, rtx);
@@ -1998,6 +2005,7 @@ extern int cse_main (rtx, int, int, FILE *);
#endif
extern void cse_end_of_basic_block (rtx, struct cse_basic_block_data *,
int, int, int);
+extern void cse_condition_code_reg (void);
/* In jump.c */
extern int comparison_dominates_p (enum rtx_code, enum rtx_code);
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c
index 15c4879eb0b..fcb426db3de 100644
--- a/gcc/rtlanal.c
+++ b/gcc/rtlanal.c
@@ -1,6 +1,6 @@
/* Analyze RTL for C-Compiler
Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -133,10 +133,14 @@ rtx_unstable_p (rtx x)
int
rtx_varies_p (rtx x, int for_alias)
{
- RTX_CODE code = GET_CODE (x);
+ RTX_CODE code;
int i;
const char *fmt;
+ if (!x)
+ return 0;
+
+ code = GET_CODE (x);
switch (code)
{
case MEM:
@@ -2703,7 +2707,6 @@ int
replace_label (rtx *x, void *data)
{
rtx l = *x;
- rtx tmp;
rtx old_label = ((replace_label_data *) data)->r1;
rtx new_label = ((replace_label_data *) data)->r2;
bool update_label_nuses = ((replace_label_data *) data)->update_label_nuses;
@@ -2711,12 +2714,10 @@ replace_label (rtx *x, void *data)
if (l == NULL_RTX)
return 0;
- if (GET_CODE (l) == MEM
- && (tmp = XEXP (l, 0)) != NULL_RTX
- && GET_CODE (tmp) == SYMBOL_REF
- && CONSTANT_POOL_ADDRESS_P (tmp))
+ if (GET_CODE (l) == SYMBOL_REF
+ && CONSTANT_POOL_ADDRESS_P (l))
{
- rtx c = get_pool_constant (tmp);
+ rtx c = get_pool_constant (l);
if (rtx_referenced_p (old_label, c))
{
rtx new_c, new_l;
@@ -2732,7 +2733,7 @@ replace_label (rtx *x, void *data)
/* Add the new constant NEW_C to constant pool and replace
the old reference to constant by new reference. */
- new_l = force_const_mem (get_pool_mode (tmp), new_c);
+ new_l = XEXP (force_const_mem (get_pool_mode (l), new_c), 0);
*x = replace_rtx (l, l, new_l);
}
return 0;
diff --git a/gcc/sched-deps.c b/gcc/sched-deps.c
index 6c92f968d38..9bc7a11182f 100644
--- a/gcc/sched-deps.c
+++ b/gcc/sched-deps.c
@@ -1,7 +1,7 @@
/* Instruction scheduling pass. This file computes dependencies between
instructions.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com) Enhanced by,
and currently maintained by, Jim Wilson (wilson@cygnus.com)
diff --git a/gcc/sched-ebb.c b/gcc/sched-ebb.c
index c553cddd183..c95bb4537e6 100644
--- a/gcc/sched-ebb.c
+++ b/gcc/sched-ebb.c
@@ -1,6 +1,6 @@
/* Instruction scheduling pass.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Michael Tiemann (tiemann@cygnus.com) Enhanced by,
and currently maintained by, Jim Wilson (wilson@cygnus.com)
diff --git a/gcc/sdbout.c b/gcc/sdbout.c
index b6380ebb821..3d620475315 100644
--- a/gcc/sdbout.c
+++ b/gcc/sdbout.c
@@ -1,6 +1,6 @@
/* Output sdb-format symbol table information from GNU compiler.
Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/simplify-rtx.c b/gcc/simplify-rtx.c
index 51585c80b0b..00e85c6aad1 100644
--- a/gcc/simplify-rtx.c
+++ b/gcc/simplify-rtx.c
@@ -2539,6 +2539,8 @@ simplify_relational_operation (enum rtx_code code, enum machine_mode mode,
&& ! ((GET_CODE (op0) == REG || GET_CODE (trueop0) == CONST_INT)
&& (GET_CODE (op1) == REG || GET_CODE (trueop1) == CONST_INT))
&& 0 != (tem = simplify_binary_operation (MINUS, mode, op0, op1))
+ /* We cannot do this for == or != if tem is a nonzero address. */
+ && ((code != EQ && code != NE) || ! nonzero_address_p (tem))
&& code != GTU && code != GEU && code != LTU && code != LEU)
return simplify_relational_operation (signed_condition (code),
mode, tem, const0_rtx);
diff --git a/gcc/stmt.c b/gcc/stmt.c
index 6288341a48f..0fde5581367 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -529,9 +529,9 @@ expand_computed_goto (tree exp)
{
cfun->computed_goto_common_reg = copy_to_mode_reg (Pmode, x);
cfun->computed_goto_common_label = gen_label_rtx ();
- emit_label (cfun->computed_goto_common_label);
do_pending_stack_adjust ();
+ emit_label (cfun->computed_goto_common_label);
emit_indirect_jump (cfun->computed_goto_common_reg);
current_function_has_computed_jump = 1;
@@ -1106,8 +1106,7 @@ expand_asm (tree string, int vol)
if (TREE_CODE (string) == ADDR_EXPR)
string = TREE_OPERAND (string, 0);
- body = gen_rtx_ASM_INPUT (VOIDmode,
- ggc_strdup (TREE_STRING_POINTER (string)));
+ body = gen_rtx_ASM_INPUT (VOIDmode, TREE_STRING_POINTER (string));
MEM_VOLATILE_P (body) = vol;
@@ -1669,7 +1668,7 @@ expand_asm_operands (tree string, tree outputs, tree inputs,
body = gen_rtx_ASM_OPERANDS ((noutputs == 0 ? VOIDmode
: GET_MODE (output_rtx[0])),
- ggc_strdup (TREE_STRING_POINTER (string)),
+ TREE_STRING_POINTER (string),
empty_string, 0, argvec, constraintvec,
locus.file, locus.line);
@@ -1750,8 +1749,7 @@ expand_asm_operands (tree string, tree outputs, tree inputs,
ASM_OPERANDS_INPUT (body, i) = op;
ASM_OPERANDS_INPUT_CONSTRAINT_EXP (body, i)
- = gen_rtx_ASM_INPUT (TYPE_MODE (type),
- ggc_strdup (constraints[i + noutputs]));
+ = gen_rtx_ASM_INPUT (TYPE_MODE (type), constraints[i + noutputs]);
if (decl_conflicts_with_clobbers_p (val, clobbered_regs))
clobber_conflict_found = 1;
@@ -1792,7 +1790,7 @@ expand_asm_operands (tree string, tree outputs, tree inputs,
if (noutputs == 1 && nclobbers == 0)
{
- ASM_OPERANDS_OUTPUT_CONSTRAINT (body) = ggc_strdup (constraints[0]);
+ ASM_OPERANDS_OUTPUT_CONSTRAINT (body) = constraints[0];
emit_insn (gen_rtx_SET (VOIDmode, output_rtx[0], body));
}
@@ -1820,9 +1818,8 @@ expand_asm_operands (tree string, tree outputs, tree inputs,
output_rtx[i],
gen_rtx_ASM_OPERANDS
(GET_MODE (output_rtx[i]),
- ggc_strdup (TREE_STRING_POINTER (string)),
- ggc_strdup (constraints[i]),
- i, argvec, constraintvec,
+ TREE_STRING_POINTER (string),
+ constraints[i], i, argvec, constraintvec,
locus.file, locus.line));
MEM_VOLATILE_P (SET_SRC (XVECEXP (body, 0, i))) = vol;
diff --git a/gcc/system.h b/gcc/system.h
index f402c99e84a..e19de3f8e4e 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -1,6 +1,7 @@
/* Get common system includes and various definitions and declarations based
on autoconf macros.
- Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
This file is part of GCC.
@@ -485,16 +486,21 @@ extern int snprintf (char *, size_t, const char *, ...);
#define HOST_BIT_BUCKET "/dev/null"
#endif
-/* Be conservative and only use enum bitfields with GCC. Likewise for
- char bitfields.
+/* Be conservative and only use enum bitfields with GCC.
FIXME: provide a complete autoconf test for buggy enum bitfields. */
#if (GCC_VERSION > 2000)
#define ENUM_BITFIELD(TYPE) __extension__ enum TYPE
-#define CHAR_BITFIELD __extension__ unsigned char
#else
#define ENUM_BITFIELD(TYPE) unsigned int
-#define CHAR_BITFIELD unsigned int
+#endif
+
+/* We only use bool bitfields with gcc3. Some supposedly C99
+ compilers don't handle them correctly. */
+#if (GCC_VERSION >= 3000)
+#define BOOL_BITFIELD _Bool
+#else
+#define BOOL_BITFIELD unsigned int
#endif
#ifndef offsetof
@@ -595,7 +601,8 @@ typedef char _Bool;
INIT_GOFAST_OPTABS MULSI3_LIBCALL MULDI3_LIBCALL DIVSI3_LIBCALL \
DIVDI3_LIBCALL UDIVSI3_LIBCALL UDIVDI3_LIBCALL MODSI3_LIBCALL \
MODDI3_LIBCALL UMODSI3_LIBCALL UMODDI3_LIBCALL BUILD_VA_LIST_TYPE \
- PRETEND_OUTGOING_VARARGS_NAMED STRUCT_VALUE_INCOMING_REGNUM
+ PRETEND_OUTGOING_VARARGS_NAMED STRUCT_VALUE_INCOMING_REGNUM \
+ SPLIT_COMPLEX_ARGS
/* Other obsolete target macros, or macros that used to be in target
headers and were not used, and may be obsolete or may never have
diff --git a/gcc/target-def.h b/gcc/target-def.h
index 9ff668d3f14..f21025af255 100644
--- a/gcc/target-def.h
+++ b/gcc/target-def.h
@@ -1,5 +1,5 @@
/* Default initializers for a generic GCC target.
- Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
@@ -314,6 +314,10 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#define TARGET_ENCODE_SECTION_INFO default_encode_section_info
#endif
+#define TARGET_FIXED_CONDITION_CODE_REGS hook_bool_uintp_uintp_false
+
+#define TARGET_CC_MODES_COMPATIBLE default_cc_modes_compatible
+
#define TARGET_MACHINE_DEPENDENT_REORG 0
#define TARGET_BUILD_BUILTIN_VA_LIST std_build_builtin_va_list
@@ -332,7 +336,9 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#define TARGET_EXPAND_BUILTIN_SAVEREGS default_expand_builtin_saveregs
#define TARGET_SETUP_INCOMING_VARARGS default_setup_incoming_varargs
#define TARGET_STRICT_ARGUMENT_NAMING default_strict_argument_naming
-#define TARGET_PRETEND_OUTGOING_VARARGS_NAMED default_pretend_outgoing_varargs_named
+#define TARGET_PRETEND_OUTGOING_VARARGS_NAMED \
+ default_pretend_outgoing_varargs_named
+#define TARGET_SPLIT_COMPLEX_ARG NULL
#define TARGET_CALLS { \
TARGET_PROMOTE_FUNCTION_ARGS, \
@@ -345,6 +351,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
TARGET_SETUP_INCOMING_VARARGS, \
TARGET_STRICT_ARGUMENT_NAMING, \
TARGET_PRETEND_OUTGOING_VARARGS_NAMED, \
+ TARGET_SPLIT_COMPLEX_ARG, \
}
/* The whole shebang. */
@@ -380,10 +387,13 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
TARGET_RTX_COSTS, \
TARGET_ADDRESS_COST, \
TARGET_DWARF_REGISTER_SPAN, \
+ TARGET_FIXED_CONDITION_CODE_REGS, \
+ TARGET_CC_MODES_COMPATIBLE, \
TARGET_MACHINE_DEPENDENT_REORG, \
TARGET_BUILD_BUILTIN_VA_LIST, \
TARGET_GET_PCH_VALIDITY, \
TARGET_PCH_VALID_P, \
+ TARGET_CALLS, \
TARGET_HAVE_NAMED_SECTIONS, \
TARGET_HAVE_CTORS_DTORS, \
TARGET_HAVE_TLS, \
@@ -391,7 +401,6 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
TARGET_TERMINATE_DW2_EH_FRAME_INFO, \
TARGET_ASM_FILE_START_APP_OFF, \
TARGET_ASM_FILE_START_FILE_DIRECTIVE, \
- TARGET_CALLS, \
}
#include "hooks.h"
diff --git a/gcc/target.h b/gcc/target.h
index f63b078aaf6..d7729ba0f17 100644
--- a/gcc/target.h
+++ b/gcc/target.h
@@ -1,5 +1,5 @@
/* Data structure definitions for a generic GCC target.
- Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
@@ -377,6 +377,23 @@ struct gcc_target
hook should return NULL_RTX. */
rtx (* dwarf_register_span) (rtx);
+ /* Fetch the fixed register(s) which hold condition codes, for
+ targets where it makes sense to look for duplicate assignments to
+ the condition codes. This should return true if there is such a
+ register, false otherwise. The arguments should be set to the
+ fixed register numbers. Up to two condition code registers are
+ supported. If there is only one for this target, the int pointed
+ at by the second argument should be set to -1. */
+ bool (* fixed_condition_code_regs) (unsigned int *, unsigned int *);
+
+ /* If two condition code modes are compatible, return a condition
+ code mode which is compatible with both, such that a comparison
+ done in the returned mode will work for both of the original
+ modes. If the condition code modes are not compatible, return
+ VOIDmode. */
+ enum machine_mode (* cc_modes_compatible) (enum machine_mode,
+ enum machine_mode);
+
/* Do machine-dependent code transformations. Called just before
delayed-branch scheduling. */
void (* machine_dependent_reorg) (void);
@@ -393,6 +410,29 @@ struct gcc_target
void * (* get_pch_validity) (size_t *);
const char * (* pch_valid_p) (const void *, size_t);
+ /* Functions relating to calls - argument passing, returns, etc. */
+ struct calls {
+ bool (*promote_function_args) (tree fntype);
+ bool (*promote_function_return) (tree fntype);
+ bool (*promote_prototypes) (tree fntype);
+ rtx (*struct_value_rtx) (tree fndecl, int incoming);
+ bool (*return_in_memory) (tree type, tree fndecl);
+ bool (*return_in_msb) (tree type);
+ rtx (*expand_builtin_saveregs) (void);
+ /* Returns pretend_argument_size. */
+ void (*setup_incoming_varargs) (CUMULATIVE_ARGS *ca, enum machine_mode mode,
+ tree type, int *pretend_arg_size,
+ int second_time);
+ bool (*strict_argument_naming) (CUMULATIVE_ARGS *ca);
+ /* Returns true if we should use SETUP_INCOMING_VARARGS and/or
+ targetm.calls.strict_argument_naming(). */
+ bool (*pretend_outgoing_varargs_named) (CUMULATIVE_ARGS *ca);
+
+ /* Given a complex type T, return true if a parameter of type T
+ should be passed as two scalars. */
+ bool (* split_complex_arg) (tree type);
+ } calls;
+
/* Leave the boolean fields at the end. */
/* True if arbitrary sections are supported. */
@@ -419,23 +459,7 @@ struct gcc_target
at the beginning of assembly output. */
bool file_start_file_directive;
- /* Functions relating to calls - argument passing, returns, etc. */
- struct calls {
- bool (*promote_function_args) (tree fntype);
- bool (*promote_function_return) (tree fntype);
- bool (*promote_prototypes) (tree fntype);
- rtx (*struct_value_rtx) (tree fndecl, int incoming);
- bool (*return_in_memory) (tree type, tree fndecl);
- bool (*return_in_msb) (tree type);
- rtx (*expand_builtin_saveregs) (void);
- /* Returns pretend_argument_size. */
- void (*setup_incoming_varargs) (CUMULATIVE_ARGS *ca, enum machine_mode mode,
- tree type, int *pretend_arg_size, int second_time);
- bool (*strict_argument_naming) (CUMULATIVE_ARGS *ca);
- /* Returns true if we should use SETUP_INCOMING_VARARGS and/or
- targetm.calls.strict_argument_naming(). */
- bool (*pretend_outgoing_varargs_named) (CUMULATIVE_ARGS *ca);
- } calls;
+ /* Leave the boolean fields at the end. */
};
extern struct gcc_target targetm;
diff --git a/gcc/targhooks.c b/gcc/targhooks.c
index 79a3a7d5a13..308ada6057c 100644
--- a/gcc/targhooks.c
+++ b/gcc/targhooks.c
@@ -1,5 +1,5 @@
/* Default target hook functions.
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -70,6 +70,14 @@ default_external_libcall (rtx fun ATTRIBUTE_UNUSED)
#endif
}
+enum machine_mode
+default_cc_modes_compatible (enum machine_mode m1, enum machine_mode m2)
+{
+ if (m1 == m2)
+ return m1;
+ return VOIDmode;
+}
+
bool
default_promote_function_args (tree fntype ATTRIBUTE_UNUSED)
{
diff --git a/gcc/targhooks.h b/gcc/targhooks.h
index e5c5a2a5596..63525fe04b7 100644
--- a/gcc/targhooks.h
+++ b/gcc/targhooks.h
@@ -1,5 +1,5 @@
/* Default target hook functions.
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -20,6 +20,9 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
extern void default_external_libcall (rtx);
+extern enum machine_mode default_cc_modes_compatible (enum machine_mode,
+ enum machine_mode);
+
extern bool default_promote_function_args (tree);
extern bool default_promote_function_return (tree);
extern bool default_promote_prototypes (tree);
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index d08f1feee16..58654aa9abc 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,957 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-04-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * gcc.dg/funcorder.c: xfail hppa*64*-*-*.
+
+2004-04-17 John David Anglin <dava.anglin@nrc-cnrc.gc.ca>
+
+ * gcc.dg/const-elim-1.c: XFAIL hppa-*-*.
+
+2004-04-14 Zack Weinberg <zack@codesourcery.com>
+
+ * gcc.dg/const-elim-1.c: XFAIL hppa*.*-*-* (PA32). Merge further
+ XFAILs from mainline: strongarm-*-*, xscale-*-*, powerpc*-*-aix*.
+ Update commentary.
+
+2004-04-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gcc.dg/compat/struct-by-value-5a_main.c,
+ gcc.dg/compat/struct-by-value-5b_main.c: New files.
+ * gcc.dg/compat/struct-by-value-5_main.c: Delete.
+ * gcc.dg/compat/struct-by-value-5a_x.c,
+ gcc.dg/compat/struct-by-value-5b_x.c: New, split out from
+ gcc.dg/compat/struct-by-value-5_x.c.
+ * gcc.dg/compat/struct-by-value-5a_y.c,
+ gcc.dg/compat/struct-by-value-5b_y.c: New, split out from
+ gcc.dg/compat/struct-by-value-5_y.c.
+
+ * gcc.dg/compat/struct-by-value-6a_main.c,
+ gcc.dg/compat/struct-by-value-6b_main.c: New files.
+ * gcc.dg/compat/struct-by-value-6_main.c: Delete.
+ * gcc.dg/compat/struct-by-value-6a_x.c,
+ gcc.dg/compat/struct-by-value-6b_x.c: New, split out from
+ gcc.dg/compat/struct-by-value-6_x.c.
+ * gcc.dg/compat/struct-by-value-6a_y.c,
+ gcc.dg/compat/struct-by-value-6b_y.c: New, split out from
+ gcc.dg/compat/struct-by-value-6_y.c.
+
+ * gcc.dg/compat/struct-by-value-7a_main.c,
+ gcc.dg/compat/struct-by-value-7b_main.c: New files.
+ * gcc.dg/compat/struct-by-value-7_main.c: Delete.
+ * gcc.dg/compat/struct-by-value-7a_x.c,
+ gcc.dg/compat/struct-by-value-7b_x.c: New, split out from
+ gcc.dg/compat/struct-by-value-7_x.c.
+ * gcc.dg/compat/struct-by-value-7a_y.c,
+ gcc.dg/compat/struct-by-value-7b_y.c: New, split out from
+ gcc.dg/compat/struct-by-value-7_y.c.
+
+2004-04-05 Paul Brook <paul@codesourcery.com>
+
+ PR 2123
+ * g++.dg/expr/anew1.C: XFAIL and make reproducible. Call abort on
+ failure and exit(0) on success.
+ * g++.dg/expr/anew2.C: Ditto.
+ * g++.dg/expr/anew3.C: Ditto.
+ * g++.dg/expr/anew4.C: Ditto.
+
+2004-04-09 Zack Weinberg <zack@codesourcery.com>
+
+ * lib/target-supports.exp (check_named_sections_available): New.
+ * lib/gcc-dg.exp (dg-require-named-sections): New.
+ * lib/prune.exp (prune_gcc_output): Incorporate prunes from
+ old-deja.exp. Also prune error-count message from HP linker.
+ * g++.old-deja/old-deja.exp (g++-dg-prune): Delete.
+
+ * g++.dg/init/init-ref4.C: Use dg-require-weak.
+ * g++.old-deja/g++.pt/static3.C: Likewise.
+ * g++.dg/parse/attr-ctor1.C: Use dg-require-named-sections.
+
+2004-04-09 Andreas Schwab <schwab@suse.de>
+
+ * lib/prune.exp (prune_gcc_output): Ignore errata warning from
+ IA64 assembler.
+
+2004-04-05 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ Backport from mainline:
+
+ 2004-03-26 James A. Morrison <ja2morri@uwaterloo.ca>
+
+ * gcc.dg/20001013-1.c: Run on 32-bit and 64-bit SPARC.
+ * gcc.dg/20001101-1.c: Likewise.
+ * gcc.dg/20001102-1.c: Likewise.
+
+ 2004-03-22 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.dg/ultrasp2.c: Do not pass -m64. Remove redundant lines.
+ * gcc.dg/ultrasp4.c: Likewise.
+ * gcc.dg/ultrasp8.c: Do not pass -m64. Add sparcv9-*-*.
+
+2004-04-02 Jakub Jelinek <jakuB@redhat.com>
+
+ PR optimization/13424, optimization/12419
+ * gcc.dg/20040302-1.c: New test.
+ * gcc.c-torture/execute/20040401-1.c: New test.
+
+2004-04-01 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14803
+ * g++.dg/inherit/ptrmem1.C: New test.
+
+2004-04-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/14755
+ * gcc.c-torture/execute/20040331-1.c: New test.
+ * gcc.dg/20040331-1.c: New test.
+
+2004-03-30 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14724
+ * g++.dg/init/goto1.C: New test.
+
+ PR c++/14763
+ * g++.dg/template/defarg4.C: New test.
+
+2004-03-23 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/14669
+ * g++.dg/opt/fold2.C: New test case.
+
+2004-03-22 Mark Mitchell <mark@codesourcery.com>
+
+ PR c/13129
+ * gcc.dg/Wshadow-2.c: New test.
+
+2004-03-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/14069
+ * gcc.dg/20040322-1.c: New test.
+
+2004-03-21 Roger Sayle <roger@eyesopen.com>
+
+ PR target/13889
+ * gcc.c-torture/compile/pr13889.c: New test case.
+
+2004-03-21 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14616
+ * g++.dg/init/array13.C: New test.
+
+2004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/14635
+ * builtins-1.c (nan, nans): Don't test.
+ * builtins-30.c: Don't use nan, nanf, nanl.
+ * builtins-35.c: New test.
+
+2004-03-19 Mark Mitchell <mark@codesourcery.com>
+
+ * g++.dg/init/placement3.C: New test.
+
+ * g++.dg/template/spec13.C: New test.
+
+ * g++.dg/lookup/using11.C: New test.
+
+ * g++.dg/lookup/koenig3.C: New test.
+
+ * g++.dg/template/operator2.C: New test.
+
+ * g++.dg/expr/dtor3.C: New test.
+ * g++.old-deja/g++.brendan/crash15.C: Remove incorrect dg-error
+ marker.
+ * g++.old-deja/g++.law/visibility28.C: Likewise.
+
+2004-03-19 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14545
+ * g++.dg/parse/template15.C: New test.
+
+2004-03-18 Mark Mitchell <mark@codesourcery.com>
+
+ * g++.dg/expr/dtor2.C: New test.
+
+ * g++.dg/lookup/anon4.C: New test.
+
+ * g++.dg/overload/using1.C: New test.
+
+ * g++.dg/template/lookup7.C: New test.
+
+ * g++.dg/template/typename6.C: New test.
+
+ * g++.dg/expr/cond6.C: New test.
+
+ * g++.dg/expr/cond5.C: New test.
+ * g++.dg/expr/constcast1.C: Likewise.
+ * g++.dg/expr/ptrmem2.C: Likewise.
+ * g++.dg/expr/ptrmem3.C: Likewise.
+ * g++.dg/lookup/main1.C: Likewise.
+ * g++.dg/template/lookup6.C: Likewise.
+
+ * gcc.dg/local1.c: New test.
+
+ * gcc.dg/debug/dwarf2/c99-typedef1.c: New test.
+
+2004-03-16 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14481
+ * g++.dg/warn/Wunused-7.C: New test.
+
+ PR c++/14586
+ * g++.dg/parse/non-dependent3.C: New test.
+
+2004-03-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR other/14544
+ * gcc.c-torture/execute/20040307-1.c: Remove the 24-bit
+ bit-field.
+
+2004-03-13 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.dg/decl-5.c: Remove XFAIL.
+
+2004-03-13 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.c-torture/execute/20040313-1.c: New test.
+
+2004-03-13 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14550
+ * g++.dg/parse/template14.C: New test.
+
+2004-03-13 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/14533
+ * gcc.dg/20040311-2.c: New test.
+
+2004-03-12 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * gcc.dg/arm-mmx-1.c: Don't look for ldmfd if -mthumb.
+
+2004-03-11 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14476
+ * g++.dg/lookup/enum1.C: New test.
+
+2004-03-10 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14510
+ * g++.dg/lookup/struct2.C: New test.
+
+2004-03-09 Nathan Sidwell <nathan@garibaldi.home>
+
+ PR c++/14397
+ * g++.dg/overload/ref1.C: New.
+
+2004-03-09 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/14289
+ * gcc.dg/pr14289-1.c: New test case.
+ * gcc.dg/pr14289-2.c: Likewise.
+ * gcc.dg/pr14289-3.c: Likewise.
+
+2004-03-09 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14409
+ * g++.dg/template/spec12.C: New test.
+
+ PR c++/14448
+ * g++.dg/parse/crash14.C: New test.
+
+2004-03-09 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14230
+ * g++.dg/init/ref11.C: New test.
+
+ PR c++/14432
+ * g++.dg/parse/builtin2.C: New test.
+
+2004-03-08 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14401
+ * g++.dg/init/ctor3.C: New test.
+ * g++.dg/init/union1.C: New test.
+ * g++.dg/ext/anon-struct4.C: New test.
+
+2004-03-08 Roger Sayle <roger@eyesopen.com>
+
+ * gcc.c-torture/execute/20040307-1.c: New test case.
+
+2004-03-08 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * gcc.c-torture/execute/20040308-1.c: New test.
+
+2004-03-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * gcc.dg/torture/mips-sdata-1.c: Restrict to mips*-*-elf*.
+
+2004-03-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * gcc.dg/20040306-1.c: New test.
+
+2004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.dg/decl-5.c: XFAIL.
+
+2004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/14465
+ * gcc.dg/decl-6.c: New test.
+
+2004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.dg/i386-sse-8.c: New test.
+
+2004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.dg/decl-5.c: New test.
+
+2004-03-05 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/14203
+ * g++.dg/warn/Wunused-6.C: New test case.
+
+2004-03-05 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * gcc.dg/20040305-1.c: New test.
+
+2004-03-03 Zack Weinberg <zack@codesourcery.com>
+
+ PR 13728
+ * gcc.dg/decl-4.c: New testcase.
+
+2004-03-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gcc.dg/builtins-config.h: Use underscore macro style for __sun
+ system type. Add check for irix6 which doesn't have c99 runtime.
+
+2004-03-03 Bob Wilson <bob.wilson@acm.org>
+
+ * gcc.dg/const-elim-1.c: xfail for xtensa.
+
+2004-03-01 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14369
+ * g++.dg/template/cond4.C: New test.
+
+ PR c++/14360
+ * g++.old-deja/g++.ns/koenig5.C: Remove some error markers.
+
+ PR c++/14361
+ * g++.dg/parse/defarg7.C: New test.
+
+ PR c++/14359
+ * g++.dg/template/friend26.C: New test.
+
+ PR c++/14324
+ * g++.dg/abi/mangle21.C: New test.
+
+ PR c++/14260
+ * g++.dg/parse/constructor2.C: New test.
+
+ PR c++/14337
+ * g++.dg/template/sfinae1.C: New test.
+
+2004-02-29 Mark Mitchell <mark@codesourcery.com>
+
+ PR middle-end/13448
+ * gcc.dg/inline-5.c: New test.
+ * gcc.dg/always-inline.c: Split out tests into ...
+ * gcc.dg/always-inline2.c: ... this and ...
+ * gcc.dg/always-inline3.c: ... this.
+
+ PR debug/12103
+ * g++.dg/debug/crash1.C: New test.
+
+2004-02-27 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14284
+ * g++.dg/template/ttp8.C: New test.
+
+2004-02-26 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14278
+ * g++.dg/parse/comma1.C: New test.
+
+2004-02-26 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * gcc.dg/builtins-config.h: Use #elif.
+
+2004-02-26 Michael Matz <matz@suse.de>
+
+ * gcc.dg/20000724-1.c: Add regparm attribute to decl and def.
+ * gcc.dg/991214-1.c: Likewise.
+ * gcc.dg/i386-asm-1.c: Likewise.
+
+2004-02-26 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14246
+ * g++.dg/other/crash-3.C: New test.
+
+2004-02-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * g++.dg/opt/inline4.C (dg-final): Robustify regexp.
+ * g++.dg/opt/inline6.C (dg-final): Robustify regexp.
+
+ * gcc.dg/builtins-config.h (HAVE_C99_RUNTIME): Don't define for PA
+ HP-UX.
+
+2004-02-25 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * g++.dg/eh/simd-1.C: Tweak again for SPARC.
+ * g++.dg/eh/simd-2.C: Likewise.
+
+2004-02-24 Michael Matz <matz@suse.de>
+
+ * gcc.dg/i386-regparm.c: New test.
+
+2004-02-23 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+
+ PR c++/14106
+ * g++.dg/ext/typeof9.C: New test.
+
+2004-02-23 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14250
+ * g++.dg/other/switch1.C: New test.
+
+2004-02-23 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.dg/cast-function-1.c: Adjust for new informative message.
+ * gcc.dg/va-arg-1.c: Likewise.
+
+2004-02-22 Hans-Peter Nilsson <hp@axis.com>
+
+ PR target/14209
+ * gcc.c-torture/execute/20040218-1.c: New test.
+
+2004-02-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * lib/target-supports.exp (check_alias_available): Don't mangle
+ function `g' in test program.
+
+2004-02-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * lib/target-supports.exp (check_profiling_available): Check
+ argument to determine whether we support a profiling type.
+ * lib/gcc-dg.exp (dg-require-profiling): Pass argument to
+ check_profiling_available.
+ * g++.dg/bprob/bprob.exp: Likewise
+ * g77.dg/bprob/bprob.exp: Likewise.
+ * gcc.misc-tests/bprob.exp: Likewise.
+ * g++.old-deja/g++.law/profile1.C: Pass profiling type to
+ dg-require-profiling and delete expected error handling.
+ * gcc.dg/20021014-1.c: Likewise.
+ * gcc.dg/nest.c: Likewise.
+
+2004-02-20 Falk Hueffner <falk@debian.org>
+
+ PR target/14201
+ * gcc.c-torture/compile/fix-trunc-mem-1.c: New test.
+
+2004-02-20 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14173
+ * g++.dg/ext/packed5.C: New test.
+
+ PR c++/14199
+ * g++.dg/warn/Wunused-5.C: New test.
+
+2004-02-20 Josef Zlomek <zlomekj@suse.cz>
+
+ Backport from mainline:
+ 2004-02-14 Josef Zlomek <zlomekj@suse.cz>
+
+ * gcc.c-torture/compile/20040214-2.c: New test.
+
+2004-02-19 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14186
+ * g++.dg/lookup/member1.C: New test.
+
+2004-02-19 Nathan Sidwell <nathan@codesourcery.com>
+
+ * g++.dg/parse/attr-ctor1.C: XFAIL on hppa.
+ * g++.dg/opt/template1.C: Robustify assembler regexp
+
+2004-02-19 Alan Modra <amodra@bigpond.net.au>
+
+ * gcc.c-torture/compile/complex-1.c: New.
+
+2004-02-19 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14181
+ * g++.dg/parse/new2.C: New test.
+
+2004-02-18 Paul Brook <paul@codesourcery.com>
+
+ * gcc.c-torture/compile/libcall-1.c: New test.
+
+2004-02-18 Paul Brook <paul@codesourcery.com>
+
+ PR debug/12934
+ * gcc.dg/debug/debug-7.c: New test.
+
+2004-02-17 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/11326
+ * g++.dg/abi/structret1.C: New test.
+
+2004-02-17 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * gcc.dg/20040217-1.c: New test.
+
+2004-02-17 Zack Weinberg <zack@codesourcery.com>
+
+ * gcc.c-torture/execute/990208-1.x: Delete.
+
+2004-02-17 Richard Sandiford <rsandifo@redhat.com>
+
+ * gcc.c-torture/execute/20040208-2.x: New file.
+
+2004-02-17 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc.dg/i386-cpuid.h (bit_CMOV): Define.
+ (i386_cpuid): No need to test if cpuid is available on AMD64.
+ Fix assembly, so that it works onboth i386 and AMD64.
+ * gcc.dg/i386-sse-6.c: Include stdio.h, stdlib.h and string.h.
+ (vecInLong): Fix s[] member type to unsigned int.
+ (vecInWord): Remove type.
+ (mmx_tests, sse_tests, dump64_16, dump64_32, dump64_64): Remove.
+ (a64, b64, c64, d64, e64): Remove.
+ (main): Pass if CPU has no MMX, SSE, SSE2 or CMOV support.
+ Remove unused variable. Remove initialization of removed variables.
+ Don't call mmx_tests nor sse_tests.
+ (reference_mmx, reference_sse): Remove.
+ (check): Add return stmt.
+ * gcc.dg/i386-sse-7.c: New test.
+ * gcc.dg/i386-mmx-4.c: New test.
+
+2004-02-16 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.c-torture/execute/20020720-1.x: XFAIL on SPARC with -fPIC.
+
+2004-02-15 Roger Sayle <roger@eyesopen.com>
+
+ Backport from mainline:
+
+ 2004-02-07 Roger Sayle <roger@eyesopen.com>
+ PR middle-end/13696
+ * g++.dg/opt/fold1.C: New test case.
+
+ 2004-02-09 Roger Sayle <roger@eyesopen.com>
+ * gcc.c-torture/compile/20040209-1.c: New test case.
+
+ 2004-02-10 Paolo Bonzini <bonzini@gnu.org>
+ PR c/14092
+ * gcc.dg/pr14092-1.c: New testcase.
+
+2004-02-15 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13971
+ * g++.dg/expr/cond4.C: New test.
+
+ PR c++/14086
+ * g++.dg/lookup/crash2.C: New test.
+
+2004-02-14 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c++/14116
+ * g++.dg/ext/typeof8.C: New test.
+
+2004-02-14 Richard Sandiford <rsandifo@redhat.com>
+
+ Backport from mainline:
+
+ 2004-02-08 Richard Sandiford <rsandifo@redhat.com>
+ * gcc.c-torture/execute/20040208-[12].c: New tests.
+
+2004-02-14 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * gcc.c-torture/compile/20040214-1.c: New test.
+
+2004-02-14 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+
+ PR c++/13635
+ * g++.dg/template/spec11.C: New test.
+
+2004-02-13 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14122
+ * g++.dg/template/array4.C: New test.
+
+ PR c++/14108
+ * g++.dg/inherit/thunk2.C: New test.
+
+2004-02-13 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/13927
+ * g++.dg/other/error8.C: New test.
+
+2004-02-13 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14083
+ * call.c (build_conditional_expr): Call force_rvalue on the
+ non-void operand in the case that one result is a throw-expression
+ and the other is not.
+
+2004-02-12 Alan Modra <amodra@bigpond.net.au>
+
+ * gcc.dg/debug/20020327-1.c: Disable for powerpc64.
+
+2004-02-12 Nathaniel Smith <njs@codesourcery.com>
+
+ * lib/scanasm.exp (dg-scan): Quote pattern before display.
+
+2004-02-12 Hartmut Penner <hpenner@de.ibm.com>
+
+ * gcc.dg/ppc64-abi-3.c: New.
+
+2004-02-12 Hartmut Penner <hpenner@de.ibm.com>
+
+ * g++.dg/simd-2.C: xfail on ppc64-linux.
+
+2004-02-11 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/456
+ * gcc.dg/cpp/c90-if-comma-1.c, gcc.dg/cpp/c99-if-comma-1.c: New
+ tests.
+
+2004-02-10 Alan Modra <amodra@bigpond.net.au>
+
+ * gcc.dg/cpp/assert4.c: Fix typo last change.
+
+ * gcc.dg/cpp/assert4.c: Handle powerpc64.
+
+ * gcc.dg/debug/20020327-1.c: xfail for powerpc64.
+
+2004-02-08 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * gcc.dg/c90-init-1.c: Adjust expected error messages.
+
+2004-02-08 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * g++.dg/eh/simd-2.C: Adjust line numbers for SPARC.
+
+2004-02-08 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.c-torture/execute/va-arg-25.x: XFAIL only on SPARC 64-bit.
+
+2004-02-07 Zack Weinberg <zack@codesourcery.com>
+
+ Bug 13856
+ * gcc.dg/visibility-8.c: New testcase.
+
+2004-02-07 Geoffrey Keating <geoffk@geoffk.org>
+ Andrew Pinski <pinskia@physics.uc.edu>
+
+ * objc.dg/call-super-2.m: Include stddef.h for size_t.
+ Update line numbers for the including of stddef.h.
+
+2004-02-07 Zack Weinberg <zack@codesourcery.com>
+
+ * gcc.c-torture/execute/string-opt-15.c: Define memcmp with void *
+ arguments.
+ * gcc.dg/fwritable-strings-1.c: Expect the deprecation notice.
+
+2003-02-06 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14033
+ * g++.dg/other/crash-2.C: New test.
+
+2004-02-06 Falk Hueffner <falk@debian.org>
+
+ PR target/12898
+ * gcc.c-torture/compile/20040121-1.c: New test.
+
+2003-02-06 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/14028
+ * g++.dg/parse/angle-bracket2.C: New test.
+
+2004-02-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ PR middle-end/13750
+ Revert:
+ 2004-01-15 Geoffrey Keating <geoffk@apple.com>
+ PR pch/13361
+ * testsuite/g++.dg/pch/wchar-1.C: New.
+ * testsuite/g++.dg/pch/wchar-1.Hs: New.
+
+2004-02-04 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13932
+ * g++.dg/warn/conv2.C: New test.
+
+ * lib/file-format.exp (gcc_target_object_format): Use
+ ${tool}_target_compile, not gcc_target_compile.
+ * lib/target-supports.exp (check_alias_available): Likewise.
+ (check_gc_sections_available): Likewise.
+ * g++.dg/ext/attrib10.C: Use dg-require-alias.
+ * g++.old-deja/g++.ext/attrib5.C: Use dg-require-weak and
+ dg-require-alias.
+
+2004-02-04 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/13086
+ * g++.dg/warn/incomplete1.C: Remove xfail.
+
+2004-02-04 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13969
+ * g++.dg/template/static6.C: New test.
+
+2004-02-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * objc.dg/encode-2.m, objc.dg/encode-3.m, objc.dg/encode-4.m: Fix
+ tests for systems where `char' is unsigned by default.
+
+2003-02-04 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/13997
+ * g++.dg/template/partial3.C: New test.
+
+2004-02-03 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13950
+ * g++.dg/template/lookup4.C: New test.
+
+ PR c++/13970
+ * g++.dg/parse/error14.C: New test.
+
+2004-02-03 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13925
+ * g++.dg/template/lookup5.C: New test.
+
+ PR c++/14002
+ * g++.dg/parse/template13.C: New test.
+
+ PR c++/13978
+ * g++.dg/template/koenig4.C: New test.
+
+ PR c++/13968
+ * g++.dg/template/crash17.C: New test.
+
+ PR c++/13975
+ * g++.dg/parse/error13.C: New test.
+ * g++.old-deja/g++.robertl/eb125.C: Tweak error messages.
+
+2004-02-02 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c++/10858
+ * g++.dg/template/sizeof7.C: New test.
+
+2004-02-02 Eric Christopher <echristo@redhat.com>
+ Zack Weinberg <zack@codesourcery.com>
+
+ * gcc.c-torture/execute/wchar_t-1.c: Add -finput-charset.
+
+2004-02-02 Zack Weinberg <zack@codesourcery.com>
+
+ * g++.dg/eh/forced1.C, g++.dg/eh/forced2.C, g++.dg/eh/forced3.C
+ * g++.dg/eh/forced4.C: XFAIL ia64-hp-hpux11.*.
+ * g++.dg/eh/ia64-1.C: Test branch regs only #ifdef __LP64__.
+ * gcc.dg/cleanup-5.c: Run only on Linux targets.
+
+2004-02-02 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ DR206
+ PR c++/13813
+ * g++.dg/template/member4.C: New test.
+
+2004-02-02 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13113
+ * g++.old-deja/g++.mike/net36.C: Adjust error messages.
+
+ PR c++/13854
+ * g++.dg/ext/attrib13.C: New test.
+
+ PR c++/13907
+ * g++.dg/conversion/op2.C: New test.
+
+2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.dg/titype-1.c: Fix pasto.
+
+2004-02-02 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/13957
+ * g++.dg/template/non-type-template-argument-1.C,
+ g++.dg/template/qualified-id1.C: Update dg-error marks.
+ * g++.dg/template/nontype6.C: New test.
+
+2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.dg/titype-1.c: New test.
+
+2004-01-30 Michael Matz <matz@suse.de>
+
+ * g++.dg/ext/case-range1.C, g++.dg/ext/case-range2.C,
+ g++.dg/ext/case-range3.C: New tests.
+
+2004-01-31 Bud Davis <bdavis9659@comcast.net>
+
+ PR fortran/12884
+ * g77.f-torture/execute/12884.f: New test
+
+2004-01-30 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/13683
+ * g++.dg/template/sizeof6.C: New test.
+
+2004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.dg/fwritable-strings-1.c: New test.
+
+2004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.c-torture/compile/20040130-1.c: New test.
+
+2004-01-29 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ * g++.dg/parse/error11.C: New test.
+ * g++.dg/parse/error12.C: Likewise.
+
+2004-01-29 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13883
+ * g++.dg/template/ctor3.C: New test.
+
+2004-01-28 Ziemowit Laski <zlaski@apple.com>
+
+ * objc.dg/proto-qual-1.m (ROUND, aligned_sizeof): New.
+ (scan_initial, main): Use aligned_sizeof instead of sizeof.
+
+2004-01-28 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13791
+ * g++.dg/ext/attrib12.C: New test.
+
+2004-01-28 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13736
+ * g++.dg/parse/cast2.C: New test.
+
+2004-01-27 James E Wilson <wilson@specifixinc.com>
+
+ * objc.dg/encode-2.m (main): New local string. Set depending on
+ sizeof long. Use in sscanf call.
+ * objc.dg/encode-3.m (main): New local string. Set depending on
+ sizeof long. Use in scan_initial call.
+
+2004-01-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * objc.dg/call-super-2.m: Make LP64-safe.
+ * objc.dg/desig-init-1.m: Likewise.
+
+2004-01-27 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * gcc.dg/arm-mmx-1.c: New test.
+
+2004-01-27 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.dg/20040127-1.c: New test.
+ * gcc.dg/20040127-2.c: New test.
+
+2004-01-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * objc.dg/stret-1.m (glob): Renamed to globa.
+
+2004-01-26 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13363
+ * g++.dg/expr/for1.C: New test.
+
+2004-01-26 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.dg/sparc-ret.c: Run only in 32-bit mode. Don't scan
+ the assembly output if -m64 is passed.
+
+2004-01-25 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13833
+ * g++.dg/template/cond3.C: New test.
+
+2004-01-25 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/13810
+ * g++.dg/template/ttp7.C: New test.
+
+2004-01-25 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+
+ PR c++/13797
+ * g++.dg/template/nontype4.C: New test.
+ * g++.dg/template/nontype5.C: Likewise.
+
+2004-01-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * gcc.dg/torture/mips-clobber-at.c: New test.
+
+2004-01-24 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc.dg/20040123-1.c: New test.
+
+2004-01-23 Zack Weinberg <zack@codesourcery.com>
+
+ PR 18314
+ * gcc.dg/builtins-30.c: New testcase.
+
+2004-01-22 Hartmut Penner <hpenner@de.ibm.com>
+
+ * gcc.dg/ppc64-abi-2.c: New test.
+
+2004-01-22 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.dg/struct-by-value-2.c: New test.
+
+2004-01-21 Andrew Pinski <apinski@apple.com>
+
+ PR target/13785
+ * gcc.dg/20030121-1.c: New test.
+
+2004-01-22 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * gcc.dg/20030123-1.c: Add -fno-omit-frame-pointer option. Do not
+ clobber frame pointer register in asm statement.
+
+2004-01-21 Zack Weinberg <zack@codesourcery.com>
+
+ * gcc.dg/noncompile/20020213-1.c: Add another dg-warning line.
+
+2004-01-19 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13592
+ * g++.dg/other/error1.C (class foo): Tweak error message.
+
+2004-01-19 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13592
+ * g++.dg/template/call2.C: New test.
+
+2004-01-19 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * gcc.dg/tls/alias-1.c: Add dg-warning for unsupported visibility
+ attribute on sparc*-sun-solaris2.*.
+
+2004-01-18 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13710
+ * g++.dg/ext/typeof7.C: New test.
+
+2004-01-17 Ziemowit Laski <zlaski@apple.com>
+
+ * objc.dg/stret-1.m: New.
+ * objc.dg/stret-2.m: New.
+
+2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c++/11895
+ * g++.dg/ext/vector1.C: New test.
+
2004-01-16 Mark Mitchell <mark@codesourcery.com>
PR c++/13574
@@ -20230,4 +21184,3 @@ rlsruhe.de>
correspond to c-torture 1.11.
* New file.
-
diff --git a/gcc/testsuite/g++.dg/abi/mangle21.C b/gcc/testsuite/g++.dg/abi/mangle21.C
new file mode 100644
index 00000000000..f457d600cd8
--- /dev/null
+++ b/gcc/testsuite/g++.dg/abi/mangle21.C
@@ -0,0 +1,13 @@
+// PR c++/14324
+// { dg-do assemble }
+
+extern "C" {
+
+void fun1(void)
+{
+ do { static int xyz __attribute__((unused)) = 1; } while (0);
+ do { static int xyz __attribute__((unused)) = 2; } while (0);
+ do { static int xyz __attribute__((unused)) = 3; } while (0);
+}
+
+}
diff --git a/gcc/testsuite/g++.dg/abi/structret1.C b/gcc/testsuite/g++.dg/abi/structret1.C
new file mode 100644
index 00000000000..e9d4fd0ff9f
--- /dev/null
+++ b/gcc/testsuite/g++.dg/abi/structret1.C
@@ -0,0 +1,31 @@
+// { dg-do run { target ia64-*-* } }
+// { dg-options "-fabi-version=0" }
+
+extern "C" void abort ();
+
+struct ConstructedObject {
+ ConstructedObject() {};
+ ~ConstructedObject() {};
+ ConstructedObject(const ConstructedObject &from) {};
+};
+
+struct FrameworkObject {
+ ConstructedObject action();
+};
+
+ConstructedObject FrameworkObject::action() {
+ void *r32, *r33;
+
+ asm("mov %0 = r32\nmov %1 = r33" : "=r"(r32), "=r"(r33) : );
+ if (this != r33) {
+ abort ();
+ }
+}
+
+int main()
+{
+ FrameworkObject slawa;
+ slawa.action();
+ return 0;
+}
+
diff --git a/gcc/testsuite/g++.dg/bprob/bprob.exp b/gcc/testsuite/g++.dg/bprob/bprob.exp
index bef57836cf1..ea458fa1797 100644
--- a/gcc/testsuite/g++.dg/bprob/bprob.exp
+++ b/gcc/testsuite/g++.dg/bprob/bprob.exp
@@ -21,7 +21,7 @@ load_lib target-supports.exp
# Some targets don't have any implementation of __bb_init_func or are
# missing other needed machinery.
-if { ![check_profiling_available] } {
+if { ![check_profiling_available "-fprofile-arcs"] } {
return
}
diff --git a/gcc/testsuite/g++.dg/conversion/op2.C b/gcc/testsuite/g++.dg/conversion/op2.C
new file mode 100644
index 00000000000..b400988108d
--- /dev/null
+++ b/gcc/testsuite/g++.dg/conversion/op2.C
@@ -0,0 +1,16 @@
+// PR c++/13907
+
+struct A {
+ operator int & ();
+ operator const int & () const;
+};
+
+
+void f(int &);
+void f(const int &);
+
+
+int main() {
+ const A x = A();
+ f(x);
+}
diff --git a/gcc/testsuite/g++.dg/debug/crash1.C b/gcc/testsuite/g++.dg/debug/crash1.C
new file mode 100644
index 00000000000..4fba256b7cc
--- /dev/null
+++ b/gcc/testsuite/g++.dg/debug/crash1.C
@@ -0,0 +1,17 @@
+template <typename T>
+class foo
+{
+ T t;
+};
+
+class bar;
+typedef foo<bar> foobar;
+
+class obj
+{
+ virtual foobar* yeah() = 0;
+};
+
+class bar : virtual public obj
+{
+};
diff --git a/gcc/testsuite/g++.dg/eh/cond2.C b/gcc/testsuite/g++.dg/eh/cond2.C
new file mode 100644
index 00000000000..e4b45f7a46f
--- /dev/null
+++ b/gcc/testsuite/g++.dg/eh/cond2.C
@@ -0,0 +1,19 @@
+// PR c++/14083
+
+struct A {
+ A() throw() { }
+ A(const A&) throw() { }
+};
+
+struct X {
+ A a;
+ X();
+ X& operator=(const X& __str);
+};
+
+bool operator==(const X& __lhs, const char* __rhs);
+
+int main() {
+ X x;
+ x=="" ? x : throw 1;
+}
diff --git a/gcc/testsuite/g++.dg/eh/forced1.C b/gcc/testsuite/g++.dg/eh/forced1.C
index 8f090fa9df5..7244a35f36c 100644
--- a/gcc/testsuite/g++.dg/eh/forced1.C
+++ b/gcc/testsuite/g++.dg/eh/forced1.C
@@ -1,4 +1,5 @@
-// { dg-do run }
+// HP-UX libunwind.so doesn't provide _Unwind_ForcedUnwind.
+// { dg-do run { xfail "ia64-hp-hpux11.*" } }
// Test that forced unwinding runs all cleanups. Also tests that
// rethrowing doesn't call the exception object destructor.
diff --git a/gcc/testsuite/g++.dg/eh/forced2.C b/gcc/testsuite/g++.dg/eh/forced2.C
index ebfda5554f2..b8ace620dbe 100644
--- a/gcc/testsuite/g++.dg/eh/forced2.C
+++ b/gcc/testsuite/g++.dg/eh/forced2.C
@@ -1,4 +1,5 @@
-// { dg-do run }
+// HP-UX libunwind.so doesn't provide _Unwind_ForcedUnwind.
+// { dg-do run { xfail "ia64-hp-hpux11.*" } }
// Test that leaving the catch block without rethrowing
// does call the exception object destructor.
diff --git a/gcc/testsuite/g++.dg/eh/forced3.C b/gcc/testsuite/g++.dg/eh/forced3.C
index 2de421c4412..29d65d91551 100644
--- a/gcc/testsuite/g++.dg/eh/forced3.C
+++ b/gcc/testsuite/g++.dg/eh/forced3.C
@@ -1,4 +1,5 @@
-// { dg-do run }
+// HP-UX libunwind.so doesn't provide _Unwind_ForcedUnwind.
+// { dg-do run { xfail "ia64-hp-hpux11.*" } }
// Test that forced unwinding calls std::unexpected going
// throw a nothrow function.
diff --git a/gcc/testsuite/g++.dg/eh/forced4.C b/gcc/testsuite/g++.dg/eh/forced4.C
index be03a7544b6..88b48c82b0a 100644
--- a/gcc/testsuite/g++.dg/eh/forced4.C
+++ b/gcc/testsuite/g++.dg/eh/forced4.C
@@ -1,4 +1,5 @@
-// { dg-do run }
+// HP-UX libunwind.so doesn't provide _Unwind_ForcedUnwind.
+// { dg-do run { xfail "ia64-hp-hpux11.*" } }
// Test that forced unwinding does not call std::unexpected going
// throw a function with a non-empty exception spec.
diff --git a/gcc/testsuite/g++.dg/eh/ia64-1.C b/gcc/testsuite/g++.dg/eh/ia64-1.C
index a1b731c8d80..17ef7f8b78c 100644
--- a/gcc/testsuite/g++.dg/eh/ia64-1.C
+++ b/gcc/testsuite/g++.dg/eh/ia64-1.C
@@ -1,10 +1,13 @@
// Test whether call saved float and branch regs are restored properly
+// We can't do this test for branch regs in ILP32 mode.
// { dg-do run { target ia64-*-* } }
// { dg-options "-O2" }
extern "C" void abort (void);
+#ifdef __LP64__
char buf[128];
+#endif
void __attribute__((noinline))
bar (void)
@@ -28,13 +31,17 @@ main (void)
register double f5 __asm ("f5");
register double f16 __asm ("f16");
register double f17 __asm ("f17");
+#ifdef __LP64__
register void *b1 __asm ("b1");
register void *b2 __asm ("b2");
register void *b3 __asm ("b3");
register void *b4 __asm ("b4");
register void *b5 __asm ("b5");
+#endif
f2 = 12.0; f3 = 13.0; f4 = 14.0; f5 = 15.0; f16 = 16.0; f17 = 17.0;
+#ifdef __LP64__
b1 = &buf[1]; b2 = &buf[2]; b3 = &buf[3]; b4 = &buf[4]; b5 = &buf[5];
+#endif
try
{
foo ();
@@ -43,8 +50,10 @@ main (void)
if (f2 != 12.0 || f3 != 13.0 || f4 != 14.0
|| f5 != 15.0 || f16 != 16.0 || f17 != 17.0)
abort ();
+#ifdef __LP64__
if (b1 != &buf[1] || b2 != &buf[2] || b3 != &buf[3]
|| b4 != &buf[4] || b5 != &buf[5])
abort ();
+#endif
return 0;
}
diff --git a/gcc/testsuite/g++.dg/eh/simd-1.C b/gcc/testsuite/g++.dg/eh/simd-1.C
index d10a74ab274..a8b180b6f45 100644
--- a/gcc/testsuite/g++.dg/eh/simd-1.C
+++ b/gcc/testsuite/g++.dg/eh/simd-1.C
@@ -3,7 +3,7 @@
// { dg-options "-O" }
// { dg-options "-O -w" { target i?86-*-* } }
// { dg-do run }
-// { dg-error "" "PR target/12916" { target sparc*-*-* } 11 }
+// { dg-error "" "PR target/12916" { target sparc*-*-* } 0 }
typedef int __attribute__((mode(V2SI))) vecint;
diff --git a/gcc/testsuite/g++.dg/eh/simd-2.C b/gcc/testsuite/g++.dg/eh/simd-2.C
index 81c4025a12e..3b4b02d3841 100644
--- a/gcc/testsuite/g++.dg/eh/simd-2.C
+++ b/gcc/testsuite/g++.dg/eh/simd-2.C
@@ -2,8 +2,9 @@
// Contributed by Aldy Hernandez (aldy@quesejoda.com).
// { dg-options "-O" }
// { dg-options "-O -w" { target i?86-*-* } }
-// { dg-do run }
-// { dg-error "" "PR target/12916" { target sparc*-*-* } 11 }
+// { dg-options "-O -w -maltivec" { target powerpc64-*-linux* } }
+// { dg-do run { xfail "powerpc64-*-linux*"} }
+// { dg-error "" "PR target/12916" { target sparc*-*-* } 0 }
typedef int __attribute__((mode(V4SI))) vecint;
@@ -43,6 +44,10 @@ void f1 (void)
int main ()
{
+#if defined(__powerpc64__) && defined(__linux__)
+ // Don't run on ppc64-linux, since not always AltiVec regs available
+ return -1;
+#endif
f1 ();
return 0;
}
diff --git a/gcc/testsuite/g++.dg/eh/spec7.C b/gcc/testsuite/g++.dg/eh/spec7.C
new file mode 100644
index 00000000000..08586a2af75
--- /dev/null
+++ b/gcc/testsuite/g++.dg/eh/spec7.C
@@ -0,0 +1,35 @@
+// PR 14535
+// { dg-do run }
+// { dg-options "-O -finline" }
+//
+// Original test case failure required that Raiser constructor be inlined.
+
+extern "C" void abort();
+bool destructor_called = false;
+
+struct B {
+ virtual void Run(){};
+};
+
+struct D : public B {
+ virtual void Run()
+ {
+ struct O {
+ ~O() { destructor_called = true; };
+ } o;
+
+ struct Raiser {
+ Raiser() throw( int ) {throw 1;};
+ } raiser;
+ };
+};
+
+int main() {
+ try {
+ D d;
+ static_cast<B&>(d).Run();
+ } catch (...) {}
+
+ if (!destructor_called)
+ abort ();
+}
diff --git a/gcc/testsuite/g++.dg/expr/anew1.C b/gcc/testsuite/g++.dg/expr/anew1.C
index a14408ace0a..9e0d0ec601f 100644
--- a/gcc/testsuite/g++.dg/expr/anew1.C
+++ b/gcc/testsuite/g++.dg/expr/anew1.C
@@ -1,12 +1,20 @@
-// { dg-do run }
+// { dg-do run { xfail *-*-* } }
+// XFAILed until PR2123 is fixed
// PR 11228: array operator new, with zero-initialization and a variable sized array.
// Regression test for PR
// Author: Matt Austern <austern@apple.com>
+#include <new>
+#include <stdlib.h>
+#include <string.h>
+
int* allocate(int n)
{
- return new int[n]();
+ void *p;
+ p = malloc(n * sizeof (int));
+ memset (p, 0xff, n * sizeof(int));
+ return new (p) int[n]();
}
int main()
@@ -15,6 +23,6 @@ int main()
int* p = allocate(n);
for (int i = 0; i < n; ++i)
if (p[i] != 0)
- return 1;
- return 0;
+ abort ();
+ exit (0);
}
diff --git a/gcc/testsuite/g++.dg/expr/anew2.C b/gcc/testsuite/g++.dg/expr/anew2.C
index b8681897577..aa11eef149c 100644
--- a/gcc/testsuite/g++.dg/expr/anew2.C
+++ b/gcc/testsuite/g++.dg/expr/anew2.C
@@ -1,12 +1,20 @@
-// { dg-do run }
+// { dg-do run { xfail *-*-* } }
+// XFAILed until PR2123 is fixed
// PR 11228: array operator new, with zero-initialization and a variable sized array.
// Regression test for PR
// Author: Matt Austern <austern@apple.com>
+#include <new>
+#include <stdlib.h>
+#include <string.h>
+
double* allocate(int n)
{
- return new double[n]();
+ void *p;
+ p = malloc(n * sizeof (double));
+ memset (p, 0xff, n * sizeof(double));
+ return new (p) double[n]();
}
int main()
@@ -15,6 +23,6 @@ int main()
double* p = allocate(n);
for (int i = 0; i < n; ++i)
if (p[i] != 0.0)
- return 1;
- return 0;
+ abort ();
+ exit (0);
}
diff --git a/gcc/testsuite/g++.dg/expr/anew3.C b/gcc/testsuite/g++.dg/expr/anew3.C
index 3223546d4c8..c8ab44183ca 100644
--- a/gcc/testsuite/g++.dg/expr/anew3.C
+++ b/gcc/testsuite/g++.dg/expr/anew3.C
@@ -1,8 +1,13 @@
-// { dg-do run }
+// { dg-do run { xfail *-*-* } }
+// XFAILed until PR2123 is fixed
// PR 11228: array operator new, with zero-initialization and a variable sized array.
// Regression test for PR
// Author: Matt Austern <austern@apple.com>
+#include <new>
+#include <stdlib.h>
+#include <string.h>
+
struct X
{
int a;
@@ -11,7 +16,10 @@ struct X
X* allocate(int n)
{
- return new X[n]();
+ void *p;
+ p = malloc(n * sizeof (X));
+ memset (p, 0xff, n * sizeof(X));
+ return new (p) X[n]();
}
int main()
@@ -20,6 +28,6 @@ int main()
X* p = allocate(n);
for (int i = 0; i < n; ++i)
if (p[i].a != 0 || p[i].b != 0.0)
- return 1;
- return 0;
+ abort ();
+ exit (0);
}
diff --git a/gcc/testsuite/g++.dg/expr/anew4.C b/gcc/testsuite/g++.dg/expr/anew4.C
index 8999ffb53c6..d86d5251412 100644
--- a/gcc/testsuite/g++.dg/expr/anew4.C
+++ b/gcc/testsuite/g++.dg/expr/anew4.C
@@ -1,8 +1,13 @@
-// { dg-do run }
+// { dg-do run { xfail *-*-* } }
+// XFAILed until PR2123 is fixed
// PR 11228: array operator new, with zero-initialization and a variable sized array.
// Regression test for PR
// Author: Matt Austern <austern@apple.com>
+#include <new>
+#include <stdlib.h>
+#include <string.h>
+
struct B
{
B();
@@ -23,7 +28,10 @@ struct D : public B
D* allocate(int n)
{
- return new D[n]();
+ void *p;
+ p = malloc(n * sizeof (D));
+ memset (p, 0xff, n * sizeof(D));
+ return new (p) D[n]();
}
int main()
@@ -32,6 +40,6 @@ int main()
D* p = allocate(n);
for (int i = 0; i < n; ++i)
if (p[i].n != 137 || p[i].x != 0)
- return 1;
- return 0;
+ abort ();
+ exit (0);
}
diff --git a/gcc/testsuite/g++.dg/expr/cond4.C b/gcc/testsuite/g++.dg/expr/cond4.C
new file mode 100644
index 00000000000..fff5c8b185d
--- /dev/null
+++ b/gcc/testsuite/g++.dg/expr/cond4.C
@@ -0,0 +1,16 @@
+// PR c++/13971
+
+struct QChar {
+ static const QChar null;
+};
+struct QCharRef {
+ operator QChar() const;
+};
+struct QString {
+ QCharRef operator[](int i);
+};
+
+QChar fillParagraph(QString s, int psi) {
+ return psi ? QChar::null : s[psi];
+}
+
diff --git a/gcc/testsuite/g++.dg/expr/cond5.C b/gcc/testsuite/g++.dg/expr/cond5.C
new file mode 100644
index 00000000000..cb62dd1cfa4
--- /dev/null
+++ b/gcc/testsuite/g++.dg/expr/cond5.C
@@ -0,0 +1,3 @@
+void f() {
+ true ? throw 1 : (void)7;
+}
diff --git a/gcc/testsuite/g++.dg/expr/cond6.C b/gcc/testsuite/g++.dg/expr/cond6.C
new file mode 100644
index 00000000000..9308c179541
--- /dev/null
+++ b/gcc/testsuite/g++.dg/expr/cond6.C
@@ -0,0 +1,24 @@
+// { dg-do "run" }
+
+extern "C" void abort ();
+
+struct B {
+ B() {}
+ B(const B& b) { abort (); }
+};
+
+struct D : public B {
+ D() {}
+ D(const D& d) : B() {}
+};
+
+D d;
+B b;
+
+D f() {
+ return d;
+}
+
+int main () {
+ b = (true ? f() : b);
+}
diff --git a/gcc/testsuite/g++.dg/expr/constcast1.C b/gcc/testsuite/g++.dg/expr/constcast1.C
new file mode 100644
index 00000000000..942e6ac59ad
--- /dev/null
+++ b/gcc/testsuite/g++.dg/expr/constcast1.C
@@ -0,0 +1,9 @@
+struct S {
+ int i;
+};
+
+void f() {
+ int const S::*p;
+ const_cast<int const S::*>(p);
+}
+
diff --git a/gcc/testsuite/g++.dg/expr/dtor2.C b/gcc/testsuite/g++.dg/expr/dtor2.C
new file mode 100644
index 00000000000..5f372424e66
--- /dev/null
+++ b/gcc/testsuite/g++.dg/expr/dtor2.C
@@ -0,0 +1,6 @@
+typedef const int I;
+int i;
+
+void f() {
+ i.I::~I();
+}
diff --git a/gcc/testsuite/g++.dg/expr/dtor3.C b/gcc/testsuite/g++.dg/expr/dtor3.C
new file mode 100644
index 00000000000..036e9f2a010
--- /dev/null
+++ b/gcc/testsuite/g++.dg/expr/dtor3.C
@@ -0,0 +1,10 @@
+struct B {
+ ~B();
+};
+struct D : public B {
+ ~D();
+};
+
+void f(D d) {
+ d.B::~B();
+}
diff --git a/gcc/testsuite/g++.dg/expr/for1.C b/gcc/testsuite/g++.dg/expr/for1.C
new file mode 100644
index 00000000000..baffd424a41
--- /dev/null
+++ b/gcc/testsuite/g++.dg/expr/for1.C
@@ -0,0 +1,14 @@
+// PR c++/13663
+
+struct S {
+ void f();
+};
+
+void g(int);
+void g(double);
+
+void h () {
+ S s;
+ for (;;s.f); // { dg-error "" }
+ for (;;g); // { dg-error "" }
+}
diff --git a/gcc/testsuite/g++.dg/expr/ptrmem2.C b/gcc/testsuite/g++.dg/expr/ptrmem2.C
new file mode 100644
index 00000000000..714f87c1b7b
--- /dev/null
+++ b/gcc/testsuite/g++.dg/expr/ptrmem2.C
@@ -0,0 +1,12 @@
+struct S {
+ int i;
+};
+
+int S::**p;
+int S::*q;
+
+void f() {
+ p[1] = q;
+}
+
+
diff --git a/gcc/testsuite/g++.dg/expr/ptrmem3.C b/gcc/testsuite/g++.dg/expr/ptrmem3.C
new file mode 100644
index 00000000000..9a729c9de5b
--- /dev/null
+++ b/gcc/testsuite/g++.dg/expr/ptrmem3.C
@@ -0,0 +1,9 @@
+struct S {};
+struct T : public S {};
+
+void f() {
+ int S::*s;
+ int T::*t;
+ (t ? t : s) == t;
+}
+
diff --git a/gcc/testsuite/g++.dg/ext/anon-struct4.C b/gcc/testsuite/g++.dg/ext/anon-struct4.C
new file mode 100644
index 00000000000..f0b3b57f70d
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/anon-struct4.C
@@ -0,0 +1,3 @@
+// PR c++/14401
+
+struct { struct { int& i ; } bar ; } foo ; // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/ext/attrib10.C b/gcc/testsuite/g++.dg/ext/attrib10.C
index 6d04cb855b7..99459c78242 100644
--- a/gcc/testsuite/g++.dg/ext/attrib10.C
+++ b/gcc/testsuite/g++.dg/ext/attrib10.C
@@ -1,4 +1,5 @@
// PR c++/12795
+// { dg-require-alias "" }
void foo()
{
diff --git a/gcc/testsuite/g++.dg/ext/attrib12.C b/gcc/testsuite/g++.dg/ext/attrib12.C
new file mode 100644
index 00000000000..aea93781df8
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/attrib12.C
@@ -0,0 +1,16 @@
+// PR c++/13791
+
+template <typename T> struct O {
+ struct __attribute__((packed)) I {
+ int i;
+ char c;
+ };
+
+ I* foo();
+};
+
+template <typename T>
+typename O<T>::I*
+O<T>::foo() { return 0; }
+
+template class O<int>;
diff --git a/gcc/testsuite/g++.dg/ext/attrib13.C b/gcc/testsuite/g++.dg/ext/attrib13.C
new file mode 100644
index 00000000000..22ea97ae706
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/attrib13.C
@@ -0,0 +1,4 @@
+// PR c++/13854
+
+extern char *rindex (__const char *__s, int __c) throw () __attribute__ ((__pure__));
+extern char *rindex (__const char *__s, int __c) throw () __attribute__ ((__pure__));
diff --git a/gcc/testsuite/g++.dg/ext/case-range1.C b/gcc/testsuite/g++.dg/ext/case-range1.C
new file mode 100644
index 00000000000..0e313d6b602
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/case-range1.C
@@ -0,0 +1,23 @@
+// { dg-do compile }
+// Tests if case ranges (a GNU extension) are accepted
+// { dg-options "" }
+const int low = -2;
+const int high = 15;
+
+template <typename T>
+T f2 (T i)
+{
+ switch (i)
+ {
+ case low ... high : return i + 1;
+ default : return 0;
+ }
+}
+
+int f (int i)
+{
+ switch (i) {
+ case 1 ... 10: return i + 1;
+ default: return f2 (i);
+ }
+}
diff --git a/gcc/testsuite/g++.dg/ext/case-range2.C b/gcc/testsuite/g++.dg/ext/case-range2.C
new file mode 100644
index 00000000000..33befbd588a
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/case-range2.C
@@ -0,0 +1,27 @@
+// { dg-do compile }
+// Tests if case ranges (a GNU extension) correctly emit messages
+// about overlapping ranges.
+// { dg-options "" }
+
+const int low = -2;
+const int high = 15;
+
+template <typename T>
+T f2 (T i)
+{
+ switch (i)
+ {
+ case low ... high : return i + 1; // { dg-error "" }
+ case 5 : return i + 2; // { dg-error "duplicate" }
+ default : return 0;
+ }
+}
+
+int f (int i)
+{
+ switch (i) {
+ case 1 ... 10: return i + 1; // { dg-error "" }
+ case 3 ... 5 : return i + 3; // { dg-error "duplicate" }
+ default: return f2 (i); // { dg-error "" }
+ }
+}
diff --git a/gcc/testsuite/g++.dg/ext/case-range3.C b/gcc/testsuite/g++.dg/ext/case-range3.C
new file mode 100644
index 00000000000..569ce627455
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/case-range3.C
@@ -0,0 +1,23 @@
+// { dg-do compile }
+// Tests if case ranges (a GNU extension) emit errors in ISO mode
+// { dg-options "-pedantic" }
+const int low = -2;
+const int high = 15;
+
+template <typename T>
+T f2 (T i)
+{
+ switch (i)
+ {
+ case low ... high : return i + 1; // { dg-error "non-standard" }
+ default : return 0;
+ }
+}
+
+int f (int i)
+{
+ switch (i) {
+ case 1 ... 10: return i + 1; // { dg-error "non-standard" }
+ default: return f2 (i); // { dg-error "" }
+ }
+}
diff --git a/gcc/testsuite/g++.dg/ext/packed5.C b/gcc/testsuite/g++.dg/ext/packed5.C
new file mode 100644
index 00000000000..caf14d89c29
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/packed5.C
@@ -0,0 +1,16 @@
+// PR c++/14173
+
+struct A;
+
+void foo(const A&);
+
+struct A
+{
+ A(const A&);
+};
+
+struct B
+{
+ A a;
+ A bar() { return a; }
+};
diff --git a/gcc/testsuite/g++.dg/ext/typeof7.C b/gcc/testsuite/g++.dg/ext/typeof7.C
new file mode 100644
index 00000000000..6c426931bbb
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/typeof7.C
@@ -0,0 +1,6 @@
+// PR c++/13635
+// { dg-options "" }
+
+template<int n> class X {template<class Y> typeof(Y::y) foo();};
+X<0> x;
+
diff --git a/gcc/testsuite/g++.dg/ext/typeof8.C b/gcc/testsuite/g++.dg/ext/typeof8.C
new file mode 100644
index 00000000000..8e6523484e7
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/typeof8.C
@@ -0,0 +1,12 @@
+// PR c++/14116
+// Any use of typeof in a templete was causing an ICE.
+// { dg-options "" }
+
+struct vector { typedef int iterator; };
+vector read_queue;
+template <class T> void f(){
+ typedef typeof (read_queue) read_queue_t;
+ read_queue_t::iterator it;
+}
+
+
diff --git a/gcc/testsuite/g++.dg/ext/typeof9.C b/gcc/testsuite/g++.dg/ext/typeof9.C
new file mode 100644
index 00000000000..1547c0f2f6c
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/typeof9.C
@@ -0,0 +1,17 @@
+// { dg-do compile }
+
+// Origin: gcc-bug@vogtner.de
+
+// PR c++/14106: ICE with typeof of function template.
+
+template<class T>
+void j (T i)
+{
+}
+
+template<typename T>
+void instanciate () {
+ static void (*fp) (T) = j;
+ __typeof__ (j) *p; // { dg-error "unknown|invalid" }
+}
+template void instanciate<float>();
diff --git a/gcc/testsuite/g++.dg/ext/vector1.C b/gcc/testsuite/g++.dg/ext/vector1.C
new file mode 100644
index 00000000000..c6f0e0409c5
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/vector1.C
@@ -0,0 +1,5 @@
+// PR c++/11895
+// This used to ICE in reshape_init.
+// testcase from fnf@ninemoons.com
+
+ __attribute__((vector_size(16))) int a1 = { 100, 200, 300, 400 };
diff --git a/gcc/testsuite/g++.dg/inherit/ptrmem1.C b/gcc/testsuite/g++.dg/inherit/ptrmem1.C
new file mode 100644
index 00000000000..375efc811f6
--- /dev/null
+++ b/gcc/testsuite/g++.dg/inherit/ptrmem1.C
@@ -0,0 +1,21 @@
+// PR c++/14803
+// { dg-options "-Werror" }
+
+struct sc_module { int member; };
+
+struct sc_signal_in_if { bool state; };
+
+typedef void (sc_module::*SC_ENTRY_FUNC)();
+
+class sc_clock : public sc_signal_in_if, public sc_module
+{
+public:
+ sc_clock();
+ void posedge_action();
+ SC_ENTRY_FUNC fptr;
+};
+
+sc_clock::sc_clock()
+{
+ fptr = static_cast<SC_ENTRY_FUNC>(&sc_clock::posedge_action);
+}
diff --git a/gcc/testsuite/g++.dg/inherit/thunk2.C b/gcc/testsuite/g++.dg/inherit/thunk2.C
new file mode 100644
index 00000000000..094891c7a14
--- /dev/null
+++ b/gcc/testsuite/g++.dg/inherit/thunk2.C
@@ -0,0 +1,19 @@
+// PR c++/14108
+
+class ClassC {
+public:
+ ~ClassC();
+};
+
+class ClassA {
+ virtual ClassC f();
+};
+
+class ClassB : public virtual ClassA {
+ virtual ClassC f();
+};
+
+ClassC ClassB::f() {
+ return ClassC();
+}
+
diff --git a/gcc/testsuite/g++.dg/init/array13.C b/gcc/testsuite/g++.dg/init/array13.C
new file mode 100644
index 00000000000..aa66e33acfc
--- /dev/null
+++ b/gcc/testsuite/g++.dg/init/array13.C
@@ -0,0 +1,9 @@
+template <typename DisjointSet>
+struct test_disjoint_set {
+ static void do_test()
+ {
+ unsigned int elts[]
+ = { 0, 1, 2, 3 };
+ const int N = sizeof(elts)/sizeof(*elts);
+ }
+};
diff --git a/gcc/testsuite/g++.dg/init/ctor3.C b/gcc/testsuite/g++.dg/init/ctor3.C
new file mode 100644
index 00000000000..1678aaf2c4d
--- /dev/null
+++ b/gcc/testsuite/g++.dg/init/ctor3.C
@@ -0,0 +1,6 @@
+// PR c++/14401
+
+struct S {
+ S() {} // { dg-error "" }
+ const int i;
+};
diff --git a/gcc/testsuite/g++.dg/init/goto1.C b/gcc/testsuite/g++.dg/init/goto1.C
new file mode 100644
index 00000000000..b0a0c5253b6
--- /dev/null
+++ b/gcc/testsuite/g++.dg/init/goto1.C
@@ -0,0 +1,23 @@
+// PR c++/14724
+// { dg-do run }
+
+int j;
+
+template <class T>
+struct C {
+ C() { ++j; }
+ ~C() { --j; }
+};
+
+int main(int, char **) {
+ {
+ int i = 0;
+ again:
+ C<int> v;
+ if (++i < 10)
+ goto again;
+ }
+
+ return j;
+}
+
diff --git a/gcc/testsuite/g++.dg/init/init-ref4.C b/gcc/testsuite/g++.dg/init/init-ref4.C
index 26d2e97562c..7cd6986ce52 100644
--- a/gcc/testsuite/g++.dg/init/init-ref4.C
+++ b/gcc/testsuite/g++.dg/init/init-ref4.C
@@ -1,9 +1,9 @@
// Origin: dgregor@gcc.gnu.org
// PR c++/11384
-// foo<int>::_S_something was not being emitted.
+// foo<int>::_S_something was not being emitted (as a weak definition).
-// { dg-do run { xfail *-*-aout *-*-coff *-*-hpux* *-*-hms } }
-// On targets that don't support weak symbols, we require an explicit
+// { dg-do run }
+// { dg-require-weak "" }
template<typename T>
struct foo
@@ -19,4 +19,3 @@ int main()
const int* p = &foo<int>::_S_something;
return 0;
}
-
diff --git a/gcc/testsuite/g++.dg/init/placement3.C b/gcc/testsuite/g++.dg/init/placement3.C
new file mode 100644
index 00000000000..919e2a81617
--- /dev/null
+++ b/gcc/testsuite/g++.dg/init/placement3.C
@@ -0,0 +1,30 @@
+typedef __SIZE_TYPE__ size_t;
+extern "C" void *malloc (size_t);
+
+int i;
+
+struct S {
+ S(int) {
+ throw 3;
+ }
+
+ void *operator new(size_t s, int) {
+ ++i;
+ return malloc (s);
+ }
+
+ void operator delete(void *, int) {
+ --i;
+ }
+
+ void operator delete(void *, int, int) ;
+};
+
+int main () {
+ try {
+ new (7) S (12);
+ } catch (int) {
+ if (i)
+ return 1;
+ }
+}
diff --git a/gcc/testsuite/g++.dg/init/ref11.C b/gcc/testsuite/g++.dg/init/ref11.C
new file mode 100644
index 00000000000..b283e3a69be
--- /dev/null
+++ b/gcc/testsuite/g++.dg/init/ref11.C
@@ -0,0 +1,13 @@
+// PR c++/14230
+
+struct A {
+ A ();
+ A (const A&);
+ A& operator= (const A&);
+};
+
+struct D {
+ A a;
+};
+
+const A& z = D().a;
diff --git a/gcc/testsuite/g++.dg/init/static2.C b/gcc/testsuite/g++.dg/init/static2.C
new file mode 100644
index 00000000000..b0344f48066
--- /dev/null
+++ b/gcc/testsuite/g++.dg/init/static2.C
@@ -0,0 +1,25 @@
+// PR 14804
+// { dg-do run }
+
+struct A {
+ virtual void foo() = 0;
+};
+
+struct B : public A {
+ virtual void bar() = 0;
+};
+
+typedef void (A::*mfptr)();
+
+struct D {
+ mfptr p;
+};
+
+static const D ds[] = {
+ { reinterpret_cast<mfptr>(&B::bar) },
+};
+
+int main()
+{
+ return 0;
+}
diff --git a/gcc/testsuite/g++.dg/init/union1.C b/gcc/testsuite/g++.dg/init/union1.C
new file mode 100644
index 00000000000..0049f442916
--- /dev/null
+++ b/gcc/testsuite/g++.dg/init/union1.C
@@ -0,0 +1,5 @@
+// PR c++/14401
+
+union U {
+ int& i; // { dg-error "" }
+};
diff --git a/gcc/testsuite/g++.dg/lookup/anon4.C b/gcc/testsuite/g++.dg/lookup/anon4.C
new file mode 100644
index 00000000000..40c4ab40a58
--- /dev/null
+++ b/gcc/testsuite/g++.dg/lookup/anon4.C
@@ -0,0 +1,9 @@
+static union {
+ int i;
+};
+
+int *ip;
+
+void g() {
+ ip = &i;
+}
diff --git a/gcc/testsuite/g++.dg/lookup/crash2.C b/gcc/testsuite/g++.dg/lookup/crash2.C
new file mode 100644
index 00000000000..82735245f48
--- /dev/null
+++ b/gcc/testsuite/g++.dg/lookup/crash2.C
@@ -0,0 +1,20 @@
+// PR c++/14086
+
+struct ClassA
+{
+ ClassA();
+};
+
+struct ClassB
+{
+ enum Enum {ClassB}; // { dg-error "" }
+ ClassA key;
+
+ ClassB();
+ virtual ~ClassB();
+};
+
+
+ClassB::ClassB()
+{
+}
diff --git a/gcc/testsuite/g++.dg/lookup/enum1.C b/gcc/testsuite/g++.dg/lookup/enum1.C
new file mode 100644
index 00000000000..9422814e271
--- /dev/null
+++ b/gcc/testsuite/g++.dg/lookup/enum1.C
@@ -0,0 +1,5 @@
+// PR c++/14476
+
+struct tree_common {
+ enum tree_code code : 8; // { dg-error "" }
+};
diff --git a/gcc/testsuite/g++.dg/lookup/koenig3.C b/gcc/testsuite/g++.dg/lookup/koenig3.C
new file mode 100644
index 00000000000..c5dedbe708e
--- /dev/null
+++ b/gcc/testsuite/g++.dg/lookup/koenig3.C
@@ -0,0 +1,13 @@
+extern "C" void abort ();
+
+struct S {
+};
+void f(S, int) { abort(); }
+void f(S, double) {}
+
+S s;
+
+int main() {
+ extern void f(S, int);
+ f(s, 3.0);
+}
diff --git a/gcc/testsuite/g++.dg/lookup/main1.C b/gcc/testsuite/g++.dg/lookup/main1.C
new file mode 100644
index 00000000000..1de834235a6
--- /dev/null
+++ b/gcc/testsuite/g++.dg/lookup/main1.C
@@ -0,0 +1,3 @@
+struct main {};
+
+int main () {}
diff --git a/gcc/testsuite/g++.dg/lookup/member1.C b/gcc/testsuite/g++.dg/lookup/member1.C
new file mode 100644
index 00000000000..82bb657f508
--- /dev/null
+++ b/gcc/testsuite/g++.dg/lookup/member1.C
@@ -0,0 +1,11 @@
+// PR c++/14186
+
+struct Base
+{
+ enum { Derived };
+};
+
+class Derived : public Base
+{
+ Derived();
+};
diff --git a/gcc/testsuite/g++.dg/lookup/struct2.C b/gcc/testsuite/g++.dg/lookup/struct2.C
new file mode 100644
index 00000000000..a66f403c291
--- /dev/null
+++ b/gcc/testsuite/g++.dg/lookup/struct2.C
@@ -0,0 +1,7 @@
+// PR c++/14510
+
+struct c {};
+namespace A {
+ int c(struct c*req);
+}
+int A::c(struct c*req) {}
diff --git a/gcc/testsuite/g++.dg/lookup/using11.C b/gcc/testsuite/g++.dg/lookup/using11.C
new file mode 100644
index 00000000000..9eb7e9fe7a1
--- /dev/null
+++ b/gcc/testsuite/g++.dg/lookup/using11.C
@@ -0,0 +1,9 @@
+namespace N1 {
+ enum e { a };
+ void e(char);
+}
+
+void f() {
+ using N1::e;
+ enum e x;
+}
diff --git a/gcc/testsuite/g++.dg/opt/eh1.C b/gcc/testsuite/g++.dg/opt/eh1.C
new file mode 100644
index 00000000000..63a4d2ef35f
--- /dev/null
+++ b/gcc/testsuite/g++.dg/opt/eh1.C
@@ -0,0 +1,21 @@
+// PR middle-end/14477
+// { dg-do compile }
+// { dg-options "-O2 -fno-default-inline" }
+
+struct A
+{
+ A();
+};
+
+struct B
+{
+ B(const A*);
+};
+
+struct C
+{
+ B b;
+ C(int) : b(new A) {}
+};
+
+C c(0);
diff --git a/gcc/testsuite/g++.dg/opt/fold1.C b/gcc/testsuite/g++.dg/opt/fold1.C
new file mode 100644
index 00000000000..98f1b519115
--- /dev/null
+++ b/gcc/testsuite/g++.dg/opt/fold1.C
@@ -0,0 +1,17 @@
+// PR middle-end/13696
+// { dg-do compile }
+// { dg-options "-O2" }
+
+extern void x(unsigned long*);
+
+enum e { red, blue, green };
+
+struct s {
+ unsigned long l;
+};
+struct s map[1][256];
+
+void
+f(int i,e j) {
+ x(&(map[i][j].l));
+}
diff --git a/gcc/testsuite/g++.dg/opt/fold2.C b/gcc/testsuite/g++.dg/opt/fold2.C
new file mode 100644
index 00000000000..95063d7ab0b
--- /dev/null
+++ b/gcc/testsuite/g++.dg/opt/fold2.C
@@ -0,0 +1,19 @@
+// PR optimization/14669
+// { dg-do run }
+// { dg-options "-O2" }
+
+extern "C" void abort (void);
+extern "C" void exit (int);
+
+enum ActionType { EE=-1, E0=0, E1, E2 };
+
+int main(void)
+{
+ ActionType t = E0;
+
+ if (E1 <= t && t <= E2)
+ abort ();
+
+ exit (0);
+}
+
diff --git a/gcc/testsuite/g++.dg/opt/inline4.C b/gcc/testsuite/g++.dg/opt/inline4.C
index 1db4fe1860b..2eaad115fc1 100644
--- a/gcc/testsuite/g++.dg/opt/inline4.C
+++ b/gcc/testsuite/g++.dg/opt/inline4.C
@@ -10,4 +10,4 @@ void h() {
g<250>();
}
-// { dg-final { scan-assembler-not "_Z1g" } }
+// { dg-final { scan-assembler-not "\n_?_Z1gILi\[0-9\]+EEvv\[: \t\n\]" } }
diff --git a/gcc/testsuite/g++.dg/opt/inline6.C b/gcc/testsuite/g++.dg/opt/inline6.C
index 21872210558..b1616c7e721 100644
--- a/gcc/testsuite/g++.dg/opt/inline6.C
+++ b/gcc/testsuite/g++.dg/opt/inline6.C
@@ -1,6 +1,6 @@
// PR c++/13081
// { dg-options "-O2" }
-// { dg-final { scan-assembler-not "foo" } }
+// { dg-final { scan-assembler-not "\n_?_Z3fooIlET_S0_\[: \t\n\]" } }
template<typename T> T foo(T);
diff --git a/gcc/testsuite/g++.dg/opt/template1.C b/gcc/testsuite/g++.dg/opt/template1.C
index 9003be1ee17..f2543469391 100644
--- a/gcc/testsuite/g++.dg/opt/template1.C
+++ b/gcc/testsuite/g++.dg/opt/template1.C
@@ -1,5 +1,5 @@
// { dg-options "-O2" }
-// { dg-final { scan-assembler-not "foo1" } }
+// { dg-final { scan-assembler-not "\n_?_ZN1AILi0EE4foo1Ev\[: \t\n\]" } }
template <int>
struct A {
diff --git a/gcc/testsuite/g++.dg/other/crash-2.C b/gcc/testsuite/g++.dg/other/crash-2.C
new file mode 100644
index 00000000000..3a19f3ba8ab
--- /dev/null
+++ b/gcc/testsuite/g++.dg/other/crash-2.C
@@ -0,0 +1,13 @@
+// { dg-do compile }
+// { dg-options "-finline -finline-functions" }
+// Contributed by Hans Buchmann <hans dot buchmann at fhso dot ch>
+// PR c++/14033: ICE while inlining a function with incomplete parameter
+
+struct A; // { dg-error "forward declaration" }
+void foo(A a) {} // { dg-error "incomplete" }
+struct A {};
+
+void bar(void)
+{
+ foo(A());
+}
diff --git a/gcc/testsuite/g++.dg/other/crash-3.C b/gcc/testsuite/g++.dg/other/crash-3.C
new file mode 100644
index 00000000000..d13821dee79
--- /dev/null
+++ b/gcc/testsuite/g++.dg/other/crash-3.C
@@ -0,0 +1,31 @@
+// { dg-do compile }
+// { dg-options "-g" }
+// Contributed by: <schmid at snake dot iap dot physik dot tu-darmstadt dot de>
+// and Niall Douglas <s_gccbugzilla at nedprod dot com>
+// PR c++/14246: ice in write_template_arg_literal while mangling boolean
+// expressions.
+
+namespace N1 {
+
+ template <typename T>
+ struct A {
+ enum { Yes = (sizeof(T) == 1) };
+ };
+
+ template<bool T>
+ struct B {
+ void foo(void);
+ };
+
+ template struct B< !A<int>::Yes >;
+
+}
+
+
+namespace N2 {
+
+ template<bool> struct A {};
+ A<!false> a;
+
+}
+
diff --git a/gcc/testsuite/g++.dg/other/error1.C b/gcc/testsuite/g++.dg/other/error1.C
index a55fcc60cf6..927efef8bbb 100644
--- a/gcc/testsuite/g++.dg/other/error1.C
+++ b/gcc/testsuite/g++.dg/other/error1.C
@@ -10,6 +10,6 @@ class foo {
int fudge[40];
int bar [40];
inline int access(int i) {
- return bar(i); // { dg-error "call to non-function `foo::bar'" "" }
+ return bar(i); // { dg-error "cannot be used as a function" "" }
}
};
diff --git a/gcc/testsuite/g++.dg/other/error8.C b/gcc/testsuite/g++.dg/other/error8.C
new file mode 100644
index 00000000000..d427e3c4c61
--- /dev/null
+++ b/gcc/testsuite/g++.dg/other/error8.C
@@ -0,0 +1,26 @@
+// { dg-do compile }
+// Contributed by: Michael Elizabeth Chastain
+// <mec dot gnu at mindspring dot com>
+// PR c++/13927: Wrong error message for redeclartion of type from union
+
+void foo(void)
+{
+ union { int alpha; int beta; }; // { dg-error "previous declaration `int alpha'" }
+ double alpha; // { dg-error "declaration of" }
+}
+
+// This checks both the templated version, and the position of the diagnostic
+// (which is currently wrong).
+template <int>
+void tfoo(void)
+{
+ union {
+ int alpha; // { dg-error "" "" { xfail *-*-* } }
+ int beta;
+ }; // { dg-bogus "" "misplaced position of the declaration" { xfail *-*-* } }
+ double alpha; // { dg-error "" "" }
+}
+
+// The duplicated error messages are xfailed for now (tracked in the PR)
+// { dg-bogus "" "duplicate error messages" { xfail *-*-* } 8 }
+// { dg-bogus "" "duplicate error messages" { xfail *-*-* } 9 }
diff --git a/gcc/testsuite/g++.dg/other/nontype-1.C b/gcc/testsuite/g++.dg/other/nontype-1.C
new file mode 100644
index 00000000000..5a1fcd97821
--- /dev/null
+++ b/gcc/testsuite/g++.dg/other/nontype-1.C
@@ -0,0 +1,7 @@
+template <class Op>
+bool asfun(Op f,
+ Op::first_argument_type a, // { dg-error "not a type" }
+ Op::second_argument_type b) // { dg-error "not a type" }
+{ // { dg-error "no type" }
+ return Op(a, b);
+}
diff --git a/gcc/testsuite/g++.dg/other/profile1.C b/gcc/testsuite/g++.dg/other/profile1.C
new file mode 100644
index 00000000000..bc92460830b
--- /dev/null
+++ b/gcc/testsuite/g++.dg/other/profile1.C
@@ -0,0 +1,51 @@
+// PR 11767
+// { dg-do run }
+// { dg-options "-fnon-call-exceptions -fprofile-arcs" }
+
+#include <string>
+
+typedef unsigned long ACE_UINT32;
+extern "C" void abort();
+
+static ACE_UINT32 const msc_maxCurrencyID = 9999;
+
+class ResourceBalanceType2
+{
+ public:
+ explicit ResourceBalanceType2(
+ ACE_UINT32 resourceBalanceTypeID,
+ ACE_UINT32 isoValue,
+ const std::string& rc_shortName,
+ const std::string& rc_symbol
+ );
+ public:
+ const ACE_UINT32 mc_resBalTypeID;
+ const ACE_UINT32 mc_isoValue;
+ const std::string mc_shortName;
+ const std::string mc_symbol;
+};
+
+void f(){}
+
+ResourceBalanceType2::ResourceBalanceType2(
+ ACE_UINT32 resourceBalanceTypeID,
+ ACE_UINT32 isoValue,
+ const std::string& rc_shortName,
+ const std::string& rc_symbol)
+ : mc_resBalTypeID(resourceBalanceTypeID),
+ mc_isoValue(isoValue),
+ mc_shortName(rc_shortName),
+ mc_symbol(rc_symbol)
+{
+ bool isGreater = (mc_isoValue > msc_maxCurrencyID);
+ f();
+ bool temp = mc_isoValue > msc_maxCurrencyID;
+ if (!isGreater) abort();
+ if (!temp) abort();
+}
+
+int main (int argc, char * argv[])
+{
+ ACE_UINT32 const mc_isoValue = 10000;
+ ResourceBalanceType2 rbResourceBalanceType2(3, mc_isoValue, "ATM", "M");
+}
diff --git a/gcc/testsuite/g++.dg/other/switch1.C b/gcc/testsuite/g++.dg/other/switch1.C
new file mode 100644
index 00000000000..a22d2b573fa
--- /dev/null
+++ b/gcc/testsuite/g++.dg/other/switch1.C
@@ -0,0 +1,20 @@
+// { dg-do compile }
+// Contributed by: Nick Savoiu <savoiu at ics dot uci dot edu>
+// PR c++/14250: Incomplete type in switch statement
+
+template <typename T>
+struct A {
+ operator int();
+};
+
+struct C1 {
+ static A<void> t1;
+
+ void fun()
+ {
+ switch(t1)
+ {
+ default: break;
+ }
+ }
+};
diff --git a/gcc/testsuite/g++.dg/overload/ref1.C b/gcc/testsuite/g++.dg/overload/ref1.C
new file mode 100644
index 00000000000..e239d88a438
--- /dev/null
+++ b/gcc/testsuite/g++.dg/overload/ref1.C
@@ -0,0 +1,21 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+// Contributed by Nathan Sidwell 5 Mar 2004 <nathan@codesourcery.com>
+
+// Origin: schmid@snake.iap.physik.tu-darmstadt.de
+// Bug 14397: Bogus access error.
+
+struct S {
+ S (int);
+ S(S const&);
+ private:
+ S(S&);
+};
+
+S foo()
+{
+ int result = 0;
+
+ S s ((0,S (result)));
+
+ return S (result);
+}
diff --git a/gcc/testsuite/g++.dg/overload/using1.C b/gcc/testsuite/g++.dg/overload/using1.C
new file mode 100644
index 00000000000..bc46c604977
--- /dev/null
+++ b/gcc/testsuite/g++.dg/overload/using1.C
@@ -0,0 +1,11 @@
+void f();
+
+namespace N {
+ using ::f;
+}
+
+bool b;
+
+void g() {
+ b = N::f == ::f;
+}
diff --git a/gcc/testsuite/g++.dg/parse/angle-bracket2.C b/gcc/testsuite/g++.dg/parse/angle-bracket2.C
new file mode 100644
index 00000000000..fb758e33f76
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/angle-bracket2.C
@@ -0,0 +1,6 @@
+// { dg-do compile }
+// Contributed by MattyT <mattyt-bugzilla at tpg dot com dot au>
+// PR c++/14028: Parser accepts invalid unbalanced bracket.
+
+template <int> struct A {};
+template <typename TP> class B : public A<4 {}; // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/parse/attr-ctor1.C b/gcc/testsuite/g++.dg/parse/attr-ctor1.C
index 4f8cd1dde66..23d488a2003 100644
--- a/gcc/testsuite/g++.dg/parse/attr-ctor1.C
+++ b/gcc/testsuite/g++.dg/parse/attr-ctor1.C
@@ -1,6 +1,7 @@
// PR c++/6992
// Origin: <petr@scssoft.com>
// { dg-do compile }
+// { dg-require-named-sections "" }
class A
{
diff --git a/gcc/testsuite/g++.dg/parse/builtin2.C b/gcc/testsuite/g++.dg/parse/builtin2.C
new file mode 100644
index 00000000000..c524ea68416
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/builtin2.C
@@ -0,0 +1,5 @@
+// PR c++/14432
+// { dg-options "" }
+
+struct Y {};
+Y y1;
diff --git a/gcc/testsuite/g++.dg/parse/cast2.C b/gcc/testsuite/g++.dg/parse/cast2.C
new file mode 100644
index 00000000000..d447bb4baec
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/cast2.C
@@ -0,0 +1,13 @@
+// PR c++/13736
+
+struct string
+{
+ string() {}
+ string(const string&) {}
+ string(const char*) {}
+};
+
+int main()
+{
+ string s2(string( (const char*)("")));
+}
diff --git a/gcc/testsuite/g++.dg/parse/comma1.C b/gcc/testsuite/g++.dg/parse/comma1.C
new file mode 100644
index 00000000000..33d222cbc04
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/comma1.C
@@ -0,0 +1,13 @@
+// PR c++/14278
+
+struct X {
+ X (int p);
+};
+
+struct A {
+ A(X);
+};
+
+void *p_fun;
+
+A a(X ((*(int (*)(int, int)) p_fun)(0, 0)));
diff --git a/gcc/testsuite/g++.dg/parse/constructor2.C b/gcc/testsuite/g++.dg/parse/constructor2.C
new file mode 100644
index 00000000000..e514e9397e9
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/constructor2.C
@@ -0,0 +1,11 @@
+// PR c++/14260
+
+template <class TClass>
+class T
+{
+public:
+ T(short,short f=0) {}
+ T<TClass>(int f) {}
+ T<TClass>(int f=0,const char* b=0) {}
+};
+
diff --git a/gcc/testsuite/g++.dg/parse/crash14.C b/gcc/testsuite/g++.dg/parse/crash14.C
new file mode 100644
index 00000000000..b4cf49a9921
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/crash14.C
@@ -0,0 +1,20 @@
+// { dg-do compile }
+// Contributed by: Giovanni Bajo <giovannibajo at libero dot it>
+// PR c++/14448: Fold constant initializers in templates
+
+template <int> struct A
+{
+ A();
+};
+
+
+template<typename T> void foo(T)
+{
+ static const int n=1+1;
+ A<n+1> a;
+}
+
+void bar()
+{
+ foo(0);
+}
diff --git a/gcc/testsuite/g++.dg/parse/defarg7.C b/gcc/testsuite/g++.dg/parse/defarg7.C
new file mode 100644
index 00000000000..c1f75ce8f18
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/defarg7.C
@@ -0,0 +1,5 @@
+// PR c++/14361
+
+class A {
+ A ( int n=0 int n ); // { dg-error "" }
+};
diff --git a/gcc/testsuite/g++.dg/parse/error11.C b/gcc/testsuite/g++.dg/parse/error11.C
new file mode 100644
index 00000000000..6b3deec178a
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/error11.C
@@ -0,0 +1,53 @@
+// { dg-do compile }
+// Origin: Giovanni Bajo <giovannibajo at gcc dot gnu dot org>
+// Try to find out when the digraph '<:' is used as a mistake, and parse it
+// correctly to avoid cascaded errors.
+
+struct B;
+
+template <class A>
+struct Foo
+{
+ template <class T>
+ struct Nested
+ {
+ static void method(void) {}
+ };
+
+ void method(void) {
+ typename Foo<::B>::template Nested<::B> n; // { dg-error "cannot begin|alternate spelling" }
+ n.template Nested<B>::method();
+ n.template Nested<::B>::method(); // { dg-error "cannot begin|alternate spelling" }
+ Nested<B>::method();
+ Nested<::B>::method(); // { dg-error "cannot begin|alternate spelling" }
+ }
+};
+
+template <int N> struct Foo2 {};
+template struct Foo2<::B>; // { dg-error "cannot begin|alternate spelling|type/value mismatch|expected a constant" }
+
+int value = 0;
+
+void func(void)
+{
+ Foo<::B> f; // { dg-error "cannot begin|alternate spelling" }
+ f.Foo<B>::method();
+ f.Foo<::B>::method(); // { dg-error "cannot begin|alternate spelling" }
+
+ // Check cases where we the token sequence is the correct one, but there
+ // was no digraph or whitespaces in the middle, so we should not emit
+ // the special error message.
+ Foo<: :B> k2; // { dg-bogus "cannot begin|alternate spelling" "smart error should not be triggered here" }
+ Foo[:B> k1; // { dg-bogus "cannot begin|alternate spelling" "smart error should not be triggered here" }
+// { dg-error "" "" { target *-*-* } 40 }
+// { dg-error "" "" { target *-*-* } 41 }
+
+ int Foo[2];
+ Foo[::value] = 0;
+}
+
+template struct Foo<::B>; // { dg-error "cannot begin|alternate spelling" }
+
+// On the first error message, an additional note about the use of
+// -fpermissive should be present
+// { dg-error "-fpermissive" "" { target *-*-* } 18 }
diff --git a/gcc/testsuite/g++.dg/parse/error12.C b/gcc/testsuite/g++.dg/parse/error12.C
new file mode 100644
index 00000000000..ea04fd06d11
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/error12.C
@@ -0,0 +1,12 @@
+// { dg-do compile }
+// Origin: Giovanni Bajo <giovannibajo at gcc dot gnu dot org>
+// Make sure the error about '<:' can be turned into a warning
+// { dg-options "-fpermissive" }
+
+struct B;
+
+template <class A>
+struct Foo {};
+
+Foo<::B> foo; // { dg-bogus "error" "error in place of warning" }
+// { dg-error "" "" { target *-*-* } 11 }
diff --git a/gcc/testsuite/g++.dg/parse/error13.C b/gcc/testsuite/g++.dg/parse/error13.C
new file mode 100644
index 00000000000..15642e39ed7
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/error13.C
@@ -0,0 +1,13 @@
+// PR c++/13975
+
+public: // { dg-error "" }
+
+int i;
+
+protected: // { dg-error "" }
+
+int j;
+
+private: // { dg-error "" }
+
+int k;
diff --git a/gcc/testsuite/g++.dg/parse/error14.C b/gcc/testsuite/g++.dg/parse/error14.C
new file mode 100644
index 00000000000..4b230453867
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/error14.C
@@ -0,0 +1,22 @@
+// PR c++/13970
+
+struct X
+{
+ template< typename Z > Z Zunc()
+ {
+ return Z();
+ }
+
+ template< typename Z > void Zinc()
+ {
+ }
+
+ void tst()
+ {
+ Zunc<int>();
+
+ Zinc<int>( //);
+ // }
+
+}; // { dg-error "" }
+
diff --git a/gcc/testsuite/g++.dg/parse/new2.C b/gcc/testsuite/g++.dg/parse/new2.C
new file mode 100644
index 00000000000..d233b68caf4
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/new2.C
@@ -0,0 +1,9 @@
+// { dg-do compile }
+// Contributed by David Daney <daney at gcc dot gnu dot org>
+// PR c++/14181: Cryptic error message for ill-formed new expressions
+
+void f1(void)
+{
+ (void)new (char*)[10]; // { dg-error "parenthesized|parentheses" }
+ (void)new char*[10];
+}
diff --git a/gcc/testsuite/g++.dg/parse/non-dependent3.C b/gcc/testsuite/g++.dg/parse/non-dependent3.C
new file mode 100644
index 00000000000..9dfb99636a8
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/non-dependent3.C
@@ -0,0 +1,17 @@
+// PR c++/14586
+
+enum E { e };
+
+E & operator |= (E &f1, const E &f2);
+
+E operator | (const E &f1, const E &f2) {
+ E result = f1;
+ result |= f2;
+ return result;
+}
+
+template <typename> void foo () {
+ const E flags = e | e;
+}
+
+template void foo<double> ();
diff --git a/gcc/testsuite/g++.dg/parse/template13.C b/gcc/testsuite/g++.dg/parse/template13.C
new file mode 100644
index 00000000000..b1c03690be5
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/template13.C
@@ -0,0 +1,10 @@
+// PR c++/14002
+
+template <typename T> void foo (T x) { x; }
+
+void bar() { foo(0); }
+
+struct A
+{
+ friend void foo<int> (int);
+};
diff --git a/gcc/testsuite/g++.dg/parse/template14.C b/gcc/testsuite/g++.dg/parse/template14.C
new file mode 100644
index 00000000000..ada87524352
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/template14.C
@@ -0,0 +1,17 @@
+// PR c++/14550
+
+struct A {
+ A();
+};
+
+template <int> void foo()
+{
+ A *p = new A;
+}
+
+void bar()
+{
+ foo<0>();
+}
+
+
diff --git a/gcc/testsuite/g++.dg/parse/template15.C b/gcc/testsuite/g++.dg/parse/template15.C
new file mode 100644
index 00000000000..ce2d130360f
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/template15.C
@@ -0,0 +1,26 @@
+// { dg-do compile }
+// Contributed by: Peter Schmid
+// <schmid at snake dot iap dot physik dot tu-darmstadt dot de>
+// PR c++/14545: constructor calls are not integer constant expressions
+
+struct A1 { A1(); };
+struct A2 { };
+
+template <class T>
+struct B
+{
+ void foo() {
+ A1();
+ A1 a1 = A1();
+
+ A2();
+ A2 a2 = A2();
+
+ int();
+ int a3 = int();
+ float();
+ float a4 = float();
+ }
+};
+
+template struct B<void>;
diff --git a/gcc/testsuite/g++.dg/pch/wchar-1.C b/gcc/testsuite/g++.dg/pch/wchar-1.C
deleted file mode 100644
index 6cb5fe15e4c..00000000000
--- a/gcc/testsuite/g++.dg/pch/wchar-1.C
+++ /dev/null
@@ -1 +0,0 @@
-#include "wchar-1.H"
diff --git a/gcc/testsuite/g++.dg/pch/wchar-1.Hs b/gcc/testsuite/g++.dg/pch/wchar-1.Hs
deleted file mode 100644
index 431908b88b1..00000000000
--- a/gcc/testsuite/g++.dg/pch/wchar-1.Hs
+++ /dev/null
@@ -1,2 +0,0 @@
-#include <stddef.h>
-const wchar_t test_var[] = L"wide string";
diff --git a/gcc/testsuite/g++.dg/template/array4.C b/gcc/testsuite/g++.dg/template/array4.C
new file mode 100644
index 00000000000..c72782b10ee
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/array4.C
@@ -0,0 +1,11 @@
+// PR c++/14122
+
+extern const char str[];
+
+template <const char* P>
+struct A
+{
+ template <const char* R> void foo();
+};
+
+template class A<str>;
diff --git a/gcc/testsuite/g++.dg/template/call2.C b/gcc/testsuite/g++.dg/template/call2.C
new file mode 100644
index 00000000000..86d5c2e82b5
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/call2.C
@@ -0,0 +1,14 @@
+// PR c++/13592
+
+struct S {
+ void operator()(int);
+};
+
+struct A {
+ template <typename> void foo();
+ S s;
+};
+
+template <typename> void A::foo() {
+ s(0);
+}
diff --git a/gcc/testsuite/g++.dg/template/cond3.C b/gcc/testsuite/g++.dg/template/cond3.C
new file mode 100644
index 00000000000..788b3754a61
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/cond3.C
@@ -0,0 +1,15 @@
+// PR c++/13833
+
+struct X {
+ template <typename T>
+ X & operator << (const T &t);
+ X & operator<< (int& (*p) (int&));
+};
+
+X x;
+
+template <int> void foo () {
+ x << (1 ? "ok" : "failed");
+}
+
+template void foo<1>();
diff --git a/gcc/testsuite/g++.dg/template/cond4.C b/gcc/testsuite/g++.dg/template/cond4.C
new file mode 100644
index 00000000000..35416ba798f
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/cond4.C
@@ -0,0 +1,20 @@
+// PR c++/14369
+
+struct A { };
+
+template<class T>
+struct X : A {
+ const A* bar() const
+ { return this; }
+
+ const A& foo() const;
+};
+
+template<class T>
+const A& X<T>::foo() const
+{
+ const A* t = bar();
+ return *(t ? t : throw 0);
+}
+
+
diff --git a/gcc/testsuite/g++.dg/template/crash17.C b/gcc/testsuite/g++.dg/template/crash17.C
new file mode 100644
index 00000000000..9fa826b999d
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/crash17.C
@@ -0,0 +1,19 @@
+template <int I>
+struct A {
+};
+
+template <typename T>
+struct B {
+ typedef typename T::type type;
+ static const type j = T::j;
+
+ A<j> b;
+};
+
+struct C {
+ typedef int type;
+ static const int j = 3;
+};
+
+int i = B<C>::j;
+
diff --git a/gcc/testsuite/g++.dg/template/ctor3.C b/gcc/testsuite/g++.dg/template/ctor3.C
new file mode 100644
index 00000000000..d3eb2c3f8a5
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/ctor3.C
@@ -0,0 +1,19 @@
+struct A {};
+struct B;
+
+template <class TP> struct X: virtual A {
+ template <class TP2> X(TP2* ptr) {}
+ template <class TP2> X(const X<TP2>) {}
+};
+
+struct Y : X<B> {
+ Y(A* a) : X<B>(a) {}
+};
+
+void func1(X<B>);
+
+void func2() {
+ A a;
+ Y y(&a);
+ func1(X<A>(&a));
+}
diff --git a/gcc/testsuite/g++.dg/template/defarg4.C b/gcc/testsuite/g++.dg/template/defarg4.C
new file mode 100644
index 00000000000..293538adbd1
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/defarg4.C
@@ -0,0 +1,14 @@
+// PR c++/14763
+
+struct A {
+ int get() const {}
+ static A *foo();
+};
+
+template<bool> struct S {
+ S(unsigned int = A::foo()->get()) ;
+};
+
+void foo() throw() {
+ S<false> f;
+}
diff --git a/gcc/testsuite/g++.dg/template/friend26.C b/gcc/testsuite/g++.dg/template/friend26.C
new file mode 100644
index 00000000000..3cf659df402
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/friend26.C
@@ -0,0 +1,15 @@
+// PR c++/14359
+
+template<typename> struct A {};
+
+template<typename> struct B
+{
+ template<typename T> friend void foo(const A<T>& a, const B&) { a; }
+};
+
+void bar()
+{
+ A<void> a;
+ B<void> b;
+ foo(a,b);
+}
diff --git a/gcc/testsuite/g++.dg/template/koenig4.C b/gcc/testsuite/g++.dg/template/koenig4.C
new file mode 100644
index 00000000000..31e41fcf97f
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/koenig4.C
@@ -0,0 +1,12 @@
+// PR c++/13978
+
+namespace ns {
+ template <class TP> void func1(TP* t);
+ struct A {};
+}
+
+template < class TP >
+void func2() {
+ func1( new ns::A() );
+}
+
diff --git a/gcc/testsuite/g++.dg/template/lookup4.C b/gcc/testsuite/g++.dg/template/lookup4.C
new file mode 100644
index 00000000000..d64006133c3
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/lookup4.C
@@ -0,0 +1,6 @@
+// PR c++/13950
+
+template <class T> struct Base {};
+template <class T> struct Derived: public Base<T> {
+ typename Derived::template Base<double>* p1; // { dg-error "" }
+};
diff --git a/gcc/testsuite/g++.dg/template/lookup5.C b/gcc/testsuite/g++.dg/template/lookup5.C
new file mode 100644
index 00000000000..022202a7158
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/lookup5.C
@@ -0,0 +1,17 @@
+// PR c++/13925
+
+namespace N {
+ template <class T> void f(T);
+
+ namespace M {
+ class A {
+ friend void f<int>(int);
+ };
+ }
+
+ template <class T> void f(T) {}
+ template <> void f<int>(int )
+ {
+ f<long>(0);
+ }
+}
diff --git a/gcc/testsuite/g++.dg/template/lookup6.C b/gcc/testsuite/g++.dg/template/lookup6.C
new file mode 100644
index 00000000000..2ca6dcc7547
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/lookup6.C
@@ -0,0 +1,11 @@
+struct S
+{
+ template<typename T> static void g();
+};
+
+template<typename T>
+void f() { return S::template g<T>(); }
+
+void g() {
+ f<int>();
+}
diff --git a/gcc/testsuite/g++.dg/template/lookup7.C b/gcc/testsuite/g++.dg/template/lookup7.C
new file mode 100644
index 00000000000..0e05c5f752c
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/lookup7.C
@@ -0,0 +1,9 @@
+class S;
+
+template<class T>
+int f(T, S);
+
+class S {
+ template<class T>
+ friend int f(T t, S) { t; return 0; }
+};
diff --git a/gcc/testsuite/g++.dg/template/member4.C b/gcc/testsuite/g++.dg/template/member4.C
new file mode 100644
index 00000000000..290fbb566c2
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/member4.C
@@ -0,0 +1,20 @@
+// { dg-do compile }
+// Contributed by Matty T. <mattyt-bugzilla at tpg dot com dot au>
+// PR c++/13813 [DR206]: Check semantic constraints of members of
+// non-dependent type at instantiation time.
+
+
+// DR206 explains that this is ill-formed, no diagnostic required. We emit
+// a diagnostic instead.
+class E;
+template < class A > class Z {
+ A a;
+ E e; // { dg-error "incomplete type" }
+};
+
+
+// Nested classes are always dependent names.
+template < class A > class Y {
+ class F;
+ F e; // { dg-bogus "" "nested classes are always dependent, see DR108 and DR224" }
+};
diff --git a/gcc/testsuite/g++.dg/template/non-type-template-argument-1.C b/gcc/testsuite/g++.dg/template/non-type-template-argument-1.C
index 273017635c3..9d400d5b104 100644
--- a/gcc/testsuite/g++.dg/template/non-type-template-argument-1.C
+++ b/gcc/testsuite/g++.dg/template/non-type-template-argument-1.C
@@ -6,7 +6,7 @@ template <bool> struct C {};
template <typename T> struct D
{
- C<T::X> c; // { dg-error "names a type" }
+ C<T::X> c; // { dg-error "parsed as a non-type|if a type is meant" }
};
-D<B> d; // { dg-error "" }
+D<B> d; // { dg-error "instantiated from here" }
diff --git a/gcc/testsuite/g++.dg/template/nontype4.C b/gcc/testsuite/g++.dg/template/nontype4.C
new file mode 100644
index 00000000000..43ef2b0ce6b
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/nontype4.C
@@ -0,0 +1,14 @@
+// { dg-do compile }
+
+// Origin: Ivan Godard <igodard@pacbell.net>
+// Volker Reichelt <reichelt@gcc.gnu.org>
+
+// PR c++/13797: ICE invalid nontype template parameter
+
+template <int> struct A
+{
+ typedef A<0> B; // { dg-error "not a valid type|conflict" }
+ template <B> struct B {}; // { dg-error "not a valid type|declaration" }
+};
+
+A<0> a; // { dg-error "instantiated" }
diff --git a/gcc/testsuite/g++.dg/template/nontype5.C b/gcc/testsuite/g++.dg/template/nontype5.C
new file mode 100644
index 00000000000..e53b6c1a654
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/nontype5.C
@@ -0,0 +1,14 @@
+// { dg-do compile }
+
+// Origin: Ivan Godard <igodard@pacbell.net>
+// Volker Reichelt <reichelt@gcc.gnu.org>
+
+// PR c++/13797: ICE invalid nontype template parameter
+
+template <int> struct A
+{
+ typedef A<0> B;
+ template <B> struct C {}; // { dg-error "not a valid type" }
+};
+
+A<0> a; // { dg-error "instantiated" }
diff --git a/gcc/testsuite/g++.dg/template/nontype6.C b/gcc/testsuite/g++.dg/template/nontype6.C
new file mode 100644
index 00000000000..43470ccdb1d
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/nontype6.C
@@ -0,0 +1,19 @@
+// { dg-do compile }
+// Origin: <v dot haisman at sh dot cvut dot cz>
+// PR c++/13957: Improved error message for type in template (when non-type
+// is expected).
+
+template <class T>
+struct A
+{
+ typedef int type;
+};
+
+template <class T>
+void func(void)
+{
+ (void)A<T>::type(); // { dg-error "if a type is meant" }
+// { dg-error "parsed as a non-type" "" { target *-*-* } 15 }
+}
+
+template void func<float>(void); // { dg-error "instantiated from here" }
diff --git a/gcc/testsuite/g++.dg/template/operator2.C b/gcc/testsuite/g++.dg/template/operator2.C
new file mode 100644
index 00000000000..89f428d5fc5
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/operator2.C
@@ -0,0 +1,8 @@
+template <typename T> struct A {};
+
+struct B {
+ operator A<B>();
+};
+
+template <typename T>
+void f() { B::operator A<T>; }
diff --git a/gcc/testsuite/g++.dg/template/partial3.C b/gcc/testsuite/g++.dg/template/partial3.C
new file mode 100644
index 00000000000..9862675148e
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/partial3.C
@@ -0,0 +1,14 @@
+// { dg-do compile }
+// Origin: John Maddock <john at johnmaddock dot co dot uk>
+// PR c++/13997: Error while matching partial specialization of array type
+
+template <typename T>
+struct is_array;
+
+template <typename T, unsigned int N>
+struct is_array<T[N]>;
+
+template <typename T, unsigned int N>
+struct is_array<const T[N]> {};
+
+template struct is_array<int const[2]>;
diff --git a/gcc/testsuite/g++.dg/template/qualified-id1.C b/gcc/testsuite/g++.dg/template/qualified-id1.C
index bbe23c2743b..967764281c0 100644
--- a/gcc/testsuite/g++.dg/template/qualified-id1.C
+++ b/gcc/testsuite/g++.dg/template/qualified-id1.C
@@ -16,8 +16,8 @@ template <> struct A::B<false> {};
template <typename T> void foo()
{
- T::C (); // { dg-error "names a type" "" }
- T::template B<false>(); // { dg-error "names a type" "" }
+ T::C (); // { dg-error "parsed as a non-type|if a type is meant" "" }
+ T::template B<false>(); // { dg-error "parsed as a non-type|if a type is meant" "" }
}
void bar()
diff --git a/gcc/testsuite/g++.dg/template/sfinae1.C b/gcc/testsuite/g++.dg/template/sfinae1.C
new file mode 100644
index 00000000000..47db4115452
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/sfinae1.C
@@ -0,0 +1,21 @@
+// PR c++/14337
+
+template <bool> struct Constraint;
+template <> struct Constraint<true> { typedef int Result; };
+
+template <typename T>
+struct IsInt { static const bool value = false; };
+
+template <>
+struct IsInt<int> { static const bool value = true; };
+
+template <typename T>
+typename Constraint<IsInt<T>::value>::Result foo(T);
+
+template <typename T>
+typename Constraint<!IsInt<T>::value>::Result foo(T);
+
+template <typename>
+void bar() {
+ foo(1);
+}
diff --git a/gcc/testsuite/g++.dg/template/sizeof6.C b/gcc/testsuite/g++.dg/template/sizeof6.C
new file mode 100644
index 00000000000..3ef3794b5b7
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/sizeof6.C
@@ -0,0 +1,13 @@
+// { dg-do compile }
+// Contributed by Giovanni Bajo <giovannibajo at gcc dot gnu dot org>
+// PR c++/13683: bogus warning about passing non-PODs through ellipsis
+
+struct B {};
+struct NonPOD : B {};
+
+struct A
+{
+ static int check(...);
+ static NonPOD GetNonPOD(void);
+ enum { value = sizeof(A::check(A::GetNonPOD())) };
+};
diff --git a/gcc/testsuite/g++.dg/template/sizeof7.C b/gcc/testsuite/g++.dg/template/sizeof7.C
new file mode 100644
index 00000000000..d41de080db3
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/sizeof7.C
@@ -0,0 +1,15 @@
+// { dg-do compile }
+// Testcase by: bangerth@dealii.org
+// PR c++/10858: failure with calling a method inside sizeof in a template
+
+ template <int> struct P {};
+
+ void bar ();
+
+ template <class T> struct X {
+ static int foo(void (*)());
+ P<sizeof(foo(&bar))> p;
+ };
+
+ template class X<int>;
+
diff --git a/gcc/testsuite/g++.dg/template/spec11.C b/gcc/testsuite/g++.dg/template/spec11.C
new file mode 100644
index 00000000000..36d93a94ee1
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/spec11.C
@@ -0,0 +1,20 @@
+// { dg-do compile }
+
+// Origin: jhbrown@bluefinrobotics.com
+
+// PR c++/13635: ICE explicit specialization of member function template
+
+template <class foo>
+class bar {
+public:
+ template <class baz>
+ int func(baz *x);
+};
+
+template <>
+template <class baz>
+int bar<double>::func(baz *x) { return 5;}
+
+template <>
+template <>
+int bar<double>::func(int *x) { return 5;}
diff --git a/gcc/testsuite/g++.dg/template/spec12.C b/gcc/testsuite/g++.dg/template/spec12.C
new file mode 100644
index 00000000000..7cf2e2f0aa2
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/spec12.C
@@ -0,0 +1,18 @@
+// { dg-do compile }
+// Contributed by: Wolfgang Bangerth <bangerth at dealii dot org>
+// PR c++/14409: Accepts invalid function signature for explicit instantiation
+
+struct X
+{
+ template <typename U>
+ void foo (U) {}
+
+ template <typename U>
+ void foo_const (U) const {}
+};
+
+template void X::foo (int);
+template void X::foo_const (int) const;
+
+template void X::foo (int) const; // { dg-error "" }
+template void X::foo_const (int); // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/template/spec13.C b/gcc/testsuite/g++.dg/template/spec13.C
new file mode 100644
index 00000000000..f2a3a373ed7
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/spec13.C
@@ -0,0 +1,16 @@
+// { dg-options "-w" }
+
+template <typename T>
+struct S {
+ int i;
+ template <typename U> void f(U) {}
+};
+
+template<>
+template <typename U>
+void S<int>::f(U) { i; }
+
+void f() {
+ S<int> s;
+ s.f<int>(3);
+}
diff --git a/gcc/testsuite/g++.dg/template/static6.C b/gcc/testsuite/g++.dg/template/static6.C
new file mode 100644
index 00000000000..30ecae94067
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/static6.C
@@ -0,0 +1,14 @@
+// PR c++/13969
+
+struct B {
+ static const int N=10;
+};
+
+template <int> struct X {};
+
+template <typename> struct S {
+ static const int N = B::N;
+ X<N> x;
+};
+
+template class S<float>;
diff --git a/gcc/testsuite/g++.dg/template/ttp7.C b/gcc/testsuite/g++.dg/template/ttp7.C
new file mode 100644
index 00000000000..0bcaa8f7292
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/ttp7.C
@@ -0,0 +1,16 @@
+// { dg-do compile }
+// Contributed by Andrew Pinski <pinskia at gcc dot gnu dot org>
+// PR c++/13810: ICE while parsing invalid default argument for a
+// template template parameter.
+
+struct X;
+template<int> struct A {};
+
+template<template<int> class = X > struct B1 {}; // { dg-error "as a default value" }
+template<template<int> class = A<0> > struct B2 {}; // { dg-error "as a default value" }
+
+template <typename T>
+struct S {
+ template <template <typename> class = S> struct I1 {}; // { dg-error "as a default value" }
+ template <template <typename> class = ::S> struct I2 {};
+};
diff --git a/gcc/testsuite/g++.dg/template/ttp8.C b/gcc/testsuite/g++.dg/template/ttp8.C
new file mode 100644
index 00000000000..99f99b965a1
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/ttp8.C
@@ -0,0 +1,16 @@
+// { dg-do compile }
+// Contributed by: Niall Douglas <s_gccbugzilla at netprod dot com>
+// PR c++/14284: Failure to select specialization
+
+template<typename> struct S;
+template<template<class> class> struct I {};
+
+template<class, int> struct Match;
+
+template<template<class> class C>
+struct Match<I<C>, 0> {};
+
+template<template<class> class C, int i>
+struct Match<I<C>, i>;
+
+Match<I<S>, 0> v;
diff --git a/gcc/testsuite/g++.dg/template/typename6.C b/gcc/testsuite/g++.dg/template/typename6.C
new file mode 100644
index 00000000000..937ea96aa80
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/typename6.C
@@ -0,0 +1,11 @@
+struct O {
+ template <typename T>
+ struct I {
+ I (int);
+ };
+};
+
+template <typename T>
+void f() {
+ typename ::O::I<int>(3);
+}
diff --git a/gcc/testsuite/g++.dg/warn/Wunused-5.C b/gcc/testsuite/g++.dg/warn/Wunused-5.C
new file mode 100644
index 00000000000..06d1a0516bc
--- /dev/null
+++ b/gcc/testsuite/g++.dg/warn/Wunused-5.C
@@ -0,0 +1,13 @@
+// PR c++/14199
+// { dg-options "-W -Wall -Wunused" }
+
+struct X {
+ static void foo ();
+};
+
+template <typename T>
+void foo (const T &t) {
+ t.foo();
+}
+
+template void foo (const X &);
diff --git a/gcc/testsuite/g++.dg/warn/Wunused-6.C b/gcc/testsuite/g++.dg/warn/Wunused-6.C
new file mode 100644
index 00000000000..58a3f642bc3
--- /dev/null
+++ b/gcc/testsuite/g++.dg/warn/Wunused-6.C
@@ -0,0 +1,11 @@
+/* PR middle-end/14203 */
+/* { dg-do compile } */
+/* { dg-options "-Wall" } */
+
+void foo()
+{
+ if (false)
+ if (int i=0) // { dg-warning "unused" "" }
+ int j=0; // { dg-warning "unused" "" }
+}
+
diff --git a/gcc/testsuite/g++.dg/warn/Wunused-7.C b/gcc/testsuite/g++.dg/warn/Wunused-7.C
new file mode 100644
index 00000000000..4281bc81569
--- /dev/null
+++ b/gcc/testsuite/g++.dg/warn/Wunused-7.C
@@ -0,0 +1,12 @@
+// PR c++/14481
+// { dg-options "-Wunused" }
+
+void func()
+{
+ struct mybitfields {
+ unsigned int s_field:8;
+ };
+ struct mybitfields s;
+ s.s_field = 255;
+};
+
diff --git a/gcc/testsuite/g++.dg/warn/conv2.C b/gcc/testsuite/g++.dg/warn/conv2.C
new file mode 100644
index 00000000000..e3466002218
--- /dev/null
+++ b/gcc/testsuite/g++.dg/warn/conv2.C
@@ -0,0 +1,3 @@
+// PR c++/13932
+
+int i = 1.; // { dg-warning "converting" }
diff --git a/gcc/testsuite/g++.dg/warn/incomplete1.C b/gcc/testsuite/g++.dg/warn/incomplete1.C
index f4d074aa085..389f8bd539e 100644
--- a/gcc/testsuite/g++.dg/warn/incomplete1.C
+++ b/gcc/testsuite/g++.dg/warn/incomplete1.C
@@ -16,6 +16,6 @@ A *a; // { dg-warning "`a' has incomplete type" "" }
int
main (int argc, char **argv)
{
- delete a; // { dg-warning "delete" "" { xfail *-*-* } }
+ delete a; // { dg-warning "delete" "" }
return 0;
}
diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash15.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash15.C
index 28e3253c192..3c59fa64b43 100644
--- a/gcc/testsuite/g++.old-deja/g++.brendan/crash15.C
+++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash15.C
@@ -16,7 +16,7 @@ int
main() {
std::cout << "starting\n";
B b;
- b.~A();// { dg-error "" } destructor
+ b.~A();
std::cout << "done\n";
}
diff --git a/gcc/testsuite/g++.old-deja/g++.ext/arrnew2.C b/gcc/testsuite/g++.old-deja/g++.ext/arrnew2.C
index 84063834f1d..93d15d08d90 100644
--- a/gcc/testsuite/g++.old-deja/g++.ext/arrnew2.C
+++ b/gcc/testsuite/g++.old-deja/g++.ext/arrnew2.C
@@ -1,4 +1,8 @@
-// { dg-do assemble }
-// { dg-options "" }
+// { dg-do run { xfail *-*-* } }
+// { dg-options "-w -fpermissive" }
-int *foo = new int[1](0); // { dg-bogus "" }
+int *foo = new int[1](42); // { dg-bogus "" }
+int main ()
+{
+ return foo[0] != 42;
+}
diff --git a/gcc/testsuite/g++.old-deja/g++.ext/attrib5.C b/gcc/testsuite/g++.old-deja/g++.ext/attrib5.C
index 7a77d6154d3..545f12803b0 100644
--- a/gcc/testsuite/g++.old-deja/g++.ext/attrib5.C
+++ b/gcc/testsuite/g++.old-deja/g++.ext/attrib5.C
@@ -1,5 +1,7 @@
-// { dg-do run { xfail alpha*-dec-osf* *-*-hms i?86-pc-cygwin *-*-coff hppa2*-hp-hpux11* } }
+// { dg-do run { xfail alpha*-dec-osf* *-*-hms i?86-pc-cygwin *-*-coff } }
// Test that attributes weak and alias coexist.
+// { dg-require-weak "" }
+// { dg-require-alias "" }
extern "C" {
void f () __attribute__((weak, alias ("_f")));
diff --git a/gcc/testsuite/g++.old-deja/g++.law/profile1.C b/gcc/testsuite/g++.old-deja/g++.law/profile1.C
index 9ca4a915469..2fa633ba17e 100644
--- a/gcc/testsuite/g++.old-deja/g++.law/profile1.C
+++ b/gcc/testsuite/g++.old-deja/g++.law/profile1.C
@@ -1,5 +1,5 @@
-// { dg-do run { xfail mips*-*-* i[3456]86-*-sco3.2v5* } }
-// { dg-require-profiling "" }
+// { dg-do run { xfail i[3456]86-*-sco3.2v5* } }
+// { dg-require-profiling "-pg" }
// { dg-options "-pg" }
// { dg-options "-pg -static" { target hppa*-*-hpux* } }
// GROUPS passed profiling
diff --git a/gcc/testsuite/g++.old-deja/g++.law/visibility28.C b/gcc/testsuite/g++.old-deja/g++.law/visibility28.C
index b1458e5955a..a7141ae5ea7 100644
--- a/gcc/testsuite/g++.old-deja/g++.law/visibility28.C
+++ b/gcc/testsuite/g++.old-deja/g++.law/visibility28.C
@@ -11,7 +11,7 @@ public:
class D : public B {
public:
virtual ~D() { printf( "D::~D\n"); }
- void operator = ( int i) { this->~B(); }// { dg-error "" } D has no ~B part to it
+ void operator = ( int i) { this->~B(); }
};
int
diff --git a/gcc/testsuite/g++.old-deja/g++.martin/new1.C b/gcc/testsuite/g++.old-deja/g++.martin/new1.C
index c7951654c26..502c4f42ad0 100644
--- a/gcc/testsuite/g++.old-deja/g++.martin/new1.C
+++ b/gcc/testsuite/g++.old-deja/g++.martin/new1.C
@@ -71,8 +71,8 @@ void test1()
func(new B(A(10).addr()));
}catch(int){
}
- CHECK(new_done==1);
- CHECK(ctor_done==2);
+ CHECK(ctor_done==1);
+ CHECK(new_done==2);
CHECK(func_done==3);
CHECK(dtor_done==4);
CHECK(delete_done==0);
@@ -86,10 +86,10 @@ void test2()
func(new B(A(10).addr()));
}catch(int){
}
- CHECK(new_done==1);
- CHECK(ctor_done==0);
+ CHECK(ctor_done==1);
+ CHECK(new_done==2);
CHECK(func_done==0);
- CHECK(dtor_done==0);
+ CHECK(dtor_done==3);
CHECK(delete_done==0);
}
@@ -101,11 +101,11 @@ void test3()
func(new B(A(10).addr()));
}catch(int){
}
- CHECK(new_done==1);
- CHECK(ctor_done==2);
+ CHECK(new_done==0);
+ CHECK(ctor_done==1);
CHECK(func_done==0);
CHECK(dtor_done==0);
- CHECK(delete_done==3);
+ CHECK(delete_done==0);
}
int main()
diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net36.C b/gcc/testsuite/g++.old-deja/g++.mike/net36.C
index 3ffa60e37a2..98b38eedb48 100644
--- a/gcc/testsuite/g++.old-deja/g++.mike/net36.C
+++ b/gcc/testsuite/g++.old-deja/g++.mike/net36.C
@@ -11,7 +11,7 @@ typedef void (A::*handler) (X*);
class B {
public:
- void setHandler(handler);
+ void setHandler(handler); // { dg-error "candidate" }
};
void f(B* b) {
diff --git a/gcc/testsuite/g++.old-deja/g++.ns/koenig5.C b/gcc/testsuite/g++.old-deja/g++.ns/koenig5.C
index 84af9f1edf5..d84fc8dbf41 100644
--- a/gcc/testsuite/g++.old-deja/g++.ns/koenig5.C
+++ b/gcc/testsuite/g++.old-deja/g++.ns/koenig5.C
@@ -1,16 +1,18 @@
// { dg-do assemble }
// To find function pointers in Koenig lookup is ok as long as we only find one.
namespace A{
- void foo(); // { dg-error "" }
+ void foo();
struct X{};
void (*bar)(X*)=0;
}
using A::X;
-void (*foo)(X*)=0; // { dg-error "" }
+void (*foo)(X*)=0;
void g()
{
- foo(new X); // { dg-error "" } both objects and functions found
+ foo(new X); // ok -- DR 218 says that we find the global
+ // foo variable first, and therefore do not
+ // perform argument-dependent lookup.
bar(new X); // ok
}
diff --git a/gcc/testsuite/g++.old-deja/g++.oliva/ChangeLog b/gcc/testsuite/g++.old-deja/g++.oliva/ChangeLog
index cb7d567f659..fd43a5f512c 100644
--- a/gcc/testsuite/g++.old-deja/g++.oliva/ChangeLog
+++ b/gcc/testsuite/g++.old-deja/g++.oliva/ChangeLog
@@ -1,3 +1,7 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
2003-06-04 J"orn Rennecke <joern.rennecke@superh.com>
* template1.C (bar): Remove xfail marker.
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/static3.C b/gcc/testsuite/g++.old-deja/g++.pt/static3.C
index 6688d23cda5..5a638b1f7ad 100644
--- a/gcc/testsuite/g++.old-deja/g++.pt/static3.C
+++ b/gcc/testsuite/g++.old-deja/g++.pt/static3.C
@@ -1,6 +1,7 @@
-// { dg-do run { xfail *-*-aout *-*-coff *-*-hpux* *-*-hms } }
+// { dg-do run }
// On targets that don't support weak symbols, we require an explicit
// instantiation of arr.
+// { dg-require-weak "" }
template<class T>
struct A {
diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb125.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb125.C
index 915fbe6794b..b06823685e4 100644
--- a/gcc/testsuite/g++.old-deja/g++.robertl/eb125.C
+++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb125.C
@@ -17,6 +17,6 @@ class test_square
template <class BOX> void test(BOX *the_box) // { dg-error "" } semicolon missing
{x
the_box->print();
- }; // { dg-error "" }
+ };
template void test<> (test_box *); // { dg-error "" }
diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb42.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb42.C
deleted file mode 100644
index c27aa8d2df7..00000000000
--- a/gcc/testsuite/g++.old-deja/g++.robertl/eb42.C
+++ /dev/null
@@ -1,19 +0,0 @@
-//Build don't link:
-#include <vector>
-#include <algorithm>
-
-template <class T> class Expr
-{
-public :
-Expr(){};
-Expr(const T&){};
-};
-
-template <class T >
-inline bool compare(const Expr<T> a, const Expr<T> b){ return true; };
-
-int main()
-{
- std::vector<int> a(3);
- std::sort( a.begin(), a.end(), compare ); // ERROR - no matching function
-}
diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb58.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb58.C
index 566cf9a7831..04ec92a30af 100644
--- a/gcc/testsuite/g++.old-deja/g++.robertl/eb58.C
+++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb58.C
@@ -1,5 +1,5 @@
// { dg-do run }
-// { dg-options "" }
+// { dg-options "-w -fpermissive" }
// Test for g++ array init extension
class A {
diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb63.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb63.C
index a1601f80f9f..a49fb02641c 100644
--- a/gcc/testsuite/g++.old-deja/g++.robertl/eb63.C
+++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb63.C
@@ -1,5 +1,5 @@
// { dg-do run }
-// { dg-options "" }
+// { dg-options "-w -fpermissive" }
//This uses GNU extensions, so disable -ansi
#include <stdio.h>
#include <stdlib.h>
diff --git a/gcc/testsuite/g++.old-deja/old-deja.exp b/gcc/testsuite/g++.old-deja/old-deja.exp
index 425fdd42336..5e3f6b7fc34 100644
--- a/gcc/testsuite/g++.old-deja/old-deja.exp
+++ b/gcc/testsuite/g++.old-deja/old-deja.exp
@@ -30,17 +30,6 @@ dg-init
# that are handled specially.
set tests [lsort [find $srcdir/$subdir *.C]]
-proc g++-dg-prune { system text } {
- regsub -all "(^|\n)\[^\n\]*: In (\[^\n\]*function|method|\[^\n\]*structor) \[^\n\]*" $text "" text
- regsub -all "(^|\n)\[^\n\]*: In instantiation of \[^\n\]*" $text "" text
- regsub -all "(^|\n)\[^\n\]*: instantiated from \[^\n\]*" $text "" text
- regsub -all "(^|\n)\[^\n\]*: At (top level|global scope):\[^\n\]*" $text "" text
- regsub -all "(^|\n)\[^\n\]*file path prefix \[^\n\]* never used" $text "" text
- regsub -all "(^|\n)\[^\n\]*linker input file unused since linking not done" $text "" text
- regsub -all "(^|\n)collect: re(compiling|linking)\[^\n\]*" $text "" text
- return $text
-}
-
# Main loop.
dg-runtest $tests "" $DEFAULT_CXXFLAGS
diff --git a/gcc/testsuite/g77.dg/bprob/bprob.exp b/gcc/testsuite/g77.dg/bprob/bprob.exp
index 6eb45be2e36..e453f4e66f8 100644
--- a/gcc/testsuite/g77.dg/bprob/bprob.exp
+++ b/gcc/testsuite/g77.dg/bprob/bprob.exp
@@ -21,7 +21,7 @@ load_lib target-supports.exp
# Some targets don't have any implementation of __bb_init_func or are
# missing other needed machinery.
-if { ![check_profiling_available] } {
+if { ![check_profiling_available "-fprofile-arcs"] } {
return
}
diff --git a/gcc/testsuite/g77.f-torture/execute/12884.f b/gcc/testsuite/g77.f-torture/execute/12884.f
new file mode 100644
index 00000000000..6e2d894a3bf
--- /dev/null
+++ b/gcc/testsuite/g77.f-torture/execute/12884.f
@@ -0,0 +1,32 @@
+ IMPLICIT NONE
+C properly handle a "/" in a $<NAME> $END namelist
+C pr12884 --
+C error in reading a namelist when it is preceded by a line with a SLASH
+C
+ CHARACTER*80 DL(7)
+ DATA DL /'$file',
+ 1 'oms omsmc.i2',
+ 2 'pseu pseudo/PSN',
+ 3 '$end',
+ 4 '$CNTRL',
+ 5 'ispher=1,NOSYM=2,RUNFLG=3,noprop=4,',
+ 6 '$END'/
+C $file is not a valid namelist, but it still
+C is parsed by the runtime
+ INTEGER*4 ISPHER,NOSYM,RUNFLG,NOPROP /-1 /
+ INTEGER I
+ NAMELIST /CNTRL/ ISPHER,NOSYM,RUNFLG,NOPROP
+C make a unique datafile
+ OPEN(UNIT=9,STATUS='SCRATCH')
+ WRITE(9,*,ERR=100)(DL(I),I=1,7)
+ REWIND(9)
+ READ(9,NML=CNTRL,ERR=100)
+ CLOSE(9)
+ IF (ISPHER.NE.1.OR.NOSYM.NE.2.OR.RUNFLG.NE.3.OR.NOPROP.NE.4)THEN
+ CALL ABORT
+ ENDIF
+C all is well at this point !!
+ STOP
+ 100 PRINT*,'FILE ERROR(S)'
+ CALL ABORT
+ END
diff --git a/gcc/testsuite/gcc.c-torture/compile/20040121-1.c b/gcc/testsuite/gcc.c-torture/compile/20040121-1.c
new file mode 100644
index 00000000000..2039472fd4e
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/20040121-1.c
@@ -0,0 +1,41 @@
+/* PR target/12898
+ 0x8000 needs multiple instructions to be emitted on Alpha; the
+ fluff around it causes it to be emitted in a no_new_pseudos
+ context, which triggered a problem in alpha.c. */
+
+void f (const char *, ...);
+int g (void);
+void *p (void);
+
+int isymBase, ilineBase, sym_hdr, want_line, proc_desc;
+char *lines;
+
+void print_file_desc (int *fdp)
+{
+ char *str_base = p ();
+ int symi, pdi = g ();
+
+ for (symi = 0; isymBase;)
+ {
+ int proc_ptr = proc_desc + pdi;
+ f("1", isymBase, proc_ptr + *fdp, str_base);
+ if (want_line && *fdp)
+ {
+ int delta;
+ long cur_line = proc_ptr;
+ char *line_ptr = lines + proc_ptr;
+ char *line_end = p ();
+
+ f("2", sym_hdr);
+ while (line_ptr < line_end)
+ {
+ delta = *line_ptr;
+ if (delta)
+ line_ptr++;
+ else
+ delta = line_ptr[1] ^ 0x8000;
+ f("3", cur_line, delta);
+ }
+ }
+ }
+}
diff --git a/gcc/testsuite/gcc.c-torture/compile/20040130-1.c b/gcc/testsuite/gcc.c-torture/compile/20040130-1.c
new file mode 100644
index 00000000000..0edcea44ede
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/20040130-1.c
@@ -0,0 +1,24 @@
+/* PR target/11475 */
+/* Origin: <heinrich.brand@fujitsu-siemens.com> */
+
+/* This used to fail on SPARC because of a broken pattern. */
+
+#pragma pack(2)
+
+struct
+{
+ unsigned char G936:7;
+ unsigned short G937:6;
+ unsigned int :4;
+ unsigned short :14;
+ unsigned int G938:8;
+ unsigned int :30;
+ unsigned short :16;
+ unsigned int :18;
+ unsigned short G939:9;
+} G928b;
+
+void TestG928(void)
+{
+ G928b.G936 |= G928b.G939;
+}
diff --git a/gcc/testsuite/gcc.c-torture/compile/20040209-1.c b/gcc/testsuite/gcc.c-torture/compile/20040209-1.c
new file mode 100644
index 00000000000..d256d58e34b
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/20040209-1.c
@@ -0,0 +1,9 @@
+/* The following code used to ICE in fold_convert. */
+
+float ceilf(float);
+
+int foo(float x)
+{
+ return (double)ceilf(x);
+}
+
diff --git a/gcc/testsuite/gcc.c-torture/compile/20040214-1.c b/gcc/testsuite/gcc.c-torture/compile/20040214-1.c
new file mode 100644
index 00000000000..90b09dcdbab
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/20040214-1.c
@@ -0,0 +1,7 @@
+void foo(void)
+{
+ char c;
+
+ for (c = -75; c <= 75; c++)
+ ;
+}
diff --git a/gcc/testsuite/gcc.c-torture/compile/20040214-2.c b/gcc/testsuite/gcc.c-torture/compile/20040214-2.c
new file mode 100644
index 00000000000..352d5a5d764
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/20040214-2.c
@@ -0,0 +1,57 @@
+/* http://gcc.gnu.org/ml/gcc-patches/2004-02/msg01307.html */
+
+typedef struct xdef xdef;
+struct xdef
+{
+ char xtyp;
+ xdef *next;
+ int y;
+};
+
+extern void b ();
+extern void *foo (void *bar);
+extern void *foo2 (void *bar1, void *bar2);
+extern void *qwe;
+
+static void
+c (xdef * xp)
+{
+ b (xp);
+}
+static void
+a (xdef ** xpp)
+{
+ xdef *xp;
+ xp = *xpp;
+
+ foo (xp);
+ xp = foo2 (xp, qwe);
+ b (xp->next);
+ foo (xp);
+ if (xp->y)
+ {
+ foo (xp);
+ if (xp)
+ {
+ xdef *p = foo2 (xp, qwe);
+ foo2 (xp, p);
+ xp = foo (p);
+ }
+ else
+ {
+ foo2 (foo(*xpp), *xpp);
+ }
+ }
+ *xpp = foo2 (xpp, qwe);
+}
+
+void
+b (xdef ** xpp)
+{
+ xdef *xp = *xpp;
+ if (!xp)
+ return;
+ if (xp->xtyp == 0)
+ a (xpp);
+ c (xp);
+}
diff --git a/gcc/testsuite/gcc.c-torture/compile/20040304-1.c b/gcc/testsuite/gcc.c-torture/compile/20040304-1.c
new file mode 100644
index 00000000000..146d42f23d6
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/20040304-1.c
@@ -0,0 +1,45 @@
+/* PR optimization/14235 */
+/* Origin: <senor_fjord@yahoo.com> */
+
+typedef signed char int8_t;
+typedef short int16_t;
+typedef int int32_t;
+typedef unsigned long long uint64_t;
+
+static const uint64_t LOW_BYTE_MASK = 0x00000000000000ffULL;
+static const uint64_t HIGH_BYTE_MASK = 0x000000000000ff00ULL;
+static const uint64_t WORD_MASK = 0x000000000000ffffULL;
+static const uint64_t DWORD_MASK = 0x00000000ffffffffULL;
+
+extern uint64_t *srca_mask;
+extern int *assert_thrown;
+
+void foo()
+{
+ uint64_t tempA = 0; /* actually a bunch of code to set A */
+ uint64_t tempB = 0; /* actually a bunch of code to set B */
+
+ /* cast A to right size */
+ tempA = (((*srca_mask == LOW_BYTE_MASK) ||
+ (*srca_mask == HIGH_BYTE_MASK)) ?
+ ((int8_t)tempA) :
+ ((*srca_mask == WORD_MASK) ?
+ ((int16_t)tempA) :
+ ((*srca_mask == DWORD_MASK) ?
+ ((int32_t)tempA) :
+ tempA)));
+
+ /* cast B to right size */
+ tempB = (((*srca_mask == LOW_BYTE_MASK) ||
+ (*srca_mask == HIGH_BYTE_MASK)) ?
+ ((int8_t)tempB) :
+ ((*srca_mask == WORD_MASK) ?
+ ((int16_t)tempB) :
+ ((*srca_mask == DWORD_MASK) ?
+ ((int32_t)tempB) :
+ tempB)));
+
+ if ((int) tempA > (int) tempB) {
+ *assert_thrown = 1;
+ }
+}
diff --git a/gcc/testsuite/gcc.c-torture/compile/complex-1.c b/gcc/testsuite/gcc.c-torture/compile/complex-1.c
new file mode 100644
index 00000000000..6ba9f04694d
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/complex-1.c
@@ -0,0 +1,12 @@
+extern void u (int, int);
+extern void v (float, float);
+
+void f (__complex__ int x)
+{
+ u (0, x);
+}
+
+void g (__complex__ float x)
+{
+ v (0, x);
+}
diff --git a/gcc/testsuite/gcc.c-torture/compile/fix-trunc-mem-1.c b/gcc/testsuite/gcc.c-torture/compile/fix-trunc-mem-1.c
new file mode 100644
index 00000000000..739726db92b
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/fix-trunc-mem-1.c
@@ -0,0 +1,12 @@
+/* PR target/14201 */
+/* Excercise float -> integer in memory patterns. */
+/* { dg-options "-mieee" { target alpha*-*-* } } */
+
+void f1 (float v, int *p) { *p = v; }
+void f2 (float v, unsigned int*p) { *p = v; }
+void f3 (float v, long long *p) { *p = v; }
+void f4 (float v, unsigned long long *p) { *p = v; }
+void f5 (double v, int *p) { *p = v; }
+void f6 (double v, unsigned int *p) { *p = v; }
+void f7 (double v, long long *p) { *p = v; }
+void f8 (double v, unsigned long long *p) { *p = v; }
diff --git a/gcc/testsuite/gcc.c-torture/compile/libcall-1.c b/gcc/testsuite/gcc.c-torture/compile/libcall-1.c
new file mode 100644
index 00000000000..c1b1cfc6139
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/libcall-1.c
@@ -0,0 +1,14 @@
+/* Failed on ARM because rtx_varies_p didn't like the REG_EQUAL notes
+ generated for libcalls.
+ http://gcc.gnu.org/ml/gcc-patches/2004-02/msg01518.html */
+static const char digs[] = "0123456789ABCDEF";
+int __attribute__((pure)) bar();
+
+int foo (int i)
+{
+ int len;
+ if (i)
+ return 0;
+ len = bar();
+ return digs[len];
+}
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr13889.c b/gcc/testsuite/gcc.c-torture/compile/pr13889.c
new file mode 100644
index 00000000000..d14bc9ac542
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/pr13889.c
@@ -0,0 +1,7 @@
+/* PR target/13889 */
+struct { long long a; } *p;
+void initNetFlowFunct(void) {
+ unsigned int b = (unsigned int)-1;
+ p->a = b;
+}
+
diff --git a/gcc/testsuite/gcc.c-torture/execute/20020720-1.x b/gcc/testsuite/gcc.c-torture/execute/20020720-1.x
index 2520c74f2b4..1f7137b153a 100644
--- a/gcc/testsuite/gcc.c-torture/execute/20020720-1.x
+++ b/gcc/testsuite/gcc.c-torture/execute/20020720-1.x
@@ -11,6 +11,19 @@
# and can make the optimization.
# Don't XFAIL at -O0, that should never fail.
+if { [istarget "sparc*-*-*"] } {
+ set torture_eval_before_compile {
+ global compiler_conditional_xfail_data
+ set compiler_conditional_xfail_data {
+ "PR opt/10348" \
+ { "*-*-*" } \
+ { "-fpic" "-fPIC" } \
+ { "-O0" }
+ }
+ }
+ return 0
+}
+
set torture_eval_before_compile {
global compiler_conditional_xfail_data
set compiler_conditional_xfail_data {
diff --git a/gcc/testsuite/gcc.c-torture/execute/20040208-1.c b/gcc/testsuite/gcc.c-torture/execute/20040208-1.c
new file mode 100644
index 00000000000..02357591072
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20040208-1.c
@@ -0,0 +1,10 @@
+int main ()
+{
+ long double x;
+
+ x = 0x1.0p-500L;
+ x *= 0x1.0p-522L;
+ if (x != 0x1.0p-1022L)
+ abort ();
+ exit (0);
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/20040208-2.c b/gcc/testsuite/gcc.c-torture/execute/20040208-2.c
new file mode 100644
index 00000000000..d8a5afc9462
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20040208-2.c
@@ -0,0 +1,11 @@
+int main ()
+{
+ long double x, y;
+
+ x = 0x1.fffffffffffff8p1022L;
+ x *= 2;
+ y = 0x1.fffffffffffff8p1023L;
+ if (memcmp (&x, &y, sizeof (x)) != 0)
+ abort ();
+ exit (0);
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/20040208-2.x b/gcc/testsuite/gcc.c-torture/execute/20040208-2.x
new file mode 100644
index 00000000000..6c7d3d55003
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20040208-2.x
@@ -0,0 +1 @@
+return [expr ![istarget mips*-*-irix6*]]
diff --git a/gcc/testsuite/gcc.c-torture/execute/20040218-1.c b/gcc/testsuite/gcc.c-torture/execute/20040218-1.c
new file mode 100644
index 00000000000..4d1541af8bf
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20040218-1.c
@@ -0,0 +1,37 @@
+/* PR target/14209. Bug in cris.md, shrinking access size of
+ postincrement.
+ Origin: <hp@axis.com>. */
+
+long int xb (long int *y) __attribute__ ((__noinline__));
+long int xw (long int *y) __attribute__ ((__noinline__));
+short int yb (short int *y) __attribute__ ((__noinline__));
+
+long int xb (long int *y)
+{
+ long int xx = *y & 255;
+ return xx + y[1];
+}
+
+long int xw (long int *y)
+{
+ long int xx = *y & 65535;
+ return xx + y[1];
+}
+
+short int yb (short int *y)
+{
+ short int xx = *y & 255;
+ return xx + y[1];
+}
+
+int main (void)
+{
+ long int y[] = {-1, 16000};
+ short int yw[] = {-1, 16000};
+
+ if (xb (y) != 16255
+ || xw (y) != 81535
+ || yb (yw) != 16255)
+ abort ();
+ exit (0);
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/20040302-1.c b/gcc/testsuite/gcc.c-torture/execute/20040302-1.c
new file mode 100644
index 00000000000..07056c43f4e
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20040302-1.c
@@ -0,0 +1,24 @@
+int code[]={0,0,0,0,1};
+
+void foo(int x) {
+ volatile int b;
+ b = 0xffffffff;
+}
+
+void bar(int *pc) {
+ static const void *l[] = {&&lab0, &&end};
+
+ foo(0);
+ goto *l[*pc];
+ lab0:
+ foo(0);
+ pc++;
+ goto *l[*pc];
+ end:
+ return;
+}
+
+int main() {
+ bar(code);
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/20040307-1.c b/gcc/testsuite/gcc.c-torture/execute/20040307-1.c
new file mode 100644
index 00000000000..8ab8008bb99
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20040307-1.c
@@ -0,0 +1,25 @@
+int main()
+{
+ int b = 0;
+
+ struct {
+ unsigned int bit0:1;
+ unsigned int bit1:1;
+ unsigned int bit2:1;
+ unsigned int bit3:1;
+ unsigned int bit4:1;
+ unsigned int bit5:1;
+ unsigned int bit6:1;
+ unsigned int bit7:1;
+ } sdata = {0x01};
+
+ while ( sdata.bit0-- > 0 ) {
+ b++ ;
+ if ( b > 100 ) break;
+ }
+
+ if (b != 1)
+ abort ();
+ return 0;
+}
+
diff --git a/gcc/testsuite/gcc.c-torture/execute/20040308-1.c b/gcc/testsuite/gcc.c-torture/execute/20040308-1.c
new file mode 100644
index 00000000000..4c63535e7f7
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20040308-1.c
@@ -0,0 +1,21 @@
+/* This used to fail on SPARC with an unaligned memory access. */
+
+void foo(int n)
+{
+ struct S {
+ int i[n];
+ unsigned int b:1;
+ int i2;
+ } __attribute__ ((packed)) __attribute__ ((aligned (4)));
+
+ struct S s;
+
+ s.i2 = 0;
+}
+
+int main(void)
+{
+ foo(4);
+
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/20040313-1.c b/gcc/testsuite/gcc.c-torture/execute/20040313-1.c
new file mode 100644
index 00000000000..c05fe730f0c
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20040313-1.c
@@ -0,0 +1,17 @@
+/* PR middle-end/14470 */
+/* Origin: Lodewijk Voge <lvoge@cs.vu.nl> */
+
+extern void abort(void);
+
+int main()
+{
+ int t[1025] = { 1024 }, d;
+
+ d = 0;
+ d = t[d]++;
+ if (t[0] != 1025)
+ abort();
+ if (d != 1024)
+ abort();
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/20040331-1.c b/gcc/testsuite/gcc.c-torture/execute/20040331-1.c
new file mode 100644
index 00000000000..67b3e3a2e0c
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20040331-1.c
@@ -0,0 +1,12 @@
+/* PR c++/14755 */
+extern void abort (void);
+extern void exit (int);
+
+int
+main (void)
+{
+ struct { int count: 31; } s = { 0 };
+ while (s.count--)
+ abort ();
+ exit (0);
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/20040401-1.c b/gcc/testsuite/gcc.c-torture/execute/20040401-1.c
new file mode 100644
index 00000000000..d74afda4707
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20040401-1.c
@@ -0,0 +1,74 @@
+/* PR optimization/8634 */
+
+extern void abort (void);
+
+struct foo {
+ const char a, b, c, d, e, f, g, h, i, j;
+};
+
+struct bar {
+ const char a, b, c, d, e, f, g, h, i;
+ char j;
+};
+
+int test1 ()
+{
+ struct foo X = { a : 'A', c : 'C', e : 'E', g : 'G', i : 'I' };
+ char buffer[10];
+ __builtin_memcpy (buffer, &X, 10);
+ if (buffer[0] != 'A' || buffer[1] != '\0'
+ || buffer[2] != 'C' || buffer[3] != '\0'
+ || buffer[4] != 'E' || buffer[5] != '\0'
+ || buffer[6] != 'G' || buffer[7] != '\0'
+ || buffer[8] != 'I' || buffer[9] != '\0')
+ abort ();
+ return 0;
+}
+
+int test2 ()
+{
+ struct bar X = { a : 'A', c : 'C', e : 'E', g : 'G', i : 'I' };
+ char buffer[10];
+ __builtin_memcpy (buffer, &X, 10);
+ if (buffer[0] != 'A' || buffer[1] != '\0'
+ || buffer[2] != 'C' || buffer[3] != '\0'
+ || buffer[4] != 'E' || buffer[5] != '\0'
+ || buffer[6] != 'G' || buffer[7] != '\0'
+ || buffer[8] != 'I' || buffer[9] != '\0')
+ abort ();
+ return 0;
+}
+
+int test3 ()
+{
+ struct foo X = { .b = 'B', .d = 'D', .f = 'F', .h = 'H' , .j = 'J' };
+ char buffer[10];
+ __builtin_memcpy (buffer, &X, 10);
+ if (buffer[0] != '\0' || buffer[1] != 'B'
+ || buffer[2] != '\0' || buffer[3] != 'D'
+ || buffer[4] != '\0' || buffer[5] != 'F'
+ || buffer[6] != '\0' || buffer[7] != 'H'
+ || buffer[8] != '\0' || buffer[9] != 'J')
+ abort ();
+ return 0;
+}
+
+int test4 ()
+{
+ struct bar X = { .b = 'B', .d = 'D', .f = 'F', .h = 'H' , .j = 'J' };
+ char buffer[10];
+ __builtin_memcpy (buffer, &X, 10);
+ if (buffer[0] != '\0' || buffer[1] != 'B'
+ || buffer[2] != '\0' || buffer[3] != 'D'
+ || buffer[4] != '\0' || buffer[5] != 'F'
+ || buffer[6] != '\0' || buffer[7] != 'H'
+ || buffer[8] != '\0' || buffer[9] != 'J')
+ abort ();
+ return 0;
+}
+
+int main ()
+{
+ test1 (); test2 (); test3 (); test4 ();
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/990208-1.x b/gcc/testsuite/gcc.c-torture/execute/990208-1.x
deleted file mode 100644
index c1710099151..00000000000
--- a/gcc/testsuite/gcc.c-torture/execute/990208-1.x
+++ /dev/null
@@ -1,14 +0,0 @@
-# Doesn't work at -O3 because of ifcvt.c optimizations which
-# cause the 2 inlined labels to be at the same location.
-
-set torture_eval_before_execute {
-
- set compiler_conditional_xfail_data {
- "ifcvt transforms 2 inlined labels to the same address" \
- { "ia64-*-*" "arm*-*-*" "strongarm*-*-*" "xscale*-*-*" } \
- { "-O3" } \
- { "" }
- }
-}
-
-return 0
diff --git a/gcc/testsuite/gcc.c-torture/execute/string-opt-15.c b/gcc/testsuite/gcc.c-torture/execute/string-opt-15.c
index 2cf73da151c..e2395d4dfeb 100644
--- a/gcc/testsuite/gcc.c-torture/execute/string-opt-15.c
+++ b/gcc/testsuite/gcc.c-torture/execute/string-opt-15.c
@@ -39,7 +39,7 @@ main ()
should abort. */
__attribute__ ((noinline))
static int
-memcmp (const char *p1, const char *p2, size_t len)
+memcmp (const void *p1, const void *p2, size_t len)
{
abort ();
}
diff --git a/gcc/testsuite/gcc.c-torture/execute/va-arg-25.x b/gcc/testsuite/gcc.c-torture/execute/va-arg-25.x
index 1658fbcc8ca..ff301be355a 100644
--- a/gcc/testsuite/gcc.c-torture/execute/va-arg-25.x
+++ b/gcc/testsuite/gcc.c-torture/execute/va-arg-25.x
@@ -1,12 +1,24 @@
-# This doesn't work on sparc*-*-*.
+# This doesn't work on SPARC 64-bit.
-set torture_eval_before_compile {
- global compiler_conditional_xfail_data
- set compiler_conditional_xfail_data {
- "PR target/12916" \
- { "sparc*-*-*" } \
- { "*" } \
- { "" }
+if { [istarget "sparc64-*-*"] || [istarget "sparcv9-*-*"] } {
+ set torture_eval_before_compile {
+ global compiler_conditional_xfail_data
+ set compiler_conditional_xfail_data {
+ "PR target/12916" \
+ { "*-*-*" } \
+ { "*" } \
+ { "-m32" }
+ }
+ }
+} elseif { [istarget "sparc-*-*"] } {
+ set torture_eval_before_compile {
+ global compiler_conditional_xfail_data
+ set compiler_conditional_xfail_data {
+ "PR target/12916" \
+ { "*-*-*" } \
+ { "-m64" } \
+ { "" }
+ }
}
}
diff --git a/gcc/testsuite/gcc.c-torture/execute/wchar_t-1.c b/gcc/testsuite/gcc.c-torture/execute/wchar_t-1.c
index 3efdcf5a038..7e90cc08f5e 100644
--- a/gcc/testsuite/gcc.c-torture/execute/wchar_t-1.c
+++ b/gcc/testsuite/gcc.c-torture/execute/wchar_t-1.c
@@ -1,3 +1,4 @@
+/* { dg-options "-finput-charset=utf-8" } */
typedef __WCHAR_TYPE__ wchar_t;
wchar_t x[] = L"Ä";
wchar_t y = L'Ä';
diff --git a/gcc/testsuite/gcc.dg/20000724-1.c b/gcc/testsuite/gcc.dg/20000724-1.c
index 5027d6e9746..3c4f2c39409 100644
--- a/gcc/testsuite/gcc.dg/20000724-1.c
+++ b/gcc/testsuite/gcc.dg/20000724-1.c
@@ -22,7 +22,7 @@ int baz(void *x)
void do_check (struct s *) asm ("do_check") __attribute__((regparm(1)));
-void do_check(struct s *x)
+void __attribute__((regparm(1))) do_check(struct s *x)
{
if (x->a.a || x->b || x->c.a.a)
abort();
diff --git a/gcc/testsuite/gcc.dg/20001013-1.c b/gcc/testsuite/gcc.dg/20001013-1.c
index 163a262ebe8..87126fc4a81 100644
--- a/gcc/testsuite/gcc.dg/20001013-1.c
+++ b/gcc/testsuite/gcc.dg/20001013-1.c
@@ -1,7 +1,5 @@
-/* ??? It'd be nice to run this for sparc32 as well, if we could know
- for sure that we're on an ultrasparc, rather than an older cpu. */
-/* { dg-do run { target sparcv9-*-* sparc64-*-* } } */
-/* { dg-options "-O2 -m32 -mcpu=ultrasparc -mvis" } */
+/* { dg-do run { target sparc*-*-* } } */
+/* { dg-options "-O2 -mcpu=ultrasparc -mvis" } */
int l;
diff --git a/gcc/testsuite/gcc.dg/20001101-1.c b/gcc/testsuite/gcc.dg/20001101-1.c
index 6cafff0d423..723901c4090 100644
--- a/gcc/testsuite/gcc.dg/20001101-1.c
+++ b/gcc/testsuite/gcc.dg/20001101-1.c
@@ -1,7 +1,5 @@
-/* ??? It'd be nice to run this for sparc32 as well, if we could know
- for sure that we're on an ultrasparc, rather than an older cpu. */
-/* { dg-do run { target sparcv9-*-* sparc64-*-* } } */
-/* { dg-options "-O2 -m32 -mcpu=ultrasparc -mvis" } */
+/* { dg-do run { target sparc*-*-* } } */
+/* { dg-options "-O2 -mcpu=ultrasparc -mvis" } */
int foo(double a, int b, int c, double *d, int h)
{
diff --git a/gcc/testsuite/gcc.dg/20001102-1.c b/gcc/testsuite/gcc.dg/20001102-1.c
index 2d9e45b0de3..d062353c680 100644
--- a/gcc/testsuite/gcc.dg/20001102-1.c
+++ b/gcc/testsuite/gcc.dg/20001102-1.c
@@ -1,7 +1,5 @@
-/* ??? It'd be nice to run this for sparc32 as well, if we could know
- for sure that we're on an ultrasparc, rather than an older cpu. */
-/* { dg-do run { target sparcv9-*-* sparc64-*-* } } */
-/* { dg-options "-O2 -m32 -mcpu=ultrasparc -mvis" } */
+/* { dg-do run { target sparc*-*-* } } */
+/* { dg-options "-O2 -mcpu=ultrasparc -mvis" } */
int foo(double a, int b, int c, double *d, int h)
{
diff --git a/gcc/testsuite/gcc.dg/20021014-1.c b/gcc/testsuite/gcc.dg/20021014-1.c
index 1e2b76c7614..67f88ae2f6b 100644
--- a/gcc/testsuite/gcc.dg/20021014-1.c
+++ b/gcc/testsuite/gcc.dg/20021014-1.c
@@ -1,17 +1,9 @@
/* { dg-do run } */
-/* { dg-require-profiling "" } */
+/* { dg-require-profiling "-p" } */
/* { dg-options "-O2 -p" } */
/* { dg-options "-O2 -p -static" { target hppa*-*-hpux* } } */
/* { dg-error "profiler" "No profiler support" { target xstormy16-*-* } 0 } */
/* { dg-error "" "consider using `-pg' instead of `-p' with gprof(1)" { target *-*-freebsd* } 0 } */
-/* Support for -p on solaris2 relies on mcrt1.o which comes with the
- vendor compiler. We cannot reiably predict the directory where the
- vendor compiler (and thus mcrt1.o) is installed so we can't
- necessarily find mcrt1.o even if we have it. */
-/* { dg-error "mcrt1.o" "Optional vendor profiler support missing" { target *-*-solaris2* } 0 } */
-/* Support for -p on irix relies on libprof1.a which doesn't appear to
- exist on any irix6 system currently posting testsuite results. */
-/* { dg-error "libprof1.a" "Profiler support missing" { target mips*-*-irix* } 0 } */
extern void abort (void);
extern void exit (int);
diff --git a/gcc/testsuite/gcc.dg/20030121-1.c b/gcc/testsuite/gcc.dg/20030121-1.c
new file mode 100644
index 00000000000..212d875cbd2
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20030121-1.c
@@ -0,0 +1,8 @@
+/* { dg-do compile { target powerpc*-*-darwin* } } */
+/* { dg-options "-O2 -force_cpusubtype_ALL -mpowerpc64" } */
+
+long long (*y)(int t);
+long long get_alias_set (int t)
+{
+ return y(t);
+}
diff --git a/gcc/testsuite/gcc.dg/20030123-1.c b/gcc/testsuite/gcc.dg/20030123-1.c
index 1f5858808c4..e4e49ab0916 100644
--- a/gcc/testsuite/gcc.dg/20030123-1.c
+++ b/gcc/testsuite/gcc.dg/20030123-1.c
@@ -1,7 +1,7 @@
/* This used to ICE due to a reload bug on s390*. */
/* { dg-do compile { target s390*-*-* } } */
-/* { dg-options "-O2" } */
+/* { dg-options "-O2 -fno-omit-frame-pointer" } */
void func (char *p);
@@ -10,7 +10,7 @@ void test (void)
char *p = alloca (4096);
long idx;
- asm ("" : "=r" (idx) : : "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12");
+ asm ("" : "=r" (idx) : : "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "12");
func (p + idx + 1);
}
diff --git a/gcc/testsuite/gcc.dg/20040123-1.c b/gcc/testsuite/gcc.dg/20040123-1.c
new file mode 100644
index 00000000000..2a73382dd94
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20040123-1.c
@@ -0,0 +1,12 @@
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+/* { dg-final { scan-assembler "abort" } } */
+
+extern void abort (void);
+extern char a[];
+
+void foo (void)
+{
+ if ((void *) a == (void *) 0x4000UL)
+ abort ();
+}
diff --git a/gcc/testsuite/gcc.dg/20040127-1.c b/gcc/testsuite/gcc.dg/20040127-1.c
new file mode 100644
index 00000000000..0ea6062a5a9
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20040127-1.c
@@ -0,0 +1,24 @@
+/* PR target/10904 */
+/* Origin: <kminola@eng.umd.edu> */
+
+/* Verify that the register allocator correctly aligns
+ floating-point registers on SPARC64. */
+
+/* { dg-do assemble } */
+/* { dg-options "-O2" } */
+
+extern int foo1();
+extern int foo2();
+
+void foo(int n, int b)
+{
+ int i, a;
+
+ foo1();
+
+ a = (long)(b * ((double) 0.1));
+
+ for (i=0; i < n; i++) {
+ foo2(a);
+ }
+}
diff --git a/gcc/testsuite/gcc.dg/20040127-2.c b/gcc/testsuite/gcc.dg/20040127-2.c
new file mode 100644
index 00000000000..6e56dd8fc10
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20040127-2.c
@@ -0,0 +1,32 @@
+/* PR target/13058 */
+/* Origin: Lloyd Parkes <lloyd@must-have-coffee.gen.nz> */
+/* Reduced testcase by Falk Hueffner <falk@debian.org> */
+
+/* Verify that the register allocator correctly aligns
+ floating-point registers on SPARC64. */
+
+/* { dg-do compile } */
+/* { dg-options "-O" } */
+
+typedef struct { int ThumbnailSize; } ImageInfo_t;
+
+double ConvertAnyFormat(void)
+{
+ return 0;
+}
+
+void ProcessExifDir(ImageInfo_t *ImageInfoP, int NumDirEntries)
+{
+ unsigned int ThumbnailSize;
+
+ for (; NumDirEntries;) {
+ Get16u();
+ switch (NumDirEntries) {
+ case 0x0201:
+ case 0x0202:
+ ThumbnailSize = ConvertAnyFormat();
+ }
+ }
+
+ ImageInfoP->ThumbnailSize = ThumbnailSize;
+}
diff --git a/gcc/testsuite/gcc.dg/20040217-1.c b/gcc/testsuite/gcc.dg/20040217-1.c
new file mode 100644
index 00000000000..7ca7388fe7c
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20040217-1.c
@@ -0,0 +1,19 @@
+/* This used to ICE on s390x due to a bug in simplify_if_then_else. */
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+
+extern void use (int);
+void test (void)
+{
+ union
+ {
+ unsigned long ul;
+ signed char sc;
+ } u;
+
+ u.sc = 8;
+ u.sc &= 25;
+
+ use (u.sc);
+}
+
diff --git a/gcc/testsuite/gcc.dg/20040302-1.c b/gcc/testsuite/gcc.dg/20040302-1.c
new file mode 100644
index 00000000000..f6ada1f22c2
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20040302-1.c
@@ -0,0 +1,18 @@
+/* PR optimization/12419 */
+/* Ensure external_const_array[0] is read just once. */
+/* { dg-do compile { target i?86-*-linux* x86_64-*-linux* } } */
+/* { dg-options "-O2" } */
+/* { dg-final { scan-assembler "external_const_array" } } */
+/* { dg-final { scan-assembler-not "external_const_array.*add\[^\\n\]*external_const_array" } } */
+
+extern const int external_const_array [];
+extern void foo (void);
+
+int
+bar (void)
+{
+ int n = external_const_array[0];
+ foo ();
+ n += external_const_array[0];
+ return n;
+}
diff --git a/gcc/testsuite/gcc.dg/20040305-1.c b/gcc/testsuite/gcc.dg/20040305-1.c
new file mode 100644
index 00000000000..62b920c5e1b
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20040305-1.c
@@ -0,0 +1,50 @@
+
+/* The testcase failed due to corrupted alias information.
+ During the crossjump analyzing step the mem alias info of the
+ st instructions are merged and get copied during basic block
+ reordering which leads to an insn with wrong alias info.
+ The scheduler afterwards exchanges the mvc and st instructions
+ not recognizing the anti dependence. */
+/* { dg-do run { target s390-*-* } } */
+/* { dg-options "-O3 -mtune=z990 -fno-inline" } */
+
+int f;
+int g;
+int h;
+
+int* x = &f;
+int* p1 = &g;
+int* p2 = &h;
+
+int
+foo(void)
+{
+
+ if (*x == 0)
+ {
+ x = p1; /* mvc - memory to memory */
+ p1 = (int*)0; /* st - register to memory */
+ return 1;
+ }
+ if (*x == 5)
+ {
+ f = 1;
+ g = 2;
+
+ p2 = (int*)0; /* st */
+ return 1;
+ }
+}
+
+int
+main (int argc, char** argv)
+{
+ foo ();
+
+ /* If the scheduler has exchanged the mvc and st instructions,
+ x is 0. The expected result is &g. */
+ if (x == &g)
+ exit (0);
+ else
+ abort ();
+}
diff --git a/gcc/testsuite/gcc.dg/20040306-1.c b/gcc/testsuite/gcc.dg/20040306-1.c
new file mode 100644
index 00000000000..903d20ac256
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20040306-1.c
@@ -0,0 +1,22 @@
+/* This used to ICE due to a reload bug on s390*. */
+
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+
+
+typedef struct test
+{
+ unsigned short pad;
+ unsigned char type[6];
+} t;
+
+extern void set (t *a, t *b, t *c, t *d, t *e, t *f, t *g, t *h,
+ t *i, t *j, t *k, t *l, t *m, t *n, t *o, t *p);
+extern void use (t a, t b, t c, t d, t e, t f, t g, t h,
+ t i, t j, t k, t l, t m, t n, t o, t p);
+void test (void)
+{
+ t a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p;
+ set (&a, &b, &c, &d, &e, &f, &g, &h, &i, &j, &k, &l, &m, &n, &o, &p);
+ use (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p);
+}
diff --git a/gcc/testsuite/gcc.dg/20040311-2.c b/gcc/testsuite/gcc.dg/20040311-2.c
new file mode 100644
index 00000000000..0d0d5da3259
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20040311-2.c
@@ -0,0 +1,36 @@
+/* PR target/14533 */
+/* { dg-do compile } */
+/* { dg-options "-O2 -fpic" } */
+
+void bar (char *, int);
+
+extern char b[];
+extern int d, e;
+struct S
+{
+ struct S *m;
+ int n;
+} **g;
+
+void
+foo (int x, char *y)
+{
+ struct S *h;
+ int k = 1, l;
+
+again:
+ for (h = *g; h != (struct S *) g; h = h->m)
+ {
+ if (k == 0 && h->n & 0x100000);
+ l = y - b;
+ if (e)
+ bar (b, l);
+ if (d)
+ bar (b, l);
+ }
+ if (k)
+ {
+ k = 0;
+ goto again;
+ }
+}
diff --git a/gcc/testsuite/gcc.dg/20040322-1.c b/gcc/testsuite/gcc.dg/20040322-1.c
new file mode 100644
index 00000000000..af5e0b4820c
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20040322-1.c
@@ -0,0 +1,4 @@
+/* PR c/14069 */
+/* { dg-do compile } */
+struct S { int a; char b[]; char *c; }; /* { dg-error "error" "flexible array member not" } */
+struct S s = { .b = "foo", .c = .b }; /* { dg-error "error" "parse error before" } */
diff --git a/gcc/testsuite/gcc.dg/20040331-1.c b/gcc/testsuite/gcc.dg/20040331-1.c
new file mode 100644
index 00000000000..4cef3d3297a
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20040331-1.c
@@ -0,0 +1,14 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fwrapv" } */
+
+extern void abort (void);
+extern void exit (int);
+
+int
+main (void)
+{
+ struct { int count: 2; } s = { -2 };
+ while (s.count-- != -2)
+ abort ();
+ exit (0);
+}
diff --git a/gcc/testsuite/gcc.dg/991214-1.c b/gcc/testsuite/gcc.dg/991214-1.c
index c8e3a04049d..68b6b927916 100644
--- a/gcc/testsuite/gcc.dg/991214-1.c
+++ b/gcc/testsuite/gcc.dg/991214-1.c
@@ -4,7 +4,7 @@
/* Test against a problem with the combiner substituting explicit hard reg
references when it shouldn't. */
void foo (int, int) __attribute__ ((regparm (3)));
-void foo (int x, int y)
+void __attribute__((regparm(3))) foo (int x, int y)
{
__asm__ __volatile__("" : : "d" (x), "r" (y));
}
diff --git a/gcc/testsuite/gcc.dg/Wshadow-2.c b/gcc/testsuite/gcc.dg/Wshadow-2.c
new file mode 100644
index 00000000000..f0ece5b2e81
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/Wshadow-2.c
@@ -0,0 +1,8 @@
+/* PR 13129 */
+/* { dg-options "-Wshadow" } */
+
+extern struct foo bar;
+void dummy()
+{
+ extern struct foo bar;
+}
diff --git a/gcc/testsuite/gcc.dg/always_inline.c b/gcc/testsuite/gcc.dg/always_inline.c
index 9480470a95a..2177f642f60 100644
--- a/gcc/testsuite/gcc.dg/always_inline.c
+++ b/gcc/testsuite/gcc.dg/always_inline.c
@@ -1,18 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-Winline -O2" } */
#include <stdarg.h>
-inline __attribute__ ((always_inline)) void t(void); /* { dg-error "body not available" "" } */
-void
-q(void)
-{
- t(); /* { dg-error "called from here" "" } */
-}
-inline __attribute__ ((always_inline)) void
-q2(void)
-{ /* { dg-error "recursive" "" } */
- q2(); /* { dg-error "called from here" "" } */
- q2(); /* { dg-error "called from here" "" } */
-}
inline __attribute__ ((always_inline)) void
e(int t, ...)
{ /* { dg-error "variable argument" "" } */
diff --git a/gcc/testsuite/gcc.dg/always_inline2.c b/gcc/testsuite/gcc.dg/always_inline2.c
new file mode 100644
index 00000000000..fa6528d1fac
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/always_inline2.c
@@ -0,0 +1,8 @@
+/* { dg-do compile } */
+/* { dg-options "-Winline -O2" } */
+inline __attribute__ ((always_inline)) void t(void); /* { dg-error "body not available" "" } */
+void
+q(void)
+{
+ t(); /* { dg-error "called from here" "" } */
+}
diff --git a/gcc/testsuite/gcc.dg/always_inline3.c b/gcc/testsuite/gcc.dg/always_inline3.c
new file mode 100644
index 00000000000..b183770adc0
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/always_inline3.c
@@ -0,0 +1,8 @@
+/* { dg-do compile } */
+/* { dg-options "-Winline -O2" } */
+inline __attribute__ ((always_inline)) void
+q2(void)
+{ /* { dg-error "recursive" "" } */
+ q2(); /* { dg-error "called from here" "" } */
+ q2(); /* { dg-error "called from here" "" } */
+}
diff --git a/gcc/testsuite/gcc.dg/arm-mmx-1.c b/gcc/testsuite/gcc.dg/arm-mmx-1.c
new file mode 100644
index 00000000000..aaceb33f3bb
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/arm-mmx-1.c
@@ -0,0 +1,26 @@
+/* Verify that if IP is saved to ensure stack alignment, we don't load
+ it into sp. */
+/* { dg-do compile { target arm*-*-* strongarm*-*-* xscale*-*-*} } */
+/* { dg-options "-O -mno-apcs-frame -mcpu=iwmmxt" } */
+/* { dg-final { global compiler_flags; if ![string match "*-mthumb *" $compiler_flags] { scan-assembler "ldmfd\[ ]sp!.*ip,\[ ]*pc" } } } */
+
+/* This function uses all the call-saved registers, namely r4, r5, r6,
+ r7, r8, r9, sl, fp. Since we also save pc, that leaves an odd
+ number of registers, and the compiler will push ip to align the
+ stack. Make sure that we restore ip into ip, not into sp as is
+ done when using a frame pointer. The -mno-apcs-frame option
+ permits the frame pointer to be used as an ordinary register. */
+int
+foo(int *a, int *b, int *c, int *d, int *tot)
+{
+ int i, j, k, l, m, n, o;
+
+ *tot = 0;
+ for (i = *a; i < *b; i += *c)
+ for (j = *a; j < *b; j += *d)
+ for (k = *a; k < *c; k += *d)
+ for (l = *b; k < *c; k += *d)
+ for (m = *d; k < *c; k += *b)
+ *tot += i + j + k + l + m;
+ return *tot;
+}
diff --git a/gcc/testsuite/gcc.dg/builtins-1.c b/gcc/testsuite/gcc.dg/builtins-1.c
index 41bd8d5788c..3e83d9e9ebd 100644
--- a/gcc/testsuite/gcc.dg/builtins-1.c
+++ b/gcc/testsuite/gcc.dg/builtins-1.c
@@ -151,8 +151,6 @@ FPTEST1 (logb)
FPTEST1RET (lrint, long)
FPTEST1RET (lround, long)
FPTEST2FPP2 (modf)
-FPTEST1ARG (nan, char *)
-FPTEST1ARG (nans, char *)
FPTEST1 (nearbyint)
FPTEST2 (nextafter)
FPTEST2 (nexttoward)
diff --git a/gcc/testsuite/gcc.dg/builtins-30.c b/gcc/testsuite/gcc.dg/builtins-30.c
new file mode 100644
index 00000000000..9ed0be53c40
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/builtins-30.c
@@ -0,0 +1,27 @@
+/* { dg-do compile } */
+/* { dg-options "-Wall -Wshadow" } */
+
+extern double strtod (const char *, char **);
+#define UNUSED __attribute__ ((unused))
+
+/* A built-in function may be overridden by an old-style definition
+ specifying too few arguments... */
+double cos ()
+{ /* { dg-warning "shadowing built-in" } */
+ return strtod ("nan", 0);
+}
+
+/* the right number, but the wrong type, arguments... */
+double sin (foo)
+ int foo UNUSED; /* { dg-warning "shadowing built-in" } */
+{
+ return strtod ("nan", 0);
+}
+
+/* or too many arguments. */
+long double cosl (foo, bar)
+ long double foo UNUSED; /* { dg-warning "shadowing built-in" } */
+ int bar UNUSED;
+{
+ return strtod ("nan", 0);
+}
diff --git a/gcc/testsuite/gcc.dg/builtins-35.c b/gcc/testsuite/gcc.dg/builtins-35.c
new file mode 100644
index 00000000000..f898707e24a
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/builtins-35.c
@@ -0,0 +1,6 @@
+/* Test that nan functions are not built-in in C90 mode. Bug 14635. */
+/* Origin: Joseph Myers <jsm@polyomino.org.uk> */
+/* { dg-do compile } */
+/* { dg-options "-std=c89" } */
+
+int nan, nanf, nanl, nans, nansf, nansl;
diff --git a/gcc/testsuite/gcc.dg/builtins-config.h b/gcc/testsuite/gcc.dg/builtins-config.h
index 11f7c11ee4f..af22c27b291 100644
--- a/gcc/testsuite/gcc.dg/builtins-config.h
+++ b/gcc/testsuite/gcc.dg/builtins-config.h
@@ -9,8 +9,12 @@
indicating whether or not TARGET_C99_FUNCTIONS is set, but it does
not presently do that.) */
-#if defined(sun)
+#if defined(__hppa) && defined(__hpux)
+/* PA HP-UX doesn't have the entire C99 runtime. */
+#elif defined(__sun)
/* Solaris doesn't have the entire C99 runtime. */
+#elif defined(__sgi)
+/* Irix6 doesn't have the entire C99 runtime. */
#else
/* Newlib has the "f" variants of the math functions, but not the "l"
variants. TARGET_C99_FUNCTIONS is only defined if all C99
diff --git a/gcc/testsuite/gcc.dg/c90-dupqual-1.c b/gcc/testsuite/gcc.dg/c90-dupqual-1.c
new file mode 100644
index 00000000000..14838c7367f
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/c90-dupqual-1.c
@@ -0,0 +1,12 @@
+/* { dg-do compile } */
+/* { dg-options "-std=iso9899:1990 -pedantic-errors" } */
+
+typedef const int CI;
+const const int c1; /* { dg-error "duplicate" } */
+const CI c2; /* { dg-error "duplicate" } */
+const CI *c3; /* { dg-error "duplicate" } */
+
+typedef volatile int VI;
+volatile volatile int v1; /* { dg-error "duplicate" } */
+volatile VI v2; /* { dg-error "duplicate" } */
+volatile VI *v3; /* { dg-error "duplicate" } */
diff --git a/gcc/testsuite/gcc.dg/c90-init-1.c b/gcc/testsuite/gcc.dg/c90-init-1.c
index 1ea0bdb4006..68308d3e266 100644
--- a/gcc/testsuite/gcc.dg/c90-init-1.c
+++ b/gcc/testsuite/gcc.dg/c90-init-1.c
@@ -7,10 +7,10 @@ struct A {
int B;
short C[2];
};
-int a[10] = { 10, [4] = 15 }; /* { dg-error "ISO C89 forbids specifying subobject to initialize" } */
-struct A b = { .B = 2 }; /* { dg-error "ISO C89 forbids specifying subobject to initialize" } */
-struct A c[] = { [3].C[1] = 1 }; /* { dg-error "ISO C89 forbids specifying subobject to initialize" } */
-struct A d[] = { [4 ... 6].C[0 ... 1] = 2 }; /* { dg-error "(forbids specifying range of elements to initialize)|(ISO C89 forbids specifying subobject to initialize)" } */
+int a[10] = { 10, [4] = 15 }; /* { dg-error "ISO (C89|C90) forbids specifying subobject to initialize" } */
+struct A b = { .B = 2 }; /* { dg-error "ISO (C89|C90) forbids specifying subobject to initialize" } */
+struct A c[] = { [3].C[1] = 1 }; /* { dg-error "ISO (C89|C90) forbids specifying subobject to initialize" } */
+struct A d[] = { [4 ... 6].C[0 ... 1] = 2 }; /* { dg-error "(forbids specifying range of elements to initialize)|(ISO (C89|C90) forbids specifying subobject to initialize)" } */
int e[] = { [2] 2 }; /* { dg-error "use of designated initializer without" } */
struct A f = { C: { 0, 1 } }; /* { dg-error "use of designated initializer with " } */
int g;
diff --git a/gcc/testsuite/gcc.dg/c99-dupqual-1.c b/gcc/testsuite/gcc.dg/c99-dupqual-1.c
new file mode 100644
index 00000000000..2e6d7e1bc5a
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/c99-dupqual-1.c
@@ -0,0 +1,12 @@
+/* { dg-do compile } */
+/* { dg-options "-std=iso9899:1999 -pedantic-errors" } */
+
+typedef const int CI;
+const const int c1; /* { dg-bogus "duplicate" } */
+const CI c2; /* { dg-bogus "duplicate" } */
+const CI *c3; /* { dg-bogus "duplicate" } */
+
+typedef volatile int VI;
+volatile volatile int v1; /* { dg-bogus "duplicate" } */
+volatile VI v2; /* { dg-bogus "duplicate" } */
+volatile VI *v3; /* { dg-bogus "duplicate" } */
diff --git a/gcc/testsuite/gcc.dg/cast-function-1.c b/gcc/testsuite/gcc.dg/cast-function-1.c
index 44cb1839623..8ed7d5da41c 100644
--- a/gcc/testsuite/gcc.dg/cast-function-1.c
+++ b/gcc/testsuite/gcc.dg/cast-function-1.c
@@ -22,19 +22,19 @@ void bar(void)
int i;
str_t s;
- d = ((double (*) (int)) foo1) (i); /* { dg-warning "non-compatible" } */
- i = ((int (*) (double)) foo1) (d); /* { dg-warning "non-compatible" } */
- s = ((str_t (*) (int)) foo1) (i); /* { dg-warning "non-compatible" } */
- ((void (*) (int)) foo1) (d); /* { dg-warning "non-compatible" } */
- i = ((int (*) (int)) foo1) (i); /* { dg-bogus "non-compatible" } */
- (void) foo1 (i); /* { dg-bogus "non-compatible" } */
-
- d = ((double (*) (int)) foo2) (i); /* { dg-warning "non-compatible" } */
- i = ((int (*) (double)) foo2) (d); /* { dg-bogus "non-compatible" } */
- s = ((str_t (*) (int)) foo2) (i); /* { dg-warning "non-compatible" } */
- ((void (*) (int)) foo2) (d); /* { dg-warning "non-compatible" } */
- i = ((int (*) (int)) foo2) (i); /* { dg-bogus "non-compatible" } */
- (void) foo2 (i); /* { dg-bogus "non-compatible" } */
+ d = ((double (*) (int)) foo1) (i); /* { dg-warning "non-compatible|abort" } */
+ i = ((int (*) (double)) foo1) (d); /* { dg-warning "non-compatible|abort" } */
+ s = ((str_t (*) (int)) foo1) (i); /* { dg-warning "non-compatible|abort" } */
+ ((void (*) (int)) foo1) (d); /* { dg-warning "non-compatible|abort" } */
+ i = ((int (*) (int)) foo1) (i); /* { dg-bogus "non-compatible|abort" } */
+ (void) foo1 (i); /* { dg-bogus "non-compatible|abort" } */
+
+ d = ((double (*) (int)) foo2) (i); /* { dg-warning "non-compatible|abort" } */
+ i = ((int (*) (double)) foo2) (d); /* { dg-bogus "non-compatible|abort" } */
+ s = ((str_t (*) (int)) foo2) (i); /* { dg-warning "non-compatible|abort" } */
+ ((void (*) (int)) foo2) (d); /* { dg-warning "non-compatible|abort" } */
+ i = ((int (*) (int)) foo2) (i); /* { dg-bogus "non-compatible|abort" } */
+ (void) foo2 (i); /* { dg-bogus "non-compatible|abort" } */
}
int foo1(int arg)
diff --git a/gcc/testsuite/gcc.dg/cleanup-5.c b/gcc/testsuite/gcc.dg/cleanup-5.c
index f5306db4752..4b8468aa733 100644
--- a/gcc/testsuite/gcc.dg/cleanup-5.c
+++ b/gcc/testsuite/gcc.dg/cleanup-5.c
@@ -1,4 +1,4 @@
-/* { dg-do run } */
+/* { dg-do run { target i?86-*-linux* x86_64-*-linux* ia64-*-linux* alpha*-*-linux* powerpc*-*-linux* s390*-*-linux* sparc*-*-linux* mips*-*-linux* } } */
/* { dg-options "-fexceptions" } */
/* Verify that cleanups work with exception handling. */
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-5_main.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_main.c
index 32eaafbe23b..d6f9eff2563 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-5_main.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_main.c
@@ -2,13 +2,13 @@
variable-length argument lists. All struct members are float
scalars. */
-extern void struct_by_value_5_x (void);
+extern void struct_by_value_5a_x (void);
extern void exit (int);
int fails;
int
main ()
{
- struct_by_value_5_x ();
+ struct_by_value_5a_x ();
exit (0);
}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_x.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_x.c
new file mode 100644
index 00000000000..90738a7a7e8
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_x.c
@@ -0,0 +1,43 @@
+#include "compat-common.h"
+
+#include "fp-struct-defs.h"
+#include "fp-struct-check.h"
+#include "fp-struct-test-by-value-x.h"
+
+DEFS(f, float)
+CHECKS(f, float)
+
+TEST(Sf1, float)
+TEST(Sf2, float)
+TEST(Sf3, float)
+TEST(Sf4, float)
+TEST(Sf5, float)
+TEST(Sf6, float)
+TEST(Sf7, float)
+TEST(Sf8, float)
+
+#undef T
+
+void
+struct_by_value_5a_x ()
+{
+DEBUG_INIT
+
+#define T(TYPE, MTYPE) testit##TYPE ();
+
+T(Sf1, float)
+T(Sf2, float)
+T(Sf3, float)
+T(Sf4, float)
+T(Sf5, float)
+T(Sf6, float)
+T(Sf7, float)
+T(Sf8, float)
+
+DEBUG_FINI
+
+if (fails != 0)
+ abort ();
+
+#undef T
+}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_y.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_y.c
new file mode 100644
index 00000000000..6e86b076e81
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_y.c
@@ -0,0 +1,26 @@
+#include <stdarg.h>
+
+#include "compat-common.h"
+
+/* Turn off checking for variable arguments with -DSKIPVA. */
+#ifdef SKIPVA
+const int test_va = 0;
+#else
+const int test_va = 1;
+#endif
+
+#include "fp-struct-defs.h"
+#include "fp-struct-init.h"
+#include "fp-struct-test-by-value-y.h"
+
+DEFS(f,float)
+INITS(f, float)
+
+TEST(Sf1, float)
+TEST(Sf2, float)
+TEST(Sf3, float)
+TEST(Sf4, float)
+TEST(Sf5, float)
+TEST(Sf6, float)
+TEST(Sf7, float)
+TEST(Sf8, float)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_main.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_main.c
new file mode 100644
index 00000000000..dcb5f27ed09
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_main.c
@@ -0,0 +1,14 @@
+/* Test structures passed by value, including to a function with a
+ variable-length argument lists. All struct members are float
+ scalars. */
+
+extern void struct_by_value_5b_x (void);
+extern void exit (int);
+int fails;
+
+int
+main ()
+{
+ struct_by_value_5b_x ();
+ exit (0);
+}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-5_x.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_x.c
index e0cbb5782c2..3c371558728 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-5_x.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_x.c
@@ -7,14 +7,6 @@
DEFS(f, float)
CHECKS(f, float)
-TEST(Sf1, float)
-TEST(Sf2, float)
-TEST(Sf3, float)
-TEST(Sf4, float)
-TEST(Sf5, float)
-TEST(Sf6, float)
-TEST(Sf7, float)
-TEST(Sf8, float)
TEST(Sf9, float)
TEST(Sf10, float)
TEST(Sf11, float)
@@ -27,20 +19,12 @@ TEST(Sf16, float)
#undef T
void
-struct_by_value_5_x ()
+struct_by_value_5b_x ()
{
DEBUG_INIT
#define T(TYPE, MTYPE) testit##TYPE ();
-T(Sf1, float)
-T(Sf2, float)
-T(Sf3, float)
-T(Sf4, float)
-T(Sf5, float)
-T(Sf6, float)
-T(Sf7, float)
-T(Sf8, float)
T(Sf9, float)
T(Sf10, float)
T(Sf11, float)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-5_y.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_y.c
index 9290b8fa92e..87aae622948 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-5_y.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_y.c
@@ -16,14 +16,6 @@ const int test_va = 1;
DEFS(f,float)
INITS(f, float)
-TEST(Sf1, float)
-TEST(Sf2, float)
-TEST(Sf3, float)
-TEST(Sf4, float)
-TEST(Sf5, float)
-TEST(Sf6, float)
-TEST(Sf7, float)
-TEST(Sf8, float)
TEST(Sf9, float)
TEST(Sf10, float)
TEST(Sf11, float)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-6_main.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_main.c
index 39dc31f4a6a..609c1d67308 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-6_main.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_main.c
@@ -2,13 +2,13 @@
variable-length argument lists. All struct members are double
scalars. */
-extern void struct_by_value_6_x (void);
+extern void struct_by_value_6a_x (void);
extern void exit (int);
int fails;
int
main ()
{
- struct_by_value_6_x ();
+ struct_by_value_6a_x ();
exit (0);
}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_x.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_x.c
new file mode 100644
index 00000000000..e6852d9c9b7
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_x.c
@@ -0,0 +1,43 @@
+#include "compat-common.h"
+
+#include "fp-struct-defs.h"
+#include "fp-struct-check.h"
+#include "fp-struct-test-by-value-x.h"
+
+DEFS(d, double)
+CHECKS(d, double)
+
+TEST(Sd1, double)
+TEST(Sd2, double)
+TEST(Sd3, double)
+TEST(Sd4, double)
+TEST(Sd5, double)
+TEST(Sd6, double)
+TEST(Sd7, double)
+TEST(Sd8, double)
+
+#undef T
+
+void
+struct_by_value_6a_x ()
+{
+DEBUG_INIT
+
+#define T(TYPE, MTYPE) testit##TYPE ();
+
+T(Sd1, double)
+T(Sd2, double)
+T(Sd3, double)
+T(Sd4, double)
+T(Sd5, double)
+T(Sd6, double)
+T(Sd7, double)
+T(Sd8, double)
+
+DEBUG_FINI
+
+if (fails != 0)
+ abort ();
+
+#undef T
+}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_y.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_y.c
new file mode 100644
index 00000000000..6c79bf73201
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_y.c
@@ -0,0 +1,26 @@
+#include <stdarg.h>
+
+#include "compat-common.h"
+
+/* Turn off checking for variable arguments with -DSKIPVA. */
+#ifdef SKIPVA
+const int test_va = 0;
+#else
+const int test_va = 1;
+#endif
+
+#include "fp-struct-defs.h"
+#include "fp-struct-init.h"
+#include "fp-struct-test-by-value-y.h"
+
+DEFS(d, double)
+INITS(d, double)
+
+TEST(Sd1, double)
+TEST(Sd2, double)
+TEST(Sd3, double)
+TEST(Sd4, double)
+TEST(Sd5, double)
+TEST(Sd6, double)
+TEST(Sd7, double)
+TEST(Sd8, double)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_main.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_main.c
new file mode 100644
index 00000000000..ff17221718f
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_main.c
@@ -0,0 +1,14 @@
+/* Test structures passed by value, including to a function with a
+ variable-length argument lists. All struct members are double
+ scalars. */
+
+extern void struct_by_value_6b_x (void);
+extern void exit (int);
+int fails;
+
+int
+main ()
+{
+ struct_by_value_6b_x ();
+ exit (0);
+}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-6_x.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_x.c
index 21989194cf7..5b285c9c5b6 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-6_x.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_x.c
@@ -7,14 +7,6 @@
DEFS(d, double)
CHECKS(d, double)
-TEST(Sd1, double)
-TEST(Sd2, double)
-TEST(Sd3, double)
-TEST(Sd4, double)
-TEST(Sd5, double)
-TEST(Sd6, double)
-TEST(Sd7, double)
-TEST(Sd8, double)
TEST(Sd9, double)
TEST(Sd10, double)
TEST(Sd11, double)
@@ -27,20 +19,12 @@ TEST(Sd16, double)
#undef T
void
-struct_by_value_6_x ()
+struct_by_value_6b_x ()
{
DEBUG_INIT
#define T(TYPE, MTYPE) testit##TYPE ();
-T(Sd1, double)
-T(Sd2, double)
-T(Sd3, double)
-T(Sd4, double)
-T(Sd5, double)
-T(Sd6, double)
-T(Sd7, double)
-T(Sd8, double)
T(Sd9, double)
T(Sd10, double)
T(Sd11, double)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-6_y.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_y.c
index b5bc10025a0..9078976f41c 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-6_y.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_y.c
@@ -16,14 +16,6 @@ const int test_va = 1;
DEFS(d, double)
INITS(d, double)
-TEST(Sd1, double)
-TEST(Sd2, double)
-TEST(Sd3, double)
-TEST(Sd4, double)
-TEST(Sd5, double)
-TEST(Sd6, double)
-TEST(Sd7, double)
-TEST(Sd8, double)
TEST(Sd9, double)
TEST(Sd10, double)
TEST(Sd11, double)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-7_main.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_main.c
index 98caf4286a4..8379dc563c5 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-7_main.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_main.c
@@ -2,13 +2,13 @@
variable-length argument lists. All struct members are long double
scalars. */
-extern void struct_by_value_7_x (void);
+extern void struct_by_value_7a_x (void);
extern void exit (int);
int fails;
int
main ()
{
- struct_by_value_7_x ();
+ struct_by_value_7a_x ();
exit (0);
}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_x.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_x.c
new file mode 100644
index 00000000000..9818c3c2251
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_x.c
@@ -0,0 +1,43 @@
+#include "compat-common.h"
+
+#include "fp-struct-defs.h"
+#include "fp-struct-check.h"
+#include "fp-struct-test-by-value-x.h"
+
+DEFS(ld, long double)
+CHECKS(ld, long double)
+
+TEST(Sld1, long double)
+TEST(Sld2, long double)
+TEST(Sld3, long double)
+TEST(Sld4, long double)
+TEST(Sld5, long double)
+TEST(Sld6, long double)
+TEST(Sld7, long double)
+TEST(Sld8, long double)
+
+#undef T
+
+void
+struct_by_value_7a_x ()
+{
+DEBUG_INIT
+
+#define T(TYPE, MTYPE) testit##TYPE ();
+
+T(Sld1, long double)
+T(Sld2, long double)
+T(Sld3, long double)
+T(Sld4, long double)
+T(Sld5, long double)
+T(Sld6, long double)
+T(Sld7, long double)
+T(Sld8, long double)
+
+DEBUG_FINI
+
+if (fails != 0)
+ abort ();
+
+#undef T
+}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_y.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_y.c
new file mode 100644
index 00000000000..307ad3120af
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_y.c
@@ -0,0 +1,26 @@
+#include <stdarg.h>
+
+#include "compat-common.h"
+
+/* Turn off checking for variable arguments with -DSKIPVA. */
+#ifdef SKIPVA
+const int test_va = 0;
+#else
+const int test_va = 1;
+#endif
+
+#include "fp-struct-defs.h"
+#include "fp-struct-init.h"
+#include "fp-struct-test-by-value-y.h"
+
+DEFS(ld, long double)
+INITS(ld, long double)
+
+TEST(Sld1, long double)
+TEST(Sld2, long double)
+TEST(Sld3, long double)
+TEST(Sld4, long double)
+TEST(Sld5, long double)
+TEST(Sld6, long double)
+TEST(Sld7, long double)
+TEST(Sld8, long double)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_main.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_main.c
new file mode 100644
index 00000000000..5d6908bfc1f
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_main.c
@@ -0,0 +1,14 @@
+/* Test structures passed by value, including to a function with a
+ variable-length argument lists. All struct members are long double
+ scalars. */
+
+extern void struct_by_value_7b_x (void);
+extern void exit (int);
+int fails;
+
+int
+main ()
+{
+ struct_by_value_7b_x ();
+ exit (0);
+}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-7_x.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_x.c
index 018db252ae4..508ff616584 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-7_x.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_x.c
@@ -7,14 +7,6 @@
DEFS(ld, long double)
CHECKS(ld, long double)
-TEST(Sld1, long double)
-TEST(Sld2, long double)
-TEST(Sld3, long double)
-TEST(Sld4, long double)
-TEST(Sld5, long double)
-TEST(Sld6, long double)
-TEST(Sld7, long double)
-TEST(Sld8, long double)
TEST(Sld9, long double)
TEST(Sld10, long double)
TEST(Sld11, long double)
@@ -27,20 +19,12 @@ TEST(Sld16, long double)
#undef T
void
-struct_by_value_7_x ()
+struct_by_value_7b_x ()
{
DEBUG_INIT
#define T(TYPE, MTYPE) testit##TYPE ();
-T(Sld1, long double)
-T(Sld2, long double)
-T(Sld3, long double)
-T(Sld4, long double)
-T(Sld5, long double)
-T(Sld6, long double)
-T(Sld7, long double)
-T(Sld8, long double)
T(Sld9, long double)
T(Sld10, long double)
T(Sld11, long double)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-7_y.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_y.c
index ca52a9b10f7..d4611d83019 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-7_y.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_y.c
@@ -16,14 +16,6 @@ const int test_va = 1;
DEFS(ld, long double)
INITS(ld, long double)
-TEST(Sld1, long double)
-TEST(Sld2, long double)
-TEST(Sld3, long double)
-TEST(Sld4, long double)
-TEST(Sld5, long double)
-TEST(Sld6, long double)
-TEST(Sld7, long double)
-TEST(Sld8, long double)
TEST(Sld9, long double)
TEST(Sld10, long double)
TEST(Sld11, long double)
diff --git a/gcc/testsuite/gcc.dg/const-elim-1.c b/gcc/testsuite/gcc.dg/const-elim-1.c
index 7281ebfd9b4..71a1364d599 100644
--- a/gcc/testsuite/gcc.dg/const-elim-1.c
+++ b/gcc/testsuite/gcc.dg/const-elim-1.c
@@ -7,10 +7,13 @@
/* { dg-do compile } */
/* { dg-options "-O2 -std=c99" } */
-/* This test fails on ARM cores because we use a block move to
- initialize "S" in test2, and GCC is not clever enough to eliminate
- the block move. */
-/* { dg-final { scan-assembler-not "L\\\$?C\[^A-Z\]" { xfail arm-*-* } } } */
+/* This test fails on all processors where we use a block move to
+ initialize "S" in test2. The RTL optimizers are not clever enough
+ to eliminate the block move, so the constant gets emitted.
+ Currently known targets with this problem: all ARM; PA32 ("hppa*.*"
+ matches "hppa2.0w" but not "hppa64"); PPC if string instructions
+ are enabled (notably under AIX); Xtensa. */
+/* { dg-final { scan-assembler-not "L\\\$?C\[^A-Z\]" { xfail arm-*-* strongarm-*-* xscale-*-* hppa-*-* hppa*.*-*-* powerpc*-*-aix* xtensa-*-* } } } */
#define I (__extension__ 1.0iF)
diff --git a/gcc/testsuite/gcc.dg/cpp/assert4.c b/gcc/testsuite/gcc.dg/cpp/assert4.c
index e71baf2bb35..20063b96e2e 100644
--- a/gcc/testsuite/gcc.dg/cpp/assert4.c
+++ b/gcc/testsuite/gcc.dg/cpp/assert4.c
@@ -360,10 +360,19 @@
#endif
#if defined __powerpc__
-# if !#cpu(powerpc) || !#machine(powerpc)
-# error
-# endif
-#elif #cpu(powerpc) || #machine(powerpc)
+# if defined __powerpc64__
+# if (#cpu(powerpc) || #machine(powerpc) \
+ || !#cpu(powerpc64) || !#machine(powerpc64))
+# error
+# endif
+# else
+# if (!#cpu(powerpc) || !#machine(powerpc) \
+ || #cpu(powerpc64) || #machine(powerpc64))
+# error
+# endif
+# endif
+#elif (#cpu(powerpc) || #machine(powerpc) \
+ || #cpu(powerpc64) || #machine(powerpc64))
# error
#endif
diff --git a/gcc/testsuite/gcc.dg/cpp/c90-if-comma-1.c b/gcc/testsuite/gcc.dg/cpp/c90-if-comma-1.c
new file mode 100644
index 00000000000..c00403f16ad
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/cpp/c90-if-comma-1.c
@@ -0,0 +1,11 @@
+/* Test for commas in constant expressions in #if: not permitted in C90
+ but permitted in unevaluated subexpressions in C99. */
+/* Origin: Joseph Myers <jsm@polyomino.org.uk> */
+/* { dg-do preprocess } */
+/* { dg-options "-std=iso9899:1990 -pedantic-errors" } */
+
+#if (1, 2) /* { dg-error "comma" "evaluated comma" } */
+#endif
+
+#if 1 || (1, 2) /* { dg-error "comma" "unevaluated comma" } */
+#endif
diff --git a/gcc/testsuite/gcc.dg/cpp/c99-if-comma-1.c b/gcc/testsuite/gcc.dg/cpp/c99-if-comma-1.c
new file mode 100644
index 00000000000..cb8eb6f7363
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/cpp/c99-if-comma-1.c
@@ -0,0 +1,11 @@
+/* Test for commas in constant expressions in #if: not permitted in C90
+ but permitted in unevaluated subexpressions in C99. */
+/* Origin: Joseph Myers <jsm@polyomino.org.uk> */
+/* { dg-do preprocess } */
+/* { dg-options "-std=iso9899:1999 -pedantic-errors" } */
+
+#if (1, 2) /* { dg-error "comma" "evaluated comma" } */
+#endif
+
+#if 1 || (1, 2)
+#endif
diff --git a/gcc/testsuite/gcc.dg/darwin-longlong.c b/gcc/testsuite/gcc.dg/darwin-longlong.c
new file mode 100644
index 00000000000..1e7b0ceb058
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/darwin-longlong.c
@@ -0,0 +1,38 @@
+/* { dg-do run { target powerpc*-*-* } } */
+/* { dg-options "-mcpu=G5" } */
+
+#include <signal.h>
+
+void
+sig_ill_handler (int sig)
+{
+ exit(0);
+}
+
+
+int msw(long long in)
+{
+ union {
+ long long ll;
+ int i[2];
+ } ud;
+ ud.ll = in;
+ return ud.i[0];
+}
+
+int main()
+{
+
+ /* Exit on systems without 64bit instructions. */
+ signal (SIGILL, sig_ill_handler);
+#ifdef __MACH__
+ asm volatile ("extsw r0,r0");
+#else
+ asm volatile ("extsw 0,0");
+#endif
+ signal (SIGILL, SIG_DFL);
+
+ if (msw(1) != 0)
+ abort();
+ exit(0);
+}
diff --git a/gcc/testsuite/gcc.dg/debug/20020327-1.c b/gcc/testsuite/gcc.dg/debug/20020327-1.c
index 3ad1b1b98a8..49d00a16cc7 100644
--- a/gcc/testsuite/gcc.dg/debug/20020327-1.c
+++ b/gcc/testsuite/gcc.dg/debug/20020327-1.c
@@ -1,4 +1,12 @@
/* { dg-do link } */
+#ifndef __powerpc64__
+/* Fails on powerpc64-linux due to the function Letext using a global
+ .Letext symbol that conflicts with .Letext emitted by gcc with
+ -gstabs. Some day the linker will be fixed to not require global
+ "dot" syms, but for now disable this test entirely for powerpc64.
+ Using xfail doesn't work, nor does dg-excess-errors because some
+ combinations of command line options won't cause this test to fail. */
void Letext (void) { }
+#endif
int main() { return 0; }
diff --git a/gcc/testsuite/gcc.dg/debug/debug-7.c b/gcc/testsuite/gcc.dg/debug/debug-7.c
new file mode 100644
index 00000000000..d424e91f304
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/debug/debug-7.c
@@ -0,0 +1,16 @@
+/* { dg-do compile } */
+/* { dg-options "-dA" } */
+/* PR debug/12934. */
+
+static inline int foo ()
+{
+ return 42;
+}
+
+void bar (int *);
+
+void baz ()
+{
+ int a[foo ()];
+ bar (a);
+}
diff --git a/gcc/testsuite/gcc.dg/debug/dwarf2/c99-typedef1.c b/gcc/testsuite/gcc.dg/debug/dwarf2/c99-typedef1.c
new file mode 100644
index 00000000000..b7bd66a6023
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/debug/dwarf2/c99-typedef1.c
@@ -0,0 +1,9 @@
+// { dg-options "-std=iso9899:1999 -gdwarf-2" }
+
+void f() {
+ int n = 3;
+ typedef int T[n++];
+
+ T t;
+ t[0] = 7;
+}
diff --git a/gcc/testsuite/gcc.dg/decl-4.c b/gcc/testsuite/gcc.dg/decl-4.c
new file mode 100644
index 00000000000..acc7e77e2ea
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/decl-4.c
@@ -0,0 +1,10 @@
+/* Redeclaration of parameters is an error. PR 13728. */
+/* { dg-do compile } */
+
+void f (int fred, /* { dg-error "previous definition" "" } */
+ int fred); /* { dg-error "redefinition of parameter" "" } */
+
+void f2 (int fred, /* { dg-error "previous definition" "" } */
+ int fred) /* { dg-error "redefinition of parameter" "" } */
+{
+}
diff --git a/gcc/testsuite/gcc.dg/decl-5.c b/gcc/testsuite/gcc.dg/decl-5.c
new file mode 100644
index 00000000000..9b778246459
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/decl-5.c
@@ -0,0 +1,20 @@
+/* PR c/14114 */
+/* Origin: <snyder@fnal.gov> */
+/* { dg-do compile } */
+/* { dg-options "-O2 -g" } */
+
+/* This used to fail because the compiler thought that the
+ declaration of 'c' from 'b' was shadowing that from 'a'. */
+
+void a()
+{
+ void c();
+ c();
+}
+
+void b()
+{
+ void c();
+}
+
+void c() {}
diff --git a/gcc/testsuite/gcc.dg/decl-6.c b/gcc/testsuite/gcc.dg/decl-6.c
new file mode 100644
index 00000000000..0fd45d3c68f
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/decl-6.c
@@ -0,0 +1,15 @@
+/* { dg-do compile } */
+
+extern int var;
+
+int foo1(void)
+{
+ extern int var;
+
+ var += 1;
+}
+
+int foo2(void)
+{
+ var += 1;
+}
diff --git a/gcc/testsuite/gcc.dg/funcorder.c b/gcc/testsuite/gcc.dg/funcorder.c
index b064d1cc467..a3edc1272f9 100644
--- a/gcc/testsuite/gcc.dg/funcorder.c
+++ b/gcc/testsuite/gcc.dg/funcorder.c
@@ -1,8 +1,10 @@
/* { dg-do compile } */
/* { dg-options "-O2 -funit-at-a-time" } */
-/* { dg-final { if [ istarget hppa*-*-* ] { scan-assembler-not "link_error,%r" } else { scan-assembler-not "link_error" } } } */
+/* { dg-final { if [ istarget hppa*-*-* ] { scan-assembler-not "link_error,%r" { xfail hppa*64*-*-* } } else { scan-assembler-not "link_error" } } } */
/* In unit-at-time the functions should be assembled in order
- e q t main, so we realize that they are pure. */
+ e q t main, so we realize that they are pure. The test is
+ xfailed on hppa64 because variable r in q is sign extended
+ to 64-bits. As a result, "if (t!=mem)" is not simplified. */
static int mem;
static int e(void) __attribute__ ((noinline));
diff --git a/gcc/testsuite/gcc.dg/fwritable-strings-1.c b/gcc/testsuite/gcc.dg/fwritable-strings-1.c
new file mode 100644
index 00000000000..652a0845fd0
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/fwritable-strings-1.c
@@ -0,0 +1,18 @@
+/* PR c/12818 */
+/* Origin: <fnf@ninemoons.com> */
+
+/* { dg-do run } */
+/* { dg-options "-fwritable-strings" } */
+/* { dg-error "-fwritable-strings is deprecated" "" { target *-*-* } 0 } */
+
+extern void abort(void);
+
+char *names[] = {"alice", "bob", "john"};
+
+int main (void)
+{
+ if (names[1][0] != 'b')
+ abort();
+
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.dg/gnu89-dupqual-1.c b/gcc/testsuite/gcc.dg/gnu89-dupqual-1.c
new file mode 100644
index 00000000000..9bd1db01569
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/gnu89-dupqual-1.c
@@ -0,0 +1,12 @@
+/* { dg-do compile } */
+/* { dg-options "-std=gnu89 -Werror" } */
+
+typedef const int CI;
+const const int c1; /* { dg-bogus "duplicate" } */
+const CI c2; /* { dg-bogus "duplicate" } */
+const CI *c3; /* { dg-bogus "duplicate" } */
+
+typedef volatile int VI;
+volatile volatile int v1; /* { dg-bogus "duplicate" } */
+volatile VI v2; /* { dg-bogus "duplicate" } */
+volatile VI *v3; /* { dg-bogus "duplicate" } */
diff --git a/gcc/testsuite/gcc.dg/gnu89-init-3.c b/gcc/testsuite/gcc.dg/gnu89-init-3.c
new file mode 100644
index 00000000000..bd4283ec875
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/gnu89-init-3.c
@@ -0,0 +1,18 @@
+/* PR 11527 */
+/* { dg-do compile } */
+/* { dg-options "-std=gnu89" } */
+
+typedef struct smrdd_memory_blocks_s
+{
+ int blocks;
+ int block[];
+} smrdd_memory_blocks_t;
+
+const smrdd_memory_blocks_t smrdd_memory_blocks =
+{
+ 3,
+ {
+ [5] = 5,
+ [1] = 2,
+ }
+};
diff --git a/gcc/testsuite/gcc.dg/i386-asm-1.c b/gcc/testsuite/gcc.dg/i386-asm-1.c
index aae0de845b3..bf7aa1d0c4b 100644
--- a/gcc/testsuite/gcc.dg/i386-asm-1.c
+++ b/gcc/testsuite/gcc.dg/i386-asm-1.c
@@ -2,7 +2,7 @@
/* { dg-do run { target i?86-*-* } } */
/* { dg-options "-O2" } */
-static int bar(int x) __asm__("bar");
+static int bar(int x) __asm__("bar") __attribute__((regparm(1)));
static int __attribute__((regparm(1), noinline, used))
bar(int x)
{
diff --git a/gcc/testsuite/gcc.dg/i386-asm-2.c b/gcc/testsuite/gcc.dg/i386-asm-2.c
new file mode 100644
index 00000000000..e143ea36978
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/i386-asm-2.c
@@ -0,0 +1,61 @@
+/* PR opt/13862 */
+/* { dg-do compile { target i?86-*-* } } */
+/* { dg-options "-O" } */
+
+typedef struct _fame_syntax_t_ {
+} fame_syntax_t;
+
+typedef struct _fame_bitbuffer_t_
+{
+ unsigned char * base;
+ unsigned char * data;
+ unsigned long shift;
+} fame_bitbuffer_t;
+
+#define fast_bitbuffer_write(data, shift, c, l) \
+{ \
+ int d; \
+ \
+ asm("add %1, %%ecx\n" /* ecx = shift + length */ \
+ "shrd %%cl, %2, %3\n" /* adjust code to fit in */ \
+ "shr %%cl, %2\n" /* adjust code to fit in */ \
+ "mov %%ecx, %1\n" /* shift += length */ \
+ "bswap %2\n" /* reverse byte order of code */ \
+ "shr $5, %%ecx\n" /* get dword increment */ \
+ "or %2, (%0)\n" /* put first 32 bits */ \
+ "bswap %3\n" /* reverse byte order of code */ \
+ "lea (%0, %%ecx, 4), %0\n" /* data += (ecx>32) */ \
+ "andl $31, %1\n" /* mask shift */ \
+ "orl %3, (%0)\n" /* put last 32 bits */ \
+ : "=r"(data), "=r"(shift), "=a"(d), "=d"(d), "=c"(d) \
+ : "0"(data), "1"(shift), "2"((unsigned long) c), "3"(0), \
+ "c"((unsigned long) l) \
+ : "memory"); \
+}
+
+#define bitbuffer_write(bb, c, l) \
+ fast_bitbuffer_write((bb)->data, (bb)->shift, c, l)
+
+typedef enum { frame_type_I, frame_type_P } frame_type_t;
+
+typedef struct _fame_syntax_mpeg1_t_ {
+ fame_bitbuffer_t buffer;
+ frame_type_t frame_type;
+} fame_syntax_mpeg1_t;
+
+#define FAME_SYNTAX_MPEG1(x) ((fame_syntax_mpeg1_t *) x)
+
+void mpeg1_start_picture(fame_syntax_t *syntax)
+{
+ fame_syntax_mpeg1_t *syntax_mpeg1 = FAME_SYNTAX_MPEG1(syntax);
+ bitbuffer_write(&syntax_mpeg1->buffer, 0xFFFF, 16);
+
+ switch(syntax_mpeg1->frame_type) {
+ case frame_type_I:
+ bitbuffer_write(&syntax_mpeg1->buffer, 0, 1);
+ break;
+ case frame_type_P:
+ bitbuffer_write(&syntax_mpeg1->buffer, 0, 1);
+ break;
+ }
+}
diff --git a/gcc/testsuite/gcc.dg/i386-cpuid.h b/gcc/testsuite/gcc.dg/i386-cpuid.h
index f8e72dbb5d9..dc300e4482b 100644
--- a/gcc/testsuite/gcc.dg/i386-cpuid.h
+++ b/gcc/testsuite/gcc.dg/i386-cpuid.h
@@ -2,6 +2,7 @@
Used by 20020523-2.c and i386-sse-6.c, and possibly others. */
/* Plagarized from 20020523-2.c. */
+#define bit_CMOV (1 << 15)
#define bit_MMX (1 << 23)
#define bit_SSE (1 << 25)
#define bit_SSE2 (1 << 26)
@@ -17,27 +18,39 @@ i386_cpuid (void)
{
int fl1, fl2;
- /* See if we can use cpuid. */
+#ifndef __x86_64__
+ /* See if we can use cpuid. On AMD64 we always can. */
__asm__ ("pushfl; pushfl; popl %0; movl %0,%1; xorl %2,%0;"
"pushl %0; popfl; pushfl; popl %0; popfl"
: "=&r" (fl1), "=&r" (fl2)
: "i" (0x00200000));
if (((fl1 ^ fl2) & 0x00200000) == 0)
return (0);
+#endif
/* Host supports cpuid. See if cpuid gives capabilities, try
CPUID(0). Preserve %ebx and %ecx; cpuid insn clobbers these, we
don't need their CPUID values here, and %ebx may be the PIC
register. */
- __asm__ ("push %%ecx ; push %%ebx ; cpuid ; pop %%ebx ; pop %%ecx"
+#ifdef __x86_64__
+ __asm__ ("pushq %%rcx; pushq %%rbx; cpuid; popq %%rbx; popq %%rcx"
+ : "=a" (fl1) : "0" (0) : "rdx", "cc");
+#else
+ __asm__ ("pushl %%ecx; pushl %%ebx; cpuid; popl %%ebx; popl %%ecx"
: "=a" (fl1) : "0" (0) : "edx", "cc");
+#endif
if (fl1 == 0)
return (0);
/* Invoke CPUID(1), return %edx; caller can examine bits to
determine what's supported. */
- __asm__ ("push %%ecx ; push %%ebx ; cpuid ; pop %%ebx ; pop %%ecx" : "=d" (fl2) : "a" (1) : "cc");
+#ifdef __x86_64__
+ __asm__ ("pushq %%rcx; pushq %%rbx; cpuid; popq %%rbx; popq %%rcx"
+ : "=d" (fl2), "=a" (fl1) : "1" (1) : "cc");
+#else
+ __asm__ ("pushl %%ecx; pushl %%ebx; cpuid; popl %%ebx; popl %%ecx"
+ : "=d" (fl2), "=a" (fl1) : "1" (1) : "cc");
+#endif
return fl2;
}
-
diff --git a/gcc/testsuite/gcc.dg/i386-mmx-4.c b/gcc/testsuite/gcc.dg/i386-mmx-4.c
new file mode 100644
index 00000000000..071baf7860c
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/i386-mmx-4.c
@@ -0,0 +1,245 @@
+/* { dg-do run { target i?86-*-* x86_64-*-* } } */
+/* { dg-options "-O2 -mmmx" } */
+#include <mmintrin.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "i386-cpuid.h"
+
+#ifndef NOINLINE
+#define NOINLINE __attribute__ ((noinline))
+#endif
+
+#define SHIFT (4)
+
+typedef union {
+ __m64 v;
+ unsigned char c[8];
+ unsigned short int s[4];
+ unsigned long long t;
+ unsigned int u[2];
+}vecInWord;
+
+void mmx_tests (void) NOINLINE;
+void dump64_16 (char *, char *, vecInWord);
+void dump64_32 (char *, char *, vecInWord);
+void dump64_64 (char *, char *, vecInWord);
+int check (const char *, const char *[]);
+
+char buf[8000];
+char comparison[8000];
+static int errors = 0;
+
+vecInWord a64, b64, c64, d64, e64;
+__m64 m64_16, s64, m64_32, m64_64;
+
+const char *reference_mmx[] = {
+ "_mm_srai_pi16 0012 0012 0012 0012 \n",
+ "_mm_sra_pi16 0012 0012 0012 0012 \n",
+ "_mm_srai_pi32 00123456 00123456 \n",
+ "_mm_sra_pi32 00123456 00123456 \n",
+ "_mm_srli_pi16 0012 0012 0012 0012 \n",
+ "_mm_srl_pi16 0012 0012 0012 0012 \n",
+ "_mm_srli_pi32 00123456 00123456 \n",
+ "_mm_srl_pi32 00123456 00123456 \n",
+ "_mm_srli_si64 00123456789abcde\n",
+ "_mm_srl_si64 00123456789abcde\n",
+ "_mm_slli_pi16 1230 1230 1230 1230 \n",
+ "_mm_sll_pi16 1230 1230 1230 1230 \n",
+ "_mm_slli_pi32 12345670 12345670 \n",
+ "_mm_sll_pi32 12345670 12345670 \n",
+ "_mm_slli_si64 123456789abcdef0\n",
+ "_mm_sll_si64 123456789abcdef0\n",
+ ""
+};
+
+int main()
+{
+ unsigned long cpu_facilities;
+
+ cpu_facilities = i386_cpuid ();
+
+ if ((cpu_facilities & bit_MMX) == 0)
+ exit (0);
+
+ d64.u[0] = 0x01234567;
+ d64.u[1] = 0x01234567;
+
+ m64_32 = d64.v;
+
+ e64.t = 0x0123456789abcdefULL;
+
+ m64_64 = e64.v;
+
+ a64.s[0] = 0x0123;
+ a64.s[1] = 0x0123;
+ a64.s[2] = 0x0123;
+ a64.s[3] = 0x0123;
+
+ m64_16 = a64.v;
+
+ b64.s[0] = SHIFT;
+ b64.s[1] = 0;
+ b64.s[2] = 0;
+ b64.s[3] = 0;
+
+ s64 = b64.v;
+
+ if (cpu_facilities & bit_MMX)
+ {
+ mmx_tests();
+ check (buf, reference_mmx);
+#ifdef DEBUG
+ printf ("mmx testing:\n");
+ printf (buf);
+ printf ("\ncomparison:\n");
+ printf (comparison);
+#endif
+ buf[0] = '\0';
+ }
+
+ if (errors != 0)
+ abort ();
+ exit (0);
+}
+
+void NOINLINE
+mmx_tests (void)
+{
+ /* psraw */
+ c64.v = _mm_srai_pi16 (m64_16, SHIFT);
+ dump64_16 (buf, "_mm_srai_pi16", c64);
+ c64.v = _mm_sra_pi16 (m64_16, s64);
+ dump64_16 (buf, "_mm_sra_pi16", c64);
+
+ /* psrad */
+ c64.v = _mm_srai_pi32 (m64_32, SHIFT);
+ dump64_32 (buf, "_mm_srai_pi32", c64);
+ c64.v = _mm_sra_pi32 (m64_32, s64);
+ dump64_32 (buf, "_mm_sra_pi32", c64);
+
+ /* psrlw */
+ c64.v = _mm_srli_pi16 (m64_16, SHIFT);
+ dump64_16 (buf, "_mm_srli_pi16", c64);
+ c64.v = _mm_srl_pi16 (m64_16, s64);
+ dump64_16 (buf, "_mm_srl_pi16", c64);
+
+ /* psrld */
+ c64.v = _mm_srli_pi32 (m64_32, SHIFT);
+ dump64_32 (buf, "_mm_srli_pi32", c64);
+ c64.v = _mm_srl_pi32 (m64_32, s64);
+ dump64_32 (buf, "_mm_srl_pi32", c64);
+
+ /* psrlq */
+ c64.v = _mm_srli_si64 (m64_64, SHIFT);
+ dump64_64 (buf, "_mm_srli_si64", c64);
+ c64.v = _mm_srl_si64 (m64_64, s64);
+ dump64_64 (buf, "_mm_srl_si64", c64);
+
+ /* psllw */
+ c64.v = _mm_slli_pi16 (m64_16, SHIFT);
+ dump64_16 (buf, "_mm_slli_pi16", c64);
+ c64.v = _mm_sll_pi16 (m64_16, s64);
+ dump64_16 (buf, "_mm_sll_pi16", c64);
+
+ /* pslld */
+ c64.v = _mm_slli_pi32 (m64_32, SHIFT);
+ dump64_32 (buf, "_mm_slli_pi32", c64);
+ c64.v = _mm_sll_pi32 (m64_32, s64);
+ dump64_32 (buf, "_mm_sll_pi32", c64);
+
+ /* psllq */
+ c64.v = _mm_slli_si64 (m64_64, SHIFT);
+ dump64_64 (buf, "_mm_slli_si64", c64);
+ c64.v = _mm_sll_si64 (m64_64, s64);
+ dump64_64 (buf, "_mm_sll_si64", c64);
+}
+
+void
+dump64_16 (char *buf, char *name, vecInWord x)
+{
+ int i;
+ char *p = buf + strlen (buf);
+
+ sprintf (p, "%s ", name);
+ p += strlen (p);
+
+ for (i=0; i<4; i++)
+ {
+ sprintf (p, "%4.4x ", x.s[i]);
+ p += strlen (p);
+ }
+ strcat (p, "\n");
+}
+
+void
+dump64_32 (char *buf, char *name, vecInWord x)
+{
+ int i;
+ char *p = buf + strlen (buf);
+
+ sprintf (p, "%s ", name);
+ p += strlen (p);
+
+ for (i=0; i<2; i++)
+ {
+ sprintf (p, "%8.8x ", x.u[i]);
+ p += strlen (p);
+ }
+ strcat (p, "\n");
+}
+
+void
+dump64_64 (char *buf, char *name, vecInWord x)
+{
+ char *p = buf + strlen (buf);
+
+ sprintf (p, "%s ", name);
+ p += strlen (p);
+
+ sprintf (p, "%16.16llx\n", x.t);
+}
+
+int
+check (const char *input, const char *reference[])
+{
+ int broken, i, j, len;
+ const char *p_input;
+ char *p_comparison;
+ int new_errors = 0;
+
+ p_comparison = &comparison[0];
+ p_input = input;
+
+ for (i = 0; *reference[i] != '\0'; i++)
+ {
+ broken = 0;
+ len = strlen (reference[i]);
+ for (j = 0; j < len; j++)
+ {
+ /* Ignore the terminating NUL characters at the end of every string in 'reference[]'. */
+ if (!broken && *p_input != reference[i][j])
+ {
+ *p_comparison = '\0';
+ strcat (p_comparison, " >>> ");
+ p_comparison += strlen (p_comparison);
+ new_errors++;
+ broken = 1;
+ }
+ *p_comparison = *p_input;
+ p_comparison++;
+ p_input++;
+ }
+ if (broken)
+ {
+ *p_comparison = '\0';
+ strcat (p_comparison, "expected:\n");
+ strcat (p_comparison, reference[i]);
+ p_comparison += strlen (p_comparison);
+ }
+ }
+ *p_comparison = '\0';
+ strcat (p_comparison, new_errors ? "failure\n\n" : "O.K.\n\n") ;
+ errors += new_errors;
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.dg/i386-regparm.c b/gcc/testsuite/gcc.dg/i386-regparm.c
new file mode 100644
index 00000000000..18206ea7fc3
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/i386-regparm.c
@@ -0,0 +1,9 @@
+/* { dg-do compile { target i?86-*-* } } */
+/* { dg-options "-W -Wall" } */
+
+/* Verify that GCC correctly detects non-matching regparm attributes. */
+int __attribute__((regparm(3))) f (void); /* { dg-error "previous" } */
+
+int __attribute__((regparm(2))) f (void) { /* { dg-error "conflicting" } */
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.dg/i386-sse-6.c b/gcc/testsuite/gcc.dg/i386-sse-6.c
index ca18132ce30..6642891485b 100644
--- a/gcc/testsuite/gcc.dg/i386-sse-6.c
+++ b/gcc/testsuite/gcc.dg/i386-sse-6.c
@@ -1,6 +1,9 @@
/* { dg-do run { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-O2 -msse2" } */
#include <xmmintrin.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
#include "i386-cpuid.h"
#ifndef NOINLINE
@@ -11,26 +14,13 @@
typedef union {
__m128i v;
- unsigned long s[4];
+ unsigned int s[4];
unsigned short int t[8];
unsigned long long u[2];
unsigned char c[16];
}vecInLong;
-typedef union {
- __m64 v;
- unsigned char c[8];
- unsigned short int s[4];
- unsigned long long t;
- unsigned int u[2];
-}vecInWord;
-
-void mmx_tests (void) NOINLINE;
-void sse_tests (void) NOINLINE;
void sse2_tests (void) NOINLINE;
-void dump64_16 (char *, char *, vecInWord);
-void dump64_32 (char *, char *, vecInWord);
-void dump64_64 (char *, char *, vecInWord);
void dump128_16 (char *, char *, vecInLong);
void dump128_32 (char *, char *, vecInLong);
void dump128_64 (char *, char *, vecInLong);
@@ -42,35 +32,9 @@ char comparison[8000];
static int errors = 0;
vecInLong a128, b128, c128, d128, e128, f128;
-vecInWord a64, b64, c64, d64, e64;
__m128i m128_16, m128_32, s128, m128_64, m128_128;
__m64 m64_16, s64, m64_32, m64_64;
-const char *reference_mmx[] = {
- "_mm_srai_pi16 0012 0012 0012 0012 \n",
- "_mm_sra_pi16 0012 0012 0012 0012 \n",
- "_mm_srai_pi32 00123456 00123456 \n",
- "_mm_sra_pi32 00123456 00123456 \n",
- "_mm_srli_pi16 0012 0012 0012 0012 \n",
- "_mm_srl_pi16 0012 0012 0012 0012 \n",
- "_mm_srli_pi32 00123456 00123456 \n",
- "_mm_srl_pi32 00123456 00123456 \n",
- "_mm_srli_si64 00123456789abcde\n",
- "_mm_srl_si64 00123456789abcde\n",
- "_mm_slli_pi16 1230 1230 1230 1230 \n",
- "_mm_sll_pi16 1230 1230 1230 1230 \n",
- "_mm_slli_pi32 12345670 12345670 \n",
- "_mm_sll_pi32 12345670 12345670 \n",
- "_mm_slli_si64 123456789abcdef0\n",
- "_mm_sll_si64 123456789abcdef0\n",
- ""
-};
-
-const char *reference_sse[] = {
- "_mm_shuffle_pi16 0123 4567 89ab cdef \n",
- ""
-};
-
const char *reference_sse2[] = {
"_mm_srai_epi16 0012 0012 0012 0012 0012 0012 0012 0012 \n",
"_mm_sra_epi16 0012 0012 0012 0012 0012 0012 0012 0012 \n",
@@ -98,12 +62,13 @@ const char *reference_sse2[] = {
int main()
{
- unsigned long *p;
unsigned long cpu_facilities;
cpu_facilities = i386_cpuid ();
- if (!cpu_facilities) /* If host has no vector support, pass. */
+ if ((cpu_facilities & (bit_MMX | bit_SSE | bit_SSE2 | bit_CMOV))
+ != (bit_MMX | bit_SSE | bit_SSE2 | bit_CMOV))
+ /* If host has no vector support, pass. */
exit (0);
a128.s[0] = 0x01234567;
@@ -136,22 +101,6 @@ int main()
m128_128 = e128.v;
- d64.u[0] = 0x01234567;
- d64.u[1] = 0x01234567;
-
- m64_32 = d64.v;
-
- e64.t = 0x0123456789abcdefULL;
-
- m64_64 = e64.v;
-
- a64.s[0] = 0x0123;
- a64.s[1] = 0x0123;
- a64.s[2] = 0x0123;
- a64.s[3] = 0x0123;
-
- m64_16 = a64.v;
-
b128.s[0] = SHIFT;
b128.s[1] = 0;
b128.s[2] = 0;
@@ -159,39 +108,6 @@ int main()
s128 = b128.v;
- b64.s[0] = SHIFT;
- b64.s[1] = 0;
- b64.s[2] = 0;
- b64.s[3] = 0;
-
- s64 = b64.v;
-
- if (cpu_facilities & bit_MMX)
- {
- mmx_tests();
- check (buf, reference_mmx);
-#ifdef DEBUG
- printf ("mmx testing:\n");
- printf (buf);
- printf ("\ncomparison:\n");
- printf (comparison);
-#endif
- buf[0] = '\0';
- }
-
- if (cpu_facilities & bit_SSE)
- {
- sse_tests();
- check (buf, reference_sse);
-#ifdef DEBUG
- printf ("sse testing:\n");
- printf (buf);
- printf ("\ncomparison:\n");
- printf (comparison);
-#endif
- buf[0] = '\0';
- }
-
if (cpu_facilities & bit_SSE2)
{
sse2_tests();
@@ -211,66 +127,6 @@ int main()
}
void NOINLINE
-mmx_tests (void)
-{
- /* psraw */
- c64.v = _mm_srai_pi16 (m64_16, SHIFT);
- dump64_16 (buf, "_mm_srai_pi16", c64);
- c64.v = _mm_sra_pi16 (m64_16, s64);
- dump64_16 (buf, "_mm_sra_pi16", c64);
-
- /* psrad */
- c64.v = _mm_srai_pi32 (m64_32, SHIFT);
- dump64_32 (buf, "_mm_srai_pi32", c64);
- c64.v = _mm_sra_pi32 (m64_32, s64);
- dump64_32 (buf, "_mm_sra_pi32", c64);
-
- /* psrlw */
- c64.v = _mm_srli_pi16 (m64_16, SHIFT);
- dump64_16 (buf, "_mm_srli_pi16", c64);
- c64.v = _mm_srl_pi16 (m64_16, s64);
- dump64_16 (buf, "_mm_srl_pi16", c64);
-
- /* psrld */
- c64.v = _mm_srli_pi32 (m64_32, SHIFT);
- dump64_32 (buf, "_mm_srli_pi32", c64);
- c64.v = _mm_srl_pi32 (m64_32, s64);
- dump64_32 (buf, "_mm_srl_pi32", c64);
-
- /* psrlq */
- c64.v = _mm_srli_si64 (m64_64, SHIFT);
- dump64_64 (buf, "_mm_srli_si64", c64);
- c64.v = _mm_srl_si64 (m64_64, s64);
- dump64_64 (buf, "_mm_srl_si64", c64);
-
- /* psllw */
- c64.v = _mm_slli_pi16 (m64_16, SHIFT);
- dump64_16 (buf, "_mm_slli_pi16", c64);
- c64.v = _mm_sll_pi16 (m64_16, s64);
- dump64_16 (buf, "_mm_sll_pi16", c64);
-
- /* pslld */
- c64.v = _mm_slli_pi32 (m64_32, SHIFT);
- dump64_32 (buf, "_mm_slli_pi32", c64);
- c64.v = _mm_sll_pi32 (m64_32, s64);
- dump64_32 (buf, "_mm_sll_pi32", c64);
-
- /* psllq */
- c64.v = _mm_slli_si64 (m64_64, SHIFT);
- dump64_64 (buf, "_mm_slli_si64", c64);
- c64.v = _mm_sll_si64 (m64_64, s64);
- dump64_64 (buf, "_mm_sll_si64", c64);
-}
-
-void NOINLINE
-sse_tests (void)
-{
- /* pshufw */
- c64.v = _mm_shuffle_pi16 (m64_64, 0x1b);
- dump64_16 (buf, "_mm_shuffle_pi16", c64);
-}
-
-void NOINLINE
sse2_tests (void)
{
/* psraw */
@@ -345,52 +201,6 @@ sse2_tests (void)
}
void
-dump64_16 (char *buf, char *name, vecInWord x)
-{
- int i;
- char *p = buf + strlen (buf);
-
- sprintf (p, "%s ", name);
- p += strlen (p);
-
- for (i=0; i<4; i++)
- {
- sprintf (p, "%4.4x ", x.s[i]);
- p += strlen (p);
- }
- strcat (p, "\n");
-}
-
-void
-dump64_32 (char *buf, char *name, vecInWord x)
-{
- int i;
- char *p = buf + strlen (buf);
-
- sprintf (p, "%s ", name);
- p += strlen (p);
-
- for (i=0; i<2; i++)
- {
- sprintf (p, "%8.8x ", x.u[i]);
- p += strlen (p);
- }
- strcat (p, "\n");
-}
-
-void
-dump64_64 (char *buf, char *name, vecInWord x)
-{
- int i;
- char *p = buf + strlen (buf);
-
- sprintf (p, "%s ", name);
- p += strlen (p);
-
- sprintf (p, "%16.16llx\n", x.t);
-}
-
-void
dump128_16 (char *buf, char *name, vecInLong x)
{
int i;
@@ -502,4 +312,5 @@ check (const char *input, const char *reference[])
*p_comparison = '\0';
strcat (p_comparison, new_errors ? "failure\n\n" : "O.K.\n\n") ;
errors += new_errors;
+ return 0;
}
diff --git a/gcc/testsuite/gcc.dg/i386-sse-7.c b/gcc/testsuite/gcc.dg/i386-sse-7.c
new file mode 100644
index 00000000000..62e06e94ac8
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/i386-sse-7.c
@@ -0,0 +1,139 @@
+/* { dg-do run { target i?86-*-* x86_64-*-* } } */
+/* { dg-options "-O2 -msse" } */
+#include <xmmintrin.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "i386-cpuid.h"
+
+#ifndef NOINLINE
+#define NOINLINE __attribute__ ((noinline))
+#endif
+
+#define SHIFT (4)
+
+typedef union {
+ __m64 v;
+ unsigned char c[8];
+ unsigned short int s[4];
+ unsigned long long t;
+ unsigned int u[2];
+}vecInWord;
+
+void sse_tests (void) NOINLINE;
+void dump64_16 (char *, char *, vecInWord);
+int check (const char *, const char *[]);
+
+char buf[8000];
+char comparison[8000];
+static int errors = 0;
+
+vecInWord c64, e64;
+__m64 m64_64;
+
+const char *reference_sse[] = {
+ "_mm_shuffle_pi16 0123 4567 89ab cdef \n",
+ ""
+};
+
+int main()
+{
+ unsigned long cpu_facilities;
+
+ cpu_facilities = i386_cpuid ();
+
+ if ((cpu_facilities & (bit_MMX | bit_SSE | bit_CMOV))
+ != (bit_MMX | bit_SSE | bit_CMOV))
+ /* If host has no vector support, pass. */
+ exit (0);
+
+ e64.t = 0x0123456789abcdefULL;
+
+ m64_64 = e64.v;
+
+ if (cpu_facilities & bit_SSE)
+ {
+ sse_tests();
+ check (buf, reference_sse);
+#ifdef DEBUG
+ printf ("sse testing:\n");
+ printf (buf);
+ printf ("\ncomparison:\n");
+ printf (comparison);
+#endif
+ buf[0] = '\0';
+ }
+
+ if (errors != 0)
+ abort ();
+ exit (0);
+}
+
+void NOINLINE
+sse_tests (void)
+{
+ /* pshufw */
+ c64.v = _mm_shuffle_pi16 (m64_64, 0x1b);
+ dump64_16 (buf, "_mm_shuffle_pi16", c64);
+}
+
+void
+dump64_16 (char *buf, char *name, vecInWord x)
+{
+ int i;
+ char *p = buf + strlen (buf);
+
+ sprintf (p, "%s ", name);
+ p += strlen (p);
+
+ for (i=0; i<4; i++)
+ {
+ sprintf (p, "%4.4x ", x.s[i]);
+ p += strlen (p);
+ }
+ strcat (p, "\n");
+}
+
+int
+check (const char *input, const char *reference[])
+{
+ int broken, i, j, len;
+ const char *p_input;
+ char *p_comparison;
+ int new_errors = 0;
+
+ p_comparison = &comparison[0];
+ p_input = input;
+
+ for (i = 0; *reference[i] != '\0'; i++)
+ {
+ broken = 0;
+ len = strlen (reference[i]);
+ for (j = 0; j < len; j++)
+ {
+ /* Ignore the terminating NUL characters at the end of every string in 'reference[]'. */
+ if (!broken && *p_input != reference[i][j])
+ {
+ *p_comparison = '\0';
+ strcat (p_comparison, " >>> ");
+ p_comparison += strlen (p_comparison);
+ new_errors++;
+ broken = 1;
+ }
+ *p_comparison = *p_input;
+ p_comparison++;
+ p_input++;
+ }
+ if (broken)
+ {
+ *p_comparison = '\0';
+ strcat (p_comparison, "expected:\n");
+ strcat (p_comparison, reference[i]);
+ p_comparison += strlen (p_comparison);
+ }
+ }
+ *p_comparison = '\0';
+ strcat (p_comparison, new_errors ? "failure\n\n" : "O.K.\n\n") ;
+ errors += new_errors;
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.dg/i386-sse-8.c b/gcc/testsuite/gcc.dg/i386-sse-8.c
new file mode 100644
index 00000000000..d6e1056c0a9
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/i386-sse-8.c
@@ -0,0 +1,13 @@
+/* PR target/14313 */
+/* Origin: <Pawe Sikora <pluto@ds14.agh.edu.pl> */
+
+/* { dg-do compile } */
+/* { dg-options "-march=pentium3" { target i?86-*-* x86_64-*-* } } */
+
+int main()
+{
+ typedef int v __attribute__ ((mode(V2DI)));
+ v a, b;
+ a = b;
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.dg/inline-5.c b/gcc/testsuite/gcc.dg/inline-5.c
new file mode 100644
index 00000000000..d72fad65610
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/inline-5.c
@@ -0,0 +1,13 @@
+/* PR middle-end/13448 */
+
+/* { dg-options "-O3" } */
+
+void funct (const int n)
+{
+ n++; /* { dg-error "" } */
+}
+
+int main () {
+ funct (1);
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.dg/local1.c b/gcc/testsuite/gcc.dg/local1.c
new file mode 100644
index 00000000000..700070ae1d6
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/local1.c
@@ -0,0 +1,7 @@
+static int i;
+
+extern int i;
+
+static void f() {
+ extern int i;
+}
diff --git a/gcc/testsuite/gcc.dg/nest.c b/gcc/testsuite/gcc.dg/nest.c
index 872feade581..264dde26f05 100644
--- a/gcc/testsuite/gcc.dg/nest.c
+++ b/gcc/testsuite/gcc.dg/nest.c
@@ -1,12 +1,9 @@
/* PR 5967, PR 7114 */
/* { dg-do run } */
-/* { dg-require-profiling "" } */
+/* { dg-require-profiling "-pg" } */
/* { dg-options "-O2 -pg" } */
/* { dg-options "-O2 -pg -static" { target hppa*-*-hpux* } } */
/* { dg-error "profiler" "No profiler support" { target xstormy16-*-* } 0 } */
-/* Support for -pg on irix relies on gcrt1.o which doesn't exist yet.
- See: http://gcc.gnu.org/ml/gcc/2002-10/msg00169.html */
-/* { dg-error "gcrt1.o" "Profiler support missing" { target mips*-*-irix* } 0 } */
/* { dg-error "-pg not supported" "Profiler support missing" { target *-*-sco3.2v5* } 0 } */
long foo (long x)
diff --git a/gcc/testsuite/gcc.dg/noncompile/20020213-1.c b/gcc/testsuite/gcc.dg/noncompile/20020213-1.c
index 079daf01e2f..77798b57c4b 100644
--- a/gcc/testsuite/gcc.dg/noncompile/20020213-1.c
+++ b/gcc/testsuite/gcc.dg/noncompile/20020213-1.c
@@ -24,6 +24,7 @@ int main ()
return 0;
}
+/* { dg-warning "passing arg 2 of" "2nd incompatible" { target *-*-* } 15 } */
/* { dg-warning "passing arg 1 of" "1st incompatible" { target *-*-* } 16 } */
/* { dg-warning "passing arg 2 of" "2nd incompatible" { target *-*-* } 16 } */
/* { dg-warning "passing arg 1 of" "1st incompatible" { target *-*-* } 18 } */
diff --git a/gcc/testsuite/gcc.dg/ppc64-abi-2.c b/gcc/testsuite/gcc.dg/ppc64-abi-2.c
new file mode 100644
index 00000000000..ab0e1a14710
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/ppc64-abi-2.c
@@ -0,0 +1,405 @@
+/* { dg-do run { target powerpc64-*-linux* } } */
+/* { dg-options "-O2 -fprofile -mprofile-kernel -maltivec -mabi=altivec" } */
+#include <stdarg.h>
+#include <signal.h>
+#include <altivec.h>
+
+/* Testcase to check for ABI compliance of parameter passing
+ for the PowerPC64 ABI. */
+
+void __attribute__((no_instrument_function))
+sig_ill_handler (int sig)
+{
+ exit(0);
+}
+
+extern void abort (void);
+
+typedef struct
+{
+ unsigned long gprs[8];
+ double fprs[13];
+ long pad;
+ vector int vrs[12];
+} reg_parms_t;
+
+reg_parms_t gparms;
+
+/* _mcount call is done on Linux ppc64 early in the prologue.
+ my_mcount will provide a entry point _mcount,
+ which will save all register to gparms.
+ Note that _mcount need to restore lr to original value,
+ therefor use ctr to return.
+*/
+
+void __attribute__((no_instrument_function))
+my_mcount()
+{
+ asm volatile (".type _mcount,@function\n\t"
+ ".globl _mcount\n\t"
+ "_mcount:\n\t"
+ "mflr 0\n\t"
+ "mtctr 0\n\t"
+ "ld 0,16(1)\n\t"
+ "mtlr 0\n\t"
+ "ld 11,gparms@got(2)\n\t"
+ "std 3,0(11)\n\t"
+ "std 4,8(11)\n\t"
+ "std 5,16(11)\n\t"
+ "std 6,24(11)\n\t"
+ "std 7,32(11)\n\t"
+ "std 8,40(11)\n\t"
+ "std 9,48(11)\n\t"
+ "std 10,56(11)\n\t"
+ "stfd 1,64(11)\n\t"
+ "stfd 2,72(11)\n\t"
+ "stfd 3,80(11)\n\t"
+ "stfd 4,88(11)\n\t"
+ "stfd 5,96(11)\n\t"
+ "stfd 6,104(11)\n\t"
+ "stfd 7,112(11)\n\t"
+ "stfd 8,120(11)\n\t"
+ "stfd 9,128(11)\n\t"
+ "stfd 10,136(11)\n\t"
+ "stfd 11,144(11)\n\t"
+ "stfd 12,152(11)\n\t"
+ "stfd 13,160(11)\n\t"
+ "li 3,176\n\t"
+ "stvx 2,3,11\n\t"
+ "addi 3,3,16\n\t"
+ "stvx 3,3,11\n\t"
+ "addi 3,3,16\n\t"
+ "stvx 4,3,11\n\t"
+ "addi 3,3,16\n\t"
+ "stvx 5,3,11\n\t"
+ "addi 3,3,16\n\t"
+ "stvx 6,3,11\n\t"
+ "addi 3,3,16\n\t"
+ "stvx 7,3,11\n\t"
+ "addi 3,3,16\n\t"
+ "stvx 8,3,11\n\t"
+ "addi 3,3,16\n\t"
+ "stvx 9,3,11\n\t"
+ "addi 3,3,16\n\t"
+ "stvx 10,3,11\n\t"
+ "addi 3,3,16\n\t"
+ "stvx 11,3,11\n\t"
+ "addi 3,3,16\n\t"
+ "stvx 12,3,11\n\t"
+ "addi 3,3,16\n\t"
+ "stvx 13,3,11\n\t"
+ "ld 3,0(11)\n\t"
+ "bctr");
+}
+
+/* Stackframe structure relevant for parameter passing. */
+typedef union
+{
+ double d;
+ unsigned long l;
+ unsigned int i[2];
+} parm_t;
+
+typedef struct sf
+{
+ struct sf *backchain;
+ long a1;
+ long a2;
+ long a3;
+ long a4;
+ long a5;
+ parm_t slot[100];
+} stack_frame_t;
+
+typedef union
+{
+ unsigned int i[4];
+ unsigned long l[2];
+ vector int v;
+} vector_int_t;
+
+/* Paramter passing.
+ s : gpr 3
+ v : vpr 2
+ i : gpr 7
+*/
+void __attribute__ ((noinline))
+fcvi (char *s, vector int v, int i)
+{
+ reg_parms_t lparms = gparms;
+
+ if (s != (char *) lparms.gprs[0])
+ abort();
+
+ if (!vec_all_eq (v, lparms.vrs[0]))
+ abort ();
+
+ if ((long) i != lparms.gprs[4])
+ abort();
+}
+/* Paramter passing.
+ s : gpr 3
+ v : vpr 2
+ w : vpr 3
+*/
+
+void __attribute__ ((noinline))
+fcvv (char *s, vector int v, vector int w)
+{
+ vector int a, c = {6, 8, 10, 12};
+ reg_parms_t lparms = gparms;
+
+ if (s != (char *) lparms.gprs[0])
+ abort();
+
+ if (!vec_all_eq (v, lparms.vrs[0]))
+ abort ();
+
+ if (!vec_all_eq (w, lparms.vrs[1]))
+ abort ();
+
+ a = vec_add (v,w);
+
+ if (!vec_all_eq (a, c))
+ abort ();
+}
+
+/* Paramter passing.
+ s : gpr 3
+ i : gpr 4
+ v : vpr 2
+ w : vpr 3
+*/
+void __attribute__ ((noinline))
+fcivv (char *s, int i, vector int v, vector int w)
+{
+ vector int a, c = {6, 8, 10, 12};
+ reg_parms_t lparms = gparms;
+
+ if (s != (char *) lparms.gprs[0])
+ abort();
+
+ if ((long) i != lparms.gprs[1])
+ abort();
+
+ if (!vec_all_eq (v, lparms.vrs[0]))
+ abort ();
+
+ if (!vec_all_eq (w, lparms.vrs[1]))
+ abort ();
+
+ a = vec_add (v,w);
+
+ if (!vec_all_eq (a, c))
+ abort ();
+}
+
+/* Paramter passing.
+ s : gpr 3
+ v : slot 2-3
+ w : slot 4-5
+*/
+
+void __attribute__ ((noinline))
+fcevv (char *s, ...)
+{
+ vector int a, c = {6, 8, 10, 12};
+ vector int v,w;
+ stack_frame_t *sp;
+ reg_parms_t lparms = gparms;
+ va_list arg;
+
+ va_start (arg, s);
+
+ if (s != (char *) lparms.gprs[0])
+ abort();
+
+ v = va_arg(arg, vector int);
+ w = va_arg(arg, vector int);
+ a = vec_add (v,w);
+
+ if (!vec_all_eq (a, c))
+ abort ();
+
+ /* Go back one frame. */
+ sp = __builtin_frame_address(0);
+ sp = sp->backchain;
+
+ if (sp->slot[2].l != 0x100000002ULL
+ || sp->slot[4].l != 0x500000006ULL)
+ abort();
+}
+
+/* Paramter passing.
+ s : gpr 3
+ i : gpr 4
+ j : gpr 5
+ v : slot 4-5
+ w : slot 6-7
+*/
+void __attribute__ ((noinline))
+fciievv (char *s, int i, int j, ...)
+{
+ vector int a, c = {6, 8, 10, 12};
+ vector int v,w;
+ stack_frame_t *sp;
+ reg_parms_t lparms = gparms;
+ va_list arg;
+
+ va_start (arg, j);
+
+ if (s != (char *) lparms.gprs[0])
+ abort();
+
+ if ((long) i != lparms.gprs[1])
+ abort();
+
+ if ((long) j != lparms.gprs[2])
+ abort();
+
+ v = va_arg(arg, vector int);
+ w = va_arg(arg, vector int);
+ a = vec_add (v,w);
+
+ if (!vec_all_eq (a, c))
+ abort ();
+
+ sp = __builtin_frame_address(0);
+ sp = sp->backchain;
+
+ if (sp->slot[4].l != 0x100000002ULL
+ || sp->slot[6].l != 0x500000006ULL)
+ abort();
+}
+
+void __attribute__ ((noinline))
+fcvevv (char *s, vector int x, ...)
+{
+ vector int a, c = {7, 10, 13, 16};
+ vector int v,w;
+ stack_frame_t *sp;
+ reg_parms_t lparms = gparms;
+ va_list arg;
+
+ va_start (arg, x);
+
+ v = va_arg(arg, vector int);
+ w = va_arg(arg, vector int);
+
+ a = vec_add (v,w);
+ a = vec_add (a, x);
+
+ if (!vec_all_eq (a, c))
+ abort ();
+
+ sp = __builtin_frame_address(0);
+ sp = sp->backchain;
+
+ if (sp->slot[4].l != 0x100000002ULL
+ || sp->slot[6].l != 0x500000006ULL)
+ abort();
+}
+
+void fnp_cvvvv();
+
+int __attribute__((no_instrument_function, noinline))
+main1()
+{
+ char *s = "vv";
+ vector int v = {1, 2, 3, 4};
+ vector int w = {5, 6, 7, 8};
+
+ fcvi (s, v, 2);
+ fcvv (s, v, w);
+ fnp_cvvvv (s, v, w, v, w);
+ fcivv (s, 1, v, w);
+ fcevv (s, v, w);
+ fciievv (s, 1, 2, v, w);
+ fcvevv (s, v, v, w);
+ return 0;
+}
+
+int __attribute__((no_instrument_function))
+main()
+{
+ /* Exit on systems without altivec. */
+ signal (SIGILL, sig_ill_handler);
+ /* Altivec instruction, 'vor %v0,%v0,%v0'. */
+ asm volatile (".long 0x10000484");
+ signal (SIGILL, SIG_DFL);
+
+ return main1 ();
+}
+
+/* Paramter passing.
+ Function called with no prototype.
+ s : gpr 3
+ v : vpr 2 gpr 5-6
+ w : vpr 3 gpr 7-8
+ x : vpr 4 gpr 9-10
+ y : vpr 5 slot 8-9
+*/
+void
+fnp_cvvvv (char *s, vector int v, vector int w,
+ vector int x, vector int y)
+{
+ vector int a, c = {12, 16, 20, 24};
+ reg_parms_t lparms = gparms;
+ stack_frame_t *sp;
+ vector_int_t v0, v1, v2, v3;
+
+ if (s != (char *) lparms.gprs[0])
+ abort();
+
+ if (!vec_all_eq (v, lparms.vrs[0]))
+ abort ();
+
+ if (!vec_all_eq (w, lparms.vrs[1]))
+ abort ();
+
+ if (!vec_all_eq (x, lparms.vrs[2]))
+ abort ();
+
+ if (!vec_all_eq (y, lparms.vrs[3]))
+ abort ();
+
+ a = vec_add (v,w);
+ a = vec_add (a,x);
+ a = vec_add (a,y);
+
+ if (!vec_all_eq (a, c))
+ abort ();
+
+ v0.v = lparms.vrs[0];
+ v1.v = lparms.vrs[1];
+ v2.v = lparms.vrs[2];
+ v3.v = lparms.vrs[3];
+
+ if (v0.l[0] != lparms.gprs[2])
+ abort ();
+
+ if (v0.l[1] != lparms.gprs[3])
+ abort ();
+
+ if (v1.l[0] != lparms.gprs[4])
+ abort ();
+
+ if (v1.l[1] != lparms.gprs[5])
+ abort ();
+
+ if (v2.l[0] != lparms.gprs[6])
+ abort ();
+
+ if (v2.l[1] != lparms.gprs[7])
+ abort ();
+
+ sp = __builtin_frame_address(0);
+ sp = sp->backchain;
+
+ if (sp->slot[8].l != v3.l[0])
+ abort ();
+
+ if (sp->slot[9].l != v3.l[1])
+ abort ();
+}
+
diff --git a/gcc/testsuite/gcc.dg/ppc64-abi-3.c b/gcc/testsuite/gcc.dg/ppc64-abi-3.c
new file mode 100644
index 00000000000..58f161dae6c
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/ppc64-abi-3.c
@@ -0,0 +1,28 @@
+/* { dg-do compile { target powerpc64-*-linux* } } */
+/* { dg-options "-Wall" } */
+/* Testcase to check for ABI compliance of parameter passing
+ for the PowerPC64 ABI. */
+
+typedef int __attribute__((mode(V4SI))) v4si;
+typedef int __attribute__((mode(V2SI))) v2si;
+
+v4si
+f(v4si v)
+{ /* { dg-error "altivec instructions are disabled" } */
+ return v;
+}
+
+v2si
+g(v2si v)
+{
+ return v;
+}
+
+int
+main()
+{
+ v4si v;
+ v2si w;
+ v = f (v); /* { dg-error "altivec instructions are disabled" } */
+ w = g (w);
+}
diff --git a/gcc/testsuite/gcc.dg/pr14092-1.c b/gcc/testsuite/gcc.dg/pr14092-1.c
new file mode 100644
index 00000000000..927ecf6aa3b
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr14092-1.c
@@ -0,0 +1,20 @@
+/* PR c/14092
+ * Origin: bonzini@gnu.org
+ * rejects-valid
+ */
+/* { dg-do compile } */
+
+/* Define this so that we are more portable. The testcase in the
+ PR failed on 64-bit hosts. */
+typedef int __attribute__ ((mode (__pointer__))) intptr_t;
+
+typedef struct _PLCI {
+ unsigned char x;
+ unsigned char buf[1];
+} PLCI;
+
+void nl_ind(PLCI * plci)
+{
+ plci->x = -((intptr_t)(plci->buf)) & 3;
+}
+
diff --git a/gcc/testsuite/gcc.dg/pr14289-1.c b/gcc/testsuite/gcc.dg/pr14289-1.c
new file mode 100644
index 00000000000..652916325c2
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr14289-1.c
@@ -0,0 +1,12 @@
+/* PR middle-end/14289 */
+/* { dg-do compile { target i?86-*-* } } */
+/* { dg-options "-O0" } */
+
+register int a[2] asm("ebx");
+
+void Nase(void)
+{
+ int i=6;
+ a[i]=5; /* { dg-error "address of global" } */
+}
+
diff --git a/gcc/testsuite/gcc.dg/pr14289-2.c b/gcc/testsuite/gcc.dg/pr14289-2.c
new file mode 100644
index 00000000000..7530b468cac
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr14289-2.c
@@ -0,0 +1,12 @@
+/* PR middle-end/14289 */
+/* { dg-do compile { target i?86-*-* } } */
+/* { dg-options "-O0" } */
+
+static register int a[2] asm("ebx"); /* { dg-error "multiple storage" } */
+
+void Nase(void)
+{
+ int i=6;
+ a[i]=5; /* { dg-error "address of global" } */
+}
+
diff --git a/gcc/testsuite/gcc.dg/pr14289-3.c b/gcc/testsuite/gcc.dg/pr14289-3.c
new file mode 100644
index 00000000000..7cfbf78ce05
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr14289-3.c
@@ -0,0 +1,12 @@
+/* PR middle-end/14289 */
+/* { dg-do compile { target i?86-*-* } } */
+/* { dg-options "-O0" } */
+
+extern register int a[2] asm("ebx"); /* { dg-error "multiple storage" } */
+
+void Nase(void)
+{
+ int i=6;
+ a[i]=5; /* { dg-error "address of global" } */
+}
+
diff --git a/gcc/testsuite/gcc.dg/sparc-ret.c b/gcc/testsuite/gcc.dg/sparc-ret.c
index 629bbb155ef..3a4ddea58ec 100644
--- a/gcc/testsuite/gcc.dg/sparc-ret.c
+++ b/gcc/testsuite/gcc.dg/sparc-ret.c
@@ -3,8 +3,8 @@
Making sure that Ultrasparc return instructions do not read
below the stack. */
-/* { dg-do compile { target sparc*-*-* } } */
-/* { dg-options "-mcpu=ultrasparc -O -m32" } */
+/* { dg-do compile { target sparc-*-* } } */
+/* { dg-options "-mcpu=ultrasparc -O" } */
int bar (int a, int b, int c, int d, int e, int f, int g, int h)
@@ -14,7 +14,7 @@ int bar (int a, int b, int c, int d, int e, int f, int g, int h)
toto (&res);
return h;
}
-/* { dg-final { scan-assembler "return\[ \t\]*%i7\\+8\n\[^\n\]*ld\[ \t\]*\\\[%sp\\+96\\\]" } } */
+/* { dg-final { global compiler_flags; if ![string match "*-m64 *" $compiler_flags] { scan-assembler "return\[ \t\]*%i7\\+8\n\[^\n\]*ld\[ \t\]*\\\[%sp\\+96\\\]" } } } */
int bar2 ()
{
@@ -23,5 +23,4 @@ int bar2 ()
toto (&res);
return res;
}
-/* { dg-final { scan-assembler "return\[ \t\]*%i7\\+8\n\[^\n\]*nop" } } */
-
+/* { dg-final { global compiler_flags; if ![string match "*-m64 *" $compiler_flags] { scan-assembler "return\[ \t\]*%i7\\+8\n\[^\n\]*nop" } } } */
diff --git a/gcc/testsuite/gcc.dg/struct-by-value-2.c b/gcc/testsuite/gcc.dg/struct-by-value-2.c
new file mode 100644
index 00000000000..8d5d0bb01c7
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/struct-by-value-2.c
@@ -0,0 +1,15 @@
+/* This testcase caused a sanity check to abort on SPARC64
+ because of a discrepancy between two functions involved
+ in the calculation of structure layout. */
+
+/* { dg-do compile } */
+
+struct S { float f1; int i1; int i2; float f2; };
+
+extern void foo(struct S);
+
+void bar(void)
+{
+ struct S s;
+ foo(s);
+}
diff --git a/gcc/testsuite/gcc.dg/titype-1.c b/gcc/testsuite/gcc.dg/titype-1.c
new file mode 100644
index 00000000000..ee41db9778a
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/titype-1.c
@@ -0,0 +1,34 @@
+/* { dg-do run } */
+
+/* Not all platforms support TImode integers. */
+#if defined(__LP64__) || defined(__sparc__)
+typedef int TItype __attribute__ ((mode (TI))); /* { dg-error "no data type for mode" "TI" { target sparc-sun-solaris2.[0-6]* } } */
+#else
+typedef long TItype;
+#endif
+
+#include <stdarg.h>
+
+extern void abort(void);
+
+
+void foo(int i, ...)
+{
+ TItype q;
+ va_list va;
+
+ va_start(va, i);
+ q = va_arg(va, TItype);
+ va_end(va);
+
+ if (q != 5)
+ abort();
+}
+
+int main(void)
+{
+ TItype q = 5;
+
+ foo(1, q);
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.dg/tls/alias-1.c b/gcc/testsuite/gcc.dg/tls/alias-1.c
index 3372da3d10c..fa8dd29d94b 100644
--- a/gcc/testsuite/gcc.dg/tls/alias-1.c
+++ b/gcc/testsuite/gcc.dg/tls/alias-1.c
@@ -1,4 +1,5 @@
/* { dg-do link } */
+/* { dg-warning "visibility" "unsupported" { target sparc*-sun-solaris2.* } 22 } */
/* Test that encode_section_info handles the change from externally
defined to locally defined (via hidden). Extracted from glibc. */
diff --git a/gcc/testsuite/gcc.dg/torture/mips-clobber-at.c b/gcc/testsuite/gcc.dg/torture/mips-clobber-at.c
new file mode 100644
index 00000000000..7f936984a8d
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/torture/mips-clobber-at.c
@@ -0,0 +1,4 @@
+/* "$1" used to be mapped to the internal frame pointer. */
+/* { dg-do compile { target mips*-*-* } } */
+/* { dg-options "" } */
+int foo () { asm volatile ("#" ::: "$1"); }
diff --git a/gcc/testsuite/gcc.dg/torture/mips-sdata-1.c b/gcc/testsuite/gcc.dg/torture/mips-sdata-1.c
index b665d96cd56..8ffd4d84857 100644
--- a/gcc/testsuite/gcc.dg/torture/mips-sdata-1.c
+++ b/gcc/testsuite/gcc.dg/torture/mips-sdata-1.c
@@ -1,6 +1,6 @@
/* Check that sdata-accesses are applied regardless of size or ABI. */
/* { dg-options -mexplicit-relocs } */
-/* { dg-do compile { target mips*-*-* } } */
+/* { dg-do compile { target mips*-*-elf* } } */
struct s { int x[4]; };
struct s my_struct __attribute__((__section__(".sdata")));
diff --git a/gcc/testsuite/gcc.dg/ultrasp2.c b/gcc/testsuite/gcc.dg/ultrasp2.c
index 1b8e5827a29..1fd821c34e8 100644
--- a/gcc/testsuite/gcc.dg/ultrasp2.c
+++ b/gcc/testsuite/gcc.dg/ultrasp2.c
@@ -4,10 +4,7 @@
/* { dg-do compile } */
/* { dg-options "" } */
-/* { dg-options "-O0 -m64" { target sparc64-*-* } } */
-/* { dg-options "-O0 -m64" { target sparcv9-*-* } } */
-/* { dg-options "" { target sparc-*-solaris2.[0-6] } } */
-/* { dg-options "" { target sparc-*-solaris2.[0-6].* } } */
+/* { dg-options "-O0" { target sparc64-*-* sparcv9-*-* } } */
short foo() {
short i = (short)(1<<15);
diff --git a/gcc/testsuite/gcc.dg/ultrasp4.c b/gcc/testsuite/gcc.dg/ultrasp4.c
index b421688f004..6cd08b23d71 100644
--- a/gcc/testsuite/gcc.dg/ultrasp4.c
+++ b/gcc/testsuite/gcc.dg/ultrasp4.c
@@ -1,10 +1,7 @@
/* Simplified from PR target/5309. */
/* { dg-do compile } */
/* { dg-options "-O2" } */
-/* { dg-options "-O2 -m64 -mcpu=ultrasparc" { target sparc64-*-* } } */
-/* { dg-options "-O2 -m64 -mcpu=ultrasparc" { target sparcv9-*-* } } */
-/* { dg-options "-O2" { target sparc-*-solaris2.[0-6] } } */
-/* { dg-options "-O2" { target sparc-*-solaris2.[0-6].* } } */
+/* { dg-options "-O2 -mcpu=ultrasparc" { target sparc64-*-* sparcv9-*-* } } */
long bar (unsigned int);
long foo (long x, unsigned int y)
diff --git a/gcc/testsuite/gcc.dg/ultrasp8.c b/gcc/testsuite/gcc.dg/ultrasp8.c
index 068b5cae2de..f9289fae0ea 100644
--- a/gcc/testsuite/gcc.dg/ultrasp8.c
+++ b/gcc/testsuite/gcc.dg/ultrasp8.c
@@ -1,7 +1,7 @@
/* PR target/10067 */
/* Originator: <dat94ali@ludat.lth.se> */
/* { dg-do compile { target sparc*-*-* } } */
-/* { dg-options "-O2 -m64 -mtune=supersparc" { target sparc64-*-* } } */
+/* { dg-options "-O2 -mtune=supersparc" { target sparc64-*-* sparcv9-*-* } } */
struct _reent;
diff --git a/gcc/testsuite/gcc.dg/va-arg-1.c b/gcc/testsuite/gcc.dg/va-arg-1.c
index a14823725da..ecd0e4d84bf 100644
--- a/gcc/testsuite/gcc.dg/va-arg-1.c
+++ b/gcc/testsuite/gcc.dg/va-arg-1.c
@@ -7,7 +7,7 @@ volatile int i;
void foo()
{
- i = va_arg(v, char); /* { dg-warning "is promoted to|so you should" "char" } */
- i = va_arg(v, short); /* { dg-warning "is promoted to" "short" } */
- i = va_arg(v, float); /* { dg-warning "is promoted to" "float" } */
+ i = va_arg(v, char); /* { dg-warning "is promoted to|so you should|abort" "char" } */
+ i = va_arg(v, short); /* { dg-warning "is promoted to|abort" "short" } */
+ i = va_arg(v, float); /* { dg-warning "is promoted to|abort" "float" } */
}
diff --git a/gcc/testsuite/gcc.dg/visibility-8.c b/gcc/testsuite/gcc.dg/visibility-8.c
new file mode 100644
index 00000000000..fc3a1055757
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/visibility-8.c
@@ -0,0 +1,16 @@
+/* Test hidden visibility on built-in functions (for libc). PR 13856. */
+/* { dg-do compile } */
+/* { dg-options "-std=gnu99" } */
+/* { dg-require-visibility "" } */
+/* { dg-final { scan-assembler "\\.hidden.*__GI_fputs_unlocked" } } */
+
+int fputs_unlocked (const char *restrict, int *restrict)
+ __asm__ ("__GI_fputs_unlocked")
+ __attribute__ ((visibility ("hidden")));
+
+int
+fputs_unlocked (str, fp)
+ const char *str;
+ int *fp;
+{
+}
diff --git a/gcc/testsuite/gcc.misc-tests/bprob.exp b/gcc/testsuite/gcc.misc-tests/bprob.exp
index 5afbdb1c847..8fde6829f83 100644
--- a/gcc/testsuite/gcc.misc-tests/bprob.exp
+++ b/gcc/testsuite/gcc.misc-tests/bprob.exp
@@ -21,7 +21,7 @@ load_lib target-supports.exp
# Some targets don't have any implementation of __bb_init_func or are
# missing other needed machinery.
-if { ![check_profiling_available] } {
+if { ![check_profiling_available "-fprofile-arcs"] } {
return
}
diff --git a/gcc/testsuite/lib/file-format.exp b/gcc/testsuite/lib/file-format.exp
index a4168b6d614..ab69f930614 100644
--- a/gcc/testsuite/lib/file-format.exp
+++ b/gcc/testsuite/lib/file-format.exp
@@ -24,6 +24,7 @@
proc gcc_target_object_format { } {
global gcc_target_object_format_saved
+ global tool
if [info exists gcc_target_object_format_saved] {
verbose "gcc_target_object_format returning saved $gcc_target_object_format_saved" 2
@@ -33,7 +34,7 @@ proc gcc_target_object_format { } {
puts $open_file "void foo(void) { }"
close $open_file
- gcc_target_compile objfmtst.c objfmtst.o object ""
+ ${tool}_target_compile objfmtst.c objfmtst.o object ""
catch {
set output [exec $objdump_name --file-headers objfmtst.o ]
diff --git a/gcc/testsuite/lib/gcc-dg.exp b/gcc/testsuite/lib/gcc-dg.exp
index c6776679389..8c01f297055 100644
--- a/gcc/testsuite/lib/gcc-dg.exp
+++ b/gcc/testsuite/lib/gcc-dg.exp
@@ -324,7 +324,7 @@ proc dg-require-gc-sections { args } {
# If this target does not support profiling, skip this test.
proc dg-require-profiling { args } {
- if { ![ check_profiling_available ] } {
+ if { ![ check_profiling_available ${args} ] } {
upvar dg-do-what dg-do-what
set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
return
@@ -348,6 +348,17 @@ proc dg-require-dll { args } {
set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
}
+# If this target does not support named sections skip this test.
+
+proc dg-require-named-sections { args } {
+ upvar name name
+
+ if { ![ check_named_sections_available ] } {
+ upvar dg-do-what dg-do-what
+ set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
+ }
+}
+
# Prune any messages matching ARGS[1] (a regexp) from test output.
proc dg-prune-output { args } {
global additional_prunes
diff --git a/gcc/testsuite/lib/prune.exp b/gcc/testsuite/lib/prune.exp
index 8105340cfcd..d706eacd1c0 100644
--- a/gcc/testsuite/lib/prune.exp
+++ b/gcc/testsuite/lib/prune.exp
@@ -1,4 +1,4 @@
-# Copyright (C) 1997, 1999, 2000, 2002 Free Software Foundation, Inc.
+# Copyright (C) 1997, 1999, 2000, 2002, 2004 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -19,15 +19,22 @@
proc prune_gcc_output { text } {
#send_user "Before:$text\n"
- regsub -all "(^|\n)\[^\n\]*: In ((static member )?function|member|method|(copy )?constructor|instantiation|program|subroutine|block-data) \[^\n\]*" $text "" text
+ regsub -all "(^|\n)\[^\n\]*: In ((static member )?function|member|method|(copy )?constructor|destructor|instantiation|program|subroutine|block-data) \[^\n\]*" $text "" text
regsub -all "(^|\n)\[^\n\]*: At (top level|global scope):\[^\n\]*" $text "" text
+ regsub -all "(^|\n)\[^\n\]*: instantiated from \[^\n\]*" $text "" text
regsub -all "(^|\n)collect2: ld returned \[^\n\]*" $text "" text
+ regsub -all "(^|\n)collect: re(compiling|linking)\[^\n\]*" $text "" text
regsub -all "(^|\n)Please submit.*instructions\[^\n\]*" $text "" text
+ regsub -all "(^|\n)\[0-9\]\[0-9\]* errors\." $text "" text
# Ignore harmless -fpic warnings.
regsub -all "(^|\n)\[^\n\]*: warning: -f(pic|PIC) ignored for target\[^\n\]*" $text "" text
regsub -all "(^|\n)\[^\n\]*: warning: -f(pic|PIC)( and -fpic are| is)? not supported\[^\n\]*" $text "" text
+ # Ignore errata warning from IA64 assembler.
+ regsub -all "(^|\n)\[^\n\]*: Additional NOP may be necessary to workaround Itanium processor A/B step errata" $text "" text
+ regsub -all "(^|\n)\[^\n*\]*: Assembler messages:\[^\n\]*" $text "" text
+
# It would be nice to avoid passing anything to gcc that would cause it to
# issue these messages (since ignoring them seems like a hack on our part),
# but that's too difficult in the general case. For example, sometimes
diff --git a/gcc/testsuite/lib/scanasm.exp b/gcc/testsuite/lib/scanasm.exp
index cf414fb25cd..79d93cbf089 100644
--- a/gcc/testsuite/lib/scanasm.exp
+++ b/gcc/testsuite/lib/scanasm.exp
@@ -48,11 +48,14 @@ proc dg-scan { name positive testcase output_file orig_args } {
set text [read $fd]
close $fd
- set match [regexp -- [lindex $orig_args 0] $text]
+ set pattern [lindex $orig_args 0]
+ set printable_pattern [string map {\t \\t \n \\n \r \\r \\ \\\\} $pattern]
+
+ set match [regexp -- $pattern $text]
if { $match == $positive } {
- pass "$testcase $name [lindex $orig_args 0]"
+ pass "$testcase $name $printable_pattern"
} else {
- fail "$testcase $name [lindex $orig_args 0]"
+ fail "$testcase $name $printable_pattern"
}
}
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index bff0a4f4441..946060719ef 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -99,7 +99,8 @@ proc check_visibility_available { } {
proc check_alias_available { } {
global alias_available_saved
-
+ global tool
+
if [info exists alias_available_saved] {
verbose "check_alias_available returning saved $alias_available_saved" 2
} else {
@@ -108,9 +109,10 @@ proc check_alias_available { } {
# Compile a small test program. The definition of "g" is
# necessary to keep the Solaris assembler from complaining
# about the program.
+ puts $f "#ifdef __cplusplus\nextern \"C\"\n#endif\n"
puts $f "void g() {} void f() __attribute__((alias(\"g\")));"
close $f
- set lines [gcc_target_compile "tmp.c" "tmp.o" object ""]
+ set lines [${tool}_target_compile "tmp.c" "tmp.o" object ""]
file delete "tmp.c"
if [string match "" $lines] then {
@@ -148,10 +150,11 @@ proc check_alias_available { } {
proc check_gc_sections_available { } {
global gc_sections_available_saved
+ global tool
if {![info exists gc_sections_available_saved]} {
# Check if the ld used by gcc supports --gc-sections.
- set gcc_ld [lindex [gcc_target_compile "-print-prog-name=ld" "" "none" ""] 0]
+ set gcc_ld [lindex [${tool}_target_compile "-print-prog-name=ld" "" "none" ""] 0]
set ld_output [remote_exec host "$gcc_ld" "--help"]
if { [ string first "--gc-sections" $ld_output ] >= 0 } {
set gc_sections_available_saved 1
@@ -164,9 +167,32 @@ proc check_gc_sections_available { } {
# Return true if profiling is supported on the target.
-proc check_profiling_available { } {
+proc check_profiling_available { test_what } {
global profiling_available_saved
+ verbose "Profiling argument is <$test_what>" 1
+
+ # These conditions depend on the argument so examine them before
+ # looking at the cache variable.
+
+ # Support for -p on solaris2 relies on mcrt1.o which comes with the
+ # vendor compiler. We cannot reliably predict the directory where the
+ # vendor compiler (and thus mcrt1.o) is installed so we can't
+ # necessarily find mcrt1.o even if we have it.
+ if { [istarget *-*-solaris2*] && [lindex $test_what 1] == "-p" } {
+ return 0
+ }
+
+ # Support for -p on irix relies on libprof1.a which doesn't appear to
+ # exist on any irix6 system currently posting testsuite results.
+ # Support for -pg on irix relies on gcrt1.o which doesn't exist yet.
+ # See: http://gcc.gnu.org/ml/gcc/2002-10/msg00169.html
+ if { [istarget mips*-*-irix*]
+ && ([lindex $test_what 1] == "-p" || [lindex $test_what 1] == "-pg") } {
+ return 0
+ }
+
+ # Now examine the cache variable.
if {![info exists profiling_available_saved]} {
# Some targets don't have any implementation of __bb_init_func or are
# missing other needed machinery.
@@ -185,3 +211,24 @@ proc check_profiling_available { } {
return $profiling_available_saved
}
+
+# Return true if named sections are supported on this target.
+# This proc does not cache results, because the answer may vary
+# when cycling over subtarget options (e.g. irix o32/n32/n64) in
+# the same test run.
+proc check_named_sections_available { } {
+ global tool
+
+ verbose "check_named_sections_available compiling testfile" 2
+ set f [open "tmp.c" "w"]
+ # Compile a small test program.
+ puts $f "int __attribute__ ((section(\"whatever\"))) foo;"
+ close $f
+ set lines [${tool}_target_compile "tmp.c" "tmp.o" object ""]
+ file delete "tmp.c"
+
+ # If we got no error messages, everything is OK.
+ set answer [string match "" $lines]
+ verbose "check_named_sections_available returning $answer" 2
+ return $answer
+}
diff --git a/gcc/testsuite/objc.dg/call-super-2.m b/gcc/testsuite/objc.dg/call-super-2.m
index cd7db41bffe..41eafc83780 100644
--- a/gcc/testsuite/objc.dg/call-super-2.m
+++ b/gcc/testsuite/objc.dg/call-super-2.m
@@ -3,6 +3,7 @@
/* Contributed by Ziemowit Laski <zlaski@apple.com>. */
/* { dg-do compile } */
+#include <stddef.h>
#include <objc/objc.h>
#include <objc/Object.h>
@@ -44,11 +45,11 @@
@implementation Derived
+ (int) class_func1
{
- int i = (int)[self class_func0]; /* { dg-warning ".Derived. may not respond to .\\+class_func0." } */
- /* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 47 } */
- /* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 47 } */
- /* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 47 } */
- return i + (int)[super class_func0]; /* { dg-warning ".Object. may not respond to .\\+class_func0." } */
+ int i = (size_t)[self class_func0]; /* { dg-warning ".Derived. may not respond to .\\+class_func0." } */
+ /* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 48 } */
+ /* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 48 } */
+ /* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 48 } */
+ return i + (size_t)[super class_func0]; /* { dg-warning ".Object. may not respond to .\\+class_func0." } */
}
+ (int) class_func2
{
@@ -65,12 +66,12 @@
}
+ (int) class_func5
{
- int i = (int)[Derived class_func0]; /* { dg-warning ".Derived. may not respond to .\\+class_func0." } */
- return i + (int)[Object class_func0]; /* { dg-warning ".Object. may not respond to .\\+class_func0." } */
+ int i = (size_t)[Derived class_func0]; /* { dg-warning ".Derived. may not respond to .\\+class_func0." } */
+ return i + (size_t)[Object class_func0]; /* { dg-warning ".Object. may not respond to .\\+class_func0." } */
}
+ (int) class_func6
{
- return (int)[OBJC_GETCLASS("Object") class_func1]; /* { dg-warning ".Object. may not respond to .\\+class_func1." } */
+ return (size_t)[OBJC_GETCLASS("Object") class_func1]; /* { dg-warning ".Object. may not respond to .\\+class_func1." } */
}
+ (int) class_func7
{
@@ -78,8 +79,8 @@
}
- (int) instance_func1
{
- int i = (int)[self instance_func0]; /* { dg-warning ".Derived. may not respond to .\\-instance_func0." } */
- return i + (int)[super instance_func0]; /* { dg-warning ".Object. may not respond to .\\-instance_func0." } */
+ int i = (size_t)[self instance_func0]; /* { dg-warning ".Derived. may not respond to .\\-instance_func0." } */
+ return i + (size_t)[super instance_func0]; /* { dg-warning ".Object. may not respond to .\\-instance_func0." } */
}
- (int) instance_func2
{
@@ -95,12 +96,12 @@
}
- (int) instance_func5
{
- int i = (int)[Derived instance_func1]; /* { dg-warning ".Derived. may not respond to .\\+instance_func1." } */
- return i + (int)[Object instance_func1]; /* { dg-warning ".Object. may not respond to .\\+instance_func1." } */
+ int i = (size_t)[Derived instance_func1]; /* { dg-warning ".Derived. may not respond to .\\+instance_func1." } */
+ return i + (size_t)[Object instance_func1]; /* { dg-warning ".Object. may not respond to .\\+instance_func1." } */
}
- (int) instance_func6
{
- return (int)[OBJC_GETCLASS("Object") class_func1]; /* { dg-warning ".Object. may not respond to .\\+class_func1." } */
+ return (size_t)[OBJC_GETCLASS("Object") class_func1]; /* { dg-warning ".Object. may not respond to .\\+class_func1." } */
}
- (int) instance_func7
{
@@ -111,11 +112,11 @@
@implementation Derived (Categ)
+ (int) categ_class_func1
{
- int i = (int)[self class_func0]; /* { dg-warning ".Derived. may not respond to .\\+class_func0." } */
+ int i = (size_t)[self class_func0]; /* { dg-warning ".Derived. may not respond to .\\+class_func0." } */
i += [self class_func1];
i += [self categ_class_func2];
- i += (int)[self categ_instance_func1]; /* { dg-warning ".Derived. may not respond to .\\+categ_instance_func1." } */
- return i + (int)[super class_func0]; /* { dg-warning ".Object. may not respond to .\\+class_func0." } */
+ i += (size_t)[self categ_instance_func1]; /* { dg-warning ".Derived. may not respond to .\\+categ_instance_func1." } */
+ return i + (size_t)[super class_func0]; /* { dg-warning ".Object. may not respond to .\\+class_func0." } */
}
+ (int) categ_class_func2
{
@@ -124,13 +125,13 @@
}
- (int) categ_instance_func1
{
- int i = (int)[self instance_func0]; /* { dg-warning ".Derived. may not respond to .\\-instance_func0." } */
+ int i = (size_t)[self instance_func0]; /* { dg-warning ".Derived. may not respond to .\\-instance_func0." } */
i += [(Derived <Func> *)self categ_instance_func2];
- i += (int)[(Object <Func> *)self categ_instance_func2]; /* { dg-warning ".Object. may not respond to .\\-categ_instance_func2." } */
- /* { dg-warning ".\\-categ_instance_func2. not implemented by protocol" "" { target *-*-* } 129 } */
- i += (int)[(id <Func>)self categ_instance_func2]; /* { dg-warning ".\\-categ_instance_func2. not implemented by protocol" } */
+ i += (size_t)[(Object <Func> *)self categ_instance_func2]; /* { dg-warning ".Object. may not respond to .\\-categ_instance_func2." } */
+ /* { dg-warning ".\\-categ_instance_func2. not implemented by protocol" "" { target *-*-* } 130 } */
+ i += (size_t)[(id <Func>)self categ_instance_func2]; /* { dg-warning ".\\-categ_instance_func2. not implemented by protocol" } */
i += [(id)self categ_instance_func2];
- return i + (int)[super instance_func0]; /* { dg-warning ".Object. may not respond to .\\-instance_func0." } */
+ return i + (size_t)[super instance_func0]; /* { dg-warning ".Object. may not respond to .\\-instance_func0." } */
}
- (int) categ_instance_func2
{
diff --git a/gcc/testsuite/objc.dg/desig-init-1.m b/gcc/testsuite/objc.dg/desig-init-1.m
index 44abe440d7b..cd56324f403 100644
--- a/gcc/testsuite/objc.dg/desig-init-1.m
+++ b/gcc/testsuite/objc.dg/desig-init-1.m
@@ -22,7 +22,7 @@
0,
[Cls meth1],
[2 + 1] = 3,
- [2 * 2 ... 5] = (int)[0 meth2], /* { dg-warning "invalid receiver type" } */
+ [2 * 2 ... 5] = (size_t)[0 meth2], /* { dg-warning "invalid receiver type" } */
/* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 25 } */
/* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 25 } */
/* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 25 } */
diff --git a/gcc/testsuite/objc.dg/encode-2.m b/gcc/testsuite/objc.dg/encode-2.m
index ebfd8d3fa2d..b9003696c02 100644
--- a/gcc/testsuite/objc.dg/encode-2.m
+++ b/gcc/testsuite/objc.dg/encode-2.m
@@ -6,7 +6,7 @@
- The k-th parameter (k > 1) has offset equal to the
sum of:
- the offset of the k-1-st paramter
- - the int-promoted size of the k-1-st parameter.
+ - the (void *)-promoted size of the k-1-st parameter.
Note that the encoded offsets need not correspond
to the actual placement of parameters (relative to 'self')
@@ -39,7 +39,7 @@ typedef struct { float x, y; } XXPoint;
typedef struct { float width, height; } XXSize;
typedef struct _XXRect { XXPoint origin; XXSize size; } XXRect;
-(id)setRect:(XXRect)r withInt:(int)i;
--(void) char:(char)c float:(float)f double:(double)d long:(long)l;
+-(void) char:(signed char)c float:(float)f double:(double)d long:(long)l;
@end
XXRect my_rect;
@@ -57,7 +57,7 @@ unsigned offs1, offs2, offs3, offs4, offs5, offs6, offs7;
CHECK_IF(offs == offs1);
return nil;
}
--(void) char:(char)c float:(float)f double:(double)d long:(long)l {
+-(void) char:(signed char)c float:(float)f double:(double)d long:(long)l {
unsigned offs = sizeof(self);
CHECK_IF(offs == offs3);
offs += sizeof(_cmd);
@@ -78,6 +78,7 @@ int main(void) {
Foo *foo = [[Foo alloc] init];
Class fooClass = OBJC_GETCLASS("Foo");
METHOD meth;
+ const char *string;
meth = CLASS_GETINSTANCEMETHOD(fooClass, @selector(setRect:withInt:));
offs2 = 9999;
@@ -88,8 +89,12 @@ int main(void) {
meth = CLASS_GETINSTANCEMETHOD(fooClass, @selector(char:float:double:long:));
offs2 = 9999;
- sscanf(meth->method_types, "v%u@%u:%uc%uf%ud%ul%u", &offs1, &offs2, &offs3,
- &offs4, &offs5, &offs6, &offs7);
+ if (sizeof (long) == 8)
+ string = "v%u@%u:%uc%uf%ud%uq%u";
+ else
+ string = "v%u@%u:%uc%uf%ud%ul%u";
+ sscanf(meth->method_types, string, &offs1, &offs2, &offs3,
+ &offs4, &offs5, &offs6, &offs7);
CHECK_IF(!offs2);
[foo char:'c' float:2.3 double:3.5 long:2345L];
diff --git a/gcc/testsuite/objc.dg/encode-3.m b/gcc/testsuite/objc.dg/encode-3.m
index b30b956b157..20a85b43bdf 100644
--- a/gcc/testsuite/objc.dg/encode-3.m
+++ b/gcc/testsuite/objc.dg/encode-3.m
@@ -28,7 +28,7 @@ union __XXAngle { unsigned int alpha, beta; };
typedef struct { float x, y; union __XXAngle a; } XXPoint;
typedef struct { double width, height; } XXSize;
typedef struct _XXRect { XXPoint origin; XXSize size; struct _XXRect *next; } XXRect;
-- (void) char:(char)c float:(float)f double:(double)d unsigned:(unsigned)u short:(short)s long:(long)l;
+- (void) char:(signed char)c float:(float)f double:(double)d unsigned:(unsigned)u short:(short)s long:(long)l;
- (void *)setRect:(XXRect)r withBool:(ProtoBool)b withInt:(int)i;
+ (Enum *)getEnum:(XXPoint *)pt enum:(enum Enum)e bool:(ObjCBool)b;
+ (ProtoBool **)getBool:(ObjCBool **)b;
@@ -46,8 +46,14 @@ static void scan_initial(const char *pattern) {
}
int main(void) {
+ const char *string;
+
meth = [proto descriptionForInstanceMethod: @selector(char:float:double:unsigned:short:long:)];
- scan_initial("v%u@%u:%uc%uf%ud%uI%us%ul%u");
+ if (sizeof (long) == 8)
+ string = "v%u@%u:%uc%uf%ud%uI%us%uq%u";
+ else
+ string = "v%u@%u:%uc%uf%ud%uI%us%ul%u";
+ scan_initial(string);
CHECK_IF(offs3 == offs2 + sizeof(int) && offs4 == offs3 + sizeof(float));
CHECK_IF(offs5 == offs4 + sizeof(double) && offs6 == offs5 + sizeof(unsigned));
CHECK_IF(offs7 == offs6 + sizeof(int) && totsize == offs7 + sizeof(long));
diff --git a/gcc/testsuite/objc.dg/encode-4.m b/gcc/testsuite/objc.dg/encode-4.m
index 1f179e1dad5..a754c6955cb 100644
--- a/gcc/testsuite/objc.dg/encode-4.m
+++ b/gcc/testsuite/objc.dg/encode-4.m
@@ -31,7 +31,7 @@ struct Nested {
};
@interface Int1: Object {
- char a, b;
+ signed char a, b;
Int2 *int2;
struct Nested nested;
}
diff --git a/gcc/testsuite/objc.dg/proto-qual-1.m b/gcc/testsuite/objc.dg/proto-qual-1.m
index 6ae12909380..0f1c3102d27 100644
--- a/gcc/testsuite/objc.dg/proto-qual-1.m
+++ b/gcc/testsuite/objc.dg/proto-qual-1.m
@@ -8,6 +8,10 @@
#include <objc/objc-api.h>
#endif
+/* The encoded parameter sizes will be rounded up to match pointer alignment. */
+#define ROUND(s,a) (a * ((s + a - 1) / a))
+#define aligned_sizeof(T) ROUND(sizeof(T),__alignof(void *))
+
extern int sscanf(const char *str, const char *format, ...);
extern void abort(void);
#define CHECK_IF(expr) if(!(expr)) abort()
@@ -34,15 +38,15 @@ static void scan_initial(const char *pattern) {
totsize = offs0 = offs1 = offs2 = offs3 = offs4 = offs5 = offs6 = offs7 = (unsigned)-1;
sscanf(meth->types, pattern, &totsize, &offs0, &offs1, &offs2, &offs3,
&offs4, &offs5, &offs6, &offs7);
- CHECK_IF(!offs0 && offs1 == sizeof(id) && offs2 == offs1 + sizeof(SEL) && totsize >= offs2);
+ CHECK_IF(!offs0 && offs1 == aligned_sizeof(id) && offs2 == offs1 + aligned_sizeof(SEL) && totsize >= offs2);
}
int main(void) {
meth = [proto descriptionForInstanceMethod: @selector(address:with:)];
scan_initial("O@%u@%u:%uNR@%uo^^S%u");
- CHECK_IF(offs3 == offs2 + sizeof(id) && totsize == offs3 + sizeof(unsigned));
+ CHECK_IF(offs3 == offs2 + aligned_sizeof(id) && totsize == offs3 + aligned_sizeof(unsigned));
meth = [proto descriptionForClassMethod: @selector(retainArgument:with:)];
scan_initial("Vv%u@%u:%uOo@%un^*%u");
- CHECK_IF(offs3 == offs2 + sizeof(id) && totsize == offs3 + sizeof(char **));
+ CHECK_IF(offs3 == offs2 + aligned_sizeof(id) && totsize == offs3 + aligned_sizeof(char **));
return 0;
}
diff --git a/gcc/testsuite/objc.dg/stret-1.m b/gcc/testsuite/objc.dg/stret-1.m
new file mode 100644
index 00000000000..7e13b32e338
--- /dev/null
+++ b/gcc/testsuite/objc.dg/stret-1.m
@@ -0,0 +1,62 @@
+/* Test for handling of struct-returning methods. */
+/* Contributed by Ziemowit Laski <zlaski@apple.com>. */
+/* { dg-do run } */
+
+#include <objc/Object.h>
+
+extern void abort(void);
+#define CHECK_IF(expr) if(!(expr)) abort()
+
+struct astruct {
+ float a, b;
+} globa = { 1.0, 2.0 };
+
+struct bstruct {
+ float a, b, c, d, e, f;
+} globb = { 1, 2, 3, 4, 5, 6 };
+
+@interface foo : Object
+- (struct astruct) stret;
+- (struct bstruct) stretb;
+@end
+
+@implementation foo : Object
+- (struct astruct) stret { return globa; }
+- (struct bstruct) stretb { return globb; }
+@end
+
+@interface bar: foo
+- (struct astruct) stret;
+- (struct bstruct) stretb;
+@end
+
+@implementation bar
+- (struct astruct) stret { struct astruct a = [super stret]; a.b = 77; return a; }
+- (struct bstruct) stretb { struct bstruct b = [super stretb]; b.e = 99; return b; }
+@end
+
+int main(void)
+{
+ foo *obj = [foo new];
+ bar *obj2 = [bar new];
+ struct astruct loc, loc2;
+ struct bstruct locb, locb2;
+
+ loc = [obj stret];
+ CHECK_IF(loc.a == 1.0 && loc.b == 2.0);
+
+ locb = [obj stretb];
+ CHECK_IF(locb.f == 6 && locb.c == 3);
+ CHECK_IF(locb.e == 5 && locb.b == 2);
+ CHECK_IF(locb.d == 4 && locb.a == 1);
+
+ loc2 = [obj2 stret];
+ CHECK_IF(loc2.a == 1.0 && loc2.b == 77);
+
+ locb2 = [obj2 stretb];
+ CHECK_IF(locb2.f == 6 && locb2.c == 3);
+ CHECK_IF(locb2.e == 99 && locb2.b == 2);
+ CHECK_IF(locb2.d == 4 && locb2.a == 1);
+
+ return 0;
+}
diff --git a/gcc/testsuite/objc.dg/stret-2.m b/gcc/testsuite/objc.dg/stret-2.m
new file mode 100644
index 00000000000..dd9a2e8e5b2
--- /dev/null
+++ b/gcc/testsuite/objc.dg/stret-2.m
@@ -0,0 +1,46 @@
+/* Test for handling of struct-returning methods
+ for the Mac OS X ("NeXT") runtime (which uses specialized entry
+ points). */
+/* Contributed by Ziemowit Laski <zlaski@apple.com>. */
+/* { dg-do compile { target *-*-darwin* } } */
+
+#include <objc/Object.h>
+
+struct astruct {
+ float a, b;
+} glob = { 1.0, 2.0 };
+
+struct bstruct {
+ float a, b, c, d, e, f;
+} globb = { 1, 2, 3, 4, 5, 6 };
+
+@interface foo : Object
+- (struct astruct) stret;
+- (struct bstruct) stretb;
+@end
+
+@implementation foo : Object
+- (struct astruct) stret { return glob; }
+- (struct bstruct) stretb { return globb; }
+@end
+
+@interface bar: foo
+- (struct astruct) stret;
+- (struct bstruct) stretb;
+@end
+
+@implementation bar
+- (struct astruct) stret { return [super stret]; }
+- (struct bstruct) stretb { return [super stretb]; }
+@end
+
+struct astruct afunc(foo *foo_obj) {
+ return [foo_obj stret];
+}
+
+/* { dg-final { scan-assembler "objc_msgSend_stret" } } */
+/* { dg-final { scan-assembler "objc_msgSendSuper_stret" } } */
+
+/* { dg-final { scan-assembler-not "objc_msgSend\[^_S\]" } } */
+/* { dg-final { scan-assembler-not "objc_msgSendSuper\[^_\]" } } */
+
diff --git a/gcc/testsuite/treelang/ChangeLog b/gcc/testsuite/treelang/ChangeLog
index ca767d024fc..f7211c5fd62 100644
--- a/gcc/testsuite/treelang/ChangeLog
+++ b/gcc/testsuite/treelang/ChangeLog
@@ -1,3 +1,7 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
2003-02-25 Tim Josling <tej@melbpc.org.au>
* treetests.exp (run3): set options to force aggressive GC, to
diff --git a/gcc/toplev.c b/gcc/toplev.c
index 3ac7d737393..dfaeea42f2f 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -78,6 +78,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "opts.h"
#include "coverage.h"
#include "value-prof.h"
+#include "alloc-pool.h"
#if defined (DWARF2_UNWIND_INFO) || defined (DWARF2_DEBUGGING_INFO)
#include "dwarf2out.h"
@@ -96,6 +97,10 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
declarations for e.g. AIX 4.x. */
#endif
+#ifndef HAVE_conditional_execution
+#define HAVE_conditional_execution 0
+#endif
+
/* Carry information from ASM_DECLARE_OBJECT_NAME
to ASM_FINISH_DECLARE_OBJECT. */
@@ -276,8 +281,8 @@ enum dump_file_index
DFI_postreload,
DFI_flow2,
DFI_peephole2,
- DFI_rnreg,
DFI_ce3,
+ DFI_rnreg,
DFI_bbro,
DFI_branch_target_load,
DFI_sched2,
@@ -327,8 +332,8 @@ static struct dump_file_info dump_file[DFI_MAX] =
{ "postreload", 'o', 1, 0, 0 },
{ "flow2", 'w', 1, 0, 0 },
{ "peephole2", 'z', 1, 0, 0 },
- { "rnreg", 'n', 1, 0, 0 },
{ "ce3", 'E', 1, 0, 0 },
+ { "rnreg", 'n', 1, 0, 0 },
{ "bbro", 'B', 1, 0, 0 },
{ "btl", 'd', 1, 0, 0 }, /* Yes, duplicate enable switch. */
{ "sched2", 'R', 1, 0, 0 },
@@ -994,6 +999,23 @@ int flag_evaluation_order = 0;
/* Add or remove a leading underscore from user symbols. */
int flag_leading_underscore = -1;
+/* The version of the C++ ABI in use. The following values are
+ allowed:
+
+ 0: The version of the ABI believed most conformant with the
+ C++ ABI specification. This ABI may change as bugs are
+ discovered and fixed. Therefore, 0 will not necessarily
+ indicate the same ABI in different versions of G++.
+
+ 1: The version of the ABI first used in G++ 3.2.
+
+ 2: The version of the ABI first used in G++ 3.4.
+
+ Additional positive integers will be assigned as new versions of
+ the ABI become the default version of the ABI. */
+
+int flag_abi_version = 2;
+
/* The user symbol prefix after having resolved same. */
const char *user_label_prefix;
@@ -2294,12 +2316,14 @@ rest_of_handle_regrename (tree decl, rtx insns)
static void
rest_of_handle_reorder_blocks (tree decl, rtx insns)
{
+ bool changed;
open_dump_file (DFI_bbro, decl);
/* Last attempt to optimize CFG, as scheduling, peepholing and insn
splitting possibly introduced more crossjumping opportunities. */
- cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_UPDATE_LIFE
- | (flag_crossjumping ? CLEANUP_CROSSJUMP : 0));
+ changed = cleanup_cfg (CLEANUP_EXPENSIVE
+ | (!HAVE_conditional_execution
+ ? CLEANUP_UPDATE_LIFE : 0));
if (flag_sched2_use_traces && flag_schedule_insns_after_reload)
tracer ();
@@ -2307,8 +2331,16 @@ rest_of_handle_reorder_blocks (tree decl, rtx insns)
reorder_basic_blocks ();
if (flag_reorder_blocks
|| (flag_sched2_use_traces && flag_schedule_insns_after_reload))
- cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_UPDATE_LIFE);
-
+ changed |= cleanup_cfg (CLEANUP_EXPENSIVE
+ | (!HAVE_conditional_execution
+ ? CLEANUP_UPDATE_LIFE : 0));
+
+ /* On conditional execution targets we can not update the life cheaply, so
+ we deffer the updating to after both cleanups. This may lose some cases
+ but should not be terribly bad. */
+ if (changed && HAVE_conditional_execution)
+ update_life_info (NULL, UPDATE_LIFE_GLOBAL_RM_NOTES,
+ PROP_DEATH_NOTES | PROP_REG_INFO);
close_dump_file (DFI_bbro, print_rtl_with_bb, insns);
}
@@ -2796,6 +2828,7 @@ rest_of_handle_life (tree decl, rtx insns)
life_analysis (insns, rtl_dump_file, PROP_FINAL);
if (optimize)
cleanup_cfg ((optimize ? CLEANUP_EXPENSIVE : 0) | CLEANUP_UPDATE_LIFE
+ | CLEANUP_LOG_LINKS
| (flag_thread_jumps ? CLEANUP_THREADING : 0));
timevar_pop (TV_FLOW);
@@ -2885,6 +2918,13 @@ rest_of_handle_cse2 (tree decl, rtx insns)
dump_flow_info (rtl_dump_file);
/* CFG is no longer maintained up-to-date. */
tem = cse_main (insns, max_reg_num (), 1, rtl_dump_file);
+
+ /* Run a pass to eliminate duplicated assignments to condition code
+ registers. We have to run this after bypass_jumps, because it
+ makes it harder for that pass to determine whether a jump can be
+ bypassed safely. */
+ cse_condition_code_reg ();
+
purge_all_dead_edges (0);
delete_trivially_dead_insns (insns, max_reg_num ());
@@ -3286,6 +3326,9 @@ rest_of_compilation (tree decl)
if (flag_loop_optimize)
rest_of_handle_loop_optimize (decl, insns);
+
+ if (flag_gcse)
+ rest_of_handle_jump_bypass (decl, insns);
}
timevar_push (TV_FLOW);
@@ -3313,16 +3356,11 @@ rest_of_compilation (tree decl)
if (flag_tracer)
rest_of_handle_tracer (decl, insns);
- if (optimize > 0)
- {
- if (flag_unswitch_loops
+ if (optimize > 0
+ && (flag_unswitch_loops
|| flag_peel_loops
- || flag_unroll_loops)
- rest_of_handle_loop2 (decl, insns);
-
- if (flag_gcse)
- rest_of_handle_jump_bypass (decl, insns);
- }
+ || flag_unroll_loops))
+ rest_of_handle_loop2 (decl, insns);
if (flag_web)
rest_of_handle_web (decl, insns);
@@ -3440,7 +3478,7 @@ rest_of_compilation (tree decl)
if (optimize)
{
- life_analysis (insns, rtl_dump_file, PROP_FINAL);
+ life_analysis (insns, rtl_dump_file, PROP_POSTRELOAD);
cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_UPDATE_LIFE
| (flag_crossjumping ? CLEANUP_CROSSJUMP : 0));
@@ -3474,16 +3512,22 @@ rest_of_compilation (tree decl)
}
#endif
+ open_dump_file (DFI_ce3, decl);
+ if (optimize)
+ /* Last attempt to optimize CFG, as scheduling, peepholing and insn
+ splitting possibly introduced more crossjumping opportunities. */
+ cleanup_cfg (CLEANUP_EXPENSIVE
+ | CLEANUP_UPDATE_LIFE
+ | (flag_crossjumping ? CLEANUP_CROSSJUMP : 0));
if (flag_if_conversion2)
{
timevar_push (TV_IFCVT2);
- open_dump_file (DFI_ce3, decl);
if_convert (1);
- close_dump_file (DFI_ce3, print_rtl_with_bb, insns);
timevar_pop (TV_IFCVT2);
}
+ close_dump_file (DFI_ce3, print_rtl_with_bb, insns);
if (optimize > 0)
{
@@ -4563,6 +4607,8 @@ finalize (void)
stringpool_statistics ();
dump_tree_statistics ();
dump_rtx_statistics ();
+ dump_varray_statistics ();
+ dump_alloc_pool_statistics ();
}
/* Free up memory for the benefit of leak detectors. */
diff --git a/gcc/toplev.h b/gcc/toplev.h
index 3c1a1eb3021..d823d54353d 100644
--- a/gcc/toplev.h
+++ b/gcc/toplev.h
@@ -1,5 +1,6 @@
/* toplev.h - Various declarations for functions found in toplev.c
- Copyright (C) 1998, 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004
+ Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index ea8edcf70dc..dac0f040e4f 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -1,5 +1,5 @@
/* Control and data flow functions for trees.
- Copyright 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Contributed by Alexandre Oliva <aoliva@redhat.com>
This file is part of GCC.
@@ -39,7 +39,7 @@ Boston, MA 02111-1307, USA. */
#include "langhooks.h"
#include "cgraph.h"
#include "intl.h"
-
+#include "diagnostic.h"
/* This should be eventually be generalized to other languages, but
this would require a shared function-as-trees infrastructure. */
@@ -95,9 +95,6 @@ typedef struct inline_data
int in_target_cleanup_p;
/* A list of the functions current function has inlined. */
varray_type inlined_fns;
- /* The approximate number of instructions we have inlined in the
- current call stack. */
- int inlined_insns;
/* We use the same mechanism to build clones that we do to perform
inlining. However, there are a few places where we need to
distinguish between those two situations. This flag is true if
@@ -575,8 +572,11 @@ copy_body_r (tree *tp, int *walk_subtrees, void *data)
/* Local variables and labels need to be replaced by equivalent
variables. We don't want to copy static variables; there's only
one of those, no matter how many times we inline the containing
- function. */
- else if ((*lang_hooks.tree_inlining.auto_var_in_fn_p) (*tp, fn))
+ function.
+ We do not also want to copy the label which we put into
+ GOTO_STMT which replaced RETURN_STMT. */
+ else if (*tp != id->ret_label
+ && (*lang_hooks.tree_inlining.auto_var_in_fn_p) (*tp, fn))
{
tree new_decl;
@@ -1569,11 +1569,6 @@ expand_call_inline (tree *tp, int *walk_subtrees, void *data)
the equivalent inlined version either. */
TREE_USED (*tp) = 1;
- /* Our function now has more statements than it did before. */
- DECL_ESTIMATED_INSNS (VARRAY_TREE (id->fns, 0)) += DECL_ESTIMATED_INSNS (fn);
- /* For accounting, subtract one for the saved call/ret. */
- id->inlined_insns += DECL_ESTIMATED_INSNS (fn) - 1;
-
/* Update callgraph if needed. */
if (id->decl)
{
@@ -1590,11 +1585,6 @@ expand_call_inline (tree *tp, int *walk_subtrees, void *data)
}
VARRAY_POP (id->fns);
- /* If we've returned to the top level, clear out the record of how
- much inlining has been done. */
- if (VARRAY_ACTIVE_SIZE (id->fns) == id->first_inlined_fn)
- id->inlined_insns = 0;
-
/* Don't walk into subtrees. We've already handled them above. */
*walk_subtrees = 0;
@@ -1626,6 +1616,12 @@ optimize_inline_calls (tree fn)
inline_data id;
tree prev_fn;
+ /* There is no point in performing inlining if errors have already
+ occurred -- and we might crash if we try to inline invalid
+ code. */
+ if (errorcount || sorrycount)
+ return;
+
/* Clear out ID. */
memset (&id, 0, sizeof (id));
@@ -1634,9 +1630,6 @@ optimize_inline_calls (tree fn)
/* Don't allow recursion into FN. */
VARRAY_TREE_INIT (id.fns, 32, "fns");
VARRAY_PUSH_TREE (id.fns, fn);
- if (!DECL_ESTIMATED_INSNS (fn))
- DECL_ESTIMATED_INSNS (fn)
- = (*lang_hooks.tree_inlining.estimate_num_insns) (fn);
/* Or any functions that aren't finished yet. */
prev_fn = NULL_TREE;
if (current_function_decl)
diff --git a/gcc/tree-optimize.c b/gcc/tree-optimize.c
index f1957ab20e7..9df5adbd79e 100644
--- a/gcc/tree-optimize.c
+++ b/gcc/tree-optimize.c
@@ -1,5 +1,5 @@
/* Control and data flow functions for trees.
- Copyright 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
@@ -65,13 +65,13 @@ clear_decl_rtl (tree *tp, int *walk_subtrees ATTRIBUTE_UNUSED, void *data)
{
case VAR_DECL:
nonstatic_p = !TREE_STATIC (t) && !DECL_EXTERNAL (t);
- local_p = DECL_CONTEXT (t) == data;
+ local_p = decl_function_context (t) == data;
break;
case PARM_DECL:
case LABEL_DECL:
nonstatic_p = true;
- local_p = DECL_CONTEXT (t) == data;
+ local_p = decl_function_context (t) == data;
break;
case RESULT_DECL:
@@ -205,18 +205,20 @@ tree_rest_of_compilation (tree fndecl, bool nested_p)
walk_tree_without_duplicates (&DECL_SAVED_TREE (fndecl),
clear_decl_rtl,
fndecl);
-
- if (DECL_SAVED_INSNS (fndecl) == 0 && !nested_p && !flag_inline_trees)
+ if (!cgraph_function_possibly_inlined_p (fndecl))
{
- /* Stop pointing to the local nodes about to be freed.
- But DECL_INITIAL must remain nonzero so we know this
- was an actual function definition.
- For a nested function, this is done in c_pop_function_context.
- If rest_of_compilation set this to 0, leave it 0. */
- if (DECL_INITIAL (fndecl) != 0)
- DECL_INITIAL (fndecl) = error_mark_node;
-
- DECL_ARGUMENTS (fndecl) = 0;
+ DECL_SAVED_TREE (fndecl) = NULL;
+ if (DECL_SAVED_INSNS (fndecl) == 0
+ && !cgraph_node (fndecl)->origin)
+ {
+ /* Stop pointing to the local nodes about to be freed.
+ But DECL_INITIAL must remain nonzero so we know this
+ was an actual function definition.
+ For a nested function, this is done in c_pop_function_context.
+ If rest_of_compilation set this to 0, leave it 0. */
+ if (DECL_INITIAL (fndecl) != 0)
+ DECL_INITIAL (fndecl) = error_mark_node;
+ }
}
input_location = saved_loc;
diff --git a/gcc/tree.c b/gcc/tree.c
index da94c4a5893..14933ca6e4c 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -168,8 +168,7 @@ tree_size (tree node)
case REAL_CST: return sizeof (struct tree_real_cst);
case COMPLEX_CST: return sizeof (struct tree_complex);
case VECTOR_CST: return sizeof (struct tree_vector);
- case STRING_CST:
- return sizeof (struct tree_string) + TREE_STRING_LENGTH (node);
+ case STRING_CST: return sizeof (struct tree_string);
default:
return (*lang_hooks.tree_size) (code);
}
@@ -213,8 +212,8 @@ make_node (enum tree_code code)
struct tree_common ttmp;
/* We can't allocate a TREE_VEC without knowing how many elements
- it will have; likewise a STRING_CST without knowing the length. */
- if (code == TREE_VEC || code == STRING_CST)
+ it will have. */
+ if (code == TREE_VEC)
abort ();
TREE_SET_CODE ((tree)&ttmp, code);
@@ -526,23 +525,10 @@ build_real_from_int_cst (tree type, tree i)
tree
build_string (int len, const char *str)
{
- tree s;
- size_t length;
-
- length = len + sizeof (struct tree_string);
-
-#ifdef GATHER_STATISTICS
- tree_node_counts[(int) c_kind]++;
- tree_node_sizes[(int) c_kind] += length;
-#endif
+ tree s = make_node (STRING_CST);
- s = ggc_alloc_tree (length);
-
- memset (s, 0, sizeof (struct tree_common));
- TREE_SET_CODE (s, STRING_CST);
TREE_STRING_LENGTH (s) = len;
- memcpy ((char *) TREE_STRING_POINTER (s), str, len);
- ((char *) TREE_STRING_POINTER (s))[len] = '\0';
+ TREE_STRING_POINTER (s) = ggc_alloc_string (str, len);
return s;
}
@@ -1656,6 +1642,13 @@ unsafe_for_reeval (tree expr)
unsafeness = 1;
break;
+ case EXIT_BLOCK_EXPR:
+ /* EXIT_BLOCK_LABELED_BLOCK, a.k.a. TREE_OPERAND (expr, 0), holds
+ a reference to an ancestor LABELED_BLOCK, so we need to avoid
+ unbounded recursion in the 'e' traversal code below. */
+ exp = EXIT_BLOCK_RETURN (expr);
+ return exp ? unsafe_for_reeval (exp) : 0;
+
default:
tmp = (*lang_hooks.unsafe_for_reeval) (expr);
if (tmp >= 0)
@@ -4863,6 +4856,10 @@ build_common_tree_nodes (int signed_char)
unsigned_intSI_type_node = make_unsigned_type (GET_MODE_BITSIZE (SImode));
unsigned_intDI_type_node = make_unsigned_type (GET_MODE_BITSIZE (DImode));
unsigned_intTI_type_node = make_unsigned_type (GET_MODE_BITSIZE (TImode));
+
+ access_public_node = get_identifier ("public");
+ access_protected_node = get_identifier ("protected");
+ access_private_node = get_identifier ("private");
}
/* Call this function after calling build_common_tree_nodes and set_sizetype.
diff --git a/gcc/tree.def b/gcc/tree.def
index 48028ee351f..78919740da3 100644
--- a/gcc/tree.def
+++ b/gcc/tree.def
@@ -274,7 +274,7 @@ DEFTREECODE (COMPLEX_CST, "complex_cst", 'c', 0)
/* Contents are in TREE_VECTOR_CST_ELTS field. */
DEFTREECODE (VECTOR_CST, "vector_cst", 'c', 0)
-/* Contents are TREE_STRING_LENGTH and the actual contents of the string. */
+/* Contents are TREE_STRING_LENGTH and TREE_STRING_POINTER fields. */
DEFTREECODE (STRING_CST, "string_cst", 'c', 0)
/* Declarations. All references to names are represented as ..._DECL
diff --git a/gcc/tree.h b/gcc/tree.h
index 7503fa5aaef..96de4a46760 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -210,6 +210,8 @@ struct tree_common GTY(())
TREE_PROTECTED in
BLOCK
..._DECL
+ CALL_FROM_THUNK_P in
+ CALL_EXPR
side_effects_flag:
@@ -265,6 +267,7 @@ struct tree_common GTY(())
TREE_DEPRECATED in
..._DECL
+
*/
/* Define accessors for the fields that all tree nodes have
@@ -623,6 +626,10 @@ extern void tree_operand_check_failed (int, enum tree_code,
argument list. */
#define CALL_EXPR_HAS_RETURN_SLOT_ADDR(NODE) ((NODE)->common.private_flag)
+/* In a CALL_EXPR, means that the call is the jump from a thunk to the
+ thunked-to function. */
+#define CALL_FROM_THUNK_P(NODE) ((NODE)->common.protected_flag)
+
/* In a type, nonzero means that all objects of the type are guaranteed by the
language or front-end to be properly aligned, so we can indicate that a MEM
of this type is aligned at least to the alignment of the type, even if it
@@ -700,13 +707,13 @@ struct tree_real_cst GTY(())
/* In a STRING_CST */
#define TREE_STRING_LENGTH(NODE) (STRING_CST_CHECK (NODE)->string.length)
-#define TREE_STRING_POINTER(NODE) (STRING_CST_CHECK (NODE)->string.str)
+#define TREE_STRING_POINTER(NODE) (STRING_CST_CHECK (NODE)->string.pointer)
struct tree_string GTY(())
{
struct tree_common common;
int length;
- const char str[1];
+ const char *pointer;
};
/* In a COMPLEX_CST node. */
@@ -1620,13 +1627,6 @@ struct tree_type GTY(())
#define DECL_POINTER_ALIAS_SET_KNOWN_P(NODE) \
(DECL_POINTER_ALIAS_SET (NODE) != - 1)
-/* In a FUNCTION_DECL for which DECL_BUILT_IN does not hold, this is
- the approximate number of statements in this function. There is
- no need for this number to be exact; it is only used in various
- heuristics regarding optimization. */
-#define DECL_ESTIMATED_INSNS(NODE) \
- (FUNCTION_DECL_CHECK (NODE)->decl.u1.i)
-
/* Nonzero for a decl which is at file scope. */
#define DECL_FILE_SCOPE_P(EXP) \
(! DECL_CONTEXT (EXP) \
@@ -1816,6 +1816,10 @@ enum tree_index
TI_BITSIZE_ONE,
TI_BITSIZE_UNIT,
+ TI_PUBLIC,
+ TI_PROTECTED,
+ TI_PRIVATE,
+
TI_BOOLEAN_FALSE,
TI_BOOLEAN_TRUE,
@@ -1901,9 +1905,9 @@ extern GTY(()) tree global_trees[TI_MAX];
#define bitsize_unit_node global_trees[TI_BITSIZE_UNIT]
/* Base access nodes. */
-#define access_public_node NULL_TREE
-#define access_protected_node size_zero_node
-#define access_private_node size_one_node
+#define access_public_node global_trees[TI_PUBLIC]
+#define access_protected_node global_trees[TI_PROTECTED]
+#define access_private_node global_trees[TI_PRIVATE]
#define null_pointer_node global_trees[TI_NULL_POINTER]
diff --git a/gcc/treelang/ChangeLog b/gcc/treelang/ChangeLog
index e4281b080a8..f4ac94b42e3 100644
--- a/gcc/treelang/ChangeLog
+++ b/gcc/treelang/ChangeLog
@@ -1,3 +1,21 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-03-21 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * treelang.texi: Update link to "G++ and GCC".
+
+2004-01-30 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Make-lang.in (doc/treelang.dvi): Use $(abs_docdir).
+
+2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Make-lang.in: Replace $(docdir) with doc.
+ (treelang.info, treelang.srcinfo): New rules.
+ (treelang.man, treelang.man): Dummy entries.
+
2004-01-15 Kelley Cook <kcook@gcc.gnu.org>
* Make-lang.in (TREE_GENERATED): Delete reference to $(parsedir).
diff --git a/gcc/treelang/Make-lang.in b/gcc/treelang/Make-lang.in
index 1cb438ad8eb..d0d50288e11 100644
--- a/gcc/treelang/Make-lang.in
+++ b/gcc/treelang/Make-lang.in
@@ -139,29 +139,29 @@ treelang.all.cross:
treelang.start.encap:
treelang.rest.encap:
+treelang.man:
+treelang.srcman:
treelang.tags: force
cd $(srcdir)/treelang; etags -o TAGS.sub *.y *.l *.c *.h; \
etags --include TAGS.sub --include ../TAGS.sub
-info:: $(docobjdir)/treelang.info
-dvi:: $(docobjdir)/treelang.dvi
+treelang.info: doc/treelang.info
-$(docobjdir)/treelang.info: treelang/treelang.texi \
- $(docdir)/include/gcc-common.texi \
- $(docdir)/include/gpl.texi \
- $(docdir)/include/fdl.texi \
- $(docdir)/include/funding.texi \
- stmp-docobjdir
+treelang.srcinfo: doc/treelang.info
+ -cp -p $^ $(srcdir)/doc
+
+dvi:: doc/treelang.dvi
+
+doc/treelang.info: treelang/treelang.texi $(docdir)/include/gcc-common.texi \
+ $(docdir)/include/gpl.texi $(docdir)/include/fdl.texi \
+ $(docdir)/include/funding.texi
$(MAKEINFO) $(MAKEINFOFLAGS) -I$(docdir)/include -o $@ $<
-$(docobjdir)/treelang.dvi: treelang/treelang.texi \
- $(docdir)/include/gcc-common.texi \
- $(docdir)/include/gpl.texi \
- $(docdir)/include/fdl.texi \
- $(docdir)/include/funding.texi \
- stmp-docobjdir
- $(TEXI2DVI) -I $(docdir)/include -o $@ $<
+doc/treelang.dvi: treelang/treelang.texi $(docdir)/include/gcc-common.texi \
+ $(docdir)/include/gpl.texi $(docdir)/include/fdl.texi \
+ $(docdir)/include/funding.texi
+ $(TEXI2DVI) -I $(abs_docdir)/include -o $@ $<
#
# Install hooks:
diff --git a/gcc/treelang/treelang.texi b/gcc/treelang/treelang.texi
index 501c4bfca95..789ffffb7f5 100644
--- a/gcc/treelang/treelang.texi
+++ b/gcc/treelang/treelang.texi
@@ -12,8 +12,8 @@
@set version-treelang 1.0
-@set last-update 2001-07-30
-@set copyrights-treelang 1995,1996,1997,1998,1999,2000,2001,2002
+@set last-update 2004-03-21
+@set copyrights-treelang 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004
@set email-general gcc@@gcc.gnu.org
@set email-bugs gcc-bugs@@gcc.gnu.org or bug-gcc@@gnu.org
@@ -885,7 +885,8 @@ files and accepts Treelang-specific command-line options, plus some
command-line options that are designed to cater to Treelang users
but apply to other languages as well.
-@xref{G++ and GCC,,Compile C; C++; or Objective-C,GCC,Using and Porting GCC},
+@xref{G++ and GCC,,Programming Languages Supported by GCC,GCC,Using
+the GNU Compiler Collection (GCC)},
for information on the way different languages are handled
by the GCC compiler (@code{gcc}).
diff --git a/gcc/unwind-dw2-fde.h b/gcc/unwind-dw2-fde.h
index 89e038a0575..16ffa9496c2 100644
--- a/gcc/unwind-dw2-fde.h
+++ b/gcc/unwind-dw2-fde.h
@@ -1,5 +1,5 @@
/* Subroutines needed for unwinding stack frames for exception handling. */
-/* Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002
+/* Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004
Free Software Foundation, Inc.
Contributed by Jason Merrill <jason@cygnus.com>.
diff --git a/gcc/unwind-pe.h b/gcc/unwind-pe.h
index 52e618c1aff..398165749a5 100644
--- a/gcc/unwind-pe.h
+++ b/gcc/unwind-pe.h
@@ -1,5 +1,5 @@
/* Exception handling and frame unwind runtime interface routines.
- Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/unwind.h b/gcc/unwind.h
index 64768c0139b..21f3feb86bc 100644
--- a/gcc/unwind.h
+++ b/gcc/unwind.h
@@ -1,5 +1,5 @@
/* Exception handling and frame unwind runtime interface routines.
- Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc.
This file is part of GCC.
diff --git a/gcc/varasm.c b/gcc/varasm.c
index e44d288dbc8..e61b5b4a811 100644
--- a/gcc/varasm.c
+++ b/gcc/varasm.c
@@ -2057,7 +2057,7 @@ struct rtx_const GTY(())
/* Uniquize all constants that appear in memory.
Each constant in memory thus far output is recorded
- in `const_hash_table'. */
+ in `const_desc_table'. */
struct constant_descriptor_tree GTY(())
{
@@ -2104,9 +2104,18 @@ const_hash_1 (const tree exp)
return real_hash (TREE_REAL_CST_PTR (exp));
case STRING_CST:
- p = TREE_STRING_POINTER (exp);
- len = TREE_STRING_LENGTH (exp);
+ if (flag_writable_strings)
+ {
+ p = (char *) &exp;
+ len = sizeof exp;
+ }
+ else
+ {
+ p = TREE_STRING_POINTER (exp);
+ len = TREE_STRING_LENGTH (exp);
+ }
break;
+
case COMPLEX_CST:
return (const_hash_1 (TREE_REALPART (exp)) * 5
+ const_hash_1 (TREE_IMAGPART (exp)));
@@ -2221,7 +2230,7 @@ compare_constant (const tree t1, const tree t2)
case STRING_CST:
if (flag_writable_strings)
- return 0;
+ return t1 == t2;
if (TYPE_MODE (TREE_TYPE (t1)) != TYPE_MODE (TREE_TYPE (t2)))
return 0;
@@ -2425,7 +2434,10 @@ build_constant_desc (tree exp)
struct constant_descriptor_tree *desc;
desc = ggc_alloc (sizeof (*desc));
- desc->value = copy_constant (exp);
+ if (flag_writable_strings && TREE_CODE (exp) == STRING_CST)
+ desc->value = exp;
+ else
+ desc->value = copy_constant (exp);
/* Create a string containing the label name, in LABEL. */
labelno = const_labelno++;
@@ -2466,7 +2478,7 @@ build_constant_desc (tree exp)
If DEFER is nonzero, this constant can be deferred and output only
if referenced in the function after all optimizations.
- The const_hash_table records which constants already have label strings. */
+ `const_desc_table' records which constants already have label strings. */
rtx
output_constant_def (tree exp, int defer)
@@ -3594,8 +3606,10 @@ initializer_constant_valid_p (tree value, tree endtype)
endtype);
}
- /* Allow conversions to union types if the value inside is okay. */
- if (TREE_CODE (TREE_TYPE (value)) == UNION_TYPE)
+ /* Allow conversions to struct or union types if the value
+ inside is okay. */
+ if (TREE_CODE (TREE_TYPE (value)) == RECORD_TYPE
+ || TREE_CODE (TREE_TYPE (value)) == UNION_TYPE)
return initializer_constant_valid_p (TREE_OPERAND (value, 0),
endtype);
break;
@@ -4490,16 +4504,16 @@ make_decl_one_only (tree decl)
TREE_PUBLIC (decl) = 1;
- if (TREE_CODE (decl) == VAR_DECL
- && (DECL_INITIAL (decl) == 0 || DECL_INITIAL (decl) == error_mark_node))
- DECL_COMMON (decl) = 1;
- else if (SUPPORTS_ONE_ONLY)
+ if (SUPPORTS_ONE_ONLY)
{
#ifdef MAKE_DECL_ONE_ONLY
MAKE_DECL_ONE_ONLY (decl);
#endif
DECL_ONE_ONLY (decl) = 1;
}
+ else if (TREE_CODE (decl) == VAR_DECL
+ && (DECL_INITIAL (decl) == 0 || DECL_INITIAL (decl) == error_mark_node))
+ DECL_COMMON (decl) = 1;
else if (SUPPORTS_WEAK)
DECL_WEAK (decl) = 1;
else
diff --git a/gcc/varray.c b/gcc/varray.c
index dd4640d5d77..177d2f16f18 100644
--- a/gcc/varray.c
+++ b/gcc/varray.c
@@ -1,5 +1,5 @@
/* Virtual array support.
- Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003
+ Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
Contributed by Cygnus Solutions.
@@ -27,9 +27,60 @@
#include "tm.h"
#include "varray.h"
#include "ggc.h"
+#include "hashtab.h"
#define VARRAY_HDR_SIZE (sizeof (struct varray_head_tag) - sizeof (varray_data))
+#ifdef GATHER_STATISTICS
+
+/* Store infromation about each particular varray. */
+struct varray_descriptor
+{
+ const char *name;
+ int allocated;
+ int created;
+ int resized;
+ int copied;
+};
+
+/* Hashtable mapping varray names to descriptors. */
+static htab_t varray_hash;
+
+/* Hashtable helpers. */
+static hashval_t
+hash_descriptor (const void *p)
+{
+ const struct varray_descriptor *d = p;
+ return htab_hash_pointer (d->name);
+}
+static int
+eq_descriptor (const void *p1, const void *p2)
+{
+ const struct varray_descriptor *d = p1;
+ return d->name == p2;
+}
+
+/* For given name, return descriptor, create new if needed. */
+static struct varray_descriptor *
+varray_descriptor (const char *name)
+{
+ struct varray_descriptor **slot;
+
+ if (!varray_hash)
+ varray_hash = htab_create (10, hash_descriptor, eq_descriptor, NULL);
+
+ slot = (struct varray_descriptor **)
+ htab_find_slot_with_hash (varray_hash, name,
+ htab_hash_pointer (name),
+ 1);
+ if (*slot)
+ return *slot;
+ *slot = xcalloc (sizeof (**slot), 1);
+ (*slot)->name = name;
+ return *slot;
+}
+#endif
+
/* Do not add any more non-GC items here. Please either remove or GC
those items that are not GCed. */
@@ -67,6 +118,12 @@ varray_init (size_t num_elements, enum varray_data_enum element_kind,
{
size_t data_size = num_elements * element[element_kind].size;
varray_type ptr;
+#ifdef GATHER_STATISTICS
+ struct varray_descriptor *desc = varray_descriptor (name);
+
+ desc->created++;
+ desc->allocated += data_size + VARRAY_HDR_SIZE;
+#endif
if (element[element_kind].uses_ggc)
ptr = ggc_alloc_cleared (VARRAY_HDR_SIZE + data_size);
else
@@ -85,12 +142,20 @@ varray_type
varray_grow (varray_type va, size_t n)
{
size_t old_elements = va->num_elements;
-
if (n != old_elements)
{
size_t elem_size = element[va->type].size;
size_t old_data_size = old_elements * elem_size;
size_t data_size = n * elem_size;
+#ifdef GATHER_STATISTICS
+ struct varray_descriptor *desc = varray_descriptor (va->name);
+ varray_type oldva = va;
+
+ if (data_size > old_data_size)
+ desc->allocated += data_size - old_data_size;
+ desc->resized ++;
+#endif
+
if (element[va->type].uses_ggc)
va = ggc_realloc (va, VARRAY_HDR_SIZE + data_size);
@@ -99,6 +164,10 @@ varray_grow (varray_type va, size_t n)
va->num_elements = n;
if (n > old_elements)
memset (&va->data.c[old_data_size], 0, data_size - old_data_size);
+#ifdef GATHER_STATISTICS
+ if (oldva != va)
+ desc->copied++;
+#endif
}
return va;
@@ -137,3 +206,43 @@ varray_underflow (varray_type va, const char *file, int line,
}
#endif
+
+/* Output per-varray statistics. */
+#ifdef GATHER_STATISTICS
+struct output_info
+{
+ int count;
+ int size;
+};
+static int
+print_statistics (void **slot, void *b)
+{
+ struct varray_descriptor *d = (struct varray_descriptor *) *slot;
+ struct output_info *i = (struct output_info *) b;
+
+ if (d->allocated)
+ {
+ fprintf (stderr, "%-21s %6d %10d %7d %7d\n", d->name,
+ d->created, d->allocated, d->resized, d->copied);
+ i->size += d->allocated;
+ i->count += d->created;
+ }
+ return 1;
+}
+#endif
+void dump_varray_statistics (void)
+{
+#ifdef GATHER_STATISTICS
+ struct output_info info;
+
+ fprintf (stderr, "\nVARRAY Kind Count Bytes Resized copied\n");
+ fprintf (stderr, "-------------------------------------------------------\n");
+ info.count = 0;
+ info.size = 0;
+ htab_traverse (varray_hash, print_statistics, &info);
+ fprintf (stderr, "-------------------------------------------------------\n");
+ fprintf (stderr, "%-20s %7d %10d\n",
+ "Total", info.count, info.size);
+ fprintf (stderr, "-------------------------------------------------------\n");
+#endif
+}
diff --git a/gcc/varray.h b/gcc/varray.h
index 9cc6ea5fffe..194d10cd563 100644
--- a/gcc/varray.h
+++ b/gcc/varray.h
@@ -1,5 +1,5 @@
/* Virtual array support.
- Copyright (C) 1998, 1999, 2000, 2002, 2003
+ Copyright (C) 1998, 1999, 2000, 2002, 2003, 2004
Free Software Foundation, Inc.
Contributed by Cygnus Solutions.
@@ -223,6 +223,8 @@ extern varray_type varray_grow (varray_type, size_t);
extern void varray_clear (varray_type);
+extern void dump_varray_statistics (void);
+
/* Check for VARRAY_xxx macros being in bound. */
#if defined ENABLE_CHECKING && (GCC_VERSION >= 2007)
extern void varray_check_failed (varray_type, size_t, const char *, int,
diff --git a/gcc/version.c b/gcc/version.c
index 45303176bb0..1026c28e114 100644
--- a/gcc/version.c
+++ b/gcc/version.c
@@ -5,7 +5,7 @@
please modify this string to indicate that, e.g. by putting your
organization's name in parentheses at the end of the string. */
-const char version_string[] = "3.4.0 20040116 (experimental)";
+const char version_string[] = "3.4.0";
/* This is the location of the online document giving instructions for
reporting bugs. If you distribute a modified version of GCC,
diff --git a/include/ChangeLog b/include/ChangeLog
index e2fa68f30d9..9f7bd5e1a74 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,7 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
2004-01-12 Ian Lance Taylor <ian@wasabisystems.com>
* demangle.h: Instead of checking ANSI_PROTOTYPES, just include
diff --git a/intl/ChangeLog b/intl/ChangeLog
index caf88353367..77a3e381210 100644
--- a/intl/ChangeLog
+++ b/intl/ChangeLog
@@ -1,3 +1,16 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-04-16 Mark Mitchell <mark@codesourcery.com>
+
+ * plural.c: Regenerated.
+
+2004-04-07 Joe Buck <jbuck@welsh-buck.org>
+
+ * plural.y: don't assume that the inline keyword can be used.
+ * gettextP.h: likewise.
+
2003-07-07 Zack Weinberg <zack@codesourcery.com>
* README: Update.
diff --git a/intl/gettextP.h b/intl/gettextP.h
index 82135aa0f42..78372d03928 100644
--- a/intl/gettextP.h
+++ b/intl/gettextP.h
@@ -67,6 +67,11 @@
# include <byteswap.h>
# define SWAP(i) bswap_32 (i)
#else
+
+#ifndef __GNUC__
+#define inline /* nothing: don't inline if the compiler is not GCC */
+#endif
+
static inline nls_uint32
SWAP (i)
nls_uint32 i;
diff --git a/intl/plural.c b/intl/plural.c
index 3a4fa20cae9..8883ff83b41 100644
--- a/intl/plural.c
+++ b/intl/plural.c
@@ -75,6 +75,11 @@ typedef union {
#line 55 "plural.y"
/* Prototypes for local functions. */
+
+#ifndef __GNUC__
+#define inline /* nothing: don't inline if the compiler is not GCC */
+#endif
+
static struct expression *new_exp PARAMS ((int nargs, enum operator op,
struct expression * const *args));
static inline struct expression *new_exp_0 PARAMS ((enum operator op));
@@ -236,8 +241,8 @@ static const short yyrhs[] =
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const short yyrline[] =
{
- 0, 174, 182, 186, 190, 194, 198, 202, 206, 210,
- 214, 218, 223
+ 0, 179, 187, 191, 195, 199, 203, 207, 211, 215,
+ 219, 223, 228
};
#endif
@@ -320,7 +325,7 @@ static const short yycheck[] =
#define YYPURE 1
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
-#line 3 "/usr/local/share/bison/bison.simple"
+#line 3 "/usr/share/bison/bison.simple"
/* Skeleton output parser for bison,
@@ -633,7 +638,7 @@ yystpcpy (yydest, yysrc)
# endif
#endif
-#line 315 "/usr/local/share/bison/bison.simple"
+#line 315 "/usr/share/bison/bison.simple"
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
@@ -1027,7 +1032,7 @@ yyreduce:
switch (yyn) {
case 1:
-#line 175 "plural.y"
+#line 180 "plural.y"
{
if (yyvsp[0].exp == NULL)
YYABORT;
@@ -1035,75 +1040,75 @@ case 1:
}
break;
case 2:
-#line 183 "plural.y"
+#line 188 "plural.y"
{
yyval.exp = new_exp_3 (qmop, yyvsp[-4].exp, yyvsp[-2].exp, yyvsp[0].exp);
}
break;
case 3:
-#line 187 "plural.y"
+#line 192 "plural.y"
{
yyval.exp = new_exp_2 (lor, yyvsp[-2].exp, yyvsp[0].exp);
}
break;
case 4:
-#line 191 "plural.y"
+#line 196 "plural.y"
{
yyval.exp = new_exp_2 (land, yyvsp[-2].exp, yyvsp[0].exp);
}
break;
case 5:
-#line 195 "plural.y"
+#line 200 "plural.y"
{
yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp);
}
break;
case 6:
-#line 199 "plural.y"
+#line 204 "plural.y"
{
yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp);
}
break;
case 7:
-#line 203 "plural.y"
+#line 208 "plural.y"
{
yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp);
}
break;
case 8:
-#line 207 "plural.y"
+#line 212 "plural.y"
{
yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp);
}
break;
case 9:
-#line 211 "plural.y"
+#line 216 "plural.y"
{
yyval.exp = new_exp_1 (lnot, yyvsp[0].exp);
}
break;
case 10:
-#line 215 "plural.y"
+#line 220 "plural.y"
{
yyval.exp = new_exp_0 (var);
}
break;
case 11:
-#line 219 "plural.y"
+#line 224 "plural.y"
{
if ((yyval.exp = new_exp_0 (num)) != NULL)
yyval.exp->val.num = yyvsp[0].num;
}
break;
case 12:
-#line 224 "plural.y"
+#line 229 "plural.y"
{
yyval.exp = yyvsp[-1].exp;
}
break;
}
-#line 705 "/usr/local/share/bison/bison.simple"
+#line 705 "/usr/share/bison/bison.simple"
yyvsp -= yylen;
@@ -1334,7 +1339,7 @@ yyreturn:
#endif
return yyresult;
}
-#line 229 "plural.y"
+#line 234 "plural.y"
void
diff --git a/intl/plural.y b/intl/plural.y
index 616b7c11a21..99849e53202 100644
--- a/intl/plural.y
+++ b/intl/plural.y
@@ -54,6 +54,11 @@
%{
/* Prototypes for local functions. */
+
+#ifndef __GNUC__
+#define inline /* nothing: don't inline if the compiler is not GCC */
+#endif
+
static struct expression *new_exp PARAMS ((int nargs, enum operator op,
struct expression * const *args));
static inline struct expression *new_exp_0 PARAMS ((enum operator op));
diff --git a/libf2c/ChangeLog b/libf2c/ChangeLog
index e54f66e856d..8faf84537d9 100644
--- a/libf2c/ChangeLog
+++ b/libf2c/ChangeLog
@@ -1,3 +1,21 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+Thu Feb 5 15:08:08 2004 Geoffrey Keating <geoffk@apple.com>
+
+ PR 12179
+ * aclocal.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Use 'gcc', not 'gcc-lib'.
+ Add comment about poorly-named variables.
+ * Makefile.in (libsubdir): Use 'gcc', not 'gcc-lib'.
+ * configure: Regenerate.
+
+2004-01-31 Bud Davis <bdavis9659@comcast.net>
+
+ PR fortran/12884
+ * libI77/rsne.c: Enable reading a '/' when reading
+ a '$' delimited namelist.
+
2004-01-14 Kelley Cook <kcook@gcc.gnu.org>
* libF77/configure.in: Update to AC_PREREQ(2.13)
diff --git a/libf2c/Makefile.in b/libf2c/Makefile.in
index 7a2c1d9be9a..120bd7c4017 100644
--- a/libf2c/Makefile.in
+++ b/libf2c/Makefile.in
@@ -42,7 +42,7 @@ glibcpp_toolexeclibdir = @glibcpp_toolexeclibdir@
top_builddir = .
libdir = $(exec_prefix)/lib
-libsubdir = $(libdir)/gcc-lib/$(target_alias)/$(gcc_version)
+libsubdir = $(libdir)/gcc/$(target_alias)/$(gcc_version)
#
# Versions should start at 0:0:0 - See libtool manual.
VERSION_MAJOR=0
diff --git a/libf2c/aclocal.m4 b/libf2c/aclocal.m4
index 9c513b62d89..b84eda0d2cf 100644
--- a/libf2c/aclocal.m4
+++ b/libf2c/aclocal.m4
@@ -194,9 +194,10 @@ AC_SUBST(gcc_version_trigger)
if test $version_specific_libs = yes; then
# Need the gcc compiler version to know where to install libraries
# and header files if --enable-version-specific-runtime-libs option
- # is selected.
+ # is selected. FIXME: "toolexecdir" is a misnomer, there are no
+ # executables installed there.
changequote(,)dnl
- glibcpp_toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+ glibcpp_toolexecdir='$(libdir)/gcc/$(target_alias)'
glibcpp_toolexeclibdir='$(toolexecdir)/'${gcc_version}'$(MULTISUBDIR)'
changequote([,])dnl
fi
@@ -209,7 +210,7 @@ if test x"$glibcpp_toolexecdir" = x"no"; then
glibcpp_toolexecdir='$(exec_prefix)/$(target_alias)'
glibcpp_toolexeclibdir='$(toolexecdir)/lib'
else
- glibcpp_toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+ glibcpp_toolexecdir='$(libdir)/gcc/$(target_alias)'
glibcpp_toolexeclibdir='$(libdir)'
fi
multi_os_directory=`$CC -print-multi-os-directory`
diff --git a/libf2c/configure b/libf2c/configure
index 29474cd6d9f..2636d32c70e 100755
--- a/libf2c/configure
+++ b/libf2c/configure
@@ -1193,7 +1193,7 @@ else
if { (eval echo configure:1194: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
- *.$ac_ext | *.c | *.o | *.obj) ;;
+ *.c | *.o | *.obj) ;;
*) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;;
esac
done
@@ -1250,8 +1250,9 @@ gcc_version=`echo ${gcc_version_full} | sed -e 's/\(^ *\) .*/\1/'`
if test $version_specific_libs = yes; then
# Need the gcc compiler version to know where to install libraries
# and header files if --enable-version-specific-runtime-libs option
- # is selected.
- glibcpp_toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+ # is selected. FIXME: "toolexecdir" is a misnomer, there are no
+ # executables installed there.
+ glibcpp_toolexecdir='$(libdir)/gcc/$(target_alias)'
glibcpp_toolexeclibdir='$(toolexecdir)/'${gcc_version}'$(MULTISUBDIR)'
fi
@@ -1263,7 +1264,7 @@ if test x"$glibcpp_toolexecdir" = x"no"; then
glibcpp_toolexecdir='$(exec_prefix)/$(target_alias)'
glibcpp_toolexeclibdir='$(toolexecdir)/lib'
else
- glibcpp_toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+ glibcpp_toolexecdir='$(libdir)/gcc/$(target_alias)'
glibcpp_toolexeclibdir='$(libdir)'
fi
multi_os_directory=`$CC -print-multi-os-directory`
@@ -1360,7 +1361,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1364: checking for ld used by GCC" >&5
+echo "configure:1365: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1390,10 +1391,10 @@ echo "configure:1364: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1394: checking for GNU ld" >&5
+echo "configure:1395: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1397: checking for non-GNU ld" >&5
+echo "configure:1398: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1428,7 +1429,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1432: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1433: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1445,7 +1446,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1449: checking for $LD option to reload object files" >&5
+echo "configure:1450: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1457,7 +1458,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1461: checking for BSD-compatible nm" >&5
+echo "configure:1462: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1495,7 +1496,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:1499: checking how to recognise dependant libraries" >&5
+echo "configure:1500: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1534,6 +1535,7 @@ cygwin* | mingw* |pw32*)
;;
darwin* | rhapsody*)
+ # this will be overwritten by pass_all, but leave it in just in case
lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
lt_cv_file_magic_cmd='/usr/bin/file -L'
case "$host_os" in
@@ -1544,6 +1546,7 @@ darwin* | rhapsody*)
lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
;;
esac
+ lt_cv_deplibs_check_method=pass_all
;;
freebsd* )
@@ -1668,13 +1671,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:1672: checking for object suffix" >&5
+echo "configure:1675: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:1678: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1681: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -1698,7 +1701,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:1702: checking for ${ac_tool_prefix}file" >&5
+echo "configure:1705: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1760,7 +1763,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:1764: checking for file" >&5
+echo "configure:1767: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1831,7 +1834,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1835: checking for $ac_word" >&5
+echo "configure:1838: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1863,7 +1866,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1867: checking for $ac_word" >&5
+echo "configure:1870: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1898,7 +1901,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1902: checking for $ac_word" >&5
+echo "configure:1905: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1930,7 +1933,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1934: checking for $ac_word" >&5
+echo "configure:1937: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1997,8 +2000,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2001 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2002: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2004 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2005: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if test "$lt_cv_prog_gnu_ld" = yes; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
@@ -2031,7 +2034,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2035: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2038: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2047,7 +2050,7 @@ ia64-*-hpux*)
x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2051: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2054: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*32-bit*)
case $host in
@@ -2091,7 +2094,7 @@ x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2095: checking whether the C compiler needs -belf" >&5
+echo "configure:2098: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2104,14 +2107,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2108 "configure"
+#line 2111 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2115: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2118: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2235,7 +2238,7 @@ else
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2239: checking for $ac_word" >&5
+echo "configure:2242: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2275,7 +2278,7 @@ fi
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:2279: checking for a BSD compatible install" >&5
+echo "configure:2282: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -2328,7 +2331,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:2332: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "configure:2335: checking whether ${MAKE-make} sets \${MAKE}" >&5
set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -2357,7 +2360,7 @@ fi
# Sanity check for the cross-compilation case:
echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:2361: checking how to run the C preprocessor" >&5
+echo "configure:2364: checking how to run the C preprocessor" >&5
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
CPP=
@@ -2372,13 +2375,13 @@ else
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp.
cat > conftest.$ac_ext <<EOF
-#line 2376 "configure"
+#line 2379 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2382: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2385: \"$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
:
@@ -2389,13 +2392,13 @@ else
rm -rf conftest*
CPP="${CC-cc} -E -traditional-cpp"
cat > conftest.$ac_ext <<EOF
-#line 2393 "configure"
+#line 2396 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2399: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2402: \"$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
:
@@ -2406,13 +2409,13 @@ else
rm -rf conftest*
CPP="${CC-cc} -nologo -E"
cat > conftest.$ac_ext <<EOF
-#line 2410 "configure"
+#line 2413 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2416: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2419: \"$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
:
@@ -2438,17 +2441,17 @@ echo "$ac_t""$CPP" 1>&6
ac_safe=`echo "stdio.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for stdio.h""... $ac_c" 1>&6
-echo "configure:2442: checking for stdio.h" >&5
+echo "configure:2445: checking for stdio.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 2447 "configure"
+#line 2450 "configure"
#include "confdefs.h"
#include <stdio.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2452: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2455: \"$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*
@@ -2476,12 +2479,12 @@ fi
echo $ac_n "checking for built-in g77 integer types""... $ac_c" 1>&6
-echo "configure:2480: checking for built-in g77 integer types" >&5
+echo "configure:2483: checking for built-in g77 integer types" >&5
if eval "test \"`echo '$''{'libf2c_cv_has_g77_builtin_types'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2485 "configure"
+#line 2488 "configure"
#include "confdefs.h"
int main() {
@@ -2491,7 +2494,7 @@ __g77_longint g77l;
__g77_ulongint g77ul;
; return 0; }
EOF
-if { (eval echo configure:2495: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2498: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
libf2c_cv_has_g77_builtin_types=yes
else
@@ -2928,7 +2931,7 @@ if test "$no_recursion" != yes; then
fi
fi
- cd "$ac_popdir"
+ cd $ac_popdir
done
fi
diff --git a/libf2c/libI77/rsne.c b/libf2c/libI77/rsne.c
index f233a4ad9f8..0975e000c70 100644
--- a/libf2c/libI77/rsne.c
+++ b/libf2c/libI77/rsne.c
@@ -278,6 +278,7 @@ x_rsne (cilist * a)
char *vaddr;
long iva, ivae;
dimen dimens[MAXDIM], substr;
+ int dollarsign_delimited;
if (!Alpha['a'])
nl_init ();
@@ -285,14 +286,16 @@ x_rsne (cilist * a)
f__formatted = 1;
got1 = 0;
top:
+ dollarsign_delimited = 0;
for (;;)
switch (GETC (ch))
{
case EOF:
eof:
err (a->ciend, (EOF), where0);
- case '&':
case '$':
+ dollarsign_delimited = 1;
+ case '&':
goto have_amp;
#ifndef No_Namelist_Questions
case '?':
@@ -329,6 +332,8 @@ have_amp:
case EOF:
err (a->ciend, EOF, where0);
case '/':
+ if (dollarsign_delimited)
+ continue;
case '&':
case '$':
if (f__external)
diff --git a/libffi/ChangeLog b/libffi/ChangeLog
index 2b7baf99a68..d47b345b549 100644
--- a/libffi/ChangeLog
+++ b/libffi/ChangeLog
@@ -1,3 +1,68 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-03-12 Alan Modra <amodra@bigpond.net.au>
+
+ * src/powerpc/ffi.c (ffi_prep_args64): Correct long double handling.
+ (ffi_prep_cif_machdep <FFI_LINUX64>): Correct long double function
+ return and long double arg handling.
+ (ffi_closure_helper_LINUX64): Formatting. Delete unused "ng" var.
+ Use "end_pfr" instead of "nf". Correct long double handling.
+ Localise "temp".
+ * src/powerpc/linux64.S (ffi_call_LINUX64): Save f2 long double
+ return value.
+ * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Allocate
+ space for long double return value. Adjust stack frame and offsets.
+ Load f2 long double return.
+ * testsuite/libffi.call/cls_align_longdouble.c: Pass -mlong-double-128
+ for powerpc64-*-*.
+ * testsuite/libffi.call/float.c: Likewise.
+ * testsuite/libffi.call/float2.c: Likewise.
+
+ * src/types.c: Use 16 byte long double for POWERPC64.
+ (pointer): POWERPC64 has 8 byte pointers.
+
+2004-01-25 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * src/sparc/ffi.c (ffi_prep_args_v9): Shift the parameter array
+ when the structure return address is passed in %o0.
+ (ffi_V9_return_struct): Rename into ffi_v9_layout_struct.
+ (ffi_v9_layout_struct): Align the field following a nested structure
+ on a word boundary. Use memmove instead of memcpy.
+ (ffi_call): Update call to ffi_V9_return_struct.
+ (ffi_prep_closure): Define 'ctx' only for V8.
+ (ffi_closure_sparc_inner): Clone into ffi_closure_sparc_inner_v8
+ and ffi_closure_sparc_inner_v9.
+ (ffi_closure_sparc_inner_v8): Return long doubles by reference.
+ Always skip the structure return address. For structures and long
+ doubles, copy the argument directly.
+ (ffi_closure_sparc_inner_v9): Skip the structure return address only
+ if required. Shift the maximum floating-point slot accordingly. For
+ big structures, copy the argument directly; otherwise, left-justify the
+ argument and call ffi_v9_layout_struct to lay out the structure on
+ the stack.
+ * src/sparc/v8.S: Undef STACKFRAME before defining it.
+ (ffi_closure_v8): Pass the structure return address. Update call to
+ ffi_closure_sparc_inner_v8. Short-circuit FFI_TYPE_INT handling.
+ Skip the 'unimp' insn when returning long doubles and structures.
+ * src/sparc/v9.S: Undef STACKFRAME before defining it.
+ (ffi_closure_v9): Increase the frame size by 2 words. Short-circuit
+ FFI_TYPE_INT handling. Load structures both in integers and
+ floating-point registers on return.
+ * README: Update status of the SPARC port.
+
+2004-01-24 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * testsuite/libffi.call/pyobjc-tc.c (main): Treat result value
+ as of type ffi_arg.
+ * testsuite/libffi.call/struct3.c (main): Fix CHECK.
+
+2004-01-22 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * testsuite/libffi.call/cls_uint.c (cls_ret_uint_fn): Treat result
+ value as of type ffi_arg, not unsigned int.
+
2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
* testsuite/lib/libffi-dg.exp: Set LD_LIBRARY_PATH_32 for
diff --git a/libffi/README b/libffi/README
index 21a7735bf74..1fc27470d0a 100644
--- a/libffi/README
+++ b/libffi/README
@@ -46,7 +46,7 @@ Supported Platforms and Prerequisites
Libffi has been ported to:
- SunOS 4.1.3 & Solaris 2.x (Sparc v8)
+ SunOS 4.1.3 & Solaris 2.x (SPARC-V8, SPARC-V9)
Irix 5.3 & 6.2 (System V/o32 & n32)
@@ -306,15 +306,9 @@ Platform Specific Notes
There are no known problems with the x86 port.
- Sun Sparc - SunOS 4.1.3 & Solaris 2.x
+ Sun SPARC - SunOS 4.1.3 & Solaris 2.x
-------------------------------------
-There's a bug in the structure passing code for sparc processors.
-Struct arguments that are passed in value actually end up being passed
-by reference. This will be fixed Real Soon Now.
-
-"long long" values are not supported yet.
-
You must use GNU Make to build libffi on Sun platforms.
MIPS - Irix 5.3 & 6.x
diff --git a/libffi/src/powerpc/ffi.c b/libffi/src/powerpc/ffi.c
index 9ad85ea7b86..454c7ac35e5 100644
--- a/libffi/src/powerpc/ffi.c
+++ b/libffi/src/powerpc/ffi.c
@@ -369,10 +369,27 @@ void hidden ffi_prep_args64(extended_cif *ecif, unsigned long *const stack)
FFI_ASSERT(flags & FLAG_FP_ARGUMENTS);
break;
- case FFI_TYPE_STRUCT:
#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
case FFI_TYPE_LONGDOUBLE:
+ double_tmp = ((double *) *p_argv)[0];
+ *(double *) next_arg = double_tmp;
+ if (++next_arg == gpr_end)
+ next_arg = rest;
+ if (fparg_count < NUM_FPR_ARG_REGISTERS64)
+ *fpr_base++ = double_tmp;
+ fparg_count++;
+ double_tmp = ((double *) *p_argv)[1];
+ *(double *) next_arg = double_tmp;
+ if (++next_arg == gpr_end)
+ next_arg = rest;
+ if (fparg_count < NUM_FPR_ARG_REGISTERS64)
+ *fpr_base++ = double_tmp;
+ fparg_count++;
+ FFI_ASSERT(flags & FLAG_FP_ARGUMENTS);
+ break;
#endif
+
+ case FFI_TYPE_STRUCT:
words = ((*ptr)->size + 7) / 8;
if (next_arg >= gpr_base && next_arg + words > gpr_end)
{
@@ -446,6 +463,7 @@ ffi_status ffi_prep_cif_machdep(ffi_cif *cif)
int fparg_count = 0, intarg_count = 0;
unsigned flags = 0;
unsigned struct_copy_size = 0;
+ unsigned type = cif->rtype->type;
if (cif->abi != FFI_LINUX64)
{
@@ -468,6 +486,11 @@ ffi_status ffi_prep_cif_machdep(ffi_cif *cif)
/* Space for the mandatory parm save area and general registers. */
bytes += 2 * NUM_GPR_ARG_REGISTERS64 * sizeof(long);
+
+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
+ if (type == FFI_TYPE_LONGDOUBLE)
+ type = FFI_TYPE_DOUBLE;
+#endif
}
/* Return value handling. The rules for SYSV are as follows:
@@ -480,9 +503,9 @@ ffi_status ffi_prep_cif_machdep(ffi_cif *cif)
are allocated space and a pointer is passed as the first argument.
For LINUX64:
- integer values in gpr3;
- - Structures/Unions and long double by reference;
- - Single/double FP values in fpr1. */
- switch (cif->rtype->type)
+ - Structures/Unions by reference;
+ - Single/double FP values in fpr1, long double in fpr1,fpr2. */
+ switch (type)
{
case FFI_TYPE_DOUBLE:
flags |= FLAG_RETURNS_64BITS;
@@ -581,6 +604,12 @@ ffi_status ffi_prep_cif_machdep(ffi_cif *cif)
{
switch ((*ptr)->type)
{
+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
+ case FFI_TYPE_LONGDOUBLE:
+ fparg_count += 2;
+ intarg_count += 2;
+ break;
+#endif
case FFI_TYPE_FLOAT:
case FFI_TYPE_DOUBLE:
fparg_count++;
@@ -588,9 +617,6 @@ ffi_status ffi_prep_cif_machdep(ffi_cif *cif)
break;
case FFI_TYPE_STRUCT:
-#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
- case FFI_TYPE_LONGDOUBLE:
-#endif
intarg_count += ((*ptr)->size + 7) / 8;
break;
@@ -863,7 +889,7 @@ ffi_closure_helper_SYSV (ffi_closure* closure, void * rvalue,
pst++;
}
break;
-
+
case FFI_TYPE_STRUCT:
/* Structs are passed by reference. The address will appear in a
gpr if it is one of the first 8 arguments. */
@@ -965,34 +991,28 @@ int hidden ffi_closure_helper_LINUX64 (ffi_closure*, void*, unsigned long*,
ffi_dblfl*);
int hidden
-ffi_closure_helper_LINUX64 (ffi_closure* closure, void * rvalue,
- unsigned long * pst, ffi_dblfl * pfr)
+ffi_closure_helper_LINUX64 (ffi_closure *closure, void *rvalue,
+ unsigned long *pst, ffi_dblfl *pfr)
{
/* rvalue is the pointer to space for return value in closure assembly */
/* pst is the pointer to parameter save area
(r3-r10 are stored into its first 8 slots by ffi_closure_LINUX64) */
/* pfr is the pointer to where f1-f13 are stored in ffi_closure_LINUX64 */
- void ** avalue;
- ffi_type ** arg_types;
- long i, avn;
- long nf; /* number of floating registers already used */
- long ng; /* number of general registers already used */
- ffi_cif * cif;
- double temp;
+ void **avalue;
+ ffi_type **arg_types;
+ long i, avn;
+ ffi_cif *cif;
+ ffi_dblfl *end_pfr = pfr + NUM_FPR_ARG_REGISTERS64;
cif = closure->cif;
- avalue = alloca(cif->nargs * sizeof(void *));
-
- nf = 0;
- ng = 0;
+ avalue = alloca (cif->nargs * sizeof (void *));
/* Copy the caller's structure return value address so that the closure
returns the data directly to the caller. */
if (cif->rtype->type == FFI_TYPE_STRUCT)
{
rvalue = (void *) *pst;
- ng++;
pst++;
}
@@ -1008,21 +1028,18 @@ ffi_closure_helper_LINUX64 (ffi_closure* closure, void * rvalue,
case FFI_TYPE_SINT8:
case FFI_TYPE_UINT8:
avalue[i] = (char *) pst + 7;
- ng++;
pst++;
break;
case FFI_TYPE_SINT16:
case FFI_TYPE_UINT16:
avalue[i] = (char *) pst + 6;
- ng++;
pst++;
break;
case FFI_TYPE_SINT32:
case FFI_TYPE_UINT32:
avalue[i] = (char *) pst + 4;
- ng++;
pst++;
break;
@@ -1030,21 +1047,16 @@ ffi_closure_helper_LINUX64 (ffi_closure* closure, void * rvalue,
case FFI_TYPE_UINT64:
case FFI_TYPE_POINTER:
avalue[i] = pst;
- ng++;
pst++;
break;
case FFI_TYPE_STRUCT:
-#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
- case FFI_TYPE_LONGDOUBLE:
-#endif
/* Structures with size less than eight bytes are passed
left-padded. */
if (arg_types[i]->size < 8)
avalue[i] = (char *) pst + 8 - arg_types[i]->size;
else
avalue[i] = pst;
- ng += (arg_types[i]->size + 7) / 8;
pst += (arg_types[i]->size + 7) / 8;
break;
@@ -1056,16 +1068,15 @@ ffi_closure_helper_LINUX64 (ffi_closure* closure, void * rvalue,
/* there are 13 64bit floating point registers */
- if (nf < NUM_FPR_ARG_REGISTERS64) {
- temp = pfr->d;
- pfr->f = (float)temp;
- avalue[i] = pfr;
- pfr++;
- } else {
- avalue[i] = pst;
- }
- nf++;
- ng++;
+ if (pfr < end_pfr)
+ {
+ double temp = pfr->d;
+ pfr->f = (float) temp;
+ avalue[i] = pfr;
+ pfr++;
+ }
+ else
+ avalue[i] = pst;
pst++;
break;
@@ -1073,17 +1084,38 @@ ffi_closure_helper_LINUX64 (ffi_closure* closure, void * rvalue,
/* On the outgoing stack all values are aligned to 8 */
/* there are 13 64bit floating point registers */
- if (nf < NUM_FPR_ARG_REGISTERS64) {
- avalue[i] = pfr;
- pfr++;
- } else {
- avalue[i] = pst;
- }
- nf++;
- ng++;
+ if (pfr < end_pfr)
+ {
+ avalue[i] = pfr;
+ pfr++;
+ }
+ else
+ avalue[i] = pst;
pst++;
break;
+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
+ case FFI_TYPE_LONGDOUBLE:
+ if (pfr + 1 < end_pfr)
+ {
+ avalue[i] = pfr;
+ pfr += 2;
+ }
+ else
+ {
+ if (pfr < end_pfr)
+ {
+ /* Passed partly in f13 and partly on the stack.
+ Move it all to the stack. */
+ *pst = *(unsigned long *) pfr;
+ pfr++;
+ }
+ avalue[i] = pst;
+ }
+ pst += 2;
+ break;
+#endif
+
default:
FFI_ASSERT(0);
}
@@ -1096,5 +1128,4 @@ ffi_closure_helper_LINUX64 (ffi_closure* closure, void * rvalue,
/* Tell ffi_closure_LINUX64 how to perform return type promotions. */
return cif->rtype->type;
-
}
diff --git a/libffi/src/powerpc/linux64.S b/libffi/src/powerpc/linux64.S
index f12d4ec0004..11cf926ba38 100644
--- a/libffi/src/powerpc/linux64.S
+++ b/libffi/src/powerpc/linux64.S
@@ -122,6 +122,7 @@ ffi_call_LINUX64:
.Lfp_return_value:
bf 28, .Lfloat_return_value
stfd %f1, 0(%r30)
+ stfd %f2, 8(%r30) /* It might be a long double */
b .Ldone_return_value
.Lfloat_return_value:
stfs %f1, 0(%r30)
diff --git a/libffi/src/powerpc/linux64_closure.S b/libffi/src/powerpc/linux64_closure.S
index db78ea6e822..fa331dbe8fb 100644
--- a/libffi/src/powerpc/linux64_closure.S
+++ b/libffi/src/powerpc/linux64_closure.S
@@ -30,24 +30,24 @@ ffi_closure_LINUX64:
std %r0, 16(%r1)
# mandatory 48 bytes special reg save area + 64 bytes parm save area
- # + 8 bytes retval area + 13*8 bytes fpr save area
- stdu %r1, -224(%r1)
+ # + 16 bytes retval area + 13*8 bytes fpr save area + round to 16
+ stdu %r1, -240(%r1)
.LCFI0:
# next save fpr 1 to fpr 13
- stfd %f1, 120+(0*8)(%r1)
- stfd %f2, 120+(1*8)(%r1)
- stfd %f3, 120+(2*8)(%r1)
- stfd %f4, 120+(3*8)(%r1)
- stfd %f5, 120+(4*8)(%r1)
- stfd %f6, 120+(5*8)(%r1)
- stfd %f7, 120+(6*8)(%r1)
- stfd %f8, 120+(7*8)(%r1)
- stfd %f9, 120+(8*8)(%r1)
- stfd %f10, 120+(9*8)(%r1)
- stfd %f11, 120+(10*8)(%r1)
- stfd %f12, 120+(11*8)(%r1)
- stfd %f13, 120+(12*8)(%r1)
+ stfd %f1, 128+(0*8)(%r1)
+ stfd %f2, 128+(1*8)(%r1)
+ stfd %f3, 128+(2*8)(%r1)
+ stfd %f4, 128+(3*8)(%r1)
+ stfd %f5, 128+(4*8)(%r1)
+ stfd %f6, 128+(5*8)(%r1)
+ stfd %f7, 128+(6*8)(%r1)
+ stfd %f8, 128+(7*8)(%r1)
+ stfd %f9, 128+(8*8)(%r1)
+ stfd %f10, 128+(9*8)(%r1)
+ stfd %f11, 128+(10*8)(%r1)
+ stfd %f12, 128+(11*8)(%r1)
+ stfd %f13, 128+(12*8)(%r1)
# set up registers for the routine that actually does the work
# get the context pointer from the trampoline
@@ -58,10 +58,10 @@ ffi_closure_LINUX64:
# now load up the pointer to the parameter save area
# in the previous frame
- addi %r5, %r1, 224 + 48
+ addi %r5, %r1, 240 + 48
# now load up the pointer to the saved fpr registers */
- addi %r6, %r1, 120
+ addi %r6, %r1, 128
# make the call
bl .ffi_closure_helper_LINUX64
@@ -76,7 +76,7 @@ ffi_closure_LINUX64:
mflr %r4 # move address of .Lret to r4
sldi %r3, %r3, 4 # now multiply return type by 16
addi %r4, %r4, .Lret_type0 - .Lret
- ld %r0, 224+16(%r1)
+ ld %r0, 240+16(%r1)
add %r3, %r3, %r4 # add contents of table to table address
mtctr %r3
bctr # jump to it
@@ -89,33 +89,33 @@ ffi_closure_LINUX64:
.Lret_type0:
# case FFI_TYPE_VOID
mtlr %r0
- addi %r1, %r1, 224
+ addi %r1, %r1, 240
blr
nop
# case FFI_TYPE_INT
lwa %r3, 112+4(%r1)
mtlr %r0
- addi %r1, %r1, 224
+ addi %r1, %r1, 240
blr
# case FFI_TYPE_FLOAT
lfs %f1, 112+0(%r1)
mtlr %r0
- addi %r1, %r1, 224
+ addi %r1, %r1, 240
blr
# case FFI_TYPE_DOUBLE
lfd %f1, 112+0(%r1)
mtlr %r0
- addi %r1, %r1, 224
+ addi %r1, %r1, 240
blr
# case FFI_TYPE_LONGDOUBLE
lfd %f1, 112+0(%r1)
mtlr %r0
- addi %r1, %r1, 224
- blr
+ lfd %f2, 112+8(%r1)
+ b .Lfinish
# case FFI_TYPE_UINT8
lbz %r3, 112+7(%r1)
mtlr %r0
- addi %r1, %r1, 224
+ addi %r1, %r1, 240
blr
# case FFI_TYPE_SINT8
lbz %r3, 112+7(%r1)
@@ -126,42 +126,42 @@ ffi_closure_LINUX64:
lhz %r3, 112+6(%r1)
mtlr %r0
.Lfinish:
- addi %r1, %r1, 224
+ addi %r1, %r1, 240
blr
# case FFI_TYPE_SINT16
lha %r3, 112+6(%r1)
mtlr %r0
- addi %r1, %r1, 224
+ addi %r1, %r1, 240
blr
# case FFI_TYPE_UINT32
lwz %r3, 112+4(%r1)
mtlr %r0
- addi %r1, %r1, 224
+ addi %r1, %r1, 240
blr
# case FFI_TYPE_SINT32
lwa %r3, 112+4(%r1)
mtlr %r0
- addi %r1, %r1, 224
+ addi %r1, %r1, 240
blr
# case FFI_TYPE_UINT64
ld %r3, 112+0(%r1)
mtlr %r0
- addi %r1, %r1, 224
+ addi %r1, %r1, 240
blr
# case FFI_TYPE_SINT64
ld %r3, 112+0(%r1)
mtlr %r0
- addi %r1, %r1, 224
+ addi %r1, %r1, 240
blr
# case FFI_TYPE_STRUCT
mtlr %r0
- addi %r1, %r1, 224
+ addi %r1, %r1, 240
blr
nop
# case FFI_TYPE_POINTER
ld %r3, 112+0(%r1)
mtlr %r0
- addi %r1, %r1, 224
+ addi %r1, %r1, 240
blr
# esac
.LFE1:
@@ -196,7 +196,7 @@ ffi_closure_LINUX64:
.byte 0x2 # DW_CFA_advance_loc1
.byte .LCFI0-.LFB1
.byte 0xe # DW_CFA_def_cfa_offset
- .uleb128 224
+ .uleb128 240
.byte 0x11 # DW_CFA_offset_extended_sf
.uleb128 0x41
.sleb128 -2
diff --git a/libffi/src/sparc/ffi.c b/libffi/src/sparc/ffi.c
index a08e65ac571..ad15bee986c 100644
--- a/libffi/src/sparc/ffi.c
+++ b/libffi/src/sparc/ffi.c
@@ -1,7 +1,7 @@
/* -----------------------------------------------------------------------
- ffi.c - Copyright (c) 1996, 2003 Red Hat, Inc.
+ ffi.c - Copyright (c) 1996, 2003, 2004 Red Hat, Inc.
- Sparc Foreign Function Interface
+ SPARC Foreign Function Interface
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
@@ -28,11 +28,6 @@
#include <stdlib.h>
-#ifdef SPARC64
-extern void ffi_closure_v9(void);
-#else
-extern void ffi_closure_v8(void);
-#endif
/* ffi_prep_args is called by the assembly routine once stack space
has been allocated for the function's arguments */
@@ -154,6 +149,7 @@ int ffi_prep_args_v9(char *stack, extended_cif *ecif)
ecif->cif->rtype->size > 32)
{
*(unsigned long long *) argp = (unsigned long)ecif->rvalue;
+ argp += sizeof(long long);
tmp = 1;
}
@@ -326,7 +322,7 @@ ffi_status ffi_prep_cif_machdep(ffi_cif *cif)
return FFI_OK;
}
-int ffi_V9_return_struct(ffi_type *arg, int off, char *ret, char *intg, char *flt)
+int ffi_v9_layout_struct(ffi_type *arg, int off, char *ret, char *intg, char *flt)
{
ffi_type **ptr = &arg->elements[0];
@@ -338,18 +334,19 @@ int ffi_V9_return_struct(ffi_type *arg, int off, char *ret, char *intg, char *fl
switch ((*ptr)->type)
{
case FFI_TYPE_STRUCT:
- off = ffi_V9_return_struct(*ptr, off, ret, intg, flt);
+ off = ffi_v9_layout_struct(*ptr, off, ret, intg, flt);
+ off = ALIGN(off, FFI_SIZEOF_ARG);
break;
case FFI_TYPE_FLOAT:
case FFI_TYPE_DOUBLE:
#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
case FFI_TYPE_LONGDOUBLE:
#endif
- memcpy(ret + off, flt + off, (*ptr)->size);
+ memmove(ret + off, flt + off, (*ptr)->size);
off += (*ptr)->size;
break;
default:
- memcpy(ret + off, intg + off, (*ptr)->size);
+ memmove(ret + off, intg + off, (*ptr)->size);
off += (*ptr)->size;
break;
}
@@ -358,10 +355,14 @@ int ffi_V9_return_struct(ffi_type *arg, int off, char *ret, char *intg, char *fl
return off;
}
-extern int ffi_call_V8(void *, extended_cif *, unsigned,
+
+#ifdef SPARC64
+extern int ffi_call_v9(void *, extended_cif *, unsigned,
unsigned, unsigned *, void (*fn)());
-extern int ffi_call_V9(void *, extended_cif *, unsigned,
+#else
+extern int ffi_call_v8(void *, extended_cif *, unsigned,
unsigned, unsigned *, void (*fn)());
+#endif
void ffi_call(ffi_cif *cif, void (*fn)(), void *rvalue, void **avalue)
{
@@ -394,16 +395,16 @@ void ffi_call(ffi_cif *cif, void (*fn)(), void *rvalue, void **avalue)
/* We don't yet support calling 32bit code from 64bit */
FFI_ASSERT(0);
#else
- ffi_call_V8(ffi_prep_args_v8, &ecif, cif->bytes,
+ ffi_call_v8(ffi_prep_args_v8, &ecif, cif->bytes,
cif->flags, rvalue, fn);
#endif
break;
case FFI_V9:
#ifdef SPARC64
- ffi_call_V9(ffi_prep_args_v9, &ecif, cif->bytes,
+ ffi_call_v9(ffi_prep_args_v9, &ecif, cif->bytes,
cif->flags, rval, fn);
if (rvalue && rval && cif->rtype->type == FFI_TYPE_STRUCT)
- ffi_V9_return_struct(cif->rtype, 0, (char *)rvalue, (char *)rval, ((char *)rval)+32);
+ ffi_v9_layout_struct(cif->rtype, 0, (char *)rvalue, (char *)rval, ((char *)rval)+32);
#else
/* And vice versa */
FFI_ASSERT(0);
@@ -416,6 +417,13 @@ void ffi_call(ffi_cif *cif, void (*fn)(), void *rvalue, void **avalue)
}
+
+#ifdef SPARC64
+extern void ffi_closure_v9(void);
+#else
+extern void ffi_closure_v8(void);
+#endif
+
ffi_status
ffi_prep_closure (ffi_closure* closure,
ffi_cif* cif,
@@ -424,8 +432,6 @@ ffi_prep_closure (ffi_closure* closure,
{
unsigned int *tramp = (unsigned int *) &closure->tramp[0];
unsigned long fn;
- unsigned long ctx = (unsigned long) closure;
-
#ifdef SPARC64
/* Trampoline address is equal to the closure address. We take advantage
of that to reduce the trampoline size by 8 bytes. */
@@ -437,6 +443,7 @@ ffi_prep_closure (ffi_closure* closure,
tramp[3] = 0x01000000; /* nop */
*((unsigned long *) &tramp[4]) = fn;
#else
+ unsigned long ctx = (unsigned long) closure;
FFI_ASSERT (cif->abi == FFI_V8);
fn = (unsigned long) ffi_closure_v8;
tramp[0] = 0x03000000 | fn >> 10; /* sethi %hi(fn), %g1 */
@@ -462,49 +469,122 @@ ffi_prep_closure (ffi_closure* closure,
}
int
-ffi_closure_sparc_inner(ffi_closure *closure,
- void *rvalue, unsigned long *gpr, double *fpr)
+ffi_closure_sparc_inner_v8(ffi_closure *closure,
+ void *rvalue, unsigned long *gpr)
{
ffi_cif *cif;
- void **avalue;
ffi_type **arg_types;
- int i, avn, argn;
+ void **avalue;
+ int i, argn;
cif = closure->cif;
+ arg_types = cif->arg_types;
avalue = alloca(cif->nargs * sizeof(void *));
- argn = 0;
+ /* Copy the caller's structure return address so that the closure
+ returns the data directly to the caller. */
+ if (cif->flags == FFI_TYPE_STRUCT
+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
+ || cif->flags == FFI_TYPE_LONGDOUBLE
+#endif
+ )
+ rvalue = (void *) gpr[0];
+
+ /* Always skip the structure return address. */
+ argn = 1;
+
+ /* Grab the addresses of the arguments from the stack frame. */
+ for (i = 0; i < cif->nargs; i++)
+ {
+ if (arg_types[i]->type == FFI_TYPE_STRUCT
+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
+ || arg_types[i]->type == FFI_TYPE_LONGDOUBLE
+#endif
+ )
+ {
+ /* Straight copy of invisible reference. */
+ avalue[i] = (void *)gpr[argn++];
+ }
+ else
+ {
+ /* Always right-justify. */
+ argn += ALIGN(arg_types[i]->size, FFI_SIZEOF_ARG) / FFI_SIZEOF_ARG;
+ avalue[i] = ((char *) &gpr[argn]) - arg_types[i]->size;
+ }
+ }
- /* Copy the caller's structure return address to that the closure
+ /* Invoke the closure. */
+ (closure->fun) (cif, rvalue, avalue, closure->user_data);
+
+ /* Tell ffi_closure_sparc how to perform return type promotions. */
+ return cif->rtype->type;
+}
+
+int
+ffi_closure_sparc_inner_v9(ffi_closure *closure,
+ void *rvalue, unsigned long *gpr, double *fpr)
+{
+ ffi_cif *cif;
+ ffi_type **arg_types;
+ void **avalue;
+ int i, argn, fp_slot_max;
+
+ cif = closure->cif;
+ arg_types = cif->arg_types;
+ avalue = alloca(cif->nargs * sizeof(void *));
+
+ /* Copy the caller's structure return address so that the closure
returns the data directly to the caller. */
- if (cif->flags == FFI_TYPE_STRUCT)
+ if (cif->flags == FFI_TYPE_VOID
+ && cif->rtype->type == FFI_TYPE_STRUCT)
{
rvalue = (void *) gpr[0];
+ /* Skip the structure return address. */
argn = 1;
}
+ else
+ argn = 0;
+
+ fp_slot_max = 16 - argn;
- i = 0;
- avn = cif->nargs;
- arg_types = cif->arg_types;
-
/* Grab the addresses of the arguments from the stack frame. */
- while (i < avn)
+ for (i = 0; i < cif->nargs; i++)
{
- /* Assume big-endian. FIXME */
- argn += ALIGN(arg_types[i]->size, FFI_SIZEOF_ARG) / FFI_SIZEOF_ARG;
+ if (arg_types[i]->type == FFI_TYPE_STRUCT)
+ {
+ if (arg_types[i]->size > 16)
+ {
+ /* Straight copy of invisible reference. */
+ avalue[i] = (void *)gpr[argn++];
+ }
+ else
+ {
+ /* Left-justify. */
+ ffi_v9_layout_struct(arg_types[i],
+ 0,
+ (char *) &gpr[argn],
+ (char *) &gpr[argn],
+ (char *) &fpr[argn]);
+ avalue[i] = &gpr[argn];
+ argn += ALIGN(arg_types[i]->size, FFI_SIZEOF_ARG) / FFI_SIZEOF_ARG;
+ }
+ }
+ else
+ {
+ /* Right-justify. */
+ argn += ALIGN(arg_types[i]->size, FFI_SIZEOF_ARG) / FFI_SIZEOF_ARG;
-#ifdef SPARC64
- if (i < 16 && (arg_types[i]->type == FFI_TYPE_FLOAT
- || arg_types[i]->type == FFI_TYPE_DOUBLE
+ if (i < fp_slot_max
+ && (arg_types[i]->type == FFI_TYPE_FLOAT
+ || arg_types[i]->type == FFI_TYPE_DOUBLE
#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
- || arg_types[i]->type == FFI_TYPE_LONGDOUBLE
+ || arg_types[i]->type == FFI_TYPE_LONGDOUBLE
#endif
- ))
- avalue[i] = ((char *) &fpr[argn]) - arg_types[i]->size;
- else
-#endif
- avalue[i] = ((char *) &gpr[argn]) - arg_types[i]->size;
- i++;
+ ))
+ avalue[i] = ((char *) &fpr[argn]) - arg_types[i]->size;
+ else
+ avalue[i] = ((char *) &gpr[argn]) - arg_types[i]->size;
+ }
}
/* Invoke the closure. */
diff --git a/libffi/src/sparc/v8.S b/libffi/src/sparc/v8.S
index 880aae1f69e..aaa7be7b4c8 100644
--- a/libffi/src/sparc/v8.S
+++ b/libffi/src/sparc/v8.S
@@ -1,7 +1,7 @@
/* -----------------------------------------------------------------------
- v8.S - Copyright (c) 1996, 1997, 2003 Red Hat, Inc.
+ v8.S - Copyright (c) 1996, 1997, 2003, 2004 Red Hat, Inc.
- Sparc Foreign Function Interface
+ SPARC Foreign Function Interface
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
@@ -32,11 +32,11 @@
.text
.align 8
-.globl ffi_call_V8
-.globl _ffi_call_V8
+.globl ffi_call_v8
+.globl _ffi_call_v8
-ffi_call_V8:
-_ffi_call_V8:
+ffi_call_v8:
+_ffi_call_v8:
.LLFB1:
save %sp, -STACKFRAME, %sp
.LLCFI0:
@@ -92,10 +92,11 @@ longlong:
restore
.LLFE1:
-.ffi_call_V8_end:
- .size ffi_call_V8,.ffi_call_V8_end-ffi_call_V8
+.ffi_call_v8_end:
+ .size ffi_call_v8,.ffi_call_v8_end-ffi_call_v8
+#undef STACKFRAME
#define STACKFRAME 104 /* 16*4 register window +
1*4 struct return +
6*4 args backing store +
@@ -128,14 +129,17 @@ ffi_closure_v8:
! Call ffi_closure_sparc_inner to do the bulk of the work.
mov %g2, %o0
add %fp, -8, %o1
- add %fp, 68, %o2
- call ffi_closure_sparc_inner
- mov 0, %o3
+ call ffi_closure_sparc_inner_v8
+ add %fp, 64, %o2
! Load up the return value in the proper type.
+ ! See ffi_prep_cif_machdep for the list of cases.
cmp %o0, FFI_TYPE_VOID
be done1
+ cmp %o0, FFI_TYPE_INT
+ be integer
+
cmp %o0, FFI_TYPE_FLOAT
be,a done1
ld [%fp-8], %f0
@@ -144,19 +148,26 @@ ffi_closure_v8:
be,a done1
ldd [%fp-8], %f0
- cmp %o0, FFI_TYPE_SINT64
- be,a integer
- ld [%fp-4], %i1
+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
+ cmp %o0, FFI_TYPE_LONGDOUBLE
+ be done2
+#endif
+
+ cmp %o0, FFI_TYPE_STRUCT
+ be done2
- cmp %o0, FFI_TYPE_UINT64
- be,a integer
- ld [%fp-4], %i1
+ ! FFI_TYPE_SINT64
+ ld [%fp-4], %i1
integer:
ld [%fp-8], %i0
done1:
- ret
+ jmp %i7+8
+ restore
+done2:
+ ! Skip 'unimp'.
+ jmp %i7+12
restore
.LLFE2:
diff --git a/libffi/src/sparc/v9.S b/libffi/src/sparc/v9.S
index 03b487bb54d..d640e0232d5 100644
--- a/libffi/src/sparc/v9.S
+++ b/libffi/src/sparc/v9.S
@@ -1,7 +1,7 @@
/* -----------------------------------------------------------------------
- v9.S - Copyright (c) 2000, 2003 Red Hat, Inc.
+ v9.S - Copyright (c) 2000, 2003, 2004 Red Hat, Inc.
- Sparc 64bit Foreign Function Interface
+ SPARC 64-bit Foreign Function Interface
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
@@ -37,11 +37,11 @@
.text
.align 8
-.globl ffi_call_V9
-.globl _ffi_call_V9
+.globl ffi_call_v9
+.globl _ffi_call_v9
-ffi_call_V9:
-_ffi_call_V9:
+ffi_call_v9:
+_ffi_call_v9:
.LLFB1:
save %sp, -STACKFRAME, %sp
.LLCFI0:
@@ -87,7 +87,7 @@ _ffi_call_V9:
cmp %i3, FFI_TYPE_INT
be,a,pt %icc, done
- stx %o0, [%i4] ! (delay)
+ stx %o0, [%i4+0] ! (delay)
cmp %i3, FFI_TYPE_FLOAT
be,a,pn %icc, done
@@ -123,13 +123,14 @@ dostruct:
restore
.LLFE1:
-.ffi_call_V9_end:
- .size ffi_call_V9,.ffi_call_V9_end-ffi_call_V9
+.ffi_call_v9_end:
+ .size ffi_call_v9,.ffi_call_v9_end-ffi_call_v9
-#define STACKFRAME 320 /* 16*8 register window +
+#undef STACKFRAME
+#define STACKFRAME 336 /* 16*8 register window +
6*8 args backing store +
- 18*8 locals */
+ 20*8 locals */
#define FP %fp+STACK_BIAS
/* ffi_closure_v9(...)
@@ -173,46 +174,55 @@ ffi_closure_v9:
! Call ffi_closure_sparc_inner to do the bulk of the work.
mov %g1, %o0
- add %fp, STACK_BIAS-144, %o1
+ add %fp, STACK_BIAS-160, %o1
add %fp, STACK_BIAS+128, %o2
- call ffi_closure_sparc_inner
- add %fp, STACK_BIAS-128, %o3
+ call ffi_closure_sparc_inner_v9
+ add %fp, STACK_BIAS-128, %o3
! Load up the return value in the proper type.
+ ! See ffi_prep_cif_machdep for the list of cases.
cmp %o0, FFI_TYPE_VOID
be,pn %icc, done1
+ cmp %o0, FFI_TYPE_INT
+ be,pn %icc, integer
+
cmp %o0, FFI_TYPE_FLOAT
be,a,pn %icc, done1
- ld [FP-144], %f0
+ ld [FP-160], %f0
cmp %o0, FFI_TYPE_DOUBLE
be,a,pn %icc, done1
- ldd [FP-144], %f0
+ ldd [FP-160], %f0
+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
cmp %o0, FFI_TYPE_LONGDOUBLE
be,a,pn %icc, longdouble1
- ldd [FP-144], %f0
+ ldd [FP-160], %f0
+#endif
- cmp %o0, FFI_TYPE_STRUCT
- be,pn %icc, struct1
+ ! FFI_TYPE_STRUCT
+ ldx [FP-152], %i1
+ ldx [FP-144], %i2
+ ldx [FP-136], %i3
+ ldd [FP-160], %f0
+ ldd [FP-152], %f2
+ ldd [FP-144], %f4
+ ldd [FP-136], %f6
- ! FFI_TYPE_UINT64 | FFI_TYPE_SINT64 | FFI_TYPE_POINTER
- ldx [FP-144], %i0
+integer:
+ ldx [FP-160], %i0
done1:
ret
restore
-struct1:
- ldx [FP-136], %i2
- ret
- restore
-
+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
longdouble1:
- ldd [FP-136], %f2
+ ldd [FP-152], %f2
ret
restore
+#endif
.LLFE2:
.ffi_closure_v9_end:
diff --git a/libffi/src/types.c b/libffi/src/types.c
index df32190d115..27fee3b7937 100644
--- a/libffi/src/types.c
+++ b/libffi/src/types.c
@@ -43,7 +43,7 @@ FFI_INTEGRAL_TYPEDEF(sint32, 4, 4, FFI_TYPE_SINT32);
FFI_INTEGRAL_TYPEDEF(float, 4, 4, FFI_TYPE_FLOAT);
#if defined ALPHA || defined SPARC64 || defined X86_64 || defined S390X \
- || defined IA64
+ || defined IA64 || defined POWERPC64
FFI_INTEGRAL_TYPEDEF(pointer, 8, 8, FFI_TYPE_POINTER);
@@ -90,7 +90,7 @@ FFI_INTEGRAL_TYPEDEF(longdouble, 16, 16, FFI_TYPE_LONGDOUBLE);
FFI_INTEGRAL_TYPEDEF(longdouble, 16, 8, FFI_TYPE_LONGDOUBLE);
#endif
-#elif defined X86_64
+#elif defined X86_64 || defined POWERPC64
FFI_INTEGRAL_TYPEDEF(double, 8, 8, FFI_TYPE_DOUBLE);
FFI_INTEGRAL_TYPEDEF(longdouble, 16, 16, FFI_TYPE_LONGDOUBLE);
diff --git a/libffi/testsuite/libffi.call/cls_align_longdouble.c b/libffi/testsuite/libffi.call/cls_align_longdouble.c
index a4c33481c8a..aacfcbafd8c 100644
--- a/libffi/testsuite/libffi.call/cls_align_longdouble.c
+++ b/libffi/testsuite/libffi.call/cls_align_longdouble.c
@@ -5,6 +5,8 @@
Originator: <hos@tamanegi.org> 20031203 */
/* { dg-do run { xfail mips*-*-* arm*-*-* strongarm*-*-* xscale*-*-* } } */
+/* { dg-options -mlong-double-128 { target powerpc64*-*-* } } */
+
#include "ffitest.h"
typedef struct cls_struct_align {
diff --git a/libffi/testsuite/libffi.call/cls_uint.c b/libffi/testsuite/libffi.call/cls_uint.c
index 501e179fd7f..e24e7bd44b6 100644
--- a/libffi/testsuite/libffi.call/cls_uint.c
+++ b/libffi/testsuite/libffi.call/cls_uint.c
@@ -10,10 +10,10 @@
static void cls_ret_uint_fn(ffi_cif* cif,void* resp,void** args,
void* userdata)
{
- *(unsigned int*)resp = *(unsigned int *)args[0];
+ *(ffi_arg *)resp = *(unsigned int *)args[0];
printf("%d: %d\n",*(unsigned int *)args[0],
- *(unsigned int *)resp);
+ *(ffi_arg *)resp);
}
typedef unsigned int (*cls_ret_uint)(unsigned int);
diff --git a/libffi/testsuite/libffi.call/float.c b/libffi/testsuite/libffi.call/float.c
index e5ee05b1464..d712fb1021a 100644
--- a/libffi/testsuite/libffi.call/float.c
+++ b/libffi/testsuite/libffi.call/float.c
@@ -5,6 +5,8 @@
Originator: From the original ffitest.c */
/* { dg-do run } */
+/* { dg-options -mlong-double-128 { target powerpc64*-*-* } } */
+
#include "ffitest.h"
static int floating(int a, float b, double c, long double d, int e)
@@ -28,8 +30,6 @@ int main (void)
double d;
long double ld;
signed int si2;
-
-
args[0] = &ffi_type_sint;
values[0] = &si1;
@@ -41,7 +41,7 @@ int main (void)
values[3] = &ld;
args[4] = &ffi_type_sint;
values[4] = &si2;
-
+
/* Initialize the cif */
CHECK(ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 5,
&ffi_type_sint, args) == FFI_OK);
@@ -51,15 +51,14 @@ int main (void)
d = (double)1.0/(double)3.0;
ld = 2.71828182846L;
si2 = 10;
-
+
floating (si1, f, d, ld, si2);
-
+
ffi_call(&cif, FFI_FN(floating), &rint, values);
-
+
printf ("%d vs %d\n", (int)rint, floating (si1, f, d, ld, si2));
-
+
CHECK(rint == floating(si1, f, d, ld, si2));
-
+
exit (0);
}
-
diff --git a/libffi/testsuite/libffi.call/float2.c b/libffi/testsuite/libffi.call/float2.c
index 413521280a3..4de41d356c4 100644
--- a/libffi/testsuite/libffi.call/float2.c
+++ b/libffi/testsuite/libffi.call/float2.c
@@ -5,6 +5,8 @@
Originator: From the original ffitest.c */
/* { dg-do run } */
+/* { dg-options -mlong-double-128 { target powerpc64*-*-* } } */
+
#include "ffitest.h"
#include "float.h"
@@ -23,14 +25,14 @@ int main (void)
args[0] = &ffi_type_float;
values[0] = &f;
-
+
/* Initialize the cif */
- CHECK(ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 1,
+ CHECK(ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 1,
&ffi_type_longdouble, args) == FFI_OK);
-
+
f = 3.14159;
-
-#if 1
+
+#if 1
/* This is ifdef'd out for now. long double support under SunOS/gcc
is pretty much non-existent. You'll get the odd bus error in library
routines like printf(). */
@@ -38,14 +40,14 @@ int main (void)
#endif
ld = 666;
ffi_call(&cif, FFI_FN(ldblit), &ld, values);
-
-#if 1
+
+#if 1
/* This is ifdef'd out for now. long double support under SunOS/gcc
is pretty much non-existent. You'll get the odd bus error in library
routines like printf(). */
printf ("%Lf, %Lf, %Lf, %Lf\n", ld, ldblit(f), ld - ldblit(f), LDBL_EPSILON);
#endif
-
+
/* These are not always the same!! Check for a reasonable delta */
/*@-realcompare@*/
if (ld - ldblit(f) < LDBL_EPSILON)
diff --git a/libffi/testsuite/libffi.call/pyobjc-tc.c b/libffi/testsuite/libffi.call/pyobjc-tc.c
index ac092de3327..017323cbc80 100644
--- a/libffi/testsuite/libffi.call/pyobjc-tc.c
+++ b/libffi/testsuite/libffi.call/pyobjc-tc.c
@@ -93,7 +93,7 @@ int main(void)
int o = 0;
int l = 42;
char* m = "myMethod";
- int result;
+ ffi_arg result;
values[0] = &o;
values[1] = &m;
diff --git a/libffi/testsuite/libffi.call/struct3.c b/libffi/testsuite/libffi.call/struct3.c
index c994b8fa3b2..e0bb09b0788 100644
--- a/libffi/testsuite/libffi.call/struct3.c
+++ b/libffi/testsuite/libffi.call/struct3.c
@@ -52,7 +52,7 @@ int main (void)
printf ("%d %d\n", ts3_result->si, -(compare_value*2));
- CHECK(ts3_result->si == -(ts3_arg.si*2));
+ CHECK(ts3_result->si == -(compare_value*2));
free (ts3_result);
exit(0);
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
index 30295c21d3e..31235d3b100 100644
--- a/libiberty/ChangeLog
+++ b/libiberty/ChangeLog
@@ -1,3 +1,55 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-02-25 Ian Lance Taylor <ian@wasabisystems.com>
+
+ Taken from mainline:
+
+ 2004-02-24 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * cp-demangle.h (enum d_builtin_type_print): Add D_PRINT_UNSIGNED,
+ D_PRINT_UNSIGNED_LONG, D_PRINT_LONG_LONG,
+ D_PRINT_UNSIGNED_LONG_LONG, D_PRINT_FLOAT.
+ * cp-demangle.c (cplus_demangle_builtin_types): Change char and
+ short types to D_PRINT_DEFAULT. Change other integer types to use
+ new D_PRINT_* values where appropriate. Change float types to
+ D_PRINT_FLOAT.
+ (d_print_comp) [LITERAL, LITERAL_NEG]: Handle new D_PRINT_*
+ values.
+ * testsuite/demangle-expected: Adjust two test cases.
+
+ * cp-demangle.c (d_print_function_type): Print a space before the
+ parenthesis around the function type in more cases.
+ * testsuite/demangle-expected: Adjust one test case.
+
+ * cp-demangle.c (d_print_comp) [UNARY]: Don't emit extra
+ parentheses around a cast.
+ * testsuite/demangle-expected: Adjust two test cases to match new
+ output.
+
+ * cp-demangle.c (__cxa_demangle): Pass DMGL_PARAMS to d_demangle.
+
+ * cp-demangle.c (d_print_comp) [RESTRICT, VOLATILE, CONST]: Don't
+ push more than one of the same CV-qualifier on the top of the
+ stack.
+ (d_print_comp) [ARRAY_TYPE]: If the array itself is CV-qualified,
+ move the CV-qualifiers to apply to the element type instead.
+ (d_print_array_type): When checking the modifiers, keep looking
+ past ones which have been printed already.
+ * testsuite/demangle-expected: Add three test cases.
+
+ 2004-02-23 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * cp-demangle.c (__cxa_demangle): Adjust last patch to handle
+ empty string correctly.
+
+ * cp-demangle.c (__cxa_demangle): It is not an error if status is
+ not NULL. It is an error if the mangled name is the same as a
+ built-in type name.
+ (main): If IN_GLIBCPP_V3 is defined, test __cxa_demangle rather
+ than cplus_demangle_v3.
+
2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
* strdup.c (strdup): Constify the argument.
diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c
index 19f191ed8b8..fe4b36712d3 100644
--- a/libiberty/cp-demangle.c
+++ b/libiberty/cp-demangle.c
@@ -1748,31 +1748,33 @@ CP_STATIC_IF_GLIBCPP_V3
const struct demangle_builtin_type_info
cplus_demangle_builtin_types[D_BUILTIN_TYPE_COUNT] =
{
- /* a */ { NL ("signed char"), NL ("signed char"), D_PRINT_INT },
+ /* a */ { NL ("signed char"), NL ("signed char"), D_PRINT_DEFAULT },
/* b */ { NL ("bool"), NL ("boolean"), D_PRINT_BOOL },
- /* c */ { NL ("char"), NL ("byte"), D_PRINT_INT },
- /* d */ { NL ("double"), NL ("double"), D_PRINT_DEFAULT },
- /* e */ { NL ("long double"), NL ("long double"), D_PRINT_DEFAULT },
- /* f */ { NL ("float"), NL ("float"), D_PRINT_DEFAULT },
- /* g */ { NL ("__float128"), NL ("__float128"), D_PRINT_DEFAULT },
- /* h */ { NL ("unsigned char"), NL ("unsigned char"), D_PRINT_INT },
+ /* c */ { NL ("char"), NL ("byte"), D_PRINT_DEFAULT },
+ /* d */ { NL ("double"), NL ("double"), D_PRINT_FLOAT },
+ /* e */ { NL ("long double"), NL ("long double"), D_PRINT_FLOAT },
+ /* f */ { NL ("float"), NL ("float"), D_PRINT_FLOAT },
+ /* g */ { NL ("__float128"), NL ("__float128"), D_PRINT_FLOAT },
+ /* h */ { NL ("unsigned char"), NL ("unsigned char"), D_PRINT_DEFAULT },
/* i */ { NL ("int"), NL ("int"), D_PRINT_INT },
- /* j */ { NL ("unsigned int"), NL ("unsigned"), D_PRINT_INT },
+ /* j */ { NL ("unsigned int"), NL ("unsigned"), D_PRINT_UNSIGNED },
/* k */ { NULL, 0, NULL, 0, D_PRINT_DEFAULT },
/* l */ { NL ("long"), NL ("long"), D_PRINT_LONG },
- /* m */ { NL ("unsigned long"), NL ("unsigned long"), D_PRINT_LONG },
+ /* m */ { NL ("unsigned long"), NL ("unsigned long"), D_PRINT_UNSIGNED_LONG },
/* n */ { NL ("__int128"), NL ("__int128"), D_PRINT_DEFAULT },
- /* o */ { NL ("unsigned __int128"), NL ("unsigned __int128"), D_PRINT_DEFAULT },
+ /* o */ { NL ("unsigned __int128"), NL ("unsigned __int128"),
+ D_PRINT_DEFAULT },
/* p */ { NULL, 0, NULL, 0, D_PRINT_DEFAULT },
/* q */ { NULL, 0, NULL, 0, D_PRINT_DEFAULT },
/* r */ { NULL, 0, NULL, 0, D_PRINT_DEFAULT },
- /* s */ { NL ("short"), NL ("short"), D_PRINT_INT },
- /* t */ { NL ("unsigned short"), NL ("unsigned short"), D_PRINT_INT },
+ /* s */ { NL ("short"), NL ("short"), D_PRINT_DEFAULT },
+ /* t */ { NL ("unsigned short"), NL ("unsigned short"), D_PRINT_DEFAULT },
/* u */ { NULL, 0, NULL, 0, D_PRINT_DEFAULT },
/* v */ { NL ("void"), NL ("void"), D_PRINT_VOID },
- /* w */ { NL ("wchar_t"), NL ("char"), D_PRINT_INT },
- /* x */ { NL ("long long"), NL ("long"), D_PRINT_DEFAULT },
- /* y */ { NL ("unsigned long long"), NL ("unsigned long long"), D_PRINT_DEFAULT },
+ /* w */ { NL ("wchar_t"), NL ("char"), D_PRINT_DEFAULT },
+ /* x */ { NL ("long long"), NL ("long"), D_PRINT_LONG_LONG },
+ /* y */ { NL ("unsigned long long"), NL ("unsigned long long"),
+ D_PRINT_UNSIGNED_LONG_LONG },
/* z */ { NL ("..."), NL ("..."), D_PRINT_DEFAULT },
};
@@ -3050,6 +3052,30 @@ d_print_comp (dpi, dc)
case DEMANGLE_COMPONENT_RESTRICT:
case DEMANGLE_COMPONENT_VOLATILE:
case DEMANGLE_COMPONENT_CONST:
+ {
+ struct d_print_mod *pdpm;
+
+ /* When printing arrays, it's possible to have cases where the
+ same CV-qualifier gets pushed on the stack multiple times.
+ We only need to print it once. */
+
+ for (pdpm = dpi->modifiers; pdpm != NULL; pdpm = pdpm->next)
+ {
+ if (! pdpm->printed)
+ {
+ if (pdpm->mod->type != DEMANGLE_COMPONENT_RESTRICT
+ && pdpm->mod->type != DEMANGLE_COMPONENT_VOLATILE
+ && pdpm->mod->type != DEMANGLE_COMPONENT_CONST)
+ break;
+ if (pdpm->mod->type == dc->type)
+ {
+ d_print_comp (dpi, d_left (dc));
+ return;
+ }
+ }
+ }
+ }
+ /* Fall through. */
case DEMANGLE_COMPONENT_RESTRICT_THIS:
case DEMANGLE_COMPONENT_VOLATILE_THIS:
case DEMANGLE_COMPONENT_CONST_THIS:
@@ -3125,24 +3151,65 @@ d_print_comp (dpi, dc)
case DEMANGLE_COMPONENT_ARRAY_TYPE:
{
- struct d_print_mod dpm;
+ struct d_print_mod *hold_modifiers;
+ struct d_print_mod adpm[4];
+ unsigned int i;
+ struct d_print_mod *pdpm;
/* We must pass this type down as a modifier in order to print
- multi-dimensional arrays correctly. */
+ multi-dimensional arrays correctly. If the array itself is
+ CV-qualified, we act as though the element type were
+ CV-qualified. We do this by copying the modifiers down
+ rather than fiddling pointers, so that we don't wind up
+ with a d_print_mod higher on the stack pointing into our
+ stack frame after we return. */
- dpm.next = dpi->modifiers;
- dpi->modifiers = &dpm;
- dpm.mod = dc;
- dpm.printed = 0;
- dpm.templates = dpi->templates;
+ hold_modifiers = dpi->modifiers;
+
+ adpm[0].next = hold_modifiers;
+ dpi->modifiers = &adpm[0];
+ adpm[0].mod = dc;
+ adpm[0].printed = 0;
+ adpm[0].templates = dpi->templates;
+
+ i = 1;
+ pdpm = hold_modifiers;
+ while (pdpm != NULL
+ && (pdpm->mod->type == DEMANGLE_COMPONENT_RESTRICT
+ || pdpm->mod->type == DEMANGLE_COMPONENT_VOLATILE
+ || pdpm->mod->type == DEMANGLE_COMPONENT_CONST))
+ {
+ if (! pdpm->printed)
+ {
+ if (i >= sizeof adpm / sizeof adpm[0])
+ {
+ d_print_error (dpi);
+ return;
+ }
+
+ adpm[i] = *pdpm;
+ adpm[i].next = dpi->modifiers;
+ dpi->modifiers = &adpm[i];
+ pdpm->printed = 1;
+ ++i;
+ }
+
+ pdpm = pdpm->next;
+ }
d_print_comp (dpi, d_right (dc));
- dpi->modifiers = dpm.next;
+ dpi->modifiers = hold_modifiers;
- if (dpm.printed)
+ if (adpm[0].printed)
return;
+ while (i > 1)
+ {
+ --i;
+ d_print_mod (dpi, adpm[i].mod);
+ }
+
d_print_array_type (dpi, dc, dpi->modifiers);
return;
@@ -3212,15 +3279,13 @@ d_print_comp (dpi, dc)
d_print_expr_op (dpi, d_left (dc));
else
{
- d_append_string_constant (dpi, "((");
+ d_append_char (dpi, '(');
d_print_cast (dpi, d_left (dc));
d_append_char (dpi, ')');
}
d_append_char (dpi, '(');
d_print_comp (dpi, d_right (dc));
d_append_char (dpi, ')');
- if (d_left (dc)->type == DEMANGLE_COMPONENT_CAST)
- d_append_char (dpi, ')');
return;
case DEMANGLE_COMPONENT_BINARY:
@@ -3284,62 +3349,86 @@ d_print_comp (dpi, dc)
case DEMANGLE_COMPONENT_LITERAL:
case DEMANGLE_COMPONENT_LITERAL_NEG:
- /* For some builtin types, produce simpler output. */
- if (d_left (dc)->type == DEMANGLE_COMPONENT_BUILTIN_TYPE)
- {
- switch (d_left (dc)->u.s_builtin.type->print)
- {
- case D_PRINT_INT:
- if (d_right (dc)->type == DEMANGLE_COMPONENT_NAME)
- {
- if (dc->type == DEMANGLE_COMPONENT_LITERAL_NEG)
- d_append_char (dpi, '-');
- d_print_comp (dpi, d_right (dc));
- return;
- }
- break;
+ {
+ enum d_builtin_type_print tp;
- case D_PRINT_LONG:
- if (d_right (dc)->type == DEMANGLE_COMPONENT_NAME)
- {
- if (dc->type == DEMANGLE_COMPONENT_LITERAL_NEG)
- d_append_char (dpi, '-');
- d_print_comp (dpi, d_right (dc));
- d_append_char (dpi, 'l');
- return;
- }
- break;
+ /* For some builtin types, produce simpler output. */
+ tp = D_PRINT_DEFAULT;
+ if (d_left (dc)->type == DEMANGLE_COMPONENT_BUILTIN_TYPE)
+ {
+ tp = d_left (dc)->u.s_builtin.type->print;
+ switch (tp)
+ {
+ case D_PRINT_INT:
+ case D_PRINT_UNSIGNED:
+ case D_PRINT_LONG:
+ case D_PRINT_UNSIGNED_LONG:
+ case D_PRINT_LONG_LONG:
+ case D_PRINT_UNSIGNED_LONG_LONG:
+ if (d_right (dc)->type == DEMANGLE_COMPONENT_NAME)
+ {
+ if (dc->type == DEMANGLE_COMPONENT_LITERAL_NEG)
+ d_append_char (dpi, '-');
+ d_print_comp (dpi, d_right (dc));
+ switch (tp)
+ {
+ default:
+ break;
+ case D_PRINT_UNSIGNED:
+ d_append_char (dpi, 'u');
+ break;
+ case D_PRINT_LONG:
+ d_append_char (dpi, 'l');
+ break;
+ case D_PRINT_UNSIGNED_LONG:
+ d_append_string_constant (dpi, "ul");
+ break;
+ case D_PRINT_LONG_LONG:
+ d_append_string_constant (dpi, "ll");
+ break;
+ case D_PRINT_UNSIGNED_LONG_LONG:
+ d_append_string_constant (dpi, "ull");
+ break;
+ }
+ return;
+ }
+ break;
- case D_PRINT_BOOL:
- if (d_right (dc)->type == DEMANGLE_COMPONENT_NAME
- && d_right (dc)->u.s_name.len == 1
- && dc->type == DEMANGLE_COMPONENT_LITERAL)
- {
- switch (d_right (dc)->u.s_name.s[0])
- {
- case '0':
- d_append_string_constant (dpi, "false");
- return;
- case '1':
- d_append_string_constant (dpi, "true");
- return;
- default:
- break;
- }
- }
- break;
+ case D_PRINT_BOOL:
+ if (d_right (dc)->type == DEMANGLE_COMPONENT_NAME
+ && d_right (dc)->u.s_name.len == 1
+ && dc->type == DEMANGLE_COMPONENT_LITERAL)
+ {
+ switch (d_right (dc)->u.s_name.s[0])
+ {
+ case '0':
+ d_append_string_constant (dpi, "false");
+ return;
+ case '1':
+ d_append_string_constant (dpi, "true");
+ return;
+ default:
+ break;
+ }
+ }
+ break;
- default:
- break;
- }
- }
+ default:
+ break;
+ }
+ }
- d_append_char (dpi, '(');
- d_print_comp (dpi, d_left (dc));
- d_append_char (dpi, ')');
- if (dc->type == DEMANGLE_COMPONENT_LITERAL_NEG)
- d_append_char (dpi, '-');
- d_print_comp (dpi, d_right (dc));
+ d_append_char (dpi, '(');
+ d_print_comp (dpi, d_left (dc));
+ d_append_char (dpi, ')');
+ if (dc->type == DEMANGLE_COMPONENT_LITERAL_NEG)
+ d_append_char (dpi, '-');
+ if (tp == D_PRINT_FLOAT)
+ d_append_char (dpi, '[');
+ d_print_comp (dpi, d_right (dc));
+ if (tp == D_PRINT_FLOAT)
+ d_append_char (dpi, ']');
+ }
return;
default:
@@ -3549,11 +3638,13 @@ d_print_function_type (dpi, dc, mods)
{
int need_paren;
int saw_mod;
+ int need_space;
struct d_print_mod *p;
struct d_print_mod *hold_modifiers;
need_paren = 0;
saw_mod = 0;
+ need_space = 0;
for (p = mods; p != NULL; p = p->next)
{
if (p->printed)
@@ -3562,15 +3653,18 @@ d_print_function_type (dpi, dc, mods)
saw_mod = 1;
switch (p->mod->type)
{
+ case DEMANGLE_COMPONENT_POINTER:
+ case DEMANGLE_COMPONENT_REFERENCE:
+ need_paren = 1;
+ break;
case DEMANGLE_COMPONENT_RESTRICT:
case DEMANGLE_COMPONENT_VOLATILE:
case DEMANGLE_COMPONENT_CONST:
case DEMANGLE_COMPONENT_VENDOR_TYPE_QUAL:
- case DEMANGLE_COMPONENT_POINTER:
- case DEMANGLE_COMPONENT_REFERENCE:
case DEMANGLE_COMPONENT_COMPLEX:
case DEMANGLE_COMPONENT_IMAGINARY:
case DEMANGLE_COMPONENT_PTRMEM_TYPE:
+ need_space = 1;
need_paren = 1;
break;
case DEMANGLE_COMPONENT_RESTRICT_THIS:
@@ -3589,18 +3683,14 @@ d_print_function_type (dpi, dc, mods)
if (need_paren)
{
- switch (d_last_char (dpi))
+ if (! need_space)
{
- case ' ':
- case '(':
- case '*':
- break;
-
- default:
- d_append_char (dpi, ' ');
- break;
+ if (d_last_char (dpi) != '('
+ && d_last_char (dpi) != '*')
+ need_space = 1;
}
-
+ if (need_space && d_last_char (dpi) != ' ')
+ d_append_char (dpi, ' ');
d_append_char (dpi, '(');
}
@@ -3643,19 +3733,19 @@ d_print_array_type (dpi, dc, mods)
need_paren = 0;
for (p = mods; p != NULL; p = p->next)
{
- if (p->printed)
- break;
-
- if (p->mod->type == DEMANGLE_COMPONENT_ARRAY_TYPE)
- {
- need_space = 0;
- break;
- }
- else
+ if (! p->printed)
{
- need_paren = 1;
- need_space = 1;
- break;
+ if (p->mod->type == DEMANGLE_COMPONENT_ARRAY_TYPE)
+ {
+ need_space = 0;
+ break;
+ }
+ else
+ {
+ need_paren = 1;
+ need_space = 1;
+ break;
+ }
}
}
@@ -3944,29 +4034,46 @@ __cxa_demangle (mangled_name, output_buffer, length, status)
char *demangled;
size_t alc;
- if (status == NULL)
- return NULL;
-
if (mangled_name == NULL)
{
- *status = -3;
+ if (status != NULL)
+ *status = -3;
return NULL;
}
if (output_buffer != NULL && length == NULL)
{
- *status = -3;
+ if (status != NULL)
+ *status = -3;
+ return NULL;
+ }
+
+ /* The specification for __cxa_demangle() is that if the mangled
+ name could be either an extern "C" identifier, or an internal
+ built-in type name, then we resolve it as the identifier. All
+ internal built-in type names are a single lower case character.
+ Frankly, this simplistic disambiguation doesn't make sense to me,
+ but it is documented, so we implement it here. */
+ if (IS_LOWER (mangled_name[0])
+ && mangled_name[1] == '\0'
+ && cplus_demangle_builtin_types[mangled_name[0] - 'a'].name != NULL)
+ {
+ if (status != NULL)
+ *status = -2;
return NULL;
}
- demangled = d_demangle (mangled_name, DMGL_TYPES, &alc);
+ demangled = d_demangle (mangled_name, DMGL_PARAMS | DMGL_TYPES, &alc);
if (demangled == NULL)
{
- if (alc == 1)
- *status = -1;
- else
- *status = -2;
+ if (status != NULL)
+ {
+ if (alc == 1)
+ *status = -1;
+ else
+ *status = -2;
+ }
return NULL;
}
@@ -3990,7 +4097,8 @@ __cxa_demangle (mangled_name, output_buffer, length, status)
}
}
- *status = 0;
+ if (status != NULL)
+ *status = 0;
return demangled;
}
@@ -4296,7 +4404,11 @@ main (argc, argv)
if (dyn_string_length (mangled) > 0)
{
+#ifdef IN_GLIBCPP_V3
+ s = __cxa_demangle (dyn_string_buf (mangled), NULL, NULL, NULL);
+#else
s = cplus_demangle_v3 (dyn_string_buf (mangled), options);
+#endif
if (s != NULL)
{
@@ -4328,9 +4440,16 @@ main (argc, argv)
for (i = optind; i < argc; ++i)
{
char *s;
+#ifdef IN_GLIBCPP_V3
+ int status;
+#endif
/* Attempt to demangle. */
+#ifdef IN_GLIBCPP_V3
+ s = __cxa_demangle (argv[i], NULL, NULL, &status);
+#else
s = cplus_demangle_v3 (argv[i], options);
+#endif
/* If it worked, print the demangled name. */
if (s != NULL)
@@ -4339,7 +4458,13 @@ main (argc, argv)
free (s);
}
else
- fprintf (stderr, "Failed: %s\n", argv[i]);
+ {
+#ifdef IN_GLIBCPP_V3
+ fprintf (stderr, "Failed: %s (status %d)\n", argv[i], status);
+#else
+ fprintf (stderr, "Failed: %s\n", argv[i]);
+#endif
+ }
}
}
diff --git a/libiberty/cp-demangle.h b/libiberty/cp-demangle.h
index d3c57ce3766..eea086862d6 100644
--- a/libiberty/cp-demangle.h
+++ b/libiberty/cp-demangle.h
@@ -53,10 +53,20 @@ enum d_builtin_type_print
D_PRINT_DEFAULT,
/* Print as integer. */
D_PRINT_INT,
- /* Print as long, with trailing `l'. */
+ /* Print as unsigned integer, with trailing "u". */
+ D_PRINT_UNSIGNED,
+ /* Print as long, with trailing "l". */
D_PRINT_LONG,
+ /* Print as unsigned long, with trailing "ul". */
+ D_PRINT_UNSIGNED_LONG,
+ /* Print as long long, with trailing "ll". */
+ D_PRINT_LONG_LONG,
+ /* Print as unsigned long long, with trailing "ull". */
+ D_PRINT_UNSIGNED_LONG_LONG,
/* Print as bool. */
D_PRINT_BOOL,
+ /* Print as float--put value in square brackets. */
+ D_PRINT_FLOAT,
/* Print in usual way, but here to detect void. */
D_PRINT_VOID
};
diff --git a/libiberty/testsuite/demangle-expected b/libiberty/testsuite/demangle-expected
index 25e88309b76..9a3f0b9da8d 100644
--- a/libiberty/testsuite/demangle-expected
+++ b/libiberty/testsuite/demangle-expected
@@ -3591,13 +3591,13 @@ hairyfunc5
# This is from gcc PR 8861
--format=gnu-v3 --no-params
_Z1fILi1ELc120EEv1AIXplT_cviLd810000000000000000703DAD7A370C5EEE
-void f<1, 120>(A<(1) + (((int)((double)810000000000000000703DAD7A370C5)))>)
-f<1, 120>
+void f<1, (char)120>(A<(1) + ((int)((double)[810000000000000000703DAD7A370C5]))>)
+f<1, (char)120>
#
# This is also from gcc PR 8861
--format=gnu-v3 --no-params
_Z1fILi1EEv1AIXplT_cvingLf3f800000EEE
-void f<1>(A<(1) + (((int)(-((float)3f800000))))>)
+void f<1>(A<(1) + ((int)(-((float)[3f800000])))>)
f<1>
#
# This is from a libstdc++ debug mode patch.
@@ -3635,7 +3635,7 @@ std::operator< <file_path, std::string>
# More hairy qualifier handling.
--format=gnu-v3 --no-params
_Z9hairyfuncM1YKFPVPFrPA2_PM1XKFKPA3_ilEPcEiE
-hairyfunc(int (* const (X::** (* restrict (* volatile*(Y::*)(int) const)(char*)) [2])(long) const) [3])
+hairyfunc(int (* const (X::** (* restrict (* volatile* (Y::*)(int) const)(char*)) [2])(long) const) [3])
hairyfunc
#
# Check that negative numbers are handled correctly.
@@ -3681,6 +3681,24 @@ _ZNK5boost6spirit5matchI13rcs_deltatextEcvMNS0_4impl5dummyEFvvEEv
boost::spirit::match<rcs_deltatext>::operator void (boost::spirit::impl::dummy::*)()() const
boost::spirit::match<rcs_deltatext>::operator void (boost::spirit::impl::dummy::*)()
#
+# Multi-dimensional arrays with qualifiers on the inner dimensions.
+--format=gnu-v3 --no-params
+_Z3fooIA6_KiEvA9_KT_rVPrS4_
+void foo<int const [6]>(int const [9][6], int restrict const (* volatile restrict) [9][6])
+foo<int const [6]>
+#
+# From PR libstdc++/12736
+--format=gnu-v3 --no-params
+_Z3fooIA3_iEvRKT_
+void foo<int [3]>(int const (&) [3])
+foo<int [3]>
+#
+# Related to PR libstdc++/12736
+--format=gnu-v3 --no-params
+_Z3fooIPA3_iEvRKT_
+void foo<int (*) [3]>(int (* const&) [3])
+foo<int (*) [3]>
+#
# Test GNU V3 constructor and destructor identification.
# 0 means it is not a constructor/destructor.
# Other integers correspond to enum gnu_v3_{c,d}tor_kinds in demangle.h.
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 517aea5b2c4..73766a484c3 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,165 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-03-19 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * verify.cc: Undef PC.
+
+2004-03-11 Alan Modra <amodra@bigpond.net.au>
+
+ * include/powerpc-signal.h: Revert 2004-01-21 change.
+ (INIT_SEGV, INIT_FPE): Provide powerpc64 versions. Check return
+ from syscall for ppc32 versions.
+
+2004-02-25 Andrew Haley <aph@redhat.com>
+
+ PR java/14296:
+ * java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA): Make sure
+ we have a valid method index.
+
+2004-02-14 Per Bothner <per@bothner.com>
+
+ * java/nio/channels/spi/AbstractInterruptibleChannel.java (close):
+ Set closed before calling implCloseChannel, as in the spec.
+
+2004-02-08 Per Bothner <per@bothner.com>
+
+ * java/nio/ByteBuffer.java (shiftDown): New helper method.
+ * java/nio/natDirectByteBufferImpl.cc (shiftDown): New implementation.
+ * java/nio/ByteBufferImpl.java (compact): Use new shiftDown method.
+ * sava/nio/ByteBufferHelper.java: Remove redundant 'final' specifiers.
+ Pass ByteOrder parameter to most methods, since the underlying
+ ByteBuffer's order isn't always what we should use.
+ * java/nio/ByteBufferImpl.java: Pass byte-order various places.
+ * java/nio/DirectByteBufferImpl.java: Likewise.
+ Use ByteBufferHelper methods.
+ * java/nio/MappedByteBufferImpl.java: Likewise.
+ (compact): Use shiftDown.
+ * java/nio/CharViewBufferImpl.java (<init>): Pass byte-order.
+ (get, put): Use ByteBufferHelper.
+ (compact): Use new shiftDown method.
+ (duplicate(boolean)): New helper method.
+ (duplicate, asReadOnlyBuffer): Use it.
+ (order): Return endian field.
+ * java/nio/DoubleViewBufferImpl.java: Likewise.
+ * java/nio/FloatViewBufferImpl.java: Likewise.
+ * java/nio/IntViewBufferImpl.java: Likewise.
+ * java/nio/LongViewBufferImpl.java: Likewise.
+ * java/nio/ShortViewBufferImpl.java: Likewise.
+ * java/nio/CharViewBufferImpl.java (subsequence): Redundant test.
+ * java/nio/DirectByteBufferImpl.java (shiftDown): New native method.
+ (compact): Re-implement using shiftDown.
+
+2004-02-05 Michael Koch <konqueror@gmx.de>
+
+ * gnu/java/nio/NIOServerSocket.java
+ (impl): Unused, removed.
+ * gnu/java/nio/SocketChannelImpl.java
+ (finnishConnect): Don't throw NoConnectionPendingException if not
+ connected or no connection pending.
+
+2004-02-03 Tom Tromey <tromey@redhat.com>
+
+ * java/lang/natPosixProcess.cc (startProcess): Handle case where
+ PATH or LD_LIBRARY_PATH is not set in parent environment.
+
+2004-02-03 Mohan Embar <gnustuff@thisiscool.com>
+
+ * gnu/java/nio/DatagramChannelImpl.java
+ (inChannelOperation): New field.
+ (isInChannelOperation): New accessor.
+ (setInChannelOperation): New modifier.
+ (receive): Use capacity() - position() of destination
+ buffer instead of remaining(). Set and reset our "in
+ channel operation indicator" before and after delegating
+ the receive to our datagram socket. Removed testing code.
+ Update destination buffer's current position if it is
+ backed by a byte array (hasArray() is true).
+ (send): Set and reset our "in channel operation indicator"
+ before and after delegating the send to our datagram socket.
+ Removed testing code. Update source buffer's current position
+ if it is backed by a byte array (hasArray() is true).
+ * gnu/java/nio/SocketChannelImpl.java (read(ByteBuffer)):
+ Use capacity() - position() of destination buffer instead
+ of remaining().
+ * java/net/DatagramSocket.java (receive): Don't throw an
+ IllegalBlockingModeException if we have a non-blocking
+ channel which initiated this operation.
+ (send): Likewise.
+
+2004-02-03 Mohan Embar <gnustuff@thisiscool.com>
+
+ * gnu/java/net/PlainSocketImpl.java
+ (inChannelOperation): New field.
+ (isInChannelOperation): New accessor.
+ (setInChannelOperation): New modifier.
+ * gnu/java/nio/ServerSocketChannelImpl.java
+ (accept): Set and reset our server socket's PlainSocketImpl's
+ "in channel operation" indicator before and after delegating
+ the accept to our server socket.
+ * gnu/java/nio/SocketChannelImpl.java
+ (connect): Set and reset our socket's PlainSocketImpl's "in channel
+ operation" indicator before and after delegating the operation to
+ our socket.
+ (read): Likewise.
+ (write): Likewise.
+ * java/net/ServerSocket.java (implAccept): Don't throw an
+ IllegalBlockingModeException if we have a non-blocking
+ channel which initiated this accept operation.
+ * java/net/Socket.java (connect): Don't throw an
+ IllegalBlockingModeException if we have a non-blocking
+ channel which initiated this connect operation.
+ * java/nio/channels/spi/AbstractSelectableChannel.java
+ (configureBlocking): Only call implConfigureBlocking() if
+ the desired blocking mode is different from our current one.
+
+2004-01-24 Michael Koch <konqueror@gmx.de>
+
+ * gnu/java/net/protocol/http/Connection.java
+ (connect): Don't initialize bufferedOutputStream if not needed.
+ (sendRequest): Set property for content length if content is present.
+ Write content only if present.
+ (getOutputStream): Check if already connected, dont connect,
+ initalize bufferedOutputStream if needed.
+
+2004-01-24 Michael Koch <konqueror@gmx.de>
+
+ * Makefile.am: Added library version to gtk peer lib.
+ * Makefile.in: Regenerated.
+
+2004-01-21 Jakub Jelinek <jakub@redhat.com>
+
+ * include/powerpc-signal.h: Add #ifndef __powerpc64__ around the
+ header. For __powerpc64__ provide the default-signal.h definitions
+ for now.
+ * include/x86_64-signal.h [!__x86_64__]: Include java-signal-aux.h
+ instead of the dummy definitions.
+ * configure.host (x86_64-*): Remove CHECKREFSPEC, add DIVIDESPEC.
+ (powerpc64*-*): Remove with_libffi_default.
+ Only add -mminimal-toc for 64-bit compilations.
+ * configure.in: Use powerpc-signal.h on powerpc64 as well.
+ (x86_64-*-linux*): Set SIGNAL_HANDLER_AUX.
+ Link SIGNAL_HANDLER_AUX to include/java-signal-aux.h.
+ * configure: Rebuilt.
+
+2004-01-21 Tom Tromey <tromey@redhat.com>
+
+ PR java/13468:
+ * Makefile.in: Rebuilt.
+ * Makefile.am (interpret.lo): New target.
+
+2004-01-20 Jakub Jelinek <jakub@redhat.com>
+
+ * Makefile.am (lib_org_w3c_dom_la_LIBADD,
+ lib_org_w3c_dom_la_LDFLAGS): New.
+ (lib_org_xml_sax_la_LIBADD, lib_org_xml_sax_la_LDFLAGS): New.
+ * Makefile.in: Rebuilt.
+
+2004-01-19 Matthias Klose <doko@debian.org>
+
+ * libtool-version: Increased `current' to 5.
+
2004-01-16 Andrew Haley <aph@redhat.com>
* sysdep/x86-64/locks.h: Don't use in/out memory constraints.
diff --git a/libjava/Makefile.am b/libjava/Makefile.am
index de91f8942f0..fa90b3f1580 100644
--- a/libjava/Makefile.am
+++ b/libjava/Makefile.am
@@ -281,6 +281,9 @@ jni/classpath/native_state.h \
jni/classpath/primlib.h
lib_gnu_java_awt_peer_gtk_la_LIBADD = $(GTK_LIBS) $(GLIB_LIBS) $(LIBART_LIBS) $(CAIRO_LIBS) $(PANGOFT2_LIBS)
+lib_gnu_java_awt_peer_gtk_la_LDFLAGS = \
+## The mysterious backslash is consumed by make.
+ -version-info `grep -v '^\#' $(srcdir)/libtool-version`
lib_org_w3c_dom_la_SOURCES = org/w3c/dom/Attr.java \
org/w3c/dom/CDATASection.java \
@@ -307,6 +310,11 @@ org/w3c/dom/traversal/DocumentTraversal.java \
org/w3c/dom/traversal/NodeFilter.java \
org/w3c/dom/traversal/NodeIterator.java \
org/w3c/dom/traversal/TreeWalker.java
+## See jv_convert_LDADD.
+lib_org_w3c_dom_la_LIBADD = -L$(here)/.libs libgcj.la
+lib_org_w3c_dom_la_LDFLAGS = -rpath $(toolexeclibdir) \
+## The mysterious backslash is consumed by make.
+ -version-info `grep -v '^\#' $(srcdir)/libtool-version`
lib_org_xml_sax_la_SOURCES = org/xml/sax/ext/DeclHandler.java \
org/xml/sax/ext/LexicalHandler.java \
@@ -338,6 +346,11 @@ org/xml/sax/SAXNotSupportedException.java \
org/xml/sax/SAXParseException.java \
org/xml/sax/XMLFilter.java \
org/xml/sax/XMLReader.java
+## See jv_convert_LDADD.
+lib_org_xml_sax_la_LIBADD = -L$(here)/.libs libgcj.la
+lib_org_xml_sax_la_LDFLAGS = -rpath $(toolexeclibdir) \
+## The mysterious backslash is consumed by make.
+ -version-info `grep -v '^\#' $(srcdir)/libtool-version`
lib_gnu_awt_xlib_la_SOURCES = $(x_nat_source_files)
EXTRA_lib_gnu_awt_xlib_la_SOURCES = $(x_java_source_files)
@@ -439,6 +452,13 @@ $(nat_files) $(x_nat_files): %.lo: %.cc
$(c_files): %.lo: %.c
$(LTCOMPILE) -c -o $@ $<
+## A special rule for interpret.lo for the time being. Our current
+## approach to stack-trace handling is fragile and will not work with
+## unit-at-a-time. So, for now we disable it. This will be fixed by
+## a larger patch in the future.
+interpret.lo: interpret.cc
+ $(LTCXXCOMPILE) -fno-unit-at-a-time -c -o $@ $<
+
$(extra_cc_files): %.lo: %.cc
$(LTCXXCOMPILE) -c -o $@ $<
diff --git a/libjava/Makefile.in b/libjava/Makefile.in
index d6cfda3545f..2f5eefca665 100644
--- a/libjava/Makefile.in
+++ b/libjava/Makefile.in
@@ -370,6 +370,9 @@ jni/classpath/primlib.h
lib_gnu_java_awt_peer_gtk_la_LIBADD = $(GTK_LIBS) $(GLIB_LIBS) $(LIBART_LIBS) $(CAIRO_LIBS) $(PANGOFT2_LIBS)
+lib_gnu_java_awt_peer_gtk_la_LDFLAGS = \
+ -version-info `grep -v '^\#' $(srcdir)/libtool-version`
+
lib_org_w3c_dom_la_SOURCES = org/w3c/dom/Attr.java \
org/w3c/dom/CDATASection.java \
@@ -397,6 +400,10 @@ org/w3c/dom/traversal/NodeFilter.java \
org/w3c/dom/traversal/NodeIterator.java \
org/w3c/dom/traversal/TreeWalker.java
+lib_org_w3c_dom_la_LIBADD = -L$(here)/.libs libgcj.la
+lib_org_w3c_dom_la_LDFLAGS = -rpath $(toolexeclibdir) \
+ -version-info `grep -v '^\#' $(srcdir)/libtool-version`
+
lib_org_xml_sax_la_SOURCES = org/xml/sax/ext/DeclHandler.java \
org/xml/sax/ext/LexicalHandler.java \
@@ -429,6 +436,10 @@ org/xml/sax/SAXParseException.java \
org/xml/sax/XMLFilter.java \
org/xml/sax/XMLReader.java
+lib_org_xml_sax_la_LIBADD = -L$(here)/.libs libgcj.la
+lib_org_xml_sax_la_LDFLAGS = -rpath $(toolexeclibdir) \
+ -version-info `grep -v '^\#' $(srcdir)/libtool-version`
+
lib_gnu_awt_xlib_la_SOURCES = $(x_nat_source_files)
EXTRA_lib_gnu_awt_xlib_la_SOURCES = $(x_java_source_files)
@@ -2681,8 +2692,7 @@ java/nio/natDirectByteBufferImpl.lo \
java/nio/channels/natFileChannelImpl.lo java/text/natCollator.lo \
java/util/natResourceBundle.lo java/util/natTimeZone.lo \
java/util/zip/natDeflater.lo java/util/zip/natInflater.lo
-lib_org_xml_sax_la_LDFLAGS =
-lib_org_xml_sax_la_LIBADD =
+lib_org_xml_sax_la_DEPENDENCIES = libgcj.la
lib_org_xml_sax_la_OBJECTS = org/xml/sax/ext/DeclHandler.lo \
org/xml/sax/ext/LexicalHandler.lo \
org/xml/sax/helpers/AttributeListImpl.lo \
@@ -2704,8 +2714,7 @@ org/xml/sax/SAXException.lo org/xml/sax/SAXNotRecognizedException.lo \
org/xml/sax/SAXNotSupportedException.lo \
org/xml/sax/SAXParseException.lo org/xml/sax/XMLFilter.lo \
org/xml/sax/XMLReader.lo
-lib_org_w3c_dom_la_LDFLAGS =
-lib_org_w3c_dom_la_LIBADD =
+lib_org_w3c_dom_la_DEPENDENCIES = libgcj.la
lib_org_w3c_dom_la_OBJECTS = org/w3c/dom/Attr.lo \
org/w3c/dom/CDATASection.lo org/w3c/dom/CharacterData.lo \
org/w3c/dom/Comment.lo org/w3c/dom/DOMException.lo \
@@ -2721,7 +2730,6 @@ org/w3c/dom/traversal/DocumentTraversal.lo \
org/w3c/dom/traversal/NodeFilter.lo \
org/w3c/dom/traversal/NodeIterator.lo \
org/w3c/dom/traversal/TreeWalker.lo
-lib_gnu_java_awt_peer_gtk_la_LDFLAGS =
lib_gnu_java_awt_peer_gtk_la_DEPENDENCIES =
@GTK_CAIRO_FALSE@lib_gnu_java_awt_peer_gtk_la_OBJECTS = \
@GTK_CAIRO_FALSE@gnu/java/awt/peer/gtk/GdkClasspathFontPeer.lo \
@@ -5235,6 +5243,9 @@ $(nat_files) $(x_nat_files): %.lo: %.cc
$(c_files): %.lo: %.c
$(LTCOMPILE) -c -o $@ $<
+interpret.lo: interpret.cc
+ $(LTCXXCOMPILE) -fno-unit-at-a-time -c -o $@ $<
+
$(extra_cc_files): %.lo: %.cc
$(LTCXXCOMPILE) -c -o $@ $<
diff --git a/libjava/configure b/libjava/configure
index 399aa6078fd..6e837132128 100755
--- a/libjava/configure
+++ b/libjava/configure
@@ -9015,6 +9015,7 @@ test -n "$PERL" || PERL="false"
SYSDEP_SOURCES=
+SIGNAL_HANDLER_AUX=
case "${host}" in
i?86-*-linux*)
@@ -9030,7 +9031,7 @@ case "${host}" in
ia64-*-linux*)
SIGNAL_HANDLER=include/dwarf2-signal.h
;;
- powerpc-*-linux*)
+ powerpc*-*-linux*)
SIGNAL_HANDLER=include/powerpc-signal.h
;;
alpha*-*-linux*)
@@ -9041,6 +9042,7 @@ case "${host}" in
;;
x86_64*-*-linux*)
SIGNAL_HANDLER=include/x86_64-signal.h
+ SIGNAL_HANDLER_AUX=include/i386-signal.h
;;
sparc*-*-linux*)
SIGNAL_HANDLER=include/dwarf2-signal.h
@@ -9062,6 +9064,7 @@ esac
# If we're using sjlj exceptions, forget what we just learned.
if test "$enable_sjlj_exceptions" = yes; then
SIGNAL_HANDLER=include/default-signal.h
+ SIGNAL_HANDLER_AUX=
fi
# Define here any compiler flags that you need in order to make backtrace() work.
@@ -9075,6 +9078,10 @@ esac
+if test -z "$SIGNAL_HANDLER_AUX"; then
+ SIGNAL_HANDLER_AUX=$SIGNAL_HANDLER
+fi
+
if test "${multilib}" = "yes"; then
@@ -9573,8 +9580,8 @@ fi; done
EOF
cat >> $CONFIG_STATUS <<EOF
-ac_sources="include/$PLATFORMH java/io/natFile${FILE-${PLATFORM}}.cc java/io/natFileDescriptor${FILE-${PLATFORM}}.cc java/lang/${PLATFORM}Process.java java/lang/nat${PLATFORM}Process.cc java/net/natInetAddress${PLATFORMNET}.cc java/net/natNetworkInterface${PLATFORMNET}.cc gnu/java/net/natPlainSocketImpl${PLATFORMNET}.cc gnu/java/net/natPlainDatagramSocketImpl${PLATFORMNET}.cc gnu/java/nio/natPipeImpl${PLATFORM}.cc gnu/java/nio/natSelectorImpl${PLATFORM}.cc include/$GCHDR include/$THREADH sysdep/$sysdeps_dir/locks.h $SIGNAL_HANDLER"
-ac_dests="include/platform.h java/io/natFile.cc java/io/natFileDescriptor.cc java/lang/ConcreteProcess.java java/lang/natConcreteProcess.cc java/net/natInetAddress.cc java/net/natNetworkInterface.cc gnu/java/net/natPlainSocketImpl.cc gnu/java/net/natPlainDatagramSocketImpl.cc gnu/java/nio/natPipeImpl.cc gnu/java/nio/natSelectorImpl.cc include/java-gc.h include/java-threads.h sysdep/locks.h include/java-signal.h"
+ac_sources="include/$PLATFORMH java/io/natFile${FILE-${PLATFORM}}.cc java/io/natFileDescriptor${FILE-${PLATFORM}}.cc java/lang/${PLATFORM}Process.java java/lang/nat${PLATFORM}Process.cc java/net/natInetAddress${PLATFORMNET}.cc java/net/natNetworkInterface${PLATFORMNET}.cc gnu/java/net/natPlainSocketImpl${PLATFORMNET}.cc gnu/java/net/natPlainDatagramSocketImpl${PLATFORMNET}.cc gnu/java/nio/natPipeImpl${PLATFORM}.cc gnu/java/nio/natSelectorImpl${PLATFORM}.cc include/$GCHDR include/$THREADH sysdep/$sysdeps_dir/locks.h $SIGNAL_HANDLER $SIGNAL_HANDLER_AUX"
+ac_dests="include/platform.h java/io/natFile.cc java/io/natFileDescriptor.cc java/lang/ConcreteProcess.java java/lang/natConcreteProcess.cc java/net/natInetAddress.cc java/net/natNetworkInterface.cc gnu/java/net/natPlainSocketImpl.cc gnu/java/net/natPlainDatagramSocketImpl.cc gnu/java/nio/natPipeImpl.cc gnu/java/nio/natSelectorImpl.cc include/java-gc.h include/java-threads.h sysdep/locks.h include/java-signal.h include/java-signal-aux.h"
EOF
cat >> $CONFIG_STATUS <<\EOF
diff --git a/libjava/configure.host b/libjava/configure.host
index 2d04bbca934..6e19f0cbd17 100644
--- a/libjava/configure.host
+++ b/libjava/configure.host
@@ -99,11 +99,11 @@ case "${host}" in
slow_pthread_self=yes
;;
x86_64-*)
- CHECKREFSPEC="%{m32:-fcheck-references}"
sysdeps_dir=x86-64
libgcj_flags="${libgcj_flags} -ffloat-store -fno-omit-frame-pointer"
libgcj_cxxflags=
libgcj_cflags=
+ DIVIDESPEC=-f%{m32:no-}use-divide-subroutine
enable_hash_synchronization_default=yes
slow_pthread_self=yes
libgcj_interpreter=yes
@@ -116,11 +116,11 @@ case "${host}" in
IEEESPEC=-mieee
;;
powerpc64*-*)
- with_libffi_default=yes
- libgcj_interpreter=yes
- libgcj_flags="${libgcj_flags} -mminimal-toc"
- # this may not be correct
sysdeps_dir=powerpc
+ libgcj_interpreter=yes
+ if [ x`$CC -print-multi-os-directory` = x../lib64 ]; then
+ libgcj_flags="${libgcj_flags} -mminimal-toc"
+ fi
enable_hash_synchronization_default=yes
slow_pthread_self=yes
;;
diff --git a/libjava/configure.in b/libjava/configure.in
index 015831c95b2..26f39cc3359 100644
--- a/libjava/configure.in
+++ b/libjava/configure.in
@@ -1128,6 +1128,7 @@ AC_FUNC_MMAP
AC_CHECK_PROGS(PERL, perl, false)
SYSDEP_SOURCES=
+SIGNAL_HANDLER_AUX=
case "${host}" in
i?86-*-linux*)
@@ -1143,7 +1144,7 @@ case "${host}" in
ia64-*-linux*)
SIGNAL_HANDLER=include/dwarf2-signal.h
;;
- powerpc-*-linux*)
+ powerpc*-*-linux*)
SIGNAL_HANDLER=include/powerpc-signal.h
;;
alpha*-*-linux*)
@@ -1154,6 +1155,7 @@ case "${host}" in
;;
x86_64*-*-linux*)
SIGNAL_HANDLER=include/x86_64-signal.h
+ SIGNAL_HANDLER_AUX=include/i386-signal.h
;;
sparc*-*-linux*)
SIGNAL_HANDLER=include/dwarf2-signal.h
@@ -1175,6 +1177,7 @@ esac
# If we're using sjlj exceptions, forget what we just learned.
if test "$enable_sjlj_exceptions" = yes; then
SIGNAL_HANDLER=include/default-signal.h
+ SIGNAL_HANDLER_AUX=
fi
# Define here any compiler flags that you need in order to make backtrace() work.
@@ -1188,7 +1191,12 @@ AC_SUBST(BACKTRACESPEC)
AC_SUBST(SYSDEP_SOURCES)
-AC_LINK_FILES($SIGNAL_HANDLER, include/java-signal.h)
+if test -z "$SIGNAL_HANDLER_AUX"; then
+ SIGNAL_HANDLER_AUX=$SIGNAL_HANDLER
+fi
+
+AC_LINK_FILES($SIGNAL_HANDLER $SIGNAL_HANDLER_AUX,
+ include/java-signal.h include/java-signal-aux.h)
if test "${multilib}" = "yes"; then
multilib_arg="--enable-multilib"
diff --git a/libjava/gnu/java/net/PlainSocketImpl.java b/libjava/gnu/java/net/PlainSocketImpl.java
index 80139115cfe..08267838b8a 100644
--- a/libjava/gnu/java/net/PlainSocketImpl.java
+++ b/libjava/gnu/java/net/PlainSocketImpl.java
@@ -120,6 +120,33 @@ public final class PlainSocketImpl extends SocketImpl
private OutputStream out;
/**
+ * Indicates whether a channel initiated whatever operation
+ * is being invoked on this socket.
+ */
+ private boolean inChannelOperation;
+
+ /**
+ * Indicates whether we should ignore whether any associated
+ * channel is set to non-blocking mode. Certain operations
+ * throw an <code>IllegalBlockingModeException</code> if the
+ * associated channel is in non-blocking mode, <i>except</i>
+ * if the operation is invoked by the channel itself.
+ */
+ public final boolean isInChannelOperation()
+ {
+ return inChannelOperation;
+ }
+
+ /**
+ * Sets our indicator of whether an I/O operation is being
+ * initiated by a channel.
+ */
+ public final void setInChannelOperation(boolean b)
+ {
+ inChannelOperation = b;
+ }
+
+ /**
* Default do nothing constructor
*/
public PlainSocketImpl()
diff --git a/libjava/gnu/java/net/protocol/http/Connection.java b/libjava/gnu/java/net/protocol/http/Connection.java
index b785f2334bf..ac369f4ee6e 100644
--- a/libjava/gnu/java/net/protocol/http/Connection.java
+++ b/libjava/gnu/java/net/protocol/http/Connection.java
@@ -168,7 +168,6 @@ public final class Connection extends HttpURLConnection
inputStream =
new DataInputStream(new BufferedInputStream(socket.getInputStream()));
outputStream = new BufferedOutputStream (socket.getOutputStream());
- bufferedOutputStream = new ByteArrayOutputStream (256); //default is too small
sendRequest();
receiveReply();
@@ -226,7 +225,8 @@ public final class Connection extends HttpURLConnection
setRequestProperty ("Content-type", "application/x-www-form-urlencoded");
// Set correct content length.
- setRequestProperty ("Content-length", String.valueOf (bufferedOutputStream.size()));
+ if (bufferedOutputStream != null)
+ setRequestProperty ("Content-length", String.valueOf (bufferedOutputStream.size()));
// Write all req_props name-value pairs to the output writer.
Iterator itr = getRequestProperties().entrySet().iterator();
@@ -242,8 +242,11 @@ public final class Connection extends HttpURLConnection
outputWriter.flush();
// Write content
- bufferedOutputStream.writeTo (outputStream);
- outputStream.flush();
+ if (bufferedOutputStream != null)
+ {
+ bufferedOutputStream.writeTo (outputStream);
+ outputStream.flush();
+ }
}
/**
@@ -382,12 +385,16 @@ public final class Connection extends HttpURLConnection
*/
public OutputStream getOutputStream() throws IOException
{
+ if (connected)
+ throw new ProtocolException
+ ("You cannot get an output stream for an existing http connection");
+
if (!doOutput)
throw new ProtocolException
("Want output stream while haven't setDoOutput(true)");
- if (!connected)
- connect();
+ if (bufferedOutputStream == null)
+ bufferedOutputStream = new ByteArrayOutputStream (256); //default is too small
return bufferedOutputStream;
}
diff --git a/libjava/gnu/java/nio/DatagramChannelImpl.java b/libjava/gnu/java/nio/DatagramChannelImpl.java
index 3531803900a..109322daaf8 100644
--- a/libjava/gnu/java/nio/DatagramChannelImpl.java
+++ b/libjava/gnu/java/nio/DatagramChannelImpl.java
@@ -57,6 +57,33 @@ public final class DatagramChannelImpl extends DatagramChannel
{
private NIODatagramSocket socket;
+ /**
+ * Indicates whether this channel initiated whatever operation
+ * is being invoked on our datagram socket.
+ */
+ private boolean inChannelOperation;
+
+ /**
+ * Indicates whether our datagram socket should ignore whether
+ * we are set to non-blocking mode. Certain operations on our
+ * socket throw an <code>IllegalBlockingModeException</code> if
+ * we are in non-blocking mode, <i>except</i> if the operation
+ * is initiated by us.
+ */
+ public final boolean isInChannelOperation()
+ {
+ return inChannelOperation;
+ }
+
+ /**
+ * Sets our indicator of whether we are initiating an I/O operation
+ * on our socket.
+ */
+ public final void setInChannelOperation(boolean b)
+ {
+ inChannelOperation = b;
+ }
+
protected DatagramChannelImpl (SelectorProvider provider)
throws IOException
{
@@ -178,7 +205,7 @@ public final class DatagramChannelImpl extends DatagramChannel
try
{
DatagramPacket packet;
- int len = dst.remaining();
+ int len = dst.capacity() - dst.position();
if (dst.hasArray())
{
@@ -196,23 +223,23 @@ public final class DatagramChannelImpl extends DatagramChannel
try
{
begin();
+ setInChannelOperation(true);
socket.receive (packet);
completed = true;
}
finally
{
end (completed);
+ setInChannelOperation(false);
}
if (!dst.hasArray())
{
dst.put (packet.getData(), packet.getOffset(), packet.getLength());
}
-
- // FIMXE: remove this testing code.
- for (int i = 0; i < packet.getLength(); i++)
+ else
{
- System.out.println ("Byte " + i + " has value " + packet.getData() [packet.getOffset() + i]);
+ dst.position (dst.position() + packet.getLength());
}
return packet.getSocketAddress();
@@ -246,13 +273,25 @@ public final class DatagramChannelImpl extends DatagramChannel
DatagramPacket packet = new DatagramPacket (buffer, offset, len, target);
- // FIMXE: remove this testing code.
- for (int i = 0; i < packet.getLength(); i++)
+ boolean completed = false;
+ try
+ {
+ begin();
+ setInChannelOperation(true);
+ socket.send(packet);
+ completed = true;
+ }
+ finally
+ {
+ end (completed);
+ setInChannelOperation(false);
+ }
+
+ if (src.hasArray())
{
- System.out.println ("Byte " + i + " has value " + packet.getData() [packet.getOffset() + i]);
+ src.position (src.position() + len);
}
- socket.send (packet);
return len;
}
}
diff --git a/libjava/gnu/java/nio/NIOServerSocket.java b/libjava/gnu/java/nio/NIOServerSocket.java
index 89def3bb5ee..3164247765b 100644
--- a/libjava/gnu/java/nio/NIOServerSocket.java
+++ b/libjava/gnu/java/nio/NIOServerSocket.java
@@ -1,5 +1,5 @@
/* NIOServerSocket.java --
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -50,7 +50,6 @@ import java.nio.channels.SocketChannel;
*/
public final class NIOServerSocket extends ServerSocket
{
- private PlainSocketImpl impl;
private ServerSocketChannelImpl channel;
protected NIOServerSocket (ServerSocketChannelImpl channel)
diff --git a/libjava/gnu/java/nio/ServerSocketChannelImpl.java b/libjava/gnu/java/nio/ServerSocketChannelImpl.java
index fd975d20a7a..e26d23699ad 100644
--- a/libjava/gnu/java/nio/ServerSocketChannelImpl.java
+++ b/libjava/gnu/java/nio/ServerSocketChannelImpl.java
@@ -107,6 +107,11 @@ public final class ServerSocketChannelImpl extends ServerSocketChannel
try
{
+ begin();
+ serverSocket.getPlainSocketImpl().setInChannelOperation(true);
+ // indicate that a channel is initiating the accept operation
+ // so that the socket ignores the fact that we might be in
+ // non-blocking mode.
NIOSocket socket = (NIOSocket) serverSocket.accept();
completed = true;
return socket.getChannel();
@@ -117,6 +122,7 @@ public final class ServerSocketChannelImpl extends ServerSocketChannel
}
finally
{
+ serverSocket.getPlainSocketImpl().setInChannelOperation(false);
end (completed);
}
}
diff --git a/libjava/gnu/java/nio/SocketChannelImpl.java b/libjava/gnu/java/nio/SocketChannelImpl.java
index efb5fec481b..d4dd6e05653 100644
--- a/libjava/gnu/java/nio/SocketChannelImpl.java
+++ b/libjava/gnu/java/nio/SocketChannelImpl.java
@@ -1,5 +1,5 @@
/* SocketChannelImpl.java --
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -136,23 +136,35 @@ public final class SocketChannelImpl extends SocketChannel
if (((InetSocketAddress) remote).isUnresolved())
throw new UnresolvedAddressException();
- if (isBlocking())
- {
- // Do blocking connect.
- socket.connect (remote);
- return true;
- }
-
- // Do non-blocking connect.
try
{
- socket.connect (remote, NIOConstants.DEFAULT_TIMEOUT);
- return true;
+ socket.getPlainSocketImpl().setInChannelOperation(true);
+ // indicate that a channel is initiating the accept operation
+ // so that the socket ignores the fact that we might be in
+ // non-blocking mode.
+
+ if (isBlocking())
+ {
+ // Do blocking connect.
+ socket.connect (remote);
+ return true;
+ }
+
+ // Do non-blocking connect.
+ try
+ {
+ socket.connect (remote, NIOConstants.DEFAULT_TIMEOUT);
+ return true;
+ }
+ catch (SocketTimeoutException e)
+ {
+ connectionPending = true;
+ return false;
+ }
}
- catch (SocketTimeoutException e)
+ finally
{
- connectionPending = true;
- return false;
+ socket.getPlainSocketImpl().setInChannelOperation(false);
}
}
@@ -162,7 +174,7 @@ public final class SocketChannelImpl extends SocketChannel
if (!isOpen())
throw new ClosedChannelException();
- if (!connectionPending)
+ if (!isConnected() && !connectionPending)
throw new NoConnectionPendingException();
if (isConnected())
@@ -214,7 +226,7 @@ public final class SocketChannelImpl extends SocketChannel
int offset = 0;
InputStream input = socket.getInputStream();
int available = input.available();
- int len = dst.remaining();
+ int len = dst.capacity() - dst.position();
if (available == 0)
return 0;
@@ -238,12 +250,14 @@ public final class SocketChannelImpl extends SocketChannel
try
{
begin();
+ socket.getPlainSocketImpl().setInChannelOperation(true);
readBytes = input.read (data, offset, len);
completed = true;
}
finally
{
end (completed);
+ socket.getPlainSocketImpl().setInChannelOperation(false);
}
if (readBytes > 0)
@@ -301,7 +315,20 @@ public final class SocketChannelImpl extends SocketChannel
}
OutputStream output = socket.getOutputStream();
- output.write (data, offset, len);
+ boolean completed = false;
+
+ try
+ {
+ begin();
+ socket.getPlainSocketImpl().setInChannelOperation(true);
+ output.write (data, offset, len);
+ completed = true;
+ }
+ finally
+ {
+ end (completed);
+ socket.getPlainSocketImpl().setInChannelOperation(false);
+ }
if (src.hasArray())
{
diff --git a/libjava/include/powerpc-signal.h b/libjava/include/powerpc-signal.h
index 39cdf893710..0d5a6627fe7 100644
--- a/libjava/include/powerpc-signal.h
+++ b/libjava/include/powerpc-signal.h
@@ -11,15 +11,15 @@ details. */
#ifndef JAVA_SIGNAL_H
-# define JAVA_SIGNAL_H 1
+#define JAVA_SIGNAL_H 1
-# include <signal.h>
-# include <sys/syscall.h>
+#include <signal.h>
+#include <sys/syscall.h>
-# define HANDLE_SEGV 1
-# undef HANDLE_FPE
+#define HANDLE_SEGV 1
+#undef HANDLE_FPE
-# define SIGNAL_HANDLER(_name) \
+#define SIGNAL_HANDLER(_name) \
static void _name (int /* _signal */, struct sigcontext *_sc)
/* PPC either leaves PC pointing at a faulting instruction or the
@@ -27,7 +27,7 @@ details. */
the former, so we adjust the saved PC to point to the following
instruction. This is what the handler in libgcc expects. */
-# define MAKE_THROW_FRAME(_exception) \
+#define MAKE_THROW_FRAME(_exception) \
do \
{ \
_sc->regs->nip += 4; \
@@ -51,6 +51,7 @@ while (0)
compatibility hacks in MAKE_THROW_FRAME, as the ucontext layout
on PPC changed during the 2.5 kernel series. */
+#ifndef __powerpc64__
struct kernel_old_sigaction {
void (*k_sa_handler) (int, struct sigcontext *);
unsigned long k_sa_mask;
@@ -58,27 +59,61 @@ struct kernel_old_sigaction {
void (*k_sa_restorer) (void);
};
-# define INIT_SEGV \
+#define INIT_SEGV \
do \
{ \
struct kernel_old_sigaction kact; \
kact.k_sa_handler = catch_segv; \
kact.k_sa_mask = 0; \
kact.k_sa_flags = 0; \
- syscall (SYS_sigaction, SIGSEGV, &kact, NULL); \
+ if (syscall (SYS_sigaction, SIGSEGV, &kact, NULL) != 0) \
+ __asm__ __volatile__ (".long 0"); \
} \
while (0)
-# define INIT_FPE \
+#define INIT_FPE \
do \
{ \
struct kernel_old_sigaction kact; \
kact.k_sa_handler = catch_fpe; \
kact.k_sa_mask = 0; \
kact.k_sa_flags = 0; \
- syscall (SYS_sigaction, SIGFPE, &kact, NULL); \
+ if (syscall (SYS_sigaction, SIGFPE, &kact, NULL) != 0) \
+ __asm__ __volatile__ (".long 0"); \
+ } \
+while (0)
+
+#else /* powerpc64 */
+
+struct kernel_sigaction
+{
+ void (*k_sa_handler) (int, struct sigcontext *);
+ unsigned long k_sa_flags;
+ void (*k_sa_restorer)(void);
+ unsigned long k_sa_mask;
+};
+
+#define INIT_SEGV \
+do \
+ { \
+ struct kernel_sigaction kact; \
+ memset (&kact, 0, sizeof (kact)); \
+ kact.k_sa_handler = catch_segv; \
+ if (syscall (SYS_rt_sigaction, SIGSEGV, &kact, NULL, 8) != 0) \
+ __asm__ __volatile__ (".long 0"); \
} \
while (0)
-#endif /* JAVA_SIGNAL_H */
+#define INIT_FPE \
+do \
+ { \
+ struct kernel_sigaction kact; \
+ memset (&kact, 0, sizeof (kact)); \
+ kact.k_sa_handler = catch_fpe; \
+ if (syscall (SYS_rt_sigaction, SIGFPE, &kact, NULL, 8) != 0) \
+ __asm__ __volatile__ (".long 0"); \
+ } \
+while (0)
+#endif
+#endif /* JAVA_SIGNAL_H */
diff --git a/libjava/include/x86_64-signal.h b/libjava/include/x86_64-signal.h
index eb034473f9e..ab59e5e69bc 100644
--- a/libjava/include/x86_64-signal.h
+++ b/libjava/include/x86_64-signal.h
@@ -10,14 +10,14 @@ Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
details. */
+#ifdef __x86_64__
+
#ifndef JAVA_SIGNAL_H
#define JAVA_SIGNAL_H 1
#include <signal.h>
#include <sys/syscall.h>
-#ifdef __x86_64__
-
#define HANDLE_SEGV 1
#define SIGNAL_HANDLER(_name) \
@@ -80,16 +80,13 @@ while (0)
* go away if all systems ever have pthreads libraries that are
* compiled with unwind info. */
-#else /* __x86_64__ */
+#endif /* JAVA_SIGNAL_H */
-/* This is for the 32-bit subsystem on on x86-64. Catching signals
- doesn't yet work on that target. */
+#else /* __x86_64__ */
-#undef HANDLE_SEGV
-#undef HANDLE_FPE
+/* This is for the 32-bit subsystem on on x86-64. */
-#define INIT_SEGV do {} while (0)
-#define INIT_FPE do {} while (0)
+#define sigcontext_struct sigcontext
+#include <java-signal-aux.h>
#endif /* __x86_64__ */
-#endif /* JAVA_SIGNAL_H */
diff --git a/libjava/java/lang/natPosixProcess.cc b/libjava/java/lang/natPosixProcess.cc
index ef469242fd6..a6dfc1ada28 100644
--- a/libjava/java/lang/natPosixProcess.cc
+++ b/libjava/java/lang/natPosixProcess.cc
@@ -1,6 +1,6 @@
// natPosixProcess.cc - Native side of POSIX process code.
-/* Copyright (C) 1998, 1999, 2000, 2002, 2003 Free Software Foundation
+/* Copyright (C) 1998, 1999, 2000, 2002, 2003, 2004 Free Software Foundation
This file is part of libgcj.
@@ -207,7 +207,7 @@ java::lang::ConcreteProcess::startProcess (jstringArray progarray,
char *path_val = getenv ("PATH");
char *ld_path_val = getenv ("LD_LIBRARY_PATH");
environ = env;
- if (getenv ("PATH") == NULL)
+ if (path_val && getenv ("PATH") == NULL)
{
char *path_env = (char *) _Jv_Malloc (strlen (path_val)
+ 5 + 1);
@@ -215,7 +215,7 @@ java::lang::ConcreteProcess::startProcess (jstringArray progarray,
strcat (path_env, path_val);
putenv (path_env);
}
- if (getenv ("LD_LIBRARY_PATH") == NULL)
+ if (ld_path_val && getenv ("LD_LIBRARY_PATH") == NULL)
{
char *ld_path_env
= (char *) _Jv_Malloc (strlen (ld_path_val) + 16 + 1);
diff --git a/libjava/java/lang/reflect/natMethod.cc b/libjava/java/lang/reflect/natMethod.cc
index ed122ea2441..736103b63dd 100644
--- a/libjava/java/lang/reflect/natMethod.cc
+++ b/libjava/java/lang/reflect/natMethod.cc
@@ -466,7 +466,16 @@ _Jv_CallAnyMethodA (jobject obj,
void *ncode;
- if (is_virtual_call && ! Modifier::isFinal (meth->accflags))
+ // FIXME: If a vtable index is -1 at this point it is invalid, so we
+ // have to use the ncode.
+ //
+ // This can happen because methods in final classes don't have
+ // vtable entries, but _Jv_isVirtualMethod() doesn't know that. We
+ // could solve this problem by allocating a vtable index for methods
+ // in final classes.
+ if (is_virtual_call
+ && ! Modifier::isFinal (meth->accflags)
+ && (_Jv_ushort)-1 != meth->index)
{
_Jv_VTable *vtable = *(_Jv_VTable **) obj;
ncode = vtable->get_method (meth->index);
diff --git a/libjava/java/net/DatagramSocket.java b/libjava/java/net/DatagramSocket.java
index c9c0f5d0f03..c5920a09424 100644
--- a/libjava/java/net/DatagramSocket.java
+++ b/libjava/java/net/DatagramSocket.java
@@ -39,6 +39,7 @@ exception statement from your version. */
package java.net;
import gnu.java.net.PlainDatagramSocketImpl;
+import gnu.java.nio.DatagramChannelImpl;
import java.io.IOException;
import java.nio.channels.DatagramChannel;
import java.nio.channels.IllegalBlockingModeException;
@@ -565,7 +566,8 @@ public class DatagramSocket
("Socket connected to a multicast address my not receive");
if (getChannel() != null
- && !getChannel().isBlocking ())
+ && !getChannel().isBlocking ()
+ && !((DatagramChannelImpl) getChannel()).isInChannelOperation())
throw new IllegalBlockingModeException ();
getImpl().receive(p);
@@ -618,7 +620,8 @@ public class DatagramSocket
// use getTimeToLive for TTL val.
if (getChannel() != null
- && !getChannel().isBlocking ())
+ && !getChannel().isBlocking ()
+ && !((DatagramChannelImpl) getChannel()).isInChannelOperation())
throw new IllegalBlockingModeException ();
getImpl().send(p);
diff --git a/libjava/java/net/ServerSocket.java b/libjava/java/net/ServerSocket.java
index 9a2d82d9c76..c660aada966 100644
--- a/libjava/java/net/ServerSocket.java
+++ b/libjava/java/net/ServerSocket.java
@@ -345,9 +345,14 @@ public class ServerSocket
if (isClosed())
throw new SocketException("ServerSocket is closed");
+ // The Sun spec says that if we have an associated channel and
+ // it is in non-blocking mode, we throw an IllegalBlockingModeException.
+ // However, in our implementation if the channel itself initiated this
+ // operation, then we must honor it regardless of its blocking mode.
if (getChannel() != null
- && !getChannel().isBlocking())
- throw new IllegalBlockingModeException();
+ && !getChannel().isBlocking ()
+ && !((PlainSocketImpl) getImpl()).isInChannelOperation())
+ throw new IllegalBlockingModeException ();
impl.accept(socket.getImpl());
}
diff --git a/libjava/java/net/Socket.java b/libjava/java/net/Socket.java
index 9322e929ec3..7d325060813 100644
--- a/libjava/java/net/Socket.java
+++ b/libjava/java/net/Socket.java
@@ -420,8 +420,13 @@ public class Socket
if (! (endpoint instanceof InetSocketAddress))
throw new IllegalArgumentException("unsupported address type");
+ // The Sun spec says that if we have an associated channel and
+ // it is in non-blocking mode, we throw an IllegalBlockingModeException.
+ // However, in our implementation if the channel itself initiated this
+ // operation, then we must honor it regardless of its blocking mode.
if (getChannel() != null
- && !getChannel().isBlocking ())
+ && !getChannel().isBlocking ()
+ && !((PlainSocketImpl) getImpl()).isInChannelOperation())
throw new IllegalBlockingModeException ();
if (!isBound ())
diff --git a/libjava/java/nio/ByteBuffer.java b/libjava/java/nio/ByteBuffer.java
index 3be797750d0..9ca20618c45 100644
--- a/libjava/java/nio/ByteBuffer.java
+++ b/libjava/java/nio/ByteBuffer.java
@@ -1,5 +1,5 @@
/* ByteBuffer.java --
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -382,8 +382,14 @@ public abstract class ByteBuffer extends Buffer
*/
public abstract ByteBuffer compact ();
+ void shiftDown (int dst_offset, int src_offset, int count)
+ {
+ for (int i = 0; i < count; i++)
+ put(dst_offset + i, get(src_offset + i));
+ }
+
/**
- * Tells wether or not this buffer is direct.
+ * Tells whether or not this buffer is direct.
*/
public abstract boolean isDirect ();
diff --git a/libjava/java/nio/ByteBufferHelper.java b/libjava/java/nio/ByteBufferHelper.java
index 23e133c86b3..c3dcfbe4f2f 100644
--- a/libjava/java/nio/ByteBufferHelper.java
+++ b/libjava/java/nio/ByteBufferHelper.java
@@ -1,5 +1,5 @@
/* ByteBufferImpl.java --
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -42,58 +42,58 @@ package java.nio;
*/
final class ByteBufferHelper
{
- private static final void checkRemainingForRead (ByteBuffer buffer, int bytes)
+ private static void checkRemainingForRead (ByteBuffer buffer, int bytes)
{
if (buffer.remaining() < bytes)
throw new BufferUnderflowException();
}
- private static final void checkRemainingForWrite (ByteBuffer buffer, int bytes)
+ private static void checkRemainingForWrite (ByteBuffer buffer, int bytes)
{
if (buffer.remaining() < bytes)
throw new BufferOverflowException();
}
- private static final void checkAvailableForRead (ByteBuffer buffer,
- int index, int bytes)
+ private static void checkAvailableForRead (ByteBuffer buffer,
+ int index, int bytes)
{
if (buffer.limit() < (index + bytes))
throw new BufferUnderflowException();
}
- private static final void checkAvailableForWrite (ByteBuffer buffer,
- int index, int bytes)
+ private static void checkAvailableForWrite (ByteBuffer buffer,
+ int index, int bytes)
{
if (buffer.limit() < (index + bytes))
throw new BufferOverflowException();
}
- public static final char getChar (ByteBuffer buffer)
+ public static char getChar (ByteBuffer buffer, ByteOrder order)
{
- return (char) getShort (buffer);
+ return (char) getShort (buffer, order);
}
- public static final ByteBuffer putChar (ByteBuffer buffer, char value)
+ public static void putChar (ByteBuffer buffer, char value, ByteOrder order)
{
- return putShort (buffer, (short) value);
+ putShort (buffer, (short) value, order);
}
- public static final char getChar (ByteBuffer buffer, int index)
+ public static char getChar (ByteBuffer buffer, int index, ByteOrder order)
{
- return (char) getShort (buffer, index);
+ return (char) getShort (buffer, index, order);
}
- public static final ByteBuffer putChar (ByteBuffer buffer, int index,
- char value)
+ public static void putChar (ByteBuffer buffer, int index,
+ char value, ByteOrder order)
{
- return putShort (buffer, index, (short) value);
+ putShort (buffer, index, (short) value, order);
}
- public static final short getShort (ByteBuffer buffer)
+ public static short getShort (ByteBuffer buffer, ByteOrder order)
{
checkRemainingForRead (buffer, 2);
- if (buffer.order() == ByteOrder.LITTLE_ENDIAN)
+ if (order == ByteOrder.LITTLE_ENDIAN)
{
return (short) ((buffer.get() & 0xff)
+ (buffer.get() << 8));
@@ -103,11 +103,11 @@ final class ByteBufferHelper
+ (buffer.get() & 0xff));
}
- public static final ByteBuffer putShort (ByteBuffer buffer, short value)
+ public static void putShort (ByteBuffer buffer, short value, ByteOrder order)
{
checkRemainingForWrite (buffer, 2);
- if (buffer.order() == ByteOrder.LITTLE_ENDIAN)
+ if (order == ByteOrder.LITTLE_ENDIAN)
{
buffer.put ((byte) value);
buffer.put ((byte) (value >> 8));
@@ -117,15 +117,14 @@ final class ByteBufferHelper
buffer.put ((byte) (value >> 8));
buffer.put ((byte) value);
}
-
- return buffer;
}
- public static final short getShort (ByteBuffer buffer, int index)
+ public static short getShort (ByteBuffer buffer,
+ int index, ByteOrder order)
{
checkAvailableForRead (buffer, index, 2);
- if (buffer.order() == ByteOrder.LITTLE_ENDIAN)
+ if (order == ByteOrder.LITTLE_ENDIAN)
{
return (short) ((buffer.get (index) & 0xff)
+ (buffer.get (++index) << 8));
@@ -135,12 +134,12 @@ final class ByteBufferHelper
+ (buffer.get (++index) & 0xff));
}
- public static final ByteBuffer putShort (ByteBuffer buffer, int index,
- short value)
+ public static void putShort (ByteBuffer buffer, int index,
+ short value, ByteOrder order)
{
checkAvailableForWrite (buffer, index, 2);
- if (buffer.order() == ByteOrder.LITTLE_ENDIAN)
+ if (order == ByteOrder.LITTLE_ENDIAN)
{
buffer.put (index, (byte) value);
buffer.put (++index, (byte) (value >> 8));
@@ -150,15 +149,13 @@ final class ByteBufferHelper
buffer.put (index, (byte) (value >> 8));
buffer.put (++index, (byte) value);
}
-
- return buffer;
}
- public static final int getInt (ByteBuffer buffer)
+ public static int getInt (ByteBuffer buffer, ByteOrder order)
{
checkRemainingForRead (buffer, 4);
- if (buffer.order() == ByteOrder.LITTLE_ENDIAN)
+ if (order == ByteOrder.LITTLE_ENDIAN)
{
return ((buffer.get() & 0xff)
+ ((buffer.get() & 0xff) << 8)
@@ -172,11 +169,11 @@ final class ByteBufferHelper
+ (buffer.get() & 0xff));
}
- public static final ByteBuffer putInt (ByteBuffer buffer, int value)
+ public static void putInt (ByteBuffer buffer, int value, ByteOrder order)
{
checkRemainingForWrite (buffer, 4);
- if (buffer.order() == ByteOrder.LITTLE_ENDIAN)
+ if (order == ByteOrder.LITTLE_ENDIAN)
{
buffer.put ((byte) value);
buffer.put ((byte) (value >> 8));
@@ -190,15 +187,13 @@ final class ByteBufferHelper
buffer.put ((byte) (value >> 8));
buffer.put ((byte) value);
}
-
- return buffer;
}
- public static final int getInt (ByteBuffer buffer, int index)
+ public static int getInt (ByteBuffer buffer, int index, ByteOrder order)
{
checkAvailableForRead (buffer, index, 4);
- if (buffer.order() == ByteOrder.LITTLE_ENDIAN)
+ if (order == ByteOrder.LITTLE_ENDIAN)
{
return ((buffer.get (index) & 0xff)
+ ((buffer.get (++index) & 0xff) << 8)
@@ -212,12 +207,12 @@ final class ByteBufferHelper
+ (buffer.get (++index) & 0xff));
}
- public static final ByteBuffer putInt (ByteBuffer buffer, int index,
- int value)
+ public static void putInt (ByteBuffer buffer, int index,
+ int value, ByteOrder order)
{
checkAvailableForWrite (buffer, index, 4);
- if (buffer.order() == ByteOrder.LITTLE_ENDIAN)
+ if (order == ByteOrder.LITTLE_ENDIAN)
{
buffer.put (index, (byte) value);
buffer.put (++index, (byte) (value >> 8));
@@ -231,15 +226,13 @@ final class ByteBufferHelper
buffer.put (++index, (byte) (value >> 8));
buffer.put (++index, (byte) value);
}
-
- return buffer;
}
- public static final long getLong (ByteBuffer buffer)
+ public static long getLong (ByteBuffer buffer, ByteOrder order)
{
checkRemainingForRead (buffer, 8);
- if (buffer.order() == ByteOrder.LITTLE_ENDIAN)
+ if (order == ByteOrder.LITTLE_ENDIAN)
{
return ((buffer.get() & 0xff)
+ (((buffer.get() & 0xff)) << 8)
@@ -261,11 +254,11 @@ final class ByteBufferHelper
+ (buffer.get() & 0xff));
}
- public static final ByteBuffer putLong (ByteBuffer buffer, long value)
+ public static void putLong (ByteBuffer buffer, long value, ByteOrder order)
{
checkRemainingForWrite (buffer, 8);
- if (buffer.order() == ByteOrder.LITTLE_ENDIAN)
+ if (order == ByteOrder.LITTLE_ENDIAN)
{
buffer.put ((byte) value);
buffer.put ((byte) (value >> 8));
@@ -287,15 +280,13 @@ final class ByteBufferHelper
buffer.put ((byte) (value >> 8));
buffer.put ((byte) value);
}
-
- return buffer;
}
- public static final long getLong (ByteBuffer buffer, int index)
+ public static long getLong (ByteBuffer buffer, int index, ByteOrder order)
{
checkAvailableForRead (buffer, index, 8);
- if (buffer.order() == ByteOrder.LITTLE_ENDIAN)
+ if (order == ByteOrder.LITTLE_ENDIAN)
{
return ((buffer.get (index) & 0xff)
+ ((buffer.get (++index) & 0xff) << 8)
@@ -317,12 +308,12 @@ final class ByteBufferHelper
+ (buffer.get (++index) & 0xff));
}
- public static final ByteBuffer putLong (ByteBuffer buffer, int index,
- long value)
+ public static void putLong (ByteBuffer buffer, int index,
+ long value, ByteOrder order)
{
checkAvailableForWrite (buffer, index, 8);
- if (buffer.order() == ByteOrder.LITTLE_ENDIAN)
+ if (order == ByteOrder.LITTLE_ENDIAN)
{
buffer.put (index, (byte) value);
buffer.put (++index, (byte) (value >> 8));
@@ -344,50 +335,47 @@ final class ByteBufferHelper
buffer.put (++index, (byte) (value >> 8));
buffer.put (++index, (byte) value);
}
-
- return buffer;
}
- public static final float getFloat (ByteBuffer buffer)
+ public static float getFloat (ByteBuffer buffer, ByteOrder order)
{
- return Float.intBitsToFloat (getInt (buffer));
+ return Float.intBitsToFloat (getInt (buffer, order));
}
- public static final ByteBuffer putFloat (ByteBuffer buffer, float value)
+ public static void putFloat (ByteBuffer buffer, float value, ByteOrder order)
{
- return putInt (buffer, Float.floatToRawIntBits (value));
+ putInt (buffer, Float.floatToRawIntBits (value), order);
}
- public static final float getFloat (ByteBuffer buffer, int index)
+ public static float getFloat (ByteBuffer buffer, int index, ByteOrder order)
{
- return Float.intBitsToFloat (getInt (buffer, index));
+ return Float.intBitsToFloat (getInt (buffer, index, order));
}
- public static final ByteBuffer putFloat (ByteBuffer buffer, int index,
- float value)
+ public static void putFloat (ByteBuffer buffer, int index,
+ float value, ByteOrder order)
{
- return putInt (buffer, index, Float.floatToRawIntBits (value));
+ putInt (buffer, index, Float.floatToRawIntBits (value), order);
}
- public static final double getDouble (ByteBuffer buffer)
+ public static double getDouble (ByteBuffer buffer, ByteOrder order)
{
- return Double.longBitsToDouble (getLong (buffer));
+ return Double.longBitsToDouble (getLong (buffer, order));
}
- public static final ByteBuffer putDouble (ByteBuffer buffer, double value)
+ public static void putDouble (ByteBuffer buffer, double value, ByteOrder order)
{
- return putLong (buffer, Double.doubleToLongBits (value));
+ putLong (buffer, Double.doubleToLongBits (value), order);
}
- public static final double getDouble (ByteBuffer buffer, int index)
+ public static double getDouble (ByteBuffer buffer, int index, ByteOrder order)
{
- return Double.longBitsToDouble (getLong (buffer, index));
+ return Double.longBitsToDouble (getLong (buffer, index, order));
}
- public static final ByteBuffer putDouble (ByteBuffer buffer, int index,
- double value)
+ public static void putDouble (ByteBuffer buffer, int index,
+ double value, ByteOrder order)
{
- return putLong (buffer, index, Double.doubleToLongBits (value));
+ putLong (buffer, index, Double.doubleToLongBits (value), order);
}
-
} // ByteBufferHelper
diff --git a/libjava/java/nio/ByteBufferImpl.java b/libjava/java/nio/ByteBufferImpl.java
index 76c965d7322..6a3814862c9 100644
--- a/libjava/java/nio/ByteBufferImpl.java
+++ b/libjava/java/nio/ByteBufferImpl.java
@@ -1,5 +1,5 @@
/* ByteBufferImpl.java --
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -58,32 +58,32 @@ final class ByteBufferImpl extends ByteBuffer
public CharBuffer asCharBuffer ()
{
- return new CharViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly ());
+ return new CharViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly (), order());
}
public ShortBuffer asShortBuffer ()
{
- return new ShortViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly ());
+ return new ShortViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly (), order());
}
public IntBuffer asIntBuffer ()
{
- return new IntViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly ());
+ return new IntViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly (), order());
}
public LongBuffer asLongBuffer ()
{
- return new LongViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly ());
+ return new LongViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly (), order());
}
public FloatBuffer asFloatBuffer ()
{
- return new FloatViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly ());
+ return new FloatViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly (), order());
}
public DoubleBuffer asDoubleBuffer ()
{
- return new DoubleViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly ());
+ return new DoubleViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly (), order());
}
public boolean isReadOnly ()
@@ -108,15 +108,14 @@ final class ByteBufferImpl extends ByteBuffer
public ByteBuffer compact ()
{
- int copied = 0;
-
- while (remaining () > 0)
+ int pos = position();
+ if (pos > 0)
{
- put (copied, get ());
- copied++;
+ int count = remaining();
+ shiftDown(0, pos, count);
+ position(count);
+ limit(capacity());
}
-
- position (copied);
return this;
}
@@ -182,121 +181,133 @@ final class ByteBufferImpl extends ByteBuffer
final public char getChar ()
{
- return ByteBufferHelper.getChar (this);
+ return ByteBufferHelper.getChar(this, order());
}
final public ByteBuffer putChar (char value)
{
- return ByteBufferHelper.putChar (this, value);
+ ByteBufferHelper.putChar(this, value, order());
+ return this;
}
final public char getChar (int index)
{
- return ByteBufferHelper.getChar (this, index);
+ return ByteBufferHelper.getChar(this, index, order());
}
final public ByteBuffer putChar (int index, char value)
{
- return ByteBufferHelper.putChar (this, index, value);
+ ByteBufferHelper.putChar(this, index, value, order());
+ return this;
}
final public short getShort ()
{
- return ByteBufferHelper.getShort (this);
+ return ByteBufferHelper.getShort(this, order());
}
final public ByteBuffer putShort (short value)
{
- return ByteBufferHelper.putShort (this, value);
+ ByteBufferHelper.putShort(this, value, order());
+ return this;
}
final public short getShort (int index)
{
- return ByteBufferHelper.getShort (this, index);
+ return ByteBufferHelper.getShort(this, index, order());
}
final public ByteBuffer putShort (int index, short value)
{
- return ByteBufferHelper.putShort (this, index, value);
+ ByteBufferHelper.putShort(this, index, value, order());
+ return this;
}
final public int getInt ()
{
- return ByteBufferHelper.getInt (this);
+ return ByteBufferHelper.getInt(this, order());
}
final public ByteBuffer putInt (int value)
{
- return ByteBufferHelper.putInt (this, value);
+ ByteBufferHelper.putInt(this, value, order());
+ return this;
}
final public int getInt (int index)
{
- return ByteBufferHelper.getInt (this, index);
+ return ByteBufferHelper.getInt(this, index, order());
}
final public ByteBuffer putInt (int index, int value)
{
- return ByteBufferHelper.putInt (this, index, value);
+ ByteBufferHelper.putInt(this, index, value, order());
+ return this;
}
final public long getLong ()
{
- return ByteBufferHelper.getLong (this);
+ return ByteBufferHelper.getLong(this, order());
}
final public ByteBuffer putLong (long value)
{
- return ByteBufferHelper.putLong (this, value);
+ ByteBufferHelper.putLong (this, value, order());
+ return this;
}
final public long getLong (int index)
{
- return ByteBufferHelper.getLong (this, index);
+ return ByteBufferHelper.getLong (this, index, order());
}
final public ByteBuffer putLong (int index, long value)
{
- return ByteBufferHelper.putLong (this, index, value);
+ ByteBufferHelper.putLong (this, index, value, order());
+ return this;
}
final public float getFloat ()
{
- return ByteBufferHelper.getFloat (this);
+ return ByteBufferHelper.getFloat (this, order());
}
final public ByteBuffer putFloat (float value)
{
- return ByteBufferHelper.putFloat (this, value);
+ ByteBufferHelper.putFloat (this, value, order());
+ return this;
}
- final public float getFloat (int index)
+ public final float getFloat (int index)
{
- return ByteBufferHelper.getFloat (this, index);
+ return ByteBufferHelper.getFloat (this, index, order());
}
- public final ByteBuffer putFloat (int index, float value)
+ final public ByteBuffer putFloat (int index, float value)
{
- return ByteBufferHelper.putFloat (this, index, value);
+ ByteBufferHelper.putFloat (this, index, value, order());
+ return this;
}
final public double getDouble ()
{
- return ByteBufferHelper.getDouble (this);
+ return ByteBufferHelper.getDouble (this, order());
}
final public ByteBuffer putDouble (double value)
{
- return ByteBufferHelper.putDouble (this, value);
+ ByteBufferHelper.putDouble (this, value, order());
+ return this;
}
final public double getDouble (int index)
{
- return ByteBufferHelper.getDouble (this, index);
+ return ByteBufferHelper.getDouble (this, index, order());
}
final public ByteBuffer putDouble (int index, double value)
{
- return ByteBufferHelper.putDouble (this, index, value);
+ ByteBufferHelper.putDouble (this, index, value, order());
+ return this;
}
}
diff --git a/libjava/java/nio/CharViewBufferImpl.java b/libjava/java/nio/CharViewBufferImpl.java
index 6da6d59afeb..b1cc9071724 100644
--- a/libjava/java/nio/CharViewBufferImpl.java
+++ b/libjava/java/nio/CharViewBufferImpl.java
@@ -1,5 +1,5 @@
/* CharViewBufferImpl.java --
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,54 +40,47 @@ package java.nio;
class CharViewBufferImpl extends CharBuffer
{
- private boolean readOnly;
+ /** Position in bb (i.e. a byte offset) where this buffer starts. */
private int offset;
private ByteBuffer bb;
+ private boolean readOnly;
private ByteOrder endian;
- public CharViewBufferImpl (ByteBuffer bb, boolean readOnly)
- {
- super (bb.remaining () >> 1, bb.remaining () >> 1, bb.position (), 0);
- this.bb = bb;
- this.readOnly = readOnly;
- // FIXME: What if this is called from CharByteBufferImpl and ByteBuffer has changed its endianess ?
- this.endian = bb.order ();
- }
-
public CharViewBufferImpl (ByteBuffer bb, int offset, int capacity,
- int limit, int position, int mark,
- boolean readOnly)
+ int limit, int position, int mark,
+ boolean readOnly, ByteOrder endian)
{
super (limit >> 1, limit >> 1, position >> 1, mark >> 1);
this.bb = bb;
this.offset = offset;
this.readOnly = readOnly;
- // FIXME: What if this is called from CharViewBufferImpl and ByteBuffer has changed its endianess ?
- this.endian = bb.order ();
+ this.endian = endian;
}
public char get ()
{
- char result = bb.getChar ((position () << 1) + offset);
- position (position () + 1);
+ int p = position();
+ char result = ByteBufferHelper.getChar(bb, (p << 1) + offset, endian);
+ position(p + 1);
return result;
}
public char get (int index)
{
- return bb.getChar ((index << 1) + offset);
+ return ByteBufferHelper.getChar(bb, (index << 1) + offset, endian);
}
public CharBuffer put (char value)
{
- bb.putChar ((position () << 1) + offset, value);
- position (position () + 1);
+ int p = position();
+ ByteBufferHelper.putChar(bb, (p << 1) + offset, value, endian);
+ position(p + 1);
return this;
}
public CharBuffer put (int index, char value)
{
- bb.putChar ((index << 1) + offset, value);
+ ByteBufferHelper.putChar(bb, (index << 1) + offset, value, endian);
return this;
}
@@ -95,59 +88,54 @@ class CharViewBufferImpl extends CharBuffer
{
if (position () > 0)
{
- // Copy all data from position() to limit() to the beginning of the
- // buffer, set position to end of data and limit to capacity
- // XXX: This can surely be optimized, for direct and non-direct buffers
-
int count = limit () - position ();
-
- for (int i = 0; i < count; i++)
- {
- bb.putChar ((i >> 1) + offset,
- bb.getChar (((i + position ()) >> 1) + offset));
- }
-
+ bb.shiftDown(offset, offset + 2 * position(), 2 * count);
position (count);
limit (capacity ());
}
-
return this;
}
- public CharBuffer duplicate ()
- {
- // Create a copy of this object that shares its content
- // FIXME: mark is not correct
- return new CharViewBufferImpl (bb, offset, capacity (), limit (),
- position (), -1, isReadOnly ());
- }
-
public CharBuffer slice ()
{
// Create a sliced copy of this object that shares its content.
return new CharViewBufferImpl (bb, (position () >> 1) + offset,
- remaining (), remaining (), 0, -1,
- isReadOnly ());
+ remaining (), remaining (), 0, -1,
+ isReadOnly (), endian);
}
+ CharBuffer duplicate (boolean readOnly)
+ {
+ int pos = position();
+ reset();
+ int mark = position();
+ position(pos);
+ return new CharViewBufferImpl (bb, offset, capacity(), limit(),
+ pos, mark, readOnly, endian);
+ }
+
+ public CharBuffer duplicate ()
+ {
+ return duplicate(readOnly);
+ }
+
+ public CharBuffer asReadOnlyBuffer ()
+ {
+ return duplicate(true);
+ }
+
public CharSequence subSequence (int start, int end)
{
if (start < 0
- || start > length ()
|| end < start
|| end > length ())
throw new IndexOutOfBoundsException ();
- return new CharViewBufferImpl (bb, array_offset, capacity (), position () + end, position () + start, -1, isReadOnly ());
+ return new CharViewBufferImpl (bb, array_offset, capacity (),
+ position () + end, position () + start,
+ -1, isReadOnly (), endian);
}
- public CharBuffer asReadOnlyBuffer ()
- {
- // Create a copy of this object that shares its content and is read-only
- return new CharViewBufferImpl (bb, (position () >> 1) + offset,
- remaining (), remaining (), 0, -1, true);
- }
-
public boolean isReadOnly ()
{
return readOnly;
@@ -160,6 +148,6 @@ class CharViewBufferImpl extends CharBuffer
public ByteOrder order ()
{
- return ByteOrder.LITTLE_ENDIAN;
+ return endian;
}
}
diff --git a/libjava/java/nio/DirectByteBufferImpl.java b/libjava/java/nio/DirectByteBufferImpl.java
index a54c20693fe..37b96a7c02e 100644
--- a/libjava/java/nio/DirectByteBufferImpl.java
+++ b/libjava/java/nio/DirectByteBufferImpl.java
@@ -1,5 +1,5 @@
/* DirectByteBufferImpl.java --
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -117,18 +117,18 @@ class DirectByteBufferImpl extends ByteBuffer
return this;
}
+ native void shiftDown (int dst_offset, int src_offset, int count);
+
public ByteBuffer compact ()
{
- // FIXME this can sure be optimized using memcpy()
- int copied = 0;
-
- while (remaining () > 0)
+ int pos = position();
+ if (pos > 0)
{
- put (copied, get ());
- copied++;
+ int count = remaining();
+ shiftDown(0, pos, count);
+ position(count);
+ limit(capacity());
}
-
- position (copied);
return this;
}
@@ -161,197 +161,163 @@ class DirectByteBufferImpl extends ByteBuffer
public CharBuffer asCharBuffer ()
{
- return new CharViewBufferImpl (this, position () + offset, remaining (), remaining (), 0, -1, isReadOnly ());
+ return new CharViewBufferImpl (this, position (), remaining (), remaining (), 0, -1, isReadOnly (), order());
}
public DoubleBuffer asDoubleBuffer ()
{
- return new DoubleViewBufferImpl (this, position () + offset, remaining (), remaining (), 0, -1, isReadOnly ());
+ return new DoubleViewBufferImpl (this, position (), remaining (), remaining (), 0, -1, isReadOnly (), order());
}
public FloatBuffer asFloatBuffer ()
{
- return new FloatViewBufferImpl (this, position () + offset, remaining (), remaining (), 0, -1, isReadOnly ());
+ return new FloatViewBufferImpl (this, position (), remaining (), remaining (), 0, -1, isReadOnly (), order());
}
public IntBuffer asIntBuffer ()
{
- return new IntViewBufferImpl (this, position () + offset, remaining (), remaining (), 0, -1, isReadOnly ());
+ return new IntViewBufferImpl (this, position (), remaining (), remaining (), 0, -1, isReadOnly (), order());
}
public LongBuffer asLongBuffer ()
{
- return new LongViewBufferImpl (this, position () + offset, remaining (), remaining (), 0, -1, isReadOnly ());
+ return new LongViewBufferImpl (this, position (), remaining (), remaining (), 0, -1, isReadOnly (), order());
}
public ShortBuffer asShortBuffer ()
{
- return new ShortViewBufferImpl (this, position () + offset, remaining (), remaining (), 0, -1, isReadOnly ());
+ return new ShortViewBufferImpl (this, position (), remaining (), remaining (), 0, -1, isReadOnly (), order());
}
final public char getChar ()
{
- // FIXME: this handles little endian only
- return (char) (((get () & 0xff) << 8)
- + (get () & 0xff));
+ return ByteBufferHelper.getChar(this, order());
}
final public ByteBuffer putChar (char value)
{
- // FIXME: this handles little endian only
- put ((byte) ((((int) value) & 0xff00) >> 8));
- put ((byte) (((int) value) & 0x00ff));
+ ByteBufferHelper.putChar(this, value, order());
return this;
}
final public char getChar (int index)
{
- // FIXME: this handles little endian only
- return (char) (((get (index) & 0xff) << 8)
- + (get (index + 1) & 0xff));
+ return ByteBufferHelper.getChar(this, index, order());
}
final public ByteBuffer putChar (int index, char value)
{
- // FIXME: this handles little endian only
- put (index, (byte) ((((int) value) & 0xff00) >> 8));
- put (index + 1, (byte) (((int) value) & 0x00ff));
+ ByteBufferHelper.putChar(this, index, value, order());
return this;
}
final public short getShort ()
{
- // FIXME: this handles little endian only
- return (short) (((get () & 0xff) << 8)
- + (get () & 0xff));
+ return ByteBufferHelper.getShort(this, order());
}
final public ByteBuffer putShort (short value)
{
- // FIXME: this handles little endian only
- put ((byte) ((((int) value) & 0xff00) >> 8));
- put ((byte) (((int) value) & 0x00ff));
+ ByteBufferHelper.putShort(this, value, order());
return this;
}
final public short getShort (int index)
{
- // FIXME: this handles little endian only
- return (short) (((get (index) & 0xff) << 8)
- + (get (index + 1) & 0xff));
+ return ByteBufferHelper.getShort(this, index, order());
}
final public ByteBuffer putShort (int index, short value)
{
- // FIXME: this handles little endian only
- put (index, (byte) ((((int) value) & 0xff00) >> 8));
- put (index + 1, (byte) (((int) value) & 0x00ff));
+ ByteBufferHelper.putShort(this, index, value, order());
return this;
}
final public int getInt ()
{
- // FIXME: this handles little endian only
- return (int) (((get () & 0xff) << 24)
- + ((get () & 0xff) << 16)
- + ((get () & 0xff) << 8)
- + (get () & 0xff));
+ return ByteBufferHelper.getInt(this, order());
}
final public ByteBuffer putInt (int value)
{
- // FIXME: this handles little endian only
- put ((byte) ((((int) value) & 0xff000000) >> 24));
- put ((byte) ((((int) value) & 0x00ff0000) >> 16));
- put ((byte) ((((int) value) & 0x0000ff00) >> 8));
- put ((byte) (((int) value) & 0x000000ff));
+ ByteBufferHelper.putInt(this, value, order());
return this;
}
final public int getInt (int index)
{
- // FIXME: this handles little endian only
- return (int) (((get (index) & 0xff) << 24)
- + ((get (index + 1) & 0xff) << 16)
- + ((get (index + 2) & 0xff) << 8)
- + (get (index + 3) & 0xff));
+ return ByteBufferHelper.getInt(this, index, order());
}
final public ByteBuffer putInt (int index, int value)
{
- // FIXME: this handles little endian only
- put (index, (byte) ((((int) value) & 0xff000000) >> 24));
- put (index + 1, (byte) ((((int) value) & 0x00ff0000) >> 16));
- put (index + 2, (byte) ((((int) value) & 0x0000ff00) >> 8));
- put (index + 3, (byte) (((int) value) & 0x000000ff));
+ ByteBufferHelper.putInt(this, index, value, order());
return this;
}
final public long getLong ()
{
- // FIXME: this handles little endian only
- return (long) (((get () & 0xff) << 56)
- + ((get () & 0xff) << 48)
- + ((get () & 0xff) << 40)
- + ((get () & 0xff) << 32)
- + ((get () & 0xff) << 24)
- + ((get () & 0xff) << 16)
- + ((get () & 0xff) << 8)
- + (get () & 0xff));
+ return ByteBufferHelper.getLong(this, order());
}
final public ByteBuffer putLong (long value)
{
- return ByteBufferHelper.putLong (this, value);
+ ByteBufferHelper.putLong (this, value, order());
+ return this;
}
final public long getLong (int index)
{
- return ByteBufferHelper.getLong (this, index);
+ return ByteBufferHelper.getLong (this, index, order());
}
final public ByteBuffer putLong (int index, long value)
{
- return ByteBufferHelper.putLong (this, index, value);
+ ByteBufferHelper.putLong (this, index, value, order());
+ return this;
}
final public float getFloat ()
{
- return ByteBufferHelper.getFloat (this);
+ return ByteBufferHelper.getFloat (this, order());
}
final public ByteBuffer putFloat (float value)
{
- return ByteBufferHelper.putFloat (this, value);
+ ByteBufferHelper.putFloat (this, value, order());
+ return this;
}
public final float getFloat (int index)
{
- return ByteBufferHelper.getFloat (this, index);
+ return ByteBufferHelper.getFloat (this, index, order());
}
final public ByteBuffer putFloat (int index, float value)
{
- return ByteBufferHelper.putFloat (this, index, value);
+ ByteBufferHelper.putFloat (this, index, value, order());
+ return this;
}
final public double getDouble ()
{
- return ByteBufferHelper.getDouble (this);
+ return ByteBufferHelper.getDouble (this, order());
}
final public ByteBuffer putDouble (double value)
{
- return ByteBufferHelper.putDouble (this, value);
+ ByteBufferHelper.putDouble (this, value, order());
+ return this;
}
final public double getDouble (int index)
{
- return ByteBufferHelper.getDouble (this, index);
+ return ByteBufferHelper.getDouble (this, index, order());
}
final public ByteBuffer putDouble (int index, double value)
{
- return ByteBufferHelper.putDouble (this, index, value);
+ ByteBufferHelper.putDouble (this, index, value, order());
+ return this;
}
}
diff --git a/libjava/java/nio/DoubleViewBufferImpl.java b/libjava/java/nio/DoubleViewBufferImpl.java
index 480b97f6d03..ac27746ba0d 100644
--- a/libjava/java/nio/DoubleViewBufferImpl.java
+++ b/libjava/java/nio/DoubleViewBufferImpl.java
@@ -1,5 +1,5 @@
/* DoubleViewBufferImpl.java --
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,54 +40,47 @@ package java.nio;
class DoubleViewBufferImpl extends DoubleBuffer
{
- private boolean readOnly;
+ /** Position in bb (i.e. a byte offset) where this buffer starts. */
private int offset;
private ByteBuffer bb;
+ private boolean readOnly;
private ByteOrder endian;
- public DoubleViewBufferImpl (ByteBuffer bb, boolean readOnly)
- {
- super (bb.remaining () >> 3, bb.remaining () >> 3, bb.position (), 0);
- this.bb = bb;
- this.readOnly = readOnly;
- // FIXME: What if this is called from DoubleByteBufferImpl and ByteBuffer has changed its endianess ?
- this.endian = bb.order ();
- }
-
public DoubleViewBufferImpl (ByteBuffer bb, int offset, int capacity,
int limit, int position, int mark,
- boolean readOnly)
+ boolean readOnly, ByteOrder endian)
{
super (limit >> 3, limit >> 3, position >> 3, mark >> 3);
this.bb = bb;
this.offset = offset;
this.readOnly = readOnly;
- // FIXME: What if this is called from DoubleViewBufferImpl and ByteBuffer has changed its endianess ?
- this.endian = bb.order ();
+ this.endian = endian;
}
public double get ()
{
- double result = bb.getDouble ((position () << 3) + offset);
- position (position () + 1);
+ int p = position();
+ double result = ByteBufferHelper.getDouble(bb, (p << 3) + offset, endian);
+ position(p + 1);
return result;
}
public double get (int index)
{
- return bb.getDouble ((index << 3) + offset);
+ return ByteBufferHelper.getDouble(bb, (index << 3) + offset, endian);
}
public DoubleBuffer put (double value)
{
- bb.putDouble ((position () << 3) + offset, value);
- position (position () + 1);
+ int p = position();
+ ByteBufferHelper.putDouble(bb, (p << 3) + offset, value, endian);
+ position(p + 1);
return this;
}
public DoubleBuffer put (int index, double value)
{
- bb.putDouble ((index << 3) + offset, value);
+ ByteBufferHelper.putDouble(bb, (index << 3) + offset, value, endian);
return this;
}
@@ -95,48 +88,41 @@ class DoubleViewBufferImpl extends DoubleBuffer
{
if (position () > 0)
{
- // Copy all data from position() to limit() to the beginning of the
- // buffer, set position to end of data and limit to capacity
- // XXX: This can surely be optimized, for direct and non-direct buffers
-
int count = limit () - position ();
-
- for (int i = 0; i < count; i++)
- {
- bb.putDouble ((i >> 3) + offset,
- bb.getDouble (((i + position ()) >> 3) + offset));
- }
-
+ bb.shiftDown(offset, offset + 8 * position(), 8 * count);
position (count);
limit (capacity ());
}
-
return this;
}
- public DoubleBuffer duplicate ()
+ public DoubleBuffer slice ()
{
- // Create a copy of this object that shares its content
- // FIXME: mark is not correct
- return new DoubleViewBufferImpl (bb, offset, capacity (), limit (),
- position (), -1, isReadOnly ());
+ return new DoubleViewBufferImpl (bb, (position () >> 3) + offset,
+ remaining(), remaining(), 0, -1,
+ readOnly, endian);
}
- public DoubleBuffer slice ()
+ DoubleBuffer duplicate (boolean readOnly)
{
- // Create a sliced copy of this object that shares its content.
- return new DoubleViewBufferImpl (bb, (position () >> 3) + offset,
- remaining (), remaining (), 0, -1,
- isReadOnly ());
+ int pos = position();
+ reset();
+ int mark = position();
+ position(pos);
+ return new DoubleViewBufferImpl (bb, offset, capacity(), limit(),
+ pos, mark, readOnly, endian);
}
+ public DoubleBuffer duplicate ()
+ {
+ return duplicate(readOnly);
+ }
+
public DoubleBuffer asReadOnlyBuffer ()
{
- // Create a copy of this object that shares its content and is read-only
- return new DoubleViewBufferImpl (bb, (position () >> 3) + offset,
- remaining (), remaining (), 0, -1, true);
+ return duplicate(true);
}
-
+
public boolean isReadOnly ()
{
return readOnly;
@@ -149,6 +135,6 @@ class DoubleViewBufferImpl extends DoubleBuffer
public ByteOrder order ()
{
- return ByteOrder.LITTLE_ENDIAN;
+ return endian;
}
}
diff --git a/libjava/java/nio/FloatViewBufferImpl.java b/libjava/java/nio/FloatViewBufferImpl.java
index e44cd5e18fd..88bc92553ab 100644
--- a/libjava/java/nio/FloatViewBufferImpl.java
+++ b/libjava/java/nio/FloatViewBufferImpl.java
@@ -1,5 +1,5 @@
/* FloatViewBufferImpl.java --
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,54 +40,47 @@ package java.nio;
class FloatViewBufferImpl extends FloatBuffer
{
- private boolean readOnly;
+ /** Position in bb (i.e. a byte offset) where this buffer starts. */
private int offset;
private ByteBuffer bb;
+ private boolean readOnly;
private ByteOrder endian;
- public FloatViewBufferImpl (ByteBuffer bb, boolean readOnly)
- {
- super (bb.remaining () >> 2, bb.remaining () >> 2, bb.position (), 0);
- this.bb = bb;
- this.readOnly = readOnly;
- // FIXME: What if this is called from FloatByteBufferImpl and ByteBuffer has changed its endianess ?
- this.endian = bb.order ();
- }
-
public FloatViewBufferImpl (ByteBuffer bb, int offset, int capacity,
- int limit, int position, int mark,
- boolean readOnly)
+ int limit, int position, int mark,
+ boolean readOnly, ByteOrder endian)
{
super (limit >> 2, limit >> 2, position >> 2, mark >> 2);
this.bb = bb;
this.offset = offset;
this.readOnly = readOnly;
- // FIXME: What if this is called from FloatViewBufferImpl and ByteBuffer has changed its endianess ?
- this.endian = bb.order ();
+ this.endian = endian;
}
public float get ()
{
- float result = bb.getFloat ((position () << 2) + offset);
- position (position () + 1);
+ int p = position();
+ float result = ByteBufferHelper.getFloat(bb, (p << 2) + offset, endian);
+ position(p + 1);
return result;
}
public float get (int index)
{
- return bb.getFloat ((index << 2) + offset);
+ return ByteBufferHelper.getFloat(bb, (index << 2) + offset, endian);
}
public FloatBuffer put (float value)
{
- bb.putFloat ((position () << 2) + offset, value);
- position (position () + 1);
+ int p = position();
+ ByteBufferHelper.putFloat(bb, (p << 2) + offset, value, endian);
+ position(p + 1);
return this;
}
public FloatBuffer put (int index, float value)
{
- bb.putFloat ((index << 2) + offset, value);
+ ByteBufferHelper.putFloat(bb, (index << 2) + offset, value, endian);
return this;
}
@@ -95,48 +88,42 @@ class FloatViewBufferImpl extends FloatBuffer
{
if (position () > 0)
{
- // Copy all data from position() to limit() to the beginning of the
- // buffer, set position to end of data and limit to capacity
- // XXX: This can surely be optimized, for direct and non-direct buffers
-
int count = limit () - position ();
-
- for (int i = 0; i < count; i++)
- {
- bb.putFloat ((i >> 2) + offset,
- bb.getFloat (((i + position ()) >> 2) + offset));
- }
-
+ bb.shiftDown(offset, offset + 4 * position(), 4 * count);
position (count);
limit (capacity ());
}
-
return this;
}
- public FloatBuffer duplicate ()
- {
- // Create a copy of this object that shares its content
- // FIXME: mark is not correct
- return new FloatViewBufferImpl (bb, offset, capacity (), limit (),
- position (), -1, isReadOnly ());
- }
-
public FloatBuffer slice ()
{
// Create a sliced copy of this object that shares its content.
return new FloatViewBufferImpl (bb, (position () >> 2) + offset,
- remaining (), remaining (), 0, -1,
- isReadOnly ());
+ remaining(), remaining(), 0, -1,
+ readOnly, endian);
}
- public FloatBuffer asReadOnlyBuffer ()
+ FloatBuffer duplicate (boolean readOnly)
{
- // Create a copy of this object that shares its content and is read-only
- return new FloatViewBufferImpl (bb, (position () >> 2) + offset,
- remaining (), remaining (), 0, -1, true);
+ int pos = position();
+ reset();
+ int mark = position();
+ position(pos);
+ return new FloatViewBufferImpl (bb, offset, capacity(), limit(),
+ pos, mark, readOnly, endian);
}
+ public FloatBuffer duplicate ()
+ {
+ return duplicate(readOnly);
+ }
+
+ public FloatBuffer asReadOnlyBuffer ()
+ {
+ return duplicate(true);
+ }
+
public boolean isReadOnly ()
{
return readOnly;
@@ -149,6 +136,6 @@ class FloatViewBufferImpl extends FloatBuffer
public ByteOrder order ()
{
- return ByteOrder.LITTLE_ENDIAN;
+ return endian;
}
}
diff --git a/libjava/java/nio/IntViewBufferImpl.java b/libjava/java/nio/IntViewBufferImpl.java
index e60f3cb99a4..8e384c9017d 100644
--- a/libjava/java/nio/IntViewBufferImpl.java
+++ b/libjava/java/nio/IntViewBufferImpl.java
@@ -1,5 +1,5 @@
/* IntViewBufferImpl.java --
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,54 +40,47 @@ package java.nio;
class IntViewBufferImpl extends IntBuffer
{
- private boolean readOnly;
+ /** Position in bb (i.e. a byte offset) where this buffer starts. */
private int offset;
private ByteBuffer bb;
+ private boolean readOnly;
private ByteOrder endian;
- public IntViewBufferImpl (ByteBuffer bb, boolean readOnly)
- {
- super (bb.remaining () >> 2, bb.remaining () >> 2, bb.position (), 0);
- this.bb = bb;
- this.readOnly = readOnly;
- // FIXME: What if this is called from IntByteBufferImpl and ByteBuffer has changed its endianess ?
- this.endian = bb.order ();
- }
-
public IntViewBufferImpl (ByteBuffer bb, int offset, int capacity,
- int limit, int position, int mark,
- boolean readOnly)
+ int limit, int position, int mark,
+ boolean readOnly, ByteOrder endian)
{
super (limit >> 2, limit >> 2, position >> 2, mark >> 2);
this.bb = bb;
this.offset = offset;
this.readOnly = readOnly;
- // FIXME: What if this is called from IntViewBufferImpl and ByteBuffer has changed its endianess ?
- this.endian = bb.order ();
+ this.endian = endian;
}
public int get ()
{
- int result = bb.getInt ((position () << 2) + offset);
- position (position () + 1);
+ int p = position();
+ int result = ByteBufferHelper.getInt(bb, (p << 2) + offset, endian);
+ position(p + 1);
return result;
}
public int get (int index)
{
- return bb.getInt ((index << 2) + offset);
+ return ByteBufferHelper.getInt(bb, (index << 2) + offset, endian);
}
public IntBuffer put (int value)
{
- bb.putInt ((position () << 2) + offset, value);
- position (position () + 1);
+ int p = position();
+ ByteBufferHelper.putInt(bb, (p << 2) + offset, value, endian);
+ position(p + 1);
return this;
}
public IntBuffer put (int index, int value)
{
- bb.putInt ((index << 2) + offset, value);
+ ByteBufferHelper.putInt(bb, (index << 2) + offset, value, endian);
return this;
}
@@ -95,48 +88,42 @@ class IntViewBufferImpl extends IntBuffer
{
if (position () > 0)
{
- // Copy all data from position() to limit() to the beginning of the
- // buffer, set position to end of data and limit to capacity
- // XXX: This can surely be optimized, for direct and non-direct buffers
-
int count = limit () - position ();
-
- for (int i = 0; i < count; i++)
- {
- bb.putInt ((i >> 2) + offset,
- bb.getInt (((i + position ()) >> 2) + offset));
- }
-
+ bb.shiftDown(offset, offset + 4 * position(), 4 * count);
position (count);
limit (capacity ());
}
-
return this;
}
- public IntBuffer duplicate ()
- {
- // Create a copy of this object that shares its content
- // FIXME: mark is not correct
- return new IntViewBufferImpl (bb, offset, capacity (), limit (),
- position (), -1, isReadOnly ());
- }
-
public IntBuffer slice ()
{
// Create a sliced copy of this object that shares its content.
return new IntViewBufferImpl (bb, (position () >> 2) + offset,
- remaining (), remaining (), 0, -1,
- isReadOnly ());
+ remaining(), remaining(), 0, -1,
+ readOnly, endian);
}
- public IntBuffer asReadOnlyBuffer ()
+ IntBuffer duplicate (boolean readOnly)
{
- // Create a copy of this object that shares its content and is read-only
- return new IntViewBufferImpl (bb, (position () >> 2) + offset,
- remaining (), remaining (), 0, -1, true);
+ int pos = position();
+ reset();
+ int mark = position();
+ position(pos);
+ return new IntViewBufferImpl (bb, offset, capacity(), limit(),
+ pos, mark, readOnly, endian);
}
+ public IntBuffer duplicate ()
+ {
+ return duplicate(readOnly);
+ }
+
+ public IntBuffer asReadOnlyBuffer ()
+ {
+ return duplicate(true);
+ }
+
public boolean isReadOnly ()
{
return readOnly;
@@ -149,6 +136,6 @@ class IntViewBufferImpl extends IntBuffer
public ByteOrder order ()
{
- return ByteOrder.LITTLE_ENDIAN;
+ return endian;
}
}
diff --git a/libjava/java/nio/LongViewBufferImpl.java b/libjava/java/nio/LongViewBufferImpl.java
index c7ada48658f..a405ec871a5 100644
--- a/libjava/java/nio/LongViewBufferImpl.java
+++ b/libjava/java/nio/LongViewBufferImpl.java
@@ -1,5 +1,5 @@
/* LongViewBufferImpl.java --
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,54 +40,47 @@ package java.nio;
class LongViewBufferImpl extends LongBuffer
{
- private boolean readOnly;
+ /** Position in bb (i.e. a byte offset) where this buffer starts. */
private int offset;
private ByteBuffer bb;
+ private boolean readOnly;
private ByteOrder endian;
- public LongViewBufferImpl (ByteBuffer bb, boolean readOnly)
- {
- super (bb.remaining () >> 3, bb.remaining () >> 3, bb.position (), 0);
- this.bb = bb;
- this.readOnly = readOnly;
- // FIXME: What if this is called from LongByteBufferImpl and ByteBuffer has changed its endianess ?
- this.endian = bb.order ();
- }
-
public LongViewBufferImpl (ByteBuffer bb, int offset, int capacity,
- int limit, int position, int mark,
- boolean readOnly)
+ int limit, int position, int mark,
+ boolean readOnly, ByteOrder endian)
{
super (limit >> 3, limit >> 3, position >> 3, mark >> 3);
this.bb = bb;
this.offset = offset;
this.readOnly = readOnly;
- // FIXME: What if this is called from LongViewBufferImpl and ByteBuffer has changed its endianess ?
- this.endian = bb.order ();
+ this.endian = endian;
}
public long get ()
{
- long result = bb.getLong ((position () << 3) + offset);
- position (position () + 1);
+ int p = position();
+ long result = ByteBufferHelper.getLong(bb, (p << 3) + offset, endian);
+ position(p + 1);
return result;
}
public long get (int index)
{
- return bb.getLong ((index << 3) + offset);
+ return ByteBufferHelper.getLong(bb, (index << 3) + offset, endian);
}
public LongBuffer put (long value)
{
- bb.putLong ((position () << 3) + offset, value);
- position (position () + 1);
+ int p = position();
+ ByteBufferHelper.putLong(bb, (p << 3) + offset, value, endian);
+ position(p + 1);
return this;
}
public LongBuffer put (int index, long value)
{
- bb.putLong ((index << 3) + offset, value);
+ ByteBufferHelper.putLong(bb, (index << 3) + offset, value, endian);
return this;
}
@@ -95,48 +88,42 @@ class LongViewBufferImpl extends LongBuffer
{
if (position () > 0)
{
- // Copy all data from position() to limit() to the beginning of the
- // buffer, set position to end of data and limit to capacity
- // XXX: This can surely be optimized, for direct and non-direct buffers
-
int count = limit () - position ();
-
- for (int i = 0; i < count; i++)
- {
- bb.putLong ((i >> 3) + offset,
- bb.getLong (((i + position ()) >> 3) + offset));
- }
-
+ bb.shiftDown(offset, offset + 8 * position(), 8 * count);
position (count);
limit (capacity ());
}
-
return this;
}
- public LongBuffer duplicate ()
- {
- // Create a copy of this object that shares its content
- // FIXME: mark is not correct
- return new LongViewBufferImpl (bb, offset, capacity (), limit (),
- position (), -1, isReadOnly ());
- }
-
public LongBuffer slice ()
{
// Create a sliced copy of this object that shares its content.
return new LongViewBufferImpl (bb, (position () >> 3) + offset,
- remaining (), remaining (), 0, -1,
- isReadOnly ());
+ remaining(), remaining(), 0, -1,
+ readOnly, endian);
}
- public LongBuffer asReadOnlyBuffer ()
+ LongBuffer duplicate (boolean readOnly)
{
- // Create a copy of this object that shares its content and is read-only
- return new LongViewBufferImpl (bb, (position () >> 3) + offset,
- remaining (), remaining (), 0, -1, true);
+ int pos = position();
+ reset();
+ int mark = position();
+ position(pos);
+ return new LongViewBufferImpl (bb, offset, capacity(), limit(),
+ pos, mark, readOnly, endian);
}
+ public LongBuffer duplicate ()
+ {
+ return duplicate(readOnly);
+ }
+
+ public LongBuffer asReadOnlyBuffer ()
+ {
+ return duplicate(true);
+ }
+
public boolean isReadOnly ()
{
return readOnly;
@@ -149,6 +136,6 @@ class LongViewBufferImpl extends LongBuffer
public ByteOrder order ()
{
- return ByteOrder.LITTLE_ENDIAN;
+ return endian;
}
}
diff --git a/libjava/java/nio/MappedByteBufferImpl.java b/libjava/java/nio/MappedByteBufferImpl.java
index 47673c66aa4..f1d892f146f 100644
--- a/libjava/java/nio/MappedByteBufferImpl.java
+++ b/libjava/java/nio/MappedByteBufferImpl.java
@@ -1,5 +1,5 @@
/* MappedByteBufferImpl.java --
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -111,15 +111,14 @@ public class MappedByteBufferImpl extends MappedByteBuffer
public ByteBuffer compact ()
{
- int copied = 0;
-
- while (remaining () > 0)
+ int pos = position();
+ if (pos > 0)
{
- put (copied, get ());
- copied++;
+ int count = remaining();
+ shiftDown(0, pos, count);
+ position(count);
+ limit(capacity());
}
-
- position (copied);
return this;
}
@@ -145,151 +144,163 @@ public class MappedByteBufferImpl extends MappedByteBuffer
public CharBuffer asCharBuffer ()
{
- return new CharViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly ());
+ return new CharViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly (), order());
}
public ShortBuffer asShortBuffer ()
{
- return new ShortViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly ());
+ return new ShortViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly (), order());
}
public IntBuffer asIntBuffer ()
{
- return new IntViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly ());
+ return new IntViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly (), order());
}
public LongBuffer asLongBuffer ()
{
- return new LongViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly ());
+ return new LongViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly (), order());
}
public FloatBuffer asFloatBuffer ()
{
- return new FloatViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly ());
+ return new FloatViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly (), order());
}
public DoubleBuffer asDoubleBuffer ()
{
- return new DoubleViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly ());
+ return new DoubleViewBufferImpl (this, position (), remaining(), remaining (), 0, -1, isReadOnly (), order());
}
- public final char getChar()
+ final public char getChar ()
{
- return ByteBufferHelper.getChar (this);
+ return ByteBufferHelper.getChar(this, order());
}
- public final ByteBuffer putChar (char value)
+ final public ByteBuffer putChar (char value)
{
- return ByteBufferHelper.putChar (this, value);
+ ByteBufferHelper.putChar(this, value, order());
+ return this;
}
- public final char getChar (int index)
+ final public char getChar (int index)
{
- return ByteBufferHelper.getChar (this, index);
+ return ByteBufferHelper.getChar(this, index, order());
}
- public final ByteBuffer putChar (int index, char value)
+ final public ByteBuffer putChar (int index, char value)
{
- return ByteBufferHelper.putChar (this, index, value);
+ ByteBufferHelper.putChar(this, index, value, order());
+ return this;
}
- public final short getShort()
+ final public short getShort ()
{
- return ByteBufferHelper.getShort (this);
+ return ByteBufferHelper.getShort(this, order());
}
- public final ByteBuffer putShort (short value)
+ final public ByteBuffer putShort (short value)
{
- return ByteBufferHelper.putShort (this, value);
+ ByteBufferHelper.putShort(this, value, order());
+ return this;
}
- public final short getShort (int index)
+ final public short getShort (int index)
{
- return ByteBufferHelper.getShort (this, index);
+ return ByteBufferHelper.getShort(this, index, order());
}
- public final ByteBuffer putShort (int index, short value)
+ final public ByteBuffer putShort (int index, short value)
{
- return ByteBufferHelper.putShort (this, index, value);
+ ByteBufferHelper.putShort(this, index, value, order());
+ return this;
}
- public final int getInt()
+ final public int getInt ()
{
- return ByteBufferHelper.getInt (this);
+ return ByteBufferHelper.getInt(this, order());
}
- public final ByteBuffer putInt (int value)
+ final public ByteBuffer putInt (int value)
{
- return ByteBufferHelper.putInt (this, value);
+ ByteBufferHelper.putInt(this, value, order());
+ return this;
}
- public final int getInt (int index)
+ final public int getInt (int index)
{
- return ByteBufferHelper.getInt (this, index);
+ return ByteBufferHelper.getInt(this, index, order());
}
- public final ByteBuffer putInt (int index, int value)
+ final public ByteBuffer putInt (int index, int value)
{
- return ByteBufferHelper.putInt (this, index, value);
+ ByteBufferHelper.putInt(this, index, value, order());
+ return this;
}
- public final long getLong()
+ final public long getLong ()
{
- return ByteBufferHelper.getLong (this);
+ return ByteBufferHelper.getLong(this, order());
}
- public final ByteBuffer putLong (long value)
+ final public ByteBuffer putLong (long value)
{
- return ByteBufferHelper.putLong (this, value);
+ ByteBufferHelper.putLong (this, value, order());
+ return this;
}
- public final long getLong (int index)
+ final public long getLong (int index)
{
- return ByteBufferHelper.getLong (this, index);
+ return ByteBufferHelper.getLong (this, index, order());
}
- public final ByteBuffer putLong (int index, long value)
+ final public ByteBuffer putLong (int index, long value)
{
- return ByteBufferHelper.putLong (this, index, value);
+ ByteBufferHelper.putLong (this, index, value, order());
+ return this;
}
- public final float getFloat()
+ final public float getFloat ()
{
- return ByteBufferHelper.getFloat (this);
+ return ByteBufferHelper.getFloat (this, order());
}
- public final ByteBuffer putFloat (float value)
+ final public ByteBuffer putFloat (float value)
{
- return ByteBufferHelper.putFloat (this, value);
+ ByteBufferHelper.putFloat (this, value, order());
+ return this;
}
public final float getFloat (int index)
{
- return ByteBufferHelper.getFloat (this, index);
+ return ByteBufferHelper.getFloat (this, index, order());
}
- public final ByteBuffer putFloat (int index, float value)
+ final public ByteBuffer putFloat (int index, float value)
{
- return ByteBufferHelper.putFloat (this, index, value);
+ ByteBufferHelper.putFloat (this, index, value, order());
+ return this;
}
- public final double getDouble()
+ final public double getDouble ()
{
- return ByteBufferHelper.getDouble (this);
+ return ByteBufferHelper.getDouble (this, order());
}
- public final ByteBuffer putDouble (double value)
+ final public ByteBuffer putDouble (double value)
{
- return ByteBufferHelper.putDouble (this, value);
+ ByteBufferHelper.putDouble (this, value, order());
+ return this;
}
- public final double getDouble (int index)
+ final public double getDouble (int index)
{
- return ByteBufferHelper.getDouble (this, index);
+ return ByteBufferHelper.getDouble (this, index, order());
}
- public final ByteBuffer putDouble (int index, double value)
+ final public ByteBuffer putDouble (int index, double value)
{
- return ByteBufferHelper.putDouble (this, index, value);
+ ByteBufferHelper.putDouble (this, index, value, order());
+ return this;
}
}
diff --git a/libjava/java/nio/ShortViewBufferImpl.java b/libjava/java/nio/ShortViewBufferImpl.java
index 9594642ba89..b217f1cb553 100644
--- a/libjava/java/nio/ShortViewBufferImpl.java
+++ b/libjava/java/nio/ShortViewBufferImpl.java
@@ -1,5 +1,5 @@
/* ShortViewBufferImpl.java --
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,54 +40,47 @@ package java.nio;
class ShortViewBufferImpl extends ShortBuffer
{
- private boolean readOnly;
+ /** Position in bb (i.e. a byte offset) where this buffer starts. */
private int offset;
private ByteBuffer bb;
+ private boolean readOnly;
private ByteOrder endian;
- public ShortViewBufferImpl (ByteBuffer bb, boolean readOnly)
- {
- super (bb.remaining () >> 1, bb.remaining () >> 1, bb.position (), 0);
- this.bb = bb;
- this.readOnly = readOnly;
- // FIXME: What if this is called from ShortByteBufferImpl and ByteBuffer has changed its endianess ?
- this.endian = bb.order ();
- }
-
public ShortViewBufferImpl (ByteBuffer bb, int offset, int capacity,
- int limit, int position, int mark,
- boolean readOnly)
+ int limit, int position, int mark,
+ boolean readOnly, ByteOrder endian)
{
super (limit >> 1, limit >> 1, position >> 1, mark >> 1);
this.bb = bb;
this.offset = offset;
this.readOnly = readOnly;
- // FIXME: What if this is called from ShortViewBufferImpl and ByteBuffer has changed its endianess ?
- this.endian = bb.order ();
+ this.endian = endian;
}
public short get ()
{
- short result = bb.getShort ((position () << 1) + offset);
- position (position () + 1);
+ int p = position();
+ short result = ByteBufferHelper.getShort(bb, (p << 1) + offset, endian);
+ position(p + 1);
return result;
}
public short get (int index)
{
- return bb.getShort ((index << 1) + offset);
+ return ByteBufferHelper.getShort(bb, (index << 1) + offset, endian);
}
public ShortBuffer put (short value)
{
- bb.putShort ((position () << 1) + offset, value);
- position (position () + 1);
+ int p = position();
+ ByteBufferHelper.putShort(bb, (p << 1) + offset, value, endian);
+ position(p + 1);
return this;
}
public ShortBuffer put (int index, short value)
{
- bb.putShort ((index << 1) + offset, value);
+ ByteBufferHelper.putShort(bb, (index << 1) + offset, value, endian);
return this;
}
@@ -95,48 +88,42 @@ class ShortViewBufferImpl extends ShortBuffer
{
if (position () > 0)
{
- // Copy all data from position() to limit() to the beginning of the
- // buffer, set position to end of data and limit to capacity
- // XXX: This can surely be optimized, for direct and non-direct buffers
-
int count = limit () - position ();
-
- for (int i = 0; i < count; i++)
- {
- bb.putShort ((i >> 1) + offset,
- bb.getShort (((i + position ()) >> 1) + offset));
- }
-
+ bb.shiftDown(offset, offset + 2 * position(), 2 * count);
position (count);
limit (capacity ());
}
-
return this;
}
- public ShortBuffer duplicate ()
- {
- // Create a copy of this object that shares its content
- // FIXME: mark is not correct
- return new ShortViewBufferImpl (bb, offset, capacity (), limit (),
- position (), -1, isReadOnly ());
- }
-
public ShortBuffer slice ()
{
// Create a sliced copy of this object that shares its content.
return new ShortViewBufferImpl (bb, (position () >> 1) + offset,
- remaining (), remaining (), 0, -1,
- isReadOnly ());
+ remaining(), remaining(), 0, -1,
+ readOnly, endian);
}
- public ShortBuffer asReadOnlyBuffer ()
+ ShortBuffer duplicate (boolean readOnly)
{
- // Create a copy of this object that shares its content and is read-only
- return new ShortViewBufferImpl (bb, (position () >> 1) + offset,
- remaining (), remaining (), 0, -1, true);
+ int pos = position();
+ reset();
+ int mark = position();
+ position(pos);
+ return new ShortViewBufferImpl (bb, offset, capacity(), limit(),
+ pos, mark, readOnly, endian);
}
+ public ShortBuffer duplicate ()
+ {
+ return duplicate(readOnly);
+ }
+
+ public ShortBuffer asReadOnlyBuffer ()
+ {
+ return duplicate(true);
+ }
+
public boolean isReadOnly ()
{
return readOnly;
@@ -149,6 +136,6 @@ class ShortViewBufferImpl extends ShortBuffer
public ByteOrder order ()
{
- return ByteOrder.LITTLE_ENDIAN;
+ return endian;
}
}
diff --git a/libjava/java/nio/channels/spi/AbstractInterruptibleChannel.java b/libjava/java/nio/channels/spi/AbstractInterruptibleChannel.java
index 0cf798eaf57..5d9f886ac39 100644
--- a/libjava/java/nio/channels/spi/AbstractInterruptibleChannel.java
+++ b/libjava/java/nio/channels/spi/AbstractInterruptibleChannel.java
@@ -74,8 +74,8 @@ public abstract class AbstractInterruptibleChannel
{
if (!closed)
{
- implCloseChannel();
closed = true;
+ implCloseChannel();
}
}
diff --git a/libjava/java/nio/channels/spi/AbstractSelectableChannel.java b/libjava/java/nio/channels/spi/AbstractSelectableChannel.java
index 17d6a2eaea1..c0a654f0748 100644
--- a/libjava/java/nio/channels/spi/AbstractSelectableChannel.java
+++ b/libjava/java/nio/channels/spi/AbstractSelectableChannel.java
@@ -80,8 +80,11 @@ public abstract class AbstractSelectableChannel extends SelectableChannel
{
synchronized (blockingLock())
{
- implConfigureBlocking(blocking);
- this.blocking = blocking;
+ if (this.blocking != blocking)
+ {
+ implConfigureBlocking(blocking);
+ this.blocking = blocking;
+ }
}
return this;
diff --git a/libjava/java/nio/natDirectByteBufferImpl.cc b/libjava/java/nio/natDirectByteBufferImpl.cc
index 2ceea170551..7ff06ffa030 100644
--- a/libjava/java/nio/natDirectByteBufferImpl.cc
+++ b/libjava/java/nio/natDirectByteBufferImpl.cc
@@ -43,3 +43,12 @@ java::nio::DirectByteBufferImpl::putImpl (jint index, jbyte value)
jbyte* pointer = reinterpret_cast<jbyte*> (address) + offset + index;
*pointer = value;
}
+
+void
+java::nio::DirectByteBufferImpl::shiftDown
+(jint dst_offset, jint src_offset, jint count)
+{
+ jbyte* dst = reinterpret_cast<jbyte*> (address) + offset + dst_offset;
+ jbyte* src = reinterpret_cast<jbyte*> (address) + offset + src_offset;
+ ::memmove(dst, src, count);
+}
diff --git a/libjava/libltdl/ChangeLog b/libjava/libltdl/ChangeLog
index 67edbdd80cb..f8ba558de55 100644
--- a/libjava/libltdl/ChangeLog
+++ b/libjava/libltdl/ChangeLog
@@ -1,3 +1,12 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-02-22 Matthias Klose <doko@debian.org>
+
+ * config.guess: Update from version 2003-10-07 to 2004-02-16.
+ * config.sub: Update from version 2003-10-07 to 2004-02-16.
+
2003-08-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* configure.in: Don't initialize GCINCS to boehm-gc/include.
diff --git a/libjava/libltdl/config.guess b/libjava/libltdl/config.guess
index 11271623bbd..00ccf89e18b 100755
--- a/libjava/libltdl/config.guess
+++ b/libjava/libltdl/config.guess
@@ -3,7 +3,7 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
-timestamp='2003-10-07'
+timestamp='2004-02-16'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -197,12 +197,18 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
echo "${machine}-${os}${release}"
exit 0 ;;
+ amd64:OpenBSD:*:*)
+ echo x86_64-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
amiga:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
arc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
+ cats:OpenBSD:*:*)
+ echo arm-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
hp300:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
@@ -221,6 +227,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
mvmeppc:OpenBSD:*:*)
echo powerpc-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
+ pegasos:OpenBSD:*:*)
+ echo powerpc-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
pmax:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
@@ -236,6 +245,15 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
*:OpenBSD:*:*)
echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
+ *:ekkoBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+ exit 0 ;;
+ macppc:MirBSD:*:*)
+ echo powerppc-unknown-mirbsd${UNAME_RELEASE}
+ exit 0 ;;
+ *:MirBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+ exit 0 ;;
alpha:OSF1:*:*)
if test $UNAME_RELEASE = "V4.0"; then
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
@@ -307,6 +325,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
*:OS/390:*:*)
echo i370-ibm-openedition
exit 0 ;;
+ *:OS400:*:*)
+ echo powerpc-ibm-os400
+ exit 0 ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix${UNAME_RELEASE}
exit 0;;
@@ -399,6 +420,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
echo m68k-unknown-mint${UNAME_RELEASE}
exit 0 ;;
+ m68k:machten:*:*)
+ echo m68k-apple-machten${UNAME_RELEASE}
+ exit 0 ;;
powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE}
exit 0 ;;
@@ -742,6 +766,11 @@ EOF
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit 0 ;;
+ 5000:UNIX_System_V:4.*:*)
+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+ FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ exit 0 ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
exit 0 ;;
@@ -986,6 +1015,9 @@ EOF
i*86:atheos:*:*)
echo ${UNAME_MACHINE}-unknown-atheos
exit 0 ;;
+ i*86:syllable:*:*)
+ echo ${UNAME_MACHINE}-pc-syllable
+ exit 0 ;;
i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
echo i386-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
@@ -1172,7 +1204,7 @@ EOF
*:QNX:*:4*)
echo i386-pc-qnx
exit 0 ;;
- NSR-[DGKLNPTVWY]:NONSTOP_KERNEL:*:*)
+ NSR-?:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE}
exit 0 ;;
*:NonStop-UX:*:*)
@@ -1216,6 +1248,9 @@ EOF
SEI:*:*:SEIUX)
echo mips-sei-seiux${UNAME_RELEASE}
exit 0 ;;
+ *:DragonFly:*:*)
+ echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+ exit 0 ;;
esac
#echo '(No uname command or uname output not recognized.)' 1>&2
diff --git a/libjava/libltdl/config.sub b/libjava/libltdl/config.sub
index 79657cd1822..d2e3557ac40 100755
--- a/libjava/libltdl/config.sub
+++ b/libjava/libltdl/config.sub
@@ -3,7 +3,7 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
-timestamp='2003-10-07'
+timestamp='2004-02-16'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@@ -118,7 +118,8 @@ esac
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
- nto-qnx* | linux-gnu* | linux-dietlibc | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
+ nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
+ kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
@@ -362,6 +363,9 @@ case $basic_machine in
basic_machine=a29k-amd
os=-udi
;;
+ abacus)
+ basic_machine=abacus-unknown
+ ;;
adobe68k)
basic_machine=m68010-adobe
os=-scout
@@ -379,6 +383,9 @@ case $basic_machine in
amd64)
basic_machine=x86_64-pc
;;
+ amd64-*)
+ basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
amdahl)
basic_machine=580-amdahl
os=-sysv
@@ -438,6 +445,10 @@ case $basic_machine in
basic_machine=j90-cray
os=-unicos
;;
+ cr16c)
+ basic_machine=cr16c-unknown
+ os=-elf
+ ;;
crds | unos)
basic_machine=m68k-crds
;;
@@ -743,6 +754,10 @@ case $basic_machine in
basic_machine=or32-unknown
os=-coff
;;
+ os400)
+ basic_machine=powerpc-ibm
+ os=-os400
+ ;;
OSE68000 | ose68000)
basic_machine=m68000-ericsson
os=-ose
@@ -963,6 +978,10 @@ case $basic_machine in
tower | tower-32)
basic_machine=m68k-ncr
;;
+ tpf)
+ basic_machine=s390x-ibm
+ os=-tpf
+ ;;
udi29k)
basic_machine=a29k-amd
os=-udi
@@ -1131,19 +1150,20 @@ case $os in
| -aos* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -netbsd* | -openbsd* | -kfreebsd* | -freebsd* | -riscix* \
- | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
+ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
+ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
+ | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei*)
+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@@ -1182,6 +1202,9 @@ case $os in
-opened*)
os=-openedition
;;
+ -os400*)
+ os=-os400
+ ;;
-wince*)
os=-wince
;;
@@ -1203,6 +1226,9 @@ case $os in
-atheos*)
os=-atheos
;;
+ -syllable*)
+ os=-syllable
+ ;;
-386bsd)
os=-bsd
;;
@@ -1225,6 +1251,9 @@ case $os in
-sinix*)
os=-sysv4
;;
+ -tpf*)
+ os=-tpf
+ ;;
-triton*)
os=-sysv3
;;
@@ -1473,9 +1502,15 @@ case $basic_machine in
-mvs* | -opened*)
vendor=ibm
;;
+ -os400*)
+ vendor=ibm
+ ;;
-ptx*)
vendor=sequent
;;
+ -tpf*)
+ vendor=ibm
+ ;;
-vxsim* | -vxworks* | -windiss*)
vendor=wrs
;;
diff --git a/libjava/libtool-version b/libjava/libtool-version
index 8c0164a94a0..08b615589a2 100644
--- a/libjava/libtool-version
+++ b/libjava/libtool-version
@@ -3,4 +3,4 @@
# a separate file so that version updates don't involve re-running
# automake.
# CURRENT:REVISION:AGE
-4:0:0
+5:0:0
diff --git a/libjava/testsuite/ChangeLog b/libjava/testsuite/ChangeLog
index 6d958a7a059..430cabe015d 100644
--- a/libjava/testsuite/ChangeLog
+++ b/libjava/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
* lib/libjava.exp: Add LD_LIBRARY_PATH_32/64 to get proper
diff --git a/libjava/verify.cc b/libjava/verify.cc
index f91df81cde1..64efc3033f1 100644
--- a/libjava/verify.cc
+++ b/libjava/verify.cc
@@ -19,6 +19,11 @@ details. */
#include <java-insns.h>
#include <java-interp.h>
+// On Solaris 10/x86, <signal.h> indirectly includes <ia32/sys/reg.h>, which
+// defines PC since g++ predefines __EXTENSIONS__. Undef here to avoid clash
+// with PC member of class _Jv_BytecodeVerifier below.
+#undef PC
+
#ifdef INTERPRETER
#include <java/lang/Class.h>
diff --git a/libobjc/ChangeLog b/libobjc/ChangeLog
index 069a1f9dc51..f83fd8a4399 100644
--- a/libobjc/ChangeLog
+++ b/libobjc/ChangeLog
@@ -1,3 +1,16 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-03-01 Michael Matz <matz@suse.de>
+
+ * Makefile.in (ALL_CFLAGS): Add -fno-strict-aliasing.
+
+2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/10781
+ * encoding.c (rs6000_special_round_type_align): Define.
+
2004-01-14 Adam Fedor <fedor@gnu.org>
PR libobjc/12155
diff --git a/libobjc/Makefile.in b/libobjc/Makefile.in
index 1e6c337a6e0..ad91e72b30a 100644
--- a/libobjc/Makefile.in
+++ b/libobjc/Makefile.in
@@ -71,7 +71,7 @@ CFLAGS = @CFLAGS@
WARN_CFLAGS = -W -Wall -Wwrite-strings -Wstrict-prototypes
GTHREAD_FLAGS=@GTHREAD_FLAGS@
ALL_CFLAGS = -I. -I$(srcdir) $(CPPFLAGS) $(DEFS) $(CFLAGS) $(WARN_CFLAGS) \
- $(GTHREAD_FLAGS) -DIN_GCC -DIN_TARGET_LIBS
+ $(GTHREAD_FLAGS) -DIN_GCC -DIN_TARGET_LIBS -fno-strict-aliasing
# Libtool
# The following strings describe the version of the obj-C library
diff --git a/libobjc/encoding.c b/libobjc/encoding.c
index bed0653cff7..17bc8d4e2e1 100644
--- a/libobjc/encoding.c
+++ b/libobjc/encoding.c
@@ -88,6 +88,17 @@ Boston, MA 02111-1307, USA. */
eliminate the warning. */
static int __attribute__ ((__unused__)) target_flags = 0;
+
+/* FIXME: while this file has no business including tm.h, this
+ definitely has no business defining this macro but it
+ is only way around without really rewritting this file,
+ should look after the branch of 3.4 to fix this. */
+#define rs6000_special_round_type_align(STRUCT, COMPUTED, SPECIFIED) \
+ ((TYPE_FIELDS (STRUCT) != 0 \
+ && DECL_MODE (TYPE_FIELDS (STRUCT)) == DFmode) \
+ ? MAX (MAX (COMPUTED, SPECIFIED), 64) \
+ : MAX (COMPUTED, SPECIFIED))
+
/*
return the size of an object specified by type
*/
diff --git a/libstdc++-v3/.cvsignore b/libstdc++-v3/.cvsignore
new file mode 100644
index 00000000000..d89921897ae
--- /dev/null
+++ b/libstdc++-v3/.cvsignore
@@ -0,0 +1 @@
+autom4te.cache
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 9e45eb0ce3b..c3b1bb17f0d 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,9014 +1,2534 @@
-2004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
+2004-04-18 Release Manager
- * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
- mkfifo for mingw32.
+ * GCC 3.4.0 released.
-2004-01-15 Stefan Olsson <stefan@snon.net>
-
- * include/ext/mt_allocator.h: Reuse thread id's as soon as
- possible by changing the behaviour of thread_freelist to do
- push_front when threads die instead of push_back.
-
-2004-01-14 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.h (struct __numpunct_cache):
- Add member _M_grouping_size, caching the length of _M_grouping.
- (__numpunct_cache<>::_M_cache): Assign the latter.
- (__verify_grouping): Move declaration...
- * include/bits/locale_facets.tcc (__verify_grouping):
- ... here, change signature to take a const char* and a size_t
- for the grouping; not a template anymore.
- (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
- Likewise change signature and tweak consistently.
- (num_get::_M_extract_float, num_get::_M_extract_int,
- num_put::_M_insert_int, num_put::_M_insert_float,
- money_get::do_get(string_type&), money_get::do_put(string_type)):
- Update callers.
- * config/locale/generic/numeric_members.cc
- (numpunct<>::_M_initialize_numpunct): Assign the new member.
- * config/locale/gnu/numeric_members.cc
- (numpunct<>::_M_initialize_numpunct): Likewise.
- * src/locale-inst.cc (__add_grouping): Tweak signature.
- (__verify_grouping): Don't instantiate, not a template anymore.
-
- * include/bits/locale_facets.h: Rename _M_truename_len ->
- _M_truename_size, _M_falsename_len -> _M_falsename_size.
- * include/bits/locale_facets.tcc: Likewise.
- * config/locale/generic/numeric_members.cc: Likewise.
- * config/locale/gnu/numeric_members.cc: Likewise.
-
-2004-01-14 Stefan Olsson <stefan@snon.net>
-
- * include/ext/mt_allocator.h: Fixups.
- * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
- * testsuite/performance/allocator_thread.cc: Same.
+2004-04-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/stl_bvector.h: Use _M_impl._M_start.
+
+2004-04-16 Benjamin Kosnik <bkoz@redhat.com>
-2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
+ * include/bits/c++config (_GLIBCXX_STD): New.
+ * src/list.cc: Use it.
+ * include/std/std_bitset.h: Same.
+ * include/bits/vector.tcc: Same.
+ * include/bits/stl_set.h: Same.
+ * include/bits/stl_multiset.h: Same.
+ * include/bits/stl_multimap.h: Same.
+ * include/bits/stl_map.h: Same.
+ * include/bits/stl_list.h: Same.
+ * include/bits/stl_vector.h: Same.
+ * include/bits/stl_bvector.h: Same.
+ * include/bits/stl_deque.h: Same.
+ * include/bits/deque.tcc: Same.
+ * include/bits/list.tcc: Same.
+ * include/debug/vector: Same.
+ * include/debug/set.h: Same.
+ * include/debug/multiset.h: Same.
+ * include/debug/multimap.h: Same.
+ * include/debug/map.h: Same.
+ * include/debug/list: Same.
+ * include/debug/deque: Same.
+ * include/debug/bitset: Same.
+ * include/debug/formatter.h (__gnu_debug): Remove using directive.
+ Add using declaration for std::type_info.
+ * include/debug/safe_iterator.h: Add using declaration for
+ std::iterator_traits and std::pair.
+ * src/debug_list.cc: New.
+ * src/Makefile.am: Add debug_list.cc.
+ * src/Makefile.in: Regenerate.
+ * config/linker-map.gnu: Add _List_node_base exports for std and
+ __gnu_norm.
- * testsuite/performance/ifstream_extract_float.cc: Add higher
- precision tests.
- * testsuite/performance/ofstream_insert_float.cc: Same.
+ * include/bits/stl_bvector.h (_Bvector_base): Use _Bvector_impl
+ idiom that other containers use.
+ * testsuite/23_containers/vector/bool/clear_allocator.cc: New.
-2004-01-13 Paolo Carlini <pcarlini@suse.de>
-
- * src/locale-misc-inst.cc (__convert_from_v(long),
- __convert_from_v(unsigned long), __convert_from_v(long long),
- __convert_from_v(unsigned long long)): Remove, unused.
-
-2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
+2004-04-14 Zack Weinberg <zack@codesourcery.com>
- * testsuite/performance/ifstream_extract_float.cc: New.
- * testsuite/performance/ofstream_insert_float.cc: Float generation
- matches above.
+ * testsuite/Makefile.am: Add definition of AM_CXXFLAGS.
+ Change definition of CXX to use $(shell) instead of backticks.
+ * testsuite/Makefile.in: Regenerate.
- * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
- * 20_util/auto_ptr/1.cc: ...this.
- * 20_util/auto_ptr/2.cc: Same.
- * 20_util/auto_ptr/3.cc: Same.
- * 20_util/auto_ptr/3946.cc: Same.
- * 20_util/auto_ptr/4.cc: Same.
- * 20_util/auto_ptr/5.cc: Same.
- * 20_util/auto_ptr/6.cc: Same.
- * 20_util/auto_ptr/7.cc: Same.
- * 20_util/auto_ptr/assign_neg.cc
- * 20_util/pairs.cc: Break into...
- * 20_util/pair/1.cc: ...this.
- * 20_util/pair/2.cc: Same.
- * 20_util/pair/3.cc: Same.
- * 20_util/pair/4.cc: Same.
+2004-04-09 Andreas Schwab <schwab@suse.de>
-2004-01-13 Paolo Carlini <pcarlini@suse.de>
+ * testsuite/lib/prune.exp (prune_g++_output): Ignore errata
+ warning from IA64 assembler.
- * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
- Set correctly just basefield, the only group that matters.
+2004-03-30 Benjamin Kosnik <bkoz@redhat.com>
-2004-01-13 Paolo Carlini <pcarlini@suse.de>
+ PR libstdc++/14783
+ * include/bits/stl_tree.h: Adjust initialization list order.
- * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
- (_Rope_rep_base): Inherit directly from the rope allocator;
- use rebinding instead of _Alloc_traits; pick up data member
- from _Rope_rep_alloc_base.
- (_Rope_alloc_base): Eliminate.
- (_Rope_base): Inherit directly from the rope allocator; use
- rebinding instead of _Alloc_traits; pick up data member from
- _Rope_alloc_base.
- (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
- rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
+2004-03-26 Benjamin Kosnik <bkoz@redhat.com>
-2004-01-13 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/13650
- * include/bits/basic_string.tcc (compare(size_type, size_type,
- const _CharT*, size_type)): Implement correctly the resolution
- of DR 5: basically, s is a char array, -not- a C string.
- * include/bits/basic_string.h: Tweak some comments.
- * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
- * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
-
-2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
-
- * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
- Solaris.
+ libstdc++ PR/13598
+ * config/locale/ieee_1003.1-2001/codecvt_specializations.h
+ (__enc_traits::_M_destroy): New.
+ (__enc_traits::~__enc_traits): Use it.
+ (__enc_traits::operator=): Use _M_destroy, _M_init.
+ (__enc_traits::__enc_traits): Same.
+
+2004-03-26 Petur Runolfsson <peturr02@ru.is>
+
+ * testsuite/ext/enc_filebuf/char/13598.cc: New.
+
+2004-03-25 Gawain Bolton <gp.bolton@computer.org>
+
+ * include/bits/stl_tree.h (_Rb_tree_impl): Add _Node_allocator
+ default argument in constructors.
+ (_Rb_tree::_M_empty_initialize): Remove.
+
+2004-03-25 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
+ * testsuite/23_containers/set/operators/1_neg.cc: Same.
+
+2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
+
+ * include/bits/cpp_type_traits.h: Changed __is_pod
+ completely. Now, it does not use any of the previous type_traits
+ to detect the pod types, and it also detects function pointers as
+ POD types.
+
+ * include/bits/stl_tree.h: Introduced a new class _Rb_tree_impl,
+ which encapsulates the internal implementation of an rb_tree. Made
+ the allocator a base class of this class instead of the rb_tree,
+ which was not conforming. This _Rb_tree_impl class is also
+ specialized on whether the _Compare parameter is a POD type or
+ not. If so, then it maintains the comparison function as a data
+ member, otherwise it makes the _Compare parameter a base class of
+ itself. Also, _M_key_compare is now a function instead of a data
+ member, so that the above trick can work properly. Delegated the
+ initialization of the other data members to this newly created
+ class. Also, now other member functions of rb_tree must refer to
+ _M_key_compare as _M_impl._M_key_compare(). The other data members
+ (*) can be referenced to as _M_impl.(*), where
+ (*) includes _M_header, and _M_node_count.
+
+2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
+
+ * include/bits/stl_list.h: Created a _List_impl class and made it
+ derive from the allocator, instead of the list deriving from the
+ allocator class, which was not conformant. Changed all references
+ from this->_M_node to this->_M_impl._M_node * bits/list.tcc: Same
+ as above (changed all references to the concerned variables).
+
+2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
+
+ * include/bits/stl_deque.h: Created a _Deque_impl class and made
+ it derive from the allocator, instead of the deque deriving from
+ the allocator class, which was not conformant. Changed all
+ references to the _M_start, _M_finish, _M_map, and _M_map_size to
+ _M_impl.*.
+ (_Deque_base<_Tp,_Alloc>::~_Deque_base()): Added this->
+ qualification in 2 places where it was missing.
+ (_Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t)): Same as
+ above.
+ * include/bits/deque.tcc: Same as above (changed all references to
+ the concerned variables).
+
+2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
+
+ * include/bits/stl_vector.h: Created a _Vector_impl class and made
+ it derive from the allocator, instead of the _Vector_base class,
+ deriving from the allocator which was not conformant. Changed all
+ references to the _M_start, _M_finish, and _M_end_of_storage to
+ _M_impl.*.
+ * include/bits/vector.tcc: Same as above (changed all references
+ to the concerned variables).
+
+2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
+
+ * testsuite/23_containers/deque/cons/clear_allocator.cc: New.
+ * testsuite/23_containers/list/cons/clear_allocator.cc: New.
+ * testsuite/23_containers/vector/cons/clear_allocator.cc: New.
+
+2004-03-23 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_facets.h: Tweaks for 80 column.
+ (__numpunct_cache::_M_cache): Move to locale_facets.tcc.
+ (__moneypunct_cache::_M_cache): Same.
+ (num_get): Don't inherit from __num_base.
+ (num_put): Same.
+ (money_get): Don't inherit from money_base.
+ (money_put): Same.
+ (__timepunct::_M_am_pm_format): New.
+ (time_get::_M_extract_num): Return iterator, use ios_base as argument.
+ (time_get::_M_extract_name): Same.
+ (time_get::_M_extract_via_format): Same.
+ * include/bits/locale_facets.tcc: Tweaks for 80 column.
+ Use _M_getloc instead of getloc.
+ * testsuite/22_locale/money_put/put/char/9780-3.cc: New.
+ * testsuite/22_locale/num_put/put/char/9780-2.cc: New.
+ * testsuite/22_locale/time_put/put/char/9780-1.cc: New.
+
+2004-03-22 Hans-Peter Nilsson <hp@axis.com>
+
+ PR target/14676
+ * config/cpu/cris/atomicity.h (__atomic_add): Remove "static
+ inline" and attribute-unused. Qualify parameter __mem with
+ "volatile".
+ (__exchange_and_add): Ditto. Add back memory clobber to asm.
+
+2004-03-19 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
+
+ PR libstdc++/14647
+ * include/backward/bvector.h (bit_vector): Allocator is in std
+ namespace.
+
+2004-03-20 Paolo Carlini <pcarlini@suse.de>
+
+ * include/std/std_valarray.h: Document DR389 [Ready].
+ * docs/html/ext/howto.html: Add an entry for DR389.
+
+2004-03-19 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/14648
+ * include/ext/ropeimpl.h (rope<>::_S_apply_to_pieces): Fix
+ memory allocation/deallocation calls.
+ * testsuite/ext/14648.cc: New.
+
+2004-03-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ Revert.
+ * configure.ac (AC_PREREQ): Use 2.57.
+ (AM_INIT_AUTOMAKE): Remove -Wno-override.
+
+2004-03-17 David Billinghurst <David.Billinghurst@riotinto.com>
+
+ PR bootstrap/14207
+ Revert patch of 2004-02-17, as it breaks mips-sgi-irix6.5 -o32
+ (Almost certainly a target issue)
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
+ num_get<>::_M_extract_int, money_get<>::do_get): Simplify
+ grouping fidelity conditional.
+
+2004-03-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ Revert dg-require-iconv changes.
+ * testsuite/22_locale/collate/compare/wchar_t/2.cc: Revert.
+ * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same.
+ * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Same.
+ * testsuite/22_locale/collate/hash/wchar_t/2.cc: Same.
+ * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Same.
+ * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same.
+ * testsuite/22_locale/collate/transform/wchar_t/2.cc: Same.
+ * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Same.
+ * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
-2004-01-12 Paolo Carlini <pcarlini@suse.de>
+2004-03-16 Benjamin Kosnik <bkoz@redhat.com>
- * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
- Use try_mkfifo.
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
- Likewise.
+ * Merge from mainline.
-2004-01-12 Paolo Carlini <pcarlini@suse.de>
+2004-03-16 Benjamin Kosnik <bkoz@redhat.com>
- * include/bits/locale_facets.h (struct __numpunct_cache):
- Add members _M_truename_len and _M_falsename_len, caching
- the lengths of _M_truename and _M_falsename.
- (__numpunct_cache<>::_M_cache): Assign the latter.
- * include/bits/locale_facets.tcc (num_get::do_get(bool&),
- num_put::do_put(bool)): Use the new members, thus avoiding
- computing string lengths again and again.
- * config/locale/generic/numeric_members.cc
- (numpunct<>::_M_initialize_numpunct): Assign the new members.
- * config/locale/gnu/numeric_members.cc
- (numpunct<>::_M_initialize_numpunct): Likewise.
+ * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Default setting is
+ new_allocator for all hosts.
+ * configure: Regenerate.
-2004-01-12 Mark Mitchell <mark@codesourcery.com>
+2004-03-16 Paolo Carlini <pcarlini@suse.de>
- * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
- * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
- it.
- * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
- and remove Cygwin XFAIL.
- * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
- * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
- * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
- * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
- Likewise.
- * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
- * testsuite/27_io/objects/char/7.cc: Likewise.
- * testsuite/27_io/objects/char/9661-1.cc: Likewise.
- * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
- * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
+ * testsuite/22_locale/num_put/put/char/4.cc: Fix for 64-bit pointers.
+ * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
-2004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
+2004-03-15 Paolo Carlini <pcarlini@suse.de>
- * include/std/std_complex.h (std::complex<>::real): Return a
- reference. Add non-const overload.
- (std::complex<>::real): Likewise.
- (std::real): Likewise.
- (std::imag): Likewise.
- (std::operator+): Tidy.
- (std::operator-): Likewise.
- (std::operator*): Likewise.
- (std::operator/): Likewise.
- (std::operator>>): Likewise.
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ Adjust the logic underlying the parsing of symbol to deal
+ correctly with an optional sign component (i.e., when either
+ negative_sign or positive_sign is empty)
+ * testsuite/22_locale/money_get/get/char/19.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/19.cc: New.
-2004-01-11 Paolo Carlini <pcarlini@suse.de>
+2004-03-15 Paolo Carlini <pcarlini@suse.de>
- PR libstdc++/13582
- * include/bits/fstream.tcc (imbue): Exploit the external
- buffer to imbue 'on the fly' a new locale and convert its
- remainder with the new codecvt facet.
- (underflow): Tweak slightly to deal with this special case.
- * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
- * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
- * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
-
-2004-01-10 Paolo Carlini <pcarlini@suse.de>
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ Do not accept an incomplete currency symbol.
+ * testsuite/22_locale/money_get/get/char/18.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/18.cc: New.
- * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
- Import Revision 28.
+2004-03-13 Benjamin Kosnik <bkoz@redhat.com>
-2004-01-10 Paolo Carlini <pcarlini@suse.de>
+ * config/allocator: New.
+ * config/allocator/bitmap_allocator_base.h: New.
+ * config/allocator/malloc_allocator_base.h: New.
+ * config/allocator/mt_allocator_base.h: New.
+ * config/allocator/new_allocator_base.h: New.
+ * include/bits/allocator.h: Include c++allocator.h.
+ * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New.
+ * aclocal.m4: Regenerate.
+ * configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR.
+ * configure: Regenerate.
+ * include/Makefile.am (host_headers_extra): Add c++allocator.h.
+ * include/Makefile.in: Regenerate.
+ * docs/html/configopts.html: Add enable-libstdcxx-allocator.
- PR libstdc++/13630
- * include/bits/locale_classes.h (class locale): Fix category
- typedef.
- * testsuite/22_locale/locale/13630.cc: Add.
+2004-03-12 Benjamin Kosnik <bkoz@redhat.com>
-2004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+ * include/bits/allocator.h: Revert.
- * include/bits/locale_facets.h: Make a name really dependent. This
- will be needed when Core Issue 224 is implemented.
+2004-03-12 Paolo Carlini <pcarlini@suse.de>
-2004-01-09 Paolo Carlini <pcarlini@suse.de>
+ * docs/html/ext/howto.html: Add entry for DR 253 [Ready].
+ * include/bits/gslice_array.h: Add comment about DR 253.
+ * include/bits/indirect_array.h: Likewise.
+ * include/bits/mask_array.h: Likewise.
+ * include/bits/slice_array.h: Likewise.
- * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
- * testsuite/performance/allocator_thread.cc: Likewise.
+2004-03-12 Benjamin Kosnik <bkoz@redhat.com>
-2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
+ * testsuite/20_util/allocator/14176.cc: New.
+ * include/ext/mt_allocator.h: Formatting fixes.
- * crossconfig.m4: Add LFS, io bits to linux cross config.
- * acconfig.h: Remove obsolete bits, reorder.
- * config.h.in: Regenerate.
- * aclocal.m4: Same.
- * configure: Same.
-
-2004-01-07 Gawain Bolton <gp.bolton@computer.org>
+2004-03-11 Dhruv Matani <dhruvbird@HotPOP.com>
- * include/bits/stl_list.h:
- * include/bits/list.tc:
- * src/list.cc:
- Performance enhancements for destructor, push_front(),
- push_back(), pop_front(), pop_back(), sort()
- Eliminated static_casts where possible.
- Moved code out of header files into new src/list.cc
- implementation file for library where possible.
- Remove inheritance from iterator class and create separate
- classes for non-constant and constant iterators.
- * include/bits/stl_tree.h (_Rb_tree class):
- * src/tree.cc:
- Only erase contents in destructor.
- Eliminate unnecessary initialization in assignment operator.
- Optimize for the nominal case by not checking whether
- container is empty in clear().
- Re-order test in _M_insert() to improve performance.
- Move initialization of new node's left & right pointers to
- src/tree.cc to where new node's colour is initialized
- and to reduce the amount of inline code.
- Use _M_leftmost() and _M_end() to improve readability where
- appropriate.
- Create separate classes for non-constant and constant
- iterators to clarify code, avoid extra template parameters and
- casting away constness.
-
-2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
+ * include/Makefile.am (ext_headers): Add
+ ${ext_srcdir}/bitmap_allocator.h .
+ * include/Makefile.in: Regenerate.
+ * docs/html/ext/ballocator_doc.txt: New file.
+ * include/ext/bitmap_allocator.h: New file.
+ * testsuite/performance/20_util/allocator/list_sort_search.cc: Add
+ test.
+ * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
+ * testsuite/performance/20_util/allocator/producer_consumer.cc: Add
+ test for the bitmap_allocator<>.
+ * testsuite/performance/20_util/allocator/insert.cc: Likewise.
+ * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
+ * testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
- * src/Makefile.am (sources): Add list.cc, tree.cc.
- * src/stl_tree.cc: Move to...
- * src/tree.cc: ...here.
- * src/list.cc: Add.
- * config/linker-map.gnu: Tweaks.
- * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
- * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
+2004-03-11 Paolo Carlini <pcarlini@suse.de>
- * bits/stl_vector.h: Column wrap comments.
-
-2004-01-07 Loren J. Rittle <ljrittle@acm.org>
+ * include/std/std_complex.h (pow(const complex&, const _Tp&),
+ pow(const _Tp&, const complex&), pow(const complex&,
+ const complex&)): Fully qualify with std:: a few calls.
+ * testsuite/26_numerics/complex/13450.cc: Minor tweak.
- (re-open) PR libstdc++/12658
- * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
- (locale::global): Likewise.
+2004-03-11 Steven Bosscher <stevenb@suse.de>
-2004-01-07 Paolo Carlini <pcarlini@suse.de>
+ PR libstdc++/11706
+ * include/c_std/cmath.tcc (__cmath_power): Define inline.
- * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
- Remove redundant #include.
- * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
- * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
- re-enable normal testing.
- * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
- #include.
- * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
- * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
- Likewise.
- * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
- Likewise.
- * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
- Likewise.
- * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
- Likewise.
- * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
- Likewise.
- * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
- Likewise.
- * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
- Likewise.
- * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
- More properly, #include <locale>.
- * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
- Remove redundant #include.
- * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
- * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
- redundant DejaGnu directive.
- * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
- redundant #include.
+2004-03-10 Kelley Cook <kcook@gcc.gnu.org>
-2004-01-06 Benjamin Kosnik <bkoz@redhat.com>
- Stefan Olsson <stefan@snon.net>
+ * configure.ac: Bump AC_PREREQ to 2.59.
- * scripts/check_performance: Use -pthread.
- * testsuite/performance/allocator.cc: Tweaks, add list.
- * testsuite/performance/allocator_thread.cc: New.
+2004-03-10 Paolo Carlini <pcarlini@suse.de>
-2004-01-06 Jerry Quinn <jlquinn@optonline.net>
+ * testsuite/26_numerics/valarray_subset_assignment.cc: Fix typos.
- * include/bits/locale_facets.h: Document public classes and
- functions.
- * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
- Add comment.
+2004-03-10 Paul Kienzle <pkienzle@nist.gov>
+ Paolo Carlini <pcarlini@suse.de>
-2004-01-06 Paolo Carlini <pcarlini@suse.de>
+ PR libstdc++/13450
+ * include/std/std_complex.h (pow(const complex&, const _Tp&),
+ pow(const _Tp&, const complex&)): Use cmath pow only when safe.
+ * testsuite/26_numerics/complex/13450.cc: New.
- * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
- Remove redundant #includes.
- * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
- Likewise.
- * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
- Likewise.
- * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
- * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
- * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
- * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
- * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
- * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
- * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
- * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
- * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
- * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
- * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
- * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
- * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
- * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
- * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
- Likewise.
- * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
- Likewise.
- * testsuite/27_io/basic_istream/readsome/char/8258.cc:
- Likewise.
- * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
- Likewise.
- * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
- Likewise.
- * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
- * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
- * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
+ * testsuite/26_numerics/cmath/overloads.C: Rename to overloads.cc.
+ * testsuite/26_numerics/complex/pow.C: Rename to pow.cc and fix.
-2004-01-04 Paolo Carlini <pcarlini@suse.de>
+2004-03-10 Jerry Quinn <jlquinn@optonline.net>
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
- Remove redundant #includes.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
- Likewise.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
- Likewise.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
- Likewise.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
- Likewise.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
- Likewise.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
- Likewise.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
- Likewise.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
- Likewise.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
- Likewise.
- * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
- Likewise.
- * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
- Likewise.
- * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
- Likewise.
+ PR libstdc++/3247
+ * include/bits/gslice_array.h (gslice_array()): Make public.
+ (operator=(gslice_array)): Make public. Implement.
+ * include/bits/indirect_array.h (indirect_array()): Make public.
+ * include/bits/mask_array.h (mask_array()): Make public.
+ (operator=(mask_array)): Make public. Implement.
+ * include/bits/valarray_array.tcc (__valarray_copy):
+ Comment. Add versions for gslice_array and mask_array.
+ * testsuite/26_numerics/valarray_subset_assignment.cc: New test.
-2004-01-04 Mark Mitchell <mark@codesourcery.com>
+2004-03-09 Benjamin Kosnik <bkoz@redhat.com>
- PR c++/12226
- * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
- constructor.
- * testsuite/27_io/basic_fstream/4.cc: Likewise.
- * testsuite/27_io/basic_ifstream/4.cc: Likewise.
- * testsuite/27_io/basic_ios/4.cc: Likewise.
- * testsuite/27_io/basic_iostream/4.cc: Likewise.
- * testsuite/27_io/basic_istream/4.cc: Likewise.
- * testsuite/27_io/basic_istingstream/4.cc: Likewise.
- * testsuite/27_io/basic_ofstream/4.cc: Likewise.
- * testsuite/27_io/basic_ostream/4.cc: Likewise.
- * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
- * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
- * testsuite/27_io/basic_stringstream/4.cc: Likewise.
+ * testsuite/23_containers/deque/modifiers/swap.cc: Add in bits for
+ non-weak systems.
+ * testsuite/23_containers/vector/modifiers/swap.cc: Same.
+ * testsuite/23_containers/set/modifiers/swap.cc: Same.
+ * testsuite/23_containers/multiset/modifiers/swap.cc: Same.
+ * testsuite/23_containers/multimap/modifiers/swap.cc: Same.
+ * testsuite/23_containers/map/modifiers/swap.cc: Same.
+ * testsuite/23_containers/list/modifiers/swap.cc: Same.
-2004-01-04 Paolo Carlini <pcarlini@suse.de>
+ * testsuite/22_locale/locale/cons/12658_thread.cc: Catch exceptions.
- * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
- Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
- always use double underscored names.
- * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
- Likewise.
- * include/bits/locale_facets.h (struct __numpunct_cache):
- Dimension _M_atoms_out and _M_atoms_in one position smaller.
- (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out
- and _M_atoms_in.
+2004-03-08 Benjamin Kosnik <bkoz@redhat.com>
-2003-12-31 Paolo Carlini <pcarlini@suse.de>
+ PR c++/13658
+ * testsuite/23_containers/deque/modifiers/swap.cc: New.
+ * testsuite/23_containers/list/modifiers/swap.cc: New.
+ * testsuite/23_containers/map/modifiers/swap.cc: New.
+ * testsuite/23_containers/multimap/modifiers/swap.cc: New.
+ * testsuite/23_containers/multiset/modifiers/swap.cc: New.
+ * testsuite/23_containers/set/modifiers/swap.cc: New.
+ * testsuite/23_containers/vector/modifiers/swap.cc: New.
- * include/bits/locale_facets.tcc (num_get::_M_extract_int,
- num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
- _first_ look for thousands_sep, then for decimal_point and
- finally for digits.
- (num_get::_M_extract_float): After the decimal_point or
- 'e'/'E', decimal_point and thousands_sep just break out the
- parsing loop.
- * testsuite/22_locale/num_get/get/char/11.cc: Add tests.
- * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
+2004-03-08 Petur Runolfsson <peturr02@ru.is>
-2003-12-30 Paolo Carlini <pcarlini@suse.de>
+ PR libstdc++/12658
+ * testsuite/22_locale/locale/cons/12658_thread.cc: New.
- PR libstdc++/13369
- * include/bits/locale_facets.tcc (__verify_grouping):
- Fix to deal properly with __grouping_tmp.size() >
- __grouping.size().
- * testsuite/22_locale/num_get/get/char/13.cc: New.
- * testsuite/22_locale/num_get/get/wchar_t/13.cc: Ditto.
-
-2003-12-29 Jerry Quinn <jlquinn@optonline.net>
+2004-03-08 Paolo Carlini <pcarlini@suse.de>
- * include/bits/locale_facets.h (ctype.narrow,widen): Add cast.
+ * docs/html/ext/howto.html: Add entry for DR 103 [WP].
+ * include/bits/stl_multiset.h: Add comment about DR 103.
+ * include/bits/stl_set.h: Likewise.
-2003-12-29 Paolo Carlini <pcarlini@suse.de>
+2004-03-08 Paolo Carlini <pcarlini@suse.de>
- * acinclude.m4 (GLIBCXX_CHECK_LFS): Add -fno-exceptions
- to CXXFLAGS.
- * aclocal.m4: Regenerate.
- * configure: Likewise.
-
-2003-12-29 Mark Mitchell <mark@codesourcery.com>
-
- * acconfig.h: Add _GLIBCXX_USE_C99_MATH.
- * acinclude.m4 (GLIBCXX_ENABLE_C99): Define GLIBCXX_USE_C99_MATH.
- * configure.ac: Define HAVE_S_ISREG and HAVE_S_IFREG when
- targeting newlib.
- * aclocal.m4: Regenerated.
- * config.h.in: Likewise.
- * configure: Likewise.
- * Makefile.in: Likewise.
- * include/Makefile.in: Likewise.
- * libmath/Makefile.in: Likewise.
- * libsupc++/Makefile.in: Likewise.
- * testsuite/Makefile.in: Likewise.
- * src/Makefile.in: Likewise.
- * po/Makefile.in: Likewise.
- * include/c_std/std_cmath.h (_GLIBCXX_USE_C99): Replace with ...
- (_GLIBCXX_USE_C99_MATH): ... this.
-
- * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL for
- arm-none-elf.
- * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Likewise.
- * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Likewise.
- * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Likewise.
- * testsuite/27_io/basic_istream/readsome/char/6476-2.cc: Likewise.
- * testsuite/27_io/objects/char/9.cc: Likewise.
- * testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
-
-2003-12-28 Paolo Carlini <pcarlini@suse.de>
-
- * include/ext/pool_allocator.h (class __pool_alloc): Use
- operator new and operator delete.
-
-2003-12-24 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/cpu/i386/atomicity.h (__exchange_and_add): Fix output
- constraint.
-
- PR libstdc++/13480
- * config/cpu/i386/atomicity.h: Split up read-write memory operand.
-
-2003-12-23 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/ext/new_allocator.h (new_allocator): Proper allocator class.
- (__new_alloc): Delete.
- * include/ext/malloc_allocator.h (malloc_allocator): Same.
- (__malloc_alloc): Delete.
- * include/ext/mt_allocator.h: Same, but weakly.
- * include/ext/debug_allocator.h: Convert to the new style.
- * include/ext/pool_allocator.h: Use global new and delete directly.
- * include/backward/alloc.h: Don't inject malloc_allocator, or
- debug_allocator.
- * testsuite/ext/allocators.cc: Minimal fixups for usage of new
- classes. Comment out tests with __pool_alloc for now.
- * testsuite/performance/allocator.cc: Same.
-
-2003-12-22 Matt Austern <austern@apple.com>
-
- * include/bits/stl_bvector.h (_Bvector_alloc_base): Eliminate.
- (_Bvector_base): Inherit directly from word allocator.
- * include/bits/stl_tree.h (_Rb_tree_alloc_base): Eliminate.
- (_Rb_tree_base): Eliminate.
- (_Rb_tree): Inherit directly from node allocator.
- * include/ext/slist (_Alist_alloc_base): Eliminate.
- (_Slist_base): Inherit direcly from node allocator.
-
-2003-12-22 Benjamin Kosnik <bkoz@redhat.com>
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ The value _space_ indicates that at least one space is required
+ at that position.
+ * testsuite/22_locale/money_get/get/char/17.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/17.cc: New.
- * testsuite/18_support/numeric_limits.cc: Add _GLIBCXX_ASSERT to
- dg-options in testcases that use VERIFY.
- * testsuite/23_containers/vector/invalidation/1.cc: Same.
- * testsuite/23_containers/vector/invalidation/2.cc: Same.
- * testsuite/23_containers/vector/invalidation/3.cc: Same.
- * testsuite/23_containers/vector/invalidation/4.cc: Same.
- * testsuite/23_containers/vector/resize/1.cc: Same.
- * testsuite/26_numerics/complex_value.cc: Same.
- * testsuite/27_io/ios_base/storage/1.cc: Same.
- * testsuite/27_io/ios_base/storage/2.cc: Same.
- * testsuite/27_io/ios_base/storage/3.cc: Same.
- * testsuite/27_io/manipulators/standard/char/2.cc: Same.
- * testsuite/backward/11460.cc: Same.
- * testsuite/backward/strstream_members.cc: Same.
-
- * include/ext/hash_set (class hash_multiset): Fix typo.
-
-2003-12-22 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/27_io/objects/char/5.cc: Don't use stdc++.h.gch.
- * testsuite/27_io/objects/wchar_t/5.cc: Same.
- * docs/html/test.html: Add docs for constructing test files that
- don't use stdc++.h.gch.
- * scripts/testsuite_flags.in (PCHFLAGS): Move to --cxxpchflags.
- * testsuite/libstdc++-dg/normal.exp: Compute DEFAULT_CXXFLAGS
- differently.
-
- * include/bits/ios_base.h (ios_base::Init::_S_initialized): Remove.
- * src/ios_init.cc: Same.
- * config/linker-map.gnu: Same.
- * testsuite/27_io/ios_base/cons/copy_neg.cc: Adjust line numbers.
- * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
-
-2003-12-22 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR libstdc++/13462
- * include/bits/stl_multiset.h (__gnu_norm::multiset): Define pointer
- as allocator's pointer, likewise for reference, const_pointer, and
- const_reference.
- * include/bits/stl_set.h (__gnu_norm::set): Likewise.
- * include/ext/hash_set (__gnu_ext::hash_set): Likewise.
- (__gnu_ext::hash_multiset): Likewise.
-
-2003-12-22 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (num_get::_M_extract_int,
- num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
- first look for decimal_point and thousands_sep, when parsing
- sign, leading zeros (and 0, Ox, 0X for integer types) too.
- * testsuite/22_locale/num_get/get/char/12.cc: New.
- * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
-
- * testsuite/22_locale/num_get/get/char/11.cc: Add a comment.
- * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
-
-2003-12-20 Jason Merrill <jason@redhat.com>
+ * testsuite/22_locale/money_get/get/char/7.cc: Minor tweaks.
+ * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
- * config/cpu/powerpc/atomicity.h: Fix oversight in previous
- change.
+ * include/bits/locale_facets.tcc (money_get<>::do_get(long_double&)):
+ Remove redundant conditional on __str.size().
-2003-12-20 Jerry Quinn <jlquinn@optonline.net>
+2004-03-08 Benjamin Kosnik <bkoz@redhat.com>
- * docs/doxygen/TODO: Update.
- * include/bits/locale_classes.h (locale, facet, id): Document.
- * include/bits/locale_facets.tcc (has_facet, use_facet): Document.
+ * include/bits/allocator.h: Switch defaults to mt_alloc.
-2003-12-19 Jason Merrill <jason@redhat.com>
+2004-03-06 Benjamin Kosnik <bkoz@redhat.com>
- * config/cpu/cris/atomicity.h: Remove memory clobbers.
- * config/cpu/mips/atomicity.h: Likewise.
- * config/cpu/i486/atomicity.h: Remove memory clobbers.
- Split up read-write memory operand.
- * config/cpu/m68k/atomicity.h: Likewise.
- * config/cpu/powerpc/atomicity.h: Make memory I/O explicit.
- * config/cpu/s390/atomicity.h: Likewise.
- * config/cpu/sparc/atomicity.h: Likewise.
+ * include/ext/mt_allocator.h (_S_initialize): If
+ !__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex.
-2003-12-20 Carlo Wood <carlo@alinoe.com>
+2004-03-06 Benjamin Kosnik <bkoz@redhat.com>
- * bits/demangle.h
- namespace __gnu_cxx::demangler
- (session<Allocator>::decode_encoding): Put the postfix
- of the return type of (member) functions after the function
- instead of after the return type.
+ PR libstdc++/12658
+ * src/locale_init.cc (locale::locale): Lock critical regions with
+ external mutexes.
+ (locale::global): Same.
+ * include/bits/concurrence.h (__glibcxx_mutex_define_initialized):
+ Add in once bits for cases without __GTHREAD_MUTEX_INIT.
+ (__glibcxx_mutex_lock): Same.
-2003-12-19 Jerry Quinn <jlquinn@optonline.net>
+ * config/cpu/generic/atomicity.h: Remove
+ _GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h.
+ * src/misc-inst.cc: Move all locking bits out of this file.
- * include/bits/locale_facet.h
- (__ctype_abstract_base,ctype<charT>,ctype<char>,ctype<wchar_t>):
- Document.
+ * config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK.
+ * src/misc-inst.cc: Same.
+ * config/cpu/hppa/atomicity.h: Same.
-2003-12-19 Paolo Carlini <pcarlini@suse.de>
+ * config/linker-map.gnu: Remove types in the signature of atomic
+ exports, as they may vary.
- * include/bits/locale_facets.tcc (num_get::_M_extract_int,
- num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
- first look for decimal_point and thousands_sep.
- * testsuite/22_locale/num_get/get/char/11.cc: New.
- * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
+2004-03-06 Paolo Carlini <pcarlini@suse.de>
-2003-12-19 Paolo Carlini <pcarlini@suse.de>
+ * include/bits/locale_facets.tcc: Tweak the comment preceding
+ has_facet: doesn't throw.
- * include/bits/locale_facets.tcc (num_get::_M_extract_float):
- When __found_sci becomes true stop eating thousands separators
- and the decimal radix separator.
- * testsuite/22_locale/num_get/get/char/9.cc: New.
- * testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
-
- * config/locale/generic/c_locale.cc (__convert_to_v): Don't
- check that *__sanity == '\0': parsing may stop earlier, still
- be successful.
- * config/locale/gnu/c_locale.cc: Likewise.
- * testsuite/22_locale/num_get/get/char/10.cc: New.
- * testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
- Tweak in one place accordingly.
+2004-03-06 Paolo Carlini <pcarlini@suse.de>
- * testsuite/22_locale/money_get/get/char/1.cc: Fix typo.
+ * testsuite/22_locale/money_get/get/char/1.cc: Clean up.
+ * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
+ * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
+ * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
* testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
+
+2004-03-06 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
+ num_get<>::_M_extract_int, num_get<>::do_get(bool&),
+ __pad<>::_S_pad): Prefer plain operator== to traits::eq().
+ * testsuite/testsuite_character.h (struct __gnu_test::character):
+ Provide operator==.
+ * testsuite/testsuite_hooks.h (struct __gnu_test::pod_char):
+ Likewise.
-2003-12-18 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/stl_list.h: Formatting tweaks.
- * include/bits/list.tcc: Same.
-
-2003-12-18 Matt Austern <austern@apple.com>
-
- * include/bits/demangle.h: Fix allocator type correctness,
- i.e. make sure that when we instantiate a container with a value
- type and an allocator, the allocator's value type matches the
- container's.
- * include/bits/stl_deque.h (_Deque_alloc_base): Eliminate.
- (_Deque_base): inherit directly from the deque's allocator. Use
- rebinding instead of _Alloc_traits. Pick up data members from
- _Deque_alloc_base.
- * include/bits/stl_list.h (_List_alloc_base): Eliminate.
- (_List_base): Inherit directly from the list's allocator. Use
- rebinding instead of _Alloc_traits. Pick up data members from
- _List_alloc_base.
- * include/bits/stl_vector.h (_Vector_alloc_base): Eliminate
- (_Vector_base): Inherit directly from the vector's allocator. Use
- rebinding instead of _Alloc_traits. Pick up data members from
- _Vector_alloc_base.
- * include/ext/hashtable.h: Fix allocator type correctness (the
- vector of buckets must be passed an allocator for objects of
- type _Node*). Use rebinding instead of _Alloc_traits.
-
-2003-12-17 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
- Use narrow to get from __format[__i] a char __c representing a
- formatting code, don't use it to compare *__beg to __format[__i].
- * testsuite/22_locale/time_get/get_date/wchar_t/4.cc: New.
-
-2003-12-17 Paolo Carlini <pcarlini@suse.de>
-
- * testsuite/performance/container_benchmark.cc: Tweak outputs.
-
- * testsuite/performance/list_create_fill_sort.cc: Shrink a
- bit some outputs.
-
- * testsuite/testsuite_performance.h: Widen a few output fields.
-
- * testsuite/performance/ifstream_extract_int.cc: New.
-
-2003-12-16 Phil Edwards <phil@codesourcery.com>
-
- * configure.ac (AM_INIT_AUTOMAKE): Don't warn about GNU Make.
- * configure: Regenerated.
- * Makefile.am (check-%): New catch-all forwarding target.
- * Makefile.in: Regenerated.
-
-2003-12-16 Paolo Carlini <pcarlini@suse.de>
-
- * testsuite/performance/container_benchmark.cc: New, a
- benchmark developed by Bjarne Stroustrup and Alexander
- Stepanov and made available with no restrictions.
+2004-03-05 Paolo Carlini <pcarlini@suse.de>
- * testsuite/testsuite_performance.h (report_header): New,
- useful to produce header lines in the reports.
+ * testsuite/27_io/fpos/14320-2.cc: Remove xfail.
-2003-12-16 Jonathan Wakely <redi@gcc.gnu.org>
+2004-03-04 Benjamin Kosnik <bkoz@redhat.com>
- * docs/html/21_strings/howto.html: Document shrink-to-fit reserve().
- * docs/html/faq/index.html: Reducing vector's capacity() to size().
- * docs/html/documentation.html, docs/html/faq/index.txt: Regenerate.
+ * testsuite/23_containers/multiset/insert/1.cc: Test result string.
-2003-12-16 Paolo Carlini <pcarlini@suse.de>
+ * testsuite/23_containers/bitset/invalidation/1.cc: Main always
+ returns 0.
+ * testsuite/23_containers/deque/invalidation/4.cc: Same.
+ * testsuite/23_containers/list/invalidation/1.cc: Same.
+ * testsuite/23_containers/list/invalidation/2.cc: Same.
+ * testsuite/23_containers/list/invalidation/3.cc: Same.
+ * testsuite/23_containers/list/invalidation/4.cc: Same.
+ * testsuite/23_containers/map/invalidation/2.cc: Same.
+ * testsuite/23_containers/multimap/invalidation/1.cc: Same.
+ * testsuite/23_containers/multimap/invalidation/2.cc: Same.
+ * testsuite/23_containers/multiset/invalidation/1.cc: Same.
+ * testsuite/23_containers/multiset/invalidation/2.cc: Same.
+ * testsuite/23_containers/set/invalidation/1.cc: Same.
+ * testsuite/23_containers/set/invalidation/2.cc: Same.
+ * testsuite/23_containers/vector/invalidation/1.cc: Same.
+ * testsuite/23_containers/vector/invalidation/2.cc: Same.
+ * testsuite/23_containers/vector/invalidation/3.cc: Same.
+ * testsuite/23_containers/vector/invalidation/4.cc: Same.
- * testsuite/performance/narrow_widen_char.cc: Tweak the
- number of iterations for each test.
- * testsuite/performance/narrow_widen_wchar_t.cc: Add a
- missing clear_counters.
+2004-03-04 Paolo Carlini <pcarlini@suse.de>
+
+ * scripts/testsuite_flags.in: Add "-D_GLIBCXX_ASSERT" to
+ CXXFLAGS_save.
+ * testsuite/lib/libstdc++.exp: Don't add it conditionally to
+ DEFAULT_CXXFLAGS.
+ * testsuite/18_support/numeric_limits.cc: Remove "-D_GLIBCXX_ASSERT"
+ from the dg-options.
+ * testsuite/23_containers/vector/invalidation/1.cc: Likewise.
+ * testsuite/23_containers/vector/invalidation/2.cc: Likewise.
+ * testsuite/23_containers/vector/invalidation/3.cc: Likewise.
+ * testsuite/23_containers/vector/invalidation/4.cc: Likewise.
+ * testsuite/23_containers/vector/resize/1.cc: Likewise.
+ * testsuite/26_numerics/complex_value.cc: Likewise.
+ * testsuite/27_io/ios_base/storage/1.cc: Likewise.
+ * testsuite/27_io/ios_base/storage/2.cc: Likewise.
+ * testsuite/27_io/ios_base/storage/3.cc: Likewise.
+ * testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
+ * testsuite/27_io/objects/char/5.cc: Likewise.
+ * testsuite/27_io/objects/wchar_t/5.cc: Likewise.
+ * testsuite/backward/11460.cc: Likewise.
+ * testsuite/thread/pthread7-rope.cc: Likewise.
-2003-12-16 Paolo Carlini <pcarlini@suse.de>
+ * testsuite/21_strings/basic_string/compare/char/1.cc: Add
+ missing test variable.
+ * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Add
+ missing test variable.
- PR libstdc++/11723
- * include/bits/locale_facets.h: Add _M_bit and _M_wmask,
- used to speed up the computation of ctype::do_is.
- * config/locale/generic/ctype_members.cc
- (_M_initialize_ctype): Fill _M_bit and _M_wmask.
- (ctype::do_is): Use _M_bit and _M_wmask.
- * config/locale/gnu/ctype_members.cc: Likewise.
- * testsuite/performance/is_wchar_t.cc: New.
+2004-03-04 Benjamin Kosnik <bkoz@redhat.com>
- * testsuite/performance/narrow_widen_wchar_t.cc: Tweak
- string literal (incorrect citation ;)
+ * testsuite/20_util/allocator/1.cc: Provide explicit
+ instantiations for non-weak systems.
+ * testsuite/20_util/binders.cc: Same.
+ * testsuite/20_util/allocator/8230.cc: Same.
+ * testsuite/20_util/allocator/10378.cc: Same.
+ * testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
+ * testsuite/22_locale/ctype/is/char/2.cc: Same.
+ * testsuite/thread/pthread7-rope.cc: Same.
+ * testsuite/thread/pthread6.cc: Same.
+ * testsuite/thread/pthread5.cc: Same.
+ * testsuite/thread/pthread4.cc: Same.
+ * testsuite/thread/pthread1.cc: Same.
+ * testsuite/ext/rope.cc: Same.
+ * testsuite/ext/hash_set.cc: Same.
+ * testsuite/ext/hash_map.cc: Same.
+ * testsuite/ext/concept_checks.cc: Same.
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Same.
+ * testsuite/25_algorithms/unique/2.cc: Same.
+ * testsuite/25_algorithms/unique/1.cc: Same.
+ * testsuite/25_algorithms/rotate.cc: Same.
+ * testsuite/25_algorithms/min_max.cc: Same.
+ * testsuite/25_algorithms/equal.cc: Same.
+ * testsuite/24_iterators/rel_ops.cc: Same.
+ * testsuite/24_iterators/iterator.cc: Same.
+ * testsuite/24_iterators/insert_iterator.cc: Same.
+ * testsuite/24_iterators/front_insert_iterator.cc: Same.
+ * testsuite/24_iterators/back_insert_iterator.cc: Same.
+ * testsuite/23_containers/vector/resize/1.cc: Same.
+ * testsuite/23_containers/vector/modifiers/2.cc: Same.
+ * testsuite/23_containers/vector/modifiers/1.cc: Same.
+ * testsuite/23_containers/vector/invalidation/4.cc: Same.
+ * testsuite/23_containers/vector/invalidation/3.cc: Same.
+ * testsuite/23_containers/vector/invalidation/2.cc: Same.
+ * testsuite/23_containers/vector/invalidation/1.cc: Same.
+ * testsuite/23_containers/vector/element_access/1.cc: Same.
+ * testsuite/23_containers/vector/cons/6513.cc: Same.
+ * testsuite/23_containers/vector/cons/3.cc: Same.
+ * testsuite/23_containers/vector/cons/2.cc: Same.
+ * testsuite/23_containers/vector/cons/1.cc: Same.
+ * testsuite/23_containers/vector/capacity/8230.cc: Same.
+ * testsuite/23_containers/vector/capacity/1.cc: Same.
+ * testsuite/23_containers/vector/bool/6886.cc: Same.
+ * testsuite/23_containers/stack/members/7158.cc: Same.
+ * testsuite/23_containers/set/invalidation/2.cc: Same.
+ * testsuite/23_containers/set/invalidation/1.cc: Same.
+ * testsuite/23_containers/queue/members/7157.cc: Same.
+ * testsuite/23_containers/priority_queue/members/7161.cc: Same.
+ * testsuite/23_containers/multiset/invalidation/2.cc: Same.
+ * testsuite/23_containers/multiset/invalidation/2.cc: Same.
+ * testsuite/23_containers/multiset/insert/1.cc: Same.
+ * testsuite/23_containers/multimap/invalidation/2.cc: Same.
+ * testsuite/23_containers/multimap/invalidation/2.cc: Same.
+ * testsuite/23_containers/map/operators/1.cc: Same.
+ * testsuite/23_containers/map/invalidation/2.cc: Same.
+ * testsuite/23_containers/map/invalidation/1.cc: Same.
+ * testsuite/23_containers/map/insert/1.cc: Same.
+ * testsuite/23_containers/list/operators/4.cc: Same.
+ * testsuite/23_containers/list/operators/3.cc: Same.
+ * testsuite/23_containers/list/operators/2.cc: Same.
+ * testsuite/23_containers/list/operators/1.cc: Same.
+ * testsuite/23_containers/list/modifiers/3.cc: Same.
+ * testsuite/23_containers/list/modifiers/2.cc: Same.
+ * testsuite/23_containers/list/modifiers/1.cc: Same.
+ * testsuite/23_containers/list/invalidation/4.cc: Same.
+ * testsuite/23_containers/list/invalidation/3.cc: Same.
+ * testsuite/23_containers/list/invalidation/2.cc: Same.
+ * testsuite/23_containers/list/invalidation/1.cc: Same.
+ * testsuite/23_containers/list/cons/9.cc: Same.
+ * testsuite/23_containers/list/cons/8.cc: Same.
+ * testsuite/23_containers/list/cons/7.cc: Same.
+ * testsuite/23_containers/list/cons/6.cc: Same.
+ * testsuite/23_containers/list/cons/5.cc: Same.
+ * testsuite/23_containers/list/cons/4.cc: Same.
+ * testsuite/23_containers/list/cons/3.cc: Same.
+ * testsuite/23_containers/list/cons/2.cc: Same.
+ * testsuite/23_containers/list/cons/1.cc: Same.
+ * testsuite/23_containers/list/capacity/1.cc: Same.
+ * testsuite/23_containers/deque/operators/1.cc: Same.
+ * testsuite/23_containers/deque/invalidation/4.cc: Same.
+ * testsuite/23_containers/deque/invalidation/3.cc: Same.
+ * testsuite/23_containers/deque/invalidation/2.cc: Same.
+ * testsuite/23_containers/deque/invalidation/1.cc: Same.
+ * testsuite/23_containers/deque/cons/2.cc: Same.
+ * testsuite/23_containers/deque/cons/1.cc: Same.
+
+ * src/allocator.cc: Add char, wchar_t instantiations
+ to match extern template declarations in memory.h.
+
+2004-03-03 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_put<>::_M_insert):
+ Fix warning regression.
+
+2004-03-03 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_put<>::_M_insert):
+ Deal properly with empty __digits and negative frac_digits,
+ clean-up a bit.
+
+2004-03-03 Jonathan Wakely <redi@gcc.gnu.org>
- * include/bits/locale_facets.h: Minor tweaks, const
- correctness, unsigned -> size_t.
+ * docs/html/documentation.html: Regenerate.
-2003-12-16 Jerry Quinn <jlquinn@optonline.net>
+2004-03-02 Paolo Carlini <pcarlini@suse.de>
- * include/bits/locale_facets.h (widen, narrow): Uncomment the
- intended code.
+ PR libstdc++/14320
+ * include/bits/postypes.h (class streamoff): Remove, now
+ streamoff is just typedef a 64 bit signed integer type.
+ (class fpos): Tweak consistently.
+ * testsuite/27_io/fpos/14320-1.cc: New.
+ * testsuite/27_io/fpos/14320-2.cc: New.
+ * testsuite/27_io/fpos/14320-3.cc: New.
+ * testsuite/27_io/fpos/14320-4.cc: New.
+ * testsuite/27_io/fpos/14320-5.cc: New.
+ * testsuite/27_io/fpos/mbstate_t/4_neg.cc: xfail for now.
-2003-12-15 Jerry Quinn <jlquinn@optonline.net>
+2004-03-02 Paolo Carlini <pcarlini@suse.de>
- * config/os/aix/ctype_noninline.h,
- config/os/bsd/freebsd/ctype_noninline.h,
- config/os/bsd/netbsd/ctype_noninline.h,
- config/os/djgpp/ctype_noninline.h,
- config/os/generic/ctype_noninline.h,
- config/os/gnu-linux/ctype_noninline.h,
- config/os/hpux/ctype_noninline.h,
- config/os/irix/irix5.2/ctype_noninline.h,
- config/os/irix/irix6.5/ctype_noninline.h,
- config/os/mingw32/ctype_noninline.h,
- config/os/newlib/ctype_noninline.h,
- config/os/qnx/qnx6.1/ctype_noninline.h,
- config/os/solaris/solaris2.5/ctype_noninline.h,
- config/os/solaris/solaris2.6/ctype_noninline.h,
- config/os/solaris/solaris2.7/ctype_noninline.h,
- config/os/vxworks/ctype_noninline.h,
- config/os/windiss/ctype_noninline.h (ctype): Initialize
- _M_narrow, _M_widen.
- * include/bits/locale_facets.h (_M_widen, _M_widen_ok,
- _M_narrow, _M_narrow_ok): New.
- (widen, narrow): Use tables to bypass virtual functions.
- (_M_widen_init, _M_narrow_init): New.
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ Reorganize a bit the main parsing loop, thus early detecting
+ an empty value component.
+ * testsuite/22_locale/money_get/get/char/16.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/16.cc: New.
-2003-12-15 Carlo Wood <carlo@alinoe.com>
+2004-03-02 Benjamin Kosnik <bkoz@redhat.com>
- * include/bits/ios_base.h (Init::_S_initialized): Change into
- declaration.
- * src/ios_init.cc (Init::_S_initialized): Add definition.
+ Support automake 1.8.2
+ * configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override.
+ * po/Makefile.am (EXTRA_DIST): New.
+ * po/Makefile.in: Regenerate.
+ * Makefile.in: Same.
+ * include/Makefile.in: Same.
+ * libmath/Makefile.in: Same.
+ * libsupc++/Makefile.in: Same.
+ * src/Makefile.in: Same.
+ * testsuite/Makefile.in: Same.
+
+ * include/Makefile.am (${host_builddir}/gthr-posix.h): Use
+ __GXX_WEAK__ instead of SUPPORTS_WEAK.
+ (${host_builddir}/gthr-default.h): Same.
+ (${host_builddir}/gthr.h): Same.
+ * acinclude.m4 (GLIBCXX_ENABLE_THREAD): Remove
+ _GLIBCXX_SUPPORTS_WEAK, as this behavior can be modified via
+ -fno-weak.
+ * aclocal.m4: Regenerate.
+ * acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK.
+ * config.h.in: Regenerate.
+ * configure: Same.
-2003-12-15 Benjamin Kosnik <bkoz@redhat.com>
+2004-03-01 Benjamin Kosnik <bkoz@redhat.com>
- PR libstdc++/12658
- * include/Makefile.am (bits_headers): Add concurrence.h.
- * include/Makefile.in: Regenerated.
- * include/bits/concurrence.h: New.
- * src/locale_init.cc: Use it.
- (locale::locale): Lock critical regions.
- (locale::global): Same.
-
-2003-12-15 Benjamin Kosnik <bkoz@redhat.com>
+ Support autoconf 2.59
+ * acinclude.m4: Quote correctly.
+ * aclocal.m4: Regenerate.
+ * linkage.m4: Same.
- * include/bits/basic_string.h: Change _*_references to _*_refcount.
- * include/bits/locale_classes.h: Same.
- * src/locale.cc: Same.
- * src/locale_name.cc: Same.
- * src/locale_init.cc: Same.
-
-2003-12-15 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/12855
- * include/bits/ios_base.h (Init::_S_ios_base_init): Change to
- _S_refcount, make atomic.
- * src/ios.cc: Adjust definition.
- * src/ios_init.cc (ios_base::Init::Init): Use __exchange_and_add,
- and __atomic_add.
- (ios_base::Init::~Init): Same.
- * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
- * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
-
-2003-12-15 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (num_get::do_get(bool&)):
- Fail as soon as the begins of both truename and falsename
- stop to match; always leave __beg one position beyond the
- last char successfully matched.
- * testsuite/22_locale/num_get/get/char/8.cc: New.
- * testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
-
-2003-12-15 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.h (_M_widen): Reserve space
- for all the possible widened chars.
- * config/locale/generic/ctype_members.cc (_M_initialize_ctype):
- Compute at construction time all the possible widened chars.
- (do_widen): Tweak, simplify.
- * config/locale/gnu/ctype_members.cc: Likewise.
- * testsuite/performance/narrow_widen_wchar_t.cc: Add tests
- for the array versions.
-
-2003-12-12 Paolo Carlini <pcarlini@suse.de>
- Benjamin Kosnik <bkoz@redhat.com>
+2004-03-01 Benjamin Kosnik <bkoz@redhat.com>
- PR libstdc++/13341
- * include/bits/locale_facets.h (ctype<wchar_t>): Declare
- _M_initialize_ctype() and _M_narrow_ok, _M_narrow and _M_widen.
- * src/ctype.cc (ctype<wchar_t>::ctype(size_t),
- ctype<wchar_t>::ctype(__c_locale, size_t)): Use
- _M_initialize_ctype to fill _M_narrow and _M_widen.
- (ctype_byname<wchar_t>::ctype_byname(const char*, size_t)):
- Likewise.
- * config/locale/generic/ctype_members.cc (do_narrow, do_widen)
- Use _M_narrow and _M_widen when possible, instead of calling
- wctob and btowc, respectively.
- (_M_initialize_ctype): Define, it fills at construction time
- _M_narrow and _M_widen.
- * config/locale/gnu/ctype_members.cc: Likewise.
- * testsuite/performance/narrow_widen_wchar_t.cc: New.
+ * docs/html/test.html: Add multilib RUNTESTFLAGS example.
-2003-12-12 Jonathan Wakely <redi@gcc.gnu.org>
+ * docs/html/18_support/howto.html: Add bit about writing to
+ stderr, mostly by Zack.
- * docs/html/faq/index.txt: Regenerate after adding <link> tags.
+2004-03-01 Paolo Carlini <pcarlini@suse.de>
-2003-12-11 Neil Ferguson <nferguso@eso.org>
- Paolo Carlini <pcarlini@suse.de>
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract,
+ money_get<>::do_get(string_type&)): ... and two more.
- * include/bits/basic_string.tcc (reserve): Allow shrink-to-fit.
- * testsuite/21_strings/basic_string/capacity/1.cc: Tweak.
- * testsuite/21_strings/basic_string/capacity/char/1.cc: Ditto.
- * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Ditto.
+2004-03-01 Paolo Carlini <pcarlini@suse.de>
-2003-12-10 Benjamin Kosnik <bkoz@redhat.com>
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ Fix thinkos in the switch from string_type& to string& as last
+ argument.
- PR libstdc++/6243
- * testsuite/lib/libstdc++.exp (v3-init): Add
- original_ld_library_path, calculate ld_library path, set
- LD_LIBRARY_PATH to both. Based on libjava.exp.
-
-2003-12-10 Benjamin Kosnik <bkoz@redhat.com>
- Alexandre Oliva <aoliva@redhat.com>
-
- PR libstdc++/11612
- * testsuite/Makefile.am (GLIBCXX_DIR): New.
- (GLIBGCC_DIR): New.
- (CXXLINK): Use both with -R so libtool links the correct libs.
+2004-03-01 Paolo Carlini <pcarlini@suse.de>
-2003-12-10 Paolo Carlini <pcarlini@suse.de>
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
+ Also when parsing exponent sign, first look for thousands_sep
+ and decimal_point; tweak a bit.
+ * testsuite/22_locale/num_get/get/char/15.cc: New.
+ * testsuite/22_locale/num_get/get/wchar_t/15.cc: New.
- PR libstdc++/13217
- * include/bits/fstream.tcc (underflow): Deal gracefully with
- read errors: throw ios_base::failure.
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
+ num_get<>::_M_extract_int): Reorder some conditionals.
-2003-12-10 Benjamin Kosnik <bkoz@redhat.com>
+2004-03-01 Paolo Carlini <pcarlini@suse.de>
- PR libstdc++/10063
- * config/io/basic_file_stdio.cc (__basic_file::sys_open): Sync.
- * testsuite/ext/stdio_filebuf/char/10063-1.cc: New.
- * testsuite/ext/stdio_filebuf/char/10063-2.cc: New.
-
-2003-12-10 Paolo Carlini <pcarlini@suse.de>
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ Consistently with numpunct, enforce the requirements in
+ 22.2.6.3, p3 for the thousands separators; tweak a bit.
+ * testsuite/22_locale/money_get/get/char/15.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/15.cc: New.
- * include/bits/locale_facets.tcc (num_put::do_put(void*)):
- Remove the try/catch, not necessary.
+2004-03-01 David Billinghurst <David.Billinghurst@riotinto.com>
-2003-12-10 Paolo Carlini <pcarlini@suse.de>
+ * testsuite/lib/libstdc++.exp (v3-list-tests): Use
+ testsuite_files from correct multilib blddir when running
+ testsuite.
- * testsuite/22_locale/locale/cons/12438.cc: Tweak memory
- limit and iterations to avoid spurious failures on some
- 64 bit machines.
+2004-02-29 Phil Edwards <phil@codesourcery.com>
-2003-12-09 Benjamin Kosnik <bkoz@redhat.com>
-
- * config/linker-map.gnu: Remove private ios_base members from
- export list.
+ * testsuite/Makefile.am (check-abi, check-abi-verbose): Copy
+ the summary file to the logfile.
+ * testsuite/Makefile.in: Regenerate.
- * config/cpu/alpha/atomicity.h: Consistently format.
+2004-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * config/cpu/hppa/atomicity.h (__atomic_add): Make first argument
+ volatile.
+ * config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use
+ __GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK.
+
+2004-02-28 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
+ According to 22.2.3.1, p2, 'units' may be followed by 'e' with
+ no 'decimal-point' in the middle: in this case too we must fix
+ up __found_grouping; slightly tweak.
+ * testsuite/22_locale/num_get/get/char/14.cc: New.
+ * testsuite/22_locale/num_get/get/wchar_t/14.cc: New.
+
+2004-02-27 Eric Christopher <echristo@redhat.com>
+ Phil Edwards <phil@codesourcery.com>
+
+ * testsuite/22_locale/collate/compare/wchar_t/2.cc,
+ testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc,
+ testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc,
+ testsuite/22_locale/collate/hash/wchar_t/2.cc,
+ testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc,
+ testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc,
+ testsuite/22_locale/collate/transform/wchar_t/2.cc,
+ testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc,
+ testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
+ Use dg-require-iconv.
+ * testsuite/lib/libstdc++.exp: Load target-supports.exp.
+
+2004-02-27 Phil Edwards <phil@codesourcery.com>
+ Eric Christopher <echristo@redhat.com>
+
+ * testsuite/config/default.exp: Update with comments.
+ (${tool}_target_compile): New wrapper routine.
+ * testsuite/lib/dg-options.exp: New file, with dg-require-iconv.
+ * testsuite/lib/libstdc++.exp: Update with comments and cosmetic
+ fixes.
+ (load_gcc_lib, v3track): New routines.
+ (v3-init): Rename to libstdc++_init.
+ * testsuite/libstdc++-dg/normal.exp: No longer call v3-init.
+ Move DEFAULT_CXXFLAGS handling into libstdc++_init.
+
+2004-02-27 Benjamin Kosnik <bkoz@redhat.com>
+
+ * config/cpu/hppa/atomicity.h: Include c++config.h to get defines.
+
+ * src/misc-inst.cc (_S_atomicity_lock): Move to __gnu_cxx.
+
+ * config/os/irix/irix5.2/atomicity.h: Merge..
+ * config/os/irix/irix6.5/atomicity.h: Merge..
+ * config/os/irix/atomicity.h: ...into this.
+ * config/os/irix/atomic_word.h: New.
+ * configure.host: Set atomic_word_dir for irix.
+
+ * hppa/atomicity.h: Change __Atomicity_lock to _Atomicity_lock.
+ * i386/atomicity.h: Same.
+ * m68k/atomicity.h: Same.
+ * sparc/atomicity.h: Same.
+
+2004-02-27 David Edelsohn <edelsohn@gnu.org>
+
+ * config/os/aix/atomicity.h: Use __gnu_cxx namespace. Remove
+ static, and inline keywords.
+
+2004-02-27 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
+ num_get<>::_M_extract_int, money_get<>::_M_extract): If appropriate,
+ call reserve on the __tmp_gruping string.
+ (num_get<>::_M_extract_float): Don't append unnecessarily a
+ char() to the returned string.
+ * include/bits/locale_facets.tcc: Trivial reformattings.
+
+2004-02-27 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.h (money_get<>::_M_extract):
+ Change signature: now takes a plain string&.
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ Update consistently the definition; use the moneypunct cache
+ to parse the value; use swap to change __units.
+ (money_get<>::do_get(long double&)): Update call of _M_extract,
+ avoid ctype::narrow, not correct wrt the standard.
+ (money_get<>::do_get(string_type&)): Likewise, update call
+ of _M_extract, use ctype::widen.
+ * src/locale-inst.cc: Tweak instantiations of _M_extract.
+
+2004-02-26 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * testsuite/demangle/abi_examples/01.cc: Expect error -2.
+ * testsuite/demangle/abi_examples/02.cc: Likewise.
+ * testsuite/demangle/regression/cw-11.cc: Likewise.
+ * testsuite/demangle/regression/cw-16.cc: Change two expected
+ results to match libiberty demangler output.
+
+2004-02-26 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/10246
+ * libsupc++/Makefile.am: Use libiberty demangler.
+ (c_sources): Add cp-demangle.c.
+ * libsupc++/Makefile.in: Regenerate.
+ * src/Makefile.am (sources): Remove demangle.cc.
+ * src/Makefile.in: Regenerate.
+ * include/Makefile.am (bits_headers): Move demangle.h.
+ (ext_headers): ...here.
+ * include/Makefile.in: Regenerate.
+ * include/bits/demangle.h: Move...
+ * include/ext/demangle.h: ...here.
+ * src/demangle.cc: Remove.
+
+2004-02-26 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/demangle.h: Add type template parameter to all
+ templates with just an Allocator template parameter.
+
+2004-02-25 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/atomicity.h: New, forward declarations for __atomic_add
+ and __exchange_and_add.
+ * config/cpu/generic/atomic_word.h: New, typdef for atomic word.
+ * config/cpu/cris/atomic_word.h: Same.
+ * config/cpu/sparc/atomic_word.h: Same.
+ * include/bits/ios_base.h (_Callback_list::_M_remove_reference):
+ Qualifiy with __gnu_cxx.
+ (_Callback_list::_M_add_reference): Same.
+ * include/bits/locale_classes.h (locale::facet::_M_add_reference): Add.
+ (locale::facet::_M_remove_reference): Same.
+ (locale::_Impl::_M_add_reference): Add.
+ (locale::_Impl::_M_remove_reference): Same.
+ * include/bits/basic_string.h (basic_string::_Rep::_M_refcopy): Same.
+ (basic_string::_Rep::_M_dispose): Same.
+ * src/ios.cc (ios_base::xalloc): Same.
+ * src/ios_init.cc (ios_base::Init::Init): Same.
+ (ios_base::Init::~Init): Same.
+ * src/locale.cc (locale::id::_M_id): Same.
+ * config/cpu/i486/atomicity.h: Use __gnu_cxx namespace. Remove
+ static, and inline keywords.
+ * config/cpu/alpha/atomicity.h: Same.
* config/cpu/cris/atomicity.h: Same.
* config/cpu/generic/atomicity.h: Same.
* config/cpu/hppa/atomicity.h: Same.
* config/cpu/i386/atomicity.h: Same.
- * config/cpu/i486/atomicity.h: Same.
* config/cpu/ia64/atomicity.h: Same.
* config/cpu/m68k/atomicity.h: Same.
* config/cpu/mips/atomicity.h: Same.
* config/cpu/powerpc/atomicity.h: Same.
* config/cpu/s390/atomicity.h: Same.
* config/cpu/sparc/atomicity.h: Same.
-
-2003-12-09 Benjamin Kosnik <bkoz@redhat.com>
- PR libstdc++/13296
- * acinclude.m4 (GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS): Remove.
- * aclocal.m4: Regenerate.
- * configure.ac: Remove call to GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS.
- * conigure: Regenerate.
- * src/Makefile.am (libstdc___la_LDFLAGS): Remove LIBUNWIND_FLAGS.
+ * src/Makefile.am (host_sources): Add atomicity.cc.
+ (atomicity.cc): New rule.
* src/Makefile.in: Regenerate.
- * docs/html/17_intro/configury.html: Modify.
-
-2003-12-09 Paolo Carlini <pcaelini@suse.de>
-
- * include/bits/demangle.h (struct implementation_details):
- Keep in comments the names of the unused parameters.
-
-2003-12-09 Paolo Carlini <pcaelini@suse.de>
-
- * include/bits/demangle.h (struct implementation_details):
- Fix unused parameters warning.
-
-2003-12-09 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (num_get::_M_extract_int):
- Slightly streamline the code dealing with overflows and the
- parsing of the sign.
-
-2003-12-09 Bernardo Innocenti <bernie@develer.com>
-
- * include/ext/algorithm, include/ext/debug_allocator.h,
- include/ext/enc_filebuf.h, include/ext/functional,
- include/ext/hash_fun.h, include/ext/hash_map, include/ext/hash_set,
- include/ext/hashtable.h, include/ext/iterator,
- include/ext/malloc_allocator.h, include/ext/memory,
- include/ext/mt_allocator.h, include/ext/numeric,
- include/ext/pod_char_traits.h, include/ext/pool_allocator.h,
- include/ext/rb_tree, include/ext/rope, include/ext/ropeimpl.h,
- include/ext/slist, include/ext/stdio_filebuf.h,
- include/ext/stdio_sync_filebuf.h: Remove trailing whitespace.
-
-2003-12-09 Bernardo Innocenti <bernie@develer.com>
-
- * include/debug/bitset, include/debug/debug.h, include/debug/deque,
- include/debug/formatter.h, include/debug/hash_map.h,
- include/debug/hash_multimap.h, include/debug/hash_multiset.h,
- include/debug/hash_set, include/debug/hash_set.h, include/debug/list,
- include/debug/map.h, include/debug/multimap.h,
- include/debug/multiset.h, include/debug/safe_base.h,
- include/debug/safe_iterator.h, include/debug/safe_iterator.tcc,
- include/debug/safe_sequence.h, include/debug/set.h,
- include/debug/string, include/debug/vector: Remove trailing whitespace.
-
-2003-12-09 Bernardo Innocenti <bernie@develer.com>
-
- * include/c_compatibility/iso646.h, include/c_compatibility/limits.h,
- include/c_compatibility/locale.h, include/c_compatibility/stdio.h,
- include/c_compatibility/string.h, include/c_compatibility/time.h,
- include/c_compatibility/wchar.h, include/c_compatibility/wctype.h:
- Remove trailing whitespace.
-
-2003-12-09 Bernardo Innocenti <bernie@develer.com>
-
- * include/c_std/cmath.tcc, include/c_std/std_cassert.h,
- include/c_std/std_cctype.h, include/c_std/std_cmath.h,
- include/c_std/std_cstddef.h, include/c_std/std_cstdio.h,
- include/c_std/std_cstdlib.h, include/c_std/std_cstring.h,
- include/c_std/std_cwchar.h, include/c_std/std_cwctype.h:
- Remove trailing whitespace.
-
-2003-12-09 Bernardo Innocenti <bernie@develer.com>
-
- * include/c/std_cctype.h, include/c/std_cmath.h,
- include/c/std_cstdlib.h include/c/std_cwchar.h,
- include/c/std_cwctype.h: Remove trailing whitespace.
-
-2003-12-09 Bernardo Innocenti <bernie@develer.com>
-
- * include/backward/algo.h, include/backward/algobase.h,
- include/backward/alloc.h, include/backward/complex.h,
- include/backward/defalloc.h, include/backward/function.h,
- include/backward/iterator.h, include/backward/new.h,
- include/backward/ostream.h, include/backward/queue.h,
- include/backward/rope.h, include/backward/stream.h,
- include/backward/streambuf.h, include/backward/strstream,
- include/backward/tempbuf.h, include/backward/tree.h,
- include/backward/vector.h: Remove trailing whitespace.
-
-2003-12-08 Paolo Carlini <pcarlini@suse.de>
-
- * config/locale/generic/c_locale.cc (__convert_to_v(long&),
- __convert_to_v(unsigned long&), __convert_to_v(long long&),
- __convert_to_v(unsigned long long&): Remove.
- (__convert_to_v(float&), __convert_to_v(double&),
- __convert_to_v(long double&)): Remove last unused parameter.
- * config/locale/gnu/c_locale.cc: Likewise.
- * include/bits/locale_facets.h: Likewise.
- (num_get::_M_extract_int): Update declaration.
- (class __num_base): Tweak _S_ie and _S_iE according to the
- _S_atoms_in changes.
- * include/bits/locale_facets.tcc (num_get::_M_extract_int):
- Provide directly the final _ValueT, not a string: accumulate
- the result checking for overflow at each digit.
- (num_get::do_get(bool&), num_get::do_get(long&),
- num_get::do_get(unsigned short&), num_get::do_get(unsigned int&),
- num_get::do_get(unsigned long&), num_get::do_get(long long&),
- num_get::do_get(unsigned long long&), num_get::do_get(void*&)):
- Use the new _M_extract_int, simplify.
- * src/locale-inst.cc (num_get::_M_extract_int(long&),
- num_get::_M_extract_int(unsigned short&),
- num_get::_M_extract_int(unsigned int&),
- num_get::_M_extract_int(unsigned long&),
- num_get::_M_extract_int(long long&),
- num_get::_M_extract_int(unsigned long long&): Instantiate.
- * src/locale_facets.cc (__num_base::_S_atoms_in): Reorder
- the chars in the natural order: abcdefABCDEF.
-
-2003-12-08 David S. Miller <davem@redhat.com>
-
- PR libstdc++/12496
- * config/cpu/sparc/atomicity.h (__exchange_and_add, __atomic_add):
- Extend increment to _Atomic_word before giving to assembler.
-
-2003-12-06 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/ext/enc_filebuf/char/13189.cc: Guard for __enc_traits.
- * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
-
-2003-12-06 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/11691
- * include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf):
- Remove __del argument to file descriptor constructor.
- * config/io/basic_file_stdio.h (__basic_file::sys_open): Remove
- bool argument.
- * config/io/basic_file_stdio.cc: Same.
-
-2003-12-05 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/13189
- * include/ext/enc_filebuf.h: Fix.
- * include/bits/fstream.tcc: Tweak formatting.
- * include/bits/postypes.h: Same.
- * include/bits/sstream.tcc: Same.
- * include/bits/streambuf.tcc: Same.
- * testsuite/ext/stdio_filebuf.cc: Split.
- * testsuite/ext/stdio_filebuf_2.cc: Split.
- * testsuite/ext/stdio_sync_filebuf_char.cc: Split.
- * testsuite/ext/stdio_sync_filebuf_wchar_t.cc: Split.
- * testsuite/ext/enc_filebuf/char/13189.cc: New.
- * testsuite/ext/enc_filebuf/wchar_t/13189.cc: New.
- * testsuite/ext/stdio_filebuf/char/1.cc: New.
- * testsuite/ext/stdio_filebuf/char/2.cc: New.
- * testsuite/ext/stdio_sync_filebuf/char/1.cc: New.
- * testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: New.
- * testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: New.
- * testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: New.
- * testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: New.
- * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: New.
- * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: New.
- * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: New.
- * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: New.
- * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: New.
-
-2003-12-05 Carlo Wood <carlo@alinoe.com>
-
- PR libstdc++/13045
- * bits/demangle.h
- namespace __gnu_cxx::demangler
- (enum substitution_nt): Removed trailing comma.
- (implementation_details): Added.
- (session<Allocator>::M_implementation_details): Added.
- (session<Allocator>::session): Pass implementation_details.
- (session<Allocator>::decode_encoding): Same.
- (session<Allocator>::decode_real): Added.
- (_GLIBCXX_DEMANGLER_STYLE_VOID _GLIBCXX_DEMANGLER_STYLE_LITERAL
- _GLIBCXX_DEMANGLER_STYLE_LITERAL_INT
- _GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
- _GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Replaced with
- implementation_details equivalent.
- (session<Allocator>::decode_expression):
- Use M_implementation_details instead of macros. Add extra parentheses
- around 'larger than' operator in expressions in template arguments.
- (session<Allocator>::decode_bare_function_type): Idem.
- (session<Allocator>::decode_literal):
- Idem, and call decode_real for floating literals.
- (session<Allocator>::decode_type_with_postfix): Put the postfix
- of the return type of (member) functions after the function
- instead of after the return type. Also, put a space after the
- prefix of qualified function pointers: "int (* const<space>".
- * src/demangle.cc: include most dependent header file first.
- * testsuite/demangle/regression/cw-16.cc: Updated two
- and added three tests.
-
-2003-12-04 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/13284
- * include/bits/stl_algo.h (__random_number): Remove.
- (random_shuffle): Use rand, as permitted by DR 395.
- * include/ext/algorithm: Same.
- * linkage.m4 (GLIBCXX_CHECK_STDLIB_SUPPORT): Remove lrand48.
- * acconfig.h: Same.
- * crossconfig.m4: Remove HAVE_DRAND48, HAVE_LRAND48.
- * config.h.in: Regenerated.
- * configure: Same.
- * aclocal.m4: Same.
-
-2003-12-04 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/12653
- * include/std/std_bitset.h (operator>>): Implement resolution
- of DR 303 [WP]: use widen('0') and widen('1').
- * docs/html/ext/howto.html: Add an entry for DR 303.
-
- * include/std/std_bitset.h (operator>>): Implement the common
- requirements of formatted input functions (27.6.1.2.1).
-
- * include/std/std_bitset.h (operator>>): Set the failbit when
- nothing was extracted and _Nb != 0.
- * testsuite/23_containers/bitset/input/1.cc: New.
-
-2003-12-03 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/12791
- * include/bits/locale_facets.tcc (time_get::_M_extract_num):
- Rewrite, stop the parsing as soon as a digit cannot possibly
- lead to a final number within the bounds; otherwise, simplify,
- avoiding __ctype.is() and atoi().
- * testsuite/22_locale/time_get/get_date/char/12791.cc: New.
- * testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: New.
-
- * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
- Minor tweak: a 4-digit integer cannot be bigger than 9999.
-
- * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Use
- type-correct wchar_t string literals.
- * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
- * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
- * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
- * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
-
-2003-12-02 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (time_get::do_get_year):
- Avoid using a basic_string and calling a full blown strtol
- (via __convert_to_v) for simple 2 or 4 digits, base 10,
- positive integers; simplify.
-
-2003-12-02 Paolo Carlini <pcarlini@suse.de>
-
- * config/locale/gnu/monetary_members.cc
- (money_base::_S_construct_pattern): For case 3: and 4:
- exchanging 'if (__precedes)' and 'if (__space)' allows
- to factor out a few more assignments.
-
-2003-12-01 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/basic_ios.h (basic_ios::setstate): Revert.
- * include/bits/istream.tcc: Only call setstate if __err != goodbit.
- * include/bits/ostream.tcc: Same.
- * testsuite/27_io/basic_ios/exceptions/char/2.cc: New.
-
- * testsuite/testsuite_io.h (__gnu_test::fail_streambuf): Make
- internal buffer non-static.
-
-2003-12-01 Benjamin Kosnik <bkoz@redhat.com>
-
- * docs/html/17_intro/C++STYLE: Add exception bits.
- * include/bits/fstream.tcc: Add location info to exception strings.
-
- * include/bits/stl_construct.h: Formatting tweaks.
-
-2003-12-01 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/10378
- * include/bits/allocator.h (allocator::construct): Implement
- resolution of DR 402 [Ready] (in Revision 28).
- * include/bits/allocator_traits.h (__allocator::construct):
- Likewise.
- * include/bits/stl_construct.h (_Construct): Likewise.
- * testsuite/20_util/allocator_members.cc: Move to...
- * testsuite/20_util/allocator/1.cc: ... here.
- * testsuite/20_util/allocator/10378.cc: New.
- * docs/html/ext/howto.html: Add an entry for DR 402.
-
-2003-11-30 Paolo Carlini <pcarlini@suse.de>
-
- * config/locale/gnu/codecvt_members.cc (codecvt::do_in,
- codecvt::do_length): More minor tweaks.
-
-2003-11-30 Paolo Carlini <pcarlini@suse.de>
-
- * config/locale/gnu/codecvt_members.cc (codecvt::do_in):
- Minor stylistic tweak.
-
-2003-11-30 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (num_put::do_put(..., bool)):
- Minor tweaks, consistent with the style used in other facets.
-
-2003-11-29 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/fstream.tcc (underflow): Minor tweaks in
- preparation for libstdc++/13217.
-
-2003-11-29 Paolo Carlini <pcarlini@suse.de>
-
- * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc:
- Tweak for a few small problems (fix timings, use VERIFY..)
-
-2003-11-28 Paolo Carlini <pcarlini@suse.de>
-
- * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: Remove.
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: New,
- the original third testcase for libstdc++/13171 belong here.
-
-2003-11-28 Paolo Carlini <pcarlini@suse.de>
-
- * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc:
- Remove extraneous wchar_t lines.
-
-2003-11-27 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/11544
- PR libstdc++/11603
- * include/bits/fstream.tcc (underflow): Throw ios_base::failure
- upon incomplete or invalid byte sequences in the file.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-1.cc: New.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: New.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: New.
-
-2003-11-27 Paolo Carlini <pcarlini@suse.de>
-
- * include/std/std_streambuf.h (__copy_streambufs): Remove
- the first, unused, basic_ios<> parameter.
- * src/streambuf-inst.cc: Likewise.
- * include/bits/streambuf.tcc: Likewise.
- * include/bits/istream.tcc (operator>>(__streambuf_type*)):
- Tweak accordingly the call.
- * include/bits/ostream.tcc (operator<<(__streambuf_type*)):
- Likewise.
-
- * include/bits/streambuf.tcc (__copy_streambufs): Remove
- redundant try/catch.
-
-2003-11-26 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/9371
- PR libstdc++/9546
- PR libstdc++/10093
- PR libstdc++/10095
- * include/bits/basic_ios.h (basic_ios::setstate): Elide if goodbit.
- (basic_ios::_M_setstate): Consolidate common error handling code.
- * include/bits/basic_ios.tcc: Tweak.
- * include/bits/fstream.tcc: Tweak.
- * include/bits/istream.tcc: Use _M_setstate for common exception
- handling. Move setstate calls after catch.
- (basic_istream::tellg): Check for exceptions thrown by streambuf
- virtual functions.
- (basic_istream::seekg): Same.
- * include/bits/ostream.tcc: Same, but for ostream.
- (basic_ostream::flush): Check for exceptions thrown by streambuf
- virtual functions.
- (basic_istream::tellp): Same.
- (basic_istream::seekp): Same.
- * include/bits/locale_facets.tcc: Tweak.
- * include/bits/streambuf.tcc: Tweak.
- (__copy_streambufs): Propagate exceptions.
- * testsuite/testsuite_io.h (fail_streambuf): New.
- (fail_num_get): New.
- (fail_num_put): New.
- (facet_error): New.
- (underflow_error): New.
- (overflow_error): New.
- (positioning_error): New.
- * testsuite/27_io/basic_istream/exceptions/char/9561.cc: Tweak.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/
- exceptions_badbit_throw.cc, exceptions_failbit.cc,
- exceptions_failbit_throw.cc: New.
- * testsuite/27_io/basic_istream/extractors_other/char/
- error_failbit.cc, exceptions_badbit_throw.cc,
- exceptions_failbit_throw.cc, exceptions_null.cc: New.
- * testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
- New.
- * testsuite/27_io/basic_istream/tellg/char/exceptions_badbit_throw.cc:
- New.
- * testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc:
- New.
- * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
- exceptions_badbit_throw.cc, exceptions_failbit_throw.cc: New.
- * testsuite/27_io/basic_ostream/inserters_other/char/
- error_failbit.cc, exceptions_badbit_throw.cc,
- exceptions_failbit_throw.cc, exceptions_null.cc: New.
- * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
- New.
- * testsuite/27_io/basic_ostream/tellp/char/exceptions_badbit_throw.cc:
- New.
-
-2003-11-26 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/12297
- * include/bits/istream.tcc
- (basic_istream::sentry::sentry): Set failbit and eofbit when eof.
- * testsuite/27_io/basic_istream/sentry/char/12297.cc: New.
-
-2003-11-26 Paolo Carlini <pcarlini@suse.de>
- Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/13171
- * include/bits/fstream.tcc (imbue): Relax the conditions under
- which the function succeeds: allow for two consecutive calls with
- the same name; state dependent encodings are ok even after open
- if at the beginning of the file; don't check seekoff return value
- (pipes, cin, cout, etc...)
- * testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: New.
- * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: New.
- * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: New.
- * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: New.
- * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak comment.
- * testsuite/27_io/basic_filebuf/imbue/char/3.cc: Likewise.
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Tweak comment.
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: Likewise.
-
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: More
- correctly use the UTF-8 locale appearing in the PR.
-
-2003-11-26 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.h
- (__numpunct_cache<>::_M_cache): Avoid zeroing _M_grouping,
- _M_truename and _M_falsename: the constructor always does
- it immediately before the _M_cache call.
-
-2003-11-25 Paolo Carlini <pcarlini@suse.de>
-
- * config/locale/gnu/codecvt_members.cc (codecvt::do_length):
- Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
- former is very fast, but stops if encounters a NUL.
- (codecvt::do_out): Tweaks.
- (codecvt::do_in): Tweaks, improve the code dealing with errors.
- * testsuite/performance/wchar_t_length.cc: New.
-
-2003-11-24 Paolo Carlini <pcarlini@suse.de>
-
- * config/locale/gnu/codecvt_members.cc (codecvt::do_in):
- Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
- former is very fast, but stops if encounters a NUL.
- (codecvt::do_out): Tweak.
- * testsuite/performance/wchar_t_in.cc: New.
-
-2003-11-24 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.h
- (__numpunct_cache<>::_M_cache): Set _M_allocated at the beginning
- in order to avoid memory leaks; simplify a bit.
-
-2003-11-24 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/streambuf_iterator.h (ostreambuf_iterator): Remove
- non-standard throw specs.
- * testsuite/24_iterators/istreambuf_iterator.cc: Split into...
- * testsuite/24_iterators/istreambuf_iterator/1.cc
- * testsuite/24_iterators/istreambuf_iterator/2.cc
- * testsuite/24_iterators/istreambuf_iterator/2627.cc
- * testsuite/24_iterators/ostreambuf_iterator.cc: Split into...
- * testsuite/24_iterators/ostreambuf_iterator/1.cc
- * testsuite/24_iterators/ostreambuf_iterator/2.cc
-
- * testsuite/24_iterators/reverse_iterator/1.cc: Just compile,
- don't link.
-
- * include/bits/allocator.h: Formatting tweak.
-
-2003-11-24 Paolo Carlini <pcarlini@suse.de>
-
- * src/locale_init.cc: Cosmetic reformatting.
-
-2003-11-23 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (__add_grouping):
- Cosmetic reformatting.
-
-2003-11-23 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (_M_extract_float,
- _M_extract_int): Remove a wrong comment and simplify
- the corresponding code using char_traits::find().
-
-2003-11-22 Paolo Carlini <pcarlini@suse.de>
-
- * config/locale/gnu/monetary_members.cc
- (money_base::_S_construct_pattern): Factor out two assignments.
-
-2003-11-22 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/istream.tcc (getline(basic_string<>&)):
- Fix error in comment of the previous commit.
-
-2003-11-22 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/12593
- * include/bits/istream.tcc (operator>>(basic_string<>&),
- getline(basic_string<>&)): Implement resolution of DR 91 [WP];
- fix some minor issues with the exit conditions.
- * docs/html/ext/howto.html: Add an entry for DR 91.
-
-2003-11-21 Paolo Carlini <pcarlini@suse.de>
-
- * config/locale/gnu/monetary_members.cc
- (money_base::_S_construct_pattern): Factor out an assignment.
-
-2003-11-21 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/12882 (partial)
- * acinclude.m4 (GLIBCXX_CHECK_LFS): Check fseeko64
- and ftello64 too.
- * include/ext/stdio_sync_filebuf.h (seekoff): Use fseeko64
- and ftello64 if available.
- * aclocal.m4: Regenerate.
- * configure: Ditto.
-
-2003-11-20 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/debug/formatter.h: Use _Tp as template argument.
- * src/debug.cc: Same, instantiate std::size_t.
-
-2003-11-20 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/13109
- * include/debug/formatter.h (_Error_formatter::_M_format_word): New.
- * src/debug.cc (__gnu_debug): Format.
- (_Error_formatter::_M_format_word): Define, use, instantiate.
-
-2003-11-20 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/11602
- * config/locale/gnu/codecvt_members.cc (codecvt::do_out):
- Rewrite, using both wcsnrtombs and wcrtomb in a loop: the
- former is very fast, but stops if encounters a NUL.
- * testsuite/performance/wchar_t_out.cc: New, from the PR.
-
-2003-11-19 Paolo Carlini <pcarlini@suse.de>
-
- * config/locale/gnu/codecvt_members.cc (do_out): If
- we can upper bound the total number of external chars
- to something smaller than __to_end - __to, avoid the
- temporary buffer, the memcopy and simplify the loop.
- * config/locale/generic/codecvt_members.cc (do_out):
- Likewise.
-
-2003-11-19 Andreas Tobler <a.tobler@schweiz.ch>
-
- * testsuite/lib/libstdc++.exp: Add DYLD_LIBRARY_PATH for darwin.
- * testsuite/libstdc++-dg/normal.exp: Add -multiply_defined suppress
- flag.
-
-2003-11-18 Jonathan Wakely <redi@gcc.gnu.org>
-
- * docs/html/configopts.html, docs/html/debug.html,
- docs/html/documentation.html, docs/html/explanations.html,
- docs/html/install.html, docs/html/17_intro/contribute.html,
- docs/html/17_intro/howto.html, docs/html/17_intro/license.html,
- docs/html/18_support/howto.html, docs/html/19_diagnostics/howto.html,
- docs/html/20_util/howto.html, docs/html/21_strings/howto.html,
- docs/html/22_locale/codecvt.html, docs/html/22_locale/ctype.html,
- docs/html/22_locale/howto.html, docs/html/22_locale/locale.html,
- docs/html/22_locale/messages.html, docs/html/23_containers/howto.html,
- docs/html/24_iterators/howto.html, docs/html/25_algorithms/howto.html,
- docs/html/26_numerics/howto.html, docs/html/27_io/howto.html,
- docs/html/ext/howto.html, docs/html/ext/sgiexts.html: Add <link> tags.
-
-2003-11-18 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/12868
- * include/bits/fstream.tcc (imbue): For encodings != -1 it's
- always ok to imbue a new locale, provided seekoff(0, cur, ...)
- doesn't fail, of course.
- (underflow): In order for the above to work, deal gracefully
- with _M_codecvt->in returning codecvt_base::error while
- (__ilen = __iend - this->eback()) > 0: it just means __ilen
- correctly converted internal characters before an error.
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: New.
-
-2003-11-17 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc: Fix typo in comment.
-
-2003-11-17 Paolo Carlini <pcarlini@suse.de>
-
- * testsuite/22_locale/num_put/put/char/8.cc: New test,
- summarizing the discussion ensuing libstdc++/12988.
- * testsuite/22_locale/num_put/put/wchar_t/8.cc: Ditto.
-
-2003-11-15 Paolo Carlini <pcarlini@suse.de>
-
- * include/std/std_fstream.h: Tweak a comment.
-
-2003-11-15 Roger Sayle <roger@eyesopen.com>
-
- * include/c_std/std_cmath.h: Don't import C99's float transcendentals
- into the __gnu_cxx::__c99_binding namespace.
- (acos, asin, atan, atan2, ceil, cosh, exp, floor, fmod, frexp,
- ldexp, log, log10, modf, pow, sinh, tan, tanh): Implement using
- GCC's math builtins, i.e. __builtin_foo.
- * libmath/stubs.c (acosf, acosl, asinf, asinl, atanf, atanl,
- ceilf, ceill, floorf, floorl, fmodf, fmodl, frexpf, frexpl,
- ldexpf, ldexpl, modff, modfl): Provide stub implementations.
-
-2003-11-14 Paolo Carlini <pcarlini@suse.de>
-
- * testsuite/22_locale/locale/cons/12352.cc: Use
- __gnu_test::try_named_locale.
-
-2003-11-14 Paolo Carlini <pcarlini@suse.de>
-
- * docs/html/ext/howto.html: Add entries for DR 63, 75
- and 305; tweak entries for DR 60 and 328.
-
-2003-11-13 Douglas Gregor <gregod@cs.rpi.edu>
-
- * docs/html/debug.html: Users are allowed to specialize in
- namespace __gnu_debug, unlike in the Apple version of the debug
- mode. Clear up a confusing double-negative. Note that
- std::basic_string does provide extra debugging capabilities, but
- not safe iterators.
- * include/bits/basic_string.tcc: Make sure there's never an
- ambiguity when calling __is_null_pointer.
- * include/debug/deque: (deque::erase) Properly handle invalidation
- when erasing at the end of the deque.
- * include/debug/vector: (vector::swap): Swap _M_guaranteed_capacity.
- (vector::clear): Set the guaranteed capacity to 0.
- * testsuite/23_containers/deque/invalidation/4.cc: (test04): Test
- iterator invalidation when erasing at the end of the deque.
-
-2003-11-13 Paolo Carlini <pcarlini@suse.de>
- Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/13007
- * include/bits/fstream.tcc (imbue): Don't touch the stored
- locale.
- * include/std/std_streambuf.h (imbue): According to the
- standard, base class version does nothing.
- (pubimbue): Store the locale.
- * testsuite/27_io/basic_filebuf/imbue/char/13007.cc: New.
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: New.
- * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak.
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.
- * testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: New.
- * testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: New.
- * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: New.
- * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: New.
-
-2003-11-13 Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/12594
- * include/bits/ostream.tcc
- (basic_ostream::operator<<(basic_ostream& (*)(basic_ostream&)),
- basic_ostream::operator<<(basic_ios& (*)(basic_ios&)),
- basic_ostream::operator<<(ios_base& (*)(ios_base&))):
- Implement the resolution of DR 60 (TC): These are not formatted
- output functions so don't construct sentry objects and don't
- catch exceptions.
- (basic_ostream::put, basic_ostream::write): Implement the
- resolution of DR 63 (TC) by catching exceptions and setting
- badbit.
- (basic_ostream::flush): Implement the resolution of DR 60 (TC):
- This is not an unformatted output function so don't construct
- a sentry object.
- * testsuite/testsuite_io.h (sync_streambuf): Define.
- * testsuite/27_io/basic_ostream/flush/char/2.cc: New test.
- * testsuite/27_io/basic_ostream/inserters_other/char/5.cc: New test.
- * testsuite/27_io/basic_ostream/put/char/1.cc: New test.
- * testsuite/27_io/basic_ostream/write/char/1.cc: New test.
-
-2003-11-13 Paolo Carlini <pcarlini@suse.de>
-
- * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1:
- Fix, closely following the testcase included in the PR.
- * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: Ditto.
- * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: Ditto.
- * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: Ditto.
-
-2003-11-13 Jonathan Wakely <redi@gcc.gnu.org>
-
- * docs/html/17_intro/configury.html: XHTML tweak.
-
-2003-11-13 Jonathan Wakely <redi@gcc.gnu.org>
-
- * docs/html/debug_mode.html: XHTML fixes.
-
-2003-11-12 Benjamin Kosnik <bkoz@redhat.com>
+ * include/Makefile.am (host_headers): Remove host atomicity.h.
+ (host_headers): Add atomic_word.h.
+ (bits_headers): Add bits atomicity.h.
+ Change ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
+ * include/Makefile.in: Regenerate.
+ * configure.host (atomic_word_dir): Add.
+ * configure.ac: Substitute ATOMIC_WORD_SRCDIR. Change
+ ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
+ * configure: Regenerate.
+ * config/linker-map.gnu: Export __exchange_and_add, and __atomic_add.
- * docs/html/debug_mode.html: Update.
- * docs/html/17_intro/TODO: Update.
+ * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
+ * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
-2003-11-12 Benjamin Kosnik <bkoz@redhat.com>
+2004-02-25 Jonathan Wakely <redi@gcc.gnu.org>
- * include/bits/c++config: Move using directive...
- * include/debug/formatter.h: ...here.
+ * docs/html/20_util/howto.html, docs/html/20_util/allocator.html,
+ docs/html/ext/howto.html, docs/html/ext/mt_allocator.html:
+ Fix markup, more <link> tags.
-2003-11-12 Carlo Wood <carlo@alinoe.com>
+2004-02-25 Carlo Wood <carlo@alinoe.com>
- PR libstdc++/12947
* bits/demangle.h
- (_GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS): Added.
- (_GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Added.
- (session<Allocator>::next_peek() const): Added.
- (decode_non_negative_decimal_integer(string_type&)):
- Renamed from decode_decimal_integer(string_type&).
- (session<Allocator>::decode_nested_name):
- Decode <template_param> as well.
- (session<Allocator>::add_substitution):
- Handle <template-param> for <nested-name>'s.
- (enum xary_nt): Added.
- (struct entry_st): Added member `xary_nt type' instead of `bool unary'.
- (symbol_name_table_c): Updated for `entry_st::type' and additional
- operators (unary `operator+' and `sizeof(type)').
- (offset_table_c): Updated for new operators (causing a new hash map).
- (decode_operator_name): Match the updated hash map.
- (session<Allocator>::decode_expression):
- Support for `sizeof ([typename] type)' (st),
- dependent names (sr) and casting operator (cv). Handle
- `entry_st::type'. Handle _GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
- and _GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME.
+ namespace __gnu_cxx::demangler
+ (session<Allocator>::qualifier_list_Allocator): Add
+ (session<Allocator>::M_qualifier_list_alloc): Add
(session<Allocator>::decode_type_with_postfix):
- Support `extern "C"' function types (FY).
- * testsuite/demangle/regression/cw-16.cc: Added tests for the
- added functionality.
- * testsuite/demangle/regression/3111-2.cc: sizeof now has a space
- appended.
-
-2003-11-11 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/12875
- * include/bits/fstream.tcc (setbuf): Don't do anything
- after open(), in particular don't discard data.
- (_M_allocate_internal_buffer): Tweak to not allocate memory
- in case the buffer is provided by the user via setbuf.
- * include/ext/stdio_filebuf.h: Tweak comment.
- * testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: New.
- * testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Likewise.
- * testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Tweak, now
- setbuf does nothing after open().
- * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
-
-2003-11-11 Doug Gregor <gregod@cs.rpi.edu>
-
- * docs/html/debug.html: Document libstdc++ debug mode.
- * docs/html/debug_mode.html: Document libstdc++ debug mode design.
- * docs/html/test.html: Document how to test under debug mode.
- * docs/html/17_intro/howto.html: Document debug-mode macros.
- * include/Makefile.am: Install debug-mode headers.
- * src/Makefile.am: Include debug.cc.
- * include/bits/basic_string.tcc:
- (basic_string::_S_construct): Fix NULL pointer check.
- (__is_null_pointer): New.
- Add precondition annotations.
- * include/bits/stream_iterator.h (istream_iterator,
- ostream_iterator): Added precondition annotations.
- * include/bits/streambuf_iterator.h (istreambuf_iterator): Ditto.
- * include/bits/stl_queue.h (queue, priority_queue): Ditto.
- * include/bits/stl_stack.h (stack): Ditto.
- * include/bits/basic_string.h (basic_string): Ditto.
- * include/bits/basic_string.tcc (basic_string): Ditto.
- * include/std/std_memory.h (auto_ptr): Ditto.
- * include/std/std_valarray.h (valarray): Ditto.
- * include/bits/stl_algo.h: Added algorithm precondition
- annotations.
- * include/bits/stl_algobase.h: Added algorithm precondition
- annotations.
- * include/bits/stl_numeric.h: Ditto.
- * include/ext/algorithm: Added algorithm precondition
- annotations.
- (__is_heap): Moved away from here.
- * include/bits/stl_heap.h: Added algorithm precondition
- annotations.
- (__is_heap): Moved to the top of this file.
- (__is_heap): Added iterator range overloads.
- * testsuite/20_util/auto_ptr_neg.cc: Fix line numbers to match up
- with changes in std_memory.h.
- * testsuite/23_containers/list/operators/4.cc: Don't verify
- performance guarantees when in debug mode.
- * testsuite/23_containers/bitset/invalidation/1.cc: New.
- * testsuite/23_containers/deque/invalidation/1.cc: New.
- * testsuite/23_containers/deque/invalidation/2.cc: New.
- * testsuite/23_containers/deque/invalidation/3.cc: New.
- * testsuite/23_containers/deque/invalidation/4.cc: New.
- * testsuite/23_containers/list/invalidation/1.cc: New.
- * testsuite/23_containers/list/invalidation/2.cc: New.
- * testsuite/23_containers/list/invalidation/3.cc: New.
- * testsuite/23_containers/list/invalidation/4.cc: New.
- * testsuite/23_containers/map/invalidation/1.cc: New.
- * testsuite/23_containers/map/invalidation/2.cc: New.
- * testsuite/23_containers/multimap/invalidation/1.cc: New.
- * testsuite/23_containers/multimap/invalidation/2.cc: New.
- * testsuite/23_containers/multiset/invalidation/1.cc: New.
- * testsuite/23_containers/multiset/invalidation/2.cc: New.
- * testsuite/23_containers/set/invalidation/1.cc: New.
- * testsuite/23_containers/set/invalidation/2.cc: New.
- * testsuite/23_containers/vector/invalidation/1.cc: New.
- * testsuite/23_containers/vector/invalidation/2.cc: New.
- * testsuite/23_containers/vector/invalidation/3.cc: New.
- * testsuite/23_containers/vector/invalidation/4.cc: New.
- * testsuite/25_algorithms/heap.cc: Don't verify
- performance guarantees when in debug mode.
- * include/debug/bitset: New.
- * include/debug/debug.h: New.
- * include/debug/deque: New.
- * include/debug/formatter.h: New.
- * include/debug/hash_map: New.
- * include/debug/hash_map.h: New.
- * include/debug/hash_multimap.h: New.
- * include/debug/hash_set: New.
- * include/debug/hash_set.h: New.
- * include/debug/hash_multiset.h: New.
- * include/debug/list: New.
- * include/debug/map: New.
- * include/debug/map.h: New.
- * include/debug/multimap.h: New.
- * include/debug/multiset.h: New.
- * include/debug/safe_base.h: New.
- * include/debug/safe_iterator.h: New.
- * include/debug/safe_iterator.tcc: New.
- * include/debug/safe_sequence.h: New.
- * include/debug/set: New.
- * include/debug/set.h: New.
- * include/debug/string: New.
- * include/debug/vector: New.
- * src/debug.cc: New.
- * config/linker-map.gnu: Add debug mode symbols.
-
-2003-11-11 Benjamin Kosnik <bkoz@redhat.com>
-
- * src/string-inst.cc: Tweak namespaces.
- * src/misc-inst.cc: Same.
- * docs/html/debug.html: Edits.
- * config/link-map.gnu: Remove cruft.
-
- * include/bits/c++config: Add in namespace associations.
- * include/std/std_bitset.h: Adjust namespace to __gnu_norm,
- comment tweaks.
- * include/bits/deque.tcc: Same.
- * include/bits/list.tcc: Same.
- * include/bits/stl_bvector.h: Same.
- * include/bits/stl_deque.h: Same.
- * include/bits/stl_list.h: Same.
- * include/bits/stl_map.h: Same.
- * include/bits/stl_multimap.h: Same.
- * include/bits/stl_multiset.h: Same.
- * include/bits/stl_set.h: Same.
- * include/bits/stl_vector.h: Same.
- * include/bits/vector.tcc: Same.
-
- * include/std/std_algorithm.h: Remove markup comments.
- * include/std/std_functional.h: Same.
- * include/std/std_iterator.h: Same.
- * include/std/std_numeric.h: Same.
- * include/std/std_utility.h: Same.
- * include/bits/stl_queue.h: Formatting tweaks.
- * include/bits/stl_stack.h: Same.
- * include/std/std_deque.h: Include debugging version in debug mode.
- * include/std/std_list.h: Same.
- * include/std/std_map.h: Same.
- * include/std/std_set.h: Same.
- * include/std/std_vector.h: Same.
- * include/std/std_queue.h: Use deque, vector.
- * include/std/std_stack.h: Same.
-
-2003-11-09 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (_M_insert_int,
- _M_insert_float): Move a couple of vars inside an if block.
-
-2003-11-09 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/12971
- * include/bits/locale_facets.tcc
- (money_put::do_put(..., long double)): Fix conversion
- specification as per DR 328 [WP].
- * testsuite/22_locale/money_put/put/char/12971.cc: Add.
- * testsuite/22_locale/money_put/put/wchar_t/12971.cc: Ditto.
- * docs/html/ext/howto.html: Add entry for DR 328.
-
-2003-11-08 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/12967
- * include/bits/list.tcc (merge): Implement resolution of
- DR 300 [WP].
- * docs/html/ext/howto.html: Add entry for DR 300; tweak entry
- for DR 231.
-
- * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
- Import R27.
-
-2003-11-07 Jonathan Wakely <redi@gcc.gnu.org>
-
- * libsupc++/vec.cc: Conform to C++STYLE.
-
-2003-11-07 Carlo Wood <carlo@alinoe.com>
-
- PR libstdc++/12736
- * bits/demangle.h (qualifier_list<Allocator>::decode_KVrA): Added.
- (qualifier_list<Allocator>::decode_qualifiers): Collect concatenated
- K, V, r and A qualifiers before processing them as a group.
- * testsuite/demangle/abi_text/01.cc: Reordered CV-qualifiers.
- * testsuite/demangle/regression/cw-16.cc: New.
-
-2003-11-07 Robert Millan <robertmh@gnu.org>
-
- * configure.host: Add kfreebsd*-gnu and knetbsd*-gnu.
- * crossconfig.m4: Likewise.
- * configure: Regenerate.
-
-2003-11-07 Carlo Wood <carlo@alinoe.com>
-
- * include/bits/demangle.h
- (qualifier_list<Allocator>::decode_qualifiers(string_type&,
- string_type&, bool member_function_pointer_qualifiers):
- Always separate the '[' of an array type with a space from
- what is left of it, except when that is the closing bracket
- of another array dimension.
-
-2003-11-07 Carlo Wood <carlo@alinoe.com>
-
- * include/bits/demangle.h
- (qualifier_list<Allocator>::decode_qualifiers(string_type&,
- string_type&, bool) const): Made const.
- (qualifier_list<Allocator>::M_printing_suppressed): Added mutable.
- (_GLIBCXX_DEMANGLER_DOUT_ENTERING3, _GLIBCXX_DEMANGLER_RETURN3,
- std::ostream& operator<<(std::ostream&, qualifier const&),
- std::ostream& operator<<(std::ostream&, qualifier_list const&),
- qualifier_list<Allocator>::decode_qualifiers(string_type&,
- string_type&, bool) const,
- session<Allocator>::decode_type_with_postfix(string_type&,
- string_type&, qualifier_list<Allocator>*))
- Added and/or changed debug-only hooks and code.
-
-2003-11-04 Jeffrey D. Oldham <oldham@codesourcery.com>
-
- * libsupc++/vec.cc (__cxa_vec_delete2): If given a NULL pointer,
- immediately return. This reflects a C++ ABI change 2003 Nov 03.
- (__cxa_vec_delete3): Likewise.
-
-2003-11-03 Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/12790
- * include/bits/fstream.tcc: Delete _M_last_overflowed.
- (basic_filebuf::basic_filebuf): Initialize _M_state_last.
- (basic_filebuf::open, basic_filebuf::close): Assign
- _M_state_beg to _M_state_cur and _M_state_last.
- (basic_filebuf::close): Call _M_terminate_output to handle
- unshift and flushing.
- (basic_filebuf::underflow): Assign _M_state_last, throw
- exception instead of calling abort when codecvt::max_length()
- is bad.
- (basic_filebuf::seekoff): Use _M_state_last when calling
- codecvt::length(), pass correct state to _M_seek.
- (basic_filebuf::seekpos): Pass __pos.state() to _M_seek.
- (basic_filebuf::_M_seek): Add __state_type parameter,
- set _M_state_cur correctly, store the resulting state in
- the return value and use _M_terminate_output to handle
- flushing and unshift.
- (basic_filebuf::_M_terminate_output): Flush contents of
- output buffer, if any, then call codecvt::unshift as
- needed and output the result.
- (basic_filebuf::sync): Move here, don't modify _M_writing
- or _M_reading.
-
- * include/std/std_fstream.h
- (basic_filebuf::_M_state_last): Declare it.
- (basic_filebuf::_M_last_overflowed): Delete.
- (basic_filebuf::_M_seek): Add __state_type parameter.
- (basic_filebuf::sync): Declare only.
- (basic_filebuf::_M_output_unshift): Delete.
- (basic_filebuf::_M_terminate_output): Declare it.
-
- * testsuite/testsuite_character.h:
- Define character class and state class plus char_traits and
- codecvt specializations for same for testing support for
- stateful encodings.
-
- * testsuite/27_io/basic_filebuf/close/12790-1.cc,
- * testsuite/27_io/basic_filebuf/close/char/12790-1.cc,
- * testsuite/27_io/basic_filebuf/close/char/12790-2.cc,
- * testsuite/27_io/basic_filebuf/close/char/12790-3.cc,
- * testsuite/27_io/basic_filebuf/close/char/12790-4.cc,
- * testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc,
- * testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc,
- * testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc,
- * testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc,
- * testsuite/27_io/basic_filebuf/open/12790-1.cc,
- * testsuite/27_io/basic_filebuf/seekoff/12790-1.cc,
- * testsuite/27_io/basic_filebuf/seekoff/12790-2.cc,
- * testsuite/27_io/basic_filebuf/seekoff/12790-3.cc,
- * testsuite/27_io/basic_filebuf/seekoff/12790-4.cc,
- * testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc,
- * testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc,
- * testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc,
- * testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc,
- * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc,
- * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc,
- * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc,
- * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc,
- * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc,
- * testsuite/27_io/basic_filebuf/seekpos/12790-1.cc,
- * testsuite/27_io/basic_filebuf/seekpos/12790-2.cc,
- * testsuite/27_io/basic_filebuf/seekpos/12790-3.cc,
- * testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc,
- * testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc,
- * testsuite/27_io/basic_filebuf/seekpos/char/12790-3.cc,
- * testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc,
- * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc,
- * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc,
- * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc,
- * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-3.cc,
- * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc,
- * testsuite/27_io/basic_filebuf/sync/char/1.cc,
- * testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc:
- New tests.
-
- * testsuite/27_io/basic_filebuf/3.cc,
- * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc,
- * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc,
- * testsuite/27_io/basic_fstream/3.cc,
- * testsuite/27_io/basic_ifstream/3.cc,
- * testsuite/27_io/basic_ofstream/3.cc:
- Use streamoff as off_type and fpos<state_type> as pos_type.
-
- * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc,
- * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc:
- Check that sync does *not* set _M_writing to false.
-
-2003-11-03 Anthony Green <green@redhat.com>
-
- * libmath/stubs.c (sqrtf, sqrtl): Reorder so they appear before
- they're used.
-
-2003-11-03 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/locale_facets.h (time_get::_M_extract_name): Add
- ctype argument.
- * include/bits/locale_facets.tcc: Same, use it to allow
- capitalized names.
-
- * include/bits/fstream.tcc: Spacing tweak.
- * include/bits/istream.tcc: Same.
- * include/bits/ostream.tcc: Same.
+ Use M_qualifier_list_alloc instead of calling operator new/delete.
-2003-10-30 Paolo Carlini <pcarlini@suse.de>
+2004-02-24 Paolo Carlini <pcarlini@suse.de>
- * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
- __mod is only assigned, never used its value, remove it.
+ PR libstdc++/14252
+ * include/bits/postypes.h (class streamoff): Add operator++(),
+ operator++(int), operator--() and operator--(int).
+ * testsuite/27_io/fpos/14252.cc: New.
-2003-10-29 Paolo Carlini <pcarlini@suse.de>
+2004-02-24 Richard Sandiford <rsandifo@redhat.com>
- * include/bits/locale_facets.tcc (time_get::do_get_year):
- Absolutely avoid dereferencing end iterators.
- (time_put::put): Minor clean up.
+ * include/bits/locale_facets.tcc (num_get::_M_extract_int): Fix bounds
+ error in handling of hex constants.
- * include/bits/locale_facets.tcc: Cosmetic reformattings.
+2004-02-24 Paolo Carlini <pcarlini@suse.de>
-2003-10-29 Paolo Carlini <pcarlini@suse.de>
+ * include/bits/locale_facets.tcc (money_put<>::_M_insert):
+ Prefer basic_string::append to operator+= and a temporary.
- * include/bits/locale_facets.tcc (num_get::_M_extract_float):
- Revert the last commit, is not correct, sorry.
-
-2003-10-29 Paolo Carlini <pcarlini@suse.de>
+2004-02-23 Benjamin Kosnik <bkoz@redhat.com>
- * config/locale/generic/c_locale.cc: Add back <cmath> and
- <cstdlib>.
+ * libsupc++/vterminate.cc (__gnu_cxx::__verbose_terminate_handler):
+ Only use fputs, not write.
- * include/bits/locale_facets.tcc (num_get::_M_extract_float):
- Clean up.
+2004-02-23 Benjamin Kosnik <bkoz@redhat.com>
-2003-10-29 Paolo Carlini <pcarlini@suse.de>
+ * include/ext/malloc_allocator.h: Add operators ==, !=.
+ * include/ext/new_allocator.h: Add operators ==, !=.
+ * include/ext/mt_allocator.h (__mt_alloc::tune): New.
+ (__mt_alloc::_S_get_options): New.
+ (__mt_alloc::_S_set_options): New.
+ (__mt_alloc::_S_thread_key_destr): To _S_destroy_thread_key.
+ (__mt_alloc::_S_no_of_bins): To _S_bin_size.
+ Move functions out of line, simplify, format.
+ * src/allocator.cc: Simplify explicit instantiations.
+ * include/bits/allocator.h: Tweak.
- * include/bits/locale_facets.tcc (time_put::put): Absolutely
- avoid dereferencing end iterators; clean up.
+2004-02-22 Paolo Carlini <pcarlini@suse.de>
- * include/bits/locale_facets.tcc (num_get::_M_extract_float,
- num_get::_M_extract_int): Minor tweak.
+ * include/bits/locale_facets.tcc (money_put<>::_M_insert):
+ Restructure formatting of value component, first dealing with
+ the non-decimal digits; use reserve.
-2003-10-29 Paolo Carlini <pcarlini@suse.de>
+2004-02-22 Paolo Carlini <pcarlini@suse.de>
- * include/bits/locale_facets.tcc: Remove some unnecessary
- includes.
- * config/locale/generic/c_locale.cc: Include <cerrno> here.
- * config/locale/gnu/c_locale.cc: Likewise.
+ * include/bits/locale_facets.h (class money_get): Inherit
+ from money_base too; tweak declaration of _M_extract, now
+ parameterized on _Intl too.
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract):
+ Update definition to use the cache; call reserve on __res to
+ avoid multiple reallocations; fix parsing of sign component
+ according to 22.2.6.1.2, p3.
+ (money_get<>::do_get(long double&),
+ money_get<>::do_get(string_type&)): Update calls of _M_extract.
+ * src/locale-inst.cc: Add instantiations of
+ money_get::_M_extract<false> and money_get::_M_extract<true>.
+ * testsuite/22_locale/money_get/get/char/14.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/14.cc: Ditto.
-2003-10-28 Paolo Carlini <pcarlini@suse.de>
+2004-02-21 Mark Mitchell <mark@codesourcery.com>
- * include/bits/locale_facets.tcc
- (money_get<>::do_get(..., string_type&)): Absolutely avoid
- dereferencing end iterators; general clean up.
+ * libsupc++/vterminate.cc
+ (__gnu_cxx::__verbose_terminate_handler): Guard against recursive
+ calls to terminate.
+ * src/demangle.cc (__cxa_demangle): Wrap in try-catch block.
-2003-10-28 Paolo Carlini <pcarlini@suse.de>
+ * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
+ not set RLIMIT_AS on HP-UX.
- * include/bits/locale_facets.tcc (time_get::_M_extract_num):
- Absolutely avoid dereferencing end iterators.
- (time_get::_M_extract_name): Likewise.
+2004-02-21 Mark Mitchell <mark@codesourcery.com>
- * include/bits/locale_facets.tcc
- (time_get::_M_extract_via_format, case 'e'): Don't try to
- be smart wrt returning the right __beg in case of parse
- error, time_get::_M_extract_num must be fixed instead.
+ * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
+ not set RLIMIT_AS on HP-UX.
-2003-10-27 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/12778
- * acinclude.m4 (GLIBCXX_CHECK_LFS): Use the C++ compiler.
- * aclocal.m4: Regenerate.
- * configure: Regenerate.
-
-2003-10-27 Benjamin Kosnik <bkoz@redhat.com>
-
- * docs/html/17_intro/TODO: Add links.
- * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
- Uncomment.
-
-2003-10-27 Paolo Carlini <pcarlini@suse.de>
+2004-02-21 Paolo Carlini <pcarlini@suse.de>
- PR libstdc++/12750
+ * include/bits/locale_facets.h (class money_base): Add { _S_minus,
+ _S_zero, _S_end } enum, _S_atoms.
+ (struct __moneypunct_cache<>): Parameterize on _Intl too; add
+ _M_grouping_size, _M_curr_symbol_size, _M_positive_sign_size,
+ _M_negative_sign_size, _M_atoms; tweak constructor consistently.
+ (__moneypunct_cache<>::~__moneypunct_cache): Update.
+ (__moneypunct_cache<>::_M_cache): Fill the cache.
+ (class moneypunct): Tweak __cache_type typedef.
+ (class money_put): Inherit from money_base too; tweak declaration
+ of _M_insert, now parameterized on _Intl.
* include/bits/locale_facets.tcc
- (time_get::_M_extract_via_format): Deal with code 'e'.
- * testsuite/22_locale/time_get/get_date/char/12750.cc: New.
- * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Ditto.
-
- * include/bits/locale_facets.tcc
- (time_get::_M_extract_via_format): Tweak to absolutely avoid
- dereferencing end iterators.
-
- * include/bits/locale_facets.h (__verify_grouping):
- Const-ify second parameter.
- * include/bits/locale_facets.tcc (__verify_grouping): Ditto.
- * src/locale-inst.cc (__verify_grouping): Ditto.
-
-2003-10-27 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (num_get::_M_extract_float):
- Various things: 1- Avoid absolutely end iterator dereferences;
- 2- Improve performance-wise the code skipping leading zeros;
- 3- Fix two bugs wrt early bail out in case of parsing errors
- (see testcases); 4- General clean up.
- (num_get::_M_extract_int): Likewise, except 3-. Additionally,
- use __builtin_expect to favor base 10 inputs.
- * testsuite/22_locale/num_get/get/char/7.cc: New.
- * testsuite/22_locale/num_get/get/wchar_t/7.cc: Ditto.
-
-2003-10-26 Paolo Carlini <pcarlini@suse.de>
-
- * testsuite/22_locale/money_put/put/char/1.cc: Clean up.
- * testsuite/22_locale/money_put/put/wchar_t/1.cc: Ditto.
-
-2003-10-25 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (num_get::_M_extract_int):
- __pos in only incremented, never used its value, remove it.
-
-2003-10-24 Robert Millan <robertmh@gnu.org>
-
- * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add kfreebsd*-gnu
- and knetbsd*-gnu.
- * aclocal.m4: Regenerated.
- * configure: Regenerated.
-
-2003-10-24 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (money_get::do_get(...,
- long double&): Properly size the temporary buffer.
- * testsuite/22_locale/money_get/get/char/11.cc: New.
- * testsuite/22_locale/money_get/get/wchar_t/11.cc: Ditto.
+ (struct __use_cache<__moneypunct_cache<_CharT, _Intl> >): New.
+ (money_put<>::_M_insert): Update definition to use the cache;
+ call reserve on __res to avoid multiple reallocations.
+ (money_put<>::do_put(long double),
+ money_put<>::do_put(const string_type&): Update calls of _M_insert.
+ * config/locale/generic/monetary_members.cc
+ (moneypunct<char, true>::_M_initialize_moneypunct,
+ moneypunct<char, false>::_M_initialize_moneypunct,
+ moneypunct<wchar_t, true>::_M_initialize_moneypunct,
+ moneypunct<wchar_t, false>::_M_initialize_moneypunct): Update.
+ * config/locale/gnu/monetary_members.cc: Likewise.
+ * config/locale/gnu/monetary_members.cc
+ (moneypunct<wchar_t, true>::~moneypunct(),
+ moneypunct<wchar_t, false>::~moneypunct()): Likewise.
+ * src/globals_locale.cc: Tweak fake_money_cache_c.
+ * src/locale-inst.cc: Add instantiations for
+ money_put::_M_insert<false> and money_put::_M_insert<true> and
+ __moneypunct_cache<C, false>, __moneypunct_cache<C, true>.
+ * src/locale_facets.cc: Define money_base::_S_atoms.
+ * src/locale_init.cc: Update placement new of
+ __moneypunct_cache<char, false>, __moneypunct_cache<char, true>,
+ __moneypunct_cache<wchar_t, false>, __moneypunct_cache<wchar_T, true>.
+
+ * config/locale/generic/numeric_members.cc: Clean up.
+ * config/locale/gnu/numeric_members.cc: Likewise.
+ * testsuite/22_locale/money_put/put/char/1.cc: Likewise.
+ * testsuite/22_locale/money_put/put/char/2.cc: Likewise.
+ * testsuite/22_locale/money_put/put/char/3.cc: Likewise.
+ * testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
+ * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
+ * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
- * include/bits/locale_facets.tcc (num_put::_M_group_int,
- num_put::_M_group_float, money_put::do_put(..., const
- string_type&), collate::do_compare, collate::do_transform):
- Prefer basic_string::data() to c_str() when the '\0'
- terminator is not really needed.
+2004-02-20 Mark Mitchell <mark@codesourcery.com>
-2003-10-24 Paolo Carlini <pcarlini@suse.de>
+ * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Open
+ FIFO for writing with ios_base::in|ios_base::out.
+ * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
+ * testsuite/27_io/objects/char/7.cc: Likewise.
+ * testsuite/27_io/objects/char/9661-1.cc: Open FIFO for writing
+ with "r+".
+
+2004-02-19 David Edelsohn <edelsohn@gnu.org>
+
+ * 22_locale/collate/compare/wchar_t/2.cc: Change input-charset
+ from iso-8859-1 to ISO8859-1.
+ * 22_locale/collate/compare/wchar_t/wrapped_env.cc: Same.
+ * 22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same.
+ * 22_locale/collate/hash/wchar_t/2.cc: Same.
+ * 22_locale/collate/hash/wchar_t/wrapped_env.cc: Same.
+ * 22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same.
+ * 22_locale/collate/transform/wchar_t/2.cc: Same.
+ * 22_locale/collate/transform/wchar_t/wrapped_env.cc: Same.
+ * 22_locale/collate/transform/wchar_t/wrapped_locale.cc: Same.
+
+2004-02-18 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.h (money_get<>::_M_extract):
+ New, helper for do_get.
+ (money_put<>::_M_insert): Likewise, for do_put.
+ * include/bits/locale_facets.tcc (money_get<>::_M_extract,
+ money_put<>::_M_insert): Define.
+ (money_get<>::do_get(long double&), money_get<>::do_get(
+ string_type&), money_put::do_put(long double),
+ money_put::do_put(const string_type&)): Use the helpers.
+
+2004-02-18 Paolo Carlini <pcarlini@suse.de>
+
+ * config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
+ Rewrite, avoiding recursion.
+ (__gnu_internal::xwrite): Minor tweaks.
+
+2004-02-17 Stefan Olsson <stefan@xapa.se>
+
+ * include/ext/mt_allocator.h: Removed the last
+ pointer. Deallocated blocks are now added to the front of
+ freelists as proposed by Felix Yen. This gives roughly 10%
+ performance boost and saves some memory.
+ * docs/html/ext/mt_allocator.html: Change due to that deallocated
+ blocks now are added to the front of freelists. The reason to this
+ approach is also explained.
+
+2004-02-17 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
+ num_get<>::_M_extract_int, money_get<>::do_get): Simplify
+ grouping fidelity conditional.
+
+2004-02-16 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/basic_filebuf/overflow/char/13858.cc:
+ Qualify exception with std::.
+ * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
+
+2004-02-16 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/ext/enc_filebuf/char/13189.cc: Don't check
+ for now that the catch block is not reached.
+ * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
+
+2004-02-16 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
+ Fix parsing of the remaining sign characters.
+ * 22_locale/money_get/get/char/2.cc: Tweak: now, correctly,
+ the input is scanned 'til eof.
+ * 22_locale/money_get/get/char/4.cc: Likewise.
+ * 22_locale/money_get/get/wchar_t/2.cc: Likewise.
+ * 22_locale/money_get/get/wchar_t/4.cc: Likewise.
+ * 22_locale/money_get/get/char/8.cc: Tweak: override do_neg_format,
+ not do_pos_format: the former is the only one that matters during
+ input.
+ * 22_locale/money_get/get/wchar_t/8.cc: Likewise.
+
+ * 22_locale/money_get/get/char/6.cc: Minor tweak.
+ * 22_locale/money_get/get/wchar_t/6.cc: Likewise.
+
+2004-02-15 David Asher <david.asher@cavium.com>
+
+ PR libstdc++/11352
+ * include/bits/locale_facets.tcc (__pad<>::_S_pad): Don't
+ access __olds beyond __oldlen.
+
+2004-02-14 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Make
+ sure the exception is actually thrown.
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
+
+2004-02-14 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13858
+ * include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external):
+ In case of conversion errors, throw ios_failure; simplify.
+ * testsuite/27_io/basic_filebuf/overflow/char/13858.cc: New.
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Tweak,
+ previously we didn't throw in case of conversion errors, instead
+ just returned eof().
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
+
+ * include/bits/fstream.tcc (basic_filebuf<>::overflow):
+ Trivial simplification of a conditional.
+
+2004-02-12 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13731 (final part: writev)
+ * config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
+ New, a wrapper around writev() handling partial writes.
+ (__basic_file<char>::xwrite): Move to __gnu_internal and make
+ static.
+ (__basic_file<char>::xsputn): Update call.
+ (__basic_file<char>::xsputn_2): Likewise.
+ * config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
+ Don't declare, now static.
+
+2004-02-11 Stefan Olsson <stefan@xapa.se>
- * include/bits/locale_facets.tcc (__verify_grouping):
- Prefer '=' to an unnecessary '&='.
+ * docs/html/ext/mt_allocator.html: New.
+
+2004-02-11 Benjamin Kosnik <bkoz@redhat.com>
+
+ * docs/html/20_util/allocator.html: New file, consolidate
+ allocator information here. Revamp.
+ * docs/html/documentation.html: Change links.
+ * docs/html/20_util/howto.html: Same.
+ * docs/html/ext/howto.html: Same.
+
+2004-02-11 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13731 (first part: write)
+ * config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
+ New, declare.
+ * config/io/basic_file_stdio.cc (__basic_file<char>::xwrite):
+ Define it: a wrapper around write() handling partial write.
+ (__basic_file<char>::xsputn): Use it.
+ (__basic_file<char>::xsputn_2): Likewise.
-2003-10-24 Paolo Carlini <pcarlini@suse.de>
+2004-02-11 Paolo Carlini <pcarlini@suse.de>
+ Petur Runolfsson <peturr02@ru.is>
- * include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
- Tweak my fix for libstdc++/12657.
+ PR libstdc++/14078
+ * include/std/std_istream.h (operator>>(__istream_type& (*)
+ (__istream_type&)), operator>>(__ios_type& (*)(__ios_type&)),
+ operator>>(ios_base& (*)(ios_base&))): Declare inline.
+ * include/std/std_ostream.h (operator<<(__ostream_type& (*)
+ (__ostream_type&)), operator<<(__ios_type& (*)(__ios_type&)),
+ operator<<(ios_base& (*) (ios_base&))): Likewise.
+ * testsuite/performance/27_io/fmtflags_manipulators.cc: New.
-2003-10-24 Paolo Carlini <pcarlini@suse.de>
+2004-02-10 Loren J. Rittle <ljrittle@acm.org>
- * include/bits/locale_facets.tcc (money_get::do_get(...,
- string_type&): Minor tweak to the previous commit.
+ PR libstdc++/14098
+ * config/linker-map.gnu: Add typeinfo and typeinfo name for
+ __gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >.
-2003-10-24 Paolo Carlini <pcarlini@suse.de>
+ PR libstdc++/14097
+ * config/linker-map.gnu: Add typeinfo and typeinfo name for
+ __gnu_cxx::stdio_filebuf<char, std::char_traits<char> >.
- * include/bits/locale_facets.tcc (money_get::do_get(...,
- string_type&): Disregard the previous commit: doesn't hurt but
- doesn't accomplish anything useful either. This is the right
- one, speeding up greatly the function in case of early fail.
+2004-02-09 Loren J. Rittle <ljrittle@acm.org>
-2003-10-24 Paolo Carlini <pcarlini@suse.de>
+ * include/ext/pool_allocator.h: Include c++config.h.
- * include/bits/locale_facets.tcc (money_get::do_get(...,
- string_type&): Move an if block, thus minimizing the amount
- of code processed anyway when __tmp_units.size() == 0.
+2004-02-09 Stefan Olsson <stefan@xapa.se>
-2003-10-24 Paolo Carlini <pcarlini@suse.de>
+ * include/ext/mt_allocator.h: thread_id is unused in non threaded
+ applications and now has a ifdef to remove it completely on
+ compilers without thread support. Include stdlib.h due to a
+ compiler warning on getenv().
- * include/bits/locale_facets.tcc
- (time_get<>::_M_extract_via_format): Deal with case 'C' too,
- equivalent to 'y'.
-
-2003-10-23 Benjamin Kosnik <bkoz@redhat.com>
-
- * docs/html/documentation.html: Add a pointer to the doxygen style
- guide.
- * docs/html/17_intro/TODO: Update.
- * docs/html/test.html: Add instructions for running a subset of
- tests, update.
-
-2003-10-23 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (money_get<>::do_get(...,
- string_type&)): Use find_first_not_of to strip leading
- zeros; if __tmp_units == "0" never prefix it with '-';
- always fail if __tmp_units is empty.
- * testsuite/22_locale/money_get/get/char/10.cc: New.
- * testsuite/22_locale/money_get/get/wchar_t/10.cc: Ditto.
-
-2003-10-23 Phil Edwards <phil@codesourcery.com>
-
- * config/os/vxworks/ctype_noninline.h: Adjust ctor to match
- 2003-10-21 change.
-
-2003-10-22 Paolo Carlini <pcarlini@suse.de>
-
- * include/bits/locale_facets.tcc (__int_to_char): Remove
- the const int parameter.
- (_M_insert_int): Update caller.
- * src/locale-inst.cc (__int_to_char): Update instantiations.
-
-2003-10-22 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/locale_facets.h: Correct byname facets for "C"
- locale.
- * config/locale/generic/ctype_members.cc: Same.
- * config/locale/generic/messages_members.h: Same.
- * config/locale/gnu/ctype_members.cc: Same.
- * config/locale/gnu/messages_members.h: Same.
- * include/bits/codecvt.h: Same.
- * src/ctype.cc: Same.
- * testsuite/22_locale/codecvt_byname/1.cc: New.
- * testsuite/22_locale/collate/1.cc: Edit.
- * testsuite/22_locale/collate_byname/1.cc: Derivation tests, move to...
- * testsuite/22_locale/collate_byname/named_equivalence.cc: ...here.
- * testsuite/22_locale/ctype/1.cc: Derivation tests.
- * testsuite/22_locale/ctype/11844.cc: Move...
- * testsuite/22_locale/ctype_base/11844.cc: ...here.
- * testsuite/22_locale/ctype_base/1.cc: Move mask bits here.
- * testsuite/22_locale/ctype_byname/1.cc: Name.
- * testsuite/22_locale/messages_byname/1.cc: New.
- * testsuite/22_locale/messages_byname/named_equivalence.cc: New.
- * testsuite/22_locale/moneypunct_byname/1.cc: Derivation test.
- * testsuite/22_locale/moneypunct_byname/named_equivalence.cc: New.
- * testsuite/22_locale/numpunct/1.cc: Edit.
- * testsuite/22_locale/numpunct_byname/2.cc: Move...
- * testsuite/22_locale/numpunct/members/char/3.cc: ...here.
- * testsuite/22_locale/numpunct_byname/1.cc: Derivation tests.
- * testsuite/22_locale/numpunct_byname/named_equivalence.cc: New.
-
-2003-10-22 Paolo Carlini <pcarlini@suse.de>
-
- PR libstdc++/8610
- * acinclude.m4 (GLIBCXX_CHECK_INT64_T): New macro,
- checking for the availability of int64_t.
- (GLIBCXX_CHECK_LFS): New macro, checking for LFS support.
- * configure.ac: Call here.
- * acconfig.h: Add undef for the corresponding symbols.
- * config/io/basic_file_stdio.cc (__basic_file<char>::open):
- Depending on _GLIBCXX_USE_LFS, call fopen64 or fopen.
- (__basic_file<char>::seekoff): Likewise, call lseek64 when
- available, otherwise lseek, checking the __off parameter.
- * include/bits/postypes.h: Typedef __streamoff_base_type
- to int64_t if available, otherwise long long.
- * aclocal.m4: Regenerate.
- * config.h.in: Likewise.
- * configure: Likewise.
+2004-02-09 Paul Brook <paul@codesourcery.com>
- * acinclude.m4 (GLIBCXX_CHECK_POLL, GLIBCXX_CHECK_WRITEV):
- Use AC_TRY_LINK instead of AC_TRY_COMPILE.
-
-2003-10-22 Paolo Carlini <pcarlini@suse.de>
+ * libstdc++-v3/configure.host: Explicitly check for atomicity.h file.
- PR libstdc++/12657
- * include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
- Implement resolution of DR 292 (WP).
- * docs/html/ext/howto.html: Add entry for DR 292.
+2004-02-09 Paolo Carlini <pcarlini@suse.de>
-2003-10-21 Benjamin Kosnik <bkoz@redhat.com>
+ PR libstdc++/14071
+ * src/locale_init.cc (locale::global(const locale&)): Use
+ locale::name() in order to decide whether calling setlocale.
+ * testsuite/22_locale/locale/global_locale_objects/14071.cc: New.
- * include/ext/mt_allocator.h: Change include to gthr.h.
- * include/ext/rope: Same. Add _Refcount_base definitions.
- * include/ext/pool_allocator.h: Adjust namespaces.
- * include/bits/stl_threads.h (_Refcount_base): Move.
- Put remaining into namespace __gnu_cxx.
-
-2003-10-21 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/9858
- * include/bits/locale_facets.h (ctype<char>): Remove
- __ctype_abstract_base.
- (ctype<char>::do_is): Remove.
- (ctype<char>::do_scan_is): Remove.
- * src/ctype.cc: Same. Inline the rest.
- * testsuite/22_locale/ctype/is/char/9858.cc: New.
- * config/os/aix/ctype_noninline.h: Adjust ctor.
- * config/os/bsd/freebsd/ctype_noninline.h: Same.
- * config/os/bsd/netbsd/ctype_noninline.h: Same.
- * config/os/djgpp/ctype_noninline.h: Same.
- * config/os/generic/ctype_noninline.h: Same.
- * config/os/gnu-linux/ctype_noninline.h: Same.
- * config/os/hpux/ctype_noninline.h: Same.
- * config/os/irix/irix5.2/ctype_noninline.h: Same.
- * config/os/irix/irix6.5/ctype_noninline.h: Same.
- * config/os/mingw32/ctype_noninline.h: Same.
- * config/os/newlib/ctype_noninline.h: Same.
- * config/os/qnx/qnx6.1/ctype_noninline.h: Same.
- * config/os/solaris/solaris2.5/ctype_noninline.h: Same.
- * config/os/solaris/solaris2.6/ctype_noninline.h: Same.
- * config/os/solaris/solaris2.7/ctype_noninline.h: Same.
- * config/os/windiss/ctype_noninline.h: Same.
-
-2003-10-21 Paolo Carlini <pcarlini@suse.de>
-
- * src/locale.cc: Tweak a comment.
- * src/localename.cc: Move a comment.
-
-2003-10-20 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/10081
- * testsuite_hooks.h: Add pod_type, ctype and numpunct specializations.
- * testsuite_hooks.cc: Same.
- * 22_locale/numpunct/members/pod/1.cc: Edit.
- * 22_locale/numpunct/members/pod/2.cc: Same.
- * 27_io/basic_istream/sentry/char/3983-fstream.cc: Move ...
- * 27_io/basic_istream/sentry/char/3983-sstream.cc: Move ...
- * 27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc: Here.
- * 27_io/basic_istream/extractors_character/pod/3983-2.cc: Here.
- * 27_io/basic_istream/extractors_other/pod/3983-3.cc: Here.
- * 27_io/basic_ostream/sentry/char/3983-fstream.cc: Remove.
- * 27_io/basic_ostream/sentry/char/3983-sstream.cc: Remove.
- * 27_io/basic_istream/sentry/pod/1.cc: New.
- * 27_io/basic_ostream/sentry/pod/1.cc: New.
- * 21_strings/basic_string/inserters_extractors/pod/10081-in.cc: New.
- * 21_strings/basic_string/inserters_extractors/pod/10081-out.cc: New.
-
-2003-10-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/cpu/mips/atomicity.h (__atomic_add): Use _ABIO32 instead
- of external _MIPS_SIM_ABI32.
-
-2003-10-20 Phil Edwards <phil@codesourcery.com>
-
- * configure.ac: Fix comment typo.
- * configure.host: Add vxworks to host_os switch.
- * crossconfig.m4: Remove old commented os_include_dir variables
- left over from autotools transition.
- (*-vxworks): New stanza.
- (*-windiss): Add missing symbols.
- * configure: Regenerate.
- * config/os/vxworks/ctype_base.h, config/os/vxworks/ctype_inline.h,
- config/os/vxworks/ctype_noninline.h, config/os/vxworks/os_defines.h:
- New files.
- * config/os/windiss/os_defines.h: Define __C9X__.
-
-2003-10-19 David Edelsohn <edelsohn@gnu.org>
-
- PR other/12506
- * configure.host (aix4,aix*): Define os_include_dir to os/generic.
-
-2003-10-18 Andreas Tobler <a.tobler@schweiz.ch>
-
- * src/locale.cc (locale::_S_initialize): Re-apply workaround a
- confusion of the use of the gthr API when __gthread_active_p()
- returns true.
-
-2003-10-17 Benjamin Kosnik <bkoz@redhat.com>
-
- * src/Makefile.am: Add new files.
- * src/Makefile.in: Regenerate.
- * src/globals.cc: Split into..
- * src/globals_io.cc: New.
- * src/globals_locale.cc: New.
- * src/ios.cc: Split into...
- * src/ios_init.cc: New.
- * src/ios_locale.cc: New.
- * src/locale-inst.cc: Split into..
- * src/wlocale-inst.cc: New.
- * src/locale-misc-inst.cc: New.
- * src/locale.cc, src/localename: Split into...
- * src/locale_facets.cc: New.
- * src/locale_init.cc: New.
- * src/wstring-inst.cc: Add copyright info.
-
-2003-10-16 Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/11450
- PR libstdc++/11543
- PR libstdc++/12065
- * config/io/basic_file_stdio.cc (__basic_file::seekoff):
- Change return value from streampos to streamoff.
- (__basic_file::seekpos): Delete.
- * config/io/basic_file_stdio.h: Same.
- * config/io/c_io_stdio.h: Remove streamoff and wstreamsize typedefs.
- * include/Makefile.am (bits_headers): Add bits/postypes.h.
- * include/bits/char_traits.h: Include bits/postypes.h instead of
- bits/fpos.h.
- * include/bits/fstream.tcc (basic_filebuf::open,
- basic_filebuf::pbackfail): Don't use < or >= to compare pos_type
- values, use == and != instead.
- (basic_filebuf::_M_seek): Use explicit conversion from streamoff
- to pos_type.
- (basic_filebuf::imbue): Don't use ! on pos_type values, use
- == instead. Don't use __check_facet(_M_codecvt) unless is_open().
- * include/bits/postypes.h: New file.
- Add __streamoff_base_type typedef, streamsize.
- (streamoff, streampos, wstreampos): Define typedefs, with
- streamoff defined as...
- (streamoff): New class. Document implementation defined
- aspects.
- (fpos): New implementation. Document implementation defined
- aspects.
- * include/bits/sstream.tcc (basic_stringbuf::seekpos): Use
- explicit conversion from pos_type to off_type.
- * include/std/std_iosfwd.h: Include bits/postypes.h instead
- of bits/fpos.h.
- * testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: New test.
- * testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: New test.
- * testsuite/27_io/fpos/11450.cc: New test.
- * testsuite/27_io/fpos/mbstate_t/12065.cc: New test.
- * testsuite/27_io/fpos/mbstate_t/4_neg.cc: New test.
- * testsuite/27_io/types/3.cc: New test.
-
-2003-10-16 Benjamin Kosnik <bkoz@redhat.com>
-
- * configure.host: Remove fpos_include_dir.
- * configure.ac: Remove FPOS_INC_SRCDIR.
- * configure: Regenerate.
- * acinclude.m4 (GLIBCXX_ENABLE_CSTDIO): Remove FPOS_H.
- * aclocal.m4: Regenerate.
- * include/Makefile.am (host_headers): Remove fpos.h.
- (bits_headers): Add postypes.h.
- * include/Makefile.in: Regenerate.
- * config/os/gnu-linux/fposh: Remove.
- * config/os/generic/fpos.h: Remove.
-
- * testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Fixup.
- * testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Same.
- * testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Same.
- * testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Same.
- * testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Same.
- * testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Same.
- * testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Same.
- * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Same.
- * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Same.
- * testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Same.
- * testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Same.
- * testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Same.
- * testsuite/27_io/basic_istream/seekg/char/2.cc: Same.
- * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Same.
- * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Same.
- * testsuite/27_io/fpos/mbstate_t/3.cc: Same.
- * testsuite/27_io/objects/char/10.cc: Same.
-
-2003-10-16 Paolo Carlini <pcarlini@suse.de>
-
- * src/locale.cc (locale::locale(const char*)): ... one
- more comparison missed in the previous commit.
-
-2003-10-16 Benjamin Kosnik <bkoz@redhat.com>
-
- * acconfig.h: Add HAVE_DRAND48.
- * crossconfig.m4: Remove ISATTY.
- * aclocal.m4: Regenerated.
- * config.h.in: Regenerated.
- * configure: Regenerated.
-
-2003-10-16 Bernardo Innocenti <bernie@develer.com>
+ * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name()):
+ Avoid computing &= unnecessarily.
- * config/cpu/m68k/atomicity.h (__exchange_and_add): Use TAS on
- __mcf5400__. Don't rely on __mc68000__ to detect a bare 68000.
- Document SMP safeness of asm macros.
+2004-02-09 James E Wilson <wilson@specifixinc.com>
-2003-10-16 Paolo Carlini <pcarlini@suse.de>
+ PR libstdc++/5625
+ * libsuspc++/eh_personality.cc (PERSONALITY_FUNCTION): Use
+ __builtin_extend_pointer.
- * src/locale.cc (locale::locale(const char*)): Tweak
- a couple of comparisons to use basic_string operators.
+2004-02-09 Paolo Carlini <pcarlini@suse.de>
-2003-10-16 Paolo Carlini <pcarlini@suse.de>
+ PR libstdc++/14072
+ * include/bits/basic_ios.tcc (basic_ios<>::_M_cache_locale):
+ Don't leave dangling pointers.
+ * testsuite/27_io/basic_ios/imbue/14072.cc: New.
+ * testsuite/22_locale/numpunct/members/pod/2.cc: Tweak, the num_put
+ facet is needed in the final test.
- PR libstdc++/12540
- * config/locale/gnu/monetary_members.cc
- (moneypunct<wchar_t, true/false>::_M_initialize_moneypunct):
- Don't leak memory if new throws.
- * src/locale.cc (locale::locale(const char*)): In order not
- to leak memory in case new throws, use a basic_string type
- for __res too and avoid strdup.
+2004-02-09 Bernardo Innocenti <bernie@develer.com>
-2003-10-14 Jeff Bailey <jbailey@nisa.net>
-
- PR libstdc++/12562
- * crossconfig.m4: Share the config between *-linux* and *-gnu*.
+ * crossconfig.m4: Don't enable _GLIBCXX_USE_LFS on *-uclinux*.
* configure: Regenerate.
-2003-10-14 Carlo Wood <carlo@alinoe.com>
-
- PR libstdc++/12600
- * include/bits/demangle.h (session<Allocator>::
- decode_unqualified_name(string_type& output)): Fail on a
- <operator-name> when decoding <template-argument>.
- * testsuite/demangle/regression/cw-15.cc: New.
-
-2003-10-14 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/11480
- * include/bits/stl_algo.h (unique): Fix.
- * testsuite/25_algorithms/unique.cc: Move to unique/1.cc.
- * testsuite/25_algorithms/unique/11480.cc: New, from the PR.
- * testsuite/25_algorithms/unique/2.cc: New.
-
-2003-10-14 Paolo Carlini <pcarlini@unitus.it>
-
- * src/localename.cc (_M_replace_categories, M_replace_facet):
- Const-ify a couple of variables.
-
-2003-10-14 Petur Runolfsson <peturr02@ru.is>
- Andreas Tobler <a.tobler@schweiz.ch>
-
- * src/locale.cc (locale::_S_initialize): Workaround a confusion
- of the use of the gthr API when __gthread_active_p() returns true.
-
-2003-10-12 Petur Runolfsson <peturr02@ru.is>
- Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/11460
- * src/strstream.cc (pbackfail): Fix to use to_int_type.
- * testsuite/backward/11460.cc: New, from the PR.
-
-2003-10-12 Paolo Carlini <pcarlini@unitus.it>
-
- * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
- Change #ifdef _GLIBCXX_RESOLVE_LIB_DEFECTS to a comment.
- * include/bits/basic_string.tcc: Likewise.
- * include/bits/ios_base.h: Likewise.
- * include/bits/istream.tcc: Likewise.
- * include/bits/locale_facets.tcc: Likewise.
- * include/bits/ostream.tcc: Likewise.
- * include/bits/stl_function.h: Likewise.
- * include/bits/stl_multiset.h: Likewise.
+2004-02-08 Richard Henderson <rth@redhat.com>
+
+ PR libstdc++/14026
+ * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust
+ uncaughtExceptions during nested catch rethrow.
+ * testsuite/18_support/14026.cc: New.
+
+2004-02-08 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (assign(const _CharT*, size_type)):
+ When working in place remember to set the state to sharable
+ (otherwise, _M_mutate does it).
+
+2004-02-08 Bernardo Innocenti <bernie@develer.com>
+
+ * include/bits/allocator.h, include/bits/basic_ios.h,
+ include/bits/basic_ios.tcc, include/bits/basic_string.h,
+ include/bits/basic_string.tcc, include/bits/boost_concept_check.h,
+ include/bits/char_traits.h, include/bits/codecvt.h,
+ include/bits/concurrence.h, include/bits/cpp_type_traits.h,
+ include/bits/demangle.h, include/bits/deque.tcc,
+ include/bits/fstream.tcc, include/bits/functexcept.h,
+ include/bits/gslice.h, include/bits/gslice_array.h,
+ include/bits/indirect_array.h, include/bits/ios_base.h,
+ include/bits/istream.tcc, include/bits/list.tcc,
+ include/bits/locale_classes.h, include/bits/locale_facets.h,
+ include/bits/locale_facets.tcc, include/bits/localefwd.h,
+ include/bits/mask_array.h, include/bits/ostream.tcc,
+ include/bits/postypes.h, include/bits/slice_array.h,
+ include/bits/sstream.tcc, include/bits/stl_algo.h,
+ include/bits/stl_algobase.h, include/bits/stl_bvector.h,
+ include/bits/stl_construct.h, include/bits/stl_deque.h,
+ include/bits/stl_function.h, include/bits/stl_heap.h,
+ include/bits/stl_iterator.h, include/bits/stl_iterator_base_funcs.h,
+ include/bits/stl_list.h, include/bits/stl_map.h,
+ include/bits/stl_multimap.h, include/bits/stl_multiset.h,
+ include/bits/stl_numeric.h, include/bits/stl_pair.h,
+ include/bits/stl_queue.h, include/bits/stl_raw_storage_iter.h,
+ include/bits/stl_relops.h, include/bits/stl_set.h,
+ include/bits/stl_stack.h, include/bits/stl_tempbuf.h,
+ include/bits/stl_threads.h, include/bits/stl_tree.h,
+ include/bits/stl_uninitialized.h, include/bits/stl_vector.h,
+ include/bits/stream_iterator.h, include/bits/streambuf.tcc,
+ include/bits/streambuf_iterator.h,include/bits/stringfwd.h,
+ include/bits/type_traits.h, include/bits/valarray_after.h,
+ include/bits/valarray_array.h, include/bits/valarray_array.tcc,
+ include/bits/valarray_before.h, include/bits/vector.tcc: Remove
+ trailing whitespace.
+
+2004-02-06 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h: Fix comment.
+
+2004-02-06 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/stl_construct.h: Wrap overlong lines, reformat
+ according to the coding standards.
* include/bits/stl_pair.h: Likewise.
- * include/bits/stl_set.h: Likewise.
- * include/bits/streambuf_iterator.h
- * include/std/std_iosfwd.h: Likewise.
- * include/std/std_istream.h: Likewise.
- * include/std/std_sstream.h: Likewise.
- * include/std/std_streambuf.h: Likewise.
- * src/ios.cc: Likewise.
- * include/bits/c++config:
- Comment out #define _GLIBCXX_RESOLVE_LIB_DEFECTS 1.
- * testsuite/27_io/ios_base/cons/assign_neg.cc: Tweak a
- dg-error directive due to removal of a blank line.
- * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
-
-2003-10-12 Andreas Tobler <a.tobler@schweiz.ch>
- Paolo Carlini <pcarlini@unitus.it>
+ * include/bits/stl_raw_storage_iter.h: Likewise.
+ * include/bits/stl_stack.h: Likewise.
+ * include/bits/stl_uninitialized.h: Likewise.
+ * include/bits/stream_iterator.h: Likewise.
+ * include/bits/streambuf_iterator.h: Likewise.
+ * include/bits/type_traits.h: Likewise.
- PR libstdc++/11844/11740 (cont)
- * config/os/generic/ctype_inline.h (ctype<char>::is):
- Generically, use a bitmasksize of 15 (instead of 10);
- Fix the logic to actually return (M & m) != 0 as per
- 22.2.1.1.2.
+2004-02-06 Paolo Carlini <pcarlini@suse.de>
-2003-10-11 Bernardo Innocenti <bernie@develer.com>
+ * testsuite/27_io/basic_filebuf/open/char/9507.cc:
+ Adjust timings.
- * crossconfig.m4 (*-uclinux*): New target.
- * configure: Regenerate.
+2004-02-05 Loren J. Rittle <ljrittle@acm.org>
-2003-10-10 Paolo Carlini <pcarlini@unitus.it>
+ * scripts/check_performance: Support PCH.
- * include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT))
- Avoid unnecessarily calling __builtin_alloca and dealing
- explicitly with width() smaller than zero.
- (operator<<(basic_ostream&, char), operator<<(basic_ostream&,
- const _CharT*), operator<<(basic_ostream<_CharT, _Traits>&,
- const char*), operator<<(basic_ostream<char, _Traits>&,
- const char*), operator<<(basic_ostream, const basic_string&)):
+ * scripts/check_performance (CXX): Add -DNOTHREAD.
+ * testsuite/performance/20_util/allocator/insert.cc: Integrate
+ threaded tests from insert_insert.cc. Tweak iterations,
+ remove special cases.
+ * testsuite/performance/20_util/allocator/insert_insert.cc:
+ Make all tests single-threaded. Tweak iterations.
+ * testsuite/performance/20_util/allocator/map_thread.cc:
+ Tweak iterations.
+ * testsuite/performance/20_util/allocator/producer_consumer.cc:
Likewise.
-2003-10-09 Benjamin Kosnik <bkoz@redhat.com>
-
- * config/linker-map.gnu: Make more *_type_info bits visible.
- Move new/delete bits back into GLIBCXX space.
-
- * include/bits/locale_classes.h: Move _M_id out of line, so that
- locale::id::_S_highwater can be removed from the export list.
- * src/locale.cc (locale::id::_M_id): Define.
-
-2003-10-09 Andreas Tobler <a.tobler@schweiz.ch>
-
- * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_64 for
- SPARC64.
-
-2003-10-09 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/11844
- * config/os/aix/ctype_base.h: Fix 'alnum' and 'graph'
- to conform to the requirements of 22.2.1.
- * config/os/bsd/freebsd/ctype_base.h: Likewise.
- * config/os/djgpp/ctype_base.h: Likewise.
- * config/os/generic/ctype_base.h: Likewise.
- * config/os/gnu-linux/ctype_base.h: Likewise.
- * config/os/hpux/ctype_base.h: Likewise.
- * config/os/irix/irix6.5/ctype_base.h: Likewise.
- * config/os/solaris/solaris2.6/ctype_base.h: Likewise.
- * config/os/solaris/solaris2.7/ctype_base.h: Likewise.
- * testsuite/22_locale/ctype/11844.cc: New.
-
- * config/locale/generic/ctype_members.cc (do_is):
- Generically, use a bitmasksize of 15 (instead of 10), since
- we don't know the numerical encoding of the various categories
- in the underlying /usr/include/ctype.h.
-
-2003-10-09 Benjamin Kosnik <bkoz@redhat.com>
-
- * src/string-inst.cc: Prune.
- * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
- * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
-
-2003-10-09 Petur Runolfsson <peturr02@ru.is>
-
- * src/io-inst.cc: Don't include iostream.
- * include/bits/ios_base.h (ios_base::failure): Use string.
- * src/Makefile.am: Add ios_failure.cc.
- * src/Makefile.in: Regenerate.
- * src/ios.cc: Move ios_base::failure definitions to...
- * src/ios_failure.cc: ...here. New.
-
-2003-10-09 Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/9874
- * include/bits/fstream.tcc (basic_filebuf::seekoff):
- Move code needed for both seekoff and seekpos...
- (basic_filebuf::_M_seek): ...here. New function.
- (basic_filebuf::seekpos): Don't call seekoff, call _M_seek.
- * include/std/std_fstream.h (basic_filebuf::_M_seek): Declare it.
- * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: New test.
-
- * testsuite/22_locale/locale/cons/12438.cc: Increase memory limit.
-
-2003-10-08 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/locale_facets.tcc: More minor cosmetic
- changes and const-ifications of some variables.
-
-2003-10-07 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/locale_facets.tcc: Minor cosmetic changes
- and const-ifications of some variables.
-
- * include/bits/locale_facets.tcc
- (money_get::do_get(..., string_type&)): Simplify an if-else.
-
-2003-10-06 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/11740
- * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_is):
- Fix to actually return (M & m) != 0 as per 22.2.1.1.2.
- * config/locale/generic/ctype_members.cc: Same.
- * testsuite/22_locale/ctype/is/wchar_t/11740.cc: New.
-
-2003-10-06 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/locale_facets.tcc (__pad<>::_S_pad):
- Improve performance-wise: avoid one traits::copy, avoid
- the __builtin_alloca, streamline.
-
-2003-10-05 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/locale_facets.tcc
- (num_put::do_put(..., bool)): Prefer ?: to if-else.
- (time_get::_M_extract_name): Qualify min with std::.
- (__pad<>::_S_pad): Constify two variables; simplify an
- if-else statement factoring out some code.
-
- * include/bits/locale_facets.tcc: Minor cosmetic changes.
-
-2003-10-04 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/locale_facets.tcc (num_get::_M_extract_float):
- Constify a couple of variables.
- (num_get::do_get(..., bool&)): Constify __c; prefer *__beg,
- ++__beg to *__beg++.
+2004-02-05 Geoffrey Keating <geoffk@apple.com>
-2003-10-04 Paolo Carlini <pcarlini@unitus.it>
- Petur Runolfsson <peturr02@ru.is>
-
- * include/ext/stdio_sync_filebuf.h: Don't include the whole
- <fstream>, only <streambuf> and <cstdio>.
-
-2003-10-04 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/12206
- * include/bits/fstream.tcc (imbue): In case a codecvt facet
- is not available, set _M_codecvt = 0.
- * testsuite/27_io/basic_filebuf/imbue/12206.cc: New.
-
-2003-10-02 Harald Boehme <boehme@informatik.hu-berlin.de>
-
- PR libstdc++/12451
- * libsupc++/cxxabi.h: Move forward declaration of __class_type_info.
-
-2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/locale_classes.h (locale::facet::_S_get_c_name): Add.
- * src/locale.cc: Define.
- * src/localename.cc: Use it.
- * config/locale/generic/time_members.h: Same.
- * config/locale/gnu/messages_members.h: Same.
- * config/locale/gnu/time_members.h: Same.
-
-2003-10-02 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/12232
- * include/bits/fstream.tcc (seekoff): Ignore the openmode
- argument; simplify.
- * config/io/basic_file_stdio.h (__basic_file<char>::seekoff,
- seekpos): Remove the openmode argument.
- * config/io/basic_file_stdio.cc (__basic_file<char>::seekoff,
- seekpos): Remove redundant placeholder for the openmode argument.
- * testsuite/27_io/basic_filebuf/seekoff/char/12232.cc: New.
- * testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Tweak.
- * testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Likewise.
- * testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Likewise.
- * testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Likewise.
-
-2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
-
- * src/locale.cc (locale::_S_initialize): Use __gthread_active_p.
- (locale::facet::_S_get_c_locale): Same.
-
-2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
-
- * config/linker-map.gnu: Export _S_get_c_locale instead of
- _S_c_locale object.
-
-2003-10-02 Petur Runolfsson <peturr02@ru.is>
-
- * config/locale/generic/c_locale.cc
- (category_names, locale::_S_categories): Const qualify.
- * config/locale/gnu/c_locale.cc: Same.
- * config/locale/generic/time_members.h (__timepunct::__timepunct):
- Copy string contents before assigning to _M_name_timepunct,
- qualify strcpy and strlen with std::.
- * config/locale/gnu/time_members.h: Same.
- * config/locale/gnu/messages_members.h (messages::messages):
- Copy string contents before assigning to _M_name_messages,
- qualify strcpy and strlen with std::.
- * config/os/gnu-linux/ctype_noninline.h
- (ctype<char>::classic_table()): Don't call locale::classic().
- * include/bits/locale_classes.h
- (locale::_S_categories): Const qualify.
- (locale::_S_once, locale::_S_initialize_once,
- locale::facet::_S_once, locale::facet::_S_initialize_once,
- locale::facet::_S_get_c_locale): Declare.
- (locale::_S_initialize): Don't define.
- (locale::facet::_S_c_locale): Make private.
- (locale::facet::_S_c_name): Same, const qualify.
- (locale::_Impl::_Impl(facet**, size_t, bool)): Drop unused
- parameters, add throw() specifier.
- * include/bits/locale_facets.h (__timepunct::_M_name_timepunct,
- messages::_M_name_messages): Const qualify.
- * src/locale.cc
- (locale::_S_once, locale::facet::_S_once): Define.
- (locale::classic): Move initialization code...
- (locale::_S_initialize_once): ...here.
- (locale::_S_initialize): Call _S_initialize_once through
- __gthread_once.
- (locale::facet::_S_initialize_once): Initialize _S_c_locale.
- (locale::facet::_S_get_c_locale): Call _S_initialize_once through
- __gthread_once before returning _S_c_locale.
- * src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool)):
- Drop unused parameters, add throw() specifier, don't initialize
- locale::facet::_S_c_locale and _S_c_name.
-
- * config/locale/generic/messages_members.h:
- Replace _S_c_locale with _S_get_c_locale().
- * config/locale/gnu/c_locale.cc: Same.
- * config/locale/gnu/messages_members.h: Same.
- * config/locale/gnu/numeric_members.cc: Same.
- * config/locale/gnu/time_members.cc: Same.
- * config/os/gnu-linux/ctype_noninline.h: Same.
- * include/bits/locale_facets.h: Same.
- * include/bits/locale_facets.tcc: Same.
- * src/codecvt.cc: Same.
- * src/ctype.cc: Same.
-
-2003-10-02 Carlo Wood <carlo@alinoe.com>
-
- * include/bits/demangle.h (demangle<Allocator>::symbol(char const*)):
- Decode symbols that start with _GLOBAL_[ID]_ differently: the
- trailing part ends with a terminating zero and is not necessarily an
- encoding.
- * src/demangle.cc (): Same.
- * testsuite/demangle/regression/cw-13.cc: Adjust for new output.
-
-2003-10-02 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/22_locale/locale/cons/12438.cc: Use
- __gnu_test::try_named_locale("").
-
-2003-10-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_0): Define.
- (GLIBCXX_CHECK_STDLIB_SUPPORT): Use it to test for lrand48
- instead of drand48.
- * acconfig.h (HAVE_DRAND48): Renamed to HAVE_LRAND48.
- * crossconfig.m4 (*-freebsd*): Define HAVE_LRAND48 instead of
- HAVE_DRAND48.
- * config.h.in, configure: Regenerate.
- * include/bits/stl_algo.h: Use _GLIBCXX_HAVE_LRAND48 to guard
- lrand48 use.
-
-2003-10-01 Nathan Myers <ncm@cantrip.org>
-
- * include/bits/locale_facets.tcc (time_put::put): Avoid
- expensive *__s++, in favor of *__s, ++__s.
-
-2003-10-01 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/locale_facets.tcc (time_put::put): Minor
- tweak to the previous commit.
-
-2003-10-01 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/12439
- * include/bits/locale_facets.tcc (time_put::put): Deal
- with the three issues pointed out by the PR.
- * testsuite/22_locale/time_put/put/char/12439_1.cc: New.
- * testsuite/22_locale/time_put/put/char/12439_3.cc: New.
- * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: New.
- * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: New.
- * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: New.
-
-2003-09-30 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/stl_algo.h: Minor cosmetic reformattings.
-
-2003-09-30 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/stl_algo.h (search_n): Tweak, to spare the
- first --__n.
-
-2003-09-30 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/22_locale/locale/cons/12352.cc: Explicitly
- qualify exception name.
-
-2003-09-30 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/12438
- * include/bits/locale_facets.tcc (locale::combine): Don't
- leak memory if _M_replace_facet throws.
- * testsuite/22_locale/locale/cons/12438.cc: New, from the PR.
-
- * include/bits/locale_classes.h (locale::locale(const locale&,
- _Facet*)): Tweak, use consistently _M_remove_reference.
-
-2003-09-30 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/12352 (cont)
- * src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
- Don't leak __cloc; don't leak if any of the _M_init_facet(...)
- calls fail.
- (locale::_Impl::_Impl(const _Impl&, size_t)): Tweak.
- (locale::_Impl::~_Impl): Don't do anything if !_M_facets,
- !_M_caches, !_M_names.
-
-2003-09-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * configure.host: Handle Solaris 2.5 micro releases explicitly.
- Remove wildcards from Solaris 2.6, 7-9: there were no
- micro releases.
- Treat Solaris 10 and up like 7-9.
-
-2003-09-29 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/stl_algo.h (search_n): Improve the previous
- fix as suggested by Martin.
-
-2003-09-29 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/12296
- * include/bits/istream.tcc (peek): Set eofbit if sgetc
- returns eof.
- * testsuite/27_io/basic_istream/peek/char/12296.cc:
- New, from the PR.
-
-2003-09-29 Nathan Myers <ncm@cantrip.org>
- Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/11400
- * include/bits/stl_algo.h (search_n):
- Use iterator_traits<>::difference_type for __n.
- * testsuite/25_algorithms/search_n/11400.cc: New, from the PR.
-
-2003-09-29 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/22_locale/locale/cons/12352.cc:
- Use __attribute__((unused)) for test.
-
-2003-09-26 Ulrich Weigand <uweigand@de.ibm.com>
-
- * testsuite/22_locale/time_put/put/char/2.cc (test_02): Allow either
- "Son" or "So" as abbreviated name for Sunday in de_DE locale.
- * testsuite/22_locale/time_put/put/wchar_t/2.cc (test_02): Likewise.
-
-2003-09-26 Brad Spencer <spencer@infointeractive.com>
-
- * testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc:
- Explicitly qualify exceptions.
- * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Same.
- * testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
- * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
- * testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
-
-2003-09-25 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/12352
- * src/localename.cc (locale::_Impl::_Impl(const _Impl&,
- size_t)): Don't leak if memory allocations for _M_facets,
- _M_caches, and _M_names fail.
- (locale::_Impl::_Impl(const char*, size_t)): Ditto.
- (locale::_Impl::_M_replace_categories(const _Impl*,
- category)): Ditto.
- (locale::_Impl::_M_install_facet(const locale::id*,
- const facet*)): Ditto.
- * include/bits/locale_classes.h (locale::locale(const locale&,
- _Facet*)): Don't leak memory.
- * testsuite/22_locale/locale/cons/12352.cc: New, from the PR.
-
- * src/localename.cc (locale::_Impl::_Impl(facet**, size_t,
- bool)): Qualify with std:: strcpy, tweak.
- * include/bits/locale_classes.h
- (locale::_Impl::_M_check_same_name): Qualify strcmp.
-
-2003-09-25 Brad Spencer <spencer@infointeractive.com>
-
- PR libstdc++/6072
- * acinclude.m4: Split out checks for vfwscanf, vswscanf, vwscanf,
- wcstof, iswblank.
- * aclocal.m4: Regenerate.
- * config.h.in: Regenerate.
- * configure: Regenerate.
- * crossconfig.m4: Add in wchar_t bits for solaris crosses.
- * config/io/basic_file_stdio.cc: Guard unistd.h.
- * include/c_compatibility/wchar.h: Guard extra wchar_t functionality.
- * include/c_std/std_cwchar.h: Same.
- * include/c_std/std_cwctype.h: Same.
-
-2003-09-25 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/11065
- * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_is): Fix.
- * config/locale/generic/ctype_members.cc: Same.
- * testsuite/22_locale/ctype/is/char/1.cc: Initialize mask.
- * testsuite/22_locale/ctype/is/wchar_t/1.cc: Same.
-
- * config/os/generic/ctype_inline.h: Update.
-
-2003-09-25 Ulrich Weigand <uweigand@de.ibm.com>
-
- * src/Makefile.am (version_dep): New variable.
- (libstdc___la_DEPENDENCIES): Use it to add dependency on
- libstdc++-symbol.ver only when using symbol versioning.
- * src/Makefile.in: Regenerate.
-
-2003-09-23 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/locale_facets.tcc: Tweak to avoid warnings.
- * testsuite/testsuite_hooks.h: Same.
- * testsuite/*/*.cc: Same.
-
-2003-09-22 Petur Runolfsson <peturr02@ru.is>
-
- * include/bits/istream.tcc (basic_istream::read,
- basic_istream::readsome, basic_istream::putback,
- basic_istream::unget, operator>>(basic_istream, CharT)):
- Avoid redundant setstate(failbit) calls when sentry::operator bool()
- returns false.
-
-2003-09-22 Carlo Wood <carlo@alinoe.com>
-
- PR libstdc++/12365
- * include/bits/demangle.h (qualifier(int, cv_qualifier_nt,
- char const*, int, int)): Remove unused identifier
- cv_qualifier for overloaded constructor.
-
-2003-09-18 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/11504
- * acinclude.m4 (GLIBCXX_EXPORT_FLAGS): Add -Wcast-qual to
- WARN_FLAGS, remove -Wno-format.
+ PR 12179
+ * .cvsignore: New.
+ * acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): Use 'gcc', not
+ 'gcc-lib'. Add comment about poorly-named variables.
* aclocal.m4: Regenerate.
* configure: Regenerate.
-2003-09-18 Petur Runolfsson <peturr02@ru.is>
-
- * config/io/basic_file_stdio.cc (sys_getc, sys_ungetc): Delete.
- * config/io/basic_file_stdio.h: Same.
- * include/std/std_fstream.h (__ctype_type): Delete.
- * include/std/std_streambuf.h (__ctype_type, __state_type): Delete.
-
-2003-09-17 Benjamin Kosnik <bkoz@redhat.com>
+2004-02-05 Paolo Carlini <pcarlini@suse.de>
- PR libstdc++/12239
- * configure.host (abi_baseline_pair): Error out on solaris2
- configurations without a minor version number.
+ * include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
+ Thousands-sep are always optional; thousands-sep are not allowed
+ after the decimal_point.
+ * testsuite/22_locale/money_get/get/char/12.cc: New.
+ * testsuite/22_locale/money_get/get/char/13.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/12.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/13.cc: New.
-2003-09-13 Phil Edwards <phil@codesourcery.com>
+ * testsuite/22_locale/money_get/get/char/1.cc: Clean-up.
+ * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
+ * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
+ * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
+ * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
- * docs/doxygen/run_doxygen: Clear GENERATE_TAGFILE entirely
- if man pages are on.
- * docs/doxygen/user.cfg.in: And here.
+ * testsuite/22_locale/money_get/get/char/9.cc: Fix citation from
+ the standard.
+ * testsuite/22_locale/money_get/get/wchar_t/9.cc: Likewise.
-2003-09-10 Daniel Jacobowitz <drow@mvista.com>
- Andreas Jaeger <aj@suse.de>
+2004-02-05 Richard Sandiford <rsandifo@redhat.com>
- PR libstdc++/12189
- * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Don't build
- abi_check if cross compiling.
- * aclocal.m4: Regenerated.
- * configure: Regenerated.
+ * config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T):
+ Define.
+ * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc): Use
+ it to decide whether FIONREAD should take an off_t or int argument.
-2003-09-10 Jeffrey D. Oldham <oldham@codesourcery.com>
+2004-02-05 Paolo Carlini <pcarlini@suse.de>
- * libsupc++/vec.cc (__cxa_vec_new2): If the allocator returns
- NULL, return NULL. This reflects a C++ ABI change 2003 Sep 05.
- (__cxa_vec_new3): Likewise.
+ * include/bits/stl_function.h: Minor formatting changes.
-2003-09-10 Petur Runolfsson <peturr02@ru.is>
+2004-02-04 Zack Weinberg <zack@codesourcery.com>
- * include/bits/fstream.tcc (basic_filebuf::seekoff):
- Use codecvt::length to handle variable-width stateless encodings
- correctly.
- * testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: New test.
- * testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: New test.
+ Revert previous change to config/abi/*/baseline_symbols.txt.
-2003-09-10 Alan Modra <amodra@bigpond.net.au>
+2004-02-04 Benjamin Kosnik <bkoz@redhat.com>
+ Zack Weinberg <zack@codesourcery.com>
- * config/io/basic_file_stdio.cc (_M_open_mode): Assign __p_mode
- rather than or'ing.
+ * config/io/basic_file_stdio.cc (__gnu_internal::fopen_mode):
+ New function.
+ (__basic_file<char>::sys_open, __basic_file<char>::open): Use it.
+ (__basic_file<char>::_M_open_mode): Delete.
+ * config/io/basic_file_stdio.cc: Delete declaration of _M_open_mode.
-2003-09-09 Alan Modra <amodra@bigpond.net.au>
+ * testsuite/27_io/basic_filebuf/close/char/9964.cc
+ * testsuite/27_io/basic_filebuf/open/char/9507.cc:
+ Correct flags to filebuf::open calls.
- * configure: Regenerate.
+ * config/abi/alpha-freebsd5/baseline_symbols.txt
+ * config/abi/alpha-linux-gnu/baseline_symbols.txt
+ * config/abi/hppa-linux-gnu/baseline_symbols.txt
+ * config/abi/i386-freebsd4/baseline_symbols.txt
+ * config/abi/i386-freebsd5/baseline_symbols.txt
+ * config/abi/i486-linux-gnu/baseline_symbols.txt
+ * config/abi/ia64-linux-gnu/baseline_symbols.txt
+ * config/abi/mips-linux-gnu/baseline_symbols.txt
+ * config/abi/sparc-freebsd5/baseline_symbols.txt
+ * config/abi/sparc-linux-gnu/baseline_symbols.txt
+ * config/abi/x86_64-linux-gnu/baseline_symbols.txt:
+ Remove entry for __basic_file<char>::_M_open_mode.
-2003-09-09 David Edelsohn <edelsohn@gnu.org>
+2004-02-04 Loren J. Rittle <ljrittle@acm.org>
- * src/ios.cc (ios_base::Init::Init): Remove unnecessary
- qualifier from _S_synced_with_stdio.
+ * testsuite/performance/20_util/allocator/insert.cc (main): Tweak.
-2003-09-09 Bernardo Innocenti <bernie@develer.com>
+2004-02-04 Felix Yen <fwy@alumni.brown.edu>
- * include/c_std/std_cstdlib.h: Avoid using missing C library symbols.
+ * testsuite/performance/20_util/producer_consumer.cc: New.
+ * testsuite/performance/20_util/allocator/insert_insert.cc: Two loops.
-2003-09-04 Petur Runolfsson <peturr02@ru.is>
+2004-02-04 Benjamin Kosnik <bkoz@redhat.com>
- PR libstdc++/9028
- * include/bits/fstream.tcc
- (basic_filebuf::_M_destroy_internal_buffer): Destroy _M_ext_buf.
- (basic_filebuf::basic_filebuf): Initialize _M_ext_buf,
- _M_ext_buf_size, _M_ext_next and _M_ext_end.
- (basic_filebuf::underflow): Handle variable-width stateless
- encodings (codecvt::encoding() == 0), including UTF-8.
- * include/std/std_fstream.h (basic_filebuf):
- Declare _M_ext_buf, _M_ext_buf_size, _M_ext_next, _M_ext_end.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: New test.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: New test.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: New test.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: New test.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: New test.
- * testsuite/27_io/objects/wchar_t/12.cc: New test.
- * testsuite/27_io/objects/wchar_t/13.cc: New test.
+ * testsuite/performance/20_util/allocator.cc: Move to..
+ * testsuite/performance/20_util/allocator/insert.cc: ...here.
+ * testsuite/performance/20_util/allocator_thread.cc: Move to...
+ * testsuite/performance/20_util/allocator/insert_insert.cc: ...here.
+ * testsuite/performance/20_util/allocator_map_thread.cc: Move to...
+ * testsuite/performance/20_util/allocator/map_thread.cc: ...here.
-2003-09-04 Jonathan Wakely <redi@gcc.gnu.org>
+2004-02-04 Jonathan Wakely <redi@gcc.gnu.org>
- * docs/html/faq/index.html: Note that a namespace alias can't be
- used when specialising templates in extension namespace.
+ * docs/html/faq/index.html: Recommend using LD_LIBRARY_PATH.
* docs/html/faq/index.txt: Regenerate.
-2003-09-03 Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/12048
- * include/ext/stdio_sync_filebuf.h
- (stdio_sync_filebuf::_M_unget_buf): Declare it.
- (stdio_sync_filebuf::stdio_sync_filebuf): Initialize _M_unget_buf.
- (stdio_sync_filebuf::uflow): Store the returned character in
- _M_unget_buf.
- (stdio_sync_filebuf::pbackfail): If argument is eof(), pass
- _M_unget_buf to syncungetc(). Set _M_unget_buf to eof().
- (stdio_sync_filebuf<char>::xsgetn): Store last read character in
- _M_unget_buf, if any, else eof().
- (stdio_sync_filebuf<wchar_t>::xsgetn: Store last read character in
- _M_unget_buf, if any, else eof().
- * testsuite/27_io/objects/char/12048.cc: Rename to...
- * testsuite/27_io/objects/char/12048-1.cc: ...this.
- * testsuite/27_io/objects/char/12048-2.cc: New test.
- * testsuite/27_io/objects/char/12048-3.cc: New test.
- * testsuite/27_io/objects/char/12048-4.cc: New test.
- * testsuite/27_io/objects/char/12048-5.cc: New test. XFAIL.
- * testsuite/27_io/objects/wchar_t/12048-1.cc: New test.
- * testsuite/27_io/objects/wchar_t/12048-2.cc: New test.
- * testsuite/27_io/objects/wchar_t/12048-3.cc: New test.
- * testsuite/27_io/objects/wchar_t/12048-4.cc: New test.
- * testsuite/27_io/objects/wchar_t/12048-5.cc: New test. XFAIL.
- * testsuite/ext/stdio_sync_filebuf_char.cc
- (test02, test03, test04, test05): New tests.
- * testsuite/ext/stdio_sync_filebuf_wchar_t.cc
- (test02, test03, test04, test05): New tests.
-
-2003-09-03 Petur Runolfsson <peturr02@ru.is>
-
- * docs/html/27_io/howto.html: setbuf(0, 0) has no effect on
- stringbuf or strstreambuf. Fix typos.
-
-2003-09-02 Phil Edwards <phil@codesourcery.com>
-
- * acinclude.m4 (GLIBCXX_ENABLE_HOSTED): #define _GLIBCXX_HOSTED
- appropriately.
- * config.h.in: Add _GLIBCXX_HOSTED.
- * libsupc++/eh_term_handler.cc: Test it here; initialize
- __terminate_handler to std::abort if freestanding.
- * aclocal.m4, configure: Regenerated.
- * docs/html/configopts.html: Document --disable-hosted-libstdcxx.
-
-2003-08-29 Nathan Myers <ncm@cantrip.org>
-
- PR libstdc++/11990
- * include/bits/locale_facets.tcc (__pad): delete dead code.
-
-2003-08-28 Alan Modra <amodra@bigpond.net.au>
-
- * configure.ac: Test $with_cross_host against $build_alias, not $build.
- * configure: Regenerate.
-
-2003-08-27 Petur Runolfsson <peturr02@ru.is>
-
- * testsuite/27_io/objects/wchar_t/10.cc: Move wcout stuff...
- * testsuite/27_io/objects/wchar_t/11.cc: ...here. New file.
-
-2003-08-27 Phil Edwards <pme@gcc.gnu.org>
-
- * Makefile.am: Remove trailing whitespace. Remove needless
- "foo = @foo@" assignments. Replace direct uses of @foo@ with $(foo).
- * include/Makefile.am: Likewise.
- * libmath/Makefile.am: Likewise.
- * libsupc++/Makefile.am: Likewise.
- * po/Makefile.am: Likewise.
- * src/Makefile.am: Likewise.
- * testsuite/Makefile.am: Likewise.
-
- * Makefile.in, include/Makefile.in, libmath/Makefile.in,
- libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
- testsuite/Makefile.in: Regenerated.
-
-2003-08-27 Phil Edwards <pme@gcc.gnu.org>
-
- * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Change quoting of
- includedir.
- * aclocal.m4, configure: Regenerate.
-
-2003-08-27 Daniel Jacobowitz <drow@mvista.com>
-
- * acinclude.m4: Include no-executables.m4.
- * configure.ac: Uncomment GCC_NO_EXECUTABLES.
- * aclocal.m4: Regenerated.
- * configure: Regenerated.
-
-2003-08-27 Daniel Jacobowitz <drow@mvista.com>
-
- * acinclude.m4: Don't call AC_ISC_POSIX.
- * aclocal.m4: Regenerated.
- * configure: Regenerated.
-
-2003-08-27 Phil Edwards <pme@gcc.gnu.org>
-
- * acinclude.m4 (GLIBCXX_CONDITIONAL): New macro. Wrap
- AM_CONDITIONAL. Replace all calls to AM_CONDITIONAL with this one.
- (GLIBCXX_ENABLE_HOSTED): New macro, sets new variable is_hosted,
- used elsewhere in this file.
- (GLIBCXX_EVALUATE_CONDITIONALS): New macro...
- * configure.ac: ...called here to expand all conditionals.
- * Makefile.am: Conditionalize SUBDIRS on GLIBCXX_HOSTED.
- * include/Makefile.am: Remove redundant gxx_include_dir assignment.
- (install-freestanding-headers): New target, a subset of
- install-headers. Conditionalize install-data-local on GLIBCXX_HOSTED.
-
- * aclocal.m4, configure, Makefile.in, include/Makefile.in,
- libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
- src/Makefile.in, testsuite/Makefile.in: Regenerated.
-
-2003-08-26 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/doxygen/run_doxygen: Shell fixes. Remove hardcoded local
- pathnames from generated tag file.
-
-2003-08-26 Phil Edwards <pme@gcc.gnu.org>
-
- * Makefile.am: Add comment.
- * acinclude.m4 (GLIBCXX_CONFIGURE): Set new glibcxx_SUBDIRS and
- SUBDIRS variables.
- * configure.ac: Use them both here, instead of hardcoded lists.
-
- * fragment.am: Add STAMP varaible.
- * include/Makefile.am: Cosmetic whitespace cleanup. Use $(LN_S)
- instead of @LN_S@.
- (stamp-*): Move file creation rule outside of 'if' branches to
- ensure the stamp-* files are actually updated. Use $(STAMP).
- * src/Makefile.am: Remove now-nonexistant variable.
- * libsupc++/Makefile.am: Likewise. Snap the assignment chain
- for -prefer-pic.
- * po/Makefile.am: Include same fragment as all the others.
-
- * aclocal.m4, configure, Makefile.in, include/Makefile.in,
- libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in: Regenerated.
-
-2003-08-26 Loren J. Rittle <ljrittle@acm.org>
-
- * testsuite/data/cin_unget-1.txt: New.
- * testsuite/27_io/objects/char/12048.cc: New.
-
-2003-08-25 Zack Weinberg <zack@codesourcery.com>
-
- * config/os/hpux/os_defines.h: Unconditionally define
- _GLIBCXX_GTHREAD_USE_WEAK to 0.
-
-2003-08-19 Geoffrey Keating <geoffk@apple.com>
-
- * crossconfig.m4 (*-darwin*): Add a large and boring stanza for
- crosses to Darwin targets.
- * configure: Regenerate.
-
-2003-08-19 Petur Runolfsson <peturr02@ru.is>
-
- * include/ext/ropeimpl.h: #include <ostream> instead of <iostream>
+2004-02-04 Dhruv Matani <dhruvbird@gmx.net>
-2003-08-17 Phil Edwards <pme@gcc.gnu.org>
+ * include/ext/debug_allocator.h: _M_extra now stands for the
+ number of extra objects instead of the number of extra bytes.
+ (debug_allocator::allocate): Adjust.
+ (debug_allocator::deallocate): Adjust.
- * configure.ac: GCC_NO_EXECUTABLES was supposed to be commented
- in the patch from 3 minutes ago. Boy, is my face red.
- * configure: At least I remembered to regenerate this.
+ * include/ext/pool_allocator.h: Fix typo.
-2003-08-17 Phil Edwards <pme@gcc.gnu.org>
-
- * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Remove LIBMATH_INCLUDES
- and LIBSUPCXX_INCLUDES. Re-purpose TOPLEVEL_INCLUDES to refer to
- things from the top level.
- * configure.ac (GLIBCXX_IS_NATIVE): Determine earlier and re-order.
- Comment out the conditionals for CANADIAN and GLIBCXX_BUILD_LIBMATH
- (currently unused). Strip the fake-VPATH shell fragment from
- automake-generated rules, if present.
- * linkage.m4: Add comment.
-
- * fragment.am: New file, containing factored-out common settings.
- (AM_CPPFLAGS): Absorb the deprecated INCLUDES variable contents.
- * Makefile.am: Include fragment.am. Remove common variables.
- * include/Makefile.am: Likewise.
- * libmath/Makefile.am: Likewise.
- * libsupc++/Makefile.am: Likewise.
- * po/Makefile.am: Likewise. Print rules during check.
- * src/Makefile.am: Likewise.
- * testsuite/Makefile.am: Likewise.
-
- * aclocal.m4, configure, Makefile.in, include/Makefile.in,
- libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
- src/Makefile.in, testsuite/Makefile.in: Regenerate.
-
-2003-08-11 John Levon <levon@movementarian.org>
-
- * docs/html/ext/howto/guide.html (GLIBCXX_FORCE_NEW): Update
- remaining places for the name change from GLIBCPP_FORCE_NEW
- to GLIBCXX_FORCE_NEW
-
-2003-08-11 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/basic_ios.h: Remove *_iter typedefs, change num*
- typedefs to num_*.
- * include/bits/basic_ios.tcc: Same.
- * include/bits/istream.tcc: Same.
- * include/bits/locale_facets.h: Same.
- * include/bits/ostream.tcc: Same.
- * include/std/std_istream.h: Same.
- * include/std/std_ostream.h: Same.
- * testsuite/26_numerics/complex_inserters_extractors.cc: Fix.
-
- * include/ext/rope: Remove build warning.
-
-2003-08-11 Andreas Jaeger <aj@suse.de>
-
- * include/Makefile.am (stamp-c_base): Add dependency on stamp-bits
- to make SMP-safe.
- * include/Makefile.in: Regenerated.
-
-2003-08-11 Phil Edwards <pme@gcc.gnu.org>
-
- * acinclude.m4 (GLIBCXX_CONFIGURE): Unprecious CC and CFLAGS
- when calling AC_PROG_CC.
- * aclocal.m4, configure: Regenerate.
-
-2003-08-11 Phil Edwards <pme@gcc.gnu.org>
-
- * acinclude.m4: Properly quote variable which will be expanded
- inside makefiles. Use CXX instead of CC to extract compiler info.
- * configure.ac (AC_INIT): Use the new 4-arg form to finally get the
- correct form in PACKAGE.
- * aclocal.m4, configure: Regenerate.
-
-2003-08-08 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/Makefile.am (check-abi): Change libstdc++-v3 to libstdc++.
- (check-abi-verbose): Same.
- * testsuite/testsuite_performance.h (report_performance): Same.
-
-2003-08-08 Loren J. Rittle <ljrittle@acm.org>
-
- * testsuite/testsuite_performance.h (__FreeBSD__): Add fake mallinfo.
-
-2003-08-07 Doug Gregor <dgregor@apple.com>
+2004-02-03 Felix Yen <fwy@alumni.brown.edu>
+ Benjamin Kosnik <bkoz@redhat.com>
- * include/bits/char_traits.h (char_traits::not_eof): Match operand
- types in ? :.
+ * testsuite/performance/20_util/allocator.cc: Add map,
+ deque, set tests.
+ * testsuite/performance/20_util/allocator_thread.cc: Same.
-2003-08-07 Bernardo Innocenti <bernie@develer.com>
+2004-02-03 Paolo Carlini <pcarlini@suse.de>
- PR libstdc++/11784
- * libstdc++-v3/config/cpu/m68k/atomicity.h (__exchange_and_add):
- Replace variants with new BSET-based version.
-
-2003-08-07 Carlo Wood <carlo@alinoe.com>
+ * include/bits/basic_string.h (insert(iterator)): Remove,
+ non-standard and already scheduled for removal.
- * include/bits/demangle.h: Do not use cctype functions that depend
- on locale.
-
-2003-08-05 Phil Edwards <pme@gcc.gnu.org>
-
- * configure.in: Rename...
- * configure.ac: ...to this.
- * docs/html/17_intro/porting.texi: Update name.
-
- * docs/html/17_intro/porting.html: Regenerate.
- * config.h.in, Makefile.in, include/Makefile.in, libmath/Makefile.in,
- libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
- testsuite/Makefile.in: Regenerate (picks up new dependancy).
-
-2003-08-05 Phil Edwards <pme@gcc.gnu.org>
-
- * acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Put down the crack
- pipe, open the window to let out the fumes, redo the option-handling
- logic to properly execute the detection test.
- * aclocal.m4, configure: Regenerate.
-
-2003-08-04 Phil Edwards <pme@gcc.gnu.org>
-
- Convert to new autotools.
- * acconfig.h: Update with correct names.
- * configure.host (ATOMICITYH): Rename to atomicity_include_dir.
- (qnx6.[12]*): 'q' comes before 's', not after 'w'.
- * configure.in: Update. Split hardcoded cross-configury settings
- out to...
- * crossconfig.m4: ...here. New file. Contents untouched.
- * acinclude.m4: Reorganize and rewrite as needed. Split large
- chunks out to...
- * linkage.m4: ...here. New file. Math and stdlib linkage tests.
- Contents untouched.
- * scripts/testsuite_flags.in: Update.
-
- * Makefile.am: Remove unneeded AUTOMAKE_OPTIONS settings and other
- variables (already generated by automake).
- * include/Makefile.am: Ditto.
- * libmath/Makefile.am: Ditto.
- * libsupc++/Makefile.am: Ditto.
- * po/Makefile.am: Ditto.
- * src/Makefile.am: Ditto.
-
- * aclocal.m4: Regenerate using new versions.
- * config.h.in: Ditto.
- * configure: Ditto.
- * Makefile.in: Ditto.
- * include/Makefile.in: Ditto.
- * libmath/Makefile.in: Ditto.
- * libsupc++/Makefile.in: Ditto.
- * po/Makefile.in: Ditto.
- * src/Makefile.in: Ditto.
- * testsuite/Makefile.in: Ditto.
-
-2003-08-04 Phil Edwards <pme@gcc.gnu.org>
-
- * po/libstdc++.pot: Re-extract/regenerate.
-
-2003-08-04 Phil Edwards <pme@gcc.gnu.org>
-
- * testsuite/Makefile.am (DEJATOOL,EXPECT,RUNTEST,RUNTESTFLAGS):
- Remove unneeded variable assignments. Leave them for automake.
- * testsuite/lib/libstdc++-v3.exp: Rename...
- * testsuite/lib/libstdc++.exp: ...to this. Adjust function names
- accordingly.
- * testsuite/libstdc++-v3.dg/dg.exp: Rename...
- * testsuite/libstdc++-dg/normal.exp: ...to this. Adjust function
- names accordingly.
-
-2003-08-04 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/doxygen/guide.html: run_doxygen uses bash.
- * docs/doxygen/mainpage.html: We'll be shipping tag files.
- * docs/doxygen/run_doxygen: Tweaks and improvements.
- * docs/doxygen/user.cfg.in: Set GENERATE_TAGFILE.
- * docs/html/install.html: Update autoconf/automake requirements.
- * docs/html/test.html: Add section describing DejaGNU support.
- * docs/html/17_intro/confdeps.dot: New file, generates...
- * docs/html/17_intro/confdeps.png: ...this new file.
- * docs/html/Makefile: Generated here.
- * docs/html/17_intro/configury.html: New file.
-
-2003-07-31 Phil Edwards <pme@gcc.gnu.org>
-
- * testsuite/lib/libstdc++-v3-dg.exp: Rename...
- * testsuite/lib/libstdc++-v3.exp: ...to this.
- * testsuite/libstdc++-v3.dg/dg.exp: No special case needed now.
-
-2003-07-31 Doug Gregor <dgregor@apple.com>
-
- Add user specialization tests.
- * testsuite/23_containers/deque/1.cc: New.
- * testsuite/23_containers/list/1.cc: New.
- * testsuite/23_containers/map/1.cc: New.
- * testsuite/23_containers/multimap/1.cc: New.
- * testsuite/23_containers/multiset/1.cc: New.
- * testsuite/23_containers/set/1.cc: New.
- * testsuite/23_containers/vector/1.cc: New.
-
-2003-07-31 Benjamin Kosnik <bkoz@redhat.com>
-
- Reshuffle 23_containers testsuite.
- * 23_containers/adaptors.cc, bitset_ctor.cc,bitset_members.cc,
- bitset_shift.cc, deque_ctor.cc, deque_operators.cc,
- list_capacity.cc, list_ctor.cc, list_modifiers.cc, list_operators.cc,
- map_insert.cc, map_operators.cc, map_operators_neg.cc, multiset.cc,
- set_operators_neg.cc, vector_bool.cc, vector_capacity.cc,
- vector_ctor.cc, vector_element_access.cc, vector_modifiers.cc,
- vector_resize.cc: Split into...
- * 23_containers/bitset/cons/1.cc: New.
- * 23_containers/bitset/cons/6282.cc: New.
- * 23_containers/bitset/count/6124.cc: New.
- * 23_containers/bitset/operations/1.cc: New.
- * 23_containers/bitset/operations/2.cc: New.
- * 23_containers/bitset/test/1.cc: New.
- * 23_containers/bitset/to_ulong/1.cc: New.
- * 23_containers/deque/cons/1.cc: New.
- * 23_containers/deque/cons/2.cc: New.
- * 23_containers/deque/operators/1.cc: New.
- * 23_containers/list/capacity/1.cc: New.
- * 23_containers/list/cons/1.cc: New.
- * 23_containers/list/cons/2.cc: New.
- * 23_containers/list/cons/3.cc: New.
- * 23_containers/list/cons/4.cc: New.
- * 23_containers/list/cons/5.cc: New.
- * 23_containers/list/cons/6.cc: New.
- * 23_containers/list/cons/7.cc: New.
- * 23_containers/list/cons/8.cc: New.
- * 23_containers/list/cons/9.cc: New.
- * 23_containers/list/modifiers/1.cc: New.
- * 23_containers/list/modifiers/2.cc: New.
- * 23_containers/list/modifiers/3.cc: New.
- * 23_containers/list/operators/1.cc: New.
- * 23_containers/list/operators/2.cc: New.
- * 23_containers/list/operators/3.cc: New.
- * 23_containers/list/operators/4.cc: New.
- * 23_containers/map/insert/1.cc: New.
- * 23_containers/map/operators/1.cc: New.
- * 23_containers/map/operators/1_neg.cc: New.
- * 23_containers/multiset/insert/1.cc: New.
- * 23_containers/priority_queue/members/7161.cc: New.
- * 23_containers/queue/members/7157.cc: New.
- * 23_containers/set/operators/1_neg.cc: New.
- * 23_containers/stack/members/7158.cc: New.
- * 23_containers/vector/bool/1.cc: New.
- * 23_containers/vector/bool/6886.cc: New.
- * 23_containers/vector/capacity/1.cc: New.
- * 23_containers/vector/capacity/2.cc: New.
- * 23_containers/vector/capacity/8230.cc: New.
- * 23_containers/vector/cons/1.cc: New.
- * 23_containers/vector/cons/2.cc: New.
- * 23_containers/vector/cons/3.cc: New.
- * 23_containers/vector/cons/4.cc: New.
- * 23_containers/vector/cons/6513.cc: New.
- * 23_containers/vector/element_access/1.cc: New.
- * 23_containers/vector/modifiers/1.cc: New.
- * 23_containers/vector/modifiers/2.cc: New.
- * 23_containers/vector/resize/1.cc: New.
-
-2003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * testsuite/thread/pthread1.cc: Add alpha*-*-osf* to dg-do run,
- dg-options.
- * testsuite/thread/pthread2.cc: Likewise.
- * testsuite/thread/pthread3.cc: Likewise.
- * testsuite/thread/pthread4.cc: Likewise.
- * testsuite/thread/pthread5.cc: Likewise.
- * testsuite/thread/pthread6.cc: Likewise.
- * testsuite/thread/pthread7-rope.cc: Likewise.
+2004-02-03 Paolo Carlini <pcarlini@suse.de>
-2003-07-30 Phil Edwards <pme@gcc.gnu.org>
-
- * include/bits/c++config: Partial reversion (comment placement) of
- previous patch.
-
-2003-07-30 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/c++config (_GLIBCXX_FULLY_COMPLIANT_HEADERS): Remove.
- (_GLIBCXX_NO_TEMPLATE_EXPORT): To _GLIBCXX_EXPORT_TEMPLATE.
- (_GLIBCXX_AT_AT): Remove.
- (__USE_MALLOC): Remove.
- * include/std/std_fstream.h: Modify.
- * include/bits/basic_ios.h: Same.
- * include/bits/valarray_array.h: Same.
- * include/c_std/std_cmath.h: Same.
- * include/c_std/cmath.tcc: Same.
- * include/std/std_vector.h: Same.
- * include/std/std_string.h: Same.
- * include/std/std_stack.h: Same.
- * include/std/std_queue.h: Same.
- * include/std/std_list.h: Same.
- * include/std/std_deque.h: Same.
- * include/std/std_streambuf.h: Same.
- * include/std/std_sstream.h: Same.
- * include/std/std_ostream.h: Same.
- * include/std/std_istream.h: Same.
- * include/bits/valarray_array.tcc: Same, format.
-
- * include/c/std_cctype.h: Fix include guards.
- * include/c/std_cerrno.h: Same.
- * include/c/std_cfloat.h: Same.
- * include/c/std_climits.h: Same.
- * include/c/std_clocale.h: Same.
- * include/c/std_cmath.h: Same.
- * include/c/std_csetjmp.h: Same.
- * include/c/std_csignal.h: Same.
- * include/c/std_cstdarg.h: Same.
- * include/c/std_cstddef.h: Same.
- * include/c/std_cstdio.h: Same.
- * include/c/std_cstdlib.h: Same.
- * include/c/std_cstring.h: Same.
- * include/c/std_ctime.h: Same.
- * include/c/std_cwchar.h: Same.
- * include/c/std_cwctype.h: Same.
- * include/c_std/cmath.tcc: Same.
- * include/c_std/std_cmath.h: Same.
-
-2003-07-30 Gawain Bolton <gp.bolton@computer.org>
-
- PR libstdc++/11504.
- * include/bits/stl_tree.h: Replace C-style casts with C++-style
- casts. Changes to avoid casting away constness. Eliminate
- _Rb_tree_base_iterator class. Change _Rb_tree_iterator to use
- initialization lists. Move out implementation of __black_count()
- to...
- * src/stl_tree.cc: ...here and rename _Rb_tree_black_count().
- Rename_Rb_tree_base_iterator::_M_increment() to
- _Rb_tree_increment and _Rb_tree_base_iterator::_M_decrement() to
- _Rb_tree_decrement.
- * config/linker-map.gnu: Add and change symbols here.
-
-2003-07-30 Jonathan Wakely <redi@gcc.gnu.org>
-
- * docs/html/22_locale/howto.html: Use locale::classic() instead
- of locale("C").
-
-2003-07-28 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/testsuite_hooks.h: Remove list include.
- (func_callback): Define as unique type, not std::list.
- Change DEBUG_ASSERT to _GLIBCXX_ASSERT.
- * testsuite/libstdc++-v3.dg/dg.exp: Same.
- * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Same.
- * testsuite/23_containers/bitset_ctor.cc:
- * testsuite/17_intro/header_ciso646.cc: Remove DEBUG_ASSERT.
- * testsuite/18_support/numeric_limits.cc: Same.
- * testsuite/21_strings/basic_string/append/char/1.cc: Same.
- * testsuite/21_strings/basic_string/append/wchar_t/1.cc: Same.
- * testsuite/21_strings/basic_string/compare/char/1.cc: Same.
- * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Same.
- * testsuite/21_strings/basic_string/element_access/char/1.cc: Same.
- * testsuite/21_strings/basic_string/element_access/char/2.cc: Same.
- * testsuite/21_strings/basic_string/element_access/char/3.cc: Same.
- * testsuite/21_strings/basic_string/element_access/wchar_t/1.cc: Same.
- * testsuite/21_strings/basic_string/element_access/wchar_t/2.cc: Same.
- * testsuite/21_strings/basic_string/element_access/wchar_t/3.cc: Same.
- * testsuite/21_strings/basic_string/find/char/1.cc: Same.
- * testsuite/21_strings/basic_string/find/char/2.cc: Same.
- * testsuite/21_strings/basic_string/find/char/3.cc: Same.
- * testsuite/21_strings/basic_string/find/wchar_t/1.cc: Same.
- * testsuite/21_strings/basic_string/find/wchar_t/2.cc: Same.
- * testsuite/21_strings/basic_string/find/wchar_t/3.cc: Same.
- * testsuite/21_strings/basic_string/insert/char/1.cc: Same.
- * testsuite/21_strings/basic_string/insert/char/2.cc: Same.
- * testsuite/21_strings/basic_string/insert/wchar_t/1.cc: Same.
- * testsuite/21_strings/basic_string/insert/wchar_t/2.cc: Same.
- * testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
- * testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
- * testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
- * testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
- * testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
- * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
- * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
- * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
- * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
- * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
- * testsuite/21_strings/basic_string/operators/char/1.cc: Same.
- * testsuite/21_strings/basic_string/operators/char/2.cc: Same.
- * testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Same.
- * testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Same.
- * testsuite/21_strings/basic_string/replace/char/1.cc: Same.
- * testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Same.
- * testsuite/21_strings/basic_string/rfind/char/1.cc: Same.
- * testsuite/21_strings/basic_string/rfind/char/2.cc: Same.
- * testsuite/21_strings/basic_string/rfind/char/3.cc: Same.
- * testsuite/21_strings/basic_string/rfind/wchar_t/1.cc: Same.
- * testsuite/21_strings/basic_string/rfind/wchar_t/2.cc: Same.
- * testsuite/21_strings/basic_string/rfind/wchar_t/3.cc: Same.
- * testsuite/21_strings/basic_string/substr/char/1.cc: Same.
- * testsuite/21_strings/basic_string/substr/wchar_t/1.cc: Same.
- * testsuite/23_containers/bitset_ctor.cc: Same.
- * testsuite/23_containers/bitset_shift.cc: Same.
- * testsuite/23_containers/vector_ctor.cc: Same.
- * testsuite/23_containers/vector_element_access.cc: Same.
- * testsuite/24_iterators/istreambuf_iterator.cc: Same.
- * testsuite/24_iterators/iterator.cc: Same.
- * testsuite/24_iterators/ostreambuf_iterator.cc: Same.
- * testsuite/25_algorithms/lower_bound.cc: Same.
- * testsuite/26_numerics/complex_inserters_extractors.cc: Same.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc: Same.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc: Same.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc: Same.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc: Same.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc: Same.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc: Same.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc: Same.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc: Same.
- * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc: Same.
- * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
- Same.
-
-2003-07-28 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/doxygen/user.cfg.in, docs/html/abi.txt, docs/html/debug.html,
- docs/html/test.html, docs/html/17_intro/headers_cc.txt,
- docs/html/17_intro/howto.html, docs/html/ext/howto.html: Change
- GLIBCPP to GLIBCXX (and explain as needed).
-
-2003-07-28 Phil Edwards <pme@gcc.gnu.org>
-
- * README: Update.
-
-2003-07-28 Phil Edwards <pme@gcc.gnu.org>
-
- * testsuite/22_locale/messages/members/char/1.cc,
- testsuite/22_locale/messages/members/char/2.cc,
- testsuite/22_locale/messages/members/char/3.cc,
- testsuite/22_locale/messages_byname/1.cc: Update comment regarding
- the origin of LOCALEDIR.
- * testsuite/lib/libstdc++-v3.exp: New file.
-
-2003-07-25 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/char_traits.h: Update copyright, tweak.
- * testsuite/ext/pod_char_traits.cc: Explicitly qualify namespace
- std types.
-
-2003-07-24 Matt Austern <austern@apple.com>
-
- * /include/bits/char_traits.h (class char_traits): Put all the
- real work into the new class template __gnu_cxx::char_traits.
- Gave generic definitions for member functions. Types are taken
- from the new class template __gnu_cxx::_Char_types.
- * testsuite/21_strings/char_traits/requirements/short/1.cc: New
- file. Test of std::char_traits<short>, which serves as a test of
- the char_traits primary template.
-
-2003-07-24 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/*: Change __gnu_cxx_test to __gnu_test.
-
-2003-07-24 Nathan Myers <ncm-nospam@cantrip.org>
-
- * testsuite/23_containers/map_operators.cc: Conform to
- container requirement as value must be Assignable.
-
-2003-07-23 Alexandre Oliva <aoliva@redhat.com>
-
- * acinclude.m4 (GLIBCXX_ENABLE_PCH): Rework test such that it
- tests not only generation of pch files, but also their use.
- * aclocal.m4, configure: Rebuilt.
-
-2003-07-23 Steve Ellcey <sje@cup.hp.com>
-
- * config/cpu/hppa/atomicity.h: Change
- _GLIBCXX_INST_GLIBCXX_ATOMICITY_LOCK to _GLIBCXX_INST_ATOMICITY_LOCK
- to match misc-inst.cc
-
-2003-07-23 Steve Ellcey <sje@cup.hp.com>
-
- * include/c_std/cmath.tcc: Use _GLIBCXX_ prefix on file guard.
- * include/c_std/std_cctype.h: Ditto.
- * include/c_std/std_cerrno.h: Ditto.
- * include/c_std/std_cfloat.h: Ditto.
- * include/c_std/std_climits.h: Ditto.
- * include/c_std/std_clocale.h: Ditto.
- * include/c_std/std_cmath.h: Ditto.
- * include/c_std/std_csetjmp.h: Ditto.
- * include/c_std/std_csignal.h: Ditto.
- * include/c_std/std_cstdarg.h: Ditto.
- * include/c_std/std_cstddef.h: Ditto.
- * include/c_std/std_cstdio.h: Ditto.
- * include/c_std/std_cstdlib.h: Ditto.
- * include/c_std/std_cstring.h: Ditto.
- * include/c_std/std_ctime.h: Ditto.
- * include/c_std/std_cwchar.h: Ditto.
- * include/c_std/std_cwctype.h: Ditto.
- * include/std/std_algorithm.h: Ditto.
- * include/std/std_bitset.h: Ditto.
- * include/std/std_complex.h: Ditto.
- * include/std/std_deque.h: Ditto.
- * include/std/std_fstream.h: Ditto.
- * include/std/std_functional.h: Ditto.
- * include/std/std_iomanip.h: Ditto.
- * include/std/std_ios.h: Ditto.
- * include/std/std_iosfwd.h: Ditto.
- * include/std/std_iostream.h: Ditto.
- * include/std/std_istream.h: Ditto.
- * include/std/std_iterator.h: Ditto.
- * include/std/std_limits.h: Ditto.
- * include/std/std_list.h: Ditto.
- * include/std/std_locale.h: Ditto.
- * include/std/std_map.h: Ditto.
- * include/std/std_memory.h: Ditto.
- * include/std/std_numeric.h: Ditto.
- * include/std/std_ostream.h: Ditto.
- * include/std/std_queue.h: Ditto.
- * include/std/std_set.h: Ditto.
- * include/std/std_sstream.h: Ditto.
- * include/std/std_stack.h: Ditto.
- * include/std/std_stdexcept.h: Ditto.
- * include/std/std_streambuf.h: Ditto.
- * include/std/std_string.h: Ditto.
- * include/std/std_utility.h: Ditto.
- * include/std/std_valarray.h: Ditto.
- * include/std/std_vector.h: Ditto.
-
-2003-07-22 Doug Gregor <dgregor@apple.com>
-
- * include/bits/basic_string.h (basic_string::insert): Deprecate
- GNU extension.
-
-2003-07-21 Benjamin Kosnik <bkoz@redhat.com>
-
- * scripts/testsuite_flags.in (--build-includes): Remove extraneous
- paths for libio.
- * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc
- (test03): Include typeinfo for bad_cast.
- * testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
- * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
- * testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
-
-2003-07-21 Doug Gregor <dgregor@apple.com>
-
- * include/bits/boost_concept_check.h:
- (_EqualityComparableConcept::__constraints): Remove != from the
- list of constraints; it is not listed in Table 28 of the C++98
- standard.
-
-2003-07-18 Andreas Jaeger <aj@suse.de>
-
- * config/abi/sparc-linux-gnu/baseline_symbols.txt: New file.
- * config/abi/mips-linux-gnu/baseline_symbols.txt: New file.
- * config/abi/hppa-linux-gnu/baseline_symbols.txt: New file.
- * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
-
-2003-07-17 Benjamin Kosnik <bkoz@redhat.com>
-
- * config/linker-map.gnu: Add __moneypunct_cache, __timepunct_cache.
- * config/locale/generic/messages_members.h: Tweaks.
- * config/locale/generic/monetary_members.cc
- (moneypunct::_M_initialize_moneypunct): Use cache.
- (moneypunct::~moneypunct): Delete cache.
- * config/locale/generic/time_members.cc:
- (__timepunct::_M_initialize_timepunct): Use cache.
- * config/locale/generic/time_members.h:
- (__timepunct::~__timepunct): Delete cache.
- (__timepunct::__timepunct): Set cache.
- * config/locale/gnu/messages_members.h: Tweaks.
- * config/locale/gnu/monetary_members.cc:
- (moneypunct::_M_initialize_moneypunct): Use cache.
- (moneypunct::~moneypunct): Delete cache.
- * config/locale/gnu/time_members.cc:
- (__timepunct::_M_initialize_timepunct): Use cache.
- * config/locale/gnu/time_members.h:
- (__timepunct::~__timepunct): Delete cache.
- (__timepunct::__timepunct): Set cache.
- * include/bits/locale_facets.h (__timepunct_cache): New.
- (__moneypunct_cache): New.
- * include/bits/locale_facets.tcc: Tweak.
- * src/locale.cc (__timepunct::_S_timezones): Adjust for cache.
- * src/locale-inst.cc: Instantiate caches.
- * src/globals.cc: Add "C" caches.
- * src/localename.cc: Use external "C" caches.
-
-2003-07-17 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/doxygen/guide.html: Fix typo.
-
-2003-07-16 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/ext/pod_char_traits.h: Add state template argument.
-
-2003-07-16 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/locale_facets.h (__num_base::_S_atoms_in): Add -+xX.
- (num_get::_M_convert_int): To _M_insert_int.
- (num_get::_M_convert_float): To _M_insert_float.
- * include/bits/locale_facets.tcc (num_get::_M_extract_float):
- Use caches for ctype, num_get.
- (num_get::_M_extract_int): Same.
- (num_get::get(bool)): Same.
- (__verify_grouping): Use size_t.
- * src/locale-inst.cc: Update.
- * src/locale.cc: Adjust _S_atoms_in.
-
-2003-07-16 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/doxygen/mainpage.html: Move building/writing instructions...
- * docs/doxygen/guide.html: ...to here. New file.
-
-2003-07-16 Jonathan Wakely <redi@gcc.gnu.org>
-
- * docs/html/ext/howto.html: Update URL for SGI STL docs.
- * docs/html/faq/index.html: Same.
- * docs/html/faq/index.txt: Regenerate.
-
-2003-07-16 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/11528
- * include/bits/locale_facets.tcc (money_get::do_get):
- Strip only _leading_ zeros.
- * testsuite/22_locale/money_get/get/char/11528.cc: Add.
- * testsuite/22_locale/money_get/get/wchar_t/11528.cc: Add.
+ * include/bits/stl_iterator_base_funcs.h: Minor formatting
+ and indentation tweaks.
+ * include/bits/stl_iterator_base_types.h: Likewise.
+ * include/bits/stl_list.h: Likewise.
+ * include/bits/stl_map.h: Likewise.
+ * include/bits/stl_tempbuf.h: Likewise.
-2003-07-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+2004-02-02 Jerry Quinn <jlquinn@optonline.net>
- * include/ext/hash_map (class hash_multimap): Remove extra
- semicolons from __glibcxx_class_requires3 entries.
- * include/ext/hash_set (class hash_set): Ditto.
- (class hash_multiset): Ditto.
+ * include/bits/gslice.h, include/bits/gslice_array.h,
+ include/bits/indirect_array.h, include/bits/mask_array.h,
+ include/bits/slice_array.h, include/bits/stl_numeric.h,
+ include/std/std_valarray.h: Update copyright years.
-2003-07-15 Petur Runolfsson <peturr02@ru.is>
+2004-02-02 Jerry Quinn <jlquinn@optonline.net>
- * include/bits/char_traits.h (char_traits<wchar_t>::move):
- Change last parameter from int_type to size_t.
+ * include/bits/gslice.h (gslice): Document.
+ * include/bits/gslice_array.h (gslice_array): Document.
+ * include/bits/indirect_array (indirect_array): Document.
+ * include/bits/mask_array (mask_array): Document.
+ * include/bits/slice_array.h (slice,slice_array): Document.
+ * include/bits/stl_numeric.h (accumulate, inner_product, partial_sum,
+ adjacent_difference): Document
+ * include/std/std_valarray.h (valarray): Document.
-2003-07-15 Jerry Quinn <jlquinn@optonline.net>
+2004-02-02 Benjamin Kosnik <bkoz@redhat.com>
- * include/bits/stl_algo.h (includes, set_union, set_intersection,
- set_difference, set_symmetric_difference, max_element, min_element,
- next_permutation, prev_permutation, find_first_of, find_end):
- Document.
- * include/bits/stl_algobase.h (copy,copy_backward): Clarify overlap
- restrictions in docs.
- * include/bits/stl_heap.h (push_heap, pop_heap, make_heap, sort_heap):
- Document.
- * docs/doxygen/doxygroups.cc (setoperations): New group.
+ * docs/html/19_diagnostics/howto.html: Move verbose terminate
+ documentation...
+ * docs/html/18_support/howto.html: Here.
+ * docs/html/documentation.html: Add reference here.
-2003-07-15 Jerry Quinn <jlquinn@optonline.net>
+2004-02-02 Paolo Carlini <pcarlini@suse.de>
- * include/bits/basic_string.h: Document public functions.
- * docs/doxygen/TODO: Update c21 todo.
+ * config/locale/gnu/c++locale_internal.h: Remove prototypes
+ of no longer used GLIBC thread locale functions.
-2003-07-15 Jerry Quinn <jlquinn@optonline.net>
+2004-02-02 Eric Christopher <echristo@redhat.com>
+ Zack Weinberg <zack@codesourcery.com>
- * include/bits/stl_list.h: Document more functions.
- * docs/doxygen/TODO: Update c23 todo.
+ * testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use
+ -finput-charset.
+ * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto.
+ * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto
+ * testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto.
+ * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto.
+ * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto.
+ * testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto.
+ * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto.
+ * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
+ Ditto.
-2003-07-14 Paolo Carlini <pcarlini@unitus.it>
+2004-02-02 Paolo Carlini <pcarlini@suse.de>
- * config/locale/gnu/c_locale.h (__convert_from_v): One more
- qualification.
+ * include/bits/stl_function.h: Additional minor tweaks.
+ * include/bits/stl_multiset.h: Likewise.
-2003-07-14 Paolo Carlini <pcarlini@unitus.it>
+ * include/bits/stl_queue.h: Minor tweaks.
- * include/bits/stl_tempbuf.h: Qualify free with std::.
- * src/locale.cc: Include <cstdlib>, qualify getenv.
+2004-02-02 Paolo Carlini <pcarlini@suse.de>
-2003-07-14 Paolo Carlini <pcarlini@unitus.it>
+ PR libstdc++/13976 (continued)
+ * include/ext/malloc_allocator.h (malloc_allocator::deallocate):
+ Make the second parameter unnamed, to void unused parameter
+ warnings.
+ * include/ext/new_allocator.h (new_allocator::deallocate): Ditto.
- * config/locale/gnu/c_locale.h (__convert_from_v): Include
- <cstdio>. Qualify names.
- * config/locale/generic/c_locale.h (__convert_from_v): Ditto.
+2004-02-02 Paolo Carlini <pcarlini@suse.de>
-2003-07-14 Paolo Carlini <pcarlini@unitus.it>
- Nathan C. Myers <ncm-nospam@cantrip.org>
+ PR libstdc++/13976
+ * include/ext/malloc_allocator.h (malloc_allocator::allocate):
+ Make the second parameter unnamed, to void unused parameter
+ warnings.
+ * include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto.
+ * include/ext/new_allocator.h (new_allocator::allocate): Ditto.
- PR libstdc++/11378
- * include/std/std_fstream.h (xsputn): Declare only.
- * include/bits/fstream.tcc (xsputn): Define, optimize for the
- always_noconv() case: when __n is sufficiently large flush
- the buffer and issue a direct write, if possible combining the
- two with writev in __basic_file<>::xsputn_2.
- * config/io/basic_file_stdio.h (__basic_file<>::xsputn_2):
- New, declare.
- * config/io/basic_file_stdio.cc (__basic_file<>::xsputn_2):
- Define.
- * acinclude.m4 (GLIBCXX_CHECK_WRITE): New macro, checking for
- the availability of writev in <sys/uio.h>.
- * configure.in: Call here.
- * acconfig.h: Add undef for the corresponding symbol.
- * aclocal.m4: Regenerate.
- * configure: Regenerate.
- * config.h.in: Regenerate.
- * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Tweak.
+2004-02-01 Paolo Carlini <pcarlini@suse.de>
- * include/std/std_fstream.h (sync): Constify a variable.
+ * include/bits/stl_algo.h: Additional minor tweaks.
+ * include/bits/stl_map.h: Likewise.
+ * include/bits/stl_multimap.h: Likewise.
+ * include/bits/stl_multiset.h: Likewise.
+ * include/bits/stl_set.h: Likewise.
+ * include/bits/stl_tree.h: Likewise.
-2003-07-14 Benjamin Kosnik <bkoz@redhat.com>
+2004-02-01 Paolo Carlini <pcarlini@suse.de>
- * testsuite/27_io/ios_base/cons/assign_neg.cc: Fix line numbers.
- * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
+ * include/bits/vector.tcc (vector::_M_insert_aux(iterator)):
+ Remove, unused.
-2003-07-14 Gabriel Dos Reis <gcc@integrable-solutions.net>
+2004-02-01 Paolo Carlini <pcarlini@suse.de>
- * config/locale/gnu/c_locale.h (__convert_from_v): Include
- <cstring> and <cstdlib>. Qualify names.
+ * include/bits/stl_function.h: Additional minor tweaks.
-2003-07-13 Mark Mitchell <mark@codesourcery.com>
+2004-02-01 Paolo Carlini <pcarlini@suse.de>
- * config/locale/generic/c_locale.h: Include <cstdlib> and
- <cstring>.
- * include/bits/boost_concept_check.h: Add this-> to unqualified
- method calls.
- * include/bits/deque.tcc: Likewise.
- * include/bits/locale_facets.h : Likewise.
- * include/bits/ostream.tcc: Likewise.
- * include/bits/stl_algo.h: Likewise.
- * include/bits/stl_bvector.h: Likewise.
+ * include/bits/deque.tcc: Wrap overlong lines, constify
+ a few variables, reformat according to the coding standards.
+ * include/bits/list.tcc: Likewise.
* include/bits/stl_deque.h: Likewise.
+ * include/bits/stl_function.h: Likewise.
+ * include/bits/stl_iterator.h: Likewise.
+ * include/bits/stl_iterator_base_funcs.h: Likewise.
+ * include/bits/stl_iterator_base_types.h: Likewise.
* include/bits/stl_list.h: Likewise.
- * include/bits/stl_tree.h: Likewise.
- * include/bits/stl_vector.h: Likewise.
- * include/bits/vector.tcc: Likewise.
- * include/ext/rope: Likewise.
- * include/ext/ropeimpl.h: Likewise.
- * include/ext/stdio_filebuf.h: Likewise.
-
-2003-07-11 Jerry Quinn <jlquinn@optonline.net>
-
- * include/bits/basic_ios.h (copyfmt): Document.
- * include/bits/ios_base.h (event, event_callback, register_callback,
- xalloc, iword, pword): Document.
- (imbue, ~ios_base): Update docs on callbacks.
-
-2003-07-11 Phil Edwards <pme@gcc.gnu.org>
-
- * acinclude.m4 (GLIBCC_ENABLE_SYMVERS): Tweak comments. Add
- warning messages if the environment cannot support symbol versioning.
- (port_specific_symbol_file): It's plural, add an 's' on the end.
- * configure.host: Likewise.
- * src/Makefile.am: Likewise.
- * config/linker-map.gnu: Remove one semicolon, heh.
- * scripts/extract_symvers: Don't assume useful 'export' syntax.
- Set LANG as well as LC_ALL for possibly-broken sort(1)s.
- * aclocal.m4, configure, src/Makefile.in: Regenerated.
-
-2003-07-09 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/locale_facets.tcc: Use function object for
- __use_cache instead of template function. Partially specialize for
- __numpunct<_CharT>.
- * include/bits/locale_classes.h: Update friend declaration for
- __use_cache.
- (_M_install_cache): No throw exception specs.
- * src/locale.cc: Remove __use_cache specializations.
- * include/ext/pod_char_traits.h (length): Tweak.
- * include/bits/locale_facets.h (__numpunct_cache): Remove
- char_type typedef.
- * testsuite/testsuite_hooks.h (pod_unsigned_int): Remove.
- (pod_long): Remove.
- * testsuite/22_locale/numpunct/members/char/cache_1.cc: New.
- * testsuite/22_locale/numpunct/members/char/cache_2.cc: New.
- * testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: New.
- * testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: New.
- * testsuite/22_locale/numpunct/members/pod/1.cc: New.
- * testsuite/22_locale/numpunct/members/pod/2.cc: New.
-
-2003-07-09 Jerry Quinn <jlquinn@optonline.net>
-
- * src/ios.cc (_M_grow_words): Fix spelling.
-
-2003-07-09 Gawain Bolton <gp.bolton@computer.org>
-
- * include/bits/stl_tree.h: Move larger member functions in
- _Rb_tree_base_iterator and _Rb_tree_node to...
- * src/stl_tree.cc: Here.
- * src/Makefile.in: Add stl_tree.cc.
- * src/Makefile.in: Regenerated.
- * config/linker-map.gnu: Add symbols here.
-
-2003-07-08 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/ext/pod_char_traits.cc: New.
- * include/ext/pod_char_traits.h: New.
- * include/Makefile.am (ext_headers): Add pod_char_traits.h.
- * include/Makefile.in: Regenerate.
- * docs/html/21_strings/howto.html: Update.
-
-2003-07-08 Gawain Bolton <gp.bolton@computer.org>
-
- * testsuite/performance/list_create_fill_sort.cc: New.
-
-2003-07-08 Benjamin Kosnik <bkoz@redhat.com>
-
- * config/locale/generic/numeric_members.cc: Correct type info.
- * config/locale/gnu/numeric_members.cc: Same.
- * include/bits/locale_facets.h: Same.
-
- * include/bits/char_traits.h: Correct spacing.
-
- * src/locale.cc: Wrap to 80 col.
-
-2003-07-07 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_complex.h: Partially revert last
- changes: cmath functions must not be qualified.
-
-2003-07-06 Phil Edwards <pme@gcc.gnu.org>
-
- * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Do not test for binutils
- 2.11 with globbing backport fix.
- * aclocal.m4, configure: Regenerated.
-
-2003-07-06 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_fstream.h (xsputn): Don't call _M_destroy_pback:
- if output is at all possible (!_M_reading), cannot be active.
-
- * include/std/std_fstream.h: Tweak comments to doxygen style.
-
-2003-07-06 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/locale_classes.h: Fully qualify standard
- functions with std::, thus avoiding Koenig lookup.
- * include/bits/locale_facets.tcc: Likewise.
- * src/locale.cc: Likewise.
- * src/localename.cc: Likewise.
-
-2003-07-06 Phil Edwards <pme@gcc.gnu.org>
-
- * include/bits/allocator_traits.h: Fix doxygen markup.
- * include/ext/mt_allocator.h: Likewise.
-
-2003-07-06 Phil Edwards <pme@gcc.gnu.org>
-
- * testsuite/testsuite_hooks.h: Guard against a missing unlink().
-
-2003-07-05 Phil Edwards <pme@gcc.gnu.org>
-
- * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Bump minimal version
- requirement. Add port_specific_symbol_file variable.
- * configure.host: Add docs for port_specific_symbol_file.
- Clean up try_cpu block for x86.
- * config/linker-map.gnu: No more "last symbol can't have a
- semicolon" kaka. Add hook for port-specific symbols.
- * src/Makefile.am: Remove trailing whitespace.
- (libstdc++-symbol.ver): Detect the presence of port-specific
- symbols, and add them accordingly.
-
- * docs/html/17_intro/porting.texi: Bring up to date.
+ * include/bits/stl_map.h: Likewise.
+ * include/bits/stl_multimap.h: Likewise.
+ * include/bits/stl_multiset.h: Likewise.
+ * include/bits/stl_relops.h: Likewise.
+ * include/bits/stl_set.h: Likewise.
- * src/Makefile.in, aclocal.m4, configure,
- docs/html/17_intro/porting.html: Regenerated.
+2004-02-01 Paolo Carlini <pcarlini@suse.de>
-2003-07-05 Phil Edwards <pme@gcc.gnu.org>
+ * include/bits/stl_bvector.h: Wrap overlong lines, constify
+ a few variables, reformat according to the coding standards.
+ * include/bits/stl_tree.h: Likewise.
- * scripts/create_testsuite_files: New file.
- * testsuite/Makefile.am (all-local, check-performance): Use it.
- * testsuite/lib/libstdc++-v3-dg.exp (v3-computer-tests): Remove.
- * testsuite/Makefile.in: Regenerated.
+2004-01-31 Paolo Carlini <pcarlini@suse.de>
- * testsuite/performance/filebuf_sputc.cc: Remove the temporary
- files at the end.
- * testsuite/performance/fstream_seek_write.cc: Likewise.
- * testsuite/performance/ofstream_insert_float.cc: Likewise.
- * testsuite/performance/ofstream_insert_int.cc: Likewise.
- * testsuite/abi_check.cc (main): Nicer spacing in usage output.
+ * include/bits/stl_algo.h: Minor additional reformat, add
+ copyright year.
+ * include/bits/stl_algobase.h: Add copyright year.
-2003-07-05 Gawain Bolton <gp.bolton@computer.org>
+2004-01-31 Paolo Carlini <pcarlini@suse.de>
- * include/bits/stl_list.h: Performance and memory usage
- improvements. In particular, the behaviour of the constructor and
- destructor as the list header node is no longer dynamically
- allocated/de-allocated.
- * include/bits/list.tcc: Likewise.
+ * include/bits/stl_algo.h: Wrap overlong lines, constify
+ a few variables, reformat according to the coding standards.
+ * include/bits/stl_algobase.h: Likewise.
+ * include/bits/stl_heap.h: Likewise.
-2003-07-05 Paolo Carlini <pcarlini@unitus.it>
+2004-01-31 Paolo Carlini <pcarlini@suse.de>
- * include/std/std_complex.h: Fully qualify standard
- functions with std::, thus avoiding Koenig lookup.
- * include/std/std_memory.h: Likewise.
- * include/std/std_valarray.h: Likewise.
+ * include/bits/basic_string.h (_Rep::operator[]): Remove, unused.
-2003-07-05 Gawain Bolton <gp.bolton@computer.org>
+ * include/bits/basic_string.h: Fix two comments.
- * include/bits/stl_tree.h: _Rb_tree_rebalance(): Add local
- variable for grandparent and use const
+2004-01-31 Per Bothner <per@bothner.com>
-2003-07-05 David Billinghurst <David.Billinghurst@riotinto.com>
+ * include/ext/mt_allocator.h
+ (__mt_alloc::_S_thread_freelist_mutex): Guard with
+ __GTHREAD_MUTEX_INIT.
- * testsuite/27_io/basic_filebuf/close/char/4879.cc: xfail on cygwin
- * testsuite/27_io/basic_filebuf/close/char/9964.cc: Ditto
- * testsuite/27_io/basic_filebuf/open/char/9507.cc: Ditto
- * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Ditto
- * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Ditto
- * testsuite/27_io/objects/char/7.cc: Ditto
- * testsuite/27_io/objects/char/9661-1.cc: Ditto
+2004-01-31 Paolo Carlini <pcarlini@suse.de>
-2003-07-05 Paolo Carlini <pcarlini@unitus.it>
+ * include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak.
- * include/std/std_bitset.h: Fully qualify standard
- functions with std::, thus avoiding Koenig lookup.
+2004-01-30 Paolo Carlini <pcarlini@suse.de>
- * include/std/std_fstream.h: Change comment to doxygen style.
+ * testsuite/21_strings/basic_string/cons/char/6.cc: New.
+ * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New.
+ * testsuite/performance/21_strings/string_cons_input_iterator.cc: New.
-2003-07-05 Phil Edwards <pme@gcc.gnu.org>
+2004-01-30 Felix Yen <fwy@alumni.brown.edu>
- * include/std/std_limits.h: More CPP->CXX changes.
- * scripts/check_survey.in: Likewise.
+ * testsuite/performance/20_util/allocator_thread.cc (do_loop):
+ Don't use clear, but instead assign. Use insert.
-2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
+2004-01-30 Benjamin Kosnik <bkoz@redhat.com>
- Move from CPP to CXX.
- * include/bits/c++config: Move to GLIBCXX from GLIBCPP.
- * testsuite/Makefile.am: Same.
- * testsuite/Makefile.in: Regenerate.
- * po/Makefile.am: Same.
- * po/Makefile.in: Regenerate.
- * libsupc++/Makefile.am: Same.
- * libsupc++/Makefile.in: Regenerate.
- * libmath/Makefile.am: Same.
- * libmath/Makefile.in: Regenerate.
- * include/Makefile.am: Same.
- * include/Makefile.in: Regenerate.
- * src/Makefile.am: Same.
+ * src/demangle.cc: Add instantiations.
+ * src/Makefile.am: Remove special rules for demangle.lo, demangle.o.
* src/Makefile.in: Regenerate.
- * acconfig.h: Same.
- * configure.host: Same.
- * configure.in: Same.
- * configure: Regenerate.
- * acinclude.m4: Same.
- * aclocal.m4: Same.
- * src: Change all files in this directory.
- * testsuite: Same.
- * include: Same, standardize include guards.
- * config: Same.
- * libsupc++: Same.
-
-2003-07-04 Zack Weinberg <zack@codesourcery.com>
-
- * testsuite/22_locale/collate/compare/wchar_t/2.cc
- * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc
- * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc
- * testsuite/22_locale/collate/hash/wchar_t/2.cc
- * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc
- * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc
- * testsuite/22_locale/collate/transform/wchar_t/2.cc
- * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc
- * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
- XFAIL on all targets.
-
-2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
- * acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix missed variable.
- * aclocal.m4: Regenerate.
- * configure: Regenerate.
-
-2003-07-04 Jerry Quinn <jlquinn@optonline.net>
-
- * include/bits/locale_facets.tcc (__int_to_char): Move common case
- to the top.
-
-2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
- Petur Runolfsson <peturr02@ru.is>
-
- * config/io/basic_file_stdio.cc: Revert.
-
-2003-07-04 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/deque.tcc: Fully qualify standard
- functions with std::, thus avoiding Koenig lookup.
- * include/bits/gslice_array.h: Likewise.
- * include/bits/indirect_array.h: Likewise.
- * include/bits/list.tcc: Likewise.
- * include/bits/mask_array.h: Likewise.
- * include/bits/slice_array.h: Likewise.
-
-2003-07-04 Gawain Bolton <gbolton@free.fr>
-
- * include/bits/stl_tree.h: Performance and memory usage
- improvements.
+2004-01-30 David Edelsohn <edelsohn@gnu.org>
+
+ * src/allocator.cc: Protect _S_get_thread_id() and
+ _S_thread_key_destr() with #ifdef __GTHREADS.
+
+2004-01-30 Paolo Carlini <pcarlini@suse.de>
+
+ Reshuffle performance testsuite.
+ * testsuite/performance/allocator.cc, allocator_map_thread.cc,
+ allocator_thread.cc, complex_norm.cc, container_benchmark.cc,
+ cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc,
+ fstream_seek_write.cc, ifstream_extract_float.cc,
+ ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc,
+ list_create_fill_sort.cc, map_create_fill.cc,
+ narrow_widen_char.cc, narrow_widen_wchar_t.cc,
+ ofstream_insert_float.cc, ofstream_insert_int.cc,
+ string_append.cc, wchar_t_in.cc, wchar_t_length.cc,
+ wchar_t_out.cc: Split into...
+ * testsuite/performance/20_util/allocator.cc: New.
+ * testsuite/performance/20_util/allocator_map_thread.cc: New.
+ * testsuite/performance/20_util/allocator_thread.cc: New.
+ * testsuite/performance/21_strings/string_append: New.
+ * testsuite/performance/22_locale/is_wchar_t.cc: New.
+ * testsuite/performance/22_locale/narrow_widen_char.cc: New.
+ * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New.
+ * testsuite/performance/22_locale/wchar_t_in.cc: New.
+ * testsuite/performance/22_locale/wchar_t_length.cc: New.
+ * testsuite/performance/22_locale/wchar_t_out.cc: New.
+ * testsuite/performance/23_containers/container_benchmark.cc: New.
+ * testsuite/performance/23_containers/list_create_fill_sort.cc: New.
+ * testsuite/performance/23_containers/map_create_fill.cc: New.
+ * testsuite/performance/26_numerics/complex_norm.cc: New.
+ * testsuite/performance/27_io/cout_insert_int.cc: New.
+ * testsuite/performance/27_io/filebuf_copy.cc: New.
+ * testsuite/performance/27_io/filebuf_sputc.cc: New.
+ * testsuite/performance/27_io/fstream_seek_write.cc: New.
+ * testsuite/performance/27_io/ifstream_extract_float.cc: New.
+ * testsuite/performance/27_io/ifstream_extract_int.cc: New.
+ * testsuite/performance/27_io/ifstream_getline.cc: New.
+ * testsuite/performance/27_io/ofstream_insert_float.cc: New.
+ * testsuite/performance/27_io/ofstream_insert_int.cc: New.
+
+2004-01-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (_Rep::_S_create):
+ Never allocate a string bigger than max_size(); always keep
+ __capacity and __size in sync to avoid memory leaks at
+ deallocation time.
+
+2004-01-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (_S_construct(_InIterator,
+ _InIterator, const _Alloc&, input_iterator_tag)): Simplify
+ the double loop, streamline.
+
+ * include/bits/basic_string.tcc: Very minor tweaks.
+
+2004-01-30 Loren J. Rittle <ljrittle@acm.org>
+
+ * scripts/check_performance: Only compile with $THREAD_FLAG
+ when test is marked to require it. Allow multiple
+ compilations/executions of marked tests.
+ * testsuite/testsuite_performance.h (report_performance):
+ Report dynamic thread support status.
+ (report_header): Likewise.
+ * testsuite/performance/allocator.cc: Stabilize iteration
+ count. Support more allocators. Mark each allocator test to
+ run and report independently.
+ * testsuite/performance/allocator_map_thread.cc: Likewise.
+ * testsuite/performance/allocator_thread.cc: Likewise.
-2003-07-04 H.J. Lu <hongjiu.lu@intel.com>
+2004-01-29 Stephen M. Webb <stephen.webb@bregmasoft.com>
- * Makefile.am: Replace PWD with PWD_COMMAND.
- * Makefile.in: Regenerated.
- * docs/html/Makefile: Likewise.
+ * config/local/generic/c_locale.h: Change ::malloc() to new char[].
+ * config/local/gnu/c_locale.h: Change ::malloc() to new char[].
+ * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
+ std::get_temporary_buffer() instead of duplicating its code.
+ Update to C++STYLE conventions.
+ * include/std/std_memory.h (get_temporary_buffer): Use ::operator
+ new() instead of std::malloc().
+ (return_temporary_buffer): Use ::operator delete() instead of
+ std::free().
-2003-07-04 Paolo Carlini <pcarlini@unitus.it>
+2004-01-29 Benjamin Kosnik <bkoz@redhat.com>
- * include/bits/valarray_array.h: Fully qualify standard
- functions with std::, thus avoiding Koenig lookup.
- * include/bits/vector.tcc: Likewise.
+ * include/bits/allocator.h: Temporary switch to new_allocator as
+ the default to unjam bootstraps.
-2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
+2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
- * include/Makefile.am: Update target_ to host_.
+ * include/Makefile.am (bits_headers): Remove allocator_traits.h.
* include/Makefile.in: Regenerate.
- * src/Makefile.am: Same.
+ * include/bits/allocator_traits.h: Remove.
+ * include/bits/allocator.h: Remove allocator_traits.h include, and
+ relevant comments.
+ (allocator): Empty base class, inherit from the underlying allocator.
+ * src/allocator-inst.cc: Move __pool_alloc instantiation to...
+ * src/allocator.cc: ...here. New. For the underlying allocators.
+ Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
+ * config/linker-map.gnu: Remove __pool_alloc bits.
+ * src/Makefile.am (sources): Add allocator.cc.
* src/Makefile.in: Regenerate.
+ * testsuite/20_util/allocator/1.cc: Split second test into...
+ * testsuite/20_util/allocator/8230.cc: ...this.
+ * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
+ typedef to use std::allocatore. Format.
+ * include/ext/pool_allocator.h: Remove allocator_traits.h include,
+ _Alloc_traits.
+ * include/ext/mt_allocator.h (__gnu_cxx): Qualify
+ __throw_bad_alloc calls. Don't include <memory>.
+ * include/ext/malloc_allocator.h: Remove <memory> include.
+ * include/ext/new_allocator.h (new_allocator): Same.
+ * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
+ declaration. Switch __alloc to _Alloc.
+ * include/ext/hashtable.h: Remove __alloc.
+ * include/backward/alloc.h: Only inject allocator, not
+ implementation details.
+
+ * include/ext/mt_allocator.h: Replace free with delete.
+
+2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/globals_io.cc: Change to __gnu_internal namespace.
+ * src/globals_locale.cc: Same.
+ * src/locale_init.cc: Same.
+ * src/ios_init.cc: Same.
- * config/os/gnu-linux/os_defines.h: Remove glibc-2.0 support.
-
-2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
-
- * acinclude.m4 (GLIBCPP_ENABLE_DEBUG_FLAGS): To
- --enable-libstdcxx-debug-flags.
- (GLIBCPP_ENABLE_DEBUG_FLAGS): To --enable-libstdcxx-debug.
- (GLIBCPP_ENABLE_PCH): To --enable-libstdcxx-pch.
- * aclocal.m4: Regenerate.
- * configure: Same.
- * docs/html/configopts.html: Update.
-
-2003-07-04 Paolo Carlini <pcarlini@unitus.it>
-
- Revert the fix for libstdc++/11378.
-
-2003-07-04 Paolo Carlini <pcarlini@unitus.it>
+2004-01-28 Stefan Olsson <stefan@snon.net>
- PR libstdc++/11378
- * include/std/std_fstream.h (xsputn): In the unbuffered case,
- provided always_noconv(), issue directly _M_file.xsputn.
- * testsuite/performance/filebuf_unbuf_sputn.cc: New.
+ * include/ext/mt_allocator.h: Replaced all malloc() calls with
+ operator new(). Added support for the env variable
+ GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
+ one in allocate() as well). Fix typos.
-2003-07-04 Paolo Carlini <pcarlini@unitus.it>
+2004-01-28 Paolo Carlini <pcarlini@suse.de>
- * include/bits/stl_list.h: Fully qualify standard
- functions with std::, thus avoiding Koenig lookup.
- * include/bits/stl_queue.h: Likewise.
- * include/bits/stl_raw_storage_iter.h: Likewise.
- * include/bits/stl_tempbuf.h: Likewise.
- * include/bits/stl_tree.h: Likewise.
- * include/bits/stl_uninitialized.h: Likewise.
- * include/bits/stl_vector.h: Likewise.
- * include/ext/rope: Change includes order.
+ * include/bits/basic_string.h (_S_create(size_t,
+ const _Alloc&): Change signature to take two size_type
+ arguments.
+ * include/bits/basic_string.tcc (_S_construct(_InIterator,
+ _InIterator, const _Alloc&, input_iterator_tag)): Update
+ call, tweak a bit.
+ (_S_construct(_InIterator, _InIterator, const _Alloc&,
+ forward_iterator_tag)): Likewise.
+ (_S_construct(size_type, _CharT, const _Alloc&)): Likewise.
+ (_M_mutate(size_type, size_type, size_type)): Don't
+ implement the exponential growth policy, demand it to
+ _S_create, update call and simplify.
+ (_M_clone(const _Alloc&, size_type)): Likewise.
+ (_S_create(size_type, size_type, const _Alloc&)): Implement
+ the growth policy, simplify otherwise.
+
+ * include/bits/basic_string.h (_Rep::operator[]): Tweak
+ signature to take a size_type, consistently with the other
+ members.
-2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
+2004-01-27 Benjamin Kosnik <bkoz@redhat.com>
- * configure.host (fpos_include_dir): Fix.
+ * testsuite/27_io/ios_base/storage/11584.cc: Correct new and
+ delete declarations, add include and test variable.
-2003-07-04 Paolo Carlini <pcarlini@unitus.it>
+2003-01-27 Jerry Quinn <jlquinn@optonline.net>
- * include/bits/stl_heap.h: Fully qualify standard
- functions with std::, thus avoiding Koenig lookup.
- * include/bits/stl_iterator_base_funcs.h: Likewise.
+ * include/bits/codecvt.h, include/bits/locale_facets.h,
+ include/bits/postypes.h, include/bits/stl_bvector.h,
+ include/bits/stl_multiset.h, include/bits/stl_set.h,
+ include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
+ include/std/std_complex.h: Document.
- * include/bits/stl_algo.h: Qualify __iterator_category too.
- * include/bits/stl_algobase.h: Likewise.
- * include/bits/stl_bvector.h: Likewise.
+2004-01-27 Jerry Quinn <jlquinn@optonline.net>
- * include/bits/stl_algo.h: Don't qualify the pair type.
+ PR libstdc++/11584
+ * include/bits/ios_base.h (ios_base::_M_grow_words): Add
+ iword/pword selector.
+ (ios_base::iword, ios_base::pword): Use it.
+ * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero
+ iword or pword member on alloc failure.
+ * testsuite/27_io/ios_base/storage/11584.cc: New test.
-2003-07-03 Benjamin Kosnik <bkoz@redhat.com>
+2004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
+ PJ Darcy <darcypj@us.ibm.com>
- * include/Makefile.am (target_headers): Add fpos.h
- (bits_headers): Remove.
- * include/Makefile.in: Regenerate.
- * configure.in: Add FPOS_INC_SRCDIR, substitute it.
+ * configure.host: Add support for *-tpf.
+ * crossconfig.m4: Likewise.
* configure: Regenerate.
- * configure.host: Add fpos_include_dir.
- * config/os/gnu-linux/fpos.h: New.
- * config/os/generic/fpos.h: Add.
- * include/bits/fpos.h: Remove.
+ * config/os/tpf: New directory.
+ * config/os/tpf/os_defines.h: New file.
+ * config/os/tpf/ctype_base.h: Likewise.
+ * config/os/tpf/ctype_inline.h: Likewise.
+ * config/os/tpf/ctype_noninline.h: Likewise.
- * config/io/c_io_stdio.h: Remove fpos_t typedef.
+2004-01-27 Paolo Carlini <pcarlini@suse.de>
- * include/bits/fstream.tcc: Tweaks.
- * include/std/std_fstream.h: Same.
+ PR libstdc++/13884
+ * include/bits/sstream.tcc: Guard use of extern template.
- * testsuite/27_io/fpos/1.cc (test01): Uncomment. Move to...
- * testsuite/27_io/fpos/mbstate_t/1.cc: ...here.
- * testsuite/27_io/fpos/mbstate_t/2.cc: Same.
- * testsuite/27_io/fpos/mbstate_t/3.cc: Same.
- * testsuite/27_io/fpos/1.cc: New.
+2004-01-27 Paolo Carlini <pcarlini@suse.de>
-2003-07-03 Benjamin Kosnik <bkoz@redhat.com>
- Petur Runolfsson <peturr02@ru.is>
-
- * include/std/std_streambuf.h: Remove _M_pos.
- * config/io/basic_file_stdio.h: Use seekpos instead of seekoff.
- * config/io/basic_file_stdio.cc: Same, use fseek instead of lseek,
- use fread/fwrite instead of read/write.
- * testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Fix.
- * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Close filebufs
- before reading again.
- * testsuite/27_io/objects/char/6.cc: Tweak.
-
-2003-07-03 David Edelsohn <edelsohn@gnu.org>
-
- * testsuite/22_locale/num_put/put/char/7.cc: Guard with
- _GLIBCPP_USE_WCHAR_T.
-
-2003-07-02 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/basic_string.tcc (_M_replace_aux): Constify
- __n1 and __off1.
-
-2003-07-02 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/stl_bvector.h: Fully qualify standard
- functions with std::, thus avoiding Koenig lookup.
- * include/bits/stl_construct.h: Likewise.
- * include/bits/stl_deque.h: Likewise.
-
-2003-07-02 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/22_locale/num_put/put/char/7.cc: Include
- <testsuite_hooks.h>, tweak.
- * testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
-
-2003-07-01 Phil Edwards <pme@gcc.gnu.org>
+ * include/bits/basic_string.tcc
+ (basic_string(const basic_string&, size_type, size_type),
+ basic_string(const basic_string&, size_type, size_type,
+ const _Alloc&)): Avoid unnecessarily constructing iterators.
- * testsuite/Makefile.am (AM_MAKEFLAGS): Set to -j1 (affects
- check* targets, but not libs/programs).
- * testsuite/Makefile.in: Regenerate.
-
-2003-07-01 Roger Sayle <roger@eyesopen.com>
-
- * acinclude.m4 (GLIBCPP_CHECK_STDLIB_SUPPORT): Fix typo in CXXFLAGS.
- (GLIBCPP_CHECK_MATH_SUPPORT): Likewise.
- * aclocal.m4: Regenerate.
- * configure: Regenerate.
-
-2003-07-01 Benjamin Kosnik <bkoz@redhat.com>
-
- * acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix obvious error.
- * aclocal.m4: Regenerated.
- * configure: Regenerated.
-
-2003-07-01 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/11389
- * include/bits/fstream.tcc (underflow): For encoding() == 0
- don't read more than __buflen chars.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: New.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: New.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: New.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: New.
-
-2003-07-01 Jerry Quinn <jlquinn@optonline.net>
-
- * 22_locale/num_put/put/char/7.cc: New.
- * 22_locale/num_put/put/wchar_t/7.cc: New.
-
-2003-06-30 Jerry Quinn <jlquinn@optonline.net>
-
- * src/locale.cc (__use_cache<numpunct>): Revert previous relocation.
- * include/bits/locale_facets.tcc (__use_cache<numpunct>): Ditto.
-
-2003-06-30 Benjamin Kosnik <bkoz@redhat.com>
-
- * 27_io/basic_filebuf/seekoff/char/1-in.cc: New.
- * 27_io/basic_filebuf/seekoff/char/1-io.cc: New.
- * 27_io/basic_filebuf/seekoff/char/1-out.cc: New.
- * 27_io/basic_filebuf/seekoff/char/2-in.cc: New.
- * 27_io/basic_filebuf/seekoff/char/2-io.cc: New.
- * 27_io/basic_filebuf/seekoff/char/2-out.cc: New.
- * 27_io/basic_filebuf/seekoff/char/2.cc: Remove.
- * 27_io/basic_filebuf/seekoff/char/3-in.cc: New.
- * 27_io/basic_filebuf/seekoff/char/3-io.cc: Change.
- * 27_io/basic_filebuf/seekoff/char/3-out.cc: New.
- * 27_io/basic_filebuf/seekoff/char/4-io.cc: Remove.
- * 27_io/basic_filebuf/seekpos/char/1-in.cc: New.
- * 27_io/basic_filebuf/seekpos/char/1-io.cc: New.
- * 27_io/basic_filebuf/seekpos/char/1-out.cc: New.
- * 27_io/basic_filebuf/seekpos/char/2-in.cc: New.
- * 27_io/basic_filebuf/seekpos/char/2-io.cc: New.
- * 27_io/basic_filebuf/seekpos/char/2-out.cc: New.
- * 27_io/basic_filebuf/seekpos/char/2.cc: Change.
- * 27_io/basic_filebuf/seekpos/char/3-in.cc: New.
- * 27_io/basic_filebuf/seekpos/char/3-io.cc: Remove.
- * 27_io/basic_filebuf/seekpos/char/3-out.cc: New.
- * 27_io/basic_filebuf/seekpos/char/4-io.cc: Remove.
- * data/seekoff-1.tst: Remove.
- * data/seekoff-1io.tst: New.
- * data/seekoff-1out.tst: New.
- * data/seekoff-2.tst: Remove.
- * data/seekoff-2io.tst: New.
- * data/seekoff-2out.tst: New.
- * data/seekoff.txt
- * data/seekpos-1.tst: Remove.
- * data/seekpos-1io.tst: New.
- * data/seekpos-1out.tst: New.
- * data/seekpos-2.tst: Remove.
- * data/seekpos-2io.tst: New.
- * data/seekpos-2out.tst: New.
- * data/seekpos.txt: New.
-
-2003-06-30 Jerry Quinn <jlquinn@optonline.net>
-
- * src/locale.cc (__use_cache<numpunct>): Move from here ...
- * include/bits/locale_facets.tcc (__use_cache<numpunct>): To
- here.
-
-2003-06-30 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/stl_algobase.h: Fully qualify standard
- functions with std::, thus avoiding Koenig lookup.
-
-2003-06-30 Doug Gregor <dgregor@apple.com>
-
- * include/bits/locale_facets.tcc (money_get::do_get): Avoid
- subscripting empty string.
-
-2003-06-30 Phil Edwards <pme@gcc.gnu.org>
-
- * testsuite/Makefile.am (check-am): Do not override.
- (baseline_symbols): Declare as PHONY, so no need to 'touch' it.
- * testsuite/Makefile.in: Regenerate.
-
-2003-06-30 Doug Gregor <dgregor@apple.com>
-
- * testsuite/24_iterators/insert_iterator.cc (test01, test02):
- Don't initialize an insert_iterator with a singular iterator.
+2004-01-26 Paolo Carlini <pcarlini@suse.de>
-2003-06-30 Benjamin Kosnik <bkoz@redhat.com>
-
- * acinclude.m4 (GLIBCPP_ENABLE_PCH): Add bits for --enable-pch.
- * aclocal.m4: Regenerate.
- * configure.in (GLIBCPP_CHECK_PCH): Move, change to
- GLIBCPP_ENABLE_PCH, default to yes.
- * configure: Regenerate.
- * docs/html/configopts.html: Add --enable-pch.
-
-2003-06-30 Phil Edwards <pme@gcc.gnu.org>
-
- * testsuite/lib/libstdc++-v3-dg.exp: Add comments.
- (libstdc++-v3-init): Also set LD_RUN_PATH.
-
-2003-06-30 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_streambuf.h (_M_mode): Unused by streambuf, move
- from here to filebuf and stringbuf.
- (~basic_streambuf()): Don't set _M_mode.
- (basic_streambuf()): Don't set _M_mode.
- * include/std/std_fstream.h (_M_mode): Move here, from streambuf.
- (~basic_filebuf()): Clean up.
- * include/bits/fstream.tcc (basic_filebuf()): Set _M_mode.
- * include/std/std_sstream.h (_M_mode): Move here, from streambuf.
- * testsuite/27_io/basic_streambuf/cons/char/1.cc: Don't set _M_mode.
- * testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
- * testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
- * testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
- * testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
-
-2003-06-30 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_fstream.h (_M_underflow): Remove.
- (uflow): Remove, inherited from streambuf.
- (underflow): Only declare.
- * include/bits/fstream.tcc (_M_underflow): Rename to
- underflow, to which is equivalent for __bump == false,
- simplify.
- * include/std/std_sstream.h (_M_underflow): Remove.
- (uflow): Remove, inherited from streambuf.
- (underflow): Only declare.
- * include/bits/sstream.tcc (_M_underflow): Rename to
- underflow, to which is equivalent for __bump == false,
- simplify.
-
-2003-06-29 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/stl_algo.h: Fully qualify standard functions
- with std::, thus avoiding Koenig lookup.
-
-2003-06-29 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc:
- Improve type correctness-wise.
- * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc:
- Likewise.
- * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc:
- Likewise.
- * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc:
+ * config/locale/generic/c_locale.cc: Fix throw messages
+ to use the __N marker.
+ * config/locale/gnu/c_locale.cc: Likewise.
+ * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
Likewise.
+ * docs/html/17_intro/C++STYLE: Likewise.
+ * include/bits/basic_ios.tcc: Likewise.
+ * include/bits/fstream.tcc: Likewise.
+ * include/bits/vector.tcc: Likewise.
+ * include/ext/ropeimpl.h: Likewise.
+ * include/std/std_bitset.h: Likewise.
+ * src/ios.cc: Likewise.
+ * src/locale.cc: Likewise.
+ * src/localename.cc: Likewise.
-2003-06-29 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_streambuf.h (uflow): According to
- 27.5.2.4.3,p16, don't check gptr() < egptr().
-
-2003-06-28 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9875
- * include/bits/fstream.tcc (seekoff): Fix for encoding() > 0.
- (seekpos): Likewise.
- * testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc:
- New test.
- * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
- New test.
-
-2003-06-27 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/testsuite_performance.h (__gnu_cxx_test): Change
- output name to libstdc++-v3-performance.sum.
- * testsuite/Makefile.am (CLEANFILES): Remove .performance.
- * testsuite/Makefile.in: Regenerate.
-
-2003-06-27 Matthias Klose <doko@debian.org>
-
- * testsuite/Makefile.am (check-abi, check-abi-verbose): Save
- output of abi-check in libstdc++-v3-abi.sum.
- * testsuite/Makefile.in: Regenerate.
-
-2003-06-27 Krister Walfridsson <cato@df.lth.se>
-
- * config/os/bsd/netbsd/ctype_noninline.h
- (_C_ctype_): Declare.
- (ctype<char>::classic_table): Return _C_ctype_ + 1.
- (ctype<char>::ctype): Use classic_table.
-
-2003-06-27 Paolo Carlini <pcarlini@unitus.it>
- Nathan C. Myers <ncm-nospam@cantrip.org>
-
- PR libstdc++/9178
- * include/bits/fstream.tcc (_M_underflow): Properly estimate
- the worst-case number of external bytes for a given get area.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: New.
-
-2003-06-27 Paolo Carlini <pcarlini@unitus.it>
- Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/11305
- * include/bits/fstream.tcc (overflow): Properly estimate the
- worst-case number of external bytes for a given put area
- (by using codecvt::max_length()).
- * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1: New.
- * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: New.
- * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: New.
- * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: New.
-
-2003-06-27 Nathan Sidwell <nathan@codesourcery.com>
-
- * config/linker-map.gnu: Remove ; after __numpunct_cache.
-
-2003-06-26 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/ios_base.h (ios_base::_M_getloc): Return reference
- to the imbued locale.
- * include/bits/locale_facets.tcc (num_put::_M_convert_int): Use
- _M_getloc.
- (num_put::_M_convert_float): Use.
-
-2003-06-26 Benjamin Kosnik <bkoz@redhat.com>
- Jerry Quinn <jlquinn@optonline.net>
-
- * config/linker-map.gnu: Add __numpunct_cache.
- * config/locale/gnu/numeric_members.cc
- (numpunct::_M_initialize_numpunct): Account for _M_data, fill in
- all elements for "C" locale.
- (numpunct::~numpunct): Delete _M_data.
- * config/locale/generic/numeric_members.cc: Same.
- * include/bits/basic_ios.tcc
- (basic_ios::init): Remove __locale_cache bits.
- (basic_ios::_M_cache_locale): Same.
- * include/bits/ios_base.h: Same. Tweaks.
- * include/bits/locale_classes.h: Tweaks. Reorder classes.
- (__use_cache): Make friends with _Impl, locale.
- (_Impl::_M_caches): Add.
- (_Impl::_M_install_cache): Add.
- * include/bits/locale_facets.h (__numpunct_cache): New.
- (numpunct): Encapsulate data members in __numpunct_cache member,
- _M_data. Adjust virtuals.
- (numpunct::numpunct): New ctor for the same.
- (__locale_cache_base): Remove.
- (__locale_cache): Remove.
- * include/bits/locale_facets.tcc (__use_cache): New function,
- specializations.
- (num_put::_M_convert_int, _M_convert_float, do_put): Use it.
- * src/globals.cc: Add cache_vec, numpunct_cache_c, numpunct_cache_w.
- * src/ios.cc (ios_base::ios_base): Remove __locale_cache.
- * src/locale-inst.cc: Same. Add __numpunct_cache.
- * src/locale.cc: Tweak inlines.
- (__use_cache): Define specializations.
- * src/localename.cc: Use global bits.
- (_Impl::~Impl): Deal with __numpunct_cache destruction.
- (_Impl::_Impl): Same. Pre-cache standard numpunct facets.
- (_Impl::_M_init_facet): Take into account __numpunct_cache.
- * testsuite/27_io/ios_base/cons/assign_neg.cc: Update line numbers.
- * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
+2004-01-26 Paolo Carlini <pcarlini@suse.de>
-2003-06-26 Nathan C. Myers <ncm-nospam@cantrip.org>
- Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/performance/filebuf_copy.cc: New, testing char
- by char file copy.
-
-2003-06-26 Paolo Carlini <pcarlini@unitus.it>
- Nathan C. Myers <ncm-nospam@cantrip.org>
-
- * include/bits/fstream.tcc (_M_underflow): When the actual
- end of file is reached, set 'uncommitted' mode to allow a
- next write without an intervening seek (see C++98 27.8.1.1,2
- and C89 7.9.5.3).
- * testsuite/27_io/basic_filebuf/underflow/char/2.cc: New.
-
-2003-06-25 Nathan C. Myers <ncm-nospam@cantrip.org>
-
- * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
- sputc): Move inline, from here...
- * include/std/std_streambuf.h: ... to here.
-
- * include/std/std_streambuf.h (snextc, sbumpc, sgetc,
- sputbackc, sungetc, sputc): Use __builtin_expect.
-
-2003-06-24 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/doxygen/mainpage.html: Use a useful title.
-
-2003-06-24 Benjamin Kosnik <bkoz@redhat.com>
-
- * docs/html/documentation.html: Remove assignment info.
- * docs/html/17_intro/contribute.html: Edits.
- * docs/html/17_intro/libstdc++-assign.tx: Remove.
-
- * docs/html/test.html: Update.
-
- * README: Update.
-
-2003-06-24 Benjamin Kosnik <bkoz@redhat.com>
- Ulrich Drepper <drepper@redhat.com>
-
- * testsuite/testsuite_performance.h: Tweak mallinfo.
-
-2003-06-24 Paolo Carlini <pcarlini@unitus.it>
- Nathan C. Myers <ncm-nospam@cantrip.org>
-
- * include/std/std_fstream.h (_M_filepos): Remove.
- (_M_reading, _M_writing): New, encode the various I/O modes:
- 'read', 'write' and 'uncommitted'.
- (sync): If there is something to flush, do it, then go to
- 'uncommitted' mode.
- * include/bits/fstream.tcc (_M_set_buffer): Overhaul to deal
- with three different cases: __off > 0 (upon underflow),
- __off == 0 (upon overflow), __off == -1 (upon open, setbuf,
- seekoff/pos).
- (_M_underflow): Don't call overflow, set _M_reading to true
- on success, tweak.
- (pbackfail): Set _M_reading to true on pback creation, tweak.
- (overflow): Don't seek, deal with overflow in 'uncommitted' mode,
- set _M_writing to true on success, tweak.
- (seekoff): Simplify, set _M_reading, _M_writing to false, call
- _M_set_buffer(-1) ('uncommitted').
- (open, close, setbuf): Set _M_reading, _M_writing to false and
- call _M_set_buffer(-1), tweak.
- (basic_filebuf): Don't set _M_buf_unified.
- (_M_destroy_internal_buffer): Don't call setg and setp.
- * include/ext/stdio_filebuf.h (stdio_filebuf): Use _M_reading,
- _M_writing and _M_set_buffer(-1).
- * include/std/std_streambuf.h (_M_move_out_cur, _M_move_in_cur,
- _M_out_lim, _M_buf_unified): Remove.
- (basic_streambuf): Don't set _M_out_lim and _M_buf_unified.
- (setp): Don't set _M_out_lim.
- * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Fix for
- the new logic ('read', 'write' and 'uncommitted' modes): e.g.,
- upon open the mode is 'uncommitted' and therefore the put area
- pointers are null.
- * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Ditto.
- * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Ditto.
- * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Ditto.
- * testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Ditto.
- * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Ditto.
- * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Ditto.
-
- * include/bits/fstream.tcc (showmanyc): Use only the
- documented derivation interface to basic_streambuf (gptr(),
- setg(), etc.) to work right with user specializations.
- * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
- sputc, xsgetn, xsputn, __copy_streambufs): Likewise.
- * include/std/std_streambuf.h (in_avail, sgetc, uflow, stossc):
+ * include/bits/basic_string.h (_M_replace_aux): Use the
+ __N marker in throw message.
+ * include/bits/basic_string.tcc (assign(const _CharT*,
+ size_type), insert(size_type, const _CharT*, size_type),
+ replace(size_type, size_type, const _CharT*, size_type),
+ reserve, _Rep::_S_create, resize, _M_replace_dispatch):
Likewise.
- * include/std/std_fstream.h (_M_create_pback, _M_destroy_pback,
- xsgetn): Likewise.
-
-2003-06-23 Loren J. Rittle <ljrittle@acm.org>
-
- * configure.host (freebsd*): Set abi_baseline_pair.
- * config/abi/i386-freebsd4/baseline_symbols.txt: Update from 3.2
- (at or near first release) to 3.3.
- * config/abi/i386-freebsd5/baseline_symbols.txt: New file.
- * config/abi/alpha-freebsd5/baseline_symbols.txt: New file.
- * config/abi/sparc-freebsd5/baseline_symbols.txt: New file.
-
- * include/ext/mt_allocator.h: Portability.
- * testsuite/testsuite_performance.h: Likewise.
-
-2003-06-23 Benjamin Kosnik <bkoz@redhat.com>
-
- * docs/html/17_intro/libstdc++-assign.txt: Update address.
-
- * testsuite/performance/ifstream_getline.cc: Fix.
-
-2003-06-23 Doug Gregor <dgregor@apple.com>
-
- * include/bits/boost_concept_check.h: Don't use _D or _R for type
- names.
-
-2003-06-22 Paolo Carlini <pcarlini@unitus.it>
- Nathan C. Myers <ncm-nospam@cantrip.org>
-
- * include/std/std_streambuf.h (_M_move_out_cur): _M_out_lim
- is now used only for filebuf, when _M_buf_unified is true.
- epgtr() plays the role of _M_out_lim but it's only updated
- upon overflow, underflow, uflow, seekoff/pos.
- * include/bits/sstream.tcc (_M_underflow): New, implements
- stringbuf::underflow and uflow.
- (seekoff, seekpos): Tweak, use _M_update_egptr.
- * include/std/std_sstream.h (str): Rewrote, deal correctly
- with the new logic, in particular, when pptr() > egptr().
- (_M_sync): When __testout && !__testin set all the get area
- pointers to the current string end.
- (_M_update_egptr): New, internal function updating egptr()
- to the actual string end.
- (_M_underflow): New, declare.
- (underflow): Dispatch to _M_underflow(false).
- (uflow): Dispatch to _M_underflow(true).
-
- * include/bits/sstream.tcc (pbackfail, overflow, seekoff,
- seekpos): Use only the documented derivation interface to
- basic_streambuf (gptr(), setg(), etc.) to work right with
- user specializations.
- * include/std/std_sstream.h (str, _M_sync): Likewise.
-
-2003-06-20 Doug Gregor <dgregor@apple.com>
-
- * testsuite/20_util/auto_ptr.cc: Don't dereference NULL auto_ptr
- * testsuite/21_strings/basic_string/replace/char/4.cc: Don't
- dereference end iterator.
- * testsuite/21_strings/basic_string/replace/wchar_t/4.cc: Same.
- * testsuite/22_locale/ctype/narrow/char/1.cc: Don't subscript with
- index equal to the length of a string.
- * testsuite/22_locale/ctype/narrow/char/2.cc: Same.
- * testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Same.
- * testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Same.
- * testsuite/22_locale/ctype/widen/char/1.cc: Same.
- * testsuite/22_locale/ctype/widen/wchar_t/1.cc: Same.
- * testsuite/23_containers/list_modifiers.cc: Don't dereference
- singular reverse iterator.
- * testsuite/23_containers/vector_bool.cc: Don't increment singular
- iterator.
- * testsuite/24_iterators/rel_ops.cc: Don't compare singular iterator.
-
-2003-06-20 Doug Gregor <dgregor@apple.com>
-
- * include/bits/basic_string.h (basic_string::replace): Dispatch
- _InputIterator version based on _Is_integer.
- * include/bits/basic_string.tcc (basic_string::replace):
- Renamed replace(iterator, iterator, size_type, _CharT) to
- _M_replace_aux.
- * testsuite/21_strings/basic_string/assign/char/1.cc (test01):
- Test basic_string::assign(_InputIterator, _InputIterator),
- which calls basic_string::replace(iterator, iterator,
- _Input_iterator, _InputIterator).
-
-2003-06-20 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/testsuite_performance.h (resource_counter): Don't use
- mallinfo at the moment.
-
-2003-06-20 Matthias Klose <doko@debian.org>
-
- * configure.host: Set try_cpu to target_cpu for existing
- baseline files.
-
-2003-06-19 Andreas Jaeger <aj@suse.de>
-
- * testsuite/Makefile.am (extract_symvers): Revert accidental
- change.
- * testsuite/Makefile.in: Regenerate.
-
- * configure.in: Pass MULTISUBDIR to testsuite/Makefile.
- * configure: Regenerated.
-
-2003-06-19 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_sstream.h (_M_sync): Make non virtual.
-
-2003-06-18 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/testsuite_performance.h (time_counter): New.
- (resource_counter): New.
- (report_performance): New.
- (start_counters): New.
- (stop_counters): New.
- (clear_counters): New.
- * testsuite/performance/allocator.cc: Instrument.
- * testsuite/performance/cout_insert_int.cc: Same.
- * testsuite/performance/complex_norm.cc: Same.
- * testsuite/performance/filebuf_sputc.cc: New.
- * testsuite/performance/fstream_seek_write.cc: Same.
- * testsuite/performance/ifstream_getline.cc: Same.
- * testsuite/performance/map_create_fill.cc: Same.
- * testsuite/performance/ofstream_insert_float.cc: Same.
- * testsuite/performance/ofstream_insert_int.cc: Same.
- * testsuite/performance/string_append.cc: Convert.
- * scripts/check_performance: New.
- * testsuite/Makefile.am (check-performance): New.
- (CLEANFILES): Add.
-
-2003-06-18 Paolo Carlini <pcarlini@unitus.it>
- Benjamin Kosnik <bkoz@redhat.com>
-
- * include/std/std_sstream.h (setbuf): Check __n >= 0.
- * include/bits/fstream.tcc (setbuf): Tweak.
-
-2003-06-18 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/sstream.tcc (seekoff): We can't seek beyond
- _M_out_lim, therefore _M_move_out_cur boils down to simply
- updating _M_out_cur.
- (seekpos): Likewise, clean up.
-
-2003-06-18 Nathan C. Myers <ncm-nospam@cantrip.org>
- Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/fstream.tcc (setbuf): Allow (__s, 1) too,
- simply equivalent to the unbuffered case (0, 0) as far as
- _M_buf_size is concerned.
-2003-06-18 Andreas Jaeger <aj@suse.de>
+ * include/bits/basic_string.h, include/bits/basic_string.tcc:
+ Fold overlong lines, minor formatting changes.
- * testsuite/Makefile.am (new-abi-baseline): Create baseline
- directory.
- (baseline_file): Use baseline_dir.
- (baseline_dir): New.
- (mkinstalldirs): New.
+2004-01-26 Paolo Carlini <pcarlini@suse.de>
- * acinclude.m4: Rename baseline_file to baseline_dir, strip
- filename from baseline_dir.
+ * include/bits/basic_string.h (replace(iterator, iterator,
+ const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
+ (replace(iterator, iterator, const _CharT*)): Ditto.
+ (replace(iterator, iterator, const _CharT*, size_type)):
+ Add missing _GLIBCXX_DEBUG_PEDASSERT.
- * testsuite/Makefile.in: Regenerated.
- * Makefile.in: Regenerated.
- * aclocal.m4: Regenerated.
- * configure: Regenerated.
+2004-01-26 Paolo Carlini <pcarlini@suse.de>
-2003-06-17 Benjamin Kosnik <bkoz@redhat.com>
+ * include/bits/basic_string.tcc (replace(size_type,
+ size_type, const _CharT*, size_type)): Implement optimized
+ in-place algorithm for non-overlapping ranges.
+ * testsuite/21_strings/basic_string/replace/char/6.cc: New.
+ * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
- * configure.in: Missed check_survey bit.
- * configure: Regenerated.
+ * include/bits/basic_string.tcc (insert(size_type,
+ const _CharT*, size_type)): Tweak slightly.
-2003-06-17 Benjamin Kosnik <bkoz@redhat.com>
+2004-01-26 Andreas Schwab <schwab@suse.de>
- * scripts: New.
- * config/abi/extract_symvers: Move to...
- * scripts/extract_symvers: ...here.
- * mkcheck.in: Move to..
- * scripts/check_survey.in: ...here.
- * testsuite_flags.in: Move to..
- * scripts/testsuite_flags.in: ...here.
- * configure.in: Change check and testsuite_flags locations.
- * configure: Regenerate.
- * testsuite/Makefile.am (current_symbols.txt): Change location.
- * testsuite/Makefile.in: Regenerate.
- * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Modify
- location of testsuite_flags.
- * Makefile.am (check-script): Move..
- (check-script-install): Move...
- * testsuite/Makefile.am: ... here.
- * testsuite/Makefile.in: Regenerate.
- * Makefile.in: Regenerate.
-
-2003-06-17 Benjamin Kosnik <bkoz@redhat.com>
-
- * config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.3.0.
-
-2003-06-16 Benjamin Kosnik <bkoz@redhat.com>
-
- * Makefile.am (check-abi): Move...
- (new-abi-baseline): Move...
- * testsuite/Makefile.am: ...here.
- (new-abi-baseline): Conditionalize.
- (check-abi): Conditionalize.
- (check-abi-verbose): New.
- * Makefile.in: Regenerate.
- * testsuite/Makefile.in: Regenerate.
- * configure.in: Consolidate testsuite configure bits.
- * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Same.
- * configure: Regenerate.
- * aclocal.m4: Regenerate.
- * testsuite/abi_check.cc: Add --check-verbose.
- Only output detailed information if --check-verbose.
-
-2003-06-16 Andreas Jaeger <aj@suse.de>
-
- * testsuite/abi_check.cc: Create summary report.
-
-2003-06-16 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Fix
- for systems with BUFSIZ != 8192.
- * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
- * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc:
- Minor tweaks.
-
-2003-06-16 Andreas Jaeger <aj@suse.de>
-
- * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Make
- check-abi multilib aware.
- * aclocal.m4: Regenerate.
- * configure: Regenerate.
-
-2003-06-16 Benjamin Kosnik <bkoz@redhat.com>
- Andreas Jaeger <aj@suse.de>
-
- * configure.host: Set x86_64 abi_baseline pair correctly.
-
-2003-06-16 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Split and
- fix for missing seeks between gets and puts into...
- * testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: New.
- * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: New.
- * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: New.
- * testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: New.
- * testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: New.
- * testsuite/27_io/basic_filebuf/sungetc/char/2-out.cc: New.
-
-2003-06-15 Richard Henderson <rth@redhat.com>
-
- * config/linker-map.gnu: Export virtual function thunks for
- 64-bit systems too.
-
-2003-06-13 Benjamin Kosnik <bkoz@redhat.com>
-
- * config/abi/i686-pc-linux-gnu: To..
- * config/abi/i486-linux-gnu: ...this.
- * config/abi/alphaev67-unknown-linux-gnu: To..
- * config/abi/alpha-linux-gnu: ...this.
- * config/abi/ia64-unknown-linux-gnu: To...
- * config/abi/ia64-linux-gnu: ...this.
- * config/abi/x86_64-unknown-linux-gnu: To...
- * config/abi/x86_64-linux-gnu: ...this.
- * config/abi/i386-unknown-freebsd4: To...
- * config/abi/i386-freebsd4: ...this.
- * config/linker-map.gnu: Cleanups, move libsupc++ bits into
- CXXABI.
- * configure.host: abi_baseline_triplet to abi_baseline_pair.
- Simplify cpu bits so that abi_baseline_pair can use the same
- cpu configuration.
- * acinclude.m4: Same.
- * aclocal.m4: Regenerate.
- * configure.in: Can't get enable_abi_check to yes unless native.
- * configure: Regenerate.
-
-2003-06-13 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Split and
- fix for missing seeks between gets and puts into...
- * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: New.
- * testsuite/27_io/basic_filebuf/seekoff/char/4-io.cc: New.
- * testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Same, into...
- * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: New.
- * testsuite/27_io/basic_filebuf/seekpos/char/4-io.cc: New.
- * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Fix
- for missing seeks between gets and puts.
- * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Ditto.
- * testsuite/data/seekoff-1.tst: New.
- * testsuite/data/seekoff-2.tst: New.
- * testsuite/data/seekpos-1.tst: New.
- * testsuite/data/seekpos-2.tst: New.
-
-2003-06-13 Nathan C. Myers <ncm-nospam@cantrip.org>
-
- Avoid multi-processor bus contention on increment/decrement-and-
- test of the reference count in the empty-string object, by comparing
- addresses first, and never touching the reference count of the empty-
- string object.
- * include/bits/basic_string.h:
- (_S_empty_rep_storage): Move into basic_string<>::_Rep for use by its
- members.
- (_Rep::_S_empty_rep()): New accessor.
- (_Rep::_M_length, _Rep::_M_capacity, _Rep::_M_references): Move to
- a base class _Rep_base.
- (_Rep::_M_dispose, _Rep::_M_refcopy): Check for the empty string.
- (basic_string()): Change to use _M_refdata() in place of _M_refcopy(),
- since no longer must increment its refcount.
- * include/bits/basic_string.tcc:
- (_Rep::_M_destroy, _M_leak_hard): Check for the empty string and
- return immediately. The former might be unnecessary. The latter
- prevents begin() and end() from cloning it unnecessarily.
- (_S_construct(_InIterator, _InIterator, const _Alloc&,
- input_iterator_tag), _S_construct(_InIterator, _InIterator,
- const _Alloc&, forward_iterator_tag), _S_construct(size_type, _CharT,
- const _Alloc&)): Change to use _M_refdata() in place of _M_refcopy().
- (_M_mutate): Check for the empty string and treat it as shared.
- This is necessary here because _M_mutate is sometimes called with
- all-zero arguments; in all other uses of _M_is_shared, the test comes
- out right anyhow.
-
-2003-06-12 Benjamin Kosnik <bkoz@redhat.com>
-
- * src/allocator-inst.cc: Explicitly instantiate.
- * include/ext/pool_allocator.h: Inhibit implicit instantiations.
- Tweaks.
- * config/linker-map.gnu: Add __pool_alloc bits. Tweaks.
-
-2003-06-11 Benjamin Kosnik <bkoz@redhat.com>
-
- * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Simplify.
- * aclocal.m4: Regenerate.
- * Makefile.am (SUBDIRS): Remove libio.
- * Makefile.in: Regenerate.
- * configure.in: Same.
- * configure: Regenerate.
- * config/io/basic_file_libio.cc: Remove.
- * config/io/basic_file_libio.h: Remove.
- * config/io/c_io_libio_codecvt.c: Remove.
- * config/io/c_io_libio.h: Remove.
- * libio/*: Remove.
- * src/Makefile.am: Same.
- * src/Makefile.in: Regenerate.
- * docs/html/configopts.html: Edits.
- * docs/html/explanations.html: Edits.
-
-2003-06-11 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/stl_alloc.h (__debug_alloc): Move out.
- (__malloc_alloc): Same.
- (__pool_alloc): Same.
- (__new_alloc): Same.
- Rename to..
- * include/bits/allocator.h: ...this.
- * include/bits/stl_deque.h: Modify comment.
- * include/bits/stl_tree.h: Modify include.
- * include/std/std_memory.h: Same.
- * include/ext/rope: Same.
- * include/ext/slist: Same.
- * include/std/std_vector.h: Same.
- * include/std/std_stack.h: Same.
- * include/std/std_queue.h: Same.
- * include/std/std_list.h: Same.
- * include/std/std_deque.h: Same.
- * include/backward/alloc.h: Same.
- * include/ext/debug_allocator.h: New.
- * include/ext/malloc_allocator.h: New.
- * include/ext/pool_allocator.h: New.
- * include/ext/new_allocator.h: New.
- * include/bits/pthread_allocimpl.h: Remove.
- * include/bits/stl_pthread_alloc.h: Remove.
- * include/Makefile.am (ext_headers): Add.
- * include/Makefile.in: Regenerate.
- * src/stl-inst.cc: Use __gnu_cxx namespace.
- * src/stl-inst.cc: Move to...
- * src/allocator-inst.cc: Here.
- * src/Makefile.am (sources): Update.
- * src/Makefile.in: Regenerate.
- * config/linker-map.gnu: Remove __pool_alloc bits.
- * testsuite/ext/headers.cc: Add.
- * testsuite/ext/allocators.cc: Fixup.
-
-2003-06-11 Stefan Olsson <stefan@snon.net>
- Ola Rönnerup <fnolis@home.se>
-
- * include/Makefile.am (ext_headers): Add.
- * include/Makefile.in: Regenerate.
- * include/ext/mt_allocator.h: New file.
-
-2003-06-10 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/fstream.tcc (close): Clean up a bit.
-
- * include/bits/streambuf.tcc (sbumpc): Clean up a bit.
-
- * include/std/std_fstream.h (_M_destroy_pback): _M_pback_cur_save
- - the saved _M_in_cur, that is - cannot be null.
- (sync): Constify a variable.
-
- * include/std/std_streambuf.h: Tweak a comment.
- (in_avail): Constify a variable.
-
-2003-06-10 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/html/17_intro/BUGS: Update from 2.90.8 snapshot.
- * docs/html/17_intro/CHECKLIST: Bring up to date with respect to
- correctness of container::iterator typedefs. Fix whitespace.
- * docs/html/20_util/howto.html, docs/html/ext/howto.html: Add links
- to allocator docs.
- * docs/html/documentation.html: Regenerate.
-
- * include/bits/basic_string.h, include/bits/basic_string.tcc,
- include/bits/deque.tcc, include/bits/list.tcc, include/bits/stl_algo.h,
- include/bits/stl_algobase.h, include/bits/stl_bvector.h,
- include/bits/stl_deque.h, include/bits/stl_iterator_base_funcs.h,
- include/bits/stl_list.h, include/bits/stl_uninitialized.h,
- include/bits/stl_vector.h, include/bits/vector.tcc,
- include/ext/algorithm, include/ext/slist, include/std/std_bitset.h:
- Change _Iter names to _Iterator, and __pos to __position.
-
- * include/bits/stl_relops.h, include/bits/stl_numeric.h,
- include/bits/stl_multiset.h, include/bits/stl_set.h:
- Remove emacs markers.
-
- * include/bits/stl_threads.h (_STL_auto_lock): Add __unused__.
-
-2003-06-10 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/fstream.tcc (overflow): According to
- 27.5.2.4.5, overflow() returns not_eof(eof()).
- * testsuite/27_io/basic_filebuf/overflow/char/2.cc: New.
- * testsuite/27_io/basic_filebuf/overflow/char/2-unbuf.cc: Ditto.
-
-2003-06-10 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/fstream.tcc (_M_underflow): Check overflow return
- value; tweak slightly.
-
-2003-06-09 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/fstream.tcc (_M_underflow): Do not special
- case the unbuffered case, which really means simply a one char
- get area.
- (basic_filebuf): Initialize _M_buf_size.
- (setbuf): Unbuffered means _M_buf_size == 1, since only
- _M_buf_size - 1 == 0 chars are going to be used for the
- put area and 1 for the get area.
- * include/std/std_streambuf.h (_M_buf_size): Move to basic_filebuf.
- (~basic_streambuf): Tweak.
- (basic_streambuf): Do not initialize _M_buf_size.
- * include/std/std_fstream.h (_M_buf_size): Add from basic_streambuf.
- (~basic_filebuf): Tweak.
- (_M_set_buffer): Tweak, considering that _M_buf_size == 1 is the
- unbuffered situation (i.e., put area pointers NULL).
- * include/bits/streambuf.tcc (sbumpc): Clean up.
- * testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Split into...
- * testsuite/27_io/basic_filebuf/sputbackc/char/1-in.cc: New.
- * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: New.
- * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: New.
- * testsuite/27_io/basic_filebuf/sputbackc/char/2-in.cc: New.
- * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: New.
- * testsuite/27_io/basic_filebuf/sputbackc/char/2-out.cc: New.
-
-2003-06-09 Phil Edwards <pme@gcc.gnu.org>
-
- * acinclude.m4: Move all AM_CONDITIONAL calls out.
- (GLIBCPP_CONFIGURE): Set defaults for variables used in AM_CONDITIONAL
- statements.
- * configure.in: Centralize AM_CONDITIONALs so that they are always
- run. Make use of GLIBCPP_IS_CROSS_COMPILING.
- * aclocal.m4, configure: Regenerated.
-
-2003-06-09 Paolo Carlini <pcarlini@unitus.it>
-
- * docs/html/ext/howto.html ('LWG Issues'): Add issue 235.
-
-2003-06-06 Nathan Myers <ncm-nospam@cantrip.org>
-
- * include/bits/stl_iterator.h
- (reverse_iterator::reverse_iterator()): Apply DR235: default
- constructor default-initializes data member. Instantiated on a
- pointer type, the member has to end up equal to zero.
-
-2003-06-06 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/stl_alloc.h: Cleanups.
- * include/ext/functional: Same.
- * include/ext/hash_map: Same.
- * include/ext/hash_set: Same.
- * include/ext/iterator: Same.
- * include/ext/memory: Same.
- * include/ext/numeric: Same.
- * include/ext/rb_tree: Same.
- * include/ext/ropeimpl.h: Same.
- * include/ext/slist: Same.
- * include/ext/stdio_filebuf.h: Same.
- * include/ext/stdio_sync_filebuf.h: Same.
- * include/ext/stl_rope.h: Move to...
- * include/ext/rope: ...here.
- * include/ext/stl_hash_fun.h: Move to...
- * include/ext/hash_fun.h: ...here.
- * include/ext/stl_hashtable.h: Move to...
- * include/ext/hashtable.h: ...here.
- * include/backward/hashtable.h: Reflect new names.
- * include/Makefile.am: Same.
- * include/Makefile.in: Regenerated.
-
-2003-06-05 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/9024
- * include/bits/fstream.tcc (_M_underflow): Fix for unbuffered.
- * include/bits/stl_algobase.h: Tweak.
- * include/std/std_fstream.h: Move _M_buf_size to...
- * include/std/std_streambuf.h: ...here. Modify.
- * include/bits/streambuf.tcc: Same.
- * testsuite/testsuite_hooks.h: Tweak.
- * testsuite/testsuite_io.h (constraint_filebuf): New.
- * testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Split into...
- * testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: New.
- * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: New.
- * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: New.
- * testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: New.
- * testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: New.
- * testsuite/27_io/basic_filebuf/sbumpc/char/2-out.cc: New.
- * testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Split into...
- * testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: New.
- * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: New.
- * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: New.
- * testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: New.
- * testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: New.
- * testsuite/27_io/basic_filebuf/sgetc/char/2-out.cc: New.
- * testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Split into...
- * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: New.
- * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: New.
- * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: New.
- * testsuite/27_io/basic_filebuf/sgetn/char/2.cc: Split into...
- * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: New.
- * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: New.
- * testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc: New.
- * testsuite/27_io/basic_filebuf/sgetn/char/3.cc: New.
- * testsuite/27_io/basic_filebuf/snextc/char/1.cc: Split into...
- * testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: New.
- * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: New.
- * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: New.
- * testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: New.
- * testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: New.
- * testsuite/27_io/basic_filebuf/snextc/char/2-out.cc: New.
- * testsuite/27_io/basic_filebuf/sputc/char/1.cc: Split into...
- * testsuite/27_io/basic_filebuf/sputc/char/1-in.cc: New.
- * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: New.
- * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: New.
- * testsuite/27_io/basic_filebuf/sputc/char/2.cc: Split into...
- * testsuite/27_io/basic_filebuf/sputc/char/2-in.cc: New.
- * testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: New.
- * testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: New.
- * testsuite/27_io/basic_filebuf/sputn/char/1.cc: Split into...
- * testsuite/27_io/basic_filebuf/sputn/char/1-in.cc: New.
- * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: New.
- * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: New.
- * testsuite/27_io/basic_filebuf/sputn/char/2-in.cc: New.
- * testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: New.
- * testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: New.
- * testsuite/data/sgetc.txt: New.
- * testsuite/data/sgetn.txt: New.
-
-2003-06-05 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/11095
- * include/bits/istream.tcc (operator>>(basic_istream&, _CharT*)):
- Deal with width() smaller than zero.
- * include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT),
- operator<<(basic_ostream&, char), operator<<(basic_ostream&, const
- _CharT*), operator<<(basic_ostream<_CharT, _Traits>&, const
- char*), operator<<(basic_ostream<char, _Traits>&, const char*),
- operator<<(basic_ostream, const basic_string&)): Likewise.
-
- * testsuite/27_io/basic_istream/extractors_character/char/
- (11095-i.cc, 11095-oa.cc, 11095-ob.cc, 11095-oc.cc): New.
- * testsuite/27_io/basic_ostream/inserters_character/char/
- (11095-oa.cc, 11095-ob.cc, 11095-oc.cc): New.
- * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
- (11095-od.cc, 11095-oe.cc, 11095-of.cc): New.
-
-2003-06-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * acinclude.m4 (GLIBCPP_CHECK_PCH): Only set glibcpp_PCHFLAGS if
- .gch compilation works.
- * aclocal.m4, configure: Regenerate.
- * testsuite_flags.in (--build-cxx): Use glibcpp_PCHFLAGS to
- initialize PCHFLAGS.
-
-2003-06-04 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/basic_string.h (_M_fold, insert(iterator, _CharT),
- erase(iterator), erase(iterator, iterator), c_str,
- compare(const basic_string&)): Constify various variables.
- * include/bits/basic_string.tcc (_S_construct(_InIter, _InIter,
- const _Alloc&, input_iterator_tag), _M_destroy, _M_mutate,
- _S_create, resize, _M_replace, _M_replace_safe,
- append(const basic_string&), append(const basic_string&, size_type,
- size_type), append(const _CharT*, size_type), append(size_type,
- _CharT), operator+(const _CharT*, const basic_string&),
- operator+(_CharT, const basic_string&), replace(iterator, iterator,
- size_type, _CharT), find(const _CharT*, size_type, size_type),
- find(_CharT, size_type), rfind(const _CharT*, size_type, size_type),
- rfind(_CharT, size_type), compare(size_type, size_type,
- const basic_string&), compare(size_type, size_type,
- const basic_string&, size_type, size_type), compare(const _CharT*),
- compare(size_type, size_type, const _CharT*), compare(size_type,
- size_type, const _CharT*, size_type)): Likewise.
-
-2003-06-03 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/fstream.tcc (pbackfail): Make a rarely taken
- 'if' branch less obscure.
-
-2003-06-02 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR libstdc++/9815
- * config/cpu/i386/atomicity.h (__exchange_and_add): add intel
- asm case to asm.
- * config/cpu/i486/atomicity.h (__exchange_and_add): Likewise.
- (__atomic_add): likewise.
-
-2003-06-02 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/sstream.tcc (pbackfail): Minor clean up and
- reformatting, consistent with basic_filebuf::pbackfail.
-
-2003-06-02 Richard Kreckel <Richard.Kreckel@GiNaC.DE>
-
- PR libstdc++/11062
- * config/cpu/mips/atomicity.h: Change __attribute__ ((unused)) to
- __attribute__ ((__unused__)).
- * config/os/aix/atomicity.h: Likewise.
-
-2003-06-02 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9761
- * include/bits/fstream.tcc (pbackfail): If the pback buffer
- is already active don't try to store in it a second char.
- * testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: New.
-
- * include/bits/fstream.tcc (pbackfail): Add unbuffered bits.
-
-2003-06-02 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: Tweak
- line spacing.
-
-2003-06-02 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_fstream.h (_M_destroy_pback): Use _M_in_beg
- instead of unnecessarily taking the address of _M_pback.
- (xsgetn): Simplify slightly for a single char pback buffer.
-
-2003-06-02 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/sstream.tcc (seekoff): Remove four unnecessary
- variables and two 'if', clean up.
+ * config/locale/gnu/monetary_members.cc: Restore locale before
+ rethrowing exception.
-2003-06-02 Paolo Carlini <pcarlini@unitus.it>
+2004-01-25 Paolo Carlini <pcarlini@suse.de>
- * include/bits/sstream.tcc (seekpos): Test against _M_out_lim
- not _M_out_end, since the former actually points to the string
- end (vs buffer end).
- * testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: New.
+ * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
+ Define inline here.
+ * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
+ Move inline.
-2003-05-30 Phil Edwards <pme@gcc.gnu.org>
+ * include/bits/basic_string.tcc: Very minor tweaks.
- * docs/doxygen/filter: New file.
- * docs/doxygen/filter.sed: New file.
- * docs/doxygen/run_doxygen: Add g flag to sed substitutions. Duh.
- * docs/doxygen/user.cfg.in (INPUT_FILTER): Point to new filter.
- * docs/html/documentation.html: Fix links to doxygen pages.
+2004-01-25 Paolo Carlini <pcarlini@suse.de>
-2003-05-30 Paolo Carlini <pcarlini@unitus.it>
+ * testsuite/performance/string_append.cc: Increase number
+ of iterations.
- * include/bits/fstream.tcc (_M_convert_to_external): Don't
- check for __ilen > 0.
+2004-01-25 Paolo Carlini <pcarlini@suse.de>
-2003-05-29 Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de>
+ * include/bits/basic_string.h (erase(size_type, size_type),
+ erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
+ instead, thus avoiding redundant check for length_error.
- PR libstdc++/10783
- * include/bits/stl_iterator.h (class __normal_iterator):
- Don't inherit from iterator, add missing typedefs.
-
-2003-05-29 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/24_iterators/reverse_iterator.cc: Split up, as follows.
- * testsuite/24_iterators/reverse_iterator/1.cc: New.
- * testsuite/24_iterators/reverse_iterator/2.cc: New.
- * testsuite/24_iterators/reverse_iterator/3.cc: New, from
- PR libstdc++/10783.
-
-2003-05-27 Steve Ellcey <sje@cup.hp.com>
-
- * config/os/hpux/os_defines.h: Define _LIBUNWIND_STD_ABI if we are
- on IA64 HP-UX.
- * libsupc++/eh_throw.cc: Don't call _Unwind_Resume_or_Rethrow if
- _LIBUNWIND_STD_ABI is set.
-
-2003-05-26 Brendan Kehoe <brendan@zen.org>
-
- * include/bits/locale_facets.tcc (do_get): Honor $22.2.6.3.3/8 and
- make sure the number of digits required after the decimal-point
- (if any) is exactly the value returned by frac_digits().
- * testsuite/22_locale/money_get/get/char/9.cc: New.
- * testsuite/22_locale/money_get/get/wchar_t/9.cc: New.
-
-2003-05-27 Jonathan Wakely <redi@gcc.gnu.org>
+ * include/bits/basic_string.h: Tweak some comments.
- * include/std/std_istream.h, include/std/std_ostream.h: Typo in
+2004-01-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (operator+(const _CharT*,
+ const basic_string&)): No need to go through the append
+ taking two iterators.
+
+2004-01-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (rfind(_CharT, size_type)):
+ Revert last change to use std::min: machine language is worse.
+ (find_last_of(const _CharT*, size_type, size_type)): Ditto.
+ (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
+ (find_last_not_of(_CharT, size_type)): Ditto.
+
+ * include/bits/basic_string.tcc (insert(size_type, const _CharT*,
+ size_type)): Discard the value returned by _M_check.
+ (replace(size_type, size_type, const _CharT*, size_type)): Ditto.
+ (append(const basic_string&, size_type, size_type)): Ditto.
+ (copy(_CharT*, size_type, size_type)): Ditto.
+ (compare(size_type, size_type, const basic_string&)): Ditto.
+ (compare(size_type, size_type, const basic_string&,
+ size_type, size_type)): Ditto.
+ (compare(size_type, size_type, const _CharT*)): Ditto.
+ (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
+
+2004-01-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (insert(size_type,
+ const basic_string&, size_type, size_type)): Define inline here.
+ * include/bits/basic_string.tcc (insert(size_type,
+ const basic_string&, size_type, size_type)): Move inline.
+
+2004-01-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (assign(const basic_string&,
+ size_type, size_type)): Define inline here.
+ (replace(size_type, size_type, const basic_string&,
+ size_type, size_type)): Ditto.
+ (_M_replace_dispatch(iterator, iterator, _InputIterator,
+ _InputIterator, __false_type)): Only declare.
+ (_M_replace(iterator, iterator, _InputIterator,
+ _InputIterator)): Remove.
+ * include/bits/basic_string.tcc (assign(const basic_string&,
+ size_type, size_type)): Move inline.
+ (replace(size_type, size_type, const basic_string&,
+ size_type, size_type)): Ditto.
+ (_M_replace_dispatch(iterator, iterator, _InputIterator,
+ _InputIterator, __false_type)): Define, now does also what
+ _M_replace did before.
+ * src/string-inst.cc (_M_replace): Don't instantiate.
+
+ * include/bits/basic_string.tcc (find(const _CharT*,
+ size_type, size_type)): Tidy.
+ (rfind(_CharT, size_type)): Ditto.
+ (find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
+ (find_first_not_of(_CharT, size_type)): Ditto.
+ (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
+ (find_last_not_of(_CharT, size_type)): Ditto.
+
+2004-01-23 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13838
+ * include/debug/bitset (operator|=): Fix typo.
+ * testsuite/23_containers/bitset/operations/13838.cc: New.
+
+2004-01-23 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (insert(size_type,
+ const _CharT*, size_type __n)): Fix length_error check.
+ (replace(size_type, size_type, const _CharT*, size_type):
+ Ditto; call _M_replace_safe.
+ (_M_replace_aux(size_type, size_type, size_type, _CharT):
+ Fix length_error check.
+ (_M_replace(iterator, iterator, _InputIterator,
+ _InputIterator)): Ditto, tweak.
+ (_M_replace_safe(size_type, size_type, const _CharT*,
+ size_type)): Remove length_error check.
+
+ * include/bits/basic_string.tcc (append(const basic_string&),
+ append(const basic_string&, size_type, size_type)): Tweak
comment.
-2003-05-26 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/9339
- * include/std/std_fstream.h (basic_filebuf::_M_overflow): Remove.
- (_M_pback): No array necessary.
- * include/bits/fstream.tcc (basic_filebuf::_M_overflow): Add
- unbuffered case, coalesec into ...
- (basic_filebuf::overflow): ...this.
- * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: New.
- * testsuite/27_io/basic_filebuf/sputc/char/2.cc: Unbuffered.
-
-2003-05-24 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * libsupc++/Makefile.am, libsupc++/cxxabi.h, libsupc++/del_op.cc,
- libsupc++/del_opnt.cc, libsupc++/del_opv.cc, libsupc++/del_opvnt.cc,
- libsupc++/eh_alloc.cc, libsupc++/eh_aux_runtime.cc,
- libsupc++/eh_catch.cc, libsupc++/eh_exception.cc,
- libsupc++/eh_globals.cc, libsupc++/eh_personality.cc,
- libsupc++/eh_term_handler.cc, libsupc++/eh_terminate.cc,
- libsupc++/eh_throw.cc, libsupc++/eh_type.cc,
- libsupc++/eh_unex_handler.cc, libsupc++/exception,
- libsupc++/new, libsupc++/new_handler.cc, libsupc++/new_op.cc,
- libsupc++/new_opnt.cc, libsupc++/new_opv.cc, libsupc++/new_opvnt.cc,
- libsupc++/pure.cc, libsupc++/tinfo.cc, libsupc++/tinfo2.cc,
- libsupc++/typeinfo, libsupc++/unwind-cxx.h, libsupc++/vec.cc:
- Replace "GNU CC" with "GCC".
-
- * include/backward/new.h: Replace "GNU CC" with "GCC".
-
-2003-05-22 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/3066.
- * configure.in: Switch target to host, don't assume newlib.
- (target_alias): Remove.
- * configure: Regenerate.
- * acinclude.m4: Same.
- * aclocal.m4: Regenerate.
- * configure.target: Same. Rename to...
- * configure.host: This.
-
-2003-05-22 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_fstream.h (_S_pback_size): Remove definition.
- (_M_create_pback(), _M_destroy_pback()): Simplify for a single-char
- pback buffer.
- * include/bits/fstream.tcc (_S_pback_size): Remove declaration.
- * testsuite/27_io/basic_filebuf/3.cc: Remove explicit instantiation
- of _S_pback_size for systems with no COMDAT or weak support.
- * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
- * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
- * testsuite/27_io/basic_filebuf/underflow/10096.cc: Likewise.
- * testsuite/27_io/basic_fstream/3.cc: Likewise.
- * testsuite/27_io/basic_ifstream/3.cc: Likewise.
- * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Likewise.
- * testsuite/27_io/basic_ofstream/3.cc: Likewise.
- * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Likewise.
- * testsuite/27_io/basic_streambuf/3.cc: Likewise.
-
-2003-05-22 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/fstream.tcc (_M_underflow): Simplify:
- !__testout implies _M_filepos == _M_in_end, therefore
- the first _M_file.seekoff call is never issued.
-
-2003-05-22 Benjamin Kosnik <bkoz@redhat.com>
-
- * configure.in: Sort cross table.
- * configure: Regenerate.
-
-2003-05-22 Brad Spencer <spencer@infointeractive.com>
-
- PR libstdc++/10106
- * configure.in: Add Solaris cross bits.
-
-2003-05-21 Danny Smith <dannysmith@users.sourceforge.net>
-
- * libstdc++-v3/config/os/mingw32/os_defines.h
- (__GTHREAD_HIDE_WIN32API): Define to 1 by defualt.
- (NOMINMAX): Define. Update copyright year.
-
-2003-05-21 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_fstream.h (_M_set_buffer): Fix indentation.
-
-2003-05-21 Jonathan Wakely <redi@gcc.gnu.org>
-
- * docs/html/faq/index.html: Fix typo.
- * docs/html/faq/index.txt: Regenerate.
-
-2003-05-21 Jonathan Wakely <redi@gcc.gnu.org>
-
- * docs/html/test.html: Fix markup.
-
-2003-05-21 Danny Smith <dannysmith@users.sourceforge.net>
-
- * libmath/stubs.c (hypot, hypotf, hypotl): Don't divide by
- zero.
- Update copyright year.
-
-2003-05-20 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/27_io/basic_filebuf/close/char/4.cc: Fix typo.
-
-2003-05-20 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/27_io/basic_filebuf/close/char/5.cc: New file,
- further testing that upon filebuf::close() 27.8.1.1,3 is enforced.
-
-2003-05-20 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * include/bits/stl_alloc.h (__default_alloc_template::_S_chunk_alloc):
- Cast via void* to avoid -Wcast-align warnings.
- (__default_alloc_template::_S_refill): Likewise.
-
-2003-05-20 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/README: Move to...
- * docs/html/test.html: ...here. Add documentation.
- * docs/html/install.html: Move testing bits out..
- * docs/html/documentation.html: Add separate testing link.
- * testsuite/performance: Add.
- * testsuite/performance/allocator.cc: New.
- * testsuite/performance/complex_norm.cc: New.
- * testsuite/performance/cout_insert_int.cc: New.
- * testsuite/performance/fstream_seek_write.cc: New.
- * testsuite/performance/ifstream_getline.cc: New.
- * testsuite/performance/map_create_fill.cc: New.
- * testsuite/performance/ofstream_insert_float.cc: New.
- * testsuite/performance/ofstream_insert_int.cc: New.
- * testsuite/performance/string_append.cc: New.
- * testsuite/lib/libstdc++-v3-dg.exp (v3-compute-tests): Filter
- performance tests.
-
-2003-05-20 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- PR libstdc++/10689
- * include/std/std_complex.h (pow): Tidy.
-
-2003-05-19 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/27_io/basic_filebuf/close/char/4.cc: New file, testing
- that upon filebuf::close() 27.8.1.1,3 is enforced.
-
-2003-05-15 Loren J. Rittle <ljrittle@acm.org>
-
- * testsuite/thread/pthread4.cc: Further tweak to avoid fini race.
-
-2003-05-15 Paolo Carlini <pcarlini@unitus.it>
- Nathan Myers <ncm@cantrip.org>
-
- * include/bits/fstream.tcc (_M_overflow): Rewrote to call
- _M_convert_to_external only once (_M_buf_size is now the size of
- the put area + 1 for the overflow char of a full area); call
- _M_set_buffer instead of _M_set_indeterminate.
- (setbuf): Don't accept a buffer smaller than 2 chars.
- (_M_underflow): Refill _M_buf_size - 1 chars; call _M_set_buffer,
- instead of _M_set_determinate.
- (open): Call _M_set_buffer, instead of _M_set_indeterminate.
- (seekoff): Likewise.
- * include/ext/stdio_filebuf.h (stdio_filebuf(int,
- std::ios_base::openmode, bool, size_t),
- stdio_filebuf(std::__c_file*, std::ios_base::openmode, size_t):
- Likewise.
- * include/std/std_fstream.h (_M_set_indeterminate): Remove.
- (_M_set_determinate): Rename as _M_set_buffer, _M_buf_size ->
- _M_buf_size - 1.
- * include/std/std_streambuf.h: Tweak _M_out_lim comment.
- * testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Tweak, taking
- into account that, for _M_buf_size == BUFSIZ == 8192, the size of
- the put area is now BUFSIZ - 1.
- * testsuite/ext/stdio_filebuf_2.cc: Tweak, taking into account
- that now the smallest _M_buf_size is 2 (still fails, for the same
- reason, with 3.2.3)
-
-2003-05-14 Loren J. Rittle <ljrittle@acm.org>
-
- * testsuite/thread/pthread4.cc: Tweak test.
-
-2003-05-13 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/27_io/ios_base/cons/copy_neg.cc: Remove
- excess errors dg marker, use dg-errors instead.
- * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
- * testsuite/20_util/auto_ptr_neg.cc: Same.
-
-2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/std/std_fstream.h (basic_filebuf::_M_codecvt): Add
- cached member.
- * include/bits/fstream.tcc (basic_filebuf::basic_filebuf):
- Initialize _M_codecvt.
- (basic_filebuf::imbue): Same.
- (basic_filebuf::showmanyc): Use it.
- (basic_filebuf::underflow): Use it.
- (basic_filebuf::_M_convert_to_external): Use it.
- (basic_filebuf::seekoff): Use it.
- (basic_filebuf::imbue): Use it, tweaks.
- * include/bits/localefwd.h (__check_facet): New.
- * include/bits/locale_classes.h: Tweaks.
- * include/bits/locale_facets.tcc: Tweaks.
- * include/bits/basic_ios.h (basic_ios::_M_check_facet): Remove.
- _M_fctype to _M_ctype, _M_fnumput to _M_num_put, _M_fnumget to
- _M_num_get. Change _M_check_facet to __check_facet. Tweaks.
- * include/bits/basic_ios.tcc: Same.
- * include/bits/istream.tcc: Same.
- * include/bits/ostream.tcc: Same.
- * include/std/std_streambuf.h: Same.
- * testsuite/27_io/basic_filebuf/imbue/char/2.cc: New.
- * testsuite/27_io/basic_filebuf/imbue/char/3.cc: New.
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/1.cc: New.
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: New.
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: New.
- * testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: New.
-
-2003-05-12 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Remove
- unnecessary includes and unused string literals.
- * testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
- * testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
- * testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
- * testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
-
-2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/fstream.tcc (_M_overflow): Remove unbuffered bits.
-
-2003-05-12 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_fstream.h (_M_convert_to_external): Change
- to return bool, take two less streamsize parameters.
- * include/bits/fstream.tcc (_M_convert_to_external): Tweak
- consistently definition.
- (_M_overflow): Adjust call points.
-
-2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/27_io/basic_filebuf/underflow/10096.cc: Add weak bits.
-
-2003-05-11 Phil Edwards <pme@gcc.gnu.org>
-
- * testsuite/Makefile.am: Properly quote /both/ LD_RUN_PATHs.
- * testsuite/Makefile.in: Regenerate.
-
-2003-05-11 Phil Edwards <pme@gcc.gnu.org>
-
- * testsuite/Makefile.am: Properly quote LD_RUN_PATH.
- * testsuite/Makefile.in: Regenerate.
-
-2003-05-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- PR libstdc++/3181
- * include/c_std/std_cmath.h: #include <bits/cpp_type_traits.h>
- (acos): Handle integer argument.
- (asin): Likewise.
- (atan): Likewise.
- (atan2): Likewise.
- (ceil): Likewise.
- (cos): Likewise.
- (cosh): Likewise.
- (exp): Likewise.
- (fabs): Likewise.
- (floor): Likewise.
- (frexp): Likewise.
- (ldexp): Likewise.
- (log): Likewise.
- (log10): Likewise.
- (sin): Likewise.
- (sinh): Likewise.
- (sqrt): Likewise.
- (tan): Likewise.
- (tanh): Likewise.
- * include/bits/cpp_type_traits.h (__are_same<>): New traits.
- (__enable_if): Likewise.
- * testsuite/26_numerics/cmath/overloads.C: New test.
-
-2003-05-10 Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/9027
- PR libstdc++/9520
- PR libstdc++/10096
- * include/bits/fstream.tcc (basic_file::_M_underflow): Add generic
- implementation, based on old wchar_t specialization, add support
- for codecvt::in() return value of codecvt_base::noconv, remove
- _M_file.sys_ungetc() call.
- * include/std/std_fstream.h (basic_file::underflow,
- basic_file::uflow, basic_file::_M_underflow): Remove
- specialization declarations, call _M_underflow from generic versions
- of underflow and uflow.
- * src/fstream.cc (basic_file::underflow, basic_file::uflow,
- basic_file::_M_underflow): Remove specializations.
- * src/Makefile.am (sources): Remove fstream.cc.
- * src/Makefile.in: Regenerated.
- * testsuite/27_io/basic_filebuf/underflow/10096.cc: New test.
- * testsuite/27_io/basic_filebuf/underflow/char/1.cc: New test.
- * testsuite/27_io/basic_filebuf/underflow/char/9027.cc: New test.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc: New test.
-
-2003-05-10 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/ext/stdio_filebuf.h (__stdio_filebuf): Remove stack
- buffer.
- * config/io/basic_file_stdio.h (__basic_file::xsgetn): Remove
- unbuffered bits.
- (__basic_file::xsputn): Same.
- (__basic_file::seekoff): Same.
- (__basic_file::seekpos): Same.
- (__basic_file::showmanyc): Same.
- * config/io/basic_file_stdio.cc: Same.
- * include/std/std_fstream.h: Same.
- * include/bits/fstream.tcc: Same.
- * src/fstream.cc: Same.
- * testsuite/27_io/basic_filebuf/sgetn/char/1.cc (test05): Tidy.
-
-2003-05-10 Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/9520
- PR libstdc++/9661
- PR libstdc++/9662
- * include/ext/stdio_sync_filebuf.h: New file.
- (basic_stdiobuf): New.
- * include/Makefile.am (ext_headers): Add ext/stdio_sync_filebuf.h
- * include/Makefile.in: Regenerate.
- * include/bits/ios_base.h (Init::_S_create_buffers,
- Init::_S_destroy_buffers): Remove declarations.
- * src/globals.cc (buf_cout_sync, buf_cin_sync, buf_cerr_sync,
- buf_wcout_sync, buf_wcin_sync, buf_wcerr_sync): Define.
- * src/ios.cc (Init::_S_create_buffers,
- Init::_S_destroy_buffers): Remove.
- (Init::Init): Create and use syncronized buffers.
- (ios_base::sync_with_stdio): Destroy syncronized buffers,
- create and install unsyncronized buffers.
- * testsuite/27_io/objects/char/10.cc: New test.
- * testsuite/27_io/objects/char/9.cc: New test.
- * testsuite/27_io/objects/char/9661-1.cc: New test.
- * testsuite/27_io/objects/char/9661-2_xin.cc: New test.
- * testsuite/27_io/objects/char/9661-2_xin.in: New.
- * testsuite/27_io/objects/wchar_t/1.cc: New test.
- * testsuite/27_io/objects/wchar_t/10.cc: New test.
- * testsuite/27_io/objects/wchar_t/2.cc: New test.
- * testsuite/27_io/objects/wchar_t/2523-1_xin.cc: New test.
- * testsuite/27_io/objects/wchar_t/2523-1_xin.in: New.
- * testsuite/27_io/objects/wchar_t/2523-2_xin.cc: New test.
- * testsuite/27_io/objects/wchar_t/2523-2_xin.in: New.
- * testsuite/27_io/objects/wchar_t/3045.cc: New test.
- * testsuite/27_io/objects/wchar_t/3647.cc: New test.
- * testsuite/27_io/objects/wchar_t/3_xin.cc: New test.
- * testsuite/27_io/objects/wchar_t/3_xin.in: New.
- * testsuite/27_io/objects/wchar_t/4_xin.cc: New test.
- * testsuite/27_io/objects/wchar_t/4_xin.in: New.
- * testsuite/27_io/objects/wchar_t/5.cc: New test.
- * testsuite/27_io/objects/wchar_t/5268.cc: New test.
- * testsuite/27_io/objects/wchar_t/5280_xin.cc: New test.
- * testsuite/27_io/objects/wchar_t/5280_xin.in: New.
- * testsuite/27_io/objects/wchar_t/6.cc: New test.
- * testsuite/27_io/objects/wchar_t/6548_xin.cc: New test.
- * testsuite/27_io/objects/wchar_t/6548_xin.in: New.
- * testsuite/27_io/objects/wchar_t/6648-1_xin.cc: New test.
- * testsuite/27_io/objects/wchar_t/6648-1_xin.in: New.
- * testsuite/27_io/objects/wchar_t/6648-2_xin.cc: New test.
- * testsuite/27_io/objects/wchar_t/6648-2_xin.in: New.
- * testsuite/27_io/objects/wchar_t/7.cc: New test.
- * testsuite/27_io/objects/wchar_t/7744_xin.cc: New test.
- * testsuite/27_io/objects/wchar_t/7744_xin.in: New.
- * testsuite/27_io/objects/wchar_t/8.cc: New test.
- * testsuite/27_io/objects/wchar_t/9_xin.cc: New test.
- * testsuite/27_io/objects/wchar_t/9_xin.in: New.
- * testsuite/27_io/objects/wchar_t/9520.cc: New test.
- * testsuite/27_io/objects/wchar_t/9661-1.cc: New test.
- * testsuite/27_io/objects/wchar_t/9661-2_xin.cc: New test.
- * testsuite/27_io/objects/wchar_t/9661-2_xin.in: New.
- * testsuite/27_io/objects/wchar_t/9662.cc: New test.
- * testsuite/ext/stdiobuf_char.cc: New test.
- * testsuite/ext/stdiobuf_wchar_t.cc: New test.
-
-2003-05-10 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/27_io/basic_filebuf/close/char/3.cc: Remove
- unnecessary includes and unused string literals.
- * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
-
-2003-05-08 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_streambuf.h (setg, setp): Don't touch _M_mode.
-
-2003-05-07 Richard Henderson <rth@redhat.com>
-
- PR c++/10570
- * libsupc++/eh_catch.cc (__cxa_begin_catch): Handle foreign exceptions.
- (__cxa_end_catch): Likewise.
- * libsupc++/eh_throw.cc (__cxa_rethrow): Likewise. Use
- _Unwind_Resume_or_Rethrow.
- * libsupc++/eh_personality.cc (empty_exception_spec): New.
- (PERSONALITY_FUNCTION): Don't ignore terminate or catch-all
- for _UA_FORCE_UNWIND. Honor empty filter spec for foreign
- exceptions. Don't push terminate/unexpected to cxa functions.
- (__cxa_call_unexpected): Remove foreign exception fixmes.
-
-2003-05-07 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/27_io/ios_base/cons: New.
- * testsuite/27_io/ios_base/cons/assign_neg.cc: New.
- * testsuite/27_io/ios_base/cons/copy_neg.cc: New.
-
-2003-05-07 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_fstream.h (_M_is_indeterminate): Remove.
- * src/fstream.cc
- (basic_filebuf<char/wchar_t>::_M_underflow): Simplify: either
- there is no buffer or __testget == !__testinit.
-
- * src/fstream.cc
- (basic_filebuf<char/wchar_t>::_M_underflow): _M_set_determinate()
- automatically sets, if appropriate, _M_out_cur == _M_in_cur.
-
- * include/std/std_fstream.h (_M_destroy_pback): Don't set
- unnecessarily _M_pback_cur_save and _M_pback_end_save.
-
- * include/std/std_fstream.h (_M_set_determinate): Minor tweak.
-
- * include/std/std_sstream.h (_M_sync): Minor tweak.
-
- * include/bits/fstream.tcc (close): No need to call
- _M_destroy_pback, setting _M_pback_init to false suffices
- to clean up.
-
-2003-05-06 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/stl_algo.h: Enums as _S_.
- * include/bits/stl_tree.h: Same.
- * include/bits/stl_bvector.h: Same.
- * include/bits/ios_base.h: Same.
- * include/bits/stl_alloc.h: Same.
- * include/ext/stl_hashtable.h: Same.
- * src/ios.cc: And here.
+ * include/bits/basic_string.tcc (copy(_CharT*, size_type,
+ size_type)): If __n == 0 don't call traits::copy.
- * include/std/std_sstream.h: Replace _M_really_sync to _M_sync.
- * include/bits/sstream.tcc: Same.
+2004-01-23 Stefan Olsson <stefan@snon.net>
- * include/bits/basic_ios.h: Correct spacing for '< ctype'.
+ * include/ext/mt_allocator.h: Reduce lock contention.
- * include/bits/locale_facets.tcc: Replace __temp to __tmp.
+2004-01-23 Paolo Carlini <pcarlini@suse.de>
- * include/bits/locale_facets.h (__num_base): Remove protected.
- Use _S_[io]* names for enumerations.
- (_S_format_int): Remove.
- * include/bits/locale_facets.tcc: Same.
- * src/locale.cc: Same.
-
- * include/std/std_sstream.h (stringbuf::str): Tweak formatting.
-
-2003-05-06 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/html/faq/index.html (3.10): Add note about mips atomicity.h.
- * docs/html/faq/index.txt: Regenerated.
-
-2003-05-06 Michael Ritzert <Ritzert@t-online.de>
- Matt Kraai <kraai@alumni.cmu.edu>
-
- * include/ext/stl_rope.h (_Rope_RopeRep<>::_M_c_string_lock): Tweak.
- And retweak.
-
-2003-05-06 Richard Sandiford <rsandifo@redhat.com>
-
- * configure.target (mips*): Use the generic atomicity.h by default.
-
-2003-05-05 Loren J. Rittle <ljrittle@acm.org>
- (Inspired by an alternate patch from Danny Smith.)
-
- * include/bits/stl_threads.h (_Atomic_swap): Kill it...
- (_Swap_lock_struct<>): ...and the horse it rode in on.
- * src/globals.cc (_Swap_lock_struct<>): Likewise.
- * include/ext/stl_rope.h (_Rope_RopeRep<>::_M_c_string_lock): New
- member to support...
- * include/ext/ropeimpl.h (rope<>::c_str): Follow *all* memory
- visibility rules related to POSIX threads.
- * testsuite/thread/pthread7-rope.cc: New test.
-
-2003-05-04 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/21_strings/basic_string/find/char/3.cc: New
- file, testing basic_string<char>::find_first_not_of.
- * testsuite/21_strings/basic_string/find/wchar_t/3.cc:
- Likewise for basic_string<wchar_t>.
-
-2003-05-03 Loren J. Rittle <ljrittle@acm.org>
-
- * testsuite/thread/pthread1.cc: Remove special case for FreeBSD.
-
-2003-05-02 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/Makefile.am (CLEANFILES): Remove PCH files in target
- directory.
- * include/Makefile.in: Regenerate.
-
-2003-05-02 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_sstream.h (str()): Tidy.
-
-2003-05-02 Nathan Myers <ncm@cantrip.org>
- Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/streambuf.tcc (__copy_streambufs): Rewrote.
-
-2003-05-02 Jonathan Wakely <redi@gcc.gnu.org>
-
- * include/bits/basic_string.h (swap): Remove redundant template
- parameters from declaration of non-template member function.
-
-2003-05-01 Phil Edwards <pme@gcc.gnu.org>
-
- * acconfig.h (_GLIBCPP_USE_NLS): New symbol.
- * configure.in: Move libintl.h header test...
- * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): ...to here. Gather all
- the NLS-related test results into one symbol.
- * src/functexcept.cc: Use it here.
- * aclocal.m4, config.h.in, configure: Regenerated.
-
-2003-05-01 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/sstream.tcc (overflow): Instead of calling
- str(), then _M_string.reserve, thus copying the contents
- of the current buffer two times, just copy the latter in
- a temporary, then use the 'swap trick'.
-
-2003-05-01 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_sstream.h (str()): Revert the best of the
- previous 'improvement', incorrect due to the COW nature of
- v3 basic_string; simplify.
-
-2003-05-01 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/streambuf.tcc (__copy_streambufs): Adjust the
- type of __avail to ptrdiff_t to avoid signed-unsigned warning.
-
-2003-05-01 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/abi_check.cc (check_version): Update known versions.
- Check added symbols for version_name != base version. Add missing
- symbols to incompatible list.
-
-2003-05-01 Benjamin Kosnik <bkoz@redhat.com>
-
- * acinclude.m4 (GLIBCPP_EXPORT_FLAGS): Remove -Winline.
- * aclocal.m4: Regenerated.
- * configure: Regenerated.
-
-2003-05-01 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/streambuf.tcc (basic_streambuf::xsgetn):
- Const-ify some variables.
- (basic_streambuf::xsputn): Likewise; change the type of some
- variables to size_t.
- (__copy_streambufs): Change some variables to size_t.
-
-2003-05-01 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_sstream.h (str()): Avoid constructing
- a basic_string temporary not only when it would turn out
- to be zero-sized but also when identical to the current
- _M_string buffer.
-
-2003-05-01 Paolo Carlini <pcarlini@unitus.it>
-
- * include/ext/stdio_filebuf.h
- (stdio_filebuf(int, std::ios_base::openmode, bool, size_t),
- stdio_filebuf(std::__c_file*, std::ios_base::openmode, size_t)):
- Shorten a bit (-10 lines) by factoring out some code.
-
-2003-04-30 Phil Edwards <pme@gcc.gnu.org>
-
- * acinclude.m4: Add bit missing from previous patch.
- * aclocal.m4, configure: Regenerated.
-
-2003-04-29 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/doxygen/mainpage.html: Bring up to date.
- * docs/doxygen/run_doxygen: Cosmetic tweaks. Work around a bug
- in Doxygen.
- * docs/doxygen/user.cfg.in: Scanning the precompiled headers
- breaks everything. Don't scan them.
- * docs/html/documentation.html: Point to "Write after approval"
- notes.
-
-2003-04-29 Phil Edwards <pme@gcc.gnu.org>
-
- * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Search for gettext outside
- of libc if message translations are being used. Fix info text in
- xieee_1003.1-2001 case.
- * aclocal.m4, configure: Regenerate.
-
-2003-04-29 Joel Sherrill <joel.sherrill@OARcorp.com>
- Loren J. Rittle <ljrittle@acm.org>
- Martin v. Loewis <martin@v.loewis.de>
-
- * config/cpu/i386/atomicity.h: New file.
-
-2003-04-29 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/fstream.tcc (open): Change to single return.
-
-2003-04-29 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_sstream.h (underflow): Change to single return.
-
-2003-04-28 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_streambuf.h (_M_buf): is currently
- used only for basic_filebuf, therefore move it there.
- (basic_streambuf(), ~basic_streambuf()): Adjust.
- * include/std/std_fstream.h (_M_buf): Moved here.
- * include/std/std_sstream.h (setbuf): Don't set _M_buf,
- is actually redundant for basic_stringbuf.
- (_M_really_sync): Likewise.
- * include/bits/fstream.tcc (basic_filebuf()): Adjust.
- * include/bits/sstream.tcc (seekoff): Adjust.
-
-2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
-
- * src/localename.cc: Standardize exception strings.
- * src/locale.cc: Same.
- * src/ios.cc: Same.
- * include/bits/basic_string.tcc: Same.
- * include/bits/basic_ios.tcc: Same.
- * include/std/std_bitset.h: Same.
- * include/ext/ropeimpl.h: Same.
- * include/bits/stl_vector.h: Same.
- * include/bits/stl_deque.h: Same.
- * include/bits/stl_bvector.h: Same.
- * config/locale/generic/c_locale.cc: Same.
- * config/locale/gnu/c_locale.cc: Same.
- * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
-
- * testsuite/testsuite_hooks.cc (__gnu_cxx_test): Modify.
-
-2003-04-28 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_streambuf.h (_M_buf_size): is currently
- used only for basic_filebuf, therefore move it there.
- (basic_streambuf(), ~basic_streambuf()): Adjust.
- * include/std/std_fstream.h (_M_buf_size): Moved here.
- * include/bits/fstream.tcc (basic_filebuf()): Adjust.
-
-2003-04-28 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/streambuf.tcc (__copy_streambufs): Don't use
- _M_buf_size (synced input is now correctly dealt with
- elsewhere); when the output buffer is full don't fall back
- to a snextc-sputc loop, call overflow instead.
-
-2003-04-28 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/sstream.tcc (pbackfail): Shorten a bit (6 lines)
- the innermost 'if' by factoring out some code.
-
-2003-04-28 Phil Edwards <pme@gcc.gnu.org>
-
- * configure.in: Test for libintl.h.
- * include/bits/c++config: Define __N for everybody.
- * include/bits/basic_string.h, include/bits/stl_bvector.h,
- include/bits/stl_deque.h, include/bits/stl_vector.h,
- include/std/std_bitset.h: Wrap all __throw* text with __N.
- * po/Makefile.am (pot): New rule, mostly working.
- * src/functexcept.cc: Call gettext on all __throw* arguments when
- -fexceptions is in effect.
- * po/Makefile.in, config.h.in, configure: Regenerate.
-
-2003-04-28 Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/9523
- * include/bits/ios_base.h (Init::_S_ios_create,
- Init::_S_ios_destroy): Remove declarations.
- (Init::_S_create_buffers,
- Init::_S_destroy_buffers): Declare
- * src/ios.cc (Init::_S_ios_create): Remove
- (Init::_S_create_buffers): Create buffers and add to streams.
- (Init::_S_ios_destroy): Rename to...
- (Init::_S_destroy_buffers): this.
- (Init::Init): Only construct streams once.
- (Init::~Init): Flush streams, don't destroy them.
- (ios_base::sync_with_stdio): Don't destroy streams, only buffers.
- * testsuite/27_io/ios_base/sync_with_stdio/9523.cc: New test.
- * testsuite/27_io/objects/char/5.cc: New test.
- * testsuite/27_io/objects/char/5268.cc: Avoid undefined behavior.
- * testsuite/27_io/objects/char/6.cc: New test.
- * testsuite/27_io/objects/char/7.cc: New test.
-
-2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/27_io/objects/char/8.cc: New test.
-
-2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/22_locale/codecvt/unicode/char.cc: Remove bom usage.
- * testsuite/22_locale/codecvt/unicode/wchar_t.cc: Same.
-
-2003-04-27 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/std/std_fstream.h (basic_filebuf): _M_pback_destroy to
- _M_destroy_pback. _M_pback_create to
- _M_create_pback. _M_underflow_common to
- _M_underflow. _M_really_overflow to _M_overflow.
- * include/bits/fstream.tcc: Same.
- * src/fstream.cc: Same.
- * include/std/std_streambuf.h (basic_streambuf): _M_in_cur_move to
- _M_move_in_cur. _M_out_cur_move to _M_move_out_cur.
- * include/bits/streambuf.tcc: Same.
- * include/bits/fstream.tcc: Same.
- * include/bits/sstream.tcc: Same.
-
-2003-04-27 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/locale_classes.h (locale::_Impl): Change _M_names
- from fixed size array.
- (locale): Change _S_categories as well.
- Formatting tweaks.
- * include/bits/locale_facets.tcc: Tweak.
- * config/locale/gnu/c_locale.cc: Assign _S_categories.
- * config/locale/generic/c_locale.cc: Same.
- * src/locale.cc: Tweak.
- * src/globals.cc: Change facet_name to name_vec, add names_c.
- * src/localename.cc: Use them.
- (locale::_Impl::~_Impl): Destroy _M_names.
- (locale::_Impl::_Impl): Create _M_names.
-
-2003-04-27 Andreas Schwab <schwab@suse.de>
-
- * config/locale/ieee_1003.1-2001/codecvt_specializations.h
- (__enc_traits): Use __ibom and __ebom instead of ignoring them.
-
-2003-04-27 Nathan Myers <ncm@cantrip.org>
-
- Move some basic_string members out of line because
- they are too big to reasonably be inline.
- * include/bits/basic_string.h
- (assign(const basic_string&, size_type, size_type),
- assign(const _CharT*, size_type),
- insert(size_type, const basic_string&, size_type, size_type),
- insert(size_type, const _CharT*, size_type),
- replace(size_type, size_type, const _CharT*, size_type)):
- Move from here to...
- * include/bits/basic_string.tcc: ...here.
-
-2003-04-26 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/fstream.tcc (pbackfail): Shorten a bit (10 lines)
- the innermost 'if' by factoring out some code.
-
-2003-04-26 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/streambuf.tcc (__copy_streambufs): Don't
- use in_avail(), simplify.
-
-2003-04-26 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_sstream.h (setbuf): don't set _M_buf_size,
- in basic_stringbuf it's unused.
-
- * include/std/std_sstream.h (underflow): consistently use
- _M_in_cur, not gptr().
-
-2003-04-25 Ranjit Mathew <rmathew@hotmail.com>
- Phil Edwards <pme@gcc.gnu.org>
-
- * testsuite_flags.in: Guard against the possibility
- of having "xgcc" as a part of a folder name in the
- path to the GCC build folder.
- * testsuite/Makefile.am: Likewise.
- * testsuite/Makefile.in: Regenerated.
-
-2003-04-25 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/10132
- * include/std/std_fstream.h (basic_filebuf::is_open): Add throw()
- exception specifications.
- (basic_filebuf::close): Same.
- (basic_filebuf::_M_pback_destroy): Same.
- (basic_filebuf::_M_destroy_internal_buffer): Same.
- (basic_filebuf): Remove __res_type typedef.
- * src/fstream.cc: Same.
- * include/bits/fstream.tcc
- (basic_filebuf::_M_convert_to_external): Simplify.
- (basic_filebuf::seekoff): Use has_facet before use_facet.
- (basic_filebuf::close): Add exception specification of throw().
- * testsuite/27_io/basic_filebuf/cons: New.
- * testsuite/27_io/basic_filebuf/cons/wchar_t: New.
- * testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc: New.
- * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: New.
- * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: New.
-
-2003-04-25 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/locale_classes.h
- (locale::_S_extra_categories_size): Remove.
- * src/locale.cc: Remove _S_extra_categories_size.
- * src/localename.cc: Same.
- * config/locale/gnu/c_locale.cc: Same.
- * config/locale/generic/c_locale.cc: Same.
-
-2003-04-24 Richard Sandiford <rsandifo@redhat.com>
-
- * src/localename.cc (__gnu_cxx::facet_vec): Correct types.
-
-2003-04-24 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/html/17_intro/howto.html: Update some links.
- * docs/html/18_support/howto.html: Link doxygen numeric_limits notes.
- * docs/html/27_io/howto.html: Link doxygen stdio_filebuf notes.
- * docs/html/ext/howto.html: Link to demangler notes and API.
- * docs/html/faq/index.html: Remove trailing whitespace.
- (1.4, 2.4, 3.8, 4.1): Bring up to date.
- (5.6): Change to a bulleted list.
-
- * docs/html/faq/index.txt, docs/html/documentation.html,
- docs/html/17_intro/porting.html: Regenerate.
-
-2003-04-23 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/27_io/basic_filebuf/3.cc: _S_pback_size now
- belongs to basic_filebuf.
- * testsuite/27_io/basic_fstream/3.cc: Likewise.
- * testsuite/27_io/basic_ifstream/3.cc: Likewise.
- * testsuite/27_io/basic_ios/3.cc: Remove _S_pback_size
- instantiation (now belongs to basic_filebuf).
- * testsuite/27_io/basic_iostream/3.cc: Likewise.
- * testsuite/27_io/basic_istream/3.cc: Likewise.
- * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
- _S_pback_size now belongs to basic_filebuf.
- * testsuite/27_io/basic_istringstream/3.cc: Remove _S_pback_size
- instantiation (now belongs to basic_filebuf).
- * testsuite/27_io/basic_ofstream/3.cc: _S_pback_size now
- belongs to basic_filebuf.
- * testsuite/27_io/basic_ostream/3.cc: Remove _S_pback_size
- instantiation (now belongs to basic_filebuf).
- * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc:
- _S_pback_size now belongs to basic_filebuf.
- * testsuite/27_io/basic_ostringstream/3.cc: Remove _S_pback_size
- instantiation (now belongs to basic_filebuf).
- * testsuite/27_io/basic_streambuf/3.cc: _S_pback_size now belongs
- to basic_filebuf.
- * testsuite/27_io/basic_stringbuf/3.cc: Remove _S_pback_size
- instantiation (now belongs to basic_filebuf).
- * testsuite/27_io/basic_stringstream/3.cc: Likewise.
-
-2003-04-23 Benjamin Kosnik <bkoz@redhat.com>
-
- * configure.in: Move GLIBCPP_CHECK_PCH before native/cross conditions.
- * configure: Regenerated.
-
-2003-04-23 Benjamin Kosnik <bkoz@redhat.com>
-
- * config/locale/generic/c_locale.h (__convert_from_v): Use
- attribute unused.
-
-2003-04-23 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/html/ext/howto.html ('LWG Issues'): Add issue 60, partial
- implementation only.
- * include/bits/istream.tcc (putback, unget, sync, tellg, seekg):
- Comment and change to comply with DR 60 and the effect on gcount().
- * include/std/std_istream.h: Update comments.
- * testsuite/27_io/basic_istream/putback/char/1.cc (test01): Add
- comments about reasons for tests. Test sync() against gcount().
- * testsuite/27_io/basic_istream/seekg/char/2.cc: New file, test
- for effect on gcount().
- * testsuite/27_io/basic_istream/tellg/char/2.cc: New file, test
- for effect on gcount().
-
-2003-04-22 Loren J. Rittle <ljrittle@acm.org>
-
- * testsuite/27_io/basic_filebuf/close/char/9964.cc (test_07):
- Adjust timing.
-
-2003-04-22 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_streambuf.h (_S_pback_size, _M_pback,
- _M_pback_cur_save, _M_pback_end_save, _M_pback_init,
- _M_pback_create(), _M_pback_destroy()): Move to basic_filebuf.
- (basic_streambuf::basic_streambuf()): Adjust.
- * include/std/std_fstream.h (_S_pback_size, _M_pback,
- _M_pback_cur_save, _M_pback_end_save, _M_pback_init,
- _M_pback_create(), _M_pback_destroy()): Moved here
- from basic_streambuf.
- * include/bits/fstream.tcc (basic_filebuf::basic_filebuf()):
- Adjust.
- (basic_filebuf::_S_pback_size): Add declaration.
- * include/bits/streambuf.tcc (basic_streambuf::_S_pback_size):
- Remove declaration.
-
-2003-04-21 Paolo Carlini <pcarlini@unitus.it>
-
- Consistently use _M_in_beg instead of eback(), _M_in_cur
- instead of gptr(), and so on.
- * include/bits/fstream.tcc (pbackfail, imbue): Here.
- * include/bits/sstream.tcc (pbackfail, seekoff, seekpos): Ditto.
- * include/bits/streambuf.tcc (sbumpc, sputbackc,
- __copy_streambufs): Ditto.
- * include/std/std_streambuf.h (sgetc): Ditto.
-
-2003-04-21 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/sstream.tcc (pbackfail, overflow):
- Formatting fixes.
-
-2003-04-21 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_streambuf.h (uflow()): It's used only by
- basic_stringbuf (i.e., basic_filebuf provide its own uflow()),
- therefore do not consider the _M_buf_unified == true case.
-
- * include/std/std_streambuf.h (sgetc()): Restore __ret variable.
-
-2003-04-20 Paolo Carlini <pcarlini@unitus.it>
-
- * docs/html/ext/howto.html ('LWG Issues'):
- Add issues 19, 90, 171, 231, 271.
-
-2003-04-20 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/sstream.tcc (pbackfail): Remove redundant
- NULL pointer check from test involving _M_in_*.
- (overflow, seekoff, seekpos): Const qualify bool variables.
- * include/std/std_sstream.h (underflow): Remove redundant
- NULL pointer check from test involving _M_in_*.
- (_M_really_sync): Const qualify bool variables.
- * src/fstream.cc (_M_underflow_common): Remove redundant
- NULL pointer check from test involving _M_in_*, const qualify
- bool variables.
-
- * include/std/std_streambuf.h (sgetc): Remove redundant
+ PR libstdc++/13831
+ * include/bits/fstream.tcc (underflow): Remove unused
variable.
+ * include/bits/streambuf_iterator.h (equal): Ditto.
+ * include/bits/locale_facets.h (_M_convert_from_char):
+ Ditto.
-2003-04-18 Paolo Carlini <pcarlini@unitus.it>
-
- According to 5.9 para 2 (second bullet) for pointers p, q
- pointing to the same type, with p == 0 and q == 0, (p < q)
- is false.
- * include/bits/fstream.tcc (close, overflow, _M_really_overflow,
- seekoff): Remove redundant NULL pointer checks from tests
- involving _M_out_* and _M_in_*, const qualify bool variables.
- (showmanyc, pbackfail, _M_convert_to_external, imbue): Const
- qualify bool variables.
- * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc, sputc):
- Remove redundant NULL pointer checks from tests involving
- _M_out_* and _M_in_*, const qualify bool variables.
- * include/std/std_fstream.h (sync): Likewise.
- (_M_is_indeterminate): Const qualify bool variables.
- * include/std/std_streambuf.h (sgetc, uflow): Remove redundant
- NULL pointer checks from tests involving _M_out_* and _M_in_*,
- const qualify bool variables.
- (_M_in_cur_move, _M_out_cur_move, uflow): Const qualify bool
- variables.
-
-2003-04-18 Loren J. Rittle <ljrittle@acm.org>
-
- * include/c_std/std_cmath.h (C99 FP capture): Only undefine said
- C99 FP macros, if actually captured.
-
- * docs/html/17_intro/porting.texi (_GLIBCPP_USE_C99_CHECK): New macro.
- (_GLIBCPP_USE_C99_DYNAMIC): New macro.
- (_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
- (_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
- * config/os/bsd/freebsd/os_defines.h (_GLIBCPP_USE_C99_CHECK):
- New macro.
- (_GLIBCPP_USE_C99_DYNAMIC): New macro.
- (_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
- (_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
- * include/c_std/std_cstdlib.h: Use new macros.
- * include/c_std/std_cstdio.h: Use new macros.
- * include/c_std/std_cwchar.h: Use new macros.
-
-2003-04-17 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/9555
- * include/bits/ostream.tcc: Catch all exceptions for formatted
- output, instead of std::exception and derivatives.
- * include/bits/istream.tcc: Same.
- * testsuite/27_io/basic_ostream/inserters_arithmetic/char/9555-oa.cc:
- * testsuite/27_io/basic_ostream/inserters_character/char/9555-oc.cc:
- * testsuite/27_io/basic_ostream/inserters_other/char/9555-oo.cc:
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/9555-ia.cc:
- * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
- * testsuite/27_io/basic_istream/extractors_other/char/9555-io.cc:
- New.
-
-2003-04-17 Phil Edwards <pme@gcc.gnu.org>
-
- * include/bits/c++config: Minor cosmetic tweaks.
-
-2003-04-17 Loren J. Rittle <ljrittle@acm.org>
-
- * testsuite_flags.in (PCHFLAGS): Find PCH in new home.
- * include/Makefile.am (pch_input): Find in ${target_builddir}.
- (pch_output): Rename to...
- (pch_output_builddir): ..this. Find in ${target_builddir}.
- (pch_source): Tweak.
- (pch_build): Key off a built file.
- (pch_output rule): Rename to...
- (pch_input rule): ...this. Produce ${pch_output_builddir}
- instead of ${pch_output}.
- (install-pch rule): Install ${pch_output_builddir}.
- * include/Makefile.in: Regenerated.
-
-2003-04-17 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_streambuf.h (setp): _M_out_lim, being
- the end limit of used put area, is set equal to _M_out_beg.
-
-2003-04-16 Benjamin Kosnik <bkoz@redhat.com>
-
- * acinclude.m4 (GLIBCPP_CHECK_PCH): New.
- * aclocal.m4: Regenerated.
- * configure.in: Remove old demangler bits.
- Call pch checks.
- * configure: Regenerate.
- * config.h.in: Regenerate.
- * include/Makefile.am (allstamps): Now allstamped.
- (allcreated): Define this.
- (all-local): Use 'em.
- Conditionally define pch_build, pch_install based on
- GLIBCPP_BUILD_PCH.
- (${pch_output}): New rule.
- (install-pch): New rule.
- (install-headers): New rule.
- (install-data-local): Install headers and conditionally pch.
- * include/Makefile.in: Regenerate.
- * testsuite_flags.in (--build-cxx): Use pch file.
-
-2003-04-16 Jonathan Wakely <redi@gcc.gnu.org>
-
- * docs/html/ext/sgiexts.html: Fix path to stylesheet.
-
-2003-04-15 Benjamin Kosnik <bkoz at redhat dot com>
- Paolo Carlini <pcarlini at unitus dot it>
-
- PR libstdc++/9423
- * docs/html/27_io/howto.html
- ('The buffering is screwing up my program!'): Explain that
- opening counts as an I/O operation.
-
-2003-04-15 Andreas Tobler <a.tobler@schweiz.ch>
-
- * testsuite/thread/pthread1.cc: Enable for darwin test.
- * testsuite/thread/pthread2.cc: Same.
- * testsuite/thread/pthread3.cc: Same.
- * testsuite/thread/pthread4.cc: Same.
- * testsuite/thread/pthread5.cc: Same.
- * testsuite/thread/pthread6.cc: Same.
-
-2003-04-15 Loren J. Rittle <ljrittle@acm.org>
-
- libstdc++/7680
- * include/c_std/std_cmath.h (__gnu_cx::__c99_binding): New namespace.
- Populate it with multiple legal ways to obtain the C99 float
- transcendentals. Use them instead of direct global reference.
- (C99 FP capture): Guard usage with _GLIBCPP_USE_C99_FP_MACROS_DYNAMIC.
- * docs/html/17_intro/porting.texi
- (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
- (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
- (_GLIBCPP_USE_C99_FP_MACROS_DYNAMIC): New macro.
- * config/os/bsd/freebsd/os_defines.h
- (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
- (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
- * testsuite/26_numerics/c_math_dynamic.cc: New file.
-
-2003-04-14 Andreas Tobler <toa@pop.agri.ch>
- Benjamin Kosnik <bkoz@redhat.com>
-
- * config/os/generic/ctype_inline.h: Fix.
-
-2003-04-14 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/testsuite_hooks.h
- (__gnu_cxx_test::run_test_wrapped_generic_locale_exception_catcher):
- Change to try_named_locale.
- * testsuite/testsuite_hooks.cc (__gnu_cxx_test): Same.
-
- * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Use
- try_named_locale.
- * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Same.
- * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Same.
- * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Same.
- * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Same.
- * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Same.
- * testsuite/22_locale/codecvt/in/wchar_t/2.cc: Same.
- * testsuite/22_locale/codecvt/in/wchar_t/3.cc: Same.
- * testsuite/22_locale/codecvt/in/wchar_t/4.cc: Same.
- * testsuite/22_locale/codecvt/in/wchar_t/7.cc: Same.
- * testsuite/22_locale/codecvt/in/wchar_t/8.cc: Same.
- * testsuite/22_locale/codecvt/in/wchar_t/9.cc: Same.
- * testsuite/22_locale/codecvt/length/wchar_t/2.cc: Same.
- * testsuite/22_locale/codecvt/length/wchar_t/3.cc: Same.
- * testsuite/22_locale/codecvt/length/wchar_t/4.cc: Same.
- * testsuite/22_locale/codecvt/length/wchar_t/7.cc: Same.
- * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Same.
- * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Same.
- * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Same.
- * testsuite/22_locale/codecvt/out/wchar_t/2.cc: Same.
- * testsuite/22_locale/codecvt/out/wchar_t/3.cc: Same.
- * testsuite/22_locale/codecvt/out/wchar_t/4.cc: Same.
- * testsuite/22_locale/codecvt/out/wchar_t/7.cc: Same.
- * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Same.
- * testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Same.
- * testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Same.
- * testsuite/22_locale/collate/compare/char/1.cc: Same.
- * testsuite/22_locale/collate/compare/char/2.cc: Same.
- * testsuite/22_locale/collate/compare/char/3.cc: Same.
- * testsuite/22_locale/collate/compare/wchar_t/1.cc: Same.
- * testsuite/22_locale/collate/compare/wchar_t/2.cc: Same.
- * testsuite/22_locale/collate/compare/wchar_t/3.cc: Same.
- * testsuite/22_locale/collate/hash/char/2.cc: Same.
- * testsuite/22_locale/collate/hash/wchar_t/2.cc: Same.
- * testsuite/22_locale/collate/transform/char/2.cc: Same.
- * testsuite/22_locale/collate/transform/char/3.cc: Same.
- * testsuite/22_locale/collate/transform/wchar_t/2.cc: Same.
- * testsuite/22_locale/collate/transform/wchar_t/3.cc: Same.
- * testsuite/22_locale/collate_byname/1.cc: Same.
- * testsuite/22_locale/ctype/is/char/2.cc: Same.
- * testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
- * testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Same.
- * testsuite/22_locale/ctype/widen/wchar_t/2.cc: Same.
- * testsuite/22_locale/ctype/widen/wchar_t/3.cc: Same.
- * testsuite/22_locale/facet/2.cc: Same.
- * testsuite/22_locale/locale/cons/2.cc: Same.
- * testsuite/22_locale/locale/cons/4.cc: Same.
- * testsuite/22_locale/locale/cons/5.cc: Same.
- * testsuite/22_locale/locale/cons/7.cc: Same.
- * testsuite/22_locale/locale/cons/7222-c.cc: Same.
- * testsuite/22_locale/locale/cons/7222-env.cc: Same.
- * testsuite/22_locale/locale/global_locale_objects/2.cc: Same.
- * testsuite/22_locale/messages/members/char/1.cc: Same.
- * testsuite/22_locale/messages/members/char/2.cc: Same.
- * testsuite/22_locale/messages/members/char/3.cc: Same.
- * testsuite/22_locale/messages_byname/1.cc: Same.
- * testsuite/22_locale/money_get/get/char/1.cc: Same.
- * testsuite/22_locale/money_get/get/char/2.cc: Same.
- * testsuite/22_locale/money_get/get/char/3.cc: Same.
- * testsuite/22_locale/money_get/get/char/4.cc: Same.
- * testsuite/22_locale/money_get/get/wchar_t/1.cc: Same.
- * testsuite/22_locale/money_get/get/wchar_t/2.cc: Same.
- * testsuite/22_locale/money_get/get/wchar_t/3.cc: Same.
- * testsuite/22_locale/money_get/get/wchar_t/4.cc: Same.
- * testsuite/22_locale/money_put/put/char/1.cc: Same.
- * testsuite/22_locale/money_put/put/char/2.cc: Same.
- * testsuite/22_locale/money_put/put/char/3.cc: Same.
- * testsuite/22_locale/money_put/put/wchar_t/1.cc: Same.
- * testsuite/22_locale/money_put/put/wchar_t/2.cc: Same.
- * testsuite/22_locale/money_put/put/wchar_t/3.cc: Same.
- * testsuite/22_locale/moneypunct/members/char/2.cc: Same.
- * testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Same.
- * testsuite/22_locale/moneypunct_byname/1.cc: Same.
- * testsuite/22_locale/num_get/get/char/1.cc: Same.
- * testsuite/22_locale/num_get/get/char/2.cc: Same.
- * testsuite/22_locale/num_get/get/char/3.cc: Same.
- * testsuite/22_locale/num_get/get/char/5.cc: Same.
- * testsuite/22_locale/num_get/get/char/6.cc: Same.
- * testsuite/22_locale/num_get/get/wchar_t/1.cc: Same.
- * testsuite/22_locale/num_get/get/wchar_t/2.cc: Same.
- * testsuite/22_locale/num_get/get/wchar_t/3.cc: Same.
- * testsuite/22_locale/num_get/get/wchar_t/5.cc: Same.
- * testsuite/22_locale/num_get/get/wchar_t/6.cc: Same.
- * testsuite/22_locale/num_put/put/char/1.cc: Same.
- * testsuite/22_locale/num_put/put/char/2.cc: Same.
- * testsuite/22_locale/num_put/put/char/3.cc: Same.
- * testsuite/22_locale/num_put/put/char/5.cc: Same.
- * testsuite/22_locale/num_put/put/wchar_t/1.cc: Same.
- * testsuite/22_locale/num_put/put/wchar_t/2.cc: Same.
- * testsuite/22_locale/num_put/put/wchar_t/3.cc: Same.
- * testsuite/22_locale/num_put/put/wchar_t/5.cc: Same.
- * testsuite/22_locale/numpunct/members/char/1.cc: Same.
- * testsuite/22_locale/numpunct/members/char/2.cc: Same.
- * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Same.
- * testsuite/22_locale/numpunct/members/wchar_t/2.cc: Same.
- * testsuite/22_locale/numpunct_byname/1.cc: Same.
- * testsuite/22_locale/numpunct_byname/2.cc: Same.
- * testsuite/22_locale/time_get/date_order/char/1.cc: Same.
- * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Same.
- * testsuite/22_locale/time_get/get_date/char/1.cc: Same.
- * testsuite/22_locale/time_get/get_date/char/2.cc: Same.
- * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Same.
- * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Same.
- * testsuite/22_locale/time_get/get_monthname/char/1.cc: Same.
- * testsuite/22_locale/time_get/get_monthname/char/2.cc: Same.
- * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Same.
- * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Same.
- * testsuite/22_locale/time_get/get_time/char/1.cc: Same.
- * testsuite/22_locale/time_get/get_time/char/2.cc: Same.
- * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Same.
- * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Same.
- * testsuite/22_locale/time_get/get_weekday/char/1.cc: Same.
- * testsuite/22_locale/time_get/get_weekday/char/2.cc: Same.
- * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Same.
- * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Same.
- * testsuite/22_locale/time_get/get_year/char/1.cc: Same.
- * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Same.
- * testsuite/22_locale/time_put/put/char/1.cc: Same.
- * testsuite/22_locale/time_put/put/char/2.cc: Same.
- * testsuite/22_locale/time_put/put/char/3.cc: Same.
- * testsuite/22_locale/time_put/put/char/4.cc: Same.
- * testsuite/22_locale/time_put/put/char/5.cc: Same.
- * testsuite/22_locale/time_put/put/char/6.cc: Same.
- * testsuite/22_locale/time_put/put/char/7.cc: Same.
- * testsuite/22_locale/time_put/put/char/8.cc: Same.
- * testsuite/22_locale/time_put/put/wchar_t/1.cc: Same.
- * testsuite/22_locale/time_put/put/wchar_t/2.cc: Same.
- * testsuite/22_locale/time_put/put/wchar_t/3.cc: Same.
- * testsuite/22_locale/time_put/put/wchar_t/4.cc: Same.
- * testsuite/22_locale/time_put/put/wchar_t/5.cc: Same.
- * testsuite/22_locale/time_put/put/wchar_t/6.cc: Same.
- * testsuite/22_locale/time_put/put/wchar_t/7.cc: Same.
- * testsuite/22_locale/time_put/put/wchar_t/8.cc: Same.
- * testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Same.
- * testsuite/27_io/basic_ios/copyfmt/char/2.cc: Same.
- * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc: Same.
- * testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Same.
- * testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Same.
-
-2003-04-14 Andreas Tobler <toa@pop.agri.ch>
-
- * configure.target (_cpu_incdir_fullpath): Solaris 2.9 uses
- solaris includes, not generic.
-
-2003-04-14 Loren J. Rittle <ljrittle@acm.org>
-
- * testsuite/26_numerics/c99_classification_macros_c.cc: Add XFAIL.
-
- * include/std/std_bitset.h (_M_do_find_next): Fix -Wall nit.
- * include/bits/concept_check.h: Fix multi-line comment.
- * testsuite/17_intro/headers.cc (dg-options): Add -Wall -Wsystem-header
- when target is *-*-freebsd*.
-
-2003-04-14 Nathan Myers <ncm@cantrip.org>
- Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9701 (in_avail())
- * include/std/std_streambuf.h (in_avail): Simplify, in_avail
- doesn't care if there is anything in some putback cell.
- * testsuite/27_io/basic_streambuf/in_avail/char/9701-3.cc: Add.
-
- * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Remove some
- unused string literals.
-
-2003-04-14 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/fstream.tcc (basic_filebuf::setbuf): Don't set
- _M_out_end, _M_set_indeterminate() does it.
-
-2003-04-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * os/hpux/ctype_inline.h: Replace with gnu-linux version.
-
-2003-04-12 David Edelsohn <edelsohn@gnu.org>
-
- * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
- Change basic_streambuf instantiation to "unsigned char".
- * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
-
-2003-04-12 Paolo Carlini <pcarlini@unitus.it>
-
- Remove _M_buf_size_opt, use directly _M_buf_size instead.
- * include/bits/fstream.tcc
- (basic_filebuf::_M_allocate_internal_buffer, setbuf): Remove
- references to _M_buf_size_opt.
- * include/bits/sstream.tcc (basic_stringbuf::overflow): Likewise.
- * include/bits/streambuf.tcc (__copy_streambufs): Likewise, rename
- __bufsize to __in_avail and __size_opt to __buf_size.
- * include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf): Likewise.
- * include/std/std_sstream.h (_M_stringbuf_init, setbuf): Likewise.
- * include/std/std_streambuf.h (~basic_streambuf(),
- basic_streambuf()): Likewise, remove _M_buf_size_opt member.
- * testsuite/27_io/basic_filebuf/close/char/3.cc: Set _M_buf_size.
- * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
- * testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Likewise.
- * testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Likewise.
- * testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Likewise.
- * testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Likewise.
- * testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Likewise.
- * testsuite/27_io/basic_filebuf/snextc/char/1.cc: Likewise.
- * testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
- * testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
- * testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
- * testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
-
-2003-04-12 Paolo Carlini <pcarlini at unitus dot it>
-
- * include/ext/stdio_filebuf.h
- (stdio_filebuf::stdio_filebuf(int, openmode, bool, size_t),
- stdio_filebuf::stdio_filebuf(__c_file*, openmode, size_t):
- _M_buf_size_opt == 0 only means "not to use an allocated buffer"
- since a stack-based buffer is used for small values of the size_t
- parameter.
- * include/bits/fstream.tcc (basic_filebuf::_M_really_overflow).
- If _M_buf_size != 0 flush out the buffer (any kind, stack-based too).
- * testsuite/ext/stdio_filebuf_2.cc: New testfile.
-
-2003-04-12 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9533
- * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: New.
- * testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Ditto.
-
-2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/22_locale/locale/cons/3.cc: Split.
- * testsuite/22_locale/locale/cons/7222-c.cc: New.
- * testsuite/22_locale/locale/cons/7222-env.cc: New.
- Check before trying to create a locale from the environment.
- * testsuite/27_io/ios_base/state/1.cc (test02): Use "C" locale.
- * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
- Adjust includes.
-
-2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/22_locale/ctype/is/char/3.cc (test03): Use the classic
- locale to construct this hybrid locale, not the global locale.
-
-2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Add
- instantiation for AIX.
- * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
- * testsuite/25_algorithms/min_max.cc: Same.
-
-2003-04-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * basic_file_stdio.cc (__basic_file<char>::close): Don't flush stream
- twice. Always set _M_cfile to 0 when stream was open.
-
-2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
-
- Reshuffle 27_io testsuite.
- * testsuite/27_io/filebuf.cc,
- filebuf_members-1.tst, filebuf_members-1.txt, filebuf_members.cc,
- filebuf_virtuals-1.tst, filebuf_virtuals-1.txt,
- filebuf_virtuals-2.tst, filebuf_virtuals-3.tst,
- filebuf_virtuals.cc, fpos.cc, fstream.cc, fstream_members.cc,
- ifstream.cc, ifstream_members-1.tst, ifstream_members-1.txt,
- ifstream_members.cc, instantiations.cc, ios.cc,
- ios_base_callbacks.cc, ios_base_members_static-1.tst,
- ios_base_members_static.cc, ios_base_storage.cc,
- ios_base_types.cc, ios_ctor.cc, ios_init.cc,
- ios_manip_basefield.cc, ios_manip_fmtflags.cc, ios_members.cc,
- iostream.cc, iostream_members.cc, istream.cc,
- istream_exception.cc, istream_extractor_char.cc,
- istream_extractor_other-1.tst, istream_extractor_other-1.txt,
- istream_extractor_other-2.tst, istream_extractor_other.cc,
- istream_manip.cc, istream_seeks-1.tst, istream_seeks-1.txt,
- istream_seeks-2.tst, istream_seeks-3.tst, istream_seeks.cc,
- istream_sentry.cc, istream_unformatted-1.tst,
- istream_unformatted-1.txt, istream_unformatted.cc,
- istringstream.cc, istringstream_members.cc,
- narrow_stream_objects.cc, ofstream.cc, ofstream_members-1.tst,
- ofstream_members.cc, ostream.cc, ostream_exception.cc,
- ostream_fail.cc, ostream_inserter_arith.cc,
- ostream_inserter_char-1.tst, ostream_inserter_char-1.txt,
- ostream_inserter_char.cc, ostream_inserter_other-1.tst,
- ostream_inserter_other-2.tst, ostream_inserter_other.cc,
- ostream_manip.cc, ostream_seeks-1.tst, ostream_seeks.cc,
- ostream_sentry.cc, ostream_unformatted.cc, ostringstream.cc,
- ostringstream_members.cc, standard_manipulators.cc, streambuf.cc,
- streambuf_members.cc, stringbuf.cc, stringbuf_members.cc,
- stringbuf_virtuals.cc, stringstream.cc, stringstream_members.cc,
- wide_stream_objects.cc, istream_extractor_arith/01.cc,
- istream_extractor_arith/02.cc, istream_extractor_arith/03.cc,
- istream_extractor_arith/06.cc, istream_extractor_arith/07.cc,
- istream_extractor_arith/08.cc, istream_extractor_arith/09.cc,
- istream_extractor_arith/10.cc, istream_extractor_arith/11.cc,
- istream_extractor_arith/12.cc, istream_extractor_arith/13.cc:
- Split into...
- * 27_io/basic_filebuf/1.cc: New.
- * 27_io/basic_filebuf/2.cc: New.
- * 27_io/basic_filebuf/3.cc: New.
- * 27_io/basic_filebuf/4.cc: New.
- * 27_io/basic_filebuf/close/char/1.cc: New.
- * 27_io/basic_filebuf/close/char/2.cc: New.
- * 27_io/basic_filebuf/close/char/3.cc: New.
- * 27_io/basic_filebuf/close/char/4879.cc: New.
- * 27_io/basic_filebuf/close/char/9964.cc: New.
- * 27_io/basic_filebuf/imbue/char/1.cc: New.
- * 27_io/basic_filebuf/imbue/char/9322.cc: New.
- * 27_io/basic_filebuf/in_avail/char/1.cc: New.
- * 27_io/basic_filebuf/is_open/char/1.cc: New.
- * 27_io/basic_filebuf/open/char/1.cc: New.
- * 27_io/basic_filebuf/open/char/2.cc: New.
- * 27_io/basic_filebuf/open/char/3.cc: New.
- * 27_io/basic_filebuf/open/char/9507.cc: New.
- * 27_io/basic_filebuf/overflow/char/1.cc: New.
- * 27_io/basic_filebuf/overflow/char/3599.cc: New.
- * 27_io/basic_filebuf/overflow/char/9169.cc: New.
- * 27_io/basic_filebuf/overflow/char/9182-2.cc: New.
- * 27_io/basic_filebuf/overflow/char/9988.cc: New.
- * 27_io/basic_filebuf/sbumpc/char/1.cc: New.
- * 27_io/basic_filebuf/sbumpc/char/9825.cc: New.
- * 27_io/basic_filebuf/seekoff/char/1.cc: New.
- * 27_io/basic_filebuf/seekoff/char/2.cc: New.
- * 27_io/basic_filebuf/seekpos/char/1.cc: New.
- * 27_io/basic_filebuf/seekpos/char/2.cc: New.
- * 27_io/basic_filebuf/setbuf/char/1.cc: New.
- * 27_io/basic_filebuf/setbuf/char/2.cc: New.
- * 27_io/basic_filebuf/setbuf/char/3.cc: New.
- * 27_io/basic_filebuf/sgetc/char/1.cc: New.
- * 27_io/basic_filebuf/sgetn/char/1.cc: New.
- * 27_io/basic_filebuf/sgetn/char/2.cc: New.
- * 27_io/basic_filebuf/snextc/char/1.cc: New.
- * 27_io/basic_filebuf/sputbackc/char/1.cc: New.
- * 27_io/basic_filebuf/sputbackc/char/9425.cc: New.
- * 27_io/basic_filebuf/sputc/char/1.cc: New.
- * 27_io/basic_filebuf/sputc/char/1057.cc: New.
- * 27_io/basic_filebuf/sputc/char/9701-2.cc: New.
- * 27_io/basic_filebuf/sputn/char/1.cc: New.
- * 27_io/basic_filebuf/sputn/char/1057.cc: New.
- * 27_io/basic_filebuf/sputn/char/9701-1.cc: New.
- * 27_io/basic_filebuf/sungetc/char/1.cc: New.
- * 27_io/basic_filebuf/sync/char/1057.cc: New.
- * 27_io/basic_filebuf/sync/char/9182-1.cc: New.
- * 27_io/basic_filebuf/underflow/char/10097.cc: New.
- * 27_io/basic_fstream/1.cc: New.
- * 27_io/basic_fstream/2.cc: New.
- * 27_io/basic_fstream/3.cc: New.
- * 27_io/basic_fstream/4.cc: New.
- * 27_io/basic_fstream/rdbuf/char/2832.cc: New.
- * 27_io/basic_ifstream/1.cc: New.
- * 27_io/basic_ifstream/2.cc: New.
- * 27_io/basic_ifstream/3.cc: New.
- * 27_io/basic_ifstream/4.cc: New.
- * 27_io/basic_ifstream/cons/char/1.cc: New.
- * 27_io/basic_ifstream/open/char/1.cc: New.
- * 27_io/basic_ifstream/rdbuf/char/2832.cc: New.
- * 27_io/basic_ios/1.cc: New.
- * 27_io/basic_ios/2.cc: New.
- * 27_io/basic_ios/3.cc: New.
- * 27_io/basic_ios/4.cc: New.
- * 27_io/basic_ios/clear/char/1.cc: New.
- * 27_io/basic_ios/cons/char/1.cc: New.
- * 27_io/basic_ios/cons/char/2.cc: New.
- * 27_io/basic_ios/cons/char/3.cc: New.
- * 27_io/basic_ios/copyfmt/char/1.cc: New.
- * 27_io/basic_ios/copyfmt/char/2.cc: New.
- * 27_io/basic_ios/exceptions/char/1.cc: New.
- * 27_io/basic_ios/locales/char/1.cc: New.
- * 27_io/basic_iostream/1.cc: New.
- * 27_io/basic_iostream/2.cc: New.
- * 27_io/basic_iostream/3.cc: New.
- * 27_io/basic_iostream/4.cc: New.
- * 27_io/basic_istream/1.cc: New.
- * 27_io/basic_istream/2.cc: New.
- * 27_io/basic_istream/3.cc: New.
- * 27_io/basic_istream/4.cc: New.
- * 27_io/basic_istream/exceptions/char/9561.cc: New.
- * 27_io/basic_istream/extractors_arithmetic/char/01.cc: New.
- * 27_io/basic_istream/extractors_arithmetic/char/02.cc: New.
- * 27_io/basic_istream/extractors_arithmetic/char/03.cc: New.
- * 27_io/basic_istream/extractors_arithmetic/char/06.cc: New.
- * 27_io/basic_istream/extractors_arithmetic/char/07.cc: New.
- * 27_io/basic_istream/extractors_arithmetic/char/08.cc: New.
- * 27_io/basic_istream/extractors_arithmetic/char/09.cc: New.
- * 27_io/basic_istream/extractors_arithmetic/char/10.cc: New.
- * 27_io/basic_istream/extractors_arithmetic/char/11.cc: New.
- * 27_io/basic_istream/extractors_arithmetic/char/12.cc: New.
- * 27_io/basic_istream/extractors_arithmetic/char/13.cc: New.
- * 27_io/basic_istream/extractors_character/char/1.cc: New.
- * 27_io/basic_istream/extractors_character/char/2.cc: New.
- * 27_io/basic_istream/extractors_character/char/3.cc: New.
- * 27_io/basic_istream/extractors_character/char/9826.cc: New.
- * 27_io/basic_istream/extractors_other/char/1.cc: New.
- * 27_io/basic_istream/extractors_other/char/2.cc: New.
- * 27_io/basic_istream/extractors_other/char/3.cc: New.
- * 27_io/basic_istream/extractors_other/char/9318-in.cc: New.
- * 27_io/basic_istream/extractors_other/char/9424-in.cc: New.
- * 27_io/basic_istream/get/char/1.cc: New.
- * 27_io/basic_istream/get/char/2.cc: New.
- * 27_io/basic_istream/getline/char/1.cc: New.
- * 27_io/basic_istream/getline/char/2.cc: New.
- * 27_io/basic_istream/getline/char/3.cc: New.
- * 27_io/basic_istream/ignore/char/1.cc: New.
- * 27_io/basic_istream/ignore/char/6360.cc: New.
- * 27_io/basic_istream/ignore/char/7220.cc: New.
- * 27_io/basic_istream/peek/char/1.cc: New.
- * 27_io/basic_istream/peek/char/6414.cc: New.
- * 27_io/basic_istream/putback/char/1.cc: New.
- * 27_io/basic_istream/read/char/1.cc: New.
- * 27_io/basic_istream/read/char/2.cc: New.
- * 27_io/basic_istream/read/char/3.cc: New.
- * 27_io/basic_istream/readsome/char/6746-1.cc: New.
- * 27_io/basic_istream/readsome/char/6746-2.cc: New.
- * 27_io/basic_istream/readsome/char/8258.cc: New.
- * 27_io/basic_istream/seekg/char/2346-fstream.cc: New.
- * 27_io/basic_istream/seekg/char/2346-sstream.cc: New.
- * 27_io/basic_istream/seekg/char/8348-1.cc: New.
- * 27_io/basic_istream/seekg/char/8348-2.cc: New.
- * 27_io/basic_istream/seekg/char/fstream.cc: New.
- * 27_io/basic_istream/seekg/char/sstream.cc: New.
- * 27_io/basic_istream/sentry/char/1.cc: New.
- * 27_io/basic_istream/sentry/char/2.cc: New.
- * 27_io/basic_istream/sentry/char/3.cc: New.
- * 27_io/basic_istream/sentry/char/3983-fstream.cc: New.
- * 27_io/basic_istream/sentry/char/3983-sstream.cc: New.
- * 27_io/basic_istream/tellg/char/1.cc: New.
- * 27_io/basic_istream/tellg/char/8348.cc: New.
- * 27_io/basic_istream/tellg/char/fstream.cc: New.
- * 27_io/basic_istream/tellg/char/sstream.cc: New.
- * 27_io/basic_istream/ws/char/1.cc: New.
- * 27_io/basic_istringstream/1.cc: New.
- * 27_io/basic_istringstream/2.cc: New.
- * 27_io/basic_istringstream/3.cc: New.
- * 27_io/basic_istringstream/4.cc: New.
- * 27_io/basic_istringstream/rdbuf/char/2832.cc: New.
- * 27_io/basic_istringstream/str/char/1.cc: New.
- * 27_io/basic_ofstream/1.cc: New.
- * 27_io/basic_ofstream/2.cc: New.
- * 27_io/basic_ofstream/3.cc: New.
- * 27_io/basic_ofstream/4.cc: New.
- * 27_io/basic_ofstream/cons/char/2.cc: New.
- * 27_io/basic_ofstream/open/char/1.cc: New.
- * 27_io/basic_ofstream/rdbuf/char/2832.cc: New.
- * 27_io/basic_ostream/1.cc: New.
- * 27_io/basic_ostream/2.cc: New.
- * 27_io/basic_ostream/3.cc: New.
- * 27_io/basic_ostream/4.cc: New.
- * 27_io/basic_ostream/cons/char/9827.cc: New.
- * 27_io/basic_ostream/endl/char/1.cc: New.
- * 27_io/basic_ostream/ends/char/1.cc: New.
- * 27_io/basic_ostream/ends/char/2.cc: New.
- * 27_io/basic_ostream/exceptions/char/9561.cc: New.
- * 27_io/basic_ostream/flush/char/1.cc: New.
- * 27_io/basic_ostream/inserters_arithmetic/char/1.cc: New.
- * 27_io/basic_ostream/inserters_arithmetic/char/2.cc: New.
- * 27_io/basic_ostream/inserters_arithmetic/char/3.cc: New.
- * 27_io/basic_ostream/inserters_arithmetic/char/4.cc: New.
- * 27_io/basic_ostream/inserters_arithmetic/char/4402.cc: New.
- * 27_io/basic_ostream/inserters_arithmetic/char/5.cc: New.
- * 27_io/basic_ostream/inserters_arithmetic/char/6.cc: New.
- * 27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc: New.
- * 27_io/basic_ostream/inserters_character/char/1.cc: New.
- * 27_io/basic_ostream/inserters_character/char/2.cc: New.
- * 27_io/basic_ostream/inserters_character/char/3.cc: New.
- * 27_io/basic_ostream/inserters_character/char/4.cc: New.
- * 27_io/basic_ostream/inserters_character/char/5.cc: New.
- * 27_io/basic_ostream/inserters_character/char/6.cc: New.
- * 27_io/basic_ostream/inserters_character/char/8.cc: New.
- * 27_io/basic_ostream/inserters_character/wchar_t/7.cc: New.
- * 27_io/basic_ostream/inserters_character/wchar_t/8.cc: New.
- * 27_io/basic_ostream/inserters_other/char/1.cc: New.
- * 27_io/basic_ostream/inserters_other/char/2.cc: New.
- * 27_io/basic_ostream/inserters_other/char/3.cc: New.
- * 27_io/basic_ostream/inserters_other/char/4.cc: New.
- * 27_io/basic_ostream/inserters_other/char/9318-out.cc: New.
- * 27_io/basic_ostream/inserters_other/char/9424-out.cc: New.
- * 27_io/basic_ostream/sentry/char/1.cc: New.
- * 27_io/basic_ostream/sentry/char/2.cc: New.
- * 27_io/basic_ostream/sentry/char/3983-fstream.cc: New.
- * 27_io/basic_ostream/sentry/char/3983-sstream.cc: New.
- * 27_io/basic_ostream/tellp/char/1.cc: New.
- * 27_io/basic_ostream/tellp/char/2.cc: New.
- * 27_io/basic_ostringstream/1.cc: New.
- * 27_io/basic_ostringstream/2.cc: New.
- * 27_io/basic_ostringstream/3.cc: New.
- * 27_io/basic_ostringstream/4.cc: New.
- * 27_io/basic_ostringstream/cons/char/3.cc: New.
- * 27_io/basic_ostringstream/rdbuf/char/2832.cc: New.
- * 27_io/basic_ostringstream/str/char/1.cc: New.
- * 27_io/basic_ostringstream/str/char/2.cc: New.
- * 27_io/basic_streambuf/1.cc: New.
- * 27_io/basic_streambuf/2.cc: New.
- * 27_io/basic_streambuf/3.cc: New.
- * 27_io/basic_streambuf/cons/char/1.cc: New.
- * 27_io/basic_streambuf/imbue/char/1.cc: New.
- * 27_io/basic_streambuf/imbue/char/9322.cc: New.
- * 27_io/basic_streambuf/overflow/char/1.cc: New.
- * 27_io/basic_streambuf/overflow/char/2.cc: New.
- * 27_io/basic_streambuf/overflow/char/3599.cc: New.
- * 27_io/basic_streambuf/sgetc/char/1.cc: New.
- * 27_io/basic_streambuf/sgetn/char/1.cc: New.
- * 27_io/basic_streambuf/sputbackc/char/9538.cc: New.
- * 27_io/basic_streambuf/sputc/char/1057.cc: New.
- * 27_io/basic_streambuf/sputn/char/1.cc: New.
- * 27_io/basic_streambuf/sputn/char/1057.cc: New.
- * 27_io/basic_streambuf/sync/char/1057.cc: New.
- * 27_io/basic_stringbuf/1.cc: New.
- * 27_io/basic_stringbuf/2.cc: New.
- * 27_io/basic_stringbuf/3.cc: New.
- * 27_io/basic_stringbuf/4.cc: New.
- * 27_io/basic_stringbuf/5.cc: New.
- * 27_io/basic_stringbuf/imbue/char/1.cc: New.
- * 27_io/basic_stringbuf/imbue/char/9322.cc: New.
- * 27_io/basic_stringbuf/in_avail/char/1.cc: New.
- * 27_io/basic_stringbuf/overflow/char/2.cc: New.
- * 27_io/basic_stringbuf/overflow/char/3599.cc: New.
- * 27_io/basic_stringbuf/overflow/char/9988.cc: New.
- * 27_io/basic_stringbuf/sbumpc/char/1.cc: New.
- * 27_io/basic_stringbuf/sbumpc/char/9825.cc: New.
- * 27_io/basic_stringbuf/seekoff/char/1.cc: New.
- * 27_io/basic_stringbuf/seekoff/char/2.cc: New.
- * 27_io/basic_stringbuf/seekpos/char/1.cc: New.
- * 27_io/basic_stringbuf/seekpos/char/2.cc: New.
- * 27_io/basic_stringbuf/setbuf/char/1.cc: New.
- * 27_io/basic_stringbuf/setbuf/char/2.cc: New.
- * 27_io/basic_stringbuf/setbuf/char/3.cc: New.
- * 27_io/basic_stringbuf/sgetc/char/1.cc: New.
- * 27_io/basic_stringbuf/sgetn/char/1.cc: New.
- * 27_io/basic_stringbuf/snextc/char/1.cc: New.
- * 27_io/basic_stringbuf/sputbackc/char/1.cc: New.
- * 27_io/basic_stringbuf/sputbackc/char/9425.cc: New.
- * 27_io/basic_stringbuf/sputc/char/1.cc: New.
- * 27_io/basic_stringbuf/sputc/char/1057.cc: New.
- * 27_io/basic_stringbuf/sputc/char/9404-1.cc: New.
- * 27_io/basic_stringbuf/sputn/char/1.cc: New.
- * 27_io/basic_stringbuf/sputn/char/1057.cc: New.
- * 27_io/basic_stringbuf/sputn/char/9404-2.cc: New.
- * 27_io/basic_stringbuf/str/char/1.cc: New.
- * 27_io/basic_stringbuf/str/char/2.cc: New.
- * 27_io/basic_stringbuf/str/char/3.cc: New.
- * 27_io/basic_stringbuf/str/char/3955.cc: New.
- * 27_io/basic_stringbuf/sungetc/char/1.cc: New.
- * 27_io/basic_stringbuf/sync/char/1057.cc: New.
- * 27_io/basic_stringstream/1.cc: New.
- * 27_io/basic_stringstream/2.cc: New.
- * 27_io/basic_stringstream/3.cc: New.
- * 27_io/basic_stringstream/4.cc: New.
- * 27_io/basic_stringstream/rdbuf/char/2832.cc: New.
- * 27_io/basic_stringstream/str/char/1.cc: New.
- * 27_io/basic_stringstream/str/char/2.cc: New.
- * 27_io/basic_stringstream/str/char/3.cc: New.
- * 27_io/basic_stringstream/str/char/4.cc: New.
- * 27_io/fpos/1.cc: New.
- * 27_io/fpos/2.cc: New.
- * 27_io/fpos/3.cc: New.
- * 27_io/ios_base/callbacks/1.cc: New.
- * 27_io/ios_base/state/1.cc: New.
- * 27_io/ios_base/storage/1.cc: New.
- * 27_io/ios_base/storage/2.cc: New.
- * 27_io/ios_base/storage/3.cc: New.
- * 27_io/ios_base/sync_with_stdio/1.cc: New.
- * 27_io/ios_base/sync_with_stdio/2.cc: New.
- * 27_io/manipulators/adjustfield/char/1.cc: New.
- * 27_io/manipulators/adjustfield/char/2.cc: New.
- * 27_io/manipulators/basefield/char/1.cc: New.
- * 27_io/manipulators/standard/char/1.cc: New.
- * 27_io/manipulators/standard/char/2.cc: New.
- * 27_io/objects/char/1.cc: New.
- * 27_io/objects/char/2.cc: New.
- * 27_io/objects/char/2523-1_xin.cc: New.
- * 27_io/objects/char/2523-1_xin.in: New.
- * 27_io/objects/char/2523-2_xin.cc: New.
- * 27_io/objects/char/2523-2_xin.in: New.
- * 27_io/objects/char/3045.cc: New.
- * 27_io/objects/char/3647.cc: New.
- * 27_io/objects/char/3_xin.cc: New.
- * 27_io/objects/char/3_xin.in: New.
- * 27_io/objects/char/4_xin.cc: New.
- * 27_io/objects/char/4_xin.in: New.
- * 27_io/objects/char/5268.cc: New.
- * 27_io/objects/char/5280_xin.cc: New.
- * 27_io/objects/char/5280_xin.in: New.
- * 27_io/objects/char/6548_xin.cc: New.
- * 27_io/objects/char/6548_xin.in: New.
- * 27_io/objects/char/6648-1_xin.cc: New.
- * 27_io/objects/char/6648-1_xin.in: New.
- * 27_io/objects/char/6648-2_xin.cc: New.
- * 27_io/objects/char/6648-2_xin.in: New.
- * 27_io/objects/char/7744_xin.cc: New.
- * 27_io/objects/char/7744_xin.in: New.
- * 27_io/objects/wchar_t/1.cc: New.
- * 27_io/types/1.cc: New.
- * 27_io/types/2.cc: New.
- * data/filebuf_members-1.tst: New.
- * data/filebuf_members-1.txt: New.
- * data/filebuf_virtuals-1.tst: New.
- * data/filebuf_virtuals-1.txt: New.
- * data/filebuf_virtuals-2.tst: New.
- * data/filebuf_virtuals-3.tst: New.
- * data/ifstream_members-1.tst: New.
- * data/ifstream_members-1.txt: New.
- * data/ios_base_members_static-1.tst: New.
- * data/istream_extractor_other-1.tst: New.
- * data/istream_extractor_other-1.txt: New.
- * data/istream_extractor_other-2.tst: New.
- * data/istream_seeks-1.tst: New.
- * data/istream_seeks-1.txt: New.
- * data/istream_seeks-2.tst: New.
- * data/istream_seeks-3.tst: New.
- * data/istream_unformatted-1.tst: New.
- * data/istream_unformatted-1.txt: New.
- * data/ofstream_members-1.tst: New.
- * data/ostream_inserter_char-1.tst: New.
- * data/ostream_inserter_char-1.txt: New.
- * data/ostream_inserter_other-1.tst: New.
- * data/ostream_inserter_other-2.tst: New.
- * data/ostream_seeks-1.tst: New.
-
-2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/sstream.tcc (basic_stringbuf::seekpos): Remove
- requirement that __mode must be strict input or output.
-
- * include/std/std_streambuf.h (basic_streambuf::setp): Set
- _M_out_lim.
-
- * include/std/std_sstream.h (basic_strinbuf::str): Zero length
- output string shouldn't core.
- (basic_stringbuf::_M_really_sync): Add base argument. Remove rturn
- type.
- * include/bits/sstream.tcc: Adjust _M_really_sync bits here.
-
- * include/bits/istream.tcc (basic_istream::putback): Set gcount to
- zero.
-
-2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/data: New directory.
- * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Modify
- to copy files from the testsuite data directory.
- (libstdc++-v3-list-sourcefiles): Add another test list filter, for
- testfiles containing _xin, which now means this is an interactive
- test and should be run with the interactive dejagnu hooks.
- * testsuite/Makefile.am: Remove testsuite_* files.
- * testsuite/Makefile.in: Regenerate.
-
-2003-04-09 Zack Weinberg <zack@codesourcery.com>
-
- * docs/html/install.html: Document complete list of locales
- required by test suite. Document procedure for installing
- said locales under Debian. Solicit instructions for other
- operating systems.
-
-2003-04-08 Alexandre Oliva <aoliva@redhat.com>
-
- * include/bits/sstream.tcc (overflow): Make sure operands of min
- and max have the same type.
-
-2003-04-04 Jerry Quinn <jlquinn@optonline.net>
-
- PR libstdc++/10276
- * src/ios.cc (ios_base::_M_init): Remove _M_callbacks
- initialization.
-
-2003-03-31 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_streambuf.h (_M_out_buf_size()): Remove.
- * include/bits/fstream.tcc (_M_allocate_internal_buffer):
- Don't set _M_out_end.
- (basic_filebuf::overflow): Replace _M_out_buf_size() with
- this->_M_out_cur && this->_M_out_cur < this->_M_out_end.
- * include/bits/sstream.tcc (basic_stringbuf::overflow):
- Replace _M_out_buf_size() with this->_M_out_cur < this->_M_out_end;
- * include/bits/streambuf.tcc (basic_streambuf::sputc):
- Replace _M_out_buf_size() with _M_out_cur && _M_out_cur < _M_out_end.
- (basic_streambuf::xsputn): Replace _M_out_buf_size() with
- _M_out_end - _M_out_cur.
- (__copy_streambufs): Likewise.
- * include/std/std_fstream.h (_M_set_determinate): Set
- _M_out_end here.
-
-2003-03-30 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/fstream.tcc (basic_filebuf::showmanyc,
- _M_convert_to_external, _M_really_overflow, seekoff): Fix
- test for synced buffer.
- * include/std/std_fstream.h (sync): Likewise.
- * src/fstream.cc (basic_filebuf<char>::_M_underflow_common,
- basic_filebuf<wchar_t>::_M_underflow_common): Likewise.
-
-2003-03-28 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/std/std_sstream.h (basic_istringstream): Adjust
- initialization.
- (basic_ostringstream): Same.
- (basic_stringstream): Same.
- * include/std/std_fstream.h (basic_ifstream): Adjust initialization.
- (basic_ofstream): Same.
- (basic_fstream): Same.
- * include/std/std_ostream.h (basic_ostrem): Add protected ctor
- that does not call init.
- * include/std/std_istream.h (basic_istream): Same.
- (basic_iostream): Construct istream, ostream uninitialized, use
- init to initialize just once. Add protected ctor that does not
- call init.
-
-2003-03-28 Paolo Carlini <pcarlini@unitus.it>
- Nathan Myers <ncm@cantrip.org>
-
- PR libstdc++/9533
- * include/bits/fstream.tcc (basic_filebuf<>::open): Don't
- call underflow().
- (basic_filebuf<>::showmanyc): Use the information provided
- by codecvt and __basic_file<>::showmanyc_helper to implement
- a non-trivial showmanyc.
- * config/io/basic_file_stdio.h
- (__basic_file<>::showmanyc_helper): New, declare.
- * config/io/basic_file_stdio.cc
- (__basic_file<>::showmanyc_helper): Define.
- (__basic_file<>::_M_open_mode): Don't set O_NONBLOCK.
- (__basic_file<char>::open): Don't call fcntl().
- * acinclude.m4 (GLIBCPP_CHECK_S_ISREG_OR_S_IFREG,
- GLIBCPP_CHECK_POLL): New macros.
- * configure.in: Call here.
- * acconfig.h: Add #undefs for the corresponding symbols.
- * aclocal.m4: Regenerate.
- * configure: Regenerate.
- * config.h.in: Regenerate.
-
-2003-03-24 Benjamin Kosnik <bkoz@redhat.com>
-
- * config/linker-map.gnu: Remove string export restrictions.
-
-2003-03-24 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/21_strings/basic_string/find/char/1.cc: Remove
- find_first_of, find_last_of and find_last_not_of tests.
- * testsuite/21_strings/basic_string/find/char/2.cc: find_first_of
- tests here, new file.
- * testsuite/21_strings/basic_string/find/wchar_t/1.cc: Likewise,
- remove wchar_t find_first_of, find_last_of and find_last_not_of tests.
- * testsuite/21_strings/basic_string/find/wchar_t/2.cc: Likewise,
- wchar_t find_first_of tests here, new file.
- * testsuite/21_strings/basic_string/rfind/char/2.cc: find_last_of
- tests here.
- * testsuite/21_strings/basic_string/rfind/char/3.cc: find_last_not_of
- tests here.
- * testsuite/21_strings/basic_string/rfind/wchar_t/2.cc: likewise,
- wchar_t find_last_of tests here.
- * testsuite/21_strings/basic_string/rfind/wchar_t/3.cc: likewise,
- wchar_t find_last_not_of tests here.
-
-2003-03-22 Loren J. Rittle <ljrittle@acm.org>
-
- * config/os/hpux/ctype_noninline.h (ctype<char>::classic_table):
- Correct return value.
-
-2003-03-21 Jerry Quinn <jlquinn@optonline.net>
-
- PR libstdc++/5730
- * include/bits/c++config (_GLIBCPP_FAST_MATH): Define.
- * include/std/std_complex.h (norm): Use faster,
- less accurate computation for builtin float types under --fast-math.
-
-2003-03-21 Magnus Fromreide <gnats@magfr.user.lysator.liu.se>
-
- * testsuite/testsuite_hooks.h: Fix warning nits.
-
-2003-03-19 Alexandre Oliva <aoliva@redhat.com>
-
- * config/cpu/mips/atomicity.h (__exchange_and_add, __atomic_add):
- Only .set mips2 for the o32 ABI.
-
-2003-03-19 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/21_strings/char_traits/requirements/char/1.cc:
- Test char not wchar_t.
-
-2003-03-18 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/21_strings/basic_string/append/wchar_t/1.cc:
- Correct size, taking into account sizeof(wchar_t).
-
-2003-03-18 Paolo Carlini <pcarlini@unitus.it>
-
- Reshuffle 21_strings testsuite.
- * testsuite/21_strings/append.cc, c_strings.cc, invariants.cc,
- assign.cc, ctor_copy_dtor.cc, nonmember.cc, capacity.cc,
- element_access.cc, operations.cc, char_traits_requirements.cc,
- find.cc, replace.cc, char_traits_typedefs.cc, insert.cc, rfind.cc,
- compare.cc, inserters_extractors.cc, substr.cc: Split up, add
- wchar_t tests as follows.
- * 21_strings/basic_string/append/char/1.cc: New.
- * 21_strings/basic_string/append/wchar_t/1.cc: New.
- * 21_strings/basic_string/assign/char/1.cc: New.
- * 21_strings/basic_string/assign/char/2.cc: New.
- * 21_strings/basic_string/assign/char/3.cc: New.
- * 21_strings/basic_string/assign/wchar_t/1.cc: New.
- * 21_strings/basic_string/assign/wchar_t/2.cc: New.
- * 21_strings/basic_string/assign/wchar_t/3.cc: New.
- * 21_strings/basic_string/capacity/1.cc: New.
- * 21_strings/basic_string/capacity/char/1.cc: New.
- * 21_strings/basic_string/capacity/char/2.cc: New.
- * 21_strings/basic_string/capacity/wchar_t/1.cc: New.
- * 21_strings/basic_string/capacity/wchar_t/2.cc: New.
- * 21_strings/basic_string/compare/char/1.cc: New.
- * 21_strings/basic_string/compare/wchar_t/1.cc: New.
- * 21_strings/basic_string/cons/char/1.cc: New.
- * 21_strings/basic_string/cons/char/2.cc: New.
- * 21_strings/basic_string/cons/char/3.cc: New.
- * 21_strings/basic_string/cons/char/4.cc: New.
- * 21_strings/basic_string/cons/char/5.cc: New.
- * 21_strings/basic_string/cons/wchar_t/1.cc: New.
- * 21_strings/basic_string/cons/wchar_t/2.cc: New.
- * 21_strings/basic_string/cons/wchar_t/3.cc: New.
- * 21_strings/basic_string/cons/wchar_t/4.cc: New.
- * 21_strings/basic_string/cons/wchar_t/5.cc: New.
- * 21_strings/basic_string/element_access/char/1.cc: New.
- * 21_strings/basic_string/element_access/char/2.cc: New.
- * 21_strings/basic_string/element_access/char/3.cc: New.
- * 21_strings/basic_string/element_access/wchar_t/1.cc: New.
- * 21_strings/basic_string/element_access/wchar_t/2.cc: New.
- * 21_strings/basic_string/element_access/wchar_t/3.cc: New.
- * 21_strings/basic_string/find/char/1.cc: New.
- * 21_strings/basic_string/find/wchar_t/1.cc: New.
- * 21_strings/basic_string/insert/char/1.cc: New.
- * 21_strings/basic_string/insert/char/2.cc: New.
- * 21_strings/basic_string/insert/wchar_t/1.cc: New.
- * 21_strings/basic_string/insert/wchar_t/2.cc: New.
- * 21_strings/basic_string/inserters_extractors/char/1.cc: New.
- * 21_strings/basic_string/inserters_extractors/char/4.cc: New.
- * 21_strings/basic_string/inserters_extractors/char/5.cc: New.
- * 21_strings/basic_string/inserters_extractors/char/6.cc: New.
- * 21_strings/basic_string/inserters_extractors/char/7.cc: New.
- * 21_strings/basic_string/inserters_extractors/char/8.cc: New.
- * 21_strings/basic_string/inserters_extractors/char/9.cc: New.
- * 21_strings/basic_string/inserters_extractors/wchar_t/1.cc: New.
- * 21_strings/basic_string/inserters_extractors/wchar_t/4.cc: New.
- * 21_strings/basic_string/inserters_extractors/wchar_t/5.cc: New.
- * 21_strings/basic_string/inserters_extractors/wchar_t/6.cc: New.
- * 21_strings/basic_string/inserters_extractors/wchar_t/7.cc: New.
- * 21_strings/basic_string/inserters_extractors/wchar_t/8.cc: New.
- * 21_strings/basic_string/inserters_extractors/wchar_t/9.cc: New.
- * 21_strings/basic_string/operators/char/1.cc: New.
- * 21_strings/basic_string/operators/char/2.cc: New.
- * 21_strings/basic_string/operators/wchar_t/1.cc: New.
- * 21_strings/basic_string/operators/wchar_t/2.cc: New.
- * 21_strings/basic_string/replace/char/1.cc: New.
- * 21_strings/basic_string/replace/char/2.cc: New.
- * 21_strings/basic_string/replace/char/3.cc: New.
- * 21_strings/basic_string/replace/char/4.cc: New.
- * 21_strings/basic_string/replace/char/5.cc: New.
- * 21_strings/basic_string/replace/wchar_t/1.cc: New.
- * 21_strings/basic_string/replace/wchar_t/2.cc: New.
- * 21_strings/basic_string/replace/wchar_t/3.cc: New.
- * 21_strings/basic_string/replace/wchar_t/4.cc: New.
- * 21_strings/basic_string/replace/wchar_t/5.cc: New.
- * 21_strings/basic_string/rfind/char/1.cc: New.
- * 21_strings/basic_string/rfind/char/2.cc: New.
- * 21_strings/basic_string/rfind/char/3.cc: New.
- * 21_strings/basic_string/rfind/wchar_t/1.cc: New.
- * 21_strings/basic_string/rfind/wchar_t/2.cc: New.
- * 21_strings/basic_string/rfind/wchar_t/3.cc: New.
- * 21_strings/basic_string/substr/char/1.cc: New.
- * 21_strings/basic_string/substr/wchar_t/1.cc: New.
- * 21_strings/c_strings/char/1.cc: New.
- * 21_strings/c_strings/char/2.cc: New.
- * 21_strings/c_strings/wchar_t/1.cc: New.
- * 21_strings/c_strings/wchar_t/2.cc: New.
- * 21_strings/char_traits/requirements/char/1.cc: New.
- * 21_strings/char_traits/requirements/wchar_t/1.cc: New.
- * 21_strings/char_traits/typedefs/char/1.cc: New.
-
-2003-03-17 Paolo Carlini <pcarlini@unitus.it>
- Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/10097
- * src/fstream.cc (basic_filebuf<char>::_M_underflow_common,
- basic_filebuf<wchar_t>::_M_underflow_common):
- if (gptr() < egptr()) return *gptr().
- * testsuite/27_io/filebuf_virtuals.cc (test16): Add.
-
- * testsuite/27_io/filebuf_members.cc (test_04): Minor
- changes: unlink fifo before making it, fix spelling error.
-
-2003-03-17 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/Makefile.am (CLEANFILES): Add tmp*.
- * testsuite/Makefile.in: Regenerate.
- * testsuite/27_io/filebuf_members.cc: Consistently name tmp files.
- Cleanups.
-
-2003-03-17 Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/9964
- * include/bits/fstream.tcc (basic_filebuf::close):
- Always close file, even when write fails.
- * testsuite/27_io/filebuf_members.cc (test_07): New test.
-
-2003-03-17 Danny Smith <dannysmith@users.sourceforge.net>
-
- * libsupc++/Makefile.am (C_COMPILE): Remove.
- (LTCOMPILE): Likewise.
- * libsupc++/Makefile.in: Regenerate.
-
-2003-03-14 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/23_containers/bitset_members.cc: Add test variable.
- * testsuite/23_containers/map_insert.cc: Same.
- * testsuite/22_locale/ctype/cons/char/1.cc: Same.
- * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Same.
- * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Same.
- * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Same.
- * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Same.
- * testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Same.
- * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Same.
- * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Same.
- * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Same.
- * testsuite/27_io/istream_exception.cc: Same.
- * testsuite/27_io/filebuf_virtuals.cc: Same.
- * testsuite/27_io/stringbuf_virtuals.cc: Same.
- * testsuite/27_io/ostream_inserter_arith.cc: Same.
- * testsuite/26_numerics/valarray_operators.cc: Same.
- * testsuite/26_numerics/slice.cc: Same.
- * testsuite/26_numerics/slice_array_assignment.cc: Same.
- * testsuite/24_iterators/istream_iterator.cc: Same.
- * mkcheck.in (TESTS_FILE): Use dejagnu-generated file if possible.
-
-2003-03-14 Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/9581
- PR libstdc++/9870
- * config/locale/generic/ctype_members.cc,
- * config/locale/gnu/ctype_members.cc
- (ctype<wchar_t>::do_widen(char)): Cast argument to
- unsigned char before passing to btowc.
- (ctype<wchar_t>::do_widen(const char*, const char*, wchar_t*)):
- Convert characters with btowc instead of mbsrtowcs.
- (ctype<wchar_t>::do_narrow(const wchar_t*, const wchar_t*,
- char, char*):
- Convert characters with wctob instead of wcsrtombs.
- * testsuite/22_locale/ctype/narrow/wchar_t/3.cc: New test.
- * testsuite/22_locale/ctype/widen/wchar_t/2.cc: New test.
- * testsuite/22_locale/ctype/widen/wchar_t/3.cc: New test.
-
-2003-03-14 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/stdc++.h: New.
- * libsupc++/exception_defines.h (__EXCEPTION_DEFINES_H): Add guard.
- * include/Makefile.am (stamp-std-precompile): Generate stdc++.h.gch
- * include/Makefile.in: Regenerate.
- * testsuite_flags.in (--build-cxx): Add, but don't use PCHFLAGS.
- (--cxxflags): Put -g -O2 here.
- * testsuite/libstdc++-v3.dg/dg.exp: Remove -g -O2 here.
-
-2003-03-14 Loren J. Rittle <ljrittle@acm.org>
-
- * testsuite/testsuite_hooks.h: Suppress runtime exception thrown by
- missing named locale.
-
-2003-03-14 Andreas Schwab <schwab@suse.de>
-
- * configure.in: Only append to makefiles that are newly created to
- avoid multiple multi-do/multi-clean rules.
- * configure: Rebuilt.
-
-2003-03-13 Jonathan Wakely <redi@gcc.gnu.org>
-
- * docs/html/configopts.html, docs/html/documentation.html,
- docs/html/explanations.html, docs/html/install.html,
- docs/html/19_diagnostics/howto.html, docs/html/faq/index.html: Fix
- invalid XHTML and make page header style consistent.
-
-2003-03-12 Jonathan Wakely <redi@gcc.gnu.org>
-
- * docs/html/faq/index.html: Explain memory "leaks" due to allocators.
- * docs/html/faq/index.txt: Regenerate.
- * docs/html/debug.html: Add a bit to allocator text and fix XHTML.
-
-2003-03-12 Andreas Schwab <schwab@suse.de>
-
- * acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in
- glibcpp_toolexeclibdir.
- * aclocal.m4, configure: Rebuilt.
-
-2003-03-11 Jonathan Wakely <redi@gcc.gnu.org>
-
- * docs/html/faq/index.html: Update text about location of headers.
- * docs/html/faq/index.txt: Regenerate.
-
-2003-03-11 Carlo Wood <carlo@alinoe.com>
-
- * include/bits/demangle.h: Prepend accessors of
- class qualifier with 'get_' in order to fix warnings
- when compiling with -Wshadow.
-
-2003-03-11 Loren J. Rittle <ljrittle@acm.org>
-
- * config/os/bsd/freebsd/ctype_inline.h: Support _M_table
- when so installed.
- * testsuite/22_locale/ctype/cons/char/1.cc: Fix typo.
+2004-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
- * testsuite/testsuite_hooks.h (run_tests_wrapped_env): Do not
- report lack of setenv().
+ PR c/13814
+ * config/linker-map.gnu (nan): Delete.
+ * libmath/mathconf.h (NAN, nan): Delete.
+ * linkage.m4 (nan): Don't check for it.
+ * libmath/nan.c: Delete file.
-2003-03-09 Paolo Carlini <pcarlini@unitus.it>
-
- * config/io/basic_file_stdio.cc: include <unistd.h>.
-
-2003-03-09 Paolo Carlini <pcarlini@unitus.it>
- Nathan Myers <ncm@cantrip.org>
-
- PR libstdc++/7744
- * config/io/basic_file_stdio.h (__basic_file<>::xsgetn, xsputn,
- seekoff, seekpos): Add a boolean parameter __stdio.
- * config/io/basic_file_stdio.cc (__basic_file<>::xsgetn, xsputn,
- seekoff, seekpos): If __stdio == true, use fread (fwrite, fseek/ftell,
- fseek/ftell, respectively), otherwise read (write, lseek, lseek,
- respectively).
- * include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external,
- _M_really_overflow, seekoff): Use the boolean parameter in the calls.
- * include/std/std_fstream.h (sync): Likewise.
- * src/fstream.cc (basic_filebuf<>::_M_underflow_common): Likewise.
- * src/ios.cc (ios_base::Init::_S_ios_create(bool)): Revert
- libstdc++/8399 commit involving isatty(0).
- * acinclude.m4 (GLIBCPP_CHECK_UNISTD_DECL_AND_LINKAGE_1): Remove.
- (GLIBCPP_CHECK_UNISTD_SUPPORT): Remove
- * configure.in: Remove call.
- * aclocal.m4: Regenerate.
- * config.h.in: Regenerate.
- * configure: Regenerate.
- * testsuite/27_io/narrow_stream_objects.cc (test11): Add.
-
-2003-03-09 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9988
- * include/bits/fstream.tcc (overflow): don't write EOF to file.
- * testsuite/27_io/filebuf_virtuals.cc (test15): Add.
-
-2003-03-08 Jerry Quinn <jlquinn@optonline.net>
-
- PR libstdc++/9561
- * include/bits/basic_ios.h (_M_setstate): New.
- * include/bits/ostream.tcc (operator<<): Use it.
- * include/bits/istream.tcc (operator>>): Use it.
- * include/std/std_ostream.h (operator<<): Make friends.
- * include/std/std_istream.h (operator>>): Make friends.
- * testsuite/27_io/ostream_exception.cc,
- testsuite/27_io/istream_exception.cc: New tests.
-
-2003-03-08 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/locale_facets.tcc: Fix typo.
-
-2003-03-08 Loren J. Rittle <ljrittle@acm.org>
-
- * testsuite/26_numerics/c99_classification_macros_c.cc: Tweak test.
-
- * config/locale/generic/c_locale.cc
- (locale::facet::_S_create_c_locale): Throw runtime exception when
- unsupported language is specified.
- * testsuite/testsuite_hooks.h
- (run_test_wrapped_generic_locale_exception_catcher): New function.
- * testsuite/testsuite_hooks.cc (run_tests_wrapped_locale):
- Suppress runtime exception thrown by generic implementation.
- (run_tests_wrapped_env): Likewise.
- (run_test_wrapped_generic_locale_exception_catcher): New function.
- * testsuite/22_locale/collate/compare/char/1.cc: New test wrap.
- * testsuite/22_locale/collate/compare/char/2.cc: New test wrap.
- * testsuite/22_locale/collate/compare/char/3.cc: New test wrap.
- * testsuite/22_locale/collate/hash/char/2.cc: New test wrap.
- * testsuite/22_locale/collate/transform/char/2.cc: New test wrap.
- * testsuite/22_locale/collate/transform/char/3.cc: New test wrap.
- * testsuite/22_locale/collate_byname/1.cc: New test wrap.
- * testsuite/22_locale/ctype/is/char/2.cc: New test wrap.
- * testsuite/22_locale/facet/2.cc: New test wrap.
- * testsuite/22_locale/locale/cons/4.cc: New test wrap.
- * testsuite/22_locale/locale/cons/5.cc: New test wrap.
- * testsuite/22_locale/locale/cons/7.cc: New test wrap.
- * testsuite/22_locale/messages/members/char/1.cc: New test wrap.
- * testsuite/22_locale/messages/members/char/2.cc: New test wrap.
- * testsuite/22_locale/messages/members/char/3.cc: New test wrap.
- * testsuite/22_locale/messages_byname/1.cc: New test wrap.
- * testsuite/22_locale/money_get/get/char/1.cc: New test wrap.
- * testsuite/22_locale/money_get/get/char/2.cc: New test wrap.
- * testsuite/22_locale/money_get/get/char/3.cc: New test wrap.
- * testsuite/22_locale/money_get/get/char/4.cc: New test wrap.
- * testsuite/22_locale/money_put/put/char/1.cc: New test wrap.
- * testsuite/22_locale/money_put/put/char/2.cc: New test wrap.
- * testsuite/22_locale/money_put/put/char/3.cc: New test wrap.
- * testsuite/22_locale/moneypunct/members/char/2.cc: New test wrap.
- * testsuite/22_locale/moneypunct_byname/1.cc: New test wrap.
- * testsuite/22_locale/num_get/get/char/1.cc: New test wrap.
- * testsuite/22_locale/num_get/get/char/2.cc: New test wrap.
- * testsuite/22_locale/num_get/get/char/3.cc: New test wrap.
- * testsuite/22_locale/num_get/get/char/5.cc: New test wrap.
- * testsuite/22_locale/num_get/get/char/6.cc: New test wrap.
- * testsuite/22_locale/num_put/put/char/1.cc: New test wrap.
- * testsuite/22_locale/num_put/put/char/2.cc: New test wrap.
- * testsuite/22_locale/num_put/put/char/3.cc: New test wrap.
- * testsuite/22_locale/num_put/put/char/5.cc: New test wrap.
- * testsuite/22_locale/numpunct/members/char/1.cc: New test wrap.
- * testsuite/22_locale/numpunct/members/char/2.cc: New test wrap.
- * testsuite/22_locale/numpunct_byname/1.cc: New test wrap.
- * testsuite/22_locale/numpunct_byname/2.cc: New test wrap.
- * testsuite/22_locale/time_get/date_order/char/1.cc: New test wrap.
- * testsuite/22_locale/time_get/get_date/char/1.cc: New test wrap.
- * testsuite/22_locale/time_get/get_date/char/2.cc: New test wrap.
- * testsuite/22_locale/time_get/get_monthname/char/1.cc: New test wrap.
- * testsuite/22_locale/time_get/get_monthname/char/2.cc: New test wrap.
- * testsuite/22_locale/time_get/get_time/char/1.cc: New test wrap.
- * testsuite/22_locale/time_get/get_time/char/2.cc: New test wrap.
- * testsuite/22_locale/time_get/get_weekday/char/1.cc: New test wrap.
- * testsuite/22_locale/time_get/get_weekday/char/2.cc: New test wrap.
- * testsuite/22_locale/time_get/get_year/char/1.cc: New test wrap.
- * testsuite/22_locale/time_put/put/char/1.cc: New test wrap.
- * testsuite/22_locale/time_put/put/char/2.cc: New test wrap.
- * testsuite/22_locale/time_put/put/char/3.cc: New test wrap.
- * testsuite/22_locale/time_put/put/char/4.cc: New test wrap.
- * testsuite/22_locale/time_put/put/char/5.cc: New test wrap.
- * testsuite/22_locale/time_put/put/char/6.cc: New test wrap.
- * testsuite/22_locale/time_put/put/char/7.cc: New test wrap.
- * testsuite/22_locale/time_put/put/char/8.cc: New test wrap.
- * testsuite/27_io/filebuf_virtuals.cc: New test wrap.
- * testsuite/27_io/ios_members.cc: New test wrap.
- * testsuite/27_io/ostream_inserter_arith.cc (test02): Make void.
- New test wrap.
- * testsuite/27_io/streambuf_members.cc: New test wrap.
- * testsuite/27_io/stringbuf_virtuals.cc: New test wrap.
-
-2003-03-08 Paolo Carlini <pcarlini@unitus.it>
- Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/9424
- * include/bits/streambuf.tcc (__copy_streambufs): Use
- sgetn-sputn only when sputn cannot fail, otherwise fall back
- to safe snextc-sputc.
- * testsuite/27_io/streambuf_members.cc (test11, test12): Add.
-
-2003-03-08 Jerry Quinn <jlquinn@optonline.net>
-
- * include/bits/locale_facets.tcc (num_put::do_put(bool)): Use
- locale cache for truename and falsename.
-
-2003-03-08 Jerry Quinn <jlquinn@optonline.net>
-
- * src/ios.cc (ios_base::ios_base): Correct order of _M_word and
- _M_word_size initialization.
-
-2003-03-07 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/fstream.tcc (_M_convert_to_external):
- Set __elen to zero if codecvt::out eventually fails.
-
-2003-03-07 Paolo Carlini <pcarlini@unitus.it>
+ * config.h.in, configure: Regenerate.
- PR libstdc++/9182
- * include/bits/fstream.tcc (_M_really_overflow): Check
- for _M_convert_to_external possible failures.
- * include/std/std_fstream.h (sync): Check _M_really_overflow
- return value and return -1 in case of failure.
- * testsuite/27_io/filebuf_virtuals.cc (test13, test14): Add.
+2004-01-23 Paolo Carlini <pcarlini@suse.de>
-2003-03-07 Paolo Carlini <pcarlini@unitus.it>
+ * include/bits/basic_string.h (push_back(_CharT)):
+ Call _M_replace_aux.
+ (insert(size_type, const basic_string&)): Trivial tweak.
+ (insert(size_type, size_type, _CharT)): Call _M_replace_aux.
+ (insert(iterator, _CharT)): Ditto.
+ (erase(size_type, size_type)): Ditto.
+ (erase(iterator)): Ditto.
+ (erase(iterator, iterator)): Ditto.
+ (replace(size_type, size_type, size_type, _CharT)): Ditto.
- PR libstdc++/9826
- * include/bits/istream.tcc (operator>>(_CharT*),
- operator>>(basic_string&), ws): Pass a char_type to __ctype.is.
- * testsuite/27_io/stringstream.cc (test02): Add.
+2004-01-23 Loren J. Rittle <ljrittle@acm.org>
- * include/bits/istream.tcc (operator>>(_CharT*)):
- Assign a char_type to *__s.
+ libstdc++/13823
+ * testsuite/performance/allocator_map_thread.cc: New test.
-2003-03-07 Petur Runolfsson <peturr02@ru.is>
+2004-01-22 Paolo Carlini <pcarlini@suse.de>
- PR libstdc++/9817
* include/bits/locale_facets.tcc
- (collate::do_compare, collate::do_transform):
- Handle nul characters in input.
- * testsuite/22_locale/collate/compare/char/3.cc: New test.
- * testsuite/22_locale/collate/compare/wchar_t/3.cc: New test.
- * testsuite/22_locale/collate/transform/char/3.cc: New test.
- * testsuite/22_locale/collate/transform/wchar_t/3.cc: New test.
-
-2003-03-07 Jerry Quinn <jlquinn@optonline.net>
-
- * include/bits/streambuf_iterator.h (_M_put): Set _M_failed if
- sputn fails.
- * testsuite/27_io/ostream_fail.cc: New test.
-
-2003-03-07 Matthias Klose <doko@debian.org>
-
- * Makefile.am (AM_MAKEFLAGS): Also pass gxx_include_dir.
- FLAGS_TO_PASS: Set to AM_MAKEFLAGS
- * Makefile.in: Regenerate.
- * libsupc++/Makefile.am: Express glibcppinstalldir in terms
- of gxx_include_dir.
- AM_MAKEFLAGS: Pass gxx_include_dir.
- * libsupc++/Makefile.in: Regenerate.
-
-2003-03-06 Jerry Quinn <jlquinn@optonline.net>
-
- * testsuite/27_io/ios_base_storage.cc (test02): Set exception
- mask. Test setting small-numbered pword and iword slots. Test
- behavior at limit of numeric_limits::max. Check that values are
- still good after failures.
-
-2003-03-06 Jerry Quinn <jlquinn@optonline.net>
-
- * src/ios.cc (ios_base::_M_init): Remove _M_word_size.
- (ios_base::ios_base): Set _M_word, _M_word_size.
- (ios_base::~ios_base): Remove redundant test.
- * testsuite/27_io/ios_base_storage.cc (test03): New.
+ (money_put::do_put(..., long double)): Use the basic_string
+ constructor for char arrays, not that for C-strings, to pass
+ __digits to do_put(..., const string_type&): __ws isn't
+ null-terminated.
+
+2004-01-22 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (_M_replace_safe): Change
+ signatures to take size_types and const _CharT*.
+ (_M_replace_aux): Likewise, takes size_types instead of
+ iterators.
+ (append(size_type, _CharT)): Update call.
+ (assign(size_type, _CharT)): Ditto.
+ (replace(iterator, iterator, size_type, _CharT)): Ditto.
+ (_M_replace_dispatch(iterator, iterator, _Integer,
+ _Integer, __true_type)): Ditto.
+ * include/bits/basic_string.tcc (assign(const _CharT*,
+ size_type)): Ditto.
+ (insert(size_type, const _CharT*, size_type)): Ditto.
+ (replace(size_type, size_type, const _CharT*,
+ size_type)): Ditto.
+ (_M_replace(iterator, iterator, _InputIterator,
+ _InputIterator)): Ditto.
+ (append(const basic_string&)): Ditto.
+ (append(const basic_string&, size_type, size_type): Ditto.
+ (append(const _CharT*, size_type): Ditto.
+ (_M_replace_safe, _M_replace_safe): Change definitions
+ accordingly, simplify.
+ * string-inst.cc (_M_replace_safe): Don't instantiate.
+
+2004-01-21 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (append(const basic_string&)):
+ Revert previous change.
+ (append(const basic_string&, size_type, size_type)): Revert
+ previous change, use _M_check and _M_limit.
+
+2004-01-21 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (_M_check): Change to return
+ a checked __pos and take an additional const char* argument.
+ (_M_fold): Rename to _M_limit, change to return a size_type,
+ corresponding to the __off limited to the actual length.
+ (insert(size_type, size_type, _CharT)): Update call, call
+ replace.
+ (insert(iterator, _CharT)): Call replace(iterator, iterator,
+ size_type, _CharT) instead.
+ (erase(size_type, size_type)): Update calls.
+ (replace(size_type, size_type, size_type, _CharT)): Ditto.
+ (substr(size_type, size_type)): Use _M_check.
+ * include/bits/basic_string.tcc (basic_string(const basic_string&,
+ size_type, size_type)): Update calls.
+ (basic_string(const basic_string&, size_type, size_type,
+ const _Alloc&)): Ditto.
+ (assign(const basic_string&, size_type, size_type)): Use the
+ new _M_check and _M_limit.
+ (insert(size_type, const basic_string&, size_type, size_type):
+ Ditto.
+ (insert(size_type, const _CharT*, size_type)): Ditto.
+ (replace(size_type, size_type, const _CharT*, size_type): Ditto.
+ (replace(size_type, size_type, const basic_string&,
+ size_type, size_type)): Ditto.
+ (append(const basic_string&)): Ditto.
+ (append(const basic_string&, size_type, size_type)): Ditto.
+ (copy(_CharT*, size_type, size_type)): Ditto.
+ (compare(size_type, size_type, const basic_string&)): Ditto.
+ (compare(size_type, size_type, const basic_string&,size_type,
+ size_type)): Ditto.
+ (compare(size_type, size_type, const _CharT*)): Ditto.
+ (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
+
+2004-01-19 Stefan Olsson <stefan@snon.net>
+
+ * include/ext/mt_allocator.h: If a thread, when it dies, still has
+ memory on it's freelist this memory is not returned to global
+ list. Simplification of deallocate so that memory is always
+ returned to the calling thread id's freelist instead of to
+ global. Fix typos. Add volatile where appropriate.
+
+2004-01-19 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
+ * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but
+ use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
+
+2004-01-19 Paolo Carlini <pcarlini@suse.de>
+
+ * src/debug.cc: Make sure all the names are prefixed with
+ double (or single) underscore.
+
+2004-01-19 Paolo Carlini <pcarlini@suse.de>
+
+ * src/debug.cc: Trivial formatting change.
+
+2004-01-19 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (_S_construct(size_type,
+ _CharT, const _Alloc&)): Remove redundant try/catch.
+ (_M_mutate(size_type, size_type, size_type)): Ditto.
+ (_M_clone(const _Alloc&, size_type)): Ditto.
+
+2004-01-18 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (c_str()): Simplify, due to
+ 21.3.4 the internal representation is always kept null-terminated.
+ * include/bits/basic_string.tcc (_M_clone): Null-terminate.
+ * testsuite/21_strings/basic_string/element_access/char/4.cc: New.
+ * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
+ Ditto.
+
+2004-01-18 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.h (append(size_type, _CharT)):
+ Moved inline, just call _M_replace_aux, no source iterators at
+ risk of being clobbered.
+ (assign(size_type, _CharT)): Call directly _M_replace_aux.
+ (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
+ input_iterator_tag)): Remove fifth unused argument.
+ (_M_replace_dispatch(iterator, iterator, _InputIterator,
+ _InputIterator, __false_type)): Update call.
+ * include/bits/basic_string.tcc (replace(size_type, size_type,
+ const _CharT*, size_type)): Update call.
+ (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
+ throw string literal.
+ (_M_replace_safe(iterator, iterator, _ForwardIterator,
+ _ForwardIterator)): Likewise.
+ (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
+ input_iterator_tag)): Remove fifth unused argument.
+ (append(size_type __n, _CharT __c)): Move inline.
+ * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
+ const C*, const C*, input_iterator_tag)): Remove fifth unused
+ argument.
+
+2004-01-16 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
+ * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
-2003-03-04 Alexandre Oliva <aoliva@redhat.com>
+2004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
- * src/strstream.cc, include/bits/basic_string.tcc: Remove
- incorrect whitespace added in my previous change.
+ * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
+ mkfifo for mingw32.
-2003-03-05 Carlo Wood <carlo@alinoe.com>
+2004-01-15 Stefan Olsson <stefan@snon.net>
- * include/bits/ios_base.h(ios_base::Init::_S_initialized()): Added
- _S_initialized() in order to allow debugging libraries to detect
- when the std streams are initialized from an overloaded operator
- new.
+ * include/ext/mt_allocator.h: Reuse thread id's as soon as
+ possible by changing the behaviour of thread_freelist to do
+ push_front when threads die instead of push_back.
-2003-03-05 Benjamin Kosnik <bkoz@redhat.com>
+2004-01-14 Paolo Carlini <pcarlini@suse.de>
- * libsupc++/demangle.h: Move to..
- * include/bits/demangle.h: ...here.
- * src/demangle.cc: Adjust include.
- * include/Makefile.am (bits_headers): Add.
- * include/Makefile.in: Regenerate.
+ * include/bits/locale_facets.h (struct __numpunct_cache):
+ Add member _M_grouping_size, caching the length of _M_grouping.
+ (__numpunct_cache<>::_M_cache): Assign the latter.
+ (__verify_grouping): Move declaration...
+ * include/bits/locale_facets.tcc (__verify_grouping):
+ ... here, change signature to take a const char* and a size_t
+ for the grouping; not a template anymore.
+ (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
+ Likewise change signature and tweak consistently.
+ (num_get::_M_extract_float, num_get::_M_extract_int,
+ num_put::_M_insert_int, num_put::_M_insert_float,
+ money_get::do_get(string_type&), money_get::do_put(string_type)):
+ Update callers.
+ * config/locale/generic/numeric_members.cc
+ (numpunct<>::_M_initialize_numpunct): Assign the new member.
+ * config/locale/gnu/numeric_members.cc
+ (numpunct<>::_M_initialize_numpunct): Likewise.
+ * src/locale-inst.cc (__add_grouping): Tweak signature.
+ (__verify_grouping): Don't instantiate, not a template anymore.
-2003-03-04 Benjamin Kosnik <bkoz@redhat.com>
+ * include/bits/locale_facets.h: Rename _M_truename_len ->
+ _M_truename_size, _M_falsename_len -> _M_falsename_size.
+ * include/bits/locale_facets.tcc: Likewise.
+ * config/locale/generic/numeric_members.cc: Likewise.
+ * config/locale/gnu/numeric_members.cc: Likewise.
- * src/globals.cc: Clarify comments, remove c_locale_imp_compat.
+2004-01-14 Stefan Olsson <stefan@snon.net>
- * config/linker-map.gnu: Filter typeinfo and vtable info.
+ * include/ext/mt_allocator.h: Fixups.
+ * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
+ * testsuite/performance/allocator_thread.cc: Same.
-2003-03-04 Jerry Quinn <jlquinn@optonline.net>
+2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
- * src/ios.cc (ios_base::_M_grow_words): Don't delete _M_word on
- new failure. Throw exception if badbit and exception mask when ix
- >= numeric_limits<int>::max().
+ * testsuite/performance/ifstream_extract_float.cc: Add higher
+ precision tests.
+ * testsuite/performance/ofstream_insert_float.cc: Same.
-2003-03-04 Alexandre Oliva <aoliva@redhat.com>
+2004-01-13 Paolo Carlini <pcarlini@suse.de>
- * src/strstream.cc (strstreambuf::overflow): Make sure operands of
- min and max have the same type.
- * include/bits/basic_string.tcc (append, rfind, compare): Likewise.
+ * src/locale-misc-inst.cc (__convert_from_v(long),
+ __convert_from_v(unsigned long), __convert_from_v(long long),
+ __convert_from_v(unsigned long long)): Remove, unused.
-2003-03-04 Benjamin Kosnik <bkoz@redhat.com>
+2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
- * include/Makefile.am (allstamps): Remove stamp-std-precompile.
- * include/Makefile.in: Regenerate.
+ * testsuite/performance/ifstream_extract_float.cc: New.
+ * testsuite/performance/ofstream_insert_float.cc: Float generation
+ matches above.
-2003-03-03 Benjamin Kosnik <bkoz@redhat.com>
+ * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
+ * 20_util/auto_ptr/1.cc: ...this.
+ * 20_util/auto_ptr/2.cc: Same.
+ * 20_util/auto_ptr/3.cc: Same.
+ * 20_util/auto_ptr/3946.cc: Same.
+ * 20_util/auto_ptr/4.cc: Same.
+ * 20_util/auto_ptr/5.cc: Same.
+ * 20_util/auto_ptr/6.cc: Same.
+ * 20_util/auto_ptr/7.cc: Same.
+ * 20_util/auto_ptr/assign_neg.cc
+ * 20_util/pairs.cc: Break into...
+ * 20_util/pair/1.cc: ...this.
+ * 20_util/pair/2.cc: Same.
+ * 20_util/pair/3.cc: Same.
+ * 20_util/pair/4.cc: Same.
- * testsuite/abi_check.cc (report_symbol_info): Add version info.
+2004-01-13 Paolo Carlini <pcarlini@suse.de>
- * config/linker-map.gnu: Hide more stuff.
- * include/Makefile.am: Cleanups.
- * include/Makefile.in: Regenerate.
+ * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
+ Set correctly just basefield, the only group that matters.
-2003-02-27 Jerry Quinn <jlquinn@optonline.net>
+2004-01-13 Paolo Carlini <pcarlini@suse.de>
- * config/locale/generic/messages_members.h (messages::messages):
- Remove name from unused parameter.
+ * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
+ (_Rope_rep_base): Inherit directly from the rope allocator;
+ use rebinding instead of _Alloc_traits; pick up data member
+ from _Rope_rep_alloc_base.
+ (_Rope_alloc_base): Eliminate.
+ (_Rope_base): Inherit directly from the rope allocator; use
+ rebinding instead of _Alloc_traits; pick up data member from
+ _Rope_alloc_base.
+ (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
+ rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
-2003-02-27 Benjamin Kosnik <bkoz@redhat.com>
+2004-01-13 Paolo Carlini <pcarlini@suse.de>
- * src/Makefile.am (sources): Add demangle.cc.
- (demangle.o): Add.
- (demangle.lo): Add.
- * src/Makefile.in: Regenerate.
- * libsupc++/Makefile.am: Remove old __cxa_demangle bits.
- * libsupc++/Makefile.in: Regenerate.
+ PR libstdc++/13650
+ * include/bits/basic_string.tcc (compare(size_type, size_type,
+ const _CharT*, size_type)): Implement correctly the resolution
+ of DR 5: basically, s is a char array, -not- a C string.
+ * include/bits/basic_string.h: Tweak some comments.
+ * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
+ * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
- * testsuite/testsuite_hooks.h
- (__gnu_cxx_test::verify_demangle): New.
- * testsuite/testsuite_hooks.cc: Define.
-
-2003-02-27 Carlo Wood <carlo@alinoe.com>
-
- * src/demangle.cc: New.
- * libsupc++/demangle.h: New.
-
-2003-02-27 Benjamin Kosnik <bkoz@redhat.com>
- Carlo Wood <carlo@alinoe.com>
-
- * testsuite/demangle/abi_examples/01.cc: New.
- * testsuite/demangle/abi_examples/02.cc: New.
- * testsuite/demangle/abi_examples/03.cc: New.
- * testsuite/demangle/abi_examples/04.cc: New.
- * testsuite/demangle/abi_examples/05.cc: New.
- * testsuite/demangle/abi_examples/06.cc: New.
- * testsuite/demangle/abi_examples/07.cc: New.
- * testsuite/demangle/abi_examples/08.cc: New.
- * testsuite/demangle/abi_examples/09.cc: New.
- * testsuite/demangle/abi_examples/10.cc: New.
- * testsuite/demangle/abi_examples/11.cc: New.
- * testsuite/demangle/abi_examples/12.cc: New.
- * testsuite/demangle/abi_examples/13.cc: New.
- * testsuite/demangle/abi_examples/14.cc: New.
- * testsuite/demangle/abi_examples/15.cc: New.
- * testsuite/demangle/abi_examples/16.cc: New.
- * testsuite/demangle/abi_examples/17.cc: New.
- * testsuite/demangle/abi_examples/18.cc: New.
- * testsuite/demangle/abi_examples/19.cc: New.
- * testsuite/demangle/abi_examples/20.cc: New.
- * testsuite/demangle/abi_examples/21.cc: New.
- * testsuite/demangle/abi_examples/22.cc: New.
- * testsuite/demangle/abi_examples/23.cc: New.
- * testsuite/demangle/abi_examples/24.cc: New.
- * testsuite/demangle/abi_examples/25.cc: New.
- * testsuite/demangle/abi_examples/26.cc: New.
- * testsuite/demangle/abi_text/01.cc: New.
- * testsuite/demangle/abi_text/02.cc: New.
- * testsuite/demangle/abi_text/03.cc: New.
- * testsuite/demangle/abi_text/04.cc: New.
- * testsuite/demangle/abi_text/05.cc: New.
- * testsuite/demangle/abi_text/06.cc: New.
- * testsuite/demangle/abi_text/07.cc: New.
- * testsuite/demangle/abi_text/08.cc: New.
- * testsuite/demangle/abi_text/09.cc: New.
- * testsuite/demangle/abi_text/10.cc: New.
- * testsuite/demangle/abi_text/11.cc: New.
- * testsuite/demangle/abi_text/12.cc: New.
- * testsuite/demangle/abi_text/13.cc: New.
- * testsuite/demangle/abi_text/14.cc: New.
- * testsuite/demangle/regression/3111-1.cc: New.
- * testsuite/demangle/regression/3111-2.cc: New.
- * testsuite/demangle/regression/7986-01.cc: New.
- * testsuite/demangle/regression/7986-02.cc: New.
- * testsuite/demangle/regression/7986-03.cc: New.
- * testsuite/demangle/regression/7986-04.cc: New.
- * testsuite/demangle/regression/7986-05.cc: New.
- * testsuite/demangle/regression/7986-06.cc: New.
- * testsuite/demangle/regression/7986-07.cc: New.
- * testsuite/demangle/regression/7986-08.cc: New.
- * testsuite/demangle/regression/7986-09.cc: New.
- * testsuite/demangle/regression/7986-10.cc: New.
- * testsuite/demangle/regression/7986-11.cc: New.
- * testsuite/demangle/regression/7986-12.cc: New.
- * testsuite/demangle/regression/7986.cc: New.
- * testsuite/demangle/regression/8897.cc: New.
- * testsuite/demangle/regression/cw-01.cc: New.
- * testsuite/demangle/regression/cw-02.cc: New.
- * testsuite/demangle/regression/cw-03.cc: New.
- * testsuite/demangle/regression/cw-04.cc: New.
- * testsuite/demangle/regression/cw-05.cc: New.
- * testsuite/demangle/regression/cw-06.cc: New.
- * testsuite/demangle/regression/cw-07.cc: New.
- * testsuite/demangle/regression/cw-08.cc: New.
- * testsuite/demangle/regression/cw-09.cc: New.
- * testsuite/demangle/regression/cw-10.cc: New.
- * testsuite/demangle/regression/cw-11.cc: New.
- * testsuite/demangle/regression/cw-12.cc: New.
- * testsuite/demangle/regression/cw-13.cc: New.
- * testsuite/demangle/regression/cw-14.cc: New.
- * testsuite/demangle/regression/old.cc: New.
-
-2003-02-25 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/doxygen/Intro.3: Update with new (proper) names.
- * docs/doxygen/TODO: Update.
- * docs/doxygen/run_doxygen: More comments, fix up man pages.
- Fake entries for standard typedefs.
- * docs/doxygen/user.cfg.in: Turn INLINE_INHERITED_MEMB back on.
- * docs/html/documentation.html: Top-level man page is now called
- C++Intro.
- * include/std/std_limits.h: Doxygenate.
-
-2003-02-25 Scott Snyder <snyder@fnal.gov>
-
- PR libstdc++/9811
- * include/bits/stl_map.h (lower_bound, upper_bound, equal_range):
- Correct documentation.
- * include/bits/stl_multimap.h (lower_bound, upper_bound,
- equal_range): Likewise.
-
-2003-02-24 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9825
- * src/fstream.cc
- (basic_filebuf<char/wchar_t>::_M_underflow_common): When
- __bump is true (uflow), always increment the read pointer
- (_M_in_cur) before returning successfully.
- * testsuite/27_io/filebuf_virtuals.cc (test12): Add.
-
-2003-02-24 Paolo Carlini <pcarlini@unitus.it>
- Nathan Myers <ncm@cantrip.org>
-
- PR libstdc++/9404, PR libstdc++/9701 (partial)
- (aka pptr == epptr implies overflow)
- * include/bits/fstream.tcc (_M_allocate_internal_buffer):
- Consistently, _M_out_end points to the end of the buffer just
- created.
- (overflow): Tweak to use _M_out_buf_size().
- (_M_convert_to_external): The role of the old _M_out_end is
- now played by _M_out_lim.
- (_M_really_overflow): Likewise.
- (seekoff): Likewise.
- (setbuf): _M_out_end points to the end of the external buffer.
- * include/bits/sstream.tcc (overflow): Rewrote, taking into
- account the resolution of DR 169 (TC).
- (seekoff): Use _M_string.capacity(); ios_base::end is now _M_out_lim.
- (seekpos): Use _M_string.capacity(); tweak.
- * include/bits/streambuf.tcc (sputc, xsputn): Remove comments.
- * include/std/std_fstream.h (sync): The role of the old
- _M_out_end is now played by _M_out_lim.
- (_M_set_indeterminate): Use _M_set_determinate.
- (_M_set_determinate): _M_out_end is now _M_out_lim.
- (_M_is_indeterminate): Likewise.
- * include/std/std_sstream.h (str()): _M_out_end is now _M_out_lim.
- (_M_stringbuf_init): Don't set _M_buf_size, unused for sstreams,
- which have the information readily available as _M_string.capacity();
- for ate and app modes, pass the string size to _M_really_sync.
- (_M_really_sync): Consistently set _M_out_end and _M_out_lim, to
- point to the end of the buffer (i.e., epptr) and to the string end,
- respectively.
- * include/std/std_streambuf.h: tweak comments, add _M_out_lim,
- which points to the right limit of the used put area.
- (_M_out_cur_move): The role of the old _M_out_end is now played
- by _M_out_lim.
- (_M_out_buf_size): Simplify: now (when _M_out_cur) return simply
- _M_out_end - _M_out_cur (i.e., pptr), _very_ close to the letter
- of the standard.
- (basic_streambuf()): Initialize _M_out_lim too.
- * testsuite/27_io/filebuf_virtuals.cc (test10): Trivial tweak.
- * testsuite/27_io/filebuf_virtuals.cc (test11): Add.
- * testsuite/27_io/stringbuf_virtuals.cc (test09): Add.
-
-2003-02-24 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/27_io/ios_base_storage.cc (main): Call
- set_memory_limits.
-
-2003-02-21 Jerry Quinn <jlquinn@optonline.net>
-
- * include/bits/locale_facets.tcc (_M_convert_float): Replace
- numpunct facet accesses with data from __locale_cache.
-
-2003-02-20 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/html/faq/index.html (3.9): New note, wchar_t on FreeBSD.
- * docs/html/faq/index.txt: Regenerate.
-
-2003-02-20 Phil Edwards <pme@gcc.gnu.org>
-
- * config/linker-map.gnu: Also export locking symbols needed for the
- generic atomicity.h case.
-
-2003-02-20 Alexandre Oliva <aoliva@redhat.com>
-
- * configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
- config.status.
- * configure: Rebuilt.
-
-2003-02-19 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/sstream.tcc (overflow): According to
- 27.7.1.3, p5, actual output is performed by sputc(c).
-
-2003-02-19 Phil Edwards <pme@gcc.gnu.org>
-
- PR libstdc++/9582
- * include/bits/stl_alloc.h: Remove all traces of assert().
-
-2003-02-18 Paolo Carlini <pcarlini@unitus.it>
-
- * include/std/std_sstream.h (str()): the size of the
- current string may be different from the initial one
- whenever _M_out_end > _M_out_beg.
- * testsuite/27_io/stringbuf_members.cc (test07): Add.
-
-2003-02-18 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9582
- * include/bits/stl_alloc.h (__pool_alloc::allocate): Remove assert.
-
-2003-02-17 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/basic_ios.tcc (copyfmt): Copy locale data as well.
- * testsuite/27_io/ios_members.cc (test03): New.
-
-2003-02-17 Jerry Quinn <jlquinn@optonline.net>
-
- * include/bits/basic_ios.h (basic_ios::_M_cache_locale): Declare.
- (basic_ios::_M_cache_facets): Move into above.
- * include/bits/basic_ios.tcc (basic_ios::copyfmt): Rebuild locale
- cache.
- (basic_ios::imbue): Force locale cache to be built.
- (basic_ios::_M_init): Create and initialize locale cache.
- * include/bits/ios_base.h (__locale_cache_base): Declare.
- (ios_base::_M_locale_cache): New.
- (ios_base::_M_cache): Define.
- * include/bits/locale_facets.h: (__num_base): Fix comment. Add
- _S_end.
- (__locale_cache_base,__locale_cache<_CharT>): New classes.
- (__locale_cache<char>, __locale_cache<wchar_t>): New specializations.
- * include/bits/locale_facets.tcc (num_put::_M_convert_int): Use locale
- cache literal string, grouping flag, thousands separator.
- (__locale_cache<_CharT>::__locale_cache): New.
- (__locale_cache<_CharT>::_M_init): New.
- * src/ios.cc: Clear _M_locale_cache in constructor.
- * src/locale-inst.cc (__locale_cache<char>, __locale_cache<_char_t>):
- New.
-
-2003-02-17 Paolo Carlini <pcarlini@unitus.it>
-
- * src/locale-inst.cc: Do not include <cassert>.
- * src/locale.cc: Likewise.
+2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
-2003-02-17 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9580
- * include/std/std_fstream.h: Declare underflow and uflow
- specializations, change generic definitions to do nothing.
- * src/fstream.cc: Add underflow and uflow specializations.
-
-2003-02-17 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9169
- * include/bits/fstream.tcc (_M_convert_to_external):
- Deal correctly with noconv, as prescribed by 27.8.1.4,p8.
- * testsuite/27_io/filebuf_virtuals.cc (test10): Add.
-
-2003-02-13 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/c++config (_GLIBCPP_EXTERN_TEMPLATE): Define.
- * include/bits/basic_ios.tcc: Guard use of extern template.
- * include/std/std_iomanip.h: Same.
- * include/bits/streambuf.tcc: Same.
- * include/bits/stl_alloc.h: Same.
- * include/bits/locale_facets.tcc: Same.
- * include/bits/ostream.tcc: Same.
- * include/bits/istream.tcc: Same.
- * include/bits/fstream.tcc: Same.
- * include/bits/basic_string.tcc: Same.
-
-2003-02-13 Paolo Carlini <pcarlini@unitus.it>
-
- * include/bits/ostream.tcc (sentry::sentry): Improve
- performance-wise the fix for libstdc++/9563.
-
-2003-02-12 Phil Edwards <pme@gcc.gnu.org>
-
- * config/cpu/generic/atomicity.h (_Atomic_add_mutex): Fix declaration.
- (_GLIBCPP_NEED_GENERIC_MUTEX): Define for this file.
- (_Atomic_add_mutex_once, __gthread_atomic_add_mutex_once): Declare
- when we don't have static mutex initialization.
- (__exchange_and_add): Use _Atomic_add_mutex_once.
- * src/misc-inst.cc: Definitions of all the above.
-
-2003-02-12 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9563
- * include/bits/ostream.tcc (sentry::sentry): Check
- the state of the stream after the preparation.
- * testsuite/27_io/ostream_sentry.cc (test02): Add.
-
-2003-02-11 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/Makefile.am (stamp-std-precompile): Add rule.
- * include/Makefile.in: Regenerated.
-
-2003-02-11 Jerry Quinn <jlquinn@optonline.net>
- Benjamin Kosnik <benjamin@redhat.com>
-
- * include/bits/locale_facets.h (__num_base): Add _S_atoms_out.
- Add indexes into this array.
- (__num_base::_S_atoms): To _S_atoms_in.
- (num_put::_M_insert): Rename to _M_pad.
- (num_put::_M_convert_int): Adjust remove __mod, __modl arguments.
- (num_put::_M_widen_int): Rename to _M_group_int.
- (num_put::_M_widen_float): Rename to _M_group_float.
- * include/bits/locale_facets.tcc (__int_to_char): New inline
- function and adapter functions.
- (num_put::_M_group_int): Streamline.
- (num_put::_M_group_float): Streamline.
- (num_put::_M_convert_int): Remove unused parameter names. Choose
- large enough buffer for text. Use __int_to_char instead of
- __convert_from_v. Formatted text is now at the end of the buffer.
- (num_put::_M_convert_float): Preliminary fixups.
- * src/locale-inst.cc (__convert_from_v<long long>): Add ifdef.
- (__int_to_char<unsigned long long>): Same.
- (__int_to_char<char, unsigned long>): New.
- (__int_to_char<char, unsigned long long>): New.
- (__int_to_char<wchar_t, unsigned long>): New.
- (__int_to_char<wchar_t, unsigned long long>): New.
-
-2003-02-11 Scott Snyder <snyder@fnal.gov>
-
- PR libstdc++/9659
- * include/bits/fstream.tcc (seekoff): Avoid operator+
- for pos_type.
-
-2003-02-11 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9320
- * include/ext/stdio_filebuf.h
- (stdio_filebuf(int, std::ios_base::openmode, bool, int_type),
- stdio_filebuf(std::__c_file*, std::ios_base::openmode, int_type)):
- Change to take a __size parameter of type size_t, not
- of type (template parameter dependent) int_type.
- * src/ios.cc (ios_base::Init::_S_ios_create): Change type of
- size vars to size_t.
- * testsuite/ext/stdio_filebuf.cc: Add.
-
-2003-02-11 Paolo Carlini <pcarlini@unitus.it>
- Petur Runolfsson <peturr02@ru.is>
+ * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
+ Solaris.
- PR libstdc++/9318
- * include/bits/streambuf.tcc (__copy_streambufs):
- Don't conditionalize the copy to __testput.
- * testsuite/27_io/streambuf_members.cc (test09, test10): Add.
+2004-01-12 Paolo Carlini <pcarlini@suse.de>
-2002-02-11 DJ Delorie <dj@redhat.com>
+ * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
+ Use try_mkfifo.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
+ Likewise.
- * acinclude.m4: Check for native targets that can't link at
- this point in the build.
- * aclocal.m4: Regenerate.
- * configure: Regenerate.
+2004-01-12 Paolo Carlini <pcarlini@suse.de>
-2003-02-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * hppa/atomicity.h (__Atomicity_lock<__inst>::_S_atomicity_lock):
- Correct alignment.
- (__exchange_and_add, __atomic_add): Use PA 2.0 ordered store to reset
- lock.
-
-2003-02-07 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/27_io/filebuf_virtuals.cc (test08): Fix for
- unsigned char platforms.
-
-2003-02-06 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9562
- * include/std/std_istream.h
- (basic_istream::sentry::operator bool()): Make const.
- * include/std/std_ostream.h
- (basic_ostream::sentry::operator bool()): Likewise.
- * testsuite/27_io/istream_sentry.cc (test03): Add.
- * testsuite/27_io/ostream_sentry.cc: Add.
-
-2003-02-06 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9548
- Implement resolution of DR 231 (Ready)
- * include/bits/locale_facets.h (__num_base::_S_format_float):
- Change declaration: return void, remove __prec parameter.
- * src/locale.cc (__num_base::_S_format_float): Implement
- resolution of DR 231.
- * include/bits/locale_facets.tcc (num_put::_M_convert_float):
- Tweak uses. Check for negative precision.
- * testsuite/22_locale/num_put/put/char/6.cc: Add
- * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
-
-2003-02-06 Peter Soetens <peter.soetens@mech.kuleuven.ac.be>
-
- * config/io/basic_file_libio.h: Fixups.
- * config/io/c_io_libio.h: Same.
- * libio/Makefile.am: Same.
- * libio/Makefile.in: Regenerated.
-
-2003-02-06 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/22_locale/codecvt/encoding/wchar_t/1.cc (test01):
- Explicitly use the "C" locale.
- * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc (test01): Same.
-
-2003-02-06 Petur Runolfsson <peturr02@ru.is>
-
- DR 75
- DR 305
- PR libstdc++/9028 (partial)
- PR libstdc++/9224
- PR libstdc++/9246
- PR libstdc++/9247
-
- * src/codecvt.cc
- (codecvt<wchar_t, char, mbstate_t>::do_encoding,
- codecvt<wchar_t, char, mbstate_t>::do_length,
- codecvt<wchar_t, char, mbstate_t>::do_max_length):
- Move...
- * config/locale/generic/codecvt_members.cc: ...here.
- * config/locale/gnu/codecvt_members.cc: ...and here.
-
- * config/locale/generic/codecvt_members.cc,
- * config/locale/gnu/codecvt_members.cc
- (codecvt<wchar_t, char, mbstate_t>::do_encoding
- codecvt<wchar_t, char, mbstate_t>::do_in,
- codecvt<wchar_t, char, mbstate_t>::do_length,
- codecvt<wchar_t, char, mbstate_t>::do_max_length,
- codecvt<wchar_t, char, mbstate_t>::do_out):
- New implementation that handles stateless encodings,
- including UTF-8.
-
- * config/locale/generic/codecvt_members.cc,
- * config/locale/gnu/codecvt_members.cc,
- * config/locale/ieee_1003.1-2001/codecvt_specializations.h,
- * include/bits/codecvt.h,
- * src/codecvt.cc
- (codecvt::length, codecvt::do_length):
- Change type of first argument of length and do_length from
- 'const state_type&' to 'state_type&' according to DR 75.
-
- * testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Cleanup.
- * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: New test.
- * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: New test.
- * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: New test.
- * testsuite/22_locale/codecvt/encoding/wchar_t/1.cc:
- Cleanup and check for correct return value from encoding
- for "C" locale.
- * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: New test.
- * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: New test.
- * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: New test.
- * testsuite/22_locale/codecvt/in/wchar_t/1.cc: Cleanup.
- * testsuite/22_locale/codecvt/in/wchar_t/2.cc: New test.
- * testsuite/22_locale/codecvt/in/wchar_t/3.cc: New test.
- * testsuite/22_locale/codecvt/in/wchar_t/4.cc: New test.
- * testsuite/22_locale/codecvt/in/wchar_t/5.cc: New test.
- * testsuite/22_locale/codecvt/in/wchar_t/6.cc: New test.
- * testsuite/22_locale/codecvt/in/wchar_t/7.cc: New test.
- * testsuite/22_locale/codecvt/in/wchar_t/8.cc: New test.
- * testsuite/22_locale/codecvt/in/wchar_t/9.cc: New test.
- * testsuite/22_locale/codecvt/length/char/1.cc: Cleanup.
- * testsuite/22_locale/codecvt/length/char/2.cc: New test.
- * testsuite/22_locale/codecvt/length/wchar_t/1.cc: Cleanup.
- * testsuite/22_locale/codecvt/length/wchar_t/2.cc: New test.
- * testsuite/22_locale/codecvt/length/wchar_t/3.cc: New test.
- * testsuite/22_locale/codecvt/length/wchar_t/4.cc: New test.
- * testsuite/22_locale/codecvt/length/wchar_t/5.cc: New test.
- * testsuite/22_locale/codecvt/length/wchar_t/6.cc: New test.
- * testsuite/22_locale/codecvt/length/wchar_t/7.cc: New test.
- * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Cleanup.
- * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: New test.
- * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: New test.
- * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: New test.
- * testsuite/22_locale/codecvt/out/wchar_t/1.cc: Cleanup.
- * testsuite/22_locale/codecvt/out/wchar_t/2.cc: New test.
- * testsuite/22_locale/codecvt/out/wchar_t/3.cc: New test.
- * testsuite/22_locale/codecvt/out/wchar_t/4.cc: New test.
- * testsuite/22_locale/codecvt/out/wchar_t/5.cc: New test.
- * testsuite/22_locale/codecvt/out/wchar_t/6.cc: New test.
- * testsuite/22_locale/codecvt/out/wchar_t/7.cc: New test.
- * testsuite/22_locale/codecvt/unicode/1.cc: New test.
- * testsuite/22_locale/codecvt/unshift/wchar_t/1.cc: Cleanup.
- * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: New test.
- * testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: New test.
- * testsuite/22_locale/codecvt/unshfit/wchar_t/4.cc: New test.
-
-2003-02-05 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/locale_facets.tcc (time_put::do_put): Use __write.
- (money_put::do_put): Same.
-
-2003-02-05 Jerry Quinn <jlquinn@optonline.net>
-
- * include/bits/ios_base.h (ios_base): Document reserved storage.
-
- * include/bits/locale_facets.h: (struct __pad): Comment on
- implementation.
- (__verify_grouping): Same.
- (__add_grouping): Same.
- * include/bits/locale_facets.tcc (__verify_grouping): Move
- comments to declaration.
- (__add_grouping): Same.
-
- * include/bits/locale_facets.tcc:
- (__write<_CharT, _OutIter>): New function.
- (__write<_CharT>): New function specialization.
- (num_put::_M_insert): Remove explicit loop over iterator. Use
- __write.
- (num_put::_M_widen_float): Remove __basefield.
- (num_put::_M_widen_int): Move __basefield to within grouping block.
-
- * include/bits/streambuf_iterator.h: Include <streambuf>.
- (ostreambuf_iterator::_M_put): Add.
-
-2003-02-05 Paolo Carlini <pcarlini@unitus.it>
-
- * testsuite/26_numerics/valarray_name_lookup.cc: Fix typo.
-
-2003-02-04 Nathan Myers <ncm@cantrip.org>
-
- * testsuite/25_algorithms/min_max.cc (test02): Add.
-
-2003-02-04 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9439, PR libstdc++/9425
- * config/io/basic_file_stdio.cc
- (__basic_file<char>::seekoff, seekpos): Return -1L if
- fseek fails.
- * include/bits/fstream.tcc (basic_filebuf::seekoff):
- Check _M_file.seekoff return value; always return
- pos_type(off_type(-1)) in case of failure.
- (basic_filebuf::pbackfail): Check this->seekoff return
- value and return traits_type::eof() in case of failure.
- * testsuite/27_io/filebuf_virtuals.cc (test09): Add.
-
-2003-02-04 Jerry Quinn <jlquinn@optonline.net>
-
- * include/std/std_ostream.h (ostream::_M_write): Declare.
- * ostream.tcc (ostream::_M_write): Define.
- (basic_ostream::write): Use it.
- (operator<<(basic_ostream, _CharT)): Ditto.
- (operator<<(basic_ostream, char)): Ditto.
- (operator<<(basic_ostream, _CharT*)): Ditto.
- (operator<<(basic_ostream, char*)): Ditto.
- (operator<<(basic_ostream, basic_string)): Ditto.
-
-2003-02-04 Benjamin Kosnik <bkoz@redhat.com>
-
- * testsuite/26_numerics/valarray_name_lookup.cc: Fix.
-
-2002-02-04 Jonathan Wakely <redi@gcc.gnu.org>
-
- * docs/html/27_io/howto.html: Link to Dietmar Kuehl's IOStream page,
- add HTML comment about updating links if numbering changes.
-
-2003-02-04 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9538
- * include/bits/streambuf.tcc (sputbackc): Access
- this->gptr()[-1] only if _M_in_beg < _M_in_cur.
- * testsuite/27_io/filebuf_virtuals.cc (test08): Add.
-
-2003-02-04 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9507
- * include/bits/fstream.tcc (open): If the 'ate' repositioning
- operation fails, calls close _and_ returns a null pointer
- to indicate failure (27.8.1.3,4).
- * testsuite/27_io/filebuf_members.cc (test_06): Add.
+ * include/bits/locale_facets.h (struct __numpunct_cache):
+ Add members _M_truename_len and _M_falsename_len, caching
+ the lengths of _M_truename and _M_falsename.
+ (__numpunct_cache<>::_M_cache): Assign the latter.
+ * include/bits/locale_facets.tcc (num_get::do_get(bool&),
+ num_put::do_put(bool)): Use the new members, thus avoiding
+ computing string lengths again and again.
+ * config/locale/generic/numeric_members.cc
+ (numpunct<>::_M_initialize_numpunct): Assign the new members.
+ * config/locale/gnu/numeric_members.cc
+ (numpunct<>::_M_initialize_numpunct): Likewise.
-2003-02-04 Petur Runolfsson <peturr02@ru.is>
+2004-01-12 Mark Mitchell <mark@codesourcery.com>
- * testsuite/27_io/filebuf_members.cc (test_04): Remove exit(0).
+ * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
+ * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
+ it.
+ * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
+ and remove Cygwin XFAIL.
+ * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
+ Likewise.
+ * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
+ * testsuite/27_io/objects/char/7.cc: Likewise.
+ * testsuite/27_io/objects/char/9661-1.cc: Likewise.
+ * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
+ * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
-2002-02-04 Jonathan Wakely <redi@gcc.gnu.org>
+2004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
- * docs/html/27_io/howto.html: New section on stdio_filebuf.
- * docs/html/ext/howto.html: Move stdio_filebuf notes to 27_io.
- * docs/html/documentation.html: Regenerate.
+ * include/std/std_complex.h (std::complex<>::real): Return a
+ reference. Add non-const overload.
+ (std::complex<>::real): Likewise.
+ (std::real): Likewise.
+ (std::imag): Likewise.
+ (std::operator+): Tidy.
+ (std::operator-): Likewise.
+ (std::operator*): Likewise.
+ (std::operator/): Likewise.
+ (std::operator>>): Likewise.
-2003-02-04 Joseph S. Myers <jsm@polyomino.org.uk>
+2004-01-11 Paolo Carlini <pcarlini@suse.de>
- * docs/html/17_intro/porting.texi: Update to GFDL 1.2.
- * docs/html/17_intro/porting.html: Regenerate.
+ PR libstdc++/13582
+ * include/bits/fstream.tcc (imbue): Exploit the external
+ buffer to imbue 'on the fly' a new locale and convert its
+ remainder with the new codecvt facet.
+ (underflow): Tweak slightly to deal with this special case.
+ * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
+ * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
+ * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
-2003-02-03 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
- Phil Edwards <pme@gcc.gnu.org>
+2004-01-10 Paolo Carlini <pcarlini@suse.de>
- * include/std/std_bitset.h: Replace CHAR_BIT with __CHAR_BIT__, use
- numeric_limits for bits-per-word values.
- (_Base_bitset::_M_do_count, _Base_bitset<1>::_M_do_count):
- Use __builtin_popcountl instead.
- (_Base_bitset::_M_do_find_first, _Base_bitset::_M_do_find_next,
- _Base_bitset<1>::_M_do_find_first, _Base_bitset<1>::_M_do_find_next):
- Use __builtin_ctzl instead.
- (_S_bit_count, _S_first_one): Remove.
- * config/linker-map.gnu (GLIBCPP_3.4): Remove std::_S_bit_count.
- * src/Makefile.am (sources): Remove bitset.cc.
- * src/bitset.cc: Delete file.
- * src/Makefile.in: Regenerate.
+ * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
+ Import Revision 28.
-2003-02-03 Phil Edwards <pme@gcc.gnu.org>
+2004-01-10 Paolo Carlini <pcarlini@suse.de>
- PR libstdc++/9527, PR libstdc++/8713
- * docs/html/install.html: Mention glibc version requirement.
- * docs/html/faq/index.html (3.8): New note, glibc 2.2.5+ is needed
- with 3.2.1+ (formatting bugfixes).
- * docs/html/faq/index.txt: Regenerate.
+ PR libstdc++/13630
+ * include/bits/locale_classes.h (class locale): Fix category
+ typedef.
+ * testsuite/22_locale/locale/13630.cc: Add.
-2003-02-03 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+2004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
- PR libstdc++/9234
- * include/bits/valarray_before.h (_UnBase::operator[]): Apply unary
- operator.
+ * include/bits/locale_facets.h: Make a name really dependent. This
+ will be needed when Core Issue 224 is implemented.
- * include/bits/valarray_before.h (__not_equal_to): Use != instead
- of ==.
+2004-01-09 Paolo Carlini <pcarlini@suse.de>
- * testsuite/26_numerics/valarray_operators.cc: New test.
+ * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
+ * testsuite/performance/allocator_thread.cc: Likewise.
-2003-02-01 Phil Edwards <pme@gcc.gnu.org>
+2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
- * docs/html/faq/index.html: Correct link to libg++ information.
- * docs/html/faq/index.txt: Regenerated.
+ * crossconfig.m4: Add LFS, io bits to linux cross config.
+ * acconfig.h: Remove obsolete bits, reorder.
+ * config.h.in: Regenerate.
+ * aclocal.m4: Same.
+ * configure: Same.
-2003-02-01 Paolo Carlini <pcarlini@unitus.it>
- Benjamin Kosnik <bkoz@redhat.com>
+2004-01-07 Gawain Bolton <gp.bolton@computer.org>
- Const correctness issue:
- http://gcc.gnu.org/ml/libstdc++/2003-01/msg00370.html
- * include/bits/locale_classes.h
- (locale::_Impl::_M_facets): Change type to const facet**.
- (locale::_Impl::_M_install_facet): Change declaration to
- take const facet*.
- (locale::facet::_M_references): Make mutable.
- (locale::facet::_M_add_reference): Declare const.
- (locale::facet::_M_remove_reference): Likewise.
- * include/bits/locale_facets.tcc
- (use_facet(const locale&)): Tweak for const facet** _M_facets.
- (has_facet(const locale&)): Likewise.
- * src/locale.cc
- (locale::facet::_M_add_reference): Adjust definition.
- (locale::facet::_M_remove_reference): Likewise.
- * src/localename.cc
- (locale::_Impl::_Impl(const _Impl&, size_t)): Tweak for
- const facet** _M_facets.
- (locale::_Impl::_Impl(const char*, size_t)): Likewise.
- (locale::_Impl::_Impl(facet**, size_t, bool)): Likewise.
- (locale::_Impl::_M_install_facet): Adjust definition to take
- const facet* and for const facet** _M_facets.
- * testsuite/22_locale/locale/cons/8.cc: Add.
-
-2003-01-29 Mark Mitchell <mark@codesourcery.com>
-
- * include/std/std_limits.h (numeric_limits<float>::has_infinity):
- Use __FLT_HAS_INIFINITY__ to initialize.
- (numeric_limits<float>::has_quiet_NaN): Likewise.
- (numeric_limits<double>::has_infinity): Use __DBL_HAS_INIFINITY__
- to initialize.
- (numeric_limits<double>::has_quiet_NaN): Likewise.
- (numeric_limits<long double>::has_infinity): Use
- __LDBL_HAS_INIFINITY__ to initialize.
- (numeric_limits<long_double>::has_quiet_NaN): Likewise.
-
-2003-01-28 Nathan Sidwell <nathan@codesourcery.com>
-
- PR c++/9433
- * libsupc++/tinfo.cc (__vmi_class_type_info::__do_dyncast): Cope
- with bases which are very ambiguous.
-
-2003-01-28 Danny Smith <dannysmith@users.sourceforge.net>
-
- * src/Makefile.am (CONFIG_CXXFLAGS): Reverse order of
- @EXTRA_CXX_FLAGS@ @SECTION_FLAGS@.
- * libsupc++/Makefile.am (CONFIG_CXXFLAGS): Likewise.
- * src/Makefile.in: Regenerate.
- * libsupc++/Makefile.in: Regenerate.
+ * include/bits/stl_list.h:
+ * include/bits/list.tc:
+ * src/list.cc:
+ Performance enhancements for destructor, push_front(),
+ push_back(), pop_front(), pop_back(), sort()
+ Eliminated static_casts where possible.
+ Moved code out of header files into new src/list.cc
+ implementation file for library where possible.
+ Remove inheritance from iterator class and create separate
+ classes for non-constant and constant iterators.
+ * include/bits/stl_tree.h (_Rb_tree class):
+ * src/tree.cc:
+ Only erase contents in destructor.
+ Eliminate unnecessary initialization in assignment operator.
+ Optimize for the nominal case by not checking whether
+ container is empty in clear().
+ Re-order test in _M_insert() to improve performance.
+ Move initialization of new node's left & right pointers to
+ src/tree.cc to where new node's colour is initialized
+ and to reduce the amount of inline code.
+ Use _M_leftmost() and _M_end() to improve readability where
+ appropriate.
+ Create separate classes for non-constant and constant
+ iterators to clarify code, avoid extra template parameters and
+ casting away constness.
-2003-01-27 Alexandre Oliva <aoliva@redhat.com>
+2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
- * acinclude.m4 (glibcpp_toolexeclibdir): Instead of
- $(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
- version_specific_libs is enabled.
- * aclocal.m4, configure: Rebuilt.
+ * src/Makefile.am (sources): Add list.cc, tree.cc.
+ * src/stl_tree.cc: Move to...
+ * src/tree.cc: ...here.
+ * src/list.cc: Add.
+ * config/linker-map.gnu: Tweaks.
+ * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
+ * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
-2003-01-24 Nathan Sidwell <nathan@codesourcery.com>
+ * bits/stl_vector.h: Column wrap comments.
- * include/bits/valarray_meta.h: Remove, split into ...
- * include/bits/valarray_before.h: ... this, and ...
- * include/bits/valarray_after.h: ... this.
- * include/std/std_valarray.h: Adjust.
- * include/Makefile.am (bits_headers): Adjust.
- * include/Makefile.in: Regenerate.
+2004-01-07 Loren J. Rittle <ljrittle@acm.org>
-2003-01-24 Andreas Schwab <schwab@suse.de>
-
- * config/linker-map.gnu: Fix for size_t variance.
-
-2003-01-23 Petur Runolfsson <peturr02@ru.is>
-
- PR libstdc++/9322
- * include/std/std_streambuf.h
- (basic_streambuf::basic_streambuf,
- basic_streambuf::~basic_streambuf,
- basic_streambuf::getloc, basic_streambuf::imbue):
- Remove _M_buf_locale_init
- * include/bits/fstream.tcc (basic_filebuf::imbue): Likewise
- * testsuite/27_io/filebuf_virtuals.cc (test08): Add.
- * testsuite/27_io/streambuf_members.cc (test08): Add.
- * testsuite/27_io/stringbuf_virtuals.cc (test08): Add.
-
-2003-01-23 Benjamin Kosnik <bkoz@redhat.com>
-
- Revert include ordering.
- * config/locale/generic/c_locale.h: Add include guards.
- * config/locale/gnu/c_locale.h: Same.
- * include/bits/locale_classes.h: Remove cctype include.
- * include/std/std_iosfwd.h: Add c++locale.h, cctype includes.
- * include/std/std_fstream.h: Remove streambuf include.
- * include/std/std_sstream.h: Remove streambuf include.
-
-2003-01-23 Benjamin Kosnik <bkoz@redhat.com>
-
- * configure.in (libtool_VERSION): To 6:0:0.
- * configure: Regenerated.
- * config/linker-map.gnu: Clean.
-
- * src/misc-inst.cc: Remove instantiations.
-
- * include/bits/stl_alloc.h (__malloc_alloc_template):
- To __malloc_alloc.
- (__default_alloc_template): To __pool_alloc.
- * src/stl-inst.cc: Same.
- * include/backward/alloc.h: Update.
- * testsuite/ext/allocators.cc: Update.
-
- * src/globals.cc (__gnu_cxx): Remove _GLIBCPP_ASM_SYMVER. Should
- really try to remove these if possible.
- * src/locale.cc (std): Same.
-
- * testsuite/abi_check.cc (check_version): Add.
-
-2003-01-22 Benjamin Kosnik <bkoz@redhat.com>
- Sysoltsev Slawa <Vyatcheslav.Sysoltsev@intel.com>
- Mark Mitchell <mark@codesourcery.com>
-
- PR libstdc++/9269
- * include/std/std_fstream.h (basic_filebuf::uflow): Declare.
- (basic_filebuf::underflow): Declare.
- Move definitions.
-
-2003-01-22 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/locale_facets.h: Move non-facet classes requiring
- <string> to...
- * include/bits/locale_classes.h: New.
- * include/bits/Makefile.am (bits_headers_src): Add locale_classes.h.
- * include/bits/Makefile.in: Regenerate.
-
- * include/bits/locale_facets.tcc (__convert_from_v): Move to...
- * config/locale/gnu/c_locale.h: ...here.
- * config/locale/generic/c_locale.h: Same.
-
- * include/bits/locale_facets.tcc: Move declarations to...
- * include/bits/locale_facets.h: ...here.
- * include/bits/basic_ios.h: Tweak includes accordingly.
- * include/std/std_sstream.h: Add streambuf include.
- * include/std/std_fstream.h: Ditto.
- * include/std/std_locale.h: Add locale_classes.h include.
- * include/std/std_iosfwd.h: Tweak.
- * src/concept-inst.cc: Add iterator include.
-
- * config/linker-map.gnu: Specify __cxa functions, mark __cxa_dyn_*
- bits as unexported in the future.
-
-2003-01-21 Benjamin Kosnik <bkoz@redhat.com>
-
- Reshuffle 22_locale testsuite.
- * 22_locale/(codecvt.cc money_get.cc
- codecvt_members_char_char.cc money_get_members_char.cc
- codecvt_members_unicode_char.cc money_get_members_wchar_t.cc
- codecvt_members_unicode_wchar_t.cc moneypunct_byname.cc
- codecvt_members_wchar_t_char.cc moneypunct.cc collate_byname.cc
- moneypunct_members_char.cc collate.cc moneypunct_members_wchar_t.cc
- collate_members_char.cc money_put.cc collate_members_wchar_t.cc
- money_put_members_char.cc ctor_copy_dtor.cc
- money_put_members_wchar_t.cc ctype.cc num_get.cc ctype_is_char.cc
- num_get_members_char.cc ctype_is_wchar_t.cc num_get_members_wchar_t.cc
- ctype_members_char.cc numpunct_byname.cc ctype_members_wchar_t.cc
- numpunct.cc ctype_narrow_char.cc numpunct_members_char.cc
- ctype_narrow_wchar_t.cc numpunct_members_wchar_t.cc ctype_scan_char.cc
- num_put.cc ctype_scan_wchar_t.cc num_put_members_char.cc
- ctype_to_char.cc num_put_members_wchar_t.cc ctype_to_wchar_t.cc
- operators.cc ctype_widen_char.cc static_members.cc
- ctype_widen_wchar_t.cc time_get.cc facet.cc time_get_members_char.cc
- global_templates.cc time_get_members_wchar_t.cc, members.cc,
- time_put.cc, messages_byname.cc, time_put_members_char.cc,
- messages.cc, time_put_members_wchar_t.cc, messages_members_char.cc):
- Split up into individual test cases...
- * 22_locale/codecvt/1.cc: New.
- * 22_locale/codecvt/2.cc: New.
- * 22_locale/codecvt/always_noconv/char/1.cc: New.
- * 22_locale/codecvt/always_noconv/char/wrapped_env.cc: New.
- * 22_locale/codecvt/always_noconv/char/wrapped_locale.cc: New.
- * 22_locale/codecvt/always_noconv/wchar_t/1.cc: New.
- * 22_locale/codecvt/always_noconv/wchar_t/wrapped_env.cc: New.
- * 22_locale/codecvt/always_noconv/wchar_t/wrapped_locale.cc: New.
- * 22_locale/codecvt/encoding/char/1.cc: New.
- * 22_locale/codecvt/encoding/char/wrapped_env.cc: New.
- * 22_locale/codecvt/encoding/char/wrapped_locale.cc: New.
- * 22_locale/codecvt/encoding/wchar_t/1.cc: New.
- * 22_locale/codecvt/encoding/wchar_t/wrapped_env.cc: New.
- * 22_locale/codecvt/encoding/wchar_t/wrapped_locale.cc: New.
- * 22_locale/codecvt/in/char/1.cc: New.
- * 22_locale/codecvt/in/char/wrapped_env.cc: New.
- * 22_locale/codecvt/in/char/wrapped_locale.cc: New.
- * 22_locale/codecvt/in/wchar_t/1.cc: New.
- * 22_locale/codecvt/in/wchar_t/wrapped_env.cc: New.
- * 22_locale/codecvt/in/wchar_t/wrapped_locale.cc: New.
- * 22_locale/codecvt/length/char/1.cc: New.
- * 22_locale/codecvt/length/char/wrapped_env.cc: New.
- * 22_locale/codecvt/length/char/wrapped_locale.cc: New.
- * 22_locale/codecvt/length/wchar_t/1.cc: New.
- * 22_locale/codecvt/length/wchar_t/wrapped_env.cc: New.
- * 22_locale/codecvt/length/wchar_t/wrapped_locale.cc: New.
- * 22_locale/codecvt/max_length/char/1.cc: New.
- * 22_locale/codecvt/max_length/char/wrapped_env.cc: New.
- * 22_locale/codecvt/max_length/char/wrapped_locale.cc: New.
- * 22_locale/codecvt/max_length/wchar_t/1.cc: New.
- * 22_locale/codecvt/max_length/wchar_t/wrapped_env.cc: New.
- * 22_locale/codecvt/max_length/wchar_t/wrapped_locale.cc: New.
- * 22_locale/codecvt/out/char/1.cc: New.
- * 22_locale/codecvt/out/char/wrapped_env.cc: New.
- * 22_locale/codecvt/out/char/wrapped_locale.cc: New.
- * 22_locale/codecvt/out/wchar_t/1.cc: New.
- * 22_locale/codecvt/out/wchar_t/wrapped_env.cc: New.
- * 22_locale/codecvt/out/wchar_t/wrapped_locale.cc: New.
- * 22_locale/codecvt/unicode/char.cc: New.
- * 22_locale/codecvt/unicode/wchar_t.cc: New.
- * 22_locale/codecvt/unshift/char/1.cc: New.
- * 22_locale/codecvt/unshift/char/wrapped_env.cc: New.
- * 22_locale/codecvt/unshift/char/wrapped_locale.cc: New.
- * 22_locale/codecvt/unshift/wchar_t/1.cc: New.
- * 22_locale/codecvt/unshift/wchar_t/wrapped_env.cc: New.
- * 22_locale/codecvt/unshift/wchar_t/wrapped_locale.cc: New.
- * 22_locale/collate/1.cc: New.
- * 22_locale/collate/2.cc: New.
- * 22_locale/collate/compare/char/1.cc: New.
- * 22_locale/collate/compare/char/2.cc: New.
- * 22_locale/collate/compare/char/wrapped_env.cc: New.
- * 22_locale/collate/compare/char/wrapped_locale.cc: New.
- * 22_locale/collate/compare/wchar_t/1.cc: New.
- * 22_locale/collate/compare/wchar_t/2.cc: New.
- * 22_locale/collate/compare/wchar_t/wrapped_env.cc: New.
- * 22_locale/collate/compare/wchar_t/wrapped_locale.cc: New.
- * 22_locale/collate/hash/char/1.cc: New.
- * 22_locale/collate/hash/char/2.cc: New.
- * 22_locale/collate/hash/char/wrapped_env.cc: New.
- * 22_locale/collate/hash/char/wrapped_locale.cc: New.
- * 22_locale/collate/hash/wchar_t/1.cc: New.
- * 22_locale/collate/hash/wchar_t/2.cc: New.
- * 22_locale/collate/hash/wchar_t/wrapped_env.cc: New.
- * 22_locale/collate/hash/wchar_t/wrapped_locale.cc: New.
- * 22_locale/collate/transform/char/2.cc: New.
- * 22_locale/collate/transform/char/wrapped_env.cc: New.
- * 22_locale/collate/transform/char/wrapped_locale.cc: New.
- * 22_locale/collate/transform/wchar_t/2.cc: New.
- * 22_locale/collate/transform/wchar_t/wrapped_env.cc: New.
- * 22_locale/collate/transform/wchar_t/wrapped_locale.cc: New.
- * 22_locale/collate_byname/1.cc: New.
- * 22_locale/ctype/1.cc: New.
- * 22_locale/ctype/2.cc: New.
- * 22_locale/ctype/cons/char/1.cc: New.
- * 22_locale/ctype/cons/char/wrapped_env.cc: New.
- * 22_locale/ctype/cons/char/wrapped_locale.cc: New.
- * 22_locale/ctype/is/char/1.cc: New.
- * 22_locale/ctype/is/char/2.cc: New.
- * 22_locale/ctype/is/char/3.cc: New.
- * 22_locale/ctype/is/char/wrapped_env.cc: New.
- * 22_locale/ctype/is/char/wrapped_locale.cc: New.
- * 22_locale/ctype/is/wchar_t/1.cc: New.
- * 22_locale/ctype/is/wchar_t/2.cc: New.
- * 22_locale/ctype/is/wchar_t/wrapped_env.cc: New.
- * 22_locale/ctype/is/wchar_t/wrapped_locale.cc: New.
- * 22_locale/ctype/narrow/char/1.cc: New.
- * 22_locale/ctype/narrow/char/2.cc: New.
- * 22_locale/ctype/narrow/char/wrapped_env.cc: New.
- * 22_locale/ctype/narrow/char/wrapped_locale.cc: New.
- * 22_locale/ctype/narrow/wchar_t/1.cc: New.
- * 22_locale/ctype/narrow/wchar_t/2.cc: New.
- * 22_locale/ctype/narrow/wchar_t/wrapped_env.cc: New.
- * 22_locale/ctype/narrow/wchar_t/wrapped_locale.cc: New.
- * 22_locale/ctype/scan/char/1.cc: New.
- * 22_locale/ctype/scan/char/wrapped_env.cc: New.
- * 22_locale/ctype/scan/char/wrapped_locale.cc: New.
- * 22_locale/ctype/scan/wchar_t/1.cc: New.
- * 22_locale/ctype/scan/wchar_t/wrapped_env.cc: New.
- * 22_locale/ctype/scan/wchar_t/wrapped_locale.cc: New.
- * 22_locale/ctype/to/char/1.cc: New.
- * 22_locale/ctype/to/char/wrapped_env.cc: New.
- * 22_locale/ctype/to/char/wrapped_locale.cc: New.
- * 22_locale/ctype/to/wchar_t/1.cc: New.
- * 22_locale/ctype/to/wchar_t/wrapped_env.cc: New.
- * 22_locale/ctype/to/wchar_t/wrapped_locale.cc: New.
- * 22_locale/ctype/widen/char/1.cc: New.
- * 22_locale/ctype/widen/char/wrapped_env.cc: New.
- * 22_locale/ctype/widen/char/wrapped_locale.cc: New.
- * 22_locale/ctype/widen/wchar_t/1.cc: New.
- * 22_locale/ctype/widen/wchar_t/wrapped_env.cc: New.
- * 22_locale/ctype/widen/wchar_t/wrapped_locale.cc: New.
- * 22_locale/facet/1.cc: New.
- * 22_locale/facet/2.cc: New.
- * 22_locale/global_templates/1.cc: New.
- * 22_locale/locale/cons/1.cc: New.
- * 22_locale/locale/cons/2.cc: New.
- * 22_locale/locale/cons/3.cc: New.
- * 22_locale/locale/cons/4.cc: New.
- * 22_locale/locale/cons/5.cc: New.
- * 22_locale/locale/cons/6.cc: New.
- * 22_locale/locale/cons/7.cc: New.
- * 22_locale/locale/global_locale_objects/1.cc: New.
- * 22_locale/locale/global_locale_objects/2.cc: New.
- * 22_locale/locale/global_locale_objects/3.cc: New.
- * 22_locale/locale/operations/1.cc: New.
- * 22_locale/locale/operations/2.cc: New.
- * 22_locale/messages/1.cc: New.
- * 22_locale/messages/2.cc: New.
- * 22_locale/messages/members/char/1.cc: New.
- * 22_locale/messages/members/char/2.cc: New.
- * 22_locale/messages/members/char/3.cc: New.
- * 22_locale/messages/members/char/wrapped_env.cc: New.
- * 22_locale/messages/members/char/wrapped_locale.cc: New.
- * 22_locale/messages_byname/1.cc: New.
- * 22_locale/money_get/1.cc: New.
- * 22_locale/money_get/2.cc: New.
- * 22_locale/money_get/get/char/1.cc: New.
- * 22_locale/money_get/get/char/2.cc: New.
- * 22_locale/money_get/get/char/3.cc: New.
- * 22_locale/money_get/get/char/4.cc: New.
- * 22_locale/money_get/get/char/5.cc: New.
- * 22_locale/money_get/get/char/6.cc: New.
- * 22_locale/money_get/get/char/7.cc: New.
- * 22_locale/money_get/get/char/8.cc: New.
- * 22_locale/money_get/get/char/wrapped_env.cc: New.
- * 22_locale/money_get/get/char/wrapped_locale.cc: New.
- * 22_locale/money_get/get/wchar_t/1.cc: New.
- * 22_locale/money_get/get/wchar_t/2.cc: New.
- * 22_locale/money_get/get/wchar_t/3.cc: New.
- * 22_locale/money_get/get/wchar_t/4.cc: New.
- * 22_locale/money_get/get/wchar_t/5.cc: New.
- * 22_locale/money_get/get/wchar_t/6.cc: New.
- * 22_locale/money_get/get/wchar_t/7.cc: New.
- * 22_locale/money_get/get/wchar_t/8.cc: New.
- * 22_locale/money_get/get/wchar_t/wrapped_env.cc: New.
- * 22_locale/money_get/get/wchar_t/wrapped_locale.cc: New.
- * 22_locale/money_put/1.cc: New.
- * 22_locale/money_put/2.cc: New.
- * 22_locale/money_put/put/char/1.cc: New.
- * 22_locale/money_put/put/char/2.cc: New.
- * 22_locale/money_put/put/char/3.cc: New.
- * 22_locale/money_put/put/char/4.cc: New.
- * 22_locale/money_put/put/char/5.cc: New.
- * 22_locale/money_put/put/char/6.cc: New.
- * 22_locale/money_put/put/char/wrapped_env.cc: New.
- * 22_locale/money_put/put/char/wrapped_locale.cc: New.
- * 22_locale/money_put/put/wchar_t/1.cc: New.
- * 22_locale/money_put/put/wchar_t/2.cc: New.
- * 22_locale/money_put/put/wchar_t/3.cc: New.
- * 22_locale/money_put/put/wchar_t/4.cc: New.
- * 22_locale/money_put/put/wchar_t/5.cc: New.
- * 22_locale/money_put/put/wchar_t/6.cc: New.
- * 22_locale/money_put/put/wchar_t/wrapped_env.cc: New.
- * 22_locale/money_put/put/wchar_t/wrapped_locale.cc: New.
- * 22_locale/moneypunct/1.cc: New.
- * 22_locale/moneypunct/2.cc: New.
- * 22_locale/moneypunct/3.cc: New.
- * 22_locale/moneypunct/members/char/1.cc: New.
- * 22_locale/moneypunct/members/char/2.cc: New.
- * 22_locale/moneypunct/members/char/wrapped_env.cc: New.
- * 22_locale/moneypunct/members/char/wrapped_locale.cc: New.
- * 22_locale/moneypunct/members/wchar_t/1.cc: New.
- * 22_locale/moneypunct/members/wchar_t/2.cc: New.
- * 22_locale/moneypunct/members/wchar_t/wrapped_env.cc: New.
- * 22_locale/moneypunct/members/wchar_t/wrapped_locale.cc: New.
- * 22_locale/moneypunct_byname/1.cc: New.
- * 22_locale/num_get/1.cc: New.
- * 22_locale/num_get/2.cc: New.
- * 22_locale/num_get/get/char/1.cc: New.
- * 22_locale/num_get/get/char/2.cc: New.
- * 22_locale/num_get/get/char/3.cc: New.
- * 22_locale/num_get/get/char/4.cc: New.
- * 22_locale/num_get/get/char/5.cc: New.
- * 22_locale/num_get/get/char/6.cc: New.
- * 22_locale/num_get/get/char/wrapped_env.cc: New.
- * 22_locale/num_get/get/char/wrapped_locale.cc: New.
- * 22_locale/num_get/get/wchar_t/1.cc: New.
- * 22_locale/num_get/get/wchar_t/2.cc: New.
- * 22_locale/num_get/get/wchar_t/3.cc: New.
- * 22_locale/num_get/get/wchar_t/4.cc: New.
- * 22_locale/num_get/get/wchar_t/5.cc: New.
- * 22_locale/num_get/get/wchar_t/6.cc: New.
- * 22_locale/num_get/get/wchar_t/wrapped_env.cc: New.
- * 22_locale/num_get/get/wchar_t/wrapped_locale.cc: New.
- * 22_locale/num_put/1.cc: New.
- * 22_locale/num_put/2.cc: New.
- * 22_locale/num_put/put/char/1.cc: New.
- * 22_locale/num_put/put/char/2.cc: New.
- * 22_locale/num_put/put/char/3.cc: New.
- * 22_locale/num_put/put/char/4.cc: New.
- * 22_locale/num_put/put/char/5.cc: New.
- * 22_locale/num_put/put/char/wrapped_env.cc: New.
- * 22_locale/num_put/put/char/wrapped_locale.cc: New.
- * 22_locale/num_put/put/wchar_t/1.cc: New.
- * 22_locale/num_put/put/wchar_t/2.cc: New.
- * 22_locale/num_put/put/wchar_t/3.cc: New.
- * 22_locale/num_put/put/wchar_t/4.cc: New.
- * 22_locale/num_put/put/wchar_t/5.cc: New.
- * 22_locale/num_put/put/wchar_t/wrapped_env.cc: New.
- * 22_locale/num_put/put/wchar_t/wrapped_locale.cc: New.
- * 22_locale/numpunct/1.cc: New.
- * 22_locale/numpunct/2.cc: New.
- * 22_locale/numpunct/members/char/1.cc: New.
- * 22_locale/numpunct/members/char/2.cc: New.
- * 22_locale/numpunct/members/char/wrapped_env.cc: New.
- * 22_locale/numpunct/members/char/wrapped_locale.cc: New.
- * 22_locale/numpunct/members/wchar_t/1.cc: New.
- * 22_locale/numpunct/members/wchar_t/2.cc: New.
- * 22_locale/numpunct/members/wchar_t/wrapped_env.cc: New.
- * 22_locale/numpunct/members/wchar_t/wrapped_locale.cc: New.
- * 22_locale/numpunct_byname/1.cc: New.
- * 22_locale/numpunct_byname/2.cc: New.
- * 22_locale/time_get/1.cc: New.
- * 22_locale/time_get/2.cc: New.
- * 22_locale/time_get/date_order/char/1.cc: New.
- * 22_locale/time_get/date_order/char/wrapped_env.cc: New.
- * 22_locale/time_get/date_order/char/wrapped_locale.cc: New.
- * 22_locale/time_get/date_order/wchar_t/1.cc: New.
- * 22_locale/time_get/date_order/wchar_t/wrapped_env.cc: New.
- * 22_locale/time_get/date_order/wchar_t/wrapped_locale.cc: New.
- * 22_locale/time_get/get_date/char/1.cc: New.
- * 22_locale/time_get/get_date/char/2.cc: New.
- * 22_locale/time_get/get_date/char/3.cc: New.
- * 22_locale/time_get/get_date/char/wrapped_env.cc: New.
- * 22_locale/time_get/get_date/char/wrapped_locale.cc: New.
- * 22_locale/time_get/get_date/wchar_t/1.cc: New.
- * 22_locale/time_get/get_date/wchar_t/2.cc: New.
- * 22_locale/time_get/get_date/wchar_t/3.cc: New.
- * 22_locale/time_get/get_date/wchar_t/wrapped_env.cc: New.
- * 22_locale/time_get/get_date/wchar_t/wrapped_locale.cc: New.
- * 22_locale/time_get/get_monthname/char/1.cc: New.
- * 22_locale/time_get/get_monthname/char/2.cc: New.
- * 22_locale/time_get/get_monthname/char/3.cc: New.
- * 22_locale/time_get/get_monthname/char/wrapped_env.cc: New.
- * 22_locale/time_get/get_monthname/char/wrapped_locale.cc: New.
- * 22_locale/time_get/get_monthname/wchar_t/1.cc: New.
- * 22_locale/time_get/get_monthname/wchar_t/2.cc: New.
- * 22_locale/time_get/get_monthname/wchar_t/3.cc: New.
- * 22_locale/time_get/get_monthname/wchar_t/wrapped_env.cc: New.
- * 22_locale/time_get/get_monthname/wchar_t/wrapped_locale.cc: New.
- * 22_locale/time_get/get_time/char/1.cc: New.
- * 22_locale/time_get/get_time/char/2.cc: New.
- * 22_locale/time_get/get_time/char/3.cc: New.
- * 22_locale/time_get/get_time/char/wrapped_env.cc: New.
- * 22_locale/time_get/get_time/char/wrapped_locale.cc: New.
- * 22_locale/time_get/get_time/wchar_t/1.cc: New.
- * 22_locale/time_get/get_time/wchar_t/2.cc: New.
- * 22_locale/time_get/get_time/wchar_t/3.cc: New.
- * 22_locale/time_get/get_time/wchar_t/wrapped_env.cc: New.
- * 22_locale/time_get/get_time/wchar_t/wrapped_locale.cc: New.
- * 22_locale/time_get/get_weekday/char/1.cc: New.
- * 22_locale/time_get/get_weekday/char/2.cc: New.
- * 22_locale/time_get/get_weekday/char/3.cc: New.
- * 22_locale/time_get/get_weekday/char/wrapped_env.cc: New.
- * 22_locale/time_get/get_weekday/char/wrapped_locale.cc: New.
- * 22_locale/time_get/get_weekday/wchar_t/1.cc: New.
- * 22_locale/time_get/get_weekday/wchar_t/2.cc: New.
- * 22_locale/time_get/get_weekday/wchar_t/3.cc: New.
- * 22_locale/time_get/get_weekday/wchar_t/wrapped_env.cc: New.
- * 22_locale/time_get/get_weekday/wchar_t/wrapped_locale.cc: New.
- * 22_locale/time_get/get_year/char/1.cc: New.
- * 22_locale/time_get/get_year/char/3.cc: New.
- * 22_locale/time_get/get_year/char/wrapped_env.cc: New.
- * 22_locale/time_get/get_year/char/wrapped_locale.cc: New.
- * 22_locale/time_get/get_year/wchar_t/1.cc: New.
- * 22_locale/time_get/get_year/wchar_t/3.cc: New.
- * 22_locale/time_get/get_year/wchar_t/wrapped_env.cc: New.
- * 22_locale/time_get/get_year/wchar_t/wrapped_locale.cc: New.
- * 22_locale/time_put/1.cc: New.
- * 22_locale/time_put/2.cc: New.
- * 22_locale/time_put/put/char/1.cc: New.
- * 22_locale/time_put/put/char/10.cc: New.
- * 22_locale/time_put/put/char/2.cc: New.
- * 22_locale/time_put/put/char/3.cc: New.
- * 22_locale/time_put/put/char/4.cc: New.
- * 22_locale/time_put/put/char/5.cc: New.
- * 22_locale/time_put/put/char/6.cc: New.
- * 22_locale/time_put/put/char/7.cc: New.
- * 22_locale/time_put/put/char/8.cc: New.
- * 22_locale/time_put/put/char/9.cc: New.
- * 22_locale/time_put/put/char/wrapped_env.cc: New.
- * 22_locale/time_put/put/char/wrapped_locale.cc: New.
- * 22_locale/time_put/put/wchar_t/1.cc: New.
- * 22_locale/time_put/put/wchar_t/10.cc: New.
- * 22_locale/time_put/put/wchar_t/2.cc: New.
- * 22_locale/time_put/put/wchar_t/3.cc: New.
- * 22_locale/time_put/put/wchar_t/4.cc: New.
- * 22_locale/time_put/put/wchar_t/5.cc: New.
- * 22_locale/time_put/put/wchar_t/6.cc: New.
- * 22_locale/time_put/put/wchar_t/7.cc: New.
- * 22_locale/time_put/put/wchar_t/8.cc: New.
- * 22_locale/time_put/put/wchar_t/9.cc: New.
- * 22_locale/time_put/put/wchar_t/wrapped_env.cc: New.
- * 22_locale/time_put/put/wchar_t/wrapped_locale.cc: New.
-
-2003-01-16 Jeffrey D. Oldham <oldham@codesourcery.com>
-
- * config/locale/generic/messages_members.h
- (messages_byname<_CharT>::messages_byname): Use this-> to refer to
- unqualified members of base clasess.
-
-2003-01-16 Mark Mitchell <mark@codesourcery.com>
- Jeffrey Oldham <oldham@codesourcery.com>
-
- * config/locale/gnu/messages_members.h: Use this-> to refer to
- unqualified members of base clasess.
- * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Likewise.
- * include/bits/codecvt.h: Likewise.
- * include/bits/deque.tcc: Likewise.
- * include/bits/fstream.tcc: Likewise.
- * include/bits/istream.tcc: Likewise.
- * include/bits/list.tcc: Likewise.
- * include/bits/locale_facets.h: Likewise.
- * include/bits/ostream.tcc: Likewise.
- * include/bits/sstream.tcc: Likewise.
- * include/bits/stl_bvector.h: Likewise.
- * include/bits/stl_deque.h: Likewise.
- * include/bits/stl_list.h: Likewise.
- * include/bits/stl_tree.h: Likewise.
- * include/bits/stl_vector.h: Likewise.
- * include/bits/vector.tcc: Likewise.
- * include/ext/ropeimpl.h: Likewise.
- * include/ext/stdio_filebuf.h: Likewise.
- * include/ext/stl_rope.h: Likewise.
- * include/std/std_fstream.h: Likewise.
- * include/std/std_sstream.h: Likewise.
+ (re-open) PR libstdc++/12658
+ * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
+ (locale::global): Likewise.
-2003-01-15 Phil Edwards <pme@gcc.gnu.org>
+2004-01-07 Paolo Carlini <pcarlini@suse.de>
- * include/bits/basic_string.tcc (_S_string_copy): Unused, remove.
+ * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
+ Remove redundant #include.
+ * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
+ * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
+ re-enable normal testing.
+ * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
+ #include.
+ * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
+ More properly, #include <locale>.
+ * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
+ Remove redundant #include.
+ * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
+ * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
+ redundant DejaGnu directive.
+ * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
+ redundant #include.
-2003-01-15 Benjamin Kosnik <bkoz@redhat.com>
+2004-01-06 Benjamin Kosnik <bkoz@redhat.com>
+ Stefan Olsson <stefan@snon.net>
- * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Substitute
- GLIBCPP_TEST_WCHAR_T if building wchar_t bits in the library.
- * aclocal.m4: Regenerate.
- * configure: Regenerate.
- * testsuite/Makefile.am (all-local): Add conditional rule to
- generate testsuite_wchar_t.
- * testsuite/Makefile.in: Regenerate.
- * testsuite/lib/libstdc++-v3-dg.exp
- (libstdc++-v3-list-sourcefiles): Remove wchar_t files if
- testsuite_wchar_t is not present in the build directory.
- * testsuite/libstdc++-v3.dg/dg.exp: Add -g -O2 to DEFAULT_CXXFLAGS.
- Remove setulimit bits.
- * testsuite/26_numerics/complex_value.cc: Set to noopts.
- * testsuite/Makefile.am (CLEANFILES): Add.
- * testsuite/Makefile.in: Regenerate.
+ * scripts/check_performance: Use -pthread.
+ * testsuite/performance/allocator.cc: Tweaks, add list.
+ * testsuite/performance/allocator_thread.cc: New.
-2003-01-15 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * config/os/hpux/os_defines.h (_GLIBCPP_GTHREAD_USE_WEAK): Define for
- __hppa__.
-
-2003-01-14 Jeffrey D. Oldham <oldham@codesourcery.com>
-
- Further conform g++'s __vmi_class_type_info to the C++ ABI
- specification.
- * libsupc++/cxxabi.h
- (__vmi_class_type_info::__flags_masks): Remove enumerations not
- required by the specification.
-
-2003-01-12 Benjamin Kosnik <bkoz@redhat.com>
-
- Renames, namespaces for testsuite utilities.
- * testsuite/testsuite_hooks.h: Put into namespace __gnu_cxx_test.
- (gnu_allocator_tracker): Rename to allocation_tracker.
- (gnu_new_allocator): Rename to tracker_alloc.
- (__set_testsuite_memlimit): Rename to set_memory_limits.
- (gnu_assignment_operator): Rename to assignment_operator.
- (gnu_destructor): Rename to destructor.
- (gnu_copy_tracker): Rename to copy_tracker.
- (gnu_char, gnu_int, gnu_long): Rename to pod_char, pod_int, pod_long.
- (run_tests_wrapped_locale): New.
- (run_tests_wrapped_env): New.
- * testsuite/testsuite_hooks.cc: Same.
- (class locale_data): Add.
- (class enviornment_variable): Add.
- (class not_found): Add.
- * testsuite/testsuite_allocator.h: Same.
- * testsuite/testsuite_allocator.cc: Same.
- * testsuite/23_containers/deque_ctor.cc
- (test_copy_ctor_exception_safety): Change gnu_allocator_tracker to
- allocation_tracker.
- Change gnu_new_allocator to tracker_alloc.
- Change gnu_counting_struct to counter.
- Change gnu_copy_tracker to copy_tracker.
- Change gnu_copy_constructor to copy_constructor.
- Change gnu_assignment_operator to assignment_operator.
- Inject.
- * testsuite/23_containers/vector_capacity.cc: Same.
- * testsuite/23_containers/vector_ctor.cc (test01): Same.
- * testsuite/23_containers/list_modifiers.cc: Change
- gnu_copy_tracker to copy_tracker.
- * testsuite/21_strings/ctor_copy_dtor.cc (main): Change
- __set_testsuite_memlimit to set_memory_limits.
- * testsuite/21_strings/insert.cc (main): Same.
- * testsuite/27_io/filebuf.cc: Change gnu_char to pod_char.
- * testsuite/27_io/stringstream.cc: Same.
- * testsuite/27_io/stringbuf.cc: Same.
- * testsuite/27_io/streambuf.cc: Same.
- * testsuite/27_io/ostream.cc: Same.
- * testsuite/27_io/istream.cc: Same.
- * testsuite/27_io/fstream.cc: Same.
- * testsuite/lib/libstdc++-v3-dg.exp
- (libstdc++-v3-list-sourcefiles): Additionally handle files two and
- three levels deeper in glob patterns.
-
-2003-01-11 Phil Edwards <pme@gcc.gnu.org>
-
- * docs/doxygen/tables.html: Finished now.
- * docs/doxygen/user.cfg.in: Update to latest version of Doxygen.
- * include/bits/basic_ios.h (basic_ios::rdbuf): Add example to
- comments.
-
- * include/bits/deque.tcc, include/bits/stl_alloc.h,
- include/bits/stl_deque.h, include/bits/stl_list.h,
- include/bits/stl_vector.h: Remove _GLIBCPP_DEPRECATED bits scheduled
- for 3.4 removal.
-
-2003-01-09 Benjamin Kosnik <bkoz@redhat.com>
-
- * configure.in: Revert.
- * configure: Regenerate.
+2004-01-06 Jerry Quinn <jlquinn@optonline.net>
-2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
+ * include/bits/locale_facets.h: Document public classes and
+ functions.
+ * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
+ Add comment.
- * include/Makefile.am (install-data-local): Prepend
- $(DESTDIR) to destination paths in all (un)installation
- commands. Use ${c_base_builddir} and ${std_builddir}
- as destination subdirectories to achieve consistency with
- preceding mkinstalldirs commands. No effect because both
- variables contain "." only.
- * include/Makefile.in: Regenerate.
+2004-01-06 Paolo Carlini <pcarlini@suse.de>
-2003-01-08 Benjamin Kosnik <bkoz@redhat.com>
+ * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
+ Remove redundant #includes.
+ * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
+ * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
+ * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
+ * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
+ * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
+ * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
+ * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
+ * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
+ * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
+ * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
+ * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
+ * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
+ * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
+ * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
+ * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/readsome/char/8258.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
+ * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
+ * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
- * include/Makefile.am (stamp-*): Add checks for existing stamps.
- * include/Makefile.in: Regenerate.
+2004-01-04 Paolo Carlini <pcarlini@suse.de>
- * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Correct comment.
- * aclocal.m4: Regenerate.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
+ Remove redundant #includes.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
+ Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
+ Likewise.
- * configure.in: Don't add new multi-do rules every time the
- directory is reconfigured.
- * configure: Regenerate.
+2004-01-04 Mark Mitchell <mark@codesourcery.com>
-2003-01-08 Brad Spencer <spencer@infointeractive.com>
- Nathan Myers <ncm@cantrip.org>
+ PR c++/12226
+ * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
+ constructor.
+ * testsuite/27_io/basic_fstream/4.cc: Likewise.
+ * testsuite/27_io/basic_ifstream/4.cc: Likewise.
+ * testsuite/27_io/basic_ios/4.cc: Likewise.
+ * testsuite/27_io/basic_iostream/4.cc: Likewise.
+ * testsuite/27_io/basic_istream/4.cc: Likewise.
+ * testsuite/27_io/basic_istingstream/4.cc: Likewise.
+ * testsuite/27_io/basic_ofstream/4.cc: Likewise.
+ * testsuite/27_io/basic_ostream/4.cc: Likewise.
+ * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
+ * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
+ * testsuite/27_io/basic_stringstream/4.cc: Likewise.
- * src/Makefile.am (stamp-debug): Clean.
- * src/Makefile.in: Regenerate.
+2004-01-04 Paolo Carlini <pcarlini@suse.de>
-2003-01-07 Benjamin Kosnik <bkoz@redhat.com>
-
- PR libstdc++/8707
- * Makefile.am (distclean-multi): Fix.
- * Makefile.in: Regenerate.
-
-2003-01-06 Benjamin Kosnik <bkoz@redhat.com>
-
- * include/bits/locale_facets.h (messages): Move ctor, dtor
- definitions to..
- (__timepunct): Same.
- * config/locale/gnu/messages_members.h (messages): Add dtor, ctor
- definitions. Conditionalize for GNU systems.
- * config/locale/generic/messages_members.h (messages): Add dtor, ctor
- definitions.
- * config/locale/gnu/time_members.h (messages): New. Add dtor, ctor
- definitions. Conditionalize for GNU systems.
- * config/locale/generic/time_members.h (messages): New. Add dtor, ctor
- definitions.
- * include/bits/localefwd.h (locale::facet::_S_c_name): Add.
- * src/locale.cc: Define.
- * src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool):
- Use it.
- * config/locale/gnu/time_members.h: Use it.
- * config/locale/gnu/messages_members.h: Use it.
- * config/linker-map.gnu: Add locale::facets details.
- * include/Makefile.am (target_headers_extra): Add time_members.h.
- * include/Makefile.in: Regenerate.
- * acinclude.m4: Export CTIME_H.
- * aclocal.m4: Regenerate.
- * configure: Regnerate.
-
-2003-01-06 Paolo Carlini <pcarlini@unitus.it>
-
- * src/codecvt.cc
- (codecvt<char, char, mbstate_t>::do_in, do_out):
- Tweak parameters to avoid unused parameter warnings.
-
-2003-01-06 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9151
- * include/bits/locale_facets.cc (num_put::_M_convert_float):
- Limit __prec to digits10 + 2, not digits10 + 1, taking into
- account the possibility of %{g,G} conversion specifiers
- inside _S_format_float.
- * testsuite/27_io/ostream_inserter_arith.cc (test06): Add.
-
-2003-01-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init,
- libstdc++-v3-list-sourcefiles): Additionally handle files one
- level deeper in glob patterns.
-
- * testsuite/27_io/istream_extractor_arith.cc: Delete, split...
- * testsuite/27_io/istream_extractor_arith/01.cc,
- testsuite/27_io/istream_extractor_arith/02.cc,
- testsuite/27_io/istream_extractor_arith/03.cc,
- testsuite/27_io/istream_extractor_arith/06.cc,
- testsuite/27_io/istream_extractor_arith/07.cc,
- testsuite/27_io/istream_extractor_arith/08.cc,
- testsuite/27_io/istream_extractor_arith/09.cc,
- testsuite/27_io/istream_extractor_arith/10.cc,
- testsuite/27_io/istream_extractor_arith/11.cc,
- testsuite/27_io/istream_extractor_arith/12.cc,
- testsuite/27_io/istream_extractor_arith/13.cc: ... to new files.
- * testsuite/27_io/istream_extractor_arith/12.cc: Add XFAIL for
- sparc*-*-solaris2*.
-
-2003-01-05 Paolo Carlini <pcarlini@unitus.it>
-
- PR libstdc++/9168
- * src/codecvt.cc
- (codecvt<char, char, mbstate_t>::do_in, do_out):
- Implement the resolution of DR19 (TC).
- * testsuite/22_locale/codecvt_members_char_char.cc
- (test01): Tweak.
-
-2003-01-02 Jason Merrill <jason@redhat.com>
-
- * config/cpu/i486/atomicity.h (__exchange_and_add, __atomic_add):
- *__mem is also an output.
- * config/cpu/m68k/atomicity.h (__exchange_and_add): Likewise.
+ * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
+ Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
+ always use double underscored names.
+ * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
+ Likewise.
+ * include/bits/locale_facets.h (struct __numpunct_cache):
+ Dimension _M_atoms_out and _M_atoms_in one position smaller.
+ (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out
+ and _M_atoms_in.
diff --git a/libstdc++-v3/ChangeLog-2003 b/libstdc++-v3/ChangeLog-2003
new file mode 100644
index 00000000000..4a976be6ccb
--- /dev/null
+++ b/libstdc++-v3/ChangeLog-2003
@@ -0,0 +1,8619 @@
+2003-12-31 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get::_M_extract_int,
+ num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
+ _first_ look for thousands_sep, then for decimal_point and
+ finally for digits.
+ (num_get::_M_extract_float): After the decimal_point or
+ 'e'/'E', decimal_point and thousands_sep just break out the
+ parsing loop.
+ * testsuite/22_locale/num_get/get/char/11.cc: Add tests.
+ * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
+
+2003-12-30 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13369
+ * include/bits/locale_facets.tcc (__verify_grouping):
+ Fix to deal properly with __grouping_tmp.size() >
+ __grouping.size().
+ * testsuite/22_locale/num_get/get/char/13.cc: New.
+ * testsuite/22_locale/num_get/get/wchar_t/13.cc: Ditto.
+
+2003-12-29 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/locale_facets.h (ctype.narrow,widen): Add cast.
+
+2003-12-29 Paolo Carlini <pcarlini@suse.de>
+
+ * acinclude.m4 (GLIBCXX_CHECK_LFS): Add -fno-exceptions
+ to CXXFLAGS.
+ * aclocal.m4: Regenerate.
+ * configure: Likewise.
+
+2003-12-29 Mark Mitchell <mark@codesourcery.com>
+
+ * acconfig.h: Add _GLIBCXX_USE_C99_MATH.
+ * acinclude.m4 (GLIBCXX_ENABLE_C99): Define GLIBCXX_USE_C99_MATH.
+ * configure.ac: Define HAVE_S_ISREG and HAVE_S_IFREG when
+ targeting newlib.
+ * aclocal.m4: Regenerated.
+ * config.h.in: Likewise.
+ * configure: Likewise.
+ * Makefile.in: Likewise.
+ * include/Makefile.in: Likewise.
+ * libmath/Makefile.in: Likewise.
+ * libsupc++/Makefile.in: Likewise.
+ * testsuite/Makefile.in: Likewise.
+ * src/Makefile.in: Likewise.
+ * po/Makefile.in: Likewise.
+ * include/c_std/std_cmath.h (_GLIBCXX_USE_C99): Replace with ...
+ (_GLIBCXX_USE_C99_MATH): ... this.
+
+ * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL for
+ arm-none-elf.
+ * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Likewise.
+ * testsuite/27_io/basic_istream/readsome/char/6476-2.cc: Likewise.
+ * testsuite/27_io/objects/char/9.cc: Likewise.
+ * testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
+
+2003-12-28 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/pool_allocator.h (class __pool_alloc): Use
+ operator new and operator delete.
+
+2003-12-24 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/cpu/i386/atomicity.h (__exchange_and_add): Fix output
+ constraint.
+
+ PR libstdc++/13480
+ * config/cpu/i386/atomicity.h: Split up read-write memory operand.
+
+2003-12-23 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/ext/new_allocator.h (new_allocator): Proper allocator class.
+ (__new_alloc): Delete.
+ * include/ext/malloc_allocator.h (malloc_allocator): Same.
+ (__malloc_alloc): Delete.
+ * include/ext/mt_allocator.h: Same, but weakly.
+ * include/ext/debug_allocator.h: Convert to the new style.
+ * include/ext/pool_allocator.h: Use global new and delete directly.
+ * include/backward/alloc.h: Don't inject malloc_allocator, or
+ debug_allocator.
+ * testsuite/ext/allocators.cc: Minimal fixups for usage of new
+ classes. Comment out tests with __pool_alloc for now.
+ * testsuite/performance/allocator.cc: Same.
+
+2003-12-22 Matt Austern <austern@apple.com>
+
+ * include/bits/stl_bvector.h (_Bvector_alloc_base): Eliminate.
+ (_Bvector_base): Inherit directly from word allocator.
+ * include/bits/stl_tree.h (_Rb_tree_alloc_base): Eliminate.
+ (_Rb_tree_base): Eliminate.
+ (_Rb_tree): Inherit directly from node allocator.
+ * include/ext/slist (_Alist_alloc_base): Eliminate.
+ (_Slist_base): Inherit direcly from node allocator.
+
+2003-12-22 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/18_support/numeric_limits.cc: Add _GLIBCXX_ASSERT to
+ dg-options in testcases that use VERIFY.
+ * testsuite/23_containers/vector/invalidation/1.cc: Same.
+ * testsuite/23_containers/vector/invalidation/2.cc: Same.
+ * testsuite/23_containers/vector/invalidation/3.cc: Same.
+ * testsuite/23_containers/vector/invalidation/4.cc: Same.
+ * testsuite/23_containers/vector/resize/1.cc: Same.
+ * testsuite/26_numerics/complex_value.cc: Same.
+ * testsuite/27_io/ios_base/storage/1.cc: Same.
+ * testsuite/27_io/ios_base/storage/2.cc: Same.
+ * testsuite/27_io/ios_base/storage/3.cc: Same.
+ * testsuite/27_io/manipulators/standard/char/2.cc: Same.
+ * testsuite/backward/11460.cc: Same.
+ * testsuite/backward/strstream_members.cc: Same.
+
+ * include/ext/hash_set (class hash_multiset): Fix typo.
+
+2003-12-22 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/27_io/objects/char/5.cc: Don't use stdc++.h.gch.
+ * testsuite/27_io/objects/wchar_t/5.cc: Same.
+ * docs/html/test.html: Add docs for constructing test files that
+ don't use stdc++.h.gch.
+ * scripts/testsuite_flags.in (PCHFLAGS): Move to --cxxpchflags.
+ * testsuite/libstdc++-dg/normal.exp: Compute DEFAULT_CXXFLAGS
+ differently.
+
+ * include/bits/ios_base.h (ios_base::Init::_S_initialized): Remove.
+ * src/ios_init.cc: Same.
+ * config/linker-map.gnu: Same.
+ * testsuite/27_io/ios_base/cons/copy_neg.cc: Adjust line numbers.
+ * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
+
+2003-12-22 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR libstdc++/13462
+ * include/bits/stl_multiset.h (__gnu_norm::multiset): Define pointer
+ as allocator's pointer, likewise for reference, const_pointer, and
+ const_reference.
+ * include/bits/stl_set.h (__gnu_norm::set): Likewise.
+ * include/ext/hash_set (__gnu_ext::hash_set): Likewise.
+ (__gnu_ext::hash_multiset): Likewise.
+
+2003-12-22 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get::_M_extract_int,
+ num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
+ first look for decimal_point and thousands_sep, when parsing
+ sign, leading zeros (and 0, Ox, 0X for integer types) too.
+ * testsuite/22_locale/num_get/get/char/12.cc: New.
+ * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
+
+ * testsuite/22_locale/num_get/get/char/11.cc: Add a comment.
+ * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
+
+2003-12-20 Jason Merrill <jason@redhat.com>
+
+ * config/cpu/powerpc/atomicity.h: Fix oversight in previous
+ change.
+
+2003-12-20 Jerry Quinn <jlquinn@optonline.net>
+
+ * docs/doxygen/TODO: Update.
+ * include/bits/locale_classes.h (locale, facet, id): Document.
+ * include/bits/locale_facets.tcc (has_facet, use_facet): Document.
+
+2003-12-19 Jason Merrill <jason@redhat.com>
+
+ * config/cpu/cris/atomicity.h: Remove memory clobbers.
+ * config/cpu/mips/atomicity.h: Likewise.
+ * config/cpu/i486/atomicity.h: Remove memory clobbers.
+ Split up read-write memory operand.
+ * config/cpu/m68k/atomicity.h: Likewise.
+ * config/cpu/powerpc/atomicity.h: Make memory I/O explicit.
+ * config/cpu/s390/atomicity.h: Likewise.
+ * config/cpu/sparc/atomicity.h: Likewise.
+
+2003-12-20 Carlo Wood <carlo@alinoe.com>
+
+ * bits/demangle.h
+ namespace __gnu_cxx::demangler
+ (session<Allocator>::decode_encoding): Put the postfix
+ of the return type of (member) functions after the function
+ instead of after the return type.
+
+2003-12-19 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/locale_facet.h
+ (__ctype_abstract_base,ctype<charT>,ctype<char>,ctype<wchar_t>):
+ Document.
+
+2003-12-19 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get::_M_extract_int,
+ num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
+ first look for decimal_point and thousands_sep.
+ * testsuite/22_locale/num_get/get/char/11.cc: New.
+ * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
+
+2003-12-19 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get::_M_extract_float):
+ When __found_sci becomes true stop eating thousands separators
+ and the decimal radix separator.
+ * testsuite/22_locale/num_get/get/char/9.cc: New.
+ * testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
+
+ * config/locale/generic/c_locale.cc (__convert_to_v): Don't
+ check that *__sanity == '\0': parsing may stop earlier, still
+ be successful.
+ * config/locale/gnu/c_locale.cc: Likewise.
+ * testsuite/22_locale/num_get/get/char/10.cc: New.
+ * testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
+ Tweak in one place accordingly.
+
+ * testsuite/22_locale/money_get/get/char/1.cc: Fix typo.
+ * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
+
+2003-12-18 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/stl_list.h: Formatting tweaks.
+ * include/bits/list.tcc: Same.
+
+2003-12-18 Matt Austern <austern@apple.com>
+
+ * include/bits/demangle.h: Fix allocator type correctness,
+ i.e. make sure that when we instantiate a container with a value
+ type and an allocator, the allocator's value type matches the
+ container's.
+ * include/bits/stl_deque.h (_Deque_alloc_base): Eliminate.
+ (_Deque_base): inherit directly from the deque's allocator. Use
+ rebinding instead of _Alloc_traits. Pick up data members from
+ _Deque_alloc_base.
+ * include/bits/stl_list.h (_List_alloc_base): Eliminate.
+ (_List_base): Inherit directly from the list's allocator. Use
+ rebinding instead of _Alloc_traits. Pick up data members from
+ _List_alloc_base.
+ * include/bits/stl_vector.h (_Vector_alloc_base): Eliminate
+ (_Vector_base): Inherit directly from the vector's allocator. Use
+ rebinding instead of _Alloc_traits. Pick up data members from
+ _Vector_alloc_base.
+ * include/ext/hashtable.h: Fix allocator type correctness (the
+ vector of buckets must be passed an allocator for objects of
+ type _Node*). Use rebinding instead of _Alloc_traits.
+
+2003-12-17 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
+ Use narrow to get from __format[__i] a char __c representing a
+ formatting code, don't use it to compare *__beg to __format[__i].
+ * testsuite/22_locale/time_get/get_date/wchar_t/4.cc: New.
+
+2003-12-17 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/performance/container_benchmark.cc: Tweak outputs.
+
+ * testsuite/performance/list_create_fill_sort.cc: Shrink a
+ bit some outputs.
+
+ * testsuite/testsuite_performance.h: Widen a few output fields.
+
+ * testsuite/performance/ifstream_extract_int.cc: New.
+
+2003-12-16 Phil Edwards <phil@codesourcery.com>
+
+ * configure.ac (AM_INIT_AUTOMAKE): Don't warn about GNU Make.
+ * configure: Regenerated.
+ * Makefile.am (check-%): New catch-all forwarding target.
+ * Makefile.in: Regenerated.
+
+2003-12-16 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/performance/container_benchmark.cc: New, a
+ benchmark developed by Bjarne Stroustrup and Alexander
+ Stepanov and made available with no restrictions.
+
+ * testsuite/testsuite_performance.h (report_header): New,
+ useful to produce header lines in the reports.
+
+2003-12-16 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/21_strings/howto.html: Document shrink-to-fit reserve().
+ * docs/html/faq/index.html: Reducing vector's capacity() to size().
+ * docs/html/documentation.html, docs/html/faq/index.txt: Regenerate.
+
+2003-12-16 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/performance/narrow_widen_char.cc: Tweak the
+ number of iterations for each test.
+ * testsuite/performance/narrow_widen_wchar_t.cc: Add a
+ missing clear_counters.
+
+2003-12-16 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/11723
+ * include/bits/locale_facets.h: Add _M_bit and _M_wmask,
+ used to speed up the computation of ctype::do_is.
+ * config/locale/generic/ctype_members.cc
+ (_M_initialize_ctype): Fill _M_bit and _M_wmask.
+ (ctype::do_is): Use _M_bit and _M_wmask.
+ * config/locale/gnu/ctype_members.cc: Likewise.
+ * testsuite/performance/is_wchar_t.cc: New.
+
+ * testsuite/performance/narrow_widen_wchar_t.cc: Tweak
+ string literal (incorrect citation ;)
+
+ * include/bits/locale_facets.h: Minor tweaks, const
+ correctness, unsigned -> size_t.
+
+2003-12-16 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/locale_facets.h (widen, narrow): Uncomment the
+ intended code.
+
+2003-12-15 Jerry Quinn <jlquinn@optonline.net>
+
+ * config/os/aix/ctype_noninline.h,
+ config/os/bsd/freebsd/ctype_noninline.h,
+ config/os/bsd/netbsd/ctype_noninline.h,
+ config/os/djgpp/ctype_noninline.h,
+ config/os/generic/ctype_noninline.h,
+ config/os/gnu-linux/ctype_noninline.h,
+ config/os/hpux/ctype_noninline.h,
+ config/os/irix/irix5.2/ctype_noninline.h,
+ config/os/irix/irix6.5/ctype_noninline.h,
+ config/os/mingw32/ctype_noninline.h,
+ config/os/newlib/ctype_noninline.h,
+ config/os/qnx/qnx6.1/ctype_noninline.h,
+ config/os/solaris/solaris2.5/ctype_noninline.h,
+ config/os/solaris/solaris2.6/ctype_noninline.h,
+ config/os/solaris/solaris2.7/ctype_noninline.h,
+ config/os/vxworks/ctype_noninline.h,
+ config/os/windiss/ctype_noninline.h (ctype): Initialize
+ _M_narrow, _M_widen.
+ * include/bits/locale_facets.h (_M_widen, _M_widen_ok,
+ _M_narrow, _M_narrow_ok): New.
+ (widen, narrow): Use tables to bypass virtual functions.
+ (_M_widen_init, _M_narrow_init): New.
+
+2003-12-15 Carlo Wood <carlo@alinoe.com>
+
+ * include/bits/ios_base.h (Init::_S_initialized): Change into
+ declaration.
+ * src/ios_init.cc (Init::_S_initialized): Add definition.
+
+2003-12-15 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/12658
+ * include/Makefile.am (bits_headers): Add concurrence.h.
+ * include/Makefile.in: Regenerated.
+ * include/bits/concurrence.h: New.
+ * src/locale_init.cc: Use it.
+ (locale::locale): Lock critical regions.
+ (locale::global): Same.
+
+2003-12-15 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/basic_string.h: Change _*_references to _*_refcount.
+ * include/bits/locale_classes.h: Same.
+ * src/locale.cc: Same.
+ * src/locale_name.cc: Same.
+ * src/locale_init.cc: Same.
+
+2003-12-15 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/12855
+ * include/bits/ios_base.h (Init::_S_ios_base_init): Change to
+ _S_refcount, make atomic.
+ * src/ios.cc: Adjust definition.
+ * src/ios_init.cc (ios_base::Init::Init): Use __exchange_and_add,
+ and __atomic_add.
+ (ios_base::Init::~Init): Same.
+ * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
+ * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
+
+2003-12-15 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get::do_get(bool&)):
+ Fail as soon as the begins of both truename and falsename
+ stop to match; always leave __beg one position beyond the
+ last char successfully matched.
+ * testsuite/22_locale/num_get/get/char/8.cc: New.
+ * testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
+
+2003-12-15 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.h (_M_widen): Reserve space
+ for all the possible widened chars.
+ * config/locale/generic/ctype_members.cc (_M_initialize_ctype):
+ Compute at construction time all the possible widened chars.
+ (do_widen): Tweak, simplify.
+ * config/locale/gnu/ctype_members.cc: Likewise.
+ * testsuite/performance/narrow_widen_wchar_t.cc: Add tests
+ for the array versions.
+
+2003-12-12 Paolo Carlini <pcarlini@suse.de>
+ Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/13341
+ * include/bits/locale_facets.h (ctype<wchar_t>): Declare
+ _M_initialize_ctype() and _M_narrow_ok, _M_narrow and _M_widen.
+ * src/ctype.cc (ctype<wchar_t>::ctype(size_t),
+ ctype<wchar_t>::ctype(__c_locale, size_t)): Use
+ _M_initialize_ctype to fill _M_narrow and _M_widen.
+ (ctype_byname<wchar_t>::ctype_byname(const char*, size_t)):
+ Likewise.
+ * config/locale/generic/ctype_members.cc (do_narrow, do_widen)
+ Use _M_narrow and _M_widen when possible, instead of calling
+ wctob and btowc, respectively.
+ (_M_initialize_ctype): Define, it fills at construction time
+ _M_narrow and _M_widen.
+ * config/locale/gnu/ctype_members.cc: Likewise.
+ * testsuite/performance/narrow_widen_wchar_t.cc: New.
+
+2003-12-12 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/faq/index.txt: Regenerate after adding <link> tags.
+
+2003-12-11 Neil Ferguson <nferguso@eso.org>
+ Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_string.tcc (reserve): Allow shrink-to-fit.
+ * testsuite/21_strings/basic_string/capacity/1.cc: Tweak.
+ * testsuite/21_strings/basic_string/capacity/char/1.cc: Ditto.
+ * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Ditto.
+
+2003-12-10 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/6243
+ * testsuite/lib/libstdc++.exp (v3-init): Add
+ original_ld_library_path, calculate ld_library path, set
+ LD_LIBRARY_PATH to both. Based on libjava.exp.
+
+2003-12-10 Benjamin Kosnik <bkoz@redhat.com>
+ Alexandre Oliva <aoliva@redhat.com>
+
+ PR libstdc++/11612
+ * testsuite/Makefile.am (GLIBCXX_DIR): New.
+ (GLIBGCC_DIR): New.
+ (CXXLINK): Use both with -R so libtool links the correct libs.
+
+2003-12-10 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/13217
+ * include/bits/fstream.tcc (underflow): Deal gracefully with
+ read errors: throw ios_base::failure.
+
+2003-12-10 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/10063
+ * config/io/basic_file_stdio.cc (__basic_file::sys_open): Sync.
+ * testsuite/ext/stdio_filebuf/char/10063-1.cc: New.
+ * testsuite/ext/stdio_filebuf/char/10063-2.cc: New.
+
+2003-12-10 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_put::do_put(void*)):
+ Remove the try/catch, not necessary.
+
+2003-12-10 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/22_locale/locale/cons/12438.cc: Tweak memory
+ limit and iterations to avoid spurious failures on some
+ 64 bit machines.
+
+2003-12-09 Benjamin Kosnik <bkoz@redhat.com>
+
+ * config/linker-map.gnu: Remove private ios_base members from
+ export list.
+
+ * config/cpu/alpha/atomicity.h: Consistently format.
+ * config/cpu/cris/atomicity.h: Same.
+ * config/cpu/generic/atomicity.h: Same.
+ * config/cpu/hppa/atomicity.h: Same.
+ * config/cpu/i386/atomicity.h: Same.
+ * config/cpu/i486/atomicity.h: Same.
+ * config/cpu/ia64/atomicity.h: Same.
+ * config/cpu/m68k/atomicity.h: Same.
+ * config/cpu/mips/atomicity.h: Same.
+ * config/cpu/powerpc/atomicity.h: Same.
+ * config/cpu/s390/atomicity.h: Same.
+ * config/cpu/sparc/atomicity.h: Same.
+
+2003-12-09 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/13296
+ * acinclude.m4 (GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS): Remove.
+ * aclocal.m4: Regenerate.
+ * configure.ac: Remove call to GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS.
+ * conigure: Regenerate.
+ * src/Makefile.am (libstdc___la_LDFLAGS): Remove LIBUNWIND_FLAGS.
+ * src/Makefile.in: Regenerate.
+ * docs/html/17_intro/configury.html: Modify.
+
+2003-12-09 Paolo Carlini <pcaelini@suse.de>
+
+ * include/bits/demangle.h (struct implementation_details):
+ Keep in comments the names of the unused parameters.
+
+2003-12-09 Paolo Carlini <pcaelini@suse.de>
+
+ * include/bits/demangle.h (struct implementation_details):
+ Fix unused parameters warning.
+
+2003-12-09 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get::_M_extract_int):
+ Slightly streamline the code dealing with overflows and the
+ parsing of the sign.
+
+2003-12-09 Bernardo Innocenti <bernie@develer.com>
+
+ * include/ext/algorithm, include/ext/debug_allocator.h,
+ include/ext/enc_filebuf.h, include/ext/functional,
+ include/ext/hash_fun.h, include/ext/hash_map, include/ext/hash_set,
+ include/ext/hashtable.h, include/ext/iterator,
+ include/ext/malloc_allocator.h, include/ext/memory,
+ include/ext/mt_allocator.h, include/ext/numeric,
+ include/ext/pod_char_traits.h, include/ext/pool_allocator.h,
+ include/ext/rb_tree, include/ext/rope, include/ext/ropeimpl.h,
+ include/ext/slist, include/ext/stdio_filebuf.h,
+ include/ext/stdio_sync_filebuf.h: Remove trailing whitespace.
+
+2003-12-09 Bernardo Innocenti <bernie@develer.com>
+
+ * include/debug/bitset, include/debug/debug.h, include/debug/deque,
+ include/debug/formatter.h, include/debug/hash_map.h,
+ include/debug/hash_multimap.h, include/debug/hash_multiset.h,
+ include/debug/hash_set, include/debug/hash_set.h, include/debug/list,
+ include/debug/map.h, include/debug/multimap.h,
+ include/debug/multiset.h, include/debug/safe_base.h,
+ include/debug/safe_iterator.h, include/debug/safe_iterator.tcc,
+ include/debug/safe_sequence.h, include/debug/set.h,
+ include/debug/string, include/debug/vector: Remove trailing whitespace.
+
+2003-12-09 Bernardo Innocenti <bernie@develer.com>
+
+ * include/c_compatibility/iso646.h, include/c_compatibility/limits.h,
+ include/c_compatibility/locale.h, include/c_compatibility/stdio.h,
+ include/c_compatibility/string.h, include/c_compatibility/time.h,
+ include/c_compatibility/wchar.h, include/c_compatibility/wctype.h:
+ Remove trailing whitespace.
+
+2003-12-09 Bernardo Innocenti <bernie@develer.com>
+
+ * include/c_std/cmath.tcc, include/c_std/std_cassert.h,
+ include/c_std/std_cctype.h, include/c_std/std_cmath.h,
+ include/c_std/std_cstddef.h, include/c_std/std_cstdio.h,
+ include/c_std/std_cstdlib.h, include/c_std/std_cstring.h,
+ include/c_std/std_cwchar.h, include/c_std/std_cwctype.h:
+ Remove trailing whitespace.
+
+2003-12-09 Bernardo Innocenti <bernie@develer.com>
+
+ * include/c/std_cctype.h, include/c/std_cmath.h,
+ include/c/std_cstdlib.h include/c/std_cwchar.h,
+ include/c/std_cwctype.h: Remove trailing whitespace.
+
+2003-12-09 Bernardo Innocenti <bernie@develer.com>
+
+ * include/backward/algo.h, include/backward/algobase.h,
+ include/backward/alloc.h, include/backward/complex.h,
+ include/backward/defalloc.h, include/backward/function.h,
+ include/backward/iterator.h, include/backward/new.h,
+ include/backward/ostream.h, include/backward/queue.h,
+ include/backward/rope.h, include/backward/stream.h,
+ include/backward/streambuf.h, include/backward/strstream,
+ include/backward/tempbuf.h, include/backward/tree.h,
+ include/backward/vector.h: Remove trailing whitespace.
+
+2003-12-08 Paolo Carlini <pcarlini@suse.de>
+
+ * config/locale/generic/c_locale.cc (__convert_to_v(long&),
+ __convert_to_v(unsigned long&), __convert_to_v(long long&),
+ __convert_to_v(unsigned long long&): Remove.
+ (__convert_to_v(float&), __convert_to_v(double&),
+ __convert_to_v(long double&)): Remove last unused parameter.
+ * config/locale/gnu/c_locale.cc: Likewise.
+ * include/bits/locale_facets.h: Likewise.
+ (num_get::_M_extract_int): Update declaration.
+ (class __num_base): Tweak _S_ie and _S_iE according to the
+ _S_atoms_in changes.
+ * include/bits/locale_facets.tcc (num_get::_M_extract_int):
+ Provide directly the final _ValueT, not a string: accumulate
+ the result checking for overflow at each digit.
+ (num_get::do_get(bool&), num_get::do_get(long&),
+ num_get::do_get(unsigned short&), num_get::do_get(unsigned int&),
+ num_get::do_get(unsigned long&), num_get::do_get(long long&),
+ num_get::do_get(unsigned long long&), num_get::do_get(void*&)):
+ Use the new _M_extract_int, simplify.
+ * src/locale-inst.cc (num_get::_M_extract_int(long&),
+ num_get::_M_extract_int(unsigned short&),
+ num_get::_M_extract_int(unsigned int&),
+ num_get::_M_extract_int(unsigned long&),
+ num_get::_M_extract_int(long long&),
+ num_get::_M_extract_int(unsigned long long&): Instantiate.
+ * src/locale_facets.cc (__num_base::_S_atoms_in): Reorder
+ the chars in the natural order: abcdefABCDEF.
+
+2003-12-08 David S. Miller <davem@redhat.com>
+
+ PR libstdc++/12496
+ * config/cpu/sparc/atomicity.h (__exchange_and_add, __atomic_add):
+ Extend increment to _Atomic_word before giving to assembler.
+
+2003-12-06 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/ext/enc_filebuf/char/13189.cc: Guard for __enc_traits.
+ * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
+
+2003-12-06 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/11691
+ * include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf):
+ Remove __del argument to file descriptor constructor.
+ * config/io/basic_file_stdio.h (__basic_file::sys_open): Remove
+ bool argument.
+ * config/io/basic_file_stdio.cc: Same.
+
+2003-12-05 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/13189
+ * include/ext/enc_filebuf.h: Fix.
+ * include/bits/fstream.tcc: Tweak formatting.
+ * include/bits/postypes.h: Same.
+ * include/bits/sstream.tcc: Same.
+ * include/bits/streambuf.tcc: Same.
+ * testsuite/ext/stdio_filebuf.cc: Split.
+ * testsuite/ext/stdio_filebuf_2.cc: Split.
+ * testsuite/ext/stdio_sync_filebuf_char.cc: Split.
+ * testsuite/ext/stdio_sync_filebuf_wchar_t.cc: Split.
+ * testsuite/ext/enc_filebuf/char/13189.cc: New.
+ * testsuite/ext/enc_filebuf/wchar_t/13189.cc: New.
+ * testsuite/ext/stdio_filebuf/char/1.cc: New.
+ * testsuite/ext/stdio_filebuf/char/2.cc: New.
+ * testsuite/ext/stdio_sync_filebuf/char/1.cc: New.
+ * testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: New.
+ * testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: New.
+ * testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: New.
+ * testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: New.
+ * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: New.
+ * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: New.
+ * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: New.
+ * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: New.
+ * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: New.
+
+2003-12-05 Carlo Wood <carlo@alinoe.com>
+
+ PR libstdc++/13045
+ * bits/demangle.h
+ namespace __gnu_cxx::demangler
+ (enum substitution_nt): Removed trailing comma.
+ (implementation_details): Added.
+ (session<Allocator>::M_implementation_details): Added.
+ (session<Allocator>::session): Pass implementation_details.
+ (session<Allocator>::decode_encoding): Same.
+ (session<Allocator>::decode_real): Added.
+ (_GLIBCXX_DEMANGLER_STYLE_VOID _GLIBCXX_DEMANGLER_STYLE_LITERAL
+ _GLIBCXX_DEMANGLER_STYLE_LITERAL_INT
+ _GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
+ _GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Replaced with
+ implementation_details equivalent.
+ (session<Allocator>::decode_expression):
+ Use M_implementation_details instead of macros. Add extra parentheses
+ around 'larger than' operator in expressions in template arguments.
+ (session<Allocator>::decode_bare_function_type): Idem.
+ (session<Allocator>::decode_literal):
+ Idem, and call decode_real for floating literals.
+ (session<Allocator>::decode_type_with_postfix): Put the postfix
+ of the return type of (member) functions after the function
+ instead of after the return type. Also, put a space after the
+ prefix of qualified function pointers: "int (* const<space>".
+ * src/demangle.cc: include most dependent header file first.
+ * testsuite/demangle/regression/cw-16.cc: Updated two
+ and added three tests.
+
+2003-12-04 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/13284
+ * include/bits/stl_algo.h (__random_number): Remove.
+ (random_shuffle): Use rand, as permitted by DR 395.
+ * include/ext/algorithm: Same.
+ * linkage.m4 (GLIBCXX_CHECK_STDLIB_SUPPORT): Remove lrand48.
+ * acconfig.h: Same.
+ * crossconfig.m4: Remove HAVE_DRAND48, HAVE_LRAND48.
+ * config.h.in: Regenerated.
+ * configure: Same.
+ * aclocal.m4: Same.
+
+2003-12-04 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/12653
+ * include/std/std_bitset.h (operator>>): Implement resolution
+ of DR 303 [WP]: use widen('0') and widen('1').
+ * docs/html/ext/howto.html: Add an entry for DR 303.
+
+ * include/std/std_bitset.h (operator>>): Implement the common
+ requirements of formatted input functions (27.6.1.2.1).
+
+ * include/std/std_bitset.h (operator>>): Set the failbit when
+ nothing was extracted and _Nb != 0.
+ * testsuite/23_containers/bitset/input/1.cc: New.
+
+2003-12-03 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/12791
+ * include/bits/locale_facets.tcc (time_get::_M_extract_num):
+ Rewrite, stop the parsing as soon as a digit cannot possibly
+ lead to a final number within the bounds; otherwise, simplify,
+ avoiding __ctype.is() and atoi().
+ * testsuite/22_locale/time_get/get_date/char/12791.cc: New.
+ * testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: New.
+
+ * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
+ Minor tweak: a 4-digit integer cannot be bigger than 9999.
+
+ * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Use
+ type-correct wchar_t string literals.
+ * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
+ * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
+ * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
+ * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
+
+2003-12-02 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (time_get::do_get_year):
+ Avoid using a basic_string and calling a full blown strtol
+ (via __convert_to_v) for simple 2 or 4 digits, base 10,
+ positive integers; simplify.
+
+2003-12-02 Paolo Carlini <pcarlini@suse.de>
+
+ * config/locale/gnu/monetary_members.cc
+ (money_base::_S_construct_pattern): For case 3: and 4:
+ exchanging 'if (__precedes)' and 'if (__space)' allows
+ to factor out a few more assignments.
+
+2003-12-01 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/basic_ios.h (basic_ios::setstate): Revert.
+ * include/bits/istream.tcc: Only call setstate if __err != goodbit.
+ * include/bits/ostream.tcc: Same.
+ * testsuite/27_io/basic_ios/exceptions/char/2.cc: New.
+
+ * testsuite/testsuite_io.h (__gnu_test::fail_streambuf): Make
+ internal buffer non-static.
+
+2003-12-01 Benjamin Kosnik <bkoz@redhat.com>
+
+ * docs/html/17_intro/C++STYLE: Add exception bits.
+ * include/bits/fstream.tcc: Add location info to exception strings.
+
+ * include/bits/stl_construct.h: Formatting tweaks.
+
+2003-12-01 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/10378
+ * include/bits/allocator.h (allocator::construct): Implement
+ resolution of DR 402 [Ready] (in Revision 28).
+ * include/bits/allocator_traits.h (__allocator::construct):
+ Likewise.
+ * include/bits/stl_construct.h (_Construct): Likewise.
+ * testsuite/20_util/allocator_members.cc: Move to...
+ * testsuite/20_util/allocator/1.cc: ... here.
+ * testsuite/20_util/allocator/10378.cc: New.
+ * docs/html/ext/howto.html: Add an entry for DR 402.
+
+2003-11-30 Paolo Carlini <pcarlini@suse.de>
+
+ * config/locale/gnu/codecvt_members.cc (codecvt::do_in,
+ codecvt::do_length): More minor tweaks.
+
+2003-11-30 Paolo Carlini <pcarlini@suse.de>
+
+ * config/locale/gnu/codecvt_members.cc (codecvt::do_in):
+ Minor stylistic tweak.
+
+2003-11-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_put::do_put(..., bool)):
+ Minor tweaks, consistent with the style used in other facets.
+
+2003-11-29 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/fstream.tcc (underflow): Minor tweaks in
+ preparation for libstdc++/13217.
+
+2003-11-29 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc:
+ Tweak for a few small problems (fix timings, use VERIFY..)
+
+2003-11-28 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: Remove.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: New,
+ the original third testcase for libstdc++/13171 belong here.
+
+2003-11-28 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc:
+ Remove extraneous wchar_t lines.
+
+2003-11-27 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/11544
+ PR libstdc++/11603
+ * include/bits/fstream.tcc (underflow): Throw ios_base::failure
+ upon incomplete or invalid byte sequences in the file.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-1.cc: New.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: New.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: New.
+
+2003-11-27 Paolo Carlini <pcarlini@suse.de>
+
+ * include/std/std_streambuf.h (__copy_streambufs): Remove
+ the first, unused, basic_ios<> parameter.
+ * src/streambuf-inst.cc: Likewise.
+ * include/bits/streambuf.tcc: Likewise.
+ * include/bits/istream.tcc (operator>>(__streambuf_type*)):
+ Tweak accordingly the call.
+ * include/bits/ostream.tcc (operator<<(__streambuf_type*)):
+ Likewise.
+
+ * include/bits/streambuf.tcc (__copy_streambufs): Remove
+ redundant try/catch.
+
+2003-11-26 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/9371
+ PR libstdc++/9546
+ PR libstdc++/10093
+ PR libstdc++/10095
+ * include/bits/basic_ios.h (basic_ios::setstate): Elide if goodbit.
+ (basic_ios::_M_setstate): Consolidate common error handling code.
+ * include/bits/basic_ios.tcc: Tweak.
+ * include/bits/fstream.tcc: Tweak.
+ * include/bits/istream.tcc: Use _M_setstate for common exception
+ handling. Move setstate calls after catch.
+ (basic_istream::tellg): Check for exceptions thrown by streambuf
+ virtual functions.
+ (basic_istream::seekg): Same.
+ * include/bits/ostream.tcc: Same, but for ostream.
+ (basic_ostream::flush): Check for exceptions thrown by streambuf
+ virtual functions.
+ (basic_istream::tellp): Same.
+ (basic_istream::seekp): Same.
+ * include/bits/locale_facets.tcc: Tweak.
+ * include/bits/streambuf.tcc: Tweak.
+ (__copy_streambufs): Propagate exceptions.
+ * testsuite/testsuite_io.h (fail_streambuf): New.
+ (fail_num_get): New.
+ (fail_num_put): New.
+ (facet_error): New.
+ (underflow_error): New.
+ (overflow_error): New.
+ (positioning_error): New.
+ * testsuite/27_io/basic_istream/exceptions/char/9561.cc: Tweak.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/
+ exceptions_badbit_throw.cc, exceptions_failbit.cc,
+ exceptions_failbit_throw.cc: New.
+ * testsuite/27_io/basic_istream/extractors_other/char/
+ error_failbit.cc, exceptions_badbit_throw.cc,
+ exceptions_failbit_throw.cc, exceptions_null.cc: New.
+ * testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
+ New.
+ * testsuite/27_io/basic_istream/tellg/char/exceptions_badbit_throw.cc:
+ New.
+ * testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc:
+ New.
+ * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
+ exceptions_badbit_throw.cc, exceptions_failbit_throw.cc: New.
+ * testsuite/27_io/basic_ostream/inserters_other/char/
+ error_failbit.cc, exceptions_badbit_throw.cc,
+ exceptions_failbit_throw.cc, exceptions_null.cc: New.
+ * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
+ New.
+ * testsuite/27_io/basic_ostream/tellp/char/exceptions_badbit_throw.cc:
+ New.
+
+2003-11-26 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/12297
+ * include/bits/istream.tcc
+ (basic_istream::sentry::sentry): Set failbit and eofbit when eof.
+ * testsuite/27_io/basic_istream/sentry/char/12297.cc: New.
+
+2003-11-26 Paolo Carlini <pcarlini@suse.de>
+ Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/13171
+ * include/bits/fstream.tcc (imbue): Relax the conditions under
+ which the function succeeds: allow for two consecutive calls with
+ the same name; state dependent encodings are ok even after open
+ if at the beginning of the file; don't check seekoff return value
+ (pipes, cin, cout, etc...)
+ * testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: New.
+ * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: New.
+ * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: New.
+ * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: New.
+ * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak comment.
+ * testsuite/27_io/basic_filebuf/imbue/char/3.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Tweak comment.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: Likewise.
+
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: More
+ correctly use the UTF-8 locale appearing in the PR.
+
+2003-11-26 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.h
+ (__numpunct_cache<>::_M_cache): Avoid zeroing _M_grouping,
+ _M_truename and _M_falsename: the constructor always does
+ it immediately before the _M_cache call.
+
+2003-11-25 Paolo Carlini <pcarlini@suse.de>
+
+ * config/locale/gnu/codecvt_members.cc (codecvt::do_length):
+ Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
+ former is very fast, but stops if encounters a NUL.
+ (codecvt::do_out): Tweaks.
+ (codecvt::do_in): Tweaks, improve the code dealing with errors.
+ * testsuite/performance/wchar_t_length.cc: New.
+
+2003-11-24 Paolo Carlini <pcarlini@suse.de>
+
+ * config/locale/gnu/codecvt_members.cc (codecvt::do_in):
+ Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
+ former is very fast, but stops if encounters a NUL.
+ (codecvt::do_out): Tweak.
+ * testsuite/performance/wchar_t_in.cc: New.
+
+2003-11-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.h
+ (__numpunct_cache<>::_M_cache): Set _M_allocated at the beginning
+ in order to avoid memory leaks; simplify a bit.
+
+2003-11-24 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/streambuf_iterator.h (ostreambuf_iterator): Remove
+ non-standard throw specs.
+ * testsuite/24_iterators/istreambuf_iterator.cc: Split into...
+ * testsuite/24_iterators/istreambuf_iterator/1.cc
+ * testsuite/24_iterators/istreambuf_iterator/2.cc
+ * testsuite/24_iterators/istreambuf_iterator/2627.cc
+ * testsuite/24_iterators/ostreambuf_iterator.cc: Split into...
+ * testsuite/24_iterators/ostreambuf_iterator/1.cc
+ * testsuite/24_iterators/ostreambuf_iterator/2.cc
+
+ * testsuite/24_iterators/reverse_iterator/1.cc: Just compile,
+ don't link.
+
+ * include/bits/allocator.h: Formatting tweak.
+
+2003-11-24 Paolo Carlini <pcarlini@suse.de>
+
+ * src/locale_init.cc: Cosmetic reformatting.
+
+2003-11-23 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (__add_grouping):
+ Cosmetic reformatting.
+
+2003-11-23 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (_M_extract_float,
+ _M_extract_int): Remove a wrong comment and simplify
+ the corresponding code using char_traits::find().
+
+2003-11-22 Paolo Carlini <pcarlini@suse.de>
+
+ * config/locale/gnu/monetary_members.cc
+ (money_base::_S_construct_pattern): Factor out two assignments.
+
+2003-11-22 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/istream.tcc (getline(basic_string<>&)):
+ Fix error in comment of the previous commit.
+
+2003-11-22 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/12593
+ * include/bits/istream.tcc (operator>>(basic_string<>&),
+ getline(basic_string<>&)): Implement resolution of DR 91 [WP];
+ fix some minor issues with the exit conditions.
+ * docs/html/ext/howto.html: Add an entry for DR 91.
+
+2003-11-21 Paolo Carlini <pcarlini@suse.de>
+
+ * config/locale/gnu/monetary_members.cc
+ (money_base::_S_construct_pattern): Factor out an assignment.
+
+2003-11-21 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/12882 (partial)
+ * acinclude.m4 (GLIBCXX_CHECK_LFS): Check fseeko64
+ and ftello64 too.
+ * include/ext/stdio_sync_filebuf.h (seekoff): Use fseeko64
+ and ftello64 if available.
+ * aclocal.m4: Regenerate.
+ * configure: Ditto.
+
+2003-11-20 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/debug/formatter.h: Use _Tp as template argument.
+ * src/debug.cc: Same, instantiate std::size_t.
+
+2003-11-20 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/13109
+ * include/debug/formatter.h (_Error_formatter::_M_format_word): New.
+ * src/debug.cc (__gnu_debug): Format.
+ (_Error_formatter::_M_format_word): Define, use, instantiate.
+
+2003-11-20 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/11602
+ * config/locale/gnu/codecvt_members.cc (codecvt::do_out):
+ Rewrite, using both wcsnrtombs and wcrtomb in a loop: the
+ former is very fast, but stops if encounters a NUL.
+ * testsuite/performance/wchar_t_out.cc: New, from the PR.
+
+2003-11-19 Paolo Carlini <pcarlini@suse.de>
+
+ * config/locale/gnu/codecvt_members.cc (do_out): If
+ we can upper bound the total number of external chars
+ to something smaller than __to_end - __to, avoid the
+ temporary buffer, the memcopy and simplify the loop.
+ * config/locale/generic/codecvt_members.cc (do_out):
+ Likewise.
+
+2003-11-19 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * testsuite/lib/libstdc++.exp: Add DYLD_LIBRARY_PATH for darwin.
+ * testsuite/libstdc++-dg/normal.exp: Add -multiply_defined suppress
+ flag.
+
+2003-11-18 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/configopts.html, docs/html/debug.html,
+ docs/html/documentation.html, docs/html/explanations.html,
+ docs/html/install.html, docs/html/17_intro/contribute.html,
+ docs/html/17_intro/howto.html, docs/html/17_intro/license.html,
+ docs/html/18_support/howto.html, docs/html/19_diagnostics/howto.html,
+ docs/html/20_util/howto.html, docs/html/21_strings/howto.html,
+ docs/html/22_locale/codecvt.html, docs/html/22_locale/ctype.html,
+ docs/html/22_locale/howto.html, docs/html/22_locale/locale.html,
+ docs/html/22_locale/messages.html, docs/html/23_containers/howto.html,
+ docs/html/24_iterators/howto.html, docs/html/25_algorithms/howto.html,
+ docs/html/26_numerics/howto.html, docs/html/27_io/howto.html,
+ docs/html/ext/howto.html, docs/html/ext/sgiexts.html: Add <link> tags.
+
+2003-11-18 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/12868
+ * include/bits/fstream.tcc (imbue): For encodings != -1 it's
+ always ok to imbue a new locale, provided seekoff(0, cur, ...)
+ doesn't fail, of course.
+ (underflow): In order for the above to work, deal gracefully
+ with _M_codecvt->in returning codecvt_base::error while
+ (__ilen = __iend - this->eback()) > 0: it just means __ilen
+ correctly converted internal characters before an error.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: New.
+
+2003-11-17 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc: Fix typo in comment.
+
+2003-11-17 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/22_locale/num_put/put/char/8.cc: New test,
+ summarizing the discussion ensuing libstdc++/12988.
+ * testsuite/22_locale/num_put/put/wchar_t/8.cc: Ditto.
+
+2003-11-15 Paolo Carlini <pcarlini@suse.de>
+
+ * include/std/std_fstream.h: Tweak a comment.
+
+2003-11-15 Roger Sayle <roger@eyesopen.com>
+
+ * include/c_std/std_cmath.h: Don't import C99's float transcendentals
+ into the __gnu_cxx::__c99_binding namespace.
+ (acos, asin, atan, atan2, ceil, cosh, exp, floor, fmod, frexp,
+ ldexp, log, log10, modf, pow, sinh, tan, tanh): Implement using
+ GCC's math builtins, i.e. __builtin_foo.
+ * libmath/stubs.c (acosf, acosl, asinf, asinl, atanf, atanl,
+ ceilf, ceill, floorf, floorl, fmodf, fmodl, frexpf, frexpl,
+ ldexpf, ldexpl, modff, modfl): Provide stub implementations.
+
+2003-11-14 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/22_locale/locale/cons/12352.cc: Use
+ __gnu_test::try_named_locale.
+
+2003-11-14 Paolo Carlini <pcarlini@suse.de>
+
+ * docs/html/ext/howto.html: Add entries for DR 63, 75
+ and 305; tweak entries for DR 60 and 328.
+
+2003-11-13 Douglas Gregor <gregod@cs.rpi.edu>
+
+ * docs/html/debug.html: Users are allowed to specialize in
+ namespace __gnu_debug, unlike in the Apple version of the debug
+ mode. Clear up a confusing double-negative. Note that
+ std::basic_string does provide extra debugging capabilities, but
+ not safe iterators.
+ * include/bits/basic_string.tcc: Make sure there's never an
+ ambiguity when calling __is_null_pointer.
+ * include/debug/deque: (deque::erase) Properly handle invalidation
+ when erasing at the end of the deque.
+ * include/debug/vector: (vector::swap): Swap _M_guaranteed_capacity.
+ (vector::clear): Set the guaranteed capacity to 0.
+ * testsuite/23_containers/deque/invalidation/4.cc: (test04): Test
+ iterator invalidation when erasing at the end of the deque.
+
+2003-11-13 Paolo Carlini <pcarlini@suse.de>
+ Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/13007
+ * include/bits/fstream.tcc (imbue): Don't touch the stored
+ locale.
+ * include/std/std_streambuf.h (imbue): According to the
+ standard, base class version does nothing.
+ (pubimbue): Store the locale.
+ * testsuite/27_io/basic_filebuf/imbue/char/13007.cc: New.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: New.
+ * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.
+ * testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: New.
+ * testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: New.
+ * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: New.
+ * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: New.
+
+2003-11-13 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/12594
+ * include/bits/ostream.tcc
+ (basic_ostream::operator<<(basic_ostream& (*)(basic_ostream&)),
+ basic_ostream::operator<<(basic_ios& (*)(basic_ios&)),
+ basic_ostream::operator<<(ios_base& (*)(ios_base&))):
+ Implement the resolution of DR 60 (TC): These are not formatted
+ output functions so don't construct sentry objects and don't
+ catch exceptions.
+ (basic_ostream::put, basic_ostream::write): Implement the
+ resolution of DR 63 (TC) by catching exceptions and setting
+ badbit.
+ (basic_ostream::flush): Implement the resolution of DR 60 (TC):
+ This is not an unformatted output function so don't construct
+ a sentry object.
+ * testsuite/testsuite_io.h (sync_streambuf): Define.
+ * testsuite/27_io/basic_ostream/flush/char/2.cc: New test.
+ * testsuite/27_io/basic_ostream/inserters_other/char/5.cc: New test.
+ * testsuite/27_io/basic_ostream/put/char/1.cc: New test.
+ * testsuite/27_io/basic_ostream/write/char/1.cc: New test.
+
+2003-11-13 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1:
+ Fix, closely following the testcase included in the PR.
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: Ditto.
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: Ditto.
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: Ditto.
+
+2003-11-13 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/17_intro/configury.html: XHTML tweak.
+
+2003-11-13 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/debug_mode.html: XHTML fixes.
+
+2003-11-12 Benjamin Kosnik <bkoz@redhat.com>
+
+ * docs/html/debug_mode.html: Update.
+ * docs/html/17_intro/TODO: Update.
+
+2003-11-12 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/c++config: Move using directive...
+ * include/debug/formatter.h: ...here.
+
+2003-11-12 Carlo Wood <carlo@alinoe.com>
+
+ PR libstdc++/12947
+ * bits/demangle.h
+ (_GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS): Added.
+ (_GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Added.
+ (session<Allocator>::next_peek() const): Added.
+ (decode_non_negative_decimal_integer(string_type&)):
+ Renamed from decode_decimal_integer(string_type&).
+ (session<Allocator>::decode_nested_name):
+ Decode <template_param> as well.
+ (session<Allocator>::add_substitution):
+ Handle <template-param> for <nested-name>'s.
+ (enum xary_nt): Added.
+ (struct entry_st): Added member `xary_nt type' instead of `bool unary'.
+ (symbol_name_table_c): Updated for `entry_st::type' and additional
+ operators (unary `operator+' and `sizeof(type)').
+ (offset_table_c): Updated for new operators (causing a new hash map).
+ (decode_operator_name): Match the updated hash map.
+ (session<Allocator>::decode_expression):
+ Support for `sizeof ([typename] type)' (st),
+ dependent names (sr) and casting operator (cv). Handle
+ `entry_st::type'. Handle _GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
+ and _GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME.
+ (session<Allocator>::decode_type_with_postfix):
+ Support `extern "C"' function types (FY).
+ * testsuite/demangle/regression/cw-16.cc: Added tests for the
+ added functionality.
+ * testsuite/demangle/regression/3111-2.cc: sizeof now has a space
+ appended.
+
+2003-11-11 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/12875
+ * include/bits/fstream.tcc (setbuf): Don't do anything
+ after open(), in particular don't discard data.
+ (_M_allocate_internal_buffer): Tweak to not allocate memory
+ in case the buffer is provided by the user via setbuf.
+ * include/ext/stdio_filebuf.h: Tweak comment.
+ * testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: New.
+ * testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Tweak, now
+ setbuf does nothing after open().
+ * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
+
+2003-11-11 Doug Gregor <gregod@cs.rpi.edu>
+
+ * docs/html/debug.html: Document libstdc++ debug mode.
+ * docs/html/debug_mode.html: Document libstdc++ debug mode design.
+ * docs/html/test.html: Document how to test under debug mode.
+ * docs/html/17_intro/howto.html: Document debug-mode macros.
+ * include/Makefile.am: Install debug-mode headers.
+ * src/Makefile.am: Include debug.cc.
+ * include/bits/basic_string.tcc:
+ (basic_string::_S_construct): Fix NULL pointer check.
+ (__is_null_pointer): New.
+ Add precondition annotations.
+ * include/bits/stream_iterator.h (istream_iterator,
+ ostream_iterator): Added precondition annotations.
+ * include/bits/streambuf_iterator.h (istreambuf_iterator): Ditto.
+ * include/bits/stl_queue.h (queue, priority_queue): Ditto.
+ * include/bits/stl_stack.h (stack): Ditto.
+ * include/bits/basic_string.h (basic_string): Ditto.
+ * include/bits/basic_string.tcc (basic_string): Ditto.
+ * include/std/std_memory.h (auto_ptr): Ditto.
+ * include/std/std_valarray.h (valarray): Ditto.
+ * include/bits/stl_algo.h: Added algorithm precondition
+ annotations.
+ * include/bits/stl_algobase.h: Added algorithm precondition
+ annotations.
+ * include/bits/stl_numeric.h: Ditto.
+ * include/ext/algorithm: Added algorithm precondition
+ annotations.
+ (__is_heap): Moved away from here.
+ * include/bits/stl_heap.h: Added algorithm precondition
+ annotations.
+ (__is_heap): Moved to the top of this file.
+ (__is_heap): Added iterator range overloads.
+ * testsuite/20_util/auto_ptr_neg.cc: Fix line numbers to match up
+ with changes in std_memory.h.
+ * testsuite/23_containers/list/operators/4.cc: Don't verify
+ performance guarantees when in debug mode.
+ * testsuite/23_containers/bitset/invalidation/1.cc: New.
+ * testsuite/23_containers/deque/invalidation/1.cc: New.
+ * testsuite/23_containers/deque/invalidation/2.cc: New.
+ * testsuite/23_containers/deque/invalidation/3.cc: New.
+ * testsuite/23_containers/deque/invalidation/4.cc: New.
+ * testsuite/23_containers/list/invalidation/1.cc: New.
+ * testsuite/23_containers/list/invalidation/2.cc: New.
+ * testsuite/23_containers/list/invalidation/3.cc: New.
+ * testsuite/23_containers/list/invalidation/4.cc: New.
+ * testsuite/23_containers/map/invalidation/1.cc: New.
+ * testsuite/23_containers/map/invalidation/2.cc: New.
+ * testsuite/23_containers/multimap/invalidation/1.cc: New.
+ * testsuite/23_containers/multimap/invalidation/2.cc: New.
+ * testsuite/23_containers/multiset/invalidation/1.cc: New.
+ * testsuite/23_containers/multiset/invalidation/2.cc: New.
+ * testsuite/23_containers/set/invalidation/1.cc: New.
+ * testsuite/23_containers/set/invalidation/2.cc: New.
+ * testsuite/23_containers/vector/invalidation/1.cc: New.
+ * testsuite/23_containers/vector/invalidation/2.cc: New.
+ * testsuite/23_containers/vector/invalidation/3.cc: New.
+ * testsuite/23_containers/vector/invalidation/4.cc: New.
+ * testsuite/25_algorithms/heap.cc: Don't verify
+ performance guarantees when in debug mode.
+ * include/debug/bitset: New.
+ * include/debug/debug.h: New.
+ * include/debug/deque: New.
+ * include/debug/formatter.h: New.
+ * include/debug/hash_map: New.
+ * include/debug/hash_map.h: New.
+ * include/debug/hash_multimap.h: New.
+ * include/debug/hash_set: New.
+ * include/debug/hash_set.h: New.
+ * include/debug/hash_multiset.h: New.
+ * include/debug/list: New.
+ * include/debug/map: New.
+ * include/debug/map.h: New.
+ * include/debug/multimap.h: New.
+ * include/debug/multiset.h: New.
+ * include/debug/safe_base.h: New.
+ * include/debug/safe_iterator.h: New.
+ * include/debug/safe_iterator.tcc: New.
+ * include/debug/safe_sequence.h: New.
+ * include/debug/set: New.
+ * include/debug/set.h: New.
+ * include/debug/string: New.
+ * include/debug/vector: New.
+ * src/debug.cc: New.
+ * config/linker-map.gnu: Add debug mode symbols.
+
+2003-11-11 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/string-inst.cc: Tweak namespaces.
+ * src/misc-inst.cc: Same.
+ * docs/html/debug.html: Edits.
+ * config/link-map.gnu: Remove cruft.
+
+ * include/bits/c++config: Add in namespace associations.
+ * include/std/std_bitset.h: Adjust namespace to __gnu_norm,
+ comment tweaks.
+ * include/bits/deque.tcc: Same.
+ * include/bits/list.tcc: Same.
+ * include/bits/stl_bvector.h: Same.
+ * include/bits/stl_deque.h: Same.
+ * include/bits/stl_list.h: Same.
+ * include/bits/stl_map.h: Same.
+ * include/bits/stl_multimap.h: Same.
+ * include/bits/stl_multiset.h: Same.
+ * include/bits/stl_set.h: Same.
+ * include/bits/stl_vector.h: Same.
+ * include/bits/vector.tcc: Same.
+
+ * include/std/std_algorithm.h: Remove markup comments.
+ * include/std/std_functional.h: Same.
+ * include/std/std_iterator.h: Same.
+ * include/std/std_numeric.h: Same.
+ * include/std/std_utility.h: Same.
+ * include/bits/stl_queue.h: Formatting tweaks.
+ * include/bits/stl_stack.h: Same.
+ * include/std/std_deque.h: Include debugging version in debug mode.
+ * include/std/std_list.h: Same.
+ * include/std/std_map.h: Same.
+ * include/std/std_set.h: Same.
+ * include/std/std_vector.h: Same.
+ * include/std/std_queue.h: Use deque, vector.
+ * include/std/std_stack.h: Same.
+
+2003-11-09 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (_M_insert_int,
+ _M_insert_float): Move a couple of vars inside an if block.
+
+2003-11-09 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/12971
+ * include/bits/locale_facets.tcc
+ (money_put::do_put(..., long double)): Fix conversion
+ specification as per DR 328 [WP].
+ * testsuite/22_locale/money_put/put/char/12971.cc: Add.
+ * testsuite/22_locale/money_put/put/wchar_t/12971.cc: Ditto.
+ * docs/html/ext/howto.html: Add entry for DR 328.
+
+2003-11-08 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/12967
+ * include/bits/list.tcc (merge): Implement resolution of
+ DR 300 [WP].
+ * docs/html/ext/howto.html: Add entry for DR 300; tweak entry
+ for DR 231.
+
+ * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
+ Import R27.
+
+2003-11-07 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * libsupc++/vec.cc: Conform to C++STYLE.
+
+2003-11-07 Carlo Wood <carlo@alinoe.com>
+
+ PR libstdc++/12736
+ * bits/demangle.h (qualifier_list<Allocator>::decode_KVrA): Added.
+ (qualifier_list<Allocator>::decode_qualifiers): Collect concatenated
+ K, V, r and A qualifiers before processing them as a group.
+ * testsuite/demangle/abi_text/01.cc: Reordered CV-qualifiers.
+ * testsuite/demangle/regression/cw-16.cc: New.
+
+2003-11-07 Robert Millan <robertmh@gnu.org>
+
+ * configure.host: Add kfreebsd*-gnu and knetbsd*-gnu.
+ * crossconfig.m4: Likewise.
+ * configure: Regenerate.
+
+2003-11-07 Carlo Wood <carlo@alinoe.com>
+
+ * include/bits/demangle.h
+ (qualifier_list<Allocator>::decode_qualifiers(string_type&,
+ string_type&, bool member_function_pointer_qualifiers):
+ Always separate the '[' of an array type with a space from
+ what is left of it, except when that is the closing bracket
+ of another array dimension.
+
+2003-11-07 Carlo Wood <carlo@alinoe.com>
+
+ * include/bits/demangle.h
+ (qualifier_list<Allocator>::decode_qualifiers(string_type&,
+ string_type&, bool) const): Made const.
+ (qualifier_list<Allocator>::M_printing_suppressed): Added mutable.
+ (_GLIBCXX_DEMANGLER_DOUT_ENTERING3, _GLIBCXX_DEMANGLER_RETURN3,
+ std::ostream& operator<<(std::ostream&, qualifier const&),
+ std::ostream& operator<<(std::ostream&, qualifier_list const&),
+ qualifier_list<Allocator>::decode_qualifiers(string_type&,
+ string_type&, bool) const,
+ session<Allocator>::decode_type_with_postfix(string_type&,
+ string_type&, qualifier_list<Allocator>*))
+ Added and/or changed debug-only hooks and code.
+
+2003-11-04 Jeffrey D. Oldham <oldham@codesourcery.com>
+
+ * libsupc++/vec.cc (__cxa_vec_delete2): If given a NULL pointer,
+ immediately return. This reflects a C++ ABI change 2003 Nov 03.
+ (__cxa_vec_delete3): Likewise.
+
+2003-11-03 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/12790
+ * include/bits/fstream.tcc: Delete _M_last_overflowed.
+ (basic_filebuf::basic_filebuf): Initialize _M_state_last.
+ (basic_filebuf::open, basic_filebuf::close): Assign
+ _M_state_beg to _M_state_cur and _M_state_last.
+ (basic_filebuf::close): Call _M_terminate_output to handle
+ unshift and flushing.
+ (basic_filebuf::underflow): Assign _M_state_last, throw
+ exception instead of calling abort when codecvt::max_length()
+ is bad.
+ (basic_filebuf::seekoff): Use _M_state_last when calling
+ codecvt::length(), pass correct state to _M_seek.
+ (basic_filebuf::seekpos): Pass __pos.state() to _M_seek.
+ (basic_filebuf::_M_seek): Add __state_type parameter,
+ set _M_state_cur correctly, store the resulting state in
+ the return value and use _M_terminate_output to handle
+ flushing and unshift.
+ (basic_filebuf::_M_terminate_output): Flush contents of
+ output buffer, if any, then call codecvt::unshift as
+ needed and output the result.
+ (basic_filebuf::sync): Move here, don't modify _M_writing
+ or _M_reading.
+
+ * include/std/std_fstream.h
+ (basic_filebuf::_M_state_last): Declare it.
+ (basic_filebuf::_M_last_overflowed): Delete.
+ (basic_filebuf::_M_seek): Add __state_type parameter.
+ (basic_filebuf::sync): Declare only.
+ (basic_filebuf::_M_output_unshift): Delete.
+ (basic_filebuf::_M_terminate_output): Declare it.
+
+ * testsuite/testsuite_character.h:
+ Define character class and state class plus char_traits and
+ codecvt specializations for same for testing support for
+ stateful encodings.
+
+ * testsuite/27_io/basic_filebuf/close/12790-1.cc,
+ * testsuite/27_io/basic_filebuf/close/char/12790-1.cc,
+ * testsuite/27_io/basic_filebuf/close/char/12790-2.cc,
+ * testsuite/27_io/basic_filebuf/close/char/12790-3.cc,
+ * testsuite/27_io/basic_filebuf/close/char/12790-4.cc,
+ * testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc,
+ * testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc,
+ * testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc,
+ * testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc,
+ * testsuite/27_io/basic_filebuf/open/12790-1.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/12790-1.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/12790-2.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/12790-3.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/12790-4.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/12790-1.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/12790-2.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/12790-3.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/char/12790-3.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-3.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc,
+ * testsuite/27_io/basic_filebuf/sync/char/1.cc,
+ * testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc:
+ New tests.
+
+ * testsuite/27_io/basic_filebuf/3.cc,
+ * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc,
+ * testsuite/27_io/basic_fstream/3.cc,
+ * testsuite/27_io/basic_ifstream/3.cc,
+ * testsuite/27_io/basic_ofstream/3.cc:
+ Use streamoff as off_type and fpos<state_type> as pos_type.
+
+ * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc,
+ * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc:
+ Check that sync does *not* set _M_writing to false.
+
+2003-11-03 Anthony Green <green@redhat.com>
+
+ * libmath/stubs.c (sqrtf, sqrtl): Reorder so they appear before
+ they're used.
+
+2003-11-03 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_facets.h (time_get::_M_extract_name): Add
+ ctype argument.
+ * include/bits/locale_facets.tcc: Same, use it to allow
+ capitalized names.
+
+ * include/bits/fstream.tcc: Spacing tweak.
+ * include/bits/istream.tcc: Same.
+ * include/bits/ostream.tcc: Same.
+
+2003-10-30 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
+ __mod is only assigned, never used its value, remove it.
+
+2003-10-29 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (time_get::do_get_year):
+ Absolutely avoid dereferencing end iterators.
+ (time_put::put): Minor clean up.
+
+ * include/bits/locale_facets.tcc: Cosmetic reformattings.
+
+2003-10-29 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get::_M_extract_float):
+ Revert the last commit, is not correct, sorry.
+
+2003-10-29 Paolo Carlini <pcarlini@suse.de>
+
+ * config/locale/generic/c_locale.cc: Add back <cmath> and
+ <cstdlib>.
+
+ * include/bits/locale_facets.tcc (num_get::_M_extract_float):
+ Clean up.
+
+2003-10-29 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (time_put::put): Absolutely
+ avoid dereferencing end iterators; clean up.
+
+ * include/bits/locale_facets.tcc (num_get::_M_extract_float,
+ num_get::_M_extract_int): Minor tweak.
+
+2003-10-29 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc: Remove some unnecessary
+ includes.
+ * config/locale/generic/c_locale.cc: Include <cerrno> here.
+ * config/locale/gnu/c_locale.cc: Likewise.
+
+2003-10-28 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc
+ (money_get<>::do_get(..., string_type&)): Absolutely avoid
+ dereferencing end iterators; general clean up.
+
+2003-10-28 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (time_get::_M_extract_num):
+ Absolutely avoid dereferencing end iterators.
+ (time_get::_M_extract_name): Likewise.
+
+ * include/bits/locale_facets.tcc
+ (time_get::_M_extract_via_format, case 'e'): Don't try to
+ be smart wrt returning the right __beg in case of parse
+ error, time_get::_M_extract_num must be fixed instead.
+
+2003-10-27 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/12778
+ * acinclude.m4 (GLIBCXX_CHECK_LFS): Use the C++ compiler.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+
+2003-10-27 Benjamin Kosnik <bkoz@redhat.com>
+
+ * docs/html/17_intro/TODO: Add links.
+ * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
+ Uncomment.
+
+2003-10-27 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/12750
+ * include/bits/locale_facets.tcc
+ (time_get::_M_extract_via_format): Deal with code 'e'.
+ * testsuite/22_locale/time_get/get_date/char/12750.cc: New.
+ * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Ditto.
+
+ * include/bits/locale_facets.tcc
+ (time_get::_M_extract_via_format): Tweak to absolutely avoid
+ dereferencing end iterators.
+
+ * include/bits/locale_facets.h (__verify_grouping):
+ Const-ify second parameter.
+ * include/bits/locale_facets.tcc (__verify_grouping): Ditto.
+ * src/locale-inst.cc (__verify_grouping): Ditto.
+
+2003-10-27 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get::_M_extract_float):
+ Various things: 1- Avoid absolutely end iterator dereferences;
+ 2- Improve performance-wise the code skipping leading zeros;
+ 3- Fix two bugs wrt early bail out in case of parsing errors
+ (see testcases); 4- General clean up.
+ (num_get::_M_extract_int): Likewise, except 3-. Additionally,
+ use __builtin_expect to favor base 10 inputs.
+ * testsuite/22_locale/num_get/get/char/7.cc: New.
+ * testsuite/22_locale/num_get/get/wchar_t/7.cc: Ditto.
+
+2003-10-26 Paolo Carlini <pcarlini@suse.de>
+
+ * testsuite/22_locale/money_put/put/char/1.cc: Clean up.
+ * testsuite/22_locale/money_put/put/wchar_t/1.cc: Ditto.
+
+2003-10-25 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (num_get::_M_extract_int):
+ __pos in only incremented, never used its value, remove it.
+
+2003-10-24 Robert Millan <robertmh@gnu.org>
+
+ * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add kfreebsd*-gnu
+ and knetbsd*-gnu.
+ * aclocal.m4: Regenerated.
+ * configure: Regenerated.
+
+2003-10-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get::do_get(...,
+ long double&): Properly size the temporary buffer.
+ * testsuite/22_locale/money_get/get/char/11.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/11.cc: Ditto.
+
+ * include/bits/locale_facets.tcc (num_put::_M_group_int,
+ num_put::_M_group_float, money_put::do_put(..., const
+ string_type&), collate::do_compare, collate::do_transform):
+ Prefer basic_string::data() to c_str() when the '\0'
+ terminator is not really needed.
+
+2003-10-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (__verify_grouping):
+ Prefer '=' to an unnecessary '&='.
+
+2003-10-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
+ Tweak my fix for libstdc++/12657.
+
+2003-10-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get::do_get(...,
+ string_type&): Minor tweak to the previous commit.
+
+2003-10-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get::do_get(...,
+ string_type&): Disregard the previous commit: doesn't hurt but
+ doesn't accomplish anything useful either. This is the right
+ one, speeding up greatly the function in case of early fail.
+
+2003-10-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get::do_get(...,
+ string_type&): Move an if block, thus minimizing the amount
+ of code processed anyway when __tmp_units.size() == 0.
+
+2003-10-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc
+ (time_get<>::_M_extract_via_format): Deal with case 'C' too,
+ equivalent to 'y'.
+
+2003-10-23 Benjamin Kosnik <bkoz@redhat.com>
+
+ * docs/html/documentation.html: Add a pointer to the doxygen style
+ guide.
+ * docs/html/17_intro/TODO: Update.
+ * docs/html/test.html: Add instructions for running a subset of
+ tests, update.
+
+2003-10-23 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (money_get<>::do_get(...,
+ string_type&)): Use find_first_not_of to strip leading
+ zeros; if __tmp_units == "0" never prefix it with '-';
+ always fail if __tmp_units is empty.
+ * testsuite/22_locale/money_get/get/char/10.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/10.cc: Ditto.
+
+2003-10-23 Phil Edwards <phil@codesourcery.com>
+
+ * config/os/vxworks/ctype_noninline.h: Adjust ctor to match
+ 2003-10-21 change.
+
+2003-10-22 Paolo Carlini <pcarlini@suse.de>
+
+ * include/bits/locale_facets.tcc (__int_to_char): Remove
+ the const int parameter.
+ (_M_insert_int): Update caller.
+ * src/locale-inst.cc (__int_to_char): Update instantiations.
+
+2003-10-22 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_facets.h: Correct byname facets for "C"
+ locale.
+ * config/locale/generic/ctype_members.cc: Same.
+ * config/locale/generic/messages_members.h: Same.
+ * config/locale/gnu/ctype_members.cc: Same.
+ * config/locale/gnu/messages_members.h: Same.
+ * include/bits/codecvt.h: Same.
+ * src/ctype.cc: Same.
+ * testsuite/22_locale/codecvt_byname/1.cc: New.
+ * testsuite/22_locale/collate/1.cc: Edit.
+ * testsuite/22_locale/collate_byname/1.cc: Derivation tests, move to...
+ * testsuite/22_locale/collate_byname/named_equivalence.cc: ...here.
+ * testsuite/22_locale/ctype/1.cc: Derivation tests.
+ * testsuite/22_locale/ctype/11844.cc: Move...
+ * testsuite/22_locale/ctype_base/11844.cc: ...here.
+ * testsuite/22_locale/ctype_base/1.cc: Move mask bits here.
+ * testsuite/22_locale/ctype_byname/1.cc: Name.
+ * testsuite/22_locale/messages_byname/1.cc: New.
+ * testsuite/22_locale/messages_byname/named_equivalence.cc: New.
+ * testsuite/22_locale/moneypunct_byname/1.cc: Derivation test.
+ * testsuite/22_locale/moneypunct_byname/named_equivalence.cc: New.
+ * testsuite/22_locale/numpunct/1.cc: Edit.
+ * testsuite/22_locale/numpunct_byname/2.cc: Move...
+ * testsuite/22_locale/numpunct/members/char/3.cc: ...here.
+ * testsuite/22_locale/numpunct_byname/1.cc: Derivation tests.
+ * testsuite/22_locale/numpunct_byname/named_equivalence.cc: New.
+
+2003-10-22 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/8610
+ * acinclude.m4 (GLIBCXX_CHECK_INT64_T): New macro,
+ checking for the availability of int64_t.
+ (GLIBCXX_CHECK_LFS): New macro, checking for LFS support.
+ * configure.ac: Call here.
+ * acconfig.h: Add undef for the corresponding symbols.
+ * config/io/basic_file_stdio.cc (__basic_file<char>::open):
+ Depending on _GLIBCXX_USE_LFS, call fopen64 or fopen.
+ (__basic_file<char>::seekoff): Likewise, call lseek64 when
+ available, otherwise lseek, checking the __off parameter.
+ * include/bits/postypes.h: Typedef __streamoff_base_type
+ to int64_t if available, otherwise long long.
+ * aclocal.m4: Regenerate.
+ * config.h.in: Likewise.
+ * configure: Likewise.
+
+ * acinclude.m4 (GLIBCXX_CHECK_POLL, GLIBCXX_CHECK_WRITEV):
+ Use AC_TRY_LINK instead of AC_TRY_COMPILE.
+
+2003-10-22 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/12657
+ * include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
+ Implement resolution of DR 292 (WP).
+ * docs/html/ext/howto.html: Add entry for DR 292.
+
+2003-10-21 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/ext/mt_allocator.h: Change include to gthr.h.
+ * include/ext/rope: Same. Add _Refcount_base definitions.
+ * include/ext/pool_allocator.h: Adjust namespaces.
+ * include/bits/stl_threads.h (_Refcount_base): Move.
+ Put remaining into namespace __gnu_cxx.
+
+2003-10-21 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/9858
+ * include/bits/locale_facets.h (ctype<char>): Remove
+ __ctype_abstract_base.
+ (ctype<char>::do_is): Remove.
+ (ctype<char>::do_scan_is): Remove.
+ * src/ctype.cc: Same. Inline the rest.
+ * testsuite/22_locale/ctype/is/char/9858.cc: New.
+ * config/os/aix/ctype_noninline.h: Adjust ctor.
+ * config/os/bsd/freebsd/ctype_noninline.h: Same.
+ * config/os/bsd/netbsd/ctype_noninline.h: Same.
+ * config/os/djgpp/ctype_noninline.h: Same.
+ * config/os/generic/ctype_noninline.h: Same.
+ * config/os/gnu-linux/ctype_noninline.h: Same.
+ * config/os/hpux/ctype_noninline.h: Same.
+ * config/os/irix/irix5.2/ctype_noninline.h: Same.
+ * config/os/irix/irix6.5/ctype_noninline.h: Same.
+ * config/os/mingw32/ctype_noninline.h: Same.
+ * config/os/newlib/ctype_noninline.h: Same.
+ * config/os/qnx/qnx6.1/ctype_noninline.h: Same.
+ * config/os/solaris/solaris2.5/ctype_noninline.h: Same.
+ * config/os/solaris/solaris2.6/ctype_noninline.h: Same.
+ * config/os/solaris/solaris2.7/ctype_noninline.h: Same.
+ * config/os/windiss/ctype_noninline.h: Same.
+
+2003-10-21 Paolo Carlini <pcarlini@suse.de>
+
+ * src/locale.cc: Tweak a comment.
+ * src/localename.cc: Move a comment.
+
+2003-10-20 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/10081
+ * testsuite_hooks.h: Add pod_type, ctype and numpunct specializations.
+ * testsuite_hooks.cc: Same.
+ * 22_locale/numpunct/members/pod/1.cc: Edit.
+ * 22_locale/numpunct/members/pod/2.cc: Same.
+ * 27_io/basic_istream/sentry/char/3983-fstream.cc: Move ...
+ * 27_io/basic_istream/sentry/char/3983-sstream.cc: Move ...
+ * 27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc: Here.
+ * 27_io/basic_istream/extractors_character/pod/3983-2.cc: Here.
+ * 27_io/basic_istream/extractors_other/pod/3983-3.cc: Here.
+ * 27_io/basic_ostream/sentry/char/3983-fstream.cc: Remove.
+ * 27_io/basic_ostream/sentry/char/3983-sstream.cc: Remove.
+ * 27_io/basic_istream/sentry/pod/1.cc: New.
+ * 27_io/basic_ostream/sentry/pod/1.cc: New.
+ * 21_strings/basic_string/inserters_extractors/pod/10081-in.cc: New.
+ * 21_strings/basic_string/inserters_extractors/pod/10081-out.cc: New.
+
+2003-10-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/cpu/mips/atomicity.h (__atomic_add): Use _ABIO32 instead
+ of external _MIPS_SIM_ABI32.
+
+2003-10-20 Phil Edwards <phil@codesourcery.com>
+
+ * configure.ac: Fix comment typo.
+ * configure.host: Add vxworks to host_os switch.
+ * crossconfig.m4: Remove old commented os_include_dir variables
+ left over from autotools transition.
+ (*-vxworks): New stanza.
+ (*-windiss): Add missing symbols.
+ * configure: Regenerate.
+ * config/os/vxworks/ctype_base.h, config/os/vxworks/ctype_inline.h,
+ config/os/vxworks/ctype_noninline.h, config/os/vxworks/os_defines.h:
+ New files.
+ * config/os/windiss/os_defines.h: Define __C9X__.
+
+2003-10-19 David Edelsohn <edelsohn@gnu.org>
+
+ PR other/12506
+ * configure.host (aix4,aix*): Define os_include_dir to os/generic.
+
+2003-10-18 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * src/locale.cc (locale::_S_initialize): Re-apply workaround a
+ confusion of the use of the gthr API when __gthread_active_p()
+ returns true.
+
+2003-10-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/Makefile.am: Add new files.
+ * src/Makefile.in: Regenerate.
+ * src/globals.cc: Split into..
+ * src/globals_io.cc: New.
+ * src/globals_locale.cc: New.
+ * src/ios.cc: Split into...
+ * src/ios_init.cc: New.
+ * src/ios_locale.cc: New.
+ * src/locale-inst.cc: Split into..
+ * src/wlocale-inst.cc: New.
+ * src/locale-misc-inst.cc: New.
+ * src/locale.cc, src/localename: Split into...
+ * src/locale_facets.cc: New.
+ * src/locale_init.cc: New.
+ * src/wstring-inst.cc: Add copyright info.
+
+2003-10-16 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/11450
+ PR libstdc++/11543
+ PR libstdc++/12065
+ * config/io/basic_file_stdio.cc (__basic_file::seekoff):
+ Change return value from streampos to streamoff.
+ (__basic_file::seekpos): Delete.
+ * config/io/basic_file_stdio.h: Same.
+ * config/io/c_io_stdio.h: Remove streamoff and wstreamsize typedefs.
+ * include/Makefile.am (bits_headers): Add bits/postypes.h.
+ * include/bits/char_traits.h: Include bits/postypes.h instead of
+ bits/fpos.h.
+ * include/bits/fstream.tcc (basic_filebuf::open,
+ basic_filebuf::pbackfail): Don't use < or >= to compare pos_type
+ values, use == and != instead.
+ (basic_filebuf::_M_seek): Use explicit conversion from streamoff
+ to pos_type.
+ (basic_filebuf::imbue): Don't use ! on pos_type values, use
+ == instead. Don't use __check_facet(_M_codecvt) unless is_open().
+ * include/bits/postypes.h: New file.
+ Add __streamoff_base_type typedef, streamsize.
+ (streamoff, streampos, wstreampos): Define typedefs, with
+ streamoff defined as...
+ (streamoff): New class. Document implementation defined
+ aspects.
+ (fpos): New implementation. Document implementation defined
+ aspects.
+ * include/bits/sstream.tcc (basic_stringbuf::seekpos): Use
+ explicit conversion from pos_type to off_type.
+ * include/std/std_iosfwd.h: Include bits/postypes.h instead
+ of bits/fpos.h.
+ * testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: New test.
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: New test.
+ * testsuite/27_io/fpos/11450.cc: New test.
+ * testsuite/27_io/fpos/mbstate_t/12065.cc: New test.
+ * testsuite/27_io/fpos/mbstate_t/4_neg.cc: New test.
+ * testsuite/27_io/types/3.cc: New test.
+
+2003-10-16 Benjamin Kosnik <bkoz@redhat.com>
+
+ * configure.host: Remove fpos_include_dir.
+ * configure.ac: Remove FPOS_INC_SRCDIR.
+ * configure: Regenerate.
+ * acinclude.m4 (GLIBCXX_ENABLE_CSTDIO): Remove FPOS_H.
+ * aclocal.m4: Regenerate.
+ * include/Makefile.am (host_headers): Remove fpos.h.
+ (bits_headers): Add postypes.h.
+ * include/Makefile.in: Regenerate.
+ * config/os/gnu-linux/fposh: Remove.
+ * config/os/generic/fpos.h: Remove.
+
+ * testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Fixup.
+ * testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Same.
+ * testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Same.
+ * testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Same.
+ * testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Same.
+ * testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Same.
+ * testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Same.
+ * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Same.
+ * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Same.
+ * testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Same.
+ * testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Same.
+ * testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Same.
+ * testsuite/27_io/basic_istream/seekg/char/2.cc: Same.
+ * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Same.
+ * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Same.
+ * testsuite/27_io/fpos/mbstate_t/3.cc: Same.
+ * testsuite/27_io/objects/char/10.cc: Same.
+
+2003-10-16 Paolo Carlini <pcarlini@suse.de>
+
+ * src/locale.cc (locale::locale(const char*)): ... one
+ more comparison missed in the previous commit.
+
+2003-10-16 Benjamin Kosnik <bkoz@redhat.com>
+
+ * acconfig.h: Add HAVE_DRAND48.
+ * crossconfig.m4: Remove ISATTY.
+ * aclocal.m4: Regenerated.
+ * config.h.in: Regenerated.
+ * configure: Regenerated.
+
+2003-10-16 Bernardo Innocenti <bernie@develer.com>
+
+ * config/cpu/m68k/atomicity.h (__exchange_and_add): Use TAS on
+ __mcf5400__. Don't rely on __mc68000__ to detect a bare 68000.
+ Document SMP safeness of asm macros.
+
+2003-10-16 Paolo Carlini <pcarlini@suse.de>
+
+ * src/locale.cc (locale::locale(const char*)): Tweak
+ a couple of comparisons to use basic_string operators.
+
+2003-10-16 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/12540
+ * config/locale/gnu/monetary_members.cc
+ (moneypunct<wchar_t, true/false>::_M_initialize_moneypunct):
+ Don't leak memory if new throws.
+ * src/locale.cc (locale::locale(const char*)): In order not
+ to leak memory in case new throws, use a basic_string type
+ for __res too and avoid strdup.
+
+2003-10-14 Jeff Bailey <jbailey@nisa.net>
+
+ PR libstdc++/12562
+ * crossconfig.m4: Share the config between *-linux* and *-gnu*.
+ * configure: Regenerate.
+
+2003-10-14 Carlo Wood <carlo@alinoe.com>
+
+ PR libstdc++/12600
+ * include/bits/demangle.h (session<Allocator>::
+ decode_unqualified_name(string_type& output)): Fail on a
+ <operator-name> when decoding <template-argument>.
+ * testsuite/demangle/regression/cw-15.cc: New.
+
+2003-10-14 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/11480
+ * include/bits/stl_algo.h (unique): Fix.
+ * testsuite/25_algorithms/unique.cc: Move to unique/1.cc.
+ * testsuite/25_algorithms/unique/11480.cc: New, from the PR.
+ * testsuite/25_algorithms/unique/2.cc: New.
+
+2003-10-14 Paolo Carlini <pcarlini@unitus.it>
+
+ * src/localename.cc (_M_replace_categories, M_replace_facet):
+ Const-ify a couple of variables.
+
+2003-10-14 Petur Runolfsson <peturr02@ru.is>
+ Andreas Tobler <a.tobler@schweiz.ch>
+
+ * src/locale.cc (locale::_S_initialize): Workaround a confusion
+ of the use of the gthr API when __gthread_active_p() returns true.
+
+2003-10-12 Petur Runolfsson <peturr02@ru.is>
+ Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/11460
+ * src/strstream.cc (pbackfail): Fix to use to_int_type.
+ * testsuite/backward/11460.cc: New, from the PR.
+
+2003-10-12 Paolo Carlini <pcarlini@unitus.it>
+
+ * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
+ Change #ifdef _GLIBCXX_RESOLVE_LIB_DEFECTS to a comment.
+ * include/bits/basic_string.tcc: Likewise.
+ * include/bits/ios_base.h: Likewise.
+ * include/bits/istream.tcc: Likewise.
+ * include/bits/locale_facets.tcc: Likewise.
+ * include/bits/ostream.tcc: Likewise.
+ * include/bits/stl_function.h: Likewise.
+ * include/bits/stl_multiset.h: Likewise.
+ * include/bits/stl_pair.h: Likewise.
+ * include/bits/stl_set.h: Likewise.
+ * include/bits/streambuf_iterator.h
+ * include/std/std_iosfwd.h: Likewise.
+ * include/std/std_istream.h: Likewise.
+ * include/std/std_sstream.h: Likewise.
+ * include/std/std_streambuf.h: Likewise.
+ * src/ios.cc: Likewise.
+ * include/bits/c++config:
+ Comment out #define _GLIBCXX_RESOLVE_LIB_DEFECTS 1.
+ * testsuite/27_io/ios_base/cons/assign_neg.cc: Tweak a
+ dg-error directive due to removal of a blank line.
+ * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
+
+2003-10-12 Andreas Tobler <a.tobler@schweiz.ch>
+ Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/11844/11740 (cont)
+ * config/os/generic/ctype_inline.h (ctype<char>::is):
+ Generically, use a bitmasksize of 15 (instead of 10);
+ Fix the logic to actually return (M & m) != 0 as per
+ 22.2.1.1.2.
+
+2003-10-11 Bernardo Innocenti <bernie@develer.com>
+
+ * crossconfig.m4 (*-uclinux*): New target.
+ * configure: Regenerate.
+
+2003-10-10 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT))
+ Avoid unnecessarily calling __builtin_alloca and dealing
+ explicitly with width() smaller than zero.
+ (operator<<(basic_ostream&, char), operator<<(basic_ostream&,
+ const _CharT*), operator<<(basic_ostream<_CharT, _Traits>&,
+ const char*), operator<<(basic_ostream<char, _Traits>&,
+ const char*), operator<<(basic_ostream, const basic_string&)):
+ Likewise.
+
+2003-10-09 Benjamin Kosnik <bkoz@redhat.com>
+
+ * config/linker-map.gnu: Make more *_type_info bits visible.
+ Move new/delete bits back into GLIBCXX space.
+
+ * include/bits/locale_classes.h: Move _M_id out of line, so that
+ locale::id::_S_highwater can be removed from the export list.
+ * src/locale.cc (locale::id::_M_id): Define.
+
+2003-10-09 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_64 for
+ SPARC64.
+
+2003-10-09 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/11844
+ * config/os/aix/ctype_base.h: Fix 'alnum' and 'graph'
+ to conform to the requirements of 22.2.1.
+ * config/os/bsd/freebsd/ctype_base.h: Likewise.
+ * config/os/djgpp/ctype_base.h: Likewise.
+ * config/os/generic/ctype_base.h: Likewise.
+ * config/os/gnu-linux/ctype_base.h: Likewise.
+ * config/os/hpux/ctype_base.h: Likewise.
+ * config/os/irix/irix6.5/ctype_base.h: Likewise.
+ * config/os/solaris/solaris2.6/ctype_base.h: Likewise.
+ * config/os/solaris/solaris2.7/ctype_base.h: Likewise.
+ * testsuite/22_locale/ctype/11844.cc: New.
+
+ * config/locale/generic/ctype_members.cc (do_is):
+ Generically, use a bitmasksize of 15 (instead of 10), since
+ we don't know the numerical encoding of the various categories
+ in the underlying /usr/include/ctype.h.
+
+2003-10-09 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/string-inst.cc: Prune.
+ * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
+ * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
+
+2003-10-09 Petur Runolfsson <peturr02@ru.is>
+
+ * src/io-inst.cc: Don't include iostream.
+ * include/bits/ios_base.h (ios_base::failure): Use string.
+ * src/Makefile.am: Add ios_failure.cc.
+ * src/Makefile.in: Regenerate.
+ * src/ios.cc: Move ios_base::failure definitions to...
+ * src/ios_failure.cc: ...here. New.
+
+2003-10-09 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/9874
+ * include/bits/fstream.tcc (basic_filebuf::seekoff):
+ Move code needed for both seekoff and seekpos...
+ (basic_filebuf::_M_seek): ...here. New function.
+ (basic_filebuf::seekpos): Don't call seekoff, call _M_seek.
+ * include/std/std_fstream.h (basic_filebuf::_M_seek): Declare it.
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: New test.
+
+ * testsuite/22_locale/locale/cons/12438.cc: Increase memory limit.
+
+2003-10-08 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/locale_facets.tcc: More minor cosmetic
+ changes and const-ifications of some variables.
+
+2003-10-07 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/locale_facets.tcc: Minor cosmetic changes
+ and const-ifications of some variables.
+
+ * include/bits/locale_facets.tcc
+ (money_get::do_get(..., string_type&)): Simplify an if-else.
+
+2003-10-06 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/11740
+ * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_is):
+ Fix to actually return (M & m) != 0 as per 22.2.1.1.2.
+ * config/locale/generic/ctype_members.cc: Same.
+ * testsuite/22_locale/ctype/is/wchar_t/11740.cc: New.
+
+2003-10-06 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/locale_facets.tcc (__pad<>::_S_pad):
+ Improve performance-wise: avoid one traits::copy, avoid
+ the __builtin_alloca, streamline.
+
+2003-10-05 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/locale_facets.tcc
+ (num_put::do_put(..., bool)): Prefer ?: to if-else.
+ (time_get::_M_extract_name): Qualify min with std::.
+ (__pad<>::_S_pad): Constify two variables; simplify an
+ if-else statement factoring out some code.
+
+ * include/bits/locale_facets.tcc: Minor cosmetic changes.
+
+2003-10-04 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/locale_facets.tcc (num_get::_M_extract_float):
+ Constify a couple of variables.
+ (num_get::do_get(..., bool&)): Constify __c; prefer *__beg,
+ ++__beg to *__beg++.
+
+2003-10-04 Paolo Carlini <pcarlini@unitus.it>
+ Petur Runolfsson <peturr02@ru.is>
+
+ * include/ext/stdio_sync_filebuf.h: Don't include the whole
+ <fstream>, only <streambuf> and <cstdio>.
+
+2003-10-04 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/12206
+ * include/bits/fstream.tcc (imbue): In case a codecvt facet
+ is not available, set _M_codecvt = 0.
+ * testsuite/27_io/basic_filebuf/imbue/12206.cc: New.
+
+2003-10-02 Harald Boehme <boehme@informatik.hu-berlin.de>
+
+ PR libstdc++/12451
+ * libsupc++/cxxabi.h: Move forward declaration of __class_type_info.
+
+2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_classes.h (locale::facet::_S_get_c_name): Add.
+ * src/locale.cc: Define.
+ * src/localename.cc: Use it.
+ * config/locale/generic/time_members.h: Same.
+ * config/locale/gnu/messages_members.h: Same.
+ * config/locale/gnu/time_members.h: Same.
+
+2003-10-02 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/12232
+ * include/bits/fstream.tcc (seekoff): Ignore the openmode
+ argument; simplify.
+ * config/io/basic_file_stdio.h (__basic_file<char>::seekoff,
+ seekpos): Remove the openmode argument.
+ * config/io/basic_file_stdio.cc (__basic_file<char>::seekoff,
+ seekpos): Remove redundant placeholder for the openmode argument.
+ * testsuite/27_io/basic_filebuf/seekoff/char/12232.cc: New.
+ * testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Tweak.
+ * testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Likewise.
+
+2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/locale.cc (locale::_S_initialize): Use __gthread_active_p.
+ (locale::facet::_S_get_c_locale): Same.
+
+2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
+
+ * config/linker-map.gnu: Export _S_get_c_locale instead of
+ _S_c_locale object.
+
+2003-10-02 Petur Runolfsson <peturr02@ru.is>
+
+ * config/locale/generic/c_locale.cc
+ (category_names, locale::_S_categories): Const qualify.
+ * config/locale/gnu/c_locale.cc: Same.
+ * config/locale/generic/time_members.h (__timepunct::__timepunct):
+ Copy string contents before assigning to _M_name_timepunct,
+ qualify strcpy and strlen with std::.
+ * config/locale/gnu/time_members.h: Same.
+ * config/locale/gnu/messages_members.h (messages::messages):
+ Copy string contents before assigning to _M_name_messages,
+ qualify strcpy and strlen with std::.
+ * config/os/gnu-linux/ctype_noninline.h
+ (ctype<char>::classic_table()): Don't call locale::classic().
+ * include/bits/locale_classes.h
+ (locale::_S_categories): Const qualify.
+ (locale::_S_once, locale::_S_initialize_once,
+ locale::facet::_S_once, locale::facet::_S_initialize_once,
+ locale::facet::_S_get_c_locale): Declare.
+ (locale::_S_initialize): Don't define.
+ (locale::facet::_S_c_locale): Make private.
+ (locale::facet::_S_c_name): Same, const qualify.
+ (locale::_Impl::_Impl(facet**, size_t, bool)): Drop unused
+ parameters, add throw() specifier.
+ * include/bits/locale_facets.h (__timepunct::_M_name_timepunct,
+ messages::_M_name_messages): Const qualify.
+ * src/locale.cc
+ (locale::_S_once, locale::facet::_S_once): Define.
+ (locale::classic): Move initialization code...
+ (locale::_S_initialize_once): ...here.
+ (locale::_S_initialize): Call _S_initialize_once through
+ __gthread_once.
+ (locale::facet::_S_initialize_once): Initialize _S_c_locale.
+ (locale::facet::_S_get_c_locale): Call _S_initialize_once through
+ __gthread_once before returning _S_c_locale.
+ * src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool)):
+ Drop unused parameters, add throw() specifier, don't initialize
+ locale::facet::_S_c_locale and _S_c_name.
+
+ * config/locale/generic/messages_members.h:
+ Replace _S_c_locale with _S_get_c_locale().
+ * config/locale/gnu/c_locale.cc: Same.
+ * config/locale/gnu/messages_members.h: Same.
+ * config/locale/gnu/numeric_members.cc: Same.
+ * config/locale/gnu/time_members.cc: Same.
+ * config/os/gnu-linux/ctype_noninline.h: Same.
+ * include/bits/locale_facets.h: Same.
+ * include/bits/locale_facets.tcc: Same.
+ * src/codecvt.cc: Same.
+ * src/ctype.cc: Same.
+
+2003-10-02 Carlo Wood <carlo@alinoe.com>
+
+ * include/bits/demangle.h (demangle<Allocator>::symbol(char const*)):
+ Decode symbols that start with _GLOBAL_[ID]_ differently: the
+ trailing part ends with a terminating zero and is not necessarily an
+ encoding.
+ * src/demangle.cc (): Same.
+ * testsuite/demangle/regression/cw-13.cc: Adjust for new output.
+
+2003-10-02 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/22_locale/locale/cons/12438.cc: Use
+ __gnu_test::try_named_locale("").
+
+2003-10-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_0): Define.
+ (GLIBCXX_CHECK_STDLIB_SUPPORT): Use it to test for lrand48
+ instead of drand48.
+ * acconfig.h (HAVE_DRAND48): Renamed to HAVE_LRAND48.
+ * crossconfig.m4 (*-freebsd*): Define HAVE_LRAND48 instead of
+ HAVE_DRAND48.
+ * config.h.in, configure: Regenerate.
+ * include/bits/stl_algo.h: Use _GLIBCXX_HAVE_LRAND48 to guard
+ lrand48 use.
+
+2003-10-01 Nathan Myers <ncm@cantrip.org>
+
+ * include/bits/locale_facets.tcc (time_put::put): Avoid
+ expensive *__s++, in favor of *__s, ++__s.
+
+2003-10-01 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/locale_facets.tcc (time_put::put): Minor
+ tweak to the previous commit.
+
+2003-10-01 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/12439
+ * include/bits/locale_facets.tcc (time_put::put): Deal
+ with the three issues pointed out by the PR.
+ * testsuite/22_locale/time_put/put/char/12439_1.cc: New.
+ * testsuite/22_locale/time_put/put/char/12439_3.cc: New.
+ * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: New.
+ * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: New.
+ * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: New.
+
+2003-09-30 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/stl_algo.h: Minor cosmetic reformattings.
+
+2003-09-30 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/stl_algo.h (search_n): Tweak, to spare the
+ first --__n.
+
+2003-09-30 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/22_locale/locale/cons/12352.cc: Explicitly
+ qualify exception name.
+
+2003-09-30 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/12438
+ * include/bits/locale_facets.tcc (locale::combine): Don't
+ leak memory if _M_replace_facet throws.
+ * testsuite/22_locale/locale/cons/12438.cc: New, from the PR.
+
+ * include/bits/locale_classes.h (locale::locale(const locale&,
+ _Facet*)): Tweak, use consistently _M_remove_reference.
+
+2003-09-30 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/12352 (cont)
+ * src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
+ Don't leak __cloc; don't leak if any of the _M_init_facet(...)
+ calls fail.
+ (locale::_Impl::_Impl(const _Impl&, size_t)): Tweak.
+ (locale::_Impl::~_Impl): Don't do anything if !_M_facets,
+ !_M_caches, !_M_names.
+
+2003-09-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.host: Handle Solaris 2.5 micro releases explicitly.
+ Remove wildcards from Solaris 2.6, 7-9: there were no
+ micro releases.
+ Treat Solaris 10 and up like 7-9.
+
+2003-09-29 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/stl_algo.h (search_n): Improve the previous
+ fix as suggested by Martin.
+
+2003-09-29 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/12296
+ * include/bits/istream.tcc (peek): Set eofbit if sgetc
+ returns eof.
+ * testsuite/27_io/basic_istream/peek/char/12296.cc:
+ New, from the PR.
+
+2003-09-29 Nathan Myers <ncm@cantrip.org>
+ Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/11400
+ * include/bits/stl_algo.h (search_n):
+ Use iterator_traits<>::difference_type for __n.
+ * testsuite/25_algorithms/search_n/11400.cc: New, from the PR.
+
+2003-09-29 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/22_locale/locale/cons/12352.cc:
+ Use __attribute__((unused)) for test.
+
+2003-09-26 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * testsuite/22_locale/time_put/put/char/2.cc (test_02): Allow either
+ "Son" or "So" as abbreviated name for Sunday in de_DE locale.
+ * testsuite/22_locale/time_put/put/wchar_t/2.cc (test_02): Likewise.
+
+2003-09-26 Brad Spencer <spencer@infointeractive.com>
+
+ * testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc:
+ Explicitly qualify exceptions.
+ * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Same.
+ * testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
+ * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
+ * testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
+
+2003-09-25 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/12352
+ * src/localename.cc (locale::_Impl::_Impl(const _Impl&,
+ size_t)): Don't leak if memory allocations for _M_facets,
+ _M_caches, and _M_names fail.
+ (locale::_Impl::_Impl(const char*, size_t)): Ditto.
+ (locale::_Impl::_M_replace_categories(const _Impl*,
+ category)): Ditto.
+ (locale::_Impl::_M_install_facet(const locale::id*,
+ const facet*)): Ditto.
+ * include/bits/locale_classes.h (locale::locale(const locale&,
+ _Facet*)): Don't leak memory.
+ * testsuite/22_locale/locale/cons/12352.cc: New, from the PR.
+
+ * src/localename.cc (locale::_Impl::_Impl(facet**, size_t,
+ bool)): Qualify with std:: strcpy, tweak.
+ * include/bits/locale_classes.h
+ (locale::_Impl::_M_check_same_name): Qualify strcmp.
+
+2003-09-25 Brad Spencer <spencer@infointeractive.com>
+
+ PR libstdc++/6072
+ * acinclude.m4: Split out checks for vfwscanf, vswscanf, vwscanf,
+ wcstof, iswblank.
+ * aclocal.m4: Regenerate.
+ * config.h.in: Regenerate.
+ * configure: Regenerate.
+ * crossconfig.m4: Add in wchar_t bits for solaris crosses.
+ * config/io/basic_file_stdio.cc: Guard unistd.h.
+ * include/c_compatibility/wchar.h: Guard extra wchar_t functionality.
+ * include/c_std/std_cwchar.h: Same.
+ * include/c_std/std_cwctype.h: Same.
+
+2003-09-25 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/11065
+ * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_is): Fix.
+ * config/locale/generic/ctype_members.cc: Same.
+ * testsuite/22_locale/ctype/is/char/1.cc: Initialize mask.
+ * testsuite/22_locale/ctype/is/wchar_t/1.cc: Same.
+
+ * config/os/generic/ctype_inline.h: Update.
+
+2003-09-25 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * src/Makefile.am (version_dep): New variable.
+ (libstdc___la_DEPENDENCIES): Use it to add dependency on
+ libstdc++-symbol.ver only when using symbol versioning.
+ * src/Makefile.in: Regenerate.
+
+2003-09-23 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_facets.tcc: Tweak to avoid warnings.
+ * testsuite/testsuite_hooks.h: Same.
+ * testsuite/*/*.cc: Same.
+
+2003-09-22 Petur Runolfsson <peturr02@ru.is>
+
+ * include/bits/istream.tcc (basic_istream::read,
+ basic_istream::readsome, basic_istream::putback,
+ basic_istream::unget, operator>>(basic_istream, CharT)):
+ Avoid redundant setstate(failbit) calls when sentry::operator bool()
+ returns false.
+
+2003-09-22 Carlo Wood <carlo@alinoe.com>
+
+ PR libstdc++/12365
+ * include/bits/demangle.h (qualifier(int, cv_qualifier_nt,
+ char const*, int, int)): Remove unused identifier
+ cv_qualifier for overloaded constructor.
+
+2003-09-18 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/11504
+ * acinclude.m4 (GLIBCXX_EXPORT_FLAGS): Add -Wcast-qual to
+ WARN_FLAGS, remove -Wno-format.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+
+2003-09-18 Petur Runolfsson <peturr02@ru.is>
+
+ * config/io/basic_file_stdio.cc (sys_getc, sys_ungetc): Delete.
+ * config/io/basic_file_stdio.h: Same.
+ * include/std/std_fstream.h (__ctype_type): Delete.
+ * include/std/std_streambuf.h (__ctype_type, __state_type): Delete.
+
+2003-09-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/12239
+ * configure.host (abi_baseline_pair): Error out on solaris2
+ configurations without a minor version number.
+
+2003-09-13 Phil Edwards <phil@codesourcery.com>
+
+ * docs/doxygen/run_doxygen: Clear GENERATE_TAGFILE entirely
+ if man pages are on.
+ * docs/doxygen/user.cfg.in: And here.
+
+2003-09-10 Daniel Jacobowitz <drow@mvista.com>
+ Andreas Jaeger <aj@suse.de>
+
+ PR libstdc++/12189
+ * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Don't build
+ abi_check if cross compiling.
+ * aclocal.m4: Regenerated.
+ * configure: Regenerated.
+
+2003-09-10 Jeffrey D. Oldham <oldham@codesourcery.com>
+
+ * libsupc++/vec.cc (__cxa_vec_new2): If the allocator returns
+ NULL, return NULL. This reflects a C++ ABI change 2003 Sep 05.
+ (__cxa_vec_new3): Likewise.
+
+2003-09-10 Petur Runolfsson <peturr02@ru.is>
+
+ * include/bits/fstream.tcc (basic_filebuf::seekoff):
+ Use codecvt::length to handle variable-width stateless encodings
+ correctly.
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: New test.
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: New test.
+
+2003-09-10 Alan Modra <amodra@bigpond.net.au>
+
+ * config/io/basic_file_stdio.cc (_M_open_mode): Assign __p_mode
+ rather than or'ing.
+
+2003-09-09 Alan Modra <amodra@bigpond.net.au>
+
+ * configure: Regenerate.
+
+2003-09-09 David Edelsohn <edelsohn@gnu.org>
+
+ * src/ios.cc (ios_base::Init::Init): Remove unnecessary
+ qualifier from _S_synced_with_stdio.
+
+2003-09-09 Bernardo Innocenti <bernie@develer.com>
+
+ * include/c_std/std_cstdlib.h: Avoid using missing C library symbols.
+
+2003-09-04 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/9028
+ * include/bits/fstream.tcc
+ (basic_filebuf::_M_destroy_internal_buffer): Destroy _M_ext_buf.
+ (basic_filebuf::basic_filebuf): Initialize _M_ext_buf,
+ _M_ext_buf_size, _M_ext_next and _M_ext_end.
+ (basic_filebuf::underflow): Handle variable-width stateless
+ encodings (codecvt::encoding() == 0), including UTF-8.
+ * include/std/std_fstream.h (basic_filebuf):
+ Declare _M_ext_buf, _M_ext_buf_size, _M_ext_next, _M_ext_end.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: New test.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: New test.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: New test.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: New test.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: New test.
+ * testsuite/27_io/objects/wchar_t/12.cc: New test.
+ * testsuite/27_io/objects/wchar_t/13.cc: New test.
+
+2003-09-04 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/faq/index.html: Note that a namespace alias can't be
+ used when specialising templates in extension namespace.
+ * docs/html/faq/index.txt: Regenerate.
+
+2003-09-03 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/12048
+ * include/ext/stdio_sync_filebuf.h
+ (stdio_sync_filebuf::_M_unget_buf): Declare it.
+ (stdio_sync_filebuf::stdio_sync_filebuf): Initialize _M_unget_buf.
+ (stdio_sync_filebuf::uflow): Store the returned character in
+ _M_unget_buf.
+ (stdio_sync_filebuf::pbackfail): If argument is eof(), pass
+ _M_unget_buf to syncungetc(). Set _M_unget_buf to eof().
+ (stdio_sync_filebuf<char>::xsgetn): Store last read character in
+ _M_unget_buf, if any, else eof().
+ (stdio_sync_filebuf<wchar_t>::xsgetn: Store last read character in
+ _M_unget_buf, if any, else eof().
+ * testsuite/27_io/objects/char/12048.cc: Rename to...
+ * testsuite/27_io/objects/char/12048-1.cc: ...this.
+ * testsuite/27_io/objects/char/12048-2.cc: New test.
+ * testsuite/27_io/objects/char/12048-3.cc: New test.
+ * testsuite/27_io/objects/char/12048-4.cc: New test.
+ * testsuite/27_io/objects/char/12048-5.cc: New test. XFAIL.
+ * testsuite/27_io/objects/wchar_t/12048-1.cc: New test.
+ * testsuite/27_io/objects/wchar_t/12048-2.cc: New test.
+ * testsuite/27_io/objects/wchar_t/12048-3.cc: New test.
+ * testsuite/27_io/objects/wchar_t/12048-4.cc: New test.
+ * testsuite/27_io/objects/wchar_t/12048-5.cc: New test. XFAIL.
+ * testsuite/ext/stdio_sync_filebuf_char.cc
+ (test02, test03, test04, test05): New tests.
+ * testsuite/ext/stdio_sync_filebuf_wchar_t.cc
+ (test02, test03, test04, test05): New tests.
+
+2003-09-03 Petur Runolfsson <peturr02@ru.is>
+
+ * docs/html/27_io/howto.html: setbuf(0, 0) has no effect on
+ stringbuf or strstreambuf. Fix typos.
+
+2003-09-02 Phil Edwards <phil@codesourcery.com>
+
+ * acinclude.m4 (GLIBCXX_ENABLE_HOSTED): #define _GLIBCXX_HOSTED
+ appropriately.
+ * config.h.in: Add _GLIBCXX_HOSTED.
+ * libsupc++/eh_term_handler.cc: Test it here; initialize
+ __terminate_handler to std::abort if freestanding.
+ * aclocal.m4, configure: Regenerated.
+ * docs/html/configopts.html: Document --disable-hosted-libstdcxx.
+
+2003-08-29 Nathan Myers <ncm@cantrip.org>
+
+ PR libstdc++/11990
+ * include/bits/locale_facets.tcc (__pad): delete dead code.
+
+2003-08-28 Alan Modra <amodra@bigpond.net.au>
+
+ * configure.ac: Test $with_cross_host against $build_alias, not $build.
+ * configure: Regenerate.
+
+2003-08-27 Petur Runolfsson <peturr02@ru.is>
+
+ * testsuite/27_io/objects/wchar_t/10.cc: Move wcout stuff...
+ * testsuite/27_io/objects/wchar_t/11.cc: ...here. New file.
+
+2003-08-27 Phil Edwards <pme@gcc.gnu.org>
+
+ * Makefile.am: Remove trailing whitespace. Remove needless
+ "foo = @foo@" assignments. Replace direct uses of @foo@ with $(foo).
+ * include/Makefile.am: Likewise.
+ * libmath/Makefile.am: Likewise.
+ * libsupc++/Makefile.am: Likewise.
+ * po/Makefile.am: Likewise.
+ * src/Makefile.am: Likewise.
+ * testsuite/Makefile.am: Likewise.
+
+ * Makefile.in, include/Makefile.in, libmath/Makefile.in,
+ libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
+ testsuite/Makefile.in: Regenerated.
+
+2003-08-27 Phil Edwards <pme@gcc.gnu.org>
+
+ * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Change quoting of
+ includedir.
+ * aclocal.m4, configure: Regenerate.
+
+2003-08-27 Daniel Jacobowitz <drow@mvista.com>
+
+ * acinclude.m4: Include no-executables.m4.
+ * configure.ac: Uncomment GCC_NO_EXECUTABLES.
+ * aclocal.m4: Regenerated.
+ * configure: Regenerated.
+
+2003-08-27 Daniel Jacobowitz <drow@mvista.com>
+
+ * acinclude.m4: Don't call AC_ISC_POSIX.
+ * aclocal.m4: Regenerated.
+ * configure: Regenerated.
+
+2003-08-27 Phil Edwards <pme@gcc.gnu.org>
+
+ * acinclude.m4 (GLIBCXX_CONDITIONAL): New macro. Wrap
+ AM_CONDITIONAL. Replace all calls to AM_CONDITIONAL with this one.
+ (GLIBCXX_ENABLE_HOSTED): New macro, sets new variable is_hosted,
+ used elsewhere in this file.
+ (GLIBCXX_EVALUATE_CONDITIONALS): New macro...
+ * configure.ac: ...called here to expand all conditionals.
+ * Makefile.am: Conditionalize SUBDIRS on GLIBCXX_HOSTED.
+ * include/Makefile.am: Remove redundant gxx_include_dir assignment.
+ (install-freestanding-headers): New target, a subset of
+ install-headers. Conditionalize install-data-local on GLIBCXX_HOSTED.
+
+ * aclocal.m4, configure, Makefile.in, include/Makefile.in,
+ libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
+ src/Makefile.in, testsuite/Makefile.in: Regenerated.
+
+2003-08-26 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/doxygen/run_doxygen: Shell fixes. Remove hardcoded local
+ pathnames from generated tag file.
+
+2003-08-26 Phil Edwards <pme@gcc.gnu.org>
+
+ * Makefile.am: Add comment.
+ * acinclude.m4 (GLIBCXX_CONFIGURE): Set new glibcxx_SUBDIRS and
+ SUBDIRS variables.
+ * configure.ac: Use them both here, instead of hardcoded lists.
+
+ * fragment.am: Add STAMP varaible.
+ * include/Makefile.am: Cosmetic whitespace cleanup. Use $(LN_S)
+ instead of @LN_S@.
+ (stamp-*): Move file creation rule outside of 'if' branches to
+ ensure the stamp-* files are actually updated. Use $(STAMP).
+ * src/Makefile.am: Remove now-nonexistant variable.
+ * libsupc++/Makefile.am: Likewise. Snap the assignment chain
+ for -prefer-pic.
+ * po/Makefile.am: Include same fragment as all the others.
+
+ * aclocal.m4, configure, Makefile.in, include/Makefile.in,
+ libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in: Regenerated.
+
+2003-08-26 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite/data/cin_unget-1.txt: New.
+ * testsuite/27_io/objects/char/12048.cc: New.
+
+2003-08-25 Zack Weinberg <zack@codesourcery.com>
+
+ * config/os/hpux/os_defines.h: Unconditionally define
+ _GLIBCXX_GTHREAD_USE_WEAK to 0.
+
+2003-08-19 Geoffrey Keating <geoffk@apple.com>
+
+ * crossconfig.m4 (*-darwin*): Add a large and boring stanza for
+ crosses to Darwin targets.
+ * configure: Regenerate.
+
+2003-08-19 Petur Runolfsson <peturr02@ru.is>
+
+ * include/ext/ropeimpl.h: #include <ostream> instead of <iostream>
+
+2003-08-17 Phil Edwards <pme@gcc.gnu.org>
+
+ * configure.ac: GCC_NO_EXECUTABLES was supposed to be commented
+ in the patch from 3 minutes ago. Boy, is my face red.
+ * configure: At least I remembered to regenerate this.
+
+2003-08-17 Phil Edwards <pme@gcc.gnu.org>
+
+ * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Remove LIBMATH_INCLUDES
+ and LIBSUPCXX_INCLUDES. Re-purpose TOPLEVEL_INCLUDES to refer to
+ things from the top level.
+ * configure.ac (GLIBCXX_IS_NATIVE): Determine earlier and re-order.
+ Comment out the conditionals for CANADIAN and GLIBCXX_BUILD_LIBMATH
+ (currently unused). Strip the fake-VPATH shell fragment from
+ automake-generated rules, if present.
+ * linkage.m4: Add comment.
+
+ * fragment.am: New file, containing factored-out common settings.
+ (AM_CPPFLAGS): Absorb the deprecated INCLUDES variable contents.
+ * Makefile.am: Include fragment.am. Remove common variables.
+ * include/Makefile.am: Likewise.
+ * libmath/Makefile.am: Likewise.
+ * libsupc++/Makefile.am: Likewise.
+ * po/Makefile.am: Likewise. Print rules during check.
+ * src/Makefile.am: Likewise.
+ * testsuite/Makefile.am: Likewise.
+
+ * aclocal.m4, configure, Makefile.in, include/Makefile.in,
+ libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
+ src/Makefile.in, testsuite/Makefile.in: Regenerate.
+
+2003-08-11 John Levon <levon@movementarian.org>
+
+ * docs/html/ext/howto/guide.html (GLIBCXX_FORCE_NEW): Update
+ remaining places for the name change from GLIBCPP_FORCE_NEW
+ to GLIBCXX_FORCE_NEW
+
+2003-08-11 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/basic_ios.h: Remove *_iter typedefs, change num*
+ typedefs to num_*.
+ * include/bits/basic_ios.tcc: Same.
+ * include/bits/istream.tcc: Same.
+ * include/bits/locale_facets.h: Same.
+ * include/bits/ostream.tcc: Same.
+ * include/std/std_istream.h: Same.
+ * include/std/std_ostream.h: Same.
+ * testsuite/26_numerics/complex_inserters_extractors.cc: Fix.
+
+ * include/ext/rope: Remove build warning.
+
+2003-08-11 Andreas Jaeger <aj@suse.de>
+
+ * include/Makefile.am (stamp-c_base): Add dependency on stamp-bits
+ to make SMP-safe.
+ * include/Makefile.in: Regenerated.
+
+2003-08-11 Phil Edwards <pme@gcc.gnu.org>
+
+ * acinclude.m4 (GLIBCXX_CONFIGURE): Unprecious CC and CFLAGS
+ when calling AC_PROG_CC.
+ * aclocal.m4, configure: Regenerate.
+
+2003-08-11 Phil Edwards <pme@gcc.gnu.org>
+
+ * acinclude.m4: Properly quote variable which will be expanded
+ inside makefiles. Use CXX instead of CC to extract compiler info.
+ * configure.ac (AC_INIT): Use the new 4-arg form to finally get the
+ correct form in PACKAGE.
+ * aclocal.m4, configure: Regenerate.
+
+2003-08-08 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/Makefile.am (check-abi): Change libstdc++-v3 to libstdc++.
+ (check-abi-verbose): Same.
+ * testsuite/testsuite_performance.h (report_performance): Same.
+
+2003-08-08 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite/testsuite_performance.h (__FreeBSD__): Add fake mallinfo.
+
+2003-08-07 Doug Gregor <dgregor@apple.com>
+
+ * include/bits/char_traits.h (char_traits::not_eof): Match operand
+ types in ? :.
+
+2003-08-07 Bernardo Innocenti <bernie@develer.com>
+
+ PR libstdc++/11784
+ * libstdc++-v3/config/cpu/m68k/atomicity.h (__exchange_and_add):
+ Replace variants with new BSET-based version.
+
+2003-08-07 Carlo Wood <carlo@alinoe.com>
+
+ * include/bits/demangle.h: Do not use cctype functions that depend
+ on locale.
+
+2003-08-05 Phil Edwards <pme@gcc.gnu.org>
+
+ * configure.in: Rename...
+ * configure.ac: ...to this.
+ * docs/html/17_intro/porting.texi: Update name.
+
+ * docs/html/17_intro/porting.html: Regenerate.
+ * config.h.in, Makefile.in, include/Makefile.in, libmath/Makefile.in,
+ libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
+ testsuite/Makefile.in: Regenerate (picks up new dependancy).
+
+2003-08-05 Phil Edwards <pme@gcc.gnu.org>
+
+ * acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Put down the crack
+ pipe, open the window to let out the fumes, redo the option-handling
+ logic to properly execute the detection test.
+ * aclocal.m4, configure: Regenerate.
+
+2003-08-04 Phil Edwards <pme@gcc.gnu.org>
+
+ Convert to new autotools.
+ * acconfig.h: Update with correct names.
+ * configure.host (ATOMICITYH): Rename to atomicity_include_dir.
+ (qnx6.[12]*): 'q' comes before 's', not after 'w'.
+ * configure.in: Update. Split hardcoded cross-configury settings
+ out to...
+ * crossconfig.m4: ...here. New file. Contents untouched.
+ * acinclude.m4: Reorganize and rewrite as needed. Split large
+ chunks out to...
+ * linkage.m4: ...here. New file. Math and stdlib linkage tests.
+ Contents untouched.
+ * scripts/testsuite_flags.in: Update.
+
+ * Makefile.am: Remove unneeded AUTOMAKE_OPTIONS settings and other
+ variables (already generated by automake).
+ * include/Makefile.am: Ditto.
+ * libmath/Makefile.am: Ditto.
+ * libsupc++/Makefile.am: Ditto.
+ * po/Makefile.am: Ditto.
+ * src/Makefile.am: Ditto.
+
+ * aclocal.m4: Regenerate using new versions.
+ * config.h.in: Ditto.
+ * configure: Ditto.
+ * Makefile.in: Ditto.
+ * include/Makefile.in: Ditto.
+ * libmath/Makefile.in: Ditto.
+ * libsupc++/Makefile.in: Ditto.
+ * po/Makefile.in: Ditto.
+ * src/Makefile.in: Ditto.
+ * testsuite/Makefile.in: Ditto.
+
+2003-08-04 Phil Edwards <pme@gcc.gnu.org>
+
+ * po/libstdc++.pot: Re-extract/regenerate.
+
+2003-08-04 Phil Edwards <pme@gcc.gnu.org>
+
+ * testsuite/Makefile.am (DEJATOOL,EXPECT,RUNTEST,RUNTESTFLAGS):
+ Remove unneeded variable assignments. Leave them for automake.
+ * testsuite/lib/libstdc++-v3.exp: Rename...
+ * testsuite/lib/libstdc++.exp: ...to this. Adjust function names
+ accordingly.
+ * testsuite/libstdc++-v3.dg/dg.exp: Rename...
+ * testsuite/libstdc++-dg/normal.exp: ...to this. Adjust function
+ names accordingly.
+
+2003-08-04 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/doxygen/guide.html: run_doxygen uses bash.
+ * docs/doxygen/mainpage.html: We'll be shipping tag files.
+ * docs/doxygen/run_doxygen: Tweaks and improvements.
+ * docs/doxygen/user.cfg.in: Set GENERATE_TAGFILE.
+ * docs/html/install.html: Update autoconf/automake requirements.
+ * docs/html/test.html: Add section describing DejaGNU support.
+ * docs/html/17_intro/confdeps.dot: New file, generates...
+ * docs/html/17_intro/confdeps.png: ...this new file.
+ * docs/html/Makefile: Generated here.
+ * docs/html/17_intro/configury.html: New file.
+
+2003-07-31 Phil Edwards <pme@gcc.gnu.org>
+
+ * testsuite/lib/libstdc++-v3-dg.exp: Rename...
+ * testsuite/lib/libstdc++-v3.exp: ...to this.
+ * testsuite/libstdc++-v3.dg/dg.exp: No special case needed now.
+
+2003-07-31 Doug Gregor <dgregor@apple.com>
+
+ Add user specialization tests.
+ * testsuite/23_containers/deque/1.cc: New.
+ * testsuite/23_containers/list/1.cc: New.
+ * testsuite/23_containers/map/1.cc: New.
+ * testsuite/23_containers/multimap/1.cc: New.
+ * testsuite/23_containers/multiset/1.cc: New.
+ * testsuite/23_containers/set/1.cc: New.
+ * testsuite/23_containers/vector/1.cc: New.
+
+2003-07-31 Benjamin Kosnik <bkoz@redhat.com>
+
+ Reshuffle 23_containers testsuite.
+ * 23_containers/adaptors.cc, bitset_ctor.cc,bitset_members.cc,
+ bitset_shift.cc, deque_ctor.cc, deque_operators.cc,
+ list_capacity.cc, list_ctor.cc, list_modifiers.cc, list_operators.cc,
+ map_insert.cc, map_operators.cc, map_operators_neg.cc, multiset.cc,
+ set_operators_neg.cc, vector_bool.cc, vector_capacity.cc,
+ vector_ctor.cc, vector_element_access.cc, vector_modifiers.cc,
+ vector_resize.cc: Split into...
+ * 23_containers/bitset/cons/1.cc: New.
+ * 23_containers/bitset/cons/6282.cc: New.
+ * 23_containers/bitset/count/6124.cc: New.
+ * 23_containers/bitset/operations/1.cc: New.
+ * 23_containers/bitset/operations/2.cc: New.
+ * 23_containers/bitset/test/1.cc: New.
+ * 23_containers/bitset/to_ulong/1.cc: New.
+ * 23_containers/deque/cons/1.cc: New.
+ * 23_containers/deque/cons/2.cc: New.
+ * 23_containers/deque/operators/1.cc: New.
+ * 23_containers/list/capacity/1.cc: New.
+ * 23_containers/list/cons/1.cc: New.
+ * 23_containers/list/cons/2.cc: New.
+ * 23_containers/list/cons/3.cc: New.
+ * 23_containers/list/cons/4.cc: New.
+ * 23_containers/list/cons/5.cc: New.
+ * 23_containers/list/cons/6.cc: New.
+ * 23_containers/list/cons/7.cc: New.
+ * 23_containers/list/cons/8.cc: New.
+ * 23_containers/list/cons/9.cc: New.
+ * 23_containers/list/modifiers/1.cc: New.
+ * 23_containers/list/modifiers/2.cc: New.
+ * 23_containers/list/modifiers/3.cc: New.
+ * 23_containers/list/operators/1.cc: New.
+ * 23_containers/list/operators/2.cc: New.
+ * 23_containers/list/operators/3.cc: New.
+ * 23_containers/list/operators/4.cc: New.
+ * 23_containers/map/insert/1.cc: New.
+ * 23_containers/map/operators/1.cc: New.
+ * 23_containers/map/operators/1_neg.cc: New.
+ * 23_containers/multiset/insert/1.cc: New.
+ * 23_containers/priority_queue/members/7161.cc: New.
+ * 23_containers/queue/members/7157.cc: New.
+ * 23_containers/set/operators/1_neg.cc: New.
+ * 23_containers/stack/members/7158.cc: New.
+ * 23_containers/vector/bool/1.cc: New.
+ * 23_containers/vector/bool/6886.cc: New.
+ * 23_containers/vector/capacity/1.cc: New.
+ * 23_containers/vector/capacity/2.cc: New.
+ * 23_containers/vector/capacity/8230.cc: New.
+ * 23_containers/vector/cons/1.cc: New.
+ * 23_containers/vector/cons/2.cc: New.
+ * 23_containers/vector/cons/3.cc: New.
+ * 23_containers/vector/cons/4.cc: New.
+ * 23_containers/vector/cons/6513.cc: New.
+ * 23_containers/vector/element_access/1.cc: New.
+ * 23_containers/vector/modifiers/1.cc: New.
+ * 23_containers/vector/modifiers/2.cc: New.
+ * 23_containers/vector/resize/1.cc: New.
+
+2003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * testsuite/thread/pthread1.cc: Add alpha*-*-osf* to dg-do run,
+ dg-options.
+ * testsuite/thread/pthread2.cc: Likewise.
+ * testsuite/thread/pthread3.cc: Likewise.
+ * testsuite/thread/pthread4.cc: Likewise.
+ * testsuite/thread/pthread5.cc: Likewise.
+ * testsuite/thread/pthread6.cc: Likewise.
+ * testsuite/thread/pthread7-rope.cc: Likewise.
+
+2003-07-30 Phil Edwards <pme@gcc.gnu.org>
+
+ * include/bits/c++config: Partial reversion (comment placement) of
+ previous patch.
+
+2003-07-30 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/c++config (_GLIBCXX_FULLY_COMPLIANT_HEADERS): Remove.
+ (_GLIBCXX_NO_TEMPLATE_EXPORT): To _GLIBCXX_EXPORT_TEMPLATE.
+ (_GLIBCXX_AT_AT): Remove.
+ (__USE_MALLOC): Remove.
+ * include/std/std_fstream.h: Modify.
+ * include/bits/basic_ios.h: Same.
+ * include/bits/valarray_array.h: Same.
+ * include/c_std/std_cmath.h: Same.
+ * include/c_std/cmath.tcc: Same.
+ * include/std/std_vector.h: Same.
+ * include/std/std_string.h: Same.
+ * include/std/std_stack.h: Same.
+ * include/std/std_queue.h: Same.
+ * include/std/std_list.h: Same.
+ * include/std/std_deque.h: Same.
+ * include/std/std_streambuf.h: Same.
+ * include/std/std_sstream.h: Same.
+ * include/std/std_ostream.h: Same.
+ * include/std/std_istream.h: Same.
+ * include/bits/valarray_array.tcc: Same, format.
+
+ * include/c/std_cctype.h: Fix include guards.
+ * include/c/std_cerrno.h: Same.
+ * include/c/std_cfloat.h: Same.
+ * include/c/std_climits.h: Same.
+ * include/c/std_clocale.h: Same.
+ * include/c/std_cmath.h: Same.
+ * include/c/std_csetjmp.h: Same.
+ * include/c/std_csignal.h: Same.
+ * include/c/std_cstdarg.h: Same.
+ * include/c/std_cstddef.h: Same.
+ * include/c/std_cstdio.h: Same.
+ * include/c/std_cstdlib.h: Same.
+ * include/c/std_cstring.h: Same.
+ * include/c/std_ctime.h: Same.
+ * include/c/std_cwchar.h: Same.
+ * include/c/std_cwctype.h: Same.
+ * include/c_std/cmath.tcc: Same.
+ * include/c_std/std_cmath.h: Same.
+
+2003-07-30 Gawain Bolton <gp.bolton@computer.org>
+
+ PR libstdc++/11504.
+ * include/bits/stl_tree.h: Replace C-style casts with C++-style
+ casts. Changes to avoid casting away constness. Eliminate
+ _Rb_tree_base_iterator class. Change _Rb_tree_iterator to use
+ initialization lists. Move out implementation of __black_count()
+ to...
+ * src/stl_tree.cc: ...here and rename _Rb_tree_black_count().
+ Rename_Rb_tree_base_iterator::_M_increment() to
+ _Rb_tree_increment and _Rb_tree_base_iterator::_M_decrement() to
+ _Rb_tree_decrement.
+ * config/linker-map.gnu: Add and change symbols here.
+
+2003-07-30 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/22_locale/howto.html: Use locale::classic() instead
+ of locale("C").
+
+2003-07-28 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/testsuite_hooks.h: Remove list include.
+ (func_callback): Define as unique type, not std::list.
+ Change DEBUG_ASSERT to _GLIBCXX_ASSERT.
+ * testsuite/libstdc++-v3.dg/dg.exp: Same.
+ * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Same.
+ * testsuite/23_containers/bitset_ctor.cc:
+ * testsuite/17_intro/header_ciso646.cc: Remove DEBUG_ASSERT.
+ * testsuite/18_support/numeric_limits.cc: Same.
+ * testsuite/21_strings/basic_string/append/char/1.cc: Same.
+ * testsuite/21_strings/basic_string/append/wchar_t/1.cc: Same.
+ * testsuite/21_strings/basic_string/compare/char/1.cc: Same.
+ * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Same.
+ * testsuite/21_strings/basic_string/element_access/char/1.cc: Same.
+ * testsuite/21_strings/basic_string/element_access/char/2.cc: Same.
+ * testsuite/21_strings/basic_string/element_access/char/3.cc: Same.
+ * testsuite/21_strings/basic_string/element_access/wchar_t/1.cc: Same.
+ * testsuite/21_strings/basic_string/element_access/wchar_t/2.cc: Same.
+ * testsuite/21_strings/basic_string/element_access/wchar_t/3.cc: Same.
+ * testsuite/21_strings/basic_string/find/char/1.cc: Same.
+ * testsuite/21_strings/basic_string/find/char/2.cc: Same.
+ * testsuite/21_strings/basic_string/find/char/3.cc: Same.
+ * testsuite/21_strings/basic_string/find/wchar_t/1.cc: Same.
+ * testsuite/21_strings/basic_string/find/wchar_t/2.cc: Same.
+ * testsuite/21_strings/basic_string/find/wchar_t/3.cc: Same.
+ * testsuite/21_strings/basic_string/insert/char/1.cc: Same.
+ * testsuite/21_strings/basic_string/insert/char/2.cc: Same.
+ * testsuite/21_strings/basic_string/insert/wchar_t/1.cc: Same.
+ * testsuite/21_strings/basic_string/insert/wchar_t/2.cc: Same.
+ * testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
+ * testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
+ * testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
+ * testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
+ * testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
+ * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
+ * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
+ * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
+ * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
+ * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
+ * testsuite/21_strings/basic_string/operators/char/1.cc: Same.
+ * testsuite/21_strings/basic_string/operators/char/2.cc: Same.
+ * testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Same.
+ * testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Same.
+ * testsuite/21_strings/basic_string/replace/char/1.cc: Same.
+ * testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Same.
+ * testsuite/21_strings/basic_string/rfind/char/1.cc: Same.
+ * testsuite/21_strings/basic_string/rfind/char/2.cc: Same.
+ * testsuite/21_strings/basic_string/rfind/char/3.cc: Same.
+ * testsuite/21_strings/basic_string/rfind/wchar_t/1.cc: Same.
+ * testsuite/21_strings/basic_string/rfind/wchar_t/2.cc: Same.
+ * testsuite/21_strings/basic_string/rfind/wchar_t/3.cc: Same.
+ * testsuite/21_strings/basic_string/substr/char/1.cc: Same.
+ * testsuite/21_strings/basic_string/substr/wchar_t/1.cc: Same.
+ * testsuite/23_containers/bitset_ctor.cc: Same.
+ * testsuite/23_containers/bitset_shift.cc: Same.
+ * testsuite/23_containers/vector_ctor.cc: Same.
+ * testsuite/23_containers/vector_element_access.cc: Same.
+ * testsuite/24_iterators/istreambuf_iterator.cc: Same.
+ * testsuite/24_iterators/iterator.cc: Same.
+ * testsuite/24_iterators/ostreambuf_iterator.cc: Same.
+ * testsuite/25_algorithms/lower_bound.cc: Same.
+ * testsuite/26_numerics/complex_inserters_extractors.cc: Same.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc: Same.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc: Same.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc: Same.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc: Same.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc: Same.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc: Same.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc: Same.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc: Same.
+ * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc: Same.
+ * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
+ Same.
+
+2003-07-28 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/doxygen/user.cfg.in, docs/html/abi.txt, docs/html/debug.html,
+ docs/html/test.html, docs/html/17_intro/headers_cc.txt,
+ docs/html/17_intro/howto.html, docs/html/ext/howto.html: Change
+ GLIBCPP to GLIBCXX (and explain as needed).
+
+2003-07-28 Phil Edwards <pme@gcc.gnu.org>
+
+ * README: Update.
+
+2003-07-28 Phil Edwards <pme@gcc.gnu.org>
+
+ * testsuite/22_locale/messages/members/char/1.cc,
+ testsuite/22_locale/messages/members/char/2.cc,
+ testsuite/22_locale/messages/members/char/3.cc,
+ testsuite/22_locale/messages_byname/1.cc: Update comment regarding
+ the origin of LOCALEDIR.
+ * testsuite/lib/libstdc++-v3.exp: New file.
+
+2003-07-25 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/char_traits.h: Update copyright, tweak.
+ * testsuite/ext/pod_char_traits.cc: Explicitly qualify namespace
+ std types.
+
+2003-07-24 Matt Austern <austern@apple.com>
+
+ * /include/bits/char_traits.h (class char_traits): Put all the
+ real work into the new class template __gnu_cxx::char_traits.
+ Gave generic definitions for member functions. Types are taken
+ from the new class template __gnu_cxx::_Char_types.
+ * testsuite/21_strings/char_traits/requirements/short/1.cc: New
+ file. Test of std::char_traits<short>, which serves as a test of
+ the char_traits primary template.
+
+2003-07-24 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/*: Change __gnu_cxx_test to __gnu_test.
+
+2003-07-24 Nathan Myers <ncm-nospam@cantrip.org>
+
+ * testsuite/23_containers/map_operators.cc: Conform to
+ container requirement as value must be Assignable.
+
+2003-07-23 Alexandre Oliva <aoliva@redhat.com>
+
+ * acinclude.m4 (GLIBCXX_ENABLE_PCH): Rework test such that it
+ tests not only generation of pch files, but also their use.
+ * aclocal.m4, configure: Rebuilt.
+
+2003-07-23 Steve Ellcey <sje@cup.hp.com>
+
+ * config/cpu/hppa/atomicity.h: Change
+ _GLIBCXX_INST_GLIBCXX_ATOMICITY_LOCK to _GLIBCXX_INST_ATOMICITY_LOCK
+ to match misc-inst.cc
+
+2003-07-23 Steve Ellcey <sje@cup.hp.com>
+
+ * include/c_std/cmath.tcc: Use _GLIBCXX_ prefix on file guard.
+ * include/c_std/std_cctype.h: Ditto.
+ * include/c_std/std_cerrno.h: Ditto.
+ * include/c_std/std_cfloat.h: Ditto.
+ * include/c_std/std_climits.h: Ditto.
+ * include/c_std/std_clocale.h: Ditto.
+ * include/c_std/std_cmath.h: Ditto.
+ * include/c_std/std_csetjmp.h: Ditto.
+ * include/c_std/std_csignal.h: Ditto.
+ * include/c_std/std_cstdarg.h: Ditto.
+ * include/c_std/std_cstddef.h: Ditto.
+ * include/c_std/std_cstdio.h: Ditto.
+ * include/c_std/std_cstdlib.h: Ditto.
+ * include/c_std/std_cstring.h: Ditto.
+ * include/c_std/std_ctime.h: Ditto.
+ * include/c_std/std_cwchar.h: Ditto.
+ * include/c_std/std_cwctype.h: Ditto.
+ * include/std/std_algorithm.h: Ditto.
+ * include/std/std_bitset.h: Ditto.
+ * include/std/std_complex.h: Ditto.
+ * include/std/std_deque.h: Ditto.
+ * include/std/std_fstream.h: Ditto.
+ * include/std/std_functional.h: Ditto.
+ * include/std/std_iomanip.h: Ditto.
+ * include/std/std_ios.h: Ditto.
+ * include/std/std_iosfwd.h: Ditto.
+ * include/std/std_iostream.h: Ditto.
+ * include/std/std_istream.h: Ditto.
+ * include/std/std_iterator.h: Ditto.
+ * include/std/std_limits.h: Ditto.
+ * include/std/std_list.h: Ditto.
+ * include/std/std_locale.h: Ditto.
+ * include/std/std_map.h: Ditto.
+ * include/std/std_memory.h: Ditto.
+ * include/std/std_numeric.h: Ditto.
+ * include/std/std_ostream.h: Ditto.
+ * include/std/std_queue.h: Ditto.
+ * include/std/std_set.h: Ditto.
+ * include/std/std_sstream.h: Ditto.
+ * include/std/std_stack.h: Ditto.
+ * include/std/std_stdexcept.h: Ditto.
+ * include/std/std_streambuf.h: Ditto.
+ * include/std/std_string.h: Ditto.
+ * include/std/std_utility.h: Ditto.
+ * include/std/std_valarray.h: Ditto.
+ * include/std/std_vector.h: Ditto.
+
+2003-07-22 Doug Gregor <dgregor@apple.com>
+
+ * include/bits/basic_string.h (basic_string::insert): Deprecate
+ GNU extension.
+
+2003-07-21 Benjamin Kosnik <bkoz@redhat.com>
+
+ * scripts/testsuite_flags.in (--build-includes): Remove extraneous
+ paths for libio.
+ * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc
+ (test03): Include typeinfo for bad_cast.
+ * testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
+ * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
+ * testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
+
+2003-07-21 Doug Gregor <dgregor@apple.com>
+
+ * include/bits/boost_concept_check.h:
+ (_EqualityComparableConcept::__constraints): Remove != from the
+ list of constraints; it is not listed in Table 28 of the C++98
+ standard.
+
+2003-07-18 Andreas Jaeger <aj@suse.de>
+
+ * config/abi/sparc-linux-gnu/baseline_symbols.txt: New file.
+ * config/abi/mips-linux-gnu/baseline_symbols.txt: New file.
+ * config/abi/hppa-linux-gnu/baseline_symbols.txt: New file.
+ * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
+
+2003-07-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ * config/linker-map.gnu: Add __moneypunct_cache, __timepunct_cache.
+ * config/locale/generic/messages_members.h: Tweaks.
+ * config/locale/generic/monetary_members.cc
+ (moneypunct::_M_initialize_moneypunct): Use cache.
+ (moneypunct::~moneypunct): Delete cache.
+ * config/locale/generic/time_members.cc:
+ (__timepunct::_M_initialize_timepunct): Use cache.
+ * config/locale/generic/time_members.h:
+ (__timepunct::~__timepunct): Delete cache.
+ (__timepunct::__timepunct): Set cache.
+ * config/locale/gnu/messages_members.h: Tweaks.
+ * config/locale/gnu/monetary_members.cc:
+ (moneypunct::_M_initialize_moneypunct): Use cache.
+ (moneypunct::~moneypunct): Delete cache.
+ * config/locale/gnu/time_members.cc:
+ (__timepunct::_M_initialize_timepunct): Use cache.
+ * config/locale/gnu/time_members.h:
+ (__timepunct::~__timepunct): Delete cache.
+ (__timepunct::__timepunct): Set cache.
+ * include/bits/locale_facets.h (__timepunct_cache): New.
+ (__moneypunct_cache): New.
+ * include/bits/locale_facets.tcc: Tweak.
+ * src/locale.cc (__timepunct::_S_timezones): Adjust for cache.
+ * src/locale-inst.cc: Instantiate caches.
+ * src/globals.cc: Add "C" caches.
+ * src/localename.cc: Use external "C" caches.
+
+2003-07-17 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/doxygen/guide.html: Fix typo.
+
+2003-07-16 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/ext/pod_char_traits.h: Add state template argument.
+
+2003-07-16 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_facets.h (__num_base::_S_atoms_in): Add -+xX.
+ (num_get::_M_convert_int): To _M_insert_int.
+ (num_get::_M_convert_float): To _M_insert_float.
+ * include/bits/locale_facets.tcc (num_get::_M_extract_float):
+ Use caches for ctype, num_get.
+ (num_get::_M_extract_int): Same.
+ (num_get::get(bool)): Same.
+ (__verify_grouping): Use size_t.
+ * src/locale-inst.cc: Update.
+ * src/locale.cc: Adjust _S_atoms_in.
+
+2003-07-16 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/doxygen/mainpage.html: Move building/writing instructions...
+ * docs/doxygen/guide.html: ...to here. New file.
+
+2003-07-16 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/ext/howto.html: Update URL for SGI STL docs.
+ * docs/html/faq/index.html: Same.
+ * docs/html/faq/index.txt: Regenerate.
+
+2003-07-16 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/11528
+ * include/bits/locale_facets.tcc (money_get::do_get):
+ Strip only _leading_ zeros.
+ * testsuite/22_locale/money_get/get/char/11528.cc: Add.
+ * testsuite/22_locale/money_get/get/wchar_t/11528.cc: Add.
+
+2003-07-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * include/ext/hash_map (class hash_multimap): Remove extra
+ semicolons from __glibcxx_class_requires3 entries.
+ * include/ext/hash_set (class hash_set): Ditto.
+ (class hash_multiset): Ditto.
+
+2003-07-15 Petur Runolfsson <peturr02@ru.is>
+
+ * include/bits/char_traits.h (char_traits<wchar_t>::move):
+ Change last parameter from int_type to size_t.
+
+2003-07-15 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/stl_algo.h (includes, set_union, set_intersection,
+ set_difference, set_symmetric_difference, max_element, min_element,
+ next_permutation, prev_permutation, find_first_of, find_end):
+ Document.
+ * include/bits/stl_algobase.h (copy,copy_backward): Clarify overlap
+ restrictions in docs.
+ * include/bits/stl_heap.h (push_heap, pop_heap, make_heap, sort_heap):
+ Document.
+ * docs/doxygen/doxygroups.cc (setoperations): New group.
+
+2003-07-15 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/basic_string.h: Document public functions.
+ * docs/doxygen/TODO: Update c21 todo.
+
+2003-07-15 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/stl_list.h: Document more functions.
+ * docs/doxygen/TODO: Update c23 todo.
+
+2003-07-14 Paolo Carlini <pcarlini@unitus.it>
+
+ * config/locale/gnu/c_locale.h (__convert_from_v): One more
+ qualification.
+
+2003-07-14 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/stl_tempbuf.h: Qualify free with std::.
+ * src/locale.cc: Include <cstdlib>, qualify getenv.
+
+2003-07-14 Paolo Carlini <pcarlini@unitus.it>
+
+ * config/locale/gnu/c_locale.h (__convert_from_v): Include
+ <cstdio>. Qualify names.
+ * config/locale/generic/c_locale.h (__convert_from_v): Ditto.
+
+2003-07-14 Paolo Carlini <pcarlini@unitus.it>
+ Nathan C. Myers <ncm-nospam@cantrip.org>
+
+ PR libstdc++/11378
+ * include/std/std_fstream.h (xsputn): Declare only.
+ * include/bits/fstream.tcc (xsputn): Define, optimize for the
+ always_noconv() case: when __n is sufficiently large flush
+ the buffer and issue a direct write, if possible combining the
+ two with writev in __basic_file<>::xsputn_2.
+ * config/io/basic_file_stdio.h (__basic_file<>::xsputn_2):
+ New, declare.
+ * config/io/basic_file_stdio.cc (__basic_file<>::xsputn_2):
+ Define.
+ * acinclude.m4 (GLIBCXX_CHECK_WRITE): New macro, checking for
+ the availability of writev in <sys/uio.h>.
+ * configure.in: Call here.
+ * acconfig.h: Add undef for the corresponding symbol.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+ * config.h.in: Regenerate.
+ * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Tweak.
+
+ * include/std/std_fstream.h (sync): Constify a variable.
+
+2003-07-14 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/27_io/ios_base/cons/assign_neg.cc: Fix line numbers.
+ * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
+
+2003-07-14 Gabriel Dos Reis <gcc@integrable-solutions.net>
+
+ * config/locale/gnu/c_locale.h (__convert_from_v): Include
+ <cstring> and <cstdlib>. Qualify names.
+
+2003-07-13 Mark Mitchell <mark@codesourcery.com>
+
+ * config/locale/generic/c_locale.h: Include <cstdlib> and
+ <cstring>.
+ * include/bits/boost_concept_check.h: Add this-> to unqualified
+ method calls.
+ * include/bits/deque.tcc: Likewise.
+ * include/bits/locale_facets.h : Likewise.
+ * include/bits/ostream.tcc: Likewise.
+ * include/bits/stl_algo.h: Likewise.
+ * include/bits/stl_bvector.h: Likewise.
+ * include/bits/stl_deque.h: Likewise.
+ * include/bits/stl_list.h: Likewise.
+ * include/bits/stl_tree.h: Likewise.
+ * include/bits/stl_vector.h: Likewise.
+ * include/bits/vector.tcc: Likewise.
+ * include/ext/rope: Likewise.
+ * include/ext/ropeimpl.h: Likewise.
+ * include/ext/stdio_filebuf.h: Likewise.
+
+2003-07-11 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/basic_ios.h (copyfmt): Document.
+ * include/bits/ios_base.h (event, event_callback, register_callback,
+ xalloc, iword, pword): Document.
+ (imbue, ~ios_base): Update docs on callbacks.
+
+2003-07-11 Phil Edwards <pme@gcc.gnu.org>
+
+ * acinclude.m4 (GLIBCC_ENABLE_SYMVERS): Tweak comments. Add
+ warning messages if the environment cannot support symbol versioning.
+ (port_specific_symbol_file): It's plural, add an 's' on the end.
+ * configure.host: Likewise.
+ * src/Makefile.am: Likewise.
+ * config/linker-map.gnu: Remove one semicolon, heh.
+ * scripts/extract_symvers: Don't assume useful 'export' syntax.
+ Set LANG as well as LC_ALL for possibly-broken sort(1)s.
+ * aclocal.m4, configure, src/Makefile.in: Regenerated.
+
+2003-07-09 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_facets.tcc: Use function object for
+ __use_cache instead of template function. Partially specialize for
+ __numpunct<_CharT>.
+ * include/bits/locale_classes.h: Update friend declaration for
+ __use_cache.
+ (_M_install_cache): No throw exception specs.
+ * src/locale.cc: Remove __use_cache specializations.
+ * include/ext/pod_char_traits.h (length): Tweak.
+ * include/bits/locale_facets.h (__numpunct_cache): Remove
+ char_type typedef.
+ * testsuite/testsuite_hooks.h (pod_unsigned_int): Remove.
+ (pod_long): Remove.
+ * testsuite/22_locale/numpunct/members/char/cache_1.cc: New.
+ * testsuite/22_locale/numpunct/members/char/cache_2.cc: New.
+ * testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: New.
+ * testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: New.
+ * testsuite/22_locale/numpunct/members/pod/1.cc: New.
+ * testsuite/22_locale/numpunct/members/pod/2.cc: New.
+
+2003-07-09 Jerry Quinn <jlquinn@optonline.net>
+
+ * src/ios.cc (_M_grow_words): Fix spelling.
+
+2003-07-09 Gawain Bolton <gp.bolton@computer.org>
+
+ * include/bits/stl_tree.h: Move larger member functions in
+ _Rb_tree_base_iterator and _Rb_tree_node to...
+ * src/stl_tree.cc: Here.
+ * src/Makefile.in: Add stl_tree.cc.
+ * src/Makefile.in: Regenerated.
+ * config/linker-map.gnu: Add symbols here.
+
+2003-07-08 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/ext/pod_char_traits.cc: New.
+ * include/ext/pod_char_traits.h: New.
+ * include/Makefile.am (ext_headers): Add pod_char_traits.h.
+ * include/Makefile.in: Regenerate.
+ * docs/html/21_strings/howto.html: Update.
+
+2003-07-08 Gawain Bolton <gp.bolton@computer.org>
+
+ * testsuite/performance/list_create_fill_sort.cc: New.
+
+2003-07-08 Benjamin Kosnik <bkoz@redhat.com>
+
+ * config/locale/generic/numeric_members.cc: Correct type info.
+ * config/locale/gnu/numeric_members.cc: Same.
+ * include/bits/locale_facets.h: Same.
+
+ * include/bits/char_traits.h: Correct spacing.
+
+ * src/locale.cc: Wrap to 80 col.
+
+2003-07-07 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_complex.h: Partially revert last
+ changes: cmath functions must not be qualified.
+
+2003-07-06 Phil Edwards <pme@gcc.gnu.org>
+
+ * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Do not test for binutils
+ 2.11 with globbing backport fix.
+ * aclocal.m4, configure: Regenerated.
+
+2003-07-06 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_fstream.h (xsputn): Don't call _M_destroy_pback:
+ if output is at all possible (!_M_reading), cannot be active.
+
+ * include/std/std_fstream.h: Tweak comments to doxygen style.
+
+2003-07-06 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/locale_classes.h: Fully qualify standard
+ functions with std::, thus avoiding Koenig lookup.
+ * include/bits/locale_facets.tcc: Likewise.
+ * src/locale.cc: Likewise.
+ * src/localename.cc: Likewise.
+
+2003-07-06 Phil Edwards <pme@gcc.gnu.org>
+
+ * include/bits/allocator_traits.h: Fix doxygen markup.
+ * include/ext/mt_allocator.h: Likewise.
+
+2003-07-06 Phil Edwards <pme@gcc.gnu.org>
+
+ * testsuite/testsuite_hooks.h: Guard against a missing unlink().
+
+2003-07-05 Phil Edwards <pme@gcc.gnu.org>
+
+ * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Bump minimal version
+ requirement. Add port_specific_symbol_file variable.
+ * configure.host: Add docs for port_specific_symbol_file.
+ Clean up try_cpu block for x86.
+ * config/linker-map.gnu: No more "last symbol can't have a
+ semicolon" kaka. Add hook for port-specific symbols.
+ * src/Makefile.am: Remove trailing whitespace.
+ (libstdc++-symbol.ver): Detect the presence of port-specific
+ symbols, and add them accordingly.
+
+ * docs/html/17_intro/porting.texi: Bring up to date.
+
+ * src/Makefile.in, aclocal.m4, configure,
+ docs/html/17_intro/porting.html: Regenerated.
+
+2003-07-05 Phil Edwards <pme@gcc.gnu.org>
+
+ * scripts/create_testsuite_files: New file.
+ * testsuite/Makefile.am (all-local, check-performance): Use it.
+ * testsuite/lib/libstdc++-v3-dg.exp (v3-computer-tests): Remove.
+ * testsuite/Makefile.in: Regenerated.
+
+ * testsuite/performance/filebuf_sputc.cc: Remove the temporary
+ files at the end.
+ * testsuite/performance/fstream_seek_write.cc: Likewise.
+ * testsuite/performance/ofstream_insert_float.cc: Likewise.
+ * testsuite/performance/ofstream_insert_int.cc: Likewise.
+ * testsuite/abi_check.cc (main): Nicer spacing in usage output.
+
+2003-07-05 Gawain Bolton <gp.bolton@computer.org>
+
+ * include/bits/stl_list.h: Performance and memory usage
+ improvements. In particular, the behaviour of the constructor and
+ destructor as the list header node is no longer dynamically
+ allocated/de-allocated.
+ * include/bits/list.tcc: Likewise.
+
+2003-07-05 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_complex.h: Fully qualify standard
+ functions with std::, thus avoiding Koenig lookup.
+ * include/std/std_memory.h: Likewise.
+ * include/std/std_valarray.h: Likewise.
+
+2003-07-05 Gawain Bolton <gp.bolton@computer.org>
+
+ * include/bits/stl_tree.h: _Rb_tree_rebalance(): Add local
+ variable for grandparent and use const
+
+2003-07-05 David Billinghurst <David.Billinghurst@riotinto.com>
+
+ * testsuite/27_io/basic_filebuf/close/char/4879.cc: xfail on cygwin
+ * testsuite/27_io/basic_filebuf/close/char/9964.cc: Ditto
+ * testsuite/27_io/basic_filebuf/open/char/9507.cc: Ditto
+ * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Ditto
+ * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Ditto
+ * testsuite/27_io/objects/char/7.cc: Ditto
+ * testsuite/27_io/objects/char/9661-1.cc: Ditto
+
+2003-07-05 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_bitset.h: Fully qualify standard
+ functions with std::, thus avoiding Koenig lookup.
+
+ * include/std/std_fstream.h: Change comment to doxygen style.
+
+2003-07-05 Phil Edwards <pme@gcc.gnu.org>
+
+ * include/std/std_limits.h: More CPP->CXX changes.
+ * scripts/check_survey.in: Likewise.
+
+2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
+
+ Move from CPP to CXX.
+ * include/bits/c++config: Move to GLIBCXX from GLIBCPP.
+ * testsuite/Makefile.am: Same.
+ * testsuite/Makefile.in: Regenerate.
+ * po/Makefile.am: Same.
+ * po/Makefile.in: Regenerate.
+ * libsupc++/Makefile.am: Same.
+ * libsupc++/Makefile.in: Regenerate.
+ * libmath/Makefile.am: Same.
+ * libmath/Makefile.in: Regenerate.
+ * include/Makefile.am: Same.
+ * include/Makefile.in: Regenerate.
+ * src/Makefile.am: Same.
+ * src/Makefile.in: Regenerate.
+ * acconfig.h: Same.
+ * configure.host: Same.
+ * configure.in: Same.
+ * configure: Regenerate.
+ * acinclude.m4: Same.
+ * aclocal.m4: Same.
+ * src: Change all files in this directory.
+ * testsuite: Same.
+ * include: Same, standardize include guards.
+ * config: Same.
+ * libsupc++: Same.
+
+2003-07-04 Zack Weinberg <zack@codesourcery.com>
+
+ * testsuite/22_locale/collate/compare/wchar_t/2.cc
+ * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc
+ * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc
+ * testsuite/22_locale/collate/hash/wchar_t/2.cc
+ * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc
+ * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc
+ * testsuite/22_locale/collate/transform/wchar_t/2.cc
+ * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc
+ * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
+ XFAIL on all targets.
+
+2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
+
+ * acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix missed variable.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+
+2003-07-04 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/locale_facets.tcc (__int_to_char): Move common case
+ to the top.
+
+2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
+ Petur Runolfsson <peturr02@ru.is>
+
+ * config/io/basic_file_stdio.cc: Revert.
+
+2003-07-04 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/deque.tcc: Fully qualify standard
+ functions with std::, thus avoiding Koenig lookup.
+ * include/bits/gslice_array.h: Likewise.
+ * include/bits/indirect_array.h: Likewise.
+ * include/bits/list.tcc: Likewise.
+ * include/bits/mask_array.h: Likewise.
+ * include/bits/slice_array.h: Likewise.
+
+2003-07-04 Gawain Bolton <gbolton@free.fr>
+
+ * include/bits/stl_tree.h: Performance and memory usage
+ improvements.
+
+2003-07-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ * Makefile.am: Replace PWD with PWD_COMMAND.
+ * Makefile.in: Regenerated.
+ * docs/html/Makefile: Likewise.
+
+2003-07-04 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/valarray_array.h: Fully qualify standard
+ functions with std::, thus avoiding Koenig lookup.
+ * include/bits/vector.tcc: Likewise.
+
+2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/Makefile.am: Update target_ to host_.
+ * include/Makefile.in: Regenerate.
+ * src/Makefile.am: Same.
+ * src/Makefile.in: Regenerate.
+
+ * config/os/gnu-linux/os_defines.h: Remove glibc-2.0 support.
+
+2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
+
+ * acinclude.m4 (GLIBCPP_ENABLE_DEBUG_FLAGS): To
+ --enable-libstdcxx-debug-flags.
+ (GLIBCPP_ENABLE_DEBUG_FLAGS): To --enable-libstdcxx-debug.
+ (GLIBCPP_ENABLE_PCH): To --enable-libstdcxx-pch.
+ * aclocal.m4: Regenerate.
+ * configure: Same.
+ * docs/html/configopts.html: Update.
+
+2003-07-04 Paolo Carlini <pcarlini@unitus.it>
+
+ Revert the fix for libstdc++/11378.
+
+2003-07-04 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/11378
+ * include/std/std_fstream.h (xsputn): In the unbuffered case,
+ provided always_noconv(), issue directly _M_file.xsputn.
+ * testsuite/performance/filebuf_unbuf_sputn.cc: New.
+
+2003-07-04 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/stl_list.h: Fully qualify standard
+ functions with std::, thus avoiding Koenig lookup.
+ * include/bits/stl_queue.h: Likewise.
+ * include/bits/stl_raw_storage_iter.h: Likewise.
+ * include/bits/stl_tempbuf.h: Likewise.
+ * include/bits/stl_tree.h: Likewise.
+ * include/bits/stl_uninitialized.h: Likewise.
+ * include/bits/stl_vector.h: Likewise.
+ * include/ext/rope: Change includes order.
+
+2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
+
+ * configure.host (fpos_include_dir): Fix.
+
+2003-07-04 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/stl_heap.h: Fully qualify standard
+ functions with std::, thus avoiding Koenig lookup.
+ * include/bits/stl_iterator_base_funcs.h: Likewise.
+
+ * include/bits/stl_algo.h: Qualify __iterator_category too.
+ * include/bits/stl_algobase.h: Likewise.
+ * include/bits/stl_bvector.h: Likewise.
+
+ * include/bits/stl_algo.h: Don't qualify the pair type.
+
+2003-07-03 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/Makefile.am (target_headers): Add fpos.h
+ (bits_headers): Remove.
+ * include/Makefile.in: Regenerate.
+ * configure.in: Add FPOS_INC_SRCDIR, substitute it.
+ * configure: Regenerate.
+ * configure.host: Add fpos_include_dir.
+ * config/os/gnu-linux/fpos.h: New.
+ * config/os/generic/fpos.h: Add.
+ * include/bits/fpos.h: Remove.
+
+ * config/io/c_io_stdio.h: Remove fpos_t typedef.
+
+ * include/bits/fstream.tcc: Tweaks.
+ * include/std/std_fstream.h: Same.
+
+ * testsuite/27_io/fpos/1.cc (test01): Uncomment. Move to...
+ * testsuite/27_io/fpos/mbstate_t/1.cc: ...here.
+ * testsuite/27_io/fpos/mbstate_t/2.cc: Same.
+ * testsuite/27_io/fpos/mbstate_t/3.cc: Same.
+ * testsuite/27_io/fpos/1.cc: New.
+
+2003-07-03 Benjamin Kosnik <bkoz@redhat.com>
+ Petur Runolfsson <peturr02@ru.is>
+
+ * include/std/std_streambuf.h: Remove _M_pos.
+ * config/io/basic_file_stdio.h: Use seekpos instead of seekoff.
+ * config/io/basic_file_stdio.cc: Same, use fseek instead of lseek,
+ use fread/fwrite instead of read/write.
+ * testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Fix.
+ * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Close filebufs
+ before reading again.
+ * testsuite/27_io/objects/char/6.cc: Tweak.
+
+2003-07-03 David Edelsohn <edelsohn@gnu.org>
+
+ * testsuite/22_locale/num_put/put/char/7.cc: Guard with
+ _GLIBCPP_USE_WCHAR_T.
+
+2003-07-02 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/basic_string.tcc (_M_replace_aux): Constify
+ __n1 and __off1.
+
+2003-07-02 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/stl_bvector.h: Fully qualify standard
+ functions with std::, thus avoiding Koenig lookup.
+ * include/bits/stl_construct.h: Likewise.
+ * include/bits/stl_deque.h: Likewise.
+
+2003-07-02 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/22_locale/num_put/put/char/7.cc: Include
+ <testsuite_hooks.h>, tweak.
+ * testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
+
+2003-07-01 Phil Edwards <pme@gcc.gnu.org>
+
+ * testsuite/Makefile.am (AM_MAKEFLAGS): Set to -j1 (affects
+ check* targets, but not libs/programs).
+ * testsuite/Makefile.in: Regenerate.
+
+2003-07-01 Roger Sayle <roger@eyesopen.com>
+
+ * acinclude.m4 (GLIBCPP_CHECK_STDLIB_SUPPORT): Fix typo in CXXFLAGS.
+ (GLIBCPP_CHECK_MATH_SUPPORT): Likewise.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+
+2003-07-01 Benjamin Kosnik <bkoz@redhat.com>
+
+ * acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix obvious error.
+ * aclocal.m4: Regenerated.
+ * configure: Regenerated.
+
+2003-07-01 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/11389
+ * include/bits/fstream.tcc (underflow): For encoding() == 0
+ don't read more than __buflen chars.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: New.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: New.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: New.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: New.
+
+2003-07-01 Jerry Quinn <jlquinn@optonline.net>
+
+ * 22_locale/num_put/put/char/7.cc: New.
+ * 22_locale/num_put/put/wchar_t/7.cc: New.
+
+2003-06-30 Jerry Quinn <jlquinn@optonline.net>
+
+ * src/locale.cc (__use_cache<numpunct>): Revert previous relocation.
+ * include/bits/locale_facets.tcc (__use_cache<numpunct>): Ditto.
+
+2003-06-30 Benjamin Kosnik <bkoz@redhat.com>
+
+ * 27_io/basic_filebuf/seekoff/char/1-in.cc: New.
+ * 27_io/basic_filebuf/seekoff/char/1-io.cc: New.
+ * 27_io/basic_filebuf/seekoff/char/1-out.cc: New.
+ * 27_io/basic_filebuf/seekoff/char/2-in.cc: New.
+ * 27_io/basic_filebuf/seekoff/char/2-io.cc: New.
+ * 27_io/basic_filebuf/seekoff/char/2-out.cc: New.
+ * 27_io/basic_filebuf/seekoff/char/2.cc: Remove.
+ * 27_io/basic_filebuf/seekoff/char/3-in.cc: New.
+ * 27_io/basic_filebuf/seekoff/char/3-io.cc: Change.
+ * 27_io/basic_filebuf/seekoff/char/3-out.cc: New.
+ * 27_io/basic_filebuf/seekoff/char/4-io.cc: Remove.
+ * 27_io/basic_filebuf/seekpos/char/1-in.cc: New.
+ * 27_io/basic_filebuf/seekpos/char/1-io.cc: New.
+ * 27_io/basic_filebuf/seekpos/char/1-out.cc: New.
+ * 27_io/basic_filebuf/seekpos/char/2-in.cc: New.
+ * 27_io/basic_filebuf/seekpos/char/2-io.cc: New.
+ * 27_io/basic_filebuf/seekpos/char/2-out.cc: New.
+ * 27_io/basic_filebuf/seekpos/char/2.cc: Change.
+ * 27_io/basic_filebuf/seekpos/char/3-in.cc: New.
+ * 27_io/basic_filebuf/seekpos/char/3-io.cc: Remove.
+ * 27_io/basic_filebuf/seekpos/char/3-out.cc: New.
+ * 27_io/basic_filebuf/seekpos/char/4-io.cc: Remove.
+ * data/seekoff-1.tst: Remove.
+ * data/seekoff-1io.tst: New.
+ * data/seekoff-1out.tst: New.
+ * data/seekoff-2.tst: Remove.
+ * data/seekoff-2io.tst: New.
+ * data/seekoff-2out.tst: New.
+ * data/seekoff.txt
+ * data/seekpos-1.tst: Remove.
+ * data/seekpos-1io.tst: New.
+ * data/seekpos-1out.tst: New.
+ * data/seekpos-2.tst: Remove.
+ * data/seekpos-2io.tst: New.
+ * data/seekpos-2out.tst: New.
+ * data/seekpos.txt: New.
+
+2003-06-30 Jerry Quinn <jlquinn@optonline.net>
+
+ * src/locale.cc (__use_cache<numpunct>): Move from here ...
+ * include/bits/locale_facets.tcc (__use_cache<numpunct>): To
+ here.
+
+2003-06-30 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/stl_algobase.h: Fully qualify standard
+ functions with std::, thus avoiding Koenig lookup.
+
+2003-06-30 Doug Gregor <dgregor@apple.com>
+
+ * include/bits/locale_facets.tcc (money_get::do_get): Avoid
+ subscripting empty string.
+
+2003-06-30 Phil Edwards <pme@gcc.gnu.org>
+
+ * testsuite/Makefile.am (check-am): Do not override.
+ (baseline_symbols): Declare as PHONY, so no need to 'touch' it.
+ * testsuite/Makefile.in: Regenerate.
+
+2003-06-30 Doug Gregor <dgregor@apple.com>
+
+ * testsuite/24_iterators/insert_iterator.cc (test01, test02):
+ Don't initialize an insert_iterator with a singular iterator.
+
+2003-06-30 Benjamin Kosnik <bkoz@redhat.com>
+
+ * acinclude.m4 (GLIBCPP_ENABLE_PCH): Add bits for --enable-pch.
+ * aclocal.m4: Regenerate.
+ * configure.in (GLIBCPP_CHECK_PCH): Move, change to
+ GLIBCPP_ENABLE_PCH, default to yes.
+ * configure: Regenerate.
+ * docs/html/configopts.html: Add --enable-pch.
+
+2003-06-30 Phil Edwards <pme@gcc.gnu.org>
+
+ * testsuite/lib/libstdc++-v3-dg.exp: Add comments.
+ (libstdc++-v3-init): Also set LD_RUN_PATH.
+
+2003-06-30 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_streambuf.h (_M_mode): Unused by streambuf, move
+ from here to filebuf and stringbuf.
+ (~basic_streambuf()): Don't set _M_mode.
+ (basic_streambuf()): Don't set _M_mode.
+ * include/std/std_fstream.h (_M_mode): Move here, from streambuf.
+ (~basic_filebuf()): Clean up.
+ * include/bits/fstream.tcc (basic_filebuf()): Set _M_mode.
+ * include/std/std_sstream.h (_M_mode): Move here, from streambuf.
+ * testsuite/27_io/basic_streambuf/cons/char/1.cc: Don't set _M_mode.
+ * testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
+ * testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
+ * testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
+ * testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
+
+2003-06-30 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_fstream.h (_M_underflow): Remove.
+ (uflow): Remove, inherited from streambuf.
+ (underflow): Only declare.
+ * include/bits/fstream.tcc (_M_underflow): Rename to
+ underflow, to which is equivalent for __bump == false,
+ simplify.
+ * include/std/std_sstream.h (_M_underflow): Remove.
+ (uflow): Remove, inherited from streambuf.
+ (underflow): Only declare.
+ * include/bits/sstream.tcc (_M_underflow): Rename to
+ underflow, to which is equivalent for __bump == false,
+ simplify.
+
+2003-06-29 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/stl_algo.h: Fully qualify standard functions
+ with std::, thus avoiding Koenig lookup.
+
+2003-06-29 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc:
+ Improve type correctness-wise.
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc:
+ Likewise.
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc:
+ Likewise.
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc:
+ Likewise.
+
+2003-06-29 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_streambuf.h (uflow): According to
+ 27.5.2.4.3,p16, don't check gptr() < egptr().
+
+2003-06-28 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9875
+ * include/bits/fstream.tcc (seekoff): Fix for encoding() > 0.
+ (seekpos): Likewise.
+ * testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc:
+ New test.
+ * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
+ New test.
+
+2003-06-27 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/testsuite_performance.h (__gnu_cxx_test): Change
+ output name to libstdc++-v3-performance.sum.
+ * testsuite/Makefile.am (CLEANFILES): Remove .performance.
+ * testsuite/Makefile.in: Regenerate.
+
+2003-06-27 Matthias Klose <doko@debian.org>
+
+ * testsuite/Makefile.am (check-abi, check-abi-verbose): Save
+ output of abi-check in libstdc++-v3-abi.sum.
+ * testsuite/Makefile.in: Regenerate.
+
+2003-06-27 Krister Walfridsson <cato@df.lth.se>
+
+ * config/os/bsd/netbsd/ctype_noninline.h
+ (_C_ctype_): Declare.
+ (ctype<char>::classic_table): Return _C_ctype_ + 1.
+ (ctype<char>::ctype): Use classic_table.
+
+2003-06-27 Paolo Carlini <pcarlini@unitus.it>
+ Nathan C. Myers <ncm-nospam@cantrip.org>
+
+ PR libstdc++/9178
+ * include/bits/fstream.tcc (_M_underflow): Properly estimate
+ the worst-case number of external bytes for a given get area.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: New.
+
+2003-06-27 Paolo Carlini <pcarlini@unitus.it>
+ Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/11305
+ * include/bits/fstream.tcc (overflow): Properly estimate the
+ worst-case number of external bytes for a given put area
+ (by using codecvt::max_length()).
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1: New.
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: New.
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: New.
+ * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: New.
+
+2003-06-27 Nathan Sidwell <nathan@codesourcery.com>
+
+ * config/linker-map.gnu: Remove ; after __numpunct_cache.
+
+2003-06-26 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/ios_base.h (ios_base::_M_getloc): Return reference
+ to the imbued locale.
+ * include/bits/locale_facets.tcc (num_put::_M_convert_int): Use
+ _M_getloc.
+ (num_put::_M_convert_float): Use.
+
+2003-06-26 Benjamin Kosnik <bkoz@redhat.com>
+ Jerry Quinn <jlquinn@optonline.net>
+
+ * config/linker-map.gnu: Add __numpunct_cache.
+ * config/locale/gnu/numeric_members.cc
+ (numpunct::_M_initialize_numpunct): Account for _M_data, fill in
+ all elements for "C" locale.
+ (numpunct::~numpunct): Delete _M_data.
+ * config/locale/generic/numeric_members.cc: Same.
+ * include/bits/basic_ios.tcc
+ (basic_ios::init): Remove __locale_cache bits.
+ (basic_ios::_M_cache_locale): Same.
+ * include/bits/ios_base.h: Same. Tweaks.
+ * include/bits/locale_classes.h: Tweaks. Reorder classes.
+ (__use_cache): Make friends with _Impl, locale.
+ (_Impl::_M_caches): Add.
+ (_Impl::_M_install_cache): Add.
+ * include/bits/locale_facets.h (__numpunct_cache): New.
+ (numpunct): Encapsulate data members in __numpunct_cache member,
+ _M_data. Adjust virtuals.
+ (numpunct::numpunct): New ctor for the same.
+ (__locale_cache_base): Remove.
+ (__locale_cache): Remove.
+ * include/bits/locale_facets.tcc (__use_cache): New function,
+ specializations.
+ (num_put::_M_convert_int, _M_convert_float, do_put): Use it.
+ * src/globals.cc: Add cache_vec, numpunct_cache_c, numpunct_cache_w.
+ * src/ios.cc (ios_base::ios_base): Remove __locale_cache.
+ * src/locale-inst.cc: Same. Add __numpunct_cache.
+ * src/locale.cc: Tweak inlines.
+ (__use_cache): Define specializations.
+ * src/localename.cc: Use global bits.
+ (_Impl::~Impl): Deal with __numpunct_cache destruction.
+ (_Impl::_Impl): Same. Pre-cache standard numpunct facets.
+ (_Impl::_M_init_facet): Take into account __numpunct_cache.
+ * testsuite/27_io/ios_base/cons/assign_neg.cc: Update line numbers.
+ * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
+
+2003-06-26 Nathan C. Myers <ncm-nospam@cantrip.org>
+ Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/performance/filebuf_copy.cc: New, testing char
+ by char file copy.
+
+2003-06-26 Paolo Carlini <pcarlini@unitus.it>
+ Nathan C. Myers <ncm-nospam@cantrip.org>
+
+ * include/bits/fstream.tcc (_M_underflow): When the actual
+ end of file is reached, set 'uncommitted' mode to allow a
+ next write without an intervening seek (see C++98 27.8.1.1,2
+ and C89 7.9.5.3).
+ * testsuite/27_io/basic_filebuf/underflow/char/2.cc: New.
+
+2003-06-25 Nathan C. Myers <ncm-nospam@cantrip.org>
+
+ * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
+ sputc): Move inline, from here...
+ * include/std/std_streambuf.h: ... to here.
+
+ * include/std/std_streambuf.h (snextc, sbumpc, sgetc,
+ sputbackc, sungetc, sputc): Use __builtin_expect.
+
+2003-06-24 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/doxygen/mainpage.html: Use a useful title.
+
+2003-06-24 Benjamin Kosnik <bkoz@redhat.com>
+
+ * docs/html/documentation.html: Remove assignment info.
+ * docs/html/17_intro/contribute.html: Edits.
+ * docs/html/17_intro/libstdc++-assign.tx: Remove.
+
+ * docs/html/test.html: Update.
+
+ * README: Update.
+
+2003-06-24 Benjamin Kosnik <bkoz@redhat.com>
+ Ulrich Drepper <drepper@redhat.com>
+
+ * testsuite/testsuite_performance.h: Tweak mallinfo.
+
+2003-06-24 Paolo Carlini <pcarlini@unitus.it>
+ Nathan C. Myers <ncm-nospam@cantrip.org>
+
+ * include/std/std_fstream.h (_M_filepos): Remove.
+ (_M_reading, _M_writing): New, encode the various I/O modes:
+ 'read', 'write' and 'uncommitted'.
+ (sync): If there is something to flush, do it, then go to
+ 'uncommitted' mode.
+ * include/bits/fstream.tcc (_M_set_buffer): Overhaul to deal
+ with three different cases: __off > 0 (upon underflow),
+ __off == 0 (upon overflow), __off == -1 (upon open, setbuf,
+ seekoff/pos).
+ (_M_underflow): Don't call overflow, set _M_reading to true
+ on success, tweak.
+ (pbackfail): Set _M_reading to true on pback creation, tweak.
+ (overflow): Don't seek, deal with overflow in 'uncommitted' mode,
+ set _M_writing to true on success, tweak.
+ (seekoff): Simplify, set _M_reading, _M_writing to false, call
+ _M_set_buffer(-1) ('uncommitted').
+ (open, close, setbuf): Set _M_reading, _M_writing to false and
+ call _M_set_buffer(-1), tweak.
+ (basic_filebuf): Don't set _M_buf_unified.
+ (_M_destroy_internal_buffer): Don't call setg and setp.
+ * include/ext/stdio_filebuf.h (stdio_filebuf): Use _M_reading,
+ _M_writing and _M_set_buffer(-1).
+ * include/std/std_streambuf.h (_M_move_out_cur, _M_move_in_cur,
+ _M_out_lim, _M_buf_unified): Remove.
+ (basic_streambuf): Don't set _M_out_lim and _M_buf_unified.
+ (setp): Don't set _M_out_lim.
+ * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Fix for
+ the new logic ('read', 'write' and 'uncommitted' modes): e.g.,
+ upon open the mode is 'uncommitted' and therefore the put area
+ pointers are null.
+ * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Ditto.
+
+ * include/bits/fstream.tcc (showmanyc): Use only the
+ documented derivation interface to basic_streambuf (gptr(),
+ setg(), etc.) to work right with user specializations.
+ * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
+ sputc, xsgetn, xsputn, __copy_streambufs): Likewise.
+ * include/std/std_streambuf.h (in_avail, sgetc, uflow, stossc):
+ Likewise.
+ * include/std/std_fstream.h (_M_create_pback, _M_destroy_pback,
+ xsgetn): Likewise.
+
+2003-06-23 Loren J. Rittle <ljrittle@acm.org>
+
+ * configure.host (freebsd*): Set abi_baseline_pair.
+ * config/abi/i386-freebsd4/baseline_symbols.txt: Update from 3.2
+ (at or near first release) to 3.3.
+ * config/abi/i386-freebsd5/baseline_symbols.txt: New file.
+ * config/abi/alpha-freebsd5/baseline_symbols.txt: New file.
+ * config/abi/sparc-freebsd5/baseline_symbols.txt: New file.
+
+ * include/ext/mt_allocator.h: Portability.
+ * testsuite/testsuite_performance.h: Likewise.
+
+2003-06-23 Benjamin Kosnik <bkoz@redhat.com>
+
+ * docs/html/17_intro/libstdc++-assign.txt: Update address.
+
+ * testsuite/performance/ifstream_getline.cc: Fix.
+
+2003-06-23 Doug Gregor <dgregor@apple.com>
+
+ * include/bits/boost_concept_check.h: Don't use _D or _R for type
+ names.
+
+2003-06-22 Paolo Carlini <pcarlini@unitus.it>
+ Nathan C. Myers <ncm-nospam@cantrip.org>
+
+ * include/std/std_streambuf.h (_M_move_out_cur): _M_out_lim
+ is now used only for filebuf, when _M_buf_unified is true.
+ epgtr() plays the role of _M_out_lim but it's only updated
+ upon overflow, underflow, uflow, seekoff/pos.
+ * include/bits/sstream.tcc (_M_underflow): New, implements
+ stringbuf::underflow and uflow.
+ (seekoff, seekpos): Tweak, use _M_update_egptr.
+ * include/std/std_sstream.h (str): Rewrote, deal correctly
+ with the new logic, in particular, when pptr() > egptr().
+ (_M_sync): When __testout && !__testin set all the get area
+ pointers to the current string end.
+ (_M_update_egptr): New, internal function updating egptr()
+ to the actual string end.
+ (_M_underflow): New, declare.
+ (underflow): Dispatch to _M_underflow(false).
+ (uflow): Dispatch to _M_underflow(true).
+
+ * include/bits/sstream.tcc (pbackfail, overflow, seekoff,
+ seekpos): Use only the documented derivation interface to
+ basic_streambuf (gptr(), setg(), etc.) to work right with
+ user specializations.
+ * include/std/std_sstream.h (str, _M_sync): Likewise.
+
+2003-06-20 Doug Gregor <dgregor@apple.com>
+
+ * testsuite/20_util/auto_ptr.cc: Don't dereference NULL auto_ptr
+ * testsuite/21_strings/basic_string/replace/char/4.cc: Don't
+ dereference end iterator.
+ * testsuite/21_strings/basic_string/replace/wchar_t/4.cc: Same.
+ * testsuite/22_locale/ctype/narrow/char/1.cc: Don't subscript with
+ index equal to the length of a string.
+ * testsuite/22_locale/ctype/narrow/char/2.cc: Same.
+ * testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Same.
+ * testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Same.
+ * testsuite/22_locale/ctype/widen/char/1.cc: Same.
+ * testsuite/22_locale/ctype/widen/wchar_t/1.cc: Same.
+ * testsuite/23_containers/list_modifiers.cc: Don't dereference
+ singular reverse iterator.
+ * testsuite/23_containers/vector_bool.cc: Don't increment singular
+ iterator.
+ * testsuite/24_iterators/rel_ops.cc: Don't compare singular iterator.
+
+2003-06-20 Doug Gregor <dgregor@apple.com>
+
+ * include/bits/basic_string.h (basic_string::replace): Dispatch
+ _InputIterator version based on _Is_integer.
+ * include/bits/basic_string.tcc (basic_string::replace):
+ Renamed replace(iterator, iterator, size_type, _CharT) to
+ _M_replace_aux.
+ * testsuite/21_strings/basic_string/assign/char/1.cc (test01):
+ Test basic_string::assign(_InputIterator, _InputIterator),
+ which calls basic_string::replace(iterator, iterator,
+ _Input_iterator, _InputIterator).
+
+2003-06-20 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/testsuite_performance.h (resource_counter): Don't use
+ mallinfo at the moment.
+
+2003-06-20 Matthias Klose <doko@debian.org>
+
+ * configure.host: Set try_cpu to target_cpu for existing
+ baseline files.
+
+2003-06-19 Andreas Jaeger <aj@suse.de>
+
+ * testsuite/Makefile.am (extract_symvers): Revert accidental
+ change.
+ * testsuite/Makefile.in: Regenerate.
+
+ * configure.in: Pass MULTISUBDIR to testsuite/Makefile.
+ * configure: Regenerated.
+
+2003-06-19 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_sstream.h (_M_sync): Make non virtual.
+
+2003-06-18 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/testsuite_performance.h (time_counter): New.
+ (resource_counter): New.
+ (report_performance): New.
+ (start_counters): New.
+ (stop_counters): New.
+ (clear_counters): New.
+ * testsuite/performance/allocator.cc: Instrument.
+ * testsuite/performance/cout_insert_int.cc: Same.
+ * testsuite/performance/complex_norm.cc: Same.
+ * testsuite/performance/filebuf_sputc.cc: New.
+ * testsuite/performance/fstream_seek_write.cc: Same.
+ * testsuite/performance/ifstream_getline.cc: Same.
+ * testsuite/performance/map_create_fill.cc: Same.
+ * testsuite/performance/ofstream_insert_float.cc: Same.
+ * testsuite/performance/ofstream_insert_int.cc: Same.
+ * testsuite/performance/string_append.cc: Convert.
+ * scripts/check_performance: New.
+ * testsuite/Makefile.am (check-performance): New.
+ (CLEANFILES): Add.
+
+2003-06-18 Paolo Carlini <pcarlini@unitus.it>
+ Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/std/std_sstream.h (setbuf): Check __n >= 0.
+ * include/bits/fstream.tcc (setbuf): Tweak.
+
+2003-06-18 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/sstream.tcc (seekoff): We can't seek beyond
+ _M_out_lim, therefore _M_move_out_cur boils down to simply
+ updating _M_out_cur.
+ (seekpos): Likewise, clean up.
+
+2003-06-18 Nathan C. Myers <ncm-nospam@cantrip.org>
+ Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/fstream.tcc (setbuf): Allow (__s, 1) too,
+ simply equivalent to the unbuffered case (0, 0) as far as
+ _M_buf_size is concerned.
+
+2003-06-18 Andreas Jaeger <aj@suse.de>
+
+ * testsuite/Makefile.am (new-abi-baseline): Create baseline
+ directory.
+ (baseline_file): Use baseline_dir.
+ (baseline_dir): New.
+ (mkinstalldirs): New.
+
+ * acinclude.m4: Rename baseline_file to baseline_dir, strip
+ filename from baseline_dir.
+
+ * testsuite/Makefile.in: Regenerated.
+ * Makefile.in: Regenerated.
+ * aclocal.m4: Regenerated.
+ * configure: Regenerated.
+
+2003-06-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ * configure.in: Missed check_survey bit.
+ * configure: Regenerated.
+
+2003-06-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ * scripts: New.
+ * config/abi/extract_symvers: Move to...
+ * scripts/extract_symvers: ...here.
+ * mkcheck.in: Move to..
+ * scripts/check_survey.in: ...here.
+ * testsuite_flags.in: Move to..
+ * scripts/testsuite_flags.in: ...here.
+ * configure.in: Change check and testsuite_flags locations.
+ * configure: Regenerate.
+ * testsuite/Makefile.am (current_symbols.txt): Change location.
+ * testsuite/Makefile.in: Regenerate.
+ * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Modify
+ location of testsuite_flags.
+ * Makefile.am (check-script): Move..
+ (check-script-install): Move...
+ * testsuite/Makefile.am: ... here.
+ * testsuite/Makefile.in: Regenerate.
+ * Makefile.in: Regenerate.
+
+2003-06-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ * config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.3.0.
+
+2003-06-16 Benjamin Kosnik <bkoz@redhat.com>
+
+ * Makefile.am (check-abi): Move...
+ (new-abi-baseline): Move...
+ * testsuite/Makefile.am: ...here.
+ (new-abi-baseline): Conditionalize.
+ (check-abi): Conditionalize.
+ (check-abi-verbose): New.
+ * Makefile.in: Regenerate.
+ * testsuite/Makefile.in: Regenerate.
+ * configure.in: Consolidate testsuite configure bits.
+ * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Same.
+ * configure: Regenerate.
+ * aclocal.m4: Regenerate.
+ * testsuite/abi_check.cc: Add --check-verbose.
+ Only output detailed information if --check-verbose.
+
+2003-06-16 Andreas Jaeger <aj@suse.de>
+
+ * testsuite/abi_check.cc: Create summary report.
+
+2003-06-16 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Fix
+ for systems with BUFSIZ != 8192.
+ * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
+ * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc:
+ Minor tweaks.
+
+2003-06-16 Andreas Jaeger <aj@suse.de>
+
+ * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Make
+ check-abi multilib aware.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+
+2003-06-16 Benjamin Kosnik <bkoz@redhat.com>
+ Andreas Jaeger <aj@suse.de>
+
+ * configure.host: Set x86_64 abi_baseline pair correctly.
+
+2003-06-16 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Split and
+ fix for missing seeks between gets and puts into...
+ * testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: New.
+ * testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sungetc/char/2-out.cc: New.
+
+2003-06-15 Richard Henderson <rth@redhat.com>
+
+ * config/linker-map.gnu: Export virtual function thunks for
+ 64-bit systems too.
+
+2003-06-13 Benjamin Kosnik <bkoz@redhat.com>
+
+ * config/abi/i686-pc-linux-gnu: To..
+ * config/abi/i486-linux-gnu: ...this.
+ * config/abi/alphaev67-unknown-linux-gnu: To..
+ * config/abi/alpha-linux-gnu: ...this.
+ * config/abi/ia64-unknown-linux-gnu: To...
+ * config/abi/ia64-linux-gnu: ...this.
+ * config/abi/x86_64-unknown-linux-gnu: To...
+ * config/abi/x86_64-linux-gnu: ...this.
+ * config/abi/i386-unknown-freebsd4: To...
+ * config/abi/i386-freebsd4: ...this.
+ * config/linker-map.gnu: Cleanups, move libsupc++ bits into
+ CXXABI.
+ * configure.host: abi_baseline_triplet to abi_baseline_pair.
+ Simplify cpu bits so that abi_baseline_pair can use the same
+ cpu configuration.
+ * acinclude.m4: Same.
+ * aclocal.m4: Regenerate.
+ * configure.in: Can't get enable_abi_check to yes unless native.
+ * configure: Regenerate.
+
+2003-06-13 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Split and
+ fix for missing seeks between gets and puts into...
+ * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: New.
+ * testsuite/27_io/basic_filebuf/seekoff/char/4-io.cc: New.
+ * testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Same, into...
+ * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: New.
+ * testsuite/27_io/basic_filebuf/seekpos/char/4-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Fix
+ for missing seeks between gets and puts.
+ * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Ditto.
+ * testsuite/data/seekoff-1.tst: New.
+ * testsuite/data/seekoff-2.tst: New.
+ * testsuite/data/seekpos-1.tst: New.
+ * testsuite/data/seekpos-2.tst: New.
+
+2003-06-13 Nathan C. Myers <ncm-nospam@cantrip.org>
+
+ Avoid multi-processor bus contention on increment/decrement-and-
+ test of the reference count in the empty-string object, by comparing
+ addresses first, and never touching the reference count of the empty-
+ string object.
+ * include/bits/basic_string.h:
+ (_S_empty_rep_storage): Move into basic_string<>::_Rep for use by its
+ members.
+ (_Rep::_S_empty_rep()): New accessor.
+ (_Rep::_M_length, _Rep::_M_capacity, _Rep::_M_references): Move to
+ a base class _Rep_base.
+ (_Rep::_M_dispose, _Rep::_M_refcopy): Check for the empty string.
+ (basic_string()): Change to use _M_refdata() in place of _M_refcopy(),
+ since no longer must increment its refcount.
+ * include/bits/basic_string.tcc:
+ (_Rep::_M_destroy, _M_leak_hard): Check for the empty string and
+ return immediately. The former might be unnecessary. The latter
+ prevents begin() and end() from cloning it unnecessarily.
+ (_S_construct(_InIterator, _InIterator, const _Alloc&,
+ input_iterator_tag), _S_construct(_InIterator, _InIterator,
+ const _Alloc&, forward_iterator_tag), _S_construct(size_type, _CharT,
+ const _Alloc&)): Change to use _M_refdata() in place of _M_refcopy().
+ (_M_mutate): Check for the empty string and treat it as shared.
+ This is necessary here because _M_mutate is sometimes called with
+ all-zero arguments; in all other uses of _M_is_shared, the test comes
+ out right anyhow.
+
+2003-06-12 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/allocator-inst.cc: Explicitly instantiate.
+ * include/ext/pool_allocator.h: Inhibit implicit instantiations.
+ Tweaks.
+ * config/linker-map.gnu: Add __pool_alloc bits. Tweaks.
+
+2003-06-11 Benjamin Kosnik <bkoz@redhat.com>
+
+ * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Simplify.
+ * aclocal.m4: Regenerate.
+ * Makefile.am (SUBDIRS): Remove libio.
+ * Makefile.in: Regenerate.
+ * configure.in: Same.
+ * configure: Regenerate.
+ * config/io/basic_file_libio.cc: Remove.
+ * config/io/basic_file_libio.h: Remove.
+ * config/io/c_io_libio_codecvt.c: Remove.
+ * config/io/c_io_libio.h: Remove.
+ * libio/*: Remove.
+ * src/Makefile.am: Same.
+ * src/Makefile.in: Regenerate.
+ * docs/html/configopts.html: Edits.
+ * docs/html/explanations.html: Edits.
+
+2003-06-11 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/stl_alloc.h (__debug_alloc): Move out.
+ (__malloc_alloc): Same.
+ (__pool_alloc): Same.
+ (__new_alloc): Same.
+ Rename to..
+ * include/bits/allocator.h: ...this.
+ * include/bits/stl_deque.h: Modify comment.
+ * include/bits/stl_tree.h: Modify include.
+ * include/std/std_memory.h: Same.
+ * include/ext/rope: Same.
+ * include/ext/slist: Same.
+ * include/std/std_vector.h: Same.
+ * include/std/std_stack.h: Same.
+ * include/std/std_queue.h: Same.
+ * include/std/std_list.h: Same.
+ * include/std/std_deque.h: Same.
+ * include/backward/alloc.h: Same.
+ * include/ext/debug_allocator.h: New.
+ * include/ext/malloc_allocator.h: New.
+ * include/ext/pool_allocator.h: New.
+ * include/ext/new_allocator.h: New.
+ * include/bits/pthread_allocimpl.h: Remove.
+ * include/bits/stl_pthread_alloc.h: Remove.
+ * include/Makefile.am (ext_headers): Add.
+ * include/Makefile.in: Regenerate.
+ * src/stl-inst.cc: Use __gnu_cxx namespace.
+ * src/stl-inst.cc: Move to...
+ * src/allocator-inst.cc: Here.
+ * src/Makefile.am (sources): Update.
+ * src/Makefile.in: Regenerate.
+ * config/linker-map.gnu: Remove __pool_alloc bits.
+ * testsuite/ext/headers.cc: Add.
+ * testsuite/ext/allocators.cc: Fixup.
+
+2003-06-11 Stefan Olsson <stefan@snon.net>
+ Ola Rönnerup <fnolis@home.se>
+
+ * include/Makefile.am (ext_headers): Add.
+ * include/Makefile.in: Regenerate.
+ * include/ext/mt_allocator.h: New file.
+
+2003-06-10 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/fstream.tcc (close): Clean up a bit.
+
+ * include/bits/streambuf.tcc (sbumpc): Clean up a bit.
+
+ * include/std/std_fstream.h (_M_destroy_pback): _M_pback_cur_save
+ - the saved _M_in_cur, that is - cannot be null.
+ (sync): Constify a variable.
+
+ * include/std/std_streambuf.h: Tweak a comment.
+ (in_avail): Constify a variable.
+
+2003-06-10 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/html/17_intro/BUGS: Update from 2.90.8 snapshot.
+ * docs/html/17_intro/CHECKLIST: Bring up to date with respect to
+ correctness of container::iterator typedefs. Fix whitespace.
+ * docs/html/20_util/howto.html, docs/html/ext/howto.html: Add links
+ to allocator docs.
+ * docs/html/documentation.html: Regenerate.
+
+ * include/bits/basic_string.h, include/bits/basic_string.tcc,
+ include/bits/deque.tcc, include/bits/list.tcc, include/bits/stl_algo.h,
+ include/bits/stl_algobase.h, include/bits/stl_bvector.h,
+ include/bits/stl_deque.h, include/bits/stl_iterator_base_funcs.h,
+ include/bits/stl_list.h, include/bits/stl_uninitialized.h,
+ include/bits/stl_vector.h, include/bits/vector.tcc,
+ include/ext/algorithm, include/ext/slist, include/std/std_bitset.h:
+ Change _Iter names to _Iterator, and __pos to __position.
+
+ * include/bits/stl_relops.h, include/bits/stl_numeric.h,
+ include/bits/stl_multiset.h, include/bits/stl_set.h:
+ Remove emacs markers.
+
+ * include/bits/stl_threads.h (_STL_auto_lock): Add __unused__.
+
+2003-06-10 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/fstream.tcc (overflow): According to
+ 27.5.2.4.5, overflow() returns not_eof(eof()).
+ * testsuite/27_io/basic_filebuf/overflow/char/2.cc: New.
+ * testsuite/27_io/basic_filebuf/overflow/char/2-unbuf.cc: Ditto.
+
+2003-06-10 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/fstream.tcc (_M_underflow): Check overflow return
+ value; tweak slightly.
+
+2003-06-09 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/fstream.tcc (_M_underflow): Do not special
+ case the unbuffered case, which really means simply a one char
+ get area.
+ (basic_filebuf): Initialize _M_buf_size.
+ (setbuf): Unbuffered means _M_buf_size == 1, since only
+ _M_buf_size - 1 == 0 chars are going to be used for the
+ put area and 1 for the get area.
+ * include/std/std_streambuf.h (_M_buf_size): Move to basic_filebuf.
+ (~basic_streambuf): Tweak.
+ (basic_streambuf): Do not initialize _M_buf_size.
+ * include/std/std_fstream.h (_M_buf_size): Add from basic_streambuf.
+ (~basic_filebuf): Tweak.
+ (_M_set_buffer): Tweak, considering that _M_buf_size == 1 is the
+ unbuffered situation (i.e., put area pointers NULL).
+ * include/bits/streambuf.tcc (sbumpc): Clean up.
+ * testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Split into...
+ * testsuite/27_io/basic_filebuf/sputbackc/char/1-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: New.
+ * testsuite/27_io/basic_filebuf/sputbackc/char/2-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sputbackc/char/2-out.cc: New.
+
+2003-06-09 Phil Edwards <pme@gcc.gnu.org>
+
+ * acinclude.m4: Move all AM_CONDITIONAL calls out.
+ (GLIBCPP_CONFIGURE): Set defaults for variables used in AM_CONDITIONAL
+ statements.
+ * configure.in: Centralize AM_CONDITIONALs so that they are always
+ run. Make use of GLIBCPP_IS_CROSS_COMPILING.
+ * aclocal.m4, configure: Regenerated.
+
+2003-06-09 Paolo Carlini <pcarlini@unitus.it>
+
+ * docs/html/ext/howto.html ('LWG Issues'): Add issue 235.
+
+2003-06-06 Nathan Myers <ncm-nospam@cantrip.org>
+
+ * include/bits/stl_iterator.h
+ (reverse_iterator::reverse_iterator()): Apply DR235: default
+ constructor default-initializes data member. Instantiated on a
+ pointer type, the member has to end up equal to zero.
+
+2003-06-06 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/stl_alloc.h: Cleanups.
+ * include/ext/functional: Same.
+ * include/ext/hash_map: Same.
+ * include/ext/hash_set: Same.
+ * include/ext/iterator: Same.
+ * include/ext/memory: Same.
+ * include/ext/numeric: Same.
+ * include/ext/rb_tree: Same.
+ * include/ext/ropeimpl.h: Same.
+ * include/ext/slist: Same.
+ * include/ext/stdio_filebuf.h: Same.
+ * include/ext/stdio_sync_filebuf.h: Same.
+ * include/ext/stl_rope.h: Move to...
+ * include/ext/rope: ...here.
+ * include/ext/stl_hash_fun.h: Move to...
+ * include/ext/hash_fun.h: ...here.
+ * include/ext/stl_hashtable.h: Move to...
+ * include/ext/hashtable.h: ...here.
+ * include/backward/hashtable.h: Reflect new names.
+ * include/Makefile.am: Same.
+ * include/Makefile.in: Regenerated.
+
+2003-06-05 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/9024
+ * include/bits/fstream.tcc (_M_underflow): Fix for unbuffered.
+ * include/bits/stl_algobase.h: Tweak.
+ * include/std/std_fstream.h: Move _M_buf_size to...
+ * include/std/std_streambuf.h: ...here. Modify.
+ * include/bits/streambuf.tcc: Same.
+ * testsuite/testsuite_hooks.h: Tweak.
+ * testsuite/testsuite_io.h (constraint_filebuf): New.
+ * testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Split into...
+ * testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: New.
+ * testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sbumpc/char/2-out.cc: New.
+ * testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Split into...
+ * testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: New.
+ * testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sgetc/char/2-out.cc: New.
+ * testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Split into...
+ * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: New.
+ * testsuite/27_io/basic_filebuf/sgetn/char/2.cc: Split into...
+ * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc: New.
+ * testsuite/27_io/basic_filebuf/sgetn/char/3.cc: New.
+ * testsuite/27_io/basic_filebuf/snextc/char/1.cc: Split into...
+ * testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: New.
+ * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: New.
+ * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: New.
+ * testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: New.
+ * testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: New.
+ * testsuite/27_io/basic_filebuf/snextc/char/2-out.cc: New.
+ * testsuite/27_io/basic_filebuf/sputc/char/1.cc: Split into...
+ * testsuite/27_io/basic_filebuf/sputc/char/1-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: New.
+ * testsuite/27_io/basic_filebuf/sputc/char/2.cc: Split into...
+ * testsuite/27_io/basic_filebuf/sputc/char/2-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: New.
+ * testsuite/27_io/basic_filebuf/sputn/char/1.cc: Split into...
+ * testsuite/27_io/basic_filebuf/sputn/char/1-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: New.
+ * testsuite/27_io/basic_filebuf/sputn/char/2-in.cc: New.
+ * testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: New.
+ * testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: New.
+ * testsuite/data/sgetc.txt: New.
+ * testsuite/data/sgetn.txt: New.
+
+2003-06-05 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/11095
+ * include/bits/istream.tcc (operator>>(basic_istream&, _CharT*)):
+ Deal with width() smaller than zero.
+ * include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT),
+ operator<<(basic_ostream&, char), operator<<(basic_ostream&, const
+ _CharT*), operator<<(basic_ostream<_CharT, _Traits>&, const
+ char*), operator<<(basic_ostream<char, _Traits>&, const char*),
+ operator<<(basic_ostream, const basic_string&)): Likewise.
+
+ * testsuite/27_io/basic_istream/extractors_character/char/
+ (11095-i.cc, 11095-oa.cc, 11095-ob.cc, 11095-oc.cc): New.
+ * testsuite/27_io/basic_ostream/inserters_character/char/
+ (11095-oa.cc, 11095-ob.cc, 11095-oc.cc): New.
+ * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
+ (11095-od.cc, 11095-oe.cc, 11095-of.cc): New.
+
+2003-06-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * acinclude.m4 (GLIBCPP_CHECK_PCH): Only set glibcpp_PCHFLAGS if
+ .gch compilation works.
+ * aclocal.m4, configure: Regenerate.
+ * testsuite_flags.in (--build-cxx): Use glibcpp_PCHFLAGS to
+ initialize PCHFLAGS.
+
+2003-06-04 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/basic_string.h (_M_fold, insert(iterator, _CharT),
+ erase(iterator), erase(iterator, iterator), c_str,
+ compare(const basic_string&)): Constify various variables.
+ * include/bits/basic_string.tcc (_S_construct(_InIter, _InIter,
+ const _Alloc&, input_iterator_tag), _M_destroy, _M_mutate,
+ _S_create, resize, _M_replace, _M_replace_safe,
+ append(const basic_string&), append(const basic_string&, size_type,
+ size_type), append(const _CharT*, size_type), append(size_type,
+ _CharT), operator+(const _CharT*, const basic_string&),
+ operator+(_CharT, const basic_string&), replace(iterator, iterator,
+ size_type, _CharT), find(const _CharT*, size_type, size_type),
+ find(_CharT, size_type), rfind(const _CharT*, size_type, size_type),
+ rfind(_CharT, size_type), compare(size_type, size_type,
+ const basic_string&), compare(size_type, size_type,
+ const basic_string&, size_type, size_type), compare(const _CharT*),
+ compare(size_type, size_type, const _CharT*), compare(size_type,
+ size_type, const _CharT*, size_type)): Likewise.
+
+2003-06-03 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/fstream.tcc (pbackfail): Make a rarely taken
+ 'if' branch less obscure.
+
+2003-06-02 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR libstdc++/9815
+ * config/cpu/i386/atomicity.h (__exchange_and_add): add intel
+ asm case to asm.
+ * config/cpu/i486/atomicity.h (__exchange_and_add): Likewise.
+ (__atomic_add): likewise.
+
+2003-06-02 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/sstream.tcc (pbackfail): Minor clean up and
+ reformatting, consistent with basic_filebuf::pbackfail.
+
+2003-06-02 Richard Kreckel <Richard.Kreckel@GiNaC.DE>
+
+ PR libstdc++/11062
+ * config/cpu/mips/atomicity.h: Change __attribute__ ((unused)) to
+ __attribute__ ((__unused__)).
+ * config/os/aix/atomicity.h: Likewise.
+
+2003-06-02 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9761
+ * include/bits/fstream.tcc (pbackfail): If the pback buffer
+ is already active don't try to store in it a second char.
+ * testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: New.
+
+ * include/bits/fstream.tcc (pbackfail): Add unbuffered bits.
+
+2003-06-02 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: Tweak
+ line spacing.
+
+2003-06-02 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_fstream.h (_M_destroy_pback): Use _M_in_beg
+ instead of unnecessarily taking the address of _M_pback.
+ (xsgetn): Simplify slightly for a single char pback buffer.
+
+2003-06-02 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/sstream.tcc (seekoff): Remove four unnecessary
+ variables and two 'if', clean up.
+
+2003-06-02 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/sstream.tcc (seekpos): Test against _M_out_lim
+ not _M_out_end, since the former actually points to the string
+ end (vs buffer end).
+ * testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: New.
+
+2003-05-30 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/doxygen/filter: New file.
+ * docs/doxygen/filter.sed: New file.
+ * docs/doxygen/run_doxygen: Add g flag to sed substitutions. Duh.
+ * docs/doxygen/user.cfg.in (INPUT_FILTER): Point to new filter.
+ * docs/html/documentation.html: Fix links to doxygen pages.
+
+2003-05-30 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/fstream.tcc (_M_convert_to_external): Don't
+ check for __ilen > 0.
+
+2003-05-29 Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de>
+
+ PR libstdc++/10783
+ * include/bits/stl_iterator.h (class __normal_iterator):
+ Don't inherit from iterator, add missing typedefs.
+
+2003-05-29 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/24_iterators/reverse_iterator.cc: Split up, as follows.
+ * testsuite/24_iterators/reverse_iterator/1.cc: New.
+ * testsuite/24_iterators/reverse_iterator/2.cc: New.
+ * testsuite/24_iterators/reverse_iterator/3.cc: New, from
+ PR libstdc++/10783.
+
+2003-05-27 Steve Ellcey <sje@cup.hp.com>
+
+ * config/os/hpux/os_defines.h: Define _LIBUNWIND_STD_ABI if we are
+ on IA64 HP-UX.
+ * libsupc++/eh_throw.cc: Don't call _Unwind_Resume_or_Rethrow if
+ _LIBUNWIND_STD_ABI is set.
+
+2003-05-26 Brendan Kehoe <brendan@zen.org>
+
+ * include/bits/locale_facets.tcc (do_get): Honor $22.2.6.3.3/8 and
+ make sure the number of digits required after the decimal-point
+ (if any) is exactly the value returned by frac_digits().
+ * testsuite/22_locale/money_get/get/char/9.cc: New.
+ * testsuite/22_locale/money_get/get/wchar_t/9.cc: New.
+
+2003-05-27 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * include/std/std_istream.h, include/std/std_ostream.h: Typo in
+ comment.
+
+2003-05-26 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/9339
+ * include/std/std_fstream.h (basic_filebuf::_M_overflow): Remove.
+ (_M_pback): No array necessary.
+ * include/bits/fstream.tcc (basic_filebuf::_M_overflow): Add
+ unbuffered case, coalesec into ...
+ (basic_filebuf::overflow): ...this.
+ * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: New.
+ * testsuite/27_io/basic_filebuf/sputc/char/2.cc: Unbuffered.
+
+2003-05-24 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * libsupc++/Makefile.am, libsupc++/cxxabi.h, libsupc++/del_op.cc,
+ libsupc++/del_opnt.cc, libsupc++/del_opv.cc, libsupc++/del_opvnt.cc,
+ libsupc++/eh_alloc.cc, libsupc++/eh_aux_runtime.cc,
+ libsupc++/eh_catch.cc, libsupc++/eh_exception.cc,
+ libsupc++/eh_globals.cc, libsupc++/eh_personality.cc,
+ libsupc++/eh_term_handler.cc, libsupc++/eh_terminate.cc,
+ libsupc++/eh_throw.cc, libsupc++/eh_type.cc,
+ libsupc++/eh_unex_handler.cc, libsupc++/exception,
+ libsupc++/new, libsupc++/new_handler.cc, libsupc++/new_op.cc,
+ libsupc++/new_opnt.cc, libsupc++/new_opv.cc, libsupc++/new_opvnt.cc,
+ libsupc++/pure.cc, libsupc++/tinfo.cc, libsupc++/tinfo2.cc,
+ libsupc++/typeinfo, libsupc++/unwind-cxx.h, libsupc++/vec.cc:
+ Replace "GNU CC" with "GCC".
+
+ * include/backward/new.h: Replace "GNU CC" with "GCC".
+
+2003-05-22 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/3066.
+ * configure.in: Switch target to host, don't assume newlib.
+ (target_alias): Remove.
+ * configure: Regenerate.
+ * acinclude.m4: Same.
+ * aclocal.m4: Regenerate.
+ * configure.target: Same. Rename to...
+ * configure.host: This.
+
+2003-05-22 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_fstream.h (_S_pback_size): Remove definition.
+ (_M_create_pback(), _M_destroy_pback()): Simplify for a single-char
+ pback buffer.
+ * include/bits/fstream.tcc (_S_pback_size): Remove declaration.
+ * testsuite/27_io/basic_filebuf/3.cc: Remove explicit instantiation
+ of _S_pback_size for systems with no COMDAT or weak support.
+ * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/underflow/10096.cc: Likewise.
+ * testsuite/27_io/basic_fstream/3.cc: Likewise.
+ * testsuite/27_io/basic_ifstream/3.cc: Likewise.
+ * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Likewise.
+ * testsuite/27_io/basic_ofstream/3.cc: Likewise.
+ * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Likewise.
+ * testsuite/27_io/basic_streambuf/3.cc: Likewise.
+
+2003-05-22 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/fstream.tcc (_M_underflow): Simplify:
+ !__testout implies _M_filepos == _M_in_end, therefore
+ the first _M_file.seekoff call is never issued.
+
+2003-05-22 Benjamin Kosnik <bkoz@redhat.com>
+
+ * configure.in: Sort cross table.
+ * configure: Regenerate.
+
+2003-05-22 Brad Spencer <spencer@infointeractive.com>
+
+ PR libstdc++/10106
+ * configure.in: Add Solaris cross bits.
+
+2003-05-21 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * libstdc++-v3/config/os/mingw32/os_defines.h
+ (__GTHREAD_HIDE_WIN32API): Define to 1 by defualt.
+ (NOMINMAX): Define. Update copyright year.
+
+2003-05-21 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_fstream.h (_M_set_buffer): Fix indentation.
+
+2003-05-21 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/faq/index.html: Fix typo.
+ * docs/html/faq/index.txt: Regenerate.
+
+2003-05-21 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/test.html: Fix markup.
+
+2003-05-21 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * libmath/stubs.c (hypot, hypotf, hypotl): Don't divide by
+ zero.
+ Update copyright year.
+
+2003-05-20 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/27_io/basic_filebuf/close/char/4.cc: Fix typo.
+
+2003-05-20 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/27_io/basic_filebuf/close/char/5.cc: New file,
+ further testing that upon filebuf::close() 27.8.1.1,3 is enforced.
+
+2003-05-20 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * include/bits/stl_alloc.h (__default_alloc_template::_S_chunk_alloc):
+ Cast via void* to avoid -Wcast-align warnings.
+ (__default_alloc_template::_S_refill): Likewise.
+
+2003-05-20 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/README: Move to...
+ * docs/html/test.html: ...here. Add documentation.
+ * docs/html/install.html: Move testing bits out..
+ * docs/html/documentation.html: Add separate testing link.
+ * testsuite/performance: Add.
+ * testsuite/performance/allocator.cc: New.
+ * testsuite/performance/complex_norm.cc: New.
+ * testsuite/performance/cout_insert_int.cc: New.
+ * testsuite/performance/fstream_seek_write.cc: New.
+ * testsuite/performance/ifstream_getline.cc: New.
+ * testsuite/performance/map_create_fill.cc: New.
+ * testsuite/performance/ofstream_insert_float.cc: New.
+ * testsuite/performance/ofstream_insert_int.cc: New.
+ * testsuite/performance/string_append.cc: New.
+ * testsuite/lib/libstdc++-v3-dg.exp (v3-compute-tests): Filter
+ performance tests.
+
+2003-05-20 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ PR libstdc++/10689
+ * include/std/std_complex.h (pow): Tidy.
+
+2003-05-19 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/27_io/basic_filebuf/close/char/4.cc: New file, testing
+ that upon filebuf::close() 27.8.1.1,3 is enforced.
+
+2003-05-15 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite/thread/pthread4.cc: Further tweak to avoid fini race.
+
+2003-05-15 Paolo Carlini <pcarlini@unitus.it>
+ Nathan Myers <ncm@cantrip.org>
+
+ * include/bits/fstream.tcc (_M_overflow): Rewrote to call
+ _M_convert_to_external only once (_M_buf_size is now the size of
+ the put area + 1 for the overflow char of a full area); call
+ _M_set_buffer instead of _M_set_indeterminate.
+ (setbuf): Don't accept a buffer smaller than 2 chars.
+ (_M_underflow): Refill _M_buf_size - 1 chars; call _M_set_buffer,
+ instead of _M_set_determinate.
+ (open): Call _M_set_buffer, instead of _M_set_indeterminate.
+ (seekoff): Likewise.
+ * include/ext/stdio_filebuf.h (stdio_filebuf(int,
+ std::ios_base::openmode, bool, size_t),
+ stdio_filebuf(std::__c_file*, std::ios_base::openmode, size_t):
+ Likewise.
+ * include/std/std_fstream.h (_M_set_indeterminate): Remove.
+ (_M_set_determinate): Rename as _M_set_buffer, _M_buf_size ->
+ _M_buf_size - 1.
+ * include/std/std_streambuf.h: Tweak _M_out_lim comment.
+ * testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Tweak, taking
+ into account that, for _M_buf_size == BUFSIZ == 8192, the size of
+ the put area is now BUFSIZ - 1.
+ * testsuite/ext/stdio_filebuf_2.cc: Tweak, taking into account
+ that now the smallest _M_buf_size is 2 (still fails, for the same
+ reason, with 3.2.3)
+
+2003-05-14 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite/thread/pthread4.cc: Tweak test.
+
+2003-05-13 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/27_io/ios_base/cons/copy_neg.cc: Remove
+ excess errors dg marker, use dg-errors instead.
+ * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
+ * testsuite/20_util/auto_ptr_neg.cc: Same.
+
+2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/std/std_fstream.h (basic_filebuf::_M_codecvt): Add
+ cached member.
+ * include/bits/fstream.tcc (basic_filebuf::basic_filebuf):
+ Initialize _M_codecvt.
+ (basic_filebuf::imbue): Same.
+ (basic_filebuf::showmanyc): Use it.
+ (basic_filebuf::underflow): Use it.
+ (basic_filebuf::_M_convert_to_external): Use it.
+ (basic_filebuf::seekoff): Use it.
+ (basic_filebuf::imbue): Use it, tweaks.
+ * include/bits/localefwd.h (__check_facet): New.
+ * include/bits/locale_classes.h: Tweaks.
+ * include/bits/locale_facets.tcc: Tweaks.
+ * include/bits/basic_ios.h (basic_ios::_M_check_facet): Remove.
+ _M_fctype to _M_ctype, _M_fnumput to _M_num_put, _M_fnumget to
+ _M_num_get. Change _M_check_facet to __check_facet. Tweaks.
+ * include/bits/basic_ios.tcc: Same.
+ * include/bits/istream.tcc: Same.
+ * include/bits/ostream.tcc: Same.
+ * include/std/std_streambuf.h: Same.
+ * testsuite/27_io/basic_filebuf/imbue/char/2.cc: New.
+ * testsuite/27_io/basic_filebuf/imbue/char/3.cc: New.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/1.cc: New.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: New.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: New.
+ * testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: New.
+
+2003-05-12 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Remove
+ unnecessary includes and unused string literals.
+ * testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
+
+2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/fstream.tcc (_M_overflow): Remove unbuffered bits.
+
+2003-05-12 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_fstream.h (_M_convert_to_external): Change
+ to return bool, take two less streamsize parameters.
+ * include/bits/fstream.tcc (_M_convert_to_external): Tweak
+ consistently definition.
+ (_M_overflow): Adjust call points.
+
+2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/27_io/basic_filebuf/underflow/10096.cc: Add weak bits.
+
+2003-05-11 Phil Edwards <pme@gcc.gnu.org>
+
+ * testsuite/Makefile.am: Properly quote /both/ LD_RUN_PATHs.
+ * testsuite/Makefile.in: Regenerate.
+
+2003-05-11 Phil Edwards <pme@gcc.gnu.org>
+
+ * testsuite/Makefile.am: Properly quote LD_RUN_PATH.
+ * testsuite/Makefile.in: Regenerate.
+
+2003-05-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ PR libstdc++/3181
+ * include/c_std/std_cmath.h: #include <bits/cpp_type_traits.h>
+ (acos): Handle integer argument.
+ (asin): Likewise.
+ (atan): Likewise.
+ (atan2): Likewise.
+ (ceil): Likewise.
+ (cos): Likewise.
+ (cosh): Likewise.
+ (exp): Likewise.
+ (fabs): Likewise.
+ (floor): Likewise.
+ (frexp): Likewise.
+ (ldexp): Likewise.
+ (log): Likewise.
+ (log10): Likewise.
+ (sin): Likewise.
+ (sinh): Likewise.
+ (sqrt): Likewise.
+ (tan): Likewise.
+ (tanh): Likewise.
+ * include/bits/cpp_type_traits.h (__are_same<>): New traits.
+ (__enable_if): Likewise.
+ * testsuite/26_numerics/cmath/overloads.C: New test.
+
+2003-05-10 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/9027
+ PR libstdc++/9520
+ PR libstdc++/10096
+ * include/bits/fstream.tcc (basic_file::_M_underflow): Add generic
+ implementation, based on old wchar_t specialization, add support
+ for codecvt::in() return value of codecvt_base::noconv, remove
+ _M_file.sys_ungetc() call.
+ * include/std/std_fstream.h (basic_file::underflow,
+ basic_file::uflow, basic_file::_M_underflow): Remove
+ specialization declarations, call _M_underflow from generic versions
+ of underflow and uflow.
+ * src/fstream.cc (basic_file::underflow, basic_file::uflow,
+ basic_file::_M_underflow): Remove specializations.
+ * src/Makefile.am (sources): Remove fstream.cc.
+ * src/Makefile.in: Regenerated.
+ * testsuite/27_io/basic_filebuf/underflow/10096.cc: New test.
+ * testsuite/27_io/basic_filebuf/underflow/char/1.cc: New test.
+ * testsuite/27_io/basic_filebuf/underflow/char/9027.cc: New test.
+ * testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc: New test.
+
+2003-05-10 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/ext/stdio_filebuf.h (__stdio_filebuf): Remove stack
+ buffer.
+ * config/io/basic_file_stdio.h (__basic_file::xsgetn): Remove
+ unbuffered bits.
+ (__basic_file::xsputn): Same.
+ (__basic_file::seekoff): Same.
+ (__basic_file::seekpos): Same.
+ (__basic_file::showmanyc): Same.
+ * config/io/basic_file_stdio.cc: Same.
+ * include/std/std_fstream.h: Same.
+ * include/bits/fstream.tcc: Same.
+ * src/fstream.cc: Same.
+ * testsuite/27_io/basic_filebuf/sgetn/char/1.cc (test05): Tidy.
+
+2003-05-10 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/9520
+ PR libstdc++/9661
+ PR libstdc++/9662
+ * include/ext/stdio_sync_filebuf.h: New file.
+ (basic_stdiobuf): New.
+ * include/Makefile.am (ext_headers): Add ext/stdio_sync_filebuf.h
+ * include/Makefile.in: Regenerate.
+ * include/bits/ios_base.h (Init::_S_create_buffers,
+ Init::_S_destroy_buffers): Remove declarations.
+ * src/globals.cc (buf_cout_sync, buf_cin_sync, buf_cerr_sync,
+ buf_wcout_sync, buf_wcin_sync, buf_wcerr_sync): Define.
+ * src/ios.cc (Init::_S_create_buffers,
+ Init::_S_destroy_buffers): Remove.
+ (Init::Init): Create and use syncronized buffers.
+ (ios_base::sync_with_stdio): Destroy syncronized buffers,
+ create and install unsyncronized buffers.
+ * testsuite/27_io/objects/char/10.cc: New test.
+ * testsuite/27_io/objects/char/9.cc: New test.
+ * testsuite/27_io/objects/char/9661-1.cc: New test.
+ * testsuite/27_io/objects/char/9661-2_xin.cc: New test.
+ * testsuite/27_io/objects/char/9661-2_xin.in: New.
+ * testsuite/27_io/objects/wchar_t/1.cc: New test.
+ * testsuite/27_io/objects/wchar_t/10.cc: New test.
+ * testsuite/27_io/objects/wchar_t/2.cc: New test.
+ * testsuite/27_io/objects/wchar_t/2523-1_xin.cc: New test.
+ * testsuite/27_io/objects/wchar_t/2523-1_xin.in: New.
+ * testsuite/27_io/objects/wchar_t/2523-2_xin.cc: New test.
+ * testsuite/27_io/objects/wchar_t/2523-2_xin.in: New.
+ * testsuite/27_io/objects/wchar_t/3045.cc: New test.
+ * testsuite/27_io/objects/wchar_t/3647.cc: New test.
+ * testsuite/27_io/objects/wchar_t/3_xin.cc: New test.
+ * testsuite/27_io/objects/wchar_t/3_xin.in: New.
+ * testsuite/27_io/objects/wchar_t/4_xin.cc: New test.
+ * testsuite/27_io/objects/wchar_t/4_xin.in: New.
+ * testsuite/27_io/objects/wchar_t/5.cc: New test.
+ * testsuite/27_io/objects/wchar_t/5268.cc: New test.
+ * testsuite/27_io/objects/wchar_t/5280_xin.cc: New test.
+ * testsuite/27_io/objects/wchar_t/5280_xin.in: New.
+ * testsuite/27_io/objects/wchar_t/6.cc: New test.
+ * testsuite/27_io/objects/wchar_t/6548_xin.cc: New test.
+ * testsuite/27_io/objects/wchar_t/6548_xin.in: New.
+ * testsuite/27_io/objects/wchar_t/6648-1_xin.cc: New test.
+ * testsuite/27_io/objects/wchar_t/6648-1_xin.in: New.
+ * testsuite/27_io/objects/wchar_t/6648-2_xin.cc: New test.
+ * testsuite/27_io/objects/wchar_t/6648-2_xin.in: New.
+ * testsuite/27_io/objects/wchar_t/7.cc: New test.
+ * testsuite/27_io/objects/wchar_t/7744_xin.cc: New test.
+ * testsuite/27_io/objects/wchar_t/7744_xin.in: New.
+ * testsuite/27_io/objects/wchar_t/8.cc: New test.
+ * testsuite/27_io/objects/wchar_t/9_xin.cc: New test.
+ * testsuite/27_io/objects/wchar_t/9_xin.in: New.
+ * testsuite/27_io/objects/wchar_t/9520.cc: New test.
+ * testsuite/27_io/objects/wchar_t/9661-1.cc: New test.
+ * testsuite/27_io/objects/wchar_t/9661-2_xin.cc: New test.
+ * testsuite/27_io/objects/wchar_t/9661-2_xin.in: New.
+ * testsuite/27_io/objects/wchar_t/9662.cc: New test.
+ * testsuite/ext/stdiobuf_char.cc: New test.
+ * testsuite/ext/stdiobuf_wchar_t.cc: New test.
+
+2003-05-10 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/27_io/basic_filebuf/close/char/3.cc: Remove
+ unnecessary includes and unused string literals.
+ * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
+
+2003-05-08 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_streambuf.h (setg, setp): Don't touch _M_mode.
+
+2003-05-07 Richard Henderson <rth@redhat.com>
+
+ PR c++/10570
+ * libsupc++/eh_catch.cc (__cxa_begin_catch): Handle foreign exceptions.
+ (__cxa_end_catch): Likewise.
+ * libsupc++/eh_throw.cc (__cxa_rethrow): Likewise. Use
+ _Unwind_Resume_or_Rethrow.
+ * libsupc++/eh_personality.cc (empty_exception_spec): New.
+ (PERSONALITY_FUNCTION): Don't ignore terminate or catch-all
+ for _UA_FORCE_UNWIND. Honor empty filter spec for foreign
+ exceptions. Don't push terminate/unexpected to cxa functions.
+ (__cxa_call_unexpected): Remove foreign exception fixmes.
+
+2003-05-07 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/27_io/ios_base/cons: New.
+ * testsuite/27_io/ios_base/cons/assign_neg.cc: New.
+ * testsuite/27_io/ios_base/cons/copy_neg.cc: New.
+
+2003-05-07 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_fstream.h (_M_is_indeterminate): Remove.
+ * src/fstream.cc
+ (basic_filebuf<char/wchar_t>::_M_underflow): Simplify: either
+ there is no buffer or __testget == !__testinit.
+
+ * src/fstream.cc
+ (basic_filebuf<char/wchar_t>::_M_underflow): _M_set_determinate()
+ automatically sets, if appropriate, _M_out_cur == _M_in_cur.
+
+ * include/std/std_fstream.h (_M_destroy_pback): Don't set
+ unnecessarily _M_pback_cur_save and _M_pback_end_save.
+
+ * include/std/std_fstream.h (_M_set_determinate): Minor tweak.
+
+ * include/std/std_sstream.h (_M_sync): Minor tweak.
+
+ * include/bits/fstream.tcc (close): No need to call
+ _M_destroy_pback, setting _M_pback_init to false suffices
+ to clean up.
+
+2003-05-06 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/stl_algo.h: Enums as _S_.
+ * include/bits/stl_tree.h: Same.
+ * include/bits/stl_bvector.h: Same.
+ * include/bits/ios_base.h: Same.
+ * include/bits/stl_alloc.h: Same.
+ * include/ext/stl_hashtable.h: Same.
+ * src/ios.cc: And here.
+
+ * include/std/std_sstream.h: Replace _M_really_sync to _M_sync.
+ * include/bits/sstream.tcc: Same.
+
+ * include/bits/basic_ios.h: Correct spacing for '< ctype'.
+
+ * include/bits/locale_facets.tcc: Replace __temp to __tmp.
+
+ * include/bits/locale_facets.h (__num_base): Remove protected.
+ Use _S_[io]* names for enumerations.
+ (_S_format_int): Remove.
+ * include/bits/locale_facets.tcc: Same.
+ * src/locale.cc: Same.
+
+ * include/std/std_sstream.h (stringbuf::str): Tweak formatting.
+
+2003-05-06 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/html/faq/index.html (3.10): Add note about mips atomicity.h.
+ * docs/html/faq/index.txt: Regenerated.
+
+2003-05-06 Michael Ritzert <Ritzert@t-online.de>
+ Matt Kraai <kraai@alumni.cmu.edu>
+
+ * include/ext/stl_rope.h (_Rope_RopeRep<>::_M_c_string_lock): Tweak.
+ And retweak.
+
+2003-05-06 Richard Sandiford <rsandifo@redhat.com>
+
+ * configure.target (mips*): Use the generic atomicity.h by default.
+
+2003-05-05 Loren J. Rittle <ljrittle@acm.org>
+ (Inspired by an alternate patch from Danny Smith.)
+
+ * include/bits/stl_threads.h (_Atomic_swap): Kill it...
+ (_Swap_lock_struct<>): ...and the horse it rode in on.
+ * src/globals.cc (_Swap_lock_struct<>): Likewise.
+ * include/ext/stl_rope.h (_Rope_RopeRep<>::_M_c_string_lock): New
+ member to support...
+ * include/ext/ropeimpl.h (rope<>::c_str): Follow *all* memory
+ visibility rules related to POSIX threads.
+ * testsuite/thread/pthread7-rope.cc: New test.
+
+2003-05-04 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/21_strings/basic_string/find/char/3.cc: New
+ file, testing basic_string<char>::find_first_not_of.
+ * testsuite/21_strings/basic_string/find/wchar_t/3.cc:
+ Likewise for basic_string<wchar_t>.
+
+2003-05-03 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite/thread/pthread1.cc: Remove special case for FreeBSD.
+
+2003-05-02 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/Makefile.am (CLEANFILES): Remove PCH files in target
+ directory.
+ * include/Makefile.in: Regenerate.
+
+2003-05-02 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_sstream.h (str()): Tidy.
+
+2003-05-02 Nathan Myers <ncm@cantrip.org>
+ Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/streambuf.tcc (__copy_streambufs): Rewrote.
+
+2003-05-02 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * include/bits/basic_string.h (swap): Remove redundant template
+ parameters from declaration of non-template member function.
+
+2003-05-01 Phil Edwards <pme@gcc.gnu.org>
+
+ * acconfig.h (_GLIBCPP_USE_NLS): New symbol.
+ * configure.in: Move libintl.h header test...
+ * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): ...to here. Gather all
+ the NLS-related test results into one symbol.
+ * src/functexcept.cc: Use it here.
+ * aclocal.m4, config.h.in, configure: Regenerated.
+
+2003-05-01 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/sstream.tcc (overflow): Instead of calling
+ str(), then _M_string.reserve, thus copying the contents
+ of the current buffer two times, just copy the latter in
+ a temporary, then use the 'swap trick'.
+
+2003-05-01 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_sstream.h (str()): Revert the best of the
+ previous 'improvement', incorrect due to the COW nature of
+ v3 basic_string; simplify.
+
+2003-05-01 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/streambuf.tcc (__copy_streambufs): Adjust the
+ type of __avail to ptrdiff_t to avoid signed-unsigned warning.
+
+2003-05-01 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/abi_check.cc (check_version): Update known versions.
+ Check added symbols for version_name != base version. Add missing
+ symbols to incompatible list.
+
+2003-05-01 Benjamin Kosnik <bkoz@redhat.com>
+
+ * acinclude.m4 (GLIBCPP_EXPORT_FLAGS): Remove -Winline.
+ * aclocal.m4: Regenerated.
+ * configure: Regenerated.
+
+2003-05-01 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/streambuf.tcc (basic_streambuf::xsgetn):
+ Const-ify some variables.
+ (basic_streambuf::xsputn): Likewise; change the type of some
+ variables to size_t.
+ (__copy_streambufs): Change some variables to size_t.
+
+2003-05-01 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_sstream.h (str()): Avoid constructing
+ a basic_string temporary not only when it would turn out
+ to be zero-sized but also when identical to the current
+ _M_string buffer.
+
+2003-05-01 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/ext/stdio_filebuf.h
+ (stdio_filebuf(int, std::ios_base::openmode, bool, size_t),
+ stdio_filebuf(std::__c_file*, std::ios_base::openmode, size_t)):
+ Shorten a bit (-10 lines) by factoring out some code.
+
+2003-04-30 Phil Edwards <pme@gcc.gnu.org>
+
+ * acinclude.m4: Add bit missing from previous patch.
+ * aclocal.m4, configure: Regenerated.
+
+2003-04-29 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/doxygen/mainpage.html: Bring up to date.
+ * docs/doxygen/run_doxygen: Cosmetic tweaks. Work around a bug
+ in Doxygen.
+ * docs/doxygen/user.cfg.in: Scanning the precompiled headers
+ breaks everything. Don't scan them.
+ * docs/html/documentation.html: Point to "Write after approval"
+ notes.
+
+2003-04-29 Phil Edwards <pme@gcc.gnu.org>
+
+ * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Search for gettext outside
+ of libc if message translations are being used. Fix info text in
+ xieee_1003.1-2001 case.
+ * aclocal.m4, configure: Regenerate.
+
+2003-04-29 Joel Sherrill <joel.sherrill@OARcorp.com>
+ Loren J. Rittle <ljrittle@acm.org>
+ Martin v. Loewis <martin@v.loewis.de>
+
+ * config/cpu/i386/atomicity.h: New file.
+
+2003-04-29 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/fstream.tcc (open): Change to single return.
+
+2003-04-29 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_sstream.h (underflow): Change to single return.
+
+2003-04-28 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_streambuf.h (_M_buf): is currently
+ used only for basic_filebuf, therefore move it there.
+ (basic_streambuf(), ~basic_streambuf()): Adjust.
+ * include/std/std_fstream.h (_M_buf): Moved here.
+ * include/std/std_sstream.h (setbuf): Don't set _M_buf,
+ is actually redundant for basic_stringbuf.
+ (_M_really_sync): Likewise.
+ * include/bits/fstream.tcc (basic_filebuf()): Adjust.
+ * include/bits/sstream.tcc (seekoff): Adjust.
+
+2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/localename.cc: Standardize exception strings.
+ * src/locale.cc: Same.
+ * src/ios.cc: Same.
+ * include/bits/basic_string.tcc: Same.
+ * include/bits/basic_ios.tcc: Same.
+ * include/std/std_bitset.h: Same.
+ * include/ext/ropeimpl.h: Same.
+ * include/bits/stl_vector.h: Same.
+ * include/bits/stl_deque.h: Same.
+ * include/bits/stl_bvector.h: Same.
+ * config/locale/generic/c_locale.cc: Same.
+ * config/locale/gnu/c_locale.cc: Same.
+ * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
+
+ * testsuite/testsuite_hooks.cc (__gnu_cxx_test): Modify.
+
+2003-04-28 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_streambuf.h (_M_buf_size): is currently
+ used only for basic_filebuf, therefore move it there.
+ (basic_streambuf(), ~basic_streambuf()): Adjust.
+ * include/std/std_fstream.h (_M_buf_size): Moved here.
+ * include/bits/fstream.tcc (basic_filebuf()): Adjust.
+
+2003-04-28 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/streambuf.tcc (__copy_streambufs): Don't use
+ _M_buf_size (synced input is now correctly dealt with
+ elsewhere); when the output buffer is full don't fall back
+ to a snextc-sputc loop, call overflow instead.
+
+2003-04-28 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/sstream.tcc (pbackfail): Shorten a bit (6 lines)
+ the innermost 'if' by factoring out some code.
+
+2003-04-28 Phil Edwards <pme@gcc.gnu.org>
+
+ * configure.in: Test for libintl.h.
+ * include/bits/c++config: Define __N for everybody.
+ * include/bits/basic_string.h, include/bits/stl_bvector.h,
+ include/bits/stl_deque.h, include/bits/stl_vector.h,
+ include/std/std_bitset.h: Wrap all __throw* text with __N.
+ * po/Makefile.am (pot): New rule, mostly working.
+ * src/functexcept.cc: Call gettext on all __throw* arguments when
+ -fexceptions is in effect.
+ * po/Makefile.in, config.h.in, configure: Regenerate.
+
+2003-04-28 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/9523
+ * include/bits/ios_base.h (Init::_S_ios_create,
+ Init::_S_ios_destroy): Remove declarations.
+ (Init::_S_create_buffers,
+ Init::_S_destroy_buffers): Declare
+ * src/ios.cc (Init::_S_ios_create): Remove
+ (Init::_S_create_buffers): Create buffers and add to streams.
+ (Init::_S_ios_destroy): Rename to...
+ (Init::_S_destroy_buffers): this.
+ (Init::Init): Only construct streams once.
+ (Init::~Init): Flush streams, don't destroy them.
+ (ios_base::sync_with_stdio): Don't destroy streams, only buffers.
+ * testsuite/27_io/ios_base/sync_with_stdio/9523.cc: New test.
+ * testsuite/27_io/objects/char/5.cc: New test.
+ * testsuite/27_io/objects/char/5268.cc: Avoid undefined behavior.
+ * testsuite/27_io/objects/char/6.cc: New test.
+ * testsuite/27_io/objects/char/7.cc: New test.
+
+2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/27_io/objects/char/8.cc: New test.
+
+2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/22_locale/codecvt/unicode/char.cc: Remove bom usage.
+ * testsuite/22_locale/codecvt/unicode/wchar_t.cc: Same.
+
+2003-04-27 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/std/std_fstream.h (basic_filebuf): _M_pback_destroy to
+ _M_destroy_pback. _M_pback_create to
+ _M_create_pback. _M_underflow_common to
+ _M_underflow. _M_really_overflow to _M_overflow.
+ * include/bits/fstream.tcc: Same.
+ * src/fstream.cc: Same.
+ * include/std/std_streambuf.h (basic_streambuf): _M_in_cur_move to
+ _M_move_in_cur. _M_out_cur_move to _M_move_out_cur.
+ * include/bits/streambuf.tcc: Same.
+ * include/bits/fstream.tcc: Same.
+ * include/bits/sstream.tcc: Same.
+
+2003-04-27 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_classes.h (locale::_Impl): Change _M_names
+ from fixed size array.
+ (locale): Change _S_categories as well.
+ Formatting tweaks.
+ * include/bits/locale_facets.tcc: Tweak.
+ * config/locale/gnu/c_locale.cc: Assign _S_categories.
+ * config/locale/generic/c_locale.cc: Same.
+ * src/locale.cc: Tweak.
+ * src/globals.cc: Change facet_name to name_vec, add names_c.
+ * src/localename.cc: Use them.
+ (locale::_Impl::~_Impl): Destroy _M_names.
+ (locale::_Impl::_Impl): Create _M_names.
+
+2003-04-27 Andreas Schwab <schwab@suse.de>
+
+ * config/locale/ieee_1003.1-2001/codecvt_specializations.h
+ (__enc_traits): Use __ibom and __ebom instead of ignoring them.
+
+2003-04-27 Nathan Myers <ncm@cantrip.org>
+
+ Move some basic_string members out of line because
+ they are too big to reasonably be inline.
+ * include/bits/basic_string.h
+ (assign(const basic_string&, size_type, size_type),
+ assign(const _CharT*, size_type),
+ insert(size_type, const basic_string&, size_type, size_type),
+ insert(size_type, const _CharT*, size_type),
+ replace(size_type, size_type, const _CharT*, size_type)):
+ Move from here to...
+ * include/bits/basic_string.tcc: ...here.
+
+2003-04-26 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/fstream.tcc (pbackfail): Shorten a bit (10 lines)
+ the innermost 'if' by factoring out some code.
+
+2003-04-26 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/streambuf.tcc (__copy_streambufs): Don't
+ use in_avail(), simplify.
+
+2003-04-26 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_sstream.h (setbuf): don't set _M_buf_size,
+ in basic_stringbuf it's unused.
+
+ * include/std/std_sstream.h (underflow): consistently use
+ _M_in_cur, not gptr().
+
+2003-04-25 Ranjit Mathew <rmathew@hotmail.com>
+ Phil Edwards <pme@gcc.gnu.org>
+
+ * testsuite_flags.in: Guard against the possibility
+ of having "xgcc" as a part of a folder name in the
+ path to the GCC build folder.
+ * testsuite/Makefile.am: Likewise.
+ * testsuite/Makefile.in: Regenerated.
+
+2003-04-25 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/10132
+ * include/std/std_fstream.h (basic_filebuf::is_open): Add throw()
+ exception specifications.
+ (basic_filebuf::close): Same.
+ (basic_filebuf::_M_pback_destroy): Same.
+ (basic_filebuf::_M_destroy_internal_buffer): Same.
+ (basic_filebuf): Remove __res_type typedef.
+ * src/fstream.cc: Same.
+ * include/bits/fstream.tcc
+ (basic_filebuf::_M_convert_to_external): Simplify.
+ (basic_filebuf::seekoff): Use has_facet before use_facet.
+ (basic_filebuf::close): Add exception specification of throw().
+ * testsuite/27_io/basic_filebuf/cons: New.
+ * testsuite/27_io/basic_filebuf/cons/wchar_t: New.
+ * testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc: New.
+ * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: New.
+ * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: New.
+
+2003-04-25 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_classes.h
+ (locale::_S_extra_categories_size): Remove.
+ * src/locale.cc: Remove _S_extra_categories_size.
+ * src/localename.cc: Same.
+ * config/locale/gnu/c_locale.cc: Same.
+ * config/locale/generic/c_locale.cc: Same.
+
+2003-04-24 Richard Sandiford <rsandifo@redhat.com>
+
+ * src/localename.cc (__gnu_cxx::facet_vec): Correct types.
+
+2003-04-24 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/html/17_intro/howto.html: Update some links.
+ * docs/html/18_support/howto.html: Link doxygen numeric_limits notes.
+ * docs/html/27_io/howto.html: Link doxygen stdio_filebuf notes.
+ * docs/html/ext/howto.html: Link to demangler notes and API.
+ * docs/html/faq/index.html: Remove trailing whitespace.
+ (1.4, 2.4, 3.8, 4.1): Bring up to date.
+ (5.6): Change to a bulleted list.
+
+ * docs/html/faq/index.txt, docs/html/documentation.html,
+ docs/html/17_intro/porting.html: Regenerate.
+
+2003-04-23 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/27_io/basic_filebuf/3.cc: _S_pback_size now
+ belongs to basic_filebuf.
+ * testsuite/27_io/basic_fstream/3.cc: Likewise.
+ * testsuite/27_io/basic_ifstream/3.cc: Likewise.
+ * testsuite/27_io/basic_ios/3.cc: Remove _S_pback_size
+ instantiation (now belongs to basic_filebuf).
+ * testsuite/27_io/basic_iostream/3.cc: Likewise.
+ * testsuite/27_io/basic_istream/3.cc: Likewise.
+ * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
+ _S_pback_size now belongs to basic_filebuf.
+ * testsuite/27_io/basic_istringstream/3.cc: Remove _S_pback_size
+ instantiation (now belongs to basic_filebuf).
+ * testsuite/27_io/basic_ofstream/3.cc: _S_pback_size now
+ belongs to basic_filebuf.
+ * testsuite/27_io/basic_ostream/3.cc: Remove _S_pback_size
+ instantiation (now belongs to basic_filebuf).
+ * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc:
+ _S_pback_size now belongs to basic_filebuf.
+ * testsuite/27_io/basic_ostringstream/3.cc: Remove _S_pback_size
+ instantiation (now belongs to basic_filebuf).
+ * testsuite/27_io/basic_streambuf/3.cc: _S_pback_size now belongs
+ to basic_filebuf.
+ * testsuite/27_io/basic_stringbuf/3.cc: Remove _S_pback_size
+ instantiation (now belongs to basic_filebuf).
+ * testsuite/27_io/basic_stringstream/3.cc: Likewise.
+
+2003-04-23 Benjamin Kosnik <bkoz@redhat.com>
+
+ * configure.in: Move GLIBCPP_CHECK_PCH before native/cross conditions.
+ * configure: Regenerated.
+
+2003-04-23 Benjamin Kosnik <bkoz@redhat.com>
+
+ * config/locale/generic/c_locale.h (__convert_from_v): Use
+ attribute unused.
+
+2003-04-23 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/html/ext/howto.html ('LWG Issues'): Add issue 60, partial
+ implementation only.
+ * include/bits/istream.tcc (putback, unget, sync, tellg, seekg):
+ Comment and change to comply with DR 60 and the effect on gcount().
+ * include/std/std_istream.h: Update comments.
+ * testsuite/27_io/basic_istream/putback/char/1.cc (test01): Add
+ comments about reasons for tests. Test sync() against gcount().
+ * testsuite/27_io/basic_istream/seekg/char/2.cc: New file, test
+ for effect on gcount().
+ * testsuite/27_io/basic_istream/tellg/char/2.cc: New file, test
+ for effect on gcount().
+
+2003-04-22 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite/27_io/basic_filebuf/close/char/9964.cc (test_07):
+ Adjust timing.
+
+2003-04-22 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_streambuf.h (_S_pback_size, _M_pback,
+ _M_pback_cur_save, _M_pback_end_save, _M_pback_init,
+ _M_pback_create(), _M_pback_destroy()): Move to basic_filebuf.
+ (basic_streambuf::basic_streambuf()): Adjust.
+ * include/std/std_fstream.h (_S_pback_size, _M_pback,
+ _M_pback_cur_save, _M_pback_end_save, _M_pback_init,
+ _M_pback_create(), _M_pback_destroy()): Moved here
+ from basic_streambuf.
+ * include/bits/fstream.tcc (basic_filebuf::basic_filebuf()):
+ Adjust.
+ (basic_filebuf::_S_pback_size): Add declaration.
+ * include/bits/streambuf.tcc (basic_streambuf::_S_pback_size):
+ Remove declaration.
+
+2003-04-21 Paolo Carlini <pcarlini@unitus.it>
+
+ Consistently use _M_in_beg instead of eback(), _M_in_cur
+ instead of gptr(), and so on.
+ * include/bits/fstream.tcc (pbackfail, imbue): Here.
+ * include/bits/sstream.tcc (pbackfail, seekoff, seekpos): Ditto.
+ * include/bits/streambuf.tcc (sbumpc, sputbackc,
+ __copy_streambufs): Ditto.
+ * include/std/std_streambuf.h (sgetc): Ditto.
+
+2003-04-21 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/sstream.tcc (pbackfail, overflow):
+ Formatting fixes.
+
+2003-04-21 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_streambuf.h (uflow()): It's used only by
+ basic_stringbuf (i.e., basic_filebuf provide its own uflow()),
+ therefore do not consider the _M_buf_unified == true case.
+
+ * include/std/std_streambuf.h (sgetc()): Restore __ret variable.
+
+2003-04-20 Paolo Carlini <pcarlini@unitus.it>
+
+ * docs/html/ext/howto.html ('LWG Issues'):
+ Add issues 19, 90, 171, 231, 271.
+
+2003-04-20 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/sstream.tcc (pbackfail): Remove redundant
+ NULL pointer check from test involving _M_in_*.
+ (overflow, seekoff, seekpos): Const qualify bool variables.
+ * include/std/std_sstream.h (underflow): Remove redundant
+ NULL pointer check from test involving _M_in_*.
+ (_M_really_sync): Const qualify bool variables.
+ * src/fstream.cc (_M_underflow_common): Remove redundant
+ NULL pointer check from test involving _M_in_*, const qualify
+ bool variables.
+
+ * include/std/std_streambuf.h (sgetc): Remove redundant
+ variable.
+
+2003-04-18 Paolo Carlini <pcarlini@unitus.it>
+
+ According to 5.9 para 2 (second bullet) for pointers p, q
+ pointing to the same type, with p == 0 and q == 0, (p < q)
+ is false.
+ * include/bits/fstream.tcc (close, overflow, _M_really_overflow,
+ seekoff): Remove redundant NULL pointer checks from tests
+ involving _M_out_* and _M_in_*, const qualify bool variables.
+ (showmanyc, pbackfail, _M_convert_to_external, imbue): Const
+ qualify bool variables.
+ * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc, sputc):
+ Remove redundant NULL pointer checks from tests involving
+ _M_out_* and _M_in_*, const qualify bool variables.
+ * include/std/std_fstream.h (sync): Likewise.
+ (_M_is_indeterminate): Const qualify bool variables.
+ * include/std/std_streambuf.h (sgetc, uflow): Remove redundant
+ NULL pointer checks from tests involving _M_out_* and _M_in_*,
+ const qualify bool variables.
+ (_M_in_cur_move, _M_out_cur_move, uflow): Const qualify bool
+ variables.
+
+2003-04-18 Loren J. Rittle <ljrittle@acm.org>
+
+ * include/c_std/std_cmath.h (C99 FP capture): Only undefine said
+ C99 FP macros, if actually captured.
+
+ * docs/html/17_intro/porting.texi (_GLIBCPP_USE_C99_CHECK): New macro.
+ (_GLIBCPP_USE_C99_DYNAMIC): New macro.
+ (_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
+ (_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
+ * config/os/bsd/freebsd/os_defines.h (_GLIBCPP_USE_C99_CHECK):
+ New macro.
+ (_GLIBCPP_USE_C99_DYNAMIC): New macro.
+ (_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
+ (_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
+ * include/c_std/std_cstdlib.h: Use new macros.
+ * include/c_std/std_cstdio.h: Use new macros.
+ * include/c_std/std_cwchar.h: Use new macros.
+
+2003-04-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/9555
+ * include/bits/ostream.tcc: Catch all exceptions for formatted
+ output, instead of std::exception and derivatives.
+ * include/bits/istream.tcc: Same.
+ * testsuite/27_io/basic_ostream/inserters_arithmetic/char/9555-oa.cc:
+ * testsuite/27_io/basic_ostream/inserters_character/char/9555-oc.cc:
+ * testsuite/27_io/basic_ostream/inserters_other/char/9555-oo.cc:
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/9555-ia.cc:
+ * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
+ * testsuite/27_io/basic_istream/extractors_other/char/9555-io.cc:
+ New.
+
+2003-04-17 Phil Edwards <pme@gcc.gnu.org>
+
+ * include/bits/c++config: Minor cosmetic tweaks.
+
+2003-04-17 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite_flags.in (PCHFLAGS): Find PCH in new home.
+ * include/Makefile.am (pch_input): Find in ${target_builddir}.
+ (pch_output): Rename to...
+ (pch_output_builddir): ..this. Find in ${target_builddir}.
+ (pch_source): Tweak.
+ (pch_build): Key off a built file.
+ (pch_output rule): Rename to...
+ (pch_input rule): ...this. Produce ${pch_output_builddir}
+ instead of ${pch_output}.
+ (install-pch rule): Install ${pch_output_builddir}.
+ * include/Makefile.in: Regenerated.
+
+2003-04-17 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_streambuf.h (setp): _M_out_lim, being
+ the end limit of used put area, is set equal to _M_out_beg.
+
+2003-04-16 Benjamin Kosnik <bkoz@redhat.com>
+
+ * acinclude.m4 (GLIBCPP_CHECK_PCH): New.
+ * aclocal.m4: Regenerated.
+ * configure.in: Remove old demangler bits.
+ Call pch checks.
+ * configure: Regenerate.
+ * config.h.in: Regenerate.
+ * include/Makefile.am (allstamps): Now allstamped.
+ (allcreated): Define this.
+ (all-local): Use 'em.
+ Conditionally define pch_build, pch_install based on
+ GLIBCPP_BUILD_PCH.
+ (${pch_output}): New rule.
+ (install-pch): New rule.
+ (install-headers): New rule.
+ (install-data-local): Install headers and conditionally pch.
+ * include/Makefile.in: Regenerate.
+ * testsuite_flags.in (--build-cxx): Use pch file.
+
+2003-04-16 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/ext/sgiexts.html: Fix path to stylesheet.
+
+2003-04-15 Benjamin Kosnik <bkoz at redhat dot com>
+ Paolo Carlini <pcarlini at unitus dot it>
+
+ PR libstdc++/9423
+ * docs/html/27_io/howto.html
+ ('The buffering is screwing up my program!'): Explain that
+ opening counts as an I/O operation.
+
+2003-04-15 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * testsuite/thread/pthread1.cc: Enable for darwin test.
+ * testsuite/thread/pthread2.cc: Same.
+ * testsuite/thread/pthread3.cc: Same.
+ * testsuite/thread/pthread4.cc: Same.
+ * testsuite/thread/pthread5.cc: Same.
+ * testsuite/thread/pthread6.cc: Same.
+
+2003-04-15 Loren J. Rittle <ljrittle@acm.org>
+
+ libstdc++/7680
+ * include/c_std/std_cmath.h (__gnu_cx::__c99_binding): New namespace.
+ Populate it with multiple legal ways to obtain the C99 float
+ transcendentals. Use them instead of direct global reference.
+ (C99 FP capture): Guard usage with _GLIBCPP_USE_C99_FP_MACROS_DYNAMIC.
+ * docs/html/17_intro/porting.texi
+ (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
+ (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
+ (_GLIBCPP_USE_C99_FP_MACROS_DYNAMIC): New macro.
+ * config/os/bsd/freebsd/os_defines.h
+ (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
+ (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
+ * testsuite/26_numerics/c_math_dynamic.cc: New file.
+
+2003-04-14 Andreas Tobler <toa@pop.agri.ch>
+ Benjamin Kosnik <bkoz@redhat.com>
+
+ * config/os/generic/ctype_inline.h: Fix.
+
+2003-04-14 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/testsuite_hooks.h
+ (__gnu_cxx_test::run_test_wrapped_generic_locale_exception_catcher):
+ Change to try_named_locale.
+ * testsuite/testsuite_hooks.cc (__gnu_cxx_test): Same.
+
+ * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Use
+ try_named_locale.
+ * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Same.
+ * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Same.
+ * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Same.
+ * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Same.
+ * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Same.
+ * testsuite/22_locale/codecvt/in/wchar_t/2.cc: Same.
+ * testsuite/22_locale/codecvt/in/wchar_t/3.cc: Same.
+ * testsuite/22_locale/codecvt/in/wchar_t/4.cc: Same.
+ * testsuite/22_locale/codecvt/in/wchar_t/7.cc: Same.
+ * testsuite/22_locale/codecvt/in/wchar_t/8.cc: Same.
+ * testsuite/22_locale/codecvt/in/wchar_t/9.cc: Same.
+ * testsuite/22_locale/codecvt/length/wchar_t/2.cc: Same.
+ * testsuite/22_locale/codecvt/length/wchar_t/3.cc: Same.
+ * testsuite/22_locale/codecvt/length/wchar_t/4.cc: Same.
+ * testsuite/22_locale/codecvt/length/wchar_t/7.cc: Same.
+ * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Same.
+ * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Same.
+ * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Same.
+ * testsuite/22_locale/codecvt/out/wchar_t/2.cc: Same.
+ * testsuite/22_locale/codecvt/out/wchar_t/3.cc: Same.
+ * testsuite/22_locale/codecvt/out/wchar_t/4.cc: Same.
+ * testsuite/22_locale/codecvt/out/wchar_t/7.cc: Same.
+ * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Same.
+ * testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Same.
+ * testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Same.
+ * testsuite/22_locale/collate/compare/char/1.cc: Same.
+ * testsuite/22_locale/collate/compare/char/2.cc: Same.
+ * testsuite/22_locale/collate/compare/char/3.cc: Same.
+ * testsuite/22_locale/collate/compare/wchar_t/1.cc: Same.
+ * testsuite/22_locale/collate/compare/wchar_t/2.cc: Same.
+ * testsuite/22_locale/collate/compare/wchar_t/3.cc: Same.
+ * testsuite/22_locale/collate/hash/char/2.cc: Same.
+ * testsuite/22_locale/collate/hash/wchar_t/2.cc: Same.
+ * testsuite/22_locale/collate/transform/char/2.cc: Same.
+ * testsuite/22_locale/collate/transform/char/3.cc: Same.
+ * testsuite/22_locale/collate/transform/wchar_t/2.cc: Same.
+ * testsuite/22_locale/collate/transform/wchar_t/3.cc: Same.
+ * testsuite/22_locale/collate_byname/1.cc: Same.
+ * testsuite/22_locale/ctype/is/char/2.cc: Same.
+ * testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
+ * testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Same.
+ * testsuite/22_locale/ctype/widen/wchar_t/2.cc: Same.
+ * testsuite/22_locale/ctype/widen/wchar_t/3.cc: Same.
+ * testsuite/22_locale/facet/2.cc: Same.
+ * testsuite/22_locale/locale/cons/2.cc: Same.
+ * testsuite/22_locale/locale/cons/4.cc: Same.
+ * testsuite/22_locale/locale/cons/5.cc: Same.
+ * testsuite/22_locale/locale/cons/7.cc: Same.
+ * testsuite/22_locale/locale/cons/7222-c.cc: Same.
+ * testsuite/22_locale/locale/cons/7222-env.cc: Same.
+ * testsuite/22_locale/locale/global_locale_objects/2.cc: Same.
+ * testsuite/22_locale/messages/members/char/1.cc: Same.
+ * testsuite/22_locale/messages/members/char/2.cc: Same.
+ * testsuite/22_locale/messages/members/char/3.cc: Same.
+ * testsuite/22_locale/messages_byname/1.cc: Same.
+ * testsuite/22_locale/money_get/get/char/1.cc: Same.
+ * testsuite/22_locale/money_get/get/char/2.cc: Same.
+ * testsuite/22_locale/money_get/get/char/3.cc: Same.
+ * testsuite/22_locale/money_get/get/char/4.cc: Same.
+ * testsuite/22_locale/money_get/get/wchar_t/1.cc: Same.
+ * testsuite/22_locale/money_get/get/wchar_t/2.cc: Same.
+ * testsuite/22_locale/money_get/get/wchar_t/3.cc: Same.
+ * testsuite/22_locale/money_get/get/wchar_t/4.cc: Same.
+ * testsuite/22_locale/money_put/put/char/1.cc: Same.
+ * testsuite/22_locale/money_put/put/char/2.cc: Same.
+ * testsuite/22_locale/money_put/put/char/3.cc: Same.
+ * testsuite/22_locale/money_put/put/wchar_t/1.cc: Same.
+ * testsuite/22_locale/money_put/put/wchar_t/2.cc: Same.
+ * testsuite/22_locale/money_put/put/wchar_t/3.cc: Same.
+ * testsuite/22_locale/moneypunct/members/char/2.cc: Same.
+ * testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Same.
+ * testsuite/22_locale/moneypunct_byname/1.cc: Same.
+ * testsuite/22_locale/num_get/get/char/1.cc: Same.
+ * testsuite/22_locale/num_get/get/char/2.cc: Same.
+ * testsuite/22_locale/num_get/get/char/3.cc: Same.
+ * testsuite/22_locale/num_get/get/char/5.cc: Same.
+ * testsuite/22_locale/num_get/get/char/6.cc: Same.
+ * testsuite/22_locale/num_get/get/wchar_t/1.cc: Same.
+ * testsuite/22_locale/num_get/get/wchar_t/2.cc: Same.
+ * testsuite/22_locale/num_get/get/wchar_t/3.cc: Same.
+ * testsuite/22_locale/num_get/get/wchar_t/5.cc: Same.
+ * testsuite/22_locale/num_get/get/wchar_t/6.cc: Same.
+ * testsuite/22_locale/num_put/put/char/1.cc: Same.
+ * testsuite/22_locale/num_put/put/char/2.cc: Same.
+ * testsuite/22_locale/num_put/put/char/3.cc: Same.
+ * testsuite/22_locale/num_put/put/char/5.cc: Same.
+ * testsuite/22_locale/num_put/put/wchar_t/1.cc: Same.
+ * testsuite/22_locale/num_put/put/wchar_t/2.cc: Same.
+ * testsuite/22_locale/num_put/put/wchar_t/3.cc: Same.
+ * testsuite/22_locale/num_put/put/wchar_t/5.cc: Same.
+ * testsuite/22_locale/numpunct/members/char/1.cc: Same.
+ * testsuite/22_locale/numpunct/members/char/2.cc: Same.
+ * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Same.
+ * testsuite/22_locale/numpunct/members/wchar_t/2.cc: Same.
+ * testsuite/22_locale/numpunct_byname/1.cc: Same.
+ * testsuite/22_locale/numpunct_byname/2.cc: Same.
+ * testsuite/22_locale/time_get/date_order/char/1.cc: Same.
+ * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Same.
+ * testsuite/22_locale/time_get/get_date/char/1.cc: Same.
+ * testsuite/22_locale/time_get/get_date/char/2.cc: Same.
+ * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Same.
+ * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Same.
+ * testsuite/22_locale/time_get/get_monthname/char/1.cc: Same.
+ * testsuite/22_locale/time_get/get_monthname/char/2.cc: Same.
+ * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Same.
+ * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Same.
+ * testsuite/22_locale/time_get/get_time/char/1.cc: Same.
+ * testsuite/22_locale/time_get/get_time/char/2.cc: Same.
+ * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Same.
+ * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Same.
+ * testsuite/22_locale/time_get/get_weekday/char/1.cc: Same.
+ * testsuite/22_locale/time_get/get_weekday/char/2.cc: Same.
+ * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Same.
+ * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Same.
+ * testsuite/22_locale/time_get/get_year/char/1.cc: Same.
+ * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Same.
+ * testsuite/22_locale/time_put/put/char/1.cc: Same.
+ * testsuite/22_locale/time_put/put/char/2.cc: Same.
+ * testsuite/22_locale/time_put/put/char/3.cc: Same.
+ * testsuite/22_locale/time_put/put/char/4.cc: Same.
+ * testsuite/22_locale/time_put/put/char/5.cc: Same.
+ * testsuite/22_locale/time_put/put/char/6.cc: Same.
+ * testsuite/22_locale/time_put/put/char/7.cc: Same.
+ * testsuite/22_locale/time_put/put/char/8.cc: Same.
+ * testsuite/22_locale/time_put/put/wchar_t/1.cc: Same.
+ * testsuite/22_locale/time_put/put/wchar_t/2.cc: Same.
+ * testsuite/22_locale/time_put/put/wchar_t/3.cc: Same.
+ * testsuite/22_locale/time_put/put/wchar_t/4.cc: Same.
+ * testsuite/22_locale/time_put/put/wchar_t/5.cc: Same.
+ * testsuite/22_locale/time_put/put/wchar_t/6.cc: Same.
+ * testsuite/22_locale/time_put/put/wchar_t/7.cc: Same.
+ * testsuite/22_locale/time_put/put/wchar_t/8.cc: Same.
+ * testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Same.
+ * testsuite/27_io/basic_ios/copyfmt/char/2.cc: Same.
+ * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc: Same.
+ * testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Same.
+ * testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Same.
+
+2003-04-14 Andreas Tobler <toa@pop.agri.ch>
+
+ * configure.target (_cpu_incdir_fullpath): Solaris 2.9 uses
+ solaris includes, not generic.
+
+2003-04-14 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite/26_numerics/c99_classification_macros_c.cc: Add XFAIL.
+
+ * include/std/std_bitset.h (_M_do_find_next): Fix -Wall nit.
+ * include/bits/concept_check.h: Fix multi-line comment.
+ * testsuite/17_intro/headers.cc (dg-options): Add -Wall -Wsystem-header
+ when target is *-*-freebsd*.
+
+2003-04-14 Nathan Myers <ncm@cantrip.org>
+ Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9701 (in_avail())
+ * include/std/std_streambuf.h (in_avail): Simplify, in_avail
+ doesn't care if there is anything in some putback cell.
+ * testsuite/27_io/basic_streambuf/in_avail/char/9701-3.cc: Add.
+
+ * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Remove some
+ unused string literals.
+
+2003-04-14 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/fstream.tcc (basic_filebuf::setbuf): Don't set
+ _M_out_end, _M_set_indeterminate() does it.
+
+2003-04-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * os/hpux/ctype_inline.h: Replace with gnu-linux version.
+
+2003-04-12 David Edelsohn <edelsohn@gnu.org>
+
+ * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
+ Change basic_streambuf instantiation to "unsigned char".
+ * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
+
+2003-04-12 Paolo Carlini <pcarlini@unitus.it>
+
+ Remove _M_buf_size_opt, use directly _M_buf_size instead.
+ * include/bits/fstream.tcc
+ (basic_filebuf::_M_allocate_internal_buffer, setbuf): Remove
+ references to _M_buf_size_opt.
+ * include/bits/sstream.tcc (basic_stringbuf::overflow): Likewise.
+ * include/bits/streambuf.tcc (__copy_streambufs): Likewise, rename
+ __bufsize to __in_avail and __size_opt to __buf_size.
+ * include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf): Likewise.
+ * include/std/std_sstream.h (_M_stringbuf_init, setbuf): Likewise.
+ * include/std/std_streambuf.h (~basic_streambuf(),
+ basic_streambuf()): Likewise, remove _M_buf_size_opt member.
+ * testsuite/27_io/basic_filebuf/close/char/3.cc: Set _M_buf_size.
+ * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/snextc/char/1.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
+ * testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
+
+2003-04-12 Paolo Carlini <pcarlini at unitus dot it>
+
+ * include/ext/stdio_filebuf.h
+ (stdio_filebuf::stdio_filebuf(int, openmode, bool, size_t),
+ stdio_filebuf::stdio_filebuf(__c_file*, openmode, size_t):
+ _M_buf_size_opt == 0 only means "not to use an allocated buffer"
+ since a stack-based buffer is used for small values of the size_t
+ parameter.
+ * include/bits/fstream.tcc (basic_filebuf::_M_really_overflow).
+ If _M_buf_size != 0 flush out the buffer (any kind, stack-based too).
+ * testsuite/ext/stdio_filebuf_2.cc: New testfile.
+
+2003-04-12 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9533
+ * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: New.
+ * testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Ditto.
+
+2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/22_locale/locale/cons/3.cc: Split.
+ * testsuite/22_locale/locale/cons/7222-c.cc: New.
+ * testsuite/22_locale/locale/cons/7222-env.cc: New.
+ Check before trying to create a locale from the environment.
+ * testsuite/27_io/ios_base/state/1.cc (test02): Use "C" locale.
+ * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
+ Adjust includes.
+
+2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/22_locale/ctype/is/char/3.cc (test03): Use the classic
+ locale to construct this hybrid locale, not the global locale.
+
+2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Add
+ instantiation for AIX.
+ * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
+ * testsuite/25_algorithms/min_max.cc: Same.
+
+2003-04-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * basic_file_stdio.cc (__basic_file<char>::close): Don't flush stream
+ twice. Always set _M_cfile to 0 when stream was open.
+
+2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
+
+ Reshuffle 27_io testsuite.
+ * testsuite/27_io/filebuf.cc,
+ filebuf_members-1.tst, filebuf_members-1.txt, filebuf_members.cc,
+ filebuf_virtuals-1.tst, filebuf_virtuals-1.txt,
+ filebuf_virtuals-2.tst, filebuf_virtuals-3.tst,
+ filebuf_virtuals.cc, fpos.cc, fstream.cc, fstream_members.cc,
+ ifstream.cc, ifstream_members-1.tst, ifstream_members-1.txt,
+ ifstream_members.cc, instantiations.cc, ios.cc,
+ ios_base_callbacks.cc, ios_base_members_static-1.tst,
+ ios_base_members_static.cc, ios_base_storage.cc,
+ ios_base_types.cc, ios_ctor.cc, ios_init.cc,
+ ios_manip_basefield.cc, ios_manip_fmtflags.cc, ios_members.cc,
+ iostream.cc, iostream_members.cc, istream.cc,
+ istream_exception.cc, istream_extractor_char.cc,
+ istream_extractor_other-1.tst, istream_extractor_other-1.txt,
+ istream_extractor_other-2.tst, istream_extractor_other.cc,
+ istream_manip.cc, istream_seeks-1.tst, istream_seeks-1.txt,
+ istream_seeks-2.tst, istream_seeks-3.tst, istream_seeks.cc,
+ istream_sentry.cc, istream_unformatted-1.tst,
+ istream_unformatted-1.txt, istream_unformatted.cc,
+ istringstream.cc, istringstream_members.cc,
+ narrow_stream_objects.cc, ofstream.cc, ofstream_members-1.tst,
+ ofstream_members.cc, ostream.cc, ostream_exception.cc,
+ ostream_fail.cc, ostream_inserter_arith.cc,
+ ostream_inserter_char-1.tst, ostream_inserter_char-1.txt,
+ ostream_inserter_char.cc, ostream_inserter_other-1.tst,
+ ostream_inserter_other-2.tst, ostream_inserter_other.cc,
+ ostream_manip.cc, ostream_seeks-1.tst, ostream_seeks.cc,
+ ostream_sentry.cc, ostream_unformatted.cc, ostringstream.cc,
+ ostringstream_members.cc, standard_manipulators.cc, streambuf.cc,
+ streambuf_members.cc, stringbuf.cc, stringbuf_members.cc,
+ stringbuf_virtuals.cc, stringstream.cc, stringstream_members.cc,
+ wide_stream_objects.cc, istream_extractor_arith/01.cc,
+ istream_extractor_arith/02.cc, istream_extractor_arith/03.cc,
+ istream_extractor_arith/06.cc, istream_extractor_arith/07.cc,
+ istream_extractor_arith/08.cc, istream_extractor_arith/09.cc,
+ istream_extractor_arith/10.cc, istream_extractor_arith/11.cc,
+ istream_extractor_arith/12.cc, istream_extractor_arith/13.cc:
+ Split into...
+ * 27_io/basic_filebuf/1.cc: New.
+ * 27_io/basic_filebuf/2.cc: New.
+ * 27_io/basic_filebuf/3.cc: New.
+ * 27_io/basic_filebuf/4.cc: New.
+ * 27_io/basic_filebuf/close/char/1.cc: New.
+ * 27_io/basic_filebuf/close/char/2.cc: New.
+ * 27_io/basic_filebuf/close/char/3.cc: New.
+ * 27_io/basic_filebuf/close/char/4879.cc: New.
+ * 27_io/basic_filebuf/close/char/9964.cc: New.
+ * 27_io/basic_filebuf/imbue/char/1.cc: New.
+ * 27_io/basic_filebuf/imbue/char/9322.cc: New.
+ * 27_io/basic_filebuf/in_avail/char/1.cc: New.
+ * 27_io/basic_filebuf/is_open/char/1.cc: New.
+ * 27_io/basic_filebuf/open/char/1.cc: New.
+ * 27_io/basic_filebuf/open/char/2.cc: New.
+ * 27_io/basic_filebuf/open/char/3.cc: New.
+ * 27_io/basic_filebuf/open/char/9507.cc: New.
+ * 27_io/basic_filebuf/overflow/char/1.cc: New.
+ * 27_io/basic_filebuf/overflow/char/3599.cc: New.
+ * 27_io/basic_filebuf/overflow/char/9169.cc: New.
+ * 27_io/basic_filebuf/overflow/char/9182-2.cc: New.
+ * 27_io/basic_filebuf/overflow/char/9988.cc: New.
+ * 27_io/basic_filebuf/sbumpc/char/1.cc: New.
+ * 27_io/basic_filebuf/sbumpc/char/9825.cc: New.
+ * 27_io/basic_filebuf/seekoff/char/1.cc: New.
+ * 27_io/basic_filebuf/seekoff/char/2.cc: New.
+ * 27_io/basic_filebuf/seekpos/char/1.cc: New.
+ * 27_io/basic_filebuf/seekpos/char/2.cc: New.
+ * 27_io/basic_filebuf/setbuf/char/1.cc: New.
+ * 27_io/basic_filebuf/setbuf/char/2.cc: New.
+ * 27_io/basic_filebuf/setbuf/char/3.cc: New.
+ * 27_io/basic_filebuf/sgetc/char/1.cc: New.
+ * 27_io/basic_filebuf/sgetn/char/1.cc: New.
+ * 27_io/basic_filebuf/sgetn/char/2.cc: New.
+ * 27_io/basic_filebuf/snextc/char/1.cc: New.
+ * 27_io/basic_filebuf/sputbackc/char/1.cc: New.
+ * 27_io/basic_filebuf/sputbackc/char/9425.cc: New.
+ * 27_io/basic_filebuf/sputc/char/1.cc: New.
+ * 27_io/basic_filebuf/sputc/char/1057.cc: New.
+ * 27_io/basic_filebuf/sputc/char/9701-2.cc: New.
+ * 27_io/basic_filebuf/sputn/char/1.cc: New.
+ * 27_io/basic_filebuf/sputn/char/1057.cc: New.
+ * 27_io/basic_filebuf/sputn/char/9701-1.cc: New.
+ * 27_io/basic_filebuf/sungetc/char/1.cc: New.
+ * 27_io/basic_filebuf/sync/char/1057.cc: New.
+ * 27_io/basic_filebuf/sync/char/9182-1.cc: New.
+ * 27_io/basic_filebuf/underflow/char/10097.cc: New.
+ * 27_io/basic_fstream/1.cc: New.
+ * 27_io/basic_fstream/2.cc: New.
+ * 27_io/basic_fstream/3.cc: New.
+ * 27_io/basic_fstream/4.cc: New.
+ * 27_io/basic_fstream/rdbuf/char/2832.cc: New.
+ * 27_io/basic_ifstream/1.cc: New.
+ * 27_io/basic_ifstream/2.cc: New.
+ * 27_io/basic_ifstream/3.cc: New.
+ * 27_io/basic_ifstream/4.cc: New.
+ * 27_io/basic_ifstream/cons/char/1.cc: New.
+ * 27_io/basic_ifstream/open/char/1.cc: New.
+ * 27_io/basic_ifstream/rdbuf/char/2832.cc: New.
+ * 27_io/basic_ios/1.cc: New.
+ * 27_io/basic_ios/2.cc: New.
+ * 27_io/basic_ios/3.cc: New.
+ * 27_io/basic_ios/4.cc: New.
+ * 27_io/basic_ios/clear/char/1.cc: New.
+ * 27_io/basic_ios/cons/char/1.cc: New.
+ * 27_io/basic_ios/cons/char/2.cc: New.
+ * 27_io/basic_ios/cons/char/3.cc: New.
+ * 27_io/basic_ios/copyfmt/char/1.cc: New.
+ * 27_io/basic_ios/copyfmt/char/2.cc: New.
+ * 27_io/basic_ios/exceptions/char/1.cc: New.
+ * 27_io/basic_ios/locales/char/1.cc: New.
+ * 27_io/basic_iostream/1.cc: New.
+ * 27_io/basic_iostream/2.cc: New.
+ * 27_io/basic_iostream/3.cc: New.
+ * 27_io/basic_iostream/4.cc: New.
+ * 27_io/basic_istream/1.cc: New.
+ * 27_io/basic_istream/2.cc: New.
+ * 27_io/basic_istream/3.cc: New.
+ * 27_io/basic_istream/4.cc: New.
+ * 27_io/basic_istream/exceptions/char/9561.cc: New.
+ * 27_io/basic_istream/extractors_arithmetic/char/01.cc: New.
+ * 27_io/basic_istream/extractors_arithmetic/char/02.cc: New.
+ * 27_io/basic_istream/extractors_arithmetic/char/03.cc: New.
+ * 27_io/basic_istream/extractors_arithmetic/char/06.cc: New.
+ * 27_io/basic_istream/extractors_arithmetic/char/07.cc: New.
+ * 27_io/basic_istream/extractors_arithmetic/char/08.cc: New.
+ * 27_io/basic_istream/extractors_arithmetic/char/09.cc: New.
+ * 27_io/basic_istream/extractors_arithmetic/char/10.cc: New.
+ * 27_io/basic_istream/extractors_arithmetic/char/11.cc: New.
+ * 27_io/basic_istream/extractors_arithmetic/char/12.cc: New.
+ * 27_io/basic_istream/extractors_arithmetic/char/13.cc: New.
+ * 27_io/basic_istream/extractors_character/char/1.cc: New.
+ * 27_io/basic_istream/extractors_character/char/2.cc: New.
+ * 27_io/basic_istream/extractors_character/char/3.cc: New.
+ * 27_io/basic_istream/extractors_character/char/9826.cc: New.
+ * 27_io/basic_istream/extractors_other/char/1.cc: New.
+ * 27_io/basic_istream/extractors_other/char/2.cc: New.
+ * 27_io/basic_istream/extractors_other/char/3.cc: New.
+ * 27_io/basic_istream/extractors_other/char/9318-in.cc: New.
+ * 27_io/basic_istream/extractors_other/char/9424-in.cc: New.
+ * 27_io/basic_istream/get/char/1.cc: New.
+ * 27_io/basic_istream/get/char/2.cc: New.
+ * 27_io/basic_istream/getline/char/1.cc: New.
+ * 27_io/basic_istream/getline/char/2.cc: New.
+ * 27_io/basic_istream/getline/char/3.cc: New.
+ * 27_io/basic_istream/ignore/char/1.cc: New.
+ * 27_io/basic_istream/ignore/char/6360.cc: New.
+ * 27_io/basic_istream/ignore/char/7220.cc: New.
+ * 27_io/basic_istream/peek/char/1.cc: New.
+ * 27_io/basic_istream/peek/char/6414.cc: New.
+ * 27_io/basic_istream/putback/char/1.cc: New.
+ * 27_io/basic_istream/read/char/1.cc: New.
+ * 27_io/basic_istream/read/char/2.cc: New.
+ * 27_io/basic_istream/read/char/3.cc: New.
+ * 27_io/basic_istream/readsome/char/6746-1.cc: New.
+ * 27_io/basic_istream/readsome/char/6746-2.cc: New.
+ * 27_io/basic_istream/readsome/char/8258.cc: New.
+ * 27_io/basic_istream/seekg/char/2346-fstream.cc: New.
+ * 27_io/basic_istream/seekg/char/2346-sstream.cc: New.
+ * 27_io/basic_istream/seekg/char/8348-1.cc: New.
+ * 27_io/basic_istream/seekg/char/8348-2.cc: New.
+ * 27_io/basic_istream/seekg/char/fstream.cc: New.
+ * 27_io/basic_istream/seekg/char/sstream.cc: New.
+ * 27_io/basic_istream/sentry/char/1.cc: New.
+ * 27_io/basic_istream/sentry/char/2.cc: New.
+ * 27_io/basic_istream/sentry/char/3.cc: New.
+ * 27_io/basic_istream/sentry/char/3983-fstream.cc: New.
+ * 27_io/basic_istream/sentry/char/3983-sstream.cc: New.
+ * 27_io/basic_istream/tellg/char/1.cc: New.
+ * 27_io/basic_istream/tellg/char/8348.cc: New.
+ * 27_io/basic_istream/tellg/char/fstream.cc: New.
+ * 27_io/basic_istream/tellg/char/sstream.cc: New.
+ * 27_io/basic_istream/ws/char/1.cc: New.
+ * 27_io/basic_istringstream/1.cc: New.
+ * 27_io/basic_istringstream/2.cc: New.
+ * 27_io/basic_istringstream/3.cc: New.
+ * 27_io/basic_istringstream/4.cc: New.
+ * 27_io/basic_istringstream/rdbuf/char/2832.cc: New.
+ * 27_io/basic_istringstream/str/char/1.cc: New.
+ * 27_io/basic_ofstream/1.cc: New.
+ * 27_io/basic_ofstream/2.cc: New.
+ * 27_io/basic_ofstream/3.cc: New.
+ * 27_io/basic_ofstream/4.cc: New.
+ * 27_io/basic_ofstream/cons/char/2.cc: New.
+ * 27_io/basic_ofstream/open/char/1.cc: New.
+ * 27_io/basic_ofstream/rdbuf/char/2832.cc: New.
+ * 27_io/basic_ostream/1.cc: New.
+ * 27_io/basic_ostream/2.cc: New.
+ * 27_io/basic_ostream/3.cc: New.
+ * 27_io/basic_ostream/4.cc: New.
+ * 27_io/basic_ostream/cons/char/9827.cc: New.
+ * 27_io/basic_ostream/endl/char/1.cc: New.
+ * 27_io/basic_ostream/ends/char/1.cc: New.
+ * 27_io/basic_ostream/ends/char/2.cc: New.
+ * 27_io/basic_ostream/exceptions/char/9561.cc: New.
+ * 27_io/basic_ostream/flush/char/1.cc: New.
+ * 27_io/basic_ostream/inserters_arithmetic/char/1.cc: New.
+ * 27_io/basic_ostream/inserters_arithmetic/char/2.cc: New.
+ * 27_io/basic_ostream/inserters_arithmetic/char/3.cc: New.
+ * 27_io/basic_ostream/inserters_arithmetic/char/4.cc: New.
+ * 27_io/basic_ostream/inserters_arithmetic/char/4402.cc: New.
+ * 27_io/basic_ostream/inserters_arithmetic/char/5.cc: New.
+ * 27_io/basic_ostream/inserters_arithmetic/char/6.cc: New.
+ * 27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc: New.
+ * 27_io/basic_ostream/inserters_character/char/1.cc: New.
+ * 27_io/basic_ostream/inserters_character/char/2.cc: New.
+ * 27_io/basic_ostream/inserters_character/char/3.cc: New.
+ * 27_io/basic_ostream/inserters_character/char/4.cc: New.
+ * 27_io/basic_ostream/inserters_character/char/5.cc: New.
+ * 27_io/basic_ostream/inserters_character/char/6.cc: New.
+ * 27_io/basic_ostream/inserters_character/char/8.cc: New.
+ * 27_io/basic_ostream/inserters_character/wchar_t/7.cc: New.
+ * 27_io/basic_ostream/inserters_character/wchar_t/8.cc: New.
+ * 27_io/basic_ostream/inserters_other/char/1.cc: New.
+ * 27_io/basic_ostream/inserters_other/char/2.cc: New.
+ * 27_io/basic_ostream/inserters_other/char/3.cc: New.
+ * 27_io/basic_ostream/inserters_other/char/4.cc: New.
+ * 27_io/basic_ostream/inserters_other/char/9318-out.cc: New.
+ * 27_io/basic_ostream/inserters_other/char/9424-out.cc: New.
+ * 27_io/basic_ostream/sentry/char/1.cc: New.
+ * 27_io/basic_ostream/sentry/char/2.cc: New.
+ * 27_io/basic_ostream/sentry/char/3983-fstream.cc: New.
+ * 27_io/basic_ostream/sentry/char/3983-sstream.cc: New.
+ * 27_io/basic_ostream/tellp/char/1.cc: New.
+ * 27_io/basic_ostream/tellp/char/2.cc: New.
+ * 27_io/basic_ostringstream/1.cc: New.
+ * 27_io/basic_ostringstream/2.cc: New.
+ * 27_io/basic_ostringstream/3.cc: New.
+ * 27_io/basic_ostringstream/4.cc: New.
+ * 27_io/basic_ostringstream/cons/char/3.cc: New.
+ * 27_io/basic_ostringstream/rdbuf/char/2832.cc: New.
+ * 27_io/basic_ostringstream/str/char/1.cc: New.
+ * 27_io/basic_ostringstream/str/char/2.cc: New.
+ * 27_io/basic_streambuf/1.cc: New.
+ * 27_io/basic_streambuf/2.cc: New.
+ * 27_io/basic_streambuf/3.cc: New.
+ * 27_io/basic_streambuf/cons/char/1.cc: New.
+ * 27_io/basic_streambuf/imbue/char/1.cc: New.
+ * 27_io/basic_streambuf/imbue/char/9322.cc: New.
+ * 27_io/basic_streambuf/overflow/char/1.cc: New.
+ * 27_io/basic_streambuf/overflow/char/2.cc: New.
+ * 27_io/basic_streambuf/overflow/char/3599.cc: New.
+ * 27_io/basic_streambuf/sgetc/char/1.cc: New.
+ * 27_io/basic_streambuf/sgetn/char/1.cc: New.
+ * 27_io/basic_streambuf/sputbackc/char/9538.cc: New.
+ * 27_io/basic_streambuf/sputc/char/1057.cc: New.
+ * 27_io/basic_streambuf/sputn/char/1.cc: New.
+ * 27_io/basic_streambuf/sputn/char/1057.cc: New.
+ * 27_io/basic_streambuf/sync/char/1057.cc: New.
+ * 27_io/basic_stringbuf/1.cc: New.
+ * 27_io/basic_stringbuf/2.cc: New.
+ * 27_io/basic_stringbuf/3.cc: New.
+ * 27_io/basic_stringbuf/4.cc: New.
+ * 27_io/basic_stringbuf/5.cc: New.
+ * 27_io/basic_stringbuf/imbue/char/1.cc: New.
+ * 27_io/basic_stringbuf/imbue/char/9322.cc: New.
+ * 27_io/basic_stringbuf/in_avail/char/1.cc: New.
+ * 27_io/basic_stringbuf/overflow/char/2.cc: New.
+ * 27_io/basic_stringbuf/overflow/char/3599.cc: New.
+ * 27_io/basic_stringbuf/overflow/char/9988.cc: New.
+ * 27_io/basic_stringbuf/sbumpc/char/1.cc: New.
+ * 27_io/basic_stringbuf/sbumpc/char/9825.cc: New.
+ * 27_io/basic_stringbuf/seekoff/char/1.cc: New.
+ * 27_io/basic_stringbuf/seekoff/char/2.cc: New.
+ * 27_io/basic_stringbuf/seekpos/char/1.cc: New.
+ * 27_io/basic_stringbuf/seekpos/char/2.cc: New.
+ * 27_io/basic_stringbuf/setbuf/char/1.cc: New.
+ * 27_io/basic_stringbuf/setbuf/char/2.cc: New.
+ * 27_io/basic_stringbuf/setbuf/char/3.cc: New.
+ * 27_io/basic_stringbuf/sgetc/char/1.cc: New.
+ * 27_io/basic_stringbuf/sgetn/char/1.cc: New.
+ * 27_io/basic_stringbuf/snextc/char/1.cc: New.
+ * 27_io/basic_stringbuf/sputbackc/char/1.cc: New.
+ * 27_io/basic_stringbuf/sputbackc/char/9425.cc: New.
+ * 27_io/basic_stringbuf/sputc/char/1.cc: New.
+ * 27_io/basic_stringbuf/sputc/char/1057.cc: New.
+ * 27_io/basic_stringbuf/sputc/char/9404-1.cc: New.
+ * 27_io/basic_stringbuf/sputn/char/1.cc: New.
+ * 27_io/basic_stringbuf/sputn/char/1057.cc: New.
+ * 27_io/basic_stringbuf/sputn/char/9404-2.cc: New.
+ * 27_io/basic_stringbuf/str/char/1.cc: New.
+ * 27_io/basic_stringbuf/str/char/2.cc: New.
+ * 27_io/basic_stringbuf/str/char/3.cc: New.
+ * 27_io/basic_stringbuf/str/char/3955.cc: New.
+ * 27_io/basic_stringbuf/sungetc/char/1.cc: New.
+ * 27_io/basic_stringbuf/sync/char/1057.cc: New.
+ * 27_io/basic_stringstream/1.cc: New.
+ * 27_io/basic_stringstream/2.cc: New.
+ * 27_io/basic_stringstream/3.cc: New.
+ * 27_io/basic_stringstream/4.cc: New.
+ * 27_io/basic_stringstream/rdbuf/char/2832.cc: New.
+ * 27_io/basic_stringstream/str/char/1.cc: New.
+ * 27_io/basic_stringstream/str/char/2.cc: New.
+ * 27_io/basic_stringstream/str/char/3.cc: New.
+ * 27_io/basic_stringstream/str/char/4.cc: New.
+ * 27_io/fpos/1.cc: New.
+ * 27_io/fpos/2.cc: New.
+ * 27_io/fpos/3.cc: New.
+ * 27_io/ios_base/callbacks/1.cc: New.
+ * 27_io/ios_base/state/1.cc: New.
+ * 27_io/ios_base/storage/1.cc: New.
+ * 27_io/ios_base/storage/2.cc: New.
+ * 27_io/ios_base/storage/3.cc: New.
+ * 27_io/ios_base/sync_with_stdio/1.cc: New.
+ * 27_io/ios_base/sync_with_stdio/2.cc: New.
+ * 27_io/manipulators/adjustfield/char/1.cc: New.
+ * 27_io/manipulators/adjustfield/char/2.cc: New.
+ * 27_io/manipulators/basefield/char/1.cc: New.
+ * 27_io/manipulators/standard/char/1.cc: New.
+ * 27_io/manipulators/standard/char/2.cc: New.
+ * 27_io/objects/char/1.cc: New.
+ * 27_io/objects/char/2.cc: New.
+ * 27_io/objects/char/2523-1_xin.cc: New.
+ * 27_io/objects/char/2523-1_xin.in: New.
+ * 27_io/objects/char/2523-2_xin.cc: New.
+ * 27_io/objects/char/2523-2_xin.in: New.
+ * 27_io/objects/char/3045.cc: New.
+ * 27_io/objects/char/3647.cc: New.
+ * 27_io/objects/char/3_xin.cc: New.
+ * 27_io/objects/char/3_xin.in: New.
+ * 27_io/objects/char/4_xin.cc: New.
+ * 27_io/objects/char/4_xin.in: New.
+ * 27_io/objects/char/5268.cc: New.
+ * 27_io/objects/char/5280_xin.cc: New.
+ * 27_io/objects/char/5280_xin.in: New.
+ * 27_io/objects/char/6548_xin.cc: New.
+ * 27_io/objects/char/6548_xin.in: New.
+ * 27_io/objects/char/6648-1_xin.cc: New.
+ * 27_io/objects/char/6648-1_xin.in: New.
+ * 27_io/objects/char/6648-2_xin.cc: New.
+ * 27_io/objects/char/6648-2_xin.in: New.
+ * 27_io/objects/char/7744_xin.cc: New.
+ * 27_io/objects/char/7744_xin.in: New.
+ * 27_io/objects/wchar_t/1.cc: New.
+ * 27_io/types/1.cc: New.
+ * 27_io/types/2.cc: New.
+ * data/filebuf_members-1.tst: New.
+ * data/filebuf_members-1.txt: New.
+ * data/filebuf_virtuals-1.tst: New.
+ * data/filebuf_virtuals-1.txt: New.
+ * data/filebuf_virtuals-2.tst: New.
+ * data/filebuf_virtuals-3.tst: New.
+ * data/ifstream_members-1.tst: New.
+ * data/ifstream_members-1.txt: New.
+ * data/ios_base_members_static-1.tst: New.
+ * data/istream_extractor_other-1.tst: New.
+ * data/istream_extractor_other-1.txt: New.
+ * data/istream_extractor_other-2.tst: New.
+ * data/istream_seeks-1.tst: New.
+ * data/istream_seeks-1.txt: New.
+ * data/istream_seeks-2.tst: New.
+ * data/istream_seeks-3.tst: New.
+ * data/istream_unformatted-1.tst: New.
+ * data/istream_unformatted-1.txt: New.
+ * data/ofstream_members-1.tst: New.
+ * data/ostream_inserter_char-1.tst: New.
+ * data/ostream_inserter_char-1.txt: New.
+ * data/ostream_inserter_other-1.tst: New.
+ * data/ostream_inserter_other-2.tst: New.
+ * data/ostream_seeks-1.tst: New.
+
+2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/sstream.tcc (basic_stringbuf::seekpos): Remove
+ requirement that __mode must be strict input or output.
+
+ * include/std/std_streambuf.h (basic_streambuf::setp): Set
+ _M_out_lim.
+
+ * include/std/std_sstream.h (basic_strinbuf::str): Zero length
+ output string shouldn't core.
+ (basic_stringbuf::_M_really_sync): Add base argument. Remove rturn
+ type.
+ * include/bits/sstream.tcc: Adjust _M_really_sync bits here.
+
+ * include/bits/istream.tcc (basic_istream::putback): Set gcount to
+ zero.
+
+2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/data: New directory.
+ * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Modify
+ to copy files from the testsuite data directory.
+ (libstdc++-v3-list-sourcefiles): Add another test list filter, for
+ testfiles containing _xin, which now means this is an interactive
+ test and should be run with the interactive dejagnu hooks.
+ * testsuite/Makefile.am: Remove testsuite_* files.
+ * testsuite/Makefile.in: Regenerate.
+
+2003-04-09 Zack Weinberg <zack@codesourcery.com>
+
+ * docs/html/install.html: Document complete list of locales
+ required by test suite. Document procedure for installing
+ said locales under Debian. Solicit instructions for other
+ operating systems.
+
+2003-04-08 Alexandre Oliva <aoliva@redhat.com>
+
+ * include/bits/sstream.tcc (overflow): Make sure operands of min
+ and max have the same type.
+
+2003-04-04 Jerry Quinn <jlquinn@optonline.net>
+
+ PR libstdc++/10276
+ * src/ios.cc (ios_base::_M_init): Remove _M_callbacks
+ initialization.
+
+2003-03-31 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_streambuf.h (_M_out_buf_size()): Remove.
+ * include/bits/fstream.tcc (_M_allocate_internal_buffer):
+ Don't set _M_out_end.
+ (basic_filebuf::overflow): Replace _M_out_buf_size() with
+ this->_M_out_cur && this->_M_out_cur < this->_M_out_end.
+ * include/bits/sstream.tcc (basic_stringbuf::overflow):
+ Replace _M_out_buf_size() with this->_M_out_cur < this->_M_out_end;
+ * include/bits/streambuf.tcc (basic_streambuf::sputc):
+ Replace _M_out_buf_size() with _M_out_cur && _M_out_cur < _M_out_end.
+ (basic_streambuf::xsputn): Replace _M_out_buf_size() with
+ _M_out_end - _M_out_cur.
+ (__copy_streambufs): Likewise.
+ * include/std/std_fstream.h (_M_set_determinate): Set
+ _M_out_end here.
+
+2003-03-30 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/fstream.tcc (basic_filebuf::showmanyc,
+ _M_convert_to_external, _M_really_overflow, seekoff): Fix
+ test for synced buffer.
+ * include/std/std_fstream.h (sync): Likewise.
+ * src/fstream.cc (basic_filebuf<char>::_M_underflow_common,
+ basic_filebuf<wchar_t>::_M_underflow_common): Likewise.
+
+2003-03-28 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/std/std_sstream.h (basic_istringstream): Adjust
+ initialization.
+ (basic_ostringstream): Same.
+ (basic_stringstream): Same.
+ * include/std/std_fstream.h (basic_ifstream): Adjust initialization.
+ (basic_ofstream): Same.
+ (basic_fstream): Same.
+ * include/std/std_ostream.h (basic_ostrem): Add protected ctor
+ that does not call init.
+ * include/std/std_istream.h (basic_istream): Same.
+ (basic_iostream): Construct istream, ostream uninitialized, use
+ init to initialize just once. Add protected ctor that does not
+ call init.
+
+2003-03-28 Paolo Carlini <pcarlini@unitus.it>
+ Nathan Myers <ncm@cantrip.org>
+
+ PR libstdc++/9533
+ * include/bits/fstream.tcc (basic_filebuf<>::open): Don't
+ call underflow().
+ (basic_filebuf<>::showmanyc): Use the information provided
+ by codecvt and __basic_file<>::showmanyc_helper to implement
+ a non-trivial showmanyc.
+ * config/io/basic_file_stdio.h
+ (__basic_file<>::showmanyc_helper): New, declare.
+ * config/io/basic_file_stdio.cc
+ (__basic_file<>::showmanyc_helper): Define.
+ (__basic_file<>::_M_open_mode): Don't set O_NONBLOCK.
+ (__basic_file<char>::open): Don't call fcntl().
+ * acinclude.m4 (GLIBCPP_CHECK_S_ISREG_OR_S_IFREG,
+ GLIBCPP_CHECK_POLL): New macros.
+ * configure.in: Call here.
+ * acconfig.h: Add #undefs for the corresponding symbols.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+ * config.h.in: Regenerate.
+
+2003-03-24 Benjamin Kosnik <bkoz@redhat.com>
+
+ * config/linker-map.gnu: Remove string export restrictions.
+
+2003-03-24 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/21_strings/basic_string/find/char/1.cc: Remove
+ find_first_of, find_last_of and find_last_not_of tests.
+ * testsuite/21_strings/basic_string/find/char/2.cc: find_first_of
+ tests here, new file.
+ * testsuite/21_strings/basic_string/find/wchar_t/1.cc: Likewise,
+ remove wchar_t find_first_of, find_last_of and find_last_not_of tests.
+ * testsuite/21_strings/basic_string/find/wchar_t/2.cc: Likewise,
+ wchar_t find_first_of tests here, new file.
+ * testsuite/21_strings/basic_string/rfind/char/2.cc: find_last_of
+ tests here.
+ * testsuite/21_strings/basic_string/rfind/char/3.cc: find_last_not_of
+ tests here.
+ * testsuite/21_strings/basic_string/rfind/wchar_t/2.cc: likewise,
+ wchar_t find_last_of tests here.
+ * testsuite/21_strings/basic_string/rfind/wchar_t/3.cc: likewise,
+ wchar_t find_last_not_of tests here.
+
+2003-03-22 Loren J. Rittle <ljrittle@acm.org>
+
+ * config/os/hpux/ctype_noninline.h (ctype<char>::classic_table):
+ Correct return value.
+
+2003-03-21 Jerry Quinn <jlquinn@optonline.net>
+
+ PR libstdc++/5730
+ * include/bits/c++config (_GLIBCPP_FAST_MATH): Define.
+ * include/std/std_complex.h (norm): Use faster,
+ less accurate computation for builtin float types under --fast-math.
+
+2003-03-21 Magnus Fromreide <gnats@magfr.user.lysator.liu.se>
+
+ * testsuite/testsuite_hooks.h: Fix warning nits.
+
+2003-03-19 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/cpu/mips/atomicity.h (__exchange_and_add, __atomic_add):
+ Only .set mips2 for the o32 ABI.
+
+2003-03-19 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/21_strings/char_traits/requirements/char/1.cc:
+ Test char not wchar_t.
+
+2003-03-18 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/21_strings/basic_string/append/wchar_t/1.cc:
+ Correct size, taking into account sizeof(wchar_t).
+
+2003-03-18 Paolo Carlini <pcarlini@unitus.it>
+
+ Reshuffle 21_strings testsuite.
+ * testsuite/21_strings/append.cc, c_strings.cc, invariants.cc,
+ assign.cc, ctor_copy_dtor.cc, nonmember.cc, capacity.cc,
+ element_access.cc, operations.cc, char_traits_requirements.cc,
+ find.cc, replace.cc, char_traits_typedefs.cc, insert.cc, rfind.cc,
+ compare.cc, inserters_extractors.cc, substr.cc: Split up, add
+ wchar_t tests as follows.
+ * 21_strings/basic_string/append/char/1.cc: New.
+ * 21_strings/basic_string/append/wchar_t/1.cc: New.
+ * 21_strings/basic_string/assign/char/1.cc: New.
+ * 21_strings/basic_string/assign/char/2.cc: New.
+ * 21_strings/basic_string/assign/char/3.cc: New.
+ * 21_strings/basic_string/assign/wchar_t/1.cc: New.
+ * 21_strings/basic_string/assign/wchar_t/2.cc: New.
+ * 21_strings/basic_string/assign/wchar_t/3.cc: New.
+ * 21_strings/basic_string/capacity/1.cc: New.
+ * 21_strings/basic_string/capacity/char/1.cc: New.
+ * 21_strings/basic_string/capacity/char/2.cc: New.
+ * 21_strings/basic_string/capacity/wchar_t/1.cc: New.
+ * 21_strings/basic_string/capacity/wchar_t/2.cc: New.
+ * 21_strings/basic_string/compare/char/1.cc: New.
+ * 21_strings/basic_string/compare/wchar_t/1.cc: New.
+ * 21_strings/basic_string/cons/char/1.cc: New.
+ * 21_strings/basic_string/cons/char/2.cc: New.
+ * 21_strings/basic_string/cons/char/3.cc: New.
+ * 21_strings/basic_string/cons/char/4.cc: New.
+ * 21_strings/basic_string/cons/char/5.cc: New.
+ * 21_strings/basic_string/cons/wchar_t/1.cc: New.
+ * 21_strings/basic_string/cons/wchar_t/2.cc: New.
+ * 21_strings/basic_string/cons/wchar_t/3.cc: New.
+ * 21_strings/basic_string/cons/wchar_t/4.cc: New.
+ * 21_strings/basic_string/cons/wchar_t/5.cc: New.
+ * 21_strings/basic_string/element_access/char/1.cc: New.
+ * 21_strings/basic_string/element_access/char/2.cc: New.
+ * 21_strings/basic_string/element_access/char/3.cc: New.
+ * 21_strings/basic_string/element_access/wchar_t/1.cc: New.
+ * 21_strings/basic_string/element_access/wchar_t/2.cc: New.
+ * 21_strings/basic_string/element_access/wchar_t/3.cc: New.
+ * 21_strings/basic_string/find/char/1.cc: New.
+ * 21_strings/basic_string/find/wchar_t/1.cc: New.
+ * 21_strings/basic_string/insert/char/1.cc: New.
+ * 21_strings/basic_string/insert/char/2.cc: New.
+ * 21_strings/basic_string/insert/wchar_t/1.cc: New.
+ * 21_strings/basic_string/insert/wchar_t/2.cc: New.
+ * 21_strings/basic_string/inserters_extractors/char/1.cc: New.
+ * 21_strings/basic_string/inserters_extractors/char/4.cc: New.
+ * 21_strings/basic_string/inserters_extractors/char/5.cc: New.
+ * 21_strings/basic_string/inserters_extractors/char/6.cc: New.
+ * 21_strings/basic_string/inserters_extractors/char/7.cc: New.
+ * 21_strings/basic_string/inserters_extractors/char/8.cc: New.
+ * 21_strings/basic_string/inserters_extractors/char/9.cc: New.
+ * 21_strings/basic_string/inserters_extractors/wchar_t/1.cc: New.
+ * 21_strings/basic_string/inserters_extractors/wchar_t/4.cc: New.
+ * 21_strings/basic_string/inserters_extractors/wchar_t/5.cc: New.
+ * 21_strings/basic_string/inserters_extractors/wchar_t/6.cc: New.
+ * 21_strings/basic_string/inserters_extractors/wchar_t/7.cc: New.
+ * 21_strings/basic_string/inserters_extractors/wchar_t/8.cc: New.
+ * 21_strings/basic_string/inserters_extractors/wchar_t/9.cc: New.
+ * 21_strings/basic_string/operators/char/1.cc: New.
+ * 21_strings/basic_string/operators/char/2.cc: New.
+ * 21_strings/basic_string/operators/wchar_t/1.cc: New.
+ * 21_strings/basic_string/operators/wchar_t/2.cc: New.
+ * 21_strings/basic_string/replace/char/1.cc: New.
+ * 21_strings/basic_string/replace/char/2.cc: New.
+ * 21_strings/basic_string/replace/char/3.cc: New.
+ * 21_strings/basic_string/replace/char/4.cc: New.
+ * 21_strings/basic_string/replace/char/5.cc: New.
+ * 21_strings/basic_string/replace/wchar_t/1.cc: New.
+ * 21_strings/basic_string/replace/wchar_t/2.cc: New.
+ * 21_strings/basic_string/replace/wchar_t/3.cc: New.
+ * 21_strings/basic_string/replace/wchar_t/4.cc: New.
+ * 21_strings/basic_string/replace/wchar_t/5.cc: New.
+ * 21_strings/basic_string/rfind/char/1.cc: New.
+ * 21_strings/basic_string/rfind/char/2.cc: New.
+ * 21_strings/basic_string/rfind/char/3.cc: New.
+ * 21_strings/basic_string/rfind/wchar_t/1.cc: New.
+ * 21_strings/basic_string/rfind/wchar_t/2.cc: New.
+ * 21_strings/basic_string/rfind/wchar_t/3.cc: New.
+ * 21_strings/basic_string/substr/char/1.cc: New.
+ * 21_strings/basic_string/substr/wchar_t/1.cc: New.
+ * 21_strings/c_strings/char/1.cc: New.
+ * 21_strings/c_strings/char/2.cc: New.
+ * 21_strings/c_strings/wchar_t/1.cc: New.
+ * 21_strings/c_strings/wchar_t/2.cc: New.
+ * 21_strings/char_traits/requirements/char/1.cc: New.
+ * 21_strings/char_traits/requirements/wchar_t/1.cc: New.
+ * 21_strings/char_traits/typedefs/char/1.cc: New.
+
+2003-03-17 Paolo Carlini <pcarlini@unitus.it>
+ Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/10097
+ * src/fstream.cc (basic_filebuf<char>::_M_underflow_common,
+ basic_filebuf<wchar_t>::_M_underflow_common):
+ if (gptr() < egptr()) return *gptr().
+ * testsuite/27_io/filebuf_virtuals.cc (test16): Add.
+
+ * testsuite/27_io/filebuf_members.cc (test_04): Minor
+ changes: unlink fifo before making it, fix spelling error.
+
+2003-03-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/Makefile.am (CLEANFILES): Add tmp*.
+ * testsuite/Makefile.in: Regenerate.
+ * testsuite/27_io/filebuf_members.cc: Consistently name tmp files.
+ Cleanups.
+
+2003-03-17 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/9964
+ * include/bits/fstream.tcc (basic_filebuf::close):
+ Always close file, even when write fails.
+ * testsuite/27_io/filebuf_members.cc (test_07): New test.
+
+2003-03-17 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * libsupc++/Makefile.am (C_COMPILE): Remove.
+ (LTCOMPILE): Likewise.
+ * libsupc++/Makefile.in: Regenerate.
+
+2003-03-14 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/23_containers/bitset_members.cc: Add test variable.
+ * testsuite/23_containers/map_insert.cc: Same.
+ * testsuite/22_locale/ctype/cons/char/1.cc: Same.
+ * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Same.
+ * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Same.
+ * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Same.
+ * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Same.
+ * testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Same.
+ * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Same.
+ * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Same.
+ * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Same.
+ * testsuite/27_io/istream_exception.cc: Same.
+ * testsuite/27_io/filebuf_virtuals.cc: Same.
+ * testsuite/27_io/stringbuf_virtuals.cc: Same.
+ * testsuite/27_io/ostream_inserter_arith.cc: Same.
+ * testsuite/26_numerics/valarray_operators.cc: Same.
+ * testsuite/26_numerics/slice.cc: Same.
+ * testsuite/26_numerics/slice_array_assignment.cc: Same.
+ * testsuite/24_iterators/istream_iterator.cc: Same.
+ * mkcheck.in (TESTS_FILE): Use dejagnu-generated file if possible.
+
+2003-03-14 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/9581
+ PR libstdc++/9870
+ * config/locale/generic/ctype_members.cc,
+ * config/locale/gnu/ctype_members.cc
+ (ctype<wchar_t>::do_widen(char)): Cast argument to
+ unsigned char before passing to btowc.
+ (ctype<wchar_t>::do_widen(const char*, const char*, wchar_t*)):
+ Convert characters with btowc instead of mbsrtowcs.
+ (ctype<wchar_t>::do_narrow(const wchar_t*, const wchar_t*,
+ char, char*):
+ Convert characters with wctob instead of wcsrtombs.
+ * testsuite/22_locale/ctype/narrow/wchar_t/3.cc: New test.
+ * testsuite/22_locale/ctype/widen/wchar_t/2.cc: New test.
+ * testsuite/22_locale/ctype/widen/wchar_t/3.cc: New test.
+
+2003-03-14 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/stdc++.h: New.
+ * libsupc++/exception_defines.h (__EXCEPTION_DEFINES_H): Add guard.
+ * include/Makefile.am (stamp-std-precompile): Generate stdc++.h.gch
+ * include/Makefile.in: Regenerate.
+ * testsuite_flags.in (--build-cxx): Add, but don't use PCHFLAGS.
+ (--cxxflags): Put -g -O2 here.
+ * testsuite/libstdc++-v3.dg/dg.exp: Remove -g -O2 here.
+
+2003-03-14 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite/testsuite_hooks.h: Suppress runtime exception thrown by
+ missing named locale.
+
+2003-03-14 Andreas Schwab <schwab@suse.de>
+
+ * configure.in: Only append to makefiles that are newly created to
+ avoid multiple multi-do/multi-clean rules.
+ * configure: Rebuilt.
+
+2003-03-13 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/configopts.html, docs/html/documentation.html,
+ docs/html/explanations.html, docs/html/install.html,
+ docs/html/19_diagnostics/howto.html, docs/html/faq/index.html: Fix
+ invalid XHTML and make page header style consistent.
+
+2003-03-12 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/faq/index.html: Explain memory "leaks" due to allocators.
+ * docs/html/faq/index.txt: Regenerate.
+ * docs/html/debug.html: Add a bit to allocator text and fix XHTML.
+
+2003-03-12 Andreas Schwab <schwab@suse.de>
+
+ * acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in
+ glibcpp_toolexeclibdir.
+ * aclocal.m4, configure: Rebuilt.
+
+2003-03-11 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/faq/index.html: Update text about location of headers.
+ * docs/html/faq/index.txt: Regenerate.
+
+2003-03-11 Carlo Wood <carlo@alinoe.com>
+
+ * include/bits/demangle.h: Prepend accessors of
+ class qualifier with 'get_' in order to fix warnings
+ when compiling with -Wshadow.
+
+2003-03-11 Loren J. Rittle <ljrittle@acm.org>
+
+ * config/os/bsd/freebsd/ctype_inline.h: Support _M_table
+ when so installed.
+ * testsuite/22_locale/ctype/cons/char/1.cc: Fix typo.
+
+ * testsuite/testsuite_hooks.h (run_tests_wrapped_env): Do not
+ report lack of setenv().
+
+2003-03-09 Paolo Carlini <pcarlini@unitus.it>
+
+ * config/io/basic_file_stdio.cc: include <unistd.h>.
+
+2003-03-09 Paolo Carlini <pcarlini@unitus.it>
+ Nathan Myers <ncm@cantrip.org>
+
+ PR libstdc++/7744
+ * config/io/basic_file_stdio.h (__basic_file<>::xsgetn, xsputn,
+ seekoff, seekpos): Add a boolean parameter __stdio.
+ * config/io/basic_file_stdio.cc (__basic_file<>::xsgetn, xsputn,
+ seekoff, seekpos): If __stdio == true, use fread (fwrite, fseek/ftell,
+ fseek/ftell, respectively), otherwise read (write, lseek, lseek,
+ respectively).
+ * include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external,
+ _M_really_overflow, seekoff): Use the boolean parameter in the calls.
+ * include/std/std_fstream.h (sync): Likewise.
+ * src/fstream.cc (basic_filebuf<>::_M_underflow_common): Likewise.
+ * src/ios.cc (ios_base::Init::_S_ios_create(bool)): Revert
+ libstdc++/8399 commit involving isatty(0).
+ * acinclude.m4 (GLIBCPP_CHECK_UNISTD_DECL_AND_LINKAGE_1): Remove.
+ (GLIBCPP_CHECK_UNISTD_SUPPORT): Remove
+ * configure.in: Remove call.
+ * aclocal.m4: Regenerate.
+ * config.h.in: Regenerate.
+ * configure: Regenerate.
+ * testsuite/27_io/narrow_stream_objects.cc (test11): Add.
+
+2003-03-09 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9988
+ * include/bits/fstream.tcc (overflow): don't write EOF to file.
+ * testsuite/27_io/filebuf_virtuals.cc (test15): Add.
+
+2003-03-08 Jerry Quinn <jlquinn@optonline.net>
+
+ PR libstdc++/9561
+ * include/bits/basic_ios.h (_M_setstate): New.
+ * include/bits/ostream.tcc (operator<<): Use it.
+ * include/bits/istream.tcc (operator>>): Use it.
+ * include/std/std_ostream.h (operator<<): Make friends.
+ * include/std/std_istream.h (operator>>): Make friends.
+ * testsuite/27_io/ostream_exception.cc,
+ testsuite/27_io/istream_exception.cc: New tests.
+
+2003-03-08 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_facets.tcc: Fix typo.
+
+2003-03-08 Loren J. Rittle <ljrittle@acm.org>
+
+ * testsuite/26_numerics/c99_classification_macros_c.cc: Tweak test.
+
+ * config/locale/generic/c_locale.cc
+ (locale::facet::_S_create_c_locale): Throw runtime exception when
+ unsupported language is specified.
+ * testsuite/testsuite_hooks.h
+ (run_test_wrapped_generic_locale_exception_catcher): New function.
+ * testsuite/testsuite_hooks.cc (run_tests_wrapped_locale):
+ Suppress runtime exception thrown by generic implementation.
+ (run_tests_wrapped_env): Likewise.
+ (run_test_wrapped_generic_locale_exception_catcher): New function.
+ * testsuite/22_locale/collate/compare/char/1.cc: New test wrap.
+ * testsuite/22_locale/collate/compare/char/2.cc: New test wrap.
+ * testsuite/22_locale/collate/compare/char/3.cc: New test wrap.
+ * testsuite/22_locale/collate/hash/char/2.cc: New test wrap.
+ * testsuite/22_locale/collate/transform/char/2.cc: New test wrap.
+ * testsuite/22_locale/collate/transform/char/3.cc: New test wrap.
+ * testsuite/22_locale/collate_byname/1.cc: New test wrap.
+ * testsuite/22_locale/ctype/is/char/2.cc: New test wrap.
+ * testsuite/22_locale/facet/2.cc: New test wrap.
+ * testsuite/22_locale/locale/cons/4.cc: New test wrap.
+ * testsuite/22_locale/locale/cons/5.cc: New test wrap.
+ * testsuite/22_locale/locale/cons/7.cc: New test wrap.
+ * testsuite/22_locale/messages/members/char/1.cc: New test wrap.
+ * testsuite/22_locale/messages/members/char/2.cc: New test wrap.
+ * testsuite/22_locale/messages/members/char/3.cc: New test wrap.
+ * testsuite/22_locale/messages_byname/1.cc: New test wrap.
+ * testsuite/22_locale/money_get/get/char/1.cc: New test wrap.
+ * testsuite/22_locale/money_get/get/char/2.cc: New test wrap.
+ * testsuite/22_locale/money_get/get/char/3.cc: New test wrap.
+ * testsuite/22_locale/money_get/get/char/4.cc: New test wrap.
+ * testsuite/22_locale/money_put/put/char/1.cc: New test wrap.
+ * testsuite/22_locale/money_put/put/char/2.cc: New test wrap.
+ * testsuite/22_locale/money_put/put/char/3.cc: New test wrap.
+ * testsuite/22_locale/moneypunct/members/char/2.cc: New test wrap.
+ * testsuite/22_locale/moneypunct_byname/1.cc: New test wrap.
+ * testsuite/22_locale/num_get/get/char/1.cc: New test wrap.
+ * testsuite/22_locale/num_get/get/char/2.cc: New test wrap.
+ * testsuite/22_locale/num_get/get/char/3.cc: New test wrap.
+ * testsuite/22_locale/num_get/get/char/5.cc: New test wrap.
+ * testsuite/22_locale/num_get/get/char/6.cc: New test wrap.
+ * testsuite/22_locale/num_put/put/char/1.cc: New test wrap.
+ * testsuite/22_locale/num_put/put/char/2.cc: New test wrap.
+ * testsuite/22_locale/num_put/put/char/3.cc: New test wrap.
+ * testsuite/22_locale/num_put/put/char/5.cc: New test wrap.
+ * testsuite/22_locale/numpunct/members/char/1.cc: New test wrap.
+ * testsuite/22_locale/numpunct/members/char/2.cc: New test wrap.
+ * testsuite/22_locale/numpunct_byname/1.cc: New test wrap.
+ * testsuite/22_locale/numpunct_byname/2.cc: New test wrap.
+ * testsuite/22_locale/time_get/date_order/char/1.cc: New test wrap.
+ * testsuite/22_locale/time_get/get_date/char/1.cc: New test wrap.
+ * testsuite/22_locale/time_get/get_date/char/2.cc: New test wrap.
+ * testsuite/22_locale/time_get/get_monthname/char/1.cc: New test wrap.
+ * testsuite/22_locale/time_get/get_monthname/char/2.cc: New test wrap.
+ * testsuite/22_locale/time_get/get_time/char/1.cc: New test wrap.
+ * testsuite/22_locale/time_get/get_time/char/2.cc: New test wrap.
+ * testsuite/22_locale/time_get/get_weekday/char/1.cc: New test wrap.
+ * testsuite/22_locale/time_get/get_weekday/char/2.cc: New test wrap.
+ * testsuite/22_locale/time_get/get_year/char/1.cc: New test wrap.
+ * testsuite/22_locale/time_put/put/char/1.cc: New test wrap.
+ * testsuite/22_locale/time_put/put/char/2.cc: New test wrap.
+ * testsuite/22_locale/time_put/put/char/3.cc: New test wrap.
+ * testsuite/22_locale/time_put/put/char/4.cc: New test wrap.
+ * testsuite/22_locale/time_put/put/char/5.cc: New test wrap.
+ * testsuite/22_locale/time_put/put/char/6.cc: New test wrap.
+ * testsuite/22_locale/time_put/put/char/7.cc: New test wrap.
+ * testsuite/22_locale/time_put/put/char/8.cc: New test wrap.
+ * testsuite/27_io/filebuf_virtuals.cc: New test wrap.
+ * testsuite/27_io/ios_members.cc: New test wrap.
+ * testsuite/27_io/ostream_inserter_arith.cc (test02): Make void.
+ New test wrap.
+ * testsuite/27_io/streambuf_members.cc: New test wrap.
+ * testsuite/27_io/stringbuf_virtuals.cc: New test wrap.
+
+2003-03-08 Paolo Carlini <pcarlini@unitus.it>
+ Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/9424
+ * include/bits/streambuf.tcc (__copy_streambufs): Use
+ sgetn-sputn only when sputn cannot fail, otherwise fall back
+ to safe snextc-sputc.
+ * testsuite/27_io/streambuf_members.cc (test11, test12): Add.
+
+2003-03-08 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/locale_facets.tcc (num_put::do_put(bool)): Use
+ locale cache for truename and falsename.
+
+2003-03-08 Jerry Quinn <jlquinn@optonline.net>
+
+ * src/ios.cc (ios_base::ios_base): Correct order of _M_word and
+ _M_word_size initialization.
+
+2003-03-07 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/fstream.tcc (_M_convert_to_external):
+ Set __elen to zero if codecvt::out eventually fails.
+
+2003-03-07 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9182
+ * include/bits/fstream.tcc (_M_really_overflow): Check
+ for _M_convert_to_external possible failures.
+ * include/std/std_fstream.h (sync): Check _M_really_overflow
+ return value and return -1 in case of failure.
+ * testsuite/27_io/filebuf_virtuals.cc (test13, test14): Add.
+
+2003-03-07 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9826
+ * include/bits/istream.tcc (operator>>(_CharT*),
+ operator>>(basic_string&), ws): Pass a char_type to __ctype.is.
+ * testsuite/27_io/stringstream.cc (test02): Add.
+
+ * include/bits/istream.tcc (operator>>(_CharT*)):
+ Assign a char_type to *__s.
+
+2003-03-07 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/9817
+ * include/bits/locale_facets.tcc
+ (collate::do_compare, collate::do_transform):
+ Handle nul characters in input.
+ * testsuite/22_locale/collate/compare/char/3.cc: New test.
+ * testsuite/22_locale/collate/compare/wchar_t/3.cc: New test.
+ * testsuite/22_locale/collate/transform/char/3.cc: New test.
+ * testsuite/22_locale/collate/transform/wchar_t/3.cc: New test.
+
+2003-03-07 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/streambuf_iterator.h (_M_put): Set _M_failed if
+ sputn fails.
+ * testsuite/27_io/ostream_fail.cc: New test.
+
+2003-03-07 Matthias Klose <doko@debian.org>
+
+ * Makefile.am (AM_MAKEFLAGS): Also pass gxx_include_dir.
+ FLAGS_TO_PASS: Set to AM_MAKEFLAGS
+ * Makefile.in: Regenerate.
+ * libsupc++/Makefile.am: Express glibcppinstalldir in terms
+ of gxx_include_dir.
+ AM_MAKEFLAGS: Pass gxx_include_dir.
+ * libsupc++/Makefile.in: Regenerate.
+
+2003-03-06 Jerry Quinn <jlquinn@optonline.net>
+
+ * testsuite/27_io/ios_base_storage.cc (test02): Set exception
+ mask. Test setting small-numbered pword and iword slots. Test
+ behavior at limit of numeric_limits::max. Check that values are
+ still good after failures.
+
+2003-03-06 Jerry Quinn <jlquinn@optonline.net>
+
+ * src/ios.cc (ios_base::_M_init): Remove _M_word_size.
+ (ios_base::ios_base): Set _M_word, _M_word_size.
+ (ios_base::~ios_base): Remove redundant test.
+ * testsuite/27_io/ios_base_storage.cc (test03): New.
+
+2003-03-04 Alexandre Oliva <aoliva@redhat.com>
+
+ * src/strstream.cc, include/bits/basic_string.tcc: Remove
+ incorrect whitespace added in my previous change.
+
+2003-03-05 Carlo Wood <carlo@alinoe.com>
+
+ * include/bits/ios_base.h(ios_base::Init::_S_initialized()): Added
+ _S_initialized() in order to allow debugging libraries to detect
+ when the std streams are initialized from an overloaded operator
+ new.
+
+2003-03-05 Benjamin Kosnik <bkoz@redhat.com>
+
+ * libsupc++/demangle.h: Move to..
+ * include/bits/demangle.h: ...here.
+ * src/demangle.cc: Adjust include.
+ * include/Makefile.am (bits_headers): Add.
+ * include/Makefile.in: Regenerate.
+
+2003-03-04 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/globals.cc: Clarify comments, remove c_locale_imp_compat.
+
+ * config/linker-map.gnu: Filter typeinfo and vtable info.
+
+2003-03-04 Jerry Quinn <jlquinn@optonline.net>
+
+ * src/ios.cc (ios_base::_M_grow_words): Don't delete _M_word on
+ new failure. Throw exception if badbit and exception mask when ix
+ >= numeric_limits<int>::max().
+
+2003-03-04 Alexandre Oliva <aoliva@redhat.com>
+
+ * src/strstream.cc (strstreambuf::overflow): Make sure operands of
+ min and max have the same type.
+ * include/bits/basic_string.tcc (append, rfind, compare): Likewise.
+
+2003-03-04 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/Makefile.am (allstamps): Remove stamp-std-precompile.
+ * include/Makefile.in: Regenerate.
+
+2003-03-03 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/abi_check.cc (report_symbol_info): Add version info.
+
+ * config/linker-map.gnu: Hide more stuff.
+ * include/Makefile.am: Cleanups.
+ * include/Makefile.in: Regenerate.
+
+2003-02-27 Jerry Quinn <jlquinn@optonline.net>
+
+ * config/locale/generic/messages_members.h (messages::messages):
+ Remove name from unused parameter.
+
+2003-02-27 Benjamin Kosnik <bkoz@redhat.com>
+
+ * src/Makefile.am (sources): Add demangle.cc.
+ (demangle.o): Add.
+ (demangle.lo): Add.
+ * src/Makefile.in: Regenerate.
+ * libsupc++/Makefile.am: Remove old __cxa_demangle bits.
+ * libsupc++/Makefile.in: Regenerate.
+
+ * testsuite/testsuite_hooks.h
+ (__gnu_cxx_test::verify_demangle): New.
+ * testsuite/testsuite_hooks.cc: Define.
+
+2003-02-27 Carlo Wood <carlo@alinoe.com>
+
+ * src/demangle.cc: New.
+ * libsupc++/demangle.h: New.
+
+2003-02-27 Benjamin Kosnik <bkoz@redhat.com>
+ Carlo Wood <carlo@alinoe.com>
+
+ * testsuite/demangle/abi_examples/01.cc: New.
+ * testsuite/demangle/abi_examples/02.cc: New.
+ * testsuite/demangle/abi_examples/03.cc: New.
+ * testsuite/demangle/abi_examples/04.cc: New.
+ * testsuite/demangle/abi_examples/05.cc: New.
+ * testsuite/demangle/abi_examples/06.cc: New.
+ * testsuite/demangle/abi_examples/07.cc: New.
+ * testsuite/demangle/abi_examples/08.cc: New.
+ * testsuite/demangle/abi_examples/09.cc: New.
+ * testsuite/demangle/abi_examples/10.cc: New.
+ * testsuite/demangle/abi_examples/11.cc: New.
+ * testsuite/demangle/abi_examples/12.cc: New.
+ * testsuite/demangle/abi_examples/13.cc: New.
+ * testsuite/demangle/abi_examples/14.cc: New.
+ * testsuite/demangle/abi_examples/15.cc: New.
+ * testsuite/demangle/abi_examples/16.cc: New.
+ * testsuite/demangle/abi_examples/17.cc: New.
+ * testsuite/demangle/abi_examples/18.cc: New.
+ * testsuite/demangle/abi_examples/19.cc: New.
+ * testsuite/demangle/abi_examples/20.cc: New.
+ * testsuite/demangle/abi_examples/21.cc: New.
+ * testsuite/demangle/abi_examples/22.cc: New.
+ * testsuite/demangle/abi_examples/23.cc: New.
+ * testsuite/demangle/abi_examples/24.cc: New.
+ * testsuite/demangle/abi_examples/25.cc: New.
+ * testsuite/demangle/abi_examples/26.cc: New.
+ * testsuite/demangle/abi_text/01.cc: New.
+ * testsuite/demangle/abi_text/02.cc: New.
+ * testsuite/demangle/abi_text/03.cc: New.
+ * testsuite/demangle/abi_text/04.cc: New.
+ * testsuite/demangle/abi_text/05.cc: New.
+ * testsuite/demangle/abi_text/06.cc: New.
+ * testsuite/demangle/abi_text/07.cc: New.
+ * testsuite/demangle/abi_text/08.cc: New.
+ * testsuite/demangle/abi_text/09.cc: New.
+ * testsuite/demangle/abi_text/10.cc: New.
+ * testsuite/demangle/abi_text/11.cc: New.
+ * testsuite/demangle/abi_text/12.cc: New.
+ * testsuite/demangle/abi_text/13.cc: New.
+ * testsuite/demangle/abi_text/14.cc: New.
+ * testsuite/demangle/regression/3111-1.cc: New.
+ * testsuite/demangle/regression/3111-2.cc: New.
+ * testsuite/demangle/regression/7986-01.cc: New.
+ * testsuite/demangle/regression/7986-02.cc: New.
+ * testsuite/demangle/regression/7986-03.cc: New.
+ * testsuite/demangle/regression/7986-04.cc: New.
+ * testsuite/demangle/regression/7986-05.cc: New.
+ * testsuite/demangle/regression/7986-06.cc: New.
+ * testsuite/demangle/regression/7986-07.cc: New.
+ * testsuite/demangle/regression/7986-08.cc: New.
+ * testsuite/demangle/regression/7986-09.cc: New.
+ * testsuite/demangle/regression/7986-10.cc: New.
+ * testsuite/demangle/regression/7986-11.cc: New.
+ * testsuite/demangle/regression/7986-12.cc: New.
+ * testsuite/demangle/regression/7986.cc: New.
+ * testsuite/demangle/regression/8897.cc: New.
+ * testsuite/demangle/regression/cw-01.cc: New.
+ * testsuite/demangle/regression/cw-02.cc: New.
+ * testsuite/demangle/regression/cw-03.cc: New.
+ * testsuite/demangle/regression/cw-04.cc: New.
+ * testsuite/demangle/regression/cw-05.cc: New.
+ * testsuite/demangle/regression/cw-06.cc: New.
+ * testsuite/demangle/regression/cw-07.cc: New.
+ * testsuite/demangle/regression/cw-08.cc: New.
+ * testsuite/demangle/regression/cw-09.cc: New.
+ * testsuite/demangle/regression/cw-10.cc: New.
+ * testsuite/demangle/regression/cw-11.cc: New.
+ * testsuite/demangle/regression/cw-12.cc: New.
+ * testsuite/demangle/regression/cw-13.cc: New.
+ * testsuite/demangle/regression/cw-14.cc: New.
+ * testsuite/demangle/regression/old.cc: New.
+
+2003-02-25 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/doxygen/Intro.3: Update with new (proper) names.
+ * docs/doxygen/TODO: Update.
+ * docs/doxygen/run_doxygen: More comments, fix up man pages.
+ Fake entries for standard typedefs.
+ * docs/doxygen/user.cfg.in: Turn INLINE_INHERITED_MEMB back on.
+ * docs/html/documentation.html: Top-level man page is now called
+ C++Intro.
+ * include/std/std_limits.h: Doxygenate.
+
+2003-02-25 Scott Snyder <snyder@fnal.gov>
+
+ PR libstdc++/9811
+ * include/bits/stl_map.h (lower_bound, upper_bound, equal_range):
+ Correct documentation.
+ * include/bits/stl_multimap.h (lower_bound, upper_bound,
+ equal_range): Likewise.
+
+2003-02-24 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9825
+ * src/fstream.cc
+ (basic_filebuf<char/wchar_t>::_M_underflow_common): When
+ __bump is true (uflow), always increment the read pointer
+ (_M_in_cur) before returning successfully.
+ * testsuite/27_io/filebuf_virtuals.cc (test12): Add.
+
+2003-02-24 Paolo Carlini <pcarlini@unitus.it>
+ Nathan Myers <ncm@cantrip.org>
+
+ PR libstdc++/9404, PR libstdc++/9701 (partial)
+ (aka pptr == epptr implies overflow)
+ * include/bits/fstream.tcc (_M_allocate_internal_buffer):
+ Consistently, _M_out_end points to the end of the buffer just
+ created.
+ (overflow): Tweak to use _M_out_buf_size().
+ (_M_convert_to_external): The role of the old _M_out_end is
+ now played by _M_out_lim.
+ (_M_really_overflow): Likewise.
+ (seekoff): Likewise.
+ (setbuf): _M_out_end points to the end of the external buffer.
+ * include/bits/sstream.tcc (overflow): Rewrote, taking into
+ account the resolution of DR 169 (TC).
+ (seekoff): Use _M_string.capacity(); ios_base::end is now _M_out_lim.
+ (seekpos): Use _M_string.capacity(); tweak.
+ * include/bits/streambuf.tcc (sputc, xsputn): Remove comments.
+ * include/std/std_fstream.h (sync): The role of the old
+ _M_out_end is now played by _M_out_lim.
+ (_M_set_indeterminate): Use _M_set_determinate.
+ (_M_set_determinate): _M_out_end is now _M_out_lim.
+ (_M_is_indeterminate): Likewise.
+ * include/std/std_sstream.h (str()): _M_out_end is now _M_out_lim.
+ (_M_stringbuf_init): Don't set _M_buf_size, unused for sstreams,
+ which have the information readily available as _M_string.capacity();
+ for ate and app modes, pass the string size to _M_really_sync.
+ (_M_really_sync): Consistently set _M_out_end and _M_out_lim, to
+ point to the end of the buffer (i.e., epptr) and to the string end,
+ respectively.
+ * include/std/std_streambuf.h: tweak comments, add _M_out_lim,
+ which points to the right limit of the used put area.
+ (_M_out_cur_move): The role of the old _M_out_end is now played
+ by _M_out_lim.
+ (_M_out_buf_size): Simplify: now (when _M_out_cur) return simply
+ _M_out_end - _M_out_cur (i.e., pptr), _very_ close to the letter
+ of the standard.
+ (basic_streambuf()): Initialize _M_out_lim too.
+ * testsuite/27_io/filebuf_virtuals.cc (test10): Trivial tweak.
+ * testsuite/27_io/filebuf_virtuals.cc (test11): Add.
+ * testsuite/27_io/stringbuf_virtuals.cc (test09): Add.
+
+2003-02-24 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/27_io/ios_base_storage.cc (main): Call
+ set_memory_limits.
+
+2003-02-21 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/locale_facets.tcc (_M_convert_float): Replace
+ numpunct facet accesses with data from __locale_cache.
+
+2003-02-20 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/html/faq/index.html (3.9): New note, wchar_t on FreeBSD.
+ * docs/html/faq/index.txt: Regenerate.
+
+2003-02-20 Phil Edwards <pme@gcc.gnu.org>
+
+ * config/linker-map.gnu: Also export locking symbols needed for the
+ generic atomicity.h case.
+
+2003-02-20 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
+ config.status.
+ * configure: Rebuilt.
+
+2003-02-19 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/sstream.tcc (overflow): According to
+ 27.7.1.3, p5, actual output is performed by sputc(c).
+
+2003-02-19 Phil Edwards <pme@gcc.gnu.org>
+
+ PR libstdc++/9582
+ * include/bits/stl_alloc.h: Remove all traces of assert().
+
+2003-02-18 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/std/std_sstream.h (str()): the size of the
+ current string may be different from the initial one
+ whenever _M_out_end > _M_out_beg.
+ * testsuite/27_io/stringbuf_members.cc (test07): Add.
+
+2003-02-18 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9582
+ * include/bits/stl_alloc.h (__pool_alloc::allocate): Remove assert.
+
+2003-02-17 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/basic_ios.tcc (copyfmt): Copy locale data as well.
+ * testsuite/27_io/ios_members.cc (test03): New.
+
+2003-02-17 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/basic_ios.h (basic_ios::_M_cache_locale): Declare.
+ (basic_ios::_M_cache_facets): Move into above.
+ * include/bits/basic_ios.tcc (basic_ios::copyfmt): Rebuild locale
+ cache.
+ (basic_ios::imbue): Force locale cache to be built.
+ (basic_ios::_M_init): Create and initialize locale cache.
+ * include/bits/ios_base.h (__locale_cache_base): Declare.
+ (ios_base::_M_locale_cache): New.
+ (ios_base::_M_cache): Define.
+ * include/bits/locale_facets.h: (__num_base): Fix comment. Add
+ _S_end.
+ (__locale_cache_base,__locale_cache<_CharT>): New classes.
+ (__locale_cache<char>, __locale_cache<wchar_t>): New specializations.
+ * include/bits/locale_facets.tcc (num_put::_M_convert_int): Use locale
+ cache literal string, grouping flag, thousands separator.
+ (__locale_cache<_CharT>::__locale_cache): New.
+ (__locale_cache<_CharT>::_M_init): New.
+ * src/ios.cc: Clear _M_locale_cache in constructor.
+ * src/locale-inst.cc (__locale_cache<char>, __locale_cache<_char_t>):
+ New.
+
+2003-02-17 Paolo Carlini <pcarlini@unitus.it>
+
+ * src/locale-inst.cc: Do not include <cassert>.
+ * src/locale.cc: Likewise.
+
+2003-02-17 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9580
+ * include/std/std_fstream.h: Declare underflow and uflow
+ specializations, change generic definitions to do nothing.
+ * src/fstream.cc: Add underflow and uflow specializations.
+
+2003-02-17 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9169
+ * include/bits/fstream.tcc (_M_convert_to_external):
+ Deal correctly with noconv, as prescribed by 27.8.1.4,p8.
+ * testsuite/27_io/filebuf_virtuals.cc (test10): Add.
+
+2003-02-13 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/c++config (_GLIBCPP_EXTERN_TEMPLATE): Define.
+ * include/bits/basic_ios.tcc: Guard use of extern template.
+ * include/std/std_iomanip.h: Same.
+ * include/bits/streambuf.tcc: Same.
+ * include/bits/stl_alloc.h: Same.
+ * include/bits/locale_facets.tcc: Same.
+ * include/bits/ostream.tcc: Same.
+ * include/bits/istream.tcc: Same.
+ * include/bits/fstream.tcc: Same.
+ * include/bits/basic_string.tcc: Same.
+
+2003-02-13 Paolo Carlini <pcarlini@unitus.it>
+
+ * include/bits/ostream.tcc (sentry::sentry): Improve
+ performance-wise the fix for libstdc++/9563.
+
+2003-02-12 Phil Edwards <pme@gcc.gnu.org>
+
+ * config/cpu/generic/atomicity.h (_Atomic_add_mutex): Fix declaration.
+ (_GLIBCPP_NEED_GENERIC_MUTEX): Define for this file.
+ (_Atomic_add_mutex_once, __gthread_atomic_add_mutex_once): Declare
+ when we don't have static mutex initialization.
+ (__exchange_and_add): Use _Atomic_add_mutex_once.
+ * src/misc-inst.cc: Definitions of all the above.
+
+2003-02-12 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9563
+ * include/bits/ostream.tcc (sentry::sentry): Check
+ the state of the stream after the preparation.
+ * testsuite/27_io/ostream_sentry.cc (test02): Add.
+
+2003-02-11 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/Makefile.am (stamp-std-precompile): Add rule.
+ * include/Makefile.in: Regenerated.
+
+2003-02-11 Jerry Quinn <jlquinn@optonline.net>
+ Benjamin Kosnik <benjamin@redhat.com>
+
+ * include/bits/locale_facets.h (__num_base): Add _S_atoms_out.
+ Add indexes into this array.
+ (__num_base::_S_atoms): To _S_atoms_in.
+ (num_put::_M_insert): Rename to _M_pad.
+ (num_put::_M_convert_int): Adjust remove __mod, __modl arguments.
+ (num_put::_M_widen_int): Rename to _M_group_int.
+ (num_put::_M_widen_float): Rename to _M_group_float.
+ * include/bits/locale_facets.tcc (__int_to_char): New inline
+ function and adapter functions.
+ (num_put::_M_group_int): Streamline.
+ (num_put::_M_group_float): Streamline.
+ (num_put::_M_convert_int): Remove unused parameter names. Choose
+ large enough buffer for text. Use __int_to_char instead of
+ __convert_from_v. Formatted text is now at the end of the buffer.
+ (num_put::_M_convert_float): Preliminary fixups.
+ * src/locale-inst.cc (__convert_from_v<long long>): Add ifdef.
+ (__int_to_char<unsigned long long>): Same.
+ (__int_to_char<char, unsigned long>): New.
+ (__int_to_char<char, unsigned long long>): New.
+ (__int_to_char<wchar_t, unsigned long>): New.
+ (__int_to_char<wchar_t, unsigned long long>): New.
+
+2003-02-11 Scott Snyder <snyder@fnal.gov>
+
+ PR libstdc++/9659
+ * include/bits/fstream.tcc (seekoff): Avoid operator+
+ for pos_type.
+
+2003-02-11 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9320
+ * include/ext/stdio_filebuf.h
+ (stdio_filebuf(int, std::ios_base::openmode, bool, int_type),
+ stdio_filebuf(std::__c_file*, std::ios_base::openmode, int_type)):
+ Change to take a __size parameter of type size_t, not
+ of type (template parameter dependent) int_type.
+ * src/ios.cc (ios_base::Init::_S_ios_create): Change type of
+ size vars to size_t.
+ * testsuite/ext/stdio_filebuf.cc: Add.
+
+2003-02-11 Paolo Carlini <pcarlini@unitus.it>
+ Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/9318
+ * include/bits/streambuf.tcc (__copy_streambufs):
+ Don't conditionalize the copy to __testput.
+ * testsuite/27_io/streambuf_members.cc (test09, test10): Add.
+
+2002-02-11 DJ Delorie <dj@redhat.com>
+
+ * acinclude.m4: Check for native targets that can't link at
+ this point in the build.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+
+2003-02-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * hppa/atomicity.h (__Atomicity_lock<__inst>::_S_atomicity_lock):
+ Correct alignment.
+ (__exchange_and_add, __atomic_add): Use PA 2.0 ordered store to reset
+ lock.
+
+2003-02-07 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/27_io/filebuf_virtuals.cc (test08): Fix for
+ unsigned char platforms.
+
+2003-02-06 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9562
+ * include/std/std_istream.h
+ (basic_istream::sentry::operator bool()): Make const.
+ * include/std/std_ostream.h
+ (basic_ostream::sentry::operator bool()): Likewise.
+ * testsuite/27_io/istream_sentry.cc (test03): Add.
+ * testsuite/27_io/ostream_sentry.cc: Add.
+
+2003-02-06 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9548
+ Implement resolution of DR 231 (Ready)
+ * include/bits/locale_facets.h (__num_base::_S_format_float):
+ Change declaration: return void, remove __prec parameter.
+ * src/locale.cc (__num_base::_S_format_float): Implement
+ resolution of DR 231.
+ * include/bits/locale_facets.tcc (num_put::_M_convert_float):
+ Tweak uses. Check for negative precision.
+ * testsuite/22_locale/num_put/put/char/6.cc: Add
+ * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
+
+2003-02-06 Peter Soetens <peter.soetens@mech.kuleuven.ac.be>
+
+ * config/io/basic_file_libio.h: Fixups.
+ * config/io/c_io_libio.h: Same.
+ * libio/Makefile.am: Same.
+ * libio/Makefile.in: Regenerated.
+
+2003-02-06 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/22_locale/codecvt/encoding/wchar_t/1.cc (test01):
+ Explicitly use the "C" locale.
+ * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc (test01): Same.
+
+2003-02-06 Petur Runolfsson <peturr02@ru.is>
+
+ DR 75
+ DR 305
+ PR libstdc++/9028 (partial)
+ PR libstdc++/9224
+ PR libstdc++/9246
+ PR libstdc++/9247
+
+ * src/codecvt.cc
+ (codecvt<wchar_t, char, mbstate_t>::do_encoding,
+ codecvt<wchar_t, char, mbstate_t>::do_length,
+ codecvt<wchar_t, char, mbstate_t>::do_max_length):
+ Move...
+ * config/locale/generic/codecvt_members.cc: ...here.
+ * config/locale/gnu/codecvt_members.cc: ...and here.
+
+ * config/locale/generic/codecvt_members.cc,
+ * config/locale/gnu/codecvt_members.cc
+ (codecvt<wchar_t, char, mbstate_t>::do_encoding
+ codecvt<wchar_t, char, mbstate_t>::do_in,
+ codecvt<wchar_t, char, mbstate_t>::do_length,
+ codecvt<wchar_t, char, mbstate_t>::do_max_length,
+ codecvt<wchar_t, char, mbstate_t>::do_out):
+ New implementation that handles stateless encodings,
+ including UTF-8.
+
+ * config/locale/generic/codecvt_members.cc,
+ * config/locale/gnu/codecvt_members.cc,
+ * config/locale/ieee_1003.1-2001/codecvt_specializations.h,
+ * include/bits/codecvt.h,
+ * src/codecvt.cc
+ (codecvt::length, codecvt::do_length):
+ Change type of first argument of length and do_length from
+ 'const state_type&' to 'state_type&' according to DR 75.
+
+ * testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Cleanup.
+ * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: New test.
+ * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: New test.
+ * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: New test.
+ * testsuite/22_locale/codecvt/encoding/wchar_t/1.cc:
+ Cleanup and check for correct return value from encoding
+ for "C" locale.
+ * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: New test.
+ * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: New test.
+ * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: New test.
+ * testsuite/22_locale/codecvt/in/wchar_t/1.cc: Cleanup.
+ * testsuite/22_locale/codecvt/in/wchar_t/2.cc: New test.
+ * testsuite/22_locale/codecvt/in/wchar_t/3.cc: New test.
+ * testsuite/22_locale/codecvt/in/wchar_t/4.cc: New test.
+ * testsuite/22_locale/codecvt/in/wchar_t/5.cc: New test.
+ * testsuite/22_locale/codecvt/in/wchar_t/6.cc: New test.
+ * testsuite/22_locale/codecvt/in/wchar_t/7.cc: New test.
+ * testsuite/22_locale/codecvt/in/wchar_t/8.cc: New test.
+ * testsuite/22_locale/codecvt/in/wchar_t/9.cc: New test.
+ * testsuite/22_locale/codecvt/length/char/1.cc: Cleanup.
+ * testsuite/22_locale/codecvt/length/char/2.cc: New test.
+ * testsuite/22_locale/codecvt/length/wchar_t/1.cc: Cleanup.
+ * testsuite/22_locale/codecvt/length/wchar_t/2.cc: New test.
+ * testsuite/22_locale/codecvt/length/wchar_t/3.cc: New test.
+ * testsuite/22_locale/codecvt/length/wchar_t/4.cc: New test.
+ * testsuite/22_locale/codecvt/length/wchar_t/5.cc: New test.
+ * testsuite/22_locale/codecvt/length/wchar_t/6.cc: New test.
+ * testsuite/22_locale/codecvt/length/wchar_t/7.cc: New test.
+ * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Cleanup.
+ * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: New test.
+ * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: New test.
+ * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: New test.
+ * testsuite/22_locale/codecvt/out/wchar_t/1.cc: Cleanup.
+ * testsuite/22_locale/codecvt/out/wchar_t/2.cc: New test.
+ * testsuite/22_locale/codecvt/out/wchar_t/3.cc: New test.
+ * testsuite/22_locale/codecvt/out/wchar_t/4.cc: New test.
+ * testsuite/22_locale/codecvt/out/wchar_t/5.cc: New test.
+ * testsuite/22_locale/codecvt/out/wchar_t/6.cc: New test.
+ * testsuite/22_locale/codecvt/out/wchar_t/7.cc: New test.
+ * testsuite/22_locale/codecvt/unicode/1.cc: New test.
+ * testsuite/22_locale/codecvt/unshift/wchar_t/1.cc: Cleanup.
+ * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: New test.
+ * testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: New test.
+ * testsuite/22_locale/codecvt/unshfit/wchar_t/4.cc: New test.
+
+2003-02-05 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_facets.tcc (time_put::do_put): Use __write.
+ (money_put::do_put): Same.
+
+2003-02-05 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/bits/ios_base.h (ios_base): Document reserved storage.
+
+ * include/bits/locale_facets.h: (struct __pad): Comment on
+ implementation.
+ (__verify_grouping): Same.
+ (__add_grouping): Same.
+ * include/bits/locale_facets.tcc (__verify_grouping): Move
+ comments to declaration.
+ (__add_grouping): Same.
+
+ * include/bits/locale_facets.tcc:
+ (__write<_CharT, _OutIter>): New function.
+ (__write<_CharT>): New function specialization.
+ (num_put::_M_insert): Remove explicit loop over iterator. Use
+ __write.
+ (num_put::_M_widen_float): Remove __basefield.
+ (num_put::_M_widen_int): Move __basefield to within grouping block.
+
+ * include/bits/streambuf_iterator.h: Include <streambuf>.
+ (ostreambuf_iterator::_M_put): Add.
+
+2003-02-05 Paolo Carlini <pcarlini@unitus.it>
+
+ * testsuite/26_numerics/valarray_name_lookup.cc: Fix typo.
+
+2003-02-04 Nathan Myers <ncm@cantrip.org>
+
+ * testsuite/25_algorithms/min_max.cc (test02): Add.
+
+2003-02-04 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9439, PR libstdc++/9425
+ * config/io/basic_file_stdio.cc
+ (__basic_file<char>::seekoff, seekpos): Return -1L if
+ fseek fails.
+ * include/bits/fstream.tcc (basic_filebuf::seekoff):
+ Check _M_file.seekoff return value; always return
+ pos_type(off_type(-1)) in case of failure.
+ (basic_filebuf::pbackfail): Check this->seekoff return
+ value and return traits_type::eof() in case of failure.
+ * testsuite/27_io/filebuf_virtuals.cc (test09): Add.
+
+2003-02-04 Jerry Quinn <jlquinn@optonline.net>
+
+ * include/std/std_ostream.h (ostream::_M_write): Declare.
+ * ostream.tcc (ostream::_M_write): Define.
+ (basic_ostream::write): Use it.
+ (operator<<(basic_ostream, _CharT)): Ditto.
+ (operator<<(basic_ostream, char)): Ditto.
+ (operator<<(basic_ostream, _CharT*)): Ditto.
+ (operator<<(basic_ostream, char*)): Ditto.
+ (operator<<(basic_ostream, basic_string)): Ditto.
+
+2003-02-04 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/26_numerics/valarray_name_lookup.cc: Fix.
+
+2002-02-04 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/27_io/howto.html: Link to Dietmar Kuehl's IOStream page,
+ add HTML comment about updating links if numbering changes.
+
+2003-02-04 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9538
+ * include/bits/streambuf.tcc (sputbackc): Access
+ this->gptr()[-1] only if _M_in_beg < _M_in_cur.
+ * testsuite/27_io/filebuf_virtuals.cc (test08): Add.
+
+2003-02-04 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9507
+ * include/bits/fstream.tcc (open): If the 'ate' repositioning
+ operation fails, calls close _and_ returns a null pointer
+ to indicate failure (27.8.1.3,4).
+ * testsuite/27_io/filebuf_members.cc (test_06): Add.
+
+2003-02-04 Petur Runolfsson <peturr02@ru.is>
+
+ * testsuite/27_io/filebuf_members.cc (test_04): Remove exit(0).
+
+2002-02-04 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * docs/html/27_io/howto.html: New section on stdio_filebuf.
+ * docs/html/ext/howto.html: Move stdio_filebuf notes to 27_io.
+ * docs/html/documentation.html: Regenerate.
+
+2003-02-04 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * docs/html/17_intro/porting.texi: Update to GFDL 1.2.
+ * docs/html/17_intro/porting.html: Regenerate.
+
+2003-02-03 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
+ Phil Edwards <pme@gcc.gnu.org>
+
+ * include/std/std_bitset.h: Replace CHAR_BIT with __CHAR_BIT__, use
+ numeric_limits for bits-per-word values.
+ (_Base_bitset::_M_do_count, _Base_bitset<1>::_M_do_count):
+ Use __builtin_popcountl instead.
+ (_Base_bitset::_M_do_find_first, _Base_bitset::_M_do_find_next,
+ _Base_bitset<1>::_M_do_find_first, _Base_bitset<1>::_M_do_find_next):
+ Use __builtin_ctzl instead.
+ (_S_bit_count, _S_first_one): Remove.
+ * config/linker-map.gnu (GLIBCPP_3.4): Remove std::_S_bit_count.
+ * src/Makefile.am (sources): Remove bitset.cc.
+ * src/bitset.cc: Delete file.
+ * src/Makefile.in: Regenerate.
+
+2003-02-03 Phil Edwards <pme@gcc.gnu.org>
+
+ PR libstdc++/9527, PR libstdc++/8713
+ * docs/html/install.html: Mention glibc version requirement.
+ * docs/html/faq/index.html (3.8): New note, glibc 2.2.5+ is needed
+ with 3.2.1+ (formatting bugfixes).
+ * docs/html/faq/index.txt: Regenerate.
+
+2003-02-03 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ PR libstdc++/9234
+ * include/bits/valarray_before.h (_UnBase::operator[]): Apply unary
+ operator.
+
+ * include/bits/valarray_before.h (__not_equal_to): Use != instead
+ of ==.
+
+ * testsuite/26_numerics/valarray_operators.cc: New test.
+
+2003-02-01 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/html/faq/index.html: Correct link to libg++ information.
+ * docs/html/faq/index.txt: Regenerated.
+
+2003-02-01 Paolo Carlini <pcarlini@unitus.it>
+ Benjamin Kosnik <bkoz@redhat.com>
+
+ Const correctness issue:
+ http://gcc.gnu.org/ml/libstdc++/2003-01/msg00370.html
+ * include/bits/locale_classes.h
+ (locale::_Impl::_M_facets): Change type to const facet**.
+ (locale::_Impl::_M_install_facet): Change declaration to
+ take const facet*.
+ (locale::facet::_M_references): Make mutable.
+ (locale::facet::_M_add_reference): Declare const.
+ (locale::facet::_M_remove_reference): Likewise.
+ * include/bits/locale_facets.tcc
+ (use_facet(const locale&)): Tweak for const facet** _M_facets.
+ (has_facet(const locale&)): Likewise.
+ * src/locale.cc
+ (locale::facet::_M_add_reference): Adjust definition.
+ (locale::facet::_M_remove_reference): Likewise.
+ * src/localename.cc
+ (locale::_Impl::_Impl(const _Impl&, size_t)): Tweak for
+ const facet** _M_facets.
+ (locale::_Impl::_Impl(const char*, size_t)): Likewise.
+ (locale::_Impl::_Impl(facet**, size_t, bool)): Likewise.
+ (locale::_Impl::_M_install_facet): Adjust definition to take
+ const facet* and for const facet** _M_facets.
+ * testsuite/22_locale/locale/cons/8.cc: Add.
+
+2003-01-29 Mark Mitchell <mark@codesourcery.com>
+
+ * include/std/std_limits.h (numeric_limits<float>::has_infinity):
+ Use __FLT_HAS_INIFINITY__ to initialize.
+ (numeric_limits<float>::has_quiet_NaN): Likewise.
+ (numeric_limits<double>::has_infinity): Use __DBL_HAS_INIFINITY__
+ to initialize.
+ (numeric_limits<double>::has_quiet_NaN): Likewise.
+ (numeric_limits<long double>::has_infinity): Use
+ __LDBL_HAS_INIFINITY__ to initialize.
+ (numeric_limits<long_double>::has_quiet_NaN): Likewise.
+
+2003-01-28 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/9433
+ * libsupc++/tinfo.cc (__vmi_class_type_info::__do_dyncast): Cope
+ with bases which are very ambiguous.
+
+2003-01-28 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * src/Makefile.am (CONFIG_CXXFLAGS): Reverse order of
+ @EXTRA_CXX_FLAGS@ @SECTION_FLAGS@.
+ * libsupc++/Makefile.am (CONFIG_CXXFLAGS): Likewise.
+ * src/Makefile.in: Regenerate.
+ * libsupc++/Makefile.in: Regenerate.
+
+2003-01-27 Alexandre Oliva <aoliva@redhat.com>
+
+ * acinclude.m4 (glibcpp_toolexeclibdir): Instead of
+ $(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
+ version_specific_libs is enabled.
+ * aclocal.m4, configure: Rebuilt.
+
+2003-01-24 Nathan Sidwell <nathan@codesourcery.com>
+
+ * include/bits/valarray_meta.h: Remove, split into ...
+ * include/bits/valarray_before.h: ... this, and ...
+ * include/bits/valarray_after.h: ... this.
+ * include/std/std_valarray.h: Adjust.
+ * include/Makefile.am (bits_headers): Adjust.
+ * include/Makefile.in: Regenerate.
+
+2003-01-24 Andreas Schwab <schwab@suse.de>
+
+ * config/linker-map.gnu: Fix for size_t variance.
+
+2003-01-23 Petur Runolfsson <peturr02@ru.is>
+
+ PR libstdc++/9322
+ * include/std/std_streambuf.h
+ (basic_streambuf::basic_streambuf,
+ basic_streambuf::~basic_streambuf,
+ basic_streambuf::getloc, basic_streambuf::imbue):
+ Remove _M_buf_locale_init
+ * include/bits/fstream.tcc (basic_filebuf::imbue): Likewise
+ * testsuite/27_io/filebuf_virtuals.cc (test08): Add.
+ * testsuite/27_io/streambuf_members.cc (test08): Add.
+ * testsuite/27_io/stringbuf_virtuals.cc (test08): Add.
+
+2003-01-23 Benjamin Kosnik <bkoz@redhat.com>
+
+ Revert include ordering.
+ * config/locale/generic/c_locale.h: Add include guards.
+ * config/locale/gnu/c_locale.h: Same.
+ * include/bits/locale_classes.h: Remove cctype include.
+ * include/std/std_iosfwd.h: Add c++locale.h, cctype includes.
+ * include/std/std_fstream.h: Remove streambuf include.
+ * include/std/std_sstream.h: Remove streambuf include.
+
+2003-01-23 Benjamin Kosnik <bkoz@redhat.com>
+
+ * configure.in (libtool_VERSION): To 6:0:0.
+ * configure: Regenerated.
+ * config/linker-map.gnu: Clean.
+
+ * src/misc-inst.cc: Remove instantiations.
+
+ * include/bits/stl_alloc.h (__malloc_alloc_template):
+ To __malloc_alloc.
+ (__default_alloc_template): To __pool_alloc.
+ * src/stl-inst.cc: Same.
+ * include/backward/alloc.h: Update.
+ * testsuite/ext/allocators.cc: Update.
+
+ * src/globals.cc (__gnu_cxx): Remove _GLIBCPP_ASM_SYMVER. Should
+ really try to remove these if possible.
+ * src/locale.cc (std): Same.
+
+ * testsuite/abi_check.cc (check_version): Add.
+
+2003-01-22 Benjamin Kosnik <bkoz@redhat.com>
+ Sysoltsev Slawa <Vyatcheslav.Sysoltsev@intel.com>
+ Mark Mitchell <mark@codesourcery.com>
+
+ PR libstdc++/9269
+ * include/std/std_fstream.h (basic_filebuf::uflow): Declare.
+ (basic_filebuf::underflow): Declare.
+ Move definitions.
+
+2003-01-22 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_facets.h: Move non-facet classes requiring
+ <string> to...
+ * include/bits/locale_classes.h: New.
+ * include/bits/Makefile.am (bits_headers_src): Add locale_classes.h.
+ * include/bits/Makefile.in: Regenerate.
+
+ * include/bits/locale_facets.tcc (__convert_from_v): Move to...
+ * config/locale/gnu/c_locale.h: ...here.
+ * config/locale/generic/c_locale.h: Same.
+
+ * include/bits/locale_facets.tcc: Move declarations to...
+ * include/bits/locale_facets.h: ...here.
+ * include/bits/basic_ios.h: Tweak includes accordingly.
+ * include/std/std_sstream.h: Add streambuf include.
+ * include/std/std_fstream.h: Ditto.
+ * include/std/std_locale.h: Add locale_classes.h include.
+ * include/std/std_iosfwd.h: Tweak.
+ * src/concept-inst.cc: Add iterator include.
+
+ * config/linker-map.gnu: Specify __cxa functions, mark __cxa_dyn_*
+ bits as unexported in the future.
+
+2003-01-21 Benjamin Kosnik <bkoz@redhat.com>
+
+ Reshuffle 22_locale testsuite.
+ * 22_locale/(codecvt.cc money_get.cc
+ codecvt_members_char_char.cc money_get_members_char.cc
+ codecvt_members_unicode_char.cc money_get_members_wchar_t.cc
+ codecvt_members_unicode_wchar_t.cc moneypunct_byname.cc
+ codecvt_members_wchar_t_char.cc moneypunct.cc collate_byname.cc
+ moneypunct_members_char.cc collate.cc moneypunct_members_wchar_t.cc
+ collate_members_char.cc money_put.cc collate_members_wchar_t.cc
+ money_put_members_char.cc ctor_copy_dtor.cc
+ money_put_members_wchar_t.cc ctype.cc num_get.cc ctype_is_char.cc
+ num_get_members_char.cc ctype_is_wchar_t.cc num_get_members_wchar_t.cc
+ ctype_members_char.cc numpunct_byname.cc ctype_members_wchar_t.cc
+ numpunct.cc ctype_narrow_char.cc numpunct_members_char.cc
+ ctype_narrow_wchar_t.cc numpunct_members_wchar_t.cc ctype_scan_char.cc
+ num_put.cc ctype_scan_wchar_t.cc num_put_members_char.cc
+ ctype_to_char.cc num_put_members_wchar_t.cc ctype_to_wchar_t.cc
+ operators.cc ctype_widen_char.cc static_members.cc
+ ctype_widen_wchar_t.cc time_get.cc facet.cc time_get_members_char.cc
+ global_templates.cc time_get_members_wchar_t.cc, members.cc,
+ time_put.cc, messages_byname.cc, time_put_members_char.cc,
+ messages.cc, time_put_members_wchar_t.cc, messages_members_char.cc):
+ Split up into individual test cases...
+ * 22_locale/codecvt/1.cc: New.
+ * 22_locale/codecvt/2.cc: New.
+ * 22_locale/codecvt/always_noconv/char/1.cc: New.
+ * 22_locale/codecvt/always_noconv/char/wrapped_env.cc: New.
+ * 22_locale/codecvt/always_noconv/char/wrapped_locale.cc: New.
+ * 22_locale/codecvt/always_noconv/wchar_t/1.cc: New.
+ * 22_locale/codecvt/always_noconv/wchar_t/wrapped_env.cc: New.
+ * 22_locale/codecvt/always_noconv/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/codecvt/encoding/char/1.cc: New.
+ * 22_locale/codecvt/encoding/char/wrapped_env.cc: New.
+ * 22_locale/codecvt/encoding/char/wrapped_locale.cc: New.
+ * 22_locale/codecvt/encoding/wchar_t/1.cc: New.
+ * 22_locale/codecvt/encoding/wchar_t/wrapped_env.cc: New.
+ * 22_locale/codecvt/encoding/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/codecvt/in/char/1.cc: New.
+ * 22_locale/codecvt/in/char/wrapped_env.cc: New.
+ * 22_locale/codecvt/in/char/wrapped_locale.cc: New.
+ * 22_locale/codecvt/in/wchar_t/1.cc: New.
+ * 22_locale/codecvt/in/wchar_t/wrapped_env.cc: New.
+ * 22_locale/codecvt/in/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/codecvt/length/char/1.cc: New.
+ * 22_locale/codecvt/length/char/wrapped_env.cc: New.
+ * 22_locale/codecvt/length/char/wrapped_locale.cc: New.
+ * 22_locale/codecvt/length/wchar_t/1.cc: New.
+ * 22_locale/codecvt/length/wchar_t/wrapped_env.cc: New.
+ * 22_locale/codecvt/length/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/codecvt/max_length/char/1.cc: New.
+ * 22_locale/codecvt/max_length/char/wrapped_env.cc: New.
+ * 22_locale/codecvt/max_length/char/wrapped_locale.cc: New.
+ * 22_locale/codecvt/max_length/wchar_t/1.cc: New.
+ * 22_locale/codecvt/max_length/wchar_t/wrapped_env.cc: New.
+ * 22_locale/codecvt/max_length/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/codecvt/out/char/1.cc: New.
+ * 22_locale/codecvt/out/char/wrapped_env.cc: New.
+ * 22_locale/codecvt/out/char/wrapped_locale.cc: New.
+ * 22_locale/codecvt/out/wchar_t/1.cc: New.
+ * 22_locale/codecvt/out/wchar_t/wrapped_env.cc: New.
+ * 22_locale/codecvt/out/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/codecvt/unicode/char.cc: New.
+ * 22_locale/codecvt/unicode/wchar_t.cc: New.
+ * 22_locale/codecvt/unshift/char/1.cc: New.
+ * 22_locale/codecvt/unshift/char/wrapped_env.cc: New.
+ * 22_locale/codecvt/unshift/char/wrapped_locale.cc: New.
+ * 22_locale/codecvt/unshift/wchar_t/1.cc: New.
+ * 22_locale/codecvt/unshift/wchar_t/wrapped_env.cc: New.
+ * 22_locale/codecvt/unshift/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/collate/1.cc: New.
+ * 22_locale/collate/2.cc: New.
+ * 22_locale/collate/compare/char/1.cc: New.
+ * 22_locale/collate/compare/char/2.cc: New.
+ * 22_locale/collate/compare/char/wrapped_env.cc: New.
+ * 22_locale/collate/compare/char/wrapped_locale.cc: New.
+ * 22_locale/collate/compare/wchar_t/1.cc: New.
+ * 22_locale/collate/compare/wchar_t/2.cc: New.
+ * 22_locale/collate/compare/wchar_t/wrapped_env.cc: New.
+ * 22_locale/collate/compare/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/collate/hash/char/1.cc: New.
+ * 22_locale/collate/hash/char/2.cc: New.
+ * 22_locale/collate/hash/char/wrapped_env.cc: New.
+ * 22_locale/collate/hash/char/wrapped_locale.cc: New.
+ * 22_locale/collate/hash/wchar_t/1.cc: New.
+ * 22_locale/collate/hash/wchar_t/2.cc: New.
+ * 22_locale/collate/hash/wchar_t/wrapped_env.cc: New.
+ * 22_locale/collate/hash/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/collate/transform/char/2.cc: New.
+ * 22_locale/collate/transform/char/wrapped_env.cc: New.
+ * 22_locale/collate/transform/char/wrapped_locale.cc: New.
+ * 22_locale/collate/transform/wchar_t/2.cc: New.
+ * 22_locale/collate/transform/wchar_t/wrapped_env.cc: New.
+ * 22_locale/collate/transform/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/collate_byname/1.cc: New.
+ * 22_locale/ctype/1.cc: New.
+ * 22_locale/ctype/2.cc: New.
+ * 22_locale/ctype/cons/char/1.cc: New.
+ * 22_locale/ctype/cons/char/wrapped_env.cc: New.
+ * 22_locale/ctype/cons/char/wrapped_locale.cc: New.
+ * 22_locale/ctype/is/char/1.cc: New.
+ * 22_locale/ctype/is/char/2.cc: New.
+ * 22_locale/ctype/is/char/3.cc: New.
+ * 22_locale/ctype/is/char/wrapped_env.cc: New.
+ * 22_locale/ctype/is/char/wrapped_locale.cc: New.
+ * 22_locale/ctype/is/wchar_t/1.cc: New.
+ * 22_locale/ctype/is/wchar_t/2.cc: New.
+ * 22_locale/ctype/is/wchar_t/wrapped_env.cc: New.
+ * 22_locale/ctype/is/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/ctype/narrow/char/1.cc: New.
+ * 22_locale/ctype/narrow/char/2.cc: New.
+ * 22_locale/ctype/narrow/char/wrapped_env.cc: New.
+ * 22_locale/ctype/narrow/char/wrapped_locale.cc: New.
+ * 22_locale/ctype/narrow/wchar_t/1.cc: New.
+ * 22_locale/ctype/narrow/wchar_t/2.cc: New.
+ * 22_locale/ctype/narrow/wchar_t/wrapped_env.cc: New.
+ * 22_locale/ctype/narrow/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/ctype/scan/char/1.cc: New.
+ * 22_locale/ctype/scan/char/wrapped_env.cc: New.
+ * 22_locale/ctype/scan/char/wrapped_locale.cc: New.
+ * 22_locale/ctype/scan/wchar_t/1.cc: New.
+ * 22_locale/ctype/scan/wchar_t/wrapped_env.cc: New.
+ * 22_locale/ctype/scan/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/ctype/to/char/1.cc: New.
+ * 22_locale/ctype/to/char/wrapped_env.cc: New.
+ * 22_locale/ctype/to/char/wrapped_locale.cc: New.
+ * 22_locale/ctype/to/wchar_t/1.cc: New.
+ * 22_locale/ctype/to/wchar_t/wrapped_env.cc: New.
+ * 22_locale/ctype/to/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/ctype/widen/char/1.cc: New.
+ * 22_locale/ctype/widen/char/wrapped_env.cc: New.
+ * 22_locale/ctype/widen/char/wrapped_locale.cc: New.
+ * 22_locale/ctype/widen/wchar_t/1.cc: New.
+ * 22_locale/ctype/widen/wchar_t/wrapped_env.cc: New.
+ * 22_locale/ctype/widen/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/facet/1.cc: New.
+ * 22_locale/facet/2.cc: New.
+ * 22_locale/global_templates/1.cc: New.
+ * 22_locale/locale/cons/1.cc: New.
+ * 22_locale/locale/cons/2.cc: New.
+ * 22_locale/locale/cons/3.cc: New.
+ * 22_locale/locale/cons/4.cc: New.
+ * 22_locale/locale/cons/5.cc: New.
+ * 22_locale/locale/cons/6.cc: New.
+ * 22_locale/locale/cons/7.cc: New.
+ * 22_locale/locale/global_locale_objects/1.cc: New.
+ * 22_locale/locale/global_locale_objects/2.cc: New.
+ * 22_locale/locale/global_locale_objects/3.cc: New.
+ * 22_locale/locale/operations/1.cc: New.
+ * 22_locale/locale/operations/2.cc: New.
+ * 22_locale/messages/1.cc: New.
+ * 22_locale/messages/2.cc: New.
+ * 22_locale/messages/members/char/1.cc: New.
+ * 22_locale/messages/members/char/2.cc: New.
+ * 22_locale/messages/members/char/3.cc: New.
+ * 22_locale/messages/members/char/wrapped_env.cc: New.
+ * 22_locale/messages/members/char/wrapped_locale.cc: New.
+ * 22_locale/messages_byname/1.cc: New.
+ * 22_locale/money_get/1.cc: New.
+ * 22_locale/money_get/2.cc: New.
+ * 22_locale/money_get/get/char/1.cc: New.
+ * 22_locale/money_get/get/char/2.cc: New.
+ * 22_locale/money_get/get/char/3.cc: New.
+ * 22_locale/money_get/get/char/4.cc: New.
+ * 22_locale/money_get/get/char/5.cc: New.
+ * 22_locale/money_get/get/char/6.cc: New.
+ * 22_locale/money_get/get/char/7.cc: New.
+ * 22_locale/money_get/get/char/8.cc: New.
+ * 22_locale/money_get/get/char/wrapped_env.cc: New.
+ * 22_locale/money_get/get/char/wrapped_locale.cc: New.
+ * 22_locale/money_get/get/wchar_t/1.cc: New.
+ * 22_locale/money_get/get/wchar_t/2.cc: New.
+ * 22_locale/money_get/get/wchar_t/3.cc: New.
+ * 22_locale/money_get/get/wchar_t/4.cc: New.
+ * 22_locale/money_get/get/wchar_t/5.cc: New.
+ * 22_locale/money_get/get/wchar_t/6.cc: New.
+ * 22_locale/money_get/get/wchar_t/7.cc: New.
+ * 22_locale/money_get/get/wchar_t/8.cc: New.
+ * 22_locale/money_get/get/wchar_t/wrapped_env.cc: New.
+ * 22_locale/money_get/get/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/money_put/1.cc: New.
+ * 22_locale/money_put/2.cc: New.
+ * 22_locale/money_put/put/char/1.cc: New.
+ * 22_locale/money_put/put/char/2.cc: New.
+ * 22_locale/money_put/put/char/3.cc: New.
+ * 22_locale/money_put/put/char/4.cc: New.
+ * 22_locale/money_put/put/char/5.cc: New.
+ * 22_locale/money_put/put/char/6.cc: New.
+ * 22_locale/money_put/put/char/wrapped_env.cc: New.
+ * 22_locale/money_put/put/char/wrapped_locale.cc: New.
+ * 22_locale/money_put/put/wchar_t/1.cc: New.
+ * 22_locale/money_put/put/wchar_t/2.cc: New.
+ * 22_locale/money_put/put/wchar_t/3.cc: New.
+ * 22_locale/money_put/put/wchar_t/4.cc: New.
+ * 22_locale/money_put/put/wchar_t/5.cc: New.
+ * 22_locale/money_put/put/wchar_t/6.cc: New.
+ * 22_locale/money_put/put/wchar_t/wrapped_env.cc: New.
+ * 22_locale/money_put/put/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/moneypunct/1.cc: New.
+ * 22_locale/moneypunct/2.cc: New.
+ * 22_locale/moneypunct/3.cc: New.
+ * 22_locale/moneypunct/members/char/1.cc: New.
+ * 22_locale/moneypunct/members/char/2.cc: New.
+ * 22_locale/moneypunct/members/char/wrapped_env.cc: New.
+ * 22_locale/moneypunct/members/char/wrapped_locale.cc: New.
+ * 22_locale/moneypunct/members/wchar_t/1.cc: New.
+ * 22_locale/moneypunct/members/wchar_t/2.cc: New.
+ * 22_locale/moneypunct/members/wchar_t/wrapped_env.cc: New.
+ * 22_locale/moneypunct/members/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/moneypunct_byname/1.cc: New.
+ * 22_locale/num_get/1.cc: New.
+ * 22_locale/num_get/2.cc: New.
+ * 22_locale/num_get/get/char/1.cc: New.
+ * 22_locale/num_get/get/char/2.cc: New.
+ * 22_locale/num_get/get/char/3.cc: New.
+ * 22_locale/num_get/get/char/4.cc: New.
+ * 22_locale/num_get/get/char/5.cc: New.
+ * 22_locale/num_get/get/char/6.cc: New.
+ * 22_locale/num_get/get/char/wrapped_env.cc: New.
+ * 22_locale/num_get/get/char/wrapped_locale.cc: New.
+ * 22_locale/num_get/get/wchar_t/1.cc: New.
+ * 22_locale/num_get/get/wchar_t/2.cc: New.
+ * 22_locale/num_get/get/wchar_t/3.cc: New.
+ * 22_locale/num_get/get/wchar_t/4.cc: New.
+ * 22_locale/num_get/get/wchar_t/5.cc: New.
+ * 22_locale/num_get/get/wchar_t/6.cc: New.
+ * 22_locale/num_get/get/wchar_t/wrapped_env.cc: New.
+ * 22_locale/num_get/get/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/num_put/1.cc: New.
+ * 22_locale/num_put/2.cc: New.
+ * 22_locale/num_put/put/char/1.cc: New.
+ * 22_locale/num_put/put/char/2.cc: New.
+ * 22_locale/num_put/put/char/3.cc: New.
+ * 22_locale/num_put/put/char/4.cc: New.
+ * 22_locale/num_put/put/char/5.cc: New.
+ * 22_locale/num_put/put/char/wrapped_env.cc: New.
+ * 22_locale/num_put/put/char/wrapped_locale.cc: New.
+ * 22_locale/num_put/put/wchar_t/1.cc: New.
+ * 22_locale/num_put/put/wchar_t/2.cc: New.
+ * 22_locale/num_put/put/wchar_t/3.cc: New.
+ * 22_locale/num_put/put/wchar_t/4.cc: New.
+ * 22_locale/num_put/put/wchar_t/5.cc: New.
+ * 22_locale/num_put/put/wchar_t/wrapped_env.cc: New.
+ * 22_locale/num_put/put/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/numpunct/1.cc: New.
+ * 22_locale/numpunct/2.cc: New.
+ * 22_locale/numpunct/members/char/1.cc: New.
+ * 22_locale/numpunct/members/char/2.cc: New.
+ * 22_locale/numpunct/members/char/wrapped_env.cc: New.
+ * 22_locale/numpunct/members/char/wrapped_locale.cc: New.
+ * 22_locale/numpunct/members/wchar_t/1.cc: New.
+ * 22_locale/numpunct/members/wchar_t/2.cc: New.
+ * 22_locale/numpunct/members/wchar_t/wrapped_env.cc: New.
+ * 22_locale/numpunct/members/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/numpunct_byname/1.cc: New.
+ * 22_locale/numpunct_byname/2.cc: New.
+ * 22_locale/time_get/1.cc: New.
+ * 22_locale/time_get/2.cc: New.
+ * 22_locale/time_get/date_order/char/1.cc: New.
+ * 22_locale/time_get/date_order/char/wrapped_env.cc: New.
+ * 22_locale/time_get/date_order/char/wrapped_locale.cc: New.
+ * 22_locale/time_get/date_order/wchar_t/1.cc: New.
+ * 22_locale/time_get/date_order/wchar_t/wrapped_env.cc: New.
+ * 22_locale/time_get/date_order/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/time_get/get_date/char/1.cc: New.
+ * 22_locale/time_get/get_date/char/2.cc: New.
+ * 22_locale/time_get/get_date/char/3.cc: New.
+ * 22_locale/time_get/get_date/char/wrapped_env.cc: New.
+ * 22_locale/time_get/get_date/char/wrapped_locale.cc: New.
+ * 22_locale/time_get/get_date/wchar_t/1.cc: New.
+ * 22_locale/time_get/get_date/wchar_t/2.cc: New.
+ * 22_locale/time_get/get_date/wchar_t/3.cc: New.
+ * 22_locale/time_get/get_date/wchar_t/wrapped_env.cc: New.
+ * 22_locale/time_get/get_date/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/time_get/get_monthname/char/1.cc: New.
+ * 22_locale/time_get/get_monthname/char/2.cc: New.
+ * 22_locale/time_get/get_monthname/char/3.cc: New.
+ * 22_locale/time_get/get_monthname/char/wrapped_env.cc: New.
+ * 22_locale/time_get/get_monthname/char/wrapped_locale.cc: New.
+ * 22_locale/time_get/get_monthname/wchar_t/1.cc: New.
+ * 22_locale/time_get/get_monthname/wchar_t/2.cc: New.
+ * 22_locale/time_get/get_monthname/wchar_t/3.cc: New.
+ * 22_locale/time_get/get_monthname/wchar_t/wrapped_env.cc: New.
+ * 22_locale/time_get/get_monthname/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/time_get/get_time/char/1.cc: New.
+ * 22_locale/time_get/get_time/char/2.cc: New.
+ * 22_locale/time_get/get_time/char/3.cc: New.
+ * 22_locale/time_get/get_time/char/wrapped_env.cc: New.
+ * 22_locale/time_get/get_time/char/wrapped_locale.cc: New.
+ * 22_locale/time_get/get_time/wchar_t/1.cc: New.
+ * 22_locale/time_get/get_time/wchar_t/2.cc: New.
+ * 22_locale/time_get/get_time/wchar_t/3.cc: New.
+ * 22_locale/time_get/get_time/wchar_t/wrapped_env.cc: New.
+ * 22_locale/time_get/get_time/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/time_get/get_weekday/char/1.cc: New.
+ * 22_locale/time_get/get_weekday/char/2.cc: New.
+ * 22_locale/time_get/get_weekday/char/3.cc: New.
+ * 22_locale/time_get/get_weekday/char/wrapped_env.cc: New.
+ * 22_locale/time_get/get_weekday/char/wrapped_locale.cc: New.
+ * 22_locale/time_get/get_weekday/wchar_t/1.cc: New.
+ * 22_locale/time_get/get_weekday/wchar_t/2.cc: New.
+ * 22_locale/time_get/get_weekday/wchar_t/3.cc: New.
+ * 22_locale/time_get/get_weekday/wchar_t/wrapped_env.cc: New.
+ * 22_locale/time_get/get_weekday/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/time_get/get_year/char/1.cc: New.
+ * 22_locale/time_get/get_year/char/3.cc: New.
+ * 22_locale/time_get/get_year/char/wrapped_env.cc: New.
+ * 22_locale/time_get/get_year/char/wrapped_locale.cc: New.
+ * 22_locale/time_get/get_year/wchar_t/1.cc: New.
+ * 22_locale/time_get/get_year/wchar_t/3.cc: New.
+ * 22_locale/time_get/get_year/wchar_t/wrapped_env.cc: New.
+ * 22_locale/time_get/get_year/wchar_t/wrapped_locale.cc: New.
+ * 22_locale/time_put/1.cc: New.
+ * 22_locale/time_put/2.cc: New.
+ * 22_locale/time_put/put/char/1.cc: New.
+ * 22_locale/time_put/put/char/10.cc: New.
+ * 22_locale/time_put/put/char/2.cc: New.
+ * 22_locale/time_put/put/char/3.cc: New.
+ * 22_locale/time_put/put/char/4.cc: New.
+ * 22_locale/time_put/put/char/5.cc: New.
+ * 22_locale/time_put/put/char/6.cc: New.
+ * 22_locale/time_put/put/char/7.cc: New.
+ * 22_locale/time_put/put/char/8.cc: New.
+ * 22_locale/time_put/put/char/9.cc: New.
+ * 22_locale/time_put/put/char/wrapped_env.cc: New.
+ * 22_locale/time_put/put/char/wrapped_locale.cc: New.
+ * 22_locale/time_put/put/wchar_t/1.cc: New.
+ * 22_locale/time_put/put/wchar_t/10.cc: New.
+ * 22_locale/time_put/put/wchar_t/2.cc: New.
+ * 22_locale/time_put/put/wchar_t/3.cc: New.
+ * 22_locale/time_put/put/wchar_t/4.cc: New.
+ * 22_locale/time_put/put/wchar_t/5.cc: New.
+ * 22_locale/time_put/put/wchar_t/6.cc: New.
+ * 22_locale/time_put/put/wchar_t/7.cc: New.
+ * 22_locale/time_put/put/wchar_t/8.cc: New.
+ * 22_locale/time_put/put/wchar_t/9.cc: New.
+ * 22_locale/time_put/put/wchar_t/wrapped_env.cc: New.
+ * 22_locale/time_put/put/wchar_t/wrapped_locale.cc: New.
+
+2003-01-16 Jeffrey D. Oldham <oldham@codesourcery.com>
+
+ * config/locale/generic/messages_members.h
+ (messages_byname<_CharT>::messages_byname): Use this-> to refer to
+ unqualified members of base clasess.
+
+2003-01-16 Mark Mitchell <mark@codesourcery.com>
+ Jeffrey Oldham <oldham@codesourcery.com>
+
+ * config/locale/gnu/messages_members.h: Use this-> to refer to
+ unqualified members of base clasess.
+ * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Likewise.
+ * include/bits/codecvt.h: Likewise.
+ * include/bits/deque.tcc: Likewise.
+ * include/bits/fstream.tcc: Likewise.
+ * include/bits/istream.tcc: Likewise.
+ * include/bits/list.tcc: Likewise.
+ * include/bits/locale_facets.h: Likewise.
+ * include/bits/ostream.tcc: Likewise.
+ * include/bits/sstream.tcc: Likewise.
+ * include/bits/stl_bvector.h: Likewise.
+ * include/bits/stl_deque.h: Likewise.
+ * include/bits/stl_list.h: Likewise.
+ * include/bits/stl_tree.h: Likewise.
+ * include/bits/stl_vector.h: Likewise.
+ * include/bits/vector.tcc: Likewise.
+ * include/ext/ropeimpl.h: Likewise.
+ * include/ext/stdio_filebuf.h: Likewise.
+ * include/ext/stl_rope.h: Likewise.
+ * include/std/std_fstream.h: Likewise.
+ * include/std/std_sstream.h: Likewise.
+
+2003-01-15 Phil Edwards <pme@gcc.gnu.org>
+
+ * include/bits/basic_string.tcc (_S_string_copy): Unused, remove.
+
+2003-01-15 Benjamin Kosnik <bkoz@redhat.com>
+
+ * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Substitute
+ GLIBCPP_TEST_WCHAR_T if building wchar_t bits in the library.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+ * testsuite/Makefile.am (all-local): Add conditional rule to
+ generate testsuite_wchar_t.
+ * testsuite/Makefile.in: Regenerate.
+ * testsuite/lib/libstdc++-v3-dg.exp
+ (libstdc++-v3-list-sourcefiles): Remove wchar_t files if
+ testsuite_wchar_t is not present in the build directory.
+ * testsuite/libstdc++-v3.dg/dg.exp: Add -g -O2 to DEFAULT_CXXFLAGS.
+ Remove setulimit bits.
+ * testsuite/26_numerics/complex_value.cc: Set to noopts.
+ * testsuite/Makefile.am (CLEANFILES): Add.
+ * testsuite/Makefile.in: Regenerate.
+
+2003-01-15 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * config/os/hpux/os_defines.h (_GLIBCPP_GTHREAD_USE_WEAK): Define for
+ __hppa__.
+
+2003-01-14 Jeffrey D. Oldham <oldham@codesourcery.com>
+
+ Further conform g++'s __vmi_class_type_info to the C++ ABI
+ specification.
+ * libsupc++/cxxabi.h
+ (__vmi_class_type_info::__flags_masks): Remove enumerations not
+ required by the specification.
+
+2003-01-12 Benjamin Kosnik <bkoz@redhat.com>
+
+ Renames, namespaces for testsuite utilities.
+ * testsuite/testsuite_hooks.h: Put into namespace __gnu_cxx_test.
+ (gnu_allocator_tracker): Rename to allocation_tracker.
+ (gnu_new_allocator): Rename to tracker_alloc.
+ (__set_testsuite_memlimit): Rename to set_memory_limits.
+ (gnu_assignment_operator): Rename to assignment_operator.
+ (gnu_destructor): Rename to destructor.
+ (gnu_copy_tracker): Rename to copy_tracker.
+ (gnu_char, gnu_int, gnu_long): Rename to pod_char, pod_int, pod_long.
+ (run_tests_wrapped_locale): New.
+ (run_tests_wrapped_env): New.
+ * testsuite/testsuite_hooks.cc: Same.
+ (class locale_data): Add.
+ (class enviornment_variable): Add.
+ (class not_found): Add.
+ * testsuite/testsuite_allocator.h: Same.
+ * testsuite/testsuite_allocator.cc: Same.
+ * testsuite/23_containers/deque_ctor.cc
+ (test_copy_ctor_exception_safety): Change gnu_allocator_tracker to
+ allocation_tracker.
+ Change gnu_new_allocator to tracker_alloc.
+ Change gnu_counting_struct to counter.
+ Change gnu_copy_tracker to copy_tracker.
+ Change gnu_copy_constructor to copy_constructor.
+ Change gnu_assignment_operator to assignment_operator.
+ Inject.
+ * testsuite/23_containers/vector_capacity.cc: Same.
+ * testsuite/23_containers/vector_ctor.cc (test01): Same.
+ * testsuite/23_containers/list_modifiers.cc: Change
+ gnu_copy_tracker to copy_tracker.
+ * testsuite/21_strings/ctor_copy_dtor.cc (main): Change
+ __set_testsuite_memlimit to set_memory_limits.
+ * testsuite/21_strings/insert.cc (main): Same.
+ * testsuite/27_io/filebuf.cc: Change gnu_char to pod_char.
+ * testsuite/27_io/stringstream.cc: Same.
+ * testsuite/27_io/stringbuf.cc: Same.
+ * testsuite/27_io/streambuf.cc: Same.
+ * testsuite/27_io/ostream.cc: Same.
+ * testsuite/27_io/istream.cc: Same.
+ * testsuite/27_io/fstream.cc: Same.
+ * testsuite/lib/libstdc++-v3-dg.exp
+ (libstdc++-v3-list-sourcefiles): Additionally handle files two and
+ three levels deeper in glob patterns.
+
+2003-01-11 Phil Edwards <pme@gcc.gnu.org>
+
+ * docs/doxygen/tables.html: Finished now.
+ * docs/doxygen/user.cfg.in: Update to latest version of Doxygen.
+ * include/bits/basic_ios.h (basic_ios::rdbuf): Add example to
+ comments.
+
+ * include/bits/deque.tcc, include/bits/stl_alloc.h,
+ include/bits/stl_deque.h, include/bits/stl_list.h,
+ include/bits/stl_vector.h: Remove _GLIBCPP_DEPRECATED bits scheduled
+ for 3.4 removal.
+
+2003-01-09 Benjamin Kosnik <bkoz@redhat.com>
+
+ * configure.in: Revert.
+ * configure: Regenerate.
+
+2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
+
+ * include/Makefile.am (install-data-local): Prepend
+ $(DESTDIR) to destination paths in all (un)installation
+ commands. Use ${c_base_builddir} and ${std_builddir}
+ as destination subdirectories to achieve consistency with
+ preceding mkinstalldirs commands. No effect because both
+ variables contain "." only.
+ * include/Makefile.in: Regenerate.
+
+2003-01-08 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/Makefile.am (stamp-*): Add checks for existing stamps.
+ * include/Makefile.in: Regenerate.
+
+ * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Correct comment.
+ * aclocal.m4: Regenerate.
+
+ * configure.in: Don't add new multi-do rules every time the
+ directory is reconfigured.
+ * configure: Regenerate.
+
+2003-01-08 Brad Spencer <spencer@infointeractive.com>
+ Nathan Myers <ncm@cantrip.org>
+
+ * src/Makefile.am (stamp-debug): Clean.
+ * src/Makefile.in: Regenerate.
+
+2003-01-07 Benjamin Kosnik <bkoz@redhat.com>
+
+ PR libstdc++/8707
+ * Makefile.am (distclean-multi): Fix.
+ * Makefile.in: Regenerate.
+
+2003-01-06 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/bits/locale_facets.h (messages): Move ctor, dtor
+ definitions to..
+ (__timepunct): Same.
+ * config/locale/gnu/messages_members.h (messages): Add dtor, ctor
+ definitions. Conditionalize for GNU systems.
+ * config/locale/generic/messages_members.h (messages): Add dtor, ctor
+ definitions.
+ * config/locale/gnu/time_members.h (messages): New. Add dtor, ctor
+ definitions. Conditionalize for GNU systems.
+ * config/locale/generic/time_members.h (messages): New. Add dtor, ctor
+ definitions.
+ * include/bits/localefwd.h (locale::facet::_S_c_name): Add.
+ * src/locale.cc: Define.
+ * src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool):
+ Use it.
+ * config/locale/gnu/time_members.h: Use it.
+ * config/locale/gnu/messages_members.h: Use it.
+ * config/linker-map.gnu: Add locale::facets details.
+ * include/Makefile.am (target_headers_extra): Add time_members.h.
+ * include/Makefile.in: Regenerate.
+ * acinclude.m4: Export CTIME_H.
+ * aclocal.m4: Regenerate.
+ * configure: Regnerate.
+
+2003-01-06 Paolo Carlini <pcarlini@unitus.it>
+
+ * src/codecvt.cc
+ (codecvt<char, char, mbstate_t>::do_in, do_out):
+ Tweak parameters to avoid unused parameter warnings.
+
+2003-01-06 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9151
+ * include/bits/locale_facets.cc (num_put::_M_convert_float):
+ Limit __prec to digits10 + 2, not digits10 + 1, taking into
+ account the possibility of %{g,G} conversion specifiers
+ inside _S_format_float.
+ * testsuite/27_io/ostream_inserter_arith.cc (test06): Add.
+
+2003-01-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init,
+ libstdc++-v3-list-sourcefiles): Additionally handle files one
+ level deeper in glob patterns.
+
+ * testsuite/27_io/istream_extractor_arith.cc: Delete, split...
+ * testsuite/27_io/istream_extractor_arith/01.cc,
+ testsuite/27_io/istream_extractor_arith/02.cc,
+ testsuite/27_io/istream_extractor_arith/03.cc,
+ testsuite/27_io/istream_extractor_arith/06.cc,
+ testsuite/27_io/istream_extractor_arith/07.cc,
+ testsuite/27_io/istream_extractor_arith/08.cc,
+ testsuite/27_io/istream_extractor_arith/09.cc,
+ testsuite/27_io/istream_extractor_arith/10.cc,
+ testsuite/27_io/istream_extractor_arith/11.cc,
+ testsuite/27_io/istream_extractor_arith/12.cc,
+ testsuite/27_io/istream_extractor_arith/13.cc: ... to new files.
+ * testsuite/27_io/istream_extractor_arith/12.cc: Add XFAIL for
+ sparc*-*-solaris2*.
+
+2003-01-05 Paolo Carlini <pcarlini@unitus.it>
+
+ PR libstdc++/9168
+ * src/codecvt.cc
+ (codecvt<char, char, mbstate_t>::do_in, do_out):
+ Implement the resolution of DR19 (TC).
+ * testsuite/22_locale/codecvt_members_char_char.cc
+ (test01): Tweak.
+
+2003-01-02 Jason Merrill <jason@redhat.com>
+
+ * config/cpu/i486/atomicity.h (__exchange_and_add, __atomic_add):
+ *__mem is also an output.
+ * config/cpu/m68k/atomicity.h (__exchange_and_add): Likewise.
diff --git a/libstdc++-v3/Makefile.in b/libstdc++-v3/Makefile.in
index 6e1353193b5..9355471b6c3 100644
--- a/libstdc++-v3/Makefile.in
+++ b/libstdc++-v3/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.7.8 from Makefile.am.
# @configure_input@
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
@@ -39,10 +39,13 @@ build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
ACLOCAL = @ACLOCAL@
+ALLOCATOR_H = @ALLOCATOR_H@
+ALLOCATOR_NAME = @ALLOCATOR_NAME@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@
+ATOMICITY_SRCDIR = @ATOMICITY_SRCDIR@
+ATOMIC_WORD_SRCDIR = @ATOMIC_WORD_SRCDIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
@@ -590,7 +593,7 @@ install-am: all-am
installcheck: installcheck-recursive
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
diff --git a/libstdc++-v3/acconfig.h b/libstdc++-v3/acconfig.h
index de6f4318dec..ab08630332f 100644
--- a/libstdc++-v3/acconfig.h
+++ b/libstdc++-v3/acconfig.h
@@ -10,9 +10,6 @@
#undef HAVE_GETTEXT
#undef HAVE_STPCPY
-// Define if GCC supports weak symbols.
-#undef _GLIBCXX_SUPPORTS_WEAK
-
// Include I/O support for 'long long' and 'unsigned long long'.
#undef _GLIBCXX_USE_LONG_LONG
diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4
index 93bb23874a3..9a53a7aa177 100644
--- a/libstdc++-v3/acinclude.m4
+++ b/libstdc++-v3/acinclude.m4
@@ -8,12 +8,12 @@ dnl conditional will depend on the final state of the variable. For a simple
dnl example of why this is needed, see GLIBCXX_ENABLE_HOSTED.
dnl
m4_define([_m4_divert(glibcxx_diversion)], 8000)dnl
-AC_DEFUN(GLIBCXX_CONDITIONAL, [dnl
+AC_DEFUN([GLIBCXX_CONDITIONAL], [dnl
m4_divert_text([glibcxx_diversion],dnl
AM_CONDITIONAL([$1],[$2])
)dnl
])dnl
-AC_DEFUN(GLIBCXX_EVALUATE_CONDITIONALS, [m4_undivert([glibcxx_diversion])])dnl
+AC_DEFUN([GLIBCXX_EVALUATE_CONDITIONALS], [m4_undivert([glibcxx_diversion])])dnl
dnl
@@ -21,10 +21,10 @@ dnl Check to see what architecture and operating system we are compiling
dnl for. Also, if architecture- or OS-specific flags are required for
dnl compilation, pick them up here.
dnl
-AC_DEFUN(GLIBCXX_CHECK_HOST, [
+AC_DEFUN([GLIBCXX_CHECK_HOST], [
. $glibcxx_srcdir/configure.host
- AC_MSG_NOTICE(CPU config directory is $cpu_include_dir)
- AC_MSG_NOTICE(OS config directory is $os_include_dir)
+ AC_MSG_NOTICE([CPU config directory is $cpu_include_dir])
+ AC_MSG_NOTICE([OS config directory is $os_include_dir])
])
@@ -34,7 +34,7 @@ dnl
dnl Substs:
dnl multi_basedir
dnl
-AC_DEFUN(GLIBCXX_TOPREL_CONFIGURE, [
+AC_DEFUN([GLIBCXX_TOPREL_CONFIGURE], [
# Sets up multi_basedir, which is srcdir/.. plus the usual
# "multi_source_toprel_bottom_adjust" lunacy as needed.
AM_ENABLE_MULTILIB(, ..)
@@ -78,7 +78,7 @@ dnl - the variables in GLIBCXX_CHECK_HOST / configure.host
dnl - default settings for all AM_CONFITIONAL test variables
dnl - lots of tools, like CC and CXX
dnl
-AC_DEFUN(GLIBCXX_CONFIGURE, [
+AC_DEFUN([GLIBCXX_CONFIGURE], [
# Keep these sync'd with the list in Makefile.am. The first provides an
# expandable list at autoconf time; the second provides an expandable list
# (i.e., shell variable) at configure time.
@@ -193,7 +193,7 @@ dnl Leave it out by default and use maint-mode to use it.
dnl SECTION_FLAGS='-ffunction-sections -fdata-sections' if
dnl compiler supports it and the user has not requested debug mode.
dnl
-AC_DEFUN(GLIBCXX_CHECK_COMPILER_FEATURES, [
+AC_DEFUN([GLIBCXX_CHECK_COMPILER_FEATURES], [
# All these tests are for C++; save the language and the compiler flags.
# The CXXFLAGS thing is suspicious, but based on similar bits previously
# found in GLIBCXX_CONFIGURE.
@@ -246,7 +246,7 @@ dnl
dnl The last will be a single integer, e.g., version 1.23.45.0.67.89 will
dnl set glibcxx_gnu_ld_version to 12345. Zeros cause problems.
dnl
-AC_DEFUN(GLIBCXX_CHECK_LINKER_FEATURES, [
+AC_DEFUN([GLIBCXX_CHECK_LINKER_FEATURES], [
# If we're not using GNU ld, then there's no point in even trying these
# tests. Check for that first. We should have already tested for gld
# by now (in libtool), but require it now just to be safe...
@@ -337,7 +337,7 @@ dnl Defines:
dnl HAVE_MBSTATE_T if mbstate_t is not in wchar.h
dnl _GLIBCXX_USE_WCHAR_T if all the bits are found.
dnl
-AC_DEFUN(GLIBCXX_CHECK_WCHAR_T_SUPPORT, [
+AC_DEFUN([GLIBCXX_CHECK_WCHAR_T_SUPPORT], [
# Test wchar.h for mbstate_t, which is needed for char_traits and
# others even if wchar_t support is not on.
AC_MSG_CHECKING([for mbstate_t])
@@ -454,7 +454,7 @@ dnl Defines:
dnl _GLIBCXX_MEM_LIMITS if we can set artificial limits on memory
dnl various HAVE_MEMLIMIT_* for individual limit names
dnl
-AC_DEFUN(GLIBCXX_CHECK_SETRLIMIT_ancilliary, [
+AC_DEFUN([GLIBCXX_CHECK_SETRLIMIT_ancilliary], [
AC_TRY_COMPILE(
[#include <unistd.h>
#include <sys/time.h>
@@ -466,7 +466,7 @@ AC_DEFUN(GLIBCXX_CHECK_SETRLIMIT_ancilliary, [
[Only used in build directory testsuite_hooks.h.])
])
-AC_DEFUN(GLIBCXX_CHECK_SETRLIMIT, [
+AC_DEFUN([GLIBCXX_CHECK_SETRLIMIT], [
setrlimit_have_headers=yes
AC_CHECK_HEADERS(unistd.h sys/time.h sys/resource.h,
[],
@@ -508,7 +508,7 @@ dnl
dnl Check whether S_ISREG (Posix) or S_IFREG is available in <sys/stat.h>.
dnl Define HAVE_S_ISREG / HAVE_S_IFREG appropriately.
dnl
-AC_DEFUN(GLIBCXX_CHECK_S_ISREG_OR_S_IFREG, [
+AC_DEFUN([GLIBCXX_CHECK_S_ISREG_OR_S_IFREG], [
AC_CACHE_VAL(glibcxx_cv_S_ISREG, [
AC_TRY_LINK(
[#include <sys/stat.h>],
@@ -538,7 +538,7 @@ AC_DEFUN(GLIBCXX_CHECK_S_ISREG_OR_S_IFREG, [
dnl
dnl Check whether poll is available in <poll.h>, and define HAVE_POLL.
dnl
-AC_DEFUN(GLIBCXX_CHECK_POLL, [
+AC_DEFUN([GLIBCXX_CHECK_POLL], [
AC_CACHE_VAL(glibcxx_cv_POLL, [
AC_TRY_LINK(
[#include <poll.h>],
@@ -557,7 +557,7 @@ AC_DEFUN(GLIBCXX_CHECK_POLL, [
dnl
dnl Check whether writev is available in <sys/uio.h>, and define HAVE_WRITEV.
dnl
-AC_DEFUN(GLIBCXX_CHECK_WRITEV, [
+AC_DEFUN([GLIBCXX_CHECK_WRITEV], [
AC_CACHE_VAL(glibcxx_cv_WRITEV, [
AC_TRY_LINK(
[#include <sys/uio.h>],
@@ -575,7 +575,7 @@ AC_DEFUN(GLIBCXX_CHECK_WRITEV, [
dnl
dnl Check whether int64_t is available in <stdint.h>, and define HAVE_INT64_T.
dnl
-AC_DEFUN(GLIBCXX_CHECK_INT64_T, [
+AC_DEFUN([GLIBCXX_CHECK_INT64_T], [
AC_CACHE_VAL(glibcxx_cv_INT64_T, [
AC_TRY_COMPILE(
[#include <stdint.h>],
@@ -592,7 +592,7 @@ AC_DEFUN(GLIBCXX_CHECK_INT64_T, [
dnl
dnl Check whether LFS support is available.
dnl
-AC_DEFUN(GLIBCXX_CHECK_LFS, [
+AC_DEFUN([GLIBCXX_CHECK_LFS], [
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
ac_save_CXXFLAGS="$CXXFLAGS"
@@ -629,7 +629,7 @@ dnl enable_abi_check / GLIBCXX_TEST_ABI
dnl Substs:
dnl baseline_dir
dnl
-AC_DEFUN(GLIBCXX_CONFIGURE_TESTSUITE, [
+AC_DEFUN([GLIBCXX_CONFIGURE_TESTSUITE], [
if $GLIBCXX_IS_NATIVE && test $is_hosted = yes; then
# Do checks for memory limit functions.
GLIBCXX_CHECK_SETRLIMIT
@@ -669,7 +669,7 @@ dnl Substs:
dnl GLIBCXX_INCLUDES
dnl TOPLEVEL_INCLUDES
dnl
-AC_DEFUN(GLIBCXX_EXPORT_INCLUDES, [
+AC_DEFUN([GLIBCXX_EXPORT_INCLUDES], [
# Used for every C++ compile we perform.
GLIBCXX_INCLUDES="\
-I$glibcxx_builddir/include/$host_alias \
@@ -700,7 +700,7 @@ dnl Substs:
dnl OPTIMIZE_CXXFLAGS
dnl WARN_FLAGS
dnl
-AC_DEFUN(GLIBCXX_EXPORT_FLAGS, [
+AC_DEFUN([GLIBCXX_EXPORT_FLAGS], [
# Optimization flags that are probably a good idea for thrill-seekers. Just
# uncomment the lines below and make, everything else is ready to go...
# OPTIMIZE_CXXFLAGS = -O3 -fstrict-aliasing -fvtable-gc
@@ -724,7 +724,7 @@ dnl
dnl Assumes cross_compiling bits already done, and with_cross_host in
dnl particular.
dnl
-AC_DEFUN(GLIBCXX_EXPORT_INSTALL_INFO, [
+AC_DEFUN([GLIBCXX_EXPORT_INSTALL_INFO], [
glibcxx_toolexecdir=no
glibcxx_toolexeclibdir=no
glibcxx_prefixdir=$prefix
@@ -762,11 +762,12 @@ AC_DEFUN(GLIBCXX_EXPORT_INSTALL_INFO, [
if test $version_specific_libs = yes; then
# Need the gcc compiler version to know where to install libraries
# and header files if --enable-version-specific-runtime-libs option
- # is selected.
+ # is selected. FIXME: these variables are misnamed, there are
+ # no executables installed in _toolexecdir or _toolexeclibdir.
if test x"$gxx_include_dir" = x"no"; then
- gxx_include_dir='${libdir}/gcc-lib/${host_alias}/'$gcc_version/include/c++
+ gxx_include_dir='${libdir}/gcc/${host_alias}/'$gcc_version/include/c++
fi
- glibcxx_toolexecdir='${libdir}/gcc-lib/${host_alias}'
+ glibcxx_toolexecdir='${libdir}/gcc/${host_alias}'
glibcxx_toolexeclibdir='${toolexecdir}/'$gcc_version'$(MULTISUBDIR)'
fi
@@ -778,7 +779,7 @@ AC_DEFUN(GLIBCXX_EXPORT_INSTALL_INFO, [
glibcxx_toolexecdir='${exec_prefix}/${host_alias}'
glibcxx_toolexeclibdir='${toolexecdir}/lib'
else
- glibcxx_toolexecdir='${libdir}/gcc-lib/${host_alias}'
+ glibcxx_toolexecdir='${libdir}/gcc/${host_alias}'
glibcxx_toolexeclibdir='${libdir}'
fi
multi_os_directory=`$CXX -print-multi-os-directory`
@@ -843,7 +844,7 @@ dnl + Usage: GLIBCXX_ENABLE_C99[(DEFAULT)]
dnl Where DEFAULT is either `yes' or `no'.
dnl + If 'C99' stuff is not available, ignores DEFAULT and sets `no'.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_C99, [
+AC_DEFUN([GLIBCXX_ENABLE_C99], [
GLIBCXX_ENABLE(c99,$1,,[turns on ISO/IEC 9899:1999 support])
AC_LANG_SAVE
@@ -970,7 +971,7 @@ dnl --disable-cheaders [does not do anything, really].
dnl + Usage: GLIBCXX_ENABLE_CHEADERS[(DEFAULT)]
dnl Where DEFAULT is either `c' or `c_std'.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_CHEADERS, [
+AC_DEFUN([GLIBCXX_ENABLE_CHEADERS], [
GLIBCXX_ENABLE(cheaders,$1,[=KIND],
[construct "C" headers for g++], [permit c|c_std])
AC_MSG_NOTICE("C" header strategy set to $enable_cheaders)
@@ -990,7 +991,7 @@ dnl a subdirectory of config/locale.
dnl
dnl Default is generic.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_CLOCALE, [
+AC_DEFUN([GLIBCXX_ENABLE_CLOCALE], [
AC_MSG_CHECKING([for C locale to use])
GLIBCXX_ENABLE(clocale,auto,[@<:@=MODEL@:>@],
[use MODEL for target locale package],
@@ -1170,6 +1171,64 @@ AC_DEFUN(GLIBCXX_ENABLE_CLOCALE, [
dnl
+dnl Check for which std::allocator base class to use. The choice is
+dnl mapped from a subdirectory of include/ext.
+dnl
+dnl Default is new.
+dnl
+AC_DEFUN([GLIBCXX_ENABLE_ALLOCATOR], [
+ AC_MSG_CHECKING([for std::allocator base class to use])
+ GLIBCXX_ENABLE(libstdcxx-allocator,auto,[=KIND],
+ [use KIND for target std::allocator base],
+ [permit new|malloc|mt|bitmap|yes|no|auto])
+ # If they didn't use this option switch, or if they specified --enable
+ # with no specific model, we'll have to look for one. If they
+ # specified --disable (???), do likewise.
+ if test $enable_libstdcxx_allocator = no || test $enable_libstdcxx_allocator = yes; then
+ enable_libstdcxx_allocator=auto
+ fi
+
+ # Either a known package, or "auto"
+ enable_libstdcxx_allocator_flag=$enable_libstdcxx_allocator
+
+ # Probe for host-specific support if no specific model is specified.
+ # Default to "new".
+ if test $enable_libstdcxx_allocator_flag = auto; then
+ case ${target_os} in
+ *)
+ enable_libstdcxx_allocator_flag=new
+ ;;
+ esac
+ fi
+ AC_MSG_RESULT($enable_libstdcxx_allocator_flag)
+
+
+ # Set configure bits for specified locale package
+ case ${enable_libstdcxx_allocator_flag} in
+ bitmap)
+ ALLOCATOR_H=config/allocator/bitmap_allocator_base.h
+ ALLOCATOR_NAME=__gnu_cxx::bitmap_allocator
+ ;;
+ malloc)
+ ALLOCATOR_H=config/allocator/malloc_allocator_base.h
+ ALLOCATOR_NAME=__gnu_cxx::malloc_allocator
+ ;;
+ mt)
+ ALLOCATOR_H=config/allocator/mt_allocator_base.h
+ ALLOCATOR_NAME=__gnu_cxx::__mt_alloc
+ ;;
+ new)
+ ALLOCATOR_H=config/allocator/new_allocator_base.h
+ ALLOCATOR_NAME=__gnu_cxx::new_allocator
+ ;;
+ esac
+
+ AC_SUBST(ALLOCATOR_H)
+ AC_SUBST(ALLOCATOR_NAME)
+])
+
+
+dnl
dnl Check for whether the Boost-derived checks should be turned on.
dnl
dnl --enable-concept-checks turns them on.
@@ -1177,7 +1236,7 @@ dnl --disable-concept-checks leaves them off.
dnl + Usage: GLIBCXX_ENABLE_CONCEPT_CHECKS[(DEFAULT)]
dnl Where DEFAULT is either `yes' or `no'.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_CONCEPT_CHECKS, [
+AC_DEFUN([GLIBCXX_ENABLE_CONCEPT_CHECKS], [
GLIBCXX_ENABLE(concept-checks,$1,,[use Boost-derived template checks])
if test $enable_concept_checks = yes; then
AC_DEFINE(_GLIBCXX_CONCEPT_CHECKS)
@@ -1190,7 +1249,7 @@ dnl Check for which I/O library to use: stdio, or something specific.
dnl
dnl Default is stdio.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_CSTDIO, [
+AC_DEFUN([GLIBCXX_ENABLE_CSTDIO], [
AC_MSG_CHECKING([for underlying I/O to use])
GLIBCXX_ENABLE(cstdio,stdio,[=PACKAGE],
[use target-specific I/O package], [permit stdio])
@@ -1226,7 +1285,7 @@ dnl + Usage: GLIBCXX_ENABLE_CXX_FLAGS(default flags)
dnl If "default flags" is an empty string, the effect is the same
dnl as --disable or --enable=no.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_CXX_FLAGS, [dnl
+AC_DEFUN([GLIBCXX_ENABLE_CXX_FLAGS], [dnl
AC_MSG_CHECKING([for extra compiler flags for building])
GLIBCXX_ENABLE(cxx-flags,$1,[=FLAGS],
[pass compiler FLAGS when building library],
@@ -1264,7 +1323,7 @@ dnl --disable-c-mbchar doesn't.
dnl + Usage: GLIBCXX_ENABLE_C_MBCHAR[(DEFAULT)]
dnl Where DEFAULT is either `yes' or `no'.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_C_MBCHAR, [
+AC_DEFUN([GLIBCXX_ENABLE_C_MBCHAR], [
GLIBCXX_ENABLE(c-mbchar,$1,,[enable multibyte (wide) characters])
# Option parsed, now other scripts can test enable_c_mbchar for yes/no.
])
@@ -1286,7 +1345,7 @@ dnl
dnl + Usage: GLIBCXX_ENABLE_DEBUG[(DEFAULT)]
dnl Where DEFAULT is either `yes' or `no'.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_DEBUG, [
+AC_DEFUN([GLIBCXX_ENABLE_DEBUG], [
AC_MSG_CHECKING([for additional debug build])
GLIBCXX_ENABLE(libstdcxx-debug,$1,,[build extra debug library])
AC_MSG_RESULT($enable_libstdcxx_debug)
@@ -1306,7 +1365,7 @@ dnl + Usage: GLIBCXX_ENABLE_DEBUG_FLAGS(default flags)
dnl If "default flags" is an empty string, the effect is the same
dnl as --disable or --enable=no.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_DEBUG_FLAGS, [
+AC_DEFUN([GLIBCXX_ENABLE_DEBUG_FLAGS], [
GLIBCXX_ENABLE(libstdcxx-debug-flags,[$1],[=FLAGS],
[pass compiler FLAGS when building debug library],
[case "x$enable_libstdcxx_debug_flags" in
@@ -1337,7 +1396,7 @@ dnl
dnl Defines:
dnl _GLIBCXX_HOSTED (always defined, either to 1 or 0)
dnl
-AC_DEFUN(GLIBCXX_ENABLE_HOSTED, [
+AC_DEFUN([GLIBCXX_ENABLE_HOSTED], [
AC_ARG_ENABLE([hosted-libstdcxx],
AC_HELP_STRING([--disable-hosted-libstdcxx],
[only build freestanding C++ runtime support]),,
@@ -1369,7 +1428,7 @@ dnl + Usage: GLIBCXX_ENABLE_LONG_LONG[(DEFAULT)]
dnl Where DEFAULT is either `yes' or `no'.
dnl + If 'long long' stuff is not available, ignores DEFAULT and sets `no'.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_LONG_LONG, [
+AC_DEFUN([GLIBCXX_ENABLE_LONG_LONG], [
GLIBCXX_ENABLE(long-long,$1,,[enables I/O support for 'long long'])
AC_LANG_SAVE
@@ -1406,7 +1465,7 @@ dnl
dnl Substs:
dnl glibcxx_PCHFLAGS
dnl
-AC_DEFUN(GLIBCXX_ENABLE_PCH, [
+AC_DEFUN([GLIBCXX_ENABLE_PCH], [
AC_MSG_CHECKING([for enabled PCH])
GLIBCXX_ENABLE(libstdcxx-pch,$1,,[build pre-compiled libstdc++ headers])
AC_MSG_RESULT([$enable_libstdcxx_pch])
@@ -1458,7 +1517,7 @@ dnl
dnl Defines:
dnl _GLIBCXX_SJLJ_EXCEPTIONS if the compiler is configured for it
dnl
-AC_DEFUN(GLIBCXX_ENABLE_SJLJ_EXCEPTIONS, [
+AC_DEFUN([GLIBCXX_ENABLE_SJLJ_EXCEPTIONS], [
AC_MSG_CHECKING([for exception model to use])
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
@@ -1528,7 +1587,7 @@ dnl Where DEFAULT is either 'yes' or 'no'. Passing `yes' tries to
dnl choose a default style based on linker characteristics. Passing
dnl 'no' disables versioning.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_SYMVERS, [
+AC_DEFUN([GLIBCXX_ENABLE_SYMVERS], [
GLIBCXX_ENABLE(symvers,$1,[=STYLE],
[enables symbol versioning of the shared library],
@@ -1630,16 +1689,14 @@ dnl glibcxx_thread_h
dnl
dnl Defines:
dnl HAVE_GTHR_DEFAULT
-dnl _GLIBCXX_SUPPORTS_WEAK
dnl
-AC_DEFUN(GLIBCXX_ENABLE_THREADS, [
+AC_DEFUN([GLIBCXX_ENABLE_THREADS], [
AC_MSG_CHECKING([for thread model used by GCC])
target_thread_file=`$CXX -v 2>&1 | sed -n 's/^Thread model: //p'`
AC_MSG_RESULT([$target_thread_file])
if test $target_thread_file != single; then
AC_DEFINE(HAVE_GTHR_DEFAULT)
- AC_DEFINE(_GLIBCXX_SUPPORTS_WEAK, __GXX_WEAK__)
fi
glibcxx_thread_h=gthr-$target_thread_file.h
@@ -1656,7 +1713,7 @@ AC_DEFUN(GLIBCXX_ENABLE_THREADS, [
# Please note that the actual code is *not* freely available.
# serial 1
-AC_DEFUN(AC_LC_MESSAGES, [
+AC_DEFUN([AC_LC_MESSAGES], [
AC_CHECK_HEADER(locale.h, [
AC_CACHE_CHECK([for LC_MESSAGES], ac_cv_val_LC_MESSAGES,
[AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
diff --git a/libstdc++-v3/aclocal.m4 b/libstdc++-v3/aclocal.m4
index f8e416cffa8..549dc18d8da 100644
--- a/libstdc++-v3/aclocal.m4
+++ b/libstdc++-v3/aclocal.m4
@@ -21,12 +21,12 @@ dnl conditional will depend on the final state of the variable. For a simple
dnl example of why this is needed, see GLIBCXX_ENABLE_HOSTED.
dnl
m4_define([_m4_divert(glibcxx_diversion)], 8000)dnl
-AC_DEFUN(GLIBCXX_CONDITIONAL, [dnl
+AC_DEFUN([GLIBCXX_CONDITIONAL], [dnl
m4_divert_text([glibcxx_diversion],dnl
AM_CONDITIONAL([$1],[$2])
)dnl
])dnl
-AC_DEFUN(GLIBCXX_EVALUATE_CONDITIONALS, [m4_undivert([glibcxx_diversion])])dnl
+AC_DEFUN([GLIBCXX_EVALUATE_CONDITIONALS], [m4_undivert([glibcxx_diversion])])dnl
dnl
@@ -34,10 +34,10 @@ dnl Check to see what architecture and operating system we are compiling
dnl for. Also, if architecture- or OS-specific flags are required for
dnl compilation, pick them up here.
dnl
-AC_DEFUN(GLIBCXX_CHECK_HOST, [
+AC_DEFUN([GLIBCXX_CHECK_HOST], [
. $glibcxx_srcdir/configure.host
- AC_MSG_NOTICE(CPU config directory is $cpu_include_dir)
- AC_MSG_NOTICE(OS config directory is $os_include_dir)
+ AC_MSG_NOTICE([CPU config directory is $cpu_include_dir])
+ AC_MSG_NOTICE([OS config directory is $os_include_dir])
])
@@ -47,7 +47,7 @@ dnl
dnl Substs:
dnl multi_basedir
dnl
-AC_DEFUN(GLIBCXX_TOPREL_CONFIGURE, [
+AC_DEFUN([GLIBCXX_TOPREL_CONFIGURE], [
# Sets up multi_basedir, which is srcdir/.. plus the usual
# "multi_source_toprel_bottom_adjust" lunacy as needed.
AM_ENABLE_MULTILIB(, ..)
@@ -91,7 +91,7 @@ dnl - the variables in GLIBCXX_CHECK_HOST / configure.host
dnl - default settings for all AM_CONFITIONAL test variables
dnl - lots of tools, like CC and CXX
dnl
-AC_DEFUN(GLIBCXX_CONFIGURE, [
+AC_DEFUN([GLIBCXX_CONFIGURE], [
# Keep these sync'd with the list in Makefile.am. The first provides an
# expandable list at autoconf time; the second provides an expandable list
# (i.e., shell variable) at configure time.
@@ -206,7 +206,7 @@ dnl Leave it out by default and use maint-mode to use it.
dnl SECTION_FLAGS='-ffunction-sections -fdata-sections' if
dnl compiler supports it and the user has not requested debug mode.
dnl
-AC_DEFUN(GLIBCXX_CHECK_COMPILER_FEATURES, [
+AC_DEFUN([GLIBCXX_CHECK_COMPILER_FEATURES], [
# All these tests are for C++; save the language and the compiler flags.
# The CXXFLAGS thing is suspicious, but based on similar bits previously
# found in GLIBCXX_CONFIGURE.
@@ -259,7 +259,7 @@ dnl
dnl The last will be a single integer, e.g., version 1.23.45.0.67.89 will
dnl set glibcxx_gnu_ld_version to 12345. Zeros cause problems.
dnl
-AC_DEFUN(GLIBCXX_CHECK_LINKER_FEATURES, [
+AC_DEFUN([GLIBCXX_CHECK_LINKER_FEATURES], [
# If we're not using GNU ld, then there's no point in even trying these
# tests. Check for that first. We should have already tested for gld
# by now (in libtool), but require it now just to be safe...
@@ -350,7 +350,7 @@ dnl Defines:
dnl HAVE_MBSTATE_T if mbstate_t is not in wchar.h
dnl _GLIBCXX_USE_WCHAR_T if all the bits are found.
dnl
-AC_DEFUN(GLIBCXX_CHECK_WCHAR_T_SUPPORT, [
+AC_DEFUN([GLIBCXX_CHECK_WCHAR_T_SUPPORT], [
# Test wchar.h for mbstate_t, which is needed for char_traits and
# others even if wchar_t support is not on.
AC_MSG_CHECKING([for mbstate_t])
@@ -467,7 +467,7 @@ dnl Defines:
dnl _GLIBCXX_MEM_LIMITS if we can set artificial limits on memory
dnl various HAVE_MEMLIMIT_* for individual limit names
dnl
-AC_DEFUN(GLIBCXX_CHECK_SETRLIMIT_ancilliary, [
+AC_DEFUN([GLIBCXX_CHECK_SETRLIMIT_ancilliary], [
AC_TRY_COMPILE(
[#include <unistd.h>
#include <sys/time.h>
@@ -479,7 +479,7 @@ AC_DEFUN(GLIBCXX_CHECK_SETRLIMIT_ancilliary, [
[Only used in build directory testsuite_hooks.h.])
])
-AC_DEFUN(GLIBCXX_CHECK_SETRLIMIT, [
+AC_DEFUN([GLIBCXX_CHECK_SETRLIMIT], [
setrlimit_have_headers=yes
AC_CHECK_HEADERS(unistd.h sys/time.h sys/resource.h,
[],
@@ -521,7 +521,7 @@ dnl
dnl Check whether S_ISREG (Posix) or S_IFREG is available in <sys/stat.h>.
dnl Define HAVE_S_ISREG / HAVE_S_IFREG appropriately.
dnl
-AC_DEFUN(GLIBCXX_CHECK_S_ISREG_OR_S_IFREG, [
+AC_DEFUN([GLIBCXX_CHECK_S_ISREG_OR_S_IFREG], [
AC_CACHE_VAL(glibcxx_cv_S_ISREG, [
AC_TRY_LINK(
[#include <sys/stat.h>],
@@ -551,7 +551,7 @@ AC_DEFUN(GLIBCXX_CHECK_S_ISREG_OR_S_IFREG, [
dnl
dnl Check whether poll is available in <poll.h>, and define HAVE_POLL.
dnl
-AC_DEFUN(GLIBCXX_CHECK_POLL, [
+AC_DEFUN([GLIBCXX_CHECK_POLL], [
AC_CACHE_VAL(glibcxx_cv_POLL, [
AC_TRY_LINK(
[#include <poll.h>],
@@ -570,7 +570,7 @@ AC_DEFUN(GLIBCXX_CHECK_POLL, [
dnl
dnl Check whether writev is available in <sys/uio.h>, and define HAVE_WRITEV.
dnl
-AC_DEFUN(GLIBCXX_CHECK_WRITEV, [
+AC_DEFUN([GLIBCXX_CHECK_WRITEV], [
AC_CACHE_VAL(glibcxx_cv_WRITEV, [
AC_TRY_LINK(
[#include <sys/uio.h>],
@@ -588,7 +588,7 @@ AC_DEFUN(GLIBCXX_CHECK_WRITEV, [
dnl
dnl Check whether int64_t is available in <stdint.h>, and define HAVE_INT64_T.
dnl
-AC_DEFUN(GLIBCXX_CHECK_INT64_T, [
+AC_DEFUN([GLIBCXX_CHECK_INT64_T], [
AC_CACHE_VAL(glibcxx_cv_INT64_T, [
AC_TRY_COMPILE(
[#include <stdint.h>],
@@ -605,7 +605,7 @@ AC_DEFUN(GLIBCXX_CHECK_INT64_T, [
dnl
dnl Check whether LFS support is available.
dnl
-AC_DEFUN(GLIBCXX_CHECK_LFS, [
+AC_DEFUN([GLIBCXX_CHECK_LFS], [
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
ac_save_CXXFLAGS="$CXXFLAGS"
@@ -642,7 +642,7 @@ dnl enable_abi_check / GLIBCXX_TEST_ABI
dnl Substs:
dnl baseline_dir
dnl
-AC_DEFUN(GLIBCXX_CONFIGURE_TESTSUITE, [
+AC_DEFUN([GLIBCXX_CONFIGURE_TESTSUITE], [
if $GLIBCXX_IS_NATIVE && test $is_hosted = yes; then
# Do checks for memory limit functions.
GLIBCXX_CHECK_SETRLIMIT
@@ -682,7 +682,7 @@ dnl Substs:
dnl GLIBCXX_INCLUDES
dnl TOPLEVEL_INCLUDES
dnl
-AC_DEFUN(GLIBCXX_EXPORT_INCLUDES, [
+AC_DEFUN([GLIBCXX_EXPORT_INCLUDES], [
# Used for every C++ compile we perform.
GLIBCXX_INCLUDES="\
-I$glibcxx_builddir/include/$host_alias \
@@ -713,7 +713,7 @@ dnl Substs:
dnl OPTIMIZE_CXXFLAGS
dnl WARN_FLAGS
dnl
-AC_DEFUN(GLIBCXX_EXPORT_FLAGS, [
+AC_DEFUN([GLIBCXX_EXPORT_FLAGS], [
# Optimization flags that are probably a good idea for thrill-seekers. Just
# uncomment the lines below and make, everything else is ready to go...
# OPTIMIZE_CXXFLAGS = -O3 -fstrict-aliasing -fvtable-gc
@@ -737,7 +737,7 @@ dnl
dnl Assumes cross_compiling bits already done, and with_cross_host in
dnl particular.
dnl
-AC_DEFUN(GLIBCXX_EXPORT_INSTALL_INFO, [
+AC_DEFUN([GLIBCXX_EXPORT_INSTALL_INFO], [
glibcxx_toolexecdir=no
glibcxx_toolexeclibdir=no
glibcxx_prefixdir=$prefix
@@ -775,11 +775,12 @@ AC_DEFUN(GLIBCXX_EXPORT_INSTALL_INFO, [
if test $version_specific_libs = yes; then
# Need the gcc compiler version to know where to install libraries
# and header files if --enable-version-specific-runtime-libs option
- # is selected.
+ # is selected. FIXME: these variables are misnamed, there are
+ # no executables installed in _toolexecdir or _toolexeclibdir.
if test x"$gxx_include_dir" = x"no"; then
- gxx_include_dir='${libdir}/gcc-lib/${host_alias}/'$gcc_version/include/c++
+ gxx_include_dir='${libdir}/gcc/${host_alias}/'$gcc_version/include/c++
fi
- glibcxx_toolexecdir='${libdir}/gcc-lib/${host_alias}'
+ glibcxx_toolexecdir='${libdir}/gcc/${host_alias}'
glibcxx_toolexeclibdir='${toolexecdir}/'$gcc_version'$(MULTISUBDIR)'
fi
@@ -791,7 +792,7 @@ AC_DEFUN(GLIBCXX_EXPORT_INSTALL_INFO, [
glibcxx_toolexecdir='${exec_prefix}/${host_alias}'
glibcxx_toolexeclibdir='${toolexecdir}/lib'
else
- glibcxx_toolexecdir='${libdir}/gcc-lib/${host_alias}'
+ glibcxx_toolexecdir='${libdir}/gcc/${host_alias}'
glibcxx_toolexeclibdir='${libdir}'
fi
multi_os_directory=`$CXX -print-multi-os-directory`
@@ -856,7 +857,7 @@ dnl + Usage: GLIBCXX_ENABLE_C99[(DEFAULT)]
dnl Where DEFAULT is either `yes' or `no'.
dnl + If 'C99' stuff is not available, ignores DEFAULT and sets `no'.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_C99, [
+AC_DEFUN([GLIBCXX_ENABLE_C99], [
GLIBCXX_ENABLE(c99,$1,,[turns on ISO/IEC 9899:1999 support])
AC_LANG_SAVE
@@ -983,7 +984,7 @@ dnl --disable-cheaders [does not do anything, really].
dnl + Usage: GLIBCXX_ENABLE_CHEADERS[(DEFAULT)]
dnl Where DEFAULT is either `c' or `c_std'.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_CHEADERS, [
+AC_DEFUN([GLIBCXX_ENABLE_CHEADERS], [
GLIBCXX_ENABLE(cheaders,$1,[=KIND],
[construct "C" headers for g++], [permit c|c_std])
AC_MSG_NOTICE("C" header strategy set to $enable_cheaders)
@@ -1003,7 +1004,7 @@ dnl a subdirectory of config/locale.
dnl
dnl Default is generic.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_CLOCALE, [
+AC_DEFUN([GLIBCXX_ENABLE_CLOCALE], [
AC_MSG_CHECKING([for C locale to use])
GLIBCXX_ENABLE(clocale,auto,[@<:@=MODEL@:>@],
[use MODEL for target locale package],
@@ -1183,6 +1184,64 @@ AC_DEFUN(GLIBCXX_ENABLE_CLOCALE, [
dnl
+dnl Check for which std::allocator base class to use. The choice is
+dnl mapped from a subdirectory of include/ext.
+dnl
+dnl Default is new.
+dnl
+AC_DEFUN([GLIBCXX_ENABLE_ALLOCATOR], [
+ AC_MSG_CHECKING([for std::allocator base class to use])
+ GLIBCXX_ENABLE(libstdcxx-allocator,auto,[=KIND],
+ [use KIND for target std::allocator base],
+ [permit new|malloc|mt|bitmap|yes|no|auto])
+ # If they didn't use this option switch, or if they specified --enable
+ # with no specific model, we'll have to look for one. If they
+ # specified --disable (???), do likewise.
+ if test $enable_libstdcxx_allocator = no || test $enable_libstdcxx_allocator = yes; then
+ enable_libstdcxx_allocator=auto
+ fi
+
+ # Either a known package, or "auto"
+ enable_libstdcxx_allocator_flag=$enable_libstdcxx_allocator
+
+ # Probe for host-specific support if no specific model is specified.
+ # Default to "new".
+ if test $enable_libstdcxx_allocator_flag = auto; then
+ case ${target_os} in
+ *)
+ enable_libstdcxx_allocator_flag=new
+ ;;
+ esac
+ fi
+ AC_MSG_RESULT($enable_libstdcxx_allocator_flag)
+
+
+ # Set configure bits for specified locale package
+ case ${enable_libstdcxx_allocator_flag} in
+ bitmap)
+ ALLOCATOR_H=config/allocator/bitmap_allocator_base.h
+ ALLOCATOR_NAME=__gnu_cxx::bitmap_allocator
+ ;;
+ malloc)
+ ALLOCATOR_H=config/allocator/malloc_allocator_base.h
+ ALLOCATOR_NAME=__gnu_cxx::malloc_allocator
+ ;;
+ mt)
+ ALLOCATOR_H=config/allocator/mt_allocator_base.h
+ ALLOCATOR_NAME=__gnu_cxx::__mt_alloc
+ ;;
+ new)
+ ALLOCATOR_H=config/allocator/new_allocator_base.h
+ ALLOCATOR_NAME=__gnu_cxx::new_allocator
+ ;;
+ esac
+
+ AC_SUBST(ALLOCATOR_H)
+ AC_SUBST(ALLOCATOR_NAME)
+])
+
+
+dnl
dnl Check for whether the Boost-derived checks should be turned on.
dnl
dnl --enable-concept-checks turns them on.
@@ -1190,7 +1249,7 @@ dnl --disable-concept-checks leaves them off.
dnl + Usage: GLIBCXX_ENABLE_CONCEPT_CHECKS[(DEFAULT)]
dnl Where DEFAULT is either `yes' or `no'.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_CONCEPT_CHECKS, [
+AC_DEFUN([GLIBCXX_ENABLE_CONCEPT_CHECKS], [
GLIBCXX_ENABLE(concept-checks,$1,,[use Boost-derived template checks])
if test $enable_concept_checks = yes; then
AC_DEFINE(_GLIBCXX_CONCEPT_CHECKS)
@@ -1203,7 +1262,7 @@ dnl Check for which I/O library to use: stdio, or something specific.
dnl
dnl Default is stdio.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_CSTDIO, [
+AC_DEFUN([GLIBCXX_ENABLE_CSTDIO], [
AC_MSG_CHECKING([for underlying I/O to use])
GLIBCXX_ENABLE(cstdio,stdio,[=PACKAGE],
[use target-specific I/O package], [permit stdio])
@@ -1239,7 +1298,7 @@ dnl + Usage: GLIBCXX_ENABLE_CXX_FLAGS(default flags)
dnl If "default flags" is an empty string, the effect is the same
dnl as --disable or --enable=no.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_CXX_FLAGS, [dnl
+AC_DEFUN([GLIBCXX_ENABLE_CXX_FLAGS], [dnl
AC_MSG_CHECKING([for extra compiler flags for building])
GLIBCXX_ENABLE(cxx-flags,$1,[=FLAGS],
[pass compiler FLAGS when building library],
@@ -1277,7 +1336,7 @@ dnl --disable-c-mbchar doesn't.
dnl + Usage: GLIBCXX_ENABLE_C_MBCHAR[(DEFAULT)]
dnl Where DEFAULT is either `yes' or `no'.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_C_MBCHAR, [
+AC_DEFUN([GLIBCXX_ENABLE_C_MBCHAR], [
GLIBCXX_ENABLE(c-mbchar,$1,,[enable multibyte (wide) characters])
# Option parsed, now other scripts can test enable_c_mbchar for yes/no.
])
@@ -1299,7 +1358,7 @@ dnl
dnl + Usage: GLIBCXX_ENABLE_DEBUG[(DEFAULT)]
dnl Where DEFAULT is either `yes' or `no'.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_DEBUG, [
+AC_DEFUN([GLIBCXX_ENABLE_DEBUG], [
AC_MSG_CHECKING([for additional debug build])
GLIBCXX_ENABLE(libstdcxx-debug,$1,,[build extra debug library])
AC_MSG_RESULT($enable_libstdcxx_debug)
@@ -1319,7 +1378,7 @@ dnl + Usage: GLIBCXX_ENABLE_DEBUG_FLAGS(default flags)
dnl If "default flags" is an empty string, the effect is the same
dnl as --disable or --enable=no.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_DEBUG_FLAGS, [
+AC_DEFUN([GLIBCXX_ENABLE_DEBUG_FLAGS], [
GLIBCXX_ENABLE(libstdcxx-debug-flags,[$1],[=FLAGS],
[pass compiler FLAGS when building debug library],
[case "x$enable_libstdcxx_debug_flags" in
@@ -1350,7 +1409,7 @@ dnl
dnl Defines:
dnl _GLIBCXX_HOSTED (always defined, either to 1 or 0)
dnl
-AC_DEFUN(GLIBCXX_ENABLE_HOSTED, [
+AC_DEFUN([GLIBCXX_ENABLE_HOSTED], [
AC_ARG_ENABLE([hosted-libstdcxx],
AC_HELP_STRING([--disable-hosted-libstdcxx],
[only build freestanding C++ runtime support]),,
@@ -1382,7 +1441,7 @@ dnl + Usage: GLIBCXX_ENABLE_LONG_LONG[(DEFAULT)]
dnl Where DEFAULT is either `yes' or `no'.
dnl + If 'long long' stuff is not available, ignores DEFAULT and sets `no'.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_LONG_LONG, [
+AC_DEFUN([GLIBCXX_ENABLE_LONG_LONG], [
GLIBCXX_ENABLE(long-long,$1,,[enables I/O support for 'long long'])
AC_LANG_SAVE
@@ -1419,7 +1478,7 @@ dnl
dnl Substs:
dnl glibcxx_PCHFLAGS
dnl
-AC_DEFUN(GLIBCXX_ENABLE_PCH, [
+AC_DEFUN([GLIBCXX_ENABLE_PCH], [
AC_MSG_CHECKING([for enabled PCH])
GLIBCXX_ENABLE(libstdcxx-pch,$1,,[build pre-compiled libstdc++ headers])
AC_MSG_RESULT([$enable_libstdcxx_pch])
@@ -1471,7 +1530,7 @@ dnl
dnl Defines:
dnl _GLIBCXX_SJLJ_EXCEPTIONS if the compiler is configured for it
dnl
-AC_DEFUN(GLIBCXX_ENABLE_SJLJ_EXCEPTIONS, [
+AC_DEFUN([GLIBCXX_ENABLE_SJLJ_EXCEPTIONS], [
AC_MSG_CHECKING([for exception model to use])
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
@@ -1541,7 +1600,7 @@ dnl Where DEFAULT is either 'yes' or 'no'. Passing `yes' tries to
dnl choose a default style based on linker characteristics. Passing
dnl 'no' disables versioning.
dnl
-AC_DEFUN(GLIBCXX_ENABLE_SYMVERS, [
+AC_DEFUN([GLIBCXX_ENABLE_SYMVERS], [
GLIBCXX_ENABLE(symvers,$1,[=STYLE],
[enables symbol versioning of the shared library],
@@ -1643,16 +1702,14 @@ dnl glibcxx_thread_h
dnl
dnl Defines:
dnl HAVE_GTHR_DEFAULT
-dnl _GLIBCXX_SUPPORTS_WEAK
dnl
-AC_DEFUN(GLIBCXX_ENABLE_THREADS, [
+AC_DEFUN([GLIBCXX_ENABLE_THREADS], [
AC_MSG_CHECKING([for thread model used by GCC])
target_thread_file=`$CXX -v 2>&1 | sed -n 's/^Thread model: //p'`
AC_MSG_RESULT([$target_thread_file])
if test $target_thread_file != single; then
AC_DEFINE(HAVE_GTHR_DEFAULT)
- AC_DEFINE(_GLIBCXX_SUPPORTS_WEAK, __GXX_WEAK__)
fi
glibcxx_thread_h=gthr-$target_thread_file.h
@@ -1669,7 +1726,7 @@ AC_DEFUN(GLIBCXX_ENABLE_THREADS, [
# Please note that the actual code is *not* freely available.
# serial 1
-AC_DEFUN(AC_LC_MESSAGES, [
+AC_DEFUN([AC_LC_MESSAGES], [
AC_CHECK_HEADER(locale.h, [
AC_CACHE_CHECK([for LC_MESSAGES], ac_cv_val_LC_MESSAGES,
[AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
diff --git a/libstdc++-v3/config.h.in b/libstdc++-v3/config.h.in
index b2d030da06d..5a35cff918f 100644
--- a/libstdc++-v3/config.h.in
+++ b/libstdc++-v3/config.h.in
@@ -11,9 +11,6 @@
#undef HAVE_GETTEXT
#undef HAVE_STPCPY
-// Define if GCC supports weak symbols.
-#undef _GLIBCXX_SUPPORTS_WEAK
-
// Include I/O support for 'long long' and 'unsigned long long'.
#undef _GLIBCXX_USE_LONG_LONG
@@ -422,9 +419,6 @@
/* Define to 1 if you have the `modfl' function. */
#undef HAVE_MODFL
-/* Define to 1 if you have the `nan' function. */
-#undef HAVE_NAN
-
/* Define to 1 if you have the <nan.h> header file. */
#undef HAVE_NAN_H
@@ -515,6 +509,9 @@
/* Define to 1 if you have the <sys/machine.h> header file. */
#undef HAVE_SYS_MACHINE_H
+/* Define to 1 if you have the <sys/param.h> header file. */
+#undef HAVE_SYS_PARAM_H
+
/* Define to 1 if you have the <sys/resource.h> header file. */
#undef HAVE_SYS_RESOURCE_H
diff --git a/libstdc++-v3/config/allocator/bitmap_allocator_base.h b/libstdc++-v3/config/allocator/bitmap_allocator_base.h
new file mode 100644
index 00000000000..bf84ae06d7f
--- /dev/null
+++ b/libstdc++-v3/config/allocator/bitmap_allocator_base.h
@@ -0,0 +1,37 @@
+// Base to std::allocator -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#ifndef _CXX_ALLOCATOR_H
+#define _CXX_ALLOCATOR_H 1
+
+// Define bitmap_allocator as the base class to std::allocator.
+#include <ext/bitmap_allocator.h>
+#define ___glibcxx_base_allocator __gnu_cxx::bitmap_allocator
+
+#endif
diff --git a/libstdc++-v3/config/allocator/malloc_allocator_base.h b/libstdc++-v3/config/allocator/malloc_allocator_base.h
new file mode 100644
index 00000000000..4a82ec362c5
--- /dev/null
+++ b/libstdc++-v3/config/allocator/malloc_allocator_base.h
@@ -0,0 +1,37 @@
+// Base to std::allocator -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#ifndef _CXX_ALLOCATOR_H
+#define _CXX_ALLOCATOR_H 1
+
+// Define new_allocator as the base class to std::allocator.
+#include <ext/malloc_allocator.h>
+#define ___glibcxx_base_allocator __gnu_cxx::malloc_allocator
+
+#endif
diff --git a/libstdc++-v3/config/allocator/mt_allocator_base.h b/libstdc++-v3/config/allocator/mt_allocator_base.h
new file mode 100644
index 00000000000..52b4421a439
--- /dev/null
+++ b/libstdc++-v3/config/allocator/mt_allocator_base.h
@@ -0,0 +1,37 @@
+// Base to std::allocator -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#ifndef _CXX_ALLOCATOR_H
+#define _CXX_ALLOCATOR_H 1
+
+// Define mt_allocator as the base class to std::allocator.
+#include <ext/mt_allocator.h>
+#define ___glibcxx_base_allocator __gnu_cxx::__mt_alloc
+
+#endif
diff --git a/libstdc++-v3/config/allocator/new_allocator_base.h b/libstdc++-v3/config/allocator/new_allocator_base.h
new file mode 100644
index 00000000000..442f89cc535
--- /dev/null
+++ b/libstdc++-v3/config/allocator/new_allocator_base.h
@@ -0,0 +1,37 @@
+// Base to std::allocator -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#ifndef _CXX_ALLOCATOR_H
+#define _CXX_ALLOCATOR_H 1
+
+// Define new_allocator as the base class to std::allocator.
+#include <ext/new_allocator.h>
+#define ___glibcxx_base_allocator __gnu_cxx::new_allocator
+
+#endif
diff --git a/libstdc++-v3/config/cpu/alpha/atomicity.h b/libstdc++-v3/config/cpu/alpha/atomicity.h
index cb071cdae97..4eb311b509a 100644
--- a/libstdc++-v3/config/cpu/alpha/atomicity.h
+++ b/libstdc++-v3/config/cpu/alpha/atomicity.h
@@ -1,6 +1,6 @@
// Low-level functions for atomic operations: Alpha version -*- C++ -*-
-// Copyright (C) 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2000, 2001, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -27,23 +27,22 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
-#ifndef _GLIBCXX_ATOMICITY_H
-#define _GLIBCXX_ATOMICITY_H 1
+#include <bits/atomicity.h>
/* @@@ With gas we can play nice .subsection games to get the
non-predicted branch pointing forward. But Digital assemblers
don't understand those directives. This isn't a terribly
important issue, so just ignore it. */
-typedef int _Atomic_word;
-
-static inline _Atomic_word
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
+namespace __gnu_cxx
{
- register int __result, __tmp;
-
- __asm__ __volatile__ (
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ {
+ register int __result, __tmp;
+
+ __asm__ __volatile__ (
"\n$Lxadd_%=:\n\t"
"ldl_l %0,%3\n\t"
"addl %0,%4,%1\n\t"
@@ -53,16 +52,16 @@ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
: "=&r"(__result), "=&r"(__tmp), "=m"(*__mem)
: "m" (*__mem), "r"(__val));
- return __result;
-}
+ return __result;
+ }
-static inline void
-__attribute__ ((__unused__))
-__atomic_add(volatile _Atomic_word* __mem, int __val)
-{
- register _Atomic_word __result;
+ void
+ __attribute__ ((__unused__))
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ {
+ register _Atomic_word __result;
- __asm__ __volatile__ (
+ __asm__ __volatile__ (
"\n$Ladd_%=:\n\t"
"ldl_l %0,%2\n\t"
"addl %0,%3,%0\n\t"
@@ -71,6 +70,6 @@ __atomic_add(volatile _Atomic_word* __mem, int __val)
"mb"
: "=&r"(__result), "=m"(*__mem)
: "m" (*__mem), "r"(__val));
-}
+ }
+} // namespace __gnu_cxx
-#endif /* atomicity.h */
diff --git a/libstdc++-v3/config/cpu/cris/atomic_word.h b/libstdc++-v3/config/cpu/cris/atomic_word.h
new file mode 100644
index 00000000000..dd2cf6b834b
--- /dev/null
+++ b/libstdc++-v3/config/cpu/cris/atomic_word.h
@@ -0,0 +1,36 @@
+// Low-level type for atomic operations -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#ifndef _GLIBCXX_ATOMIC_WORD_H
+#define _GLIBCXX_ATOMIC_WORD_H 1
+
+// This entity must not cross a page boundary.
+typedef int _Atomic_word __attribute__ ((__aligned__ (4)));
+
+#endif
diff --git a/libstdc++-v3/config/cpu/cris/atomicity.h b/libstdc++-v3/config/cpu/cris/atomicity.h
index fecb9dc186f..3162f6ada3b 100644
--- a/libstdc++-v3/config/cpu/cris/atomicity.h
+++ b/libstdc++-v3/config/cpu/cris/atomicity.h
@@ -1,6 +1,6 @@
// Low-level functions for atomic operations: CRIS version -*- C++ -*-
-// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -27,21 +27,18 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
-#ifndef _GLIBCXX_ATOMICITY_H
-#define _GLIBCXX_ATOMICITY_H 1
+#include <bits/atomicity.h>
-// This entity must not cross a page boundary.
-typedef int _Atomic_word __attribute__ ((__aligned__ (4)));
-
-static inline _Atomic_word
-__attribute__ ((__unused__))
-__exchange_and_add(_Atomic_word* __mem, int __val)
+namespace __gnu_cxx
{
- int __tmp;
- _Atomic_word __result;
+ _Atomic_word
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ {
+ int __tmp;
+ _Atomic_word __result;
#if (__CRIS_arch_version >= 10)
- __asm__ __volatile__ (" clearf \n"
+ __asm__ __volatile__ (" clearf \n"
"0: \n"
" move.d %4,%2 \n"
" move.d [%3],%0 \n"
@@ -51,9 +48,12 @@ __exchange_and_add(_Atomic_word* __mem, int __val)
" bwf 0b \n"
" clearf \n"
: "=&r" (__result), "=m" (*__mem), "=&r" (__tmp)
- : "r" (__mem), "g" (__val), "m" (*__mem));
+ : "r" (__mem), "g" (__val), "m" (*__mem)
+ /* The memory clobber must stay, regardless of
+ current uses of this function. */
+ : "memory");
#else
- __asm__ __volatile__ (" move $ccr,$r9 \n"
+ __asm__ __volatile__ (" move $ccr,$r9 \n"
" di \n"
" move.d %4,%2 \n"
" move.d [%3],%0 \n"
@@ -62,17 +62,16 @@ __exchange_and_add(_Atomic_word* __mem, int __val)
" move $r9,$ccr \n"
: "=&r" (__result), "=m" (*__mem), "=&r" (__tmp)
: "r" (__mem), "g" (__val), "m" (*__mem)
- : "r9");
+ : "r9",
+ /* The memory clobber must stay, regardless of
+ current uses of this function. */
+ "memory");
#endif
- return __result;
-}
-
-static inline void
-__attribute__ ((__unused__))
-__atomic_add(_Atomic_word* __mem, int __val)
-{
- __exchange_and_add(__mem, __val);
-}
+ return __result;
+ }
-#endif /* atomicity.h */
+ void
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ { __exchange_and_add(__mem, __val); }
+} // namespace __gnu_cxx
diff --git a/libstdc++-v3/config/cpu/generic/atomic_word.h b/libstdc++-v3/config/cpu/generic/atomic_word.h
new file mode 100644
index 00000000000..b46adc2a474
--- /dev/null
+++ b/libstdc++-v3/config/cpu/generic/atomic_word.h
@@ -0,0 +1,35 @@
+// Low-level type for atomic operations -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#ifndef _GLIBCXX_ATOMIC_WORD_H
+#define _GLIBCXX_ATOMIC_WORD_H 1
+
+typedef int _Atomic_word;
+
+#endif
diff --git a/libstdc++-v3/config/cpu/generic/atomicity.h b/libstdc++-v3/config/cpu/generic/atomicity.h
index 1bee9ea6b0c..f30005a0abc 100644
--- a/libstdc++-v3/config/cpu/generic/atomicity.h
+++ b/libstdc++-v3/config/cpu/generic/atomicity.h
@@ -1,6 +1,6 @@
// Low-level functions for atomic operations: Generic version -*- C++ -*-
-// Copyright (C) 1999, 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -27,51 +27,30 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
-#ifndef _GLIBCXX_ATOMICITY_H
-#define _GLIBCXX_ATOMICITY_H 1
+#include <bits/atomicity.h>
+#include <bits/concurrence.h>
-#include <bits/gthr.h>
-
-#define _GLIBCXX_NEED_GENERIC_MUTEX
-
-typedef int _Atomic_word;
-
-namespace __gnu_cxx
-{
- extern __gthread_mutex_t _Atomic_add_mutex;
-
-#ifndef __GTHREAD_MUTEX_INIT
- extern __gthread_once_t _Atomic_add_mutex_once;
- extern void __gthread_atomic_add_mutex_once();
-#endif
-}
-
-static inline _Atomic_word
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
+namespace __gnu_internal
{
-#ifndef __GTHREAD_MUTEX_INIT
- __gthread_once(&__gnu_cxx::_Atomic_add_mutex_once,
- __gnu_cxx::__gthread_atomic_add_mutex_once);
-#endif
+ __glibcxx_mutex_define_initialized(atomic_mutex);
+} // namespace __gnu_internal
- _Atomic_word __result;
-
- __gthread_mutex_lock(&__gnu_cxx::_Atomic_add_mutex);
-
- __result = *__mem;
- *__mem += __val;
-
- __gthread_mutex_unlock(&__gnu_cxx::_Atomic_add_mutex);
- return __result;
-}
-
-
-static inline void
-__attribute__ ((__unused__))
-__atomic_add(volatile _Atomic_word* __mem, int __val)
+namespace __gnu_cxx
{
- (void) __exchange_and_add(__mem, __val);
-}
-
-#endif /* atomicity.h */
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ {
+ __glibcxx_mutex_lock(__gnu_internal::atomic_mutex);
+ _Atomic_word __result;
+ __result = *__mem;
+ *__mem += __val;
+ __glibcxx_mutex_unlock(__gnu_internal::atomic_mutex);
+ return __result;
+ }
+
+ void
+ __attribute__ ((__unused__))
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ { __exchange_and_add(__mem, __val); }
+} // namespace __gnu_cxx
diff --git a/libstdc++-v3/config/cpu/hppa/atomicity.h b/libstdc++-v3/config/cpu/hppa/atomicity.h
index b07414246af..48c8283a544 100644
--- a/libstdc++-v3/config/cpu/hppa/atomicity.h
+++ b/libstdc++-v3/config/cpu/hppa/atomicity.h
@@ -1,90 +1,95 @@
-/* Low-level functions for atomic operations. PA-RISC version. -*- C++ -*-
- Copyright 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
+// Low-level functions for atomic operations: PA-RISC version -*- C++ -*-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public License as
- published by the Free Software Foundation; either version 2 of the
- License, or (at your option) any later version.
+// Copyright (C) 2002, 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
- You should have received a copy of the GNU Library General Public
- License along with the GNU C Library; see the file COPYING.LIB. If not,
- write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
-#ifndef _GLIBCXX_ATOMICITY_H
-#define _GLIBCXX_ATOMICITY_H 1
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
-typedef int _Atomic_word;
+#include <bits/c++config.h>
+#include <bits/atomicity.h>
-template <int __inst>
-struct __Atomicity_lock
+namespace __gnu_cxx
{
- static volatile int _S_atomicity_lock;
-};
+ template<int _Inst>
+ struct _Atomicity_lock
+ {
+ static volatile int _S_atomicity_lock;
+ };
+
+ template<int _Inst>
+ volatile int
+ _Atomicity_lock<_Inst>::_S_atomicity_lock __attribute__ ((aligned (16))) = 1;
-template <int __inst>
-volatile int
-__Atomicity_lock<__inst>::_S_atomicity_lock __attribute__ ((aligned (16))) = 1;
+ // Because of the lack of weak support when using the hpux som
+ // linker, we explicitly instantiate the atomicity lock.
+ template volatile int _Atomicity_lock<0>::_S_atomicity_lock;
-/* Because of the lack of weak support when using the hpux
- som linker, we explicitly instantiate the atomicity lock
- in src/misc-inst.cc when _GLIBCXX_INST_ATOMICITY_LOCK
- is defined. */
-#ifndef _GLIBCXX_INST_ATOMICITY_LOCK
-template volatile int __Atomicity_lock<0>::_S_atomicity_lock;
-#endif
-
-static inline int
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
-{
- _Atomic_word result;
- int tmp;
- volatile int& lock = __Atomicity_lock<0>::_S_atomicity_lock;
-
- __asm__ __volatile__ ("ldcw 0(%1),%0\n\t"
- "cmpib,<>,n 0,%0,.+20\n\t"
- "ldw 0(%1),%0\n\t"
- "cmpib,= 0,%0,.-4\n\t"
- "nop\n\t"
- "b,n .-20"
- : "=&r" (tmp)
- : "r" (&lock));
-
- result = *__mem;
- *__mem = result + __val;
- /* Reset lock with PA 2.0 "ordered" store. */
- __asm__ __volatile__ ("stw,ma %1,0(%0)"
- : : "r" (&lock), "r" (tmp) : "memory");
- return result;
-}
-
-static inline void
-__attribute__ ((__unused__))
-__atomic_add(_Atomic_word* __mem, int __val)
-{
- int tmp;
- volatile int& lock = __Atomicity_lock<0>::_S_atomicity_lock;
-
- __asm__ __volatile__ ("ldcw 0(%1),%0\n\t"
- "cmpib,<>,n 0,%0,.+20\n\t"
- "ldw 0(%1),%0\n\t"
- "cmpib,= 0,%0,.-4\n\t"
- "nop\n\t"
- "b,n .-20"
- : "=&r" (tmp)
- : "r" (&lock));
-
- *__mem += __val;
- /* Reset lock with PA 2.0 "ordered" store. */
- __asm__ __volatile__ ("stw,ma %1,0(%0)"
- : : "r" (&lock), "r" (tmp) : "memory");
-}
-
-#endif
+ int
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ {
+ _Atomic_word result;
+ int tmp;
+ volatile int& lock = _Atomicity_lock<0>::_S_atomicity_lock;
+
+ __asm__ __volatile__ ("ldcw 0(%1),%0\n\t"
+ "cmpib,<>,n 0,%0,.+20\n\t"
+ "ldw 0(%1),%0\n\t"
+ "cmpib,= 0,%0,.-4\n\t"
+ "nop\n\t"
+ "b,n .-20"
+ : "=&r" (tmp)
+ : "r" (&lock));
+
+ result = *__mem;
+ *__mem = result + __val;
+ /* Reset lock with PA 2.0 "ordered" store. */
+ __asm__ __volatile__ ("stw,ma %1,0(%0)"
+ : : "r" (&lock), "r" (tmp) : "memory");
+ return result;
+ }
+
+ void
+ __attribute__ ((__unused__))
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ {
+ int tmp;
+ volatile int& lock = _Atomicity_lock<0>::_S_atomicity_lock;
+
+ __asm__ __volatile__ ("ldcw 0(%1),%0\n\t"
+ "cmpib,<>,n 0,%0,.+20\n\t"
+ "ldw 0(%1),%0\n\t"
+ "cmpib,= 0,%0,.-4\n\t"
+ "nop\n\t"
+ "b,n .-20"
+ : "=&r" (tmp)
+ : "r" (&lock));
+
+ *__mem += __val;
+ /* Reset lock with PA 2.0 "ordered" store. */
+ __asm__ __volatile__ ("stw,ma %1,0(%0)"
+ : : "r" (&lock), "r" (tmp) : "memory");
+ }
+} // namespace __gnu_cxx
diff --git a/libstdc++-v3/config/cpu/i386/atomicity.h b/libstdc++-v3/config/cpu/i386/atomicity.h
index 7a949c30fa5..92c03d59ab3 100644
--- a/libstdc++-v3/config/cpu/i386/atomicity.h
+++ b/libstdc++-v3/config/cpu/i386/atomicity.h
@@ -1,6 +1,6 @@
// Low-level functions for atomic operations: x86, x >= 3 version -*- C++ -*-
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -27,50 +27,48 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
-#ifndef _GLIBCXX_ATOMICITY_H
-#define _GLIBCXX_ATOMICITY_H 1
+#include <bits/atomicity.h>
-typedef int _Atomic_word;
-
-template<int __inst>
- struct __Atomicity_lock
- {
- static volatile _Atomic_word _S_atomicity_lock;
- };
-
-template<int __inst>
-volatile _Atomic_word __Atomicity_lock<__inst>::_S_atomicity_lock = 0;
-
-template volatile _Atomic_word __Atomicity_lock<0>::_S_atomicity_lock;
-
-static inline _Atomic_word
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
+namespace __gnu_cxx
{
- register _Atomic_word __result, __tmp = 1;
-
- /* obtain the atomic exchange/add spin lock */
- do {
- __asm__ __volatile__ ("xchg{l} {%0,%1|%1,%0}"
- : "=m" (__Atomicity_lock<0>::_S_atomicity_lock),
- "+r" (__tmp)
- : "m" (__Atomicity_lock<0>::_S_atomicity_lock));
- } while (__tmp);
-
- __result = *__mem;
- *__mem += __val;
-
- /* release spin lock */
- __Atomicity_lock<0>::_S_atomicity_lock = 0;
-
- return __result;
-}
-
-static inline void
-__attribute__ ((__unused__))
-__atomic_add(volatile _Atomic_word* __mem, int __val)
-{
- __exchange_and_add(__mem, __val);
-}
-
-#endif /* atomicity.h */
+ template<int __inst>
+ struct _Atomicity_lock
+ {
+ static volatile _Atomic_word _S_atomicity_lock;
+ };
+
+ template<int __inst>
+ volatile _Atomic_word _Atomicity_lock<__inst>::_S_atomicity_lock = 0;
+
+ template volatile _Atomic_word _Atomicity_lock<0>::_S_atomicity_lock;
+
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ {
+ register _Atomic_word __result, __tmp = 1;
+
+ // Obtain the atomic exchange/add spin lock.
+ do
+ {
+ __asm__ __volatile__ ("xchg{l} {%0,%1|%1,%0}"
+ : "=m" (_Atomicity_lock<0>::_S_atomicity_lock),
+ "+r" (__tmp)
+ : "m" (_Atomicity_lock<0>::_S_atomicity_lock));
+ }
+ while (__tmp);
+
+ __result = *__mem;
+ *__mem += __val;
+
+ // Release spin lock.
+ _Atomicity_lock<0>::_S_atomicity_lock = 0;
+
+ return __result;
+ }
+
+ void
+ __attribute__ ((__unused__))
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ { __exchange_and_add(__mem, __val); }
+} // namespace __gnu_cxx
diff --git a/libstdc++-v3/config/cpu/i486/atomicity.h b/libstdc++-v3/config/cpu/i486/atomicity.h
index 06ab866bbe3..5700bf39a7f 100644
--- a/libstdc++-v3/config/cpu/i486/atomicity.h
+++ b/libstdc++-v3/config/cpu/i486/atomicity.h
@@ -1,6 +1,6 @@
// Low-level functions for atomic operations: x86, x >= 4 version -*- C++ -*-
-// Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2000, 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -27,28 +27,27 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
-#ifndef _GLIBCXX_ATOMICITY_H
-#define _GLIBCXX_ATOMICITY_H 1
+#include <bits/atomicity.h>
-typedef int _Atomic_word;
-
-static inline _Atomic_word
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
-{
- register _Atomic_word __result;
- __asm__ __volatile__ ("lock; xadd{l} {%0,%1|%1,%0}"
- : "=r" (__result), "=m" (*__mem)
- : "0" (__val), "m" (*__mem));
- return __result;
-}
-
-static inline void
-__attribute__ ((__unused__))
-__atomic_add(volatile _Atomic_word* __mem, int __val)
+namespace __gnu_cxx
{
- __asm__ __volatile__ ("lock; add{l} {%1,%0|%0,%1}"
- : "=m" (*__mem) : "ir" (__val), "m" (*__mem));
-}
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ {
+ register _Atomic_word __result;
+ __asm__ __volatile__ ("lock; xadd{l} {%0,%1|%1,%0}"
+ : "=r" (__result), "=m" (*__mem)
+ : "0" (__val), "m" (*__mem));
+ return __result;
+ }
+
+ void
+ __attribute__ ((__unused__))
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ {
+ __asm__ __volatile__ ("lock; add{l} {%1,%0|%0,%1}"
+ : "=m" (*__mem) : "ir" (__val), "m" (*__mem));
+ }
+} // namespace __gnu_cxx
-#endif /* atomicity.h */
diff --git a/libstdc++-v3/config/cpu/ia64/atomicity.h b/libstdc++-v3/config/cpu/ia64/atomicity.h
index 4408d06718d..0c3ab3343e9 100644
--- a/libstdc++-v3/config/cpu/ia64/atomicity.h
+++ b/libstdc++-v3/config/cpu/ia64/atomicity.h
@@ -1,6 +1,6 @@
// Low-level functions for atomic operations: IA64 version -*- C++ -*-
-// Copyright (C) 2000, 2001, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2001, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -27,25 +27,18 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
-#ifndef _GLIBCXX_ATOMICITY_H
-#define _GLIBCXX_ATOMICITY_H 1
-
+#include <bits/atomicity.h>
#include <ia64intrin.h>
-typedef int _Atomic_word;
-
-static inline _Atomic_word
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
-{
- return __sync_fetch_and_add(__mem, __val);
-}
-
-static inline void
-__attribute__ ((__unused__))
-__atomic_add(volatile _Atomic_word* __mem, int __val)
+namespace __gnu_cxx
{
- __sync_fetch_and_add(__mem, __val);
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ { return __sync_fetch_and_add(__mem, __val); }
+
+ void
+ __attribute__ ((__unused__))
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ { __sync_fetch_and_add(__mem, __val); }
}
-
-#endif /* atomicity.h */
diff --git a/libstdc++-v3/config/cpu/m68k/atomicity.h b/libstdc++-v3/config/cpu/m68k/atomicity.h
index eb801dec50c..0e58f3c5f07 100644
--- a/libstdc++-v3/config/cpu/m68k/atomicity.h
+++ b/libstdc++-v3/config/cpu/m68k/atomicity.h
@@ -1,6 +1,6 @@
// Low-level functions for atomic operations: m68k version -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -27,113 +27,107 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
-#ifndef _GLIBCXX_ATOMICITY_H
-#define _GLIBCXX_ATOMICITY_H 1
-
-typedef int _Atomic_word;
+#include <bits/atomicity.h>
+namespace __gnu_cxx
+{
#if ( defined(__mc68020__) || defined(__mc68030__) \
|| defined(__mc68040__) || defined(__mc68060__) ) \
&& !defined(__mcpu32__)
-// These variants support compare-and-swap.
-
-static inline _Atomic_word
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
-{
- register _Atomic_word __result = *__mem;
- register _Atomic_word __temp;
- __asm__ __volatile__ ("1: move%.l %0,%1\n\t"
- "add%.l %3,%1\n\t"
- "cas%.l %0,%1,%2\n\t"
- "jne 1b"
- : "=d" (__result), "=&d" (__temp), "=m" (*__mem)
- : "d" (__val), "0" (__result), "m" (*__mem));
- return __result;
-}
+ // These variants support compare-and-swap.
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ {
+ register _Atomic_word __result = *__mem;
+ register _Atomic_word __temp;
+ __asm__ __volatile__ ("1: move%.l %0,%1\n\t"
+ "add%.l %3,%1\n\t"
+ "cas%.l %0,%1,%2\n\t"
+ "jne 1b"
+ : "=d" (__result), "=&d" (__temp), "=m" (*__mem)
+ : "d" (__val), "0" (__result), "m" (*__mem));
+ return __result;
+ }
#elif defined(__rtems__)
- /*
- * TAS/JBNE is unsafe on systems with strict priority-based scheduling.
- * Disable interrupts, which we can do only from supervisor mode.
- */
-static inline _Atomic_word
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
-{
- _Atomic_word __result;
- short __level, __tmpsr;
- __asm__ __volatile__ ("move%.w %%sr,%0\n\tor%.l %0,%1\n\tmove%.w %1,%%sr"
- : "=d"(__level), "=d"(__tmpsr) : "1"(0x700));
-
- __result = *__mem;
- *__mem = __result + __val;
-
- __asm__ __volatile__ ("move%.w %0,%%sr" : : "d"(__level));
-
- return __result;
-}
+ // TAS/JBNE is unsafe on systems with strict priority-based scheduling.
+ // Disable interrupts, which we can do only from supervisor mode.
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ {
+ _Atomic_word __result;
+ short __level, __tmpsr;
+ __asm__ __volatile__ ("move%.w %%sr,%0\n\tor%.l %0,%1\n\tmove%.w %1,%%sr"
+ : "=d"(__level), "=d"(__tmpsr) : "1"(0x700));
+
+ __result = *__mem;
+ *__mem = __result + __val;
+ __asm__ __volatile__ ("move%.w %0,%%sr" : : "d"(__level));
+
+ return __result;
+ }
#else
-
-template<int __inst>
- struct __Atomicity_lock
+
+ template<int __inst>
+ struct _Atomicity_lock
+ {
+ static volatile unsigned char _S_atomicity_lock;
+ };
+
+ template<int __inst>
+ volatile unsigned char _Atomicity_lock<__inst>::_S_atomicity_lock = 0;
+
+ template volatile unsigned char _Atomicity_lock<0>::_S_atomicity_lock;
+
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
{
- static volatile unsigned char _S_atomicity_lock;
- };
-
-template<int __inst>
-volatile unsigned char __Atomicity_lock<__inst>::_S_atomicity_lock = 0;
-
-template volatile unsigned char __Atomicity_lock<0>::_S_atomicity_lock;
-
-static inline _Atomic_word
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
-{
- _Atomic_word __result;
-
-// bset with no immediate addressing (not SMP-safe)
+ _Atomic_word __result;
+
+ // bset with no immediate addressing (not SMP-safe)
#if defined(__mcf5200__) || defined(__mcf5300__)
- __asm__ __volatile__("1: bset.b #7,%0@\n\tjbne 1b"
- : /* no outputs */
- : "a"(&__Atomicity_lock<0>::_S_atomicity_lock)
- : "cc", "memory");
-
-// CPU32 and MCF5400 support test-and-set (SMP-safe).
+ __asm__ __volatile__("1: bset.b #7,%0@\n\tjbne 1b"
+ : /* no outputs */
+ : "a"(&_Atomicity_lock<0>::_S_atomicity_lock)
+ : "cc", "memory");
+
+ // CPU32 and MCF5400 support test-and-set (SMP-safe).
#elif defined(__mcpu32__) || defined(__mcf5400__)
- __asm__ __volatile__("1: tas %0\n\tjbne 1b"
- : "+m"(__Atomicity_lock<0>::_S_atomicity_lock)
- : /* none */
- : "cc");
-
-// Use bset with immediate addressing for 68000/68010 (not SMP-safe)
-// NOTE: TAS is available on the 68000, but unsupported by some Amiga
-// memory controllers.
+ __asm__ __volatile__("1: tas %0\n\tjbne 1b"
+ : "+m"(_Atomicity_lock<0>::_S_atomicity_lock)
+ : /* none */
+ : "cc");
+
+ // Use bset with immediate addressing for 68000/68010 (not SMP-safe)
+ // NOTE: TAS is available on the 68000, but unsupported by some Amiga
+ // memory controllers.
#else
- __asm__ __volatile__("1: bset.b #7,%0\n\tjbne 1b"
- : "+m"(__Atomicity_lock<0>::_S_atomicity_lock)
- : /* none */
- : "cc");
+ __asm__ __volatile__("1: bset.b #7,%0\n\tjbne 1b"
+ : "+m"(_Atomicity_lock<0>::_S_atomicity_lock)
+ : /* none */
+ : "cc");
#endif
-
- __result = *__mem;
- *__mem = __result + __val;
-
- __Atomicity_lock<0>::_S_atomicity_lock = 0;
-
- return __result;
-}
-
+
+ __result = *__mem;
+ *__mem = __result + __val;
+
+ _Atomicity_lock<0>::_S_atomicity_lock = 0;
+
+ return __result;
+ }
+
#endif /* TAS / BSET */
-static inline void
-__attribute__ ((__unused__))
-__atomic_add(volatile _Atomic_word* __mem, int __val)
-{
- // Careful: using add.l with a memory destination is not
- // architecturally guaranteed to be atomic.
- (void) __exchange_and_add(__mem, __val);
-}
-
-#endif /* !_GLIBCXX_ATOMICITY_H */
+ void
+ __attribute__ ((__unused__))
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ {
+ // Careful: using add.l with a memory destination is not
+ // architecturally guaranteed to be atomic.
+ __exchange_and_add(__mem, __val);
+ }
+} // namespace __gnu_cxx
diff --git a/libstdc++-v3/config/cpu/mips/atomicity.h b/libstdc++-v3/config/cpu/mips/atomicity.h
index 3d0c7a10e09..087134289de 100644
--- a/libstdc++-v3/config/cpu/mips/atomicity.h
+++ b/libstdc++-v3/config/cpu/mips/atomicity.h
@@ -1,6 +1,6 @@
-// Low-level functions for atomic operations.
+// Low-level functions for atomic operations: MIPS version -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -27,57 +27,55 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
-#ifndef _GLIBCXX_ATOMICITY_H
-#define _GLIBCXX_ATOMICITY_H 1
+#include <bits/atomicity.h>
-typedef int _Atomic_word;
-
-static inline int
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
+namespace __gnu_cxx
{
- int __result, __tmp;
-
- __asm__ __volatile__
- ("/* Inline exchange & add */\n\t"
- "1:\n\t"
- ".set push\n\t"
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ {
+ _Atomic_word __result, __tmp;
+
+ __asm__ __volatile__
+ ("/* Inline exchange & add */\n\t"
+ "1:\n\t"
+ ".set push\n\t"
#if _MIPS_SIM == _ABIO32
- ".set mips2\n\t"
+ ".set mips2\n\t"
#endif
- "ll %0,%3\n\t"
- "addu %1,%4,%0\n\t"
- "sc %1,%2\n\t"
- ".set pop\n\t"
- "beqz %1,1b\n\t"
- "/* End exchange & add */"
- : "=&r"(__result), "=&r"(__tmp), "=m"(*__mem)
- : "m" (*__mem), "r"(__val));
-
- return __result;
-}
-
-static inline void
-__attribute__ ((__unused__))
-__atomic_add(volatile _Atomic_word* __mem, int __val)
-{
- int __result;
-
- __asm__ __volatile__
- ("/* Inline atomic add */\n\t"
- "1:\n\t"
- ".set push\n\t"
+ "ll %0,%3\n\t"
+ "addu %1,%4,%0\n\t"
+ "sc %1,%2\n\t"
+ ".set pop\n\t"
+ "beqz %1,1b\n\t"
+ "/* End exchange & add */"
+ : "=&r"(__result), "=&r"(__tmp), "=m"(*__mem)
+ : "m" (*__mem), "r"(__val));
+
+ return __result;
+ }
+
+ void
+ __attribute__ ((__unused__))
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ {
+ _Atomic_word __result;
+
+ __asm__ __volatile__
+ ("/* Inline atomic add */\n\t"
+ "1:\n\t"
+ ".set push\n\t"
#if _MIPS_SIM == _ABIO32
- ".set mips2\n\t"
+ ".set mips2\n\t"
#endif
- "ll %0,%2\n\t"
- "addu %0,%3,%0\n\t"
- "sc %0,%1\n\t"
- ".set pop\n\t"
- "beqz %0,1b\n\t"
- "/* End atomic add */"
- : "=&r"(__result), "=m"(*__mem)
+ "ll %0,%2\n\t"
+ "addu %0,%3,%0\n\t"
+ "sc %0,%1\n\t"
+ ".set pop\n\t"
+ "beqz %0,1b\n\t"
+ "/* End atomic add */"
+ : "=&r"(__result), "=m"(*__mem)
: "m" (*__mem), "r"(__val));
-}
-
-#endif /* atomicity.h */
+ }
+} // namespace __gnu_cxx
diff --git a/libstdc++-v3/config/cpu/powerpc/atomicity.h b/libstdc++-v3/config/cpu/powerpc/atomicity.h
index 3b44b7daf92..73149441dd8 100644
--- a/libstdc++-v3/config/cpu/powerpc/atomicity.h
+++ b/libstdc++-v3/config/cpu/powerpc/atomicity.h
@@ -1,6 +1,6 @@
// Low-level functions for atomic operations: PowerPC version -*- C++ -*-
-// Copyright (C) 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2000, 2001, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -27,8 +27,7 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
-#ifndef _GLIBCXX_ATOMICITY_H
-#define _GLIBCXX_ATOMICITY_H 1
+#include <bits/atomicity.h>
#ifdef __PPC405__
#define _STWCX "sync \n\tstwcx. "
@@ -36,43 +35,42 @@
#define _STWCX "stwcx. "
#endif
-typedef int _Atomic_word;
-
-static inline _Atomic_word
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
-{
- _Atomic_word __tmp, __res;
- __asm__ __volatile__ (
- "/* Inline exchange & add */\n"
- "0:\t"
- "lwarx %0,0,%3 \n\t"
- "add%I4 %1,%0,%4 \n\t"
- _STWCX " %1,0,%3 \n\t"
- "bne- 0b \n\t"
- "/* End exchange & add */"
- : "=&b"(__res), "=&r"(__tmp), "=m" (*__mem)
- : "r" (__mem), "Ir"(__val), "m" (*__mem)
- : "cr0");
- return __res;
-}
-
-static inline void
-__attribute__ ((__unused__))
-__atomic_add(volatile _Atomic_word* __mem, int __val)
+namespace __gnu_cxx
{
- _Atomic_word __tmp;
- __asm__ __volatile__ (
- "/* Inline atomic add */\n"
- "0:\t"
- "lwarx %0,0,%2 \n\t"
- "add%I3 %0,%0,%3 \n\t"
- _STWCX " %0,0,%2 \n\t"
- "bne- 0b \n\t"
- "/* End atomic add */"
- : "=&b"(__tmp), "=m" (*__mem)
- : "r" (__mem), "Ir"(__val), "m" (*__mem)
- : "cr0");
-}
-
-#endif /* atomicity.h */
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ {
+ _Atomic_word __tmp, __res;
+ __asm__ __volatile__ (
+ "/* Inline exchange & add */\n"
+ "0:\t"
+ "lwarx %0,0,%3 \n\t"
+ "add%I4 %1,%0,%4 \n\t"
+ _STWCX " %1,0,%3 \n\t"
+ "bne- 0b \n\t"
+ "/* End exchange & add */"
+ : "=&b"(__res), "=&r"(__tmp), "=m" (*__mem)
+ : "r" (__mem), "Ir"(__val), "m" (*__mem)
+ : "cr0");
+ return __res;
+ }
+
+ void
+ __attribute__ ((__unused__))
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ {
+ _Atomic_word __tmp;
+ __asm__ __volatile__ (
+ "/* Inline atomic add */\n"
+ "0:\t"
+ "lwarx %0,0,%2 \n\t"
+ "add%I3 %0,%0,%3 \n\t"
+ _STWCX " %0,0,%2 \n\t"
+ "bne- 0b \n\t"
+ "/* End atomic add */"
+ : "=&b"(__tmp), "=m" (*__mem)
+ : "r" (__mem), "Ir"(__val), "m" (*__mem)
+ : "cr0");
+ }
+} // namespace __gnu_cxx
diff --git a/libstdc++-v3/config/cpu/s390/atomicity.h b/libstdc++-v3/config/cpu/s390/atomicity.h
index 8647c7635ea..b979e3abd33 100644
--- a/libstdc++-v3/config/cpu/s390/atomicity.h
+++ b/libstdc++-v3/config/cpu/s390/atomicity.h
@@ -1,6 +1,6 @@
// Low-level functions for atomic operations: S/390 version -*- C++ -*-
-// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -27,34 +27,28 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
-#ifndef _GLIBCXX_ATOMICITY_H
-#define _GLIBCXX_ATOMICITY_H 1
+#include <bits/atomicity.h>
-typedef int _Atomic_word;
-
-static inline _Atomic_word
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
-{
- register _Atomic_word __old_val, __new_val;
-
- __asm__ __volatile__ (" l %0,0(%3)\n"
- "0: lr %1,%0\n"
- " ar %1,%4\n"
- " cs %0,%1,0(%3)\n"
- " jl 0b"
- : "=&d" (__old_val), "=&d" (__new_val), "=m" (*__mem)
- : "a" (__mem), "d" (__val), "m" (*__mem) : "cc");
- return __old_val;
-}
-
-static inline void
-__attribute__ ((__unused__))
-__atomic_add(volatile _Atomic_word* __mem, int __val)
+namespace __gnu_cxx
{
- __exchange_and_add(__mem, __val);
-}
-
-#endif /* atomicity.h */
-
-
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ {
+ register _Atomic_word __old_val, __new_val;
+
+ __asm__ __volatile__ (" l %0,0(%3)\n"
+ "0: lr %1,%0\n"
+ " ar %1,%4\n"
+ " cs %0,%1,0(%3)\n"
+ " jl 0b"
+ : "=&d" (__old_val), "=&d" (__new_val), "=m" (*__mem)
+ : "a" (__mem), "d" (__val), "m" (*__mem) : "cc");
+ return __old_val;
+ }
+
+ void
+ __attribute__ ((__unused__))
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ { __exchange_and_add(__mem, __val); }
+} // namespace __gnu_cxx
diff --git a/libstdc++-v3/config/cpu/sparc/atomic_word.h b/libstdc++-v3/config/cpu/sparc/atomic_word.h
new file mode 100644
index 00000000000..941fddd2b0e
--- /dev/null
+++ b/libstdc++-v3/config/cpu/sparc/atomic_word.h
@@ -0,0 +1,39 @@
+// Low-level type for atomic operations -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#ifndef _GLIBCXX_ATOMIC_WORD_H
+#define _GLIBCXX_ATOMIC_WORD_H 1
+
+#ifdef __arch64__
+ typedef long _Atomic_word;
+#else
+ typedef int _Atomic_word;
+#endif
+
+#endif
diff --git a/libstdc++-v3/config/cpu/sparc/atomicity.h b/libstdc++-v3/config/cpu/sparc/atomicity.h
index 2db079c95ec..a39153b7139 100644
--- a/libstdc++-v3/config/cpu/sparc/atomicity.h
+++ b/libstdc++-v3/config/cpu/sparc/atomicity.h
@@ -1,6 +1,6 @@
// Low-level functions for atomic operations: Sparc version -*- C++ -*-
-// Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -27,105 +27,99 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
-#ifndef _GLIBCXX_ATOMICITY_H
-#define _GLIBCXX_ATOMICITY_H 1
+#include <bits/atomicity.h>
-#ifdef __arch64__
-
-typedef long _Atomic_word;
-
-static inline _Atomic_word
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
-{
- _Atomic_word __tmp1, __tmp2;
- _Atomic_word __val_extended = __val;
-
- __asm__ __volatile__("1: ldx [%3], %0\n\t"
- " add %0, %4, %1\n\t"
- " casx [%3], %0, %1\n\t"
- " sub %0, %1, %0\n\t"
- " brnz,pn %0, 1b\n\t"
- " nop"
- : "=&r" (__tmp1), "=&r" (__tmp2), "=m" (*__mem)
- : "r" (__mem), "r" (__val_extended), "m" (*__mem));
- return __tmp2;
-}
-
-static inline void
-__attribute__ ((__unused__))
-__atomic_add(volatile _Atomic_word* __mem, int __val)
+namespace __gnu_cxx
{
- _Atomic_word __tmp1, __tmp2;
- _Atomic_word __val_extended = __val;
-
- __asm__ __volatile__("1: ldx [%3], %0\n\t"
- " add %0, %4, %1\n\t"
- " casx [%3], %0, %1\n\t"
- " sub %0, %1, %0\n\t"
- " brnz,pn %0, 1b\n\t"
- " nop"
- : "=&r" (__tmp1), "=&r" (__tmp2), "=m" (*__mem)
- : "r" (__mem), "r" (__val_extended), "m" (*__mem));
-}
-
+#ifdef __arch64__
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ {
+ _Atomic_word __tmp1, __tmp2;
+ _Atomic_word __val_extended = __val;
+
+ __asm__ __volatile__("1: ldx [%3], %0\n\t"
+ " add %0, %4, %1\n\t"
+ " casx [%3], %0, %1\n\t"
+ " sub %0, %1, %0\n\t"
+ " brnz,pn %0, 1b\n\t"
+ " nop"
+ : "=&r" (__tmp1), "=&r" (__tmp2), "=m" (*__mem)
+ : "r" (__mem), "r" (__val_extended), "m" (*__mem));
+ return __tmp2;
+ }
+
+ void
+ __attribute__ ((__unused__))
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ {
+ _Atomic_word __tmp1, __tmp2;
+ _Atomic_word __val_extended = __val;
+
+ __asm__ __volatile__("1: ldx [%3], %0\n\t"
+ " add %0, %4, %1\n\t"
+ " casx [%3], %0, %1\n\t"
+ " sub %0, %1, %0\n\t"
+ " brnz,pn %0, 1b\n\t"
+ " nop"
+ : "=&r" (__tmp1), "=&r" (__tmp2), "=m" (*__mem)
+ : "r" (__mem), "r" (__val_extended), "m" (*__mem));
+ }
+
#else /* __arch32__ */
-typedef int _Atomic_word;
-
-template<int __inst>
- struct __Atomicity_lock
+ template<int __inst>
+ struct _Atomicity_lock
+ {
+ static unsigned char _S_atomicity_lock;
+ };
+
+ template<int __inst>
+ unsigned char _Atomicity_lock<__inst>::_S_atomicity_lock = 0;
+
+ template unsigned char _Atomicity_lock<0>::_S_atomicity_lock;
+
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
{
- static unsigned char _S_atomicity_lock;
- };
-
-template<int __inst>
-unsigned char __Atomicity_lock<__inst>::_S_atomicity_lock = 0;
-
-template unsigned char __Atomicity_lock<0>::_S_atomicity_lock;
-
-static int
-__attribute__ ((__unused__))
-__exchange_and_add(volatile _Atomic_word* __mem, int __val)
-{
- _Atomic_word __result, __tmp;
-
- __asm__ __volatile__("1: ldstub [%1], %0\n\t"
- " cmp %0, 0\n\t"
- " bne 1b\n\t"
- " nop"
- : "=&r" (__tmp)
- : "r" (&__Atomicity_lock<0>::_S_atomicity_lock)
- : "memory");
- __result = *__mem;
- *__mem += __val;
- __asm__ __volatile__("stb %%g0, [%0]"
- : /* no outputs */
- : "r" (&__Atomicity_lock<0>::_S_atomicity_lock)
- : "memory");
- return __result;
-}
-
-static void
-__attribute__ ((__unused__))
-__atomic_add(volatile _Atomic_word* __mem, int __val)
-{
- _Atomic_word __tmp;
-
- __asm__ __volatile__("1: ldstub [%1], %0\n\t"
- " cmp %0, 0\n\t"
- " bne 1b\n\t"
- " nop"
- : "=&r" (__tmp)
- : "r" (&__Atomicity_lock<0>::_S_atomicity_lock)
- : "memory");
- *__mem += __val;
- __asm__ __volatile__("stb %%g0, [%0]"
- : /* no outputs */
- : "r" (&__Atomicity_lock<0>::_S_atomicity_lock)
- : "memory");
-}
-
+ _Atomic_word __result, __tmp;
+
+ __asm__ __volatile__("1: ldstub [%1], %0\n\t"
+ " cmp %0, 0\n\t"
+ " bne 1b\n\t"
+ " nop"
+ : "=&r" (__tmp)
+ : "r" (&_Atomicity_lock<0>::_S_atomicity_lock)
+ : "memory");
+ __result = *__mem;
+ *__mem += __val;
+ __asm__ __volatile__("stb %%g0, [%0]"
+ : /* no outputs */
+ : "r" (&_Atomicity_lock<0>::_S_atomicity_lock)
+ : "memory");
+ return __result;
+ }
+
+ void
+ __attribute__ ((__unused__))
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ {
+ _Atomic_word __tmp;
+
+ __asm__ __volatile__("1: ldstub [%1], %0\n\t"
+ " cmp %0, 0\n\t"
+ " bne 1b\n\t"
+ " nop"
+ : "=&r" (__tmp)
+ : "r" (&_Atomicity_lock<0>::_S_atomicity_lock)
+ : "memory");
+ *__mem += __val;
+ __asm__ __volatile__("stb %%g0, [%0]"
+ : /* no outputs */
+ : "r" (&_Atomicity_lock<0>::_S_atomicity_lock)
+ : "memory");
+ }
#endif /* __arch32__ */
-
-#endif /* atomicity.h */
+} // namespace __gnu_cxx
diff --git a/libstdc++-v3/config/io/basic_file_stdio.cc b/libstdc++-v3/config/io/basic_file_stdio.cc
index 7d014e448b4..53c1a26a472 100644
--- a/libstdc++-v3/config/io/basic_file_stdio.cc
+++ b/libstdc++-v3/config/io/basic_file_stdio.cc
@@ -1,6 +1,6 @@
// Wrapper of C-language FILE struct -*- C++ -*-
-// Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -70,62 +70,119 @@
#include <limits> // For <off_t>::max() and min()
-namespace std
+namespace __gnu_internal
{
- // Definitions for __basic_file<char>.
- __basic_file<char>::__basic_file(__c_lock* /*__lock*/)
- : _M_cfile(NULL), _M_cfile_created(false) { }
-
- __basic_file<char>::~__basic_file()
- { this->close(); }
-
- void
- __basic_file<char>::_M_open_mode(ios_base::openmode __mode, int& __p_mode,
- int&, char* __c_mode)
- {
- bool __testb = __mode & ios_base::binary;
- bool __testi = __mode & ios_base::in;
- bool __testo = __mode & ios_base::out;
- bool __testt = __mode & ios_base::trunc;
- bool __testa = __mode & ios_base::app;
-
- // Set __c_mode for use in fopen.
- // Set __p_mode for use in open.
- if (!__testi && __testo && !__testt && !__testa)
- {
- strcpy(__c_mode, "w");
- __p_mode = O_WRONLY | O_CREAT;
- }
- if (!__testi && __testo && !__testt && __testa)
+ // Map ios_base::openmode flags to a string for use in fopen().
+ // Table of valid combinations as given in [lib.filebuf.members]/2.
+ static const char*
+ fopen_mode(std::ios_base::openmode mode)
+ {
+ enum
{
- strcpy(__c_mode, "a");
- __p_mode = O_WRONLY | O_CREAT | O_APPEND;
- }
- if (!__testi && __testo && __testt && !__testa)
+ in = std::ios_base::in,
+ out = std::ios_base::out,
+ trunc = std::ios_base::trunc,
+ app = std::ios_base::app,
+ binary = std::ios_base::binary
+ };
+
+ switch (mode & (in|out|trunc|app|binary))
{
- strcpy(__c_mode, "w");
- __p_mode = O_WRONLY | O_CREAT | O_TRUNC;
+ case ( out ): return "w";
+ case ( out |app ): return "a";
+ case ( out|trunc ): return "w";
+ case (in ): return "r";
+ case (in|out ): return "r+";
+ case (in|out|trunc ): return "w+";
+
+ case ( out |binary): return "wb";
+ case ( out |app|binary): return "ab";
+ case ( out|trunc |binary): return "wb";
+ case (in |binary): return "rb";
+ case (in|out |binary): return "r+b";
+ case (in|out|trunc |binary): return "w+b";
+
+ default: return 0; // invalid
}
+ }
- if (__testi && !__testo && !__testt && !__testa)
- {
- strcpy(__c_mode, "r");
- __p_mode = O_RDONLY;
- }
- if (__testi && __testo && !__testt && !__testa)
+ // Wrapper handling partial write.
+ static std::streamsize
+ xwrite(int __fd, const char* __s, std::streamsize __n)
+ {
+ std::streamsize __nleft = __n;
+
+ for (;;)
{
- strcpy(__c_mode, "r+");
- __p_mode = O_RDWR | O_CREAT;
+ const std::streamsize __ret = write(__fd, __s, __nleft);
+ if (__ret == -1L && errno == EINTR)
+ continue;
+ if (__ret == -1L)
+ break;
+
+ __nleft -= __ret;
+ if (__nleft == 0)
+ break;
+
+ __s += __ret;
}
- if (__testi && __testo && __testt && !__testa)
+
+ return __n - __nleft;
+ }
+
+#ifdef _GLIBCXX_HAVE_WRITEV
+ // Wrapper handling partial writev.
+ static std::streamsize
+ xwritev(int __fd, const char* __s1, std::streamsize __n1,
+ const char* __s2, std::streamsize __n2)
+ {
+ std::streamsize __nleft = __n1 + __n2;
+ std::streamsize __n1_left = __n1;
+
+ struct iovec __iov[2];
+ __iov[1].iov_base = const_cast<char*>(__s2);
+ __iov[1].iov_len = __n2;
+
+ for (;;)
{
- strcpy(__c_mode, "w+");
- __p_mode = O_RDWR | O_CREAT | O_TRUNC;
+ __iov[0].iov_base = const_cast<char*>(__s1);
+ __iov[0].iov_len = __n1_left;
+
+ const std::streamsize __ret = writev(__fd, __iov, 2);
+ if (__ret == -1L && errno == EINTR)
+ continue;
+ if (__ret == -1L)
+ break;
+
+ __nleft -= __ret;
+ if (__nleft == 0)
+ break;
+
+ const std::streamsize __off = __ret - __n1_left;
+ if (__off >= 0)
+ {
+ __nleft -= xwrite(__fd, __s2 + __off, __n2 - __off);
+ break;
+ }
+
+ __s1 += __ret;
+ __n1_left -= __ret;
}
- if (__testb)
- strcat(__c_mode, "b");
+
+ return __n1 + __n2 - __nleft;
}
-
+#endif
+} // namespace __gnu_internal
+
+namespace std
+{
+ // Definitions for __basic_file<char>.
+ __basic_file<char>::__basic_file(__c_lock* /*__lock*/)
+ : _M_cfile(NULL), _M_cfile_created(false) { }
+
+ __basic_file<char>::~__basic_file()
+ { this->close(); }
+
__basic_file<char>*
__basic_file<char>::sys_open(__c_file* __file, ios_base::openmode)
{
@@ -144,12 +201,9 @@ namespace std
__basic_file<char>::sys_open(int __fd, ios_base::openmode __mode)
{
__basic_file* __ret = NULL;
- int __p_mode = 0;
- int __rw_mode = 0;
- char __c_mode[4];
-
- _M_open_mode(__mode, __p_mode, __rw_mode, __c_mode);
- if (!this->is_open() && (_M_cfile = fdopen(__fd, __c_mode)))
+ const char* __c_mode = __gnu_internal::fopen_mode(__mode);
+ if (__c_mode && !this->is_open()
+ && (_M_cfile = fdopen(__fd, __c_mode)))
{
_M_cfile_created = true;
if (__fd == 0)
@@ -164,13 +218,8 @@ namespace std
int /*__prot*/)
{
__basic_file* __ret = NULL;
- int __p_mode = 0;
- int __rw_mode = 0;
- char __c_mode[4];
-
- _M_open_mode(__mode, __p_mode, __rw_mode, __c_mode);
-
- if (!this->is_open())
+ const char* __c_mode = __gnu_internal::fopen_mode(__mode);
+ if (__c_mode && !this->is_open())
{
#ifdef _GLIBCXX_USE_LFS
if ((_M_cfile = fopen64(__name, __c_mode)))
@@ -218,16 +267,10 @@ namespace std
while (__ret == -1L && errno == EINTR);
return __ret;
}
-
+
streamsize
__basic_file<char>::xsputn(const char* __s, streamsize __n)
- {
- streamsize __ret;
- do
- __ret = write(this->fd(), __s, __n);
- while (__ret == -1L && errno == EINTR);
- return __ret;
- }
+ { return __gnu_internal::xwrite(this->fd(), __s, __n); }
streamsize
__basic_file<char>::xsputn_2(const char* __s1, streamsize __n1,
@@ -235,30 +278,13 @@ namespace std
{
streamsize __ret = 0;
#ifdef _GLIBCXX_HAVE_WRITEV
- struct iovec __iov[2];
- __iov[0].iov_base = const_cast<char*>(__s1);
- __iov[0].iov_len = __n1;
- __iov[1].iov_base = const_cast<char*>(__s2);
- __iov[1].iov_len = __n2;
-
- do
- __ret = writev(this->fd(), __iov, 2);
- while (__ret == -1L && errno == EINTR);
+ __ret = __gnu_internal::xwritev(this->fd(), __s1, __n1, __s2, __n2);
#else
if (__n1)
- do
- __ret = write(this->fd(), __s1, __n1);
- while (__ret == -1L && errno == EINTR);
+ __ret = __gnu_internal::xwrite(this->fd(), __s1, __n1);
if (__ret == __n1)
- {
- do
- __ret = write(this->fd(), __s2, __n2);
- while (__ret == -1L && errno == EINTR);
-
- if (__ret != -1L)
- __ret += __n1;
- }
+ __ret += __gnu_internal::xwrite(this->fd(), __s2, __n2);
#endif
return __ret;
}
@@ -285,7 +311,11 @@ namespace std
{
#ifdef FIONREAD
// Pipes and sockets.
+#ifdef _GLIBCXX_FIONREAD_TAKES_OFF_T
+ off_t __num = 0;
+#else
int __num = 0;
+#endif
int __r = ioctl(this->fd(), FIONREAD, &__num);
if (!__r && __num >= 0)
return __num;
@@ -309,5 +339,4 @@ namespace std
#endif
return 0;
}
-
} // namespace std
diff --git a/libstdc++-v3/config/io/basic_file_stdio.h b/libstdc++-v3/config/io/basic_file_stdio.h
index d6a06ead739..57ff4326e6b 100644
--- a/libstdc++-v3/config/io/basic_file_stdio.h
+++ b/libstdc++-v3/config/io/basic_file_stdio.h
@@ -1,6 +1,6 @@
// Wrapper of C-language FILE struct -*- C++ -*-
-// Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -62,11 +62,7 @@ namespace std
public:
__basic_file(__c_lock* __lock = 0);
-
- void
- _M_open_mode(ios_base::openmode __mode, int& __p_mode, int& __rw_mode,
- char* __c_mode);
-
+
__basic_file*
open(const char* __name, ios_base::openmode __mode, int __prot = 0664);
diff --git a/libstdc++-v3/config/linker-map.gnu b/libstdc++-v3/config/linker-map.gnu
index 2d46e884888..b9205db85a0 100644
--- a/libstdc++-v3/config/linker-map.gnu
+++ b/libstdc++-v3/config/linker-map.gnu
@@ -1,6 +1,6 @@
## Linker script for GNU ld 2.13.91+ only.
##
-## Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+## Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
##
## This file is part of the libstdc++ version 3 distribution.
##
@@ -55,6 +55,11 @@ GLIBCXX_3.4 {
std::locale::_S_normalize_category*;
std::locale::_[T-Za-z]*;
std::[A-Zm-z]*;
+ std::_List_node_base::hook*;
+ std::_List_node_base::swap*;
+ std::_List_node_base::unhook*;
+ std::_List_node_base::reverse*;
+ std::_List_node_base::transfer*;
std::__throw_*;
std::__basic_file*;
std::__timepunct*;
@@ -66,10 +71,14 @@ GLIBCXX_3.4 {
std::__moneypunct_cache*;
std::__numpunct_cache*;
std::__timepunct_cache*;
- __gnu_norm::*;
__gnu_debug::_Safe_iterator_base*;
__gnu_debug::_Safe_sequence_base*;
- __gnu_debug::_Error_formatter*
+ __gnu_debug::_Error_formatter*;
+ __gnu_norm::_List_node_base::hook*;
+ __gnu_norm::_List_node_base::swap*;
+ __gnu_norm::_List_node_base::unhook*;
+ __gnu_norm::_List_node_base::reverse*;
+ __gnu_norm::_List_node_base::transfer*
};
# Names not in an 'extern' block are mangled names.
@@ -150,6 +159,8 @@ GLIBCXX_3.4 {
_ZTISt10__num_base;
_ZTISt21__ctype_abstract_baseI[cw]E;
_ZTISt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
+ _ZTIN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
+ _ZTIN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
# typeinfo name
_ZTSNSt8ios_base7failureE;
@@ -161,6 +172,8 @@ GLIBCXX_3.4 {
_ZTSSt10__num_base;
_ZTSSt21__ctype_abstract_baseI[cw]E;
_ZTSSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
+ _ZTSN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
+ _ZTSN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
# function-scope static objects requires a guard variable.
_ZGVNSt*;
@@ -203,22 +216,17 @@ GLIBCXX_3.4 {
sqrtf;
sqrtl;
copysignf;
- nan;
__signbit;
__signbitf;
__signbitl;
- # __gnu_cxx::__pool_alloc
- _ZN9__gnu_cxx12__pool_allocILb1ELi0EE8allocateE[jm];
- _ZN9__gnu_cxx12__pool_allocILb1ELi0EE10deallocateEPv[jm];
-
# __gnu_cxx::stdio_sync_filebuf
_ZTVN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
- # Needed only when generic cpu's atomicity.h is in use.
- _ZN9__gnu_cxx17_Atomic_add_mutexE;
- _ZN9__gnu_cxx22_Atomic_add_mutex_onceE;
- _ZN9__gnu_cxx31__gthread_atomic_add_mutex_onceEv;
+ # __gnu_cxx::__atomic_add
+ # __gnu_cxx::__exchange_and_add
+ _ZN9__gnu_cxx12__atomic_add*;
+ _ZN9__gnu_cxx18__exchange_and_add*;
# DO NOT DELETE THIS LINE. Port-specific symbols, if any, will be here.
diff --git a/libstdc++-v3/config/locale/generic/c_locale.cc b/libstdc++-v3/config/locale/generic/c_locale.cc
index a214e00b516..730c3662ea6 100644
--- a/libstdc++-v3/config/locale/generic/c_locale.cc
+++ b/libstdc++-v3/config/locale/generic/c_locale.cc
@@ -152,8 +152,8 @@ namespace std
// See http://gcc.gnu.org/ml/libstdc++/2003-02/msg00345.html
__cloc = NULL;
if (strcmp(__s, "C"))
- __throw_runtime_error("locale::facet::_S_create_c_locale "
- "name not valid");
+ __throw_runtime_error(__N("locale::facet::_S_create_c_locale "
+ "name not valid"));
}
void
diff --git a/libstdc++-v3/config/locale/generic/c_locale.h b/libstdc++-v3/config/locale/generic/c_locale.h
index c20b98ba24d..9fadcc4d99c 100644
--- a/libstdc++-v3/config/locale/generic/c_locale.h
+++ b/libstdc++-v3/config/locale/generic/c_locale.h
@@ -1,6 +1,6 @@
// Wrapper for underlying C-language localization -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -39,7 +39,6 @@
#pragma GCC system_header
#include <clocale>
-#include <cstdlib> // get std::malloc
#include <cstring> // get std::strlen
#include <cstdio> // get std::snprintf or std::sprintf
@@ -61,9 +60,8 @@ namespace std
_Tv __v, const __c_locale&, int __prec = -1)
{
char* __old = std::setlocale(LC_ALL, NULL);
- char* __sav = static_cast<char*>(std::malloc(std::strlen(__old) + 1));
- if (__sav)
- std::strcpy(__sav, __old);
+ char* __sav = new char[std::strlen(__old) + 1];
+ std::strcpy(__sav, __old);
std::setlocale(LC_ALL, "C");
int __ret;
@@ -79,7 +77,7 @@ namespace std
__ret = std::sprintf(__out, __fmt, __v);
#endif
std::setlocale(LC_ALL, __sav);
- std::free(__sav);
+ delete [] __sav;
return __ret;
}
}
diff --git a/libstdc++-v3/config/locale/generic/monetary_members.cc b/libstdc++-v3/config/locale/generic/monetary_members.cc
index 51bbe0b0c01..957a326dbd4 100644
--- a/libstdc++-v3/config/locale/generic/monetary_members.cc
+++ b/libstdc++-v3/config/locale/generic/monetary_members.cc
@@ -1,6 +1,6 @@
// std::moneypunct implementation details, generic version -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -49,17 +49,24 @@ namespace std
{
// "C" locale.
if (!_M_data)
- _M_data = new __moneypunct_cache<char>;
+ _M_data = new __moneypunct_cache<char, true>;
_M_data->_M_decimal_point = '.';
_M_data->_M_thousands_sep = ',';
_M_data->_M_grouping = "";
+ _M_data->_M_grouping_size = 0;
_M_data->_M_curr_symbol = "";
+ _M_data->_M_curr_symbol_size = 0;
_M_data->_M_positive_sign = "";
+ _M_data->_M_positive_sign_size = 0;
_M_data->_M_negative_sign = "";
+ _M_data->_M_negative_sign_size = 0;
_M_data->_M_frac_digits = 0;
_M_data->_M_pos_format = money_base::_S_default_pattern;
_M_data->_M_neg_format = money_base::_S_default_pattern;
+
+ for (size_t __i = 0; __i < money_base::_S_end; ++__i)
+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i];
}
template<>
@@ -68,17 +75,24 @@ namespace std
{
// "C" locale.
if (!_M_data)
- _M_data = new __moneypunct_cache<char>;
+ _M_data = new __moneypunct_cache<char, false>;
_M_data->_M_decimal_point = '.';
_M_data->_M_thousands_sep = ',';
_M_data->_M_grouping = "";
+ _M_data->_M_grouping_size = 0;
_M_data->_M_curr_symbol = "";
+ _M_data->_M_curr_symbol_size = 0;
_M_data->_M_positive_sign = "";
+ _M_data->_M_positive_sign_size = 0;
_M_data->_M_negative_sign = "";
+ _M_data->_M_negative_sign_size = 0;
_M_data->_M_frac_digits = 0;
_M_data->_M_pos_format = money_base::_S_default_pattern;
_M_data->_M_neg_format = money_base::_S_default_pattern;
+
+ for (size_t __i = 0; __i < money_base::_S_end; ++__i)
+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i];
}
template<>
@@ -97,17 +111,28 @@ namespace std
{
// "C" locale
if (!_M_data)
- _M_data = new __moneypunct_cache<wchar_t>;
+ _M_data = new __moneypunct_cache<wchar_t, true>;
_M_data->_M_decimal_point = L'.';
_M_data->_M_thousands_sep = L',';
_M_data->_M_grouping = "";
+ _M_data->_M_grouping_size = 0;
_M_data->_M_curr_symbol = L"";
+ _M_data->_M_curr_symbol_size = 0;
_M_data->_M_positive_sign = L"";
+ _M_data->_M_positive_sign_size = 0;
_M_data->_M_negative_sign = L"";
+ _M_data->_M_negative_sign_size = 0;
_M_data->_M_frac_digits = 0;
_M_data->_M_pos_format = money_base::_S_default_pattern;
_M_data->_M_neg_format = money_base::_S_default_pattern;
+
+ unsigned char uc;
+ for (size_t __i = 0; __i < money_base::_S_end; ++__i)
+ {
+ uc = static_cast<unsigned char>(money_base::_S_atoms[__i]);
+ _M_data->_M_atoms[__i] = btowc(uc);
+ }
}
template<>
@@ -117,17 +142,28 @@ namespace std
{
// "C" locale
if (!_M_data)
- _M_data = new __moneypunct_cache<wchar_t>;
+ _M_data = new __moneypunct_cache<wchar_t, false>;
_M_data->_M_decimal_point = L'.';
_M_data->_M_thousands_sep = L',';
_M_data->_M_grouping = "";
+ _M_data->_M_grouping_size = 0;
_M_data->_M_curr_symbol = L"";
+ _M_data->_M_curr_symbol_size = 0;
_M_data->_M_positive_sign = L"";
+ _M_data->_M_positive_sign_size = 0;
_M_data->_M_negative_sign = L"";
+ _M_data->_M_negative_sign_size = 0;
_M_data->_M_frac_digits = 0;
_M_data->_M_pos_format = money_base::_S_default_pattern;
_M_data->_M_neg_format = money_base::_S_default_pattern;
+
+ unsigned char uc;
+ for (size_t __i = 0; __i < money_base::_S_end; ++__i)
+ {
+ uc = static_cast<unsigned char>(money_base::_S_atoms[__i]);
+ _M_data->_M_atoms[__i] = btowc(uc);
+ }
}
template<>
diff --git a/libstdc++-v3/config/locale/generic/numeric_members.cc b/libstdc++-v3/config/locale/generic/numeric_members.cc
index 06458659715..e2afed9c193 100644
--- a/libstdc++-v3/config/locale/generic/numeric_members.cc
+++ b/libstdc++-v3/config/locale/generic/numeric_members.cc
@@ -46,6 +46,7 @@ namespace std
_M_data = new __numpunct_cache<char>;
_M_data->_M_grouping = "";
+ _M_data->_M_grouping_size = 0;
_M_data->_M_use_grouping = false;
_M_data->_M_decimal_point = '.';
@@ -57,8 +58,6 @@ namespace std
for (size_t __i = 0; __i < __num_base::_S_iend; ++__i)
_M_data->_M_atoms_in[__i] = __num_base::_S_atoms_in[__i];
- _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
-
_M_data->_M_truename = "true";
_M_data->_M_truename_size = strlen(_M_data->_M_truename);
_M_data->_M_falsename = "false";
@@ -79,6 +78,7 @@ namespace std
_M_data = new __numpunct_cache<wchar_t>;
_M_data->_M_grouping = "";
+ _M_data->_M_grouping_size = 0;
_M_data->_M_use_grouping = false;
_M_data->_M_decimal_point = L'.';
@@ -98,8 +98,6 @@ namespace std
_M_data->_M_atoms_in[__i] = btowc(uc);
}
- _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
-
_M_data->_M_truename = L"true";
_M_data->_M_truename_size = wcslen(_M_data->_M_truename);
_M_data->_M_falsename = L"false";
diff --git a/libstdc++-v3/config/locale/gnu/c++locale_internal.h b/libstdc++-v3/config/locale/gnu/c++locale_internal.h
index cfb89b5dd70..8aa5b569594 100644
--- a/libstdc++-v3/config/locale/gnu/c++locale_internal.h
+++ b/libstdc++-v3/config/locale/gnu/c++locale_internal.h
@@ -1,6 +1,6 @@
// Prototypes for GLIBC thread locale __-prefixed functions -*- C++ -*-
-// Copyright (C) 2002 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -40,10 +40,6 @@ extern "C" __typeof(strftime_l) __strftime_l;
extern "C" __typeof(strtod_l) __strtod_l;
extern "C" __typeof(strtof_l) __strtof_l;
extern "C" __typeof(strtold_l) __strtold_l;
-extern "C" __typeof(strtol_l) __strtol_l;
-extern "C" __typeof(strtoll_l) __strtoll_l;
-extern "C" __typeof(strtoul_l) __strtoul_l;
-extern "C" __typeof(strtoull_l) __strtoull_l;
extern "C" __typeof(strxfrm_l) __strxfrm_l;
extern "C" __typeof(towlower_l) __towlower_l;
extern "C" __typeof(towupper_l) __towupper_l;
diff --git a/libstdc++-v3/config/locale/gnu/c_locale.cc b/libstdc++-v3/config/locale/gnu/c_locale.cc
index b808f70e5f9..bf975b98bac 100644
--- a/libstdc++-v3/config/locale/gnu/c_locale.cc
+++ b/libstdc++-v3/config/locale/gnu/c_locale.cc
@@ -100,8 +100,8 @@ namespace std
if (!__cloc)
{
// This named locale is not supported by the underlying OS.
- __throw_runtime_error("locale::facet::_S_create_c_locale "
- "name not valid");
+ __throw_runtime_error(__N("locale::facet::_S_create_c_locale "
+ "name not valid"));
}
}
diff --git a/libstdc++-v3/config/locale/gnu/c_locale.h b/libstdc++-v3/config/locale/gnu/c_locale.h
index 069074eb9fe..fe899cfc2a5 100644
--- a/libstdc++-v3/config/locale/gnu/c_locale.h
+++ b/libstdc++-v3/config/locale/gnu/c_locale.h
@@ -1,6 +1,6 @@
// Wrapper for underlying C-language localization -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -39,7 +39,6 @@
#pragma GCC system_header
#include <cstring> // get std::strlen
-#include <cstdlib> // get std::malloc
#include <cstdio> // get std::snprintf or std::sprintf
#include <clocale>
#include <langinfo.h> // For codecvt
@@ -76,9 +75,8 @@ namespace std
_Tv __v, const __c_locale&, int __prec = -1)
{
char* __old = std::setlocale(LC_ALL, NULL);
- char* __sav = static_cast<char*>(std::malloc(std::strlen(__old) + 1));
- if (__sav)
- std::strcpy(__sav, __old);
+ char* __sav = new char[std::strlen(__old) + 1];
+ std::strcpy(__sav, __old);
std::setlocale(LC_ALL, "C");
#endif
@@ -99,7 +97,7 @@ namespace std
__gnu_cxx::__uselocale(__old);
#else
std::setlocale(LC_ALL, __sav);
- std::free(__sav);
+ delete [] __sav;
#endif
return __ret;
}
diff --git a/libstdc++-v3/config/locale/gnu/monetary_members.cc b/libstdc++-v3/config/locale/gnu/monetary_members.cc
index 580297b6325..63bcdd82136 100644
--- a/libstdc++-v3/config/locale/gnu/monetary_members.cc
+++ b/libstdc++-v3/config/locale/gnu/monetary_members.cc
@@ -1,6 +1,6 @@
// std::moneypunct implementation details, GNU version -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -210,7 +210,7 @@ namespace std
const char*)
{
if (!_M_data)
- _M_data = new __moneypunct_cache<char>;
+ _M_data = new __moneypunct_cache<char, true>;
if (!__cloc)
{
@@ -218,12 +218,19 @@ namespace std
_M_data->_M_decimal_point = '.';
_M_data->_M_thousands_sep = ',';
_M_data->_M_grouping = "";
+ _M_data->_M_grouping_size = 0;
_M_data->_M_curr_symbol = "";
+ _M_data->_M_curr_symbol_size = 0;
_M_data->_M_positive_sign = "";
+ _M_data->_M_positive_sign_size = 0;
_M_data->_M_negative_sign = "";
+ _M_data->_M_negative_sign_size = 0;
_M_data->_M_frac_digits = 0;
_M_data->_M_pos_format = money_base::_S_default_pattern;
_M_data->_M_neg_format = money_base::_S_default_pattern;
+
+ for (size_t __i = 0; __i < money_base::_S_end; ++__i)
+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i];
}
else
{
@@ -233,7 +240,9 @@ namespace std
_M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP,
__cloc));
_M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc);
+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
_M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc);
+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign);
char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc));
if (!__nposn)
@@ -241,9 +250,11 @@ namespace std
else
_M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN,
__cloc);
+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign);
// _Intl == true
_M_data->_M_curr_symbol = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc);
+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol);
_M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS,
__cloc));
char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc));
@@ -264,7 +275,7 @@ namespace std
const char*)
{
if (!_M_data)
- _M_data = new __moneypunct_cache<char>;
+ _M_data = new __moneypunct_cache<char, false>;
if (!__cloc)
{
@@ -272,12 +283,19 @@ namespace std
_M_data->_M_decimal_point = '.';
_M_data->_M_thousands_sep = ',';
_M_data->_M_grouping = "";
+ _M_data->_M_grouping_size = 0;
_M_data->_M_curr_symbol = "";
+ _M_data->_M_curr_symbol_size = 0;
_M_data->_M_positive_sign = "";
+ _M_data->_M_positive_sign_size = 0;
_M_data->_M_negative_sign = "";
+ _M_data->_M_negative_sign_size = 0;
_M_data->_M_frac_digits = 0;
_M_data->_M_pos_format = money_base::_S_default_pattern;
_M_data->_M_neg_format = money_base::_S_default_pattern;
+
+ for (size_t __i = 0; __i < money_base::_S_end; ++__i)
+ _M_data->_M_atoms[__i] = money_base::_S_atoms[__i];
}
else
{
@@ -287,17 +305,21 @@ namespace std
_M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP,
__cloc));
_M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc);
+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
_M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc);
+ _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign);
char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc));
if (!__nposn)
_M_data->_M_negative_sign = "()";
else
- _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN,
+ _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN,
__cloc);
+ _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign);
// _Intl == false
_M_data->_M_curr_symbol = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc);
+ _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol);
_M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc));
char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc));
char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc));
@@ -330,7 +352,7 @@ namespace std
#endif
{
if (!_M_data)
- _M_data = new __moneypunct_cache<wchar_t>;
+ _M_data = new __moneypunct_cache<wchar_t, true>;
if (!__cloc)
{
@@ -338,12 +360,24 @@ namespace std
_M_data->_M_decimal_point = L'.';
_M_data->_M_thousands_sep = L',';
_M_data->_M_grouping = "";
+ _M_data->_M_grouping_size = 0;
_M_data->_M_curr_symbol = L"";
+ _M_data->_M_curr_symbol_size = 0;
_M_data->_M_positive_sign = L"";
+ _M_data->_M_positive_sign_size = 0;
_M_data->_M_negative_sign = L"";
+ _M_data->_M_negative_sign_size = 0;
_M_data->_M_frac_digits = 0;
_M_data->_M_pos_format = money_base::_S_default_pattern;
_M_data->_M_neg_format = money_base::_S_default_pattern;
+
+ // Use ctype::widen code without the facet...
+ unsigned char uc;
+ for (size_t __i = 0; __i < money_base::_S_end; ++__i)
+ {
+ uc = static_cast<unsigned char>(money_base::_S_atoms[__i]);
+ _M_data->_M_atoms[__i] = btowc(uc);
+ }
}
else
{
@@ -363,6 +397,7 @@ namespace std
__u.__s = __nl_langinfo_l(_NL_NUMERIC_THOUSANDS_SEP_WC, __cloc);
_M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w);
_M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc);
+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc);
const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc);
@@ -385,6 +420,7 @@ namespace std
}
else
_M_data->_M_positive_sign = L"";
+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign);
__len = strlen(__cnegsign);
if (!__nposn)
@@ -399,6 +435,7 @@ namespace std
}
else
_M_data->_M_negative_sign = L"";
+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign);
// _Intl == true.
__len = strlen(__ccurr);
@@ -412,6 +449,7 @@ namespace std
}
else
_M_data->_M_curr_symbol = L"";
+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol);
}
catch (...)
{
@@ -419,6 +457,12 @@ namespace std
_M_data = 0;
delete __wcs_ps;
delete __wcs_ns;
+#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
+ __uselocale(__old);
+#else
+ setlocale(LC_ALL, __old);
+ free(__old);
+#endif
__throw_exception_again;
}
@@ -453,7 +497,7 @@ namespace std
#endif
{
if (!_M_data)
- _M_data = new __moneypunct_cache<wchar_t>;
+ _M_data = new __moneypunct_cache<wchar_t, false>;
if (!__cloc)
{
@@ -461,12 +505,24 @@ namespace std
_M_data->_M_decimal_point = L'.';
_M_data->_M_thousands_sep = L',';
_M_data->_M_grouping = "";
+ _M_data->_M_grouping_size = 0;
_M_data->_M_curr_symbol = L"";
+ _M_data->_M_curr_symbol_size = 0;
_M_data->_M_positive_sign = L"";
+ _M_data->_M_positive_sign_size = 0;
_M_data->_M_negative_sign = L"";
+ _M_data->_M_negative_sign_size = 0;
_M_data->_M_frac_digits = 0;
_M_data->_M_pos_format = money_base::_S_default_pattern;
_M_data->_M_neg_format = money_base::_S_default_pattern;
+
+ // Use ctype::widen code without the facet...
+ unsigned char uc;
+ for (size_t __i = 0; __i < money_base::_S_end; ++__i)
+ {
+ uc = static_cast<unsigned char>(money_base::_S_atoms[__i]);
+ _M_data->_M_atoms[__i] = btowc(uc);
+ }
}
else
{
@@ -486,6 +542,7 @@ namespace std
__u.__s = __nl_langinfo_l(_NL_NUMERIC_THOUSANDS_SEP_WC, __cloc);
_M_data->_M_thousands_sep = static_cast<wchar_t>(__u.__w);
_M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc);
+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc);
const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc);
@@ -509,6 +566,7 @@ namespace std
}
else
_M_data->_M_positive_sign = L"";
+ _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign);
__len = strlen(__cnegsign);
if (!__nposn)
@@ -523,7 +581,8 @@ namespace std
}
else
_M_data->_M_negative_sign = L"";
-
+ _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign);
+
// _Intl == true.
__len = strlen(__ccurr);
if (__len)
@@ -536,6 +595,7 @@ namespace std
}
else
_M_data->_M_curr_symbol = L"";
+ _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol);
}
catch (...)
{
@@ -543,6 +603,12 @@ namespace std
_M_data = 0;
delete __wcs_ps;
delete __wcs_ns;
+#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
+ __uselocale(__old);
+#else
+ setlocale(LC_ALL, __old);
+ free(__old);
+#endif
__throw_exception_again;
}
@@ -569,12 +635,12 @@ namespace std
template<>
moneypunct<wchar_t, true>::~moneypunct()
{
- if (wcslen(_M_data->_M_positive_sign))
+ if (_M_data->_M_positive_sign_size)
delete [] _M_data->_M_positive_sign;
- if (wcslen(_M_data->_M_negative_sign)
- && (wcscmp(_M_data->_M_negative_sign, L"()") != 0))
+ if (_M_data->_M_negative_sign_size
+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0)
delete [] _M_data->_M_negative_sign;
- if (wcslen(_M_data->_M_curr_symbol))
+ if (_M_data->_M_curr_symbol_size)
delete [] _M_data->_M_curr_symbol;
delete _M_data;
}
@@ -582,12 +648,12 @@ namespace std
template<>
moneypunct<wchar_t, false>::~moneypunct()
{
- if (wcslen(_M_data->_M_positive_sign))
+ if (_M_data->_M_positive_sign_size)
delete [] _M_data->_M_positive_sign;
- if (wcslen(_M_data->_M_negative_sign)
- && (wcscmp(_M_data->_M_negative_sign, L"()") != 0))
+ if (_M_data->_M_negative_sign_size
+ && wcscmp(_M_data->_M_negative_sign, L"()") != 0)
delete [] _M_data->_M_negative_sign;
- if (wcslen(_M_data->_M_curr_symbol))
+ if (_M_data->_M_curr_symbol_size)
delete [] _M_data->_M_curr_symbol;
delete _M_data;
}
diff --git a/libstdc++-v3/config/locale/gnu/numeric_members.cc b/libstdc++-v3/config/locale/gnu/numeric_members.cc
index debee10cca5..e2bb089082b 100644
--- a/libstdc++-v3/config/locale/gnu/numeric_members.cc
+++ b/libstdc++-v3/config/locale/gnu/numeric_members.cc
@@ -49,6 +49,7 @@ namespace std
{
// "C" locale
_M_data->_M_grouping = "";
+ _M_data->_M_grouping_size = 0;
_M_data->_M_use_grouping = false;
_M_data->_M_decimal_point = '.';
@@ -71,8 +72,8 @@ namespace std
_M_data->_M_grouping = "";
else
_M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc);
+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
}
- _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
// NB: There is no way to extact this info from posix locales.
// _M_truename = __nl_langinfo_l(YESSTR, __cloc);
@@ -99,6 +100,7 @@ namespace std
{
// "C" locale
_M_data->_M_grouping = "";
+ _M_data->_M_grouping_size = 0;
_M_data->_M_use_grouping = false;
_M_data->_M_decimal_point = L'.';
@@ -138,8 +140,8 @@ namespace std
_M_data->_M_grouping = "";
else
_M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc);
+ _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
}
- _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
// NB: There is no way to extact this info from posix locales.
// _M_truename = __nl_langinfo_l(YESSTR, __cloc);
diff --git a/libstdc++-v3/config/locale/ieee_1003.1-2001/codecvt_specializations.h b/libstdc++-v3/config/locale/ieee_1003.1-2001/codecvt_specializations.h
index 93d0e5acc35..ef0923deb49 100644
--- a/libstdc++-v3/config/locale/ieee_1003.1-2001/codecvt_specializations.h
+++ b/libstdc++-v3/config/locale/ieee_1003.1-2001/codecvt_specializations.h
@@ -1,6 +1,6 @@
// Locale support (codecvt) -*- C++ -*-
-// Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -85,6 +85,7 @@
{
strncpy(_M_int_enc, __int, _S_max_size);
strncpy(_M_ext_enc, __ext, _S_max_size);
+ _M_init();
}
// 21.1.2 traits typedefs
@@ -92,12 +93,17 @@
// typedef STATE_T state_type
// requires: state_type shall meet the requirements of
// CopyConstructible types (20.1.3)
+ // NB: This does not preseve the actual state of the conversion
+ // descriptor member, but it does duplicate the encoding
+ // information.
__enc_traits(const __enc_traits& __obj): _M_in_desc(0), _M_out_desc(0)
{
strncpy(_M_int_enc, __obj._M_int_enc, _S_max_size);
strncpy(_M_ext_enc, __obj._M_ext_enc, _S_max_size);
_M_ext_bom = __obj._M_ext_bom;
_M_int_bom = __obj._M_int_bom;
+ _M_destroy();
+ _M_init();
}
// Need assignment operator as well.
@@ -106,21 +112,15 @@
{
strncpy(_M_int_enc, __obj._M_int_enc, _S_max_size);
strncpy(_M_ext_enc, __obj._M_ext_enc, _S_max_size);
- _M_in_desc = 0;
- _M_out_desc = 0;
_M_ext_bom = __obj._M_ext_bom;
_M_int_bom = __obj._M_int_bom;
+ _M_destroy();
+ _M_init();
return *this;
}
~__enc_traits()
- {
- __desc_type __err = reinterpret_cast<iconv_t>(-1);
- if (_M_in_desc && _M_in_desc != __err)
- iconv_close(_M_in_desc);
- if (_M_out_desc && _M_out_desc != __err)
- iconv_close(_M_out_desc);
- }
+ { _M_destroy(); }
void
_M_init()
@@ -130,15 +130,31 @@
{
_M_in_desc = iconv_open(_M_int_enc, _M_ext_enc);
if (_M_in_desc == __err)
- __throw_runtime_error("__enc_traits::_M_init "
- "creating iconv input descriptor failed");
+ __throw_runtime_error(__N("__enc_traits::_M_init "
+ "creating iconv input descriptor failed"));
}
if (!_M_out_desc)
{
_M_out_desc = iconv_open(_M_ext_enc, _M_int_enc);
if (_M_out_desc == __err)
- __throw_runtime_error("__enc_traits::_M_init "
- "creating iconv output descriptor failed");
+ __throw_runtime_error(__N("__enc_traits::_M_init "
+ "creating iconv output descriptor failed"));
+ }
+ }
+
+ void
+ _M_destroy()
+ {
+ const __desc_type __err = reinterpret_cast<iconv_t>(-1);
+ if (_M_in_desc && _M_in_desc != __err)
+ {
+ iconv_close(_M_in_desc);
+ _M_in_desc = 0;
+ }
+ if (_M_out_desc && _M_out_desc != __err)
+ {
+ iconv_close(_M_out_desc);
+ _M_out_desc = 0;
}
}
@@ -173,7 +189,7 @@
const char*
_M_get_external_enc()
- { return _M_ext_enc; }
+ { return _M_ext_enc; }
};
// Partial specialization
diff --git a/libstdc++-v3/config/os/aix/atomicity.h b/libstdc++-v3/config/os/aix/atomicity.h
index af4fa5a808c..dad8aae0932 100644
--- a/libstdc++-v3/config/os/aix/atomicity.h
+++ b/libstdc++-v3/config/os/aix/atomicity.h
@@ -1,6 +1,6 @@
// Low-level functions for atomic operations: AIX version -*- C++ -*-
-// Copyright (C) 2000, 2001 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -27,33 +27,35 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
-#ifndef _BITS_ATOMICITY_H
-#define _BITS_ATOMICITY_H 1
+#include <bits/atomicity.h>
/* We cannot use the cpu/powerpc/bits/atomicity.h inline assembly
definitions for these operations since they depend on operations
that are not available on the original POWER architecture. AIX
still runs on the POWER architecture, so it would be incorrect to
- assume the existence of these instructions. */
+ assume the existence of these instructions.
-/* This should match the type pointed to by atomic_p in
- <sys/atomic_op.h>. */
-typedef int _Atomic_word;
+ The definition of _Atomic_word must match the type pointed to by
+ atomic_p in <sys/atomic_op.h>. */
-#include <sys/atomic_op.h>
-
-static inline int
-__attribute__ ((__unused__))
-__exchange_and_add (atomic_p __mem, int __val)
+extern "C"
{
- return fetch_and_add (__mem, __val);
+#include <sys/atomic_op.h>
}
-static inline void
-__attribute__ ((__unused__))
-__atomic_add (atomic_p __mem, int __val)
+namespace __gnu_cxx
{
- (void) fetch_and_add (__mem, __val);
-}
-
-#endif /* atomicity.h */
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add (volatile _Atomic_word* __mem, int __val)
+ {
+ return ::fetch_and_add (const_cast<atomic_p>(__mem), __val);
+ }
+
+ void
+ __attribute__ ((__unused__))
+ __atomic_add (volatile _Atomic_word* __mem, int __val)
+ {
+ (void) ::fetch_and_add (const_cast<atomic_p>(__mem), __val);
+ }
+} // namespace __gnu_cxx
diff --git a/libstdc++-v3/config/os/hpux/os_defines.h b/libstdc++-v3/config/os/hpux/os_defines.h
index b83516dd260..6cba7390f38 100644
--- a/libstdc++-v3/config/os/hpux/os_defines.h
+++ b/libstdc++-v3/config/os/hpux/os_defines.h
@@ -1,6 +1,6 @@
// Specific definitions for HPUX -*- C++ -*-
-// Copyright (C) 2000, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -91,12 +91,6 @@ typedef long int __padding_type;
#define _LIBUNWIND_STD_ABI 1
#endif
-/* We need explicit instantiation of the atomicity lock on HPPA if
- there is no weak support. */
-#if !defined(_GLIBCXX_SUPPORTS_WEAK) && defined (__hppa__)
-#define _GLIBCXX_INST_ATOMICITY_LOCK 1
-#endif
-
/* Don't use pragma weak in gthread headers. HP-UX rejects programs
with unsatisfied external references even if all of those references
are weak; gthread relies on such unsatisfied references being resolved
diff --git a/libstdc++-v3/config/os/irix/atomic_word.h b/libstdc++-v3/config/os/irix/atomic_word.h
new file mode 100644
index 00000000000..68b8101c737
--- /dev/null
+++ b/libstdc++-v3/config/os/irix/atomic_word.h
@@ -0,0 +1,35 @@
+// Low-level type for atomic operations -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#ifndef _GLIBCXX_ATOMIC_WORD_H
+#define _GLIBCXX_ATOMIC_WORD_H 1
+
+typedef long _Atomic_word;
+
+#endif
diff --git a/libstdc++-v3/config/os/irix/atomicity.h b/libstdc++-v3/config/os/irix/atomicity.h
new file mode 100644
index 00000000000..83e9e029338
--- /dev/null
+++ b/libstdc++-v3/config/os/irix/atomicity.h
@@ -0,0 +1,42 @@
+// Low-level functions for atomic operations: IRIX version -*- C++ -*-
+
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#include <mutex.h>
+#include <bits/atomicity.h>
+
+namespace __gnu_cxx
+{
+ _Atomic_word
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ { return (_Atomic_word) test_then_add((unsigned long*) const_cast<_Atomic_word*>(__mem), __val); }
+
+ void
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
+ { __exchange_and_add(__mem, __val); }
+} // namespace __gnu_cxx
diff --git a/libstdc++-v3/config/os/irix/irix6.5/os_defines.h b/libstdc++-v3/config/os/irix/irix6.5/os_defines.h
index 41ce7edbc5d..6b0174b522d 100644
--- a/libstdc++-v3/config/os/irix/irix6.5/os_defines.h
+++ b/libstdc++-v3/config/os/irix/irix6.5/os_defines.h
@@ -51,5 +51,8 @@
// GCC does not use thunks on IRIX.
#define _G_USING_THUNKS 0
+// FINOREAD takes an "off_t *" as argument.
+#define _GLIBCXX_FIONREAD_TAKES_OFF_T
+
#endif
diff --git a/libstdc++-v3/config/os/tpf/ctype_base.h b/libstdc++-v3/config/os/tpf/ctype_base.h
new file mode 100644
index 00000000000..0461f3a6f72
--- /dev/null
+++ b/libstdc++-v3/config/os/tpf/ctype_base.h
@@ -0,0 +1,55 @@
+// Locale support -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+//
+// ISO C++ 14882: 22.1 Locales
+//
+
+// Information as gleaned from /usr/include/ctype.h
+
+ struct ctype_base
+ {
+ // Non-standard typedefs.
+ typedef const int* __to_type;
+
+ // NB: Offsets into ctype<char>::_M_table force a particular size
+ // on the mask type. Because of this, we don't use an enum.
+ typedef unsigned short mask;
+ static const mask upper = _ISupper;
+ static const mask lower = _ISlower;
+ static const mask alpha = _ISalpha;
+ static const mask digit = _ISdigit;
+ static const mask xdigit = _ISxdigit;
+ static const mask space = _ISspace;
+ static const mask print = _ISprint;
+ static const mask graph = _ISalpha | _ISdigit | _ISpunct;
+ static const mask cntrl = _IScntrl;
+ static const mask punct = _ISpunct;
+ static const mask alnum = _ISalpha | _ISdigit;
+ };
diff --git a/libstdc++-v3/config/os/tpf/ctype_inline.h b/libstdc++-v3/config/os/tpf/ctype_inline.h
new file mode 100644
index 00000000000..3f2f32d1607
--- /dev/null
+++ b/libstdc++-v3/config/os/tpf/ctype_inline.h
@@ -0,0 +1,69 @@
+// Locale support -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+//
+// ISO C++ 14882: 22.1 Locales
+//
+
+// ctype bits to be inlined go here. Non-inlinable (ie virtual do_*)
+// functions go in ctype.cc
+
+ bool
+ ctype<char>::
+ is(mask __m, char __c) const
+ { return _M_table[static_cast<unsigned char>(__c)] & __m; }
+
+ const char*
+ ctype<char>::
+ is(const char* __low, const char* __high, mask* __vec) const
+ {
+ while (__low < __high)
+ *__vec++ = _M_table[static_cast<unsigned char>(*__low++)];
+ return __high;
+ }
+
+ const char*
+ ctype<char>::
+ scan_is(mask __m, const char* __low, const char* __high) const
+ {
+ while (__low < __high
+ && !(_M_table[static_cast<unsigned char>(*__low)] & __m))
+ ++__low;
+ return __low;
+ }
+
+ const char*
+ ctype<char>::
+ scan_not(mask __m, const char* __low, const char* __high) const
+ {
+ while (__low < __high
+ && (_M_table[static_cast<unsigned char>(*__low)] & __m) != 0)
+ ++__low;
+ return __low;
+ }
diff --git a/libstdc++-v3/config/os/tpf/ctype_noninline.h b/libstdc++-v3/config/os/tpf/ctype_noninline.h
new file mode 100644
index 00000000000..3735b56122b
--- /dev/null
+++ b/libstdc++-v3/config/os/tpf/ctype_noninline.h
@@ -0,0 +1,103 @@
+// Locale support -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+//
+// ISO C++ 14882: 22.1 Locales
+//
+
+// Information as gleaned from /usr/include/ctype.h
+
+ const ctype_base::mask*
+ ctype<char>::classic_table() throw()
+ {
+ const ctype_base::mask* __ret;
+ char* __old = strdup(setlocale(LC_CTYPE, NULL));
+ setlocale(LC_CTYPE, "C");
+ __ret = *__ctype_b_loc();
+ setlocale(LC_CTYPE, __old);
+ free(__old);
+ return __ret;
+ }
+
+ ctype<char>::ctype(__c_locale, const mask* __table, bool __del,
+ size_t __refs)
+ : facet(__refs), _M_del(__table != 0 && __del)
+ {
+ char* __old=strdup(setlocale(LC_CTYPE, NULL));
+ setlocale(LC_CTYPE, "C");
+ _M_toupper = *__ctype_toupper_loc();
+ _M_tolower = *__ctype_tolower_loc();
+ _M_table = __table ? __table : *__ctype_b_loc();
+ setlocale(LC_CTYPE, __old);
+ free(__old);
+ _M_c_locale_ctype = _S_get_c_locale();
+ }
+
+ ctype<char>::ctype(const mask* __table, bool __del, size_t __refs)
+ : facet(__refs), _M_del(__table != 0 && __del)
+ {
+ char* __old=strdup(setlocale(LC_CTYPE, NULL));
+ setlocale(LC_CTYPE, "C");
+ _M_toupper = *__ctype_toupper_loc();
+ _M_tolower = *__ctype_tolower_loc();
+ _M_table = __table ? __table : *__ctype_b_loc();
+ setlocale(LC_CTYPE, __old);
+ free(__old);
+ _M_c_locale_ctype = _S_get_c_locale();
+ }
+
+ char
+ ctype<char>::do_toupper(char __c) const
+ { return _M_toupper[static_cast<unsigned char>(__c)]; }
+
+ const char*
+ ctype<char>::do_toupper(char* __low, const char* __high) const
+ {
+ while (__low < __high)
+ {
+ *__low = _M_toupper[static_cast<unsigned char>(*__low)];
+ ++__low;
+ }
+ return __high;
+ }
+
+ char
+ ctype<char>::do_tolower(char __c) const
+ { return _M_tolower[static_cast<unsigned char>(__c)]; }
+
+ const char*
+ ctype<char>::do_tolower(char* __low, const char* __high) const
+ {
+ while (__low < __high)
+ {
+ *__low = _M_tolower[static_cast<unsigned char>(*__low)];
+ ++__low;
+ }
+ return __high;
+ }
diff --git a/libstdc++-v3/config/os/tpf/os_defines.h b/libstdc++-v3/config/os/tpf/os_defines.h
new file mode 100644
index 00000000000..40ee13aebd5
--- /dev/null
+++ b/libstdc++-v3/config/os/tpf/os_defines.h
@@ -0,0 +1,45 @@
+// Specific definitions for TPF -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#ifndef _GLIBCXX_OS_DEFINES
+#define _GLIBCXX_OS_DEFINES 1
+
+// System-specific #define, typedefs, corrections, etc, go here. This
+// file will come before all others.
+
+// TPF is a big endian OS, let it be known here.
+#define _BIG_ENDIAN 1
+
+// This keeps isanum, et al from being propagated as macros.
+#define __NO_CTYPE 1
+
+// We must not see the optimized string functions GNU libc defines.
+#define __NO_STRING_INLINES
+
+#endif
diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
index dde36f5e4a0..5c9d2d1fc75 100755
--- a/libstdc++-v3/configure
+++ b/libstdc++-v3/configure
@@ -308,7 +308,7 @@ ac_includes_default="\
# include <unistd.h>
#endif"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS libtool_VERSION multi_basedir build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE am__leading_dot glibcxx_builddir glibcxx_srcdir toplevel_srcdir CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LN_S AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBTOOL CXXCPP CPPFLAGS enable_shared enable_static GLIBCXX_HOSTED_TRUE GLIBCXX_HOSTED_FALSE GLIBCXX_BUILD_PCH_TRUE GLIBCXX_BUILD_PCH_FALSE glibcxx_PCHFLAGS CSTDIO_H BASIC_FILE_H BASIC_FILE_CC CPP EGREP check_msgfmt glibcxx_MOFILES glibcxx_POFILES glibcxx_localedir USE_NLS CLOCALE_H CCODECVT_H CMESSAGES_H CCODECVT_CC CCOLLATE_CC CCTYPE_CC CMESSAGES_CC CMONEY_CC CNUMERIC_CC CTIME_H CTIME_CC CLOCALE_CC CLOCALE_INTERNAL_H C_INCLUDE_DIR GLIBCXX_C_HEADERS_C_TRUE GLIBCXX_C_HEADERS_C_FALSE GLIBCXX_C_HEADERS_C_STD_TRUE GLIBCXX_C_HEADERS_C_STD_FALSE GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE GLIBCXX_C_HEADERS_COMPATIBILITY_FALSE glibcxx_thread_h DEBUG_FLAGS GLIBCXX_BUILD_DEBUG_TRUE GLIBCXX_BUILD_DEBUG_FALSE EXTRA_CXX_FLAGS WERROR SECTION_FLAGS SECTION_LDFLAGS OPT_LDFLAGS LIBMATHOBJS SYMVER_MAP port_specific_symbol_files GLIBCXX_BUILD_VERSIONED_SHLIB_TRUE GLIBCXX_BUILD_VERSIONED_SHLIB_FALSE baseline_dir GLIBCXX_TEST_WCHAR_T_TRUE GLIBCXX_TEST_WCHAR_T_FALSE GLIBCXX_TEST_ABI_TRUE GLIBCXX_TEST_ABI_FALSE ATOMICITY_INC_SRCDIR OS_INC_SRCDIR glibcxx_prefixdir gxx_include_dir glibcxx_toolexecdir glibcxx_toolexeclibdir GLIBCXX_INCLUDES TOPLEVEL_INCLUDES OPTIMIZE_CXXFLAGS WARN_FLAGS LIBSUPCXX_PICFLAGS LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS libtool_VERSION multi_basedir build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE am__leading_dot glibcxx_builddir glibcxx_srcdir toplevel_srcdir CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LN_S AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBTOOL CXXCPP CPPFLAGS enable_shared enable_static GLIBCXX_HOSTED_TRUE GLIBCXX_HOSTED_FALSE GLIBCXX_BUILD_PCH_TRUE GLIBCXX_BUILD_PCH_FALSE glibcxx_PCHFLAGS CSTDIO_H BASIC_FILE_H BASIC_FILE_CC CPP EGREP check_msgfmt glibcxx_MOFILES glibcxx_POFILES glibcxx_localedir USE_NLS CLOCALE_H CCODECVT_H CMESSAGES_H CCODECVT_CC CCOLLATE_CC CCTYPE_CC CMESSAGES_CC CMONEY_CC CNUMERIC_CC CTIME_H CTIME_CC CLOCALE_CC CLOCALE_INTERNAL_H ALLOCATOR_H ALLOCATOR_NAME C_INCLUDE_DIR GLIBCXX_C_HEADERS_C_TRUE GLIBCXX_C_HEADERS_C_FALSE GLIBCXX_C_HEADERS_C_STD_TRUE GLIBCXX_C_HEADERS_C_STD_FALSE GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE GLIBCXX_C_HEADERS_COMPATIBILITY_FALSE glibcxx_thread_h DEBUG_FLAGS GLIBCXX_BUILD_DEBUG_TRUE GLIBCXX_BUILD_DEBUG_FALSE EXTRA_CXX_FLAGS WERROR SECTION_FLAGS SECTION_LDFLAGS OPT_LDFLAGS LIBMATHOBJS SYMVER_MAP port_specific_symbol_files GLIBCXX_BUILD_VERSIONED_SHLIB_TRUE GLIBCXX_BUILD_VERSIONED_SHLIB_FALSE baseline_dir GLIBCXX_TEST_WCHAR_T_TRUE GLIBCXX_TEST_WCHAR_T_FALSE GLIBCXX_TEST_ABI_TRUE GLIBCXX_TEST_ABI_FALSE ATOMICITY_SRCDIR ATOMIC_WORD_SRCDIR OS_INC_SRCDIR glibcxx_prefixdir gxx_include_dir glibcxx_toolexecdir glibcxx_toolexeclibdir GLIBCXX_INCLUDES TOPLEVEL_INCLUDES OPTIMIZE_CXXFLAGS WARN_FLAGS LIBSUPCXX_PICFLAGS LIBOBJS LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -863,6 +863,9 @@ Optional Features:
use MODEL for target locale package
[default=auto]
--enable-nls use Native Language Support (default)
+ --enable-libstdcxx-allocator=KIND
+ use KIND for target std::allocator base
+ [default=auto]
--enable-cheaders=KIND construct "C" headers for g++
[default=$c_model]
--enable-c-mbchar enable multibyte (wide) characters
@@ -4267,7 +4270,7 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 4270 "configure"' > conftest.$ac_ext
+ echo '#line 4273 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -4871,7 +4874,7 @@ fi;
#
# Fake what AC_TRY_COMPILE does. XXX Look at redoing this new-style.
cat > conftest.$ac_ext << EOF
-#line 4874 "configure"
+#line 4877 "configure"
struct S { ~S(); };
void bar();
void foo()
@@ -6051,6 +6054,70 @@ _ACEOF
+ echo "$as_me:$LINENO: checking for std::allocator base class to use" >&5
+echo $ECHO_N "checking for std::allocator base class to use... $ECHO_C" >&6
+ # Check whether --enable-libstdcxx-allocator or --disable-libstdcxx-allocator was given.
+if test "${enable_libstdcxx_allocator+set}" = set; then
+ enableval="$enable_libstdcxx_allocator"
+
+ case "$enableval" in
+ new|malloc|mt|bitmap|yes|no|auto) ;;
+ *) { { echo "$as_me:$LINENO: error: Unknown argument to enable/disable libstdcxx-allocator" >&5
+echo "$as_me: error: Unknown argument to enable/disable libstdcxx-allocator" >&2;}
+ { (exit 1); exit 1; }; } ;;
+ esac
+
+else
+ enable_libstdcxx_allocator=auto
+fi;
+
+ # If they didn't use this option switch, or if they specified --enable
+ # with no specific model, we'll have to look for one. If they
+ # specified --disable (???), do likewise.
+ if test $enable_libstdcxx_allocator = no || test $enable_libstdcxx_allocator = yes; then
+ enable_libstdcxx_allocator=auto
+ fi
+
+ # Either a known package, or "auto"
+ enable_libstdcxx_allocator_flag=$enable_libstdcxx_allocator
+
+ # Probe for host-specific support if no specific model is specified.
+ # Default to "new".
+ if test $enable_libstdcxx_allocator_flag = auto; then
+ case ${target_os} in
+ *)
+ enable_libstdcxx_allocator_flag=new
+ ;;
+ esac
+ fi
+ echo "$as_me:$LINENO: result: $enable_libstdcxx_allocator_flag" >&5
+echo "${ECHO_T}$enable_libstdcxx_allocator_flag" >&6
+
+
+ # Set configure bits for specified locale package
+ case ${enable_libstdcxx_allocator_flag} in
+ bitmap)
+ ALLOCATOR_H=config/allocator/bitmap_allocator_base.h
+ ALLOCATOR_NAME=__gnu_cxx::bitmap_allocator
+ ;;
+ malloc)
+ ALLOCATOR_H=config/allocator/malloc_allocator_base.h
+ ALLOCATOR_NAME=__gnu_cxx::malloc_allocator
+ ;;
+ mt)
+ ALLOCATOR_H=config/allocator/mt_allocator_base.h
+ ALLOCATOR_NAME=__gnu_cxx::__mt_alloc
+ ;;
+ new)
+ ALLOCATOR_H=config/allocator/new_allocator_base.h
+ ALLOCATOR_NAME=__gnu_cxx::new_allocator
+ ;;
+ esac
+
+
+
+
+
# Check whether --enable-cheaders or --disable-cheaders was given.
if test "${enable_cheaders+set}" = set; then
enableval="$enable_cheaders"
@@ -7323,10 +7390,6 @@ echo "${ECHO_T}$target_thread_file" >&6
#define HAVE_GTHR_DEFAULT 1
_ACEOF
- cat >>confdefs.h <<\_ACEOF
-#define _GLIBCXX_SUPPORTS_WEAK __GXX_WEAK__
-_ACEOF
-
fi
glibcxx_thread_h=gthr-$target_thread_file.h
@@ -7439,7 +7502,7 @@ echo "${ECHO_T}$EXTRA_CXX_FLAGS" >&6
# No surprises, no surprises...
-if test $atomicity_include_dir = cpu/generic ; then
+if test $atomicity_dir = cpu/generic ; then
{ echo "$as_me:$LINENO: WARNING: No native atomic operations are provided for this platform." >&5
echo "$as_me: WARNING: No native atomic operations are provided for this platform." >&2;}
if test $target_thread_file = single; then
@@ -24177,8 +24240,7 @@ _ACEOF
fi
-
-for ac_func in nan copysignf
+for ac_func in copysignf
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
echo "$as_me:$LINENO: checking for $ac_func" >&5
@@ -44201,8 +44263,7 @@ _ACEOF
fi
-
-for ac_func in nan copysignf
+for ac_func in copysignf
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
echo "$as_me:$LINENO: checking for $ac_func" >&5
@@ -47064,8 +47125,7 @@ _ACEOF
fi
-
-for ac_func in nan copysignf
+for ac_func in copysignf
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
echo "$as_me:$LINENO: checking for $ac_func" >&5
@@ -49202,8 +49262,7 @@ _ACEOF
fi
-
-for ac_func in nan copysignf
+for ac_func in copysignf
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
echo "$as_me:$LINENO: checking for $ac_func" >&5
@@ -51213,8 +51272,7 @@ _ACEOF
fi
-
-for ac_func in nan copysignf
+for ac_func in copysignf
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
echo "$as_me:$LINENO: checking for $ac_func" >&5
@@ -52848,10 +52906,16 @@ echo "${ECHO_T}$enable_wchar_t" >&6
#define HAVE_INT64_T 1
_ACEOF
- cat >>confdefs.h <<\_ACEOF
+ case "$target" in
+ *-uclinux*)
+ # Don't enable LFS with uClibc
+ ;;
+ *)
+ cat >>confdefs.h <<\_ACEOF
#define _GLIBCXX_USE_LFS 1
_ACEOF
+ esac
# For showmanyc_helper().
@@ -53761,8 +53825,7 @@ _ACEOF
fi
-
-for ac_func in nan copysignf
+for ac_func in copysignf
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
echo "$as_me:$LINENO: checking for $ac_func" >&5
@@ -55728,8 +55791,7 @@ _ACEOF
fi
-
-for ac_func in nan copysignf
+for ac_func in copysignf
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
echo "$as_me:$LINENO: checking for $ac_func" >&5
@@ -57594,8 +57656,7 @@ _ACEOF
fi
-
-for ac_func in nan copysignf
+for ac_func in copysignf
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
echo "$as_me:$LINENO: checking for $ac_func" >&5
@@ -60941,6 +61002,2033 @@ _ACEOF
_ACEOF
;;
+ *-tpf)
+
+
+
+
+
+
+
+
+for ac_header in nan.h endian.h machine/endian.h \
+ sys/param.h sys/types.h locale.h float.h inttypes.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+else
+ # Is the header compilable?
+echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_header_compiler=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_header_compiler=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6
+
+# Is the header present?
+echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
+fi
+rm -f conftest.err conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+echo "${ECHO_T}$ac_header_preproc" >&6
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc in
+ yes:no )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ (
+ cat <<\_ASBOX
+## ------------------------------------ ##
+## Report this to bug-autoconf@gnu.org. ##
+## ------------------------------------ ##
+_ASBOX
+ ) |
+ sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+ no:yes )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ (
+ cat <<\_ASBOX
+## ------------------------------------ ##
+## Report this to bug-autoconf@gnu.org. ##
+## ------------------------------------ ##
+_ASBOX
+ ) |
+ sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+esac
+echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ eval "$as_ac_Header=$ac_header_preproc"
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+ SECTION_FLAGS='-ffunction-sections -fdata-sections'
+
+
+ # If we're not using GNU ld, then there's no point in even trying these
+ # tests. Check for that first. We should have already tested for gld
+ # by now (in libtool), but require it now just to be safe...
+ test -z "$SECTION_LDFLAGS" && SECTION_LDFLAGS=''
+ test -z "$OPT_LDFLAGS" && OPT_LDFLAGS=''
+
+
+
+ # The name set by libtool depends on the version of libtool. Shame on us
+ # for depending on an impl detail, but c'est la vie. Older versions used
+ # ac_cv_prog_gnu_ld, but now it's lt_cv_prog_gnu_ld, and is copied back on
+ # top of with_gnu_ld (which is also set by --with-gnu-ld, so that actually
+ # makes sense). We'll test with_gnu_ld everywhere else, so if that isn't
+ # set (hence we're using an older libtool), then set it.
+ if test x${with_gnu_ld+set} != xset; then
+ if test x${ac_cv_prog_gnu_ld+set} != xset; then
+ # We got through "ac_require(ac_prog_ld)" and still not set? Huh?
+ with_gnu_ld=no
+ else
+ with_gnu_ld=$ac_cv_prog_gnu_ld
+ fi
+ fi
+
+ # Start by getting the version number. I think the libtool test already
+ # does some of this, but throws away the result.
+
+ ldver=`$LD --version 2>/dev/null | head -1 | \
+ sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
+
+ glibcxx_gnu_ld_version=`echo $ldver | \
+ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
+
+ # Set --gc-sections.
+ if test "$with_gnu_ld" = "notbroken"; then
+ # GNU ld it is! Joy and bunny rabbits!
+
+ # All these tests are for C++; save the language and the compiler flags.
+ # Need to do this so that g++ won't try to link in libstdc++
+ ac_test_CFLAGS="${CFLAGS+set}"
+ ac_save_CFLAGS="$CFLAGS"
+ CFLAGS='-x c++ -Wl,--gc-sections'
+
+ # Check for -Wl,--gc-sections
+ # XXX This test is broken at the moment, as symbols required for linking
+ # are now in libsupc++ (not built yet). In addition, this test has
+ # cored on solaris in the past. In addition, --gc-sections doesn't
+ # really work at the moment (keeps on discarding used sections, first
+ # .eh_frame and now some of the glibc sections for iconv).
+ # Bzzzzt. Thanks for playing, maybe next time.
+ echo "$as_me:$LINENO: checking for ld that supports -Wl,--gc-sections" >&5
+echo $ECHO_N "checking for ld that supports -Wl,--gc-sections... $ECHO_C" >&6
+ if test "$cross_compiling" = yes; then
+ ac_sectionLDflags=yes
+else
+ cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+ int main(void)
+ {
+ try { throw 1; }
+ catch (...) { };
+ return 0;
+ }
+
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_sectionLDflags=yes
+else
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+ac_sectionLDflags=no
+fi
+rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+ if test "$ac_test_CFLAGS" = set; then
+ CFLAGS="$ac_save_CFLAGS"
+ else
+ # this is the suspicious part
+ CFLAGS=''
+ fi
+ if test "$ac_sectionLDflags" = "yes"; then
+ SECTION_LDFLAGS="-Wl,--gc-sections $SECTION_LDFLAGS"
+ fi
+ echo "$as_me:$LINENO: result: $ac_sectionLDflags" >&5
+echo "${ECHO_T}$ac_sectionLDflags" >&6
+ fi
+
+ # Set linker optimization flags.
+ if test x"$with_gnu_ld" = x"yes"; then
+ OPT_LDFLAGS="-Wl,-O1 $OPT_LDFLAGS"
+ fi
+
+
+
+
+
+
+echo "$as_me:$LINENO: checking for main in -lm" >&5
+echo $ECHO_N "checking for main in -lm... $ECHO_C" >&6
+if test "${ac_cv_lib_m_main+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lm $LIBS"
+if test x$gcc_no_link = xyes; then
+ { { echo "$as_me:$LINENO: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&5
+echo "$as_me: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+
+int
+main ()
+{
+main ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_lib_m_main=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_lib_m_main=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:$LINENO: result: $ac_cv_lib_m_main" >&5
+echo "${ECHO_T}$ac_cv_lib_m_main" >&6
+if test $ac_cv_lib_m_main = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBM 1
+_ACEOF
+
+ LIBS="-lm $LIBS"
+
+fi
+
+
+for ac_func in copysignf
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test x$gcc_no_link = xyes; then
+ { { echo "$as_me:$LINENO: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&5
+echo "$as_me: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+char (*f) () = $ac_func;
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+int
+main ()
+{
+return f != $ac_func;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ eval "$as_ac_var=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+else
+ LIBMATHOBJS="$LIBMATHOBJS ${ac_func}.lo"
+fi
+done
+
+
+
+for ac_func in __signbit
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test x$gcc_no_link = xyes; then
+ { { echo "$as_me:$LINENO: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&5
+echo "$as_me: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+char (*f) () = $ac_func;
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+int
+main ()
+{
+return f != $ac_func;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ eval "$as_ac_var=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+else
+ LIBMATHOBJS="$LIBMATHOBJS signbit.lo"
+fi
+done
+
+
+for ac_func in __signbitf
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test x$gcc_no_link = xyes; then
+ { { echo "$as_me:$LINENO: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&5
+echo "$as_me: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+char (*f) () = $ac_func;
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+int
+main ()
+{
+return f != $ac_func;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ eval "$as_ac_var=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+else
+ LIBMATHOBJS="$LIBMATHOBJS signbitf.lo"
+fi
+done
+
+
+ if test x$ac_cv_func_copysignl = x"yes"; then
+
+for ac_func in __signbitl
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test x$gcc_no_link = xyes; then
+ { { echo "$as_me:$LINENO: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&5
+echo "$as_me: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+char (*f) () = $ac_func;
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+int
+main ()
+{
+return f != $ac_func;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ eval "$as_ac_var=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+else
+ LIBMATHOBJS="$LIBMATHOBJS signbitl.lo"
+fi
+done
+
+ fi
+
+ # XXX Review this. Nothing uses it.
+ if test -n "$LIBMATHOBJS"; then
+ need_libmath=yes
+ fi
+
+
+
+ # Test wchar.h for mbstate_t, which is needed for char_traits and
+ # others even if wchar_t support is not on.
+ echo "$as_me:$LINENO: checking for mbstate_t" >&5
+echo $ECHO_N "checking for mbstate_t... $ECHO_C" >&6
+ cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <wchar.h>
+int
+main ()
+{
+mbstate_t teststate;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ have_mbstate_t=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+have_mbstate_t=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+ echo "$as_me:$LINENO: result: $have_mbstate_t" >&5
+echo "${ECHO_T}$have_mbstate_t" >&6
+ if test x"$have_mbstate_t" = xyes; then
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_MBSTATE_T 1
+_ACEOF
+
+ fi
+
+ # Sanity check for existence of ISO C99 headers for extended encoding.
+
+for ac_header in wchar.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+else
+ # Is the header compilable?
+echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_header_compiler=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_header_compiler=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6
+
+# Is the header present?
+echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
+fi
+rm -f conftest.err conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+echo "${ECHO_T}$ac_header_preproc" >&6
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc in
+ yes:no )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ (
+ cat <<\_ASBOX
+## ------------------------------------ ##
+## Report this to bug-autoconf@gnu.org. ##
+## ------------------------------------ ##
+_ASBOX
+ ) |
+ sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+ no:yes )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ (
+ cat <<\_ASBOX
+## ------------------------------------ ##
+## Report this to bug-autoconf@gnu.org. ##
+## ------------------------------------ ##
+_ASBOX
+ ) |
+ sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+esac
+echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ eval "$as_ac_Header=$ac_header_preproc"
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+ ac_has_wchar_h=yes
+else
+ ac_has_wchar_h=no
+fi
+
+done
+
+
+for ac_header in wctype.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+else
+ # Is the header compilable?
+echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_header_compiler=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_header_compiler=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6
+
+# Is the header present?
+echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
+fi
+rm -f conftest.err conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+echo "${ECHO_T}$ac_header_preproc" >&6
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc in
+ yes:no )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ (
+ cat <<\_ASBOX
+## ------------------------------------ ##
+## Report this to bug-autoconf@gnu.org. ##
+## ------------------------------------ ##
+_ASBOX
+ ) |
+ sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+ no:yes )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ (
+ cat <<\_ASBOX
+## ------------------------------------ ##
+## Report this to bug-autoconf@gnu.org. ##
+## ------------------------------------ ##
+_ASBOX
+ ) |
+ sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+esac
+echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ eval "$as_ac_Header=$ac_header_preproc"
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+ ac_has_wctype_h=yes
+else
+ ac_has_wctype_h=no
+fi
+
+done
+
+
+ # Only continue checking if the ISO C99 headers exist and support is on.
+ if test x"$ac_has_wchar_h" = xyes &&
+ test x"$ac_has_wctype_h" = xyes &&
+ test x"$enable_c_mbchar" != xno; then
+
+ # Test wchar.h for WCHAR_MIN, WCHAR_MAX, which is needed before
+ # numeric_limits can instantiate type_traits<wchar_t>
+ echo "$as_me:$LINENO: checking for WCHAR_MIN and WCHAR_MAX" >&5
+echo $ECHO_N "checking for WCHAR_MIN and WCHAR_MAX... $ECHO_C" >&6
+ cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <wchar.h>
+int
+main ()
+{
+int i = WCHAR_MIN; int j = WCHAR_MAX;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ has_wchar_minmax=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+has_wchar_minmax=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+ echo "$as_me:$LINENO: result: $has_wchar_minmax" >&5
+echo "${ECHO_T}$has_wchar_minmax" >&6
+
+ # Test wchar.h for WEOF, which is what we use to determine whether
+ # to specialize for char_traits<wchar_t> or not.
+ echo "$as_me:$LINENO: checking for WEOF" >&5
+echo $ECHO_N "checking for WEOF... $ECHO_C" >&6
+ cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+ #include <wchar.h>
+ #include <stddef.h>
+int
+main ()
+{
+wint_t i = WEOF;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ has_weof=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+has_weof=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+ echo "$as_me:$LINENO: result: $has_weof" >&5
+echo "${ECHO_T}$has_weof" >&6
+
+ # Tests for wide character functions used in char_traits<wchar_t>.
+ ac_wfuncs=yes
+
+
+
+
+
+
+for ac_func in wcslen wmemchr wmemcmp wmemcpy wmemmove wmemset
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test x$gcc_no_link = xyes; then
+ { { echo "$as_me:$LINENO: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&5
+echo "$as_me: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+char (*f) () = $ac_func;
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+int
+main ()
+{
+return f != $ac_func;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ eval "$as_ac_var=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+else
+ ac_wfuncs=no
+fi
+done
+
+
+ # Checks for names injected into std:: by the c_std headers.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+for ac_func in btowc wctob fgetwc fgetws fputwc fputws fwide \
+ fwprintf fwscanf swprintf swscanf vfwprintf vswprintf \
+ vwprintf wprintf wscanf getwc getwchar mbsinit mbrlen mbrtowc \
+ mbsrtowcs wcsrtombs putwc putwchar ungetwc wcrtomb wcstod wcstol \
+ wcstoul wcscpy wcsncpy wcscat wcsncat wcscmp wcscoll wcsncmp wcsxfrm \
+ wcscspn wcsspn wcstok wcsftime wcschr wcspbrk wcsrchr wcsstr
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test x$gcc_no_link = xyes; then
+ { { echo "$as_me:$LINENO: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&5
+echo "$as_me: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+char (*f) () = $ac_func;
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+int
+main ()
+{
+return f != $ac_func;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ eval "$as_ac_var=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+else
+ ac_wfuncs=no
+fi
+done
+
+
+ # Checks for wide character functions that are not required
+ # for basic wchar_t support. Don't disable support if they are missing.
+ # Injection of these is wrapped with guard macros.
+
+
+
+
+
+for ac_func in vfwscanf vswscanf vwscanf wcstof iswblank
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test x$gcc_no_link = xyes; then
+ { { echo "$as_me:$LINENO: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&5
+echo "$as_me: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+char (*f) () = $ac_func;
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+int
+main ()
+{
+return f != $ac_func;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ eval "$as_ac_var=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+
+ echo "$as_me:$LINENO: checking for ISO C99 wchar_t support" >&5
+echo $ECHO_N "checking for ISO C99 wchar_t support... $ECHO_C" >&6
+ if test x"$has_weof" = xyes &&
+ test x"$has_wchar_minmax" = xyes &&
+ test x"$ac_wfuncs" = xyes;
+ then
+ ac_isoC99_wchar_t=yes
+ else
+ ac_isoC99_wchar_t=no
+ fi
+ echo "$as_me:$LINENO: result: $ac_isoC99_wchar_t" >&5
+echo "${ECHO_T}$ac_isoC99_wchar_t" >&6
+
+ # Use iconv for wchar_t to char conversions. As such, check for
+ # X/Open Portability Guide, version 2 features (XPG2).
+ if test "${ac_cv_header_iconv_h+set}" = set; then
+ echo "$as_me:$LINENO: checking for iconv.h" >&5
+echo $ECHO_N "checking for iconv.h... $ECHO_C" >&6
+if test "${ac_cv_header_iconv_h+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+echo "$as_me:$LINENO: result: $ac_cv_header_iconv_h" >&5
+echo "${ECHO_T}$ac_cv_header_iconv_h" >&6
+else
+ # Is the header compilable?
+echo "$as_me:$LINENO: checking iconv.h usability" >&5
+echo $ECHO_N "checking iconv.h usability... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <iconv.h>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_header_compiler=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_header_compiler=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6
+
+# Is the header present?
+echo "$as_me:$LINENO: checking iconv.h presence" >&5
+echo $ECHO_N "checking iconv.h presence... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <iconv.h>
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
+fi
+rm -f conftest.err conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+echo "${ECHO_T}$ac_header_preproc" >&6
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc in
+ yes:no )
+ { echo "$as_me:$LINENO: WARNING: iconv.h: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: iconv.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: iconv.h: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: iconv.h: proceeding with the preprocessor's result" >&2;}
+ (
+ cat <<\_ASBOX
+## ------------------------------------ ##
+## Report this to bug-autoconf@gnu.org. ##
+## ------------------------------------ ##
+_ASBOX
+ ) |
+ sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+ no:yes )
+ { echo "$as_me:$LINENO: WARNING: iconv.h: present but cannot be compiled" >&5
+echo "$as_me: WARNING: iconv.h: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: iconv.h: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: iconv.h: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: iconv.h: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: iconv.h: proceeding with the preprocessor's result" >&2;}
+ (
+ cat <<\_ASBOX
+## ------------------------------------ ##
+## Report this to bug-autoconf@gnu.org. ##
+## ------------------------------------ ##
+_ASBOX
+ ) |
+ sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+esac
+echo "$as_me:$LINENO: checking for iconv.h" >&5
+echo $ECHO_N "checking for iconv.h... $ECHO_C" >&6
+if test "${ac_cv_header_iconv_h+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_cv_header_iconv_h=$ac_header_preproc
+fi
+echo "$as_me:$LINENO: result: $ac_cv_header_iconv_h" >&5
+echo "${ECHO_T}$ac_cv_header_iconv_h" >&6
+
+fi
+if test $ac_cv_header_iconv_h = yes; then
+ ac_has_iconv_h=yes
+else
+ ac_has_iconv_h=no
+fi
+
+
+ if test "${ac_cv_header_langinfo_h+set}" = set; then
+ echo "$as_me:$LINENO: checking for langinfo.h" >&5
+echo $ECHO_N "checking for langinfo.h... $ECHO_C" >&6
+if test "${ac_cv_header_langinfo_h+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+echo "$as_me:$LINENO: result: $ac_cv_header_langinfo_h" >&5
+echo "${ECHO_T}$ac_cv_header_langinfo_h" >&6
+else
+ # Is the header compilable?
+echo "$as_me:$LINENO: checking langinfo.h usability" >&5
+echo $ECHO_N "checking langinfo.h usability... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <langinfo.h>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_header_compiler=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_header_compiler=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6
+
+# Is the header present?
+echo "$as_me:$LINENO: checking langinfo.h presence" >&5
+echo $ECHO_N "checking langinfo.h presence... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <langinfo.h>
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
+fi
+rm -f conftest.err conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+echo "${ECHO_T}$ac_header_preproc" >&6
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc in
+ yes:no )
+ { echo "$as_me:$LINENO: WARNING: langinfo.h: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: langinfo.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: langinfo.h: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: langinfo.h: proceeding with the preprocessor's result" >&2;}
+ (
+ cat <<\_ASBOX
+## ------------------------------------ ##
+## Report this to bug-autoconf@gnu.org. ##
+## ------------------------------------ ##
+_ASBOX
+ ) |
+ sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+ no:yes )
+ { echo "$as_me:$LINENO: WARNING: langinfo.h: present but cannot be compiled" >&5
+echo "$as_me: WARNING: langinfo.h: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: langinfo.h: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: langinfo.h: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: langinfo.h: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: langinfo.h: proceeding with the preprocessor's result" >&2;}
+ (
+ cat <<\_ASBOX
+## ------------------------------------ ##
+## Report this to bug-autoconf@gnu.org. ##
+## ------------------------------------ ##
+_ASBOX
+ ) |
+ sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+esac
+echo "$as_me:$LINENO: checking for langinfo.h" >&5
+echo $ECHO_N "checking for langinfo.h... $ECHO_C" >&6
+if test "${ac_cv_header_langinfo_h+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_cv_header_langinfo_h=$ac_header_preproc
+fi
+echo "$as_me:$LINENO: result: $ac_cv_header_langinfo_h" >&5
+echo "${ECHO_T}$ac_cv_header_langinfo_h" >&6
+
+fi
+if test $ac_cv_header_langinfo_h = yes; then
+ ac_has_langinfo_h=yes
+else
+ ac_has_langinfo_h=no
+fi
+
+
+
+ # Check for existence of libiconv.a providing XPG2 wchar_t support.
+ echo "$as_me:$LINENO: checking for iconv in -liconv" >&5
+echo $ECHO_N "checking for iconv in -liconv... $ECHO_C" >&6
+if test "${ac_cv_lib_iconv_iconv+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-liconv $LIBS"
+if test x$gcc_no_link = xyes; then
+ { { echo "$as_me:$LINENO: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&5
+echo "$as_me: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char iconv ();
+int
+main ()
+{
+iconv ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_lib_iconv_iconv=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_lib_iconv_iconv=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:$LINENO: result: $ac_cv_lib_iconv_iconv" >&5
+echo "${ECHO_T}$ac_cv_lib_iconv_iconv" >&6
+if test $ac_cv_lib_iconv_iconv = yes; then
+ libiconv="-liconv"
+fi
+
+ ac_save_LIBS="$LIBS"
+ LIBS="$LIBS $libiconv"
+
+
+
+
+
+for ac_func in iconv_open iconv_close iconv nl_langinfo
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test x$gcc_no_link = xyes; then
+ { { echo "$as_me:$LINENO: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&5
+echo "$as_me: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+char (*f) () = $ac_func;
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+int
+main ()
+{
+return f != $ac_func;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ eval "$as_ac_var=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+ ac_XPG2funcs=yes
+else
+ ac_XPG2funcs=no
+fi
+done
+
+
+ LIBS="$ac_save_LIBS"
+
+ echo "$as_me:$LINENO: checking for XPG2 wchar_t support" >&5
+echo $ECHO_N "checking for XPG2 wchar_t support... $ECHO_C" >&6
+ if test x"$ac_has_iconv_h" = xyes &&
+ test x"$ac_has_langinfo_h" = xyes &&
+ test x"$ac_XPG2funcs" = xyes;
+ then
+ ac_XPG2_wchar_t=yes
+ else
+ ac_XPG2_wchar_t=no
+ fi
+ echo "$as_me:$LINENO: result: $ac_XPG2_wchar_t" >&5
+echo "${ECHO_T}$ac_XPG2_wchar_t" >&6
+
+ # At the moment, only enable wchar_t specializations if all the
+ # above support is present.
+ if test x"$ac_isoC99_wchar_t" = xyes &&
+ test x"$ac_XPG2_wchar_t" = xyes;
+ then
+ cat >>confdefs.h <<\_ACEOF
+#define _GLIBCXX_USE_WCHAR_T 1
+_ACEOF
+
+ enable_wchar_t=yes
+ fi
+ fi
+ echo "$as_me:$LINENO: checking for enabled wchar_t specializations" >&5
+echo $ECHO_N "checking for enabled wchar_t specializations... $ECHO_C" >&6
+ echo "$as_me:$LINENO: result: $enable_wchar_t" >&5
+echo "${ECHO_T}$enable_wchar_t" >&6
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_COPYSIGN 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_COPYSIGNF 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_FINITE 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_FINITEF 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_FREXPF 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_HYPOTF 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_ISINF 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_ISINFF 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_ISNAN 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_ISNANF 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_SINCOS 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_SINCOSF 1
+_ACEOF
+
+ if test x"long_double_math_on_this_cpu" = x"yes"; then
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_FINITEL 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_HYPOTL 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_ISINFL 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_ISNANL 1
+_ACEOF
+
+ fi
+ ;;
*-vxworks)
cat >>confdefs.h <<\_ACEOF
#define HAVE_MMAP 1
@@ -62065,11 +64153,13 @@ done
# Propagate the target-specific source directories through the build chain.
# (Nothing currently uses cpu_include_dir directly; only atomicity_include_dir
# uses it, and it only gets used in this file.)
-ATOMICITY_INC_SRCDIR=config/${atomicity_include_dir}
+ATOMICITY_SRCDIR=config/${atomicity_dir}
+ATOMIC_WORD_SRCDIR=config/${atomic_word_dir}
OS_INC_SRCDIR=config/${os_include_dir}
+
# Determine cross-compile flags and AM_CONDITIONALs.
#AC_SUBST(GLIBCXX_IS_NATIVE)
#AM_CONDITIONAL(CANADIAN, test $CANADIAN = yes)
@@ -62289,11 +64379,12 @@ echo "${ECHO_T}$version_specific_libs" >&6
if test $version_specific_libs = yes; then
# Need the gcc compiler version to know where to install libraries
# and header files if --enable-version-specific-runtime-libs option
- # is selected.
+ # is selected. FIXME: these variables are misnamed, there are
+ # no executables installed in _toolexecdir or _toolexeclibdir.
if test x"$gxx_include_dir" = x"no"; then
- gxx_include_dir='${libdir}/gcc-lib/${host_alias}/'$gcc_version/include/c++
+ gxx_include_dir='${libdir}/gcc/${host_alias}/'$gcc_version/include/c++
fi
- glibcxx_toolexecdir='${libdir}/gcc-lib/${host_alias}'
+ glibcxx_toolexecdir='${libdir}/gcc/${host_alias}'
glibcxx_toolexeclibdir='${toolexecdir}/'$gcc_version'$(MULTISUBDIR)'
fi
@@ -62305,7 +64396,7 @@ echo "${ECHO_T}$version_specific_libs" >&6
glibcxx_toolexecdir='${exec_prefix}/${host_alias}'
glibcxx_toolexeclibdir='${toolexecdir}/lib'
else
- glibcxx_toolexecdir='${libdir}/gcc-lib/${host_alias}'
+ glibcxx_toolexecdir='${libdir}/gcc/${host_alias}'
glibcxx_toolexeclibdir='${libdir}'
fi
multi_os_directory=`$CXX -print-multi-os-directory`
@@ -63181,6 +65272,8 @@ s,@CTIME_H@,$CTIME_H,;t t
s,@CTIME_CC@,$CTIME_CC,;t t
s,@CLOCALE_CC@,$CLOCALE_CC,;t t
s,@CLOCALE_INTERNAL_H@,$CLOCALE_INTERNAL_H,;t t
+s,@ALLOCATOR_H@,$ALLOCATOR_H,;t t
+s,@ALLOCATOR_NAME@,$ALLOCATOR_NAME,;t t
s,@C_INCLUDE_DIR@,$C_INCLUDE_DIR,;t t
s,@GLIBCXX_C_HEADERS_C_TRUE@,$GLIBCXX_C_HEADERS_C_TRUE,;t t
s,@GLIBCXX_C_HEADERS_C_FALSE@,$GLIBCXX_C_HEADERS_C_FALSE,;t t
@@ -63207,7 +65300,8 @@ s,@GLIBCXX_TEST_WCHAR_T_TRUE@,$GLIBCXX_TEST_WCHAR_T_TRUE,;t t
s,@GLIBCXX_TEST_WCHAR_T_FALSE@,$GLIBCXX_TEST_WCHAR_T_FALSE,;t t
s,@GLIBCXX_TEST_ABI_TRUE@,$GLIBCXX_TEST_ABI_TRUE,;t t
s,@GLIBCXX_TEST_ABI_FALSE@,$GLIBCXX_TEST_ABI_FALSE,;t t
-s,@ATOMICITY_INC_SRCDIR@,$ATOMICITY_INC_SRCDIR,;t t
+s,@ATOMICITY_SRCDIR@,$ATOMICITY_SRCDIR,;t t
+s,@ATOMIC_WORD_SRCDIR@,$ATOMIC_WORD_SRCDIR,;t t
s,@OS_INC_SRCDIR@,$OS_INC_SRCDIR,;t t
s,@glibcxx_prefixdir@,$glibcxx_prefixdir,;t t
s,@gxx_include_dir@,$gxx_include_dir,;t t
diff --git a/libstdc++-v3/configure.ac b/libstdc++-v3/configure.ac
index baf8d7f4b59..6d9e24058e3 100644
--- a/libstdc++-v3/configure.ac
+++ b/libstdc++-v3/configure.ac
@@ -84,6 +84,7 @@ GLIBCXX_ENABLE_PCH($is_hosted)
# NB: C_MBCHAR must come early.
GLIBCXX_ENABLE_CSTDIO
GLIBCXX_ENABLE_CLOCALE
+GLIBCXX_ENABLE_ALLOCATOR
GLIBCXX_ENABLE_CHEADERS($c_model) dnl c_model from configure.host
GLIBCXX_ENABLE_C_MBCHAR([yes])
GLIBCXX_ENABLE_C99([yes])
@@ -95,7 +96,7 @@ GLIBCXX_ENABLE_DEBUG([no])
GLIBCXX_ENABLE_CXX_FLAGS
# No surprises, no surprises...
-if test $atomicity_include_dir = cpu/generic ; then
+if test $atomicity_dir = cpu/generic ; then
AC_MSG_WARN([No native atomic operations are provided for this platform.])
if test $target_thread_file = single; then
AC_MSG_WARN([They cannot be faked when thread support is disabled.])
@@ -268,9 +269,11 @@ GLIBCXX_CONFIGURE_TESTSUITE
# Propagate the target-specific source directories through the build chain.
# (Nothing currently uses cpu_include_dir directly; only atomicity_include_dir
# uses it, and it only gets used in this file.)
-ATOMICITY_INC_SRCDIR=config/${atomicity_include_dir}
+ATOMICITY_SRCDIR=config/${atomicity_dir}
+ATOMIC_WORD_SRCDIR=config/${atomic_word_dir}
OS_INC_SRCDIR=config/${os_include_dir}
-AC_SUBST(ATOMICITY_INC_SRCDIR)
+AC_SUBST(ATOMICITY_SRCDIR)
+AC_SUBST(ATOMIC_WORD_SRCDIR)
AC_SUBST(OS_INC_SRCDIR)
# Determine cross-compile flags and AM_CONDITIONALs.
diff --git a/libstdc++-v3/configure.host b/libstdc++-v3/configure.host
index f5a8f899c2e..747cf74099a 100644
--- a/libstdc++-v3/configure.host
+++ b/libstdc++-v3/configure.host
@@ -30,9 +30,12 @@
# abi_baseline_pair directory name for ABI compat testing,
# defaults to host_cpu-host_os (as per config.guess)
#
-# atomicity_include_dir location of atomicity.h,
+# atomicity_dir location of atomicity.h,
# defaults to cpu_include_dir
#
+# atomic_word_dir location of atomic_word.h
+# defaults to generic.
+#
# It possibly modifies the following variables:
#
# OPT_LDFLAGS extra flags to pass when linking the library, of
@@ -57,6 +60,7 @@
# systems out there. :-)
c_model=c_std
c_compatibility=no
+atomic_word_dir=cpu/generic
# HOST-SPECIFIC OVERRIDES
# Set any CPU-dependent bits.
@@ -94,7 +98,7 @@ case "${host_cpu}" in
try_cpu=sparc
;;
*)
- if test -d ${glibcxx_srcdir}/config/cpu/${host_cpu}; then
+ if test -f ${glibcxx_srcdir}/config/cpu/${host_cpu}/atomicity.h; then
try_cpu=${host_cpu}
else
try_cpu=generic
@@ -102,11 +106,22 @@ case "${host_cpu}" in
;;
esac
+# Set specific CPU overrides for atomic_word_dir. Most can just use generic.
+# THIS TABLE IS SORTED. KEEP IT THAT WAY.
+case "${host_cpu}" in
+ cris*)
+ atomic_word_dir=cpu/cris
+ ;;
+ sparc* | ultrasparc)
+ atomic_word_dir=cpu/sparc
+ ;;
+esac
+
# Now look for the file(s) usually tied to a CPU model, and make
# default choices for those if they haven't been explicitly set
# already.
cpu_include_dir="cpu/${try_cpu}"
-atomicity_include_dir=$cpu_include_dir
+atomicity_dir=$cpu_include_dir
abi_baseline_pair=${try_cpu}-${host_os}
@@ -122,16 +137,16 @@ case "${host_os}" in
# os/aix/atomicity.h works on earlier versions of AIX 4.*, so we
# explicitly duplicate the directory for 4.[<3].
os_include_dir="os/aix"
- atomicity_include_dir="os/aix"
+ atomicity_dir="os/aix"
OPT_LDFLAGS="-Wl,-G"
;;
aix4.*)
os_include_dir="os/generic"
- atomicity_include_dir="os/aix"
+ atomicity_dir="os/aix"
;;
aix*)
os_include_dir="os/generic"
- atomicity_include_dir="cpu/generic"
+ atomicity_dir="cpu/generic"
;;
bsd*)
# Plain BSD attempts to share FreeBSD files.
@@ -155,11 +170,13 @@ case "${host_os}" in
irix[1-6] | irix[1-5].* | irix6.[0-4]*)
# This is known to work on at least IRIX 5.2 and 6.3.
os_include_dir="os/irix/irix5.2"
- atomicity_include_dir=$os_include_dir
+ atomicity_dir=os/irix
+ atomic_word_dir=os/irix
;;
irix6.5*)
os_include_dir="os/irix/irix6.5"
- atomicity_include_dir=$os_include_dir
+ atomicity_dir=os/irix
+ atomic_word_dir=os/irix
;;
mingw32*)
os_include_dir="os/mingw32"
@@ -186,6 +203,9 @@ case "${host_os}" in
solaris2.[789] | solaris2.1[0-9])
os_include_dir="os/solaris/solaris2.7"
;;
+ tpf)
+ os_include_dir="os/tpf"
+ ;;
vxworks)
os_include_dir="os/vxworks"
;;
@@ -202,7 +222,7 @@ esac
# THIS TABLE IS SORTED. KEEP IT THAT WAY.
case "${host}" in
mips*-*-linux*)
- atomicity_include_dir="cpu/mips"
+ atomicity_dir="cpu/mips"
;;
x86_64-*-linux*)
abi_baseline_pair="x86_64-linux-gnu"
diff --git a/libstdc++-v3/crossconfig.m4 b/libstdc++-v3/crossconfig.m4
index 5f1392b5c34..2c395e2c355 100644
--- a/libstdc++-v3/crossconfig.m4
+++ b/libstdc++-v3/crossconfig.m4
@@ -134,7 +134,13 @@ case "${host}" in
# For LFS.
AC_DEFINE(HAVE_INT64_T)
- AC_DEFINE(_GLIBCXX_USE_LFS)
+ case "$target" in
+ *-uclinux*)
+ # Don't enable LFS with uClibc
+ ;;
+ *)
+ AC_DEFINE(_GLIBCXX_USE_LFS)
+ esac
# For showmanyc_helper().
AC_CHECK_HEADERS(sys/ioctl.h sys/filio.h)
@@ -336,6 +342,33 @@ case "${host}" in
AC_DEFINE(HAVE_MODFF)
AC_DEFINE(HAVE_HYPOT)
;;
+ *-tpf)
+ AC_CHECK_HEADERS([nan.h endian.h machine/endian.h \
+ sys/param.h sys/types.h locale.h float.h inttypes.h])
+ SECTION_FLAGS='-ffunction-sections -fdata-sections'
+ AC_SUBST(SECTION_FLAGS)
+ GLIBCXX_CHECK_LINKER_FEATURES
+ GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT
+ GLIBCXX_CHECK_WCHAR_T_SUPPORT
+ AC_DEFINE(HAVE_COPYSIGN)
+ AC_DEFINE(HAVE_COPYSIGNF)
+ AC_DEFINE(HAVE_FINITE)
+ AC_DEFINE(HAVE_FINITEF)
+ AC_DEFINE(HAVE_FREXPF)
+ AC_DEFINE(HAVE_HYPOTF)
+ AC_DEFINE(HAVE_ISINF)
+ AC_DEFINE(HAVE_ISINFF)
+ AC_DEFINE(HAVE_ISNAN)
+ AC_DEFINE(HAVE_ISNANF)
+ AC_DEFINE(HAVE_SINCOS)
+ AC_DEFINE(HAVE_SINCOSF)
+ if test x"long_double_math_on_this_cpu" = x"yes"; then
+ AC_DEFINE(HAVE_FINITEL)
+ AC_DEFINE(HAVE_HYPOTL)
+ AC_DEFINE(HAVE_ISINFL)
+ AC_DEFINE(HAVE_ISNANL)
+ fi
+ ;;
*-vxworks)
AC_DEFINE(HAVE_MMAP)
AC_DEFINE(HAVE_ACOSF)
diff --git a/libstdc++-v3/docs/html/17_intro/C++STYLE b/libstdc++-v3/docs/html/17_intro/C++STYLE
index 90dc879b1d1..87f53d0ea05 100644
--- a/libstdc++-v3/docs/html/17_intro/C++STYLE
+++ b/libstdc++-v3/docs/html/17_intro/C++STYLE
@@ -210,7 +210,7 @@ Notable areas of divergence from what may be previous local practice
All start with the name of the function where the exception is
thrown, and then (optional) descriptive text is added. Example:
- __throw_logic_error("basic_string::_S_construct NULL not valid");
+ __throw_logic_error(__N("basic_string::_S_construct NULL not valid"));
Reason: The verbose terminate handler prints out exception::what(),
as well as the typeinfo for the thrown exception. As this is the
diff --git a/libstdc++-v3/docs/html/18_support/howto.html b/libstdc++-v3/docs/html/18_support/howto.html
index 7344c95ebd2..070d3c33008 100644
--- a/libstdc++-v3/docs/html/18_support/howto.html
+++ b/libstdc++-v3/docs/html/18_support/howto.html
@@ -42,8 +42,9 @@
<li><a href="#1">Types</a></li>
<li><a href="#2">Implementation properties</a></li>
<li><a href="#3">Start and Termination</a></li>
- <li><a href="#4">Dynamic memory management</a></li>
- <li><a href="#5">RTTI, the ABI, and demangling</a></li>
+ <li><a href="#4">Verbose <code>terminate</code></a></li>
+ <li><a href="#5">Dynamic memory management</a></li>
+ <li><a href="#6">RTTI, the ABI, and demangling</a></li>
</ul>
<hr />
@@ -216,10 +217,85 @@
</p>
<hr />
-<h2><a name="4">Dynamic memory management</a></h2>
- <p>There are six flavors each of <code>new</code> and <code>delete</code>, so
- make certain that you're using the right ones! Here are quickie
- descriptions of <code>new</code>:
+<h2><a name="4">Verbose <code>terminate</code></a></h2>
+ <p>If you are having difficulty with uncaught exceptions and want a
+ little bit of help debugging the causes of the core dumps, you can
+ make use of a GNU extension in GCC 3.1 and later:
+ </p>
+ <pre>
+ #include &lt;exception&gt;
+
+ int main()
+ {
+ std::set_terminate(__gnu_cxx::__verbose_terminate_handler);
+ ...
+ throw <em>anything</em>;
+ }</pre>
+ <p>The <code> __verbose_terminate_handler </code> function obtains the name
+ of the current exception, attempts to demangle it, and prints it to
+ stderr. If the exception is derived from <code> std::exception </code>
+ then the output from <code>what()</code> will be included.
+ </p>
+ <p>Any replacement termination function is required to kill the program
+ without returning; this one calls abort.
+ </p>
+ <p>For example:
+ </p>
+ <pre>
+ #include &lt;exception&gt;
+ #include &lt;stdexcept&gt;
+
+ struct argument_error : public std::runtime_error
+ {
+ argument_error(const std::string& s): std::runtime_error(s) { }
+ };
+
+ int main(int argc)
+ {
+ std::set_terminate(__gnu_cxx::__verbose_terminate_handler);
+ if (argc &gt; 5)
+ throw argument_error(&quot;argc is greater than 5!&quot;);
+ else
+ throw argc;
+ }
+ </pre>
+ <p>In GCC 3.1 and later, this gives
+ </p>
+ <pre>
+ % ./a.out
+ terminate called after throwing a `int'
+ Aborted
+ % ./a.out f f f f f f f f f f f
+ terminate called after throwing an instance of `argument_error'
+ what(): argc is greater than 5!
+ Aborted
+ %</pre>
+ <p>The 'Aborted' line comes from the call to abort(), of course.
+ </p>
+ <p><strong>UPDATE:</strong> Starting with GCC 3.4, this is the default
+ termination handler; nothing need be done to use it. To go back to
+ the previous &quot;silent death&quot; method, simply include
+ <code>&lt;exception&gt;</code> and <code>&lt;cstdlib&gt;</code>,
+ and call
+ </p>
+ <pre>
+ std::set_terminate(std::abort);</pre>
+ <p>Return <a href="#top">to top of page</a> or
+ <a href="../faq/index.html">to the FAQ</a>.
+ </p>
+
+<p>
+ This function will attempt to write to stderr. If your application
+ closes stderr or redirects it to an inappropriate location,
+ <code>__verbose_terminate_handler</code> will behave in an
+ unspecified manner.
+</p>
+
+<hr />
+<h2><a name="5">Dynamic memory management</a></h2>
+ <p>There are six flavors each of <code>new</code> and
+ <code>delete</code>, so make certain that you're using the right
+ ones! Here are quickie descriptions of <code>new</code>:
</p>
<ul>
<li>single object form, throwing a <code>bad_alloc</code> on errors;
@@ -277,7 +353,7 @@
</p>
<hr />
-<h2><a name="5">RTTI, the ABI, and demangling</a></h2>
+<h2><a name="6">RTTI, the ABI, and demangling</a></h2>
<p>If you have read the <a href="../documentation.html#4">source
documentation</a> for <code> namespace abi </code> then you are aware
of the cross-vendor C++ ABI which we use. One of the exposed
diff --git a/libstdc++-v3/docs/html/19_diagnostics/howto.html b/libstdc++-v3/docs/html/19_diagnostics/howto.html
index 2b5cd22850a..4cd2dc78371 100644
--- a/libstdc++-v3/docs/html/19_diagnostics/howto.html
+++ b/libstdc++-v3/docs/html/19_diagnostics/howto.html
@@ -38,7 +38,6 @@
<li><a href="#1">Adding data to exceptions</a></li>
<li><a href="#2">Exception class hierarchy diagram</a></li>
<li><a href="#3">Concept checkers -- <strong>new and improved!</strong></a></li>
- <li><a href="#4">Verbose <code>terminate</code></a></li>
</ul>
<hr />
@@ -121,75 +120,6 @@
<a href="../faq/index.html">to the FAQ</a>.
</p>
-<hr />
-<h2><a name="4">Verbose <code>terminate</code></a></h2>
- <p>If you are having difficulty with uncaught exceptions and want a
- little bit of help debugging the causes of the core dumps, you can
- make use of a GNU extension in GCC 3.1 and later:
- </p>
- <pre>
- #include &lt;exception&gt;
-
- int main()
- {
- std::set_terminate (__gnu_cxx::__verbose_terminate_handler);
- ...
- throw <em>anything</em>;
- }</pre>
- <p>The <code> __verbose_terminate_handler </code> function obtains the name
- of the current exception, attempts to demangle it, and prints it to
- stderr. If the exception is derived from <code> std::exception </code>
- then the output from <code>what()</code> will be included.
- </p>
- <p>Any replacement termination function is required to kill the program
- without returning; this one calls abort.
- </p>
- <p>For example:
- </p>
- <pre>
- #include &lt;exception&gt;
- #include &lt;stdexcept&gt;
-
- struct BLARGH : std::runtime_error
- {
- BLARGH (const string&amp; whatarg)
- : std::runtime_error(whatarg) { }
- };
-
- int main (int argc)
- {
- std::set_terminate (__gnu_cxx::__verbose_terminate_handler);
- if (argc &gt; 5)
- throw BLARGH(&quot;argc is greater than 5!&quot;);
- else
- throw argc;
- }</pre>
- <p>In GCC 3.1 and later, this gives
- </p>
- <pre>
- % ./a.out
- terminate called after throwing a `int'
- Aborted
- % ./a.out f f f f f f f f f f f
- terminate called after throwing a `BLARGH'
- what(): argc is greater than 5!
- Aborted
- %</pre>
- <p>The 'Aborted' line comes from the call to abort(), of course.
- </p>
- <p><strong>UPDATE:</strong> Starting with GCC 3.4, this is the default
- termination handler; nothing need be done to use it. To go back to
- the previous &quot;silent death&quot; method, simply include
- <code>&lt;exception&gt;</code> and <code>&lt;cstdlib&gt;</code>,
- and call
- </p>
- <pre>
- std::set_terminate (std::abort);</pre>
- <p>Return <a href="#top">to top of page</a> or
- <a href="../faq/index.html">to the FAQ</a>.
- </p>
-
-
<!-- ####################################################### -->
<hr />
diff --git a/libstdc++-v3/docs/html/20_util/allocator.html b/libstdc++-v3/docs/html/20_util/allocator.html
new file mode 100644
index 00000000000..07e8e2dd909
--- /dev/null
+++ b/libstdc++-v3/docs/html/20_util/allocator.html
@@ -0,0 +1,472 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="AUTHOR" content="pme@gcc.gnu.org (Phil Edwards) and bkoz@gcc.gnu.org (Benjamin Kosnik)" />
+ <meta name="KEYWORDS" content="c++, libstdc++, g++, allocator, memory" />
+ <meta name="DESCRIPTION" content="Allocators and allocation" />
+ <meta name="GENERATOR" content="emacs and ten fingers" />
+ <title>Allocators and allocation</title>
+<link rel="StyleSheet" href="../lib3styles.css" type="text/css" />
+<link rel="Start" href="../documentation.html" type="text/html"
+ title="GNU C++ Standard Library" />
+<link rel="Bookmark" href="howto.html" type="text/html"
+ title="General Utilities" />
+<link rel="Copyright" href="../17_intro/license.html" type="text/html" />
+</head>
+<body>
+
+<h1 class="centered"><a name="top">Allocators and allocation</a></h1>
+
+<p class="fineprint"><em>
+ The latest version of this document is always available at
+ <a href="http://gcc.gnu.org/onlinedocs/libstdc++/20_util/allocator.html">
+ http://gcc.gnu.org/onlinedocs/libstdc++/20_util/allocator.html</a>.
+</em></p>
+
+<p><em>
+ To the <a href="http://gcc.gnu.org/libstdc++/">libstdc++-v3 homepage</a>.
+</em></p>
+
+<!-- ####################################################### -->
+<hr />
+<p> The C++ Standard encapsulates memory management characteristics
+ for strings, container classes, and parts of iostreams in a
+ template class called <code>std::allocator</code>.
+</p>
+
+<h3 class="left">
+ <a name="standard_requirements">Standard requirements</a>
+</h3>
+ <p>The C++ standard only gives a few directives in this area:
+ </p>
+ <ul>
+ <li>When you add elements to a container, and the container must allocate
+ more memory to hold them, the container makes the request via its
+ <code>Allocator</code> template parameter. This includes adding
+ chars to the string class, which acts as a regular STL container
+ in this respect.
+ </li>
+ <li>The default <code>Allocator</code> of every container-of-T is
+ <code>std::allocator&lt;T&gt;</code>.
+ </li>
+ <li>The interface of the <code>allocator&lt;T&gt;</code> class is
+ extremely simple. It has about 20 public declarations (nested
+ typedefs, member functions, etc), but the two which concern us most
+ are:
+ <pre>
+ T* allocate (size_type n, const void* hint = 0);
+ void deallocate (T* p, size_type n);</pre>
+ (This is a simplification; the real signatures use nested typedefs.)
+ The <code>&quot;n&quot;</code> arguments in both those functions is a
+ <em>count</em> of the number of T's to allocate space for,
+ <em>not their total size</em>.
+ </li>
+ <li>&quot;The storage is obtained by calling
+ <code>::operator new(size_t)</code>, but it is unspecified when or
+ how often this function is called. The use of <code>hint</code>
+ is unspecified, but intended as an aid to locality if an
+ implementation so desires.&quot; [20.4.1.1]/6
+ </li>
+ </ul>
+
+ <p> Complete details cam be found in the C++ standard, look in
+ [20.4 Memory].
+ </p>
+
+<h3 class="left">
+ <a name="probs_possibilities">Problems and Possibilities</a>
+</h3>
+ <p>The easiest way of fulfilling the requirements is to call operator new
+ each time a container needs memory, and to call operator delete each
+ time the container releases memory. <strong>BUT</strong>
+ <a href="http://gcc.gnu.org/ml/libstdc++/2001-05/msg00105.html">this
+ method is horribly slow</a>.
+ </p>
+ <p>Or we can keep old memory around, and reuse it in a pool to save time.
+ The old libstdc++-v2 used a memory pool, and so do we. As of 3.0,
+ <a href="http://gcc.gnu.org/ml/libstdc++/2001-05/msg00136.html">it's
+ on by default</a>. The pool is shared among all the containers in the
+ program: when your program's std::vector&lt;int&gt; gets cut in half
+ and frees a bunch of its storage, that memory can be reused by the
+ private std::list&lt;WonkyWidget&gt; brought in from a KDE library
+ that you linked against. And we don't have to call operators new and
+ delete to pass the memory on, either, which is a speed bonus.
+ <strong>BUT</strong>...
+ </p>
+ <p>What about threads? No problem: in a threadsafe environment, the
+ memory pool is manipulated atomically, so you can grow a container in
+ one thread and shrink it in another, etc. <strong>BUT</strong> what
+ if threads in libstdc++-v3 aren't set up properly?
+ <a href="../faq/index.html#5_6">That's been answered already</a>.
+ </p>
+ <p><strong>BUT</strong> what if you want to use your own allocator? What
+ if you plan on using a runtime-loadable version of malloc() which uses
+ shared telepathic anonymous mmap'd sections serializable over a
+ network, so that memory requests <em>should</em> go through malloc?
+ And what if you need to debug it?
+ </p>
+
+<h3 class="left">
+ <a name="stdallocator">Implementation details of <code>std::allocator</code></a>
+</h3>
+ <p> The implementation of <code> std::allocator</code> has continued
+ to evolve through successive releases. Here's a brief history.
+ </p>
+
+<h5 class="left">
+ <a name="30allocator"> 3.0, 3.1, 3.2, 3.3 </a>
+</h5>
+ <p> During this period, all allocators were written to the SGI
+ style, and all STL containers expected this interface. This
+ interface had a traits class called <code>_Alloc_traits</code> that
+ attempted to provide more information for compile-time allocation
+ selection and optimization. This traits class had another allocator
+ wrapper, <code>__simple_alloc&lt;T,A&gt;</code>, which was a
+ wrapper around another allocator, A, which itself is an allocator
+ for instances of T. But wait, there's more:
+ <code>__allocator&lt;T,A&gt;</code> is another adapter. Many of
+ the provided allocator classes were SGI style: such classes can be
+ changed to a conforming interface with this wrapper:
+ <code>__allocator&lt;T, __alloc&gt;</code> is thus the same as
+ <code>allocator&lt;T&gt;</code>.
+ </p>
+
+ <p> The class <code>std::allocator</code> use the typedef
+ <code>__alloc</code> to select an underlying allocator that
+ satisfied memory allocation requests. The selection of this
+ underlying allocator was not user-configurable.
+ </p>
+
+<h5 class="left">
+ <a name="34allocator"> 3.4 </a>
+</h5>
+ <p> For this and later releases, the only allocator interface that
+ is support is the standard C++ interface. As such, all STL
+ containers have been adjusted, and all external allocators have
+ been modified to support this change. Because of this,
+ <code>__simple_alloc, __allocator, __alloc, </code> and <code>
+ _Alloc_traits</code> have all been removed.
+ </p>
+
+ <p> The class <code>std::allocator</code> just has typedef,
+ constructor, and rebind members. It inherits from one of the
+ high-speed extension allocators, covered below. Thus, all
+ allocation and deallocation depends on the base class.
+ </p>
+
+ <p> The base class that <code>std::allocator</code> is derived from
+ is not user-configurable.
+ </p>
+
+<h5 class="left">
+ <a name="benchmarks"> How the default allocation strategy is selected.</a>
+</h5>
+ <p> It's difficult to pick an allocation strategy that will provide
+ maximum utility, without excessively penalizing some behavior. In
+ fact, it's difficult just deciding which typical actions to measure
+ for speed.
+ </p>
+
+ <p> Three synthetic benchmarks have been created that provide data
+ that is used to compare different C++ allocators. These tests are:
+ </p>
+
+ <ul>
+ <li>Insertion. Over multiple iterations, various STL container
+ objects have elements inserted to some maximum amount. A variety
+ of allocators are tested.
+ Test source <a
+ href="http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc%2b%2b-v3/testsuite/performance/20_util/allocator/insert.cc?only_with_tag=MAIN">here.</a>
+ </li>
+
+ <li>Insertion, clear, and re-insertion in a multi-threaded
+ environment. Over multiple iterations, several threads are
+ started that insert elements into a STL container, then assign a
+ null instance of the same type to clear memory, and then
+ re-insert the same number of elements. Several STL containers and
+ multiple allocators are tested. This test shows the ability of
+ the allocator to reclaim memory on a pre-thread basis, as well as
+ measuring thread contention for memory resources.
+ Test source
+ <a href="http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc%2b%2b-v3/testsuite/performance/20_util/allocator/insert_insert.cc">
+ here.</a>
+ </li>
+
+ <li>A threaded producer/consumer model.
+ Test source
+ <a href="http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc%2b%2b-v3/testsuite/performance/20_util/allocator/producer_consumer.cc">
+ here.</a>
+ </li>
+ </ul>
+
+<h5 class="left">
+ <a name="forcenew"> Disabling memory caching.</a>
+</h5>
+ <p> In use, <code>std::allocator</code> may allocate and deallocate
+ using implementation-specified strategies and heuristics. Because of
+ this, every call to an allocator object's <code> allocate</code>
+ member function may not actually call the global operator new. This
+ situation is also duplicated for calls to the <code>
+ deallocate</code> member function.
+ </p>
+
+ <p> This can be confusing.
+ </p>
+
+ <p> In particular, this can make debugging memory errors more
+ difficult, especially when using third party tools like valgrind or
+ debug versions of <code> new</code>.
+ </p>
+
+ <p> There are various ways to solve this problem. One would be to
+ use a custom allocator that just called operators <code> new
+ </code> and <code> delete</code> directly, for every
+ allocation. (See include/ext/new_allocator.h, for instance.)
+ However, that option would involve changing source code to use the a
+ non-default allocator. Another option is to force the default
+ allocator to remove caching and pools, and to directly allocate
+ with every call of <code> allocate</code> and directly deallocate
+ with every call of <code> deallocate</code>, regardless of
+ efficiency. As it turns out, this last option is available,
+ although the exact mechanism has evolved with time.
+ </p>
+
+ <p> For GCC releases from 2.95 through the 3.1 series, defining
+ <code>__USE_MALLOC</code> on the gcc command line would change the
+ default allocation strategy to instead use <code> malloc</code> and
+ <code> free</code>. See
+ <a href="../23_containers/howto.html#3">this note</a>
+ for details as to why this was something needing improvement.
+ </p>
+
+ <p>Starting with GCC 3.2, and continued in the 3.3 series, to
+ globally disable memory caching within the library for the
+ default allocator, merely set GLIBCPP_FORCE_NEW (at this time,
+ with any value) in the system's environment before running the
+ program. If your program crashes with GLIBCPP_FORCE_NEW in the
+ environment, it likely means that you linked against objects
+ built against the older library. Code to support this extension
+ is fully compatible with 3.2 code if GLIBCPP_FORCE_NEW is not in
+ the environment.
+ </p>
+
+ <p> As it turns out, the 3.4 code base continues to use this
+ mechanism, only the environment variable has been changed to
+ GLIBCXX_FORCE_NEW.
+ </p>
+
+<h3 class="left">
+ <a name="ext_allocators">Other allocators</a>
+</h3>
+ <p> Several other allocators are provided as part of this
+ implementation. The location of the extension allocators and their
+ names have changed, but in all cases, functionality is
+ equivalent. Starting with gcc-3.4, all extension allocators are
+ standard style. Before this point, SGI style was the norm. Because of
+ this, the number of template arguments also changed. Here's a simple
+ chart to track the changes.
+ </p>
+
+<table title="extension allocators" border="1">
+ <tr>
+ <th>Allocator (3.4)</th>
+ <th>Header (3.4)</th>
+ <th>Allocator (3.[0-3])</th>
+ <th>Header (3.[0-3])</th>
+ </tr>
+ <tr>
+ <td>__gnu_cxx::new_allocator&lt;T&gt;</td>
+ <td>&lt;ext/new_allocator.h&gt;</td>
+ <td>std::__new_alloc</td>
+ <td>&lt;memory&gt;</td>
+ </tr>
+ <tr>
+ <td>__gnu_cxx::malloc_allocator&lt;T&gt;</td>
+ <td>&lt;ext/malloc_allocator.h&gt;</td>
+ <td>std::__malloc_alloc_template&lt;int&gt;</td>
+ <td>&lt;memory&gt;</td>
+ </tr>
+ <tr>
+ <td>__gnu_cxx::debug_allocator&lt;T&gt;</td>
+ <td>&lt;ext/debug_allocator.h&gt;</td>
+ <td>std::debug_alloc&lt;T&gt;</td>
+ <td>&lt;memory&gt;</td>
+ </tr>
+ <tr>
+ <td>__gnu_cxx::__pool_alloc&lt;bool, int&gt;</td>
+ <td>&lt;ext/pool_allocator.h&gt;</td>
+ <td>std::__default_alloc_template&lt;bool,int&gt;</td>
+ <td>&lt;memory&gt;</td>
+ </tr>
+ <tr>
+ <td>__gnu_cxx::__mt_alloc&lt;T&gt;</td>
+ <td>&lt;ext/mt_allocator.h&gt;</td>
+ <td></td>
+ <td></td>
+ </tr>
+</table>
+
+ <p>More details on each of these allocators follows. </p>
+ <ul>
+ <li><code>new_allocator</code>
+ <p>Simply wraps <code>::operator new</code>
+ and <code>::operator delete</code>.
+ </p>
+ </li>
+ <li><code>malloc_allocator</code>
+ <p>Simply wraps
+ <code>malloc</code> and <code>free</code>. There is also a hook
+ for an out-of-memory handler (for new/delete this is taken care of
+ elsewhere).
+ </p>
+ </li>
+ <li><code>debug_allocator</code>
+ <p> A wrapper around an
+ arbitrary allocator A. It passes on slightly increased size
+ requests to A, and uses the extra memory to store size information.
+ When a pointer is passed to <code>deallocate()</code>, the stored
+ size is checked, and assert() is used to guarantee they match.
+ </p>
+ </li>
+ <li><code>__pool_alloc</code>
+ <p> A high-performance, single pool allocator. The reusable
+ memory is shared among identical instantiations of this type.
+ It calls through <code>::operator new</code> to obtain new memory
+ when its lists run out. If a client container requests a block
+ larger than a certain threshold size, then the pool is bypassed,
+ and the allocate/deallocate request is passed to
+ <code>::operator new</code> directly. </p>
+
+ <p> This class take a boolean template parameter, called
+ <code>thr</code>, and an integer template parameter, called
+ <code>inst</code>.
+ </p>
+ <p>The <code>inst</code> number is used to track additional memory
+ pools. The point of the number is to allow multiple
+ instantiations of the classes without changing the semantics at
+ all. All three of
+ </p>
+
+ <pre>
+ typedef __pool_alloc&lt;true,0&gt; normal;
+ typedef __pool_alloc&lt;true,1&gt; private;
+ typedef __pool_alloc&lt;true,42&gt; also_private;</pre>
+ <p>behave exactly the same way. However, the memory pool for each type
+ (and remember that different instantiations result in different types)
+ remains separate.
+ </p>
+ <p>The library uses <strong>0</strong> in all its instantiations. If you
+ wish to keep separate free lists for a particular purpose, use a
+ different number.
+ </p>
+ <p>The <code>thr</code> boolean determines whether the pool should
+ be manipulated atomically or not. When thr=true, the allocator
+ is is threadsafe, while thr=false, and is slightly faster but
+ unsafe for multiple threads.
+ </p>
+ <p>(Note that the GCC thread abstraction layer allows us to provide safe
+ zero-overhead stubs for the threading routines, if threads were
+ disabled at configuration time.)
+ </p>
+
+ </li>
+
+ <li><code>__mt_alloc</code>
+ <p>A high-performance
+ fixed-size allocator. It has its own documentation, found <a
+ href="../ext/mt_allocator.html">here</a>.
+ </p>
+ </li>
+ </ul>
+
+
+<h3 class="left">
+ <a name="using_custom_allocators">Using a specific allocator</a>
+</h3>
+ <p>You can specify different memory management schemes on a
+ per-container basis, by overriding the default
+ <code>Allocator</code> template parameter. For example, an easy
+ (but non-portable) method of specifying that only malloc/free
+ should be used instead of the default node allocator is:
+ </p>
+ <pre>
+ std::list &lt;int, __gnu_cxx::malloc_allocator&lt;int&gt; &gt; malloc_list;</pre>
+ Likewise, a debugging form of whichever allocator is currently in use:
+ <pre>
+ std::deque &lt;int, __gnu_cxx::debug_allocator&lt;std::allocator&lt;int&gt; &gt; &gt; debug_deque;</pre>
+
+
+<h3 class="left">
+ <a name="custom_allocators">Writing custom allocators</a>
+</h3>
+ <p> Writing a portable C++ allocator would dictate that the
+ interface would look much like the one specified for <code>
+ std::allocator</code>. Additional member functions, but not
+ subtractions, would be permissible.
+ </p>
+
+ <p> Probably the best place to start would be to copy one of the
+ extension allocators already shipped with libstdc++: say, <code>
+ new_allocator </code>.
+ </p>
+
+
+<h3 class="left">
+ <a name="biblio">Bibliography / Further Reading</a>
+</h3>
+ <p>
+ ISO/IEC 14882:1998 Programming languages - C++ [20.4 Memory]
+ </p>
+
+ <p>
+ Austern, Matt, C/C++ Users Journal.
+ <a href="http://www.cuj.com/documents/s=8000/cujcexp1812austern/">The Standard Librarian: What Are Allocators Good
+ For?</a>
+ </p>
+
+ <p>
+ Berger, Emery,
+ <a href="http://www.cs.umass.edu/~emery/hoard/"> The Hoard memory allocator </a>
+ </p>
+
+ <p>
+ Berger, Emery with Ben Zorn & Kathryn McKinley, OOPSLA 2002
+ <a href="http://www.cs.umass.edu/~emery/pubs/berger-oopsla2002.pdf">Reconsidering Custom Memory Allocation</a>
+ </p>
+
+ <p>
+ Kreft, Klaus and Angelika Langer, C++ Report, June 1998
+ <a href="http://www.langer.camelot.de/Articles/C++Report/Allocators/Allocators.html">Allocator Types</a>
+ </p>
+
+ <p>
+ Stroustrup, Bjarne, 19.4 Allocators, The C++ Programming
+ Language, Special Edition, Addison Wesley, Inc. 2000
+ </p>
+
+ <p>
+ Yen, Felix, <a href="http://home.earthlink.net/~brimar/yalloc/">Yalloc: A Recycling C++ Allocator</a>
+ </p>
+
+<hr />
+<p>Return <a href="#top">to the top of the page</a> or
+ <a href="http://gcc.gnu.org/libstdc++/">to the libstdc++ homepage</a>.
+</p>
+
+
+<!-- ####################################################### -->
+
+<hr />
+<p class="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
+Comments and suggestions are welcome, and may be sent to
+<a href="mailto:libstdc++@gcc.gnu.org">the libstdc++ mailing list</a>.
+</em></p>
+
+
+</body>
+</html>
diff --git a/libstdc++-v3/docs/html/20_util/howto.html b/libstdc++-v3/docs/html/20_util/howto.html
index 13d0c8e0855..4c404595a47 100644
--- a/libstdc++-v3/docs/html/20_util/howto.html
+++ b/libstdc++-v3/docs/html/20_util/howto.html
@@ -18,6 +18,8 @@
title="Diagnostics" />
<link rel="Next" href="../21_strings/howto.html" type="text/html"
title="Strings" />
+<link rel="Bookmark" href="allocator.html" type="text/html"
+ title="Allocators and allocation" />
<link rel="Copyright" href="../17_intro/license.html" type="text/html" />
<link rel="Help" href="../faq/index.html" type="text/html" title="F.A.Q." />
</head>
@@ -219,7 +221,7 @@
<hr />
<h2><a name="5">Memory allocators</a></h2>
<p>The available free store (&quot;heap&quot;) management classes are
- described <a href="../ext/howto.html">here</a>.
+ described <a href="allocator.html">here</a>.
</p>
<p>Return <a href="#top">to top of page</a> or
<a href="../faq/index.html">to the FAQ</a>.
diff --git a/libstdc++-v3/docs/html/configopts.html b/libstdc++-v3/docs/html/configopts.html
index 17ccaf9ae91..6a2e214b39e 100644
--- a/libstdc++-v3/docs/html/configopts.html
+++ b/libstdc++-v3/docs/html/configopts.html
@@ -124,6 +124,23 @@ options</a></h1>
</p>
</dd>
+ <dt><code>--enable-libstdcxx-allocator </code></dt>
+ <dd><p>This is an abbreviated form of
+ <code>'--enable-libstdcxx-allocator=auto'</code> (described
+ next). This option can change the library ABI.
+ </p>
+ </dd>
+
+ <dt><code>--enable-libstdcxx-allocator=OPTION </code></dt>
+ <dd><p>Select a target-specific underlying std::allocator. The
+ choices are 'new' to specify a wrapper for new, 'malloc' to
+ specify a wrapper for malloc, 'mt' for a fixed power of two allocator
+ (More <a href="http://sources.redhat.com/glibc/">info</a>) or
+ 'bitmap' for a bitmap allocator. This option can change the
+ library ABI.
+ </p>
+ </dd>
+
<dt><code>--enable-cheaders=OPTION </code></dt>
<dd><p>This allows the user to define what kind of C headers are
used. Options are: c, c_std, and c_shadow. These correspond
diff --git a/libstdc++-v3/docs/html/documentation.html b/libstdc++-v3/docs/html/documentation.html
index a4be76ed453..7819955b66b 100644
--- a/libstdc++-v3/docs/html/documentation.html
+++ b/libstdc++-v3/docs/html/documentation.html
@@ -125,8 +125,9 @@
<li><a href="18_support/howto.html#1">Types</a></li>
<li><a href="18_support/howto.html#2">Implementation properties</a></li>
<li><a href="18_support/howto.html#3">Start and Termination</a></li>
- <li><a href="18_support/howto.html#4">Dynamic memory management</a></li>
- <li><a href="18_support/howto.html#5">RTTI, the ABI, and demangling</a></li>
+ <li><a href="18_support/howto.html#4">Verbose <code>terminate</code></a></li>
+ <li><a href="18_support/howto.html#5">Dynamic memory management</a></li>
+ <li><a href="18_support/howto.html#6">RTTI, the ABI, and demangling</a></li>
</ul>
</li>
@@ -135,7 +136,6 @@
<li><a href="19_diagnostics/howto.html#1">Adding data to exceptions</a></li>
<li><a href="19_diagnostics/howto.html#2">Exception class hierarchy diagram</a></li>
<li><a href="19_diagnostics/howto.html#3">Concept checkers -- <strong>new and improved!</strong></a></li>
- <li><a href="19_diagnostics/howto.html#4">Verbose <code>terminate</code></a></li>
</ul>
</li>
@@ -226,8 +226,7 @@
<ul>
<li><a href="ext/howto.html#1">Ropes and trees and hashes, oh my!</a></li>
<li><a href="ext/howto.html#2">Added members and types</a></li>
- <li><a href="ext/howto.html#3">Allocators (versions 3.0, 3.1, 3.2, 3.3)</a></li>
- <li><a href="ext/howto.html#6">Allocators (version 3.4)</a></li>
+ <li><a href="ext/mt_allocator.html"><code>__mt_alloc</code> </a></li>
<li><a href="ext/howto.html#4">Compile-time checks</a></li>
<li><a href="ext/howto.html#5">LWG Issues</a></li>
<li><a href="ext/../18_support/howto.html#5">Demangling</a></li>
diff --git a/libstdc++-v3/docs/html/ext/ballocator_doc.txt b/libstdc++-v3/docs/html/ext/ballocator_doc.txt
new file mode 100644
index 00000000000..2173b618f4f
--- /dev/null
+++ b/libstdc++-v3/docs/html/ext/ballocator_doc.txt
@@ -0,0 +1,374 @@
+ BITMAPPED ALLOCATOR
+ ===================
+
+2004-03-11 Dhruv Matani <dhruvbird@HotPOP.com>
+
+---------------------------------------------------------------------
+
+As this name suggests, this allocator uses a bit-map to keep track of
+the used and unused memory locations for it's book-keeping purposes.
+
+This allocator will make use of 1 single bit to keep track of whether
+it has been allocated or not. A bit 1 indicates free, while 0
+indicates allocated. This has been done so that you can easily check a
+collection of bits for a free block. This kind of Bitmapped strategy
+works best for single object allocations, and with the STL type
+parameterized allocators, we do not need to choose any size for the
+block which will be represented by a single bit. This will be the size
+of the parameter around which the allocator has been
+parameterized. Thus, close to optimal performance will result. Hence,
+this should be used for node based containers which call the allocate
+function with an argument of 1.
+
+The bitmapped allocator's internal pool is exponentially
+growing. Meaning that internally, the blocks acquired from the Free
+List Store will double every time the bitmapped allocator runs out of
+memory.
+
+--------------------------------------------------------------------
+
+The macro __GTHREADS decides whether to use Mutex Protection around
+every allocation/deallocation. The state of the macro is picked up
+automatically from the gthr abstration layer.
+
+----------------------------------------------------------------------
+
+What is the Free List Store?
+----------------------------
+
+The Free List Store (referred to as FLS for the remaining part of this
+document) is the Global memory pool that is shared by all instances of
+the bitmapped allocator instantiated for any type. This maintains a
+sorted order of all free memory blocks given back to it by the
+bitmapped allocator, and is also responsible for giving memory to the
+bitmapped allocator when it asks for more.
+
+Internally, there is a Free List threshold which indicates the Maximum
+number of free lists that the FLS can hold internally
+(cache). Currently, this value is set at 64. So, if there are more
+than 64 free lists coming in, then some of them will be given back to
+the OS using operator delete so that at any given time the Free List's
+size does not exceed 64 entries. This is done because a Binary Search
+is used to locate an entry in a free list when a request for memory
+comes along. Thus, the run-time complexity of the search would go up
+given an increasing size, for 64 entries however, lg(64) == 6
+comparisons are enough to locate the correct free list if it exists.
+
+Suppose the free list size has reached it's threshold, then the
+largest block from among those in the list and the new block will be
+selected and given back to the OS. This is done because it reduces
+external fragmentation, and allows the OS to use the larger blocks
+later in an orderly fashion, possibly merging them later. Also, on
+some systems, large blocks are obtained via calls to mmap, so giving
+them back to free system resources becomes most important.
+
+The function _S_should_i_give decides the policy that determines
+whether the current block of memory should be given to the allocator
+for the request that it has made. That's because we may not always
+have exact fits for the memory size that the allocator requests. We do
+this mainly to prevent external fragmentation at the cost of a little
+internal fragmentation. Now, the value of this internal fragmentation
+has to be decided by this function. I can see 3 possibilities right
+now. Please add more as and when you find better strategies.
+
+1. Equal size check. Return true only when the 2 blocks are of equal
+ size.
+
+2. Difference Threshold: Return true only when the _block_size is
+ greater than or equal to the _required_size, and if the _BS is >
+ _RS by a difference of less than some THRESHOLD value, then return
+ true, else return false.
+
+3. Percentage Threshold. Return true only when the _block_size is
+ greater than or equal to the _required_size, and if the _BS is >
+ _RS by a percentage of less than some THRESHOLD value, then return
+ true, else return false.
+
+Currently, (3) is being used with a value of 36% Maximum wastage per
+Super Block.
+
+--------------------------------------------------------------------
+
+1) What is a super block? Why is it needed?
+
+ A super block is the block of memory acquired from the FLS from
+ which the bitmap allocator carves out memory for single objects and
+ satisfies the user's requests. These super blocks come in sizes that
+ are powers of 2 and multiples of 32 (_Bits_Per_Block). Yes both at
+ the same time! That's because the next super block acquired will be
+ 2 times the previous one, and also all super blocks have to be
+ multiples of the _Bits_Per_Block value.
+
+2) How does it interact with the free list store?
+
+ The super block is contained in the FLS, and the FLS is responsible
+ for getting / returning Super Bocks to and from the OS using
+ operator new as defined by the C++ standard.
+
+---------------------------------------------------------------------
+
+How does the allocate function Work?
+------------------------------------
+
+The allocate function is specialized for single object allocation
+ONLY. Thus, ONLY if n == 1, will the bitmap_allocator's specialized
+algorithm be used. Otherwise, the request is satisfied directly by
+calling operator new.
+
+Suppose n == 1, then the allocator does the following:
+
+1. Checks to see whether the a free block exists somewhere in a region
+ of memory close to the last satisfied request. If so, then that
+ block is marked as allocated in the bit map and given to the
+ user. If not, then (2) is executed.
+
+2. Is there a free block anywhere after the current block right upto
+ the end of the memory that we have? If so, that block is found, and
+ the same procedure is applied as above, and returned to the
+ user. If not, then (3) is executed.
+
+3. Is there any block in whatever region of memory that we own free?
+ This is done by checking (a) The use count for each super block,
+ and if that fails then (b) The individual bit-maps for each super
+ block. Note: Here we are never touching any of the memory that the
+ user will be given, and we are confining all memory accesses to a
+ small region of memory! This helps reduce cache misses. If this
+ succeeds then we apply the same procedure on that bit-map as (1),
+ and return that block of memory to the user. However, if this
+ process fails, then we resort to (4).
+
+4. This process involves Refilling the internal exponentially growing
+ memory pool. The said effect is achieved by calling _S_refill_pool
+ which does the following:
+ (a). Gets more memory from the Global Free List of the
+ Required size.
+ (b). Adjusts the size for the next call to itself.
+ (c). Writes the appropriate headers in the bit-maps.
+ (d). Sets the use count for that super-block just allocated
+ to 0 (zero).
+ (e). All of the above accounts to maintaining the basic
+ invariant for the allocator. If the invariant is
+ maintained, we are sure that all is well.
+ Now, the same process is applied on the newly acquired free blocks,
+ which are dispatched accordingly.
+
+Thus, you can clearly see that the allocate function is nothing but a
+combination of the next-fit and first-fit algorithm optimized ONLY for
+single object allocations.
+
+
+-------------------------------------------------------------------------
+
+How does the deallocate function work?
+--------------------------------------
+
+The deallocate function again is specialized for single objects ONLY.
+For all n belonging to > 1, the operator delete is called without
+further ado, and the deallocate function returns.
+
+However for n == 1, a series of steps are performed:
+
+1. We first need to locate that super-block which holds the memory
+ location given to us by the user. For that purpose, we maintain a
+ static variable _S_last_dealloc_index, which holds the index into
+ the vector of block pairs which indicates the index of the last
+ super-block from which memory was freed. We use this strategy in
+ the hope that the user will deallocate memory in a region close to
+ what he/she deallocated the last time around. If the check for
+ belongs_to succeeds, then we determine the bit-map for the given
+ pointer, and locate the index into that bit-map, and mark that bit
+ as free by setting it.
+
+2. If the _S_last_dealloc_index does not point to the memory block
+ that we're looking for, then we do a linear search on the block
+ stored in the vector of Block Pairs. This vector in code is called
+ _S_mem_blocks. When the corresponding super-block is found, we
+ apply the same procedure as we did for (1) to mark the block as
+ free in the bit-map.
+
+Now, whenever a block is freed, the use count of that particular super
+block goes down by 1. When this use count hits 0, we remove that super
+block from the list of all valid super blocks stored in the
+vector. While doing this, we also make sure that the basic invariant
+is maintained by making sure that _S_last_request and
+_S_last_dealloc_index point to valid locations within the vector.
+
+--------------------------------------------------------------------
+
+
+Data Layout for a Super Block:
+==============================
+
+Each Super Block will be of some size that is a multiple of the number
+of Bits Per Block. Typically, this value is chosen as Bits_Per_Byte X
+sizeof(unsigned int). On an X86 system, this gives the figure
+8 X 4 = 32. Thus, each Super Block will be of size 32 X Some_Value.
+This Some_Value is sizeof(value_type). For now, let it be called 'K'.
+Thus, finally, Super Block size is 32 X K bytes.
+
+This value of 32 has been chosen because each unsigned int has 32-bits
+and Maximum use of these can be made with such a figure.
+
+Consider a block of size 32 ints.
+In memory, it would look like this:
+
+---------------------------------------------------------------------
+| 136 | 0 | 4294967295 | Data-> Space for 32-ints |
+---------------------------------------------------------------------
+
+The first Columns represents the size of the Block in bytes as seen by
+the Bitmap Allocator. Internally, a global free list is used to keep
+track of the free blocks used and given back by the bitmap
+allocator. It is this Free List Store that is responsible for writing
+and managing this information. Actually the number of bytes allocated
+in this case would be: 4 + 4 + 4 + 32*4 = 140 bytes, but the first 4
+bytes are an addition by the Free List Store, so the Bitmap Allocator
+sees only 136 bytes. These first 4 bytes about which the bitmapped
+allocator is not aware hold the value 136.
+
+What do the remaining values represent?
+---------------------------------------
+
+The 2nd 4 in the expression is the sizeof(unsigned int) because the
+Bitmapped Allocator maintains a used count for each Super Block, which
+is initially set to 0 (as indicated in the diagram). This is
+incremented every time a block is removed from this super block
+(allocated), and decremented whenever it is given back. So, when the
+used count falls to 0, the whole super block will be given back to the
+Free List Store.
+
+The value 4294967295 represents the integer corresponding to the
+bit representation of all bits set: 11111111111111111111111111111111.
+
+The 3rd 4 is size of the bitmap itself, which is the size of 32-bits,
+which is 4-bytes, or 1 X sizeof(unsigned int).
+
+
+--------------------------------------------------------------------
+
+Another issue would be whether to keep the all bitmaps in a separate
+area in memory, or to keep them near the actual blocks that will be
+given out or allocated for the client. After some testing, I've
+decided to keep these bitmaps close to the actual blocks. this will
+help in 2 ways.
+
+1. Constant time access for the bitmap themselves, since no kind of
+ look up will be needed to find the correct bitmap list or it's
+ equivalent.
+
+2. And also this would preserve the cache as far as possible.
+
+So in effect, this kind of an allocator might prove beneficial from a
+purely cache point of view. But this allocator has been made to try
+and roll out the defects of the node_allocator, wherein the nodes get
+skewed about in memory, if they are not returned in the exact reverse
+order or in the same order in which they were allocated. Also, the
+new_allocator's book keeping overhead is too much for small objects
+and single object allocations, though it preserves the locality of
+blocks very well when they are returned back to the allocator.
+
+-------------------------------------------------------------------
+
+Expected overhead per block would be 1 bit in memory. Also, once
+the address of the free list has been found, the cost for
+allocation/deallocation would be negligible, and is supposed to be
+constant time. For these very reasons, it is very important to
+minimize the linear time costs, which include finding a free list
+with a free block while allocating, and finding the corresponding
+free list for a block while deallocating. Therefore, I have decided
+that the growth of the internal pool for this allocator will be
+exponential as compared to linear for node_allocator. There, linear
+time works well, because we are mainly concerned with speed of
+allocation/deallocation and memory consumption, whereas here, the
+allocation/deallocation part does have some linear/logarithmic
+complexity components in it. Thus, to try and minimize them would
+be a good thing to do at the cost of a little bit of memory.
+
+Another thing to be noted is the the pool size will double every time
+the internal pool gets exhausted, and all the free blocks have been
+given away. The initial size of the pool would be sizeof(unsigned
+int)*8 which is the number of bits in an integer, which can fit
+exactly in a CPU register. Hence, the term given is exponential growth
+of the internal pool.
+
+---------------------------------------------------------------------
+
+After reading all this, you may still have a few questions about the
+internal working of this allocator, like my friend had!
+
+Well here are the exact questions that he posed:
+
+1) The "Data Layout" section is cryptic. I have no idea of what you
+ are trying to say. Layout of what? The free-list? Each bitmap? The
+ Super Block?
+
+ The layout of a Super Block of a given size. In the example, a super
+ block of size 32 X 1 is taken. The general formula for calculating
+ the size of a super block is 32*sizeof(value_type)*2^n, where n
+ ranges from 0 to 32 for 32-bit systems.
+
+2) And since I just mentioned the term `each bitmap', what in the
+ world is meant by it? What does each bitmap manage? How does it
+ relate to the super block? Is the Super Block a bitmap as well?
+
+ Good question! Each bitmap is part of a Super Block which is made up
+ of 3 parts as I have mentioned earlier. Re-iterating, 1. The use
+ count, 2. The bit-map for that Super Block. 3. The actual memory
+ that will be eventually given to the user. Each bitmap is a multiple
+ of 32 in size. If there are 32*(2^3) blocks of single objects to be
+ given, there will be '32*(2^3)' bits present. Each 32 bits managing
+ the allocated / free status for 32 blocks. Since each unsigned int
+ contains 32-bits, one unsigned int can manage upto 32 blocks'
+ status. Each bit-map is made up of a number of unsigned ints, whose
+ exact number for a super-block of a given size I have just
+ mentioned.
+
+3) How do the allocate and deallocate functions work in regard to
+ bitmaps?
+
+ The allocate and deallocate functions manipulate the bitmaps and have
+ nothing to do with the memory that is given to the user. As I have
+ earlier mentioned, a 1 in the bitmap's bit field indicates free,
+ while a 0 indicates allocated. This lets us check 32 bits at a time
+ to check whether there is at lease one free block in those 32 blocks
+ by testing for equality with (0). Now, the allocate function will
+ given a memory block find the corresponding bit in the bitmap, and
+ will reset it (ie. make it re-set (0)). And when the deallocate
+ function is called, it will again set that bit after locating it to
+ indicate that that particular block corresponding to this bit in the
+ bit-map is not being used by anyone, and may be used to satisfy
+ future requests.
+
+----------------------------------------------------------------------
+
+(Tech-Stuff, Please stay out if you are not interested in the
+selection of certain constants. This has nothing to do with the
+algorithm per-se, only with some vales that must be chosen correctly
+to ensure that the allocator performs well in a real word scenario,
+and maintains a good balance between the memory consumption and the
+allocation/deallocation speed).
+
+The formula for calculating the maximum wastage as a percentage:
+
+(32 X k + 1) / (2 X (32 X k + 1 + 32 X c)) X 100.
+
+Where,
+ k => The constant overhead per node. eg. for list, it is 8
+ bytes, and for map it is 12 bytes.
+ c => The size of the base type on which the map/list is
+ instantiated. Thus, suppose the the type1 is int and type2 is
+ double, they are related by the relation sizeof(double) ==
+ 2*sizeof(int). Thus, all types must have this double size
+ relation for this formula to work properly.
+
+Plugging-in: For List: k = 8 and c = 4 (int and double), we get:
+33.376%
+
+For map/multimap: k = 12, and c = 4 (int and double), we get:
+37.524%
+
+Thus, knowing these values, and based on the sizeof(value_type), we
+may create a function that returns the Max_Wastage_Percentage for us
+to use.
+
+
diff --git a/libstdc++-v3/docs/html/ext/howto.html b/libstdc++-v3/docs/html/ext/howto.html
index 2ce76ee9db3..56806ca436d 100644
--- a/libstdc++-v3/docs/html/ext/howto.html
+++ b/libstdc++-v3/docs/html/ext/howto.html
@@ -18,6 +18,8 @@
title="Input/Output" />
<link rel="Bookmark" href="sgiexts.html" type="text/html"
title="SGI extensions" />
+<link rel="Bookmark" href="mt_allocator.html" type="text/html"
+ title="__mt_alloc" />
<link rel="Copyright" href="../17_intro/license.html" type="text/html" />
</head>
<body>
@@ -48,8 +50,7 @@
<ul>
<li><a href="#1">Ropes and trees and hashes, oh my!</a></li>
<li><a href="#2">Added members and types</a></li>
- <li><a href="#3">Allocators (versions 3.0, 3.1, 3.2, 3.3)</a></li>
- <li><a href="#6">Allocators (version 3.4)</a></li>
+ <li><a href="mt_allocator.html"><code>__mt_alloc</code> </a></li>
<li><a href="#4">Compile-time checks</a></li>
<li><a href="#5">LWG Issues</a></li>
<li><a href="../18_support/howto.html#5">Demangling</a></li>
@@ -141,247 +142,6 @@
</p>
<hr />
-<h2><a name="3">Allocators (versions 3.0, 3.1, 3.2, 3.3)</a></h2>
- <p>Thread-safety, space efficiency, high speed, portability... this is a
- mess. Where to begin?
- </p>
- <h3>The Rules</h3>
- <p>The C++ standard only gives a few directives in this area:
- </p>
- <ul>
- <li>When you add elements to a container, and the container must allocate
- more memory to hold them, the container makes the request via its
- <code>Allocator</code> template parameter. This includes adding
- char's to the string class, which acts as a regular STL container
- in this respect.
- </li>
- <li>The default <code>Allocator</code> of every container-of-T is
- <code>std::allocator&lt;T&gt;</code>.
- </li>
- <li>The interface of the <code>allocator&lt;T&gt;</code> class is
- extremely simple. It has about 20 public declarations (nested
- typedefs, member functions, etc), but the two which concern us most
- are:
- <pre>
- T* allocate (size_type n, const void* hint = 0);
- void deallocate (T* p, size_type n);</pre>
- (This is a simplicifcation; the real signatures use nested typedefs.)
- The <code>&quot;n&quot;</code> arguments in both those functions is a
- <em>count</em> of the number of T's to allocate space for,
- <em>not their total size</em>.
- </li>
- <li>&quot;The storage is obtained by calling
- <code>::operator new(size_t)</code>, but it is unspecified when or
- how often this function is called. The use of <code>hint</code>
- is unspecified, but intended as an aid to locality if an
- implementation so desires.&quot; [20.4.1.1]/6
- </li>
- </ul>
- <h3>Problems and Possibilities</h3>
- <p>The easiest way of fulfilling the requirements is to call operator new
- each time a container needs memory, and to call operator delete each
- time the container releases memory. <strong>BUT</strong>
- <a href="http://gcc.gnu.org/ml/libstdc++/2001-05/msg00105.html">this
- method is horribly slow</a>.
- </p>
- <p>Or we can keep old memory around, and reuse it in a pool to save time.
- The old libstdc++-v2 used a memory pool, and so do we. As of 3.0,
- <a href="http://gcc.gnu.org/ml/libstdc++/2001-05/msg00136.html">it's
- on by default</a>. The pool is shared among all the containers in the
- program: when your program's std::vector&lt;int&gt; gets cut in half
- and frees a bunch of its storage, that memory can be reused by the
- private std::list&lt;WonkyWidget&gt; brought in from a KDE library
- that you linked against. And we don't have to call operators new and
- delete to pass the memory on, either, which is a speed bonus.
- <strong>BUT</strong>...
- </p>
- <p>What about threads? No problem: in a threadsafe environment, the
- memory pool is manipulated atomically, so you can grow a container in
- one thread and shrink it in another, etc. <strong>BUT</strong> what
- if threads in libstdc++-v3 aren't set up properly?
- <a href="../faq/index.html#5_6">That's been answered already</a>.
- </p>
- <p><strong>BUT</strong> what if you want to use your own allocator? What
- if you plan on using a runtime-loadable version of malloc() which uses
- shared telepathic anonymous mmap'd sections serializable over a
- network, so that memory requests <em>should</em> go through malloc?
- And what if you need to debug it?
- </p>
- <p>Well then:
- </p>
- <h3>Available allocators in namespace std</h3>
- <p>First I'll describe the situation as it exists for the code which
- was released in GCC 3.1 and 3.2. Then I'll describe the differences
- for 3.0. The allocator classes also have source documentation,
- which is described <a href="../documentation.html#4">here</a> (you
- will need to retrieve the maintainer-level docs, as almost none of
- these entities are in the ISO standard).
- </p>
- <p>As a general rule of thumb, users are not allowed to use names which
- begin with an underscore. This means that to be portable between
- compilers, none of the following may be used in your program directly.
- (If you decide to be unportable, then you're free do do what you want,
- but it's not our fault if stuff breaks.) They are presented here for
- information for maintainers and contributors in addition to users.
- </p>
- <p>These classes are always available:
- </p>
- <ul>
- <li><code>__new_alloc</code> simply wraps <code>::operator new</code>
- and <code>::operator delete</code>.
- </li>
- <li><code>__malloc_alloc_template&lt;int inst&gt;</code> simply wraps
- <code>malloc</code> and <code>free</code>. There is also a hook
- for an out-of-memory handler (for new/delete this is taken care of
- elsewhere). The <code>inst</code> parameter is described below.
- This class was called <code>malloc_alloc</code> in earlier versions.
- </li>
- <li><code>allocator&lt;T&gt;</code> has already been described; it is
- The Standard Allocator for instances of T. It uses the internal
- <code>__alloc</code> typedef (see below) to satisy its requests.
- </li>
- <li><code>__simple_alloc&lt;T,A&gt;</code> is a wrapper around another
- allocator, A, which itself is an allocator for instances of T.
- This is primarily used in an internal &quot;allocator traits&quot;
- class which helps encapsulate the different styles of allocators.
- </li>
- <li><code>__debug_alloc&lt;A&gt;</code> is also a wrapper around an
- arbitrary allocator A. It passes on slightly increased size
- requests to A, and uses the extra memory to store size information.
- When a pointer is passed to <code>deallocate()</code>, the stored
- size is checked, and assert() is used to guarantee they match.
- </li>
- <li><code>__allocator&lt;T,A&gt;</code> is an adaptor. Many of these
- allocator classes have a consistent yet non-standard interface.
- Such classes can be changed to a conforming interface with this
- wrapper: <code>__allocator&lt;T, __alloc&gt;</code> is thus the
- same as <code>allocator&lt;T&gt;</code>.
- </li>
- </ul>
- <p>Normally,
- <code> __default_alloc_template&lt;bool thr, int inst&gt; </code>
- is also available. This is the high-speed pool, called the default
- node allocator. The reusable memory is shared among identical
- instantiations of
- this type. It calls through <code>__new_alloc</code> to obtain
- new memory when its lists run out. If a client container requests a
- block larger than a certain threshold size, then the pool is bypassed,
- and the allocate/deallocate request is passed to
- <code>__new_alloc</code> directly.
- </p>
- <p>Its <code>inst</code> parameter is described below. The
- <code>thr</code> boolean determines whether the pool should be
- manipulated atomically or not. Two typedefs are provided:
- <code>__alloc</code> is defined as this node allocator with thr=true,
- and therefore is threadsafe, while <code>__single_client_alloc</code>
- defines thr=false, and is slightly faster but unsafe for multiple
- threads.
- </p>
- <p>(Note that the GCC thread abstraction layer allows us to provide safe
- zero-overhead stubs for the threading routines, if threads were
- disabled at configuration time. In this situation,
- <code>__alloc</code> should not be noticably slower than
- <code>__single_client_alloc</code>.)
- </p>
- <p>[Another threadsafe allocator where each thread keeps its own free
- list, so that no locking is needed, might be described here.]
- </p>
- <h3>A cannon to swat a fly:<code> __USE_MALLOC</code></h3>
- <p>If you've already read <a href="../23_containers/howto.html#3">this
- advice</a> but still think you remember how to use this macro from
- SGI STL days. We have removed it in gcc 3.3. See next section
- for the new way to get the same effect.
- </p>
- <h3>Globally disabling memory caching:<code> GLIBCXX_FORCE_NEW</code></h3>
- <p>Starting with gcc 3.3, if you want to globally disable memory
- caching within the library for the default allocator (i.e.
- the one you get for all library objects when you do not specify
- which one to use), merely set GLIBCXX_FORCE_NEW (at this time,
- with any value) into your environment before running the
- program. You will obtain a similar effect without having to
- recompile your entire program and the entire library (the new
- operator in gcc is a light wrapper around malloc). If your
- program crashes with GLIBCXX_FORCE_NEW in the environment,
- it likely means that you linked against objects built against
- the older library. Code to support this extension is fully
- compatible with 3.2 code if GLIBCXX_FORCE_NEW is not in the
- environment. Prior to GCC 3.4, this variable was spelt
- GLIBCPP_FORCE_NEW.
- </p>
- <h3>Writing your own allocators</h3>
- <p>Depending on your application (a specific program, a generic library,
- etc), allocator classes tend to be one of two styles: &quot;SGI&quot;
- or &quot;standard&quot;. See the comments in stl_alloc.h for more
- information on this crucial difference.
- </p>
- <p>At the bottom of that header is a helper type,
- <code>_Alloc_traits</code>, and various specializations of it. This
- allows the container classes to make possible compile-time
- optimizations based on features of the allocator. You should provide
- a specialization of this type for your allocator (doing so takes only
- two or three statements).
- </p>
- <h3>Using non-default allocators</h3>
- <p>You can specify different memory management schemes on a per-container
- basis, by overriding the default <code>Allocator</code> template
- parameter. For example, an easy
- (but nonportable)
- method of specifying that only malloc/free should be used instead of
- the default node allocator is:
- </p>
- <pre>
- std::list &lt;my_type, std::__malloc_alloc_template&lt;0&gt; &gt; my_malloc_based_list;</pre>
- Likewise, a debugging form of whichever allocator is currently in use:
- <pre>
- std::deque &lt;my_type, std::__debug_alloc&lt;std::__alloc&gt; &gt; debug_deque;</pre>
- <h3><code>inst</code></h3>
- <p>The <code>__malloc_alloc_template</code> and
- <code>__default_alloc_template</code> classes take an integer parameter,
- called inst here. This number is completely unused.
- </p>
- <p>The point of the number is to allow multiple instantiations of the
- classes without changing the semantics at all. All three of
- </p>
- <pre>
- typedef __default_alloc_template&lt;true,0&gt; normal;
- typedef __default_alloc_template&lt;true,1&gt; private;
- typedef __default_alloc_template&lt;true,42&gt; also_private;</pre>
- <p>behave exactly the same way. However, the memory pool for each type
- (and remember that different instantiations result in different types)
- remains separate.
- </p>
- <p>The library uses <strong>0</strong> in all its instantiations. If you
- wish to keep separate free lists for a particular purpose, use a
- different number.
- </p>
- <h3>3.0.x</h3>
- <p>For 3.0.x, many of the names were incorrectly <em>not</em> prefixed
- with underscores. So symbols such as &quot;std::single_client_alloc&quot;
- are present. Be very careful to not depend on these names any more
- than you would depend on implementation-only names.
- </p>
- <p>Certain macros like <code>_NOTHREADS</code> and <code>__STL_THREADS</code>
- can affect the 3.0.x allocators. Do not use them. Those macros have
- been completely removed for 3.1.
- </p>
- <p>Return <a href="#top">to top of page</a> or
- <a href="../faq/index.html">to the FAQ</a>.
- </p>
-
-<hr />
-<h2><a name="6">Allocators (version 3.4)</a></h2>
- <p>Changes are coming...
- </p>
- <p>If you plan on writing your own allocators,
- <a href="../documentation.html#4">source documentation</a> is
- available. You'll need to get the &quot;maintainers&quot; collection
- in order to see the helper classes and extra notes.
- </p>
- <p>Return <a href="#top">to top of page</a> or
- <a href="../faq/index.html">to the FAQ</a>.
- </p>
-
-<hr />
<h2><a name="4">Compile-time checks</a></h2>
<p>Currently libstdc++-v3 uses the concept checkers from the Boost
library to perform <a href="../19_diagnostics/howto.html#3">optional
@@ -535,6 +295,15 @@
not required to set <code>gcount</code>).
</dd>
+ <dt><a href="lwg-defects.html#103">103</a>:
+ <em>set::iterator is required to be modifiable, but this allows
+ modification of keys.</em>
+ </dt>
+ <dd>For associative containers where the value type is the same as
+ the key type, both <code>iterator</code> and <code>const_iterator
+ </code> are constant iterators.
+ </dd>
+
<dt><a href="lwg-defects.html#109">109</a>:
<em>Missing binders for non-const sequence elements</em>
</dt>
@@ -643,6 +412,14 @@
<dd>This nested typdef was originally not specified.
</dd>
+ <dt><a href="lwg-active.html#253">253</a>:
+ <em>valarray helper functions are almost entirely useless</em>
+ </dt>
+ <dd>Make the copy constructor and copy-assignment operator declarations
+ public in gslice_array, indirect_array, mask_array, slice_array; provide
+ definitions.
+ </dd>
+
<dt><a href="lwg-defects.html#265">265</a>:
<em>std::pair::pair() effects overly restrictive</em>
</dt>
@@ -702,6 +479,12 @@
<dd>Change the format string to &quot;%.0Lf&quot;.
</dd>
+ <dt><a href="lwg-active.html#389">389</a>:
+ <em>Const overload of valarray::operator[] returns by value</em>
+ </dt>
+ <dd>Change it to return a <code>const T&amp;</code>.
+ </dd>
+
<dt><a href="lwg-active.html#402">402</a>:
<em>Wrong new expression in [some_]allocator::construct</em>
</dt>
diff --git a/libstdc++-v3/docs/html/ext/mt_allocator.html b/libstdc++-v3/docs/html/ext/mt_allocator.html
new file mode 100644
index 00000000000..72727114ac6
--- /dev/null
+++ b/libstdc++-v3/docs/html/ext/mt_allocator.html
@@ -0,0 +1,420 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta name="AUTHOR" content="Stefan Olsson &lt;stefan@xapa.se&gt;" />
+ <meta name="KEYWORDS" content="c++, libstdc++, g++, allocator, memory" />
+ <meta name="DESCRIPTION" content="Allocators and allocation" />
+ <meta name="GENERATOR" content="emacs and ten fingers" />
+ <title>A fixed-size, multi-thread optimized allocator</title>
+<link rel="StyleSheet" href="../lib3styles.css" type="text/css" />
+<link rel="Start" href="../documentation.html" type="text/html"
+ title="GNU C++ Standard Library" />
+<link rel="Bookmark" href="howto.html" type="text/html" title="Extensions" />
+<link rel="Copyright" href="../17_intro/license.html" type="text/html" />
+</head>
+<body>
+
+<h1 class="centered"><a name="top">A fixed-size, multi-thread optimized allocator</a></h1>
+
+<p class="fineprint"><em>
+ The latest version of this document is always available at
+ <a href="http://gcc.gnu.org/onlinedocs/libstdc++/ext/mt_allocator.html">
+ http://gcc.gnu.org/onlinedocs/libstdc++/ext/mt_allocator.html</a>.
+</em></p>
+
+<p><em>
+ To the <a href="http://gcc.gnu.org/libstdc++/">libstdc++-v3 homepage</a>.
+</em></p>
+
+<!-- ####################################################### -->
+<hr />
+<h3 class="left">
+ <a name="intro">Introduction</a>
+</h3>
+
+<p> The mt allocator [hereinafter referred to simply as "the
+allocator"] is a fixed size (power of two) allocator that was
+initially developed specifically to suit the needs of multi threaded
+applications [hereinafter referred to as an MT application]. Over time
+the allocator has evolved and been improved in many ways, one of the
+being that it now also does a good job in single threaded applications
+[hereinafter referred to as a ST application]. (Note: In this
+document, when referring to single threaded applications this also
+includes applications that are compiled with gcc without thread
+support enabled. This is accomplished using ifdef's on __GTHREADS)
+</p>
+
+<p>
+The aim of this document is to describe - from a application point of
+view - the "inner workings" of the allocator.
+</p>
+
+
+<h3 class="left">
+ <a name="init">Initialization</a>
+</h3>
+
+<p>
+The static variables (pointers to freelists, tuning parameters etc)
+are initialized to their default values at file scope, i.e.:
+</p>
+
+<pre>
+ template&lt;typename _Tp&gt; size_t
+ __mt_alloc&lt;_Tp&gt;::_S_freelist_headroom = 10;
+</pre>
+
+<p>
+The very first allocate() call will always call the _S_init() function.
+In order to make sure that this function is called exactly once we make use
+of a __gthread_once (with _S_once_mt and _S_init as arguments) call in MT
+applications and check a static bool (_S_initialized) in ST applications.
+</p>
+
+<p>
+The _S_init() function:
+- If the GLIBCXX_FORCE_NEW environment variable is set, it sets the bool
+ _S_force_new to true and then returns. This will cause subsequent calls to
+ allocate() to return memory directly from a new() call, and deallocate will
+ only do a delete() call.
+</p>
+
+<p>
+- If the GLIBCXX_FORCE_NEW environment variable is not set, both ST and MT
+ applications will:
+ - Calculate the number of bins needed. A bin is a specific power of two size
+ of bytes. I.e., by default the allocator will deal with requests of up to
+ 128 bytes (or whatever the value of _S_max_bytes is when _S_init() is
+ called). This means that there will be bins of the following sizes
+ (in bytes): 1, 2, 4, 8, 16, 32, 64, 128.
+
+ - Create the _S_binmap array. All requests are rounded up to the next
+ "large enough" bin. I.e., a request for 29 bytes will cause a block from
+ the "32 byte bin" to be returned to the application. The purpose of
+ _S_binmap is to speed up the process of finding out which bin to use.
+ I.e., the value of _S_binmap[ 29 ] is initialized to 5 (bin 5 = 32 bytes).
+</p>
+<p>
+ - Create the _S_bin array. This array consists of bin_records. There will be
+ as many bin_records in this array as the number of bins that we calculated
+ earlier. I.e., if _S_max_bytes = 128 there will be 8 entries.
+ Each bin_record is then initialized:
+ - bin_record-&gt;first = An array of pointers to block_records. There will be
+ as many block_records pointers as there are maximum number of threads
+ (in a ST application there is only 1 thread, in a MT application there
+ are _S_max_threads).
+ This holds the pointer to the first free block for each thread in this
+ bin. I.e., if we would like to know where the first free block of size 32
+ for thread number 3 is we would look this up by: _S_bin[ 5 ].first[ 3 ]
+
+ The above created block_record pointers members are now initialized to
+ their initial values. I.e. _S_bin[ n ].first[ n ] = NULL;
+</p>
+
+<p>
+- Additionally a MT application will:
+ - Create a list of free thread id's. The pointer to the first entry
+ is stored in _S_thread_freelist_first. The reason for this approach is
+ that the __gthread_self() call will not return a value that corresponds to
+ the maximum number of threads allowed but rather a process id number or
+ something else. So what we do is that we create a list of thread_records.
+ This list is _S_max_threads long and each entry holds a size_t thread_id
+ which is initialized to 1, 2, 3, 4, 5 and so on up to _S_max_threads.
+ Each time a thread calls allocate() or deallocate() we call
+ _S_get_thread_id() which looks at the value of _S_thread_key which is a
+ thread local storage pointer. If this is NULL we know that this is a newly
+ created thread and we pop the first entry from this list and saves the
+ pointer to this record in the _S_thread_key variable. The next time
+ we will get the pointer to the thread_record back and we use the
+ thread_record-&gt;thread_id as identification. I.e., the first thread that
+ calls allocate will get the first record in this list and thus be thread
+ number 1 and will then find the pointer to its first free 32 byte block
+ in _S_bin[ 5 ].first[ 1 ]
+ When we create the _S_thread_key we also define a destructor
+ (_S_thread_key_destr) which means that when the thread dies, this
+ thread_record is returned to the front of this list and the thread id
+ can then be reused if a new thread is created.
+ This list is protected by a mutex (_S_thread_freelist_mutex) which is only
+ locked when records are removed/added to the list.
+</p>
+<p>
+ - Initialize the free and used counters of each bin_record:
+ - bin_record-&gt;free = An array of size_t. This keeps track of the number
+ of blocks on a specific thread's freelist in each bin. I.e., if a thread
+ has 12 32-byte blocks on it's freelists and allocates one of these, this
+ counter would be decreased to 11.
+
+ - bin_record-&gt;used = An array of size_t. This keeps track of the number
+ of blocks currently in use of this size by this thread. I.e., if a thread
+ has made 678 requests (and no deallocations...) of 32-byte blocks this
+ counter will read 678.
+
+ The above created arrays are now initialized with their initial values.
+ I.e. _S_bin[ n ].free[ n ] = 0;
+</p>
+<p>
+ - Initialize the mutex of each bin_record:
+ The bin_record-&gt;mutex is used to protect the global freelist. This concept
+ of a global freelist is explained in more detail in the section
+ "A multi threaded example", but basically this mutex is locked whenever
+ a block of memory is retrieved or returned to the global freelist for this
+ specific bin. This only occurs when a number of blocks are grabbed from the
+ global list to a thread specific list or when a thread decides to return
+ some blocks to the global freelist.
+</p>
+
+<h3 class="left">
+ <a name="st_example">A single threaded example (and a primer for the multi threaded example!)</a>
+</h3>
+
+<p>
+Let's start by describing how the data on a freelist is laid out in memory.
+This is the first two blocks in freelist for thread id 3 in bin 3 (8 bytes):
+</p>
+<pre>
++----------------+
+| next* ---------|--+ (_S_bin[ 3 ].first[ 3 ] points here)
+| | |
+| | |
+| | |
++----------------+ |
+| thread_id = 3 | |
+| | |
+| | |
+| | |
++----------------+ |
+| DATA | | (A pointer to here is what is returned to the
+| | | the application when needed)
+| | |
+| | |
+| | |
+| | |
+| | |
+| | |
++----------------+ |
++----------------+ |
+| next* |&lt;-+ (If next == NULL it's the last one on the list)
+| |
+| |
+| |
++----------------+
+| thread_id = 3 |
+| |
+| |
+| |
++----------------+
+| DATA |
+| |
+| |
+| |
+| |
+| |
+| |
+| |
++----------------+
+</pre>
+
+<p>
+With this in mind we simplify things a bit for a while and say that there is
+only one thread (a ST application). In this case all operations are made to
+what is referred to as the global pool - thread id 0 (No thread may be
+assigned this id since they span from 1 to _S_max_threads in a MT application).
+</p>
+<p>
+When the application requests memory (calling allocate()) we first look at the
+requested size and if this is &gt; _S_max_bytes we call new() directly and return.
+</p>
+<p>
+If the requested size is within limits we start by finding out from which
+bin we should serve this request by looking in _S_binmap.
+</p>
+<p>
+A quick look at _S_bin[ bin ].first[ 0 ] tells us if there are any blocks of
+this size on the freelist (0). If this is not NULL - fine, just remove the
+block that _S_bin[ bin ].first[ 0 ] points to from the list,
+update _S_bin[ bin ].first[ 0 ] and return a pointer to that blocks data.
+</p>
+<p>
+If the freelist is empty (the pointer is NULL) we must get memory from the
+system and build us a freelist within this memory. All requests for new memory
+is made in chunks of _S_chunk_size. Knowing the size of a block_record and
+the bytes that this bin stores we then calculate how many blocks we can create
+within this chunk, build the list, remove the first block, update the pointer
+(_S_bin[ bin ].first[ 0 ]) and return a pointer to that blocks data.
+</p>
+
+<p>
+Deallocation is equally simple; the pointer is casted back to a block_record
+pointer, lookup which bin to use based on the size, add the block to the front
+of the global freelist and update the pointer as needed
+(_S_bin[ bin ].first[ 0 ]).
+</p>
+
+<p>
+The decision to add deallocated blocks to the front of the freelist was made
+after a set of performance measurements that showed that this is roughly 10%
+faster than maintaining a set of "last pointers" as well.
+</p>
+
+<h3 class="left">
+ <a name="mt_example">A multi threaded example</a>
+</h3>
+
+<p>
+In the ST example we never used the thread_id variable present in each block.
+Let's start by explaining the purpose of this in a MT application.
+</p>
+
+<p>
+The concept of "ownership" was introduced since many MT applications
+allocate and deallocate memory to shared containers from different
+threads (such as a cache shared amongst all threads). This introduces
+a problem if the allocator only returns memory to the current threads
+freelist (I.e., there might be one thread doing all the allocation and
+thus obtaining ever more memory from the system and another thread
+that is getting a longer and longer freelist - this will in the end
+consume all available memory).
+</p>
+
+<p>
+Each time a block is moved from the global list (where ownership is
+irrelevant), to a threads freelist (or when a new freelist is built
+from a chunk directly onto a threads freelist or when a deallocation
+occurs on a block which was not allocated by the same thread id as the
+one doing the deallocation) the thread id is set to the current one.
+</p>
+
+<p>
+What's the use? Well, when a deallocation occurs we can now look at
+the thread id and find out if it was allocated by another thread id
+and decrease the used counter of that thread instead, thus keeping the
+free and used counters correct. And keeping the free and used counters
+corrects is very important since the relationship between these two
+variables decides if memory should be returned to the global pool or
+not when a deallocation occurs.
+</p>
+
+<p>
+When the application requests memory (calling allocate()) we first
+look at the requested size and if this is &gt; _S_max_bytes we call new()
+directly and return.
+</p>
+
+<p>
+If the requested size is within limits we start by finding out from which
+bin we should serve this request by looking in _S_binmap.
+</p>
+
+<p>
+A call to _S_get_thread_id() returns the thread id for the calling thread
+(and if no value has been set in _S_thread_key, a new id is assigned and
+returned).
+</p>
+
+<p>
+A quick look at _S_bin[ bin ].first[ thread_id ] tells us if there are
+any blocks of this size on the current threads freelist. If this is
+not NULL - fine, just remove the block that _S_bin[ bin ].first[
+thread_id ] points to from the list, update _S_bin[ bin ].first[
+thread_id ], update the free and used counters and return a pointer to
+that blocks data.
+</p>
+
+<p>
+If the freelist is empty (the pointer is NULL) we start by looking at
+the global freelist (0). If there are blocks available on the global
+freelist we lock this bins mutex and move up to block_count (the
+number of blocks of this bins size that will fit into a _S_chunk_size)
+or until end of list - whatever comes first - to the current threads
+freelist and at the same time change the thread_id ownership and
+update the counters and pointers. When the bins mutex has been
+unlocked, we remove the block that _S_bin[ bin ].first[ thread_id ]
+points to from the list, update _S_bin[ bin ].first[ thread_id ],
+update the free and used counters, and return a pointer to that blocks
+data.
+</p>
+
+<p>
+The reason that the number of blocks moved to the current threads
+freelist is limited to block_count is to minimize the chance that a
+subsequent deallocate() call will return the excess blocks to the
+global freelist (based on the _S_freelist_headroom calculation, see
+below).
+</p>
+
+<p>
+However if there isn't any memory on the global pool we need to get
+memory from the system - this is done in exactly the same way as in a
+single threaded application with one major difference; the list built
+in the newly allocated memory (of _S_chunk_size size) is added to the
+current threads freelist instead of to the global.
+</p>
+
+<p>
+The basic process of a deallocation call is simple: always add the
+block to the front of the current threads freelist and update the
+counters and pointers (as described earlier with the specific check of
+ownership that causes the used counter of the thread that originally
+allocated the block to be decreased instead of the current threads
+counter).
+</p>
+
+<p>
+And here comes the free and used counters to service. Each time a
+deallocation() call is made, the length of the current threads
+freelist is compared to the amount memory in use by this thread.
+</p>
+
+<p>
+Let's go back to the example of an application that has one thread
+that does all the allocations and one that deallocates. Both these
+threads use say 516 32-byte blocks that was allocated during thread
+creation for example. Their used counters will both say 516 at this
+point. The allocation thread now grabs 1000 32-byte blocks and puts
+them in a shared container. The used counter for this thread is now
+1516.
+</p>
+
+<p>
+The deallocation thread now deallocates 500 of these blocks. For each
+deallocation made the used counter of the allocating thread is
+decreased and the freelist of the deallocation thread gets longer and
+longer. But the calculation made in deallocate() will limit the length
+of the freelist in the deallocation thread to _S_freelist_headroom %
+of it's used counter. In this case, when the freelist (given that the
+_S_freelist_headroom is at it's default value of 10%) exceeds 52
+(516/10) blocks will be returned to the global pool where the
+allocating thread may pick them up and reuse them.
+</p>
+
+<p>
+In order to reduce lock contention (since this requires this bins
+mutex to be locked) this operation is also made in chunks of blocks
+(just like when chunks of blocks are moved from the global freelist to
+a threads freelist mentioned above). The "formula" used can probably
+be improved to further reduce the risk of blocks being "bounced back
+and forth" between freelists.
+</p>
+
+<hr />
+<p>Return <a href="#top">to the top of the page</a> or
+ <a href="http://gcc.gnu.org/libstdc++/">to the libstdc++ homepage</a>.
+</p>
+
+
+<!-- ####################################################### -->
+
+<hr />
+<p class="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
+Comments and suggestions are welcome, and may be sent to
+<a href="mailto:libstdc++@gcc.gnu.org">the libstdc++ mailing list</a>.
+</em></p>
+
+
+</body>
+</html>
diff --git a/libstdc++-v3/docs/html/faq/index.html b/libstdc++-v3/docs/html/faq/index.html
index f17c5d36541..4bfc6d456ed 100644
--- a/libstdc++-v3/docs/html/faq/index.html
+++ b/libstdc++-v3/docs/html/faq/index.html
@@ -62,6 +62,9 @@
mentioning?</a> </li>
<li><a href="#2_4">How do I know if it works?</a> </li>
<li><a href="#2_5">This library is HUGE! And what's libsupc++?</a> </li>
+ <li><a href="#2_6">Why do I get an error saying
+ <code>libstdc++.so.X</code> is missing when I
+ run my program?</a> </li>
</ol>
</li>
@@ -418,6 +421,43 @@ which is no longer available, thanks deja...-->
</p>
<hr />
+ <h2><a name="2_6">2.6 Why do I get an error saying
+ <code>libstdc++.so.X</code> is missing when I run
+ my program?</a></h2>
+ <p>Depending on your platform and library version, the message might
+ be similar to one of the following:
+ </p>
+ <pre>
+ ./a.out: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
+
+ /usr/libexec/ld-elf.so.1: Shared object "libstdc++.so.6" not found </pre>
+
+ <p>This doesn't mean that the shared library isn't installed, only
+ that the dynamic linker can't find it. When a dynamically-linked
+ executable is run the linker finds and loads the required shared
+ libraries by searching a pre-configured list of directories. If
+ the directory where you've installed libstdc++ is not in this
+ list then the libraries won't be found. The simplest way to fix
+ this is to use the <code>LD_LIBRARY_PATH</code> environment
+ variable, which is a colon-separated list of directories in which
+ the linker will search for shared libraries:
+ </p>
+ <pre>
+ LD_LIBRARY_PATH=${prefix}/lib:$LD_LIBRARY_PATH
+ export LD_LIBRARY_PATH </pre>
+ <p>The exact environment variable to use will depend on your platform,
+ e.g. DYLD_LIBRARY_PATH for Darwin,
+ LD_LIBRARY_PATH_32/LD_LIBRARY_PATH_64 for Solaris 32-/64-bit,
+ LD_LIBRARYN32_PATH/LD_LIBRARY64_PATH for Irix N32/64-bit ABIs
+ and SHLIB_PATH for HP-UX.
+ </p>
+ <p>See the man pages for <code>ld(1)</code>, <code>ldd(1)</code> and
+ <code>ldconfig(8)</code> for more information. The dynamic linker
+ has different names on different platforms but the man page is
+ usually called something such as <code>ld.so / rtld / dld.so</code>.
+ </p>
+
+<hr />
<h1><a name="3_0">3.0 Platform-Specific Issues</a></h1>
<h2><a name="3_1">3.1 Can libstdc++-v3 be used with &lt;my
favorite compiler&gt;?</a></h2>
diff --git a/libstdc++-v3/docs/html/faq/index.txt b/libstdc++-v3/docs/html/faq/index.txt
index 2e09a1d7fe3..ee5e27f3d15 100644
--- a/libstdc++-v3/docs/html/faq/index.txt
+++ b/libstdc++-v3/docs/html/faq/index.txt
@@ -29,44 +29,46 @@
3. [19]What is this CVS thing that you keep mentioning?
4. [20]How do I know if it works?
5. [21]This library is HUGE! And what's libsupc++?
- 3. [22]Platform-Specific Issues
- 1. [23]Can libstdc++-v3 be used with <my favorite compiler>?
- 2. [24][removed]
- 3. [25][removed]
- 4. [26]I can't use 'long long' on Solaris
- 5. [27]_XOPEN_SOURCE / _GNU_SOURCE / etc is always defined
- 6. [28]OS X ctype.h is broken! How can I hack it?
- 7. [29]Threading is broken on i386
- 8. [30]Recent GNU/Linux glibc required?
- 9. [31]Can't use wchar_t/wstring on FreeBSD
- 10. [32]MIPS atomic operations
- 4. [33]Known Bugs and Non-Bugs
- 1. [34]What works already?
- 2. [35]Bugs in gcc/g++ (not libstdc++-v3)
- 3. [36]Bugs in the C++ language/lib specification
- 4. [37]Things in libstdc++ that only look like bugs
- o [38]reopening a stream fails
- o [39]-Weffc++ complains too much
- o [40]"ambiguous overloads" after including an old-style
+ 6. [22]Why do I get an error saying libstdc++.so.X is missing
+ when I run my program?
+ 3. [23]Platform-Specific Issues
+ 1. [24]Can libstdc++-v3 be used with <my favorite compiler>?
+ 2. [25][removed]
+ 3. [26][removed]
+ 4. [27]I can't use 'long long' on Solaris
+ 5. [28]_XOPEN_SOURCE / _GNU_SOURCE / etc is always defined
+ 6. [29]OS X ctype.h is broken! How can I hack it?
+ 7. [30]Threading is broken on i386
+ 8. [31]Recent GNU/Linux glibc required?
+ 9. [32]Can't use wchar_t/wstring on FreeBSD
+ 10. [33]MIPS atomic operations
+ 4. [34]Known Bugs and Non-Bugs
+ 1. [35]What works already?
+ 2. [36]Bugs in gcc/g++ (not libstdc++-v3)
+ 3. [37]Bugs in the C++ language/lib specification
+ 4. [38]Things in libstdc++ that only look like bugs
+ o [39]reopening a stream fails
+ o [40]-Weffc++ complains too much
+ o [41]"ambiguous overloads" after including an old-style
header
- o [41]The g++-3 headers are not ours
- o [42]compilation errors from streambuf.h
- o [43]errors about *Concept and constraints in the STL...
- o [44]program crashes when using library code in a
+ o [42]The g++-3 headers are not ours
+ o [43]compilation errors from streambuf.h
+ o [44]errors about *Concept and constraints in the STL...
+ o [45]program crashes when using library code in a
dynamically-loaded library
- o [45]"memory leaks" in containers
- 5. [46]Aw, that's easy to fix!
- 5. [47]Miscellaneous
- 1. [48]string::iterator is not char*; vector<T>::iterator is not
+ o [46]"memory leaks" in containers
+ 5. [47]Aw, that's easy to fix!
+ 5. [48]Miscellaneous
+ 1. [49]string::iterator is not char*; vector<T>::iterator is not
T*
- 2. [49]What's next after libstdc++-v3?
- 3. [50]What about the STL from SGI?
- 4. [51]Extensions and Backward Compatibility
- 5. [52][removed]
- 6. [53]Is libstdc++-v3 thread-safe?
- 7. [54]How do I get a copy of the ISO C++ Standard?
- 8. [55]What's an ABI and why is it so messy?
- 9. [56]How do I make std::vector<T>::capacity() ==
+ 2. [50]What's next after libstdc++-v3?
+ 3. [51]What about the STL from SGI?
+ 4. [52]Extensions and Backward Compatibility
+ 5. [53][removed]
+ 6. [54]Is libstdc++-v3 thread-safe?
+ 7. [55]How do I get a copy of the ISO C++ Standard?
+ 8. [56]What's an ABI and why is it so messy?
+ 9. [57]How do I make std::vector<T>::capacity() ==
std::vector<T>::size?
_________________________________________________________________
@@ -77,19 +79,19 @@
The GNU Standard C++ Library v3 is an ongoing project to implement the
ISO 14882 Standard C++ library as described in chapters 17 through 27
and annex D. As the library reaches stable plateaus, it is captured in
- a snapshot and released. The latest release is [57]the fourteenth
+ a snapshot and released. The latest release is [58]the fourteenth
snapshot but newer versions have been included in recent GCC releases.
For those who want to see exactly how far the project has come, or
just want the latest bleeding-edge code, the up-to-date source is
available over anonymous CVS, and can even be browsed over the Web
- (see [58]1.4 below).
+ (see [59]1.4 below).
The older libstdc++-v2 project is no longer maintained; the code has
- been completely replaced and rewritten. [59]If you are using V2, then
+ been completely replaced and rewritten. [60]If you are using V2, then
you need to report bugs to your system vendor, not to the V3 list.
A more formal description of the V3 goals can be found in the official
- [60]design document.
+ [61]design document.
_________________________________________________________________
1.2 Why should I use libstdc++?
@@ -102,8 +104,8 @@
The GNU C/C++/FORTRAN/<pick-a-language> compiler (gcc, g++, etc) is
widely considered to be one of the leading compilers in the world. Its
- development has recently been taken over by the [61]GCC team. All of
- the rapid development and near-legendary [62]portability that are the
+ development has recently been taken over by the [62]GCC team. All of
+ the rapid development and near-legendary [63]portability that are the
hallmarks of an open-source project are being applied to libstdc++.
That means that all of the Standard classes and functions (such as
@@ -121,16 +123,16 @@
Development and discussion is held on the libstdc++ mailing list.
Subscribing to the list, or searching the list archives, is open to
- everyone. You can read instructions for doing so on the [63]homepage.
+ everyone. You can read instructions for doing so on the [64]homepage.
If you have questions, ideas, code, or are just curious, sign up!
_________________________________________________________________
1.4 How do I get libstdc++?
- The [64]homepage has instructions for retrieving the latest CVS
+ The [65]homepage has instructions for retrieving the latest CVS
sources, and for browsing the CVS sources over the web.
- Stable versions of libstdc++-v3 are included with releases of [65]the
+ Stable versions of libstdc++-v3 are included with releases of [66]the
GCC compilers.
The subset commonly known as the Standard Template Library (chapters
@@ -146,7 +148,7 @@
1.6 How do I contribute to the effort?
- Here is [66]a page devoted to this topic. Subscribing to the mailing
+ Here is [67]a page devoted to this topic. Subscribing to the mailing
list (see above, or the homepage) is a very good idea if you have
something to contribute, or if you have spare time and want to help.
Contributions don't have to be in the form of source code; anybody who
@@ -181,11 +183,11 @@
extracted into an updated utilities library, but nobody has started
such a project yet.
- (The [67]Boost site houses free C++ libraries that do varying things,
+ (The [68]Boost site houses free C++ libraries that do varying things,
and happened to be started by members of the Standards Committee.
Certain "useful stuff" classes will probably migrate there.)
- For the bold and/or desperate, the [68]GCC extensions page describes
+ For the bold and/or desperate, the [69]GCC extensions page describes
where to find the last libg++ source.
_________________________________________________________________
@@ -195,16 +197,16 @@
remains unanswered, then just ask the mailing list. At present, you do
not need to be subscribed to the list to send a message to it. More
information is available on the homepage (including how to browse the
- list archives); to send to the list, use [69]libstdc++@gcc.gnu.org.
+ list archives); to send to the list, use [70]libstdc++@gcc.gnu.org.
If you have a question that you think should be included here, or if
- you have a question about a question/answer here, contact [70]Phil
- Edwards or [71]Gabriel Dos Reis.
+ you have a question about a question/answer here, contact [71]Phil
+ Edwards or [72]Gabriel Dos Reis.
_________________________________________________________________
1.9 What are the license terms for libstdc++-v3?
- See [72]our license description for these and related questions.
+ See [73]our license description for these and related questions.
_________________________________________________________________
2.0 Installation
@@ -221,13 +223,13 @@
* The GNU Autotools are needed if you are messing with the configury
or makefiles.
- The file [73]documentation.html provides a good overview of the steps
+ The file [74]documentation.html provides a good overview of the steps
necessary to build, install, and use the library. Instructions for
configuring the library with new flags such as --enable-threads are
there also, as well as patches and instructions for working with GCC
2.95.
- The top-level install.html and [74]RELEASE-NOTES files contain the
+ The top-level install.html and [75]RELEASE-NOTES files contain the
exact build and installation instructions. You may wish to browse
those files over CVSweb ahead of time to get a feel for what's
required. RELEASE-NOTES is located in the ".../docs/17_intro/"
@@ -244,8 +246,8 @@
The Concurrent Versions System is one of several revision control
packages. It was selected for GNU projects because it's free (speech),
- free (beer), and very high quality. The [75]CVS entry in the GNU
- software catalogue has a better description as well as a [76]link to
+ free (beer), and very high quality. The [76]CVS entry in the GNU
+ software catalogue has a better description as well as a [77]link to
the makers of CVS.
The "anonymous client checkout" feature of CVS is similar to anonymous
@@ -259,7 +261,7 @@
libstdc++-v3 comes with its own testsuite. You do not need to actually
install the library ("make install") to run the testsuite, but you do
- need DejaGNU, as described [77]here.
+ need DejaGNU, as described [78]here.
To run the testsuite on the library after building it, use "make
check" while in your build directory. To run the testsuite on the
@@ -297,7 +299,7 @@
people don't like it, so here are two pseudo-solutions:
If the only functions from libstdc++.a which you need are language
- support functions (those listed in [78]clause 18 of the standard,
+ support functions (those listed in [79]clause 18 of the standard,
e.g., new and delete), then try linking against libsupc++.a (usually
specifying -lsupc++ when calling g++ for the final link step will do
it). This library contains only those support routines, one per object
@@ -319,6 +321,39 @@
the library.
_________________________________________________________________
+2.6 Why do I get an error saying libstdc++.so.X is missing when I run my
+program?
+
+ Depending on your platform and library version, the message might be
+ similar to one of the following:
+ ./a.out: error while loading shared libraries: libstdc++.so.6: cannot open
+shared object file: No such file or directory
+
+ /usr/libexec/ld-elf.so.1: Shared object "libstdc++.so.6" not found
+
+ This doesn't mean that the shared library isn't installed, only that
+ the dynamic linker can't find it. When a dynamically-linked executable
+ is run the linker finds and loads the required shared libraries by
+ searching a pre-configured list of directories. If the directory where
+ you've installed libstdc++ is not in this list then the libraries
+ won't be found. The simplest way to fix this is to use the
+ LD_LIBRARY_PATH environment variable, which is a colon-separated list
+ of directories in which the linker will search for shared libraries:
+ LD_LIBRARY_PATH=${prefix}/lib:$LD_LIBRARY_PATH
+ export LD_LIBRARY_PATH
+
+ The exact environment variable to use will depend on your platform,
+ e.g. DYLD_LIBRARY_PATH for Darwin,
+ LD_LIBRARY_PATH_32/LD_LIBRARY_PATH_64 for Solaris 32-/64-bit,
+ LD_LIBRARYN32_PATH/LD_LIBRARY64_PATH for Irix N32/64-bit ABIs and
+ SHLIB_PATH for HP-UX.
+
+ See the man pages for ld(1), ldd(1) and ldconfig(8) for more
+ information. The dynamic linker has different names on different
+ platforms but the man page is usually called something such as ld.so /
+ rtld / dld.so.
+ _________________________________________________________________
+
3.0 Platform-Specific Issues
3.1 Can libstdc++-v3 be used with <my favorite compiler>?
@@ -392,7 +427,7 @@
- < /dev/null" to display a list of predefined macros for any
particular installation.
- This has been discussed on the mailing lists [79]quite a bit.
+ This has been discussed on the mailing lists [80]quite a bit.
This method is something of a wart. We'd like to find a cleaner
solution, but nobody yet has contributed the time.
@@ -401,7 +436,7 @@
3.6 OS X ctype.h is broken! How can I hack it?
This is a long-standing bug in the OS X support. Fortunately, the
- patch is quite simple, and well-known. [80]Here's a link to the
+ patch is quite simple, and well-known. [81]Here's a link to the
solution.
_________________________________________________________________
@@ -439,7 +474,7 @@
enable itself.
You can fix the problems yourself, and learn more about the situation,
- by reading [81]this short thread ("_GLIBCPP_USE_WCHAR_T undefined in
+ by reading [82]this short thread ("_GLIBCPP_USE_WCHAR_T undefined in
FreeBSD's c++config.h?").
_________________________________________________________________
@@ -463,7 +498,7 @@
For 3.0.1, the most common "bug" is an apparently missing "../" in
include/Makefile, resulting in files like gthr.h and gthr-single.h not
- being found. Please read [82]the configuration instructions for GCC,
+ being found. Please read [83]the configuration instructions for GCC,
specifically the part about configuring in a separate build directory,
and how strongly recommended it is. Building in the source directory
is fragile, is rarely tested, and tends to break, as in this case.
@@ -471,7 +506,7 @@
For 3.1, the most common "bug" is a parse error when using <fstream>,
ending with a message, "bits/basic_file.h:52: parse error before `{'
- token." Please read [83]the installation instructions for GCC,
+ token." Please read [84]the installation instructions for GCC,
specifically the part about not installing newer versions on top of
older versions. If you install 3.1 over a 3.0.x release, then the
wrong basic_file.h header will be found (its location changed between
@@ -504,30 +539,30 @@ New:
libstdc++. If you are experiencing one of these problems, you can find
more information on the libstdc++ and the GCC mailing lists.
- Before reporting a bug, examine the [84]bugs database with the
+ Before reporting a bug, examine the [85]bugs database with the
category set to "libstdc++". The BUGS file in the source tree also
tracks known serious problems.
* Debugging is problematic, due to bugs in line-number generation
(mostly fixed in the compiler) and gdb lagging behind the compiler
(lack of personnel). We recommend configuring the compiler using
--with-dwarf2 if the DWARF2 debugging format is not already the
- default on your platform. Also, [85]changing your GDB settings can
+ default on your platform. Also, [86]changing your GDB settings can
have a profound effect on your C++ debugging experiences. :-)
_________________________________________________________________
4.3 Bugs in the C++ language/lib specification
- Yes, unfortunately, there are some. In a [86]message to the list,
+ Yes, unfortunately, there are some. In a [87]message to the list,
Nathan Myers announced that he has started a list of problems in the
ISO C++ Standard itself, especially with regard to the chapters that
- concern the library. The list itself is [87]posted on his website.
+ concern the library. The list itself is [88]posted on his website.
Developers who are having problems interpreting the Standard may wish
to consult his notes.
For those people who are not part of the ISO Library Group (i.e.,
nearly all of us needing to read this page in the first place :-), a
- public list of the library defects is occasionally published [88]here.
- Some of these have resulted in [89]code changes.
+ public list of the library defects is occasionally published [89]here.
+ Some of these have resulted in [90]code changes.
_________________________________________________________________
4.4 Things in libstdc++ that only look like bugs
@@ -559,7 +594,7 @@ New:
state on the previous file. The reason is that the state flags are not
cleared on a successful call to open(). The standard unfortunately did
not specify behavior in this case, and to everybody's great sorrow,
- the [90]proposed LWG resolution in DR #22 is to leave the flags
+ the [91]proposed LWG resolution in DR #22 is to leave the flags
unchanged. You must insert a call to fs.clear() between the calls to
close() and open(), and then everything will work like we all expect
it to work.
@@ -569,7 +604,7 @@ New:
same namespace as other comparison functions (e.g., 'using' them and
the <iterator> header), then you will suddenly be faced with huge
numbers of ambiguity errors. This was discussed on the -v3 list;
- Nathan Myers [91]sums things up here. The collisions with
+ Nathan Myers [92]sums things up here. The collisions with
vector/string iterator types have been fixed for 3.1.
The g++-3 headers are not ours
@@ -577,7 +612,7 @@ New:
If you have found an extremely broken header file which is causing
problems for you, look carefully before submitting a "high" priority
bug report (which you probably shouldn't do anyhow; see the last
- paragraph of the page describing [92]the GCC bug database).
+ paragraph of the page describing [93]the GCC bug database).
If the headers are in ${prefix}/include/g++-3, or if the installed
library's name looks like libstdc++-2.10.a or libstdc++-libc6-2.10.so,
@@ -602,7 +637,7 @@ type has changed in glibc 2.2. The patch is at
http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff
- Note that 2.95.x shipped with the [93]old v2 library which is no
+ Note that 2.95.x shipped with the [94]old v2 library which is no
longer maintained. Also note that gcc 2.95.3 fixes this problem, but
requires a separate patch for libstdc++-v3.
@@ -615,7 +650,7 @@ http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff
visibility, or you just plain forgot, etc).
More information, including how to optionally enable/disable the
- checks, is available [94]here.
+ checks, is available [95]here.
dlopen/dlsym If you are using the C++ library across
dynamically-loaded objects, make certain that you are passing the
@@ -634,11 +669,11 @@ http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff
"memory leaks" in containers A few people have reported that the
standard containers appear to leak memory when tested with memory
- checkers such as [95]valgrind. The library's default allocators keep
+ checkers such as [96]valgrind. The library's default allocators keep
free memory in a pool for later reuse, rather than returning it to the
OS. Although this memory is always reachable by the library and is
never lost, memory debugging tools can report it as a leak. If you
- want to test the library for memory leaks please read [96]Tips for
+ want to test the library for memory leaks please read [97]Tips for
memory leak hunting first.
_________________________________________________________________
@@ -646,16 +681,16 @@ http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff
If you have found a bug in the library and you think you have a
working fix, then send it in! The main GCC site has a page on
- [97]submitting patches that covers the procedure, but for libstdc++
+ [98]submitting patches that covers the procedure, but for libstdc++
you should also send the patch to our mailing list in addition to the
- GCC patches mailing list. The libstdc++ [98]contributors' page also
+ GCC patches mailing list. The libstdc++ [99]contributors' page also
talks about how to submit patches.
In addition to the description, the patch, and the ChangeLog entry, it
is a Good Thing if you can additionally create a small test program to
test for the presence of the bug that your patch fixes. Bugs have a
way of being reintroduced; if an old bug creeps back in, it will be
- caught immediately by the [99]testsuite -- but only if such a test
+ caught immediately by the [100]testsuite -- but only if such a test
exists.
_________________________________________________________________
@@ -689,7 +724,7 @@ http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff
libstdc++. Some of that is already happening, see 4.2. Some of
those changes are being predicted by the library maintainers, and
we add code to the library based on what the current proposed
- resolution specifies. Those additions are listed in [100]the
+ resolution specifies. Those additions are listed in [101]the
extensions page.
2. Performance tuning. Lots of performance tuning. This too is
already underway for post-3.0 releases, starting with memory
@@ -705,13 +740,13 @@ http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff
type from C99.) Bugfixes and rewrites (to improve or fix thread
safety, for instance) will of course be a continuing task.
- [101]This question about the next libstdc++ prompted some brief but
- interesting [102]speculation.
+ [102]This question about the next libstdc++ prompted some brief but
+ interesting [103]speculation.
_________________________________________________________________
5.3 What about the STL from SGI?
- The [103]STL from SGI, version 3.3, was the most recent merge of the
+ The [104]STL from SGI, version 3.3, was the most recent merge of the
STL codebase. The code in libstdc++ contains many fixes and changes,
and it is very likely that the SGI code is no longer under active
development. We expect that no future merges will take place.
@@ -765,7 +800,7 @@ http://clisp.cons.org/~haible/gccinclude-glibc-2.2-compat.diff
namespace as the original template. This means you cannot use a
namespace alias when declaring an explicit specialization.
- Extensions to the library have [104]their own page.
+ Extensions to the library have [105]their own page.
_________________________________________________________________
5.5 [removed]
@@ -818,8 +853,8 @@ a
safe, do not assume that two threads may access a shared standard
library object at the same time.
- See chapters [105]17 (library introduction), [106]23 (containers), and
- [107]27 (I/O) for more information.
+ See chapters [106]17 (library introduction), [107]23 (containers), and
+ [108]27 (I/O) for more information.
_________________________________________________________________
5.7 How do I get a copy of the ISO C++ Standard?
@@ -830,11 +865,11 @@ a
their two-meeting commitment for voting rights, may get a copy of the
standard from their respective national standards organization. In the
USA, this national standards organization is ANSI and their website is
- right [108]here. (And if you've already registered with them, clicking
+ right [109]here. (And if you've already registered with them, clicking
this link will take you to directly to the place where you can
- [109]buy the standard on-line.
+ [110]buy the standard on-line.
- Who is your country's member body? Visit the [110]ISO homepage and
+ Who is your country's member body? Visit the [111]ISO homepage and
find out!
_________________________________________________________________
@@ -895,11 +930,11 @@ a
The copy will take O(n) time and the swap is constant time.
- See [111]Shrink-to-fit strings for a similar solution for strings.
+ See [112]Shrink-to-fit strings for a similar solution for strings.
_________________________________________________________________
- See [112]license.html for copying conditions. Comments and suggestions
- are welcome, and may be sent to [113]the libstdc++ mailing list.
+ See [113]license.html for copying conditions. Comments and suggestions
+ are welcome, and may be sent to [114]the libstdc++ mailing list.
References
@@ -924,95 +959,96 @@ References
19. ../faq/index.html#2_3
20. ../faq/index.html#2_4
21. ../faq/index.html#2_5
- 22. ../faq/index.html#3_0
- 23. ../faq/index.html#3_1
- 24. ../faq/index.html#3_2
- 25. ../faq/index.html#3_3
- 26. ../faq/index.html#3_4
- 27. ../faq/index.html#3_5
- 28. ../faq/index.html#3_6
- 29. ../faq/index.html#3_7
- 30. ../faq/index.html#3_8
- 31. ../faq/index.html#3_9
- 32. ../faq/index.html#3_10
- 33. ../faq/index.html#4_0
- 34. ../faq/index.html#4_1
- 35. ../faq/index.html#4_2
- 36. ../faq/index.html#4_3
- 37. ../faq/index.html#4_4
- 38. ../faq/index.html#4_4_iostreamclear
- 39. ../faq/index.html#4_4_Weff
- 40. ../faq/index.html#4_4_rel_ops
- 41. ../faq/index.html#4_4_interface
- 42. ../faq/index.html#4_4_glibc
- 43. ../faq/index.html#4_4_checks
- 44. ../faq/index.html#4_4_dlsym
- 45. ../faq/index.html#4_4_leak
- 46. ../faq/index.html#4_5
- 47. ../faq/index.html#5_0
- 48. ../faq/index.html#5_1
- 49. ../faq/index.html#5_2
- 50. ../faq/index.html#5_3
- 51. ../faq/index.html#5_4
- 52. ../faq/index.html#5_5
- 53. ../faq/index.html#5_6
- 54. ../faq/index.html#5_7
- 55. ../faq/index.html#5_8
- 56. ../faq/index.html#5_9
- 57. http://gcc.gnu.org/libstdc++/index.html#download
- 58. ../faq/index.html#1_4
- 59. ../faq/index.html#4_4_interface
- 60. ../17_intro/DESIGN
- 61. http://gcc.gnu.org/
- 62. http://gcc.gnu.org/gcc-3.0/buildstat.html
- 63. http://gcc.gnu.org/libstdc++/
+ 22. ../faq/index.html#2_6
+ 23. ../faq/index.html#3_0
+ 24. ../faq/index.html#3_1
+ 25. ../faq/index.html#3_2
+ 26. ../faq/index.html#3_3
+ 27. ../faq/index.html#3_4
+ 28. ../faq/index.html#3_5
+ 29. ../faq/index.html#3_6
+ 30. ../faq/index.html#3_7
+ 31. ../faq/index.html#3_8
+ 32. ../faq/index.html#3_9
+ 33. ../faq/index.html#3_10
+ 34. ../faq/index.html#4_0
+ 35. ../faq/index.html#4_1
+ 36. ../faq/index.html#4_2
+ 37. ../faq/index.html#4_3
+ 38. ../faq/index.html#4_4
+ 39. ../faq/index.html#4_4_iostreamclear
+ 40. ../faq/index.html#4_4_Weff
+ 41. ../faq/index.html#4_4_rel_ops
+ 42. ../faq/index.html#4_4_interface
+ 43. ../faq/index.html#4_4_glibc
+ 44. ../faq/index.html#4_4_checks
+ 45. ../faq/index.html#4_4_dlsym
+ 46. ../faq/index.html#4_4_leak
+ 47. ../faq/index.html#4_5
+ 48. ../faq/index.html#5_0
+ 49. ../faq/index.html#5_1
+ 50. ../faq/index.html#5_2
+ 51. ../faq/index.html#5_3
+ 52. ../faq/index.html#5_4
+ 53. ../faq/index.html#5_5
+ 54. ../faq/index.html#5_6
+ 55. ../faq/index.html#5_7
+ 56. ../faq/index.html#5_8
+ 57. ../faq/index.html#5_9
+ 58. http://gcc.gnu.org/libstdc++/index.html#download
+ 59. ../faq/index.html#1_4
+ 60. ../faq/index.html#4_4_interface
+ 61. ../17_intro/DESIGN
+ 62. http://gcc.gnu.org/
+ 63. http://gcc.gnu.org/gcc-3.0/buildstat.html
64. http://gcc.gnu.org/libstdc++/
- 65. http://gcc.gnu.org/releases.html
- 66. ../17_intro/contribute.html
- 67. http://www.boost.org/
- 68. http://gcc.gnu.org/extensions.html
- 69. mailto:libstdc++@gcc.gnu.org
- 70. mailto:pme@gcc.gnu.org
- 71. mailto:gdr@gcc.gnu.org
- 72. ../17_intro/license.html
- 73. ../documentation.html
- 74. ../17_intro/RELEASE-NOTES
- 75. http://www.gnu.org/software/cvs/cvs.html
- 76. http://www.cvshome.org/
- 77. http://gcc.gnu.org/install/test.html
- 78. ../18_support/howto.html
- 79. http://gcc.gnu.org/cgi-bin/htsearch?method=and&format=builtin-long&sort=score&words=_XOPEN_SOURCE+Solaris
- 80. http://gcc.gnu.org/ml/gcc/2002-03/msg00817.html
- 81. http://gcc.gnu.org/ml/libstdc++/2003-02/subjects.html#00286
- 82. http://gcc.gnu.org/install/configure.html
- 83. http://gcc.gnu.org/install/
- 84. http://gcc.gnu.org/bugs.html
- 85. http://gcc.gnu.org/ml/libstdc++/2002-02/msg00034.html
- 86. http://gcc.gnu.org/ml/libstdc++/1998/msg00006.html
- 87. http://www.cantrip.org/draft-bugs.txt
- 88. http://anubis.dkuug.dk/jtc1/sc22/wg21/
- 89. ../faq/index.html#5_2
- 90. ../ext/howto.html#5
- 91. http://gcc.gnu.org/ml/libstdc++/2001-01/msg00247.html
- 92. http://gcc.gnu.org/gnatswrite.html
- 93. ../faq/index.html#4_4_interface
- 94. ../19_diagnostics/howto.html#3
- 95. http://developer.kde.org/~sewardj/
- 96. ../debug.html#mem
- 97. http://gcc.gnu.org/contribute.html
- 98. ../17_intro/contribute.html
- 99. ../faq/index.html#2_4
- 100. ../ext/howto.html#5
- 101. http://gcc.gnu.org/ml/libstdc++/1999/msg00080.html
- 102. http://gcc.gnu.org/ml/libstdc++/1999/msg00084.html
- 103. http://www.sgi.com/tech/stl/
- 104. ../ext/howto.html
- 105. ../17_intro/howto.html#3
- 106. ../23_containers/howto.html#3
- 107. ../27_io/howto.html#9
- 108. http://www.ansi.org/
- 109. http://webstore.ansi.org/ansidocstore/product.asp?sku=ISO%2FIEC+14882%2D1998
- 110. http://www.iso.ch/
- 111. ../21_strings/howto.html#6
- 112. ../17_intro/license.html
- 113. mailto:libstdc++@gcc.gnu.org
+ 65. http://gcc.gnu.org/libstdc++/
+ 66. http://gcc.gnu.org/releases.html
+ 67. ../17_intro/contribute.html
+ 68. http://www.boost.org/
+ 69. http://gcc.gnu.org/extensions.html
+ 70. mailto:libstdc++@gcc.gnu.org
+ 71. mailto:pme@gcc.gnu.org
+ 72. mailto:gdr@gcc.gnu.org
+ 73. ../17_intro/license.html
+ 74. ../documentation.html
+ 75. ../17_intro/RELEASE-NOTES
+ 76. http://www.gnu.org/software/cvs/cvs.html
+ 77. http://www.cvshome.org/
+ 78. http://gcc.gnu.org/install/test.html
+ 79. ../18_support/howto.html
+ 80. http://gcc.gnu.org/cgi-bin/htsearch?method=and&format=builtin-long&sort=score&words=_XOPEN_SOURCE+Solaris
+ 81. http://gcc.gnu.org/ml/gcc/2002-03/msg00817.html
+ 82. http://gcc.gnu.org/ml/libstdc++/2003-02/subjects.html#00286
+ 83. http://gcc.gnu.org/install/configure.html
+ 84. http://gcc.gnu.org/install/
+ 85. http://gcc.gnu.org/bugs.html
+ 86. http://gcc.gnu.org/ml/libstdc++/2002-02/msg00034.html
+ 87. http://gcc.gnu.org/ml/libstdc++/1998/msg00006.html
+ 88. http://www.cantrip.org/draft-bugs.txt
+ 89. http://anubis.dkuug.dk/jtc1/sc22/wg21/
+ 90. ../faq/index.html#5_2
+ 91. ../ext/howto.html#5
+ 92. http://gcc.gnu.org/ml/libstdc++/2001-01/msg00247.html
+ 93. http://gcc.gnu.org/gnatswrite.html
+ 94. ../faq/index.html#4_4_interface
+ 95. ../19_diagnostics/howto.html#3
+ 96. http://developer.kde.org/~sewardj/
+ 97. ../debug.html#mem
+ 98. http://gcc.gnu.org/contribute.html
+ 99. ../17_intro/contribute.html
+ 100. ../faq/index.html#2_4
+ 101. ../ext/howto.html#5
+ 102. http://gcc.gnu.org/ml/libstdc++/1999/msg00080.html
+ 103. http://gcc.gnu.org/ml/libstdc++/1999/msg00084.html
+ 104. http://www.sgi.com/tech/stl/
+ 105. ../ext/howto.html
+ 106. ../17_intro/howto.html#3
+ 107. ../23_containers/howto.html#3
+ 108. ../27_io/howto.html#9
+ 109. http://www.ansi.org/
+ 110. http://webstore.ansi.org/ansidocstore/product.asp?sku=ISO%2FIEC+14882%2D1998
+ 111. http://www.iso.ch/
+ 112. ../21_strings/howto.html#6
+ 113. ../17_intro/license.html
+ 114. mailto:libstdc++@gcc.gnu.org
diff --git a/libstdc++-v3/docs/html/test.html b/libstdc++-v3/docs/html/test.html
index 8c761113eb6..a4ef5ec923a 100644
--- a/libstdc++-v3/docs/html/test.html
+++ b/libstdc++-v3/docs/html/test.html
@@ -477,11 +477,11 @@ or
make check-target-libstdc++-v3 RUNTESTFLAGS="-v -v"
</pre>
+
There are two ways to run on a simulator: set up DEJAGNU to point to a
specially crafted site.exp, or pass down --target_board flags.
Example flags to pass down for various embedded builds are as follows:
-
<pre>
--target=powerpc-eabism (libgloss/sim)
make check-target-libstdc++-v3 RUNTESTFLAGS="--target_board=powerpc-sim"
@@ -492,7 +492,14 @@ make check-target-libstdc++-v3 RUNTESTFLAGS="--target_board=calmrisc32-sid"
--target=xscale-elf (newlib/sim)
make check-target-libstdc++-v3 RUNTESTFLAGS="--target_board=arm-sim"
</pre>
-
+
+<p> Also, here is an example of how to run the libstdc++ testsuite for a
+multilibed build directory with different ABI settings:
+</p>
+<pre>
+make check-target-libstdc++-v3 RUNTESTFLAGS='--target_board \"unix{-mabi=32,,-mabi=64}\"'
+</pre>
+
<p> To run a subset of the library tests, simply edit the generated
file, <em>testsuite_files </em>, to include only the files that are
desired instead of all available test cases.
diff --git a/libstdc++-v3/include/Makefile.am b/libstdc++-v3/include/Makefile.am
index b97267bcb72..34e20338ae6 100644
--- a/libstdc++-v3/include/Makefile.am
+++ b/libstdc++-v3/include/Makefile.am
@@ -1,6 +1,6 @@
## Makefile for the include subdirectory of the GNU C++ Standard library.
##
-## Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+## Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
##
## This file is part of the libstdc++ version 3 distribution.
## Process this file with automake to produce Makefile.in.
@@ -92,7 +92,7 @@ bits_srcdir = ${glibcxx_srcdir}/include/bits
bits_builddir = ./bits
bits_headers = \
${bits_srcdir}/allocator.h \
- ${bits_srcdir}/allocator_traits.h \
+ ${bits_srcdir}/atomicity.h \
${bits_srcdir}/basic_ios.h \
${bits_srcdir}/basic_ios.tcc \
${bits_srcdir}/basic_string.h \
@@ -103,7 +103,6 @@ bits_headers = \
${bits_srcdir}/concept_check.h \
${bits_srcdir}/concurrence.h \
${bits_srcdir}/cpp_type_traits.h \
- ${bits_srcdir}/demangle.h \
${bits_srcdir}/deque.tcc \
${bits_srcdir}/fstream.tcc \
${bits_srcdir}/functexcept.h \
@@ -203,7 +202,9 @@ ext_srcdir = ${glibcxx_srcdir}/include/ext
ext_builddir = ./ext
ext_headers = \
${ext_srcdir}/algorithm \
+ ${ext_srcdir}/bitmap_allocator.h \
${ext_srcdir}/debug_allocator.h \
+ ${ext_srcdir}/demangle.h \
${ext_srcdir}/enc_filebuf.h \
${ext_srcdir}/stdio_filebuf.h \
${ext_srcdir}/stdio_sync_filebuf.h \
@@ -340,7 +341,7 @@ host_headers = \
${host_srcdir}/ctype_inline.h \
${host_srcdir}/ctype_noninline.h \
${host_srcdir}/os_defines.h \
- ${glibcxx_srcdir}/$(ATOMICITY_INC_SRCDIR)/atomicity.h
+ ${glibcxx_srcdir}/$(ATOMIC_WORD_SRCDIR)/atomic_word.h
# Non-installed host_header files.
host_headers_noinst = \
@@ -350,6 +351,7 @@ host_headers_noinst = \
host_headers_extra = \
${host_builddir}/basic_file.h \
${host_builddir}/c++config.h \
+ ${host_builddir}/c++allocator.h \
${host_builddir}/c++io.h \
${host_builddir}/c++locale.h \
${host_builddir}/messages_members.h \
@@ -479,6 +481,7 @@ stamp-host: ${host_headers} ${host_headers_noinst} stamp-${host_alias}
(cd ${host_builddir} ;\
$(LN_S) ${host_headers} . || true ;\
$(LN_S) ${glibcxx_srcdir}/$(BASIC_FILE_H) basic_file.h || true ;\
+ $(LN_S) ${glibcxx_srcdir}/$(ALLOCATOR_H) c++allocator.h || true ;\
$(LN_S) ${glibcxx_srcdir}/$(CSTDIO_H) c++io.h || true ;\
$(LN_S) ${glibcxx_srcdir}/$(CLOCALE_H) c++locale.h || true ;\
$(LN_S) ${glibcxx_srcdir}/$(CLOCALE_INTERNAL_H) . || true ;\
@@ -505,6 +508,7 @@ uppercase = [ABCDEFGHIJKLMNOPQRSTUVWXYZ_]
${host_builddir}/gthr.h: ${toplevel_srcdir}/gcc/gthr.h stamp-${host_alias}
sed -e '/^#/s/\(${uppercase}${uppercase}*\)/_GLIBCXX_\1/g' \
+ -e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \
-e 's,^#include "\(.*\)",#include <bits/\1>,g' \
< ${toplevel_srcdir}/gcc/gthr.h > $@
@@ -518,14 +522,16 @@ ${host_builddir}/gthr-posix.h: ${toplevel_srcdir}/gcc/gthr-posix.h \
stamp-${host_alias}
sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \
-e 's/\(GCC${uppercase}*_H\)/_GLIBCXX_\1/g' \
- -e 's/\(${uppercase}*WEAK\)/_GLIBCXX_\1/g' \
+ -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \
+ -e 's/\(${uppercase}*USE_WEAK\)/_GLIBCXX_\1/g' \
< ${toplevel_srcdir}/gcc/gthr-posix.h > $@
${host_builddir}/gthr-default.h: ${toplevel_srcdir}/gcc/${glibcxx_thread_h} \
stamp-${host_alias}
sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \
-e 's/\(GCC${uppercase}*_H\)/_GLIBCXX_\1/g' \
- -e 's/\(${uppercase}*WEAK\)/_GLIBCXX_\1/g' \
+ -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \
+ -e 's/\(${uppercase}*USE_WEAK\)/_GLIBCXX_\1/g' \
-e 's,^#include "\(.*\)",#include <bits/\1>,g' \
< ${toplevel_srcdir}/gcc/${glibcxx_thread_h} > $@
diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in
index 8c266e81fef..aad3d17f956 100644
--- a/libstdc++-v3/include/Makefile.in
+++ b/libstdc++-v3/include/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.7.8 from Makefile.am.
# @configure_input@
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
@@ -39,10 +39,13 @@ build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
ACLOCAL = @ACLOCAL@
+ALLOCATOR_H = @ALLOCATOR_H@
+ALLOCATOR_NAME = @ALLOCATOR_NAME@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@
+ATOMICITY_SRCDIR = @ATOMICITY_SRCDIR@
+ATOMIC_WORD_SRCDIR = @ATOMIC_WORD_SRCDIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
@@ -287,7 +290,7 @@ bits_srcdir = ${glibcxx_srcdir}/include/bits
bits_builddir = ./bits
bits_headers = \
${bits_srcdir}/allocator.h \
- ${bits_srcdir}/allocator_traits.h \
+ ${bits_srcdir}/atomicity.h \
${bits_srcdir}/basic_ios.h \
${bits_srcdir}/basic_ios.tcc \
${bits_srcdir}/basic_string.h \
@@ -298,7 +301,6 @@ bits_headers = \
${bits_srcdir}/concept_check.h \
${bits_srcdir}/concurrence.h \
${bits_srcdir}/cpp_type_traits.h \
- ${bits_srcdir}/demangle.h \
${bits_srcdir}/deque.tcc \
${bits_srcdir}/fstream.tcc \
${bits_srcdir}/functexcept.h \
@@ -400,7 +402,9 @@ ext_srcdir = ${glibcxx_srcdir}/include/ext
ext_builddir = ./ext
ext_headers = \
${ext_srcdir}/algorithm \
+ ${ext_srcdir}/bitmap_allocator.h \
${ext_srcdir}/debug_allocator.h \
+ ${ext_srcdir}/demangle.h \
${ext_srcdir}/enc_filebuf.h \
${ext_srcdir}/stdio_filebuf.h \
${ext_srcdir}/stdio_sync_filebuf.h \
@@ -536,7 +540,7 @@ host_headers = \
${host_srcdir}/ctype_inline.h \
${host_srcdir}/ctype_noninline.h \
${host_srcdir}/os_defines.h \
- ${glibcxx_srcdir}/$(ATOMICITY_INC_SRCDIR)/atomicity.h
+ ${glibcxx_srcdir}/$(ATOMIC_WORD_SRCDIR)/atomic_word.h
# Non-installed host_header files.
@@ -548,6 +552,7 @@ host_headers_noinst = \
host_headers_extra = \
${host_builddir}/basic_file.h \
${host_builddir}/c++config.h \
+ ${host_builddir}/c++allocator.h \
${host_builddir}/c++io.h \
${host_builddir}/c++locale.h \
${host_builddir}/messages_members.h \
@@ -673,7 +678,7 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
@@ -834,6 +839,7 @@ stamp-host: ${host_headers} ${host_headers_noinst} stamp-${host_alias}
(cd ${host_builddir} ;\
$(LN_S) ${host_headers} . || true ;\
$(LN_S) ${glibcxx_srcdir}/$(BASIC_FILE_H) basic_file.h || true ;\
+ $(LN_S) ${glibcxx_srcdir}/$(ALLOCATOR_H) c++allocator.h || true ;\
$(LN_S) ${glibcxx_srcdir}/$(CSTDIO_H) c++io.h || true ;\
$(LN_S) ${glibcxx_srcdir}/$(CLOCALE_H) c++locale.h || true ;\
$(LN_S) ${glibcxx_srcdir}/$(CLOCALE_INTERNAL_H) . || true ;\
@@ -857,6 +863,7 @@ ${host_builddir}/c++config.h: ${top_builddir}/config.h \
${host_builddir}/gthr.h: ${toplevel_srcdir}/gcc/gthr.h stamp-${host_alias}
sed -e '/^#/s/\(${uppercase}${uppercase}*\)/_GLIBCXX_\1/g' \
+ -e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \
-e 's,^#include "\(.*\)",#include <bits/\1>,g' \
< ${toplevel_srcdir}/gcc/gthr.h > $@
@@ -870,14 +877,16 @@ ${host_builddir}/gthr-posix.h: ${toplevel_srcdir}/gcc/gthr-posix.h \
stamp-${host_alias}
sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \
-e 's/\(GCC${uppercase}*_H\)/_GLIBCXX_\1/g' \
- -e 's/\(${uppercase}*WEAK\)/_GLIBCXX_\1/g' \
+ -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \
+ -e 's/\(${uppercase}*USE_WEAK\)/_GLIBCXX_\1/g' \
< ${toplevel_srcdir}/gcc/gthr-posix.h > $@
${host_builddir}/gthr-default.h: ${toplevel_srcdir}/gcc/${glibcxx_thread_h} \
stamp-${host_alias}
sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \
-e 's/\(GCC${uppercase}*_H\)/_GLIBCXX_\1/g' \
- -e 's/\(${uppercase}*WEAK\)/_GLIBCXX_\1/g' \
+ -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \
+ -e 's/\(${uppercase}*USE_WEAK\)/_GLIBCXX_\1/g' \
-e 's,^#include "\(.*\)",#include <bits/\1>,g' \
< ${toplevel_srcdir}/gcc/${glibcxx_thread_h} > $@
diff --git a/libstdc++-v3/include/backward/alloc.h b/libstdc++-v3/include/backward/alloc.h
index ad9e4e5bb3c..d3c3c738b95 100644
--- a/libstdc++-v3/include/backward/alloc.h
+++ b/libstdc++-v3/include/backward/alloc.h
@@ -1,6 +1,6 @@
// Backward-compat support -*- C++ -*-
-// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -47,9 +47,6 @@
#include <bits/c++config.h>
#include <bits/allocator.h>
-using __gnu_cxx::__pool_alloc;
-using std::__alloc;
-using std::__simple_alloc;
using std::allocator;
#endif
diff --git a/libstdc++-v3/include/backward/bvector.h b/libstdc++-v3/include/backward/bvector.h
index 5d12914525e..92457926788 100644
--- a/libstdc++-v3/include/backward/bvector.h
+++ b/libstdc++-v3/include/backward/bvector.h
@@ -1,6 +1,6 @@
// Backward-compat support -*- C++ -*-
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -59,7 +59,7 @@
#include "backward_warning.h"
#include <vector>
-using std::bit_vector;
+typedef std::vector<bool, std::allocator<bool> > bit_vector;
#endif /* _BACKWARD_BVECTOR_H */
diff --git a/libstdc++-v3/include/bits/allocator.h b/libstdc++-v3/include/bits/allocator.h
index 53d1d351f08..c9200ecd994 100644
--- a/libstdc++-v3/include/bits/allocator.h
+++ b/libstdc++-v3/include/bits/allocator.h
@@ -1,6 +1,6 @@
// Allocators -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -45,82 +45,41 @@
* You should not attempt to use it directly.
*/
-/**
- * @defgroup Allocators Memory Allocators
- * @if maint
- * allocator.h implements some node allocators. These are NOT the same as
- * allocators in the C++ standard, nor in the original H-P STL. They do not
- * encapsulate different pointer types; we assume that there is only one
- * pointer type. The C++ standard allocators are intended to allocate
- * individual objects, not pools or arenas.
- *
- * In this file allocators are of two different styles: "standard" and
- * "SGI" (quotes included). "Standard" allocators conform to 20.4. "SGI"
- * allocators differ in AT LEAST the following ways (add to this list as you
- * discover them):
- *
- * - "Standard" allocate() takes two parameters (n_count,hint=0) but "SGI"
- * allocate() takes one paramter (n_size).
- * - Likewise, "standard" deallocate()'s argument is a count, but in "SGI"
- * is a byte size.
- * - max_size(), construct(), and destroy() are missing in "SGI" allocators.
- * - reallocate(p,oldsz,newsz) is added in "SGI", and behaves as
- * if p=realloc(p,newsz).
- *
- * "SGI" allocators may be wrapped in __allocator to convert the interface
- * into a "standard" one.
- * @endif
- *
- * The canonical description of these classes is in docs/html/ext/howto.html
- * or online at http://gcc.gnu.org/onlinedocs/libstdc++/ext/howto.html#3
-*/
-
#ifndef _ALLOCATOR_H
#define _ALLOCATOR_H 1
-#include <bits/functexcept.h> // For __throw_bad_alloc
-#include <bits/allocator_traits.h>
-
-// Pick a default underlying allocator.
-#include <ext/pool_allocator.h>
+// Define the base class to std::allocator.
+#include <bits/c++allocator.h>
namespace std
{
- typedef __gnu_cxx::__pool_alloc<true, 0> __alloc;
+ template<typename _Tp>
+ class allocator;
- /// The version for the default allocator.
- template<typename _Tp, typename _Tp1>
- struct _Alloc_traits<_Tp, allocator<_Tp1> >
+ template<>
+ class allocator<void>
{
- static const bool _S_instanceless = true;
- typedef __simple_alloc<_Tp, __alloc> _Alloc_type;
- typedef allocator<_Tp> allocator_type;
+ public:
+ typedef size_t size_type;
+ typedef ptrdiff_t difference_type;
+ typedef void* pointer;
+ typedef const void* const_pointer;
+ typedef void value_type;
+
+ template<typename _Tp1>
+ struct rebind
+ { typedef allocator<_Tp1> other; };
};
- //@}
-}
-namespace std
-{
/**
* @brief The "standard" allocator, as per [20.4].
*
- * The private _Alloc is "SGI" style. (See comments at the top
- * of allocator.h.)
- *
- * The underlying allocator behaves as follows.
- * - __pool_alloc is used via two typedefs
- * - "__alloc" typedef is threadsafe via the locks
- * - __new_alloc is used for memory requests
- *
* (See @link Allocators allocators info @endlink for more.)
*/
template<typename _Tp>
- class allocator
+ class allocator: public ___glibcxx_base_allocator<_Tp>
{
- // The underlying allocator.
- typedef __alloc _Alloc;
-
- public:
+ public:
typedef size_t size_type;
typedef ptrdiff_t difference_type;
typedef _Tp* pointer;
@@ -135,68 +94,17 @@ namespace std
allocator() throw() { }
- allocator(const allocator&) throw() { }
+ allocator(const allocator& a) throw()
+ : ___glibcxx_base_allocator<_Tp>(a) { }
template<typename _Tp1>
allocator(const allocator<_Tp1>&) throw() { }
~allocator() throw() { }
- pointer
- address(reference __x) const { return &__x; }
-
- const_pointer
- address(const_reference __x) const { return &__x; }
-
- // NB: __n is permitted to be 0. The C++ standard says nothing
- // about what the return value is when __n == 0.
- _Tp*
- allocate(size_type __n, const void* = 0)
- {
- _Tp* __ret = 0;
- if (__n)
- {
- if (__n <= this->max_size())
- __ret = static_cast<_Tp*>(_Alloc::allocate(__n * sizeof(_Tp)));
- else
- __throw_bad_alloc();
- }
- return __ret;
- }
-
- // __p is not permitted to be a null pointer.
- void
- deallocate(pointer __p, size_type __n)
- { _Alloc::deallocate(__p, __n * sizeof(_Tp)); }
-
- size_type
- max_size() const throw() { return size_t(-1) / sizeof(_Tp); }
-
- // _GLIBCXX_RESOLVE_LIB_DEFECTS
- // 402. wrong new expression in [some_]allocator::construct
- void
- construct(pointer __p, const _Tp& __val) { ::new(__p) _Tp(__val); }
-
- void
- destroy(pointer __p) { __p->~_Tp(); }
- };
-
- template<>
- class allocator<void>
- {
- public:
- typedef size_t size_type;
- typedef ptrdiff_t difference_type;
- typedef void* pointer;
- typedef const void* const_pointer;
- typedef void value_type;
-
- template<typename _Tp1>
- struct rebind
- { typedef allocator<_Tp1> other; };
+ // Inherit everything else.
};
-
template<typename _T1, typename _T2>
inline bool
operator==(const allocator<_T1>&, const allocator<_T2>&)
@@ -214,6 +122,9 @@ namespace std
extern template class allocator<char>;
extern template class allocator<wchar_t>;
#endif
+
+ // Undefine.
+#undef ___glibcxx_base_allocator
} // namespace std
#endif
diff --git a/libstdc++-v3/include/bits/atomicity.h b/libstdc++-v3/include/bits/atomicity.h
new file mode 100644
index 00000000000..d2620b08e5d
--- /dev/null
+++ b/libstdc++-v3/include/bits/atomicity.h
@@ -0,0 +1,46 @@
+// Low-level functions for atomic operations -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#ifndef _GLIBCXX_ATOMICITY_H
+#define _GLIBCXX_ATOMICITY_H 1
+
+#include <bits/atomic_word.h>
+
+namespace __gnu_cxx
+{
+ _Atomic_word
+ __attribute__ ((__unused__))
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val);
+
+ void
+ __attribute__ ((__unused__))
+ __atomic_add(volatile _Atomic_word* __mem, int __val);
+} // namespace __gnu_cxx
+
+#endif
diff --git a/libstdc++-v3/include/bits/basic_ios.h b/libstdc++-v3/include/bits/basic_ios.h
index a9cb8d25dd9..8e0b31e37de 100644
--- a/libstdc++-v3/include/bits/basic_ios.h
+++ b/libstdc++-v3/include/bits/basic_ios.h
@@ -1,6 +1,6 @@
// Iostreams base classes -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -43,7 +43,7 @@
#include <bits/locale_classes.h>
#include <bits/locale_facets.h>
-namespace std
+namespace std
{
// 27.4.5 Template class basic_ios
/**
@@ -76,12 +76,12 @@ namespace std
* @endif
*/
typedef ctype<_CharT> __ctype_type;
- typedef num_put<_CharT, ostreambuf_iterator<_CharT, _Traits> >
+ typedef num_put<_CharT, ostreambuf_iterator<_CharT, _Traits> >
__num_put_type;
- typedef num_get<_CharT, istreambuf_iterator<_CharT, _Traits> >
- __num_get_type;
+ typedef num_get<_CharT, istreambuf_iterator<_CharT, _Traits> >
+ __num_get_type;
//@}
-
+
// Data members:
protected:
basic_ostream<_CharT, _Traits>* _M_tie;
@@ -90,7 +90,7 @@ namespace std
basic_streambuf<_CharT, _Traits>* _M_streambuf;
// Cached use_facet<ctype>, which is based on the current locale info.
- const __ctype_type* _M_ctype;
+ const __ctype_type* _M_ctype;
// For ostream.
const __num_put_type* _M_num_put;
// For istream.
@@ -104,11 +104,11 @@ namespace std
* This allows you to write constructs such as
* "if (!a_stream) ..." and "while (a_stream) ..."
*/
- operator void*() const
+ operator void*() const
{ return this->fail() ? 0 : const_cast<basic_ios*>(this); }
- bool
- operator!() const
+ bool
+ operator!() const
{ return this->fail(); }
//@}
@@ -119,8 +119,8 @@ namespace std
* See std::ios_base::iostate for the possible bit values. Most
* users will call one of the interpreting wrappers, e.g., good().
*/
- iostate
- rdstate() const
+ iostate
+ rdstate() const
{ return _M_streambuf_state; }
/**
@@ -130,7 +130,7 @@ namespace std
* See std::ios_base::iostate for the possible bit values. Most
* users will not need to pass an argument.
*/
- void
+ void
clear(iostate __state = goodbit);
/**
@@ -139,19 +139,19 @@ namespace std
*
* See std::ios_base::iostate for the possible bit values.
*/
- void
- setstate(iostate __state)
+ void
+ setstate(iostate __state)
{ this->clear(this->rdstate() | __state); }
// Flip the internal state on for the proper state bits, then re
// throws the propagated exception if bit also set in
// exceptions().
void
- _M_setstate(iostate __state)
- {
+ _M_setstate(iostate __state)
+ {
// 27.6.1.2.1 Common requirements.
// Turn this on without causing an ios::failure to be thrown.
- _M_streambuf_state |= __state;
+ _M_streambuf_state |= __state;
if (this->exceptions() & __state)
__throw_exception_again;
}
@@ -162,8 +162,8 @@ namespace std
*
* A wrapper around rdstate.
*/
- bool
- good() const
+ bool
+ good() const
{ return this->rdstate() == 0; }
/**
@@ -172,8 +172,8 @@ namespace std
*
* Note that other iostate flags may also be set.
*/
- bool
- eof() const
+ bool
+ eof() const
{ return (this->rdstate() & eofbit) != 0; }
/**
@@ -183,8 +183,8 @@ namespace std
* Checking the badbit in fail() is historical practice.
* Note that other iostate flags may also be set.
*/
- bool
- fail() const
+ bool
+ fail() const
{ return (this->rdstate() & (badbit | failbit)) != 0; }
/**
@@ -193,8 +193,8 @@ namespace std
*
* Note that other iostate flags may also be set.
*/
- bool
- bad() const
+ bool
+ bad() const
{ return (this->rdstate() & badbit) != 0; }
/**
@@ -204,8 +204,8 @@ namespace std
* This changes nothing in the stream. See the one-argument version
* of exceptions(iostate) for the meaning of the return value.
*/
- iostate
- exceptions() const
+ iostate
+ exceptions() const
{ return _M_exception; }
/**
@@ -224,26 +224,26 @@ namespace std
* #include <iostream>
* #include <fstream>
* #include <exception>
- *
+ *
* int main()
* {
* std::set_terminate (__gnu_cxx::__verbose_terminate_handler);
- *
+ *
* std::ifstream f ("/etc/motd");
- *
+ *
* std::cerr << "Setting badbit\n";
* f.setstate (std::ios_base::badbit);
- *
+ *
* std::cerr << "Setting exception mask\n";
* f.exceptions (std::ios_base::badbit);
* }
* @endcode
*/
- void
- exceptions(iostate __except)
- {
- _M_exception = __except;
- this->clear(_M_streambuf_state);
+ void
+ exceptions(iostate __except)
+ {
+ _M_exception = __except;
+ this->clear(_M_streambuf_state);
}
// Constructor/destructor:
@@ -252,8 +252,8 @@ namespace std
*
* The parameter is passed by derived streams.
*/
- explicit
- basic_ios(basic_streambuf<_CharT, _Traits>* __sb)
+ explicit
+ basic_ios(basic_streambuf<_CharT, _Traits>* __sb)
: ios_base(), _M_ctype(0), _M_num_put(0), _M_num_get(0)
{ this->init(__sb); }
@@ -263,9 +263,9 @@ namespace std
* The destructor does nothing. More specifically, it does not
* destroy the streambuf held by rdbuf().
*/
- virtual
+ virtual
~basic_ios() { }
-
+
// Members:
/**
* @brief Fetches the current @e tied stream.
@@ -277,7 +277,7 @@ namespace std
* first flushed. For example, @c std::cin is tied to @c std::cout.
*/
basic_ostream<_CharT, _Traits>*
- tie() const
+ tie() const
{ return _M_tie; }
/**
@@ -303,7 +303,7 @@ namespace std
* This does not change the state of the stream.
*/
basic_streambuf<_CharT, _Traits>*
- rdbuf() const
+ rdbuf() const
{ return _M_streambuf; }
/**
@@ -328,7 +328,7 @@ namespace std
* foo.ios::rdbuf(p); // ios == basic_ios<char>
* @endcode
*/
- basic_streambuf<_CharT, _Traits>*
+ basic_streambuf<_CharT, _Traits>*
rdbuf(basic_streambuf<_CharT, _Traits>* __sb);
/**
@@ -351,15 +351,15 @@ namespace std
*
* It defaults to a space (' ') in the current locale.
*/
- char_type
- fill() const
+ char_type
+ fill() const
{
if (!_M_fill_init)
{
_M_fill = this->widen(' ');
_M_fill_init = true;
}
- return _M_fill;
+ return _M_fill;
}
/**
@@ -371,7 +371,7 @@ namespace std
* have been requested (e.g., via setw), Q characters are actually
* used, and Q<P. It defaults to a space (' ') in the current locale.
*/
- char_type
+ char_type
fill(char_type __ch)
{
char_type __old = this->fill();
@@ -391,7 +391,7 @@ namespace std
* Additional l10n notes are at
* http://gcc.gnu.org/onlinedocs/libstdc++/22_locale/howto.html
*/
- locale
+ locale
imbue(const locale& __loc);
/**
@@ -411,7 +411,7 @@ namespace std
* Additional l10n notes are at
* http://gcc.gnu.org/onlinedocs/libstdc++/22_locale/howto.html
*/
- char
+ char
narrow(char_type __c, char __dfault) const;
/**
@@ -429,9 +429,9 @@ namespace std
* Additional l10n notes are at
* http://gcc.gnu.org/onlinedocs/libstdc++/22_locale/howto.html
*/
- char_type
+ char_type
widen(char __c) const;
-
+
protected:
// 27.4.5.1 basic_ios constructors
/**
@@ -449,7 +449,7 @@ namespace std
* This is called from the public constructor. It is not virtual and
* cannot be redefined.
*/
- void
+ void
init(basic_streambuf<_CharT, _Traits>* __sb);
void
diff --git a/libstdc++-v3/include/bits/basic_ios.tcc b/libstdc++-v3/include/bits/basic_ios.tcc
index 6f690e0585d..fcb4b02493f 100644
--- a/libstdc++-v3/include/bits/basic_ios.tcc
+++ b/libstdc++-v3/include/bits/basic_ios.tcc
@@ -37,17 +37,17 @@ namespace std
template<typename _CharT, typename _Traits>
void
basic_ios<_CharT, _Traits>::clear(iostate __state)
- {
+ {
if (this->rdbuf())
_M_streambuf_state = __state;
else
_M_streambuf_state = __state | badbit;
if (this->exceptions() & this->rdstate())
- __throw_ios_failure("basic_ios::clear");
+ __throw_ios_failure(__N("basic_ios::clear"));
}
-
+
template<typename _CharT, typename _Traits>
- basic_streambuf<_CharT, _Traits>*
+ basic_streambuf<_CharT, _Traits>*
basic_ios<_CharT, _Traits>::rdbuf(basic_streambuf<_CharT, _Traits>* __sb)
{
basic_streambuf<_CharT, _Traits>* __old = _M_streambuf;
@@ -66,17 +66,17 @@ namespace std
{
// Per 27.1.1, do not call imbue, yet must trash all caches
// associated with imbue()
-
+
// Alloc any new word array first, so if it fails we have "rollback".
_Words* __words = (__rhs._M_word_size <= _S_local_word_size) ?
_M_local_word : new _Words[__rhs._M_word_size];
// Bump refs before doing callbacks, for safety.
_Callback_list* __cb = __rhs._M_callbacks;
- if (__cb)
+ if (__cb)
__cb->_M_add_reference();
_M_call_callbacks(erase_event);
- if (_M_word != _M_local_word)
+ if (_M_word != _M_local_word)
{
delete [] _M_word;
_M_word = 0;
@@ -84,17 +84,17 @@ namespace std
_M_dispose_callbacks();
// NB: Don't want any added during above.
- _M_callbacks = __cb;
+ _M_callbacks = __cb;
for (int __i = 0; __i < __rhs._M_word_size; ++__i)
__words[__i] = __rhs._M_word[__i];
- if (_M_word != _M_local_word)
+ if (_M_word != _M_local_word)
{
delete [] _M_word;
_M_word = 0;
}
_M_word = __words;
_M_word_size = __rhs._M_word_size;
-
+
this->flags(__rhs.flags());
this->width(__rhs.width());
this->precision(__rhs.precision());
@@ -102,9 +102,9 @@ namespace std
this->fill(__rhs.fill());
_M_ios_locale = __rhs.getloc();
_M_cache_locale(_M_ios_locale);
-
+
_M_call_callbacks(copyfmt_event);
-
+
// The next is required to be the last assignment.
this->exceptions(__rhs.exceptions());
}
@@ -171,14 +171,22 @@ namespace std
{
if (__builtin_expect(has_facet<__ctype_type>(__loc), true))
_M_ctype = &use_facet<__ctype_type>(__loc);
+ else
+ _M_ctype = 0;
+
if (__builtin_expect(has_facet<__num_put_type>(__loc), true))
- _M_num_put = &use_facet<__num_put_type>(__loc);
+ _M_num_put = &use_facet<__num_put_type>(__loc);
+ else
+ _M_num_put = 0;
+
if (__builtin_expect(has_facet<__num_get_type>(__loc), true))
- _M_num_get = &use_facet<__num_get_type>(__loc);
+ _M_num_get = &use_facet<__num_get_type>(__loc);
+ else
+ _M_num_get = 0;
}
// Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
+ // which are defined via explicit instantiations elsewhere.
// NB: This syntax is a GNU extension.
#if _GLIBCXX_EXTERN_TEMPLATE
extern template class basic_ios<char>;
@@ -189,4 +197,4 @@ namespace std
#endif
} // namespace std
-#endif
+#endif
diff --git a/libstdc++-v3/include/bits/basic_string.h b/libstdc++-v3/include/bits/basic_string.h
index 0b679e0c081..a33cdefdb53 100644
--- a/libstdc++-v3/include/bits/basic_string.h
+++ b/libstdc++-v3/include/bits/basic_string.h
@@ -1,6 +1,6 @@
// Components for manipulating sequences of characters -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -73,7 +73,7 @@ namespace std
* [_Rep]
* _M_length
* [basic_string<char_type>] _M_capacity
- * _M_dataplus _M_state
+ * _M_dataplus _M_refcount
* _M_p ----------------> unnamed array of char_type
* @endcode
*
@@ -111,29 +111,28 @@ namespace std
{
// Types:
public:
- typedef _Traits traits_type;
- typedef typename _Traits::char_type value_type;
- typedef _Alloc allocator_type;
- typedef typename _Alloc::size_type size_type;
- typedef typename _Alloc::difference_type difference_type;
- typedef typename _Alloc::reference reference;
- typedef typename _Alloc::const_reference const_reference;
- typedef typename _Alloc::pointer pointer;
- typedef typename _Alloc::const_pointer const_pointer;
+ typedef _Traits traits_type;
+ typedef typename _Traits::char_type value_type;
+ typedef _Alloc allocator_type;
+ typedef typename _Alloc::size_type size_type;
+ typedef typename _Alloc::difference_type difference_type;
+ typedef typename _Alloc::reference reference;
+ typedef typename _Alloc::const_reference const_reference;
+ typedef typename _Alloc::pointer pointer;
+ typedef typename _Alloc::const_pointer const_pointer;
typedef __gnu_cxx::__normal_iterator<pointer, basic_string> iterator;
typedef __gnu_cxx::__normal_iterator<const_pointer, basic_string>
const_iterator;
- typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
- typedef std::reverse_iterator<iterator> reverse_iterator;
+ typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
+ typedef std::reverse_iterator<iterator> reverse_iterator;
private:
// _Rep: string representation
// Invariants:
- // 1. String really contains _M_length + 1 characters; last is set
- // to 0 only on call to c_str(). We avoid instantiating
- // _CharT() where the interface does not require it.
+ // 1. String really contains _M_length + 1 characters: due to 21.3.4
+ // must be kept null-terminated.
// 2. _M_capacity >= _M_length
- // Allocated memory is always _M_capacity + (1 * sizeof(_CharT)).
+ // Allocated memory is always (_M_capacity + 1) * sizeof(_CharT).
// 3. _M_refcount has three states:
// -1: leaked, one reference, no ref-copies allowed, non-const.
// 0: one reference, non-const.
@@ -144,8 +143,8 @@ namespace std
struct _Rep_base
{
- size_type _M_length;
- size_type _M_capacity;
+ size_type _M_length;
+ size_type _M_capacity;
_Atomic_word _M_refcount;
};
@@ -167,17 +166,17 @@ namespace std
// Solving for m:
// m = ((npos - sizeof(_Rep))/sizeof(CharT)) - 1
// In addition, this implementation quarters this amount.
- static const size_type _S_max_size;
- static const _CharT _S_terminal;
+ static const size_type _S_max_size;
+ static const _CharT _S_terminal;
// The following storage is init'd to 0 by the linker, resulting
// (carefully) in an empty string with one reference.
static size_type _S_empty_rep_storage[];
- static _Rep&
+ static _Rep&
_S_empty_rep()
{ return *reinterpret_cast<_Rep*>(&_S_empty_rep_storage); }
-
+
bool
_M_is_leaked() const
{ return this->_M_refcount < 0; }
@@ -198,10 +197,6 @@ namespace std
_M_refdata() throw()
{ return reinterpret_cast<_CharT*>(this + 1); }
- _CharT&
- operator[](size_t __s) throw()
- { return _M_refdata() [__s]; }
-
_CharT*
_M_grab(const _Alloc& __alloc1, const _Alloc& __alloc2)
{
@@ -211,13 +206,13 @@ namespace std
// Create & Destroy
static _Rep*
- _S_create(size_t, const _Alloc&);
+ _S_create(size_type, size_type, const _Alloc&);
void
_M_dispose(const _Alloc& __a)
{
if (__builtin_expect(this != &_S_empty_rep(), false))
- if (__exchange_and_add(&this->_M_refcount, -1) <= 0)
+ if (__gnu_cxx::__exchange_and_add(&this->_M_refcount, -1) <= 0)
_M_destroy(__a);
} // XXX MT
@@ -228,7 +223,7 @@ namespace std
_M_refcopy() throw()
{
if (__builtin_expect(this != &_S_empty_rep(), false))
- __atomic_add(&this->_M_refcount, 1);
+ __gnu_cxx::__atomic_add(&this->_M_refcount, 1);
return _M_refdata();
} // XXX MT
@@ -251,11 +246,11 @@ namespace std
// size that the allocator can hold.
/// @var
/// Value returned by various member functions when they fail.
- static const size_type npos = static_cast<size_type>(-1);
+ static const size_type npos = static_cast<size_type>(-1);
private:
// Data Members (private):
- mutable _Alloc_hider _M_dataplus;
+ mutable _Alloc_hider _M_dataplus;
_CharT*
_M_data() const
@@ -284,21 +279,20 @@ namespace std
_M_leak_hard();
}
- iterator
- _M_check(size_type __pos) const
+ size_type
+ _M_check(size_type __pos, const char* __s) const
{
if (__pos > this->size())
- __throw_out_of_range(__N("basic_string::_M_check"));
- return _M_ibegin() + __pos;
+ __throw_out_of_range(__N(__s));
+ return __pos;
}
- // NB: _M_fold doesn't check for a bad __pos1 value.
- iterator
- _M_fold(size_type __pos, size_type __off) const
+ // NB: _M_limit doesn't check for a bad __pos value.
+ size_type
+ _M_limit(size_type __pos, size_type __off) const
{
const bool __testoff = __off < this->size() - __pos;
- const size_type __newoff = __testoff ? __off : this->size() - __pos;
- return (_M_ibegin() + __pos + __newoff);
+ return __testoff ? __off : this->size() - __pos;
}
// _S_copy_chars is a separate template to permit specialization
@@ -383,7 +377,7 @@ namespace std
* @param s Source character array.
* @param n Number of characters to copy.
* @param a Allocator to use (default is default allocator).
- *
+ *
* NB: s must have at least n characters, '\0' has no special
* meaning.
*/
@@ -612,9 +606,9 @@ namespace std
*/
const_reference
operator[] (size_type __pos) const
- {
+ {
_GLIBCXX_DEBUG_ASSERT(__pos <= size());
- return _M_data()[__pos];
+ return _M_data()[__pos];
}
/**
@@ -737,9 +731,9 @@ namespace std
*/
basic_string&
append(const _CharT* __s)
- {
+ {
__glibcxx_requires_string(__s);
- return this->append(__s, traits_type::length(__s));
+ return this->append(__s, traits_type::length(__s));
}
/**
@@ -751,7 +745,8 @@ namespace std
* Appends n copies of c to this string.
*/
basic_string&
- append(size_type __n, _CharT __c);
+ append(size_type __n, _CharT __c)
+ { return _M_replace_aux(this->size(), size_type(0), __n, __c); }
/**
* @brief Append a range of characters.
@@ -772,7 +767,7 @@ namespace std
*/
void
push_back(_CharT __c)
- { this->replace(_M_iend(), _M_iend(), 1, __c); }
+ { _M_replace_aux(this->size(), size_type(0), size_type(1), __c); }
/**
* @brief Set value to contents of another string.
@@ -795,7 +790,10 @@ namespace std
* of available characters in @a str, the remainder of @a str is used.
*/
basic_string&
- assign(const basic_string& __str, size_type __pos, size_type __n);
+ assign(const basic_string& __str, size_type __pos, size_type __n)
+ { return this->assign(__str._M_data()
+ + __str._M_check(__pos, "basic_string::assign"),
+ __str._M_limit(__pos, __n)); }
/**
* @brief Set value to a C substring.
@@ -821,9 +819,9 @@ namespace std
*/
basic_string&
assign(const _CharT* __s)
- {
+ {
__glibcxx_requires_string(__s);
- return this->assign(__s, traits_type::length(__s));
+ return this->assign(__s, traits_type::length(__s));
}
/**
@@ -837,7 +835,7 @@ namespace std
*/
basic_string&
assign(size_type __n, _CharT __c)
- { return this->replace(_M_ibegin(), _M_iend(), __n, __c); }
+ { return _M_replace_aux(size_type(0), this->size(), __n, __c); }
/**
* @brief Set value to a range of characters.
@@ -872,7 +870,7 @@ namespace std
* @brief Insert a range of characters.
* @param p Iterator referencing location in string to insert at.
* @param beg Start of range.
- * @param end End of range.
+ * @param end End of range.
* @throw std::length_error If new length exceeds @c max_size().
*
* Inserts characters in range [beg,end). If adding characters causes
@@ -896,7 +894,7 @@ namespace std
*/
basic_string&
insert(size_type __pos1, const basic_string& __str)
- { return this->insert(__pos1, __str, 0, __str.size()); }
+ { return this->insert(__pos1, __str, size_type(0), __str.size()); }
/**
* @brief Insert a substring.
@@ -918,7 +916,10 @@ namespace std
*/
basic_string&
insert(size_type __pos1, const basic_string& __str,
- size_type __pos2, size_type __n);
+ size_type __pos2, size_type __n)
+ { return this->insert(__pos1, __str._M_data()
+ + __str._M_check(__pos2, "basic_string::insert"),
+ __str._M_limit(__pos2, __n)); }
/**
* @brief Insert a C substring.
@@ -928,7 +929,7 @@ namespace std
* @return Reference to this string.
* @throw std::length_error If new length exceeds @c max_size().
* @throw std::out_of_range If @a pos is beyond the end of this
- * string.
+ * string.
*
* Inserts the first @a n characters of @a s starting at @a pos. If
* adding characters causes the length to exceed max_size(),
@@ -956,9 +957,9 @@ namespace std
*/
basic_string&
insert(size_type __pos, const _CharT* __s)
- {
+ {
__glibcxx_requires_string(__s);
- return this->insert(__pos, __s, traits_type::length(__s));
+ return this->insert(__pos, __s, traits_type::length(__s));
}
/**
@@ -979,10 +980,8 @@ namespace std
*/
basic_string&
insert(size_type __pos, size_type __n, _CharT __c)
- {
- this->insert(_M_check(__pos), __n, __c);
- return *this;
- }
+ { return _M_replace_aux(_M_check(__pos, "basic_string::insert"),
+ size_type(0), __n, __c); }
/**
* @brief Insert one character.
@@ -990,7 +989,6 @@ namespace std
* @param c The character to insert.
* @return Iterator referencing newly inserted char.
* @throw std::length_error If new length exceeds @c max_size().
- * @throw std::out_of_range If @a p is beyond the end of this string.
*
* Inserts character @a c at position referenced by @a p. If adding
* character causes the length to exceed max_size(), length_error is
@@ -1002,30 +1000,11 @@ namespace std
{
_GLIBCXX_DEBUG_PEDASSERT(__p >= _M_ibegin() && __p <= _M_iend());
const size_type __pos = __p - _M_ibegin();
- this->insert(_M_check(__pos), size_type(1), __c);
+ _M_replace_aux(__pos, size_type(0), size_type(1), __c);
_M_rep()->_M_set_leaked();
- return this->_M_ibegin() + __pos;
+ return this->_M_ibegin() + __pos;
}
-#ifdef _GLIBCXX_DEPRECATED
- /**
- * @brief Insert one default-constructed character.
- * @param p Iterator referencing position in string to insert at.
- * @return Iterator referencing newly inserted char.
- * @throw std::length_error If new length exceeds @c max_size().
- * @throw std::out_of_range If @a p is beyond the end of this string.
- *
- * Inserts a default-constructed character at position
- * referenced by @a p. If adding character causes the length
- * to exceed max_size(), length_error is thrown. If @a p is
- * beyond end of string, out_of_range is thrown. The value of
- * the string doesn't change if an error is thrown.
- */
- iterator
- insert(iterator __p)
- { return this->insert(__p, _CharT()); }
-#endif /* _GLIBCXX_DEPRECATED */
-
/**
* @brief Remove characters.
* @param pos Index of first character to remove (default 0).
@@ -1042,31 +1021,26 @@ namespace std
*/
basic_string&
erase(size_type __pos = 0, size_type __n = npos)
- {
- return this->replace(_M_check(__pos), _M_fold(__pos, __n),
- _M_data(), _M_data());
- }
+ { return _M_replace_safe(_M_check(__pos, "basic_string::erase"),
+ _M_limit(__pos, __n), NULL, size_type(0)); }
/**
* @brief Remove one character.
* @param position Iterator referencing the character to remove.
* @return iterator referencing same location after removal.
- * @throw std::out_of_range If @a position is beyond the end of this
- * string.
*
- * Removes the character at @a position from this string. If @a
- * position is beyond end of string, out_of_range is thrown. The value
+ * Removes the character at @a position from this string. The value
* of the string doesn't change if an error is thrown.
*/
iterator
erase(iterator __position)
{
- _GLIBCXX_DEBUG_PEDASSERT(__position >= _M_ibegin()
+ _GLIBCXX_DEBUG_PEDASSERT(__position >= _M_ibegin()
&& __position < _M_iend());
- const size_type __i = __position - _M_ibegin();
- this->replace(__position, __position + 1, _M_data(), _M_data());
+ const size_type __pos = __position - _M_ibegin();
+ _M_replace_safe(__pos, size_type(1), NULL, size_type(0));
_M_rep()->_M_set_leaked();
- return _M_ibegin() + __i;
+ return _M_ibegin() + __pos;
}
/**
@@ -1074,22 +1048,19 @@ namespace std
* @param first Iterator referencing the first character to remove.
* @param last Iterator referencing the end of the range.
* @return Iterator referencing location of first after removal.
- * @throw std::out_of_range If @a first is beyond the end of this
- * string.
*
* Removes the characters in the range [first,last) from this string.
- * If @a first is beyond end of string, out_of_range is thrown. The
- * value of the string doesn't change if an error is thrown.
+ * The value of the string doesn't change if an error is thrown.
*/
iterator
erase(iterator __first, iterator __last)
{
_GLIBCXX_DEBUG_PEDASSERT(__first >= _M_ibegin() && __first <= __last
&& __last <= _M_iend());
- const size_type __i = __first - _M_ibegin();
- this->replace(__first, __last, _M_data(), _M_data());
+ const size_type __pos = __first - _M_ibegin();
+ _M_replace_safe(__pos, __last - __first, NULL, size_type(0));
_M_rep()->_M_set_leaked();
- return _M_ibegin() + __i;
+ return _M_ibegin() + __pos;
}
/**
@@ -1099,7 +1070,7 @@ namespace std
* @param str String to insert.
* @return Reference to this string.
* @throw std::out_of_range If @a pos is beyond the end of this
- * string.
+ * string.
* @throw std::length_error If new length exceeds @c max_size().
*
* Removes the characters in the range [pos,pos+n) from this string.
@@ -1121,7 +1092,7 @@ namespace std
* @param n2 Number of characters from str to use.
* @return Reference to this string.
* @throw std::out_of_range If @a pos1 > size() or @a pos2 >
- * str.size().
+ * str.size().
* @throw std::length_error If new length exceeds @c max_size().
*
* Removes the characters in the range [pos1,pos1 + n) from this
@@ -1132,7 +1103,10 @@ namespace std
*/
basic_string&
replace(size_type __pos1, size_type __n1, const basic_string& __str,
- size_type __pos2, size_type __n2);
+ size_type __pos2, size_type __n2)
+ { return this->replace(__pos1, __n1, __str._M_data()
+ + __str._M_check(__pos2, "basic_string::replace"),
+ __str._M_limit(__pos2, __n2)); }
/**
* @brief Replace characters with value of a C substring.
@@ -1172,9 +1146,9 @@ namespace std
*/
basic_string&
replace(size_type __pos, size_type __n1, const _CharT* __s)
- {
+ {
__glibcxx_requires_string(__s);
- return this->replace(__pos, __n1, __s, traits_type::length(__s));
+ return this->replace(__pos, __n1, __s, traits_type::length(__s));
}
/**
@@ -1195,7 +1169,8 @@ namespace std
*/
basic_string&
replace(size_type __pos, size_type __n1, size_type __n2, _CharT __c)
- { return this->replace(_M_check(__pos), _M_fold(__pos, __n1), __n2, __c); }
+ { return _M_replace_aux(_M_check(__pos, "basic_string::replace"),
+ _M_limit(__pos, __n1), __n2, __c); }
/**
* @brief Replace range of characters with string.
@@ -1212,11 +1187,7 @@ namespace std
*/
basic_string&
replace(iterator __i1, iterator __i2, const basic_string& __str)
- {
- _GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() <= __i1 && __i1 <= __i2
- && __i2 <= _M_iend());
- return this->replace(__i1, __i2, __str._M_data(), __str.size());
- }
+ { return this->replace(__i1, __i2, __str._M_data(), __str.size()); }
/**
* @brief Replace range of characters with C substring.
@@ -1233,9 +1204,12 @@ namespace std
* change if an error is thrown.
*/
basic_string&
- replace(iterator __i1, iterator __i2,
- const _CharT* __s, size_type __n)
- { return this->replace(__i1 - _M_ibegin(), __i2 - __i1, __s, __n); }
+ replace(iterator __i1, iterator __i2, const _CharT* __s, size_type __n)
+ {
+ _GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() <= __i1 && __i1 <= __i2
+ && __i2 <= _M_iend());
+ return this->replace(__i1 - _M_ibegin(), __i2 - __i1, __s, __n);
+ }
/**
* @brief Replace range of characters with C string.
@@ -1252,11 +1226,9 @@ namespace std
*/
basic_string&
replace(iterator __i1, iterator __i2, const _CharT* __s)
- {
- _GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() <= __i1 && __i1 <= __i2
- && __i2 <= _M_iend());
+ {
__glibcxx_requires_string(__s);
- return this->replace(__i1, __i2, __s, traits_type::length(__s));
+ return this->replace(__i1, __i2, __s, traits_type::length(__s));
}
/**
@@ -1275,10 +1247,10 @@ namespace std
*/
basic_string&
replace(iterator __i1, iterator __i2, size_type __n, _CharT __c)
- {
+ {
_GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() <= __i1 && __i1 <= __i2
&& __i2 <= _M_iend());
- return _M_replace_aux(__i1, __i2, __n, __c);
+ return _M_replace_aux(__i1 - _M_ibegin(), __i2 - __i1, __n, __c);
}
/**
@@ -1299,40 +1271,40 @@ namespace std
basic_string&
replace(iterator __i1, iterator __i2,
_InputIterator __k1, _InputIterator __k2)
- {
+ {
_GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() <= __i1 && __i1 <= __i2
&& __i2 <= _M_iend());
__glibcxx_requires_valid_range(__k1, __k2);
typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
- return _M_replace_dispatch(__i1, __i2, __k1, __k2, _Integral());
+ return _M_replace_dispatch(__i1, __i2, __k1, __k2, _Integral());
}
// Specializations for the common case of pointer and iterator:
// useful to avoid the overhead of temporary buffering in _M_replace.
basic_string&
replace(iterator __i1, iterator __i2, _CharT* __k1, _CharT* __k2)
- {
+ {
_GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() <= __i1 && __i1 <= __i2
&& __i2 <= _M_iend());
__glibcxx_requires_valid_range(__k1, __k2);
return this->replace(__i1 - _M_ibegin(), __i2 - __i1,
- __k1, __k2 - __k1);
+ __k1, __k2 - __k1);
}
basic_string&
- replace(iterator __i1, iterator __i2,
+ replace(iterator __i1, iterator __i2,
const _CharT* __k1, const _CharT* __k2)
- {
+ {
_GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() <= __i1 && __i1 <= __i2
&& __i2 <= _M_iend());
__glibcxx_requires_valid_range(__k1, __k2);
return this->replace(__i1 - _M_ibegin(), __i2 - __i1,
- __k1, __k2 - __k1);
+ __k1, __k2 - __k1);
}
basic_string&
replace(iterator __i1, iterator __i2, iterator __k1, iterator __k2)
- {
+ {
_GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() <= __i1 && __i1 <= __i2
&& __i2 <= _M_iend());
__glibcxx_requires_valid_range(__k1, __k2);
@@ -1341,9 +1313,9 @@ namespace std
}
basic_string&
- replace(iterator __i1, iterator __i2,
+ replace(iterator __i1, iterator __i2,
const_iterator __k1, const_iterator __k2)
- {
+ {
_GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() <= __i1 && __i1 <= __i2
&& __i2 <= _M_iend());
__glibcxx_requires_valid_range(__k1, __k2);
@@ -1354,39 +1326,43 @@ namespace std
private:
template<class _Integer>
basic_string&
- _M_replace_dispatch(iterator __i1, iterator __i2, _Integer __n,
+ _M_replace_dispatch(iterator __i1, iterator __i2, _Integer __n,
_Integer __val, __true_type)
- { return _M_replace_aux(__i1, __i2, __n, __val); }
+ { return _M_replace_aux(__i1 - _M_ibegin(), __i2 - __i1, __n, __val); }
template<class _InputIterator>
basic_string&
_M_replace_dispatch(iterator __i1, iterator __i2, _InputIterator __k1,
- _InputIterator __k2, __false_type)
- {
- typedef typename iterator_traits<_InputIterator>::iterator_category
- _Category;
- return _M_replace(__i1, __i2, __k1, __k2, _Category());
- }
+ _InputIterator __k2, __false_type);
basic_string&
- _M_replace_aux(iterator __i1, iterator __i2, size_type __n2, _CharT __c);
-
- template<class _InputIterator>
- basic_string&
- _M_replace(iterator __i1, iterator __i2, _InputIterator __k1,
- _InputIterator __k2, input_iterator_tag);
+ _M_replace_aux(size_type __pos1, size_type __n1, size_type __n2,
+ _CharT __c)
+ {
+ if (this->max_size() - (this->size() - __n1) < __n2)
+ __throw_length_error(__N("basic_string::_M_replace_aux"));
+ _M_mutate(__pos1, __n1, __n2);
+ if (__n2)
+ traits_type::assign(_M_data() + __pos1, __n2, __c);
+ return *this;
+ }
- template<class _ForwardIterator>
- basic_string&
- _M_replace_safe(iterator __i1, iterator __i2, _ForwardIterator __k1,
- _ForwardIterator __k2);
+ basic_string&
+ _M_replace_safe(size_type __pos1, size_type __n1, const _CharT* __s,
+ size_type __n2)
+ {
+ _M_mutate(__pos1, __n1, __n2);
+ if (__n2)
+ traits_type::copy(_M_data() + __pos1, __s, __n2);
+ return *this;
+ }
// _S_construct_aux is used to implement the 21.3.1 para 15 which
// requires special behaviour if _InIter is an integral type
template<class _InIterator>
static _CharT*
- _S_construct_aux(_InIterator __beg, _InIterator __end, const _Alloc& __a,
- __false_type)
+ _S_construct_aux(_InIterator __beg, _InIterator __end,
+ const _Alloc& __a, __false_type)
{
typedef typename iterator_traits<_InIterator>::iterator_category _Tag;
return _S_construct(__beg, __end, __a, _Tag());
@@ -1394,12 +1370,10 @@ namespace std
template<class _InIterator>
static _CharT*
- _S_construct_aux(_InIterator __beg, _InIterator __end, const _Alloc& __a,
- __true_type)
- {
- return _S_construct(static_cast<size_type>(__beg),
- static_cast<value_type>(__end), __a);
- }
+ _S_construct_aux(_InIterator __beg, _InIterator __end,
+ const _Alloc& __a, __true_type)
+ { return _S_construct(static_cast<size_type>(__beg),
+ static_cast<value_type>(__end), __a); }
template<class _InIterator>
static _CharT*
@@ -1459,19 +1433,13 @@ namespace std
* happen.
*/
const _CharT*
- c_str() const
- {
- // MT: This assumes concurrent writes are OK.
- const size_type __n = this->size();
- traits_type::assign(_M_data()[__n], _Rep::_S_terminal);
- return _M_data();
- }
+ c_str() const { return _M_data(); }
/**
* @brief Return const pointer to contents.
*
- * This is a handle to internal data. It may not be null-terminated.
- * Do not modify or dire things may happen.
+ * This is a handle to internal data. Do not modify or dire things may
+ * happen.
*/
const _CharT*
data() const { return _M_data(); }
@@ -1522,9 +1490,9 @@ namespace std
*/
size_type
find(const _CharT* __s, size_type __pos = 0) const
- {
+ {
__glibcxx_requires_string(__s);
- return this->find(__s, __pos, traits_type::length(__s));
+ return this->find(__s, __pos, traits_type::length(__s));
}
/**
@@ -1580,9 +1548,9 @@ namespace std
*/
size_type
rfind(const _CharT* __s, size_type __pos = npos) const
- {
+ {
__glibcxx_requires_string(__s);
- return this->rfind(__s, __pos, traits_type::length(__s));
+ return this->rfind(__s, __pos, traits_type::length(__s));
}
/**
@@ -1638,9 +1606,9 @@ namespace std
*/
size_type
find_first_of(const _CharT* __s, size_type __pos = 0) const
- {
+ {
__glibcxx_requires_string(__s);
- return this->find_first_of(__s, __pos, traits_type::length(__s));
+ return this->find_first_of(__s, __pos, traits_type::length(__s));
}
/**
@@ -1699,9 +1667,9 @@ namespace std
*/
size_type
find_last_of(const _CharT* __s, size_type __pos = npos) const
- {
+ {
__glibcxx_requires_string(__s);
- return this->find_last_of(__s, __pos, traits_type::length(__s));
+ return this->find_last_of(__s, __pos, traits_type::length(__s));
}
/**
@@ -1761,9 +1729,9 @@ namespace std
*/
size_type
find_first_not_of(const _CharT* __s, size_type __pos = 0) const
- {
+ {
__glibcxx_requires_string(__s);
- return this->find_first_not_of(__s, __pos, traits_type::length(__s));
+ return this->find_first_not_of(__s, __pos, traits_type::length(__s));
}
/**
@@ -1820,9 +1788,9 @@ namespace std
*/
size_type
find_last_not_of(const _CharT* __s, size_type __pos = npos) const
- {
+ {
__glibcxx_requires_string(__s);
- return this->find_last_not_of(__s, __pos, traits_type::length(__s));
+ return this->find_last_not_of(__s, __pos, traits_type::length(__s));
}
/**
@@ -1852,11 +1820,8 @@ namespace std
*/
basic_string
substr(size_type __pos = 0, size_type __n = npos) const
- {
- if (__pos > this->size())
- __throw_out_of_range(__N("basic_string::substr"));
- return basic_string(*this, __pos, __n);
- }
+ { return basic_string(*this,
+ _M_check(__pos, "basic_string::substr"), __n); }
/**
* @brief Compare to a string.
@@ -1969,9 +1934,10 @@ namespace std
* at @a pos1. Form a string from the first @a n2 characters of @a s.
* Returns an integer < 0 if this substring is ordered before the string
* from @a s, 0 if their values are equivalent, or > 0 if this substring
- * is ordered after the string from @a s. If the lengths of this substring
- * and @a n2 are different, the shorter one is ordered first. If they are
- * the same, returns the result of traits::compare(substring.data(),s,size());
+ * is ordered after the string from @a s. If the lengths of this
+ * substring and @a n2 are different, the shorter one is ordered first.
+ * If they are the same, returns the result of
+ * traits::compare(substring.data(),s,size());
*
* NB: s must have at least n2 characters, '\0' has no special
* meaning.
@@ -1993,7 +1959,7 @@ namespace std
* @param lhs First string.
* @param rhs Last string.
* @return New string with value of @a lhs followed by @a rhs.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
basic_string<_CharT, _Traits, _Alloc>
operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2009,7 +1975,7 @@ namespace std
* @param lhs First string.
* @param rhs Last string.
* @return New string with value of @a lhs followed by @a rhs.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
basic_string<_CharT,_Traits,_Alloc>
operator+(const _CharT* __lhs,
@@ -2020,7 +1986,7 @@ namespace std
* @param lhs First string.
* @param rhs Last string.
* @return New string with @a lhs followed by @a rhs.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
basic_string<_CharT,_Traits,_Alloc>
operator+(_CharT __lhs, const basic_string<_CharT,_Traits,_Alloc>& __rhs);
@@ -2030,7 +1996,7 @@ namespace std
* @param lhs First string.
* @param rhs Last string.
* @return New string with @a lhs followed by @a rhs.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline basic_string<_CharT, _Traits, _Alloc>
operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2046,12 +2012,12 @@ namespace std
* @param lhs First string.
* @param rhs Last string.
* @return New string with @a lhs followed by @a rhs.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline basic_string<_CharT, _Traits, _Alloc>
operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs, _CharT __rhs)
{
- typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
+ typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
typedef typename __string_type::size_type __size_type;
__string_type __str(__lhs);
__str.append(__size_type(1), __rhs);
@@ -2064,7 +2030,7 @@ namespace std
* @param lhs First string.
* @param rhs Second string.
* @return True if @a lhs.compare(@a rhs) == 0. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator==(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2076,7 +2042,7 @@ namespace std
* @param lhs C string.
* @param rhs String.
* @return True if @a rhs.compare(@a lhs) == 0. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator==(const _CharT* __lhs,
@@ -2088,7 +2054,7 @@ namespace std
* @param lhs String.
* @param rhs C string.
* @return True if @a lhs.compare(@a rhs) == 0. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator==(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2101,7 +2067,7 @@ namespace std
* @param lhs First string.
* @param rhs Second string.
* @return True if @a lhs.compare(@a rhs) != 0. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2113,7 +2079,7 @@ namespace std
* @param lhs C string.
* @param rhs String.
* @return True if @a rhs.compare(@a lhs) != 0. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator!=(const _CharT* __lhs,
@@ -2125,7 +2091,7 @@ namespace std
* @param lhs String.
* @param rhs C string.
* @return True if @a lhs.compare(@a rhs) != 0. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2138,7 +2104,7 @@ namespace std
* @param lhs First string.
* @param rhs Second string.
* @return True if @a lhs precedes @a rhs. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator<(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2150,7 +2116,7 @@ namespace std
* @param lhs String.
* @param rhs C string.
* @return True if @a lhs precedes @a rhs. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator<(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2162,7 +2128,7 @@ namespace std
* @param lhs C string.
* @param rhs String.
* @return True if @a lhs precedes @a rhs. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator<(const _CharT* __lhs,
@@ -2175,7 +2141,7 @@ namespace std
* @param lhs First string.
* @param rhs Second string.
* @return True if @a lhs follows @a rhs. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator>(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2187,7 +2153,7 @@ namespace std
* @param lhs String.
* @param rhs C string.
* @return True if @a lhs follows @a rhs. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator>(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2199,7 +2165,7 @@ namespace std
* @param lhs C string.
* @param rhs String.
* @return True if @a lhs follows @a rhs. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator>(const _CharT* __lhs,
@@ -2212,7 +2178,7 @@ namespace std
* @param lhs First string.
* @param rhs Second string.
* @return True if @a lhs doesn't follow @a rhs. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator<=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2224,7 +2190,7 @@ namespace std
* @param lhs String.
* @param rhs C string.
* @return True if @a lhs doesn't follow @a rhs. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator<=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2236,7 +2202,7 @@ namespace std
* @param lhs C string.
* @param rhs String.
* @return True if @a lhs doesn't follow @a rhs. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator<=(const _CharT* __lhs,
@@ -2249,7 +2215,7 @@ namespace std
* @param lhs First string.
* @param rhs Second string.
* @return True if @a lhs doesn't precede @a rhs. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator>=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2261,7 +2227,7 @@ namespace std
* @param lhs String.
* @param rhs C string.
* @return True if @a lhs doesn't precede @a rhs. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator>=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
@@ -2273,7 +2239,7 @@ namespace std
* @param lhs C string.
* @param rhs String.
* @return True if @a lhs doesn't precede @a rhs. False otherwise.
- */
+ */
template<typename _CharT, typename _Traits, typename _Alloc>
inline bool
operator>=(const _CharT* __lhs,
@@ -2285,7 +2251,7 @@ namespace std
* @param lhs First string.
* @param rhs Second string.
*
- * Exchanges the contents of @a lhs and @a rhs in constant time.
+ * Exchanges the contents of @a lhs and @a rhs in constant time.
*/
template<typename _CharT, typename _Traits, typename _Alloc>
inline void
diff --git a/libstdc++-v3/include/bits/basic_string.tcc b/libstdc++-v3/include/bits/basic_string.tcc
index 87eac7adda8..4a79333ca87 100644
--- a/libstdc++-v3/include/bits/basic_string.tcc
+++ b/libstdc++-v3/include/bits/basic_string.tcc
@@ -1,6 +1,6 @@
// Components for manipulating sequences of characters -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -56,12 +56,12 @@ namespace std
{ return false; }
template<typename _CharT, typename _Traits, typename _Alloc>
- const typename basic_string<_CharT, _Traits, _Alloc>::size_type
+ const typename basic_string<_CharT, _Traits, _Alloc>::size_type
basic_string<_CharT, _Traits, _Alloc>::
_Rep::_S_max_size = (((npos - sizeof(_Rep_base))/sizeof(_CharT)) - 1) / 4;
template<typename _CharT, typename _Traits, typename _Alloc>
- const _CharT
+ const _CharT
basic_string<_CharT, _Traits, _Alloc>::
_Rep::_S_terminal = _CharT();
@@ -92,82 +92,67 @@ namespace std
return _S_empty_rep()._M_refdata();
// Avoid reallocation for common case.
_CharT __buf[100];
- size_type __i = 0;
- while (__beg != __end && __i < sizeof(__buf) / sizeof(_CharT))
- {
- __buf[__i++] = *__beg;
- ++__beg;
+ size_type __len = 0;
+ while (__beg != __end && __len < sizeof(__buf) / sizeof(_CharT))
+ {
+ __buf[__len++] = *__beg;
+ ++__beg;
}
- _Rep* __r = _Rep::_S_create(__i, __a);
- traits_type::copy(__r->_M_refdata(), __buf, __i);
- __r->_M_length = __i;
- try
+ _Rep* __r = _Rep::_S_create(__len, size_type(0), __a);
+ traits_type::copy(__r->_M_refdata(), __buf, __len);
+ try
{
- // NB: this loop looks precisely this way because
- // it avoids comparing __beg != __end any more
- // than strictly necessary; != might be expensive!
- for (;;)
+ while (__beg != __end)
{
- _CharT* __p = __r->_M_refdata() + __r->_M_length;
- _CharT* __last = __r->_M_refdata() + __r->_M_capacity;
- for (;;)
+ if (__len == __r->_M_capacity)
{
- if (__beg == __end)
- {
- __r->_M_length = __p - __r->_M_refdata();
- *__p = _Rep::_S_terminal; // grrr.
- return __r->_M_refdata();
- }
- if (__p == __last)
- break;
- *__p++ = *__beg;
- ++__beg;
+ // Allocate more space.
+ _Rep* __another = _Rep::_S_create(__len + 1, __len, __a);
+ traits_type::copy(__another->_M_refdata(),
+ __r->_M_refdata(), __len);
+ __r->_M_destroy(__a);
+ __r = __another;
}
- // Allocate more space.
- const size_type __len = __p - __r->_M_refdata();
- _Rep* __another = _Rep::_S_create(__len + 1, __a);
- traits_type::copy(__another->_M_refdata(),
- __r->_M_refdata(), __len);
- __r->_M_destroy(__a);
- __r = __another;
- __r->_M_length = __len;
+ __r->_M_refdata()[__len++] = *__beg;
+ ++__beg;
}
}
- catch(...)
+ catch(...)
{
- __r->_M_destroy(__a);
+ __r->_M_destroy(__a);
__throw_exception_again;
}
- return 0;
+ __r->_M_length = __len;
+ __r->_M_refdata()[__len] = _Rep::_S_terminal; // grrr.
+ return __r->_M_refdata();
}
-
+
template<typename _CharT, typename _Traits, typename _Alloc>
- template <class _InIterator>
+ template <typename _InIterator>
_CharT*
basic_string<_CharT, _Traits, _Alloc>::
- _S_construct(_InIterator __beg, _InIterator __end, const _Alloc& __a,
+ _S_construct(_InIterator __beg, _InIterator __end, const _Alloc& __a,
forward_iterator_tag)
{
if (__beg == __end && __a == _Alloc())
return _S_empty_rep()._M_refdata();
- // NB: Not required, but considered best practice.
+ // NB: Not required, but considered best practice.
if (__builtin_expect(__is_null_pointer(__beg), 0))
- __throw_logic_error("basic_string::_S_construct NULL not valid");
+ __throw_logic_error(__N("basic_string::_S_construct NULL not valid"));
- const size_type __dnew = static_cast<size_type>(std::distance(__beg, __end));
-
+ const size_type __dnew = static_cast<size_type>(std::distance(__beg,
+ __end));
// Check for out_of_range and length_error exceptions.
- _Rep* __r = _Rep::_S_create(__dnew, __a);
- try
+ _Rep* __r = _Rep::_S_create(__dnew, size_type(0), __a);
+ try
{ _S_copy_chars(__r->_M_refdata(), __beg, __end); }
- catch(...)
- {
- __r->_M_destroy(__a);
+ catch(...)
+ {
+ __r->_M_destroy(__a);
__throw_exception_again;
}
__r->_M_length = __dnew;
-
__r->_M_refdata()[__dnew] = _Rep::_S_terminal; // grrr.
return __r->_M_refdata();
}
@@ -181,17 +166,10 @@ namespace std
return _S_empty_rep()._M_refdata();
// Check for out_of_range and length_error exceptions.
- _Rep* __r = _Rep::_S_create(__n, __a);
- try
- {
- if (__n)
- traits_type::assign(__r->_M_refdata(), __n, __c);
- }
- catch(...)
- {
- __r->_M_destroy(__a);
- __throw_exception_again;
- }
+ _Rep* __r = _Rep::_S_create(__n, size_type(0), __a);
+ if (__n)
+ traits_type::assign(__r->_M_refdata(), __n, __c);
+
__r->_M_length = __n;
__r->_M_refdata()[__n] = _Rep::_S_terminal; // grrr
return __r->_M_refdata();
@@ -209,20 +187,26 @@ namespace std
basic_string(const _Alloc& __a)
: _M_dataplus(_S_construct(size_type(), _CharT(), __a), __a)
{ }
-
+
template<typename _CharT, typename _Traits, typename _Alloc>
basic_string<_CharT, _Traits, _Alloc>::
basic_string(const basic_string& __str, size_type __pos, size_type __n)
- : _M_dataplus(_S_construct(__str._M_check(__pos),
- __str._M_fold(__pos, __n), _Alloc()), _Alloc())
+ : _M_dataplus(_S_construct(__str._M_data()
+ + __str._M_check(__pos,
+ "basic_string::basic_string"),
+ __str._M_data() + __str._M_limit(__pos, __n)
+ + __pos, _Alloc()), _Alloc())
{ }
template<typename _CharT, typename _Traits, typename _Alloc>
basic_string<_CharT, _Traits, _Alloc>::
basic_string(const basic_string& __str, size_type __pos,
size_type __n, const _Alloc& __a)
- : _M_dataplus(_S_construct(__str._M_check(__pos),
- __str._M_fold(__pos, __n), __a), __a)
+ : _M_dataplus(_S_construct(__str._M_data()
+ + __str._M_check(__pos,
+ "basic_string::basic_string"),
+ __str._M_data() + __str._M_limit(__pos, __n)
+ + __pos, __a), __a)
{ }
// TBD: DPG annotate
@@ -246,7 +230,7 @@ namespace std
: _M_dataplus(_S_construct(__n, __c, __a), __a)
{ }
- // TBD: DPG annotate
+ // TBD: DPG annotate
template<typename _CharT, typename _Traits, typename _Alloc>
template<typename _InputIterator>
basic_string<_CharT, _Traits, _Alloc>::
@@ -262,7 +246,7 @@ namespace std
if (_M_rep() != __str._M_rep())
{
// XXX MT
- allocator_type __a = this->get_allocator();
+ const allocator_type __a = this->get_allocator();
_CharT* __tmp = __str._M_rep()->_M_grab(__a, __str.get_allocator());
_M_rep()->_M_dispose(__a);
_M_data(__tmp);
@@ -273,27 +257,14 @@ namespace std
template<typename _CharT, typename _Traits, typename _Alloc>
basic_string<_CharT, _Traits, _Alloc>&
basic_string<_CharT, _Traits, _Alloc>::
- assign(const basic_string& __str, size_type __pos, size_type __n)
- {
- const size_type __strsize = __str.size();
- if (__pos > __strsize)
- __throw_out_of_range("basic_string::assign");
- const bool __testn = __n < __strsize - __pos;
- const size_type __newsize = __testn ? __n : __strsize - __pos;
- return this->assign(__str._M_data() + __pos, __newsize);
- }
-
- template<typename _CharT, typename _Traits, typename _Alloc>
- basic_string<_CharT, _Traits, _Alloc>&
- basic_string<_CharT, _Traits, _Alloc>::
assign(const _CharT* __s, size_type __n)
{
__glibcxx_requires_string_len(__s, __n);
if (__n > this->max_size())
- __throw_length_error("basic_string::assign");
+ __throw_length_error(__N("basic_string::assign"));
if (_M_rep()->_M_is_shared() || less<const _CharT*>()(__s, _M_data())
|| less<const _CharT*>()(_M_data() + this->size(), __s))
- return _M_replace_safe(_M_ibegin(), _M_iend(), __s, __s + __n);
+ return _M_replace_safe(size_type(0), this->size(), __s, __n);
else
{
// Work in-place
@@ -302,6 +273,7 @@ namespace std
traits_type::copy(_M_data(), __s, __n);
else if (__pos)
traits_type::move(_M_data(), __s, __n);
+ _M_rep()->_M_set_sharable();
_M_rep()->_M_length = __n;
_M_data()[__n] = _Rep::_S_terminal; // grr.
return *this;
@@ -311,32 +283,15 @@ namespace std
template<typename _CharT, typename _Traits, typename _Alloc>
basic_string<_CharT, _Traits, _Alloc>&
basic_string<_CharT, _Traits, _Alloc>::
- insert(size_type __pos1, const basic_string& __str,
- size_type __pos2, size_type __n)
- {
- const size_type __strsize = __str.size();
- if (__pos2 > __strsize)
- __throw_out_of_range("basic_string::insert");
- const bool __testn = __n < __strsize - __pos2;
- const size_type __newsize = __testn ? __n : __strsize - __pos2;
- return this->insert(__pos1, __str._M_data() + __pos2, __newsize);
- }
-
- template<typename _CharT, typename _Traits, typename _Alloc>
- basic_string<_CharT, _Traits, _Alloc>&
- basic_string<_CharT, _Traits, _Alloc>::
insert(size_type __pos, const _CharT* __s, size_type __n)
{
__glibcxx_requires_string_len(__s, __n);
- const size_type __size = this->size();
- if (__pos > __size)
- __throw_out_of_range("basic_string::insert");
- if (__size > this->max_size() - __n)
- __throw_length_error("basic_string::insert");
+ _M_check(__pos, "basic_string::insert");
+ if (this->max_size() - this->size() < __n)
+ __throw_length_error(__N("basic_string::insert"));
if (_M_rep()->_M_is_shared() || less<const _CharT*>()(__s, _M_data())
- || less<const _CharT*>()(_M_data() + __size, __s))
- return _M_replace_safe(_M_ibegin() + __pos, _M_ibegin() + __pos,
- __s, __s + __n);
+ || less<const _CharT*>()(_M_data() + this->size(), __s))
+ return _M_replace_safe(__pos, size_type(0), __s, __n);
else
{
// Work in-place. If _M_mutate reallocates the string, __s
@@ -352,13 +307,14 @@ namespace std
traits_type::copy(__p, __s + __n, __n);
else
{
- traits_type::copy(__p, __s, __p - __s);
- traits_type::copy(__p + (__p-__s), __p + __n, __n - (__p-__s));
+ const size_type __nleft = __p - __s;
+ traits_type::copy(__p, __s, __nleft);
+ traits_type::copy(__p + __nleft, __p + __n, __n - __nleft);
}
return *this;
}
}
-
+
template<typename _CharT, typename _Traits, typename _Alloc>
basic_string<_CharT, _Traits, _Alloc>&
basic_string<_CharT, _Traits, _Alloc>::
@@ -366,24 +322,36 @@ namespace std
size_type __n2)
{
__glibcxx_requires_string_len(__s, __n2);
- const size_type __size = this->size();
- if (__pos > __size)
- __throw_out_of_range("basic_string::replace");
- const bool __testn1 = __n1 < __size - __pos;
- const size_type __foldn1 = __testn1 ? __n1 : __size - __pos;
- if (__size - __foldn1 > this->max_size() - __n2)
- __throw_length_error("basic_string::replace");
+ _M_check(__pos, "basic_string::replace");
+ __n1 = _M_limit(__pos, __n1);
+ if (this->max_size() - (this->size() - __n1) < __n2)
+ __throw_length_error(__N("basic_string::replace"));
+ bool __left;
if (_M_rep()->_M_is_shared() || less<const _CharT*>()(__s, _M_data())
- || less<const _CharT*>()(_M_data() + __size, __s))
- return _M_replace_safe(_M_ibegin() + __pos,
- _M_ibegin() + __pos + __foldn1, __s, __s + __n2);
- // Todo: optimized in-place replace.
+ || less<const _CharT*>()(_M_data() + this->size(), __s))
+ return _M_replace_safe(__pos, __n1, __s, __n2);
+ else if ((__left = __s + __n2 <= _M_data() + __pos)
+ || _M_data() + __pos + __n1 <= __s)
+ {
+ // Work in-place: non-overlapping case.
+ const size_type __off = __s - _M_data();
+ _M_mutate(__pos, __n1, __n2);
+ if (__left)
+ traits_type::copy(_M_data() + __pos,
+ _M_data() + __off, __n2);
+ else
+ traits_type::copy(_M_data() + __pos,
+ _M_data() + __off + __n2 - __n1, __n2);
+ return *this;
+ }
else
- return _M_replace(_M_ibegin() + __pos, _M_ibegin() + __pos + __foldn1,
- __s, __s + __n2,
- typename iterator_traits<const _CharT*>::iterator_category());
+ {
+ // Todo: overlapping case.
+ const basic_string __tmp(__s, __n2);
+ return _M_replace_safe(__pos, __n1, __tmp._M_data(), __n2);
+ }
}
-
+
template<typename _CharT, typename _Traits, typename _Alloc>
void
basic_string<_CharT, _Traits, _Alloc>::_Rep::
@@ -402,17 +370,11 @@ namespace std
{
if (_M_rep() == &_S_empty_rep())
return;
- if (_M_rep()->_M_is_shared())
+ if (_M_rep()->_M_is_shared())
_M_mutate(0, 0, 0);
_M_rep()->_M_set_leaked();
}
- // _M_mutate and, below, _M_clone, include, in the same form, an exponential
- // growth policy, necessary to meet amortized linear time requirements of
- // the library: see http://gcc.gnu.org/ml/libstdc++/2001-07/msg00085.html.
- // The policy is active for allocations requiring an amount of memory above
- // system pagesize. This is consistent with the requirements of the standard:
- // see, f.i., http://gcc.gnu.org/ml/libstdc++/2001-07/msg00130.html
template<typename _CharT, typename _Traits, typename _Alloc>
void
basic_string<_CharT, _Traits, _Alloc>::
@@ -422,40 +384,20 @@ namespace std
const size_type __new_size = __old_size + __len2 - __len1;
const _CharT* __src = _M_data() + __pos + __len1;
const size_type __how_much = __old_size - __pos - __len1;
-
+
if (_M_rep() == &_S_empty_rep()
|| _M_rep()->_M_is_shared() || __new_size > capacity())
{
// Must reallocate.
- allocator_type __a = get_allocator();
- // See below (_S_create) for the meaning and value of these
- // constants.
- const size_type __pagesize = 4096;
- const size_type __malloc_header_size = 4 * sizeof (void*);
- // The biggest string which fits in a memory page
- const size_type __page_capacity = (__pagesize - __malloc_header_size
- - sizeof(_Rep) - sizeof(_CharT))
- / sizeof(_CharT);
- _Rep* __r;
- if (__new_size > capacity() && __new_size > __page_capacity)
- // Growing exponentially.
- __r = _Rep::_S_create(__new_size > 2*capacity() ?
- __new_size : 2*capacity(), __a);
- else
- __r = _Rep::_S_create(__new_size, __a);
- try
- {
- if (__pos)
- traits_type::copy(__r->_M_refdata(), _M_data(), __pos);
- if (__how_much)
- traits_type::copy(__r->_M_refdata() + __pos + __len2,
- __src, __how_much);
- }
- catch(...)
- {
- __r->_M_dispose(get_allocator());
- __throw_exception_again;
- }
+ const allocator_type __a = get_allocator();
+ _Rep* __r = _Rep::_S_create(__new_size, capacity(), __a);
+
+ if (__pos)
+ traits_type::copy(__r->_M_refdata(), _M_data(), __pos);
+ if (__how_much)
+ traits_type::copy(__r->_M_refdata() + __pos + __len2,
+ __src, __how_much);
+
_M_rep()->_M_dispose(__a);
_M_data(__r->_M_refdata());
}
@@ -469,7 +411,7 @@ namespace std
_M_data()[__new_size] = _Rep::_S_terminal; // grrr. (per 21.3.4)
// You cannot leave those LWG people alone for a second.
}
-
+
template<typename _CharT, typename _Traits, typename _Alloc>
void
basic_string<_CharT, _Traits, _Alloc>::reserve(size_type __res)
@@ -477,23 +419,23 @@ namespace std
if (__res != this->capacity() || _M_rep()->_M_is_shared())
{
if (__res > this->max_size())
- __throw_length_error("basic_string::reserve");
+ __throw_length_error(__N("basic_string::reserve"));
// Make sure we don't shrink below the current size
if (__res < this->size())
__res = this->size();
- allocator_type __a = get_allocator();
+ const allocator_type __a = get_allocator();
_CharT* __tmp = _M_rep()->_M_clone(__a, __res - this->size());
_M_rep()->_M_dispose(__a);
_M_data(__tmp);
}
}
-
+
template<typename _CharT, typename _Traits, typename _Alloc>
void basic_string<_CharT, _Traits, _Alloc>::swap(basic_string& __s)
{
- if (_M_rep()->_M_is_leaked())
+ if (_M_rep()->_M_is_leaked())
_M_rep()->_M_set_sharable();
- if (__s._M_rep()->_M_is_leaked())
+ if (__s._M_rep()->_M_is_leaked())
__s._M_rep()->_M_set_sharable();
if (this->get_allocator() == __s.get_allocator())
{
@@ -502,11 +444,12 @@ namespace std
__s._M_data(__tmp);
}
// The code below can usually be optimized away.
- else
+ else
{
- basic_string __tmp1(_M_ibegin(), _M_iend(), __s.get_allocator());
- basic_string __tmp2(__s._M_ibegin(), __s._M_iend(),
- this->get_allocator());
+ const basic_string __tmp1(_M_ibegin(), _M_iend(),
+ __s.get_allocator());
+ const basic_string __tmp2(__s._M_ibegin(), __s._M_iend(),
+ this->get_allocator());
*this = __tmp2;
__s = __tmp1;
}
@@ -515,23 +458,20 @@ namespace std
template<typename _CharT, typename _Traits, typename _Alloc>
typename basic_string<_CharT, _Traits, _Alloc>::_Rep*
basic_string<_CharT, _Traits, _Alloc>::_Rep::
- _S_create(size_t __capacity, const _Alloc& __alloc)
+ _S_create(size_type __capacity, size_type __old_capacity,
+ const _Alloc& __alloc)
{
typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 83. String::npos vs. string::max_size()
if (__capacity > _S_max_size)
- __throw_length_error("basic_string::_S_create");
-
- // NB: Need an array of char_type[__capacity], plus a
- // terminating null char_type() element, plus enough for the
- // _Rep data structure. Whew. Seemingly so needy, yet so elemental.
- size_t __size = (__capacity + 1) * sizeof(_CharT) + sizeof(_Rep_base);
+ __throw_length_error(__N("basic_string::_S_create"));
// The standard places no restriction on allocating more memory
// than is strictly needed within this layer at the moment or as
- // requested by an explicit application call to reserve(). Many
- // malloc implementations perform quite poorly when an
+ // requested by an explicit application call to reserve().
+
+ // Many malloc implementations perform quite poorly when an
// application attempts to allocate memory in a stepwise fashion
// growing each allocation size by only 1 char. Additionally,
// it makes little sense to allocate less linear memory than the
@@ -550,24 +490,46 @@ namespace std
// low-balling it (especially when this algorithm is used with
// malloc implementations that allocate memory blocks rounded up
// to a size which is a power of 2).
- const size_t __pagesize = 4096; // must be 2^i * __subpagesize
- const size_t __subpagesize = 128; // should be >> __malloc_header_size
- const size_t __malloc_header_size = 4 * sizeof (void*);
- if ((__size + __malloc_header_size) > __pagesize)
+ const size_type __pagesize = 4096; // must be 2^i * __subpagesize
+ const size_type __subpagesize = 128; // should be >> __malloc_header_size
+ const size_type __malloc_header_size = 4 * sizeof (void*);
+
+ // The below implements an exponential growth policy, necessary to
+ // meet amortized linear time requirements of the library: see
+ // http://gcc.gnu.org/ml/libstdc++/2001-07/msg00085.html.
+ // It's active for allocations requiring an amount of memory above
+ // system pagesize. This is consistent with the requirements of the
+ // standard: http://gcc.gnu.org/ml/libstdc++/2001-07/msg00130.html
+
+ // The biggest string which fits in a memory page
+ const size_type __page_capacity = ((__pagesize - __malloc_header_size
+ - sizeof(_Rep) - sizeof(_CharT))
+ / sizeof(_CharT));
+
+ if (__capacity > __old_capacity && __capacity < 2 * __old_capacity
+ && __capacity > __page_capacity)
+ __capacity = 2 * __old_capacity;
+
+ // NB: Need an array of char_type[__capacity], plus a terminating
+ // null char_type() element, plus enough for the _Rep data structure.
+ // Whew. Seemingly so needy, yet so elemental.
+ size_type __size = (__capacity + 1) * sizeof(_CharT) + sizeof(_Rep);
+
+ const size_type __adj_size = __size + __malloc_header_size;
+ if (__adj_size > __pagesize)
{
- const size_t __extra =
- (__pagesize - ((__size + __malloc_header_size) % __pagesize))
- % __pagesize;
+ const size_type __extra = __pagesize - __adj_size % __pagesize;
__capacity += __extra / sizeof(_CharT);
- __size = (__capacity + 1) * sizeof(_CharT) + sizeof(_Rep_base);
+ // Never allocate a string bigger than _S_max_size.
+ if (__capacity > _S_max_size)
+ __capacity = _S_max_size;
+ __size = (__capacity + 1) * sizeof(_CharT) + sizeof(_Rep);
}
else if (__size > __subpagesize)
{
- const size_t __extra =
- (__subpagesize - ((__size + __malloc_header_size) % __subpagesize))
- % __subpagesize;
+ const size_type __extra = __subpagesize - __adj_size % __subpagesize;
__capacity += __extra / sizeof(_CharT);
- __size = (__capacity + 1) * sizeof(_CharT) + sizeof(_Rep_base);
+ __size = (__capacity + 1) * sizeof(_CharT) + sizeof(_Rep);
}
// NB: Might throw, but no worries about a leak, mate: _Rep()
@@ -587,45 +549,23 @@ namespace std
{
// Requested capacity of the clone.
const size_type __requested_cap = this->_M_length + __res;
- // See above (_S_create) for the meaning and value of these constants.
- const size_type __pagesize = 4096;
- const size_type __malloc_header_size = 4 * sizeof (void*);
- // The biggest string which fits in a memory page.
- const size_type __page_capacity =
- (__pagesize - __malloc_header_size - sizeof(_Rep_base) - sizeof(_CharT))
- / sizeof(_CharT);
- _Rep* __r;
- if (__requested_cap > this->_M_capacity
- && __requested_cap > __page_capacity)
- // Growing exponentially.
- __r = _Rep::_S_create(__requested_cap > 2*this->_M_capacity ?
- __requested_cap : 2*this->_M_capacity, __alloc);
- else
- __r = _Rep::_S_create(__requested_cap, __alloc);
-
+ _Rep* __r = _Rep::_S_create(__requested_cap, this->_M_capacity,
+ __alloc);
if (this->_M_length)
- {
- try
- {
- traits_type::copy(__r->_M_refdata(), _M_refdata(),
- this->_M_length);
- }
- catch(...)
- {
- __r->_M_destroy(__alloc);
- __throw_exception_again;
- }
- }
+ traits_type::copy(__r->_M_refdata(), _M_refdata(),
+ this->_M_length);
+
__r->_M_length = this->_M_length;
+ __r->_M_refdata()[this->_M_length] = _Rep::_S_terminal;
return __r->_M_refdata();
}
-
+
template<typename _CharT, typename _Traits, typename _Alloc>
void
basic_string<_CharT, _Traits, _Alloc>::resize(size_type __n, _CharT __c)
{
if (__n > max_size())
- __throw_length_error("basic_string::resize");
+ __throw_length_error(__N("basic_string::resize"));
const size_type __size = this->size();
if (__size < __n)
this->append(__n - __size, __c);
@@ -635,77 +575,20 @@ namespace std
}
template<typename _CharT, typename _Traits, typename _Alloc>
- basic_string<_CharT, _Traits, _Alloc>&
- basic_string<_CharT, _Traits, _Alloc>::
- _M_replace_aux(iterator __i1, iterator __i2, size_type __n2, _CharT __c)
- {
- const size_type __n1 = __i2 - __i1;
- const size_type __off1 = __i1 - _M_ibegin();
- if (max_size() - (this->size() - __n1) <= __n2)
- __throw_length_error("basic_string::replace");
- _M_mutate (__off1, __n1, __n2);
- // Invalidated __i1, __i2
- if (__n2)
- traits_type::assign(_M_data() + __off1, __n2, __c);
- return *this;
- }
-
- // This is the general replace helper, which currently gets instantiated both
- // for input iterators and reverse iterators. It buffers internally and then
- // calls _M_replace_safe.
- template<typename _CharT, typename _Traits, typename _Alloc>
template<typename _InputIterator>
basic_string<_CharT, _Traits, _Alloc>&
basic_string<_CharT, _Traits, _Alloc>::
- _M_replace(iterator __i1, iterator __i2, _InputIterator __k1,
- _InputIterator __k2, input_iterator_tag)
+ _M_replace_dispatch(iterator __i1, iterator __i2, _InputIterator __k1,
+ _InputIterator __k2, __false_type)
{
- // Save concerned source string data in a temporary.
const basic_string __s(__k1, __k2);
- return _M_replace_safe(__i1, __i2, __s._M_ibegin(), __s._M_iend());
+ const size_type __n1 = __i2 - __i1;
+ if (this->max_size() - (this->size() - __n1) < __s.size())
+ __throw_length_error(__N("basic_string::_M_replace_dispatch"));
+ return _M_replace_safe(__i1 - _M_ibegin(), __n1, __s._M_data(),
+ __s.size());
}
- // This is a special replace helper, which does not buffer internally
- // and can be used in "safe" situations involving forward iterators,
- // i.e., when source and destination ranges are known to not overlap.
- template<typename _CharT, typename _Traits, typename _Alloc>
- template<typename _ForwardIterator>
- basic_string<_CharT, _Traits, _Alloc>&
- basic_string<_CharT, _Traits, _Alloc>::
- _M_replace_safe(iterator __i1, iterator __i2, _ForwardIterator __k1,
- _ForwardIterator __k2)
- {
- const size_type __dnew = static_cast<size_type>(std::distance(__k1, __k2));
- const size_type __dold = __i2 - __i1;
- const size_type __dmax = this->max_size();
-
- if (__dmax <= __dnew)
- __throw_length_error("basic_string::_M_replace");
- const size_type __off = __i1 - _M_ibegin();
- _M_mutate(__off, __dold, __dnew);
-
- // Invalidated __i1, __i2
- if (__dnew)
- _S_copy_chars(_M_data() + __off, __k1, __k2);
-
- return *this;
- }
-
- template<typename _CharT, typename _Traits, typename _Alloc>
- basic_string<_CharT, _Traits, _Alloc>&
- basic_string<_CharT, _Traits, _Alloc>::
- replace(size_type __pos1, size_type __n1, const basic_string& __str,
- size_type __pos2, size_type __n2)
- {
- const size_type __strsize = __str.size();
- if (__pos2 > __strsize)
- __throw_out_of_range("basic_string::replace");
- const bool __testn2 = __n2 < __strsize - __pos2;
- const size_type __foldn2 = __testn2 ? __n2 : __strsize - __pos2;
- return this->replace(__pos1, __n1,
- __str._M_data() + __pos2, __foldn2);
- }
-
template<typename _CharT, typename _Traits, typename _Alloc>
basic_string<_CharT, _Traits, _Alloc>&
basic_string<_CharT, _Traits, _Alloc>::
@@ -713,13 +596,13 @@ namespace std
{
// Iff appending itself, string needs to pre-reserve the
// correct size so that _M_mutate does not clobber the
- // iterators formed here.
+ // pointer __str._M_data() formed here.
const size_type __size = __str.size();
const size_type __len = __size + this->size();
if (__len > this->capacity())
this->reserve(__len);
- return _M_replace_safe(_M_iend(), _M_iend(), __str._M_ibegin(),
- __str._M_iend());
+ return _M_replace_safe(this->size(), size_type(0), __str._M_data(),
+ __str.size());
}
template<typename _CharT, typename _Traits, typename _Alloc>
@@ -729,13 +612,14 @@ namespace std
{
// Iff appending itself, string needs to pre-reserve the
// correct size so that _M_mutate does not clobber the
- // iterators formed here.
- const size_type __len = std::min(size_type(__str.size() - __pos),
- __n) + this->size();
+ // pointer __str._M_data() formed here.
+ __str._M_check(__pos, "basic_string::append");
+ __n = __str._M_limit(__pos, __n);
+ const size_type __len = __n + this->size();
if (__len > this->capacity())
this->reserve(__len);
- return _M_replace_safe(_M_iend(), _M_iend(), __str._M_check(__pos),
- __str._M_fold(__pos, __n));
+ return _M_replace_safe(this->size(), size_type(0), __str._M_data()
+ + __pos, __n);
}
template<typename _CharT, typename _Traits, typename _Alloc>
@@ -747,18 +631,7 @@ namespace std
const size_type __len = __n + this->size();
if (__len > this->capacity())
this->reserve(__len);
- return _M_replace_safe(_M_iend(), _M_iend(), __s, __s + __n);
- }
-
- template<typename _CharT, typename _Traits, typename _Alloc>
- basic_string<_CharT, _Traits, _Alloc>&
- basic_string<_CharT, _Traits, _Alloc>::
- append(size_type __n, _CharT __c)
- {
- const size_type __len = __n + this->size();
- if (__len > this->capacity())
- this->reserve(__len);
- return this->replace(_M_iend(), _M_iend(), __n, __c);
+ return _M_replace_safe(this->size(), size_type(0), __s, __n);
}
template<typename _CharT, typename _Traits, typename _Alloc>
@@ -772,7 +645,7 @@ namespace std
const __size_type __len = _Traits::length(__lhs);
__string_type __str;
__str.reserve(__len + __rhs.size());
- __str.append(__lhs, __lhs + __len);
+ __str.append(__lhs, __len);
__str.append(__rhs);
return __str;
}
@@ -796,15 +669,11 @@ namespace std
basic_string<_CharT, _Traits, _Alloc>::
copy(_CharT* __s, size_type __n, size_type __pos) const
{
- if (__pos > this->size())
- __throw_out_of_range("basic_string::copy");
-
- if (__n > this->size() - __pos)
- __n = this->size() - __pos;
-
+ _M_check(__pos, "basic_string::copy");
+ __n = _M_limit(__pos, __n);
__glibcxx_requires_string_len(__s, __n);
-
- traits_type::copy(__s, _M_data() + __pos, __n);
+ if (__n)
+ traits_type::copy(__s, _M_data() + __pos, __n);
// 21.3.5.7 par 3: do not append null. (good.)
return __n;
}
@@ -815,13 +684,11 @@ namespace std
find(const _CharT* __s, size_type __pos, size_type __n) const
{
__glibcxx_requires_string_len(__s, __n);
-
const size_type __size = this->size();
- size_t __xpos = __pos;
const _CharT* __data = _M_data();
- for (; __xpos + __n <= __size; ++__xpos)
- if (traits_type::compare(__data + __xpos, __s, __n) == 0)
- return __xpos;
+ for (; __pos + __n <= __size; ++__pos)
+ if (traits_type::compare(__data + __pos, __s, __n) == 0)
+ return __pos;
return npos;
}
@@ -843,55 +710,50 @@ namespace std
return __ret;
}
-
template<typename _CharT, typename _Traits, typename _Alloc>
typename basic_string<_CharT, _Traits, _Alloc>::size_type
basic_string<_CharT, _Traits, _Alloc>::
rfind(const _CharT* __s, size_type __pos, size_type __n) const
{
__glibcxx_requires_string_len(__s, __n);
-
const size_type __size = this->size();
if (__n <= __size)
{
__pos = std::min(size_type(__size - __n), __pos);
const _CharT* __data = _M_data();
- do
+ do
{
if (traits_type::compare(__data + __pos, __s, __n) == 0)
return __pos;
- }
+ }
while (__pos-- > 0);
}
return npos;
}
-
+
template<typename _CharT, typename _Traits, typename _Alloc>
typename basic_string<_CharT, _Traits, _Alloc>::size_type
basic_string<_CharT, _Traits, _Alloc>::
rfind(_CharT __c, size_type __pos) const
{
- const size_type __size = this->size();
+ size_type __size = this->size();
if (__size)
{
- size_t __xpos = __size - 1;
- if (__xpos > __pos)
- __xpos = __pos;
-
- for (++__xpos; __xpos-- > 0; )
- if (traits_type::eq(_M_data()[__xpos], __c))
- return __xpos;
+ if (--__size > __pos)
+ __size = __pos;
+ for (++__size; __size-- > 0; )
+ if (traits_type::eq(_M_data()[__size], __c))
+ return __size;
}
return npos;
}
-
+
template<typename _CharT, typename _Traits, typename _Alloc>
typename basic_string<_CharT, _Traits, _Alloc>::size_type
basic_string<_CharT, _Traits, _Alloc>::
find_first_of(const _CharT* __s, size_type __pos, size_type __n) const
{
__glibcxx_requires_string_len(__s, __n);
-
for (; __n && __pos < this->size(); ++__pos)
{
const _CharT* __p = traits_type::find(__s, __n, _M_data()[__pos]);
@@ -900,40 +762,37 @@ namespace std
}
return npos;
}
-
+
template<typename _CharT, typename _Traits, typename _Alloc>
typename basic_string<_CharT, _Traits, _Alloc>::size_type
basic_string<_CharT, _Traits, _Alloc>::
find_last_of(const _CharT* __s, size_type __pos, size_type __n) const
{
__glibcxx_requires_string_len(__s, __n);
-
size_type __size = this->size();
if (__size && __n)
- {
- if (--__size > __pos)
+ {
+ if (--__size > __pos)
__size = __pos;
do
{
if (traits_type::find(__s, __n, _M_data()[__size]))
return __size;
- }
+ }
while (__size-- != 0);
}
return npos;
}
-
+
template<typename _CharT, typename _Traits, typename _Alloc>
typename basic_string<_CharT, _Traits, _Alloc>::size_type
basic_string<_CharT, _Traits, _Alloc>::
find_first_not_of(const _CharT* __s, size_type __pos, size_type __n) const
{
__glibcxx_requires_string_len(__s, __n);
-
- size_t __xpos = __pos;
- for (; __xpos < this->size(); ++__xpos)
- if (!traits_type::find(__s, __n, _M_data()[__xpos]))
- return __xpos;
+ for (; __pos < this->size(); ++__pos)
+ if (!traits_type::find(__s, __n, _M_data()[__pos]))
+ return __pos;
return npos;
}
@@ -942,10 +801,9 @@ namespace std
basic_string<_CharT, _Traits, _Alloc>::
find_first_not_of(_CharT __c, size_type __pos) const
{
- size_t __xpos = __pos;
- for (; __xpos < this->size(); ++__xpos)
- if (!traits_type::eq(_M_data()[__xpos], __c))
- return __xpos;
+ for (; __pos < this->size(); ++__pos)
+ if (!traits_type::eq(_M_data()[__pos], __c))
+ return __pos;
return npos;
}
@@ -955,17 +813,16 @@ namespace std
find_last_not_of(const _CharT* __s, size_type __pos, size_type __n) const
{
__glibcxx_requires_string_len(__s, __n);
-
size_type __size = this->size();
if (__size)
- {
- if (--__size > __pos)
+ {
+ if (--__size > __pos)
__size = __pos;
do
{
if (!traits_type::find(__s, __n, _M_data()[__size]))
return __size;
- }
+ }
while (__size--);
}
return npos;
@@ -978,34 +835,31 @@ namespace std
{
size_type __size = this->size();
if (__size)
- {
- if (--__size > __pos)
+ {
+ if (--__size > __pos)
__size = __pos;
do
{
if (!traits_type::eq(_M_data()[__size], __c))
return __size;
- }
+ }
while (__size--);
}
return npos;
}
-
+
template<typename _CharT, typename _Traits, typename _Alloc>
int
basic_string<_CharT, _Traits, _Alloc>::
compare(size_type __pos, size_type __n, const basic_string& __str) const
{
- const size_type __size = this->size();
+ _M_check(__pos, "basic_string::compare");
+ __n = _M_limit(__pos, __n);
const size_type __osize = __str.size();
- if (__pos > __size)
- __throw_out_of_range("basic_string::compare");
-
- const size_type __rsize= std::min(size_type(__size - __pos), __n);
- const size_type __len = std::min(__rsize, __osize);
+ const size_type __len = std::min(__n, __osize);
int __r = traits_type::compare(_M_data() + __pos, __str.data(), __len);
if (!__r)
- __r = __rsize - __osize;
+ __r = __n - __osize;
return __r;
}
@@ -1015,29 +869,24 @@ namespace std
compare(size_type __pos1, size_type __n1, const basic_string& __str,
size_type __pos2, size_type __n2) const
{
- const size_type __size = this->size();
- const size_type __osize = __str.size();
- if (__pos1 > __size || __pos2 > __osize)
- __throw_out_of_range("basic_string::compare");
-
- const size_type __rsize = std::min(size_type(__size - __pos1), __n1);
- const size_type __rosize = std::min(size_type(__osize - __pos2), __n2);
- const size_type __len = std::min(__rsize, __rosize);
- int __r = traits_type::compare(_M_data() + __pos1,
+ _M_check(__pos1, "basic_string::compare");
+ __str._M_check(__pos2, "basic_string::compare");
+ __n1 = _M_limit(__pos1, __n1);
+ __n2 = __str._M_limit(__pos2, __n2);
+ const size_type __len = std::min(__n1, __n2);
+ int __r = traits_type::compare(_M_data() + __pos1,
__str.data() + __pos2, __len);
if (!__r)
- __r = __rsize - __rosize;
+ __r = __n1 - __n2;
return __r;
}
-
template<typename _CharT, typename _Traits, typename _Alloc>
int
basic_string<_CharT, _Traits, _Alloc>::
compare(const _CharT* __s) const
{
__glibcxx_requires_string(__s);
-
const size_type __size = this->size();
const size_type __osize = traits_type::length(__s);
const size_type __len = std::min(__size, __osize);
@@ -1047,78 +896,69 @@ namespace std
return __r;
}
-
template<typename _CharT, typename _Traits, typename _Alloc>
int
basic_string <_CharT, _Traits, _Alloc>::
compare(size_type __pos, size_type __n1, const _CharT* __s) const
{
__glibcxx_requires_string(__s);
-
- const size_type __size = this->size();
- if (__pos > __size)
- __throw_out_of_range("basic_string::compare");
-
+ _M_check(__pos, "basic_string::compare");
+ __n1 = _M_limit(__pos, __n1);
const size_type __osize = traits_type::length(__s);
- const size_type __rsize = std::min(size_type(__size - __pos), __n1);
- const size_type __len = std::min(__rsize, __osize);
+ const size_type __len = std::min(__n1, __osize);
int __r = traits_type::compare(_M_data() + __pos, __s, __len);
if (!__r)
- __r = __rsize - __osize;
+ __r = __n1 - __osize;
return __r;
}
template<typename _CharT, typename _Traits, typename _Alloc>
int
basic_string <_CharT, _Traits, _Alloc>::
- compare(size_type __pos, size_type __n1, const _CharT* __s,
+ compare(size_type __pos, size_type __n1, const _CharT* __s,
size_type __n2) const
{
__glibcxx_requires_string_len(__s, __n2);
-
- const size_type __size = this->size();
- if (__pos > __size)
- __throw_out_of_range("basic_string::compare");
-
- const size_type __rsize = std::min(size_type(__size - __pos), __n1);
- const size_type __len = std::min(__rsize, __n2);
+ _M_check(__pos, "basic_string::compare");
+ __n1 = _M_limit(__pos, __n1);
+ const size_type __len = std::min(__n1, __n2);
int __r = traits_type::compare(_M_data() + __pos, __s, __len);
if (!__r)
- __r = __rsize - __n2;
+ __r = __n1 - __n2;
return __r;
}
// Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
+ // which are defined via explicit instantiations elsewhere.
// NB: This syntax is a GNU extension.
#if _GLIBCXX_EXTERN_TEMPLATE
extern template class basic_string<char>;
- extern template
- basic_istream<char>&
+ extern template
+ basic_istream<char>&
operator>>(basic_istream<char>&, string&);
- extern template
- basic_ostream<char>&
+ extern template
+ basic_ostream<char>&
operator<<(basic_ostream<char>&, const string&);
- extern template
- basic_istream<char>&
+ extern template
+ basic_istream<char>&
getline(basic_istream<char>&, string&, char);
- extern template
- basic_istream<char>&
+ extern template
+ basic_istream<char>&
getline(basic_istream<char>&, string&);
#ifdef _GLIBCXX_USE_WCHAR_T
extern template class basic_string<wchar_t>;
- extern template
- basic_istream<wchar_t>&
+ extern template
+ basic_istream<wchar_t>&
operator>>(basic_istream<wchar_t>&, wstring&);
- extern template
- basic_ostream<wchar_t>&
+ extern template
+ basic_ostream<wchar_t>&
operator<<(basic_ostream<wchar_t>&, const wstring&);
- extern template
- basic_istream<wchar_t>&
+ extern template
+ basic_istream<wchar_t>&
getline(basic_istream<wchar_t>&, wstring&, wchar_t);
- extern template
- basic_istream<wchar_t>&
+ extern template
+ basic_istream<wchar_t>&
getline(basic_istream<wchar_t>&, wstring&);
#endif
#endif
diff --git a/libstdc++-v3/include/bits/boost_concept_check.h b/libstdc++-v3/include/bits/boost_concept_check.h
index b8bce64b8c4..70037eb1c3a 100644
--- a/libstdc++-v3/include/bits/boost_concept_check.h
+++ b/libstdc++-v3/include/bits/boost_concept_check.h
@@ -87,7 +87,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
template <class _Tp>
struct _IntegerConcept {
- void __constraints() {
+ void __constraints() {
this->__error_type_must_be_an_integer_type();
}
};
@@ -103,7 +103,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
template <class _Tp>
struct _SignedIntegerConcept {
- void __constraints() {
+ void __constraints() {
this->__error_type_must_be_a_signed_integer_type();
}
};
@@ -114,7 +114,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
template <class _Tp>
struct _UnsignedIntegerConcept {
- void __constraints() {
+ void __constraints() {
this->__error_type_must_be_an_unsigned_integer_type();
}
};
@@ -312,7 +312,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
template <class _Func, class _Arg>
struct _UnaryFunctionConcept<_Func, void, _Arg> {
- void __constraints() {
+ void __constraints() {
__f(__arg); // require operator()
}
_Func __f;
@@ -322,7 +322,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
template <class _Func, class _Return, class _First, class _Second>
struct _BinaryFunctionConcept
{
- void __constraints() {
+ void __constraints() {
__r = __f(__first, __second); // require operator()
}
_Func __f;
@@ -366,7 +366,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
// use this when functor is used inside a container class like std::set
template <class _Func, class _First, class _Second>
struct _Const_BinaryPredicateConcept {
- void __constraints() {
+ void __constraints() {
__const_constraints(__f);
}
void __const_constraints(const _Func& __fun) {
@@ -560,7 +560,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
typedef typename _Container::reference _Reference;
typedef typename _Container::iterator _Iterator;
typedef typename _Container::pointer _Pointer;
-
+
void __constraints() {
__function_requires< _ContainerConcept<_Container> >();
__function_requires< _AssignableConcept<_Value_type> >();
@@ -582,7 +582,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
typedef typename _ForwardContainer::const_iterator _Const_iterator;
__function_requires< _ForwardIteratorConcept<_Const_iterator> >();
}
- };
+ };
template <class _ForwardContainer>
struct _Mutable_ForwardContainerConcept
@@ -593,7 +593,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
typedef typename _ForwardContainer::iterator _Iterator;
__function_requires< _Mutable_ForwardIteratorConcept<_Iterator> >();
}
- };
+ };
template <class _ReversibleContainer>
struct _ReversibleContainerConcept
@@ -693,7 +693,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
__function_requires< _Mutable_ForwardContainerConcept<_Sequence> >();
__function_requires< _DefaultConstructibleConcept<_Sequence> >();
- _Sequence
+ _Sequence
__c(__n) _IsUnused,
__c2(__n, __t) _IsUnused,
__c3(__first, __last) _IsUnused;
@@ -758,7 +758,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
__function_requires< _ForwardContainerConcept<_AssociativeContainer> >();
__function_requires<
_DefaultConstructibleConcept<_AssociativeContainer> >();
-
+
__i = __c.find(__k);
__r = __c.equal_range(__k);
__c.erase(__k);
@@ -789,9 +789,9 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
void __constraints() {
__function_requires<
_AssociativeContainerConcept<_UniqueAssociativeContainer> >();
-
+
_UniqueAssociativeContainer __c(__first, __last);
-
+
__pos_flag = __c.insert(__t);
__c.insert(__first, __last);
}
@@ -808,7 +808,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
_AssociativeContainerConcept<_MultipleAssociativeContainer> >();
_MultipleAssociativeContainer __c(__first, __last);
-
+
__pos = __c.insert(__t);
__c.insert(__first, __last);
@@ -855,7 +855,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
__function_requires<
_ReversibleContainerConcept<_SortedAssociativeContainer> >();
- _SortedAssociativeContainer
+ _SortedAssociativeContainer
__c(__kc) _IsUnused,
__c2(__first, __last) _IsUnused,
__c3(__first, __last, __kc) _IsUnused;
@@ -863,7 +863,7 @@ struct _Aux_require_same<_Tp,_Tp> { typedef _Tp _Type; };
__p = __c.upper_bound(__k);
__p = __c.lower_bound(__k);
__r = __c.equal_range(__k);
-
+
__c.insert(__p, __t);
}
void __const_constraints(const _SortedAssociativeContainer& __c) {
diff --git a/libstdc++-v3/include/bits/c++config b/libstdc++-v3/include/bits/c++config
index 03529ed3019..07c6151f098 100644
--- a/libstdc++-v3/include/bits/c++config
+++ b/libstdc++-v3/include/bits/c++config
@@ -1,6 +1,6 @@
// Predefined symbols and macros -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -35,7 +35,7 @@
#include <bits/os_defines.h>
// The current version of the C++ library in compressed ISO date format.
-#define __GLIBCXX__ 20040116
+#define __GLIBCXX__ 20040419
// Allow use of "export template." This is currently not a feature
// that g++ supports.
@@ -51,27 +51,30 @@
# define _GLIBCXX_EXTERN_TEMPLATE 1
#endif
-// To enable debug mode.
-namespace __gnu_norm
-{
- using namespace std;
-}
-
+// Debug mode support. Debug mode basic_string is not allowed to be
+// associated with std, because of locale and exception link
+// dependence.
namespace __gnu_debug_def { }
namespace __gnu_debug
{
- using namespace __gnu_debug_def __attribute__ ((strong));
+ using namespace __gnu_debug_def;
}
+#ifdef _GLIBCXX_DEBUG
+# define _GLIBCXX_STD __gnu_norm
+namespace __gnu_norm
+{
+ using namespace std;
+}
namespace std
{
-#ifdef _GLIBCXX_DEBUG
using namespace __gnu_debug_def __attribute__ ((strong));
+}
#else
- using namespace __gnu_norm __attribute__ ((strong));
+# define _GLIBCXX_STD std
#endif
-}
+
// The remainder of the prewritten config is automatic; all the
// user hooks are listed above.
diff --git a/libstdc++-v3/include/bits/char_traits.h b/libstdc++-v3/include/bits/char_traits.h
index 34479755e85..323fdfb47c0 100644
--- a/libstdc++-v3/include/bits/char_traits.h
+++ b/libstdc++-v3/include/bits/char_traits.h
@@ -50,12 +50,12 @@ namespace __gnu_cxx
{
/**
* @brief Mapping from character type to associated types.
- *
+ *
*
* @note This is an implementation class for the generic version
* of char_traits. It defines int_type, off_type, pos_type, and
* state_type. By default these are unsigned long, streamoff,
- * streampos, and mbstate_t. Users who need a different set of
+ * streampos, and mbstate_t. Users who need a different set of
* types, but who don't need to change the definitions of any function
* defined in char_traits, can specialize __gnu_cxx::_Char_types
* while leaving __gnu_cxx::char_traits alone. */
@@ -91,54 +91,54 @@ namespace __gnu_cxx
typedef typename _Char_types<_CharT>::pos_type pos_type;
typedef typename _Char_types<_CharT>::off_type off_type;
typedef typename _Char_types<_CharT>::state_type state_type;
-
- static void
+
+ static void
assign(char_type& __c1, const char_type& __c2)
{ __c1 = __c2; }
- static bool
+ static bool
eq(const char_type& __c1, const char_type& __c2)
{ return __c1 == __c2; }
- static bool
+ static bool
lt(const char_type& __c1, const char_type& __c2)
{ return __c1 < __c2; }
- static int
+ static int
compare(const char_type* __s1, const char_type* __s2, std::size_t __n);
static std::size_t
length(const char_type* __s);
- static const char_type*
+ static const char_type*
find(const char_type* __s, std::size_t __n, const char_type& __a);
- static char_type*
+ static char_type*
move(char_type* __s1, const char_type* __s2, std::size_t __n);
- static char_type*
+ static char_type*
copy(char_type* __s1, const char_type* __s2, std::size_t __n);
- static char_type*
+ static char_type*
assign(char_type* __s, std::size_t __n, char_type __a);
- static char_type
+ static char_type
to_char_type(const int_type& __c)
{ return static_cast<char_type>(__c); }
- static int_type
+ static int_type
to_int_type(const char_type& __c)
{ return static_cast<int_type>(__c); }
- static bool
+ static bool
eq_int_type(const int_type& __c1, const int_type& __c2)
{ return __c1 == __c2; }
- static int_type
+ static int_type
eof()
{ return static_cast<int_type>(EOF); }
- static int_type
+ static int_type
not_eof(const int_type& __c)
{ return !eq_int_type(__c, eof()) ? __c : to_int_type(char_type()); }
};
@@ -168,7 +168,7 @@ namespace __gnu_cxx
}
template<typename _CharT>
- const typename char_traits<_CharT>::char_type*
+ const typename char_traits<_CharT>::char_type*
char_traits<_CharT>::
find(const char_type* __s, std::size_t __n, const char_type& __a)
{
@@ -188,7 +188,7 @@ namespace __gnu_cxx
}
template<typename _CharT>
- typename char_traits<_CharT>::char_type*
+ typename char_traits<_CharT>::char_type*
char_traits<_CharT>::
copy(char_type* __s1, const char_type* __s2, std::size_t __n)
{
@@ -197,7 +197,7 @@ namespace __gnu_cxx
}
template<typename _CharT>
- typename char_traits<_CharT>::char_type*
+ typename char_traits<_CharT>::char_type*
char_traits<_CharT>::
assign(char_type* __s, std::size_t __n, char_type __a)
{
@@ -206,7 +206,7 @@ namespace __gnu_cxx
}
}
-namespace std
+namespace std
{
// 21.1
/**
@@ -237,19 +237,19 @@ namespace std
typedef streamoff off_type;
typedef mbstate_t state_type;
- static void
+ static void
assign(char_type& __c1, const char_type& __c2)
{ __c1 = __c2; }
- static bool
+ static bool
eq(const char_type& __c1, const char_type& __c2)
{ return __c1 == __c2; }
- static bool
+ static bool
lt(const char_type& __c1, const char_type& __c2)
{ return __c1 < __c2; }
- static int
+ static int
compare(const char_type* __s1, const char_type* __s2, size_t __n)
{ return memcmp(__s1, __s2, __n); }
@@ -257,40 +257,40 @@ namespace std
length(const char_type* __s)
{ return strlen(__s); }
- static const char_type*
+ static const char_type*
find(const char_type* __s, size_t __n, const char_type& __a)
{ return static_cast<const char_type*>(memchr(__s, __a, __n)); }
- static char_type*
+ static char_type*
move(char_type* __s1, const char_type* __s2, size_t __n)
{ return static_cast<char_type*>(memmove(__s1, __s2, __n)); }
- static char_type*
+ static char_type*
copy(char_type* __s1, const char_type* __s2, size_t __n)
{ return static_cast<char_type*>(memcpy(__s1, __s2, __n)); }
- static char_type*
+ static char_type*
assign(char_type* __s, size_t __n, char_type __a)
{ return static_cast<char_type*>(memset(__s, __a, __n)); }
- static char_type
+ static char_type
to_char_type(const int_type& __c)
{ return static_cast<char_type>(__c); }
// To keep both the byte 0xff and the eof symbol 0xffffffff
// from ending up as 0xffffffff.
- static int_type
+ static int_type
to_int_type(const char_type& __c)
{ return static_cast<int_type>(static_cast<unsigned char>(__c)); }
- static bool
+ static bool
eq_int_type(const int_type& __c1, const int_type& __c2)
{ return __c1 == __c2; }
- static int_type
+ static int_type
eof() { return static_cast<int_type>(EOF); }
- static int_type
+ static int_type
not_eof(const int_type& __c)
{ return (__c == eof()) ? 0 : __c; }
};
@@ -306,20 +306,20 @@ namespace std
typedef streamoff off_type;
typedef wstreampos pos_type;
typedef mbstate_t state_type;
-
- static void
+
+ static void
assign(char_type& __c1, const char_type& __c2)
{ __c1 = __c2; }
- static bool
+ static bool
eq(const char_type& __c1, const char_type& __c2)
{ return __c1 == __c2; }
- static bool
+ static bool
lt(const char_type& __c1, const char_type& __c2)
{ return __c1 < __c2; }
- static int
+ static int
compare(const char_type* __s1, const char_type* __s2, size_t __n)
{ return wmemcmp(__s1, __s2, __n); }
@@ -327,36 +327,36 @@ namespace std
length(const char_type* __s)
{ return wcslen(__s); }
- static const char_type*
+ static const char_type*
find(const char_type* __s, size_t __n, const char_type& __a)
{ return wmemchr(__s, __a, __n); }
- static char_type*
+ static char_type*
move(char_type* __s1, const char_type* __s2, size_t __n)
{ return wmemmove(__s1, __s2, __n); }
- static char_type*
+ static char_type*
copy(char_type* __s1, const char_type* __s2, size_t __n)
{ return wmemcpy(__s1, __s2, __n); }
- static char_type*
+ static char_type*
assign(char_type* __s, size_t __n, char_type __a)
{ return wmemset(__s, __a, __n); }
- static char_type
+ static char_type
to_char_type(const int_type& __c) { return char_type(__c); }
- static int_type
+ static int_type
to_int_type(const char_type& __c) { return int_type(__c); }
- static bool
+ static bool
eq_int_type(const int_type& __c1, const int_type& __c2)
{ return __c1 == __c2; }
- static int_type
+ static int_type
eof() { return static_cast<int_type>(WEOF); }
- static int_type
+ static int_type
not_eof(const int_type& __c)
{ return eq_int_type(__c, eof()) ? 0 : __c; }
};
@@ -368,7 +368,7 @@ namespace std
_CharT _M_c;
_Char_traits_match(_CharT const& __c) : _M_c(__c) { }
- bool
+ bool
operator()(_CharT const& __a) { return _Traits::eq(_M_c, __a); }
};
} // namespace std
diff --git a/libstdc++-v3/include/bits/codecvt.h b/libstdc++-v3/include/bits/codecvt.h
index 80f9cba0b35..56b55539265 100644
--- a/libstdc++-v3/include/bits/codecvt.h
+++ b/libstdc++-v3/include/bits/codecvt.h
@@ -1,6 +1,6 @@
// Locale support (codecvt) -*- C++ -*-
-// Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -44,6 +44,7 @@
#pragma GCC system_header
// 22.2.1.5 Template class codecvt
+ /// Base class for codecvt facet providing conversion result enum.
class codecvt_base
{
public:
@@ -60,48 +61,156 @@
// NB: An abstract base class that fills in the public inlines, so
// that the specializations don't have to re-copy the public
// interface.
+ /**
+ * @brief Common base for codecvt facet
+ *
+ * This template class provides implementations of the public functions
+ * that forward to the protected virtual functions.
+ *
+ * This template also provides abstract stubs for the protected virtual
+ * functions.
+ */
template<typename _InternT, typename _ExternT, typename _StateT>
- class __codecvt_abstract_base
+ class __codecvt_abstract_base
: public locale::facet, public codecvt_base
{
public:
// Types:
typedef codecvt_base::result result;
- typedef _InternT intern_type;
- typedef _ExternT extern_type;
- typedef _StateT state_type;
-
+ typedef _InternT intern_type;
+ typedef _ExternT extern_type;
+ typedef _StateT state_type;
+
// 22.2.1.5.1 codecvt members
+ /**
+ * @brief Convert from internal to external character set.
+ *
+ * Converts input string of intern_type to output string of
+ * extern_type. This is analogous to wcsrtombs. It does this by
+ * calling codecvt::do_out.
+ *
+ * The source and destination character sets are determined by the
+ * facet's locale, internal and external types.
+ *
+ * The characters in [from,from_end) are converted and written to
+ * [to,to_end). from_next and to_next are set to point to the
+ * character following the last successfully converted character,
+ * respectively. If the result needed no conversion, from_next and
+ * to_next are not affected.
+ *
+ * The @a state argument should be intialized if the input is at the
+ * beginning and carried from a previous call if continuing
+ * conversion. There are no guarantees about how @a state is used.
+ *
+ * The result returned is a member of codecvt_base::result. If all the
+ * input is converted, returns codecvt_base::ok. If no conversion is
+ * necessary, returns codecvt_base::noconv. If the input ends early or
+ * there is insufficient space in the output, returns codecvt_base::partial.
+ * Otherwise the conversion failed and codecvt_base::error is returned.
+ *
+ * @param state Persistent conversion state data.
+ * @param from Start of input.
+ * @param from_end End of input.
+ * @param from_next Returns start of unconverted data.
+ * @param to Start of output buffer.
+ * @param to_end End of output buffer.
+ * @param to_next Returns start of unused output area.
+ * @return codecvt_base::result.
+ */
result
- out(state_type& __state, const intern_type* __from,
+ out(state_type& __state, const intern_type* __from,
const intern_type* __from_end, const intern_type*& __from_next,
- extern_type* __to, extern_type* __to_end,
+ extern_type* __to, extern_type* __to_end,
extern_type*& __to_next) const
- {
- return this->do_out(__state, __from, __from_end, __from_next,
- __to, __to_end, __to_next);
+ {
+ return this->do_out(__state, __from, __from_end, __from_next,
+ __to, __to_end, __to_next);
}
+ /**
+ * @brief Reset conversion state.
+ *
+ * Writes characters to output that would restore @a state to initial
+ * conditions. The idea is that if a partial conversion occurs, then
+ * the converting the characters written by this function would leave
+ * the state in initial conditions, rather than partial conversion
+ * state. It does this by calling codecvt::do_unshift().
+ *
+ * For example, if 4 external characters always converted to 1 internal
+ * character, and input to in() had 6 external characters with state
+ * saved, this function would write two characters to the output and
+ * set the state to initialized conditions.
+ *
+ * The source and destination character sets are determined by the
+ * facet's locale, internal and external types.
+ *
+ * The result returned is a member of codecvt_base::result. If the
+ * state could be reset and data written, returns codecvt_base::ok. If
+ * no conversion is necessary, returns codecvt_base::noconv. If the
+ * output has insufficient space, returns codecvt_base::partial.
+ * Otherwise the reset failed and codecvt_base::error is returned.
+ *
+ * @param state Persistent conversion state data.
+ * @param to Start of output buffer.
+ * @param to_end End of output buffer.
+ * @param to_next Returns start of unused output area.
+ * @return codecvt_base::result.
+ */
result
unshift(state_type& __state, extern_type* __to, extern_type* __to_end,
extern_type*& __to_next) const
{ return this->do_unshift(__state, __to,__to_end,__to_next); }
+ /**
+ * @brief Convert from external to internal character set.
+ *
+ * Converts input string of extern_type to output string of
+ * intern_type. This is analogous to mbsrtowcs. It does this by
+ * calling codecvt::do_in.
+ *
+ * The source and destination character sets are determined by the
+ * facet's locale, internal and external types.
+ *
+ * The characters in [from,from_end) are converted and written to
+ * [to,to_end). from_next and to_next are set to point to the
+ * character following the last successfully converted character,
+ * respectively. If the result needed no conversion, from_next and
+ * to_next are not affected.
+ *
+ * The @a state argument should be intialized if the input is at the
+ * beginning and carried from a previous call if continuing
+ * conversion. There are no guarantees about how @a state is used.
+ *
+ * The result returned is a member of codecvt_base::result. If all the
+ * input is converted, returns codecvt_base::ok. If no conversion is
+ * necessary, returns codecvt_base::noconv. If the input ends early or
+ * there is insufficient space in the output, returns codecvt_base::partial.
+ * Otherwise the conversion failed and codecvt_base::error is returned.
+ *
+ * @param state Persistent conversion state data.
+ * @param from Start of input.
+ * @param from_end End of input.
+ * @param from_next Returns start of unconverted data.
+ * @param to Start of output buffer.
+ * @param to_end End of output buffer.
+ * @param to_next Returns start of unused output area.
+ * @return codecvt_base::result.
+ */
result
- in(state_type& __state, const extern_type* __from,
+ in(state_type& __state, const extern_type* __from,
const extern_type* __from_end, const extern_type*& __from_next,
- intern_type* __to, intern_type* __to_end,
+ intern_type* __to, intern_type* __to_end,
intern_type*& __to_next) const
- {
+ {
return this->do_in(__state, __from, __from_end, __from_next,
- __to, __to_end, __to_next);
+ __to, __to_end, __to_next);
}
- int
+ int
encoding() const throw()
{ return this->do_encoding(); }
- bool
+ bool
always_noconv() const throw()
{ return this->do_always_noconv(); }
@@ -110,104 +219,111 @@
const extern_type* __end, size_t __max) const
{ return this->do_length(__state, __from, __end, __max); }
- int
+ int
max_length() const throw()
{ return this->do_max_length(); }
protected:
- explicit
+ explicit
__codecvt_abstract_base(size_t __refs = 0) : locale::facet(__refs) { }
- virtual
+ virtual
~__codecvt_abstract_base() { }
+ /**
+ * @brief Convert from internal to external character set.
+ *
+ * Converts input string of intern_type to output string of
+ * extern_type. This function is a hook for derived classes to change
+ * the value returned. @see out for more information.
+ */
virtual result
- do_out(state_type& __state, const intern_type* __from,
+ do_out(state_type& __state, const intern_type* __from,
const intern_type* __from_end, const intern_type*& __from_next,
extern_type* __to, extern_type* __to_end,
extern_type*& __to_next) const = 0;
virtual result
- do_unshift(state_type& __state, extern_type* __to,
+ do_unshift(state_type& __state, extern_type* __to,
extern_type* __to_end, extern_type*& __to_next) const = 0;
-
+
virtual result
- do_in(state_type& __state, const extern_type* __from,
- const extern_type* __from_end, const extern_type*& __from_next,
- intern_type* __to, intern_type* __to_end,
+ do_in(state_type& __state, const extern_type* __from,
+ const extern_type* __from_end, const extern_type*& __from_next,
+ intern_type* __to, intern_type* __to_end,
intern_type*& __to_next) const = 0;
-
- virtual int
+
+ virtual int
do_encoding() const throw() = 0;
- virtual bool
+ virtual bool
do_always_noconv() const throw() = 0;
- virtual int
- do_length(state_type&, const extern_type* __from,
+ virtual int
+ do_length(state_type&, const extern_type* __from,
const extern_type* __end, size_t __max) const = 0;
- virtual int
+ virtual int
do_max_length() const throw() = 0;
};
// 22.2.1.5 Template class codecvt
// NB: Generic, mostly useless implementation.
template<typename _InternT, typename _ExternT, typename _StateT>
- class codecvt
+ class codecvt
: public __codecvt_abstract_base<_InternT, _ExternT, _StateT>
{
- public:
+ public:
// Types:
typedef codecvt_base::result result;
- typedef _InternT intern_type;
- typedef _ExternT extern_type;
- typedef _StateT state_type;
+ typedef _InternT intern_type;
+ typedef _ExternT extern_type;
+ typedef _StateT state_type;
protected:
__c_locale _M_c_locale_codecvt;
public:
- static locale::id id;
+ static locale::id id;
- explicit
- codecvt(size_t __refs = 0)
+ explicit
+ codecvt(size_t __refs = 0)
: __codecvt_abstract_base<_InternT, _ExternT, _StateT> (__refs) { }
- explicit
+ explicit
codecvt(__c_locale __cloc, size_t __refs = 0);
protected:
- virtual
+ virtual
~codecvt() { }
virtual result
- do_out(state_type& __state, const intern_type* __from,
+ do_out(state_type& __state, const intern_type* __from,
const intern_type* __from_end, const intern_type*& __from_next,
extern_type* __to, extern_type* __to_end,
extern_type*& __to_next) const;
virtual result
- do_unshift(state_type& __state, extern_type* __to,
+ do_unshift(state_type& __state, extern_type* __to,
extern_type* __to_end, extern_type*& __to_next) const;
-
+
virtual result
- do_in(state_type& __state, const extern_type* __from,
- const extern_type* __from_end, const extern_type*& __from_next,
- intern_type* __to, intern_type* __to_end,
+ do_in(state_type& __state, const extern_type* __from,
+ const extern_type* __from_end, const extern_type*& __from_next,
+ intern_type* __to, intern_type* __to_end,
intern_type*& __to_next) const;
-
- virtual int
+
+ virtual int
do_encoding() const throw();
- virtual bool
+ virtual bool
do_always_noconv() const throw();
- virtual int
- do_length(state_type&, const extern_type* __from,
+ virtual int
+ do_length(state_type&, const extern_type* __from,
const extern_type* __end, size_t __max) const;
- virtual int
+ virtual int
do_max_length() const throw();
};
@@ -216,14 +332,14 @@
// codecvt<char, char, mbstate_t> required specialization
template<>
- class codecvt<char, char, mbstate_t>
+ class codecvt<char, char, mbstate_t>
: public __codecvt_abstract_base<char, char, mbstate_t>
{
- public:
+ public:
// Types:
- typedef char intern_type;
- typedef char extern_type;
- typedef mbstate_t state_type;
+ typedef char intern_type;
+ typedef char extern_type;
+ typedef mbstate_t state_type;
protected:
__c_locale _M_c_locale_codecvt;
@@ -231,76 +347,76 @@
public:
static locale::id id;
- explicit
+ explicit
codecvt(size_t __refs = 0);
- explicit
+ explicit
codecvt(__c_locale __cloc, size_t __refs = 0);
protected:
- virtual
+ virtual
~codecvt();
virtual result
- do_out(state_type& __state, const intern_type* __from,
+ do_out(state_type& __state, const intern_type* __from,
const intern_type* __from_end, const intern_type*& __from_next,
extern_type* __to, extern_type* __to_end,
extern_type*& __to_next) const;
virtual result
- do_unshift(state_type& __state, extern_type* __to,
+ do_unshift(state_type& __state, extern_type* __to,
extern_type* __to_end, extern_type*& __to_next) const;
virtual result
- do_in(state_type& __state, const extern_type* __from,
+ do_in(state_type& __state, const extern_type* __from,
const extern_type* __from_end, const extern_type*& __from_next,
- intern_type* __to, intern_type* __to_end,
+ intern_type* __to, intern_type* __to_end,
intern_type*& __to_next) const;
- virtual int
+ virtual int
do_encoding() const throw();
- virtual bool
+ virtual bool
do_always_noconv() const throw();
- virtual int
- do_length(state_type&, const extern_type* __from,
+ virtual int
+ do_length(state_type&, const extern_type* __from,
const extern_type* __end, size_t __max) const;
- virtual int
+ virtual int
do_max_length() const throw();
};
#ifdef _GLIBCXX_USE_WCHAR_T
// codecvt<wchar_t, char, mbstate_t> required specialization
template<>
- class codecvt<wchar_t, char, mbstate_t>
+ class codecvt<wchar_t, char, mbstate_t>
: public __codecvt_abstract_base<wchar_t, char, mbstate_t>
{
public:
// Types:
- typedef wchar_t intern_type;
- typedef char extern_type;
- typedef mbstate_t state_type;
+ typedef wchar_t intern_type;
+ typedef char extern_type;
+ typedef mbstate_t state_type;
protected:
__c_locale _M_c_locale_codecvt;
public:
- static locale::id id;
+ static locale::id id;
- explicit
+ explicit
codecvt(size_t __refs = 0);
- explicit
+ explicit
codecvt(__c_locale __cloc, size_t __refs = 0);
protected:
- virtual
+ virtual
~codecvt();
virtual result
- do_out(state_type& __state, const intern_type* __from,
+ do_out(state_type& __state, const intern_type* __from,
const intern_type* __from_end, const intern_type*& __from_next,
extern_type* __to, extern_type* __to_end,
extern_type*& __to_next) const;
@@ -317,17 +433,17 @@
intern_type* __to, intern_type* __to_end,
intern_type*& __to_next) const;
- virtual
+ virtual
int do_encoding() const throw();
- virtual
+ virtual
bool do_always_noconv() const throw();
- virtual
+ virtual
int do_length(state_type&, const extern_type* __from,
const extern_type* __end, size_t __max) const;
- virtual int
+ virtual int
do_max_length() const throw();
};
#endif //_GLIBCXX_USE_WCHAR_T
@@ -337,19 +453,19 @@
class codecvt_byname : public codecvt<_InternT, _ExternT, _StateT>
{
public:
- explicit
- codecvt_byname(const char* __s, size_t __refs = 0)
+ explicit
+ codecvt_byname(const char* __s, size_t __refs = 0)
: codecvt<_InternT, _ExternT, _StateT>(__refs)
- {
+ {
if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0)
{
_S_destroy_c_locale(this->_M_c_locale_codecvt);
- _S_create_c_locale(this->_M_c_locale_codecvt, __s);
+ _S_create_c_locale(this->_M_c_locale_codecvt, __s);
}
}
protected:
- virtual
+ virtual
~codecvt_byname() { }
};
diff --git a/libstdc++-v3/include/bits/concurrence.h b/libstdc++-v3/include/bits/concurrence.h
index 68b9ab7a9f6..ea99e56e7ef 100644
--- a/libstdc++-v3/include/bits/concurrence.h
+++ b/libstdc++-v3/include/bits/concurrence.h
@@ -1,6 +1,6 @@
// Support for concurrent programing -*- C++ -*-
-// Copyright (C) 2003
+// Copyright (C) 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -27,28 +27,39 @@
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
-
-#ifndef _CONCURRENCE
-#define _CONCURRENCE 1
+
+#ifndef _CONCURRENCE_H
+#define _CONCURRENCE_H 1
// GCC's thread abstraction layer
#include "bits/gthr.h"
#if __GTHREADS
+
# ifdef __GTHREAD_MUTEX_INIT
# define __glibcxx_mutex_define_initialized(NAME) \
__gthread_mutex_t NAME = __GTHREAD_MUTEX_INIT
+# define __glibcxx_mutex_lock(NAME) \
+__gthread_mutex_lock(&NAME)
# else
+// Implies __GTHREAD_MUTEX_INIT_FUNCTION
# define __glibcxx_mutex_define_initialized(NAME) \
__gthread_mutex_t NAME; \
-__GTHREAD_MUTEX_INIT_FUNCTION(&NAME)
+__gthread_once_t NAME ## _once = __GTHREAD_ONCE_INIT; \
+void NAME ## _init() { __GTHREAD_MUTEX_INIT_FUNCTION(&NAME); }
+# define __glibcxx_mutex_lock(NAME) \
+__gthread_once(&NAME ## _once, NAME ## _init); \
+__gthread_mutex_lock(&NAME)
# endif
-# define __glibcxx_mutex_lock(LOCK) __gthread_mutex_lock(&LOCK)
-# define __glibcxx_mutex_unlock(LOCK) __gthread_mutex_unlock(&LOCK)
+
+# define __glibcxx_mutex_unlock(NAME) __gthread_mutex_unlock(&NAME)
+
#else
+
# define __glibcxx_mutex_define_initialized(NAME)
-# define __glibcxx_mutex_lock(LOCK)
-# define __glibcxx_mutex_unlock(LOCK)
+# define __glibcxx_mutex_lock(NAME)
+# define __glibcxx_mutex_unlock(NAME)
+
#endif
#endif
diff --git a/libstdc++-v3/include/bits/cpp_type_traits.h b/libstdc++-v3/include/bits/cpp_type_traits.h
index 00fe5606b89..d025c8ffe63 100644
--- a/libstdc++-v3/include/bits/cpp_type_traits.h
+++ b/libstdc++-v3/include/bits/cpp_type_traits.h
@@ -139,7 +139,7 @@ namespace std
_M_type = 1
};
};
-
+
template<>
struct __is_integer<char>
{
@@ -157,7 +157,7 @@ namespace std
_M_type = 1
};
};
-
+
template<>
struct __is_integer<unsigned char>
{
@@ -177,7 +177,7 @@ namespace std
};
};
# endif
-
+
template<>
struct __is_integer<short>
{
@@ -317,12 +317,27 @@ namespace std
//
// For the immediate use, the following is a good approximation
//
+
+ // NB: g++ can not compile these if declared within the class
+ // __is_pod itself.
+ namespace __gnu_internal
+ {
+ typedef char __one;
+ typedef char __two[2];
+
+ template <typename _Tp>
+ __one __test_type (int _Tp::*);
+ template <typename _Tp>
+ __two& __test_type (...);
+ }
+
+
template<typename _Tp>
struct __is_pod
{
enum
{
- _M_type = __is_fundamental<_Tp>::_M_type
+ _M_type = (sizeof(__gnu_internal::__test_type<_Tp>(0)) != sizeof(__gnu_internal::__one))
};
};
diff --git a/libstdc++-v3/include/bits/deque.tcc b/libstdc++-v3/include/bits/deque.tcc
index 9f01eed8d68..e8e043886ab 100644
--- a/libstdc++-v3/include/bits/deque.tcc
+++ b/libstdc++-v3/include/bits/deque.tcc
@@ -1,6 +1,6 @@
// Deque implementation (out of line) -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -61,8 +61,8 @@
#ifndef _DEQUE_TCC
#define _DEQUE_TCC 1
-namespace __gnu_norm
-{
+namespace _GLIBCXX_STD
+{
template <typename _Tp, typename _Alloc>
deque<_Tp,_Alloc>&
deque<_Tp,_Alloc>::
@@ -70,126 +70,128 @@ namespace __gnu_norm
{
const size_type __len = size();
if (&__x != this)
- {
- if (__len >= __x.size())
- erase(std::copy(__x.begin(), __x.end(), this->_M_start), this->_M_finish);
- else
- {
- const_iterator __mid = __x.begin() + difference_type(__len);
- std::copy(__x.begin(), __mid, this->_M_start);
- insert(this->_M_finish, __mid, __x.end());
- }
- }
+ {
+ if (__len >= __x.size())
+ erase(std::copy(__x.begin(), __x.end(), this->_M_impl._M_start),
+ this->_M_impl._M_finish);
+ else
+ {
+ const_iterator __mid = __x.begin() + difference_type(__len);
+ std::copy(__x.begin(), __mid, this->_M_impl._M_start);
+ insert(this->_M_impl._M_finish, __mid, __x.end());
+ }
+ }
return *this;
- }
-
+ }
+
template <typename _Tp, typename _Alloc>
- typename deque<_Tp,_Alloc>::iterator
+ typename deque<_Tp,_Alloc>::iterator
deque<_Tp,_Alloc>::
insert(iterator position, const value_type& __x)
{
- if (position._M_cur == this->_M_start._M_cur)
- {
- push_front(__x);
- return this->_M_start;
- }
- else if (position._M_cur == this->_M_finish._M_cur)
- {
- push_back(__x);
- iterator __tmp = this->_M_finish;
- --__tmp;
- return __tmp;
- }
+ if (position._M_cur == this->_M_impl._M_start._M_cur)
+ {
+ push_front(__x);
+ return this->_M_impl._M_start;
+ }
+ else if (position._M_cur == this->_M_impl._M_finish._M_cur)
+ {
+ push_back(__x);
+ iterator __tmp = this->_M_impl._M_finish;
+ --__tmp;
+ return __tmp;
+ }
else
return _M_insert_aux(position, __x);
}
-
+
template <typename _Tp, typename _Alloc>
- typename deque<_Tp,_Alloc>::iterator
+ typename deque<_Tp,_Alloc>::iterator
deque<_Tp,_Alloc>::
erase(iterator __position)
{
iterator __next = __position;
++__next;
- size_type __index = __position - this->_M_start;
+ size_type __index = __position - this->_M_impl._M_start;
if (__index < (size() >> 1))
- {
- std::copy_backward(this->_M_start, __position, __next);
- pop_front();
- }
+ {
+ std::copy_backward(this->_M_impl._M_start, __position, __next);
+ pop_front();
+ }
else
- {
- std::copy(__next, this->_M_finish, __position);
- pop_back();
- }
- return this->_M_start + __index;
+ {
+ std::copy(__next, this->_M_impl._M_finish, __position);
+ pop_back();
+ }
+ return this->_M_impl._M_start + __index;
}
-
+
template <typename _Tp, typename _Alloc>
- typename deque<_Tp,_Alloc>::iterator
+ typename deque<_Tp,_Alloc>::iterator
deque<_Tp,_Alloc>::
erase(iterator __first, iterator __last)
{
- if (__first == this->_M_start && __last == this->_M_finish)
- {
- clear();
- return this->_M_finish;
- }
+ if (__first == this->_M_impl._M_start && __last == this->_M_impl._M_finish)
+ {
+ clear();
+ return this->_M_impl._M_finish;
+ }
else
- {
- difference_type __n = __last - __first;
- difference_type __elems_before = __first - this->_M_start;
- if (static_cast<size_type>(__elems_before) < (size() - __n) / 2)
- {
- std::copy_backward(this->_M_start, __first, __last);
- iterator __new_start = this->_M_start + __n;
- std::_Destroy(this->_M_start, __new_start);
- _M_destroy_nodes(this->_M_start._M_node, __new_start._M_node);
- this->_M_start = __new_start;
- }
- else
- {
- std::copy(__last, this->_M_finish, __first);
- iterator __new_finish = this->_M_finish - __n;
- std::_Destroy(__new_finish, this->_M_finish);
- _M_destroy_nodes(__new_finish._M_node + 1,
- this->_M_finish._M_node + 1);
- this->_M_finish = __new_finish;
- }
- return this->_M_start + __elems_before;
- }
+ {
+ const difference_type __n = __last - __first;
+ const difference_type __elems_before = __first - this->_M_impl._M_start;
+ if (static_cast<size_type>(__elems_before) < (size() - __n) / 2)
+ {
+ std::copy_backward(this->_M_impl._M_start, __first, __last);
+ iterator __new_start = this->_M_impl._M_start + __n;
+ std::_Destroy(this->_M_impl._M_start, __new_start);
+ _M_destroy_nodes(this->_M_impl._M_start._M_node, __new_start._M_node);
+ this->_M_impl._M_start = __new_start;
+ }
+ else
+ {
+ std::copy(__last, this->_M_impl._M_finish, __first);
+ iterator __new_finish = this->_M_impl._M_finish - __n;
+ std::_Destroy(__new_finish, this->_M_impl._M_finish);
+ _M_destroy_nodes(__new_finish._M_node + 1,
+ this->_M_impl._M_finish._M_node + 1);
+ this->_M_impl._M_finish = __new_finish;
+ }
+ return this->_M_impl._M_start + __elems_before;
+ }
}
-
- template <typename _Tp, typename _Alloc>
+
+ template <typename _Tp, typename _Alloc>
void
deque<_Tp,_Alloc>::
clear()
{
- for (_Map_pointer __node = this->_M_start._M_node + 1;
- __node < this->_M_finish._M_node;
+ for (_Map_pointer __node = this->_M_impl._M_start._M_node + 1;
+ __node < this->_M_impl._M_finish._M_node;
++__node)
- {
- std::_Destroy(*__node, *__node + _S_buffer_size());
- _M_deallocate_node(*__node);
- }
-
- if (this->_M_start._M_node != this->_M_finish._M_node)
- {
- std::_Destroy(this->_M_start._M_cur, this->_M_start._M_last);
- std::_Destroy(this->_M_finish._M_first, this->_M_finish._M_cur);
- _M_deallocate_node(this->_M_finish._M_first);
- }
+ {
+ std::_Destroy(*__node, *__node + _S_buffer_size());
+ _M_deallocate_node(*__node);
+ }
+
+ if (this->_M_impl._M_start._M_node != this->_M_impl._M_finish._M_node)
+ {
+ std::_Destroy(this->_M_impl._M_start._M_cur, this->_M_impl._M_start._M_last);
+ std::_Destroy(this->_M_impl._M_finish._M_first, this->_M_impl._M_finish._M_cur);
+ _M_deallocate_node(this->_M_impl._M_finish._M_first);
+ }
else
- std::_Destroy(this->_M_start._M_cur, this->_M_finish._M_cur);
-
- this->_M_finish = this->_M_start;
+ std::_Destroy(this->_M_impl._M_start._M_cur, this->_M_impl._M_finish._M_cur);
+
+ this->_M_impl._M_finish = this->_M_impl._M_start;
}
-
+
template <typename _Tp, class _Alloc>
template <typename _InputIterator>
void
deque<_Tp,_Alloc>
- ::_M_assign_aux(_InputIterator __first, _InputIterator __last, input_iterator_tag)
+ ::_M_assign_aux(_InputIterator __first, _InputIterator __last,
+ input_iterator_tag)
{
iterator __cur = begin();
for ( ; __first != __last && __cur != end(); ++__cur, ++__first)
@@ -199,45 +201,45 @@ namespace __gnu_norm
else
insert(end(), __first, __last);
}
-
+
template <typename _Tp, typename _Alloc>
void
deque<_Tp,_Alloc>::
_M_fill_insert(iterator __pos, size_type __n, const value_type& __x)
{
- if (__pos._M_cur == this->_M_start._M_cur)
- {
- iterator __new_start = _M_reserve_elements_at_front(__n);
- try
- {
- std::uninitialized_fill(__new_start, this->_M_start, __x);
- this->_M_start = __new_start;
- }
- catch(...)
- {
- _M_destroy_nodes(__new_start._M_node, this->_M_start._M_node);
- __throw_exception_again;
- }
- }
- else if (__pos._M_cur == this->_M_finish._M_cur)
- {
- iterator __new_finish = _M_reserve_elements_at_back(__n);
- try
- {
- std::uninitialized_fill(this->_M_finish, __new_finish, __x);
- this->_M_finish = __new_finish;
- }
- catch(...)
- {
- _M_destroy_nodes(this->_M_finish._M_node + 1,
- __new_finish._M_node + 1);
- __throw_exception_again;
- }
- }
- else
+ if (__pos._M_cur == this->_M_impl._M_start._M_cur)
+ {
+ iterator __new_start = _M_reserve_elements_at_front(__n);
+ try
+ {
+ std::uninitialized_fill(__new_start, this->_M_impl._M_start, __x);
+ this->_M_impl._M_start = __new_start;
+ }
+ catch(...)
+ {
+ _M_destroy_nodes(__new_start._M_node, this->_M_impl._M_start._M_node);
+ __throw_exception_again;
+ }
+ }
+ else if (__pos._M_cur == this->_M_impl._M_finish._M_cur)
+ {
+ iterator __new_finish = _M_reserve_elements_at_back(__n);
+ try
+ {
+ std::uninitialized_fill(this->_M_impl._M_finish, __new_finish, __x);
+ this->_M_impl._M_finish = __new_finish;
+ }
+ catch(...)
+ {
+ _M_destroy_nodes(this->_M_impl._M_finish._M_node + 1,
+ __new_finish._M_node + 1);
+ __throw_exception_again;
+ }
+ }
+ else
_M_insert_aux(__pos, __n, __x);
}
-
+
template <typename _Tp, typename _Alloc>
void
deque<_Tp,_Alloc>::
@@ -246,21 +248,21 @@ namespace __gnu_norm
_Map_pointer __cur;
try
{
- for (__cur = this->_M_start._M_node;
- __cur < this->_M_finish._M_node;
+ for (__cur = this->_M_impl._M_start._M_node;
+ __cur < this->_M_impl._M_finish._M_node;
++__cur)
std::uninitialized_fill(*__cur, *__cur + _S_buffer_size(), __value);
- std::uninitialized_fill(this->_M_finish._M_first,
- this->_M_finish._M_cur,
+ std::uninitialized_fill(this->_M_impl._M_finish._M_first,
+ this->_M_impl._M_finish._M_cur,
__value);
}
catch(...)
{
- std::_Destroy(this->_M_start, iterator(*__cur, __cur));
+ std::_Destroy(this->_M_impl._M_start, iterator(*__cur, __cur));
__throw_exception_again;
}
}
-
+
template <typename _Tp, typename _Alloc>
template <typename _InputIterator>
void
@@ -280,7 +282,7 @@ namespace __gnu_norm
__throw_exception_again;
}
}
-
+
template <typename _Tp, typename _Alloc>
template <typename _ForwardIterator>
void
@@ -288,14 +290,14 @@ namespace __gnu_norm
_M_range_initialize(_ForwardIterator __first, _ForwardIterator __last,
forward_iterator_tag)
{
- size_type __n = std::distance(__first, __last);
+ const size_type __n = std::distance(__first, __last);
this->_M_initialize_map(__n);
-
+
_Map_pointer __cur_node;
try
{
- for (__cur_node = this->_M_start._M_node;
- __cur_node < this->_M_finish._M_node;
+ for (__cur_node = this->_M_impl._M_start._M_node;
+ __cur_node < this->_M_impl._M_finish._M_node;
++__cur_node)
{
_ForwardIterator __mid = __first;
@@ -303,16 +305,16 @@ namespace __gnu_norm
std::uninitialized_copy(__first, __mid, *__cur_node);
__first = __mid;
}
- std::uninitialized_copy(__first, __last, this->_M_finish._M_first);
+ std::uninitialized_copy(__first, __last, this->_M_impl._M_finish._M_first);
}
catch(...)
{
- std::_Destroy(this->_M_start, iterator(*__cur_node, __cur_node));
+ std::_Destroy(this->_M_impl._M_start, iterator(*__cur_node, __cur_node));
__throw_exception_again;
}
}
-
- // Called only if _M_finish._M_cur == _M_finish._M_last - 1.
+
+ // Called only if _M_impl._M_finish._M_cur == _M_impl._M_finish._M_last - 1.
template <typename _Tp, typename _Alloc>
void
deque<_Tp,_Alloc>::
@@ -320,21 +322,21 @@ namespace __gnu_norm
{
value_type __t_copy = __t;
_M_reserve_map_at_back();
- *(this->_M_finish._M_node + 1) = this->_M_allocate_node();
+ *(this->_M_impl._M_finish._M_node + 1) = this->_M_allocate_node();
try
{
- std::_Construct(this->_M_finish._M_cur, __t_copy);
- this->_M_finish._M_set_node(this->_M_finish._M_node + 1);
- this->_M_finish._M_cur = this->_M_finish._M_first;
+ std::_Construct(this->_M_impl._M_finish._M_cur, __t_copy);
+ this->_M_impl._M_finish._M_set_node(this->_M_impl._M_finish._M_node + 1);
+ this->_M_impl._M_finish._M_cur = this->_M_impl._M_finish._M_first;
}
catch(...)
{
- _M_deallocate_node(*(this->_M_finish._M_node + 1));
+ _M_deallocate_node(*(this->_M_impl._M_finish._M_node + 1));
__throw_exception_again;
}
}
-
- // Called only if _M_start._M_cur == _M_start._M_first.
+
+ // Called only if _M_impl._M_start._M_cur == _M_impl._M_start._M_first.
template <typename _Tp, typename _Alloc>
void
deque<_Tp,_Alloc>::
@@ -342,46 +344,46 @@ namespace __gnu_norm
{
value_type __t_copy = __t;
_M_reserve_map_at_front();
- *(this->_M_start._M_node - 1) = this->_M_allocate_node();
+ *(this->_M_impl._M_start._M_node - 1) = this->_M_allocate_node();
try
{
- this->_M_start._M_set_node(this->_M_start._M_node - 1);
- this->_M_start._M_cur = this->_M_start._M_last - 1;
- std::_Construct(this->_M_start._M_cur, __t_copy);
+ this->_M_impl._M_start._M_set_node(this->_M_impl._M_start._M_node - 1);
+ this->_M_impl._M_start._M_cur = this->_M_impl._M_start._M_last - 1;
+ std::_Construct(this->_M_impl._M_start._M_cur, __t_copy);
}
catch(...)
{
- ++this->_M_start;
- _M_deallocate_node(*(this->_M_start._M_node - 1));
+ ++this->_M_impl._M_start;
+ _M_deallocate_node(*(this->_M_impl._M_start._M_node - 1));
__throw_exception_again;
}
- }
-
- // Called only if _M_finish._M_cur == _M_finish._M_first.
+ }
+
+ // Called only if _M_impl._M_finish._M_cur == _M_impl._M_finish._M_first.
template <typename _Tp, typename _Alloc>
void deque<_Tp,_Alloc>::
_M_pop_back_aux()
{
- _M_deallocate_node(this->_M_finish._M_first);
- this->_M_finish._M_set_node(this->_M_finish._M_node - 1);
- this->_M_finish._M_cur = this->_M_finish._M_last - 1;
- std::_Destroy(this->_M_finish._M_cur);
+ _M_deallocate_node(this->_M_impl._M_finish._M_first);
+ this->_M_impl._M_finish._M_set_node(this->_M_impl._M_finish._M_node - 1);
+ this->_M_impl._M_finish._M_cur = this->_M_impl._M_finish._M_last - 1;
+ std::_Destroy(this->_M_impl._M_finish._M_cur);
}
-
- // Called only if _M_start._M_cur == _M_start._M_last - 1. Note that
- // if the deque has at least one element (a precondition for this member
- // function), and if _M_start._M_cur == _M_start._M_last, then the deque
+
+ // Called only if _M_impl._M_start._M_cur == _M_impl._M_start._M_last - 1. Note that
+ // if the deque has at least one element (a precondition for this member
+ // function), and if _M_impl._M_start._M_cur == _M_impl._M_start._M_last, then the deque
// must have at least two nodes.
template <typename _Tp, typename _Alloc>
void deque<_Tp,_Alloc>::
_M_pop_front_aux()
{
- std::_Destroy(this->_M_start._M_cur);
- _M_deallocate_node(this->_M_start._M_first);
- this->_M_start._M_set_node(this->_M_start._M_node + 1);
- this->_M_start._M_cur = this->_M_start._M_first;
- }
-
+ std::_Destroy(this->_M_impl._M_start._M_cur);
+ _M_deallocate_node(this->_M_impl._M_start._M_first);
+ this->_M_impl._M_start._M_set_node(this->_M_impl._M_start._M_node + 1);
+ this->_M_impl._M_start._M_cur = this->_M_impl._M_start._M_first;
+ }
+
template <typename _Tp, typename _Alloc>
template <typename _InputIterator>
void
@@ -389,10 +391,8 @@ namespace __gnu_norm
_M_range_insert_aux(iterator __pos,
_InputIterator __first, _InputIterator __last,
input_iterator_tag)
- {
- std::copy(__first, __last, std::inserter(*this, __pos));
- }
-
+ { std::copy(__first, __last, std::inserter(*this, __pos)); }
+
template <typename _Tp, typename _Alloc>
template <typename _ForwardIterator>
void
@@ -402,144 +402,148 @@ namespace __gnu_norm
forward_iterator_tag)
{
size_type __n = std::distance(__first, __last);
- if (__pos._M_cur == this->_M_start._M_cur)
- {
- iterator __new_start = _M_reserve_elements_at_front(__n);
- try
- {
- std::uninitialized_copy(__first, __last, __new_start);
- this->_M_start = __new_start;
- }
- catch(...)
- {
- _M_destroy_nodes(__new_start._M_node, this->_M_start._M_node);
- __throw_exception_again;
- }
- }
- else if (__pos._M_cur == this->_M_finish._M_cur)
- {
- iterator __new_finish = _M_reserve_elements_at_back(__n);
- try
- {
- std::uninitialized_copy(__first, __last, this->_M_finish);
- this->_M_finish = __new_finish;
- }
- catch(...)
- {
- _M_destroy_nodes(this->_M_finish._M_node + 1,
- __new_finish._M_node + 1);
- __throw_exception_again;
- }
- }
+ if (__pos._M_cur == this->_M_impl._M_start._M_cur)
+ {
+ iterator __new_start = _M_reserve_elements_at_front(__n);
+ try
+ {
+ std::uninitialized_copy(__first, __last, __new_start);
+ this->_M_impl._M_start = __new_start;
+ }
+ catch(...)
+ {
+ _M_destroy_nodes(__new_start._M_node, this->_M_impl._M_start._M_node);
+ __throw_exception_again;
+ }
+ }
+ else if (__pos._M_cur == this->_M_impl._M_finish._M_cur)
+ {
+ iterator __new_finish = _M_reserve_elements_at_back(__n);
+ try
+ {
+ std::uninitialized_copy(__first, __last, this->_M_impl._M_finish);
+ this->_M_impl._M_finish = __new_finish;
+ }
+ catch(...)
+ {
+ _M_destroy_nodes(this->_M_impl._M_finish._M_node + 1,
+ __new_finish._M_node + 1);
+ __throw_exception_again;
+ }
+ }
else
_M_insert_aux(__pos, __first, __last, __n);
}
-
+
template <typename _Tp, typename _Alloc>
typename deque<_Tp, _Alloc>::iterator
deque<_Tp,_Alloc>::
_M_insert_aux(iterator __pos, const value_type& __x)
{
- difference_type __index = __pos - this->_M_start;
+ difference_type __index = __pos - this->_M_impl._M_start;
value_type __x_copy = __x; // XXX copy
if (static_cast<size_type>(__index) < size() / 2)
- {
- push_front(front());
- iterator __front1 = this->_M_start;
- ++__front1;
- iterator __front2 = __front1;
- ++__front2;
- __pos = this->_M_start + __index;
- iterator __pos1 = __pos;
- ++__pos1;
- std::copy(__front2, __pos1, __front1);
- }
+ {
+ push_front(front());
+ iterator __front1 = this->_M_impl._M_start;
+ ++__front1;
+ iterator __front2 = __front1;
+ ++__front2;
+ __pos = this->_M_impl._M_start + __index;
+ iterator __pos1 = __pos;
+ ++__pos1;
+ std::copy(__front2, __pos1, __front1);
+ }
else
- {
- push_back(back());
- iterator __back1 = this->_M_finish;
- --__back1;
- iterator __back2 = __back1;
- --__back2;
- __pos = this->_M_start + __index;
- std::copy_backward(__pos, __back2, __back1);
- }
+ {
+ push_back(back());
+ iterator __back1 = this->_M_impl._M_finish;
+ --__back1;
+ iterator __back2 = __back1;
+ --__back2;
+ __pos = this->_M_impl._M_start + __index;
+ std::copy_backward(__pos, __back2, __back1);
+ }
*__pos = __x_copy;
return __pos;
}
-
+
template <typename _Tp, typename _Alloc>
void
deque<_Tp,_Alloc>::
_M_insert_aux(iterator __pos, size_type __n, const value_type& __x)
{
- const difference_type __elems_before = __pos - this->_M_start;
+ const difference_type __elems_before = __pos - this->_M_impl._M_start;
size_type __length = this->size();
value_type __x_copy = __x;
if (__elems_before < difference_type(__length / 2))
- {
- iterator __new_start = _M_reserve_elements_at_front(__n);
- iterator __old_start = this->_M_start;
- __pos = this->_M_start + __elems_before;
- try
- {
- if (__elems_before >= difference_type(__n))
- {
- iterator __start_n = this->_M_start + difference_type(__n);
- std::uninitialized_copy(this->_M_start, __start_n, __new_start);
- this->_M_start = __new_start;
- std::copy(__start_n, __pos, __old_start);
- fill(__pos - difference_type(__n), __pos, __x_copy);
- }
- else
- {
- std::__uninitialized_copy_fill(this->_M_start, __pos, __new_start,
- this->_M_start, __x_copy);
- this->_M_start = __new_start;
- std::fill(__old_start, __pos, __x_copy);
- }
- }
- catch(...)
- {
- _M_destroy_nodes(__new_start._M_node, this->_M_start._M_node);
- __throw_exception_again;
- }
- }
+ {
+ iterator __new_start = _M_reserve_elements_at_front(__n);
+ iterator __old_start = this->_M_impl._M_start;
+ __pos = this->_M_impl._M_start + __elems_before;
+ try
+ {
+ if (__elems_before >= difference_type(__n))
+ {
+ iterator __start_n = this->_M_impl._M_start + difference_type(__n);
+ std::uninitialized_copy(this->_M_impl._M_start, __start_n,
+ __new_start);
+ this->_M_impl._M_start = __new_start;
+ std::copy(__start_n, __pos, __old_start);
+ fill(__pos - difference_type(__n), __pos, __x_copy);
+ }
+ else
+ {
+ std::__uninitialized_copy_fill(this->_M_impl._M_start, __pos,
+ __new_start,
+ this->_M_impl._M_start, __x_copy);
+ this->_M_impl._M_start = __new_start;
+ std::fill(__old_start, __pos, __x_copy);
+ }
+ }
+ catch(...)
+ {
+ _M_destroy_nodes(__new_start._M_node, this->_M_impl._M_start._M_node);
+ __throw_exception_again;
+ }
+ }
else
- {
- iterator __new_finish = _M_reserve_elements_at_back(__n);
- iterator __old_finish = this->_M_finish;
- const difference_type __elems_after =
- difference_type(__length) - __elems_before;
- __pos = this->_M_finish - __elems_after;
- try
- {
- if (__elems_after > difference_type(__n))
- {
- iterator __finish_n = this->_M_finish - difference_type(__n);
- std::uninitialized_copy(__finish_n, this->_M_finish, this->_M_finish);
- this->_M_finish = __new_finish;
- std::copy_backward(__pos, __finish_n, __old_finish);
- std::fill(__pos, __pos + difference_type(__n), __x_copy);
- }
- else
- {
- std::__uninitialized_fill_copy(this->_M_finish,
- __pos + difference_type(__n),
- __x_copy, __pos, this->_M_finish);
- this->_M_finish = __new_finish;
- std::fill(__pos, __old_finish, __x_copy);
- }
- }
- catch(...)
- {
- _M_destroy_nodes(this->_M_finish._M_node + 1,
- __new_finish._M_node + 1);
- __throw_exception_again;
- }
- }
+ {
+ iterator __new_finish = _M_reserve_elements_at_back(__n);
+ iterator __old_finish = this->_M_impl._M_finish;
+ const difference_type __elems_after =
+ difference_type(__length) - __elems_before;
+ __pos = this->_M_impl._M_finish - __elems_after;
+ try
+ {
+ if (__elems_after > difference_type(__n))
+ {
+ iterator __finish_n = this->_M_impl._M_finish - difference_type(__n);
+ std::uninitialized_copy(__finish_n, this->_M_impl._M_finish,
+ this->_M_impl._M_finish);
+ this->_M_impl._M_finish = __new_finish;
+ std::copy_backward(__pos, __finish_n, __old_finish);
+ std::fill(__pos, __pos + difference_type(__n), __x_copy);
+ }
+ else
+ {
+ std::__uninitialized_fill_copy(this->_M_impl._M_finish,
+ __pos + difference_type(__n),
+ __x_copy, __pos,
+ this->_M_impl._M_finish);
+ this->_M_impl._M_finish = __new_finish;
+ std::fill(__pos, __old_finish, __x_copy);
+ }
+ }
+ catch(...)
+ {
+ _M_destroy_nodes(this->_M_impl._M_finish._M_node + 1,
+ __new_finish._M_node + 1);
+ __throw_exception_again;
+ }
+ }
}
-
+
template <typename _Tp, typename _Alloc>
template <typename _ForwardIterator>
void
@@ -548,99 +552,101 @@ namespace __gnu_norm
_ForwardIterator __first, _ForwardIterator __last,
size_type __n)
{
- const difference_type __elemsbefore = __pos - this->_M_start;
+ const difference_type __elemsbefore = __pos - this->_M_impl._M_start;
size_type __length = size();
if (static_cast<size_type>(__elemsbefore) < __length / 2)
- {
- iterator __new_start = _M_reserve_elements_at_front(__n);
- iterator __old_start = this->_M_start;
- __pos = this->_M_start + __elemsbefore;
- try
- {
- if (__elemsbefore >= difference_type(__n))
- {
- iterator __start_n = this->_M_start + difference_type(__n);
- std::uninitialized_copy(this->_M_start, __start_n, __new_start);
- this->_M_start = __new_start;
- std::copy(__start_n, __pos, __old_start);
- std::copy(__first, __last, __pos - difference_type(__n));
- }
- else
- {
- _ForwardIterator __mid = __first;
- std::advance(__mid, difference_type(__n) - __elemsbefore);
- std::__uninitialized_copy_copy(this->_M_start, __pos,
- __first, __mid, __new_start);
- this->_M_start = __new_start;
- std::copy(__mid, __last, __old_start);
- }
- }
- catch(...)
- {
- _M_destroy_nodes(__new_start._M_node, this->_M_start._M_node);
- __throw_exception_again;
- }
- }
+ {
+ iterator __new_start = _M_reserve_elements_at_front(__n);
+ iterator __old_start = this->_M_impl._M_start;
+ __pos = this->_M_impl._M_start + __elemsbefore;
+ try
+ {
+ if (__elemsbefore >= difference_type(__n))
+ {
+ iterator __start_n = this->_M_impl._M_start + difference_type(__n);
+ std::uninitialized_copy(this->_M_impl._M_start, __start_n,
+ __new_start);
+ this->_M_impl._M_start = __new_start;
+ std::copy(__start_n, __pos, __old_start);
+ std::copy(__first, __last, __pos - difference_type(__n));
+ }
+ else
+ {
+ _ForwardIterator __mid = __first;
+ std::advance(__mid, difference_type(__n) - __elemsbefore);
+ std::__uninitialized_copy_copy(this->_M_impl._M_start, __pos,
+ __first, __mid, __new_start);
+ this->_M_impl._M_start = __new_start;
+ std::copy(__mid, __last, __old_start);
+ }
+ }
+ catch(...)
+ {
+ _M_destroy_nodes(__new_start._M_node, this->_M_impl._M_start._M_node);
+ __throw_exception_again;
+ }
+ }
else
{
iterator __new_finish = _M_reserve_elements_at_back(__n);
- iterator __old_finish = this->_M_finish;
- const difference_type __elemsafter =
+ iterator __old_finish = this->_M_impl._M_finish;
+ const difference_type __elemsafter =
difference_type(__length) - __elemsbefore;
- __pos = this->_M_finish - __elemsafter;
+ __pos = this->_M_impl._M_finish - __elemsafter;
try
{
if (__elemsafter > difference_type(__n))
- {
- iterator __finish_n = this->_M_finish - difference_type(__n);
- std::uninitialized_copy(__finish_n,
- this->_M_finish,
- this->_M_finish);
- this->_M_finish = __new_finish;
- std::copy_backward(__pos, __finish_n, __old_finish);
- std::copy(__first, __last, __pos);
- }
+ {
+ iterator __finish_n = this->_M_impl._M_finish - difference_type(__n);
+ std::uninitialized_copy(__finish_n,
+ this->_M_impl._M_finish,
+ this->_M_impl._M_finish);
+ this->_M_impl._M_finish = __new_finish;
+ std::copy_backward(__pos, __finish_n, __old_finish);
+ std::copy(__first, __last, __pos);
+ }
else
- {
- _ForwardIterator __mid = __first;
- std::advance(__mid, __elemsafter);
- std::__uninitialized_copy_copy(__mid, __last, __pos,
- this->_M_finish, this->_M_finish);
- this->_M_finish = __new_finish;
- std::copy(__first, __mid, __pos);
- }
+ {
+ _ForwardIterator __mid = __first;
+ std::advance(__mid, __elemsafter);
+ std::__uninitialized_copy_copy(__mid, __last, __pos,
+ this->_M_impl._M_finish,
+ this->_M_impl._M_finish);
+ this->_M_impl._M_finish = __new_finish;
+ std::copy(__first, __mid, __pos);
+ }
}
catch(...)
{
- _M_destroy_nodes(this->_M_finish._M_node + 1,
+ _M_destroy_nodes(this->_M_impl._M_finish._M_node + 1,
__new_finish._M_node + 1);
__throw_exception_again;
}
}
}
-
+
template <typename _Tp, typename _Alloc>
void
deque<_Tp,_Alloc>::
_M_new_elements_at_front(size_type __new_elems)
{
size_type __new_nodes
- = (__new_elems + _S_buffer_size() - 1) / _S_buffer_size();
+ = (__new_elems + _S_buffer_size() - 1) / _S_buffer_size();
_M_reserve_map_at_front(__new_nodes);
size_type __i;
try
{
for (__i = 1; __i <= __new_nodes; ++__i)
- *(this->_M_start._M_node - __i) = this->_M_allocate_node();
+ *(this->_M_impl._M_start._M_node - __i) = this->_M_allocate_node();
}
catch(...)
{
for (size_type __j = 1; __j < __i; ++__j)
- _M_deallocate_node(*(this->_M_start._M_node - __j));
+ _M_deallocate_node(*(this->_M_impl._M_start._M_node - __j));
__throw_exception_again;
}
}
-
+
template <typename _Tp, typename _Alloc>
void
deque<_Tp,_Alloc>::
@@ -653,60 +659,61 @@ namespace __gnu_norm
try
{
for (__i = 1; __i <= __new_nodes; ++__i)
- *(this->_M_finish._M_node + __i) = this->_M_allocate_node();
+ *(this->_M_impl._M_finish._M_node + __i) = this->_M_allocate_node();
}
catch(...)
{
for (size_type __j = 1; __j < __i; ++__j)
- _M_deallocate_node(*(this->_M_finish._M_node + __j));
+ _M_deallocate_node(*(this->_M_impl._M_finish._M_node + __j));
__throw_exception_again;
}
}
-
+
template <typename _Tp, typename _Alloc>
void
deque<_Tp,_Alloc>::
_M_reallocate_map(size_type __nodes_to_add, bool __add_at_front)
{
size_type __old_num_nodes
- = this->_M_finish._M_node - this->_M_start._M_node + 1;
+ = this->_M_impl._M_finish._M_node - this->_M_impl._M_start._M_node + 1;
size_type __new_num_nodes = __old_num_nodes + __nodes_to_add;
-
+
_Map_pointer __new_nstart;
- if (this->_M_map_size > 2 * __new_num_nodes)
- {
- __new_nstart
- = this->_M_map + (this->_M_map_size - __new_num_nodes) / 2
- + (__add_at_front ? __nodes_to_add : 0);
- if (__new_nstart < this->_M_start._M_node)
- std::copy(this->_M_start._M_node,
- this->_M_finish._M_node + 1,
+ if (this->_M_impl._M_map_size > 2 * __new_num_nodes)
+ {
+ __new_nstart = this->_M_impl._M_map + (this->_M_impl._M_map_size
+ - __new_num_nodes) / 2
+ + (__add_at_front ? __nodes_to_add : 0);
+ if (__new_nstart < this->_M_impl._M_start._M_node)
+ std::copy(this->_M_impl._M_start._M_node,
+ this->_M_impl._M_finish._M_node + 1,
__new_nstart);
- else
- std::copy_backward(this->_M_start._M_node,
- this->_M_finish._M_node + 1,
- __new_nstart + __old_num_nodes);
- }
+ else
+ std::copy_backward(this->_M_impl._M_start._M_node,
+ this->_M_impl._M_finish._M_node + 1,
+ __new_nstart + __old_num_nodes);
+ }
else
- {
- size_type __new_map_size =
- this->_M_map_size + std::max(this->_M_map_size, __nodes_to_add) + 2;
-
- _Map_pointer __new_map = this->_M_allocate_map(__new_map_size);
- __new_nstart = __new_map + (__new_map_size - __new_num_nodes) / 2
- + (__add_at_front ? __nodes_to_add : 0);
- std::copy(this->_M_start._M_node,
- this->_M_finish._M_node + 1,
- __new_nstart);
- _M_deallocate_map(this->_M_map, this->_M_map_size);
-
- this->_M_map = __new_map;
- this->_M_map_size = __new_map_size;
- }
-
- this->_M_start._M_set_node(__new_nstart);
- this->_M_finish._M_set_node(__new_nstart + __old_num_nodes - 1);
+ {
+ size_type __new_map_size = this->_M_impl._M_map_size
+ + std::max(this->_M_impl._M_map_size,
+ __nodes_to_add) + 2;
+
+ _Map_pointer __new_map = this->_M_allocate_map(__new_map_size);
+ __new_nstart = __new_map + (__new_map_size - __new_num_nodes) / 2
+ + (__add_at_front ? __nodes_to_add : 0);
+ std::copy(this->_M_impl._M_start._M_node,
+ this->_M_impl._M_finish._M_node + 1,
+ __new_nstart);
+ _M_deallocate_map(this->_M_impl._M_map, this->_M_impl._M_map_size);
+
+ this->_M_impl._M_map = __new_map;
+ this->_M_impl._M_map_size = __new_map_size;
+ }
+
+ this->_M_impl._M_start._M_set_node(__new_nstart);
+ this->_M_impl._M_finish._M_set_node(__new_nstart + __old_num_nodes - 1);
}
-} // namespace __gnu_norm
-
+} // namespace std
+
#endif
diff --git a/libstdc++-v3/include/bits/fstream.tcc b/libstdc++-v3/include/bits/fstream.tcc
index ed2fb6aace9..19530e75c49 100644
--- a/libstdc++-v3/include/bits/fstream.tcc
+++ b/libstdc++-v3/include/bits/fstream.tcc
@@ -73,20 +73,20 @@ namespace std
template<typename _CharT, typename _Traits>
basic_filebuf<_CharT, _Traits>::
- basic_filebuf() : __streambuf_type(), _M_file(&_M_lock),
+ basic_filebuf() : __streambuf_type(), _M_file(&_M_lock),
_M_mode(ios_base::openmode(0)), _M_state_beg(), _M_state_cur(),
_M_state_last(), _M_buf(NULL), _M_buf_size(BUFSIZ),
_M_buf_allocated(false), _M_reading(false), _M_writing(false),
_M_pback_cur_save(0), _M_pback_end_save(0), _M_pback_init(false),
_M_codecvt(0), _M_ext_buf(0), _M_ext_buf_size(0), _M_ext_next(0),
_M_ext_end(0)
- {
+ {
if (has_facet<__codecvt_type>(this->_M_buf_locale))
_M_codecvt = &use_facet<__codecvt_type>(this->_M_buf_locale);
}
template<typename _CharT, typename _Traits>
- typename basic_filebuf<_CharT, _Traits>::__filebuf_type*
+ typename basic_filebuf<_CharT, _Traits>::__filebuf_type*
basic_filebuf<_CharT, _Traits>::
open(const char* __s, ios_base::openmode __mode)
{
@@ -108,8 +108,8 @@ namespace std
_M_state_last = _M_state_cur = _M_state_beg;
// 27.8.1.3,4
- if ((__mode & ios_base::ate)
- && this->seekoff(0, ios_base::end, __mode)
+ if ((__mode & ios_base::ate)
+ && this->seekoff(0, ios_base::end, __mode)
== pos_type(off_type(-1)))
this->close();
else
@@ -120,7 +120,7 @@ namespace std
}
template<typename _CharT, typename _Traits>
- typename basic_filebuf<_CharT, _Traits>::__filebuf_type*
+ typename basic_filebuf<_CharT, _Traits>::__filebuf_type*
basic_filebuf<_CharT, _Traits>::
close() throw()
{
@@ -135,7 +135,7 @@ namespace std
}
catch(...)
{ __testfail = true; }
-
+
// NB: Do this here so that re-opened filebufs will be cool...
this->_M_mode = ios_base::openmode(0);
this->_M_pback_init = false;
@@ -144,7 +144,7 @@ namespace std
_M_writing = false;
_M_set_buffer(-1);
_M_state_last = _M_state_cur = _M_state_beg;
-
+
if (!_M_file.close())
__testfail = true;
@@ -155,7 +155,7 @@ namespace std
}
template<typename _CharT, typename _Traits>
- streamsize
+ streamsize
basic_filebuf<_CharT, _Traits>::
showmanyc()
{
@@ -173,13 +173,12 @@ namespace std
}
template<typename _CharT, typename _Traits>
- typename basic_filebuf<_CharT, _Traits>::int_type
+ typename basic_filebuf<_CharT, _Traits>::int_type
basic_filebuf<_CharT, _Traits>::
underflow()
{
int_type __ret = traits_type::eof();
const bool __testin = this->_M_mode & ios_base::in;
- const bool __testout = this->_M_mode & ios_base::out;
if (__testin && !_M_writing)
{
// Check for pback madness, and if so swich back to the
@@ -193,15 +192,15 @@ namespace std
// Get and convert input sequence.
const size_t __buflen = this->_M_buf_size > 1
? this->_M_buf_size - 1 : 1;
-
+
// Will be set to true if ::read() returns 0 indicating EOF.
bool __got_eof = false;
// Number of internal characters produced.
streamsize __ilen = 0;
- codecvt_base::result __r = codecvt_base::ok;
+ codecvt_base::result __r = codecvt_base::ok;
if (__check_facet(_M_codecvt).always_noconv())
{
- __ilen = _M_file.xsgetn(reinterpret_cast<char*>(this->eback()),
+ __ilen = _M_file.xsgetn(reinterpret_cast<char*>(this->eback()),
__buflen);
if (__ilen == 0)
__got_eof = true;
@@ -227,7 +226,7 @@ namespace std
// chars already present.
if (_M_reading && this->egptr() == this->eback() && __remainder)
__rlen = 0;
-
+
// Allocate buffer if necessary and move unconverted
// bytes to front.
if (_M_ext_buf_size < __blen)
@@ -256,9 +255,9 @@ namespace std
// codecvt::max_length() is bogus.
if (_M_ext_end - _M_ext_buf + __rlen > _M_ext_buf_size)
{
- __throw_ios_failure("basic_filebuf::underflow "
+ __throw_ios_failure(__N("basic_filebuf::underflow "
"codecvt::max_length() "
- "is not valid");
+ "is not valid"));
}
streamsize __elen = _M_file.xsgetn(_M_ext_end, __rlen);
if (__elen == 0)
@@ -270,7 +269,7 @@ namespace std
char_type* __iend;
__r = _M_codecvt->in(_M_state_cur, _M_ext_next,
- _M_ext_end, _M_ext_next, this->eback(),
+ _M_ext_end, _M_ext_next, this->eback(),
this->eback() + __buflen, __iend);
if (__r == codecvt_base::noconv)
{
@@ -303,28 +302,28 @@ namespace std
else if (__got_eof)
{
// If the actual end of file is reached, set 'uncommitted'
- // mode, thus allowing an immediate write without an
+ // mode, thus allowing an immediate write without an
// intervening seek.
_M_set_buffer(-1);
_M_reading = false;
// However, reaching it while looping on partial means that
// the file has got an incomplete character.
if (__r == codecvt_base::partial)
- __throw_ios_failure("basic_filebuf::underflow "
- "incomplete character in file");
+ __throw_ios_failure(__N("basic_filebuf::underflow "
+ "incomplete character in file"));
}
else if (__r == codecvt_base::error)
- __throw_ios_failure("basic_filebuf::underflow "
- "invalid byte sequence in file");
+ __throw_ios_failure(__N("basic_filebuf::underflow "
+ "invalid byte sequence in file"));
else
- __throw_ios_failure("basic_filebuf::underflow "
- "error reading the file");
+ __throw_ios_failure(__N("basic_filebuf::underflow "
+ "error reading the file"));
}
return __ret;
}
template<typename _CharT, typename _Traits>
- typename basic_filebuf<_CharT, _Traits>::int_type
+ typename basic_filebuf<_CharT, _Traits>::int_type
basic_filebuf<_CharT, _Traits>::
pbackfail(int_type __i)
{
@@ -334,7 +333,7 @@ namespace std
{
// Remember whether the pback buffer is active, otherwise below
// we may try to store in it a second char (libstdc++/9761).
- const bool __testpb = this->_M_pback_init;
+ const bool __testpb = this->_M_pback_init;
const bool __testeof = traits_type::eq_int_type(__i, __ret);
int_type __tmp;
if (this->eback() < this->gptr())
@@ -368,7 +367,7 @@ namespace std
{
_M_create_pback();
_M_reading = true;
- *this->gptr() = traits_type::to_char_type(__i);
+ *this->gptr() = traits_type::to_char_type(__i);
__ret = __i;
}
}
@@ -376,7 +375,7 @@ namespace std
}
template<typename _CharT, typename _Traits>
- typename basic_filebuf<_CharT, _Traits>::int_type
+ typename basic_filebuf<_CharT, _Traits>::int_type
basic_filebuf<_CharT, _Traits>::
overflow(int_type __c)
{
@@ -393,12 +392,12 @@ namespace std
*this->pptr() = traits_type::to_char_type(__c);
this->pbump(1);
}
-
+
// Convert pending sequence to external representation,
// and output.
if (_M_convert_to_external(this->pbase(),
this->pptr() - this->pbase())
- && (!__testeof || (__testeof && !_M_file.sync())))
+ && (!__testeof || !_M_file.sync()))
{
_M_set_buffer(0);
__ret = traits_type::not_eof(__c);
@@ -423,7 +422,7 @@ namespace std
// Unbuffered.
char_type __conv = traits_type::to_char_type(__c);
if (__testeof || _M_convert_to_external(&__conv, 1))
- {
+ {
_M_writing = true;
__ret = traits_type::not_eof(__c);
}
@@ -431,19 +430,19 @@ namespace std
}
return __ret;
}
-
+
template<typename _CharT, typename _Traits>
bool
basic_filebuf<_CharT, _Traits>::
_M_convert_to_external(_CharT* __ibuf, streamsize __ilen)
{
// Sizes of external and pending output.
- streamsize __elen = 0;
- streamsize __plen = 0;
+ streamsize __elen;
+ streamsize __plen;
if (__check_facet(_M_codecvt).always_noconv())
{
- __elen += _M_file.xsputn(reinterpret_cast<char*>(__ibuf), __ilen);
- __plen += __ilen;
+ __elen = _M_file.xsputn(reinterpret_cast<char*>(__ibuf), __ilen);
+ __plen = __ilen;
}
else
{
@@ -457,7 +456,7 @@ namespace std
codecvt_base::result __r;
__r = _M_codecvt->out(_M_state_cur, __ibuf, __ibuf + __ilen,
__iend, __buf, __buf + __blen, __bend);
-
+
if (__r == codecvt_base::ok || __r == codecvt_base::partial)
__blen = __bend - __buf;
else if (__r == codecvt_base::noconv)
@@ -467,41 +466,39 @@ namespace std
__blen = __ilen;
}
else
- {
- // Result == error.
- __blen = 0;
- }
-
- if (__blen)
- {
- __elen += _M_file.xsputn(__buf, __blen);
- __plen += __blen;
- }
-
+ __throw_ios_failure(__N("basic_filebuf::_M_convert_to_external "
+ "conversion error"));
+
+ __elen = _M_file.xsputn(__buf, __blen);
+ __plen = __blen;
+
// Try once more for partial conversions.
- if (__r == codecvt_base::partial)
+ if (__r == codecvt_base::partial && __elen == __plen)
{
const char_type* __iresume = __iend;
streamsize __rlen = this->pptr() - __iend;
__r = _M_codecvt->out(_M_state_cur, __iresume,
- __iresume + __rlen, __iend, __buf,
+ __iresume + __rlen, __iend, __buf,
__buf + __blen, __bend);
if (__r != codecvt_base::error)
{
__rlen = __bend - __buf;
- __elen += _M_file.xsputn(__buf, __rlen);
- __plen += __rlen;
+ __elen = _M_file.xsputn(__buf, __rlen);
+ __plen = __rlen;
}
+ else
+ __throw_ios_failure(__N("basic_filebuf::_M_convert_to_external "
+ "conversion error"));
}
}
- return __elen && __elen == __plen;
+ return __elen == __plen;
}
template<typename _CharT, typename _Traits>
streamsize
basic_filebuf<_CharT, _Traits>::
xsputn(const _CharT* __s, streamsize __n)
- {
+ {
// Optimization in the always_noconv() case, to be generalized in the
// future: when __n is sufficiently large we write directly instead of
// using the buffer.
@@ -524,7 +521,7 @@ namespace std
const streamsize __buffill = this->pptr() - this->pbase();
const char* __buf = reinterpret_cast<const char*>(this->pbase());
__ret = _M_file.xsputn_2(__buf, __buffill,
- reinterpret_cast<const char*>(__s),
+ reinterpret_cast<const char*>(__s),
__n);
if (__ret == __buffill + __n)
{
@@ -540,12 +537,12 @@ namespace std
__ret = __streambuf_type::xsputn(__s, __n);
}
else
- __ret = __streambuf_type::xsputn(__s, __n);
+ __ret = __streambuf_type::xsputn(__s, __n);
return __ret;
}
template<typename _CharT, typename _Traits>
- typename basic_filebuf<_CharT, _Traits>::__streambuf_type*
+ typename basic_filebuf<_CharT, _Traits>::__streambuf_type*
basic_filebuf<_CharT, _Traits>::
setbuf(char_type* __s, streamsize __n)
{
@@ -565,9 +562,9 @@ namespace std
this->_M_buf = __s;
this->_M_buf_size = __n;
}
- return this;
+ return this;
}
-
+
// According to 27.8.1.4 p11 - 13, seekoff should ignore the last
// argument (of type openmode).
@@ -582,9 +579,9 @@ namespace std
if (__width < 0)
__width = 0;
- pos_type __ret = pos_type(off_type(-1));
+ pos_type __ret = pos_type(off_type(-1));
const bool __testfail = __off != 0 && __width <= 0;
- if (this->is_open() && !__testfail)
+ if (this->is_open() && !__testfail)
{
// Ditch any pback buffers to avoid confusion.
_M_destroy_pback();
@@ -609,10 +606,10 @@ namespace std
_M_codecvt->length(_M_state_last, _M_ext_buf, _M_ext_next,
this->gptr() - this->eback());
__computed_off += _M_ext_buf + __gptr_off - _M_ext_end;
-
+
// _M_state_last is modified by codecvt::length() so
- // it now corresponds to gptr().
- __state = _M_state_last;
+ // it now corresponds to gptr().
+ __state = _M_state_last;
}
}
__ret = _M_seek(__computed_off, __way, __state);
@@ -629,8 +626,8 @@ namespace std
basic_filebuf<_CharT, _Traits>::
seekpos(pos_type __pos, ios_base::openmode)
{
- pos_type __ret = pos_type(off_type(-1));
- if (this->is_open())
+ pos_type __ret = pos_type(off_type(-1));
+ if (this->is_open())
{
// Ditch any pback buffers to avoid confusion.
_M_destroy_pback();
@@ -646,9 +643,9 @@ namespace std
{
pos_type __ret = pos_type(off_type(-1));
if (_M_terminate_output())
- {
+ {
// Returns pos_type(off_type(-1)) in case of failure.
- __ret = pos_type(_M_file.seekoff(__off, __way));
+ __ret = pos_type(_M_file.seekoff(__off, __way));
_M_reading = false;
_M_writing = false;
_M_ext_next = _M_ext_end = _M_ext_buf;
@@ -672,9 +669,9 @@ namespace std
if (traits_type::eq_int_type(__tmp, traits_type::eof()))
__testvalid = false;
}
-
+
// Part two: output unshift sequence.
- if (_M_writing && !__check_facet(_M_codecvt).always_noconv()
+ if (_M_writing && !__check_facet(_M_codecvt).always_noconv()
&& __testvalid)
{
// Note: this value is arbitrary, since there is no way to
@@ -695,7 +692,7 @@ namespace std
else if (__r == codecvt_base::ok ||
__r == codecvt_base::partial)
{
- __ilen = __next - __buf;
+ __ilen = __next - __buf;
if (__ilen > 0)
{
const streamsize __elen = _M_file.xsputn(__buf, __ilen);
@@ -734,7 +731,7 @@ namespace std
const int_type __tmp = this->overflow();
if (traits_type::eq_int_type(__tmp, traits_type::eof()))
__ret = -1;
- }
+ }
return __ret;
}
@@ -746,8 +743,8 @@ namespace std
bool __testvalid = true;
const __codecvt_type* _M_codecvt_tmp = 0;
- if (__builtin_expect(has_facet<__codecvt_type>(__loc), true))
- _M_codecvt_tmp = &use_facet<__codecvt_type>(__loc);
+ if (__builtin_expect(has_facet<__codecvt_type>(__loc), true))
+ _M_codecvt_tmp = &use_facet<__codecvt_type>(__loc);
if (this->is_open())
{
@@ -769,7 +766,7 @@ namespace std
else
{
// External position corresponding to gptr().
- _M_ext_next = _M_ext_buf
+ _M_ext_next = _M_ext_buf
+ _M_codecvt->length(_M_state_last, _M_ext_buf, _M_ext_next,
this->gptr() - this->eback());
const streamsize __remainder = _M_ext_end - _M_ext_next;
@@ -792,7 +789,7 @@ namespace std
}
// Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
+ // which are defined via explicit instantiations elsewhere.
// NB: This syntax is a GNU extension.
#if _GLIBCXX_EXTERN_TEMPLATE
extern template class basic_filebuf<char>;
@@ -809,4 +806,4 @@ namespace std
#endif
} // namespace std
-#endif
+#endif
diff --git a/libstdc++-v3/include/bits/functexcept.h b/libstdc++-v3/include/bits/functexcept.h
index eac2c95b432..8b1d16c8e59 100644
--- a/libstdc++-v3/include/bits/functexcept.h
+++ b/libstdc++-v3/include/bits/functexcept.h
@@ -35,22 +35,22 @@
namespace std
{
- // Helper for exception objects in <except>
+ // Helper for exception objects in <except>
void
__throw_bad_exception(void);
- // Helper for exception objects in <new>
+ // Helper for exception objects in <new>
void
__throw_bad_alloc(void);
- // Helper for exception objects in <typeinfo>
+ // Helper for exception objects in <typeinfo>
void
__throw_bad_cast(void);
void
__throw_bad_typeid(void);
- // Helpers for exception objects in <stdexcept>
+ // Helpers for exception objects in <stdexcept>
void
__throw_logic_error(const char* __s);
diff --git a/libstdc++-v3/include/bits/gslice.h b/libstdc++-v3/include/bits/gslice.h
index c546028703a..78f8a67146b 100644
--- a/libstdc++-v3/include/bits/gslice.h
+++ b/libstdc++-v3/include/bits/gslice.h
@@ -1,6 +1,7 @@
// The template and inlines for the -*- C++ -*- gslice class.
-// Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004
+// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -40,55 +41,95 @@
#pragma GCC system_header
namespace std {
-
+
+ /**
+ * @brief Class defining multi-dimensional subset of an array.
+ *
+ * The slice class represents a multi-dimensional subset of an array,
+ * specified by three parameter sets: start offset, size array, and stride
+ * array. The start offset is the index of the first element of the array
+ * that is part of the subset. The size and stride array describe each
+ * dimension of the slice. Size is the number of elements in that
+ * dimension, and stride is the distance in the array between successive
+ * elements in that dimension. Each dimension's size and stride is taken
+ * to begin at an array element described by the previous dimension. The
+ * size array and stride array must be the same size.
+ *
+ * For example, if you have offset==3, stride[0]==11, size[1]==3,
+ * stride[1]==3, then slice[0,0]==array[3], slice[0,1]==array[6],
+ * slice[0,2]==array[9], slice[1,0]==array[14], slice[1,1]==array[17],
+ * slice[1,2]==array[20].
+ */
class gslice
{
public:
- gslice ();
- gslice (size_t, const valarray<size_t>&, const valarray<size_t>&);
- // XXX: the IS says the copy-ctor and copy-assignment operators are
- // synthetized by the compiler but they are just unsuitable
- // for a ref-counted semantic
- gslice(const gslice&);
- ~gslice();
-
- // XXX: See the note above.
- gslice& operator= (const gslice&);
-
- size_t start () const;
- valarray<size_t> size () const;
- valarray<size_t> stride () const;
-
+ /// Construct an empty slice.
+ gslice ();
+
+ /**
+ * @brief Construct a slice.
+ *
+ * Constructs a slice with as many dimensions as the length of the @a l
+ * and @a s arrays.
+ *
+ * @param o Offset in array of first element.
+ * @param l Array of dimension lengths.
+ * @param s Array of dimension strides between array elements.
+ */
+ gslice(size_t, const valarray<size_t>&, const valarray<size_t>&);
+
+ // XXX: the IS says the copy-ctor and copy-assignment operators are
+ // synthetized by the compiler but they are just unsuitable
+ // for a ref-counted semantic
+ /// Copy constructor.
+ gslice(const gslice&);
+
+ /// Destructor.
+ ~gslice();
+
+ // XXX: See the note above.
+ /// Assignment operator.
+ gslice& operator=(const gslice&);
+
+ /// Return array offset of first slice element.
+ size_t start() const;
+
+ /// Return array of sizes of slice dimensions.
+ valarray<size_t> size() const;
+
+ /// Return array of array strides for each dimension.
+ valarray<size_t> stride() const;
+
private:
- struct _Indexer {
- size_t _M_count;
- size_t _M_start;
- valarray<size_t> _M_size;
- valarray<size_t> _M_stride;
- valarray<size_t> _M_index;
- _Indexer(size_t, const valarray<size_t>&,
- const valarray<size_t>&);
- void _M_increment_use() { ++_M_count; }
- size_t _M_decrement_use() { return --_M_count; }
- };
-
- _Indexer* _M_index;
-
- template<typename _Tp> friend class valarray;
+ struct _Indexer {
+ size_t _M_count;
+ size_t _M_start;
+ valarray<size_t> _M_size;
+ valarray<size_t> _M_stride;
+ valarray<size_t> _M_index; // Linear array of referenced indices
+ _Indexer(size_t, const valarray<size_t>&,
+ const valarray<size_t>&);
+ void _M_increment_use() { ++_M_count; }
+ size_t _M_decrement_use() { return --_M_count; }
+ };
+
+ _Indexer* _M_index;
+
+ template<typename _Tp> friend class valarray;
};
-
+
inline size_t
gslice::start () const
{ return _M_index ? _M_index->_M_start : 0; }
-
+
inline valarray<size_t>
gslice::size () const
{ return _M_index ? _M_index->_M_size : valarray<size_t>(); }
-
+
inline valarray<size_t>
gslice::stride () const
{ return _M_index ? _M_index->_M_stride : valarray<size_t>(); }
-
+
inline gslice::gslice () : _M_index(0) {}
inline
@@ -99,7 +140,7 @@ namespace std {
inline
gslice::gslice(const gslice& __g) : _M_index(__g._M_index)
{ if (_M_index) _M_index->_M_increment_use(); }
-
+
inline
gslice::~gslice()
{ if (_M_index && _M_index->_M_decrement_use() == 0) delete _M_index; }
@@ -112,8 +153,8 @@ namespace std {
_M_index = __g._M_index;
return *this;
}
-
-
+
+
} // std::
diff --git a/libstdc++-v3/include/bits/gslice_array.h b/libstdc++-v3/include/bits/gslice_array.h
index 508eb7c9ab7..7e2e6848e88 100644
--- a/libstdc++-v3/include/bits/gslice_array.h
+++ b/libstdc++-v3/include/bits/gslice_array.h
@@ -1,6 +1,7 @@
// The template and inlines for the -*- C++ -*- gslice_array class.
-// Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004
+// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -41,23 +42,58 @@
namespace std {
+ /**
+ * @brief Reference to multi-dimensional subset of an array.
+ *
+ * A gslice_array is a reference to the actual elements of an array
+ * specified by a gslice. The way to get a gslice_array is to call
+ * operator[](gslice) on a valarray. The returned gslice_array then
+ * permits carrying operations out on the referenced subset of elements in
+ * the original valarray. For example, operator+=(valarray) will add
+ * values to the subset of elements in the underlying valarray this
+ * gslice_array refers to.
+ *
+ * @param Tp Element type.
+ */
template<typename _Tp>
class gslice_array
{
public:
typedef _Tp value_type;
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // 253. valarray helper functions are almost entirely useless
+
+ /// Copy constructor. Both slices refer to the same underlying array.
+ gslice_array(const gslice_array&);
+
+ /// Assignment operator. Assigns slice elements to corresponding
+ /// elements of @a a.
+ gslice_array& operator=(const gslice_array&);
+
+ /// Assign slice elements to corresponding elements of @a v.
void operator=(const valarray<_Tp>&) const;
+ /// Multiply slice elements by corresponding elements of @a v.
void operator*=(const valarray<_Tp>&) const;
+ /// Divide slice elements by corresponding elements of @a v.
void operator/=(const valarray<_Tp>&) const;
+ /// Modulo slice elements by corresponding elements of @a v.
void operator%=(const valarray<_Tp>&) const;
+ /// Add corresponding elements of @a v to slice elements.
void operator+=(const valarray<_Tp>&) const;
+ /// Subtract corresponding elements of @a v from slice elements.
void operator-=(const valarray<_Tp>&) const;
+ /// Logical xor slice elements with corresponding elements of @a v.
void operator^=(const valarray<_Tp>&) const;
+ /// Logical and slice elements with corresponding elements of @a v.
void operator&=(const valarray<_Tp>&) const;
+ /// Logical or slice elements with corresponding elements of @a v.
void operator|=(const valarray<_Tp>&) const;
+ /// Left shift slice elements by corresponding elements of @a v.
void operator<<=(const valarray<_Tp>&) const;
+ /// Right shift slice elements by corresponding elements of @a v.
void operator>>=(const valarray<_Tp>&) const;
+ /// Assign all slice elements to @a t.
void operator=(const _Tp&) const;
template<class _Dom>
@@ -82,42 +118,48 @@ namespace std {
void operator<<=(const _Expr<_Dom,_Tp>&) const;
template<class _Dom>
void operator>>=(const _Expr<_Dom,_Tp>&) const;
-
+
private:
_Array<_Tp> _M_array;
const valarray<size_t>& _M_index;
-
+
friend class valarray<_Tp>;
-
- gslice_array(_Array<_Tp>, const valarray<size_t>&);
- // this constructor needs to be implemented.
- gslice_array(const gslice_array&);
+ gslice_array(_Array<_Tp>, const valarray<size_t>&);
// not implemented
gslice_array();
- gslice_array& operator= (const gslice_array&);
};
template<typename _Tp>
inline
gslice_array<_Tp>::gslice_array(_Array<_Tp> __a,
const valarray<size_t>& __i)
- : _M_array(__a), _M_index(__i) {}
+ : _M_array(__a), _M_index(__i) {}
template<typename _Tp>
inline
gslice_array<_Tp>::gslice_array(const gslice_array<_Tp>& __a)
- : _M_array(__a._M_array), _M_index(__a._M_index) {}
+ : _M_array(__a._M_array), _M_index(__a._M_index) {}
+
+
+ template<typename _Tp>
+ inline gslice_array<_Tp>&
+ gslice_array<_Tp>::operator=(const gslice_array<_Tp>& __a)
+ {
+ std::__valarray_copy(_Array<_Tp>(__a._M_array),
+ _Array<size_t>(__a._M_index), _M_index.size(),
+ _M_array, _Array<size_t>(_M_index));
+ return *this;
+ }
-
template<typename _Tp>
inline void
gslice_array<_Tp>::operator=(const _Tp& __t) const
- {
+ {
std::__valarray_fill(_M_array, _Array<size_t>(_M_index),
- _M_index.size(), __t);
+ _M_index.size(), __t);
}
template<typename _Tp>
@@ -148,8 +190,8 @@ namespace std {
} \
\
template<typename _Tp> \
- template<class _Dom> \
- inline void \
+ template<class _Dom> \
+ inline void \
gslice_array<_Tp>::operator _Op##= (const _Expr<_Dom, _Tp>& __e) const\
{ \
_Array_augmented_##_Name(_M_array, _Array<size_t>(_M_index), __e,\
@@ -157,9 +199,9 @@ namespace std {
}
_DEFINE_VALARRAY_OPERATOR(*, __multiplies)
-_DEFINE_VALARRAY_OPERATOR(/, __divides)
+_DEFINE_VALARRAY_OPERATOR(/, __divides)
_DEFINE_VALARRAY_OPERATOR(%, __modulus)
-_DEFINE_VALARRAY_OPERATOR(+, __plus)
+_DEFINE_VALARRAY_OPERATOR(+, __plus)
_DEFINE_VALARRAY_OPERATOR(-, __minus)
_DEFINE_VALARRAY_OPERATOR(^, __bitwise_xor)
_DEFINE_VALARRAY_OPERATOR(&, __bitwise_and)
diff --git a/libstdc++-v3/include/bits/indirect_array.h b/libstdc++-v3/include/bits/indirect_array.h
index cb81aabf77f..912f522450d 100644
--- a/libstdc++-v3/include/bits/indirect_array.h
+++ b/libstdc++-v3/include/bits/indirect_array.h
@@ -1,6 +1,6 @@
// The template and inlines for the -*- C++ -*- indirect_array class.
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -42,77 +42,111 @@
namespace std
{
+ /**
+ * @brief Reference to arbitrary subset of an array.
+ *
+ * An indirect_array is a reference to the actual elements of an array
+ * specified by an ordered array of indices. The way to get an indirect_array is to
+ * call operator[](valarray<size_t>) on a valarray. The returned
+ * indirect_array then permits carrying operations out on the referenced
+ * subset of elements in the original valarray.
+ *
+ * For example, if an indirect_array is obtained using the array (4,2,0) as
+ * an argument, and then assigned to an array containing (1,2,3), then the
+ * underlying array will have array[0]==3, array[2]==2, and array[4]==1.
+ *
+ * @param Tp Element type.
+ */
template <class _Tp>
- class indirect_array
- {
- public:
- typedef _Tp value_type;
-
- // XXX: This is a proposed resolution for DR-253.
- indirect_array& operator=(const indirect_array&);
-
- void operator=(const valarray<_Tp>&) const;
- void operator*=(const valarray<_Tp>&) const;
- void operator/=(const valarray<_Tp>&) const;
- void operator%=(const valarray<_Tp>&) const;
- void operator+=(const valarray<_Tp>&) const;
- void operator-=(const valarray<_Tp>&) const;
- void operator^=(const valarray<_Tp>&) const;
- void operator&=(const valarray<_Tp>&) const;
- void operator|=(const valarray<_Tp>&) const;
- void operator<<=(const valarray<_Tp>&) const;
- void operator>>=(const valarray<_Tp>&) const;
- void operator= (const _Tp&) const;
- // ~indirect_array();
-
- template<class _Dom>
- void operator=(const _Expr<_Dom, _Tp>&) const;
- template<class _Dom>
- void operator*=(const _Expr<_Dom, _Tp>&) const;
- template<class _Dom>
- void operator/=(const _Expr<_Dom, _Tp>&) const;
- template<class _Dom>
- void operator%=(const _Expr<_Dom, _Tp>&) const;
- template<class _Dom>
- void operator+=(const _Expr<_Dom, _Tp>&) const;
- template<class _Dom>
- void operator-=(const _Expr<_Dom, _Tp>&) const;
- template<class _Dom>
- void operator^=(const _Expr<_Dom, _Tp>&) const;
- template<class _Dom>
- void operator&=(const _Expr<_Dom, _Tp>&) const;
- template<class _Dom>
- void operator|=(const _Expr<_Dom, _Tp>&) const;
- template<class _Dom>
- void operator<<=(const _Expr<_Dom, _Tp>&) const;
- template<class _Dom>
- void operator>>=(const _Expr<_Dom, _Tp>&) const;
-
- private:
- indirect_array(const indirect_array&);
- indirect_array(_Array<_Tp>, size_t, _Array<size_t>);
-
- friend class valarray<_Tp>;
- friend class gslice_array<_Tp>;
-
- const size_t _M_sz;
- const _Array<size_t> _M_index;
- const _Array<_Tp> _M_array;
-
- // not implemented
- indirect_array();
- };
+ class indirect_array
+ {
+ public:
+ typedef _Tp value_type;
+
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // 253. valarray helper functions are almost entirely useless
+
+ /// Copy constructor. Both slices refer to the same underlying array.
+ indirect_array(const indirect_array&);
+
+ /// Assignment operator. Assigns elements to corresponding elements
+ /// of @a a.
+ indirect_array& operator=(const indirect_array&);
+
+ /// Assign slice elements to corresponding elements of @a v.
+ void operator=(const valarray<_Tp>&) const;
+ /// Multiply slice elements by corresponding elements of @a v.
+ void operator*=(const valarray<_Tp>&) const;
+ /// Divide slice elements by corresponding elements of @a v.
+ void operator/=(const valarray<_Tp>&) const;
+ /// Modulo slice elements by corresponding elements of @a v.
+ void operator%=(const valarray<_Tp>&) const;
+ /// Add corresponding elements of @a v to slice elements.
+ void operator+=(const valarray<_Tp>&) const;
+ /// Subtract corresponding elements of @a v from slice elements.
+ void operator-=(const valarray<_Tp>&) const;
+ /// Logical xor slice elements with corresponding elements of @a v.
+ void operator^=(const valarray<_Tp>&) const;
+ /// Logical and slice elements with corresponding elements of @a v.
+ void operator&=(const valarray<_Tp>&) const;
+ /// Logical or slice elements with corresponding elements of @a v.
+ void operator|=(const valarray<_Tp>&) const;
+ /// Left shift slice elements by corresponding elements of @a v.
+ void operator<<=(const valarray<_Tp>&) const;
+ /// Right shift slice elements by corresponding elements of @a v.
+ void operator>>=(const valarray<_Tp>&) const;
+ /// Assign all slice elements to @a t.
+ void operator= (const _Tp&) const;
+ // ~indirect_array();
+
+ template<class _Dom>
+ void operator=(const _Expr<_Dom, _Tp>&) const;
+ template<class _Dom>
+ void operator*=(const _Expr<_Dom, _Tp>&) const;
+ template<class _Dom>
+ void operator/=(const _Expr<_Dom, _Tp>&) const;
+ template<class _Dom>
+ void operator%=(const _Expr<_Dom, _Tp>&) const;
+ template<class _Dom>
+ void operator+=(const _Expr<_Dom, _Tp>&) const;
+ template<class _Dom>
+ void operator-=(const _Expr<_Dom, _Tp>&) const;
+ template<class _Dom>
+ void operator^=(const _Expr<_Dom, _Tp>&) const;
+ template<class _Dom>
+ void operator&=(const _Expr<_Dom, _Tp>&) const;
+ template<class _Dom>
+ void operator|=(const _Expr<_Dom, _Tp>&) const;
+ template<class _Dom>
+ void operator<<=(const _Expr<_Dom, _Tp>&) const;
+ template<class _Dom>
+ void operator>>=(const _Expr<_Dom, _Tp>&) const;
+
+ private:
+ /// Copy constructor. Both slices refer to the same underlying array.
+ indirect_array(_Array<_Tp>, size_t, _Array<size_t>);
+
+ friend class valarray<_Tp>;
+ friend class gslice_array<_Tp>;
+
+ const size_t _M_sz;
+ const _Array<size_t> _M_index;
+ const _Array<_Tp> _M_array;
+
+ // not implemented
+ indirect_array();
+ };
template<typename _Tp>
- inline
+ inline
indirect_array<_Tp>::indirect_array(const indirect_array<_Tp>& __a)
- : _M_sz(__a._M_sz), _M_index(__a._M_index), _M_array(__a._M_array) {}
+ : _M_sz(__a._M_sz), _M_index(__a._M_index), _M_array(__a._M_array) {}
template<typename _Tp>
inline
- indirect_array<_Tp>::indirect_array(_Array<_Tp> __a, size_t __s,
+ indirect_array<_Tp>::indirect_array(_Array<_Tp> __a, size_t __s,
_Array<size_t> __i)
- : _M_sz(__s), _M_index(__i), _M_array(__a) {}
+ : _M_sz(__s), _M_index(__i), _M_array(__a) {}
template<typename _Tp>
inline indirect_array<_Tp>&
diff --git a/libstdc++-v3/include/bits/ios_base.h b/libstdc++-v3/include/bits/ios_base.h
index 587bda4b092..694785df1f5 100644
--- a/libstdc++-v3/include/bits/ios_base.h
+++ b/libstdc++-v3/include/bits/ios_base.h
@@ -1,6 +1,6 @@
// Iostreams base classes -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -54,93 +54,93 @@ namespace std
// expressions involving them are no longer compile-time constants.
enum _Ios_Fmtflags { _S_ios_fmtflags_end = 1L << 16 };
- inline _Ios_Fmtflags
+ inline _Ios_Fmtflags
operator&(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
{ return _Ios_Fmtflags(static_cast<int>(__a) & static_cast<int>(__b)); }
- inline _Ios_Fmtflags
+ inline _Ios_Fmtflags
operator|(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
{ return _Ios_Fmtflags(static_cast<int>(__a) | static_cast<int>(__b)); }
- inline _Ios_Fmtflags
+ inline _Ios_Fmtflags
operator^(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
{ return _Ios_Fmtflags(static_cast<int>(__a) ^ static_cast<int>(__b)); }
- inline _Ios_Fmtflags
+ inline _Ios_Fmtflags
operator|=(_Ios_Fmtflags& __a, _Ios_Fmtflags __b)
{ return __a = __a | __b; }
- inline _Ios_Fmtflags
+ inline _Ios_Fmtflags
operator&=(_Ios_Fmtflags& __a, _Ios_Fmtflags __b)
{ return __a = __a & __b; }
- inline _Ios_Fmtflags
+ inline _Ios_Fmtflags
operator^=(_Ios_Fmtflags& __a, _Ios_Fmtflags __b)
{ return __a = __a ^ __b; }
- inline _Ios_Fmtflags
+ inline _Ios_Fmtflags
operator~(_Ios_Fmtflags __a)
{ return _Ios_Fmtflags(~static_cast<int>(__a)); }
enum _Ios_Openmode { _S_ios_openmode_end = 1L << 16 };
- inline _Ios_Openmode
+ inline _Ios_Openmode
operator&(_Ios_Openmode __a, _Ios_Openmode __b)
{ return _Ios_Openmode(static_cast<int>(__a) & static_cast<int>(__b)); }
- inline _Ios_Openmode
+ inline _Ios_Openmode
operator|(_Ios_Openmode __a, _Ios_Openmode __b)
{ return _Ios_Openmode(static_cast<int>(__a) | static_cast<int>(__b)); }
- inline _Ios_Openmode
+ inline _Ios_Openmode
operator^(_Ios_Openmode __a, _Ios_Openmode __b)
{ return _Ios_Openmode(static_cast<int>(__a) ^ static_cast<int>(__b)); }
- inline _Ios_Openmode
+ inline _Ios_Openmode
operator|=(_Ios_Openmode& __a, _Ios_Openmode __b)
{ return __a = __a | __b; }
- inline _Ios_Openmode
+ inline _Ios_Openmode
operator&=(_Ios_Openmode& __a, _Ios_Openmode __b)
{ return __a = __a & __b; }
- inline _Ios_Openmode
+ inline _Ios_Openmode
operator^=(_Ios_Openmode& __a, _Ios_Openmode __b)
{ return __a = __a ^ __b; }
- inline _Ios_Openmode
+ inline _Ios_Openmode
operator~(_Ios_Openmode __a)
{ return _Ios_Openmode(~static_cast<int>(__a)); }
enum _Ios_Iostate { _S_ios_iostate_end = 1L << 16 };
- inline _Ios_Iostate
+ inline _Ios_Iostate
operator&(_Ios_Iostate __a, _Ios_Iostate __b)
{ return _Ios_Iostate(static_cast<int>(__a) & static_cast<int>(__b)); }
- inline _Ios_Iostate
+ inline _Ios_Iostate
operator|(_Ios_Iostate __a, _Ios_Iostate __b)
{ return _Ios_Iostate(static_cast<int>(__a) | static_cast<int>(__b)); }
- inline _Ios_Iostate
+ inline _Ios_Iostate
operator^(_Ios_Iostate __a, _Ios_Iostate __b)
{ return _Ios_Iostate(static_cast<int>(__a) ^ static_cast<int>(__b)); }
- inline _Ios_Iostate
+ inline _Ios_Iostate
operator|=(_Ios_Iostate& __a, _Ios_Iostate __b)
{ return __a = __a | __b; }
- inline _Ios_Iostate
+ inline _Ios_Iostate
operator&=(_Ios_Iostate& __a, _Ios_Iostate __b)
{ return __a = __a & __b; }
- inline _Ios_Iostate
+ inline _Ios_Iostate
operator^=(_Ios_Iostate& __a, _Ios_Iostate __b)
{ return __a = __a ^ __b; }
- inline _Ios_Iostate
+ inline _Ios_Iostate
operator~(_Ios_Iostate __a)
{ return _Ios_Iostate(~static_cast<int>(__a)); }
@@ -158,7 +158,7 @@ namespace std
class ios_base
{
public:
-
+
// 27.4.2.1.1 Class ios_base::failure
/// These are thrown to indicate problems. Doc me.
class failure : public exception
@@ -166,17 +166,17 @@ namespace std
public:
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 48. Use of non-existent exception constructor
- explicit
+ explicit
failure(const string& __str) throw();
// This declaration is not useless:
// http://gcc.gnu.org/onlinedocs/gcc-3.0.2/gcc_6.html#SEC118
- virtual
+ virtual
~failure() throw();
virtual const char*
what() const throw();
-
+
private:
string _M_msg;
};
@@ -286,18 +286,18 @@ namespace std
/// Indicates a loss of integrity in an input or output sequence (such
/// as an irrecoverable read error from a file).
- static const iostate badbit = iostate(__ios_flags::_S_badbit);
+ static const iostate badbit = iostate(__ios_flags::_S_badbit);
/// Indicates that an input operation reached the end of an input sequence.
- static const iostate eofbit = iostate(__ios_flags::_S_eofbit);
+ static const iostate eofbit = iostate(__ios_flags::_S_eofbit);
/// Indicates that an input operation failed to read the expected
/// characters, or that an output operation failed to generate the
/// desired characters.
- static const iostate failbit = iostate(__ios_flags::_S_failbit);
+ static const iostate failbit = iostate(__ios_flags::_S_failbit);
/// Indicates all is well.
- static const iostate goodbit = iostate(0);
+ static const iostate goodbit = iostate(0);
// 27.4.2.1.4 Type ios_base::openmode
/**
@@ -316,25 +316,25 @@ namespace std
typedef _Ios_Openmode openmode;
/// Seek to end before each write.
- static const openmode app = openmode(__ios_flags::_S_app);
+ static const openmode app = openmode(__ios_flags::_S_app);
/// Open and seek to end immediately after opening.
- static const openmode ate = openmode(__ios_flags::_S_ate);
+ static const openmode ate = openmode(__ios_flags::_S_ate);
/// Perform input and output in binary mode (as opposed to text mode).
/// This is probably not what you think it is; see
/// http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#3 and
/// http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#7 for more.
- static const openmode binary = openmode(__ios_flags::_S_bin);
+ static const openmode binary = openmode(__ios_flags::_S_bin);
/// Open for input. Default for @c ifstream and fstream.
- static const openmode in = openmode(__ios_flags::_S_in);
+ static const openmode in = openmode(__ios_flags::_S_in);
/// Open for output. Default for @c ofstream and fstream.
- static const openmode out = openmode(__ios_flags::_S_out);
+ static const openmode out = openmode(__ios_flags::_S_out);
/// Open for input. Default for @c ofstream.
- static const openmode trunc = openmode(__ios_flags::_S_trunc);
+ static const openmode trunc = openmode(__ios_flags::_S_trunc);
// 27.4.2.1.5 Type ios_base::seekdir
/**
@@ -349,20 +349,20 @@ namespace std
typedef _Ios_Seekdir seekdir;
/// Request a seek relative to the beginning of the stream.
- static const seekdir beg = seekdir(0);
+ static const seekdir beg = seekdir(0);
/// Request a seek relative to the current position within the sequence.
- static const seekdir cur = seekdir(SEEK_CUR);
+ static const seekdir cur = seekdir(SEEK_CUR);
/// Request a seek relative to the current end of the sequence.
- static const seekdir end = seekdir(SEEK_END);
+ static const seekdir end = seekdir(SEEK_END);
#ifdef _GLIBCXX_DEPRECATED
// Annex D.6
typedef int io_state;
typedef int open_mode;
typedef int seek_dir;
-
+
typedef std::streampos streampos;
typedef std::streamoff streamoff;
#endif
@@ -403,7 +403,7 @@ namespace std
* function are allowed. If there are multiple callbacks, they are
* invoked in the order they were registered.
*/
- void
+ void
register_callback(event_callback __fn, int __index);
protected:
@@ -413,11 +413,11 @@ namespace std
* ios_base data members (doc me)
* @endif
*/
- streamsize _M_precision;
- streamsize _M_width;
- fmtflags _M_flags;
- iostate _M_exception;
- iostate _M_streambuf_state;
+ streamsize _M_precision;
+ streamsize _M_width;
+ fmtflags _M_flags;
+ iostate _M_exception;
+ iostate _M_streambuf_state;
//@}
// 27.4.2.6 Members for callbacks
@@ -425,58 +425,59 @@ namespace std
struct _Callback_list
{
// Data Members
- _Callback_list* _M_next;
- ios_base::event_callback _M_fn;
- int _M_index;
+ _Callback_list* _M_next;
+ ios_base::event_callback _M_fn;
+ int _M_index;
_Atomic_word _M_refcount; // 0 means one reference.
-
- _Callback_list(ios_base::event_callback __fn, int __index,
+
+ _Callback_list(ios_base::event_callback __fn, int __index,
_Callback_list* __cb)
: _M_next(__cb), _M_fn(__fn), _M_index(__index), _M_refcount(0) { }
-
- void
- _M_add_reference() { __atomic_add(&_M_refcount, 1); }
+
+ void
+ _M_add_reference() { __gnu_cxx::__atomic_add(&_M_refcount, 1); }
// 0 => OK to delete.
- int
- _M_remove_reference() { return __exchange_and_add(&_M_refcount, -1); }
+ int
+ _M_remove_reference()
+ { return __gnu_cxx::__exchange_and_add(&_M_refcount, -1); }
};
- _Callback_list* _M_callbacks;
+ _Callback_list* _M_callbacks;
- void
+ void
_M_call_callbacks(event __ev) throw();
- void
+ void
_M_dispose_callbacks(void);
// 27.4.2.5 Members for iword/pword storage
- struct _Words
- {
- void* _M_pword;
- long _M_iword;
+ struct _Words
+ {
+ void* _M_pword;
+ long _M_iword;
_Words() : _M_pword(0), _M_iword(0) { }
};
// Only for failed iword/pword calls.
- _Words _M_word_zero;
+ _Words _M_word_zero;
// Guaranteed storage.
// The first 5 iword and pword slots are reserved for internal use.
- static const int _S_local_word_size = 8;
- _Words _M_local_word[_S_local_word_size];
+ static const int _S_local_word_size = 8;
+ _Words _M_local_word[_S_local_word_size];
// Allocated storage.
- int _M_word_size;
- _Words* _M_word;
-
- _Words&
- _M_grow_words(int __index);
+ int _M_word_size;
+ _Words* _M_word;
+
+ _Words&
+ _M_grow_words(int __index, bool __iword);
// Members for locale and locale caching.
- locale _M_ios_locale;
+ locale _M_ios_locale;
- void
+ void
_M_init();
public:
@@ -484,14 +485,14 @@ namespace std
// 27.4.2.1.6 Class ios_base::Init
// Used to initialize standard streams. In theory, g++ could use
// -finit-priority to order this stuff correctly without going
- // through these machinations.
- class Init
+ // through these machinations.
+ class Init
{
friend class ios_base;
public:
Init();
~Init();
-
+
private:
static _Atomic_word _S_refcount;
static bool _S_synced_with_stdio;
@@ -502,7 +503,7 @@ namespace std
* @brief Access to format flags.
* @return The format control flags for both input and output.
*/
- inline fmtflags
+ inline fmtflags
flags() const { return _M_flags; }
/**
@@ -512,12 +513,12 @@ namespace std
*
* This function overwrites all the format flags with @a fmtfl.
*/
- inline fmtflags
+ inline fmtflags
flags(fmtflags __fmtfl)
- {
- fmtflags __old = _M_flags;
- _M_flags = __fmtfl;
- return __old;
+ {
+ fmtflags __old = _M_flags;
+ _M_flags = __fmtfl;
+ return __old;
}
/**
@@ -528,12 +529,12 @@ namespace std
* This function sets additional flags in format control. Flags that
* were previously set remain set.
*/
- inline fmtflags
+ inline fmtflags
setf(fmtflags __fmtfl)
- {
- fmtflags __old = _M_flags;
- _M_flags |= __fmtfl;
- return __old;
+ {
+ fmtflags __old = _M_flags;
+ _M_flags |= __fmtfl;
+ return __old;
}
/**
@@ -545,7 +546,7 @@ namespace std
* This function clears @a mask in the format flags, then sets
* @a fmtfl @c & @a mask. An example mask is @c ios_base::adjustfield.
*/
- inline fmtflags
+ inline fmtflags
setf(fmtflags __fmtfl, fmtflags __mask)
{
fmtflags __old = _M_flags;
@@ -560,7 +561,7 @@ namespace std
*
* This function clears @a mask in the format flags.
*/
- inline void
+ inline void
unsetf(fmtflags __mask) { _M_flags &= ~__mask; }
/**
@@ -572,7 +573,7 @@ namespace std
* DR 189.
* @endif
*/
- inline streamsize
+ inline streamsize
precision() const { return _M_precision; }
/**
@@ -580,12 +581,12 @@ namespace std
* @param prec The new precision value.
* @return The previous value of precision().
*/
- inline streamsize
+ inline streamsize
precision(streamsize __prec)
- {
- streamsize __old = _M_precision;
- _M_precision = __prec;
- return __old;
+ {
+ streamsize __old = _M_precision;
+ _M_precision = __prec;
+ return __old;
}
/**
@@ -594,7 +595,7 @@ namespace std
*
* "Minimum field width" refers to the number of characters.
*/
- inline streamsize
+ inline streamsize
width() const { return _M_width; }
/**
@@ -602,12 +603,12 @@ namespace std
* @param wide The new width value.
* @return The previous value of width().
*/
- inline streamsize
+ inline streamsize
width(streamsize __wide)
- {
- streamsize __old = _M_width;
- _M_width = __wide;
- return __old;
+ {
+ streamsize __old = _M_width;
+ _M_width = __wide;
+ return __old;
}
// [27.4.2.4] ios_base static members
@@ -621,7 +622,7 @@ namespace std
* cout). User-declared streams are unaffected. See
* http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#8 for more.
*/
- static bool
+ static bool
sync_with_stdio(bool __sync = true);
// [27.4.2.3] ios_base locale functions
@@ -633,7 +634,7 @@ namespace std
* Sets the new locale for this stream, and then invokes each callback
* with imbue_event.
*/
- locale
+ locale
imbue(const locale& __loc);
/**
@@ -644,7 +645,7 @@ namespace std
* returns @c loc. Otherwise, it returns a copy of @c std::locale(),
* the global C++ locale.
*/
- inline locale
+ inline locale
getloc() const { return _M_ios_locale; }
/**
@@ -654,7 +655,7 @@ namespace std
* Like getloc above, but returns a reference instead of
* generating a copy.
*/
- inline const locale&
+ inline const locale&
_M_getloc() const { return _M_ios_locale; }
// [27.4.2.5] ios_base storage functions
@@ -672,7 +673,7 @@ namespace std
* returned on each invocation. xalloc is guaranteed to return an index
* that is safe to use in the iword and pword arrays.
*/
- static int
+ static int
xalloc() throw();
/**
@@ -688,11 +689,11 @@ namespace std
* obtain an index that is safe to use. Also note that since the array
* can grow dynamically, it is not safe to hold onto the reference.
*/
- inline long&
+ inline long&
iword(int __ix)
{
- _Words& __word = (__ix < _M_word_size)
- ? _M_word[__ix] : _M_grow_words(__ix);
+ _Words& __word = (__ix < _M_word_size)
+ ? _M_word[__ix] : _M_grow_words(__ix, true);
return __word._M_iword;
}
@@ -709,11 +710,11 @@ namespace std
* obtain an index that is safe to use. Also note that since the array
* can grow dynamically, it is not safe to hold onto the reference.
*/
- inline void*&
+ inline void*&
pword(int __ix)
{
- _Words& __word = (__ix < _M_word_size)
- ? _M_word[__ix] : _M_grow_words(__ix);
+ _Words& __word = (__ix < _M_word_size)
+ ? _M_word[__ix] : _M_grow_words(__ix, false);
return __word._M_pword;
}
@@ -736,13 +737,13 @@ namespace std
private:
ios_base(const ios_base&);
- ios_base&
+ ios_base&
operator=(const ios_base&);
};
-
+
// [27.4.5.1] fmtflags manipulators
/// Calls base.setf(ios_base::boolalpha).
- inline ios_base&
+ inline ios_base&
boolalpha(ios_base& __base)
{
__base.setf(ios_base::boolalpha);
@@ -750,7 +751,7 @@ namespace std
}
/// Calls base.unsetf(ios_base::boolalpha).
- inline ios_base&
+ inline ios_base&
noboolalpha(ios_base& __base)
{
__base.unsetf(ios_base::boolalpha);
@@ -758,7 +759,7 @@ namespace std
}
/// Calls base.setf(ios_base::showbase).
- inline ios_base&
+ inline ios_base&
showbase(ios_base& __base)
{
__base.setf(ios_base::showbase);
@@ -766,7 +767,7 @@ namespace std
}
/// Calls base.unsetf(ios_base::showbase).
- inline ios_base&
+ inline ios_base&
noshowbase(ios_base& __base)
{
__base.unsetf(ios_base::showbase);
@@ -774,7 +775,7 @@ namespace std
}
/// Calls base.setf(ios_base::showpoint).
- inline ios_base&
+ inline ios_base&
showpoint(ios_base& __base)
{
__base.setf(ios_base::showpoint);
@@ -782,7 +783,7 @@ namespace std
}
/// Calls base.unsetf(ios_base::showpoint).
- inline ios_base&
+ inline ios_base&
noshowpoint(ios_base& __base)
{
__base.unsetf(ios_base::showpoint);
@@ -790,7 +791,7 @@ namespace std
}
/// Calls base.setf(ios_base::showpos).
- inline ios_base&
+ inline ios_base&
showpos(ios_base& __base)
{
__base.setf(ios_base::showpos);
@@ -798,7 +799,7 @@ namespace std
}
/// Calls base.unsetf(ios_base::showpos).
- inline ios_base&
+ inline ios_base&
noshowpos(ios_base& __base)
{
__base.unsetf(ios_base::showpos);
@@ -806,15 +807,15 @@ namespace std
}
/// Calls base.setf(ios_base::skipws).
- inline ios_base&
+ inline ios_base&
skipws(ios_base& __base)
{
__base.setf(ios_base::skipws);
return __base;
}
-
+
/// Calls base.unsetf(ios_base::skipws).
- inline ios_base&
+ inline ios_base&
noskipws(ios_base& __base)
{
__base.unsetf(ios_base::skipws);
@@ -822,7 +823,7 @@ namespace std
}
/// Calls base.setf(ios_base::uppercase).
- inline ios_base&
+ inline ios_base&
uppercase(ios_base& __base)
{
__base.setf(ios_base::uppercase);
@@ -830,7 +831,7 @@ namespace std
}
/// Calls base.unsetf(ios_base::uppercase).
- inline ios_base&
+ inline ios_base&
nouppercase(ios_base& __base)
{
__base.unsetf(ios_base::uppercase);
@@ -838,57 +839,57 @@ namespace std
}
/// Calls base.setf(ios_base::unitbuf).
- inline ios_base&
+ inline ios_base&
unitbuf(ios_base& __base)
{
- __base.setf(ios_base::unitbuf);
+ __base.setf(ios_base::unitbuf);
return __base;
}
/// Calls base.unsetf(ios_base::unitbuf).
- inline ios_base&
+ inline ios_base&
nounitbuf(ios_base& __base)
{
__base.unsetf(ios_base::unitbuf);
- return __base;
+ return __base;
}
// [27.4.5.2] adjustfield anipulators
/// Calls base.setf(ios_base::internal, ios_base::adjustfield).
- inline ios_base&
+ inline ios_base&
internal(ios_base& __base)
{
__base.setf(ios_base::internal, ios_base::adjustfield);
- return __base;
+ return __base;
}
/// Calls base.setf(ios_base::left, ios_base::adjustfield).
- inline ios_base&
+ inline ios_base&
left(ios_base& __base)
{
__base.setf(ios_base::left, ios_base::adjustfield);
return __base;
}
-
+
/// Calls base.setf(ios_base::right, ios_base::adjustfield).
- inline ios_base&
+ inline ios_base&
right(ios_base& __base)
{
__base.setf(ios_base::right, ios_base::adjustfield);
return __base;
}
-
+
// [27.4.5.3] basefield anipulators
/// Calls base.setf(ios_base::dec, ios_base::basefield).
- inline ios_base&
+ inline ios_base&
dec(ios_base& __base)
{
__base.setf(ios_base::dec, ios_base::basefield);
return __base;
}
-
+
/// Calls base.setf(ios_base::hex, ios_base::basefield).
- inline ios_base&
+ inline ios_base&
hex(ios_base& __base)
{
__base.setf(ios_base::hex, ios_base::basefield);
@@ -896,16 +897,16 @@ namespace std
}
/// Calls base.setf(ios_base::oct, ios_base::basefield).
- inline ios_base&
+ inline ios_base&
oct(ios_base& __base)
{
__base.setf(ios_base::oct, ios_base::basefield);
return __base;
}
-
+
// [27.4.5.4] floatfield anipulators
/// Calls base.setf(ios_base::fixed, ios_base::floatfield).
- inline ios_base&
+ inline ios_base&
fixed(ios_base& __base)
{
__base.setf(ios_base::fixed, ios_base::floatfield);
@@ -913,7 +914,7 @@ namespace std
}
/// Calls base.setf(ios_base::scientific, ios_base::floatfield).
- inline ios_base&
+ inline ios_base&
scientific(ios_base& __base)
{
__base.setf(ios_base::scientific, ios_base::floatfield);
diff --git a/libstdc++-v3/include/bits/istream.tcc b/libstdc++-v3/include/bits/istream.tcc
index abe795031df..3edb8cdeea1 100644
--- a/libstdc++-v3/include/bits/istream.tcc
+++ b/libstdc++-v3/include/bits/istream.tcc
@@ -40,26 +40,26 @@
#include <locale>
#include <ostream> // For flush()
-namespace std
+namespace std
{
template<typename _CharT, typename _Traits>
basic_istream<_CharT, _Traits>::sentry::
sentry(basic_istream<_CharT, _Traits>& __in, bool __noskipws)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- if (__in.good())
+ if (__in.good())
{
if (__in.tie())
__in.tie()->flush();
if (!__noskipws && (__in.flags() & ios_base::skipws))
- {
+ {
const __int_type __eof = traits_type::eof();
__streambuf_type* __sb = __in.rdbuf();
__int_type __c = __sb->sgetc();
const __ctype_type& __ct = __check_facet(__in._M_ctype);
while (!traits_type::eq_int_type(__c, __eof)
- && __ct.is(ctype_base::space,
+ && __ct.is(ctype_base::space,
traits_type::to_char_type(__c)))
__c = __sb->snextc();
@@ -82,39 +82,39 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(__istream_type& (*__pf)(__istream_type&))
{ return __pf(*this); }
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(__ios_type& (*__pf)(__ios_type&))
{
__pf(*this);
return *this;
}
-
+
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(ios_base& (*__pf)(ios_base&))
{
__pf(*this);
return *this;
}
-
+
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(bool& __n)
{
sentry __cerb(*this, false);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_get_type& __ng = __check_facet(this->_M_num_get);
__ng.get(*this, 0, *this, __err, __n);
@@ -128,15 +128,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(short& __n)
{
sentry __cerb(*this, false);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
long __l;
const __num_get_type& __ng = __check_facet(this->_M_num_get);
@@ -144,7 +144,7 @@ namespace std
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 118. basic_istream uses nonexistent num_get member functions.
if (!(__err & ios_base::failbit)
- && (numeric_limits<short>::min() <= __l
+ && (numeric_limits<short>::min() <= __l
&& __l <= numeric_limits<short>::max()))
__n = __l;
else
@@ -159,15 +159,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(unsigned short& __n)
{
sentry __cerb(*this, false);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_get_type& __ng = __check_facet(this->_M_num_get);
__ng.get(*this, 0, *this, __err, __n);
@@ -181,15 +181,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(int& __n)
{
sentry __cerb(*this, false);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
long __l;
const __num_get_type& __ng = __check_facet(this->_M_num_get);
@@ -197,7 +197,7 @@ namespace std
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 118. basic_istream uses nonexistent num_get member functions.
if (!(__err & ios_base::failbit)
- && (numeric_limits<int>::min() <= __l
+ && (numeric_limits<int>::min() <= __l
&& __l <= numeric_limits<int>::max()))
__n = __l;
else
@@ -212,15 +212,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(unsigned int& __n)
{
sentry __cerb(*this, false);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_get_type& __ng = __check_facet(this->_M_num_get);
__ng.get(*this, 0, *this, __err, __n);
@@ -234,15 +234,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(long& __n)
{
sentry __cerb(*this, false);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_get_type& __ng = __check_facet(this->_M_num_get);
__ng.get(*this, 0, *this, __err, __n);
@@ -256,15 +256,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(unsigned long& __n)
{
sentry __cerb(*this, false);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_get_type& __ng = __check_facet(this->_M_num_get);
__ng.get(*this, 0, *this, __err, __n);
@@ -279,15 +279,15 @@ namespace std
#ifdef _GLIBCXX_USE_LONG_LONG
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(long long& __n)
{
sentry __cerb(*this, false);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_get_type& __ng = __check_facet(this->_M_num_get);
__ng.get(*this, 0, *this, __err, __n);
@@ -301,15 +301,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(unsigned long long& __n)
{
sentry __cerb(*this, false);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_get_type& __ng = __check_facet(this->_M_num_get);
__ng.get(*this, 0, *this, __err, __n);
@@ -324,15 +324,15 @@ namespace std
#endif
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(float& __n)
{
sentry __cerb(*this, false);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_get_type& __ng = __check_facet(this->_M_num_get);
__ng.get(*this, 0, *this, __err, __n);
@@ -346,15 +346,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(double& __n)
{
sentry __cerb(*this, false);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_get_type& __ng = __check_facet(this->_M_num_get);
__ng.get(*this, 0, *this, __err, __n);
@@ -368,15 +368,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(long double& __n)
{
sentry __cerb(*this, false);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_get_type& __ng = __check_facet(this->_M_num_get);
__ng.get(*this, 0, *this, __err, __n);
@@ -390,15 +390,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(void*& __n)
{
sentry __cerb(*this, false);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_get_type& __ng = __check_facet(this->_M_num_get);
__ng.get(*this, 0, *this, __err, __n);
@@ -412,7 +412,7 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_istream<_CharT, _Traits>&
+ basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
operator>>(__streambuf_type* __sbout)
{
@@ -445,9 +445,9 @@ namespace std
_M_gcount = 0;
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
sentry __cerb(*this, true);
- if (__cerb)
+ if (__cerb)
{
- try
+ try
{
__c = this->rdbuf()->sbumpc();
// 27.6.1.1 paragraph 3
@@ -474,9 +474,9 @@ namespace std
_M_gcount = 0;
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
sentry __cerb(*this, true);
- if (__cerb)
+ if (__cerb)
{
- try
+ try
{
int_type __cb = this->rdbuf()->sbumpc();
// 27.6.1.1 paragraph 3
@@ -506,16 +506,16 @@ namespace std
_M_gcount = 0;
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
sentry __cerb(*this, true);
- if (__cerb)
+ if (__cerb)
{
- try
+ try
{
const int_type __idelim = traits_type::to_int_type(__delim);
const int_type __eof = traits_type::eof();
__streambuf_type* __sb = this->rdbuf();
- int_type __c = __sb->sgetc();
-
- while (_M_gcount + 1 < __n
+ int_type __c = __sb->sgetc();
+
+ while (_M_gcount + 1 < __n
&& !traits_type::eq_int_type(__c, __eof)
&& !traits_type::eq_int_type(__c, __idelim))
{
@@ -545,18 +545,18 @@ namespace std
_M_gcount = 0;
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
sentry __cerb(*this, true);
- if (__cerb)
+ if (__cerb)
{
- try
+ try
{
const int_type __idelim = traits_type::to_int_type(__delim);
- const int_type __eof = traits_type::eof();
+ const int_type __eof = traits_type::eof();
__streambuf_type* __this_sb = this->rdbuf();
int_type __c = __this_sb->sgetc();
char_type __c2 = traits_type::to_char_type(__c);
-
- while (!traits_type::eq_int_type(__c, __eof)
- && !traits_type::eq_int_type(__c, __idelim)
+
+ while (!traits_type::eq_int_type(__c, __eof)
+ && !traits_type::eq_int_type(__c, __idelim)
&& !traits_type::eq_int_type(__sb.sputc(__c2), __eof))
{
++_M_gcount;
@@ -584,16 +584,16 @@ namespace std
_M_gcount = 0;
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
sentry __cerb(*this, true);
- if (__cerb)
+ if (__cerb)
{
- try
+ try
{
const int_type __idelim = traits_type::to_int_type(__delim);
const int_type __eof = traits_type::eof();
__streambuf_type* __sb = this->rdbuf();
int_type __c = __sb->sgetc();
-
- while (_M_gcount + 1 < __n
+
+ while (_M_gcount + 1 < __n
&& !traits_type::eq_int_type(__c, __eof)
&& !traits_type::eq_int_type(__c, __idelim))
{
@@ -624,7 +624,7 @@ namespace std
this->setstate(__err);
return *this;
}
-
+
template<typename _CharT, typename _Traits>
basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
@@ -632,17 +632,17 @@ namespace std
{
_M_gcount = 0;
sentry __cerb(*this, true);
- if (__cerb && __n > 0)
+ if (__cerb && __n > 0)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const int_type __eof = traits_type::eof();
__streambuf_type* __sb = this->rdbuf();
int_type __c;
-
+
__n = std::min(__n, numeric_limits<streamsize>::max());
- while (_M_gcount < __n
+ while (_M_gcount < __n
&& !traits_type::eq_int_type(__c = __sb->sbumpc(), __eof))
{
++_M_gcount;
@@ -659,7 +659,7 @@ namespace std
}
return *this;
}
-
+
template<typename _CharT, typename _Traits>
typename basic_istream<_CharT, _Traits>::int_type
basic_istream<_CharT, _Traits>::
@@ -671,7 +671,7 @@ namespace std
if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
__c = this->rdbuf()->sgetc();
if (traits_type::eq_int_type(__c, traits_type::eof()))
@@ -681,7 +681,7 @@ namespace std
{ this->_M_setstate(ios_base::badbit); }
if (__err)
this->setstate(__err);
- }
+ }
return __c;
}
@@ -692,15 +692,15 @@ namespace std
{
_M_gcount = 0;
sentry __cerb(*this, true);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
_M_gcount = this->rdbuf()->sgetn(__s, __n);
if (_M_gcount != __n)
__err |= (ios_base::eofbit | ios_base::failbit);
- }
+ }
catch(...)
{ this->_M_setstate(ios_base::badbit); }
if (__err)
@@ -708,18 +708,18 @@ namespace std
}
return *this;
}
-
+
template<typename _CharT, typename _Traits>
- streamsize
+ streamsize
basic_istream<_CharT, _Traits>::
readsome(char_type* __s, streamsize __n)
{
_M_gcount = 0;
sentry __cerb(*this, true);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
// Cannot compare int_type with streamsize generically.
streamsize __num = this->rdbuf()->in_avail();
@@ -739,7 +739,7 @@ namespace std
}
return _M_gcount;
}
-
+
template<typename _CharT, typename _Traits>
basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
@@ -749,14 +749,14 @@ namespace std
// 60. What is a formatted input function?
_M_gcount = 0;
sentry __cerb(*this, true);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const int_type __eof = traits_type::eof();
__streambuf_type* __sb = this->rdbuf();
- if (!__sb
+ if (!__sb
|| traits_type::eq_int_type(__sb->sputbackc(__c), __eof))
__err |= ios_base::badbit;
}
@@ -767,7 +767,7 @@ namespace std
}
return *this;
}
-
+
template<typename _CharT, typename _Traits>
basic_istream<_CharT, _Traits>&
basic_istream<_CharT, _Traits>::
@@ -777,14 +777,14 @@ namespace std
// 60. What is a formatted input function?
_M_gcount = 0;
sentry __cerb(*this, true);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const int_type __eof = traits_type::eof();
__streambuf_type* __sb = this->rdbuf();
- if (!__sb
+ if (!__sb
|| traits_type::eq_int_type(__sb->sungetc(), __eof))
__err |= ios_base::badbit;
}
@@ -795,7 +795,7 @@ namespace std
}
return *this;
}
-
+
template<typename _CharT, typename _Traits>
int
basic_istream<_CharT, _Traits>::
@@ -805,17 +805,17 @@ namespace std
// DR60. Do not change _M_gcount.
int __ret = -1;
sentry __cerb(*this, true);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
__streambuf_type* __sb = this->rdbuf();
if (__sb)
{
if (__sb->pubsync() == -1)
__err |= ios_base::badbit;
- else
+ else
__ret = 0;
}
}
@@ -826,7 +826,7 @@ namespace std
}
return __ret;
}
-
+
template<typename _CharT, typename _Traits>
typename basic_istream<_CharT, _Traits>::pos_type
basic_istream<_CharT, _Traits>::
@@ -885,9 +885,9 @@ namespace std
if (!this->fail())
{
// 136. seekp, seekg setting wrong streams?
- pos_type __p = this->rdbuf()->pubseekoff(__off, __dir,
+ pos_type __p = this->rdbuf()->pubseekoff(__off, __dir,
ios_base::in);
-
+
// 129. Need error indication from seekp() and seekg()
if (__p == pos_type(off_type(-1)))
__err |= ios_base::failbit;
@@ -905,12 +905,12 @@ namespace std
basic_istream<_CharT, _Traits>&
operator>>(basic_istream<_CharT, _Traits>& __in, _CharT& __c)
{
- typedef basic_istream<_CharT, _Traits> __istream_type;
+ typedef basic_istream<_CharT, _Traits> __istream_type;
typename __istream_type::sentry __cerb(__in, false);
if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
typename __istream_type::int_type __cb = __in.rdbuf()->sbumpc();
if (!_Traits::eq_int_type(__cb, _Traits::eof()))
@@ -930,33 +930,33 @@ namespace std
basic_istream<_CharT, _Traits>&
operator>>(basic_istream<_CharT, _Traits>& __in, _CharT* __s)
{
- typedef basic_istream<_CharT, _Traits> __istream_type;
+ typedef basic_istream<_CharT, _Traits> __istream_type;
typedef typename __istream_type::__streambuf_type __streambuf_type;
- typedef typename _Traits::int_type int_type;
- typedef _CharT char_type;
- typedef ctype<_CharT> __ctype_type;
+ typedef typename _Traits::int_type int_type;
+ typedef _CharT char_type;
+ typedef ctype<_CharT> __ctype_type;
streamsize __extracted = 0;
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
typename __istream_type::sentry __cerb(__in, false);
if (__cerb)
{
- try
+ try
{
// Figure out how many characters to extract.
streamsize __num = __in.width();
if (__num <= 0)
__num = numeric_limits<streamsize>::max();
-
+
const __ctype_type& __ct = use_facet<__ctype_type>(__in.getloc());
const int_type __eof = _Traits::eof();
__streambuf_type* __sb = __in.rdbuf();
int_type __c = __sb->sgetc();
-
- while (__extracted < __num - 1
+
+ while (__extracted < __num - 1
&& !_Traits::eq_int_type(__c, __eof)
- && !__ct.is(ctype_base::space,
+ && !__ct.is(ctype_base::space,
_Traits::to_char_type(__c)))
{
*__s++ = _Traits::to_char_type(__c);
@@ -983,20 +983,20 @@ namespace std
// 27.6.1.4 Standard basic_istream manipulators
template<typename _CharT, typename _Traits>
- basic_istream<_CharT,_Traits>&
+ basic_istream<_CharT,_Traits>&
ws(basic_istream<_CharT,_Traits>& __in)
{
- typedef basic_istream<_CharT, _Traits> __istream_type;
+ typedef basic_istream<_CharT, _Traits> __istream_type;
typedef typename __istream_type::__streambuf_type __streambuf_type;
- typedef typename __istream_type::__ctype_type __ctype_type;
- typedef typename __istream_type::int_type __int_type;
+ typedef typename __istream_type::__ctype_type __ctype_type;
+ typedef typename __istream_type::int_type __int_type;
const __ctype_type& __ct = use_facet<__ctype_type>(__in.getloc());
- const __int_type __eof = _Traits::eof();
+ const __int_type __eof = _Traits::eof();
__streambuf_type* __sb = __in.rdbuf();
__int_type __c = __sb->sgetc();
- while (!_Traits::eq_int_type(__c, __eof)
+ while (!_Traits::eq_int_type(__c, __eof)
&& __ct.is(ctype_base::space, _Traits::to_char_type(__c)))
__c = __sb->snextc();
@@ -1011,17 +1011,17 @@ namespace std
operator>>(basic_istream<_CharT, _Traits>& __in,
basic_string<_CharT, _Traits, _Alloc>& __str)
{
- typedef basic_istream<_CharT, _Traits> __istream_type;
- typedef typename __istream_type::int_type __int_type;
+ typedef basic_istream<_CharT, _Traits> __istream_type;
+ typedef typename __istream_type::int_type __int_type;
typedef typename __istream_type::__streambuf_type __streambuf_type;
- typedef typename __istream_type::__ctype_type __ctype_type;
- typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
+ typedef typename __istream_type::__ctype_type __ctype_type;
+ typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
typedef typename __string_type::size_type __size_type;
__size_type __extracted = 0;
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
typename __istream_type::sentry __cerb(__in, false);
- if (__cerb)
+ if (__cerb)
{
try
{
@@ -1029,13 +1029,13 @@ namespace std
streamsize __w = __in.width();
__size_type __n;
__n = __w > 0 ? static_cast<__size_type>(__w) : __str.max_size();
-
+
const __ctype_type& __ct = use_facet<__ctype_type>(__in.getloc());
const __int_type __eof = _Traits::eof();
__streambuf_type* __sb = __in.rdbuf();
__int_type __c = __sb->sgetc();
-
- while (__extracted < __n
+
+ while (__extracted < __n
&& !_Traits::eq_int_type(__c, __eof)
&& !__ct.is(ctype_base::space, _Traits::to_char_type(__c)))
{
@@ -1068,11 +1068,11 @@ namespace std
getline(basic_istream<_CharT, _Traits>& __in,
basic_string<_CharT, _Traits, _Alloc>& __str, _CharT __delim)
{
- typedef basic_istream<_CharT, _Traits> __istream_type;
- typedef typename __istream_type::int_type __int_type;
+ typedef basic_istream<_CharT, _Traits> __istream_type;
+ typedef typename __istream_type::int_type __int_type;
typedef typename __istream_type::__streambuf_type __streambuf_type;
- typedef typename __istream_type::__ctype_type __ctype_type;
- typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
+ typedef typename __istream_type::__ctype_type __ctype_type;
+ typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
typedef typename __string_type::size_type __size_type;
__size_type __extracted = 0;
@@ -1080,7 +1080,7 @@ namespace std
bool __testdelim = false;
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
typename __istream_type::sentry __cerb(__in, true);
- if (__cerb)
+ if (__cerb)
{
try
{
@@ -1090,7 +1090,7 @@ namespace std
__int_type __c = __sb->sbumpc();
const __int_type __eof = _Traits::eof();
__testdelim = _Traits::eq_int_type(__c, __idelim);
-
+
while (!_Traits::eq_int_type(__c, __eof) && !__testdelim
&& __extracted < __n)
{
@@ -1119,12 +1119,12 @@ namespace std
template<class _CharT, class _Traits, class _Alloc>
inline basic_istream<_CharT,_Traits>&
- getline(basic_istream<_CharT, _Traits>& __in,
+ getline(basic_istream<_CharT, _Traits>& __in,
basic_string<_CharT,_Traits,_Alloc>& __str)
{ return getline(__in, __str, __in.widen('\n')); }
// Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
+ // which are defined via explicit instantiations elsewhere.
// NB: This syntax is a GNU extension.
#if _GLIBCXX_EXTERN_TEMPLATE
extern template class basic_istream<char>;
diff --git a/libstdc++-v3/include/bits/list.tcc b/libstdc++-v3/include/bits/list.tcc
index 2b50518e44e..aaaa8c364bd 100644
--- a/libstdc++-v3/include/bits/list.tcc
+++ b/libstdc++-v3/include/bits/list.tcc
@@ -1,6 +1,6 @@
// List implementation (out of line) -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -61,7 +61,7 @@
#ifndef _LIST_TCC
#define _LIST_TCC 1
-namespace __gnu_norm
+namespace _GLIBCXX_STD
{
template<typename _Tp, typename _Alloc>
void
@@ -69,8 +69,8 @@ namespace __gnu_norm
_M_clear()
{
typedef _List_node<_Tp> _Node;
- _Node* __cur = static_cast<_Node*>(this->_M_node._M_next);
- while (__cur != &this->_M_node)
+ _Node* __cur = static_cast<_Node*>(this->_M_impl._M_node._M_next);
+ while (__cur != &this->_M_impl._M_node)
{
_Node* __tmp = __cur;
__cur = static_cast<_Node*>(__cur->_M_next);
@@ -78,7 +78,7 @@ namespace __gnu_norm
_M_put_node(__tmp);
}
}
-
+
template<typename _Tp, typename _Alloc>
typename list<_Tp,_Alloc>::iterator
list<_Tp,_Alloc>::
@@ -88,7 +88,7 @@ namespace __gnu_norm
__tmp->hook(__position._M_node);
return __tmp;
}
-
+
template<typename _Tp, typename _Alloc>
typename list<_Tp,_Alloc>::iterator
list<_Tp,_Alloc>::
@@ -98,7 +98,7 @@ namespace __gnu_norm
_M_erase(__position);
return __ret;
}
-
+
template<typename _Tp, typename _Alloc>
void
list<_Tp,_Alloc>::
@@ -113,28 +113,28 @@ namespace __gnu_norm
else // __i == end()
insert(end(), __new_size - __len, __x);
}
-
+
template<typename _Tp, typename _Alloc>
list<_Tp,_Alloc>&
list<_Tp,_Alloc>::
operator=(const list& __x)
{
if (this != &__x)
- {
- iterator __first1 = begin();
- iterator __last1 = end();
- const_iterator __first2 = __x.begin();
- const_iterator __last2 = __x.end();
- while (__first1 != __last1 && __first2 != __last2)
- *__first1++ = *__first2++;
- if (__first2 == __last2)
- erase(__first1, __last1);
- else
- insert(__last1, __first2, __last2);
- }
+ {
+ iterator __first1 = begin();
+ iterator __last1 = end();
+ const_iterator __first2 = __x.begin();
+ const_iterator __last2 = __x.end();
+ while (__first1 != __last1 && __first2 != __last2)
+ *__first1++ = *__first2++;
+ if (__first2 == __last2)
+ erase(__first1, __last1);
+ else
+ insert(__last1, __first2, __last2);
+ }
return *this;
}
-
+
template<typename _Tp, typename _Alloc>
void
list<_Tp,_Alloc>::
@@ -148,17 +148,17 @@ namespace __gnu_norm
else
erase(__i, end());
}
-
+
template<typename _Tp, typename _Alloc>
template <typename _InputIterator>
void
list<_Tp,_Alloc>::
- _M_assign_dispatch(_InputIterator __first2, _InputIterator __last2,
+ _M_assign_dispatch(_InputIterator __first2, _InputIterator __last2,
__false_type)
{
iterator __first1 = begin();
iterator __last1 = end();
- for (; __first1 != __last1 && __first2 != __last2;
+ for (; __first1 != __last1 && __first2 != __last2;
++__first1, ++__first2)
*__first1 = *__first2;
if (__first2 == __last2)
@@ -166,7 +166,7 @@ namespace __gnu_norm
else
insert(__last1, __first2, __last2);
}
-
+
template<typename _Tp, typename _Alloc>
void
list<_Tp,_Alloc>::
@@ -183,7 +183,7 @@ namespace __gnu_norm
__first = __next;
}
}
-
+
template<typename _Tp, typename _Alloc>
void
list<_Tp,_Alloc>::
@@ -191,7 +191,8 @@ namespace __gnu_norm
{
iterator __first = begin();
iterator __last = end();
- if (__first == __last) return;
+ if (__first == __last)
+ return;
iterator __next = __first;
while (++__next != __last)
{
@@ -202,7 +203,7 @@ namespace __gnu_norm
__next = __first;
}
}
-
+
template<typename _Tp, typename _Alloc>
void
list<_Tp,_Alloc>::
@@ -229,15 +230,15 @@ namespace __gnu_norm
_M_transfer(__last1, __first2, __last2);
}
}
-
+
template<typename _Tp, typename _Alloc>
void
list<_Tp,_Alloc>::
sort()
{
// Do nothing if the list has length 0 or 1.
- if (this->_M_node._M_next != &this->_M_node
- && this->_M_node._M_next->_M_next != &this->_M_node)
+ if (this->_M_impl._M_node._M_next != &this->_M_impl._M_node
+ && this->_M_impl._M_node._M_next->_M_next != &this->_M_impl._M_node)
{
list __carry;
list __tmp[64];
@@ -245,26 +246,28 @@ namespace __gnu_norm
list * __counter;
do
- {
- __carry.splice(__carry.begin(), *this, begin());
+ {
+ __carry.splice(__carry.begin(), *this, begin());
- for(__counter = &__tmp[0];
- (__counter != __fill) && !__counter->empty();
- ++__counter)
- {
- __counter->merge(__carry);
- __carry.swap(*__counter);
- }
- __carry.swap(*__counter);
- if (__counter == __fill) ++__fill;
- } while ( !empty() );
+ for(__counter = &__tmp[0];
+ (__counter != __fill) && !__counter->empty();
+ ++__counter)
+ {
+ __counter->merge(__carry);
+ __carry.swap(*__counter);
+ }
+ __carry.swap(*__counter);
+ if (__counter == __fill)
+ ++__fill;
+ }
+ while ( !empty() );
for (__counter = &__tmp[1]; __counter != __fill; ++__counter)
__counter->merge( *(__counter-1) );
swap( *(__fill-1) );
}
}
-
+
template<typename _Tp, typename _Alloc>
template <typename _Predicate>
void
@@ -277,11 +280,12 @@ namespace __gnu_norm
{
iterator __next = __first;
++__next;
- if (__pred(*__first)) _M_erase(__first);
+ if (__pred(*__first))
+ _M_erase(__first);
__first = __next;
}
}
-
+
template<typename _Tp, typename _Alloc>
template <typename _BinaryPredicate>
void
@@ -301,7 +305,7 @@ namespace __gnu_norm
__next = __first;
}
}
-
+
template<typename _Tp, typename _Alloc>
template <typename _StrictWeakOrdering>
void
@@ -309,7 +313,7 @@ namespace __gnu_norm
merge(list& __x, _StrictWeakOrdering __comp)
{
// _GLIBCXX_RESOLVE_LIB_DEFECTS
- // 300. list::merge() specification incomplete
+ // 300. list::merge() specification incomplete
if (this != &__x)
{
iterator __first1 = begin();
@@ -329,43 +333,45 @@ namespace __gnu_norm
_M_transfer(__last1, __first2, __last2);
}
}
-
+
template<typename _Tp, typename _Alloc>
template <typename _StrictWeakOrdering>
- void
- list<_Tp,_Alloc>::
- sort(_StrictWeakOrdering __comp)
- {
- // Do nothing if the list has length 0 or 1.
- if (this->_M_node._M_next != &this->_M_node &&
- this->_M_node._M_next->_M_next != &this->_M_node)
+ void
+ list<_Tp,_Alloc>::
+ sort(_StrictWeakOrdering __comp)
{
- list __carry;
- list __tmp[64];
- list * __fill = &__tmp[0];
- list * __counter;
+ // Do nothing if the list has length 0 or 1.
+ if (this->_M_impl._M_node._M_next != &this->_M_impl._M_node
+ && this->_M_impl._M_node._M_next->_M_next != &this->_M_impl._M_node)
+ {
+ list __carry;
+ list __tmp[64];
+ list * __fill = &__tmp[0];
+ list * __counter;
- do
- {
- __carry.splice(__carry.begin(), *this, begin());
+ do
+ {
+ __carry.splice(__carry.begin(), *this, begin());
- for(__counter = &__tmp[0];
- (__counter != __fill) && !__counter->empty();
- ++__counter)
- {
- __counter->merge(__carry, __comp);
- __carry.swap(*__counter);
- }
- __carry.swap(*__counter);
- if (__counter == __fill) ++__fill;
- } while ( !empty() );
-
- for (__counter = &__tmp[1]; __counter != __fill; ++__counter)
- __counter->merge( *(__counter-1), __comp );
- swap( *(__fill-1) );
+ for(__counter = &__tmp[0];
+ (__counter != __fill) && !__counter->empty();
+ ++__counter)
+ {
+ __counter->merge(__carry, __comp);
+ __carry.swap(*__counter);
+ }
+ __carry.swap(*__counter);
+ if (__counter == __fill)
+ ++__fill;
+ }
+ while ( !empty() );
+
+ for (__counter = &__tmp[1]; __counter != __fill; ++__counter)
+ __counter->merge( *(__counter-1), __comp );
+ swap( *(__fill-1) );
+ }
}
- }
-} // namespace __gnu_norm
+} // namespace std
#endif /* _LIST_TCC */
diff --git a/libstdc++-v3/include/bits/locale_classes.h b/libstdc++-v3/include/bits/locale_classes.h
index 52bf1fc9c31..926ce209b24 100644
--- a/libstdc++-v3/include/bits/locale_classes.h
+++ b/libstdc++-v3/include/bits/locale_classes.h
@@ -1,6 +1,6 @@
// Locale support -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -80,16 +80,16 @@ namespace std
friend class _Impl;
template<typename _Facet>
- friend bool
+ friend bool
has_facet(const locale&) throw();
template<typename _Facet>
- friend const _Facet&
+ friend const _Facet&
use_facet(const locale&);
template<typename _Cache>
friend struct __use_cache;
-
+
//@{
/**
* @brief Category values.
@@ -103,18 +103,18 @@ namespace std
* @endif
*/
static const category none = 0;
- static const category ctype = 1L << 0;
- static const category numeric = 1L << 1;
- static const category collate = 1L << 2;
- static const category time = 1L << 3;
- static const category monetary = 1L << 4;
- static const category messages = 1L << 5;
- static const category all = (ctype | numeric | collate |
- time | monetary | messages);
+ static const category ctype = 1L << 0;
+ static const category numeric = 1L << 1;
+ static const category collate = 1L << 2;
+ static const category time = 1L << 3;
+ static const category monetary = 1L << 4;
+ static const category messages = 1L << 5;
+ static const category all = (ctype | numeric | collate |
+ time | monetary | messages);
//@}
// Construct/copy/destroy:
-
+
/**
* @brief Default constructor.
*
@@ -140,7 +140,7 @@ namespace std
* @param s Name of the locale to construct.
* @throw std::runtime_error if s is null or an undefined locale.
*/
- explicit
+ explicit
locale(const char* __s);
/**
@@ -152,7 +152,7 @@ namespace std
*
* @param base The locale to copy.
* @param s Name of the locale to use facets from.
- * @param cat Set of categories defining the facets to use from s.
+ * @param cat Set of categories defining the facets to use from s.
* @throw std::runtime_error if s is null or an undefined locale.
*/
locale(const locale& __base, const char* __s, category __cat);
@@ -210,7 +210,7 @@ namespace std
* @throw std::runtime_error if other has no facet of type Facet.
*/
template<typename _Facet>
- locale
+ locale
combine(const locale& __other) const;
// Locale operations:
@@ -218,7 +218,7 @@ namespace std
* @brief Return locale name.
* @return Locale name or "*" if unnamed.
*/
- string
+ string
name() const;
/**
@@ -226,9 +226,9 @@ namespace std
*
* @param other The locale to compare against.
* @return True if other and this refer to the same locale instance, are
- * copies, or have the same name. False otherwise.
+ * copies, or have the same name. False otherwise.
*/
- bool
+ bool
operator==(const locale& __other) const throw ();
/**
@@ -237,7 +237,7 @@ namespace std
* @param other The locale to compare against.
* @return ! (*this == other)
*/
- inline bool
+ inline bool
operator!=(const locale& __other) const throw ()
{ return !(this->operator==(__other)); }
@@ -257,7 +257,7 @@ namespace std
* @return True if collate<Char> facet compares s1 < s2, else false.
*/
template<typename _Char, typename _Traits, typename _Alloc>
- bool
+ bool
operator()(const basic_string<_Char, _Traits, _Alloc>& __s1,
const basic_string<_Char, _Traits, _Alloc>& __s2) const;
@@ -272,26 +272,26 @@ namespace std
* @param locale The new locale to make global.
* @return Copy of the old global locale.
*/
- static locale
+ static locale
global(const locale&);
/**
* @brief Return reference to the "C" locale.
*/
- static const locale&
+ static const locale&
classic();
private:
// The (shared) implementation
- _Impl* _M_impl;
+ _Impl* _M_impl;
// The "C" reference locale
static _Impl* _S_classic;
// Current global locale
- static _Impl* _S_global;
+ static _Impl* _S_global;
- // Names of underlying locale categories.
+ // Names of underlying locale categories.
// NB: locale::global() has to know how to modify all the
// underlying categories, not just the ones required by the C++
// standard.
@@ -313,16 +313,16 @@ namespace std
static __gthread_once_t _S_once;
#endif
- explicit
+ explicit
locale(_Impl*) throw();
- static void
+ static void
_S_initialize();
static void
_S_initialize_once();
- static category
+ static category
_S_normalize_category(category);
void
@@ -355,10 +355,10 @@ namespace std
static const char _S_c_name[2];
#ifdef __GTHREADS
- static __gthread_once_t _S_once;
+ static __gthread_once_t _S_once;
#endif
- static void
+ static void
_S_initialize_once();
protected:
@@ -371,16 +371,16 @@ namespace std
*
* @param refs The initial value for reference count.
*/
- explicit
+ explicit
facet(size_t __refs = 0) throw() : _M_refcount(__refs ? 1 : 0)
{ }
/// Facet destructor.
- virtual
+ virtual
~facet();
static void
- _S_create_c_locale(__c_locale& __cloc, const char* __s,
+ _S_create_c_locale(__c_locale& __cloc, const char* __s,
__c_locale __old = 0);
static __c_locale
@@ -400,23 +400,23 @@ namespace std
private:
inline void
_M_add_reference() const throw()
- { __atomic_add(&_M_refcount, 1); }
+ { __gnu_cxx::__atomic_add(&_M_refcount, 1); }
inline void
_M_remove_reference() const throw()
{
- if (__exchange_and_add(&_M_refcount, -1) == 1)
+ if (__gnu_cxx::__exchange_and_add(&_M_refcount, -1) == 1)
{
- try
- { delete this; }
- catch (...)
+ try
+ { delete this; }
+ catch (...)
{ }
}
}
facet(const facet&); // Not defined.
- void
+ void
operator=(const facet&); // Not defined.
};
@@ -438,22 +438,22 @@ namespace std
friend class locale::_Impl;
template<typename _Facet>
- friend const _Facet&
+ friend const _Facet&
use_facet(const locale&);
template<typename _Facet>
- friend bool
+ friend bool
has_facet(const locale&) throw ();
// NB: There is no accessor for _M_index because it may be used
// before the constructor is run; the effect of calling a member
// function (even an inline) would be undefined.
- mutable size_t _M_index;
+ mutable size_t _M_index;
// Last id number assigned.
- static _Atomic_word _S_refcount;
+ static _Atomic_word _S_refcount;
- void
+ void
operator=(const id&); // Not defined.
id(const id&); // Not defined.
@@ -478,11 +478,11 @@ namespace std
friend class locale::facet;
template<typename _Facet>
- friend bool
+ friend bool
has_facet(const locale&) throw();
template<typename _Facet>
- friend const _Facet&
+ friend const _Facet&
use_facet(const locale&);
template<typename _Cache>
@@ -492,29 +492,29 @@ namespace std
// Data Members.
_Atomic_word _M_refcount;
const facet** _M_facets;
- size_t _M_facets_size;
+ size_t _M_facets_size;
const facet** _M_caches;
- char** _M_names;
- static const locale::id* const _S_id_ctype[];
- static const locale::id* const _S_id_numeric[];
- static const locale::id* const _S_id_collate[];
- static const locale::id* const _S_id_time[];
- static const locale::id* const _S_id_monetary[];
- static const locale::id* const _S_id_messages[];
+ char** _M_names;
+ static const locale::id* const _S_id_ctype[];
+ static const locale::id* const _S_id_numeric[];
+ static const locale::id* const _S_id_collate[];
+ static const locale::id* const _S_id_time[];
+ static const locale::id* const _S_id_monetary[];
+ static const locale::id* const _S_id_messages[];
static const locale::id* const* const _S_facet_categories[];
- inline void
+ inline void
_M_add_reference() throw()
- { __atomic_add(&_M_refcount, 1); }
+ { __gnu_cxx::__atomic_add(&_M_refcount, 1); }
- inline void
+ inline void
_M_remove_reference() throw()
{
- if (__exchange_and_add(&_M_refcount, -1) == 1)
+ if (__gnu_cxx::__exchange_and_add(&_M_refcount, -1) == 1)
{
- try
- { delete this; }
- catch(...)
+ try
+ { delete this; }
+ catch(...)
{ }
}
}
@@ -527,7 +527,7 @@ namespace std
_Impl(const _Impl&); // Not defined.
- void
+ void
operator=(const _Impl&); // Not defined.
inline bool
@@ -535,33 +535,33 @@ namespace std
{
bool __ret = true;
for (size_t __i = 0; __ret && __i < _S_categories_size - 1; ++__i)
- __ret &= (std::strcmp(_M_names[__i], _M_names[__i + 1]) == 0);
+ __ret = std::strcmp(_M_names[__i], _M_names[__i + 1]) == 0;
return __ret;
}
- void
+ void
_M_replace_categories(const _Impl*, category);
- void
+ void
_M_replace_category(const _Impl*, const locale::id* const*);
- void
+ void
_M_replace_facet(const _Impl*, const locale::id*);
- void
+ void
_M_install_facet(const locale::id*, const facet*);
template<typename _Facet>
- inline void
+ inline void
_M_init_facet(_Facet* __facet)
{ _M_install_facet(&_Facet::id, __facet); }
void
_M_install_cache(const facet* __cache, size_t __index) throw()
- {
+ {
__cache->_M_add_reference();
- _M_caches[__index] = __cache;
- }
+ _M_caches[__index] = __cache;
+ }
};
template<typename _Facet>
@@ -584,7 +584,7 @@ namespace std
{
_M_impl->_M_remove_reference();
for (size_t __j = 0; __j < __i; ++__j)
- delete [] _M_tmp_names[__j];
+ delete [] _M_tmp_names[__j];
__throw_exception_again;
}
diff --git a/libstdc++-v3/include/bits/locale_facets.h b/libstdc++-v3/include/bits/locale_facets.h
index 05003ed28d5..453ba78f20a 100644
--- a/libstdc++-v3/include/bits/locale_facets.h
+++ b/libstdc++-v3/include/bits/locale_facets.h
@@ -57,28 +57,28 @@ namespace std
# define _GLIBCXX_NUM_FACETS 14
#endif
- // Convert string to numeric value of type _Tv and store results.
+ // Convert string to numeric value of type _Tv and store results.
// NB: This is specialized for all required types, there is no
// generic definition.
template<typename _Tv>
void
- __convert_to_v(const char* __in, _Tv& __out, ios_base::iostate& __err,
+ __convert_to_v(const char* __in, _Tv& __out, ios_base::iostate& __err,
const __c_locale& __cloc);
// Explicit specializations for required types.
template<>
void
- __convert_to_v(const char*, float&, ios_base::iostate&,
+ __convert_to_v(const char*, float&, ios_base::iostate&,
const __c_locale&);
template<>
void
- __convert_to_v(const char*, double&, ios_base::iostate&,
+ __convert_to_v(const char*, double&, ios_base::iostate&,
const __c_locale&);
template<>
void
- __convert_to_v(const char*, long double&, ios_base::iostate&,
+ __convert_to_v(const char*, long double&, ios_base::iostate&,
const __c_locale&);
// NB: __pad is a struct, rather than a function, so it can be
@@ -87,8 +87,8 @@ namespace std
struct __pad
{
static void
- _S_pad(ios_base& __io, _CharT __fill, _CharT* __news,
- const _CharT* __olds, const streamsize __newlen,
+ _S_pad(ios_base& __io, _CharT __fill, _CharT* __news,
+ const _CharT* __olds, const streamsize __newlen,
const streamsize __oldlen, const bool __num);
};
@@ -99,8 +99,8 @@ namespace std
// only with __glen != 0.
template<typename _CharT>
_CharT*
- __add_grouping(_CharT* __s, _CharT __sep,
- const char* __gbeg, size_t __gsize,
+ __add_grouping(_CharT* __s, _CharT __sep,
+ const char* __gbeg, size_t __gsize,
const _CharT* __first, const _CharT* __last);
// This template permits specializing facet output code for
@@ -131,7 +131,7 @@ namespace std
// Include host and configuration specific ctype enums for ctype_base.
#include <bits/ctype_base.h>
- // Common base for ctype<_CharT>.
+ // Common base for ctype<_CharT>.
/**
* @brief Common base for ctype facet
*
@@ -159,7 +159,7 @@ namespace std
* @param m The mask to compare against.
* @return (M & m) != 0.
*/
- bool
+ bool
is(mask __m, char_type __c) const
{ return this->do_is(__m, __c); }
@@ -177,7 +177,7 @@ namespace std
* @return @a hi.
*/
const char_type*
- is(const char_type *__lo, const char_type *__hi, mask *__vec) const
+ is(const char_type *__lo, const char_type *__hi, mask *__vec) const
{ return this->do_is(__lo, __hi, __vec); }
/**
@@ -222,7 +222,7 @@ namespace std
* @param c The char_type to convert.
* @return The uppercase char_type if convertible, else @a c.
*/
- char_type
+ char_type
toupper(char_type __c) const
{ return this->do_toupper(__c); }
@@ -321,7 +321,7 @@ namespace std
* @param dfault Char to return if conversion fails.
* @return The converted char.
*/
- char
+ char
narrow(char_type __c, char __dfault) const
{ return this->do_narrow(__c, __dfault); }
@@ -349,12 +349,12 @@ namespace std
{ return this->do_narrow(__lo, __hi, __dfault, __to); }
protected:
- explicit
+ explicit
__ctype_abstract_base(size_t __refs = 0): facet(__refs) { }
- virtual
+ virtual
~__ctype_abstract_base() { }
-
+
/**
* @brief Test char_type classification.
*
@@ -388,7 +388,7 @@ namespace std
* @return @a hi.
*/
virtual const char_type*
- do_is(const char_type* __lo, const char_type* __hi,
+ do_is(const char_type* __lo, const char_type* __hi,
mask* __vec) const = 0;
/**
@@ -426,7 +426,7 @@ namespace std
* @return Pointer to a non-matching char_type if found, else @a hi.
*/
virtual const char_type*
- do_scan_not(mask __m, const char_type* __lo,
+ do_scan_not(mask __m, const char_type* __lo,
const char_type* __hi) const = 0;
/**
@@ -443,7 +443,7 @@ namespace std
* @param c The char_type to convert.
* @return The uppercase char_type if convertible, else @a c.
*/
- virtual char_type
+ virtual char_type
do_toupper(char_type) const = 0;
/**
@@ -495,7 +495,7 @@ namespace std
*/
virtual const char_type*
do_tolower(char_type* __lo, const char_type* __hi) const = 0;
-
+
/**
* @brief Widen char
*
@@ -512,7 +512,7 @@ namespace std
* @param c The char to convert.
* @return The converted char_type
*/
- virtual char_type
+ virtual char_type
do_widen(char) const = 0;
/**
@@ -534,7 +534,7 @@ namespace std
* @return @a hi.
*/
virtual const char*
- do_widen(const char* __lo, const char* __hi,
+ do_widen(const char* __lo, const char* __hi,
char_type* __dest) const = 0;
/**
@@ -555,7 +555,7 @@ namespace std
* @param dfault Char to return if conversion fails.
* @return The converted char.
*/
- virtual char
+ virtual char
do_narrow(char_type, char __dfault) const = 0;
/**
@@ -607,20 +607,20 @@ namespace std
{
public:
// Types:
- typedef _CharT char_type;
+ typedef _CharT char_type;
typedef typename __ctype_abstract_base<_CharT>::mask mask;
/// The facet id for ctype<char_type>
- static locale::id id;
+ static locale::id id;
- explicit
+ explicit
ctype(size_t __refs = 0) : __ctype_abstract_base<_CharT>(__refs) { }
protected:
- virtual
+ virtual
~ctype();
- virtual bool
+ virtual bool
do_is(mask __m, char_type __c) const;
virtual const char_type*
@@ -633,25 +633,25 @@ namespace std
do_scan_not(mask __m, const char_type* __lo,
const char_type* __hi) const;
- virtual char_type
+ virtual char_type
do_toupper(char_type __c) const;
virtual const char_type*
do_toupper(char_type* __lo, const char_type* __hi) const;
- virtual char_type
+ virtual char_type
do_tolower(char_type __c) const;
virtual const char_type*
do_tolower(char_type* __lo, const char_type* __hi) const;
- virtual char_type
+ virtual char_type
do_widen(char __c) const;
virtual const char*
do_widen(const char* __lo, const char* __hi, char_type* __dest) const;
- virtual char
+ virtual char
do_narrow(char_type, char __dfault) const;
virtual const char_type*
@@ -677,21 +677,21 @@ namespace std
public:
// Types:
/// Typedef for the template parameter char.
- typedef char char_type;
+ typedef char char_type;
protected:
// Data Members:
__c_locale _M_c_locale_ctype;
- bool _M_del;
- __to_type _M_toupper;
- __to_type _M_tolower;
- const mask* _M_table;
+ bool _M_del;
+ __to_type _M_toupper;
+ __to_type _M_tolower;
+ const mask* _M_table;
mutable char _M_widen_ok;
mutable char _M_widen[1 + static_cast<unsigned char>(-1)];
mutable char _M_narrow[1 + static_cast<unsigned char>(-1)];
mutable char _M_narrow_ok; // 0 uninitialized, 1 init,
// 2 non-consecutive
-
+
public:
/// The facet id for ctype<char>
static locale::id id;
@@ -708,7 +708,7 @@ namespace std
* @param del If true, passes ownership of table to this facet.
* @param refs Passed to the base facet class.
*/
- explicit
+ explicit
ctype(const mask* __table = 0, bool __del = false, size_t __refs = 0);
/**
@@ -721,8 +721,8 @@ namespace std
* @param del If true, passes ownership of table to this facet.
* @param refs Passed to the base facet class.
*/
- explicit
- ctype(__c_locale __cloc, const mask* __table = 0, bool __del = false,
+ explicit
+ ctype(__c_locale __cloc, const mask* __table = 0, bool __del = false,
size_t __refs = 0);
/**
@@ -736,7 +736,7 @@ namespace std
*/
inline bool
is(mask __m, char __c) const;
-
+
/**
* @brief Return a mask array.
*
@@ -751,7 +751,7 @@ namespace std
*/
inline const char*
is(const char* __lo, const char* __hi, mask* __vec) const;
-
+
/**
* @brief Find char matching a mask
*
@@ -779,7 +779,7 @@ namespace std
*/
inline const char*
scan_not(mask __m, const char* __lo, const char* __hi) const;
-
+
/**
* @brief Convert to uppercase.
*
@@ -792,7 +792,7 @@ namespace std
* @param c The char to convert.
* @return The uppercase char if convertible, else @a c.
*/
- char_type
+ char_type
toupper(char_type __c) const
{ return this->do_toupper(__c); }
@@ -825,7 +825,7 @@ namespace std
* @param c The char to convert.
* @return The lowercase char if convertible, else @a c.
*/
- char_type
+ char_type
tolower(char_type __c) const
{ return this->do_tolower(__c); }
@@ -862,9 +862,9 @@ namespace std
* @param c The char to convert.
* @return The converted character.
*/
- char_type
+ char_type
widen(char __c) const
- {
+ {
if (_M_widen_ok) return _M_widen[static_cast<unsigned char>(__c)];
this->_M_widen_init();
return this->do_widen(__c);
@@ -918,7 +918,7 @@ namespace std
* @param dfault Char to return if conversion fails.
* @return The converted character.
*/
- char
+ char
narrow(char_type __c, char __dfault) const
{
if (_M_narrow[static_cast<unsigned char>(__c)])
@@ -967,12 +967,12 @@ namespace std
protected:
/// Returns a pointer to the mask table provided to the constructor, or
/// the default from classic_table() if none was provided.
- const mask*
+ const mask*
table() const throw()
{ return _M_table; }
/// Returns a pointer to the C locale mask table.
- static const mask*
+ static const mask*
classic_table() throw();
/**
@@ -981,7 +981,7 @@ namespace std
* This function deletes table() if @a del was true in the
* constructor.
*/
- virtual
+ virtual
~ctype();
/**
@@ -997,7 +997,7 @@ namespace std
* @param c The char to convert.
* @return The uppercase char if convertible, else @a c.
*/
- virtual char_type
+ virtual char_type
do_toupper(char_type) const;
/**
@@ -1030,7 +1030,7 @@ namespace std
* @param c The char to convert.
* @return The lowercase char if convertible, else @a c.
*/
- virtual char_type
+ virtual char_type
do_tolower(char_type) const;
/**
@@ -1049,7 +1049,7 @@ namespace std
*/
virtual const char_type*
do_tolower(char_type* __lo, const char_type* __hi) const;
-
+
/**
* @brief Widen char
*
@@ -1067,7 +1067,7 @@ namespace std
* @param c The char to convert.
* @return The converted character.
*/
- virtual char_type
+ virtual char_type
do_widen(char __c) const
{ return __c; }
@@ -1116,7 +1116,7 @@ namespace std
* @param dfault Char to return if conversion fails.
* @return The converted char.
*/
- virtual char
+ virtual char
do_narrow(char_type __c, char) const
{ return __c; }
@@ -1158,7 +1158,7 @@ namespace std
for (size_t __i = 0; __i < sizeof(_M_widen); ++__i)
__tmp[__i] = __i;
do_widen(__tmp, __tmp + sizeof(__tmp), _M_widen);
-
+
_M_widen_ok = 1;
// Set _M_widen_ok to 2 if memcpy can't be used.
for (size_t __i = 0; __i < sizeof(_M_widen); ++__i)
@@ -1196,7 +1196,7 @@ namespace std
_M_narrow_ok = __consecutive ? 1 : 2;
}
};
-
+
template<>
const ctype<char>&
use_facet<ctype<char> >(const locale& __loc);
@@ -1219,8 +1219,8 @@ namespace std
public:
// Types:
/// Typedef for the template parameter wchar_t.
- typedef wchar_t char_type;
- typedef wctype_t __wmask_type;
+ typedef wchar_t char_type;
+ typedef wctype_t __wmask_type;
protected:
__c_locale _M_c_locale_ctype;
@@ -1237,7 +1237,7 @@ namespace std
public:
// Data Members:
/// The facet id for ctype<wchar_t>
- static locale::id id;
+ static locale::id id;
/**
* @brief Constructor performs initialization.
@@ -1246,7 +1246,7 @@ namespace std
*
* @param refs Passed to the base facet class.
*/
- explicit
+ explicit
ctype(size_t __refs = 0);
/**
@@ -1257,7 +1257,7 @@ namespace std
* @param cloc Handle to C locale data.
* @param refs Passed to the base facet class.
*/
- explicit
+ explicit
ctype(__c_locale __cloc, size_t __refs = 0);
protected:
@@ -1265,7 +1265,7 @@ namespace std
_M_convert_to_wmask(const mask __m) const;
/// Destructor
- virtual
+ virtual
~ctype();
/**
@@ -1281,7 +1281,7 @@ namespace std
* @param m The mask to compare against.
* @return (M & m) != 0.
*/
- virtual bool
+ virtual bool
do_is(mask __m, char_type __c) const;
/**
@@ -1337,7 +1337,7 @@ namespace std
* @return Pointer to a non-matching wchar_t if found, else @a hi.
*/
virtual const char_type*
- do_scan_not(mask __m, const char_type* __lo,
+ do_scan_not(mask __m, const char_type* __lo,
const char_type* __hi) const;
/**
@@ -1353,7 +1353,7 @@ namespace std
* @param c The wchar_t to convert.
* @return The uppercase wchar_t if convertible, else @a c.
*/
- virtual char_type
+ virtual char_type
do_toupper(char_type) const;
/**
@@ -1386,7 +1386,7 @@ namespace std
* @param c The wchar_t to convert.
* @return The lowercase wchar_t if convertible, else @a c.
*/
- virtual char_type
+ virtual char_type
do_tolower(char_type) const;
/**
@@ -1405,7 +1405,7 @@ namespace std
*/
virtual const char_type*
do_tolower(char_type* __lo, const char_type* __hi) const;
-
+
/**
* @brief Widen char to wchar_t
*
@@ -1423,7 +1423,7 @@ namespace std
* @param c The char to convert.
* @return The converted wchar_t.
*/
- virtual char_type
+ virtual char_type
do_widen(char) const;
/**
@@ -1451,14 +1451,15 @@ namespace std
/**
* @brief Narrow wchar_t to char
*
- * This virtual function converts the argument to char using the
- * simplest reasonable transformation. If the conversion fails, dfault
- * is returned instead. For an underived ctype<wchar_t> facet, @a c will
- * be cast to char and returned.
+ * This virtual function converts the argument to char using
+ * the simplest reasonable transformation. If the conversion
+ * fails, dfault is returned instead. For an underived
+ * ctype<wchar_t> facet, @a c will be cast to char and
+ * returned.
*
- * do_narrow() is a hook for a derived facet to change the behavior of
- * narrowing. do_narrow() must always return the same result for the
- * same input.
+ * do_narrow() is a hook for a derived facet to change the
+ * behavior of narrowing. do_narrow() must always return the
+ * same result for the same input.
*
* Note: this is not what you want for codepage conversions. See
* codecvt for that.
@@ -1467,7 +1468,7 @@ namespace std
* @param dfault Char to return if conversion fails.
* @return The converted char.
*/
- virtual char
+ virtual char
do_narrow(char_type, char __dfault) const;
/**
@@ -1498,7 +1499,7 @@ namespace std
char __dfault, char* __dest) const;
// For use at construction time only.
- void
+ void
_M_initialize_ctype();
};
@@ -1515,13 +1516,13 @@ namespace std
class ctype_byname : public ctype<_CharT>
{
public:
- typedef _CharT char_type;
+ typedef _CharT char_type;
- explicit
+ explicit
ctype_byname(const char* __s, size_t __refs = 0);
protected:
- virtual
+ virtual
~ctype_byname() { };
};
@@ -1536,26 +1537,26 @@ namespace std
#include <bits/codecvt.h>
// 22.2.2 The numeric category.
- class __num_base
+ class __num_base
{
public:
// NB: Code depends on the order of _S_atoms_out elements.
// Below are the indices into _S_atoms_out.
- enum
- {
- _S_ominus,
- _S_oplus,
- _S_ox,
- _S_oX,
+ enum
+ {
+ _S_ominus,
+ _S_oplus,
+ _S_ox,
+ _S_oX,
_S_odigits,
_S_odigits_end = _S_odigits + 16,
- _S_oudigits = _S_odigits_end,
+ _S_oudigits = _S_odigits_end,
_S_oudigits_end = _S_oudigits + 16,
_S_oe = _S_odigits + 14, // For scientific notation, 'e'
_S_oE = _S_oudigits + 14, // For scientific notation, 'E'
_S_oend = _S_oudigits_end
};
-
+
// A list of valid numeric literals for output. This array
// contains chars that will be passed through the current locale's
// ctype<_CharT>.widen() and then used to render numbers.
@@ -1567,12 +1568,12 @@ namespace std
// "-+xX0123456789abcdefABCDEF"
static const char* _S_atoms_in;
- enum
- {
- _S_iminus,
- _S_iplus,
- _S_ix,
- _S_iX,
+ enum
+ {
+ _S_iminus,
+ _S_iplus,
+ _S_ix,
+ _S_iX,
_S_izero,
_S_ie = _S_izero + 14,
_S_iE = _S_izero + 20,
@@ -1588,36 +1589,36 @@ namespace std
template<typename _CharT>
struct __numpunct_cache : public locale::facet
{
- const char* _M_grouping;
+ const char* _M_grouping;
size_t _M_grouping_size;
bool _M_use_grouping;
- const _CharT* _M_truename;
+ const _CharT* _M_truename;
size_t _M_truename_size;
const _CharT* _M_falsename;
- size_t _M_falsename_size;
- _CharT _M_decimal_point;
- _CharT _M_thousands_sep;
-
+ size_t _M_falsename_size;
+ _CharT _M_decimal_point;
+ _CharT _M_thousands_sep;
+
// A list of valid numeric literals for output: in the standard
// "C" locale, this is "-+xX0123456789abcdef0123456789ABCDEF".
// This array contains the chars after having been passed
// through the current locale's ctype<_CharT>.widen().
- _CharT _M_atoms_out[__num_base::_S_oend];
+ _CharT _M_atoms_out[__num_base::_S_oend];
// A list of valid numeric literals for input: in the standard
// "C" locale, this is "-+xX0123456789abcdefABCDEF"
// This array contains the chars after having been passed
// through the current locale's ctype<_CharT>.widen().
- _CharT _M_atoms_in[__num_base::_S_iend];
+ _CharT _M_atoms_in[__num_base::_S_iend];
bool _M_allocated;
- __numpunct_cache(size_t __refs = 0) : facet(__refs),
+ __numpunct_cache(size_t __refs = 0) : facet(__refs),
_M_grouping(NULL), _M_grouping_size(0), _M_use_grouping(false),
_M_truename(NULL), _M_truename_size(0), _M_falsename(NULL),
_M_falsename_size(0), _M_decimal_point(_CharT()),
_M_thousands_sep(_CharT()), _M_allocated(false)
- { }
+ { }
~__numpunct_cache();
@@ -1626,40 +1627,6 @@ namespace std
};
template<typename _CharT>
- void
- __numpunct_cache<_CharT>::_M_cache(const locale& __loc)
- {
- _M_allocated = true;
-
- const numpunct<_CharT>& __np = use_facet<numpunct<_CharT> >(__loc);
-
- _M_grouping_size = __np.grouping().size();
- char* __grouping = new char[_M_grouping_size];
- __np.grouping().copy(__grouping, _M_grouping_size);
- _M_grouping = __grouping;
- _M_use_grouping = _M_grouping_size && __np.grouping()[0] != 0;
-
- _M_truename_size = __np.truename().size();
- _CharT* __truename = new _CharT[_M_truename_size];
- __np.truename().copy(__truename, _M_truename_size);
- _M_truename = __truename;
-
- _M_falsename_size = __np.falsename().size();
- _CharT* __falsename = new _CharT[_M_falsename_size];
- __np.falsename().copy(__falsename, _M_falsename_size);
- _M_falsename = __falsename;
-
- _M_decimal_point = __np.decimal_point();
- _M_thousands_sep = __np.thousands_sep();
-
- const ctype<_CharT>& __ct = use_facet<ctype<_CharT> >(__loc);
- __ct.widen(__num_base::_S_atoms_out,
- __num_base::_S_atoms_out + __num_base::_S_oend, _M_atoms_out);
- __ct.widen(__num_base::_S_atoms_in,
- __num_base::_S_atoms_in + __num_base::_S_iend, _M_atoms_in);
- }
-
- template<typename _CharT>
__numpunct_cache<_CharT>::~__numpunct_cache()
{
if (_M_allocated)
@@ -1690,8 +1657,8 @@ namespace std
// Types:
//@{
/// Public typedefs
- typedef _CharT char_type;
- typedef basic_string<_CharT> string_type;
+ typedef _CharT char_type;
+ typedef basic_string<_CharT> string_type;
//@}
typedef __numpunct_cache<_CharT> __cache_type;
@@ -1700,14 +1667,14 @@ namespace std
public:
/// Numpunct facet id.
- static locale::id id;
+ static locale::id id;
/**
* @brief Numpunct constructor.
*
* @param refs Refcount to pass to the base class.
*/
- explicit
+ explicit
numpunct(size_t __refs = 0) : facet(__refs), _M_data(NULL)
{ _M_initialize_numpunct(); }
@@ -1720,8 +1687,8 @@ namespace std
* @param cache __numpunct_cache object.
* @param refs Refcount to pass to the base class.
*/
- explicit
- numpunct(__cache_type* __cache, size_t __refs = 0)
+ explicit
+ numpunct(__cache_type* __cache, size_t __refs = 0)
: facet(__refs), _M_data(__cache)
{ _M_initialize_numpunct(); }
@@ -1734,8 +1701,8 @@ namespace std
* @param cloc The "C" locale.
* @param refs Refcount to pass to the base class.
*/
- explicit
- numpunct(__c_locale __cloc, size_t __refs = 0)
+ explicit
+ numpunct(__c_locale __cloc, size_t __refs = 0)
: facet(__refs), _M_data(NULL)
{ _M_initialize_numpunct(__cloc); }
@@ -1748,20 +1715,20 @@ namespace std
*
* @return @a char_type representing a decimal point.
*/
- char_type
+ char_type
decimal_point() const
{ return this->do_decimal_point(); }
/**
* @brief Return thousands separator character.
*
- * This function returns a char_type to use as a thousands separator. It
- * does so by returning returning
+ * This function returns a char_type to use as a thousands
+ * separator. It does so by returning returning
* numpunct<char_type>::do_thousands_sep().
*
* @return char_type representing a thousands separator.
*/
- char_type
+ char_type
thousands_sep() const
{ return this->do_thousands_sep(); }
@@ -1772,25 +1739,27 @@ namespace std
* integer part of a number. Groupings indicate where thousands
* separators should be inserted in the integer part of a number.
*
- * Each char in the return string is interpret as an integer rather
- * than a character. These numbers represent the number of digits in a
- * group. The first char in the string represents the number of digits
- * in the least significant group. If a char is negative, it indicates
- * an unlimited number of digits for the group. If more chars from the
+ * Each char in the return string is interpret as an integer
+ * rather than a character. These numbers represent the number
+ * of digits in a group. The first char in the string
+ * represents the number of digits in the least significant
+ * group. If a char is negative, it indicates an unlimited
+ * number of digits for the group. If more chars from the
* string are required to group a number, the last char is used
* repeatedly.
*
- * For example, if the grouping() returns "\003\002" and is applied to
- * the number 123456789, this corresponds to 12,34,56,789. Note that
- * if the string was "32", this would put more than 50 digits into the
- * least significant group if the character set is ASCII.
+ * For example, if the grouping() returns "\003\002" and is
+ * applied to the number 123456789, this corresponds to
+ * 12,34,56,789. Note that if the string was "32", this would
+ * put more than 50 digits into the least significant group if
+ * the character set is ASCII.
*
* The string is returned by calling
* numpunct<char_type>::do_grouping().
*
* @return string representing grouping specification.
*/
- string
+ string
grouping() const
{ return this->do_grouping(); }
@@ -1803,7 +1772,7 @@ namespace std
*
* @return string_type representing printed form of true.
*/
- string_type
+ string_type
truename() const
{ return this->do_truename(); }
@@ -1816,13 +1785,13 @@ namespace std
*
* @return string_type representing printed form of false.
*/
- string_type
+ string_type
falsename() const
{ return this->do_falsename(); }
protected:
/// Destructor.
- virtual
+ virtual
~numpunct();
/**
@@ -1833,7 +1802,7 @@ namespace std
*
* @return @a char_type representing a decimal point.
*/
- virtual char_type
+ virtual char_type
do_decimal_point() const
{ return _M_data->_M_decimal_point; }
@@ -1845,7 +1814,7 @@ namespace std
*
* @return @a char_type representing a thousands separator.
*/
- virtual char_type
+ virtual char_type
do_thousands_sep() const
{ return _M_data->_M_thousands_sep; }
@@ -1889,25 +1858,25 @@ namespace std
{ return _M_data->_M_falsename; }
// For use at construction time only.
- void
+ void
_M_initialize_numpunct(__c_locale __cloc = NULL);
};
template<typename _CharT>
locale::id numpunct<_CharT>::id;
- template<>
+ template<>
numpunct<char>::~numpunct();
- template<>
+ template<>
void
numpunct<char>::_M_initialize_numpunct(__c_locale __cloc);
#ifdef _GLIBCXX_USE_WCHAR_T
- template<>
+ template<>
numpunct<wchar_t>::~numpunct();
- template<>
+ template<>
void
numpunct<wchar_t>::_M_initialize_numpunct(__c_locale __cloc);
#endif
@@ -1916,10 +1885,10 @@ namespace std
class numpunct_byname : public numpunct<_CharT>
{
public:
- typedef _CharT char_type;
- typedef basic_string<_CharT> string_type;
+ typedef _CharT char_type;
+ typedef basic_string<_CharT> string_type;
- explicit
+ explicit
numpunct_byname(const char* __s, size_t __refs = 0)
: numpunct<_CharT>(__refs)
{
@@ -1927,14 +1896,14 @@ namespace std
{
__c_locale __tmp;
this->_S_create_c_locale(__tmp, __s);
- this->_M_initialize_numpunct(__tmp);
- this->_S_destroy_c_locale(__tmp);
+ this->_M_initialize_numpunct(__tmp);
+ this->_S_destroy_c_locale(__tmp);
}
}
protected:
- virtual
- ~numpunct_byname() { }
+ virtual
+ ~numpunct_byname() { }
};
/**
@@ -1950,18 +1919,18 @@ namespace std
* implement the behavior they require from the num_get facet.
*/
template<typename _CharT, typename _InIter>
- class num_get : public locale::facet, public __num_base
+ class num_get : public locale::facet
{
public:
// Types:
//@{
/// Public typedefs
- typedef _CharT char_type;
- typedef _InIter iter_type;
+ typedef _CharT char_type;
+ typedef _InIter iter_type;
//@}
/// Numpunct facet id.
- static locale::id id;
+ static locale::id id;
/**
* @brief Constructor performs initialization.
@@ -1970,7 +1939,7 @@ namespace std
*
* @param refs Passed to the base facet class.
*/
- explicit
+ explicit
num_get(size_t __refs = 0) : facet(__refs) { }
/**
@@ -1979,10 +1948,11 @@ namespace std
* Parses the input stream into the bool @a v. It does so by calling
* num_put::do_put().
*
- * If ios_base::boolalpha is set, attempts to read ctype<CharT>::truename() or
- * ctype<CharT>::falsename(). Sets @a v to true or false if
- * successful. Sets err to ios_base::failbit if reading the string
- * fails. Sets err to ios_base::eofbit if the stream is emptied.
+ * If ios_base::boolalpha is set, attempts to read
+ * ctype<CharT>::truename() or ctype<CharT>::falsename(). Sets
+ * @a v to true or false if successful. Sets err to
+ * ios_base::failbit if reading the string fails. Sets err to
+ * ios_base::eofbit if the stream is emptied.
*
* If ios_base::boolalpha is not set, proceeds as with reading a long,
* except if the value is 1, sets @a v to true, if the value is 0, sets
@@ -1995,7 +1965,7 @@ namespace std
* @param v Value to format and insert.
* @return Iterator after reading.
*/
- iter_type
+ iter_type
get(iter_type __in, iter_type __end, ios_base& __io,
ios_base::iostate& __err, bool& __v) const
{ return this->do_get(__in, __end, __io, __err, __v); }
@@ -2032,32 +2002,32 @@ namespace std
* @return Iterator after reading.
*/
iter_type
- get(iter_type __in, iter_type __end, ios_base& __io,
+ get(iter_type __in, iter_type __end, ios_base& __io,
ios_base::iostate& __err, long& __v) const
{ return this->do_get(__in, __end, __io, __err, __v); }
- iter_type
+ iter_type
get(iter_type __in, iter_type __end, ios_base& __io,
ios_base::iostate& __err, unsigned short& __v) const
{ return this->do_get(__in, __end, __io, __err, __v); }
- iter_type
+ iter_type
get(iter_type __in, iter_type __end, ios_base& __io,
ios_base::iostate& __err, unsigned int& __v) const
{ return this->do_get(__in, __end, __io, __err, __v); }
- iter_type
+ iter_type
get(iter_type __in, iter_type __end, ios_base& __io,
ios_base::iostate& __err, unsigned long& __v) const
{ return this->do_get(__in, __end, __io, __err, __v); }
#ifdef _GLIBCXX_USE_LONG_LONG
- iter_type
+ iter_type
get(iter_type __in, iter_type __end, ios_base& __io,
ios_base::iostate& __err, long long& __v) const
{ return this->do_get(__in, __end, __io, __err, __v); }
- iter_type
+ iter_type
get(iter_type __in, iter_type __end, ios_base& __io,
ios_base::iostate& __err, unsigned long long& __v) const
{ return this->do_get(__in, __end, __io, __err, __v); }
@@ -2090,17 +2060,17 @@ namespace std
* @param v Value to format and insert.
* @return Iterator after reading.
*/
- iter_type
+ iter_type
get(iter_type __in, iter_type __end, ios_base& __io,
ios_base::iostate& __err, float& __v) const
{ return this->do_get(__in, __end, __io, __err, __v); }
- iter_type
+ iter_type
get(iter_type __in, iter_type __end, ios_base& __io,
ios_base::iostate& __err, double& __v) const
{ return this->do_get(__in, __end, __io, __err, __v); }
- iter_type
+ iter_type
get(iter_type __in, iter_type __end, ios_base& __io,
ios_base::iostate& __err, long double& __v) const
{ return this->do_get(__in, __end, __io, __err, __v); }
@@ -2132,22 +2102,22 @@ namespace std
* @param v Value to format and insert.
* @return Iterator after reading.
*/
- iter_type
+ iter_type
get(iter_type __in, iter_type __end, ios_base& __io,
ios_base::iostate& __err, void*& __v) const
- { return this->do_get(__in, __end, __io, __err, __v); }
+ { return this->do_get(__in, __end, __io, __err, __v); }
protected:
/// Destructor.
virtual ~num_get() { }
- iter_type
- _M_extract_float(iter_type, iter_type, ios_base&, ios_base::iostate&,
+ iter_type
+ _M_extract_float(iter_type, iter_type, ios_base&, ios_base::iostate&,
string& __xtrc) const;
template<typename _ValueT>
- iter_type
- _M_extract_int(iter_type, iter_type, ios_base&, ios_base::iostate&,
+ iter_type
+ _M_extract_int(iter_type, iter_type, ios_base&, ios_base::iostate&,
_ValueT& __v) const;
//@{
@@ -2165,49 +2135,49 @@ namespace std
* @param v Value to format and insert.
* @return Iterator after reading.
*/
- virtual iter_type
+ virtual iter_type
do_get(iter_type, iter_type, ios_base&, ios_base::iostate&, bool&) const;
- virtual iter_type
+ virtual iter_type
do_get(iter_type, iter_type, ios_base&, ios_base::iostate&, long&) const;
- virtual iter_type
- do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
+ virtual iter_type
+ do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
unsigned short&) const;
- virtual iter_type
- do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
+ virtual iter_type
+ do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
unsigned int&) const;
- virtual iter_type
- do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
+ virtual iter_type
+ do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
unsigned long&) const;
-#ifdef _GLIBCXX_USE_LONG_LONG
- virtual iter_type
- do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
+#ifdef _GLIBCXX_USE_LONG_LONG
+ virtual iter_type
+ do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
long long&) const;
- virtual iter_type
- do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
+ virtual iter_type
+ do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
unsigned long long&) const;
#endif
- virtual iter_type
- do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
+ virtual iter_type
+ do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
float&) const;
- virtual iter_type
- do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
+ virtual iter_type
+ do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
double&) const;
- virtual iter_type
- do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
+ virtual iter_type
+ do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
long double&) const;
- virtual iter_type
- do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
+ virtual iter_type
+ do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
void*&) const;
//@}
};
@@ -2228,14 +2198,14 @@ namespace std
* implement the behavior they require from the num_put facet.
*/
template<typename _CharT, typename _OutIter>
- class num_put : public locale::facet, public __num_base
+ class num_put : public locale::facet
{
public:
// Types:
//@{
/// Public typedefs
- typedef _CharT char_type;
- typedef _OutIter iter_type;
+ typedef _CharT char_type;
+ typedef _OutIter iter_type;
//@}
/// Numpunct facet id.
@@ -2248,7 +2218,7 @@ namespace std
*
* @param refs Passed to the base facet class.
*/
- explicit
+ explicit
num_put(size_t __refs = 0) : facet(__refs) { }
/**
@@ -2266,7 +2236,7 @@ namespace std
* @param v Value to format and insert.
* @return Iterator after writing.
*/
- iter_type
+ iter_type
put(iter_type __s, ios_base& __f, char_type __fill, bool __v) const
{ return this->do_put(__s, __f, __fill, __v); }
@@ -2274,8 +2244,8 @@ namespace std
/**
* @brief Numeric formatting.
*
- * Formats the integral value @a v and inserts it into a stream. It does so
- * by calling num_put::do_put().
+ * Formats the integral value @a v and inserts it into a
+ * stream. It does so by calling num_put::do_put().
*
* Formatting is affected by the flag settings in @a io.
*
@@ -2308,22 +2278,22 @@ namespace std
* @param v Value to format and insert.
* @return Iterator after writing.
*/
- iter_type
+ iter_type
put(iter_type __s, ios_base& __f, char_type __fill, long __v) const
{ return this->do_put(__s, __f, __fill, __v); }
- iter_type
- put(iter_type __s, ios_base& __f, char_type __fill,
+ iter_type
+ put(iter_type __s, ios_base& __f, char_type __fill,
unsigned long __v) const
{ return this->do_put(__s, __f, __fill, __v); }
-#ifdef _GLIBCXX_USE_LONG_LONG
- iter_type
+#ifdef _GLIBCXX_USE_LONG_LONG
+ iter_type
put(iter_type __s, ios_base& __f, char_type __fill, long long __v) const
{ return this->do_put(__s, __f, __fill, __v); }
- iter_type
- put(iter_type __s, ios_base& __f, char_type __fill,
+ iter_type
+ put(iter_type __s, ios_base& __f, char_type __fill,
unsigned long long __v) const
{ return this->do_put(__s, __f, __fill, __v); }
#endif
@@ -2371,12 +2341,12 @@ namespace std
* @param v Value to format and insert.
* @return Iterator after writing.
*/
- iter_type
+ iter_type
put(iter_type __s, ios_base& __f, char_type __fill, double __v) const
{ return this->do_put(__s, __f, __fill, __v); }
- iter_type
- put(iter_type __s, ios_base& __f, char_type __fill,
+ iter_type
+ put(iter_type __s, ios_base& __f, char_type __fill,
long double __v) const
{ return this->do_put(__s, __f, __fill, __v); }
//@}
@@ -2396,15 +2366,15 @@ namespace std
* @param v Value to format and insert.
* @return Iterator after writing.
*/
- iter_type
- put(iter_type __s, ios_base& __f, char_type __fill,
+ iter_type
+ put(iter_type __s, ios_base& __f, char_type __fill,
const void* __v) const
{ return this->do_put(__s, __f, __fill, __v); }
protected:
template<typename _ValueT>
iter_type
- _M_insert_float(iter_type, ios_base& __io, char_type __fill,
+ _M_insert_float(iter_type, ios_base& __io, char_type __fill,
char __mod, _ValueT __v) const;
void
@@ -2414,7 +2384,7 @@ namespace std
template<typename _ValueT>
iter_type
- _M_insert_int(iter_type, ios_base& __io, char_type __fill,
+ _M_insert_int(iter_type, ios_base& __io, char_type __fill,
_ValueT __v) const;
void
@@ -2423,11 +2393,11 @@ namespace std
char_type* __cs, int& __len) const;
void
- _M_pad(char_type __fill, streamsize __w, ios_base& __io,
+ _M_pad(char_type __fill, streamsize __w, ios_base& __io,
char_type* __new, const char_type* __cs, int& __len) const;
/// Destructor.
- virtual
+ virtual
~num_put() { };
//@{
@@ -2444,30 +2414,30 @@ namespace std
* @param v Value to format and insert.
* @return Iterator after writing.
*/
- virtual iter_type
+ virtual iter_type
do_put(iter_type, ios_base&, char_type __fill, bool __v) const;
- virtual iter_type
+ virtual iter_type
do_put(iter_type, ios_base&, char_type __fill, long __v) const;
- virtual iter_type
+ virtual iter_type
do_put(iter_type, ios_base&, char_type __fill, unsigned long) const;
-#ifdef _GLIBCXX_USE_LONG_LONG
- virtual iter_type
+#ifdef _GLIBCXX_USE_LONG_LONG
+ virtual iter_type
do_put(iter_type, ios_base&, char_type __fill, long long __v) const;
virtual iter_type
do_put(iter_type, ios_base&, char_type __fill, unsigned long long) const;
#endif
- virtual iter_type
+ virtual iter_type
do_put(iter_type, ios_base&, char_type __fill, double __v) const;
- virtual iter_type
+ virtual iter_type
do_put(iter_type, ios_base&, char_type __fill, long double __v) const;
- virtual iter_type
+ virtual iter_type
do_put(iter_type, ios_base&, char_type __fill, const void* __v) const;
//@}
};
@@ -2495,18 +2465,18 @@ namespace std
// Types:
//@{
/// Public typedefs
- typedef _CharT char_type;
- typedef basic_string<_CharT> string_type;
+ typedef _CharT char_type;
+ typedef basic_string<_CharT> string_type;
//@}
protected:
// Underlying "C" library locale information saved from
// initialization, needed by collate_byname as well.
__c_locale _M_c_locale_collate;
-
+
public:
/// Numpunct facet id.
- static locale::id id;
+ static locale::id id;
/**
* @brief Constructor performs initialization.
@@ -2515,7 +2485,7 @@ namespace std
*
* @param refs Passed to the base facet class.
*/
- explicit
+ explicit
collate(size_t __refs = 0)
: facet(__refs)
{ _M_c_locale_collate = _S_get_c_locale(); }
@@ -2529,8 +2499,8 @@ namespace std
* @param cloc The "C" locale.
* @param refs Passed to the base facet class.
*/
- explicit
- collate(__c_locale __cloc, size_t __refs = 0)
+ explicit
+ collate(__c_locale __cloc, size_t __refs = 0)
: facet(__refs)
{ _M_c_locale_collate = _S_clone_c_locale(__cloc); }
@@ -2546,7 +2516,7 @@ namespace std
* @param hi2 End of string 2.
* @return 1 if string1 > string2, -1 if string1 < string2, else 0.
*/
- int
+ int
compare(const _CharT* __lo1, const _CharT* __hi1,
const _CharT* __lo2, const _CharT* __hi2) const
{ return this->do_compare(__lo1, __hi1, __lo2, __hi2); }
@@ -2565,7 +2535,7 @@ namespace std
* @param hi End of string.
* @return Transformed string_type.
*/
- string_type
+ string_type
transform(const _CharT* __lo, const _CharT* __hi) const
{ return this->do_transform(__lo, __hi); }
@@ -2579,10 +2549,10 @@ namespace std
* @param hi End of string.
* @return Hash value.
*/
- long
+ long
hash(const _CharT* __lo, const _CharT* __hi) const
{ return this->do_hash(__lo, __hi); }
-
+
// Used to abstract out _CharT bits in virtual member functions, below.
int
_M_compare(const _CharT*, const _CharT*) const;
@@ -2593,7 +2563,7 @@ namespace std
protected:
/// Destructor.
virtual
- ~collate()
+ ~collate()
{ _S_destroy_c_locale(_M_c_locale_collate); }
/**
@@ -2608,7 +2578,7 @@ namespace std
* @param hi2 End of string 2.
* @return 1 if string1 > string2, -1 if string1 < string2, else 0.
*/
- virtual int
+ virtual int
do_compare(const _CharT* __lo1, const _CharT* __hi1,
const _CharT* __lo2, const _CharT* __hi2) const;
@@ -2624,7 +2594,7 @@ namespace std
* @param hi2 End of string 2.
* @return 1 if string1 > string2, -1 if string1 < string2, else 0.
*/
- virtual string_type
+ virtual string_type
do_transform(const _CharT* __lo, const _CharT* __hi) const;
/**
@@ -2637,7 +2607,7 @@ namespace std
* @param hi End of string.
* @return Hash value.
*/
- virtual long
+ virtual long
do_hash(const _CharT* __lo, const _CharT* __hi) const;
};
@@ -2646,7 +2616,7 @@ namespace std
// Specializations.
template<>
- int
+ int
collate<char>::_M_compare(const char*, const char*) const;
template<>
@@ -2655,7 +2625,7 @@ namespace std
#ifdef _GLIBCXX_USE_WCHAR_T
template<>
- int
+ int
collate<wchar_t>::_M_compare(const wchar_t*, const wchar_t*) const;
template<>
@@ -2673,19 +2643,19 @@ namespace std
typedef basic_string<_CharT> string_type;
//@}
- explicit
+ explicit
collate_byname(const char* __s, size_t __refs = 0)
- : collate<_CharT>(__refs)
- {
+ : collate<_CharT>(__refs)
+ {
if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0)
{
this->_S_destroy_c_locale(this->_M_c_locale_collate);
- this->_S_create_c_locale(this->_M_c_locale_collate, __s);
+ this->_S_create_c_locale(this->_M_c_locale_collate, __s);
}
}
protected:
- virtual
+ virtual
~collate_byname() { }
};
@@ -2706,82 +2676,82 @@ namespace std
struct __timepunct_cache : public locale::facet
{
// List of all known timezones, with GMT first.
- static const _CharT* _S_timezones[14];
+ static const _CharT* _S_timezones[14];
- const _CharT* _M_date_format;
- const _CharT* _M_date_era_format;
- const _CharT* _M_time_format;
- const _CharT* _M_time_era_format;
+ const _CharT* _M_date_format;
+ const _CharT* _M_date_era_format;
+ const _CharT* _M_time_format;
+ const _CharT* _M_time_era_format;
const _CharT* _M_date_time_format;
const _CharT* _M_date_time_era_format;
- const _CharT* _M_am;
- const _CharT* _M_pm;
+ const _CharT* _M_am;
+ const _CharT* _M_pm;
const _CharT* _M_am_pm_format;
// Day names, starting with "C"'s Sunday.
- const _CharT* _M_day1;
- const _CharT* _M_day2;
- const _CharT* _M_day3;
- const _CharT* _M_day4;
- const _CharT* _M_day5;
- const _CharT* _M_day6;
- const _CharT* _M_day7;
+ const _CharT* _M_day1;
+ const _CharT* _M_day2;
+ const _CharT* _M_day3;
+ const _CharT* _M_day4;
+ const _CharT* _M_day5;
+ const _CharT* _M_day6;
+ const _CharT* _M_day7;
// Abbreviated day names, starting with "C"'s Sun.
- const _CharT* _M_aday1;
- const _CharT* _M_aday2;
- const _CharT* _M_aday3;
- const _CharT* _M_aday4;
- const _CharT* _M_aday5;
- const _CharT* _M_aday6;
- const _CharT* _M_aday7;
+ const _CharT* _M_aday1;
+ const _CharT* _M_aday2;
+ const _CharT* _M_aday3;
+ const _CharT* _M_aday4;
+ const _CharT* _M_aday5;
+ const _CharT* _M_aday6;
+ const _CharT* _M_aday7;
// Month names, starting with "C"'s January.
- const _CharT* _M_month01;
- const _CharT* _M_month02;
- const _CharT* _M_month03;
- const _CharT* _M_month04;
- const _CharT* _M_month05;
- const _CharT* _M_month06;
- const _CharT* _M_month07;
- const _CharT* _M_month08;
- const _CharT* _M_month09;
- const _CharT* _M_month10;
- const _CharT* _M_month11;
- const _CharT* _M_month12;
+ const _CharT* _M_month01;
+ const _CharT* _M_month02;
+ const _CharT* _M_month03;
+ const _CharT* _M_month04;
+ const _CharT* _M_month05;
+ const _CharT* _M_month06;
+ const _CharT* _M_month07;
+ const _CharT* _M_month08;
+ const _CharT* _M_month09;
+ const _CharT* _M_month10;
+ const _CharT* _M_month11;
+ const _CharT* _M_month12;
// Abbreviated month names, starting with "C"'s Jan.
- const _CharT* _M_amonth01;
- const _CharT* _M_amonth02;
- const _CharT* _M_amonth03;
- const _CharT* _M_amonth04;
- const _CharT* _M_amonth05;
- const _CharT* _M_amonth06;
- const _CharT* _M_amonth07;
- const _CharT* _M_amonth08;
- const _CharT* _M_amonth09;
- const _CharT* _M_amonth10;
- const _CharT* _M_amonth11;
- const _CharT* _M_amonth12;
+ const _CharT* _M_amonth01;
+ const _CharT* _M_amonth02;
+ const _CharT* _M_amonth03;
+ const _CharT* _M_amonth04;
+ const _CharT* _M_amonth05;
+ const _CharT* _M_amonth06;
+ const _CharT* _M_amonth07;
+ const _CharT* _M_amonth08;
+ const _CharT* _M_amonth09;
+ const _CharT* _M_amonth10;
+ const _CharT* _M_amonth11;
+ const _CharT* _M_amonth12;
bool _M_allocated;
- __timepunct_cache(size_t __refs = 0) : facet(__refs),
+ __timepunct_cache(size_t __refs = 0) : facet(__refs),
_M_date_format(NULL), _M_date_era_format(NULL), _M_time_format(NULL),
- _M_time_era_format(NULL), _M_date_time_format(NULL),
- _M_date_time_era_format(NULL), _M_am(NULL), _M_pm(NULL),
- _M_am_pm_format(NULL), _M_day1(NULL), _M_day2(NULL), _M_day3(NULL),
- _M_day4(NULL), _M_day5(NULL), _M_day6(NULL), _M_day7(NULL),
- _M_aday1(NULL), _M_aday2(NULL), _M_aday3(NULL), _M_aday4(NULL),
+ _M_time_era_format(NULL), _M_date_time_format(NULL),
+ _M_date_time_era_format(NULL), _M_am(NULL), _M_pm(NULL),
+ _M_am_pm_format(NULL), _M_day1(NULL), _M_day2(NULL), _M_day3(NULL),
+ _M_day4(NULL), _M_day5(NULL), _M_day6(NULL), _M_day7(NULL),
+ _M_aday1(NULL), _M_aday2(NULL), _M_aday3(NULL), _M_aday4(NULL),
_M_aday5(NULL), _M_aday6(NULL), _M_aday7(NULL), _M_month01(NULL),
- _M_month02(NULL), _M_month03(NULL), _M_month04(NULL), _M_month05(NULL),
- _M_month06(NULL), _M_month07(NULL), _M_month08(NULL), _M_month09(NULL),
+ _M_month02(NULL), _M_month03(NULL), _M_month04(NULL), _M_month05(NULL),
+ _M_month06(NULL), _M_month07(NULL), _M_month08(NULL), _M_month09(NULL),
_M_month10(NULL), _M_month11(NULL), _M_month12(NULL), _M_amonth01(NULL),
- _M_amonth02(NULL), _M_amonth03(NULL), _M_amonth04(NULL),
- _M_amonth05(NULL), _M_amonth06(NULL), _M_amonth07(NULL),
- _M_amonth08(NULL), _M_amonth09(NULL), _M_amonth10(NULL),
+ _M_amonth02(NULL), _M_amonth03(NULL), _M_amonth04(NULL),
+ _M_amonth05(NULL), _M_amonth06(NULL), _M_amonth07(NULL),
+ _M_amonth08(NULL), _M_amonth09(NULL), _M_amonth10(NULL),
_M_amonth11(NULL), _M_amonth12(NULL), _M_allocated(false)
- { }
+ { }
~__timepunct_cache();
@@ -2794,17 +2764,17 @@ namespace std
{
if (_M_allocated)
{
- // XXX.
+ // Unused.
}
}
// Specializations.
- template<>
+ template<>
const char*
__timepunct_cache<char>::_S_timezones[14];
#ifdef _GLIBCXX_USE_WCHAR_T
- template<>
+ template<>
const wchar_t*
__timepunct_cache<wchar_t>::_S_timezones[14];
#endif
@@ -2818,8 +2788,8 @@ namespace std
{
public:
// Types:
- typedef _CharT __char_type;
- typedef basic_string<_CharT> __string_type;
+ typedef _CharT __char_type;
+ typedef basic_string<_CharT> __string_type;
typedef __timepunct_cache<_CharT> __cache_type;
protected:
@@ -2829,12 +2799,12 @@ namespace std
public:
/// Numpunct facet id.
- static locale::id id;
+ static locale::id id;
- explicit
+ explicit
__timepunct(size_t __refs = 0);
- explicit
+ explicit
__timepunct(__cache_type* __cache, size_t __refs = 0);
/**
@@ -2847,11 +2817,11 @@ namespace std
* @param s The name of a locale.
* @param refs Passed to the base facet class.
*/
- explicit
+ explicit
__timepunct(__c_locale __cloc, const char* __s, size_t __refs = 0);
void
- _M_put(_CharT* __s, size_t __maxlen, const _CharT* __format,
+ _M_put(_CharT* __s, size_t __maxlen, const _CharT* __format,
const tm* __tm) const;
void
@@ -2859,7 +2829,7 @@ namespace std
{
// Always have default first.
__date[0] = _M_data->_M_date_format;
- __date[1] = _M_data->_M_date_era_format;
+ __date[1] = _M_data->_M_date_era_format;
}
void
@@ -2867,27 +2837,31 @@ namespace std
{
// Always have default first.
__time[0] = _M_data->_M_time_format;
- __time[1] = _M_data->_M_time_era_format;
+ __time[1] = _M_data->_M_time_era_format;
}
void
- _M_ampm(const _CharT** __ampm) const
- {
- __ampm[0] = _M_data->_M_am;
- __ampm[1] = _M_data->_M_pm;
- }
-
- void
_M_date_time_formats(const _CharT** __dt) const
{
// Always have default first.
__dt[0] = _M_data->_M_date_time_format;
- __dt[1] = _M_data->_M_date_time_era_format;
+ __dt[1] = _M_data->_M_date_time_era_format;
+ }
+
+ void
+ _M_am_pm_format(const _CharT* __ampm) const
+ { __ampm = _M_data->_M_am_pm_format; }
+
+ void
+ _M_am_pm(const _CharT** __ampm) const
+ {
+ __ampm[0] = _M_data->_M_am;
+ __ampm[1] = _M_data->_M_pm;
}
void
_M_days(const _CharT** __days) const
- {
+ {
__days[0] = _M_data->_M_day1;
__days[1] = _M_data->_M_day2;
__days[2] = _M_data->_M_day3;
@@ -2899,7 +2873,7 @@ namespace std
void
_M_days_abbreviated(const _CharT** __days) const
- {
+ {
__days[0] = _M_data->_M_aday1;
__days[1] = _M_data->_M_aday2;
__days[2] = _M_data->_M_aday3;
@@ -2911,7 +2885,7 @@ namespace std
void
_M_months(const _CharT** __months) const
- {
+ {
__months[0] = _M_data->_M_month01;
__months[1] = _M_data->_M_month02;
__months[2] = _M_data->_M_month03;
@@ -2928,7 +2902,7 @@ namespace std
void
_M_months_abbreviated(const _CharT** __months) const
- {
+ {
__months[0] = _M_data->_M_amonth01;
__months[1] = _M_data->_M_amonth02;
__months[2] = _M_data->_M_amonth03;
@@ -2944,11 +2918,11 @@ namespace std
}
protected:
- virtual
+ virtual
~__timepunct();
// For use at construction time only.
- void
+ void
_M_initialize_timepunct(__c_locale __cloc = NULL);
};
@@ -2956,7 +2930,7 @@ namespace std
locale::id __timepunct<_CharT>::id;
// Specializations.
- template<>
+ template<>
void
__timepunct<char>::_M_initialize_timepunct(__c_locale __cloc);
@@ -2965,13 +2939,13 @@ namespace std
__timepunct<char>::_M_put(char*, size_t, const char*, const tm*) const;
#ifdef _GLIBCXX_USE_WCHAR_T
- template<>
+ template<>
void
__timepunct<wchar_t>::_M_initialize_timepunct(__c_locale __cloc);
template<>
void
- __timepunct<wchar_t>::_M_put(wchar_t*, size_t, const wchar_t*,
+ __timepunct<wchar_t>::_M_put(wchar_t*, size_t, const wchar_t*,
const tm*) const;
#endif
@@ -2997,13 +2971,13 @@ namespace std
// Types:
//@{
/// Public typedefs
- typedef _CharT char_type;
- typedef _InIter iter_type;
+ typedef _CharT char_type;
+ typedef _InIter iter_type;
//@}
- typedef basic_string<_CharT> __string_type;
+ typedef basic_string<_CharT> __string_type;
/// Numpunct facet id.
- static locale::id id;
+ static locale::id id;
/**
* @brief Constructor performs initialization.
@@ -3012,8 +2986,8 @@ namespace std
*
* @param refs Passed to the base facet class.
*/
- explicit
- time_get(size_t __refs = 0)
+ explicit
+ time_get(size_t __refs = 0)
: facet (__refs) { }
/**
@@ -3023,13 +2997,13 @@ namespace std
* preferred ordering if the format "x" given to time_put::put() only
* uses month, day, and year. If the format "x" for the associated
* locale uses other fields, this function returns
- * timebase::dateorder::noorder.
+ * timebase::dateorder::noorder.
*
* NOTE: The library always returns noorder at the moment.
*
* @return A member of timebase::dateorder.
*/
- dateorder
+ dateorder
date_order() const
{ return this->do_date_order(); }
@@ -3053,8 +3027,8 @@ namespace std
* @param tm Pointer to struct tm to fill in.
* @return Iterator to first char beyond time string.
*/
- iter_type
- get_time(iter_type __beg, iter_type __end, ios_base& __io,
+ iter_type
+ get_time(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, tm* __tm) const
{ return this->do_get_time(__beg, __end, __io, __err, __tm); }
@@ -3078,7 +3052,7 @@ namespace std
* @param tm Pointer to struct tm to fill in.
* @return Iterator to first char beyond date string.
*/
- iter_type
+ iter_type
get_date(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, tm* __tm) const
{ return this->do_get_date(__beg, __end, __io, __err, __tm); }
@@ -3106,7 +3080,7 @@ namespace std
* @param tm Pointer to struct tm to fill in.
* @return Iterator to first char beyond weekday name.
*/
- iter_type
+ iter_type
get_weekday(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, tm* __tm) const
{ return this->do_get_weekday(__beg, __end, __io, __err, __tm); }
@@ -3135,8 +3109,8 @@ namespace std
* @param tm Pointer to struct tm to fill in.
* @return Iterator to first char beyond month name.
*/
- iter_type
- get_monthname(iter_type __beg, iter_type __end, ios_base& __io,
+ iter_type
+ get_monthname(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, tm* __tm) const
{ return this->do_get_monthname(__beg, __end, __io, __err, __tm); }
@@ -3161,14 +3135,14 @@ namespace std
* @param tm Pointer to struct tm to fill in.
* @return Iterator to first char beyond year.
*/
- iter_type
+ iter_type
get_year(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, tm* __tm) const
{ return this->do_get_year(__beg, __end, __io, __err, __tm); }
protected:
/// Destructor.
- virtual
+ virtual
~time_get() { }
/**
@@ -3181,7 +3155,7 @@ namespace std
*
* @return A member of timebase::dateorder.
*/
- virtual dateorder
+ virtual dateorder
do_date_order() const;
/**
@@ -3199,7 +3173,7 @@ namespace std
* @param tm Pointer to struct tm to fill in.
* @return Iterator to first char beyond time string.
*/
- virtual iter_type
+ virtual iter_type
do_get_time(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, tm* __tm) const;
@@ -3218,7 +3192,7 @@ namespace std
* @param tm Pointer to struct tm to fill in.
* @return Iterator to first char beyond date string.
*/
- virtual iter_type
+ virtual iter_type
do_get_date(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, tm* __tm) const;
@@ -3237,7 +3211,7 @@ namespace std
* @param tm Pointer to struct tm to fill in.
* @return Iterator to first char beyond weekday name.
*/
- virtual iter_type
+ virtual iter_type
do_get_weekday(iter_type __beg, iter_type __end, ios_base&,
ios_base::iostate& __err, tm* __tm) const;
@@ -3256,8 +3230,8 @@ namespace std
* @param tm Pointer to struct tm to fill in.
* @return Iterator to first char beyond month name.
*/
- virtual iter_type
- do_get_monthname(iter_type __beg, iter_type __end, ios_base&,
+ virtual iter_type
+ do_get_monthname(iter_type __beg, iter_type __end, ios_base&,
ios_base::iostate& __err, tm* __tm) const;
/**
@@ -3275,29 +3249,27 @@ namespace std
* @param tm Pointer to struct tm to fill in.
* @return Iterator to first char beyond year.
*/
- virtual iter_type
+ virtual iter_type
do_get_year(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, tm* __tm) const;
// Extract numeric component of length __len.
- void
- _M_extract_num(iter_type& __beg, iter_type& __end, int& __member,
+ iter_type
+ _M_extract_num(iter_type __beg, iter_type __end, int& __member,
int __min, int __max, size_t __len,
- const ctype<_CharT>& __ctype,
- ios_base::iostate& __err) const;
-
+ ios_base& __io, ios_base::iostate& __err) const;
+
// Extract day or month name, or any unique array of string
// literals in a const _CharT* array.
- void
- _M_extract_name(iter_type& __beg, iter_type& __end, int& __member,
- const _CharT** __names, size_t __indexlen,
- const ctype<_CharT>& __ctype,
- ios_base::iostate& __err) const;
+ iter_type
+ _M_extract_name(iter_type __beg, iter_type __end, int& __member,
+ const _CharT** __names, size_t __indexlen,
+ ios_base& __io, ios_base::iostate& __err) const;
// Extract on a component-by-component basis, via __format argument.
- void
- _M_extract_via_format(iter_type& __beg, iter_type& __end, ios_base& __io,
- ios_base::iostate& __err, tm* __tm,
+ iter_type
+ _M_extract_via_format(iter_type __beg, iter_type __end, ios_base& __io,
+ ios_base::iostate& __err, tm* __tm,
const _CharT* __format) const;
};
@@ -3309,15 +3281,15 @@ namespace std
{
public:
// Types:
- typedef _CharT char_type;
- typedef _InIter iter_type;
+ typedef _CharT char_type;
+ typedef _InIter iter_type;
- explicit
- time_get_byname(const char*, size_t __refs = 0)
+ explicit
+ time_get_byname(const char*, size_t __refs = 0)
: time_get<_CharT, _InIter>(__refs) { }
protected:
- virtual
+ virtual
~time_get_byname() { }
};
@@ -3333,18 +3305,18 @@ namespace std
* implement the behavior they require from the time_put facet.
*/
template<typename _CharT, typename _OutIter>
- class time_put : public locale::facet, public time_base
+ class time_put : public locale::facet
{
public:
// Types:
//@{
/// Public typedefs
- typedef _CharT char_type;
- typedef _OutIter iter_type;
+ typedef _CharT char_type;
+ typedef _OutIter iter_type;
//@}
/// Numpunct facet id.
- static locale::id id;
+ static locale::id id;
/**
* @brief Constructor performs initialization.
@@ -3353,8 +3325,8 @@ namespace std
*
* @param refs Passed to the base facet class.
*/
- explicit
- time_put(size_t __refs = 0)
+ explicit
+ time_put(size_t __refs = 0)
: facet(__refs) { }
/**
@@ -3372,8 +3344,8 @@ namespace std
* @param end End of format string.
* @return Iterator after writing.
*/
- iter_type
- put(iter_type __s, ios_base& __io, char_type __fill, const tm* __tm,
+ iter_type
+ put(iter_type __s, ios_base& __io, char_type __fill, const tm* __tm,
const _CharT* __beg, const _CharT* __end) const;
/**
@@ -3392,14 +3364,14 @@ namespace std
* @param mod Optional modifier char.
* @return Iterator after writing.
*/
- iter_type
+ iter_type
put(iter_type __s, ios_base& __io, char_type __fill,
const tm* __tm, char __format, char __mod = 0) const
{ return this->do_put(__s, __io, __fill, __tm, __format, __mod); }
protected:
/// Destructor.
- virtual
+ virtual
~time_put()
{ }
@@ -3419,8 +3391,8 @@ namespace std
* @param mod Optional modifier char.
* @return Iterator after writing.
*/
- virtual iter_type
- do_put(iter_type __s, ios_base& __io, char_type __fill, const tm* __tm,
+ virtual iter_type
+ do_put(iter_type __s, ios_base& __io, char_type __fill, const tm* __tm,
char __format, char __mod) const;
};
@@ -3432,16 +3404,16 @@ namespace std
{
public:
// Types:
- typedef _CharT char_type;
- typedef _OutIter iter_type;
+ typedef _CharT char_type;
+ typedef _OutIter iter_type;
- explicit
- time_put_byname(const char*, size_t __refs = 0)
- : time_put<_CharT, _OutIter>(__refs)
+ explicit
+ time_put_byname(const char*, size_t __refs = 0)
+ : time_put<_CharT, _OutIter>(__refs)
{ };
protected:
- virtual
+ virtual
~time_put_byname() { }
};
@@ -3464,35 +3436,58 @@ namespace std
static const pattern _S_default_pattern;
+ enum
+ {
+ _S_minus,
+ _S_zero,
+ _S_end = 11
+ };
+
+ // String literal of acceptable (narrow) input/output, for
+ // money_get/money_put. "-0123456789"
+ static const char* _S_atoms;
+
// Construct and return valid pattern consisting of some combination of:
// space none symbol sign value
- static pattern
+ static pattern
_S_construct_pattern(char __precedes, char __space, char __posn);
};
- template<typename _CharT>
+ template<typename _CharT, bool _Intl>
struct __moneypunct_cache : public locale::facet
{
- const char* _M_grouping;
+ const char* _M_grouping;
+ size_t _M_grouping_size;
bool _M_use_grouping;
- _CharT _M_decimal_point;
- _CharT _M_thousands_sep;
- const _CharT* _M_curr_symbol;
+ _CharT _M_decimal_point;
+ _CharT _M_thousands_sep;
+ const _CharT* _M_curr_symbol;
+ size_t _M_curr_symbol_size;
const _CharT* _M_positive_sign;
+ size_t _M_positive_sign_size;
const _CharT* _M_negative_sign;
- int _M_frac_digits;
- money_base::pattern _M_pos_format;
- money_base::pattern _M_neg_format;
+ size_t _M_negative_sign_size;
+ int _M_frac_digits;
+ money_base::pattern _M_pos_format;
+ money_base::pattern _M_neg_format;
+
+ // A list of valid numeric literals for input and output: in the standard
+ // "C" locale, this is "-0123456789". This array contains the chars after
+ // having been passed through the current locale's ctype<_CharT>.widen().
+ _CharT _M_atoms[money_base::_S_end];
bool _M_allocated;
- __moneypunct_cache(size_t __refs = 0) : facet(__refs),
- _M_grouping(NULL), _M_use_grouping(false), _M_decimal_point(_CharT()),
- _M_thousands_sep(_CharT()), _M_curr_symbol(NULL), _M_positive_sign(NULL),
- _M_negative_sign(NULL), _M_frac_digits(0),
- _M_pos_format(money_base::pattern()),
+ __moneypunct_cache(size_t __refs = 0) : facet(__refs),
+ _M_grouping(NULL), _M_grouping_size(0), _M_use_grouping(false),
+ _M_decimal_point(_CharT()), _M_thousands_sep(_CharT()),
+ _M_curr_symbol(NULL), _M_curr_symbol_size(0),
+ _M_positive_sign(NULL), _M_positive_sign_size(0),
+ _M_negative_sign(NULL), _M_negative_sign_size(0),
+ _M_frac_digits(0),
+ _M_pos_format(money_base::pattern()),
_M_neg_format(money_base::pattern()), _M_allocated(false)
- { }
+ { }
~__moneypunct_cache();
@@ -3500,12 +3495,15 @@ namespace std
_M_cache(const locale& __loc);
};
- template<typename _CharT>
- __moneypunct_cache<_CharT>::~__moneypunct_cache()
+ template<typename _CharT, bool _Intl>
+ __moneypunct_cache<_CharT, _Intl>::~__moneypunct_cache()
{
if (_M_allocated)
{
- // XXX.
+ delete [] _M_grouping;
+ delete [] _M_curr_symbol;
+ delete [] _M_positive_sign;
+ delete [] _M_negative_sign;
}
}
@@ -3522,10 +3520,10 @@ namespace std
// Types:
//@{
/// Public typedefs
- typedef _CharT char_type;
- typedef basic_string<_CharT> string_type;
+ typedef _CharT char_type;
+ typedef basic_string<_CharT> string_type;
//@}
- typedef __moneypunct_cache<_CharT> __cache_type;
+ typedef __moneypunct_cache<_CharT, _Intl> __cache_type;
private:
__cache_type* _M_data;
@@ -3533,9 +3531,9 @@ namespace std
public:
/// This value is provided by the standard, but no reason for its
/// existence.
- static const bool intl = _Intl;
+ static const bool intl = _Intl;
/// Numpunct facet id.
- static locale::id id;
+ static locale::id id;
/**
* @brief Constructor performs initialization.
@@ -3544,7 +3542,7 @@ namespace std
*
* @param refs Passed to the base facet class.
*/
- explicit
+ explicit
moneypunct(size_t __refs = 0) : facet(__refs), _M_data(NULL)
{ _M_initialize_moneypunct(); }
@@ -3556,8 +3554,8 @@ namespace std
* @param cache Cache for optimization.
* @param refs Passed to the base facet class.
*/
- explicit
- moneypunct(__cache_type* __cache, size_t __refs = 0)
+ explicit
+ moneypunct(__cache_type* __cache, size_t __refs = 0)
: facet(__refs), _M_data(__cache)
{ _M_initialize_moneypunct(); }
@@ -3571,8 +3569,8 @@ namespace std
* @param s The name of a locale.
* @param refs Passed to the base facet class.
*/
- explicit
- moneypunct(__c_locale __cloc, const char* __s, size_t __refs = 0)
+ explicit
+ moneypunct(__c_locale __cloc, const char* __s, size_t __refs = 0)
: facet(__refs), _M_data(NULL)
{ _M_initialize_moneypunct(__cloc, __s); }
@@ -3588,12 +3586,12 @@ namespace std
char_type
decimal_point() const
{ return this->do_decimal_point(); }
-
+
/**
* @brief Return thousands separator character.
*
- * This function returns a char_type to use as a thousands separator. It
- * does so by returning returning
+ * This function returns a char_type to use as a thousands
+ * separator. It does so by returning returning
* moneypunct<char_type>::do_thousands_sep().
*
* @return char_type representing a thousands separator.
@@ -3601,7 +3599,7 @@ namespace std
char_type
thousands_sep() const
{ return this->do_thousands_sep(); }
-
+
/**
* @brief Return grouping specification.
*
@@ -3627,7 +3625,7 @@ namespace std
*
* @return string representing grouping specification.
*/
- string
+ string
grouping() const
{ return this->do_grouping(); }
@@ -3640,7 +3638,7 @@ namespace std
*
* @return @a string_type representing a currency symbol.
*/
- string_type
+ string_type
curr_symbol() const
{ return this->do_curr_symbol(); }
@@ -3657,7 +3655,7 @@ namespace std
*
* @return @a string_type representing a positive sign.
*/
- string_type
+ string_type
positive_sign() const
{ return this->do_positive_sign(); }
@@ -3674,7 +3672,7 @@ namespace std
*
* @return @a string_type representing a negative sign.
*/
- string_type
+ string_type
negative_sign() const
{ return this->do_negative_sign(); }
@@ -3729,14 +3727,14 @@ namespace std
pos_format() const
{ return this->do_pos_format(); }
- pattern
+ pattern
neg_format() const
{ return this->do_neg_format(); }
//@}
protected:
/// Destructor.
- virtual
+ virtual
~moneypunct();
/**
@@ -3750,7 +3748,7 @@ namespace std
virtual char_type
do_decimal_point() const
{ return _M_data->_M_decimal_point; }
-
+
/**
* @brief Return thousands separator character.
*
@@ -3762,7 +3760,7 @@ namespace std
virtual char_type
do_thousands_sep() const
{ return _M_data->_M_thousands_sep; }
-
+
/**
* @brief Return grouping specification.
*
@@ -3772,7 +3770,7 @@ namespace std
*
* @return String representing grouping specification.
*/
- virtual string
+ virtual string
do_grouping() const
{ return _M_data->_M_grouping; }
@@ -3785,7 +3783,7 @@ namespace std
*
* @return @a string_type representing a currency symbol.
*/
- virtual string_type
+ virtual string_type
do_curr_symbol() const
{ return _M_data->_M_curr_symbol; }
@@ -3798,7 +3796,7 @@ namespace std
*
* @return @a string_type representing a positive sign.
*/
- virtual string_type
+ virtual string_type
do_positive_sign() const
{ return _M_data->_M_positive_sign; }
@@ -3811,7 +3809,7 @@ namespace std
*
* @return @a string_type representing a negative sign.
*/
- virtual string_type
+ virtual string_type
do_negative_sign() const
{ return _M_data->_M_negative_sign; }
@@ -3825,7 +3823,7 @@ namespace std
*
* @return Number of digits in amount fraction.
*/
- virtual int
+ virtual int
do_frac_digits() const
{ return _M_data->_M_frac_digits; }
@@ -3839,7 +3837,7 @@ namespace std
*
* @return Pattern for money values.
*/
- virtual pattern
+ virtual pattern
do_pos_format() const
{ return _M_data->_M_pos_format; }
@@ -3853,13 +3851,13 @@ namespace std
*
* @return Pattern for money values.
*/
- virtual pattern
+ virtual pattern
do_neg_format() const
{ return _M_data->_M_neg_format; }
// For use at construction time only.
- void
- _M_initialize_moneypunct(__c_locale __cloc = NULL,
+ void
+ _M_initialize_moneypunct(__c_locale __cloc = NULL,
const char* __name = NULL);
};
@@ -3875,11 +3873,11 @@ namespace std
template<>
moneypunct<char, false>::~moneypunct();
- template<>
+ template<>
void
moneypunct<char, true>::_M_initialize_moneypunct(__c_locale, const char*);
- template<>
+ template<>
void
moneypunct<char, false>::_M_initialize_moneypunct(__c_locale, const char*);
@@ -3890,14 +3888,14 @@ namespace std
template<>
moneypunct<wchar_t, false>::~moneypunct();
- template<>
+ template<>
void
- moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale,
+ moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale,
const char*);
- template<>
+ template<>
void
- moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale,
+ moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale,
const char*);
#endif
@@ -3905,12 +3903,12 @@ namespace std
class moneypunct_byname : public moneypunct<_CharT, _Intl>
{
public:
- typedef _CharT char_type;
- typedef basic_string<_CharT> string_type;
+ typedef _CharT char_type;
+ typedef basic_string<_CharT> string_type;
static const bool intl = _Intl;
- explicit
+ explicit
moneypunct_byname(const char* __s, size_t __refs = 0)
: moneypunct<_CharT, _Intl>(__refs)
{
@@ -3918,13 +3916,13 @@ namespace std
{
__c_locale __tmp;
this->_S_create_c_locale(__tmp, __s);
- this->_M_initialize_moneypunct(__tmp);
- this->_S_destroy_c_locale(__tmp);
+ this->_M_initialize_moneypunct(__tmp);
+ this->_S_destroy_c_locale(__tmp);
}
}
protected:
- virtual
+ virtual
~moneypunct_byname() { }
};
@@ -3950,13 +3948,13 @@ namespace std
// Types:
//@{
/// Public typedefs
- typedef _CharT char_type;
- typedef _InIter iter_type;
- typedef basic_string<_CharT> string_type;
+ typedef _CharT char_type;
+ typedef _InIter iter_type;
+ typedef basic_string<_CharT> string_type;
//@}
/// Numpunct facet id.
- static locale::id id;
+ static locale::id id;
/**
* @brief Constructor performs initialization.
@@ -3965,7 +3963,7 @@ namespace std
*
* @param refs Passed to the base facet class.
*/
- explicit
+ explicit
money_get(size_t __refs = 0) : facet(__refs) { }
/**
@@ -3993,10 +3991,10 @@ namespace std
* @param err Error field to set if parsing fails.
* @param units Place to store result of parsing.
* @return Iterator referencing first character beyond valid money
- * amount.
+ * amount.
*/
iter_type
- get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
+ get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
ios_base::iostate& __err, long double& __units) const
{ return this->do_get(__s, __end, __intl, __io, __err, __units); }
@@ -4023,16 +4021,16 @@ namespace std
* @param err Error field to set if parsing fails.
* @param digits Place to store result of parsing.
* @return Iterator referencing first character beyond valid money
- * amount.
+ * amount.
*/
- iter_type
- get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
+ iter_type
+ get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
ios_base::iostate& __err, string_type& __digits) const
{ return this->do_get(__s, __end, __intl, __io, __err, __digits); }
protected:
/// Destructor.
- virtual
+ virtual
~money_get() { }
/**
@@ -4042,8 +4040,8 @@ namespace std
* value. This function is a hook for derived classes to change the
* value returned. @see get() for details.
*/
- virtual iter_type
- do_get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
+ virtual iter_type
+ do_get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
ios_base::iostate& __err, long double& __units) const;
/**
@@ -4053,9 +4051,14 @@ namespace std
* value. This function is a hook for derived classes to change the
* value returned. @see get() for details.
*/
- virtual iter_type
- do_get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
+ virtual iter_type
+ do_get(iter_type __s, iter_type __end, bool __intl, ios_base& __io,
ios_base::iostate& __err, string_type& __digits) const;
+
+ template<bool _Intl>
+ iter_type
+ _M_extract(iter_type __s, iter_type __end, ios_base& __io,
+ ios_base::iostate& __err, string& __digits) const;
};
template<typename _CharT, typename _InIter>
@@ -4079,13 +4082,13 @@ namespace std
public:
//@{
/// Public typedefs
- typedef _CharT char_type;
- typedef _OutIter iter_type;
+ typedef _CharT char_type;
+ typedef _OutIter iter_type;
typedef basic_string<_CharT> string_type;
//@}
/// Numpunct facet id.
- static locale::id id;
+ static locale::id id;
/**
* @brief Constructor performs initialization.
@@ -4094,7 +4097,7 @@ namespace std
*
* @param refs Passed to the base facet class.
*/
- explicit
+ explicit
money_put(size_t __refs = 0) : facet(__refs) { }
/**
@@ -4114,7 +4117,7 @@ namespace std
* @param units Place to store result of parsing.
* @return Iterator after writing.
*/
- iter_type
+ iter_type
put(iter_type __s, bool __intl, ios_base& __io,
char_type __fill, long double __units) const
{ return this->do_put(__s, __intl, __io, __fill, __units); }
@@ -4136,14 +4139,14 @@ namespace std
* @param units Place to store result of parsing.
* @return Iterator after writing.
*/
- iter_type
+ iter_type
put(iter_type __s, bool __intl, ios_base& __io,
char_type __fill, const string_type& __digits) const
{ return this->do_put(__s, __intl, __io, __fill, __digits); }
protected:
/// Destructor.
- virtual
+ virtual
~money_put() { }
/**
@@ -4189,6 +4192,11 @@ namespace std
virtual iter_type
do_put(iter_type __s, bool __intl, ios_base& __io, char_type __fill,
const string_type& __digits) const;
+
+ template<bool _Intl>
+ iter_type
+ _M_insert(iter_type __s, ios_base& __io, char_type __fill,
+ const string_type& __digits) const;
};
template<typename _CharT, typename _OutIter>
@@ -4229,8 +4237,8 @@ namespace std
// Types:
//@{
/// Public typedefs
- typedef _CharT char_type;
- typedef basic_string<_CharT> string_type;
+ typedef _CharT char_type;
+ typedef basic_string<_CharT> string_type;
//@}
protected:
@@ -4241,7 +4249,7 @@ namespace std
public:
/// Numpunct facet id.
- static locale::id id;
+ static locale::id id;
/**
* @brief Constructor performs initialization.
@@ -4250,7 +4258,7 @@ namespace std
*
* @param refs Passed to the base facet class.
*/
- explicit
+ explicit
messages(size_t __refs = 0);
// Non-standard.
@@ -4264,7 +4272,7 @@ namespace std
* @param s The name of a locale.
* @param refs Refcount to pass to the base class.
*/
- explicit
+ explicit
messages(__c_locale __cloc, const char* __s, size_t __refs = 0);
/*
@@ -4277,7 +4285,7 @@ namespace std
* @param loc Locale to use for character set conversions.
* @return Handle to the catalog or value < 0 if open fails.
*/
- catalog
+ catalog
open(const basic_string<char>& __s, const locale& __loc) const
{ return this->do_open(__s, __loc); }
@@ -4295,7 +4303,7 @@ namespace std
* @param dir Message catalog root directory.
* @return Handle to the catalog or value < 0 if open fails.
*/
- catalog
+ catalog
open(const basic_string<char>&, const locale&, const char*) const;
/*
@@ -4313,7 +4321,7 @@ namespace std
* @param s Default return value if retrieval fails.
* @return Retrieved message or @a s if get fails.
*/
- string_type
+ string_type
get(catalog __c, int __set, int __msgid, const string_type& __s) const
{ return this->do_get(__c, __set, __msgid, __s); }
@@ -4324,13 +4332,13 @@ namespace std
*
* @param c The catalog to close.
*/
- void
+ void
close(catalog __c) const
{ return this->do_close(__c); }
protected:
/// Destructor.
- virtual
+ virtual
~messages();
/*
@@ -4344,7 +4352,7 @@ namespace std
* @param loc Locale to use for character set conversions.
* @return Handle to the opened catalog, value < 0 if open failed.
*/
- virtual catalog
+ virtual catalog
do_open(const basic_string<char>&, const locale&) const;
/*
@@ -4363,7 +4371,7 @@ namespace std
* @param s Default return value if retrieval fails.
* @return Retrieved message or @a s if get fails.
*/
- virtual string_type
+ virtual string_type
do_get(catalog, int, int, const string_type& __dfault) const;
/*
@@ -4371,7 +4379,7 @@ namespace std
*
* @param c The catalog to close.
*/
- virtual void
+ virtual void
do_close(catalog) const;
// Returns a locale and codeset-converted string, given a char* message.
@@ -4384,23 +4392,24 @@ namespace std
// Returns a locale and codeset-converted string, given a char* message.
string_type
- _M_convert_from_char(char* __msg) const
+ _M_convert_from_char(char*) const
{
+#if 0
// Length of message string without terminating null.
size_t __len = char_traits<char>::length(__msg) - 1;
// "everybody can easily convert the string using
// mbsrtowcs/wcsrtombs or with iconv()"
-#if 0
+
// Convert char* to _CharT in locale used to open catalog.
// XXX need additional template parameter on messages class for this..
// typedef typename codecvt<char, _CharT, _StateT> __codecvt_type;
- typedef typename codecvt<char, _CharT, mbstate_t> __codecvt_type;
+ typedef typename codecvt<char, _CharT, mbstate_t> __codecvt_type;
__codecvt_type::state_type __state;
// XXX may need to initialize state.
//initialize_state(__state._M_init());
-
+
char* __from_next;
// XXX what size for this string?
_CharT* __to = static_cast<_CharT*>(__builtin_alloca(__len + 1));
@@ -4441,15 +4450,15 @@ namespace std
class messages_byname : public messages<_CharT>
{
public:
- typedef _CharT char_type;
- typedef basic_string<_CharT> string_type;
+ typedef _CharT char_type;
+ typedef basic_string<_CharT> string_type;
- explicit
+ explicit
messages_byname(const char* __s, size_t __refs = 0);
protected:
- virtual
- ~messages_byname()
+ virtual
+ ~messages_byname()
{ }
};
@@ -4461,23 +4470,25 @@ namespace std
// NB: These are inline because, when used in a loop, some compilers
// can hoist the body out of the loop; then it's just as fast as the
// C is*() function.
+ //@{
+ /// Convenience interface to ctype.is().
template<typename _CharT>
- inline bool
+ inline bool
isspace(_CharT __c, const locale& __loc)
{ return use_facet<ctype<_CharT> >(__loc).is(ctype_base::space, __c); }
template<typename _CharT>
- inline bool
+ inline bool
isprint(_CharT __c, const locale& __loc)
{ return use_facet<ctype<_CharT> >(__loc).is(ctype_base::print, __c); }
template<typename _CharT>
- inline bool
+ inline bool
iscntrl(_CharT __c, const locale& __loc)
{ return use_facet<ctype<_CharT> >(__loc).is(ctype_base::cntrl, __c); }
template<typename _CharT>
- inline bool
+ inline bool
isupper(_CharT __c, const locale& __loc)
{ return use_facet<ctype<_CharT> >(__loc).is(ctype_base::upper, __c); }
@@ -4486,44 +4497,45 @@ namespace std
{ return use_facet<ctype<_CharT> >(__loc).is(ctype_base::lower, __c); }
template<typename _CharT>
- inline bool
+ inline bool
isalpha(_CharT __c, const locale& __loc)
{ return use_facet<ctype<_CharT> >(__loc).is(ctype_base::alpha, __c); }
template<typename _CharT>
- inline bool
+ inline bool
isdigit(_CharT __c, const locale& __loc)
{ return use_facet<ctype<_CharT> >(__loc).is(ctype_base::digit, __c); }
template<typename _CharT>
- inline bool
+ inline bool
ispunct(_CharT __c, const locale& __loc)
{ return use_facet<ctype<_CharT> >(__loc).is(ctype_base::punct, __c); }
template<typename _CharT>
- inline bool
+ inline bool
isxdigit(_CharT __c, const locale& __loc)
{ return use_facet<ctype<_CharT> >(__loc).is(ctype_base::xdigit, __c); }
template<typename _CharT>
- inline bool
+ inline bool
isalnum(_CharT __c, const locale& __loc)
{ return use_facet<ctype<_CharT> >(__loc).is(ctype_base::alnum, __c); }
template<typename _CharT>
- inline bool
+ inline bool
isgraph(_CharT __c, const locale& __loc)
{ return use_facet<ctype<_CharT> >(__loc).is(ctype_base::graph, __c); }
template<typename _CharT>
- inline _CharT
+ inline _CharT
toupper(_CharT __c, const locale& __loc)
{ return use_facet<ctype<_CharT> >(__loc).toupper(__c); }
template<typename _CharT>
- inline _CharT
+ inline _CharT
tolower(_CharT __c, const locale& __loc)
{ return use_facet<ctype<_CharT> >(__loc).tolower(__c); }
+ //@}
} // namespace std
#endif
diff --git a/libstdc++-v3/include/bits/locale_facets.tcc b/libstdc++-v3/include/bits/locale_facets.tcc
index 4dc3bb4f6b2..7d2dfbbcf98 100644
--- a/libstdc++-v3/include/bits/locale_facets.tcc
+++ b/libstdc++-v3/include/bits/locale_facets.tcc
@@ -35,8 +35,8 @@
#pragma GCC system_header
-#include <limits> // For numeric_limits
-#include <typeinfo> // For bad_cast.
+#include <limits> // For numeric_limits
+#include <typeinfo> // For bad_cast.
#include <bits/streambuf_iterator.h>
namespace std
@@ -79,7 +79,6 @@ namespace std
* @param Facet The facet type to test the presence of.
* @param locale The locale to test.
* @return true if locale contains a facet of type Facet, else false.
- * @throw std::bad_cast if locale doesn't contain the facet.
*/
template<typename _Facet>
inline bool
@@ -123,6 +122,7 @@ namespace std
operator() (const locale& __loc) const;
};
+ // Specializations.
template<typename _CharT>
struct __use_cache<__numpunct_cache<_CharT> >
{
@@ -150,6 +150,111 @@ namespace std
}
};
+ template<typename _CharT, bool _Intl>
+ struct __use_cache<__moneypunct_cache<_CharT, _Intl> >
+ {
+ const __moneypunct_cache<_CharT, _Intl>*
+ operator() (const locale& __loc) const
+ {
+ const size_t __i = moneypunct<_CharT, _Intl>::id._M_id();
+ const locale::facet** __caches = __loc._M_impl->_M_caches;
+ if (!__caches[__i])
+ {
+ __moneypunct_cache<_CharT, _Intl>* __tmp = NULL;
+ try
+ {
+ __tmp = new __moneypunct_cache<_CharT, _Intl>;
+ __tmp->_M_cache(__loc);
+ }
+ catch(...)
+ {
+ delete __tmp;
+ __throw_exception_again;
+ }
+ __loc._M_impl->_M_install_cache(__tmp, __i);
+ }
+ return static_cast<
+ const __moneypunct_cache<_CharT, _Intl>*>(__caches[__i]);
+ }
+ };
+
+ template<typename _CharT>
+ void
+ __numpunct_cache<_CharT>::_M_cache(const locale& __loc)
+ {
+ _M_allocated = true;
+
+ const numpunct<_CharT>& __np = use_facet<numpunct<_CharT> >(__loc);
+
+ _M_grouping_size = __np.grouping().size();
+ char* __grouping = new char[_M_grouping_size];
+ __np.grouping().copy(__grouping, _M_grouping_size);
+ _M_grouping = __grouping;
+ _M_use_grouping = _M_grouping_size && __np.grouping()[0] != 0;
+
+ _M_truename_size = __np.truename().size();
+ _CharT* __truename = new _CharT[_M_truename_size];
+ __np.truename().copy(__truename, _M_truename_size);
+ _M_truename = __truename;
+
+ _M_falsename_size = __np.falsename().size();
+ _CharT* __falsename = new _CharT[_M_falsename_size];
+ __np.falsename().copy(__falsename, _M_falsename_size);
+ _M_falsename = __falsename;
+
+ _M_decimal_point = __np.decimal_point();
+ _M_thousands_sep = __np.thousands_sep();
+
+ const ctype<_CharT>& __ct = use_facet<ctype<_CharT> >(__loc);
+ __ct.widen(__num_base::_S_atoms_out,
+ __num_base::_S_atoms_out + __num_base::_S_oend, _M_atoms_out);
+ __ct.widen(__num_base::_S_atoms_in,
+ __num_base::_S_atoms_in + __num_base::_S_iend, _M_atoms_in);
+ }
+
+ template<typename _CharT, bool _Intl>
+ void
+ __moneypunct_cache<_CharT, _Intl>::_M_cache(const locale& __loc)
+ {
+ _M_allocated = true;
+
+ const moneypunct<_CharT, _Intl>& __mp =
+ use_facet<moneypunct<_CharT, _Intl> >(__loc);
+
+ _M_grouping_size = __mp.grouping().size();
+ char* __grouping = new char[_M_grouping_size];
+ __mp.grouping().copy(__grouping, _M_grouping_size);
+ _M_grouping = __grouping;
+ _M_use_grouping = _M_grouping_size && __mp.grouping()[0] != 0;
+
+ _M_decimal_point = __mp.decimal_point();
+ _M_thousands_sep = __mp.thousands_sep();
+ _M_frac_digits = __mp.frac_digits();
+
+ _M_curr_symbol_size = __mp.curr_symbol().size();
+ _CharT* __curr_symbol = new _CharT[_M_curr_symbol_size];
+ __mp.curr_symbol().copy(__curr_symbol, _M_curr_symbol_size);
+ _M_curr_symbol = __curr_symbol;
+
+ _M_positive_sign_size = __mp.positive_sign().size();
+ _CharT* __positive_sign = new _CharT[_M_positive_sign_size];
+ __mp.positive_sign().copy(__positive_sign, _M_positive_sign_size);
+ _M_positive_sign = __positive_sign;
+
+ _M_negative_sign_size = __mp.negative_sign().size();
+ _CharT* __negative_sign = new _CharT[_M_negative_sign_size];
+ __mp.negative_sign().copy(__negative_sign, _M_negative_sign_size);
+ _M_negative_sign = __negative_sign;
+
+ _M_pos_format = __mp.pos_format();
+ _M_neg_format = __mp.neg_format();
+
+ const ctype<_CharT>& __ct = use_facet<ctype<_CharT> >(__loc);
+ __ct.widen(money_base::_S_atoms,
+ money_base::_S_atoms + money_base::_S_end, _M_atoms);
+ }
+
+
// Used by both numeric and monetary facets.
// Check to make sure that the __grouping_tmp string constructed in
// money_get or num_get matches the canonical grouping for a given
@@ -169,7 +274,7 @@ namespace std
ios_base::iostate& __err, string& __xtrc) const
{
typedef char_traits<_CharT> __traits_type;
- typedef typename numpunct<_CharT>::__cache_type __cache_type;
+ typedef typename numpunct<_CharT>::__cache_type __cache_type;
__use_cache<__cache_type> __uc;
const locale& __loc = __io._M_getloc();
const __cache_type* __lc = __uc(__loc);
@@ -182,31 +287,28 @@ namespace std
if (__beg != __end)
{
const char_type __c = *__beg;
- const bool __plus = __traits_type::eq(__c, __lit[_S_iplus]);
- if ((__plus || __traits_type::eq(__c, __lit[_S_iminus]))
- && !__traits_type::eq(__c, __lc->_M_decimal_point)
- && (!__lc->_M_use_grouping
- || !__traits_type::eq(__c, __lc->_M_thousands_sep)))
+ const bool __plus = __c == __lit[__num_base::_S_iplus];
+ if ((__plus || __c == __lit[__num_base::_S_iminus])
+ && !(__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
+ && !(__c == __lc->_M_decimal_point))
{
- __xtrc += __plus ? _S_atoms_in[_S_iplus]
- : _S_atoms_in[_S_iminus];
+ __xtrc += __plus ? '+' : '-';
++__beg;
}
}
-
+
// Next, look for leading zeros.
while (__beg != __end)
{
const char_type __c = *__beg;
- if (__traits_type::eq(__c, __lc->_M_decimal_point)
- || (__lc->_M_use_grouping
- && __traits_type::eq(__c, __lc->_M_thousands_sep)))
+ if (__lc->_M_use_grouping && __c == __lc->_M_thousands_sep
+ || __c == __lc->_M_decimal_point)
break;
- else if (__traits_type::eq(__c, __lit[_S_izero]))
+ else if (__c == __lit[__num_base::_S_izero])
{
if (!__found_mantissa)
{
- __xtrc += _S_atoms_in[_S_izero];
+ __xtrc += '0';
__found_mantissa = true;
}
++__beg;
@@ -219,16 +321,17 @@ namespace std
bool __found_dec = false;
bool __found_sci = false;
string __found_grouping;
+ if (__lc->_M_use_grouping)
+ __found_grouping.reserve(32);
int __sep_pos = 0;
- bool __e;
- const char_type* __p;
+ const char_type* __lit_zero = __lit + __num_base::_S_izero;
+ const char_type* __q;
while (__beg != __end)
{
// According to 22.2.2.1.2, p8-9, first look for thousands_sep
// and decimal_point.
const char_type __c = *__beg;
- if (__lc->_M_use_grouping
- && __traits_type::eq(__c, __lc->_M_thousands_sep))
+ if (__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
{
if (!__found_dec && !__found_sci)
{
@@ -249,7 +352,7 @@ namespace std
else
break;
}
- else if (__traits_type::eq(__c, __lc->_M_decimal_point))
+ else if (__c == __lc->_M_decimal_point)
{
if (!__found_dec && !__found_sci)
{
@@ -265,29 +368,33 @@ namespace std
else
break;
}
- else if (__p = __traits_type::find(__lit + _S_izero, 10, __c))
+ else if (__q = __traits_type::find(__lit_zero, 10, __c))
{
- __xtrc += _S_atoms_in[__p - __lit];
+ __xtrc += __num_base::_S_atoms_in[__q - __lit];
__found_mantissa = true;
++__sep_pos;
++__beg;
}
- else if ((__e = __traits_type::eq(__c, __lit[_S_ie])
- || __traits_type::eq(__c, __lit[_S_iE]))
+ else if ((__c == __lit[__num_base::_S_ie]
+ || __c == __lit[__num_base::_S_iE])
&& __found_mantissa && !__found_sci)
{
// Scientific notation.
- __xtrc += __e ? _S_atoms_in[_S_ie] : _S_atoms_in[_S_iE];
+ if (__found_grouping.size() && !__found_dec)
+ __found_grouping += static_cast<char>(__sep_pos);
+ __xtrc += 'e';
__found_sci = true;
// Remove optional plus or minus sign, if they exist.
if (++__beg != __end)
{
- const bool __plus = __traits_type::eq(*__beg, __lit[_S_iplus]);
- if (__plus || __traits_type::eq(*__beg, __lit[_S_iminus]))
+ const bool __plus = *__beg == __lit[__num_base::_S_iplus];
+ if ((__plus || *__beg == __lit[__num_base::_S_iminus])
+ && !(__lc->_M_use_grouping
+ && *__beg == __lc->_M_thousands_sep)
+ && !(*__beg == __lc->_M_decimal_point))
{
- __xtrc += __plus ? _S_atoms_in[_S_iplus]
- : _S_atoms_in[_S_iminus];
+ __xtrc += __plus ? '+' : '-';
++__beg;
}
}
@@ -301,38 +408,39 @@ namespace std
// match, then get very very upset, and set failbit.
if (__lc->_M_use_grouping && __found_grouping.size())
{
- // Add the ending grouping if a decimal wasn't found.
- if (!__found_dec)
+ // Add the ending grouping if a decimal or 'e'/'E' wasn't found.
+ if (!__found_dec && !__found_sci)
__found_grouping += static_cast<char>(__sep_pos);
- if (!std::__verify_grouping(__lc->_M_grouping, __lc->_M_grouping_size,
+ if (!std::__verify_grouping(__lc->_M_grouping,
+ __lc->_M_grouping_size,
__found_grouping))
__err |= ios_base::failbit;
}
// Finish up.
- __xtrc += char();
if (__beg == __end)
__err |= ios_base::eofbit;
return __beg;
}
template<typename _CharT, typename _InIter>
- template<typename _ValueT>
+ template<typename _ValueT>
_InIter
num_get<_CharT, _InIter>::
_M_extract_int(_InIter __beg, _InIter __end, ios_base& __io,
ios_base::iostate& __err, _ValueT& __v) const
{
typedef char_traits<_CharT> __traits_type;
- typedef typename numpunct<_CharT>::__cache_type __cache_type;
+ typedef typename numpunct<_CharT>::__cache_type __cache_type;
__use_cache<__cache_type> __uc;
const locale& __loc = __io._M_getloc();
const __cache_type* __lc = __uc(__loc);
const _CharT* __lit = __lc->_M_atoms_in;
// NB: Iff __basefield == 0, __base can change based on contents.
- const ios_base::fmtflags __basefield = __io.flags() & ios_base::basefield;
+ const ios_base::fmtflags __basefield = __io.flags()
+ & ios_base::basefield;
const bool __oct = __basefield == ios_base::oct;
int __base = __oct ? 8 : (__basefield == ios_base::hex ? 16 : 10);
@@ -342,14 +450,13 @@ namespace std
// First check for sign.
bool __negative = false;
if (__beg != __end)
- {
+ {
const char_type __c = *__beg;
if (numeric_limits<_ValueT>::is_signed)
- __negative = __traits_type::eq(__c, __lit[_S_iminus]);
- if ((__negative || __traits_type::eq(__c, __lit[_S_iplus]))
- && !__traits_type::eq(__c, __lc->_M_decimal_point)
- && (!__lc->_M_use_grouping
- || !__traits_type::eq(__c, __lc->_M_thousands_sep)))
+ __negative = __c == __lit[__num_base::_S_iminus];
+ if ((__negative || __c == __lit[__num_base::_S_iplus])
+ && !(__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
+ && !(__c == __lc->_M_decimal_point))
++__beg;
}
@@ -358,11 +465,10 @@ namespace std
while (__beg != __end)
{
const char_type __c = *__beg;
- if (__traits_type::eq(__c, __lc->_M_decimal_point)
- || (__lc->_M_use_grouping
- && __traits_type::eq(__c, __lc->_M_thousands_sep)))
+ if (__lc->_M_use_grouping && __c == __lc->_M_thousands_sep
+ || __c == __lc->_M_decimal_point)
break;
- else if (__traits_type::eq(__c, __lit[_S_izero])
+ else if (__c == __lit[__num_base::_S_izero]
&& (!__found_num || __base == 10))
{
__found_num = true;
@@ -370,8 +476,8 @@ namespace std
}
else if (__found_num)
{
- if (__traits_type::eq(__c, __lit[_S_ix])
- || __traits_type::eq(__c, __lit[_S_iX]))
+ if (__c == __lit[__num_base::_S_ix]
+ || __c == __lit[__num_base::_S_iX])
{
if (__basefield == 0)
__base = 16;
@@ -391,15 +497,17 @@ namespace std
// At this point, base is determined. If not hex, only allow
// base digits as valid input.
- const size_t __len = __base == 16 ? _S_iend : __base;
+ const size_t __len = __base == 16 ? __num_base::_S_iend - __num_base::_S_izero : __base;
// Extract.
string __found_grouping;
+ if (__lc->_M_use_grouping)
+ __found_grouping.reserve(32);
int __sep_pos = 0;
bool __overflow = false;
_ValueT __result = 0;
- const char_type* __lit_zero = __lit + _S_izero;
- const char_type* __p;
+ const char_type* __lit_zero = __lit + __num_base::_S_izero;
+ const char_type* __q;
if (__negative)
{
const _ValueT __min = numeric_limits<_ValueT>::min() / __base;
@@ -408,8 +516,7 @@ namespace std
// According to 22.2.2.1.2, p8-9, first look for thousands_sep
// and decimal_point.
const char_type __c = *__beg;
- if (__lc->_M_use_grouping
- && __traits_type::eq(__c, __lc->_M_thousands_sep))
+ if (__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
{
// NB: Thousands separator at the beginning of a string
// is a no-no, as is two consecutive thousands separators.
@@ -424,18 +531,19 @@ namespace std
break;
}
}
- else if (__traits_type::eq(__c, __lc->_M_decimal_point))
+ else if (__c == __lc->_M_decimal_point)
break;
- else if (__p = __traits_type::find(__lit_zero, __len, __c))
+ else if (__q = __traits_type::find(__lit_zero, __len, __c))
{
- int __digit = __p - __lit_zero;
+ int __digit = __q - __lit_zero;
if (__digit > 15)
__digit -= 6;
if (__result < __min)
__overflow = true;
else
{
- const _ValueT __new_result = __result * __base - __digit;
+ const _ValueT __new_result = __result * __base
+ - __digit;
__overflow |= __new_result > __result;
__result = __new_result;
++__sep_pos;
@@ -453,8 +561,7 @@ namespace std
for (; __beg != __end; ++__beg)
{
const char_type __c = *__beg;
- if (__lc->_M_use_grouping
- && __traits_type::eq(__c, __lc->_M_thousands_sep))
+ if (__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
{
if (__sep_pos)
{
@@ -466,19 +573,20 @@ namespace std
__err |= ios_base::failbit;
break;
}
- }
- else if (__traits_type::eq(__c, __lc->_M_decimal_point))
+ }
+ else if (__c == __lc->_M_decimal_point)
break;
- else if (__p = __traits_type::find(__lit_zero, __len, __c))
+ else if (__q = __traits_type::find(__lit_zero, __len, __c))
{
- int __digit = __p - __lit_zero;
+ int __digit = __q - __lit_zero;
if (__digit > 15)
__digit -= 6;
if (__result > __max)
__overflow = true;
else
{
- const _ValueT __new_result = __result * __base + __digit;
+ const _ValueT __new_result = __result * __base
+ + __digit;
__overflow |= __new_result < __result;
__result = __new_result;
++__sep_pos;
@@ -496,8 +604,9 @@ namespace std
{
// Add the ending grouping.
__found_grouping += static_cast<char>(__sep_pos);
-
- if (!std::__verify_grouping(__lc->_M_grouping, __lc->_M_grouping_size,
+
+ if (!std::__verify_grouping(__lc->_M_grouping,
+ __lc->_M_grouping_size,
__found_grouping))
__err |= ios_base::failbit;
}
@@ -549,18 +658,18 @@ namespace std
{
if (__testf)
if (__n < __lc->_M_falsename_size)
- __testf = __traits_type::eq(*__beg, __lc->_M_falsename[__n]);
+ __testf = *__beg == __lc->_M_falsename[__n];
else
break;
if (__testt)
if (__n < __lc->_M_truename_size)
- __testt = __traits_type::eq(*__beg, __lc->_M_truename[__n]);
+ __testt = *__beg == __lc->_M_truename[__n];
else
break;
if (!__testf && !__testt)
- break;
+ break;
}
if (__testf && __n == __lc->_M_falsename_size)
__v = 0;
@@ -587,7 +696,7 @@ namespace std
num_get<_CharT, _InIter>::
do_get(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, unsigned short& __v) const
- { return _M_extract_int(__beg, __end, __io, __err, __v); }
+ { return _M_extract_int(__beg, __end, __io, __err, __v); }
template<typename _CharT, typename _InIter>
_InIter
@@ -622,7 +731,7 @@ namespace std
template<typename _CharT, typename _InIter>
_InIter
num_get<_CharT, _InIter>::
- do_get(iter_type __beg, iter_type __end, ios_base& __io,
+ do_get(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, float& __v) const
{
string __xtrc;
@@ -677,7 +786,7 @@ namespace std
if (!(__err & ios_base::failbit))
__v = reinterpret_cast<void*>(__ul);
- else
+ else
__err |= ios_base::failbit;
return __beg;
}
@@ -687,12 +796,12 @@ namespace std
template<typename _CharT, typename _OutIter>
void
num_put<_CharT, _OutIter>::
- _M_pad(_CharT __fill, streamsize __w, ios_base& __io,
+ _M_pad(_CharT __fill, streamsize __w, ios_base& __io,
_CharT* __new, const _CharT* __cs, int& __len) const
{
// [22.2.2.2.2] Stage 3.
// If necessary, pad.
- __pad<_CharT, char_traits<_CharT> >::_S_pad(__io, __fill, __new, __cs,
+ __pad<_CharT, char_traits<_CharT> >::_S_pad(__io, __fill, __new, __cs,
__w, __len, true);
__len = static_cast<int>(__w);
}
@@ -705,12 +814,12 @@ namespace std
{
unsigned long __ul = static_cast<unsigned long>(__v);
bool __neg = false;
- if (__v < 0)
+ if (__v < 0)
{
__ul = -__ul;
__neg = true;
}
- return __int_to_char(__bufend, __ul, __lit, __flags, __neg);
+ return __int_to_char(__bufend, __ul, __lit, __flags, __neg);
}
template<typename _CharT>
@@ -724,24 +833,24 @@ namespace std
inline int
__int_to_char(_CharT* __bufend, long long __v, const _CharT* __lit,
ios_base::fmtflags __flags)
- {
+ {
unsigned long long __ull = static_cast<unsigned long long>(__v);
bool __neg = false;
- if (__v < 0)
+ if (__v < 0)
{
__ull = -__ull;
__neg = true;
}
- return __int_to_char(__bufend, __ull, __lit, __flags, __neg);
+ return __int_to_char(__bufend, __ull, __lit, __flags, __neg);
}
template<typename _CharT>
inline int
- __int_to_char(_CharT* __bufend, unsigned long long __v, const _CharT* __lit,
- ios_base::fmtflags __flags)
+ __int_to_char(_CharT* __bufend, unsigned long long __v,
+ const _CharT* __lit, ios_base::fmtflags __flags)
{ return __int_to_char(__bufend, __v, __lit, __flags, false); }
#endif
-
+
template<typename _CharT, typename _ValueT>
int
__int_to_char(_CharT* __bufend, _ValueT __v, const _CharT* __lit,
@@ -756,11 +865,11 @@ namespace std
__basefield != ios_base::hex, true))
{
// Decimal.
- do
+ do
{
*__buf-- = __lit[(__v % 10) + __num_base::_S_odigits];
__v /= 10;
- }
+ }
while (__v != 0);
if (__neg)
*__buf-- = __lit[__num_base::_S_ominus];
@@ -770,11 +879,11 @@ namespace std
else if (__basefield == ios_base::oct)
{
// Octal.
- do
+ do
{
*__buf-- = __lit[(__v & 0x7) + __num_base::_S_odigits];
__v >>= 3;
- }
+ }
while (__v != 0);
if (__showbase)
*__buf-- = __lit[__num_base::_S_odigits];
@@ -783,13 +892,13 @@ namespace std
{
// Hex.
const bool __uppercase = __flags & ios_base::uppercase;
- const int __case_offset = __uppercase ? __num_base::_S_oudigits
+ const int __case_offset = __uppercase ? __num_base::_S_oudigits
: __num_base::_S_odigits;
- do
+ do
{
*__buf-- = __lit[(__v & 0xf) + __case_offset];
__v >>= 4;
- }
+ }
while (__v != 0);
if (__showbase)
{
@@ -814,7 +923,7 @@ namespace std
// However, remember that the latter do not occur if the number
// printed is '0' (__len == 1).
streamsize __off = 0;
- const ios_base::fmtflags __basefield = __io.flags()
+ const ios_base::fmtflags __basefield = __io.flags()
& ios_base::basefield;
if ((__io.flags() & ios_base::showbase) && __len > 1)
if (__basefield == ios_base::oct)
@@ -839,7 +948,7 @@ namespace std
template<typename _ValueT>
_OutIter
num_put<_CharT, _OutIter>::
- _M_insert_int(_OutIter __s, ios_base& __io, _CharT __fill,
+ _M_insert_int(_OutIter __s, ios_base& __io, _CharT __fill,
_ValueT __v) const
{
typedef typename numpunct<_CharT>::__cache_type __cache_type;
@@ -848,9 +957,9 @@ namespace std
const __cache_type* __lc = __uc(__loc);
const _CharT* __lit = __lc->_M_atoms_out;
- // Long enough to hold hex, dec, and octal representations.
+ // Long enough to hold hex, dec, and octal representations.
const int __ilen = 4 * sizeof(_ValueT);
- _CharT* __cs = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
+ _CharT* __cs = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
* __ilen));
// [22.2.2.2.2] Stage 1, numeric conversion to character.
@@ -858,24 +967,24 @@ namespace std
int __len;
__len = __int_to_char(__cs + __ilen, __v, __lit, __io.flags());
__cs += __ilen - __len;
-
- // Add grouping, if necessary.
+
+ // Add grouping, if necessary.
if (__lc->_M_use_grouping)
{
// Grouping can add (almost) as many separators as the
// number of digits, but no more.
- _CharT* __cs2 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
+ _CharT* __cs2 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
* __len * 2));
_M_group_int(__lc->_M_grouping, __lc->_M_grouping_size,
__lc->_M_thousands_sep, __io, __cs2, __cs, __len);
__cs = __cs2;
}
-
+
// Pad.
const streamsize __w = __io.width();
if (__w > static_cast<streamsize>(__len))
{
- _CharT* __cs3 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
+ _CharT* __cs3 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
* __w));
_M_pad(__fill, __w, __io, __cs3, __cs, __len);
__cs = __cs3;
@@ -885,29 +994,30 @@ namespace std
// [22.2.2.2.2] Stage 4.
// Write resulting, fully-formatted string to output iterator.
return std::__write(__s, __cs, __len);
- }
+ }
template<typename _CharT, typename _OutIter>
void
num_put<_CharT, _OutIter>::
- _M_group_float(const char* __grouping, size_t __grouping_size, _CharT __sep,
- const _CharT* __p, _CharT* __new, _CharT* __cs, int& __len) const
+ _M_group_float(const char* __grouping, size_t __grouping_size,
+ _CharT __sep, const _CharT* __p, _CharT* __new,
+ _CharT* __cs, int& __len) const
{
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 282. What types does numpunct grouping refer to?
- // Add grouping, if necessary.
+ // Add grouping, if necessary.
_CharT* __p2;
const int __declen = __p ? __p - __cs : __len;
__p2 = std::__add_grouping(__new, __sep, __grouping, __grouping_size,
__cs, __cs + __declen);
-
+
// Tack on decimal part.
int __newlen = __p2 - __new;
if (__p)
{
char_traits<_CharT>::copy(__p2, __p, __len - __declen);
__newlen += __len - __declen;
- }
+ }
__len = __newlen;
}
@@ -960,14 +1070,14 @@ namespace std
int __cs_size = __max_digits * 3;
char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
- _S_format_float(__io, __fbuf, __mod);
+ __num_base::_S_format_float(__io, __fbuf, __mod);
__len = std::__convert_from_v(__cs, __cs_size, __fbuf, __v,
_S_get_c_locale(), __prec);
// If the buffer was not large enough, try again with the correct size.
if (__len >= __cs_size)
{
- __cs_size = __len + 1;
+ __cs_size = __len + 1;
__cs = static_cast<char*>(__builtin_alloca(__cs_size));
__len = std::__convert_from_v(__cs, __cs_size, __fbuf, __v,
_S_get_c_locale(), __prec);
@@ -983,12 +1093,12 @@ namespace std
// fractional part + 3 chars for sign, decimal point, '\0'. On
// the other hand, for non-fixed outputs __max_digits*3 chars
// are largely sufficient.
- const int __cs_size = __fixed ? __max_exp + __max_digits + 4
+ const int __cs_size = __fixed ? __max_exp + __max_digits + 4
: __max_digits * 3;
char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
- _S_format_float(__io, __fbuf, __mod);
- __len = std::__convert_from_v(__cs, 0, __fbuf, __v,
+ __num_base::_S_format_float(__io, __fbuf, __mod);
+ __len = std::__convert_from_v(__cs, 0, __fbuf, __v,
_S_get_c_locale(), __prec);
#endif
@@ -996,10 +1106,10 @@ namespace std
// numpunct.decimal_point() values for '.' and adding grouping.
const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
- _CharT* __ws = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
+ _CharT* __ws = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
* __len));
__ctype.widen(__cs, __cs + __len, __ws);
-
+
// Replace decimal point.
const _CharT __cdec = __ctype.widen('.');
const _CharT __dec = __lc->_M_decimal_point;
@@ -1007,12 +1117,12 @@ namespace std
if (__p = char_traits<_CharT>::find(__ws, __len, __cdec))
__ws[__p - __ws] = __dec;
- // Add grouping, if necessary.
+ // Add grouping, if necessary.
if (__lc->_M_use_grouping)
{
// Grouping can add (almost) as many separators as the
// number of digits, but no more.
- _CharT* __ws2 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
+ _CharT* __ws2 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
* __len * 2));
_M_group_float(__lc->_M_grouping, __lc->_M_grouping_size,
__lc->_M_thousands_sep, __p, __ws2, __ws, __len);
@@ -1029,7 +1139,7 @@ namespace std
__ws = __ws3;
}
__io.width(0);
-
+
// [22.2.2.2.2] Stage 4.
// Write resulting, fully-formatted string to output iterator.
return std::__write(__s, __ws, __len);
@@ -1053,7 +1163,7 @@ namespace std
const locale& __loc = __io._M_getloc();
const __cache_type* __lc = __uc(__loc);
- const _CharT* __name = __v ? __lc->_M_truename
+ const _CharT* __name = __v ? __lc->_M_truename
: __lc->_M_falsename;
int __len = __v ? __lc->_M_truename_size
: __lc->_M_falsename_size;
@@ -1061,8 +1171,9 @@ namespace std
const streamsize __w = __io.width();
if (__w > static_cast<streamsize>(__len))
{
- _CharT* __cs = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
- * __w));
+ _CharT* __cs
+ = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
+ * __w));
_M_pad(__fill, __w, __io, __cs, __name, __len);
__name = __cs;
}
@@ -1109,7 +1220,7 @@ namespace std
template<typename _CharT, typename _OutIter>
_OutIter
num_put<_CharT, _OutIter>::
- do_put(iter_type __s, ios_base& __io, char_type __fill,
+ do_put(iter_type __s, ios_base& __io, char_type __fill,
long double __v) const
{ return _M_insert_float(__s, __io, __fill, 'L', __v); }
@@ -1120,243 +1231,443 @@ namespace std
const void* __v) const
{
const ios_base::fmtflags __flags = __io.flags();
- const ios_base::fmtflags __fmt = ~(ios_base::showpos | ios_base::basefield
- | ios_base::uppercase | ios_base::internal);
+ const ios_base::fmtflags __fmt = ~(ios_base::showpos
+ | ios_base::basefield
+ | ios_base::uppercase
+ | ios_base::internal);
__io.flags(__flags & __fmt | (ios_base::hex | ios_base::showbase));
-
- __s = _M_insert_int(__s, __io, __fill,
+
+ __s = _M_insert_int(__s, __io, __fill,
reinterpret_cast<unsigned long>(__v));
__io.flags(__flags);
return __s;
}
+ template<typename _CharT, typename _InIter>
+ template<bool _Intl>
+ _InIter
+ money_get<_CharT, _InIter>::
+ _M_extract(iter_type __beg, iter_type __end, ios_base& __io,
+ ios_base::iostate& __err, string& __units) const
+ {
+ typedef char_traits<_CharT> __traits_type;
+ typedef typename string_type::size_type size_type;
+ typedef money_base::part part;
+ typedef moneypunct<_CharT, _Intl> __moneypunct_type;
+ typedef typename __moneypunct_type::__cache_type __cache_type;
+
+ const locale& __loc = __io._M_getloc();
+ const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
+
+ __use_cache<__cache_type> __uc;
+ const __cache_type* __lc = __uc(__loc);
+ const char_type* __lit = __lc->_M_atoms;
+
+ // Deduced sign.
+ bool __negative = false;
+ // Sign size.
+ size_type __sign_size = 0;
+ // True if sign is mandatory.
+ const bool __mandatory_sign = (__lc->_M_positive_sign_size
+ && __lc->_M_negative_sign_size);
+ // String of grouping info from thousands_sep plucked from __units.
+ string __grouping_tmp;
+ if (__lc->_M_use_grouping)
+ __grouping_tmp.reserve(32);
+ // Last position before the decimal point.
+ int __last_pos = 0;
+ // Separator positions, then, possibly, fractional digits.
+ int __n = 0;
+ // If input iterator is in a valid state.
+ bool __testvalid = true;
+ // Flag marking when a decimal point is found.
+ bool __testdecfound = false;
+
+ // The tentative returned string is stored here.
+ string __res;
+ __res.reserve(32);
+
+ const char_type* __lit_zero = __lit + money_base::_S_zero;
+ const char_type* __q;
+ const money_base::pattern __p = __lc->_M_neg_format;
+ for (int __i = 0; __i < 4 && __testvalid; ++__i)
+ {
+ const part __which = static_cast<part>(__p.field[__i]);
+ switch (__which)
+ {
+ case money_base::symbol:
+ // According to 22.2.6.1.2, p2, symbol is required
+ // if (__io.flags() & ios_base::showbase), otherwise
+ // is optional and consumed only if other characters
+ // are needed to complete the format.
+ if (__io.flags() & ios_base::showbase || __sign_size > 1
+ || __i == 0
+ || (__i == 1 && (__mandatory_sign
+ || (static_cast<part>(__p.field[0])
+ == money_base::sign)
+ || (static_cast<part>(__p.field[2])
+ == money_base::space)))
+ || (__i == 2 && ((static_cast<part>(__p.field[3])
+ == money_base::value)
+ || __mandatory_sign
+ && (static_cast<part>(__p.field[3])
+ == money_base::sign))))
+ {
+ const size_type __len = __lc->_M_curr_symbol_size;
+ size_type __j = 0;
+ for (; __beg != __end && __j < __len
+ && *__beg == __lc->_M_curr_symbol[__j];
+ ++__beg, ++__j);
+ if (__j != __len
+ && (__j || __io.flags() & ios_base::showbase))
+ __testvalid = false;
+ }
+ break;
+ case money_base::sign:
+ // Sign might not exist, or be more than one character long.
+ if (__lc->_M_positive_sign_size && __beg != __end
+ && *__beg == __lc->_M_positive_sign[0])
+ {
+ __sign_size = __lc->_M_positive_sign_size;
+ ++__beg;
+ }
+ else if (__lc->_M_negative_sign_size && __beg != __end
+ && *__beg == __lc->_M_negative_sign[0])
+ {
+ __negative = true;
+ __sign_size = __lc->_M_negative_sign_size;
+ ++__beg;
+ }
+ else if (__lc->_M_positive_sign_size
+ && !__lc->_M_negative_sign_size)
+ // "... if no sign is detected, the result is given the sign
+ // that corresponds to the source of the empty string"
+ __negative = true;
+ else if (__mandatory_sign)
+ __testvalid = false;
+ break;
+ case money_base::value:
+ // Extract digits, remove and stash away the
+ // grouping of found thousands separators.
+ for (; __beg != __end; ++__beg)
+ if (__q = __traits_type::find(__lit_zero, 10, *__beg))
+ {
+ __res += money_base::_S_atoms[__q - __lit];
+ ++__n;
+ }
+ else if (*__beg == __lc->_M_decimal_point && !__testdecfound)
+ {
+ __last_pos = __n;
+ __n = 0;
+ __testdecfound = true;
+ }
+ else if (__lc->_M_use_grouping
+ && *__beg == __lc->_M_thousands_sep
+ && !__testdecfound)
+ {
+ if (__n)
+ {
+ // Mark position for later analysis.
+ __grouping_tmp += static_cast<char>(__n);
+ __n = 0;
+ }
+ else
+ {
+ __testvalid = false;
+ break;
+ }
+ }
+ else
+ break;
+ if (__res.empty())
+ __testvalid = false;
+ break;
+ case money_base::space:
+ // At least one space is required.
+ if (__beg != __end && __ctype.is(ctype_base::space, *__beg))
+ ++__beg;
+ else
+ __testvalid = false;
+ case money_base::none:
+ // Only if not at the end of the pattern.
+ if (__i != 3)
+ for (; __beg != __end
+ && __ctype.is(ctype_base::space, *__beg); ++__beg);
+ break;
+ }
+ }
+
+ // Need to get the rest of the sign characters, if they exist.
+ if (__sign_size > 1 && __testvalid)
+ {
+ const char_type* __sign = __negative ? __lc->_M_negative_sign
+ : __lc->_M_positive_sign;
+ size_type __i = 1;
+ for (; __beg != __end && __i < __sign_size
+ && *__beg == __sign[__i]; ++__beg, ++__i);
+
+ if (__i != __sign_size)
+ __testvalid = false;
+ }
+
+ if (__testvalid)
+ {
+ // Strip leading zeros.
+ if (__res.size() > 1)
+ {
+ const size_type __first = __res.find_first_not_of('0');
+ const bool __only_zeros = __first == string::npos;
+ if (__first)
+ __res.erase(0, __only_zeros ? __res.size() - 1 : __first);
+ }
+
+ // 22.2.6.1.2, p4
+ if (__negative && __res[0] != '0')
+ __res.insert(__res.begin(), '-');
+
+ // Test for grouping fidelity.
+ if (__grouping_tmp.size())
+ {
+ // Add the ending grouping.
+ __grouping_tmp += static_cast<char>(__testdecfound ? __last_pos
+ : __n);
+ if (!std::__verify_grouping(__lc->_M_grouping,
+ __lc->_M_grouping_size,
+ __grouping_tmp))
+ __testvalid = false;
+ }
+
+ // Iff not enough digits were supplied after the decimal-point.
+ if (__testdecfound && __lc->_M_frac_digits > 0
+ && __n != __lc->_M_frac_digits)
+ __testvalid = false;
+ }
+
+ // Iff no more characters are available.
+ if (__beg == __end)
+ __err |= ios_base::eofbit;
+
+ // Iff valid sequence is not recognized.
+ if (!__testvalid)
+ __err |= ios_base::failbit;
+ else
+ __units.swap(__res);
+
+ return __beg;
+ }
template<typename _CharT, typename _InIter>
_InIter
money_get<_CharT, _InIter>::
- do_get(iter_type __beg, iter_type __end, bool __intl, ios_base& __io,
+ do_get(iter_type __beg, iter_type __end, bool __intl, ios_base& __io,
ios_base::iostate& __err, long double& __units) const
- {
- string_type __str;
- __beg = this->do_get(__beg, __end, __intl, __io, __err, __str);
-
- const int __cs_size = __str.size() + 1;
- char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
- const locale __loc = __io.getloc();
- const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
- const _CharT* __wcs = __str.c_str();
- __ctype.narrow(__wcs, __wcs + __cs_size, char(), __cs);
- std::__convert_to_v(__cs, __units, __err, _S_get_c_locale());
+ {
+ string __str;
+ if (__intl)
+ __beg = _M_extract<true>(__beg, __end, __io, __err, __str);
+ else
+ __beg = _M_extract<false>(__beg, __end, __io, __err, __str);
+ std::__convert_to_v(__str.c_str(), __units, __err, _S_get_c_locale());
return __beg;
}
template<typename _CharT, typename _InIter>
_InIter
money_get<_CharT, _InIter>::
- do_get(iter_type __beg, iter_type __end, bool __intl, ios_base& __io,
+ do_get(iter_type __beg, iter_type __end, bool __intl, ios_base& __io,
ios_base::iostate& __err, string_type& __units) const
- {
- // These contortions are quite unfortunate.
- typedef moneypunct<_CharT, true> __money_true;
- typedef moneypunct<_CharT, false> __money_false;
- typedef money_base::part part;
- typedef typename string_type::size_type size_type;
-
- const locale __loc = __io.getloc();
- const __money_true& __mpt = use_facet<__money_true>(__loc);
- const __money_false& __mpf = use_facet<__money_false>(__loc);
- const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
-
- const money_base::pattern __p = __intl ? __mpt.neg_format()
- : __mpf.neg_format();
-
- const string_type __pos_sign = __intl ? __mpt.positive_sign()
- : __mpf.positive_sign();
- const string_type __neg_sign = __intl ? __mpt.negative_sign()
- : __mpf.negative_sign();
- const char_type __d = __intl ? __mpt.decimal_point()
- : __mpf.decimal_point();
- const char_type __sep = __intl ? __mpt.thousands_sep()
- : __mpf.thousands_sep();
-
- const string __grouping = __intl ? __mpt.grouping() : __mpf.grouping();
-
- // Set to deduced positive or negative sign, depending.
- string_type __sign;
- // String of grouping info from thousands_sep plucked from __units.
- string __grouping_tmp;
- // Marker for thousands_sep position.
- int __sep_pos = 0;
- // If input iterator is in a valid state.
- bool __testvalid = true;
- // Flag marking when a decimal point is found.
- bool __testdecfound = false;
+ {
+ typedef typename string::size_type size_type;
- // The tentative returned string is stored here.
- string_type __tmp_units;
+ const locale& __loc = __io._M_getloc();
+ const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
- for (int __i = 0; __beg != __end && __i < 4 && __testvalid; ++__i)
- {
- char_type __c;
- const part __which = static_cast<part>(__p.field[__i]);
- switch (__which)
- {
- case money_base::symbol:
- if (__io.flags() & ios_base::showbase
- || __i < 2 || __sign.size() > 1
- || ((static_cast<part>(__p.field[3]) != money_base::none)
- && __i == 2))
- {
- // According to 22.2.6.1.2.2, symbol is required
- // if (__io.flags() & ios_base::showbase),
- // otherwise is optional and consumed only if
- // other characters are needed to complete the
- // format.
- const string_type __symbol = __intl ? __mpt.curr_symbol()
- : __mpf.curr_symbol();
- const size_type __len = __symbol.size();
- size_type __j = 0;
- for (; __beg != __end && __j < __len
- && *__beg == __symbol[__j]; ++__beg, ++__j);
- // When (__io.flags() & ios_base::showbase)
- // symbol is required.
- if (__j != __len && (__io.flags() & ios_base::showbase))
- __testvalid = false;
- }
- break;
- case money_base::sign:
- // Sign might not exist, or be more than one character long.
- if (__pos_sign.size() && *__beg == __pos_sign[0])
- {
- __sign = __pos_sign;
- ++__beg;
- }
- else if (__neg_sign.size() && *__beg == __neg_sign[0])
- {
- __sign = __neg_sign;
- ++__beg;
- }
- else if (__pos_sign.size() && __neg_sign.size())
- {
- // Sign is mandatory.
- __testvalid = false;
- }
- break;
- case money_base::value:
- // Extract digits, remove and stash away the
- // grouping of found thousands separators.
- for (; __beg != __end; ++__beg)
- if (__ctype.is(ctype_base::digit, __c = *__beg))
- {
- __tmp_units += __c;
- ++__sep_pos;
- }
- else if (__c == __d && !__testdecfound)
- {
- __grouping_tmp += static_cast<char>(__sep_pos);
- __sep_pos = 0;
- __testdecfound = true;
- }
- else if (__c == __sep)
- {
- if (__grouping.size())
- {
- // Mark position for later analysis.
- __grouping_tmp += static_cast<char>(__sep_pos);
- __sep_pos = 0;
- }
- else
- {
- __testvalid = false;
- break;
- }
- }
- else
- break;
- break;
- case money_base::space:
- case money_base::none:
- // Only if not at the end of the pattern.
- if (__i != 3)
- for (; __beg != __end
- && __ctype.is(ctype_base::space, *__beg); ++__beg);
- break;
- }
- }
-
- // Need to get the rest of the sign characters, if they exist.
- if (__sign.size() > 1)
+ string __str;
+ const iter_type __ret = __intl ? _M_extract<true>(__beg, __end, __io,
+ __err, __str)
+ : _M_extract<false>(__beg, __end, __io,
+ __err, __str);
+ const size_type __len = __str.size();
+ if (__len)
{
- const size_type __len = __sign.size();
- size_type __i = 1;
- for (; __beg != __end && __i < __len; ++__i)
- for (; __beg != __end
- && *__beg != __sign[__i]; ++__beg);
-
- if (__i != __len)
- __testvalid = false;
+ _CharT* __ws = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
+ * __len));
+ __ctype.widen(__str.data(), __str.data() + __len, __ws);
+ __units.assign(__ws, __len);
}
- if (__testvalid && __tmp_units.size())
- {
- const char_type __zero = __ctype.widen('0');
+ return __ret;
+ }
- // Strip leading zeros.
- if (__tmp_units.size() > 1)
- {
- const size_type __first = __tmp_units.find_first_not_of(__zero);
- const bool __only_zeros = __first == string_type::npos;
- if (__first)
- __tmp_units.erase(0, __only_zeros ? __tmp_units.size() - 1
- : __first);
- }
-
- // 22.2.6.1.2, p4
- if (__sign.size() && __sign == __neg_sign
- && __tmp_units[0] != __zero)
- __tmp_units.insert(__tmp_units.begin(), __ctype.widen('-'));
-
- // Test for grouping fidelity.
- if (__grouping.size() && __grouping_tmp.size())
- {
- if (!std::__verify_grouping(__grouping.data(),
- __grouping.size(),
- __grouping_tmp))
- __testvalid = false;
- }
-
- // Iff not enough digits were supplied after the decimal-point.
- if (__testdecfound)
- {
- const int __frac = __intl ? __mpt.frac_digits()
- : __mpf.frac_digits();
- if (__frac > 0 && __sep_pos != __frac)
- __testvalid = false;
- }
- }
- else
- __testvalid = false;
+ template<typename _CharT, typename _OutIter>
+ template<bool _Intl>
+ _OutIter
+ money_put<_CharT, _OutIter>::
+ _M_insert(iter_type __s, ios_base& __io, char_type __fill,
+ const string_type& __digits) const
+ {
+ typedef typename string_type::size_type size_type;
+ typedef money_base::part part;
+ typedef moneypunct<_CharT, _Intl> __moneypunct_type;
+ typedef typename __moneypunct_type::__cache_type __cache_type;
+
+ const locale& __loc = __io._M_getloc();
+ const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
- // Iff no more characters are available.
- if (__beg == __end)
- __err |= ios_base::eofbit;
+ __use_cache<__cache_type> __uc;
+ const __cache_type* __lc = __uc(__loc);
+ const char_type* __lit = __lc->_M_atoms;
- // Iff valid sequence is not recognized.
- if (!__testvalid)
- __err |= ios_base::failbit;
- else
- // Use the "swap trick" to copy __tmp_units into __units.
- __tmp_units.swap(__units);
+ // Determine if negative or positive formats are to be used, and
+ // discard leading negative_sign if it is present.
+ const char_type* __beg = __digits.data();
- return __beg;
- }
+ money_base::pattern __p;
+ const char_type* __sign;
+ size_type __sign_size;
+ if (*__beg != __lit[money_base::_S_minus])
+ {
+ __p = __lc->_M_pos_format;
+ __sign = __lc->_M_positive_sign;
+ __sign_size = __lc->_M_positive_sign_size;
+ }
+ else
+ {
+ __p = __lc->_M_neg_format;
+ __sign = __lc->_M_negative_sign;
+ __sign_size = __lc->_M_negative_sign_size;
+ if (__digits.size())
+ ++__beg;
+ }
+
+ // Look for valid numbers in the ctype facet within input digits.
+ size_type __len = __ctype.scan_not(ctype_base::digit, __beg,
+ __beg + __digits.size()) - __beg;
+ if (__len)
+ {
+ // Assume valid input, and attempt to format.
+ // Break down input numbers into base components, as follows:
+ // final_value = grouped units + (decimal point) + (digits)
+ string_type __value;
+ __value.reserve(2 * __len);
+
+ // Add thousands separators to non-decimal digits, per
+ // grouping rules.
+ int __paddec = __len - __lc->_M_frac_digits;
+ if (__paddec > 0)
+ {
+ if (__lc->_M_frac_digits < 0)
+ __paddec = __len;
+ if (__lc->_M_grouping_size)
+ {
+ _CharT* __ws =
+ static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
+ * 2 * __len));
+ _CharT* __ws_end =
+ std::__add_grouping(__ws, __lc->_M_thousands_sep,
+ __lc->_M_grouping,
+ __lc->_M_grouping_size,
+ __beg, __beg + __paddec);
+ __value.assign(__ws, __ws_end - __ws);
+ }
+ else
+ __value.assign(__beg, __paddec);
+ }
+ // Deal with decimal point, decimal digits.
+ if (__lc->_M_frac_digits > 0)
+ {
+ __value += __lc->_M_decimal_point;
+ if (__paddec >= 0)
+ __value.append(__beg + __paddec, __lc->_M_frac_digits);
+ else
+ {
+ // Have to pad zeros in the decimal position.
+ __value.append(-__paddec, __lit[money_base::_S_zero]);
+ __value.append(__beg, __len);
+ }
+ }
+
+ // Calculate length of resulting string.
+ const ios_base::fmtflags __f = __io.flags()
+ & ios_base::adjustfield;
+ __len = __value.size() + __sign_size;
+ __len += ((__io.flags() & ios_base::showbase)
+ ? __lc->_M_curr_symbol_size : 0);
+
+ string_type __res;
+ __res.reserve(2 * __len);
+
+ const size_type __width = static_cast<size_type>(__io.width());
+ const bool __testipad = (__f == ios_base::internal
+ && __len < __width);
+ // Fit formatted digits into the required pattern.
+ for (int __i = 0; __i < 4; ++__i)
+ {
+ const part __which = static_cast<part>(__p.field[__i]);
+ switch (__which)
+ {
+ case money_base::symbol:
+ if (__io.flags() & ios_base::showbase)
+ __res.append(__lc->_M_curr_symbol,
+ __lc->_M_curr_symbol_size);
+ break;
+ case money_base::sign:
+ // Sign might not exist, or be more than one
+ // charater long. In that case, add in the rest
+ // below.
+ if (__sign_size)
+ __res += __sign[0];
+ break;
+ case money_base::value:
+ __res += __value;
+ break;
+ case money_base::space:
+ // At least one space is required, but if internal
+ // formatting is required, an arbitrary number of
+ // fill spaces will be necessary.
+ if (__testipad)
+ __res.append(__width - __len, __fill);
+ else
+ __res += __fill;
+ break;
+ case money_base::none:
+ if (__testipad)
+ __res.append(__width - __len, __fill);
+ break;
+ }
+ }
+
+ // Special case of multi-part sign parts.
+ if (__sign_size > 1)
+ __res.append(__sign + 1, __sign_size - 1);
+
+ // Pad, if still necessary.
+ __len = __res.size();
+ if (__width > __len)
+ {
+ if (__f == ios_base::left)
+ // After.
+ __res.append(__width - __len, __fill);
+ else
+ // Before.
+ __res.insert(0, __width - __len, __fill);
+ __len = __width;
+ }
+
+ // Write resulting, fully-formatted string to output iterator.
+ __s = std::__write(__s, __res.data(), __len);
+ }
+ __io.width(0);
+ return __s;
+ }
+
template<typename _CharT, typename _OutIter>
_OutIter
money_put<_CharT, _OutIter>::
do_put(iter_type __s, bool __intl, ios_base& __io, char_type __fill,
long double __units) const
- {
+ {
const locale __loc = __io.getloc();
const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
#ifdef _GLIBCXX_USE_C99
@@ -1365,28 +1676,29 @@ namespace std
char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 328. Bad sprintf format modifier in money_put<>::do_put()
- int __len = std::__convert_from_v(__cs, __cs_size, "%.0Lf", __units,
+ int __len = std::__convert_from_v(__cs, __cs_size, "%.0Lf", __units,
_S_get_c_locale());
// If the buffer was not large enough, try again with the correct size.
if (__len >= __cs_size)
{
__cs_size = __len + 1;
__cs = static_cast<char*>(__builtin_alloca(__cs_size));
- __len = std::__convert_from_v(__cs, __cs_size, "%.0Lf", __units,
+ __len = std::__convert_from_v(__cs, __cs_size, "%.0Lf", __units,
_S_get_c_locale());
}
#else
- // max_exponent10 + 1 for the integer part, + 2 for sign and '\0'.
+ // max_exponent10 + 1 for the integer part, + 2 for sign and '\0'.
const int __cs_size = numeric_limits<long double>::max_exponent10 + 3;
char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
- int __len = std::__convert_from_v(__cs, 0, "%.0Lf", __units,
+ int __len = std::__convert_from_v(__cs, 0, "%.0Lf", __units,
_S_get_c_locale());
#endif
- _CharT* __ws = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
+ _CharT* __ws = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
* __cs_size));
__ctype.widen(__cs, __cs + __len, __ws);
- string_type __digits(__ws);
- return this->do_put(__s, __intl, __io, __fill, __digits);
+ const string_type __digits(__ws, __len);
+ return __intl ? _M_insert<true>(__s, __io, __fill, __digits)
+ : _M_insert<false>(__s, __io, __fill, __digits);
}
template<typename _CharT, typename _OutIter>
@@ -1394,163 +1706,8 @@ namespace std
money_put<_CharT, _OutIter>::
do_put(iter_type __s, bool __intl, ios_base& __io, char_type __fill,
const string_type& __digits) const
- {
- typedef typename string_type::size_type size_type;
- typedef money_base::part part;
-
- const locale __loc = __io.getloc();
- const size_type __width = static_cast<size_type>(__io.width());
-
- // These contortions are quite unfortunate.
- typedef moneypunct<_CharT, true> __money_true;
- typedef moneypunct<_CharT, false> __money_false;
- const __money_true& __mpt = use_facet<__money_true>(__loc);
- const __money_false& __mpf = use_facet<__money_false>(__loc);
- const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
-
- // Determine if negative or positive formats are to be used, and
- // discard leading negative_sign if it is present.
- const char_type* __beg = __digits.data();
- const char_type* __end = __beg + __digits.size();
- money_base::pattern __p;
- string_type __sign;
- if (*__beg != __ctype.widen('-'))
- {
- __p = __intl ? __mpt.pos_format() : __mpf.pos_format();
- __sign = __intl ? __mpt.positive_sign() : __mpf.positive_sign();
- }
- else
- {
- __p = __intl ? __mpt.neg_format() : __mpf.neg_format();
- __sign = __intl ? __mpt.negative_sign() : __mpf.negative_sign();
- ++__beg;
- }
-
- // Look for valid numbers in the current ctype facet within input digits.
- __end = __ctype.scan_not(ctype_base::digit, __beg, __end);
- if (__beg != __end)
- {
- // Assume valid input, and attempt to format.
- // Break down input numbers into base components, as follows:
- // final_value = grouped units + (decimal point) + (digits)
- string_type __res;
- string_type __value;
- const string_type __symbol = __intl ? __mpt.curr_symbol()
- : __mpf.curr_symbol();
-
- // Deal with decimal point, decimal digits.
- const int __frac = __intl ? __mpt.frac_digits()
- : __mpf.frac_digits();
- if (__frac > 0)
- {
- const char_type __d = __intl ? __mpt.decimal_point()
- : __mpf.decimal_point();
- if (__end - __beg >= __frac)
- {
- __value = string_type(__end - __frac, __end);
- __value.insert(__value.begin(), __d);
- __end -= __frac;
- }
- else
- {
- // Have to pad zeros in the decimal position.
- __value = string_type(__beg, __end);
- const int __paddec = __frac - (__end - __beg);
- const char_type __zero = __ctype.widen('0');
- __value.insert(__value.begin(), __paddec, __zero);
- __value.insert(__value.begin(), __d);
- __beg = __end;
- }
- }
-
- // Add thousands separators to non-decimal digits, per
- // grouping rules.
- if (__beg != __end)
- {
- const string __grouping = __intl ? __mpt.grouping()
- : __mpf.grouping();
- if (__grouping.size())
- {
- const char_type __sep = __intl ? __mpt.thousands_sep()
- : __mpf.thousands_sep();
- const char* __gbeg = __grouping.data();
- const size_t __glen = __grouping.size();
- const int __n = (__end - __beg) * 2;
- _CharT* __ws2 =
- static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT) * __n));
- _CharT* __ws_end = std::__add_grouping(__ws2, __sep, __gbeg,
- __glen, __beg, __end);
- __value.insert(0, __ws2, __ws_end - __ws2);
- }
- else
- __value.insert(0, string_type(__beg, __end));
- }
-
- // Calculate length of resulting string.
- const ios_base::fmtflags __f = __io.flags() & ios_base::adjustfield;
- size_type __len = __value.size() + __sign.size();
- __len += (__io.flags() & ios_base::showbase) ? __symbol.size() : 0;
- const bool __testipad = __f == ios_base::internal && __len < __width;
-
- // Fit formatted digits into the required pattern.
- for (int __i = 0; __i < 4; ++__i)
- {
- const part __which = static_cast<part>(__p.field[__i]);
- switch (__which)
- {
- case money_base::symbol:
- if (__io.flags() & ios_base::showbase)
- __res += __symbol;
- break;
- case money_base::sign:
- // Sign might not exist, or be more than one
- // charater long. In that case, add in the rest
- // below.
- if (__sign.size())
- __res += __sign[0];
- break;
- case money_base::value:
- __res += __value;
- break;
- case money_base::space:
- // At least one space is required, but if internal
- // formatting is required, an arbitrary number of
- // fill spaces will be necessary.
- if (__testipad)
- __res += string_type(__width - __len, __fill);
- else
- __res += __ctype.widen(__fill);
- break;
- case money_base::none:
- if (__testipad)
- __res += string_type(__width - __len, __fill);
- break;
- }
- }
-
- // Special case of multi-part sign parts.
- if (__sign.size() > 1)
- __res += string_type(__sign.begin() + 1, __sign.end());
-
- // Pad, if still necessary.
- __len = __res.size();
- if (__width > __len)
- {
- if (__f == ios_base::left)
- // After.
- __res.append(__width - __len, __fill);
- else
- // Before.
- __res.insert(0, string_type(__width - __len, __fill));
- __len = __width;
- }
-
- // Write resulting, fully-formatted string to output iterator.
- __s = std::__write(__s, __res.data(), __len);
- }
- __io.width(0);
- return __s;
- }
+ { return __intl ? _M_insert<true>(__s, __io, __fill, __digits)
+ : _M_insert<false>(__s, __io, __fill, __digits); }
// NB: Not especially useful. Without an ios_base object or some
@@ -1566,15 +1723,15 @@ namespace std
// specific string, which may contain yet more strings. I.e. %x => %r =>
// %H:%M:%S => extracted characters.
template<typename _CharT, typename _InIter>
- void
+ _InIter
time_get<_CharT, _InIter>::
- _M_extract_via_format(iter_type& __beg, iter_type& __end, ios_base& __io,
- ios_base::iostate& __err, tm* __tm,
+ _M_extract_via_format(iter_type __beg, iter_type __end, ios_base& __io,
+ ios_base::iostate& __err, tm* __tm,
const _CharT* __format) const
- {
- const locale __loc = __io.getloc();
+ {
+ const locale& __loc = __io._M_getloc();
const __timepunct<_CharT>& __tp = use_facet<__timepunct<_CharT> >(__loc);
- const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
+ const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
const size_t __len = char_traits<_CharT>::length(__format);
for (size_t __i = 0; __beg != __end && __i < __len && !__err; ++__i)
@@ -1583,7 +1740,7 @@ namespace std
{
// Verify valid formatting code, attempt to extract.
char __c = __ctype.narrow(__format[++__i], 0);
- int __mem = 0;
+ int __mem = 0;
if (__c == 'E' || __c == 'O')
__c = __ctype.narrow(__format[++__i], 0);
switch (__c)
@@ -1594,81 +1751,81 @@ namespace std
// Abbreviated weekday name [tm_wday]
const char_type* __days1[7];
__tp._M_days_abbreviated(__days1);
- _M_extract_name(__beg, __end, __tm->tm_wday, __days1, 7,
- __ctype, __err);
+ __beg = _M_extract_name(__beg, __end, __tm->tm_wday, __days1,
+ 7, __io, __err);
break;
case 'A':
// Weekday name [tm_wday].
const char_type* __days2[7];
__tp._M_days(__days2);
- _M_extract_name(__beg, __end, __tm->tm_wday, __days2, 7,
- __ctype, __err);
+ __beg = _M_extract_name(__beg, __end, __tm->tm_wday, __days2,
+ 7, __io, __err);
break;
case 'h':
case 'b':
// Abbreviated month name [tm_mon]
const char_type* __months1[12];
__tp._M_months_abbreviated(__months1);
- _M_extract_name(__beg, __end, __tm->tm_mon, __months1, 12,
- __ctype, __err);
+ __beg = _M_extract_name(__beg, __end, __tm->tm_mon,
+ __months1, 12, __io, __err);
break;
case 'B':
// Month name [tm_mon].
const char_type* __months2[12];
__tp._M_months(__months2);
- _M_extract_name(__beg, __end, __tm->tm_mon, __months2, 12,
- __ctype, __err);
+ __beg = _M_extract_name(__beg, __end, __tm->tm_mon,
+ __months2, 12, __io, __err);
break;
case 'c':
// Default time and date representation.
const char_type* __dt[2];
__tp._M_date_time_formats(__dt);
- _M_extract_via_format(__beg, __end, __io, __err, __tm,
- __dt[0]);
+ __beg = _M_extract_via_format(__beg, __end, __io, __err,
+ __tm, __dt[0]);
break;
case 'd':
// Day [01, 31]. [tm_mday]
- _M_extract_num(__beg, __end, __tm->tm_mday, 1, 31, 2,
- __ctype, __err);
+ __beg = _M_extract_num(__beg, __end, __tm->tm_mday, 1, 31, 2,
+ __io, __err);
break;
case 'e':
// Day [1, 31], with single digits preceded by
// space. [tm_mday]
if (__ctype.is(ctype_base::space, *__beg))
- _M_extract_num(++__beg, __end, __tm->tm_mday, 1, 9, 1,
- __ctype, __err);
+ __beg = _M_extract_num(++__beg, __end, __tm->tm_mday, 1, 9,
+ 1, __io, __err);
else
- _M_extract_num(__beg, __end, __tm->tm_mday, 10, 31, 2,
- __ctype, __err);
- break;
+ __beg = _M_extract_num(__beg, __end, __tm->tm_mday, 10, 31,
+ 2, __io, __err);
+ break;
case 'D':
// Equivalent to %m/%d/%y.[tm_mon, tm_mday, tm_year]
__cs = "%m/%d/%y";
__ctype.widen(__cs, __cs + 9, __wcs);
- _M_extract_via_format(__beg, __end, __io, __err, __tm,
- __wcs);
+ __beg = _M_extract_via_format(__beg, __end, __io, __err,
+ __tm, __wcs);
break;
case 'H':
// Hour [00, 23]. [tm_hour]
- _M_extract_num(__beg, __end, __tm->tm_hour, 0, 23, 2,
- __ctype, __err);
+ __beg = _M_extract_num(__beg, __end, __tm->tm_hour, 0, 23, 2,
+ __io, __err);
break;
case 'I':
// Hour [01, 12]. [tm_hour]
- _M_extract_num(__beg, __end, __tm->tm_hour, 1, 12, 2,
- __ctype, __err);
+ __beg = _M_extract_num(__beg, __end, __tm->tm_hour, 1, 12, 2,
+ __io, __err);
break;
case 'm':
// Month [01, 12]. [tm_mon]
- _M_extract_num(__beg, __end, __mem, 1, 12, 2, __ctype,
- __err);
+ __beg = _M_extract_num(__beg, __end, __mem, 1, 12, 2,
+ __io, __err);
if (!__err)
__tm->tm_mon = __mem - 1;
break;
case 'M':
// Minute [00, 59]. [tm_min]
- _M_extract_num(__beg, __end, __tm->tm_min, 0, 59, 2,
- __ctype, __err);
+ __beg = _M_extract_num(__beg, __end, __tm->tm_min, 0, 59, 2,
+ __io, __err);
break;
case 'n':
if (__ctype.narrow(*__beg, 0) == '\n')
@@ -1680,13 +1837,13 @@ namespace std
// Equivalent to (%H:%M).
__cs = "%H:%M";
__ctype.widen(__cs, __cs + 6, __wcs);
- _M_extract_via_format(__beg, __end, __io, __err, __tm,
- __wcs);
+ __beg = _M_extract_via_format(__beg, __end, __io, __err,
+ __tm, __wcs);
break;
case 'S':
// Seconds.
- _M_extract_num(__beg, __end, __tm->tm_sec, 0, 59, 2,
- __ctype, __err);
+ __beg = _M_extract_num(__beg, __end, __tm->tm_sec, 0, 59, 2,
+ __io, __err);
break;
case 't':
if (__ctype.narrow(*__beg, 0) == '\t')
@@ -1698,33 +1855,33 @@ namespace std
// Equivalent to (%H:%M:%S).
__cs = "%H:%M:%S";
__ctype.widen(__cs, __cs + 9, __wcs);
- _M_extract_via_format(__beg, __end, __io, __err, __tm,
- __wcs);
+ __beg = _M_extract_via_format(__beg, __end, __io, __err,
+ __tm, __wcs);
break;
case 'x':
// Locale's date.
const char_type* __dates[2];
__tp._M_date_formats(__dates);
- _M_extract_via_format(__beg, __end, __io, __err, __tm,
- __dates[0]);
+ __beg = _M_extract_via_format(__beg, __end, __io, __err,
+ __tm, __dates[0]);
break;
case 'X':
// Locale's time.
const char_type* __times[2];
__tp._M_time_formats(__times);
- _M_extract_via_format(__beg, __end, __io, __err, __tm,
- __times[0]);
+ __beg = _M_extract_via_format(__beg, __end, __io, __err,
+ __tm, __times[0]);
break;
case 'y':
case 'C': // C99
// Two digit year. [tm_year]
- _M_extract_num(__beg, __end, __tm->tm_year, 0, 99, 2,
- __ctype, __err);
+ __beg = _M_extract_num(__beg, __end, __tm->tm_year, 0, 99, 2,
+ __io, __err);
break;
case 'Y':
// Year [1900). [tm_year]
- _M_extract_num(__beg, __end, __mem, 0, 9999, 4,
- __ctype, __err);
+ __beg = _M_extract_num(__beg, __end, __mem, 0, 9999, 4,
+ __io, __err);
if (!__err)
__tm->tm_year = __mem - 1900;
break;
@@ -1733,20 +1890,20 @@ namespace std
if (__ctype.is(ctype_base::upper, *__beg))
{
int __tmp;
- _M_extract_name(__beg, __end, __tmp,
- __timepunct_cache<_CharT>::_S_timezones,
- 14, __ctype, __err);
-
+ __beg = _M_extract_name(__beg, __end, __tmp,
+ __timepunct_cache<_CharT>::_S_timezones,
+ 14, __io, __err);
+
// GMT requires special effort.
if (__beg != __end && !__err && __tmp == 0
- && (*__beg == __ctype.widen('-')
+ && (*__beg == __ctype.widen('-')
|| *__beg == __ctype.widen('+')))
{
- _M_extract_num(__beg, __end, __tmp, 0, 23, 2,
- __ctype, __err);
- _M_extract_num(__beg, __end, __tmp, 0, 59, 2,
- __ctype, __err);
- }
+ __beg = _M_extract_num(__beg, __end, __tmp, 0, 23, 2,
+ __io, __err);
+ __beg = _M_extract_num(__beg, __end, __tmp, 0, 59, 2,
+ __io, __err);
+ }
}
else
__err |= ios_base::failbit;
@@ -1765,16 +1922,19 @@ namespace std
__err |= ios_base::failbit;
}
}
+ return __beg;
}
template<typename _CharT, typename _InIter>
- void
+ _InIter
time_get<_CharT, _InIter>::
- _M_extract_num(iter_type& __beg, iter_type& __end, int& __member,
- int __min, int __max, size_t __len,
- const ctype<_CharT>& __ctype,
- ios_base::iostate& __err) const
+ _M_extract_num(iter_type __beg, iter_type __end, int& __member,
+ int __min, int __max, size_t __len,
+ ios_base& __io, ios_base::iostate& __err) const
{
+ const locale& __loc = __io._M_getloc();
+ const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
+
// As-is works for __len = 1, 2, 4, the values actually used.
int __mult = __len == 2 ? 10 : (__len == 4 ? 1000 : 1);
@@ -1799,27 +1959,30 @@ namespace std
__member = __value;
else
__err |= ios_base::failbit;
+ return __beg;
}
// Assumptions:
// All elements in __names are unique.
template<typename _CharT, typename _InIter>
- void
+ _InIter
time_get<_CharT, _InIter>::
- _M_extract_name(iter_type& __beg, iter_type& __end, int& __member,
- const _CharT** __names, size_t __indexlen,
- const ctype<_CharT>& __ctype,
- ios_base::iostate& __err) const
+ _M_extract_name(iter_type __beg, iter_type __end, int& __member,
+ const _CharT** __names, size_t __indexlen,
+ ios_base& __io, ios_base::iostate& __err) const
{
- typedef char_traits<_CharT> __traits_type;
- int* __matches = static_cast<int*>(__builtin_alloca(sizeof(int)
+ typedef char_traits<_CharT> __traits_type;
+ const locale& __loc = __io._M_getloc();
+ const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
+
+ int* __matches = static_cast<int*>(__builtin_alloca(sizeof(int)
* __indexlen));
size_t __nmatches = 0;
size_t __pos = 0;
bool __testvalid = true;
const char_type* __name;
- // Look for initial matches.
+ // Look for initial matches.
// NB: Some of the locale data is in the form of all lowercase
// names, and some is in the form of initially-capitalized
// names. Look for both.
@@ -1827,18 +1990,18 @@ namespace std
{
const char_type __c = *__beg;
for (size_t __i1 = 0; __i1 < __indexlen; ++__i1)
- if (__c == __names[__i1][0]
+ if (__c == __names[__i1][0]
|| __c == __ctype.toupper(__names[__i1][0]))
__matches[__nmatches++] = __i1;
}
-
+
while (__nmatches > 1)
{
// Find smallest matching string.
size_t __minlen = 10;
for (size_t __i2 = 0; __i2 < __nmatches; ++__i2)
- __minlen = std::min(__minlen,
- __traits_type::length(__names[__matches[__i2]]));
+ __minlen = std::min(__minlen,
+ __traits_type::length(__names[__matches[__i2]]));
++__beg;
if (__pos < __minlen && __beg != __end)
{
@@ -1878,6 +2041,7 @@ namespace std
__testvalid = false;
if (!__testvalid)
__err |= ios_base::failbit;
+ return __beg;
}
template<typename _CharT, typename _InIter>
@@ -1888,10 +2052,10 @@ namespace std
{
_CharT __wcs[3];
const char* __cs = "%X";
- const locale __loc = __io.getloc();
+ const locale& __loc = __io._M_getloc();
ctype<_CharT> const& __ctype = use_facet<ctype<_CharT> >(__loc);
__ctype.widen(__cs, __cs + 3, __wcs);
- _M_extract_via_format(__beg, __end, __io, __err, __tm, __wcs);
+ __beg = _M_extract_via_format(__beg, __end, __io, __err, __tm, __wcs);
if (__beg == __end)
__err |= ios_base::eofbit;
return __beg;
@@ -1905,10 +2069,10 @@ namespace std
{
_CharT __wcs[3];
const char* __cs = "%x";
- const locale __loc = __io.getloc();
+ const locale& __loc = __io._M_getloc();
ctype<_CharT> const& __ctype = use_facet<ctype<_CharT> >(__loc);
__ctype.widen(__cs, __cs + 3, __wcs);
- _M_extract_via_format(__beg, __end, __io, __err, __tm, __wcs);
+ __beg = _M_extract_via_format(__beg, __end, __io, __err, __tm, __wcs);
if (__beg == __end)
__err |= ios_base::eofbit;
return __beg;
@@ -1917,24 +2081,24 @@ namespace std
template<typename _CharT, typename _InIter>
_InIter
time_get<_CharT, _InIter>::
- do_get_weekday(iter_type __beg, iter_type __end, ios_base& __io,
+ do_get_weekday(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, tm* __tm) const
{
- typedef char_traits<_CharT> __traits_type;
- const locale __loc = __io.getloc();
+ typedef char_traits<_CharT> __traits_type;
+ const locale& __loc = __io._M_getloc();
const __timepunct<_CharT>& __tp = use_facet<__timepunct<_CharT> >(__loc);
- const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
+ const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
const char_type* __days[7];
__tp._M_days_abbreviated(__days);
int __tmpwday;
- _M_extract_name(__beg, __end, __tmpwday, __days, 7, __ctype, __err);
+ __beg = _M_extract_name(__beg, __end, __tmpwday, __days, 7, __io, __err);
// Check to see if non-abbreviated name exists, and extract.
// NB: Assumes both _M_days and _M_days_abbreviated organized in
// exact same order, first to last, such that the resulting
// __days array with the same index points to a day, and that
// day's abbreviated form.
- // NB: Also assumes that an abbreviated name is a subset of the name.
+ // NB: Also assumes that an abbreviated name is a subset of the name.
if (!__err)
{
size_t __pos = __traits_type::length(__days[__tmpwday]);
@@ -1944,7 +2108,7 @@ namespace std
{
// Extract the rest of it.
const size_t __len = __traits_type::length(__name);
- while (__pos < __len && __beg != __end
+ while (__pos < __len && __beg != __end
&& __name[__pos] == *__beg)
++__beg, ++__pos;
if (__len != __pos)
@@ -1964,21 +2128,22 @@ namespace std
do_get_monthname(iter_type __beg, iter_type __end,
ios_base& __io, ios_base::iostate& __err, tm* __tm) const
{
- typedef char_traits<_CharT> __traits_type;
- const locale __loc = __io.getloc();
+ typedef char_traits<_CharT> __traits_type;
+ const locale& __loc = __io._M_getloc();
const __timepunct<_CharT>& __tp = use_facet<__timepunct<_CharT> >(__loc);
- const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
+ const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
const char_type* __months[12];
__tp._M_months_abbreviated(__months);
int __tmpmon;
- _M_extract_name(__beg, __end, __tmpmon, __months, 12, __ctype, __err);
+ __beg = _M_extract_name(__beg, __end, __tmpmon, __months, 12,
+ __io, __err);
// Check to see if non-abbreviated name exists, and extract.
// NB: Assumes both _M_months and _M_months_abbreviated organized in
// exact same order, first to last, such that the resulting
// __months array with the same index points to a month, and that
// month's abbreviated form.
- // NB: Also assumes that an abbreviated name is a subset of the name.
+ // NB: Also assumes that an abbreviated name is a subset of the name.
if (!__err)
{
size_t __pos = __traits_type::length(__months[__tmpmon]);
@@ -1988,7 +2153,7 @@ namespace std
{
// Extract the rest of it.
const size_t __len = __traits_type::length(__name);
- while (__pos < __len && __beg != __end
+ while (__pos < __len && __beg != __end
&& __name[__pos] == *__beg)
++__beg, ++__pos;
if (__len != __pos)
@@ -1997,7 +2162,7 @@ namespace std
if (!__err)
__tm->tm_mon = __tmpmon;
}
-
+
if (__beg == __end)
__err |= ios_base::eofbit;
return __beg;
@@ -2006,11 +2171,11 @@ namespace std
template<typename _CharT, typename _InIter>
_InIter
time_get<_CharT, _InIter>::
- do_get_year(iter_type __beg, iter_type __end, ios_base& __io,
+ do_get_year(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, tm* __tm) const
{
- const locale __loc = __io.getloc();
- const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
+ const locale& __loc = __io._M_getloc();
+ const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
size_t __i = 0;
int __value = 0;
@@ -2023,7 +2188,7 @@ namespace std
break;
}
if (__i == 2 || __i == 4)
- __tm->tm_year = __i == 2 ? __value : __value - 1900;
+ __tm->tm_year = __i == 2 ? __value : __value - 1900;
else
__err |= ios_base::failbit;
if (__beg == __end)
@@ -2034,10 +2199,10 @@ namespace std
template<typename _CharT, typename _OutIter>
_OutIter
time_put<_CharT, _OutIter>::
- put(iter_type __s, ios_base& __io, char_type __fill, const tm* __tm,
+ put(iter_type __s, ios_base& __io, char_type __fill, const tm* __tm,
const _CharT* __beg, const _CharT* __end) const
{
- const locale __loc = __io.getloc();
+ const locale& __loc = __io._M_getloc();
ctype<_CharT> const& __ctype = use_facet<ctype<_CharT> >(__loc);
for (; __beg != __end; ++__beg)
if (__ctype.narrow(*__beg, 0) != '%')
@@ -2059,8 +2224,7 @@ namespace std
}
else
break;
- __s = this->do_put(__s, __io, __fill, __tm,
- __format, __mod);
+ __s = this->do_put(__s, __io, __fill, __tm, __format, __mod);
}
else
break;
@@ -2070,18 +2234,18 @@ namespace std
template<typename _CharT, typename _OutIter>
_OutIter
time_put<_CharT, _OutIter>::
- do_put(iter_type __s, ios_base& __io, char_type, const tm* __tm,
+ do_put(iter_type __s, ios_base& __io, char_type, const tm* __tm,
char __format, char __mod) const
- {
- const locale __loc = __io.getloc();
+ {
+ const locale& __loc = __io._M_getloc();
ctype<_CharT> const& __ctype = use_facet<ctype<_CharT> >(__loc);
__timepunct<_CharT> const& __tp = use_facet<__timepunct<_CharT> >(__loc);
// NB: This size is arbitrary. Should this be a data member,
// initialized at construction?
const size_t __maxlen = 64;
- char_type* __res = static_cast<char_type*>(__builtin_alloca(sizeof(char_type)
- * __maxlen));
+ char_type* __res =
+ static_cast<char_type*>(__builtin_alloca(sizeof(char_type) * __maxlen));
// NB: In IEE 1003.1-200x, and perhaps other locale models, it
// is possible that the format character will be longer than one
@@ -2089,7 +2253,7 @@ namespace std
// format character: if __mod is not the default argument, assume
// it's a valid modifier.
char_type __fmt[4];
- __fmt[0] = __ctype.widen('%');
+ __fmt[0] = __ctype.widen('%');
if (!__mod)
{
__fmt[1] = __format;
@@ -2124,9 +2288,9 @@ namespace std
template<typename _CharT>
int
collate<_CharT>::
- do_compare(const _CharT* __lo1, const _CharT* __hi1,
+ do_compare(const _CharT* __lo1, const _CharT* __hi1,
const _CharT* __lo2, const _CharT* __hi2) const
- {
+ {
// strcoll assumes zero-terminated strings so we make a copy
// and then put a zero at the end.
const string_type __one(__lo1, __hi1);
@@ -2189,7 +2353,7 @@ namespace std
if (__res >= __len)
{
__len = __res + 1;
- __c = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
+ __c = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
* __len));
__res = _M_transform(__c, __p, __res + 1);
}
@@ -2208,16 +2372,16 @@ namespace std
long
collate<_CharT>::
do_hash(const _CharT* __lo, const _CharT* __hi) const
- {
+ {
unsigned long __val = 0;
for (; __lo < __hi; ++__lo)
- __val = *__lo + ((__val << 7) |
+ __val = *__lo + ((__val << 7) |
(__val >> (numeric_limits<unsigned long>::digits - 7)));
return static_cast<long>(__val);
}
// Construct correctly padded string, as per 22.2.2.2.2
- // Assumes
+ // Assumes
// __newlen > __oldlen
// __news is allocated for __newlen size
// Used by both num_put and ostream inserters: if __num,
@@ -2228,10 +2392,10 @@ namespace std
// NB: Of the two parameters, _CharT can be deduced from the
// function arguments. The other (_Traits) has to be explicitly specified.
template<typename _CharT, typename _Traits>
- void
- __pad<_CharT, _Traits>::_S_pad(ios_base& __io, _CharT __fill,
- _CharT* __news, const _CharT* __olds,
- const streamsize __newlen,
+ void
+ __pad<_CharT, _Traits>::_S_pad(ios_base& __io, _CharT __fill,
+ _CharT* __news, const _CharT* __olds,
+ const streamsize __newlen,
const streamsize __oldlen, const bool __num)
{
const size_t __plen = static_cast<size_t>(__newlen - __oldlen);
@@ -2252,18 +2416,17 @@ namespace std
// Pad after 0[xX], if there is one.
// Who came up with these rules, anyway? Jeeze.
const locale& __loc = __io._M_getloc();
- const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
- const _CharT __minus = __ctype.widen('-');
- const _CharT __plus = __ctype.widen('+');
- const bool __testsign = _Traits::eq(__olds[0], __minus)
- || _Traits::eq(__olds[0], __plus);
-
- const bool __testhex = _Traits::eq(__ctype.widen('0'), __olds[0])
- && (_Traits::eq(__ctype.widen('x'), __olds[1])
- || _Traits::eq(__ctype.widen('X'), __olds[1]));
+ const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
+
+ const bool __testsign = (__ctype.widen('-') == __olds[0]
+ || __ctype.widen('+') == __olds[0]);
+ const bool __testhex = (__ctype.widen('0') == __olds[0]
+ && __oldlen > 1
+ && (__ctype.widen('x') == __olds[1]
+ || __ctype.widen('X') == __olds[1]));
if (__testhex)
{
- __news[0] = __olds[0];
+ __news[0] = __olds[0];
__news[1] = __olds[1];
__mod = 2;
__news += 2;
@@ -2284,24 +2447,24 @@ namespace std
bool
__verify_grouping(const char* __grouping, size_t __grouping_size,
const string& __grouping_tmp)
- {
- const size_t __n = __grouping_tmp.size() - 1;
- const size_t __min = std::min(__n, __grouping_size - 1);
- size_t __i = __n;
- bool __test = true;
-
- // Parsed number groupings have to match the
- // numpunct::grouping string exactly, starting at the
- // right-most point of the parsed sequence of elements ...
- for (size_t __j = 0; __j < __min && __test; --__i, ++__j)
- __test = __grouping_tmp[__i] == __grouping[__j];
- for (; __i && __test; --__i)
- __test = __grouping_tmp[__i] == __grouping[__min];
- // ... but the last parsed grouping can be <= numpunct
- // grouping.
- __test &= __grouping_tmp[0] <= __grouping[__min];
- return __test;
- }
+ {
+ const size_t __n = __grouping_tmp.size() - 1;
+ const size_t __min = std::min(__n, __grouping_size - 1);
+ size_t __i = __n;
+ bool __test = true;
+
+ // Parsed number groupings have to match the
+ // numpunct::grouping string exactly, starting at the
+ // right-most point of the parsed sequence of elements ...
+ for (size_t __j = 0; __j < __min && __test; --__i, ++__j)
+ __test = __grouping_tmp[__i] == __grouping[__j];
+ for (; __i && __test; --__i)
+ __test = __grouping_tmp[__i] == __grouping[__min];
+ // ... but the last parsed grouping can be <= numpunct
+ // grouping.
+ __test &= __grouping_tmp[0] <= __grouping[__min];
+ return __test;
+ }
template<typename _CharT>
_CharT*
@@ -2325,7 +2488,7 @@ namespace std
}
// Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
+ // which are defined via explicit instantiations elsewhere.
// NB: This syntax is a GNU extension.
#if _GLIBCXX_EXTERN_TEMPLATE
extern template class moneypunct<char, false>;
@@ -2337,7 +2500,7 @@ namespace std
extern template class numpunct<char>;
extern template class numpunct_byname<char>;
extern template class num_get<char>;
- extern template class num_put<char>;
+ extern template class num_put<char>;
extern template class __timepunct<char>;
extern template class time_put<char>;
extern template class time_put_byname<char>;
@@ -2351,106 +2514,106 @@ namespace std
extern template class collate_byname<char>;
extern template
- const codecvt<char, char, mbstate_t>&
+ const codecvt<char, char, mbstate_t>&
use_facet<codecvt<char, char, mbstate_t> >(const locale&);
extern template
- const collate<char>&
+ const collate<char>&
use_facet<collate<char> >(const locale&);
extern template
- const numpunct<char>&
+ const numpunct<char>&
use_facet<numpunct<char> >(const locale&);
- extern template
- const num_put<char>&
+ extern template
+ const num_put<char>&
use_facet<num_put<char> >(const locale&);
- extern template
- const num_get<char>&
+ extern template
+ const num_get<char>&
use_facet<num_get<char> >(const locale&);
extern template
- const moneypunct<char, true>&
+ const moneypunct<char, true>&
use_facet<moneypunct<char, true> >(const locale&);
extern template
- const moneypunct<char, false>&
+ const moneypunct<char, false>&
use_facet<moneypunct<char, false> >(const locale&);
- extern template
- const money_put<char>&
+ extern template
+ const money_put<char>&
use_facet<money_put<char> >(const locale&);
- extern template
- const money_get<char>&
+ extern template
+ const money_get<char>&
use_facet<money_get<char> >(const locale&);
extern template
- const __timepunct<char>&
+ const __timepunct<char>&
use_facet<__timepunct<char> >(const locale&);
- extern template
- const time_put<char>&
+ extern template
+ const time_put<char>&
use_facet<time_put<char> >(const locale&);
- extern template
- const time_get<char>&
+ extern template
+ const time_get<char>&
use_facet<time_get<char> >(const locale&);
- extern template
- const messages<char>&
+ extern template
+ const messages<char>&
use_facet<messages<char> >(const locale&);
- extern template
+ extern template
bool
has_facet<ctype<char> >(const locale&);
- extern template
+ extern template
bool
has_facet<codecvt<char, char, mbstate_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<collate<char> >(const locale&);
- extern template
+ extern template
bool
has_facet<numpunct<char> >(const locale&);
- extern template
+ extern template
bool
has_facet<num_put<char> >(const locale&);
- extern template
+ extern template
bool
has_facet<num_get<char> >(const locale&);
- extern template
+ extern template
bool
has_facet<moneypunct<char> >(const locale&);
- extern template
+ extern template
bool
has_facet<money_put<char> >(const locale&);
- extern template
+ extern template
bool
has_facet<money_get<char> >(const locale&);
- extern template
+ extern template
bool
has_facet<__timepunct<char> >(const locale&);
- extern template
+ extern template
bool
has_facet<time_put<char> >(const locale&);
- extern template
+ extern template
bool
has_facet<time_get<char> >(const locale&);
- extern template
+ extern template
bool
has_facet<messages<char> >(const locale&);
@@ -2478,106 +2641,106 @@ namespace std
extern template class collate_byname<wchar_t>;
extern template
- const codecvt<wchar_t, char, mbstate_t>&
+ const codecvt<wchar_t, char, mbstate_t>&
use_facet<codecvt<wchar_t, char, mbstate_t> >(locale const&);
extern template
- const collate<wchar_t>&
+ const collate<wchar_t>&
use_facet<collate<wchar_t> >(const locale&);
extern template
- const numpunct<wchar_t>&
+ const numpunct<wchar_t>&
use_facet<numpunct<wchar_t> >(const locale&);
- extern template
- const num_put<wchar_t>&
+ extern template
+ const num_put<wchar_t>&
use_facet<num_put<wchar_t> >(const locale&);
- extern template
- const num_get<wchar_t>&
+ extern template
+ const num_get<wchar_t>&
use_facet<num_get<wchar_t> >(const locale&);
extern template
- const moneypunct<wchar_t, true>&
+ const moneypunct<wchar_t, true>&
use_facet<moneypunct<wchar_t, true> >(const locale&);
extern template
- const moneypunct<wchar_t, false>&
+ const moneypunct<wchar_t, false>&
use_facet<moneypunct<wchar_t, false> >(const locale&);
-
- extern template
- const money_put<wchar_t>&
+
+ extern template
+ const money_put<wchar_t>&
use_facet<money_put<wchar_t> >(const locale&);
- extern template
- const money_get<wchar_t>&
+ extern template
+ const money_get<wchar_t>&
use_facet<money_get<wchar_t> >(const locale&);
extern template
- const __timepunct<wchar_t>&
+ const __timepunct<wchar_t>&
use_facet<__timepunct<wchar_t> >(const locale&);
- extern template
- const time_put<wchar_t>&
+ extern template
+ const time_put<wchar_t>&
use_facet<time_put<wchar_t> >(const locale&);
- extern template
- const time_get<wchar_t>&
+ extern template
+ const time_get<wchar_t>&
use_facet<time_get<wchar_t> >(const locale&);
- extern template
- const messages<wchar_t>&
+ extern template
+ const messages<wchar_t>&
use_facet<messages<wchar_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<ctype<wchar_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<codecvt<wchar_t, char, mbstate_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<collate<wchar_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<numpunct<wchar_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<num_put<wchar_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<num_get<wchar_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<moneypunct<wchar_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<money_put<wchar_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<money_get<wchar_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<__timepunct<wchar_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<time_put<wchar_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<time_get<wchar_t> >(const locale&);
- extern template
+ extern template
bool
has_facet<messages<wchar_t> >(const locale&);
#endif
diff --git a/libstdc++-v3/include/bits/localefwd.h b/libstdc++-v3/include/bits/localefwd.h
index a4507c3e28f..247158df374 100644
--- a/libstdc++-v3/include/bits/localefwd.h
+++ b/libstdc++-v3/include/bits/localefwd.h
@@ -44,7 +44,7 @@
#include <bits/c++config.h>
#include <bits/c++locale.h> // Defines __c_locale, config-specific includes
-#include <iosfwd> // For ostreambuf_iterator, istreambuf_iterator
+#include <iosfwd> // For ostreambuf_iterator, istreambuf_iterator
#include <bits/functexcept.h>
namespace std
@@ -53,67 +53,67 @@ namespace std
class locale;
// 22.1.3 Convenience interfaces
- template<typename _CharT>
- inline bool
+ template<typename _CharT>
+ inline bool
isspace(_CharT, const locale&);
- template<typename _CharT>
- inline bool
+ template<typename _CharT>
+ inline bool
isprint(_CharT, const locale&);
- template<typename _CharT>
- inline bool
+ template<typename _CharT>
+ inline bool
iscntrl(_CharT, const locale&);
- template<typename _CharT>
- inline bool
+ template<typename _CharT>
+ inline bool
isupper(_CharT, const locale&);
- template<typename _CharT>
- inline bool
+ template<typename _CharT>
+ inline bool
islower(_CharT, const locale&);
- template<typename _CharT>
- inline bool
+ template<typename _CharT>
+ inline bool
isalpha(_CharT, const locale&);
- template<typename _CharT>
- inline bool
+ template<typename _CharT>
+ inline bool
isdigit(_CharT, const locale&);
- template<typename _CharT>
- inline bool
+ template<typename _CharT>
+ inline bool
ispunct(_CharT, const locale&);
- template<typename _CharT>
- inline bool
+ template<typename _CharT>
+ inline bool
isxdigit(_CharT, const locale&);
- template<typename _CharT>
- inline bool
+ template<typename _CharT>
+ inline bool
isalnum(_CharT, const locale&);
- template<typename _CharT>
- inline bool
+ template<typename _CharT>
+ inline bool
isgraph(_CharT, const locale&);
- template<typename _CharT>
- inline _CharT
+ template<typename _CharT>
+ inline _CharT
toupper(_CharT, const locale&);
- template<typename _CharT>
- inline _CharT
+ template<typename _CharT>
+ inline _CharT
tolower(_CharT, const locale&);
// 22.2.1 and 22.2.1.3 ctype
class ctype_base;
- template<typename _CharT>
+ template<typename _CharT>
class ctype;
template<> class ctype<char>;
#ifdef _GLIBCXX_USE_WCHAR_T
template<> class ctype<wchar_t>;
#endif
- template<typename _CharT>
+ template<typename _CharT>
class ctype_byname;
// NB: Specialized for char and wchar_t in locale_facets.h.
@@ -137,9 +137,9 @@ namespace std
template<typename _CharT> class numpunct_byname;
// 22.2.4 collation
- template<typename _CharT>
+ template<typename _CharT>
class collate;
- template<typename _CharT> class
+ template<typename _CharT> class
collate_byname;
// 22.2.5 date and time
@@ -159,16 +159,16 @@ namespace std
class money_get;
template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
class money_put;
- template<typename _CharT, bool _Intl = false>
+ template<typename _CharT, bool _Intl = false>
class moneypunct;
- template<typename _CharT, bool _Intl = false>
+ template<typename _CharT, bool _Intl = false>
class moneypunct_byname;
// 22.2.7 message retrieval
class messages_base;
- template<typename _CharT>
+ template<typename _CharT>
class messages;
- template<typename _CharT>
+ template<typename _CharT>
class messages_byname;
template<typename _Facet>
@@ -182,9 +182,9 @@ namespace std
template<typename _Facet>
inline const _Facet&
__check_facet(const _Facet* __f)
- {
+ {
if (!__f)
- __throw_bad_cast();
+ __throw_bad_cast();
return *__f;
}
} // namespace std
diff --git a/libstdc++-v3/include/bits/mask_array.h b/libstdc++-v3/include/bits/mask_array.h
index ba67db70e9b..1a694f3c61f 100644
--- a/libstdc++-v3/include/bits/mask_array.h
+++ b/libstdc++-v3/include/bits/mask_array.h
@@ -1,6 +1,6 @@
// The template and inlines for the -*- C++ -*- mask_array class.
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -42,27 +42,63 @@
namespace std {
- template <class _Tp>
+ /**
+ * @brief Reference to selected subset of an array.
+ *
+ * A mask_array is a reference to the actual elements of an array specified
+ * by a bitmask in the form of an array of bool. The way to get a
+ * mask_array is to call operator[](valarray<bool>) on a valarray. The
+ * returned mask_array then permits carrying operations out on the
+ * referenced subset of elements in the original valarray.
+ *
+ * For example, if a mask_array is obtained using the array (false, true,
+ * false, true) as an argument, the mask array has two elements referring
+ * to array[1] and array[3] in the underlying array.
+ *
+ * @param Tp Element type.
+ */
+ template <class _Tp>
class mask_array
- {
+ {
public:
typedef _Tp value_type;
-
+
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // 253. valarray helper functions are almost entirely useless
+
+ /// Copy constructor. Both slices refer to the same underlying array.
+ mask_array (const mask_array&);
+
+ /// Assignment operator. Assigns elements to corresponding elements
+ /// of @a a.
+ mask_array& operator=(const mask_array&);
+
void operator=(const valarray<_Tp>&) const;
+ /// Multiply slice elements by corresponding elements of @a v.
void operator*=(const valarray<_Tp>&) const;
+ /// Divide slice elements by corresponding elements of @a v.
void operator/=(const valarray<_Tp>&) const;
+ /// Modulo slice elements by corresponding elements of @a v.
void operator%=(const valarray<_Tp>&) const;
- void operator+=(const valarray<_Tp>&) const;
+ /// Add corresponding elements of @a v to slice elements.
+ void operator+=(const valarray<_Tp>&) const;
+ /// Subtract corresponding elements of @a v from slice elements.
void operator-=(const valarray<_Tp>&) const;
- void operator^=(const valarray<_Tp>&) const;
+ /// Logical xor slice elements with corresponding elements of @a v.
+ void operator^=(const valarray<_Tp>&) const;
+ /// Logical and slice elements with corresponding elements of @a v.
void operator&=(const valarray<_Tp>&) const;
+ /// Logical or slice elements with corresponding elements of @a v.
void operator|=(const valarray<_Tp>&) const;
- void operator<<=(const valarray<_Tp>&) const;
- void operator>>=(const valarray<_Tp>&) const;
+ /// Left shift slice elements by corresponding elements of @a v.
+ void operator<<=(const valarray<_Tp>&) const;
+ /// Right shift slice elements by corresponding elements of @a v.
+ void operator>>=(const valarray<_Tp>&) const;
+ /// Assign all slice elements to @a t.
void operator=(const _Tp&) const;
-
+
// ~mask_array ();
-
+
template<class _Dom>
void operator=(const _Expr<_Dom,_Tp>&) const;
template<class _Dom>
@@ -84,38 +120,44 @@ namespace std {
template<class _Dom>
void operator<<=(const _Expr<_Dom,_Tp>&) const;
template<class _Dom>
- void operator>>=(const _Expr<_Dom,_Tp>&) const;
+ void operator>>=(const _Expr<_Dom,_Tp>&) const;
private:
mask_array(_Array<_Tp>, size_t, _Array<bool>);
friend class valarray<_Tp>;
-
+
const size_t _M_sz;
const _Array<bool> _M_mask;
const _Array<_Tp> _M_array;
-
- mask_array (const mask_array&);
-
+
// not implemented
mask_array();
- mask_array& operator=(const mask_array&);
};
template<typename _Tp>
inline mask_array<_Tp>::mask_array(const mask_array<_Tp>& a)
- : _M_sz(a._M_sz), _M_mask(a._M_mask), _M_array(a._M_array) {}
+ : _M_sz(a._M_sz), _M_mask(a._M_mask), _M_array(a._M_array) {}
template<typename _Tp>
- inline
+ inline
mask_array<_Tp>::mask_array(_Array<_Tp> __a, size_t __s, _Array<bool> __m)
- : _M_sz(__s), _M_mask(__m), _M_array(__a) {}
-
+ : _M_sz(__s), _M_mask(__m), _M_array(__a) {}
+
+ template<typename _Tp>
+ inline mask_array<_Tp>&
+ mask_array<_Tp>::operator=(const mask_array<_Tp>& __a)
+ {
+ std::__valarray_copy(__a._M_array, __a._M_mask,
+ _M_sz, _M_array, _M_mask);
+ return *this;
+ }
+
template<typename _Tp>
inline void
mask_array<_Tp>::operator=(const _Tp& __t) const
{ std::__valarray_fill(_M_array, _M_sz, _M_mask, __t); }
-
+
template<typename _Tp>
inline void
mask_array<_Tp>::operator=(const valarray<_Tp>& __v) const
@@ -156,8 +198,8 @@ _DEFINE_VALARRAY_OPERATOR(|, __bitwise_or)
_DEFINE_VALARRAY_OPERATOR(<<, __shift_left)
_DEFINE_VALARRAY_OPERATOR(>>, __shift_right)
-#undef _DEFINE_VALARRAY_OPERATOR
-
+#undef _DEFINE_VALARRAY_OPERATOR
+
} // std::
#endif /* _MASK_ARRAY_H */
diff --git a/libstdc++-v3/include/bits/ostream.tcc b/libstdc++-v3/include/bits/ostream.tcc
index c8f7fc73c35..1ff14a66ae3 100644
--- a/libstdc++-v3/include/bits/ostream.tcc
+++ b/libstdc++-v3/include/bits/ostream.tcc
@@ -39,7 +39,7 @@
#include <locale>
-namespace std
+namespace std
{
template<typename _CharT, typename _Traits>
basic_ostream<_CharT, _Traits>::sentry::
@@ -58,9 +58,9 @@ namespace std
__os.setstate(ios_base::failbit);
}
}
-
+
template<typename _CharT, typename _Traits>
- basic_ostream<_CharT, _Traits>&
+ basic_ostream<_CharT, _Traits>&
basic_ostream<_CharT, _Traits>::
operator<<(__ostream_type& (*__pf)(__ostream_type&))
{
@@ -69,9 +69,9 @@ namespace std
// The inserters for manipulators are *not* formatted output functions.
return __pf(*this);
}
-
+
template<typename _CharT, typename _Traits>
- basic_ostream<_CharT, _Traits>&
+ basic_ostream<_CharT, _Traits>&
basic_ostream<_CharT, _Traits>::
operator<<(__ios_type& (*__pf)(__ios_type&))
{
@@ -83,7 +83,7 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_ostream<_CharT, _Traits>&
+ basic_ostream<_CharT, _Traits>&
basic_ostream<_CharT, _Traits>::
operator<<(ios_base& (*__pf)(ios_base&))
{
@@ -95,15 +95,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_ostream<_CharT, _Traits>&
+ basic_ostream<_CharT, _Traits>&
basic_ostream<_CharT, _Traits>::
operator<<(bool __n)
{
sentry __cerb(*this);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_put_type& __np = __check_facet(this->_M_num_put);
if (__np.put(*this, *this, this->fill(), __n).failed())
@@ -118,15 +118,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_ostream<_CharT, _Traits>&
+ basic_ostream<_CharT, _Traits>&
basic_ostream<_CharT, _Traits>::
operator<<(long __n)
{
sentry __cerb(*this);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
bool __b = false;
char_type __c = this->fill();
@@ -139,7 +139,7 @@ namespace std
}
else
__b = __np.put(*this, *this, __c, __n).failed();
- if (__b)
+ if (__b)
__err |= ios_base::badbit;
}
catch(...)
@@ -151,15 +151,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_ostream<_CharT, _Traits>&
+ basic_ostream<_CharT, _Traits>&
basic_ostream<_CharT, _Traits>::
operator<<(unsigned long __n)
{
sentry __cerb(*this);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_put_type& __np = __check_facet(this->_M_num_put);
if (__np.put(*this, *this, this->fill(), __n).failed())
@@ -175,15 +175,15 @@ namespace std
#ifdef _GLIBCXX_USE_LONG_LONG
template<typename _CharT, typename _Traits>
- basic_ostream<_CharT, _Traits>&
+ basic_ostream<_CharT, _Traits>&
basic_ostream<_CharT, _Traits>::
operator<<(long long __n)
{
sentry __cerb(*this);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
bool __b = false;
char_type __c = this->fill();
@@ -197,7 +197,7 @@ namespace std
}
else
__b = __np.put(*this, *this, __c, __n).failed();
- if (__b)
+ if (__b)
__err |= ios_base::badbit;
}
catch(...)
@@ -209,15 +209,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_ostream<_CharT, _Traits>&
+ basic_ostream<_CharT, _Traits>&
basic_ostream<_CharT, _Traits>::
operator<<(unsigned long long __n)
{
sentry __cerb(*this);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_put_type& __np = __check_facet(this->_M_num_put);
if (__np.put(*this, *this, this->fill(), __n).failed())
@@ -231,17 +231,17 @@ namespace std
return *this;
}
#endif
-
+
template<typename _CharT, typename _Traits>
- basic_ostream<_CharT, _Traits>&
+ basic_ostream<_CharT, _Traits>&
basic_ostream<_CharT, _Traits>::
operator<<(double __n)
{
sentry __cerb(*this);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_put_type& __np = __check_facet(this->_M_num_put);
if (__np.put(*this, *this, this->fill(), __n).failed())
@@ -254,17 +254,17 @@ namespace std
}
return *this;
}
-
+
template<typename _CharT, typename _Traits>
- basic_ostream<_CharT, _Traits>&
+ basic_ostream<_CharT, _Traits>&
basic_ostream<_CharT, _Traits>::
operator<<(long double __n)
{
sentry __cerb(*this);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_put_type& __np = __check_facet(this->_M_num_put);
if (__np.put(*this, *this, this->fill(), __n).failed())
@@ -279,15 +279,15 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_ostream<_CharT, _Traits>&
+ basic_ostream<_CharT, _Traits>&
basic_ostream<_CharT, _Traits>::
operator<<(const void* __n)
{
sentry __cerb(*this);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
- try
+ try
{
const __num_put_type& __np = __check_facet(this->_M_num_put);
if (__np.put(*this, *this, this->fill(), __n).failed())
@@ -302,7 +302,7 @@ namespace std
}
template<typename _CharT, typename _Traits>
- basic_ostream<_CharT, _Traits>&
+ basic_ostream<_CharT, _Traits>&
basic_ostream<_CharT, _Traits>::
operator<<(__streambuf_type* __sbin)
{
@@ -329,7 +329,7 @@ namespace std
basic_ostream<_CharT, _Traits>&
basic_ostream<_CharT, _Traits>::
put(char_type __c)
- {
+ {
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 60. What is a formatted input function?
// basic_ostream::put(char_type) is an unformatted output function.
@@ -337,12 +337,12 @@ namespace std
// Unformatted output functions should catch exceptions thrown
// from streambuf members.
sentry __cerb(*this);
- if (__cerb)
+ if (__cerb)
{
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try
{
- int_type __put = this->rdbuf()->sputc(__c);
+ int_type __put = this->rdbuf()->sputc(__c);
if (traits_type::eq_int_type(__put, traits_type::eof()))
__err |= ios_base::badbit;
}
@@ -351,7 +351,7 @@ namespace std
if (__err)
this->setstate(__err);
}
- return *this;
+ return *this;
}
template<typename _CharT, typename _Traits>
@@ -397,7 +397,7 @@ namespace std
this->setstate(__err);
return *this;
}
-
+
template<typename _CharT, typename _Traits>
typename basic_ostream<_CharT, _Traits>::pos_type
basic_ostream<_CharT, _Traits>::
@@ -427,7 +427,7 @@ namespace std
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 136. seekp, seekg setting wrong streams?
pos_type __p = this->rdbuf()->pubseekpos(__pos, ios_base::out);
-
+
// 129. Need error indication from seekp() and seekg()
if (__p == pos_type(off_type(-1)))
__err |= ios_base::failbit;
@@ -452,9 +452,9 @@ namespace std
{
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 136. seekp, seekg setting wrong streams?
- pos_type __p = this->rdbuf()->pubseekoff(__off, __dir,
+ pos_type __p = this->rdbuf()->pubseekoff(__off, __dir,
ios_base::out);
-
+
// 129. Need error indication from seekp() and seekg()
if (__p == pos_type(off_type(-1)))
__err |= ios_base::failbit;
@@ -476,7 +476,7 @@ namespace std
typename __ostream_type::sentry __cerb(__out);
if (__cerb)
{
- try
+ try
{
const streamsize __w = __out.width();
streamsize __len = 1;
@@ -485,7 +485,7 @@ namespace std
{
__cs = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
* __w));
- __pad<_CharT, _Traits>::_S_pad(__out, __out.fill(), __cs,
+ __pad<_CharT, _Traits>::_S_pad(__out, __out.fill(), __cs,
&__c, __w, __len, false);
__len = __w;
}
@@ -497,9 +497,9 @@ namespace std
}
return __out;
}
-
+
// Specializations.
- template <class _Traits>
+ template <class _Traits>
basic_ostream<char, _Traits>&
operator<<(basic_ostream<char, _Traits>& __out, char __c)
{
@@ -507,7 +507,7 @@ namespace std
typename __ostream_type::sentry __cerb(__out);
if (__cerb)
{
- try
+ try
{
const streamsize __w = __out.width();
streamsize __len = 1;
@@ -515,7 +515,7 @@ namespace std
if (__w > __len)
{
__cs = static_cast<char*>(__builtin_alloca(__w));
- __pad<char, _Traits>::_S_pad(__out, __out.fill(), __cs,
+ __pad<char, _Traits>::_S_pad(__out, __out.fill(), __cs,
&__c, __w, __len, false);
__len = __w;
}
@@ -536,7 +536,7 @@ namespace std
typename __ostream_type::sentry __cerb(__out);
if (__cerb && __s)
{
- try
+ try
{
const streamsize __w = __out.width();
streamsize __len = static_cast<streamsize>(_Traits::length(__s));
@@ -544,7 +544,7 @@ namespace std
{
_CharT* __cs = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
* __w));
- __pad<_CharT, _Traits>::_S_pad(__out, __out.fill(), __cs,
+ __pad<_CharT, _Traits>::_S_pad(__out, __out.fill(), __cs,
__s, __w, __len, false);
__s = __cs;
__len = __w;
@@ -578,8 +578,8 @@ namespace std
for (size_t __i = 0; __i < __clen; ++__i)
__ws[__i] = __out.widen(__s[__i]);
_CharT* __str = __ws;
-
- try
+
+ try
{
const streamsize __w = __out.width();
streamsize __len = static_cast<streamsize>(__clen);
@@ -587,7 +587,7 @@ namespace std
{
_CharT* __cs = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
* __w));
- __pad<_CharT, _Traits>::_S_pad(__out, __out.fill(), __cs,
+ __pad<_CharT, _Traits>::_S_pad(__out, __out.fill(), __cs,
__ws, __w, __len, false);
__str = __cs;
__len = __w;
@@ -612,14 +612,14 @@ namespace std
typename __ostream_type::sentry __cerb(__out);
if (__cerb && __s)
{
- try
+ try
{
const streamsize __w = __out.width();
streamsize __len = static_cast<streamsize>(_Traits::length(__s));
if (__w > __len)
{
char* __cs = static_cast<char*>(__builtin_alloca(__w));
- __pad<char, _Traits>::_S_pad(__out, __out.fill(), __cs,
+ __pad<char, _Traits>::_S_pad(__out, __out.fill(), __cs,
__s, __w, __len, false);
__s = __cs;
__len = __w;
@@ -640,7 +640,7 @@ namespace std
basic_ostream<_CharT, _Traits>&
operator<<(basic_ostream<_CharT, _Traits>& __out,
const basic_string<_CharT, _Traits, _Alloc>& __str)
- {
+ {
typedef basic_ostream<_CharT, _Traits> __ostream_type;
typename __ostream_type::sentry __cerb(__out);
if (__cerb)
@@ -666,7 +666,7 @@ namespace std
}
// Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
+ // which are defined via explicit instantiations elsewhere.
// NB: This syntax is a GNU extension.
#if _GLIBCXX_EXTERN_TEMPLATE
extern template class basic_ostream<char>;
diff --git a/libstdc++-v3/include/bits/postypes.h b/libstdc++-v3/include/bits/postypes.h
index c9b46b1d171..0cfb61b2df2 100644
--- a/libstdc++-v3/include/bits/postypes.h
+++ b/libstdc++-v3/include/bits/postypes.h
@@ -1,6 +1,6 @@
// Position types -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -58,96 +58,45 @@ namespace std
// unspecified. The behaviour in this implementation is as noted
// below.
+ /**
+ * @brief Type used by fpos, char_traits<char>, and char_traits<wchar_t>.
+ *
+ * @if maint
+ * In clauses 21.1.3.1 and 27.4.1 streamoff is described as an
+ * implementation defined type.
+ * Note: In versions of GCC up to and including GCC 3.3, streamoff
+ * was typedef long.
+ * @endif
+ */
#ifdef _GLIBCXX_HAVE_INT64_T
- typedef int64_t __streamoff_base_type;
+ typedef int64_t streamoff;
#else
- typedef long long __streamoff_base_type;
+ typedef long long streamoff;
#endif
+ /// Integral type for I/O operation counts and buffer sizes.
typedef ptrdiff_t streamsize; // Signed integral type
template<typename _StateT>
class fpos;
- // Class streamoff is an implementation defined type that meets the
- // requirements for streamoff. It stores an offset as a signed
- // integer. Note: this class is an implementation detail.
- class streamoff
- {
- private:
- __streamoff_base_type _M_off;
-
- public:
- // Nothing in the standard requires that streamoff can be default
- // constructed. In this implementation a default constructor that
- // stores the value 0 is provided.
- streamoff()
- : _M_off(0) { }
-
- // The standard only requires that streamoff can be constructed
- // from streamsize using the constructor syntax. This
- // implementation also allows implicit conversion from integer
- // types to streamoff.
- streamoff(__streamoff_base_type __off)
- : _M_off(__off) { }
-
- // The standard requires that streamoff can be constructed from
- // instances of fpos using the constructor syntax, but gives no
- // semantics for this construction. In this implementation it
- // extracts the offset stored by the fpos object.
- // Note: In versions of GCC up to and including GCC 3.3, implicit
- // conversion from fpos to streamoff was allowed. This constructor
- // has now been made explicit to improve type safety.
- template<typename _StateT>
- explicit
- streamoff(const fpos<_StateT>&);
-
- // The standard requires that streamsize can be constructed from
- // streamoff using the constructor syntax. This implementation
- // also allows implicit conversion. This allows streamoff objects
- // to be used in arithmetic expressions and to be compared against
- // each other and integer types.
- operator __streamoff_base_type() const
- { return _M_off; }
-
- // This implementation allows the use of operators +=, -=, ++ and
- // -- on streamoff objects.
- streamoff&
- operator+=(__streamoff_base_type __off)
- {
- _M_off += __off;
- return *this;
- }
-
- streamoff&
- operator-=(__streamoff_base_type __off)
- {
- _M_off -= __off;
- return *this;
- }
- };
-
- // In clauses 21.1.3.1 and 27.4.1 streamoff is described as an
- // implementation defined type. In this implementation it is a
- // distinct class type.
- // Note: In versions of GCC up to and including GCC 3.3, streamoff
- // was typedef long.
- typedef class streamoff streamoff;
-
- // The standard fails to place any requiremens on the template
- // argument StateT. In this implementation StateT must be
- // DefaultConstructible, CopyConstructible and Assignable. The
- // standard only requires that fpos should contain a member of type
- // StateT. In this implementation it also contains an offset stored
- // as a signed integer.
+ /**
+ * @brief Class representing stream positions.
+ *
+ * The standard places no requirements upon the template parameter StateT.
+ * In this implementation StateT must be DefaultConstructible,
+ * CopyConstructible and Assignable. The standard only requires that fpos
+ * should contain a member of type StateT. In this implementation it also
+ * contains an offset stored as a signed integer.
+ *
+ * @param StateT Type passed to and returned from state().
+ */
template<typename _StateT>
class fpos
{
private:
- friend class streamoff;
-
- __streamoff_base_type _M_off;
- _StateT _M_state;
+ streamoff _M_off;
+ _StateT _M_state;
public:
// The standard doesn't require that fpos objects can be default
@@ -157,26 +106,25 @@ namespace std
fpos()
: _M_off(0), _M_state() { }
- // The standard requires implicit conversion from integers to
- // fpos, but gives no meaningful semantics for this
- // conversion. In this implementation this constructor stores
- // the integer as the offset and default constructs the state.
- fpos(__streamoff_base_type __off)
- : _M_off(__off), _M_state() { }
-
// The standard requires that fpos objects can be constructed
// from streamoff objects using the constructor syntax, and
// fails to give any meaningful semantics. In this
// implementation implicit conversion is also allowed, and this
// constructor stores the streamoff as the offset and default
// constructs the state.
- fpos(const streamoff& __off)
+ /// Construct position from offset.
+ fpos(streamoff __off)
: _M_off(__off), _M_state() { }
+ /// Convert to streamoff.
+ operator streamoff() const { return _M_off; }
+
+ /// Remember the value of @a st.
void
state(_StateT __st)
{ _M_state = __st; }
+ /// Return the last set value of @a st.
_StateT
state() const
{ return _M_state; }
@@ -185,10 +133,12 @@ namespace std
// equivalence relation. In this implementation two fpos<StateT>
// objects belong to the same equivalence class if the contained
// offsets compare equal.
+ /// Test if equivalent to another position.
bool
operator==(const fpos& __other) const
{ return _M_off == __other._M_off; }
+ /// Test if not equivalent to another position.
bool
operator!=(const fpos& __other) const
{ return _M_off != __other._M_off; }
@@ -196,8 +146,9 @@ namespace std
// The standard requires that this operator must be defined, but
// gives no semantics. In this implemenation it just adds it's
// argument to the stored offset and returns *this.
+ /// Add offset to this position.
fpos&
- operator+=(const streamoff& __off)
+ operator+=(streamoff __off)
{
_M_off += __off;
return *this;
@@ -206,8 +157,9 @@ namespace std
// The standard requires that this operator must be defined, but
// gives no semantics. In this implemenation it just subtracts
// it's argument from the stored offset and returns *this.
+ /// Subtract offset from this position.
fpos&
- operator-=(const streamoff& __off)
+ operator-=(streamoff __off)
{
_M_off -= __off;
return *this;
@@ -218,8 +170,9 @@ namespace std
// implementation it constructs a copy of *this, adds the
// argument to that copy using operator+= and then returns the
// copy.
+ /// Add position and offset.
fpos
- operator+(const streamoff& __off) const
+ operator+(streamoff __off) const
{
fpos __pos(*this);
__pos += __off;
@@ -231,8 +184,9 @@ namespace std
// implementation it constructs a copy of *this, subtracts the
// argument from that copy using operator-= and then returns the
// copy.
+ /// Subtract offset from position.
fpos
- operator-(const streamoff& __off) const
+ operator-(streamoff __off) const
{
fpos __pos(*this);
__pos -= __off;
@@ -243,20 +197,18 @@ namespace std
// defines it's semantics only in terms of operator+. In this
// implementation it returns the difference between the offset
// stored in *this and in the argument.
+ /// Subtract position to return offset.
streamoff
operator-(const fpos& __other) const
{ return _M_off - __other._M_off; }
};
- template<typename _StateT>
- inline
- streamoff::streamoff(const fpos<_StateT>& __pos)
- : _M_off(__pos._M_off) { }
-
// Clauses 21.1.3.1 and 21.1.3.2 describe streampos and wstreampos
// as implementation defined types, but clause 27.2 requires that
// they must both be typedefs for fpos<mbstate_t>
+ /// File position for char streams.
typedef fpos<mbstate_t> streampos;
+ /// File position for wchar_t streams.
typedef fpos<mbstate_t> wstreampos;
} // namespace std
diff --git a/libstdc++-v3/include/bits/slice_array.h b/libstdc++-v3/include/bits/slice_array.h
index ad33a474672..31c89bcdb61 100644
--- a/libstdc++-v3/include/bits/slice_array.h
+++ b/libstdc++-v3/include/bits/slice_array.h
@@ -1,6 +1,7 @@
// The template and inlines for the -*- C++ -*- slice_array class.
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004
+// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -41,16 +42,41 @@
namespace std
{
+ /**
+ * @brief Class defining one-dimensional subset of an array.
+ *
+ * The slice class represents a one-dimensional subset of an array,
+ * specified by three parameters: start offset, size, and stride. The
+ * start offset is the index of the first element of the array that is part
+ * of the subset. The size is the total number of elements in the subset.
+ * Stride is the distance between each successive array element to include
+ * in the subset.
+ *
+ * For example, with an array of size 10, and a slice with offset 1, size 3
+ * and stride 2, the subset consists of array elements 1, 3, and 5.
+ */
class slice
{
public:
+ /// Construct an empty slice.
slice();
+
+ /**
+ * @brief Construct a slice.
+ *
+ * @param o Offset in array of first element.
+ * @param d Number of elements in slice.
+ * @param s Stride between array elements.
+ */
slice(size_t, size_t, size_t);
-
+
+ /// Return array offset of first slice element.
size_t start() const;
+ /// Return size of slice.
size_t size() const;
+ /// Return array stride of slice.
size_t stride() const;
-
+
private:
size_t _M_off; // offset
size_t _M_sz; // size
@@ -59,48 +85,77 @@ namespace std
// The default constructor constructor is not required to initialize
// data members with any meaningful values, so we choose to do nothing.
- inline
+ inline
slice::slice() {}
-
- inline
+
+ inline
slice::slice(size_t __o, size_t __d, size_t __s)
: _M_off(__o), _M_sz(__d), _M_st(__s) {}
-
+
inline size_t
slice::start() const
{ return _M_off; }
-
+
inline size_t
slice::size() const
{ return _M_sz; }
-
+
inline size_t
slice::stride() const
{ return _M_st; }
+ /**
+ * @brief Reference to one-dimensional subset of an array.
+ *
+ * A slice_array is a reference to the actual elements of an array
+ * specified by a slice. The way to get a slice_array is to call
+ * operator[](slice) on a valarray. The returned slice_array then permits
+ * carrying operations out on the referenced subset of elements in the
+ * original valarray. For example, operator+=(valarray) will add values
+ * to the subset of elements in the underlying valarray this slice_array
+ * refers to.
+ *
+ * @param Tp Element type.
+ */
template<typename _Tp>
class slice_array
{
public:
typedef _Tp value_type;
- // This constructor is implemented since we need to return a value.
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // 253. valarray helper functions are almost entirely useless
+
+ /// Copy constructor. Both slices refer to the same underlying array.
slice_array(const slice_array&);
- // This operator must be public. See DR-253.
+ /// Assignment operator. Assigns slice elements to corresponding
+ /// elements of @a a.
slice_array& operator=(const slice_array&);
+ /// Assign slice elements to corresponding elements of @a v.
void operator=(const valarray<_Tp>&) const;
+ /// Multiply slice elements by corresponding elements of @a v.
void operator*=(const valarray<_Tp>&) const;
+ /// Divide slice elements by corresponding elements of @a v.
void operator/=(const valarray<_Tp>&) const;
+ /// Modulo slice elements by corresponding elements of @a v.
void operator%=(const valarray<_Tp>&) const;
+ /// Add corresponding elements of @a v to slice elements.
void operator+=(const valarray<_Tp>&) const;
+ /// Subtract corresponding elements of @a v from slice elements.
void operator-=(const valarray<_Tp>&) const;
+ /// Logical xor slice elements with corresponding elements of @a v.
void operator^=(const valarray<_Tp>&) const;
+ /// Logical and slice elements with corresponding elements of @a v.
void operator&=(const valarray<_Tp>&) const;
+ /// Logical or slice elements with corresponding elements of @a v.
void operator|=(const valarray<_Tp>&) const;
+ /// Left shift slice elements by corresponding elements of @a v.
void operator<<=(const valarray<_Tp>&) const;
+ /// Right shift slice elements by corresponding elements of @a v.
void operator>>=(const valarray<_Tp>&) const;
+ /// Assign all slice elements to @a t.
void operator=(const _Tp &) const;
// ~slice_array ();
@@ -140,16 +195,16 @@ namespace std
};
template<typename _Tp>
- inline
+ inline
slice_array<_Tp>::slice_array(_Array<_Tp> __a, const slice& __s)
- : _M_sz(__s.size()), _M_stride(__s.stride()),
- _M_array(__a.begin() + __s.start()) {}
+ : _M_sz(__s.size()), _M_stride(__s.stride()),
+ _M_array(__a.begin() + __s.start()) {}
template<typename _Tp>
- inline
+ inline
slice_array<_Tp>::slice_array(const slice_array<_Tp>& a)
- : _M_sz(a._M_sz), _M_stride(a._M_stride), _M_array(a._M_array) {}
-
+ : _M_sz(a._M_sz), _M_stride(a._M_stride), _M_array(a._M_array) {}
+
// template<typename _Tp>
// inline slice_array<_Tp>::~slice_array () {}
@@ -166,12 +221,12 @@ namespace std
inline void
slice_array<_Tp>::operator=(const _Tp& __t) const
{ std::__valarray_fill(_M_array, _M_sz, _M_stride, __t); }
-
+
template<typename _Tp>
inline void
slice_array<_Tp>::operator=(const valarray<_Tp>& __v) const
{ std::__valarray_copy(_Array<_Tp>(__v), _M_array, _M_sz, _M_stride); }
-
+
template<typename _Tp>
template<class _Dom>
inline void
@@ -194,7 +249,7 @@ namespace std
{ \
_Array_augmented_##_Name(_M_array, _M_stride, __e, _M_sz); \
}
-
+
_DEFINE_VALARRAY_OPERATOR(*, __multiplies)
_DEFINE_VALARRAY_OPERATOR(/, __divides)
diff --git a/libstdc++-v3/include/bits/sstream.tcc b/libstdc++-v3/include/bits/sstream.tcc
index 07e13926ba9..df5e619a70d 100644
--- a/libstdc++-v3/include/bits/sstream.tcc
+++ b/libstdc++-v3/include/bits/sstream.tcc
@@ -42,13 +42,13 @@
namespace std
{
template <class _CharT, class _Traits, class _Alloc>
- typename basic_stringbuf<_CharT, _Traits, _Alloc>::int_type
+ typename basic_stringbuf<_CharT, _Traits, _Alloc>::int_type
basic_stringbuf<_CharT, _Traits, _Alloc>::
pbackfail(int_type __c)
{
int_type __ret = traits_type::eof();
const bool __testeof = traits_type::eq_int_type(__c, __ret);
-
+
if (this->eback() < this->gptr())
{
const bool __testeq = traits_type::eq(traits_type::to_char_type(__c),
@@ -69,9 +69,9 @@ namespace std
}
return __ret;
}
-
+
template <class _CharT, class _Traits, class _Alloc>
- typename basic_stringbuf<_CharT, _Traits, _Alloc>::int_type
+ typename basic_stringbuf<_CharT, _Traits, _Alloc>::int_type
basic_stringbuf<_CharT, _Traits, _Alloc>::
overflow(int_type __c)
{
@@ -111,7 +111,7 @@ namespace std
}
template <class _CharT, class _Traits, class _Alloc>
- typename basic_stringbuf<_CharT, _Traits, _Alloc>::int_type
+ typename basic_stringbuf<_CharT, _Traits, _Alloc>::int_type
basic_stringbuf<_CharT, _Traits, _Alloc>::
underflow()
{
@@ -132,7 +132,7 @@ namespace std
basic_stringbuf<_CharT, _Traits, _Alloc>::
seekoff(off_type __off, ios_base::seekdir __way, ios_base::openmode __mode)
{
- pos_type __ret = pos_type(off_type(-1));
+ pos_type __ret = pos_type(off_type(-1));
bool __testin = (ios_base::in & this->_M_mode & __mode) != 0;
bool __testout = (ios_base::out & this->_M_mode & __mode) != 0;
const bool __testboth = __testin && __testout && __way != ios_base::cur;
@@ -156,14 +156,14 @@ namespace std
__newoffo = __newoffi = this->egptr() - __beg;
if ((__testin || __testboth)
- && __newoffi + __off >= 0
+ && __newoffi + __off >= 0
&& this->egptr() - __beg >= __newoffi + __off)
{
this->gbump((__beg + __newoffi + __off) - this->gptr());
__ret = pos_type(__newoffi);
}
if ((__testout || __testboth)
- && __newoffo + __off >= 0
+ && __newoffo + __off >= 0
&& this->egptr() - __beg >= __newoffo + __off)
{
this->pbump((__beg + __newoffo + __off) - this->pptr());
@@ -178,14 +178,14 @@ namespace std
basic_stringbuf<_CharT, _Traits, _Alloc>::
seekpos(pos_type __sp, ios_base::openmode __mode)
{
- pos_type __ret = pos_type(off_type(-1));
+ pos_type __ret = pos_type(off_type(-1));
if (_M_string.capacity())
{
off_type __pos (__sp);
const bool __testin = (ios_base::in & this->_M_mode & __mode) != 0;
const bool __testout = (ios_base::out & this->_M_mode & __mode) != 0;
char_type* __beg = __testin ? this->eback() : this->pbase();
-
+
_M_update_egptr();
const bool __testpos = 0 <= __pos
@@ -203,8 +203,9 @@ namespace std
}
// Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
+ // which are defined via explicit instantiations elsewhere.
// NB: This syntax is a GNU extension.
+#if _GLIBCXX_EXTERN_TEMPLATE
extern template class basic_stringbuf<char>;
extern template class basic_istringstream<char>;
extern template class basic_ostringstream<char>;
@@ -216,6 +217,7 @@ namespace std
extern template class basic_ostringstream<wchar_t>;
extern template class basic_stringstream<wchar_t>;
#endif
+#endif
} // namespace std
#endif
diff --git a/libstdc++-v3/include/bits/stl_algo.h b/libstdc++-v3/include/bits/stl_algo.h
index ea23fa7845d..6fed5786ebd 100644
--- a/libstdc++-v3/include/bits/stl_algo.h
+++ b/libstdc++-v3/include/bits/stl_algo.h
@@ -1,6 +1,6 @@
// Algorithm implementation -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -82,7 +82,7 @@ namespace std
* @ingroup SGIextensions
*/
template<typename _Tp>
- inline const _Tp&
+ inline const _Tp&
__median(const _Tp& __a, const _Tp& __b, const _Tp& __c)
{
// concept requirements
@@ -167,8 +167,7 @@ namespace std
template<typename _InputIterator, typename _Tp>
inline _InputIterator
find(_InputIterator __first, _InputIterator __last,
- const _Tp& __val,
- input_iterator_tag)
+ const _Tp& __val, input_iterator_tag)
{
while (__first != __last && !(*__first == __val))
++__first;
@@ -183,8 +182,7 @@ namespace std
template<typename _InputIterator, typename _Predicate>
inline _InputIterator
find_if(_InputIterator __first, _InputIterator __last,
- _Predicate __pred,
- input_iterator_tag)
+ _Predicate __pred, input_iterator_tag)
{
while (__first != __last && !__pred(*__first))
++__first;
@@ -199,40 +197,48 @@ namespace std
template<typename _RandomAccessIterator, typename _Tp>
_RandomAccessIterator
find(_RandomAccessIterator __first, _RandomAccessIterator __last,
- const _Tp& __val,
- random_access_iterator_tag)
+ const _Tp& __val, random_access_iterator_tag)
{
- typename iterator_traits<_RandomAccessIterator>::difference_type __trip_count
- = (__last - __first) >> 2;
+ typename iterator_traits<_RandomAccessIterator>::difference_type
+ __trip_count = (__last - __first) >> 2;
- for ( ; __trip_count > 0 ; --__trip_count) {
- if (*__first == __val) return __first;
- ++__first;
+ for ( ; __trip_count > 0 ; --__trip_count)
+ {
+ if (*__first == __val)
+ return __first;
+ ++__first;
- if (*__first == __val) return __first;
- ++__first;
+ if (*__first == __val)
+ return __first;
+ ++__first;
- if (*__first == __val) return __first;
- ++__first;
+ if (*__first == __val)
+ return __first;
+ ++__first;
- if (*__first == __val) return __first;
- ++__first;
- }
+ if (*__first == __val)
+ return __first;
+ ++__first;
+ }
- switch(__last - __first) {
- case 3:
- if (*__first == __val) return __first;
- ++__first;
- case 2:
- if (*__first == __val) return __first;
- ++__first;
- case 1:
- if (*__first == __val) return __first;
- ++__first;
- case 0:
- default:
- return __last;
- }
+ switch (__last - __first)
+ {
+ case 3:
+ if (*__first == __val)
+ return __first;
+ ++__first;
+ case 2:
+ if (*__first == __val)
+ return __first;
+ ++__first;
+ case 1:
+ if (*__first == __val)
+ return __first;
+ ++__first;
+ case 0:
+ default:
+ return __last;
+ }
}
/**
@@ -243,40 +249,48 @@ namespace std
template<typename _RandomAccessIterator, typename _Predicate>
_RandomAccessIterator
find_if(_RandomAccessIterator __first, _RandomAccessIterator __last,
- _Predicate __pred,
- random_access_iterator_tag)
+ _Predicate __pred, random_access_iterator_tag)
{
- typename iterator_traits<_RandomAccessIterator>::difference_type __trip_count
- = (__last - __first) >> 2;
+ typename iterator_traits<_RandomAccessIterator>::difference_type
+ __trip_count = (__last - __first) >> 2;
- for ( ; __trip_count > 0 ; --__trip_count) {
- if (__pred(*__first)) return __first;
- ++__first;
+ for ( ; __trip_count > 0 ; --__trip_count)
+ {
+ if (__pred(*__first))
+ return __first;
+ ++__first;
- if (__pred(*__first)) return __first;
- ++__first;
+ if (__pred(*__first))
+ return __first;
+ ++__first;
- if (__pred(*__first)) return __first;
- ++__first;
+ if (__pred(*__first))
+ return __first;
+ ++__first;
- if (__pred(*__first)) return __first;
- ++__first;
- }
+ if (__pred(*__first))
+ return __first;
+ ++__first;
+ }
- switch(__last - __first) {
- case 3:
- if (__pred(*__first)) return __first;
- ++__first;
- case 2:
- if (__pred(*__first)) return __first;
- ++__first;
- case 1:
- if (__pred(*__first)) return __first;
- ++__first;
- case 0:
- default:
- return __last;
- }
+ switch (__last - __first)
+ {
+ case 3:
+ if (__pred(*__first))
+ return __first;
+ ++__first;
+ case 2:
+ if (__pred(*__first))
+ return __first;
+ ++__first;
+ case 1:
+ if (__pred(*__first))
+ return __first;
+ ++__first;
+ case 0:
+ default:
+ return __last;
+ }
}
/**
@@ -297,7 +311,8 @@ namespace std
__glibcxx_function_requires(_EqualOpConcept<
typename iterator_traits<_InputIterator>::value_type, _Tp>)
__glibcxx_requires_valid_range(__first, __last);
- return std::find(__first, __last, __val, std::__iterator_category(__first));
+ return std::find(__first, __last, __val,
+ std::__iterator_category(__first));
}
/**
@@ -318,7 +333,8 @@ namespace std
__glibcxx_function_requires(_UnaryPredicateConcept<_Predicate,
typename iterator_traits<_InputIterator>::value_type>)
__glibcxx_requires_valid_range(__first, __last);
- return std::find_if(__first, __last, __pred, std::__iterator_category(__first));
+ return std::find_if(__first, __last, __pred,
+ std::__iterator_category(__first));
}
/**
@@ -341,11 +357,12 @@ namespace std
if (__first == __last)
return __last;
_ForwardIterator __next = __first;
- while(++__next != __last) {
- if (*__first == *__next)
- return __first;
- __first = __next;
- }
+ while(++__next != __last)
+ {
+ if (*__first == *__next)
+ return __first;
+ __first = __next;
+ }
return __last;
}
@@ -373,11 +390,12 @@ namespace std
if (__first == __last)
return __last;
_ForwardIterator __next = __first;
- while(++__next != __last) {
- if (__binary_pred(*__first, *__next))
- return __first;
- __first = __next;
- }
+ while(++__next != __last)
+ {
+ if (__binary_pred(*__first, *__next))
+ return __first;
+ __first = __next;
+ }
return __last;
}
@@ -430,7 +448,6 @@ namespace std
return __n;
}
-
/**
* @brief Search a sequence for a matching sub-sequence.
* @param first1 A forward iterator.
@@ -478,32 +495,30 @@ namespace std
return std::find(__first1, __last1, *__first2);
// General case.
-
_ForwardIterator2 __p1, __p;
-
__p1 = __first2; ++__p1;
-
_ForwardIterator1 __current = __first1;
- while (__first1 != __last1) {
- __first1 = std::find(__first1, __last1, *__first2);
- if (__first1 == __last1)
- return __last1;
-
- __p = __p1;
- __current = __first1;
- if (++__current == __last1)
- return __last1;
+ while (__first1 != __last1)
+ {
+ __first1 = std::find(__first1, __last1, *__first2);
+ if (__first1 == __last1)
+ return __last1;
- while (*__current == *__p) {
- if (++__p == __last2)
- return __first1;
+ __p = __p1;
+ __current = __first1;
if (++__current == __last1)
return __last1;
- }
- ++__first1;
- }
+ while (*__current == *__p)
+ {
+ if (++__p == __last2)
+ return __first1;
+ if (++__current == __last1)
+ return __last1;
+ }
+ ++__first1;
+ }
return __first1;
}
@@ -527,7 +542,8 @@ namespace std
*
* @see search(_ForwardIter1, _ForwardIter1, _ForwardIter2, _ForwardIter2)
*/
- template<typename _ForwardIterator1, typename _ForwardIterator2, typename _BinaryPredicate>
+ template<typename _ForwardIterator1, typename _ForwardIterator2,
+ typename _BinaryPredicate>
_ForwardIterator1
search(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
_ForwardIterator2 __first2, _ForwardIterator2 __last2,
@@ -549,44 +565,45 @@ namespace std
// Test for a pattern of length 1.
_ForwardIterator2 __tmp(__first2);
++__tmp;
- if (__tmp == __last2) {
- while (__first1 != __last1 && !__predicate(*__first1, *__first2))
- ++__first1;
- return __first1;
- }
+ if (__tmp == __last2)
+ {
+ while (__first1 != __last1 && !__predicate(*__first1, *__first2))
+ ++__first1;
+ return __first1;
+ }
// General case.
-
_ForwardIterator2 __p1, __p;
-
__p1 = __first2; ++__p1;
-
_ForwardIterator1 __current = __first1;
- while (__first1 != __last1) {
- while (__first1 != __last1) {
- if (__predicate(*__first1, *__first2))
- break;
- ++__first1;
- }
- while (__first1 != __last1 && !__predicate(*__first1, *__first2))
- ++__first1;
- if (__first1 == __last1)
- return __last1;
-
- __p = __p1;
- __current = __first1;
- if (++__current == __last1) return __last1;
+ while (__first1 != __last1)
+ {
+ while (__first1 != __last1)
+ {
+ if (__predicate(*__first1, *__first2))
+ break;
+ ++__first1;
+ }
+ while (__first1 != __last1 && !__predicate(*__first1, *__first2))
+ ++__first1;
+ if (__first1 == __last1)
+ return __last1;
- while (__predicate(*__current, *__p)) {
- if (++__p == __last2)
- return __first1;
+ __p = __p1;
+ __current = __first1;
if (++__current == __last1)
return __last1;
- }
- ++__first1;
- }
+ while (__predicate(*__current, *__p))
+ {
+ if (++__p == __last2)
+ return __first1;
+ if (++__current == __last1)
+ return __last1;
+ }
+ ++__first1;
+ }
return __first1;
}
@@ -617,23 +634,27 @@ namespace std
if (__count <= 0)
return __first;
- else {
- __first = std::find(__first, __last, __val);
- while (__first != __last) {
- typename iterator_traits<_ForwardIterator>::difference_type __n = __count;
- _ForwardIterator __i = __first;
- ++__i;
- while (__i != __last && __n != 1 && *__i == __val) {
- ++__i;
- --__n;
- }
- if (__n == 1)
- return __first;
- else
- __first = std::find(__i, __last, __val);
+ else
+ {
+ __first = std::find(__first, __last, __val);
+ while (__first != __last)
+ {
+ typename iterator_traits<_ForwardIterator>::difference_type
+ __n = __count;
+ _ForwardIterator __i = __first;
+ ++__i;
+ while (__i != __last && __n != 1 && *__i == __val)
+ {
+ ++__i;
+ --__n;
+ }
+ if (__n == 1)
+ return __first;
+ else
+ __first = std::find(__i, __last, __val);
+ }
+ return __last;
}
- return __last;
- }
}
/**
@@ -666,33 +687,40 @@ namespace std
if (__count <= 0)
return __first;
- else {
- while (__first != __last) {
- if (__binary_pred(*__first, __val))
- break;
- ++__first;
- }
- while (__first != __last) {
- typename iterator_traits<_ForwardIterator>::difference_type __n = __count;
- _ForwardIterator __i = __first;
- ++__i;
- while (__i != __last && __n != 1 && __binary_pred(*__i, __val)) {
- ++__i;
- --__n;
- }
- if (__n == 1)
- return __first;
- else {
- while (__i != __last) {
- if (__binary_pred(*__i, __val))
+ else
+ {
+ while (__first != __last)
+ {
+ if (__binary_pred(*__first, __val))
break;
+ ++__first;
+ }
+ while (__first != __last)
+ {
+ typename iterator_traits<_ForwardIterator>::difference_type
+ __n = __count;
+ _ForwardIterator __i = __first;
++__i;
+ while (__i != __last && __n != 1 && __binary_pred(*__i, __val))
+ {
+ ++__i;
+ --__n;
+ }
+ if (__n == 1)
+ return __first;
+ else
+ {
+ while (__i != __last)
+ {
+ if (__binary_pred(*__i, __val))
+ break;
+ ++__i;
+ }
+ __first = __i;
+ }
}
- __first = __i;
- }
+ return __last;
}
- return __last;
- }
}
/**
@@ -712,8 +740,10 @@ namespace std
_ForwardIterator2 __first2)
{
// concept requirements
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator1>)
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator2>)
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator1>)
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator2>)
__glibcxx_function_requires(_ConvertibleConcept<
typename iterator_traits<_ForwardIterator1>::value_type,
typename iterator_traits<_ForwardIterator2>::value_type>)
@@ -742,7 +772,8 @@ namespace std
*
* @p unary_op must not alter its argument.
*/
- template<typename _InputIterator, typename _OutputIterator, typename _UnaryOperation>
+ template<typename _InputIterator, typename _OutputIterator,
+ typename _UnaryOperation>
_OutputIterator
transform(_InputIterator __first, _InputIterator __last,
_OutputIterator __result, _UnaryOperation __unary_op)
@@ -776,8 +807,8 @@ namespace std
*
* @p binary_op must not alter either of its arguments.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _OutputIterator,
- typename _BinaryOperation>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _OutputIterator, typename _BinaryOperation>
_OutputIterator
transform(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _OutputIterator __result,
@@ -814,7 +845,8 @@ namespace std
const _Tp& __old_value, const _Tp& __new_value)
{
// concept requirements
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator>)
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator>)
__glibcxx_function_requires(_EqualOpConcept<
typename iterator_traits<_ForwardIterator>::value_type, _Tp>)
__glibcxx_function_requires(_ConvertibleConcept<_Tp,
@@ -844,7 +876,8 @@ namespace std
_Predicate __pred, const _Tp& __new_value)
{
// concept requirements
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator>)
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator>)
__glibcxx_function_requires(_ConvertibleConcept<_Tp,
typename iterator_traits<_ForwardIterator>::value_type>)
__glibcxx_function_requires(_UnaryPredicateConcept<_Predicate,
@@ -903,8 +936,8 @@ namespace std
* @p [result,result+(last-first)) replacing elements for which
* @p pred returns true with @p new_value.
*/
- template<typename _InputIterator, typename _OutputIterator, typename _Predicate,
- typename _Tp>
+ template<typename _InputIterator, typename _OutputIterator,
+ typename _Predicate, typename _Tp>
_OutputIterator
replace_copy_if(_InputIterator __first, _InputIterator __last,
_OutputIterator __result,
@@ -936,7 +969,8 @@ namespace std
*/
template<typename _ForwardIterator, typename _Generator>
void
- generate(_ForwardIterator __first, _ForwardIterator __last, _Generator __gen)
+ generate(_ForwardIterator __first, _ForwardIterator __last,
+ _Generator __gen)
{
// concept requirements
__glibcxx_function_requires(_ForwardIteratorConcept<_ForwardIterator>)
@@ -1000,10 +1034,11 @@ namespace std
__glibcxx_requires_valid_range(__first, __last);
for ( ; __first != __last; ++__first)
- if (!(*__first == __value)) {
- *__result = *__first;
- ++__result;
- }
+ if (!(*__first == __value))
+ {
+ *__result = *__first;
+ ++__result;
+ }
return __result;
}
@@ -1021,7 +1056,8 @@ namespace std
* remove_copy_if() is stable, so the relative order of elements that are
* copied is unchanged.
*/
- template<typename _InputIterator, typename _OutputIterator, typename _Predicate>
+ template<typename _InputIterator, typename _OutputIterator,
+ typename _Predicate>
_OutputIterator
remove_copy_if(_InputIterator __first, _InputIterator __last,
_OutputIterator __result, _Predicate __pred)
@@ -1035,10 +1071,11 @@ namespace std
__glibcxx_requires_valid_range(__first, __last);
for ( ; __first != __last; ++__first)
- if (!__pred(*__first)) {
- *__result = *__first;
- ++__result;
- }
+ if (!__pred(*__first))
+ {
+ *__result = *__first;
+ ++__result;
+ }
return __result;
}
@@ -1064,7 +1101,8 @@ namespace std
const _Tp& __value)
{
// concept requirements
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator>)
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator>)
__glibcxx_function_requires(_ConvertibleConcept<_Tp,
typename iterator_traits<_ForwardIterator>::value_type>)
__glibcxx_function_requires(_EqualOpConcept<
@@ -1074,7 +1112,8 @@ namespace std
__first = std::find(__first, __last, __value);
_ForwardIterator __i = __first;
return __first == __last ? __first
- : std::remove_copy(++__i, __last, __first, __value);
+ : std::remove_copy(++__i, __last,
+ __first, __value);
}
/**
@@ -1099,7 +1138,8 @@ namespace std
_Predicate __pred)
{
// concept requirements
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator>)
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator>)
__glibcxx_function_requires(_UnaryPredicateConcept<_Predicate,
typename iterator_traits<_ForwardIterator>::value_type>)
__glibcxx_requires_valid_range(__first, __last);
@@ -1107,12 +1147,14 @@ namespace std
__first = std::find_if(__first, __last, __pred);
_ForwardIterator __i = __first;
return __first == __last ? __first
- : std::remove_copy_if(++__i, __last, __first, __pred);
+ : std::remove_copy_if(++__i, __last,
+ __first, __pred);
}
/**
* @if maint
- * This is an uglified unique_copy(_InputIterator, _InputIterator, _OutputIterator)
+ * This is an uglified unique_copy(_InputIterator, _InputIterator,
+ * _OutputIterator)
* overloaded for output iterators.
* @endif
*/
@@ -1126,16 +1168,18 @@ namespace std
typename iterator_traits<_InputIterator>::value_type __value = *__first;
*__result = __value;
while (++__first != __last)
- if (!(__value == *__first)) {
- __value = *__first;
- *++__result = __value;
- }
+ if (!(__value == *__first))
+ {
+ __value = *__first;
+ *++__result = __value;
+ }
return ++__result;
}
/**
* @if maint
- * This is an uglified unique_copy(_InputIterator, _InputIterator, _OutputIterator)
+ * This is an uglified unique_copy(_InputIterator, _InputIterator,
+ * _OutputIterator)
* overloaded for forward iterators.
* @endif
*/
@@ -1156,11 +1200,13 @@ namespace std
/**
* @if maint
* This is an uglified
- * unique_copy(_InputIterator, _InputIterator, _OutputIterator, _BinaryPredicate)
+ * unique_copy(_InputIterator, _InputIterator, _OutputIterator,
+ * _BinaryPredicate)
* overloaded for output iterators.
* @endif
*/
- template<typename _InputIterator, typename _OutputIterator, typename _BinaryPredicate>
+ template<typename _InputIterator, typename _OutputIterator,
+ typename _BinaryPredicate>
_OutputIterator
__unique_copy(_InputIterator __first, _InputIterator __last,
_OutputIterator __result,
@@ -1175,21 +1221,24 @@ namespace std
typename iterator_traits<_InputIterator>::value_type __value = *__first;
*__result = __value;
while (++__first != __last)
- if (!__binary_pred(__value, *__first)) {
- __value = *__first;
- *++__result = __value;
- }
+ if (!__binary_pred(__value, *__first))
+ {
+ __value = *__first;
+ *++__result = __value;
+ }
return ++__result;
}
/**
* @if maint
* This is an uglified
- * unique_copy(_InputIterator, _InputIterator, _OutputIterator, _BinaryPredicate)
+ * unique_copy(_InputIterator, _InputIterator, _OutputIterator,
+ * _BinaryPredicate)
* overloaded for forward iterators.
* @endif
*/
- template<typename _InputIterator, typename _ForwardIterator, typename _BinaryPredicate>
+ template<typename _InputIterator, typename _ForwardIterator,
+ typename _BinaryPredicate>
_ForwardIterator
__unique_copy(_InputIterator __first, _InputIterator __last,
_ForwardIterator __result,
@@ -1233,7 +1282,8 @@ namespace std
typename iterator_traits<_InputIterator>::value_type>)
__glibcxx_requires_valid_range(__first, __last);
- typedef typename iterator_traits<_OutputIterator>::iterator_category _IterType;
+ typedef typename iterator_traits<_OutputIterator>::iterator_category
+ _IterType;
if (__first == __last) return __result;
return std::__unique_copy(__first, __last, __result, _IterType());
@@ -1254,7 +1304,8 @@ namespace std
* unique_copy() is stable, so the relative order of elements that are
* copied is unchanged.
*/
- template<typename _InputIterator, typename _OutputIterator, typename _BinaryPredicate>
+ template<typename _InputIterator, typename _OutputIterator,
+ typename _BinaryPredicate>
inline _OutputIterator
unique_copy(_InputIterator __first, _InputIterator __last,
_OutputIterator __result,
@@ -1266,10 +1317,12 @@ namespace std
typename iterator_traits<_InputIterator>::value_type>)
__glibcxx_requires_valid_range(__first, __last);
- typedef typename iterator_traits<_OutputIterator>::iterator_category _IterType;
+ typedef typename iterator_traits<_OutputIterator>::iterator_category
+ _IterType;
if (__first == __last) return __result;
- return std::__unique_copy(__first, __last, __result, __binary_pred, _IterType());
+ return std::__unique_copy(__first, __last, __result,
+ __binary_pred, _IterType());
}
/**
@@ -1290,7 +1343,8 @@ namespace std
unique(_ForwardIterator __first, _ForwardIterator __last)
{
// concept requirements
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator>)
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator>)
__glibcxx_function_requires(_EqualityComparableConcept<
typename iterator_traits<_ForwardIterator>::value_type>)
__glibcxx_requires_valid_range(__first, __last);
@@ -1329,7 +1383,8 @@ namespace std
_BinaryPredicate __binary_pred)
{
// concept requirements
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator>)
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator>)
__glibcxx_function_requires(_BinaryPredicateConcept<_BinaryPredicate,
typename iterator_traits<_ForwardIterator>::value_type,
typename iterator_traits<_ForwardIterator>::value_type>)
@@ -1351,7 +1406,8 @@ namespace std
/**
* @if maint
- * This is an uglified reverse(_BidirectionalIterator, _BidirectionalIterator)
+ * This is an uglified reverse(_BidirectionalIterator,
+ * _BidirectionalIterator)
* overloaded for bidirectional iterators.
* @endif
*/
@@ -1369,7 +1425,8 @@ namespace std
/**
* @if maint
- * This is an uglified reverse(_BidirectionalIterator, _BidirectionalIterator)
+ * This is an uglified reverse(_BidirectionalIterator,
+ * _BidirectionalIterator)
* overloaded for bidirectional iterators.
* @endif
*/
@@ -1425,16 +1482,18 @@ namespace std
_OutputIterator __result)
{
// concept requirements
- __glibcxx_function_requires(_BidirectionalIteratorConcept<_BidirectionalIterator>)
+ __glibcxx_function_requires(_BidirectionalIteratorConcept<
+ _BidirectionalIterator>)
__glibcxx_function_requires(_OutputIteratorConcept<_OutputIterator,
typename iterator_traits<_BidirectionalIterator>::value_type>)
__glibcxx_requires_valid_range(__first, __last);
- while (__first != __last) {
- --__last;
- *__result = *__last;
- ++__result;
- }
+ while (__first != __last)
+ {
+ --__last;
+ *__result = *__last;
+ ++__result;
+ }
return __result;
}
@@ -1449,11 +1508,12 @@ namespace std
_EuclideanRingElement
__gcd(_EuclideanRingElement __m, _EuclideanRingElement __n)
{
- while (__n != 0) {
- _EuclideanRingElement __t = __m % __n;
- __m = __n;
- __n = __t;
- }
+ while (__n != 0)
+ {
+ _EuclideanRingElement __t = __m % __n;
+ __m = __n;
+ __n = __t;
+ }
return __m;
}
@@ -1473,21 +1533,24 @@ namespace std
return;
_ForwardIterator __first2 = __middle;
- do {
- swap(*__first++, *__first2++);
- if (__first == __middle)
- __middle = __first2;
- } while (__first2 != __last);
+ do
+ {
+ swap(*__first++, *__first2++);
+ if (__first == __middle)
+ __middle = __first2;
+ }
+ while (__first2 != __last);
__first2 = __middle;
- while (__first2 != __last) {
- swap(*__first++, *__first2++);
- if (__first == __middle)
- __middle = __first2;
- else if (__first2 == __last)
- __first2 = __middle;
- }
+ while (__first2 != __last)
+ {
+ swap(*__first++, *__first2++);
+ if (__first == __middle)
+ __middle = __first2;
+ else if (__first2 == __last)
+ __first2 = __middle;
+ }
}
/**
@@ -1515,12 +1578,10 @@ namespace std
while (__first != __middle && __middle != __last)
swap(*__first++, *--__last);
- if (__first == __middle) {
+ if (__first == __middle)
std::__reverse(__middle, __last, bidirectional_iterator_tag());
- }
- else {
+ else
std::__reverse(__first, __middle, bidirectional_iterator_tag());
- }
}
/**
@@ -1542,51 +1603,59 @@ namespace std
if ((__first == __middle) || (__last == __middle))
return;
- typedef typename iterator_traits<_RandomAccessIterator>::difference_type _Distance;
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::difference_type
+ _Distance;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
- _Distance __n = __last - __first;
- _Distance __k = __middle - __first;
- _Distance __l = __n - __k;
-
- if (__k == __l) {
- std::swap_ranges(__first, __middle, __middle);
- return;
- }
+ const _Distance __n = __last - __first;
+ const _Distance __k = __middle - __first;
+ const _Distance __l = __n - __k;
- _Distance __d = __gcd(__n, __k);
-
- for (_Distance __i = 0; __i < __d; __i++) {
- _ValueType __tmp = *__first;
- _RandomAccessIterator __p = __first;
-
- if (__k < __l) {
- for (_Distance __j = 0; __j < __l/__d; __j++) {
- if (__p > __first + __l) {
- *__p = *(__p - __l);
- __p -= __l;
- }
-
- *__p = *(__p + __k);
- __p += __k;
- }
+ if (__k == __l)
+ {
+ std::swap_ranges(__first, __middle, __middle);
+ return;
}
- else {
- for (_Distance __j = 0; __j < __k/__d - 1; __j ++) {
- if (__p < __last - __k) {
- *__p = *(__p + __k);
- __p += __k;
+ const _Distance __d = __gcd(__n, __k);
+
+ for (_Distance __i = 0; __i < __d; __i++)
+ {
+ const _ValueType __tmp = *__first;
+ _RandomAccessIterator __p = __first;
+
+ if (__k < __l)
+ {
+ for (_Distance __j = 0; __j < __l / __d; __j++)
+ {
+ if (__p > __first + __l)
+ {
+ *__p = *(__p - __l);
+ __p -= __l;
+ }
+
+ *__p = *(__p + __k);
+ __p += __k;
+ }
+ }
+ else
+ {
+ for (_Distance __j = 0; __j < __k / __d - 1; __j ++)
+ {
+ if (__p < __last - __k)
+ {
+ *__p = *(__p + __k);
+ __p += __k;
+ }
+ *__p = * (__p - __l);
+ __p -= __l;
+ }
}
- *__p = * (__p - __l);
- __p -= __l;
- }
+ *__p = __tmp;
+ ++__first;
}
-
- *__p = __tmp;
- ++__first;
- }
}
/**
@@ -1609,14 +1678,17 @@ namespace std
*/
template<typename _ForwardIterator>
inline void
- rotate(_ForwardIterator __first, _ForwardIterator __middle, _ForwardIterator __last)
+ rotate(_ForwardIterator __first, _ForwardIterator __middle,
+ _ForwardIterator __last)
{
// concept requirements
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator>)
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator>)
__glibcxx_requires_valid_range(__first, __middle);
__glibcxx_requires_valid_range(__middle, __last);
- typedef typename iterator_traits<_ForwardIterator>::iterator_category _IterType;
+ typedef typename iterator_traits<_ForwardIterator>::iterator_category
+ _IterType;
std::__rotate(__first, __middle, __last, _IterType());
}
@@ -1671,7 +1743,7 @@ namespace std
_RandomAccessIterator>)
__glibcxx_requires_valid_range(__first, __last);
- if (__first != __last)
+ if (__first != __last)
for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)
std::iter_swap(__i, __first + (std::rand() % ((__i - __first) + 1)));
}
@@ -1699,7 +1771,8 @@ namespace std
_RandomAccessIterator>)
__glibcxx_requires_valid_range(__first, __last);
- if (__first == __last) return;
+ if (__first == __last)
+ return;
for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)
std::iter_swap(__i, __first + __rand((__i - __first) + 1));
}
@@ -1713,21 +1786,24 @@ namespace std
template<typename _ForwardIterator, typename _Predicate>
_ForwardIterator
__partition(_ForwardIterator __first, _ForwardIterator __last,
- _Predicate __pred,
+ _Predicate __pred,
forward_iterator_tag)
{
- if (__first == __last) return __first;
+ if (__first == __last)
+ return __first;
while (__pred(*__first))
- if (++__first == __last) return __first;
+ if (++__first == __last)
+ return __first;
_ForwardIterator __next = __first;
while (++__next != __last)
- if (__pred(*__next)) {
- swap(*__first, *__next);
- ++__first;
- }
+ if (__pred(*__next))
+ {
+ swap(*__first, *__next);
+ ++__first;
+ }
return __first;
}
@@ -1743,25 +1819,26 @@ namespace std
_Predicate __pred,
bidirectional_iterator_tag)
{
- while (true) {
- while (true)
- if (__first == __last)
- return __first;
- else if (__pred(*__first))
- ++__first;
- else
- break;
- --__last;
- while (true)
- if (__first == __last)
- return __first;
- else if (!__pred(*__last))
- --__last;
- else
- break;
- std::iter_swap(__first, __last);
- ++__first;
- }
+ while (true)
+ {
+ while (true)
+ if (__first == __last)
+ return __first;
+ else if (__pred(*__first))
+ ++__first;
+ else
+ break;
+ --__last;
+ while (true)
+ if (__first == __last)
+ return __first;
+ else if (!__pred(*__last))
+ --__last;
+ else
+ break;
+ std::iter_swap(__first, __last);
+ ++__first;
+ }
}
/**
@@ -1773,7 +1850,7 @@ namespace std
* @return An iterator @p middle such that @p pred(i) is true for each
* iterator @p i in the range @p [first,middle) and false for each @p i
* in the range @p [middle,last).
- *
+ *
* @p pred must not modify its operand. @p partition() does not preserve
* the relative ordering of elements in each group, use
* @p stable_partition() if this is needed.
@@ -1784,12 +1861,14 @@ namespace std
_Predicate __pred)
{
// concept requirements
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator>)
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator>)
__glibcxx_function_requires(_UnaryPredicateConcept<_Predicate,
typename iterator_traits<_ForwardIterator>::value_type>)
__glibcxx_requires_valid_range(__first, __last);
- return std::__partition(__first, __last, __pred, std::__iterator_category(__first));
+ return std::__partition(__first, __last, __pred,
+ std::__iterator_category(__first));
}
@@ -1800,19 +1879,22 @@ namespace std
*/
template<typename _ForwardIterator, typename _Predicate, typename _Distance>
_ForwardIterator
- __inplace_stable_partition(_ForwardIterator __first, _ForwardIterator __last,
+ __inplace_stable_partition(_ForwardIterator __first,
+ _ForwardIterator __last,
_Predicate __pred, _Distance __len)
{
if (__len == 1)
return __pred(*__first) ? __last : __first;
_ForwardIterator __middle = __first;
std::advance(__middle, __len / 2);
- _ForwardIterator __begin = std::__inplace_stable_partition(__first, __middle,
+ _ForwardIterator __begin = std::__inplace_stable_partition(__first,
+ __middle,
__pred,
__len / 2);
_ForwardIterator __end = std::__inplace_stable_partition(__middle, __last,
__pred,
- __len - __len / 2);
+ __len
+ - __len / 2);
std::rotate(__begin, __middle, __end);
std::advance(__begin, std::distance(__middle, __end));
return __begin;
@@ -1826,41 +1908,46 @@ namespace std
template<typename _ForwardIterator, typename _Pointer, typename _Predicate,
typename _Distance>
_ForwardIterator
- __stable_partition_adaptive(_ForwardIterator __first, _ForwardIterator __last,
+ __stable_partition_adaptive(_ForwardIterator __first,
+ _ForwardIterator __last,
_Predicate __pred, _Distance __len,
_Pointer __buffer,
_Distance __buffer_size)
{
- if (__len <= __buffer_size) {
- _ForwardIterator __result1 = __first;
- _Pointer __result2 = __buffer;
- for ( ; __first != __last ; ++__first)
- if (__pred(*__first)) {
- *__result1 = *__first;
- ++__result1;
- }
- else {
- *__result2 = *__first;
- ++__result2;
- }
- std::copy(__buffer, __result2, __result1);
- return __result1;
- }
- else {
- _ForwardIterator __middle = __first;
- std::advance(__middle, __len / 2);
- _ForwardIterator __begin = std::__stable_partition_adaptive(__first, __middle,
- __pred,
- __len / 2,
- __buffer, __buffer_size);
- _ForwardIterator __end = std::__stable_partition_adaptive( __middle, __last,
- __pred,
- __len - __len / 2,
- __buffer, __buffer_size);
- std::rotate(__begin, __middle, __end);
- std::advance(__begin, std::distance(__middle, __end));
- return __begin;
- }
+ if (__len <= __buffer_size)
+ {
+ _ForwardIterator __result1 = __first;
+ _Pointer __result2 = __buffer;
+ for ( ; __first != __last ; ++__first)
+ if (__pred(*__first))
+ {
+ *__result1 = *__first;
+ ++__result1;
+ }
+ else
+ {
+ *__result2 = *__first;
+ ++__result2;
+ }
+ std::copy(__buffer, __result2, __result1);
+ return __result1;
+ }
+ else
+ {
+ _ForwardIterator __middle = __first;
+ std::advance(__middle, __len / 2);
+ _ForwardIterator __begin =
+ std::__stable_partition_adaptive(__first, __middle, __pred,
+ __len / 2, __buffer,
+ __buffer_size);
+ _ForwardIterator __end =
+ std::__stable_partition_adaptive(__middle, __last, __pred,
+ __len - __len / 2,
+ __buffer, __buffer_size);
+ std::rotate(__begin, __middle, __end);
+ std::advance(__begin, std::distance(__middle, __end));
+ return __begin;
+ }
}
/**
@@ -1872,7 +1959,7 @@ namespace std
* @return An iterator @p middle such that @p pred(i) is true for each
* iterator @p i in the range @p [first,middle) and false for each @p i
* in the range @p [middle,last).
- *
+ *
* Performs the same function as @p partition() with the additional
* guarantee that the relative ordering of elements in each group is
* preserved, so any two elements @p x and @p y in the range
@@ -1885,7 +1972,8 @@ namespace std
_Predicate __pred)
{
// concept requirements
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator>)
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator>)
__glibcxx_function_requires(_UnaryPredicateConcept<_Predicate,
typename iterator_traits<_ForwardIterator>::value_type>)
__glibcxx_requires_valid_range(__first, __last);
@@ -1893,19 +1981,24 @@ namespace std
if (__first == __last)
return __first;
else
- {
- typedef typename iterator_traits<_ForwardIterator>::value_type _ValueType;
- typedef typename iterator_traits<_ForwardIterator>::difference_type _DistanceType;
-
- _Temporary_buffer<_ForwardIterator, _ValueType> __buf(__first, __last);
+ {
+ typedef typename iterator_traits<_ForwardIterator>::value_type
+ _ValueType;
+ typedef typename iterator_traits<_ForwardIterator>::difference_type
+ _DistanceType;
+
+ _Temporary_buffer<_ForwardIterator, _ValueType> __buf(__first,
+ __last);
if (__buf.size() > 0)
- return std::__stable_partition_adaptive(__first, __last, __pred,
- _DistanceType(__buf.requested_size()),
- __buf.begin(), __buf.size());
+ return
+ std::__stable_partition_adaptive(__first, __last, __pred,
+ _DistanceType(__buf.requested_size()),
+ __buf.begin(), __buf.size());
else
- return std::__inplace_stable_partition(__first, __last, __pred,
- _DistanceType(__buf.requested_size()));
- }
+ return
+ std::__inplace_stable_partition(__first, __last, __pred,
+ _DistanceType(__buf.requested_size()));
+ }
}
/**
@@ -1915,20 +2008,21 @@ namespace std
*/
template<typename _RandomAccessIterator, typename _Tp>
_RandomAccessIterator
- __unguarded_partition(_RandomAccessIterator __first, _RandomAccessIterator __last,
- _Tp __pivot)
+ __unguarded_partition(_RandomAccessIterator __first,
+ _RandomAccessIterator __last, _Tp __pivot)
{
- while (true) {
- while (*__first < __pivot)
- ++__first;
- --__last;
- while (__pivot < *__last)
+ while (true)
+ {
+ while (*__first < __pivot)
+ ++__first;
--__last;
- if (!(__first < __last))
- return __first;
- std::iter_swap(__first, __last);
- ++__first;
- }
+ while (__pivot < *__last)
+ --__last;
+ if (!(__first < __last))
+ return __first;
+ std::iter_swap(__first, __last);
+ ++__first;
+ }
}
/**
@@ -1938,23 +2032,24 @@ namespace std
*/
template<typename _RandomAccessIterator, typename _Tp, typename _Compare>
_RandomAccessIterator
- __unguarded_partition(_RandomAccessIterator __first, _RandomAccessIterator __last,
+ __unguarded_partition(_RandomAccessIterator __first,
+ _RandomAccessIterator __last,
_Tp __pivot, _Compare __comp)
{
- while (true) {
- while (__comp(*__first, __pivot))
- ++__first;
- --__last;
- while (__comp(__pivot, *__last))
+ while (true)
+ {
+ while (__comp(*__first, __pivot))
+ ++__first;
--__last;
- if (!(__first < __last))
- return __first;
- std::iter_swap(__first, __last);
- ++__first;
- }
+ while (__comp(__pivot, *__last))
+ --__last;
+ if (!(__first < __last))
+ return __first;
+ std::iter_swap(__first, __last);
+ ++__first;
+ }
}
-
/**
* @if maint
* @doctodo
@@ -1974,11 +2069,12 @@ namespace std
{
_RandomAccessIterator __next = __last;
--__next;
- while (__val < *__next) {
- *__last = *__next;
- __last = __next;
- --__next;
- }
+ while (__val < *__next)
+ {
+ *__last = *__next;
+ __last = __next;
+ --__next;
+ }
*__last = __val;
}
@@ -1989,15 +2085,17 @@ namespace std
*/
template<typename _RandomAccessIterator, typename _Tp, typename _Compare>
void
- __unguarded_linear_insert(_RandomAccessIterator __last, _Tp __val, _Compare __comp)
+ __unguarded_linear_insert(_RandomAccessIterator __last, _Tp __val,
+ _Compare __comp)
{
_RandomAccessIterator __next = __last;
--__next;
- while (__comp(__val, *__next)) {
- *__last = *__next;
- __last = __next;
- --__next;
- }
+ while (__comp(__val, *__next))
+ {
+ *__last = *__next;
+ __last = __next;
+ --__next;
+ }
*__last = __val;
}
@@ -2008,20 +2106,24 @@ namespace std
*/
template<typename _RandomAccessIterator>
void
- __insertion_sort(_RandomAccessIterator __first, _RandomAccessIterator __last)
+ __insertion_sort(_RandomAccessIterator __first,
+ _RandomAccessIterator __last)
{
- if (__first == __last) return;
+ if (__first == __last)
+ return;
for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)
- {
- typename iterator_traits<_RandomAccessIterator>::value_type __val = *__i;
- if (__val < *__first) {
- std::copy_backward(__first, __i, __i + 1);
- *__first = __val;
+ {
+ typename iterator_traits<_RandomAccessIterator>::value_type
+ __val = *__i;
+ if (__val < *__first)
+ {
+ std::copy_backward(__first, __i, __i + 1);
+ *__first = __val;
+ }
+ else
+ std::__unguarded_linear_insert(__i, __val);
}
- else
- std::__unguarded_linear_insert(__i, __val);
- }
}
/**
@@ -2031,21 +2133,23 @@ namespace std
*/
template<typename _RandomAccessIterator, typename _Compare>
void
- __insertion_sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
- _Compare __comp)
+ __insertion_sort(_RandomAccessIterator __first,
+ _RandomAccessIterator __last, _Compare __comp)
{
if (__first == __last) return;
for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)
- {
- typename iterator_traits<_RandomAccessIterator>::value_type __val = *__i;
- if (__comp(__val, *__first)) {
- std::copy_backward(__first, __i, __i + 1);
- *__first = __val;
+ {
+ typename iterator_traits<_RandomAccessIterator>::value_type
+ __val = *__i;
+ if (__comp(__val, *__first))
+ {
+ std::copy_backward(__first, __i, __i + 1);
+ *__first = __val;
+ }
+ else
+ std::__unguarded_linear_insert(__i, __val, __comp);
}
- else
- std::__unguarded_linear_insert(__i, __val, __comp);
- }
}
/**
@@ -2055,9 +2159,11 @@ namespace std
*/
template<typename _RandomAccessIterator>
inline void
- __unguarded_insertion_sort(_RandomAccessIterator __first, _RandomAccessIterator __last)
+ __unguarded_insertion_sort(_RandomAccessIterator __first,
+ _RandomAccessIterator __last)
{
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
for (_RandomAccessIterator __i = __first; __i != __last; ++__i)
std::__unguarded_linear_insert(__i, _ValueType(*__i));
@@ -2070,10 +2176,11 @@ namespace std
*/
template<typename _RandomAccessIterator, typename _Compare>
inline void
- __unguarded_insertion_sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
- _Compare __comp)
+ __unguarded_insertion_sort(_RandomAccessIterator __first,
+ _RandomAccessIterator __last, _Compare __comp)
{
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
for (_RandomAccessIterator __i = __first; __i != __last; ++__i)
std::__unguarded_linear_insert(__i, _ValueType(*__i), __comp);
@@ -2086,12 +2193,14 @@ namespace std
*/
template<typename _RandomAccessIterator>
void
- __final_insertion_sort(_RandomAccessIterator __first, _RandomAccessIterator __last)
+ __final_insertion_sort(_RandomAccessIterator __first,
+ _RandomAccessIterator __last)
{
- if (__last - __first > _S_threshold) {
- std::__insertion_sort(__first, __first + _S_threshold);
- std::__unguarded_insertion_sort(__first + _S_threshold, __last);
- }
+ if (__last - __first > _S_threshold)
+ {
+ std::__insertion_sort(__first, __first + _S_threshold);
+ std::__unguarded_insertion_sort(__first + _S_threshold, __last);
+ }
else
std::__insertion_sort(__first, __last);
}
@@ -2103,13 +2212,15 @@ namespace std
*/
template<typename _RandomAccessIterator, typename _Compare>
void
- __final_insertion_sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
- _Compare __comp)
- {
- if (__last - __first > _S_threshold) {
- std::__insertion_sort(__first, __first + _S_threshold, __comp);
- std::__unguarded_insertion_sort(__first + _S_threshold, __last, __comp);
- }
+ __final_insertion_sort(_RandomAccessIterator __first,
+ _RandomAccessIterator __last, _Compare __comp)
+ {
+ if (__last - __first > _S_threshold)
+ {
+ std::__insertion_sort(__first, __first + _S_threshold, __comp);
+ std::__unguarded_insertion_sort(__first + _S_threshold, __last,
+ __comp);
+ }
else
std::__insertion_sort(__first, __last, __comp);
}
@@ -2124,7 +2235,8 @@ namespace std
__lg(_Size __n)
{
_Size __k;
- for (__k = 0; __n != 1; __n >>= 1) ++__k;
+ for (__k = 0; __n != 1; __n >>= 1)
+ ++__k;
return __k;
}
@@ -2149,7 +2261,8 @@ namespace std
_RandomAccessIterator __middle,
_RandomAccessIterator __last)
{
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
// concept requirements
__glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<
@@ -2190,13 +2303,14 @@ namespace std
_RandomAccessIterator __last,
_Compare __comp)
{
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
// concept requirements
__glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<
_RandomAccessIterator>)
__glibcxx_function_requires(_BinaryPredicateConcept<_Compare,
- _ValueType, _ValueType>)
+ _ValueType, _ValueType>)
__glibcxx_requires_valid_range(__first, __middle);
__glibcxx_requires_valid_range(__middle, __last);
@@ -2230,33 +2344,41 @@ namespace std
_RandomAccessIterator __result_first,
_RandomAccessIterator __result_last)
{
- typedef typename iterator_traits<_InputIterator>::value_type _InputValueType;
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _OutputValueType;
- typedef typename iterator_traits<_RandomAccessIterator>::difference_type _DistanceType;
+ typedef typename iterator_traits<_InputIterator>::value_type
+ _InputValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _OutputValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::difference_type
+ _DistanceType;
// concept requirements
__glibcxx_function_requires(_InputIteratorConcept<_InputIterator>)
- __glibcxx_function_requires(_ConvertibleConcept<_InputValueType, _OutputValueType>)
+ __glibcxx_function_requires(_ConvertibleConcept<_InputValueType,
+ _OutputValueType>)
__glibcxx_function_requires(_LessThanComparableConcept<_OutputValueType>)
__glibcxx_function_requires(_LessThanComparableConcept<_InputValueType>)
__glibcxx_requires_valid_range(__first, __last);
__glibcxx_requires_valid_range(__result_first, __result_last);
- if (__result_first == __result_last) return __result_last;
+ if (__result_first == __result_last)
+ return __result_last;
_RandomAccessIterator __result_real_last = __result_first;
- while(__first != __last && __result_real_last != __result_last) {
- *__result_real_last = *__first;
- ++__result_real_last;
- ++__first;
- }
+ while(__first != __last && __result_real_last != __result_last)
+ {
+ *__result_real_last = *__first;
+ ++__result_real_last;
+ ++__first;
+ }
std::make_heap(__result_first, __result_real_last);
- while (__first != __last) {
- if (*__first < *__result_first)
- std::__adjust_heap(__result_first, _DistanceType(0),
- _DistanceType(__result_real_last - __result_first),
- _InputValueType(*__first));
- ++__first;
- }
+ while (__first != __last)
+ {
+ if (*__first < *__result_first)
+ std::__adjust_heap(__result_first, _DistanceType(0),
+ _DistanceType(__result_real_last
+ - __result_first),
+ _InputValueType(*__first));
+ ++__first;
+ }
std::sort_heap(__result_first, __result_real_last);
return __result_real_last;
}
@@ -2287,35 +2409,44 @@ namespace std
_RandomAccessIterator __result_last,
_Compare __comp)
{
- typedef typename iterator_traits<_InputIterator>::value_type _InputValueType;
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _OutputValueType;
- typedef typename iterator_traits<_RandomAccessIterator>::difference_type _DistanceType;
+ typedef typename iterator_traits<_InputIterator>::value_type
+ _InputValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _OutputValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::difference_type
+ _DistanceType;
// concept requirements
__glibcxx_function_requires(_InputIteratorConcept<_InputIterator>)
- __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<_RandomAccessIterator>)
- __glibcxx_function_requires(_ConvertibleConcept<_InputValueType, _OutputValueType>)
+ __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<
+ _RandomAccessIterator>)
+ __glibcxx_function_requires(_ConvertibleConcept<_InputValueType,
+ _OutputValueType>)
__glibcxx_function_requires(_BinaryPredicateConcept<_Compare,
_OutputValueType, _OutputValueType>)
__glibcxx_requires_valid_range(__first, __last);
__glibcxx_requires_valid_range(__result_first, __result_last);
- if (__result_first == __result_last) return __result_last;
+ if (__result_first == __result_last)
+ return __result_last;
_RandomAccessIterator __result_real_last = __result_first;
- while(__first != __last && __result_real_last != __result_last) {
- *__result_real_last = *__first;
- ++__result_real_last;
- ++__first;
- }
+ while(__first != __last && __result_real_last != __result_last)
+ {
+ *__result_real_last = *__first;
+ ++__result_real_last;
+ ++__first;
+ }
std::make_heap(__result_first, __result_real_last, __comp);
- while (__first != __last) {
- if (__comp(*__first, *__result_first))
- std::__adjust_heap(__result_first, _DistanceType(0),
- _DistanceType(__result_real_last - __result_first),
- _InputValueType(*__first),
- __comp);
- ++__first;
- }
+ while (__first != __last)
+ {
+ if (__comp(*__first, *__result_first))
+ std::__adjust_heap(__result_first, _DistanceType(0),
+ _DistanceType(__result_real_last
+ - __result_first),
+ _InputValueType(*__first),
+ __comp);
+ ++__first;
+ }
std::sort_heap(__result_first, __result_real_last, __comp);
return __result_real_last;
}
@@ -2327,25 +2458,33 @@ namespace std
*/
template<typename _RandomAccessIterator, typename _Size>
void
- __introsort_loop(_RandomAccessIterator __first, _RandomAccessIterator __last,
+ __introsort_loop(_RandomAccessIterator __first,
+ _RandomAccessIterator __last,
_Size __depth_limit)
{
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
- while (__last - __first > _S_threshold) {
- if (__depth_limit == 0) {
- std::partial_sort(__first, __last, __last);
- return;
+ while (__last - __first > _S_threshold)
+ {
+ if (__depth_limit == 0)
+ {
+ std::partial_sort(__first, __last, __last);
+ return;
+ }
+ --__depth_limit;
+ _RandomAccessIterator __cut =
+ std::__unguarded_partition(__first, __last,
+ _ValueType(std::__median(*__first,
+ *(__first
+ + (__last
+ - __first)
+ / 2),
+ *(__last
+ - 1))));
+ std::__introsort_loop(__cut, __last, __depth_limit);
+ __last = __cut;
}
- --__depth_limit;
- _RandomAccessIterator __cut =
- std::__unguarded_partition(__first, __last,
- _ValueType(std::__median(*__first,
- *(__first + (__last - __first)/2),
- *(__last - 1))));
- std::__introsort_loop(__cut, __last, __depth_limit);
- __last = __cut;
- }
}
/**
@@ -2355,25 +2494,34 @@ namespace std
*/
template<typename _RandomAccessIterator, typename _Size, typename _Compare>
void
- __introsort_loop(_RandomAccessIterator __first, _RandomAccessIterator __last,
+ __introsort_loop(_RandomAccessIterator __first,
+ _RandomAccessIterator __last,
_Size __depth_limit, _Compare __comp)
{
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
- while (__last - __first > _S_threshold) {
- if (__depth_limit == 0) {
- std::partial_sort(__first, __last, __last, __comp);
- return;
+ while (__last - __first > _S_threshold)
+ {
+ if (__depth_limit == 0)
+ {
+ std::partial_sort(__first, __last, __last, __comp);
+ return;
+ }
+ --__depth_limit;
+ _RandomAccessIterator __cut =
+ std::__unguarded_partition(__first, __last,
+ _ValueType(std::__median(*__first,
+ *(__first
+ + (__last
+ - __first)
+ / 2),
+ *(__last - 1),
+ __comp)),
+ __comp);
+ std::__introsort_loop(__cut, __last, __depth_limit, __comp);
+ __last = __cut;
}
- --__depth_limit;
- _RandomAccessIterator __cut =
- std::__unguarded_partition(__first, __last,
- _ValueType(std::__median(*__first,
- *(__first + (__last - __first)/2),
- *(__last - 1), __comp)), __comp);
- std::__introsort_loop(__cut, __last, __depth_limit, __comp);
- __last = __cut;
- }
}
/**
@@ -2393,7 +2541,8 @@ namespace std
inline void
sort(_RandomAccessIterator __first, _RandomAccessIterator __last)
{
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
// concept requirements
__glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<
@@ -2401,10 +2550,11 @@ namespace std
__glibcxx_function_requires(_LessThanComparableConcept<_ValueType>)
__glibcxx_requires_valid_range(__first, __last);
- if (__first != __last) {
- std::__introsort_loop(__first, __last, __lg(__last - __first) * 2);
- std::__final_insertion_sort(__first, __last);
- }
+ if (__first != __last)
+ {
+ std::__introsort_loop(__first, __last, __lg(__last - __first) * 2);
+ std::__final_insertion_sort(__first, __last);
+ }
}
/**
@@ -2423,20 +2573,25 @@ namespace std
*/
template<typename _RandomAccessIterator, typename _Compare>
inline void
- sort(_RandomAccessIterator __first, _RandomAccessIterator __last, _Compare __comp)
+ sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
+ _Compare __comp)
{
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
// concept requirements
__glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<
_RandomAccessIterator>)
- __glibcxx_function_requires(_BinaryPredicateConcept<_Compare, _ValueType, _ValueType>)
+ __glibcxx_function_requires(_BinaryPredicateConcept<_Compare, _ValueType,
+ _ValueType>)
__glibcxx_requires_valid_range(__first, __last);
- if (__first != __last) {
- std::__introsort_loop(__first, __last, __lg(__last - __first) * 2, __comp);
- std::__final_insertion_sort(__first, __last, __comp);
- }
+ if (__first != __last)
+ {
+ std::__introsort_loop(__first, __last, __lg(__last - __first) * 2,
+ __comp);
+ std::__final_insertion_sort(__first, __last, __comp);
+ }
}
/**
@@ -2451,10 +2606,13 @@ namespace std
*/
template<typename _ForwardIterator, typename _Tp>
_ForwardIterator
- lower_bound(_ForwardIterator __first, _ForwardIterator __last, const _Tp& __val)
+ lower_bound(_ForwardIterator __first, _ForwardIterator __last,
+ const _Tp& __val)
{
- typedef typename iterator_traits<_ForwardIterator>::value_type _ValueType;
- typedef typename iterator_traits<_ForwardIterator>::difference_type _DistanceType;
+ typedef typename iterator_traits<_ForwardIterator>::value_type
+ _ValueType;
+ typedef typename iterator_traits<_ForwardIterator>::difference_type
+ _DistanceType;
// concept requirements
// Note that these are slightly stricter than those of the 4-argument
@@ -2470,18 +2628,20 @@ namespace std
_DistanceType __half;
_ForwardIterator __middle;
- while (__len > 0) {
- __half = __len >> 1;
- __middle = __first;
- std::advance(__middle, __half);
- if (*__middle < __val) {
- __first = __middle;
- ++__first;
- __len = __len - __half - 1;
+ while (__len > 0)
+ {
+ __half = __len >> 1;
+ __middle = __first;
+ std::advance(__middle, __half);
+ if (*__middle < __val)
+ {
+ __first = __middle;
+ ++__first;
+ __len = __len - __half - 1;
+ }
+ else
+ __len = __half;
}
- else
- __len = __half;
- }
return __first;
}
@@ -2504,30 +2664,35 @@ namespace std
lower_bound(_ForwardIterator __first, _ForwardIterator __last,
const _Tp& __val, _Compare __comp)
{
- typedef typename iterator_traits<_ForwardIterator>::value_type _ValueType;
- typedef typename iterator_traits<_ForwardIterator>::difference_type _DistanceType;
+ typedef typename iterator_traits<_ForwardIterator>::value_type
+ _ValueType;
+ typedef typename iterator_traits<_ForwardIterator>::difference_type
+ _DistanceType;
// concept requirements
__glibcxx_function_requires(_ForwardIteratorConcept<_ForwardIterator>)
- __glibcxx_function_requires(_BinaryPredicateConcept<_Compare, _ValueType, _Tp>)
+ __glibcxx_function_requires(_BinaryPredicateConcept<_Compare,
+ _ValueType, _Tp>)
__glibcxx_requires_partitioned_pred(__first, __last, __val, __comp);
_DistanceType __len = std::distance(__first, __last);
_DistanceType __half;
_ForwardIterator __middle;
- while (__len > 0) {
- __half = __len >> 1;
- __middle = __first;
- std::advance(__middle, __half);
- if (__comp(*__middle, __val)) {
- __first = __middle;
- ++__first;
- __len = __len - __half - 1;
+ while (__len > 0)
+ {
+ __half = __len >> 1;
+ __middle = __first;
+ std::advance(__middle, __half);
+ if (__comp(*__middle, __val))
+ {
+ __first = __middle;
+ ++__first;
+ __len = __len - __half - 1;
+ }
+ else
+ __len = __half;
}
- else
- __len = __half;
- }
return __first;
}
@@ -2543,10 +2708,13 @@ namespace std
*/
template<typename _ForwardIterator, typename _Tp>
_ForwardIterator
- upper_bound(_ForwardIterator __first, _ForwardIterator __last, const _Tp& __val)
+ upper_bound(_ForwardIterator __first, _ForwardIterator __last,
+ const _Tp& __val)
{
- typedef typename iterator_traits<_ForwardIterator>::value_type _ValueType;
- typedef typename iterator_traits<_ForwardIterator>::difference_type _DistanceType;
+ typedef typename iterator_traits<_ForwardIterator>::value_type
+ _ValueType;
+ typedef typename iterator_traits<_ForwardIterator>::difference_type
+ _DistanceType;
// concept requirements
// See comments on lower_bound.
@@ -2559,18 +2727,20 @@ namespace std
_DistanceType __half;
_ForwardIterator __middle;
- while (__len > 0) {
- __half = __len >> 1;
- __middle = __first;
- std::advance(__middle, __half);
- if (__val < *__middle)
- __len = __half;
- else {
- __first = __middle;
- ++__first;
- __len = __len - __half - 1;
+ while (__len > 0)
+ {
+ __half = __len >> 1;
+ __middle = __first;
+ std::advance(__middle, __half);
+ if (__val < *__middle)
+ __len = __half;
+ else
+ {
+ __first = __middle;
+ ++__first;
+ __len = __len - __half - 1;
+ }
}
- }
return __first;
}
@@ -2593,30 +2763,35 @@ namespace std
upper_bound(_ForwardIterator __first, _ForwardIterator __last,
const _Tp& __val, _Compare __comp)
{
- typedef typename iterator_traits<_ForwardIterator>::value_type _ValueType;
- typedef typename iterator_traits<_ForwardIterator>::difference_type _DistanceType;
+ typedef typename iterator_traits<_ForwardIterator>::value_type
+ _ValueType;
+ typedef typename iterator_traits<_ForwardIterator>::difference_type
+ _DistanceType;
// concept requirements
__glibcxx_function_requires(_ForwardIteratorConcept<_ForwardIterator>)
- __glibcxx_function_requires(_BinaryPredicateConcept<_Compare, _Tp, _ValueType>)
+ __glibcxx_function_requires(_BinaryPredicateConcept<_Compare,
+ _Tp, _ValueType>)
__glibcxx_requires_partitioned_pred(__first, __last, __val, __comp);
_DistanceType __len = std::distance(__first, __last);
_DistanceType __half;
_ForwardIterator __middle;
- while (__len > 0) {
- __half = __len >> 1;
- __middle = __first;
- std::advance(__middle, __half);
- if (__comp(__val, *__middle))
- __len = __half;
- else {
- __first = __middle;
- ++__first;
- __len = __len - __half - 1;
+ while (__len > 0)
+ {
+ __half = __len >> 1;
+ __middle = __first;
+ std::advance(__middle, __half);
+ if (__comp(__val, *__middle))
+ __len = __half;
+ else
+ {
+ __first = __middle;
+ ++__first;
+ __len = __len - __half - 1;
+ }
}
- }
return __first;
}
@@ -2634,27 +2809,30 @@ namespace std
{
if (__len1 == 0 || __len2 == 0)
return;
- if (__len1 + __len2 == 2) {
- if (*__middle < *__first)
- std::iter_swap(__first, __middle);
- return;
- }
+ if (__len1 + __len2 == 2)
+ {
+ if (*__middle < *__first)
+ std::iter_swap(__first, __middle);
+ return;
+ }
_BidirectionalIterator __first_cut = __first;
_BidirectionalIterator __second_cut = __middle;
_Distance __len11 = 0;
_Distance __len22 = 0;
- if (__len1 > __len2) {
- __len11 = __len1 / 2;
- std::advance(__first_cut, __len11);
- __second_cut = std::lower_bound(__middle, __last, *__first_cut);
- __len22 = std::distance(__middle, __second_cut);
- }
- else {
- __len22 = __len2 / 2;
- std::advance(__second_cut, __len22);
- __first_cut = std::upper_bound(__first, __middle, *__second_cut);
- __len11 = std::distance(__first, __first_cut);
- }
+ if (__len1 > __len2)
+ {
+ __len11 = __len1 / 2;
+ std::advance(__first_cut, __len11);
+ __second_cut = std::lower_bound(__middle, __last, *__first_cut);
+ __len22 = std::distance(__middle, __second_cut);
+ }
+ else
+ {
+ __len22 = __len2 / 2;
+ std::advance(__second_cut, __len22);
+ __first_cut = std::upper_bound(__first, __middle, *__second_cut);
+ __len11 = std::distance(__first, __first_cut);
+ }
std::rotate(__first_cut, __middle, __second_cut);
_BidirectionalIterator __new_middle = __first_cut;
std::advance(__new_middle, std::distance(__middle, __second_cut));
@@ -2669,7 +2847,8 @@ namespace std
* This is a helper function for the merge routines.
* @endif
*/
- template<typename _BidirectionalIterator, typename _Distance, typename _Compare>
+ template<typename _BidirectionalIterator, typename _Distance,
+ typename _Compare>
void
__merge_without_buffer(_BidirectionalIterator __first,
_BidirectionalIterator __middle,
@@ -2679,27 +2858,32 @@ namespace std
{
if (__len1 == 0 || __len2 == 0)
return;
- if (__len1 + __len2 == 2) {
- if (__comp(*__middle, *__first))
- std::iter_swap(__first, __middle);
- return;
- }
+ if (__len1 + __len2 == 2)
+ {
+ if (__comp(*__middle, *__first))
+ std::iter_swap(__first, __middle);
+ return;
+ }
_BidirectionalIterator __first_cut = __first;
_BidirectionalIterator __second_cut = __middle;
_Distance __len11 = 0;
_Distance __len22 = 0;
- if (__len1 > __len2) {
- __len11 = __len1 / 2;
- std::advance(__first_cut, __len11);
- __second_cut = std::lower_bound(__middle, __last, *__first_cut, __comp);
- __len22 = std::distance(__middle, __second_cut);
- }
- else {
- __len22 = __len2 / 2;
- std::advance(__second_cut, __len22);
- __first_cut = std::upper_bound(__first, __middle, *__second_cut, __comp);
- __len11 = std::distance(__first, __first_cut);
- }
+ if (__len1 > __len2)
+ {
+ __len11 = __len1 / 2;
+ std::advance(__first_cut, __len11);
+ __second_cut = std::lower_bound(__middle, __last, *__first_cut,
+ __comp);
+ __len22 = std::distance(__middle, __second_cut);
+ }
+ else
+ {
+ __len22 = __len2 / 2;
+ std::advance(__second_cut, __len22);
+ __first_cut = std::upper_bound(__first, __middle, *__second_cut,
+ __comp);
+ __len11 = std::distance(__first, __first_cut);
+ }
std::rotate(__first_cut, __middle, __second_cut);
_BidirectionalIterator __new_middle = __first_cut;
std::advance(__new_middle, std::distance(__middle, __second_cut));
@@ -2716,12 +2900,14 @@ namespace std
*/
template<typename _RandomAccessIterator>
void
- __inplace_stable_sort(_RandomAccessIterator __first, _RandomAccessIterator __last)
+ __inplace_stable_sort(_RandomAccessIterator __first,
+ _RandomAccessIterator __last)
{
- if (__last - __first < 15) {
- std::__insertion_sort(__first, __last);
- return;
- }
+ if (__last - __first < 15)
+ {
+ std::__insertion_sort(__first, __last);
+ return;
+ }
_RandomAccessIterator __middle = __first + (__last - __first) / 2;
std::__inplace_stable_sort(__first, __middle);
std::__inplace_stable_sort(__middle, __last);
@@ -2737,13 +2923,14 @@ namespace std
*/
template<typename _RandomAccessIterator, typename _Compare>
void
- __inplace_stable_sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
- _Compare __comp)
+ __inplace_stable_sort(_RandomAccessIterator __first,
+ _RandomAccessIterator __last, _Compare __comp)
{
- if (__last - __first < 15) {
- std::__insertion_sort(__first, __last, __comp);
- return;
- }
+ if (__last - __first < 15)
+ {
+ std::__insertion_sort(__first, __last, __comp);
+ return;
+ }
_RandomAccessIterator __middle = __first + (__last - __first) / 2;
std::__inplace_stable_sort(__first, __middle, __comp);
std::__inplace_stable_sort(__middle, __last, __comp);
@@ -2769,7 +2956,8 @@ namespace std
* elements in the two ranges, elements from the first range will always
* come before elements from the second.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _OutputIterator>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _OutputIterator>
_OutputIterator
merge(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _InputIterator2 __last2,
@@ -2788,18 +2976,22 @@ namespace std
__glibcxx_requires_sorted(__first1, __last1);
__glibcxx_requires_sorted(__first2, __last2);
- while (__first1 != __last1 && __first2 != __last2) {
- if (*__first2 < *__first1) {
- *__result = *__first2;
- ++__first2;
- }
- else {
- *__result = *__first1;
- ++__first1;
+ while (__first1 != __last1 && __first2 != __last2)
+ {
+ if (*__first2 < *__first1)
+ {
+ *__result = *__first2;
+ ++__first2;
+ }
+ else
+ {
+ *__result = *__first1;
+ ++__first1;
+ }
+ ++__result;
}
- ++__result;
- }
- return std::copy(__first2, __last2, std::copy(__first1, __last1, __result));
+ return std::copy(__first2, __last2, std::copy(__first1, __last1,
+ __result));
}
/**
@@ -2822,8 +3014,8 @@ namespace std
* The comparison function should have the same effects on ordering as
* the function used for the initial sort.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _OutputIterator,
- typename _Compare>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _OutputIterator, typename _Compare>
_OutputIterator
merge(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _InputIterator2 __last2,
@@ -2843,34 +3035,41 @@ namespace std
__glibcxx_requires_sorted_pred(__first1, __last1, __comp);
__glibcxx_requires_sorted_pred(__first2, __last2, __comp);
- while (__first1 != __last1 && __first2 != __last2) {
- if (__comp(*__first2, *__first1)) {
- *__result = *__first2;
- ++__first2;
- }
- else {
- *__result = *__first1;
- ++__first1;
+ while (__first1 != __last1 && __first2 != __last2)
+ {
+ if (__comp(*__first2, *__first1))
+ {
+ *__result = *__first2;
+ ++__first2;
+ }
+ else
+ {
+ *__result = *__first1;
+ ++__first1;
+ }
+ ++__result;
}
- ++__result;
- }
- return std::copy(__first2, __last2, std::copy(__first1, __last1, __result));
+ return std::copy(__first2, __last2, std::copy(__first1, __last1,
+ __result));
}
template<typename _RandomAccessIterator1, typename _RandomAccessIterator2,
typename _Distance>
void
- __merge_sort_loop(_RandomAccessIterator1 __first, _RandomAccessIterator1 __last,
- _RandomAccessIterator2 __result, _Distance __step_size)
- {
- _Distance __two_step = 2 * __step_size;
-
- while (__last - __first >= __two_step) {
- __result = std::merge(__first, __first + __step_size,
- __first + __step_size, __first + __two_step,
- __result);
- __first += __two_step;
- }
+ __merge_sort_loop(_RandomAccessIterator1 __first,
+ _RandomAccessIterator1 __last,
+ _RandomAccessIterator2 __result,
+ _Distance __step_size)
+ {
+ const _Distance __two_step = 2 * __step_size;
+
+ while (__last - __first >= __two_step)
+ {
+ __result = std::merge(__first, __first + __step_size,
+ __first + __step_size, __first + __two_step,
+ __result);
+ __first += __two_step;
+ }
__step_size = std::min(_Distance(__last - __first), __step_size);
std::merge(__first, __first + __step_size, __first + __step_size, __last,
@@ -2880,19 +3079,21 @@ namespace std
template<typename _RandomAccessIterator1, typename _RandomAccessIterator2,
typename _Distance, typename _Compare>
void
- __merge_sort_loop(_RandomAccessIterator1 __first, _RandomAccessIterator1 __last,
+ __merge_sort_loop(_RandomAccessIterator1 __first,
+ _RandomAccessIterator1 __last,
_RandomAccessIterator2 __result, _Distance __step_size,
_Compare __comp)
{
- _Distance __two_step = 2 * __step_size;
+ const _Distance __two_step = 2 * __step_size;
- while (__last - __first >= __two_step) {
- __result = std::merge(__first, __first + __step_size,
- __first + __step_size, __first + __two_step,
- __result,
- __comp);
- __first += __two_step;
- }
+ while (__last - __first >= __two_step)
+ {
+ __result = std::merge(__first, __first + __step_size,
+ __first + __step_size, __first + __two_step,
+ __result,
+ __comp);
+ __first += __two_step;
+ }
__step_size = std::min(_Distance(__last - __first), __step_size);
std::merge(__first, __first + __step_size,
@@ -2905,68 +3106,80 @@ namespace std
template<typename _RandomAccessIterator, typename _Distance>
void
- __chunk_insertion_sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
+ __chunk_insertion_sort(_RandomAccessIterator __first,
+ _RandomAccessIterator __last,
_Distance __chunk_size)
{
- while (__last - __first >= __chunk_size) {
- std::__insertion_sort(__first, __first + __chunk_size);
- __first += __chunk_size;
- }
+ while (__last - __first >= __chunk_size)
+ {
+ std::__insertion_sort(__first, __first + __chunk_size);
+ __first += __chunk_size;
+ }
std::__insertion_sort(__first, __last);
}
template<typename _RandomAccessIterator, typename _Distance, typename _Compare>
void
- __chunk_insertion_sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
+ __chunk_insertion_sort(_RandomAccessIterator __first,
+ _RandomAccessIterator __last,
_Distance __chunk_size, _Compare __comp)
{
- while (__last - __first >= __chunk_size) {
- std::__insertion_sort(__first, __first + __chunk_size, __comp);
- __first += __chunk_size;
- }
+ while (__last - __first >= __chunk_size)
+ {
+ std::__insertion_sort(__first, __first + __chunk_size, __comp);
+ __first += __chunk_size;
+ }
std::__insertion_sort(__first, __last, __comp);
}
template<typename _RandomAccessIterator, typename _Pointer>
void
- __merge_sort_with_buffer(_RandomAccessIterator __first, _RandomAccessIterator __last,
+ __merge_sort_with_buffer(_RandomAccessIterator __first,
+ _RandomAccessIterator __last,
_Pointer __buffer)
{
- typedef typename iterator_traits<_RandomAccessIterator>::difference_type _Distance;
+ typedef typename iterator_traits<_RandomAccessIterator>::difference_type
+ _Distance;
- _Distance __len = __last - __first;
- _Pointer __buffer_last = __buffer + __len;
+ const _Distance __len = __last - __first;
+ const _Pointer __buffer_last = __buffer + __len;
_Distance __step_size = _S_chunk_size;
std::__chunk_insertion_sort(__first, __last, __step_size);
- while (__step_size < __len) {
- std::__merge_sort_loop(__first, __last, __buffer, __step_size);
- __step_size *= 2;
- std::__merge_sort_loop(__buffer, __buffer_last, __first, __step_size);
- __step_size *= 2;
- }
+ while (__step_size < __len)
+ {
+ std::__merge_sort_loop(__first, __last, __buffer, __step_size);
+ __step_size *= 2;
+ std::__merge_sort_loop(__buffer, __buffer_last, __first, __step_size);
+ __step_size *= 2;
+ }
}
template<typename _RandomAccessIterator, typename _Pointer, typename _Compare>
void
- __merge_sort_with_buffer(_RandomAccessIterator __first, _RandomAccessIterator __last,
+ __merge_sort_with_buffer(_RandomAccessIterator __first,
+ _RandomAccessIterator __last,
_Pointer __buffer, _Compare __comp)
{
- typedef typename iterator_traits<_RandomAccessIterator>::difference_type _Distance;
+ typedef typename iterator_traits<_RandomAccessIterator>::difference_type
+ _Distance;
- _Distance __len = __last - __first;
- _Pointer __buffer_last = __buffer + __len;
+ const _Distance __len = __last - __first;
+ const _Pointer __buffer_last = __buffer + __len;
_Distance __step_size = _S_chunk_size;
std::__chunk_insertion_sort(__first, __last, __step_size, __comp);
- while (__step_size < __len) {
- std::__merge_sort_loop(__first, __last, __buffer, __step_size, __comp);
- __step_size *= 2;
- std::__merge_sort_loop(__buffer, __buffer_last, __first, __step_size, __comp);
- __step_size *= 2;
- }
+ while (__step_size < __len)
+ {
+ std::__merge_sort_loop(__first, __last, __buffer,
+ __step_size, __comp);
+ __step_size *= 2;
+ std::__merge_sort_loop(__buffer, __buffer_last, __first,
+ __step_size, __comp);
+ __step_size *= 2;
+ }
}
/**
@@ -2977,8 +3190,10 @@ namespace std
template<typename _BidirectionalIterator1, typename _BidirectionalIterator2,
typename _BidirectionalIterator3>
_BidirectionalIterator3
- __merge_backward(_BidirectionalIterator1 __first1, _BidirectionalIterator1 __last1,
- _BidirectionalIterator2 __first2, _BidirectionalIterator2 __last2,
+ __merge_backward(_BidirectionalIterator1 __first1,
+ _BidirectionalIterator1 __last1,
+ _BidirectionalIterator2 __first2,
+ _BidirectionalIterator2 __last2,
_BidirectionalIterator3 __result)
{
if (__first1 == __last1)
@@ -2987,20 +3202,23 @@ namespace std
return std::copy_backward(__first1, __last1, __result);
--__last1;
--__last2;
- while (true) {
- if (*__last2 < *__last1) {
- *--__result = *__last1;
- if (__first1 == __last1)
- return std::copy_backward(__first2, ++__last2, __result);
- --__last1;
- }
- else {
- *--__result = *__last2;
- if (__first2 == __last2)
- return std::copy_backward(__first1, ++__last1, __result);
- --__last2;
+ while (true)
+ {
+ if (*__last2 < *__last1)
+ {
+ *--__result = *__last1;
+ if (__first1 == __last1)
+ return std::copy_backward(__first2, ++__last2, __result);
+ --__last1;
+ }
+ else
+ {
+ *--__result = *__last2;
+ if (__first2 == __last2)
+ return std::copy_backward(__first1, ++__last1, __result);
+ --__last2;
+ }
}
- }
}
/**
@@ -3011,8 +3229,10 @@ namespace std
template<typename _BidirectionalIterator1, typename _BidirectionalIterator2,
typename _BidirectionalIterator3, typename _Compare>
_BidirectionalIterator3
- __merge_backward(_BidirectionalIterator1 __first1, _BidirectionalIterator1 __last1,
- _BidirectionalIterator2 __first2, _BidirectionalIterator2 __last2,
+ __merge_backward(_BidirectionalIterator1 __first1,
+ _BidirectionalIterator1 __last1,
+ _BidirectionalIterator2 __first2,
+ _BidirectionalIterator2 __last2,
_BidirectionalIterator3 __result,
_Compare __comp)
{
@@ -3022,20 +3242,23 @@ namespace std
return std::copy_backward(__first1, __last1, __result);
--__last1;
--__last2;
- while (true) {
- if (__comp(*__last2, *__last1)) {
- *--__result = *__last1;
- if (__first1 == __last1)
- return std::copy_backward(__first2, ++__last2, __result);
- --__last1;
- }
- else {
- *--__result = *__last2;
- if (__first2 == __last2)
- return std::copy_backward(__first1, ++__last1, __result);
- --__last2;
+ while (true)
+ {
+ if (__comp(*__last2, *__last1))
+ {
+ *--__result = *__last1;
+ if (__first1 == __last1)
+ return std::copy_backward(__first2, ++__last2, __result);
+ --__last1;
+ }
+ else
+ {
+ *--__result = *__last2;
+ if (__first2 == __last2)
+ return std::copy_backward(__first1, ++__last1, __result);
+ --__last2;
+ }
}
- }
}
/**
@@ -3054,21 +3277,24 @@ namespace std
_Distance __buffer_size)
{
_BidirectionalIterator2 __buffer_end;
- if (__len1 > __len2 && __len2 <= __buffer_size) {
- __buffer_end = std::copy(__middle, __last, __buffer);
- std::copy_backward(__first, __middle, __last);
- return std::copy(__buffer, __buffer_end, __first);
- }
- else if (__len1 <= __buffer_size) {
- __buffer_end = std::copy(__first, __middle, __buffer);
- std::copy(__middle, __last, __first);
- return std::copy_backward(__buffer, __buffer_end, __last);
- }
- else {
- std::rotate(__first, __middle, __last);
- std::advance(__first, std::distance(__middle, __last));
- return __first;
- }
+ if (__len1 > __len2 && __len2 <= __buffer_size)
+ {
+ __buffer_end = std::copy(__middle, __last, __buffer);
+ std::copy_backward(__first, __middle, __last);
+ return std::copy(__buffer, __buffer_end, __first);
+ }
+ else if (__len1 <= __buffer_size)
+ {
+ __buffer_end = std::copy(__first, __middle, __buffer);
+ std::copy(__middle, __last, __first);
+ return std::copy_backward(__buffer, __buffer_end, __last);
+ }
+ else
+ {
+ std::rotate(__first, __middle, __last);
+ std::advance(__first, std::distance(__middle, __last));
+ return __first;
+ }
}
/**
@@ -3076,7 +3302,8 @@ namespace std
* This is a helper function for the merge routines.
* @endif
*/
- template<typename _BidirectionalIterator, typename _Distance, typename _Pointer>
+ template<typename _BidirectionalIterator, typename _Distance,
+ typename _Pointer>
void
__merge_adaptive(_BidirectionalIterator __first,
_BidirectionalIterator __middle,
@@ -3084,40 +3311,49 @@ namespace std
_Distance __len1, _Distance __len2,
_Pointer __buffer, _Distance __buffer_size)
{
- if (__len1 <= __len2 && __len1 <= __buffer_size) {
- _Pointer __buffer_end = std::copy(__first, __middle, __buffer);
- std::merge(__buffer, __buffer_end, __middle, __last, __first);
- }
- else if (__len2 <= __buffer_size) {
- _Pointer __buffer_end = std::copy(__middle, __last, __buffer);
- std::__merge_backward(__first, __middle, __buffer, __buffer_end, __last);
- }
- else {
- _BidirectionalIterator __first_cut = __first;
- _BidirectionalIterator __second_cut = __middle;
- _Distance __len11 = 0;
- _Distance __len22 = 0;
- if (__len1 > __len2) {
- __len11 = __len1 / 2;
- std::advance(__first_cut, __len11);
- __second_cut = std::lower_bound(__middle, __last, *__first_cut);
- __len22 = std::distance(__middle, __second_cut);
+ if (__len1 <= __len2 && __len1 <= __buffer_size)
+ {
+ _Pointer __buffer_end = std::copy(__first, __middle, __buffer);
+ std::merge(__buffer, __buffer_end, __middle, __last, __first);
+ }
+ else if (__len2 <= __buffer_size)
+ {
+ _Pointer __buffer_end = std::copy(__middle, __last, __buffer);
+ std::__merge_backward(__first, __middle, __buffer,
+ __buffer_end, __last);
+ }
+ else
+ {
+ _BidirectionalIterator __first_cut = __first;
+ _BidirectionalIterator __second_cut = __middle;
+ _Distance __len11 = 0;
+ _Distance __len22 = 0;
+ if (__len1 > __len2)
+ {
+ __len11 = __len1 / 2;
+ std::advance(__first_cut, __len11);
+ __second_cut = std::lower_bound(__middle, __last,
+ *__first_cut);
+ __len22 = std::distance(__middle, __second_cut);
}
- else {
- __len22 = __len2 / 2;
- std::advance(__second_cut, __len22);
- __first_cut = std::upper_bound(__first, __middle, *__second_cut);
- __len11 = std::distance(__first, __first_cut);
+ else
+ {
+ __len22 = __len2 / 2;
+ std::advance(__second_cut, __len22);
+ __first_cut = std::upper_bound(__first, __middle,
+ *__second_cut);
+ __len11 = std::distance(__first, __first_cut);
}
- _BidirectionalIterator __new_middle =
- std::__rotate_adaptive(__first_cut, __middle, __second_cut,
- __len1 - __len11, __len22, __buffer,
- __buffer_size);
- std::__merge_adaptive(__first, __first_cut, __new_middle, __len11,
- __len22, __buffer, __buffer_size);
- std::__merge_adaptive(__new_middle, __second_cut, __last, __len1 - __len11,
- __len2 - __len22, __buffer, __buffer_size);
- }
+ _BidirectionalIterator __new_middle =
+ std::__rotate_adaptive(__first_cut, __middle, __second_cut,
+ __len1 - __len11, __len22, __buffer,
+ __buffer_size);
+ std::__merge_adaptive(__first, __first_cut, __new_middle, __len11,
+ __len22, __buffer, __buffer_size);
+ std::__merge_adaptive(__new_middle, __second_cut, __last,
+ __len1 - __len11,
+ __len2 - __len22, __buffer, __buffer_size);
+ }
}
/**
@@ -3135,41 +3371,50 @@ namespace std
_Pointer __buffer, _Distance __buffer_size,
_Compare __comp)
{
- if (__len1 <= __len2 && __len1 <= __buffer_size) {
- _Pointer __buffer_end = std::copy(__first, __middle, __buffer);
- std::merge(__buffer, __buffer_end, __middle, __last, __first, __comp);
- }
- else if (__len2 <= __buffer_size) {
- _Pointer __buffer_end = std::copy(__middle, __last, __buffer);
- std::__merge_backward(__first, __middle, __buffer, __buffer_end, __last,
- __comp);
- }
- else {
- _BidirectionalIterator __first_cut = __first;
- _BidirectionalIterator __second_cut = __middle;
- _Distance __len11 = 0;
- _Distance __len22 = 0;
- if (__len1 > __len2) {
- __len11 = __len1 / 2;
- std::advance(__first_cut, __len11);
- __second_cut = std::lower_bound(__middle, __last, *__first_cut, __comp);
- __len22 = std::distance(__middle, __second_cut);
+ if (__len1 <= __len2 && __len1 <= __buffer_size)
+ {
+ _Pointer __buffer_end = std::copy(__first, __middle, __buffer);
+ std::merge(__buffer, __buffer_end, __middle, __last, __first, __comp);
+ }
+ else if (__len2 <= __buffer_size)
+ {
+ _Pointer __buffer_end = std::copy(__middle, __last, __buffer);
+ std::__merge_backward(__first, __middle, __buffer, __buffer_end,
+ __last, __comp);
+ }
+ else
+ {
+ _BidirectionalIterator __first_cut = __first;
+ _BidirectionalIterator __second_cut = __middle;
+ _Distance __len11 = 0;
+ _Distance __len22 = 0;
+ if (__len1 > __len2)
+ {
+ __len11 = __len1 / 2;
+ std::advance(__first_cut, __len11);
+ __second_cut = std::lower_bound(__middle, __last, *__first_cut,
+ __comp);
+ __len22 = std::distance(__middle, __second_cut);
}
- else {
- __len22 = __len2 / 2;
- std::advance(__second_cut, __len22);
- __first_cut = std::upper_bound(__first, __middle, *__second_cut, __comp);
- __len11 = std::distance(__first, __first_cut);
+ else
+ {
+ __len22 = __len2 / 2;
+ std::advance(__second_cut, __len22);
+ __first_cut = std::upper_bound(__first, __middle, *__second_cut,
+ __comp);
+ __len11 = std::distance(__first, __first_cut);
}
- _BidirectionalIterator __new_middle =
- std::__rotate_adaptive(__first_cut, __middle, __second_cut,
- __len1 - __len11, __len22, __buffer,
- __buffer_size);
- std::__merge_adaptive(__first, __first_cut, __new_middle, __len11,
- __len22, __buffer, __buffer_size, __comp);
- std::__merge_adaptive(__new_middle, __second_cut, __last, __len1 - __len11,
- __len2 - __len22, __buffer, __buffer_size, __comp);
- }
+ _BidirectionalIterator __new_middle =
+ std::__rotate_adaptive(__first_cut, __middle, __second_cut,
+ __len1 - __len11, __len22, __buffer,
+ __buffer_size);
+ std::__merge_adaptive(__first, __first_cut, __new_middle, __len11,
+ __len22, __buffer, __buffer_size, __comp);
+ std::__merge_adaptive(__new_middle, __second_cut, __last,
+ __len1 - __len11,
+ __len2 - __len22, __buffer,
+ __buffer_size, __comp);
+ }
}
/**
@@ -3213,7 +3458,8 @@ namespace std
_DistanceType __len1 = std::distance(__first, __middle);
_DistanceType __len2 = std::distance(__middle, __last);
- _Temporary_buffer<_BidirectionalIterator, _ValueType> __buf(__first, __last);
+ _Temporary_buffer<_BidirectionalIterator, _ValueType> __buf(__first,
+ __last);
if (__buf.begin() == 0)
std::__merge_without_buffer(__first, __middle, __last, __len1, __len2);
else
@@ -3265,58 +3511,73 @@ namespace std
if (__first == __middle || __middle == __last)
return;
- _DistanceType __len1 = std::distance(__first, __middle);
- _DistanceType __len2 = std::distance(__middle, __last);
+ const _DistanceType __len1 = std::distance(__first, __middle);
+ const _DistanceType __len2 = std::distance(__middle, __last);
- _Temporary_buffer<_BidirectionalIterator, _ValueType> __buf(__first, __last);
+ _Temporary_buffer<_BidirectionalIterator, _ValueType> __buf(__first,
+ __last);
if (__buf.begin() == 0)
- std::__merge_without_buffer(__first, __middle, __last, __len1, __len2, __comp);
+ std::__merge_without_buffer(__first, __middle, __last, __len1,
+ __len2, __comp);
else
std::__merge_adaptive(__first, __middle, __last, __len1, __len2,
__buf.begin(), _DistanceType(__buf.size()),
__comp);
}
- template<typename _RandomAccessIterator, typename _Pointer, typename _Distance>
+ template<typename _RandomAccessIterator, typename _Pointer,
+ typename _Distance>
void
- __stable_sort_adaptive(_RandomAccessIterator __first, _RandomAccessIterator __last,
+ __stable_sort_adaptive(_RandomAccessIterator __first,
+ _RandomAccessIterator __last,
_Pointer __buffer, _Distance __buffer_size)
{
- _Distance __len = (__last - __first + 1) / 2;
- _RandomAccessIterator __middle = __first + __len;
- if (__len > __buffer_size) {
- std::__stable_sort_adaptive(__first, __middle, __buffer, __buffer_size);
- std::__stable_sort_adaptive(__middle, __last, __buffer, __buffer_size);
- }
- else {
- std::__merge_sort_with_buffer(__first, __middle, __buffer);
- std::__merge_sort_with_buffer(__middle, __last, __buffer);
- }
- std::__merge_adaptive(__first, __middle, __last, _Distance(__middle - __first),
- _Distance(__last - __middle), __buffer, __buffer_size);
- }
-
- template<typename _RandomAccessIterator, typename _Pointer, typename _Distance,
- typename _Compare>
+ const _Distance __len = (__last - __first + 1) / 2;
+ const _RandomAccessIterator __middle = __first + __len;
+ if (__len > __buffer_size)
+ {
+ std::__stable_sort_adaptive(__first, __middle,
+ __buffer, __buffer_size);
+ std::__stable_sort_adaptive(__middle, __last,
+ __buffer, __buffer_size);
+ }
+ else
+ {
+ std::__merge_sort_with_buffer(__first, __middle, __buffer);
+ std::__merge_sort_with_buffer(__middle, __last, __buffer);
+ }
+ std::__merge_adaptive(__first, __middle, __last,
+ _Distance(__middle - __first),
+ _Distance(__last - __middle),
+ __buffer, __buffer_size);
+ }
+
+ template<typename _RandomAccessIterator, typename _Pointer,
+ typename _Distance, typename _Compare>
void
- __stable_sort_adaptive(_RandomAccessIterator __first, _RandomAccessIterator __last,
+ __stable_sort_adaptive(_RandomAccessIterator __first,
+ _RandomAccessIterator __last,
_Pointer __buffer, _Distance __buffer_size,
_Compare __comp)
{
- _Distance __len = (__last - __first + 1) / 2;
- _RandomAccessIterator __middle = __first + __len;
- if (__len > __buffer_size) {
- std::__stable_sort_adaptive(__first, __middle, __buffer, __buffer_size,
- __comp);
- std::__stable_sort_adaptive(__middle, __last, __buffer, __buffer_size,
- __comp);
- }
- else {
- std::__merge_sort_with_buffer(__first, __middle, __buffer, __comp);
- std::__merge_sort_with_buffer(__middle, __last, __buffer, __comp);
- }
- std::__merge_adaptive(__first, __middle, __last, _Distance(__middle - __first),
- _Distance(__last - __middle), __buffer, __buffer_size,
+ const _Distance __len = (__last - __first + 1) / 2;
+ const _RandomAccessIterator __middle = __first + __len;
+ if (__len > __buffer_size)
+ {
+ std::__stable_sort_adaptive(__first, __middle, __buffer,
+ __buffer_size, __comp);
+ std::__stable_sort_adaptive(__middle, __last, __buffer,
+ __buffer_size, __comp);
+ }
+ else
+ {
+ std::__merge_sort_with_buffer(__first, __middle, __buffer, __comp);
+ std::__merge_sort_with_buffer(__middle, __last, __buffer, __comp);
+ }
+ std::__merge_adaptive(__first, __middle, __last,
+ _Distance(__middle - __first),
+ _Distance(__last - __middle),
+ __buffer, __buffer_size,
__comp);
}
@@ -3340,8 +3601,10 @@ namespace std
inline void
stable_sort(_RandomAccessIterator __first, _RandomAccessIterator __last)
{
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
- typedef typename iterator_traits<_RandomAccessIterator>::difference_type _DistanceType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::difference_type
+ _DistanceType;
// concept requirements
__glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<
@@ -3349,11 +3612,13 @@ namespace std
__glibcxx_function_requires(_LessThanComparableConcept<_ValueType>)
__glibcxx_requires_valid_range(__first, __last);
- _Temporary_buffer<_RandomAccessIterator, _ValueType> buf(__first, __last);
+ _Temporary_buffer<_RandomAccessIterator, _ValueType>
+ buf(__first, __last);
if (buf.begin() == 0)
std::__inplace_stable_sort(__first, __last);
else
- std::__stable_sort_adaptive(__first, __last, buf.begin(), _DistanceType(buf.size()));
+ std::__stable_sort_adaptive(__first, __last, buf.begin(),
+ _DistanceType(buf.size()));
}
/**
@@ -3375,24 +3640,28 @@ namespace std
*/
template<typename _RandomAccessIterator, typename _Compare>
inline void
- stable_sort(_RandomAccessIterator __first, _RandomAccessIterator __last, _Compare __comp)
+ stable_sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
+ _Compare __comp)
{
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
- typedef typename iterator_traits<_RandomAccessIterator>::difference_type _DistanceType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::difference_type
+ _DistanceType;
// concept requirements
__glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<
_RandomAccessIterator>)
__glibcxx_function_requires(_BinaryPredicateConcept<_Compare,
- _ValueType, _ValueType>)
+ _ValueType,
+ _ValueType>)
__glibcxx_requires_valid_range(__first, __last);
_Temporary_buffer<_RandomAccessIterator, _ValueType> buf(__first, __last);
if (buf.begin() == 0)
std::__inplace_stable_sort(__first, __last, __comp);
else
- std::__stable_sort_adaptive(__first, __last, buf.begin(), _DistanceType(buf.size()),
- __comp);
+ std::__stable_sort_adaptive(__first, __last, buf.begin(),
+ _DistanceType(buf.size()), __comp);
}
/**
@@ -3404,7 +3673,7 @@ namespace std
*
* Rearranges the elements in the range @p [first,last) so that @p *nth
* is the same element that would have been in that position had the
- * whole sequence been sorted.
+ * whole sequence been sorted.
* whole sequence been sorted. The elements either side of @p *nth are
* not completely sorted, but for any iterator @i in the range
* @p [first,nth) and any iterator @j in the range @p [nth,last) it
@@ -3416,25 +3685,32 @@ namespace std
_RandomAccessIterator __nth,
_RandomAccessIterator __last)
{
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
// concept requirements
- __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<_RandomAccessIterator>)
+ __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<
+ _RandomAccessIterator>)
__glibcxx_function_requires(_LessThanComparableConcept<_ValueType>)
__glibcxx_requires_valid_range(__first, __nth);
__glibcxx_requires_valid_range(__nth, __last);
- while (__last - __first > 3) {
- _RandomAccessIterator __cut =
- std::__unguarded_partition(__first, __last,
- _ValueType(std::__median(*__first,
- *(__first + (__last - __first)/2),
- *(__last - 1))));
- if (__cut <= __nth)
- __first = __cut;
- else
- __last = __cut;
- }
+ while (__last - __first > 3)
+ {
+ _RandomAccessIterator __cut =
+ std::__unguarded_partition(__first, __last,
+ _ValueType(std::__median(*__first,
+ *(__first
+ + (__last
+ - __first)
+ / 2),
+ *(__last
+ - 1))));
+ if (__cut <= __nth)
+ __first = __cut;
+ else
+ __last = __cut;
+ }
std::__insertion_sort(__first, __last);
}
@@ -3461,27 +3737,33 @@ namespace std
_RandomAccessIterator __last,
_Compare __comp)
{
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
// concept requirements
- __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<_RandomAccessIterator>)
+ __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<
+ _RandomAccessIterator>)
__glibcxx_function_requires(_BinaryPredicateConcept<_Compare,
_ValueType, _ValueType>)
__glibcxx_requires_valid_range(__first, __nth);
__glibcxx_requires_valid_range(__nth, __last);
- while (__last - __first > 3) {
- _RandomAccessIterator __cut =
- std::__unguarded_partition(__first, __last,
- _ValueType(std::__median(*__first,
- *(__first + (__last - __first)/2),
- *(__last - 1),
+ while (__last - __first > 3)
+ {
+ _RandomAccessIterator __cut =
+ std::__unguarded_partition(__first, __last,
+ _ValueType(std::__median(*__first,
+ *(__first
+ + (__last
+ - __first)
+ / 2),
+ *(__last - 1),
__comp)), __comp);
- if (__cut <= __nth)
- __first = __cut;
- else
- __last = __cut;
- }
+ if (__cut <= __nth)
+ __first = __cut;
+ else
+ __last = __cut;
+ }
std::__insertion_sort(__first, __last, __comp);
}
@@ -3503,10 +3785,13 @@ namespace std
*/
template<typename _ForwardIterator, typename _Tp>
pair<_ForwardIterator, _ForwardIterator>
- equal_range(_ForwardIterator __first, _ForwardIterator __last, const _Tp& __val)
+ equal_range(_ForwardIterator __first, _ForwardIterator __last,
+ const _Tp& __val)
{
- typedef typename iterator_traits<_ForwardIterator>::value_type _ValueType;
- typedef typename iterator_traits<_ForwardIterator>::difference_type _DistanceType;
+ typedef typename iterator_traits<_ForwardIterator>::value_type
+ _ValueType;
+ typedef typename iterator_traits<_ForwardIterator>::difference_type
+ _DistanceType;
// concept requirements
// See comments on lower_bound.
@@ -3519,24 +3804,27 @@ namespace std
_DistanceType __half;
_ForwardIterator __middle, __left, __right;
- while (__len > 0) {
- __half = __len >> 1;
- __middle = __first;
- std::advance(__middle, __half);
- if (*__middle < __val) {
- __first = __middle;
- ++__first;
- __len = __len - __half - 1;
- }
- else if (__val < *__middle)
- __len = __half;
- else {
- __left = std::lower_bound(__first, __middle, __val);
- std::advance(__first, __len);
- __right = std::upper_bound(++__middle, __first, __val);
- return pair<_ForwardIterator, _ForwardIterator>(__left, __right);
+ while (__len > 0)
+ {
+ __half = __len >> 1;
+ __middle = __first;
+ std::advance(__middle, __half);
+ if (*__middle < __val)
+ {
+ __first = __middle;
+ ++__first;
+ __len = __len - __half - 1;
+ }
+ else if (__val < *__middle)
+ __len = __half;
+ else
+ {
+ __left = std::lower_bound(__first, __middle, __val);
+ std::advance(__first, __len);
+ __right = std::upper_bound(++__middle, __first, __val);
+ return pair<_ForwardIterator, _ForwardIterator>(__left, __right);
+ }
}
- }
return pair<_ForwardIterator, _ForwardIterator>(__first, __first);
}
@@ -3559,40 +3847,48 @@ namespace std
*/
template<typename _ForwardIterator, typename _Tp, typename _Compare>
pair<_ForwardIterator, _ForwardIterator>
- equal_range(_ForwardIterator __first, _ForwardIterator __last, const _Tp& __val,
+ equal_range(_ForwardIterator __first, _ForwardIterator __last,
+ const _Tp& __val,
_Compare __comp)
{
- typedef typename iterator_traits<_ForwardIterator>::value_type _ValueType;
- typedef typename iterator_traits<_ForwardIterator>::difference_type _DistanceType;
+ typedef typename iterator_traits<_ForwardIterator>::value_type
+ _ValueType;
+ typedef typename iterator_traits<_ForwardIterator>::difference_type
+ _DistanceType;
// concept requirements
__glibcxx_function_requires(_ForwardIteratorConcept<_ForwardIterator>)
- __glibcxx_function_requires(_BinaryPredicateConcept<_Compare, _ValueType, _Tp>)
- __glibcxx_function_requires(_BinaryPredicateConcept<_Compare, _Tp, _ValueType>)
+ __glibcxx_function_requires(_BinaryPredicateConcept<_Compare,
+ _ValueType, _Tp>)
+ __glibcxx_function_requires(_BinaryPredicateConcept<_Compare,
+ _Tp, _ValueType>)
__glibcxx_requires_partitioned_pred(__first, __last, __val, __comp);
_DistanceType __len = std::distance(__first, __last);
_DistanceType __half;
_ForwardIterator __middle, __left, __right;
- while (__len > 0) {
- __half = __len >> 1;
- __middle = __first;
- std::advance(__middle, __half);
- if (__comp(*__middle, __val)) {
- __first = __middle;
- ++__first;
- __len = __len - __half - 1;
- }
- else if (__comp(__val, *__middle))
- __len = __half;
- else {
- __left = std::lower_bound(__first, __middle, __val, __comp);
- std::advance(__first, __len);
- __right = std::upper_bound(++__middle, __first, __val, __comp);
- return pair<_ForwardIterator, _ForwardIterator>(__left, __right);
+ while (__len > 0)
+ {
+ __half = __len >> 1;
+ __middle = __first;
+ std::advance(__middle, __half);
+ if (__comp(*__middle, __val))
+ {
+ __first = __middle;
+ ++__first;
+ __len = __len - __half - 1;
+ }
+ else if (__comp(__val, *__middle))
+ __len = __half;
+ else
+ {
+ __left = std::lower_bound(__first, __middle, __val, __comp);
+ std::advance(__first, __len);
+ __right = std::upper_bound(++__middle, __first, __val, __comp);
+ return pair<_ForwardIterator, _ForwardIterator>(__left, __right);
+ }
}
- }
return pair<_ForwardIterator, _ForwardIterator>(__first, __first);
}
@@ -3723,7 +4019,8 @@ namespace std
* in [first2,last2) is not found before the search iterator reaches @a
* last2, false is returned.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _Compare>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _Compare>
bool
includes(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _InputIterator2 __last2, _Compare __comp)
@@ -3768,7 +4065,8 @@ namespace std
* both ranges advance. The output range may not overlap either input
* range.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _OutputIterator>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _OutputIterator>
_OutputIterator
set_union(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _InputIterator2 __last2,
@@ -3787,23 +4085,28 @@ namespace std
__glibcxx_requires_sorted(__first1, __last1);
__glibcxx_requires_sorted(__first2, __last2);
- while (__first1 != __last1 && __first2 != __last2) {
- if (*__first1 < *__first2) {
- *__result = *__first1;
- ++__first1;
- }
- else if (*__first2 < *__first1) {
- *__result = *__first2;
- ++__first2;
- }
- else {
- *__result = *__first1;
- ++__first1;
- ++__first2;
+ while (__first1 != __last1 && __first2 != __last2)
+ {
+ if (*__first1 < *__first2)
+ {
+ *__result = *__first1;
+ ++__first1;
+ }
+ else if (*__first2 < *__first1)
+ {
+ *__result = *__first2;
+ ++__first2;
+ }
+ else
+ {
+ *__result = *__first1;
+ ++__first1;
+ ++__first2;
+ }
+ ++__result;
}
- ++__result;
- }
- return std::copy(__first2, __last2, std::copy(__first1, __last1, __result));
+ return std::copy(__first2, __last2, std::copy(__first1, __last1,
+ __result));
}
/**
@@ -3824,8 +4127,8 @@ namespace std
* ranges, the element from the first range is copied and both ranges
* advance. The output range may not overlap either input range.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _OutputIterator,
- typename _Compare>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _OutputIterator, typename _Compare>
_OutputIterator
set_union(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _InputIterator2 __last2,
@@ -3845,23 +4148,28 @@ namespace std
__glibcxx_requires_sorted_pred(__first1, __last1, __comp);
__glibcxx_requires_sorted_pred(__first2, __last2, __comp);
- while (__first1 != __last1 && __first2 != __last2) {
- if (__comp(*__first1, *__first2)) {
- *__result = *__first1;
- ++__first1;
- }
- else if (__comp(*__first2, *__first1)) {
- *__result = *__first2;
- ++__first2;
- }
- else {
- *__result = *__first1;
- ++__first1;
- ++__first2;
+ while (__first1 != __last1 && __first2 != __last2)
+ {
+ if (__comp(*__first1, *__first2))
+ {
+ *__result = *__first1;
+ ++__first1;
+ }
+ else if (__comp(*__first2, *__first1))
+ {
+ *__result = *__first2;
+ ++__first2;
+ }
+ else
+ {
+ *__result = *__first1;
+ ++__first1;
+ ++__first2;
+ }
+ ++__result;
}
- ++__result;
- }
- return std::copy(__first2, __last2, std::copy(__first1, __last1, __result));
+ return std::copy(__first2, __last2, std::copy(__first1, __last1,
+ __result));
}
/**
@@ -3880,7 +4188,8 @@ namespace std
* element from the first range is copied and both ranges advance. The
* output range may not overlap either input range.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _OutputIterator>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _OutputIterator>
_OutputIterator
set_intersection(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _InputIterator2 __last2,
@@ -3904,18 +4213,19 @@ namespace std
++__first1;
else if (*__first2 < *__first1)
++__first2;
- else {
- *__result = *__first1;
- ++__first1;
- ++__first2;
- ++__result;
- }
+ else
+ {
+ *__result = *__first1;
+ ++__first1;
+ ++__first2;
+ ++__result;
+ }
return __result;
}
/**
* @brief Return the intersection of two sorted ranges using comparison
- * functor.
+ * functor.
* @param first1 Start of first range.
* @param last1 End of first range.
* @param first2 Start of second range.
@@ -3932,8 +4242,8 @@ namespace std
* first range is copied and both ranges advance. The output range may not
* overlap either input range.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _OutputIterator,
- typename _Compare>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _OutputIterator, typename _Compare>
_OutputIterator
set_intersection(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _InputIterator2 __last2,
@@ -3958,12 +4268,13 @@ namespace std
++__first1;
else if (__comp(*__first2, *__first1))
++__first2;
- else {
- *__result = *__first1;
- ++__first1;
- ++__first2;
- ++__result;
- }
+ else
+ {
+ *__result = *__first1;
+ ++__first1;
+ ++__first2;
+ ++__result;
+ }
return __result;
}
@@ -3985,7 +4296,8 @@ namespace std
* contained in both ranges, no elements are copied and both ranges
* advance. The output range may not overlap either input range.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _OutputIterator>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _OutputIterator>
_OutputIterator
set_difference(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _InputIterator2 __last2,
@@ -4005,17 +4317,19 @@ namespace std
__glibcxx_requires_sorted(__first2, __last2);
while (__first1 != __last1 && __first2 != __last2)
- if (*__first1 < *__first2) {
- *__result = *__first1;
- ++__first1;
- ++__result;
- }
+ if (*__first1 < *__first2)
+ {
+ *__result = *__first1;
+ ++__first1;
+ ++__result;
+ }
else if (*__first2 < *__first1)
++__first2;
- else {
- ++__first1;
- ++__first2;
- }
+ else
+ {
+ ++__first1;
+ ++__first2;
+ }
return std::copy(__first1, __last1, __result);
}
@@ -4040,8 +4354,8 @@ namespace std
* elements are copied and both ranges advance. The output range may not
* overlap either input range.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _OutputIterator,
- typename _Compare>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _OutputIterator, typename _Compare>
_OutputIterator
set_difference(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _InputIterator2 __last2,
@@ -4062,17 +4376,19 @@ namespace std
__glibcxx_requires_sorted_pred(__first2, __last2, __comp);
while (__first1 != __last1 && __first2 != __last2)
- if (__comp(*__first1, *__first2)) {
- *__result = *__first1;
- ++__first1;
- ++__result;
- }
+ if (__comp(*__first1, *__first2))
+ {
+ *__result = *__first1;
+ ++__first1;
+ ++__result;
+ }
else if (__comp(*__first2, *__first1))
++__first2;
- else {
- ++__first1;
- ++__first2;
- }
+ else
+ {
+ ++__first1;
+ ++__first2;
+ }
return std::copy(__first1, __last1, __result);
}
@@ -4092,7 +4408,8 @@ namespace std
* element is contained in both ranges, no elements are copied and both
* ranges advance. The output range may not overlap either input range.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _OutputIterator>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _OutputIterator>
_OutputIterator
set_symmetric_difference(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _InputIterator2 __last2,
@@ -4112,21 +4429,25 @@ namespace std
__glibcxx_requires_sorted(__first2, __last2);
while (__first1 != __last1 && __first2 != __last2)
- if (*__first1 < *__first2) {
- *__result = *__first1;
- ++__first1;
- ++__result;
- }
- else if (*__first2 < *__first1) {
- *__result = *__first2;
- ++__first2;
- ++__result;
- }
- else {
- ++__first1;
- ++__first2;
- }
- return std::copy(__first2, __last2, std::copy(__first1, __last1, __result));
+ if (*__first1 < *__first2)
+ {
+ *__result = *__first1;
+ ++__first1;
+ ++__result;
+ }
+ else if (*__first2 < *__first1)
+ {
+ *__result = *__first2;
+ ++__first2;
+ ++__result;
+ }
+ else
+ {
+ ++__first1;
+ ++__first2;
+ }
+ return std::copy(__first2, __last2, std::copy(__first1,
+ __last1, __result));
}
/**
@@ -4148,8 +4469,8 @@ namespace std
* to @a comp, no elements are copied and both ranges advance. The output
* range may not overlap either input range.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _OutputIterator,
- typename _Compare>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _OutputIterator, typename _Compare>
_OutputIterator
set_symmetric_difference(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _InputIterator2 __last2,
@@ -4171,21 +4492,25 @@ namespace std
__glibcxx_requires_sorted_pred(__first2, __last2, __comp);
while (__first1 != __last1 && __first2 != __last2)
- if (__comp(*__first1, *__first2)) {
- *__result = *__first1;
- ++__first1;
- ++__result;
- }
- else if (__comp(*__first2, *__first1)) {
- *__result = *__first2;
- ++__first2;
- ++__result;
- }
- else {
- ++__first1;
- ++__first2;
- }
- return std::copy(__first2, __last2, std::copy(__first1, __last1, __result));
+ if (__comp(*__first1, *__first2))
+ {
+ *__result = *__first1;
+ ++__first1;
+ ++__result;
+ }
+ else if (__comp(*__first2, *__first1))
+ {
+ *__result = *__first2;
+ ++__first2;
+ ++__result;
+ }
+ else
+ {
+ ++__first1;
+ ++__first2;
+ }
+ return std::copy(__first2, __last2, std::copy(__first1,
+ __last1, __result));
}
// min_element and max_element, with and without an explicitly supplied
@@ -4207,7 +4532,8 @@ namespace std
typename iterator_traits<_ForwardIterator>::value_type>)
__glibcxx_requires_valid_range(__first, __last);
- if (__first == __last) return __first;
+ if (__first == __last)
+ return __first;
_ForwardIterator __result = __first;
while (++__first != __last)
if (*__result < *__first)
@@ -4258,7 +4584,8 @@ namespace std
typename iterator_traits<_ForwardIterator>::value_type>)
__glibcxx_requires_valid_range(__first, __last);
- if (__first == __last) return __first;
+ if (__first == __last)
+ return __first;
_ForwardIterator __result = __first;
while (++__first != __last)
if (*__first < *__result)
@@ -4286,7 +4613,8 @@ namespace std
typename iterator_traits<_ForwardIterator>::value_type>)
__glibcxx_requires_valid_range(__first, __last);
- if (__first == __last) return __first;
+ if (__first == __last)
+ return __first;
_ForwardIterator __result = __first;
while (++__first != __last)
if (__comp(*__first, *__result))
@@ -4310,10 +4638,12 @@ namespace std
*/
template<typename _BidirectionalIterator>
bool
- next_permutation(_BidirectionalIterator __first, _BidirectionalIterator __last)
+ next_permutation(_BidirectionalIterator __first,
+ _BidirectionalIterator __last)
{
// concept requirements
- __glibcxx_function_requires(_BidirectionalIteratorConcept<_BidirectionalIterator>)
+ __glibcxx_function_requires(_BidirectionalIteratorConcept<
+ _BidirectionalIterator>)
__glibcxx_function_requires(_LessThanComparableConcept<
typename iterator_traits<_BidirectionalIterator>::value_type>)
__glibcxx_requires_valid_range(__first, __last);
@@ -4327,22 +4657,25 @@ namespace std
__i = __last;
--__i;
- for(;;) {
- _BidirectionalIterator __ii = __i;
- --__i;
- if (*__i < *__ii) {
- _BidirectionalIterator __j = __last;
- while (!(*__i < *--__j))
- {}
- std::iter_swap(__i, __j);
- std::reverse(__ii, __last);
- return true;
- }
- if (__i == __first) {
- std::reverse(__first, __last);
- return false;
+ for(;;)
+ {
+ _BidirectionalIterator __ii = __i;
+ --__i;
+ if (*__i < *__ii)
+ {
+ _BidirectionalIterator __j = __last;
+ while (!(*__i < *--__j))
+ {}
+ std::iter_swap(__i, __j);
+ std::reverse(__ii, __last);
+ return true;
+ }
+ if (__i == __first)
+ {
+ std::reverse(__first, __last);
+ return false;
+ }
}
- }
}
/**
@@ -4350,7 +4683,7 @@ namespace std
* comparison functor.
* @param first Start of range.
* @param last End of range.
- * @param comp
+ * @param comp
* @return False if wrapped to first permutation, true otherwise.
*
* Treats all permutations of the range [first,last) as a set of
@@ -4361,11 +4694,12 @@ namespace std
*/
template<typename _BidirectionalIterator, typename _Compare>
bool
- next_permutation(_BidirectionalIterator __first, _BidirectionalIterator __last,
- _Compare __comp)
+ next_permutation(_BidirectionalIterator __first,
+ _BidirectionalIterator __last, _Compare __comp)
{
// concept requirements
- __glibcxx_function_requires(_BidirectionalIteratorConcept<_BidirectionalIterator>)
+ __glibcxx_function_requires(_BidirectionalIteratorConcept<
+ _BidirectionalIterator>)
__glibcxx_function_requires(_BinaryPredicateConcept<_Compare,
typename iterator_traits<_BidirectionalIterator>::value_type,
typename iterator_traits<_BidirectionalIterator>::value_type>)
@@ -4380,22 +4714,25 @@ namespace std
__i = __last;
--__i;
- for(;;) {
- _BidirectionalIterator __ii = __i;
- --__i;
- if (__comp(*__i, *__ii)) {
- _BidirectionalIterator __j = __last;
- while (!__comp(*__i, *--__j))
- {}
- std::iter_swap(__i, __j);
- std::reverse(__ii, __last);
- return true;
- }
- if (__i == __first) {
- std::reverse(__first, __last);
- return false;
+ for(;;)
+ {
+ _BidirectionalIterator __ii = __i;
+ --__i;
+ if (__comp(*__i, *__ii))
+ {
+ _BidirectionalIterator __j = __last;
+ while (!__comp(*__i, *--__j))
+ {}
+ std::iter_swap(__i, __j);
+ std::reverse(__ii, __last);
+ return true;
+ }
+ if (__i == __first)
+ {
+ std::reverse(__first, __last);
+ return false;
+ }
}
- }
}
/**
@@ -4412,10 +4749,12 @@ namespace std
*/
template<typename _BidirectionalIterator>
bool
- prev_permutation(_BidirectionalIterator __first, _BidirectionalIterator __last)
+ prev_permutation(_BidirectionalIterator __first,
+ _BidirectionalIterator __last)
{
// concept requirements
- __glibcxx_function_requires(_BidirectionalIteratorConcept<_BidirectionalIterator>)
+ __glibcxx_function_requires(_BidirectionalIteratorConcept<
+ _BidirectionalIterator>)
__glibcxx_function_requires(_LessThanComparableConcept<
typename iterator_traits<_BidirectionalIterator>::value_type>)
__glibcxx_requires_valid_range(__first, __last);
@@ -4429,22 +4768,25 @@ namespace std
__i = __last;
--__i;
- for(;;) {
- _BidirectionalIterator __ii = __i;
- --__i;
- if (*__ii < *__i) {
- _BidirectionalIterator __j = __last;
- while (!(*--__j < *__i))
- {}
- std::iter_swap(__i, __j);
- std::reverse(__ii, __last);
- return true;
- }
- if (__i == __first) {
- std::reverse(__first, __last);
- return false;
+ for(;;)
+ {
+ _BidirectionalIterator __ii = __i;
+ --__i;
+ if (*__ii < *__i)
+ {
+ _BidirectionalIterator __j = __last;
+ while (!(*--__j < *__i))
+ {}
+ std::iter_swap(__i, __j);
+ std::reverse(__ii, __last);
+ return true;
+ }
+ if (__i == __first)
+ {
+ std::reverse(__first, __last);
+ return false;
+ }
}
- }
}
/**
@@ -4452,7 +4794,7 @@ namespace std
* comparison functor.
* @param first Start of range.
* @param last End of range.
- * @param comp
+ * @param comp
* @return False if wrapped to last permutation, true otherwise.
*
* Treats all permutations of the range [first,last) as a set of
@@ -4463,11 +4805,12 @@ namespace std
*/
template<typename _BidirectionalIterator, typename _Compare>
bool
- prev_permutation(_BidirectionalIterator __first, _BidirectionalIterator __last,
- _Compare __comp)
+ prev_permutation(_BidirectionalIterator __first,
+ _BidirectionalIterator __last, _Compare __comp)
{
// concept requirements
- __glibcxx_function_requires(_BidirectionalIteratorConcept<_BidirectionalIterator>)
+ __glibcxx_function_requires(_BidirectionalIteratorConcept<
+ _BidirectionalIterator>)
__glibcxx_function_requires(_BinaryPredicateConcept<_Compare,
typename iterator_traits<_BidirectionalIterator>::value_type,
typename iterator_traits<_BidirectionalIterator>::value_type>)
@@ -4482,22 +4825,25 @@ namespace std
__i = __last;
--__i;
- for(;;) {
- _BidirectionalIterator __ii = __i;
- --__i;
- if (__comp(*__ii, *__i)) {
- _BidirectionalIterator __j = __last;
- while (!__comp(*--__j, *__i))
- {}
- std::iter_swap(__i, __j);
- std::reverse(__ii, __last);
- return true;
- }
- if (__i == __first) {
- std::reverse(__first, __last);
- return false;
+ for(;;)
+ {
+ _BidirectionalIterator __ii = __i;
+ --__i;
+ if (__comp(*__ii, *__i))
+ {
+ _BidirectionalIterator __j = __last;
+ while (!__comp(*--__j, *__i))
+ {}
+ std::iter_swap(__i, __j);
+ std::reverse(__ii, __last);
+ return true;
+ }
+ if (__i == __first)
+ {
+ std::reverse(__first, __last);
+ return false;
+ }
}
- }
}
// find_first_of, with and without an explicitly supplied comparison function.
@@ -4552,7 +4898,8 @@ namespace std
* some element in the range [first2,last2). If found, returns an iterator in
* the range [first1,last1), otherwise returns @p last1.
*/
- template<typename _InputIterator, typename _ForwardIterator, typename _BinaryPredicate>
+ template<typename _InputIterator, typename _ForwardIterator,
+ typename _BinaryPredicate>
_InputIterator
find_first_of(_InputIterator __first1, _InputIterator __last1,
_ForwardIterator __first2, _ForwardIterator __last2,
@@ -4592,20 +4939,23 @@ namespace std
{
if (__first2 == __last2)
return __last1;
- else {
- _ForwardIterator1 __result = __last1;
- while (1) {
- _ForwardIterator1 __new_result
- = std::search(__first1, __last1, __first2, __last2);
- if (__new_result == __last1)
- return __result;
- else {
- __result = __new_result;
- __first1 = __new_result;
- ++__first1;
- }
+ else
+ {
+ _ForwardIterator1 __result = __last1;
+ while (1)
+ {
+ _ForwardIterator1 __new_result
+ = std::search(__first1, __last1, __first2, __last2);
+ if (__new_result == __last1)
+ return __result;
+ else
+ {
+ __result = __new_result;
+ __first1 = __new_result;
+ ++__first1;
+ }
+ }
}
- }
}
template<typename _ForwardIterator1, typename _ForwardIterator2,
@@ -4618,32 +4968,39 @@ namespace std
{
if (__first2 == __last2)
return __last1;
- else {
- _ForwardIterator1 __result = __last1;
- while (1) {
- _ForwardIterator1 __new_result
- = std::search(__first1, __last1, __first2, __last2, __comp);
- if (__new_result == __last1)
- return __result;
- else {
- __result = __new_result;
- __first1 = __new_result;
- ++__first1;
- }
+ else
+ {
+ _ForwardIterator1 __result = __last1;
+ while (1)
+ {
+ _ForwardIterator1 __new_result
+ = std::search(__first1, __last1, __first2, __last2, __comp);
+ if (__new_result == __last1)
+ return __result;
+ else
+ {
+ __result = __new_result;
+ __first1 = __new_result;
+ ++__first1;
+ }
+ }
}
- }
}
// find_end for bidirectional iterators. Requires partial specialization.
template<typename _BidirectionalIterator1, typename _BidirectionalIterator2>
_BidirectionalIterator1
- __find_end(_BidirectionalIterator1 __first1, _BidirectionalIterator1 __last1,
- _BidirectionalIterator2 __first2, _BidirectionalIterator2 __last2,
+ __find_end(_BidirectionalIterator1 __first1,
+ _BidirectionalIterator1 __last1,
+ _BidirectionalIterator2 __first2,
+ _BidirectionalIterator2 __last2,
bidirectional_iterator_tag, bidirectional_iterator_tag)
{
// concept requirements
- __glibcxx_function_requires(_BidirectionalIteratorConcept<_BidirectionalIterator1>)
- __glibcxx_function_requires(_BidirectionalIteratorConcept<_BidirectionalIterator2>)
+ __glibcxx_function_requires(_BidirectionalIteratorConcept<
+ _BidirectionalIterator1>)
+ __glibcxx_function_requires(_BidirectionalIteratorConcept<
+ _BidirectionalIterator2>)
typedef reverse_iterator<_BidirectionalIterator1> _RevIterator1;
typedef reverse_iterator<_BidirectionalIterator2> _RevIterator2;
@@ -4655,24 +5012,29 @@ namespace std
if (__rresult == __rlast1)
return __last1;
- else {
- _BidirectionalIterator1 __result = __rresult.base();
- std::advance(__result, -std::distance(__first2, __last2));
- return __result;
- }
+ else
+ {
+ _BidirectionalIterator1 __result = __rresult.base();
+ std::advance(__result, -std::distance(__first2, __last2));
+ return __result;
+ }
}
template<typename _BidirectionalIterator1, typename _BidirectionalIterator2,
typename _BinaryPredicate>
_BidirectionalIterator1
- __find_end(_BidirectionalIterator1 __first1, _BidirectionalIterator1 __last1,
- _BidirectionalIterator2 __first2, _BidirectionalIterator2 __last2,
+ __find_end(_BidirectionalIterator1 __first1,
+ _BidirectionalIterator1 __last1,
+ _BidirectionalIterator2 __first2,
+ _BidirectionalIterator2 __last2,
bidirectional_iterator_tag, bidirectional_iterator_tag,
_BinaryPredicate __comp)
{
// concept requirements
- __glibcxx_function_requires(_BidirectionalIteratorConcept<_BidirectionalIterator1>)
- __glibcxx_function_requires(_BidirectionalIteratorConcept<_BidirectionalIterator2>)
+ __glibcxx_function_requires(_BidirectionalIteratorConcept<
+ _BidirectionalIterator1>)
+ __glibcxx_function_requires(_BidirectionalIteratorConcept<
+ _BidirectionalIterator2>)
typedef reverse_iterator<_BidirectionalIterator1> _RevIterator1;
typedef reverse_iterator<_BidirectionalIterator2> _RevIterator2;
@@ -4685,11 +5047,12 @@ namespace std
if (__rresult == __rlast1)
return __last1;
- else {
- _BidirectionalIterator1 __result = __rresult.base();
- std::advance(__result, -std::distance(__first2, __last2));
- return __result;
- }
+ else
+ {
+ _BidirectionalIterator1 __result = __rresult.base();
+ std::advance(__result, -std::distance(__first2, __last2));
+ return __result;
+ }
}
// Dispatching functions for find_end.
@@ -4788,4 +5151,3 @@ namespace std
} // namespace std
#endif /* _ALGO_H */
-
diff --git a/libstdc++-v3/include/bits/stl_algobase.h b/libstdc++-v3/include/bits/stl_algobase.h
index 3e1a7c639c3..17c3007f1f4 100644
--- a/libstdc++-v3/include/bits/stl_algobase.h
+++ b/libstdc++-v3/include/bits/stl_algobase.h
@@ -1,6 +1,6 @@
// Bits and pieces used in algorithms -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -91,16 +91,22 @@ namespace std
inline void
iter_swap(_ForwardIterator1 __a, _ForwardIterator2 __b)
{
- typedef typename iterator_traits<_ForwardIterator1>::value_type _ValueType1;
- typedef typename iterator_traits<_ForwardIterator2>::value_type _ValueType2;
+ typedef typename iterator_traits<_ForwardIterator1>::value_type
+ _ValueType1;
+ typedef typename iterator_traits<_ForwardIterator2>::value_type
+ _ValueType2;
// concept requirements
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator1>)
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator2>)
- __glibcxx_function_requires(_ConvertibleConcept<_ValueType1, _ValueType2>)
- __glibcxx_function_requires(_ConvertibleConcept<_ValueType2, _ValueType1>)
-
- _ValueType1 __tmp = *__a;
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator1>)
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator2>)
+ __glibcxx_function_requires(_ConvertibleConcept<_ValueType1,
+ _ValueType2>)
+ __glibcxx_function_requires(_ConvertibleConcept<_ValueType2,
+ _ValueType1>)
+
+ const _ValueType1 __tmp = *__a;
*__a = *__b;
*__b = __tmp;
}
@@ -120,8 +126,8 @@ namespace std
{
// concept requirements
__glibcxx_function_requires(_SGIAssignableConcept<_Tp>)
-
- _Tp __tmp = __a;
+
+ const _Tp __tmp = __a;
__a = __b;
__b = __tmp;
}
@@ -146,7 +152,9 @@ namespace std
// concept requirements
__glibcxx_function_requires(_LessThanComparableConcept<_Tp>)
//return __b < __a ? __b : __a;
- if (__b < __a) return __b; return __a;
+ if (__b < __a)
+ return __b;
+ return __a;
}
/**
@@ -161,12 +169,14 @@ namespace std
*/
template<typename _Tp>
inline const _Tp&
- max(const _Tp& __a, const _Tp& __b)
+ max(const _Tp& __a, const _Tp& __b)
{
// concept requirements
__glibcxx_function_requires(_LessThanComparableConcept<_Tp>)
//return __a < __b ? __b : __a;
- if (__a < __b) return __b; return __a;
+ if (__a < __b)
+ return __b;
+ return __a;
}
/**
@@ -184,7 +194,9 @@ namespace std
min(const _Tp& __a, const _Tp& __b, _Compare __comp)
{
//return __comp(__b, __a) ? __b : __a;
- if (__comp(__b, __a)) return __b; return __a;
+ if (__comp(__b, __a))
+ return __b;
+ return __a;
}
/**
@@ -202,7 +214,9 @@ namespace std
max(const _Tp& __a, const _Tp& __b, _Compare __comp)
{
//return __comp(__a, __b) ? __b : __a;
- if (__comp(__a, __b)) return __b; return __a;
+ if (__comp(__a, __b))
+ return __b;
+ return __a;
}
// All of these auxiliary functions serve two purposes. (1) Replace
@@ -228,7 +242,7 @@ namespace std
{
typedef typename iterator_traits<_RandomAccessIterator>::difference_type
_Distance;
- for (_Distance __n = __last - __first; __n > 0; --__n)
+ for (_Distance __n = __last - __first; __n > 0; --__n)
{
*__result = *__first;
++__first;
@@ -249,13 +263,15 @@ namespace std
inline _OutputIterator
__copy_aux2(_InputIterator __first, _InputIterator __last,
_OutputIterator __result, __false_type)
- { return std::__copy(__first, __last, __result, std::__iterator_category(__first)); }
+ { return std::__copy(__first, __last, __result,
+ std::__iterator_category(__first)); }
template<typename _InputIterator, typename _OutputIterator>
inline _OutputIterator
__copy_aux2(_InputIterator __first, _InputIterator __last,
_OutputIterator __result, __true_type)
- { return std::__copy(__first, __last, __result, std::__iterator_category(__first)); }
+ { return std::__copy(__first, __last, __result,
+ std::__iterator_category(__first)); }
template<typename _Tp>
inline _Tp*
@@ -264,7 +280,7 @@ namespace std
template<typename _Tp>
inline _Tp*
- __copy_aux2(const _Tp* __first, const _Tp* __last, _Tp* __result,
+ __copy_aux2(const _Tp* __first, const _Tp* __last, _Tp* __result,
__true_type)
{ return std::__copy_trivial(__first, __last, __result); }
@@ -274,9 +290,9 @@ namespace std
_OutputIterator __result, __true_type)
{
typedef typename iterator_traits<_InputIterator>::value_type
- _ValueType;
- typedef typename __type_traits<_ValueType>::has_trivial_assignment_operator
- _Trivial;
+ _ValueType;
+ typedef typename __type_traits<
+ _ValueType>::has_trivial_assignment_operator _Trivial;
return _OutputIterator(std::__copy_aux2(__first, __last, __result.base(),
_Trivial()));
}
@@ -287,8 +303,8 @@ namespace std
_OutputIterator __result, __false_type)
{
typedef typename iterator_traits<_InputIterator>::value_type _ValueType;
- typedef typename __type_traits<_ValueType>::has_trivial_assignment_operator
- _Trivial;
+ typedef typename __type_traits<
+ _ValueType>::has_trivial_assignment_operator _Trivial;
return std::__copy_aux2(__first, __last, __result, _Trivial());
}
@@ -298,7 +314,8 @@ namespace std
_OutputIterator __result, __true_type)
{
typedef typename _Is_normal_iterator<_OutputIterator>::_Normal __Normal;
- return std::__copy_ni2(__first.base(), __last.base(), __result, __Normal());
+ return std::__copy_ni2(__first.base(), __last.base(),
+ __result, __Normal());
}
template<typename _InputIterator, typename _OutputIterator>
@@ -328,7 +345,8 @@ namespace std
*/
template<typename _InputIterator, typename _OutputIterator>
inline _OutputIterator
- copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result)
+ copy(_InputIterator __first, _InputIterator __last,
+ _OutputIterator __result)
{
// concept requirements
__glibcxx_function_requires(_InputIteratorConcept<_InputIterator>)
@@ -342,8 +360,10 @@ namespace std
template<typename _BidirectionalIterator1, typename _BidirectionalIterator2>
inline _BidirectionalIterator2
- __copy_backward(_BidirectionalIterator1 __first, _BidirectionalIterator1 __last,
- _BidirectionalIterator2 __result, bidirectional_iterator_tag)
+ __copy_backward(_BidirectionalIterator1 __first,
+ _BidirectionalIterator1 __last,
+ _BidirectionalIterator2 __result,
+ bidirectional_iterator_tag)
{
while (__first != __last)
*--__result = *--__last;
@@ -352,7 +372,7 @@ namespace std
template<typename _RandomAccessIterator, typename _BidirectionalIterator>
inline _BidirectionalIterator
- __copy_backward(_RandomAccessIterator __first, _RandomAccessIterator __last,
+ __copy_backward(_RandomAccessIterator __first, _RandomAccessIterator __last,
_BidirectionalIterator __result, random_access_iterator_tag)
{
typename iterator_traits<_RandomAccessIterator>::difference_type __n;
@@ -362,7 +382,7 @@ namespace std
}
- // This dispatch class is a workaround for compilers that do not
+ // This dispatch class is a workaround for compilers that do not
// have partial ordering of function templates. All we're doing is
// creating a specialization so that we can turn a call to copy_backward
// into a memmove whenever possible.
@@ -371,12 +391,10 @@ namespace std
struct __copy_backward_dispatch
{
static _BidirectionalIterator2
- copy(_BidirectionalIterator1 __first, _BidirectionalIterator1 __last,
+ copy(_BidirectionalIterator1 __first, _BidirectionalIterator1 __last,
_BidirectionalIterator2 __result)
- {
- return std::__copy_backward(__first, __last, __result,
- std::__iterator_category(__first));
- }
+ { return std::__copy_backward(__first, __last, __result,
+ std::__iterator_category(__first)); }
};
template<typename _Tp>
@@ -408,9 +426,10 @@ namespace std
{
typedef typename __type_traits<typename iterator_traits<_BI2>::value_type>
::has_trivial_assignment_operator _Trivial;
- return std::__copy_backward_dispatch<_BI1, _BI2, _Trivial>::copy(__first,
- __last,
- __result);
+ return
+ std::__copy_backward_dispatch<_BI1, _BI2, _Trivial>::copy(__first,
+ __last,
+ __result);
}
template <typename _BI1, typename _BI2>
@@ -432,8 +451,8 @@ namespace std
{
typedef typename _Is_normal_iterator<_BI2>::_Normal __Normal;
return std::__copy_backward_output_normal_iterator(__first.base(),
- __last.base(), __result,
- __Normal());
+ __last.base(),
+ __result, __Normal());
}
template <typename _BI1, typename _BI2>
@@ -442,8 +461,8 @@ namespace std
_BI2 __result, __false_type)
{
typedef typename _Is_normal_iterator<_BI2>::_Normal __Normal;
- return std::__copy_backward_output_normal_iterator(__first, __last, __result,
- __Normal());
+ return std::__copy_backward_output_normal_iterator(__first, __last,
+ __result, __Normal());
}
/**
@@ -476,8 +495,8 @@ namespace std
__glibcxx_requires_valid_range(__first, __last);
typedef typename _Is_normal_iterator<_BI1>::_Normal __Normal;
- return std::__copy_backward_input_normal_iterator(__first, __last, __result,
- __Normal());
+ return std::__copy_backward_input_normal_iterator(__first, __last,
+ __result, __Normal());
}
@@ -497,7 +516,8 @@ namespace std
fill(_ForwardIterator __first, _ForwardIterator __last, const _Tp& __value)
{
// concept requirements
- __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<_ForwardIterator>)
+ __glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
+ _ForwardIterator>)
__glibcxx_requires_valid_range(__first, __last);
for ( ; __first != __last; ++__first)
@@ -532,7 +552,7 @@ namespace std
fill(unsigned char* __first, unsigned char* __last, const unsigned char& __c)
{
__glibcxx_requires_valid_range(__first, __last);
- unsigned char __tmp = __c;
+ const unsigned char __tmp = __c;
std::memset(__first, __tmp, __last - __first);
}
@@ -540,7 +560,7 @@ namespace std
fill(signed char* __first, signed char* __last, const signed char& __c)
{
__glibcxx_requires_valid_range(__first, __last);
- signed char __tmp = __c;
+ const signed char __tmp = __c;
std::memset(__first, static_cast<unsigned char>(__tmp), __last - __first);
}
@@ -548,7 +568,7 @@ namespace std
fill(char* __first, char* __last, const char& __c)
{
__glibcxx_requires_valid_range(__first, __last);
- char __tmp = __c;
+ const char __tmp = __c;
std::memset(__first, static_cast<unsigned char>(__tmp), __last - __first);
}
@@ -625,7 +645,8 @@ namespace std
* second iterator points into the second range, and the elements pointed
* to by the iterators are not equal.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _BinaryPredicate>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _BinaryPredicate>
pair<_InputIterator1, _InputIterator2>
mismatch(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _BinaryPredicate __binary_pred)
@@ -656,7 +677,8 @@ namespace std
*/
template<typename _InputIterator1, typename _InputIterator2>
inline bool
- equal(_InputIterator1 __first1, _InputIterator1 __last1, _InputIterator2 __first2)
+ equal(_InputIterator1 __first1, _InputIterator1 __last1,
+ _InputIterator2 __first2)
{
// concept requirements
__glibcxx_function_requires(_InputIteratorConcept<_InputIterator1>)
@@ -685,7 +707,8 @@ namespace std
* false depending on whether all of the corresponding elements of the
* ranges are equal.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _BinaryPredicate>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _BinaryPredicate>
inline bool
equal(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2,
@@ -731,7 +754,7 @@ namespace std
__glibcxx_requires_valid_range(__first1, __last1);
__glibcxx_requires_valid_range(__first2, __last2);
- for (;__first1 != __last1 && __first2 != __last2; ++__first1, ++__first2)
+ for (;__first1 != __last1 && __first2 != __last2; ++__first1, ++__first2)
{
if (*__first1 < *__first2)
return true;
@@ -753,7 +776,8 @@ namespace std
* The same as the four-parameter @c lexigraphical_compare, but uses the
* comp parameter instead of @c <.
*/
- template<typename _InputIterator1, typename _InputIterator2, typename _Compare>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _Compare>
bool
lexicographical_compare(_InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _InputIterator2 __last2,
@@ -766,7 +790,7 @@ namespace std
__glibcxx_requires_valid_range(__first2, __last2);
for ( ; __first1 != __last1 && __first2 != __last2
- ; ++__first1, ++__first2)
+ ; ++__first1, ++__first2)
{
if (__comp(*__first1, *__first2))
return true;
@@ -776,10 +800,10 @@ namespace std
return __first1 == __last1 && __first2 != __last2;
}
- inline bool
- lexicographical_compare(const unsigned char* __first1,
+ inline bool
+ lexicographical_compare(const unsigned char* __first1,
const unsigned char* __last1,
- const unsigned char* __first2,
+ const unsigned char* __first2,
const unsigned char* __last2)
{
__glibcxx_requires_valid_range(__first1, __last1);
@@ -787,7 +811,8 @@ namespace std
const size_t __len1 = __last1 - __first1;
const size_t __len2 = __last2 - __first2;
- const int __result = std::memcmp(__first1, __first2, std::min(__len1, __len2));
+ const int __result = std::memcmp(__first1, __first2,
+ std::min(__len1, __len2));
return __result != 0 ? __result < 0 : __len1 < __len2;
}
@@ -813,4 +838,4 @@ namespace std
} // namespace std
-#endif
+#endif
diff --git a/libstdc++-v3/include/bits/stl_bvector.h b/libstdc++-v3/include/bits/stl_bvector.h
index 884256151f4..afae738418d 100644
--- a/libstdc++-v3/include/bits/stl_bvector.h
+++ b/libstdc++-v3/include/bits/stl_bvector.h
@@ -1,6 +1,6 @@
-// bit_vector and vector<bool> specialization -*- C++ -*-
+// vector<bool> specialization -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -61,482 +61,643 @@
#ifndef _BVECTOR_H
#define _BVECTOR_H 1
-namespace __gnu_norm
-{
+namespace _GLIBCXX_STD
+{
typedef unsigned long _Bit_type;
enum { _S_word_bit = int(CHAR_BIT * sizeof(_Bit_type)) };
-struct _Bit_reference {
+ struct _Bit_reference
+ {
+ _Bit_type * _M_p;
+ _Bit_type _M_mask;
- _Bit_type * _M_p;
- _Bit_type _M_mask;
- _Bit_reference(_Bit_type * __x, _Bit_type __y)
- : _M_p(__x), _M_mask(__y) {}
+ _Bit_reference(_Bit_type * __x, _Bit_type __y)
+ : _M_p(__x), _M_mask(__y) { }
-public:
- _Bit_reference() : _M_p(0), _M_mask(0) {}
- operator bool() const { return !!(*_M_p & _M_mask); }
- _Bit_reference& operator=(bool __x)
- {
- if (__x) *_M_p |= _M_mask;
- else *_M_p &= ~_M_mask;
- return *this;
- }
- _Bit_reference& operator=(const _Bit_reference& __x)
+ _Bit_reference() : _M_p(0), _M_mask(0) { }
+
+ operator bool() const { return !!(*_M_p & _M_mask); }
+
+ _Bit_reference&
+ operator=(bool __x)
+ {
+ if (__x)
+ *_M_p |= _M_mask;
+ else
+ *_M_p &= ~_M_mask;
+ return *this;
+ }
+
+ _Bit_reference&
+ operator=(const _Bit_reference& __x)
{ return *this = bool(__x); }
- bool operator==(const _Bit_reference& __x) const
+
+ bool
+ operator==(const _Bit_reference& __x) const
{ return bool(*this) == bool(__x); }
- bool operator<(const _Bit_reference& __x) const
+
+ bool
+ operator<(const _Bit_reference& __x) const
{ return !bool(*this) && bool(__x); }
- void flip() { *_M_p ^= _M_mask; }
-};
-struct _Bit_iterator_base : public iterator<random_access_iterator_tag, bool>
-{
- _Bit_type * _M_p;
- unsigned int _M_offset;
+ void
+ flip() { *_M_p ^= _M_mask; }
+ };
- _Bit_iterator_base(_Bit_type * __x, unsigned int __y)
- : _M_p(__x), _M_offset(__y) {}
+ struct _Bit_iterator_base : public iterator<random_access_iterator_tag, bool>
+ {
+ _Bit_type * _M_p;
+ unsigned int _M_offset;
+
+ _Bit_iterator_base(_Bit_type * __x, unsigned int __y)
+ : _M_p(__x), _M_offset(__y) { }
- void _M_bump_up() {
- if (_M_offset++ == _S_word_bit - 1) {
- _M_offset = 0;
- ++_M_p;
+ void
+ _M_bump_up()
+ {
+ if (_M_offset++ == _S_word_bit - 1)
+ {
+ _M_offset = 0;
+ ++_M_p;
+ }
}
- }
- void _M_bump_down() {
- if (_M_offset-- == 0) {
- _M_offset = _S_word_bit - 1;
- --_M_p;
+
+ void
+ _M_bump_down()
+ {
+ if (_M_offset-- == 0)
+ {
+ _M_offset = _S_word_bit - 1;
+ --_M_p;
+ }
}
- }
- void _M_incr(ptrdiff_t __i) {
- difference_type __n = __i + _M_offset;
- _M_p += __n / _S_word_bit;
- __n = __n % _S_word_bit;
- if (__n < 0) {
- _M_offset = (unsigned int) __n + _S_word_bit;
- --_M_p;
- } else
- _M_offset = (unsigned int) __n;
- }
+ void
+ _M_incr(ptrdiff_t __i)
+ {
+ difference_type __n = __i + _M_offset;
+ _M_p += __n / _S_word_bit;
+ __n = __n % _S_word_bit;
+ if (__n < 0)
+ {
+ _M_offset = static_cast<unsigned int>(__n + _S_word_bit);
+ --_M_p;
+ }
+ else
+ _M_offset = static_cast<unsigned int>(__n);
+ }
- bool operator==(const _Bit_iterator_base& __i) const {
- return _M_p == __i._M_p && _M_offset == __i._M_offset;
- }
- bool operator<(const _Bit_iterator_base& __i) const {
- return _M_p < __i._M_p || (_M_p == __i._M_p && _M_offset < __i._M_offset);
- }
- bool operator!=(const _Bit_iterator_base& __i) const {
- return !(*this == __i);
- }
- bool operator>(const _Bit_iterator_base& __i) const {
- return __i < *this;
- }
- bool operator<=(const _Bit_iterator_base& __i) const {
- return !(__i < *this);
- }
- bool operator>=(const _Bit_iterator_base& __i) const {
- return !(*this < __i);
- }
-};
+ bool
+ operator==(const _Bit_iterator_base& __i) const
+ { return _M_p == __i._M_p && _M_offset == __i._M_offset; }
-inline ptrdiff_t
-operator-(const _Bit_iterator_base& __x, const _Bit_iterator_base& __y) {
- return _S_word_bit * (__x._M_p - __y._M_p) + __x._M_offset - __y._M_offset;
-}
+ bool
+ operator<(const _Bit_iterator_base& __i) const
+ {
+ return _M_p < __i._M_p
+ || (_M_p == __i._M_p && _M_offset < __i._M_offset);
+ }
+ bool
+ operator!=(const _Bit_iterator_base& __i) const
+ { return !(*this == __i); }
-struct _Bit_iterator : public _Bit_iterator_base
-{
- typedef _Bit_reference reference;
- typedef _Bit_reference* pointer;
- typedef _Bit_iterator iterator;
-
- _Bit_iterator() : _Bit_iterator_base(0, 0) {}
- _Bit_iterator(_Bit_type * __x, unsigned int __y)
- : _Bit_iterator_base(__x, __y) {}
-
- reference operator*() const { return reference(_M_p, 1UL << _M_offset); }
- iterator& operator++() {
- _M_bump_up();
- return *this;
- }
- iterator operator++(int) {
- iterator __tmp = *this;
- _M_bump_up();
- return __tmp;
- }
- iterator& operator--() {
- _M_bump_down();
- return *this;
- }
- iterator operator--(int) {
- iterator __tmp = *this;
- _M_bump_down();
- return __tmp;
- }
- iterator& operator+=(difference_type __i) {
- _M_incr(__i);
- return *this;
- }
- iterator& operator-=(difference_type __i) {
- *this += -__i;
- return *this;
- }
- iterator operator+(difference_type __i) const {
- iterator __tmp = *this;
- return __tmp += __i;
- }
- iterator operator-(difference_type __i) const {
- iterator __tmp = *this;
- return __tmp -= __i;
+ bool
+ operator>(const _Bit_iterator_base& __i) const
+ { return __i < *this; }
+
+ bool
+ operator<=(const _Bit_iterator_base& __i) const
+ { return !(__i < *this); }
+
+ bool
+ operator>=(const _Bit_iterator_base& __i) const
+ { return !(*this < __i); }
+ };
+
+ inline ptrdiff_t
+ operator-(const _Bit_iterator_base& __x, const _Bit_iterator_base& __y)
+ {
+ return _S_word_bit * (__x._M_p - __y._M_p) + __x._M_offset - __y._M_offset;
}
- reference operator[](difference_type __i) { return *(*this + __i); }
-};
+ struct _Bit_iterator : public _Bit_iterator_base
+ {
+ typedef _Bit_reference reference;
+ typedef _Bit_reference* pointer;
+ typedef _Bit_iterator iterator;
-inline _Bit_iterator
-operator+(ptrdiff_t __n, const _Bit_iterator& __x) { return __x + __n; }
+ _Bit_iterator() : _Bit_iterator_base(0, 0) { }
+ _Bit_iterator(_Bit_type * __x, unsigned int __y)
+ : _Bit_iterator_base(__x, __y) { }
+ reference
+ operator*() const { return reference(_M_p, 1UL << _M_offset); }
-struct _Bit_const_iterator : public _Bit_iterator_base
-{
- typedef bool reference;
- typedef bool const_reference;
- typedef const bool* pointer;
- typedef _Bit_const_iterator const_iterator;
-
- _Bit_const_iterator() : _Bit_iterator_base(0, 0) {}
- _Bit_const_iterator(_Bit_type * __x, unsigned int __y)
- : _Bit_iterator_base(__x, __y) {}
- _Bit_const_iterator(const _Bit_iterator& __x)
- : _Bit_iterator_base(__x._M_p, __x._M_offset) {}
-
- const_reference operator*() const {
- return _Bit_reference(_M_p, 1UL << _M_offset);
- }
- const_iterator& operator++() {
- _M_bump_up();
- return *this;
- }
- const_iterator operator++(int) {
- const_iterator __tmp = *this;
- _M_bump_up();
- return __tmp;
- }
- const_iterator& operator--() {
- _M_bump_down();
- return *this;
- }
- const_iterator operator--(int) {
- const_iterator __tmp = *this;
- _M_bump_down();
- return __tmp;
- }
- const_iterator& operator+=(difference_type __i) {
- _M_incr(__i);
- return *this;
- }
- const_iterator& operator-=(difference_type __i) {
- *this += -__i;
- return *this;
- }
- const_iterator operator+(difference_type __i) const {
- const_iterator __tmp = *this;
- return __tmp += __i;
- }
- const_iterator operator-(difference_type __i) const {
- const_iterator __tmp = *this;
- return __tmp -= __i;
- }
- const_reference operator[](difference_type __i) {
- return *(*this + __i);
- }
-};
+ iterator&
+ operator++()
+ {
+ _M_bump_up();
+ return *this;
+ }
-inline _Bit_const_iterator
-operator+(ptrdiff_t __n, const _Bit_const_iterator& __x) { return __x + __n; }
+ iterator
+ operator++(int)
+ {
+ iterator __tmp = *this;
+ _M_bump_up();
+ return __tmp;
+ }
+ iterator&
+ operator--()
+ {
+ _M_bump_down();
+ return *this;
+ }
-template <class _Alloc>
-class _Bvector_base
- : public _Alloc::template rebind<_Bit_type>::other
-{
- typedef typename _Alloc::template rebind<_Bit_type>::other _Bit_alloc_type;
-public:
- typedef _Alloc allocator_type;
- allocator_type get_allocator() const {
- return *static_cast<const _Bit_alloc_type*>(this);
- }
+ iterator
+ operator--(int)
+ {
+ iterator __tmp = *this;
+ _M_bump_down();
+ return __tmp;
+ }
- _Bvector_base(const allocator_type& __a)
- : _Bit_alloc_type(__a), _M_start(), _M_finish(), _M_end_of_storage(0) { }
- ~_Bvector_base() { this->_M_deallocate(); }
+ iterator&
+ operator+=(difference_type __i)
+ {
+ _M_incr(__i);
+ return *this;
+ }
-protected:
- _Bit_type* _M_bit_alloc(size_t __n) {
- return _Bit_alloc_type::allocate((__n + _S_word_bit - 1)/_S_word_bit);
- }
- void _M_deallocate() {
- if (_M_start._M_p)
- _Bit_alloc_type::deallocate(_M_start._M_p, _M_end_of_storage - _M_start._M_p);
- }
+ iterator&
+ operator-=(difference_type __i)
+ {
+ *this += -__i;
+ return *this;
+ }
+
+ iterator
+ operator+(difference_type __i) const
+ {
+ iterator __tmp = *this;
+ return __tmp += __i;
+ }
+
+ iterator
+ operator-(difference_type __i) const
+ {
+ iterator __tmp = *this;
+ return __tmp -= __i;
+ }
+
+ reference
+ operator[](difference_type __i)
+ { return *(*this + __i); }
+ };
+
+ inline _Bit_iterator
+ operator+(ptrdiff_t __n, const _Bit_iterator& __x) { return __x + __n; }
- _Bit_iterator _M_start;
- _Bit_iterator _M_finish;
- _Bit_type * _M_end_of_storage;
-};
-} // namespace __gnu_norm
+ struct _Bit_const_iterator : public _Bit_iterator_base
+ {
+ typedef bool reference;
+ typedef bool const_reference;
+ typedef const bool* pointer;
+ typedef _Bit_const_iterator const_iterator;
+
+ _Bit_const_iterator() : _Bit_iterator_base(0, 0) { }
+ _Bit_const_iterator(_Bit_type * __x, unsigned int __y)
+ : _Bit_iterator_base(__x, __y) { }
+ _Bit_const_iterator(const _Bit_iterator& __x)
+ : _Bit_iterator_base(__x._M_p, __x._M_offset) { }
+
+ const_reference
+ operator*() const
+ { return _Bit_reference(_M_p, 1UL << _M_offset); }
+
+ const_iterator&
+ operator++()
+ {
+ _M_bump_up();
+ return *this;
+ }
+
+ const_iterator
+ operator++(int)
+ {
+ const_iterator __tmp = *this;
+ _M_bump_up();
+ return __tmp;
+ }
+
+ const_iterator&
+ operator--()
+ {
+ _M_bump_down();
+ return *this;
+ }
+
+ const_iterator
+ operator--(int)
+ {
+ const_iterator __tmp = *this;
+ _M_bump_down();
+ return __tmp;
+ }
+
+ const_iterator&
+ operator+=(difference_type __i)
+ {
+ _M_incr(__i);
+ return *this;
+ }
+
+ const_iterator&
+ operator-=(difference_type __i)
+ {
+ *this += -__i;
+ return *this;
+ }
+
+ const_iterator
+ operator+(difference_type __i) const {
+ const_iterator __tmp = *this;
+ return __tmp += __i;
+ }
+
+ const_iterator
+ operator-(difference_type __i) const
+ {
+ const_iterator __tmp = *this;
+ return __tmp -= __i;
+ }
+
+ const_reference
+ operator[](difference_type __i)
+ { return *(*this + __i); }
+ };
+
+ inline _Bit_const_iterator
+ operator+(ptrdiff_t __n, const _Bit_const_iterator& __x)
+ { return __x + __n; }
+
+ template<class _Alloc>
+ class _Bvector_base
+ {
+ typedef typename _Alloc::template rebind<_Bit_type>::other
+ _Bit_alloc_type;
+
+ struct _Bvector_impl : public _Bit_alloc_type
+ {
+ _Bit_iterator _M_start;
+ _Bit_iterator _M_finish;
+ _Bit_type* _M_end_of_storage;
+ _Bvector_impl(const _Bit_alloc_type& __a)
+ : _Bit_alloc_type(__a), _M_start(), _M_finish(), _M_end_of_storage(0)
+ { }
+ };
+
+ public:
+ typedef _Alloc allocator_type;
+
+ allocator_type
+ get_allocator() const
+ { return *static_cast<const _Bit_alloc_type*>(&this->_M_impl); }
+
+ _Bvector_base(const allocator_type& __a) : _M_impl(__a) { }
+
+ ~_Bvector_base() { this->_M_deallocate(); }
+
+ protected:
+ _Bvector_impl _M_impl;
+
+ _Bit_type*
+ _M_allocate(size_t __n)
+ { return _M_impl.allocate((__n + _S_word_bit - 1) / _S_word_bit); }
+
+ void
+ _M_deallocate()
+ {
+ if (_M_impl._M_start._M_p)
+ _M_impl.deallocate(_M_impl._M_start._M_p,
+ _M_impl._M_end_of_storage - _M_impl._M_start._M_p);
+ }
+ };
+} // namespace std
// Declare a partial specialization of vector<T, Alloc>.
#include <bits/stl_vector.h>
-namespace __gnu_norm
+
+namespace _GLIBCXX_STD
{
-template <typename _Alloc>
- class vector<bool, _Alloc> : public _Bvector_base<_Alloc>
+ /**
+ * @brief A specialization of vector for booleans which offers fixed time
+ * access to individual elements in any order.
+ *
+ * Note that vector<bool> does not actually meet the requirements for being
+ * a container. This is because the reference and pointer types are not
+ * really references and pointers to bool. See DR96 for details. @see
+ * vector for function documentation.
+ *
+ * @ingroup Containers
+ * @ingroup Sequences
+ *
+ * In some terminology a %vector can be described as a dynamic
+ * C-style array, it offers fast and efficient access to individual
+ * elements in any order and saves the user from worrying about
+ * memory and size allocation. Subscripting ( @c [] ) access is
+ * also provided as with C-style arrays.
+ */
+template<typename _Alloc>
+ class vector<bool, _Alloc> : public _Bvector_base<_Alloc>
{
public:
typedef bool value_type;
typedef size_t size_type;
- typedef ptrdiff_t difference_type;
+ typedef ptrdiff_t difference_type;
typedef _Bit_reference reference;
typedef bool const_reference;
typedef _Bit_reference* pointer;
typedef const bool* const_pointer;
-
+
typedef _Bit_iterator iterator;
typedef _Bit_const_iterator const_iterator;
-
+
typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
typedef std::reverse_iterator<iterator> reverse_iterator;
-
+
typedef typename _Bvector_base<_Alloc>::allocator_type allocator_type;
- allocator_type get_allocator() const {
- return _Bvector_base<_Alloc>::get_allocator();
- }
-
+
+ allocator_type get_allocator() const
+ { return _Bvector_base<_Alloc>::get_allocator(); }
+
protected:
- using _Bvector_base<_Alloc>::_M_bit_alloc;
+ using _Bvector_base<_Alloc>::_M_allocate;
using _Bvector_base<_Alloc>::_M_deallocate;
- using _Bvector_base<_Alloc>::_M_start;
- using _Bvector_base<_Alloc>::_M_finish;
- using _Bvector_base<_Alloc>::_M_end_of_storage;
-
+
protected:
- void _M_initialize(size_type __n) {
- _Bit_type * __q = this->_M_bit_alloc(__n);
- this->_M_end_of_storage = __q + (__n + _S_word_bit - 1)/_S_word_bit;
- this->_M_start = iterator(__q, 0);
- this->_M_finish = this->_M_start + difference_type(__n);
- }
- void _M_insert_aux(iterator __position, bool __x) {
- if (this->_M_finish._M_p != this->_M_end_of_storage) {
- std::copy_backward(__position, this->_M_finish, this->_M_finish + 1);
- *__position = __x;
- ++this->_M_finish;
- }
- else {
- size_type __len = size()
- ? 2 * size() : static_cast<size_type>(_S_word_bit);
- _Bit_type * __q = this->_M_bit_alloc(__len);
- iterator __i = std::copy(begin(), __position, iterator(__q, 0));
- *__i++ = __x;
- this->_M_finish = std::copy(__position, end(), __i);
- this->_M_deallocate();
- this->_M_end_of_storage = __q + (__len + _S_word_bit - 1)/_S_word_bit;
- this->_M_start = iterator(__q, 0);
- }
+ void _M_initialize(size_type __n)
+ {
+ _Bit_type* __q = this->_M_allocate(__n);
+ this->_M_impl._M_end_of_storage = __q
+ + (__n + _S_word_bit - 1) / _S_word_bit;
+ this->_M_impl._M_start = iterator(__q, 0);
+ this->_M_impl._M_finish = this->_M_impl._M_start + difference_type(__n);
}
-
- template <class _InputIterator>
+
+ void _M_insert_aux(iterator __position, bool __x)
+ {
+ if (this->_M_impl._M_finish._M_p != this->_M_impl._M_end_of_storage)
+ {
+ std::copy_backward(__position, this->_M_impl._M_finish,
+ this->_M_impl._M_finish + 1);
+ *__position = __x;
+ ++this->_M_impl._M_finish;
+ }
+ else
+ {
+ const size_type __len = size() ? 2 * size()
+ : static_cast<size_type>(_S_word_bit);
+ _Bit_type * __q = this->_M_allocate(__len);
+ iterator __i = std::copy(begin(), __position, iterator(__q, 0));
+ *__i++ = __x;
+ this->_M_impl._M_finish = std::copy(__position, end(), __i);
+ this->_M_deallocate();
+ this->_M_impl._M_end_of_storage = __q + (__len + _S_word_bit - 1)
+ / _S_word_bit;
+ this->_M_impl._M_start = iterator(__q, 0);
+ }
+ }
+
+ template<class _InputIterator>
void _M_initialize_range(_InputIterator __first, _InputIterator __last,
- input_iterator_tag) {
- this->_M_start = iterator();
- this->_M_finish = iterator();
- this->_M_end_of_storage = 0;
- for ( ; __first != __last; ++__first)
+ input_iterator_tag)
+ {
+ this->_M_impl._M_start = iterator();
+ this->_M_impl._M_finish = iterator();
+ this->_M_impl._M_end_of_storage = 0;
+ for ( ; __first != __last; ++__first)
push_back(*__first);
}
-
- template <class _ForwardIterator>
+
+ template<class _ForwardIterator>
void _M_initialize_range(_ForwardIterator __first, _ForwardIterator __last,
- forward_iterator_tag) {
- size_type __n = std::distance(__first, __last);
+ forward_iterator_tag)
+ {
+ const size_type __n = std::distance(__first, __last);
_M_initialize(__n);
- std::copy(__first, __last, this->_M_start);
- }
-
- template <class _InputIterator>
- void _M_insert_range(iterator __pos,
- _InputIterator __first, _InputIterator __last,
- input_iterator_tag) {
- for ( ; __first != __last; ++__first) {
- __pos = insert(__pos, *__first);
- ++__pos;
- }
+ std::copy(__first, __last, this->_M_impl._M_start);
}
-
- template <class _ForwardIterator>
- void _M_insert_range(iterator __position,
- _ForwardIterator __first, _ForwardIterator __last,
- forward_iterator_tag) {
- if (__first != __last) {
- size_type __n = std::distance(__first, __last);
- if (capacity() - size() >= __n) {
- std::copy_backward(__position, end(),
- this->_M_finish + difference_type(__n));
- std::copy(__first, __last, __position);
- this->_M_finish += difference_type(__n);
- }
- else {
- size_type __len = size() + std::max(size(), __n);
- _Bit_type * __q = this->_M_bit_alloc(__len);
- iterator __i = std::copy(begin(), __position, iterator(__q, 0));
- __i = std::copy(__first, __last, __i);
- this->_M_finish = std::copy(__position, end(), __i);
- this->_M_deallocate();
- this->_M_end_of_storage
- = __q + (__len + _S_word_bit - 1)/_S_word_bit;
- this->_M_start = iterator(__q, 0);
- }
- }
- }
-
+
+ template<class _InputIterator>
+ void _M_insert_range(iterator __pos, _InputIterator __first,
+ _InputIterator __last, input_iterator_tag)
+ {
+ for ( ; __first != __last; ++__first)
+ {
+ __pos = insert(__pos, *__first);
+ ++__pos;
+ }
+ }
+
+ template<class _ForwardIterator>
+ void _M_insert_range(iterator __position, _ForwardIterator __first,
+ _ForwardIterator __last, forward_iterator_tag)
+ {
+ if (__first != __last)
+ {
+ size_type __n = std::distance(__first, __last);
+ if (capacity() - size() >= __n)
+ {
+ std::copy_backward(__position, end(),
+ this->_M_impl._M_finish + difference_type(__n));
+ std::copy(__first, __last, __position);
+ this->_M_impl._M_finish += difference_type(__n);
+ }
+ else
+ {
+ const size_type __len = size() + std::max(size(), __n);
+ _Bit_type * __q = this->_M_allocate(__len);
+ iterator __i = std::copy(begin(), __position, iterator(__q, 0));
+ __i = std::copy(__first, __last, __i);
+ this->_M_impl._M_finish = std::copy(__position, end(), __i);
+ this->_M_deallocate();
+ this->_M_impl._M_end_of_storage = __q + (__len + _S_word_bit - 1)
+ / _S_word_bit;
+ this->_M_impl._M_start = iterator(__q, 0);
+ }
+ }
+ }
+
public:
- iterator begin() { return this->_M_start; }
- const_iterator begin() const { return this->_M_start; }
- iterator end() { return this->_M_finish; }
- const_iterator end() const { return this->_M_finish; }
-
- reverse_iterator rbegin() { return reverse_iterator(end()); }
- const_reverse_iterator rbegin() const {
- return const_reverse_iterator(end());
- }
- reverse_iterator rend() { return reverse_iterator(begin()); }
- const_reverse_iterator rend() const {
- return const_reverse_iterator(begin());
- }
-
- size_type size() const { return size_type(end() - begin()); }
- size_type max_size() const { return size_type(-1); }
- size_type capacity() const {
- return size_type(const_iterator(this->_M_end_of_storage, 0) - begin());
- }
- bool empty() const { return begin() == end(); }
-
+ iterator begin()
+ { return this->_M_impl._M_start; }
+
+ const_iterator begin() const
+ { return this->_M_impl._M_start; }
+
+ iterator end()
+ { return this->_M_impl._M_finish; }
+
+ const_iterator end() const
+ { return this->_M_impl._M_finish; }
+
+ reverse_iterator rbegin()
+ { return reverse_iterator(end()); }
+
+ const_reverse_iterator rbegin() const
+ { return const_reverse_iterator(end()); }
+
+ reverse_iterator rend()
+ { return reverse_iterator(begin()); }
+
+ const_reverse_iterator rend() const
+ { return const_reverse_iterator(begin()); }
+
+ size_type size() const
+ { return size_type(end() - begin()); }
+
+ size_type max_size() const
+ { return size_type(-1); }
+
+ size_type capacity() const
+ { return size_type(const_iterator(this->_M_impl._M_end_of_storage, 0)
+ - begin()); }
+ bool empty() const
+ { return begin() == end(); }
+
reference operator[](size_type __n)
- { return *(begin() + difference_type(__n)); }
+ { return *(begin() + difference_type(__n)); }
+
const_reference operator[](size_type __n) const
- { return *(begin() + difference_type(__n)); }
-
- void _M_range_check(size_type __n) const {
+ { return *(begin() + difference_type(__n)); }
+
+ void _M_range_check(size_type __n) const
+ {
if (__n >= this->size())
__throw_out_of_range(__N("vector<bool>::_M_range_check"));
}
-
+
reference at(size_type __n)
- { _M_range_check(__n); return (*this)[__n]; }
+ { _M_range_check(__n); return (*this)[__n]; }
+
const_reference at(size_type __n) const
- { _M_range_check(__n); return (*this)[__n]; }
-
+ { _M_range_check(__n); return (*this)[__n]; }
+
explicit vector(const allocator_type& __a = allocator_type())
- : _Bvector_base<_Alloc>(__a) {}
-
- vector(size_type __n, bool __value,
- const allocator_type& __a = allocator_type())
- : _Bvector_base<_Alloc>(__a)
+ : _Bvector_base<_Alloc>(__a) { }
+
+ vector(size_type __n, bool __value,
+ const allocator_type& __a = allocator_type())
+ : _Bvector_base<_Alloc>(__a)
{
_M_initialize(__n);
- std::fill(this->_M_start._M_p, this->_M_end_of_storage, __value ? ~0 : 0);
+ std::fill(this->_M_impl._M_start._M_p, this->_M_impl._M_end_of_storage,
+ __value ? ~0 : 0);
}
-
+
explicit vector(size_type __n)
- : _Bvector_base<_Alloc>(allocator_type())
+ : _Bvector_base<_Alloc>(allocator_type())
{
_M_initialize(__n);
- std::fill(this->_M_start._M_p, this->_M_end_of_storage, 0);
+ std::fill(this->_M_impl._M_start._M_p,
+ this->_M_impl._M_end_of_storage, 0);
}
-
- vector(const vector& __x) : _Bvector_base<_Alloc>(__x.get_allocator()) {
+
+ vector(const vector& __x) : _Bvector_base<_Alloc>(__x.get_allocator())
+ {
_M_initialize(__x.size());
- std::copy(__x.begin(), __x.end(), this->_M_start);
+ std::copy(__x.begin(), __x.end(), this->_M_impl._M_start);
}
-
+
// Check whether it's an integral type. If so, it's not an iterator.
-
- template <class _Integer>
- void _M_initialize_dispatch(_Integer __n, _Integer __x, __true_type) {
+ template<class _Integer>
+ void _M_initialize_dispatch(_Integer __n, _Integer __x, __true_type)
+ {
_M_initialize(__n);
- std::fill(this->_M_start._M_p, this->_M_end_of_storage, __x ? ~0 : 0);
- }
-
- template <class _InputIterator>
- void _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
- __false_type) {
- _M_initialize_range(__first, __last, std::__iterator_category(__first));
+ std::fill(this->_M_impl._M_start._M_p,
+ this->_M_impl._M_end_of_storage, __x ? ~0 : 0);
}
-
- template <class _InputIterator>
- vector(_InputIterator __first, _InputIterator __last,
- const allocator_type& __a = allocator_type())
- : _Bvector_base<_Alloc>(__a)
+
+ template<class _InputIterator>
+ void
+ _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
+ __false_type)
+ { _M_initialize_range(__first, __last,
+ std::__iterator_category(__first)); }
+
+ template<class _InputIterator>
+ vector(_InputIterator __first, _InputIterator __last,
+ const allocator_type& __a = allocator_type())
+ : _Bvector_base<_Alloc>(__a)
{
typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
_M_initialize_dispatch(__first, __last, _Integral());
}
-
+
~vector() { }
-
- vector& operator=(const vector& __x) {
- if (&__x == this) return *this;
- if (__x.size() > capacity()) {
- this->_M_deallocate();
- _M_initialize(__x.size());
- }
+
+ vector& operator=(const vector& __x)
+ {
+ if (&__x == this)
+ return *this;
+ if (__x.size() > capacity())
+ {
+ this->_M_deallocate();
+ _M_initialize(__x.size());
+ }
std::copy(__x.begin(), __x.end(), begin());
- this->_M_finish = begin() + difference_type(__x.size());
+ this->_M_impl._M_finish = begin() + difference_type(__x.size());
return *this;
}
-
+
// assign(), a generalized assignment member function. Two
// versions: one that takes a count, and one that takes a range.
// The range version is a member template, so we dispatch on whether
// or not the type is an integer.
-
- void _M_fill_assign(size_t __n, bool __x) {
- if (__n > size()) {
- std::fill(this->_M_start._M_p, this->_M_end_of_storage, __x ? ~0 : 0);
- insert(end(), __n - size(), __x);
- }
- else {
- erase(begin() + __n, end());
- std::fill(this->_M_start._M_p, this->_M_end_of_storage, __x ? ~0 : 0);
- }
+
+ void _M_fill_assign(size_t __n, bool __x)
+ {
+ if (__n > size())
+ {
+ std::fill(this->_M_impl._M_start._M_p,
+ this->_M_impl._M_end_of_storage, __x ? ~0 : 0);
+ insert(end(), __n - size(), __x);
+ }
+ else
+ {
+ erase(begin() + __n, end());
+ std::fill(this->_M_impl._M_start._M_p,
+ this->_M_impl._M_end_of_storage, __x ? ~0 : 0);
+ }
}
-
- void assign(size_t __n, bool __x) { _M_fill_assign(__n, __x); }
-
- template <class _InputIterator>
- void assign(_InputIterator __first, _InputIterator __last) {
+
+ void assign(size_t __n, bool __x)
+ { _M_fill_assign(__n, __x); }
+
+ template<class _InputIterator>
+ void assign(_InputIterator __first, _InputIterator __last)
+ {
typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
_M_assign_dispatch(__first, __last, _Integral());
}
-
- template <class _Integer>
+
+ template<class _Integer>
void _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
- { _M_fill_assign((size_t) __n, (bool) __val); }
-
- template <class _InputIterator>
- void _M_assign_dispatch(_InputIterator __first, _InputIterator __last, __false_type)
- { _M_assign_aux(__first, __last, std::__iterator_category(__first)); }
-
- template <class _InputIterator>
+ { _M_fill_assign((size_t) __n, (bool) __val); }
+
+ template<class _InputIterator>
+ void _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
+ __false_type)
+ { _M_assign_aux(__first, __last, std::__iterator_category(__first)); }
+
+ template<class _InputIterator>
void _M_assign_aux(_InputIterator __first, _InputIterator __last,
- input_iterator_tag) {
+ input_iterator_tag)
+ {
iterator __cur = begin();
for ( ; __first != __last && __cur != end(); ++__cur, ++__first)
*__cur = *__first;
@@ -545,141 +706,171 @@ template <typename _Alloc>
else
insert(end(), __first, __last);
}
-
- template <class _ForwardIterator>
+
+ template<class _ForwardIterator>
void _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
- forward_iterator_tag) {
- size_type __len = std::distance(__first, __last);
+ forward_iterator_tag)
+ {
+ const size_type __len = std::distance(__first, __last);
if (__len < size())
erase(std::copy(__first, __last, begin()), end());
- else {
- _ForwardIterator __mid = __first;
- std::advance(__mid, size());
- std::copy(__first, __mid, begin());
- insert(end(), __mid, __last);
- }
- }
-
- void reserve(size_type __n) {
+ else
+ {
+ _ForwardIterator __mid = __first;
+ std::advance(__mid, size());
+ std::copy(__first, __mid, begin());
+ insert(end(), __mid, __last);
+ }
+ }
+
+ void reserve(size_type __n)
+ {
if (__n > this->max_size())
__throw_length_error(__N("vector::reserve"));
- if (this->capacity() < __n) {
- _Bit_type * __q = this->_M_bit_alloc(__n);
- this->_M_finish = std::copy(begin(), end(), iterator(__q, 0));
- this->_M_deallocate();
- this->_M_start = iterator(__q, 0);
- this->_M_end_of_storage = __q + (__n + _S_word_bit - 1)/_S_word_bit;
- }
+ if (this->capacity() < __n)
+ {
+ _Bit_type* __q = this->_M_allocate(__n);
+ this->_M_impl._M_finish = std::copy(begin(), end(),
+ iterator(__q, 0));
+ this->_M_deallocate();
+ this->_M_impl._M_start = iterator(__q, 0);
+ this->_M_impl._M_end_of_storage = __q + (__n + _S_word_bit - 1) / _S_word_bit;
+ }
}
-
- reference front() { return *begin(); }
- const_reference front() const { return *begin(); }
- reference back() { return *(end() - 1); }
- const_reference back() const { return *(end() - 1); }
- void push_back(bool __x) {
- if (this->_M_finish._M_p != this->_M_end_of_storage)
- *this->_M_finish++ = __x;
+
+ reference front()
+ { return *begin(); }
+
+ const_reference front() const
+ { return *begin(); }
+
+ reference back()
+ { return *(end() - 1); }
+
+ const_reference back() const
+ { return *(end() - 1); }
+
+ void push_back(bool __x)
+ {
+ if (this->_M_impl._M_finish._M_p != this->_M_impl._M_end_of_storage)
+ *this->_M_impl._M_finish++ = __x;
else
_M_insert_aux(end(), __x);
}
- void swap(vector<bool, _Alloc>& __x) {
- std::swap(this->_M_start, __x._M_start);
- std::swap(this->_M_finish, __x._M_finish);
- std::swap(this->_M_end_of_storage, __x._M_end_of_storage);
+
+ void swap(vector<bool, _Alloc>& __x)
+ {
+ std::swap(this->_M_impl._M_start, __x._M_impl._M_start);
+ std::swap(this->_M_impl._M_finish, __x._M_impl._M_finish);
+ std::swap(this->_M_impl._M_end_of_storage,
+ __x._M_impl._M_end_of_storage);
}
// [23.2.5]/1, third-to-last entry in synopsis listing
- static void swap(reference __x, reference __y) {
+ static void swap(reference __x, reference __y)
+ {
bool __tmp = __x;
__x = __y;
__y = __tmp;
}
- iterator insert(iterator __position, bool __x = bool()) {
- difference_type __n = __position - begin();
- if (this->_M_finish._M_p != this->_M_end_of_storage
+ iterator insert(iterator __position, bool __x = bool())
+ {
+ const difference_type __n = __position - begin();
+ if (this->_M_impl._M_finish._M_p != this->_M_impl._M_end_of_storage
&& __position == end())
- *this->_M_finish++ = __x;
+ *this->_M_impl._M_finish++ = __x;
else
_M_insert_aux(__position, __x);
return begin() + __n;
}
-
+
// Check whether it's an integral type. If so, it's not an iterator.
-
- template <class _Integer>
+
+ template<class _Integer>
void _M_insert_dispatch(iterator __pos, _Integer __n, _Integer __x,
- __true_type) {
- _M_fill_insert(__pos, __n, __x);
- }
-
- template <class _InputIterator>
+ __true_type)
+ { _M_fill_insert(__pos, __n, __x); }
+
+ template<class _InputIterator>
void _M_insert_dispatch(iterator __pos,
_InputIterator __first, _InputIterator __last,
- __false_type) {
- _M_insert_range(__pos, __first, __last, std::__iterator_category(__first));
- }
-
- template <class _InputIterator>
+ __false_type)
+ { _M_insert_range(__pos, __first, __last,
+ std::__iterator_category(__first)); }
+
+ template<class _InputIterator>
void insert(iterator __position,
- _InputIterator __first, _InputIterator __last) {
+ _InputIterator __first, _InputIterator __last)
+ {
typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
_M_insert_dispatch(__position, __first, __last, _Integral());
}
-
- void _M_fill_insert(iterator __position, size_type __n, bool __x) {
- if (__n == 0) return;
- if (capacity() - size() >= __n) {
- std::copy_backward(__position, end(),
- this->_M_finish + difference_type(__n));
- std::fill(__position, __position + difference_type(__n), __x);
- this->_M_finish += difference_type(__n);
- }
- else {
- size_type __len = size() + std::max(size(), __n);
- _Bit_type * __q = this->_M_bit_alloc(__len);
- iterator __i = std::copy(begin(), __position, iterator(__q, 0));
- std::fill_n(__i, __n, __x);
- this->_M_finish = std::copy(__position, end(), __i + difference_type(__n));
- this->_M_deallocate();
- this->_M_end_of_storage = __q + (__len + _S_word_bit - 1)/_S_word_bit;
- this->_M_start = iterator(__q, 0);
- }
- }
-
- void insert(iterator __position, size_type __n, bool __x) {
- _M_fill_insert(__position, __n, __x);
- }
-
- void pop_back() { --this->_M_finish; }
- iterator erase(iterator __position) {
+
+ void _M_fill_insert(iterator __position, size_type __n, bool __x)
+ {
+ if (__n == 0)
+ return;
+ if (capacity() - size() >= __n)
+ {
+ std::copy_backward(__position, end(),
+ this->_M_impl._M_finish + difference_type(__n));
+ std::fill(__position, __position + difference_type(__n), __x);
+ this->_M_impl._M_finish += difference_type(__n);
+ }
+ else
+ {
+ const size_type __len = size() + std::max(size(), __n);
+ _Bit_type * __q = this->_M_allocate(__len);
+ iterator __i = std::copy(begin(), __position, iterator(__q, 0));
+ std::fill_n(__i, __n, __x);
+ this->_M_impl._M_finish = std::copy(__position, end(),
+ __i + difference_type(__n));
+ this->_M_deallocate();
+ this->_M_impl._M_end_of_storage = __q + (__len + _S_word_bit - 1)
+ / _S_word_bit;
+ this->_M_impl._M_start = iterator(__q, 0);
+ }
+ }
+
+ void insert(iterator __position, size_type __n, bool __x)
+ { _M_fill_insert(__position, __n, __x); }
+
+ void pop_back()
+ { --this->_M_impl._M_finish; }
+
+ iterator erase(iterator __position)
+ {
if (__position + 1 != end())
std::copy(__position + 1, end(), __position);
- --this->_M_finish;
+ --this->_M_impl._M_finish;
return __position;
}
- iterator erase(iterator __first, iterator __last) {
- this->_M_finish = std::copy(__last, end(), __first);
+
+ iterator erase(iterator __first, iterator __last)
+ {
+ this->_M_impl._M_finish = std::copy(__last, end(), __first);
return __first;
}
- void resize(size_type __new_size, bool __x = bool()) {
- if (__new_size < size())
+
+ void resize(size_type __new_size, bool __x = bool())
+ {
+ if (__new_size < size())
erase(begin() + difference_type(__new_size), end());
else
insert(end(), __new_size - size(), __x);
}
- void flip() {
- for (_Bit_type * __p = this->_M_start._M_p;
- __p != this->_M_end_of_storage;
- ++__p)
+
+ void flip()
+ {
+ for (_Bit_type * __p = this->_M_impl._M_start._M_p;
+ __p != this->_M_impl._M_end_of_storage; ++__p)
*__p = ~*__p;
}
-
- void clear() { erase(begin(), end()); }
- };
- // This typedef is non-standard. It is provided for backward compatibility.
- typedef vector<bool, __alloc> bit_vector;
-} // namespace __gnu_norm
+ void clear()
+ { erase(begin(), end()); }
+ };
+} // namespace std
-#endif /* _BVECTOR_H */
+#endif
diff --git a/libstdc++-v3/include/bits/stl_construct.h b/libstdc++-v3/include/bits/stl_construct.h
index c705c003b5d..afb33879852 100644
--- a/libstdc++-v3/include/bits/stl_construct.h
+++ b/libstdc++-v3/include/bits/stl_construct.h
@@ -1,6 +1,6 @@
// nonstandard construct and destroy functions -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -78,9 +78,9 @@ namespace std
{
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 402. wrong new expression in [some_]allocator::construct
- ::new(static_cast<void*>(__p)) _T1(__value);
+ ::new(static_cast<void*>(__p)) _T1(__value);
}
-
+
/**
* @if maint
* Constructs an object in existing memory by invoking an allocated
@@ -92,7 +92,7 @@ namespace std
_Construct(_T1* __p)
{
// _GLIBCXX_RESOLVE_LIB_DEFECTS
- // 402. wrong new expression in [some_]allocator::construct
+ // 402. wrong new expression in [some_]allocator::construct
::new(static_cast<void*>(__p)) _T1();
}
@@ -108,14 +108,15 @@ namespace std
/**
* @if maint
- * Destroy a range of objects with nontrivial destructors.
+ * Destroy a range of objects with nontrivial destructors.
*
* This is a helper function used only by _Destroy().
* @endif
*/
template<typename _ForwardIterator>
inline void
- __destroy_aux(_ForwardIterator __first, _ForwardIterator __last, __false_type)
+ __destroy_aux(_ForwardIterator __first, _ForwardIterator __last,
+ __false_type)
{ for ( ; __first != __last; ++__first) std::_Destroy(&*__first); }
/**
@@ -127,7 +128,7 @@ namespace std
* This is a helper function used only by _Destroy().
* @endif
*/
- template<typename _ForwardIterator>
+ template<typename _ForwardIterator>
inline void
__destroy_aux(_ForwardIterator, _ForwardIterator, __true_type)
{ }
diff --git a/libstdc++-v3/include/bits/stl_deque.h b/libstdc++-v3/include/bits/stl_deque.h
index 64a24b1c027..c2f01a00d31 100644
--- a/libstdc++-v3/include/bits/stl_deque.h
+++ b/libstdc++-v3/include/bits/stl_deque.h
@@ -1,6 +1,6 @@
// Deque implementation -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -65,8 +65,8 @@
#include <bits/stl_iterator_base_types.h>
#include <bits/stl_iterator_base_funcs.h>
-namespace __gnu_norm
-{
+namespace _GLIBCXX_STD
+{
/**
* @if maint
* @brief This function controls the size of memory nodes.
@@ -79,11 +79,11 @@ namespace __gnu_norm
* been done since inheriting the SGI code.
* @endif
*/
- inline size_t
- __deque_buf_size(size_t __size)
+ inline size_t
+ __deque_buf_size(size_t __size)
{ return __size < 512 ? size_t(512 / __size) : size_t(1); }
-
-
+
+
/**
* @brief A deque::iterator.
*
@@ -98,240 +98,245 @@ namespace __gnu_norm
*/
template<typename _Tp, typename _Ref, typename _Ptr>
struct _Deque_iterator
- {
- typedef _Deque_iterator<_Tp, _Tp&, _Tp*> iterator;
- typedef _Deque_iterator<_Tp, const _Tp&, const _Tp*> const_iterator;
- static size_t _S_buffer_size() { return __deque_buf_size(sizeof(_Tp)); }
-
- typedef random_access_iterator_tag iterator_category;
- typedef _Tp value_type;
- typedef _Ptr pointer;
- typedef _Ref reference;
- typedef size_t size_type;
- typedef ptrdiff_t difference_type;
- typedef _Tp** _Map_pointer;
- typedef _Deque_iterator _Self;
-
- _Tp* _M_cur;
- _Tp* _M_first;
- _Tp* _M_last;
- _Map_pointer _M_node;
-
- _Deque_iterator(_Tp* __x, _Map_pointer __y)
+ {
+ typedef _Deque_iterator<_Tp, _Tp&, _Tp*> iterator;
+ typedef _Deque_iterator<_Tp, const _Tp&, const _Tp*> const_iterator;
+
+ static size_t _S_buffer_size()
+ { return __deque_buf_size(sizeof(_Tp)); }
+
+ typedef random_access_iterator_tag iterator_category;
+ typedef _Tp value_type;
+ typedef _Ptr pointer;
+ typedef _Ref reference;
+ typedef size_t size_type;
+ typedef ptrdiff_t difference_type;
+ typedef _Tp** _Map_pointer;
+ typedef _Deque_iterator _Self;
+
+ _Tp* _M_cur;
+ _Tp* _M_first;
+ _Tp* _M_last;
+ _Map_pointer _M_node;
+
+ _Deque_iterator(_Tp* __x, _Map_pointer __y)
: _M_cur(__x), _M_first(*__y),
_M_last(*__y + _S_buffer_size()), _M_node(__y) {}
- _Deque_iterator() : _M_cur(0), _M_first(0), _M_last(0), _M_node(0) {}
- _Deque_iterator(const iterator& __x)
- : _M_cur(__x._M_cur), _M_first(__x._M_first),
+
+ _Deque_iterator() : _M_cur(0), _M_first(0), _M_last(0), _M_node(0) {}
+
+ _Deque_iterator(const iterator& __x)
+ : _M_cur(__x._M_cur), _M_first(__x._M_first),
_M_last(__x._M_last), _M_node(__x._M_node) {}
-
- reference operator*() const { return *_M_cur; }
- pointer operator->() const { return _M_cur; }
-
- _Self& operator++() {
- ++_M_cur;
- if (_M_cur == _M_last) {
- _M_set_node(_M_node + 1);
- _M_cur = _M_first;
+
+ reference
+ operator*() const
+ { return *_M_cur; }
+
+ pointer
+ operator->() const
+ { return _M_cur; }
+
+ _Self&
+ operator++()
+ {
+ ++_M_cur;
+ if (_M_cur == _M_last)
+ {
+ _M_set_node(_M_node + 1);
+ _M_cur = _M_first;
+ }
+ return *this;
}
- return *this;
- }
- _Self operator++(int) {
- _Self __tmp = *this;
- ++*this;
- return __tmp;
- }
-
- _Self& operator--() {
- if (_M_cur == _M_first) {
- _M_set_node(_M_node - 1);
- _M_cur = _M_last;
+
+ _Self
+ operator++(int)
+ {
+ _Self __tmp = *this;
+ ++*this;
+ return __tmp;
}
- --_M_cur;
- return *this;
- }
- _Self operator--(int) {
- _Self __tmp = *this;
- --*this;
- return __tmp;
- }
-
- _Self& operator+=(difference_type __n)
- {
- difference_type __offset = __n + (_M_cur - _M_first);
- if (__offset >= 0 && __offset < difference_type(_S_buffer_size()))
- _M_cur += __n;
- else {
- difference_type __node_offset =
- __offset > 0 ? __offset / difference_type(_S_buffer_size())
- : -difference_type((-__offset - 1) / _S_buffer_size()) - 1;
- _M_set_node(_M_node + __node_offset);
- _M_cur = _M_first +
- (__offset - __node_offset * difference_type(_S_buffer_size()));
+
+ _Self&
+ operator--()
+ {
+ if (_M_cur == _M_first)
+ {
+ _M_set_node(_M_node - 1);
+ _M_cur = _M_last;
+ }
+ --_M_cur;
+ return *this;
}
- return *this;
- }
-
- _Self operator+(difference_type __n) const
- {
- _Self __tmp = *this;
- return __tmp += __n;
- }
-
- _Self& operator-=(difference_type __n) { return *this += -__n; }
-
- _Self operator-(difference_type __n) const {
- _Self __tmp = *this;
- return __tmp -= __n;
- }
-
- reference operator[](difference_type __n) const { return *(*this + __n); }
-
- /** @if maint
- * Prepares to traverse new_node. Sets everything except _M_cur, which
- * should therefore be set by the caller immediately afterwards, based on
- * _M_first and _M_last.
- * @endif
- */
- void
- _M_set_node(_Map_pointer __new_node)
- {
- _M_node = __new_node;
- _M_first = *__new_node;
- _M_last = _M_first + difference_type(_S_buffer_size());
- }
- };
-
+
+ _Self
+ operator--(int)
+ {
+ _Self __tmp = *this;
+ --*this;
+ return __tmp;
+ }
+
+ _Self&
+ operator+=(difference_type __n)
+ {
+ const difference_type __offset = __n + (_M_cur - _M_first);
+ if (__offset >= 0 && __offset < difference_type(_S_buffer_size()))
+ _M_cur += __n;
+ else
+ {
+ const difference_type __node_offset =
+ __offset > 0 ? __offset / difference_type(_S_buffer_size())
+ : -difference_type((-__offset - 1)
+ / _S_buffer_size()) - 1;
+ _M_set_node(_M_node + __node_offset);
+ _M_cur = _M_first + (__offset - __node_offset
+ * difference_type(_S_buffer_size()));
+ }
+ return *this;
+ }
+
+ _Self
+ operator+(difference_type __n) const
+ {
+ _Self __tmp = *this;
+ return __tmp += __n;
+ }
+
+ _Self&
+ operator-=(difference_type __n)
+ { return *this += -__n; }
+
+ _Self
+ operator-(difference_type __n) const
+ {
+ _Self __tmp = *this;
+ return __tmp -= __n;
+ }
+
+ reference
+ operator[](difference_type __n) const
+ { return *(*this + __n); }
+
+ /** @if maint
+ * Prepares to traverse new_node. Sets everything except _M_cur, which
+ * should therefore be set by the caller immediately afterwards, based on
+ * _M_first and _M_last.
+ * @endif
+ */
+ void
+ _M_set_node(_Map_pointer __new_node)
+ {
+ _M_node = __new_node;
+ _M_first = *__new_node;
+ _M_last = _M_first + difference_type(_S_buffer_size());
+ }
+ };
+
// Note: we also provide overloads whose operands are of the same type in
// order to avoid ambiguous overload resolution when std::rel_ops operators
// are in scope (for additional details, see libstdc++/3628)
template<typename _Tp, typename _Ref, typename _Ptr>
- inline bool
- operator==(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
- const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
- {
- return __x._M_cur == __y._M_cur;
- }
-
+ inline bool
+ operator==(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
+ const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
+ { return __x._M_cur == __y._M_cur; }
+
template<typename _Tp, typename _RefL, typename _PtrL,
- typename _RefR, typename _PtrR>
- inline bool
- operator==(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
- const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
- {
- return __x._M_cur == __y._M_cur;
- }
-
+ typename _RefR, typename _PtrR>
+ inline bool
+ operator==(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
+ const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
+ { return __x._M_cur == __y._M_cur; }
+
template<typename _Tp, typename _Ref, typename _Ptr>
- inline bool
- operator!=(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
- const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
- {
- return !(__x == __y);
- }
-
+ inline bool
+ operator!=(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
+ const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
+ { return !(__x == __y); }
+
template<typename _Tp, typename _RefL, typename _PtrL,
- typename _RefR, typename _PtrR>
- inline bool
- operator!=(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
- const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
- {
- return !(__x == __y);
- }
-
+ typename _RefR, typename _PtrR>
+ inline bool
+ operator!=(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
+ const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
+ { return !(__x == __y); }
+
template<typename _Tp, typename _Ref, typename _Ptr>
- inline bool
- operator<(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
- const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
- {
- return (__x._M_node == __y._M_node) ?
- (__x._M_cur < __y._M_cur) : (__x._M_node < __y._M_node);
- }
-
+ inline bool
+ operator<(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
+ const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
+ { return (__x._M_node == __y._M_node) ? (__x._M_cur < __y._M_cur)
+ : (__x._M_node < __y._M_node); }
+
template<typename _Tp, typename _RefL, typename _PtrL,
- typename _RefR, typename _PtrR>
- inline bool
- operator<(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
- const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
- {
- return (__x._M_node == __y._M_node) ?
- (__x._M_cur < __y._M_cur) : (__x._M_node < __y._M_node);
- }
-
+ typename _RefR, typename _PtrR>
+ inline bool
+ operator<(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
+ const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
+ { return (__x._M_node == __y._M_node) ? (__x._M_cur < __y._M_cur)
+ : (__x._M_node < __y._M_node); }
+
template<typename _Tp, typename _Ref, typename _Ptr>
- inline bool
- operator>(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
- const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
- {
- return __y < __x;
- }
-
+ inline bool
+ operator>(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
+ const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
+ { return __y < __x; }
+
template<typename _Tp, typename _RefL, typename _PtrL,
- typename _RefR, typename _PtrR>
- inline bool
- operator>(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
- const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
- {
- return __y < __x;
- }
-
+ typename _RefR, typename _PtrR>
+ inline bool
+ operator>(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
+ const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
+ { return __y < __x; }
+
template<typename _Tp, typename _Ref, typename _Ptr>
- inline bool
- operator<=(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
- const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
- {
- return !(__y < __x);
- }
-
+ inline bool
+ operator<=(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
+ const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
+ { return !(__y < __x); }
+
template<typename _Tp, typename _RefL, typename _PtrL,
- typename _RefR, typename _PtrR>
- inline bool
- operator<=(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
- const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
- {
- return !(__y < __x);
- }
-
+ typename _RefR, typename _PtrR>
+ inline bool
+ operator<=(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
+ const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
+ { return !(__y < __x); }
+
template<typename _Tp, typename _Ref, typename _Ptr>
- inline bool
- operator>=(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
- const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
- {
- return !(__x < __y);
- }
-
+ inline bool
+ operator>=(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
+ const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
+ { return !(__x < __y); }
+
template<typename _Tp, typename _RefL, typename _PtrL,
- typename _RefR, typename _PtrR>
- inline bool
- operator>=(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
- const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
- {
- return !(__x < __y);
- }
-
+ typename _RefR, typename _PtrR>
+ inline bool
+ operator>=(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
+ const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
+ { return !(__x < __y); }
+
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// According to the resolution of DR179 not only the various comparison
// operators but also operator- must accept mixed iterator/const_iterator
// parameters.
template<typename _Tp, typename _RefL, typename _PtrL,
- typename _RefR, typename _PtrR>
- inline typename _Deque_iterator<_Tp, _RefL, _PtrL>::difference_type
- operator-(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
- const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
- {
- return typename _Deque_iterator<_Tp, _RefL, _PtrL>::difference_type
- (_Deque_iterator<_Tp, _RefL, _PtrL>::_S_buffer_size()) *
- (__x._M_node - __y._M_node - 1) + (__x._M_cur - __x._M_first) +
- (__y._M_last - __y._M_cur);
- }
-
+ typename _RefR, typename _PtrR>
+ inline typename _Deque_iterator<_Tp, _RefL, _PtrL>::difference_type
+ operator-(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
+ const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
+ {
+ return typename _Deque_iterator<_Tp, _RefL, _PtrL>::difference_type
+ (_Deque_iterator<_Tp, _RefL, _PtrL>::_S_buffer_size())
+ * (__x._M_node - __y._M_node - 1) + (__x._M_cur - __x._M_first)
+ + (__y._M_last - __y._M_cur);
+ }
+
template<typename _Tp, typename _Ref, typename _Ptr>
- inline _Deque_iterator<_Tp, _Ref, _Ptr>
- operator+(ptrdiff_t __n, const _Deque_iterator<_Tp, _Ref, _Ptr>& __x)
- {
- return __x + __n;
- }
-
+ inline _Deque_iterator<_Tp, _Ref, _Ptr>
+ operator+(ptrdiff_t __n, const _Deque_iterator<_Tp, _Ref, _Ptr>& __x)
+ { return __x + __n; }
+
/**
* @if maint
* Deque base class. This class provides the unified face for %deque's
@@ -346,71 +351,82 @@ namespace __gnu_norm
*/
template<typename _Tp, typename _Alloc>
class _Deque_base
- : public _Alloc
- {
- public:
- typedef _Alloc allocator_type;
- allocator_type get_allocator() const
- { return *static_cast<const _Alloc*>(this); }
-
- typedef _Deque_iterator<_Tp,_Tp&,_Tp*> iterator;
- typedef _Deque_iterator<_Tp,const _Tp&,const _Tp*> const_iterator;
-
- _Deque_base(const allocator_type& __a, size_t __num_elements)
- : _Alloc(__a), _M_start(), _M_finish()
+ {
+ public:
+ typedef _Alloc allocator_type;
+
+ allocator_type
+ get_allocator() const
+ { return *static_cast<const _Alloc*>(&this->_M_impl); }
+
+ typedef _Deque_iterator<_Tp,_Tp&,_Tp*> iterator;
+ typedef _Deque_iterator<_Tp,const _Tp&,const _Tp*> const_iterator;
+
+ _Deque_base(const allocator_type& __a, size_t __num_elements)
+ : _M_impl(__a)
{ _M_initialize_map(__num_elements); }
- _Deque_base(const allocator_type& __a)
- : _Alloc(__a), _M_start(), _M_finish() {}
- ~_Deque_base();
- protected:
- typedef typename _Alloc::template rebind<_Tp*>::other _Map_alloc_type;
- _Map_alloc_type _M_get_map_allocator() const
+ _Deque_base(const allocator_type& __a)
+ : _M_impl(__a)
+ { }
+
+ ~_Deque_base();
+
+ protected:
+ //This struct encapsulates the implementation of the std::deque
+ //standard container and at the same time makes use of the EBO
+ //for empty allocators.
+ struct _Deque_impl
+ : public _Alloc {
+ _Tp** _M_map;
+ size_t _M_map_size;
+ iterator _M_start;
+ iterator _M_finish;
+
+ _Deque_impl(const _Alloc& __a)
+ : _Alloc(__a), _M_map(0), _M_map_size(0), _M_start(), _M_finish()
+ { }
+ };
+
+ typedef typename _Alloc::template rebind<_Tp*>::other _Map_alloc_type;
+ _Map_alloc_type _M_get_map_allocator() const
{ return _Map_alloc_type(this->get_allocator()); }
- _Tp*
- _M_allocate_node()
- {
- return _Alloc::allocate(__deque_buf_size(sizeof(_Tp)));
- }
-
- void
- _M_deallocate_node(_Tp* __p)
- {
- _Alloc::deallocate(__p, __deque_buf_size(sizeof(_Tp)));
- }
-
- _Tp**
- _M_allocate_map(size_t __n)
+ _Tp*
+ _M_allocate_node()
+ { return _M_impl._Alloc::allocate(__deque_buf_size(sizeof(_Tp))); }
+
+ void
+ _M_deallocate_node(_Tp* __p)
+ { _M_impl._Alloc::deallocate(__p, __deque_buf_size(sizeof(_Tp))); }
+
+ _Tp**
+ _M_allocate_map(size_t __n)
{ return _M_get_map_allocator().allocate(__n); }
-
- void
- _M_deallocate_map(_Tp** __p, size_t __n)
+
+ void
+ _M_deallocate_map(_Tp** __p, size_t __n)
{ _M_get_map_allocator().deallocate(__p, __n); }
- protected:
- void _M_initialize_map(size_t);
- void _M_create_nodes(_Tp** __nstart, _Tp** __nfinish);
- void _M_destroy_nodes(_Tp** __nstart, _Tp** __nfinish);
- enum { _S_initial_map_size = 8 };
-
- _Tp** _M_map;
- size_t _M_map_size;
- iterator _M_start;
- iterator _M_finish;
- };
-
-
+ protected:
+ void _M_initialize_map(size_t);
+ void _M_create_nodes(_Tp** __nstart, _Tp** __nfinish);
+ void _M_destroy_nodes(_Tp** __nstart, _Tp** __nfinish);
+ enum { _S_initial_map_size = 8 };
+
+ _Deque_impl _M_impl;
+ };
+
template<typename _Tp, typename _Alloc>
_Deque_base<_Tp,_Alloc>::~_Deque_base()
{
- if (this->_M_map)
+ if (this->_M_impl._M_map)
{
- _M_destroy_nodes(_M_start._M_node, _M_finish._M_node + 1);
- _M_deallocate_map(this->_M_map, this->_M_map_size);
+ _M_destroy_nodes(this->_M_impl._M_start._M_node, this->_M_impl._M_finish._M_node + 1);
+ _M_deallocate_map(this->_M_impl._M_map, this->_M_impl._M_map_size);
}
}
-
+
/**
* @if maint
* @brief Layout storage.
@@ -422,65 +438,65 @@ namespace __gnu_norm
* @endif
*/
template<typename _Tp, typename _Alloc>
- void
- _Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t __num_elements)
- {
- size_t __num_nodes =
- __num_elements / __deque_buf_size(sizeof(_Tp)) + 1;
-
- this->_M_map_size
- = std::max((size_t) _S_initial_map_size, __num_nodes + 2);
- this->_M_map = _M_allocate_map(this->_M_map_size);
-
- // For "small" maps (needing less than _M_map_size nodes), allocation
- // starts in the middle elements and grows outwards. So nstart may be the
- // beginning of _M_map, but for small maps it may be as far in as _M_map+3.
-
- _Tp** __nstart = this->_M_map + (this->_M_map_size - __num_nodes) / 2;
- _Tp** __nfinish = __nstart + __num_nodes;
-
- try
- { _M_create_nodes(__nstart, __nfinish); }
- catch(...)
- {
- _M_deallocate_map(this->_M_map, this->_M_map_size);
- this->_M_map = 0;
- this->_M_map_size = 0;
- __throw_exception_again;
- }
-
- _M_start._M_set_node(__nstart);
- _M_finish._M_set_node(__nfinish - 1);
- _M_start._M_cur = _M_start._M_first;
- _M_finish._M_cur = _M_finish._M_first +
- __num_elements % __deque_buf_size(sizeof(_Tp));
- }
-
+ void
+ _Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t __num_elements)
+ {
+ size_t __num_nodes = __num_elements / __deque_buf_size(sizeof(_Tp)) + 1;
+
+ this->_M_impl._M_map_size = std::max((size_t) _S_initial_map_size,
+ __num_nodes + 2);
+ this->_M_impl._M_map = _M_allocate_map(this->_M_impl._M_map_size);
+
+ // For "small" maps (needing less than _M_map_size nodes), allocation
+ // starts in the middle elements and grows outwards. So nstart may be
+ // the beginning of _M_map, but for small maps it may be as far in as
+ // _M_map+3.
+
+ _Tp** __nstart = this->_M_impl._M_map + (this->_M_impl._M_map_size - __num_nodes) / 2;
+ _Tp** __nfinish = __nstart + __num_nodes;
+
+ try
+ { _M_create_nodes(__nstart, __nfinish); }
+ catch(...)
+ {
+ _M_deallocate_map(this->_M_impl._M_map, this->_M_impl._M_map_size);
+ this->_M_impl._M_map = 0;
+ this->_M_impl._M_map_size = 0;
+ __throw_exception_again;
+ }
+
+ this->_M_impl._M_start._M_set_node(__nstart);
+ this->_M_impl._M_finish._M_set_node(__nfinish - 1);
+ this->_M_impl._M_start._M_cur = _M_impl._M_start._M_first;
+ this->_M_impl._M_finish._M_cur = this->_M_impl._M_finish._M_first + __num_elements
+ % __deque_buf_size(sizeof(_Tp));
+ }
+
template<typename _Tp, typename _Alloc>
- void _Deque_base<_Tp,_Alloc>::_M_create_nodes(_Tp** __nstart, _Tp** __nfinish)
- {
- _Tp** __cur;
- try
- {
- for (__cur = __nstart; __cur < __nfinish; ++__cur)
- *__cur = this->_M_allocate_node();
- }
- catch(...)
- {
- _M_destroy_nodes(__nstart, __cur);
- __throw_exception_again;
- }
- }
-
+ void
+ _Deque_base<_Tp,_Alloc>::_M_create_nodes(_Tp** __nstart, _Tp** __nfinish)
+ {
+ _Tp** __cur;
+ try
+ {
+ for (__cur = __nstart; __cur < __nfinish; ++__cur)
+ *__cur = this->_M_allocate_node();
+ }
+ catch(...)
+ {
+ _M_destroy_nodes(__nstart, __cur);
+ __throw_exception_again;
+ }
+ }
+
template<typename _Tp, typename _Alloc>
- void
- _Deque_base<_Tp,_Alloc>::_M_destroy_nodes(_Tp** __nstart, _Tp** __nfinish)
- {
- for (_Tp** __n = __nstart; __n < __nfinish; ++__n)
- _M_deallocate_node(*__n);
- }
-
-
+ void
+ _Deque_base<_Tp,_Alloc>::_M_destroy_nodes(_Tp** __nstart, _Tp** __nfinish)
+ {
+ for (_Tp** __n = __nstart; __n < __nfinish; ++__n)
+ _M_deallocate_node(*__n);
+ }
+
/**
* @brief A standard container using fixed-size memory allocation and
* constant-time manipulation of elements at either end.
@@ -500,15 +516,15 @@ namespace __gnu_norm
*
* @if maint
* Here's how a deque<Tp> manages memory. Each deque has 4 members:
- *
+ *
* - Tp** _M_map
* - size_t _M_map_size
* - iterator _M_start, _M_finish
- *
+ *
* map_size is at least 8. %map is an array of map_size pointers-to-"nodes".
* (The name %map has nothing to do with the std::map class, and "nodes"
* should not be confused with std::list's usage of "node".)
- *
+ *
* A "node" has no specific type name as such, but it is referred to as
* "node" in this file. It is a simple array-of-Tp. If Tp is very large,
* there will be one Tp element per node (i.e., an "array" of one).
@@ -516,11 +532,11 @@ namespace __gnu_norm
* larger the Tp, the fewer Tp's will fit in a node. The goal here is to
* keep the total size of a node relatively small and constant over different
* Tp's, to improve allocator efficiency.
- *
+ *
* **** As I write this, the nodes are /not/ allocated using the high-speed
* memory pool. There are 20 hours left in the year; perhaps I can fix
* this before 2002.
- *
+ *
* Not every pointer in the %map array will point to a node. If the initial
* number of elements in the deque is small, the /middle/ %map pointers will
* be valid, and the ones at the edges will be unused. This same situation
@@ -548,9 +564,9 @@ namespace __gnu_norm
* that range are uninitialized storage. Otherwise, [start.cur, start.last)
* and [finish.first, finish.cur) are initialized objects, and [start.first,
* start.cur) and [finish.cur, finish.last) are uninitialized storage.
- * - [%map, %map + map_size) is a valid, non-empty range.
- * - [start.node, finish.node] is a valid range contained within
- * [%map, %map + map_size).
+ * - [%map, %map + map_size) is a valid, non-empty range.
+ * - [start.node, finish.node] is a valid range contained within
+ * [%map, %map + map_size).
* - A pointer in the range [%map, %map + map_size) points to an allocated
* node if and only if the pointer is in the range
* [start.node, finish.node].
@@ -567,822 +583,851 @@ namespace __gnu_norm
*/
template<typename _Tp, typename _Alloc = allocator<_Tp> >
class deque : protected _Deque_base<_Tp, _Alloc>
- {
- // concept requirements
- __glibcxx_class_requires(_Tp, _SGIAssignableConcept)
-
- typedef _Deque_base<_Tp, _Alloc> _Base;
-
- public:
- typedef _Tp value_type;
- typedef value_type* pointer;
- typedef const value_type* const_pointer;
- typedef typename _Base::iterator iterator;
- typedef typename _Base::const_iterator const_iterator;
- typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
- typedef std::reverse_iterator<iterator> reverse_iterator;
- typedef value_type& reference;
- typedef const value_type& const_reference;
- typedef size_t size_type;
- typedef ptrdiff_t difference_type;
- typedef typename _Base::allocator_type allocator_type;
-
- protected:
- typedef pointer* _Map_pointer;
- static size_t _S_buffer_size() { return __deque_buf_size(sizeof(_Tp)); }
-
- // Functions controlling memory layout, and nothing else.
- using _Base::_M_initialize_map;
- using _Base::_M_create_nodes;
- using _Base::_M_destroy_nodes;
- using _Base::_M_allocate_node;
- using _Base::_M_deallocate_node;
- using _Base::_M_allocate_map;
- using _Base::_M_deallocate_map;
-
- /** @if maint
- * A total of four data members accumulated down the heirarchy.
- * @endif
- */
- using _Base::_M_map;
- using _Base::_M_map_size;
- using _Base::_M_start;
- using _Base::_M_finish;
-
- public:
- // [23.2.1.1] construct/copy/destroy
- // (assign() and get_allocator() are also listed in this section)
- /**
- * @brief Default constructor creates no elements.
- */
- explicit
- deque(const allocator_type& __a = allocator_type())
+ {
+ // concept requirements
+ __glibcxx_class_requires(_Tp, _SGIAssignableConcept)
+
+ typedef _Deque_base<_Tp, _Alloc> _Base;
+
+ public:
+ typedef _Tp value_type;
+ typedef value_type* pointer;
+ typedef const value_type* const_pointer;
+ typedef typename _Base::iterator iterator;
+ typedef typename _Base::const_iterator const_iterator;
+ typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
+ typedef std::reverse_iterator<iterator> reverse_iterator;
+ typedef value_type& reference;
+ typedef const value_type& const_reference;
+ typedef size_t size_type;
+ typedef ptrdiff_t difference_type;
+ typedef typename _Base::allocator_type allocator_type;
+
+ protected:
+ typedef pointer* _Map_pointer;
+
+ static size_t _S_buffer_size()
+ { return __deque_buf_size(sizeof(_Tp)); }
+
+ // Functions controlling memory layout, and nothing else.
+ using _Base::_M_initialize_map;
+ using _Base::_M_create_nodes;
+ using _Base::_M_destroy_nodes;
+ using _Base::_M_allocate_node;
+ using _Base::_M_deallocate_node;
+ using _Base::_M_allocate_map;
+ using _Base::_M_deallocate_map;
+
+ /** @if maint
+ * A total of four data members accumulated down the heirarchy.
+ * May be accessed via _M_impl.*
+ * @endif
+ */
+ using _Base::_M_impl;
+
+ public:
+ // [23.2.1.1] construct/copy/destroy
+ // (assign() and get_allocator() are also listed in this section)
+ /**
+ * @brief Default constructor creates no elements.
+ */
+ explicit
+ deque(const allocator_type& __a = allocator_type())
: _Base(__a, 0) {}
-
- /**
- * @brief Create a %deque with copies of an exemplar element.
- * @param n The number of elements to initially create.
- * @param value An element to copy.
- *
- * This constructor fills the %deque with @a n copies of @a value.
- */
- deque(size_type __n, const value_type& __value,
- const allocator_type& __a = allocator_type())
+
+ /**
+ * @brief Create a %deque with copies of an exemplar element.
+ * @param n The number of elements to initially create.
+ * @param value An element to copy.
+ *
+ * This constructor fills the %deque with @a n copies of @a value.
+ */
+ deque(size_type __n, const value_type& __value,
+ const allocator_type& __a = allocator_type())
: _Base(__a, __n)
{ _M_fill_initialize(__value); }
-
- /**
- * @brief Create a %deque with default elements.
- * @param n The number of elements to initially create.
- *
- * This constructor fills the %deque with @a n copies of a
- * default-constructed element.
- */
- explicit
- deque(size_type __n)
+
+ /**
+ * @brief Create a %deque with default elements.
+ * @param n The number of elements to initially create.
+ *
+ * This constructor fills the %deque with @a n copies of a
+ * default-constructed element.
+ */
+ explicit
+ deque(size_type __n)
: _Base(allocator_type(), __n)
{ _M_fill_initialize(value_type()); }
-
- /**
- * @brief %Deque copy constructor.
- * @param x A %deque of identical element and allocator types.
- *
- * The newly-created %deque uses a copy of the allocation object used
- * by @a x.
- */
- deque(const deque& __x)
- : _Base(__x.get_allocator(), __x.size())
- { std::uninitialized_copy(__x.begin(), __x.end(), this->_M_start); }
-
- /**
- * @brief Builds a %deque from a range.
- * @param first An input iterator.
- * @param last An input iterator.
- *
- * Create a %deque consisting of copies of the elements from [first,last).
- *
- * If the iterators are forward, bidirectional, or random-access, then
- * this will call the elements' copy constructor N times (where N is
- * distance(first,last)) and do no memory reallocation. But if only
- * input iterators are used, then this will do at most 2N calls to the
- * copy constructor, and logN memory reallocations.
- */
- template<typename _InputIterator>
- deque(_InputIterator __first, _InputIterator __last,
- const allocator_type& __a = allocator_type())
- : _Base(__a)
+
+ /**
+ * @brief %Deque copy constructor.
+ * @param x A %deque of identical element and allocator types.
+ *
+ * The newly-created %deque uses a copy of the allocation object used
+ * by @a x.
+ */
+ deque(const deque& __x)
+ : _Base(__x.get_allocator(), __x.size())
+ { std::uninitialized_copy(__x.begin(), __x.end(), this->_M_impl._M_start); }
+
+ /**
+ * @brief Builds a %deque from a range.
+ * @param first An input iterator.
+ * @param last An input iterator.
+ *
+ * Create a %deque consisting of copies of the elements from [first,
+ * last).
+ *
+ * If the iterators are forward, bidirectional, or random-access, then
+ * this will call the elements' copy constructor N times (where N is
+ * distance(first,last)) and do no memory reallocation. But if only
+ * input iterators are used, then this will do at most 2N calls to the
+ * copy constructor, and logN memory reallocations.
+ */
+ template<typename _InputIterator>
+ deque(_InputIterator __first, _InputIterator __last,
+ const allocator_type& __a = allocator_type())
+ : _Base(__a)
+ {
+ // Check whether it's an integral type. If so, it's not an iterator.
+ typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
+ _M_initialize_dispatch(__first, __last, _Integral());
+ }
+
+ /**
+ * The dtor only erases the elements, and note that if the elements
+ * themselves are pointers, the pointed-to memory is not touched in any
+ * way. Managing the pointer is the user's responsibilty.
+ */
+ ~deque()
+ { std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish); }
+
+ /**
+ * @brief %Deque assignment operator.
+ * @param x A %deque of identical element and allocator types.
+ *
+ * All the elements of @a x are copied, but unlike the copy constructor,
+ * the allocator object is not copied.
+ */
+ deque&
+ operator=(const deque& __x);
+
+ /**
+ * @brief Assigns a given value to a %deque.
+ * @param n Number of elements to be assigned.
+ * @param val Value to be assigned.
+ *
+ * This function fills a %deque with @a n copies of the given value.
+ * Note that the assignment completely changes the %deque and that the
+ * resulting %deque's size is the same as the number of elements assigned.
+ * Old data may be lost.
+ */
+ void
+ assign(size_type __n, const value_type& __val)
+ { _M_fill_assign(__n, __val); }
+
+ /**
+ * @brief Assigns a range to a %deque.
+ * @param first An input iterator.
+ * @param last An input iterator.
+ *
+ * This function fills a %deque with copies of the elements in the
+ * range [first,last).
+ *
+ * Note that the assignment completely changes the %deque and that the
+ * resulting %deque's size is the same as the number of elements
+ * assigned. Old data may be lost.
+ */
+ template<typename _InputIterator>
+ void
+ assign(_InputIterator __first, _InputIterator __last)
+ {
+ typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
+ _M_assign_dispatch(__first, __last, _Integral());
+ }
+
+ /// Get a copy of the memory allocation object.
+ allocator_type
+ get_allocator() const
+ { return _Base::get_allocator(); }
+
+ // iterators
+ /**
+ * Returns a read/write iterator that points to the first element in the
+ * %deque. Iteration is done in ordinary element order.
+ */
+ iterator
+ begin()
+ { return this->_M_impl._M_start; }
+
+ /**
+ * Returns a read-only (constant) iterator that points to the first
+ * element in the %deque. Iteration is done in ordinary element order.
+ */
+ const_iterator
+ begin() const
+ { return this->_M_impl._M_start; }
+
+ /**
+ * Returns a read/write iterator that points one past the last element in
+ * the %deque. Iteration is done in ordinary element order.
+ */
+ iterator
+ end()
+ { return this->_M_impl._M_finish; }
+
+ /**
+ * Returns a read-only (constant) iterator that points one past the last
+ * element in the %deque. Iteration is done in ordinary element order.
+ */
+ const_iterator
+ end() const
+ { return this->_M_impl._M_finish; }
+
+ /**
+ * Returns a read/write reverse iterator that points to the last element
+ * in the %deque. Iteration is done in reverse element order.
+ */
+ reverse_iterator
+ rbegin()
+ { return reverse_iterator(this->_M_impl._M_finish); }
+
+ /**
+ * Returns a read-only (constant) reverse iterator that points to the
+ * last element in the %deque. Iteration is done in reverse element
+ * order.
+ */
+ const_reverse_iterator
+ rbegin() const
+ { return const_reverse_iterator(this->_M_impl._M_finish); }
+
+ /**
+ * Returns a read/write reverse iterator that points to one before the
+ * first element in the %deque. Iteration is done in reverse element
+ * order.
+ */
+ reverse_iterator
+ rend() { return reverse_iterator(this->_M_impl._M_start); }
+
+ /**
+ * Returns a read-only (constant) reverse iterator that points to one
+ * before the first element in the %deque. Iteration is done in reverse
+ * element order.
+ */
+ const_reverse_iterator
+ rend() const
+ { return const_reverse_iterator(this->_M_impl._M_start); }
+
+ // [23.2.1.2] capacity
+ /** Returns the number of elements in the %deque. */
+ size_type
+ size() const
+ { return this->_M_impl._M_finish - this->_M_impl._M_start; }
+
+ /** Returns the size() of the largest possible %deque. */
+ size_type
+ max_size() const
+ { return size_type(-1); }
+
+ /**
+ * @brief Resizes the %deque to the specified number of elements.
+ * @param new_size Number of elements the %deque should contain.
+ * @param x Data with which new elements should be populated.
+ *
+ * This function will %resize the %deque to the specified number of
+ * elements. If the number is smaller than the %deque's current size the
+ * %deque is truncated, otherwise the %deque is extended and new elements
+ * are populated with given data.
+ */
+ void
+ resize(size_type __new_size, const value_type& __x)
{
- // Check whether it's an integral type. If so, it's not an iterator.
- typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
- _M_initialize_dispatch(__first, __last, _Integral());
+ const size_type __len = size();
+ if (__new_size < __len)
+ erase(this->_M_impl._M_start + __new_size, this->_M_impl._M_finish);
+ else
+ insert(this->_M_impl._M_finish, __new_size - __len, __x);
}
-
- /**
- * The dtor only erases the elements, and note that if the elements
- * themselves are pointers, the pointed-to memory is not touched in any
- * way. Managing the pointer is the user's responsibilty.
- */
- ~deque() { std::_Destroy(this->_M_start, this->_M_finish); }
-
- /**
- * @brief %Deque assignment operator.
- * @param x A %deque of identical element and allocator types.
- *
- * All the elements of @a x are copied, but unlike the copy constructor,
- * the allocator object is not copied.
- */
- deque&
- operator=(const deque& __x);
-
- /**
- * @brief Assigns a given value to a %deque.
- * @param n Number of elements to be assigned.
- * @param val Value to be assigned.
- *
- * This function fills a %deque with @a n copies of the given value.
- * Note that the assignment completely changes the %deque and that the
- * resulting %deque's size is the same as the number of elements assigned.
- * Old data may be lost.
- */
- void
- assign(size_type __n, const value_type& __val) { _M_fill_assign(__n, __val); }
-
- /**
- * @brief Assigns a range to a %deque.
- * @param first An input iterator.
- * @param last An input iterator.
- *
- * This function fills a %deque with copies of the elements in the
- * range [first,last).
- *
- * Note that the assignment completely changes the %deque and that the
- * resulting %deque's size is the same as the number of elements assigned.
- * Old data may be lost.
- */
- template<typename _InputIterator>
+
+ /**
+ * @brief Resizes the %deque to the specified number of elements.
+ * @param new_size Number of elements the %deque should contain.
+ *
+ * This function will resize the %deque to the specified number of
+ * elements. If the number is smaller than the %deque's current size the
+ * %deque is truncated, otherwise the %deque is extended and new elements
+ * are default-constructed.
+ */
+ void
+ resize(size_type new_size)
+ { resize(new_size, value_type()); }
+
+ /**
+ * Returns true if the %deque is empty. (Thus begin() would equal end().)
+ */
+ bool
+ empty() const
+ { return this->_M_impl._M_finish == this->_M_impl._M_start; }
+
+ // element access
+ /**
+ * @brief Subscript access to the data contained in the %deque.
+ * @param n The index of the element for which data should be accessed.
+ * @return Read/write reference to data.
+ *
+ * This operator allows for easy, array-style, data access.
+ * Note that data access with this operator is unchecked and out_of_range
+ * lookups are not defined. (For checked lookups see at().)
+ */
+ reference
+ operator[](size_type __n)
+ { return this->_M_impl._M_start[difference_type(__n)]; }
+
+ /**
+ * @brief Subscript access to the data contained in the %deque.
+ * @param n The index of the element for which data should be accessed.
+ * @return Read-only (constant) reference to data.
+ *
+ * This operator allows for easy, array-style, data access.
+ * Note that data access with this operator is unchecked and out_of_range
+ * lookups are not defined. (For checked lookups see at().)
+ */
+ const_reference
+ operator[](size_type __n) const
+ { return this->_M_impl._M_start[difference_type(__n)]; }
+
+ protected:
+ /// @if maint Safety check used only from at(). @endif
void
- assign(_InputIterator __first, _InputIterator __last)
+ _M_range_check(size_type __n) const
{
- typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
- _M_assign_dispatch(__first, __last, _Integral());
- }
-
- /// Get a copy of the memory allocation object.
- allocator_type
- get_allocator() const { return _Base::get_allocator(); }
-
- // iterators
- /**
- * Returns a read/write iterator that points to the first element in the
- * %deque. Iteration is done in ordinary element order.
- */
- iterator
- begin() { return this->_M_start; }
-
- /**
- * Returns a read-only (constant) iterator that points to the first element
- * in the %deque. Iteration is done in ordinary element order.
- */
- const_iterator
- begin() const { return this->_M_start; }
-
- /**
- * Returns a read/write iterator that points one past the last element in
- * the %deque. Iteration is done in ordinary element order.
- */
- iterator
- end() { return this->_M_finish; }
-
- /**
- * Returns a read-only (constant) iterator that points one past the last
- * element in the %deque. Iteration is done in ordinary element order.
- */
- const_iterator
- end() const { return this->_M_finish; }
-
- /**
- * Returns a read/write reverse iterator that points to the last element in
- * the %deque. Iteration is done in reverse element order.
- */
- reverse_iterator
- rbegin() { return reverse_iterator(this->_M_finish); }
-
- /**
- * Returns a read-only (constant) reverse iterator that points to the last
- * element in the %deque. Iteration is done in reverse element order.
- */
- const_reverse_iterator
- rbegin() const { return const_reverse_iterator(this->_M_finish); }
-
- /**
- * Returns a read/write reverse iterator that points to one before the
- * first element in the %deque. Iteration is done in reverse element
- * order.
- */
- reverse_iterator
- rend() { return reverse_iterator(this->_M_start); }
-
- /**
- * Returns a read-only (constant) reverse iterator that points to one
- * before the first element in the %deque. Iteration is done in reverse
- * element order.
- */
- const_reverse_iterator
- rend() const { return const_reverse_iterator(this->_M_start); }
-
- // [23.2.1.2] capacity
- /** Returns the number of elements in the %deque. */
- size_type
- size() const { return this->_M_finish - this->_M_start; }
-
- /** Returns the size() of the largest possible %deque. */
- size_type
- max_size() const { return size_type(-1); }
-
- /**
- * @brief Resizes the %deque to the specified number of elements.
- * @param new_size Number of elements the %deque should contain.
- * @param x Data with which new elements should be populated.
- *
- * This function will %resize the %deque to the specified number of
- * elements. If the number is smaller than the %deque's current size the
- * %deque is truncated, otherwise the %deque is extended and new elements
- * are populated with given data.
- */
- void
- resize(size_type __new_size, const value_type& __x)
- {
- const size_type __len = size();
- if (__new_size < __len)
- erase(this->_M_start + __new_size, this->_M_finish);
- else
- insert(this->_M_finish, __new_size - __len, __x);
- }
-
- /**
- * @brief Resizes the %deque to the specified number of elements.
- * @param new_size Number of elements the %deque should contain.
- *
- * This function will resize the %deque to the specified number of
- * elements. If the number is smaller than the %deque's current size the
- * %deque is truncated, otherwise the %deque is extended and new elements
- * are default-constructed.
- */
- void
- resize(size_type new_size) { resize(new_size, value_type()); }
-
- /**
- * Returns true if the %deque is empty. (Thus begin() would equal end().)
- */
- bool empty() const { return this->_M_finish == this->_M_start; }
-
- // element access
- /**
- * @brief Subscript access to the data contained in the %deque.
- * @param n The index of the element for which data should be accessed.
- * @return Read/write reference to data.
- *
- * This operator allows for easy, array-style, data access.
- * Note that data access with this operator is unchecked and out_of_range
- * lookups are not defined. (For checked lookups see at().)
- */
- reference
- operator[](size_type __n) { return this->_M_start[difference_type(__n)]; }
-
- /**
- * @brief Subscript access to the data contained in the %deque.
- * @param n The index of the element for which data should be accessed.
- * @return Read-only (constant) reference to data.
- *
- * This operator allows for easy, array-style, data access.
- * Note that data access with this operator is unchecked and out_of_range
- * lookups are not defined. (For checked lookups see at().)
- */
- const_reference
- operator[](size_type __n) const {
- return this->_M_start[difference_type(__n)];
- }
-
- protected:
- /// @if maint Safety check used only from at(). @endif
- void
- _M_range_check(size_type __n) const
- {
- if (__n >= this->size())
- __throw_out_of_range(__N("deque::_M_range_check"));
- }
-
- public:
- /**
- * @brief Provides access to the data contained in the %deque.
- * @param n The index of the element for which data should be accessed.
- * @return Read/write reference to data.
- * @throw std::out_of_range If @a n is an invalid index.
- *
- * This function provides for safer data access. The parameter is first
- * checked that it is in the range of the deque. The function throws
- * out_of_range if the check fails.
- */
- reference
- at(size_type __n) { _M_range_check(__n); return (*this)[__n]; }
-
- /**
- * @brief Provides access to the data contained in the %deque.
- * @param n The index of the element for which data should be accessed.
- * @return Read-only (constant) reference to data.
- * @throw std::out_of_range If @a n is an invalid index.
- *
- * This function provides for safer data access. The parameter is first
- * checked that it is in the range of the deque. The function throws
- * out_of_range if the check fails.
- */
- const_reference
- at(size_type __n) const { _M_range_check(__n); return (*this)[__n]; }
-
- /**
- * Returns a read/write reference to the data at the first element of the
- * %deque.
- */
- reference
- front() { return *this->_M_start; }
-
- /**
- * Returns a read-only (constant) reference to the data at the first
- * element of the %deque.
- */
- const_reference
- front() const { return *this->_M_start; }
-
- /**
- * Returns a read/write reference to the data at the last element of the
- * %deque.
- */
- reference
- back()
- {
- iterator __tmp = this->_M_finish;
- --__tmp;
- return *__tmp;
- }
-
- /**
- * Returns a read-only (constant) reference to the data at the last
- * element of the %deque.
- */
- const_reference
- back() const
- {
- const_iterator __tmp = this->_M_finish;
- --__tmp;
- return *__tmp;
- }
-
- // [23.2.1.2] modifiers
- /**
- * @brief Add data to the front of the %deque.
- * @param x Data to be added.
- *
- * This is a typical stack operation. The function creates an element at
- * the front of the %deque and assigns the given data to it. Due to the
- * nature of a %deque this operation can be done in constant time.
- */
- void
- push_front(const value_type& __x)
- {
- if (this->_M_start._M_cur != this->_M_start._M_first) {
- std::_Construct(this->_M_start._M_cur - 1, __x);
- --this->_M_start._M_cur;
+ if (__n >= this->size())
+ __throw_out_of_range(__N("deque::_M_range_check"));
}
- else
- _M_push_front_aux(__x);
- }
-
- /**
- * @brief Add data to the end of the %deque.
- * @param x Data to be added.
- *
- * This is a typical stack operation. The function creates an element at
- * the end of the %deque and assigns the given data to it. Due to the
- * nature of a %deque this operation can be done in constant time.
- */
- void
- push_back(const value_type& __x)
- {
- if (this->_M_finish._M_cur != this->_M_finish._M_last - 1) {
- std::_Construct(this->_M_finish._M_cur, __x);
- ++this->_M_finish._M_cur;
+
+ public:
+ /**
+ * @brief Provides access to the data contained in the %deque.
+ * @param n The index of the element for which data should be accessed.
+ * @return Read/write reference to data.
+ * @throw std::out_of_range If @a n is an invalid index.
+ *
+ * This function provides for safer data access. The parameter is first
+ * checked that it is in the range of the deque. The function throws
+ * out_of_range if the check fails.
+ */
+ reference
+ at(size_type __n)
+ { _M_range_check(__n); return (*this)[__n]; }
+
+ /**
+ * @brief Provides access to the data contained in the %deque.
+ * @param n The index of the element for which data should be accessed.
+ * @return Read-only (constant) reference to data.
+ * @throw std::out_of_range If @a n is an invalid index.
+ *
+ * This function provides for safer data access. The parameter is first
+ * checked that it is in the range of the deque. The function throws
+ * out_of_range if the check fails.
+ */
+ const_reference
+ at(size_type __n) const
+ {
+ _M_range_check(__n);
+ return (*this)[__n];
}
- else
- _M_push_back_aux(__x);
- }
-
- /**
- * @brief Removes first element.
- *
- * This is a typical stack operation. It shrinks the %deque by one.
- *
- * Note that no data is returned, and if the first element's data is
- * needed, it should be retrieved before pop_front() is called.
- */
- void
- pop_front()
- {
- if (this->_M_start._M_cur != this->_M_start._M_last - 1) {
- std::_Destroy(this->_M_start._M_cur);
- ++this->_M_start._M_cur;
+
+ /**
+ * Returns a read/write reference to the data at the first element of the
+ * %deque.
+ */
+ reference
+ front()
+ { return *this->_M_impl._M_start; }
+
+ /**
+ * Returns a read-only (constant) reference to the data at the first
+ * element of the %deque.
+ */
+ const_reference
+ front() const
+ { return *this->_M_impl._M_start; }
+
+ /**
+ * Returns a read/write reference to the data at the last element of the
+ * %deque.
+ */
+ reference
+ back()
+ {
+ iterator __tmp = this->_M_impl._M_finish;
+ --__tmp;
+ return *__tmp;
}
- else
- _M_pop_front_aux();
- }
-
- /**
- * @brief Removes last element.
- *
- * This is a typical stack operation. It shrinks the %deque by one.
- *
- * Note that no data is returned, and if the last element's data is
- * needed, it should be retrieved before pop_back() is called.
- */
- void
- pop_back()
- {
- if (this->_M_finish._M_cur != this->_M_finish._M_first) {
- --this->_M_finish._M_cur;
- std::_Destroy(this->_M_finish._M_cur);
+
+ /**
+ * Returns a read-only (constant) reference to the data at the last
+ * element of the %deque.
+ */
+ const_reference
+ back() const
+ {
+ const_iterator __tmp = this->_M_impl._M_finish;
+ --__tmp;
+ return *__tmp;
}
- else
- _M_pop_back_aux();
- }
-
- /**
- * @brief Inserts given value into %deque before specified iterator.
- * @param position An iterator into the %deque.
- * @param x Data to be inserted.
- * @return An iterator that points to the inserted data.
- *
- * This function will insert a copy of the given value before the specified
- * location.
- */
- iterator
- insert(iterator position, const value_type& __x);
-
- /**
- * @brief Inserts a number of copies of given data into the %deque.
- * @param position An iterator into the %deque.
- * @param n Number of elements to be inserted.
- * @param x Data to be inserted.
- *
- * This function will insert a specified number of copies of the given data
- * before the location specified by @a position.
- */
- void
- insert(iterator __position, size_type __n, const value_type& __x)
- { _M_fill_insert(__position, __n, __x); }
-
- /**
- * @brief Inserts a range into the %deque.
- * @param position An iterator into the %deque.
- * @param first An input iterator.
- * @param last An input iterator.
- *
- * This function will insert copies of the data in the range [first,last)
- * into the %deque before the location specified by @a pos. This is
- * known as "range insert."
- */
- template<typename _InputIterator>
+
+ // [23.2.1.2] modifiers
+ /**
+ * @brief Add data to the front of the %deque.
+ * @param x Data to be added.
+ *
+ * This is a typical stack operation. The function creates an element at
+ * the front of the %deque and assigns the given data to it. Due to the
+ * nature of a %deque this operation can be done in constant time.
+ */
void
- insert(iterator __position, _InputIterator __first, _InputIterator __last)
+ push_front(const value_type& __x)
{
- // Check whether it's an integral type. If so, it's not an iterator.
- typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
- _M_insert_dispatch(__position, __first, __last, _Integral());
+ if (this->_M_impl._M_start._M_cur != this->_M_impl._M_start._M_first)
+ {
+ std::_Construct(this->_M_impl._M_start._M_cur - 1, __x);
+ --this->_M_impl._M_start._M_cur;
+ }
+ else
+ _M_push_front_aux(__x);
}
-
- /**
- * @brief Remove element at given position.
- * @param position Iterator pointing to element to be erased.
- * @return An iterator pointing to the next element (or end()).
- *
- * This function will erase the element at the given position and thus
- * shorten the %deque by one.
- *
- * The user is cautioned that
- * this function only erases the element, and that if the element is itself
- * a pointer, the pointed-to memory is not touched in any way. Managing
- * the pointer is the user's responsibilty.
- */
- iterator
- erase(iterator __position);
-
- /**
- * @brief Remove a range of elements.
- * @param first Iterator pointing to the first element to be erased.
- * @param last Iterator pointing to one past the last element to be
- * erased.
- * @return An iterator pointing to the element pointed to by @a last
- * prior to erasing (or end()).
- *
- * This function will erase the elements in the range [first,last) and
- * shorten the %deque accordingly.
- *
- * The user is cautioned that
- * this function only erases the elements, and that if the elements
- * themselves are pointers, the pointed-to memory is not touched in any
- * way. Managing the pointer is the user's responsibilty.
- */
- iterator
- erase(iterator __first, iterator __last);
-
- /**
- * @brief Swaps data with another %deque.
- * @param x A %deque of the same element and allocator types.
- *
- * This exchanges the elements between two deques in constant time.
- * (Four pointers, so it should be quite fast.)
- * Note that the global std::swap() function is specialized such that
- * std::swap(d1,d2) will feed to this function.
- */
- void
- swap(deque& __x)
- {
- std::swap(this->_M_start, __x._M_start);
- std::swap(this->_M_finish, __x._M_finish);
- std::swap(this->_M_map, __x._M_map);
- std::swap(this->_M_map_size, __x._M_map_size);
- }
-
- /**
- * Erases all the elements. Note that this function only erases the
- * elements, and that if the elements themselves are pointers, the
- * pointed-to memory is not touched in any way. Managing the pointer is
- * the user's responsibilty.
- */
- void clear();
-
- protected:
- // Internal constructor functions follow.
-
- // called by the range constructor to implement [23.1.1]/9
- template<typename _Integer>
+
+ /**
+ * @brief Add data to the end of the %deque.
+ * @param x Data to be added.
+ *
+ * This is a typical stack operation. The function creates an element at
+ * the end of the %deque and assigns the given data to it. Due to the
+ * nature of a %deque this operation can be done in constant time.
+ */
void
- _M_initialize_dispatch(_Integer __n, _Integer __x, __true_type)
+ push_back(const value_type& __x)
{
- _M_initialize_map(__n);
- _M_fill_initialize(__x);
+ if (this->_M_impl._M_finish._M_cur != this->_M_impl._M_finish._M_last - 1)
+ {
+ std::_Construct(this->_M_impl._M_finish._M_cur, __x);
+ ++this->_M_impl._M_finish._M_cur;
+ }
+ else
+ _M_push_back_aux(__x);
}
-
- // called by the range constructor to implement [23.1.1]/9
- template<typename _InputIterator>
+
+ /**
+ * @brief Removes first element.
+ *
+ * This is a typical stack operation. It shrinks the %deque by one.
+ *
+ * Note that no data is returned, and if the first element's data is
+ * needed, it should be retrieved before pop_front() is called.
+ */
void
- _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
- __false_type)
+ pop_front()
{
- typedef typename iterator_traits<_InputIterator>::iterator_category
- _IterCategory;
- _M_range_initialize(__first, __last, _IterCategory());
+ if (this->_M_impl._M_start._M_cur != this->_M_impl._M_start._M_last - 1)
+ {
+ std::_Destroy(this->_M_impl._M_start._M_cur);
+ ++this->_M_impl._M_start._M_cur;
+ }
+ else
+ _M_pop_front_aux();
}
-
- // called by the second initialize_dispatch above
- //@{
- /**
- * @if maint
- * @brief Fills the deque with whatever is in [first,last).
- * @param first An input iterator.
- * @param last An input iterator.
- * @return Nothing.
- *
- * If the iterators are actually forward iterators (or better), then the
- * memory layout can be done all at once. Else we move forward using
- * push_back on each value from the iterator.
- * @endif
- */
- template<typename _InputIterator>
- void
- _M_range_initialize(_InputIterator __first, _InputIterator __last,
- input_iterator_tag);
-
- // called by the second initialize_dispatch above
- template<typename _ForwardIterator>
- void
- _M_range_initialize(_ForwardIterator __first, _ForwardIterator __last,
- forward_iterator_tag);
- //@}
-
- /**
- * @if maint
- * @brief Fills the %deque with copies of value.
- * @param value Initial value.
- * @return Nothing.
- * @pre _M_start and _M_finish have already been initialized, but none of
- * the %deque's elements have yet been constructed.
- *
- * This function is called only when the user provides an explicit size
- * (with or without an explicit exemplar value).
- * @endif
- */
- void
- _M_fill_initialize(const value_type& __value);
-
-
- // Internal assign functions follow. The *_aux functions do the actual
- // assignment work for the range versions.
-
- // called by the range assign to implement [23.1.1]/9
- template<typename _Integer>
+
+ /**
+ * @brief Removes last element.
+ *
+ * This is a typical stack operation. It shrinks the %deque by one.
+ *
+ * Note that no data is returned, and if the last element's data is
+ * needed, it should be retrieved before pop_back() is called.
+ */
void
- _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
+ pop_back()
{
- _M_fill_assign(static_cast<size_type>(__n),
- static_cast<value_type>(__val));
+ if (this->_M_impl._M_finish._M_cur != this->_M_impl._M_finish._M_first)
+ {
+ --this->_M_impl._M_finish._M_cur;
+ std::_Destroy(this->_M_impl._M_finish._M_cur);
+ }
+ else
+ _M_pop_back_aux();
}
-
- // called by the range assign to implement [23.1.1]/9
- template<typename _InputIterator>
+
+ /**
+ * @brief Inserts given value into %deque before specified iterator.
+ * @param position An iterator into the %deque.
+ * @param x Data to be inserted.
+ * @return An iterator that points to the inserted data.
+ *
+ * This function will insert a copy of the given value before the
+ * specified location.
+ */
+ iterator
+ insert(iterator position, const value_type& __x);
+
+ /**
+ * @brief Inserts a number of copies of given data into the %deque.
+ * @param position An iterator into the %deque.
+ * @param n Number of elements to be inserted.
+ * @param x Data to be inserted.
+ *
+ * This function will insert a specified number of copies of the given
+ * data before the location specified by @a position.
+ */
+ void
+ insert(iterator __position, size_type __n, const value_type& __x)
+ { _M_fill_insert(__position, __n, __x); }
+
+ /**
+ * @brief Inserts a range into the %deque.
+ * @param position An iterator into the %deque.
+ * @param first An input iterator.
+ * @param last An input iterator.
+ *
+ * This function will insert copies of the data in the range [first,last)
+ * into the %deque before the location specified by @a pos. This is
+ * known as "range insert."
+ */
+ template<typename _InputIterator>
+ void
+ insert(iterator __position, _InputIterator __first,
+ _InputIterator __last)
+ {
+ // Check whether it's an integral type. If so, it's not an iterator.
+ typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
+ _M_insert_dispatch(__position, __first, __last, _Integral());
+ }
+
+ /**
+ * @brief Remove element at given position.
+ * @param position Iterator pointing to element to be erased.
+ * @return An iterator pointing to the next element (or end()).
+ *
+ * This function will erase the element at the given position and thus
+ * shorten the %deque by one.
+ *
+ * The user is cautioned that
+ * this function only erases the element, and that if the element is
+ * itself a pointer, the pointed-to memory is not touched in any way.
+ * Managing the pointer is the user's responsibilty.
+ */
+ iterator
+ erase(iterator __position);
+
+ /**
+ * @brief Remove a range of elements.
+ * @param first Iterator pointing to the first element to be erased.
+ * @param last Iterator pointing to one past the last element to be
+ * erased.
+ * @return An iterator pointing to the element pointed to by @a last
+ * prior to erasing (or end()).
+ *
+ * This function will erase the elements in the range [first,last) and
+ * shorten the %deque accordingly.
+ *
+ * The user is cautioned that
+ * this function only erases the elements, and that if the elements
+ * themselves are pointers, the pointed-to memory is not touched in any
+ * way. Managing the pointer is the user's responsibilty.
+ */
+ iterator
+ erase(iterator __first, iterator __last);
+
+ /**
+ * @brief Swaps data with another %deque.
+ * @param x A %deque of the same element and allocator types.
+ *
+ * This exchanges the elements between two deques in constant time.
+ * (Four pointers, so it should be quite fast.)
+ * Note that the global std::swap() function is specialized such that
+ * std::swap(d1,d2) will feed to this function.
+ */
void
- _M_assign_dispatch(_InputIterator __first, _InputIterator __last, __false_type)
+ swap(deque& __x)
{
- typedef typename iterator_traits<_InputIterator>::iterator_category
- _IterCategory;
- _M_assign_aux(__first, __last, _IterCategory());
+ std::swap(this->_M_impl._M_start, __x._M_impl._M_start);
+ std::swap(this->_M_impl._M_finish, __x._M_impl._M_finish);
+ std::swap(this->_M_impl._M_map, __x._M_impl._M_map);
+ std::swap(this->_M_impl._M_map_size, __x._M_impl._M_map_size);
}
-
- // called by the second assign_dispatch above
- template<typename _InputIterator>
+
+ /**
+ * Erases all the elements. Note that this function only erases the
+ * elements, and that if the elements themselves are pointers, the
+ * pointed-to memory is not touched in any way. Managing the pointer is
+ * the user's responsibilty.
+ */
+ void clear();
+
+ protected:
+ // Internal constructor functions follow.
+
+ // called by the range constructor to implement [23.1.1]/9
+ template<typename _Integer>
+ void
+ _M_initialize_dispatch(_Integer __n, _Integer __x, __true_type)
+ {
+ _M_initialize_map(__n);
+ _M_fill_initialize(__x);
+ }
+
+ // called by the range constructor to implement [23.1.1]/9
+ template<typename _InputIterator>
+ void
+ _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
+ __false_type)
+ {
+ typedef typename iterator_traits<_InputIterator>::iterator_category
+ _IterCategory;
+ _M_range_initialize(__first, __last, _IterCategory());
+ }
+
+ // called by the second initialize_dispatch above
+ //@{
+ /**
+ * @if maint
+ * @brief Fills the deque with whatever is in [first,last).
+ * @param first An input iterator.
+ * @param last An input iterator.
+ * @return Nothing.
+ *
+ * If the iterators are actually forward iterators (or better), then the
+ * memory layout can be done all at once. Else we move forward using
+ * push_back on each value from the iterator.
+ * @endif
+ */
+ template<typename _InputIterator>
+ void
+ _M_range_initialize(_InputIterator __first, _InputIterator __last,
+ input_iterator_tag);
+
+ // called by the second initialize_dispatch above
+ template<typename _ForwardIterator>
+ void
+ _M_range_initialize(_ForwardIterator __first, _ForwardIterator __last,
+ forward_iterator_tag);
+ //@}
+
+ /**
+ * @if maint
+ * @brief Fills the %deque with copies of value.
+ * @param value Initial value.
+ * @return Nothing.
+ * @pre _M_start and _M_finish have already been initialized, but none of
+ * the %deque's elements have yet been constructed.
+ *
+ * This function is called only when the user provides an explicit size
+ * (with or without an explicit exemplar value).
+ * @endif
+ */
void
- _M_assign_aux(_InputIterator __first, _InputIterator __last,
- input_iterator_tag);
-
- // called by the second assign_dispatch above
- template<typename _ForwardIterator>
+ _M_fill_initialize(const value_type& __value);
+
+ // Internal assign functions follow. The *_aux functions do the actual
+ // assignment work for the range versions.
+
+ // called by the range assign to implement [23.1.1]/9
+ template<typename _Integer>
+ void
+ _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
+ {
+ _M_fill_assign(static_cast<size_type>(__n),
+ static_cast<value_type>(__val));
+ }
+
+ // called by the range assign to implement [23.1.1]/9
+ template<typename _InputIterator>
+ void
+ _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
+ __false_type)
+ {
+ typedef typename iterator_traits<_InputIterator>::iterator_category
+ _IterCategory;
+ _M_assign_aux(__first, __last, _IterCategory());
+ }
+
+ // called by the second assign_dispatch above
+ template<typename _InputIterator>
+ void
+ _M_assign_aux(_InputIterator __first, _InputIterator __last,
+ input_iterator_tag);
+
+ // called by the second assign_dispatch above
+ template<typename _ForwardIterator>
+ void
+ _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
+ forward_iterator_tag)
+ {
+ const size_type __len = std::distance(__first, __last);
+ if (__len > size())
+ {
+ _ForwardIterator __mid = __first;
+ std::advance(__mid, size());
+ std::copy(__first, __mid, begin());
+ insert(end(), __mid, __last);
+ }
+ else
+ erase(std::copy(__first, __last, begin()), end());
+ }
+
+ // Called by assign(n,t), and the range assign when it turns out to be the
+ // same thing.
void
- _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
- forward_iterator_tag)
+ _M_fill_assign(size_type __n, const value_type& __val)
{
- size_type __len = std::distance(__first, __last);
- if (__len > size()) {
- _ForwardIterator __mid = __first;
- std::advance(__mid, size());
- std::copy(__first, __mid, begin());
- insert(end(), __mid, __last);
- }
- else
- erase(std::copy(__first, __last, begin()), end());
+ if (__n > size())
+ {
+ std::fill(begin(), end(), __val);
+ insert(end(), __n - size(), __val);
+ }
+ else
+ {
+ erase(begin() + __n, end());
+ std::fill(begin(), end(), __val);
+ }
}
-
- // Called by assign(n,t), and the range assign when it turns out to be the
- // same thing.
- void
- _M_fill_assign(size_type __n, const value_type& __val)
- {
- if (__n > size())
+
+ //@{
+ /**
+ * @if maint
+ * @brief Helper functions for push_* and pop_*.
+ * @endif
+ */
+ void _M_push_back_aux(const value_type&);
+ void _M_push_front_aux(const value_type&);
+ void _M_pop_back_aux();
+ void _M_pop_front_aux();
+ //@}
+
+ // Internal insert functions follow. The *_aux functions do the actual
+ // insertion work when all shortcuts fail.
+
+ // called by the range insert to implement [23.1.1]/9
+ template<typename _Integer>
+ void
+ _M_insert_dispatch(iterator __pos,
+ _Integer __n, _Integer __x, __true_type)
+ {
+ _M_fill_insert(__pos, static_cast<size_type>(__n),
+ static_cast<value_type>(__x));
+ }
+
+ // called by the range insert to implement [23.1.1]/9
+ template<typename _InputIterator>
+ void
+ _M_insert_dispatch(iterator __pos,
+ _InputIterator __first, _InputIterator __last,
+ __false_type)
+ {
+ typedef typename iterator_traits<_InputIterator>::iterator_category
+ _IterCategory;
+ _M_range_insert_aux(__pos, __first, __last, _IterCategory());
+ }
+
+ // called by the second insert_dispatch above
+ template<typename _InputIterator>
+ void
+ _M_range_insert_aux(iterator __pos, _InputIterator __first,
+ _InputIterator __last, input_iterator_tag);
+
+ // called by the second insert_dispatch above
+ template<typename _ForwardIterator>
+ void
+ _M_range_insert_aux(iterator __pos, _ForwardIterator __first,
+ _ForwardIterator __last, forward_iterator_tag);
+
+ // Called by insert(p,n,x), and the range insert when it turns out to be
+ // the same thing. Can use fill functions in optimal situations,
+ // otherwise passes off to insert_aux(p,n,x).
+ void
+ _M_fill_insert(iterator __pos, size_type __n, const value_type& __x);
+
+ // called by insert(p,x)
+ iterator
+ _M_insert_aux(iterator __pos, const value_type& __x);
+
+ // called by insert(p,n,x) via fill_insert
+ void
+ _M_insert_aux(iterator __pos, size_type __n, const value_type& __x);
+
+ // called by range_insert_aux for forward iterators
+ template<typename _ForwardIterator>
+ void
+ _M_insert_aux(iterator __pos,
+ _ForwardIterator __first, _ForwardIterator __last,
+ size_type __n);
+
+ //@{
+ /**
+ * @if maint
+ * @brief Memory-handling helpers for the previous internal insert
+ * functions.
+ * @endif
+ */
+ iterator
+ _M_reserve_elements_at_front(size_type __n)
{
- std::fill(begin(), end(), __val);
- insert(end(), __n - size(), __val);
+ const size_type __vacancies = this->_M_impl._M_start._M_cur
+ - this->_M_impl._M_start._M_first;
+ if (__n > __vacancies)
+ _M_new_elements_at_front(__n - __vacancies);
+ return this->_M_impl._M_start - difference_type(__n);
}
- else
+
+ iterator
+ _M_reserve_elements_at_back(size_type __n)
{
- erase(begin() + __n, end());
- std::fill(begin(), end(), __val);
+ const size_type __vacancies = (this->_M_impl._M_finish._M_last
+ - this->_M_impl._M_finish._M_cur) - 1;
+ if (__n > __vacancies)
+ _M_new_elements_at_back(__n - __vacancies);
+ return this->_M_impl._M_finish + difference_type(__n);
}
- }
-
-
- //@{
- /**
- * @if maint
- * @brief Helper functions for push_* and pop_*.
- * @endif
- */
- void _M_push_back_aux(const value_type&);
- void _M_push_front_aux(const value_type&);
- void _M_pop_back_aux();
- void _M_pop_front_aux();
- //@}
-
-
- // Internal insert functions follow. The *_aux functions do the actual
- // insertion work when all shortcuts fail.
-
- // called by the range insert to implement [23.1.1]/9
- template<typename _Integer>
+
+ void
+ _M_new_elements_at_front(size_type __new_elements);
+
+ void
+ _M_new_elements_at_back(size_type __new_elements);
+ //@}
+
+
+ //@{
+ /**
+ * @if maint
+ * @brief Memory-handling helpers for the major %map.
+ *
+ * Makes sure the _M_map has space for new nodes. Does not actually add
+ * the nodes. Can invalidate _M_map pointers. (And consequently, %deque
+ * iterators.)
+ * @endif
+ */
void
- _M_insert_dispatch(iterator __pos,
- _Integer __n, _Integer __x, __true_type)
+ _M_reserve_map_at_back (size_type __nodes_to_add = 1)
{
- _M_fill_insert(__pos, static_cast<size_type>(__n),
- static_cast<value_type>(__x));
+ if (__nodes_to_add + 1 > this->_M_impl._M_map_size
+ - (this->_M_impl._M_finish._M_node - this->_M_impl._M_map))
+ _M_reallocate_map(__nodes_to_add, false);
}
-
- // called by the range insert to implement [23.1.1]/9
- template<typename _InputIterator>
+
void
- _M_insert_dispatch(iterator __pos,
- _InputIterator __first, _InputIterator __last,
- __false_type)
+ _M_reserve_map_at_front (size_type __nodes_to_add = 1)
{
- typedef typename iterator_traits<_InputIterator>::iterator_category
- _IterCategory;
- _M_range_insert_aux(__pos, __first, __last, _IterCategory());
+ if (__nodes_to_add > size_type(this->_M_impl._M_start._M_node - this->_M_impl._M_map))
+ _M_reallocate_map(__nodes_to_add, true);
}
-
- // called by the second insert_dispatch above
- template<typename _InputIterator>
- void
- _M_range_insert_aux(iterator __pos, _InputIterator __first,
- _InputIterator __last, input_iterator_tag);
-
- // called by the second insert_dispatch above
- template<typename _ForwardIterator>
- void
- _M_range_insert_aux(iterator __pos, _ForwardIterator __first,
- _ForwardIterator __last, forward_iterator_tag);
-
- // Called by insert(p,n,x), and the range insert when it turns out to be
- // the same thing. Can use fill functions in optimal situations, otherwise
- // passes off to insert_aux(p,n,x).
- void
- _M_fill_insert(iterator __pos, size_type __n, const value_type& __x);
-
- // called by insert(p,x)
- iterator
- _M_insert_aux(iterator __pos, const value_type& __x);
-
- // called by insert(p,n,x) via fill_insert
- void
- _M_insert_aux(iterator __pos, size_type __n, const value_type& __x);
-
- // called by range_insert_aux for forward iterators
- template<typename _ForwardIterator>
+
void
- _M_insert_aux(iterator __pos,
- _ForwardIterator __first, _ForwardIterator __last,
- size_type __n);
-
- //@{
- /**
- * @if maint
- * @brief Memory-handling helpers for the previous internal insert
- * functions.
- * @endif
- */
- iterator
- _M_reserve_elements_at_front(size_type __n)
- {
- size_type __vacancies = this->_M_start._M_cur - this->_M_start._M_first;
- if (__n > __vacancies)
- _M_new_elements_at_front(__n - __vacancies);
- return this->_M_start - difference_type(__n);
- }
-
- iterator
- _M_reserve_elements_at_back(size_type __n)
- {
- size_type __vacancies
- = (this->_M_finish._M_last - this->_M_finish._M_cur) - 1;
- if (__n > __vacancies)
- _M_new_elements_at_back(__n - __vacancies);
- return this->_M_finish + difference_type(__n);
- }
-
- void
- _M_new_elements_at_front(size_type __new_elements);
-
- void
- _M_new_elements_at_back(size_type __new_elements);
- //@}
-
-
- //@{
- /**
- * @if maint
- * @brief Memory-handling helpers for the major %map.
- *
- * Makes sure the _M_map has space for new nodes. Does not actually add
- * the nodes. Can invalidate _M_map pointers. (And consequently, %deque
- * iterators.)
- * @endif
- */
- void
- _M_reserve_map_at_back (size_type __nodes_to_add = 1)
- {
- if (__nodes_to_add + 1
- > this->_M_map_size - (this->_M_finish._M_node - this->_M_map))
- _M_reallocate_map(__nodes_to_add, false);
- }
-
- void
- _M_reserve_map_at_front (size_type __nodes_to_add = 1)
- {
- if (__nodes_to_add > size_type(this->_M_start._M_node - this->_M_map))
- _M_reallocate_map(__nodes_to_add, true);
- }
-
- void
- _M_reallocate_map(size_type __nodes_to_add, bool __add_at_front);
- //@}
- };
-
-
+ _M_reallocate_map(size_type __nodes_to_add, bool __add_at_front);
+ //@}
+ };
+
+
/**
* @brief Deque equality comparison.
* @param x A %deque.
@@ -1394,13 +1439,12 @@ namespace __gnu_norm
* and if corresponding elements compare equal.
*/
template<typename _Tp, typename _Alloc>
- inline bool operator==(const deque<_Tp, _Alloc>& __x,
+ inline bool
+ operator==(const deque<_Tp, _Alloc>& __x,
const deque<_Tp, _Alloc>& __y)
- {
- return __x.size() == __y.size() &&
- std::equal(__x.begin(), __x.end(), __y.begin());
- }
-
+ { return __x.size() == __y.size()
+ && std::equal(__x.begin(), __x.end(), __y.begin()); }
+
/**
* @brief Deque ordering relation.
* @param x A %deque.
@@ -1413,47 +1457,45 @@ namespace __gnu_norm
* See std::lexicographical_compare() for how the determination is made.
*/
template<typename _Tp, typename _Alloc>
- inline bool operator<(const deque<_Tp, _Alloc>& __x,
- const deque<_Tp, _Alloc>& __y)
- {
- return lexicographical_compare(__x.begin(), __x.end(),
- __y.begin(), __y.end());
- }
-
+ inline bool
+ operator<(const deque<_Tp, _Alloc>& __x,
+ const deque<_Tp, _Alloc>& __y)
+ { return lexicographical_compare(__x.begin(), __x.end(),
+ __y.begin(), __y.end()); }
+
/// Based on operator==
template<typename _Tp, typename _Alloc>
- inline bool operator!=(const deque<_Tp, _Alloc>& __x,
- const deque<_Tp, _Alloc>& __y) {
- return !(__x == __y);
- }
-
+ inline bool
+ operator!=(const deque<_Tp, _Alloc>& __x,
+ const deque<_Tp, _Alloc>& __y)
+ { return !(__x == __y); }
+
/// Based on operator<
template<typename _Tp, typename _Alloc>
- inline bool operator>(const deque<_Tp, _Alloc>& __x,
- const deque<_Tp, _Alloc>& __y) {
- return __y < __x;
- }
-
+ inline bool
+ operator>(const deque<_Tp, _Alloc>& __x,
+ const deque<_Tp, _Alloc>& __y)
+ { return __y < __x; }
+
/// Based on operator<
template<typename _Tp, typename _Alloc>
- inline bool operator<=(const deque<_Tp, _Alloc>& __x,
- const deque<_Tp, _Alloc>& __y) {
- return !(__y < __x);
- }
-
+ inline bool
+ operator<=(const deque<_Tp, _Alloc>& __x,
+ const deque<_Tp, _Alloc>& __y)
+ { return !(__y < __x); }
+
/// Based on operator<
template<typename _Tp, typename _Alloc>
- inline bool operator>=(const deque<_Tp, _Alloc>& __x,
- const deque<_Tp, _Alloc>& __y) {
- return !(__x < __y);
- }
-
+ inline bool
+ operator>=(const deque<_Tp, _Alloc>& __x,
+ const deque<_Tp, _Alloc>& __y)
+ { return !(__x < __y); }
+
/// See std::deque::swap().
template<typename _Tp, typename _Alloc>
- inline void swap(deque<_Tp,_Alloc>& __x, deque<_Tp,_Alloc>& __y)
- {
- __x.swap(__y);
- }
-} // namespace __gnu_norm
-
+ inline void
+ swap(deque<_Tp,_Alloc>& __x, deque<_Tp,_Alloc>& __y)
+ { __x.swap(__y); }
+} // namespace std
+
#endif /* _DEQUE_H */
diff --git a/libstdc++-v3/include/bits/stl_function.h b/libstdc++-v3/include/bits/stl_function.h
index 556104c714d..74ddcce9d8b 100644
--- a/libstdc++-v3/include/bits/stl_function.h
+++ b/libstdc++-v3/include/bits/stl_function.h
@@ -1,6 +1,6 @@
// Functor implementations -*- C++ -*-
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -63,667 +63,831 @@
namespace std
{
-// 20.3.1 base classes
-/** @defgroup s20_3_1_base Functor Base Classes
- * Function objects, or @e functors, are objects with an @c operator()
- * defined and accessible. They can be passed as arguments to algorithm
- * templates and used in place of a function pointer. Not only is the
- * resulting expressiveness of the library increased, but the generated
- * code can be more efficient than what you might write by hand. When we
- * refer to "functors," then, generally we include function pointers in
- * the description as well.
- *
- * Often, functors are only created as temporaries passed to algorithm
- * calls, rather than being created as named variables.
- *
- * Two examples taken from the standard itself follow. To perform a
- * by-element addition of two vectors @c a and @c b containing @c double,
- * and put the result in @c a, use
- * \code
- * transform (a.begin(), a.end(), b.begin(), a.begin(), plus<double>());
- * \endcode
- * To negate every element in @c a, use
- * \code
- * transform(a.begin(), a.end(), a.begin(), negate<double>());
- * \endcode
- * The addition and negation functions will be inlined directly.
- *
- * The standard functiors are derived from structs named @c unary_function
- * and @c binary_function. These two classes contain nothing but typedefs,
- * to aid in generic (template) programming. If you write your own
- * functors, you might consider doing the same.
- *
- * @{
-*/
-/**
- * This is one of the @link s20_3_1_base functor base classes@endlink.
-*/
-template <class _Arg, class _Result>
-struct unary_function {
- typedef _Arg argument_type; ///< @c argument_type is the type of the argument (no surprises here)
- typedef _Result result_type; ///< @c result_type is the return type
-};
-
-/**
- * This is one of the @link s20_3_1_base functor base classes@endlink.
-*/
-template <class _Arg1, class _Arg2, class _Result>
-struct binary_function {
- typedef _Arg1 first_argument_type; ///< the type of the first argument (no surprises here)
- typedef _Arg2 second_argument_type; ///< the type of the second argument
- typedef _Result result_type; ///< type of the return type
-};
-/** @} */
-
-// 20.3.2 arithmetic
-/** @defgroup s20_3_2_arithmetic Arithmetic Classes
- * Because basic math often needs to be done during an algorithm, the library
- * provides functors for those operations. See the documentation for
- * @link s20_3_1_base the base classes@endlink for examples of their use.
- *
- * @{
-*/
-/// One of the @link s20_3_2_arithmetic math functors@endlink.
-template <class _Tp>
-struct plus : public binary_function<_Tp,_Tp,_Tp> {
- _Tp operator()(const _Tp& __x, const _Tp& __y) const { return __x + __y; }
-};
-
-/// One of the @link s20_3_2_arithmetic math functors@endlink.
-template <class _Tp>
-struct minus : public binary_function<_Tp,_Tp,_Tp> {
- _Tp operator()(const _Tp& __x, const _Tp& __y) const { return __x - __y; }
-};
-
-/// One of the @link s20_3_2_arithmetic math functors@endlink.
-template <class _Tp>
-struct multiplies : public binary_function<_Tp,_Tp,_Tp> {
- _Tp operator()(const _Tp& __x, const _Tp& __y) const { return __x * __y; }
-};
-
-/// One of the @link s20_3_2_arithmetic math functors@endlink.
-template <class _Tp>
-struct divides : public binary_function<_Tp,_Tp,_Tp> {
- _Tp operator()(const _Tp& __x, const _Tp& __y) const { return __x / __y; }
-};
-
-/// One of the @link s20_3_2_arithmetic math functors@endlink.
-template <class _Tp>
-struct modulus : public binary_function<_Tp,_Tp,_Tp>
-{
- _Tp operator()(const _Tp& __x, const _Tp& __y) const { return __x % __y; }
-};
-
-/// One of the @link s20_3_2_arithmetic math functors@endlink.
-template <class _Tp>
-struct negate : public unary_function<_Tp,_Tp>
-{
- _Tp operator()(const _Tp& __x) const { return -__x; }
-};
-/** @} */
-
-// 20.3.3 comparisons
-/** @defgroup s20_3_3_comparisons Comparison Classes
- * The library provides six wrapper functors for all the basic comparisons
- * in C++, like @c <.
- *
- * @{
-*/
-/// One of the @link s20_3_3_comparisons comparison functors@endlink.
-template <class _Tp>
-struct equal_to : public binary_function<_Tp,_Tp,bool>
-{
- bool operator()(const _Tp& __x, const _Tp& __y) const { return __x == __y; }
-};
-
-/// One of the @link s20_3_3_comparisons comparison functors@endlink.
-template <class _Tp>
-struct not_equal_to : public binary_function<_Tp,_Tp,bool>
-{
- bool operator()(const _Tp& __x, const _Tp& __y) const { return __x != __y; }
-};
-
-/// One of the @link s20_3_3_comparisons comparison functors@endlink.
-template <class _Tp>
-struct greater : public binary_function<_Tp,_Tp,bool>
-{
- bool operator()(const _Tp& __x, const _Tp& __y) const { return __x > __y; }
-};
-
-/// One of the @link s20_3_3_comparisons comparison functors@endlink.
-template <class _Tp>
-struct less : public binary_function<_Tp,_Tp,bool>
-{
- bool operator()(const _Tp& __x, const _Tp& __y) const { return __x < __y; }
-};
-
-/// One of the @link s20_3_3_comparisons comparison functors@endlink.
-template <class _Tp>
-struct greater_equal : public binary_function<_Tp,_Tp,bool>
-{
- bool operator()(const _Tp& __x, const _Tp& __y) const { return __x >= __y; }
-};
+ // 20.3.1 base classes
+ /** @defgroup s20_3_1_base Functor Base Classes
+ * Function objects, or @e functors, are objects with an @c operator()
+ * defined and accessible. They can be passed as arguments to algorithm
+ * templates and used in place of a function pointer. Not only is the
+ * resulting expressiveness of the library increased, but the generated
+ * code can be more efficient than what you might write by hand. When we
+ * refer to "functors," then, generally we include function pointers in
+ * the description as well.
+ *
+ * Often, functors are only created as temporaries passed to algorithm
+ * calls, rather than being created as named variables.
+ *
+ * Two examples taken from the standard itself follow. To perform a
+ * by-element addition of two vectors @c a and @c b containing @c double,
+ * and put the result in @c a, use
+ * \code
+ * transform (a.begin(), a.end(), b.begin(), a.begin(), plus<double>());
+ * \endcode
+ * To negate every element in @c a, use
+ * \code
+ * transform(a.begin(), a.end(), a.begin(), negate<double>());
+ * \endcode
+ * The addition and negation functions will be inlined directly.
+ *
+ * The standard functiors are derived from structs named @c unary_function
+ * and @c binary_function. These two classes contain nothing but typedefs,
+ * to aid in generic (template) programming. If you write your own
+ * functors, you might consider doing the same.
+ *
+ * @{
+ */
+ /**
+ * This is one of the @link s20_3_1_base functor base classes@endlink.
+ */
+ template <class _Arg, class _Result>
+ struct unary_function
+ {
+ typedef _Arg argument_type; ///< @c argument_type is the type of the
+ /// argument (no surprises here)
+
+ typedef _Result result_type; ///< @c result_type is the return type
+ };
+
+ /**
+ * This is one of the @link s20_3_1_base functor base classes@endlink.
+ */
+ template <class _Arg1, class _Arg2, class _Result>
+ struct binary_function
+ {
+ typedef _Arg1 first_argument_type; ///< the type of the first argument
+ /// (no surprises here)
+
+ typedef _Arg2 second_argument_type; ///< the type of the second argument
+ typedef _Result result_type; ///< type of the return type
+ };
+ /** @} */
+
+ // 20.3.2 arithmetic
+ /** @defgroup s20_3_2_arithmetic Arithmetic Classes
+ * Because basic math often needs to be done during an algorithm, the library
+ * provides functors for those operations. See the documentation for
+ * @link s20_3_1_base the base classes@endlink for examples of their use.
+ *
+ * @{
+ */
+ /// One of the @link s20_3_2_arithmetic math functors@endlink.
+ template <class _Tp>
+ struct plus : public binary_function<_Tp, _Tp, _Tp>
+ {
+ _Tp
+ operator()(const _Tp& __x, const _Tp& __y) const
+ { return __x + __y; }
+ };
+
+ /// One of the @link s20_3_2_arithmetic math functors@endlink.
+ template <class _Tp>
+ struct minus : public binary_function<_Tp, _Tp, _Tp>
+ {
+ _Tp
+ operator()(const _Tp& __x, const _Tp& __y) const
+ { return __x - __y; }
+ };
+
+ /// One of the @link s20_3_2_arithmetic math functors@endlink.
+ template <class _Tp>
+ struct multiplies : public binary_function<_Tp, _Tp, _Tp>
+ {
+ _Tp
+ operator()(const _Tp& __x, const _Tp& __y) const
+ { return __x * __y; }
+ };
+
+ /// One of the @link s20_3_2_arithmetic math functors@endlink.
+ template <class _Tp>
+ struct divides : public binary_function<_Tp, _Tp, _Tp>
+ {
+ _Tp
+ operator()(const _Tp& __x, const _Tp& __y) const
+ { return __x / __y; }
+ };
+
+ /// One of the @link s20_3_2_arithmetic math functors@endlink.
+ template <class _Tp>
+ struct modulus : public binary_function<_Tp, _Tp, _Tp>
+ {
+ _Tp
+ operator()(const _Tp& __x, const _Tp& __y) const
+ { return __x % __y; }
+ };
+
+ /// One of the @link s20_3_2_arithmetic math functors@endlink.
+ template <class _Tp>
+ struct negate : public unary_function<_Tp, _Tp>
+ {
+ _Tp
+ operator()(const _Tp& __x) const
+ { return -__x; }
+ };
+ /** @} */
+
+ // 20.3.3 comparisons
+ /** @defgroup s20_3_3_comparisons Comparison Classes
+ * The library provides six wrapper functors for all the basic comparisons
+ * in C++, like @c <.
+ *
+ * @{
+ */
+ /// One of the @link s20_3_3_comparisons comparison functors@endlink.
+ template <class _Tp>
+ struct equal_to : public binary_function<_Tp, _Tp, bool>
+ {
+ bool
+ operator()(const _Tp& __x, const _Tp& __y) const
+ { return __x == __y; }
+ };
+
+ /// One of the @link s20_3_3_comparisons comparison functors@endlink.
+ template <class _Tp>
+ struct not_equal_to : public binary_function<_Tp, _Tp, bool>
+ {
+ bool
+ operator()(const _Tp& __x, const _Tp& __y) const
+ { return __x != __y; }
+ };
+
+ /// One of the @link s20_3_3_comparisons comparison functors@endlink.
+ template <class _Tp>
+ struct greater : public binary_function<_Tp, _Tp, bool>
+ {
+ bool
+ operator()(const _Tp& __x, const _Tp& __y) const
+ { return __x > __y; }
+ };
+
+ /// One of the @link s20_3_3_comparisons comparison functors@endlink.
+ template <class _Tp>
+ struct less : public binary_function<_Tp, _Tp, bool>
+ {
+ bool
+ operator()(const _Tp& __x, const _Tp& __y) const
+ { return __x < __y; }
+ };
+
+ /// One of the @link s20_3_3_comparisons comparison functors@endlink.
+ template <class _Tp>
+ struct greater_equal : public binary_function<_Tp, _Tp, bool>
+ {
+ bool
+ operator()(const _Tp& __x, const _Tp& __y) const
+ { return __x >= __y; }
+ };
+
+ /// One of the @link s20_3_3_comparisons comparison functors@endlink.
+ template <class _Tp>
+ struct less_equal : public binary_function<_Tp, _Tp, bool>
+ {
+ bool
+ operator()(const _Tp& __x, const _Tp& __y) const
+ { return __x <= __y; }
+ };
+ /** @} */
+
+ // 20.3.4 logical operations
+ /** @defgroup s20_3_4_logical Boolean Operations Classes
+ * Here are wrapper functors for Boolean operations: @c &&, @c ||, and @c !.
+ *
+ * @{
+ */
+ /// One of the @link s20_3_4_logical Boolean operations functors@endlink.
+ template <class _Tp>
+ struct logical_and : public binary_function<_Tp, _Tp, bool>
+ {
+ bool
+ operator()(const _Tp& __x, const _Tp& __y) const
+ { return __x && __y; }
+ };
+
+ /// One of the @link s20_3_4_logical Boolean operations functors@endlink.
+ template <class _Tp>
+ struct logical_or : public binary_function<_Tp, _Tp, bool>
+ {
+ bool
+ operator()(const _Tp& __x, const _Tp& __y) const
+ { return __x || __y; }
+ };
+
+ /// One of the @link s20_3_4_logical Boolean operations functors@endlink.
+ template <class _Tp>
+ struct logical_not : public unary_function<_Tp, bool>
+ {
+ bool
+ operator()(const _Tp& __x) const
+ { return !__x; }
+ };
+ /** @} */
+
+ // 20.3.5 negators
+ /** @defgroup s20_3_5_negators Negators
+ * The functions @c not1 and @c not2 each take a predicate functor
+ * and return an instance of @c unary_negate or
+ * @c binary_negate, respectively. These classes are functors whose
+ * @c operator() performs the stored predicate function and then returns
+ * the negation of the result.
+ *
+ * For example, given a vector of integers and a trivial predicate,
+ * \code
+ * struct IntGreaterThanThree
+ * : public std::unary_function<int, bool>
+ * {
+ * bool operator() (int x) { return x > 3; }
+ * };
+ *
+ * std::find_if (v.begin(), v.end(), not1(IntGreaterThanThree()));
+ * \endcode
+ * The call to @c find_if will locate the first index (i) of @c v for which
+ * "!(v[i] > 3)" is true.
+ *
+ * The not1/unary_negate combination works on predicates taking a single
+ * argument. The not2/binary_negate combination works on predicates which
+ * take two arguments.
+ *
+ * @{
+ */
+ /// One of the @link s20_3_5_negators negation functors@endlink.
+ template <class _Predicate>
+ class unary_negate
+ : public unary_function<typename _Predicate::argument_type, bool>
+ {
+ protected:
+ _Predicate _M_pred;
+ public:
+ explicit
+ unary_negate(const _Predicate& __x) : _M_pred(__x) {}
+
+ bool
+ operator()(const typename _Predicate::argument_type& __x) const
+ { return !_M_pred(__x); }
+ };
+
+ /// One of the @link s20_3_5_negators negation functors@endlink.
+ template <class _Predicate>
+ inline unary_negate<_Predicate>
+ not1(const _Predicate& __pred)
+ { return unary_negate<_Predicate>(__pred); }
+
+ /// One of the @link s20_3_5_negators negation functors@endlink.
+ template <class _Predicate>
+ class binary_negate
+ : public binary_function<typename _Predicate::first_argument_type,
+ typename _Predicate::second_argument_type,
+ bool>
+ {
+ protected:
+ _Predicate _M_pred;
+ public:
+ explicit
+ binary_negate(const _Predicate& __x)
+ : _M_pred(__x) { }
+
+ bool
+ operator()(const typename _Predicate::first_argument_type& __x,
+ const typename _Predicate::second_argument_type& __y) const
+ { return !_M_pred(__x, __y); }
+ };
+
+ /// One of the @link s20_3_5_negators negation functors@endlink.
+ template <class _Predicate>
+ inline binary_negate<_Predicate>
+ not2(const _Predicate& __pred)
+ { return binary_negate<_Predicate>(__pred); }
+ /** @} */
+
+ // 20.3.6 binders
+ /** @defgroup s20_3_6_binder Binder Classes
+ * Binders turn functions/functors with two arguments into functors with
+ * a single argument, storing an argument to be applied later. For
+ * example, an variable @c B of type @c binder1st is constructed from a
+ * functor @c f and an argument @c x. Later, B's @c operator() is called
+ * with a single argument @c y. The return value is the value of @c f(x,y).
+ * @c B can be "called" with various arguments (y1, y2, ...) and will in
+ * turn call @c f(x,y1), @c f(x,y2), ...
+ *
+ * The function @c bind1st is provided to save some typing. It takes the
+ * function and an argument as parameters, and returns an instance of
+ * @c binder1st.
+ *
+ * The type @c binder2nd and its creator function @c bind2nd do the same
+ * thing, but the stored argument is passed as the second parameter instead
+ * of the first, e.g., @c bind2nd(std::minus<float>,1.3) will create a
+ * functor whose @c operator() accepts a floating-point number, subtracts
+ * 1.3 from it, and returns the result. (If @c bind1st had been used,
+ * the functor would perform "1.3 - x" instead.
+ *
+ * Creator-wrapper functions like @c bind1st are intended to be used in
+ * calling algorithms. Their return values will be temporary objects.
+ * (The goal is to not require you to type names like
+ * @c std::binder1st<std::plus<int>> for declaring a variable to hold the
+ * return value from @c bind1st(std::plus<int>,5).
+ *
+ * These become more useful when combined with the composition functions.
+ *
+ * @{
+ */
+ /// One of the @link s20_3_6_binder binder functors@endlink.
+ template <class _Operation>
+ class binder1st
+ : public unary_function<typename _Operation::second_argument_type,
+ typename _Operation::result_type>
+ {
+ protected:
+ _Operation op;
+ typename _Operation::first_argument_type value;
+ public:
+ binder1st(const _Operation& __x,
+ const typename _Operation::first_argument_type& __y)
+ : op(__x), value(__y) {}
-/// One of the @link s20_3_3_comparisons comparison functors@endlink.
-template <class _Tp>
-struct less_equal : public binary_function<_Tp,_Tp,bool>
-{
- bool operator()(const _Tp& __x, const _Tp& __y) const { return __x <= __y; }
-};
-/** @} */
+ typename _Operation::result_type
+ operator()(const typename _Operation::second_argument_type& __x) const
+ { return op(value, __x); }
+
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // 109. Missing binders for non-const sequence elements
+ typename _Operation::result_type
+ operator()(typename _Operation::second_argument_type& __x) const
+ { return op(value, __x); }
+ };
+
+ /// One of the @link s20_3_6_binder binder functors@endlink.
+ template <class _Operation, class _Tp>
+ inline binder1st<_Operation>
+ bind1st(const _Operation& __fn, const _Tp& __x)
+ {
+ typedef typename _Operation::first_argument_type _Arg1_type;
+ return binder1st<_Operation>(__fn, _Arg1_type(__x));
+ }
-// 20.3.4 logical operations
-/** @defgroup s20_3_4_logical Boolean Operations Classes
- * Here are wrapper functors for Boolean operations: @c &&, @c ||, and @c !.
- *
- * @{
-*/
-/// One of the @link s20_3_4_logical Boolean operations functors@endlink.
-template <class _Tp>
-struct logical_and : public binary_function<_Tp,_Tp,bool>
-{
- bool operator()(const _Tp& __x, const _Tp& __y) const { return __x && __y; }
-};
+ /// One of the @link s20_3_6_binder binder functors@endlink.
+ template <class _Operation>
+ class binder2nd
+ : public unary_function<typename _Operation::first_argument_type,
+ typename _Operation::result_type>
+ {
+ protected:
+ _Operation op;
+ typename _Operation::second_argument_type value;
+ public:
+ binder2nd(const _Operation& __x,
+ const typename _Operation::second_argument_type& __y)
+ : op(__x), value(__y) {}
-/// One of the @link s20_3_4_logical Boolean operations functors@endlink.
-template <class _Tp>
-struct logical_or : public binary_function<_Tp,_Tp,bool>
-{
- bool operator()(const _Tp& __x, const _Tp& __y) const { return __x || __y; }
-};
+ typename _Operation::result_type
+ operator()(const typename _Operation::first_argument_type& __x) const
+ { return op(__x, value); }
+
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // 109. Missing binders for non-const sequence elements
+ typename _Operation::result_type
+ operator()(typename _Operation::first_argument_type& __x) const
+ { return op(__x, value); }
+ };
+
+ /// One of the @link s20_3_6_binder binder functors@endlink.
+ template <class _Operation, class _Tp>
+ inline binder2nd<_Operation>
+ bind2nd(const _Operation& __fn, const _Tp& __x)
+ {
+ typedef typename _Operation::second_argument_type _Arg2_type;
+ return binder2nd<_Operation>(__fn, _Arg2_type(__x));
+ }
+ /** @} */
+
+ // 20.3.7 adaptors pointers functions
+ /** @defgroup s20_3_7_adaptors Adaptors for pointers to functions
+ * The advantage of function objects over pointers to functions is that
+ * the objects in the standard library declare nested typedefs describing
+ * their argument and result types with uniform names (e.g., @c result_type
+ * from the base classes @c unary_function and @c binary_function).
+ * Sometimes those typedefs are required, not just optional.
+ *
+ * Adaptors are provided to turn pointers to unary (single-argument) and
+ * binary (double-argument) functions into function objects. The
+ * long-winded functor @c pointer_to_unary_function is constructed with a
+ * function pointer @c f, and its @c operator() called with argument @c x
+ * returns @c f(x). The functor @c pointer_to_binary_function does the same
+ * thing, but with a double-argument @c f and @c operator().
+ *
+ * The function @c ptr_fun takes a pointer-to-function @c f and constructs
+ * an instance of the appropriate functor.
+ *
+ * @{
+ */
+ /// One of the @link s20_3_7_adaptors adaptors for function pointers@endlink.
+ template <class _Arg, class _Result>
+ class pointer_to_unary_function : public unary_function<_Arg, _Result>
+ {
+ protected:
+ _Result (*_M_ptr)(_Arg);
+ public:
+ pointer_to_unary_function() {}
+
+ explicit
+ pointer_to_unary_function(_Result (*__x)(_Arg))
+ : _M_ptr(__x) {}
-/// One of the @link s20_3_4_logical Boolean operations functors@endlink.
-template <class _Tp>
-struct logical_not : public unary_function<_Tp,bool>
-{
- bool operator()(const _Tp& __x) const { return !__x; }
-};
-/** @} */
-
-// 20.3.5 negators
-/** @defgroup s20_3_5_negators Negators
- * The functions @c not1 and @c not2 each take a predicate functor
- * and return an instance of @c unary_negate or
- * @c binary_negate, respectively. These classes are functors whose
- * @c operator() performs the stored predicate function and then returns
- * the negation of the result.
- *
- * For example, given a vector of integers and a trivial predicate,
- * \code
- * struct IntGreaterThanThree
- * : public std::unary_function<int, bool>
- * {
- * bool operator() (int x) { return x > 3; }
- * };
- *
- * std::find_if (v.begin(), v.end(), not1(IntGreaterThanThree()));
- * \endcode
- * The call to @c find_if will locate the first index (i) of @c v for which
- * "!(v[i] > 3)" is true.
- *
- * The not1/unary_negate combination works on predicates taking a single
- * argument. The not2/binary_negate combination works on predicates which
- * take two arguments.
- *
- * @{
-*/
-/// One of the @link s20_3_5_negators negation functors@endlink.
-template <class _Predicate>
-class unary_negate
- : public unary_function<typename _Predicate::argument_type, bool> {
-protected:
- _Predicate _M_pred;
-public:
- explicit unary_negate(const _Predicate& __x) : _M_pred(__x) {}
- bool operator()(const typename _Predicate::argument_type& __x) const {
- return !_M_pred(__x);
- }
-};
-
-/// One of the @link s20_3_5_negators negation functors@endlink.
-template <class _Predicate>
-inline unary_negate<_Predicate>
-not1(const _Predicate& __pred)
-{
- return unary_negate<_Predicate>(__pred);
-}
-
-/// One of the @link s20_3_5_negators negation functors@endlink.
-template <class _Predicate>
-class binary_negate
- : public binary_function<typename _Predicate::first_argument_type,
- typename _Predicate::second_argument_type,
- bool> {
-protected:
- _Predicate _M_pred;
-public:
- explicit binary_negate(const _Predicate& __x) : _M_pred(__x) {}
- bool operator()(const typename _Predicate::first_argument_type& __x,
- const typename _Predicate::second_argument_type& __y) const
- {
- return !_M_pred(__x, __y);
- }
-};
-
-/// One of the @link s20_3_5_negators negation functors@endlink.
-template <class _Predicate>
-inline binary_negate<_Predicate>
-not2(const _Predicate& __pred)
-{
- return binary_negate<_Predicate>(__pred);
-}
-/** @} */
-
-// 20.3.6 binders
-/** @defgroup s20_3_6_binder Binder Classes
- * Binders turn functions/functors with two arguments into functors with
- * a single argument, storing an argument to be applied later. For
- * example, an variable @c B of type @c binder1st is constructed from a functor
- * @c f and an argument @c x. Later, B's @c operator() is called with a
- * single argument @c y. The return value is the value of @c f(x,y).
- * @c B can be "called" with various arguments (y1, y2, ...) and will in
- * turn call @c f(x,y1), @c f(x,y2), ...
- *
- * The function @c bind1st is provided to save some typing. It takes the
- * function and an argument as parameters, and returns an instance of
- * @c binder1st.
- *
- * The type @c binder2nd and its creator function @c bind2nd do the same
- * thing, but the stored argument is passed as the second parameter instead
- * of the first, e.g., @c bind2nd(std::minus<float>,1.3) will create a
- * functor whose @c operator() accepts a floating-point number, subtracts
- * 1.3 from it, and returns the result. (If @c bind1st had been used,
- * the functor would perform "1.3 - x" instead.
- *
- * Creator-wrapper functions like @c bind1st are intended to be used in
- * calling algorithms. Their return values will be temporary objects.
- * (The goal is to not require you to type names like
- * @c std::binder1st<std::plus<int>> for declaring a variable to hold the
- * return value from @c bind1st(std::plus<int>,5).
- *
- * These become more useful when combined with the composition functions.
- *
- * @{
-*/
-/// One of the @link s20_3_6_binder binder functors@endlink.
-template <class _Operation>
-class binder1st
- : public unary_function<typename _Operation::second_argument_type,
- typename _Operation::result_type> {
-protected:
- _Operation op;
- typename _Operation::first_argument_type value;
-public:
- binder1st(const _Operation& __x,
- const typename _Operation::first_argument_type& __y)
- : op(__x), value(__y) {}
- typename _Operation::result_type
- operator()(const typename _Operation::second_argument_type& __x) const {
- return op(value, __x);
- }
- // _GLIBCXX_RESOLVE_LIB_DEFECTS
- // 109. Missing binders for non-const sequence elements
- typename _Operation::result_type
- operator()(typename _Operation::second_argument_type& __x) const {
- return op(value, __x);
- }
-};
-
-/// One of the @link s20_3_6_binder binder functors@endlink.
-template <class _Operation, class _Tp>
-inline binder1st<_Operation>
-bind1st(const _Operation& __fn, const _Tp& __x)
-{
- typedef typename _Operation::first_argument_type _Arg1_type;
- return binder1st<_Operation>(__fn, _Arg1_type(__x));
-}
-
-/// One of the @link s20_3_6_binder binder functors@endlink.
-template <class _Operation>
-class binder2nd
- : public unary_function<typename _Operation::first_argument_type,
- typename _Operation::result_type> {
-protected:
- _Operation op;
- typename _Operation::second_argument_type value;
-public:
- binder2nd(const _Operation& __x,
- const typename _Operation::second_argument_type& __y)
- : op(__x), value(__y) {}
- typename _Operation::result_type
- operator()(const typename _Operation::first_argument_type& __x) const {
- return op(__x, value);
- }
- // _GLIBCXX_RESOLVE_LIB_DEFECTS
- // 109. Missing binders for non-const sequence elements
- typename _Operation::result_type
- operator()(typename _Operation::first_argument_type& __x) const {
- return op(__x, value);
- }
-};
-
-/// One of the @link s20_3_6_binder binder functors@endlink.
-template <class _Operation, class _Tp>
-inline binder2nd<_Operation>
-bind2nd(const _Operation& __fn, const _Tp& __x)
-{
- typedef typename _Operation::second_argument_type _Arg2_type;
- return binder2nd<_Operation>(__fn, _Arg2_type(__x));
-}
-/** @} */
-
-// 20.3.7 adaptors pointers functions
-/** @defgroup s20_3_7_adaptors Adaptors for pointers to functions
- * The advantage of function objects over pointers to functions is that
- * the objects in the standard library declare nested typedefs describing
- * their argument and result types with uniform names (e.g., @c result_type
- * from the base classes @c unary_function and @c binary_function).
- * Sometimes those typedefs are required, not just optional.
- *
- * Adaptors are provided to turn pointers to unary (single-argument) and
- * binary (double-argument) functions into function objects. The long-winded
- * functor @c pointer_to_unary_function is constructed with a function
- * pointer @c f, and its @c operator() called with argument @c x returns
- * @c f(x). The functor @c pointer_to_binary_function does the same thing,
- * but with a double-argument @c f and @c operator().
- *
- * The function @c ptr_fun takes a pointer-to-function @c f and constructs
- * an instance of the appropriate functor.
- *
- * @{
-*/
-/// One of the @link s20_3_7_adaptors adaptors for function pointers@endlink.
-template <class _Arg, class _Result>
-class pointer_to_unary_function : public unary_function<_Arg, _Result> {
-protected:
- _Result (*_M_ptr)(_Arg);
-public:
- pointer_to_unary_function() {}
- explicit pointer_to_unary_function(_Result (*__x)(_Arg)) : _M_ptr(__x) {}
- _Result operator()(_Arg __x) const { return _M_ptr(__x); }
-};
-
-/// One of the @link s20_3_7_adaptors adaptors for function pointers@endlink.
-template <class _Arg, class _Result>
-inline pointer_to_unary_function<_Arg, _Result> ptr_fun(_Result (*__x)(_Arg))
-{
- return pointer_to_unary_function<_Arg, _Result>(__x);
-}
-
-/// One of the @link s20_3_7_adaptors adaptors for function pointers@endlink.
-template <class _Arg1, class _Arg2, class _Result>
-class pointer_to_binary_function :
- public binary_function<_Arg1,_Arg2,_Result> {
-protected:
- _Result (*_M_ptr)(_Arg1, _Arg2);
-public:
- pointer_to_binary_function() {}
- explicit pointer_to_binary_function(_Result (*__x)(_Arg1, _Arg2))
+ _Result
+ operator()(_Arg __x) const
+ { return _M_ptr(__x); }
+ };
+
+ /// One of the @link s20_3_7_adaptors adaptors for function pointers@endlink.
+ template <class _Arg, class _Result>
+ inline pointer_to_unary_function<_Arg, _Result>
+ ptr_fun(_Result (*__x)(_Arg))
+ { return pointer_to_unary_function<_Arg, _Result>(__x); }
+
+ /// One of the @link s20_3_7_adaptors adaptors for function pointers@endlink.
+ template <class _Arg1, class _Arg2, class _Result>
+ class pointer_to_binary_function
+ : public binary_function<_Arg1, _Arg2, _Result>
+ {
+ protected:
+ _Result (*_M_ptr)(_Arg1, _Arg2);
+ public:
+ pointer_to_binary_function() {}
+
+ explicit
+ pointer_to_binary_function(_Result (*__x)(_Arg1, _Arg2))
: _M_ptr(__x) {}
- _Result operator()(_Arg1 __x, _Arg2 __y) const {
- return _M_ptr(__x, __y);
- }
-};
-
-/// One of the @link s20_3_7_adaptors adaptors for function pointers@endlink.
-template <class _Arg1, class _Arg2, class _Result>
-inline pointer_to_binary_function<_Arg1,_Arg2,_Result>
-ptr_fun(_Result (*__x)(_Arg1, _Arg2)) {
- return pointer_to_binary_function<_Arg1,_Arg2,_Result>(__x);
-}
-/** @} */
-
-template <class _Tp>
-struct _Identity : public unary_function<_Tp,_Tp> {
- _Tp& operator()(_Tp& __x) const { return __x; }
- const _Tp& operator()(const _Tp& __x) const { return __x; }
-};
-
-template <class _Pair>
-struct _Select1st : public unary_function<_Pair, typename _Pair::first_type> {
- typename _Pair::first_type& operator()(_Pair& __x) const {
- return __x.first;
- }
- const typename _Pair::first_type& operator()(const _Pair& __x) const {
- return __x.first;
- }
-};
-
-template <class _Pair>
-struct _Select2nd : public unary_function<_Pair, typename _Pair::second_type>
-{
- typename _Pair::second_type& operator()(_Pair& __x) const {
- return __x.second;
- }
- const typename _Pair::second_type& operator()(const _Pair& __x) const {
- return __x.second;
- }
-};
-
-// 20.3.8 adaptors pointers members
-/** @defgroup s20_3_8_memadaptors Adaptors for pointers to members
- * There are a total of 16 = 2^4 function objects in this family.
- * (1) Member functions taking no arguments vs member functions taking
- * one argument.
- * (2) Call through pointer vs call through reference.
- * (3) Member function with void return type vs member function with
- * non-void return type.
- * (4) Const vs non-const member function.
- *
- * Note that choice (3) is nothing more than a workaround: according
- * to the draft, compilers should handle void and non-void the same way.
- * This feature is not yet widely implemented, though. You can only use
- * member functions returning void if your compiler supports partial
- * specialization.
- *
- * All of this complexity is in the function objects themselves. You can
- * ignore it by using the helper function mem_fun and mem_fun_ref,
- * which create whichever type of adaptor is appropriate.
- *
- * @{
-*/
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Ret, class _Tp>
-class mem_fun_t : public unary_function<_Tp*,_Ret> {
-public:
- explicit mem_fun_t(_Ret (_Tp::*__pf)()) : _M_f(__pf) {}
- _Ret operator()(_Tp* __p) const { return (__p->*_M_f)(); }
-private:
- _Ret (_Tp::*_M_f)();
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Ret, class _Tp>
-class const_mem_fun_t : public unary_function<const _Tp*,_Ret> {
-public:
- explicit const_mem_fun_t(_Ret (_Tp::*__pf)() const) : _M_f(__pf) {}
- _Ret operator()(const _Tp* __p) const { return (__p->*_M_f)(); }
-private:
- _Ret (_Tp::*_M_f)() const;
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Ret, class _Tp>
-class mem_fun_ref_t : public unary_function<_Tp,_Ret> {
-public:
- explicit mem_fun_ref_t(_Ret (_Tp::*__pf)()) : _M_f(__pf) {}
- _Ret operator()(_Tp& __r) const { return (__r.*_M_f)(); }
-private:
- _Ret (_Tp::*_M_f)();
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Ret, class _Tp>
-class const_mem_fun_ref_t : public unary_function<_Tp,_Ret> {
-public:
- explicit const_mem_fun_ref_t(_Ret (_Tp::*__pf)() const) : _M_f(__pf) {}
- _Ret operator()(const _Tp& __r) const { return (__r.*_M_f)(); }
-private:
- _Ret (_Tp::*_M_f)() const;
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Ret, class _Tp, class _Arg>
-class mem_fun1_t : public binary_function<_Tp*,_Arg,_Ret> {
-public:
- explicit mem_fun1_t(_Ret (_Tp::*__pf)(_Arg)) : _M_f(__pf) {}
- _Ret operator()(_Tp* __p, _Arg __x) const { return (__p->*_M_f)(__x); }
-private:
- _Ret (_Tp::*_M_f)(_Arg);
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Ret, class _Tp, class _Arg>
-class const_mem_fun1_t : public binary_function<const _Tp*,_Arg,_Ret> {
-public:
- explicit const_mem_fun1_t(_Ret (_Tp::*__pf)(_Arg) const) : _M_f(__pf) {}
- _Ret operator()(const _Tp* __p, _Arg __x) const
- { return (__p->*_M_f)(__x); }
-private:
- _Ret (_Tp::*_M_f)(_Arg) const;
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Ret, class _Tp, class _Arg>
-class mem_fun1_ref_t : public binary_function<_Tp,_Arg,_Ret> {
-public:
- explicit mem_fun1_ref_t(_Ret (_Tp::*__pf)(_Arg)) : _M_f(__pf) {}
- _Ret operator()(_Tp& __r, _Arg __x) const { return (__r.*_M_f)(__x); }
-private:
- _Ret (_Tp::*_M_f)(_Arg);
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Ret, class _Tp, class _Arg>
-class const_mem_fun1_ref_t : public binary_function<_Tp,_Arg,_Ret> {
-public:
- explicit const_mem_fun1_ref_t(_Ret (_Tp::*__pf)(_Arg) const) : _M_f(__pf) {}
- _Ret operator()(const _Tp& __r, _Arg __x) const { return (__r.*_M_f)(__x); }
-private:
- _Ret (_Tp::*_M_f)(_Arg) const;
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Tp>
-class mem_fun_t<void, _Tp> : public unary_function<_Tp*,void> {
-public:
- explicit mem_fun_t(void (_Tp::*__pf)()) : _M_f(__pf) {}
- void operator()(_Tp* __p) const { (__p->*_M_f)(); }
-private:
- void (_Tp::*_M_f)();
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Tp>
-class const_mem_fun_t<void, _Tp> : public unary_function<const _Tp*,void> {
-public:
- explicit const_mem_fun_t(void (_Tp::*__pf)() const) : _M_f(__pf) {}
- void operator()(const _Tp* __p) const { (__p->*_M_f)(); }
-private:
- void (_Tp::*_M_f)() const;
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Tp>
-class mem_fun_ref_t<void, _Tp> : public unary_function<_Tp,void> {
-public:
- explicit mem_fun_ref_t(void (_Tp::*__pf)()) : _M_f(__pf) {}
- void operator()(_Tp& __r) const { (__r.*_M_f)(); }
-private:
- void (_Tp::*_M_f)();
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Tp>
-class const_mem_fun_ref_t<void, _Tp> : public unary_function<_Tp,void> {
-public:
- explicit const_mem_fun_ref_t(void (_Tp::*__pf)() const) : _M_f(__pf) {}
- void operator()(const _Tp& __r) const { (__r.*_M_f)(); }
-private:
- void (_Tp::*_M_f)() const;
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Tp, class _Arg>
-class mem_fun1_t<void, _Tp, _Arg> : public binary_function<_Tp*,_Arg,void> {
-public:
- explicit mem_fun1_t(void (_Tp::*__pf)(_Arg)) : _M_f(__pf) {}
- void operator()(_Tp* __p, _Arg __x) const { (__p->*_M_f)(__x); }
-private:
- void (_Tp::*_M_f)(_Arg);
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Tp, class _Arg>
-class const_mem_fun1_t<void, _Tp, _Arg>
- : public binary_function<const _Tp*,_Arg,void> {
-public:
- explicit const_mem_fun1_t(void (_Tp::*__pf)(_Arg) const) : _M_f(__pf) {}
- void operator()(const _Tp* __p, _Arg __x) const { (__p->*_M_f)(__x); }
-private:
- void (_Tp::*_M_f)(_Arg) const;
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Tp, class _Arg>
-class mem_fun1_ref_t<void, _Tp, _Arg>
- : public binary_function<_Tp,_Arg,void> {
-public:
- explicit mem_fun1_ref_t(void (_Tp::*__pf)(_Arg)) : _M_f(__pf) {}
- void operator()(_Tp& __r, _Arg __x) const { (__r.*_M_f)(__x); }
-private:
- void (_Tp::*_M_f)(_Arg);
-};
-
-/// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
-template <class _Tp, class _Arg>
-class const_mem_fun1_ref_t<void, _Tp, _Arg>
- : public binary_function<_Tp,_Arg,void> {
-public:
- explicit const_mem_fun1_ref_t(void (_Tp::*__pf)(_Arg) const) : _M_f(__pf) {}
- void operator()(const _Tp& __r, _Arg __x) const { (__r.*_M_f)(__x); }
-private:
- void (_Tp::*_M_f)(_Arg) const;
-};
-
-
-// Mem_fun adaptor helper functions. There are only two:
-// mem_fun and mem_fun_ref.
-
-template <class _Ret, class _Tp>
-inline mem_fun_t<_Ret,_Tp> mem_fun(_Ret (_Tp::*__f)())
- { return mem_fun_t<_Ret,_Tp>(__f); }
-
-template <class _Ret, class _Tp>
-inline const_mem_fun_t<_Ret,_Tp> mem_fun(_Ret (_Tp::*__f)() const)
- { return const_mem_fun_t<_Ret,_Tp>(__f); }
-
-template <class _Ret, class _Tp>
-inline mem_fun_ref_t<_Ret,_Tp> mem_fun_ref(_Ret (_Tp::*__f)())
- { return mem_fun_ref_t<_Ret,_Tp>(__f); }
-
-template <class _Ret, class _Tp>
-inline const_mem_fun_ref_t<_Ret,_Tp> mem_fun_ref(_Ret (_Tp::*__f)() const)
- { return const_mem_fun_ref_t<_Ret,_Tp>(__f); }
-
-template <class _Ret, class _Tp, class _Arg>
-inline mem_fun1_t<_Ret,_Tp,_Arg> mem_fun(_Ret (_Tp::*__f)(_Arg))
- { return mem_fun1_t<_Ret,_Tp,_Arg>(__f); }
-
-template <class _Ret, class _Tp, class _Arg>
-inline const_mem_fun1_t<_Ret,_Tp,_Arg> mem_fun(_Ret (_Tp::*__f)(_Arg) const)
- { return const_mem_fun1_t<_Ret,_Tp,_Arg>(__f); }
-
-template <class _Ret, class _Tp, class _Arg>
-inline mem_fun1_ref_t<_Ret,_Tp,_Arg> mem_fun_ref(_Ret (_Tp::*__f)(_Arg))
- { return mem_fun1_ref_t<_Ret,_Tp,_Arg>(__f); }
-
-template <class _Ret, class _Tp, class _Arg>
-inline const_mem_fun1_ref_t<_Ret,_Tp,_Arg>
-mem_fun_ref(_Ret (_Tp::*__f)(_Arg) const)
- { return const_mem_fun1_ref_t<_Ret,_Tp,_Arg>(__f); }
-
-/** @} */
+
+ _Result
+ operator()(_Arg1 __x, _Arg2 __y) const
+ { return _M_ptr(__x, __y); }
+ };
+
+ /// One of the @link s20_3_7_adaptors adaptors for function pointers@endlink.
+ template <class _Arg1, class _Arg2, class _Result>
+ inline pointer_to_binary_function<_Arg1, _Arg2, _Result>
+ ptr_fun(_Result (*__x)(_Arg1, _Arg2))
+ { return pointer_to_binary_function<_Arg1, _Arg2, _Result>(__x); }
+ /** @} */
+
+ template <class _Tp>
+ struct _Identity : public unary_function<_Tp,_Tp>
+ {
+ _Tp&
+ operator()(_Tp& __x) const
+ { return __x; }
+
+ const _Tp&
+ operator()(const _Tp& __x) const
+ { return __x; }
+ };
+
+ template <class _Pair>
+ struct _Select1st : public unary_function<_Pair,
+ typename _Pair::first_type>
+ {
+ typename _Pair::first_type&
+ operator()(_Pair& __x) const
+ { return __x.first; }
+
+ const typename _Pair::first_type&
+ operator()(const _Pair& __x) const
+ { return __x.first; }
+ };
+
+ template <class _Pair>
+ struct _Select2nd : public unary_function<_Pair,
+ typename _Pair::second_type>
+ {
+ typename _Pair::second_type&
+ operator()(_Pair& __x) const
+ { return __x.second; }
+
+ const typename _Pair::second_type&
+ operator()(const _Pair& __x) const
+ { return __x.second; }
+ };
+
+ // 20.3.8 adaptors pointers members
+ /** @defgroup s20_3_8_memadaptors Adaptors for pointers to members
+ * There are a total of 16 = 2^4 function objects in this family.
+ * (1) Member functions taking no arguments vs member functions taking
+ * one argument.
+ * (2) Call through pointer vs call through reference.
+ * (3) Member function with void return type vs member function with
+ * non-void return type.
+ * (4) Const vs non-const member function.
+ *
+ * Note that choice (3) is nothing more than a workaround: according
+ * to the draft, compilers should handle void and non-void the same way.
+ * This feature is not yet widely implemented, though. You can only use
+ * member functions returning void if your compiler supports partial
+ * specialization.
+ *
+ * All of this complexity is in the function objects themselves. You can
+ * ignore it by using the helper function mem_fun and mem_fun_ref,
+ * which create whichever type of adaptor is appropriate.
+ *
+ * @{
+ */
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Ret, class _Tp>
+ class mem_fun_t : public unary_function<_Tp*, _Ret>
+ {
+ public:
+ explicit
+ mem_fun_t(_Ret (_Tp::*__pf)())
+ : _M_f(__pf) {}
+
+ _Ret
+ operator()(_Tp* __p) const
+ { return (__p->*_M_f)(); }
+ private:
+ _Ret (_Tp::*_M_f)();
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Ret, class _Tp>
+ class const_mem_fun_t : public unary_function<const _Tp*, _Ret>
+ {
+ public:
+ explicit
+ const_mem_fun_t(_Ret (_Tp::*__pf)() const)
+ : _M_f(__pf) {}
+
+ _Ret
+ operator()(const _Tp* __p) const
+ { return (__p->*_M_f)(); }
+ private:
+ _Ret (_Tp::*_M_f)() const;
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Ret, class _Tp>
+ class mem_fun_ref_t : public unary_function<_Tp, _Ret>
+ {
+ public:
+ explicit
+ mem_fun_ref_t(_Ret (_Tp::*__pf)())
+ : _M_f(__pf) {}
+
+ _Ret
+ operator()(_Tp& __r) const
+ { return (__r.*_M_f)(); }
+ private:
+ _Ret (_Tp::*_M_f)();
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Ret, class _Tp>
+ class const_mem_fun_ref_t : public unary_function<_Tp, _Ret>
+ {
+ public:
+ explicit
+ const_mem_fun_ref_t(_Ret (_Tp::*__pf)() const)
+ : _M_f(__pf) {}
+
+ _Ret
+ operator()(const _Tp& __r) const
+ { return (__r.*_M_f)(); }
+ private:
+ _Ret (_Tp::*_M_f)() const;
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Ret, class _Tp, class _Arg>
+ class mem_fun1_t : public binary_function<_Tp*, _Arg, _Ret>
+ {
+ public:
+ explicit
+ mem_fun1_t(_Ret (_Tp::*__pf)(_Arg))
+ : _M_f(__pf) {}
+
+ _Ret
+ operator()(_Tp* __p, _Arg __x) const
+ { return (__p->*_M_f)(__x); }
+ private:
+ _Ret (_Tp::*_M_f)(_Arg);
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Ret, class _Tp, class _Arg>
+ class const_mem_fun1_t : public binary_function<const _Tp*, _Arg, _Ret>
+ {
+ public:
+ explicit
+ const_mem_fun1_t(_Ret (_Tp::*__pf)(_Arg) const)
+ : _M_f(__pf) {}
+
+ _Ret
+ operator()(const _Tp* __p, _Arg __x) const
+ { return (__p->*_M_f)(__x); }
+ private:
+ _Ret (_Tp::*_M_f)(_Arg) const;
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Ret, class _Tp, class _Arg>
+ class mem_fun1_ref_t : public binary_function<_Tp, _Arg, _Ret>
+ {
+ public:
+ explicit
+ mem_fun1_ref_t(_Ret (_Tp::*__pf)(_Arg))
+ : _M_f(__pf) {}
+
+ _Ret
+ operator()(_Tp& __r, _Arg __x) const
+ { return (__r.*_M_f)(__x); }
+ private:
+ _Ret (_Tp::*_M_f)(_Arg);
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Ret, class _Tp, class _Arg>
+ class const_mem_fun1_ref_t : public binary_function<_Tp, _Arg, _Ret>
+ {
+ public:
+ explicit
+ const_mem_fun1_ref_t(_Ret (_Tp::*__pf)(_Arg) const)
+ : _M_f(__pf) {}
+
+ _Ret
+ operator()(const _Tp& __r, _Arg __x) const
+ { return (__r.*_M_f)(__x); }
+ private:
+ _Ret (_Tp::*_M_f)(_Arg) const;
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Tp>
+ class mem_fun_t<void, _Tp> : public unary_function<_Tp*, void>
+ {
+ public:
+ explicit
+ mem_fun_t(void (_Tp::*__pf)())
+ : _M_f(__pf) {}
+
+ void
+ operator()(_Tp* __p) const
+ { (__p->*_M_f)(); }
+ private:
+ void (_Tp::*_M_f)();
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Tp>
+ class const_mem_fun_t<void, _Tp> : public unary_function<const _Tp*, void>
+ {
+ public:
+ explicit
+ const_mem_fun_t(void (_Tp::*__pf)() const)
+ : _M_f(__pf) {}
+
+ void
+ operator()(const _Tp* __p) const
+ { (__p->*_M_f)(); }
+ private:
+ void (_Tp::*_M_f)() const;
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Tp>
+ class mem_fun_ref_t<void, _Tp> : public unary_function<_Tp, void>
+ {
+ public:
+ explicit
+ mem_fun_ref_t(void (_Tp::*__pf)())
+ : _M_f(__pf) {}
+
+ void
+ operator()(_Tp& __r) const
+ { (__r.*_M_f)(); }
+ private:
+ void (_Tp::*_M_f)();
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Tp>
+ class const_mem_fun_ref_t<void, _Tp> : public unary_function<_Tp, void>
+ {
+ public:
+ explicit
+ const_mem_fun_ref_t(void (_Tp::*__pf)() const)
+ : _M_f(__pf) {}
+
+ void
+ operator()(const _Tp& __r) const
+ { (__r.*_M_f)(); }
+ private:
+ void (_Tp::*_M_f)() const;
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Tp, class _Arg>
+ class mem_fun1_t<void, _Tp, _Arg> : public binary_function<_Tp*, _Arg, void>
+ {
+ public:
+ explicit
+ mem_fun1_t(void (_Tp::*__pf)(_Arg))
+ : _M_f(__pf) {}
+
+ void
+ operator()(_Tp* __p, _Arg __x) const
+ { (__p->*_M_f)(__x); }
+ private:
+ void (_Tp::*_M_f)(_Arg);
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Tp, class _Arg>
+ class const_mem_fun1_t<void, _Tp, _Arg>
+ : public binary_function<const _Tp*, _Arg, void>
+ {
+ public:
+ explicit
+ const_mem_fun1_t(void (_Tp::*__pf)(_Arg) const)
+ : _M_f(__pf) {}
+
+ void
+ operator()(const _Tp* __p, _Arg __x) const
+ { (__p->*_M_f)(__x); }
+ private:
+ void (_Tp::*_M_f)(_Arg) const;
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Tp, class _Arg>
+ class mem_fun1_ref_t<void, _Tp, _Arg>
+ : public binary_function<_Tp, _Arg, void>
+ {
+ public:
+ explicit
+ mem_fun1_ref_t(void (_Tp::*__pf)(_Arg))
+ : _M_f(__pf) {}
+
+ void
+ operator()(_Tp& __r, _Arg __x) const
+ { (__r.*_M_f)(__x); }
+ private:
+ void (_Tp::*_M_f)(_Arg);
+ };
+
+ /// One of the @link s20_3_8_memadaptors adaptors for member pointers@endlink.
+ template <class _Tp, class _Arg>
+ class const_mem_fun1_ref_t<void, _Tp, _Arg>
+ : public binary_function<_Tp, _Arg, void>
+ {
+ public:
+ explicit
+ const_mem_fun1_ref_t(void (_Tp::*__pf)(_Arg) const)
+ : _M_f(__pf) {}
+
+ void
+ operator()(const _Tp& __r, _Arg __x) const
+ { (__r.*_M_f)(__x); }
+ private:
+ void (_Tp::*_M_f)(_Arg) const;
+ };
+
+ // Mem_fun adaptor helper functions. There are only two:
+ // mem_fun and mem_fun_ref.
+ template <class _Ret, class _Tp>
+ inline mem_fun_t<_Ret, _Tp>
+ mem_fun(_Ret (_Tp::*__f)())
+ { return mem_fun_t<_Ret, _Tp>(__f); }
+
+ template <class _Ret, class _Tp>
+ inline const_mem_fun_t<_Ret, _Tp>
+ mem_fun(_Ret (_Tp::*__f)() const)
+ { return const_mem_fun_t<_Ret, _Tp>(__f); }
+
+ template <class _Ret, class _Tp>
+ inline mem_fun_ref_t<_Ret, _Tp>
+ mem_fun_ref(_Ret (_Tp::*__f)())
+ { return mem_fun_ref_t<_Ret, _Tp>(__f); }
+
+ template <class _Ret, class _Tp>
+ inline const_mem_fun_ref_t<_Ret, _Tp>
+ mem_fun_ref(_Ret (_Tp::*__f)() const)
+ { return const_mem_fun_ref_t<_Ret, _Tp>(__f); }
+
+ template <class _Ret, class _Tp, class _Arg>
+ inline mem_fun1_t<_Ret, _Tp, _Arg>
+ mem_fun(_Ret (_Tp::*__f)(_Arg))
+ { return mem_fun1_t<_Ret, _Tp, _Arg>(__f); }
+
+ template <class _Ret, class _Tp, class _Arg>
+ inline const_mem_fun1_t<_Ret, _Tp, _Arg>
+ mem_fun(_Ret (_Tp::*__f)(_Arg) const)
+ { return const_mem_fun1_t<_Ret, _Tp, _Arg>(__f); }
+
+ template <class _Ret, class _Tp, class _Arg>
+ inline mem_fun1_ref_t<_Ret, _Tp, _Arg>
+ mem_fun_ref(_Ret (_Tp::*__f)(_Arg))
+ { return mem_fun1_ref_t<_Ret, _Tp, _Arg>(__f); }
+
+ template <class _Ret, class _Tp, class _Arg>
+ inline const_mem_fun1_ref_t<_Ret, _Tp, _Arg>
+ mem_fun_ref(_Ret (_Tp::*__f)(_Arg) const)
+ { return const_mem_fun1_ref_t<_Ret, _Tp, _Arg>(__f); }
+
+ /** @} */
} // namespace std
diff --git a/libstdc++-v3/include/bits/stl_heap.h b/libstdc++-v3/include/bits/stl_heap.h
index c16cbe02e6f..eff7fd351d7 100644
--- a/libstdc++-v3/include/bits/stl_heap.h
+++ b/libstdc++-v3/include/bits/stl_heap.h
@@ -1,6 +1,6 @@
// Heap implementation -*- C++ -*-
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -72,12 +72,13 @@ namespace std
__is_heap(_RandomAccessIterator __first, _Distance __n)
{
_Distance __parent = 0;
- for (_Distance __child = 1; __child < __n; ++__child) {
- if (__first[__parent] < __first[__child])
- return false;
- if ((__child & 1) == 0)
- ++__parent;
- }
+ for (_Distance __child = 1; __child < __n; ++__child)
+ {
+ if (__first[__parent] < __first[__child])
+ return false;
+ if ((__child & 1) == 0)
+ ++__parent;
+ }
return true;
}
@@ -88,12 +89,13 @@ namespace std
_Distance __n)
{
_Distance __parent = 0;
- for (_Distance __child = 1; __child < __n; ++__child) {
- if (__comp(__first[__parent], __first[__child]))
- return false;
- if ((__child & 1) == 0)
- ++__parent;
- }
+ for (_Distance __child = 1; __child < __n; ++__child)
+ {
+ if (__comp(__first[__parent], __first[__child]))
+ return false;
+ if ((__child & 1) == 0)
+ ++__parent;
+ }
return true;
}
@@ -111,16 +113,17 @@ namespace std
// Heap-manipulation functions: push_heap, pop_heap, make_heap, sort_heap.
template<typename _RandomAccessIterator, typename _Distance, typename _Tp>
- void
+ void
__push_heap(_RandomAccessIterator __first,
_Distance __holeIndex, _Distance __topIndex, _Tp __value)
{
_Distance __parent = (__holeIndex - 1) / 2;
- while (__holeIndex > __topIndex && *(__first + __parent) < __value) {
- *(__first + __holeIndex) = *(__first + __parent);
- __holeIndex = __parent;
- __parent = (__holeIndex - 1) / 2;
- }
+ while (__holeIndex > __topIndex && *(__first + __parent) < __value)
+ {
+ *(__first + __holeIndex) = *(__first + __parent);
+ __holeIndex = __parent;
+ __parent = (__holeIndex - 1) / 2;
+ }
*(__first + __holeIndex) = __value;
}
@@ -134,7 +137,7 @@ namespace std
* range [first,last-1). After completion, [first,last) is a valid heap.
*/
template<typename _RandomAccessIterator>
- inline void
+ inline void
push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
{
typedef typename iterator_traits<_RandomAccessIterator>::value_type
@@ -149,22 +152,24 @@ namespace std
__glibcxx_requires_valid_range(__first, __last);
// __glibcxx_requires_heap(__first, __last - 1);
- std::__push_heap(__first, _DistanceType((__last - __first) - 1), _DistanceType(0),
- _ValueType(*(__last - 1)));
+ std::__push_heap(__first, _DistanceType((__last - __first) - 1),
+ _DistanceType(0), _ValueType(*(__last - 1)));
}
- template<typename _RandomAccessIterator, typename _Distance, typename _Tp,
+ template<typename _RandomAccessIterator, typename _Distance, typename _Tp,
typename _Compare>
void
__push_heap(_RandomAccessIterator __first, _Distance __holeIndex,
_Distance __topIndex, _Tp __value, _Compare __comp)
{
_Distance __parent = (__holeIndex - 1) / 2;
- while (__holeIndex > __topIndex && __comp(*(__first + __parent), __value)) {
- *(__first + __holeIndex) = *(__first + __parent);
- __holeIndex = __parent;
- __parent = (__holeIndex - 1) / 2;
- }
+ while (__holeIndex > __topIndex
+ && __comp(*(__first + __parent), __value))
+ {
+ *(__first + __holeIndex) = *(__first + __parent);
+ __holeIndex = __parent;
+ __parent = (__holeIndex - 1) / 2;
+ }
*(__first + __holeIndex) = __value;
}
@@ -180,7 +185,7 @@ namespace std
* Compare operations are performed using comp.
*/
template<typename _RandomAccessIterator, typename _Compare>
- inline void
+ inline void
push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
_Compare __comp)
{
@@ -195,39 +200,43 @@ namespace std
__glibcxx_requires_valid_range(__first, __last);
__glibcxx_requires_heap_pred(__first, __last - 1, __comp);
- std::__push_heap(__first, _DistanceType((__last - __first) - 1), _DistanceType(0),
- _ValueType(*(__last - 1)), __comp);
+ std::__push_heap(__first, _DistanceType((__last - __first) - 1),
+ _DistanceType(0), _ValueType(*(__last - 1)), __comp);
}
template<typename _RandomAccessIterator, typename _Distance, typename _Tp>
- void
+ void
__adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
_Distance __len, _Tp __value)
{
- _Distance __topIndex = __holeIndex;
+ const _Distance __topIndex = __holeIndex;
_Distance __secondChild = 2 * __holeIndex + 2;
- while (__secondChild < __len) {
- if (*(__first + __secondChild) < *(__first + (__secondChild - 1)))
- __secondChild--;
- *(__first + __holeIndex) = *(__first + __secondChild);
- __holeIndex = __secondChild;
- __secondChild = 2 * (__secondChild + 1);
- }
- if (__secondChild == __len) {
- *(__first + __holeIndex) = *(__first + (__secondChild - 1));
- __holeIndex = __secondChild - 1;
- }
+ while (__secondChild < __len)
+ {
+ if (*(__first + __secondChild) < *(__first + (__secondChild - 1)))
+ __secondChild--;
+ *(__first + __holeIndex) = *(__first + __secondChild);
+ __holeIndex = __secondChild;
+ __secondChild = 2 * (__secondChild + 1);
+ }
+ if (__secondChild == __len)
+ {
+ *(__first + __holeIndex) = *(__first + (__secondChild - 1));
+ __holeIndex = __secondChild - 1;
+ }
std::__push_heap(__first, __holeIndex, __topIndex, __value);
}
template<typename _RandomAccessIterator, typename _Tp>
- inline void
+ inline void
__pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
_RandomAccessIterator __result, _Tp __value)
{
- typedef typename iterator_traits<_RandomAccessIterator>::difference_type _Distance;
+ typedef typename iterator_traits<_RandomAccessIterator>::difference_type
+ _Distance;
*__result = *__first;
- std::__adjust_heap(__first, _Distance(0), _Distance(__last - __first), __value);
+ std::__adjust_heap(__first, _Distance(0), _Distance(__last - __first),
+ __value);
}
/**
@@ -243,7 +252,8 @@ namespace std
inline void
pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
{
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
// concept requirements
__glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<
@@ -252,7 +262,8 @@ namespace std
__glibcxx_requires_valid_range(__first, __last);
__glibcxx_requires_heap(__first, __last);
- std::__pop_heap(__first, __last - 1, __last - 1, _ValueType(*(__last - 1)));
+ std::__pop_heap(__first, __last - 1, __last - 1,
+ _ValueType(*(__last - 1)));
}
template<typename _RandomAccessIterator, typename _Distance,
@@ -261,30 +272,34 @@ namespace std
__adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
_Distance __len, _Tp __value, _Compare __comp)
{
- _Distance __topIndex = __holeIndex;
+ const _Distance __topIndex = __holeIndex;
_Distance __secondChild = 2 * __holeIndex + 2;
- while (__secondChild < __len) {
- if (__comp(*(__first + __secondChild), *(__first + (__secondChild - 1))))
- __secondChild--;
- *(__first + __holeIndex) = *(__first + __secondChild);
- __holeIndex = __secondChild;
- __secondChild = 2 * (__secondChild + 1);
- }
- if (__secondChild == __len) {
- *(__first + __holeIndex) = *(__first + (__secondChild - 1));
- __holeIndex = __secondChild - 1;
- }
+ while (__secondChild < __len)
+ {
+ if (__comp(*(__first + __secondChild),
+ *(__first + (__secondChild - 1))))
+ __secondChild--;
+ *(__first + __holeIndex) = *(__first + __secondChild);
+ __holeIndex = __secondChild;
+ __secondChild = 2 * (__secondChild + 1);
+ }
+ if (__secondChild == __len)
+ {
+ *(__first + __holeIndex) = *(__first + (__secondChild - 1));
+ __holeIndex = __secondChild - 1;
+ }
std::__push_heap(__first, __holeIndex, __topIndex, __value, __comp);
}
template<typename _RandomAccessIterator, typename _Tp, typename _Compare>
- inline void
+ inline void
__pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
_RandomAccessIterator __result, _Tp __value, _Compare __comp)
{
- typedef typename iterator_traits<_RandomAccessIterator>::difference_type _Distance;
+ typedef typename iterator_traits<_RandomAccessIterator>::difference_type
+ _Distance;
*__result = *__first;
- std::__adjust_heap(__first, _Distance(0), _Distance(__last - __first),
+ std::__adjust_heap(__first, _Distance(0), _Distance(__last - __first),
__value, __comp);
}
@@ -300,7 +315,7 @@ namespace std
* made using comp.
*/
template<typename _RandomAccessIterator, typename _Compare>
- inline void
+ inline void
pop_heap(_RandomAccessIterator __first,
_RandomAccessIterator __last, _Compare __comp)
{
@@ -310,8 +325,10 @@ namespace std
__glibcxx_requires_valid_range(__first, __last);
__glibcxx_requires_heap_pred(__first, __last, __comp);
- typedef typename iterator_traits<_RandomAccessIterator>::value_type _ValueType;
- std::__pop_heap(__first, __last - 1, __last - 1, _ValueType(*(__last - 1)), __comp);
+ typedef typename iterator_traits<_RandomAccessIterator>::value_type
+ _ValueType;
+ std::__pop_heap(__first, __last - 1, __last - 1,
+ _ValueType(*(__last - 1)), __comp);
}
/**
@@ -323,7 +340,7 @@ namespace std
* This operation makes the elements in [first,last) into a heap.
*/
template<typename _RandomAccessIterator>
- void
+ void
make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
{
typedef typename iterator_traits<_RandomAccessIterator>::value_type
@@ -337,15 +354,19 @@ namespace std
__glibcxx_function_requires(_LessThanComparableConcept<_ValueType>)
__glibcxx_requires_valid_range(__first, __last);
- if (__last - __first < 2) return;
- _DistanceType __len = __last - __first;
- _DistanceType __parent = (__len - 2)/2;
-
- while (true) {
- std::__adjust_heap(__first, __parent, __len, _ValueType(*(__first + __parent)));
- if (__parent == 0) return;
- __parent--;
- }
+ if (__last - __first < 2)
+ return;
+
+ const _DistanceType __len = __last - __first;
+ _DistanceType __parent = (__len - 2) / 2;
+ while (true)
+ {
+ std::__adjust_heap(__first, __parent, __len,
+ _ValueType(*(__first + __parent)));
+ if (__parent == 0)
+ return;
+ __parent--;
+ }
}
/**
@@ -359,7 +380,7 @@ namespace std
* Comparisons are made using comp.
*/
template<typename _RandomAccessIterator, typename _Compare>
- inline void
+ inline void
make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
_Compare __comp)
{
@@ -372,17 +393,20 @@ namespace std
__glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept<
_RandomAccessIterator>)
__glibcxx_requires_valid_range(__first, __last);
-
- if (__last - __first < 2) return;
- _DistanceType __len = __last - __first;
- _DistanceType __parent = (__len - 2)/2;
-
- while (true) {
- std::__adjust_heap(__first, __parent, __len,
- _ValueType(*(__first + __parent)), __comp);
- if (__parent == 0) return;
- __parent--;
- }
+
+ if (__last - __first < 2)
+ return;
+
+ const _DistanceType __len = __last - __first;
+ _DistanceType __parent = (__len - 2) / 2;
+ while (true)
+ {
+ std::__adjust_heap(__first, __parent, __len,
+ _ValueType(*(__first + __parent)), __comp);
+ if (__parent == 0)
+ return;
+ __parent--;
+ }
}
/**
@@ -420,7 +444,7 @@ namespace std
* Comparisons are made using comp.
*/
template<typename _RandomAccessIterator, typename _Compare>
- void
+ void
sort_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
_Compare __comp)
{
diff --git a/libstdc++-v3/include/bits/stl_iterator.h b/libstdc++-v3/include/bits/stl_iterator.h
index 4aa92ffdd20..cc564314bc8 100644
--- a/libstdc++-v3/include/bits/stl_iterator.h
+++ b/libstdc++-v3/include/bits/stl_iterator.h
@@ -1,6 +1,6 @@
// Iterators -*- C++ -*-
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -87,7 +87,7 @@ namespace std
* the requirement that the iterators must be safe.
*/
template<typename _Iterator>
- class reverse_iterator
+ class reverse_iterator
: public iterator<typename iterator_traits<_Iterator>::iterator_category,
typename iterator_traits<_Iterator>::value_type,
typename iterator_traits<_Iterator>::difference_type,
@@ -98,9 +98,9 @@ namespace std
_Iterator current;
public:
- typedef _Iterator iterator_type;
- typedef typename iterator_traits<_Iterator>::difference_type
- difference_type;
+ typedef _Iterator iterator_type;
+ typedef typename iterator_traits<_Iterator>::difference_type
+ difference_type;
typedef typename iterator_traits<_Iterator>::reference reference;
typedef typename iterator_traits<_Iterator>::pointer pointer;
@@ -116,13 +116,13 @@ namespace std
/**
* This %iterator will move in the opposite direction that @p x does.
*/
- explicit
+ explicit
reverse_iterator(iterator_type __x) : current(__x) { }
/**
* The copy constructor is normal.
*/
- reverse_iterator(const reverse_iterator& __x)
+ reverse_iterator(const reverse_iterator& __x)
: current(__x.current) { }
/**
@@ -132,20 +132,21 @@ namespace std
template<typename _Iter>
reverse_iterator(const reverse_iterator<_Iter>& __x)
: current(__x.base()) { }
-
+
/**
* @return @c current, the %iterator used for underlying work.
*/
- iterator_type
- base() const { return current; }
+ iterator_type
+ base() const
+ { return current; }
/**
* @return TODO
*
* @doctodo
*/
- reference
- operator*() const
+ reference
+ operator*() const
{
_Iterator __tmp = current;
return *--__tmp;
@@ -156,16 +157,17 @@ namespace std
*
* @doctodo
*/
- pointer
- operator->() const { return &(operator*()); }
+ pointer
+ operator->() const
+ { return &(operator*()); }
/**
* @return TODO
*
* @doctodo
*/
- reverse_iterator&
- operator++()
+ reverse_iterator&
+ operator++()
{
--current;
return *this;
@@ -176,8 +178,8 @@ namespace std
*
* @doctodo
*/
- reverse_iterator
- operator++(int)
+ reverse_iterator
+ operator++(int)
{
reverse_iterator __tmp = *this;
--current;
@@ -189,8 +191,8 @@ namespace std
*
* @doctodo
*/
- reverse_iterator&
- operator--()
+ reverse_iterator&
+ operator--()
{
++current;
return *this;
@@ -201,20 +203,20 @@ namespace std
*
* @doctodo
*/
- reverse_iterator operator--(int)
+ reverse_iterator operator--(int)
{
reverse_iterator __tmp = *this;
++current;
return __tmp;
}
-
+
/**
* @return TODO
*
* @doctodo
*/
- reverse_iterator
- operator+(difference_type __n) const
+ reverse_iterator
+ operator+(difference_type __n) const
{ return reverse_iterator(current - __n); }
/**
@@ -222,8 +224,8 @@ namespace std
*
* @doctodo
*/
- reverse_iterator&
- operator+=(difference_type __n)
+ reverse_iterator&
+ operator+=(difference_type __n)
{
current -= __n;
return *this;
@@ -234,8 +236,8 @@ namespace std
*
* @doctodo
*/
- reverse_iterator
- operator-(difference_type __n) const
+ reverse_iterator
+ operator-(difference_type __n) const
{ return reverse_iterator(current + __n); }
/**
@@ -243,8 +245,8 @@ namespace std
*
* @doctodo
*/
- reverse_iterator&
- operator-=(difference_type __n)
+ reverse_iterator&
+ operator-=(difference_type __n)
{
current += __n;
return *this;
@@ -255,10 +257,11 @@ namespace std
*
* @doctodo
*/
- reference
- operator[](difference_type __n) const { return *(*this + __n); }
- };
-
+ reference
+ operator[](difference_type __n) const
+ { return *(*this + __n); }
+ };
+
//@{
/**
* @param x A %reverse_iterator.
@@ -270,51 +273,51 @@ namespace std
*
*/
template<typename _Iterator>
- inline bool
- operator==(const reverse_iterator<_Iterator>& __x,
- const reverse_iterator<_Iterator>& __y)
+ inline bool
+ operator==(const reverse_iterator<_Iterator>& __x,
+ const reverse_iterator<_Iterator>& __y)
{ return __x.base() == __y.base(); }
template<typename _Iterator>
- inline bool
- operator<(const reverse_iterator<_Iterator>& __x,
- const reverse_iterator<_Iterator>& __y)
+ inline bool
+ operator<(const reverse_iterator<_Iterator>& __x,
+ const reverse_iterator<_Iterator>& __y)
{ return __y.base() < __x.base(); }
template<typename _Iterator>
- inline bool
- operator!=(const reverse_iterator<_Iterator>& __x,
- const reverse_iterator<_Iterator>& __y)
+ inline bool
+ operator!=(const reverse_iterator<_Iterator>& __x,
+ const reverse_iterator<_Iterator>& __y)
{ return !(__x == __y); }
template<typename _Iterator>
- inline bool
- operator>(const reverse_iterator<_Iterator>& __x,
- const reverse_iterator<_Iterator>& __y)
+ inline bool
+ operator>(const reverse_iterator<_Iterator>& __x,
+ const reverse_iterator<_Iterator>& __y)
{ return __y < __x; }
template<typename _Iterator>
- inline bool
- operator<=(const reverse_iterator<_Iterator>& __x,
- const reverse_iterator<_Iterator>& __y)
+ inline bool
+ operator<=(const reverse_iterator<_Iterator>& __x,
+ const reverse_iterator<_Iterator>& __y)
{ return !(__y < __x); }
template<typename _Iterator>
- inline bool
- operator>=(const reverse_iterator<_Iterator>& __x,
- const reverse_iterator<_Iterator>& __y)
+ inline bool
+ operator>=(const reverse_iterator<_Iterator>& __x,
+ const reverse_iterator<_Iterator>& __y)
{ return !(__x < __y); }
template<typename _Iterator>
inline typename reverse_iterator<_Iterator>::difference_type
- operator-(const reverse_iterator<_Iterator>& __x,
- const reverse_iterator<_Iterator>& __y)
+ operator-(const reverse_iterator<_Iterator>& __x,
+ const reverse_iterator<_Iterator>& __y)
{ return __y.base() - __x.base(); }
template<typename _Iterator>
- inline reverse_iterator<_Iterator>
+ inline reverse_iterator<_Iterator>
operator+(typename reverse_iterator<_Iterator>::difference_type __n,
- const reverse_iterator<_Iterator>& __x)
+ const reverse_iterator<_Iterator>& __x)
{ return reverse_iterator<_Iterator>(__x.base() - __n); }
//@}
@@ -330,7 +333,7 @@ namespace std
* save typing.
*/
template<typename _Container>
- class back_insert_iterator
+ class back_insert_iterator
: public iterator<output_iterator_tag, void, void, void, void>
{
protected:
@@ -339,9 +342,9 @@ namespace std
public:
/// A nested typedef for the type of whatever container you used.
typedef _Container container_type;
-
+
/// The only way to create this %iterator is with a container.
- explicit
+ explicit
back_insert_iterator(_Container& __x) : container(&__x) { }
/**
@@ -356,23 +359,26 @@ namespace std
* always append the value to the end of the container.
*/
back_insert_iterator&
- operator=(typename _Container::const_reference __value)
- {
+ operator=(typename _Container::const_reference __value)
+ {
container->push_back(__value);
return *this;
}
/// Simply returns *this.
- back_insert_iterator&
- operator*() { return *this; }
+ back_insert_iterator&
+ operator*()
+ { return *this; }
/// Simply returns *this. (This %iterator does not "move".)
- back_insert_iterator&
- operator++() { return *this; }
+ back_insert_iterator&
+ operator++()
+ { return *this; }
/// Simply returns *this. (This %iterator does not "move".)
back_insert_iterator
- operator++(int) { return *this; }
+ operator++(int)
+ { return *this; }
};
/**
@@ -387,8 +393,8 @@ namespace std
* types for you.
*/
template<typename _Container>
- inline back_insert_iterator<_Container>
- back_inserter(_Container& __x)
+ inline back_insert_iterator<_Container>
+ back_inserter(_Container& __x)
{ return back_insert_iterator<_Container>(__x); }
/**
@@ -402,7 +408,7 @@ namespace std
* save typing.
*/
template<typename _Container>
- class front_insert_iterator
+ class front_insert_iterator
: public iterator<output_iterator_tag, void, void, void, void>
{
protected:
@@ -427,23 +433,26 @@ namespace std
* always prepend the value to the front of the container.
*/
front_insert_iterator&
- operator=(typename _Container::const_reference __value)
- {
+ operator=(typename _Container::const_reference __value)
+ {
container->push_front(__value);
return *this;
}
/// Simply returns *this.
- front_insert_iterator&
- operator*() { return *this; }
+ front_insert_iterator&
+ operator*()
+ { return *this; }
/// Simply returns *this. (This %iterator does not "move".)
- front_insert_iterator&
- operator++() { return *this; }
+ front_insert_iterator&
+ operator++()
+ { return *this; }
/// Simply returns *this. (This %iterator does not "move".)
- front_insert_iterator
- operator++(int) { return *this; }
+ front_insert_iterator
+ operator++(int)
+ { return *this; }
};
/**
@@ -458,8 +467,8 @@ namespace std
* types for you.
*/
template<typename _Container>
- inline front_insert_iterator<_Container>
- front_inserter(_Container& __x)
+ inline front_insert_iterator<_Container>
+ front_inserter(_Container& __x)
{ return front_insert_iterator<_Container>(__x); }
/**
@@ -477,7 +486,7 @@ namespace std
* save typing.
*/
template<typename _Container>
- class insert_iterator
+ class insert_iterator
: public iterator<output_iterator_tag, void, void, void, void>
{
protected:
@@ -487,14 +496,14 @@ namespace std
public:
/// A nested typedef for the type of whatever container you used.
typedef _Container container_type;
-
+
/**
* The only way to create this %iterator is with a container and an
* initial position (a normal %iterator into the container).
*/
- insert_iterator(_Container& __x, typename _Container::iterator __i)
+ insert_iterator(_Container& __x, typename _Container::iterator __i)
: container(&__x), iter(__i) {}
-
+
/**
* @param value An instance of whatever type
* container_type::const_reference is; presumably a
@@ -519,26 +528,29 @@ namespace std
* @endcode
*/
insert_iterator&
- operator=(const typename _Container::const_reference __value)
- {
+ operator=(const typename _Container::const_reference __value)
+ {
iter = container->insert(iter, __value);
++iter;
return *this;
}
/// Simply returns *this.
- insert_iterator&
- operator*() { return *this; }
+ insert_iterator&
+ operator*()
+ { return *this; }
/// Simply returns *this. (This %iterator does not "move".)
- insert_iterator&
- operator++() { return *this; }
+ insert_iterator&
+ operator++()
+ { return *this; }
/// Simply returns *this. (This %iterator does not "move".)
- insert_iterator&
- operator++(int) { return *this; }
+ insert_iterator&
+ operator++(int)
+ { return *this; }
};
-
+
/**
* @param x A container of arbitrary type.
* @return An instance of insert_iterator working on @p x.
@@ -551,16 +563,16 @@ namespace std
* types for you.
*/
template<typename _Container, typename _Iterator>
- inline insert_iterator<_Container>
+ inline insert_iterator<_Container>
inserter(_Container& __x, _Iterator __i)
{
- return insert_iterator<_Container>(__x,
+ return insert_iterator<_Container>(__x,
typename _Container::iterator(__i));
}
} // namespace std
namespace __gnu_cxx
-{
+{
// This iterator adapter is 'normal' in the sense that it does not
// change the semantics of any of the operators of its iterator
// parameter. Its primary purpose is to convert an iterator that is
@@ -575,51 +587,64 @@ namespace __gnu_cxx
{
protected:
_Iterator _M_current;
-
+
public:
typedef typename iterator_traits<_Iterator>::iterator_category
- iterator_category;
+ iterator_category;
typedef typename iterator_traits<_Iterator>::value_type value_type;
- typedef typename iterator_traits<_Iterator>::difference_type
- difference_type;
- typedef typename iterator_traits<_Iterator>::reference reference;
- typedef typename iterator_traits<_Iterator>::pointer pointer;
+ typedef typename iterator_traits<_Iterator>::difference_type
+ difference_type;
+ typedef typename iterator_traits<_Iterator>::reference reference;
+ typedef typename iterator_traits<_Iterator>::pointer pointer;
__normal_iterator() : _M_current(_Iterator()) { }
- explicit
+ explicit
__normal_iterator(const _Iterator& __i) : _M_current(__i) { }
// Allow iterator to const_iterator conversion
template<typename _Iter>
- inline __normal_iterator(const __normal_iterator<_Iter, _Container>& __i)
+ inline __normal_iterator(const __normal_iterator<_Iter,
+ _Container>& __i)
: _M_current(__i.base()) { }
// Forward iterator requirements
reference
- operator*() const { return *_M_current; }
-
+ operator*() const
+ { return *_M_current; }
+
pointer
- operator->() const { return _M_current; }
-
+ operator->() const
+ { return _M_current; }
+
__normal_iterator&
- operator++() { ++_M_current; return *this; }
-
+ operator++()
+ {
+ ++_M_current;
+ return *this;
+ }
+
__normal_iterator
- operator++(int) { return __normal_iterator(_M_current++); }
-
+ operator++(int)
+ { return __normal_iterator(_M_current++); }
+
// Bidirectional iterator requirements
__normal_iterator&
- operator--() { --_M_current; return *this; }
-
+ operator--()
+ {
+ --_M_current;
+ return *this;
+ }
+
__normal_iterator
- operator--(int) { return __normal_iterator(_M_current--); }
-
+ operator--(int)
+ { return __normal_iterator(_M_current--); }
+
// Random access iterator requirements
reference
operator[](const difference_type& __n) const
{ return _M_current[__n]; }
-
+
__normal_iterator&
operator+=(const difference_type& __n)
{ _M_current += __n; return *this; }
@@ -627,17 +652,18 @@ namespace __gnu_cxx
__normal_iterator
operator+(const difference_type& __n) const
{ return __normal_iterator(_M_current + __n); }
-
+
__normal_iterator&
operator-=(const difference_type& __n)
{ _M_current -= __n; return *this; }
-
+
__normal_iterator
operator-(const difference_type& __n) const
{ return __normal_iterator(_M_current - __n); }
-
- const _Iterator&
- base() const { return _M_current; }
+
+ const _Iterator&
+ base() const
+ { return _M_current; }
};
// Note: In what follows, the left- and right-hand-side iterators are
@@ -647,99 +673,99 @@ namespace __gnu_cxx
// will make overload resolution ambiguous (when in scope) if we don't
// provide overloads whose operands are of the same type. Can someone
// remind me what generic programming is about? -- Gaby
-
+
// Forward iterator requirements
template<typename _IteratorL, typename _IteratorR, typename _Container>
- inline bool
- operator==(const __normal_iterator<_IteratorL, _Container>& __lhs,
- const __normal_iterator<_IteratorR, _Container>& __rhs)
- { return __lhs.base() == __rhs.base(); }
+ inline bool
+ operator==(const __normal_iterator<_IteratorL, _Container>& __lhs,
+ const __normal_iterator<_IteratorR, _Container>& __rhs)
+ { return __lhs.base() == __rhs.base(); }
template<typename _Iterator, typename _Container>
- inline bool
- operator==(const __normal_iterator<_Iterator, _Container>& __lhs,
- const __normal_iterator<_Iterator, _Container>& __rhs)
- { return __lhs.base() == __rhs.base(); }
+ inline bool
+ operator==(const __normal_iterator<_Iterator, _Container>& __lhs,
+ const __normal_iterator<_Iterator, _Container>& __rhs)
+ { return __lhs.base() == __rhs.base(); }
template<typename _IteratorL, typename _IteratorR, typename _Container>
- inline bool
- operator!=(const __normal_iterator<_IteratorL, _Container>& __lhs,
- const __normal_iterator<_IteratorR, _Container>& __rhs)
- { return __lhs.base() != __rhs.base(); }
+ inline bool
+ operator!=(const __normal_iterator<_IteratorL, _Container>& __lhs,
+ const __normal_iterator<_IteratorR, _Container>& __rhs)
+ { return __lhs.base() != __rhs.base(); }
template<typename _Iterator, typename _Container>
- inline bool
- operator!=(const __normal_iterator<_Iterator, _Container>& __lhs,
- const __normal_iterator<_Iterator, _Container>& __rhs)
- { return __lhs.base() != __rhs.base(); }
+ inline bool
+ operator!=(const __normal_iterator<_Iterator, _Container>& __lhs,
+ const __normal_iterator<_Iterator, _Container>& __rhs)
+ { return __lhs.base() != __rhs.base(); }
// Random access iterator requirements
template<typename _IteratorL, typename _IteratorR, typename _Container>
- inline bool
- operator<(const __normal_iterator<_IteratorL, _Container>& __lhs,
- const __normal_iterator<_IteratorR, _Container>& __rhs)
- { return __lhs.base() < __rhs.base(); }
+ inline bool
+ operator<(const __normal_iterator<_IteratorL, _Container>& __lhs,
+ const __normal_iterator<_IteratorR, _Container>& __rhs)
+ { return __lhs.base() < __rhs.base(); }
template<typename _Iterator, typename _Container>
- inline bool
- operator<(const __normal_iterator<_Iterator, _Container>& __lhs,
- const __normal_iterator<_Iterator, _Container>& __rhs)
- { return __lhs.base() < __rhs.base(); }
+ inline bool
+ operator<(const __normal_iterator<_Iterator, _Container>& __lhs,
+ const __normal_iterator<_Iterator, _Container>& __rhs)
+ { return __lhs.base() < __rhs.base(); }
template<typename _IteratorL, typename _IteratorR, typename _Container>
- inline bool
- operator>(const __normal_iterator<_IteratorL, _Container>& __lhs,
- const __normal_iterator<_IteratorR, _Container>& __rhs)
- { return __lhs.base() > __rhs.base(); }
+ inline bool
+ operator>(const __normal_iterator<_IteratorL, _Container>& __lhs,
+ const __normal_iterator<_IteratorR, _Container>& __rhs)
+ { return __lhs.base() > __rhs.base(); }
template<typename _Iterator, typename _Container>
- inline bool
- operator>(const __normal_iterator<_Iterator, _Container>& __lhs,
- const __normal_iterator<_Iterator, _Container>& __rhs)
- { return __lhs.base() > __rhs.base(); }
+ inline bool
+ operator>(const __normal_iterator<_Iterator, _Container>& __lhs,
+ const __normal_iterator<_Iterator, _Container>& __rhs)
+ { return __lhs.base() > __rhs.base(); }
template<typename _IteratorL, typename _IteratorR, typename _Container>
- inline bool
- operator<=(const __normal_iterator<_IteratorL, _Container>& __lhs,
- const __normal_iterator<_IteratorR, _Container>& __rhs)
- { return __lhs.base() <= __rhs.base(); }
+ inline bool
+ operator<=(const __normal_iterator<_IteratorL, _Container>& __lhs,
+ const __normal_iterator<_IteratorR, _Container>& __rhs)
+ { return __lhs.base() <= __rhs.base(); }
template<typename _Iterator, typename _Container>
- inline bool
- operator<=(const __normal_iterator<_Iterator, _Container>& __lhs,
- const __normal_iterator<_Iterator, _Container>& __rhs)
- { return __lhs.base() <= __rhs.base(); }
+ inline bool
+ operator<=(const __normal_iterator<_Iterator, _Container>& __lhs,
+ const __normal_iterator<_Iterator, _Container>& __rhs)
+ { return __lhs.base() <= __rhs.base(); }
template<typename _IteratorL, typename _IteratorR, typename _Container>
- inline bool
- operator>=(const __normal_iterator<_IteratorL, _Container>& __lhs,
- const __normal_iterator<_IteratorR, _Container>& __rhs)
- { return __lhs.base() >= __rhs.base(); }
+ inline bool
+ operator>=(const __normal_iterator<_IteratorL, _Container>& __lhs,
+ const __normal_iterator<_IteratorR, _Container>& __rhs)
+ { return __lhs.base() >= __rhs.base(); }
template<typename _Iterator, typename _Container>
- inline bool
- operator>=(const __normal_iterator<_Iterator, _Container>& __lhs,
- const __normal_iterator<_Iterator, _Container>& __rhs)
- { return __lhs.base() >= __rhs.base(); }
+ inline bool
+ operator>=(const __normal_iterator<_Iterator, _Container>& __lhs,
+ const __normal_iterator<_Iterator, _Container>& __rhs)
+ { return __lhs.base() >= __rhs.base(); }
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// According to the resolution of DR179 not only the various comparison
// operators but also operator- must accept mixed iterator/const_iterator
// parameters.
template<typename _IteratorL, typename _IteratorR, typename _Container>
- inline typename __normal_iterator<_IteratorL, _Container>::difference_type
- operator-(const __normal_iterator<_IteratorL, _Container>& __lhs,
- const __normal_iterator<_IteratorR, _Container>& __rhs)
- { return __lhs.base() - __rhs.base(); }
+ inline typename __normal_iterator<_IteratorL, _Container>::difference_type
+ operator-(const __normal_iterator<_IteratorL, _Container>& __lhs,
+ const __normal_iterator<_IteratorR, _Container>& __rhs)
+ { return __lhs.base() - __rhs.base(); }
template<typename _Iterator, typename _Container>
- inline __normal_iterator<_Iterator, _Container>
- operator+(typename __normal_iterator<_Iterator, _Container>::difference_type __n,
- const __normal_iterator<_Iterator, _Container>& __i)
- { return __normal_iterator<_Iterator, _Container>(__i.base() + __n); }
+ inline __normal_iterator<_Iterator, _Container>
+ operator+(typename __normal_iterator<_Iterator, _Container>::difference_type
+ __n, const __normal_iterator<_Iterator, _Container>& __i)
+ { return __normal_iterator<_Iterator, _Container>(__i.base() + __n); }
} // namespace __gnu_cxx
-#endif
+#endif
// Local Variables:
// mode:C++
diff --git a/libstdc++-v3/include/bits/stl_iterator_base_funcs.h b/libstdc++-v3/include/bits/stl_iterator_base_funcs.h
index a1404e139e4..c514e81a089 100644
--- a/libstdc++-v3/include/bits/stl_iterator_base_funcs.h
+++ b/libstdc++-v3/include/bits/stl_iterator_base_funcs.h
@@ -1,6 +1,6 @@
// Functions used by iterators -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -76,24 +76,27 @@ namespace std
{
// concept requirements
__glibcxx_function_requires(_InputIteratorConcept<_InputIterator>)
-
+
typename iterator_traits<_InputIterator>::difference_type __n = 0;
- while (__first != __last) {
- ++__first; ++__n;
- }
+ while (__first != __last)
+ {
+ ++__first;
+ ++__n;
+ }
return __n;
}
-
+
template<typename _RandomAccessIterator>
inline typename iterator_traits<_RandomAccessIterator>::difference_type
__distance(_RandomAccessIterator __first, _RandomAccessIterator __last,
random_access_iterator_tag)
{
// concept requirements
- __glibcxx_function_requires(_RandomAccessIteratorConcept<_RandomAccessIterator>)
+ __glibcxx_function_requires(_RandomAccessIteratorConcept<
+ _RandomAccessIterator>)
return __last - __first;
}
-
+
/**
* @brief A generalization of pointer arithmetic.
* @param first An input iterator.
@@ -111,42 +114,47 @@ namespace std
distance(_InputIterator __first, _InputIterator __last)
{
// concept requirements -- taken care of in __distance
- return std::__distance(__first, __last, std::__iterator_category(__first));
+ return std::__distance(__first, __last,
+ std::__iterator_category(__first));
}
-
+
template<typename _InputIterator, typename _Distance>
inline void
__advance(_InputIterator& __i, _Distance __n, input_iterator_tag)
{
// concept requirements
__glibcxx_function_requires(_InputIteratorConcept<_InputIterator>)
- while (__n--) ++__i;
+ while (__n--)
+ ++__i;
}
-
+
template<typename _BidirectionalIterator, typename _Distance>
inline void
__advance(_BidirectionalIterator& __i, _Distance __n,
bidirectional_iterator_tag)
{
// concept requirements
- __glibcxx_function_requires(_BidirectionalIteratorConcept<_BidirectionalIterator>)
-
+ __glibcxx_function_requires(_BidirectionalIteratorConcept<
+ _BidirectionalIterator>)
if (__n > 0)
- while (__n--) ++__i;
+ while (__n--)
+ ++__i;
else
- while (__n++) --__i;
+ while (__n++)
+ --__i;
}
-
+
template<typename _RandomAccessIterator, typename _Distance>
inline void
__advance(_RandomAccessIterator& __i, _Distance __n,
random_access_iterator_tag)
{
// concept requirements
- __glibcxx_function_requires(_RandomAccessIteratorConcept<_RandomAccessIterator>)
+ __glibcxx_function_requires(_RandomAccessIteratorConcept<
+ _RandomAccessIterator>)
__i += __n;
}
-
+
/**
* @brief A generalization of pointer arithmetic.
* @param i An input iterator.
diff --git a/libstdc++-v3/include/bits/stl_iterator_base_types.h b/libstdc++-v3/include/bits/stl_iterator_base_types.h
index 373caba2ca3..c3bb1c55727 100644
--- a/libstdc++-v3/include/bits/stl_iterator_base_types.h
+++ b/libstdc++-v3/include/bits/stl_iterator_base_types.h
@@ -1,6 +1,6 @@
// Types used in iterator implementation -*- C++ -*-
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -82,9 +82,11 @@ namespace std
struct output_iterator_tag {};
/// Forward iterators support a superset of input iterator operations.
struct forward_iterator_tag : public input_iterator_tag {};
- /// Bidirectional iterators support a superset of forward iterator operations.
+ /// Bidirectional iterators support a superset of forward iterator
+ /// operations.
struct bidirectional_iterator_tag : public forward_iterator_tag {};
- /// Random-access iterators support a superset of bidirectional iterator operations.
+ /// Random-access iterators support a superset of bidirectional iterator
+ /// operations.
struct random_access_iterator_tag : public bidirectional_iterator_tag {};
//@}
@@ -122,7 +124,8 @@ namespace std
* provide tighter, more correct semantics.
*/
template<typename _Iterator>
- struct iterator_traits {
+ struct iterator_traits
+ {
typedef typename _Iterator::iterator_category iterator_category;
typedef typename _Iterator::value_type value_type;
typedef typename _Iterator::difference_type difference_type;
@@ -131,7 +134,8 @@ namespace std
};
template<typename _Tp>
- struct iterator_traits<_Tp*> {
+ struct iterator_traits<_Tp*>
+ {
typedef random_access_iterator_tag iterator_category;
typedef _Tp value_type;
typedef ptrdiff_t difference_type;
@@ -140,7 +144,8 @@ namespace std
};
template<typename _Tp>
- struct iterator_traits<const _Tp*> {
+ struct iterator_traits<const _Tp*>
+ {
typedef random_access_iterator_tag iterator_category;
typedef _Tp value_type;
typedef ptrdiff_t difference_type;
diff --git a/libstdc++-v3/include/bits/stl_list.h b/libstdc++-v3/include/bits/stl_list.h
index fca21e9ed0c..c94a0a9bf73 100644
--- a/libstdc++-v3/include/bits/stl_list.h
+++ b/libstdc++-v3/include/bits/stl_list.h
@@ -63,38 +63,43 @@
#include <bits/concept_check.h>
-namespace __gnu_norm
+namespace _GLIBCXX_STD
{
// Supporting structures are split into common and templated types; the
// latter publicly inherits from the former in an effort to reduce code
// duplication. This results in some "needless" static_cast'ing later on,
// but it's all safe downcasting.
-
+
/// @if maint Common part of a node in the %list. @endif
struct _List_node_base
{
_List_node_base* _M_next; ///< Self-explanatory
_List_node_base* _M_prev; ///< Self-explanatory
- static void swap(_List_node_base& __x,
- _List_node_base& __y);
+ static void
+ swap(_List_node_base& __x, _List_node_base& __y);
+
+ void
+ transfer(_List_node_base * const __first,
+ _List_node_base * const __last);
+
+ void
+ reverse();
- void transfer(_List_node_base * const __first,
- _List_node_base * const __last);
+ void
+ hook(_List_node_base * const __position);
- void reverse();
- void hook(_List_node_base * const __position);
- void unhook();
+ void
+ unhook();
};
-
+
/// @if maint An actual node in the %list. @endif
template<typename _Tp>
struct _List_node : public _List_node_base
{
_Tp _M_data; ///< User's data.
};
-
-
+
/**
* @brief A list::iterator.
*
@@ -107,13 +112,13 @@ namespace __gnu_norm
{
typedef _List_iterator<_Tp> _Self;
typedef _List_node<_Tp> _Node;
-
+
typedef ptrdiff_t difference_type;
typedef bidirectional_iterator_tag iterator_category;
typedef _Tp value_type;
typedef _Tp* pointer;
typedef _Tp& reference;
-
+
_List_iterator() { }
_List_iterator(_List_node_base* __x)
@@ -127,14 +132,14 @@ namespace __gnu_norm
pointer
operator->() const
{ return &static_cast<_Node*>(_M_node)->_M_data; }
-
+
_Self&
operator++()
{
_M_node = _M_node->_M_next;
return *this;
}
-
+
_Self
operator++(int)
{
@@ -142,14 +147,14 @@ namespace __gnu_norm
_M_node = _M_node->_M_next;
return __tmp;
}
-
+
_Self&
operator--()
{
_M_node = _M_node->_M_prev;
return *this;
}
-
+
_Self
operator--(int)
{
@@ -157,7 +162,7 @@ namespace __gnu_norm
_M_node = _M_node->_M_prev;
return __tmp;
}
-
+
bool
operator==(const _Self& __x) const
{ return _M_node == __x._M_node; }
@@ -165,11 +170,11 @@ namespace __gnu_norm
bool
operator!=(const _Self& __x) const
{ return _M_node != __x._M_node; }
-
+
// The only member points to the %list element.
_List_node_base* _M_node;
};
-
+
/**
* @brief A list::const_iterator.
*
@@ -183,13 +188,13 @@ namespace __gnu_norm
typedef _List_const_iterator<_Tp> _Self;
typedef const _List_node<_Tp> _Node;
typedef _List_iterator<_Tp> iterator;
-
+
typedef ptrdiff_t difference_type;
typedef bidirectional_iterator_tag iterator_category;
typedef _Tp value_type;
typedef const _Tp* pointer;
typedef const _Tp& reference;
-
+
_List_const_iterator() { }
_List_const_iterator(const _List_node_base* __x)
@@ -207,14 +212,14 @@ namespace __gnu_norm
pointer
operator->() const
{ return &static_cast<_Node*>(_M_node)->_M_data; }
-
+
_Self&
operator++()
{
_M_node = _M_node->_M_next;
return *this;
}
-
+
_Self
operator++(int)
{
@@ -222,14 +227,14 @@ namespace __gnu_norm
_M_node = _M_node->_M_next;
return __tmp;
}
-
+
_Self&
operator--()
{
_M_node = _M_node->_M_prev;
return *this;
}
-
+
_Self
operator--(int)
{
@@ -237,32 +242,32 @@ namespace __gnu_norm
_M_node = _M_node->_M_prev;
return __tmp;
}
-
+
bool
operator==(const _Self& __x) const
{ return _M_node == __x._M_node; }
-
+
bool
operator!=(const _Self& __x) const
{ return _M_node != __x._M_node; }
-
+
// The only member points to the %list element.
const _List_node_base* _M_node;
};
-
+
template<typename _Val>
- inline bool
- operator==(const _List_iterator<_Val>& __x,
- const _List_const_iterator<_Val>& __y)
+ inline bool
+ operator==(const _List_iterator<_Val>& __x,
+ const _List_const_iterator<_Val>& __y)
{ return __x._M_node == __y._M_node; }
template<typename _Val>
- inline bool
+ inline bool
operator!=(const _List_iterator<_Val>& __x,
- const _List_const_iterator<_Val>& __y)
+ const _List_const_iterator<_Val>& __y)
{ return __x._M_node != __y._M_node; }
-
+
/**
* @if maint
* See bits/stl_deque.h's _Deque_base for an explanation.
@@ -270,7 +275,6 @@ namespace __gnu_norm
*/
template<typename _Tp, typename _Alloc>
class _List_base
- : public _Alloc::template rebind<_List_node<_Tp> >::other
{
protected:
// NOTA BENE
@@ -287,45 +291,53 @@ namespace __gnu_norm
// allocator_type and _Node_Alloc_type. The conversion is
// required by table 32 in [20.1.5].
typedef typename _Alloc::template rebind<_List_node<_Tp> >::other
+
_Node_Alloc_type;
- _List_node_base _M_node;
+ struct _List_impl
+ : public _Node_Alloc_type {
+ _List_node_base _M_node;
+ _List_impl (const _Node_Alloc_type& __a)
+ : _Node_Alloc_type(__a)
+ { }
+ };
+
+ _List_impl _M_impl;
_List_node<_Tp>*
_M_get_node()
- { return _Node_Alloc_type::allocate(1); }
+ { return _M_impl._Node_Alloc_type::allocate(1); }
void
_M_put_node(_List_node<_Tp>* __p)
- { _Node_Alloc_type::deallocate(__p, 1); }
-
+ { _M_impl._Node_Alloc_type::deallocate(__p, 1); }
+
public:
typedef _Alloc allocator_type;
- allocator_type
+ allocator_type
get_allocator() const
- { return allocator_type(*static_cast<const _Node_Alloc_type*>(this)); }
+ { return allocator_type(*static_cast<const _Node_Alloc_type*>(&this->_M_impl)); }
_List_base(const allocator_type& __a)
- : _Node_Alloc_type(__a)
+ : _M_impl(__a)
{ _M_init(); }
-
+
// This is what actually destroys the list.
~_List_base()
{ _M_clear(); }
-
+
void
_M_clear();
void
_M_init()
{
- this->_M_node._M_next = &this->_M_node;
- this->_M_node._M_prev = &this->_M_node;
+ this->_M_impl._M_node._M_next = &this->_M_impl._M_node;
+ this->_M_impl._M_node._M_prev = &this->_M_impl._M_node;
}
};
-
-
+
/**
* @brief A standard container with linear time access to elements,
* and fixed time insertion/deletion at any point in the sequence.
@@ -376,9 +388,9 @@ namespace __gnu_norm
{
// concept requirements
__glibcxx_class_requires(_Tp, _SGIAssignableConcept)
-
+
typedef _List_base<_Tp, _Alloc> _Base;
-
+
public:
typedef _Tp value_type;
typedef value_type* pointer;
@@ -392,22 +404,22 @@ namespace __gnu_norm
typedef size_t size_type;
typedef ptrdiff_t difference_type;
typedef typename _Base::allocator_type allocator_type;
-
+
protected:
// Note that pointers-to-_Node's can be ctor-converted to
// iterator types.
- typedef _List_node<_Tp> _Node;
-
+ typedef _List_node<_Tp> _Node;
+
/** @if maint
* One data member plus two memory-handling functions. If the
* _Alloc type requires separate instances, then one of those
* will also be included, accumulated from the topmost parent.
* @endif
*/
- using _Base::_M_node;
+ using _Base::_M_impl;
using _Base::_M_put_node;
using _Base::_M_get_node;
-
+
/**
* @if maint
* @param x An instance of user data.
@@ -419,7 +431,7 @@ namespace __gnu_norm
_M_create_node(const value_type& __x)
{
_Node* __p = this->_M_get_node();
- try
+ try
{
std::_Construct(&__p->_M_data, __x);
}
@@ -430,7 +442,7 @@ namespace __gnu_norm
}
return __p;
}
-
+
/**
* @if maint
* Allocates space for a new node and default-constructs a new
@@ -441,7 +453,7 @@ namespace __gnu_norm
_M_create_node()
{
_Node* __p = this->_M_get_node();
- try
+ try
{
std::_Construct(&__p->_M_data);
}
@@ -452,7 +464,7 @@ namespace __gnu_norm
}
return __p;
}
-
+
public:
// [23.2.2.1] construct/copy/destroy
// (assign() and get_allocator() are also listed in this section)
@@ -462,23 +474,23 @@ namespace __gnu_norm
explicit
list(const allocator_type& __a = allocator_type())
: _Base(__a) { }
-
+
/**
* @brief Create a %list with copies of an exemplar element.
* @param n The number of elements to initially create.
* @param value An element to copy.
- *
+ *
* This constructor fills the %list with @a n copies of @a value.
*/
list(size_type __n, const value_type& __value,
const allocator_type& __a = allocator_type())
: _Base(__a)
{ this->insert(begin(), __n, __value); }
-
+
/**
* @brief Create a %list with default elements.
* @param n The number of elements to initially create.
- *
+ *
* This constructor fills the %list with @a n copies of a
* default-constructed element.
*/
@@ -486,23 +498,23 @@ namespace __gnu_norm
list(size_type __n)
: _Base(allocator_type())
{ this->insert(begin(), __n, value_type()); }
-
+
/**
* @brief %List copy constructor.
* @param x A %list of identical element and allocator types.
- *
+ *
* The newly-created %list uses a copy of the allocation object used
* by @a x.
*/
list(const list& __x)
: _Base(__x.get_allocator())
{ this->insert(begin(), __x.begin(), __x.end()); }
-
+
/**
* @brief Builds a %list from a range.
* @param first An input iterator.
* @param last An input iterator.
- *
+ *
* Create a %list consisting of copies of the elements from
* [@a first,@a last). This is linear in N (where N is
* distance(@a first,@a last)).
@@ -517,7 +529,7 @@ namespace __gnu_norm
const allocator_type& __a = allocator_type())
: _Base(__a)
{ this->insert(begin(), __first, __last); }
-
+
/**
* No explicit dtor needed as the _Base dtor takes care of
* things. The _Base dtor only erases the elements, and note
@@ -525,17 +537,17 @@ namespace __gnu_norm
* memory is not touched in any way. Managing the pointer is
* the user's responsibilty.
*/
-
+
/**
* @brief %List assignment operator.
* @param x A %list of identical element and allocator types.
- *
+ *
* All the elements of @a x are copied, but unlike the copy
* constructor, the allocator object is not copied.
*/
list&
operator=(const list& __x);
-
+
/**
* @brief Assigns a given value to a %list.
* @param n Number of elements to be assigned.
@@ -547,9 +559,9 @@ namespace __gnu_norm
* of elements assigned. Old data may be lost.
*/
void
- assign(size_type __n, const value_type& __val)
+ assign(size_type __n, const value_type& __val)
{ _M_fill_assign(__n, __val); }
-
+
/**
* @brief Assigns a range to a %list.
* @param first An input iterator.
@@ -565,72 +577,79 @@ namespace __gnu_norm
template<typename _InputIterator>
void
assign(_InputIterator __first, _InputIterator __last)
- {
+ {
// Check whether it's an integral type. If so, it's not an iterator.
typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
_M_assign_dispatch(__first, __last, _Integral());
}
-
+
/// Get a copy of the memory allocation object.
allocator_type
- get_allocator() const { return _Base::get_allocator(); }
-
+ get_allocator() const
+ { return _Base::get_allocator(); }
+
// iterators
/**
* Returns a read/write iterator that points to the first element in the
* %list. Iteration is done in ordinary element order.
*/
iterator
- begin() { return this->_M_node._M_next; }
-
+ begin()
+ { return this->_M_impl._M_node._M_next; }
+
/**
* Returns a read-only (constant) iterator that points to the
* first element in the %list. Iteration is done in ordinary
* element order.
*/
const_iterator
- begin() const { return this->_M_node._M_next; }
-
+ begin() const
+ { return this->_M_impl._M_node._M_next; }
+
/**
* Returns a read/write iterator that points one past the last
* element in the %list. Iteration is done in ordinary element
* order.
*/
iterator
- end() { return &this->_M_node; }
-
+ end() { return &this->_M_impl._M_node; }
+
/**
* Returns a read-only (constant) iterator that points one past
* the last element in the %list. Iteration is done in ordinary
* element order.
*/
const_iterator
- end() const { return &this->_M_node; }
-
+ end() const
+ { return &this->_M_impl._M_node; }
+
/**
* Returns a read/write reverse iterator that points to the last
* element in the %list. Iteration is done in reverse element
* order.
*/
reverse_iterator
- rbegin() { return reverse_iterator(end()); }
-
+ rbegin()
+ { return reverse_iterator(end()); }
+
/**
* Returns a read-only (constant) reverse iterator that points to
* the last element in the %list. Iteration is done in reverse
* element order.
*/
const_reverse_iterator
- rbegin() const { return const_reverse_iterator(end()); }
-
+ rbegin() const
+ { return const_reverse_iterator(end()); }
+
/**
* Returns a read/write reverse iterator that points to one
* before the first element in the %list. Iteration is done in
* reverse element order.
*/
reverse_iterator
- rend() { return reverse_iterator(begin()); }
-
+ rend()
+ { return reverse_iterator(begin()); }
+
/**
* Returns a read-only (constant) reverse iterator that points to one
* before the first element in the %list. Iteration is done in reverse
@@ -639,23 +658,26 @@ namespace __gnu_norm
const_reverse_iterator
rend() const
{ return const_reverse_iterator(begin()); }
-
+
// [23.2.2.2] capacity
/**
* Returns true if the %list is empty. (Thus begin() would equal
* end().)
*/
bool
- empty() const { return this->_M_node._M_next == &this->_M_node; }
-
+ empty() const
+ { return this->_M_impl._M_node._M_next == &this->_M_impl._M_node; }
+
/** Returns the number of elements in the %list. */
size_type
- size() const { return std::distance(begin(), end()); }
-
+ size() const
+ { return std::distance(begin(), end()); }
+
/** Returns the size() of the largest possible %list. */
size_type
- max_size() const { return size_type(-1); }
-
+ max_size() const
+ { return size_type(-1); }
+
/**
* @brief Resizes the %list to the specified number of elements.
* @param new_size Number of elements the %list should contain.
@@ -668,7 +690,7 @@ namespace __gnu_norm
*/
void
resize(size_type __new_size, const value_type& __x);
-
+
/**
* @brief Resizes the %list to the specified number of elements.
* @param new_size Number of elements the %list should contain.
@@ -679,37 +701,42 @@ namespace __gnu_norm
* and new elements are default-constructed.
*/
void
- resize(size_type __new_size) { this->resize(__new_size, value_type()); }
-
+ resize(size_type __new_size)
+ { this->resize(__new_size, value_type()); }
+
// element access
/**
* Returns a read/write reference to the data at the first
* element of the %list.
*/
reference
- front() { return *begin(); }
-
+ front()
+ { return *begin(); }
+
/**
* Returns a read-only (constant) reference to the data at the first
* element of the %list.
*/
const_reference
- front() const { return *begin(); }
-
+ front() const
+ { return *begin(); }
+
/**
* Returns a read/write reference to the data at the last element
* of the %list.
*/
reference
- back() { return *(--end()); }
-
+ back()
+ { return *(--end()); }
+
/**
* Returns a read-only (constant) reference to the data at the last
* element of the %list.
*/
const_reference
- back() const { return *(--end()); }
-
+ back() const
+ { return *(--end()); }
+
// [23.2.2.3] modifiers
/**
* @brief Add data to the front of the %list.
@@ -722,8 +749,9 @@ namespace __gnu_norm
* references.
*/
void
- push_front(const value_type& __x) { this->_M_insert(begin(), __x); }
-
+ push_front(const value_type& __x)
+ { this->_M_insert(begin(), __x); }
+
/**
* @brief Removes first element.
*
@@ -737,8 +765,9 @@ namespace __gnu_norm
* called.
*/
void
- pop_front() { this->_M_erase(begin()); }
-
+ pop_front()
+ { this->_M_erase(begin()); }
+
/**
* @brief Add data to the end of the %list.
* @param x Data to be added.
@@ -750,8 +779,9 @@ namespace __gnu_norm
* references.
*/
void
- push_back(const value_type& __x) { this->_M_insert(end(), __x); }
-
+ push_back(const value_type& __x)
+ { this->_M_insert(end(), __x); }
+
/**
* @brief Removes last element.
*
@@ -764,8 +794,9 @@ namespace __gnu_norm
* is needed, it should be retrieved before pop_back() is called.
*/
void
- pop_back() { this->_M_erase(this->_M_node._M_prev); }
-
+ pop_back()
+ { this->_M_erase(this->_M_impl._M_node._M_prev); }
+
/**
* @brief Inserts given value into %list before specified iterator.
* @param position An iterator into the %list.
@@ -779,7 +810,7 @@ namespace __gnu_norm
*/
iterator
insert(iterator __position, const value_type& __x);
-
+
/**
* @brief Inserts a number of copies of given data into the %list.
* @param position An iterator into the %list.
@@ -796,7 +827,7 @@ namespace __gnu_norm
void
insert(iterator __position, size_type __n, const value_type& __x)
{ _M_fill_insert(__position, __n, __x); }
-
+
/**
* @brief Inserts a range into the %list.
* @param position An iterator into the %list.
@@ -813,14 +844,14 @@ namespace __gnu_norm
*/
template<typename _InputIterator>
void
- insert(iterator __position, _InputIterator __first,
+ insert(iterator __position, _InputIterator __first,
_InputIterator __last)
{
// Check whether it's an integral type. If so, it's not an iterator.
typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
_M_insert_dispatch(__position, __first, __last, _Integral());
}
-
+
/**
* @brief Remove element at given position.
* @param position Iterator pointing to element to be erased.
@@ -838,7 +869,7 @@ namespace __gnu_norm
*/
iterator
erase(iterator __position);
-
+
/**
* @brief Remove a range of elements.
* @param first Iterator pointing to the first element to be erased.
@@ -865,7 +896,7 @@ namespace __gnu_norm
__first = erase(__first);
return __last;
}
-
+
/**
* @brief Swaps data with another %list.
* @param x A %list of the same element and allocator types.
@@ -876,8 +907,9 @@ namespace __gnu_norm
* function.
*/
void
- swap(list& __x) { _List_node_base::swap(this->_M_node,__x._M_node); }
-
+ swap(list& __x)
+ { _List_node_base::swap(this->_M_impl._M_node,__x._M_impl._M_node); }
+
/**
* Erases all the elements. Note that this function only erases
* the elements, and that if the elements themselves are
@@ -890,7 +922,7 @@ namespace __gnu_norm
_Base::_M_clear();
_Base::_M_init();
}
-
+
// [23.2.2.4] list operations
/**
* @brief Insert contents of another %list.
@@ -907,7 +939,7 @@ namespace __gnu_norm
if (!__x.empty())
this->_M_transfer(__position, __x.begin(), __x.end());
}
-
+
/**
* @brief Insert element from another %list.
* @param position Iterator referencing the element to insert before.
@@ -922,10 +954,11 @@ namespace __gnu_norm
{
iterator __j = __i;
++__j;
- if (__position == __i || __position == __j) return;
+ if (__position == __i || __position == __j)
+ return;
this->_M_transfer(__position, __i, __j);
}
-
+
/**
* @brief Insert range from another %list.
* @param position Iterator referencing the element to insert before.
@@ -944,7 +977,7 @@ namespace __gnu_norm
if (__first != __last)
this->_M_transfer(__position, __first, __last);
}
-
+
/**
* @brief Remove all elements equal to value.
* @param value The value to remove.
@@ -958,7 +991,7 @@ namespace __gnu_norm
*/
void
remove(const _Tp& __value);
-
+
/**
* @brief Remove all elements satisfying a predicate.
* @param Predicate Unary predicate function or object.
@@ -973,7 +1006,7 @@ namespace __gnu_norm
template<typename _Predicate>
void
remove_if(_Predicate);
-
+
/**
* @brief Remove consecutive duplicate elements.
*
@@ -986,7 +1019,7 @@ namespace __gnu_norm
*/
void
unique();
-
+
/**
* @brief Remove consecutive elements satisfying a predicate.
* @param BinaryPredicate Binary predicate function or object.
@@ -1002,7 +1035,7 @@ namespace __gnu_norm
template<typename _BinaryPredicate>
void
unique(_BinaryPredicate);
-
+
/**
* @brief Merge sorted lists.
* @param x Sorted list to merge.
@@ -1014,7 +1047,7 @@ namespace __gnu_norm
*/
void
merge(list& __x);
-
+
/**
* @brief Merge sorted lists according to comparison function.
* @param x Sorted list to merge.
@@ -1030,15 +1063,16 @@ namespace __gnu_norm
template<typename _StrictWeakOrdering>
void
merge(list&, _StrictWeakOrdering);
-
+
/**
* @brief Reverse the elements in list.
*
* Reverse the order of elements in the list in linear time.
*/
void
- reverse() { this->_M_node.reverse(); }
-
+ reverse()
+ { this->_M_impl._M_node.reverse(); }
+
/**
* @brief Sort the elements.
*
@@ -1047,7 +1081,7 @@ namespace __gnu_norm
*/
void
sort();
-
+
/**
* @brief Sort the elements according to comparison function.
*
@@ -1057,10 +1091,10 @@ namespace __gnu_norm
template<typename _StrictWeakOrdering>
void
sort(_StrictWeakOrdering);
-
+
protected:
// Internal assign functions follow.
-
+
// Called by the range assign to implement [23.1.1]/9
template<typename _Integer>
void
@@ -1069,21 +1103,21 @@ namespace __gnu_norm
_M_fill_assign(static_cast<size_type>(__n),
static_cast<value_type>(__val));
}
-
+
// Called by the range assign to implement [23.1.1]/9
template<typename _InputIterator>
void
- _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
+ _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
__false_type);
-
+
// Called by assign(n,t), and the range assign when it turns out
// to be the same thing.
void
_M_fill_assign(size_type __n, const value_type& __val);
-
-
+
+
// Internal insert functions follow.
-
+
// Called by the range insert to implement [23.1.1]/9
template<typename _Integer>
void
@@ -1093,7 +1127,7 @@ namespace __gnu_norm
_M_fill_insert(__pos, static_cast<size_type>(__n),
static_cast<value_type>(__x));
}
-
+
// Called by the range insert to implement [23.1.1]/9
template<typename _InputIterator>
void
@@ -1104,7 +1138,7 @@ namespace __gnu_norm
for ( ; __first != __last; ++__first)
_M_insert(__pos, *__first);
}
-
+
// Called by insert(p,n,x), and the range insert when it turns out
// to be the same thing.
void
@@ -1113,21 +1147,18 @@ namespace __gnu_norm
for ( ; __n > 0; --__n)
_M_insert(__pos, __x);
}
-
-
+
+
// Moves the elements from [first,last) before position.
void
_M_transfer(iterator __position, iterator __first, iterator __last)
- {
- __position._M_node->transfer(__first._M_node,__last._M_node);
- }
+ { __position._M_node->transfer(__first._M_node,__last._M_node); }
// Inserts new element at position given and with value given.
void
_M_insert(iterator __position, const value_type& __x)
{
_Node* __tmp = _M_create_node(__x);
-
__tmp->hook(__position._M_node);
}
@@ -1141,8 +1172,7 @@ namespace __gnu_norm
_M_put_node(__n);
}
};
-
-
+
/**
* @brief List equality comparison.
* @param x A %list.
@@ -1160,17 +1190,17 @@ namespace __gnu_norm
typedef typename list<_Tp,_Alloc>::const_iterator const_iterator;
const_iterator __end1 = __x.end();
const_iterator __end2 = __y.end();
-
+
const_iterator __i1 = __x.begin();
const_iterator __i2 = __y.begin();
- while (__i1 != __end1 && __i2 != __end2 && *__i1 == *__i2)
+ while (__i1 != __end1 && __i2 != __end2 && *__i1 == *__i2)
{
++__i1;
++__i2;
- }
+ }
return __i1 == __end1 && __i2 == __end2;
}
-
+
/**
* @brief List ordering relation.
* @param x A %list.
@@ -1185,41 +1215,39 @@ namespace __gnu_norm
template<typename _Tp, typename _Alloc>
inline bool
operator<(const list<_Tp,_Alloc>& __x, const list<_Tp,_Alloc>& __y)
- {
- return std::lexicographical_compare(__x.begin(), __x.end(),
- __y.begin(), __y.end());
- }
-
+ { return std::lexicographical_compare(__x.begin(), __x.end(),
+ __y.begin(), __y.end()); }
+
/// Based on operator==
template<typename _Tp, typename _Alloc>
inline bool
operator!=(const list<_Tp,_Alloc>& __x, const list<_Tp,_Alloc>& __y)
{ return !(__x == __y); }
-
+
/// Based on operator<
template<typename _Tp, typename _Alloc>
inline bool
operator>(const list<_Tp,_Alloc>& __x, const list<_Tp,_Alloc>& __y)
{ return __y < __x; }
-
+
/// Based on operator<
template<typename _Tp, typename _Alloc>
inline bool
operator<=(const list<_Tp,_Alloc>& __x, const list<_Tp,_Alloc>& __y)
{ return !(__y < __x); }
-
+
/// Based on operator<
template<typename _Tp, typename _Alloc>
inline bool
operator>=(const list<_Tp,_Alloc>& __x, const list<_Tp,_Alloc>& __y)
{ return !(__x < __y); }
-
+
/// See std::list::swap().
template<typename _Tp, typename _Alloc>
inline void
swap(list<_Tp, _Alloc>& __x, list<_Tp, _Alloc>& __y)
{ __x.swap(__y); }
-} // namespace __gnu_norm
+} // namespace std
#endif /* _LIST_H */
diff --git a/libstdc++-v3/include/bits/stl_map.h b/libstdc++-v3/include/bits/stl_map.h
index 9895cad0446..bd78f57cdf9 100644
--- a/libstdc++-v3/include/bits/stl_map.h
+++ b/libstdc++-v3/include/bits/stl_map.h
@@ -1,6 +1,6 @@
// Map implementation -*- C++ -*-
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -63,7 +63,7 @@
#include <bits/concept_check.h>
-namespace __gnu_norm
+namespace _GLIBCXX_STD
{
/**
* @brief A standard container made up of (key,value) pairs, which can be
@@ -89,504 +89,540 @@ namespace __gnu_norm
template <typename _Key, typename _Tp, typename _Compare = less<_Key>,
typename _Alloc = allocator<pair<const _Key, _Tp> > >
class map
- {
- // concept requirements
- __glibcxx_class_requires(_Tp, _SGIAssignableConcept)
- __glibcxx_class_requires4(_Compare, bool, _Key, _Key, _BinaryFunctionConcept)
-
- public:
- typedef _Key key_type;
- typedef _Tp mapped_type;
- typedef pair<const _Key, _Tp> value_type;
- typedef _Compare key_compare;
-
- class value_compare
+ {
+ // concept requirements
+ __glibcxx_class_requires(_Tp, _SGIAssignableConcept)
+ __glibcxx_class_requires4(_Compare, bool, _Key, _Key,
+ _BinaryFunctionConcept)
+
+ public:
+ typedef _Key key_type;
+ typedef _Tp mapped_type;
+ typedef pair<const _Key, _Tp> value_type;
+ typedef _Compare key_compare;
+
+ class value_compare
: public binary_function<value_type, value_type, bool>
{
- friend class map<_Key,_Tp,_Compare,_Alloc>;
+ friend class map<_Key,_Tp,_Compare,_Alloc>;
protected:
- _Compare comp;
- value_compare(_Compare __c) : comp(__c) {}
+ _Compare comp;
+
+ value_compare(_Compare __c)
+ : comp(__c) { }
+
public:
- bool operator()(const value_type& __x, const value_type& __y) const
- { return comp(__x.first, __y.first); }
+ bool operator()(const value_type& __x, const value_type& __y) const
+ { return comp(__x.first, __y.first); }
};
-
- private:
- /// @if maint This turns a red-black tree into a [multi]map. @endif
- typedef _Rb_tree<key_type, value_type,
- _Select1st<value_type>, key_compare, _Alloc> _Rep_type;
- /// @if maint The actual tree structure. @endif
- _Rep_type _M_t;
-
- public:
- // many of these are specified differently in ISO, but the following are
- // "functionally equivalent"
- typedef typename _Rep_type::allocator_type allocator_type;
- typedef typename _Rep_type::reference reference;
- typedef typename _Rep_type::const_reference const_reference;
- typedef typename _Rep_type::iterator iterator;
- typedef typename _Rep_type::const_iterator const_iterator;
- typedef typename _Rep_type::size_type size_type;
- typedef typename _Rep_type::difference_type difference_type;
- typedef typename _Rep_type::pointer pointer;
- typedef typename _Rep_type::const_pointer const_pointer;
- typedef typename _Rep_type::reverse_iterator reverse_iterator;
- typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
-
-
- // [23.3.1.1] construct/copy/destroy
- // (get_allocator() is normally listed in this section, but seems to have
- // been accidentally omitted in the printed standard)
- /**
- * @brief Default constructor creates no elements.
- */
- map() : _M_t(_Compare(), allocator_type()) { }
-
- // for some reason this was made a separate function
- /**
- * @brief Default constructor creates no elements.
- */
- explicit
- map(const _Compare& __comp, const allocator_type& __a = allocator_type())
+
+ private:
+ /// @if maint This turns a red-black tree into a [multi]map. @endif
+ typedef _Rb_tree<key_type, value_type,
+ _Select1st<value_type>, key_compare, _Alloc> _Rep_type;
+ /// @if maint The actual tree structure. @endif
+ _Rep_type _M_t;
+
+ public:
+ // many of these are specified differently in ISO, but the following are
+ // "functionally equivalent"
+ typedef typename _Rep_type::allocator_type allocator_type;
+ typedef typename _Rep_type::reference reference;
+ typedef typename _Rep_type::const_reference const_reference;
+ typedef typename _Rep_type::iterator iterator;
+ typedef typename _Rep_type::const_iterator const_iterator;
+ typedef typename _Rep_type::size_type size_type;
+ typedef typename _Rep_type::difference_type difference_type;
+ typedef typename _Rep_type::pointer pointer;
+ typedef typename _Rep_type::const_pointer const_pointer;
+ typedef typename _Rep_type::reverse_iterator reverse_iterator;
+ typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
+
+ // [23.3.1.1] construct/copy/destroy
+ // (get_allocator() is normally listed in this section, but seems to have
+ // been accidentally omitted in the printed standard)
+ /**
+ * @brief Default constructor creates no elements.
+ */
+ map()
+ : _M_t(_Compare(), allocator_type()) { }
+
+ // for some reason this was made a separate function
+ /**
+ * @brief Default constructor creates no elements.
+ */
+ explicit
+ map(const _Compare& __comp, const allocator_type& __a = allocator_type())
: _M_t(__comp, __a) { }
-
- /**
- * @brief Map copy constructor.
- * @param x A %map of identical element and allocator types.
- *
- * The newly-created %map uses a copy of the allocation object used
- * by @a x.
- */
- map(const map& __x)
+
+ /**
+ * @brief Map copy constructor.
+ * @param x A %map of identical element and allocator types.
+ *
+ * The newly-created %map uses a copy of the allocation object used
+ * by @a x.
+ */
+ map(const map& __x)
: _M_t(__x._M_t) { }
-
- /**
- * @brief Builds a %map from a range.
- * @param first An input iterator.
- * @param last An input iterator.
- *
- * Create a %map consisting of copies of the elements from [first,last).
- * This is linear in N if the range is already sorted, and NlogN
- * otherwise (where N is distance(first,last)).
- */
- template <typename _InputIterator>
- map(_InputIterator __first, _InputIterator __last)
- : _M_t(_Compare(), allocator_type())
- { _M_t.insert_unique(__first, __last); }
-
- /**
- * @brief Builds a %map from a range.
- * @param first An input iterator.
- * @param last An input iterator.
- * @param comp A comparison functor.
- * @param a An allocator object.
- *
- * Create a %map consisting of copies of the elements from [first,last).
- * This is linear in N if the range is already sorted, and NlogN
- * otherwise (where N is distance(first,last)).
- */
- template <typename _InputIterator>
- map(_InputIterator __first, _InputIterator __last,
- const _Compare& __comp, const allocator_type& __a = allocator_type())
- : _M_t(__comp, __a)
- { _M_t.insert_unique(__first, __last); }
-
- // FIXME There is no dtor declared, but we should have something generated
- // by Doxygen. I don't know what tags to add to this paragraph to make
- // that happen:
- /**
- * The dtor only erases the elements, and note that if the elements
- * themselves are pointers, the pointed-to memory is not touched in any
- * way. Managing the pointer is the user's responsibilty.
- */
-
- /**
- * @brief Map assignment operator.
- * @param x A %map of identical element and allocator types.
- *
- * All the elements of @a x are copied, but unlike the copy constructor,
- * the allocator object is not copied.
- */
- map&
- operator=(const map& __x)
- {
- _M_t = __x._M_t;
- return *this;
- }
-
- /// Get a copy of the memory allocation object.
- allocator_type
- get_allocator() const { return _M_t.get_allocator(); }
-
- // iterators
- /**
- * Returns a read/write iterator that points to the first pair in the %map.
- * Iteration is done in ascending order according to the keys.
- */
- iterator
- begin() { return _M_t.begin(); }
-
- /**
- * Returns a read-only (constant) iterator that points to the first pair
- * in the %map. Iteration is done in ascending order according to the
- * keys.
- */
- const_iterator
- begin() const { return _M_t.begin(); }
-
- /**
- * Returns a read/write iterator that points one past the last pair in the
- * %map. Iteration is done in ascending order according to the keys.
- */
- iterator
- end() { return _M_t.end(); }
-
- /**
- * Returns a read-only (constant) iterator that points one past the last
- * pair in the %map. Iteration is done in ascending order according to the
- * keys.
- */
- const_iterator
- end() const { return _M_t.end(); }
-
- /**
- * Returns a read/write reverse iterator that points to the last pair in
- * the %map. Iteration is done in descending order according to the keys.
- */
- reverse_iterator
- rbegin() { return _M_t.rbegin(); }
-
- /**
- * Returns a read-only (constant) reverse iterator that points to the last
- * pair in the %map. Iteration is done in descending order according to
- * the keys.
- */
- const_reverse_iterator
- rbegin() const { return _M_t.rbegin(); }
-
- /**
- * Returns a read/write reverse iterator that points to one before the
- * first pair in the %map. Iteration is done in descending order according
- * to the keys.
- */
- reverse_iterator
- rend() { return _M_t.rend(); }
-
- /**
- * Returns a read-only (constant) reverse iterator that points to one
- * before the first pair in the %map. Iteration is done in descending
- * order according to the keys.
- */
- const_reverse_iterator
- rend() const { return _M_t.rend(); }
-
- // capacity
- /** Returns true if the %map is empty. (Thus begin() would equal end().) */
- bool
- empty() const { return _M_t.empty(); }
-
- /** Returns the size of the %map. */
- size_type
- size() const { return _M_t.size(); }
-
- /** Returns the maximum size of the %map. */
- size_type
- max_size() const { return _M_t.max_size(); }
-
- // [23.3.1.2] element access
- /**
- * @brief Subscript ( @c [] ) access to %map data.
- * @param k The key for which data should be retrieved.
- * @return A reference to the data of the (key,data) %pair.
- *
- * Allows for easy lookup with the subscript ( @c [] ) operator. Returns
- * data associated with the key specified in subscript. If the key does
- * not exist, a pair with that key is created using default values, which
- * is then returned.
- *
- * Lookup requires logarithmic time.
- */
- mapped_type&
- operator[](const key_type& __k)
- {
- // concept requirements
- __glibcxx_function_requires(_DefaultConstructibleConcept<mapped_type>)
-
- iterator __i = lower_bound(__k);
- // __i->first is greater than or equivalent to __k.
- if (__i == end() || key_comp()(__k, (*__i).first))
- __i = insert(__i, value_type(__k, mapped_type()));
- return (*__i).second;
- }
-
- // modifiers
- /**
- * @brief Attempts to insert a std::pair into the %map.
- * @param x Pair to be inserted (see std::make_pair for easy creation of
- * pairs).
- * @return A pair, of which the first element is an iterator that points
- * to the possibly inserted pair, and the second is a bool that
- * is true if the pair was actually inserted.
- *
- * This function attempts to insert a (key, value) %pair into the %map.
- * A %map relies on unique keys and thus a %pair is only inserted if its
- * first element (the key) is not already present in the %map.
- *
- * Insertion requires logarithmic time.
- */
- pair<iterator,bool>
- insert(const value_type& __x)
- { return _M_t.insert_unique(__x); }
-
- /**
- * @brief Attempts to insert a std::pair into the %map.
- * @param position An iterator that serves as a hint as to where the
- * pair should be inserted.
- * @param x Pair to be inserted (see std::make_pair for easy creation of
- * pairs).
- * @return An iterator that points to the element with key of @a x (may
- * or may not be the %pair passed in).
- *
- * This function is not concerned about whether the insertion took place,
- * and thus does not return a boolean like the single-argument
- * insert() does. Note that the first parameter is only a hint and can
- * potentially improve the performance of the insertion process. A bad
- * hint would cause no gains in efficiency.
- *
- * See http://gcc.gnu.org/onlinedocs/libstdc++/23_containers/howto.html#4
- * for more on "hinting".
- *
- * Insertion requires logarithmic time (if the hint is not taken).
- */
- iterator
- insert(iterator position, const value_type& __x)
- { return _M_t.insert_unique(position, __x); }
-
- /**
- * @brief A template function that attemps to insert a range of elements.
- * @param first Iterator pointing to the start of the range to be
- * inserted.
- * @param last Iterator pointing to the end of the range.
- *
- * Complexity similar to that of the range constructor.
- */
- template <typename _InputIterator>
+
+ /**
+ * @brief Builds a %map from a range.
+ * @param first An input iterator.
+ * @param last An input iterator.
+ *
+ * Create a %map consisting of copies of the elements from [first,last).
+ * This is linear in N if the range is already sorted, and NlogN
+ * otherwise (where N is distance(first,last)).
+ */
+ template <typename _InputIterator>
+ map(_InputIterator __first, _InputIterator __last)
+ : _M_t(_Compare(), allocator_type())
+ { _M_t.insert_unique(__first, __last); }
+
+ /**
+ * @brief Builds a %map from a range.
+ * @param first An input iterator.
+ * @param last An input iterator.
+ * @param comp A comparison functor.
+ * @param a An allocator object.
+ *
+ * Create a %map consisting of copies of the elements from [first,last).
+ * This is linear in N if the range is already sorted, and NlogN
+ * otherwise (where N is distance(first,last)).
+ */
+ template <typename _InputIterator>
+ map(_InputIterator __first, _InputIterator __last,
+ const _Compare& __comp, const allocator_type& __a = allocator_type())
+ : _M_t(__comp, __a)
+ { _M_t.insert_unique(__first, __last); }
+
+ // FIXME There is no dtor declared, but we should have something generated
+ // by Doxygen. I don't know what tags to add to this paragraph to make
+ // that happen:
+ /**
+ * The dtor only erases the elements, and note that if the elements
+ * themselves are pointers, the pointed-to memory is not touched in any
+ * way. Managing the pointer is the user's responsibilty.
+ */
+
+ /**
+ * @brief Map assignment operator.
+ * @param x A %map of identical element and allocator types.
+ *
+ * All the elements of @a x are copied, but unlike the copy constructor,
+ * the allocator object is not copied.
+ */
+ map&
+ operator=(const map& __x)
+ {
+ _M_t = __x._M_t;
+ return *this;
+ }
+
+ /// Get a copy of the memory allocation object.
+ allocator_type
+ get_allocator() const
+ { return _M_t.get_allocator(); }
+
+ // iterators
+ /**
+ * Returns a read/write iterator that points to the first pair in the
+ * %map.
+ * Iteration is done in ascending order according to the keys.
+ */
+ iterator
+ begin()
+ { return _M_t.begin(); }
+
+ /**
+ * Returns a read-only (constant) iterator that points to the first pair
+ * in the %map. Iteration is done in ascending order according to the
+ * keys.
+ */
+ const_iterator
+ begin() const
+ { return _M_t.begin(); }
+
+ /**
+ * Returns a read/write iterator that points one past the last pair in
+ * the %map. Iteration is done in ascending order according to the keys.
+ */
+ iterator
+ end()
+ { return _M_t.end(); }
+
+ /**
+ * Returns a read-only (constant) iterator that points one past the last
+ * pair in the %map. Iteration is done in ascending order according to
+ * the keys.
+ */
+ const_iterator
+ end() const
+ { return _M_t.end(); }
+
+ /**
+ * Returns a read/write reverse iterator that points to the last pair in
+ * the %map. Iteration is done in descending order according to the
+ * keys.
+ */
+ reverse_iterator
+ rbegin()
+ { return _M_t.rbegin(); }
+
+ /**
+ * Returns a read-only (constant) reverse iterator that points to the
+ * last pair in the %map. Iteration is done in descending order
+ * according to the keys.
+ */
+ const_reverse_iterator
+ rbegin() const
+ { return _M_t.rbegin(); }
+
+ /**
+ * Returns a read/write reverse iterator that points to one before the
+ * first pair in the %map. Iteration is done in descending order
+ * according to the keys.
+ */
+ reverse_iterator
+ rend()
+ { return _M_t.rend(); }
+
+ /**
+ * Returns a read-only (constant) reverse iterator that points to one
+ * before the first pair in the %map. Iteration is done in descending
+ * order according to the keys.
+ */
+ const_reverse_iterator
+ rend() const
+ { return _M_t.rend(); }
+
+ // capacity
+ /** Returns true if the %map is empty. (Thus begin() would equal
+ * end().)
+ */
+ bool
+ empty() const
+ { return _M_t.empty(); }
+
+ /** Returns the size of the %map. */
+ size_type
+ size() const
+ { return _M_t.size(); }
+
+ /** Returns the maximum size of the %map. */
+ size_type
+ max_size() const
+ { return _M_t.max_size(); }
+
+ // [23.3.1.2] element access
+ /**
+ * @brief Subscript ( @c [] ) access to %map data.
+ * @param k The key for which data should be retrieved.
+ * @return A reference to the data of the (key,data) %pair.
+ *
+ * Allows for easy lookup with the subscript ( @c [] ) operator. Returns
+ * data associated with the key specified in subscript. If the key does
+ * not exist, a pair with that key is created using default values, which
+ * is then returned.
+ *
+ * Lookup requires logarithmic time.
+ */
+ mapped_type&
+ operator[](const key_type& __k)
+ {
+ // concept requirements
+ __glibcxx_function_requires(_DefaultConstructibleConcept<mapped_type>)
+
+ iterator __i = lower_bound(__k);
+ // __i->first is greater than or equivalent to __k.
+ if (__i == end() || key_comp()(__k, (*__i).first))
+ __i = insert(__i, value_type(__k, mapped_type()));
+ return (*__i).second;
+ }
+
+ // modifiers
+ /**
+ * @brief Attempts to insert a std::pair into the %map.
+ * @param x Pair to be inserted (see std::make_pair for easy creation of
+ * pairs).
+ * @return A pair, of which the first element is an iterator that points
+ * to the possibly inserted pair, and the second is a bool that
+ * is true if the pair was actually inserted.
+ *
+ * This function attempts to insert a (key, value) %pair into the %map.
+ * A %map relies on unique keys and thus a %pair is only inserted if its
+ * first element (the key) is not already present in the %map.
+ *
+ * Insertion requires logarithmic time.
+ */
+ pair<iterator,bool>
+ insert(const value_type& __x)
+ { return _M_t.insert_unique(__x); }
+
+ /**
+ * @brief Attempts to insert a std::pair into the %map.
+ * @param position An iterator that serves as a hint as to where the
+ * pair should be inserted.
+ * @param x Pair to be inserted (see std::make_pair for easy creation of
+ * pairs).
+ * @return An iterator that points to the element with key of @a x (may
+ * or may not be the %pair passed in).
+ *
+ * This function is not concerned about whether the insertion took place,
+ * and thus does not return a boolean like the single-argument
+ * insert() does. Note that the first parameter is only a hint and can
+ * potentially improve the performance of the insertion process. A bad
+ * hint would cause no gains in efficiency.
+ *
+ * See http://gcc.gnu.org/onlinedocs/libstdc++/23_containers/howto.html#4
+ * for more on "hinting".
+ *
+ * Insertion requires logarithmic time (if the hint is not taken).
+ */
+ iterator
+ insert(iterator position, const value_type& __x)
+ { return _M_t.insert_unique(position, __x); }
+
+ /**
+ * @brief A template function that attemps to insert a range of elements.
+ * @param first Iterator pointing to the start of the range to be
+ * inserted.
+ * @param last Iterator pointing to the end of the range.
+ *
+ * Complexity similar to that of the range constructor.
+ */
+ template <typename _InputIterator>
+ void
+ insert(_InputIterator __first, _InputIterator __last)
+ { _M_t.insert_unique(__first, __last); }
+
+ /**
+ * @brief Erases an element from a %map.
+ * @param position An iterator pointing to the element to be erased.
+ *
+ * This function erases an element, pointed to by the given iterator,
+ * from a %map. Note that this function only erases the element, and
+ * that if the element is itself a pointer, the pointed-to memory is not
+ * touched in any way. Managing the pointer is the user's responsibilty.
+ */
+ void
+ erase(iterator __position)
+ { _M_t.erase(__position); }
+
+ /**
+ * @brief Erases elements according to the provided key.
+ * @param x Key of element to be erased.
+ * @return The number of elements erased.
+ *
+ * This function erases all the elements located by the given key from
+ * a %map.
+ * Note that this function only erases the element, and that if
+ * the element is itself a pointer, the pointed-to memory is not touched
+ * in any way. Managing the pointer is the user's responsibilty.
+ */
+ size_type
+ erase(const key_type& __x)
+ { return _M_t.erase(__x); }
+
+ /**
+ * @brief Erases a [first,last) range of elements from a %map.
+ * @param first Iterator pointing to the start of the range to be
+ * erased.
+ * @param last Iterator pointing to the end of the range to be erased.
+ *
+ * This function erases a sequence of elements from a %map.
+ * Note that this function only erases the element, and that if
+ * the element is itself a pointer, the pointed-to memory is not touched
+ * in any way. Managing the pointer is the user's responsibilty.
+ */
void
- insert(_InputIterator __first, _InputIterator __last)
- { _M_t.insert_unique(__first, __last); }
-
- /**
- * @brief Erases an element from a %map.
- * @param position An iterator pointing to the element to be erased.
- *
- * This function erases an element, pointed to by the given iterator, from
- * a %map. Note that this function only erases the element, and that if
- * the element is itself a pointer, the pointed-to memory is not touched
- * in any way. Managing the pointer is the user's responsibilty.
- */
- void
- erase(iterator __position) { _M_t.erase(__position); }
-
- /**
- * @brief Erases elements according to the provided key.
- * @param x Key of element to be erased.
- * @return The number of elements erased.
- *
- * This function erases all the elements located by the given key from
- * a %map.
- * Note that this function only erases the element, and that if
- * the element is itself a pointer, the pointed-to memory is not touched
- * in any way. Managing the pointer is the user's responsibilty.
- */
- size_type
- erase(const key_type& __x) { return _M_t.erase(__x); }
-
- /**
- * @brief Erases a [first,last) range of elements from a %map.
- * @param first Iterator pointing to the start of the range to be erased.
- * @param last Iterator pointing to the end of the range to be erased.
- *
- * This function erases a sequence of elements from a %map.
- * Note that this function only erases the element, and that if
- * the element is itself a pointer, the pointed-to memory is not touched
- * in any way. Managing the pointer is the user's responsibilty.
- */
- void
- erase(iterator __first, iterator __last) { _M_t.erase(__first, __last); }
-
- /**
- * @brief Swaps data with another %map.
- * @param x A %map of the same element and allocator types.
- *
- * This exchanges the elements between two maps in constant time.
- * (It is only swapping a pointer, an integer, and an instance of
- * the @c Compare type (which itself is often stateless and empty), so it
- * should be quite fast.)
- * Note that the global std::swap() function is specialized such that
- * std::swap(m1,m2) will feed to this function.
- */
- void
- swap(map& __x) { _M_t.swap(__x._M_t); }
-
- /**
- * Erases all elements in a %map. Note that this function only erases
- * the elements, and that if the elements themselves are pointers, the
- * pointed-to memory is not touched in any way. Managing the pointer is
- * the user's responsibilty.
- */
- void
- clear() { _M_t.clear(); }
-
- // observers
- /**
- * Returns the key comparison object out of which the %map was constructed.
- */
- key_compare
- key_comp() const { return _M_t.key_comp(); }
-
- /**
- * Returns a value comparison object, built from the key comparison
- * object out of which the %map was constructed.
- */
- value_compare
- value_comp() const { return value_compare(_M_t.key_comp()); }
-
- // [23.3.1.3] map operations
- /**
- * @brief Tries to locate an element in a %map.
- * @param x Key of (key, value) %pair to be located.
- * @return Iterator pointing to sought-after element, or end() if not
- * found.
- *
- * This function takes a key and tries to locate the element with which
- * the key matches. If successful the function returns an iterator
- * pointing to the sought after %pair. If unsuccessful it returns the
- * past-the-end ( @c end() ) iterator.
- */
- iterator
- find(const key_type& __x) { return _M_t.find(__x); }
-
- /**
- * @brief Tries to locate an element in a %map.
- * @param x Key of (key, value) %pair to be located.
- * @return Read-only (constant) iterator pointing to sought-after
- * element, or end() if not found.
- *
- * This function takes a key and tries to locate the element with which
- * the key matches. If successful the function returns a constant iterator
- * pointing to the sought after %pair. If unsuccessful it returns the
- * past-the-end ( @c end() ) iterator.
- */
- const_iterator
- find(const key_type& __x) const { return _M_t.find(__x); }
-
- /**
- * @brief Finds the number of elements with given key.
- * @param x Key of (key, value) pairs to be located.
- * @return Number of elements with specified key.
- *
- * This function only makes sense for multimaps; for map the result will
- * either be 0 (not present) or 1 (present).
- */
- size_type
- count(const key_type& __x) const
- { return _M_t.find(__x) == _M_t.end() ? 0 : 1; }
-
- /**
- * @brief Finds the beginning of a subsequence matching given key.
- * @param x Key of (key, value) pair to be located.
- * @return Iterator pointing to first element equal to or greater
- * than key, or end().
- *
- * This function returns the first element of a subsequence of elements
- * that matches the given key. If unsuccessful it returns an iterator
- * pointing to the first element that has a greater value than given key
- * or end() if no such element exists.
- */
- iterator
- lower_bound(const key_type& __x) { return _M_t.lower_bound(__x); }
-
- /**
- * @brief Finds the beginning of a subsequence matching given key.
- * @param x Key of (key, value) pair to be located.
- * @return Read-only (constant) iterator pointing to first element
- * equal to or greater than key, or end().
- *
- * This function returns the first element of a subsequence of elements
- * that matches the given key. If unsuccessful it returns an iterator
- * pointing to the first element that has a greater value than given key
- * or end() if no such element exists.
- */
- const_iterator
- lower_bound(const key_type& __x) const { return _M_t.lower_bound(__x); }
-
- /**
- * @brief Finds the end of a subsequence matching given key.
- * @param x Key of (key, value) pair to be located.
- * @return Iterator pointing to the first element
- * greater than key, or end().
- */
- iterator
- upper_bound(const key_type& __x) { return _M_t.upper_bound(__x); }
-
- /**
- * @brief Finds the end of a subsequence matching given key.
- * @param x Key of (key, value) pair to be located.
- * @return Read-only (constant) iterator pointing to first iterator
- * greater than key, or end().
- */
- const_iterator
- upper_bound(const key_type& __x) const
- { return _M_t.upper_bound(__x); }
-
- /**
- * @brief Finds a subsequence matching given key.
- * @param x Key of (key, value) pairs to be located.
- * @return Pair of iterators that possibly points to the subsequence
- * matching given key.
- *
- * This function is equivalent to
- * @code
- * std::make_pair(c.lower_bound(val),
- * c.upper_bound(val))
- * @endcode
- * (but is faster than making the calls separately).
- *
- * This function probably only makes sense for multimaps.
- */
- pair<iterator,iterator>
- equal_range(const key_type& __x)
- { return _M_t.equal_range(__x); }
-
- /**
- * @brief Finds a subsequence matching given key.
- * @param x Key of (key, value) pairs to be located.
- * @return Pair of read-only (constant) iterators that possibly points to
- * the subsequence matching given key.
- *
- * This function is equivalent to
- * @code
- * std::make_pair(c.lower_bound(val),
- * c.upper_bound(val))
- * @endcode
- * (but is faster than making the calls separately).
- *
- * This function probably only makes sense for multimaps.
- */
- pair<const_iterator,const_iterator>
- equal_range(const key_type& __x) const
- { return _M_t.equal_range(__x); }
-
- template <typename _K1, typename _T1, typename _C1, typename _A1>
- friend bool operator== (const map<_K1,_T1,_C1,_A1>&,
- const map<_K1,_T1,_C1,_A1>&);
- template <typename _K1, typename _T1, typename _C1, typename _A1>
- friend bool operator< (const map<_K1,_T1,_C1,_A1>&,
- const map<_K1,_T1,_C1,_A1>&);
- };
-
-
+ erase(iterator __first, iterator __last)
+ { _M_t.erase(__first, __last); }
+
+ /**
+ * @brief Swaps data with another %map.
+ * @param x A %map of the same element and allocator types.
+ *
+ * This exchanges the elements between two maps in constant time.
+ * (It is only swapping a pointer, an integer, and an instance of
+ * the @c Compare type (which itself is often stateless and empty), so it
+ * should be quite fast.)
+ * Note that the global std::swap() function is specialized such that
+ * std::swap(m1,m2) will feed to this function.
+ */
+ void
+ swap(map& __x)
+ { _M_t.swap(__x._M_t); }
+
+ /**
+ * Erases all elements in a %map. Note that this function only erases
+ * the elements, and that if the elements themselves are pointers, the
+ * pointed-to memory is not touched in any way. Managing the pointer is
+ * the user's responsibilty.
+ */
+ void
+ clear()
+ { _M_t.clear(); }
+
+ // observers
+ /**
+ * Returns the key comparison object out of which the %map was
+ * constructed.
+ */
+ key_compare
+ key_comp() const
+ { return _M_t.key_comp(); }
+
+ /**
+ * Returns a value comparison object, built from the key comparison
+ * object out of which the %map was constructed.
+ */
+ value_compare
+ value_comp() const
+ { return value_compare(_M_t.key_comp()); }
+
+ // [23.3.1.3] map operations
+ /**
+ * @brief Tries to locate an element in a %map.
+ * @param x Key of (key, value) %pair to be located.
+ * @return Iterator pointing to sought-after element, or end() if not
+ * found.
+ *
+ * This function takes a key and tries to locate the element with which
+ * the key matches. If successful the function returns an iterator
+ * pointing to the sought after %pair. If unsuccessful it returns the
+ * past-the-end ( @c end() ) iterator.
+ */
+ iterator
+ find(const key_type& __x)
+ { return _M_t.find(__x); }
+
+ /**
+ * @brief Tries to locate an element in a %map.
+ * @param x Key of (key, value) %pair to be located.
+ * @return Read-only (constant) iterator pointing to sought-after
+ * element, or end() if not found.
+ *
+ * This function takes a key and tries to locate the element with which
+ * the key matches. If successful the function returns a constant
+ * iterator pointing to the sought after %pair. If unsuccessful it
+ * returns the past-the-end ( @c end() ) iterator.
+ */
+ const_iterator
+ find(const key_type& __x) const
+ { return _M_t.find(__x); }
+
+ /**
+ * @brief Finds the number of elements with given key.
+ * @param x Key of (key, value) pairs to be located.
+ * @return Number of elements with specified key.
+ *
+ * This function only makes sense for multimaps; for map the result will
+ * either be 0 (not present) or 1 (present).
+ */
+ size_type
+ count(const key_type& __x) const
+ { return _M_t.find(__x) == _M_t.end() ? 0 : 1; }
+
+ /**
+ * @brief Finds the beginning of a subsequence matching given key.
+ * @param x Key of (key, value) pair to be located.
+ * @return Iterator pointing to first element equal to or greater
+ * than key, or end().
+ *
+ * This function returns the first element of a subsequence of elements
+ * that matches the given key. If unsuccessful it returns an iterator
+ * pointing to the first element that has a greater value than given key
+ * or end() if no such element exists.
+ */
+ iterator
+ lower_bound(const key_type& __x)
+ { return _M_t.lower_bound(__x); }
+
+ /**
+ * @brief Finds the beginning of a subsequence matching given key.
+ * @param x Key of (key, value) pair to be located.
+ * @return Read-only (constant) iterator pointing to first element
+ * equal to or greater than key, or end().
+ *
+ * This function returns the first element of a subsequence of elements
+ * that matches the given key. If unsuccessful it returns an iterator
+ * pointing to the first element that has a greater value than given key
+ * or end() if no such element exists.
+ */
+ const_iterator
+ lower_bound(const key_type& __x) const
+ { return _M_t.lower_bound(__x); }
+
+ /**
+ * @brief Finds the end of a subsequence matching given key.
+ * @param x Key of (key, value) pair to be located.
+ * @return Iterator pointing to the first element
+ * greater than key, or end().
+ */
+ iterator
+ upper_bound(const key_type& __x)
+ { return _M_t.upper_bound(__x); }
+
+ /**
+ * @brief Finds the end of a subsequence matching given key.
+ * @param x Key of (key, value) pair to be located.
+ * @return Read-only (constant) iterator pointing to first iterator
+ * greater than key, or end().
+ */
+ const_iterator
+ upper_bound(const key_type& __x) const
+ { return _M_t.upper_bound(__x); }
+
+ /**
+ * @brief Finds a subsequence matching given key.
+ * @param x Key of (key, value) pairs to be located.
+ * @return Pair of iterators that possibly points to the subsequence
+ * matching given key.
+ *
+ * This function is equivalent to
+ * @code
+ * std::make_pair(c.lower_bound(val),
+ * c.upper_bound(val))
+ * @endcode
+ * (but is faster than making the calls separately).
+ *
+ * This function probably only makes sense for multimaps.
+ */
+ pair<iterator,iterator>
+ equal_range(const key_type& __x)
+ { return _M_t.equal_range(__x); }
+
+ /**
+ * @brief Finds a subsequence matching given key.
+ * @param x Key of (key, value) pairs to be located.
+ * @return Pair of read-only (constant) iterators that possibly points
+ * to the subsequence matching given key.
+ *
+ * This function is equivalent to
+ * @code
+ * std::make_pair(c.lower_bound(val),
+ * c.upper_bound(val))
+ * @endcode
+ * (but is faster than making the calls separately).
+ *
+ * This function probably only makes sense for multimaps.
+ */
+ pair<const_iterator,const_iterator>
+ equal_range(const key_type& __x) const
+ { return _M_t.equal_range(__x); }
+
+ template <typename _K1, typename _T1, typename _C1, typename _A1>
+ friend bool
+ operator== (const map<_K1,_T1,_C1,_A1>&,
+ const map<_K1,_T1,_C1,_A1>&);
+
+ template <typename _K1, typename _T1, typename _C1, typename _A1>
+ friend bool
+ operator< (const map<_K1,_T1,_C1,_A1>&,
+ const map<_K1,_T1,_C1,_A1>&);
+ };
+
/**
* @brief Map equality comparison.
* @param x A %map.
@@ -602,7 +638,7 @@ namespace __gnu_norm
operator==(const map<_Key,_Tp,_Compare,_Alloc>& __x,
const map<_Key,_Tp,_Compare,_Alloc>& __y)
{ return __x._M_t == __y._M_t; }
-
+
/**
* @brief Map ordering relation.
* @param x A %map.
@@ -619,40 +655,40 @@ namespace __gnu_norm
operator<(const map<_Key,_Tp,_Compare,_Alloc>& __x,
const map<_Key,_Tp,_Compare,_Alloc>& __y)
{ return __x._M_t < __y._M_t; }
-
+
/// Based on operator==
template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
inline bool
operator!=(const map<_Key,_Tp,_Compare,_Alloc>& __x,
const map<_Key,_Tp,_Compare,_Alloc>& __y)
{ return !(__x == __y); }
-
+
/// Based on operator<
template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
inline bool
operator>(const map<_Key,_Tp,_Compare,_Alloc>& __x,
const map<_Key,_Tp,_Compare,_Alloc>& __y)
{ return __y < __x; }
-
+
/// Based on operator<
template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
inline bool
operator<=(const map<_Key,_Tp,_Compare,_Alloc>& __x,
const map<_Key,_Tp,_Compare,_Alloc>& __y)
{ return !(__y < __x); }
-
+
/// Based on operator<
template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
inline bool
operator>=(const map<_Key,_Tp,_Compare,_Alloc>& __x,
const map<_Key,_Tp,_Compare,_Alloc>& __y)
{ return !(__x < __y); }
-
+
/// See std::map::swap().
template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
inline void
swap(map<_Key,_Tp,_Compare,_Alloc>& __x, map<_Key,_Tp,_Compare,_Alloc>& __y)
{ __x.swap(__y); }
-} // namespace __gnu_norm
+} // namespace std
#endif /* _MAP_H */
diff --git a/libstdc++-v3/include/bits/stl_multimap.h b/libstdc++-v3/include/bits/stl_multimap.h
index 4d892283bce..c44aa74a692 100644
--- a/libstdc++-v3/include/bits/stl_multimap.h
+++ b/libstdc++-v3/include/bits/stl_multimap.h
@@ -1,6 +1,6 @@
// Multimap implementation -*- C++ -*-
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -63,23 +63,25 @@
#include <bits/concept_check.h>
-namespace __gnu_norm
+namespace _GLIBCXX_STD
{
// Forward declaration of operators < and ==, needed for friend declaration.
-
+
template <typename _Key, typename _Tp,
typename _Compare = less<_Key>,
typename _Alloc = allocator<pair<const _Key, _Tp> > >
- class multimap;
-
+ class multimap;
+
template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
- inline bool operator==(const multimap<_Key,_Tp,_Compare,_Alloc>& __x,
- const multimap<_Key,_Tp,_Compare,_Alloc>& __y);
-
+ inline bool
+ operator==(const multimap<_Key,_Tp,_Compare,_Alloc>& __x,
+ const multimap<_Key,_Tp,_Compare,_Alloc>& __y);
+
template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
- inline bool operator<(const multimap<_Key,_Tp,_Compare,_Alloc>& __x,
- const multimap<_Key,_Tp,_Compare,_Alloc>& __y);
-
+ inline bool
+ operator<(const multimap<_Key,_Tp,_Compare,_Alloc>& __x,
+ const multimap<_Key,_Tp,_Compare,_Alloc>& __y);
+
/**
* @brief A standard container made up of (key,value) pairs, which can be
* retrieved based on a key, in logarithmic time.
@@ -103,466 +105,507 @@ namespace __gnu_norm
*/
template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
class multimap
- {
- // concept requirements
- __glibcxx_class_requires(_Tp, _SGIAssignableConcept)
- __glibcxx_class_requires4(_Compare, bool, _Key, _Key, _BinaryFunctionConcept)
-
- public:
- typedef _Key key_type;
- typedef _Tp mapped_type;
- typedef pair<const _Key, _Tp> value_type;
- typedef _Compare key_compare;
-
- class value_compare
+ {
+ // concept requirements
+ __glibcxx_class_requires(_Tp, _SGIAssignableConcept)
+ __glibcxx_class_requires4(_Compare, bool, _Key, _Key,
+ _BinaryFunctionConcept)
+
+ public:
+ typedef _Key key_type;
+ typedef _Tp mapped_type;
+ typedef pair<const _Key, _Tp> value_type;
+ typedef _Compare key_compare;
+
+ class value_compare
: public binary_function<value_type, value_type, bool>
{
- friend class multimap<_Key,_Tp,_Compare,_Alloc>;
+ friend class multimap<_Key,_Tp,_Compare,_Alloc>;
protected:
- _Compare comp;
- value_compare(_Compare __c) : comp(__c) {}
+ _Compare comp;
+
+ value_compare(_Compare __c)
+ : comp(__c) { }
+
public:
- bool operator()(const value_type& __x, const value_type& __y) const
- { return comp(__x.first, __y.first); }
- };
-
- private:
- /// @if maint This turns a red-black tree into a [multi]map. @endif
- typedef _Rb_tree<key_type, value_type,
- _Select1st<value_type>, key_compare, _Alloc> _Rep_type;
- /// @if maint The actual tree structure. @endif
- _Rep_type _M_t;
-
- public:
- // many of these are specified differently in ISO, but the following are
- // "functionally equivalent"
- typedef typename _Rep_type::allocator_type allocator_type;
- typedef typename _Rep_type::reference reference;
- typedef typename _Rep_type::const_reference const_reference;
- typedef typename _Rep_type::iterator iterator;
- typedef typename _Rep_type::const_iterator const_iterator;
- typedef typename _Rep_type::size_type size_type;
- typedef typename _Rep_type::difference_type difference_type;
- typedef typename _Rep_type::pointer pointer;
- typedef typename _Rep_type::const_pointer const_pointer;
- typedef typename _Rep_type::reverse_iterator reverse_iterator;
- typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
-
-
- // [23.3.2] construct/copy/destroy
- // (get_allocator() is also listed in this section)
- /**
- * @brief Default constructor creates no elements.
- */
- multimap() : _M_t(_Compare(), allocator_type()) { }
-
- // for some reason this was made a separate function
- /**
- * @brief Default constructor creates no elements.
- */
- explicit
- multimap(const _Compare& __comp, const allocator_type& __a = allocator_type())
+ bool operator()(const value_type& __x, const value_type& __y) const
+ { return comp(__x.first, __y.first); }
+ };
+
+ private:
+ /// @if maint This turns a red-black tree into a [multi]map. @endif
+ typedef _Rb_tree<key_type, value_type,
+ _Select1st<value_type>, key_compare, _Alloc> _Rep_type;
+ /// @if maint The actual tree structure. @endif
+ _Rep_type _M_t;
+
+ public:
+ // many of these are specified differently in ISO, but the following are
+ // "functionally equivalent"
+ typedef typename _Rep_type::allocator_type allocator_type;
+ typedef typename _Rep_type::reference reference;
+ typedef typename _Rep_type::const_reference const_reference;
+ typedef typename _Rep_type::iterator iterator;
+ typedef typename _Rep_type::const_iterator const_iterator;
+ typedef typename _Rep_type::size_type size_type;
+ typedef typename _Rep_type::difference_type difference_type;
+ typedef typename _Rep_type::pointer pointer;
+ typedef typename _Rep_type::const_pointer const_pointer;
+ typedef typename _Rep_type::reverse_iterator reverse_iterator;
+ typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
+
+
+ // [23.3.2] construct/copy/destroy
+ // (get_allocator() is also listed in this section)
+ /**
+ * @brief Default constructor creates no elements.
+ */
+ multimap()
+ : _M_t(_Compare(), allocator_type()) { }
+
+ // for some reason this was made a separate function
+ /**
+ * @brief Default constructor creates no elements.
+ */
+ explicit
+ multimap(const _Compare& __comp,
+ const allocator_type& __a = allocator_type())
: _M_t(__comp, __a) { }
-
- /**
- * @brief %Multimap copy constructor.
- * @param x A %multimap of identical element and allocator types.
- *
- * The newly-created %multimap uses a copy of the allocation object used
- * by @a x.
- */
- multimap(const multimap& __x)
+
+ /**
+ * @brief %Multimap copy constructor.
+ * @param x A %multimap of identical element and allocator types.
+ *
+ * The newly-created %multimap uses a copy of the allocation object used
+ * by @a x.
+ */
+ multimap(const multimap& __x)
: _M_t(__x._M_t) { }
-
- /**
- * @brief Builds a %multimap from a range.
- * @param first An input iterator.
- * @param last An input iterator.
- *
- * Create a %multimap consisting of copies of the elements from
- * [first,last). This is linear in N if the range is already sorted,
- * and NlogN otherwise (where N is distance(first,last)).
- */
- template <typename _InputIterator>
- multimap(_InputIterator __first, _InputIterator __last)
- : _M_t(_Compare(), allocator_type())
+
+ /**
+ * @brief Builds a %multimap from a range.
+ * @param first An input iterator.
+ * @param last An input iterator.
+ *
+ * Create a %multimap consisting of copies of the elements from
+ * [first,last). This is linear in N if the range is already sorted,
+ * and NlogN otherwise (where N is distance(first,last)).
+ */
+ template <typename _InputIterator>
+ multimap(_InputIterator __first, _InputIterator __last)
+ : _M_t(_Compare(), allocator_type())
{ _M_t.insert_equal(__first, __last); }
-
- /**
- * @brief Builds a %multimap from a range.
- * @param first An input iterator.
- * @param last An input iterator.
- * @param comp A comparison functor.
- * @param a An allocator object.
- *
- * Create a %multimap consisting of copies of the elements from
- * [first,last). This is linear in N if the range is already sorted,
- * and NlogN otherwise (where N is distance(first,last)).
- */
- template <typename _InputIterator>
- multimap(_InputIterator __first, _InputIterator __last,
- const _Compare& __comp,
- const allocator_type& __a = allocator_type())
+
+ /**
+ * @brief Builds a %multimap from a range.
+ * @param first An input iterator.
+ * @param last An input iterator.
+ * @param comp A comparison functor.
+ * @param a An allocator object.
+ *
+ * Create a %multimap consisting of copies of the elements from
+ * [first,last). This is linear in N if the range is already sorted,
+ * and NlogN otherwise (where N is distance(first,last)).
+ */
+ template <typename _InputIterator>
+ multimap(_InputIterator __first, _InputIterator __last,
+ const _Compare& __comp,
+ const allocator_type& __a = allocator_type())
: _M_t(__comp, __a)
{ _M_t.insert_equal(__first, __last); }
-
- // FIXME There is no dtor declared, but we should have something generated
- // by Doxygen. I don't know what tags to add to this paragraph to make
- // that happen:
- /**
- * The dtor only erases the elements, and note that if the elements
- * themselves are pointers, the pointed-to memory is not touched in any
- * way. Managing the pointer is the user's responsibilty.
- */
-
- /**
- * @brief %Multimap assignment operator.
- * @param x A %multimap of identical element and allocator types.
- *
- * All the elements of @a x are copied, but unlike the copy constructor,
- * the allocator object is not copied.
- */
- multimap&
- operator=(const multimap& __x)
- {
- _M_t = __x._M_t;
- return *this;
- }
-
- /// Get a copy of the memory allocation object.
- allocator_type
- get_allocator() const { return _M_t.get_allocator(); }
-
- // iterators
- /**
- * Returns a read/write iterator that points to the first pair in the
- * %multimap. Iteration is done in ascending order according to the keys.
- */
- iterator
- begin() { return _M_t.begin(); }
-
- /**
- * Returns a read-only (constant) iterator that points to the first pair
- * in the %multimap. Iteration is done in ascending order according to the
- * keys.
- */
- const_iterator
- begin() const { return _M_t.begin(); }
-
- /**
- * Returns a read/write iterator that points one past the last pair in the
- * %multimap. Iteration is done in ascending order according to the keys.
- */
- iterator
- end() { return _M_t.end(); }
-
- /**
- * Returns a read-only (constant) iterator that points one past the last
- * pair in the %multimap. Iteration is done in ascending order according
- * to the keys.
- */
- const_iterator
- end() const { return _M_t.end(); }
-
- /**
- * Returns a read/write reverse iterator that points to the last pair in
- * the %multimap. Iteration is done in descending order according to the
- * keys.
- */
- reverse_iterator
- rbegin() { return _M_t.rbegin(); }
-
- /**
- * Returns a read-only (constant) reverse iterator that points to the last
- * pair in the %multimap. Iteration is done in descending order according
- * to the keys.
- */
- const_reverse_iterator
- rbegin() const { return _M_t.rbegin(); }
-
- /**
- * Returns a read/write reverse iterator that points to one before the
- * first pair in the %multimap. Iteration is done in descending order
- * according to the keys.
- */
- reverse_iterator
- rend() { return _M_t.rend(); }
-
- /**
- * Returns a read-only (constant) reverse iterator that points to one
- * before the first pair in the %multimap. Iteration is done in descending
- * order according to the keys.
- */
- const_reverse_iterator
- rend() const { return _M_t.rend(); }
-
- // capacity
- /** Returns true if the %multimap is empty. */
- bool
- empty() const { return _M_t.empty(); }
-
- /** Returns the size of the %multimap. */
- size_type
- size() const { return _M_t.size(); }
-
- /** Returns the maximum size of the %multimap. */
- size_type
- max_size() const { return _M_t.max_size(); }
-
- // modifiers
- /**
- * @brief Inserts a std::pair into the %multimap.
- * @param x Pair to be inserted (see std::make_pair for easy creation of
- * pairs).
- * @return An iterator that points to the inserted (key,value) pair.
- *
- * This function inserts a (key, value) pair into the %multimap. Contrary
- * to a std::map the %multimap does not rely on unique keys and thus
- * multiple pairs with the same key can be inserted.
- *
- * Insertion requires logarithmic time.
- */
- iterator
- insert(const value_type& __x) { return _M_t.insert_equal(__x); }
-
- /**
- * @brief Inserts a std::pair into the %multimap.
- * @param position An iterator that serves as a hint as to where the
- * pair should be inserted.
- * @param x Pair to be inserted (see std::make_pair for easy creation of
- * pairs).
- * @return An iterator that points to the inserted (key,value) pair.
- *
- * This function inserts a (key, value) pair into the %multimap. Contrary
- * to a std::map the %multimap does not rely on unique keys and thus
- * multiple pairs with the same key can be inserted.
- * Note that the first parameter is only a hint and can potentially
- * improve the performance of the insertion process. A bad hint would
- * cause no gains in efficiency.
- *
- * See http://gcc.gnu.org/onlinedocs/libstdc++/23_containers/howto.html#4
- * for more on "hinting".
- *
- * Insertion requires logarithmic time (if the hint is not taken).
- */
- iterator
- insert(iterator __position, const value_type& __x)
- { return _M_t.insert_equal(__position, __x); }
-
- /**
- * @brief A template function that attemps to insert a range of elements.
- * @param first Iterator pointing to the start of the range to be
- * inserted.
- * @param last Iterator pointing to the end of the range.
- *
- * Complexity similar to that of the range constructor.
- */
- template <typename _InputIterator>
+
+ // FIXME There is no dtor declared, but we should have something generated
+ // by Doxygen. I don't know what tags to add to this paragraph to make
+ // that happen:
+ /**
+ * The dtor only erases the elements, and note that if the elements
+ * themselves are pointers, the pointed-to memory is not touched in any
+ * way. Managing the pointer is the user's responsibilty.
+ */
+
+ /**
+ * @brief %Multimap assignment operator.
+ * @param x A %multimap of identical element and allocator types.
+ *
+ * All the elements of @a x are copied, but unlike the copy constructor,
+ * the allocator object is not copied.
+ */
+ multimap&
+ operator=(const multimap& __x)
+ {
+ _M_t = __x._M_t;
+ return *this;
+ }
+
+ /// Get a copy of the memory allocation object.
+ allocator_type
+ get_allocator() const
+ { return _M_t.get_allocator(); }
+
+ // iterators
+ /**
+ * Returns a read/write iterator that points to the first pair in the
+ * %multimap. Iteration is done in ascending order according to the
+ * keys.
+ */
+ iterator
+ begin()
+ { return _M_t.begin(); }
+
+ /**
+ * Returns a read-only (constant) iterator that points to the first pair
+ * in the %multimap. Iteration is done in ascending order according to
+ * the keys.
+ */
+ const_iterator
+ begin() const
+ { return _M_t.begin(); }
+
+ /**
+ * Returns a read/write iterator that points one past the last pair in
+ * the %multimap. Iteration is done in ascending order according to the
+ * keys.
+ */
+ iterator
+ end()
+ { return _M_t.end(); }
+
+ /**
+ * Returns a read-only (constant) iterator that points one past the last
+ * pair in the %multimap. Iteration is done in ascending order according
+ * to the keys.
+ */
+ const_iterator
+ end() const
+ { return _M_t.end(); }
+
+ /**
+ * Returns a read/write reverse iterator that points to the last pair in
+ * the %multimap. Iteration is done in descending order according to the
+ * keys.
+ */
+ reverse_iterator
+ rbegin()
+ { return _M_t.rbegin(); }
+
+ /**
+ * Returns a read-only (constant) reverse iterator that points to the
+ * last pair in the %multimap. Iteration is done in descending order
+ * according to the keys.
+ */
+ const_reverse_iterator
+ rbegin() const
+ { return _M_t.rbegin(); }
+
+ /**
+ * Returns a read/write reverse iterator that points to one before the
+ * first pair in the %multimap. Iteration is done in descending order
+ * according to the keys.
+ */
+ reverse_iterator
+ rend()
+ { return _M_t.rend(); }
+
+ /**
+ * Returns a read-only (constant) reverse iterator that points to one
+ * before the first pair in the %multimap. Iteration is done in
+ * descending order according to the keys.
+ */
+ const_reverse_iterator
+ rend() const
+ { return _M_t.rend(); }
+
+ // capacity
+ /** Returns true if the %multimap is empty. */
+ bool
+ empty() const
+ { return _M_t.empty(); }
+
+ /** Returns the size of the %multimap. */
+ size_type
+ size() const
+ { return _M_t.size(); }
+
+ /** Returns the maximum size of the %multimap. */
+ size_type
+ max_size() const
+ { return _M_t.max_size(); }
+
+ // modifiers
+ /**
+ * @brief Inserts a std::pair into the %multimap.
+ * @param x Pair to be inserted (see std::make_pair for easy creation
+ * of pairs).
+ * @return An iterator that points to the inserted (key,value) pair.
+ *
+ * This function inserts a (key, value) pair into the %multimap.
+ * Contrary to a std::map the %multimap does not rely on unique keys and
+ * thus multiple pairs with the same key can be inserted.
+ *
+ * Insertion requires logarithmic time.
+ */
+ iterator
+ insert(const value_type& __x)
+ { return _M_t.insert_equal(__x); }
+
+ /**
+ * @brief Inserts a std::pair into the %multimap.
+ * @param position An iterator that serves as a hint as to where the
+ * pair should be inserted.
+ * @param x Pair to be inserted (see std::make_pair for easy creation
+ * of pairs).
+ * @return An iterator that points to the inserted (key,value) pair.
+ *
+ * This function inserts a (key, value) pair into the %multimap.
+ * Contrary to a std::map the %multimap does not rely on unique keys and
+ * thus multiple pairs with the same key can be inserted.
+ * Note that the first parameter is only a hint and can potentially
+ * improve the performance of the insertion process. A bad hint would
+ * cause no gains in efficiency.
+ *
+ * See http://gcc.gnu.org/onlinedocs/libstdc++/23_containers/howto.html#4
+ * for more on "hinting".
+ *
+ * Insertion requires logarithmic time (if the hint is not taken).
+ */
+ iterator
+ insert(iterator __position, const value_type& __x)
+ { return _M_t.insert_equal(__position, __x); }
+
+ /**
+ * @brief A template function that attemps to insert a range of elements.
+ * @param first Iterator pointing to the start of the range to be
+ * inserted.
+ * @param last Iterator pointing to the end of the range.
+ *
+ * Complexity similar to that of the range constructor.
+ */
+ template <typename _InputIterator>
+ void
+ insert(_InputIterator __first, _InputIterator __last)
+ { _M_t.insert_equal(__first, __last); }
+
+ /**
+ * @brief Erases an element from a %multimap.
+ * @param position An iterator pointing to the element to be erased.
+ *
+ * This function erases an element, pointed to by the given iterator,
+ * from a %multimap. Note that this function only erases the element,
+ * and that if the element is itself a pointer, the pointed-to memory is
+ * not touched in any way. Managing the pointer is the user's
+ * responsibilty.
+ */
+ void
+ erase(iterator __position)
+ { _M_t.erase(__position); }
+
+ /**
+ * @brief Erases elements according to the provided key.
+ * @param x Key of element to be erased.
+ * @return The number of elements erased.
+ *
+ * This function erases all elements located by the given key from a
+ * %multimap.
+ * Note that this function only erases the element, and that if
+ * the element is itself a pointer, the pointed-to memory is not touched
+ * in any way. Managing the pointer is the user's responsibilty.
+ */
+ size_type
+ erase(const key_type& __x)
+ { return _M_t.erase(__x); }
+
+ /**
+ * @brief Erases a [first,last) range of elements from a %multimap.
+ * @param first Iterator pointing to the start of the range to be
+ * erased.
+ * @param last Iterator pointing to the end of the range to be erased.
+ *
+ * This function erases a sequence of elements from a %multimap.
+ * Note that this function only erases the elements, and that if
+ * the elements themselves are pointers, the pointed-to memory is not
+ * touched in any way. Managing the pointer is the user's responsibilty.
+ */
+ void
+ erase(iterator __first, iterator __last)
+ { _M_t.erase(__first, __last); }
+
+ /**
+ * @brief Swaps data with another %multimap.
+ * @param x A %multimap of the same element and allocator types.
+ *
+ * This exchanges the elements between two multimaps in constant time.
+ * (It is only swapping a pointer, an integer, and an instance of
+ * the @c Compare type (which itself is often stateless and empty), so it
+ * should be quite fast.)
+ * Note that the global std::swap() function is specialized such that
+ * std::swap(m1,m2) will feed to this function.
+ */
+ void
+ swap(multimap& __x)
+ { _M_t.swap(__x._M_t); }
+
+ /**
+ * Erases all elements in a %multimap. Note that this function only
+ * erases the elements, and that if the elements themselves are pointers,
+ * the pointed-to memory is not touched in any way. Managing the pointer
+ * is the user's responsibilty.
+ */
void
- insert(_InputIterator __first, _InputIterator __last)
- { _M_t.insert_equal(__first, __last); }
-
- /**
- * @brief Erases an element from a %multimap.
- * @param position An iterator pointing to the element to be erased.
- *
- * This function erases an element, pointed to by the given iterator, from
- * a %multimap. Note that this function only erases the element, and that
- * if the element is itself a pointer, the pointed-to memory is not
- * touched in any way. Managing the pointer is the user's responsibilty.
- */
- void
- erase(iterator __position) { _M_t.erase(__position); }
-
- /**
- * @brief Erases elements according to the provided key.
- * @param x Key of element to be erased.
- * @return The number of elements erased.
- *
- * This function erases all elements located by the given key from a
- * %multimap.
- * Note that this function only erases the element, and that if
- * the element is itself a pointer, the pointed-to memory is not touched
- * in any way. Managing the pointer is the user's responsibilty.
- */
- size_type
- erase(const key_type& __x) { return _M_t.erase(__x); }
-
- /**
- * @brief Erases a [first,last) range of elements from a %multimap.
- * @param first Iterator pointing to the start of the range to be erased.
- * @param last Iterator pointing to the end of the range to be erased.
- *
- * This function erases a sequence of elements from a %multimap.
- * Note that this function only erases the elements, and that if
- * the elements themselves are pointers, the pointed-to memory is not
- * touched in any way. Managing the pointer is the user's responsibilty.
- */
- void
- erase(iterator __first, iterator __last) { _M_t.erase(__first, __last); }
-
- /**
- * @brief Swaps data with another %multimap.
- * @param x A %multimap of the same element and allocator types.
- *
- * This exchanges the elements between two multimaps in constant time.
- * (It is only swapping a pointer, an integer, and an instance of
- * the @c Compare type (which itself is often stateless and empty), so it
- * should be quite fast.)
- * Note that the global std::swap() function is specialized such that
- * std::swap(m1,m2) will feed to this function.
- */
- void
- swap(multimap& __x) { _M_t.swap(__x._M_t); }
-
- /**
- * Erases all elements in a %multimap. Note that this function only erases
- * the elements, and that if the elements themselves are pointers, the
- * pointed-to memory is not touched in any way. Managing the pointer is
- * the user's responsibilty.
- */
- void
- clear() { _M_t.clear(); }
-
- // observers
- /**
- * Returns the key comparison object out of which the %multimap
- * was constructed.
- */
- key_compare
- key_comp() const { return _M_t.key_comp(); }
-
- /**
- * Returns a value comparison object, built from the key comparison
- * object out of which the %multimap was constructed.
- */
- value_compare
- value_comp() const { return value_compare(_M_t.key_comp()); }
-
- // multimap operations
- /**
- * @brief Tries to locate an element in a %multimap.
- * @param x Key of (key, value) pair to be located.
- * @return Iterator pointing to sought-after element,
- * or end() if not found.
- *
- * This function takes a key and tries to locate the element with which
- * the key matches. If successful the function returns an iterator
- * pointing to the sought after %pair. If unsuccessful it returns the
- * past-the-end ( @c end() ) iterator.
- */
- iterator
- find(const key_type& __x) { return _M_t.find(__x); }
-
- /**
- * @brief Tries to locate an element in a %multimap.
- * @param x Key of (key, value) pair to be located.
- * @return Read-only (constant) iterator pointing to sought-after
- * element, or end() if not found.
- *
- * This function takes a key and tries to locate the element with which
- * the key matches. If successful the function returns a constant iterator
- * pointing to the sought after %pair. If unsuccessful it returns the
- * past-the-end ( @c end() ) iterator.
- */
- const_iterator
- find(const key_type& __x) const { return _M_t.find(__x); }
-
- /**
- * @brief Finds the number of elements with given key.
- * @param x Key of (key, value) pairs to be located.
- * @return Number of elements with specified key.
- */
- size_type
- count(const key_type& __x) const { return _M_t.count(__x); }
-
- /**
- * @brief Finds the beginning of a subsequence matching given key.
- * @param x Key of (key, value) pair to be located.
- * @return Iterator pointing to first element equal to or greater
- * than key, or end().
- *
- * This function returns the first element of a subsequence of elements
- * that matches the given key. If unsuccessful it returns an iterator
- * pointing to the first element that has a greater value than given key
- * or end() if no such element exists.
- */
- iterator
- lower_bound(const key_type& __x) { return _M_t.lower_bound(__x); }
-
- /**
- * @brief Finds the beginning of a subsequence matching given key.
- * @param x Key of (key, value) pair to be located.
- * @return Read-only (constant) iterator pointing to first element
- * equal to or greater than key, or end().
- *
- * This function returns the first element of a subsequence of elements
- * that matches the given key. If unsuccessful the iterator will point
- * to the next greatest element or, if no such greater element exists, to
- * end().
- */
- const_iterator
- lower_bound(const key_type& __x) const { return _M_t.lower_bound(__x); }
-
- /**
- * @brief Finds the end of a subsequence matching given key.
- * @param x Key of (key, value) pair to be located.
- * @return Iterator pointing to the first element
- * greater than key, or end().
- */
- iterator
- upper_bound(const key_type& __x) { return _M_t.upper_bound(__x); }
-
- /**
- * @brief Finds the end of a subsequence matching given key.
- * @param x Key of (key, value) pair to be located.
- * @return Read-only (constant) iterator pointing to first iterator
- * greater than key, or end().
- */
- const_iterator
- upper_bound(const key_type& __x) const { return _M_t.upper_bound(__x); }
-
- /**
- * @brief Finds a subsequence matching given key.
- * @param x Key of (key, value) pairs to be located.
- * @return Pair of iterators that possibly points to the subsequence
- * matching given key.
- *
- * This function is equivalent to
- * @code
- * std::make_pair(c.lower_bound(val),
- * c.upper_bound(val))
- * @endcode
- * (but is faster than making the calls separately).
- */
- pair<iterator,iterator>
- equal_range(const key_type& __x) { return _M_t.equal_range(__x); }
-
- /**
- * @brief Finds a subsequence matching given key.
- * @param x Key of (key, value) pairs to be located.
- * @return Pair of read-only (constant) iterators that possibly points to
- * the subsequence matching given key.
- *
- * This function is equivalent to
- * @code
- * std::make_pair(c.lower_bound(val),
- * c.upper_bound(val))
- * @endcode
- * (but is faster than making the calls separately).
- */
- pair<const_iterator,const_iterator>
- equal_range(const key_type& __x) const { return _M_t.equal_range(__x); }
-
- template <typename _K1, typename _T1, typename _C1, typename _A1>
- friend bool operator== (const multimap<_K1,_T1,_C1,_A1>&,
- const multimap<_K1,_T1,_C1,_A1>&);
- template <typename _K1, typename _T1, typename _C1, typename _A1>
- friend bool operator< (const multimap<_K1,_T1,_C1,_A1>&,
- const multimap<_K1,_T1,_C1,_A1>&);
+ clear()
+ { _M_t.clear(); }
+
+ // observers
+ /**
+ * Returns the key comparison object out of which the %multimap
+ * was constructed.
+ */
+ key_compare
+ key_comp() const
+ { return _M_t.key_comp(); }
+
+ /**
+ * Returns a value comparison object, built from the key comparison
+ * object out of which the %multimap was constructed.
+ */
+ value_compare
+ value_comp() const
+ { return value_compare(_M_t.key_comp()); }
+
+ // multimap operations
+ /**
+ * @brief Tries to locate an element in a %multimap.
+ * @param x Key of (key, value) pair to be located.
+ * @return Iterator pointing to sought-after element,
+ * or end() if not found.
+ *
+ * This function takes a key and tries to locate the element with which
+ * the key matches. If successful the function returns an iterator
+ * pointing to the sought after %pair. If unsuccessful it returns the
+ * past-the-end ( @c end() ) iterator.
+ */
+ iterator
+ find(const key_type& __x)
+ { return _M_t.find(__x); }
+
+ /**
+ * @brief Tries to locate an element in a %multimap.
+ * @param x Key of (key, value) pair to be located.
+ * @return Read-only (constant) iterator pointing to sought-after
+ * element, or end() if not found.
+ *
+ * This function takes a key and tries to locate the element with which
+ * the key matches. If successful the function returns a constant
+ * iterator pointing to the sought after %pair. If unsuccessful it
+ * returns the past-the-end ( @c end() ) iterator.
+ */
+ const_iterator
+ find(const key_type& __x) const
+ { return _M_t.find(__x); }
+
+ /**
+ * @brief Finds the number of elements with given key.
+ * @param x Key of (key, value) pairs to be located.
+ * @return Number of elements with specified key.
+ */
+ size_type
+ count(const key_type& __x) const
+ { return _M_t.count(__x); }
+
+ /**
+ * @brief Finds the beginning of a subsequence matching given key.
+ * @param x Key of (key, value) pair to be located.
+ * @return Iterator pointing to first element equal to or greater
+ * than key, or end().
+ *
+ * This function returns the first element of a subsequence of elements
+ * that matches the given key. If unsuccessful it returns an iterator
+ * pointing to the first element that has a greater value than given key
+ * or end() if no such element exists.
+ */
+ iterator
+ lower_bound(const key_type& __x)
+ { return _M_t.lower_bound(__x); }
+
+ /**
+ * @brief Finds the beginning of a subsequence matching given key.
+ * @param x Key of (key, value) pair to be located.
+ * @return Read-only (constant) iterator pointing to first element
+ * equal to or greater than key, or end().
+ *
+ * This function returns the first element of a subsequence of elements
+ * that matches the given key. If unsuccessful the iterator will point
+ * to the next greatest element or, if no such greater element exists, to
+ * end().
+ */
+ const_iterator
+ lower_bound(const key_type& __x) const
+ { return _M_t.lower_bound(__x); }
+
+ /**
+ * @brief Finds the end of a subsequence matching given key.
+ * @param x Key of (key, value) pair to be located.
+ * @return Iterator pointing to the first element
+ * greater than key, or end().
+ */
+ iterator
+ upper_bound(const key_type& __x)
+ { return _M_t.upper_bound(__x); }
+
+ /**
+ * @brief Finds the end of a subsequence matching given key.
+ * @param x Key of (key, value) pair to be located.
+ * @return Read-only (constant) iterator pointing to first iterator
+ * greater than key, or end().
+ */
+ const_iterator
+ upper_bound(const key_type& __x) const
+ { return _M_t.upper_bound(__x); }
+
+ /**
+ * @brief Finds a subsequence matching given key.
+ * @param x Key of (key, value) pairs to be located.
+ * @return Pair of iterators that possibly points to the subsequence
+ * matching given key.
+ *
+ * This function is equivalent to
+ * @code
+ * std::make_pair(c.lower_bound(val),
+ * c.upper_bound(val))
+ * @endcode
+ * (but is faster than making the calls separately).
+ */
+ pair<iterator,iterator>
+ equal_range(const key_type& __x)
+ { return _M_t.equal_range(__x); }
+
+ /**
+ * @brief Finds a subsequence matching given key.
+ * @param x Key of (key, value) pairs to be located.
+ * @return Pair of read-only (constant) iterators that possibly points
+ * to the subsequence matching given key.
+ *
+ * This function is equivalent to
+ * @code
+ * std::make_pair(c.lower_bound(val),
+ * c.upper_bound(val))
+ * @endcode
+ * (but is faster than making the calls separately).
+ */
+ pair<const_iterator,const_iterator>
+ equal_range(const key_type& __x) const
+ { return _M_t.equal_range(__x); }
+
+ template <typename _K1, typename _T1, typename _C1, typename _A1>
+ friend bool
+ operator== (const multimap<_K1,_T1,_C1,_A1>&,
+ const multimap<_K1,_T1,_C1,_A1>&);
+
+ template <typename _K1, typename _T1, typename _C1, typename _A1>
+ friend bool
+ operator< (const multimap<_K1,_T1,_C1,_A1>&,
+ const multimap<_K1,_T1,_C1,_A1>&);
};
-
-
+
/**
* @brief Multimap equality comparison.
* @param x A %multimap.
@@ -577,10 +620,8 @@ namespace __gnu_norm
inline bool
operator==(const multimap<_Key,_Tp,_Compare,_Alloc>& __x,
const multimap<_Key,_Tp,_Compare,_Alloc>& __y)
- {
- return __x._M_t == __y._M_t;
- }
-
+ { return __x._M_t == __y._M_t; }
+
/**
* @brief Multimap ordering relation.
* @param x A %multimap.
@@ -597,41 +638,41 @@ namespace __gnu_norm
operator<(const multimap<_Key,_Tp,_Compare,_Alloc>& __x,
const multimap<_Key,_Tp,_Compare,_Alloc>& __y)
{ return __x._M_t < __y._M_t; }
-
+
/// Based on operator==
template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
inline bool
operator!=(const multimap<_Key,_Tp,_Compare,_Alloc>& __x,
const multimap<_Key,_Tp,_Compare,_Alloc>& __y)
{ return !(__x == __y); }
-
+
/// Based on operator<
template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
inline bool
operator>(const multimap<_Key,_Tp,_Compare,_Alloc>& __x,
const multimap<_Key,_Tp,_Compare,_Alloc>& __y)
{ return __y < __x; }
-
+
/// Based on operator<
template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
inline bool
operator<=(const multimap<_Key,_Tp,_Compare,_Alloc>& __x,
const multimap<_Key,_Tp,_Compare,_Alloc>& __y)
{ return !(__y < __x); }
-
+
/// Based on operator<
template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
inline bool
operator>=(const multimap<_Key,_Tp,_Compare,_Alloc>& __x,
const multimap<_Key,_Tp,_Compare,_Alloc>& __y)
{ return !(__x < __y); }
-
+
/// See std::multimap::swap().
template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
inline void
swap(multimap<_Key,_Tp,_Compare,_Alloc>& __x,
multimap<_Key,_Tp,_Compare,_Alloc>& __y)
{ __x.swap(__y); }
-} // namespace __gnu_norm
+} // namespace std
#endif /* _MULTIMAP_H */
diff --git a/libstdc++-v3/include/bits/stl_multiset.h b/libstdc++-v3/include/bits/stl_multiset.h
index 515ef5c040e..c82dee68e4e 100644
--- a/libstdc++-v3/include/bits/stl_multiset.h
+++ b/libstdc++-v3/include/bits/stl_multiset.h
@@ -1,6 +1,6 @@
// Multiset implementation -*- C++ -*-
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -63,199 +63,523 @@
#include <bits/concept_check.h>
-namespace __gnu_norm
+namespace _GLIBCXX_STD
{
-// Forward declaration of operators < and ==, needed for friend declaration.
-
-template <class _Key, class _Compare = less<_Key>,
- class _Alloc = allocator<_Key> >
-class multiset;
-
-template <class _Key, class _Compare, class _Alloc>
-inline bool operator==(const multiset<_Key,_Compare,_Alloc>& __x,
- const multiset<_Key,_Compare,_Alloc>& __y);
-
-template <class _Key, class _Compare, class _Alloc>
-inline bool operator<(const multiset<_Key,_Compare,_Alloc>& __x,
- const multiset<_Key,_Compare,_Alloc>& __y);
-
-template <class _Key, class _Compare, class _Alloc>
-class multiset
-{
- // concept requirements
- __glibcxx_class_requires(_Key, _SGIAssignableConcept)
- __glibcxx_class_requires4(_Compare, bool, _Key, _Key, _BinaryFunctionConcept)
-
-public:
-
- // typedefs:
-
- typedef _Key key_type;
- typedef _Key value_type;
- typedef _Compare key_compare;
- typedef _Compare value_compare;
-private:
- typedef _Rb_tree<key_type, value_type,
- _Identity<value_type>, key_compare, _Alloc> _Rep_type;
- _Rep_type _M_t; // red-black tree representing multiset
-public:
- typedef typename _Alloc::pointer pointer;
- typedef typename _Alloc::const_pointer const_pointer;
- typedef typename _Alloc::reference reference;
- typedef typename _Alloc::const_reference const_reference;
- typedef typename _Rep_type::const_iterator iterator;
- typedef typename _Rep_type::const_iterator const_iterator;
- typedef typename _Rep_type::const_reverse_iterator reverse_iterator;
- typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
- typedef typename _Rep_type::size_type size_type;
- typedef typename _Rep_type::difference_type difference_type;
- typedef typename _Rep_type::allocator_type allocator_type;
-
- // allocation/deallocation
-
- multiset() : _M_t(_Compare(), allocator_type()) {}
- explicit multiset(const _Compare& __comp,
- const allocator_type& __a = allocator_type())
- : _M_t(__comp, __a) {}
-
- template <class _InputIterator>
- multiset(_InputIterator __first, _InputIterator __last)
- : _M_t(_Compare(), allocator_type())
- { _M_t.insert_equal(__first, __last); }
-
- template <class _InputIterator>
- multiset(_InputIterator __first, _InputIterator __last,
- const _Compare& __comp,
- const allocator_type& __a = allocator_type())
- : _M_t(__comp, __a) { _M_t.insert_equal(__first, __last); }
-
- multiset(const multiset<_Key,_Compare,_Alloc>& __x) : _M_t(__x._M_t) {}
-
- multiset<_Key,_Compare,_Alloc>&
- operator=(const multiset<_Key,_Compare,_Alloc>& __x) {
- _M_t = __x._M_t;
- return *this;
- }
-
- // accessors:
-
- key_compare key_comp() const { return _M_t.key_comp(); }
- value_compare value_comp() const { return _M_t.key_comp(); }
- allocator_type get_allocator() const { return _M_t.get_allocator(); }
-
- iterator begin() const { return _M_t.begin(); }
- iterator end() const { return _M_t.end(); }
- reverse_iterator rbegin() const { return _M_t.rbegin(); }
- reverse_iterator rend() const { return _M_t.rend(); }
- bool empty() const { return _M_t.empty(); }
- size_type size() const { return _M_t.size(); }
- size_type max_size() const { return _M_t.max_size(); }
- void swap(multiset<_Key,_Compare,_Alloc>& __x) { _M_t.swap(__x._M_t); }
-
- // insert/erase
- iterator insert(const value_type& __x) {
- return _M_t.insert_equal(__x);
- }
- iterator insert(iterator __position, const value_type& __x) {
- typedef typename _Rep_type::iterator _Rep_iterator;
- return _M_t.insert_equal((_Rep_iterator&)__position, __x);
- }
-
- template <class _InputIterator>
- void insert(_InputIterator __first, _InputIterator __last) {
- _M_t.insert_equal(__first, __last);
- }
- void erase(iterator __position) {
- typedef typename _Rep_type::iterator _Rep_iterator;
- _M_t.erase((_Rep_iterator&)__position);
- }
- size_type erase(const key_type& __x) {
- return _M_t.erase(__x);
- }
- void erase(iterator __first, iterator __last) {
- typedef typename _Rep_type::iterator _Rep_iterator;
- _M_t.erase((_Rep_iterator&)__first, (_Rep_iterator&)__last);
- }
- void clear() { _M_t.clear(); }
-
- // multiset operations:
-
- size_type count(const key_type& __x) const { return _M_t.count(__x); }
-
- // _GLIBCXX_RESOLVE_LIB_DEFECTS
- // 214. set::find() missing const overload
- iterator find(const key_type& __x) { return _M_t.find(__x); }
- const_iterator find(const key_type& __x) const { return _M_t.find(__x); }
- iterator lower_bound(const key_type& __x) {
- return _M_t.lower_bound(__x);
- }
- const_iterator lower_bound(const key_type& __x) const {
- return _M_t.lower_bound(__x);
- }
- iterator upper_bound(const key_type& __x) {
- return _M_t.upper_bound(__x);
- }
- const_iterator upper_bound(const key_type& __x) const {
- return _M_t.upper_bound(__x);
- }
- pair<iterator,iterator> equal_range(const key_type& __x) {
- return _M_t.equal_range(__x);
- }
- pair<const_iterator,const_iterator> equal_range(const key_type& __x) const {
- return _M_t.equal_range(__x);
- }
-
- template <class _K1, class _C1, class _A1>
- friend bool operator== (const multiset<_K1,_C1,_A1>&,
- const multiset<_K1,_C1,_A1>&);
- template <class _K1, class _C1, class _A1>
- friend bool operator< (const multiset<_K1,_C1,_A1>&,
- const multiset<_K1,_C1,_A1>&);
-};
-
-template <class _Key, class _Compare, class _Alloc>
-inline bool operator==(const multiset<_Key,_Compare,_Alloc>& __x,
- const multiset<_Key,_Compare,_Alloc>& __y) {
- return __x._M_t == __y._M_t;
-}
-
-template <class _Key, class _Compare, class _Alloc>
-inline bool operator<(const multiset<_Key,_Compare,_Alloc>& __x,
- const multiset<_Key,_Compare,_Alloc>& __y) {
- return __x._M_t < __y._M_t;
-}
-
-template <class _Key, class _Compare, class _Alloc>
-inline bool operator!=(const multiset<_Key,_Compare,_Alloc>& __x,
- const multiset<_Key,_Compare,_Alloc>& __y) {
- return !(__x == __y);
-}
-
-template <class _Key, class _Compare, class _Alloc>
-inline bool operator>(const multiset<_Key,_Compare,_Alloc>& __x,
- const multiset<_Key,_Compare,_Alloc>& __y) {
- return __y < __x;
-}
-
-template <class _Key, class _Compare, class _Alloc>
-inline bool operator<=(const multiset<_Key,_Compare,_Alloc>& __x,
- const multiset<_Key,_Compare,_Alloc>& __y) {
- return !(__y < __x);
-}
-
-template <class _Key, class _Compare, class _Alloc>
-inline bool operator>=(const multiset<_Key,_Compare,_Alloc>& __x,
- const multiset<_Key,_Compare,_Alloc>& __y) {
- return !(__x < __y);
-}
-
-template <class _Key, class _Compare, class _Alloc>
-inline void swap(multiset<_Key,_Compare,_Alloc>& __x,
- multiset<_Key,_Compare,_Alloc>& __y) {
- __x.swap(__y);
-}
-
-} // namespace __gnu_norm
+ // Forward declaration of operators < and ==, needed for friend declaration.
+ template <class _Key, class _Compare = less<_Key>,
+ class _Alloc = allocator<_Key> >
+ class multiset;
+
+ template <class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator==(const multiset<_Key,_Compare,_Alloc>& __x,
+ const multiset<_Key,_Compare,_Alloc>& __y);
+
+ template <class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator<(const multiset<_Key,_Compare,_Alloc>& __x,
+ const multiset<_Key,_Compare,_Alloc>& __y);
+
+ /**
+ * @brief A standard container made up of elements, which can be retrieved
+ * in logarithmic time.
+ *
+ * @ingroup Containers
+ * @ingroup Assoc_containers
+ *
+ * Meets the requirements of a <a href="tables.html#65">container</a>, a
+ * <a href="tables.html#66">reversible container</a>, and an
+ * <a href="tables.html#69">associative container</a> (using equivalent
+ * keys). For a @c multiset<Key> the key_type and value_type are Key.
+ *
+ * Multisets support bidirectional iterators.
+ *
+ * @if maint
+ * The private tree data is declared exactly the same way for set and
+ * multiset; the distinction is made entirely in how the tree functions are
+ * called (*_unique versus *_equal, same as the standard).
+ * @endif
+ */
+ template <class _Key, class _Compare, class _Alloc>
+ class multiset
+ {
+ // concept requirements
+ __glibcxx_class_requires(_Key, _SGIAssignableConcept)
+ __glibcxx_class_requires4(_Compare, bool, _Key, _Key,
+ _BinaryFunctionConcept)
+
+ public:
+ // typedefs:
+ typedef _Key key_type;
+ typedef _Key value_type;
+ typedef _Compare key_compare;
+ typedef _Compare value_compare;
+
+ private:
+ /// @if maint This turns a red-black tree into a [multi]set. @endif
+ typedef _Rb_tree<key_type, value_type,
+ _Identity<value_type>, key_compare, _Alloc> _Rep_type;
+ /// @if maint The actual tree structure. @endif
+ _Rep_type _M_t;
+
+ public:
+ typedef typename _Alloc::pointer pointer;
+ typedef typename _Alloc::const_pointer const_pointer;
+ typedef typename _Alloc::reference reference;
+ typedef typename _Alloc::const_reference const_reference;
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // DR 103. set::iterator is required to be modifiable,
+ // but this allows modification of keys.
+ typedef typename _Rep_type::const_iterator iterator;
+ typedef typename _Rep_type::const_iterator const_iterator;
+ typedef typename _Rep_type::const_reverse_iterator reverse_iterator;
+ typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
+ typedef typename _Rep_type::size_type size_type;
+ typedef typename _Rep_type::difference_type difference_type;
+ typedef typename _Rep_type::allocator_type allocator_type;
+
+ // allocation/deallocation
+
+ /**
+ * @brief Default constructor creates no elements.
+ */
+ multiset()
+ : _M_t(_Compare(), allocator_type()) { }
+
+ explicit
+ multiset(const _Compare& __comp,
+ const allocator_type& __a = allocator_type())
+ : _M_t(__comp, __a) { }
+
+ /**
+ * @brief Builds a %multiset from a range.
+ * @param first An input iterator.
+ * @param last An input iterator.
+ *
+ * Create a %multiset consisting of copies of the elements from
+ * [first,last). This is linear in N if the range is already sorted,
+ * and NlogN otherwise (where N is distance(first,last)).
+ */
+ template <class _InputIterator>
+ multiset(_InputIterator __first, _InputIterator __last)
+ : _M_t(_Compare(), allocator_type())
+ { _M_t.insert_equal(__first, __last); }
+
+ /**
+ * @brief Builds a %multiset from a range.
+ * @param first An input iterator.
+ * @param last An input iterator.
+ * @param comp A comparison functor.
+ * @param a An allocator object.
+ *
+ * Create a %multiset consisting of copies of the elements from
+ * [first,last). This is linear in N if the range is already sorted,
+ * and NlogN otherwise (where N is distance(first,last)).
+ */
+ template <class _InputIterator>
+ multiset(_InputIterator __first, _InputIterator __last,
+ const _Compare& __comp,
+ const allocator_type& __a = allocator_type())
+ : _M_t(__comp, __a)
+ { _M_t.insert_equal(__first, __last); }
+
+ /**
+ * @brief %Multiset copy constructor.
+ * @param x A %multiset of identical element and allocator types.
+ *
+ * The newly-created %multiset uses a copy of the allocation object used
+ * by @a x.
+ */
+ multiset(const multiset<_Key,_Compare,_Alloc>& __x)
+ : _M_t(__x._M_t) { }
+
+ /**
+ * @brief %Multiset assignment operator.
+ * @param x A %multiset of identical element and allocator types.
+ *
+ * All the elements of @a x are copied, but unlike the copy constructor,
+ * the allocator object is not copied.
+ */
+ multiset<_Key,_Compare,_Alloc>&
+ operator=(const multiset<_Key,_Compare,_Alloc>& __x)
+ {
+ _M_t = __x._M_t;
+ return *this;
+ }
+
+ // accessors:
+
+ /// Returns the comparison object.
+ key_compare
+ key_comp() const
+ { return _M_t.key_comp(); }
+ /// Returns the comparison object.
+ value_compare
+ value_comp() const
+ { return _M_t.key_comp(); }
+ /// Returns the memory allocation object.
+ allocator_type
+ get_allocator() const
+ { return _M_t.get_allocator(); }
+
+ /**
+ * Returns a read/write iterator that points to the first element in the
+ * %multiset. Iteration is done in ascending order according to the
+ * keys.
+ */
+ iterator
+ begin() const
+ { return _M_t.begin(); }
+
+ /**
+ * Returns a read/write iterator that points one past the last element in
+ * the %multiset. Iteration is done in ascending order according to the
+ * keys.
+ */
+ iterator
+ end() const
+ { return _M_t.end(); }
+
+ /**
+ * Returns a read/write reverse iterator that points to the last element
+ * in the %multiset. Iteration is done in descending order according to
+ * the keys.
+ */
+ reverse_iterator
+ rbegin() const
+ { return _M_t.rbegin(); }
+
+ /**
+ * Returns a read/write reverse iterator that points to the last element
+ * in the %multiset. Iteration is done in descending order according to
+ * the keys.
+ */
+ reverse_iterator
+ rend() const
+ { return _M_t.rend(); }
+
+ /// Returns true if the %set is empty.
+ bool
+ empty() const
+ { return _M_t.empty(); }
+
+ /// Returns the size of the %set.
+ size_type
+ size() const
+ { return _M_t.size(); }
+
+ /// Returns the maximum size of the %set.
+ size_type
+ max_size() const
+ { return _M_t.max_size(); }
+
+ /**
+ * @brief Swaps data with another %multiset.
+ * @param x A %multiset of the same element and allocator types.
+ *
+ * This exchanges the elements between two multisets in constant time.
+ * (It is only swapping a pointer, an integer, and an instance of the @c
+ * Compare type (which itself is often stateless and empty), so it should
+ * be quite fast.)
+ * Note that the global std::swap() function is specialized such that
+ * std::swap(s1,s2) will feed to this function.
+ */
+ void
+ swap(multiset<_Key,_Compare,_Alloc>& __x)
+ { _M_t.swap(__x._M_t); }
+
+ // insert/erase
+ /**
+ * @brief Inserts an element into the %multiset.
+ * @param x Element to be inserted.
+ * @return An iterator that points to the inserted element.
+ *
+ * This function inserts an element into the %multiset. Contrary
+ * to a std::set the %multiset does not rely on unique keys and thus
+ * multiple copies of the same element can be inserted.
+ *
+ * Insertion requires logarithmic time.
+ */
+ iterator
+ insert(const value_type& __x)
+ { return _M_t.insert_equal(__x); }
+
+ /**
+ * @brief Inserts an element into the %multiset.
+ * @param position An iterator that serves as a hint as to where the
+ * element should be inserted.
+ * @param x Element to be inserted.
+ * @return An iterator that points to the inserted element.
+ *
+ * This function inserts an element into the %multiset. Contrary
+ * to a std::set the %multiset does not rely on unique keys and thus
+ * multiple copies of the same element can be inserted.
+ *
+ * Note that the first parameter is only a hint and can potentially
+ * improve the performance of the insertion process. A bad hint would
+ * cause no gains in efficiency.
+ *
+ * See http://gcc.gnu.org/onlinedocs/libstdc++/23_containers/howto.html#4
+ * for more on "hinting".
+ *
+ * Insertion requires logarithmic time (if the hint is not taken).
+ */
+ iterator
+ insert(iterator __position, const value_type& __x)
+ {
+ typedef typename _Rep_type::iterator _Rep_iterator;
+ return _M_t.insert_equal((_Rep_iterator&)__position, __x);
+ }
+
+ /**
+ * @brief A template function that attemps to insert a range of elements.
+ * @param first Iterator pointing to the start of the range to be
+ * inserted.
+ * @param last Iterator pointing to the end of the range.
+ *
+ * Complexity similar to that of the range constructor.
+ */
+ template <class _InputIterator>
+ void
+ insert(_InputIterator __first, _InputIterator __last)
+ { _M_t.insert_equal(__first, __last); }
+
+ /**
+ * @brief Erases an element from a %multiset.
+ * @param position An iterator pointing to the element to be erased.
+ *
+ * This function erases an element, pointed to by the given iterator,
+ * from a %multiset. Note that this function only erases the element,
+ * and that if the element is itself a pointer, the pointed-to memory is
+ * not touched in any way. Managing the pointer is the user's
+ * responsibilty.
+ */
+ void
+ erase(iterator __position)
+ {
+ typedef typename _Rep_type::iterator _Rep_iterator;
+ _M_t.erase((_Rep_iterator&)__position);
+ }
+
+ /**
+ * @brief Erases elements according to the provided key.
+ * @param x Key of element to be erased.
+ * @return The number of elements erased.
+ *
+ * This function erases all elements located by the given key from a
+ * %multiset.
+ * Note that this function only erases the element, and that if
+ * the element is itself a pointer, the pointed-to memory is not touched
+ * in any way. Managing the pointer is the user's responsibilty.
+ */
+ size_type
+ erase(const key_type& __x)
+ { return _M_t.erase(__x); }
+
+ /**
+ * @brief Erases a [first,last) range of elements from a %multiset.
+ * @param first Iterator pointing to the start of the range to be
+ * erased.
+ * @param last Iterator pointing to the end of the range to be erased.
+ *
+ * This function erases a sequence of elements from a %multiset.
+ * Note that this function only erases the elements, and that if
+ * the elements themselves are pointers, the pointed-to memory is not
+ * touched in any way. Managing the pointer is the user's responsibilty.
+ */
+ void
+ erase(iterator __first, iterator __last)
+ {
+ typedef typename _Rep_type::iterator _Rep_iterator;
+ _M_t.erase((_Rep_iterator&)__first, (_Rep_iterator&)__last);
+ }
+
+ /**
+ * Erases all elements in a %multiset. Note that this function only
+ * erases the elements, and that if the elements themselves are pointers,
+ * the pointed-to memory is not touched in any way. Managing the pointer
+ * is the user's responsibilty.
+ */
+ void
+ clear()
+ { _M_t.clear(); }
+
+ // multiset operations:
+
+ /**
+ * @brief Finds the number of elements with given key.
+ * @param x Key of elements to be located.
+ * @return Number of elements with specified key.
+ */
+ size_type
+ count(const key_type& __x) const
+ { return _M_t.count(__x); }
+
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // 214. set::find() missing const overload
+ //@{
+ /**
+ * @brief Tries to locate an element in a %set.
+ * @param x Element to be located.
+ * @return Iterator pointing to sought-after element, or end() if not
+ * found.
+ *
+ * This function takes a key and tries to locate the element with which
+ * the key matches. If successful the function returns an iterator
+ * pointing to the sought after element. If unsuccessful it returns the
+ * past-the-end ( @c end() ) iterator.
+ */
+ iterator
+ find(const key_type& __x)
+ { return _M_t.find(__x); }
+
+ const_iterator
+ find(const key_type& __x) const
+ { return _M_t.find(__x); }
+ //@}
+
+ //@{
+ /**
+ * @brief Finds the beginning of a subsequence matching given key.
+ * @param x Key to be located.
+ * @return Iterator pointing to first element equal to or greater
+ * than key, or end().
+ *
+ * This function returns the first element of a subsequence of elements
+ * that matches the given key. If unsuccessful it returns an iterator
+ * pointing to the first element that has a greater value than given key
+ * or end() if no such element exists.
+ */
+ iterator
+ lower_bound(const key_type& __x)
+ { return _M_t.lower_bound(__x); }
+
+ const_iterator
+ lower_bound(const key_type& __x) const
+ { return _M_t.lower_bound(__x); }
+ //@}
+
+ //@{
+ /**
+ * @brief Finds the end of a subsequence matching given key.
+ * @param x Key to be located.
+ * @return Iterator pointing to the first element
+ * greater than key, or end().
+ */
+ iterator
+ upper_bound(const key_type& __x)
+ { return _M_t.upper_bound(__x); }
+
+ const_iterator
+ upper_bound(const key_type& __x) const
+ { return _M_t.upper_bound(__x); }
+ //@}
+
+ //@{
+ /**
+ * @brief Finds a subsequence matching given key.
+ * @param x Key to be located.
+ * @return Pair of iterators that possibly points to the subsequence
+ * matching given key.
+ *
+ * This function is equivalent to
+ * @code
+ * std::make_pair(c.lower_bound(val),
+ * c.upper_bound(val))
+ * @endcode
+ * (but is faster than making the calls separately).
+ *
+ * This function probably only makes sense for multisets.
+ */
+ pair<iterator,iterator>
+ equal_range(const key_type& __x)
+ { return _M_t.equal_range(__x); }
+
+ pair<const_iterator,const_iterator>
+ equal_range(const key_type& __x) const
+ { return _M_t.equal_range(__x); }
+
+ template <class _K1, class _C1, class _A1>
+ friend bool
+ operator== (const multiset<_K1,_C1,_A1>&,
+ const multiset<_K1,_C1,_A1>&);
+
+ template <class _K1, class _C1, class _A1>
+ friend bool
+ operator< (const multiset<_K1,_C1,_A1>&,
+ const multiset<_K1,_C1,_A1>&);
+ };
+
+ /**
+ * @brief Multiset equality comparison.
+ * @param x A %multiset.
+ * @param y A %multiset of the same type as @a x.
+ * @return True iff the size and elements of the multisets are equal.
+ *
+ * This is an equivalence relation. It is linear in the size of the
+ * multisets.
+ * Multisets are considered equivalent if their sizes are equal, and if
+ * corresponding elements compare equal.
+ */
+ template <class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator==(const multiset<_Key,_Compare,_Alloc>& __x,
+ const multiset<_Key,_Compare,_Alloc>& __y)
+ { return __x._M_t == __y._M_t; }
+
+ /**
+ * @brief Multiset ordering relation.
+ * @param x A %multiset.
+ * @param y A %multiset of the same type as @a x.
+ * @return True iff @a x is lexicographically less than @a y.
+ *
+ * This is a total ordering relation. It is linear in the size of the
+ * maps. The elements must be comparable with @c <.
+ *
+ * See std::lexicographical_compare() for how the determination is made.
+ */
+ template <class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator<(const multiset<_Key,_Compare,_Alloc>& __x,
+ const multiset<_Key,_Compare,_Alloc>& __y)
+ { return __x._M_t < __y._M_t; }
+
+ /// Returns !(x == y).
+ template <class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator!=(const multiset<_Key,_Compare,_Alloc>& __x,
+ const multiset<_Key,_Compare,_Alloc>& __y)
+ { return !(__x == __y); }
+
+ /// Returns y < x.
+ template <class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator>(const multiset<_Key,_Compare,_Alloc>& __x,
+ const multiset<_Key,_Compare,_Alloc>& __y)
+ { return __y < __x; }
+
+ /// Returns !(y < x)
+ template <class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator<=(const multiset<_Key,_Compare,_Alloc>& __x,
+ const multiset<_Key,_Compare,_Alloc>& __y)
+ { return !(__y < __x); }
+
+ /// Returns !(x < y)
+ template <class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator>=(const multiset<_Key,_Compare,_Alloc>& __x,
+ const multiset<_Key,_Compare,_Alloc>& __y)
+ { return !(__x < __y); }
+
+ /// See std::multiset::swap().
+ template <class _Key, class _Compare, class _Alloc>
+ inline void
+ swap(multiset<_Key,_Compare,_Alloc>& __x,
+ multiset<_Key,_Compare,_Alloc>& __y)
+ { __x.swap(__y); }
+
+} // namespace std
#endif /* _MULTISET_H */
diff --git a/libstdc++-v3/include/bits/stl_numeric.h b/libstdc++-v3/include/bits/stl_numeric.h
index 7b901a54315..58762a40a7d 100644
--- a/libstdc++-v3/include/bits/stl_numeric.h
+++ b/libstdc++-v3/include/bits/stl_numeric.h
@@ -1,6 +1,6 @@
// Numeric functions implementation -*- C++ -*-
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -66,6 +66,17 @@
namespace std
{
+ /**
+ * @brief Accumulate values in a range.
+ *
+ * Accumulates the values in the range [first,last) using operator+(). The
+ * initial value is @a init. The values are processed in order.
+ *
+ * @param first Start of range.
+ * @param last End of range.
+ * @param init Starting value to add other values to.
+ * @return The final sum.
+ */
template<typename _InputIterator, typename _Tp>
_Tp
accumulate(_InputIterator __first, _InputIterator __last, _Tp __init)
@@ -79,6 +90,19 @@ namespace std
return __init;
}
+ /**
+ * @brief Accumulate values in a range with operation.
+ *
+ * Accumulates the values in the range [first,last) using the function
+ * object @a binary_op. The initial value is @a init. The values are
+ * processed in order.
+ *
+ * @param first Start of range.
+ * @param last End of range.
+ * @param init Starting value to add other values to.
+ * @param binary_op Function object to accumulate with.
+ * @return The final sum.
+ */
template<typename _InputIterator, typename _Tp, typename _BinaryOperation>
_Tp
accumulate(_InputIterator __first, _InputIterator __last, _Tp __init,
@@ -93,6 +117,20 @@ namespace std
return __init;
}
+ /**
+ * @brief Compute inner product of two ranges.
+ *
+ * Starting with an initial value of @a init, multiplies successive
+ * elements from the two ranges and adds each product into the accumulated
+ * value using operator+(). The values in the ranges are processed in
+ * order.
+ *
+ * @param first1 Start of range 1.
+ * @param last1 End of range 1.
+ * @param first2 Start of range 2.
+ * @param init Starting value to add other values to.
+ * @return The final inner product.
+ */
template<typename _InputIterator1, typename _InputIterator2, typename _Tp>
_Tp
inner_product(_InputIterator1 __first1, _InputIterator1 __last1,
@@ -108,11 +146,27 @@ namespace std
return __init;
}
+ /**
+ * @brief Compute inner product of two ranges.
+ *
+ * Starting with an initial value of @a init, applies @a binary_op2 to
+ * successive elements from the two ranges and accumulates each result into
+ * the accumulated value using @a binary_op1. The values in the ranges are
+ * processed in order.
+ *
+ * @param first1 Start of range 1.
+ * @param last1 End of range 1.
+ * @param first2 Start of range 2.
+ * @param init Starting value to add other values to.
+ * @param binary_op1 Function object to accumulate with.
+ * @param binary_op2 Function object to apply to pairs of input values.
+ * @return The final inner product.
+ */
template<typename _InputIterator1, typename _InputIterator2, typename _Tp,
typename _BinaryOperation1, typename _BinaryOperation2>
_Tp
inner_product(_InputIterator1 __first1, _InputIterator1 __last1,
- _InputIterator2 __first2, _Tp __init,
+ _InputIterator2 __first2, _Tp __init,
_BinaryOperation1 __binary_op1,
_BinaryOperation2 __binary_op2)
{
@@ -126,8 +180,22 @@ namespace std
return __init;
}
+ /**
+ * @brief Return list of partial sums
+ *
+ * Accumulates the values in the range [first,last) using operator+().
+ * As each successive input value is added into the total, that partial sum
+ * is written to @a result. Therefore, the first value in result is the
+ * first value of the input, the second value in result is the sum of the
+ * first and second input values, and so on.
+ *
+ * @param first Start of input range.
+ * @param last End of input range.
+ * @param result Output to write sums to.
+ * @return Iterator pointing just beyond the values written to result.
+ */
template<typename _InputIterator, typename _OutputIterator>
- _OutputIterator
+ _OutputIterator
partial_sum(_InputIterator __first, _InputIterator __last,
_OutputIterator __result)
{
@@ -148,8 +216,22 @@ namespace std
return ++__result;
}
+ /**
+ * @brief Return list of partial sums
+ *
+ * Accumulates the values in the range [first,last) using operator+().
+ * As each successive input value is added into the total, that partial sum
+ * is written to @a result. Therefore, the first value in result is the
+ * first value of the input, the second value in result is the sum of the
+ * first and second input values, and so on.
+ *
+ * @param first Start of input range.
+ * @param last End of input range.
+ * @param result Output to write sums to.
+ * @return Iterator pointing just beyond the values written to result.
+ */
template<typename _InputIterator, typename _OutputIterator, typename _BinaryOperation>
- _OutputIterator
+ _OutputIterator
partial_sum(_InputIterator __first, _InputIterator __last,
_OutputIterator __result, _BinaryOperation __binary_op)
{
@@ -170,6 +252,17 @@ namespace std
return ++__result;
}
+ /**
+ * @brief Return differences between adjacent values.
+ *
+ * Computes the difference between adjacent values in the range
+ * [first,last) using operator-() and writes the result to @a result.
+ *
+ * @param first Start of input range.
+ * @param last End of input range.
+ * @param result Output to write sums to.
+ * @return Iterator pointing just beyond the values written to result.
+ */
template<typename _InputIterator, typename _OutputIterator>
_OutputIterator
adjacent_difference(_InputIterator __first,
@@ -193,8 +286,20 @@ namespace std
return ++__result;
}
+ /**
+ * @brief Return differences between adjacent values.
+ *
+ * Computes the difference between adjacent values in the range
+ * [first,last) using the function object @a binary_op and writes the
+ * result to @a result.
+ *
+ * @param first Start of input range.
+ * @param last End of input range.
+ * @param result Output to write sums to.
+ * @return Iterator pointing just beyond the values written to result.
+ */
template<typename _InputIterator, typename _OutputIterator, typename _BinaryOperation>
- _OutputIterator
+ _OutputIterator
adjacent_difference(_InputIterator __first, _InputIterator __last,
_OutputIterator __result, _BinaryOperation __binary_op)
{
diff --git a/libstdc++-v3/include/bits/stl_pair.h b/libstdc++-v3/include/bits/stl_pair.h
index 6b08b93d584..0bbaa24ad6e 100644
--- a/libstdc++-v3/include/bits/stl_pair.h
+++ b/libstdc++-v3/include/bits/stl_pair.h
@@ -1,6 +1,6 @@
// Pair implementation -*- C++ -*-
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -64,84 +64,87 @@
namespace std
{
-/// pair holds two objects of arbitrary type.
-template <class _T1, class _T2>
-struct pair {
- typedef _T1 first_type; ///< @c first_type is the first bound type
- typedef _T2 second_type; ///< @c second_type is the second bound type
+ /// pair holds two objects of arbitrary type.
+ template <class _T1, class _T2>
+ struct pair
+ {
+ typedef _T1 first_type; ///< @c first_type is the first bound type
+ typedef _T2 second_type; ///< @c second_type is the second bound type
+
+ _T1 first; ///< @c first is a copy of the first object
+ _T2 second; ///< @c second is a copy of the second object
+
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // 265. std::pair::pair() effects overly restrictive
+ /** The default constructor creates @c first and @c second using their
+ * respective default constructors. */
+ pair()
+ : first(), second() {}
+
+ /** Two objects may be passed to a @c pair constructor to be copied. */
+ pair(const _T1& __a, const _T2& __b)
+ : first(__a), second(__b) {}
+
+ /** There is also a templated copy ctor for the @c pair class itself. */
+ template <class _U1, class _U2>
+ pair(const pair<_U1, _U2>& __p)
+ : first(__p.first), second(__p.second) {}
+ };
+
+ /// Two pairs of the same type are equal iff their members are equal.
+ template <class _T1, class _T2>
+ inline bool
+ operator==(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
+ { return __x.first == __y.first && __x.second == __y.second; }
+
+ /// <http://gcc.gnu.org/onlinedocs/libstdc++/20_util/howto.html#pairlt>
+ template <class _T1, class _T2>
+ inline bool
+ operator<(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
+ { return __x.first < __y.first
+ || (!(__y.first < __x.first) && __x.second < __y.second); }
+
+ /// Uses @c operator== to find the result.
+ template <class _T1, class _T2>
+ inline bool
+ operator!=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
+ { return !(__x == __y); }
+
+ /// Uses @c operator< to find the result.
+ template <class _T1, class _T2>
+ inline bool
+ operator>(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
+ { return __y < __x; }
+
+ /// Uses @c operator< to find the result.
+ template <class _T1, class _T2>
+ inline bool
+ operator<=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
+ { return !(__y < __x); }
+
+ /// Uses @c operator< to find the result.
+ template <class _T1, class _T2>
+ inline bool
+ operator>=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
+ { return !(__x < __y); }
+
+ /**
+ * @brief A convenience wrapper for creating a pair from two objects.
+ * @param x The first object.
+ * @param y The second object.
+ * @return A newly-constructed pair<> object of the appropriate type.
+ *
+ * The standard requires that the objects be passed by reference-to-const,
+ * but LWG issue #181 says they should be passed by const value. We follow
+ * the LWG by default.
+ */
+ template <class _T1, class _T2>
- _T1 first; ///< @c first is a copy of the first object
- _T2 second; ///< @c second is a copy of the second object
// _GLIBCXX_RESOLVE_LIB_DEFECTS
- // 265. std::pair::pair() effects overly restrictive
- /** The default constructor creates @c first and @c second using their
- * respective default constructors. */
- pair() : first(), second() {}
-
- /** Two objects may be passed to a @c pair constructor to be copied. */
- pair(const _T1& __a, const _T2& __b) : first(__a), second(__b) {}
-
- /** There is also a templated copy ctor for the @c pair class itself. */
- template <class _U1, class _U2>
- pair(const pair<_U1, _U2>& __p) : first(__p.first), second(__p.second) {}
-};
-
-/// Two pairs of the same type are equal iff their members are equal.
-template <class _T1, class _T2>
-inline bool operator==(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
-{
- return __x.first == __y.first && __x.second == __y.second;
-}
-
-/// <http://gcc.gnu.org/onlinedocs/libstdc++/20_util/howto.html#pairlt>
-template <class _T1, class _T2>
-inline bool operator<(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
-{
- return __x.first < __y.first ||
- (!(__y.first < __x.first) && __x.second < __y.second);
-}
-
-/// Uses @c operator== to find the result.
-template <class _T1, class _T2>
-inline bool operator!=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) {
- return !(__x == __y);
-}
-
-/// Uses @c operator< to find the result.
-template <class _T1, class _T2>
-inline bool operator>(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) {
- return __y < __x;
-}
-
-/// Uses @c operator< to find the result.
-template <class _T1, class _T2>
-inline bool operator<=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) {
- return !(__y < __x);
-}
-
-/// Uses @c operator< to find the result.
-template <class _T1, class _T2>
-inline bool operator>=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) {
- return !(__x < __y);
-}
-
-/**
- * @brief A convenience wrapper for creating a pair from two objects.
- * @param x The first object.
- * @param y The second object.
- * @return A newly-constructed pair<> object of the appropriate type.
- *
- * The standard requires that the objects be passed by reference-to-const,
- * but LWG issue #181 says they should be passed by const value. We follow
- * the LWG by default.
-*/
-template <class _T1, class _T2>
-// _GLIBCXX_RESOLVE_LIB_DEFECTS
-// 181. make_pair() unintended behavior
-inline pair<_T1, _T2> make_pair(_T1 __x, _T2 __y)
-{
- return pair<_T1, _T2>(__x, __y);
-}
+ // 181. make_pair() unintended behavior
+ inline pair<_T1, _T2>
+ make_pair(_T1 __x, _T2 __y)
+ { return pair<_T1, _T2>(__x, __y); }
} // namespace std
diff --git a/libstdc++-v3/include/bits/stl_queue.h b/libstdc++-v3/include/bits/stl_queue.h
index 441fc55ef4b..3583547dbb4 100644
--- a/libstdc++-v3/include/bits/stl_queue.h
+++ b/libstdc++-v3/include/bits/stl_queue.h
@@ -1,6 +1,6 @@
// Queue implementation -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -69,15 +69,15 @@ namespace std
// Forward declarations of operators < and ==, needed for friend declaration.
template<typename _Tp, typename _Sequence = deque<_Tp> >
class queue;
-
+
template<typename _Tp, typename _Seq>
- inline bool
+ inline bool
operator==(const queue<_Tp,_Seq>&, const queue<_Tp,_Seq>&);
-
+
template<typename _Tp, typename _Seq>
- inline bool
+ inline bool
operator<(const queue<_Tp,_Seq>&, const queue<_Tp,_Seq>&);
-
+
/**
* @brief A standard container giving FIFO behavior.
*
@@ -111,22 +111,22 @@ namespace std
__glibcxx_class_requires(_Sequence, _FrontInsertionSequenceConcept)
__glibcxx_class_requires(_Sequence, _BackInsertionSequenceConcept)
__glibcxx_class_requires2(_Tp, _Sequence_value_type, _SameTypeConcept)
-
- template<typename _Tp1, typename _Seq1>
- friend bool
- operator==(const queue<_Tp1, _Seq1>&, const queue<_Tp1, _Seq1>&);
template<typename _Tp1, typename _Seq1>
- friend bool
+ friend bool
+ operator==(const queue<_Tp1, _Seq1>&, const queue<_Tp1, _Seq1>&);
+
+ template<typename _Tp1, typename _Seq1>
+ friend bool
operator<(const queue<_Tp1, _Seq1>&, const queue<_Tp1, _Seq1>&);
-
+
public:
typedef typename _Sequence::value_type value_type;
typedef typename _Sequence::reference reference;
typedef typename _Sequence::const_reference const_reference;
typedef typename _Sequence::size_type size_type;
typedef _Sequence container_type;
-
+
protected:
/**
* 'c' is the underlying container. Maintainers wondering why
@@ -137,68 +137,70 @@ namespace std
* containers allow for derivation. Odd.)
*/
_Sequence c;
-
+
public:
/**
* @brief Default constructor creates no elements.
*/
explicit
queue(const _Sequence& __c = _Sequence()) : c(__c) {}
-
+
/**
* Returns true if the %queue is empty.
*/
bool
- empty() const { return c.empty(); }
-
+ empty() const
+ { return c.empty(); }
+
/** Returns the number of elements in the %queue. */
size_type
- size() const { return c.size(); }
-
+ size() const
+ { return c.size(); }
+
/**
* Returns a read/write reference to the data at the first
* element of the %queue.
*/
reference
- front()
- {
+ front()
+ {
__glibcxx_requires_nonempty();
- return c.front();
+ return c.front();
}
-
+
/**
* Returns a read-only (constant) reference to the data at the first
* element of the %queue.
*/
const_reference
- front() const
- {
+ front() const
+ {
__glibcxx_requires_nonempty();
- return c.front();
+ return c.front();
}
-
+
/**
* Returns a read/write reference to the data at the last
* element of the %queue.
*/
reference
- back()
+ back()
{
__glibcxx_requires_nonempty();
- return c.back();
+ return c.back();
}
-
+
/**
* Returns a read-only (constant) reference to the data at the last
* element of the %queue.
*/
const_reference
- back() const
+ back() const
{
__glibcxx_requires_nonempty();
- return c.back();
+ return c.back();
}
-
+
/**
* @brief Add data to the end of the %queue.
* @param x Data to be added.
@@ -209,8 +211,9 @@ namespace std
* underlying sequence.
*/
void
- push(const value_type& __x) { c.push_back(__x); }
-
+ push(const value_type& __x)
+ { c.push_back(__x); }
+
/**
* @brief Removes first element.
*
@@ -223,14 +226,14 @@ namespace std
* called.
*/
void
- pop()
- {
+ pop()
+ {
__glibcxx_requires_nonempty();
- c.pop_front();
+ c.pop_front();
}
};
-
-
+
+
/**
* @brief Queue equality comparison.
* @param x A %queue.
@@ -243,11 +246,11 @@ namespace std
* if their sequences compare equal.
*/
template<typename _Tp, typename _Sequence>
- inline bool
- operator==(const queue<_Tp,_Sequence>& __x,
+ inline bool
+ operator==(const queue<_Tp,_Sequence>& __x,
const queue<_Tp,_Sequence>& __y)
{ return __x.c == __y.c; }
-
+
/**
* @brief Queue ordering relation.
* @param x A %queue.
@@ -265,35 +268,34 @@ namespace std
inline bool
operator<(const queue<_Tp,_Sequence>& __x, const queue<_Tp,_Sequence>& __y)
{ return __x.c < __y.c; }
-
+
/// Based on operator==
template<typename _Tp, typename _Sequence>
inline bool
- operator!=(const queue<_Tp,_Sequence>& __x,
+ operator!=(const queue<_Tp,_Sequence>& __x,
const queue<_Tp,_Sequence>& __y)
{ return !(__x == __y); }
-
+
/// Based on operator<
template<typename _Tp, typename _Sequence>
- inline bool
+ inline bool
operator>(const queue<_Tp,_Sequence>& __x, const queue<_Tp,_Sequence>& __y)
{ return __y < __x; }
-
+
/// Based on operator<
template<typename _Tp, typename _Sequence>
- inline bool
- operator<=(const queue<_Tp,_Sequence>& __x,
+ inline bool
+ operator<=(const queue<_Tp,_Sequence>& __x,
const queue<_Tp,_Sequence>& __y)
{ return !(__y < __x); }
-
+
/// Based on operator<
template<typename _Tp, typename _Sequence>
- inline bool
- operator>=(const queue<_Tp,_Sequence>& __x,
+ inline bool
+ operator>=(const queue<_Tp,_Sequence>& __x,
const queue<_Tp,_Sequence>& __y)
{ return !(__x < __y); }
-
-
+
/**
* @brief A standard container automatically sorting its contents.
*
@@ -333,7 +335,7 @@ namespace std
* the elements for you. (How could it know to do so?)
*/
template<typename _Tp, typename _Sequence = vector<_Tp>,
- typename _Compare = less<typename _Sequence::value_type> >
+ typename _Compare = less<typename _Sequence::value_type> >
class priority_queue
{
// concept requirements
@@ -343,36 +345,36 @@ namespace std
__glibcxx_class_requires(_Sequence, _RandomAccessContainerConcept)
__glibcxx_class_requires2(_Tp, _Sequence_value_type, _SameTypeConcept)
__glibcxx_class_requires4(_Compare, bool, _Tp,_Tp,_BinaryFunctionConcept)
-
- public:
+
+ public:
typedef typename _Sequence::value_type value_type;
typedef typename _Sequence::reference reference;
typedef typename _Sequence::const_reference const_reference;
typedef typename _Sequence::size_type size_type;
typedef _Sequence container_type;
-
+
protected:
// See queue::c for notes on these names.
_Sequence c;
_Compare comp;
-
+
public:
/**
* @brief Default constructor creates no elements.
*/
explicit
- priority_queue(const _Compare& __x = _Compare(),
- const _Sequence& __s = _Sequence())
- : c(__s), comp(__x)
+ priority_queue(const _Compare& __x = _Compare(),
+ const _Sequence& __s = _Sequence())
+ : c(__s), comp(__x)
{ std::make_heap(c.begin(), c.end(), comp); }
-
+
/**
* @brief Builds a %queue from a range.
* @param first An input iterator.
* @param last An input iterator.
* @param x A comparison functor describing a strict weak ordering.
* @param s An initial sequence with which to start.
- *
+ *
* Begins by copying @a s, inserting a copy of the elements
* from @a [first,last) into the copy of @a s, then ordering
* the copy according to @a x.
@@ -386,33 +388,33 @@ namespace std
const _Compare& __x = _Compare(),
const _Sequence& __s = _Sequence())
: c(__s), comp(__x)
- {
+ {
__glibcxx_requires_valid_range(__first, __last);
c.insert(c.end(), __first, __last);
std::make_heap(c.begin(), c.end(), comp);
}
-
+
/**
* Returns true if the %queue is empty.
*/
bool
empty() const { return c.empty(); }
-
+
/** Returns the number of elements in the %queue. */
size_type
size() const { return c.size(); }
-
+
/**
* Returns a read-only (constant) reference to the data at the first
* element of the %queue.
*/
const_reference
- top() const
+ top() const
{
__glibcxx_requires_nonempty();
- return c.front();
+ return c.front();
}
-
+
/**
* @brief Add data to the %queue.
* @param x Data to be added.
@@ -421,21 +423,21 @@ namespace std
* The time complexity of the operation depends on the underlying
* sequence.
*/
- void
- push(const value_type& __x)
+ void
+ push(const value_type& __x)
{
- try
+ try
{
- c.push_back(__x);
+ c.push_back(__x);
std::push_heap(c.begin(), c.end(), comp);
}
catch(...)
{
c.clear();
- __throw_exception_again;
+ __throw_exception_again;
}
}
-
+
/**
* @brief Removes first element.
*
@@ -447,11 +449,11 @@ namespace std
* data is needed, it should be retrieved before pop() is
* called.
*/
- void
- pop()
+ void
+ pop()
{
__glibcxx_requires_nonempty();
- try
+ try
{
std::pop_heap(c.begin(), c.end(), comp);
c.pop_back();
@@ -459,11 +461,11 @@ namespace std
catch(...)
{
c.clear();
- __throw_exception_again;
+ __throw_exception_again;
}
}
};
-
+
// No equality/comparison operators are provided for priority_queue.
} // namespace std
diff --git a/libstdc++-v3/include/bits/stl_raw_storage_iter.h b/libstdc++-v3/include/bits/stl_raw_storage_iter.h
index 3460205e7a8..732142e1e6b 100644
--- a/libstdc++-v3/include/bits/stl_raw_storage_iter.h
+++ b/libstdc++-v3/include/bits/stl_raw_storage_iter.h
@@ -1,6 +1,6 @@
// -*- C++ -*-
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -68,35 +68,36 @@ namespace std
* uninitialized memory.
*/
template <class _ForwardIterator, class _Tp>
- class raw_storage_iterator
+ class raw_storage_iterator
: public iterator<output_iterator_tag, void, void, void, void>
{
protected:
_ForwardIterator _M_iter;
public:
- explicit
- raw_storage_iterator(_ForwardIterator __x) : _M_iter(__x) {}
+ explicit
+ raw_storage_iterator(_ForwardIterator __x)
+ : _M_iter(__x) {}
- raw_storage_iterator&
+ raw_storage_iterator&
operator*() { return *this; }
- raw_storage_iterator&
- operator=(const _Tp& __element)
+ raw_storage_iterator&
+ operator=(const _Tp& __element)
{
std::_Construct(&*_M_iter, __element);
return *this;
- }
+ }
- raw_storage_iterator<_ForwardIterator, _Tp>&
- operator++()
+ raw_storage_iterator<_ForwardIterator, _Tp>&
+ operator++()
{
++_M_iter;
return *this;
}
- raw_storage_iterator<_ForwardIterator, _Tp>
- operator++(int)
+ raw_storage_iterator<_ForwardIterator, _Tp>
+ operator++(int)
{
raw_storage_iterator<_ForwardIterator, _Tp> __tmp = *this;
++_M_iter;
diff --git a/libstdc++-v3/include/bits/stl_relops.h b/libstdc++-v3/include/bits/stl_relops.h
index 18561ec2dc1..3e9f060f287 100644
--- a/libstdc++-v3/include/bits/stl_relops.h
+++ b/libstdc++-v3/include/bits/stl_relops.h
@@ -1,6 +1,6 @@
// std::rel_ops implementation -*- C++ -*-
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -75,61 +75,61 @@ namespace std
{
namespace rel_ops
{
- /** @namespace std::rel_ops
- * @brief The generated relational operators are sequestered here.
- */
+ /** @namespace std::rel_ops
+ * @brief The generated relational operators are sequestered here.
+ */
-/**
- * @brief Defines @c != for arbitrary types, in terms of @c ==.
- * @param x A thing.
- * @param y Another thing.
- * @return x != y
- *
- * This function uses @c == to determine its result.
-*/
-template <class _Tp>
-inline bool operator!=(const _Tp& __x, const _Tp& __y) {
- return !(__x == __y);
-}
+ /**
+ * @brief Defines @c != for arbitrary types, in terms of @c ==.
+ * @param x A thing.
+ * @param y Another thing.
+ * @return x != y
+ *
+ * This function uses @c == to determine its result.
+ */
+ template <class _Tp>
+ inline bool
+ operator!=(const _Tp& __x, const _Tp& __y)
+ { return !(__x == __y); }
-/**
- * @brief Defines @c > for arbitrary types, in terms of @c <.
- * @param x A thing.
- * @param y Another thing.
- * @return x > y
- *
- * This function uses @c < to determine its result.
-*/
-template <class _Tp>
-inline bool operator>(const _Tp& __x, const _Tp& __y) {
- return __y < __x;
-}
+ /**
+ * @brief Defines @c > for arbitrary types, in terms of @c <.
+ * @param x A thing.
+ * @param y Another thing.
+ * @return x > y
+ *
+ * This function uses @c < to determine its result.
+ */
+ template <class _Tp>
+ inline bool
+ operator>(const _Tp& __x, const _Tp& __y)
+ { return __y < __x; }
-/**
- * @brief Defines @c <= for arbitrary types, in terms of @c <.
- * @param x A thing.
- * @param y Another thing.
- * @return x <= y
- *
- * This function uses @c < to determine its result.
-*/
-template <class _Tp>
-inline bool operator<=(const _Tp& __x, const _Tp& __y) {
- return !(__y < __x);
-}
+ /**
+ * @brief Defines @c <= for arbitrary types, in terms of @c <.
+ * @param x A thing.
+ * @param y Another thing.
+ * @return x <= y
+ *
+ * This function uses @c < to determine its result.
+ */
+ template <class _Tp>
+ inline bool
+ operator<=(const _Tp& __x, const _Tp& __y)
+ { return !(__y < __x); }
-/**
- * @brief Defines @c >= for arbitrary types, in terms of @c <.
- * @param x A thing.
- * @param y Another thing.
- * @return x >= y
- *
- * This function uses @c < to determine its result.
-*/
-template <class _Tp>
-inline bool operator>=(const _Tp& __x, const _Tp& __y) {
- return !(__x < __y);
-}
+ /**
+ * @brief Defines @c >= for arbitrary types, in terms of @c <.
+ * @param x A thing.
+ * @param y Another thing.
+ * @return x >= y
+ *
+ * This function uses @c < to determine its result.
+ */
+ template <class _Tp>
+ inline bool
+ operator>=(const _Tp& __x, const _Tp& __y)
+ { return !(__x < __y); }
} // namespace rel_ops
} // namespace std
diff --git a/libstdc++-v3/include/bits/stl_set.h b/libstdc++-v3/include/bits/stl_set.h
index 285d5ee2a85..bb28bddc7af 100644
--- a/libstdc++-v3/include/bits/stl_set.h
+++ b/libstdc++-v3/include/bits/stl_set.h
@@ -1,6 +1,6 @@
// Set implementation -*- C++ -*-
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -63,195 +63,531 @@
#include <bits/concept_check.h>
-namespace __gnu_norm
+namespace _GLIBCXX_STD
{
// Forward declarations of operators < and ==, needed for friend declaration.
- template<class _Key, class _Compare = less<_Key>,
+ template<class _Key, class _Compare = less<_Key>,
class _Alloc = allocator<_Key> >
- class set;
+ class set;
template<class _Key, class _Compare, class _Alloc>
- inline bool
- operator==(const set<_Key,_Compare,_Alloc>& __x,
+ inline bool
+ operator==(const set<_Key,_Compare,_Alloc>& __x,
const set<_Key,_Compare,_Alloc>& __y);
template<class _Key, class _Compare, class _Alloc>
- inline bool
- operator<(const set<_Key,_Compare,_Alloc>& __x,
+ inline bool
+ operator<(const set<_Key,_Compare,_Alloc>& __x,
const set<_Key,_Compare,_Alloc>& __y);
+ /**
+ * @brief A standard container made up of unique keys, which can be
+ * retrieved in logarithmic time.
+ *
+ * @ingroup Containers
+ * @ingroup Assoc_containers
+ *
+ * Meets the requirements of a <a href="tables.html#65">container</a>, a
+ * <a href="tables.html#66">reversible container</a>, and an
+ * <a href="tables.html#69">associative container</a> (using unique keys).
+ *
+ * Sets support bidirectional iterators.
+ *
+ * @param Key Type of key objects.
+ * @param Compare Comparison function object type, defaults to less<Key>.
+ * @param Alloc Allocator type, defaults to allocator<Key>.
+ *
+ * @if maint
+ * The private tree data is declared exactly the same way for set and
+ * multiset; the distinction is made entirely in how the tree functions are
+ * called (*_unique versus *_equal, same as the standard).
+ * @endif
+ */
template<class _Key, class _Compare, class _Alloc>
class set
{
// concept requirements
__glibcxx_class_requires(_Key, _SGIAssignableConcept)
- __glibcxx_class_requires4(_Compare, bool, _Key, _Key, _BinaryFunctionConcept)
-
- public:
+ __glibcxx_class_requires4(_Compare, bool, _Key, _Key,
+ _BinaryFunctionConcept)
+
+ public:
// typedefs:
+ //@{
+ /// Public typedefs.
typedef _Key key_type;
typedef _Key value_type;
typedef _Compare key_compare;
typedef _Compare value_compare;
-private:
- typedef _Rb_tree<key_type, value_type,
- _Identity<value_type>, key_compare, _Alloc> _Rep_type;
- _Rep_type _M_t; // red-black tree representing set
-public:
- typedef typename _Alloc::pointer pointer;
- typedef typename _Alloc::const_pointer const_pointer;
- typedef typename _Alloc::reference reference;
- typedef typename _Alloc::const_reference const_reference;
- typedef typename _Rep_type::const_iterator iterator;
- typedef typename _Rep_type::const_iterator const_iterator;
- typedef typename _Rep_type::const_reverse_iterator reverse_iterator;
- typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
- typedef typename _Rep_type::size_type size_type;
- typedef typename _Rep_type::difference_type difference_type;
- typedef typename _Rep_type::allocator_type allocator_type;
-
- // allocation/deallocation
-
- set() : _M_t(_Compare(), allocator_type()) {}
- explicit set(const _Compare& __comp,
- const allocator_type& __a = allocator_type())
- : _M_t(__comp, __a) {}
-
- template<class _InputIterator>
- set(_InputIterator __first, _InputIterator __last)
- : _M_t(_Compare(), allocator_type())
- { _M_t.insert_unique(__first, __last); }
-
- template<class _InputIterator>
- set(_InputIterator __first, _InputIterator __last, const _Compare& __comp,
- const allocator_type& __a = allocator_type())
- : _M_t(__comp, __a) { _M_t.insert_unique(__first, __last); }
-
- set(const set<_Key,_Compare,_Alloc>& __x) : _M_t(__x._M_t) {}
- set<_Key,_Compare,_Alloc>& operator=(const set<_Key, _Compare, _Alloc>& __x)
- {
- _M_t = __x._M_t;
- return *this;
- }
-
- // accessors:
-
- key_compare key_comp() const { return _M_t.key_comp(); }
- value_compare value_comp() const { return _M_t.key_comp(); }
- allocator_type get_allocator() const { return _M_t.get_allocator(); }
-
- iterator begin() const { return _M_t.begin(); }
- iterator end() const { return _M_t.end(); }
- reverse_iterator rbegin() const { return _M_t.rbegin(); }
- reverse_iterator rend() const { return _M_t.rend(); }
- bool empty() const { return _M_t.empty(); }
- size_type size() const { return _M_t.size(); }
- size_type max_size() const { return _M_t.max_size(); }
- void swap(set<_Key,_Compare,_Alloc>& __x) { _M_t.swap(__x._M_t); }
-
- // insert/erase
- pair<iterator,bool> insert(const value_type& __x) {
- pair<typename _Rep_type::iterator, bool> __p = _M_t.insert_unique(__x);
- return pair<iterator, bool>(__p.first, __p.second);
- }
- iterator insert(iterator __position, const value_type& __x) {
- typedef typename _Rep_type::iterator _Rep_iterator;
- return _M_t.insert_unique((_Rep_iterator&)__position, __x);
- }
- template<class _InputIterator>
- void insert(_InputIterator __first, _InputIterator __last) {
- _M_t.insert_unique(__first, __last);
- }
- void erase(iterator __position) {
- typedef typename _Rep_type::iterator _Rep_iterator;
- _M_t.erase((_Rep_iterator&)__position);
- }
- size_type erase(const key_type& __x) {
- return _M_t.erase(__x);
- }
- void erase(iterator __first, iterator __last) {
- typedef typename _Rep_type::iterator _Rep_iterator;
- _M_t.erase((_Rep_iterator&)__first, (_Rep_iterator&)__last);
- }
- void clear() { _M_t.clear(); }
-
- // set operations:
-
- size_type count(const key_type& __x) const {
- return _M_t.find(__x) == _M_t.end() ? 0 : 1;
- }
-
- // _GLIBCXX_RESOLVE_LIB_DEFECTS
- // 214. set::find() missing const overload
- iterator find(const key_type& __x) { return _M_t.find(__x); }
- const_iterator find(const key_type& __x) const { return _M_t.find(__x); }
- iterator lower_bound(const key_type& __x) {
- return _M_t.lower_bound(__x);
- }
- const_iterator lower_bound(const key_type& __x) const {
- return _M_t.lower_bound(__x);
- }
- iterator upper_bound(const key_type& __x) {
- return _M_t.upper_bound(__x);
- }
- const_iterator upper_bound(const key_type& __x) const {
- return _M_t.upper_bound(__x);
- }
- pair<iterator,iterator> equal_range(const key_type& __x) {
- return _M_t.equal_range(__x);
- }
- pair<const_iterator,const_iterator> equal_range(const key_type& __x) const {
- return _M_t.equal_range(__x);
- }
-
- template<class _K1, class _C1, class _A1>
- friend bool operator== (const set<_K1,_C1,_A1>&, const set<_K1,_C1,_A1>&);
- template<class _K1, class _C1, class _A1>
- friend bool operator< (const set<_K1,_C1,_A1>&, const set<_K1,_C1,_A1>&);
-};
-
-template<class _Key, class _Compare, class _Alloc>
-inline bool operator==(const set<_Key,_Compare,_Alloc>& __x,
- const set<_Key,_Compare,_Alloc>& __y) {
- return __x._M_t == __y._M_t;
-}
-
-template<class _Key, class _Compare, class _Alloc>
-inline bool operator<(const set<_Key,_Compare,_Alloc>& __x,
- const set<_Key,_Compare,_Alloc>& __y) {
- return __x._M_t < __y._M_t;
-}
-
-template<class _Key, class _Compare, class _Alloc>
-inline bool operator!=(const set<_Key,_Compare,_Alloc>& __x,
- const set<_Key,_Compare,_Alloc>& __y) {
- return !(__x == __y);
-}
-
-template<class _Key, class _Compare, class _Alloc>
-inline bool operator>(const set<_Key,_Compare,_Alloc>& __x,
- const set<_Key,_Compare,_Alloc>& __y) {
- return __y < __x;
-}
-
-template<class _Key, class _Compare, class _Alloc>
-inline bool operator<=(const set<_Key,_Compare,_Alloc>& __x,
- const set<_Key,_Compare,_Alloc>& __y) {
- return !(__y < __x);
-}
-
-template<class _Key, class _Compare, class _Alloc>
-inline bool operator>=(const set<_Key,_Compare,_Alloc>& __x,
- const set<_Key,_Compare,_Alloc>& __y) {
- return !(__x < __y);
-}
-
-template<class _Key, class _Compare, class _Alloc>
-inline void swap(set<_Key,_Compare,_Alloc>& __x,
- set<_Key,_Compare,_Alloc>& __y) {
- __x.swap(__y);
-}
-
-} // namespace __gnu_norm
+ //@}
+
+ private:
+ typedef _Rb_tree<key_type, value_type,
+ _Identity<value_type>, key_compare, _Alloc> _Rep_type;
+ _Rep_type _M_t; // red-black tree representing set
+ public:
+ //@{
+ /// Iterator-related typedefs.
+ typedef typename _Alloc::pointer pointer;
+ typedef typename _Alloc::const_pointer const_pointer;
+ typedef typename _Alloc::reference reference;
+ typedef typename _Alloc::const_reference const_reference;
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // DR 103. set::iterator is required to be modifiable,
+ // but this allows modification of keys.
+ typedef typename _Rep_type::const_iterator iterator;
+ typedef typename _Rep_type::const_iterator const_iterator;
+ typedef typename _Rep_type::const_reverse_iterator reverse_iterator;
+ typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
+ typedef typename _Rep_type::size_type size_type;
+ typedef typename _Rep_type::difference_type difference_type;
+ typedef typename _Rep_type::allocator_type allocator_type;
+ //@}
+
+ // allocation/deallocation
+ /// Default constructor creates no elements.
+ set()
+ : _M_t(_Compare(), allocator_type()) {}
+
+ /**
+ * @brief Default constructor creates no elements.
+ *
+ * @param comp Comparator to use.
+ * @param a Allocator to use.
+ */
+ explicit set(const _Compare& __comp,
+ const allocator_type& __a = allocator_type())
+ : _M_t(__comp, __a) {}
+
+ /**
+ * @brief Builds a %set from a range.
+ * @param first An input iterator.
+ * @param last An input iterator.
+ *
+ * Create a %set consisting of copies of the elements from [first,last).
+ * This is linear in N if the range is already sorted, and NlogN
+ * otherwise (where N is distance(first,last)).
+ */
+ template<class _InputIterator>
+ set(_InputIterator __first, _InputIterator __last)
+ : _M_t(_Compare(), allocator_type())
+ { _M_t.insert_unique(__first, __last); }
+
+ /**
+ * @brief Builds a %set from a range.
+ * @param first An input iterator.
+ * @param last An input iterator.
+ * @param comp A comparison functor.
+ * @param a An allocator object.
+ *
+ * Create a %set consisting of copies of the elements from [first,last).
+ * This is linear in N if the range is already sorted, and NlogN
+ * otherwise (where N is distance(first,last)).
+ */
+ template<class _InputIterator>
+ set(_InputIterator __first, _InputIterator __last,
+ const _Compare& __comp,
+ const allocator_type& __a = allocator_type())
+ : _M_t(__comp, __a)
+ { _M_t.insert_unique(__first, __last); }
+
+ /**
+ * @brief Set copy constructor.
+ * @param x A %set of identical element and allocator types.
+ *
+ * The newly-created %set uses a copy of the allocation object used
+ * by @a x.
+ */
+ set(const set<_Key,_Compare,_Alloc>& __x)
+ : _M_t(__x._M_t) { }
+
+ /**
+ * @brief Set assignment operator.
+ * @param x A %set of identical element and allocator types.
+ *
+ * All the elements of @a x are copied, but unlike the copy constructor,
+ * the allocator object is not copied.
+ */
+ set<_Key,_Compare,_Alloc>&
+ operator=(const set<_Key, _Compare, _Alloc>& __x)
+ {
+ _M_t = __x._M_t;
+ return *this;
+ }
+
+ // accessors:
+
+ /// Returns the comparison object with which the %set was constructed.
+ key_compare
+ key_comp() const
+ { return _M_t.key_comp(); }
+ /// Returns the comparison object with which the %set was constructed.
+ value_compare
+ value_comp() const
+ { return _M_t.key_comp(); }
+ /// Returns the allocator object with which the %set was constructed.
+ allocator_type
+ get_allocator() const
+ { return _M_t.get_allocator(); }
+
+ /**
+ * Returns a read/write iterator that points to the first element in the
+ * %set. Iteration is done in ascending order according to the keys.
+ */
+ iterator
+ begin() const
+ { return _M_t.begin(); }
+
+ /**
+ * Returns a read/write iterator that points one past the last element in
+ * the %set. Iteration is done in ascending order according to the keys.
+ */
+ iterator
+ end() const
+ { return _M_t.end(); }
+
+ /**
+ * Returns a read/write reverse iterator that points to the last element
+ * in the %set. Iteration is done in descending order according to the
+ * keys.
+ */
+ reverse_iterator
+ rbegin() const
+ { return _M_t.rbegin(); }
+
+ /**
+ * Returns a read-only (constant) reverse iterator that points to the
+ * last pair in the %map. Iteration is done in descending order
+ * according to the keys.
+ */
+ reverse_iterator
+ rend() const
+ { return _M_t.rend(); }
+
+ /// Returns true if the %set is empty.
+ bool
+ empty() const
+ { return _M_t.empty(); }
+
+ /// Returns the size of the %set.
+ size_type
+ size() const
+ { return _M_t.size(); }
+
+ /// Returns the maximum size of the %set.
+ size_type
+ max_size() const
+ { return _M_t.max_size(); }
+
+ /**
+ * @brief Swaps data with another %set.
+ * @param x A %set of the same element and allocator types.
+ *
+ * This exchanges the elements between two sets in constant time.
+ * (It is only swapping a pointer, an integer, and an instance of
+ * the @c Compare type (which itself is often stateless and empty), so it
+ * should be quite fast.)
+ * Note that the global std::swap() function is specialized such that
+ * std::swap(s1,s2) will feed to this function.
+ */
+ void
+ swap(set<_Key,_Compare,_Alloc>& __x)
+ { _M_t.swap(__x._M_t); }
+
+ // insert/erase
+ /**
+ * @brief Attempts to insert an element into the %set.
+ * @param x Element to be inserted.
+ * @return A pair, of which the first element is an iterator that points
+ * to the possibly inserted element, and the second is a bool
+ * that is true if the element was actually inserted.
+ *
+ * This function attempts to insert an element into the %set. A %set
+ * relies on unique keys and thus an element is only inserted if it is
+ * not already present in the %set.
+ *
+ * Insertion requires logarithmic time.
+ */
+ pair<iterator,bool>
+ insert(const value_type& __x)
+ {
+ pair<typename _Rep_type::iterator, bool> __p = _M_t.insert_unique(__x);
+ return pair<iterator, bool>(__p.first, __p.second);
+ }
+
+ /**
+ * @brief Attempts to insert an element into the %set.
+ * @param position An iterator that serves as a hint as to where the
+ * element should be inserted.
+ * @param x Element to be inserted.
+ * @return An iterator that points to the element with key of @a x (may
+ * or may not be the element passed in).
+ *
+ * This function is not concerned about whether the insertion took place,
+ * and thus does not return a boolean like the single-argument insert()
+ * does. Note that the first parameter is only a hint and can
+ * potentially improve the performance of the insertion process. A bad
+ * hint would cause no gains in efficiency.
+ *
+ * See http://gcc.gnu.org/onlinedocs/libstdc++/23_containers/howto.html#4
+ * for more on "hinting".
+ *
+ * Insertion requires logarithmic time (if the hint is not taken).
+ */
+ iterator
+ insert(iterator __position, const value_type& __x)
+ {
+ typedef typename _Rep_type::iterator _Rep_iterator;
+ return _M_t.insert_unique((_Rep_iterator&)__position, __x);
+ }
+
+ /**
+ * @brief A template function that attemps to insert a range of elements.
+ * @param first Iterator pointing to the start of the range to be
+ * inserted.
+ * @param last Iterator pointing to the end of the range.
+ *
+ * Complexity similar to that of the range constructor.
+ */
+ template<class _InputIterator>
+ void
+ insert(_InputIterator __first, _InputIterator __last)
+ { _M_t.insert_unique(__first, __last); }
+
+ /**
+ * @brief Erases an element from a %set.
+ * @param position An iterator pointing to the element to be erased.
+ *
+ * This function erases an element, pointed to by the given iterator,
+ * from a %set. Note that this function only erases the element, and
+ * that if the element is itself a pointer, the pointed-to memory is not
+ * touched in any way. Managing the pointer is the user's responsibilty.
+ */
+ void
+ erase(iterator __position)
+ {
+ typedef typename _Rep_type::iterator _Rep_iterator;
+ _M_t.erase((_Rep_iterator&)__position);
+ }
+
+ /**
+ * @brief Erases elements according to the provided key.
+ * @param x Key of element to be erased.
+ * @return The number of elements erased.
+ *
+ * This function erases all the elements located by the given key from
+ * a %set.
+ * Note that this function only erases the element, and that if
+ * the element is itself a pointer, the pointed-to memory is not touched
+ * in any way. Managing the pointer is the user's responsibilty.
+ */
+ size_type
+ erase(const key_type& __x) { return _M_t.erase(__x); }
+
+ /**
+ * @brief Erases a [first,last) range of elements from a %set.
+ * @param first Iterator pointing to the start of the range to be
+ * erased.
+ * @param last Iterator pointing to the end of the range to be erased.
+ *
+ * This function erases a sequence of elements from a %set.
+ * Note that this function only erases the element, and that if
+ * the element is itself a pointer, the pointed-to memory is not touched
+ * in any way. Managing the pointer is the user's responsibilty.
+ */
+ void
+ erase(iterator __first, iterator __last)
+ {
+ typedef typename _Rep_type::iterator _Rep_iterator;
+ _M_t.erase((_Rep_iterator&)__first, (_Rep_iterator&)__last);
+ }
+
+ /**
+ * Erases all elements in a %set. Note that this function only erases
+ * the elements, and that if the elements themselves are pointers, the
+ * pointed-to memory is not touched in any way. Managing the pointer is
+ * the user's responsibilty.
+ */
+ void
+ clear()
+ { _M_t.clear(); }
+
+ // set operations:
+
+ /**
+ * @brief Finds the number of elements.
+ * @param x Element to located.
+ * @return Number of elements with specified key.
+ *
+ * This function only makes sense for multisets; for set the result will
+ * either be 0 (not present) or 1 (present).
+ */
+ size_type
+ count(const key_type& __x) const
+ { return _M_t.find(__x) == _M_t.end() ? 0 : 1; }
+
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // 214. set::find() missing const overload
+ //@{
+ /**
+ * @brief Tries to locate an element in a %set.
+ * @param x Element to be located.
+ * @return Iterator pointing to sought-after element, or end() if not
+ * found.
+ *
+ * This function takes a key and tries to locate the element with which
+ * the key matches. If successful the function returns an iterator
+ * pointing to the sought after element. If unsuccessful it returns the
+ * past-the-end ( @c end() ) iterator.
+ */
+ iterator
+ find(const key_type& __x)
+ { return _M_t.find(__x); }
+
+ const_iterator
+ find(const key_type& __x) const
+ { return _M_t.find(__x); }
+ //@}
+
+ //@{
+ /**
+ * @brief Finds the beginning of a subsequence matching given key.
+ * @param x Key to be located.
+ * @return Iterator pointing to first element equal to or greater
+ * than key, or end().
+ *
+ * This function returns the first element of a subsequence of elements
+ * that matches the given key. If unsuccessful it returns an iterator
+ * pointing to the first element that has a greater value than given key
+ * or end() if no such element exists.
+ */
+ iterator
+ lower_bound(const key_type& __x)
+ { return _M_t.lower_bound(__x); }
+
+ const_iterator
+ lower_bound(const key_type& __x) const
+ { return _M_t.lower_bound(__x); }
+ //@}
+
+ //@{
+ /**
+ * @brief Finds the end of a subsequence matching given key.
+ * @param x Key to be located.
+ * @return Iterator pointing to the first element
+ * greater than key, or end().
+ */
+ iterator
+ upper_bound(const key_type& __x)
+ { return _M_t.upper_bound(__x); }
+
+ const_iterator
+ upper_bound(const key_type& __x) const
+ { return _M_t.upper_bound(__x); }
+ //@}
+
+ //@{
+ /**
+ * @brief Finds a subsequence matching given key.
+ * @param x Key to be located.
+ * @return Pair of iterators that possibly points to the subsequence
+ * matching given key.
+ *
+ * This function is equivalent to
+ * @code
+ * std::make_pair(c.lower_bound(val),
+ * c.upper_bound(val))
+ * @endcode
+ * (but is faster than making the calls separately).
+ *
+ * This function probably only makes sense for multisets.
+ */
+ pair<iterator,iterator>
+ equal_range(const key_type& __x)
+ { return _M_t.equal_range(__x); }
+
+ pair<const_iterator,const_iterator>
+ equal_range(const key_type& __x) const
+ { return _M_t.equal_range(__x); }
+ //@}
+
+ template<class _K1, class _C1, class _A1>
+ friend bool
+ operator== (const set<_K1,_C1,_A1>&, const set<_K1,_C1,_A1>&);
+
+ template<class _K1, class _C1, class _A1>
+ friend bool
+ operator< (const set<_K1,_C1,_A1>&, const set<_K1,_C1,_A1>&);
+ };
+
+
+ /**
+ * @brief Set equality comparison.
+ * @param x A %set.
+ * @param y A %set of the same type as @a x.
+ * @return True iff the size and elements of the sets are equal.
+ *
+ * This is an equivalence relation. It is linear in the size of the sets.
+ * Sets are considered equivalent if their sizes are equal, and if
+ * corresponding elements compare equal.
+ */
+ template<class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator==(const set<_Key,_Compare,_Alloc>& __x,
+ const set<_Key,_Compare,_Alloc>& __y)
+ { return __x._M_t == __y._M_t; }
+
+ /**
+ * @brief Set ordering relation.
+ * @param x A %set.
+ * @param y A %set of the same type as @a x.
+ * @return True iff @a x is lexicographically less than @a y.
+ *
+ * This is a total ordering relation. It is linear in the size of the
+ * maps. The elements must be comparable with @c <.
+ *
+ * See std::lexicographical_compare() for how the determination is made.
+ */
+ template<class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator<(const set<_Key,_Compare,_Alloc>& __x,
+ const set<_Key,_Compare,_Alloc>& __y)
+ { return __x._M_t < __y._M_t; }
+
+ /// Returns !(x == y).
+ template<class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator!=(const set<_Key,_Compare,_Alloc>& __x,
+ const set<_Key,_Compare,_Alloc>& __y)
+ { return !(__x == __y); }
+
+ /// Returns y < x.
+ template<class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator>(const set<_Key,_Compare,_Alloc>& __x,
+ const set<_Key,_Compare,_Alloc>& __y)
+ { return __y < __x; }
+
+ /// Returns !(y < x)
+ template<class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator<=(const set<_Key,_Compare,_Alloc>& __x,
+ const set<_Key,_Compare,_Alloc>& __y)
+ { return !(__y < __x); }
+
+ /// Returns !(x < y)
+ template<class _Key, class _Compare, class _Alloc>
+ inline bool
+ operator>=(const set<_Key,_Compare,_Alloc>& __x,
+ const set<_Key,_Compare,_Alloc>& __y)
+ { return !(__x < __y); }
+
+ /// See std::set::swap().
+ template<class _Key, class _Compare, class _Alloc>
+ inline void
+ swap(set<_Key,_Compare,_Alloc>& __x, set<_Key,_Compare,_Alloc>& __y)
+ { __x.swap(__y); }
+
+} // namespace std
#endif /* _SET_H */
diff --git a/libstdc++-v3/include/bits/stl_stack.h b/libstdc++-v3/include/bits/stl_stack.h
index d72755a9fae..ada50ee350e 100644
--- a/libstdc++-v3/include/bits/stl_stack.h
+++ b/libstdc++-v3/include/bits/stl_stack.h
@@ -1,6 +1,6 @@
// Stack implementation -*- C++ -*-
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -70,16 +70,15 @@ namespace std
// declaration.
template<typename _Tp, typename _Sequence = deque<_Tp> >
class stack;
-
+
template<typename _Tp, typename _Seq>
- inline bool
+ inline bool
operator==(const stack<_Tp,_Seq>& __x, const stack<_Tp,_Seq>& __y);
-
+
template<typename _Tp, typename _Seq>
- inline bool
+ inline bool
operator<(const stack<_Tp,_Seq>& __x, const stack<_Tp,_Seq>& __y);
-
-
+
/**
* @brief A standard container giving FILO behavior.
*
@@ -115,66 +114,69 @@ namespace std
__glibcxx_class_requires(_Tp, _SGIAssignableConcept)
__glibcxx_class_requires(_Sequence, _BackInsertionSequenceConcept)
__glibcxx_class_requires2(_Tp, _Sequence_value_type, _SameTypeConcept)
-
- template<typename _Tp1, typename _Seq1>
- friend bool
- operator==(const stack<_Tp1, _Seq1>&, const stack<_Tp1, _Seq1>&);
template<typename _Tp1, typename _Seq1>
- friend bool
+ friend bool
+ operator==(const stack<_Tp1, _Seq1>&, const stack<_Tp1, _Seq1>&);
+
+ template<typename _Tp1, typename _Seq1>
+ friend bool
operator<(const stack<_Tp1, _Seq1>&, const stack<_Tp1, _Seq1>&);
-
+
public:
typedef typename _Sequence::value_type value_type;
typedef typename _Sequence::reference reference;
typedef typename _Sequence::const_reference const_reference;
typedef typename _Sequence::size_type size_type;
typedef _Sequence container_type;
-
+
protected:
// See queue::c for notes on this name.
_Sequence c;
-
+
public:
// XXX removed old def ctor, added def arg to this one to match 14882
/**
* @brief Default constructor creates no elements.
*/
explicit
- stack(const _Sequence& __c = _Sequence()) : c(__c) {}
-
+ stack(const _Sequence& __c = _Sequence())
+ : c(__c) {}
+
/**
* Returns true if the %stack is empty.
*/
bool
- empty() const { return c.empty(); }
-
+ empty() const
+ { return c.empty(); }
+
/** Returns the number of elements in the %stack. */
size_type
- size() const { return c.size(); }
-
+ size() const
+ { return c.size(); }
+
/**
* Returns a read/write reference to the data at the first
* element of the %stack.
*/
reference
- top()
- {
+ top()
+ {
__glibcxx_requires_nonempty();
- return c.back();
+ return c.back();
}
-
+
/**
* Returns a read-only (constant) reference to the data at the first
* element of the %stack.
*/
const_reference
- top() const
+ top() const
{
__glibcxx_requires_nonempty();
- return c.back();
+ return c.back();
}
-
+
/**
* @brief Add data to the top of the %stack.
* @param x Data to be added.
@@ -185,8 +187,9 @@ namespace std
* underlying sequence.
*/
void
- push(const value_type& __x) { c.push_back(__x); }
-
+ push(const value_type& __x)
+ { c.push_back(__x); }
+
/**
* @brief Removes first element.
*
@@ -199,14 +202,13 @@ namespace std
* called.
*/
void
- pop()
+ pop()
{
__glibcxx_requires_nonempty();
- c.pop_back();
+ c.pop_back();
}
};
-
-
+
/**
* @brief Stack equality comparison.
* @param x A %stack.
@@ -221,9 +223,9 @@ namespace std
*/
template<typename _Tp, typename _Seq>
inline bool
- operator==(const stack<_Tp,_Seq>& __x, const stack<_Tp,_Seq>& __y)
+ operator==(const stack<_Tp, _Seq>& __x, const stack<_Tp, _Seq>& __y)
{ return __x.c == __y.c; }
-
+
/**
* @brief Stack ordering relation.
* @param x A %stack.
@@ -239,31 +241,31 @@ namespace std
*/
template<typename _Tp, typename _Seq>
inline bool
- operator<(const stack<_Tp,_Seq>& __x, const stack<_Tp,_Seq>& __y)
+ operator<(const stack<_Tp, _Seq>& __x, const stack<_Tp, _Seq>& __y)
{ return __x.c < __y.c; }
-
+
/// Based on operator==
template<typename _Tp, typename _Seq>
inline bool
- operator!=(const stack<_Tp,_Seq>& __x, const stack<_Tp,_Seq>& __y)
+ operator!=(const stack<_Tp, _Seq>& __x, const stack<_Tp, _Seq>& __y)
{ return !(__x == __y); }
-
+
/// Based on operator<
template<typename _Tp, typename _Seq>
inline bool
- operator>(const stack<_Tp,_Seq>& __x, const stack<_Tp,_Seq>& __y)
+ operator>(const stack<_Tp, _Seq>& __x, const stack<_Tp, _Seq>& __y)
{ return __y < __x; }
-
+
/// Based on operator<
template<typename _Tp, typename _Seq>
inline bool
- operator<=(const stack<_Tp,_Seq>& __x, const stack<_Tp,_Seq>& __y)
+ operator<=(const stack<_Tp, _Seq>& __x, const stack<_Tp, _Seq>& __y)
{ return !(__y < __x); }
-
+
/// Based on operator<
template<typename _Tp, typename _Seq>
inline bool
- operator>=(const stack<_Tp,_Seq>& __x, const stack<_Tp,_Seq>& __y)
+ operator>=(const stack<_Tp, _Seq>& __x, const stack<_Tp, _Seq>& __y)
{ return !(__x < __y); }
} // namespace std
diff --git a/libstdc++-v3/include/bits/stl_tempbuf.h b/libstdc++-v3/include/bits/stl_tempbuf.h
index 0526c0d7706..399cffb3311 100644
--- a/libstdc++-v3/include/bits/stl_tempbuf.h
+++ b/libstdc++-v3/include/bits/stl_tempbuf.h
@@ -1,6 +1,6 @@
// Temporary buffer implementation -*- C++ -*-
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -61,88 +61,110 @@
#ifndef _TEMPBUF_H
#define _TEMPBUF_H 1
+#include <memory>
+
namespace std
{
+ /**
+ * @if maint
+ * This class is used in two places: stl_algo.h and ext/memory,
+ * where it is wrapped as the temporary_buffer class. See
+ * temporary_buffer docs for more notes.
+ * @endif
+ */
+ template<typename _ForwardIterator, typename _Tp>
+ class _Temporary_buffer
+ {
+ // concept requirements
+ __glibcxx_class_requires(_ForwardIterator, _ForwardIteratorConcept)
+
+ public:
+ typedef _Tp value_type;
+ typedef value_type* pointer;
+ typedef pointer iterator;
+ typedef ptrdiff_t size_type;
+
+ protected:
+ size_type _M_original_len;
+ size_type _M_len;
+ pointer _M_buffer;
+
+ void
+ _M_initialize_buffer(const _Tp&, __true_type) { }
+
+ void
+ _M_initialize_buffer(const _Tp& val, __false_type)
+ { std::uninitialized_fill_n(_M_buffer, _M_len, val); }
+
+ public:
+ /// As per Table mumble.
+ size_type
+ size() const
+ { return _M_len; }
+
+ /// Returns the size requested by the constructor; may be >size().
+ size_type
+ requested_size() const
+ { return _M_original_len; }
+
+ /// As per Table mumble.
+ iterator
+ begin()
+ { return _M_buffer; }
+
+ /// As per Table mumble.
+ iterator
+ end()
+ { return _M_buffer + _M_len; }
+
+ /**
+ * Constructs a temporary buffer of a size somewhere between
+ * zero and the size of the given range.
+ */
+ _Temporary_buffer(_ForwardIterator __first, _ForwardIterator __last);
+
+ ~_Temporary_buffer()
+ {
+ std::_Destroy(_M_buffer, _M_buffer + _M_len);
+ std::return_temporary_buffer(_M_buffer);
+ }
-/**
- * @if maint
- * This class is used in two places: stl_algo.h and ext/memory, where it
- * is wrapped as the temporary_buffer class. See temporary_buffer docs for
- * more notes.
- * @endif
-*/
-template <class _ForwardIterator, class _Tp>
- class _Temporary_buffer
-{
- // concept requirements
- __glibcxx_class_requires(_ForwardIterator, _ForwardIteratorConcept)
-
- ptrdiff_t _M_original_len;
- ptrdiff_t _M_len;
- _Tp* _M_buffer;
-
- // this is basically get_temporary_buffer() all over again
- void _M_allocate_buffer() {
- _M_original_len = _M_len;
- _M_buffer = 0;
-
- if (_M_len > (ptrdiff_t)(INT_MAX / sizeof(_Tp)))
- _M_len = INT_MAX / sizeof(_Tp);
-
- while (_M_len > 0) {
- _M_buffer = (_Tp*) malloc(_M_len * sizeof(_Tp));
- if (_M_buffer)
- break;
- _M_len /= 2;
+ private:
+ // Disable copy constructor and assignment operator.
+ _Temporary_buffer(const _Temporary_buffer&);
+
+ void
+ operator=(const _Temporary_buffer&);
+ };
+
+
+ template<typename _ForwardIterator, typename _Tp>
+ _Temporary_buffer<_ForwardIterator, _Tp>::
+ _Temporary_buffer(_ForwardIterator __first, _ForwardIterator __last)
+ : _M_original_len(std::distance(__first, __last)),
+ _M_len(0), _M_buffer(0)
+ {
+ // Workaround for a __type_traits bug in the pre-7.3 compiler.
+ typedef typename __type_traits<_Tp>::has_trivial_default_constructor
+ _Trivial;
+
+ try
+ {
+ pair<pointer, size_type> __p(get_temporary_buffer<
+ value_type>(_M_original_len));
+ _M_buffer = __p.first;
+ _M_len = __p.second;
+ if (_M_len > 0)
+ _M_initialize_buffer(*__first, _Trivial());
+ }
+ catch(...)
+ {
+ std::return_temporary_buffer(_M_buffer);
+ _M_buffer = 0;
+ _M_len = 0;
+ __throw_exception_again;
+ }
}
- }
-
- void _M_initialize_buffer(const _Tp&, __true_type) {}
- void _M_initialize_buffer(const _Tp& val, __false_type) {
- std::uninitialized_fill_n(_M_buffer, _M_len, val);
- }
-
-public:
- /// As per Table mumble.
- ptrdiff_t size() const { return _M_len; }
- /// Returns the size requested by the constructor; may be >size().
- ptrdiff_t requested_size() const { return _M_original_len; }
- /// As per Table mumble.
- _Tp* begin() { return _M_buffer; }
- /// As per Table mumble.
- _Tp* end() { return _M_buffer + _M_len; }
-
- _Temporary_buffer(_ForwardIterator __first, _ForwardIterator __last) {
- // Workaround for a __type_traits bug in the pre-7.3 compiler.
- typedef typename __type_traits<_Tp>::has_trivial_default_constructor
- _Trivial;
-
- try {
- _M_len = std::distance(__first, __last);
- _M_allocate_buffer();
- if (_M_len > 0)
- _M_initialize_buffer(*__first, _Trivial());
- }
- catch(...)
- {
- std::free(_M_buffer);
- _M_buffer = 0;
- _M_len = 0;
- __throw_exception_again;
- }
- }
-
- ~_Temporary_buffer() {
- std::_Destroy(_M_buffer, _M_buffer + _M_len);
- std::free(_M_buffer);
- }
-
-private:
- // Disable copy constructor and assignment operator.
- _Temporary_buffer(const _Temporary_buffer&) {}
- void operator=(const _Temporary_buffer&) {}
-};
-
} // namespace std
#endif /* _TEMPBUF_H */
diff --git a/libstdc++-v3/include/bits/stl_threads.h b/libstdc++-v3/include/bits/stl_threads.h
index ffa21a49998..93fb9e99ee6 100644
--- a/libstdc++-v3/include/bits/stl_threads.h
+++ b/libstdc++-v3/include/bits/stl_threads.h
@@ -85,8 +85,8 @@ namespace __gnu_cxx
#endif
__gthread_mutex_t _M_lock;
- void
- _M_initialize()
+ void
+ _M_initialize()
{
#ifdef __GTHREAD_MUTEX_INIT
// There should be no code in this path given the usage rules above.
@@ -97,7 +97,7 @@ namespace __gnu_cxx
&& __gthread_active_p())
abort ();
__gthread_mutex_lock(&__gnu_cxx::_GLIBCXX_mutex);
- if (!_M_init_flag)
+ if (!_M_init_flag)
{
// Even though we have a global lock, we use __gthread_once to be
// absolutely certain the _M_lock mutex is only initialized once on
@@ -113,8 +113,8 @@ namespace __gnu_cxx
#endif
}
- void
- _M_acquire_lock()
+ void
+ _M_acquire_lock()
{
#if !defined(__GTHREAD_MUTEX_INIT) && defined(__GTHREAD_MUTEX_INIT_FUNCTION)
if (!_M_init_flag) _M_initialize();
@@ -122,8 +122,8 @@ namespace __gnu_cxx
__gthread_mutex_lock(&_M_lock);
}
- void
- _M_release_lock()
+ void
+ _M_release_lock()
{
#if !defined(__GTHREAD_MUTEX_INIT) && defined(__GTHREAD_MUTEX_INIT_FUNCTION)
if (!_M_init_flag) _M_initialize();
@@ -131,7 +131,7 @@ namespace __gnu_cxx
__gthread_mutex_unlock(&_M_lock);
}
};
-
+
#ifdef __GTHREAD_MUTEX_INIT
#define __STL_MUTEX_INITIALIZER = { __GTHREAD_MUTEX_INIT }
#elif defined(__GTHREAD_MUTEX_INIT_FUNCTION)
@@ -144,4 +144,4 @@ namespace __gnu_cxx
#endif
} // namespace __gnu_cxx
-#endif
+#endif
diff --git a/libstdc++-v3/include/bits/stl_tree.h b/libstdc++-v3/include/bits/stl_tree.h
index 81428b28876..ac9add899b9 100644
--- a/libstdc++-v3/include/bits/stl_tree.h
+++ b/libstdc++-v3/include/bits/stl_tree.h
@@ -1,6 +1,6 @@
// RB tree implementation -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -63,46 +63,43 @@
#ifndef _TREE_H
#define _TREE_H 1
-/*
-
-Red-black tree class, designed for use in implementing STL
-associative containers (set, multiset, map, and multimap). The
-insertion and deletion algorithms are based on those in Cormen,
-Leiserson, and Rivest, Introduction to Algorithms (MIT Press, 1990),
-except that
-
-(1) the header cell is maintained with links not only to the root
-but also to the leftmost node of the tree, to enable constant time
-begin(), and to the rightmost node of the tree, to enable linear time
-performance when used with the generic set algorithms (set_union,
-etc.);
-
-(2) when a node being deleted has two children its successor node is
-relinked into its place, rather than copied, so that the only
-iterators invalidated are those referring to the deleted node.
-
-*/
-
#include <bits/stl_algobase.h>
#include <bits/allocator.h>
#include <bits/stl_construct.h>
#include <bits/stl_function.h>
+#include <bits/cpp_type_traits.h>
namespace std
-{
+{
+ // Red-black tree class, designed for use in implementing STL
+ // associative containers (set, multiset, map, and multimap). The
+ // insertion and deletion algorithms are based on those in Cormen,
+ // Leiserson, and Rivest, Introduction to Algorithms (MIT Press,
+ // 1990), except that
+ //
+ // (1) the header cell is maintained with links not only to the root
+ // but also to the leftmost node of the tree, to enable constant
+ // time begin(), and to the rightmost node of the tree, to enable
+ // linear time performance when used with the generic set algorithms
+ // (set_union, etc.)
+ //
+ // (2) when a node being deleted has two children its successor node
+ // is relinked into its place, rather than copied, so that the only
+ // iterators invalidated are those referring to the deleted node.
+
enum _Rb_tree_color { _S_red = false, _S_black = true };
struct _Rb_tree_node_base
{
typedef _Rb_tree_node_base* _Base_ptr;
typedef const _Rb_tree_node_base* _Const_Base_ptr;
-
- _Rb_tree_color _M_color;
- _Base_ptr _M_parent;
- _Base_ptr _M_left;
- _Base_ptr _M_right;
-
- static _Base_ptr
+
+ _Rb_tree_color _M_color;
+ _Base_ptr _M_parent;
+ _Base_ptr _M_left;
+ _Base_ptr _M_right;
+
+ static _Base_ptr
_S_minimum(_Base_ptr __x)
{
while (__x->_M_left != 0) __x = __x->_M_left;
@@ -116,7 +113,7 @@ namespace std
return __x;
}
- static _Base_ptr
+ static _Base_ptr
_S_maximum(_Base_ptr __x)
{
while (__x->_M_right != 0) __x = __x->_M_right;
@@ -137,7 +134,7 @@ namespace std
typedef _Rb_tree_node<_Val>* _Link_type;
_Val _M_value_field;
};
-
+
_Rb_tree_node_base*
_Rb_tree_increment(_Rb_tree_node_base* __x);
@@ -163,44 +160,44 @@ namespace std
typedef _Rb_tree_iterator<_Tp> _Self;
typedef _Rb_tree_node_base::_Base_ptr _Base_ptr;
typedef _Rb_tree_node<_Tp>* _Link_type;
-
- _Rb_tree_iterator() {}
+
+ _Rb_tree_iterator() { }
_Rb_tree_iterator(_Link_type __x)
- : _M_node(__x) {}
+ : _M_node(__x) { }
- reference
+ reference
operator*() const
{ return static_cast<_Link_type>(_M_node)->_M_value_field; }
- pointer
+ pointer
operator->() const
{ return &static_cast<_Link_type>(_M_node)->_M_value_field; }
- _Self&
- operator++()
- {
+ _Self&
+ operator++()
+ {
_M_node = _Rb_tree_increment(_M_node);
- return *this;
+ return *this;
}
- _Self
- operator++(int)
+ _Self
+ operator++(int)
{
_Self __tmp = *this;
_M_node = _Rb_tree_increment(_M_node);
return __tmp;
}
-
- _Self&
+
+ _Self&
operator--()
{
_M_node = _Rb_tree_decrement(_M_node);
return *this;
}
- _Self
- operator--(int)
+ _Self
+ operator--(int)
{
_Self __tmp = *this;
_M_node = _Rb_tree_decrement(_M_node);
@@ -233,14 +230,14 @@ namespace std
typedef _Rb_tree_const_iterator<_Tp> _Self;
typedef _Rb_tree_node_base::_Const_Base_ptr _Base_ptr;
typedef const _Rb_tree_node<_Tp>* _Link_type;
-
- _Rb_tree_const_iterator() {}
+
+ _Rb_tree_const_iterator() { }
_Rb_tree_const_iterator(_Link_type __x)
- : _M_node(__x) {}
+ : _M_node(__x) { }
_Rb_tree_const_iterator(const iterator& __it)
- : _M_node(__it._M_node) {}
+ : _M_node(__it._M_node) { }
reference
operator*() const
@@ -250,30 +247,30 @@ namespace std
operator->() const
{ return &static_cast<_Link_type>(_M_node)->_M_value_field; }
- _Self&
- operator++()
- {
+ _Self&
+ operator++()
+ {
_M_node = _Rb_tree_increment(_M_node);
- return *this;
+ return *this;
}
- _Self
- operator++(int)
+ _Self
+ operator++(int)
{
_Self __tmp = *this;
_M_node = _Rb_tree_increment(_M_node);
return __tmp;
}
-
- _Self&
+
+ _Self&
operator--()
{
_M_node = _Rb_tree_decrement(_M_node);
return *this;
}
- _Self
- operator--(int)
+ _Self
+ operator--(int)
{
_Self __tmp = *this;
_M_node = _Rb_tree_decrement(_M_node);
@@ -289,52 +286,51 @@ namespace std
{ return _M_node != __x._M_node; }
_Base_ptr _M_node;
- };
+ };
template<typename _Val>
- inline bool
+ inline bool
operator==(const _Rb_tree_iterator<_Val>& __x,
- const _Rb_tree_const_iterator<_Val>& __y)
+ const _Rb_tree_const_iterator<_Val>& __y)
{ return __x._M_node == __y._M_node; }
template<typename _Val>
- inline bool
+ inline bool
operator!=(const _Rb_tree_iterator<_Val>& __x,
- const _Rb_tree_const_iterator<_Val>& __y)
+ const _Rb_tree_const_iterator<_Val>& __y)
{ return __x._M_node != __y._M_node; }
- void
+ void
_Rb_tree_rotate_left(_Rb_tree_node_base* const __x,
_Rb_tree_node_base*& __root);
- void
+ void
_Rb_tree_rotate_right(_Rb_tree_node_base* const __x,
_Rb_tree_node_base*& __root);
- void
- _Rb_tree_insert_and_rebalance(const bool __insert_left,
+ void
+ _Rb_tree_insert_and_rebalance(const bool __insert_left,
_Rb_tree_node_base* __x,
_Rb_tree_node_base* __p,
_Rb_tree_node_base& __header);
_Rb_tree_node_base*
- _Rb_tree_rebalance_for_erase(_Rb_tree_node_base* const __z,
- _Rb_tree_node_base& __header);
+ _Rb_tree_rebalance_for_erase(_Rb_tree_node_base* const __z,
+ _Rb_tree_node_base& __header);
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc = allocator<_Val> >
class _Rb_tree
- : protected _Alloc::template rebind<_Rb_tree_node<_Val> >::other
{
typedef typename _Alloc::template rebind<_Rb_tree_node<_Val> >::other
_Node_allocator;
-
+
protected:
typedef _Rb_tree_node_base* _Base_ptr;
typedef const _Rb_tree_node_base* _Const_Base_ptr;
typedef _Rb_tree_node<_Val> _Rb_tree_node;
-
+
public:
typedef _Key key_type;
typedef _Val value_type;
@@ -346,34 +342,36 @@ namespace std
typedef const _Rb_tree_node* _Const_Link_type;
typedef size_t size_type;
typedef ptrdiff_t difference_type;
-
typedef _Alloc allocator_type;
- allocator_type get_allocator() const {
- return *static_cast<const _Node_allocator*>(this);
- }
-
+
+ allocator_type
+ get_allocator() const
+ { return *static_cast<const _Node_allocator*>(&this->_M_impl); }
+
protected:
_Rb_tree_node*
- _M_get_node() { return _Node_allocator::allocate(1); }
+ _M_get_node()
+ { return _M_impl._Node_allocator::allocate(1); }
+
+ void
+ _M_put_node(_Rb_tree_node* __p)
+ { _M_impl._Node_allocator::deallocate(__p, 1); }
- void
- _M_put_node(_Rb_tree_node* __p) { _Node_allocator::deallocate(__p, 1); }
-
_Link_type
_M_create_node(const value_type& __x)
{
_Link_type __tmp = _M_get_node();
- try
+ try
{ std::_Construct(&__tmp->_M_value_field, __x); }
catch(...)
{
- _M_put_node(__tmp);
- __throw_exception_again;
+ _M_put_node(__tmp);
+ __throw_exception_again;
}
return __tmp;
}
-
- _Link_type
+
+ _Link_type
_M_clone_node(_Const_Link_type __x)
{
_Link_type __tmp = _M_create_node(__x->_M_value_field);
@@ -391,67 +389,122 @@ namespace std
}
protected:
- _Rb_tree_node_base _M_header;
- size_type _M_node_count; // keeps track of size of tree
- _Compare _M_key_compare;
-
+ template<typename _Key_compare,
+ bool _Is_pod_comparator = std::__is_pod<_Key_compare>::_M_type>
+ struct _Rb_tree_impl : public _Node_allocator
+ {
+ _Key_compare _M_key_compare;
+ _Rb_tree_node_base _M_header;
+ size_type _M_node_count; // Keeps track of size of tree.
+
+ _Rb_tree_impl(const _Node_allocator& __a = _Node_allocator(),
+ const _Key_compare& __comp = _Key_compare())
+ : _Node_allocator(__a), _M_key_compare(__comp), _M_node_count(0)
+ {
+ this->_M_header._M_color = _S_red;
+ this->_M_header._M_parent = 0;
+ this->_M_header._M_left = &this->_M_header;
+ this->_M_header._M_right = &this->_M_header;
+ }
+ };
+
+ // Specialization for _Comparison types that are not capable of
+ // being base classes / super classes.
+ template<typename _Key_compare>
+ struct _Rb_tree_impl<_Key_compare, true> : public _Node_allocator
+ {
+ _Key_compare _M_key_compare;
+ _Rb_tree_node_base _M_header;
+ size_type _M_node_count; // Keeps track of size of tree.
+
+ _Rb_tree_impl(const _Node_allocator& __a = _Node_allocator(),
+ const _Key_compare& __comp = _Key_compare())
+ : _Node_allocator(__a), _M_key_compare(__comp), _M_node_count(0)
+ {
+ this->_M_header._M_color = _S_red;
+ this->_M_header._M_parent = 0;
+ this->_M_header._M_left = &this->_M_header;
+ this->_M_header._M_right = &this->_M_header;
+ }
+ };
+
+ _Rb_tree_impl<_Compare> _M_impl;
+
protected:
_Base_ptr&
- _M_root() { return this->_M_header._M_parent; }
+ _M_root()
+ { return this->_M_impl._M_header._M_parent; }
_Const_Base_ptr
- _M_root() const { return this->_M_header._M_parent; }
+ _M_root() const
+ { return this->_M_impl._M_header._M_parent; }
_Base_ptr&
- _M_leftmost() { return this->_M_header._M_left; }
+ _M_leftmost()
+ { return this->_M_impl._M_header._M_left; }
_Const_Base_ptr
- _M_leftmost() const { return this->_M_header._M_left; }
+ _M_leftmost() const
+ { return this->_M_impl._M_header._M_left; }
_Base_ptr&
- _M_rightmost() { return this->_M_header._M_right; }
+ _M_rightmost()
+ { return this->_M_impl._M_header._M_right; }
_Const_Base_ptr
- _M_rightmost() const { return this->_M_header._M_right; }
+ _M_rightmost() const
+ { return this->_M_impl._M_header._M_right; }
_Link_type
- _M_begin() { return static_cast<_Link_type>(this->_M_header._M_parent); }
+ _M_begin()
+ { return static_cast<_Link_type>(this->_M_impl._M_header._M_parent); }
_Const_Link_type
- _M_begin() const { return static_cast<_Const_Link_type>(this->_M_header._M_parent); }
+ _M_begin() const
+ { return static_cast<_Const_Link_type>(this->_M_impl._M_header._M_parent); }
_Link_type
- _M_end() { return static_cast<_Link_type>(&this->_M_header); }
+ _M_end()
+ { return static_cast<_Link_type>(&this->_M_impl._M_header); }
_Const_Link_type
- _M_end() const { return static_cast<_Const_Link_type>(&this->_M_header); }
+ _M_end() const
+ { return static_cast<_Const_Link_type>(&this->_M_impl._M_header); }
- static const_reference
- _S_value(_Const_Link_type __x) { return __x->_M_value_field; }
+ static const_reference
+ _S_value(_Const_Link_type __x)
+ { return __x->_M_value_field; }
- static const _Key&
- _S_key(_Const_Link_type __x) { return _KeyOfValue()(_S_value(__x)); }
+ static const _Key&
+ _S_key(_Const_Link_type __x)
+ { return _KeyOfValue()(_S_value(__x)); }
static _Link_type
- _S_left(_Base_ptr __x) { return static_cast<_Link_type>(__x->_M_left); }
+ _S_left(_Base_ptr __x)
+ { return static_cast<_Link_type>(__x->_M_left); }
static _Const_Link_type
- _S_left(_Const_Base_ptr __x) { return static_cast<_Const_Link_type>(__x->_M_left); }
+ _S_left(_Const_Base_ptr __x)
+ { return static_cast<_Const_Link_type>(__x->_M_left); }
static _Link_type
- _S_right(_Base_ptr __x) { return static_cast<_Link_type>(__x->_M_right); }
+ _S_right(_Base_ptr __x)
+ { return static_cast<_Link_type>(__x->_M_right); }
static _Const_Link_type
- _S_right(_Const_Base_ptr __x) { return static_cast<_Const_Link_type>(__x->_M_right); }
+ _S_right(_Const_Base_ptr __x)
+ { return static_cast<_Const_Link_type>(__x->_M_right); }
static const_reference
- _S_value(_Const_Base_ptr __x) { return static_cast<_Const_Link_type>(__x)->_M_value_field; }
+ _S_value(_Const_Base_ptr __x)
+ { return static_cast<_Const_Link_type>(__x)->_M_value_field; }
- static const _Key&
- _S_key(_Const_Base_ptr __x) { return _KeyOfValue()(_S_value(__x)); }
+ static const _Key&
+ _S_key(_Const_Base_ptr __x)
+ { return _KeyOfValue()(_S_value(__x)); }
- static _Base_ptr
- _S_minimum(_Base_ptr __x)
+ static _Base_ptr
+ _S_minimum(_Base_ptr __x)
{ return _Rb_tree_node_base::_S_minimum(__x); }
static _Const_Base_ptr
@@ -474,139 +527,129 @@ namespace std
typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
private:
- iterator
+ iterator
_M_insert(_Base_ptr __x, _Base_ptr __y, const value_type& __v);
- _Link_type
+ _Link_type
_M_copy(_Const_Link_type __x, _Link_type __p);
- void
+ void
_M_erase(_Link_type __x);
public:
// allocation/deallocation
_Rb_tree()
- : _Node_allocator(allocator_type()),
- _M_node_count(0),
- _M_key_compare()
- { _M_empty_initialize(); }
+ { }
_Rb_tree(const _Compare& __comp)
- : _Node_allocator(allocator_type()),
- _M_node_count(0),
- _M_key_compare(__comp)
- { _M_empty_initialize(); }
+ : _M_impl(allocator_type(), __comp)
+ { }
_Rb_tree(const _Compare& __comp, const allocator_type& __a)
- : _Node_allocator(__a),
- _M_node_count(0),
- _M_key_compare(__comp)
- { _M_empty_initialize(); }
-
- _Rb_tree(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x)
- : _Node_allocator(__x.get_allocator()),
- _M_node_count(0),
- _M_key_compare(__x._M_key_compare)
- {
- if (__x._M_root() == 0)
- _M_empty_initialize();
- else
+ : _M_impl(__a, __comp)
+ { }
+
+ _Rb_tree(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x)
+ : _M_impl(__x.get_allocator(), __x._M_impl._M_key_compare)
+ {
+ if (__x._M_root() != 0)
{
- this->_M_header._M_color = _S_red;
_M_root() = _M_copy(__x._M_begin(), _M_end());
_M_leftmost() = _S_minimum(_M_root());
_M_rightmost() = _S_maximum(_M_root());
+ _M_impl._M_node_count = __x._M_impl._M_node_count;
}
- _M_node_count = __x._M_node_count;
}
- ~_Rb_tree() { _M_erase(_M_begin()); }
+ ~_Rb_tree()
+ { _M_erase(_M_begin()); }
- _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>&
+ _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>&
operator=(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x);
- private:
- void _M_empty_initialize()
- {
- // Used to distinguish header from __root, in iterator.operator++.
- this->_M_header._M_color = _S_red;
- _M_root() = 0;
- _M_leftmost() = _M_end();
- _M_rightmost() = _M_end();
- }
-
- public:
// Accessors.
- _Compare
- key_comp() const { return _M_key_compare; }
+ _Compare
+ key_comp() const
+ { return _M_impl._M_key_compare; }
- iterator
- begin() { return static_cast<_Link_type>(this->_M_header._M_left); }
+ iterator
+ begin()
+ { return static_cast<_Link_type>(this->_M_impl._M_header._M_left); }
- const_iterator
- begin() const { return static_cast<_Const_Link_type>(this->_M_header._M_left); }
+ const_iterator
+ begin() const
+ { return static_cast<_Const_Link_type>(this->_M_impl._M_header._M_left); }
- iterator
- end() { return static_cast<_Link_type>(&this->_M_header); }
+ iterator
+ end()
+ { return static_cast<_Link_type>(&this->_M_impl._M_header); }
const_iterator
- end() const { return static_cast<_Const_Link_type>(&this->_M_header); }
+ end() const
+ { return static_cast<_Const_Link_type>(&this->_M_impl._M_header); }
- reverse_iterator
- rbegin() { return reverse_iterator(end()); }
+ reverse_iterator
+ rbegin()
+ { return reverse_iterator(end()); }
- const_reverse_iterator
- rbegin() const { return const_reverse_iterator(end()); }
+ const_reverse_iterator
+ rbegin() const
+ { return const_reverse_iterator(end()); }
- reverse_iterator
- rend() { return reverse_iterator(begin()); }
+ reverse_iterator
+ rend()
+ { return reverse_iterator(begin()); }
- const_reverse_iterator
- rend() const { return const_reverse_iterator(begin()); }
-
- bool
- empty() const { return _M_node_count == 0; }
+ const_reverse_iterator
+ rend() const
+ { return const_reverse_iterator(begin()); }
- size_type
- size() const { return _M_node_count; }
+ bool
+ empty() const
+ { return _M_impl._M_node_count == 0; }
+
+ size_type
+ size() const
+ { return _M_impl._M_node_count; }
- size_type
- max_size() const { return size_type(-1); }
+ size_type
+ max_size() const
+ { return size_type(-1); }
- void
+ void
swap(_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __t);
-
+
// Insert/erase.
- pair<iterator,bool>
+ pair<iterator,bool>
insert_unique(const value_type& __x);
- iterator
+ iterator
insert_equal(const value_type& __x);
- iterator
+ iterator
insert_unique(iterator __position, const value_type& __x);
- iterator
+ iterator
insert_equal(iterator __position, const value_type& __x);
template<typename _InputIterator>
- void
+ void
insert_unique(_InputIterator __first, _InputIterator __last);
template<typename _InputIterator>
- void
+ void
insert_equal(_InputIterator __first, _InputIterator __last);
- void
+ void
erase(iterator __position);
- size_type
+ size_type
erase(const key_type& __x);
- void
+ void
erase(iterator __first, iterator __last);
- void
+ void
erase(const key_type* __first, const key_type* __last);
void
@@ -616,120 +659,120 @@ namespace std
_M_leftmost() = _M_end();
_M_root() = 0;
_M_rightmost() = _M_end();
- _M_node_count = 0;
+ _M_impl._M_node_count = 0;
}
// Set operations.
- iterator
+ iterator
find(const key_type& __x);
- const_iterator
+ const_iterator
find(const key_type& __x) const;
- size_type
+ size_type
count(const key_type& __x) const;
- iterator
+ iterator
lower_bound(const key_type& __x);
- const_iterator
+ const_iterator
lower_bound(const key_type& __x) const;
- iterator
+ iterator
upper_bound(const key_type& __x);
- const_iterator
+ const_iterator
upper_bound(const key_type& __x) const;
- pair<iterator,iterator>
+ pair<iterator,iterator>
equal_range(const key_type& __x);
- pair<const_iterator, const_iterator>
+ pair<const_iterator, const_iterator>
equal_range(const key_type& __x) const;
// Debugging.
- bool
+ bool
__rb_verify() const;
};
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- inline bool
- operator==(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
+ inline bool
+ operator==(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __y)
{
- return __x.size() == __y.size() &&
- equal(__x.begin(), __x.end(), __y.begin());
+ return __x.size() == __y.size()
+ && equal(__x.begin(), __x.end(), __y.begin());
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- inline bool
- operator<(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
+ inline bool
+ operator<(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __y)
{
- return lexicographical_compare(__x.begin(), __x.end(),
+ return lexicographical_compare(__x.begin(), __x.end(),
__y.begin(), __y.end());
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- inline bool
- operator!=(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
- const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __y)
+ inline bool
+ operator!=(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
+ const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __y)
{ return !(__x == __y); }
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- inline bool
- operator>(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
- const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __y)
+ inline bool
+ operator>(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
+ const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __y)
{ return __y < __x; }
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- inline bool
- operator<=(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
- const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __y)
- { return !(__y < __x); }
+ inline bool
+ operator<=(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
+ const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __y)
+ { return !(__y < __x); }
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- inline bool
- operator>=(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
- const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __y)
- { return !(__x < __y); }
+ inline bool
+ operator>=(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
+ const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __y)
+ { return !(__x < __y); }
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- inline void
- swap(_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
+ inline void
+ swap(_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x,
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __y)
{ __x.swap(__y); }
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>&
+ _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>&
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
operator=(const _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>& __x)
{
- if (this != &__x)
+ if (this != &__x)
{
// Note that _Key may be a constant type.
clear();
- _M_key_compare = __x._M_key_compare;
- if (__x._M_root() != 0)
+ _M_impl._M_key_compare = __x._M_impl._M_key_compare;
+ if (__x._M_root() != 0)
{
_M_root() = _M_copy(__x._M_begin(), _M_end());
_M_leftmost() = _S_minimum(_M_root());
_M_rightmost() = _S_maximum(_M_root());
- _M_node_count = __x._M_node_count;
+ _M_impl._M_node_count = __x._M_impl._M_node_count;
}
}
return *this;
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
@@ -738,15 +781,17 @@ namespace std
_Link_type __z = _M_create_node(__v);
bool __insert_left;
- __insert_left = __x != 0 || __p == _M_end() ||
- _M_key_compare(_KeyOfValue()(__v), _S_key(__p));
+ __insert_left = __x != 0 || __p == _M_end()
+ || _M_impl._M_key_compare(_KeyOfValue()(__v),
+ _S_key(__p));
- _Rb_tree_insert_and_rebalance(__insert_left, __z, __p, this->_M_header);
- ++_M_node_count;
+ _Rb_tree_insert_and_rebalance(__insert_left, __z, __p,
+ this->_M_impl._M_header);
+ ++_M_impl._M_node_count;
return iterator(__z);
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
@@ -754,16 +799,16 @@ namespace std
{
_Link_type __x = _M_begin();
_Link_type __y = _M_end();
- while (__x != 0)
+ while (__x != 0)
{
__y = __x;
- __x = _M_key_compare(_KeyOfValue()(__v), _S_key(__x)) ?
- _S_left(__x) : _S_right(__x);
+ __x = _M_impl._M_key_compare(_KeyOfValue()(__v), _S_key(__x)) ?
+ _S_left(__x) : _S_right(__x);
}
return _M_insert(__x, __y, __v);
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
void
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
@@ -804,13 +849,13 @@ namespace std
__t._M_root()->_M_parent = __t._M_end();
}
// No need to swap header's color as it does not change.
- std::swap(this->_M_node_count, __t._M_node_count);
- std::swap(this->_M_key_compare, __t._M_key_compare);
+ std::swap(this->_M_impl._M_node_count, __t._M_impl._M_node_count);
+ std::swap(this->_M_impl._M_key_compare, __t._M_impl._M_key_compare);
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- pair<typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator,
+ pair<typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator,
bool>
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
insert_unique(const _Val& __v)
@@ -818,113 +863,119 @@ namespace std
_Link_type __x = _M_begin();
_Link_type __y = _M_end();
bool __comp = true;
- while (__x != 0)
+ while (__x != 0)
{
__y = __x;
- __comp = _M_key_compare(_KeyOfValue()(__v), _S_key(__x));
+ __comp = _M_impl._M_key_compare(_KeyOfValue()(__v), _S_key(__x));
__x = __comp ? _S_left(__x) : _S_right(__x);
}
- iterator __j = iterator(__y);
+ iterator __j = iterator(__y);
if (__comp)
- if (__j == begin())
+ if (__j == begin())
return pair<iterator,bool>(_M_insert(__x, __y, __v), true);
else
--__j;
- if (_M_key_compare(_S_key(__j._M_node), _KeyOfValue()(__v)))
+ if (_M_impl._M_key_compare(_S_key(__j._M_node), _KeyOfValue()(__v)))
return pair<iterator,bool>(_M_insert(__x, __y, __v), true);
return pair<iterator,bool>(__j, false);
}
-
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
+ typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
insert_unique(iterator __position, const _Val& __v)
{
if (__position._M_node == _M_leftmost())
- {
+ {
// begin()
- if (size() > 0 &&
- _M_key_compare(_KeyOfValue()(__v), _S_key(__position._M_node)))
+ if (size() > 0
+ && _M_impl._M_key_compare(_KeyOfValue()(__v),
+ _S_key(__position._M_node)))
return _M_insert(__position._M_node, __position._M_node, __v);
- // first argument just needs to be non-null
+ // First argument just needs to be non-null.
else
return insert_unique(__v).first;
- }
- else if (__position._M_node == _M_end())
- {
+ }
+ else if (__position._M_node == _M_end())
+ {
// end()
- if (_M_key_compare(_S_key(_M_rightmost()), _KeyOfValue()(__v)))
+ if (_M_impl._M_key_compare(_S_key(_M_rightmost()),
+ _KeyOfValue()(__v)))
return _M_insert(0, _M_rightmost(), __v);
else
return insert_unique(__v).first;
- }
- else
+ }
+ else
{
iterator __before = __position;
--__before;
- if (_M_key_compare(_S_key(__before._M_node), _KeyOfValue()(__v))
- && _M_key_compare(_KeyOfValue()(__v),_S_key(__position._M_node)))
+ if (_M_impl._M_key_compare(_S_key(__before._M_node),
+ _KeyOfValue()(__v))
+ && _M_impl._M_key_compare(_KeyOfValue()(__v),
+ _S_key(__position._M_node)))
{
if (_S_right(__before._M_node) == 0)
- return _M_insert(0, __before._M_node, __v);
+ return _M_insert(0, __before._M_node, __v);
else
return _M_insert(__position._M_node, __position._M_node, __v);
- // first argument just needs to be non-null
- }
+ // First argument just needs to be non-null.
+ }
else
return insert_unique(__v).first;
}
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator
+ typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
insert_equal(iterator __position, const _Val& __v)
{
if (__position._M_node == _M_leftmost())
- {
+ {
// begin()
- if (size() > 0 &&
- !_M_key_compare(_S_key(__position._M_node), _KeyOfValue()(__v)))
+ if (size() > 0
+ && !_M_impl._M_key_compare(_S_key(__position._M_node),
+ _KeyOfValue()(__v)))
return _M_insert(__position._M_node, __position._M_node, __v);
- // first argument just needs to be non-null
+ // first argument just needs to be non-null
else
return insert_equal(__v);
- }
- else if (__position._M_node == _M_end())
+ }
+ else if (__position._M_node == _M_end())
{
// end()
- if (!_M_key_compare(_KeyOfValue()(__v), _S_key(_M_rightmost())))
+ if (!_M_impl._M_key_compare(_KeyOfValue()(__v),
+ _S_key(_M_rightmost())))
return _M_insert(0, _M_rightmost(), __v);
else
return insert_equal(__v);
- }
- else
+ }
+ else
{
iterator __before = __position;
--__before;
- if (!_M_key_compare(_KeyOfValue()(__v), _S_key(__before._M_node))
- && !_M_key_compare(_S_key(__position._M_node),
- _KeyOfValue()(__v)))
+ if (!_M_impl._M_key_compare(_KeyOfValue()(__v),
+ _S_key(__before._M_node))
+ && !_M_impl._M_key_compare(_S_key(__position._M_node),
+ _KeyOfValue()(__v)))
{
if (_S_right(__before._M_node) == 0)
- return _M_insert(0, __before._M_node, __v);
+ return _M_insert(0, __before._M_node, __v);
else
return _M_insert(__position._M_node, __position._M_node, __v);
- // first argument just needs to be non-null
- }
+ // First argument just needs to be non-null.
+ }
else
return insert_equal(__v);
}
}
- template<typename _Key, typename _Val, typename _KoV,
+ template<typename _Key, typename _Val, typename _KoV,
typename _Cmp, typename _Alloc>
template<class _II>
- void
+ void
_Rb_tree<_Key,_Val,_KoV,_Cmp,_Alloc>::
insert_equal(_II __first, _II __last)
{
@@ -932,32 +983,32 @@ namespace std
insert_equal(*__first);
}
- template<typename _Key, typename _Val, typename _KoV,
- typename _Cmp, typename _Alloc>
+ template<typename _Key, typename _Val, typename _KoV,
+ typename _Cmp, typename _Alloc>
template<class _II>
- void
+ void
_Rb_tree<_Key,_Val,_KoV,_Cmp,_Alloc>::
- insert_unique(_II __first, _II __last)
+ insert_unique(_II __first, _II __last)
{
for ( ; __first != __last; ++__first)
insert_unique(*__first);
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- inline void
+ inline void
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::erase(iterator __position)
{
- _Link_type __y =
+ _Link_type __y =
static_cast<_Link_type>(_Rb_tree_rebalance_for_erase(__position._M_node,
- this->_M_header));
+ this->_M_impl._M_header));
destroy_node(__y);
- --_M_node_count;
+ --_M_impl._M_node_count;
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::size_type
+ typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::size_type
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::erase(const _Key& __x)
{
pair<iterator,iterator> __p = equal_range(__x);
@@ -966,24 +1017,24 @@ namespace std
return __n;
}
- template<typename _Key, typename _Val, typename _KoV,
+ template<typename _Key, typename _Val, typename _KoV,
typename _Compare, typename _Alloc>
- typename _Rb_tree<_Key, _Val, _KoV, _Compare, _Alloc>::_Link_type
+ typename _Rb_tree<_Key, _Val, _KoV, _Compare, _Alloc>::_Link_type
_Rb_tree<_Key,_Val,_KoV,_Compare,_Alloc>::
_M_copy(_Const_Link_type __x, _Link_type __p)
{
// Structural copy. __x and __p must be non-null.
_Link_type __top = _M_clone_node(__x);
__top->_M_parent = __p;
-
- try
+
+ try
{
if (__x->_M_right)
__top->_M_right = _M_copy(_S_right(__x), __top);
__p = __top;
__x = _S_left(__x);
-
- while (__x != 0)
+
+ while (__x != 0)
{
_Link_type __y = _M_clone_node(__x);
__p->_M_left = __y;
@@ -997,18 +1048,18 @@ namespace std
catch(...)
{
_M_erase(__top);
- __throw_exception_again;
+ __throw_exception_again;
}
return __top;
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- void
+ void
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::_M_erase(_Link_type __x)
{
// Erase without rebalancing.
- while (__x != 0)
+ while (__x != 0)
{
_M_erase(_S_right(__x));
_Link_type __y = _S_left(__x);
@@ -1017,9 +1068,9 @@ namespace std
}
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- void
+ void
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
erase(iterator __first, iterator __last)
{
@@ -1029,201 +1080,202 @@ namespace std
while (__first != __last) erase(__first++);
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- void
+ void
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
- erase(const _Key* __first, const _Key* __last)
- {
- while (__first != __last)
- erase(*__first++);
+ erase(const _Key* __first, const _Key* __last)
+ {
+ while (__first != __last)
+ erase(*__first++);
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator
+ typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::find(const _Key& __k)
{
_Link_type __x = _M_begin(); // Current node.
_Link_type __y = _M_end(); // Last node which is not less than __k.
-
- while (__x != 0)
- if (!_M_key_compare(_S_key(__x), __k))
+
+ while (__x != 0)
+ if (!_M_impl._M_key_compare(_S_key(__x), __k))
__y = __x, __x = _S_left(__x);
else
__x = _S_right(__x);
-
- iterator __j = iterator(__y);
- return (__j == end() || _M_key_compare(__k, _S_key(__j._M_node))) ?
- end() : __j;
+
+ iterator __j = iterator(__y);
+ return (__j == end()
+ || _M_impl._M_key_compare(__k, _S_key(__j._M_node))) ? end() : __j;
}
-
- template<typename _Key, typename _Val, typename _KeyOfValue,
+
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::const_iterator
+ typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::const_iterator
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
find(const _Key& __k) const
{
_Const_Link_type __x = _M_begin(); // Current node.
_Const_Link_type __y = _M_end(); // Last node which is not less than __k.
-
- while (__x != 0)
+
+ while (__x != 0)
{
- if (!_M_key_compare(_S_key(__x), __k))
+ if (!_M_impl._M_key_compare(_S_key(__x), __k))
__y = __x, __x = _S_left(__x);
else
__x = _S_right(__x);
- }
- const_iterator __j = const_iterator(__y);
- return (__j == end() || _M_key_compare(__k, _S_key(__j._M_node))) ?
- end() : __j;
+ }
+ const_iterator __j = const_iterator(__y);
+ return (__j == end()
+ || _M_impl._M_key_compare(__k, _S_key(__j._M_node))) ? end() : __j;
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::size_type
+ typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::size_type
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
count(const _Key& __k) const
{
pair<const_iterator, const_iterator> __p = equal_range(__k);
- size_type __n = std::distance(__p.first, __p.second);
+ const size_type __n = std::distance(__p.first, __p.second);
return __n;
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator
+ typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
lower_bound(const _Key& __k)
{
_Link_type __x = _M_begin(); // Current node.
_Link_type __y = _M_end(); // Last node which is not less than __k.
-
- while (__x != 0)
- if (!_M_key_compare(_S_key(__x), __k))
+
+ while (__x != 0)
+ if (!_M_impl._M_key_compare(_S_key(__x), __k))
__y = __x, __x = _S_left(__x);
else
__x = _S_right(__x);
-
+
return iterator(__y);
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::const_iterator
+ typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::const_iterator
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
lower_bound(const _Key& __k) const
{
_Const_Link_type __x = _M_begin(); // Current node.
_Const_Link_type __y = _M_end(); // Last node which is not less than __k.
-
- while (__x != 0)
- if (!_M_key_compare(_S_key(__x), __k))
+
+ while (__x != 0)
+ if (!_M_impl._M_key_compare(_S_key(__x), __k))
__y = __x, __x = _S_left(__x);
else
__x = _S_right(__x);
-
+
return const_iterator(__y);
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator
+ typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
upper_bound(const _Key& __k)
{
_Link_type __x = _M_begin(); // Current node.
_Link_type __y = _M_end(); // Last node which is greater than __k.
-
- while (__x != 0)
- if (_M_key_compare(__k, _S_key(__x)))
+
+ while (__x != 0)
+ if (_M_impl._M_key_compare(__k, _S_key(__x)))
__y = __x, __x = _S_left(__x);
else
__x = _S_right(__x);
-
+
return iterator(__y);
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::const_iterator
+ typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::const_iterator
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
upper_bound(const _Key& __k) const
{
_Const_Link_type __x = _M_begin(); // Current node.
_Const_Link_type __y = _M_end(); // Last node which is greater than __k.
-
- while (__x != 0)
- if (_M_key_compare(__k, _S_key(__x)))
+
+ while (__x != 0)
+ if (_M_impl._M_key_compare(__k, _S_key(__x)))
__y = __x, __x = _S_left(__x);
else
__x = _S_right(__x);
-
+
return const_iterator(__y);
}
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- inline
- pair<typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator,
- typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator>
+ inline
+ pair<typename _Rb_tree<_Key,_Val,_KeyOfValue,
+ _Compare,_Alloc>::iterator,
+ typename _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::iterator>
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::
equal_range(const _Key& __k)
{ return pair<iterator, iterator>(lower_bound(__k), upper_bound(__k)); }
- template<typename _Key, typename _Val, typename _KoV,
+ template<typename _Key, typename _Val, typename _KoV,
typename _Compare, typename _Alloc>
- inline
- pair<typename _Rb_tree<_Key, _Val, _KoV, _Compare, _Alloc>::const_iterator,
- typename _Rb_tree<_Key, _Val, _KoV, _Compare, _Alloc>::const_iterator>
- _Rb_tree<_Key, _Val, _KoV, _Compare, _Alloc>
- ::equal_range(const _Key& __k) const
- {
- return pair<const_iterator,const_iterator>(lower_bound(__k),
- upper_bound(__k));
- }
+ inline
+ pair<typename _Rb_tree<_Key, _Val, _KoV,
+ _Compare, _Alloc>::const_iterator,
+ typename _Rb_tree<_Key, _Val, _KoV, _Compare, _Alloc>::const_iterator>
+ _Rb_tree<_Key, _Val, _KoV, _Compare, _Alloc>::
+ equal_range(const _Key& __k) const
+ { return pair<const_iterator, const_iterator>(lower_bound(__k),
+ upper_bound(__k)); }
unsigned int
_Rb_tree_black_count(const _Rb_tree_node_base* __node,
const _Rb_tree_node_base* __root);
- template<typename _Key, typename _Val, typename _KeyOfValue,
+ template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
- bool
+ bool
_Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::__rb_verify() const
{
- if (_M_node_count == 0 || begin() == end())
- return _M_node_count == 0 && begin() == end() &&
- this->_M_header._M_left == _M_end() &&
- this->_M_header._M_right == _M_end();
-
- unsigned int __len = _Rb_tree_black_count(_M_leftmost(), _M_root());
- for (const_iterator __it = begin(); __it != end(); ++__it)
- {
- _Const_Link_type __x = static_cast<_Const_Link_type>(__it._M_node);
- _Const_Link_type __L = _S_left(__x);
- _Const_Link_type __R = _S_right(__x);
-
- if (__x->_M_color == _S_red)
- if ((__L && __L->_M_color == _S_red)
- || (__R && __R->_M_color == _S_red))
+ if (_M_impl._M_node_count == 0 || begin() == end())
+ return _M_impl._M_node_count == 0 && begin() == end()
+ && this->_M_impl._M_header._M_left == _M_end()
+ && this->_M_impl._M_header._M_right == _M_end();
+
+ unsigned int __len = _Rb_tree_black_count(_M_leftmost(), _M_root());
+ for (const_iterator __it = begin(); __it != end(); ++__it)
+ {
+ _Const_Link_type __x = static_cast<_Const_Link_type>(__it._M_node);
+ _Const_Link_type __L = _S_left(__x);
+ _Const_Link_type __R = _S_right(__x);
+
+ if (__x->_M_color == _S_red)
+ if ((__L && __L->_M_color == _S_red)
+ || (__R && __R->_M_color == _S_red))
+ return false;
+
+ if (__L && _M_impl._M_key_compare(_S_key(__x), _S_key(__L)))
return false;
-
- if (__L && _M_key_compare(_S_key(__x), _S_key(__L)))
- return false;
- if (__R && _M_key_compare(_S_key(__R), _S_key(__x)))
- return false;
-
- if (!__L && !__R && _Rb_tree_black_count(__x, _M_root()) != __len)
- return false;
- }
-
- if (_M_leftmost() != _Rb_tree_node_base::_S_minimum(_M_root()))
- return false;
- if (_M_rightmost() != _Rb_tree_node_base::_S_maximum(_M_root()))
- return false;
- return true;
+ if (__R && _M_impl._M_key_compare(_S_key(__R), _S_key(__x)))
+ return false;
+
+ if (!__L && !__R && _Rb_tree_black_count(__x, _M_root()) != __len)
+ return false;
+ }
+
+ if (_M_leftmost() != _Rb_tree_node_base::_S_minimum(_M_root()))
+ return false;
+ if (_M_rightmost() != _Rb_tree_node_base::_S_maximum(_M_root()))
+ return false;
+ return true;
}
-} // namespace std
+} // namespace std
+
+#endif
-#endif
diff --git a/libstdc++-v3/include/bits/stl_uninitialized.h b/libstdc++-v3/include/bits/stl_uninitialized.h
index e60e24a1c01..f4f8d187f64 100644
--- a/libstdc++-v3/include/bits/stl_uninitialized.h
+++ b/libstdc++-v3/include/bits/stl_uninitialized.h
@@ -1,6 +1,6 @@
// Raw memory manipulators -*- C++ -*-
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -65,32 +65,31 @@
namespace std
{
-
// uninitialized_copy
-
template<typename _InputIterator, typename _ForwardIterator>
- inline _ForwardIterator
+ inline _ForwardIterator
__uninitialized_copy_aux(_InputIterator __first, _InputIterator __last,
_ForwardIterator __result,
__true_type)
{ return std::copy(__first, __last, __result); }
template<typename _InputIterator, typename _ForwardIterator>
- _ForwardIterator
+ inline _ForwardIterator
__uninitialized_copy_aux(_InputIterator __first, _InputIterator __last,
_ForwardIterator __result,
__false_type)
{
_ForwardIterator __cur = __result;
- try {
- for ( ; __first != __last; ++__first, ++__cur)
- std::_Construct(&*__cur, *__first);
- return __cur;
- }
+ try
+ {
+ for ( ; __first != __last; ++__first, ++__cur)
+ std::_Construct(&*__cur, *__first);
+ return __cur;
+ }
catch(...)
{
std::_Destroy(__result, __cur);
- __throw_exception_again;
+ __throw_exception_again;
}
}
@@ -105,11 +104,13 @@ namespace std
*/
template<typename _InputIterator, typename _ForwardIterator>
inline _ForwardIterator
- uninitialized_copy(_InputIterator __first, _InputIterator __last, _ForwardIterator __result)
+ uninitialized_copy(_InputIterator __first, _InputIterator __last,
+ _ForwardIterator __result)
{
typedef typename iterator_traits<_ForwardIterator>::value_type _ValueType;
typedef typename __type_traits<_ValueType>::is_POD_type _Is_POD;
- return std::__uninitialized_copy_aux(__first, __last, __result, _Is_POD());
+ return std::__uninitialized_copy_aux(__first, __last, __result,
+ _Is_POD());
}
inline char*
@@ -119,7 +120,7 @@ namespace std
return __result + (__last - __first);
}
- inline wchar_t*
+ inline wchar_t*
uninitialized_copy(const wchar_t* __first, const wchar_t* __last,
wchar_t* __result)
{
@@ -131,24 +132,26 @@ namespace std
// destructor is trivial.
template<typename _ForwardIterator, typename _Tp>
inline void
- __uninitialized_fill_aux(_ForwardIterator __first, _ForwardIterator __last,
+ __uninitialized_fill_aux(_ForwardIterator __first,
+ _ForwardIterator __last,
const _Tp& __x, __true_type)
{ std::fill(__first, __last, __x); }
template<typename _ForwardIterator, typename _Tp>
void
- __uninitialized_fill_aux(_ForwardIterator __first, _ForwardIterator __last,
+ __uninitialized_fill_aux(_ForwardIterator __first, _ForwardIterator __last,
const _Tp& __x, __false_type)
{
_ForwardIterator __cur = __first;
- try {
- for ( ; __cur != __last; ++__cur)
- std::_Construct(&*__cur, __x);
- }
+ try
+ {
+ for ( ; __cur != __last; ++__cur)
+ std::_Construct(&*__cur, __x);
+ }
catch(...)
{
std::_Destroy(__first, __cur);
- __throw_exception_again;
+ __throw_exception_again;
}
}
@@ -163,7 +166,8 @@ namespace std
*/
template<typename _ForwardIterator, typename _Tp>
inline void
- uninitialized_fill(_ForwardIterator __first, _ForwardIterator __last, const _Tp& __x)
+ uninitialized_fill(_ForwardIterator __first, _ForwardIterator __last,
+ const _Tp& __x)
{
typedef typename iterator_traits<_ForwardIterator>::value_type _ValueType;
typedef typename __type_traits<_ValueType>::is_POD_type _Is_POD;
@@ -176,9 +180,7 @@ namespace std
inline _ForwardIterator
__uninitialized_fill_n_aux(_ForwardIterator __first, _Size __n,
const _Tp& __x, __true_type)
- {
- return std::fill_n(__first, __n, __x);
- }
+ { return std::fill_n(__first, __n, __x); }
template<typename _ForwardIterator, typename _Size, typename _Tp>
_ForwardIterator
@@ -186,15 +188,16 @@ namespace std
const _Tp& __x, __false_type)
{
_ForwardIterator __cur = __first;
- try {
- for ( ; __n > 0; --__n, ++__cur)
- std::_Construct(&*__cur, __x);
- return __cur;
- }
+ try
+ {
+ for ( ; __n > 0; --__n, ++__cur)
+ std::_Construct(&*__cur, __x);
+ return __cur;
+ }
catch(...)
- {
+ {
std::_Destroy(__first, __cur);
- __throw_exception_again;
+ __throw_exception_again;
}
}
@@ -208,7 +211,7 @@ namespace std
* Like fill_n(), but does not require an initialized output range.
*/
template<typename _ForwardIterator, typename _Size, typename _Tp>
- inline _ForwardIterator
+ inline _ForwardIterator
uninitialized_fill_n(_ForwardIterator __first, _Size __n, const _Tp& __x)
{
typedef typename iterator_traits<_ForwardIterator>::value_type _ValueType;
@@ -216,7 +219,7 @@ namespace std
return std::__uninitialized_fill_n_aux(__first, __n, __x, _Is_POD());
}
- // Extensions: __uninitialized_copy_copy, __uninitialized_copy_fill,
+ // Extensions: __uninitialized_copy_copy, __uninitialized_copy_fill,
// __uninitialized_fill_copy.
// __uninitialized_copy_copy
@@ -224,20 +227,25 @@ namespace std
// copies [first2, last2) into
// [result, result + (last1 - first1) + (last2 - first2)).
- template<typename _InputIterator1, typename _InputIterator2, typename _ForwardIterator>
+ template<typename _InputIterator1, typename _InputIterator2,
+ typename _ForwardIterator>
inline _ForwardIterator
- __uninitialized_copy_copy(_InputIterator1 __first1, _InputIterator1 __last1,
- _InputIterator2 __first2, _InputIterator2 __last2,
+ __uninitialized_copy_copy(_InputIterator1 __first1,
+ _InputIterator1 __last1,
+ _InputIterator2 __first2,
+ _InputIterator2 __last2,
_ForwardIterator __result)
{
- _ForwardIterator __mid = std::uninitialized_copy(__first1, __last1, __result);
- try {
- return std::uninitialized_copy(__first2, __last2, __mid);
- }
+ _ForwardIterator __mid = std::uninitialized_copy(__first1, __last1,
+ __result);
+ try
+ {
+ return std::uninitialized_copy(__first2, __last2, __mid);
+ }
catch(...)
- {
+ {
std::_Destroy(__result, __mid);
- __throw_exception_again;
+ __throw_exception_again;
}
}
@@ -245,19 +253,20 @@ namespace std
// Fills [result, mid) with x, and copies [first, last) into
// [mid, mid + (last - first)).
template<typename _ForwardIterator, typename _Tp, typename _InputIterator>
- inline _ForwardIterator
+ inline _ForwardIterator
__uninitialized_fill_copy(_ForwardIterator __result, _ForwardIterator __mid,
- const _Tp& __x,
- _InputIterator __first, _InputIterator __last)
+ const _Tp& __x, _InputIterator __first,
+ _InputIterator __last)
{
std::uninitialized_fill(__result, __mid, __x);
- try {
- return std::uninitialized_copy(__first, __last, __mid);
- }
+ try
+ {
+ return std::uninitialized_copy(__first, __last, __mid);
+ }
catch(...)
{
std::_Destroy(__result, __mid);
- __throw_exception_again;
+ __throw_exception_again;
}
}
@@ -267,17 +276,19 @@ namespace std
template<typename _InputIterator, typename _ForwardIterator, typename _Tp>
inline void
__uninitialized_copy_fill(_InputIterator __first1, _InputIterator __last1,
- _ForwardIterator __first2, _ForwardIterator __last2,
- const _Tp& __x)
+ _ForwardIterator __first2,
+ _ForwardIterator __last2, const _Tp& __x)
{
- _ForwardIterator __mid2 = std::uninitialized_copy(__first1, __last1, __first2);
- try {
- std::uninitialized_fill(__mid2, __last2, __x);
- }
+ _ForwardIterator __mid2 = std::uninitialized_copy(__first1, __last1,
+ __first2);
+ try
+ {
+ std::uninitialized_fill(__mid2, __last2, __x);
+ }
catch(...)
{
std::_Destroy(__first2, __mid2);
- __throw_exception_again;
+ __throw_exception_again;
}
}
diff --git a/libstdc++-v3/include/bits/stl_vector.h b/libstdc++-v3/include/bits/stl_vector.h
index 83d13ad028e..b025393a741 100644
--- a/libstdc++-v3/include/bits/stl_vector.h
+++ b/libstdc++-v3/include/bits/stl_vector.h
@@ -65,7 +65,7 @@
#include <bits/functexcept.h>
#include <bits/concept_check.h>
-namespace __gnu_norm
+namespace _GLIBCXX_STD
{
/**
* @if maint
@@ -74,43 +74,50 @@ namespace __gnu_norm
*/
template<typename _Tp, typename _Alloc>
struct _Vector_base
- : public _Alloc
{
+ struct _Vector_impl
+ : public _Alloc {
+ _Tp* _M_start;
+ _Tp* _M_finish;
+ _Tp* _M_end_of_storage;
+ _Vector_impl (_Alloc const& __a)
+ : _Alloc(__a), _M_start(0), _M_finish(0), _M_end_of_storage(0)
+ { }
+ };
+
public:
typedef _Alloc allocator_type;
allocator_type
- get_allocator() const { return *static_cast<const _Alloc*>(this); }
+ get_allocator() const { return *static_cast<const _Alloc*>(&this->_M_impl); }
+
+ _Vector_base(const allocator_type& __a) : _M_impl(__a)
+ { }
- _Vector_base(const allocator_type& __a)
- : _Alloc(__a), _M_start(0), _M_finish(0), _M_end_of_storage(0) { }
-
_Vector_base(size_t __n, const allocator_type& __a)
- : _Alloc(__a)
+ : _M_impl(__a)
{
- this->_M_start = this->_M_allocate(__n);
- this->_M_finish = this->_M_start;
- this->_M_end_of_storage = this->_M_start + __n;
+ this->_M_impl._M_start = this->_M_allocate(__n);
+ this->_M_impl._M_finish = this->_M_impl._M_start;
+ this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
}
-
- ~_Vector_base()
- { _M_deallocate(this->_M_start,
- this->_M_end_of_storage - this->_M_start); }
+
+ ~_Vector_base()
+ { _M_deallocate(this->_M_impl._M_start,
+ this->_M_impl._M_end_of_storage - this->_M_impl._M_start); }
public:
- _Tp* _M_start;
- _Tp* _M_finish;
- _Tp* _M_end_of_storage;
-
+ _Vector_impl _M_impl;
+
_Tp*
- _M_allocate(size_t __n) { return _Alloc::allocate(__n); }
-
+ _M_allocate(size_t __n) { return _M_impl.allocate(__n); }
+
void
_M_deallocate(_Tp* __p, size_t __n)
- { if (__p) _Alloc::deallocate(__p, __n); }
+ { if (__p) _M_impl.deallocate(__p, __n); }
};
-
-
+
+
/**
* @brief A standard container which offers fixed time access to
* individual elements in any order.
@@ -135,25 +142,25 @@ namespace __gnu_norm
{
// Concept requirements.
__glibcxx_class_requires(_Tp, _SGIAssignableConcept)
-
- typedef _Vector_base<_Tp, _Alloc> _Base;
- typedef vector<_Tp, _Alloc> vector_type;
-
+
+ typedef _Vector_base<_Tp, _Alloc> _Base;
+ typedef vector<_Tp, _Alloc> vector_type;
+
public:
- typedef _Tp value_type;
- typedef value_type* pointer;
- typedef const value_type* const_pointer;
+ typedef _Tp value_type;
+ typedef value_type* pointer;
+ typedef const value_type* const_pointer;
typedef __gnu_cxx::__normal_iterator<pointer, vector_type> iterator;
typedef __gnu_cxx::__normal_iterator<const_pointer, vector_type>
const_iterator;
- typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
- typedef std::reverse_iterator<iterator> reverse_iterator;
- typedef value_type& reference;
- typedef const value_type& const_reference;
- typedef size_t size_type;
- typedef ptrdiff_t difference_type;
- typedef typename _Base::allocator_type allocator_type;
-
+ typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
+ typedef std::reverse_iterator<iterator> reverse_iterator;
+ typedef value_type& reference;
+ typedef const value_type& const_reference;
+ typedef size_t size_type;
+ typedef ptrdiff_t difference_type;
+ typedef typename _Base::allocator_type allocator_type;
+
protected:
/** @if maint
* These two functions and three data members are all from the
@@ -162,10 +169,8 @@ namespace __gnu_norm
*/
using _Base::_M_allocate;
using _Base::_M_deallocate;
- using _Base::_M_start;
- using _Base::_M_finish;
- using _Base::_M_end_of_storage;
-
+ using _Base::_M_impl;
+
public:
// [23.2.4.1] construct/copy/destroy
// (assign() and get_allocator() are also listed in this section)
@@ -175,37 +180,37 @@ namespace __gnu_norm
explicit
vector(const allocator_type& __a = allocator_type())
: _Base(__a) { }
-
+
/**
* @brief Create a %vector with copies of an exemplar element.
* @param n The number of elements to initially create.
* @param value An element to copy.
- *
+ *
* This constructor fills the %vector with @a n copies of @a value.
*/
vector(size_type __n, const value_type& __value,
const allocator_type& __a = allocator_type())
: _Base(__n, __a)
- { this->_M_finish = std::uninitialized_fill_n(this->_M_start,
+ { this->_M_impl._M_finish = std::uninitialized_fill_n(this->_M_impl._M_start,
__n, __value); }
-
+
/**
* @brief Create a %vector with default elements.
* @param n The number of elements to initially create.
- *
+ *
* This constructor fills the %vector with @a n copies of a
* default-constructed element.
*/
explicit
vector(size_type __n)
: _Base(__n, allocator_type())
- { this->_M_finish = std::uninitialized_fill_n(this->_M_start,
+ { this->_M_impl._M_finish = std::uninitialized_fill_n(this->_M_impl._M_start,
__n, value_type()); }
-
+
/**
* @brief %Vector copy constructor.
* @param x A %vector of identical element and allocator types.
- *
+ *
* The newly-created %vector uses a copy of the allocation
* object used by @a x. All the elements of @a x are copied,
* but any extra memory in
@@ -213,15 +218,15 @@ namespace __gnu_norm
*/
vector(const vector& __x)
: _Base(__x.size(), __x.get_allocator())
- { this->_M_finish = std::uninitialized_copy(__x.begin(), __x.end(),
- this->_M_start);
+ { this->_M_impl._M_finish = std::uninitialized_copy(__x.begin(), __x.end(),
+ this->_M_impl._M_start);
}
-
+
/**
* @brief Builds a %vector from a range.
* @param first An input iterator.
* @param last An input iterator.
- *
+ *
* Create a %vector consisting of copies of the elements from
* [first,last).
*
@@ -241,26 +246,26 @@ namespace __gnu_norm
typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
_M_initialize_dispatch(__first, __last, _Integral());
}
-
+
/**
* The dtor only erases the elements, and note that if the
* elements themselves are pointers, the pointed-to memory is
* not touched in any way. Managing the pointer is the user's
* responsibilty.
*/
- ~vector() { std::_Destroy(this->_M_start, this->_M_finish); }
-
+ ~vector() { std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish); }
+
/**
* @brief %Vector assignment operator.
* @param x A %vector of identical element and allocator types.
- *
+ *
* All the elements of @a x are copied, but any extra memory in
* @a x (for fast expansion) will not be copied. Unlike the
* copy constructor, the allocator object is not copied.
*/
vector&
operator=(const vector& __x);
-
+
/**
* @brief Assigns a given value to a %vector.
* @param n Number of elements to be assigned.
@@ -272,9 +277,9 @@ namespace __gnu_norm
* the number of elements assigned. Old data may be lost.
*/
void
- assign(size_type __n, const value_type& __val)
+ assign(size_type __n, const value_type& __val)
{ _M_fill_assign(__n, __val); }
-
+
/**
* @brief Assigns a range to a %vector.
* @param first An input iterator.
@@ -295,10 +300,10 @@ namespace __gnu_norm
typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
_M_assign_dispatch(__first, __last, _Integral());
}
-
+
/// Get a copy of the memory allocation object.
using _Base::get_allocator;
-
+
// iterators
/**
* Returns a read/write iterator that points to the first
@@ -306,32 +311,32 @@ namespace __gnu_norm
* element order.
*/
iterator
- begin() { return iterator (this->_M_start); }
-
+ begin() { return iterator (this->_M_impl._M_start); }
+
/**
* Returns a read-only (constant) iterator that points to the
* first element in the %vector. Iteration is done in ordinary
* element order.
*/
const_iterator
- begin() const { return const_iterator (this->_M_start); }
-
+ begin() const { return const_iterator (this->_M_impl._M_start); }
+
/**
* Returns a read/write iterator that points one past the last
* element in the %vector. Iteration is done in ordinary
* element order.
*/
iterator
- end() { return iterator (this->_M_finish); }
-
+ end() { return iterator (this->_M_impl._M_finish); }
+
/**
* Returns a read-only (constant) iterator that points one past
* the last element in the %vector. Iteration is done in
* ordinary element order.
*/
const_iterator
- end() const { return const_iterator (this->_M_finish); }
-
+ end() const { return const_iterator (this->_M_impl._M_finish); }
+
/**
* Returns a read/write reverse iterator that points to the
* last element in the %vector. Iteration is done in reverse
@@ -339,7 +344,7 @@ namespace __gnu_norm
*/
reverse_iterator
rbegin() { return reverse_iterator(end()); }
-
+
/**
* Returns a read-only (constant) reverse iterator that points
* to the last element in the %vector. Iteration is done in
@@ -347,7 +352,7 @@ namespace __gnu_norm
*/
const_reverse_iterator
rbegin() const { return const_reverse_iterator(end()); }
-
+
/**
* Returns a read/write reverse iterator that points to one
* before the first element in the %vector. Iteration is done
@@ -355,7 +360,7 @@ namespace __gnu_norm
*/
reverse_iterator
rend() { return reverse_iterator(begin()); }
-
+
/**
* Returns a read-only (constant) reverse iterator that points
* to one before the first element in the %vector. Iteration
@@ -363,16 +368,16 @@ namespace __gnu_norm
*/
const_reverse_iterator
rend() const { return const_reverse_iterator(begin()); }
-
+
// [23.2.4.2] capacity
/** Returns the number of elements in the %vector. */
size_type
size() const { return size_type(end() - begin()); }
-
+
/** Returns the size() of the largest possible %vector. */
size_type
max_size() const { return size_type(-1) / sizeof(value_type); }
-
+
/**
* @brief Resizes the %vector to the specified number of elements.
* @param new_size Number of elements the %vector should contain.
@@ -392,7 +397,7 @@ namespace __gnu_norm
else
insert(end(), __new_size - size(), __x);
}
-
+
/**
* @brief Resizes the %vector to the specified number of elements.
* @param new_size Number of elements the %vector should contain.
@@ -405,22 +410,22 @@ namespace __gnu_norm
*/
void
resize(size_type __new_size) { resize(__new_size, value_type()); }
-
+
/**
* Returns the total number of elements that the %vector can
* hold before needing to allocate more memory.
*/
size_type
capacity() const
- { return size_type(const_iterator(this->_M_end_of_storage) - begin()); }
-
+ { return size_type(const_iterator(this->_M_impl._M_end_of_storage) - begin()); }
+
/**
* Returns true if the %vector is empty. (Thus begin() would
* equal end().)
*/
bool
empty() const { return begin() == end(); }
-
+
/**
* @brief Attempt to preallocate enough memory for specified number of
* elements.
@@ -440,7 +445,7 @@ namespace __gnu_norm
*/
void
reserve(size_type __n);
-
+
// element access
/**
* @brief Subscript access to the data contained in the %vector.
@@ -455,7 +460,7 @@ namespace __gnu_norm
*/
reference
operator[](size_type __n) { return *(begin() + __n); }
-
+
/**
* @brief Subscript access to the data contained in the %vector.
* @param n The index of the element for which data should be
@@ -469,7 +474,7 @@ namespace __gnu_norm
*/
const_reference
operator[](size_type __n) const { return *(begin() + __n); }
-
+
protected:
/// @if maint Safety check used only from at(). @endif
void
@@ -478,7 +483,7 @@ namespace __gnu_norm
if (__n >= this->size())
__throw_out_of_range(__N("vector::_M_range_check"));
}
-
+
public:
/**
* @brief Provides access to the data contained in the %vector.
@@ -493,7 +498,7 @@ namespace __gnu_norm
*/
reference
at(size_type __n) { _M_range_check(__n); return (*this)[__n]; }
-
+
/**
* @brief Provides access to the data contained in the %vector.
* @param n The index of the element for which data should be
@@ -507,35 +512,35 @@ namespace __gnu_norm
*/
const_reference
at(size_type __n) const { _M_range_check(__n); return (*this)[__n]; }
-
+
/**
* Returns a read/write reference to the data at the first
* element of the %vector.
*/
reference
front() { return *begin(); }
-
+
/**
* Returns a read-only (constant) reference to the data at the first
* element of the %vector.
*/
const_reference
front() const { return *begin(); }
-
+
/**
* Returns a read/write reference to the data at the last
* element of the %vector.
*/
reference
back() { return *(end() - 1); }
-
+
/**
* Returns a read-only (constant) reference to the data at the
* last element of the %vector.
*/
const_reference
back() const { return *(end() - 1); }
-
+
// [23.2.4.3] modifiers
/**
* @brief Add data to the end of the %vector.
@@ -550,15 +555,15 @@ namespace __gnu_norm
void
push_back(const value_type& __x)
{
- if (this->_M_finish != this->_M_end_of_storage)
+ if (this->_M_impl._M_finish != this->_M_impl._M_end_of_storage)
{
- std::_Construct(this->_M_finish, __x);
- ++this->_M_finish;
+ std::_Construct(this->_M_impl._M_finish, __x);
+ ++this->_M_impl._M_finish;
}
else
_M_insert_aux(end(), __x);
}
-
+
/**
* @brief Removes last element.
*
@@ -571,10 +576,10 @@ namespace __gnu_norm
void
pop_back()
{
- --this->_M_finish;
- std::_Destroy(this->_M_finish);
+ --this->_M_impl._M_finish;
+ std::_Destroy(this->_M_impl._M_finish);
}
-
+
/**
* @brief Inserts given value into %vector before specified iterator.
* @param position An iterator into the %vector.
@@ -605,7 +610,7 @@ namespace __gnu_norm
void
insert(iterator __position, size_type __n, const value_type& __x)
{ _M_fill_insert(__position, __n, __x); }
-
+
/**
* @brief Inserts a range into the %vector.
* @param position An iterator into the %vector.
@@ -622,14 +627,14 @@ namespace __gnu_norm
*/
template<typename _InputIterator>
void
- insert(iterator __position, _InputIterator __first,
+ insert(iterator __position, _InputIterator __first,
_InputIterator __last)
{
// Check whether it's an integral type. If so, it's not an iterator.
typedef typename _Is_integer<_InputIterator>::_Integral _Integral;
_M_insert_dispatch(__position, __first, __last, _Integral());
}
-
+
/**
* @brief Remove element at given position.
* @param position Iterator pointing to element to be erased.
@@ -647,7 +652,7 @@ namespace __gnu_norm
*/
iterator
erase(iterator __position);
-
+
/**
* @brief Remove a range of elements.
* @param first Iterator pointing to the first element to be erased.
@@ -668,7 +673,7 @@ namespace __gnu_norm
*/
iterator
erase(iterator __first, iterator __last);
-
+
/**
* @brief Swaps data with another %vector.
* @param x A %vector of the same element and allocator types.
@@ -681,11 +686,11 @@ namespace __gnu_norm
void
swap(vector& __x)
{
- std::swap(this->_M_start, __x._M_start);
- std::swap(this->_M_finish, __x._M_finish);
- std::swap(this->_M_end_of_storage, __x._M_end_of_storage);
+ std::swap(this->_M_impl._M_start, __x._M_impl._M_start);
+ std::swap(this->_M_impl._M_finish, __x._M_impl._M_finish);
+ std::swap(this->_M_impl._M_end_of_storage, __x._M_impl._M_end_of_storage);
}
-
+
/**
* Erases all the elements. Note that this function only erases the
* elements, and that if the elements themselves are pointers, the
@@ -694,7 +699,7 @@ namespace __gnu_norm
*/
void
clear() { erase(begin(), end()); }
-
+
protected:
/**
* @if maint
@@ -719,21 +724,21 @@ namespace __gnu_norm
__throw_exception_again;
}
}
-
-
+
+
// Internal constructor functions follow.
-
+
// Called by the range constructor to implement [23.1.1]/9
template<typename _Integer>
void
_M_initialize_dispatch(_Integer __n, _Integer __value, __true_type)
{
- this->_M_start = _M_allocate(__n);
- this->_M_end_of_storage = this->_M_start + __n;
- this->_M_finish = std::uninitialized_fill_n(this->_M_start,
+ this->_M_impl._M_start = _M_allocate(__n);
+ this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
+ this->_M_impl._M_finish = std::uninitialized_fill_n(this->_M_impl._M_start,
__n, __value);
}
-
+
// Called by the range constructor to implement [23.1.1]/9
template<typename _InputIterator>
void
@@ -744,7 +749,7 @@ namespace __gnu_norm
_IterCategory;
_M_range_initialize(__first, __last, _IterCategory());
}
-
+
// Called by the second initialize_dispatch above
template<typename _InputIterator>
void
@@ -754,24 +759,24 @@ namespace __gnu_norm
for ( ; __first != __last; ++__first)
push_back(*__first);
}
-
+
// Called by the second initialize_dispatch above
template<typename _ForwardIterator>
- void
+ void
_M_range_initialize(_ForwardIterator __first,
_ForwardIterator __last, forward_iterator_tag)
{
size_type __n = std::distance(__first, __last);
- this->_M_start = this->_M_allocate(__n);
- this->_M_end_of_storage = this->_M_start + __n;
- this->_M_finish = std::uninitialized_copy(__first, __last,
- this->_M_start);
+ this->_M_impl._M_start = this->_M_allocate(__n);
+ this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
+ this->_M_impl._M_finish = std::uninitialized_copy(__first, __last,
+ this->_M_impl._M_start);
}
-
-
+
+
// Internal assign functions follow. The *_aux functions do the actual
// assignment work for the range versions.
-
+
// Called by the range assign to implement [23.1.1]/9
template<typename _Integer>
void
@@ -780,38 +785,38 @@ namespace __gnu_norm
_M_fill_assign(static_cast<size_type>(__n),
static_cast<value_type>(__val));
}
-
+
// Called by the range assign to implement [23.1.1]/9
template<typename _InputIterator>
void
- _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
+ _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
__false_type)
{
typedef typename iterator_traits<_InputIterator>::iterator_category
_IterCategory;
_M_assign_aux(__first, __last, _IterCategory());
}
-
+
// Called by the second assign_dispatch above
template<typename _InputIterator>
- void
+ void
_M_assign_aux(_InputIterator __first, _InputIterator __last,
input_iterator_tag);
-
+
// Called by the second assign_dispatch above
template<typename _ForwardIterator>
- void
+ void
_M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
forward_iterator_tag);
-
+
// Called by assign(n,t), and the range assign when it turns out
// to be the same thing.
void
_M_fill_assign(size_type __n, const value_type& __val);
-
-
+
+
// Internal insert functions follow.
-
+
// Called by the range insert to implement [23.1.1]/9
template<typename _Integer>
void
@@ -821,7 +826,7 @@ namespace __gnu_norm
_M_fill_insert(__pos, static_cast<size_type>(__n),
static_cast<value_type>(__val));
}
-
+
// Called by the range insert to implement [23.1.1]/9
template<typename _InputIterator>
void
@@ -832,30 +837,30 @@ namespace __gnu_norm
_IterCategory;
_M_range_insert(__pos, __first, __last, _IterCategory());
}
-
+
// Called by the second insert_dispatch above
template<typename _InputIterator>
void
- _M_range_insert(iterator __pos, _InputIterator __first,
+ _M_range_insert(iterator __pos, _InputIterator __first,
_InputIterator __last, input_iterator_tag);
-
+
// Called by the second insert_dispatch above
template<typename _ForwardIterator>
void
- _M_range_insert(iterator __pos, _ForwardIterator __first,
+ _M_range_insert(iterator __pos, _ForwardIterator __first,
_ForwardIterator __last, forward_iterator_tag);
-
+
// Called by insert(p,n,x), and the range insert when it turns out to be
// the same thing.
void
_M_fill_insert(iterator __pos, size_type __n, const value_type& __x);
-
+
// Called by insert(p,x)
void
_M_insert_aux(iterator __position, const value_type& __x);
};
-
-
+
+
/**
* @brief Vector equality comparison.
* @param x A %vector.
@@ -873,7 +878,7 @@ namespace __gnu_norm
return __x.size() == __y.size() &&
std::equal(__x.begin(), __x.end(), __y.begin());
}
-
+
/**
* @brief Vector ordering relation.
* @param x A %vector.
@@ -892,36 +897,36 @@ namespace __gnu_norm
return std::lexicographical_compare(__x.begin(), __x.end(),
__y.begin(), __y.end());
}
-
+
/// Based on operator==
template<typename _Tp, typename _Alloc>
inline bool
operator!=(const vector<_Tp,_Alloc>& __x, const vector<_Tp,_Alloc>& __y)
{ return !(__x == __y); }
-
+
/// Based on operator<
template<typename _Tp, typename _Alloc>
inline bool
operator>(const vector<_Tp,_Alloc>& __x, const vector<_Tp,_Alloc>& __y)
{ return __y < __x; }
-
+
/// Based on operator<
template<typename _Tp, typename _Alloc>
inline bool
operator<=(const vector<_Tp,_Alloc>& __x, const vector<_Tp,_Alloc>& __y)
{ return !(__y < __x); }
-
+
/// Based on operator<
template<typename _Tp, typename _Alloc>
inline bool
operator>=(const vector<_Tp,_Alloc>& __x, const vector<_Tp,_Alloc>& __y)
{ return !(__x < __y); }
-
+
/// See std::vector::swap().
template<typename _Tp, typename _Alloc>
inline void
swap(vector<_Tp,_Alloc>& __x, vector<_Tp,_Alloc>& __y)
{ __x.swap(__y); }
-} // namespace __gnu_norm
+} // namespace std
#endif /* _VECTOR_H */
diff --git a/libstdc++-v3/include/bits/stream_iterator.h b/libstdc++-v3/include/bits/stream_iterator.h
index cc67505dd69..fa11bd6b28f 100644
--- a/libstdc++-v3/include/bits/stream_iterator.h
+++ b/libstdc++-v3/include/bits/stream_iterator.h
@@ -1,6 +1,6 @@
// Stream iterators
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -41,10 +41,11 @@
namespace std
{
- template<typename _Tp, typename _CharT = char,
- typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
- class istream_iterator
- : public iterator<input_iterator_tag, _Tp, _Dist, const _Tp*, const _Tp&>
+ /// Provides input iterator semantics for streams.
+ template<typename _Tp, typename _CharT = char,
+ typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
+ class istream_iterator
+ : public iterator<input_iterator_tag, _Tp, _Dist, const _Tp*, const _Tp&>
{
public:
typedef _CharT char_type;
@@ -52,23 +53,28 @@ namespace std
typedef basic_istream<_CharT, _Traits> istream_type;
private:
- istream_type* _M_stream;
- _Tp _M_value;
- bool _M_ok;
+ istream_type* _M_stream;
+ _Tp _M_value;
+ bool _M_ok;
- public:
- istream_iterator() : _M_stream(0), _M_ok(false) {}
-
- istream_iterator(istream_type& __s) : _M_stream(&__s) { _M_read(); }
-
- istream_iterator(const istream_iterator& __obj)
- : _M_stream(__obj._M_stream), _M_value(__obj._M_value),
- _M_ok(__obj._M_ok)
+ public:
+ /// Construct end of input stream iterator.
+ istream_iterator()
+ : _M_stream(0), _M_ok(false) {}
+
+ /// Construct start of input stream iterator.
+ istream_iterator(istream_type& __s)
+ : _M_stream(&__s)
+ { _M_read(); }
+
+ istream_iterator(const istream_iterator& __obj)
+ : _M_stream(__obj._M_stream), _M_value(__obj._M_value),
+ _M_ok(__obj._M_ok)
{ }
const _Tp&
- operator*() const
- {
+ operator*() const
+ {
__glibcxx_requires_cond(_M_ok,
_M_message(__gnu_debug::__msg_deref_istream)
._M_iterator(*this));
@@ -78,83 +84,112 @@ namespace std
const _Tp*
operator->() const { return &(operator*()); }
- istream_iterator&
- operator++()
- {
+ istream_iterator&
+ operator++()
+ {
__glibcxx_requires_cond(_M_ok,
_M_message(__gnu_debug::__msg_inc_istream)
._M_iterator(*this));
- _M_read();
- return *this;
+ _M_read();
+ return *this;
}
- istream_iterator
- operator++(int)
+ istream_iterator
+ operator++(int)
{
__glibcxx_requires_cond(_M_ok,
_M_message(__gnu_debug::__msg_inc_istream)
- ._M_iterator(*this));
+ ._M_iterator(*this));
istream_iterator __tmp = *this;
_M_read();
return __tmp;
}
- bool
+ bool
_M_equal(const istream_iterator& __x) const
- { return (_M_ok == __x._M_ok) && (!_M_ok || _M_stream == __x._M_stream);}
+ { return (_M_ok == __x._M_ok) && (!_M_ok || _M_stream == __x._M_stream); }
- private:
- void
- _M_read()
+ private:
+ void
+ _M_read()
{
_M_ok = (_M_stream && *_M_stream) ? true : false;
- if (_M_ok)
+ if (_M_ok)
{
*_M_stream >> _M_value;
_M_ok = *_M_stream ? true : false;
}
}
};
-
+
+ /// Return true if x and y are both end or not end, or x and y are the same.
template<typename _Tp, typename _CharT, typename _Traits, typename _Dist>
- inline bool
+ inline bool
operator==(const istream_iterator<_Tp, _CharT, _Traits, _Dist>& __x,
- const istream_iterator<_Tp, _CharT, _Traits, _Dist>& __y)
+ const istream_iterator<_Tp, _CharT, _Traits, _Dist>& __y)
{ return __x._M_equal(__y); }
+ /// Return false if x and y are both end or not end, or x and y are the same.
template <class _Tp, class _CharT, class _Traits, class _Dist>
- inline bool
+ inline bool
operator!=(const istream_iterator<_Tp, _CharT, _Traits, _Dist>& __x,
- const istream_iterator<_Tp, _CharT, _Traits, _Dist>& __y)
+ const istream_iterator<_Tp, _CharT, _Traits, _Dist>& __y)
{ return !__x._M_equal(__y); }
-
- template<typename _Tp, typename _CharT = char,
+ /**
+ * @brief Provides output iterator semantics for streams.
+ *
+ * This class provides an iterator to write to an ostream. The type Tp is
+ * the only type written by this iterator and there must be an
+ * operator<<(Tp) defined.
+ *
+ * @param Tp The type to write to the ostream.
+ * @param CharT The ostream char_type.
+ * @param Traits The ostream char_traits.
+ */
+ template<typename _Tp, typename _CharT = char,
typename _Traits = char_traits<_CharT> >
- class ostream_iterator
- : public iterator<output_iterator_tag, void, void, void, void>
+ class ostream_iterator
+ : public iterator<output_iterator_tag, void, void, void, void>
{
public:
+ //@{
+ /// Public typedef
typedef _CharT char_type;
typedef _Traits traits_type;
typedef basic_ostream<_CharT, _Traits> ostream_type;
+ //@}
private:
- ostream_type* _M_stream;
- const _CharT* _M_string;
+ ostream_type* _M_stream;
+ const _CharT* _M_string;
public:
+ /// Construct from an ostream.
ostream_iterator(ostream_type& __s) : _M_stream(&__s), _M_string(0) {}
- ostream_iterator(ostream_type& __s, const _CharT* __c)
+ /**
+ * Construct from an ostream.
+ *
+ * The delimiter string @a c is written to the stream after every Tp
+ * written to the stream. The delimiter is not copied, and thus must
+ * not be destroyed while this iterator is in use.
+ *
+ * @param s Underlying ostream to write to.
+ * @param c CharT delimiter string to insert.
+ */
+ ostream_iterator(ostream_type& __s, const _CharT* __c)
: _M_stream(&__s), _M_string(__c) { }
+ /// Copy constructor.
ostream_iterator(const ostream_iterator& __obj)
: _M_stream(__obj._M_stream), _M_string(__obj._M_string) { }
- ostream_iterator&
- operator=(const _Tp& __value)
- {
+ /// Writes @a value to underlying ostream using operator<<. If
+ /// constructed with delimiter string, writes delimiter to ostream.
+ ostream_iterator&
+ operator=(const _Tp& __value)
+ {
__glibcxx_requires_cond(_M_stream != 0,
_M_message(__gnu_debug::__msg_output_ostream)
._M_iterator(*this));
@@ -162,15 +197,18 @@ namespace std
if (_M_string) *_M_stream << _M_string;
return *this;
}
-
- ostream_iterator&
- operator*() { return *this; }
-
- ostream_iterator&
- operator++() { return *this; }
-
- ostream_iterator&
- operator++(int) { return *this; }
+
+ ostream_iterator&
+ operator*()
+ { return *this; }
+
+ ostream_iterator&
+ operator++()
+ { return *this; }
+
+ ostream_iterator&
+ operator++(int)
+ { return *this; }
};
} // namespace std
#endif
diff --git a/libstdc++-v3/include/bits/streambuf.tcc b/libstdc++-v3/include/bits/streambuf.tcc
index 4cc9bf1590a..554d0617899 100644
--- a/libstdc++-v3/include/bits/streambuf.tcc
+++ b/libstdc++-v3/include/bits/streambuf.tcc
@@ -37,7 +37,7 @@
#pragma GCC system_header
-namespace std
+namespace std
{
template<typename _CharT, typename _Traits>
streamsize
@@ -57,10 +57,10 @@ namespace std
__s += __len;
this->gbump(__len);
}
-
+
if (__ret < __n)
{
- const int_type __c = this->uflow();
+ const int_type __c = this->uflow();
if (!traits_type::eq_int_type(__c, traits_type::eof()))
{
traits_type::assign(*__s++, traits_type::to_char_type(__c));
@@ -114,7 +114,7 @@ namespace std
template<typename _CharT, typename _Traits>
streamsize
__copy_streambufs(basic_streambuf<_CharT, _Traits>* __sbin,
- basic_streambuf<_CharT, _Traits>* __sbout)
+ basic_streambuf<_CharT, _Traits>* __sbout)
{
streamsize __ret = 0;
typename _Traits::int_type __c = __sbin->sgetc();
@@ -130,7 +130,7 @@ namespace std
break;
__c = __sbin->underflow();
}
- else
+ else
{
__c = __sbout->sputc(_Traits::to_char_type(__c));
if (_Traits::eq_int_type(__c, _Traits::eof()))
@@ -143,21 +143,21 @@ namespace std
}
// Inhibit implicit instantiations for required instantiations,
- // which are defined via explicit instantiations elsewhere.
+ // which are defined via explicit instantiations elsewhere.
// NB: This syntax is a GNU extension.
#if _GLIBCXX_EXTERN_TEMPLATE
extern template class basic_streambuf<char>;
extern template
streamsize
- __copy_streambufs(basic_streambuf<char>*, basic_streambuf<char>*);
+ __copy_streambufs(basic_streambuf<char>*, basic_streambuf<char>*);
#ifdef _GLIBCXX_USE_WCHAR_T
extern template class basic_streambuf<wchar_t>;
extern template
streamsize
- __copy_streambufs(basic_streambuf<wchar_t>*, basic_streambuf<wchar_t>*);
+ __copy_streambufs(basic_streambuf<wchar_t>*, basic_streambuf<wchar_t>*);
#endif
#endif
} // namespace std
-#endif
+#endif
diff --git a/libstdc++-v3/include/bits/streambuf_iterator.h b/libstdc++-v3/include/bits/streambuf_iterator.h
index 3c393e3f955..970933578c7 100644
--- a/libstdc++-v3/include/bits/streambuf_iterator.h
+++ b/libstdc++-v3/include/bits/streambuf_iterator.h
@@ -1,6 +1,6 @@
// Streambuf iterators
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -46,116 +46,127 @@
namespace std
{
// 24.5.3 Template class istreambuf_iterator
+ /// Provides input iterator semantics for streambufs.
template<typename _CharT, typename _Traits>
class istreambuf_iterator
: public iterator<input_iterator_tag, _CharT, typename _Traits::off_type,
- _CharT*, _CharT&>
+ _CharT*, _CharT&>
{
public:
// Types:
- typedef _CharT char_type;
- typedef _Traits traits_type;
- typedef typename _Traits::int_type int_type;
- typedef basic_streambuf<_CharT, _Traits> streambuf_type;
- typedef basic_istream<_CharT, _Traits> istream_type;
+ //@{
+ /// Public typedefs
+ typedef _CharT char_type;
+ typedef _Traits traits_type;
+ typedef typename _Traits::int_type int_type;
+ typedef basic_streambuf<_CharT, _Traits> streambuf_type;
+ typedef basic_istream<_CharT, _Traits> istream_type;
+ //@}
private:
- // 24.5.3 istreambuf_iterator
- // p 1
+ // 24.5.3 istreambuf_iterator
+ // p 1
// If the end of stream is reached (streambuf_type::sgetc()
// returns traits_type::eof()), the iterator becomes equal to
// the "end of stream" iterator value.
// NB: This implementation assumes the "end of stream" value
// is EOF, or -1.
- mutable streambuf_type* _M_sbuf;
- int_type _M_c;
+ mutable streambuf_type* _M_sbuf;
+ int_type _M_c;
public:
- istreambuf_iterator() throw()
+ /// Construct end of input stream iterator.
+ istreambuf_iterator() throw()
: _M_sbuf(0), _M_c(traits_type::eof()) { }
-
+
+ /// Construct start of input stream iterator.
istreambuf_iterator(istream_type& __s) throw()
: _M_sbuf(__s.rdbuf()), _M_c(traits_type::eof()) { }
+ /// Construct start of streambuf iterator.
istreambuf_iterator(streambuf_type* __s) throw()
: _M_sbuf(__s), _M_c(traits_type::eof()) { }
-
- // NB: The result of operator*() on an end of stream is undefined.
- char_type
+
+ /// Return the current character pointed to by iterator. This returns
+ /// streambuf.sgetc(). It cannot be assigned. NB: The result of
+ /// operator*() on an end of stream is undefined.
+ char_type
operator*() const
- {
+ {
#ifdef _GLIBCXX_DEBUG_PEDANTIC
// Dereferencing a past-the-end istreambuf_iterator is a
// libstdc++ extension
__glibcxx_requires_cond(!_M_at_eof(),
_M_message(__gnu_debug::__msg_deref_istreambuf)
- ._M_iterator(*this));
+ ._M_iterator(*this));
#endif
- return traits_type::to_char_type(_M_get());
+ return traits_type::to_char_type(_M_get());
}
-
- istreambuf_iterator&
+
+ /// Advance the iterator. Calls streambuf.sbumpc().
+ istreambuf_iterator&
operator++()
- {
+ {
__glibcxx_requires_cond(!_M_at_eof(),
_M_message(__gnu_debug::__msg_inc_istreambuf)
- ._M_iterator(*this));
+ ._M_iterator(*this));
const int_type __eof = traits_type::eof();
if (_M_sbuf && traits_type::eq_int_type(_M_sbuf->sbumpc(), __eof))
_M_sbuf = 0;
else
_M_c = __eof;
- return *this;
+ return *this;
}
+ /// Advance the iterator. Calls streambuf.sbumpc().
istreambuf_iterator
operator++(int)
{
__glibcxx_requires_cond(!_M_at_eof(),
_M_message(__gnu_debug::__msg_inc_istreambuf)
- ._M_iterator(*this));
+ ._M_iterator(*this));
const int_type __eof = traits_type::eof();
istreambuf_iterator __old = *this;
if (_M_sbuf
- && traits_type::eq_int_type((__old._M_c = _M_sbuf->sbumpc()),
+ && traits_type::eq_int_type((__old._M_c = _M_sbuf->sbumpc()),
__eof))
_M_sbuf = 0;
else
_M_c = __eof;
- return __old;
+ return __old;
}
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 110 istreambuf_iterator::equal not const
// NB: there is also number 111 (NAD, Future) pending on this function.
- bool
+ /// Return true both iterators are end or both are not end.
+ bool
equal(const istreambuf_iterator& __b) const
{
- const int_type __eof = traits_type::eof();
- bool __thiseof = _M_at_eof();
- bool __beof = __b._M_at_eof();
+ const bool __thiseof = _M_at_eof();
+ const bool __beof = __b._M_at_eof();
return (__thiseof && __beof || (!__thiseof && !__beof));
}
private:
- int_type
+ int_type
_M_get() const
- {
+ {
const int_type __eof = traits_type::eof();
int_type __ret = __eof;
if (_M_sbuf)
- {
+ {
if (!traits_type::eq_int_type(_M_c, __eof))
__ret = _M_c;
- else
- if (traits_type::eq_int_type((__ret = _M_sbuf->sgetc()), __eof))
- _M_sbuf = 0;
+ else if (traits_type::eq_int_type((__ret = _M_sbuf->sgetc()),
+ __eof))
+ _M_sbuf = 0;
}
return __ret;
}
- bool
+ bool
_M_at_eof() const
{
const int_type __eof = traits_type::eof();
@@ -164,69 +175,81 @@ namespace std
};
template<typename _CharT, typename _Traits>
- inline bool
+ inline bool
operator==(const istreambuf_iterator<_CharT, _Traits>& __a,
const istreambuf_iterator<_CharT, _Traits>& __b)
{ return __a.equal(__b); }
template<typename _CharT, typename _Traits>
- inline bool
+ inline bool
operator!=(const istreambuf_iterator<_CharT, _Traits>& __a,
const istreambuf_iterator<_CharT, _Traits>& __b)
{ return !__a.equal(__b); }
+ /// Provides output iterator semantics for streambufs.
template<typename _CharT, typename _Traits>
class ostreambuf_iterator
: public iterator<output_iterator_tag, void, void, void, void>
{
public:
// Types:
+ //@{
+ /// Public typedefs
typedef _CharT char_type;
typedef _Traits traits_type;
typedef basic_streambuf<_CharT, _Traits> streambuf_type;
typedef basic_ostream<_CharT, _Traits> ostream_type;
+ //@}
private:
- streambuf_type* _M_sbuf;
- bool _M_failed;
+ streambuf_type* _M_sbuf;
+ bool _M_failed;
public:
+ /// Construct output iterator from ostream.
ostreambuf_iterator(ostream_type& __s) throw ()
: _M_sbuf(__s.rdbuf()), _M_failed(!_M_sbuf) { }
-
+
+ /// Construct output iterator from streambuf.
ostreambuf_iterator(streambuf_type* __s) throw ()
: _M_sbuf(__s), _M_failed(!_M_sbuf) { }
- ostreambuf_iterator&
+ /// Write character to streambuf. Calls streambuf.sputc().
+ ostreambuf_iterator&
operator=(_CharT __c)
{
- if (!_M_failed &&
+ if (!_M_failed &&
_Traits::eq_int_type(_M_sbuf->sputc(__c), _Traits::eof()))
_M_failed = true;
return *this;
}
- ostreambuf_iterator&
+ /// Return *this.
+ ostreambuf_iterator&
operator*()
{ return *this; }
- ostreambuf_iterator&
+ /// Return *this.
+ ostreambuf_iterator&
operator++(int)
{ return *this; }
- ostreambuf_iterator&
+ /// Return *this.
+ ostreambuf_iterator&
operator++()
{ return *this; }
- bool
+ /// Return true if previous operator=() failed.
+ bool
failed() const throw()
{ return _M_failed; }
- ostreambuf_iterator&
+ ostreambuf_iterator&
_M_put(const _CharT* __ws, streamsize __len)
{
if (__builtin_expect(!_M_failed, true)
- && __builtin_expect(this->_M_sbuf->sputn(__ws, __len) != __len, false))
+ && __builtin_expect(this->_M_sbuf->sputn(__ws, __len) != __len,
+ false))
_M_failed = true;
return *this;
}
diff --git a/libstdc++-v3/include/bits/stringfwd.h b/libstdc++-v3/include/bits/stringfwd.h
index 75775804a1b..99d3ce3a534 100644
--- a/libstdc++-v3/include/bits/stringfwd.h
+++ b/libstdc++-v3/include/bits/stringfwd.h
@@ -45,16 +45,16 @@
namespace std
{
- template<typename _Alloc>
+ template<typename _Alloc>
class allocator;
template<class _CharT>
struct char_traits;
- template<typename _CharT, typename _Traits = char_traits<_CharT>,
+ template<typename _CharT, typename _Traits = char_traits<_CharT>,
typename _Alloc = allocator<_CharT> >
class basic_string;
-
+
template<> struct char_traits<char>;
typedef basic_string<char> string;
diff --git a/libstdc++-v3/include/bits/type_traits.h b/libstdc++-v3/include/bits/type_traits.h
index 80f7e39575e..9b91e5c5cdf 100644
--- a/libstdc++-v3/include/bits/type_traits.h
+++ b/libstdc++-v3/include/bits/type_traits.h
@@ -1,6 +1,6 @@
// Type traits implementation -*- C++ -*-
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -74,10 +74,10 @@ attain their correct values by one of these means:
EXAMPLE:
//Copy an array of elements which have non-trivial copy constructors
-template <class _Tp> void
+template <class _Tp> void
copy(_Tp* __source,_Tp* __destination,int __n,__false_type);
//Copy an array of elements which have trivial copy constructors. Use memcpy.
-template <class _Tp> void
+template <class _Tp> void
copy(_Tp* __source,_Tp* __destination,int __n,__true_type);
//Copy an array of any type by using the most efficient copy mechanism
@@ -91,16 +91,17 @@ struct __true_type {};
struct __false_type {};
template <class _Tp>
-struct __type_traits {
- typedef __true_type this_dummy_member_must_be_first;
- /* Do not remove this member. It informs a compiler which
- automatically specializes __type_traits that this
- __type_traits template is special. It just makes sure that
- things work if an implementation is using a template
- called __type_traits for something unrelated. */
+ struct __type_traits
+ {
+ typedef __true_type this_dummy_member_must_be_first;
+ /* Do not remove this member. It informs a compiler which
+ automatically specializes __type_traits that this
+ __type_traits template is special. It just makes sure that
+ things work if an implementation is using a template
+ called __type_traits for something unrelated. */
/* The following restrictions should be observed for the sake of
- compilers which automatically produce type specific specializations
+ compilers which automatically produce type specific specializations
of this class:
- You may reorder the members below if you wish
- You may remove any of the members below if you wish
@@ -108,229 +109,294 @@ struct __type_traits {
name change in the compiler
- Members you add will be treated like regular members unless
you add the appropriate support in the compiler. */
-
- typedef __false_type has_trivial_default_constructor;
- typedef __false_type has_trivial_copy_constructor;
- typedef __false_type has_trivial_assignment_operator;
- typedef __false_type has_trivial_destructor;
- typedef __false_type is_POD_type;
-};
+
+ typedef __false_type has_trivial_default_constructor;
+ typedef __false_type has_trivial_copy_constructor;
+ typedef __false_type has_trivial_assignment_operator;
+ typedef __false_type has_trivial_destructor;
+ typedef __false_type is_POD_type;
+ };
// Provide some specializations.
-template<> struct __type_traits<bool> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<char> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<signed char> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<unsigned char> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<wchar_t> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<short> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<unsigned short> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<int> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<unsigned int> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<long> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<unsigned long> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<long long> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<unsigned long long> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<float> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<double> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-template<> struct __type_traits<long double> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
+template<>
+ struct __type_traits<bool>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<char>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<signed char>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<unsigned char>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<wchar_t>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<short>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<unsigned short>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<int>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<unsigned int>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<long>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<unsigned long>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<long long>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<unsigned long long>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<float>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<double>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+template<>
+ struct __type_traits<long double>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
template <class _Tp>
-struct __type_traits<_Tp*> {
- typedef __true_type has_trivial_default_constructor;
- typedef __true_type has_trivial_copy_constructor;
- typedef __true_type has_trivial_assignment_operator;
- typedef __true_type has_trivial_destructor;
- typedef __true_type is_POD_type;
-};
-
-
-// The following could be written in terms of numeric_limits.
+ struct __type_traits<_Tp*>
+ {
+ typedef __true_type has_trivial_default_constructor;
+ typedef __true_type has_trivial_copy_constructor;
+ typedef __true_type has_trivial_assignment_operator;
+ typedef __true_type has_trivial_destructor;
+ typedef __true_type is_POD_type;
+ };
+
+// The following could be written in terms of numeric_limits.
// We're doing it separately to reduce the number of dependencies.
-template <class _Tp> struct _Is_integer {
- typedef __false_type _Integral;
-};
-
-template<> struct _Is_integer<bool> {
- typedef __true_type _Integral;
-};
-
-template<> struct _Is_integer<char> {
- typedef __true_type _Integral;
-};
-
-template<> struct _Is_integer<signed char> {
- typedef __true_type _Integral;
-};
-
-template<> struct _Is_integer<unsigned char> {
- typedef __true_type _Integral;
-};
-
-template<> struct _Is_integer<wchar_t> {
- typedef __true_type _Integral;
-};
-
-template<> struct _Is_integer<short> {
- typedef __true_type _Integral;
-};
-
-template<> struct _Is_integer<unsigned short> {
- typedef __true_type _Integral;
-};
-
-template<> struct _Is_integer<int> {
- typedef __true_type _Integral;
-};
-
-template<> struct _Is_integer<unsigned int> {
- typedef __true_type _Integral;
-};
-
-template<> struct _Is_integer<long> {
- typedef __true_type _Integral;
-};
-
-template<> struct _Is_integer<unsigned long> {
- typedef __true_type _Integral;
-};
-
-template<> struct _Is_integer<long long> {
- typedef __true_type _Integral;
-};
-
-template<> struct _Is_integer<unsigned long long> {
- typedef __true_type _Integral;
-};
-
-template<typename _Tp> struct _Is_normal_iterator {
- typedef __false_type _Normal;
-};
+template <class _Tp>
+ struct _Is_integer
+ {
+ typedef __false_type _Integral;
+ };
+
+template<>
+ struct _Is_integer<bool>
+ {
+ typedef __true_type _Integral;
+ };
+
+template<>
+ struct _Is_integer<char>
+ {
+ typedef __true_type _Integral;
+ };
+
+template<>
+ struct _Is_integer<signed char>
+ {
+ typedef __true_type _Integral;
+ };
+
+template<>
+ struct _Is_integer<unsigned char>
+ {
+ typedef __true_type _Integral;
+ };
+
+template<>
+ struct _Is_integer<wchar_t>
+ {
+ typedef __true_type _Integral;
+ };
+
+template<>
+ struct _Is_integer<short>
+ {
+ typedef __true_type _Integral;
+ };
+
+template<>
+ struct _Is_integer<unsigned short>
+ {
+ typedef __true_type _Integral;
+ };
+
+template<>
+ struct _Is_integer<int>
+ {
+ typedef __true_type _Integral;
+ };
+
+template<>
+ struct _Is_integer<unsigned int>
+ {
+ typedef __true_type _Integral;
+ };
+
+template<>
+ struct _Is_integer<long>
+ {
+ typedef __true_type _Integral;
+ };
+
+template<>
+ struct _Is_integer<unsigned long>
+ {
+ typedef __true_type _Integral;
+ };
+
+template<>
+ struct _Is_integer<long long>
+ {
+ typedef __true_type _Integral;
+ };
+
+template<>
+ struct _Is_integer<unsigned long long>
+ {
+ typedef __true_type _Integral;
+ };
+
+template<typename _Tp>
+ struct _Is_normal_iterator
+ {
+ typedef __false_type _Normal;
+ };
// Forward declaration hack, should really include this from somewhere.
namespace __gnu_cxx
{
- template<typename _Iterator, typename _Container> class __normal_iterator;
+ template<typename _Iterator, typename _Container>
+ class __normal_iterator;
}
template<typename _Iterator, typename _Container>
-struct _Is_normal_iterator< __gnu_cxx::__normal_iterator<_Iterator, _Container> > {
- typedef __true_type _Normal;
-};
+ struct _Is_normal_iterator< __gnu_cxx::__normal_iterator<_Iterator,
+ _Container> >
+ {
+ typedef __true_type _Normal;
+ };
#endif /* _TYPE_TRAITS_H */
diff --git a/libstdc++-v3/include/bits/valarray_after.h b/libstdc++-v3/include/bits/valarray_after.h
index 2506a4bdde4..b74cab5dbac 100644
--- a/libstdc++-v3/include/bits/valarray_after.h
+++ b/libstdc++-v3/include/bits/valarray_after.h
@@ -41,35 +41,35 @@
namespace std
{
-
+
//
// gslice_array closure.
//
template<class _Dom> class _GBase {
public:
typedef typename _Dom::value_type value_type;
-
+
_GBase (const _Dom& __e, const valarray<size_t>& __i)
: _M_expr (__e), _M_index(__i) {}
value_type operator[] (size_t __i) const
{ return _M_expr[_M_index[__i]]; }
size_t size () const { return _M_index.size(); }
-
+
private:
const _Dom& _M_expr;
const valarray<size_t>& _M_index;
};
-
+
template<typename _Tp> class _GBase<_Array<_Tp> > {
public:
typedef _Tp value_type;
-
+
_GBase (_Array<_Tp> __a, const valarray<size_t>& __i)
: _M_array (__a), _M_index(__i) {}
value_type operator[] (size_t __i) const
{ return _M_array._M_data[_M_index[__i]]; }
size_t size () const { return _M_index.size(); }
-
+
private:
const _Array<_Tp> _M_array;
const valarray<size_t>& _M_index;
@@ -104,9 +104,9 @@ namespace std
value_type operator[] (size_t __i) const
{ return _M_expr[_M_index[__i]]; }
size_t size() const { return _M_index.size(); }
-
+
private:
- const _Dom& _M_expr;
+ const _Dom& _M_expr;
const valarray<size_t>& _M_index;
};
@@ -129,23 +129,23 @@ namespace std
//
// class _Expr
- //
- template<class _Clos, typename _Tp>
+ //
+ template<class _Clos, typename _Tp>
class _Expr
{
public:
typedef _Tp value_type;
-
+
_Expr(const _Clos&);
-
+
const _Clos& operator()() const;
-
+
value_type operator[](size_t) const;
valarray<value_type> operator[](slice) const;
valarray<value_type> operator[](const gslice&) const;
valarray<value_type> operator[](const valarray<bool>&) const;
valarray<value_type> operator[](const valarray<size_t>&) const;
-
+
_Expr<_UnClos<__unary_plus,std::_Expr,_Clos>, value_type>
operator+() const;
@@ -160,7 +160,7 @@ namespace std
size_t size() const;
value_type sum() const;
-
+
valarray<value_type> shift(int) const;
valarray<value_type> cshift(int) const;
@@ -169,15 +169,15 @@ namespace std
valarray<value_type> apply(value_type (*)(const value_type&)) const;
valarray<value_type> apply(value_type (*)(value_type)) const;
-
+
private:
const _Clos _M_closure;
};
-
+
template<class _Clos, typename _Tp>
inline
_Expr<_Clos,_Tp>::_Expr(const _Clos& __c) : _M_closure(__c) {}
-
+
template<class _Clos, typename _Tp>
inline const _Clos&
_Expr<_Clos,_Tp>::operator()() const
@@ -192,22 +192,22 @@ namespace std
inline valarray<_Tp>
_Expr<_Clos,_Tp>::operator[](slice __s) const
{ return _M_closure[__s]; }
-
+
template<class _Clos, typename _Tp>
inline valarray<_Tp>
_Expr<_Clos,_Tp>::operator[](const gslice& __gs) const
{ return _M_closure[__gs]; }
-
+
template<class _Clos, typename _Tp>
inline valarray<_Tp>
_Expr<_Clos,_Tp>::operator[](const valarray<bool>& __m) const
{ return _M_closure[__m]; }
-
+
template<class _Clos, typename _Tp>
inline valarray<_Tp>
_Expr<_Clos,_Tp>::operator[](const valarray<size_t>& __i) const
{ return _M_closure[__i]; }
-
+
template<class _Clos, typename _Tp>
inline size_t
_Expr<_Clos,_Tp>::size() const { return _M_closure.size (); }
@@ -226,7 +226,7 @@ namespace std
inline valarray<_Tp>
_Expr<_Clos, _Tp>::apply(_Tp __f(const _Tp&)) const
{ return valarray<_Tp>(_M_closure).apply(__f); }
-
+
template<class _Clos, typename _Tp>
inline valarray<_Tp>
_Expr<_Clos, _Tp>::apply(_Tp __f(_Tp)) const
@@ -238,9 +238,9 @@ namespace std
_Expr<_Clos,_Tp>::sum() const
{
size_t __n = _M_closure.size();
- if (__n == 0)
+ if (__n == 0)
return _Tp();
- else
+ else
{
_Tp __s = _M_closure[--__n];
while (__n != 0)
@@ -258,7 +258,7 @@ namespace std
inline _Tp
_Expr<_Clos, _Tp>::max() const
{ return __valarray_max(_M_closure); }
-
+
template<class _Dom, typename _Tp>
inline _Expr<_UnClos<__logical_not,_Expr,_Dom>, bool>
_Expr<_Dom,_Tp>::operator!() const
@@ -386,14 +386,14 @@ operator _Op(const valarray<typename _Dom::value_type>& __v, \
_DEFINE_EXPR_UNARY_FUNCTION(abs)
_DEFINE_EXPR_UNARY_FUNCTION(cos)
_DEFINE_EXPR_UNARY_FUNCTION(acos)
- _DEFINE_EXPR_UNARY_FUNCTION(cosh)
+ _DEFINE_EXPR_UNARY_FUNCTION(cosh)
_DEFINE_EXPR_UNARY_FUNCTION(sin)
_DEFINE_EXPR_UNARY_FUNCTION(asin)
- _DEFINE_EXPR_UNARY_FUNCTION(sinh)
+ _DEFINE_EXPR_UNARY_FUNCTION(sinh)
_DEFINE_EXPR_UNARY_FUNCTION(tan)
_DEFINE_EXPR_UNARY_FUNCTION(tanh)
_DEFINE_EXPR_UNARY_FUNCTION(atan)
- _DEFINE_EXPR_UNARY_FUNCTION(exp)
+ _DEFINE_EXPR_UNARY_FUNCTION(exp)
_DEFINE_EXPR_UNARY_FUNCTION(log)
_DEFINE_EXPR_UNARY_FUNCTION(log10)
_DEFINE_EXPR_UNARY_FUNCTION(sqrt)
diff --git a/libstdc++-v3/include/bits/valarray_array.h b/libstdc++-v3/include/bits/valarray_array.h
index edaf2120eee..e18e8e8e9e8 100644
--- a/libstdc++-v3/include/bits/valarray_array.h
+++ b/libstdc++-v3/include/bits/valarray_array.h
@@ -51,12 +51,12 @@ namespace std
//
// Helper functions on raw pointers
//
-
+
// We get memory by the old fashion way
inline void*
__valarray_get_memory(size_t __n)
{ return operator new(__n); }
-
+
template<typename _Tp>
inline _Tp*__restrict__
__valarray_get_storage(size_t __n)
@@ -98,7 +98,7 @@ namespace std
_Array_default_ctor<_Tp, __is_fundamental<_Tp>::_M_type>::
_S_do_it(__b, __e);
}
-
+
// Turn a raw-memory into an array of _Tp filled with __t
// This is the required in valarray<T> v(n, t). Also
// used in valarray<>::resize().
@@ -196,13 +196,13 @@ namespace std
if (!__is_fundamental<_Tp>::_M_type)
while (__b != __e) { __b->~_Tp(); ++__b; }
}
-
+
// Fill a plain array __a[<__n>] with __t
template<typename _Tp>
inline void
__valarray_fill (_Tp* __restrict__ __a, size_t __n, const _Tp& __t)
{ while (__n--) *__a++ = __t; }
-
+
// fill strided array __a[<__n-1 : __s>] with __t
template<typename _Tp>
inline void
@@ -216,7 +216,7 @@ namespace std
__valarray_fill(_Tp* __restrict__ __a, const size_t* __restrict__ __i,
size_t __n, const _Tp& __t)
{ for (size_t __j=0; __j<__n; ++__j, ++__i) __a[*__i] = __t; }
-
+
// copy plain array __a[<__n>] in __b[<__n>]
// For non-fundamental types, it is wrong to say 'memcpy()'
template<typename _Tp, bool>
@@ -224,7 +224,7 @@ namespace std
{
inline static void
_S_do_it(const _Tp* __restrict__ __a, size_t __n, _Tp* __restrict__ __b)
- { while (__n--) *__b++ = *__a++; }
+ { while (__n--) *__b++ = *__a++; }
};
template<typename _Tp>
@@ -270,7 +270,7 @@ namespace std
__dst[__i * __s2] = __src [ __i * __s1];
}
-
+
// Copy an indexed array __a[__i[<__n>]] in plain array __b[<__n>]
template<typename _Tp>
inline void
@@ -341,7 +341,7 @@ namespace std
}
return __r;
}
-
+
template<typename _Ta>
inline typename _Ta::value_type
__valarray_max(const _Ta& __a)
@@ -357,13 +357,13 @@ namespace std
}
return __r;
}
-
+
//
// Helper class _Array, first layer of valarray abstraction.
// All operations on valarray should be forwarded to this class
// whenever possible. -- gdr
//
-
+
template<typename _Tp>
struct _Array
{
@@ -376,20 +376,20 @@ namespace std
_Tp* const __restrict__ _M_data;
};
-
+
template<typename _Tp>
inline void
__valarray_fill (_Array<_Tp> __a, size_t __n, const _Tp& __t)
{ std::__valarray_fill (__a._M_data, __n, __t); }
-
+
template<typename _Tp>
inline void
__valarray_fill (_Array<_Tp> __a, size_t __n, size_t __s, const _Tp& __t)
{ std::__valarray_fill (__a._M_data, __n, __s, __t); }
-
+
template<typename _Tp>
inline void
- __valarray_fill (_Array<_Tp> __a, _Array<size_t> __i,
+ __valarray_fill (_Array<_Tp> __a, _Array<size_t> __i,
size_t __n, const _Tp& __t)
{ std::__valarray_fill (__a._M_data, __i._M_data, __n, __t); }
@@ -398,7 +398,7 @@ namespace std
inline void
__valarray_copy(_Array<_Tp> __a, size_t __n, _Array<_Tp> __b)
{ std::__valarray_copy(__a._M_data, __n, __b._M_data); }
-
+
// Copy strided array __a[<__n : __s>] in plain __b[<__n>]
template<typename _Tp>
inline void
@@ -419,18 +419,18 @@ namespace std
_Array<_Tp> __b, size_t __s2)
{ std::__valarray_copy(__a._M_data, __n, __s1, __b._M_data, __s2); }
-
+
// Copy an indexed array __a[__i[<__n>]] in plain array __b[<__n>]
template<typename _Tp>
inline void
- __valarray_copy(_Array<_Tp> __a, _Array<size_t> __i,
+ __valarray_copy(_Array<_Tp> __a, _Array<size_t> __i,
_Array<_Tp> __b, size_t __n)
{ std::__valarray_copy(__a._M_data, __i._M_data, __b._M_data, __n); }
-
+
// Copy a plain array __a[<__n>] in an indexed array __b[__i[<__n>]]
template<typename _Tp>
inline void
- __valarray_copy(_Array<_Tp> __a, size_t __n, _Array<_Tp> __b,
+ __valarray_copy(_Array<_Tp> __a, size_t __n, _Array<_Tp> __b,
_Array<size_t> __i)
{ std::__valarray_copy(__a._M_data, __n, __b._M_data, __i._M_data); }
@@ -454,14 +454,14 @@ namespace std
template<typename _Tp>
inline
_Array<_Tp>::_Array (_Tp* const __restrict__ __p) : _M_data (__p) {}
-
+
template<typename _Tp>
- inline _Array<_Tp>::_Array (const valarray<_Tp>& __v)
+ inline _Array<_Tp>::_Array (const valarray<_Tp>& __v)
: _M_data (__v._M_data) {}
-
+
template<typename _Tp>
inline
- _Array<_Tp>::_Array (const _Tp* __restrict__ __b, size_t __s)
+ _Array<_Tp>::_Array (const _Tp* __restrict__ __b, size_t __s)
: _M_data(__valarray_get_storage<_Tp>(__s))
{ std::__valarray_copy_construct(__b, __s, _M_data); }
@@ -490,7 +490,7 @@ _Array_augmented_##_Name (_Array<_Tp> __a, size_t __n, _Array<_Tp> __b) \
\
template<typename _Tp, class _Dom> \
void \
-_Array_augmented_##_Name (_Array<_Tp> __a, \
+_Array_augmented_##_Name (_Array<_Tp> __a, \
const _Expr<_Dom,_Tp>& __e, size_t __n) \
{ \
_Tp* __p (__a._M_data); \
@@ -499,9 +499,9 @@ _Array_augmented_##_Name (_Array<_Tp> __a, \
\
template<typename _Tp> \
inline void \
-_Array_augmented_##_Name (_Array<_Tp> __a, size_t __n, size_t __s, \
+_Array_augmented_##_Name (_Array<_Tp> __a, size_t __n, size_t __s, \
_Array<_Tp> __b) \
-{ \
+{ \
_Tp* __q (__b._M_data); \
for (_Tp* __p=__a._M_data; __p<__a._M_data+__s*__n; __p+=__s, ++__q) \
*__p _Op##= *__q; \
@@ -509,7 +509,7 @@ _Array_augmented_##_Name (_Array<_Tp> __a, size_t __n, size_t __s, \
\
template<typename _Tp> \
inline void \
-_Array_augmented_##_Name (_Array<_Tp> __a, _Array<_Tp> __b, \
+_Array_augmented_##_Name (_Array<_Tp> __a, _Array<_Tp> __b, \
size_t __n, size_t __s) \
{ \
_Tp* __q (__b._M_data); \
@@ -552,7 +552,7 @@ _Array_augmented_##_Name (_Array<_Tp> __a, _Array<size_t> __i, \
const _Expr<_Dom, _Tp>& __e, size_t __n) \
{ \
size_t* __j (__i._M_data); \
- for (size_t __k=0; __k<__n; ++__k, ++__j) \
+ for (size_t __k=0; __k<__n; ++__k, ++__j) \
__a._M_data[*__j] _Op##= __e[__k]; \
} \
\
@@ -611,15 +611,15 @@ _Array_augmented_##_Name (_Array<_Tp> __a, _Array<bool> __m, \
_DEFINE_ARRAY_FUNCTION(%, __modulus)
_DEFINE_ARRAY_FUNCTION(^, __bitwise_xor)
_DEFINE_ARRAY_FUNCTION(|, __bitwise_or)
- _DEFINE_ARRAY_FUNCTION(&, __bitwise_and)
+ _DEFINE_ARRAY_FUNCTION(&, __bitwise_and)
_DEFINE_ARRAY_FUNCTION(<<, __shift_left)
_DEFINE_ARRAY_FUNCTION(>>, __shift_right)
-#undef _DEFINE_VALARRAY_FUNCTION
+#undef _DEFINE_VALARRAY_FUNCTION
} // namespace std
#ifndef _GLIBCXX_EXPORT_TEMPLATE
-# include <bits/valarray_array.tcc>
+# include <bits/valarray_array.tcc>
#endif
-
+
#endif /* _ARRAY_H */
diff --git a/libstdc++-v3/include/bits/valarray_array.tcc b/libstdc++-v3/include/bits/valarray_array.tcc
index 289001cf792..fac5de6399b 100644
--- a/libstdc++-v3/include/bits/valarray_array.tcc
+++ b/libstdc++-v3/include/bits/valarray_array.tcc
@@ -29,21 +29,21 @@
// Written by Gabriel Dos Reis <Gabriel.Dos-Reis@DPTMaths.ENS-Cachan.Fr>
-#ifndef _VALARRAY_ARRAY_TCC
+#ifndef _VALARRAY_ARRAY_TCC
#define _VALARRAY_ARRAY_TCC 1
namespace std
{
template<typename _Tp>
void
- __valarray_fill(_Array<_Tp> __a, size_t __n, _Array<bool> __m,
+ __valarray_fill(_Array<_Tp> __a, size_t __n, _Array<bool> __m,
const _Tp& __t)
{
_Tp* __p = __a._M_data;
bool* __ok (__m._M_data);
- for (size_t __i=0; __i < __n; ++__i, ++__ok, ++__p)
+ for (size_t __i=0; __i < __n; ++__i, ++__ok, ++__p)
{
- while (!*__ok)
+ while (!*__ok)
{
++__ok;
++__p;
@@ -51,18 +51,24 @@ namespace std
*__p = __t;
}
}
-
+
+ // Copy n elements of a into consecutive elements of b. When m is
+ // false, the corresponding element of a is skipped. m must contain
+ // at least n true elements. a must contain at least n elements and
+ // enough elements to match up with m through the nth true element
+ // of m. I.e. if n is 10, m has 15 elements with 5 false followed
+ // by 10 true, a must have 15 elements.
template<typename _Tp>
void
- __valarray_copy(_Array<_Tp> __a, _Array<bool> __m, _Array<_Tp> __b,
+ __valarray_copy(_Array<_Tp> __a, _Array<bool> __m, _Array<_Tp> __b,
size_t __n)
{
_Tp* __p (__a._M_data);
bool* __ok (__m._M_data);
- for (_Tp* __q = __b._M_data; __q < __b._M_data + __n;
- ++__q, ++__ok, ++__p)
+ for (_Tp* __q = __b._M_data; __q < __b._M_data + __n;
+ ++__q, ++__ok, ++__p)
{
- while (! *__ok)
+ while (! *__ok)
{
++__ok;
++__p;
@@ -71,17 +77,23 @@ namespace std
}
}
+ // Copy n consecutive elements from a into elements of b. Elements
+ // of b are skipped if the corresponding element of m is false. m
+ // must contain at least n true elements. b must have at least as
+ // many elements as the index of the nth true element of m. I.e. if
+ // m has 15 elements with 5 false followed by 10 true, b must have
+ // at least 15 elements.
template<typename _Tp>
void
- __valarray_copy(_Array<_Tp> __a, size_t __n, _Array<_Tp> __b,
+ __valarray_copy(_Array<_Tp> __a, size_t __n, _Array<_Tp> __b,
_Array<bool> __m)
{
_Tp* __q (__b._M_data);
bool* __ok (__m._M_data);
- for (_Tp* __p = __a._M_data; __p < __a._M_data+__n;
- ++__p, ++__ok, ++__q)
+ for (_Tp* __p = __a._M_data; __p < __a._M_data+__n;
+ ++__p, ++__ok, ++__q)
{
- while (! *__ok)
+ while (! *__ok)
{
++__ok;
++__q;
@@ -90,45 +102,102 @@ namespace std
}
}
+ // Copy n elements from a into elements of b. Elements of a are
+ // skipped if the corresponding element of m is false. Elements of
+ // b are skipped if the corresponding element of k is false. m and
+ // k must contain at least n true elements. a and b must have at
+ // least as many elements as the index of the nth true element of m.
+ template<typename _Tp>
+ void
+ __valarray_copy(_Array<_Tp> __a, _Array<bool> __m, size_t __n,
+ _Array<_Tp> __b, _Array<bool> __k)
+ {
+ _Tp* __p (__a._M_data);
+ _Tp* __q (__b._M_data);
+ bool* __srcok (__m._M_data);
+ bool* __dstok (__k._M_data);
+ for (size_t __i = 0; __i < __n;
+ ++__srcok, ++__p, ++__dstok, ++__q, ++__i)
+ {
+ while (! *__srcok)
+ {
+ ++__srcok;
+ ++__p;
+ }
+ while (! *__dstok)
+ {
+ ++__dstok;
+ ++__q;
+ }
+ *__q = *__p;
+ }
+ }
+
+ // Copy n consecutive elements of e into consecutive elements of a.
+ // I.e. a[i] = e[i].
template<typename _Tp, class _Dom>
void
__valarray_copy(const _Expr<_Dom, _Tp>& __e, size_t __n, _Array<_Tp> __a)
{
_Tp* __p (__a._M_data);
- for (size_t __i = 0; __i < __n; ++__i, ++__p)
+ for (size_t __i = 0; __i < __n; ++__i, ++__p)
*__p = __e[__i];
}
+ // Copy n consecutive elements of e into elements of a using stride
+ // s. I.e., a[0] = e[0], a[s] = e[1], a[2*s] = e[2].
template<typename _Tp, class _Dom>
void
- __valarray_copy(const _Expr<_Dom, _Tp>& __e, size_t __n,
+ __valarray_copy(const _Expr<_Dom, _Tp>& __e, size_t __n,
_Array<_Tp> __a, size_t __s)
{
_Tp* __p (__a._M_data);
- for (size_t __i = 0; __i < __n; ++__i, __p += __s)
+ for (size_t __i = 0; __i < __n; ++__i, __p += __s)
*__p = __e[__i];
}
+ // Copy n consecutive elements of e into elements of a indexed by
+ // contents of i. I.e., a[i[0]] = e[0].
template<typename _Tp, class _Dom>
void
- __valarray_copy(const _Expr<_Dom, _Tp>& __e, size_t __n,
+ __valarray_copy(const _Expr<_Dom, _Tp>& __e, size_t __n,
_Array<_Tp> __a, _Array<size_t> __i)
{
size_t* __j (__i._M_data);
- for (size_t __k = 0; __k < __n; ++__k, ++__j)
+ for (size_t __k = 0; __k < __n; ++__k, ++__j)
__a._M_data[*__j] = __e[__k];
}
+ // Copy n elements of e indexed by contents of f into elements of a
+ // indexed by contents of i. I.e., a[i[0]] = e[f[0]].
+ template<typename _Tp>
+ void
+ __valarray_copy(_Array<_Tp> __e, _Array<size_t> __f,
+ size_t __n,
+ _Array<_Tp> __a, _Array<size_t> __i)
+ {
+ size_t* __g (__f._M_data);
+ size_t* __j (__i._M_data);
+ for (size_t __k = 0; __k < __n; ++__k, ++__j, ++__g)
+ __a._M_data[*__j] = __e._M_data[*__g];
+ }
+
+ // Copy n consecutive elements of e into elements of a. Elements of
+ // a are skipped if the corresponding element of m is false. m must
+ // have at least n true elements and a must have at least as many
+ // elements as the index of the nth true element of m. I.e. if m
+ // has 5 false followed by 10 true elements and n == 10, a must have
+ // at least 15 elements.
template<typename _Tp, class _Dom>
void
- __valarray_copy(const _Expr<_Dom, _Tp>& __e, size_t __n,
+ __valarray_copy(const _Expr<_Dom, _Tp>& __e, size_t __n,
_Array<_Tp> __a, _Array<bool> __m)
{
bool* __ok (__m._M_data);
_Tp* __p (__a._M_data);
- for (size_t __i = 0; __i < __n; ++__i, ++__ok, ++__p)
+ for (size_t __i = 0; __i < __n; ++__i, ++__ok, ++__p)
{
- while (! *__ok)
+ while (! *__ok)
{
++__ok;
++__p;
@@ -136,7 +205,7 @@ namespace std
*__p = __e[__i];
}
}
-
+
template<typename _Tp, class _Dom>
void
@@ -144,7 +213,7 @@ namespace std
_Array<_Tp> __a)
{
_Tp* __p (__a._M_data);
- for (size_t __i = 0; __i < __n; ++__i, ++__p)
+ for (size_t __i = 0; __i < __n; ++__i, ++__p)
new (__p) _Tp(__e[__i]);
}
@@ -158,7 +227,7 @@ namespace std
bool* __ok (__m._M_data);
for (_Tp* __q = __b._M_data; __q < __b._M_data+__n; ++__q, ++__ok, ++__p)
{
- while (! *__ok)
+ while (! *__ok)
{
++__ok;
++__p;
diff --git a/libstdc++-v3/include/bits/valarray_before.h b/libstdc++-v3/include/bits/valarray_before.h
index 775d150eff1..263ac2f0e22 100644
--- a/libstdc++-v3/include/bits/valarray_before.h
+++ b/libstdc++-v3/include/bits/valarray_before.h
@@ -51,7 +51,7 @@ namespace std
// At some point we use partial specialization to remove one level
// template nesting due to _Expr<>
//
-
+
// This class is NOT defined. It doesn't need to.
template<typename _Tp1, typename _Tp2> class _Constant;
@@ -386,11 +386,11 @@ namespace std
//
template<typename _Dom, typename _Arg>
- class _FunBase
+ class _FunBase
{
public:
typedef typename _Dom::value_type value_type;
-
+
_FunBase(const _Dom& __e, value_type __f(_Arg))
: _M_expr(__e), _M_func(__f) {}
@@ -405,12 +405,12 @@ namespace std
};
template<class _Dom>
- struct _ValFunClos<_Expr,_Dom> : _FunBase<_Dom, typename _Dom::value_type>
+ struct _ValFunClos<_Expr,_Dom> : _FunBase<_Dom, typename _Dom::value_type>
{
typedef _FunBase<_Dom, typename _Dom::value_type> _Base;
typedef typename _Base::value_type value_type;
typedef value_type _Tp;
-
+
_ValFunClos(const _Dom& __e, _Tp __f(_Tp)) : _Base(__e, __f) {}
};
@@ -419,32 +419,32 @@ namespace std
{
typedef _FunBase<valarray<_Tp>, _Tp> _Base;
typedef _Tp value_type;
-
+
_ValFunClos(const valarray<_Tp>& __v, _Tp __f(_Tp)) : _Base(__v, __f) {}
};
template<class _Dom>
struct _RefFunClos<_Expr,_Dom> :
- _FunBase<_Dom, const typename _Dom::value_type&>
+ _FunBase<_Dom, const typename _Dom::value_type&>
{
typedef _FunBase<_Dom, const typename _Dom::value_type&> _Base;
typedef typename _Base::value_type value_type;
typedef value_type _Tp;
-
+
_RefFunClos(const _Dom& __e, _Tp __f(const _Tp&))
: _Base(__e, __f) {}
};
template<typename _Tp>
- struct _RefFunClos<_ValArray,_Tp> : _FunBase<valarray<_Tp>, const _Tp&>
+ struct _RefFunClos<_ValArray,_Tp> : _FunBase<valarray<_Tp>, const _Tp&>
{
typedef _FunBase<valarray<_Tp>, const _Tp&> _Base;
typedef _Tp value_type;
-
+
_RefFunClos(const valarray<_Tp>& __v, _Tp __f(const _Tp&))
: _Base(__v, __f) {}
};
-
+
//
// Unary expression closure.
//
@@ -473,17 +473,17 @@ namespace std
typedef _Dom _Arg;
typedef _UnBase<_Oper, _Dom> _Base;
typedef typename _Base::value_type value_type;
-
+
_UnClos(const _Arg& __e) : _Base(__e) {}
};
template<class _Oper, typename _Tp>
- struct _UnClos<_Oper, _ValArray, _Tp> : _UnBase<_Oper, valarray<_Tp> >
+ struct _UnClos<_Oper, _ValArray, _Tp> : _UnBase<_Oper, valarray<_Tp> >
{
typedef valarray<_Tp> _Arg;
typedef _UnBase<_Oper, valarray<_Tp> > _Base;
typedef typename _Base::value_type value_type;
-
+
_UnClos(const _Arg& __e) : _Base(__e) {}
};
@@ -493,7 +493,7 @@ namespace std
//
template<class _Oper, class _FirstArg, class _SecondArg>
- class _BinBase
+ class _BinBase
{
public:
typedef typename _FirstArg::value_type _Vt;
@@ -501,12 +501,12 @@ namespace std
_BinBase(const _FirstArg& __e1, const _SecondArg& __e2)
: _M_expr1(__e1), _M_expr2(__e2) {}
-
+
value_type operator[](size_t __i) const
{ return _Oper()(_M_expr1[__i], _M_expr2[__i]); }
size_t size() const { return _M_expr1.size(); }
-
+
private:
const _FirstArg& _M_expr1;
const _SecondArg& _M_expr2;
@@ -545,27 +545,27 @@ namespace std
value_type operator[](size_t __i) const
{ return _Oper()(_M_expr1, _M_expr2[__i]); }
-
+
size_t size() const { return _M_expr2.size(); }
private:
const _Vt& _M_expr1;
const _Clos& _M_expr2;
};
-
+
template<class _Oper, class _Dom1, class _Dom2>
struct _BinClos<_Oper, _Expr, _Expr, _Dom1, _Dom2>
- : _BinBase<_Oper,_Dom1,_Dom2>
+ : _BinBase<_Oper,_Dom1,_Dom2>
{
typedef _BinBase<_Oper,_Dom1,_Dom2> _Base;
typedef typename _Base::value_type value_type;
-
+
_BinClos(const _Dom1& __e1, const _Dom2& __e2) : _Base(__e1, __e2) {}
};
template<class _Oper, typename _Tp>
struct _BinClos<_Oper,_ValArray,_ValArray,_Tp,_Tp>
- : _BinBase<_Oper,valarray<_Tp>,valarray<_Tp> >
+ : _BinBase<_Oper,valarray<_Tp>,valarray<_Tp> >
{
typedef _BinBase<_Oper,valarray<_Tp>,valarray<_Tp> > _Base;
typedef _Tp value_type;
@@ -576,70 +576,70 @@ namespace std
template<class _Oper, class _Dom>
struct _BinClos<_Oper,_Expr,_ValArray,_Dom,typename _Dom::value_type>
- : _BinBase<_Oper,_Dom,valarray<typename _Dom::value_type> >
+ : _BinBase<_Oper,_Dom,valarray<typename _Dom::value_type> >
{
typedef typename _Dom::value_type _Tp;
typedef _BinBase<_Oper,_Dom,valarray<_Tp> > _Base;
typedef typename _Base::value_type value_type;
-
+
_BinClos(const _Dom& __e1, const valarray<_Tp>& __e2)
: _Base(__e1, __e2) {}
};
template<class _Oper, class _Dom>
struct _BinClos<_Oper,_ValArray,_Expr,typename _Dom::value_type,_Dom>
- : _BinBase<_Oper,valarray<typename _Dom::value_type>,_Dom>
+ : _BinBase<_Oper,valarray<typename _Dom::value_type>,_Dom>
{
typedef typename _Dom::value_type _Tp;
typedef _BinBase<_Oper,valarray<_Tp>,_Dom> _Base;
typedef typename _Base::value_type value_type;
-
+
_BinClos(const valarray<_Tp>& __e1, const _Dom& __e2)
: _Base(__e1, __e2) {}
};
template<class _Oper, class _Dom>
struct _BinClos<_Oper,_Expr,_Constant,_Dom,typename _Dom::value_type>
- : _BinBase2<_Oper,_Dom>
+ : _BinBase2<_Oper,_Dom>
{
typedef typename _Dom::value_type _Tp;
typedef _BinBase2<_Oper,_Dom> _Base;
typedef typename _Base::value_type value_type;
-
+
_BinClos(const _Dom& __e1, const _Tp& __e2) : _Base(__e1, __e2) {}
};
template<class _Oper, class _Dom>
struct _BinClos<_Oper,_Constant,_Expr,typename _Dom::value_type,_Dom>
- : _BinBase1<_Oper,_Dom>
+ : _BinBase1<_Oper,_Dom>
{
typedef typename _Dom::value_type _Tp;
typedef _BinBase1<_Oper,_Dom> _Base;
typedef typename _Base::value_type value_type;
-
+
_BinClos(const _Tp& __e1, const _Dom& __e2) : _Base(__e1, __e2) {}
};
-
+
template<class _Oper, typename _Tp>
struct _BinClos<_Oper,_ValArray,_Constant,_Tp,_Tp>
- : _BinBase2<_Oper,valarray<_Tp> >
+ : _BinBase2<_Oper,valarray<_Tp> >
{
typedef _BinBase2<_Oper,valarray<_Tp> > _Base;
typedef typename _Base::value_type value_type;
-
+
_BinClos(const valarray<_Tp>& __v, const _Tp& __t) : _Base(__v, __t) {}
};
template<class _Oper, typename _Tp>
struct _BinClos<_Oper,_Constant,_ValArray,_Tp,_Tp>
- : _BinBase1<_Oper,valarray<_Tp> >
+ : _BinBase1<_Oper,valarray<_Tp> >
{
typedef _BinBase1<_Oper,valarray<_Tp> > _Base;
typedef typename _Base::value_type value_type;
-
+
_BinClos(const _Tp& __t, const valarray<_Tp>& __v) : _Base(__t, __v) {}
};
-
+
//
// slice_array closure.
@@ -679,7 +679,7 @@ namespace std
template<class _Dom> struct _SClos<_Expr,_Dom> : _SBase<_Dom> {
typedef _SBase<_Dom> _Base;
typedef typename _Base::value_type value_type;
-
+
_SClos (const _Dom& __e, const slice& __s) : _Base (__e, __s) {}
};
diff --git a/libstdc++-v3/include/bits/vector.tcc b/libstdc++-v3/include/bits/vector.tcc
index 6342743266a..abd1ba76250 100644
--- a/libstdc++-v3/include/bits/vector.tcc
+++ b/libstdc++-v3/include/bits/vector.tcc
@@ -61,7 +61,7 @@
#ifndef _VECTOR_TCC
#define _VECTOR_TCC 1
-namespace __gnu_norm
+namespace _GLIBCXX_STD
{
template<typename _Tp, typename _Alloc>
void
@@ -69,38 +69,38 @@ namespace __gnu_norm
reserve(size_type __n)
{
if (__n > this->max_size())
- __throw_length_error("vector::reserve");
+ __throw_length_error(__N("vector::reserve"));
if (this->capacity() < __n)
{
const size_type __old_size = size();
pointer __tmp = _M_allocate_and_copy(__n,
- this->_M_start,
- this->_M_finish);
- std::_Destroy(this->_M_start, this->_M_finish);
- _M_deallocate(this->_M_start,
- this->_M_end_of_storage - this->_M_start);
- this->_M_start = __tmp;
- this->_M_finish = __tmp + __old_size;
- this->_M_end_of_storage = this->_M_start + __n;
+ this->_M_impl._M_start,
+ this->_M_impl._M_finish);
+ std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish);
+ _M_deallocate(this->_M_impl._M_start,
+ this->_M_impl._M_end_of_storage - this->_M_impl._M_start);
+ this->_M_impl._M_start = __tmp;
+ this->_M_impl._M_finish = __tmp + __old_size;
+ this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
}
}
-
+
template<typename _Tp, typename _Alloc>
typename vector<_Tp,_Alloc>::iterator
vector<_Tp,_Alloc>::
insert(iterator __position, const value_type& __x)
{
size_type __n = __position - begin();
- if (this->_M_finish != this->_M_end_of_storage && __position == end())
+ if (this->_M_impl._M_finish != this->_M_impl._M_end_of_storage && __position == end())
{
- std::_Construct(this->_M_finish, __x);
- ++this->_M_finish;
+ std::_Construct(this->_M_impl._M_finish, __x);
+ ++this->_M_impl._M_finish;
}
else
_M_insert_aux(__position, __x);
return begin() + __n;
}
-
+
template<typename _Tp, typename _Alloc>
typename vector<_Tp,_Alloc>::iterator
vector<_Tp,_Alloc>::
@@ -108,11 +108,11 @@ namespace __gnu_norm
{
if (__position + 1 != end())
std::copy(__position + 1, end(), __position);
- --this->_M_finish;
- std::_Destroy(this->_M_finish);
+ --this->_M_impl._M_finish;
+ std::_Destroy(this->_M_impl._M_finish);
return __position;
}
-
+
template<typename _Tp, typename _Alloc>
typename vector<_Tp,_Alloc>::iterator
vector<_Tp,_Alloc>::
@@ -120,10 +120,10 @@ namespace __gnu_norm
{
iterator __i(copy(__last, end(), __first));
std::_Destroy(__i, end());
- this->_M_finish = this->_M_finish - (__last - __first);
+ this->_M_impl._M_finish = this->_M_impl._M_finish - (__last - __first);
return __first;
}
-
+
template<typename _Tp, typename _Alloc>
vector<_Tp,_Alloc>&
vector<_Tp,_Alloc>::
@@ -135,11 +135,11 @@ namespace __gnu_norm
if (__xlen > capacity())
{
pointer __tmp = _M_allocate_and_copy(__xlen, __x.begin(), __x.end());
- std::_Destroy(this->_M_start, this->_M_finish);
- _M_deallocate(this->_M_start,
- this->_M_end_of_storage - this->_M_start);
- this->_M_start = __tmp;
- this->_M_end_of_storage = this->_M_start + __xlen;
+ std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish);
+ _M_deallocate(this->_M_impl._M_start,
+ this->_M_impl._M_end_of_storage - this->_M_impl._M_start);
+ this->_M_impl._M_start = __tmp;
+ this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __xlen;
}
else if (size() >= __xlen)
{
@@ -148,14 +148,14 @@ namespace __gnu_norm
}
else
{
- std::copy(__x.begin(), __x.begin() + size(), this->_M_start);
- std::uninitialized_copy(__x.begin() + size(), __x.end(), this->_M_finish);
+ std::copy(__x.begin(), __x.begin() + size(), this->_M_impl._M_start);
+ std::uninitialized_copy(__x.begin() + size(), __x.end(), this->_M_impl._M_finish);
}
- this->_M_finish = this->_M_start + __xlen;
+ this->_M_impl._M_finish = this->_M_impl._M_start + __xlen;
}
return *this;
}
-
+
template<typename _Tp, typename _Alloc>
void
vector<_Tp,_Alloc>::
@@ -169,13 +169,13 @@ namespace __gnu_norm
else if (__n > size())
{
std::fill(begin(), end(), __val);
- this->_M_finish
- = std::uninitialized_fill_n(this->_M_finish, __n - size(), __val);
+ this->_M_impl._M_finish
+ = std::uninitialized_fill_n(this->_M_impl._M_finish, __n - size(), __val);
}
else
erase(fill_n(begin(), __n, __val), end());
}
-
+
template<typename _Tp, typename _Alloc> template<typename _InputIterator>
void
vector<_Tp,_Alloc>::
@@ -189,7 +189,7 @@ namespace __gnu_norm
else
insert(end(), __first, __last);
}
-
+
template<typename _Tp, typename _Alloc> template<typename _ForwardIterator>
void
vector<_Tp,_Alloc>::
@@ -197,44 +197,44 @@ namespace __gnu_norm
forward_iterator_tag)
{
size_type __len = std::distance(__first, __last);
-
+
if (__len > capacity())
{
pointer __tmp(_M_allocate_and_copy(__len, __first, __last));
- std::_Destroy(this->_M_start, this->_M_finish);
- _M_deallocate(this->_M_start,
- this->_M_end_of_storage - this->_M_start);
- this->_M_start = __tmp;
- this->_M_end_of_storage = this->_M_finish = this->_M_start + __len;
+ std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish);
+ _M_deallocate(this->_M_impl._M_start,
+ this->_M_impl._M_end_of_storage - this->_M_impl._M_start);
+ this->_M_impl._M_start = __tmp;
+ this->_M_impl._M_end_of_storage = this->_M_impl._M_finish = this->_M_impl._M_start + __len;
}
else if (size() >= __len)
{
- iterator __new_finish(copy(__first, __last, this->_M_start));
+ iterator __new_finish(copy(__first, __last, this->_M_impl._M_start));
std::_Destroy(__new_finish, end());
- this->_M_finish = __new_finish.base();
+ this->_M_impl._M_finish = __new_finish.base();
}
else
{
_ForwardIterator __mid = __first;
std::advance(__mid, size());
- std::copy(__first, __mid, this->_M_start);
- this->_M_finish = std::uninitialized_copy(__mid, __last, this->_M_finish);
+ std::copy(__first, __mid, this->_M_impl._M_start);
+ this->_M_impl._M_finish = std::uninitialized_copy(__mid, __last, this->_M_impl._M_finish);
}
}
-
+
template<typename _Tp, typename _Alloc>
void
vector<_Tp,_Alloc>::
_M_insert_aux(iterator __position, const _Tp& __x)
{
- if (this->_M_finish != this->_M_end_of_storage)
+ if (this->_M_impl._M_finish != this->_M_impl._M_end_of_storage)
{
- std::_Construct(this->_M_finish, *(this->_M_finish - 1));
- ++this->_M_finish;
+ std::_Construct(this->_M_impl._M_finish, *(this->_M_impl._M_finish - 1));
+ ++this->_M_impl._M_finish;
_Tp __x_copy = __x;
std::copy_backward(__position,
- iterator(this->_M_finish-2),
- iterator(this->_M_finish-1));
+ iterator(this->_M_impl._M_finish-2),
+ iterator(this->_M_impl._M_finish-1));
*__position = __x_copy;
}
else
@@ -245,13 +245,13 @@ namespace __gnu_norm
iterator __new_finish(__new_start);
try
{
- __new_finish = std::uninitialized_copy(iterator(this->_M_start),
+ __new_finish = std::uninitialized_copy(iterator(this->_M_impl._M_start),
__position,
__new_start);
std::_Construct(__new_finish.base(), __x);
++__new_finish;
__new_finish = std::uninitialized_copy(__position,
- iterator(this->_M_finish),
+ iterator(this->_M_impl._M_finish),
__new_finish);
}
catch(...)
@@ -261,58 +261,14 @@ namespace __gnu_norm
__throw_exception_again;
}
std::_Destroy(begin(), end());
- _M_deallocate(this->_M_start,
- this->_M_end_of_storage - this->_M_start);
- this->_M_start = __new_start.base();
- this->_M_finish = __new_finish.base();
- this->_M_end_of_storage = __new_start.base() + __len;
- }
- }
-
- #ifdef _GLIBCXX_DEPRECATED
- template<typename _Tp, typename _Alloc>
- void
- vector<_Tp,_Alloc>::
- _M_insert_aux(iterator __position)
- {
- if (_M_finish != _M_end_of_storage)
- {
- std::_Construct(_M_finish, *(_M_finish - 1));
- ++_M_finish;
- std::copy_backward(__position, iterator(_M_finish - 2),
- iterator(_M_finish - 1));
- *__position = value_type();
- }
- else
- {
- const size_type __old_size = size();
- const size_type __len = __old_size != 0 ? 2 * __old_size : 1;
- pointer __new_start = _M_allocate(__len);
- pointer __new_finish = __new_start;
- try
- {
- __new_finish = std::uninitialized_copy(iterator(_M_start), __position,
- __new_start);
- std::_Construct(__new_finish);
- ++__new_finish;
- __new_finish = std::uninitialized_copy(__position, iterator(_M_finish),
- __new_finish);
- }
- catch(...)
- {
- std::_Destroy(__new_start,__new_finish);
- _M_deallocate(__new_start,__len);
- __throw_exception_again;
- }
- std::_Destroy(begin(), end());
- _M_deallocate(_M_start, _M_end_of_storage - _M_start);
- _M_start = __new_start;
- _M_finish = __new_finish;
- _M_end_of_storage = __new_start + __len;
+ _M_deallocate(this->_M_impl._M_start,
+ this->_M_impl._M_end_of_storage - this->_M_impl._M_start);
+ this->_M_impl._M_start = __new_start.base();
+ this->_M_impl._M_finish = __new_finish.base();
+ this->_M_impl._M_end_of_storage = __new_start.base() + __len;
}
}
- #endif
-
+
template<typename _Tp, typename _Alloc>
void
vector<_Tp,_Alloc>::
@@ -320,28 +276,28 @@ namespace __gnu_norm
{
if (__n != 0)
{
- if (size_type(this->_M_end_of_storage - this->_M_finish) >= __n)
+ if (size_type(this->_M_impl._M_end_of_storage - this->_M_impl._M_finish) >= __n)
{
value_type __x_copy = __x;
const size_type __elems_after = end() - __position;
- iterator __old_finish(this->_M_finish);
+ iterator __old_finish(this->_M_impl._M_finish);
if (__elems_after > __n)
{
- std::uninitialized_copy(this->_M_finish - __n,
- this->_M_finish,
- this->_M_finish);
- this->_M_finish += __n;
+ std::uninitialized_copy(this->_M_impl._M_finish - __n,
+ this->_M_impl._M_finish,
+ this->_M_impl._M_finish);
+ this->_M_impl._M_finish += __n;
std::copy_backward(__position, __old_finish - __n, __old_finish);
std::fill(__position, __position + __n, __x_copy);
}
else
{
- std::uninitialized_fill_n(this->_M_finish,
+ std::uninitialized_fill_n(this->_M_impl._M_finish,
__n - __elems_after,
__x_copy);
- this->_M_finish += __n - __elems_after;
- std::uninitialized_copy(__position, __old_finish, this->_M_finish);
- this->_M_finish += __elems_after;
+ this->_M_impl._M_finish += __n - __elems_after;
+ std::uninitialized_copy(__position, __old_finish, this->_M_impl._M_finish);
+ this->_M_impl._M_finish += __elems_after;
std::fill(__position, __old_finish, __x_copy);
}
}
@@ -356,7 +312,7 @@ namespace __gnu_norm
__new_finish = std::uninitialized_copy(begin(), __position,
__new_start);
__new_finish = std::uninitialized_fill_n(__new_finish, __n, __x);
- __new_finish = std::uninitialized_copy(__position, end(),
+ __new_finish = std::uninitialized_copy(__position, end(),
__new_finish);
}
catch(...)
@@ -365,16 +321,16 @@ namespace __gnu_norm
_M_deallocate(__new_start.base(),__len);
__throw_exception_again;
}
- std::_Destroy(this->_M_start, this->_M_finish);
- _M_deallocate(this->_M_start,
- this->_M_end_of_storage - this->_M_start);
- this->_M_start = __new_start.base();
- this->_M_finish = __new_finish.base();
- this->_M_end_of_storage = __new_start.base() + __len;
+ std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish);
+ _M_deallocate(this->_M_impl._M_start,
+ this->_M_impl._M_end_of_storage - this->_M_impl._M_start);
+ this->_M_impl._M_start = __new_start.base();
+ this->_M_impl._M_finish = __new_finish.base();
+ this->_M_impl._M_end_of_storage = __new_start.base() + __len;
}
}
}
-
+
template<typename _Tp, typename _Alloc> template<typename _InputIterator>
void
vector<_Tp,_Alloc>::
@@ -388,26 +344,26 @@ namespace __gnu_norm
++__pos;
}
}
-
+
template<typename _Tp, typename _Alloc> template<typename _ForwardIterator>
void
vector<_Tp,_Alloc>::
- _M_range_insert(iterator __position,_ForwardIterator __first,
+ _M_range_insert(iterator __position,_ForwardIterator __first,
_ForwardIterator __last, forward_iterator_tag)
{
if (__first != __last)
{
size_type __n = std::distance(__first, __last);
- if (size_type(this->_M_end_of_storage - this->_M_finish) >= __n)
+ if (size_type(this->_M_impl._M_end_of_storage - this->_M_impl._M_finish) >= __n)
{
const size_type __elems_after = end() - __position;
- iterator __old_finish(this->_M_finish);
+ iterator __old_finish(this->_M_impl._M_finish);
if (__elems_after > __n)
{
- std::uninitialized_copy(this->_M_finish - __n,
- this->_M_finish,
- this->_M_finish);
- this->_M_finish += __n;
+ std::uninitialized_copy(this->_M_impl._M_finish - __n,
+ this->_M_impl._M_finish,
+ this->_M_impl._M_finish);
+ this->_M_impl._M_finish += __n;
std::copy_backward(__position, __old_finish - __n, __old_finish);
std::copy(__first, __last, __position);
}
@@ -415,10 +371,10 @@ namespace __gnu_norm
{
_ForwardIterator __mid = __first;
std::advance(__mid, __elems_after);
- std::uninitialized_copy(__mid, __last, this->_M_finish);
- this->_M_finish += __n - __elems_after;
- std::uninitialized_copy(__position, __old_finish, this->_M_finish);
- this->_M_finish += __elems_after;
+ std::uninitialized_copy(__mid, __last, this->_M_impl._M_finish);
+ this->_M_impl._M_finish += __n - __elems_after;
+ std::uninitialized_copy(__position, __old_finish, this->_M_impl._M_finish);
+ this->_M_impl._M_finish += __elems_after;
std::copy(__first, __mid, __position);
}
}
@@ -430,12 +386,12 @@ namespace __gnu_norm
iterator __new_finish(__new_start);
try
{
- __new_finish = std::uninitialized_copy(iterator(this->_M_start),
+ __new_finish = std::uninitialized_copy(iterator(this->_M_impl._M_start),
__position, __new_start);
- __new_finish = std::uninitialized_copy(__first, __last,
+ __new_finish = std::uninitialized_copy(__first, __last,
__new_finish);
__new_finish = std::uninitialized_copy(__position,
- iterator(this->_M_finish),
+ iterator(this->_M_impl._M_finish),
__new_finish);
}
catch(...)
@@ -444,15 +400,15 @@ namespace __gnu_norm
_M_deallocate(__new_start.base(), __len);
__throw_exception_again;
}
- std::_Destroy(this->_M_start, this->_M_finish);
- _M_deallocate(this->_M_start,
- this->_M_end_of_storage - this->_M_start);
- this->_M_start = __new_start.base();
- this->_M_finish = __new_finish.base();
- this->_M_end_of_storage = __new_start.base() + __len;
+ std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish);
+ _M_deallocate(this->_M_impl._M_start,
+ this->_M_impl._M_end_of_storage - this->_M_impl._M_start);
+ this->_M_impl._M_start = __new_start.base();
+ this->_M_impl._M_finish = __new_finish.base();
+ this->_M_impl._M_end_of_storage = __new_start.base() + __len;
}
}
}
-} // namespace __gnu_norm
+} // namespace std
#endif /* _VECTOR_TCC */
diff --git a/libstdc++-v3/include/c_std/cmath.tcc b/libstdc++-v3/include/c_std/cmath.tcc
index 0ff9ed74b31..d771467ec61 100644
--- a/libstdc++-v3/include/c_std/cmath.tcc
+++ b/libstdc++-v3/include/c_std/cmath.tcc
@@ -1,6 +1,6 @@
// -*- C++ -*- C math library.
-// Copyright (C) 2000, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -35,7 +35,7 @@
namespace std
{
template<typename _Tp>
- _Tp
+ inline _Tp
__cmath_power(_Tp __x, unsigned int __n)
{
_Tp __y = __n % 2 ? __x : 1;
diff --git a/libstdc++-v3/include/debug/bitset b/libstdc++-v3/include/debug/bitset
index 89244226dd7..2e2364ff930 100644
--- a/libstdc++-v3/include/debug/bitset
+++ b/libstdc++-v3/include/debug/bitset
@@ -1,6 +1,6 @@
// Debugging bitset implementation -*- C++ -*-
-// Copyright (C) 2003
+// Copyright (C) 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -39,9 +39,10 @@ namespace __gnu_debug_def
{
template<size_t _Nb>
class bitset
- : public __gnu_norm::bitset<_Nb>, public __gnu_debug::_Safe_sequence_base
+ : public _GLIBCXX_STD::bitset<_Nb>,
+ public __gnu_debug::_Safe_sequence_base
{
- typedef __gnu_norm::bitset<_Nb> _Base;
+ typedef _GLIBCXX_STD::bitset<_Nb> _Base;
typedef __gnu_debug::_Safe_sequence_base _Safe_base;
public:
@@ -141,7 +142,7 @@ namespace __gnu_debug_def
bitset<_Nb>&
operator|=(const bitset<_Nb>& __rhs)
{
- _M_base() != __rhs;
+ _M_base() |= __rhs;
return *this;
}
diff --git a/libstdc++-v3/include/debug/deque b/libstdc++-v3/include/debug/deque
index ed68b37a798..c39a49c0461 100644
--- a/libstdc++-v3/include/debug/deque
+++ b/libstdc++-v3/include/debug/deque
@@ -1,6 +1,6 @@
// Debugging deque implementation -*- C++ -*-
-// Copyright (C) 2003
+// Copyright (C) 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -39,10 +39,10 @@ namespace __gnu_debug_def
{
template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
class deque
- : public __gnu_norm::deque<_Tp, _Allocator>,
- public __gnu_debug::_Safe_sequence<deque<_Tp, _Allocator> >
+ : public _GLIBCXX_STD::deque<_Tp, _Allocator>,
+ public __gnu_debug::_Safe_sequence<deque<_Tp, _Allocator> >
{
- typedef __gnu_norm::deque<_Tp, _Allocator> _Base;
+ typedef _GLIBCXX_STD::deque<_Tp, _Allocator> _Base;
typedef __gnu_debug::_Safe_sequence<deque> _Safe_base;
public:
diff --git a/libstdc++-v3/include/debug/formatter.h b/libstdc++-v3/include/debug/formatter.h
index 6ed00bd868e..7022fa70077 100644
--- a/libstdc++-v3/include/debug/formatter.h
+++ b/libstdc++-v3/include/debug/formatter.h
@@ -1,6 +1,6 @@
// Debug-mode error formatting implementation -*- C++ -*-
-// Copyright (C) 2003
+// Copyright (C) 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -36,7 +36,7 @@
namespace __gnu_debug
{
- using namespace std;
+ using std::type_info;
/** Determine if the two types are the same. */
template<typename _Type1, typename _Type2>
diff --git a/libstdc++-v3/include/debug/list b/libstdc++-v3/include/debug/list
index f9bb9f9435c..556c9d9acff 100644
--- a/libstdc++-v3/include/debug/list
+++ b/libstdc++-v3/include/debug/list
@@ -1,6 +1,6 @@
// Debugging list implementation -*- C++ -*-
-// Copyright (C) 2003
+// Copyright (C) 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -40,10 +40,10 @@ namespace __gnu_debug_def
{
template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
class list
- : public __gnu_norm::list<_Tp, _Allocator>,
+ : public _GLIBCXX_STD::list<_Tp, _Allocator>,
public __gnu_debug::_Safe_sequence<list<_Tp, _Allocator> >
{
- typedef __gnu_norm::list<_Tp, _Allocator> _Base;
+ typedef _GLIBCXX_STD::list<_Tp, _Allocator> _Base;
typedef __gnu_debug::_Safe_sequence<list> _Safe_base;
public:
@@ -76,7 +76,7 @@ namespace __gnu_debug_def
template<class _InputIterator>
list(_InputIterator __first, _InputIterator __last,
const _Allocator& __a = _Allocator())
- : _Base(__gnu_debug::__check_valid_range(__first, __last), __last, __a)
+ : _Base(__gnu_debug::__check_valid_range(__first, __last), __last, __a)
{ }
diff --git a/libstdc++-v3/include/debug/map.h b/libstdc++-v3/include/debug/map.h
index 9470e667434..2a6794b31e0 100644
--- a/libstdc++-v3/include/debug/map.h
+++ b/libstdc++-v3/include/debug/map.h
@@ -1,6 +1,6 @@
// Debugging map implementation -*- C++ -*-
-// Copyright (C) 2003
+// Copyright (C) 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -40,10 +40,10 @@ namespace __gnu_debug_def
template<typename _Key, typename _Tp, typename _Compare = std::less<_Key>,
typename _Allocator = std::allocator<std::pair<const _Key, _Tp> > >
class map
- : public __gnu_norm::map<_Key, _Tp, _Compare, _Allocator>,
+ : public _GLIBCXX_STD::map<_Key, _Tp, _Compare, _Allocator>,
public __gnu_debug::_Safe_sequence<map<_Key, _Tp, _Compare, _Allocator> >
{
- typedef __gnu_norm::map<_Key, _Tp, _Compare, _Allocator> _Base;
+ typedef _GLIBCXX_STD::map<_Key, _Tp, _Compare, _Allocator> _Base;
typedef __gnu_debug::_Safe_sequence<map> _Safe_base;
public:
diff --git a/libstdc++-v3/include/debug/multimap.h b/libstdc++-v3/include/debug/multimap.h
index 3772c31dc69..4de1e3b58f4 100644
--- a/libstdc++-v3/include/debug/multimap.h
+++ b/libstdc++-v3/include/debug/multimap.h
@@ -1,6 +1,6 @@
// Debugging multimap implementation -*- C++ -*-
-// Copyright (C) 2003
+// Copyright (C) 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -40,10 +40,10 @@ namespace __gnu_debug_def
template<typename _Key, typename _Tp, typename _Compare = std::less<_Key>,
typename _Allocator = std::allocator<std::pair<const _Key, _Tp> > >
class multimap
- : public __gnu_norm::multimap<_Key, _Tp, _Compare, _Allocator>,
+ : public _GLIBCXX_STD::multimap<_Key, _Tp, _Compare, _Allocator>,
public __gnu_debug::_Safe_sequence<multimap<_Key,_Tp,_Compare,_Allocator> >
{
- typedef __gnu_norm::multimap<_Key, _Tp, _Compare, _Allocator> _Base;
+ typedef _GLIBCXX_STD::multimap<_Key, _Tp, _Compare, _Allocator> _Base;
typedef __gnu_debug::_Safe_sequence<multimap> _Safe_base;
public:
diff --git a/libstdc++-v3/include/debug/multiset.h b/libstdc++-v3/include/debug/multiset.h
index 19bc29a960a..92042fef68c 100644
--- a/libstdc++-v3/include/debug/multiset.h
+++ b/libstdc++-v3/include/debug/multiset.h
@@ -1,6 +1,6 @@
// Debugging multiset implementation -*- C++ -*-
-// Copyright (C) 2003
+// Copyright (C) 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -40,10 +40,10 @@ namespace __gnu_debug_def
template<typename _Key, typename _Compare = std::less<_Key>,
typename _Allocator = std::allocator<_Key> >
class multiset
- : public __gnu_norm::multiset<_Key, _Compare, _Allocator>,
+ : public _GLIBCXX_STD::multiset<_Key, _Compare, _Allocator>,
public __gnu_debug::_Safe_sequence<multiset<_Key, _Compare, _Allocator> >
{
- typedef __gnu_norm::multiset<_Key, _Compare, _Allocator> _Base;
+ typedef _GLIBCXX_STD::multiset<_Key, _Compare, _Allocator> _Base;
typedef __gnu_debug::_Safe_sequence<multiset> _Safe_base;
public:
diff --git a/libstdc++-v3/include/debug/safe_iterator.h b/libstdc++-v3/include/debug/safe_iterator.h
index 72ba3b52f10..7482d6caa65 100644
--- a/libstdc++-v3/include/debug/safe_iterator.h
+++ b/libstdc++-v3/include/debug/safe_iterator.h
@@ -1,6 +1,6 @@
// Safe iterator implementation -*- C++ -*-
-// Copyright (C) 2003
+// Copyright (C) 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -38,6 +38,9 @@
namespace __gnu_debug
{
+ using std::iterator_traits;
+ using std::pair;
+
/** Iterators that derive from _Safe_iterator_base but that aren't
* _Safe_iterators can be determined singular or non-singular via
* _Safe_iterator_base.
diff --git a/libstdc++-v3/include/debug/set.h b/libstdc++-v3/include/debug/set.h
index b9200adf233..8656cb0aff6 100644
--- a/libstdc++-v3/include/debug/set.h
+++ b/libstdc++-v3/include/debug/set.h
@@ -1,6 +1,6 @@
// Debugging set implementation -*- C++ -*-
-// Copyright (C) 2003
+// Copyright (C) 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -40,10 +40,10 @@ namespace __gnu_debug_def
template<typename _Key, typename _Compare = std::less<_Key>,
typename _Allocator = std::allocator<_Key> >
class set
- : public __gnu_norm::set<_Key,_Compare,_Allocator>,
+ : public _GLIBCXX_STD::set<_Key,_Compare,_Allocator>,
public __gnu_debug::_Safe_sequence<set<_Key, _Compare, _Allocator> >
{
- typedef __gnu_norm::set<_Key,_Compare,_Allocator> _Base;
+ typedef _GLIBCXX_STD::set<_Key,_Compare,_Allocator> _Base;
typedef __gnu_debug::_Safe_sequence<set> _Safe_base;
public:
diff --git a/libstdc++-v3/include/debug/vector b/libstdc++-v3/include/debug/vector
index f7fa3e8f092..0cc2997b975 100644
--- a/libstdc++-v3/include/debug/vector
+++ b/libstdc++-v3/include/debug/vector
@@ -1,6 +1,6 @@
// Debugging vector implementation -*- C++ -*-
-// Copyright (C) 2003
+// Copyright (C) 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -41,10 +41,10 @@ namespace __gnu_debug_def
template<typename _Tp,
typename _Allocator = std::allocator<_Tp> >
class vector
- : public __gnu_norm::vector<_Tp, _Allocator>,
+ : public _GLIBCXX_STD::vector<_Tp, _Allocator>,
public __gnu_debug::_Safe_sequence<vector<_Tp, _Allocator> >
{
- typedef __gnu_norm::vector<_Tp, _Allocator> _Base;
+ typedef _GLIBCXX_STD::vector<_Tp, _Allocator> _Base;
typedef __gnu_debug::_Safe_sequence<vector> _Safe_base;
typedef typename _Base::const_iterator _Base_const_iterator;
diff --git a/libstdc++-v3/include/ext/bitmap_allocator.h b/libstdc++-v3/include/ext/bitmap_allocator.h
new file mode 100644
index 00000000000..71b278b30dc
--- /dev/null
+++ b/libstdc++-v3/include/ext/bitmap_allocator.h
@@ -0,0 +1,823 @@
+// Bitmapped Allocator. -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+
+
+#if !defined _BITMAP_ALLOCATOR_H
+#define _BITMAP_ALLOCATOR_H 1
+
+#include <cstddef>
+//For std::size_t, and ptrdiff_t.
+#include <utility>
+//For std::pair.
+#include <algorithm>
+//std::find_if.
+#include <vector>
+//For the free list of exponentially growing memory blocks. At max,
+//size of the vector should be not more than the number of bits in an
+//integer or an unsigned integer.
+#include <functional>
+//For greater_equal, and less_equal.
+#include <new>
+//For operator new.
+#include <bits/gthr.h>
+//For __gthread_mutex_t, __gthread_mutex_lock and __gthread_mutex_unlock.
+#include <ext/new_allocator.h>
+//For __gnu_cxx::new_allocator for std::vector.
+
+#include <cassert>
+#define NDEBUG
+
+//#define CHECK_FOR_ERRORS
+
+namespace __gnu_cxx
+{
+
+ class _Mutex {
+ __gthread_mutex_t _M_mut;
+ //Prevent Copying and assignment.
+ _Mutex (_Mutex const&);
+ _Mutex& operator= (_Mutex const&);
+ public:
+ _Mutex ()
+ {
+#if !defined __GTHREAD_MUTEX_INIT
+ __GTHREAD_MUTEX_INIT_FUNCTION(&_M_mut);
+#else
+ __gthread_mutex_t __mtemp = __GTHREAD_MUTEX_INIT;
+ _M_mut = __mtemp;
+#endif
+ }
+ ~_Mutex ()
+ {
+ //Gthreads does not define a Mutex Destruction Function.
+ }
+ __gthread_mutex_t *_M_get() { return &_M_mut; }
+ };
+
+
+ class _Lock {
+ _Mutex& _M_mt;
+ //Prevent Copying and assignment.
+ _Lock (_Lock const&);
+ _Lock& operator= (_Lock const&);
+ public:
+ _Lock (_Mutex& __mref) : _M_mt(__mref)
+ {
+ __gthread_mutex_lock(_M_mt._M_get());
+ }
+ ~_Lock () { __gthread_mutex_unlock(_M_mt._M_get()); }
+ };
+
+ namespace __aux_balloc {
+
+ static const unsigned int _Bits_Per_Byte = 8;
+ static const unsigned int _Bits_Per_Block = sizeof(unsigned int) * _Bits_Per_Byte;
+
+ template <typename _Addr_Pair_t>
+ inline size_t __balloc_num_blocks (_Addr_Pair_t __ap)
+ {
+ return (__ap.second - __ap.first) + 1;
+ }
+
+ template <typename _Addr_Pair_t>
+ inline size_t __balloc_num_bit_maps (_Addr_Pair_t __ap)
+ {
+ return __balloc_num_blocks(__ap) / _Bits_Per_Block;
+ }
+
+ //T should be a pointer type.
+ template <typename _Tp>
+ class _Inclusive_between : public std::unary_function<typename std::pair<_Tp, _Tp>, bool> {
+ typedef _Tp pointer;
+ pointer _M_ptr_value;
+ typedef typename std::pair<_Tp, _Tp> _Block_pair;
+
+ public:
+ _Inclusive_between (pointer __ptr) : _M_ptr_value(__ptr) { }
+ bool operator () (_Block_pair __bp) const throw ()
+ {
+ if (std::less_equal<pointer> ()(_M_ptr_value, __bp.second) &&
+ std::greater_equal<pointer> ()(_M_ptr_value, __bp.first))
+ return true;
+ else
+ return false;
+ }
+ };
+
+ //Used to pass a Functor to functions by reference.
+ template <typename _Functor>
+ class _Functor_Ref :
+ public std::unary_function<typename _Functor::argument_type, typename _Functor::result_type> {
+ _Functor& _M_fref;
+
+ public:
+ typedef typename _Functor::argument_type argument_type;
+ typedef typename _Functor::result_type result_type;
+
+ _Functor_Ref (_Functor& __fref) : _M_fref(__fref) { }
+ result_type operator() (argument_type __arg) { return _M_fref (__arg); }
+ };
+
+
+ //T should be a pointer type, and A is the Allocator for the vector.
+ template <typename _Tp, typename _Alloc>
+ class _Ffit_finder : public std::unary_function<typename std::pair<_Tp, _Tp>, bool> {
+ typedef typename std::vector<std::pair<_Tp, _Tp>, _Alloc> _BPVector;
+ typedef typename _BPVector::difference_type _Counter_type;
+ typedef typename std::pair<_Tp, _Tp> _Block_pair;
+
+ unsigned int *_M_pbitmap;
+ unsigned int _M_data_offset;
+
+ public:
+ _Ffit_finder () : _M_pbitmap (0), _M_data_offset (0) { }
+
+ bool operator() (_Block_pair __bp) throw()
+ {
+ //Set the _rover to the last unsigned integer, which is the
+ //bitmap to the first free block. Thus, the bitmaps are in exact
+ //reverse order of the actual memory layout. So, we count down
+ //the bimaps, which is the same as moving up the memory.
+
+ //If the used count stored at the start of the Bit Map headers
+ //is equal to the number of Objects that the current Block can
+ //store, then there is definitely no space for another single
+ //object, so just return false.
+ _Counter_type __diff = __gnu_cxx::__aux_balloc::__balloc_num_bit_maps (__bp);
+
+ assert (*(reinterpret_cast<unsigned int*>(__bp.first) - (__diff + 1)) <=
+ __gnu_cxx::__aux_balloc::__balloc_num_blocks (__bp));
+
+ if (*(reinterpret_cast<unsigned int*>(__bp.first) - (__diff + 1)) ==
+ __gnu_cxx::__aux_balloc::__balloc_num_blocks (__bp))
+ return false;
+
+ unsigned int *__rover = reinterpret_cast<unsigned int*>(__bp.first) - 1;
+ for (_Counter_type __i = 0; __i < __diff; ++__i)
+ {
+ _M_data_offset = __i;
+ if (*__rover)
+ {
+ _M_pbitmap = __rover;
+ return true;
+ }
+ --__rover;
+ }
+ return false;
+ }
+
+ unsigned int *_M_get () { return _M_pbitmap; }
+ unsigned int _M_offset () { return _M_data_offset * _Bits_Per_Block; }
+ };
+
+ //T should be a pointer type.
+ template <typename _Tp, typename _Alloc>
+ class _Bit_map_counter {
+
+ typedef typename std::vector<std::pair<_Tp, _Tp>, _Alloc> _BPVector;
+ typedef typename _BPVector::size_type _Index_type;
+ typedef _Tp pointer;
+
+ _BPVector& _M_vbp;
+ unsigned int *_M_curr_bmap;
+ unsigned int *_M_last_bmap_in_block;
+ _Index_type _M_curr_index;
+
+ public:
+ //Use the 2nd parameter with care. Make sure that such an entry
+ //exists in the vector before passing that particular index to
+ //this ctor.
+ _Bit_map_counter (_BPVector& Rvbp, int __index = -1) : _M_vbp(Rvbp)
+ {
+ this->_M_reset(__index);
+ }
+
+ void _M_reset (int __index = -1) throw()
+ {
+ if (__index == -1)
+ {
+ _M_curr_bmap = 0;
+ _M_curr_index = (_Index_type)-1;
+ return;
+ }
+
+ _M_curr_index = __index;
+ _M_curr_bmap = reinterpret_cast<unsigned int*>(_M_vbp[_M_curr_index].first) - 1;
+
+ assert (__index <= (int)_M_vbp.size() - 1);
+
+ _M_last_bmap_in_block = _M_curr_bmap -
+ ((_M_vbp[_M_curr_index].second - _M_vbp[_M_curr_index].first + 1) / _Bits_Per_Block - 1);
+ }
+
+ //Dangerous Function! Use with extreme care. Pass to this
+ //functions ONLY those values that are known to be correct,
+ //otherwise this will mess up big time.
+ void _M_set_internal_bit_map (unsigned int *__new_internal_marker) throw()
+ {
+ _M_curr_bmap = __new_internal_marker;
+ }
+
+ bool _M_finished () const throw()
+ {
+ return (_M_curr_bmap == 0);
+ }
+
+ _Bit_map_counter& operator++ () throw()
+ {
+ if (_M_curr_bmap == _M_last_bmap_in_block)
+ {
+ if (++_M_curr_index == _M_vbp.size())
+ {
+ _M_curr_bmap = 0;
+ }
+ else
+ {
+ this->_M_reset (_M_curr_index);
+ }
+ }
+ else
+ {
+ --_M_curr_bmap;
+ }
+ return *this;
+ }
+
+ unsigned int *_M_get ()
+ {
+ return _M_curr_bmap;
+ }
+
+ pointer base () { return _M_vbp[_M_curr_index].first; }
+ unsigned int _M_offset ()
+ {
+ return _Bits_Per_Block * ((reinterpret_cast<unsigned int*>(this->base()) - _M_curr_bmap) - 1);
+ }
+
+ unsigned int _M_where () { return _M_curr_index; }
+ };
+ }
+
+ //Generic Version of the bsf instruction.
+ typedef unsigned int _Bit_map_type;
+ static inline unsigned int _Bit_scan_forward (_Bit_map_type __num)
+ {
+ unsigned int __ret_val = 0;
+ while (__num % 2 == 0)
+ {
+ ++__ret_val;
+ __num >>= 1;
+ }
+ return __ret_val;
+ }
+
+ struct _OOM_handler {
+ static std::new_handler _S_old_handler;
+ static bool _S_handled_oom;
+ typedef void (*_FL_clear_proc)(void);
+ static _FL_clear_proc _S_oom_fcp;
+
+ _OOM_handler (_FL_clear_proc __fcp)
+ {
+ _S_oom_fcp = __fcp;
+ _S_old_handler = std::set_new_handler (_S_handle_oom_proc);
+ _S_handled_oom = false;
+ }
+
+ static void _S_handle_oom_proc()
+ {
+ _S_oom_fcp();
+ std::set_new_handler (_S_old_handler);
+ _S_handled_oom = true;
+ }
+
+ ~_OOM_handler ()
+ {
+ if (!_S_handled_oom)
+ std::set_new_handler (_S_old_handler);
+ }
+ };
+
+ std::new_handler _OOM_handler::_S_old_handler;
+ bool _OOM_handler::_S_handled_oom = false;
+ _OOM_handler::_FL_clear_proc _OOM_handler::_S_oom_fcp = 0;
+
+
+ class _BA_free_list_store {
+ struct _LT_pointer_compare {
+ template <typename _Tp>
+ bool operator() (_Tp* __pt, _Tp const& __crt) const throw()
+ {
+ return *__pt < __crt;
+ }
+ };
+
+#if defined __GTHREADS
+ static _Mutex _S_bfl_mutex;
+#endif
+ static std::vector<unsigned int*> _S_free_list;
+ typedef std::vector<unsigned int*>::iterator _FLIter;
+
+ static void _S_validate_free_list(unsigned int *__addr) throw()
+ {
+ const unsigned int Max_Size = 64;
+ if (_S_free_list.size() >= Max_Size)
+ {
+ //Ok, the threshold value has been reached.
+ //We determine which block to remove from the list of free
+ //blocks.
+ if (*__addr >= *_S_free_list.back())
+ {
+ //Ok, the new block is greater than or equal to the last
+ //block in the list of free blocks. We just free the new
+ //block.
+ operator delete((void*)__addr);
+ return;
+ }
+ else
+ {
+ //Deallocate the last block in the list of free lists, and
+ //insert the new one in it's correct position.
+ operator delete((void*)_S_free_list.back());
+ _S_free_list.pop_back();
+ }
+ }
+
+ //Just add the block to the list of free lists
+ //unconditionally.
+ _FLIter __temp = std::lower_bound(_S_free_list.begin(), _S_free_list.end(),
+ *__addr, _LT_pointer_compare ());
+ //We may insert the new free list before _temp;
+ _S_free_list.insert(__temp, __addr);
+ }
+
+ static bool _S_should_i_give(unsigned int __block_size, unsigned int __required_size) throw()
+ {
+ const unsigned int Max_Wastage_Percentage = 36;
+
+ if (__block_size >= __required_size &&
+ (((__block_size - __required_size) * 100 / __block_size) < Max_Wastage_Percentage))
+ return true;
+ else
+ return false;
+ }
+
+ public:
+ typedef _BA_free_list_store _BFL_type;
+
+ static inline void _S_insert_free_list(unsigned int *__addr) throw()
+ {
+#if defined __GTHREADS
+ _Lock __bfl_lock(*&_S_bfl_mutex);
+#endif
+ //Call _S_validate_free_list to decide what should be done with this
+ //particular free list.
+ _S_validate_free_list(--__addr);
+ }
+
+ static unsigned int *_S_get_free_list(unsigned int __sz) throw (std::bad_alloc)
+ {
+#if defined __GTHREADS
+ _Lock __bfl_lock(*&_S_bfl_mutex);
+#endif
+ _FLIter __temp = std::lower_bound(_S_free_list.begin(), _S_free_list.end(),
+ __sz, _LT_pointer_compare());
+ if (__temp == _S_free_list.end() || !_S_should_i_give (**__temp, __sz))
+ {
+ _OOM_handler __set_handler(_BFL_type::_S_clear);
+ unsigned int *__ret_val = reinterpret_cast<unsigned int*>
+ (operator new (__sz + sizeof(unsigned int)));
+ *__ret_val = __sz;
+ return ++__ret_val;
+ }
+ else
+ {
+ unsigned int* __ret_val = *__temp;
+ _S_free_list.erase (__temp);
+ return ++__ret_val;
+ }
+ }
+
+ //This function just clears the internal Free List, and gives back
+ //all the memory to the OS.
+ static void _S_clear()
+ {
+#if defined __GTHREADS
+ _Lock __bfl_lock(*&_S_bfl_mutex);
+#endif
+ _FLIter __iter = _S_free_list.begin();
+ while (__iter != _S_free_list.end())
+ {
+ operator delete((void*)*__iter);
+ ++__iter;
+ }
+ _S_free_list.clear();
+ }
+
+ };
+
+#if defined __GTHREADS
+ _Mutex _BA_free_list_store::_S_bfl_mutex;
+#endif
+ std::vector<unsigned int*> _BA_free_list_store::_S_free_list;
+
+ template <class _Tp> class bitmap_allocator;
+ // specialize for void:
+ template <> class bitmap_allocator<void> {
+ public:
+ typedef void* pointer;
+ typedef const void* const_pointer;
+ // reference-to-void members are impossible.
+ typedef void value_type;
+ template <class U> struct rebind { typedef bitmap_allocator<U> other; };
+ };
+
+ template <class _Tp> class bitmap_allocator : private _BA_free_list_store {
+ public:
+ typedef size_t size_type;
+ typedef ptrdiff_t difference_type;
+ typedef _Tp* pointer;
+ typedef const _Tp* const_pointer;
+ typedef _Tp& reference;
+ typedef const _Tp& const_reference;
+ typedef _Tp value_type;
+ template <class U> struct rebind { typedef bitmap_allocator<U> other; };
+
+ private:
+ static const unsigned int _Bits_Per_Byte = 8;
+ static const unsigned int _Bits_Per_Block = sizeof(unsigned int) * _Bits_Per_Byte;
+
+ static inline void _S_bit_allocate(unsigned int *__pbmap, unsigned int __pos) throw()
+ {
+ unsigned int __mask = 1 << __pos;
+ __mask = ~__mask;
+ *__pbmap &= __mask;
+ }
+
+ static inline void _S_bit_free(unsigned int *__pbmap, unsigned int __Pos) throw()
+ {
+ unsigned int __mask = 1 << __Pos;
+ *__pbmap |= __mask;
+ }
+
+ static inline void *_S_memory_get(size_t __sz) throw (std::bad_alloc)
+ {
+ return operator new(__sz);
+ }
+
+ static inline void _S_memory_put(void *__vptr) throw ()
+ {
+ operator delete(__vptr);
+ }
+
+ typedef typename std::pair<pointer, pointer> _Block_pair;
+ typedef typename __gnu_cxx::new_allocator<_Block_pair> _BPVec_allocator_type;
+ typedef typename std::vector<_Block_pair, _BPVec_allocator_type> _BPVector;
+
+
+#if defined CHECK_FOR_ERRORS
+ //Complexity: O(lg(N)). Where, N is the number of block of size
+ //sizeof(value_type).
+ static void _S_check_for_free_blocks() throw()
+ {
+ typedef typename __gnu_cxx::__aux_balloc::_Ffit_finder<pointer, _BPVec_allocator_type> _FFF;
+ _FFF __fff;
+ typedef typename _BPVector::iterator _BPiter;
+ _BPiter __bpi = std::find_if(_S_mem_blocks.begin(), _S_mem_blocks.end(),
+ __gnu_cxx::__aux_balloc::_Functor_Ref<_FFF>(__fff));
+ assert(__bpi == _S_mem_blocks.end());
+ }
+#endif
+
+
+ //Complexity: O(1), but internally depends upon the complexity of
+ //the function _BA_free_list_store::_S_get_free_list. The part
+ //where the bitmap headers are written is of worst case complexity:
+ //O(X),where X is the number of blocks of size sizeof(value_type)
+ //within the newly acquired block. Having a tight bound.
+ static void _S_refill_pool() throw (std::bad_alloc)
+ {
+#if defined CHECK_FOR_ERRORS
+ _S_check_for_free_blocks();
+#endif
+
+ const unsigned int __num_bit_maps = _S_block_size / _Bits_Per_Block;
+ const unsigned int __size_to_allocate = sizeof(unsigned int) +
+ _S_block_size * sizeof(value_type) + __num_bit_maps*sizeof(unsigned int);
+
+ unsigned int *__temp =
+ reinterpret_cast<unsigned int*>(_BA_free_list_store::_S_get_free_list(__size_to_allocate));
+ *__temp = 0;
+ ++__temp;
+
+ //The Header information goes at the Beginning of the Block.
+ _Block_pair __bp = std::make_pair(reinterpret_cast<pointer>(__temp + __num_bit_maps),
+ reinterpret_cast<pointer>(__temp + __num_bit_maps)
+ + _S_block_size - 1);
+
+ //Fill the Vector with this information.
+ _S_mem_blocks.push_back(__bp);
+
+ unsigned int __bit_mask = 0; //0 Indicates all Allocated.
+ __bit_mask = ~__bit_mask; //1 Indicates all Free.
+
+ for (unsigned int __i = 0; __i < __num_bit_maps; ++__i)
+ __temp[__i] = __bit_mask;
+
+ //On some implementations, operator new might throw bad_alloc, or
+ //malloc might fail if the size passed is too large, therefore, we
+ //limit the size passed to malloc or operator new.
+ _S_block_size *= 2;
+ }
+
+ static _BPVector _S_mem_blocks;
+ static unsigned int _S_block_size;
+ static __gnu_cxx::__aux_balloc::_Bit_map_counter<pointer, _BPVec_allocator_type> _S_last_request;
+ static typename _BPVector::size_type _S_last_dealloc_index;
+#if defined __GTHREADS
+ static _Mutex _S_mut;
+#endif
+
+ public:
+ bitmap_allocator() throw()
+ { }
+
+ bitmap_allocator(const bitmap_allocator&) { }
+
+ template <typename _Tp1> bitmap_allocator(const bitmap_allocator<_Tp1>&) throw()
+ { }
+
+ ~bitmap_allocator() throw()
+ { }
+
+ //Complexity: Worst case complexity is O(N), but that is hardly ever
+ //hit. if and when this particular case is encountered, the next few
+ //cases are guaranteed to have a worst case complexity of O(1)!
+ //That's why this function performs very well on the average. you
+ //can consider this function to be having a complexity refrred to
+ //commonly as: Amortized Constant time.
+ static pointer _S_allocate_single_object()
+ {
+#if defined __GTHREADS
+ _Lock _bit_lock(*&_S_mut);
+#endif
+ //The algorithm is something like this: The last_requst variable
+ //points to the last accessed Bit Map. When such a condition
+ //occurs, we try to find a free block in the current bitmap, or
+ //succeeding bitmaps until the last bitmap is reached. If no free
+ //block turns up, we resort to First Fit method. But, again, the
+ //First Fit is used only upto the point where we started the
+ //previous linear search.
+
+ while (_S_last_request._M_finished() == false && (*(_S_last_request._M_get()) == 0))
+ {
+ _S_last_request.operator++();
+ }
+
+ if (_S_last_request._M_finished())
+ {
+ //Fall Back to First Fit algorithm.
+ typedef typename __gnu_cxx::__aux_balloc::_Ffit_finder<pointer, _BPVec_allocator_type> _FFF;
+ _FFF __fff;
+ typedef typename _BPVector::iterator _BPiter;
+ _BPiter __bpi = std::find_if(_S_mem_blocks.begin(), _S_mem_blocks.end(),
+ __gnu_cxx::__aux_balloc::_Functor_Ref<_FFF>(__fff));
+
+ if (__bpi != _S_mem_blocks.end())
+ {
+ //Search was successful. Ok, now mark the first bit from
+ //the right as 0, meaning Allocated. This bit is obtained
+ //by calling _M_get() on __fff.
+ unsigned int __nz_bit = _Bit_scan_forward(*__fff._M_get());
+ _S_bit_allocate(__fff._M_get(), __nz_bit);
+
+ _S_last_request._M_reset(__bpi - _S_mem_blocks.begin());
+
+ //Now, get the address of the bit we marked as allocated.
+ pointer __ret_val = __bpi->first + __fff._M_offset() + __nz_bit;
+ unsigned int *__puse_count = reinterpret_cast<unsigned int*>(__bpi->first) -
+ (__gnu_cxx::__aux_balloc::__balloc_num_bit_maps(*__bpi) + 1);
+ ++(*__puse_count);
+ return __ret_val;
+ }
+ else
+ {
+ //Search was unsuccessful. We Add more memory to the pool
+ //by calling _S_refill_pool().
+ _S_refill_pool();
+
+ //_M_Reset the _S_last_request structure to the first free
+ //block's bit map.
+ _S_last_request._M_reset(_S_mem_blocks.size() - 1);
+
+ //Now, mark that bit as allocated.
+ }
+ }
+ //_S_last_request holds a pointer to a valid bit map, that points
+ //to a free block in memory.
+ unsigned int __nz_bit = _Bit_scan_forward(*_S_last_request._M_get());
+ _S_bit_allocate(_S_last_request._M_get(), __nz_bit);
+
+ pointer __ret_val = _S_last_request.base() + _S_last_request._M_offset() + __nz_bit;
+
+ unsigned int *__puse_count = reinterpret_cast<unsigned int*>
+ (_S_mem_blocks[_S_last_request._M_where()].first) -
+ (__gnu_cxx::__aux_balloc::__balloc_num_bit_maps(_S_mem_blocks[_S_last_request._M_where()]) + 1);
+ ++(*__puse_count);
+ return __ret_val;
+ }
+
+ //Complexity: O(1), but internally the complexity depends upon the
+ //complexity of the function(s) _S_allocate_single_object and
+ //_S_memory_get.
+ pointer allocate(size_type __n)
+ {
+ if (__n == 1)
+ return _S_allocate_single_object();
+ else
+ return reinterpret_cast<pointer>(_S_memory_get(__n * sizeof(value_type)));
+ }
+
+ //Complexity: Worst case complexity is O(N) where N is the number of
+ //blocks of size sizeof(value_type) within the free lists that the
+ //allocator holds. However, this worst case is hit only when the
+ //user supplies a bogus argument to hint. If the hint argument is
+ //sensible, then the complexity drops to O(lg(N)), and in extreme
+ //cases, even drops to as low as O(1). So, if the user supplied
+ //argument is good, then this function performs very well.
+ pointer allocate(size_type __n, typename bitmap_allocator<void>::const_pointer)
+ {
+ return allocate(__n);
+ }
+
+ void deallocate(pointer __p, size_type __n) throw()
+ {
+ if (__n == 1)
+ _S_deallocate_single_object(__p);
+ else
+ _S_memory_put(__p);
+ }
+
+ //Complexity: O(lg(N)), but the worst case is hit quite often! I
+ //need to do something about this. I'll be able to work on it, only
+ //when I have some solid figures from a few real apps.
+ static void _S_deallocate_single_object(pointer __p) throw()
+ {
+#if defined __GTHREADS
+ _Lock _bit_lock(*&_S_mut);
+#endif
+ typedef typename _BPVector::iterator iterator;
+ typedef typename _BPVector::difference_type diff_type;
+
+ diff_type __diff;
+ int __displacement;
+
+ assert(_S_last_dealloc_index >= 0);
+
+ if (__gnu_cxx::__aux_balloc::_Inclusive_between<pointer>(__p)(_S_mem_blocks[_S_last_dealloc_index]))
+ {
+ assert(_S_last_dealloc_index <= _S_mem_blocks.size() - 1);
+
+ //Initial Assumption was correct!
+ __diff = _S_last_dealloc_index;
+ __displacement = __p - _S_mem_blocks[__diff].first;
+ }
+ else
+ {
+ iterator _iter = (std::find_if(_S_mem_blocks.begin(), _S_mem_blocks.end(),
+ __gnu_cxx::__aux_balloc::_Inclusive_between<pointer>(__p)));
+ assert(_iter != _S_mem_blocks.end());
+
+ __diff = _iter - _S_mem_blocks.begin();
+ __displacement = __p - _S_mem_blocks[__diff].first;
+ _S_last_dealloc_index = __diff;
+ }
+
+ //Get the position of the iterator that has been found.
+ const unsigned int __rotate = __displacement % _Bits_Per_Block;
+ unsigned int *__bit_mapC = reinterpret_cast<unsigned int*>(_S_mem_blocks[__diff].first) - 1;
+ __bit_mapC -= (__displacement / _Bits_Per_Block);
+
+ _S_bit_free(__bit_mapC, __rotate);
+ unsigned int *__puse_count = reinterpret_cast<unsigned int*>
+ (_S_mem_blocks[__diff].first) -
+ (__gnu_cxx::__aux_balloc::__balloc_num_bit_maps(_S_mem_blocks[__diff]) + 1);
+
+ assert(*__puse_count != 0);
+
+ --(*__puse_count);
+
+ if (!*__puse_count)
+ {
+ _S_block_size /= 2;
+
+ //We may safely remove this block.
+ _Block_pair __bp = _S_mem_blocks[__diff];
+ _S_insert_free_list(__puse_count);
+ _S_mem_blocks.erase(_S_mem_blocks.begin() + __diff);
+
+ //We reset the _S_last_request variable to reflect the erased
+ //block. We do this to pretect future requests after the last
+ //block has been removed from a particular memory Chunk,
+ //which in turn has been returned to the free list, and
+ //hence had been erased from the vector, so the size of the
+ //vector gets reduced by 1.
+ if ((diff_type)_S_last_request._M_where() >= __diff--)
+ {
+ _S_last_request._M_reset(__diff);
+ // assert(__diff >= 0);
+ }
+
+ //If the Index into the vector of the region of memory that
+ //might hold the next address that will be passed to
+ //deallocated may have been invalidated due to the above
+ //erase procedure being called on the vector, hence we try
+ //to restore this invariant too.
+ if (_S_last_dealloc_index >= _S_mem_blocks.size())
+ {
+ _S_last_dealloc_index =(__diff != -1 ? __diff : 0);
+ assert(_S_last_dealloc_index >= 0);
+ }
+ }
+ }
+
+ pointer address(reference r) const { return &r; }
+ const_pointer address(const_reference r) const { return &r; }
+
+ size_type max_size(void) const throw() { return (size_type()-1)/sizeof(value_type); }
+
+ void construct (pointer p, const_reference _data)
+ {
+ new (p) value_type (_data);
+ }
+
+ void destroy (pointer p)
+ {
+ p->~value_type();
+ }
+
+ };
+
+ template <typename _Tp>
+ typename bitmap_allocator<_Tp>::_BPVector bitmap_allocator<_Tp>::_S_mem_blocks;
+
+ template <typename _Tp>
+ unsigned int bitmap_allocator<_Tp>::_S_block_size = bitmap_allocator<_Tp>::_Bits_Per_Block;
+
+ template <typename _Tp>
+ typename __gnu_cxx::bitmap_allocator<_Tp>::_BPVector::size_type
+ bitmap_allocator<_Tp>::_S_last_dealloc_index = 0;
+
+ template <typename _Tp>
+ __gnu_cxx::__aux_balloc::_Bit_map_counter
+ <typename bitmap_allocator<_Tp>::pointer, typename bitmap_allocator<_Tp>::_BPVec_allocator_type>
+ bitmap_allocator<_Tp>::_S_last_request(_S_mem_blocks);
+
+#if defined __GTHREADS
+ template <typename _Tp>
+ __gnu_cxx::_Mutex
+ bitmap_allocator<_Tp>::_S_mut;
+#endif
+
+ template <typename _Tp1, typename _Tp2>
+ bool operator== (const bitmap_allocator<_Tp1>&, const bitmap_allocator<_Tp2>&) throw()
+ {
+ return true;
+ }
+
+ template <typename _Tp1, typename _Tp2>
+ bool operator!= (const bitmap_allocator<_Tp1>&, const bitmap_allocator<_Tp2>&) throw()
+ {
+ return false;
+ }
+}
+
+
+#endif //_BITMAP_ALLOCATOR_H
diff --git a/libstdc++-v3/include/ext/debug_allocator.h b/libstdc++-v3/include/ext/debug_allocator.h
index e744ab61fae..eb876803f24 100644
--- a/libstdc++-v3/include/ext/debug_allocator.h
+++ b/libstdc++-v3/include/ext/debug_allocator.h
@@ -1,6 +1,6 @@
// Allocators -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -48,7 +48,7 @@
#ifndef _DEBUG_ALLOCATOR_H
#define _DEBUG_ALLOCATOR_H 1
-#include <memory>
+#include <cstdlib>
namespace __gnu_cxx
{
@@ -74,28 +74,42 @@ namespace __gnu_cxx
typedef typename _Alloc::value_type value_type;
private:
- // Size of space used to store size. Note that this must be
- // large enough to preserve alignment.
- const size_t _M_extra;
+ // _M_extra is the number of objects that correspond to the
+ // extra space where debug information is stored.
+ size_type _M_extra;
_Alloc _M_allocator;
public:
- debug_allocator() : _M_extra(8) { }
+ debug_allocator()
+ {
+ const size_t __obj_size = sizeof(value_type);
+ _M_extra = (sizeof(size_type) + __obj_size - 1) / __obj_size;
+ }
+
+ pointer
+ allocate(size_type __n)
+ {
+ pointer __res = _M_allocator.allocate(__n + _M_extra);
+ size_type* __ps = reinterpret_cast<size_type*>(__res);
+ *__ps = __n;
+ return __res + _M_extra;
+ }
pointer
- allocate(size_type __n, std::allocator<void>::const_pointer = 0)
+ allocate(size_type __n, const void* __hint)
{
- pointer __result = _M_allocator.allocate(__n + _M_extra);
- *__result = __n;
- return __result + _M_extra;
+ pointer __res = _M_allocator.allocate(__n + _M_extra, __hint);
+ size_type* __ps = reinterpret_cast<size_type*>(__res);
+ *__ps = __n;
+ return __res + _M_extra;
}
void
deallocate(pointer __p, size_type __n)
{
pointer __real_p = __p - _M_extra;
- if (*__real_p != __n)
+ if (*reinterpret_cast<size_type*>(__real_p) != __n)
abort();
_M_allocator.deallocate(__real_p, __n + _M_extra);
}
diff --git a/libstdc++-v3/include/bits/demangle.h b/libstdc++-v3/include/ext/demangle.h
index 2c240162e90..5de4f04a224 100644
--- a/libstdc++-v3/include/bits/demangle.h
+++ b/libstdc++-v3/include/ext/demangle.h
@@ -1,6 +1,6 @@
// C++ IA64 / g++ v3 demangler -*- C++ -*-
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
// Written by Carlo Wood <carlo@alinoe.com>
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -37,6 +37,7 @@
#include <vector>
#include <string>
+#include <ext/new_allocator.h>
#ifndef _GLIBCXX_DEMANGLER_DEBUG
#define _GLIBCXX_DEMANGLER_CWDEBUG 0
@@ -58,7 +59,6 @@ namespace __gnu_cxx
{
namespace demangler
{
-
enum substitution_nt
{
type,
@@ -73,7 +73,7 @@ namespace __gnu_cxx
int M_start_pos;
substitution_nt M_type;
int M_number_of_prefixes;
-
+
substitution_st(int start_pos,
substitution_nt type,
int number_of_prefixes)
@@ -101,16 +101,16 @@ namespace __gnu_cxx
pointer_to_member = 'M'
};
- template<typename Allocator>
+ template<typename Tp, typename Allocator = __gnu_cxx::new_allocator<Tp> >
class qualifier;
- template<typename Allocator>
+ template<typename Tp, typename Allocator = __gnu_cxx::new_allocator<Tp> >
class qualifier_list;
- template<typename Allocator>
+ template<typename Tp, typename Allocator = __gnu_cxx::new_allocator<Tp> >
class session;
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
class qualifier
{
typedef typename Allocator::template rebind<char>::other
@@ -205,28 +205,28 @@ namespace __gnu_cxx
#endif
};
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
class qualifier_list
{
typedef typename Allocator::template rebind<char>::other
- char_Allocator;
+ char_Allocator;
typedef std::basic_string<char, std::char_traits<char>, char_Allocator>
string_type;
private:
mutable bool M_printing_suppressed;
- typedef qualifier<Allocator> qual;
+ typedef qualifier<Tp, Allocator> qual;
typedef typename Allocator::template rebind<qual>::other qual_Allocator;
typedef std::vector<qual, qual_Allocator> qual_vector;
qual_vector M_qualifier_starts;
- session<Allocator>& M_demangler;
+ session<Tp, Allocator>& M_demangler;
void decode_KVrA(string_type& prefix, string_type& postfix, int cvq,
typename qual_vector::
const_reverse_iterator const& iter_array) const;
public:
- qualifier_list(session<Allocator>& demangler_obj)
+ qualifier_list(session<Tp, Allocator>& demangler_obj)
: M_printing_suppressed(false), M_demangler(demangler_obj)
{ }
@@ -235,7 +235,7 @@ namespace __gnu_cxx
int start_pos,
int inside_substitution)
{ M_qualifier_starts.
- push_back(qualifier<Allocator>(start_pos,
+ push_back(qualifier<Tp, Allocator>(start_pos,
simple_qualifier, inside_substitution)); }
void
@@ -244,22 +244,22 @@ namespace __gnu_cxx
int count,
int inside_substitution)
{ M_qualifier_starts.
- push_back(qualifier<Allocator>(start_pos,
+ push_back(qualifier<Tp, Allocator>(start_pos,
cv_qualifier, &M_demangler.M_str[start_pos],
count, inside_substitution)); }
void
add_qualifier_start(param_qualifier_nt param_qualifier,
- int start_pos,
+ int start_pos,
string_type optional_type,
int inside_substitution)
{ M_qualifier_starts.
- push_back(qualifier<Allocator>(start_pos,
+ push_back(qualifier<Tp, Allocator>(start_pos,
param_qualifier, optional_type, inside_substitution)); }
void
decode_qualifiers(string_type& prefix,
- string_type& postfix,
+ string_type& postfix,
bool member_function_pointer_qualifiers) const;
bool
@@ -307,7 +307,7 @@ namespace __gnu_cxx
// Use (void) instead of (): int f(void)
static unsigned int const style_literal = 2;
- // Default behaviour: (long)13,
+ // Default behaviour: (long)13,
// (unsigned long long)19
// Use extensions 'u', 'l' and 'll' for integral
// literals (as in template arguments): 13l, 19ull
@@ -347,12 +347,13 @@ namespace __gnu_cxx
{ return false; }
};
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
class session
{
- friend class qualifier_list<Allocator>;
+ public:
+ friend class qualifier_list<Tp, Allocator>;
typedef typename Allocator::template rebind<char>::other
- char_Allocator;
+ char_Allocator;
typedef std::basic_string<char, std::char_traits<char>, char_Allocator>
string_type;
@@ -378,6 +379,9 @@ namespace __gnu_cxx
int M_template_arg_pos_offset;
std::vector<substitution_st, subst_Allocator> M_substitutions_pos;
implementation_details const& M_implementation_details;
+ typedef typename Allocator::template
+ rebind<qualifier_list<Allocator> >::other qualifier_list_Allocator;
+ qualifier_list_Allocator M_qualifier_list_alloc;
#if _GLIBCXX_DEMANGLER_CWDEBUG
bool M_inside_add_substitution;
#endif
@@ -403,7 +407,7 @@ namespace __gnu_cxx
bool
decode_type(string_type& output,
- qualifier_list<Allocator>* qualifiers = NULL)
+ qualifier_list<Tp, Allocator>* qualifiers = NULL)
{
string_type postfix;
bool res = decode_type_with_postfix(output, postfix, qualifiers);
@@ -446,7 +450,7 @@ namespace __gnu_cxx
int number_of_prefixes);
bool decode_type_with_postfix(string_type& prefix,
- string_type& postfix, qualifier_list<Allocator>* qualifiers = NULL);
+ string_type& postfix, qualifier_list<Tp, Allocator>* qualifiers = NULL);
bool decode_bare_function_type(string_type& output);
bool decode_builtin_type(string_type& output);
bool decode_call_offset(string_type& output);
@@ -462,10 +466,10 @@ namespace __gnu_cxx
bool decode_operator_name(string_type& output);
bool decode_source_name(string_type& output);
bool decode_substitution(string_type& output,
- qualifier_list<Allocator>* qualifiers = NULL);
+ qualifier_list<Tp, Allocator>* qualifiers = NULL);
bool decode_template_args(string_type& output);
bool decode_template_param(string_type& output,
- qualifier_list<Allocator>* qualifiers = NULL);
+ qualifier_list<Tp, Allocator>* qualifiers = NULL);
bool decode_unqualified_name(string_type& output);
bool decode_unscoped_name(string_type& output);
bool decode_non_negative_decimal_integer(string_type& output);
@@ -473,12 +477,12 @@ namespace __gnu_cxx
bool decode_real(string_type& output, size_t size_of_real);
};
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
#if !_GLIBCXX_DEMANGLER_CWDEBUG
inline
#endif
void
- session<Allocator>::add_substitution(int start_pos,
+ session<Tp, Allocator>::add_substitution(int start_pos,
substitution_nt sub_type,
int number_of_prefixes = 0)
{
@@ -498,7 +502,7 @@ namespace __gnu_cxx
int n = M_substitutions_pos.size() - 1;
if (n > 0)
substitution_name += (n <= 10) ? (char)(n + '0' - 1)
- : (char)(n + 'A' - 11);
+ : (char)(n + 'A' - 11);
substitution_name += '_';
string_type subst;
int saved_pos = M_pos;
@@ -569,9 +573,9 @@ namespace __gnu_cxx
// ::= 1|2|3|4|5|6|7|8|9 [<digit>+]
// <digit> ::= 0|1|2|3|4|5|6|7|8|9
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::
+ session<Tp, Allocator>::
decode_non_negative_decimal_integer(string_type& output)
{
char c = current();
@@ -595,9 +599,9 @@ namespace __gnu_cxx
// <number> ::= [n] <non-negative decimal integer>
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_number(string_type& output)
+ session<Tp, Allocator>::decode_number(string_type& output)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_number");
if (current() != 'n')
@@ -665,9 +669,9 @@ namespace __gnu_cxx
};
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_builtin_type(string_type& output)
+ session<Tp, Allocator>::decode_builtin_type(string_type& output)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_builtin_type");
char const* bt;
@@ -680,9 +684,9 @@ namespace __gnu_cxx
// <class-enum-type> ::= <name>
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_class_enum_type(string_type& output)
+ session<Tp, Allocator>::decode_class_enum_type(string_type& output)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_class_enum_type");
string_type nested_name_qualifiers;
@@ -708,10 +712,10 @@ namespace __gnu_cxx
// 0|1|2|3|4|5|6|7|8|9|A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z
// [<seq-id>] # Base 36 number
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_substitution(string_type& output,
- qualifier_list<Allocator>* qualifiers)
+ session<Tp, Allocator>::decode_substitution(string_type& output,
+ qualifier_list<Tp, Allocator>* qualifiers)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_substitution");
unsigned int value = 0;
@@ -882,10 +886,10 @@ namespace __gnu_cxx
// <template-param> ::= T_ # first template parameter
// ::= T <parameter-2 non-negative number> _
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_template_param(string_type& output,
- qualifier_list<Allocator>* qualifiers)
+ session<Tp, Allocator>::decode_template_param(string_type& output,
+ qualifier_list<Tp, Allocator>* qualifiers)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_template_parameter");
if (current() != 'T')
@@ -925,9 +929,9 @@ namespace __gnu_cxx
_GLIBCXX_DEMANGLER_RETURN;
}
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_real(string_type& output, size_t size_of_real)
+ session<Tp, Allocator>::decode_real(string_type& output, size_t size_of_real)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_real");
@@ -985,9 +989,9 @@ namespace __gnu_cxx
_GLIBCXX_DEMANGLER_RETURN;
}
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_literal(string_type& output)
+ session<Tp, Allocator>::decode_literal(string_type& output)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_literal");
eat_current(); // Eat the 'L'.
@@ -1051,56 +1055,56 @@ namespace __gnu_cxx
}
// <operator-name> ::=
- // nw # new
+ // nw # new
// na # new[]
- // dl # delete
- // da # delete[]
+ // dl # delete
+ // da # delete[]
// ps # + (unary)
- // ng # - (unary)
- // ad # & (unary)
- // de # * (unary)
- // co # ~
- // pl # +
- // mi # -
- // ml # *
- // dv # /
- // rm # %
- // an # &
- // or # |
- // eo # ^
- // aS # =
- // pL # +=
- // mI # -=
- // mL # *=
- // dV # /=
- // rM # %=
- // aN # &=
- // oR # |=
- // eO # ^=
- // ls # <<
- // rs # >>
- // lS # <<=
- // rS # >>=
- // eq # ==
- // ne # !=
- // lt # <
- // gt # >
- // le # <=
- // ge # >=
- // nt # !
- // aa # &&
- // oo # ||
- // pp # ++
- // mm # --
- // cm # ,
- // pm # ->*
- // pt # ->
- // cl # ()
- // ix # []
+ // ng # - (unary)
+ // ad # & (unary)
+ // de # * (unary)
+ // co # ~
+ // pl # +
+ // mi # -
+ // ml # *
+ // dv # /
+ // rm # %
+ // an # &
+ // or # |
+ // eo # ^
+ // aS # =
+ // pL # +=
+ // mI # -=
+ // mL # *=
+ // dV # /=
+ // rM # %=
+ // aN # &=
+ // oR # |=
+ // eO # ^=
+ // ls # <<
+ // rs # >>
+ // lS # <<=
+ // rS # >>=
+ // eq # ==
+ // ne # !=
+ // lt # <
+ // gt # >
+ // le # <=
+ // ge # >=
+ // nt # !
+ // aa # &&
+ // oo # ||
+ // pp # ++
+ // mm # --
+ // cm # ,
+ // pm # ->*
+ // pt # ->
+ // cl # ()
+ // ix # []
// qu # ?
// st # sizeof (a type)
// sz # sizeof (an expression)
- // cv <type> # (cast)
+ // cv <type> # (cast)
// v <digit> <source-name> # vendor extended operator
//
// Symbol operator codes exist of two characters, we need to find a
@@ -1219,9 +1223,9 @@ namespace __gnu_cxx
{ "ix", "operator[]", unary }
};
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_operator_name(string_type& output)
+ session<Tp, Allocator>::decode_operator_name(string_type& output)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_operator_name");
@@ -1289,9 +1293,9 @@ namespace __gnu_cxx
// ::= L <type> <value float> E # floating literal
// ::= L <mangled-name> E # external name
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_expression(string_type& output)
+ session<Tp, Allocator>::decode_expression(string_type& output)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_expression");
if (current() == 'T')
@@ -1476,9 +1480,9 @@ namespace __gnu_cxx
// ::= L <type> <value float> E # floating literal
// ::= L <mangled-name> E # external name
// ::= X <expression> E # expression
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_template_args(string_type& output)
+ session<Tp, Allocator>::decode_template_args(string_type& output)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_template_args");
if (eat_current() != 'I')
@@ -1539,9 +1543,9 @@ namespace __gnu_cxx
// our <bare-function-type> slightly different from the one in
// the C++-ABI description.
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_bare_function_type(string_type& output)
+ session<Tp, Allocator>::decode_bare_function_type(string_type& output)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_bare_function_type");
if (M_saw_destructor)
@@ -1579,15 +1583,15 @@ namespace __gnu_cxx
// <builtin-type> # Starts with a lower case character != r.
// <function-type> # Starts with F
// <class-enum-type> # Starts with N, S, C, D, Z, a digit or a lower
- // # case character. Since a lower case character
- // # would be an operator name, that would be an
- // # error. The S is a substitution or St
- // # (::std::). A 'C' would be a constructor and
- // # thus also an error.
+ // # case character. Since a lower case character
+ // # would be an operator name, that would be an
+ // # error. The S is a substitution or St
+ // # (::std::). A 'C' would be a constructor and
+ // # thus also an error.
// <template-param> # Starts with T
// <substitution> # Starts with S
// <template-template-param> <template-args> # Starts with T or S,
- // # equivalent with the above.
+ // # equivalent with the above.
//
// <array-type> # Starts with A
// <pointer-to-member-type> # Starts with M
@@ -1596,8 +1600,8 @@ namespace __gnu_cxx
// R <type> # reference-to # Starts with R
// C <type> # complex (C 2000) # Starts with C
// G <type> # imaginary (C 2000)# Starts with G
- // U <source-name> <type> # vendor extended type qualifier,
- // # starts with U
+ // U <source-name> <type> # vendor extended type qualifier,
+ // # starts with U
//
// <template-template-param> ::= <template-param>
// ::= <substitution>
@@ -1613,9 +1617,9 @@ namespace __gnu_cxx
// <I> is the array index.
// Substitutions:
// <Q>M<C><Q2>F<R><B>E ==> R (C::*Q)B Q2 "<C>", "F<R><B>E"
- // (<R> and <B> recursive),
- // "M<C><Q2>F<R><B>E".
- // <Q>F<R><B>E ==> R (Q)B "<R>", "<B>" (<B> recursive)
+ // (<R> and <B> recursive),
+ // "M<C><Q2>F<R><B>E".
+ // <Q>F<R><B>E ==> R (Q)B "<R>", "<B>" (<B> recursive)
// and "F<R><B>E".
//
// Note that if <R> has postfix qualifiers (an array or function), then
@@ -1623,14 +1627,14 @@ namespace __gnu_cxx
// <Q>FPA<R><B>E ==> R (*(Q)B) [], where the PA added the prefix
// "(*" and the postfix ") []".
//
- // <Q>G<T> ==> imaginary T Q "<T>", "G<T>" (<T> recursive).
- // <Q>C<T> ==> complex T Q "<T>", "C<T>" (<T> recursive).
- // <Q><T> ==> T Q "<T>" (<T> recursive).
+ // <Q>G<T> ==> imaginary T Q "<T>", "G<T>" (<T> recursive).
+ // <Q>C<T> ==> complex T Q "<T>", "C<T>" (<T> recursive).
+ // <Q><T> ==> T Q "<T>" (<T> recursive).
//
// where <Q> is any of:
//
- // <Q>P ==> *Q "P..."
- // <Q>R ==> &Q "R..."
+ // <Q>P ==> *Q "P..."
+ // <Q>R ==> &Q "R..."
// <Q>[K|V|r]+ ==> [ const| volatile| restrict]+Q "KVr..."
// <Q>U<S> ==> SQ "U<S>..."
// <Q>M<C> ==> C::*Q "M<C>..." (<C> recurs.)
@@ -1641,7 +1645,7 @@ namespace __gnu_cxx
// A<I2>A<I> ==> [I2][I]
// If <Q> ends on [KVr]+, which can happen in combination with
// substitutions only, then special handling is required, see below.
- //
+ //
// A <substitution> is handled with an input position switch during which
// new substitutions are turned off. Because recursive handling of types
// (and therefore the order in which substitutions must be generated) must
@@ -1653,7 +1657,7 @@ namespace __gnu_cxx
//
// The following comment was for the demangling of g++ version 3.0.x. The
// mangling (and I believe even the ABI description) have been fixed now
- // (as of g++ version 3.1).
+ // (as of g++ version 3.1).
//
// g++ 3.0.x only:
// The ABI specifies for pointer-to-member function types the format
@@ -1696,12 +1700,12 @@ namespace __gnu_cxx
static int const cvq_A = 8; // Saw at least one A
static int const cvq_last = 16; // No remaining qualifiers.
static int const cvq_A_cnt = 32; // Bit 5 and higher represent the
- // number of A's in the series.
+ // number of A's in the series.
// In the function below, iter_array points to the first (right most)
// A in the series, if any.
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
void
- qualifier_list<Allocator>::decode_KVrA(
+ qualifier_list<Tp, Allocator>::decode_KVrA(
string_type& prefix, string_type& postfix, int cvq,
typename qual_vector::const_reverse_iterator const& iter_array) const
{
@@ -1747,9 +1751,9 @@ namespace __gnu_cxx
_GLIBCXX_DEMANGLER_RETURN3;
}
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
void
- qualifier_list<Allocator>::decode_qualifiers(
+ qualifier_list<Tp, Allocator>::decode_qualifiers(
string_type& prefix,
string_type& postfix,
bool member_function_pointer_qualifiers = false) const
@@ -1839,17 +1843,20 @@ namespace __gnu_cxx
}
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_type_with_postfix(
+ session<Tp, Allocator>::decode_type_with_postfix(
string_type& prefix, string_type& postfix,
- qualifier_list<Allocator>* qualifiers)
+ qualifier_list<Tp, Allocator>* qualifiers)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING2("decode_type");
++M_inside_type;
bool recursive_template_param_or_substitution_call;
if (!(recursive_template_param_or_substitution_call = qualifiers))
- qualifiers = new qualifier_list<Allocator>(*this);
+ {
+ qualifier_list<Allocator>* raw_qualifiers = M_qualifier_list_alloc.allocate(1);
+ qualifiers = new (raw_qualifiers) qualifier_list<Allocator>(*this);
+ }
// First eat all qualifiers.
bool failure = false;
for(;;) // So we can use 'continue' to eat the next qualifier.
@@ -1947,7 +1954,7 @@ namespace __gnu_cxx
++count;
c = next();
}
- qualifier_list<Allocator> class_type_qualifiers(*this);
+ qualifier_list<Tp, Allocator> class_type_qualifiers(*this);
if (count)
class_type_qualifiers.
add_qualifier_start(cv_qualifier, Q2_start_pos,
@@ -2011,9 +2018,9 @@ namespace __gnu_cxx
}
if (!failure)
{
- // <Q>G<T> ==> imaginary T Q
+ // <Q>G<T> ==> imaginary T Q
// substitutions: "<T>", "G<T>" (<T> recursive).
- // <Q>C<T> ==> complex T Q
+ // <Q>C<T> ==> complex T Q
// substitutions: "<T>", "C<T>" (<T> recursive).
if (current() == 'C' || current() == 'G')
{
@@ -2034,8 +2041,8 @@ namespace __gnu_cxx
bool extern_C = (next() == 'Y');
if (extern_C)
eat_current();
-
- // <Q>F<R><B>E ==> R (Q)B
+
+ // <Q>F<R><B>E ==> R (Q)B
// substitution: "<R>", "<B>" (<B> recursive) and "F<R><B>E".
// Return type.
@@ -2143,7 +2150,7 @@ namespace __gnu_cxx
case '7':
case '8':
case '9':
- // <Q><T> ==> T Q
+ // <Q><T> ==> T Q
// substitutions: "<T>" (<T> recursive).
if (!decode_class_enum_type(prefix))
{
@@ -2161,7 +2168,7 @@ namespace __gnu_cxx
qualifiers->printing_suppressed();
break;
default:
- // <Q><T> ==> T Q
+ // <Q><T> ==> T Q
// substitutions: "<T>" (<T> recursive).
if (!decode_builtin_type(prefix))
{
@@ -2181,7 +2188,10 @@ namespace __gnu_cxx
decode_type_exit:
--M_inside_type;
if (!recursive_template_param_or_substitution_call)
- delete qualifiers;
+ {
+ qualifiers->~qualifier_list<Allocator>();
+ M_qualifier_list_alloc.deallocate(qualifiers, 1);
+ }
if (failure)
_GLIBCXX_DEMANGLER_FAILURE;
_GLIBCXX_DEMANGLER_RETURN2;
@@ -2200,9 +2210,9 @@ namespace __gnu_cxx
// ::= <template-param>
// ::= <substitution>
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_nested_name(string_type& output,
+ session<Tp, Allocator>::decode_nested_name(string_type& output,
string_type& qualifiers)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_nested_name");
@@ -2246,7 +2256,7 @@ namespace __gnu_cxx
{
// substitution: "<template-prefix> <template-args>".
add_substitution(substitution_start, nested_name_prefix,
- number_of_prefixes);
+ number_of_prefixes);
}
}
else
@@ -2286,9 +2296,9 @@ namespace __gnu_cxx
// := Z <function encoding> E s [<discriminator>]
// <discriminator> := _ <non-negative number>
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_local_name(string_type& output)
+ session<Tp, Allocator>::decode_local_name(string_type& output)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_local_name");
if (current() != 'Z' || M_pos >= M_maxpos)
@@ -2318,9 +2328,9 @@ namespace __gnu_cxx
// <source-name> ::= <positive length number> <identifier>
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_source_name(string_type& output)
+ session<Tp, Allocator>::decode_source_name(string_type& output)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_source_name");
int length = current() - '0';
@@ -2348,11 +2358,11 @@ namespace __gnu_cxx
// <unqualified-name> ::= <operator-name> # Starts with lower case.
// ::= <ctor-dtor-name> # Starts with 'C' or 'D'.
- // ::= <source-name> # Starts with a digit.
+ // ::= <source-name> # Starts with a digit.
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_unqualified_name(string_type& output)
+ session<Tp, Allocator>::decode_unqualified_name(string_type& output)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_unqualified_name");
if (M_inside_template_args)
@@ -2425,9 +2435,9 @@ namespace __gnu_cxx
// <unqualified-name> # Starts not with an 'S'
// St <unqualified-name> # ::std::
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_unscoped_name(string_type& output)
+ session<Tp, Allocator>::decode_unscoped_name(string_type& output)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_unscoped_name");
if (current() == 'S')
@@ -2446,14 +2456,14 @@ namespace __gnu_cxx
// <unscoped-template-name> <template-args> # idem
// <local-name> # Starts with 'Z'
// <unscoped-name> # Starts with 'S', 'C', 'D',
- // # a digit or a lower case
- // # character.
+ // # a digit or a lower case
+ // # character.
//
// <unscoped-template-name> ::= <unscoped-name>
// ::= <substitution>
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_name(string_type& output,
+ session<Tp, Allocator>::decode_name(string_type& output,
string_type& nested_name_qualifiers)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_name");
@@ -2488,14 +2498,14 @@ namespace __gnu_cxx
// <call-offset> ::= h <nv-offset> _
// ::= v <v-offset> _
- // <nv-offset> ::= <offset number>
+ // <nv-offset> ::= <offset number>
// non-virtual base override
//
// <v-offset> ::= <offset number> _ <virtual offset number>
// virtual base override, with vcall offset
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_call_offset(string_type&
+ session<Tp, Allocator>::decode_call_offset(string_type&
#if _GLIBCXX_DEMANGLER_CWDEBUG
output
#endif
@@ -2538,19 +2548,19 @@ namespace __gnu_cxx
// TS <type> # typeinfo name (null-terminated
// byte string).
// GV <object name> # Guard variable for one-time
- // initialization of static objects in
- // a local scope.
+ // initialization of static objects in
+ // a local scope.
// T <call-offset> <base encoding># base is the nominal target function
- // of thunk.
+ // of thunk.
// Tc <call-offset> <call-offset> <base encoding> # base is the nominal
// target function of thunk; first
// call-offset is 'this' adjustment;
// second call-offset is result
// adjustment
//
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
bool
- session<Allocator>::decode_special_name(string_type& output)
+ session<Tp, Allocator>::decode_special_name(string_type& output)
{
_GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_special_name");
if (current() == 'G')
@@ -2629,13 +2639,13 @@ namespace __gnu_cxx
// <encoding> ::=
// <function name> <bare-function-type> # Starts with 'C', 'D', 'N',
- // 'S', a digit or a lower case
- // character.
+ // 'S', a digit or a lower case
+ // character.
// <data name> # Idem.
// <special-name> # Starts with 'T' or 'G'.
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
int
- session<Allocator>::decode_encoding(string_type& output,
+ session<Tp, Allocator>::decode_encoding(string_type& output,
char const* in, int len, implementation_details const& id)
{
#if _GLIBCXX_DEMANGLER_CWDEBUG
@@ -2647,7 +2657,7 @@ namespace __gnu_cxx
#endif
if (len <= 0)
return INT_MIN;
- session<Allocator> demangler_session(in, len, id);
+ session<Tp, Allocator> demangler_session(in, len, id);
string_type nested_name_qualifiers;
int saved_pos;
demangler_session.store(saved_pos);
@@ -2687,11 +2697,11 @@ namespace __gnu_cxx
} // namespace demangler
// Public interface
- template<typename Allocator>
+ template<typename Tp, typename Allocator>
struct demangle
{
typedef typename Allocator::template rebind<char>::other char_Allocator;
- typedef std::basic_string<char, std::char_traits<char>, char_Allocator>
+ typedef std::basic_string<char, std::char_traits<char>, char_Allocator>
string_type;
static string_type symbol(char const* in,
demangler::implementation_details const& id);
@@ -2703,15 +2713,15 @@ namespace __gnu_cxx
//
// Demangle `input' which should be a mangled function name as for
// instance returned by nm(1).
- template<typename Allocator>
- typename demangle<Allocator>::string_type
- demangle<Allocator>::symbol(char const* input,
+ template<typename Tp, typename Allocator>
+ typename demangle<Tp, Allocator>::string_type
+ demangle<Tp, Allocator>::symbol(char const* input,
demangler::implementation_details const& id)
{
// <mangled-name> ::= _Z <encoding>
// <mangled-name> ::= _GLOBAL_ _<type>_ <disambiguation part>
// <type> can be I or D (GNU extension)
- typedef demangler::session<Allocator> demangler_type;
+ typedef demangler::session<Tp, Allocator> demangler_type;
string_type result;
bool failure = (input[0] != '_');
@@ -2754,9 +2764,9 @@ namespace __gnu_cxx
// demangle::type()
// Demangle `input' which must be a zero terminated mangled type
// name as for instance returned by std::type_info::name().
- template<typename Allocator>
- typename demangle<Allocator>::string_type
- demangle<Allocator>::type(char const* input,
+ template<typename Tp, typename Allocator>
+ typename demangle<Tp, Allocator>::string_type
+ demangle<Tp, Allocator>::type(char const* input,
demangler::implementation_details const& id)
{
std::basic_string<char, std::char_traits<char>, Allocator> result;
@@ -2764,17 +2774,16 @@ namespace __gnu_cxx
result = "(null)";
else
{
- demangler::session<Allocator> demangler_session(input, INT_MAX, id);
+ demangler::session<Tp, Allocator> demangler_session(input, INT_MAX, id);
if (!demangler_session.decode_type(result)
|| demangler_session.remaining_input_characters())
{
// Failure to demangle, return the mangled name.
- result = input;
+ result = input;
}
}
return result;
}
-
} // namespace __gnu_cxx
#endif // __DEMANGLE_H
diff --git a/libstdc++-v3/include/ext/hashtable.h b/libstdc++-v3/include/ext/hashtable.h
index 54540c40aee..f81a8580b15 100644
--- a/libstdc++-v3/include/ext/hashtable.h
+++ b/libstdc++-v3/include/ext/hashtable.h
@@ -1,6 +1,6 @@
// Hashtable implementation used by containers -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -91,8 +91,8 @@ struct _Hashtable_node
_Val _M_val;
};
-template <class _Val, class _Key, class _HashFcn,
- class _ExtractKey, class _EqualKey, class _Alloc = std::__alloc>
+template <class _Val, class _Key, class _HashFcn, class _ExtractKey,
+ class _EqualKey, class _Alloc = std::allocator<_Val> >
class hashtable;
template <class _Val, class _Key, class _HashFcn,
diff --git a/libstdc++-v3/include/ext/malloc_allocator.h b/libstdc++-v3/include/ext/malloc_allocator.h
index 5545a58f8c9..dc6ae4fb51c 100644
--- a/libstdc++-v3/include/ext/malloc_allocator.h
+++ b/libstdc++-v3/include/ext/malloc_allocator.h
@@ -1,6 +1,6 @@
// Allocator that wraps "C" malloc -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -31,7 +31,6 @@
#define _MALLOC_ALLOCATOR_H 1
#include <new>
-#include <memory>
namespace __gnu_cxx
{
@@ -78,12 +77,12 @@ namespace __gnu_cxx
// NB: __n is permitted to be 0. The C++ standard says nothing
// about what the return value is when __n == 0.
pointer
- allocate(size_type __n, std::allocator<void>::const_pointer __h = 0)
+ allocate(size_type __n, const void* = 0)
{ return static_cast<_Tp*>(malloc(__n * sizeof(_Tp))); }
// __p is not permitted to be a null pointer.
void
- deallocate(pointer __p, size_type __n)
+ deallocate(pointer __p, size_type)
{ free(static_cast<void*>(__p)); }
size_type
@@ -99,6 +98,16 @@ namespace __gnu_cxx
void
destroy(pointer __p) { __p->~_Tp(); }
};
+
+ template<typename _Tp>
+ inline bool
+ operator==(const malloc_allocator<_Tp>&, const malloc_allocator<_Tp>&)
+ { return true; }
+
+ template<typename _Tp>
+ inline bool
+ operator!=(const malloc_allocator<_Tp>&, const malloc_allocator<_Tp>&)
+ { return false; }
} // namespace __gnu_cxx
#endif
diff --git a/libstdc++-v3/include/ext/mt_allocator.h b/libstdc++-v3/include/ext/mt_allocator.h
index b4498feddf3..7204d841745 100644
--- a/libstdc++-v3/include/ext/mt_allocator.h
+++ b/libstdc++-v3/include/ext/mt_allocator.h
@@ -1,6 +1,6 @@
// MT-optimized allocator -*- C++ -*-
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -36,7 +36,6 @@
#define _MT_ALLOCATOR_H 1
#include <new>
-#include <memory>
#include <cstdlib>
#include <bits/functexcept.h>
#include <bits/gthr.h>
@@ -51,13 +50,8 @@ namespace __gnu_cxx
* the per thread freelist sizes (by returning excess back to
* "global").
*
- * Usage examples:
- * @code
- * vector<int, __gnu_cxx::__mt_alloc<int> > v1;
- *
- * typedef __gnu_cxx::__mt_alloc<char> > string_allocator;
- * std::basic_string<char, std::char_traits<char>, string_allocator> s1;
- * @endcode
+ * Further details:
+ * http://gcc.gnu.org/onlinedocs/libstdc++/ext/mt_allocator.html
*/
template<typename _Tp>
class __mt_alloc
@@ -80,13 +74,13 @@ namespace __gnu_cxx
// XXX
}
- __mt_alloc(const __mt_alloc&) throw()
+ __mt_alloc(const __mt_alloc&) throw()
{
// XXX
}
template<typename _Tp1>
- __mt_alloc(const __mt_alloc<_Tp1>&) throw()
+ __mt_alloc(const __mt_alloc<_Tp1>& obj) throw()
{
// XXX
}
@@ -112,606 +106,548 @@ namespace __gnu_cxx
void
destroy(pointer __p) { __p->~_Tp(); }
+ pointer
+ allocate(size_t __n, const void* = 0);
+
+ void
+ deallocate(pointer __p, size_type __n);
+
+ // Variables used to configure the behavior of the allocator,
+ // assigned and explained in detail below.
+ struct tune
+ {
+ // Allocation requests (after round-up to power of 2) below
+ // this value will be handled by the allocator. A raw new/
+ // call will be used for requests larger than this value.
+ size_t _M_max_bytes;
+
+ // In order to avoid fragmenting and minimize the number of
+ // new() calls we always request new memory using this
+ // value. Based on previous discussions on the libstdc++
+ // mailing list we have choosen the value below.
+ // See http://gcc.gnu.org/ml/libstdc++/2001-07/msg00077.html
+ size_t _M_chunk_size;
+
+ // The maximum number of supported threads. Our Linux 2.4.18
+ // reports 4070 in /proc/sys/kernel/threads-max
+ size_t _M_max_threads;
+
+ // Each time a deallocation occurs in a threaded application
+ // we make sure that there are no more than
+ // _M_freelist_headroom % of used memory on the freelist. If
+ // the number of additional records is more than
+ // _M_freelist_headroom % of the freelist, we move these
+ // records back to the global pool.
+ size_t _M_freelist_headroom;
+
+ // Set to true forces all allocations to use new().
+ bool _M_force_new;
+
+ explicit tune()
+ : _M_max_bytes(128), _M_chunk_size(4096 - 4 * sizeof(void*)),
+#ifdef __GTHREADS
+ _M_max_threads(4096),
+#else
+ _M_max_threads(0),
+#endif
+ _M_freelist_headroom(10),
+ _M_force_new(getenv("GLIBCXX_FORCE_NEW") ? true : false)
+ { }
+
+ explicit tune(size_t __maxb, size_t __chunk, size_t __maxthreads,
+ size_t __headroom, bool __force)
+ : _M_max_bytes(__maxb), _M_chunk_size(__chunk),
+ _M_max_threads(__maxthreads), _M_freelist_headroom(__headroom),
+ _M_force_new(__force)
+ { }
+ };
+
private:
- /*
- * We need to create the initial lists and set up some variables
- * before we can answer to the first request for memory.
- * The initialization of these variables is done at file scope
- * below class declaration.
- */
+ // We need to create the initial lists and set up some variables
+ // before we can answer to the first request for memory.
#ifdef __GTHREADS
- static __gthread_once_t _S_once_mt;
+ static __gthread_once_t _S_once;
#endif
- static bool volatile _S_initialized;
+ static bool _S_init;
- /*
- * Using short int as type for the binmap implies we are never caching
- * blocks larger than 65535 with this allocator
- */
+ static void
+ _S_initialize();
+
+ // Configuration options.
+ static tune _S_options;
+
+ static const tune
+ _S_get_options() { return _S_options; }
+
+ static void
+ _S_set_options(tune __t)
+ {
+ if (!_S_init)
+ _S_options = __t;
+ }
+
+ // Using short int as type for the binmap implies we are never
+ // caching blocks larger than 65535 with this allocator
typedef unsigned short int binmap_type;
- static binmap_type* _S_binmap;
-
- static void _S_init();
-
- /*
- * Variables used to "tune" the behavior of the allocator, assigned
- * and explained in detail below.
- */
- static size_t _S_max_bytes;
- static size_t _S_chunk_size;
- static size_t _S_max_threads;
- static size_t _S_no_of_bins;
- static size_t _S_freelist_headroom;
-
- /*
- * Each requesting thread is assigned an id ranging from 1 to
- * _S_max_threads. Thread id 0 is used as a global memory pool.
- * In order to get constant performance on the thread assignment
- * routine, we keep a list of free ids. When a thread first requests
- * memory we remove the first record in this list and stores the address
- * in a __gthread_key. When initializing the __gthread_key
- * we specify a destructor. When this destructor (i.e. the thread dies)
- * is called, we return the thread id to the front of this list.
- */
+ static binmap_type* _S_binmap;
+
+ // Each requesting thread is assigned an id ranging from 1 to
+ // _S_max_threads. Thread id 0 is used as a global memory pool.
+ // In order to get constant performance on the thread assignment
+ // routine, we keep a list of free ids. When a thread first
+ // requests memory we remove the first record in this list and
+ // stores the address in a __gthread_key. When initializing the
+ // __gthread_key we specify a destructor. When this destructor
+ // (i.e. the thread dies) is called, we return the thread id to
+ // the front of this list.
#ifdef __GTHREADS
struct thread_record
{
- /*
- * Points to next free thread id record. NULL if last record in list.
- */
+ // Points to next free thread id record. NULL if last record in list.
thread_record* volatile next;
- /*
- * Thread id ranging from 1 to _S_max_threads.
- */
+ // Thread id ranging from 1 to _S_max_threads.
size_t id;
};
- static thread_record* volatile _S_thread_freelist_first;
- static __gthread_mutex_t _S_thread_freelist_mutex;
- static void _S_thread_key_destr(void* freelist_pos);
- static __gthread_key_t _S_thread_key;
- static size_t _S_get_thread_id();
+ static thread_record* volatile _S_thread_freelist_first;
+ static __gthread_mutex_t _S_thread_freelist_mutex;
+ static __gthread_key_t _S_thread_key;
+
+ static void
+ _S_destroy_thread_key(void* freelist_pos);
#endif
+ static size_t
+ _S_get_thread_id();
+
struct block_record
{
- /*
- * Points to the next block_record for its thread_id.
- */
- block_record* next;
-
- /*
- * The thread id of the thread which has requested this block.
- * All blocks are initially "owned" by global pool thread id 0.
- */
+ // Points to the next block_record for its thread_id.
+ block_record* volatile next;
+
+ // The thread id of the thread which has requested this block.
+#ifdef __GTHREADS
size_t thread_id;
+#endif
};
struct bin_record
{
- /*
- * An "array" of pointers to the first/last free block for each
- * thread id. Memory to these "arrays" is allocated in _S_init()
- * for _S_max_threads + global pool 0.
- */
- block_record** first;
- block_record** last;
-
- /*
- * An "array" of counters used to keep track of the amount of blocks
- * that are on the freelist/used for each thread id.
- * Memory to these "arrays" is allocated in _S_init()
- * for _S_max_threads + global pool 0.
- */
- size_t* free;
- size_t* used;
-
- /*
- * Each bin has its own mutex which is used to ensure data integrity
- * while changing "ownership" on a block.
- * The mutex is initialized in _S_init().
- */
+ // An "array" of pointers to the first free block for each
+ // thread id. Memory to this "array" is allocated in _S_initialize()
+ // for _S_max_threads + global pool 0.
+ block_record** volatile first;
+
+ // An "array" of counters used to keep track of the amount of
+ // blocks that are on the freelist/used for each thread id.
+ // Memory to these "arrays" is allocated in _S_initialize() for
+ // _S_max_threads + global pool 0.
+ size_t* volatile free;
+ size_t* volatile used;
+
+ // Each bin has its own mutex which is used to ensure data
+ // integrity while changing "ownership" on a block. The mutex
+ // is initialized in _S_initialize().
#ifdef __GTHREADS
__gthread_mutex_t* mutex;
#endif
};
- /*
- * An "array" of bin_records each of which represents a specific
- * power of 2 size. Memory to this "array" is allocated in _S_init().
- */
- static bin_record* _S_bin;
+ // An "array" of bin_records each of which represents a specific
+ // power of 2 size. Memory to this "array" is allocated in
+ // _S_initialize().
+ static bin_record* volatile _S_bin;
- public:
- pointer
- allocate(size_t __n, std::allocator<void>::const_pointer __h = 0)
- {
- /*
- * Requests larger than _S_max_bytes are handled by
- * new/delete directly
- */
- if (__n * sizeof(_Tp) > _S_max_bytes)
- {
- void* __ret = malloc(__n * sizeof(_Tp));
- if (!__ret)
- __throw_bad_alloc();
- return static_cast<_Tp*>(__ret);
- }
-
- /*
- * Although the test in __gthread_once() would suffice, we
- * wrap test of the once condition in our own unlocked
- * check. This saves one function call to pthread_once()
- * (which itself only tests for the once value unlocked anyway
- * and immediately returns if set)
- */
- if (!_S_initialized)
- {
-#ifdef __GTHREADS
- if (__gthread_active_p())
- __gthread_once(&_S_once_mt, _S_init);
- else
-#endif
- {
- _S_max_threads = 0;
- _S_init();
- }
- }
-
- /*
- * Round up to power of 2 and figure out which bin to use
- */
- size_t bin = _S_binmap[__n * sizeof(_Tp)];
+ // Actual value calculated in _S_initialize().
+ static size_t _S_bin_size;
+ };
+ template<typename _Tp>
+ typename __mt_alloc<_Tp>::pointer
+ __mt_alloc<_Tp>::
+ allocate(size_t __n, const void*)
+ {
+ // Although the test in __gthread_once() would suffice, we wrap
+ // test of the once condition in our own unlocked check. This
+ // saves one function call to pthread_once() (which itself only
+ // tests for the once value unlocked anyway and immediately
+ // returns if set)
+ if (!_S_init)
+ {
#ifdef __GTHREADS
- size_t thread_id = _S_get_thread_id();
-#else
- size_t thread_id = 0;
+ if (__gthread_active_p())
+ __gthread_once(&_S_once, _S_initialize);
#endif
-
- block_record* block;
-
- /*
- * Find out if we have blocks on our freelist.
- * If so, go ahead and use them directly without
- * having to lock anything.
- */
- if (_S_bin[bin].first[thread_id] == NULL)
- {
- /*
- * Are we using threads?
- * - Yes, lock and check if there are free blocks on the global
- * list (and if not add new ones), get the first one
- * and change owner.
- * - No, all operations are made directly to global pool 0
- * no need to lock or change ownership but check for free
- * blocks on global list (and if not add new ones) and
- * get the first one.
- */
+ if (!_S_init)
+ _S_initialize();
+ }
+
+ // Requests larger than _M_max_bytes are handled by new/delete
+ // directly.
+ const size_t __bytes = __n * sizeof(_Tp);
+ if (__bytes > _S_options._M_max_bytes || _S_options._M_force_new)
+ {
+ void* __ret = ::operator new(__bytes);
+ return static_cast<_Tp*>(__ret);
+ }
+
+ // Round up to power of 2 and figure out which bin to use.
+ const size_t __which = _S_binmap[__bytes];
+ const size_t __thread_id = _S_get_thread_id();
+
+ // Find out if we have blocks on our freelist. If so, go ahead
+ // and use them directly without having to lock anything.
+ const bin_record& __bin = _S_bin[__which];
+ block_record* block = NULL;
+ if (__bin.first[__thread_id] == NULL)
+ {
+ // Are we using threads?
+ // - Yes, check if there are free blocks on the global
+ // list. If so, grab up to block_count blocks in one
+ // lock and change ownership. If the global list is
+ // empty, we allocate a new chunk and add those blocks
+ // directly to our own freelist (with us as owner).
+ // - No, all operations are made directly to global pool 0
+ // no need to lock or change ownership but check for free
+ // blocks on global list (and if not add new ones) and
+ // get the first one.
#ifdef __GTHREADS
- if (__gthread_active_p())
- {
- __gthread_mutex_lock(_S_bin[bin].mutex);
-
- if (_S_bin[bin].first[0] == NULL)
- {
- _S_bin[bin].first[0] =
- (block_record*)malloc(_S_chunk_size);
-
- if (!_S_bin[bin].first[0])
- {
- __gthread_mutex_unlock(_S_bin[bin].mutex);
- __throw_bad_alloc();
- }
-
- size_t bin_t = 1 << bin;
- size_t block_count =
- _S_chunk_size /(bin_t + sizeof(block_record));
-
- _S_bin[bin].free[0] = block_count;
-
- block_count--;
- block = _S_bin[bin].first[0];
-
- while (block_count > 0)
- {
- block->next = (block_record*)((char*)block +
- (bin_t + sizeof(block_record)));
- block = block->next;
- block_count--;
- }
-
- block->next = NULL;
- _S_bin[bin].last[0] = block;
- }
-
- block = _S_bin[bin].first[0];
-
- /*
- * Remove from list and count down the available counter on
- * global pool 0.
- */
- _S_bin[bin].first[0] = _S_bin[bin].first[0]->next;
- _S_bin[bin].free[0]--;
-
- __gthread_mutex_unlock(_S_bin[bin].mutex);
-
- /*
- * Now that we have removed the block from the global
- * freelist we can change owner and update the used
- * counter for this thread without locking.
- */
- block->thread_id = thread_id;
- _S_bin[bin].used[thread_id]++;
- }
- else
+ if (__gthread_active_p())
+ {
+ const size_t bin_size = (1 << __which) + sizeof(block_record);
+ size_t block_count = _S_options._M_chunk_size / bin_size;
+
+ __gthread_mutex_lock(__bin.mutex);
+ if (__bin.first[0] == NULL)
+ {
+ // No need to hold the lock when we are adding a
+ // whole chunk to our own list.
+ __gthread_mutex_unlock(__bin.mutex);
+
+ void* v = ::operator new(_S_options._M_chunk_size);
+ __bin.first[__thread_id] = static_cast<block_record*>(v);
+
+ __bin.free[__thread_id] = block_count;
+ block_count--;
+ block = __bin.first[__thread_id];
+
+ while (block_count > 0)
+ {
+ char* c = reinterpret_cast<char*>(block) + bin_size;
+ block->next = reinterpret_cast<block_record*>(c);
+ block->thread_id = __thread_id;
+ block = block->next;
+ block_count--;
+ }
+
+ block->next = NULL;
+ block->thread_id = __thread_id;
+ }
+ else
+ {
+ size_t global_count = 0;
+ block_record* tmp;
+ while (__bin.first[0] != NULL && global_count < block_count)
+ {
+ tmp = __bin.first[0]->next;
+ block = __bin.first[0];
+
+ if (__bin.first[__thread_id] == NULL)
+ {
+ __bin.first[__thread_id] = block;
+ block->next = NULL;
+ }
+ else
+ {
+ block->next = __bin.first[__thread_id];
+ __bin.first[__thread_id] = block;
+ }
+
+ block->thread_id = __thread_id;
+ __bin.free[__thread_id]++;
+ __bin.first[0] = tmp;
+ global_count++;
+ }
+ __gthread_mutex_unlock(__bin.mutex);
+ }
+
+ // Return the first newly added block in our list and
+ // update the counters
+ block = __bin.first[__thread_id];
+ __bin.first[__thread_id] = __bin.first[__thread_id]->next;
+ __bin.free[__thread_id]--;
+ __bin.used[__thread_id]++;
+ }
+ else
#endif
- {
- _S_bin[bin].first[0] = (block_record*)malloc(_S_chunk_size);
-
- if (!_S_bin[bin].first[0])
- __throw_bad_alloc();
-
- size_t bin_t = 1 << bin;
- size_t block_count =
- _S_chunk_size / (bin_t + sizeof(block_record));
-
- _S_bin[bin].free[0] = block_count;
-
- block_count--;
- block = _S_bin[bin].first[0];
-
- while (block_count > 0)
- {
- block->next = (block_record*)((char*)block +
- (bin_t + sizeof(block_record)));
- block = block->next;
- block_count--;
- }
-
- block->next = NULL;
- _S_bin[bin].last[0] = block;
-
- block = _S_bin[bin].first[0];
-
- /*
- * Remove from list and count down the available counter on
- * global pool 0 and increase it's used counter.
- */
- _S_bin[bin].first[0] = _S_bin[bin].first[0]->next;
- _S_bin[bin].free[0]--;
- _S_bin[bin].used[0]++;
- }
- }
- else
- {
- /*
- * "Default" operation - we have blocks on our own freelist
- * grab the first record and update the counters.
- */
- block = _S_bin[bin].first[thread_id];
-
- _S_bin[bin].first[thread_id] = _S_bin[bin].first[thread_id]->next;
- _S_bin[bin].free[thread_id]--;
- _S_bin[bin].used[thread_id]++;
- }
-
- return static_cast<_Tp*>(static_cast<void*>((char*)block + sizeof(block_record)));
- }
-
- void
- deallocate(pointer __p, size_type __n)
- {
- /*
- * Requests larger than _S_max_bytes are handled by
- * malloc/free directly
- */
- if (__n * sizeof(_Tp) > _S_max_bytes)
- {
- free(__p);
- return;
- }
-
- /*
- * Round up to power of 2 and figure out which bin to use
- */
- size_t bin = _S_binmap[__n * sizeof(_Tp)];
+ {
+ void* __v = ::operator new(_S_options._M_chunk_size);
+ __bin.first[0] = static_cast<block_record*>(__v);
+
+ const size_t bin_size = (1 << __which) + sizeof(block_record);
+ size_t block_count = _S_options._M_chunk_size / bin_size;
+
+ block_count--;
+ block = __bin.first[0];
+ while (block_count > 0)
+ {
+ char* __c = reinterpret_cast<char*>(block) + bin_size;
+ block->next = reinterpret_cast<block_record*>(__c);
+ block = block->next;
+ block_count--;
+ }
+ block->next = NULL;
+
+ // Remove from list.
+ block = __bin.first[0];
+ __bin.first[0] = __bin.first[0]->next;
+ }
+ }
+ else
+ {
+ // "Default" operation - we have blocks on our own freelist
+ // grab the first record and update the counters.
+ block = __bin.first[__thread_id];
+ __bin.first[__thread_id] = __bin.first[__thread_id]->next;
#ifdef __GTHREADS
- size_t thread_id = _S_get_thread_id();
-#else
- size_t thread_id = 0;
+ if (__gthread_active_p())
+ {
+ __bin.free[__thread_id]--;
+ __bin.used[__thread_id]++;
+ }
#endif
+ }
+ char* __c = reinterpret_cast<char*>(block) + sizeof(block_record);
+ return static_cast<_Tp*>(static_cast<void*>(__c));
+ }
+
- block_record* block = (block_record*)((char*)__p
- - sizeof(block_record));
-
- /*
- * This block will always be at the back of a list and thus
- * we set its next pointer to NULL.
- */
- block->next = NULL;
-
+ template<typename _Tp>
+ void
+ __mt_alloc<_Tp>::
+ deallocate(pointer __p, size_type __n)
+ {
+ // Requests larger than _M_max_bytes are handled by operators
+ // new/delete directly.
+ const size_t __bytes = __n * sizeof(_Tp);
+ if (__bytes > _S_options._M_max_bytes || _S_options._M_force_new)
+ {
+ ::operator delete(__p);
+ return;
+ }
+
+ // Round up to power of 2 and figure out which bin to use.
+ const size_t __which = _S_binmap[__bytes];
+ const size_t thread_id = _S_get_thread_id();
+ const bin_record& __bin = _S_bin[__which];
+
+ char* __c = reinterpret_cast<char*>(__p) - sizeof(block_record);
+ block_record* block = reinterpret_cast<block_record*>(__c);
+
#ifdef __GTHREADS
- if (__gthread_active_p())
- {
- /*
- * Calculate the number of records to remove from our freelist
- */
- int remove = _S_bin[bin].free[thread_id] -
- (_S_bin[bin].used[thread_id] / _S_freelist_headroom);
-
- /*
- * The calculation above will almost always tell us to
- * remove one or two records at a time, but this creates
- * too much contention when locking and therefore we
- * wait until the number of records is "high enough".
- */
- if (remove > (int)(100 * (_S_no_of_bins - bin)) &&
- remove > (int)(_S_bin[bin].free[thread_id] /
- _S_freelist_headroom))
- {
- __gthread_mutex_lock(_S_bin[bin].mutex);
-
- while (remove > 0)
- {
- if (_S_bin[bin].first[0] == NULL)
- _S_bin[bin].first[0] = _S_bin[bin].first[thread_id];
- else
- _S_bin[bin].last[0]->next = _S_bin[bin].first[thread_id];
-
- _S_bin[bin].last[0] = _S_bin[bin].first[thread_id];
-
- _S_bin[bin].first[thread_id] =
- _S_bin[bin].first[thread_id]->next;
-
- _S_bin[bin].free[0]++;
- _S_bin[bin].free[thread_id]--;
-
- remove--;
- }
-
- _S_bin[bin].last[0]->next = NULL;
-
- __gthread_mutex_unlock(_S_bin[bin].mutex);
- }
-
- /*
- * Did we allocate this block?
- * - Yes, return it to our freelist
- * - No, return it to global pool
- */
- if (thread_id == block->thread_id)
- {
- if (_S_bin[bin].first[thread_id] == NULL)
- _S_bin[bin].first[thread_id] = block;
- else
- _S_bin[bin].last[thread_id]->next = block;
-
- _S_bin[bin].last[thread_id] = block;
-
- _S_bin[bin].free[thread_id]++;
- _S_bin[bin].used[thread_id]--;
- }
- else
- {
- __gthread_mutex_lock(_S_bin[bin].mutex);
-
- if (_S_bin[bin].first[0] == NULL)
- _S_bin[bin].first[0] = block;
- else
- _S_bin[bin].last[0]->next = block;
-
- _S_bin[bin].last[0] = block;
-
- _S_bin[bin].free[0]++;
- _S_bin[bin].used[block->thread_id]--;
-
- __gthread_mutex_unlock(_S_bin[bin].mutex);
- }
- }
- else
+ if (__gthread_active_p())
+ {
+ // Calculate the number of records to remove from our freelist.
+ int remove = __bin.free[thread_id] -
+ (__bin.used[thread_id] / _S_options._M_freelist_headroom);
+
+ // The calculation above will almost always tell us to
+ // remove one or two records at a time, but this creates too
+ // much contention when locking and therefore we wait until
+ // the number of records is "high enough".
+ int __cond1 = static_cast<int>(100 * (_S_bin_size - __which));
+ int __cond2 = static_cast<int>(__bin.free[thread_id] / _S_options._M_freelist_headroom);
+ if (remove > __cond1 && remove > __cond2)
+ {
+ __gthread_mutex_lock(__bin.mutex);
+ block_record* tmp;
+ while (remove > 0)
+ {
+ tmp = __bin.first[thread_id]->next;
+ if (__bin.first[0] == NULL)
+ {
+ __bin.first[0] = __bin.first[thread_id];
+ __bin.first[0]->next = NULL;
+ }
+ else
+ {
+ __bin.first[thread_id]->next = __bin.first[0];
+ __bin.first[0] = __bin.first[thread_id];
+ }
+
+ __bin.first[thread_id] = tmp;
+ __bin.free[thread_id]--;
+ remove--;
+ }
+ __gthread_mutex_unlock(__bin.mutex);
+ }
+
+ // Return this block to our list and update counters and
+ // owner id as needed.
+ if (__bin.first[thread_id] == NULL)
+ {
+ __bin.first[thread_id] = block;
+ block->next = NULL;
+ }
+ else
+ {
+ block->next = __bin.first[thread_id];
+ __bin.first[thread_id] = block;
+ }
+
+ __bin.free[thread_id]++;
+
+ if (thread_id == block->thread_id)
+ __bin.used[thread_id]--;
+ else
+ {
+ __bin.used[block->thread_id]--;
+ block->thread_id = thread_id;
+ }
+ }
+ else
#endif
- {
- /*
- * Single threaded application - return to global pool
- */
- if (_S_bin[bin].first[0] == NULL)
- _S_bin[bin].first[0] = block;
- else
- _S_bin[bin].last[0]->next = block;
-
- _S_bin[bin].last[0] = block;
-
- _S_bin[bin].free[0]++;
- _S_bin[bin].used[0]--;
- }
- }
- };
-
+ {
+ // Single threaded application - return to global pool.
+ if (__bin.first[0] == NULL)
+ {
+ __bin.first[0] = block;
+ block->next = NULL;
+ }
+ else
+ {
+ block->next = __bin.first[0];
+ __bin.first[0] = block;
+ }
+ }
+ }
+
template<typename _Tp>
void
__mt_alloc<_Tp>::
- _S_init()
+ _S_initialize()
{
- /*
- * Calculate the number of bins required based on _S_max_bytes,
- * _S_no_of_bins is initialized to 1 below.
- */
- {
- size_t bin_t = 1;
- while (_S_max_bytes > bin_t)
- {
- bin_t = bin_t << 1;
- _S_no_of_bins++;
- }
- }
-
- /*
- * Setup the bin map for quick lookup of the relevant bin
- */
- _S_binmap = (binmap_type*)
- malloc ((_S_max_bytes + 1) * sizeof(binmap_type));
+ if (_S_options._M_force_new)
+ return;
+
+ // Calculate the number of bins required based on _M_max_bytes.
+ // _S_bin_size is statically-initialized to one.
+ size_t __bin_size = 1;
+ while (_S_options._M_max_bytes > __bin_size)
+ {
+ __bin_size = __bin_size << 1;
+ _S_bin_size++;
+ }
- if (!_S_binmap)
- __throw_bad_alloc();
+ // Setup the bin map for quick lookup of the relevant bin.
+ const size_t __j = (_S_options._M_max_bytes + 1) * sizeof(binmap_type);
+ _S_binmap = static_cast<binmap_type*>(::operator new(__j));
- binmap_type* bp_t = _S_binmap;
- binmap_type bin_max_t = 1;
- binmap_type bin_t = 0;
- for (binmap_type ct = 0; ct <= _S_max_bytes; ct++)
+ binmap_type* __bp = _S_binmap;
+ binmap_type __bin_max = 1;
+ binmap_type __bint = 0;
+ for (binmap_type __ct = 0; __ct <= _S_options._M_max_bytes; __ct++)
{
- if (ct > bin_max_t)
+ if (__ct > __bin_max)
{
- bin_max_t <<= 1;
- bin_t++;
+ __bin_max <<= 1;
+ __bint++;
}
- *bp_t++ = bin_t;
+ *__bp++ = __bint;
}
- /*
- * If __gthread_active_p() create and initialize the list of
- * free thread ids. Single threaded applications use thread id 0
- * directly and have no need for this.
- */
+ // If __gthread_active_p() create and initialize the list of
+ // free thread ids. Single threaded applications use thread id 0
+ // directly and have no need for this.
+ void* __v;
#ifdef __GTHREADS
if (__gthread_active_p())
{
- _S_thread_freelist_first =
- (thread_record*)malloc(sizeof(thread_record) * _S_max_threads);
-
- if (!_S_thread_freelist_first)
- __throw_bad_alloc();
-
- /*
- * NOTE! The first assignable thread id is 1 since the global
- * pool uses id 0
- */
- size_t i;
- for (i = 1; i < _S_max_threads; i++)
+ const size_t __k = sizeof(thread_record) * _S_options._M_max_threads;
+ __v = ::operator new(__k);
+ _S_thread_freelist_first = static_cast<thread_record*>(__v);
+
+ // NOTE! The first assignable thread id is 1 since the
+ // global pool uses id 0
+ size_t __i;
+ for (__i = 1; __i < _S_options._M_max_threads; __i++)
{
- _S_thread_freelist_first[i - 1].next =
- &_S_thread_freelist_first[i];
-
- _S_thread_freelist_first[i - 1].id = i;
+ thread_record& __tr = _S_thread_freelist_first[__i - 1];
+ __tr.next = &_S_thread_freelist_first[__i];
+ __tr.id = __i;
}
- /*
- * Set last record
- */
- _S_thread_freelist_first[i - 1].next = NULL;
- _S_thread_freelist_first[i - 1].id = i;
-
- /*
- * Initialize per thread key to hold pointer to
- * _S_thread_freelist
- */
- __gthread_key_create(&_S_thread_key, _S_thread_key_destr);
+ // Set last record.
+ _S_thread_freelist_first[__i - 1].next = NULL;
+ _S_thread_freelist_first[__i - 1].id = __i;
+
+
+ // Make sure this is initialized.
+#ifndef __GTHREAD_MUTEX_INIT
+ __GTHREAD_MUTEX_INIT_FUNCTION(&_S_thread_freelist_mutex);
+#endif
+ // Initialize per thread key to hold pointer to
+ // _S_thread_freelist.
+ __gthread_key_create(&_S_thread_key, _S_destroy_thread_key);
}
#endif
- /*
- * Initialize _S_bin and its members
- */
- _S_bin = (bin_record*)malloc(sizeof(bin_record) * _S_no_of_bins);
-
- if (!_S_bin)
- __throw_bad_alloc();
+ // Initialize _S_bin and its members.
+ __v = ::operator new(sizeof(bin_record) * _S_bin_size);
+ _S_bin = static_cast<bin_record*>(__v);
+
+ // Maximum number of threads.
+ size_t __max_threads = 1;
+#ifdef __GTHREADS
+ if (__gthread_active_p())
+ __max_threads = _S_options._M_max_threads + 1;
+#endif
- for (size_t bin = 0; bin < _S_no_of_bins; bin++)
+ for (size_t __n = 0; __n < _S_bin_size; __n++)
{
- std::size_t __n = _S_max_threads + 1;
-
- _S_bin[bin].first = (block_record**)
- malloc(sizeof(block_record*) * __n);
-
- if (!_S_bin[bin].first)
- __throw_bad_alloc();
-
- _S_bin[bin].last = (block_record**)
- malloc(sizeof(block_record*) * __n);
+ bin_record& __bin = _S_bin[__n];
+ __v = ::operator new(sizeof(block_record*) * __max_threads);
+ __bin.first = static_cast<block_record**>(__v);
- if (!_S_bin[bin].last)
- __throw_bad_alloc();
-
- _S_bin[bin].free = (size_t*) malloc(sizeof(size_t) * __n);
-
- if (!_S_bin[bin].free)
- __throw_bad_alloc();
- _S_bin[bin].used = (size_t*) malloc(sizeof(size_t) * __n);
+#ifdef __GTHREADS
+ if (__gthread_active_p())
+ {
+ __v = ::operator new(sizeof(size_t) * __max_threads);
+ __bin.free = static_cast<size_t*>(__v);
- if (!_S_bin[bin].used)
- __throw_bad_alloc();
+ __v = ::operator new(sizeof(size_t) * __max_threads);
+ __bin.used = static_cast<size_t*>(__v);
-#ifdef __GTHREADS
- _S_bin[bin].mutex =(__gthread_mutex_t*) malloc(sizeof(__gthread_mutex_t));
+ __v = ::operator new(sizeof(__gthread_mutex_t));
+ __bin.mutex = static_cast<__gthread_mutex_t*>(__v);
#ifdef __GTHREAD_MUTEX_INIT
- {
- // Do not copy a POSIX/gthr mutex once in use.
- __gthread_mutex_t __tmp = __GTHREAD_MUTEX_INIT;
- *_S_bin[bin].mutex = __tmp;
- }
+ {
+ // Do not copy a POSIX/gthr mutex once in use.
+ __gthread_mutex_t __tmp = __GTHREAD_MUTEX_INIT;
+ *__bin.mutex = __tmp;
+ }
#else
- { __GTHREAD_MUTEX_INIT_FUNCTION (_S_bin[bin].mutex); }
+ { __GTHREAD_MUTEX_INIT_FUNCTION(__bin.mutex); }
#endif
+ }
#endif
- for (size_t thread = 0; thread <= _S_max_threads; thread++)
+ for (size_t __threadn = 0; __threadn < __max_threads; __threadn++)
{
- _S_bin[bin].first[thread] = NULL;
- _S_bin[bin].last[thread] = NULL;
- _S_bin[bin].free[thread] = 0;
- _S_bin[bin].used[thread] = 0;
- }
- }
-
- _S_initialized = true;
- }
-
+ __bin.first[__threadn] = NULL;
#ifdef __GTHREADS
- template<typename _Tp>
- void
- __mt_alloc<_Tp>::
- _S_thread_key_destr(void* freelist_pos)
- {
- /*
- * If the thread - when it dies - still has records on its
- * freelist we return them to the global pool here.
- */
- for (size_t bin = 0; bin < _S_no_of_bins; bin++)
- {
- block_record* block =
- _S_bin[bin].first[((thread_record*)freelist_pos)->id];
-
- if (block != NULL)
- {
- __gthread_mutex_lock(_S_bin[bin].mutex);
- while (block != NULL)
+ if (__gthread_active_p())
{
- if (_S_bin[bin].first[0] == NULL)
- _S_bin[bin].first[0] = block;
- else
- _S_bin[bin].last[0]->next = block;
-
- _S_bin[bin].last[0] = block;
- block = block->next;
- _S_bin[bin].free[0]++;
+ __bin.free[__threadn] = 0;
+ __bin.used[__threadn] = 0;
}
-
- _S_bin[bin].last[0]->next = NULL;
- __gthread_mutex_unlock(_S_bin[bin].mutex);
+#endif
}
}
-
- /*
- * Return this thread id record to front of thread_freelist
- */
- __gthread_mutex_lock(&_S_thread_freelist_mutex);
- ((thread_record*)freelist_pos)->next = _S_thread_freelist_first;
- _S_thread_freelist_first = (thread_record*)freelist_pos;
- __gthread_mutex_unlock(&_S_thread_freelist_mutex);
+ _S_init = true;
}
template<typename _Tp>
@@ -719,127 +655,95 @@ namespace __gnu_cxx
__mt_alloc<_Tp>::
_S_get_thread_id()
{
- /*
- * If we have thread support and it's active we check the thread
- * key value and return it's id or if it's not set we take the
- * first record from _S_thread_freelist and sets the key and
- * returns it's id.
- */
+#ifdef __GTHREADS
+ // If we have thread support and it's active we check the thread
+ // key value and return it's id or if it's not set we take the
+ // first record from _S_thread_freelist and sets the key and
+ // returns it's id.
if (__gthread_active_p())
{
- thread_record* volatile freelist_pos;
-
- if ((freelist_pos =
- (thread_record*)__gthread_getspecific(_S_thread_key)) == NULL)
+ thread_record* __freelist_pos = static_cast<thread_record*>(__gthread_getspecific(_S_thread_key));
+ if (__freelist_pos == NULL)
{
- /*
- * Since _S_max_threads must be larger than the
- * theoretical max number of threads of the OS the list
- * can never be empty.
- */
+ // Since _S_options._M_max_threads must be larger than
+ // the theoretical max number of threads of the OS the
+ // list can never be empty.
__gthread_mutex_lock(&_S_thread_freelist_mutex);
- freelist_pos = _S_thread_freelist_first;
+ __freelist_pos = _S_thread_freelist_first;
_S_thread_freelist_first = _S_thread_freelist_first->next;
__gthread_mutex_unlock(&_S_thread_freelist_mutex);
- __gthread_setspecific(_S_thread_key, (void*)freelist_pos);
-
- /*
- * Since thread_ids may/will be reused (espcially in
- * producer/consumer applications) we make sure that the
- * list pointers and free counter is reset BUT as the
- * "old" thread may still be owner of some memory (which
- * is referred to by other threads and thus not freed)
- * we don't reset the used counter.
- */
- for (size_t bin = 0; bin < _S_no_of_bins; bin++)
- {
- _S_bin[bin].first[freelist_pos->id] = NULL;
- _S_bin[bin].last[freelist_pos->id] = NULL;
- _S_bin[bin].free[freelist_pos->id] = 0;
- }
+ __gthread_setspecific(_S_thread_key,
+ static_cast<void*>(__freelist_pos));
}
-
- return freelist_pos->id;
+ return __freelist_pos->id;
}
-
- /*
- * Otherwise (no thread support or inactive) all requests are
- * served from the global pool 0.
- */
+#endif
+ // Otherwise (no thread support or inactive) all requests are
+ // served from the global pool 0.
return 0;
}
- template<typename _Tp> __gthread_once_t
- __mt_alloc<_Tp>::_S_once_mt = __GTHREAD_ONCE_INIT;
+#ifdef __GTHREADS
+ template<typename _Tp>
+ void
+ __mt_alloc<_Tp>::
+ _S_destroy_thread_key(void* __freelist_pos)
+ {
+ // Return this thread id record to front of thread_freelist.
+ __gthread_mutex_lock(&_S_thread_freelist_mutex);
+ thread_record* __tr = static_cast<thread_record*>(__freelist_pos);
+ __tr->next = _S_thread_freelist_first;
+ _S_thread_freelist_first = __tr;
+ __gthread_mutex_unlock(&_S_thread_freelist_mutex);
+ }
#endif
- template<typename _Tp> bool
- volatile __mt_alloc<_Tp>::_S_initialized = false;
+ template<typename _Tp>
+ inline bool
+ operator==(const __mt_alloc<_Tp>&, const __mt_alloc<_Tp>&)
+ { return true; }
+
+ template<typename _Tp>
+ inline bool
+ operator!=(const __mt_alloc<_Tp>&, const __mt_alloc<_Tp>&)
+ { return false; }
- template<typename _Tp> typename __mt_alloc<_Tp>::binmap_type*
- __mt_alloc<_Tp>::_S_binmap = NULL;
+ template<typename _Tp>
+ bool __mt_alloc<_Tp>::_S_init = false;
- /*
- * Allocation requests (after round-up to power of 2) below this
- * value will be handled by the allocator. A raw malloc/free() call
- * will be used for requests larger than this value.
- */
- template<typename _Tp> size_t
- __mt_alloc<_Tp>::_S_max_bytes = 128;
-
- /*
- * In order to avoid fragmenting and minimize the number of malloc()
- * calls we always request new memory using this value. Based on
- * previous discussions on the libstdc++ mailing list we have
- * choosen the value below. See
- * http://gcc.gnu.org/ml/libstdc++/2001-07/msg00077.html
- */
- template<typename _Tp> size_t
- __mt_alloc<_Tp>::_S_chunk_size = 4096 - 4 * sizeof(void*);
+ template<typename _Tp>
+ typename __mt_alloc<_Tp>::tune __mt_alloc<_Tp>::_S_options;
- /*
- * The maximum number of supported threads. Our Linux 2.4.18 reports
- * 4070 in /proc/sys/kernel/threads-max
- */
- template<typename _Tp> size_t
- __mt_alloc<_Tp>::_S_max_threads = 4096;
+ template<typename _Tp>
+ typename __mt_alloc<_Tp>::binmap_type* __mt_alloc<_Tp>::_S_binmap;
- /*
- * Actual value calculated in _S_init()
- */
- template<typename _Tp> size_t
- __mt_alloc<_Tp>::_S_no_of_bins = 1;
-
- /*
- * Each time a deallocation occurs in a threaded application we make
- * sure that there are no more than _S_freelist_headroom % of used
- * memory on the freelist. If the number of additional records is
- * more than _S_freelist_headroom % of the freelist, we move these
- * records back to the global pool.
- */
- template<typename _Tp> size_t
- __mt_alloc<_Tp>::_S_freelist_headroom = 10;
+ template<typename _Tp>
+ typename __mt_alloc<_Tp>::bin_record* volatile __mt_alloc<_Tp>::_S_bin;
- /*
- * Actual initialization in _S_init()
- */
+ template<typename _Tp>
+ size_t __mt_alloc<_Tp>::_S_bin_size = 1;
+
+ // Actual initialization in _S_initialize().
#ifdef __GTHREADS
- template<typename _Tp> typename __mt_alloc<_Tp>::thread_record*
- volatile __mt_alloc<_Tp>::_S_thread_freelist_first = NULL;
+ template<typename _Tp>
+ __gthread_once_t __mt_alloc<_Tp>::_S_once = __GTHREAD_ONCE_INIT;
- template<typename _Tp> __gthread_mutex_t
- __mt_alloc<_Tp>::_S_thread_freelist_mutex = __GTHREAD_MUTEX_INIT;
+ template<typename _Tp>
+ typename __mt_alloc<_Tp>::thread_record*
+ volatile __mt_alloc<_Tp>::_S_thread_freelist_first = NULL;
- /*
- * Actual initialization in _S_init()
- */
- template<typename _Tp> __gthread_key_t
- __mt_alloc<_Tp>::_S_thread_key;
-#endif
+ template<typename _Tp>
+ __gthread_key_t __mt_alloc<_Tp>::_S_thread_key;
- template<typename _Tp> typename __mt_alloc<_Tp>::bin_record*
- __mt_alloc<_Tp>::_S_bin = NULL;
+ template<typename _Tp>
+ __gthread_mutex_t
+#ifdef __GTHREAD_MUTEX_INIT
+ __mt_alloc<_Tp>::_S_thread_freelist_mutex = __GTHREAD_MUTEX_INIT;
+#else
+ __mt_alloc<_Tp>::_S_thread_freelist_mutex;
+#endif
+#endif
} // namespace __gnu_cxx
#endif
diff --git a/libstdc++-v3/include/ext/new_allocator.h b/libstdc++-v3/include/ext/new_allocator.h
index 6c8ca6349ed..1b0b4f61079 100644
--- a/libstdc++-v3/include/ext/new_allocator.h
+++ b/libstdc++-v3/include/ext/new_allocator.h
@@ -1,6 +1,6 @@
// Allocator that wraps operator new -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -77,12 +77,12 @@ namespace __gnu_cxx
// NB: __n is permitted to be 0. The C++ standard says nothing
// about what the return value is when __n == 0.
pointer
- allocate(size_type __n, allocator<void>::const_pointer __h = 0)
+ allocate(size_type __n, const void* = 0)
{ return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp))); }
// __p is not permitted to be a null pointer.
void
- deallocate(pointer __p, size_type __n)
+ deallocate(pointer __p, size_type)
{ ::operator delete(__p); }
size_type
@@ -98,6 +98,16 @@ namespace __gnu_cxx
void
destroy(pointer __p) { __p->~_Tp(); }
};
+
+ template<typename _Tp>
+ inline bool
+ operator==(const new_allocator<_Tp>&, const new_allocator<_Tp>&)
+ { return true; }
+
+ template<typename _Tp>
+ inline bool
+ operator!=(const new_allocator<_Tp>&, const new_allocator<_Tp>&)
+ { return false; }
} // namespace __gnu_cxx
#endif
diff --git a/libstdc++-v3/include/ext/pool_allocator.h b/libstdc++-v3/include/ext/pool_allocator.h
index 02303de31fd..1813a327807 100644
--- a/libstdc++-v3/include/ext/pool_allocator.h
+++ b/libstdc++-v3/include/ext/pool_allocator.h
@@ -1,6 +1,6 @@
// Allocators -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -40,18 +40,18 @@
* purpose. It is provided "as is" without express or implied warranty.
*/
-/** @file ext/debug_allocator.h
+/** @file ext/pool_allocator.h
* This file is a GNU extension to the Standard C++ Library.
* You should only include this header if you are using GCC 3 or later.
*/
#ifndef _POOL_ALLOCATOR_H
#define _POOL_ALLOCATOR_H 1
+#include <bits/c++config.h>
#include <new>
#include <bits/functexcept.h>
#include <bits/stl_threads.h>
#include <bits/atomicity.h>
-#include <bits/allocator_traits.h>
namespace __gnu_cxx
{
@@ -360,33 +360,4 @@ namespace __gnu_cxx
#endif
} // namespace __gnu_cxx
-namespace std
-{
- //@{
- /// Versions for the predefined "SGI" style allocators.
- template<typename _Tp, bool __thr, int __inst>
- struct _Alloc_traits<_Tp, __gnu_cxx::__pool_alloc<__thr, __inst> >
- {
- static const bool _S_instanceless = true;
- typedef __gnu_cxx::__pool_alloc<__thr, __inst> base_alloc_type;
- typedef __simple_alloc<_Tp, base_alloc_type> _Alloc_type;
- typedef __allocator<_Tp, base_alloc_type> allocator_type;
- };
- //@}
-
- //@{
- /// Versions for the __allocator adaptor used with the predefined
- /// "SGI" style allocators.
- template<typename _Tp, typename _Tp1, bool __thr, int __inst>
- struct _Alloc_traits<_Tp, __allocator<_Tp1,
- __gnu_cxx::__pool_alloc<__thr, __inst> > >
- {
- static const bool _S_instanceless = true;
- typedef __gnu_cxx::__pool_alloc<__thr, __inst> base_alloc_type;
- typedef __simple_alloc<_Tp, base_alloc_type> _Alloc_type;
- typedef __allocator<_Tp, base_alloc_type> allocator_type;
- };
- //@}
-} // namespace std
-
#endif
diff --git a/libstdc++-v3/include/ext/ropeimpl.h b/libstdc++-v3/include/ext/ropeimpl.h
index b8357ee2d45..b4c5f3e29e8 100644
--- a/libstdc++-v3/include/ext/ropeimpl.h
+++ b/libstdc++-v3/include/ext/ropeimpl.h
@@ -1,6 +1,6 @@
// SGI's rope class implementation -*- C++ -*-
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -59,7 +59,6 @@ namespace __gnu_cxx
using std::printf;
using std::basic_ostream;
using std::__throw_length_error;
- using std::__alloc;
using std::_Destroy;
using std::uninitialized_fill_n;
@@ -875,15 +874,15 @@ bool rope<_CharT, _Alloc>::_S_apply_to_pieces(
size_t __len = __end - __begin;
bool __result;
_CharT* __buffer =
- (_CharT*)__alloc::allocate(__len * sizeof(_CharT));
+ (_CharT*)_Alloc().allocate(__len * sizeof(_CharT));
try {
(*(__f->_M_fn))(__begin, __len, __buffer);
__result = __c(__buffer, __len);
- __alloc::deallocate(__buffer, __len * sizeof(_CharT));
+ _Alloc().deallocate(__buffer, __len * sizeof(_CharT));
}
catch(...)
{
- __alloc::deallocate(__buffer, __len * sizeof(_CharT));
+ _Alloc().deallocate(__buffer, __len * sizeof(_CharT));
__throw_exception_again;
}
return __result;
@@ -1121,7 +1120,7 @@ rope<_CharT,_Alloc>::_S_balance(_RopeRep* __r)
}
if (__result->_M_depth > _RopeRep::_S_max_rope_depth)
- __throw_length_error("rope::_S_balance");
+ __throw_length_error(__N("rope::_S_balance"));
return(__result);
}
diff --git a/libstdc++-v3/include/std/std_bitset.h b/libstdc++-v3/include/std/std_bitset.h
index e6498973e83..fba62c15bca 100644
--- a/libstdc++-v3/include/std/std_bitset.h
+++ b/libstdc++-v3/include/std/std_bitset.h
@@ -59,12 +59,11 @@
#include <ostream> // For ostream (operator<<)
#include <istream> // For istream (operator>>)
-
#define _GLIBCXX_BITSET_BITS_PER_WORD numeric_limits<unsigned long>::digits
#define _GLIBCXX_BITSET_WORDS(__n) \
((__n) < 1 ? 0 : ((__n) + _GLIBCXX_BITSET_BITS_PER_WORD - 1)/_GLIBCXX_BITSET_BITS_PER_WORD)
-namespace __gnu_norm
+namespace _GLIBCXX_STD
{
/**
* @if maint
@@ -709,7 +708,8 @@ namespace __gnu_norm
size_t __position = 0) : _Base()
{
if (__position > __s.size())
- __throw_out_of_range("bitset::bitset initial position not valid");
+ __throw_out_of_range(__N("bitset::bitset initial position "
+ "not valid"));
_M_copy_from_string(__s, __position,
basic_string<_CharT, _Traits, _Alloc>::npos);
}
@@ -728,7 +728,8 @@ namespace __gnu_norm
size_t __position, size_t __n) : _Base()
{
if (__position > __s.size())
- __throw_out_of_range("bitset::bitset initial position not valid");
+ __throw_out_of_range(__N("bitset::bitset initial position "
+ "not valid"));
_M_copy_from_string(__s, __position, __n);
}
@@ -1070,7 +1071,8 @@ namespace __gnu_norm
template<size_t _Nb>
template<class _CharT, class _Traits, class _Alloc>
void
- bitset<_Nb>::_M_copy_from_string(const basic_string<_CharT,_Traits,_Alloc>& __s, size_t __pos, size_t __n)
+ bitset<_Nb>::_M_copy_from_string(const basic_string<_CharT, _Traits,
+ _Alloc>& __s, size_t __pos, size_t __n)
{
reset();
const size_t __nbits = std::min(_Nb, std::min(__n, __s.size() - __pos));
@@ -1084,7 +1086,7 @@ namespace __gnu_norm
set(__i);
break;
default:
- __throw_invalid_argument("bitset::_M_copy_from_string");
+ __throw_invalid_argument(__N("bitset::_M_copy_from_string"));
}
}
}
@@ -1092,7 +1094,8 @@ namespace __gnu_norm
template<size_t _Nb>
template<class _CharT, class _Traits, class _Alloc>
void
- bitset<_Nb>::_M_copy_to_string(basic_string<_CharT, _Traits, _Alloc>& __s) const
+ bitset<_Nb>::_M_copy_to_string(basic_string<_CharT, _Traits,
+ _Alloc>& __s) const
{
__s.assign(_Nb, '0');
for (size_t __i = 0; __i < _Nb; ++__i)
@@ -1214,7 +1217,7 @@ namespace __gnu_norm
return __os << __tmp;
}
//@}
-} // namespace __gnu_norm
+} // namespace std
#undef _GLIBCXX_BITSET_WORDS
#undef _GLIBCXX_BITSET_BITS_PER_WORD
diff --git a/libstdc++-v3/include/std/std_complex.h b/libstdc++-v3/include/std/std_complex.h
index 4fe80a55769..e1027f65991 100644
--- a/libstdc++-v3/include/std/std_complex.h
+++ b/libstdc++-v3/include/std/std_complex.h
@@ -58,67 +58,113 @@ namespace std
template<> class complex<double>;
template<> class complex<long double>;
+ /// Return magnitude of @a z.
template<typename _Tp> _Tp abs(const complex<_Tp>&);
+ /// Return phase angle of @a z.
template<typename _Tp> _Tp arg(const complex<_Tp>&);
+ /// Return @a z magnitude squared.
template<typename _Tp> _Tp norm(const complex<_Tp>&);
+ /// Return complex conjugate of @a z.
template<typename _Tp> complex<_Tp> conj(const complex<_Tp>&);
+ /// Return complex with magnitude @a rho and angle @a theta.
template<typename _Tp> complex<_Tp> polar(const _Tp&, const _Tp& = 0);
// Transcendentals:
+ /// Return complex cosine of @a z.
template<typename _Tp> complex<_Tp> cos(const complex<_Tp>&);
+ /// Return complex hyperbolic cosine of @a z.
template<typename _Tp> complex<_Tp> cosh(const complex<_Tp>&);
+ /// Return complex base e exponential of @a z.
template<typename _Tp> complex<_Tp> exp(const complex<_Tp>&);
+ /// Return complex natural logarithm of @a z.
template<typename _Tp> complex<_Tp> log(const complex<_Tp>&);
+ /// Return complex base 10 logarithm of @a z.
template<typename _Tp> complex<_Tp> log10(const complex<_Tp>&);
+ /// Return complex cosine of @a z.
template<typename _Tp> complex<_Tp> pow(const complex<_Tp>&, int);
+ /// Return @a x to the @a y'th power.
template<typename _Tp> complex<_Tp> pow(const complex<_Tp>&, const _Tp&);
+ /// Return @a x to the @a y'th power.
template<typename _Tp> complex<_Tp> pow(const complex<_Tp>&,
const complex<_Tp>&);
+ /// Return @a x to the @a y'th power.
template<typename _Tp> complex<_Tp> pow(const _Tp&, const complex<_Tp>&);
+ /// Return complex sine of @a z.
template<typename _Tp> complex<_Tp> sin(const complex<_Tp>&);
+ /// Return complex hyperbolic sine of @a z.
template<typename _Tp> complex<_Tp> sinh(const complex<_Tp>&);
+ /// Return complex square root of @a z.
template<typename _Tp> complex<_Tp> sqrt(const complex<_Tp>&);
+ /// Return complex tangent of @a z.
template<typename _Tp> complex<_Tp> tan(const complex<_Tp>&);
+ /// Return complex hyperbolic tangent of @a z.
template<typename _Tp> complex<_Tp> tanh(const complex<_Tp>&);
+ //@}
// 26.2.2 Primary template class complex
+ /**
+ * Template to represent complex numbers.
+ *
+ * Specializations for float, double, and long double are part of the
+ * library. Results with any other type are not guaranteed.
+ *
+ * @param Tp Type of real and imaginary values.
+ */
template<typename _Tp>
class complex
{
public:
+ /// Value typedef.
typedef _Tp value_type;
+ /// Default constructor. First parameter is x, second parameter is y.
+ /// Unspecified parameters default to 0.
complex(const _Tp& = _Tp(), const _Tp & = _Tp());
- // Let's the compiler synthetize the copy constructor
+ // Lets the compiler synthesize the copy constructor
// complex (const complex<_Tp>&);
+ /// Copy constructor.
template<typename _Up>
complex(const complex<_Up>&);
+ /// Return real part of complex number.
_Tp& real();
+ /// Return real part of complex number.
const _Tp& real() const;
+ /// Return imaginary part of complex number.
_Tp& imag();
+ /// Return imaginary part of complex number.
const _Tp& imag() const;
+ /// Assign this complex number to scalar @a t.
complex<_Tp>& operator=(const _Tp&);
+ /// Add @a t to this complex number.
complex<_Tp>& operator+=(const _Tp&);
+ /// Subtract @a t from this complex number.
complex<_Tp>& operator-=(const _Tp&);
+ /// Multiply this complex number by @a t.
complex<_Tp>& operator*=(const _Tp&);
+ /// Divide this complex number by @a t.
complex<_Tp>& operator/=(const _Tp&);
- // Let's the compiler synthetize the
+ // Lets the compiler synthesize the
// copy and assignment operator
// complex<_Tp>& operator= (const complex<_Tp>&);
+ /// Assign this complex number to complex @a z.
template<typename _Up>
complex<_Tp>& operator=(const complex<_Up>&);
+ /// Add @a z to this complex number.
template<typename _Up>
complex<_Tp>& operator+=(const complex<_Up>&);
+ /// Subtract @a z from this complex number.
template<typename _Up>
complex<_Tp>& operator-=(const complex<_Up>&);
+ /// Multiply this complex number by @a z.
template<typename _Up>
complex<_Tp>& operator*=(const complex<_Up>&);
+ /// Divide this complex number by @a z.
template<typename _Up>
complex<_Tp>& operator/=(const complex<_Up>&);
@@ -261,6 +307,8 @@ namespace std
}
// Operators:
+ //@{
+ /// Return new complex value @a x plus @a y.
template<typename _Tp>
inline complex<_Tp>
operator+(const complex<_Tp>& __x, const complex<_Tp>& __y)
@@ -287,7 +335,10 @@ namespace std
__r.real() += __x;
return __r;
}
+ //@}
+ //@{
+ /// Return new complex value @a x minus @a y.
template<typename _Tp>
inline complex<_Tp>
operator-(const complex<_Tp>& __x, const complex<_Tp>& __y)
@@ -314,7 +365,10 @@ namespace std
__r.real() -= __y.real();
return __r;
}
+ //@}
+ //@{
+ /// Return new complex value @a x times @a y.
template<typename _Tp>
inline complex<_Tp>
operator*(const complex<_Tp>& __x, const complex<_Tp>& __y)
@@ -341,7 +395,10 @@ namespace std
__r *= __x;
return __r;
}
+ //@}
+ //@{
+ /// Return new complex value @a x divided by @a y.
template<typename _Tp>
inline complex<_Tp>
operator/(const complex<_Tp>& __x, const complex<_Tp>& __y)
@@ -368,17 +425,22 @@ namespace std
__r /= __y;
return __r;
}
+ //@}
+ /// Return @a x.
template<typename _Tp>
inline complex<_Tp>
operator+(const complex<_Tp>& __x)
{ return __x; }
+ /// Return complex negation of @a x.
template<typename _Tp>
inline complex<_Tp>
operator-(const complex<_Tp>& __x)
{ return complex<_Tp>(-__x.real(), -__x.imag()); }
+ //@{
+ /// Return true if @a x is equal to @a y.
template<typename _Tp>
inline bool
operator==(const complex<_Tp>& __x, const complex<_Tp>& __y)
@@ -393,7 +455,10 @@ namespace std
inline bool
operator==(const _Tp& __x, const complex<_Tp>& __y)
{ return __x == __y.real() && _Tp() == __y.imag(); }
+ //@}
+ //@{
+ /// Return false if @a x is equal to @a y.
template<typename _Tp>
inline bool
operator!=(const complex<_Tp>& __x, const complex<_Tp>& __y)
@@ -408,7 +473,9 @@ namespace std
inline bool
operator!=(const _Tp& __x, const complex<_Tp>& __y)
{ return __x != __y.real() || _Tp() != __y.imag(); }
+ //@}
+ /// Extraction operator for complex values.
template<typename _Tp, typename _CharT, class _Traits>
basic_istream<_CharT, _Traits>&
operator>>(basic_istream<_CharT, _Traits>& __is, complex<_Tp>& __x)
@@ -441,6 +508,7 @@ namespace std
return __is;
}
+ /// Insertion operator for complex values.
template<typename _Tp, typename _CharT, class _Traits>
basic_ostream<_CharT, _Traits>&
operator<<(basic_ostream<_CharT, _Traits>& __os, const complex<_Tp>& __x)
@@ -637,10 +705,10 @@ namespace std
complex<_Tp>
pow(const complex<_Tp>& __x, const _Tp& __y)
{
- if (__x.imag() == _Tp())
+ if (__x.imag() == _Tp() && __x.real() > _Tp())
return pow(__x.real(), __y);
- complex<_Tp> __t = log(__x);
+ complex<_Tp> __t = std::log(__x);
return std::polar(exp(__y * __t.real()), __y * __t.imag());
}
@@ -648,16 +716,16 @@ namespace std
inline complex<_Tp>
pow(const complex<_Tp>& __x, const complex<_Tp>& __y)
{
- return __x == _Tp() ? _Tp() : exp(__y * log(__x));
+ return __x == _Tp() ? _Tp() : std::exp(__y * std::log(__x));
}
template<typename _Tp>
inline complex<_Tp>
pow(const _Tp& __x, const complex<_Tp>& __y)
{
- return __x == _Tp()
- ? _Tp()
- : std::polar(pow(__x, __y.real()), __y.imag() * log(__x));
+ return __x > _Tp() ? std::polar(pow(__x, __y.real()),
+ __y.imag() * log(__x))
+ : std::pow(complex<_Tp>(__x, _Tp()), __y);
}
// 26.2.3 complex specializations
diff --git a/libstdc++-v3/include/std/std_istream.h b/libstdc++-v3/include/std/std_istream.h
index f22b503d6c6..a3a53ba73f6 100644
--- a/libstdc++-v3/include/std/std_istream.h
+++ b/libstdc++-v3/include/std/std_istream.h
@@ -128,13 +128,13 @@ namespace std
* functions in constructs like "std::cin >> std::ws". For more
* information, see the iomanip header.
*/
- __istream_type&
+ inline __istream_type&
operator>>(__istream_type& (*__pf)(__istream_type&));
- __istream_type&
+ inline __istream_type&
operator>>(__ios_type& (*__pf)(__ios_type&));
- __istream_type&
+ inline __istream_type&
operator>>(ios_base& (*__pf)(ios_base&));
//@}
diff --git a/libstdc++-v3/include/std/std_memory.h b/libstdc++-v3/include/std/std_memory.h
index eb2923276f7..4e6641ef673 100644
--- a/libstdc++-v3/include/std/std_memory.h
+++ b/libstdc++-v3/include/std/std_memory.h
@@ -1,6 +1,6 @@
// <memory> -*- C++ -*-
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -78,33 +78,36 @@ namespace std
while (__len > 0)
{
- _Tp* __tmp = (_Tp*) std::malloc((std::size_t)__len * sizeof(_Tp));
+ _Tp* __tmp = static_cast<_Tp*>(::operator new(__len * sizeof(_Tp),
+ nothrow));
if (__tmp != 0)
return pair<_Tp*, ptrdiff_t>(__tmp, __len);
__len /= 2;
}
- return pair<_Tp*, ptrdiff_t>((_Tp*)0, 0);
+ return pair<_Tp*, ptrdiff_t>(static_cast<_Tp*>(0), 0);
}
/**
- * @brief This is a mostly-useless wrapper around malloc().
+ * @brief Allocates a temporary buffer.
* @param len The number of objects of type Tp.
- * @return See full description.
+ * @return See full description.
*
* Reinventing the wheel, but this time with prettier spokes!
*
- * This function tries to obtain storage for @c len adjacent Tp objects.
- * The objects themselves are not constructed, of course. A pair<> is
- * returned containing "the buffer s address and capacity (in the units of
- * sizeof(Tp)), or a pair of 0 values if no storage can be obtained."
- * Note that the capacity obtained may be less than that requested if the
- * memory is unavailable; you should compare len with the .second return
- * value.
+ * This function tries to obtain storage for @c len adjacent Tp
+ * objects. The objects themselves are not constructed, of course.
+ * A pair<> is returned containing "the buffer s address and
+ * capacity (in the units of sizeof(Tp)), or a pair of 0 values if
+ * no storage can be obtained." Note that the capacity obtained
+ * may be less than that requested if the memory is unavailable;
+ * you should compare len with the .second return value.
+ *
+ * Provides the nothrow exception guarantee.
*/
template<typename _Tp>
inline pair<_Tp*,ptrdiff_t>
get_temporary_buffer(ptrdiff_t __len)
- { return std::__get_temporary_buffer(__len, (_Tp*) 0); }
+ { return std::__get_temporary_buffer(__len, static_cast<_Tp*>(0)); }
/**
* @brief The companion to get_temporary_buffer().
@@ -116,12 +119,12 @@ namespace std
template<typename _Tp>
void
return_temporary_buffer(_Tp* __p)
- { std::free(__p); }
+ { ::operator delete(__p, nothrow); }
/**
- * A wrapper class to provide auto_ptr with reference semantics. For
- * example, an auto_ptr can be assigned (or constructed from) the result of
- * a function which returns an auto_ptr by value.
+ * A wrapper class to provide auto_ptr with reference semantics.
+ * For example, an auto_ptr can be assigned (or constructed from)
+ * the result of a function which returns an auto_ptr by value.
*
* All the auto_ptr_ref stuff should happen behind the scenes.
*/
@@ -140,23 +143,25 @@ namespace std
*
* The Standard says:
* <pre>
- * An @c auto_ptr owns the object it holds a pointer to. Copying an
- * @c auto_ptr copies the pointer and transfers ownership to the destination.
- * If more than one @c auto_ptr owns the same object at the same time the
- * behavior of the program is undefined.
+ * An @c auto_ptr owns the object it holds a pointer to. Copying
+ * an @c auto_ptr copies the pointer and transfers ownership to the
+ * destination. If more than one @c auto_ptr owns the same object
+ * at the same time the behavior of the program is undefined.
*
- * The uses of @c auto_ptr include providing temporary exception-safety for
- * dynamically allocated memory, passing ownership of dynamically allocated
- * memory to a function, and returning dynamically allocated memory from a
- * function. @c auto_ptr does not meet the CopyConstructible and Assignable
- * requirements for Standard Library <a href="tables.html#65">container</a>
- * elements and thus instantiating a Standard Library container with an
- * @c auto_ptr results in undefined behavior.
+ * The uses of @c auto_ptr include providing temporary
+ * exception-safety for dynamically allocated memory, passing
+ * ownership of dynamically allocated memory to a function, and
+ * returning dynamically allocated memory from a function. @c
+ * auto_ptr does not meet the CopyConstructible and Assignable
+ * requirements for Standard Library <a
+ * href="tables.html#65">container</a> elements and thus
+ * instantiating a Standard Library container with an @c auto_ptr
+ * results in undefined behavior.
* </pre>
* Quoted from [20.4.5]/3.
*
- * Good examples of what can and cannot be done with auto_ptr can be found
- * in the libstdc++ testsuite.
+ * Good examples of what can and cannot be done with auto_ptr can
+ * be found in the libstdc++ testsuite.
*
* @if maint
* _GLIBCXX_RESOLVE_LIB_DEFECTS
@@ -196,7 +201,8 @@ namespace std
* @brief An %auto_ptr can be constructed from another %auto_ptr.
* @param a Another %auto_ptr of a different but related type.
*
- * A pointer-to-Tp1 must be convertible to a pointer-to-Tp/element_type.
+ * A pointer-to-Tp1 must be convertible to a
+ * pointer-to-Tp/element_type.
*
* This object now @e owns the object previously owned by @a a,
* which has given up ownsership.
@@ -238,9 +244,9 @@ namespace std
}
/**
- * When the %auto_ptr goes out of scope, the object it owns is deleted.
- * If it no longer owns anything (i.e., @c get() is @c NULL), then this
- * has no effect.
+ * When the %auto_ptr goes out of scope, the object it owns is
+ * deleted. If it no longer owns anything (i.e., @c get() is
+ * @c NULL), then this has no effect.
*
* @if maint
* The C++ standard says there is supposed to be an empty throw
@@ -284,8 +290,8 @@ namespace std
* @return The raw pointer being managed.
*
* You can get a copy of the pointer that this object owns, for
- * situations such as passing to a function which only accepts a raw
- * pointer.
+ * situations such as passing to a function which only accepts
+ * a raw pointer.
*
* @note This %auto_ptr still owns the memory.
*/
@@ -297,8 +303,8 @@ namespace std
* @return The raw pointer being managed.
*
* You can get a copy of the pointer that this object owns, for
- * situations such as passing to a function which only accepts a raw
- * pointer.
+ * situations such as passing to a function which only accepts
+ * a raw pointer.
*
* @note This %auto_ptr no longer owns the memory. When this object
* goes out of scope, nothing will happen.
@@ -315,8 +321,8 @@ namespace std
* @brief Forcibly deletes the managed object.
* @param p A pointer (defaults to NULL).
*
- * This object now @e owns the object pointed to by @a p. The previous
- * object has been deleted.
+ * This object now @e owns the object pointed to by @a p. The
+ * previous object has been deleted.
*/
void
reset(element_type* __p = 0) throw()
diff --git a/libstdc++-v3/include/std/std_ostream.h b/libstdc++-v3/include/std/std_ostream.h
index 27669549ce0..e3590f23515 100644
--- a/libstdc++-v3/include/std/std_ostream.h
+++ b/libstdc++-v3/include/std/std_ostream.h
@@ -127,13 +127,13 @@ namespace std
* functions in constructs like "std::cout << std::endl". For more
* information, see the iomanip header.
*/
- __ostream_type&
+ inline __ostream_type&
operator<<(__ostream_type& (*__pf)(__ostream_type&));
- __ostream_type&
+ inline __ostream_type&
operator<<(__ios_type& (*__pf)(__ios_type&));
- __ostream_type&
+ inline __ostream_type&
operator<<(ios_base& (*__pf) (ios_base&));
//@}
diff --git a/libstdc++-v3/include/std/std_valarray.h b/libstdc++-v3/include/std/std_valarray.h
index 7dac89dadb0..b893b335415 100644
--- a/libstdc++-v3/include/std/std_valarray.h
+++ b/libstdc++-v3/include/std/std_valarray.h
@@ -1,6 +1,6 @@
// The template and inlines for the -*- C++ -*- valarray class.
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -95,6 +95,17 @@ namespace std
namespace std
{
+ /**
+ * @brief Smart array designed to support numeric processing.
+ *
+ * A valarray is an array that provides constraints intended to allow for
+ * effective optimization of numeric array processing by reducing the
+ * aliasing that can result from pointer representations. It represents a
+ * one-dimensional array from which different multidimensional subsets can
+ * be accessed and modified.
+ *
+ * @param Tp Type of object in the array.
+ */
template<class _Tp>
class valarray
{
@@ -108,71 +119,289 @@ namespace std
typedef _Tp value_type;
// _lib.valarray.cons_ construct/destroy:
+ /// Construct an empty array.
valarray();
+
+ /// Construct an array with @a n elements.
explicit valarray(size_t);
+
+ /// Construct an array with @a n elements initialized to @a t.
valarray(const _Tp&, size_t);
+
+ /// Construct an array initialized to the first @a n elements of @a t.
valarray(const _Tp* __restrict__, size_t);
+
+ /// Copy constructor.
valarray(const valarray&);
+
+ /// Construct an array with the same size and values in @a sa.
valarray(const slice_array<_Tp>&);
+
+ /// Construct an array with the same size and values in @a ga.
valarray(const gslice_array<_Tp>&);
+
+ /// Construct an array with the same size and values in @a ma.
valarray(const mask_array<_Tp>&);
+
+ /// Construct an array with the same size and values in @a ia.
valarray(const indirect_array<_Tp>&);
+
template<class _Dom>
valarray(const _Expr<_Dom,_Tp>& __e);
~valarray();
// _lib.valarray.assign_ assignment:
+ /**
+ * @brief Assign elements to an array.
+ *
+ * Assign elements of array to values in @a v. Results are undefined
+ * if @a v is not the same size as this array.
+ *
+ * @param v Valarray to get values from.
+ */
valarray<_Tp>& operator=(const valarray<_Tp>&);
+
+ /**
+ * @brief Assign elements to a value.
+ *
+ * Assign all elements of array to @a t.
+ *
+ * @param t Value for elements.
+ */
valarray<_Tp>& operator=(const _Tp&);
+
+ /**
+ * @brief Assign elements to an array subset.
+ *
+ * Assign elements of array to values in @a sa. Results are undefined
+ * if @a sa is not the same size as this array.
+ *
+ * @param sa Array slice to get values from.
+ */
valarray<_Tp>& operator=(const slice_array<_Tp>&);
+
+ /**
+ * @brief Assign elements to an array subset.
+ *
+ * Assign elements of array to values in @a ga. Results are undefined
+ * if @a ga is not the same size as this array.
+ *
+ * @param ga Array slice to get values from.
+ */
valarray<_Tp>& operator=(const gslice_array<_Tp>&);
+
+ /**
+ * @brief Assign elements to an array subset.
+ *
+ * Assign elements of array to values in @a ma. Results are undefined
+ * if @a ma is not the same size as this array.
+ *
+ * @param ma Array slice to get values from.
+ */
valarray<_Tp>& operator=(const mask_array<_Tp>&);
+
+ /**
+ * @brief Assign elements to an array subset.
+ *
+ * Assign elements of array to values in @a ia. Results are undefined
+ * if @a ia is not the same size as this array.
+ *
+ * @param ia Array slice to get values from.
+ */
valarray<_Tp>& operator=(const indirect_array<_Tp>&);
template<class _Dom> valarray<_Tp>&
operator= (const _Expr<_Dom,_Tp>&);
// _lib.valarray.access_ element access:
- // XXX: LWG to be resolved.
- const _Tp& operator[](size_t) const;
- _Tp& operator[](size_t);
+ /**
+ * Return a reference to the i'th array element.
+ *
+ * @param i Index of element to return.
+ * @return Reference to the i'th element.
+ */
+ _Tp& operator[](size_t);
+
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // 389. Const overload of valarray::operator[] returns by value.
+ const _Tp& operator[](size_t) const;
+
// _lib.valarray.sub_ subset operations:
+ /**
+ * @brief Return an array subset.
+ *
+ * Returns a new valarray containing the elements of the array
+ * indicated by the slice argument. The new valarray is the size of
+ * the input slice. @see slice.
+ *
+ * @param s The source slice.
+ * @return New valarray containing elements in @a s.
+ */
_Expr<_SClos<_ValArray,_Tp>, _Tp> operator[](slice) const;
+
+ /**
+ * @brief Return a reference to an array subset.
+ *
+ * Returns a new valarray containing the elements of the array
+ * indicated by the slice argument. The new valarray is the size of
+ * the input slice. @see slice.
+ *
+ * @param s The source slice.
+ * @return New valarray containing elements in @a s.
+ */
slice_array<_Tp> operator[](slice);
+
+ /**
+ * @brief Return an array subset.
+ *
+ * Returns a slice_array referencing the elements of the array
+ * indicated by the slice argument. @see gslice.
+ *
+ * @param s The source slice.
+ * @return Slice_array referencing elements indicated by @a s.
+ */
_Expr<_GClos<_ValArray,_Tp>, _Tp> operator[](const gslice&) const;
+
+ /**
+ * @brief Return a reference to an array subset.
+ *
+ * Returns a new valarray containing the elements of the array
+ * indicated by the gslice argument. The new valarray is
+ * the size of the input gslice. @see gslice.
+ *
+ * @param s The source gslice.
+ * @return New valarray containing elements in @a s.
+ */
gslice_array<_Tp> operator[](const gslice&);
+
+ /**
+ * @brief Return an array subset.
+ *
+ * Returns a new valarray containing the elements of the array
+ * indicated by the argument. The input is a valarray of bool which
+ * represents a bitmask indicating which elements should be copied into
+ * the new valarray. Each element of the array is added to the return
+ * valarray if the corresponding element of the argument is true.
+ *
+ * @param m The valarray bitmask.
+ * @return New valarray containing elements indicated by @a m.
+ */
valarray<_Tp> operator[](const valarray<bool>&) const;
+
+ /**
+ * @brief Return a reference to an array subset.
+ *
+ * Returns a new mask_array referencing the elements of the array
+ * indicated by the argument. The input is a valarray of bool which
+ * represents a bitmask indicating which elements are part of the
+ * subset. Elements of the array are part of the subset if the
+ * corresponding element of the argument is true.
+ *
+ * @param m The valarray bitmask.
+ * @return New valarray containing elements indicated by @a m.
+ */
mask_array<_Tp> operator[](const valarray<bool>&);
+
+ /**
+ * @brief Return an array subset.
+ *
+ * Returns a new valarray containing the elements of the array
+ * indicated by the argument. The elements in the argument are
+ * interpreted as the indices of elements of this valarray to copy to
+ * the return valarray.
+ *
+ * @param i The valarray element index list.
+ * @return New valarray containing elements in @a s.
+ */
_Expr<_IClos<_ValArray, _Tp>, _Tp>
operator[](const valarray<size_t>&) const;
+
+ /**
+ * @brief Return a reference to an array subset.
+ *
+ * Returns an indirect_array referencing the elements of the array
+ * indicated by the argument. The elements in the argument are
+ * interpreted as the indices of elements of this valarray to include
+ * in the subset. The returned indirect_array refers to these
+ * elements.
+ *
+ * @param i The valarray element index list.
+ * @return Indirect_array referencing elements in @a i.
+ */
indirect_array<_Tp> operator[](const valarray<size_t>&);
// _lib.valarray.unary_ unary operators:
+ /// Return a new valarray by applying unary + to each element.
typename _UnaryOp<__unary_plus>::_Rt operator+() const;
+
+ /// Return a new valarray by applying unary - to each element.
typename _UnaryOp<__negate>::_Rt operator-() const;
+
+ /// Return a new valarray by applying unary ~ to each element.
typename _UnaryOp<__bitwise_not>::_Rt operator~() const;
+
+ /// Return a new valarray by applying unary ! to each element.
typename _UnaryOp<__logical_not>::_Rt operator!() const;
// _lib.valarray.cassign_ computed assignment:
+ /// Multiply each element of array by @a t.
valarray<_Tp>& operator*=(const _Tp&);
+
+ /// Divide each element of array by @a t.
valarray<_Tp>& operator/=(const _Tp&);
+
+ /// Set each element e of array to e % @a t.
valarray<_Tp>& operator%=(const _Tp&);
+
+ /// Add @a t to each element of array.
valarray<_Tp>& operator+=(const _Tp&);
+
+ /// Subtract @a t to each element of array.
valarray<_Tp>& operator-=(const _Tp&);
+
+ /// Set each element e of array to e ^ @a t.
valarray<_Tp>& operator^=(const _Tp&);
+
+ /// Set each element e of array to e & @a t.
valarray<_Tp>& operator&=(const _Tp&);
+
+ /// Set each element e of array to e | @a t.
valarray<_Tp>& operator|=(const _Tp&);
+
+ /// Left shift each element e of array by @a t bits.
valarray<_Tp>& operator<<=(const _Tp&);
+
+ /// Right shift each element e of array by @a t bits.
valarray<_Tp>& operator>>=(const _Tp&);
+
+ /// Multiply elements of array by corresponding elements of @a v.
valarray<_Tp>& operator*=(const valarray<_Tp>&);
+
+ /// Divide elements of array by corresponding elements of @a v.
valarray<_Tp>& operator/=(const valarray<_Tp>&);
+
+ /// Modulo elements of array by corresponding elements of @a v.
valarray<_Tp>& operator%=(const valarray<_Tp>&);
+
+ /// Add corresponding elements of @a v to elements of array.
valarray<_Tp>& operator+=(const valarray<_Tp>&);
+
+ /// Subtract corresponding elements of @a v from elements of array.
valarray<_Tp>& operator-=(const valarray<_Tp>&);
+
+ /// Logical xor corresponding elements of @a v with elements of array.
valarray<_Tp>& operator^=(const valarray<_Tp>&);
+
+ /// Logical or corresponding elements of @a v with elements of array.
valarray<_Tp>& operator|=(const valarray<_Tp>&);
+
+ /// Logical and corresponding elements of @a v with elements of array.
valarray<_Tp>& operator&=(const valarray<_Tp>&);
+
+ /// Left shift elements of array by corresponding elements of @a v.
valarray<_Tp>& operator<<=(const valarray<_Tp>&);
+
+ /// Right shift elements of array by corresponding elements of @a v.
valarray<_Tp>& operator>>=(const valarray<_Tp>&);
template<class _Dom>
@@ -198,18 +427,93 @@ namespace std
// _lib.valarray.members_ member functions:
+ /// Return the number of elements in array.
size_t size() const;
- _Tp sum() const;
+
+ /**
+ * @brief Return the sum of all elements in the array.
+ *
+ * Accumulates the sum of all elements into a Tp using +=. The order
+ * of adding the elements is unspecified.
+ */
+ _Tp sum() const;
+
+ /// Return the minimum element using operator<().
_Tp min() const;
+
+ /// Return the maximum element using operator<().
_Tp max() const;
// // FIXME: Extension
// _Tp product () const;
+ /**
+ * @brief Return a shifted array.
+ *
+ * A new valarray is constructed as a copy of this array with elements
+ * in shifted positions. For an element with index i, the new position
+ * is i - n. The new valarray is the same size as the current one.
+ * New elements without a value are set to 0. Elements whos new
+ * position is outside the bounds of the array are discarded.
+ *
+ * Positive arguments shift toward index 0, discarding elements [0, n).
+ * Negative arguments discard elements from the top of the array.
+ *
+ * @param n Number of element positions to shift.
+ * @return New valarray with elements in shifted positions.
+ */
valarray<_Tp> shift (int) const;
+
+ /**
+ * @brief Return a rotated array.
+ *
+ * A new valarray is constructed as a copy of this array with elements
+ * in shifted positions. For an element with index i, the new position
+ * is (i - n) % size(). The new valarray is the same size as the
+ * current one. Elements that are shifted beyond the array bounds are
+ * shifted into the other end of the array. No elements are lost.
+ *
+ * Positive arguments shift toward index 0, wrapping around the top.
+ * Negative arguments shift towards the top, wrapping around to 0.
+ *
+ * @param n Number of element positions to rotate.
+ * @return New valarray with elements in shifted positions.
+ */
valarray<_Tp> cshift(int) const;
+
+ /**
+ * @brief Apply a function to the array.
+ *
+ * Returns a new valarray with elements assigned to the result of
+ * applying func to the corresponding element of this array. The new
+ * array is the same size as this one.
+ *
+ * @param func Function of Tp returning Tp to apply.
+ * @return New valarray with transformed elements.
+ */
_Expr<_ValFunClos<_ValArray,_Tp>,_Tp> apply(_Tp func(_Tp)) const;
+
+ /**
+ * @brief Apply a function to the array.
+ *
+ * Returns a new valarray with elements assigned to the result of
+ * applying func to the corresponding element of this array. The new
+ * array is the same size as this one.
+ *
+ * @param func Function of const Tp& returning Tp to apply.
+ * @return New valarray with transformed elements.
+ */
_Expr<_RefFunClos<_ValArray,_Tp>,_Tp> apply(_Tp func(const _Tp&)) const;
+
+ /**
+ * @brief Resize array.
+ *
+ * Resize this array to be @a size and set all elements to @a c. All
+ * references and iterators are invalidated.
+ *
+ * @param size New array size.
+ * @param c New value for all elements.
+ */
void resize(size_t __size, _Tp __c = _Tp());
private:
diff --git a/libstdc++-v3/libmath/Makefile.in b/libstdc++-v3/libmath/Makefile.in
index e5e1d62f986..677be699502 100644
--- a/libstdc++-v3/libmath/Makefile.in
+++ b/libstdc++-v3/libmath/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.7.8 from Makefile.am.
# @configure_input@
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
@@ -39,10 +39,13 @@ build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
ACLOCAL = @ACLOCAL@
+ALLOCATOR_H = @ALLOCATOR_H@
+ALLOCATOR_NAME = @ALLOCATOR_NAME@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@
+ATOMICITY_SRCDIR = @ATOMICITY_SRCDIR@
+ATOMIC_WORD_SRCDIR = @ATOMIC_WORD_SRCDIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
@@ -379,7 +382,7 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
diff --git a/libstdc++-v3/libmath/mathconf.h b/libstdc++-v3/libmath/mathconf.h
index 087631a5687..cd8c92ad89f 100644
--- a/libstdc++-v3/libmath/mathconf.h
+++ b/libstdc++-v3/libmath/mathconf.h
@@ -79,11 +79,6 @@ typedef int Int64_t __attribute ((mode (DI)));
# include <nan.h>
#endif
-#ifndef NAN
-# define NAN (nan())
-double nan (void);
-#endif
-
#ifdef HAVE_IEEEFP_H
# include <ieeefp.h>
#endif
diff --git a/libstdc++-v3/libmath/nan.c b/libstdc++-v3/libmath/nan.c
deleted file mode 100644
index 1814b5dd941..00000000000
--- a/libstdc++-v3/libmath/nan.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Return quiet nan. */
-
-/* Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
-
- This file is part of the GNU ISO C++ Library. This library is free
- software; you can redistribute it and/or modify it under the
- terms of the GNU General Public License as published by the
- Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along
- with this library; see the file COPYING. If not, write to the Free
- Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
- USA.
-
- As a special exception, you may use this file as part of a free software
- library without restriction. Specifically, if other files instantiate
- templates or use macros or inline functions from this file, or you compile
- this file and link it with other files to produce an executable, this
- file does not by itself cause the resulting executable to be covered by
- the GNU General Public License. This exception does not however
- invalidate any other reasons why the executable file might be covered by
- the GNU General Public License. */
-
-
-#include <stdlib.h>
-#include <string.h>
-
-double
-nan ()
-{ return strtod ("nan", NULL); }
diff --git a/libstdc++-v3/libsupc++/Makefile.am b/libstdc++-v3/libsupc++/Makefile.am
index 50727402c13..5550686728a 100644
--- a/libstdc++-v3/libsupc++/Makefile.am
+++ b/libstdc++-v3/libsupc++/Makefile.am
@@ -1,6 +1,6 @@
## Makefile for the GNU C++ Support library.
##
-## Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+## Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
##
## Process this file with automake to produce Makefile.in.
##
@@ -34,6 +34,9 @@ noinst_LTLIBRARIES = libsupc++convenience.la
headers = \
exception new typeinfo cxxabi.h exception_defines.h
+c_sources = \
+ cp-demangle.c
+
sources = \
del_op.cc \
del_opnt.cc \
@@ -62,8 +65,8 @@ sources = \
vec.cc \
vterminate.cc
-libsupc___la_SOURCES = $(sources)
-libsupc__convenience_la_SOURCES = $(sources)
+libsupc___la_SOURCES = $(sources) $(c_sources)
+libsupc__convenience_la_SOURCES = $(sources) $(c_sources)
glibcxxinstalldir = $(gxx_include_dir)
glibcxxinstall_HEADERS = $(headers)
@@ -83,6 +86,29 @@ AM_CXXFLAGS = \
AM_MAKEFLAGS = \
"gxx_include_dir=$(gxx_include_dir)"
+
+# Use special rules for pulling things out of libiberty. These
+# objects should be compiled with the "C" compiler, not the C++
+# compiler, and also should not use the C++ includes.
+C_INCLUDES = -I.. -I$(toplevel_srcdir)/libiberty -I$(toplevel_srcdir)/include
+C_COMPILE = \
+ $(CC) $(DEFS) $(C_INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+
+# LTCOMPILE is copied from LTCXXCOMPILE below.
+LTCOMPILE = $(LIBTOOL) --tag CC --tag disable-shared --mode=compile $(CC) \
+ $(DEFS) $(C_INCLUDES) $(LIBSUPCXX_PICFLAGS) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+
+cp-demangle.c:
+ rm -f $@
+ $(LN_S) $(toplevel_srcdir)/libiberty/cp-demangle.c $@
+cp-demangle.lo: cp-demangle.c
+ $(LTCOMPILE) -DIN_GLIBCPP_V3 -Wno-error -c $<
+cp-demangle.o: cp-demangle.c
+ $(C_COMPILE) -DIN_GLIBCPP_V3 -Wno-error -c $<
+
+
# libstdc++ libtool notes
# 1) Need to explicitly set LTCXXCOMPILE so that AM_CXXFLAGS is
diff --git a/libstdc++-v3/libsupc++/Makefile.in b/libstdc++-v3/libsupc++/Makefile.in
index f2ef55ee83b..4e2776a12fa 100644
--- a/libstdc++-v3/libsupc++/Makefile.in
+++ b/libstdc++-v3/libsupc++/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.7.8 from Makefile.am.
# @configure_input@
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
@@ -39,10 +39,13 @@ build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
ACLOCAL = @ACLOCAL@
+ALLOCATOR_H = @ALLOCATOR_H@
+ALLOCATOR_NAME = @ALLOCATOR_NAME@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@
+ATOMICITY_SRCDIR = @ATOMICITY_SRCDIR@
+ATOMIC_WORD_SRCDIR = @ATOMIC_WORD_SRCDIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
@@ -227,6 +230,10 @@ headers = \
exception new typeinfo cxxabi.h exception_defines.h
+c_sources = \
+ cp-demangle.c
+
+
sources = \
del_op.cc \
del_opnt.cc \
@@ -256,8 +263,8 @@ sources = \
vterminate.cc
-libsupc___la_SOURCES = $(sources)
-libsupc__convenience_la_SOURCES = $(sources)
+libsupc___la_SOURCES = $(sources) $(c_sources)
+libsupc__convenience_la_SOURCES = $(sources) $(c_sources)
glibcxxinstalldir = $(gxx_include_dir)
glibcxxinstall_HEADERS = $(headers)
@@ -279,6 +286,21 @@ AM_MAKEFLAGS = \
"gxx_include_dir=$(gxx_include_dir)"
+# Use special rules for pulling things out of libiberty. These
+# objects should be compiled with the "C" compiler, not the C++
+# compiler, and also should not use the C++ includes.
+C_INCLUDES = -I.. -I$(toplevel_srcdir)/libiberty -I$(toplevel_srcdir)/include
+C_COMPILE = \
+ $(CC) $(DEFS) $(C_INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+
+
+# LTCOMPILE is copied from LTCXXCOMPILE below.
+LTCOMPILE = $(LIBTOOL) --tag CC --tag disable-shared --mode=compile $(CC) \
+ $(DEFS) $(C_INCLUDES) $(LIBSUPCXX_PICFLAGS) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+
+
# libstdc++ libtool notes
# 1) Need to explicitly set LTCXXCOMPILE so that AM_CXXFLAGS is
@@ -329,16 +351,22 @@ am__objects_1 = del_op.lo del_opnt.lo del_opv.lo del_opvnt.lo \
eh_terminate.lo eh_throw.lo eh_type.lo eh_unex_handler.lo \
guard.lo new_handler.lo new_op.lo new_opnt.lo new_opv.lo \
new_opvnt.lo pure.lo tinfo.lo tinfo2.lo vec.lo vterminate.lo
-am_libsupc___la_OBJECTS = $(am__objects_1)
+am__objects_2 = cp-demangle.lo
+am_libsupc___la_OBJECTS = $(am__objects_1) $(am__objects_2)
libsupc___la_OBJECTS = $(am_libsupc___la_OBJECTS)
libsupc__convenience_la_LDFLAGS =
libsupc__convenience_la_LIBADD =
-am_libsupc__convenience_la_OBJECTS = $(am__objects_1)
+am_libsupc__convenience_la_OBJECTS = $(am__objects_1) $(am__objects_2)
libsupc__convenience_la_OBJECTS = $(am_libsupc__convenience_la_OBJECTS)
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
depcomp =
am__depfiles_maybe =
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
CXXLD = $(CXX)
@@ -353,7 +381,7 @@ SOURCES = $(libsupc___la_SOURCES) $(libsupc__convenience_la_SOURCES)
all: all-am
.SUFFIXES:
-.SUFFIXES: .cc .lo .o .obj
+.SUFFIXES: .c .cc .lo .o .obj
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/fragment.am $(top_srcdir)/configure.ac $(ACLOCAL_M4)
cd $(top_srcdir) && \
$(AUTOMAKE) --foreign libsupc++/Makefile
@@ -407,6 +435,15 @@ mostlyclean-compile:
distclean-compile:
-rm -f *.tab.c
+.c.o:
+ $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
+
+.c.obj:
+ $(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
+
+.c.lo:
+ $(LTCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
+
.cc.o:
$(CXXCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
@@ -530,7 +567,7 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
@@ -606,6 +643,14 @@ uninstall-am: uninstall-glibcxxinstallHEADERS uninstall-info-am \
uninstall-info-am uninstall-toolexeclibLTLIBRARIES
+cp-demangle.c:
+ rm -f $@
+ $(LN_S) $(toplevel_srcdir)/libiberty/cp-demangle.c $@
+cp-demangle.lo: cp-demangle.c
+ $(LTCOMPILE) -DIN_GLIBCPP_V3 -Wno-error -c $<
+cp-demangle.o: cp-demangle.c
+ $(C_COMPILE) -DIN_GLIBCPP_V3 -Wno-error -c $<
+
# We have to have rules modified from the default to counteract SUN make
# prepending each of $(glibcxxinstall_HEADERS) with VPATH below.
install-glibcxxinstallHEADERS: $(glibcxxinstall_HEADERS)
diff --git a/libstdc++-v3/libsupc++/eh_catch.cc b/libstdc++-v3/libsupc++/eh_catch.cc
index f8b7137e57e..0e186605f09 100644
--- a/libstdc++-v3/libsupc++/eh_catch.cc
+++ b/libstdc++-v3/libsupc++/eh_catch.cc
@@ -1,5 +1,5 @@
// -*- C++ -*- Exception handling routines for catching.
-// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of GCC.
//
@@ -65,10 +65,12 @@ __cxa_begin_catch (void *exc_obj_in)
// This exception was rethrown from an immediately enclosing region.
count = -count + 1;
else
- count += 1;
+ {
+ count += 1;
+ globals->uncaughtExceptions -= 1;
+ }
header->handlerCount = count;
- globals->uncaughtExceptions -= 1;
if (header != prev)
{
header->nextException = prev;
diff --git a/libstdc++-v3/libsupc++/eh_personality.cc b/libstdc++-v3/libsupc++/eh_personality.cc
index 9cf96f4b37d..4d5ae57b8d2 100644
--- a/libstdc++-v3/libsupc++/eh_personality.cc
+++ b/libstdc++-v3/libsupc++/eh_personality.cc
@@ -443,8 +443,10 @@ PERSONALITY_FUNCTION (int version,
}
}
+ /* For targets with pointers smaller than the word size, we must extend the
+ pointer, and this extension is target dependent. */
_Unwind_SetGR (context, __builtin_eh_return_data_regno (0),
- (_Unwind_Ptr) &xh->unwindHeader);
+ __builtin_extend_pointer (&xh->unwindHeader));
_Unwind_SetGR (context, __builtin_eh_return_data_regno (1),
handler_switch_value);
_Unwind_SetIP (context, landing_pad);
diff --git a/libstdc++-v3/libsupc++/vterminate.cc b/libstdc++-v3/libsupc++/vterminate.cc
index 38f6f617868..b53e9cea5ab 100644
--- a/libstdc++-v3/libsupc++/vterminate.cc
+++ b/libstdc++-v3/libsupc++/vterminate.cc
@@ -1,6 +1,6 @@
// Verbose terminate_handler -*- C++ -*-
-// Copyright (C) 2001, 2002 Free Software Foundation
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -32,66 +32,66 @@
#include <exception>
#include <exception_defines.h>
#include <cxxabi.h>
-
-#ifdef _GLIBCXX_HAVE_UNISTD_H
-# include <unistd.h>
-# define writestr(str) write(2, str, __builtin_strlen(str))
-#else
# include <cstdio>
-# define writestr(str) std::fputs(str, stderr)
-#endif
using namespace std;
using namespace abi;
namespace __gnu_cxx
{
- /* A replacement for the standard terminate_handler which prints
- more information about the terminating exception (if any) on
- stderr. */
+ // A replacement for the standard terminate_handler which prints
+ // more information about the terminating exception (if any) on
+ // stderr.
void __verbose_terminate_handler()
{
+ static bool terminating;
+ if (terminating)
+ {
+ fputs("terminate called recursively\n", stderr);
+ abort ();
+ }
+ terminating = true;
+
// Make sure there was an exception; terminate is also called for an
// attempt to rethrow when there is no suitable exception.
type_info *t = __cxa_current_exception_type();
if (t)
{
- char const *name = t->name();
// Note that "name" is the mangled name.
-
+ char const *name = t->name();
{
int status = -1;
char *dem = 0;
dem = __cxa_demangle(name, 0, 0, &status);
- writestr("terminate called after throwing an instance of '");
+ fputs("terminate called after throwing an instance of '", stderr);
if (status == 0)
- writestr(dem);
+ fputs(dem, stderr);
else
- writestr(name);
- writestr("'\n");
+ fputs(name, stderr);
+ fputs("'\n", stderr);
if (status == 0)
free(dem);
}
- // If the exception is derived from std::exception, we can give more
- // information.
+ // If the exception is derived from std::exception, we can
+ // give more information.
try { __throw_exception_again; }
#ifdef __EXCEPTIONS
catch (exception &exc)
{
char const *w = exc.what();
- writestr(" what(): ");
- writestr(w);
- writestr("\n");
+ fputs(" what(): ", stderr);
+ fputs(w, stderr);
+ fputs("\n", stderr);
}
#endif
catch (...) { }
}
else
- writestr("terminate called without an active exception\n");
+ fputs("terminate called without an active exception\n", stderr);
abort();
}
diff --git a/libstdc++-v3/linkage.m4 b/libstdc++-v3/linkage.m4
index ae8b18f544c..eec02800ddb 100644
--- a/libstdc++-v3/linkage.m4
+++ b/libstdc++-v3/linkage.m4
@@ -8,7 +8,7 @@ dnl declared when using the c++ compiler
dnl ASSUMES argument is a math function with ONE parameter
dnl
dnl GLIBCXX_CHECK_MATH_DECL_1
-AC_DEFUN(GLIBCXX_CHECK_MATH_DECL_1, [
+AC_DEFUN([GLIBCXX_CHECK_MATH_DECL_1], [
AC_MSG_CHECKING([for $1 declaration])
if test x${glibcxx_cv_func_$1_use+set} != xset; then
AC_CACHE_VAL(glibcxx_cv_func_$1_use, [
@@ -40,7 +40,7 @@ dnl
dnl ASSUMES argument is a math function with ONE parameter
dnl
dnl GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_1
-AC_DEFUN(GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_1, [
+AC_DEFUN([GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_1], [
GLIBCXX_CHECK_MATH_DECL_1($1)
if test x$glibcxx_cv_func_$1_use = x"yes"; then
AC_CHECK_FUNCS($1)
@@ -58,7 +58,7 @@ dnl Like GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_1, but does a bunch of
dnl of functions at once. It's an all-or-nothing check -- either
dnl HAVE_XYZ is defined for each of the functions, or for none of them.
dnl Doing it this way saves significant configure time.
-AC_DEFUN(GLIBCXX_CHECK_MATH_DECLS_AND_LINKAGES_1, [
+AC_DEFUN([GLIBCXX_CHECK_MATH_DECLS_AND_LINKAGES_1], [
AC_MSG_CHECKING([for $1 functions])
AC_CACHE_VAL(glibcxx_cv_func_$2_use, [
AC_LANG_SAVE
@@ -80,7 +80,7 @@ dnl declared when using the c++ compiler
dnl ASSUMES argument is a math function with TWO parameters
dnl
dnl GLIBCXX_CHECK_MATH_DECL_2
-AC_DEFUN(GLIBCXX_CHECK_MATH_DECL_2, [
+AC_DEFUN([GLIBCXX_CHECK_MATH_DECL_2], [
AC_MSG_CHECKING([for $1 declaration])
if test x${glibcxx_cv_func_$1_use+set} != xset; then
AC_CACHE_VAL(glibcxx_cv_func_$1_use, [
@@ -107,7 +107,7 @@ dnl
dnl ASSUMES argument is a math function with TWO parameters
dnl
dnl GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_2
-AC_DEFUN(GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_2, [
+AC_DEFUN([GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_2], [
GLIBCXX_CHECK_MATH_DECL_2($1)
if test x$glibcxx_cv_func_$1_use = x"yes"; then
AC_CHECK_FUNCS($1)
@@ -126,7 +126,7 @@ dnl declared when using the c++ compiler
dnl ASSUMES argument is a math function with THREE parameters
dnl
dnl GLIBCXX_CHECK_MATH_DECL_3
-AC_DEFUN(GLIBCXX_CHECK_MATH_DECL_3, [
+AC_DEFUN([GLIBCXX_CHECK_MATH_DECL_3], [
AC_MSG_CHECKING([for $1 declaration])
if test x${glibcxx_cv_func_$1_use+set} != xset; then
AC_CACHE_VAL(glibcxx_cv_func_$1_use, [
@@ -153,7 +153,7 @@ dnl
dnl ASSUMES argument is a math function with THREE parameters
dnl
dnl GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_3
-AC_DEFUN(GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_3, [
+AC_DEFUN([GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_3], [
GLIBCXX_CHECK_MATH_DECL_3($1)
if test x$glibcxx_cv_func_$1_use = x"yes"; then
AC_CHECK_FUNCS($1)
@@ -176,7 +176,7 @@ dnl
dnl ASSUMES argument is a stdlib function without parameters
dnl
dnl GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_0
-AC_DEFUN(GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_0, [
+AC_DEFUN([GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_0], [
AC_MSG_CHECKING([for $1 declaration])
if test x${glibcxx_cv_func_$1_use+set} != xset; then
AC_CACHE_VAL(glibcxx_cv_func_$1_use, [
@@ -205,7 +205,7 @@ dnl
dnl ASSUMES argument is a math function with TWO parameters
dnl
dnl GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_2
-AC_DEFUN(GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_2, [
+AC_DEFUN([GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_2], [
AC_MSG_CHECKING([for $1 declaration])
if test x${glibcxx_cv_func_$1_use+set} != xset; then
AC_CACHE_VAL(glibcxx_cv_func_$1_use, [
@@ -234,7 +234,7 @@ dnl
dnl ASSUMES argument is a function with THREE parameters
dnl
dnl GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_3
-AC_DEFUN(GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_3, [
+AC_DEFUN([GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_3], [
AC_MSG_CHECKING([for $1 declaration])
if test x${glibcxx_cv_func_$1_use+set} != xset; then
AC_CACHE_VAL(glibcxx_cv_func_$1_use, [
@@ -266,7 +266,7 @@ dnl
dnl ASSUMES argument is a math function with ONE parameter
dnl
dnl GLIBCXX_CHECK_BUILTIN_MATH_DECL_LINKAGE_1
-AC_DEFUN(GLIBCXX_CHECK_BUILTIN_MATH_DECL_AND_LINKAGE_1, [
+AC_DEFUN([GLIBCXX_CHECK_BUILTIN_MATH_DECL_AND_LINKAGE_1], [
AC_MSG_CHECKING([for $1 declaration])
if test x${glibcxx_cv_func_$1_use+set} != xset; then
AC_CACHE_VAL(glibcxx_cv_func_$1_use, [
@@ -316,7 +316,7 @@ dnl check for __builtin_cos
dnl check for __builtin_cosl
dnl
dnl GLIBCXX_CHECK_BUILTIN_MATH_SUPPORT
-AC_DEFUN(GLIBCXX_CHECK_BUILTIN_MATH_SUPPORT, [
+AC_DEFUN([GLIBCXX_CHECK_BUILTIN_MATH_SUPPORT], [
dnl Test for builtin math functions.
dnl These are made in gcc/c-common.c
GLIBCXX_CHECK_BUILTIN_MATH_DECL_AND_LINKAGE_1(__builtin_abs)
@@ -373,7 +373,7 @@ dnl Define HAVE_STRTOLD if "strtold" is declared and links
dnl Define HAVE_STRTOF if "strtof" is declared and links
dnl
dnl GLIBCXX_CHECK_STDLIB_SUPPORT
-AC_DEFUN(GLIBCXX_CHECK_STDLIB_SUPPORT, [
+AC_DEFUN([GLIBCXX_CHECK_STDLIB_SUPPORT], [
ac_test_CXXFLAGS="${CXXFLAGS+set}"
ac_save_CXXFLAGS="$CXXFLAGS"
CXXFLAGS='-fno-builtin -D_GNU_SOURCE'
@@ -394,7 +394,7 @@ dnl
dnl Define HAVE_CARGF etc if "cargf" is found.
dnl
dnl GLIBCXX_CHECK_MATH_SUPPORT
-AC_DEFUN(GLIBCXX_CHECK_MATH_SUPPORT, [
+AC_DEFUN([GLIBCXX_CHECK_MATH_SUPPORT], [
ac_test_CXXFLAGS="${CXXFLAGS+set}"
ac_save_CXXFLAGS="$CXXFLAGS"
CXXFLAGS='-fno-builtin -D_GNU_SOURCE'
@@ -505,12 +505,12 @@ dnl
dnl Define USE_COMPLEX_LONG_DOUBLE etc if "copysignl" is found.
dnl
dnl GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT
-AC_DEFUN(GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT, [
+AC_DEFUN([GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT], [
dnl Check for complex versions of math functions of platform. This will
dnl always pass if libm is available, and fail if it isn't. If it is
dnl available, we assume we'll need it later, so add it to LIBS.
AC_CHECK_LIB(m, main)
- AC_REPLACE_MATHFUNCS(nan copysignf)
+ AC_REPLACE_MATHFUNCS(copysignf)
dnl For __signbit to signbit conversions.
AC_CHECK_FUNCS([__signbit], , [LIBMATHOBJS="$LIBMATHOBJS signbit.lo"])
@@ -543,7 +543,7 @@ AC_DEFUN(GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT, [
# serial 1
#
dnl AC_REPLACE_MATHFUNCS(FUNCTION...)
-AC_DEFUN(AC_REPLACE_MATHFUNCS,
+AC_DEFUN([AC_REPLACE_MATHFUNCS],
[AC_CHECK_FUNCS([$1], , [LIBMATHOBJS="$LIBMATHOBJS ${ac_func}.lo"])])
dnl vim:et:ts=2
diff --git a/libstdc++-v3/po/Makefile.am b/libstdc++-v3/po/Makefile.am
index 15685abf5a0..f399323d253 100644
--- a/libstdc++-v3/po/Makefile.am
+++ b/libstdc++-v3/po/Makefile.am
@@ -1,6 +1,6 @@
## Makefile for the po subdirectory of the GNU C++ Standard library.
##
-## Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+## Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc.
##
## This file is part of the libstdc++ version 3 distribution.
## Process this file with automake to produce Makefile.in.
@@ -36,9 +36,7 @@ LOCALE_OUT = $(glibcxx_MOFILES)
MSGFMT = msgfmt
# Necessary files.
-DISTFILES = \
- Makefile.am Makefile.in string_literals.cc POTFILES.in $(PACKAGE).pot \
- $(LOCALE_IN)
+EXTRA_DIST = string_literals.cc POTFILES.in $(PACKAGE).pot $(LOCALE_IN)
.po.mo:
$(MSGFMT) -o $@ $<
diff --git a/libstdc++-v3/po/Makefile.in b/libstdc++-v3/po/Makefile.in
index c36ef8fea61..496b2056572 100644
--- a/libstdc++-v3/po/Makefile.in
+++ b/libstdc++-v3/po/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.7.8 from Makefile.am.
# @configure_input@
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
@@ -39,10 +39,13 @@ build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
ACLOCAL = @ACLOCAL@
+ALLOCATOR_H = @ALLOCATOR_H@
+ALLOCATOR_NAME = @ALLOCATOR_NAME@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@
+ATOMICITY_SRCDIR = @ATOMICITY_SRCDIR@
+ATOMIC_WORD_SRCDIR = @ATOMIC_WORD_SRCDIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
@@ -229,10 +232,7 @@ LOCALE_OUT = $(glibcxx_MOFILES)
MSGFMT = msgfmt
# Necessary files.
-DISTFILES = \
- Makefile.am Makefile.in string_literals.cc POTFILES.in $(PACKAGE).pot \
- $(LOCALE_IN)
-
+EXTRA_DIST = string_literals.cc POTFILES.in $(PACKAGE).pot $(LOCALE_IN)
# Specify what gets cleaned up on a 'make clean'
CLEANFILES = $(LOCALE_OUT)
@@ -270,6 +270,7 @@ TAGS:
ctags: CTAGS
CTAGS:
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
top_distdir = ..
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
@@ -318,7 +319,7 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
diff --git a/libstdc++-v3/scripts/check_performance b/libstdc++-v3/scripts/check_performance
index 5865114d1eb..090dae87ff6 100755
--- a/libstdc++-v3/scripts/check_performance
+++ b/libstdc++-v3/scripts/check_performance
@@ -23,7 +23,7 @@ case $BASH_VERSION in
esac
flags_script=$BUILD_DIR/scripts/testsuite_flags
-INCLUDES=`$flags_script --build-includes`
+INCLUDES="`$flags_script --build-includes` -include bits/stdc++.h"
FLAGS=`$flags_script --cxxflags`
THREAD_FLAG='-pthread'
COMPILER=`$flags_script --build-cxx`
@@ -31,19 +31,43 @@ SH_FLAG="-Wl,--rpath -Wl,$BUILD_DIR/../../gcc \
-Wl,--rpath -Wl,$BUILD_DIR/src/.libs"
ST_FLAG="-static"
LINK=$SH_FLAG
-CXX="$COMPILER $INCLUDES $FLAGS $THREAD_FLAG $LINK"
+CXX="$COMPILER $INCLUDES $FLAGS -DNOTHREAD $LINK"
+CXX_THREAD="$COMPILER $INCLUDES $FLAGS $THREAD_FLAG $LINK"
TESTS_FILE="testsuite_files_performance"
for NAME in `cat $TESTS_FILE`
do
- echo $NAME
- FILE_NAME="`basename $NAME`"
- EXE_NAME="`echo $FILE_NAME | sed 's/cc$/exe/'`"
- $CXX $SRC_DIR/testsuite/$NAME -o $EXE_NAME
- ./$EXE_NAME
- echo ""
+ RUN=true
+ for CYCLE in `sed -n 's,.*\(TEST_[SB][0-9]*\)$,\1,p' $SRC_DIR/testsuite/$NAME`
+ do
+ RUN=false
+ echo $NAME $CYCLE
+ FILE_NAME="`basename $NAME`"
+ EXE_NAME="`echo $FILE_NAME-$CYCLE | sed 's/cc$/exe/'`"
+ $CXX -D$CYCLE $SRC_DIR/testsuite/$NAME -o $EXE_NAME
+ ./$EXE_NAME
+ echo ""
+ done
+ for CYCLE in `sed -n 's,.*\(TEST_[TB][0-9]*\)$,\1,p' $SRC_DIR/testsuite/$NAME`
+ do
+ RUN=false
+ echo $NAME $CYCLE THREAD
+ FILE_NAME="`basename $NAME`"
+ EXE_NAME="`echo $FILE_NAME-$CYCLE | sed 's/cc$/exe/'`"
+ $CXX_THREAD -D$CYCLE $SRC_DIR/testsuite/$NAME -o $EXE_NAME
+ ./$EXE_NAME
+ echo ""
+ done
+ if $RUN; then
+ echo $NAME
+ FILE_NAME="`basename $NAME`"
+ EXE_NAME="`echo $FILE_NAME | sed 's/cc$/exe/'`"
+ $CXX $SRC_DIR/testsuite/$NAME -o $EXE_NAME
+ ./$EXE_NAME
+ echo ""
+ fi
done
exit 0
diff --git a/libstdc++-v3/scripts/testsuite_flags.in b/libstdc++-v3/scripts/testsuite_flags.in
index f66082e2fae..2a74f4782db 100755
--- a/libstdc++-v3/scripts/testsuite_flags.in
+++ b/libstdc++-v3/scripts/testsuite_flags.in
@@ -47,7 +47,7 @@ case ${query} in
echo ${CXX}
;;
--cxxflags)
- CXXFLAGS_save="-g -O2"
+ CXXFLAGS_save="-g -O2 -D_GLIBCXX_ASSERT"
CXXFLAGS_config='@SECTION_FLAGS@ @SECTION_LDFLAGS@ -fmessage-length=0
@EXTRA_CXX_FLAGS@ -DLOCALEDIR="@glibcxx_localedir@" '
echo ${CXXFLAGS_save} ${CXXFLAGS_config}
diff --git a/libstdc++-v3/src/Makefile.am b/libstdc++-v3/src/Makefile.am
index 3b4f67501c5..ed4c7107901 100644
--- a/libstdc++-v3/src/Makefile.am
+++ b/libstdc++-v3/src/Makefile.am
@@ -48,13 +48,14 @@ endif
# Source files linked in via configuration/make substitution for a
# particular host.
host_sources = \
+ atomicity.cc \
codecvt_members.cc \
collate_members.cc \
ctype_members.cc \
messages_members.cc \
monetary_members.cc \
numeric_members.cc \
- time_members.cc
+ time_members.cc
codecvt_members.cc: ${glibcxx_srcdir}/$(CCODECVT_CC)
$(LN_S) ${glibcxx_srcdir}/$(CCODECVT_CC) . || true
@@ -77,6 +78,10 @@ numeric_members.cc: ${glibcxx_srcdir}/$(CNUMERIC_CC)
time_members.cc: ${glibcxx_srcdir}/$(CTIME_CC)
$(LN_S) ${glibcxx_srcdir}/$(CTIME_CC) . || true
+atomicity_file = ${glibcxx_srcdir}/$(ATOMICITY_SRCDIR)/atomicity.h
+atomicity.cc: ${atomicity_file}
+ $(LN_S) ${atomicity_file} ./atomicity.cc || true
+
# Source files linked in via configuration/make substitution for a
# particular host, but with ad hoc naming rules.
host_sources_extra = \
@@ -91,11 +96,12 @@ basic_file.cc: ${glibcxx_srcdir}/$(BASIC_FILE_CC)
# Sources present in the src directory.
sources = \
+ allocator.cc \
codecvt.cc \
complex_io.cc \
ctype.cc \
debug.cc \
- demangle.cc \
+ debug_list.cc \
functexcept.cc \
globals_locale.cc \
globals_io.cc \
@@ -161,14 +167,6 @@ concept-inst.lo: concept-inst.cc
concept-inst.o: concept-inst.cc
$(CXXCOMPILE) -D_GLIBCXX_CONCEPT_CHECKS -fimplicit-templates -c $<
-# Use special rules for the demangler, so that an additional implicit
-# instantiation file is not necessary.
-demangle.lo: demangle.cc
- $(LTCXXCOMPILE) -fimplicit-templates -c $<
-demangle.o: demangle.cc
- $(CXXCOMPILE) -fimplicit-templates -c $<
-
-
# AM_CXXFLAGS needs to be in each subdirectory so that it can be
# modified in a per-library or per-sub-library way. Need to manually
# set this option because CONFIG_CXXFLAGS has to be after
diff --git a/libstdc++-v3/src/Makefile.in b/libstdc++-v3/src/Makefile.in
index d6cc47cbb88..1fae14533ec 100644
--- a/libstdc++-v3/src/Makefile.in
+++ b/libstdc++-v3/src/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.7.8 from Makefile.am.
# @configure_input@
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
@@ -40,10 +40,13 @@ target_triplet = @target@
VPATH = $(top_srcdir)/src:$(top_srcdir)
ACLOCAL = @ACLOCAL@
+ALLOCATOR_H = @ALLOCATOR_H@
+ALLOCATOR_NAME = @ALLOCATOR_NAME@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@
+ATOMICITY_SRCDIR = @ATOMICITY_SRCDIR@
+ATOMIC_WORD_SRCDIR = @ATOMIC_WORD_SRCDIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
@@ -229,15 +232,18 @@ toolexeclib_LTLIBRARIES = libstdc++.la
# Source files linked in via configuration/make substitution for a
# particular host.
host_sources = \
+ atomicity.cc \
codecvt_members.cc \
collate_members.cc \
ctype_members.cc \
messages_members.cc \
monetary_members.cc \
numeric_members.cc \
- time_members.cc
+ time_members.cc
+atomicity_file = ${glibcxx_srcdir}/$(ATOMICITY_SRCDIR)/atomicity.h
+
# Source files linked in via configuration/make substitution for a
# particular host, but with ad hoc naming rules.
host_sources_extra = \
@@ -247,11 +253,12 @@ host_sources_extra = \
# Sources present in the src directory.
sources = \
+ allocator.cc \
codecvt.cc \
complex_io.cc \
ctype.cc \
debug.cc \
- demangle.cc \
+ debug_list.cc \
functexcept.cc \
globals_locale.cc \
globals_io.cc \
@@ -356,14 +363,14 @@ CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
-am__objects_1 = codecvt_members.lo collate_members.lo ctype_members.lo \
- messages_members.lo monetary_members.lo numeric_members.lo \
- time_members.lo
+am__objects_1 = atomicity.lo codecvt_members.lo collate_members.lo \
+ ctype_members.lo messages_members.lo monetary_members.lo \
+ numeric_members.lo time_members.lo
am__objects_2 = basic_file.lo c++locale.lo
-am__objects_3 = codecvt.lo complex_io.lo ctype.lo debug.lo demangle.lo \
- functexcept.lo globals_locale.lo globals_io.lo ios.lo \
- ios_failure.lo ios_init.lo ios_locale.lo limits.lo list.lo \
- locale.lo locale_init.lo locale_facets.lo localename.lo \
+am__objects_3 = allocator.lo codecvt.lo complex_io.lo ctype.lo debug.lo \
+ debug_list.lo functexcept.lo globals_locale.lo globals_io.lo \
+ ios.lo ios_failure.lo ios_init.lo ios_locale.lo limits.lo \
+ list.lo locale.lo locale_init.lo locale_facets.lo localename.lo \
stdexcept.lo strstream.lo tree.lo allocator-inst.lo \
concept-inst.lo fstream-inst.lo ext-inst.lo io-inst.lo \
istream-inst.lo locale-inst.lo locale-misc-inst.lo misc-inst.lo \
@@ -552,7 +559,7 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
@@ -654,6 +661,8 @@ numeric_members.cc: ${glibcxx_srcdir}/$(CNUMERIC_CC)
time_members.cc: ${glibcxx_srcdir}/$(CTIME_CC)
$(LN_S) ${glibcxx_srcdir}/$(CTIME_CC) . || true
+atomicity.cc: ${atomicity_file}
+ $(LN_S) ${atomicity_file} ./atomicity.cc || true
c++locale.cc: ${glibcxx_srcdir}/$(CLOCALE_CC)
$(LN_S) ${glibcxx_srcdir}/$(CLOCALE_CC) ./$@ || true
@@ -673,13 +682,6 @@ concept-inst.lo: concept-inst.cc
concept-inst.o: concept-inst.cc
$(CXXCOMPILE) -D_GLIBCXX_CONCEPT_CHECKS -fimplicit-templates -c $<
-# Use special rules for the demangler, so that an additional implicit
-# instantiation file is not necessary.
-demangle.lo: demangle.cc
- $(LTCXXCOMPILE) -fimplicit-templates -c $<
-demangle.o: demangle.cc
- $(CXXCOMPILE) -fimplicit-templates -c $<
-
# Added bits to build debug library.
@GLIBCXX_BUILD_DEBUG_TRUE@all-local: build_debug
@GLIBCXX_BUILD_DEBUG_TRUE@install-data-local: install_debug
diff --git a/libstdc++-v3/src/allocator-inst.cc b/libstdc++-v3/src/allocator-inst.cc
index 24a7b415daf..3fcbb608098 100644
--- a/libstdc++-v3/src/allocator-inst.cc
+++ b/libstdc++-v3/src/allocator-inst.cc
@@ -1,6 +1,6 @@
// Explicit instantiation file.
-// Copyright (C) 1999, 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -39,8 +39,3 @@ namespace std
template class allocator<char>;
template class allocator<wchar_t>;
} // namespace std
-
-namespace __gnu_cxx
-{
- template class __pool_alloc<true, 0>;
-} // namespace __gnu_cxx
diff --git a/libstdc++-v3/src/allocator.cc b/libstdc++-v3/src/allocator.cc
new file mode 100644
index 00000000000..9f8d2abfa54
--- /dev/null
+++ b/libstdc++-v3/src/allocator.cc
@@ -0,0 +1,48 @@
+// Allocator details.
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+//
+// ISO C++ 14882:
+//
+
+#include <bits/c++config.h>
+#include <memory>
+#include <ext/mt_allocator.h>
+#include <ext/pool_allocator.h>
+
+// Explicitly instantiate the static data members of the underlying
+// allocator.
+namespace __gnu_cxx
+{
+ template class __mt_alloc<char>;
+ template class __mt_alloc<wchar_t>;
+
+ // Static members of __pool_alloc.
+ template class __pool_alloc<true, 0>;
+} // namespace __gnu_cxx
diff --git a/libstdc++-v3/src/debug.cc b/libstdc++-v3/src/debug.cc
index a78bdec2df3..1d1aee46627 100644
--- a/libstdc++-v3/src/debug.cc
+++ b/libstdc++-v3/src/debug.cc
@@ -1,6 +1,6 @@
// Debugging mode support code -*- C++ -*-
-// Copyright (C) 2003
+// Copyright (C) 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -107,18 +107,18 @@ namespace __gnu_debug
_Safe_sequence_base::
_M_detach_all()
{
- for (_Safe_iterator_base* iter = _M_iterators; iter; )
+ for (_Safe_iterator_base* __iter = _M_iterators; __iter; )
{
- _Safe_iterator_base* old = iter;
- iter = iter->_M_next;
- old->_M_attach(0, false);
+ _Safe_iterator_base* __old = __iter;
+ __iter = __iter->_M_next;
+ __old->_M_attach(0, false);
}
- for (_Safe_iterator_base* iter = _M_const_iterators; iter; )
+ for (_Safe_iterator_base* __iter = _M_const_iterators; __iter; )
{
- _Safe_iterator_base* old = iter;
- iter = iter->_M_next;
- old->_M_attach(0, true);
+ _Safe_iterator_base* __old = __iter;
+ __iter = __iter->_M_next;
+ __old->_M_attach(0, true);
}
}
@@ -126,20 +126,20 @@ namespace __gnu_debug
_Safe_sequence_base::
_M_detach_singular()
{
- for (_Safe_iterator_base* iter = _M_iterators; iter; )
+ for (_Safe_iterator_base* __iter = _M_iterators; __iter; )
{
- _Safe_iterator_base* old = iter;
- iter = iter->_M_next;
- if (old->_M_singular())
- old->_M_attach(0, false);
+ _Safe_iterator_base* __old = __iter;
+ __iter = __iter->_M_next;
+ if (__old->_M_singular())
+ __old->_M_attach(0, false);
}
- for (_Safe_iterator_base* iter = _M_const_iterators; iter; )
+ for (_Safe_iterator_base* __iter = _M_const_iterators; __iter; )
{
- _Safe_iterator_base* old = iter;
- iter = iter->_M_next;
- if (old->_M_singular())
- old->_M_attach(0, true);
+ _Safe_iterator_base* __old = __iter;
+ __iter = __iter->_M_next;
+ if (__old->_M_singular())
+ __old->_M_attach(0, true);
}
}
@@ -147,17 +147,17 @@ namespace __gnu_debug
_Safe_sequence_base::
_M_revalidate_singular()
{
- _Safe_iterator_base* iter;
- for (iter = _M_iterators; iter; iter = iter->_M_next)
+ _Safe_iterator_base* __iter;
+ for (__iter = _M_iterators; __iter; __iter = __iter->_M_next)
{
- iter->_M_version = _M_version;
- iter = iter->_M_next;
+ __iter->_M_version = _M_version;
+ __iter = __iter->_M_next;
}
- for (iter = _M_const_iterators; iter; iter = iter->_M_next)
+ for (__iter = _M_const_iterators; __iter; __iter = __iter->_M_next)
{
- iter->_M_version = _M_version;
- iter = iter->_M_next;
+ __iter->_M_version = _M_version;
+ __iter = __iter->_M_next;
}
}
@@ -168,15 +168,15 @@ namespace __gnu_debug
swap(_M_iterators, __x._M_iterators);
swap(_M_const_iterators, __x._M_const_iterators);
swap(_M_version, __x._M_version);
- _Safe_iterator_base* iter;
- for (iter = _M_iterators; iter; iter = iter->_M_next)
- iter->_M_sequence = this;
- for (iter = __x._M_iterators; iter; iter = iter->_M_next)
- iter->_M_sequence = &__x;
- for (iter = _M_const_iterators; iter; iter = iter->_M_next)
- iter->_M_sequence = this;
- for (iter = __x._M_const_iterators; iter; iter = iter->_M_next)
- iter->_M_sequence = &__x;
+ _Safe_iterator_base* __iter;
+ for (__iter = _M_iterators; __iter; __iter = __iter->_M_next)
+ __iter->_M_sequence = this;
+ for (__iter = __x._M_iterators; __iter; __iter = __iter->_M_next)
+ __iter->_M_sequence = &__x;
+ for (__iter = _M_const_iterators; __iter; __iter = __iter->_M_next)
+ __iter->_M_sequence = this;
+ for (__iter = __x._M_const_iterators; __iter; __iter = __iter->_M_next)
+ __iter->_M_sequence = &__x;
}
void
@@ -250,8 +250,8 @@ namespace __gnu_debug
_M_print_field(const _Error_formatter* __formatter, const char* __name) const
{
assert(this->_M_kind != _Parameter::__unused_param);
- const int bufsize = 64;
- char buf[bufsize];
+ const int __bufsize = 64;
+ char __buf[__bufsize];
if (_M_kind == __iterator)
{
@@ -262,9 +262,9 @@ namespace __gnu_debug
}
else if (strcmp(__name, "address") == 0)
{
- __formatter->_M_format_word(buf, bufsize, "%p",
+ __formatter->_M_format_word(__buf, __bufsize, "%p",
_M_variant._M_iterator._M_address);
- __formatter->_M_print_word(buf);
+ __formatter->_M_print_word(__buf);
}
else if (strcmp(__name, "type") == 0)
{
@@ -297,9 +297,9 @@ namespace __gnu_debug
else if (strcmp(__name, "sequence") == 0)
{
assert(_M_variant._M_iterator._M_sequence);
- __formatter->_M_format_word(buf, bufsize, "%p",
+ __formatter->_M_format_word(__buf, __bufsize, "%p",
_M_variant._M_iterator._M_sequence);
- __formatter->_M_print_word(buf);
+ __formatter->_M_print_word(__buf);
}
else if (strcmp(__name, "seq_type") == 0)
{
@@ -320,9 +320,9 @@ namespace __gnu_debug
else if (strcmp(__name, "address") == 0)
{
assert(_M_variant._M_sequence._M_address);
- __formatter->_M_format_word(buf, bufsize, "%p",
+ __formatter->_M_format_word(__buf, __bufsize, "%p",
_M_variant._M_sequence._M_address);
- __formatter->_M_print_word(buf);
+ __formatter->_M_print_word(__buf);
}
else if (strcmp(__name, "type") == 0)
{
@@ -363,22 +363,22 @@ namespace __gnu_debug
_Error_formatter::_Parameter::
_M_print_description(const _Error_formatter* __formatter) const
{
- const int bufsize = 128;
- char buf[bufsize];
+ const int __bufsize = 128;
+ char __buf[__bufsize];
if (_M_kind == __iterator)
{
__formatter->_M_print_word("iterator ");
if (_M_variant._M_iterator._M_name)
{
- __formatter->_M_format_word(buf, bufsize, "\"%s\" ",
+ __formatter->_M_format_word(__buf, __bufsize, "\"%s\" ",
_M_variant._M_iterator._M_name);
- __formatter->_M_print_word(buf);
+ __formatter->_M_print_word(__buf);
}
- __formatter->_M_format_word(buf, bufsize, "@ 0x%p {\n",
+ __formatter->_M_format_word(__buf, __bufsize, "@ 0x%p {\n",
_M_variant._M_iterator._M_address);
- __formatter->_M_print_word(buf);
+ __formatter->_M_print_word(__buf);
if (_M_variant._M_iterator._M_type)
{
__formatter->_M_print_word("type = ");
@@ -410,9 +410,9 @@ namespace __gnu_debug
__formatter->_M_print_word("' ");
}
- __formatter->_M_format_word(buf, bufsize, "@ 0x%p\n",
+ __formatter->_M_format_word(__buf, __bufsize, "@ 0x%p\n",
_M_variant._M_sequence._M_address);
- __formatter->_M_print_word(buf);
+ __formatter->_M_print_word(__buf);
}
__formatter->_M_print_word("}\n");
}
@@ -421,14 +421,14 @@ namespace __gnu_debug
__formatter->_M_print_word("sequence ");
if (_M_variant._M_sequence._M_name)
{
- __formatter->_M_format_word(buf, bufsize, "\"%s\" ",
+ __formatter->_M_format_word(__buf, __bufsize, "\"%s\" ",
_M_variant._M_sequence._M_name);
- __formatter->_M_print_word(buf);
+ __formatter->_M_print_word(__buf);
}
- __formatter->_M_format_word(buf, bufsize, "@ 0x%p {\n",
+ __formatter->_M_format_word(__buf, __bufsize, "@ 0x%p {\n",
_M_variant._M_sequence._M_address);
- __formatter->_M_print_word(buf);
+ __formatter->_M_print_word(__buf);
if (_M_variant._M_sequence._M_type)
{
@@ -447,24 +447,24 @@ namespace __gnu_debug
void
_Error_formatter::_M_error() const
{
- const int bufsize = 128;
- char buf[bufsize];
+ const int __bufsize = 128;
+ char __buf[__bufsize];
// Emit file & line number information
_M_column = 1;
_M_wordwrap = false;
if (_M_file)
{
- _M_format_word(buf, bufsize, "%s:", _M_file);
- _M_print_word(buf);
- _M_column += strlen(buf);
+ _M_format_word(__buf, __bufsize, "%s:", _M_file);
+ _M_print_word(__buf);
+ _M_column += strlen(__buf);
}
if (_M_line > 0)
{
- _M_format_word(buf, bufsize, "%u:", _M_line);
- _M_print_word(buf);
- _M_column += strlen(buf);
+ _M_format_word(__buf, __bufsize, "%u:", _M_line);
+ _M_print_word(__buf);
+ _M_column += strlen(__buf);
}
_M_wordwrap = true;
@@ -477,19 +477,19 @@ namespace __gnu_debug
// Emit descriptions of the objects involved in the operation
_M_wordwrap = false;
- bool has_noninteger_parameters = false;
- for (unsigned int i = 0; i < _M_num_parameters; ++i)
+ bool __has_noninteger_parameters = false;
+ for (unsigned int __i = 0; __i < _M_num_parameters; ++__i)
{
- if (_M_parameters[i]._M_kind == _Parameter::__iterator
- || _M_parameters[i]._M_kind == _Parameter::__sequence)
+ if (_M_parameters[__i]._M_kind == _Parameter::__iterator
+ || _M_parameters[__i]._M_kind == _Parameter::__sequence)
{
- if (!has_noninteger_parameters)
+ if (!__has_noninteger_parameters)
{
_M_first_line = true;
_M_print_word("\nObjects involved in the operation:\n");
- has_noninteger_parameters = true;
+ __has_noninteger_parameters = true;
}
- _M_parameters[i]._M_print_description(this);
+ _M_parameters[__i]._M_print_description(this);
}
}
@@ -529,11 +529,11 @@ namespace __gnu_debug
// If this isn't the first line, indent
if (_M_column == 1 && !_M_first_line)
{
- char spacing[_M_indent + 1];
+ char __spacing[_M_indent + 1];
for (int i = 0; i < _M_indent; ++i)
- spacing[i] = ' ';
- spacing[_M_indent] = '\0';
- fprintf(stderr, "%s", spacing);
+ __spacing[i] = ' ';
+ __spacing[_M_indent] = '\0';
+ fprintf(stderr, "%s", __spacing);
_M_column += _M_indent;
}
@@ -560,8 +560,8 @@ namespace __gnu_debug
{
const char* __start = __string;
const char* __end = __start;
- const int bufsize = 128;
- char buf[bufsize];
+ const int __bufsize = 128;
+ char __buf[__bufsize];
while (*__start)
{
@@ -573,9 +573,9 @@ namespace __gnu_debug
if (__start == __end) ++__end;
if (isspace(*__end)) ++__end;
- assert(__end - __start + 1< bufsize);
- _M_format_word(buf, __end - __start + 1, "%s", __start);
- _M_print_word(buf);
+ assert(__end - __start + 1< __bufsize);
+ _M_format_word(__buf, __end - __start + 1, "%s", __start);
+ _M_print_word(__buf);
__start = __end;
// Skip extra whitespace
@@ -585,56 +585,56 @@ namespace __gnu_debug
continue;
}
- ++__start;
- assert(*__start);
- if (*__start == '%')
- {
- _M_print_word("%");
- ++__start;
- continue;
- }
-
- // Get the parameter number
- assert(*__start >= '1' && *__start <= '9');
- size_t param = *__start - '0';
- --param;
- assert(param < _M_num_parameters);
-
- // '.' separates the parameter number from the field
- // name, if there is one.
- ++__start;
- if (*__start != '.')
- {
- assert(*__start == ';');
++__start;
- buf[0] = '\0';
- if (_M_parameters[param]._M_kind == _Parameter::__integer)
- {
- _M_format_word(buf, bufsize, "%ld",
- _M_parameters[param]._M_variant._M_integer._M_value);
- _M_print_word(buf);
- }
- else if (_M_parameters[param]._M_kind == _Parameter::__string)
- _M_print_string(_M_parameters[param]._M_variant._M_string._M_value);
- continue;
- }
-
- // Extract the field name we want
- enum { max_field_len = 16 };
- char field[max_field_len];
- int field_idx = 0;
- ++__start;
- while (*__start != ';')
- {
assert(*__start);
- assert(field_idx < max_field_len-1);
- field[field_idx++] = *__start++;
- }
- ++__start;
- field[field_idx] = 0;
+ if (*__start == '%')
+ {
+ _M_print_word("%");
+ ++__start;
+ continue;
+ }
+
+ // Get the parameter number
+ assert(*__start >= '1' && *__start <= '9');
+ size_t __param = *__start - '0';
+ --__param;
+ assert(__param < _M_num_parameters);
- _M_parameters[param]._M_print_field(this, field);
- }
+ // '.' separates the parameter number from the field
+ // name, if there is one.
+ ++__start;
+ if (*__start != '.')
+ {
+ assert(*__start == ';');
+ ++__start;
+ __buf[0] = '\0';
+ if (_M_parameters[__param]._M_kind == _Parameter::__integer)
+ {
+ _M_format_word(__buf, __bufsize, "%ld",
+ _M_parameters[__param]._M_variant._M_integer._M_value);
+ _M_print_word(__buf);
+ }
+ else if (_M_parameters[__param]._M_kind == _Parameter::__string)
+ _M_print_string(_M_parameters[__param]._M_variant._M_string._M_value);
+ continue;
+ }
+
+ // Extract the field name we want
+ enum { __max_field_len = 16 };
+ char __field[__max_field_len];
+ int __field_idx = 0;
+ ++__start;
+ while (*__start != ';')
+ {
+ assert(*__start);
+ assert(__field_idx < __max_field_len-1);
+ __field[__field_idx++] = *__start++;
+ }
+ ++__start;
+ __field[__field_idx] = 0;
+
+ _M_parameters[__param]._M_print_field(this, __field);
+ }
}
// Instantiations.
diff --git a/libstdc++-v3/src/debug_list.cc b/libstdc++-v3/src/debug_list.cc
new file mode 100644
index 00000000000..3d14b28f4b9
--- /dev/null
+++ b/libstdc++-v3/src/debug_list.cc
@@ -0,0 +1,34 @@
+// Debugging mode support code for list -*- C++ -*-
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#define _GLIBCXX_DEBUG
+
+#include <bits/c++config.h>
+
+#include "list.cc"
diff --git a/libstdc++-v3/src/demangle.cc b/libstdc++-v3/src/demangle.cc
deleted file mode 100644
index 58c076785e5..00000000000
--- a/libstdc++-v3/src/demangle.cc
+++ /dev/null
@@ -1,167 +0,0 @@
-// C++ IA64 / g++ v3 demangler -*- C++ -*-
-
-// Copyright (C) 2003 Free Software Foundation, Inc.
-// Written by Carlo Wood <carlo@alinoe.com>
-//
-// This file is part of the GNU ISO C++ Library. This library is free
-// software; you can redistribute it and/or modify it under the
-// terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 2, or (at your option)
-// any later version.
-
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-
-// You should have received a copy of the GNU General Public License along
-// with this library; see the file COPYING. If not, write to the Free
-// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
-// USA.
-
-// As a special exception, you may use this file as part of a free software
-// library without restriction. Specifically, if other files instantiate
-// templates or use macros or inline functions from this file, or you compile
-// this file and link it with other files to produce an executable, this
-// file does not by itself cause the resulting executable to be covered by
-// the GNU General Public License. This exception does not however
-// invalidate any other reasons why the executable file might be covered by
-// the GNU General Public License.
-
-#include <bits/demangle.h>
-#include <cxxabi.h>
-
-// __cxa_demangle
-//
-// Demangle a C++ symbol or type name.
-//
-// `mangled-name' is a pointer to a null-terminated array of characters.
-// It may be either an external name, i.e. with a "_Z" prefix, or an
-// internal NTBS mangling, e.g. of a type for type_info.
-//
-// `buf' may be null. If it is non-null, then n must also be non-null,
-// and buf is a pointer to an array, of at least *n characters, that
-// was allocated using malloc.
-//
-// `status' points to an int that is used as an error indicator. It is
-// permitted to be null, in which case the user just doesn't get any
-// detailed error information.
-//
-// Returns: a pointer to a null-terminated array of characters, the
-// demangled name. Or NULL in case of failure.
-//
-// If there is an error in demangling, the return value is a null pointer.
-// The user can examine *status to find out what kind of error occurred.
-// Meaning of error indications:
-//
-// * 0: success
-// * -1: memory allocation failure
-// * -2: invalid mangled name
-// * -3: invalid arguments (e.g. buf nonnull and n null)
-//
-
-namespace __cxxabiv1
-{
- namespace
- {
- char* const error = 0;
-
- enum status_codes
- {
- success = 0,
- memory_allocation_failure = -1,
- invalid_mangled_name = -2,
- invalid_argument = -3
- };
-
- inline char*
- failure(status_codes error_code, int* status)
- {
- if (status)
- *status = error_code;
- return error;
- }
-
- char*
- finish(char const* demangled_name, size_t demangled_name_size,
- char* buf, size_t* n, int* status)
- {
- if (!buf || *n < demangled_name_size + 1)
- {
- if (n)
- *n = demangled_name_size + 1;
- buf = (char*)realloc(buf, demangled_name_size + 1);
- if (!buf)
- return failure(memory_allocation_failure, status);
- }
- if (status)
- *status = success;
- std::strncpy(buf, demangled_name, demangled_name_size);
- buf[demangled_name_size] = 0;
- return buf;
- }
- } // namespace
-
- char*
- __cxa_demangle(char const* mangled_name, char* buf, std::size_t* n,
- int* status)
- {
- using namespace __gnu_cxx;
- typedef demangler::session<std::allocator<char> > session_type;
-
- if (!mangled_name || (buf && !n))
- return failure(invalid_argument, status);
-
- std::string result;
- if (mangled_name[0] == '_')
- {
- // External name?
- if (mangled_name[1] == 'Z')
- {
- // C++ name?
- int cnt = session_type::
- decode_encoding(result, mangled_name + 2, INT_MAX);
- if (cnt < 0 || mangled_name[cnt + 2] != 0)
- return failure(invalid_mangled_name, status);
- return finish(result.data(), result.size(), buf, n, status);
- }
- else if (mangled_name[1] == 'G')
- {
- // Possible _GLOBAL__ extension?
- if (!std::strncmp(mangled_name, "_GLOBAL__", 9)
- && (mangled_name[9] == 'D' || mangled_name[9] == 'I')
- && mangled_name[10] == '_')
- {
- if (mangled_name[9] == 'D')
- result.assign("global destructors keyed to ", 28);
- else
- result.assign("global constructors keyed to ", 29);
- // Output the disambiguation part as-is.
- result += mangled_name + 11;
- return finish(result.data(), result.size(), buf, n, status);
- }
- }
- }
-
- // Ambiguities are possible between extern "C" object names and
- // internal built-in type names, e.g. "i" may be either an object
- // named "i" or the built-in "int" type. Such ambiguities should
- // be resolved to user names over built-in names. Builtin types
- // are any single lower case character. Any other single
- // character is not a mangled type so we can treat those the same
- // here.
- if (mangled_name[1] == 0)
- return finish(mangled_name, 1, buf, n, status);
-
- // Not a built-in type or external name, try to demangle input as
- // NTBS mangled type name.
- session_type demangler_session(mangled_name, INT_MAX);
- if (!demangler_session.decode_type(result)
- || demangler_session.remaining_input_characters())
- {
- // Failure to demangle, assume extern "C" name.
- result = mangled_name;
- }
- return finish(result.data(), result.size(), buf, n, status);
- }
-} // namespace __cxxabiv1
diff --git a/libstdc++-v3/src/globals_io.cc b/libstdc++-v3/src/globals_io.cc
index 7be53f2f30d..bf70f47c6e6 100644
--- a/libstdc++-v3/src/globals_io.cc
+++ b/libstdc++-v3/src/globals_io.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -74,9 +74,10 @@ namespace std
#endif
} // namespace std
-namespace __gnu_cxx
+namespace __gnu_internal
{
using namespace std;
+ using namespace __gnu_cxx;
// We use different stream buffer types depending on whether
// ios_base::sync_with_stdio(false) has been called.
@@ -125,4 +126,4 @@ namespace __gnu_cxx
_GLIBCXX_mutex_address_init ()
{ __GTHREAD_MUTEX_INIT_FUNCTION (_GLIBCXX_mutex_address); }
#endif
-} // namespace __gnu_cxx
+} // namespace __gnu_internal
diff --git a/libstdc++-v3/src/globals_locale.cc b/libstdc++-v3/src/globals_locale.cc
index c79a379ff1a..67192c462a6 100644
--- a/libstdc++-v3/src/globals_locale.cc
+++ b/libstdc++-v3/src/globals_locale.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -43,7 +43,7 @@
// In macro form:
// _GLIBCXX_ASM_SYMVER(currentname, oldname, GLIBCXX_3.2)
-namespace __gnu_cxx
+namespace __gnu_internal
{
using namespace std;
@@ -184,8 +184,8 @@ namespace __gnu_cxx
__attribute__ ((aligned(__alignof__(std::__numpunct_cache<char>))));
fake_num_cache_c numpunct_cache_c;
- typedef char fake_money_cache_c[sizeof(std::__moneypunct_cache<char>)]
- __attribute__ ((aligned(__alignof__(std::__moneypunct_cache<char>))));
+ typedef char fake_money_cache_c[sizeof(std::__moneypunct_cache<char, true>)]
+ __attribute__ ((aligned(__alignof__(std::__moneypunct_cache<char, true>))));
fake_money_cache_c moneypunct_cache_ct;
fake_money_cache_c moneypunct_cache_cf;
@@ -198,8 +198,8 @@ namespace __gnu_cxx
__attribute__ ((aligned(__alignof__(std::__numpunct_cache<wchar_t>))));
fake_num_cache_w numpunct_cache_w;
- typedef char fake_money_cache_w[sizeof(std::__moneypunct_cache<wchar_t>)]
- __attribute__ ((aligned(__alignof__(std::__moneypunct_cache<wchar_t>))));
+ typedef char fake_money_cache_w[sizeof(std::__moneypunct_cache<wchar_t,true>)]
+ __attribute__ ((aligned(__alignof__(std::__moneypunct_cache<wchar_t,true>))));
fake_money_cache_w moneypunct_cache_wt;
fake_money_cache_w moneypunct_cache_wf;
@@ -207,4 +207,4 @@ namespace __gnu_cxx
__attribute__ ((aligned(__alignof__(std::__timepunct_cache<wchar_t>))));
fake_time_cache_w timepunct_cache_w;
#endif
-} // namespace __gnu_cxx
+} // namespace __gnu_internal
diff --git a/libstdc++-v3/src/ios.cc b/libstdc++-v3/src/ios.cc
index b36165e7497..0dfa482d9bb 100644
--- a/libstdc++-v3/src/ios.cc
+++ b/libstdc++-v3/src/ios.cc
@@ -1,6 +1,6 @@
// Iostreams base classes -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -138,7 +138,7 @@ namespace std
// Implementation note: Initialize top to zero to ensure that
// initialization occurs before main() is started.
static _Atomic_word _S_top = 0;
- return __exchange_and_add(&_S_top, 1) + 4;
+ return __gnu_cxx::__exchange_and_add(&_S_top, 1) + 4;
}
void
@@ -147,7 +147,7 @@ namespace std
// 27.4.2.5 iword/pword storage
ios_base::_Words&
- ios_base::_M_grow_words(int ix)
+ ios_base::_M_grow_words(int ix, bool iword)
{
// Precondition: _M_word_size <= ix
int newsize = _S_local_word_size;
@@ -163,8 +163,12 @@ namespace std
{
_M_streambuf_state |= badbit;
if (_M_streambuf_state & _M_exception)
- __throw_ios_failure("ios_base::_M_grow_words "
- "allocation failed");
+ __throw_ios_failure(__N("ios_base::_M_grow_words "
+ "allocation failed"));
+ if (iword)
+ _M_word_zero._M_iword = 0;
+ else
+ _M_word_zero._M_pword = 0;
return _M_word_zero;
}
for (int i = 0; i < _M_word_size; i++)
@@ -179,7 +183,11 @@ namespace std
{
_M_streambuf_state |= badbit;
if (_M_streambuf_state & _M_exception)
- __throw_ios_failure("ios_base::_M_grow_words is not valid");
+ __throw_ios_failure(__N("ios_base::_M_grow_words is not valid"));
+ if (iword)
+ _M_word_zero._M_iword = 0;
+ else
+ _M_word_zero._M_pword = 0;
return _M_word_zero;
}
}
diff --git a/libstdc++-v3/src/ios_init.cc b/libstdc++-v3/src/ios_init.cc
index b40202553e5..ae7b8e1b5f2 100644
--- a/libstdc++-v3/src/ios_init.cc
+++ b/libstdc++-v3/src/ios_init.cc
@@ -1,6 +1,6 @@
// Iostreams base classes -*- C++ -*-
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -40,8 +40,10 @@
#include <ext/stdio_filebuf.h>
#include <ext/stdio_sync_filebuf.h>
-namespace __gnu_cxx
+namespace __gnu_internal
{
+ using namespace __gnu_cxx;
+
// Extern declarations for global objects in src/globals.cc.
extern stdio_sync_filebuf<char> buf_cout_sync;
extern stdio_sync_filebuf<char> buf_cin_sync;
@@ -60,11 +62,11 @@ namespace __gnu_cxx
extern stdio_filebuf<wchar_t> buf_wcin;
extern stdio_filebuf<wchar_t> buf_wcerr;
#endif
-} // namespace __gnu_cxx
+} // namespace __gnu_internal
namespace std
{
- using namespace __gnu_cxx;
+ using namespace __gnu_internal;
extern istream cin;
extern ostream cout;
@@ -80,7 +82,7 @@ namespace std
ios_base::Init::Init()
{
- if (__exchange_and_add(&_S_refcount, 1) == 0)
+ if (__gnu_cxx::__exchange_and_add(&_S_refcount, 1) == 0)
{
// Standard streams default to synced with "C" operations.
_S_synced_with_stdio = true;
@@ -115,13 +117,13 @@ namespace std
// streams are not re-initialized with uses of ios_base::Init
// besides <iostream> static object, ie just using <ios> with
// ios_base::Init objects.
- __atomic_add(&_S_refcount, 1);
+ __gnu_cxx::__atomic_add(&_S_refcount, 1);
}
}
ios_base::Init::~Init()
{
- if (__exchange_and_add(&_S_refcount, -1) == 2)
+ if (__gnu_cxx::__exchange_and_add(&_S_refcount, -1) == 2)
{
// Catch any exceptions thrown by basic_ostream::flush()
try
diff --git a/libstdc++-v3/src/list.cc b/libstdc++-v3/src/list.cc
index 2be2d713193..ec94053b411 100644
--- a/libstdc++-v3/src/list.cc
+++ b/libstdc++-v3/src/list.cc
@@ -55,7 +55,7 @@
#include <list>
-namespace __gnu_norm
+namespace _GLIBCXX_STD
{
void
_List_node_base::swap(_List_node_base& __x, _List_node_base& __y)
@@ -121,7 +121,7 @@ namespace __gnu_norm
}
void
- _List_node_base::hook(_List_node_base * const __position)
+ _List_node_base::hook(_List_node_base* const __position)
{
this->_M_next = __position;
this->_M_prev = __position->_M_prev;
@@ -137,5 +137,5 @@ namespace __gnu_norm
__prev_node->_M_next = __next_node;
__next_node->_M_prev = __prev_node;
}
-} // namespace __gnu_norm
+} // namespace std
diff --git a/libstdc++-v3/src/locale-inst.cc b/libstdc++-v3/src/locale-inst.cc
index 25c3018a57a..3aeb55366f9 100644
--- a/libstdc++-v3/src/locale-inst.cc
+++ b/libstdc++-v3/src/locale-inst.cc
@@ -1,6 +1,7 @@
// Locale support -*- C++ -*-
-// Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -43,11 +44,35 @@ namespace std
// moneypunct, money_get, and money_put
template class moneypunct<C, false>;
template class moneypunct<C, true>;
- template struct __moneypunct_cache<C>;
+ template struct __moneypunct_cache<C, false>;
+ template struct __moneypunct_cache<C, true>;
template class moneypunct_byname<C, false>;
template class moneypunct_byname<C, true>;
template class money_get<C, istreambuf_iterator<C> >;
template class money_put<C, ostreambuf_iterator<C> >;
+ template
+ istreambuf_iterator<C>
+ money_get<C, istreambuf_iterator<C> >::
+ _M_extract<true>(istreambuf_iterator<C>, istreambuf_iterator<C>,
+ ios_base&, ios_base::iostate&, string&) const;
+
+ template
+ istreambuf_iterator<C>
+ money_get<C, istreambuf_iterator<C> >::
+ _M_extract<false>(istreambuf_iterator<C>, istreambuf_iterator<C>,
+ ios_base&, ios_base::iostate&, string&) const;
+
+ template
+ ostreambuf_iterator<C>
+ money_put<C, ostreambuf_iterator<C> >::
+ _M_insert<true>(ostreambuf_iterator<C>, ios_base&, C,
+ const string_type&) const;
+
+ template
+ ostreambuf_iterator<C>
+ money_put<C, ostreambuf_iterator<C> >::
+ _M_insert<false>(ostreambuf_iterator<C>, ios_base&, C,
+ const string_type&) const;
// numpunct, numpunct_byname, num_get, and num_put
template class numpunct<C>;
diff --git a/libstdc++-v3/src/locale.cc b/libstdc++-v3/src/locale.cc
index c9562e213a7..7021b65ec58 100644
--- a/libstdc++-v3/src/locale.cc
+++ b/libstdc++-v3/src/locale.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -141,8 +141,8 @@ namespace std
__ret = all;
break;
default:
- __throw_runtime_error("locale::_S_normalize_category "
- "category not found");
+ __throw_runtime_error(__N("locale::_S_normalize_category "
+ "category not found"));
}
}
return __ret;
@@ -264,7 +264,7 @@ namespace std
{
size_t __index = __idp->_M_id();
if ((__index > (__imp->_M_facets_size - 1)) || !__imp->_M_facets[__index])
- __throw_runtime_error("locale::_Impl::_M_replace_facet");
+ __throw_runtime_error(__N("locale::_Impl::_M_replace_facet"));
_M_install_facet(__idp, __imp->_M_facets[__index]);
}
@@ -356,7 +356,7 @@ namespace std
locale::id::_M_id() const
{
if (!_M_index)
- _M_index = 1 + __exchange_and_add(&_S_refcount, 1);
+ _M_index = 1 + __gnu_cxx::__exchange_and_add(&_S_refcount, 1);
return _M_index - 1;
}
} // namespace std
diff --git a/libstdc++-v3/src/locale_facets.cc b/libstdc++-v3/src/locale_facets.cc
index da975f0c78f..db8c9e0fba4 100644
--- a/libstdc++-v3/src/locale_facets.cc
+++ b/libstdc++-v3/src/locale_facets.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -53,6 +53,8 @@ namespace std
const money_base::pattern
money_base::_S_default_pattern = { {symbol, sign, none, value} };
+ const char* money_base::_S_atoms = "-0123456789";
+
const char* __num_base::_S_atoms_in = "-+xX0123456789abcdefABCDEF";
const char* __num_base::_S_atoms_out ="-+xX0123456789abcdef0123456789ABCDEF";
diff --git a/libstdc++-v3/src/locale_init.cc b/libstdc++-v3/src/locale_init.cc
index 2eb45c85e4c..c1dac9f7a7c 100644
--- a/libstdc++-v3/src/locale_init.cc
+++ b/libstdc++-v3/src/locale_init.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -35,7 +35,7 @@
#include <bits/atomicity.h>
#include <bits/concurrence.h>
-namespace __gnu_cxx
+namespace __gnu_internal
{
// Defined in globals.cc.
extern std::locale c_locale;
@@ -45,72 +45,79 @@ namespace __gnu_cxx
extern char* name_vec[6 + _GLIBCXX_NUM_CATEGORIES];
extern char name_c[6 + _GLIBCXX_NUM_CATEGORIES][2];
- extern std::ctype<char> ctype_c;
- extern std::collate<char> collate_c;
- extern std::numpunct<char> numpunct_c;
- extern std::num_get<char> num_get_c;
- extern std::num_put<char> num_put_c;
- extern std::codecvt<char, char, mbstate_t> codecvt_c;
- extern std::moneypunct<char, false> moneypunct_cf;
- extern std::moneypunct<char, true> moneypunct_ct;
- extern std::money_get<char> money_get_c;
- extern std::money_put<char> money_put_c;
- extern std::__timepunct<char> timepunct_c;
- extern std::time_get<char> time_get_c;
- extern std::time_put<char> time_put_c;
- extern std::messages<char> messages_c;
+ extern std::ctype<char> ctype_c;
+ extern std::collate<char> collate_c;
+ extern std::numpunct<char> numpunct_c;
+ extern std::num_get<char> num_get_c;
+ extern std::num_put<char> num_put_c;
+ extern std::codecvt<char, char, mbstate_t> codecvt_c;
+ extern std::moneypunct<char, false> moneypunct_cf;
+ extern std::moneypunct<char, true> moneypunct_ct;
+ extern std::money_get<char> money_get_c;
+ extern std::money_put<char> money_put_c;
+ extern std::__timepunct<char> timepunct_c;
+ extern std::time_get<char> time_get_c;
+ extern std::time_put<char> time_put_c;
+ extern std::messages<char> messages_c;
#ifdef _GLIBCXX_USE_WCHAR_T
- extern std::ctype<wchar_t> ctype_w;
- extern std::collate<wchar_t> collate_w;
- extern std::numpunct<wchar_t> numpunct_w;
- extern std::num_get<wchar_t> num_get_w;
- extern std::num_put<wchar_t> num_put_w;
- extern std::codecvt<wchar_t, char, mbstate_t> codecvt_w;
- extern std::moneypunct<wchar_t, false> moneypunct_wf;
- extern std::moneypunct<wchar_t, true> moneypunct_wt;
- extern std::money_get<wchar_t> money_get_w;
- extern std::money_put<wchar_t> money_put_w;
- extern std::__timepunct<wchar_t> timepunct_w;
- extern std::time_get<wchar_t> time_get_w;
- extern std::time_put<wchar_t> time_put_w;
- extern std::messages<wchar_t> messages_w;
+ extern std::ctype<wchar_t> ctype_w;
+ extern std::collate<wchar_t> collate_w;
+ extern std::numpunct<wchar_t> numpunct_w;
+ extern std::num_get<wchar_t> num_get_w;
+ extern std::num_put<wchar_t> num_put_w;
+ extern std::codecvt<wchar_t, char, mbstate_t> codecvt_w;
+ extern std::moneypunct<wchar_t, false> moneypunct_wf;
+ extern std::moneypunct<wchar_t, true> moneypunct_wt;
+ extern std::money_get<wchar_t> money_get_w;
+ extern std::money_put<wchar_t> money_put_w;
+ extern std::__timepunct<wchar_t> timepunct_w;
+ extern std::time_get<wchar_t> time_get_w;
+ extern std::time_put<wchar_t> time_put_w;
+ extern std::messages<wchar_t> messages_w;
#endif
// And the caches....
extern std::locale::facet* cache_vec[_GLIBCXX_NUM_FACETS];
- extern std::__numpunct_cache<char> numpunct_cache_c;
- extern std::__moneypunct_cache<char> moneypunct_cache_cf;
- extern std::__moneypunct_cache<char> moneypunct_cache_ct;
- extern std::__timepunct_cache<char> timepunct_cache_c;
+ extern std::__numpunct_cache<char> numpunct_cache_c;
+ extern std::__moneypunct_cache<char, false> moneypunct_cache_cf;
+ extern std::__moneypunct_cache<char, true> moneypunct_cache_ct;
+ extern std::__timepunct_cache<char> timepunct_cache_c;
#ifdef _GLIBCXX_USE_WCHAR_T
- extern std::__numpunct_cache<wchar_t> numpunct_cache_w;
- extern std::__moneypunct_cache<wchar_t> moneypunct_cache_wf;
- extern std::__moneypunct_cache<wchar_t> moneypunct_cache_wt;
- extern std::__timepunct_cache<wchar_t> timepunct_cache_w;
+ extern std::__numpunct_cache<wchar_t> numpunct_cache_w;
+ extern std::__moneypunct_cache<wchar_t, false> moneypunct_cache_wf;
+ extern std::__moneypunct_cache<wchar_t, true> moneypunct_cache_wt;
+ extern std::__timepunct_cache<wchar_t> timepunct_cache_w;
#endif
-} // namespace __gnu_cxx
+
+ // Mutex objects for locale initialization.
+ __glibcxx_mutex_define_initialized(locale_cons_mutex);
+ __glibcxx_mutex_define_initialized(locale_global_mutex);
+} // namespace __gnu_internal
namespace std
{
- using namespace __gnu_cxx;
+ using namespace __gnu_internal;
locale::locale() throw()
{
_S_initialize();
+ __glibcxx_mutex_lock(__gnu_internal::locale_cons_mutex);
_S_global->_M_add_reference();
_M_impl = _S_global;
+ __glibcxx_mutex_unlock(__gnu_internal::locale_cons_mutex);
}
locale
locale::global(const locale& __other)
{
_S_initialize();
+ __glibcxx_mutex_lock(__gnu_internal::locale_global_mutex);
_Impl* __old = _S_global;
__other._M_impl->_M_add_reference();
_S_global = __other._M_impl;
- if (_S_global->_M_check_same_name()
- && (std::strcmp(_S_global->_M_names[0], "*") != 0))
+ if (__other.name() != "*")
setlocale(LC_ALL, __other.name().c_str());
+ __glibcxx_mutex_unlock(__gnu_internal::locale_global_mutex);
// Reference count sanity check: one reference removed for the
// subsition of __other locale, one added by return-by-value. Net
@@ -274,10 +281,11 @@ namespace std
_M_init_facet(new (&num_put_c) num_put<char>(1));
_M_init_facet(new (&collate_c) std::collate<char>(1));
- typedef __moneypunct_cache<char> money_cache_c;
- money_cache_c* __mpcf = new (&moneypunct_cache_cf) money_cache_c(2);
+ typedef __moneypunct_cache<char, false> money_cache_cf;
+ typedef __moneypunct_cache<char, true> money_cache_ct;
+ money_cache_cf* __mpcf = new (&moneypunct_cache_cf) money_cache_cf(2);
_M_init_facet(new (&moneypunct_cf) moneypunct<char, false>(__mpcf, 1));
- money_cache_c* __mpct = new (&moneypunct_cache_ct) money_cache_c(2);
+ money_cache_ct* __mpct = new (&moneypunct_cache_ct) money_cache_ct(2);
_M_init_facet(new (&moneypunct_ct) moneypunct<char, true>(__mpct, 1));
_M_init_facet(new (&money_get_c) money_get<char>(1));
@@ -303,10 +311,11 @@ namespace std
_M_init_facet(new (&num_put_w) num_put<wchar_t>(1));
_M_init_facet(new (&collate_w) std::collate<wchar_t>(1));
- typedef __moneypunct_cache<wchar_t> money_cache_w;
- money_cache_w* __mpwf = new (&moneypunct_cache_wf) money_cache_w(2);
+ typedef __moneypunct_cache<wchar_t, false> money_cache_wf;
+ typedef __moneypunct_cache<wchar_t, true> money_cache_wt;
+ money_cache_wf* __mpwf = new (&moneypunct_cache_wf) money_cache_wf(2);
_M_init_facet(new (&moneypunct_wf) moneypunct<wchar_t, false>(__mpwf, 1));
- money_cache_w* __mpwt = new (&moneypunct_cache_wt) money_cache_w(2);
+ money_cache_wt* __mpwt = new (&moneypunct_cache_wt) money_cache_wt(2);
_M_init_facet(new (&moneypunct_wt) moneypunct<wchar_t, true>(__mpwt, 1));
_M_init_facet(new (&money_get_w) money_get<wchar_t>(1));
diff --git a/libstdc++-v3/src/localename.cc b/libstdc++-v3/src/localename.cc
index c6a7de92be9..4cd1af189fa 100644
--- a/libstdc++-v3/src/localename.cc
+++ b/libstdc++-v3/src/localename.cc
@@ -144,7 +144,7 @@ namespace std
}
}
else
- __throw_runtime_error("locale::locale NULL not valid");
+ __throw_runtime_error(__N("locale::locale NULL not valid"));
}
locale::locale(const locale& __base, const char* __s, category __cat)
diff --git a/libstdc++-v3/src/misc-inst.cc b/libstdc++-v3/src/misc-inst.cc
index 37a4d3d460b..b9bc29882f0 100644
--- a/libstdc++-v3/src/misc-inst.cc
+++ b/libstdc++-v3/src/misc-inst.cc
@@ -1,6 +1,6 @@
// Explicit instantiation file.
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -42,10 +42,6 @@
namespace std
{
-#ifdef _GLIBCXX_INST_ATOMICITY_LOCK
- template volatile int __Atomicity_lock<0>::_S_atomicity_lock;
-#endif
-
// string related to iostreams
template
basic_istream<char>&
@@ -77,20 +73,6 @@ namespace std
namespace __gnu_cxx
{
-#ifdef _GLIBCXX_NEED_GENERIC_MUTEX
-#ifdef __GTHREAD_MUTEX_INIT
- __gthread_mutex_t _Atomic_add_mutex = __GTHREAD_MUTEX_INIT;
-#else
- // generic atomicity.h without static initialization
- __gthread_mutex_t _Atomic_add_mutex;
- __gthread_once_t _Atomic_add_mutex_once = __GTHREAD_ONCE_INIT;
- void __gthread_atomic_add_mutex_once()
- {
- __GTHREAD_MUTEX_INIT_FUNCTION (&_Atomic_add_mutex);
- }
-#endif
-#endif // _GLIBCXX_NEED_GLOBAL_MUTEX
-
template class stdio_sync_filebuf<char>;
#ifdef _GLIBCXX_USE_WCHAR_T
template class stdio_sync_filebuf<wchar_t>;
diff --git a/libstdc++-v3/src/string-inst.cc b/libstdc++-v3/src/string-inst.cc
index ab779b872e8..e01dbcaedbf 100644
--- a/libstdc++-v3/src/string-inst.cc
+++ b/libstdc++-v3/src/string-inst.cc
@@ -63,19 +63,6 @@ namespace std
template
S::basic_string(S::iterator, S::iterator, const allocator<C>&);
- template
- S&
- S::_M_replace(S::iterator, S::iterator, const C*, const C*,
- input_iterator_tag);
-
- template
- S&
- S::_M_replace_safe(S::iterator, S::iterator, S::iterator, S::iterator);
-
- template
- S&
- S::_M_replace_safe(S::iterator, S::iterator, const C*, const C*);
-
template
C*
S::_S_construct(S::iterator, S::iterator,
diff --git a/libstdc++-v3/testsuite/18_support/14026.cc b/libstdc++-v3/testsuite/18_support/14026.cc
new file mode 100644
index 00000000000..103ac64a9d7
--- /dev/null
+++ b/libstdc++-v3/testsuite/18_support/14026.cc
@@ -0,0 +1,34 @@
+// PR 14026
+// 18.6.4 uncaught_exception
+
+#include <cstdlib>
+#include <exception>
+#include <testsuite_hooks.h>
+
+static void
+no_uncaught ()
+{
+ if (std::uncaught_exception ())
+ abort ();
+}
+
+int
+main ()
+{
+ try
+ {
+ throw 1;
+ }
+ catch (...)
+ {
+ try
+ {
+ throw;
+ }
+ catch (...)
+ {
+ no_uncaught ();
+ }
+ }
+ no_uncaught ();
+}
diff --git a/libstdc++-v3/testsuite/18_support/numeric_limits.cc b/libstdc++-v3/testsuite/18_support/numeric_limits.cc
index a7c2494a8b9..93be8372d05 100644
--- a/libstdc++-v3/testsuite/18_support/numeric_limits.cc
+++ b/libstdc++-v3/testsuite/18_support/numeric_limits.cc
@@ -1,8 +1,8 @@
-// { dg-options "-D_GLIBCXX_ASSERT -mieee" { target alpha*-*-* } }
+// { dg-options "-mieee" { target alpha*-*-* } }
// 1999-08-23 bkoz
-// Copyright (C) 1999, 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 1999, 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
diff --git a/libstdc++-v3/testsuite/20_util/allocator/1.cc b/libstdc++-v3/testsuite/20_util/allocator/1.cc
index 4170a9d9a96..d34c8daf9c9 100644
--- a/libstdc++-v3/testsuite/20_util/allocator/1.cc
+++ b/libstdc++-v3/testsuite/20_util/allocator/1.cc
@@ -1,6 +1,6 @@
// 2001-06-14 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -43,12 +43,17 @@ void operator delete(void *v) throw()
return std::free(v);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<gnu>;
+#endif
+
void test01()
{
bool test __attribute__((unused)) = true;
std::allocator<gnu> obj;
- // XXX These should work for various size allocation and
+ // NB: These should work for various size allocation and
// deallocations. Currently, they only work as expected for sizes >
// _MAX_BYTES as defined in stl_alloc.h, which happes to be 128.
gnu* pobj = obj.allocate(256);
@@ -58,32 +63,9 @@ void test01()
VERIFY( check_delete );
}
-// libstdc++/8230
-void test02()
-{
- bool test __attribute__((unused)) = true;
- try
- {
- std::allocator<int> alloc;
- const std::allocator<int>::size_type n = alloc.max_size();
- int* p = alloc.allocate(n + 1);
- p[n] = 2002;
- }
- catch(const std::bad_alloc& e)
- {
- // Allowed.
- test = true;
- }
- catch(...)
- {
- test = false;
- }
- VERIFY( test );
-}
-
int main()
{
test01();
- test02();
return 0;
}
+
diff --git a/libstdc++-v3/testsuite/20_util/allocator/10378.cc b/libstdc++-v3/testsuite/20_util/allocator/10378.cc
index 88193b5a33f..2ac77eaaf16 100644
--- a/libstdc++-v3/testsuite/20_util/allocator/10378.cc
+++ b/libstdc++-v3/testsuite/20_util/allocator/10378.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -39,6 +39,11 @@ void test01()
uniset.push_back(Bob());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<Bob> >;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/20_util/allocator/14176.cc b/libstdc++-v3/testsuite/20_util/allocator/14176.cc
new file mode 100644
index 00000000000..cb8a2f5c4bf
--- /dev/null
+++ b/libstdc++-v3/testsuite/20_util/allocator/14176.cc
@@ -0,0 +1,42 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 20.4.1.1 allocator members
+
+#include <memory>
+#include <testsuite_hooks.h>
+
+// libstdc++/14176
+void test02()
+{
+ unsigned int len = 0;
+ std::allocator<int> a;
+ int* p = a.allocate(len);
+ a.deallocate(p, len);
+}
+
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
+int main()
+{
+ test02();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/20_util/allocator/8230.cc b/libstdc++-v3/testsuite/20_util/allocator/8230.cc
new file mode 100644
index 00000000000..95b6cbee55f
--- /dev/null
+++ b/libstdc++-v3/testsuite/20_util/allocator/8230.cc
@@ -0,0 +1,59 @@
+// 2001-06-14 Benjamin Kosnik <bkoz@redhat.com>
+
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 20.4.1.1 allocator members
+
+#include <memory>
+#include <stdexcept>
+#include <testsuite_hooks.h>
+
+// libstdc++/8230
+void test02()
+{
+ bool test __attribute__((unused)) = true;
+ try
+ {
+ std::allocator<int> alloc;
+ const std::allocator<int>::size_type n = alloc.max_size();
+ int* p = alloc.allocate(n + 1);
+ p[n] = 2002;
+ }
+ catch(const std::bad_alloc& e)
+ {
+ // Allowed.
+ test = true;
+ }
+ catch(...)
+ {
+ test = false;
+ }
+ VERIFY( test );
+}
+
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
+int main()
+{
+ test02();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/20_util/auto_ptr/assign_neg.cc b/libstdc++-v3/testsuite/20_util/auto_ptr/assign_neg.cc
index 15a6ae43986..55291676f3d 100644
--- a/libstdc++-v3/testsuite/20_util/auto_ptr/assign_neg.cc
+++ b/libstdc++-v3/testsuite/20_util/auto_ptr/assign_neg.cc
@@ -1,6 +1,6 @@
// { dg-do compile }
-// Copyright (C) 2002, 2003 Free Software Foundation
+// Copyright (C) 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -46,5 +46,5 @@ main()
test01();
return 0;
}
-// { dg-error "candidates" "" { target *-*-* } 217 }
-// { dg-error "std::auto_ptr" "" { target *-*-* } 347 }
+// { dg-error "candidates" "" { target *-*-* } 223 }
+// { dg-error "std::auto_ptr" "" { target *-*-* } 353 }
diff --git a/libstdc++-v3/testsuite/20_util/binders.cc b/libstdc++-v3/testsuite/20_util/binders.cc
index a12d3b68146..28de474a41d 100644
--- a/libstdc++-v3/testsuite/20_util/binders.cc
+++ b/libstdc++-v3/testsuite/20_util/binders.cc
@@ -1,6 +1,6 @@
// 2001-06-11 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -43,6 +43,10 @@ void test01()
std::bind2nd(std::mem_fun_ref(&Elem::modify), 42));
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<Elem>;
+#endif
int main()
{
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/compare/char/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string/compare/char/1.cc
index 096f4f3957d..75dc5ad7db6 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/compare/char/1.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/compare/char/1.cc
@@ -1,6 +1,6 @@
// 980930 bkoz work with libstdc++v3
-// Copyright (C) 1998, 1999, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1998, 1999, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -41,6 +41,7 @@ test_value(int result, want_value expected);
int
test_value(int result, want_value expected)
{
+ bool test __attribute__((unused)) = true;
bool pass = false;
switch (expected) {
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/compare/wchar_t/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string/compare/wchar_t/1.cc
index 5d6151900b2..2ad25204eba 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/compare/wchar_t/1.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/compare/wchar_t/1.cc
@@ -1,6 +1,6 @@
// 980930 bkoz work with libstdc++v3
-// Copyright (C) 1998, 1999, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1998, 1999, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -41,6 +41,7 @@ test_value(int result, want_value expected);
int
test_value(int result, want_value expected)
{
+ bool test __attribute__((unused)) = true;
bool pass = false;
switch (expected) {
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/cons/char/6.cc b/libstdc++-v3/testsuite/21_strings/basic_string/cons/char/6.cc
new file mode 100644
index 00000000000..a61323acfc7
--- /dev/null
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/cons/char/6.cc
@@ -0,0 +1,56 @@
+// 2004-01-30 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 21.3.1 basic_string constructors.
+
+#include <iterator>
+#include <sstream>
+#include <cstdlib>
+#include <testsuite_hooks.h>
+
+using namespace std;
+
+string data(long len)
+{
+ string ret;
+ for (long i = 0; i < len; ++i)
+ ret.push_back('a' + rand() % 26);
+ return ret;
+}
+
+void test01(int iter)
+{
+ bool test __attribute__((unused)) = true;
+
+ for (long i = 0, j = 1; i < iter; ++i, j *= 3)
+ {
+ istringstream isstr(data(j));
+
+ string str((istreambuf_iterator<char>(isstr)),
+ istreambuf_iterator<char>());
+ VERIFY( str == isstr.str() );
+ }
+}
+
+int main()
+{
+ test01(13);
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/cons/wchar_t/6.cc b/libstdc++-v3/testsuite/21_strings/basic_string/cons/wchar_t/6.cc
new file mode 100644
index 00000000000..fab4aa93a0e
--- /dev/null
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/cons/wchar_t/6.cc
@@ -0,0 +1,56 @@
+// 2004-01-30 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 21.3.1 basic_string constructors.
+
+#include <iterator>
+#include <sstream>
+#include <cstdlib>
+#include <testsuite_hooks.h>
+
+using namespace std;
+
+wstring data(long len)
+{
+ wstring ret;
+ for (long i = 0; i < len; ++i)
+ ret.push_back(L'a' + rand() % 26);
+ return ret;
+}
+
+void test01(int iter)
+{
+ bool test __attribute__((unused)) = true;
+
+ for (long i = 0, j = 1; i < iter; ++i, j *= 3)
+ {
+ wistringstream isstr(data(j));
+
+ wstring str((istreambuf_iterator<wchar_t>(isstr)),
+ istreambuf_iterator<wchar_t>());
+ VERIFY( str == isstr.str() );
+ }
+}
+
+int main()
+{
+ test01(13);
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/4.cc b/libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/4.cc
new file mode 100644
index 00000000000..3edc543b32b
--- /dev/null
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/4.cc
@@ -0,0 +1,50 @@
+// 2004-01-18 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 21.3.4 basic_string element access
+
+#include <string>
+#include <testsuite_hooks.h>
+
+// http://gcc.gnu.org/ml/libstdc++/2004-01/msg00184.html
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+ using namespace std;
+
+ for (int i = 0; i < 2000; ++i)
+ {
+ string str_01;
+
+ for (int j = 0; j < i; ++j)
+ str_01 += 'a';
+
+ str_01.reserve(i + 10);
+
+ const string str_02(str_01);
+ VERIFY( str_02[i] == '\0' );
+ }
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/4.cc b/libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/4.cc
new file mode 100644
index 00000000000..18b72f0a15f
--- /dev/null
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/4.cc
@@ -0,0 +1,50 @@
+// 2004-01-18 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 21.3.4 basic_string element access
+
+#include <string>
+#include <testsuite_hooks.h>
+
+// http://gcc.gnu.org/ml/libstdc++/2004-01/msg00184.html
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+ using namespace std;
+
+ for (int i = 0; i < 2000; ++i)
+ {
+ wstring str_01;
+
+ for (int j = 0; j < i; ++j)
+ str_01 += L'a';
+
+ str_01.reserve(i + 10);
+
+ const wstring str_02(str_01);
+ VERIFY( str_02[i] == L'\0' );
+ }
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/replace/char/6.cc b/libstdc++-v3/testsuite/21_strings/basic_string/replace/char/6.cc
new file mode 100644
index 00000000000..23ab34e0ef7
--- /dev/null
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/replace/char/6.cc
@@ -0,0 +1,55 @@
+// 2004-01-26 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 21.3.5.6 basic_string::replace
+
+#include <string>
+#include <testsuite_hooks.h>
+
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+
+ std::string str01("Valle Del Salto");
+ str01.replace(0, 5, str01.data() + 10, 5);
+ VERIFY( str01 == "Salto Del Salto" );
+
+ std::string str02("Colle di Val d'Elsa");
+ str02.replace(0, 9, str02.data() + 10, 0);
+ VERIFY( str02 == "Val d'Elsa" );
+
+ std::string str03("Novi Ligure");
+ str03.replace(11, 0, str03.data() + 4, 7);
+ VERIFY( str03 == "Novi Ligure Ligure");
+
+ std::string str04("Trebisacce");
+ str04.replace(3, 4, str04.data(), 0);
+ VERIFY( str04 == "Trecce" );
+
+ std::string str05("Altopiano della Sila");
+ str05.replace(1, 18, str05.data() + 19, 1);
+ VERIFY( str05 == "Aaa" );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/replace/wchar_t/6.cc b/libstdc++-v3/testsuite/21_strings/basic_string/replace/wchar_t/6.cc
new file mode 100644
index 00000000000..ca16482a8f2
--- /dev/null
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/replace/wchar_t/6.cc
@@ -0,0 +1,55 @@
+// 2004-01-26 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 21.3.5.6 basic_string::replace
+
+#include <string>
+#include <testsuite_hooks.h>
+
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+
+ std::wstring str01(L"Valle Del Salto");
+ str01.replace(0, 5, str01.data() + 10, 5);
+ VERIFY( str01 == L"Salto Del Salto" );
+
+ std::wstring str02(L"Colle di Val d'Elsa");
+ str02.replace(0, 9, str02.data() + 10, 0);
+ VERIFY( str02 == L"Val d'Elsa" );
+
+ std::wstring str03(L"Novi Ligure");
+ str03.replace(11, 0, str03.data() + 4, 7);
+ VERIFY( str03 == L"Novi Ligure Ligure");
+
+ std::wstring str04(L"Trebisacce");
+ str04.replace(3, 4, str04.data(), 0);
+ VERIFY( str04 == L"Trecce" );
+
+ std::wstring str05(L"Altopiano della Sila");
+ str05.replace(1, 18, str05.data() + 19, 1);
+ VERIFY( str05 == L"Aaa" );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/2.cc b/libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/2.cc
index fd4aee7a016..e414718be8d 100644
--- a/libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/2.cc
+++ b/libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/2.cc
@@ -18,9 +18,8 @@
// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
// USA.
-// Doesn't work due to use of literal ISO8859.1 characters. PR 11439
-// { dg-do compile { xfail *-*-* } } should be run
-// { dg-excess-errors "" }
+// { dg-do run }
+// { dg-options "-finput-charset=ISO8859-1" }
// 22.2.4.1.1 collate members
diff --git a/libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc b/libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc
index 50c697d0f14..7f8c2870e0d 100644
--- a/libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc
+++ b/libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc
@@ -20,9 +20,8 @@
// 22.2.4.1.1 collate members
-// Doesn't work due to use of literal ISO8859.1 characters. PR 11439
-// { dg-do compile { xfail *-*-* } } should be run
-// { dg-excess-errors "" }
+// { dg-do run }
+// { dg-options "-finput-charset=ISO8859-1" }
#include <testsuite_hooks.h>
diff --git a/libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc b/libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc
index 8dc885ac533..0b25d8ebb51 100644
--- a/libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc
+++ b/libstdc++-v3/testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc
@@ -20,9 +20,8 @@
// 22.2.4.1.1 collate members
-// Doesn't work due to use of literal ISO8859.1 characters. PR 11439
-// { dg-do compile { xfail *-*-* } } should be run
-// { dg-excess-errors "" }
+// { dg-do run }
+// { dg-options "-finput-charset=ISO8859-1" }
#include <testsuite_hooks.h>
diff --git a/libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/2.cc b/libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/2.cc
index 28018032227..085d53bdf89 100644
--- a/libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/2.cc
+++ b/libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/2.cc
@@ -20,9 +20,8 @@
// 22.2.4.1.1 collate members
-// Doesn't work due to use of literal ISO8859.1 characters. PR 11439
-// { dg-do compile { xfail *-*-* } } should be run
-// { dg-excess-errors "" }
+// { dg-do run }
+// { dg-options "-finput-charset=ISO8859-1" }
#include <locale>
#include <testsuite_hooks.h>
diff --git a/libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc b/libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc
index 50c697d0f14..7f8c2870e0d 100644
--- a/libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc
+++ b/libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc
@@ -20,9 +20,8 @@
// 22.2.4.1.1 collate members
-// Doesn't work due to use of literal ISO8859.1 characters. PR 11439
-// { dg-do compile { xfail *-*-* } } should be run
-// { dg-excess-errors "" }
+// { dg-do run }
+// { dg-options "-finput-charset=ISO8859-1" }
#include <testsuite_hooks.h>
diff --git a/libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc b/libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc
index 8dc885ac533..0b25d8ebb51 100644
--- a/libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc
+++ b/libstdc++-v3/testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc
@@ -20,9 +20,8 @@
// 22.2.4.1.1 collate members
-// Doesn't work due to use of literal ISO8859.1 characters. PR 11439
-// { dg-do compile { xfail *-*-* } } should be run
-// { dg-excess-errors "" }
+// { dg-do run }
+// { dg-options "-finput-charset=ISO8859-1" }
#include <testsuite_hooks.h>
diff --git a/libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/2.cc b/libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/2.cc
index d21d3996492..9095520db1d 100644
--- a/libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/2.cc
+++ b/libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/2.cc
@@ -20,9 +20,8 @@
// 22.2.4.1.1 collate members
-// Doesn't work due to use of literal ISO8859.1 characters. PR 11439
-// { dg-do compile { xfail *-*-* } } should be run
-// { dg-excess-errors "" }
+// { dg-do run }
+// { dg-options "-finput-charset=ISO8859-1" }
#include <locale>
#include <testsuite_hooks.h>
diff --git a/libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc b/libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc
index fe7ed8dbfac..3468dd8f75a 100644
--- a/libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc
+++ b/libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc
@@ -20,9 +20,8 @@
// 22.2.4.1.1 collate members
-// Doesn't work due to use of literal ISO8859.1 characters. PR 11439
-// { dg-do compile { xfail *-*-* } } should be run
-// { dg-excess-errors "" }
+// { dg-do run }
+// { dg-options "-finput-charset=ISO8859-1" }
#include <testsuite_hooks.h>
diff --git a/libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc b/libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc
index fdbf3035a78..477dbba2277 100644
--- a/libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc
+++ b/libstdc++-v3/testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc
@@ -20,9 +20,8 @@
// 22.2.4.1.1 collate members
-// Doesn't work due to use of literal ISO8859.1 characters. PR 11439
-// { dg-do compile { xfail *-*-* } } should be run
-// { dg-excess-errors "" }
+// { dg-do run }
+// { dg-options "-finput-charset=ISO8859-1" }
#include <testsuite_hooks.h>
diff --git a/libstdc++-v3/testsuite/22_locale/ctype/is/char/2.cc b/libstdc++-v3/testsuite/22_locale/ctype/is/char/2.cc
index 0211607de8f..4192b806f4a 100644
--- a/libstdc++-v3/testsuite/22_locale/ctype/is/char/2.cc
+++ b/libstdc++-v3/testsuite/22_locale/ctype/is/char/2.cc
@@ -1,5 +1,5 @@
// { dg-do run { xfail *-*-![linux]* } }
-// Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -38,7 +38,7 @@ typedef char char_type;
void test02()
{
using namespace std;
- typedef ctype_base::mask mask;
+ typedef ctype_base::mask mask;
typedef vector<mask> vector_type;
bool test __attribute__((unused)) = true;
@@ -97,6 +97,10 @@ void test02()
VERIFY( v_c != v_de );
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::ctype_base::mask>;
+#endif
int main()
{
test02();
diff --git a/libstdc++-v3/testsuite/22_locale/ctype/is/wchar_t/2.cc b/libstdc++-v3/testsuite/22_locale/ctype/is/wchar_t/2.cc
index df028783f85..f5a7d6d59c1 100644
--- a/libstdc++-v3/testsuite/22_locale/ctype/is/wchar_t/2.cc
+++ b/libstdc++-v3/testsuite/22_locale/ctype/is/wchar_t/2.cc
@@ -1,5 +1,5 @@
// { dg-do run { xfail *-*-![linux]* } }
-// Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -97,6 +97,11 @@ void test02()
VERIFY( v_c != v_de );
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::ctype_base::mask>;
+#endif
+
int main()
{
test02();
diff --git a/libstdc++-v3/testsuite/22_locale/ctype/widen/char/1.cc b/libstdc++-v3/testsuite/22_locale/ctype/widen/char/1.cc
index e4ac43ab6cf..4c051c48c48 100644
--- a/libstdc++-v3/testsuite/22_locale/ctype/widen/char/1.cc
+++ b/libstdc++-v3/testsuite/22_locale/ctype/widen/char/1.cc
@@ -1,6 +1,6 @@
// 2002-05-24 bkoz
-// Copyright (C) 2002 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
diff --git a/libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread.cc b/libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread.cc
new file mode 100644
index 00000000000..3a89d371f62
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/locale/cons/12658_thread.cc
@@ -0,0 +1,67 @@
+// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* } }
+// { dg-options "-pthreads" { target *-*-solaris* } }
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.1.1.2 locale constructors and destructors [lib.locale.cons]
+
+#include <locale>
+#include <pthread.h>
+
+const int max_thread_count = 20;
+//const int max_loop_count = 1000000; // orig value
+const int max_loop_count = 100000;
+const int max_locales = 10;
+
+void* thread_main(void*)
+{
+ try
+ {
+ std::locale loc_c = std::locale::classic();
+ std::locale loc[max_locales];
+ for (int j = 0; j < max_locales; ++j)
+ loc[j] = std::locale(j % 2 ? "en_US" : "fr_FR");
+
+ for (int i = 0; i < max_loop_count; ++i)
+ {
+ int k = i % max_locales;
+ loc[k] = std::locale::global(loc[k]);
+
+ if (i % 37 == 0)
+ loc[k] = loc[k].combine<std::ctype<char> >(loc_c);
+ }
+ }
+ catch (...) { }
+ return 0;
+}
+
+int
+main()
+{
+ pthread_t tid[max_thread_count];
+
+ for (int i = 0; i < max_thread_count; i++)
+ pthread_create (&tid[i], NULL, thread_main, 0);
+
+ for (int i = 0; i < max_thread_count; i++)
+ pthread_join (tid[i], NULL);
+
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/locale/global_locale_objects/14071.cc b/libstdc++-v3/testsuite/22_locale/locale/global_locale_objects/14071.cc
new file mode 100644
index 00000000000..7c143f4f577
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/locale/global_locale_objects/14071.cc
@@ -0,0 +1,49 @@
+// 2004-02-09 Petur Runolfsson <peturr02@ru.is>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.1.1.5 locale static members [lib.locale.statics]
+
+#include <locale>
+#include <clocale>
+#include <testsuite_hooks.h>
+
+// libstdc++/14071
+void test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ const locale loc_is = __gnu_test::try_named_locale("is_IS");
+ const locale loc_en = __gnu_test::try_named_locale("en_US");
+
+ const locale loc(loc_is, loc_en, locale::monetary);
+
+ if (loc.name() != "*")
+ {
+ locale::global(loc);
+ VERIFY( loc.name() == setlocale(LC_ALL, NULL) );
+ }
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/1.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/1.cc
index fd2c1e55c93..08e47d85815 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/char/1.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/1.cc
@@ -1,6 +1,6 @@
// 2001-09-12 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,25 +28,14 @@
void test01()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef istreambuf_iterator<char> iterator_type;
bool test __attribute__((unused)) = true;
// basic construction
locale loc_c = locale::classic();
- locale loc_hk = __gnu_test::try_named_locale("en_HK");
- locale loc_fr = __gnu_test::try_named_locale("fr_FR@euro");
locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
VERIFY( loc_c != loc_de );
- VERIFY( loc_hk != loc_fr );
- VERIFY( loc_hk != loc_de );
- VERIFY( loc_de != loc_fr );
-
- // cache the moneypunct facets
- typedef moneypunct<char, true> __money_true;
- typedef moneypunct<char, false> __money_false;
// sanity check the data is correct.
const string empty;
@@ -54,22 +43,12 @@ void test01()
// total EPA budget FY 2002
const string digits1("720000000000");
- // est. cost, national missile "defense", expressed as a loss in USD 2001
- const string digits2("-10000000000000");
-
- // not valid input
- const string digits3("-A");
-
- // input less than frac_digits
- const string digits4("-1");
-
iterator_type end;
istringstream iss;
iss.imbue(loc_de);
// cache the money_get facet
const money_get<char>& mon_get = use_facet<money_get<char> >(iss.getloc());
-
iss.str("7.200.000.000,00 ");
iterator_type is_it01(iss);
string result1;
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/12.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/12.cc
new file mode 100644
index 00000000000..2b4f32a87f8
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/12.cc
@@ -0,0 +1,70 @@
+// 2004-02-05 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+// Same as 3.cc but no thousands-sep in input: they are always optional.
+void test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ typedef istreambuf_iterator<char> iterator_type;
+
+ // basic construction
+ locale loc_c = locale::classic();
+ locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
+ VERIFY( loc_c != loc_de );
+
+ // total EPA budget FY 2002
+ const long double digits1 = 720000000000.0;
+
+ iterator_type end;
+ istringstream iss;
+ iss.imbue(loc_de);
+ // cache the money_get facet
+ const money_get<char>& mon_get = use_facet<money_get<char> >(iss.getloc());
+
+ iss.str("7200000000,00 ");
+ iterator_type is_it01(iss);
+ long double result1;
+ ios_base::iostate err01 = ios_base::goodbit;
+ mon_get.get(is_it01, end, true, iss, err01, result1);
+ VERIFY( result1 == digits1 );
+ VERIFY( err01 == ios_base::eofbit );
+
+ iss.str("7200000000,00 ");
+ iterator_type is_it02(iss);
+ long double result2;
+ ios_base::iostate err02 = ios_base::goodbit;
+ mon_get.get(is_it02, end, false, iss, err02, result2);
+ VERIFY( result2 == digits1 );
+ VERIFY( err02 == ios_base::eofbit );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/13.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/13.cc
new file mode 100644
index 00000000000..d7040ba237b
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/13.cc
@@ -0,0 +1,67 @@
+// 2004-02-05 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+// No thousands-sep allowed after the decimal-point.
+void test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ typedef istreambuf_iterator<char> iterator_type;
+
+ // basic construction
+ locale loc_c = locale::classic();
+ locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
+ VERIFY( loc_c != loc_de );
+
+ iterator_type end01, end02;
+ istringstream iss;
+ iss.imbue(loc_de);
+ // cache the money_get facet
+ const money_get<char>& mon_get = use_facet<money_get<char> >(iss.getloc());
+
+ iss.str("500,1.0 ");
+ iterator_type is_it01(iss);
+ long double result1;
+ ios_base::iostate err01 = ios_base::goodbit;
+ end01 = mon_get.get(is_it01, end01, true, iss, err01, result1);
+ VERIFY( err01 == ios_base::failbit );
+ VERIFY( *end01 == '.' );
+
+ iss.str("500,1.0 ");
+ iterator_type is_it02(iss);
+ long double result2;
+ ios_base::iostate err02 = ios_base::goodbit;
+ end02 = mon_get.get(is_it02, end02, false, iss, err02, result2);
+ VERIFY( err02 == ios_base::failbit );
+ VERIFY( *end02 == '.' );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/14.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/14.cc
new file mode 100644
index 00000000000..2b9b92eddff
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/14.cc
@@ -0,0 +1,62 @@
+// 2004-02-21 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+struct My_money : public std::moneypunct<char, false>
+{
+ std::string do_positive_sign() const { return "+"; }
+ std::string do_negative_sign() const { return ""; }
+};
+
+void test01()
+{
+ using namespace std;
+ typedef istreambuf_iterator<char> InIt;
+
+ bool test __attribute__((unused)) = true;
+
+ locale loc(locale::classic(), new My_money);
+
+ string buffer("69");
+
+ InIt iend;
+ ios_base::iostate err;
+ string val;
+
+ const money_get<char, InIt>& mg =
+ use_facet<money_get<char, InIt> >(loc);
+
+ istringstream fmt(buffer);
+ fmt.imbue(loc);
+ InIt ibeg(fmt);
+ mg.get(ibeg, iend, false, fmt, err, val);
+ VERIFY( val == "-69" );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/15.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/15.cc
new file mode 100644
index 00000000000..a5e766eb45b
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/15.cc
@@ -0,0 +1,68 @@
+// 2004-03-01 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+// The grammar doesn't allow thousands separator at the beginning of a
+// string, neither two consecutive thousands separators.
+void test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ typedef istreambuf_iterator<char> iterator_type;
+
+ // basic construction
+ locale loc_c = locale::classic();
+ locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
+ VERIFY( loc_c != loc_de );
+
+ iterator_type end01, end02;
+ istringstream iss;
+ iss.imbue(loc_de);
+ // cache the money_get facet
+ const money_get<char>& mon_get = use_facet<money_get<char> >(iss.getloc());
+
+ iss.str(".100");
+ iterator_type is_it01(iss);
+ long double result1;
+ ios_base::iostate err01 = ios_base::goodbit;
+ end01 = mon_get.get(is_it01, end01, true, iss, err01, result1);
+ VERIFY( err01 == ios_base::failbit );
+ VERIFY( *end01 == '.' );
+
+ iss.str("30..0");
+ iterator_type is_it02(iss);
+ long double result2;
+ ios_base::iostate err02 = ios_base::goodbit;
+ end02 = mon_get.get(is_it02, end02, false, iss, err02, result2);
+ VERIFY( err02 == ios_base::failbit );
+ VERIFY( *end02 == '.' );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/16.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/16.cc
new file mode 100644
index 00000000000..c4a2011e776
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/16.cc
@@ -0,0 +1,75 @@
+// 2004-03-02 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+// Fail as soon as value digits are not present.
+void test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ typedef istreambuf_iterator<char> iterator_type;
+
+ // basic construction
+ locale loc_c = locale::classic();
+ locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
+ locale loc_hk = __gnu_test::try_named_locale("en_HK");
+ VERIFY( loc_hk != loc_de );
+ VERIFY( loc_c != loc_hk );
+
+ iterator_type end01, end02;
+ istringstream iss01, iss02;
+ iss01.imbue(loc_de);
+ iss02.imbue(loc_hk);
+
+ // cache the money_get facet
+ const money_get<char>& mon_get_01 =
+ use_facet<money_get<char> >(iss01.getloc());
+ const money_get<char>& mon_get_02 =
+ use_facet<money_get<char> >(iss02.getloc());
+
+ iss01.setf(ios_base::showbase);
+ iss01.str("EUR ");
+ iterator_type is_it01(iss01);
+ long double result1;
+ ios_base::iostate err01 = ios_base::goodbit;
+ end01 = mon_get_01.get(is_it01, end01, true, iss01, err01, result1);
+ VERIFY( err01 == ios_base::failbit );
+ VERIFY( *end01 == 'E' );
+
+ iss02.str("(HKD )");
+ iterator_type is_it02(iss02);
+ long double result2;
+ ios_base::iostate err02 = ios_base::goodbit;
+ end02 = mon_get_02.get(is_it02, end02, true, iss02, err02, result2);
+ VERIFY( err02 == ios_base::failbit );
+ VERIFY( *end02 == ')' );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/17.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/17.cc
new file mode 100644
index 00000000000..5216b414aae
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/17.cc
@@ -0,0 +1,71 @@
+// 2004-03-08 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+// 22.2.6.3, p2: "The value _space_ indicates that at least one space
+// is required at that position."
+void test01()
+{
+ using namespace std;
+ typedef istreambuf_iterator<char> iterator_type;
+
+ bool test __attribute__((unused)) = true;
+
+ // basic construction
+ locale loc_c = locale::classic();
+ locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
+ VERIFY( loc_c != loc_de );
+
+ iterator_type end, end02;
+ istringstream iss;
+ iss.imbue(loc_de);
+ // cache the money_get facet
+ const money_get<char>& mon_get =
+ use_facet<money_get<char> >(iss.getloc());
+
+ iss.str("7.200.000.000,00");
+ iterator_type is_it01(iss);
+ string result1;
+ ios_base::iostate err01 = ios_base::goodbit;
+ mon_get.get(is_it01, end, true, iss, err01, result1);
+ VERIFY( err01 == (ios_base::failbit | ios_base::eofbit) );
+
+ // now try with showbase, to get currency symbol in format
+ iss.setf(ios_base::showbase);
+
+ iss.str("7.200.000.000,00EUR ");
+ iterator_type is_it02(iss);
+ string result2;
+ ios_base::iostate err02 = ios_base::goodbit;
+ end02 = mon_get.get(is_it02, end, true, iss, err02, result2);
+ VERIFY( err02 == ios_base::failbit );
+ VERIFY( *end02 == 'E' );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/18.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/18.cc
new file mode 100644
index 00000000000..3da65de43d1
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/18.cc
@@ -0,0 +1,69 @@
+// 2004-03-15 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+// If (str.flags() & str.showbase) is false, the currency symbol is optional,
+// but, if found, must be consumed entirely.
+void test01()
+{
+ using namespace std;
+ typedef istreambuf_iterator<char> iterator_type;
+
+ bool test __attribute__((unused)) = true;
+
+ // basic construction
+ locale loc_c = locale::classic();
+ locale loc_hk = __gnu_test::try_named_locale("en_HK");
+ VERIFY( loc_c != loc_hk );
+
+ iterator_type end, end01, end02;
+ istringstream iss;
+ iss.imbue(loc_hk);
+ // cache the money_get facet
+ const money_get<char>& mon_get =
+ use_facet<money_get<char> >(iss.getloc());
+
+ iss.str("HK7,200,000,000.00");
+ iterator_type is_it01(iss);
+ string result01;
+ ios_base::iostate err01 = ios_base::goodbit;
+ end01 = mon_get.get(is_it01, end, false, iss, err01, result01);
+ VERIFY( err01 == ios_base::failbit );
+ VERIFY( *end01 == '7' );
+
+ iss.str("(HK100,000,000,000.00)");
+ iterator_type is_it02(iss);
+ string result02;
+ ios_base::iostate err02 = ios_base::goodbit;
+ end02 = mon_get.get(is_it02, end, true, iss, err02, result02);
+ VERIFY( err02 == ios_base::failbit );
+ VERIFY( *end02 == '1' );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/19.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/19.cc
new file mode 100644
index 00000000000..5d9dea2be1e
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/19.cc
@@ -0,0 +1,125 @@
+// 2004-03-15 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+struct My_money_io_01 : public std::moneypunct<char, false>
+{
+ std::string do_curr_symbol() const { return "$"; }
+ std::string do_positive_sign() const { return ""; }
+ std::string do_negative_sign() const { return ""; }
+
+ pattern do_neg_format() const
+ {
+ pattern pat = { { value, symbol, none, sign } };
+ return pat;
+ }
+};
+
+struct My_money_io_02 : public std::moneypunct<char, false>
+{
+ std::string do_curr_symbol() const { return "%"; }
+ std::string do_positive_sign() const { return ""; }
+ std::string do_negative_sign() const { return "-"; }
+
+ pattern do_neg_format() const
+ {
+ pattern pat = { { value, symbol, sign, none } };
+ return pat;
+ }
+};
+
+struct My_money_io_03 : public std::moneypunct<char, false>
+{
+ std::string do_curr_symbol() const { return "&"; }
+ std::string do_positive_sign() const { return ""; }
+ std::string do_negative_sign() const { return ""; }
+
+ pattern do_neg_format() const
+ {
+ pattern pat = { { value, space, symbol, sign } };
+ return pat;
+ }
+};
+
+// When both do_positive_sign and do_negative_sign return an empty
+// string, patterns of the forms { value, symbol, none, sign },
+// { value, symbol, sign, none } and { X, Y, symbol, sign } imply
+// that the symbol is not consumed since no other characters are
+// needed to complete the format.
+void test01()
+{
+ using namespace std;
+ typedef istreambuf_iterator<char> iterator_type;
+
+ bool test __attribute__((unused)) = true;
+
+ // basic construction
+ locale loc_01(locale::classic(), new My_money_io_01);
+ locale loc_02(locale::classic(), new My_money_io_02);
+ locale loc_03(locale::classic(), new My_money_io_03);
+
+ iterator_type end, end01, end02, end03;
+ istringstream iss_01, iss_02, iss_03;
+ iss_01.imbue(loc_01);
+ iss_02.imbue(loc_02);
+ iss_03.imbue(loc_03);
+ // cache the money_get facet
+ const money_get<char>& mon_get_01 =
+ use_facet<money_get<char> >(iss_01.getloc());
+ const money_get<char>& mon_get_02 =
+ use_facet<money_get<char> >(iss_02.getloc());
+ const money_get<char>& mon_get_03 =
+ use_facet<money_get<char> >(iss_03.getloc());
+
+ iss_01.str("10$");
+ iterator_type is_it01(iss_01);
+ string result01;
+ ios_base::iostate err01 = ios_base::goodbit;
+ end01 = mon_get_01.get(is_it01, end, false, iss_01, err01, result01);
+ VERIFY( err01 == ios_base::goodbit );
+ VERIFY( *end01 == '$' );
+
+ iss_02.str("50%");
+ iterator_type is_it02(iss_02);
+ string result02;
+ ios_base::iostate err02 = ios_base::goodbit;
+ end02 = mon_get_02.get(is_it02, end, false, iss_02, err02, result02);
+ VERIFY( err02 == ios_base::goodbit );
+ VERIFY( *end02 == '%' );
+
+ iss_03.str("7 &");
+ iterator_type is_it03(iss_03);
+ string result03;
+ ios_base::iostate err03 = ios_base::goodbit;
+ end03 = mon_get_03.get(is_it03, end, false, iss_03, err03, result03);
+ VERIFY( err03 == ios_base::goodbit );
+ VERIFY( *end03 == '&' );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/2.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/2.cc
index 422a53340eb..e6ae8d926bb 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/char/2.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/2.cc
@@ -1,6 +1,6 @@
// 2001-09-12 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,8 +28,6 @@
void test02()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef istreambuf_iterator<char> iterator_type;
bool test __attribute__((unused)) = true;
@@ -37,19 +35,7 @@ void test02()
// basic construction
locale loc_c = locale::classic();
locale loc_hk = __gnu_test::try_named_locale("en_HK");
- locale loc_fr = __gnu_test::try_named_locale("fr_FR@euro");
- locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
- VERIFY( loc_c != loc_de );
- VERIFY( loc_hk != loc_fr );
- VERIFY( loc_hk != loc_de );
- VERIFY( loc_de != loc_fr );
-
- // cache the moneypunct facets
- typedef moneypunct<char, true> __money_true;
- typedef moneypunct<char, false> __money_false;
-
- // sanity check the data is correct.
- const string empty;
+ VERIFY( loc_c != loc_hk );
// total EPA budget FY 2002
const string digits1("720000000000");
@@ -57,9 +43,6 @@ void test02()
// est. cost, national missile "defense", expressed as a loss in USD 2001
const string digits2("-10000000000000");
- // not valid input
- const string digits3("-A");
-
// input less than frac_digits
const string digits4("-1");
@@ -86,7 +69,7 @@ void test02()
ios_base::iostate err10 = ios_base::goodbit;
mon_get.get(is_it10, end, true, iss, err10, result10);
VERIFY( result10 == digits2 );
- VERIFY( err10 == ios_base::goodbit );
+ VERIFY( err10 == ios_base::eofbit );
iss.str("(HKD .01)");
iterator_type is_it11(iss);
@@ -94,7 +77,7 @@ void test02()
ios_base::iostate err11 = ios_base::goodbit;
mon_get.get(is_it11, end, true, iss, err11, result11);
VERIFY( result11 == digits4 );
- VERIFY( err11 == ios_base::goodbit );
+ VERIFY( err11 == ios_base::eofbit );
// for the "en_HK" locale the parsing of the very same input streams must
// be successful without showbase too, since the symbol field appears in
@@ -116,7 +99,7 @@ void test02()
ios_base::iostate err13 = ios_base::goodbit;
mon_get.get(is_it13, end, true, iss, err13, result13);
VERIFY( result13 == digits2 );
- VERIFY( err13 == ios_base::goodbit );
+ VERIFY( err13 == ios_base::eofbit );
iss.str("(HKD .01)");
iterator_type is_it14(iss);
@@ -124,7 +107,7 @@ void test02()
ios_base::iostate err14 = ios_base::goodbit;
mon_get.get(is_it14, end, true, iss, err14, result14);
VERIFY( result14 == digits4 );
- VERIFY( err14 == ios_base::goodbit );
+ VERIFY( err14 == ios_base::eofbit );
}
int main()
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/3.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/3.cc
index 5904ee112d8..6a07ab25166 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/char/3.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/3.cc
@@ -1,6 +1,6 @@
// 2001-09-12 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,28 +28,14 @@
void test03()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef istreambuf_iterator<char> iterator_type;
bool test __attribute__((unused)) = true;
// basic construction
locale loc_c = locale::classic();
- locale loc_hk = __gnu_test::try_named_locale("en_HK");
- locale loc_fr = __gnu_test::try_named_locale("fr_FR@euro");
locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
VERIFY( loc_c != loc_de );
- VERIFY( loc_hk != loc_fr );
- VERIFY( loc_hk != loc_de );
- VERIFY( loc_de != loc_fr );
-
- // cache the moneypunct facets
- typedef moneypunct<char, true> __money_true;
- typedef moneypunct<char, false> __money_false;
-
- // sanity check the data is correct.
- const string empty;
// total EPA budget FY 2002
const long double digits1 = 720000000000.0;
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/4.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/4.cc
index a80060aebe0..9556dfbf003 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/char/4.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/4.cc
@@ -1,6 +1,6 @@
// 2001-09-12 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,8 +28,6 @@
void test04()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef istreambuf_iterator<char> iterator_type;
bool test __attribute__((unused)) = true;
@@ -37,19 +35,7 @@ void test04()
// basic construction
locale loc_c = locale::classic();
locale loc_hk = __gnu_test::try_named_locale("en_HK");
- locale loc_fr = __gnu_test::try_named_locale("fr_FR@euro");
- locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
- VERIFY( loc_c != loc_de );
- VERIFY( loc_hk != loc_fr );
- VERIFY( loc_hk != loc_de );
- VERIFY( loc_de != loc_fr );
-
- // cache the moneypunct facets
- typedef moneypunct<char, true> __money_true;
- typedef moneypunct<char, false> __money_false;
-
- // sanity check the data is correct.
- const string empty;
+ VERIFY( loc_c != loc_hk );
// input less than frac_digits
const long double digits4 = -1.0;
@@ -69,7 +55,7 @@ void test04()
ios_base::iostate err03 = ios_base::goodbit;
mon_get.get(is_it03, end, true, iss, err03, result3);
VERIFY( result3 == digits4 );
- VERIFY( err03 == ios_base::goodbit );
+ VERIFY( err03 == ios_base::eofbit );
}
int main()
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/6.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/6.cc
index 8c03e8245ff..434edfe12b7 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/char/6.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/6.cc
@@ -1,6 +1,6 @@
// 2001-09-12 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -35,12 +35,6 @@ struct My_money_io : public std::moneypunct<char,false>
int do_frac_digits() const { return 2; }
- pattern do_pos_format() const
- {
- pattern pat = { { symbol, none, sign, value } };
- return pat;
- }
-
pattern do_neg_format() const
{
pattern pat = { { symbol, none, sign, value } };
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/7.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/7.cc
index c21a9dfad74..d3d5bfe25da 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/char/7.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/7.cc
@@ -1,6 +1,6 @@
// 2001-09-12 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -44,22 +44,25 @@ void test07()
ios_base::iostate err;
- const money_get<char,InIt>& mg = use_facet<money_get<char, InIt> >(loc_c);
+ const money_get<char, InIt>& mg = use_facet<money_get<char, InIt> >(loc_c);
istringstream fmt1(buffer1);
+ fmt1.imbue(loc_c);
InIt ibeg1(fmt1);
- mg.get(ibeg1,iend1,false,fmt1,err,val);
+ mg.get(ibeg1, iend1, false, fmt1, err, val);
VERIFY( val == buffer1 );
istringstream fmt2(buffer2);
+ fmt2.imbue(loc_c);
InIt ibeg2(fmt2);
- mg.get(ibeg2,iend2,false,fmt2,err,val);
+ mg.get(ibeg2, iend2, false, fmt2, err, val);
VERIFY( val == buffer2 );
val = buffer3;
istringstream fmt3(buffer3);
+ fmt3.imbue(loc_c);
InIt ibeg3(fmt3);
- mg.get(ibeg3,iend3,false,fmt3,err,val);
+ mg.get(ibeg3, iend3, false, fmt3, err, val);
VERIFY( val == buffer3 );
}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/8.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/8.cc
index 01a93381557..f88b521c002 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/char/8.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/8.cc
@@ -34,7 +34,7 @@ struct My_money_io_a : public std::moneypunct<char,false>
int do_frac_digits() const { return 2; }
- pattern do_pos_format() const
+ pattern do_neg_format() const
{
pattern pat = { { sign, value, space, symbol } };
return pat;
@@ -51,7 +51,7 @@ struct My_money_io_b : public std::moneypunct<char,false>
int do_frac_digits() const { return 2; }
- pattern do_pos_format() const
+ pattern do_neg_format() const
{
pattern pat = { { sign, value, symbol, none } };
return pat;
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/char/9.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/char/9.cc
index cb56e1a362b..a7b4aeeddeb 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/char/9.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/char/9.cc
@@ -1,6 +1,6 @@
// 2003-05-27 Brendan Kehoe <brendan@zen.org>
-// Copyright (C) 2003 Free Software Foundation
+// Copyright (C) 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -18,7 +18,7 @@
// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
// USA.
-// $22.2.6.3.3/8
+// $22.2.6.3/3
// The number of digits required after the decimal point (if any) is exactly
// the value returned by frac_digits().
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/1.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/1.cc
index a8950723455..f382e484faa 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/1.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/1.cc
@@ -1,6 +1,6 @@
// 2001-09-12 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,25 +28,14 @@
void test01()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef istreambuf_iterator<wchar_t> iterator_type;
bool test __attribute__((unused)) = true;
// basic construction
locale loc_c = locale::classic();
- locale loc_hk = __gnu_test::try_named_locale("en_HK");
- locale loc_fr = __gnu_test::try_named_locale("fr_FR@euro");
locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
VERIFY( loc_c != loc_de );
- VERIFY( loc_hk != loc_fr );
- VERIFY( loc_hk != loc_de );
- VERIFY( loc_de != loc_fr );
-
- // cache the moneypunct facets
- typedef moneypunct<wchar_t, true> __money_true;
- typedef moneypunct<wchar_t, false> __money_false;
// sanity check the data is correct.
const wstring empty;
@@ -54,22 +43,12 @@ void test01()
// total EPA budget FY 2002
const wstring digits1(L"720000000000");
- // est. cost, national missile "defense", expressed as a loss in USD 2001
- const wstring digits2(L"-10000000000000");
-
- // not valid input
- const wstring digits3(L"-A");
-
- // input less than frac_digits
- const wstring digits4(L"-1");
-
iterator_type end;
wistringstream iss;
iss.imbue(loc_de);
// cache the money_get facet
const money_get<wchar_t>& mon_get = use_facet<money_get<wchar_t> >(iss.getloc());
-
iss.str(L"7.200.000.000,00 ");
iterator_type is_it01(iss);
wstring result1;
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/12.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/12.cc
new file mode 100644
index 00000000000..95ecbefb880
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/12.cc
@@ -0,0 +1,70 @@
+// 2004-02-05 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+// Same as 3.cc but no thousands-sep in input: they are always optional.
+void test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ typedef istreambuf_iterator<wchar_t> iterator_type;
+
+ // basic construction
+ locale loc_c = locale::classic();
+ locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
+ VERIFY( loc_c != loc_de );
+
+ // total EPA budget FY 2002
+ const long double digits1 = 720000000000.0;
+
+ iterator_type end;
+ wistringstream iss;
+ iss.imbue(loc_de);
+ // cache the money_get facet
+ const money_get<wchar_t>& mon_get = use_facet<money_get<wchar_t> >(iss.getloc());
+
+ iss.str(L"7200000000,00 ");
+ iterator_type is_it01(iss);
+ long double result1;
+ ios_base::iostate err01 = ios_base::goodbit;
+ mon_get.get(is_it01, end, true, iss, err01, result1);
+ VERIFY( result1 == digits1 );
+ VERIFY( err01 == ios_base::eofbit );
+
+ iss.str(L"7200000000,00 ");
+ iterator_type is_it02(iss);
+ long double result2;
+ ios_base::iostate err02 = ios_base::goodbit;
+ mon_get.get(is_it02, end, false, iss, err02, result2);
+ VERIFY( result2 == digits1 );
+ VERIFY( err02 == ios_base::eofbit );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/13.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/13.cc
new file mode 100644
index 00000000000..564d5fd7798
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/13.cc
@@ -0,0 +1,67 @@
+// 2004-02-05 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+// No thousands-sep allowed after the decimal-point.
+void test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ typedef istreambuf_iterator<wchar_t> iterator_type;
+
+ // basic construction
+ locale loc_c = locale::classic();
+ locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
+ VERIFY( loc_c != loc_de );
+
+ iterator_type end01, end02;
+ wistringstream iss;
+ iss.imbue(loc_de);
+ // cache the money_get facet
+ const money_get<wchar_t>& mon_get = use_facet<money_get<wchar_t> >(iss.getloc());
+
+ iss.str(L"500,1.0 ");
+ iterator_type is_it01(iss);
+ long double result1;
+ ios_base::iostate err01 = ios_base::goodbit;
+ end01 = mon_get.get(is_it01, end01, true, iss, err01, result1);
+ VERIFY( err01 == ios_base::failbit );
+ VERIFY( *end01 == '.' );
+
+ iss.str(L"500,1.0 ");
+ iterator_type is_it02(iss);
+ long double result2;
+ ios_base::iostate err02 = ios_base::goodbit;
+ end02 = mon_get.get(is_it02, end02, false, iss, err02, result2);
+ VERIFY( err02 == ios_base::failbit );
+ VERIFY( *end02 == '.' );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/14.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/14.cc
new file mode 100644
index 00000000000..e440d63c61d
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/14.cc
@@ -0,0 +1,62 @@
+// 2004-02-21 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+struct My_money : public std::moneypunct<wchar_t, false>
+{
+ std::wstring do_positive_sign() const { return L"+"; }
+ std::wstring do_negative_sign() const { return L""; }
+};
+
+void test01()
+{
+ using namespace std;
+ typedef istreambuf_iterator<wchar_t> InIt;
+
+ bool test __attribute__((unused)) = true;
+
+ locale loc(locale::classic(), new My_money);
+
+ wstring buffer(L"69");
+
+ InIt iend;
+ ios_base::iostate err;
+ wstring val;
+
+ const money_get<wchar_t, InIt>& mg =
+ use_facet<money_get<wchar_t, InIt> >(loc);
+
+ wistringstream fmt(buffer);
+ fmt.imbue(loc);
+ InIt ibeg(fmt);
+ mg.get(ibeg, iend, false, fmt, err, val);
+ VERIFY( val == L"-69" );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/15.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/15.cc
new file mode 100644
index 00000000000..52a4589d1cb
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/15.cc
@@ -0,0 +1,69 @@
+// 2004-03-01 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+// The grammar doesn't allow thousands separator at the beginning of a
+// string, neither two consecutive thousands separators.
+void test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ typedef istreambuf_iterator<wchar_t> iterator_type;
+
+ // basic construction
+ locale loc_c = locale::classic();
+ locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
+ VERIFY( loc_c != loc_de );
+
+ iterator_type end01, end02;
+ wistringstream iss;
+ iss.imbue(loc_de);
+ // cache the money_get facet
+ const money_get<wchar_t>& mon_get =
+ use_facet<money_get<wchar_t> >(iss.getloc());
+
+ iss.str(L".100");
+ iterator_type is_it01(iss);
+ long double result1;
+ ios_base::iostate err01 = ios_base::goodbit;
+ end01 = mon_get.get(is_it01, end01, true, iss, err01, result1);
+ VERIFY( err01 == ios_base::failbit );
+ VERIFY( *end01 == L'.' );
+
+ iss.str(L"30..0");
+ iterator_type is_it02(iss);
+ long double result2;
+ ios_base::iostate err02 = ios_base::goodbit;
+ end02 = mon_get.get(is_it02, end02, false, iss, err02, result2);
+ VERIFY( err02 == ios_base::failbit );
+ VERIFY( *end02 == L'.' );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/16.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/16.cc
new file mode 100644
index 00000000000..c7d7bd2299e
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/16.cc
@@ -0,0 +1,75 @@
+// 2004-03-02 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+// Fail as soon as value digits are not present.
+void test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ typedef istreambuf_iterator<wchar_t> iterator_type;
+
+ // basic construction
+ locale loc_c = locale::classic();
+ locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
+ locale loc_hk = __gnu_test::try_named_locale("en_HK");
+ VERIFY( loc_hk != loc_de );
+ VERIFY( loc_c != loc_hk );
+
+ iterator_type end01, end02;
+ wistringstream iss01, iss02;
+ iss01.imbue(loc_de);
+ iss02.imbue(loc_hk);
+
+ // cache the money_get facet
+ const money_get<wchar_t>& mon_get_01 =
+ use_facet<money_get<wchar_t> >(iss01.getloc());
+ const money_get<wchar_t>& mon_get_02 =
+ use_facet<money_get<wchar_t> >(iss02.getloc());
+
+ iss01.setf(ios_base::showbase);
+ iss01.str(L"EUR ");
+ iterator_type is_it01(iss01);
+ long double result1;
+ ios_base::iostate err01 = ios_base::goodbit;
+ end01 = mon_get_01.get(is_it01, end01, true, iss01, err01, result1);
+ VERIFY( err01 == ios_base::failbit );
+ VERIFY( *end01 == L'E' );
+
+ iss02.str(L"(HKD )");
+ iterator_type is_it02(iss02);
+ long double result2;
+ ios_base::iostate err02 = ios_base::goodbit;
+ end02 = mon_get_02.get(is_it02, end02, true, iss02, err02, result2);
+ VERIFY( err02 == ios_base::failbit );
+ VERIFY( *end02 == L')' );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/17.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/17.cc
new file mode 100644
index 00000000000..e8affd81bb8
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/17.cc
@@ -0,0 +1,71 @@
+// 2004-03-08 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+// 22.2.6.3, p2: "The value _space_ indicates that at least one space
+// is required at that position."
+void test01()
+{
+ using namespace std;
+ typedef istreambuf_iterator<wchar_t> iterator_type;
+
+ bool test __attribute__((unused)) = true;
+
+ // basic construction
+ locale loc_c = locale::classic();
+ locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
+ VERIFY( loc_c != loc_de );
+
+ iterator_type end, end02;
+ wistringstream iss;
+ iss.imbue(loc_de);
+ // cache the money_get facet
+ const money_get<wchar_t>& mon_get =
+ use_facet<money_get<wchar_t> >(iss.getloc());
+
+ iss.str(L"7.200.000.000,00");
+ iterator_type is_it01(iss);
+ wstring result1;
+ ios_base::iostate err01 = ios_base::goodbit;
+ mon_get.get(is_it01, end, true, iss, err01, result1);
+ VERIFY( err01 == (ios_base::failbit | ios_base::eofbit) );
+
+ // now try with showbase, to get currency symbol in format
+ iss.setf(ios_base::showbase);
+
+ iss.str(L"7.200.000.000,00EUR ");
+ iterator_type is_it02(iss);
+ wstring result2;
+ ios_base::iostate err02 = ios_base::goodbit;
+ end02 = mon_get.get(is_it02, end, true, iss, err02, result2);
+ VERIFY( err02 == ios_base::failbit );
+ VERIFY( *end02 == L'E' );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/18.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/18.cc
new file mode 100644
index 00000000000..285de236276
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/18.cc
@@ -0,0 +1,69 @@
+// 2004-03-15 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+// If (str.flags() & str.showbase) is false, the currency symbol is optional,
+// but, if found, must be consumed entirely.
+void test01()
+{
+ using namespace std;
+ typedef istreambuf_iterator<wchar_t> iterator_type;
+
+ bool test __attribute__((unused)) = true;
+
+ // basic construction
+ locale loc_c = locale::classic();
+ locale loc_hk = __gnu_test::try_named_locale("en_HK");
+ VERIFY( loc_c != loc_hk );
+
+ iterator_type end, end01, end02;
+ wistringstream iss;
+ iss.imbue(loc_hk);
+ // cache the money_get facet
+ const money_get<wchar_t>& mon_get =
+ use_facet<money_get<wchar_t> >(iss.getloc());
+
+ iss.str(L"HK7,200,000,000.00");
+ iterator_type is_it01(iss);
+ wstring result01;
+ ios_base::iostate err01 = ios_base::goodbit;
+ end01 = mon_get.get(is_it01, end, false, iss, err01, result01);
+ VERIFY( err01 == ios_base::failbit );
+ VERIFY( *end01 == L'7' );
+
+ iss.str(L"(HK100,000,000,000.00)");
+ iterator_type is_it02(iss);
+ wstring result02;
+ ios_base::iostate err02 = ios_base::goodbit;
+ end02 = mon_get.get(is_it02, end, true, iss, err02, result02);
+ VERIFY( err02 == ios_base::failbit );
+ VERIFY( *end02 == L'1' );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/19.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/19.cc
new file mode 100644
index 00000000000..93c63e6ea29
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/19.cc
@@ -0,0 +1,125 @@
+// 2004-03-15 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.6.1.1 money_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+struct My_money_io_01 : public std::moneypunct<wchar_t, false>
+{
+ std::wstring do_curr_symbol() const { return L"$"; }
+ std::wstring do_positive_sign() const { return L""; }
+ std::wstring do_negative_sign() const { return L""; }
+
+ pattern do_neg_format() const
+ {
+ pattern pat = { { value, symbol, none, sign } };
+ return pat;
+ }
+};
+
+struct My_money_io_02 : public std::moneypunct<wchar_t, false>
+{
+ std::wstring do_curr_symbol() const { return L"%"; }
+ std::wstring do_positive_sign() const { return L""; }
+ std::wstring do_negative_sign() const { return L"-"; }
+
+ pattern do_neg_format() const
+ {
+ pattern pat = { { value, symbol, sign, none } };
+ return pat;
+ }
+};
+
+struct My_money_io_03 : public std::moneypunct<wchar_t, false>
+{
+ std::wstring do_curr_symbol() const { return L"&"; }
+ std::wstring do_positive_sign() const { return L""; }
+ std::wstring do_negative_sign() const { return L""; }
+
+ pattern do_neg_format() const
+ {
+ pattern pat = { { value, space, symbol, sign } };
+ return pat;
+ }
+};
+
+// When both do_positive_sign and do_negative_sign return an empty
+// string, patterns of the forms { value, symbol, none, sign },
+// { value, symbol, sign, none } and { X, Y, symbol, sign } imply
+// that the symbol is not consumed since no other characters are
+// needed to complete the format.
+void test01()
+{
+ using namespace std;
+ typedef istreambuf_iterator<wchar_t> iterator_type;
+
+ bool test __attribute__((unused)) = true;
+
+ // basic construction
+ locale loc_01(locale::classic(), new My_money_io_01);
+ locale loc_02(locale::classic(), new My_money_io_02);
+ locale loc_03(locale::classic(), new My_money_io_03);
+
+ iterator_type end, end01, end02, end03;
+ wistringstream iss_01, iss_02, iss_03;
+ iss_01.imbue(loc_01);
+ iss_02.imbue(loc_02);
+ iss_03.imbue(loc_03);
+ // cache the money_get facet
+ const money_get<wchar_t>& mon_get_01 =
+ use_facet<money_get<wchar_t> >(iss_01.getloc());
+ const money_get<wchar_t>& mon_get_02 =
+ use_facet<money_get<wchar_t> >(iss_02.getloc());
+ const money_get<wchar_t>& mon_get_03 =
+ use_facet<money_get<wchar_t> >(iss_03.getloc());
+
+ iss_01.str(L"10$");
+ iterator_type is_it01(iss_01);
+ wstring result01;
+ ios_base::iostate err01 = ios_base::goodbit;
+ end01 = mon_get_01.get(is_it01, end, false, iss_01, err01, result01);
+ VERIFY( err01 == ios_base::goodbit );
+ VERIFY( *end01 == L'$' );
+
+ iss_02.str(L"50%");
+ iterator_type is_it02(iss_02);
+ wstring result02;
+ ios_base::iostate err02 = ios_base::goodbit;
+ end02 = mon_get_02.get(is_it02, end, false, iss_02, err02, result02);
+ VERIFY( err02 == ios_base::goodbit );
+ VERIFY( *end02 == L'%' );
+
+ iss_03.str(L"7 &");
+ iterator_type is_it03(iss_03);
+ wstring result03;
+ ios_base::iostate err03 = ios_base::goodbit;
+ end03 = mon_get_03.get(is_it03, end, false, iss_03, err03, result03);
+ VERIFY( err03 == ios_base::goodbit );
+ VERIFY( *end03 == L'&' );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/2.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/2.cc
index f59cef7a929..bf7edc11b63 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/2.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/2.cc
@@ -1,6 +1,6 @@
// 2001-09-12 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,8 +28,6 @@
void test02()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef istreambuf_iterator<wchar_t> iterator_type;
bool test __attribute__((unused)) = true;
@@ -37,19 +35,7 @@ void test02()
// basic construction
locale loc_c = locale::classic();
locale loc_hk = __gnu_test::try_named_locale("en_HK");
- locale loc_fr = __gnu_test::try_named_locale("fr_FR@euro");
- locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
- VERIFY( loc_c != loc_de );
- VERIFY( loc_hk != loc_fr );
- VERIFY( loc_hk != loc_de );
- VERIFY( loc_de != loc_fr );
-
- // cache the moneypunct facets
- typedef moneypunct<wchar_t, true> __money_true;
- typedef moneypunct<wchar_t, false> __money_false;
-
- // sanity check the data is correct.
- const wstring empty;
+ VERIFY( loc_c != loc_hk );
// total EPA budget FY 2002
const wstring digits1(L"720000000000");
@@ -57,9 +43,6 @@ void test02()
// est. cost, national missile "defense", expressed as a loss in USD 2001
const wstring digits2(L"-10000000000000");
- // not valid input
- const wstring digits3(L"-A");
-
// input less than frac_digits
const wstring digits4(L"-1");
@@ -86,7 +69,7 @@ void test02()
ios_base::iostate err10 = ios_base::goodbit;
mon_get.get(is_it10, end, true, iss, err10, result10);
VERIFY( result10 == digits2 );
- VERIFY( err10 == ios_base::goodbit );
+ VERIFY( err10 == ios_base::eofbit );
iss.str(L"(HKD .01)");
iterator_type is_it11(iss);
@@ -94,7 +77,7 @@ void test02()
ios_base::iostate err11 = ios_base::goodbit;
mon_get.get(is_it11, end, true, iss, err11, result11);
VERIFY( result11 == digits4 );
- VERIFY( err11 == ios_base::goodbit );
+ VERIFY( err11 == ios_base::eofbit );
// for the "en_HK" locale the parsing of the very same input streams must
// be successful without showbase too, since the symbol field appears in
@@ -116,7 +99,7 @@ void test02()
ios_base::iostate err13 = ios_base::goodbit;
mon_get.get(is_it13, end, true, iss, err13, result13);
VERIFY( result13 == digits2 );
- VERIFY( err13 == ios_base::goodbit );
+ VERIFY( err13 == ios_base::eofbit );
iss.str(L"(HKD .01)");
iterator_type is_it14(iss);
@@ -124,7 +107,7 @@ void test02()
ios_base::iostate err14 = ios_base::goodbit;
mon_get.get(is_it14, end, true, iss, err14, result14);
VERIFY( result14 == digits4 );
- VERIFY( err14 == ios_base::goodbit );
+ VERIFY( err14 == ios_base::eofbit );
}
int main()
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/3.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/3.cc
index d0c8b06b6f3..2b1dc33e2be 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/3.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/3.cc
@@ -1,6 +1,6 @@
// 2001-09-12 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,28 +28,14 @@
void test03()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef istreambuf_iterator<wchar_t> iterator_type;
bool test __attribute__((unused)) = true;
// basic construction
locale loc_c = locale::classic();
- locale loc_hk = __gnu_test::try_named_locale("en_HK");
- locale loc_fr = __gnu_test::try_named_locale("fr_FR@euro");
locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
VERIFY( loc_c != loc_de );
- VERIFY( loc_hk != loc_fr );
- VERIFY( loc_hk != loc_de );
- VERIFY( loc_de != loc_fr );
-
- // cache the moneypunct facets
- typedef moneypunct<wchar_t, true> __money_true;
- typedef moneypunct<wchar_t, false> __money_false;
-
- // sanity check the data is correct.
- const wstring empty;
// total EPA budget FY 2002
const long double digits1 = 720000000000.0;
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/4.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/4.cc
index 8861ce46cf5..4f541ed882a 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/4.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/4.cc
@@ -1,6 +1,6 @@
// 2001-09-12 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,8 +28,6 @@
void test04()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef istreambuf_iterator<wchar_t> iterator_type;
bool test __attribute__((unused)) = true;
@@ -37,19 +35,7 @@ void test04()
// basic construction
locale loc_c = locale::classic();
locale loc_hk = __gnu_test::try_named_locale("en_HK");
- locale loc_fr = __gnu_test::try_named_locale("fr_FR@euro");
- locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
- VERIFY( loc_c != loc_de );
- VERIFY( loc_hk != loc_fr );
- VERIFY( loc_hk != loc_de );
- VERIFY( loc_de != loc_fr );
-
- // cache the moneypunct facets
- typedef moneypunct<wchar_t, true> __money_true;
- typedef moneypunct<wchar_t, false> __money_false;
-
- // sanity check the data is correct.
- const wstring empty;
+ VERIFY( loc_c != loc_hk );
// input less than frac_digits
const long double digits4 = -1.0;
@@ -69,7 +55,7 @@ void test04()
ios_base::iostate err03 = ios_base::goodbit;
mon_get.get(is_it03, end, true, iss, err03, result3);
VERIFY( result3 == digits4 );
- VERIFY( err03 == ios_base::goodbit );
+ VERIFY( err03 == ios_base::eofbit );
}
int main()
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/6.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/6.cc
index 5d40fab761f..cebba6e3b80 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/6.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/6.cc
@@ -1,6 +1,6 @@
// 2001-09-12 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -35,12 +35,6 @@ struct My_money_io : public std::moneypunct<wchar_t,false>
int do_frac_digits() const { return 2; }
- pattern do_pos_format() const
- {
- pattern pat = { { symbol, none, sign, value } };
- return pat;
- }
-
pattern do_neg_format() const
{
pattern pat = { { symbol, none, sign, value } };
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/7.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/7.cc
index c9cf0662e25..f7f3ae1d992 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/7.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/7.cc
@@ -1,6 +1,6 @@
// 2001-09-12 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -44,22 +44,25 @@ void test07()
ios_base::iostate err;
- const money_get<wchar_t,InIt>& mg = use_facet<money_get<wchar_t, InIt> >(loc_c);
+ const money_get<wchar_t, InIt>& mg = use_facet<money_get<wchar_t, InIt> >(loc_c);
wistringstream fmt1(buffer1);
+ fmt1.imbue(loc_c);
InIt ibeg1(fmt1);
- mg.get(ibeg1,iend1,false,fmt1,err,val);
+ mg.get(ibeg1, iend1, false, fmt1, err, val);
VERIFY( val == buffer1 );
wistringstream fmt2(buffer2);
+ fmt2.imbue(loc_c);
InIt ibeg2(fmt2);
- mg.get(ibeg2,iend2,false,fmt2,err,val);
+ mg.get(ibeg2, iend2, false, fmt2, err, val);
VERIFY( val == buffer2 );
val = buffer3;
wistringstream fmt3(buffer3);
+ fmt3.imbue(loc_c);
InIt ibeg3(fmt3);
- mg.get(ibeg3,iend3,false,fmt3,err,val);
+ mg.get(ibeg3, iend3, false, fmt3, err, val);
VERIFY( val == buffer3 );
}
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/8.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/8.cc
index aeaa2573780..2b86b367542 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/8.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/8.cc
@@ -34,7 +34,7 @@ struct My_money_io_a : public std::moneypunct<wchar_t,false>
int do_frac_digits() const { return 2; }
- pattern do_pos_format() const
+ pattern do_neg_format() const
{
pattern pat = { { sign, value, space, symbol } };
return pat;
@@ -51,7 +51,7 @@ struct My_money_io_b : public std::moneypunct<wchar_t,false>
int do_frac_digits() const { return 2; }
- pattern do_pos_format() const
+ pattern do_neg_format() const
{
pattern pat = { { sign, value, symbol, none } };
return pat;
diff --git a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/9.cc b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/9.cc
index 989066b392d..ce8ab370972 100644
--- a/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/9.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/9.cc
@@ -1,6 +1,6 @@
// 2003-05-27 Brendan Kehoe <brendan@zen.org>
-// Copyright (C) 2003 Free Software Foundation
+// Copyright (C) 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -18,7 +18,7 @@
// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
// USA.
-// $22.2.6.3.3/8
+// $22.2.6.3/3
// The number of digits required after the decimal point (if any) is exactly
// the value returned by frac_digits().
diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/char/1.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/char/1.cc
index bba61451989..85998856cd5 100644
--- a/libstdc++-v3/testsuite/22_locale/money_put/put/char/1.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_put/put/char/1.cc
@@ -1,6 +1,6 @@
// 2001-08-27 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,8 +28,6 @@
void test01()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef ostreambuf_iterator<char> iterator_type;
bool test __attribute__((unused)) = true;
@@ -39,10 +37,6 @@ void test01()
locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
VERIFY( loc_c != loc_de );
- // cache the moneypunct facets
- typedef moneypunct<char, true> __money_true;
- typedef moneypunct<char, false> __money_false;
-
// sanity check the data is correct.
const string empty;
diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/char/2.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/char/2.cc
index 35882b64d5d..2833afbcaa3 100644
--- a/libstdc++-v3/testsuite/22_locale/money_put/put/char/2.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_put/put/char/2.cc
@@ -1,6 +1,6 @@
// 2001-08-27 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,8 +28,6 @@
void test02()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef ostreambuf_iterator<char> iterator_type;
bool test __attribute__((unused)) = true;
@@ -37,16 +35,7 @@ void test02()
// basic construction
locale loc_c = locale::classic();
locale loc_hk = __gnu_test::try_named_locale("en_HK");
- locale loc_fr = __gnu_test::try_named_locale("fr_FR@euro");
- locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
- VERIFY( loc_c != loc_de );
- VERIFY( loc_hk != loc_fr );
- VERIFY( loc_hk != loc_de );
- VERIFY( loc_de != loc_fr );
-
- // cache the moneypunct facets
- typedef moneypunct<char, true> __money_true;
- typedef moneypunct<char, false> __money_false;
+ VERIFY( loc_c != loc_hk );
// sanity check the data is correct.
const string empty;
diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/char/3.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/char/3.cc
index 1a1ca33d7a9..f4e70ec8d69 100644
--- a/libstdc++-v3/testsuite/22_locale/money_put/put/char/3.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_put/put/char/3.cc
@@ -1,6 +1,6 @@
// 2001-08-27 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,25 +28,14 @@
void test03()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef ostreambuf_iterator<char> iterator_type;
bool test __attribute__((unused)) = true;
// basic construction
locale loc_c = locale::classic();
- locale loc_hk = __gnu_test::try_named_locale("en_HK");
- locale loc_fr = __gnu_test::try_named_locale("fr_FR@euro");
locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
VERIFY( loc_c != loc_de );
- VERIFY( loc_hk != loc_fr );
- VERIFY( loc_hk != loc_de );
- VERIFY( loc_de != loc_fr );
-
- // cache the moneypunct facets
- typedef moneypunct<char, true> __money_true;
- typedef moneypunct<char, false> __money_false;
// sanity check the data is correct.
const string empty;
diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/char/9780-3.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/char/9780-3.cc
new file mode 100644
index 00000000000..acc1c94cc9b
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/money_put/put/char/9780-3.cc
@@ -0,0 +1,43 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <sstream>
+#include <locale>
+#include <testsuite_hooks.h>
+
+int main()
+{
+ using namespace std;
+
+ bool test __attribute__((unused)) = true;
+ locale l1 = __gnu_test::try_named_locale("de_DE");
+ locale l2 = __gnu_test::try_named_locale("es_ES");
+
+ const money_put<char>& mp = use_facet<money_put<char> >(l1);
+ ostringstream oss;
+ oss.imbue(l2);
+ oss.setf(ios_base::showbase);
+
+ long double ld = -1234567890;
+ mp.put(oss.rdbuf(), true, oss, ' ', ld); // -EUR 12.345.678,90
+ string res = oss.str();
+
+ VERIFY( res == "-EUR 12.345.678,90" );
+
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/1.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/1.cc
index a025d372edc..9518d16f37a 100644
--- a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/1.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/1.cc
@@ -1,6 +1,6 @@
// 2001-08-27 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,8 +28,6 @@
void test01()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef ostreambuf_iterator<wchar_t> iterator_type;
bool test __attribute__((unused)) = true;
@@ -39,10 +37,6 @@ void test01()
locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
VERIFY( loc_c != loc_de );
- // cache the moneypunct facets
- typedef moneypunct<wchar_t, true> __money_true;
- typedef moneypunct<wchar_t, false> __money_false;
-
// sanity check the data is correct.
const wstring empty;
diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/2.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/2.cc
index f0e7ea1aabe..312a5051989 100644
--- a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/2.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/2.cc
@@ -1,6 +1,6 @@
// 2001-08-27 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,8 +28,6 @@
void test02()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef ostreambuf_iterator<wchar_t> iterator_type;
bool test __attribute__((unused)) = true;
@@ -37,16 +35,7 @@ void test02()
// basic construction
locale loc_c = locale::classic();
locale loc_hk = __gnu_test::try_named_locale("en_HK");
- locale loc_fr = __gnu_test::try_named_locale("fr_FR@euro");
- locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
- VERIFY( loc_c != loc_de );
- VERIFY( loc_hk != loc_fr );
- VERIFY( loc_hk != loc_de );
- VERIFY( loc_de != loc_fr );
-
- // cache the moneypunct facets
- typedef moneypunct<wchar_t, true> __money_true;
- typedef moneypunct<wchar_t, false> __money_false;
+ VERIFY( loc_c != loc_hk );
// sanity check the data is correct.
const wstring empty;
diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/3.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/3.cc
index cd79e54d66d..7e381d9dc48 100644
--- a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/3.cc
+++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/3.cc
@@ -1,6 +1,6 @@
// 2001-08-27 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -28,25 +28,14 @@
void test03()
{
using namespace std;
- typedef money_base::part part;
- typedef money_base::pattern pattern;
typedef ostreambuf_iterator<wchar_t> iterator_type;
bool test __attribute__((unused)) = true;
// basic construction
locale loc_c = locale::classic();
- locale loc_hk = __gnu_test::try_named_locale("en_HK");
- locale loc_fr = __gnu_test::try_named_locale("fr_FR@euro");
locale loc_de = __gnu_test::try_named_locale("de_DE@euro");
VERIFY( loc_c != loc_de );
- VERIFY( loc_hk != loc_fr );
- VERIFY( loc_hk != loc_de );
- VERIFY( loc_de != loc_fr );
-
- // cache the moneypunct facets
- typedef moneypunct<wchar_t, true> __money_true;
- typedef moneypunct<wchar_t, false> __money_false;
// sanity check the data is correct.
const wstring empty;
diff --git a/libstdc++-v3/testsuite/22_locale/num_get/get/char/14.cc b/libstdc++-v3/testsuite/22_locale/num_get/get/char/14.cc
new file mode 100644
index 00000000000..e2ce6daa5e8
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/num_get/get/char/14.cc
@@ -0,0 +1,59 @@
+// 2004-02-28 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.2.1.1 num_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+struct Punct: std::numpunct<char>
+{
+ std::string do_grouping() const { return "\1"; }
+};
+
+void test01()
+{
+ using namespace std;
+ typedef istreambuf_iterator<char> iterator_type;
+
+ bool test __attribute__((unused)) = true;
+
+ istringstream iss;
+ iss.imbue(locale(iss.getloc(), static_cast<numpunct<char>*>(new Punct)));
+ const num_get<char>& ng = use_facet<num_get<char> >(iss.getloc());
+
+ ios_base::iostate err = ios_base::goodbit;
+ iterator_type end;
+ double d = 0.0;
+ double d1 = 1000.0;
+
+ iss.str("1,0e2");
+ err = ios_base::goodbit;
+ end = ng.get(iss.rdbuf(), 0, iss, err, d);
+ VERIFY( err == ios_base::eofbit );
+ VERIFY( d == d1 );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/num_get/get/char/15.cc b/libstdc++-v3/testsuite/22_locale/num_get/get/char/15.cc
new file mode 100644
index 00000000000..c550181d489
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/num_get/get/char/15.cc
@@ -0,0 +1,75 @@
+// 2004-03-01 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.2.1.1 num_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+struct Punct1: std::numpunct<char>
+{
+ std::string do_grouping() const { return "\1"; }
+ char do_thousands_sep() const { return '+'; }
+};
+
+struct Punct2: std::numpunct<char>
+{
+ char do_decimal_point() const { return '-'; }
+};
+
+// http://gcc.gnu.org/ml/libstdc++/2003-12/msg00201.html
+void test01()
+{
+ using namespace std;
+ typedef istreambuf_iterator<char> iterator_type;
+
+ bool test __attribute__((unused)) = true;
+
+ istringstream iss1, iss2;
+ iss1.imbue(locale(iss1.getloc(), static_cast<numpunct<char>*>(new Punct1)));
+ iss2.imbue(locale(iss2.getloc(), static_cast<numpunct<char>*>(new Punct2)));
+ const num_get<char>& ng1 = use_facet<num_get<char> >(iss1.getloc());
+ const num_get<char>& ng2 = use_facet<num_get<char> >(iss2.getloc());
+
+ ios_base::iostate err = ios_base::goodbit;
+ iterator_type end;
+ double d = 0.0;
+ double d1 = 1.0;
+ double d2 = 3.0;
+
+ iss1.str("1e+2");
+ err = ios_base::goodbit;
+ end = ng1.get(iss1.rdbuf(), 0, iss1, err, d);
+ VERIFY( err == ios_base::goodbit );
+ VERIFY( d == d1 );
+
+ iss2.str("3e-1");
+ err = ios_base::goodbit;
+ end = ng2.get(iss2.rdbuf(), 0, iss2, err, d);
+ VERIFY( err == ios_base::goodbit );
+ VERIFY( d == d2 );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/14.cc b/libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/14.cc
new file mode 100644
index 00000000000..fd5e55e2a9f
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/14.cc
@@ -0,0 +1,59 @@
+// 2004-02-28 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.2.1.1 num_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+struct Punct: std::numpunct<wchar_t>
+{
+ std::string do_grouping() const { return "\1"; }
+};
+
+void test01()
+{
+ using namespace std;
+ typedef istreambuf_iterator<wchar_t> iterator_type;
+
+ bool test __attribute__((unused)) = true;
+
+ wistringstream iss;
+ iss.imbue(locale(iss.getloc(), static_cast<numpunct<wchar_t>*>(new Punct)));
+ const num_get<wchar_t>& ng = use_facet<num_get<wchar_t> >(iss.getloc());
+
+ ios_base::iostate err = ios_base::goodbit;
+ iterator_type end;
+ double d = 0.0;
+ double d1 = 1000.0;
+
+ iss.str(L"1,0e2");
+ err = ios_base::goodbit;
+ end = ng.get(iss.rdbuf(), 0, iss, err, d);
+ VERIFY( err == ios_base::eofbit );
+ VERIFY( d == d1 );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/15.cc b/libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/15.cc
new file mode 100644
index 00000000000..ef4d7b738d9
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/15.cc
@@ -0,0 +1,75 @@
+// 2004-03-01 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 22.2.2.1.1 num_get members
+
+#include <locale>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+struct Punct1: std::numpunct<wchar_t>
+{
+ std::string do_grouping() const { return "\1"; }
+ wchar_t do_thousands_sep() const { return L'+'; }
+};
+
+struct Punct2: std::numpunct<wchar_t>
+{
+ wchar_t do_decimal_point() const { return L'-'; }
+};
+
+// http://gcc.gnu.org/ml/libstdc++/2003-12/msg00201.html
+void test01()
+{
+ using namespace std;
+ typedef istreambuf_iterator<wchar_t> iterator_type;
+
+ bool test __attribute__((unused)) = true;
+
+ wistringstream iss1, iss2;
+ iss1.imbue(locale(iss1.getloc(), static_cast<numpunct<wchar_t>*>(new Punct1)));
+ iss2.imbue(locale(iss2.getloc(), static_cast<numpunct<wchar_t>*>(new Punct2)));
+ const num_get<wchar_t>& ng1 = use_facet<num_get<wchar_t> >(iss1.getloc());
+ const num_get<wchar_t>& ng2 = use_facet<num_get<wchar_t> >(iss2.getloc());
+
+ ios_base::iostate err = ios_base::goodbit;
+ iterator_type end;
+ double d = 0.0;
+ double d1 = 1.0;
+ double d2 = 3.0;
+
+ iss1.str(L"1e+2");
+ err = ios_base::goodbit;
+ end = ng1.get(iss1.rdbuf(), 0, iss1, err, d);
+ VERIFY( err == ios_base::goodbit );
+ VERIFY( d == d1 );
+
+ iss2.str(L"3e-1");
+ err = ios_base::goodbit;
+ end = ng2.get(iss2.rdbuf(), 0, iss2, err, d);
+ VERIFY( err == ios_base::goodbit );
+ VERIFY( d == d2 );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/num_put/put/char/4.cc b/libstdc++-v3/testsuite/22_locale/num_put/put/char/4.cc
index e7b139b0270..2c9971a2038 100644
--- a/libstdc++-v3/testsuite/22_locale/num_put/put/char/4.cc
+++ b/libstdc++-v3/testsuite/22_locale/num_put/put/char/4.cc
@@ -1,6 +1,6 @@
// 2001-11-19 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -36,8 +36,8 @@ void test04()
typedef num_put<char, iter_type> num_put_type;
const locale loc_c = locale::classic();
const string str("1798 Lady Elgin");
- const string str2("0 true 0xbffff74c Mary Nisbet");
- const string x(15, 'x'); // have to have allocated string!
+ const string x(18, 'x'); // have to have allocated string!
+ // allow for "0x" + 16 hex digits (64-bit pointer)
string res;
ostringstream oss;
@@ -56,7 +56,7 @@ void test04()
res = x;
iter_type ret1 = tp.put(res.begin(), oss, ' ', l);
string sanity1(res.begin(), ret1);
- VERIFY( res == "1798xxxxxxxxxxx" );
+ VERIFY( res == "1798xxxxxxxxxxxxxx" );
VERIFY( sanity1 == "1798" );
// 02 put(long double)
@@ -64,7 +64,7 @@ void test04()
res = x;
iter_type ret2 = tp.put(res.begin(), oss, ' ', ld);
string sanity2(res.begin(), ret2);
- VERIFY( res == "1798xxxxxxxxxxx" );
+ VERIFY( res == "1798xxxxxxxxxxxxxx" );
VERIFY( sanity2 == "1798" );
// 03 put(bool)
@@ -72,7 +72,7 @@ void test04()
res = x;
iter_type ret3 = tp.put(res.begin(), oss, ' ', b);
string sanity3(res.begin(), ret3);
- VERIFY( res == "1xxxxxxxxxxxxxx" );
+ VERIFY( res == "1xxxxxxxxxxxxxxxxx" );
VERIFY( sanity3 == "1" );
b = 0;
@@ -80,7 +80,7 @@ void test04()
oss.setf(ios_base::boolalpha);
iter_type ret4 = tp.put(res.begin(), oss, ' ', b);
string sanity4(res.begin(), ret4);
- VERIFY( res == "falsexxxxxxxxxx" );
+ VERIFY( res == "falsexxxxxxxxxxxxx" );
VERIFY( sanity4 == "false" );
// 04 put(void*)
diff --git a/libstdc++-v3/testsuite/22_locale/num_put/put/char/9780-2.cc b/libstdc++-v3/testsuite/22_locale/num_put/put/char/9780-2.cc
new file mode 100644
index 00000000000..2f8d6273b6b
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/num_put/put/char/9780-2.cc
@@ -0,0 +1,42 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <sstream>
+#include <locale>
+#include <testsuite_hooks.h>
+
+int main()
+{
+ using namespace std;
+
+ bool test __attribute__((unused)) = true;
+ locale l1 = __gnu_test::try_named_locale("de_DE");
+ locale l2 = __gnu_test::try_named_locale("es_ES");
+
+ const num_put<char>& np = use_facet<num_put<char> >(l1);
+ ostringstream oss;
+ oss.imbue(l2);
+
+ long l = 1234567890;
+ np.put(oss.rdbuf(), oss, ' ', l); // 1234567890
+ string res = oss.str();
+
+ VERIFY( res == "1234567890" );
+
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/22_locale/num_put/put/wchar_t/4.cc b/libstdc++-v3/testsuite/22_locale/num_put/put/wchar_t/4.cc
index 3fc65175492..5de209f7ded 100644
--- a/libstdc++-v3/testsuite/22_locale/num_put/put/wchar_t/4.cc
+++ b/libstdc++-v3/testsuite/22_locale/num_put/put/wchar_t/4.cc
@@ -1,6 +1,6 @@
// 2001-11-19 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -36,9 +36,8 @@ void test04()
typedef num_put<wchar_t, iter_type> num_put_type;
const locale loc_c = locale::classic();
const wstring str(L"1798 Lady Elgin");
- const wstring str2(L"0 true 0xbffff74c Mary Nisbet");
- const wstring x(15, L'x'); // have to have allocated wstring!
- wstring res;
+ const wstring x(18, L'x'); // have to have allocated wstring!
+ wstring res; // allow for "0x" + 16 hex digits (64-bit pointer)
wostringstream oss;
oss.imbue(locale(loc_c, new num_put_type));
@@ -56,7 +55,7 @@ void test04()
res = x;
iter_type ret1 = tp.put(res.begin(), oss, ' ', l);
wstring sanity1(res.begin(), ret1);
- VERIFY( res == L"1798xxxxxxxxxxx" );
+ VERIFY( res == L"1798xxxxxxxxxxxxxx" );
VERIFY( sanity1 == L"1798" );
// 02 put(long double)
@@ -64,7 +63,7 @@ void test04()
res = x;
iter_type ret2 = tp.put(res.begin(), oss, ' ', ld);
wstring sanity2(res.begin(), ret2);
- VERIFY( res == L"1798xxxxxxxxxxx" );
+ VERIFY( res == L"1798xxxxxxxxxxxxxx" );
VERIFY( sanity2 == L"1798" );
// 03 put(bool)
@@ -72,7 +71,7 @@ void test04()
res = x;
iter_type ret3 = tp.put(res.begin(), oss, ' ', b);
wstring sanity3(res.begin(), ret3);
- VERIFY( res == L"1xxxxxxxxxxxxxx" );
+ VERIFY( res == L"1xxxxxxxxxxxxxxxxx" );
VERIFY( sanity3 == L"1" );
b = 0;
@@ -80,7 +79,7 @@ void test04()
oss.setf(ios_base::boolalpha);
iter_type ret4 = tp.put(res.begin(), oss, ' ', b);
wstring sanity4(res.begin(), ret4);
- VERIFY( res == L"falsexxxxxxxxxx" );
+ VERIFY( res == L"falsexxxxxxxxxxxxx" );
VERIFY( sanity4 == L"false" );
// 04 put(void*)
@@ -91,7 +90,7 @@ void test04()
iter_type ret5 = tp.put(res.begin(), oss, ' ', cv);
wstring sanity5(res.begin(), ret5);
VERIFY( sanity5.size() );
- VERIFY( sanity5[1] == 'x' );
+ VERIFY( sanity5[1] == L'x' );
}
int main()
diff --git a/libstdc++-v3/testsuite/22_locale/numpunct/members/pod/2.cc b/libstdc++-v3/testsuite/22_locale/numpunct/members/pod/2.cc
index bb970369ee3..be020ca4668 100644
--- a/libstdc++-v3/testsuite/22_locale/numpunct/members/pod/2.cc
+++ b/libstdc++-v3/testsuite/22_locale/numpunct/members/pod/2.cc
@@ -74,7 +74,7 @@ void test01()
VERIFY( test );
// 3: fail, no numpunct
- const locale loc3(loc, new ctype<pod_type>);
+ const locale loc3(loc2, new ctype<pod_type>);
os.clear();
os.imbue(loc3);
try
diff --git a/libstdc++-v3/testsuite/22_locale/time_put/put/char/9780-1.cc b/libstdc++-v3/testsuite/22_locale/time_put/put/char/9780-1.cc
new file mode 100644
index 00000000000..7bf439cca33
--- /dev/null
+++ b/libstdc++-v3/testsuite/22_locale/time_put/put/char/9780-1.cc
@@ -0,0 +1,131 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <sstream>
+#include <locale>
+#include <testsuite_hooks.h>
+
+int main()
+{
+ using namespace std;
+
+ bool test __attribute__((unused)) = true;
+ locale l1 = __gnu_test::try_named_locale("de_DE");
+ locale l2 = __gnu_test::try_named_locale("es_ES");
+
+ const time_put<char> &tp = use_facet<time_put<char> >(l1);
+ ostringstream oss;
+ oss.imbue(l2);
+
+ tm t = tm();
+ tp.put(oss.rdbuf(), oss, ' ', &t, 'A');
+ string res = oss.str();
+
+ VERIFY( res == "domingo" );
+
+ return 0;
+}
+
+// Two interpretations of the standard.
+
+// 1 : time_get, time_put each have their own data internally
+// use internal data for time and date specifics
+// use getloc for ctype info
+
+// 2 : time_get, time_put use the ios_base& argument and getloc to
+// retrieve the necessary data.
+// use getloc for ctype, time and date specifics
+
+// It is my opinion that the language in the standard is sufficiently
+// vague to permit both interpretations. In particular, the interface
+// for time_get and time_put is based on strftime, which as
+// POSIX notes is dependent on LC_TIME. The C++ standard, however,
+// does not specify the equivalent mappings of LC_TIME to time_get and
+// time_put.
+
+/*
+The problems with the first approach, as above, are numerous.
+
+1) Then locale usage and design for formatters and parsers becomes
+ fragmented. On one side, num_put and money_put, and on the other,
+ time_put. This inconsistency is not useful.
+
+2) The data structures for time and date formatting are the largest in
+ the locale library. Making time_put and time_get keep separate
+ copies is inefficient. (Note that time_put and time_get are in the
+ same locale::category).
+*/
+
+
+/*
+22.2.5 - The time category [lib.category.time]
+
+-1- Templates time_get<charT,InputIterator> and
+ time_put<charT,OutputIterator> provide date and time formatting and
+ parsing. All specifications of member functions for time_put and
+ time_get in the subclauses of lib.category.time only apply to the
+ instantiations required in Tables ?? and ??
+ (lib.locale.category). Their members use their ios_base&,
+ ios_base::iostate&, and fill arguments as described in
+ (lib.locale.categories), and the ctype<> facet, to determine
+ formatting details.
+*/
+
+/*
+22.2 - Standard locale categories [lib.locale.categories]
+
+-1- Each of the standard categories includes a family of facets. Some
+ of these implement formatting or parsing of a datum, for use by
+ standard or users' iostream operators << and >>, as members put() and
+ get(), respectively. Each such member function takes an ios_base&
+ argument whose members flags(), precision(), and width(), specify the
+ format of the corresponding datum. (lib.ios.base). Those functions
+ which need to use other facets call its member getloc() to retrieve
+ the locale imbued there. Formatting facets use the character argument
+ fill to fill out the specified width where necessary.
+*/
+
+/*
+With GCC/libstdc++, the output of the program with the arguments
+of de_DE es_ES is:
+ domingo
+ lunes
+ martes
+ miércoles
+ jueves
+ viernes
+ sábado
+
+With Intel C++, it is: (this is clearly wrong)
+ Sunday
+ Monday
+ Tuesday
+ Wednesday
+ Thursday
+ Friday
+ Saturday
+
+And with RogueWave C++
+ Sonntag
+ Montag
+ Dienstag
+ Mittwoch
+ Donnerstag
+ Freitag
+ Samstag
+*/
diff --git a/libstdc++-v3/testsuite/23_containers/bitset/invalidation/1.cc b/libstdc++-v3/testsuite/23_containers/bitset/invalidation/1.cc
index 7ca3053cff1..59654f06ed4 100644
--- a/libstdc++-v3/testsuite/23_containers/bitset/invalidation/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/bitset/invalidation/1.cc
@@ -1,6 +1,6 @@
// Bitset reference invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -42,5 +42,5 @@ void test01()
int main()
{
test01();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/bitset/operations/13838.cc b/libstdc++-v3/testsuite/23_containers/bitset/operations/13838.cc
new file mode 100644
index 00000000000..e9b1ac1f42e
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/bitset/operations/13838.cc
@@ -0,0 +1,47 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <debug/bitset>
+#include <testsuite_hooks.h>
+
+// libstdc++/13838
+void test01()
+{
+ using __gnu_debug::bitset;
+ bool test __attribute__((unused)) = true;
+
+ bitset<4> b0, b1;
+ b0.set(1);
+ b0.set(3);
+ b1.set(2);
+ b1.set(3);
+
+ b0 |= b1;
+
+ bitset<4> br;
+ br.set(1);
+ br.set(2);
+ br.set(3);
+
+ VERIFY( b0 == br );
+}
+
+int main()
+{
+ test01();
+}
diff --git a/libstdc++-v3/testsuite/23_containers/deque/cons/1.cc b/libstdc++-v3/testsuite/23_containers/deque/cons/1.cc
index 566461b7d10..5a32c78eae8 100644
--- a/libstdc++-v3/testsuite/23_containers/deque/cons/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/deque/cons/1.cc
@@ -1,6 +1,6 @@
// 2001-12-27 pme
//
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -42,6 +42,11 @@ test01()
assert_count (0);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<__gnu_test::counter>;
+template class __gnu_cxx::__mt_alloc<__gnu_test::counter*>;
+#endif
int main()
{
diff --git a/libstdc++-v3/testsuite/23_containers/deque/cons/2.cc b/libstdc++-v3/testsuite/23_containers/deque/cons/2.cc
index e0e7108d20b..64365b0502c 100644
--- a/libstdc++-v3/testsuite/23_containers/deque/cons/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/deque/cons/2.cc
@@ -1,6 +1,6 @@
// 2001-12-27 pme
//
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -499,6 +499,13 @@ test_copy_ctor_exception_safety()
// teardown
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+template class __gnu_cxx::__mt_alloc<int*>;
+template class __gnu_cxx::__mt_alloc<__gnu_test::copy_tracker>;
+template class __gnu_cxx::__mt_alloc<__gnu_test::copy_tracker*>;
+#endif
int main()
{
diff --git a/libstdc++-v3/testsuite/23_containers/deque/cons/clear_allocator.cc b/libstdc++-v3/testsuite/23_containers/deque/cons/clear_allocator.cc
new file mode 100644
index 00000000000..8103928a1e3
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/deque/cons/clear_allocator.cc
@@ -0,0 +1,88 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <deque>
+#include <ext/new_allocator.h>
+
+using namespace std;
+using __gnu_cxx::new_allocator;
+
+template<typename T>
+ class clear_alloc : public new_allocator<T>
+ {
+ public:
+
+ template <typename T1>
+ struct rebind
+ { typedef clear_alloc<T1> other; };
+
+ virtual void clear()
+ { }
+
+ clear_alloc()
+ { }
+
+ clear_alloc(clear_alloc const& _wa)
+ { }
+
+ template<typename T1>
+ clear_alloc(clear_alloc<T1> const& _wa)
+ { }
+
+ virtual ~clear_alloc()
+ { this->clear(); }
+
+ T* allocate(typename new_allocator<T>::size_type n, const void *hint = 0)
+ {
+ this->clear();
+ return new_allocator<T>::allocate(n, hint);
+ }
+
+ void deallocate(T *ptr, typename new_allocator<T>::size_type n)
+ {
+ this->clear();
+ new_allocator<T>::deallocate(ptr, n);
+ }
+ };
+
+template<typename Container>
+ void Check_Container()
+ {
+ Container* pic = new Container;
+ int x = 230;
+
+ while (x--)
+ {
+ pic->push_back(x);
+ }
+
+ pic->get_allocator();
+
+ // The following has led to infinite recursions or cores.
+ pic->clear();
+
+ delete pic;
+ }
+
+
+int main()
+{
+ Check_Container<std::deque<int, clear_alloc<int> > >();
+ return 0;
+}
+
diff --git a/libstdc++-v3/testsuite/23_containers/deque/invalidation/1.cc b/libstdc++-v3/testsuite/23_containers/deque/invalidation/1.cc
index 4529b288ef4..506f0e9fad3 100644
--- a/libstdc++-v3/testsuite/23_containers/deque/invalidation/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/deque/invalidation/1.cc
@@ -1,6 +1,6 @@
// Deque iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -46,8 +46,14 @@ void test01()
VERIFY(i._M_singular());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int*>;
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test01();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/deque/invalidation/2.cc b/libstdc++-v3/testsuite/23_containers/deque/invalidation/2.cc
index 106c118accc..9aa1e573e99 100644
--- a/libstdc++-v3/testsuite/23_containers/deque/invalidation/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/deque/invalidation/2.cc
@@ -1,6 +1,6 @@
// Deque iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -46,8 +46,14 @@ void test02()
VERIFY(before._M_singular());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int*>;
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test02();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/deque/invalidation/3.cc b/libstdc++-v3/testsuite/23_containers/deque/invalidation/3.cc
index 60103c1fd7e..fe374984cfb 100644
--- a/libstdc++-v3/testsuite/23_containers/deque/invalidation/3.cc
+++ b/libstdc++-v3/testsuite/23_containers/deque/invalidation/3.cc
@@ -1,6 +1,6 @@
// Deque iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -42,6 +42,7 @@ void test03()
// Insert multiple copies
before = v.begin() + 6;
at = before + 1;
+
v.insert(at, 3, 42);
VERIFY(before._M_singular());
VERIFY(at._M_singular());
@@ -55,8 +56,14 @@ void test03()
VERIFY(at._M_singular());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int*>;
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test03();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/deque/invalidation/4.cc b/libstdc++-v3/testsuite/23_containers/deque/invalidation/4.cc
index c8a8b88a9ed..8300fa57a75 100644
--- a/libstdc++-v3/testsuite/23_containers/deque/invalidation/4.cc
+++ b/libstdc++-v3/testsuite/23_containers/deque/invalidation/4.cc
@@ -68,8 +68,14 @@ void test04()
VERIFY(before._M_singular());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int*>;
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test04();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/deque/modifiers/swap.cc b/libstdc++-v3/testsuite/23_containers/deque/modifiers/swap.cc
new file mode 100644
index 00000000000..43dc6867d3d
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/deque/modifiers/swap.cc
@@ -0,0 +1,68 @@
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <deque>
+#include <testsuite_hooks.h>
+
+struct T { int i; };
+
+int swap_calls;
+
+namespace std
+{
+ template<>
+ void
+ deque<T, allocator<T> >::swap(deque<T, allocator<T> >&)
+ { ++swap_calls; }
+}
+
+// Should use deque specialization for swap.
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+ std::deque<T> A;
+ std::deque<T> B;
+ swap_calls = 0;
+ std::swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+// Should use deque specialization for swap.
+void test02()
+{
+ bool test __attribute__((unused)) = true;
+ using namespace std;
+ deque<T> A;
+ deque<T> B;
+ swap_calls = 0;
+ swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+template class __gnu_cxx::__mt_alloc<T>;
+template class __gnu_cxx::__mt_alloc<T*>;
+#endif
+
+// See c++/13658 for background info.
+int main()
+{
+ test01();
+ test02();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/23_containers/deque/operators/1.cc b/libstdc++-v3/testsuite/23_containers/deque/operators/1.cc
index 4b7aac9ab60..20cdfaceae8 100644
--- a/libstdc++-v3/testsuite/23_containers/deque/operators/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/deque/operators/1.cc
@@ -1,6 +1,6 @@
// 2002-05-18 Paolo Carlini <pcarlini@unitus.it>
-// Copyright (C) 2002 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -77,6 +77,12 @@ void test02()
VERIFY( constend - beg > 0 );
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int*>;
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/23_containers/list/1.cc b/libstdc++-v3/testsuite/23_containers/list/1.cc
index 187f380b4d5..45aa95ead10 100644
--- a/libstdc++-v3/testsuite/23_containers/list/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/1.cc
@@ -1,4 +1,5 @@
-// Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
+// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
diff --git a/libstdc++-v3/testsuite/23_containers/list/capacity/1.cc b/libstdc++-v3/testsuite/23_containers/list/capacity/1.cc
index 609b92c8252..b19a7b13978 100644
--- a/libstdc++-v3/testsuite/23_containers/list/capacity/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/capacity/1.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -59,6 +59,11 @@ test01()
VERIFY(list0101.size() == 0);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int
main()
{
diff --git a/libstdc++-v3/testsuite/23_containers/list/cons/1.cc b/libstdc++-v3/testsuite/23_containers/list/cons/1.cc
index 1d2f5662f02..92a5992ca2b 100644
--- a/libstdc++-v3/testsuite/23_containers/list/cons/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/cons/1.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -71,9 +71,13 @@ test01()
// allocator checks?
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<A<B> > >;
+#endif
+
int main()
{
test01();
return 0;
}
-// vi:set sw=2 ts=2:
diff --git a/libstdc++-v3/testsuite/23_containers/list/cons/2.cc b/libstdc++-v3/testsuite/23_containers/list/cons/2.cc
index 090c7f3d66d..b837d85a386 100644
--- a/libstdc++-v3/testsuite/23_containers/list/cons/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/cons/2.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -75,9 +75,15 @@ test02()
VERIFY(list0203.size() == LIST_SIZE);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<A<B> > >;
+template class __gnu_cxx::__mt_alloc<int>;
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test02();
return 0;
}
-// vi:set sw=2 ts=2:
diff --git a/libstdc++-v3/testsuite/23_containers/list/cons/3.cc b/libstdc++-v3/testsuite/23_containers/list/cons/3.cc
index 5115dc0abed..61e6aefc00a 100644
--- a/libstdc++-v3/testsuite/23_containers/list/cons/3.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/cons/3.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -52,6 +52,11 @@ test02D()
VERIFY(list0204.size() == LIST_SIZE);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<C> >;
+#endif
+
int main()
{
test02D();
diff --git a/libstdc++-v3/testsuite/23_containers/list/cons/4.cc b/libstdc++-v3/testsuite/23_containers/list/cons/4.cc
index 68b8d439cf8..4b84342fd98 100644
--- a/libstdc++-v3/testsuite/23_containers/list/cons/4.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/cons/4.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -58,9 +58,14 @@ test03()
VERIFY(list0302.size() == N);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test03();
return 0;
}
-// vi:set sw=2 ts=2:
+
diff --git a/libstdc++-v3/testsuite/23_containers/list/cons/5.cc b/libstdc++-v3/testsuite/23_containers/list/cons/5.cc
index 7bc925a64af..89e5308cc88 100644
--- a/libstdc++-v3/testsuite/23_containers/list/cons/5.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/cons/5.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -49,9 +49,14 @@ test04()
VERIFY(list0401.size() == N);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test04();
return 0;
}
-// vi:set sw=2 ts=2:
+
diff --git a/libstdc++-v3/testsuite/23_containers/list/cons/6.cc b/libstdc++-v3/testsuite/23_containers/list/cons/6.cc
index 9cdec8b40f7..a302c59a9a5 100644
--- a/libstdc++-v3/testsuite/23_containers/list/cons/6.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/cons/6.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -62,9 +62,14 @@ test05()
VERIFY(list0501.size() == M);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test05();
return 0;
}
-// vi:set sw=2 ts=2:
+
diff --git a/libstdc++-v3/testsuite/23_containers/list/cons/7.cc b/libstdc++-v3/testsuite/23_containers/list/cons/7.cc
index 650c82b133f..16a8f902611 100644
--- a/libstdc++-v3/testsuite/23_containers/list/cons/7.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/cons/7.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -63,9 +63,14 @@ test06()
VERIFY(list0601.size() == SMALL_LIST_SIZE);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test06();
return 0;
}
-// vi:set sw=2 ts=2:
+
diff --git a/libstdc++-v3/testsuite/23_containers/list/cons/8.cc b/libstdc++-v3/testsuite/23_containers/list/cons/8.cc
index 66b59a00d03..1d70d3c8978 100644
--- a/libstdc++-v3/testsuite/23_containers/list/cons/8.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/cons/8.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -56,9 +56,14 @@ test06D()
VERIFY(list0604.size() == LIST_SIZE);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<C> >;
+#endif
+
int main()
{
test06D();
return 0;
}
-// vi:set sw=2 ts=2:
+
diff --git a/libstdc++-v3/testsuite/23_containers/list/cons/9.cc b/libstdc++-v3/testsuite/23_containers/list/cons/9.cc
index 1f26213d8ae..21a1e584714 100644
--- a/libstdc++-v3/testsuite/23_containers/list/cons/9.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/cons/9.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -56,6 +56,11 @@ test07()
VERIFY(list0702 == list0701);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test07();
diff --git a/libstdc++-v3/testsuite/23_containers/list/cons/clear_allocator.cc b/libstdc++-v3/testsuite/23_containers/list/cons/clear_allocator.cc
new file mode 100644
index 00000000000..c74fc085ffb
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/list/cons/clear_allocator.cc
@@ -0,0 +1,88 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <list>
+#include <ext/new_allocator.h>
+
+using namespace std;
+using __gnu_cxx::new_allocator;
+
+template<typename T>
+ class clear_alloc : public new_allocator<T>
+ {
+ public:
+
+ template <typename T1>
+ struct rebind
+ { typedef clear_alloc<T1> other; };
+
+ virtual void clear()
+ { }
+
+ clear_alloc()
+ { }
+
+ clear_alloc(clear_alloc const& _wa)
+ { }
+
+ template<typename T1>
+ clear_alloc(clear_alloc<T1> const& _wa)
+ { }
+
+ virtual ~clear_alloc()
+ { this->clear(); }
+
+ T* allocate(typename new_allocator<T>::size_type n, const void *hint = 0)
+ {
+ this->clear();
+ return new_allocator<T>::allocate(n, hint);
+ }
+
+ void deallocate(T *ptr, typename new_allocator<T>::size_type n)
+ {
+ this->clear();
+ new_allocator<T>::deallocate(ptr, n);
+ }
+ };
+
+template<typename Container>
+ void Check_Container()
+ {
+ Container* pic = new Container;
+ int x = 230;
+
+ while (x--)
+ {
+ pic->push_back(x);
+ }
+
+ pic->get_allocator();
+
+ // The following has led to infinite recursions or cores.
+ pic->clear();
+
+ delete pic;
+ }
+
+
+int main()
+{
+ Check_Container<std::list<int, clear_alloc<int> > >();
+ return 0;
+}
+
diff --git a/libstdc++-v3/testsuite/23_containers/list/invalidation/1.cc b/libstdc++-v3/testsuite/23_containers/list/invalidation/1.cc
index 86d9031a9c3..571a69b473d 100644
--- a/libstdc++-v3/testsuite/23_containers/list/invalidation/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/invalidation/1.cc
@@ -1,6 +1,6 @@
// List iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -53,8 +53,13 @@ void test01()
VERIFY(!finish._M_dereferenceable() && !finish._M_singular());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test01();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/list/invalidation/2.cc b/libstdc++-v3/testsuite/23_containers/list/invalidation/2.cc
index 117aa61abea..e6b04bdf371 100644
--- a/libstdc++-v3/testsuite/23_containers/list/invalidation/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/invalidation/2.cc
@@ -1,6 +1,6 @@
// List iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -48,8 +48,13 @@ void test02()
VERIFY(!finish._M_singular() && !finish._M_dereferenceable());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test02();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/list/invalidation/3.cc b/libstdc++-v3/testsuite/23_containers/list/invalidation/3.cc
index 59af360ed84..58493078b83 100644
--- a/libstdc++-v3/testsuite/23_containers/list/invalidation/3.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/invalidation/3.cc
@@ -1,6 +1,6 @@
// List iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -71,8 +71,13 @@ void test03()
VERIFY(!finish._M_singular() && !finish._M_dereferenceable());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test03();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/list/invalidation/4.cc b/libstdc++-v3/testsuite/23_containers/list/invalidation/4.cc
index 90f99709f16..3c11fd6733c 100644
--- a/libstdc++-v3/testsuite/23_containers/list/invalidation/4.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/invalidation/4.cc
@@ -1,6 +1,6 @@
// List iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -48,8 +48,13 @@ void test04()
VERIFY(after2._M_attached_to(&l2));
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test04();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/list/modifiers/1.cc b/libstdc++-v3/testsuite/23_containers/list/modifiers/1.cc
index 2e75dcabb31..5d95467b995 100644
--- a/libstdc++-v3/testsuite/23_containers/list/modifiers/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/modifiers/1.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -112,9 +112,14 @@ test03()
VERIFY(e == list0301.end());
}
+#if !__GXX_WEAK__ && defined(_MT_ALLOCATOR_H)
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<__gnu_test::copy_tracker>;
+template class __gnu_cxx::__mt_alloc<std::_List_node<__gnu_test::copy_tracker> >;
+#endif
+
int main()
{
test03();
return 0;
}
-// vi:set sw=2 ts=2:
diff --git a/libstdc++-v3/testsuite/23_containers/list/modifiers/2.cc b/libstdc++-v3/testsuite/23_containers/list/modifiers/2.cc
index 66c5c12ccc6..21c8b73e687 100644
--- a/libstdc++-v3/testsuite/23_containers/list/modifiers/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/modifiers/2.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -84,9 +84,14 @@ test02()
VERIFY(T::dtorCount() == 0);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<__gnu_test::copy_tracker>;
+template class __gnu_cxx::__mt_alloc<std::_List_node<__gnu_test::copy_tracker> >;
+#endif
+
int main()
{
test02();
return 0;
}
-// vi:set sw=2 ts=2:
diff --git a/libstdc++-v3/testsuite/23_containers/list/modifiers/3.cc b/libstdc++-v3/testsuite/23_containers/list/modifiers/3.cc
index dfbc46cb406..dda9d9afee2 100644
--- a/libstdc++-v3/testsuite/23_containers/list/modifiers/3.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/modifiers/3.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -116,9 +116,14 @@ test01()
VERIFY(k->id() == 1);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<__gnu_test::copy_tracker>;
+template class __gnu_cxx::__mt_alloc<std::_List_node<__gnu_test::copy_tracker> >;
+#endif
+
int main()
{
test01();
return 0;
}
-// vi:set sw=2 ts=2:
diff --git a/libstdc++-v3/testsuite/23_containers/list/modifiers/swap.cc b/libstdc++-v3/testsuite/23_containers/list/modifiers/swap.cc
new file mode 100644
index 00000000000..a51d1263fb4
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/list/modifiers/swap.cc
@@ -0,0 +1,67 @@
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <list>
+#include <testsuite_hooks.h>
+
+struct T { int i; };
+
+int swap_calls;
+
+namespace std
+{
+ template<>
+ void
+ list<T, allocator<T> >::swap(list<T, allocator<T> >&)
+ { ++swap_calls; }
+}
+
+// Should use list specialization for swap.
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+ std::list<T> A;
+ std::list<T> B;
+ swap_calls = 0;
+ std::swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+// Should use list specialization for swap.
+void test02()
+{
+ bool test __attribute__((unused)) = true;
+ using namespace std;
+ list<T> A;
+ list<T> B;
+ swap_calls = 0;
+ swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+template class __gnu_cxx::__mt_alloc<std::_List_node<T> >;
+#endif
+
+// See c++/13658 for background info.
+int main()
+{
+ test01();
+ test02();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/23_containers/list/operators/1.cc b/libstdc++-v3/testsuite/23_containers/list/operators/1.cc
index 663ff1c81c9..1b837751a21 100644
--- a/libstdc++-v3/testsuite/23_containers/list/operators/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/operators/1.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -66,9 +66,14 @@ test01()
VERIFY(p == list0101.end());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main(void)
{
test01();
return 0;
}
-// vi:set sw=2 ts=2:
+
diff --git a/libstdc++-v3/testsuite/23_containers/list/operators/2.cc b/libstdc++-v3/testsuite/23_containers/list/operators/2.cc
index 726c4bfcab4..4cdc27e664d 100644
--- a/libstdc++-v3/testsuite/23_containers/list/operators/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/operators/2.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -52,9 +52,13 @@ test02()
VERIFY(list0201 == list0204);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test02();
return 0;
}
-// vi:set sw=2 ts=2:
diff --git a/libstdc++-v3/testsuite/23_containers/list/operators/3.cc b/libstdc++-v3/testsuite/23_containers/list/operators/3.cc
index 8b9c537a064..4919cd1e80e 100644
--- a/libstdc++-v3/testsuite/23_containers/list/operators/3.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/operators/3.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -66,9 +66,13 @@ test03()
VERIFY(list0301 == list0304);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main(void)
{
test03();
return 0;
}
-// vi:set sw=2 ts=2:
diff --git a/libstdc++-v3/testsuite/23_containers/list/operators/4.cc b/libstdc++-v3/testsuite/23_containers/list/operators/4.cc
index bbebfb59a23..2bfe127653d 100644
--- a/libstdc++-v3/testsuite/23_containers/list/operators/4.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/operators/4.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -90,9 +90,14 @@ test04()
#endif
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test04();
return 0;
}
-// vi:set sw=2 ts=2:
+
diff --git a/libstdc++-v3/testsuite/23_containers/map/insert/1.cc b/libstdc++-v3/testsuite/23_containers/map/insert/1.cc
index 404f3c35cab..8c15aec5352 100644
--- a/libstdc++-v3/testsuite/23_containers/map/insert/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/map/insert/1.cc
@@ -1,6 +1,6 @@
// 2001-08-23 pme & Sylvain.Pion@sophia.inria.fr
-// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -60,11 +60,15 @@ void test01()
VERIFY ( M.find(9) != M.end() );
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::pair<int const, int> >;
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<std::pair<int const, int> > >;
+#endif
int main()
{
test01();
-
return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/map/invalidation/1.cc b/libstdc++-v3/testsuite/23_containers/map/invalidation/1.cc
index a62a98d863f..667c66338af 100644
--- a/libstdc++-v3/testsuite/23_containers/map/invalidation/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/map/invalidation/1.cc
@@ -1,6 +1,6 @@
// Map iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -45,8 +45,13 @@ void test01()
VERIFY(!finish._M_dereferenceable() && !finish._M_singular());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<std::pair<int const, int> > >;
+#endif
+
int main()
{
test01();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/map/invalidation/2.cc b/libstdc++-v3/testsuite/23_containers/map/invalidation/2.cc
index 0086deb81fa..b35d70ebdf5 100644
--- a/libstdc++-v3/testsuite/23_containers/map/invalidation/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/map/invalidation/2.cc
@@ -1,6 +1,6 @@
// Map iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -64,8 +64,13 @@ void test02()
VERIFY(!finish._M_singular() && !finish._M_dereferenceable());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<std::pair<int const, int> > >;
+#endif
+
int main()
{
test02();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/map/modifiers/swap.cc b/libstdc++-v3/testsuite/23_containers/map/modifiers/swap.cc
new file mode 100644
index 00000000000..1afde71dd8a
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/map/modifiers/swap.cc
@@ -0,0 +1,67 @@
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <map>
+#include <testsuite_hooks.h>
+
+struct T { int i; };
+
+int swap_calls;
+
+namespace std
+{
+ template<>
+ void
+ map<T, int>::swap(map<T, int>&)
+ { ++swap_calls; }
+}
+
+// Should use map specialization for swap.
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+ std::map<T, int> A;
+ std::map<T, int> B;
+ swap_calls = 0;
+ std::swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+// Should use map specialization for swap.
+void test02()
+{
+ bool test __attribute__((unused)) = true;
+ using namespace std;
+ map<T, int> A;
+ map<T, int> B;
+ swap_calls = 0;
+ swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<std::pair<T const, int> > >;
+#endif
+
+// See c++/13658 for background info.
+int main()
+{
+ test01();
+ test02();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/23_containers/map/operators/1.cc b/libstdc++-v3/testsuite/23_containers/map/operators/1.cc
index 03a7860c8ba..4a54f388962 100644
--- a/libstdc++-v3/testsuite/23_containers/map/operators/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/map/operators/1.cc
@@ -1,6 +1,6 @@
// 2000-09-07 bgarcia@laurelnetworks.com
-// Copyright (C) 2000, 2001, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2001, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -42,6 +42,11 @@ void test02()
std::cerr << i->second << ' ';
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<std::pair<int const, int> > >;
+#endif
+
int main()
{
test02();
diff --git a/libstdc++-v3/testsuite/23_containers/map/operators/1_neg.cc b/libstdc++-v3/testsuite/23_containers/map/operators/1_neg.cc
index 84302328b4d..64a1d7df866 100644
--- a/libstdc++-v3/testsuite/23_containers/map/operators/1_neg.cc
+++ b/libstdc++-v3/testsuite/23_containers/map/operators/1_neg.cc
@@ -41,5 +41,5 @@ void test01()
test &= itr == mapByName.end(); // { dg-error "no" }
}
-// { dg-error "candidates are" "" { target *-*-* } 212 }
-// { dg-error "candidates are" "" { target *-*-* } 216 }
+// { dg-error "candidates are" "" { target *-*-* } 209 }
+// { dg-error "candidates are" "" { target *-*-* } 213 }
diff --git a/libstdc++-v3/testsuite/23_containers/multimap/invalidation/1.cc b/libstdc++-v3/testsuite/23_containers/multimap/invalidation/1.cc
index 71b5385aed3..6246604d1cf 100644
--- a/libstdc++-v3/testsuite/23_containers/multimap/invalidation/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/multimap/invalidation/1.cc
@@ -46,8 +46,13 @@ void test01()
VERIFY(!finish._M_dereferenceable() && !finish._M_singular());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<std::pair<int const, int> > >;
+#endif
+
int main()
{
test01();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/multimap/invalidation/2.cc b/libstdc++-v3/testsuite/23_containers/multimap/invalidation/2.cc
index c6f659e7f5c..07fe8d62fae 100644
--- a/libstdc++-v3/testsuite/23_containers/multimap/invalidation/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/multimap/invalidation/2.cc
@@ -65,8 +65,13 @@ void test02()
VERIFY(!finish._M_singular() && !finish._M_dereferenceable());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<std::pair<int const, int> > >;
+#endif
+
int main()
{
test02();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/multimap/modifiers/swap.cc b/libstdc++-v3/testsuite/23_containers/multimap/modifiers/swap.cc
new file mode 100644
index 00000000000..2e87dff1632
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/multimap/modifiers/swap.cc
@@ -0,0 +1,67 @@
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <map>
+#include <testsuite_hooks.h>
+
+struct T { int i; };
+
+int swap_calls;
+
+namespace std
+{
+ template<>
+ void
+ multimap<T, int>::swap(multimap<T, int>&)
+ { ++swap_calls; }
+}
+
+// Should use multimap specialization for swap.
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+ std::multimap<T, int> A;
+ std::multimap<T, int> B;
+ swap_calls = 0;
+ std::swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+// Should use multimap specialization for swap.
+void test02()
+{
+ bool test __attribute__((unused)) = true;
+ using namespace std;
+ multimap<T, int> A;
+ multimap<T, int> B;
+ swap_calls = 0;
+ swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<std::pair<T const, int> > >;
+#endif
+
+// See c++/13658 for background info.
+int main()
+{
+ test01();
+ test02();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/23_containers/multiset/insert/1.cc b/libstdc++-v3/testsuite/23_containers/multiset/insert/1.cc
index b82612f5c7f..4c9dc80d45e 100644
--- a/libstdc++-v3/testsuite/23_containers/multiset/insert/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/multiset/insert/1.cc
@@ -1,6 +1,6 @@
// 1999-06-24 bkoz
-// Copyright (C) 1999 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -20,10 +20,11 @@
// 23.3.4 template class multiset
-#include <iostream>
+#include <sstream>
#include <iterator>
#include <set>
#include <algorithm>
+#include <testsuite_hooks.h>
namespace std
{
@@ -36,8 +37,14 @@ bool
operator<(std::pair<int, int> const& lhs, std::pair<int, int> const& rhs)
{ return lhs.first < rhs.first; }
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<std::pair<int, int> > >;
+#endif
+
int main ()
{
+ bool test __attribute__((unused)) = true;
typedef std::multiset<std::pair<int, int> >::iterator iterator;
std::pair<int, int> p(69, 0);
std::multiset<std::pair<int, int> > s;
@@ -51,24 +58,13 @@ int main ()
++p.second;
}
- // XXX need to use debug-assert here and get this working with an
- // ostrinsrtream, that way we can just check the strings for
- // equivalance.
+ std::ostringstream stream;
std::copy(s.begin(), s.end(),
- std::ostream_iterator<std::pair<int, int> >(std::cout, "\n"));
+ std::ostream_iterator<std::pair<int, int> >(stream, "\n"));
+ const std::string expected("69 0\n69 1\n69 2\n69 3\n69 4\n"
+ "69 5\n69 6\n69 7\n69 8\n69 9\n");
+ std::string tested(stream.str());
+ VERIFY( tested == expected );
return 0;
}
-
-/* output:
-69 5
-69 0
-69 6
-69 1
-69 7
-69 2
-69 8
-69 3
-69 9
-69 4
-*/
diff --git a/libstdc++-v3/testsuite/23_containers/multiset/invalidation/1.cc b/libstdc++-v3/testsuite/23_containers/multiset/invalidation/1.cc
index 0d9b76f2f4c..c5c9106057d 100644
--- a/libstdc++-v3/testsuite/23_containers/multiset/invalidation/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/multiset/invalidation/1.cc
@@ -1,6 +1,6 @@
// Multiset iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -45,8 +45,13 @@ void test01()
VERIFY(!finish._M_dereferenceable() && !finish._M_singular());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<int> >;
+#endif
+
int main()
{
test01();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/multiset/invalidation/2.cc b/libstdc++-v3/testsuite/23_containers/multiset/invalidation/2.cc
index fbca3c476fe..e0168170878 100644
--- a/libstdc++-v3/testsuite/23_containers/multiset/invalidation/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/multiset/invalidation/2.cc
@@ -1,6 +1,6 @@
// Multiset iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -25,11 +25,10 @@
using __gnu_debug::multiset;
using std::advance;
-bool test = true;
-
// Erase
void test02()
{
+ bool test __attribute__((unused)) = true;
multiset<int> v;
for (int i = 0; i < 20; ++i)
v.insert(i);
@@ -64,8 +63,13 @@ void test02()
VERIFY(!finish._M_singular() && !finish._M_dereferenceable());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<int> >;
+#endif
+
int main()
{
test02();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/multiset/modifiers/swap.cc b/libstdc++-v3/testsuite/23_containers/multiset/modifiers/swap.cc
new file mode 100644
index 00000000000..b9632cb88ae
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/multiset/modifiers/swap.cc
@@ -0,0 +1,67 @@
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <set>
+#include <testsuite_hooks.h>
+
+struct T { int i; };
+
+int swap_calls;
+
+namespace std
+{
+ template<>
+ void
+ multiset<T>::swap(multiset<T>&)
+ { ++swap_calls; }
+}
+
+// Should use multiset specialization for swap.
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+ std::multiset<T> A;
+ std::multiset<T> B;
+ swap_calls = 0;
+ std::swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+// Should use multiset specialization for swap.
+void test02()
+{
+ bool test __attribute__((unused)) = true;
+ using namespace std;
+ multiset<T> A;
+ multiset<T> B;
+ swap_calls = 0;
+ swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<T> >;
+#endif
+
+// See c++/13658 for background info.
+int main()
+{
+ test01();
+ test02();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/23_containers/priority_queue/members/7161.cc b/libstdc++-v3/testsuite/23_containers/priority_queue/members/7161.cc
index 9cea073706d..613a924c84a 100644
--- a/libstdc++-v3/testsuite/23_containers/priority_queue/members/7161.cc
+++ b/libstdc++-v3/testsuite/23_containers/priority_queue/members/7161.cc
@@ -1,6 +1,6 @@
// 2002-06-28 pme
-// Copyright (C) 2002 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -43,6 +43,11 @@ test03()
pq.pop();
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test03();
diff --git a/libstdc++-v3/testsuite/23_containers/queue/members/7157.cc b/libstdc++-v3/testsuite/23_containers/queue/members/7157.cc
index f1da7958045..b0875d06205 100644
--- a/libstdc++-v3/testsuite/23_containers/queue/members/7157.cc
+++ b/libstdc++-v3/testsuite/23_containers/queue/members/7157.cc
@@ -1,6 +1,6 @@
// 2002-06-28 pme
-// Copyright (C) 2002 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -34,6 +34,12 @@ test01()
q.pop();
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+template class __gnu_cxx::__mt_alloc<int*>;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/23_containers/set/invalidation/1.cc b/libstdc++-v3/testsuite/23_containers/set/invalidation/1.cc
index 5a58f6fad71..071d9e22c20 100644
--- a/libstdc++-v3/testsuite/23_containers/set/invalidation/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/set/invalidation/1.cc
@@ -1,6 +1,6 @@
// Set iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -45,8 +45,13 @@ void test01()
VERIFY(!finish._M_dereferenceable() && !finish._M_singular());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<int> >;
+#endif
+
int main()
{
test01();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/set/invalidation/2.cc b/libstdc++-v3/testsuite/23_containers/set/invalidation/2.cc
index 25277d843b9..0978b815f5b 100644
--- a/libstdc++-v3/testsuite/23_containers/set/invalidation/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/set/invalidation/2.cc
@@ -1,6 +1,6 @@
// Set iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -25,11 +25,11 @@
using __gnu_debug::set;
using std::advance;
-bool test = true;
-
// Erase
void test02()
{
+ bool test __attribute__((unused)) = true;
+
set<int> v;
for (int i = 0; i < 20; ++i)
v.insert(i);
@@ -64,8 +64,13 @@ void test02()
VERIFY(!finish._M_singular() && !finish._M_dereferenceable());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<int> >;
+#endif
+
int main()
{
test02();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/set/modifiers/swap.cc b/libstdc++-v3/testsuite/23_containers/set/modifiers/swap.cc
new file mode 100644
index 00000000000..dcc69c99b3a
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/set/modifiers/swap.cc
@@ -0,0 +1,67 @@
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <set>
+#include <testsuite_hooks.h>
+
+struct T { int i; };
+
+int swap_calls;
+
+namespace std
+{
+ template<>
+ void
+ set<T>::swap(set<T>&)
+ { ++swap_calls; }
+}
+
+// Should use set specialization for swap.
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+ std::set<T> A;
+ std::set<T> B;
+ swap_calls = 0;
+ std::swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+// Should use set specialization for swap.
+void test02()
+{
+ bool test __attribute__((unused)) = true;
+ using namespace std;
+ set<T> A;
+ set<T> B;
+ swap_calls = 0;
+ swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<T> >;
+#endif
+
+// See c++/13658 for background info.
+int main()
+{
+ test01();
+ test02();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/23_containers/set/operators/1_neg.cc b/libstdc++-v3/testsuite/23_containers/set/operators/1_neg.cc
index e178b8c3918..8af78f30837 100644
--- a/libstdc++-v3/testsuite/23_containers/set/operators/1_neg.cc
+++ b/libstdc++-v3/testsuite/23_containers/set/operators/1_neg.cc
@@ -39,5 +39,6 @@ void test01()
test &= itr == setByName.end(); // { dg-error "no" }
}
-// { dg-error "candidates are" "" { target *-*-* } 285 }
-// { dg-error "candidates are" "" { target *-*-* } 289 }
+// { dg-error "candidates are" "" { target *-*-* } 282 }
+// { dg-error "candidates are" "" { target *-*-* } 286 }
+
diff --git a/libstdc++-v3/testsuite/23_containers/stack/members/7158.cc b/libstdc++-v3/testsuite/23_containers/stack/members/7158.cc
index 4bfc1015486..bbb5bbd142a 100644
--- a/libstdc++-v3/testsuite/23_containers/stack/members/7158.cc
+++ b/libstdc++-v3/testsuite/23_containers/stack/members/7158.cc
@@ -1,6 +1,6 @@
// 2002-06-28 pme
-// Copyright (C) 2002 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -34,6 +34,12 @@ test02()
st.pop();
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int*>;
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test02();
diff --git a/libstdc++-v3/testsuite/23_containers/vector/bool/6886.cc b/libstdc++-v3/testsuite/23_containers/vector/bool/6886.cc
index f56c21dd544..88cac68d665 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/bool/6886.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/bool/6886.cc
@@ -1,6 +1,6 @@
// 2002-03-05 Stephen M. Webb <stephen.webb@bregmasoft.com>
-// Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -47,6 +47,11 @@ void test02()
VERIFY( num == 4 );
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<unsigned long>;
+#endif
+
int main()
{
test02();
diff --git a/libstdc++-v3/testsuite/23_containers/vector/bool/clear_allocator.cc b/libstdc++-v3/testsuite/23_containers/vector/bool/clear_allocator.cc
new file mode 100644
index 00000000000..ff177162674
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/vector/bool/clear_allocator.cc
@@ -0,0 +1,88 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <vector>
+#include <ext/new_allocator.h>
+
+using namespace std;
+using __gnu_cxx::new_allocator;
+
+template<typename T>
+ class clear_alloc : public new_allocator<T>
+ {
+ public:
+
+ template <typename T1>
+ struct rebind
+ { typedef clear_alloc<T1> other; };
+
+ virtual void clear() throw()
+ { }
+
+ clear_alloc() throw()
+ { }
+
+ clear_alloc(clear_alloc const& _wa) throw()
+ { }
+
+ template<typename T1>
+ clear_alloc(clear_alloc<T1> const& _wa) throw()
+ { }
+
+ virtual ~clear_alloc() throw()
+ { this->clear(); }
+
+ T* allocate(typename new_allocator<T>::size_type n, const void *hint = 0)
+ {
+ this->clear();
+ return new_allocator<T>::allocate(n, hint);
+ }
+
+ void deallocate(T *ptr, typename new_allocator<T>::size_type n)
+ {
+ this->clear();
+ new_allocator<T>::deallocate(ptr, n);
+ }
+ };
+
+template<typename Container>
+ void Check_Container()
+ {
+ Container* pic = new Container;
+ int x = 230;
+
+ while (x--)
+ {
+ pic->push_back(x);
+ }
+
+ pic->get_allocator();
+
+ // The following has led to infinite recursions or cores.
+ pic->clear();
+
+ delete pic;
+ }
+
+
+int main()
+{
+ Check_Container<std::vector<bool, clear_alloc<bool> > >();
+ return 0;
+}
+
diff --git a/libstdc++-v3/testsuite/23_containers/vector/capacity/1.cc b/libstdc++-v3/testsuite/23_containers/vector/capacity/1.cc
index 797a2fc0f8a..8ac1f0f7c7f 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/capacity/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/capacity/1.cc
@@ -1,7 +1,7 @@
// 1999-05-07
// bkoz
-// Copyright (C) 1999, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -54,6 +54,11 @@ void test01()
VERIFY( sz01 == sz02 );
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<A<B> >;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/23_containers/vector/capacity/8230.cc b/libstdc++-v3/testsuite/23_containers/vector/capacity/8230.cc
index fe706a4b56a..759fc7507d3 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/capacity/8230.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/capacity/8230.cc
@@ -1,7 +1,7 @@
// 1999-05-07
// bkoz
-// Copyright (C) 1999, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -71,6 +71,11 @@ void test02()
}
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test02();
diff --git a/libstdc++-v3/testsuite/23_containers/vector/cons/1.cc b/libstdc++-v3/testsuite/23_containers/vector/cons/1.cc
index e2f6587ab00..5c212db9b65 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/cons/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/cons/1.cc
@@ -1,6 +1,6 @@
// 1999-06-29 bkoz
-// Copyright (C) 1999-2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999-2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -40,9 +40,13 @@ void test01()
vec01 = vec02;
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<A<B> >;
+#endif
+
int main()
{
test01();
-
return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/vector/cons/2.cc b/libstdc++-v3/testsuite/23_containers/vector/cons/2.cc
index 03f84d8b231..ecee79d85d5 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/cons/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/cons/2.cc
@@ -1,6 +1,6 @@
// 1999-06-29 bkoz
-// Copyright (C) 1999-2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999-2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -41,9 +41,15 @@ void test02()
std::vector<int> v2(v1);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+template class __gnu_cxx::__mt_alloc<double>;
+template class __gnu_cxx::__mt_alloc<A<B> >;
+#endif
+
int main()
{
test02();
-
return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/vector/cons/3.cc b/libstdc++-v3/testsuite/23_containers/vector/cons/3.cc
index 5c41e654833..e228e7b6305 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/cons/3.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/cons/3.cc
@@ -1,6 +1,6 @@
// 1999-06-29 bkoz
-// Copyright (C) 1999-2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999-2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -46,9 +46,13 @@ test03()
VERIFY(std::equal(B, B + M, v5.begin()));
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test03();
-
return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/vector/cons/6513.cc b/libstdc++-v3/testsuite/23_containers/vector/cons/6513.cc
index 76801831cf3..593b3771554 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/cons/6513.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/cons/6513.cc
@@ -1,6 +1,6 @@
// 1999-06-29 bkoz
-// Copyright (C) 1999-2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999-2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -32,9 +32,13 @@ void test04()
std::vector<std::string> strings(c_strings, c_strings + 5);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::string>;
+#endif
+
int main()
{
test04();
-
return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/vector/cons/clear_allocator.cc b/libstdc++-v3/testsuite/23_containers/vector/cons/clear_allocator.cc
new file mode 100644
index 00000000000..5cc878e6c59
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/vector/cons/clear_allocator.cc
@@ -0,0 +1,88 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <vector>
+#include <ext/new_allocator.h>
+
+using namespace std;
+using __gnu_cxx::new_allocator;
+
+template<typename T>
+ class clear_alloc : public new_allocator<T>
+ {
+ public:
+
+ template <typename T1>
+ struct rebind
+ { typedef clear_alloc<T1> other; };
+
+ virtual void clear()
+ { }
+
+ clear_alloc()
+ { }
+
+ clear_alloc(clear_alloc const& _wa)
+ { }
+
+ template<typename T1>
+ clear_alloc(clear_alloc<T1> const& _wa)
+ { }
+
+ virtual ~clear_alloc()
+ { this->clear(); }
+
+ T* allocate(typename new_allocator<T>::size_type n, const void *hint = 0)
+ {
+ this->clear();
+ return new_allocator<T>::allocate(n, hint);
+ }
+
+ void deallocate(T *ptr, typename new_allocator<T>::size_type n)
+ {
+ this->clear();
+ new_allocator<T>::deallocate(ptr, n);
+ }
+ };
+
+template<typename Container>
+ void Check_Container()
+ {
+ Container* pic = new Container;
+ int x = 230;
+
+ while (x--)
+ {
+ pic->push_back(x);
+ }
+
+ pic->get_allocator();
+
+ // The following has led to infinite recursions or cores.
+ pic->clear();
+
+ delete pic;
+ }
+
+
+int main()
+{
+ Check_Container<std::vector<int, clear_alloc<int> > >();
+ return 0;
+}
+
diff --git a/libstdc++-v3/testsuite/23_containers/vector/element_access/1.cc b/libstdc++-v3/testsuite/23_containers/vector/element_access/1.cc
index 89026225f9a..fce524d9c47 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/element_access/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/element_access/1.cc
@@ -1,7 +1,7 @@
// 2000-09-06
// bkoz
-// Copyright (C) 2000, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -55,9 +55,13 @@ bool test01()
return test;
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<A<B> >;
+#endif
+
int main()
{
test01();
-
return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/vector/invalidation/1.cc b/libstdc++-v3/testsuite/23_containers/vector/invalidation/1.cc
index 833ec544d4b..dcd9d7ff4df 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/invalidation/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/invalidation/1.cc
@@ -1,6 +1,6 @@
// Vector iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -19,7 +19,7 @@
// USA.
// We need to be pedantic about reallocations for this testcase to be correct.
-// { dg-options "-D_GLIBCXX_ASSERT -D_GLIBCXX_DEBUG_PEDANTIC" }
+// { dg-options "-D_GLIBCXX_DEBUG_PEDANTIC" }
#ifndef _GLIBCXX_DEBUG_PEDANTIC
# define _GLIBCXX_DEBUG_PEDANTIC 1
@@ -53,8 +53,13 @@ void test01()
VERIFY(i._M_singular());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test01();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/vector/invalidation/2.cc b/libstdc++-v3/testsuite/23_containers/vector/invalidation/2.cc
index 6526504c30d..d79a2ee3ac7 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/invalidation/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/invalidation/2.cc
@@ -1,6 +1,6 @@
// Vector iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -19,7 +19,7 @@
// USA.
// We need to be pedantic about reallocations for this testcase to be correct.
-// { dg-options "-D_GLIBCXX_ASSERT -D_GLIBCXX_DEBUG_PEDANTIC" }
+// { dg-options "-D_GLIBCXX_DEBUG_PEDANTIC" }
#ifndef _GLIBCXX_DEBUG_PEDANTIC
# define _GLIBCXX_DEBUG_PEDANTIC 1
@@ -58,8 +58,13 @@ void test02()
VERIFY(before._M_singular());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test02();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/vector/invalidation/3.cc b/libstdc++-v3/testsuite/23_containers/vector/invalidation/3.cc
index b34af6448ff..0414a337ea0 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/invalidation/3.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/invalidation/3.cc
@@ -1,6 +1,6 @@
// Vector iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -19,7 +19,7 @@
// USA.
// We need to be pedantic about reallocations for this testcase to be correct.
-// { dg-options "-D_GLIBCXX_ASSERT -D_GLIBCXX_DEBUG_PEDANTIC" }
+// { dg-options "-D_GLIBCXX_DEBUG_PEDANTIC" }
#ifndef _GLIBCXX_DEBUG_PEDANTIC
# define _GLIBCXX_DEBUG_PEDANTIC 1
@@ -83,8 +83,13 @@ void test03()
VERIFY(before._M_singular());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test03();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/vector/invalidation/4.cc b/libstdc++-v3/testsuite/23_containers/vector/invalidation/4.cc
index 0a9628ff4ed..184db02a225 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/invalidation/4.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/invalidation/4.cc
@@ -1,6 +1,6 @@
// Vector iterator invalidation tests
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -19,7 +19,7 @@
// USA.
// We need to be pedantic about reallocations for this testcase to be correct.
-// { dg-options "-D_GLIBCXX_ASSERT -D_GLIBCXX_DEBUG_PEDANTIC" }
+// { dg-options "-D_GLIBCXX_DEBUG_PEDANTIC" }
#ifndef _GLIBCXX_DEBUG_PEDANTIC
# define _GLIBCXX_DEBUG_PEDANTIC 1
@@ -60,8 +60,13 @@ void test04()
VERIFY(before._M_singular());
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test04();
- return !test;
+ return 0;
}
diff --git a/libstdc++-v3/testsuite/23_containers/vector/modifiers/1.cc b/libstdc++-v3/testsuite/23_containers/vector/modifiers/1.cc
index 20fb52d317a..52374e70d80 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/modifiers/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/modifiers/1.cc
@@ -1,6 +1,6 @@
// 1999-11-09 bkoz
-// Copyright (C) 1999, 2001 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -49,6 +49,12 @@ test01()
vec02.insert(vec02.begin(), pnp01, pnp01 + 1);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+template class __gnu_cxx::__mt_alloc<A<B> >;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/23_containers/vector/modifiers/2.cc b/libstdc++-v3/testsuite/23_containers/vector/modifiers/2.cc
index b6d37396e02..0e68bfa6989 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/modifiers/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/modifiers/2.cc
@@ -1,6 +1,6 @@
// 1999-11-09 bkoz
-// Copyright (C) 1999, 2001 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -55,6 +55,11 @@ test03()
VERIFY((v4.size() == M) && (M != N));
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test03();
diff --git a/libstdc++-v3/testsuite/23_containers/vector/modifiers/swap.cc b/libstdc++-v3/testsuite/23_containers/vector/modifiers/swap.cc
new file mode 100644
index 00000000000..4e49635bc22
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/vector/modifiers/swap.cc
@@ -0,0 +1,67 @@
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <vector>
+#include <testsuite_hooks.h>
+
+struct T { int i; };
+
+int swap_calls;
+
+namespace std
+{
+ template<>
+ void
+ vector<T, allocator<T> >::swap(vector<T, allocator<T> >&)
+ { ++swap_calls; }
+}
+
+// Should use vector specialization for swap.
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+ std::vector<T> A;
+ std::vector<T> B;
+ swap_calls = 0;
+ std::swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+// Should use vector specialization for swap.
+void test02()
+{
+ bool test __attribute__((unused)) = true;
+ using namespace std;
+ vector<T> A;
+ vector<T> B;
+ swap_calls = 0;
+ swap(A, B);
+ VERIFY(1 == swap_calls);
+}
+
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+template class __gnu_cxx::__mt_alloc<T>;
+#endif
+
+// See c++/13658 for background info.
+int main()
+{
+ test01();
+ test02();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/23_containers/vector/resize/1.cc b/libstdc++-v3/testsuite/23_containers/vector/resize/1.cc
index c8e07cd54c7..b5b31e8d1ae 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/resize/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/resize/1.cc
@@ -1,7 +1,7 @@
// 1999-05-07
// bkoz
-// Copyright (C) 1999, 2002 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -24,7 +24,7 @@
// XXX This test will not work for irix6 because of bug(s) in libc malloc
// XXX for very large allocations. However -lmalloc seems to work.
// See http://gcc.gnu.org/ml/libstdc++/2002-12/msg00131.html
-// { dg-options "-D_GLIBCXX_ASSERT -lmalloc" { target mips*-*-irix6* } }
+// { dg-options "-lmalloc" { target mips*-*-irix6* } }
#include <vector>
#include <stdexcept>
@@ -50,6 +50,11 @@ void test01()
VERIFY( test );
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/24_iterators/back_insert_iterator.cc b/libstdc++-v3/testsuite/24_iterators/back_insert_iterator.cc
index 678feb8b245..2ca14a78613 100644
--- a/libstdc++-v3/testsuite/24_iterators/back_insert_iterator.cc
+++ b/libstdc++-v3/testsuite/24_iterators/back_insert_iterator.cc
@@ -1,6 +1,6 @@
// 2001-06-21 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -63,6 +63,11 @@ public:
test_dm(): std::back_insert_iterator<std::list<int> >(l), p(container) { }
};
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/24_iterators/front_insert_iterator.cc b/libstdc++-v3/testsuite/24_iterators/front_insert_iterator.cc
index 32a694e3acf..9ee2e9fd3fa 100644
--- a/libstdc++-v3/testsuite/24_iterators/front_insert_iterator.cc
+++ b/libstdc++-v3/testsuite/24_iterators/front_insert_iterator.cc
@@ -1,6 +1,6 @@
// 2001-06-21 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -62,6 +62,11 @@ public:
test_dm(): std::front_insert_iterator<std::list<int> >(l), p(container) { }
};
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/24_iterators/insert_iterator.cc b/libstdc++-v3/testsuite/24_iterators/insert_iterator.cc
index 7fca06092d8..322bccf4ea3 100644
--- a/libstdc++-v3/testsuite/24_iterators/insert_iterator.cc
+++ b/libstdc++-v3/testsuite/24_iterators/insert_iterator.cc
@@ -1,6 +1,6 @@
// 2001-06-21 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -70,6 +70,11 @@ public:
test_dm(): std::insert_iterator<std::list<int> >(l, i), p(container) { }
};
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/24_iterators/iterator.cc b/libstdc++-v3/testsuite/24_iterators/iterator.cc
index 51360b09cdb..b3f4c67ed89 100644
--- a/libstdc++-v3/testsuite/24_iterators/iterator.cc
+++ b/libstdc++-v3/testsuite/24_iterators/iterator.cc
@@ -2,7 +2,7 @@
// 24.3.1 Iterator traits
// (basic_string and vector implementations)
//
-// Copyright (C) 1999, 2003 Free Software Foundation, Inc.
+// Copyright (C) 1999, 2003, 2004 Free Software Foundation, Inc.
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
@@ -588,6 +588,12 @@ test6642()
return it - cit;
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+template class __gnu_cxx::__mt_alloc<std::string>;
+#endif
+
int
main()
{
diff --git a/libstdc++-v3/testsuite/24_iterators/rel_ops.cc b/libstdc++-v3/testsuite/24_iterators/rel_ops.cc
index 65034b2519f..b11af2a0302 100644
--- a/libstdc++-v3/testsuite/24_iterators/rel_ops.cc
+++ b/libstdc++-v3/testsuite/24_iterators/rel_ops.cc
@@ -1,6 +1,6 @@
// 2002-04-13 Paolo Carlini <pcarlini@unitus.it>
-// Copyright (C) 2002 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -38,6 +38,11 @@ void test01()
vi >= v.begin();
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/25_algorithms/equal.cc b/libstdc++-v3/testsuite/25_algorithms/equal.cc
index b4a322f4dff..d9743bedc10 100644
--- a/libstdc++-v3/testsuite/25_algorithms/equal.cc
+++ b/libstdc++-v3/testsuite/25_algorithms/equal.cc
@@ -33,9 +33,13 @@ bool operator==(X, X) { return true; }
// Not implemented on purpose. { dg-do link }
bool operator!=(X, X);
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<X>;
+#endif
+
int main()
{
std::vector<X> v, w;
-
return !std::equal(v.begin(), v.end(), w.begin());
}
diff --git a/libstdc++-v3/testsuite/25_algorithms/min_max.cc b/libstdc++-v3/testsuite/25_algorithms/min_max.cc
index bd07009c015..8e5afb18829 100644
--- a/libstdc++-v3/testsuite/25_algorithms/min_max.cc
+++ b/libstdc++-v3/testsuite/25_algorithms/min_max.cc
@@ -1,6 +1,6 @@
// 2000-03-29 sss/bkoz
-// Copyright (C) 2000, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
diff --git a/libstdc++-v3/testsuite/25_algorithms/rotate.cc b/libstdc++-v3/testsuite/25_algorithms/rotate.cc
index 2c0487706ea..d37209d19d1 100644
--- a/libstdc++-v3/testsuite/25_algorithms/rotate.cc
+++ b/libstdc++-v3/testsuite/25_algorithms/rotate.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -71,6 +71,11 @@ test03()
VERIFY(std::equal(A, A + N, D));
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int
main()
{
diff --git a/libstdc++-v3/testsuite/25_algorithms/unique/1.cc b/libstdc++-v3/testsuite/25_algorithms/unique/1.cc
index 6c383bb4af4..658e26b0fef 100644
--- a/libstdc++-v3/testsuite/25_algorithms/unique/1.cc
+++ b/libstdc++-v3/testsuite/25_algorithms/unique/1.cc
@@ -1,6 +1,6 @@
// 2001-07-19 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -23,6 +23,11 @@
#include <list>
#include <algorithm>
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
using namespace std;
diff --git a/libstdc++-v3/testsuite/25_algorithms/unique/2.cc b/libstdc++-v3/testsuite/25_algorithms/unique/2.cc
index 55920fbe388..65b09b5a53e 100644
--- a/libstdc++-v3/testsuite/25_algorithms/unique/2.cc
+++ b/libstdc++-v3/testsuite/25_algorithms/unique/2.cc
@@ -1,6 +1,6 @@
// 2003-10-14 Paolo Carlini <pcarlini@unitus.it>
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -86,6 +86,11 @@ void test03()
VERIFY( equal(coll2.begin(), pos, B3) );
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/26_numerics/cmath/overloads.C b/libstdc++-v3/testsuite/26_numerics/cmath/overloads.cc
index 4d41a9640b4..4d41a9640b4 100644
--- a/libstdc++-v3/testsuite/26_numerics/cmath/overloads.C
+++ b/libstdc++-v3/testsuite/26_numerics/cmath/overloads.cc
diff --git a/libstdc++-v3/testsuite/26_numerics/complex/13450.cc b/libstdc++-v3/testsuite/26_numerics/complex/13450.cc
new file mode 100644
index 00000000000..50f4bad3b93
--- /dev/null
+++ b/libstdc++-v3/testsuite/26_numerics/complex/13450.cc
@@ -0,0 +1,75 @@
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 26.2.8 complex transcendentals
+
+#include <complex>
+#include <limits>
+#include <testsuite_hooks.h>
+
+template<typename T>
+ void test01_do(T a, T b)
+ {
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+ typedef complex<T> cplx;
+
+ T eps = numeric_limits<T>::epsilon() * 100;
+
+ cplx ref = pow(cplx(a, T()), cplx(b, T()));
+ cplx res1 = pow(a, cplx(b, T()));
+ cplx res2 = pow(cplx(a, T()), b);
+
+ VERIFY( abs(ref - res1) < eps );
+ VERIFY( abs(ref - res2) < eps );
+ VERIFY( abs(res1 - res2) < eps );
+ }
+
+// libstdc++/13450
+void test01()
+{
+ float f1 = -1.0f;
+ float f2 = 0.5f;
+ test01_do(f1, f2);
+
+ f1 = -3.2f;
+ f2 = 1.4f;
+ test01_do(f1, f2);
+
+ double d1 = -1.0;
+ double d2 = 0.5;
+ test01_do(d1, d2);
+
+ d1 = -3.2;
+ d2 = 1.4;
+ test01_do(d1, d2);
+
+ long double ld1 = -1.0l;
+ long double ld2 = 0.5l;
+ test01_do(ld1, ld2);
+
+ ld1 = -3.2l;
+ ld2 = 1.4l;
+ test01_do(ld1, ld2);
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/26_numerics/complex/pow.C b/libstdc++-v3/testsuite/26_numerics/complex/pow.cc
index c3f8479828d..58d0fc5909b 100644
--- a/libstdc++-v3/testsuite/26_numerics/complex/pow.C
+++ b/libstdc++-v3/testsuite/26_numerics/complex/pow.cc
@@ -6,9 +6,9 @@
int main()
{
- std::complex<double> z(0, 1) ;
+ std::complex<double> z;
- VERIFY(pow(z, 1.0/3.0) == 0.0);
+ VERIFY( pow(z, 1.0/3.0) == 0.0 );
return 0;
}
diff --git a/libstdc++-v3/testsuite/26_numerics/complex_value.cc b/libstdc++-v3/testsuite/26_numerics/complex_value.cc
index edb8f33c544..03f26284092 100644
--- a/libstdc++-v3/testsuite/26_numerics/complex_value.cc
+++ b/libstdc++-v3/testsuite/26_numerics/complex_value.cc
@@ -1,8 +1,8 @@
-// { dg-options "-D_GLIBCXX_ASSERT -O0" }
+// { dg-options "-O0" }
// 2000-11-20
// Benjamin Kosnik bkoz@redhat.com
-// Copyright (C) 2000, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
diff --git a/libstdc++-v3/testsuite/26_numerics/valarray_subset_assignment.cc b/libstdc++-v3/testsuite/26_numerics/valarray_subset_assignment.cc
new file mode 100644
index 00000000000..9298bfb046f
--- /dev/null
+++ b/libstdc++-v3/testsuite/26_numerics/valarray_subset_assignment.cc
@@ -0,0 +1,88 @@
+// 2004-01-03 Jerry Quinn <jlquinn@optonline.net>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+// PR 3247
+
+// This is DR-253. Test for accessible assignment-operators.
+#include <valarray>
+#include <testsuite_hooks.h>
+
+bool check_array(std::valarray<double>& a, double b[])
+{
+ for (int i=0; i < a.size(); i++)
+ if (a[i] != b[i]) return false;
+ return true;
+}
+
+int main()
+{
+ double dvar = 1.0;
+ std::valarray<double> val_d(10); // 0 1 2 3 4 5 6 7 8 9
+ std::valarray<double> val_d1(10); // 10 9 8 7 6 5 4 3 2 1
+
+ for (int i=0; i< 10; i++) { val_d[i] = 10; val_d1[i] = i; }
+ std::valarray<double> val_c(val_d);
+ std::valarray<double> val_f(val_d);
+ std::valarray<double> val_g(val_d);
+
+ std::slice slc(1, 3, 3); // 1 4 7
+ val_d[slc] = val_d1[slc];
+
+ double ans1[10] = {10, 1, 10, 10, 4, 10, 10, 7, 10, 10};
+ VERIFY(check_array(val_d, ans1));
+
+ std::valarray<std::size_t> val_size(2);
+ std::valarray<std::size_t> val_stride(2);
+ val_size[0] = 2; val_size[1] = 3;
+ val_stride[0] = 4; val_stride[1] = 1;
+
+ std::gslice gslc(1, val_size, val_stride);
+ val_c[gslc] = val_d1[gslc];
+
+ double ans2[10] = {10, 1, 2, 3, 10, 5, 6, 7, 10, 10};
+ VERIFY(check_array(val_c, ans2));
+
+ std::valarray<bool> val_b(false, 10);
+ val_b[2] = val_b[6] = val_b[9] = true;
+ val_f[val_b] = val_d1[val_b];
+
+ double ans3[10] = {10, 10, 2, 10, 10, 10, 6, 10, 10, 9};
+ VERIFY(check_array(val_f, ans3));
+
+ size_t addr[] = {1, 2, 3, 4, 5};
+ size_t addr1[] = {2, 7, 1, 9, 4};
+ std::valarray<std::size_t> val_indirect(addr, 5);
+ std::valarray<std::size_t> val_indirect1(addr1, 5);
+ val_g[val_indirect] = val_d1[val_indirect1];
+
+ double ans4[10] = {10, 2, 7, 1, 9, 4, 10, 10, 10, 10};
+ VERIFY(check_array(val_g, ans4));
+
+ return 0;
+};
diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/9964.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/9964.cc
index d51a5b1167b..bd74fad34bf 100644
--- a/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/9964.cc
+++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/close/char/9964.cc
@@ -59,7 +59,7 @@ void test_07()
filebuf fb;
sleep(1);
- filebuf* ret = fb.open(name, ios_base::out | ios_base::trunc);
+ filebuf* ret = fb.open(name, ios_base::in | ios_base::out);
VERIFY( ret != NULL );
VERIFY( fb.is_open() );
@@ -67,7 +67,7 @@ void test_07()
fb.sputc('a');
ret = fb.close();
- VERIFY( ret == NULL );
+ VERIFY( ret != NULL );
VERIFY( !fb.is_open() );
}
diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/9507.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/9507.cc
index 601e570ae25..761f9e585f0 100644
--- a/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/9507.cc
+++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/open/char/9507.cc
@@ -48,12 +48,17 @@ void test_06()
std::filebuf fbuf;
fbuf.open(name, std::ios_base::in);
fbuf.sgetc();
+ sleep(2);
fbuf.close();
exit(0);
}
std::filebuf fbuf;
- std::filebuf* r = fbuf.open(name, std::ios_base::out | std::ios_base::ate);
+ sleep(1);
+ std::filebuf* r = fbuf.open(name,
+ std::ios_base::in
+ | std::ios_base::out
+ | std::ios_base::ate);
VERIFY( !fbuf.is_open() );
VERIFY( r == NULL );
}
diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/char/13858.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/char/13858.cc
new file mode 100644
index 00000000000..7e01b44c1e7
--- /dev/null
+++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/char/13858.cc
@@ -0,0 +1,70 @@
+// 2004-02-14 Petur Runolfsson <peturr02@ru.is>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 27.8.1.4 Overridden virtual functions
+
+#include <fstream>
+#include <locale>
+
+class Cvt : public std::codecvt<char, char, std::mbstate_t>
+{
+protected:
+ virtual std::codecvt_base::result
+ do_out(std::mbstate_t&, const char* from, const char*,
+ const char*& from_next, char* to, char*, char*& to_next) const
+ {
+ from_next = from;
+ to_next = to;
+ return std::codecvt_base::error;
+ }
+
+ virtual bool
+ do_always_noconv() const throw()
+ { return false; }
+};
+
+// libstdc++/13858
+void test01()
+{
+ using namespace std;
+
+ filebuf fb;
+ fb.pubimbue(locale(locale::classic(), new Cvt));
+ fb.open("tmp_13858_char", ios_base::out);
+
+ try
+ {
+ fb.sputc('a');
+ fb.sputc('b');
+ fb.pubimbue(locale::classic());
+ fb.sputc('c');
+ fb.pubsync();
+ fb.close();
+ }
+ catch (std::exception&)
+ {
+ }
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc
index 9904f194109..866c95529e1 100644
--- a/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc
+++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc
@@ -1,6 +1,6 @@
// 2001-05-21 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -52,7 +52,7 @@ void test14()
{
using namespace std;
bool test __attribute__((unused)) = true;
-
+
locale loc = locale::classic();
loc = locale(loc, new errorcvt);
@@ -60,9 +60,16 @@ void test14()
fbuf1.pubimbue(loc);
fbuf1.pubsetbuf(0, 0);
fbuf1.open(name_07, ios_base::out | ios_base::trunc);
- streamsize n = fbuf1.sputn("onne", 4);
- VERIFY( n == 0 );
- fbuf1.close();
+
+ try
+ {
+ fbuf1.sputn("onne", 4);
+ fbuf1.close();
+ VERIFY( false );
+ }
+ catch (std::exception&)
+ {
+ }
}
int main()
diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc
new file mode 100644
index 00000000000..b76dc3bf4f9
--- /dev/null
+++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc
@@ -0,0 +1,71 @@
+// 2004-02-14 Petur Runolfsson <peturr02@ru.is>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 27.8.1.4 Overridden virtual functions
+
+#include <fstream>
+#include <locale>
+
+class Cvt : public std::codecvt<wchar_t, char, std::mbstate_t>
+{
+protected:
+ virtual std::codecvt_base::result
+ do_out(std::mbstate_t&, const wchar_t* from, const wchar_t*,
+ const wchar_t*& from_next, char* to, char*,
+ char*& to_next) const
+ {
+ from_next = from;
+ to_next = to;
+ return std::codecvt_base::error;
+ }
+
+ virtual bool
+ do_always_noconv() const throw()
+ { return false; }
+};
+
+// libstdc++/13858
+void test01()
+{
+ using namespace std;
+
+ wfilebuf fb;
+ fb.pubimbue(locale(locale::classic(), new Cvt));
+ fb.open("tmp_13858_wchar_t", ios_base::out);
+
+ try
+ {
+ fb.sputc(L'a');
+ fb.sputc(L'b');
+ fb.pubimbue(locale::classic());
+ fb.sputc(L'c');
+ fb.pubsync();
+ fb.close();
+ }
+ catch (std::exception&)
+ {
+ }
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc
index 3088e5ff944..343e325e70b 100644
--- a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc
+++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -24,8 +24,8 @@
void test03()
{
using namespace std;
-
bool test __attribute__((unused)) = true;
+
const char* name = "tmp_seekoff_3";
wfilebuf fb;
@@ -33,10 +33,16 @@ void test03()
fb.open(name, ios_base::out);
fb.sputc(0xf001);
- // seekoff should flush the output sequence, which will fail
- // if the output buffer contains illegal characters.
- streampos ret = fb.pubseekoff(0, ios_base::cur);
- VERIFY( ret == streampos(streamoff(-1)) );
+ try
+ {
+ // seekoff should flush the output sequence, which will fail
+ // if the output buffer contains illegal characters.
+ fb.pubseekoff(0, ios_base::cur);
+ VERIFY( false );
+ }
+ catch (std::exception&)
+ {
+ }
}
int main()
diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc
index c543212b19e..41848b76650 100644
--- a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc
+++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -25,8 +25,8 @@
void test01()
{
using namespace std;
-
bool test __attribute__((unused)) = true;
+
const char* name = "tmp_seekpos_1";
wfilebuf fb;
@@ -35,8 +35,14 @@ void test01()
streampos pos = fb.pubseekoff(0, ios_base::beg);
fb.sputc(0xf001);
- streampos ret = fb.pubseekpos(pos);
- VERIFY( ret == streampos(streamoff(-1)) );
+ try
+ {
+ fb.pubseekpos(pos);
+ VERIFY( false );
+ }
+ catch (std::exception&)
+ {
+ }
}
int main()
diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc
index 605e356a8ff..13adfb2a5a6 100644
--- a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc
+++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc
@@ -1,6 +1,6 @@
// 2003-10-07 Petur Runolfsson <peturr02@ru.is>
//
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -131,6 +131,11 @@ void test01()
fb.close();
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::pair<std::fpos<__mbstate_t>, std::size_t> >;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc
index 2839e2f722c..19f0fcee20c 100644
--- a/libstdc++-v3/testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc
+++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc
@@ -53,7 +53,7 @@ void test_01()
else if (fval == 0)
{
filebuf ofbuf;
- ofbuf.open(name, ios_base::out);
+ ofbuf.open(name, ios_base::in|ios_base::out);
VERIFY( ofbuf.is_open() );
sleep(1);
diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/sync/char/9182-1.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/sync/char/9182-1.cc
index 9448c8490c7..91ef1ffe56d 100644
--- a/libstdc++-v3/testsuite/27_io/basic_filebuf/sync/char/9182-1.cc
+++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/sync/char/9182-1.cc
@@ -1,6 +1,6 @@
// 2001-05-21 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -59,10 +59,16 @@ void test13()
filebuf fbuf1;
fbuf1.pubimbue(loc);
fbuf1.open(name_07, ios_base::out | ios_base::trunc);
- fbuf1.sputn("ison", 4);
- int r = fbuf1.pubsync();
- VERIFY( r == -1 );
- fbuf1.close();
+
+ try
+ {
+ fbuf1.sputn("ison", 4);
+ fbuf1.pubsync();
+ VERIFY( false );
+ }
+ catch (std::exception&)
+ {
+ }
}
int main()
diff --git a/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/char/10097.cc b/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/char/10097.cc
index c3c3cf19048..aaaf1d2d7b6 100644
--- a/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/char/10097.cc
+++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/char/10097.cc
@@ -67,7 +67,8 @@ void test16()
else if (fval == 0)
{
filebuf fbout;
- fbout.open(name, ios_base::out);
+ fbout.open(name, ios_base::in|ios_base::out);
+ VERIFY ( fbout.is_open() );
fbout.sputn("0123456789", 10);
fbout.pubsync();
sleep(2);
diff --git a/libstdc++-v3/testsuite/27_io/basic_ios/imbue/14072.cc b/libstdc++-v3/testsuite/27_io/basic_ios/imbue/14072.cc
new file mode 100644
index 00000000000..77fafc7a233
--- /dev/null
+++ b/libstdc++-v3/testsuite/27_io/basic_ios/imbue/14072.cc
@@ -0,0 +1,220 @@
+// 2004-02-09 Petur Runolfsson <peturr02@ru.is>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+// 27.4.4.2 basic_ios member functions
+
+#include <sstream>
+#include <locale>
+
+#include <testsuite_hooks.h>
+#include <testsuite_character.h>
+
+namespace std
+{
+ template<>
+ class ctype<__gnu_test::character>
+ : public locale::facet, public ctype_base
+ {
+ public:
+ typedef __gnu_test::character char_type;
+ explicit ctype(size_t refs = 0)
+ : locale::facet(refs) { }
+
+ bool
+ is(mask m, char_type c) const
+ { return this->do_is(m, c); }
+
+ const char_type*
+ is(const char_type* low, const char_type* high, mask* vec) const
+ { return this->do_is(low, high, vec); }
+
+ const char_type*
+ scan_is(mask m, const char_type* low, const char_type* high) const
+ { return this->do_scan_is(m, low, high); }
+
+ const char_type*
+ scan_not(mask m, const char_type* low, const char_type* high) const
+ { return this->do_scan_not(m, low, high); }
+
+ char_type
+ toupper(char_type c) const
+ { return this->do_toupper(c); }
+
+ const char_type*
+ toupper(char_type* low, const char_type* high) const
+ { return this->do_toupper(low, high); }
+
+ char_type
+ tolower(char_type c) const
+ { return this->do_tolower(c); }
+
+ const char_type*
+ tolower(char_type* low, const char_type* high) const
+ { return this->do_tolower(low, high); }
+
+ char_type
+ widen(char c) const
+ { return this->do_widen(c); }
+
+ const char*
+ widen(const char* low, const char* high, char_type* to) const
+ { return this->do_widen(low, high, to); }
+
+ char
+ narrow(char_type c, char dfault) const
+ { return this->do_narrow(c, dfault); }
+
+ const char_type*
+ narrow(const char_type* low, const char_type* high,
+ char dfault, char* to) const
+ { return this->do_narrow(low, high, dfault, to); }
+
+ static locale::id id;
+
+ protected:
+ ~ctype()
+ { }
+
+ virtual bool
+ do_is(mask m, char_type c) const
+ { return false; }
+
+ virtual const char_type*
+ do_is(const char_type* low, const char_type* high, mask* vec) const
+ {
+ fill_n(vec, high - low, mask());
+ return high;
+ }
+
+ virtual const char_type*
+ do_scan_is(mask m, const char_type* low, const char_type* high) const
+ { return high; }
+
+ virtual const char_type*
+ do_scan_not(mask m, const char_type* low, const char_type* high) const
+ { return low; }
+
+ virtual char_type
+ do_toupper(char_type c) const
+ { return c; }
+
+ virtual const char_type*
+ do_toupper(char_type* low, const char_type* high) const
+ { return high; }
+
+ virtual char_type
+ do_tolower(char_type c) const
+ { return c; }
+
+ virtual const char_type*
+ do_tolower(char_type* low, const char_type* high) const
+ { return high; }
+
+ virtual char_type
+ do_widen(char c) const
+ { return __gnu_test::character::from_char(c); }
+
+ virtual const char*
+ do_widen(const char* low, const char* high, char_type* dest) const
+ {
+ transform(low, high, dest, &__gnu_test::character::from_char);
+ return high;
+ }
+
+ virtual char
+ do_narrow(char_type, char dfault) const
+ { return dfault; }
+
+ virtual const char_type*
+ do_narrow(const char_type* low, const char_type* high,
+ char dfault, char* dest) const
+ {
+ fill_n(dest, high - low, dfault);
+ return high;
+ }
+ };
+
+ locale::id ctype<__gnu_test::character>::id;
+} // namespace std
+
+// libstdc++/14072
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+ using namespace std;
+
+ locale loc;
+ loc = locale(loc, new ctype<__gnu_test::character>());
+ loc = locale(loc, new num_get<__gnu_test::character>());
+ loc = locale(loc, new num_put<__gnu_test::character>());
+
+ locale::global(loc);
+ basic_stringstream<__gnu_test::character> s;
+ s << "10\n";
+ s.seekg(0, ios_base::beg);
+ s.imbue(locale::classic());
+ locale::global(locale::classic());
+ loc = locale::classic();
+
+ try
+ {
+ s.widen('\0');
+ }
+ catch (bad_cast&)
+ {
+ }
+
+ s.clear();
+
+ try
+ {
+ int i = 0;
+ s << i;
+ }
+ catch (bad_cast&)
+ {
+ }
+
+ s.clear();
+
+ try
+ {
+ int i = 0;
+ s >> i;
+ }
+ catch (bad_cast&)
+ {
+ }
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/27_io/fpos/14252.cc b/libstdc++-v3/testsuite/27_io/fpos/14252.cc
new file mode 100644
index 00000000000..bc201a213f0
--- /dev/null
+++ b/libstdc++-v3/testsuite/27_io/fpos/14252.cc
@@ -0,0 +1,62 @@
+// 2004-02-24 Paolo Carlini <pcarlini@suse.de>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+// 27.4.3 template class fpos
+
+#include <ios>
+#include <testsuite_hooks.h>
+
+// libstdc++/14252
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+
+ std::streamoff off01 = 10;
+ std::streamoff off02 = 2;
+ std::streamoff off03 = 2004;
+ std::streamoff off04 = 1;
+
+ VERIFY( off01++ == 10 );
+ VERIFY( off01 == 11 );
+
+ VERIFY( ++off02 == 3 );
+ VERIFY( off02 == 3 );
+
+ VERIFY( off03-- == 2004 );
+ VERIFY( off03 == 2003 );
+
+ VERIFY( --off04 == 0 );
+ VERIFY( off04 == 0 );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/27_io/fpos/14320-1.cc b/libstdc++-v3/testsuite/27_io/fpos/14320-1.cc
new file mode 100644
index 00000000000..71a4d7a5c20
--- /dev/null
+++ b/libstdc++-v3/testsuite/27_io/fpos/14320-1.cc
@@ -0,0 +1,61 @@
+// 2004-03-02 Petur Runolfsson <peturr02@ru.is>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 27.4.3 fpos
+
+// { dg-do run { xfail *-*-* } }
+
+#include <typeinfo>
+#include <limits>
+#include <iterator>
+#include <testsuite_hooks.h>
+
+// libstdc++/14320
+void test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ typedef istreambuf_iterator<char>::difference_type Distance;
+
+ bool found = false;
+ if (typeid(Distance) == typeid(long int))
+ found = true;
+ if (typeid(Distance) == typeid(int))
+ found = true;
+ if (typeid(Distance) == typeid(short int))
+ found = true;
+ if (typeid(Distance) == typeid(signed char))
+ found = true;
+ if (numeric_limits<char>::is_signed &&
+ typeid(Distance) == typeid(char))
+ found = true;
+ if (numeric_limits<wchar_t>::is_signed &&
+ typeid(Distance) == typeid(wchar_t))
+ found = true;
+
+ VERIFY( found );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/27_io/fpos/14320-2.cc b/libstdc++-v3/testsuite/27_io/fpos/14320-2.cc
new file mode 100644
index 00000000000..868eeefd334
--- /dev/null
+++ b/libstdc++-v3/testsuite/27_io/fpos/14320-2.cc
@@ -0,0 +1,42 @@
+// 2004-03-02 Petur Runolfsson <peturr02@ru.is>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 27.4.3 fpos
+
+#include <iterator>
+#include <limits>
+#include <testsuite_hooks.h>
+
+void test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ typedef istreambuf_iterator<char>::difference_type Distance;
+ typedef numeric_limits<Distance> Limits;
+
+ VERIFY( Limits::is_specialized );
+ VERIFY( Limits::is_signed );
+}
+
+int main()
+{
+ test01();
+}
diff --git a/libstdc++-v3/testsuite/27_io/fpos/14320-3.cc b/libstdc++-v3/testsuite/27_io/fpos/14320-3.cc
new file mode 100644
index 00000000000..19c839e2f74
--- /dev/null
+++ b/libstdc++-v3/testsuite/27_io/fpos/14320-3.cc
@@ -0,0 +1,43 @@
+// 2004-03-02 Petur Runolfsson <peturr02@ru.is>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 27.4.3 fpos
+
+#include <iterator>
+#include <testsuite_hooks.h>
+
+// libstdc++/14320
+int test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ typedef std::istreambuf_iterator<char>::difference_type Distance;
+ Distance d = 2;
+ Distance e = 3;
+ d *= e;
+ VERIFY( static_cast<int>(d) == 6 );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/27_io/fpos/14320-4.cc b/libstdc++-v3/testsuite/27_io/fpos/14320-4.cc
new file mode 100644
index 00000000000..591bb4f7a69
--- /dev/null
+++ b/libstdc++-v3/testsuite/27_io/fpos/14320-4.cc
@@ -0,0 +1,52 @@
+// 2004-03-02 Petur Runolfsson <peturr02@ru.is>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 27.4.3 fpos
+
+#include <iterator>
+#include <testsuite_hooks.h>
+
+class Fred
+{
+public:
+ Fred(bool)
+ { }
+};
+
+void barney(Fred)
+{ }
+
+// libstdc++/14320
+void test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ typedef istreambuf_iterator<char>::difference_type Distance;
+
+ Distance d = 0;
+ barney(d);
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/27_io/fpos/14320-5.cc b/libstdc++-v3/testsuite/27_io/fpos/14320-5.cc
new file mode 100644
index 00000000000..7c15620e345
--- /dev/null
+++ b/libstdc++-v3/testsuite/27_io/fpos/14320-5.cc
@@ -0,0 +1,45 @@
+// 2004-03-02 Petur Runolfsson <peturr02@ru.is>
+
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 27.4.3 fpos
+
+#include <iterator>
+#include <sstream>
+#include <testsuite_hooks.h>
+
+// libstdc++/14320
+void test01()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ typedef istreambuf_iterator<char>::difference_type Distance;
+
+ Distance d;
+ istringstream in("5");
+ in >> d;
+ VERIFY( d == 5 );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/4_neg.cc b/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/4_neg.cc
index ace81eb2669..0db4772acd7 100644
--- a/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/4_neg.cc
+++ b/libstdc++-v3/testsuite/27_io/fpos/mbstate_t/4_neg.cc
@@ -29,10 +29,10 @@ void test04()
long n;
// Implicit conversion
- n = pos; // { dg-error "cannot convert" }
+ n = pos; // { dg-error "cannot convert" "" { xfail *-*-* } }
// Explicit conversion
- n = static_cast<long>(pos); // { dg-error "invalid static_cast" }
+ n = static_cast<long>(pos); // { dg-error "invalid static_cast" "" { xfail *-*-* } }
}
int main()
diff --git a/libstdc++-v3/testsuite/27_io/ios_base/cons/assign_neg.cc b/libstdc++-v3/testsuite/27_io/ios_base/cons/assign_neg.cc
index 6e80b878fd5..626598e13a3 100644
--- a/libstdc++-v3/testsuite/27_io/ios_base/cons/assign_neg.cc
+++ b/libstdc++-v3/testsuite/27_io/ios_base/cons/assign_neg.cc
@@ -1,6 +1,6 @@
// { dg-do compile }
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -41,5 +41,5 @@ void test01()
io1 = io2;
}
// { dg-error "within this context" "" { target *-*-* } 41 }
-// { dg-error "is private" "" { target *-*-* } 740 }
+// { dg-error "is private" "" { target *-*-* } 741 }
// { dg-error "operator=" "" { target *-*-* } 0 }
diff --git a/libstdc++-v3/testsuite/27_io/ios_base/cons/copy_neg.cc b/libstdc++-v3/testsuite/27_io/ios_base/cons/copy_neg.cc
index b4cf359d3ac..9df52f3997b 100644
--- a/libstdc++-v3/testsuite/27_io/ios_base/cons/copy_neg.cc
+++ b/libstdc++-v3/testsuite/27_io/ios_base/cons/copy_neg.cc
@@ -1,6 +1,6 @@
// { dg-do compile }
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -41,5 +41,5 @@ void test02()
test_base io2 = io1;
}
// { dg-error "within this context" "" { target *-*-* } 41 }
-// { dg-error "is private" "" { target *-*-* } 737 }
+// { dg-error "is private" "" { target *-*-* } 738 }
// { dg-error "copy constructor" "" { target *-*-* } 0 }
diff --git a/libstdc++-v3/testsuite/27_io/ios_base/storage/1.cc b/libstdc++-v3/testsuite/27_io/ios_base/storage/1.cc
index 07b9bbe79fb..71753317202 100644
--- a/libstdc++-v3/testsuite/27_io/ios_base/storage/1.cc
+++ b/libstdc++-v3/testsuite/27_io/ios_base/storage/1.cc
@@ -1,6 +1,6 @@
// 2000-12-19 bkoz
-// Copyright (C) 2000, 2002, 2003 Free Software Foundation
+// Copyright (C) 2000, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -24,7 +24,7 @@
// XXX bug(s) in libc malloc for very large allocations. However
// XXX -lmalloc seems to work.
// See http://gcc.gnu.org/ml/gcc/2002-05/msg01012.html
-// { dg-options "-D_GLIBCXX_ASSERT -lmalloc" { target mips*-*-irix6* } }
+// { dg-options "-lmalloc" { target mips*-*-irix6* } }
#include <sstream>
#include <iostream>
diff --git a/libstdc++-v3/testsuite/27_io/ios_base/storage/11584.cc b/libstdc++-v3/testsuite/27_io/ios_base/storage/11584.cc
new file mode 100644
index 00000000000..0df9c0c8b21
--- /dev/null
+++ b/libstdc++-v3/testsuite/27_io/ios_base/storage/11584.cc
@@ -0,0 +1,63 @@
+// 2004-01-25 jlquinn@gcc.gnu.org
+
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// 27.4.2.5 ios_base storage functions
+
+#include <cstdlib>
+#include <new>
+#include <iostream>
+#include <testsuite_hooks.h>
+
+int new_fails;
+
+void* operator new(std::size_t n) throw (std::bad_alloc)
+{
+ if (new_fails)
+ throw std::bad_alloc();
+ return malloc(n);
+}
+void* operator new[] (std::size_t n) throw (std::bad_alloc)
+{ return operator new(n); }
+
+void operator delete (void *p) throw() { free(p); }
+void operator delete[] (void *p) throw() { operator delete(p); }
+
+int main ()
+{
+ bool test __attribute__((unused)) = true;
+ const int i = std::ios::xalloc ();
+
+ new_fails = 1;
+
+ // Successive accesses to failure storage clears to zero.
+ std::cout.iword(100) = 0xdeadbeef;
+ VERIFY(std::cout.iword(100) == 0);
+
+ // Access to pword failure storage shouldn't clear iword pword storage.
+ long& lr = std::cout.iword(100);
+ lr = 0xdeadbeef;
+
+ void* pv = std::cout.pword(100);
+ VERIFY(pv == 0);
+ VERIFY(lr == 0xdeadbeef);
+
+ return 0;
+}
+
diff --git a/libstdc++-v3/testsuite/27_io/ios_base/storage/2.cc b/libstdc++-v3/testsuite/27_io/ios_base/storage/2.cc
index 65ed829e193..0da1382edd5 100644
--- a/libstdc++-v3/testsuite/27_io/ios_base/storage/2.cc
+++ b/libstdc++-v3/testsuite/27_io/ios_base/storage/2.cc
@@ -1,6 +1,6 @@
// 2000-12-19 bkoz
-// Copyright (C) 2000, 2002, 2003 Free Software Foundation
+// Copyright (C) 2000, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -24,7 +24,7 @@
// XXX bug(s) in libc malloc for very large allocations. However
// XXX -lmalloc seems to work.
// See http://gcc.gnu.org/ml/gcc/2002-05/msg01012.html
-// { dg-options "-D_GLIBCXX_ASSERT -lmalloc" { target mips*-*-irix6* } }
+// { dg-options "-lmalloc" { target mips*-*-irix6* } }
#include <sstream>
#include <iostream>
diff --git a/libstdc++-v3/testsuite/27_io/ios_base/storage/3.cc b/libstdc++-v3/testsuite/27_io/ios_base/storage/3.cc
index 3a5d7025ce7..e0d477f716d 100644
--- a/libstdc++-v3/testsuite/27_io/ios_base/storage/3.cc
+++ b/libstdc++-v3/testsuite/27_io/ios_base/storage/3.cc
@@ -1,6 +1,6 @@
// 2000-12-19 bkoz
-// Copyright (C) 2000, 2002, 2003 Free Software Foundation
+// Copyright (C) 2000, 2002, 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -24,7 +24,7 @@
// XXX bug(s) in libc malloc for very large allocations. However
// XXX -lmalloc seems to work.
// See http://gcc.gnu.org/ml/gcc/2002-05/msg01012.html
-// { dg-options "-D_GLIBCXX_ASSERT -lmalloc" { target mips*-*-irix6* } }
+// { dg-options "-lmalloc" { target mips*-*-irix6* } }
#include <sstream>
#include <iostream>
diff --git a/libstdc++-v3/testsuite/27_io/manipulators/standard/char/2.cc b/libstdc++-v3/testsuite/27_io/manipulators/standard/char/2.cc
index 6d07434851a..74376ec6d49 100644
--- a/libstdc++-v3/testsuite/27_io/manipulators/standard/char/2.cc
+++ b/libstdc++-v3/testsuite/27_io/manipulators/standard/char/2.cc
@@ -1,6 +1,6 @@
-// { dg-options "-D_GLIBCXX_ASSERT -fno-implicit-templates" }
+// { dg-options "-fno-implicit-templates" }
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
diff --git a/libstdc++-v3/testsuite/27_io/objects/char/5.cc b/libstdc++-v3/testsuite/27_io/objects/char/5.cc
index acf8d6d3f0a..a5177dc9fe5 100644
--- a/libstdc++-v3/testsuite/27_io/objects/char/5.cc
+++ b/libstdc++-v3/testsuite/27_io/objects/char/5.cc
@@ -1,7 +1,6 @@
-// { dg-options "-D_GLIBCXX_ASSERT" { target *-*-* } }
// 2003-04-26 Petur Runolfsson <peturr02@ru.is>
-// Copyright (C) 2003 Free Software Foundation
+// Copyright (C) 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
diff --git a/libstdc++-v3/testsuite/27_io/objects/char/7.cc b/libstdc++-v3/testsuite/27_io/objects/char/7.cc
index 06983d9fb7a..13574e67c92 100644
--- a/libstdc++-v3/testsuite/27_io/objects/char/7.cc
+++ b/libstdc++-v3/testsuite/27_io/objects/char/7.cc
@@ -50,7 +50,8 @@ void test07()
{
filebuf fbout;
sleep(1);
- fbout.open(name, ios_base::out);
+ fbout.open(name, ios_base::in|ios_base::out);
+ VERIFY ( fbout.is_open() );
cout.rdbuf(&fbout);
fbout.sputc('a');
sleep(2);
diff --git a/libstdc++-v3/testsuite/27_io/objects/char/9661-1.cc b/libstdc++-v3/testsuite/27_io/objects/char/9661-1.cc
index 5b1780e1f0d..942cb094389 100644
--- a/libstdc++-v3/testsuite/27_io/objects/char/9661-1.cc
+++ b/libstdc++-v3/testsuite/27_io/objects/char/9661-1.cc
@@ -50,7 +50,8 @@ void test01()
if (child == 0)
{
sleep(1);
- FILE* file = fopen(name, "w");
+ FILE* file = fopen(name, "r+");
+ VERIFY (file != NULL);
fputs("Whatever\n", file);
fflush(file);
sleep(2);
diff --git a/libstdc++-v3/testsuite/27_io/objects/wchar_t/5.cc b/libstdc++-v3/testsuite/27_io/objects/wchar_t/5.cc
index ed6f3173256..f7c4339b36d 100644
--- a/libstdc++-v3/testsuite/27_io/objects/wchar_t/5.cc
+++ b/libstdc++-v3/testsuite/27_io/objects/wchar_t/5.cc
@@ -1,7 +1,6 @@
-// { dg-options "-D_GLIBCXX_ASSERT" { target *-*-* } }
// 2003-05-01 Petur Runolfsson <peturr02@ru.is>
-// Copyright (C) 2003 Free Software Foundation
+// Copyright (C) 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
diff --git a/libstdc++-v3/testsuite/Makefile.am b/libstdc++-v3/testsuite/Makefile.am
index 0fa37323230..b6a9a50ab9c 100644
--- a/libstdc++-v3/testsuite/Makefile.am
+++ b/libstdc++-v3/testsuite/Makefile.am
@@ -30,7 +30,8 @@ AM_RUNTESTFLAGS =
## CXX is actually a "C" compiler. These are real C++ programs.
testsuite_flags_script=${glibcxx_builddir}/scripts/testsuite_flags
-CXX=`${testsuite_flags_script} --build-cxx`
+CXX = $(shell ${testsuite_flags_script} --build-cxx)
+AM_CXXFLAGS = $(shell ${testsuite_flags_script} --cxxflags)
GLIBGCC_DIR=`$(CC) -print-libgcc-file-name | sed 's,/[^/]*$$,,'`
GLIBCXX_DIR=${glibcxx_builddir}/src/.libs
@@ -100,12 +101,14 @@ if GLIBCXX_TEST_ABI
# Use 'new-abi-baseline' to create an initial symbol file. Then run
# 'check-abi' to test for changes against that file.
check-abi: abi_check baseline_symbols current_symbols.txt
- -@(./abi_check --check ./current_symbols.txt ${baseline_file} \
- 2>&1 | tee libstdc++-abi.sum)
+ -@./abi_check --check ./current_symbols.txt ${baseline_file} \
+ 2>&1 | tee libstdc++-abi.sum
+ -@cp libstdc++-abi.sum libstdc++-abi.log
check-abi-verbose: abi_check baseline_symbols current_symbols.txt
- -@(./abi_check --check-verbose ./current_symbols.txt ${baseline_file} \
- 2>&1 | tee libstdc++-abi.sum)
+ -@./abi_check --check-verbose ./current_symbols.txt ${baseline_file} \
+ 2>&1 | tee libstdc++-abi.sum
+ -@cp libstdc++-abi.sum libstdc++-abi.log
else
check-abi:
diff --git a/libstdc++-v3/testsuite/Makefile.in b/libstdc++-v3/testsuite/Makefile.in
index cfa2e2e0023..8f1c1d2f9f8 100644
--- a/libstdc++-v3/testsuite/Makefile.in
+++ b/libstdc++-v3/testsuite/Makefile.in
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.7.8 from Makefile.am.
# @configure_input@
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
@@ -39,10 +39,13 @@ build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
ACLOCAL = @ACLOCAL@
+ALLOCATOR_H = @ALLOCATOR_H@
+ALLOCATOR_NAME = @ALLOCATOR_NAME@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
-ATOMICITY_INC_SRCDIR = @ATOMICITY_INC_SRCDIR@
+ATOMICITY_SRCDIR = @ATOMICITY_SRCDIR@
+ATOMIC_WORD_SRCDIR = @ATOMIC_WORD_SRCDIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
@@ -67,7 +70,7 @@ CPPFLAGS = @CPPFLAGS@
CSTDIO_H = @CSTDIO_H@
CTIME_CC = @CTIME_CC@
CTIME_H = @CTIME_H@
-CXX = `${testsuite_flags_script} --build-cxx`
+CXX = $(shell ${testsuite_flags_script} --build-cxx)
CXXCPP = @CXXCPP@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
@@ -222,6 +225,7 @@ AM_MAKEFLAGS = -j1
AM_RUNTESTFLAGS =
testsuite_flags_script = ${glibcxx_builddir}/scripts/testsuite_flags
+AM_CXXFLAGS = $(shell ${testsuite_flags_script} --cxxflags)
GLIBGCC_DIR = `$(CC) -print-libgcc-file-name | sed 's,/[^/]*$$,,'`
GLIBCXX_DIR = ${glibcxx_builddir}/src/.libs
@@ -498,7 +502,7 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
@@ -607,12 +611,14 @@ new-abi-baseline:
# Use 'new-abi-baseline' to create an initial symbol file. Then run
# 'check-abi' to test for changes against that file.
@GLIBCXX_TEST_ABI_TRUE@check-abi: abi_check baseline_symbols current_symbols.txt
-@GLIBCXX_TEST_ABI_TRUE@ -@(./abi_check --check ./current_symbols.txt ${baseline_file} \
-@GLIBCXX_TEST_ABI_TRUE@ 2>&1 | tee libstdc++-abi.sum)
+@GLIBCXX_TEST_ABI_TRUE@ -@./abi_check --check ./current_symbols.txt ${baseline_file} \
+@GLIBCXX_TEST_ABI_TRUE@ 2>&1 | tee libstdc++-abi.sum
+@GLIBCXX_TEST_ABI_TRUE@ -@cp libstdc++-abi.sum libstdc++-abi.log
@GLIBCXX_TEST_ABI_TRUE@check-abi-verbose: abi_check baseline_symbols current_symbols.txt
-@GLIBCXX_TEST_ABI_TRUE@ -@(./abi_check --check-verbose ./current_symbols.txt ${baseline_file} \
-@GLIBCXX_TEST_ABI_TRUE@ 2>&1 | tee libstdc++-abi.sum)
+@GLIBCXX_TEST_ABI_TRUE@ -@./abi_check --check-verbose ./current_symbols.txt ${baseline_file} \
+@GLIBCXX_TEST_ABI_TRUE@ 2>&1 | tee libstdc++-abi.sum
+@GLIBCXX_TEST_ABI_TRUE@ -@cp libstdc++-abi.sum libstdc++-abi.log
@GLIBCXX_TEST_ABI_FALSE@check-abi:
@GLIBCXX_TEST_ABI_FALSE@check-abi-verbose:
diff --git a/libstdc++-v3/testsuite/backward/11460.cc b/libstdc++-v3/testsuite/backward/11460.cc
index a0139e98d89..25bcddd0a82 100644
--- a/libstdc++-v3/testsuite/backward/11460.cc
+++ b/libstdc++-v3/testsuite/backward/11460.cc
@@ -1,5 +1,5 @@
-// { dg-options "-Wno-deprecated -D_GLIBCXX_ASSERT" }
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// { dg-options "-Wno-deprecated" }
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
diff --git a/libstdc++-v3/testsuite/config/default.exp b/libstdc++-v3/testsuite/config/default.exp
index dbe227be7a6..2b2444fff52 100644
--- a/libstdc++-v3/testsuite/config/default.exp
+++ b/libstdc++-v3/testsuite/config/default.exp
@@ -1,5 +1,7 @@
-# Copyright (C) 2001 Free Software Foundation, Inc.
+# libstdc++ "tool-and-target file" for DejaGNU
+# Copyright (C) 2001, 2004 Free Software Foundation, Inc.
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -14,8 +16,18 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-# Please email any bugs, comments, and/or additions to this file to:
-# libstdc++@gcc.gnu.org
+# This file is loaded only if a target-specific file or OS-specific file
+# is not found first. It should provide libstdc++_load, which runs a
+# program. (The default calls the standard remote_load.) It may also
+# provide libstdc++_compile, but this is not presently used. It must
+# provide libstdc++_target_compile, which does the same thing and is used.
+
+# Here are the default definitions:
load_lib "standard.exp"
+# target-supports.exp uses this
+proc ${tool}_target_compile { srcfile destfile compile_type options } {
+ target_compile $srcfile $destfile $compile_type $options
+}
+
diff --git a/libstdc++-v3/testsuite/demangle/abi_examples/01.cc b/libstdc++-v3/testsuite/demangle/abi_examples/01.cc
index 585cfe0435c..e7c41e7b966 100644
--- a/libstdc++-v3/testsuite/demangle/abi_examples/01.cc
+++ b/libstdc++-v3/testsuite/demangle/abi_examples/01.cc
@@ -31,7 +31,7 @@ int main()
// extern "C" function
// extern "C" float f(void) { };
// T f
- verify_demangle("f", "f");
+ verify_demangle("f", "error code = -2: invalid mangled name");
return 0;
}
diff --git a/libstdc++-v3/testsuite/demangle/abi_examples/02.cc b/libstdc++-v3/testsuite/demangle/abi_examples/02.cc
index ce33e53894a..bbae9381e7d 100644
--- a/libstdc++-v3/testsuite/demangle/abi_examples/02.cc
+++ b/libstdc++-v3/testsuite/demangle/abi_examples/02.cc
@@ -31,7 +31,7 @@ int main()
// or variable "f"
// int f;
// B f
- verify_demangle("f", "f");
+ verify_demangle("f", "error code = -2: invalid mangled name");
return 0;
}
diff --git a/libstdc++-v3/testsuite/demangle/regression/cw-11.cc b/libstdc++-v3/testsuite/demangle/regression/cw-11.cc
index e5405b2f6e9..6fef1314d99 100644
--- a/libstdc++-v3/testsuite/demangle/regression/cw-11.cc
+++ b/libstdc++-v3/testsuite/demangle/regression/cw-11.cc
@@ -28,7 +28,8 @@ int main()
using namespace __gnu_test;
// cplus-dem CORE
- verify_demangle("_X11TransParseAddress", "_X11TransParseAddress");
+ verify_demangle("_X11TransParseAddress",
+ "error code = -2: invalid mangled name");
return 0;
}
diff --git a/libstdc++-v3/testsuite/demangle/regression/cw-16.cc b/libstdc++-v3/testsuite/demangle/regression/cw-16.cc
index 8dbfcb1f56e..78ae363a62b 100644
--- a/libstdc++-v3/testsuite/demangle/regression/cw-16.cc
+++ b/libstdc++-v3/testsuite/demangle/regression/cw-16.cc
@@ -29,14 +29,14 @@ int main()
// 2003/11/07, libstdc++/12736
verify_demangle("_Z3fooIA6_KiEvA9_KT_rVPrS4_",
- "void foo<int const [6]>(int const [9][6], int const restrict (* volatile restrict) [9][6])");
+ "void foo<int const [6]>(int const [9][6], int restrict const (* volatile restrict) [9][6])");
// 2003/11/12, libstdc++/12947
verify_demangle("_Z1fILi5E1AEvN1CIXqugtT_Li0ELi1ELi2EEE1qE",
"void f<5, A>(C<(((5) > (0))) ? (1) : (2)>::q)");
verify_demangle("_Z1fILi5EEvN1AIXcvimlT_Li22EEE1qE",
"void f<5>(A<(int)((5) * (22))>::q)");
verify_demangle("_Z1fPFYPFiiEiE",
- "f(int (*(*) [extern \"C\"] (int))(int))");
+ "f(int (*(*)(int))(int))");
verify_demangle("_Z1fI1XENT_1tES2_",
"X::t f<X>(X::t)");
verify_demangle("_Z1fILi5E1AEvN1CIXstN1T1tEEXszsrS2_1tEE1qE",
diff --git a/libstdc++-v3/testsuite/ext/14648.cc b/libstdc++-v3/testsuite/ext/14648.cc
new file mode 100644
index 00000000000..e54e2f87e69
--- /dev/null
+++ b/libstdc++-v3/testsuite/ext/14648.cc
@@ -0,0 +1,40 @@
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <iostream>
+#include <ext/hash_map>
+#include <ext/rope>
+
+// libstdc++/14648
+void test01()
+{
+ using namespace std;
+ using namespace __gnu_cxx;
+
+ typedef hash_map<char, crope, hash<char>, equal_to<char> > maptype;
+ maptype m;
+ m['l'] = "50";
+ m['x'] = "10";
+ cout << "m['x'] = " << m['x'] << endl;
+}
+
+int main()
+{
+ test01();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/ext/concept_checks.cc b/libstdc++-v3/testsuite/ext/concept_checks.cc
index 3ef7e6ecc59..67a771ac07e 100644
--- a/libstdc++-v3/testsuite/ext/concept_checks.cc
+++ b/libstdc++-v3/testsuite/ext/concept_checks.cc
@@ -1,6 +1,6 @@
// 2001-12-28 Phil Edwards <pme@gcc.gnu.org>
//
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -76,9 +76,14 @@ test2054( )
binary_search(Index.begin(), Index.end(), SearchTerm, aComparison);
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<int>;
+template class __gnu_cxx::__mt_alloc<std::string>;
+#endif
+
int main()
{
test2054();
-
return 0;
}
diff --git a/libstdc++-v3/testsuite/ext/enc_filebuf/char/13189.cc b/libstdc++-v3/testsuite/ext/enc_filebuf/char/13189.cc
index f4c3fe29957..425de9a2c6d 100644
--- a/libstdc++-v3/testsuite/ext/enc_filebuf/char/13189.cc
+++ b/libstdc++-v3/testsuite/ext/enc_filebuf/char/13189.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2003 Free Software Foundation
+// Copyright (C) 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -17,12 +17,13 @@
// USA.
#ifdef _GLIBCXX_USE___ENC_TRAITS
-
#include <ext/enc_filebuf.h>
+#endif
#include <testsuite_hooks.h>
void test01()
{
+#ifdef _GLIBCXX_USE___ENC_TRAITS
using namespace std;
typedef __enc_traits state_type;
typedef char char_type;
@@ -45,13 +46,9 @@ void test01()
}
catch(...)
{
- VERIFY( false );
}
-}
-
-#else
-void test01() { }
#endif
+}
int main()
{
diff --git a/libstdc++-v3/testsuite/ext/enc_filebuf/char/13598.cc b/libstdc++-v3/testsuite/ext/enc_filebuf/char/13598.cc
new file mode 100644
index 00000000000..a9270e145bb
--- /dev/null
+++ b/libstdc++-v3/testsuite/ext/enc_filebuf/char/13598.cc
@@ -0,0 +1,47 @@
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <locale>
+#include <cstring>
+#include <cassert>
+#ifdef _GLIBCXX_USE___ENC_TRAITS
+#include <ext/enc_filebuf.h>
+#endif
+
+int main()
+{
+#ifdef _GLIBCXX_USE___ENC_TRAITS
+ const char* str = "Hello, world!\n";
+
+ std::locale loc(std::locale::classic(),
+ new std::codecvt<char, char, std::__enc_traits>());
+ std::__enc_traits st("ISO-8859-1", "ISO-8859-1");
+ __gnu_cxx::enc_filebuf<char> fb(st);
+ fb.pubimbue(loc);
+
+ fb.open("tmp_13598", std::ios_base::out);
+ std::streamsize n = fb.sputn(str, std::strlen(str));
+ int s = fb.pubsync();
+ fb.close();
+
+ assert(n == std::strlen(str));
+ assert(s == 0);
+#endif
+
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/ext/enc_filebuf/wchar_t/13189.cc b/libstdc++-v3/testsuite/ext/enc_filebuf/wchar_t/13189.cc
index 0fd9b0dd3df..adb6c47aabd 100644
--- a/libstdc++-v3/testsuite/ext/enc_filebuf/wchar_t/13189.cc
+++ b/libstdc++-v3/testsuite/ext/enc_filebuf/wchar_t/13189.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2003 Free Software Foundation
+// Copyright (C) 2003, 2004 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -17,12 +17,13 @@
// USA.
#ifdef _GLIBCXX_USE___ENC_TRAITS
-
#include <ext/enc_filebuf.h>
+#endif
#include <testsuite_hooks.h>
void test01()
{
+#ifdef _GLIBCXX_USE___ENC_TRAITS
using namespace std;
typedef __enc_traits state_type;
typedef wchar_t char_type;
@@ -45,13 +46,9 @@ void test01()
}
catch(...)
{
- VERIFY( false );
}
-}
-
-#else
-void test01() { }
#endif
+}
int main()
{
diff --git a/libstdc++-v3/testsuite/ext/hash_map.cc b/libstdc++-v3/testsuite/ext/hash_map.cc
index 9911968c027..2a0bc0bce6d 100644
--- a/libstdc++-v3/testsuite/ext/hash_map.cc
+++ b/libstdc++-v3/testsuite/ext/hash_map.cc
@@ -95,6 +95,13 @@ void test01()
}
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<__gnu_cxx::_Hashtable_node<std::pair<const std::string, int> > >;
+template class __gnu_cxx::__mt_alloc<__gnu_cxx::_Hashtable_node<std::pair<const std::string, int> >* >;
+template class __gnu_cxx::__mt_alloc<std::pair<std::string, int> >;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/ext/hash_set.cc b/libstdc++-v3/testsuite/ext/hash_set.cc
index de0020dd626..9db82b7ef9d 100644
--- a/libstdc++-v3/testsuite/ext/hash_set.cc
+++ b/libstdc++-v3/testsuite/ext/hash_set.cc
@@ -1,7 +1,7 @@
// 2002-04-28 Paolo Carlini <pcarlini@unitus.it>
// Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
-// Copyright (C) 2002 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -31,6 +31,12 @@ test01()
const int anzahl = sizeof(werte) / sizeof(int);
__gnu_cxx::hash_set<int> intTable(werte, werte + anzahl);
}
+
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<__gnu_cxx::_Hashtable_node<int> >;
+template class __gnu_cxx::__mt_alloc<__gnu_cxx::_Hashtable_node<int>* >;
+#endif
int main()
{
diff --git a/libstdc++-v3/testsuite/ext/rope.cc b/libstdc++-v3/testsuite/ext/rope.cc
index 969554cbe1c..b79e5e91496 100644
--- a/libstdc++-v3/testsuite/ext/rope.cc
+++ b/libstdc++-v3/testsuite/ext/rope.cc
@@ -1,6 +1,6 @@
// 2001-10-03 From: Dimitris Vyzovitis <vyzo@media.mit.edu>
-// Copyright (C) 2001 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -31,6 +31,14 @@ void test01()
std::cout << data << std::endl;
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<__gnu_cxx::_Rope_RopeLeaf<char, std::allocator<char> > >;
+template class __gnu_cxx::__mt_alloc<__gnu_cxx::_Rope_RopeFunction<char, std::allocator<char> > >;
+template class __gnu_cxx::__mt_alloc<__gnu_cxx::_Rope_RopeSubstring<char, std::allocator<char> > >;
+template class __gnu_cxx::__mt_alloc<__gnu_cxx::_Rope_RopeConcatenation<char, std::allocator<char> > >;
+#endif
+
int main()
{
test01();
diff --git a/libstdc++-v3/testsuite/ext/stdio_filebuf/char/10063-2.cc b/libstdc++-v3/testsuite/ext/stdio_filebuf/char/10063-2.cc
index 299bc16ecc3..0b6cf921421 100644
--- a/libstdc++-v3/testsuite/ext/stdio_filebuf/char/10063-2.cc
+++ b/libstdc++-v3/testsuite/ext/stdio_filebuf/char/10063-2.cc
@@ -36,6 +36,7 @@ void test2()
fbuf.close();
FILE* file = fopen("tmp_10063-2", "r");
+ setbuf(file, NULL);
int c = getc(file);
VERIFY(c == '0');
c = getc(file);
diff --git a/libstdc++-v3/testsuite/ext/stdio_filebuf/char/10063-3.cc b/libstdc++-v3/testsuite/ext/stdio_filebuf/char/10063-3.cc
new file mode 100644
index 00000000000..a590898303e
--- /dev/null
+++ b/libstdc++-v3/testsuite/ext/stdio_filebuf/char/10063-3.cc
@@ -0,0 +1,61 @@
+// Copyright (C) 2004 Free Software Foundation
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// The ARM simulator does not provide support for "fstat", which
+// causes "sbumpc" to return an incorrect value.
+// { dg-do run { xfail arm-none-elf } }
+
+#include <cstdio>
+#include <fstream>
+#include <ext/stdio_sync_filebuf.h>
+#include <testsuite_hooks.h>
+
+void test3()
+{
+ using namespace std;
+ bool test __attribute__((unused)) = true;
+
+ filebuf fbuf;
+ fbuf.open("tmp_10063-3", ios_base::out | ios_base::trunc);
+ fbuf.sputn("01234", 5);
+ fbuf.close();
+
+ FILE* file = fopen("tmp_10063-3", "r");
+ int c = getc(file);
+ VERIFY(c == '0');
+ c = getc(file);
+ VERIFY(c == '1');
+ {
+ __gnu_cxx::stdio_sync_filebuf<char> sbuf(file);
+ c = sbuf.sbumpc();
+ VERIFY(c == '2');
+ c = sbuf.sbumpc();
+ VERIFY(c == '3');
+ c = sbuf.sbumpc();
+ VERIFY(c == '4');
+ c = sbuf.sgetc();
+ VERIFY(c == EOF);
+ }
+ fclose(file);
+}
+
+int main()
+{
+ test3();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/lib/dg-options.exp b/libstdc++-v3/testsuite/lib/dg-options.exp
new file mode 100644
index 00000000000..06001cb7514
--- /dev/null
+++ b/libstdc++-v3/testsuite/lib/dg-options.exp
@@ -0,0 +1,29 @@
+# Handlers for additional dg-xxx keywords in tests.
+
+# Copyright (C) 2004 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+# Copied from GCC.
+proc dg-require-iconv { args } {
+ if { ![ check_iconv_available ${args} ] } {
+ upvar dg-do-what dg-do-what
+ set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
+ return
+ }
+ return
+}
+
diff --git a/libstdc++-v3/testsuite/lib/libstdc++.exp b/libstdc++-v3/testsuite/lib/libstdc++.exp
index d6b4dc8d392..8bba2827b24 100644
--- a/libstdc++-v3/testsuite/lib/libstdc++.exp
+++ b/libstdc++-v3/testsuite/lib/libstdc++.exp
@@ -1,5 +1,7 @@
-# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+# libstdc++ "tool init file" for DejaGNU
+# Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -14,11 +16,47 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-# Define callbacks for dg.exp. This file is loaded early.
+# Define callbacks and load other libraries. This file is loaded relatively
+# early, and before any other file we write ourselves. "load_lib" will
+# find anything in the DejaGNU installation tree, or in our lib directory.
+# "load_gcc_lib" will search the core compiler's .exp collection instead.
+#
+# The naming rule is that dg.exp looks for "tool-" and runtest.exp looks
+# for "tool_" when finding callbacks. Utility routines we define for
+# our callbacks begin with "v3-".
+#
+# libstdc++_* callbacks we don't define, but could:
+# ..._option_help prints additional --help output
+# ..._option_proc (--foo) process our own options
+# ..._exit cleanup routines (do we need any?)
+# ..._init (normal.exp) called once per test file
+# ..._finish bracketing function for libstdc++_init
+# ...-dg-prune removing output text, see top of system dg.exp
+#
+# Useful hook: if ${hostname}_init exists, it will be called, almost
+# the last thing before testing begins. This can be defined in, e.g.,
+# ~/.dejagnurc or $DEJAGNU.
+
+proc load_gcc_lib { filename } {
+ global srcdir
+ load_file $srcdir/../../gcc/testsuite/lib/$filename
+}
+
+# system routines
load_lib dg.exp
load_lib libgloss.exp
+# compiler routines, then ours
+load_gcc_lib target-supports.exp
load_lib prune.exp
+load_lib dg-options.exp
+
+# Useful for debugging. Pass the name of a variable and the verbosity
+# threshold (number of -v's on the command line).
+proc v3track { var n } {
+ upvar $var val
+ verbose "++ $var is $val" $n
+}
# Called by v3-init below. "Static" to this file.
proc v3-copy-files {srcfiles dstdir} {
@@ -36,22 +74,42 @@ proc v3-copy-files {srcfiles dstdir} {
}
}
-# Called once, from libstdc++/dg.exp.
-proc v3-init { args } {
- global srcdir
- global outdir
- global blddir
- global cxx
+# Called once, during runtest.exp setup.
+proc libstdc++_init { testfile } {
+ global env
+ global srcdir outdir blddir objdir tool_root_dir
+ global cxx cxxflags
global includes
- global cxxflags
- global objdir
global gluefile wrap_flags
- global env
- global ld_library_path
- global original_ld_library_path
- global tool_root_dir
+ global ld_library_path original_ld_library_path
+ global target_triplet
set blddir [lookfor_file [get_multilibs] libstdc++-v3]
+ set flags_file "${blddir}/scripts/testsuite_flags"
+ v3track flags_file 2
+
+ # If a test doesn't have special options, use DEFAULT_CXXFLAGS.
+ # Use this variable if the behavior
+ # 1) only applies to libstdc++ testing
+ # 2) might need to be negated
+ # In particular, some tests have to be run without precompiled
+ # headers, or without assertions.
+ global DEFAULT_CXXFLAGS
+ if ![info exists DEFAULT_CXXFLAGS] then {
+ # Set up includes for stdc++.h.gch, the precompiled header file.
+ if { [file exists $flags_file] } {
+ set cxxpchflags [exec sh $flags_file --cxxpchflags]
+ } else {
+ set cxxpchflags ""
+ }
+ set DEFAULT_CXXFLAGS " ${cxxpchflags}"
+
+ # Host specific goo here.
+ if { [string match "powerpc-*-darwin*" $target_triplet] } {
+ append DEFAULT_CXXFLAGS " -multiply_defined suppress"
+ }
+ }
+ v3track DEFAULT_CXXFLAGS 2
# By default, we assume we want to run program images.
global dg-do-what-default
@@ -87,6 +145,7 @@ proc v3-init { args } {
if {$gccdir != ""} {
set gccdir [file dirname $gccdir]
}
+ v3track gccdir 3
# Compute what needs to be added to the existing LD_LIBRARY_PATH.
set ld_library_path ""
@@ -134,18 +193,17 @@ proc v3-init { args } {
return "untested"
}
set cxx [transform "g++"]
- set cxxflags "-ggdb3 -D_GLIBCXX_ASSERT"
+ set cxxflags "-ggdb3"
set includes "-I./"
} else {
# If we find a testsuite_flags file, we're testing in the build dir.
- set flags_file "${blddir}/scripts/testsuite_flags"
if { [file exists $flags_file] } {
set cxx [exec sh $flags_file --build-cxx]
set cxxflags [exec sh $flags_file --cxxflags]
set includes [exec sh $flags_file --build-includes]
} else {
set cxx [transform "g++"]
- set cxxflags "-ggdb3 -D_GLIBCXX_ASSERT"
+ set cxxflags "-ggdb3"
set includes "-I${srcdir}"
}
}
@@ -166,7 +224,6 @@ proc v3-init { args } {
# Callback from system dg-test.
proc libstdc++-dg-test { prog do_what extra_tool_flags } {
# Set up the compiler flags, based on what we're going to do.
-
switch $do_what {
"preprocess" {
set compile_type "preprocess"
@@ -204,6 +261,8 @@ proc libstdc++-dg-test { prog do_what extra_tool_flags } {
lappend options "additional_flags=$extra_tool_flags"
}
+ # There is a libstdc++_compile made for us by default (via the tool-
+ # and-target file), but the defaults are lacking in goodness.
set comp_output [v3_target_compile "$prog" "$output_file" "$compile_type" $options];
set comp_output [ prune_g++_output $comp_output ];
@@ -242,14 +301,18 @@ proc v3_target_compile { source dest type options } {
}
-# Called once, from libstdc++*/dg.exp.
+# Called once, from libstdc++/normal.exp.
proc v3-list-tests { filename } {
global srcdir
- global outdir
-
- set tests_file "${outdir}/${filename}"
+ global blddir
+
+ set tests_file "${blddir}/testsuite/${filename}"
set sfiles ""
+ verbose -log "In v3-list-tests"
+ verbose -log "blddir = ${blddir}"
+ verbose -log "tests_file = $tests_file"
+
# If there is a testsuite_file, use it.
if { [file exists $tests_file] } {
set f [open $tests_file]
diff --git a/libstdc++-v3/testsuite/lib/prune.exp b/libstdc++-v3/testsuite/lib/prune.exp
index 7dc8eca1316..8b4e2cdca6d 100644
--- a/libstdc++-v3/testsuite/lib/prune.exp
+++ b/libstdc++-v3/testsuite/lib/prune.exp
@@ -1,4 +1,4 @@
-# Copyright (C) 1997, 1999, 2000, 2001 Free Software Foundation, Inc.
+# Copyright (C) 1997, 1999, 2000, 2001, 2004 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -25,5 +25,9 @@ proc prune_g++_output { text } {
# definitions, etc as these confuse dejagnu
regsub -all "(^|\n)\[^\n\]*: In function \[^\n\]*" $text "" text
+ # Ignore errata warning from IA64 assembler.
+ regsub -all "(^|\n)\[^\n\]*: Additional NOP may be necessary to workaround Itanium processor A/B step errata" $text "" text
+ regsub -all "(^|\n)\[^\n*\]*: Assembler messages:\[^\n\]*" $text "" text
+
return $text
}
diff --git a/libstdc++-v3/testsuite/libstdc++-dg/normal.exp b/libstdc++-v3/testsuite/libstdc++-dg/normal.exp
index a5665438aa5..b613c66da1c 100644
--- a/libstdc++-v3/testsuite/libstdc++-dg/normal.exp
+++ b/libstdc++-v3/testsuite/libstdc++-dg/normal.exp
@@ -1,5 +1,7 @@
-# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+# Primary test file for libstdc++.
+# Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -18,36 +20,9 @@
# Initialization.
dg-init
-v3-init
-
-# If a libstdc++ test file doesn't have special options, use DEFAULT_CXXFLAGS.
-# Use this variable if the behavior
-# 1) only applies to libstdc++ testing
-# 2) might need to be negated
-# In particular, some tests have to be run without precompiled
-# headers, or without assertions.
-global blddir
-global target_triplet
-global DEFAULT_CXXFLAGS
-if ![info exists DEFAULT_CXXFLAGS] then {
- set DEFAULT_CXXFLAGS "-D_GLIBCXX_ASSERT"
-
- # Set up includes for stdc++.h.gch, the precompiled header file.
- set flags_file "${blddir}/scripts/testsuite_flags"
- if { [file exists $flags_file] } {
- set cxxpchflags [exec sh $flags_file --cxxpchflags]
- } else {
- set cxxpchflags ""
- }
- append DEFAULT_CXXFLAGS " ${cxxpchflags}"
-
- # Host specific goo here.
- if { [string match "powerpc-*-darwin*" $target_triplet] } {
- append DEFAULT_CXXFLAGS " -multiply_defined suppress"
- }
-}
# Main loop.
+global DEFAULT_CXXFLAGS
dg-runtest [v3-list-tests testsuite_files] "" $DEFAULT_CXXFLAGS
#dg-runtest [v3-list-tests testsuite_files_interactive] "" $DEFAULT_CXXFLAGS
diff --git a/libstdc++-v3/testsuite/performance/20_util/allocator/insert.cc b/libstdc++-v3/testsuite/performance/20_util/allocator/insert.cc
new file mode 100644
index 00000000000..c9eb2935bad
--- /dev/null
+++ b/libstdc++-v3/testsuite/performance/20_util/allocator/insert.cc
@@ -0,0 +1,285 @@
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+/*
+ * The goal with this application is to compare the performance
+ * between different std::allocator implementations. The results are
+ * influenced by the underlying allocator in the "C" library, malloc.
+ */
+
+// 2003-02-05 Stefan Olsson <stefan@snon.net>
+
+#include <vector>
+#include <list>
+#include <map>
+#include <deque>
+#include <set>
+#include <typeinfo>
+#include <sstream>
+#include <ext/mt_allocator.h>
+#include <ext/new_allocator.h>
+#include <ext/malloc_allocator.h>
+#include <ext/bitmap_allocator.h>
+#include <cxxabi.h>
+#include <testsuite_performance.h>
+
+using namespace std;
+
+typedef int test_type;
+
+// The number of iterations to be performed.
+int iterations = 10000;
+
+// The number of values to insert in the container, 32 will cause 5
+// (re)allocations to be performed (sizes 4, 8, 16, 32 and 64)
+// This means that all allocations are within _MAX_BYTES = 128 as
+// defined in stl_alloc.h for __pool_alloc. Whether or not this
+// value is relevant in "the real world" or not I don't know and
+// should probably be investigated in more detail.
+int insert_values = 128;
+
+template<typename TestType>
+ struct value_type : public pair<TestType, TestType>
+ {
+ value_type() : pair<TestType, TestType>(0, 0) { }
+
+ inline value_type operator++() { return ++this->first, *this; }
+ inline operator TestType() const { return this->first; }
+ };
+
+template<typename Container>
+ void
+ do_loop()
+ {
+ Container obj;
+ int test_iterations = 0;
+ value_type<test_type> test_value;
+ while (test_iterations < iterations)
+ {
+ for (int j = 0; j < insert_values; ++j)
+ obj.insert(obj.end(), ++test_value);
+ ++test_iterations;
+ }
+ }
+
+template<typename Container>
+ void*
+ do_test(void* p = NULL)
+ {
+ do_loop<Container>();
+ }
+
+template<typename Container>
+ void
+ test_container(Container obj, bool run_threaded = false)
+ {
+ using namespace __gnu_test;
+ int status;
+
+ time_counter time;
+ resource_counter resource;
+ clear_counters(time, resource);
+ start_counters(time, resource);
+
+ if (! run_threaded)
+ {
+ do_loop<Container>();
+ }
+ else
+ {
+#if defined (_GLIBCXX_GCC_GTHR_POSIX_H) && !defined (NOTHREAD)
+ pthread_t t1, t2, t3, t4;
+ pthread_create(&t1, 0, &do_test<Container>, 0);
+ pthread_create(&t2, 0, &do_test<Container>, 0);
+ pthread_create(&t3, 0, &do_test<Container>, 0);
+ pthread_create(&t4, 0, &do_test<Container>, 0);
+
+ pthread_join(t1, NULL);
+ pthread_join(t2, NULL);
+ pthread_join(t3, NULL);
+ pthread_join(t4, NULL);
+#else
+ return;
+#endif
+ }
+
+ stop_counters(time, resource);
+
+ std::ostringstream comment;
+ if (run_threaded)
+ comment << "4-way threaded iterations: " << iterations*4 << '\t';
+ else
+ comment << "iterations: " << iterations << '\t';
+ comment << "type: " << abi::__cxa_demangle(typeid(obj).name(),
+ 0, 0, &status);
+ report_header(__FILE__, comment.str());
+ report_performance(__FILE__, string(), time, resource);
+ }
+
+// http://gcc.gnu.org/ml/libstdc++/2001-05/msg00105.html
+// http://gcc.gnu.org/ml/libstdc++/2003-05/msg00231.html
+int main(void)
+{
+ typedef __gnu_cxx::malloc_allocator<test_type> m_alloc_type;
+ typedef __gnu_cxx::new_allocator<test_type> n_alloc_type;
+ typedef __gnu_cxx::__mt_alloc<test_type> so_alloc_type;
+ typedef __gnu_cxx::bitmap_allocator<test_type> bit_alloc_type;
+
+#ifdef TEST_B0
+ test_container(vector<test_type, m_alloc_type>());
+#endif
+#ifdef TEST_B1
+ test_container(vector<test_type, n_alloc_type>());
+#endif
+#ifdef TEST_B2
+ test_container(vector<test_type, so_alloc_type>());
+#endif
+#ifdef TEST_B3
+ test_container(vector<test_type, bit_alloc_type>());
+#endif
+
+#ifdef TEST_B4
+ test_container(list<test_type, m_alloc_type>());
+#endif
+#ifdef TEST_B5
+ test_container(list<test_type, n_alloc_type>());
+#endif
+#ifdef TEST_B6
+ test_container(list<test_type, so_alloc_type>());
+#endif
+#ifdef TEST_B7
+ test_container(list<test_type, bit_alloc_type>());
+#endif
+
+#ifdef TEST_B8
+ test_container(deque<test_type, m_alloc_type>());
+#endif
+#ifdef TEST_B9
+ test_container(deque<test_type, n_alloc_type>());
+#endif
+#ifdef TEST_B10
+ test_container(deque<test_type, so_alloc_type>());
+#endif
+#ifdef TEST_B11
+ test_container(deque<test_type, bit_alloc_type>());
+#endif
+
+ typedef less<test_type> compare_type;
+#ifdef TEST_B12
+ test_container(map<test_type, test_type, compare_type, m_alloc_type>());
+#endif
+#ifdef TEST_B13
+ test_container(map<test_type, test_type, compare_type, n_alloc_type>());
+#endif
+#ifdef TEST_B14
+ test_container(map<test_type, test_type, compare_type, so_alloc_type>());
+#endif
+#ifdef TEST_B15
+ test_container(map<test_type, test_type, compare_type, bit_alloc_type>());
+#endif
+
+#ifdef TEST_B16
+ test_container(set<test_type, compare_type, m_alloc_type>());
+#endif
+#ifdef TEST_B17
+ test_container(set<test_type, compare_type, n_alloc_type>());
+#endif
+#ifdef TEST_B18
+ test_container(set<test_type, compare_type, so_alloc_type>());
+#endif
+#ifdef TEST_B19
+ test_container(set<test_type, compare_type, bit_alloc_type>());
+#endif
+
+#ifdef TEST_T0
+ test_container(vector<test_type, m_alloc_type>(), true);
+#endif
+#ifdef TEST_T1
+ test_container(vector<test_type, n_alloc_type>(), true);
+#endif
+#ifdef TEST_T2
+ test_container(vector<test_type, so_alloc_type>(), true);
+#endif
+#ifdef TEST_T3
+ test_container(vector<test_type, bit_alloc_type>(), true);
+#endif
+
+#ifdef TEST_T4
+ test_container(list<test_type, m_alloc_type>(), true);
+#endif
+#ifdef TEST_T5
+ test_container(list<test_type, n_alloc_type>(), true);
+#endif
+#ifdef TEST_T6
+ test_container(list<test_type, so_alloc_type>(), true);
+#endif
+#ifdef TEST_T7
+ test_container(list<test_type, bit_alloc_type>(), true);
+#endif
+
+#ifdef TEST_T8
+ test_container(deque<test_type, m_alloc_type>(), true);
+#endif
+#ifdef TEST_T9
+ test_container(deque<test_type, n_alloc_type>(), true);
+#endif
+#ifdef TEST_T10
+ test_container(deque<test_type, so_alloc_type>(), true);
+#endif
+#ifdef TEST_T11
+ test_container(deque<test_type, bit_alloc_type>(), true);
+#endif
+
+ typedef less<test_type> compare_type;
+#ifdef TEST_T12
+ test_container(map<test_type, test_type, compare_type, m_alloc_type>(), true);
+#endif
+#ifdef TEST_T13
+ test_container(map<test_type, test_type, compare_type, n_alloc_type>(), true);
+#endif
+#ifdef TEST_T14
+ test_container(map<test_type, test_type, compare_type, so_alloc_type>(), true);
+#endif
+#ifdef TEST_T15
+ test_container(map<test_type, test_type, compare_type, bit_alloc_type>(), true);
+#endif
+
+#ifdef TEST_T16
+ test_container(set<test_type, compare_type, m_alloc_type>(), true);
+#endif
+#ifdef TEST_T17
+ test_container(set<test_type, compare_type, n_alloc_type>(), true);
+#endif
+#ifdef TEST_T18
+ test_container(set<test_type, compare_type, so_alloc_type>(), true);
+#endif
+#ifdef TEST_T19
+ test_container(set<test_type, compare_type, bit_alloc_type>(), true);
+#endif
+
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/performance/allocator.cc b/libstdc++-v3/testsuite/performance/20_util/allocator/insert_insert.cc
index c7299fc5508..8f30c0c339a 100644
--- a/libstdc++-v3/testsuite/performance/allocator.cc
+++ b/libstdc++-v3/testsuite/performance/20_util/allocator/insert_insert.cc
@@ -35,21 +35,24 @@
#include <vector>
#include <list>
+#include <map>
+#include <deque>
+#include <set>
#include <typeinfo>
#include <sstream>
#include <ext/mt_allocator.h>
+#include <ext/new_allocator.h>
#include <ext/malloc_allocator.h>
+#include <ext/bitmap_allocator.h>
#include <cxxabi.h>
#include <testsuite_performance.h>
using namespace std;
-using __gnu_cxx::malloc_allocator;
-using __gnu_cxx::__mt_alloc;
typedef int test_type;
// The number of iterations to be performed.
-int iterations;
+int iterations = 10000;
// The number of values to insert in the container, 32 will cause 5
// (re)allocations to be performed (sizes 4, 8, 16, 32 and 64)
@@ -59,48 +62,27 @@ int iterations;
// should probably be investigated in more detail.
int insert_values = 128;
-template<typename Container>
- int
- do_loop()
+template<typename TestType>
+ struct value_type : public pair<TestType, TestType>
{
- int test_iterations = 0;
- try
- {
- Container obj;
- while (test_iterations < iterations)
- {
- for (int j = 0; j < insert_values; ++j)
- obj.push_back(test_iterations);
- ++test_iterations;
- }
- }
- catch(...)
- {
- // No point allocating all available memory, repeatedly.
- }
- return test_iterations;
- }
+ value_type() : pair<TestType, TestType>(0, 0) { }
+
+ inline value_type operator++() { return ++this->first, *this; }
+ inline operator TestType() const { return this->first; }
+ };
template<typename Container>
void
- calibrate_iterations()
+ do_loop()
{
- int try_iterations = iterations = 100000;
- int test_iterations;
-
- __gnu_test::time_counter timer;
- timer.start();
- test_iterations = do_loop<Container>();
- timer.stop();
-
- if (try_iterations > test_iterations && test_iterations > iterations)
- iterations = test_iterations - 100;
- else
+ Container obj;
+ int test_iterations = 0;
+ value_type<test_type> test_value;
+ while (test_iterations < iterations)
{
- double tics = timer.real_time();
- double iterpc = test_iterations / tics; //iterations per clock
- double xtics = 200; // works for linux 2gig x86
- iterations = static_cast<int>(xtics * iterpc);
+ for (int j = 0; j < insert_values; ++j)
+ obj.insert(obj.end(), ++test_value);
+ ++test_iterations;
}
}
@@ -115,11 +97,14 @@ template<typename Container>
resource_counter resource;
clear_counters(time, resource);
start_counters(time, resource);
- int test_iterations = do_loop<Container>();
+
+ do_loop<Container>();
+ do_loop<Container>();
+
stop_counters(time, resource);
std::ostringstream comment;
- comment << "iterations: " << test_iterations << '\t';
+ comment << "repeated iterations: " << iterations*2 << '\t';
comment << "type: " << abi::__cxa_demangle(typeid(obj).name(),
0, 0, &status);
report_header(__FILE__, comment.str());
@@ -130,15 +115,79 @@ template<typename Container>
// http://gcc.gnu.org/ml/libstdc++/2003-05/msg00231.html
int main(void)
{
- calibrate_iterations<vector<test_type> >();
- test_container(vector<test_type>());
- test_container(vector<test_type, malloc_allocator<test_type> >());
- test_container(vector<test_type, __mt_alloc<test_type> >());
-
- calibrate_iterations<list<test_type> >();
- test_container(list<test_type>());
- test_container(list<test_type, malloc_allocator<test_type> >());
- test_container(list<test_type, __mt_alloc<test_type> >());
+ typedef __gnu_cxx::malloc_allocator<test_type> m_alloc_type;
+ typedef __gnu_cxx::new_allocator<test_type> n_alloc_type;
+ typedef __gnu_cxx::__mt_alloc<test_type> so_alloc_type;
+ typedef __gnu_cxx::bitmap_allocator<test_type> bit_alloc_type;
+
+#ifdef TEST_S0
+ test_container(vector<test_type, m_alloc_type>());
+#endif
+#ifdef TEST_S1
+ test_container(vector<test_type, n_alloc_type>());
+#endif
+#ifdef TEST_S2
+ test_container(vector<test_type, so_alloc_type>());
+#endif
+#ifdef TEST_S3
+ test_container(vector<test_type, bit_alloc_type>());
+#endif
+
+
+#ifdef TEST_S4
+ test_container(list<test_type, m_alloc_type>());
+#endif
+#ifdef TEST_S5
+ test_container(list<test_type, n_alloc_type>());
+#endif
+#ifdef TEST_S6
+ test_container(list<test_type, so_alloc_type>());
+#endif
+#ifdef TEST_S7
+ test_container(list<test_type, bit_alloc_type>());
+#endif
+
+
+#ifdef TEST_S8
+ test_container(deque<test_type, m_alloc_type>());
+#endif
+#ifdef TEST_S9
+ test_container(deque<test_type, n_alloc_type>());
+#endif
+#ifdef TEST_S10
+ test_container(deque<test_type, so_alloc_type>());
+#endif
+#ifdef TEST_S11
+ test_container(deque<test_type, bit_alloc_type>());
+#endif
+
+ typedef less<test_type> compare_type;
+#ifdef TEST_S12
+ test_container(map<test_type, test_type, compare_type, m_alloc_type>());
+#endif
+#ifdef TEST_S13
+ test_container(map<test_type, test_type, compare_type, n_alloc_type>());
+#endif
+#ifdef TEST_S14
+ test_container(map<test_type, test_type, compare_type, so_alloc_type>());
+#endif
+#ifdef TEST_S15
+ test_container(map<test_type, test_type, compare_type, bit_alloc_type>());
+#endif
+
+
+#ifdef TEST_S12
+ test_container(set<test_type, compare_type, m_alloc_type>());
+#endif
+#ifdef TEST_S13
+ test_container(set<test_type, compare_type, n_alloc_type>());
+#endif
+#ifdef TEST_S14
+ test_container(set<test_type, compare_type, so_alloc_type>());
+#endif
+#ifdef TEST_S14
+ test_container(set<test_type, compare_type, bit_alloc_type>());
+#endif
return 0;
}
diff --git a/libstdc++-v3/testsuite/performance/20_util/allocator/list_sort_search.cc b/libstdc++-v3/testsuite/performance/20_util/allocator/list_sort_search.cc
new file mode 100644
index 00000000000..aceff0231ea
--- /dev/null
+++ b/libstdc++-v3/testsuite/performance/20_util/allocator/list_sort_search.cc
@@ -0,0 +1,125 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+// 2004-03-11 Dhruv Matani <dhruvbird@HotPOP.com>
+
+#include <typeinfo>
+#include <sstream>
+#include <ext/mt_allocator.h>
+#include <ext/malloc_allocator.h>
+#include <cxxabi.h>
+#include <testsuite_performance.h>
+#include <ext/bitmap_allocator.h>
+
+using namespace std;
+using __gnu_cxx::malloc_allocator;
+using __gnu_cxx::__mt_alloc;
+using __gnu_cxx::bitmap_allocator;
+
+typedef int test_type;
+
+using namespace __gnu_cxx;
+
+#include <list>
+#include <map>
+#include <algorithm>
+#include <cstdlib>
+using namespace std;
+
+template <typename Alloc>
+int Test_Allocator ()
+{
+ typedef list<int, Alloc> My_List;
+ My_List il1;
+
+ int const Iter = 150000;
+
+ int ctr = 3;
+ while (ctr--)
+ {
+ for (int i = 0; i < Iter; ++i)
+ il1.push_back (rand()%500001);
+
+ //Search for random values that may or may not belong to the list.
+ for (int i = 0; i < 50; ++i)
+ std::find (il1.begin(), il1.end(), rand()%100001);
+
+ il1.sort ();
+
+ //Search for random values that may or may not belong to the list.
+ for (int i = 0; i < 50; ++i)
+ {
+ typename My_List::iterator _liter = std::find (il1.begin(), il1.end(), rand()%100001);
+ if (_liter != il1.end())
+ il1.erase (_liter);
+ }
+
+ il1.clear ();
+ }
+ return Iter;
+}
+
+template <typename Alloc>
+void do_test ()
+{
+ using namespace __gnu_test;
+ int status;
+ Alloc obj;
+
+ time_counter time;
+ resource_counter resource;
+ clear_counters(time, resource);
+ start_counters(time, resource);
+ int test_iterations = Test_Allocator<Alloc>();
+ stop_counters(time, resource);
+
+ std::ostringstream comment;
+ comment << "iterations: " << test_iterations <<endl;
+ comment << "type: " << abi::__cxa_demangle(typeid(obj).name(),
+ 0, 0, &status);
+ report_header(__FILE__, comment.str());
+ report_performance(__FILE__, string(), time, resource);
+}
+
+
+int main ()
+{
+#ifdef TEST_S0
+ do_test<new_allocator<int> >();
+#endif
+#ifdef TEST_S1
+ do_test<malloc_allocator<int> >();
+#endif
+#ifdef TEST_S2
+ do_test<bitmap_allocator<int> >();
+#endif
+#ifdef TEST_S3
+ do_test<__mt_alloc<int> >();
+#endif
+}
+
+
diff --git a/libstdc++-v3/testsuite/performance/20_util/allocator/map_mt_find.cc b/libstdc++-v3/testsuite/performance/20_util/allocator/map_mt_find.cc
new file mode 100644
index 00000000000..c3fe0884075
--- /dev/null
+++ b/libstdc++-v3/testsuite/performance/20_util/allocator/map_mt_find.cc
@@ -0,0 +1,148 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+// 2004-03-11 Dhruv Matani <dhruvbird@HotPOP.com>
+
+#include <new>
+#include <map>
+#include <cstdlib>
+#include <string>
+#include <pthread.h>
+
+#include <typeinfo>
+#include <sstream>
+#include <ext/mt_allocator.h>
+#include <ext/malloc_allocator.h>
+#include <cxxabi.h>
+#include <testsuite_performance.h>
+#include <ext/bitmap_allocator.h>
+
+using namespace std;
+using __gnu_cxx::malloc_allocator;
+using __gnu_cxx::__mt_alloc;
+using __gnu_cxx::bitmap_allocator;
+
+typedef int test_type;
+
+using namespace __gnu_cxx;
+using namespace std;
+
+bool less_int (int x1, int x2) { return x1<x2; }
+
+
+#if defined USE_FUNCTION_COMPARE
+#define COMPARE_T typeof(&less_int)
+#define COMPARE_F &less_int
+#else
+#define COMPARE_T std::less<int>
+#define COMPARE_F std::less<int>()
+#endif
+
+template <typename Alloc>
+void *find_proc (void *_vptr)
+{
+ map<int, string, COMPARE_T, Alloc> *_mptr =
+ reinterpret_cast<map<int, string, COMPARE_T, Alloc>*>(_vptr);
+
+ for (int i = 0; i < 700000; ++i)
+ {
+ int Finder = rand() % 2000000;
+ _mptr->find (Finder);
+ }
+ return _vptr;
+}
+
+
+template <typename Alloc>
+int do_test ()
+{
+ COMPARE_T _comp = COMPARE_F;
+ map<int, string, COMPARE_T, Alloc> imap (_comp);
+ int x = 2;
+ pthread_t thr[3];
+ const int Iter = 1000000;
+
+ while (x--)
+ {
+ for (int i = 0; i < 300000; ++i)
+ imap.insert (make_pair (rand()%1000000, "_test_data"));
+
+ for (int i = 0; i < 100000; ++i)
+ imap.insert (make_pair (rand()%2000000, "_test_data"));
+
+ pthread_create (&thr[0], NULL, find_proc<Alloc>, (void*)&imap);
+ pthread_create (&thr[1], NULL, find_proc<Alloc>, (void*)&imap);
+ pthread_create (&thr[2], NULL, find_proc<Alloc>, (void*)&imap);
+
+ pthread_join (thr[0], 0);
+ pthread_join (thr[1], 0);
+ pthread_join (thr[2], 0);
+
+ imap.clear ();
+ }
+ return Iter;
+}
+
+template <typename Alloc>
+void exec_tests ()
+{
+ using namespace __gnu_test;
+ int status;
+ COMPARE_T _comp = COMPARE_F;
+ map<int, string, COMPARE_T, Alloc> obj (_comp);
+
+ time_counter time;
+ resource_counter resource;
+ clear_counters(time, resource);
+ start_counters(time, resource);
+ int test_iterations = do_test<Alloc>();
+ stop_counters(time, resource);
+
+ std::ostringstream comment;
+ comment << "iterations: " << test_iterations <<endl;
+ comment << "type: " << abi::__cxa_demangle(typeid(obj).name(),
+ 0, 0, &status);
+ report_header(__FILE__, comment.str());
+ report_performance(__FILE__, string(), time, resource);
+}
+
+
+int main()
+{
+#ifdef TEST_T0
+ exec_tests<new_allocator<int> >();
+#endif
+#ifdef TEST_T1
+ exec_tests<malloc_allocator<int> >();
+#endif
+#ifdef TEST_T2
+ exec_tests<bitmap_allocator<int> >();
+#endif
+#ifdef TEST_T3
+ exec_tests<__mt_alloc<int> >();
+#endif
+}
diff --git a/libstdc++-v3/testsuite/performance/allocator_thread.cc b/libstdc++-v3/testsuite/performance/20_util/allocator/map_thread.cc
index 68da4d7bcc2..b85e6e94c76 100644
--- a/libstdc++-v3/testsuite/performance/allocator_thread.cc
+++ b/libstdc++-v3/testsuite/performance/20_util/allocator/map_thread.cc
@@ -1,4 +1,4 @@
-// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
+// Copyright (C) 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -31,56 +31,40 @@
* influenced by the underlying allocator in the "C" library, malloc.
*/
-// 2003-02-05 Stefan Olsson <stefan@snon.net>
+// libstdc++/13823 recast for this testing framework
-#include <vector>
-#include <list>
+#include <map>
+#include <iostream>
#include <typeinfo>
#include <sstream>
-#include <pthread.h>
#include <ext/mt_allocator.h>
+#include <ext/new_allocator.h>
#include <ext/malloc_allocator.h>
+#include <ext/bitmap_allocator.h>
#include <cxxabi.h>
#include <testsuite_performance.h>
using namespace std;
-using __gnu_cxx::malloc_allocator;
using __gnu_cxx::__mt_alloc;
-
-typedef int test_type;
+using __gnu_cxx::new_allocator;
+using __gnu_cxx::malloc_allocator;
+using __gnu_cxx::bitmap_allocator;
// The number of iterations to be performed.
-int iterations;
-
-// The number of values to insert in the container, 32 will cause 5
-// (re)allocations to be performed (sizes 4, 8, 16, 32 and 64)
-// This means that all allocations are within _MAX_BYTES = 128 as
-// defined in stl_alloc.h for __pool_alloc. Whether or not this
-// value is relevant in "the real world" or not I don't know and
-// should probably be investigated in more detail.
-int insert_values = 128;
+int iterations = 10000;
template<typename Container>
void*
do_loop(void* p = NULL)
{
- Container obj;
try
{
- int test_iterations = 0;
- while (test_iterations < iterations)
+ for (int c = 0; c < 10; c++)
{
- for (int j = 0; j < insert_values; ++j)
- obj.push_back(test_iterations);
- ++test_iterations;
- }
- obj.clear();
- test_iterations = 0;
- while (test_iterations < iterations)
- {
- for (int j = 0; j < insert_values; ++j)
- obj.push_back(test_iterations);
- ++test_iterations;
+ Container m;
+
+ for (unsigned i = 0; i < iterations; ++i)
+ m[i] = i;
}
}
catch(...)
@@ -91,23 +75,6 @@ template<typename Container>
template<typename Container>
void
- calibrate_iterations()
- {
- int try_iterations = iterations = 100000;
-
- __gnu_test::time_counter timer;
- timer.start();
- do_loop<Container>();
- timer.stop();
-
- double tics = timer.real_time();
- double iterpc = iterations / tics; //iterations per clock
- double xtics = 100; // works for linux 2gig x86
- iterations = static_cast<int>(xtics * iterpc);
- }
-
-template<typename Container>
- void
test_container(Container obj)
{
using namespace __gnu_test;
@@ -120,10 +87,10 @@ template<typename Container>
start_counters(time, resource);
pthread_t t1, t2, t3, t4;
- pthread_create(&t1, 0, &do_loop<Container>, 0);
- pthread_create(&t2, 0, &do_loop<Container>, 0);
- pthread_create(&t3, 0, &do_loop<Container>, 0);
- pthread_create(&t4, 0, &do_loop<Container>, 0);
+ pthread_create(&t1, NULL, &do_loop<Container>, NULL);
+ pthread_create(&t2, NULL, &do_loop<Container>, NULL);
+ pthread_create(&t3, NULL, &do_loop<Container>, NULL);
+ pthread_create(&t4, NULL, &do_loop<Container>, NULL);
pthread_join(t1, NULL);
pthread_join(t2, NULL);
@@ -140,19 +107,25 @@ template<typename Container>
report_performance(__FILE__, string(), time, resource);
}
-// http://gcc.gnu.org/ml/libstdc++/2001-05/msg00105.html
-// http://gcc.gnu.org/ml/libstdc++/2003-05/msg00231.html
int main(void)
{
- calibrate_iterations<vector<test_type> >();
- test_container(vector<test_type>());
- test_container(vector<test_type, malloc_allocator<test_type> >());
- test_container(vector<test_type, __mt_alloc<test_type> >());
-
- calibrate_iterations<list<test_type> >();
- test_container(list<test_type>());
- test_container(list<test_type, malloc_allocator<test_type> >());
- test_container(list<test_type, __mt_alloc<test_type> >());
+#ifdef TEST_T1
+ test_container(map<int, int>());
+#endif
+#ifdef TEST_T2
+ test_container(map<int, int, less<const int>, new_allocator<int> >());
+#endif
+#ifdef TEST_T3
+ test_container(map<int, int, less<const int>, malloc_allocator<int> >());
+#endif
+#ifdef TEST_T4
+ test_container(map<int, int, less<const int>,
+ __mt_alloc< pair<const int, int> > >());
+#endif
+#ifdef TEST_T5
+ test_container(map<int, int, less<const int>, bitmap_allocator<int> >());
+#endif
+
return 0;
}
diff --git a/libstdc++-v3/testsuite/performance/20_util/allocator/producer_consumer.cc b/libstdc++-v3/testsuite/performance/20_util/allocator/producer_consumer.cc
new file mode 100644
index 00000000000..4de30777eab
--- /dev/null
+++ b/libstdc++-v3/testsuite/performance/20_util/allocator/producer_consumer.cc
@@ -0,0 +1,333 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+/*
+ * The goal with this application is to compare the performance of
+ * different allocators in a simple producer-consumer scenario.
+ */
+
+// 2004-02-04 Felix Yen <fwy@alumni.brown.edu>
+
+#include <vector>
+#include <list>
+#include <map>
+#include <typeinfo>
+#include <sstream>
+#include <pthread.h>
+#include <ext/mt_allocator.h>
+#include <ext/new_allocator.h>
+#include <ext/malloc_allocator.h>
+#include <ext/bitmap_allocator.h>
+#include <cxxabi.h>
+#include <testsuite_performance.h>
+
+
+using namespace std;
+using __gnu_cxx::__mt_alloc;
+using __gnu_cxx::new_allocator;
+using __gnu_cxx::malloc_allocator;
+using __gnu_cxx::bitmap_allocator;
+using abi::__cxa_demangle;
+
+typedef int test_type;
+typedef less<test_type> compare_type;
+typedef malloc_allocator<test_type> malloc_alloc_type;
+typedef new_allocator<test_type> new_alloc_type;
+typedef __mt_alloc<test_type> so_alloc_type;
+typedef bitmap_allocator<test_type> bit_alloc_type;
+
+// The number of iterations to be performed.
+int iterations = 10000;
+
+// TODO - restore Stefan's comment? i don't understand it. -- fwy
+int insert_values = 128;
+
+class Lock
+{
+public:
+ Lock() {pthread_mutex_init(&mutex, 0);}
+ ~Lock() {pthread_mutex_destroy(&mutex);}
+
+public:
+ inline pthread_mutex_t* operator&() {return &mutex;}
+
+public:
+ inline void lock() {pthread_mutex_lock(&mutex);}
+ inline void unlock() {pthread_mutex_unlock(&mutex);}
+
+private:
+ Lock(const Lock&);
+ Lock& operator=(Lock&);
+
+private:
+ pthread_mutex_t mutex;
+};
+
+class AutoLock
+{
+public:
+ AutoLock(Lock& _lock)
+ : lock(_lock)
+ {lock.lock();}
+
+ ~AutoLock() {lock.unlock();}
+
+private:
+ AutoLock(AutoLock&);
+ AutoLock& operator=(AutoLock&);
+
+private:
+ Lock& lock;
+};
+
+template<typename Container>
+ class Queue
+ {
+ public:
+ Queue() {pthread_cond_init(&condition, 0);}
+ ~Queue() {pthread_cond_destroy(&condition);}
+
+ public:
+ void push_back(const typename Container::value_type& x);
+ void swap(Container& container);
+
+ private:
+ pthread_cond_t condition;
+ Lock lock;
+ Container queue;
+ };
+
+template<typename Container>
+ void
+ Queue<Container>::push_back(const typename Container::value_type& value)
+ {
+ AutoLock auto_lock(lock);
+ queue.insert(queue.end(), value);
+ if (queue.size() == 1) pthread_cond_signal(&condition);
+ }
+
+template<typename Container>
+ void
+ Queue<Container>::swap(Container& container)
+ {
+ AutoLock auto_lock(lock);
+ while (queue.empty()) pthread_cond_wait(&condition, &lock);
+ queue.swap(container);
+ }
+
+class Thread
+{
+ // NB: Make this the last data member of an object defining operator()().
+public:
+ class Attributes
+ {
+ public:
+ Attributes(int state = PTHREAD_CREATE_JOINABLE);
+ ~Attributes() {pthread_attr_destroy(&attributes);}
+
+ public:
+ inline pthread_attr_t* operator&() {return &attributes;}
+
+ private:
+ pthread_attr_t attributes;
+ };
+
+public:
+ Thread() {thread = pthread_self();}
+ ~Thread();
+
+public:
+ template <typename ThreadOwner>
+ void create(ThreadOwner* owner);
+
+private:
+ pthread_t thread;
+};
+
+Thread::Attributes::Attributes(int state)
+{
+ pthread_attr_init(&attributes);
+ pthread_attr_setdetachstate(&attributes, state);
+}
+
+Thread::~Thread()
+{
+ if (!pthread_equal(thread, pthread_self()))
+ pthread_join(thread, 0);
+}
+
+template<typename ThreadOwner>
+ void*
+ create_thread(void* _this)
+ {
+ ThreadOwner* owner = static_cast<ThreadOwner*>(_this);
+ (*owner)();
+ return 0;
+ }
+
+template<typename ThreadOwner>
+ void
+ Thread::create(ThreadOwner* owner)
+ {
+ Thread::Attributes attributes;
+ pthread_create(&thread, &attributes, create_thread<ThreadOwner>, owner);
+ }
+
+template<typename Container>
+ class Consumer
+ {
+ public:
+ Consumer(Queue<Container>& _queue)
+ : queue(_queue)
+ {thread.create(this);}
+
+ public:
+ void operator()();
+
+ private:
+ Queue<Container>& queue;
+ Thread thread;
+ };
+
+template<typename Container>
+ void
+ Consumer<Container>::operator()()
+ {
+ for (int j = insert_values * iterations; j > 0;)
+ {
+ Container container;
+ queue.swap(container);
+ j -= container.size();
+ }
+ }
+
+template<typename TestType>
+ struct Value : public pair<TestType, TestType>
+ {
+ Value()
+ : pair<TestType, TestType>(0, 0)
+ { }
+
+ inline Value operator++() {return ++this->first, *this;}
+ inline operator TestType() const {return this->first;}
+ };
+
+template<typename Container>
+ class ProducerConsumer : private Queue<Container>
+ {
+ public:
+ ProducerConsumer() {thread.create(this);}
+
+ public:
+ void operator()();
+
+ private:
+ Thread thread;
+ };
+
+template<typename Container>
+ void
+ ProducerConsumer<Container>::operator()()
+ {
+ Consumer<Container> consumer(*this);
+ Value<test_type> test_value;
+ for (int j = insert_values * iterations; j-- > 0;)
+ this->push_back(++test_value);
+ }
+
+template<typename Container>
+ void
+ test_container(Container obj)
+ {
+ using namespace __gnu_test;
+ int status;
+
+ time_counter time;
+ resource_counter resource;
+
+ clear_counters(time, resource);
+ start_counters(time, resource);
+ {
+ ProducerConsumer<Container> pc1;
+ ProducerConsumer<Container> pc2;
+ }
+ stop_counters(time, resource);
+
+ std::ostringstream comment;
+ comment << "iterations: " << iterations << '\t';
+ comment << "type: " << __cxa_demangle(typeid(obj).name(), 0, 0, &status);
+ report_header(__FILE__, comment.str());
+ report_performance(__FILE__, string(), time, resource);
+ }
+
+int main(void)
+{
+#ifdef TEST_T1
+ test_container(vector<test_type, malloc_alloc_type>());
+#endif
+#ifdef TEST_T2
+ test_container(vector<test_type, new_alloc_type>());
+#endif
+#ifdef TEST_T3
+ test_container(vector<test_type, so_alloc_type>());
+#endif
+#ifdef TEST_T4
+ test_container(vector<test_type, bit_alloc_type>());
+#endif
+
+
+#ifdef TEST_T5
+ test_container(list<test_type, malloc_alloc_type>());
+#endif
+#ifdef TEST_T6
+ test_container(list<test_type, new_alloc_type>());
+#endif
+#ifdef TEST_T7
+ test_container(list<test_type, so_alloc_type>());
+#endif
+#ifdef TEST_T8
+ test_container(list<test_type, bit_alloc_type>());
+#endif
+
+
+#ifdef TEST_T9
+ test_container(map<test_type, test_type, compare_type, malloc_alloc_type>());
+#endif
+#ifdef TEST_T10
+ test_container(map<test_type, test_type, compare_type, new_alloc_type>());
+#endif
+#ifdef TEST_T11
+ test_container(map<test_type, test_type, compare_type, so_alloc_type>());
+#endif
+#ifdef TEST_T12
+ test_container(map<test_type, test_type, compare_type, bit_alloc_type>());
+#endif
+
+
+ return 0;
+}
+
diff --git a/libstdc++-v3/testsuite/performance/string_append.cc b/libstdc++-v3/testsuite/performance/21_strings/string_append.cc
index 846d424c65c..fccd82cd037 100644
--- a/libstdc++-v3/testsuite/performance/string_append.cc
+++ b/libstdc++-v3/testsuite/performance/21_strings/string_append.cc
@@ -77,10 +77,10 @@ run_benchmark2(int how_much)
// libstdc++/4960
int main()
{
- run_benchmark1(10000);
- run_benchmark2(10000);
run_benchmark1(100000);
run_benchmark2(100000);
run_benchmark1(1000000);
run_benchmark2(1000000);
+ run_benchmark1(10000000);
+ run_benchmark2(10000000);
}
diff --git a/libstdc++-v3/testsuite/performance/21_strings/string_cons_input_iterator.cc b/libstdc++-v3/testsuite/performance/21_strings/string_cons_input_iterator.cc
new file mode 100644
index 00000000000..655c85fd970
--- /dev/null
+++ b/libstdc++-v3/testsuite/performance/21_strings/string_cons_input_iterator.cc
@@ -0,0 +1,58 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#include <iterator>
+#include <sstream>
+
+#include <testsuite_performance.h>
+
+void benchmark(long len)
+{
+ using namespace std;
+ using namespace __gnu_test;
+
+ time_counter time;
+ resource_counter resource;
+
+ istringstream isstr(string(len, 'a'));
+
+ start_counters(time, resource);
+ string str((istreambuf_iterator<char>(isstr)),
+ istreambuf_iterator<char>());
+ stop_counters(time, resource);
+
+ report_performance(__FILE__, "", time, resource);
+ clear_counters(time, resource);
+}
+
+int main()
+{
+ benchmark(500000);
+ benchmark(5000000);
+ benchmark(50000000);
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/performance/is_wchar_t.cc b/libstdc++-v3/testsuite/performance/22_locale/is_wchar_t.cc
index e35edd023cb..e35edd023cb 100644
--- a/libstdc++-v3/testsuite/performance/is_wchar_t.cc
+++ b/libstdc++-v3/testsuite/performance/22_locale/is_wchar_t.cc
diff --git a/libstdc++-v3/testsuite/performance/narrow_widen_char.cc b/libstdc++-v3/testsuite/performance/22_locale/narrow_widen_char.cc
index f8b530dcfd0..f8b530dcfd0 100644
--- a/libstdc++-v3/testsuite/performance/narrow_widen_char.cc
+++ b/libstdc++-v3/testsuite/performance/22_locale/narrow_widen_char.cc
diff --git a/libstdc++-v3/testsuite/performance/narrow_widen_wchar_t.cc b/libstdc++-v3/testsuite/performance/22_locale/narrow_widen_wchar_t.cc
index f5d4536d0ac..f5d4536d0ac 100644
--- a/libstdc++-v3/testsuite/performance/narrow_widen_wchar_t.cc
+++ b/libstdc++-v3/testsuite/performance/22_locale/narrow_widen_wchar_t.cc
diff --git a/libstdc++-v3/testsuite/performance/wchar_t_in.cc b/libstdc++-v3/testsuite/performance/22_locale/wchar_t_in.cc
index 43e09e39a78..43e09e39a78 100644
--- a/libstdc++-v3/testsuite/performance/wchar_t_in.cc
+++ b/libstdc++-v3/testsuite/performance/22_locale/wchar_t_in.cc
diff --git a/libstdc++-v3/testsuite/performance/wchar_t_length.cc b/libstdc++-v3/testsuite/performance/22_locale/wchar_t_length.cc
index f0146fe9991..f0146fe9991 100644
--- a/libstdc++-v3/testsuite/performance/wchar_t_length.cc
+++ b/libstdc++-v3/testsuite/performance/22_locale/wchar_t_length.cc
diff --git a/libstdc++-v3/testsuite/performance/wchar_t_out.cc b/libstdc++-v3/testsuite/performance/22_locale/wchar_t_out.cc
index 4e5106817d0..4e5106817d0 100644
--- a/libstdc++-v3/testsuite/performance/wchar_t_out.cc
+++ b/libstdc++-v3/testsuite/performance/22_locale/wchar_t_out.cc
diff --git a/libstdc++-v3/testsuite/performance/container_benchmark.cc b/libstdc++-v3/testsuite/performance/23_containers/container_benchmark.cc
index 4e54374575d..4e54374575d 100644
--- a/libstdc++-v3/testsuite/performance/container_benchmark.cc
+++ b/libstdc++-v3/testsuite/performance/23_containers/container_benchmark.cc
diff --git a/libstdc++-v3/testsuite/performance/list_create_fill_sort.cc b/libstdc++-v3/testsuite/performance/23_containers/list_create_fill_sort.cc
index 8999b43c53f..8999b43c53f 100644
--- a/libstdc++-v3/testsuite/performance/list_create_fill_sort.cc
+++ b/libstdc++-v3/testsuite/performance/23_containers/list_create_fill_sort.cc
diff --git a/libstdc++-v3/testsuite/performance/map_create_fill.cc b/libstdc++-v3/testsuite/performance/23_containers/map_create_fill.cc
index 0e675d00ffb..0e675d00ffb 100644
--- a/libstdc++-v3/testsuite/performance/map_create_fill.cc
+++ b/libstdc++-v3/testsuite/performance/23_containers/map_create_fill.cc
diff --git a/libstdc++-v3/testsuite/performance/complex_norm.cc b/libstdc++-v3/testsuite/performance/26_numerics/complex_norm.cc
index 6ed280c306a..6ed280c306a 100644
--- a/libstdc++-v3/testsuite/performance/complex_norm.cc
+++ b/libstdc++-v3/testsuite/performance/26_numerics/complex_norm.cc
diff --git a/libstdc++-v3/testsuite/performance/cout_insert_int.cc b/libstdc++-v3/testsuite/performance/27_io/cout_insert_int.cc
index 87b1871a7b1..87b1871a7b1 100644
--- a/libstdc++-v3/testsuite/performance/cout_insert_int.cc
+++ b/libstdc++-v3/testsuite/performance/27_io/cout_insert_int.cc
diff --git a/libstdc++-v3/testsuite/performance/filebuf_copy.cc b/libstdc++-v3/testsuite/performance/27_io/filebuf_copy.cc
index 608ca2933fa..608ca2933fa 100644
--- a/libstdc++-v3/testsuite/performance/filebuf_copy.cc
+++ b/libstdc++-v3/testsuite/performance/27_io/filebuf_copy.cc
diff --git a/libstdc++-v3/testsuite/performance/filebuf_sputc.cc b/libstdc++-v3/testsuite/performance/27_io/filebuf_sputc.cc
index c286da0202d..c286da0202d 100644
--- a/libstdc++-v3/testsuite/performance/filebuf_sputc.cc
+++ b/libstdc++-v3/testsuite/performance/27_io/filebuf_sputc.cc
diff --git a/libstdc++-v3/testsuite/performance/27_io/fmtflags_manipulators.cc b/libstdc++-v3/testsuite/performance/27_io/fmtflags_manipulators.cc
new file mode 100644
index 00000000000..0ef4510f39c
--- /dev/null
+++ b/libstdc++-v3/testsuite/performance/27_io/fmtflags_manipulators.cc
@@ -0,0 +1,69 @@
+// Copyright (C) 2004 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+// As a special exception, you may use this file as part of a free software
+// library without restriction. Specifically, if other files instantiate
+// templates or use macros or inline functions from this file, or you compile
+// this file and link it with other files to produce an executable, this
+// file does not by itself cause the resulting executable to be covered by
+// the GNU General Public License. This exception does not however
+// invalidate any other reasons why the executable file might be covered by
+// the GNU General Public License.
+
+#include <cstdlib>
+#include <sstream>
+#include <testsuite_performance.h>
+
+// libstdc++/14078
+int main(int argc, char** argv)
+{
+ using namespace std;
+ using namespace __gnu_test;
+
+ time_counter time;
+ resource_counter resource;
+
+ int iters = 50000000;
+ if (argc > 1)
+ iters = atoi(argv[1]);
+
+ ostringstream os_s, os_m;
+
+ // setf
+ start_counters(time, resource);
+ for (int i = 0; i < iters; ++i)
+ {
+ os_s.setf(ios_base::uppercase);
+ os_s.unsetf(ios_base::uppercase);
+ }
+ stop_counters(time, resource);
+ report_performance(__FILE__, "setf", time, resource);
+ clear_counters(time, resource);
+
+ // manipulator
+ start_counters(time, resource);
+ for (int i = 0; i < iters; ++i)
+ {
+ os_m << uppercase;
+ os_m << nouppercase;
+ }
+ stop_counters(time, resource);
+ report_performance(__FILE__, "manipulator", time, resource);
+
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/performance/fstream_seek_write.cc b/libstdc++-v3/testsuite/performance/27_io/fstream_seek_write.cc
index 838eae40245..838eae40245 100644
--- a/libstdc++-v3/testsuite/performance/fstream_seek_write.cc
+++ b/libstdc++-v3/testsuite/performance/27_io/fstream_seek_write.cc
diff --git a/libstdc++-v3/testsuite/performance/ifstream_extract_float.cc b/libstdc++-v3/testsuite/performance/27_io/ifstream_extract_float.cc
index 55710c2afce..55710c2afce 100644
--- a/libstdc++-v3/testsuite/performance/ifstream_extract_float.cc
+++ b/libstdc++-v3/testsuite/performance/27_io/ifstream_extract_float.cc
diff --git a/libstdc++-v3/testsuite/performance/ifstream_extract_int.cc b/libstdc++-v3/testsuite/performance/27_io/ifstream_extract_int.cc
index b6ff6c47603..b6ff6c47603 100644
--- a/libstdc++-v3/testsuite/performance/ifstream_extract_int.cc
+++ b/libstdc++-v3/testsuite/performance/27_io/ifstream_extract_int.cc
diff --git a/libstdc++-v3/testsuite/performance/ifstream_getline.cc b/libstdc++-v3/testsuite/performance/27_io/ifstream_getline.cc
index 5f745732a18..5f745732a18 100644
--- a/libstdc++-v3/testsuite/performance/ifstream_getline.cc
+++ b/libstdc++-v3/testsuite/performance/27_io/ifstream_getline.cc
diff --git a/libstdc++-v3/testsuite/performance/ofstream_insert_float.cc b/libstdc++-v3/testsuite/performance/27_io/ofstream_insert_float.cc
index 45d55af01bf..45d55af01bf 100644
--- a/libstdc++-v3/testsuite/performance/ofstream_insert_float.cc
+++ b/libstdc++-v3/testsuite/performance/27_io/ofstream_insert_float.cc
diff --git a/libstdc++-v3/testsuite/performance/ofstream_insert_int.cc b/libstdc++-v3/testsuite/performance/27_io/ofstream_insert_int.cc
index 83fbeb835b0..83fbeb835b0 100644
--- a/libstdc++-v3/testsuite/performance/ofstream_insert_int.cc
+++ b/libstdc++-v3/testsuite/performance/27_io/ofstream_insert_int.cc
diff --git a/libstdc++-v3/testsuite/testsuite_character.h b/libstdc++-v3/testsuite/testsuite_character.h
index 67c35c25443..9442fe13341 100644
--- a/libstdc++-v3/testsuite/testsuite_character.h
+++ b/libstdc++-v3/testsuite/testsuite_character.h
@@ -51,6 +51,10 @@ namespace __gnu_test
}
};
+ inline bool
+ operator==(const character& lhs, const character& rhs)
+ { return lhs.val == rhs.val; }
+
// State type.
struct conversion_state
{
diff --git a/libstdc++-v3/testsuite/testsuite_hooks.cc b/libstdc++-v3/testsuite/testsuite_hooks.cc
index 1271b5653a5..18ea13e1e86 100644
--- a/libstdc++-v3/testsuite/testsuite_hooks.cc
+++ b/libstdc++-v3/testsuite/testsuite_hooks.cc
@@ -74,7 +74,10 @@ namespace __gnu_test
#endif
// Virtual memory.
-#if _GLIBCXX_HAVE_MEMLIMIT_AS
+ // On HP-UX 11.23, a trivial C++ program that sets RLIMIT_AS to
+ // anything less than 128MB cannot "malloc" even 1K of memory.
+ // Therefore, we skip RLIMIT_AS on HP-UX.
+#if _GLIBCXX_HAVE_MEMLIMIT_AS && !defined(__hpux__)
getrlimit(RLIMIT_AS, &r);
r.rlim_cur = limit;
setrlimit(RLIMIT_AS, &r);
diff --git a/libstdc++-v3/testsuite/testsuite_hooks.h b/libstdc++-v3/testsuite/testsuite_hooks.h
index efe0f85eaa1..e36162ad23b 100644
--- a/libstdc++-v3/testsuite/testsuite_hooks.h
+++ b/libstdc++-v3/testsuite/testsuite_hooks.h
@@ -152,6 +152,10 @@ namespace __gnu_test
{
unsigned char c;
};
+
+ inline bool
+ operator==(const pod_char& lhs, const pod_char& rhs)
+ { return lhs.c == rhs.c; }
struct pod_int
{
diff --git a/libstdc++-v3/testsuite/testsuite_performance.h b/libstdc++-v3/testsuite/testsuite_performance.h
index f70e5274af6..56b02bc64d8 100644
--- a/libstdc++-v3/testsuite/testsuite_performance.h
+++ b/libstdc++-v3/testsuite/testsuite_performance.h
@@ -183,6 +183,11 @@ namespace __gnu_test
std::ofstream out(name, std::ios_base::app);
+#ifdef __GTHREADS
+ if (__gthread_active_p ())
+ testname.append ("-thread");
+#endif
+
out.setf(std::ios_base::left);
out << std::setw(25) << testname << tab;
out << std::setw(25) << comment << tab;
@@ -209,6 +214,11 @@ namespace __gnu_test
std::ofstream out(name, std::ios_base::app);
+#ifdef __GTHREADS
+ if (__gthread_active_p ())
+ testname.append ("-thread");
+#endif
+
out.setf(std::ios_base::left);
out << std::setw(25) << testname << tab;
out << std::setw(40) << header << tab;
diff --git a/libstdc++-v3/testsuite/thread/pthread1.cc b/libstdc++-v3/testsuite/thread/pthread1.cc
index 92a5f312842..1b225f202c6 100644
--- a/libstdc++-v3/testsuite/thread/pthread1.cc
+++ b/libstdc++-v3/testsuite/thread/pthread1.cc
@@ -1,6 +1,6 @@
// 2002-01-23 Loren J. Rittle <rittle@labs.mot.com> <ljrittle@acm.org>
//
-// Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -99,6 +99,11 @@ consume (void* t)
return 0;
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_List_node<int> >;
+#endif
+
int
main ()
{
diff --git a/libstdc++-v3/testsuite/thread/pthread4.cc b/libstdc++-v3/testsuite/thread/pthread4.cc
index f95671dcb5b..be1ae680fa7 100644
--- a/libstdc++-v3/testsuite/thread/pthread4.cc
+++ b/libstdc++-v3/testsuite/thread/pthread4.cc
@@ -2,7 +2,7 @@
// Adapted from http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00679.html
// which was adapted from pthread1.cc by Mike Lu <MLu@dynamicsoft.com>
//
-// Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -90,6 +90,12 @@ consume (void*)
return 0;
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::string>;
+template class __gnu_cxx::__mt_alloc<std::_List_node<std::string> >;
+#endif
+
int
main (void)
{
diff --git a/libstdc++-v3/testsuite/thread/pthread5.cc b/libstdc++-v3/testsuite/thread/pthread5.cc
index 262796e0ba7..b950542fd61 100644
--- a/libstdc++-v3/testsuite/thread/pthread5.cc
+++ b/libstdc++-v3/testsuite/thread/pthread5.cc
@@ -2,7 +2,7 @@
// Adpated from libstdc++/5464 submitted by jjessel@amadeus.net
// Jean-Francois JESSEL (Amadeus SAS Development)
//
-// Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -87,6 +87,12 @@ thread_function (void* arg)
return arg;
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<tt_t>;
+template class __gnu_cxx::__mt_alloc<std::_List_node<std::string*> >;
+#endif
+
int
main ()
{
diff --git a/libstdc++-v3/testsuite/thread/pthread6.cc b/libstdc++-v3/testsuite/thread/pthread6.cc
index c72acb53985..e0fee71deac 100644
--- a/libstdc++-v3/testsuite/thread/pthread6.cc
+++ b/libstdc++-v3/testsuite/thread/pthread6.cc
@@ -72,6 +72,11 @@ thread_main (void*)
return 0;
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<std::_Rb_tree_node<std::pair<unsigned int const, std::string> > >;
+#endif
+
int
main (void)
{
diff --git a/libstdc++-v3/testsuite/thread/pthread7-rope.cc b/libstdc++-v3/testsuite/thread/pthread7-rope.cc
index 36acd461e87..916a4550cda 100644
--- a/libstdc++-v3/testsuite/thread/pthread7-rope.cc
+++ b/libstdc++-v3/testsuite/thread/pthread7-rope.cc
@@ -1,6 +1,6 @@
// 2003-05-03 Loren J. Rittle <rittle@labs.mot.com> <ljrittle@acm.org>
//
-// Copyright (C) 2003 Free Software Foundation, Inc.
+// Copyright (C) 2003, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -19,8 +19,8 @@
// USA.
// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* } }
-// { dg-options "-D_GLIBCXX_ASSERT -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* } }
-// { dg-options "-D_GLIBCXX_ASSERT -pthreads" { target *-*-solaris* } }
+// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* } }
+// { dg-options "-pthreads" { target *-*-solaris* } }
#include <ext/rope>
#include <cstring>
@@ -53,6 +53,14 @@ void* thread_main(void *)
return 0;
}
+#if !__GXX_WEAK__ && _MT_ALLOCATOR_H
+// Explicitly instantiate for systems with no COMDAT or weak support.
+template class __gnu_cxx::__mt_alloc<__gnu_cxx::_Rope_RopeLeaf<char, std::allocator<char> > >;
+template class __gnu_cxx::__mt_alloc<__gnu_cxx::_Rope_RopeFunction<char, std::allocator<char> > >;
+template class __gnu_cxx::__mt_alloc<__gnu_cxx::_Rope_RopeSubstring<char, std::allocator<char> > >;
+template class __gnu_cxx::__mt_alloc<__gnu_cxx::_Rope_RopeConcatenation<char, std::allocator<char> > >;
+#endif
+
int
main()
{
diff --git a/ltconfig b/ltconfig
index 9c420ace726..0d97409d799 100755
--- a/ltconfig
+++ b/ltconfig
@@ -1592,7 +1592,7 @@ aix3*)
fi
;;
-aix4*)
+aix4* | aix5*)
test "$enable_shared" = yes && enable_static=no
;;
esac
diff --git a/ltmain.sh b/ltmain.sh
index 5ccf95c7d1d..c1ef9974d0e 100644
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -2106,9 +2106,10 @@ EOF
else
$show "extracting exported symbol list from \`$soname'"
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
- eval cmds=\"$extract_expsyms_cmds\"
+ cmds=$extract_expsyms_cmds
for cmd in $cmds; do
IFS="$save_ifs"
+ eval cmd=\"$cmd\"
$show "$cmd"
$run eval "$cmd" || exit $?
done
@@ -2119,9 +2120,10 @@ EOF
if test -f "$output_objdir/$newlib"; then :; else
$show "generating import library for \`$soname'"
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
- eval cmds=\"$old_archive_from_expsyms_cmds\"
+ cmds=$old_archive_from_expsyms_cmds
for cmd in $cmds; do
IFS="$save_ifs"
+ eval cmd=\"$cmd\"
$show "$cmd"
$run eval "$cmd" || exit $?
done
@@ -3249,11 +3251,13 @@ EOF
# Do each of the archive commands.
if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
- eval cmds=\"$archive_expsym_cmds\"
+ eval test_cmds=\"$archive_expsym_cmds\"
+ cmds=$archive_expsym_cmds
else
- eval cmds=\"$archive_cmds\"
+ eval test_cmds=\"$archive_cmds\"
+ cmds=$archive_cmds
fi
- if len=`expr "X$cmds" : ".*"` &&
+ if len=`expr "X$test_cmds" : ".*"` &&
test $len -le $max_cmd_len; then
:
else
@@ -3329,6 +3333,7 @@ EOF
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
for cmd in $concat_cmds; do
IFS="$save_ifs"
+ eval cmd=\"$cmd\"
$show "$cmd"
$run eval "$cmd" || exit $?
done
@@ -3346,9 +3351,9 @@ EOF
# Do each of the archive commands.
if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
- eval cmds=\"$archive_expsym_cmds\"
- else
- eval cmds=\"$archive_cmds\"
+ cmds=$archive_expsym_cmds
+ else
+ cmds=$archive_cmds
fi
# Append the command to remove the reloadable object files
@@ -3358,6 +3363,7 @@ EOF
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do
IFS="$save_ifs"
+ eval cmd=\"$cmd\"
$show "$cmd"
$run eval "$cmd" || exit $?
done
diff --git a/maintainer-scripts/ChangeLog b/maintainer-scripts/ChangeLog
index 1537ad9da53..97f52a0b2a9 100644
--- a/maintainer-scripts/ChangeLog
+++ b/maintainer-scripts/ChangeLog
@@ -1,3 +1,21 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
+2004-04-07 Mark Mitchell <mark@codesourcery.com>
+
+ * gcc_release (build_sources): Do not use "-r" and "-D" at the
+ same time with "cvs export".
+
+2004-03-14 Gerald Pfeifer <gerald@pfeifer.com>
+
+ * gcc_release (announce_snapshot): Use changedir instead of
+ plain cd.
+
+2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
+
+ * gcc_release (build_sources): Delete call to make f77.rebuilt.
+
2004-01-03 Joseph S. Myers <jsm@polyomino.org.uk>
* update_web_docs: Create tarballs of documentation sources and
diff --git a/maintainer-scripts/gcc_release b/maintainer-scripts/gcc_release
index 9e19475d7dd..67957eb6c29 100755
--- a/maintainer-scripts/gcc_release
+++ b/maintainer-scripts/gcc_release
@@ -157,20 +157,22 @@ EOF
fi
# Tag the sources.
+ EXPORTDATE=""
if [ -n "${TAG}" ]; then
inform "Tagging sources as ${TAG}"
${CVS} rtag -r ${CVSBRANCH} -F ${TAG} gcc || \
error "Could not tag sources"
EXPORTTAG="-r${TAG}"
- EXPORTDATE=""
else
if [ ${CVSBRANCH} != "HEAD" ]; then
EXPORTTAG="-r${CVSBRANCH}"
+ # It does not work to use both "-r" and "-D" with
+ # "cvs export" so EXPORTDATE is not set here.
else
# HEAD is the default branch, no need to specify it.
EXPORTTAG=""
+ EXPORTDATE="-D`date -u +"%Y-%m-%d %H:%M"` UTC"
fi
- EXPORTDATE="-D`date -u +"%Y-%m-%d %H:%M"` UTC"
fi
# Export the current sources.
@@ -239,10 +241,6 @@ EOF
contrib/gcc_build -d ${SOURCE_DIRECTORY} -o ${OBJECT_DIRECTORY} \
-c "--enable-generated-files-in-srcdir" build || \
error "Could not rebuild GCC"
-
- # Regenerate the Fotran NEWS and BUGS files.
- (cd ${OBJECT_DIRECTORY}/gcc && make f77.rebuilt) || \
- error "Could not regenerate Fortran NEWS and BUGS files"
fi
# Move message catalogs to source directory.
@@ -396,7 +394,7 @@ announce_snapshot() {
inform "Updating links and READMEs on the FTP server"
TEXT_DATE=`date --date=$DATE +%B\ %d,\ %Y`
- cd ~ftp/pub/gcc/snapshots
+ changedir ~ftp/pub/gcc/snapshots
sed -e "s%@DATE@%$DATE%g" \
-e "s%@TEXT_DATE@%$TEXT_DATE%g" \
-e "s%@LAST_DATE@%$LAST_DATE%g" \
diff --git a/mkinstalldirs b/mkinstalldirs
index d2d5f21b611..6fbe5e11762 100755
--- a/mkinstalldirs
+++ b/mkinstalldirs
@@ -1,20 +1,32 @@
#! /bin/sh
# mkinstalldirs --- make directory hierarchy
-# Author: Noah Friedman <friedman@prep.ai.mit.edu>
+
+scriptversion=2004-02-15.20
+
+# Original author: Noah Friedman <friedman@prep.ai.mit.edu>
# Created: 1993-05-16
-# Public domain
+# Public domain.
+#
+# This file is maintained in Automake, please report
+# bugs to <bug-automake@gnu.org> or send patches to
+# <automake-patches@gnu.org>.
errstatus=0
dirmode=""
usage="\
-Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
+Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
+
+Create each directory DIR (with mode MODE, if specified), including all
+leading file name components.
+
+Report bugs to <bug-automake@gnu.org>."
# process command line arguments
while test $# -gt 0 ; do
case $1 in
-h | --help | --h*) # -h for help
- echo "$usage" 1>&2
+ echo "$usage"
exit 0
;;
-m) # -m PERM arg
@@ -23,6 +35,10 @@ while test $# -gt 0 ; do
dirmode=$1
shift
;;
+ --version)
+ echo "$0 $scriptversion"
+ exit 0
+ ;;
--) # stop option processing
shift
break
@@ -50,17 +66,37 @@ case $# in
0) exit 0 ;;
esac
+# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and
+# mkdir -p a/c at the same time, both will detect that a is missing,
+# one will create a, then the other will try to create a and die with
+# a "File exists" error. This is a problem when calling mkinstalldirs
+# from a parallel make. We use --version in the probe to restrict
+# ourselves to GNU mkdir, which is thread-safe.
case $dirmode in
'')
- if mkdir -p -- . 2>/dev/null; then
+ if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
echo "mkdir -p -- $*"
exec mkdir -p -- "$@"
+ else
+ # On NextStep and OpenStep, the `mkdir' command does not
+ # recognize any option. It will interpret all options as
+ # directories to create, and then abort because `.' already
+ # exists.
+ test -d ./-p && rmdir ./-p
+ test -d ./--version && rmdir ./--version
fi
;;
*)
- if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
+ if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
+ test ! -d ./--version; then
echo "mkdir -m $dirmode -p -- $*"
exec mkdir -m "$dirmode" -p -- "$@"
+ else
+ # Clean up after NextStep and OpenStep mkdir.
+ for d in ./-m ./-p ./--version "./$dirmode";
+ do
+ test -d $d && rmdir $d
+ done
fi
;;
esac
@@ -84,17 +120,17 @@ do
mkdir "$pathcomp" || lasterr=$?
if test ! -d "$pathcomp"; then
- errstatus=$lasterr
+ errstatus=$lasterr
else
- if test ! -z "$dirmode"; then
+ if test ! -z "$dirmode"; then
echo "chmod $dirmode $pathcomp"
- lasterr=""
- chmod "$dirmode" "$pathcomp" || lasterr=$?
+ lasterr=""
+ chmod "$dirmode" "$pathcomp" || lasterr=$?
- if test ! -z "$lasterr"; then
- errstatus=$lasterr
- fi
- fi
+ if test ! -z "$lasterr"; then
+ errstatus=$lasterr
+ fi
+ fi
fi
fi
@@ -107,5 +143,8 @@ exit $errstatus
# Local Variables:
# mode: shell-script
# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
# End:
-# mkinstalldirs ends here
diff --git a/zlib/ChangeLog b/zlib/ChangeLog
index 615c7ac4027..d82ed12337b 100644
--- a/zlib/ChangeLog
+++ b/zlib/ChangeLog
@@ -1,3 +1,7 @@
+2004-04-18 Release Manager
+
+ * GCC 3.4.0 released.
+
ChangeLog file for zlib